Index: XZR_3MODE_2Ch_24G_First_NEW/format/app_mouse.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/format/app_mouse.format	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/format/app_mouse.format	(working copy)
@@ -313,6 +313,8 @@
 1 mem_mouse_data_ytemp
 
 1 mem_24g_state
+
+2 mem_24g_stop_g24_pair_mode_timerout
 )
 
 (
Index: XZR_3MODE_2Ch_24G_First_NEW/format/g24.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/format/g24.format	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/format/g24.format	(working copy)
@@ -486,7 +486,7 @@
 8 G24_CH_NUMBER
 16 G24_CH_POLL_COUNT
 0x0708 G24_DISCONN_NODATA_TIMER
-0x3c G24_FIRST_DISCONN_NODATA_TIMER
+0x1e G24_FIRST_DISCONN_NODATA_TIMER
 )
 
 
Index: XZR_3MODE_2Ch_24G_First_NEW/output/bt_format.meta
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_format.meta	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_format.meta	(working copy)
@@ -1229,133 +1229,134 @@
 0x4bbe mem_mouse_data_xtemp
 0x4bbf mem_mouse_data_ytemp
 0x4bc0 mem_24g_state
-0x4bc1 mem_24g_rxbuf
-0x4be3 mem_24g_txbuf
-0x4c03 mem_24g_txpayload
-0x4c25 mem_24g_rxpayload
-0x4c45 mem_24g_rxdata_length
-0x4c46 mem_24g_pid
-0x4c47 mem_24g_datalen
-0x4c48 mem_24g_data_type
-0x4c49 mem_24g_txlen
-0x4c4a mem_24g_rx_window
-0x4c4c mem_24g_ensure
-0x4c4d mem_24g_txfail_cnt
-0x4c4f mem_24g_get_ack_fail
-0x4c50 mem_24g_retry
-0x4c51 mem_24g_ch
-0x4c52 mem_24g_current_ch_number
-0x4c53 mem_24g_paring_addr
-0x4c57 mem_24g_pairing_sm
-0x4c58 mem_24g_ch_map1
-0x4c5c mem_24g_ch_map2
-0x4c60 mem_24g_ch_map3
-0x4c64 mem_24g_ch_map4
-0x4c68 mem_24g_tx_btclk
-0x4c6c mem_24g_interval
-0x4c6d mem_24g_interval_min
-0x4c6e mem_24g_interval_max
-0x4c6f mem_24g_addr
-0x4c73 mem_24g_abort_pac
-0x4c74 mem_24g_check_dongle_times
-0x4c76 mem_24g_enter_hibernate
-0x4c7e mem_24g_device_addr
-0x4c82 mem_24g_pac_index
-0x4c83 mem_24g_no_ack
-0x4c84 mem_24g_sta_crc
-0x4c87 mem_24g_last_crc
-0x4c8a mem_24g_sta_pid
-0x4c8b mem_24g_last_pid
-0x4c8c mem_24g_max_retry
-0x4c8d mem_24g_mode
-0x4c8e mem_24g_rxdata_temp
-0x4cb0 mem_24g_rx_addr
-0x4cb4 mem_dongle_mode_init
-0x4cb5 mem_dongle_work_mode
-0x4cb6 mem_dongle_ms_bind_step
-0x4cb7 mem_dongle_kb_bind_step
-0x4cb8 mem_dongle_bind_device_status
-0x4cb9 mem_24g_bind_payload
-0x4cc1 mem_24g_abort_packet
-0x4cc2 mem_24g_rf_laststa
-0x4cc3 mem_24g_hop_btclk
-0x4cc7 mem_24g_hop_interval
-0x4cc8 mem_24g_mode_switch
-0x4cc9 mem_24g_ackpayload_enable
-0x4cca mem_24g_hop_packet
-0x4ccb mem_24g_pair_mode
-0x4ccc mem_24g_nodata_timer_enable
-0x4ccd mem_24g_time_slice
-0x4cce mem_24g_kb_data_sta_data
-0x4cd6 mem_24g_kb_data_last_data
-0x4cde mem_24g_kb_multikey_sta_data
-0x4ce1 mem_24g_kb_multikey_last_data
-0x4ce4 mem_24g_kb_blank_data_enable
-0x4ce5 mem_24g_kb_mul_blank_data_enable
-0x4ce6 mem_24g_ms_blank_data_enable
-0x4ce7 mem_24g_kb_addr
-0x4ceb mem_24g_ms_addr
-0x4cef mem_24g_dg_last_ch
-0x4cf0 mem_24g_dg_ch_number
-0x4cf1 mem_24g_dg_config_ch_once
-0x4cf2 mem_24g_kb_last_ch
-0x4cf3 mem_24g_kb_ch_number
-0x4cf4 mem_24g_kb_config_ch_once
-0x4cf5 mem_24g_ms_last_ch
-0x4cf6 mem_24g_ms_ch_number
-0x4cf7 mem_24g_ms_config_ch_once
-0x4cf8 mem_24g_syncword
-0x4cfa mem_24g_syncword_crc8
-0x4cfb mem_24g_get_syncword_crc8
-0x4cfc mem_24g_ota_sta_pid
-0x4cfe mem_tx_power_temp
-0x4cff mem_rssi_hex
-0x4d00 mem_rssi_noise_avg
-0x4d01 mem_rssi_noise_index
-0x4d02 mem_rssi_signal_index
-0x4d03 mem_rssi_noise_dg_avg
-0x4d04 mem_rssi_noise_kb_avg
-0x4d05 mem_rssi_noise_ms_avg
-0x4d06 mem_rssi_noise_dg_index
-0x4d07 mem_rssi_noise_kb_index
-0x4d08 mem_rssi_noise_ms_index
-0x4d09 mem_rssi_signal_buf
-0x4d11 mem_queue_ele_num
-0x4d12 mem_queue_read
-0x4d14 mem_queue_write
-0x4d16 mem_queue_start
-0x4d16 mem_data_ele0
-0x4d36 mem_data_ele1
-0x4d56 mem_data_ele2
-0x4d76 mem_queue_end
-0x4d76 mem_queue_temp
-0x4d78 mem_cb_24g_data
-0x4d7a mem_24g_hop_fastly_cnt
-0x4d7b mem_24g_hop_pac_retry
-0x4d7c mem_24g_rf_hop_ch
-0x4d7d mem_24g_rf_last_sta
-0x4d7e mem_24g_rf_work_stage
-0x4d7f mem_24g_sync_cnt
-0x4d80 mem_power_ctrl_pac_succ_cnt
-0x4d81 mem_rssi_avg_received
-0x4d82 mem_rssi_hex_received
-0x4d83 mem_power_ctrl_level
-0x4d84 mem_seqi
-0x4d85 mem_24g_auto_paring_switch
-0x4d86 mem_24g_paccnt
-0x4d87 mem_24g_transmit_by_interrupt
-0x4d88 mem_24g_transmit_by_interrupt_exit_count
-0x4d8a mem_24g_transmit_by_interrupt_exit_count_init
-0x4d8c mem_24g_allpowerful_addr
-0x4d92 mem_24g_stop_g24_mode
-0x4d93 mem_24g_stop_g24_mode_timeout
-0x4d95 mem_24g_pair_current_ch_num
-0x4d96 mem_24g_powerful_current_ch_num
-0x4d97 mem_24g_search_dongle_action
-0x4d98 mem_24g_search_dongle_count
-0x4d99 mem_24g_search_dongle_ch
-0x4d9a mem_24g_search_dongle_wait
-0x4d9b mem_24g_conn_sm
+0x4bc1 mem_24g_stop_g24_pair_mode_timerout
+0x4bc3 mem_24g_rxbuf
+0x4be5 mem_24g_txbuf
+0x4c05 mem_24g_txpayload
+0x4c27 mem_24g_rxpayload
+0x4c47 mem_24g_rxdata_length
+0x4c48 mem_24g_pid
+0x4c49 mem_24g_datalen
+0x4c4a mem_24g_data_type
+0x4c4b mem_24g_txlen
+0x4c4c mem_24g_rx_window
+0x4c4e mem_24g_ensure
+0x4c4f mem_24g_txfail_cnt
+0x4c51 mem_24g_get_ack_fail
+0x4c52 mem_24g_retry
+0x4c53 mem_24g_ch
+0x4c54 mem_24g_current_ch_number
+0x4c55 mem_24g_paring_addr
+0x4c59 mem_24g_pairing_sm
+0x4c5a mem_24g_ch_map1
+0x4c5e mem_24g_ch_map2
+0x4c62 mem_24g_ch_map3
+0x4c66 mem_24g_ch_map4
+0x4c6a mem_24g_tx_btclk
+0x4c6e mem_24g_interval
+0x4c6f mem_24g_interval_min
+0x4c70 mem_24g_interval_max
+0x4c71 mem_24g_addr
+0x4c75 mem_24g_abort_pac
+0x4c76 mem_24g_check_dongle_times
+0x4c78 mem_24g_enter_hibernate
+0x4c80 mem_24g_device_addr
+0x4c84 mem_24g_pac_index
+0x4c85 mem_24g_no_ack
+0x4c86 mem_24g_sta_crc
+0x4c89 mem_24g_last_crc
+0x4c8c mem_24g_sta_pid
+0x4c8d mem_24g_last_pid
+0x4c8e mem_24g_max_retry
+0x4c8f mem_24g_mode
+0x4c90 mem_24g_rxdata_temp
+0x4cb2 mem_24g_rx_addr
+0x4cb6 mem_dongle_mode_init
+0x4cb7 mem_dongle_work_mode
+0x4cb8 mem_dongle_ms_bind_step
+0x4cb9 mem_dongle_kb_bind_step
+0x4cba mem_dongle_bind_device_status
+0x4cbb mem_24g_bind_payload
+0x4cc3 mem_24g_abort_packet
+0x4cc4 mem_24g_rf_laststa
+0x4cc5 mem_24g_hop_btclk
+0x4cc9 mem_24g_hop_interval
+0x4cca mem_24g_mode_switch
+0x4ccb mem_24g_ackpayload_enable
+0x4ccc mem_24g_hop_packet
+0x4ccd mem_24g_pair_mode
+0x4cce mem_24g_nodata_timer_enable
+0x4ccf mem_24g_time_slice
+0x4cd0 mem_24g_kb_data_sta_data
+0x4cd8 mem_24g_kb_data_last_data
+0x4ce0 mem_24g_kb_multikey_sta_data
+0x4ce3 mem_24g_kb_multikey_last_data
+0x4ce6 mem_24g_kb_blank_data_enable
+0x4ce7 mem_24g_kb_mul_blank_data_enable
+0x4ce8 mem_24g_ms_blank_data_enable
+0x4ce9 mem_24g_kb_addr
+0x4ced mem_24g_ms_addr
+0x4cf1 mem_24g_dg_last_ch
+0x4cf2 mem_24g_dg_ch_number
+0x4cf3 mem_24g_dg_config_ch_once
+0x4cf4 mem_24g_kb_last_ch
+0x4cf5 mem_24g_kb_ch_number
+0x4cf6 mem_24g_kb_config_ch_once
+0x4cf7 mem_24g_ms_last_ch
+0x4cf8 mem_24g_ms_ch_number
+0x4cf9 mem_24g_ms_config_ch_once
+0x4cfa mem_24g_syncword
+0x4cfc mem_24g_syncword_crc8
+0x4cfd mem_24g_get_syncword_crc8
+0x4cfe mem_24g_ota_sta_pid
+0x4d00 mem_tx_power_temp
+0x4d01 mem_rssi_hex
+0x4d02 mem_rssi_noise_avg
+0x4d03 mem_rssi_noise_index
+0x4d04 mem_rssi_signal_index
+0x4d05 mem_rssi_noise_dg_avg
+0x4d06 mem_rssi_noise_kb_avg
+0x4d07 mem_rssi_noise_ms_avg
+0x4d08 mem_rssi_noise_dg_index
+0x4d09 mem_rssi_noise_kb_index
+0x4d0a mem_rssi_noise_ms_index
+0x4d0b mem_rssi_signal_buf
+0x4d13 mem_queue_ele_num
+0x4d14 mem_queue_read
+0x4d16 mem_queue_write
+0x4d18 mem_queue_start
+0x4d18 mem_data_ele0
+0x4d38 mem_data_ele1
+0x4d58 mem_data_ele2
+0x4d78 mem_queue_end
+0x4d78 mem_queue_temp
+0x4d7a mem_cb_24g_data
+0x4d7c mem_24g_hop_fastly_cnt
+0x4d7d mem_24g_hop_pac_retry
+0x4d7e mem_24g_rf_hop_ch
+0x4d7f mem_24g_rf_last_sta
+0x4d80 mem_24g_rf_work_stage
+0x4d81 mem_24g_sync_cnt
+0x4d82 mem_power_ctrl_pac_succ_cnt
+0x4d83 mem_rssi_avg_received
+0x4d84 mem_rssi_hex_received
+0x4d85 mem_power_ctrl_level
+0x4d86 mem_seqi
+0x4d87 mem_24g_auto_paring_switch
+0x4d88 mem_24g_paccnt
+0x4d89 mem_24g_transmit_by_interrupt
+0x4d8a mem_24g_transmit_by_interrupt_exit_count
+0x4d8c mem_24g_transmit_by_interrupt_exit_count_init
+0x4d8e mem_24g_allpowerful_addr
+0x4d94 mem_24g_stop_g24_mode
+0x4d95 mem_24g_stop_g24_mode_timeout
+0x4d97 mem_24g_pair_current_ch_num
+0x4d98 mem_24g_powerful_current_ch_num
+0x4d99 mem_24g_search_dongle_action
+0x4d9a mem_24g_search_dongle_count
+0x4d9b mem_24g_search_dongle_ch
+0x4d9c mem_24g_search_dongle_wait
+0x4d9d mem_24g_conn_sm
 
 	width = 32
 	const length = 12000
@@ -3596,7 +3597,7 @@
 8 G24_CH_NUMBER
 16 G24_CH_POLL_COUNT
 0x0708 G24_DISCONN_NODATA_TIMER
-0x3c G24_FIRST_DISCONN_NODATA_TIMER
+0x1e G24_FIRST_DISCONN_NODATA_TIMER
 )
 
 
Index: XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.icode
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.icode	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.icode	(working copy)
@@ -1,17 +1,17 @@
  00000000  0x00000043 branch  0x00000040 
- 00000001  0x0000004a call  0x000003bb 
+ 00000001  0x0000004a call  0x000003ac 
  00000002  0x0000004b fetch  0x00000001 , 0x000041de 
- 00000003  0x0000004c store  0x00000001 , 0x00004cfe 
- 00000004  0x0000004d call  0x000006ff 
+ 00000003  0x0000004c store  0x00000001 , 0x00004d00 
+ 00000004  0x0000004d call  0x000006f4 
  00000005  0x0000004e fetch  0x00000001 , 0x00004685 
  00000006  0x0000004f store  0x00000001 , 0x000046da 
- 00000007  0x00000050 call  0x000004e0 
- 00000008  0x00000051 call  0x00000333 
- 00000009  0x00000052 call  0x0000079a 
+ 00000007  0x00000050 call  0x000004d5 
+ 00000008  0x00000051 call  0x00000324 
+ 00000009  0x00000052 call  0x0000078f 
  00000010  0x00000053 call  0x00000019 
  00000011  0x00000054 call  0x0000002c 
  00000012  0x00000055 fetch  0x00000004 , 0x000040a0 
- 00000013  0x00000056 store  0x00000004 , 0x00004c7e 
+ 00000013  0x00000056 store  0x00000004 , 0x00004c80 
  00000014  0x00000057 call  0x00005810 
  00000015  0x00000058 call  0x00005839 
  00000016  0x00000059 call  0x0000582c 
@@ -22,31 +22,31 @@
  00000021  0x0000005e setarg  0x00000000 
  00000022  0x0000005f store  0x00000002 , 0x00004154 
  00000023  0x00000060 call  0x000068a2 
- 00000024  0x00000061 branch  0x00000306 
- 00000025  0x00000064 setarg  0x0000037c 
- 00000026  0x00000065 store  0x00000002 , 0x00004d78 
- 00000027  0x00000066 setarg  0x000003a7 
+ 00000024  0x00000061 branch  0x000002f7 
+ 00000025  0x00000064 setarg  0x0000036d 
+ 00000026  0x00000065 store  0x00000002 , 0x00004d7a 
+ 00000027  0x00000066 setarg  0x00000398 
  00000028  0x00000067 store  0x00000002 , 0x000041ef 
- 00000029  0x00000068 setarg  0x0000063a 
+ 00000029  0x00000068 setarg  0x0000062f 
  00000030  0x00000069 store  0x00000002 , 0x000041f9 
- 00000031  0x0000006a setarg  0x000003da 
+ 00000031  0x0000006a setarg  0x000003cb 
  00000032  0x0000006b store  0x00000002 , 0x000041f1 
  00000033  0x0000006c setarg  0x000002a6 
  00000034  0x0000006d store  0x00000002 , 0x000041ed 
- 00000035  0x0000006e setarg  0x00000412 
+ 00000035  0x0000006e setarg  0x00000403 
  00000036  0x0000006f store  0x00000002 , 0x000041f5 
- 00000037  0x00000070 setarg  0x000003ff 
+ 00000037  0x00000070 setarg  0x000003f0 
  00000038  0x00000071 store  0x00000002 , 0x000041f3 
- 00000039  0x00000072 setarg  0x00000461 
+ 00000039  0x00000072 setarg  0x00000452 
  00000040  0x00000073 store  0x00000002 , 0x000041eb 
- 00000041  0x00000074 setarg  0x0000046e 
+ 00000041  0x00000074 setarg  0x0000045f 
  00000042  0x00000075 store  0x00000002 , 0x000041fd 
  00000043  0x00000076 rtn 
  00000044  0x00000079 setarg  0x00000019 
- 00000045  0x0000007a store  0x00000002 , 0x00004d8a 
+ 00000045  0x0000007a store  0x00000002 , 0x00004d8c 
  00000046  0x0000007b ncall  0x00000039 , 0x0000002b 
- 00000047  0x0000007c call  0x000002d4 
- 00000048  0x0000007d call  0x00000467 
+ 00000047  0x0000007c call  0x000002d5 
+ 00000048  0x0000007d call  0x00000458 
  00000049  0x0000007f fetch  0x00000001 , 0x0000471f 
  00000050  0x00000080 store  0x00000001 , 0x0000471e 
  00000051  0x00000081 fetch  0x00000006 , 0x000044a0 
@@ -54,9 +54,9 @@
  00000053  0x00000083 fetch  0x00000001 , 0x00004241 
  00000054  0x00000084 rtnbit1  0x00000002 
  00000055  0x00000086 jam  0x0000000a , 0x00004b77 
- 00000056  0x00000087 branch  0x000003a4 
+ 00000056  0x00000087 branch  0x00000395 
  00000057  0x0000008a setarg  0x00000177 
- 00000058  0x0000008b store  0x00000002 , 0x00004d8a 
+ 00000058  0x0000008b store  0x00000002 , 0x00004d8c 
  00000059  0x0000008c rtn 
  00000060  0x0000008e nop  0x00000001 
  00000061  0x0000008f nop  0x00000001 
@@ -65,61 +65,61 @@
  00000064  0x00000094 bbit1  0x00000008 , 0x0000005a 
  00000065  0x00000096 beq  0x00000001 , 0x00000076 
  00000066  0x00000097 beq  0x00000002 , 0x0000007f 
- 00000067  0x00000098 beq  0x00000085 , 0x0000076b 
- 00000068  0x00000099 beq  0x00000089 , 0x0000073c 
- 00000069  0x0000009a beq  0x0000008a , 0x0000076d 
- 00000070  0x0000009b beq  0x0000001b , 0x0000064f 
- 00000071  0x0000009c beq  0x00000026 , 0x00000651 
- 00000072  0x0000009d beq  0x00000048 , 0x0000066d 
- 00000073  0x0000009e beq  0x0000004a , 0x0000066f 
- 00000074  0x0000009f beq  0x00000051 , 0x00000678 
- 00000075  0x000000a0 beq  0x00000059 , 0x0000066b 
- 00000076  0x000000a1 beq  0x000000a7 , 0x0000067d 
- 00000077  0x000000a2 beq  0x000000ad , 0x00000693 
+ 00000067  0x00000098 beq  0x00000085 , 0x00000760 
+ 00000068  0x00000099 beq  0x00000089 , 0x00000731 
+ 00000069  0x0000009a beq  0x0000008a , 0x00000762 
+ 00000070  0x0000009b beq  0x0000001b , 0x00000644 
+ 00000071  0x0000009c beq  0x00000026 , 0x00000646 
+ 00000072  0x0000009d beq  0x00000048 , 0x00000662 
+ 00000073  0x0000009e beq  0x0000004a , 0x00000664 
+ 00000074  0x0000009f beq  0x00000051 , 0x0000066d 
+ 00000075  0x000000a0 beq  0x00000059 , 0x00000660 
+ 00000076  0x000000a1 beq  0x000000a7 , 0x00000672 
+ 00000077  0x000000a2 beq  0x000000ad , 0x00000688 
  00000078  0x000000a3 beq  0x000000cb , 0x000033e4 
- 00000079  0x000000a4 beq  0x000000e9 , 0x000006a4 
+ 00000079  0x000000a4 beq  0x000000e9 , 0x00000699 
  00000080  0x000000a5 beq  0x000000a1 , 0x00000088 
  00000081  0x000000a6 beq  0x000000b1 , 0x0000008d 
  00000082  0x000000a7 beq  0x000000b2 , 0x0000009b 
  00000083  0x000000a8 beq  0x000000c4 , 0x000002b3 
- 00000084  0x000000a9 beq  0x000000e3 , 0x00000512 
- 00000085  0x000000aa beq  0x000000e6 , 0x0000053a 
- 00000086  0x000000ab beq  0x000000ea , 0x00000582 
- 00000087  0x000000ac beq  0x000000eb , 0x0000058b 
- 00000088  0x000000ad beq  0x000000ec , 0x0000058e 
+ 00000084  0x000000a9 beq  0x000000e3 , 0x00000507 
+ 00000085  0x000000aa beq  0x000000e6 , 0x0000052f 
+ 00000086  0x000000ab beq  0x000000ea , 0x00000577 
+ 00000087  0x000000ac beq  0x000000eb , 0x00000580 
+ 00000088  0x000000ad beq  0x000000ec , 0x00000583 
  00000089  0x000000ae branch  0x00002a8e 
- 00000090  0x000000b0 beq  0x00000039 , 0x00000590 
- 00000091  0x000000b1 beq  0x00000043 , 0x00000598 
- 00000092  0x000000b2 beq  0x0000004a , 0x0000059e 
- 00000093  0x000000b3 beq  0x00000057 , 0x000005a1 
- 00000094  0x000000b4 beq  0x00000059 , 0x000005a3 
- 00000095  0x000000b5 beq  0x00000063 , 0x000005a5 
- 00000096  0x000000b6 beq  0x00000066 , 0x000005ce 
- 00000097  0x000000b7 beq  0x00000067 , 0x000005ed 
- 00000098  0x000000b8 beq  0x0000006a , 0x00000625 
- 00000099  0x000000b9 beq  0x00000077 , 0x00000630 
- 00000100  0x000000ba beq  0x000000fa , 0x000006e7 
- 00000101  0x000000bb beq  0x00000005 , 0x000006a6 
- 00000102  0x000000bc beq  0x00000080 , 0x000006a8 
- 00000103  0x000000bd beq  0x00000082 , 0x000006b2 
- 00000104  0x000000be beq  0x00000088 , 0x000006c3 
- 00000105  0x000000bf beq  0x0000008c , 0x0000063c 
- 00000106  0x000000c0 beq  0x0000008d , 0x00000648 
+ 00000090  0x000000b0 beq  0x00000039 , 0x00000585 
+ 00000091  0x000000b1 beq  0x00000043 , 0x0000058d 
+ 00000092  0x000000b2 beq  0x0000004a , 0x00000593 
+ 00000093  0x000000b3 beq  0x00000057 , 0x00000596 
+ 00000094  0x000000b4 beq  0x00000059 , 0x00000598 
+ 00000095  0x000000b5 beq  0x00000063 , 0x0000059a 
+ 00000096  0x000000b6 beq  0x00000066 , 0x000005c3 
+ 00000097  0x000000b7 beq  0x00000067 , 0x000005e2 
+ 00000098  0x000000b8 beq  0x0000006a , 0x0000061a 
+ 00000099  0x000000b9 beq  0x00000077 , 0x00000625 
+ 00000100  0x000000ba beq  0x000000fa , 0x000006dc 
+ 00000101  0x000000bb beq  0x00000005 , 0x0000069b 
+ 00000102  0x000000bc beq  0x00000080 , 0x0000069d 
+ 00000103  0x000000bd beq  0x00000082 , 0x000006a7 
+ 00000104  0x000000be beq  0x00000088 , 0x000006b8 
+ 00000105  0x000000bf beq  0x0000008c , 0x00000631 
+ 00000106  0x000000c0 beq  0x0000008d , 0x0000063d 
  00000107  0x000000c1 branch  0x00002a8e 
  00000108  0x000000c5 copy  0x0000003f , 0x00000011 
- 00000109  0x000000c6 fetcht  0x00000001 , 0x00004d02 
- 00000110  0x000000c7 setarg  0x00004d09 
+ 00000109  0x000000c6 fetcht  0x00000001 , 0x00004d04 
+ 00000110  0x000000c7 setarg  0x00004d0b 
  00000111  0x000000c8 iadd  0x00000002 , 0x00000005 
  00000112  0x000000c9 copy  0x00000011 , 0x0000003f 
  00000113  0x000000ca istore  0x00000001 , 0x00000005 
  00000114  0x000000cb increase  0x00000001 , 0x00000002 
  00000115  0x000000cc and_into  0x00000007 , 0x00000002 
- 00000116  0x000000cd storet  0x00000001 , 0x00004d02 
+ 00000116  0x000000cd storet  0x00000001 , 0x00004d04 
  00000117  0x000000ce rtn 
  00000118  0x000000d2 arg  0x000009ae , 0x00000005 
  00000119  0x000000d3 arg  0x0000000c , 0x00000039 
  00000120  0x000000d4 call  0x00007ed4 
- 00000121  0x000000d5 call  0x0000038d 
+ 00000121  0x000000d5 call  0x0000037e 
  00000122  0x000000d6 call  0x00006a03 
  00000123  0x000000d7 call  0x00005cf6 
  00000124  0x000000d8 ncall  0x00002c65 , 0x0000002b 
@@ -154,73 +154,73 @@
  00000153  0x000000fc nbranch  0x00007fef , 0x00000034 
  00000154  0x000000fd branch  0x00007ff1 
  00000155  0x00000101 rtnmark0  0x00000026 
- 00000156  0x00000102 fetch  0x00000001 , 0x00004d9b 
+ 00000156  0x00000102 fetch  0x00000001 , 0x00004d9d 
  00000157  0x00000103 bbit1  0x00000001 , 0x000000b0 
  00000158  0x00000104 bbit1  0x00000002 , 0x000000b2 
- 00000159  0x00000105 fetch  0x00000001 , 0x00004d87 
+ 00000159  0x00000105 fetch  0x00000001 , 0x00004d89 
  00000160  0x00000106 beq  0x00000001 , 0x000000b8 
  00000161  0x00000108 call  0x00000170 
  00000162  0x00000109 nbranch  0x000000d3 , 0x00000028 
  00000163  0x0000010a call  0x0000014b 
  00000164  0x0000010c call  0x00000193 
- 00000165  0x0000010d fetch  0x00000001 , 0x00004c57 
+ 00000165  0x0000010d fetch  0x00000001 , 0x00004c59 
  00000166  0x0000010e rtnne  0x000000ff 
- 00000167  0x0000010f call  0x00000710 
+ 00000167  0x0000010f call  0x00000705 
  00000168  0x00000110 call  0x000000b4 
  00000169  0x00000111 fetch  0x00000001 , 0x00004b26 
- 00000170  0x00000112 beq  0x00000001 , 0x0000037f 
+ 00000170  0x00000112 beq  0x00000001 , 0x00000370 
  00000171  0x00000116 call  0x000000e2 
  00000172  0x00000117 nrtn  0x00000028 
  00000173  0x00000118 call  0x000002ad 
  00000174  0x00000119 setarg  0x0000f03c 
  00000175  0x0000011a branch  0x00002b93 
  00000176  0x0000011d jam  0x00000060 , 0x000011c6 
- 00000177  0x0000011e branch  0x00000770 
+ 00000177  0x0000011e branch  0x00000765 
  00000178  0x00000121 jam  0x00000053 , 0x000011c6 
- 00000179  0x00000122 branch  0x00000770 
+ 00000179  0x00000122 branch  0x00000765 
  00000180  0x00000127 setarg  0x00017700 
- 00000181  0x00000128 store  0x00000003 , 0x00004c76 
+ 00000181  0x00000128 store  0x00000003 , 0x00004c78 
  00000182  0x00000129 jam  0x00000014 , 0x00004b44 
  00000183  0x0000012a rtn 
  00000184  0x0000012d call  0x00000286 
  00000185  0x0000012e nrtn  0x00000028 
  00000186  0x0000012f call  0x000000cd 
- 00000187  0x00000130 fetch  0x00000002 , 0x00004d88 
+ 00000187  0x00000130 fetch  0x00000002 , 0x00004d8a 
  00000188  0x00000131 increase  0x00000001 , 0x0000003f 
- 00000189  0x00000132 store  0x00000002 , 0x00004d88 
- 00000190  0x00000133 fetcht  0x00000002 , 0x00004d8a 
+ 00000189  0x00000132 store  0x00000002 , 0x00004d8a 
+ 00000190  0x00000133 fetcht  0x00000002 , 0x00004d8c 
  00000191  0x00000134 isub  0x00000002 , 0x0000003e 
  00000192  0x00000135 call  0x000000c2 , 0x00000005 
  00000193  0x00000136 branch  0x000000a1 
- 00000194  0x00000138 jam  0x00000000 , 0x00004d87 
+ 00000194  0x00000138 jam  0x00000000 , 0x00004d89 
  00000195  0x00000139 setarg  0x00000000 
- 00000196  0x0000013a store  0x00000002 , 0x00004d88 
+ 00000196  0x0000013a store  0x00000002 , 0x00004d8a 
  00000197  0x0000013b setarg  0x00000019 
- 00000198  0x0000013c store  0x00000002 , 0x00004d8a 
- 00000199  0x0000013e jam  0x00000000 , 0x00004c82 
- 00000200  0x0000013f fetch  0x00000001 , 0x00004c6d 
- 00000201  0x00000141 store  0x00000001 , 0x00004c6c 
+ 00000198  0x0000013c store  0x00000002 , 0x00004d8c 
+ 00000199  0x0000013e jam  0x00000000 , 0x00004c84 
+ 00000200  0x0000013f fetch  0x00000001 , 0x00004c6f 
+ 00000201  0x00000141 store  0x00000001 , 0x00004c6e 
  00000202  0x00000142 rtn 
- 00000203  0x00000144 fetch  0x00000001 , 0x00004c6e 
+ 00000203  0x00000144 fetch  0x00000001 , 0x00004c70 
  00000204  0x00000145 branch  0x000000c9 
- 00000205  0x00000147 fetch  0x00000001 , 0x00004c82 
+ 00000205  0x00000147 fetch  0x00000001 , 0x00004c84 
  00000206  0x00000148 increase  0x00000001 , 0x0000003f 
- 00000207  0x00000149 store  0x00000001 , 0x00004c82 
+ 00000207  0x00000149 store  0x00000001 , 0x00004c84 
  00000208  0x0000014a beq  0x00000004 , 0x000000cb 
  00000209  0x0000014b beq  0x00000005 , 0x000000c7 
  00000210  0x0000014c rtn 
- 00000211  0x0000014f fetch  0x00000001 , 0x00004c73 
+ 00000211  0x0000014f fetch  0x00000001 , 0x00004c75 
  00000212  0x00000150 call  0x000000fb , 0x00000034 
  00000213  0x00000151 fetch  0x00000001 , 0x00004b2c 
  00000214  0x00000152 nrtn  0x00000034 
  00000215  0x00000153 fetch  0x00000001 , 0x00004b26 
  00000216  0x00000154 rtneq  0x00000001 
- 00000217  0x00000155 fetch  0x00000001 , 0x00004d87 
+ 00000217  0x00000155 fetch  0x00000001 , 0x00004d89 
  00000218  0x00000156 rtneq  0x00000001 
  00000219  0x00000157 call  0x0000010c 
  00000220  0x00000159 call  0x000000e2 
  00000221  0x0000015a nrtn  0x00000028 
- 00000222  0x0000015b fetch  0x00000003 , 0x00004c76 
+ 00000222  0x0000015b fetch  0x00000003 , 0x00004c78 
  00000223  0x0000015c call  0x00007f49 
  00000224  0x0000015d storet  0x00000004 , 0x0000415b 
  00000225  0x0000015e branch  0x00002b2a 
@@ -230,12 +230,12 @@
  00000229  0x00000164 branch  0x00007fe9 , 0x00000034 
  00000230  0x00000165 fetch  0x00000001 , 0x00004091 
  00000231  0x00000166 branch  0x00007fe9 , 0x00000034 
- 00000232  0x00000167 fetch  0x00000001 , 0x00004d87 
+ 00000232  0x00000167 fetch  0x00000001 , 0x00004d89 
  00000233  0x00000168 beq  0x00000001 , 0x00007fe9 
  00000234  0x0000016a call  0x000002b0 
  00000235  0x0000016b call  0x000002ad 
  00000236  0x0000016d call  0x00003ebf 
- 00000237  0x0000016e call  0x00000308 
+ 00000237  0x0000016e call  0x000002f9 
  00000238  0x0000016f hfetch  0x00000004 , 0x00008070 
  00000239  0x00000170 hfetcht  0x00000004 , 0x00008078 
  00000240  0x00000171 ior  0x00000002 , 0x00000002 
@@ -249,141 +249,141 @@
  00000248  0x00000179 hstore  0x00000001 , 0x0000807e 
  00000249  0x0000017c arg  0x0000001d , 0x00000002 
  00000250  0x0000017d branch  0x000067fb 
- 00000251  0x00000180 jam  0x00000001 , 0x00004c73 
- 00000252  0x00000181 jam  0x00000000 , 0x00004d7c 
+ 00000251  0x00000180 jam  0x00000001 , 0x00004c75 
+ 00000252  0x00000181 jam  0x00000000 , 0x00004d7e 
  00000253  0x00000182 call  0x00000121 
- 00000254  0x00000183 store  0x00000001 , 0x00004be3 
+ 00000254  0x00000183 store  0x00000001 , 0x00004be5 
  00000255  0x00000184 setarg  0x00000000 
- 00000256  0x00000185 store  0x00000007 , 0x00004be4 
- 00000257  0x00000186 fetch  0x00000004 , 0x00004c7e 
- 00000258  0x00000187 store  0x00000004 , 0x00004beb 
- 00000259  0x00000188 jam  0x0000000c , 0x00004c47 
- 00000260  0x00000189 fetch  0x00000001 , 0x00004c48 
+ 00000256  0x00000185 store  0x00000007 , 0x00004be6 
+ 00000257  0x00000186 fetch  0x00000004 , 0x00004c80 
+ 00000258  0x00000187 store  0x00000004 , 0x00004bed 
+ 00000259  0x00000188 jam  0x0000000c , 0x00004c49 
+ 00000260  0x00000189 fetch  0x00000001 , 0x00004c4a 
  00000261  0x0000018a set1  0x00000003 , 0x0000003f 
- 00000262  0x0000018b store  0x00000001 , 0x00004c48 
+ 00000262  0x0000018b store  0x00000001 , 0x00004c4a 
  00000263  0x0000018c call  0x00000173 
  00000264  0x0000018d branch  0x000000a4 
  00000265  0x00000190 setarg  0x00000000 
- 00000266  0x00000191 store  0x00000003 , 0x00004d97 
+ 00000266  0x00000191 store  0x00000003 , 0x00004d99 
  00000267  0x00000192 rtn 
  00000268  0x00000195 jam  0x00000071 , 0x000011c6 
- 00000269  0x00000196 branch  0x00000770 
- 00000270  0x00000199 jam  0x00000000 , 0x00004d98 
- 00000271  0x0000019a fetch  0x00000001 , 0x00004d97 
+ 00000269  0x00000196 branch  0x00000765 
+ 00000270  0x00000199 jam  0x00000000 , 0x00004d9a 
+ 00000271  0x0000019a fetch  0x00000001 , 0x00004d99 
  00000272  0x0000019b rtnbit1  0x00000000 
  00000273  0x0000019c set1  0x00000000 , 0x0000003f 
- 00000274  0x0000019d store  0x00000001 , 0x00004d97 
+ 00000274  0x0000019d store  0x00000001 , 0x00004d99 
  00000275  0x0000019e setarg  0x00000708 
  00000276  0x0000019f store  0x00000002 , 0x000046b0 
- 00000277  0x000001a0 branch  0x00000467 
- 00000278  0x000001a3 fetch  0x00000001 , 0x00004c73 
+ 00000277  0x000001a0 branch  0x00000458 
+ 00000278  0x000001a3 fetch  0x00000001 , 0x00004c75 
  00000279  0x000001a4 branch  0x00000109 , 0x00000034 
- 00000280  0x000001a5 jam  0x00000000 , 0x00004d98 
- 00000281  0x000001a6 fetch  0x00000001 , 0x00004d97 
+ 00000280  0x000001a5 jam  0x00000000 , 0x00004d9a 
+ 00000281  0x000001a6 fetch  0x00000001 , 0x00004d99 
  00000282  0x000001a7 rtnbit0  0x00000000 
  00000283  0x000001a8 set0  0x00000000 , 0x0000003f 
- 00000284  0x000001a9 store  0x00000001 , 0x00004d97 
+ 00000284  0x000001a9 store  0x00000001 , 0x00004d99 
  00000285  0x000001aa call  0x00003f8d 
- 00000286  0x000001ab branch  0x000003d8 
- 00000287  0x000001b7 jam  0x00000001 , 0x00004d7d 
- 00000288  0x000001b8 jam  0x00000000 , 0x00004d7f 
- 00000289  0x000001ba fetch  0x00000001 , 0x00004c48 
+ 00000286  0x000001ab branch  0x000003c9 
+ 00000287  0x000001b7 jam  0x00000001 , 0x00004d7f 
+ 00000288  0x000001b8 jam  0x00000000 , 0x00004d81 
+ 00000289  0x000001ba fetch  0x00000001 , 0x00004c4a 
  00000290  0x000001bb and_into  0x00000007 , 0x0000003f 
- 00000291  0x000001bc store  0x00000001 , 0x00004c48 
+ 00000291  0x000001bc store  0x00000001 , 0x00004c4a 
  00000292  0x000001bd rtn 
- 00000293  0x000001c0 fetch  0x00000001 , 0x00004c48 
+ 00000293  0x000001c0 fetch  0x00000001 , 0x00004c4a 
  00000294  0x000001c1 set1  0x00000004 , 0x0000003f 
- 00000295  0x000001c2 store  0x00000001 , 0x00004c48 
- 00000296  0x000001c4 store  0x00000001 , 0x00004c03 
+ 00000295  0x000001c2 store  0x00000001 , 0x00004c4a 
+ 00000296  0x000001c4 store  0x00000001 , 0x00004c05 
  00000297  0x000001c5 rtn 
- 00000298  0x000001c8 fetch  0x00000001 , 0x00004c48 
+ 00000298  0x000001c8 fetch  0x00000001 , 0x00004c4a 
  00000299  0x000001c9 rtnbit0  0x00000004 
- 00000300  0x000001cb fetch  0x00000001 , 0x00004c48 
+ 00000300  0x000001cb fetch  0x00000001 , 0x00004c4a 
  00000301  0x000001cc set0  0x00000004 , 0x0000003f 
- 00000302  0x000001cd store  0x00000001 , 0x00004c48 
- 00000303  0x000001ce store  0x00000001 , 0x00004c03 
- 00000304  0x000001cf call  0x00000706 
+ 00000302  0x000001cd store  0x00000001 , 0x00004c4a 
+ 00000303  0x000001ce store  0x00000001 , 0x00004c05 
+ 00000304  0x000001cf call  0x000006fb 
  00000305  0x000001d0 branch  0x0000015e 
- 00000306  0x000001ed fetch  0x00000001 , 0x00004d7c 
+ 00000306  0x000001ed fetch  0x00000001 , 0x00004d7e 
  00000307  0x000001ee bne  0x00000001 , 0x00000121 
- 00000308  0x000001f0 fetch  0x00000001 , 0x00004d7a 
+ 00000308  0x000001f0 fetch  0x00000001 , 0x00004d7c 
  00000309  0x000001f1 increase  0x00000001 , 0x0000003f 
- 00000310  0x000001f2 store  0x00000001 , 0x00004d7a 
+ 00000310  0x000001f2 store  0x00000001 , 0x00004d7c 
  00000311  0x000001f3 beq  0x00000004 , 0x0000013b 
  00000312  0x000001f4 call  0x0000015e 
- 00000313  0x000001f5 jam  0x00000002 , 0x00004c8c 
+ 00000313  0x000001f5 jam  0x00000002 , 0x00004c8e 
  00000314  0x000001f6 branch  0x00000193 
- 00000315  0x000001f9 call  0x00000706 
- 00000316  0x000001fa jam  0x00000000 , 0x00004d7a 
+ 00000315  0x000001f9 call  0x000006fb 
+ 00000316  0x000001fa jam  0x00000000 , 0x00004d7c 
  00000317  0x000001fb branch  0x00000121 
- 00000318  0x000001fe jam  0x00000002 , 0x00004d7f 
- 00000319  0x00000200 jam  0x00000001 , 0x00004d7d 
- 00000320  0x00000201 jam  0x00000000 , 0x00004d7c 
+ 00000318  0x000001fe jam  0x00000002 , 0x00004d81 
+ 00000319  0x00000200 jam  0x00000001 , 0x00004d7f 
+ 00000320  0x00000201 jam  0x00000000 , 0x00004d7e 
  00000321  0x00000202 branch  0x00000121 
- 00000322  0x00000205 fetch  0x00000001 , 0x00004d7e 
+ 00000322  0x00000205 fetch  0x00000001 , 0x00004d80 
  00000323  0x00000206 beq  0x00000003 , 0x0000013f 
- 00000324  0x00000207 fetch  0x00000001 , 0x00004c48 
+ 00000324  0x00000207 fetch  0x00000001 , 0x00004c4a 
  00000325  0x00000208 isolate0  0x00000004 , 0x0000003f 
  00000326  0x00000209 branch  0x0000011f , 0x00000001 
- 00000327  0x0000020a fetch  0x00000001 , 0x00004d7e 
+ 00000327  0x0000020a fetch  0x00000001 , 0x00004d80 
  00000328  0x0000020b beq  0x00000001 , 0x0000013e 
  00000329  0x0000020c beq  0x00000002 , 0x0000013f 
  00000330  0x0000020d rtn 
- 00000331  0x00000210 fetch  0x00000001 , 0x00004c57 
+ 00000331  0x00000210 fetch  0x00000001 , 0x00004c59 
  00000332  0x00000211 rtnne  0x000000ff 
  00000333  0x00000212 call  0x00000150 
  00000334  0x00000213 ncall  0x00000158 , 0x0000002c 
  00000335  0x00000214 rtn 
  00000336  0x00000217 disable  0x0000002c 
- 00000337  0x00000218 fetch  0x00000001 , 0x00004d7d 
+ 00000337  0x00000218 fetch  0x00000001 , 0x00004d7f 
  00000338  0x00000219 rtnne  0x00000001 
- 00000339  0x0000021a fetch  0x00000001 , 0x00004d7f 
+ 00000339  0x0000021a fetch  0x00000001 , 0x00004d81 
  00000340  0x0000021b rtnne  0x00000000 
- 00000341  0x0000021c jam  0x00000001 , 0x00004d7e 
- 00000342  0x0000021d jam  0x00000004 , 0x00004c8c 
+ 00000341  0x0000021c jam  0x00000001 , 0x00004d80 
+ 00000342  0x0000021d jam  0x00000004 , 0x00004c8e 
  00000343  0x0000021e branch  0x00007feb 
- 00000344  0x00000221 fetch  0x00000001 , 0x00004d7f 
+ 00000344  0x00000221 fetch  0x00000001 , 0x00004d81 
  00000345  0x00000222 branch  0x0000016b , 0x00000034 
  00000346  0x00000223 increase  0xffffffff , 0x0000003f 
- 00000347  0x00000224 store  0x00000001 , 0x00004d7f 
- 00000348  0x00000225 jam  0x00000002 , 0x00004d7e 
- 00000349  0x00000226 jam  0x00000004 , 0x00004c8c 
- 00000350  0x00000228 fetcht  0x00000001 , 0x00004c52 
- 00000351  0x00000229 fetch  0x00000001 , 0x00004c6f 
+ 00000347  0x00000224 store  0x00000001 , 0x00004d81 
+ 00000348  0x00000225 jam  0x00000002 , 0x00004d80 
+ 00000349  0x00000226 jam  0x00000004 , 0x00004c8e 
+ 00000350  0x00000228 fetcht  0x00000001 , 0x00004c54 
+ 00000351  0x00000229 fetch  0x00000001 , 0x00004c71 
  00000352  0x0000022a and_into  0x00000003 , 0x0000003f 
  00000353  0x0000022b mul32  0x0000003f , 0x00000004 , 0x00000011 
- 00000354  0x0000022c setarg  0x00004c58 
+ 00000354  0x0000022c setarg  0x00004c5a 
  00000355  0x0000022d iadd  0x00000011 , 0x0000003f 
  00000356  0x0000022e iadd  0x00000002 , 0x00000006 
  00000357  0x0000022f ifetch  0x00000001 , 0x00000006 
- 00000358  0x00000230 store  0x00000001 , 0x00004c51 
+ 00000358  0x00000230 store  0x00000001 , 0x00004c53 
  00000359  0x00000231 increase  0x00000001 , 0x00000002 
  00000360  0x00000232 and_into  0x00000003 , 0x00000002 
- 00000361  0x00000233 storet  0x00000001 , 0x00004c52 
+ 00000361  0x00000233 storet  0x00000001 , 0x00004c54 
  00000362  0x00000234 rtn 
- 00000363  0x00000237 jam  0x00000003 , 0x00004d7e 
- 00000364  0x00000238 fetch  0x00000001 , 0x00004d7c 
+ 00000363  0x00000237 jam  0x00000003 , 0x00004d80 
+ 00000364  0x00000238 fetch  0x00000001 , 0x00004d7e 
  00000365  0x00000239 nbranch  0x00000132 , 0x00000034 
- 00000366  0x0000023a jam  0x00000002 , 0x00004c8c 
+ 00000366  0x0000023a jam  0x00000002 , 0x00004c8e 
  00000367  0x0000023b branch  0x0000015e 
- 00000368  0x0000023e fetch  0x00000001 , 0x00004c57 
+ 00000368  0x0000023e fetch  0x00000001 , 0x00004c59 
  00000369  0x0000023f bne  0x000000ff , 0x000001ec 
  00000370  0x00000241 call  0x00000176 
  00000371  0x00000243 call  0x0000020a 
- 00000372  0x00000244 jam  0x00000001 , 0x00004c4c 
+ 00000372  0x00000244 jam  0x00000001 , 0x00004c4e 
  00000373  0x00000245 rtn 
- 00000374  0x00000248 fetch  0x00000002 , 0x00004d78 
+ 00000374  0x00000248 fetch  0x00000002 , 0x00004d7a 
  00000375  0x00000249 call  0x00007f9c 
  00000376  0x0000024a branch  0x0000017c , 0x00000028 
- 00000377  0x0000024b fetch  0x00000007 , 0x00004be4 
+ 00000377  0x0000024b fetch  0x00000007 , 0x00004be6 
  00000378  0x0000024c rtn  0x00000034 
  00000379  0x0000024d branch  0x00007fe7 
- 00000380  0x0000024f call  0x00000399 
- 00000381  0x00000250 jam  0x00000000 , 0x00004c73 
+ 00000380  0x0000024f call  0x0000038a 
+ 00000381  0x00000250 jam  0x00000000 , 0x00004c75 
  00000382  0x00000251 add  0x00000011 , 0x00000001 , 0x0000003f 
- 00000383  0x00000252 store  0x00000001 , 0x00004c47 
+ 00000383  0x00000252 store  0x00000001 , 0x00004c49 
  00000384  0x00000253 call  0x00000121 
- 00000385  0x00000254 store  0x00000001 , 0x00004be3 
+ 00000385  0x00000254 store  0x00000001 , 0x00004be5 
  00000386  0x00000255 ifetcht  0x00000001 , 0x00000005 
  00000387  0x00000256 ifetch  0x00000001 , 0x00000012 
  00000388  0x00000257 ior  0x00000002 , 0x0000003f 
@@ -392,7 +392,7 @@
  00000391  0x0000025a ifetch  0x00000004 , 0x00000012 
  00000392  0x0000025b istore  0x00000004 , 0x00000005 
  00000393  0x0000025c increase  0x00000004 , 0x00000012 
- 00000394  0x0000025d arg  0x00004be9 , 0x00000005 
+ 00000394  0x0000025d arg  0x00004beb , 0x00000005 
  00000395  0x0000025e arg  0x00000002 , 0x00000039 
  00000396  0x00000260 ifetch  0x00000001 , 0x00000012 
  00000397  0x00000261 ifetcht  0x00000001 , 0x00000005 
@@ -401,7 +401,7 @@
  00000400  0x00000264 increase  0x00000001 , 0x00000012 
  00000401  0x00000265 loop  0x0000018c 
  00000402  0x00000266 rtn 
- 00000403  0x00000269 jam  0x00000000 , 0x00004c50 
+ 00000403  0x00000269 jam  0x00000000 , 0x00004c52 
  00000404  0x0000026b arg  0x00000d00 , 0x0000000b 
  00000405  0x0000026c until  0x00000023 , 0x00000026 
  00000406  0x0000026d call  0x000001aa 
@@ -409,25 +409,25 @@
  00000408  0x00000271 nbranch  0x000001b5 , 0x0000002f 
  00000409  0x00000272 call  0x000001a7 
  00000410  0x00000273 call  0x000001d0 
- 00000411  0x00000274 call  0x00000702 
- 00000412  0x00000276 fetch  0x00000001 , 0x00004c46 
+ 00000411  0x00000274 call  0x000006f7 
+ 00000412  0x00000276 fetch  0x00000001 , 0x00004c48 
  00000413  0x00000277 increase  0x00000001 , 0x0000003f 
- 00000414  0x00000278 store  0x00000001 , 0x00004c46 
+ 00000414  0x00000278 store  0x00000001 , 0x00004c48 
  00000415  0x00000279 call  0x0000012a 
- 00000416  0x0000027a fetch  0x00000001 , 0x00004c57 
+ 00000416  0x0000027a fetch  0x00000001 , 0x00004c59 
  00000417  0x0000027b bne  0x000000ff , 0x000001ee 
  00000418  0x0000027c call  0x00000142 
  00000419  0x0000027e setarg  0x00000000 
- 00000420  0x0000027f store  0x00000004 , 0x00004c4c 
- 00000421  0x00000280 store  0x00000001 , 0x00004d7b 
+ 00000420  0x0000027f store  0x00000004 , 0x00004c4e 
+ 00000421  0x00000280 store  0x00000001 , 0x00004d7d 
  00000422  0x00000281 rtn 
  00000423  0x00000284 arg  0x00000004 , 0x00000039 
- 00000424  0x00000285 arg  0x00004be3 , 0x00000005 
+ 00000424  0x00000285 arg  0x00004be5 , 0x00000005 
  00000425  0x00000286 branch  0x00007ec6 
  00000426  0x00000289 disable  0x0000002f 
  00000427  0x0000028a call  0x00000265 
  00000428  0x0000028f force  0x00000000 , 0x00000015 
- 00000429  0x00000290 fetch  0x00000004 , 0x00004c6f 
+ 00000429  0x00000290 fetch  0x00000004 , 0x00004c71 
  00000430  0x00000291 iforce  0x00000009 
  00000431  0x00000292 fetcht  0x00000001 , 0x00000017 
  00000432  0x00000293 call  0x0000291f 
@@ -435,114 +435,114 @@
  00000434  0x00000295 call  0x00000225 
  00000435  0x00000296 call  0x0000025e , 0x0000002f 
  00000436  0x00000297 rtn 
- 00000437  0x0000029d fetch  0x00000002 , 0x00004c4d 
+ 00000437  0x0000029d fetch  0x00000002 , 0x00004c4f 
  00000438  0x0000029e increase  0x00000001 , 0x0000003f 
- 00000439  0x0000029f store  0x00000002 , 0x00004c4d 
- 00000440  0x000002a0 fetch  0x00000001 , 0x00004c4e 
+ 00000439  0x0000029f store  0x00000002 , 0x00004c4f 
+ 00000440  0x000002a0 fetch  0x00000001 , 0x00004c50 
  00000441  0x000002a1 bbit1  0x00000004 , 0x00002dd4 
- 00000442  0x000002a2 fetch  0x00000001 , 0x00004c57 
+ 00000442  0x000002a2 fetch  0x00000001 , 0x00004c59 
  00000443  0x000002a3 bne  0x000000ff , 0x000001be 
  00000444  0x000002a4 call  0x000001c6 
  00000445  0x000002a5 branch  0x00000194 
- 00000446  0x000002a8 fetch  0x00000001 , 0x00004c4d 
+ 00000446  0x000002a8 fetch  0x00000001 , 0x00004c4f 
  00000447  0x000002a9 rtnne  0x000000ff 
  00000448  0x000002ab setarg  0x00000000 
- 00000449  0x000002ac store  0x00000002 , 0x00004c4d 
+ 00000449  0x000002ac store  0x00000002 , 0x00004c4f 
  00000450  0x000002ad branch  0x00002dd4 
- 00000451  0x000002b0 call  0x00000733 
- 00000452  0x000002b1 call  0x00000706 
+ 00000451  0x000002b0 call  0x00000728 
+ 00000452  0x000002b1 call  0x000006fb 
  00000453  0x000002b2 branch  0x0000015e 
- 00000454  0x000002b5 fetch  0x00000001 , 0x00004c50 
+ 00000454  0x000002b5 fetch  0x00000001 , 0x00004c52 
  00000455  0x000002b6 sub  0x0000003f , 0x0000000b , 0x0000003e 
  00000456  0x000002b7 nbranch  0x000001c3 , 0x00000002 
  00000457  0x000002b8 increase  0x00000001 , 0x0000003f 
- 00000458  0x000002b9 store  0x00000001 , 0x00004c50 
+ 00000458  0x000002b9 store  0x00000001 , 0x00004c52 
  00000459  0x000002ba beq  0x00000002 , 0x00000125 
  00000460  0x000002bb beq  0x00000006 , 0x0000012c 
  00000461  0x000002bc beq  0x00000008 , 0x00000125 
  00000462  0x000002bd beq  0x0000000c , 0x0000012c 
  00000463  0x000002be rtn 
  00000464  0x000002c1 call  0x000001fd 
- 00000465  0x000002c2 fetch  0x00000001 , 0x00004c45 
+ 00000465  0x000002c2 fetch  0x00000001 , 0x00004c47 
  00000466  0x000002c3 rtn  0x00000034 
  00000467  0x000002c4 iforce  0x00000039 
- 00000468  0x000002c5 arg  0x00004bc3 , 0x00000006 
- 00000469  0x000002c6 arg  0x00004c25 , 0x00000005 
+ 00000468  0x000002c5 arg  0x00004bc5 , 0x00000006 
+ 00000469  0x000002c6 arg  0x00004c27 , 0x00000005 
  00000470  0x000002c7 branch  0x00007f01 
  00000471  0x000002ca jam  0x00000004 , 0x000041de 
- 00000472  0x000002cb jam  0x00000000 , 0x00004c46 
- 00000473  0x000002cc jam  0x0000004e , 0x00004c51 
- 00000474  0x000002cd fetch  0x00000004 , 0x00004c53 
- 00000475  0x000002cf store  0x00000004 , 0x00004c6f 
+ 00000472  0x000002cb jam  0x00000000 , 0x00004c48 
+ 00000473  0x000002cc jam  0x0000004e , 0x00004c53 
+ 00000474  0x000002cd fetch  0x00000004 , 0x00004c55 
+ 00000475  0x000002cf store  0x00000004 , 0x00004c71 
  00000476  0x000002d2 arg  0x00000000 , 0x00000011 
  00000477  0x000002d3 arg  0x00000004 , 0x00000039 
- 00000478  0x000002d4 arg  0x00004c6f , 0x00000006 
+ 00000478  0x000002d4 arg  0x00004c71 , 0x00000006 
  00000479  0x000002d6 ifetch  0x00000001 , 0x00000006 
  00000480  0x000002d7 iadd  0x00000011 , 0x00000011 
  00000481  0x000002d8 loop  0x000001df 
  00000482  0x000002d9 copy  0x00000011 , 0x0000003f 
- 00000483  0x000002da store  0x00000002 , 0x00004cf8 
- 00000484  0x000002db fetch  0x00000001 , 0x00004cf8 
- 00000485  0x000002dc fetcht  0x00000001 , 0x00004cf9 
+ 00000483  0x000002da store  0x00000002 , 0x00004cfa 
+ 00000484  0x000002db fetch  0x00000001 , 0x00004cfa 
+ 00000485  0x000002dc fetcht  0x00000001 , 0x00004cfb 
  00000486  0x000002dd iadd  0x00000002 , 0x0000003f 
- 00000487  0x000002de store  0x00000001 , 0x00004cfa 
+ 00000487  0x000002de store  0x00000001 , 0x00004cfc 
  00000488  0x000002df rtn 
  00000489  0x000002e3 call  0x000001d7 
- 00000490  0x000002e5 jam  0x00000001 , 0x00004c57 
+ 00000490  0x000002e5 jam  0x00000001 , 0x00004c59 
  00000491  0x000002e6 rtn 
  00000492  0x000002ea jam  0x00000090 , 0x000011c6 
- 00000493  0x000002eb branch  0x00000770 
- 00000494  0x000002ee call  0x000006ff 
+ 00000493  0x000002eb branch  0x00000765 
+ 00000494  0x000002ee call  0x000006f4 
  00000495  0x000002f0 jam  0x00000091 , 0x000011c6 
- 00000496  0x000002f1 branch  0x00000770 
+ 00000496  0x000002f1 branch  0x00000765 
  00000497  0x000002f4 jam  0x00000040 , 0x000011c6 
- 00000498  0x000002f5 branch  0x00000770 
+ 00000498  0x000002f5 branch  0x00000765 
  00000499  0x000002f8 set0  0x00000026 , 0x00000000 
- 00000500  0x000002f9 jam  0x00000000 , 0x00004d9b 
+ 00000500  0x000002f9 jam  0x00000000 , 0x00004d9d 
  00000501  0x000002fa call  0x000053ce 
  00000502  0x000002fc arg  0x00000003 , 0x00000007 
  00000503  0x000002fd branch  0x000043d2 
- 00000504  0x00000301 storet  0x00000001 , 0x00004c47 
+ 00000504  0x00000301 storet  0x00000001 , 0x00004c49 
  00000505  0x00000302 copy  0x00000002 , 0x00000039 
- 00000506  0x00000303 arg  0x00004be3 , 0x00000005 
+ 00000506  0x00000303 arg  0x00004be5 , 0x00000005 
  00000507  0x00000304 copy  0x00000011 , 0x00000006 
  00000508  0x00000305 branch  0x00007f01 
- 00000509  0x00000309 fetch  0x00000001 , 0x00004bc2 
+ 00000509  0x00000309 fetch  0x00000001 , 0x00004bc4 
  00000510  0x0000030a rshift3  0x0000003f , 0x0000003f 
- 00000511  0x0000030b store  0x00000001 , 0x00004c45 
+ 00000511  0x0000030b store  0x00000001 , 0x00004c47 
  00000512  0x0000030d increase  0x00000001 , 0x0000003f 
- 00000513  0x0000030e arg  0x00004bc2 , 0x00000006 
+ 00000513  0x0000030e arg  0x00004bc4 , 0x00000006 
  00000514  0x0000030f iadd  0x00000006 , 0x00000006 
  00000515  0x00000310 ifetch  0x00000003 , 0x00000006 
- 00000516  0x00000311 store  0x00000003 , 0x00004c84 
- 00000517  0x00000313 fetch  0x00000001 , 0x00004bc2 
+ 00000516  0x00000311 store  0x00000003 , 0x00004c86 
+ 00000517  0x00000313 fetch  0x00000001 , 0x00004bc4 
  00000518  0x00000314 rshift  0x0000003f , 0x0000003f 
  00000519  0x00000315 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00000520  0x00000316 store  0x00000001 , 0x00004c8a 
+ 00000520  0x00000316 store  0x00000001 , 0x00004c8c 
  00000521  0x00000317 rtn 
- 00000522  0x0000031e fetch  0x00000001 , 0x00004c47 
+ 00000522  0x0000031e fetch  0x00000001 , 0x00004c49 
  00000523  0x0000031f increase  0x00000002 , 0x0000003f 
- 00000524  0x00000320 store  0x00000001 , 0x00004c49 
- 00000525  0x00000322 fetch  0x00000001 , 0x00004c48 
- 00000526  0x00000323 store  0x00000001 , 0x00004c03 
- 00000527  0x00000325 fetch  0x00000001 , 0x00004c47 
+ 00000524  0x00000320 store  0x00000001 , 0x00004c4b 
+ 00000525  0x00000322 fetch  0x00000001 , 0x00004c4a 
+ 00000526  0x00000323 store  0x00000001 , 0x00004c05 
+ 00000527  0x00000325 fetch  0x00000001 , 0x00004c49 
  00000528  0x00000326 lshift3  0x0000003f , 0x0000003f 
- 00000529  0x00000327 fetcht  0x00000001 , 0x00004c46 
+ 00000529  0x00000327 fetcht  0x00000001 , 0x00004c48 
  00000530  0x00000328 and  0x00000002 , 0x00000003 , 0x00000002 
  00000531  0x00000329 lshift  0x00000002 , 0x00000002 
  00000532  0x0000032a ior  0x00000002 , 0x0000003f 
- 00000533  0x0000032b fetcht  0x00000001 , 0x00004c83 
+ 00000533  0x0000032b fetcht  0x00000001 , 0x00004c85 
  00000534  0x0000032c iadd  0x00000002 , 0x0000003f 
  00000535  0x0000032d istore  0x00000001 , 0x00000005 
- 00000536  0x0000032f fetch  0x00000001 , 0x00004c47 
+ 00000536  0x0000032f fetch  0x00000001 , 0x00004c49 
  00000537  0x00000330 iforce  0x00000039 
- 00000538  0x00000331 arg  0x00004be3 , 0x00000006 
+ 00000538  0x00000331 arg  0x00004be5 , 0x00000006 
  00000539  0x00000332 branch  0x00007f01 
  00000540  0x00000355 disable  0x00000009 
  00000541  0x00000356 disable  0x00000007 
  00000542  0x00000357 setarg  0x00555555 
  00000543  0x00000358 iforce  0x0000000f 
- 00000544  0x00000359 fetch  0x00000001 , 0x00004c51 
+ 00000544  0x00000359 fetch  0x00000001 , 0x00004c53 
  00000545  0x0000035a reverse  0x0000003f , 0x00000002 
  00000546  0x0000035b set1  0x00000001 , 0x00000002 
  00000547  0x0000035c rshift  0x00000002 , 0x0000000e 
@@ -553,7 +553,7 @@
  00000552  0x0000036f enable  0x00000021 
  00000553  0x00000370 disable  0x00000020 
  00000554  0x00000371 enable  0x00000010 
- 00000555  0x00000372 fetch  0x00000002 , 0x00004c4a 
+ 00000555  0x00000372 fetch  0x00000002 , 0x00004c4c 
  00000556  0x00000373 iforce  0x0000001b 
  00000557  0x00000374 correlate  0x0000003e , 0x00000003 
  00000558  0x00000375 nbranch  0x0000025e , 0x00000018 
@@ -562,14 +562,14 @@
  00000561  0x0000037a enable  0x00000007 
  00000562  0x0000037b enable  0x00000009 
  00000563  0x0000037c call  0x0000025b 
- 00000564  0x0000037d store  0x00000001 , 0x00004cfb 
- 00000565  0x0000037e fetcht  0x00000001 , 0x00004cfa 
+ 00000564  0x0000037d store  0x00000001 , 0x00004cfd 
+ 00000565  0x0000037e fetcht  0x00000001 , 0x00004cfc 
  00000566  0x0000037f isub  0x00000002 , 0x0000003e 
  00000567  0x00000380 nbranch  0x0000025e , 0x00000005 
  00000568  0x00000381 call  0x0000025b 
- 00000569  0x00000382 store  0x00000001 , 0x00004bc1 
- 00000570  0x00000386 fetch  0x00000001 , 0x00004bc1 
- 00000571  0x00000387 fetcht  0x00000001 , 0x00004c48 
+ 00000569  0x00000382 store  0x00000001 , 0x00004bc3 
+ 00000570  0x00000386 fetch  0x00000001 , 0x00004bc3 
+ 00000571  0x00000387 fetcht  0x00000001 , 0x00004c4a 
  00000572  0x00000388 icompare  0x00000007 , 0x00000002 
  00000573  0x00000389 nbranch  0x0000025e , 0x00000001 
  00000574  0x0000038b call  0x0000025b 
@@ -582,7 +582,7 @@
  00000581  0x00000393 loop  0x00000243 
  00000582  0x00000396 copy  0x00000005 , 0x00000011 
  00000583  0x00000397 call  0x0000025b 
- 00000584  0x00000398 store  0x00000001 , 0x00004d82 
+ 00000584  0x00000398 store  0x00000001 , 0x00004d84 
  00000585  0x00000399 copy  0x00000011 , 0x00000005 
  00000586  0x0000039a parse  0x00000003 , 0x00000000 , 0x00000018 
  00000587  0x0000039b enable  0x00000010 
@@ -598,7 +598,7 @@
  00000597  0x000003a7 call  0x00002981 
  00000598  0x000003a8 disable  0x0000000d 
  00000599  0x000003a9 call  0x00002918 
- 00000600  0x000003aa fetch  0x00000001 , 0x00004d82 
+ 00000600  0x000003aa fetch  0x00000001 , 0x00004d84 
  00000601  0x000003ab call  0x0000006c 
  00000602  0x000003ac rtn 
  00000603  0x000003af parse  0x00000003 , 0x00000000 , 0x00000008 
@@ -609,10 +609,10 @@
  00000608  0x000003bb call  0x0000264d 
  00000609  0x000003bc rtn 
  00000610  0x000003bf call  0x00002918 
- 00000611  0x000003c0 fetcht  0x00000001 , 0x00004c51 
+ 00000611  0x000003c0 fetcht  0x00000001 , 0x00004c53 
  00000612  0x000003c1 branch  0x00002933 
  00000613  0x000003c4 call  0x000053c4 
- 00000614  0x000003c5 fetch  0x00000004 , 0x00004c6f 
+ 00000614  0x000003c5 fetch  0x00000004 , 0x00004c71 
  00000615  0x000003c6 iforce  0x00000009 
  00000616  0x000003c7 call  0x0000021c 
  00000617  0x000003c8 call  0x00000262 
@@ -628,11 +628,11 @@
  00000627  0x000003d4 enable  0x0000001b 
  00000628  0x000003d5 enable  0x00000007 
  00000629  0x000003d6 enable  0x00000009 
- 00000630  0x000003d7 fetch  0x00000001 , 0x00004cfa 
+ 00000630  0x000003d7 fetch  0x00000001 , 0x00004cfc 
  00000631  0x000003d8 inject  0x00000003 , 0x00000008 
- 00000632  0x000003d9 fetch  0x00000001 , 0x00004c49 
+ 00000632  0x000003d9 fetch  0x00000001 , 0x00004c4b 
  00000633  0x000003da iforce  0x00000039 
- 00000634  0x000003db arg  0x00004c03 , 0x00000006 
+ 00000634  0x000003db arg  0x00004c05 , 0x00000006 
  00000635  0x000003dd ifetch  0x00000001 , 0x00000006 
  00000636  0x000003de inject  0x00000003 , 0x00000008 
  00000637  0x000003df loop  0x0000027b 
@@ -645,19 +645,19 @@
  00000644  0x000003e8 disable  0x0000001b 
  00000645  0x000003e9 rtn 
  00000646  0x000003ec call  0x00007fe9 
- 00000647  0x000003ed fetcht  0x00000004 , 0x00004c68 
+ 00000647  0x000003ed fetcht  0x00000004 , 0x00004c6a 
  00000648  0x000003ee copy  0x00000022 , 0x0000003f 
  00000649  0x000003ef isub  0x00000002 , 0x0000003e 
  00000650  0x000003f0 ncall  0x00002d18 , 0x00000002 
  00000651  0x000003f1 copy  0x0000003f , 0x00000012 
- 00000652  0x000003f2 fetch  0x00000004 , 0x00004c68 
- 00000653  0x000003f3 fetcht  0x00000001 , 0x00004c6c 
+ 00000652  0x000003f2 fetch  0x00000004 , 0x00004c6a 
+ 00000653  0x000003f3 fetcht  0x00000001 , 0x00004c6e 
  00000654  0x000003f4 iadd  0x00000002 , 0x00000002 
  00000655  0x000003f5 copy  0x00000012 , 0x0000003f 
  00000656  0x000003f6 isub  0x00000002 , 0x0000003e 
  00000657  0x000003f7 nrtn  0x00000002 
  00000658  0x000003f8 set0  0x0000001c , 0x0000003f 
- 00000659  0x000003f9 store  0x00000004 , 0x00004c68 
+ 00000659  0x000003f9 store  0x00000004 , 0x00004c6a 
  00000660  0x000003fa branch  0x00007fe7 
  00000661  0x00000413 arg  0x00000000 , 0x00000002 
  00000662  0x00000414 arg  0x00000008 , 0x00000039 
@@ -677,7 +677,7 @@
  00000676  0x00000424 rtn 
  00000677  0x00000425 rtn 
  00000678  0x00000429 rtnmark1  0x00000026 
- 00000679  0x0000042a call  0x00000383 
+ 00000679  0x0000042a call  0x00000374 
  00000680  0x0000042b call  0x000000ea 
  00000681  0x0000042c fetch  0x00000001 , 0x00004040 
  00000682  0x0000042d bbit0  0x00000000 , 0x000002ad 
@@ -688,26525 +688,26521 @@
  00000687  0x00000433 rtn 
  00000688  0x00000437 fetch  0x00000001 , 0x00004afe 
  00000689  0x00000438 rtn  0x00000034 
- 00000690  0x00000439 branch  0x00000512 
+ 00000690  0x00000439 branch  0x00000507 
  00000691  0x0000043c call  0x0000296c 
  00000692  0x0000043d call  0x00003416 
  00000693  0x0000043e call  0x000074b9 
- 00000694  0x0000043f branch  0x00000333 , 0x0000002b 
+ 00000694  0x0000043f branch  0x00000324 , 0x0000002b 
  00000695  0x00000441 call  0x00000001 
- 00000696  0x00000442 call  0x00007fa1 
- 00000697  0x0000044c fetch  0x00000001 , 0x00004241 
- 00000698  0x0000044d bbit1  0x00000002 , 0x000002bd 
- 00000699  0x0000044e jam  0x000000ff , 0x00004b76 
- 00000700  0x0000044f branch  0x00000377 
- 00000701  0x00000452 call  0x00000355 
- 00000702  0x00000453 fetch  0x00000001 , 0x00004b76 
- 00000703  0x00000454 beq  0x00000001 , 0x000002c3 
- 00000704  0x00000455 beq  0x00000002 , 0x000001f1 
- 00000705  0x00000456 jam  0x0000000a , 0x00004b77 
- 00000706  0x00000457 rtn 
- 00000707  0x0000045a jam  0x00000001 , 0x00004d92 
- 00000708  0x0000045b call  0x000002cc 
- 00000709  0x0000045c fetch  0x00000001 , 0x00004210 
- 00000710  0x0000045d beq  0x00000033 , 0x000002cf 
- 00000711  0x0000045e beq  0x00000034 , 0x000002d2 
- 00000712  0x0000045f call  0x000004f9 
- 00000713  0x00000460 jam  0x00000006 , 0x0000016d 
- 00000714  0x00000461 call  0x0000049b 
- 00000715  0x00000462 branch  0x00007ddd 
- 00000716  0x00000468 fetch  0x00000001 , 0x00004cfe 
- 00000717  0x00000469 store  0x00000001 , 0x000041de 
- 00000718  0x0000046a rtn 
- 00000719  0x00000471 fetch  0x00000006 , 0x000041d0 
- 00000720  0x00000472 branch  0x000033eb , 0x00000034 
- 00000721  0x00000473 branch  0x00004274 
- 00000722  0x00000476 jam  0x00000012 , 0x000011c6 
- 00000723  0x00000477 branch  0x00000770 
- 00000724  0x00000480 call  0x00000333 
- 00000725  0x00000481 call  0x000040c0 
- 00000726  0x00000483 call  0x000040d9 
- 00000727  0x00000484 beq  0x00000030 , 0x000002dc 
- 00000728  0x00000485 beq  0x00000031 , 0x00000301 
- 00000729  0x00000486 call  0x000040d1 
- 00000730  0x00000487 nop  0x000003e8 
- 00000731  0x00000488 branch  0x000002d6 
- 00000732  0x0000048b call  0x0000039f 
- 00000733  0x0000048c fetch  0x00000001 , 0x000046de 
- 00000734  0x0000048d beq  0x0000005a , 0x000002e2 
- 00000735  0x0000048e beq  0x00000054 , 0x000002ef 
- 00000736  0x0000048f beq  0x000000d8 , 0x000002f2 
- 00000737  0x00000490 branch  0x000040e0 
- 00000738  0x00000493 jam  0x00000007 , 0x000046e0 
- 00000739  0x00000494 setarg  0x00008006 
- 00000740  0x00000495 call  0x00006413 
- 00000741  0x00000496 call  0x00007ec1 
- 00000742  0x00000497 arg  0x00004b7a , 0x00000013 
- 00000743  0x00000499 ifetch  0x00000002 , 0x00000013 
- 00000744  0x0000049a arg  0x0000ffff , 0x00000002 
- 00000745  0x0000049b isub  0x00000002 , 0x0000003e 
- 00000746  0x0000049c rtn  0x00000005 
- 00000747  0x0000049d call  0x00006413 
- 00000748  0x0000049e nop  0x00002ee0 
- 00000749  0x0000049f increase  0x00000002 , 0x00000013 
- 00000750  0x000004a0 branch  0x000002e7 
- 00000751  0x000004a3 jam  0x00000002 , 0x000046e0 
- 00000752  0x000004a4 arg  0x00004b94 , 0x00000013 
- 00000753  0x000004a5 branch  0x000002e7 
- 00000754  0x000004a8 setarg  0x00000016 
- 00000755  0x000004a9 call  0x00006414 
- 00000756  0x000004aa sub  0x0000003f , 0x000000bd , 0x0000003e 
- 00000757  0x000004ab nbranch  0x000002d6 , 0x00000005 
- 00000758  0x000004ac setarg  0x00000019 
- 00000759  0x000004ad call  0x00006414 
- 00000760  0x000004ae sub  0x0000003f , 0x00000055 , 0x0000003e 
- 00000761  0x000004af nbranch  0x000002d6 , 0x00000005 
- 00000762  0x000004b0 setarg  0x0000001b 
- 00000763  0x000004b1 call  0x00006414 
- 00000764  0x000004b2 sub  0x0000003f , 0x0000001d , 0x0000003e 
- 00000765  0x000004b3 nbranch  0x000002d6 , 0x00000005 
- 00000766  0x000004b4 jam  0x00000008 , 0x000046e0 
- 00000767  0x000004b5 arg  0x00004ba2 , 0x00000013 
- 00000768  0x000004b6 branch  0x000002e7 
- 00000769  0x000004b9 call  0x0000039f 
- 00000770  0x000004ba fetch  0x00000001 , 0x000046de 
- 00000771  0x000004bb beq  0x00000070 , 0x000040e8 
- 00000772  0x000004bc jam  0x00000001 , 0x000046e0 
- 00000773  0x000004bd rtn 
- 00000774  0x000004c0 jam  0x00000080 , 0x000011c6 
- 00000775  0x000004c1 branch  0x00000770 
- 00000776  0x000004c5 fetcht  0x00000001 , 0x00004b45 
- 00000777  0x000004c6 branch  0x00006825 
- 00000778  0x000004c9 jam  0x00000040 , 0x00008086 
- 00000779  0x000004ca jam  0x00000000 , 0x00008087 
- 00000780  0x000004cb hfetch  0x00000001 , 0x00008081 
- 00000781  0x000004cc set0  0x00000000 , 0x0000003f 
- 00000782  0x000004cd set0  0x00000001 , 0x0000003f 
- 00000783  0x000004ce set1  0x00000003 , 0x0000003f 
- 00000784  0x000004cf set0  0x00000004 , 0x0000003f 
- 00000785  0x000004d0 hstore  0x00000001 , 0x00008081 
- 00000786  0x000004d1 setarg  0x00000000 
- 00000787  0x000004d2 store  0x00000004 , 0x000001f5 
- 00000788  0x000004d3 hfetch  0x00000001 , 0x0000807f 
- 00000789  0x000004d4 set0  0x00000000 , 0x0000003f 
- 00000790  0x000004d5 hstore  0x00000001 , 0x0000807f 
- 00000791  0x000004d6 rtn 
- 00000792  0x000004d9 call  0x00000364 
- 00000793  0x000004da call  0x00004423 
- 00000794  0x000004db fetch  0x00000002 , 0x00004778 
- 00000795  0x000004dc arg  0x0000aa55 , 0x00000002 
- 00000796  0x000004dd isub  0x00000002 , 0x0000003e 
- 00000797  0x000004de branch  0x00000355 , 0x00000005 
- 00000798  0x000004df storet  0x00000002 , 0x00004778 
- 00000799  0x000004e0 call  0x0000441c 
- 00000800  0x000004e1 fetch  0x00000001 , 0x000046e1 
- 00000801  0x000004e2 store  0x00000001 , 0x0000477a 
- 00000802  0x000004e3 fetch  0x00000004 , 0x00004b4c 
- 00000803  0x000004e4 store  0x00000004 , 0x0000477b 
- 00000804  0x000004e5 store  0x00000004 , 0x00004c6f 
- 00000805  0x000004e7 call  0x00000364 
- 00000806  0x000004e8 call  0x00000335 
- 00000807  0x000004e9 call  0x0000034c 
- 00000808  0x000004ea call  0x00000341 
- 00000809  0x000004eb call  0x00000338 
- 00000810  0x000004ee call  0x0000030a 
- 00000811  0x000004ef arg  0x00000007 , 0x00000002 
- 00000812  0x000004f0 arg  0x00004b70 , 0x00000011 
- 00000813  0x000004f1 arg  0x0000005f , 0x00000012 
- 00000814  0x000004f2 fetch  0x00000003 , 0x00004700 
- 00000815  0x000004f3 iadd  0x00000012 , 0x0000003f 
- 00000816  0x000004f4 call  0x00000341 
- 00000817  0x000004f5 call  0x00000338 
- 00000818  0x000004f6 call  0x0000035c 
- 00000819  0x000004f8 jam  0x00000076 , 0x00004212 
- 00000820  0x000004f9 branch  0x00003d36 
- 00000821  0x000004fc fetch  0x00000003 , 0x00004700 
- 00000822  0x000004fd store  0x00000003 , 0x00004232 
- 00000823  0x000004fe call  0x0000652a 
- 00000824  0x00000500 setarg  0x000186a0 
- 00000825  0x00000501 call  0x00002a8f 
- 00000826  0x00000502 call  0x0000650b 
- 00000827  0x00000503 setarg  0x000001fa 
- 00000828  0x00000504 hstore  0x00000002 , 0x0000808c 
- 00000829  0x00000505 setarg  0x00000005 
- 00000830  0x00000506 call  0x000064f3 
- 00000831  0x00000507 bbit1  0x00000000 , 0x00000338 
- 00000832  0x00000508 rtn 
- 00000833  0x0000050b copy  0x0000003f , 0x00000013 
- 00000834  0x0000050c copy  0x00000011 , 0x0000003f 
- 00000835  0x0000050d increase  0xfffffffc , 0x0000003f 
- 00000836  0x0000050e copy  0x0000003f , 0x00000012 
- 00000837  0x0000050f ifetch  0x00000004 , 0x00000012 
- 00000838  0x00000510 store  0x00000004 , 0x00004b47 
- 00000839  0x00000511 copy  0x00000013 , 0x0000003f 
- 00000840  0x00000512 call  0x00006552 
- 00000841  0x00000513 fetch  0x00000004 , 0x00004b47 
- 00000842  0x00000514 istore  0x00000004 , 0x00000012 
- 00000843  0x00000515 rtn 
- 00000844  0x00000518 setarg  0x0000477f 
- 00000845  0x00000519 arg  0x00004720 , 0x00000002 
- 00000846  0x0000051a isub  0x00000002 , 0x00000002 
- 00000847  0x0000051b fetch  0x00000003 , 0x00004700 
- 00000848  0x0000051c arg  0x00004720 , 0x00000011 
- 00000849  0x0000051d rtn 
- 00000850  0x00000520 call  0x00000364 
- 00000851  0x00000521 call  0x0000034c 
- 00000852  0x00000522 branch  0x00006562 
- 00000853  0x00000525 call  0x00000352 
- 00000854  0x00000526 call  0x0000036e 
- 00000855  0x00000529 call  0x00004364 
- 00000856  0x0000052a call  0x0000431a 
- 00000857  0x0000052b fetch  0x00000004 , 0x0000477b 
- 00000858  0x0000052c store  0x00000004 , 0x00004c6f 
- 00000859  0x0000052d rtn 
- 00000860  0x00000530 jam  0x000000b9 , 0x00000aa2 
- 00000861  0x00000532 call  0x0000030a 
- 00000862  0x00000533 call  0x000069ac 
- 00000863  0x00000534 call  0x0000650b 
- 00000864  0x00000535 arg  0x00004b47 , 0x00000011 
- 00000865  0x00000536 fetcht  0x00000001 , 0x00000aa2 
- 00000866  0x00000537 call  0x00006556 
- 00000867  0x00000538 branch  0x000069ac 
- 00000868  0x0000053b jam  0x000000ab , 0x00000aa2 
- 00000869  0x0000053c branch  0x0000035d 
- 00000870  0x0000053f jam  0x0000005a , 0x00004b75 
- 00000871  0x00000540 rtn 
- 00000872  0x00000542 jam  0x00000001 , 0x00004b69 
- 00000873  0x00000543 jam  0x00000001 , 0x00004b68 
- 00000874  0x00000545 jam  0x000000ff , 0x00004b75 
- 00000875  0x00000546 fetch  0x00000006 , 0x00004d8c 
- 00000876  0x00000547 store  0x00000006 , 0x000044a0 
- 00000877  0x00000548 rtn 
- 00000878  0x0000054c call  0x00000364 
- 00000879  0x0000054d arg  0x00000007 , 0x00000002 
- 00000880  0x0000054e arg  0x00004b70 , 0x00000011 
- 00000881  0x0000054f arg  0x0000005f , 0x00000012 
- 00000882  0x00000550 fetch  0x00000003 , 0x00004700 
- 00000883  0x00000551 iadd  0x00000012 , 0x0000003f 
- 00000884  0x00000552 branch  0x00006562 
- 00000885  0x00000573 fetch  0x00000001 , 0x00004241 
- 00000886  0x00000574 bbit1  0x00000002 , 0x000001f1 
- 00000887  0x00000576 fetch  0x00000004 , 0x00004b4c 
- 00000888  0x00000577 store  0x00000004 , 0x00004c6f 
- 00000889  0x00000578 call  0x00000325 
- 00000890  0x0000057a jam  0x00000041 , 0x000011c6 
- 00000891  0x0000057b branch  0x00000770 
- 00000892  0x0000057e call  0x00004401 
- 00000893  0x0000057f fetch  0x00000002 , 0x0000469f 
- 00000894  0x00000580 rtn  0x00000034 
- 00000895  0x00000582 jam  0x00000001 , 0x00004d87 
- 00000896  0x00000583 setarg  0x00000000 
- 00000897  0x00000584 store  0x00000002 , 0x00004d88 
- 00000898  0x00000585 rtn 
- 00000899  0x00000588 arg  0x00001800 , 0x00000006 
- 00000900  0x00000589 arg  0x0000480a , 0x00000005 
- 00000901  0x0000058a call  0x0000038b 
- 00000902  0x0000058b arg  0x00001900 , 0x00000006 
- 00000903  0x0000058c call  0x0000038b 
- 00000904  0x0000058d arg  0x00001a00 , 0x00000006 
- 00000905  0x0000058e call  0x0000038b 
- 00000906  0x0000058f arg  0x00001b00 , 0x00000006 
- 00000907  0x00000591 arg  0x0000001b , 0x00000039 
- 00000908  0x00000592 branch  0x00007f01 
- 00000909  0x00000595 arg  0x0000480a , 0x00000006 
- 00000910  0x00000596 arg  0x00001800 , 0x00000005 
- 00000911  0x00000597 call  0x0000038b 
- 00000912  0x00000598 arg  0x00001900 , 0x00000005 
- 00000913  0x00000599 call  0x0000038b 
- 00000914  0x0000059a arg  0x00001a00 , 0x00000005 
- 00000915  0x0000059b call  0x0000038b 
- 00000916  0x0000059c arg  0x00001b00 , 0x00000005 
- 00000917  0x0000059d branch  0x0000038b 
- 00000918  0x000005a1 jam  0x00000000 , 0x00004172 
- 00000919  0x000005a2 jam  0x0000001e , 0x00004b43 
- 00000920  0x000005a3 rtn 
- 00000921  0x000005a6 fetch  0x00000001 , 0x00004b42 
- 00000922  0x000005a7 rtnne  0x00000001 
- 00000923  0x000005a8 setarg  0x00000000 
- 00000924  0x000005a9 store  0x00000001 , 0x00004b42 
- 00000925  0x000005aa store  0x00000004 , 0x0000469b 
- 00000926  0x000005ab branch  0x000003d8 
- 00000927  0x000005ae call  0x00000333 
- 00000928  0x000005af arg  0x00004bb2 , 0x00000013 
- 00000929  0x000005b0 call  0x000002e7 
- 00000930  0x000005b2 fetch  0x00000001 , 0x0000477a 
- 00000931  0x000005b3 bne  0x000000ff , 0x00000512 
- 00000932  0x000005b5 fetch  0x00000001 , 0x000046e1 
- 00000933  0x000005b6 store  0x00000001 , 0x0000477a 
- 00000934  0x000005b7 branch  0x00000512 
- 00000935  0x000005ba call  0x00005892 
- 00000936  0x000005bb nrtn  0x00000034 
- 00000937  0x000005bc fetch  0x00000001 , 0x00004b75 
- 00000938  0x000005bd beq  0x000000ff , 0x000003ae 
- 00000939  0x000005be fetch  0x00000001 , 0x000046c5 
- 00000940  0x000005bf and  0x0000003f , 0x00000003 , 0x0000003f 
- 00000941  0x000005c0 rtnne  0x00000003 
- 00000942  0x000005c2 fetch  0x00000001 , 0x0000479e 
- 00000943  0x000005c3 call  0x000003d6 , 0x00000034 
- 00000944  0x000005c4 fetch  0x00000004 , 0x000046d3 
- 00000945  0x000005c5 bbit1  0x00000005 , 0x00004179 
- 00000946  0x000005c6 call  0x00003f97 
- 00000947  0x000005c7 nrtn  0x00000028 
- 00000948  0x000005c8 call  0x00000396 
- 00000949  0x000005c9 call  0x00000399 
- 00000950  0x000005ca call  0x000003d1 
- 00000951  0x000005cc arg  0x0000469a , 0x00000011 
- 00000952  0x000005cd call  0x00007e3d 
- 00000953  0x000005ce call  0x000003c0 , 0x00000028 
- 00000954  0x000005d0 rtn 
- 00000955  0x000005d3 jam  0x00000007 , 0x000047a2 
- 00000956  0x000005d4 jam  0x00000004 , 0x000047a3 
- 00000957  0x000005d5 setarg  0x000047a2 
- 00000958  0x000005d6 store  0x00000002 , 0x00004218 
- 00000959  0x000005d7 branch  0x00007e38 
- 00000960  0x000005da fetch  0x00000001 , 0x000047c3 
- 00000961  0x000005db increase  0x00000001 , 0x0000003f 
- 00000962  0x000005dc store  0x00000001 , 0x000047c3 
- 00000963  0x000005dd rtn 
- 00000964  0x000005e0 arg  0x0000469a , 0x00000011 
- 00000965  0x000005e1 call  0x00007e54 
- 00000966  0x000005e2 branch  0x000003c8 , 0x00000028 
- 00000967  0x000005e3 rtn 
- 00000968  0x000005e6 call  0x00005652 
- 00000969  0x000005e7 fetch  0x00000001 , 0x000047c3 
- 00000970  0x000005e8 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00000971  0x000005e9 ncall  0x00005650 , 0x00000002 
- 00000972  0x000005ea fetch  0x00000001 , 0x000047c3 
- 00000973  0x000005eb rtn  0x00000034 
- 00000974  0x000005ec increase  0xffffffff , 0x0000003f 
- 00000975  0x000005ed store  0x00000001 , 0x000047c3 
- 00000976  0x000005ee branch  0x00003f90 
- 00000977  0x000005f2 fetch  0x00000002 , 0x0000469f 
- 00000978  0x000005f3 rtn  0x00000034 
- 00000979  0x000005f4 jam  0x00000001 , 0x00004806 
- 00000980  0x000005f5 jam  0x0000000a , 0x00004807 
- 00000981  0x000005f6 rtn 
- 00000982  0x000005f9 jam  0x00000001 , 0x0000479e 
- 00000983  0x000005fa call  0x00005814 
- 00000984  0x000005fc jam  0x00000001 , 0x00004afe 
- 00000985  0x000005fd branch  0x000002d4 
- 00000986  0x00000600 rtn  0x0000002e 
- 00000987  0x00000601 fetch  0x00000001 , 0x000041e2 
- 00000988  0x00000602 rtn  0x00000034 
- 00000989  0x00000603 call  0x00005271 
- 00000990  0x00000604 nrtn  0x00000034 
- 00000991  0x00000605 fetch  0x00000001 , 0x0000479e 
- 00000992  0x00000606 call  0x000003d6 , 0x00000034 
- 00000993  0x00000607 fetch  0x00000004 , 0x000046d3 
- 00000994  0x00000608 bbit1  0x00000005 , 0x00003f8a 
- 00000995  0x00000609 bbit1  0x00000009 , 0x00003f8a 
- 00000996  0x0000060a call  0x00003f97 
- 00000997  0x0000060b nrtn  0x00000028 
- 00000998  0x0000060c call  0x00000396 
- 00000999  0x0000060d call  0x00000399 
- 00001000  0x0000060e call  0x000003d1 
- 00001001  0x0000060f fetch  0x00000001 , 0x00004b03 
- 00001002  0x00000610 beq  0x00000001 , 0x000003ee 
- 00001003  0x00000611 fetch  0x00000001 , 0x00004b0a 
- 00001004  0x00000612 rtn  0x00000034 
- 00001005  0x00000613 branch  0x00003f81 
- 00001006  0x00000616 fetch  0x00000001 , 0x0000469a 
- 00001007  0x00000617 store  0x00000001 , 0x00004b04 
- 00001008  0x00000618 fetch  0x00000001 , 0x0000469b 
- 00001009  0x00000619 istore  0x00000001 , 0x00000005 
- 00001010  0x0000061a fetch  0x00000001 , 0x0000469d 
- 00001011  0x0000061b istore  0x00000001 , 0x00000005 
- 00001012  0x0000061c fetch  0x00000002 , 0x0000469f 
- 00001013  0x0000061d istore  0x00000002 , 0x00000005 
- 00001014  0x0000061f arg  0x00000007 , 0x00000011 
- 00001015  0x00000620 call  0x00004d63 
- 00001016  0x00000621 fetch  0x00000002 , 0x0000424e 
- 00001017  0x00000622 istore  0x00000002 , 0x00000005 
- 00001018  0x00000623 setarg  0x000002a1 
- 00001019  0x00000624 istore  0x00000002 , 0x00000005 
- 00001020  0x00000625 fetch  0x00000005 , 0x00004b04 
- 00001021  0x00000626 istore  0x00000005 , 0x00000005 
- 00001022  0x00000627 rtn 
- 00001023  0x0000062b call  0x00007e34 
- 00001024  0x0000062c call  0x00000402 
- 00001025  0x0000062d branch  0x00003ee0 
- 00001026  0x00000630 fetcht  0x00000001 , 0x000046e7 
- 00001027  0x00000631 call  0x0000056c 
- 00001028  0x00000632 fetcht  0x00000001 , 0x000046e7 
- 00001029  0x00000633 call  0x0000681d 
- 00001030  0x00000634 branch  0x00000410 , 0x00000001 
- 00001031  0x00000635 call  0x00000567 
- 00001032  0x00000637 fetch  0x00000001 , 0x000046b6 
- 00001033  0x00000638 rtneq  0x00000000 
- 00001034  0x00000639 jam  0x00000000 , 0x000046b6 
- 00001035  0x0000063a fetch  0x00000001 , 0x0000477a 
- 00001036  0x0000063b increase  0x00000001 , 0x0000003f 
- 00001037  0x0000063c and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001038  0x0000063d store  0x00000001 , 0x0000477a 
- 00001039  0x00000641 branch  0x00003d7e 
- 00001040  0x00000643 call  0x00000567 
- 00001041  0x00000644 branch  0x00003d62 
- 00001042  0x00000647 copy  0x00000013 , 0x0000003f 
- 00001043  0x00000648 beq  0x00000014 , 0x00000423 
- 00001044  0x00000649 beq  0x00000015 , 0x00000437 
- 00001045  0x0000064a beq  0x00000029 , 0x0000043a 
- 00001046  0x0000064b beq  0x00000032 , 0x0000043c 
- 00001047  0x0000064c beq  0x00000040 , 0x0000043e 
- 00001048  0x0000064d beq  0x00000004 , 0x00000440 
- 00001049  0x0000064e beq  0x00000013 , 0x00000440 
- 00001050  0x0000064f beq  0x00000019 , 0x000033df 
- 00001051  0x00000650 beq  0x00000021 , 0x00000444 
- 00001052  0x00000651 beq  0x00000001 , 0x00000446 
- 00001053  0x00000652 beq  0x00000002 , 0x00000452 
- 00001054  0x00000653 beq  0x0000002b , 0x00000455 
- 00001055  0x00000654 beq  0x00000039 , 0x00000457 
- 00001056  0x00000655 beq  0x0000003a , 0x0000045b 
- 00001057  0x00000656 beq  0x0000003c , 0x0000045e 
- 00001058  0x00000657 branch  0x0000417d 
- 00001059  0x0000065a call  0x000003d8 
- 00001060  0x0000065b call  0x000041c3 
- 00001061  0x0000065c setarg  0x00000000 
- 00001062  0x0000065d store  0x00000003 , 0x00004b68 
- 00001063  0x0000065e fetch  0x00000006 , 0x00004b4c 
- 00001064  0x0000065f fetcht  0x00000006 , 0x00004722 
- 00001065  0x00000660 isub  0x00000002 , 0x0000003e 
- 00001066  0x00000661 ncall  0x00000366 , 0x00000005 
- 00001067  0x00000662 call  0x00003410 
- 00001068  0x00000663 jam  0x00000001 , 0x00004b76 
- 00001069  0x00000664 fetch  0x00000001 , 0x000047a1 
- 00001070  0x00000665 nbranch  0x00000430 , 0x00000034 
- 00001071  0x00000666 jam  0x00000014 , 0x00004b6d 
- 00001072  0x00000668 jam  0x00000000 , 0x00004b77 
- 00001073  0x00000669 jam  0x00000000 , 0x00004b6c 
- 00001074  0x0000066a jam  0x00000001 , 0x00004b6f 
- 00001075  0x0000066b jam  0x00000000 , 0x00004b78 
- 00001076  0x0000066c jam  0x00000000 , 0x00004b6b 
- 00001077  0x0000066d call  0x000001f3 
- 00001078  0x0000066e branch  0x000003bb 
- 00001079  0x00000672 call  0x00000464 
- 00001080  0x00000673 jam  0x000000a2 , 0x000011c6 
- 00001081  0x00000674 branch  0x00000770 
- 00001082  0x00000678 jam  0x00000012 , 0x00000a99 
- 00001083  0x00000679 branch  0x00007d8f 
- 00001084  0x0000067c jam  0x000000b3 , 0x000011c6 
- 00001085  0x0000067d branch  0x00000770 
- 00001086  0x00000680 jam  0x000000a1 , 0x000011c6 
- 00001087  0x00000681 branch  0x00000770 
- 00001088  0x00000686 jam  0x000000a3 , 0x000011c6 
- 00001089  0x00000687 branch  0x00000770 
- 00001090  0x0000068a jam  0x00000070 , 0x000011c6 
- 00001091  0x0000068b branch  0x00000770 
- 00001092  0x0000068e jam  0x000000b1 , 0x000011c6 
- 00001093  0x0000068f branch  0x00000770 
- 00001094  0x00000692 call  0x00000499 
- 00001095  0x00000693 call  0x000003d8 
- 00001096  0x00000694 setarg  0x00000000 
- 00001097  0x00000695 store  0x00000003 , 0x00004b68 
- 00001098  0x00000696 jam  0x00000001 , 0x00004b76 
- 00001099  0x00000697 jam  0x00000000 , 0x00004b77 
- 00001100  0x00000698 jam  0x00000000 , 0x00004b78 
- 00001101  0x00000699 jam  0x00000000 , 0x00004b6b 
- 00001102  0x0000069a call  0x000001f3 
- 00001103  0x0000069b call  0x00000503 
- 00001104  0x0000069c jam  0x00000000 , 0x00004809 
- 00001105  0x0000069d branch  0x000042ca 
- 00001106  0x000006a1 call  0x00000464 
- 00001107  0x000006a2 jam  0x000000b4 , 0x000011c6 
- 00001108  0x000006a3 branch  0x00000770 
- 00001109  0x000006a6 jam  0x000000b2 , 0x000011c6 
- 00001110  0x000006a7 branch  0x00000770 
- 00001111  0x000006aa call  0x0000037f 
- 00001112  0x000006ab call  0x000003d8 
- 00001113  0x000006ac jam  0x00000050 , 0x000011c6 
- 00001114  0x000006ad branch  0x00000770 
- 00001115  0x000006b0 call  0x00000464 
- 00001116  0x000006b1 jam  0x00000051 , 0x000011c6 
- 00001117  0x000006b2 branch  0x00000770 
- 00001118  0x000006b6 call  0x000003d8 
- 00001119  0x000006b7 jam  0x00000052 , 0x000011c6 
- 00001120  0x000006b8 branch  0x00000770 
- 00001121  0x000006bb call  0x00000464 
- 00001122  0x000006bc jam  0x000000a0 , 0x000011c6 
- 00001123  0x000006bd branch  0x00000770 
- 00001124  0x000006c0 fetch  0x00000001 , 0x00004afe 
- 00001125  0x000006c1 rtn  0x00000034 
- 00001126  0x000006c2 jam  0x00000000 , 0x00004afe 
- 00001127  0x000006c4 call  0x000002d4 
- 00001128  0x000006c5 setarg  0x00000006 
- 00001129  0x000006c6 call  0x00006414 
- 00001130  0x000006c7 or  0x0000003f , 0x00000008 , 0x0000003f 
- 00001131  0x000006c8 lshift8  0x0000003f , 0x0000003f 
- 00001132  0x000006c9 add  0x0000003f , 0x00000006 , 0x0000003f 
- 00001133  0x000006ca branch  0x00006413 
- 00001134  0x000006ce call  0x00000482 
- 00001135  0x000006cf call  0x00000506 
- 00001136  0x000006d0 call  0x000004d2 
- 00001137  0x000006d1 call  0x000004fc 
- 00001138  0x000006d2 call  0x000004d7 
- 00001139  0x000006d3 call  0x00004234 
- 00001140  0x000006d5 call  0x000004a0 
- 00001141  0x000006d6 call  0x000004a7 
- 00001142  0x000006d7 call  0x000004bb 
- 00001143  0x000006d8 call  0x000004c1 
- 00001144  0x000006d9 call  0x000004c4 
- 00001145  0x000006da call  0x000004cc 
- 00001146  0x000006db call  0x000004b3 
- 00001147  0x000006dc call  0x00004231 
- 00001148  0x000006dd call  0x000004b6 
- 00001149  0x000006de call  0x0000047f 
- 00001150  0x000006df branch  0x0000423a 
- 00001151  0x000006e2 arg  0x00004b77 , 0x00000013 
- 00001152  0x000006e3 arg  0x000002c3 , 0x00000012 
- 00001153  0x000006e4 branch  0x0000336d 
- 00001154  0x000006f6 fetch  0x00000001 , 0x00004b68 
- 00001155  0x000006f7 rtn  0x00000034 
- 00001156  0x000006f8 arg  0x00004b69 , 0x00000013 
- 00001157  0x000006f9 arg  0x00000487 , 0x00000012 
- 00001158  0x000006fa branch  0x0000336d 
- 00001159  0x000006fc jam  0x00000001 , 0x00004b69 
- 00001160  0x000006fd fetch  0x00000001 , 0x00004b6a 
- 00001161  0x000006fe increase  0x00000001 , 0x0000003f 
- 00001162  0x000006ff and_into  0x00000001 , 0x0000003f 
- 00001163  0x00000700 store  0x00000001 , 0x00004b6a 
- 00001164  0x00000701 beq  0x00000000 , 0x0000049b 
- 00001165  0x00000703 fetch  0x00000006 , 0x00004b62 
- 00001166  0x00000704 store  0x00000006 , 0x000044a0 
- 00001167  0x00000705 call  0x00000491 
- 00001168  0x00000706 branch  0x00007df4 
- 00001169  0x00000709 jam  0x0000001f , 0x0000436f 
- 00001170  0x0000070a jam  0x0000001f , 0x0000438f 
- 00001171  0x0000070b call  0x00000499 
- 00001172  0x0000070c arg  0x00004b10 , 0x00000006 
- 00001173  0x0000070e arg  0x0000437b , 0x00000005 
- 00001174  0x0000070f arg  0x00000013 , 0x00000039 
- 00001175  0x00000710 call  0x00007f01 
- 00001176  0x00000711 branch  0x000057b8 
- 00001177  0x00000714 arg  0x00000007 , 0x00000007 
- 00001178  0x00000715 branch  0x000043ce 
- 00001179  0x00000719 jam  0x00000000 , 0x0000436f 
- 00001180  0x0000071a jam  0x00000000 , 0x0000438f 
- 00001181  0x0000071b arg  0x00000007 , 0x00000007 
- 00001182  0x0000071c call  0x000043d2 
- 00001183  0x0000071d branch  0x0000036a 
- 00001184  0x00000721 arg  0x00004b44 , 0x00000013 
- 00001185  0x00000722 arg  0x000004a3 , 0x00000012 
- 00001186  0x00000723 branch  0x0000336d 
- 00001187  0x00000725 setarg  0x00124f80 
- 00001188  0x00000726 store  0x00000003 , 0x00004c76 
- 00001189  0x00000728 jam  0x00000001 , 0x00004b42 
- 00001190  0x00000729 rtn 
- 00001191  0x0000072c arg  0x00004d93 , 0x00000013 
- 00001192  0x0000072d arg  0x000004aa , 0x00000012 
- 00001193  0x0000072e branch  0x00003374 
- 00001194  0x00000730 jam  0x00000001 , 0x00004d92 
- 00001195  0x00000731 fetch  0x00000001 , 0x00004b68 
- 00001196  0x00000732 nbranch  0x000004ae , 0x00000034 
- 00001197  0x00000736 rtn 
- 00001198  0x00000739 jam  0x00000001 , 0x00004d93 
- 00001199  0x0000073a fetch  0x00000001 , 0x00004b2f 
- 00001200  0x0000073b nrtn  0x00000034 
- 00001201  0x0000073c jam  0x00000000 , 0x00004d93 
- 00001202  0x0000073e rtn 
- 00001203  0x00000742 arg  0x00004809 , 0x00000013 
- 00001204  0x00000743 arg  0x0000637a , 0x00000012 
- 00001205  0x00000744 branch  0x0000336d 
- 00001206  0x00000747 arg  0x00004b09 , 0x00000013 
- 00001207  0x00000748 arg  0x000004b9 , 0x00000012 
- 00001208  0x00000749 branch  0x0000336d 
- 00001209  0x0000074b jam  0x00000001 , 0x00004b0a 
- 00001210  0x0000074c rtn 
- 00001211  0x00000750 arg  0x000046ae , 0x00000013 
- 00001212  0x00000751 arg  0x000004be , 0x00000012 
- 00001213  0x00000752 branch  0x00003374 
- 00001214  0x00000754 jam  0x00000001 , 0x00004b78 
- 00001215  0x00000755 call  0x000004eb 
- 00001216  0x00000756 branch  0x000004e0 
- 00001217  0x00000759 arg  0x000046c6 , 0x00000013 
- 00001218  0x0000075a arg  0x00003d60 , 0x00000012 
- 00001219  0x0000075b branch  0x0000336d 
- 00001220  0x0000075e fetch  0x00000001 , 0x00004b6f 
- 00001221  0x0000075f rtn  0x00000034 
- 00001222  0x00000760 arg  0x00004b6d , 0x00000013 
- 00001223  0x00000761 arg  0x000004c9 , 0x00000012 
- 00001224  0x00000762 branch  0x0000336d 
- 00001225  0x00000764 fetch  0x00000001 , 0x00004b6e 
- 00001226  0x00000765 nrtn  0x00000034 
- 00001227  0x00000766 branch  0x00005bf5 
- 00001228  0x00000769 arg  0x00004b43 , 0x00000013 
- 00001229  0x0000076a arg  0x000004cf , 0x00000012 
- 00001230  0x0000076b branch  0x0000336d 
- 00001231  0x0000076d fetch  0x00000001 , 0x000047c5 
- 00001232  0x0000076e store  0x00000001 , 0x00004172 
- 00001233  0x0000076f branch  0x000004a5 
- 00001234  0x00000772 arg  0x00004807 , 0x00000013 
- 00001235  0x00000773 arg  0x000004d5 , 0x00000012 
- 00001236  0x00000774 branch  0x0000336d 
- 00001237  0x00000776 jam  0x00000000 , 0x00004806 
- 00001238  0x00000777 rtn 
- 00001239  0x0000077b fetch  0x00000001 , 0x000046b6 
- 00001240  0x0000077c branch  0x000004e3 , 0x00000034 
- 00001241  0x0000077d call  0x00000546 
- 00001242  0x0000077e beq  0x00000007 , 0x000004e3 
- 00001243  0x00000780 fetch  0x00000001 , 0x00004685 
- 00001244  0x00000781 store  0x00000001 , 0x000046da 
- 00001245  0x00000782 fetch  0x00000001 , 0x000046db 
- 00001246  0x00000783 rtneq  0x00000001 
- 00001247  0x00000784 jam  0x00000001 , 0x000046db 
- 00001248  0x00000786 arg  0x00000009 , 0x00000007 
- 00001249  0x00000787 call  0x000043d2 
- 00001250  0x00000788 branch  0x000043ca 
- 00001251  0x0000078a jam  0x00000028 , 0x000047a0 
- 00001252  0x0000078b call  0x000004e6 
- 00001253  0x0000078c branch  0x000043b0 
- 00001254  0x0000078f arg  0x000046da , 0x00000013 
- 00001255  0x00000790 arg  0x000004e9 , 0x00000012 
- 00001256  0x00000791 branch  0x0000336d 
- 00001257  0x00000793 fetch  0x00000001 , 0x00004b68 
- 00001258  0x00000794 nbranch  0x000004f9 , 0x00000034 
- 00001259  0x00000796 isolate1  0x00000026 , 0x00000000 
- 00001260  0x00000797 call  0x000004f7 , 0x00000001 
- 00001261  0x00000798 fetch  0x00000001 , 0x00004b76 
- 00001262  0x00000799 sub  0x0000003f , 0x000000ff , 0x0000003e 
- 00001263  0x0000079a call  0x000004f7 , 0x00000005 
- 00001264  0x0000079c call  0x00000491 
- 00001265  0x0000079d fetch  0x00000002 , 0x00004682 
- 00001266  0x0000079e isolate1  0x00000007 , 0x0000003f 
- 00001267  0x0000079f call  0x00004392 , 0x00000001 
- 00001268  0x000007a0 arg  0x00000009 , 0x00000007 
- 00001269  0x000007a1 call  0x000043ce 
- 00001270  0x000007a2 branch  0x000043b8 
- 00001271  0x000007a5 jam  0x00000001 , 0x00004b6c 
- 00001272  0x000007a6 rtn 
- 00001273  0x000007a9 fetch  0x00000002 , 0x00004687 
- 00001274  0x000007aa store  0x00000002 , 0x000046ac 
- 00001275  0x000007ab rtn 
- 00001276  0x000007ae fetch  0x00000001 , 0x0000479f 
- 00001277  0x000007af rtn  0x00000034 
- 00001278  0x000007b0 arg  0x000047a0 , 0x00000013 
- 00001279  0x000007b1 arg  0x00000501 , 0x00000012 
- 00001280  0x000007b2 branch  0x0000336d 
- 00001281  0x000007b4 jam  0x00000000 , 0x0000479f 
- 00001282  0x000007b5 branch  0x0000340a 
- 00001283  0x000007b8 jam  0x00000000 , 0x0000479f 
- 00001284  0x000007b9 jam  0x00000000 , 0x000047a0 
- 00001285  0x000007ba rtn 
- 00001286  0x00000829 fetch  0x00000001 , 0x000046ac 
- 00001287  0x0000082a rtn  0x00000034 
- 00001288  0x0000082b bbit1  0x00000002 , 0x0000050a 
- 00001289  0x0000082c branch  0x0000050e 
- 00001290  0x00000830 fetcht  0x00000001 , 0x00004b25 
- 00001291  0x00000831 call  0x0000680e 
- 00001292  0x00000832 fetcht  0x00000001 , 0x00004b25 
- 00001293  0x00000833 branch  0x00006825 
- 00001294  0x00000836 fetcht  0x00000001 , 0x00004b25 
- 00001295  0x00000837 call  0x0000680e 
- 00001296  0x00000838 fetcht  0x00000001 , 0x00004b25 
- 00001297  0x00000839 branch  0x00006829 
- 00001298  0x00000846 fetch  0x00000001 , 0x0000477a 
- 00001299  0x00000847 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00001300  0x00000848 call  0x0000051f , 0x00000005 
- 00001301  0x00000849 fetch  0x00000001 , 0x0000477a 
- 00001302  0x0000084a beq  0x00000000 , 0x00000521 
- 00001303  0x0000084b beq  0x00000003 , 0x00000527 
- 00001304  0x0000084d fetch  0x00000001 , 0x000046e0 
- 00001305  0x0000084f beq  0x00000006 , 0x0000052d 
- 00001306  0x00000850 beq  0x00000007 , 0x0000052d 
- 00001307  0x00000851 beq  0x00000002 , 0x00000533 
- 00001308  0x00000853 fetch  0x00000001 , 0x00004781 
- 00001309  0x00000855 store  0x00000001 , 0x000046b5 
- 00001310  0x00000856 branch  0x00003dc1 
- 00001311  0x00000858 jam  0x00000002 , 0x0000477a 
- 00001312  0x00000859 rtn 
- 00001313  0x0000085c fetch  0x00000001 , 0x000046e0 
- 00001314  0x0000085e beq  0x00000006 , 0x0000052f 
- 00001315  0x0000085f beq  0x00000007 , 0x0000052f 
- 00001316  0x00000860 beq  0x00000002 , 0x00000536 
- 00001317  0x00000862 fetch  0x00000001 , 0x0000477f 
- 00001318  0x00000863 branch  0x0000051d 
- 00001319  0x00000866 fetch  0x00000001 , 0x000046e0 
- 00001320  0x00000868 beq  0x00000006 , 0x00000531 
- 00001321  0x00000869 beq  0x00000007 , 0x00000531 
- 00001322  0x0000086a beq  0x00000002 , 0x00000538 
- 00001323  0x0000086c fetch  0x00000001 , 0x00004782 
- 00001324  0x0000086d branch  0x0000051d 
- 00001325  0x00000870 fetch  0x00000001 , 0x00004b38 
- 00001326  0x00000871 branch  0x0000051d 
- 00001327  0x00000873 fetch  0x00000001 , 0x00004b36 
- 00001328  0x00000874 branch  0x0000051d 
- 00001329  0x00000876 fetch  0x00000001 , 0x00004b39 
- 00001330  0x00000877 branch  0x0000051d 
- 00001331  0x0000087a fetch  0x00000001 , 0x00004781 
- 00001332  0x0000087c increase  0x00000002 , 0x0000003f 
- 00001333  0x0000087d branch  0x0000051d 
- 00001334  0x0000087f fetch  0x00000001 , 0x0000477f 
- 00001335  0x00000880 branch  0x00000534 
- 00001336  0x00000882 fetch  0x00000001 , 0x00004782 
- 00001337  0x00000883 branch  0x00000534 
- 00001338  0x00000887 disable  0x00000028 
- 00001339  0x00000888 setarg  0x00000000 
- 00001340  0x00000889 store  0x00000006 , 0x0000469b 
- 00001341  0x0000088a call  0x00000572 
- 00001342  0x0000088b call  0x00004079 
- 00001343  0x0000088c call  0x0000407e 
- 00001344  0x0000088d call  0x00000544 
- 00001345  0x0000088e nbranch  0x0000079a , 0x00000028 
- 00001346  0x0000088f call  0x00000791 
- 00001347  0x00000890 branch  0x00003fa0 
- 00001348  0x00000893 call  0x00000546 
- 00001349  0x00000894 branch  0x0000409a 
- 00001350  0x00000897 arg  0x00000000 , 0x00000011 
- 00001351  0x00000898 call  0x0000054c 
- 00001352  0x0000089b call  0x0000054a 
- 00001353  0x0000089c branch  0x0000408e 
- 00001354  0x000008a0 call  0x0000055c 
- 00001355  0x000008a1 branch  0x00000562 
- 00001356  0x000008a4 fetcht  0x00000001 , 0x000046e2 
- 00001357  0x000008a5 call  0x00000567 
- 00001358  0x000008a6 fetcht  0x00000001 , 0x000046e2 
- 00001359  0x000008a7 call  0x0000681d 
- 00001360  0x000008a8 setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00001361  0x000008ab fetcht  0x00000001 , 0x000046e3 
- 00001362  0x000008ac call  0x00000567 
- 00001363  0x000008ad fetcht  0x00000001 , 0x000046e3 
- 00001364  0x000008ae call  0x0000681d 
- 00001365  0x000008af setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00001366  0x000008b2 fetcht  0x00000001 , 0x000046e4 
- 00001367  0x000008b3 call  0x00000567 
- 00001368  0x000008b4 fetcht  0x00000001 , 0x000046e4 
- 00001369  0x000008b5 call  0x0000681d 
- 00001370  0x000008b6 setflag  0x00000001 , 0x00000002 , 0x00000011 
- 00001371  0x000008b7 rtn 
- 00001372  0x000008ba fetcht  0x00000001 , 0x000046e5 
- 00001373  0x000008bb call  0x0000056c 
- 00001374  0x000008bc fetcht  0x00000001 , 0x000046e5 
- 00001375  0x000008bd call  0x0000681d 
- 00001376  0x000008be nsetflag  0x00000001 , 0x00000003 , 0x00000011 
- 00001377  0x000008bf branch  0x00000567 
- 00001378  0x000008c1 fetcht  0x00000001 , 0x000046e6 
- 00001379  0x000008c2 call  0x0000056c 
- 00001380  0x000008c3 fetcht  0x00000001 , 0x000046e6 
- 00001381  0x000008c4 call  0x0000681d 
- 00001382  0x000008c5 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
- 00001383  0x000008c7 set1  0x00000007 , 0x00000002 
- 00001384  0x000008c8 arg  0x00008078 , 0x00000005 
- 00001385  0x000008c9 call  0x00006830 
- 00001386  0x000008ca set0  0x00000007 , 0x00000002 
- 00001387  0x000008cb branch  0x00000570 
- 00001388  0x000008ce set0  0x00000007 , 0x00000002 
- 00001389  0x000008cf arg  0x00008078 , 0x00000005 
- 00001390  0x000008d0 call  0x00006830 
- 00001391  0x000008d1 set1  0x00000007 , 0x00000002 
- 00001392  0x000008d3 arg  0x0000807c , 0x00000005 
- 00001393  0x000008d4 branch  0x0000680a 
- 00001394  0x000008d8 fetch  0x00000001 , 0x000046e0 
- 00001395  0x000008da beq  0x00000008 , 0x00000577 
- 00001396  0x000008dc call  0x00003fc0 
- 00001397  0x000008dd disable  0x00000028 
- 00001398  0x000008de branch  0x00003fe7 
- 00001399  0x000008e4 call  0x00003fc0 
- 00001400  0x000008e5 disable  0x00000028 
- 00001401  0x000008ea setarg  0x00000002 
- 00001402  0x000008eb call  0x00006414 
- 00001403  0x000008ec rtnbit0  0x00000007 
- 00001404  0x000008ed setarg  0x00000008 
- 00001405  0x000008ee call  0x00006414 
- 00001406  0x000008ef branch  0x00003fed , 0x00000034 
- 00001407  0x000008f0 setarg  0x00000000 
- 00001408  0x000008f1 store  0x00000006 , 0x0000469b 
- 00001409  0x000008f2 rtn 
- 00001410  0x000008f5 call  0x00000503 
- 00001411  0x000008f6 isolate1  0x00000026 , 0x00000000 
- 00001412  0x000008f7 call  0x000001f3 , 0x00000001 
- 00001413  0x000008f8 jam  0x00000000 , 0x000046b4 
- 00001414  0x000008f9 fetch  0x00000001 , 0x00004b78 
- 00001415  0x000008fa call  0x00004386 , 0x00000034 
- 00001416  0x000008fb setarg  0x00000000 
- 00001417  0x000008fc store  0x00000002 , 0x000046b0 
- 00001418  0x000008fd branch  0x0000426f 
- 00001419  0x00000900 jam  0x00000000 , 0x00004091 
- 00001420  0x00000901 jam  0x00000030 , 0x000011c6 
- 00001421  0x00000902 branch  0x00000770 
- 00001422  0x00000906 call  0x000003d8 
- 00001423  0x00000907 branch  0x000042cb 
- 00001424  0x0000090a fetch  0x00000001 , 0x0000450f 
- 00001425  0x0000090b pincrease  0x00000001 
- 00001426  0x0000090c store  0x00000001 , 0x0000450f 
- 00001427  0x0000090d beq  0x0000000c , 0x00005395 
- 00001428  0x0000090e call  0x000055aa 
- 00001429  0x0000090f call  0x0000561e 
- 00001430  0x00000910 call  0x00000710 
- 00001431  0x00000911 branch  0x0000538f 
- 00001432  0x00000914 fetch  0x00000001 , 0x00000016 
- 00001433  0x00000915 increase  0x00000001 , 0x0000003f 
- 00001434  0x00000916 store  0x00000001 , 0x00000016 
- 00001435  0x00000917 rtnne  0x00000028 
- 00001436  0x00000918 jam  0x00000025 , 0x00000016 
- 00001437  0x00000919 rtn 
- 00001438  0x0000091c call  0x000029bb 
- 00001439  0x0000091d call  0x0000006c 
- 00001440  0x0000091e branch  0x000054a3 
- 00001441  0x00000921 jam  0x00000020 , 0x000011c6 
- 00001442  0x00000922 branch  0x00000770 
- 00001443  0x00000925 jam  0x00000021 , 0x000011c6 
- 00001444  0x00000926 branch  0x00000770 
- 00001445  0x00000929 fetch  0x00000001 , 0x00000456 
- 00001446  0x0000092a bbit1  0x00000005 , 0x000005c5 
- 00001447  0x0000092b call  0x00000702 
- 00001448  0x0000092c fetch  0x00000001 , 0x0000478e 
- 00001449  0x0000092d nbranch  0x000005af , 0x00000034 
- 00001450  0x0000092e fetch  0x00000001 , 0x0000043f 
- 00001451  0x0000092f bbit0  0x00000004 , 0x000005b3 
- 00001452  0x00000930 fetch  0x00000001 , 0x000002da 
- 00001453  0x00000931 branch  0x000005b3 , 0x00000034 
- 00001454  0x00000932 branch  0x00005664 
- 00001455  0x00000934 fetch  0x00000001 , 0x0000478e 
- 00001456  0x00000935 increase  0xffffffff , 0x0000003f 
- 00001457  0x00000936 store  0x00000001 , 0x0000478e 
- 00001458  0x00000937 branch  0x00005664 
- 00001459  0x00000939 fetch  0x00000001 , 0x000044c4 
- 00001460  0x0000093a bne  0x00000005 , 0x000005b6 
- 00001461  0x0000093b jam  0x00000003 , 0x0000478e 
- 00001462  0x0000093d call  0x00005892 
- 00001463  0x0000093e call  0x000003c4 , 0x00000034 
- 00001464  0x0000093f branch  0x00005622 
- 00001465  0x00000942 fetch  0x00000001 , 0x000046c5 
- 00001466  0x00000943 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001467  0x00000944 rtnne  0x00000003 
- 00001468  0x00000945 fetch  0x00000001 , 0x000047c3 
- 00001469  0x00000946 rtn  0x00000034 
- 00001470  0x00000947 fetch  0x00000001 , 0x000043dd 
- 00001471  0x00000948 rtn  0x00000034 
- 00001472  0x00000949 fetch  0x00000001 , 0x000043dc 
- 00001473  0x0000094a set1  0x00000004 , 0x0000003f 
- 00001474  0x0000094b store  0x00000001 , 0x000043dc 
- 00001475  0x0000094c call  0x00005650 
- 00001476  0x0000094d rtn 
- 00001477  0x00000951 call  0x000005b9 
- 00001478  0x00000953 branch  0x00000706 
- 00001479  0x00000956 fetch  0x00000001 , 0x000047a1 
- 00001480  0x00000957 rtn  0x00000034 
- 00001481  0x00000958 fetch  0x00000001 , 0x000046c5 
- 00001482  0x00000959 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001483  0x0000095a rtneq  0x00000003 
- 00001484  0x0000095b jam  0x00000002 , 0x000046c6 
- 00001485  0x0000095c rtn 
- 00001486  0x0000095f rtnmark1  0x0000000f 
- 00001487  0x00000960 call  0x00005890 
- 00001488  0x00000961 nrtn  0x00000034 
- 00001489  0x00000962 fetch  0x00000001 , 0x000002d9 
- 00001490  0x00000963 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001491  0x00000964 store  0x00000001 , 0x0000450c 
- 00001492  0x00000965 ifetch  0x00000001 , 0x00000006 
- 00001493  0x00000966 and  0x0000003f , 0x0000001f , 0x0000003f 
- 00001494  0x00000967 store  0x00000001 , 0x0000450b 
- 00001495  0x00000968 rtn  0x00000034 
- 00001496  0x00000969 copy  0x00000006 , 0x0000003f 
- 00001497  0x0000096a store  0x00000002 , 0x0000450d 
- 00001498  0x0000096b fetch  0x00000001 , 0x0000450c 
- 00001499  0x0000096c beq  0x00000003 , 0x000005dd 
- 00001500  0x0000096d branch  0x0000568d 
- 00001501  0x0000096f fetch  0x00000001 , 0x000002db 
- 00001502  0x00000970 beq  0x00000000 , 0x000005e1 
- 00001503  0x00000971 beq  0x00000001 , 0x000005e8 
- 00001504  0x00000972 branch  0x00005c65 
- 00001505  0x00000974 call  0x00005c7b 
- 00001506  0x00000975 fetch  0x00000001 , 0x00004b61 
- 00001507  0x00000976 rtn  0x00000034 
- 00001508  0x00000979 fetch  0x00000001 , 0x000043d8 
- 00001509  0x0000097a store  0x00000001 , 0x00004172 
- 00001510  0x0000097b store  0x00000001 , 0x000047c5 
- 00001511  0x0000097c rtn 
- 00001512  0x0000097e ifetch  0x00000005 , 0x00000006 
- 00001513  0x0000097f store  0x00000005 , 0x000043ce 
- 00001514  0x00000980 ifetch  0x00000002 , 0x00000006 
- 00001515  0x00000981 store  0x00000002 , 0x0000045f 
- 00001516  0x00000982 branch  0x00005c8a 
- 00001517  0x00000985 ifetch  0x00000002 , 0x00000006 
- 00001518  0x00000986 beq  0x00000004 , 0x000005f1 
- 00001519  0x00000987 beq  0x00000006 , 0x0000061d 
- 00001520  0x00000988 branch  0x00005698 
- 00001521  0x0000098a call  0x00007ea5 
- 00001522  0x0000098b call  0x000005c7 
- 00001523  0x0000098c call  0x00007e9f 
- 00001524  0x0000098d ifetch  0x00000003 , 0x00000006 
- 00001525  0x0000098e store  0x00000003 , 0x00000477 
- 00001526  0x0000098f beq  0x00000010 , 0x00000600 
- 00001527  0x00000990 rshift8  0x0000003f , 0x00000002 
- 00001528  0x00000991 sub  0x00000002 , 0x00000024 , 0x0000003e 
- 00001529  0x00000992 branch  0x0000060e , 0x00000002 
- 00001530  0x00000993 arg  0x000047c6 , 0x00000002 
- 00001531  0x00000994 storet  0x00000002 , 0x000044bc 
- 00001532  0x00000995 call  0x000058ad 
- 00001533  0x00000996 setarg  0x00008e7a 
- 00001534  0x00000997 store  0x00000002 , 0x000044bc 
- 00001535  0x00000998 rtn 
- 00001536  0x0000099b call  0x000059fa 
- 00001537  0x0000099c call  0x00005879 
- 00001538  0x0000099d increase  0x00000007 , 0x00000006 
- 00001539  0x0000099e ifetch  0x00000001 , 0x00000006 
- 00001540  0x0000099f rtnne  0x00000011 
- 00001541  0x000009a0 increase  0x00000005 , 0x00000006 
- 00001542  0x000009a1 ifetch  0x00000002 , 0x00000006 
- 00001543  0x000009a2 arg  0x00001812 , 0x00000002 
- 00001544  0x000009a3 isub  0x00000002 , 0x0000003e 
- 00001545  0x000009a4 nrtn  0x00000005 
- 00001546  0x000009a5 increase  0xfffffffc , 0x00000006 
- 00001547  0x000009a6 setarg  0x0000002b 
- 00001548  0x000009a7 istore  0x00000002 , 0x00000006 
- 00001549  0x000009a8 rtn 
- 00001550  0x000009ab beq  0x0000000a , 0x00000610 
- 00001551  0x000009ac branch  0x000058ad 
- 00001552  0x000009ae fetcht  0x00000002 , 0x00000478 
- 00001553  0x000009af fetch  0x00000001 , 0x000044e9 
- 00001554  0x000009b0 bbit1  0x00000003 , 0x00000617 
- 00001555  0x000009b2 fetch  0x00000002 , 0x00000478 
- 00001556  0x000009b3 beq  0x00000013 , 0x00005a76 
- 00001557  0x000009b4 fetcht  0x00000002 , 0x00000478 
- 00001558  0x000009b5 branch  0x000059bf 
- 00001559  0x000009b7 fetch  0x00000002 , 0x000044fa 
- 00001560  0x000009b8 isub  0x00000002 , 0x0000003e 
- 00001561  0x000009b9 nbranch  0x00000613 , 0x00000005 
- 00001562  0x000009ba call  0x00005a42 
- 00001563  0x000009bb nbranch  0x00000613 , 0x00000028 
- 00001564  0x000009bc branch  0x000059e2 
- 00001565  0x000009bf ifetch  0x00000001 , 0x00000006 
- 00001566  0x000009c0 beq  0x00000001 , 0x00000621 
- 00001567  0x000009c1 beq  0x00000005 , 0x00000623 
- 00001568  0x000009c2 branch  0x00005af5 
- 00001569  0x000009c4 jam  0x00000001 , 0x00004b6e 
- 00001570  0x000009c5 branch  0x00005b09 
- 00001571  0x000009c7 jam  0x00000082 , 0x000011c6 
- 00001572  0x000009c8 branch  0x00000770 
- 00001573  0x000009cb fetch  0x00000001 , 0x00000016 
- 00001574  0x000009cc bne  0x00000027 , 0x000056f2 
- 00001575  0x000009cd call  0x0000062b 
- 00001576  0x000009ce arg  0x00000000 , 0x00000007 
- 00001577  0x000009cf fetch  0x00000002 , 0x00004482 
- 00001578  0x000009d0 branch  0x00007f08 
- 00001579  0x000009d2 random  0x0000003f 
- 00001580  0x000009d3 arg  0x000001ff , 0x00000002 
- 00001581  0x000009d4 iand  0x00000002 , 0x0000003f 
- 00001582  0x000009d5 add  0x0000003f , 0x000000fa , 0x0000003f 
- 00001583  0x000009d6 branch  0x00003cbe 
- 00001584  0x000009d9 disable  0x0000002b 
- 00001585  0x000009da branch  0x00000633 , 0x0000002e 
- 00001586  0x000009db nbranch  0x00005806 , 0x0000002d 
- 00001587  0x000009dd call  0x00002bcb 
- 00001588  0x000009de fetch  0x00000002 , 0x000040c1 
- 00001589  0x000009df store  0x00000002 , 0x0000044d 
- 00001590  0x000009e0 fetch  0x00000001 , 0x000046c5 
- 00001591  0x000009e1 compare  0x00000003 , 0x0000003f , 0x00000003 
- 00001592  0x000009e2 nbranch  0x00002bde , 0x00000001 
- 00001593  0x000009e3 branch  0x000057fb 
- 00001594  0x000009e6 jam  0x00000022 , 0x000011c6 
- 00001595  0x000009e7 branch  0x00000770 
- 00001596  0x000009ea hfetch  0x00000001 , 0x00008077 
- 00001597  0x000009eb and_into  0x000000fd , 0x0000003f 
- 00001598  0x000009ec hstore  0x00000001 , 0x00008077 
- 00001599  0x000009ed hfetcht  0x00000001 , 0x00008073 
- 00001600  0x000009ee or_into  0x00000002 , 0x00000002 
- 00001601  0x000009ef hstoret  0x00000001 , 0x00008073 
- 00001602  0x000009f0 call  0x000063ee 
- 00001603  0x000009f1 and_into  0x000000fd , 0x00000002 
- 00001604  0x000009f2 nop  0x0000000d 
- 00001605  0x000009f3 call  0x00000649 
- 00001606  0x000009f4 hstoret  0x00000001 , 0x00008073 
- 00001607  0x000009f5 rtn 
- 00001608  0x000009f8 call  0x000064dd 
- 00001609  0x000009fa hfetch  0x00000001 , 0x00008081 
- 00001610  0x000009fb set1  0x00000000 , 0x0000003f 
- 00001611  0x000009fc set0  0x00000001 , 0x0000003f 
- 00001612  0x000009fd set0  0x00000003 , 0x0000003f 
- 00001613  0x000009fe hstore  0x00000001 , 0x00008081 
- 00001614  0x000009ff rtn 
- 00001615  0x00000a03 jam  0x00000000 , 0x000011c6 
- 00001616  0x00000a04 branch  0x00000770 
- 00001617  0x00000a07 call  0x000021c9 
- 00001618  0x00000a08 nrtn  0x00000028 
- 00001619  0x00000a0a disable  0x00000028 
- 00001620  0x00000a0b jam  0x00000020 , 0x00000011 
- 00001621  0x00000a0c set0  0x0000000b , 0x00000000 
- 00001622  0x00000a0d set0  0x0000002d , 0x00000000 
- 00001623  0x00000a0f call  0x00002a4f 
- 00001624  0x00000a10 call  0x000022e6 
- 00001625  0x00000a11 bmark1  0x0000000b , 0x0000065e 
- 00001626  0x00000a12 call  0x00002455 
- 00001627  0x00000a13 nbranch  0x00000657 , 0x00000034 
- 00001628  0x00000a14 bmark1  0x0000002d , 0x00000667 
- 00001629  0x00000a15 branch  0x000021ec 
- 00001630  0x00000a18 call  0x00002a4d 
- 00001631  0x00000a19 arg  0x00000010 , 0x00000001 
- 00001632  0x00000a1a call  0x000022dc 
- 00001633  0x00000a1b set1  0x0000002d , 0x00000000 
- 00001634  0x00000a1c set0  0x0000000b , 0x00000000 
- 00001635  0x00000a1d fetch  0x00000001 , 0x00000077 
- 00001636  0x00000a1e iforce  0x00000004 
- 00001637  0x00000a1f jam  0x00000002 , 0x00000011 
- 00001638  0x00000a20 branch  0x00000657 
- 00001639  0x00000a23 fetch  0x00000004 , 0x00000165 
- 00001640  0x00000a24 pincrease  0x00000008 
- 00001641  0x00000a25 store  0x00000004 , 0x00000165 
- 00001642  0x00000a26 branch  0x000021f8 
- 00001643  0x00000a29 bmark1  0x0000002c , 0x0000264d 
- 00001644  0x00000a2a branch  0x0000258f 
- 00001645  0x00000a2d jam  0x00000023 , 0x000011c6 
- 00001646  0x00000a2e branch  0x00000770 
- 00001647  0x00000a31 fetch  0x00000001 , 0x00000030 
- 00001648  0x00000a32 isolate1  0x00000000 , 0x0000003f 
- 00001649  0x00000a33 call  0x00000673 , 0x00000001 
- 00001650  0x00000a34 branch  0x0000248a 
- 00001651  0x00000a36 fetch  0x00000001 , 0x00000047 
- 00001652  0x00000a37 isolate1  0x00000003 , 0x0000003f 
- 00001653  0x00000a38 call  0x00000706 , 0x00000001 
- 00001654  0x00000a39 ncall  0x00000702 , 0x00000001 
- 00001655  0x00000a3a branch  0x00000710 
- 00001656  0x00000a3d call  0x000024f0 
- 00001657  0x00000a3e nbranch  0x000028f9 , 0x00000018 
- 00001658  0x00000a3f call  0x000029bb 
- 00001659  0x00000a40 call  0x0000006c 
- 00001660  0x00000a41 branch  0x00002518 
- 00001661  0x00000a44 rtnmark1  0x00000026 
- 00001662  0x00000a45 call  0x00002afa 
- 00001663  0x00000a46 fetch  0x00000003 , 0x0000416f 
- 00001664  0x00000a47 rtn  0x00000034 
- 00001665  0x00000a48 fetch  0x00000001 , 0x00004091 
- 00001666  0x00000a49 rtn  0x00000034 
- 00001667  0x00000a4a fetch  0x00000001 , 0x0000465a 
- 00001668  0x00000a4b branch  0x00000687 , 0x00000034 
- 00001669  0x00000a4c fetch  0x00000001 , 0x000045b1 
- 00001670  0x00000a4d rtn  0x00000034 
- 00001671  0x00000a4f fetch  0x00000001 , 0x000044c0 
- 00001672  0x00000a50 nrtn  0x00000034 
- 00001673  0x00000a51 call  0x00002c3a 
- 00001674  0x00000a52 nrtn  0x00000034 
- 00001675  0x00000a53 fetch  0x00000001 , 0x00004040 
- 00001676  0x00000a54 compare  0x00000003 , 0x0000003f , 0x00000007 
- 00001677  0x00000a55 nbranch  0x00002b9d , 0x00000001 
- 00001678  0x00000a56 fetch  0x00000002 , 0x00004042 
- 00001679  0x00000a57 arg  0x0000ffff , 0x00000002 
- 00001680  0x00000a58 isub  0x00000002 , 0x0000003e 
- 00001681  0x00000a59 rtn  0x00000005 
- 00001682  0x00000a5a branch  0x00002b7d 
- 00001683  0x00000a5d disable  0x0000002b 
- 00001684  0x00000a5e fetch  0x00000001 , 0x00000030 
- 00001685  0x00000a5f rtnbit0  0x00000001 
- 00001686  0x00000a60 nbranch  0x00002bd0 , 0x0000002d 
- 00001687  0x00000a61 call  0x00002bcb 
- 00001688  0x00000a62 fetch  0x00000002 , 0x000040c1 
- 00001689  0x00000a63 store  0x00000002 , 0x0000003e 
- 00001690  0x00000a64 fetch  0x00000001 , 0x00000047 
- 00001691  0x00000a65 bbit1  0x00000003 , 0x00002bde 
- 00001692  0x00000a66 bmark0  0x0000000d , 0x00002bde 
- 00001693  0x00000a67 call  0x00005274 
- 00001694  0x00000a68 nbranch  0x00002bde , 0x00000034 
- 00001695  0x00000a69 call  0x000006a1 , 0x00000034 
- 00001696  0x00000a6a branch  0x00002bbe 
- 00001697  0x00000a6c jam  0x00000001 , 0x0000008a 
- 00001698  0x00000a6d jam  0x00000000 , 0x0000008b 
- 00001699  0x00000a6e rtn 
- 00001700  0x00000a71 jam  0x00000001 , 0x000011c6 
- 00001701  0x00000a72 branch  0x00000770 
- 00001702  0x00000a75 jam  0x00000002 , 0x000011c6 
- 00001703  0x00000a76 branch  0x00000770 
- 00001704  0x00000a79 fetch  0x00000001 , 0x00000552 
- 00001705  0x00000a7a store  0x00000001 , 0x000004c9 
- 00001706  0x00000a7b beq  0x00000013 , 0x000006ac 
- 00001707  0x00000a7c branch  0x00005db4 
- 00001708  0x00000a7e call  0x00005dcf 
- 00001709  0x00000a7f jam  0x00000001 , 0x00004aff 
- 00001710  0x00000a80 fetch  0x00000001 , 0x00004b01 
- 00001711  0x00000a81 rtn  0x00000034 
- 00001712  0x00000a82 jam  0x00000002 , 0x00004b01 
- 00001713  0x00000a83 rtn 
- 00001714  0x00000a86 disable  0x00000028 
- 00001715  0x00000a87 call  0x000062c1 
- 00001716  0x00000a88 fetch  0x00000001 , 0x00000048 
- 00001717  0x00000a89 rtn  0x00000034 
- 00001718  0x00000a8a bbit1  0x00000007 , 0x000006bb 
- 00001719  0x00000a8b beq  0x00000003 , 0x000006bd 
- 00001720  0x00000a8c beq  0x00000031 , 0x000006bf 
- 00001721  0x00000a8d beq  0x00000017 , 0x000006c1 
- 00001722  0x00000a8e branch  0x00006010 
- 00001723  0x00000a91 jam  0x00000010 , 0x000011c6 
- 00001724  0x00000a92 branch  0x00000770 
- 00001725  0x00000a95 jam  0x00000011 , 0x000011c6 
- 00001726  0x00000a96 branch  0x00000770 
- 00001727  0x00000a99 jam  0x00000001 , 0x00004b01 
- 00001728  0x00000a9a branch  0x000061c3 
- 00001729  0x00000a9d jam  0x00000004 , 0x00004b09 
- 00001730  0x00000a9e branch  0x000061a4 
- 00001731  0x00000aa1 call  0x000062bc 
- 00001732  0x00000aa2 nrtn  0x00000034 
- 00001733  0x00000aa4 fetch  0x00000001 , 0x00000055 
- 00001734  0x00000aa5 rtn  0x00000034 
- 00001735  0x00000aa6 beq  0x00000004 , 0x000006e5 
- 00001736  0x00000aa7 beq  0x00000010 , 0x000006ca 
- 00001737  0x00000aa8 branch  0x00006320 
- 00001738  0x00000aab fetch  0x00000001 , 0x0000455b 
- 00001739  0x00000aac rtneq  0x00000000 
- 00001740  0x00000aad beq  0x00000001 , 0x000006ce 
- 00001741  0x00000aae branch  0x0000635f 
- 00001742  0x00000ab0 rtn  0x00000029 
- 00001743  0x00000ab3 fetch  0x00000001 , 0x0000016d 
- 00001744  0x00000ab4 bbit1  0x00000000 , 0x000006d2 
- 00001745  0x00000ab5 branch  0x00006399 
- 00001746  0x00000ab7 fetch  0x00000001 , 0x00004b01 
- 00001747  0x00000ab8 beq  0x00000001 , 0x0000639d 
- 00001748  0x00000aba fetch  0x00000001 , 0x000041bd 
- 00001749  0x00000abb branch  0x000063a9 , 0x00000034 
- 00001750  0x00000abc fetch  0x00000001 , 0x000004d1 
- 00001751  0x00000abd rtnbit0  0x00000003 
- 00001752  0x00000abe rtnbit0  0x00000002 
- 00001753  0x00000abf fetch  0x00000001 , 0x00004b00 
- 00001754  0x00000ac0 rtn  0x00000034 
- 00001755  0x00000ac1 jam  0x00000000 , 0x00004b00 
- 00001756  0x00000ac2 fetch  0x00000004 , 0x000004e9 
- 00001757  0x00000ac3 arg  0x00000014 , 0x00000002 
- 00001758  0x00000ac4 iadd  0x00000002 , 0x00000002 
- 00001759  0x00000ac5 copy  0x00000022 , 0x0000003f 
- 00001760  0x00000ac6 isub  0x00000002 , 0x0000003e 
- 00001761  0x00000ac7 nbranch  0x000006e3 , 0x00000002 
- 00001762  0x00000ac8 branch  0x00006349 
- 00001763  0x00000acb jam  0x00000001 , 0x00004b00 
- 00001764  0x00000acc rtn 
- 00001765  0x00000acf jam  0x00000014 , 0x00004809 
- 00001766  0x00000ad0 branch  0x0000636f 
- 00001767  0x00000ad7 call  0x000062bc 
- 00001768  0x00000ad8 nbranch  0x00007ddb , 0x00000034 
- 00001769  0x00000ad9 fetch  0x00000001 , 0x00000a99 
- 00001770  0x00000ada bmark0  0x00000009 , 0x00007dd6 
- 00001771  0x00000adb beq  0x0000001f , 0x000006ef 
- 00001772  0x00000adc beq  0x00000020 , 0x000006f2 
- 00001773  0x00000add beq  0x00000012 , 0x000006fc 
- 00001774  0x00000ade branch  0x00007dca 
- 00001775  0x00000ae1 jam  0x00000034 , 0x00000185 
- 00001776  0x00000ae2 fetch  0x00000006 , 0x0000044f 
- 00001777  0x00000ae3 branch  0x000006f4 
- 00001778  0x00000ae5 jam  0x00000033 , 0x00000185 
- 00001779  0x00000ae6 fetch  0x00000006 , 0x00000040 
- 00001780  0x00000ae8 store  0x00000006 , 0x00000186 
- 00001781  0x00000aea fetch  0x00000004 , 0x000046d3 
- 00001782  0x00000aeb rtnbit0  0x00000007 
- 00001783  0x00000aec arg  0x00000007 , 0x00000007 
- 00001784  0x00000aed call  0x000043d2 
- 00001785  0x00000aee call  0x000042e8 
- 00001786  0x00000af0 call  0x000042fb 
- 00001787  0x00000af1 branch  0x00000325 
- 00001788  0x00000af4 call  0x00005890 
- 00001789  0x00000af5 nrtn  0x00000034 
- 00001790  0x00000af6 branch  0x00005abf 
- 00001791  0x00000af9 jam  0x00000001 , 0x00004d83 
- 00001792  0x00000afa jam  0x00000000 , 0x00004d80 
- 00001793  0x00000afb rtn 
- 00001794  0x00000afd fetch  0x00000001 , 0x00004d80 
- 00001795  0x00000afe increase  0x00000001 , 0x0000003f 
- 00001796  0x00000aff store  0x00000001 , 0x00004d80 
- 00001797  0x00000b00 rtn 
- 00001798  0x00000b02 fetch  0x00000001 , 0x00004d80 
- 00001799  0x00000b03 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00001800  0x00000b04 ncall  0x0000070e , 0x00000002 
- 00001801  0x00000b05 fetch  0x00000001 , 0x00004d80 
- 00001802  0x00000b06 rtneq  0x00000000 
- 00001803  0x00000b07 increase  0xffffffff , 0x0000003f 
- 00001804  0x00000b08 store  0x00000001 , 0x00004d80 
- 00001805  0x00000b09 rtn 
- 00001806  0x00000b0b jam  0x00000003 , 0x00004d80 
- 00001807  0x00000b0c rtn 
- 00001808  0x00000b0f fetch  0x00000002 , 0x00004682 
- 00001809  0x00000b10 rtnbit1  0x0000000b 
- 00001810  0x00000b11 rtnbit1  0x00000007 
- 00001811  0x00000b12 rtnbit1  0x00000006 
- 00001812  0x00000b14 arg  0x00004d09 , 0x00000011 
- 00001813  0x00000b15 call  0x00000295 
- 00001814  0x00000b16 storet  0x00000001 , 0x00004d81 
- 00001815  0x00000b18 setarg  0x00000082 
- 00001816  0x00000b19 bmark1  0x00000026 , 0x0000071a 
- 00001817  0x00000b1a setarg  0x00000080 
- 00001818  0x00000b1c isub  0x00000002 , 0x0000003e 
- 00001819  0x00000b1d nbranch  0x00000732 , 0x00000002 
- 00001820  0x00000b1f fetch  0x00000001 , 0x00004d80 
- 00001821  0x00000b20 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00001822  0x00000b21 nbranch  0x00000722 , 0x00000002 
- 00001823  0x00000b22 fetch  0x00000001 , 0x00004d80 
- 00001824  0x00000b23 beq  0x00000000 , 0x00000733 
- 00001825  0x00000b24 rtn 
- 00001826  0x00000b27 fetch  0x00000001 , 0x00004d80 
- 00001827  0x00000b28 rtnne  0x00000032 
- 00001828  0x00000b29 jam  0x00000000 , 0x00004d80 
- 00001829  0x00000b2b fetcht  0x00000001 , 0x00004d81 
- 00001830  0x00000b2c setarg  0x00000077 
- 00001831  0x00000b2d bmark1  0x00000026 , 0x00000729 
- 00001832  0x00000b2e setarg  0x00000075 
- 00001833  0x00000b30 isub  0x00000002 , 0x0000003e 
- 00001834  0x00000b31 nrtn  0x00000002 
- 00001835  0x00000b32 fetch  0x00000001 , 0x00004d83 
- 00001836  0x00000b33 beq  0x00000000 , 0x0000073a 
- 00001837  0x00000b34 increase  0xffffffff , 0x0000003f 
- 00001838  0x00000b35 store  0x00000001 , 0x00004d83 
- 00001839  0x00000b36 beq  0x00000000 , 0x0000073a 
- 00001840  0x00000b39 jam  0x00000000 , 0x000041de 
- 00001841  0x00000b3a rtn 
- 00001842  0x00000b3d jam  0x00000000 , 0x00004d80 
- 00001843  0x00000b3f fetch  0x00000001 , 0x00004d83 
- 00001844  0x00000b40 beq  0x00000002 , 0x00000738 
- 00001845  0x00000b41 increase  0x00000001 , 0x0000003f 
- 00001846  0x00000b42 store  0x00000001 , 0x00004d83 
- 00001847  0x00000b43 beq  0x00000001 , 0x00000730 
- 00001848  0x00000b45 jam  0x00000002 , 0x000041de 
- 00001849  0x00000b46 rtn 
- 00001850  0x00000b49 jam  0x00000004 , 0x000041de 
- 00001851  0x00000b4a rtn 
- 00001852  0x00000b4e storet  0x00000001 , 0x00000017 
- 00001853  0x00000b4f add  0x00000002 , 0x00000000 , 0x00000011 
- 00001854  0x00000b50 call  0x00002981 
- 00001855  0x00000b51 setarg  0x00000500 
- 00001856  0x00000b52 call  0x00002a8f 
- 00001857  0x00000b54 jam  0x00000001 , 0x00008906 
- 00001858  0x00000b55 jam  0x0000003c , 0x00008900 
- 00001859  0x00000b56 jam  0x000000e0 , 0x00008901 
- 00001860  0x00000b57 nop  0x0000000a 
- 00001861  0x00000b58 jam  0x00000001 , 0x00008902 
- 00001862  0x00000b59 jam  0x0000003d , 0x00008902 
- 00001863  0x00000b5a nop  0x0000000a 
- 00001864  0x00000b5b jam  0x000000b7 , 0x00008903 
- 00001865  0x00000b5c nop  0x0000000a 
- 00001866  0x00000b5d jam  0x0000007d , 0x00008902 
- 00001867  0x00000b5e fetch  0x00000001 , 0x000041de 
- 00001868  0x00000b61 beq  0x00000002 , 0x00000754 
- 00001869  0x00000b63 beq  0x00000004 , 0x00000759 
- 00001870  0x00000b64 beq  0x00000020 , 0x00000768 
- 00001871  0x00000b67 call  0x0000075e 
- 00001872  0x00000b69 jam  0x000000d0 , 0x00008955 
- 00001873  0x00000b6a jam  0x000000e0 , 0x00008956 
- 00001874  0x00000b6c jam  0x0000006c , 0x00008958 
- 00001875  0x00000b6e branch  0x0000294b 
- 00001876  0x00000b7b call  0x00000763 
- 00001877  0x00000b7d jam  0x000000d0 , 0x00008955 
- 00001878  0x00000b7e jam  0x000000e0 , 0x00008956 
- 00001879  0x00000b80 jam  0x0000003c , 0x00008958 
- 00001880  0x00000b82 branch  0x00002953 
- 00001881  0x00000b8f call  0x0000075e 
- 00001882  0x00000b91 jam  0x000000d0 , 0x00008955 
- 00001883  0x00000b92 jam  0x000000c0 , 0x00008956 
- 00001884  0x00000b94 jam  0x0000006c , 0x00008958 
- 00001885  0x00000b96 branch  0x0000295b 
- 00001886  0x00000b99 jam  0x0000005b , 0x0000894c 
- 00001887  0x00000b9a jam  0x00000096 , 0x0000894d 
- 00001888  0x00000b9b jam  0x0000002c , 0x0000894e 
- 00001889  0x00000b9c jam  0x00000046 , 0x0000894f 
- 00001890  0x00000b9d rtn 
- 00001891  0x00000ba0 jam  0x000000fb , 0x0000894c 
- 00001892  0x00000ba1 jam  0x000000ef , 0x0000894d 
- 00001893  0x00000ba2 jam  0x000000ec , 0x0000894e 
- 00001894  0x00000ba3 jam  0x0000005e , 0x0000894f 
- 00001895  0x00000ba4 rtn 
- 00001896  0x00000ba8 jam  0x000000c2 , 0x00008956 
- 00001897  0x00000ba9 jam  0x000000d0 , 0x00008955 
- 00001898  0x00000baa rtn 
- 00001899  0x00000bad force  0x00000008 , 0x00000015 
- 00001900  0x00000bae branch  0x000028fa 
- 00001901  0x00000bb1 call  0x00002978 
- 00001902  0x00000bb2 jam  0x00000005 , 0x00008042 
- 00001903  0x00000bb3 rtn 
- 00001904  0x00000bb7 fetcht  0x00000001 , 0x000011c6 
- 00001905  0x00000bb8 rshift4  0x00000002 , 0x00000002 
- 00001906  0x00000bb9 fetch  0x00000001 , 0x00004b52 
- 00001907  0x00000bba isub  0x00000002 , 0x0000003e 
- 00001908  0x00000bbb branch  0x0000078f , 0x00000005 
- 00001909  0x00000bbc storet  0x00000001 , 0x00004b52 
- 00001910  0x00000bbd increase  0x00000001 , 0x00000002 
- 00001911  0x00000bbe setarg  0x00000100 
- 00001912  0x00000bbf imul32  0x00000002 , 0x00000002 
- 00001913  0x00000bc0 fetch  0x00000003 , 0x00004b53 
- 00001914  0x00000bc1 isub  0x00000002 , 0x0000003f 
- 00001915  0x00000bc3 fetcht  0x00000003 , 0x00004b56 
- 00001916  0x00000bc4 iadd  0x00000002 , 0x0000003f 
- 00001917  0x00000bc5 increase  0xfffffffb , 0x0000003f 
- 00001918  0x00000bc6 store  0x00000003 , 0x00004b59 
- 00001919  0x00000bc7 call  0x00000364 
- 00001920  0x00000bc9 fetch  0x00000003 , 0x00004b59 
- 00001921  0x00000bca arg  0x00000100 , 0x00000002 
- 00001922  0x00000bcb arg  0x00001f00 , 0x00000011 
- 00001923  0x00000bcc call  0x00006562 
- 00001924  0x00000bcd fetch  0x00000004 , 0x00001f00 
- 00001925  0x00000bce fetcht  0x00000004 , 0x00004b5c 
- 00001926  0x00000bcf isub  0x00000002 , 0x0000003e 
- 00001927  0x00000bd0 nbranch  0x00000780 , 0x00000005 
- 00001928  0x00000bd1 call  0x00000333 
- 00001929  0x00000bd3 setarg  0x00001f00 
- 00001930  0x00000bd4 store  0x00000002 , 0x00004199 
- 00001931  0x00000bd5 jam  0x00000040 , 0x0000419b 
- 00001932  0x00000bd6 call  0x000064ca 
- 00001933  0x00000bd7 setarg  0x00000000 
- 00001934  0x00000bd8 store  0x00000004 , 0x00004199 
- 00001935  0x00000bda fetch  0x00000001 , 0x000011c6 
- 00001936  0x00000bdb branch  0x00000001 
- 00001937  0x00000be1 fetch  0x00000004 , 0x0000469b 
- 00001938  0x00000be2 rtn  0x00000034 
- 00001939  0x00000be3 call  0x000007f1 
- 00001940  0x00000be4 setarg  0x00000006 
- 00001941  0x00000be5 call  0x000007e4 
- 00001942  0x00000be6 setarg  0x00000003 
- 00001943  0x00000be7 call  0x000007ea 
- 00001944  0x00000be8 fetch  0x00000001 , 0x00004b0b 
- 00001945  0x00000be9 beq  0x00000001 , 0x0000079d 
- 00001946  0x00000beb arg  0x00000005 , 0x00000039 
- 00001947  0x00000bec arg  0x00004b0b , 0x00000005 
- 00001948  0x00000bed branch  0x00007ed4 
- 00001949  0x00000bf0 fetch  0x00000002 , 0x00004b0c 
- 00001950  0x00000bf1 store  0x00000002 , 0x000011be 
- 00001951  0x00000bf2 fetch  0x00000002 , 0x0000469b 
- 00001952  0x00000bf3 store  0x00000002 , 0x000011c0 
- 00001953  0x00000bf4 call  0x000007b0 
- 00001954  0x00000bf5 fetch  0x00000002 , 0x000011be 
- 00001955  0x00000bf6 store  0x00000002 , 0x00004b0c 
- 00001956  0x00000bf7 fetch  0x00000002 , 0x000011c0 
- 00001957  0x00000bf8 store  0x00000002 , 0x0000469b 
- 00001958  0x00000bfa fetch  0x00000002 , 0x00004b0e 
- 00001959  0x00000bfb store  0x00000002 , 0x000011be 
- 00001960  0x00000bfc fetch  0x00000002 , 0x0000469d 
- 00001961  0x00000bfd store  0x00000002 , 0x000011c0 
- 00001962  0x00000bfe call  0x000007b8 
- 00001963  0x00000bff fetch  0x00000002 , 0x000011be 
- 00001964  0x00000c00 store  0x00000002 , 0x00004b0e 
- 00001965  0x00000c01 fetch  0x00000002 , 0x000011c0 
- 00001966  0x00000c02 store  0x00000002 , 0x0000469d 
- 00001967  0x00000c03 rtn 
- 00001968  0x00000c06 fetch  0x00000002 , 0x000011be 
- 00001969  0x00000c07 fetcht  0x00000002 , 0x000011c0 
- 00001970  0x00000c08 iadd  0x00000002 , 0x0000003f 
- 00001971  0x00000c09 fetcht  0x00000001 , 0x00004bbe 
- 00001972  0x00000c0a iadd  0x00000002 , 0x0000003f 
- 00001973  0x00000c0b and  0x0000003f , 0x00000001 , 0x00000002 
- 00001974  0x00000c0c storet  0x00000001 , 0x00004bbe 
- 00001975  0x00000c0d branch  0x000007c0 
- 00001976  0x00000c10 fetch  0x00000002 , 0x000011be 
- 00001977  0x00000c11 fetcht  0x00000002 , 0x000011c0 
- 00001978  0x00000c12 iadd  0x00000002 , 0x0000003f 
- 00001979  0x00000c13 fetcht  0x00000001 , 0x00004bbf 
- 00001980  0x00000c14 iadd  0x00000002 , 0x0000003f 
- 00001981  0x00000c15 and  0x0000003f , 0x00000001 , 0x00000002 
- 00001982  0x00000c16 storet  0x00000001 , 0x00004bbf 
- 00001983  0x00000c17 branch  0x000007c0 
- 00001984  0x00000c1e store  0x00000003 , 0x000011c2 
- 00001985  0x00000c1f isolate1  0x00000010 , 0x0000003f 
- 00001986  0x00000c20 branch  0x000007ca , 0x00000001 
- 00001987  0x00000c21 fetch  0x00000001 , 0x000011c3 
- 00001988  0x00000c22 beq  0x000000ff , 0x000007d1 
- 00001989  0x00000c23 fetch  0x00000001 , 0x000011c2 
- 00001990  0x00000c25 rshift  0x0000003f , 0x0000003f 
- 00001991  0x00000c26 store  0x00000002 , 0x000011be 
- 00001992  0x00000c27 store  0x00000002 , 0x000011c0 
- 00001993  0x00000c28 rtn 
- 00001994  0x00000c2a fetch  0x00000001 , 0x000011c3 
- 00001995  0x00000c2b beq  0x00000000 , 0x000007ce 
- 00001996  0x00000c2c fetch  0x00000003 , 0x000011c2 
- 00001997  0x00000c2d branch  0x000007c6 
- 00001998  0x00000c2f jam  0x00000000 , 0x000011c4 
- 00001999  0x00000c30 fetch  0x00000001 , 0x000011c2 
- 00002000  0x00000c31 branch  0x000007c6 
- 00002001  0x00000c34 fetch  0x00000001 , 0x000011c2 
- 00002002  0x00000c35 call  0x000007dc 
- 00002003  0x00000c36 store  0x00000001 , 0x000011be 
- 00002004  0x00000c37 store  0x00000001 , 0x000011c0 
- 00002005  0x00000c38 branch  0x000007da , 0x00000034 
- 00002006  0x00000c39 setarg  0x000000ff 
- 00002007  0x00000c3b store  0x00000001 , 0x000011bf 
- 00002008  0x00000c3c store  0x00000001 , 0x000011c1 
- 00002009  0x00000c3d rtn 
- 00002010  0x00000c3f setarg  0x00000000 
- 00002011  0x00000c40 branch  0x000007d7 
- 00002012  0x00000c43 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00002013  0x00000c44 store  0x00000001 , 0x00000aae 
- 00002014  0x00000c45 fetch  0x00000001 , 0x00000aae 
- 00002015  0x00000c46 rshift  0x0000003f , 0x0000003f 
- 00002016  0x00000c47 store  0x00000001 , 0x00000aae 
- 00002017  0x00000c48 fetch  0x00000001 , 0x00000aae 
- 00002018  0x00000c49 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00002019  0x00000c4a rtn 
- 00002020  0x00000c4f isub  0x00000011 , 0x0000003e 
- 00002021  0x00000c50 nbranch  0x000007ef , 0x00000002 
- 00002022  0x00000c51 isub  0x00000012 , 0x0000003e 
- 00002023  0x00000c52 nbranch  0x000007ef , 0x00000002 
- 00002024  0x00000c54 jam  0x00000000 , 0x00004b0b 
- 00002025  0x00000c55 rtn 
- 00002026  0x00000c57 isub  0x00000011 , 0x0000003e 
- 00002027  0x00000c58 nrtn  0x00000002 
- 00002028  0x00000c59 isub  0x00000012 , 0x0000003e 
- 00002029  0x00000c5a nrtn  0x00000002 
- 00002030  0x00000c5b branch  0x000007e8 
- 00002031  0x00000c5d jam  0x00000001 , 0x00004b0b 
- 00002032  0x00000c5e rtn 
- 00002033  0x00000c61 fetch  0x00000002 , 0x0000469b 
- 00002034  0x00000c62 call  0x000007f8 
- 00002035  0x00000c63 copy  0x0000003f , 0x00000011 
- 00002036  0x00000c64 fetch  0x00000002 , 0x0000469d 
- 00002037  0x00000c65 call  0x000007f8 
- 00002038  0x00000c66 copy  0x0000003f , 0x00000012 
- 00002039  0x00000c67 rtn 
- 00002040  0x00000c6e store  0x00000002 , 0x000011c0 
- 00002041  0x00000c6f fetch  0x00000001 , 0x000011c1 
- 00002042  0x00000c70 beq  0x000000ff , 0x000007fe 
- 00002043  0x00000c71 fetch  0x00000001 , 0x000011c0 
- 00002044  0x00000c73 and_into  0x000000ff , 0x0000003f 
- 00002045  0x00000c75 rtn 
- 00002046  0x00000c77 fetch  0x00000002 , 0x000011c0 
- 00002047  0x00000c78 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00002048  0x00000c79 branch  0x000007fc 
- 00008192  0x00000c86 call  0x00002abc 
- 00008193  0x00000c89 bpatch  0x00000000 , 0x00004000 
- 00008194  0x00000c8a clear_stack 
- 00008195  0x00000c8b call  0x0000640d 
- 00008196  0x00000c8c call  0x0000296c 
- 00008197  0x00000c8d call  0x000065a3 
- 00008198  0x00000c8e call  0x00002a96 
- 00008199  0x00000c8f call  0x00004d6a 
- 00008200  0x00000c90 bpatch  0x00000001 , 0x00004000 
- 00008201  0x00000c91 call  0x00006a03 
- 00008202  0x00000c92 call  0x00005cf6 
- 00008203  0x00000c93 call  0x00007ccc 
- 00008204  0x00000c94 call  0x000032d8 
- 00008205  0x00000c95 ncall  0x0000689c , 0x0000002b 
- 00008206  0x00000c96 bpatch  0x00000002 , 0x00004000 
- 00008207  0x00000c97 call  0x000032e3 , 0x0000002b 
- 00008208  0x00000c98 call  0x0000756a 
- 00008209  0x00000c99 call  0x00002b41 , 0x0000002b 
- 00008210  0x00000c9b bpatch  0x00000003 , 0x00004000 
- 00008211  0x00000c9c call  0x000076dc 
- 00008212  0x00000c9d call  0x00007aaf 
- 00008213  0x00000c9e call  0x0000756d 
- 00008214  0x00000c9f call  0x0000535c 
- 00008215  0x00000ca0 bpatch  0x00000004 , 0x00004000 
- 00008216  0x00000ca1 call  0x00002038 
- 00008217  0x00000ca2 call  0x000032ed 
- 00008218  0x00000ca3 call  0x0000208f 
- 00008219  0x00000ca4 call  0x000022f8 
- 00008220  0x00000ca5 call  0x0000236a 
- 00008221  0x00000ca6 call  0x00002021 
- 00008222  0x00000ca7 call  0x00002b6a 
- 00008223  0x00000ca8 call  0x00002c72 
- 00008224  0x00000ca9 branch  0x00002012 
- 00008225  0x00000cac call  0x00002026 
- 00008226  0x00000cad rtnmark0  0x00000009 
- 00008227  0x00000cae set0  0x00000009 , 0x00000000 
- 00008228  0x00000caf call  0x00002223 
- 00008229  0x00000cb0 branch  0x000053ce 
- 00008230  0x00000cb3 bpatch  0x00000005 , 0x00004000 
- 00008231  0x00000cb4 call  0x0000225e 
- 00008232  0x00000cb5 nbranch  0x0000202f , 0x00000005 
- 00008233  0x00000cb6 call  0x0000220a 
- 00008234  0x00000cb7 add  0x00000011 , 0x00000001 , 0x00000006 
- 00008235  0x00000cb8 ifetch  0x00000001 , 0x00000006 
- 00008236  0x00000cb9 bbit1  0x00000000 , 0x00005360 
- 00008237  0x00000cba bbit1  0x00000001 , 0x00002166 
- 00008238  0x00000cbb branch  0x000023cf 
- 00008239  0x00000cbd call  0x0000222b 
- 00008240  0x00000cbe copy  0x00000039 , 0x0000003e 
- 00008241  0x00000cbf rtn  0x00000005 
- 00008242  0x00000cc0 call  0x0000220a 
- 00008243  0x00000cc1 fetch  0x00000001 , 0x00000030 
- 00008244  0x00000cc2 bbit1  0x00000003 , 0x000020d3 
- 00008245  0x00000cc3 fetch  0x00000001 , 0x00000031 
- 00008246  0x00000cc4 bbit1  0x00000001 , 0x00002166 
- 00008247  0x00000cc5 branch  0x000023cf 
- 00008248  0x00000cce fetch  0x00000001 , 0x000041ce 
- 00008249  0x00000ccf rtn  0x00000034 
- 00008250  0x00000cd0 beq  0x00000001 , 0x00002048 
- 00008251  0x00000cd1 beq  0x00000002 , 0x0000204d 
- 00008252  0x00000cd2 beq  0x00000003 , 0x00002050 
- 00008253  0x00000cd3 beq  0x00000005 , 0x00002055 
- 00008254  0x00000cd4 beq  0x0000001b , 0x00002045 
- 00008255  0x00000cd5 call  0x00002257 
- 00008256  0x00000cd6 rtn  0x00000005 
- 00008257  0x00000cd7 call  0x0000225a 
- 00008258  0x00000cd8 rtn  0x00000005 
- 00008259  0x00000cda jam  0x00000000 , 0x000041ce 
- 00008260  0x00000cdb rtn 
- 00008261  0x00000cde jam  0x0000001b , 0x0000049b 
- 00008262  0x00000cdf jam  0x00000000 , 0x000041ce 
- 00008263  0x00000ce0 rtn 
- 00008264  0x00000ce3 set1  0x0000001c , 0x00000000 
- 00008265  0x00000ce4 set0  0x0000001e , 0x00000000 
- 00008266  0x00000ce5 jam  0x000000ff , 0x0000008f 
- 00008267  0x00000ce6 jam  0x0000001f , 0x0000008d 
- 00008268  0x00000ce7 branch  0x00002043 
- 00008269  0x00000cea set0  0x0000001c , 0x00000000 
- 00008270  0x00000ceb force  0x00000000 , 0x0000001b 
- 00008271  0x00000cec branch  0x00002043 
- 00008272  0x00000cef call  0x0000225a 
- 00008273  0x00000cf0 rtn  0x00000005 
- 00008274  0x00000cf1 force  0x00000001 , 0x00000002 
- 00008275  0x00000cf2 jam  0x00000005 , 0x0000016e 
- 00008276  0x00000cf3 branch  0x0000205c 
- 00008277  0x00000cf6 bpatch  0x00000006 , 0x00004000 
- 00008278  0x00000cf8 fetch  0x00000006 , 0x000041d0 
- 00008279  0x00000cf9 branch  0x00002043 , 0x00000034 
- 00008280  0x00000cfa jam  0x00000001 , 0x00004681 
- 00008281  0x00000cfc jam  0x00000003 , 0x00000055 
- 00008282  0x00000cfd branch  0x0000205b 
- 00008283  0x00000d00 force  0x00000025 , 0x00000002 
- 00008284  0x00000d02 bpatch  0x00000007 , 0x00004000 
- 00008285  0x00000d03 fetch  0x00000001 , 0x000000f1 
- 00008286  0x00000d04 branch  0x00002062 , 0x00000034 
- 00008287  0x00000d05 lshift3  0x0000003f , 0x0000003f 
- 00008288  0x00000d06 lshift4  0x0000003f , 0x0000003f 
- 00008289  0x00000d07 increase  0xffffffff , 0x0000003f 
- 00008290  0x00000d09 store  0x00000001 , 0x000040a6 
- 00008291  0x00000d0a store  0x00000001 , 0x000000f0 
- 00008292  0x00000d0b jam  0x0000001f , 0x0000008e 
- 00008293  0x00000d0c set0  0x0000000c , 0x00000000 
- 00008294  0x00000d0d call  0x0000223b 
- 00008295  0x00000d0e nbranch  0x00002083 , 0x00000005 
- 00008296  0x00000d0f call  0x00002a6f 
- 00008297  0x00000d10 store  0x00000001 , 0x00000077 
- 00008298  0x00000d11 storet  0x00000001 , 0x0000007c 
- 00008299  0x00000d12 fetch  0x00000006 , 0x000041d0 
- 00008300  0x00000d13 store  0x00000006 , 0x00000040 
- 00008301  0x00000d14 bpatch  0x00000008 , 0x00004001 
- 00008302  0x00000d15 call  0x00007f15 
- 00008303  0x00000d16 force  0x00000000 , 0x0000003f 
- 00008304  0x00000d17 compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00008305  0x00000d18 nsetflag  0x00000001 , 0x00000005 , 0x0000003f 
- 00008306  0x00000d19 set1  0x00000003 , 0x0000003f 
- 00008307  0x00000d1a store  0x00000001 , 0x00000030 
- 00008308  0x00000d1b jam  0x00000003 , 0x00000a99 
- 00008309  0x00000d1c call  0x00007d86 
- 00008310  0x00000d1d force  0x00000000 , 0x0000003f 
- 00008311  0x00000d1e setflag  0x00000001 , 0x00000004 , 0x0000003f 
- 00008312  0x00000d1f store  0x00000001 , 0x0000004c 
- 00008313  0x00000d20 setarg  0x00000000 
- 00008314  0x00000d21 set1  0x00000001 , 0x0000003f 
- 00008315  0x00000d22 store  0x00000001 , 0x00000031 
- 00008316  0x00000d23 enable  0x00000029 
- 00008317  0x00000d24 call  0x00002223 
- 00008318  0x00000d25 disable  0x00000029 
- 00008319  0x00000d26 force  0x00000003 , 0x00000007 
- 00008320  0x00000d27 fetch  0x00000002 , 0x000040b9 
- 00008321  0x00000d28 call  0x00007f08 
- 00008322  0x00000d29 branch  0x00002043 
- 00008323  0x00000d2b bpatch  0x00000009 , 0x00004001 
- 00008324  0x00000d2c fetch  0x00000006 , 0x000041d0 
- 00008325  0x00000d2d store  0x00000006 , 0x00000040 
- 00008326  0x00000d2e compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00008327  0x00000d2f branch  0x00002089 , 0x00000001 
- 00008328  0x00000d30 branch  0x00002043 
- 00008329  0x00000d32 arg  0x00000101 , 0x00000005 
- 00008330  0x00000d33 arg  0x00000008 , 0x00000039 
- 00008331  0x00000d34 call  0x00007ec6 
- 00008332  0x00000d35 jam  0x00000004 , 0x00000a99 
- 00008333  0x00000d36 call  0x00007d86 
- 00008334  0x00000d37 branch  0x00002043 
- 00008335  0x00000d3f rtnmark0  0x0000001c 
- 00008336  0x00000d40 force  0x00000001 , 0x00000007 
- 00008337  0x00000d41 call  0x00007f16 
- 00008338  0x00000d42 nsetflag  0x00000034 , 0x0000001c , 0x00000000 
- 00008339  0x00000d43 nbranch  0x00002095 , 0x00000034 
- 00008340  0x00000d44 rtn 
- 00008341  0x00000d49 bpatch  0x0000000a , 0x00004001 
- 00008342  0x00000d4a fetcht  0x00000002 , 0x000040bb 
- 00008343  0x00000d4b force  0x00000004 , 0x00000007 
- 00008344  0x00000d4c call  0x0000271c 
- 00008345  0x00000d4d rtn  0x00000028 
- 00008346  0x00000d4e call  0x000028a4 
- 00008347  0x00000d4f force  0x00000000 , 0x00000024 
- 00008348  0x00000d51 rtn  0x00000003 
- 00008349  0x00000d52 set0  0x0000000b , 0x00000000 
- 00008350  0x00000d53 set0  0x00000000 , 0x00000000 
- 00008351  0x00000d55 add  0x00000022 , 0x00000001 , 0x00000021 
- 00008352  0x00000d56 isolate1  0x0000001e , 0x00000000 
- 00008353  0x00000d57 setflag  0x00000001 , 0x00000002 , 0x00000024 
- 00008354  0x00000d58 compare  0x00000000 , 0x00000021 , 0x00000002 
- 00008355  0x00000d59 nbranch  0x000020be , 0x00000001 
- 00008356  0x00000d5c bpatch  0x0000000b , 0x00004001 
- 00008357  0x00000d5d fetch  0x00000001 , 0x00000012 
- 00008358  0x00000d5e increase  0x00000001 , 0x0000003f 
- 00008359  0x00000d5f store  0x00000001 , 0x00000012 
- 00008360  0x00000d60 call  0x000028d8 
- 00008361  0x00000d61 call  0x000028d2 
- 00008362  0x00000d62 call  0x000028f2 
- 00008363  0x00000d63 call  0x00002a51 
- 00008364  0x00000d64 call  0x00002a56 
- 00008365  0x00000d65 call  0x00002a64 
- 00008366  0x00000d66 call  0x0000264d 
- 00008367  0x00000d67 call  0x000020b1 
- 00008368  0x00000d68 branch  0x0000209c 
- 00008369  0x00000d6b bpatch  0x0000000c , 0x00004001 
- 00008370  0x00000d6c fetch  0x00000001 , 0x0000008d 
- 00008371  0x00000d6d increase  0xffffffff , 0x0000003f 
- 00008372  0x00000d6e store  0x00000001 , 0x0000008d 
- 00008373  0x00000d6f rtn  0x00000002 
- 00008374  0x00000d70 jam  0x0000001f , 0x0000008d 
- 00008375  0x00000d71 fetch  0x00000001 , 0x0000008f 
- 00008376  0x00000d72 increase  0xffffffff , 0x0000003f 
- 00008377  0x00000d73 store  0x00000001 , 0x0000008f 
- 00008378  0x00000d74 rtn  0x00000002 
- 00008379  0x00000d75 setflip  0x0000001e , 0x00000000 
- 00008380  0x00000d76 jam  0x000000ff , 0x0000008f 
- 00008381  0x00000d77 rtn 
- 00008382  0x00000d7a bpatch  0x0000000d , 0x00004001 
- 00008383  0x00000d7b call  0x000028d8 
- 00008384  0x00000d7c call  0x000028cc 
- 00008385  0x00000d7d call  0x000028f2 
- 00008386  0x00000d7e call  0x00002a5b 
- 00008387  0x00000d7f call  0x000029eb 
- 00008388  0x00000d80 call  0x00002a0d 
- 00008389  0x00000d81 branch  0x000020c8 , 0x00000018 
- 00008390  0x00000d82 call  0x000020b1 
- 00008391  0x00000d83 branch  0x0000209f 
- 00008392  0x00000d85 bpatch  0x0000000e , 0x00004001 
- 00008393  0x00000d86 call  0x000029bb 
- 00008394  0x00000d87 call  0x00002a6b 
- 00008395  0x00000d88 call  0x0000251e 
- 00008396  0x00000d89 set0  0x00000001 , 0x00000000 
- 00008397  0x00000d8a rtnmark0  0x0000000b 
- 00008398  0x00000d8c bpatch  0x0000000f , 0x00004001 
- 00008399  0x00000d8e fetch  0x00000001 , 0x00000013 
- 00008400  0x00000d8f increase  0x00000001 , 0x0000003f 
- 00008401  0x00000d90 store  0x00000001 , 0x00000013 
- 00008402  0x00000d91 rtn 
- 00008403  0x00000d9a bpatch  0x00000010 , 0x00004002 
- 00008404  0x00000d9b enable  0x00000029 
- 00008405  0x00000d9c enable  0x00000030 
- 00008406  0x00000d9d fetch  0x00000002 , 0x000040b5 
- 00008407  0x00000d9e branch  0x000020db , 0x00000034 
- 00008408  0x00000d9f force  0x00000008 , 0x00000007 
- 00008409  0x00000da0 call  0x00007f16 
- 00008410  0x00000da1 nrtn  0x00000034 
- 00008411  0x00000da3 bpatch  0x00000011 , 0x00004002 
- 00008412  0x00000da4 fetcht  0x00000002 , 0x000040b7 
- 00008413  0x00000da5 force  0x00000028 , 0x00000007 
- 00008414  0x00000da6 call  0x0000271c 
- 00008415  0x00000da7 branch  0x00002114 , 0x00000028 
- 00008416  0x00000da8 force  0x00000003 , 0x00000007 
- 00008417  0x00000da9 call  0x00007f16 
- 00008418  0x00000daa nbranch  0x000020f0 , 0x00000034 
- 00008419  0x00000dab fetch  0x00000001 , 0x0000004c 
- 00008420  0x00000dac bbit1  0x00000004 , 0x000020e6 
- 00008421  0x00000dad branch  0x000020e9 
- 00008422  0x00000daf arg  0x00000101 , 0x00000005 
- 00008423  0x00000db0 arg  0x00000008 , 0x00000039 
- 00008424  0x00000db1 call  0x00007ec6 
- 00008425  0x00000db3 bpatch  0x00000012 , 0x00004002 
- 00008426  0x00000db4 jam  0x00000000 , 0x00000030 
- 00008427  0x00000db5 call  0x00005cf7 
- 00008428  0x00000db6 jam  0x00000000 , 0x00004681 
- 00008429  0x00000db7 jam  0x00000013 , 0x00000a99 
- 00008430  0x00000db8 call  0x00007d86 
- 00008431  0x00000db9 branch  0x00002114 
- 00008432  0x00000dbc bpatch  0x00000013 , 0x00004002 
- 00008433  0x00000dbd force  0x00000000 , 0x0000000b 
- 00008434  0x00000dbe until  0x00000023 , 0x00000026 
- 00008435  0x00000dbf fetch  0x00000001 , 0x000000f2 
- 00008436  0x00000dc0 increase  0xffffffff , 0x0000003f 
- 00008437  0x00000dc1 ixor  0x00000022 , 0x0000003f 
- 00008438  0x00000dc2 compare  0x00000000 , 0x0000003f , 0x00000003 
- 00008439  0x00000dc3 nbranch  0x000020f0 , 0x00000001 
- 00008440  0x00000dc4 deposit  0x00000004 
- 00008441  0x00000dc5 store  0x00000001 , 0x00000181 
- 00008442  0x00000dc6 force  0x00000000 , 0x00000026 
- 00008443  0x00000dc7 force  0x00000000 , 0x00000024 
- 00008444  0x00000dca bpatch  0x00000014 , 0x00004002 
- 00008445  0x00000dcb branch  0x00002114 , 0x00000003 
- 00008446  0x00000dcc call  0x000028dc 
- 00008447  0x00000dcd arg  0x00000600 , 0x0000000b 
- 00008448  0x00000dce until  0x00000023 , 0x00000026 
- 00008449  0x00000dd0 bpatch  0x00000015 , 0x00004002 
- 00008450  0x00000dd1 fetch  0x00000004 , 0x000000f2 
- 00008451  0x00000dd2 iforce  0x00000021 
- 00008452  0x00000dd3 increase  0x00000001 , 0x0000003f 
- 00008453  0x00000dd4 store  0x00000004 , 0x000000f2 
- 00008454  0x00000dd5 isolate1  0x0000000c , 0x00000000 
- 00008455  0x00000dd6 setflag  0x00000001 , 0x00000002 , 0x00000024 
- 00008456  0x00000dd7 compare  0x00000000 , 0x00000021 , 0x00000002 
- 00008457  0x00000dd8 nbranch  0x00002128 , 0x00000001 
- 00008458  0x00000dd9 fetch  0x00000001 , 0x0000000c 
- 00008459  0x00000dda increase  0x00000001 , 0x0000003f 
- 00008460  0x00000ddb store  0x00000001 , 0x0000000c 
- 00008461  0x00000ddc call  0x000028d2 
- 00008462  0x00000ddd call  0x00002a51 
- 00008463  0x00000dde call  0x00002a56 
- 00008464  0x00000ddf call  0x00002a64 
- 00008465  0x00000de0 call  0x0000264d 
- 00008466  0x00000de1 call  0x0000211a 
- 00008467  0x00000de2 branch  0x000020fc 
- 00008468  0x00000de4 bpatch  0x00000016 , 0x00004002 
- 00008469  0x00000de5 disable  0x00000029 
- 00008470  0x00000de6 fetch  0x00000002 , 0x000040b5 
- 00008471  0x00000de7 rtn  0x00000034 
- 00008472  0x00000de8 force  0x00000008 , 0x00000007 
- 00008473  0x00000de9 branch  0x00007f08 
- 00008474  0x00000dec bpatch  0x00000017 , 0x00004002 
- 00008475  0x00000ded fetch  0x00000001 , 0x0000008e 
- 00008476  0x00000dee increase  0xffffffff , 0x0000003f 
- 00008477  0x00000def store  0x00000001 , 0x0000008e 
- 00008478  0x00000df0 rtn  0x00000002 
- 00008479  0x00000df1 jam  0x0000001f , 0x0000008e 
- 00008480  0x00000df2 fetch  0x00000001 , 0x000000f0 
- 00008481  0x00000df3 increase  0xffffffff , 0x0000003f 
- 00008482  0x00000df4 store  0x00000001 , 0x000000f0 
- 00008483  0x00000df5 rtn  0x00000002 
- 00008484  0x00000df6 setflip  0x0000000c , 0x00000000 
- 00008485  0x00000df7 fetch  0x00000001 , 0x000040a6 
- 00008486  0x00000df8 store  0x00000001 , 0x000000f0 
- 00008487  0x00000df9 rtn 
- 00008488  0x00000dfc bpatch  0x00000018 , 0x00004003 
- 00008489  0x00000dfd call  0x000028cc 
- 00008490  0x00000dfe call  0x00002a5b 
- 00008491  0x00000dff call  0x000029eb 
- 00008492  0x00000e00 call  0x00002a0d 
- 00008493  0x00000e01 branch  0x00002130 , 0x00000018 
- 00008494  0x00000e02 call  0x0000211a 
- 00008495  0x00000e03 branch  0x00002101 
- 00008496  0x00000e05 call  0x0000264d 
- 00008497  0x00000e06 fetch  0x00000001 , 0x0000000d 
- 00008498  0x00000e07 increase  0x00000001 , 0x0000003f 
- 00008499  0x00000e08 store  0x00000001 , 0x0000000d 
- 00008500  0x00000e09 force  0x00000000 , 0x0000001b 
- 00008501  0x00000e0a fetch  0x00000004 , 0x000000f2 
- 00008502  0x00000e0c bpatch  0x00000019 , 0x00004003 
- 00008503  0x00000e0d call  0x00002a4f 
- 00008504  0x00000e0e call  0x000028dc 
- 00008505  0x00000e0f increase  0x00000001 , 0x00000026 
- 00008506  0x00000e11 and_into  0x000001fd , 0x00000021 
- 00008507  0x00000e12 and_into  0x000001fc , 0x00000024 
- 00008508  0x00000e13 call  0x000028d2 
- 00008509  0x00000e14 call  0x00002a51 
- 00008510  0x00000e15 call  0x00002a56 
- 00008511  0x00000e16 call  0x00002a64 
- 00008512  0x00000e17 deposit  0x00000022 
- 00008513  0x00000e18 store  0x00000004 , 0x00000161 
- 00008514  0x00000e19 force  0x00000000 , 0x00000004 
- 00008515  0x00000e1a force  0x00000002 , 0x00000001 
- 00008516  0x00000e1b call  0x00002a6b 
- 00008517  0x00000e1c call  0x00002766 
- 00008518  0x00000e1e bpatch  0x0000001a , 0x00004003 
- 00008519  0x00000e1f call  0x00002a4d 
- 00008520  0x00000e20 or_into  0x00000002 , 0x00000021 
- 00008521  0x00000e21 and_into  0x000001fc , 0x00000024 
- 00008522  0x00000e22 call  0x000028cc 
- 00008523  0x00000e23 call  0x00002a5b 
- 00008524  0x00000e24 call  0x000029eb 
- 00008525  0x00000e25 call  0x00002a0d 
- 00008526  0x00000e26 call  0x0000264d , 0x00000018 
- 00008527  0x00000e27 branch  0x00002155 , 0x00000018 
- 00008528  0x00000e28 fetch  0x00000001 , 0x00000010 
- 00008529  0x00000e29 branch  0x000020fc , 0x00000034 
- 00008530  0x00000e2a increase  0xffffffff , 0x0000003f 
- 00008531  0x00000e2b store  0x00000001 , 0x00000010 
- 00008532  0x00000e2c branch  0x00002136 
- 00008533  0x00000e2f bpatch  0x0000001b , 0x00004003 
- 00008534  0x00000e30 fetch  0x00000001 , 0x0000000e 
- 00008535  0x00000e31 increase  0x00000001 , 0x0000003f 
- 00008536  0x00000e32 store  0x00000001 , 0x0000000e 
- 00008537  0x00000e33 call  0x00002435 
- 00008538  0x00000e35 call  0x000022f2 
- 00008539  0x00000e36 branch  0x0000215f , 0x00000018 
- 00008540  0x00000e37 call  0x00002455 
- 00008541  0x00000e38 nbranch  0x0000215a , 0x00000034 
- 00008542  0x00000e39 branch  0x000020fc 
- 00008543  0x00000e3c bpatch  0x0000001c , 0x00004003 
- 00008544  0x00000e3d fetch  0x00000001 , 0x00000030 
- 00008545  0x00000e3e set0  0x00000003 , 0x0000003f 
- 00008546  0x00000e3f store  0x00000001 , 0x00000030 
- 00008547  0x00000e40 call  0x00002440 
- 00008548  0x00000e41 disable  0x00000029 
- 00008549  0x00000e42 rtn 
- 00008550  0x00000e46 bpatch  0x0000001d , 0x00004003 
- 00008551  0x00000e47 enable  0x00000029 
- 00008552  0x00000e48 enable  0x00000030 
- 00008553  0x00000e49 call  0x000021e1 
- 00008554  0x00000e4a rtn  0x00000028 
- 00008555  0x00000e4b call  0x00002c69 
- 00008556  0x00000e4c call  0x00002a4f 
- 00008557  0x00000e4d add  0x00000022 , 0x00000001 , 0x00000021 
- 00008558  0x00000e4e call  0x000028e2 
- 00008559  0x00000e4f force  0x00000003 , 0x00000024 
- 00008560  0x00000e50 call  0x00006cc2 
- 00008561  0x00000e51 call  0x00002489 
- 00008562  0x00000e52 call  0x000028d2 
- 00008563  0x00000e53 call  0x00002a51 
- 00008564  0x00000e54 call  0x00002a56 
- 00008565  0x00000e55 call  0x00002a64 
- 00008566  0x00000e56 call  0x00002762 
- 00008567  0x00000e58 bpatch  0x0000001e , 0x00004003 
- 00008568  0x00000e59 call  0x00005d08 
- 00008569  0x00000e5a call  0x000022e4 
- 00008570  0x00000e5b nbranch  0x00002180 , 0x0000002d 
- 00008571  0x00000e5c call  0x00002a88 
- 00008572  0x00000e5d call  0x00002728 
- 00008573  0x00000e5e fetch  0x00000001 , 0x0000000f 
- 00008574  0x00000e5f increase  0x00000001 , 0x0000003f 
- 00008575  0x00000e60 store  0x00000001 , 0x0000000f 
- 00008576  0x00000e62 bpatch  0x0000001f , 0x00004003 
- 00008577  0x00000e63 call  0x00006caa 
- 00008578  0x00000e64 call  0x0000218b 
- 00008579  0x00000e65 nrtn  0x00000029 
- 00008580  0x00000e66 call  0x000026f3 
- 00008581  0x00000e67 nbranch  0x00002188 , 0x00000034 
- 00008582  0x00000e69 disable  0x00000029 
- 00008583  0x00000e6a rtn 
- 00008584  0x00000e6d call  0x00002489 
- 00008585  0x00000e6e call  0x000022da 
- 00008586  0x00000e6f branch  0x00002177 
- 00008587  0x00000e73 branch  0x0000218e , 0x0000002d 
- 00008588  0x00000e74 call  0x00002a7f 
- 00008589  0x00000e75 branch  0x0000219c , 0x00000002 
- 00008590  0x00000e77 call  0x000021a7 
- 00008591  0x00000e78 nbranch  0x0000219c , 0x00000028 
- 00008592  0x00000e79 fetch  0x00000001 , 0x0000004c 
- 00008593  0x00000e7a rtnbit0  0x00000004 
- 00008594  0x00000e7b rtnbit1  0x00000003 
- 00008595  0x00000e7c fetch  0x00000001 , 0x0000004b 
- 00008596  0x00000e7d rtnbit1  0x00000003 
- 00008597  0x00000e7e call  0x000021ae 
- 00008598  0x00000e7f nrtn  0x00000034 
- 00008599  0x00000e80 fetch  0x00000001 , 0x0000016e 
- 00008600  0x00000e81 increase  0xffffffff , 0x0000003f 
- 00008601  0x00000e82 store  0x00000001 , 0x0000016e 
- 00008602  0x00000e83 nrtn  0x00000034 
- 00008603  0x00000e84 branch  0x00006006 
- 00008604  0x00000e87 bpatch  0x00000020 , 0x00004004 
- 00008605  0x00000e88 call  0x0000245d 
- 00008606  0x00000e89 disable  0x00000029 
- 00008607  0x00000e8a fetch  0x00000001 , 0x0000004c 
- 00008608  0x00000e8b bbit1  0x00000004 , 0x000021a2 
- 00008609  0x00000e8c rtn 
- 00008610  0x00000e8f fetch  0x00000001 , 0x0000004c 
- 00008611  0x00000e90 rtnbit1  0x00000003 
- 00008612  0x00000e92 arg  0x00000101 , 0x00000005 
- 00008613  0x00000e93 arg  0x00000008 , 0x00000039 
- 00008614  0x00000e94 branch  0x00007ec6 
- 00008615  0x00000e97 bpatch  0x00000021 , 0x00004004 
- 00008616  0x00000e98 enable  0x00000028 
- 00008617  0x00000e99 fetch  0x00000001 , 0x0000004b 
- 00008618  0x00000e9a rtnbit0  0x00000003 
- 00008619  0x00000e9b call  0x000021ae 
- 00008620  0x00000e9c nrtn  0x00000034 
- 00008621  0x00000e9d branch  0x00007fe9 
- 00008622  0x00000ea0 fetch  0x00000001 , 0x00000072 
- 00008623  0x00000ea1 increase  0xffffffff , 0x0000003f 
- 00008624  0x00000ea2 store  0x00000001 , 0x00000072 
- 00008625  0x00000ea3 rtn 
- 00008626  0x00000ea6 bpatch  0x00000022 , 0x00004004 
- 00008627  0x00000ea7 fetch  0x00000001 , 0x00000030 
- 00008628  0x00000ea8 bbit1  0x00000007 , 0x000021bb 
- 00008629  0x00000ea9 fetch  0x00000001 , 0x000009b5 
- 00008630  0x00000eaa branch  0x000021bb , 0x00000034 
- 00008631  0x00000eab jam  0x00000000 , 0x000009b5 
- 00008632  0x00000eac jam  0x00000018 , 0x00000a99 
- 00008633  0x00000ead call  0x00007d86 
- 00008634  0x00000eae branch  0x000021bb 
- 00008635  0x00000eb0 bpatch  0x00000023 , 0x00004004 
- 00008636  0x00000eb1 call  0x00002254 
- 00008637  0x00000eb2 fetch  0x00000001 , 0x00000030 
- 00008638  0x00000eb3 set1  0x00000007 , 0x0000003f 
- 00008639  0x00000eb4 store  0x00000001 , 0x00000030 
- 00008640  0x00000eb5 jam  0x00000001 , 0x000041bd 
- 00008641  0x00000eb6 fetch  0x00000001 , 0x00000055 
- 00008642  0x00000eb7 bne  0x00000016 , 0x000021c3 
- 00008643  0x00000eb9 rtn 
- 00008644  0x00000ebc jam  0x00000001 , 0x000009b5 
- 00008645  0x00000ebe fetch  0x00000001 , 0x00000030 
- 00008646  0x00000ebf set0  0x00000007 , 0x0000003f 
- 00008647  0x00000ec0 store  0x00000001 , 0x00000030 
- 00008648  0x00000ec1 rtn 
- 00008649  0x00000ec6 bpatch  0x00000024 , 0x00004004 
- 00008650  0x00000ec7 disable  0x00000028 
- 00008651  0x00000ec8 fetch  0x00000002 , 0x00000032 
- 00008652  0x00000ec9 arg  0x0000ffff , 0x00000002 
- 00008653  0x00000eca isub  0x00000002 , 0x0000003e 
- 00008654  0x00000ecb nrtn  0x00000005 
- 00008655  0x00000ecc fetch  0x00000004 , 0x00000034 
- 00008656  0x00000ecd branch  0x000021d3 , 0x00000030 
- 00008657  0x00000ece isub  0x00000028 , 0x0000003f 
- 00008658  0x00000ecf branch  0x000021d4 
- 00008659  0x00000ed1 isub  0x00000022 , 0x0000003f 
- 00008660  0x00000ed3 sub  0x0000003f , 0x00000004 , 0x0000003e 
- 00008661  0x00000ed4 nrtn  0x00000002 
- 00008662  0x00000ed5 force  0x00000000 , 0x0000003f 
- 00008663  0x00000ed6 store  0x00000002 , 0x00000032 
- 00008664  0x00000ed7 branch  0x00007fe7 
- 00008665  0x00000edc copy  0x0000003f , 0x00000002 
- 00008666  0x00000edd bpatch  0x00000025 , 0x00004004 
- 00008667  0x00000ede storet  0x00000004 , 0x00000034 
- 00008668  0x00000ee0 jam  0x00000001 , 0x0000455b 
- 00008669  0x00000ee1 setarg  0x0000ffff 
- 00008670  0x00000ee2 store  0x00000002 , 0x00000032 
- 00008671  0x00000ee3 jam  0x00000001 , 0x00000073 
- 00008672  0x00000ee4 rtn 
- 00008673  0x00000ee8 bpatch  0x00000026 , 0x00004004 
- 00008674  0x00000ee9 call  0x000021c9 
- 00008675  0x00000eea nrtn  0x00000028 
- 00008676  0x00000eeb disable  0x00000028 
- 00008677  0x00000eec jam  0x00000020 , 0x00000011 
- 00008678  0x00000eed set0  0x0000000b , 0x00000000 
- 00008679  0x00000eef call  0x00002a4f 
- 00008680  0x00000ef0 call  0x000022e6 
- 00008681  0x00000ef1 bmark1  0x0000000b , 0x000021f4 
- 00008682  0x00000ef2 call  0x00002455 
- 00008683  0x00000ef3 nbranch  0x000021e7 , 0x00000034 
- 00008684  0x00000ef5 bpatch  0x00000027 , 0x00004004 
- 00008685  0x00000ef6 disable  0x00000028 
- 00008686  0x00000ef7 deposit  0x00000022 
- 00008687  0x00000ef8 store  0x00000004 , 0x000040ca 
- 00008688  0x00000ef9 enable  0x00000030 
- 00008689  0x00000efa enable  0x00000029 
- 00008690  0x00000efb jam  0x0000002a , 0x00000a99 
- 00008691  0x00000efc branch  0x00007d86 
- 00008692  0x00000eff bpatch  0x00000028 , 0x00004005 
- 00008693  0x00000f00 call  0x00002a4d 
- 00008694  0x00000f01 arg  0x00000010 , 0x00000001 
- 00008695  0x00000f02 call  0x000022dc 
- 00008696  0x00000f03 disable  0x00000030 
- 00008697  0x00000f04 disable  0x00000029 
- 00008698  0x00000f05 call  0x00002818 
- 00008699  0x00000f06 call  0x00002435 
- 00008700  0x00000f08 bpatch  0x00000029 , 0x00004005 
- 00008701  0x00000f09 call  0x0000247c 
- 00008702  0x00000f0a branch  0x00002202 , 0x0000002d 
- 00008703  0x00000f0b call  0x00002455 
- 00008704  0x00000f0c nbranch  0x000021fc , 0x00000034 
- 00008705  0x00000f0d branch  0x000021ec 
- 00008706  0x00000f0f fetch  0x00000001 , 0x00000031 
- 00008707  0x00000f10 set0  0x00000001 , 0x0000003f 
- 00008708  0x00000f11 store  0x00000001 , 0x00000031 
- 00008709  0x00000f12 call  0x00002a88 
- 00008710  0x00000f13 call  0x00002841 
- 00008711  0x00000f14 enable  0x00000028 
- 00008712  0x00000f15 jam  0x0000002b , 0x00000a99 
- 00008713  0x00000f16 branch  0x00007d86 
- 00008714  0x00000f1c bpatch  0x0000002a , 0x00004005 
- 00008715  0x00000f1d set1  0x00000009 , 0x00000000 
- 00008716  0x00000f1e deposit  0x00000011 
- 00008717  0x00000f1f store  0x00000002 , 0x0000001e 
- 00008718  0x00000f20 force  0x00000050 , 0x00000039 
- 00008719  0x00000f21 arg  0x0000043f , 0x00000005 
- 00008720  0x00000f22 add  0x00000011 , 0x00000001 , 0x00000006 
- 00008721  0x00000f23 ifetch  0x00000001 , 0x00000006 
- 00008722  0x00000f24 copy  0x00000011 , 0x00000006 
- 00008723  0x00000f25 bbit1  0x00000000 , 0x00007f01 
- 00008724  0x00000f26 arg  0x00000030 , 0x00000005 
- 00008725  0x00000f27 call  0x00007f01 
- 00008726  0x00000f28 disable  0x0000002e 
- 00008727  0x00000f29 fetch  0x00000001 , 0x00000077 
- 00008728  0x00000f2a iforce  0x00000004 
- 00008729  0x00000f2b jam  0x00000001 , 0x0000008a 
- 00008730  0x00000f2c branch  0x0000221c , 0x00000029 
- 00008731  0x00000f2d jam  0x00000001 , 0x0000008a 
- 00008732  0x00000f2f fetch  0x00000001 , 0x00000030 
- 00008733  0x00000f30 rtnbit0  0x00000001 
- 00008734  0x00000f31 fetch  0x00000001 , 0x00000073 
- 00008735  0x00000f32 store  0x00000001 , 0x0000008a 
- 00008736  0x00000f33 fetch  0x00000001 , 0x00000074 
- 00008737  0x00000f34 store  0x00000001 , 0x0000008b 
- 00008738  0x00000f35 rtn 
- 00008739  0x00000f38 bpatch  0x0000002b , 0x00004005 
- 00008740  0x00000f39 fetch  0x00000002 , 0x0000001e 
- 00008741  0x00000f3a iforce  0x00000005 
- 00008742  0x00000f3b force  0x00000050 , 0x00000039 
- 00008743  0x00000f3c arg  0x0000043f , 0x00000006 
- 00008744  0x00000f3d branch  0x00007f01 , 0x00000036 
- 00008745  0x00000f3e arg  0x00000030 , 0x00000006 
- 00008746  0x00000f3f branch  0x00007f01 
- 00008747  0x00000f44 arg  0x00000001 , 0x00000039 
- 00008748  0x00000f45 fetcht  0x00000001 , 0x00000015 
- 00008749  0x00000f47 increase  0x00000001 , 0x00000002 
- 00008750  0x00000f48 compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00008751  0x00000f49 nbranch  0x00002231 , 0x00000001 
- 00008752  0x00000f4a arg  0x00000000 , 0x00000002 
- 00008753  0x00000f4c storet  0x00000001 , 0x00000015 
- 00008754  0x00000f4d mul32  0x00000002 , 0x00000050 , 0x0000003f 
- 00008755  0x00000f4e arg  0x00004040 , 0x00000011 
- 00008756  0x00000f4f iadd  0x00000011 , 0x00000011 
- 00008757  0x00000f50 ifetch  0x00000001 , 0x00000011 
- 00008758  0x00000f51 bbit1  0x00000001 , 0x00002239 
- 00008759  0x00000f52 rtnbit1  0x00000000 
- 00008760  0x00000f53 rtnbit1  0x00000003 
- 00008761  0x00000f55 loop  0x0000222d 
- 00008762  0x00000f56 rtn 
- 00008763  0x00000f59 bpatch  0x0000002c , 0x00004005 
- 00008764  0x00000f5a arg  0x0000226a , 0x00000013 
- 00008765  0x00000f5b call  0x00002261 
- 00008766  0x00000f5c nrtn  0x00000005 
- 00008767  0x00000f5d deposit  0x00000011 
- 00008768  0x00000f5e store  0x00000002 , 0x0000001e 
- 00008769  0x00000f5f force  0x00000000 , 0x0000003e 
- 00008770  0x00000f60 rtn 
- 00008771  0x00000f65 call  0x00002725 
- 00008772  0x00000f66 branch  0x0000224b , 0x00000001 
- 00008773  0x00000f67 fetch  0x00000002 , 0x0000001e 
- 00008774  0x00000f68 add  0x0000003f , 0x00000017 , 0x00000005 
- 00008775  0x00000f69 fetch  0x00000001 , 0x00000047 
- 00008776  0x00000f6a istore  0x00000001 , 0x00000005 
- 00008777  0x00000f6b arg  0x000022aa , 0x00000013 
- 00008778  0x00000f6c branch  0x00002261 
- 00008779  0x00000f6f fetch  0x00000001 , 0x00000047 
- 00008780  0x00000f70 isolate1  0x00000003 , 0x0000003f 
- 00008781  0x00000f71 branch  0x00002250 , 0x00000001 
- 00008782  0x00000f72 force  0x00000001 , 0x0000003e 
- 00008783  0x00000f73 rtn 
- 00008784  0x00000f75 force  0x00000000 , 0x0000003e 
- 00008785  0x00000f76 rtn 
- 00008786  0x00000f7a arg  0x000022a7 , 0x00000013 
- 00008787  0x00000f7b branch  0x00002261 
- 00008788  0x00000f7e fetcht  0x00000002 , 0x0000001e 
- 00008789  0x00000f7f arg  0x000022cf , 0x00000013 
- 00008790  0x00000f80 branch  0x00002261 
- 00008791  0x00000f85 fetcht  0x00000001 , 0x000041cf 
- 00008792  0x00000f87 arg  0x00002275 , 0x00000013 
- 00008793  0x00000f88 branch  0x00002261 
- 00008794  0x00000f8b bpatch  0x0000002d , 0x00004005 
- 00008795  0x00000f8c fetcht  0x00000006 , 0x000041d0 
- 00008796  0x00000f8e arg  0x0000226e , 0x00000013 
- 00008797  0x00000f8f branch  0x00002261 
- 00008798  0x00000f92 arg  0x0000227b , 0x00000013 
- 00008799  0x00000f93 branch  0x00002261 
- 00008800  0x00000f96 arg  0x000022c6 , 0x00000013 
- 00008801  0x00000f98 bpatch  0x0000002e , 0x00004005 
- 00008802  0x00000f99 arg  0x00004040 , 0x00000011 
- 00008803  0x00000f9a arg  0x00000001 , 0x00000039 
- 00008804  0x00000f9c ifetch  0x00000001 , 0x00000011 
- 00008805  0x00000f9d copy  0x00000013 , 0x0000003d 
- 00008806  0x00000f9f increase  0x00000050 , 0x00000011 
- 00008807  0x00000fa0 loop  0x00002264 
- 00008808  0x00000fa1 force  0x00000001 , 0x0000003e 
- 00008809  0x00000fa2 rtn 
- 00008810  0x00000fa5 bbit1  0x00000000 , 0x00002266 
- 00008811  0x00000fa6 bbit1  0x00000003 , 0x00002266 
- 00008812  0x00000fa7 force  0x00000000 , 0x0000003e 
- 00008813  0x00000fa8 rtn 
- 00008814  0x00000fab bbit1  0x00000003 , 0x00002270 
- 00008815  0x00000fac bbit0  0x00000000 , 0x00002266 
- 00008816  0x00000fae add  0x00000011 , 0x00000010 , 0x00000006 
- 00008817  0x00000faf ifetch  0x00000006 , 0x00000006 
- 00008818  0x00000fb0 isub  0x00000002 , 0x0000003e 
- 00008819  0x00000fb1 rtn  0x00000005 
- 00008820  0x00000fb2 branch  0x00002266 
- 00008821  0x00000fb5 bbit0  0x00000000 , 0x00002266 
- 00008822  0x00000fb6 add  0x00000011 , 0x00000016 , 0x00000006 
- 00008823  0x00000fb7 ifetch  0x00000001 , 0x00000006 
- 00008824  0x00000fb8 isub  0x00000002 , 0x0000003e 
- 00008825  0x00000fb9 rtn  0x00000005 
- 00008826  0x00000fba branch  0x00002266 
- 00008827  0x00000fbd bbit0  0x00000001 , 0x00002266 
- 00008828  0x00000fbf call  0x000022b3 
- 00008829  0x00000fc0 call  0x00002297 
- 00008830  0x00000fc1 isub  0x00000002 , 0x0000003f 
- 00008831  0x00000fc2 increase  0x00000001 , 0x0000003f 
- 00008832  0x00000fc3 branch  0x00002291 , 0x00000002 
- 00008833  0x00000fc4 copy  0x00000006 , 0x00000012 
- 00008834  0x00000fc5 store  0x00000009 , 0x00000aa2 
- 00008835  0x00000fc6 fetch  0x00000001 , 0x000044c0 
- 00008836  0x00000fc7 nbranch  0x00002289 , 0x00000034 
- 00008837  0x00000fc8 fetch  0x00000009 , 0x00000aa2 
- 00008838  0x00000fc9 copy  0x00000012 , 0x00000006 
- 00008839  0x00000fca increase  0x00000005 , 0x0000003f 
- 00008840  0x00000fcb branch  0x0000228c 
- 00008841  0x00000fcd fetch  0x00000009 , 0x00000aa2 
- 00008842  0x00000fce copy  0x00000012 , 0x00000006 
- 00008843  0x00000fcf increase  0x00000014 , 0x0000003f 
- 00008844  0x00000fd1 nbranch  0x00002266 , 0x00000002 
- 00008845  0x00000fd3 copy  0x00000002 , 0x00000021 
- 00008846  0x00000fd4 call  0x000022bf 
- 00008847  0x00000fd5 force  0x00000000 , 0x0000003e 
- 00008848  0x00000fd6 rtn 
- 00008849  0x00000fda iforce  0x00000012 
- 00008850  0x00000fdb add  0x00000011 , 0x00000002 , 0x00000006 
- 00008851  0x00000fdc ifetch  0x00000002 , 0x00000006 
- 00008852  0x00000fdd branch  0x0000228d , 0x00000034 
- 00008853  0x00000fde call  0x000022bf 
- 00008854  0x00000fdf branch  0x0000227c 
- 00008855  0x00000fe2 rshift16  0x0000003f , 0x0000000b 
- 00008856  0x00000fe3 rshift8  0x0000000b , 0x0000000b 
- 00008857  0x00000fe4 branch  0x000022a1 , 0x00000005 
- 00008858  0x00000fe5 compare  0x0000000f , 0x0000000b , 0x0000000f 
- 00008859  0x00000fe6 nrtn  0x00000001 
- 00008860  0x00000fe7 rshift16  0x00000002 , 0x0000000b 
- 00008861  0x00000fe8 rshift8  0x0000000b , 0x0000000b 
- 00008862  0x00000fe9 nrtn  0x00000005 
- 00008863  0x00000fea set1  0x0000001c , 0x00000002 
- 00008864  0x00000feb rtn 
- 00008865  0x00000fed rshift16  0x00000002 , 0x0000000b 
- 00008866  0x00000fee rshift8  0x0000000b , 0x0000000b 
- 00008867  0x00000fef compare  0x0000000f , 0x0000000b , 0x0000000f 
- 00008868  0x00000ff0 nrtn  0x00000001 
- 00008869  0x00000ff1 set1  0x0000001c , 0x0000003f 
- 00008870  0x00000ff2 rtn 
- 00008871  0x00000ff5 bbit0  0x00000000 , 0x00002266 
- 00008872  0x00000ff6 force  0x00000000 , 0x0000003e 
- 00008873  0x00000ff7 rtn 
- 00008874  0x00000ffa bbit0  0x00000000 , 0x00002266 
- 00008875  0x00000ffb add  0x00000011 , 0x00000001 , 0x00000006 
- 00008876  0x00000ffc ifetch  0x00000001 , 0x00000006 
- 00008877  0x00000ffd bbit1  0x00000000 , 0x00002266 
- 00008878  0x00000ffe add  0x00000011 , 0x00000017 , 0x00000006 
- 00008879  0x00000fff ifetch  0x00000001 , 0x00000006 
- 00008880  0x00001000 bbit0  0x00000003 , 0x00002266 
- 00008881  0x00001001 force  0x00000000 , 0x0000003e 
- 00008882  0x00001002 rtn 
- 00008883  0x00001005 add  0x00000011 , 0x00000001 , 0x00000006 
- 00008884  0x00001006 ifetcht  0x00000001 , 0x00000006 
- 00008885  0x00001007 deposit  0x00000022 
- 00008886  0x00001008 isolate1  0x00000001 , 0x00000002 
- 00008887  0x00001009 add  0x00000011 , 0x00000004 , 0x00000006 
- 00008888  0x0000100a ifetcht  0x00000004 , 0x00000006 
- 00008889  0x0000100b rtn  0x00000001 
- 00008890  0x0000100c add  0x00000011 , 0x00000008 , 0x00000006 
- 00008891  0x0000100d ifetch  0x00000006 , 0x00000006 
- 00008892  0x0000100e call  0x00002854 
- 00008893  0x0000100f deposit  0x00000028 
- 00008894  0x00001010 rtn 
- 00008895  0x00001013 add  0x00000011 , 0x00000002 , 0x00000006 
- 00008896  0x00001014 add  0x00000011 , 0x00000004 , 0x00000005 
- 00008897  0x00001015 ifetch  0x00000002 , 0x00000006 
- 00008898  0x00001016 iadd  0x00000002 , 0x0000000b 
- 00008899  0x00001017 deposit  0x0000000b 
- 00008900  0x00001018 istore  0x00000004 , 0x00000005 
- 00008901  0x00001019 branch  0x00005449 
- 00008902  0x0000101d bbit0  0x00000001 , 0x00002266 
- 00008903  0x0000101e call  0x000022b3 
- 00008904  0x0000101f iadd  0x0000001b , 0x0000003f 
- 00008905  0x00001020 iadd  0x0000001b , 0x0000003f 
- 00008906  0x00001021 iadd  0x00000007 , 0x0000003f 
- 00008907  0x00001022 isub  0x00000002 , 0x0000003e 
- 00008908  0x00001023 nbranch  0x00002266 , 0x00000002 
- 00008909  0x00001024 force  0x00000000 , 0x0000003e 
- 00008910  0x00001025 rtn 
- 00008911  0x00001028 bbit0  0x00000000 , 0x00002266 
- 00008912  0x00001029 deposit  0x00000002 
- 00008913  0x0000102a isub  0x00000011 , 0x0000003e 
- 00008914  0x0000102b branch  0x00002266 , 0x0000003e 
- 00008915  0x0000102c add  0x00000011 , 0x00000001 , 0x00000006 
- 00008916  0x0000102d ifetch  0x00000001 , 0x00000006 
- 00008917  0x0000102e bbit1  0x00000000 , 0x00002266 
- 00008918  0x0000102f ifetch  0x00000001 , 0x00000011 
- 00008919  0x00001030 set0  0x00000007 , 0x0000003f 
- 00008920  0x00001031 istore  0x00000001 , 0x00000011 
- 00008921  0x00001032 branch  0x00002266 
- 00008922  0x00001036 bpatch  0x0000002f , 0x00004005 
- 00008923  0x00001037 call  0x00002a4f 
- 00008924  0x00001039 add  0x00000022 , 0x00000001 , 0x00000021 
- 00008925  0x0000103a call  0x000028e2 
- 00008926  0x0000103b force  0x00000003 , 0x00000024 
- 00008927  0x0000103c call  0x000028d2 
- 00008928  0x0000103d call  0x00002a51 
- 00008929  0x0000103e call  0x00002a56 
- 00008930  0x0000103f call  0x00002a64 
- 00008931  0x00001040 branch  0x00002762 
- 00008932  0x00001043 bpatch  0x00000030 , 0x00004006 
- 00008933  0x00001044 call  0x00002a4d 
- 00008934  0x00001046 add  0x00000022 , 0x00000001 , 0x00000021 
- 00008935  0x00001047 call  0x000028e2 
- 00008936  0x00001048 force  0x00000003 , 0x00000024 
- 00008937  0x00001049 call  0x000028cc 
- 00008938  0x0000104a call  0x0000242a 
- 00008939  0x0000104b call  0x000029f1 
- 00008940  0x0000104c call  0x00002a5b 
- 00008941  0x0000104d call  0x000029eb 
- 00008942  0x0000104f call  0x00002a0d 
- 00008943  0x00001050 nrtn  0x00000018 
- 00008944  0x00001051 call  0x000029bb 
- 00008945  0x00001052 branch  0x0000251c 
- 00008946  0x00001057 bpatch  0x00000031 , 0x00004006 
- 00008947  0x00001058 fetch  0x00000001 , 0x00000181 
- 00008948  0x00001059 iforce  0x00000004 
- 00008949  0x0000105a force  0x00000001 , 0x00000001 
- 00008950  0x0000105b call  0x000022da 
- 00008951  0x0000105c branch  0x000022e4 
- 00008952  0x00001068 fetch  0x00000001 , 0x00004093 
- 00008953  0x00001069 rtnbit0  0x00000000 
- 00008954  0x0000106a force  0x00000004 , 0x00000007 
- 00008955  0x0000106b call  0x00007f16 
- 00008956  0x0000106c nrtn  0x00000034 
- 00008957  0x0000106d fetcht  0x00000002 , 0x000040ad 
- 00008958  0x0000106e force  0x00000004 , 0x00000007 
- 00008959  0x0000106f call  0x0000271c 
- 00008960  0x00001070 rtn  0x00000028 
- 00008961  0x00001071 call  0x00002308 
- 00008962  0x00001072 force  0x00000004 , 0x00000007 
- 00008963  0x00001073 fetch  0x00000002 , 0x000040af 
- 00008964  0x00001074 nbranch  0x00007f08 , 0x00000018 
- 00008965  0x00001075 random  0x0000003f 
- 00008966  0x00001076 iand  0x00000035 , 0x0000003f 
- 00008967  0x00001077 branch  0x00007f08 
- 00008968  0x0000107b bpatch  0x00000032 , 0x00004006 
- 00008969  0x0000107c jam  0x00000000 , 0x00000181 
- 00008970  0x0000107d disable  0x00000030 
- 00008971  0x0000107e disable  0x0000002e 
- 00008972  0x0000107f call  0x000028a4 
- 00008973  0x00001080 and  0x00000022 , 0x000001fc , 0x00000021 
- 00008974  0x00001081 force  0x00000001 , 0x00000024 
- 00008975  0x00001082 call  0x000028d8 
- 00008976  0x00001083 call  0x000028cc 
- 00008977  0x00001084 setflip  0x0000001d , 0x00000000 
- 00008978  0x00001085 fetch  0x00000001 , 0x00000006 
- 00008979  0x00001086 increase  0x00000001 , 0x0000003f 
- 00008980  0x00001087 store  0x00000001 , 0x00000006 
- 00008981  0x00001088 call  0x000028f2 
- 00008982  0x00001089 call  0x000029eb 
- 00008983  0x0000108a call  0x00002a14 
- 00008984  0x0000108b nrtn  0x00000018 
- 00008985  0x0000108c bpatch  0x00000033 , 0x00004006 
- 00008986  0x0000108d force  0x00000000 , 0x0000001b 
- 00008987  0x0000108e call  0x000028f9 
- 00008988  0x0000108f fetch  0x00000001 , 0x00000007 
- 00008989  0x00001090 increase  0x00000001 , 0x0000003f 
- 00008990  0x00001091 store  0x00000001 , 0x00000007 
- 00008991  0x00001092 call  0x000028d8 
- 00008992  0x00001093 call  0x00002a4d 
- 00008993  0x00001094 or_into  0x00000002 , 0x00000021 
- 00008994  0x00001095 force  0x00000001 , 0x00000024 
- 00008995  0x00001096 call  0x000028d2 
- 00008996  0x00001097 call  0x000028f2 
- 00008997  0x00001098 call  0x00002a51 
- 00008998  0x00001099 call  0x00002a5f 
- 00008999  0x0000109a deposit  0x00000022 
- 00009000  0x0000109b store  0x00000004 , 0x00000161 
- 00009001  0x0000109c call  0x00002a64 
- 00009002  0x0000109d force  0x00000002 , 0x00000001 
- 00009003  0x0000109e force  0x00000000 , 0x00000004 
- 00009004  0x0000109f call  0x00002a6b 
- 00009005  0x000010a0 call  0x00002766 
- 00009006  0x000010a1 call  0x00002332 
- 00009007  0x000010a2 and_into  0x000001fd , 0x00000021 
- 00009008  0x000010a3 increase  0x00000001 , 0x00000026 
- 00009009  0x000010a4 rtn 
- 00009010  0x000010a7 bpatch  0x00000034 , 0x00004006 
- 00009011  0x000010a8 fetch  0x00000001 , 0x000040d1 
- 00009012  0x000010a9 rtn  0x00000034 
- 00009013  0x000010aa arg  0x0000018e , 0x00000005 
- 00009014  0x000010ab fetch  0x00000001 , 0x00004515 
- 00009015  0x000010ac copy  0x0000003f , 0x00000039 
- 00009016  0x000010ad increase  0x00000001 , 0x0000003f 
- 00009017  0x000010ae istore  0x00000001 , 0x00000005 
- 00009018  0x000010af copy  0x00000005 , 0x00000002 
- 00009019  0x000010b0 increase  0x00000001 , 0x0000003f 
- 00009020  0x000010b1 store  0x00000002 , 0x000041dc 
- 00009021  0x000010b2 copy  0x00000002 , 0x00000005 
- 00009022  0x000010b3 setarg  0x00000009 
- 00009023  0x000010b4 istore  0x00000001 , 0x00000005 
- 00009024  0x000010b5 arg  0x00004516 , 0x00000006 
- 00009025  0x000010b6 call  0x00007f01 
- 00009026  0x000010b8 arg  0x0000458d , 0x00000013 
- 00009027  0x000010b9 arg  0x00000004 , 0x00000039 
- 00009028  0x000010ba call  0x00002354 
- 00009029  0x000010bb arg  0x00004577 , 0x00000013 
- 00009030  0x000010bc arg  0x00000001 , 0x00000039 
- 00009031  0x000010bd call  0x00002354 
- 00009032  0x000010bf force  0x0000000a , 0x00000001 
- 00009033  0x000010c0 jam  0x00000002 , 0x000041db 
- 00009034  0x000010c1 setarg  0x0000018e 
- 00009035  0x000010c2 store  0x00000002 , 0x0000016f 
- 00009036  0x000010c3 call  0x00002a4d 
- 00009037  0x000010c4 call  0x000028d2 
- 00009038  0x000010c5 call  0x00002a51 
- 00009039  0x000010c6 call  0x00002a5f 
- 00009040  0x000010c7 call  0x00002a64 
- 00009041  0x000010c8 call  0x00002a6b 
- 00009042  0x000010c9 call  0x00002766 
- 00009043  0x000010ca rtn 
- 00009044  0x000010ce copy  0x00000005 , 0x00000002 
- 00009045  0x000010cf copy  0x00000013 , 0x00000006 
- 00009046  0x000010d0 ifetch  0x00000001 , 0x00000006 
- 00009047  0x000010d1 rtn  0x00000034 
- 00009048  0x000010d3 lshift  0x0000003f , 0x0000003f 
- 00009049  0x000010d4 loop  0x00002358 
- 00009050  0x000010d5 copy  0x0000003f , 0x00000011 
- 00009051  0x000010d6 increase  0x00000002 , 0x0000003f 
- 00009052  0x000010d7 copy  0x0000003f , 0x00000007 
- 00009053  0x000010d8 fetch  0x00000002 , 0x000041dc 
- 00009054  0x000010d9 iadd  0x00000007 , 0x0000003f 
- 00009055  0x000010da store  0x00000002 , 0x000041dc 
- 00009056  0x000010db copy  0x00000002 , 0x00000005 
- 00009057  0x000010dc copy  0x00000011 , 0x0000003f 
- 00009058  0x000010dd increase  0x00000001 , 0x0000003f 
- 00009059  0x000010de istore  0x00000001 , 0x00000005 
- 00009060  0x000010df copy  0x00000013 , 0x00000006 
- 00009061  0x000010e0 ifetch  0x00000001 , 0x00000006 
- 00009062  0x000010e1 ifetch  0x00000001 , 0x00000006 
- 00009063  0x000010e2 istore  0x00000001 , 0x00000005 
- 00009064  0x000010e3 copy  0x00000011 , 0x00000039 
- 00009065  0x000010e4 branch  0x00007f01 
- 00009066  0x000010eb fetch  0x00000001 , 0x00004093 
- 00009067  0x000010ec rtnbit0  0x00000001 
- 00009068  0x000010ed force  0x00000005 , 0x00000007 
- 00009069  0x000010ee call  0x00007f16 
- 00009070  0x000010ef nrtn  0x00000034 
- 00009071  0x000010f0 fetcht  0x00000002 , 0x000040b1 
- 00009072  0x000010f1 force  0x00000028 , 0x00000007 
- 00009073  0x000010f2 call  0x0000271c 
- 00009074  0x000010f3 rtn  0x00000028 
- 00009075  0x000010f4 force  0x00000000 , 0x00000004 
- 00009076  0x000010f5 jam  0x00000008 , 0x00000010 
- 00009077  0x000010f6 set0  0x0000000b , 0x00000000 
- 00009078  0x000010f7 call  0x0000237a 
- 00009079  0x000010f8 force  0x00000005 , 0x00000007 
- 00009080  0x000010f9 fetch  0x00000002 , 0x000040b3 
- 00009081  0x000010fa branch  0x00007f08 
- 00009082  0x000010fe bpatch  0x00000035 , 0x00004006 
- 00009083  0x000010ff disable  0x00000030 
- 00009084  0x00001100 call  0x000028a4 
- 00009085  0x00001101 fetch  0x00000001 , 0x00000008 
- 00009086  0x00001102 increase  0x00000001 , 0x0000003f 
- 00009087  0x00001103 store  0x00000001 , 0x00000008 
- 00009088  0x00001104 force  0x00000000 , 0x00000026 
- 00009089  0x00001105 call  0x000028e2 
- 00009090  0x00001106 add  0x00000022 , 0x00000001 , 0x00000021 
- 00009091  0x00001107 force  0x00000002 , 0x00000024 
- 00009092  0x00001108 bpatch  0x00000036 , 0x00004006 
- 00009093  0x00001109 call  0x000028cc 
- 00009094  0x0000110a call  0x000029eb 
- 00009095  0x0000110b call  0x00002a14 
- 00009096  0x0000110c nrtn  0x00000018 
- 00009097  0x0000110d call  0x000028f9 
- 00009098  0x0000110e fetch  0x00000001 , 0x00000009 
- 00009099  0x0000110f increase  0x00000001 , 0x0000003f 
- 00009100  0x00001110 store  0x00000001 , 0x00000009 
- 00009101  0x00001111 force  0x00000000 , 0x0000001b 
- 00009102  0x00001112 call  0x00002a4d 
- 00009103  0x00001113 or_into  0x00000002 , 0x00000021 
- 00009104  0x00001114 force  0x00000001 , 0x00000024 
- 00009105  0x00001115 call  0x000028d2 
- 00009106  0x00001116 call  0x00002a51 
- 00009107  0x00001117 call  0x00002a5f 
- 00009108  0x00001118 call  0x00002a64 
- 00009109  0x00001119 call  0x0000264d 
- 00009110  0x0000111a force  0x00000000 , 0x00000004 
- 00009111  0x0000111b arg  0x00000600 , 0x0000000b 
- 00009112  0x0000111c until  0x00000029 , 0x00000026 
- 00009113  0x0000111d or_into  0x00000003 , 0x00000028 
- 00009114  0x0000111e and_into  0x000001fd , 0x00000021 
- 00009115  0x00001120 bpatch  0x00000037 , 0x00004006 
- 00009116  0x00001121 increase  0x00000001 , 0x00000026 
- 00009117  0x00001122 call  0x000028cc 
- 00009118  0x00001123 call  0x000029eb 
- 00009119  0x00001124 call  0x00002a07 
- 00009120  0x00001125 nbranch  0x000023a4 , 0x00000018 
- 00009121  0x00001126 call  0x00002a6b 
- 00009122  0x00001127 call  0x0000251e 
- 00009123  0x00001128 bmark1  0x0000000b , 0x000023ab 
- 00009124  0x0000112a bpatch  0x00000038 , 0x00004007 
- 00009125  0x0000112b fetch  0x00000001 , 0x00000010 
- 00009126  0x0000112c rtn  0x00000034 
- 00009127  0x0000112d increase  0xffffffff , 0x0000003f 
- 00009128  0x0000112e store  0x00000001 , 0x00000010 
- 00009129  0x0000112f call  0x00002a4f 
- 00009130  0x00001130 branch  0x0000239b 
- 00009131  0x00001134 bpatch  0x00000039 , 0x00004007 
- 00009132  0x00001135 set0  0x00000001 , 0x00000028 
- 00009133  0x00001136 set1  0x00000000 , 0x00000028 
- 00009134  0x00001137 fetch  0x00000001 , 0x0000000a 
- 00009135  0x00001138 increase  0x00000001 , 0x0000003f 
- 00009136  0x00001139 store  0x00000001 , 0x0000000a 
- 00009137  0x0000113a call  0x00002a4d 
- 00009138  0x0000113b or_into  0x00000002 , 0x00000021 
- 00009139  0x0000113c call  0x000028d2 
- 00009140  0x0000113d call  0x00002a51 
- 00009141  0x0000113e call  0x00002a5f 
- 00009142  0x0000113f call  0x00002a64 
- 00009143  0x00001140 call  0x0000264d 
- 00009144  0x00001142 compare  0x00000003 , 0x00000028 , 0x00000003 
- 00009145  0x00001143 branch  0x000023bc , 0x00000001 
- 00009146  0x00001144 until  0x0000003e , 0x00000017 
- 00009147  0x00001145 branch  0x000023b8 
- 00009148  0x00001147 fetch  0x00000004 , 0x00000165 
- 00009149  0x00001148 or_into  0x00000003 , 0x0000003f 
- 00009150  0x00001149 icopy  0x00000028 
- 00009151  0x0000114c bpatch  0x0000003a , 0x00004007 
- 00009152  0x0000114d fetch  0x00000006 , 0x00000178 
- 00009153  0x0000114e store  0x00000006 , 0x00000040 
- 00009154  0x0000114f call  0x00002435 
- 00009155  0x00001151 call  0x0000247c 
- 00009156  0x00001152 branch  0x000023c8 , 0x0000002d 
- 00009157  0x00001153 call  0x00002455 
- 00009158  0x00001154 nbranch  0x000023c3 , 0x00000034 
- 00009159  0x00001155 rtn 
- 00009160  0x00001159 bpatch  0x0000003b , 0x00004007 
- 00009161  0x0000115a call  0x00002440 
- 00009162  0x0000115b call  0x0000223b 
- 00009163  0x0000115c nrtn  0x00000005 
- 00009164  0x0000115d jam  0x00000000 , 0x00000031 
- 00009165  0x0000115e call  0x00002841 
- 00009166  0x0000115f branch  0x00002223 
- 00009167  0x00001165 bpatch  0x0000003c , 0x00004007 
- 00009168  0x00001166 call  0x00002850 
- 00009169  0x00001167 call  0x000023f3 
- 00009170  0x00001168 rtn  0x00000028 
- 00009171  0x0000116a bpatch  0x0000003d , 0x00004007 
- 00009172  0x0000116b call  0x00002c69 
- 00009173  0x0000116c call  0x00006caa 
- 00009174  0x0000116d call  0x00002514 
- 00009175  0x0000116e nbranch  0x000023e2 , 0x0000002d 
- 00009176  0x0000116f call  0x00002a88 
- 00009177  0x00001170 call  0x00006cc2 
- 00009178  0x00001171 call  0x00002489 
- 00009179  0x00001172 call  0x00002757 
- 00009180  0x00001173 call  0x00002728 
- 00009181  0x00001174 call  0x00005d08 
- 00009182  0x00001175 fetch  0x00000001 , 0x0000000b 
- 00009183  0x00001176 increase  0x00000001 , 0x0000003f 
- 00009184  0x00001177 store  0x00000001 , 0x0000000b 
- 00009185  0x00001178 call  0x00002841 
- 00009186  0x0000117a bpatch  0x0000003e , 0x00004007 
- 00009187  0x0000117b call  0x00002bb1 
- 00009188  0x0000117c call  0x00002a7f 
- 00009189  0x0000117d branch  0x000023eb , 0x00000002 
- 00009190  0x0000117e call  0x000021a7 
- 00009191  0x0000117f nbranch  0x000023eb , 0x00000028 
- 00009192  0x00001180 call  0x000026f3 
- 00009193  0x00001181 nbranch  0x000023d3 , 0x00000034 
- 00009194  0x00001182 rtn 
- 00009195  0x00001185 bpatch  0x0000003f , 0x00004007 
- 00009196  0x00001186 jam  0x00000000 , 0x00000151 
- 00009197  0x00001187 jam  0x00000000 , 0x0000017f 
- 00009198  0x00001188 call  0x0000245d 
- 00009199  0x00001189 set0  0x00000011 , 0x00000000 
- 00009200  0x0000118a call  0x00007fb0 
- 00009201  0x0000118b fetch  0x00000001 , 0x00000030 
- 00009202  0x0000118c rtn 
- 00009203  0x00001190 bpatch  0x00000040 , 0x00004008 
- 00009204  0x00001191 call  0x000021c9 
- 00009205  0x00001192 nrtn  0x00000028 
- 00009206  0x00001193 copy  0x00000004 , 0x00000002 
- 00009207  0x00001194 call  0x00002a6f 
- 00009208  0x00001195 store  0x00000001 , 0x00000181 
- 00009209  0x00001196 copy  0x00000002 , 0x00000004 
- 00009210  0x00001197 jam  0x00000020 , 0x00000011 
- 00009211  0x00001199 bpatch  0x00000041 , 0x00004008 
- 00009212  0x0000119a call  0x00002a4f 
- 00009213  0x0000119b force  0x00000002 , 0x00000001 
- 00009214  0x0000119c call  0x0000274f 
- 00009215  0x0000119d deposit  0x00000022 
- 00009216  0x0000119e store  0x00000004 , 0x00000161 
- 00009217  0x0000119f call  0x00002762 
- 00009218  0x000011a0 call  0x00002a4d 
- 00009219  0x000011a1 enable  0x0000002f 
- 00009220  0x000011a2 call  0x000024f6 
- 00009221  0x000011a3 branch  0x0000240d , 0x00000018 
- 00009222  0x000011a4 call  0x000028f9 
- 00009223  0x000011a5 call  0x00002455 
- 00009224  0x000011a6 nbranch  0x000023fb , 0x00000034 
- 00009225  0x000011a7 rtnmark0  0x00000004 
- 00009226  0x000011a8 jam  0x00000034 , 0x0000007c 
- 00009227  0x000011a9 set1  0x00000003 , 0x00000000 
- 00009228  0x000011aa rtn 
- 00009229  0x000011ac enable  0x00000030 
- 00009230  0x000011ad call  0x00002435 
- 00009231  0x000011ae call  0x000028a4 
- 00009232  0x000011b0 bpatch  0x00000042 , 0x00004008 
- 00009233  0x000011b1 call  0x000022f2 
- 00009234  0x000011b2 branch  0x00002419 , 0x00000018 
- 00009235  0x000011b3 call  0x00002455 
- 00009236  0x000011b4 nbranch  0x00002410 , 0x00000034 
- 00009237  0x000011b5 disable  0x00000030 
- 00009238  0x000011b6 deposit  0x00000028 
- 00009239  0x000011b7 store  0x00000004 , 0x000040ca 
- 00009240  0x000011b8 rtn 
- 00009241  0x000011ba enable  0x00000029 
- 00009242  0x000011bb bmark0  0x00000004 , 0x0000241f 
- 00009243  0x000011bc set0  0x00000004 , 0x00000000 
- 00009244  0x000011bd jam  0x00000003 , 0x0000007c 
- 00009245  0x000011be jam  0x00000033 , 0x0000007d 
- 00009246  0x000011bf call  0x000062f8 
- 00009247  0x000011c1 deposit  0x00000004 
- 00009248  0x000011c2 store  0x00000001 , 0x00000077 
- 00009249  0x000011c3 force  0x00000000 , 0x0000003f 
- 00009250  0x000011c4 store  0x00000006 , 0x00000038 
- 00009251  0x000011c5 fetch  0x00000001 , 0x00000031 
- 00009252  0x000011c6 set1  0x00000001 , 0x0000003f 
- 00009253  0x000011c7 store  0x00000001 , 0x00000031 
- 00009254  0x000011c8 call  0x00002a88 
- 00009255  0x000011c9 disable  0x00000029 
- 00009256  0x000011ca enable  0x00000028 
- 00009257  0x000011cb rtn 
- 00009258  0x000011d0 bpatch  0x00000043 , 0x00004008 
- 00009259  0x000011d1 disable  0x0000002d 
- 00009260  0x000011d2 set0  0x00000005 , 0x00000000 
- 00009261  0x000011d3 set0  0x0000000a , 0x00000000 
- 00009262  0x000011d4 set0  0x00000010 , 0x00000000 
- 00009263  0x000011d5 set0  0x0000000f , 0x00000000 
- 00009264  0x000011d6 fetch  0x00000001 , 0x00000047 
- 00009265  0x000011d7 set0  0x00000005 , 0x0000003f 
- 00009266  0x000011d8 set1  0x00000004 , 0x0000003f 
- 00009267  0x000011d9 store  0x00000001 , 0x00000047 
- 00009268  0x000011da rtn 
- 00009269  0x000011dd bpatch  0x00000044 , 0x00004008 
- 00009270  0x000011de jam  0x00000020 , 0x00000011 
- 00009271  0x000011df jam  0x00000050 , 0x00000047 
- 00009272  0x000011e0 fetch  0x00000002 , 0x000040bf 
- 00009273  0x000011e1 store  0x00000002 , 0x0000003e 
- 00009274  0x000011e2 deposit  0x00000022 
- 00009275  0x000011e3 store  0x00000004 , 0x000040ca 
- 00009276  0x000011e4 rtn  0x00000030 
- 00009277  0x000011e5 deposit  0x00000028 
- 00009278  0x000011e6 store  0x00000004 , 0x000040ca 
- 00009279  0x000011e7 rtn 
- 00009280  0x000011ea bpatch  0x00000045 , 0x00004008 
- 00009281  0x000011eb call  0x00005d04 
- 00009282  0x000011ec call  0x00002459 
- 00009283  0x000011ed store  0x00000001 , 0x00000046 
- 00009284  0x000011ee setarg  0x00000000 
- 00009285  0x000011ef store  0x00000002 , 0x0000025d 
- 00009286  0x000011f0 setarg  0x00001c80 
- 00009287  0x000011f1 store  0x00000002 , 0x00000051 
- 00009288  0x000011f2 fetch  0x00000001 , 0x00000030 
- 00009289  0x000011f3 set1  0x00000000 , 0x0000003f 
- 00009290  0x000011f4 store  0x00000001 , 0x00000030 
- 00009291  0x000011f5 jam  0x00000000 , 0x0000004b 
- 00009292  0x000011f6 jam  0x00000000 , 0x0000004c 
- 00009293  0x000011f7 jam  0x00000000 , 0x000000a0 
- 00009294  0x000011f8 branch  0x00002a88 
- 00009295  0x000011fc bpatch  0x00000046 , 0x00004008 
- 00009296  0x000011fd force  0x00000000 , 0x0000003f 
- 00009297  0x000011fe store  0x00000008 , 0x000041be 
- 00009298  0x000011ff istore  0x00000008 , 0x00000005 
- 00009299  0x00001200 call  0x000021c5 
- 00009300  0x00001201 branch  0x00002254 
- 00009301  0x00001204 fetch  0x00000001 , 0x00000011 
- 00009302  0x00001205 increase  0xffffffff , 0x0000003f 
- 00009303  0x00001206 store  0x00000001 , 0x00000011 
- 00009304  0x00001207 rtn 
- 00009305  0x0000120a fetch  0x00000001 , 0x000040cf 
- 00009306  0x0000120b increase  0x00000001 , 0x0000003f 
- 00009307  0x0000120c store  0x00000001 , 0x000040cf 
- 00009308  0x0000120d rtn 
- 00009309  0x00001211 bpatch  0x00000047 , 0x00004008 
- 00009310  0x00001212 fetch  0x00000001 , 0x000041ce 
- 00009311  0x00001213 beq  0x00000003 , 0x00002462 
- 00009312  0x00001214 fetch  0x00000001 , 0x00000048 
- 00009313  0x00001215 bne  0x00000001 , 0x00002466 
- 00009314  0x00001217 call  0x00004d06 
- 00009315  0x00001218 nbranch  0x00002466 , 0x00000005 
- 00009316  0x00001219 call  0x000021a4 
- 00009317  0x0000121a jam  0x00000000 , 0x000041ce 
- 00009318  0x0000121c bpatch  0x00000048 , 0x00004009 
- 00009319  0x0000121d call  0x000033af 
- 00009320  0x0000121e call  0x000026e9 
- 00009321  0x0000121f jam  0x00000002 , 0x00000a99 
- 00009322  0x00001220 call  0x00007d86 
- 00009323  0x00001221 call  0x00005cf7 
- 00009324  0x00001222 call  0x00004d6b 
- 00009325  0x00001223 call  0x0000757d 
- 00009326  0x00001224 fetch  0x00000001 , 0x00000030 
- 00009327  0x00001225 set0  0x00000000 
- 00009328  0x00001226 store  0x00000001 , 0x00000030 
- 00009329  0x00001227 jam  0x00000000 , 0x00004681 
- 00009330  0x00001229 fetch  0x00000001 , 0x0000004c 
- 00009331  0x0000122a compare  0x00000000 , 0x0000003f , 0x000000c0 
- 00009332  0x0000122b branch  0x00002476 , 0x00000001 
- 00009333  0x0000122c set0  0x00000001 , 0x00000000 
- 00009334  0x0000122e fetch  0x00000001 , 0x00000047 
- 00009335  0x0000122f bbit0  0x00000003 , 0x00002478 
- 00009336  0x00001231 fetch  0x00000001 , 0x0000004b 
- 00009337  0x00001232 rtnbit0  0x00000006 
- 00009338  0x00001233 set0  0x00000002 , 0x00000000 
- 00009339  0x00001234 rtn 
- 00009340  0x00001237 bpatch  0x00000049 , 0x00004009 
- 00009341  0x00001238 fetch  0x00000001 , 0x00000174 
- 00009342  0x00001239 rtn  0x00000034 
- 00009343  0x0000123a icopy  0x00000004 
- 00009344  0x0000123b call  0x00002514 
- 00009345  0x0000123c nrtn  0x0000002d 
- 00009346  0x0000123d force  0x00000000 , 0x00000001 
- 00009347  0x0000123e call  0x00002757 
- 00009348  0x0000123f deposit  0x00000004 
- 00009349  0x00001240 store  0x00000001 , 0x00000077 
- 00009350  0x00001241 force  0x00000000 , 0x0000003f 
- 00009351  0x00001242 store  0x00000001 , 0x00000174 
- 00009352  0x00001243 rtn 
- 00009353  0x0000124a bpatch  0x0000004a , 0x00004009 
- 00009354  0x0000124b fetch  0x00000001 , 0x00000030 
- 00009355  0x0000124c bbit0  0x00000002 , 0x00002496 
- 00009356  0x0000124d force  0x00000007 , 0x00000001 
- 00009357  0x0000124e bmark0  0x00000007 , 0x00002495 
- 00009358  0x0000124f call  0x00002725 
- 00009359  0x00001250 nbranch  0x00002496 , 0x00000001 
- 00009360  0x00001251 branch  0x00002496 , 0x0000002e 
- 00009361  0x00001252 call  0x000024c1 
- 00009362  0x00001253 setarg  0x00000002 
- 00009363  0x00001254 store  0x00000002 , 0x000040c8 
- 00009364  0x00001255 rtn 
- 00009365  0x00001257 nrtn  0x0000002e 
- 00009366  0x00001259 bpatch  0x0000004b , 0x00004009 
- 00009367  0x0000125a call  0x00002243 
- 00009368  0x0000125b nbranch  0x000024a7 , 0x00000005 
- 00009369  0x0000125c fetch  0x00000001 , 0x00000047 
- 00009370  0x0000125d bbit0  0x00000003 , 0x000024b0 
- 00009371  0x0000125f bmark1  0x00000005 , 0x000024b4 
- 00009372  0x00001260 fetch  0x00000001 , 0x0000017f 
- 00009373  0x00001261 bbit1  0x00000006 , 0x000024ba 
- 00009374  0x00001262 fetch  0x00000002 , 0x000040c8 
- 00009375  0x00001263 increase  0xffffffff , 0x0000003f 
- 00009376  0x00001264 store  0x00000002 , 0x000040c8 
- 00009377  0x00001265 branch  0x000024a5 , 0x00000034 
- 00009378  0x00001266 fetch  0x00000001 , 0x000040c5 
- 00009379  0x00001267 iforce  0x00000001 
- 00009380  0x00001268 rtn 
- 00009381  0x0000126b bpatch  0x0000004c , 0x00004009 
- 00009382  0x0000126c call  0x00002687 
- 00009383  0x0000126e call  0x00002725 
- 00009384  0x0000126f branch  0x000024b0 , 0x00000001 
- 00009385  0x00001270 call  0x0000600a 
- 00009386  0x00001271 branch  0x000024be , 0x00000028 
- 00009387  0x00001272 fetch  0x00000001 , 0x0000004b 
- 00009388  0x00001273 bbit1  0x00000006 , 0x000024c0 
- 00009389  0x00001274 bmark1  0x00000005 , 0x000024b4 
- 00009390  0x00001275 fetch  0x00000001 , 0x0000017f 
- 00009391  0x00001276 bbit1  0x00000006 , 0x000024ba 
- 00009392  0x00001278 force  0x00000001 , 0x00000001 
- 00009393  0x00001279 rtn  0x00000029 
- 00009394  0x0000127a force  0x00000000 , 0x00000001 
- 00009395  0x0000127b rtn 
- 00009396  0x0000127d bpatch  0x0000004d , 0x00004009 
- 00009397  0x0000127e fetch  0x00000001 , 0x00000019 
- 00009398  0x0000127f iforce  0x00000001 
- 00009399  0x00001280 rtnne  0x00000001 
- 00009400  0x00001281 force  0x00000000 , 0x00000001 
- 00009401  0x00001282 rtn 
- 00009402  0x00001284 fetch  0x00000001 , 0x00000158 
- 00009403  0x00001285 and  0x0000003f , 0x0000000f , 0x00000001 
- 00009404  0x00001286 set1  0x00000005 , 0x00000000 
- 00009405  0x00001287 rtn 
- 00009406  0x00001289 force  0x00000013 , 0x00000001 
- 00009407  0x0000128a branch  0x000024c1 
- 00009408  0x0000128c call  0x000024ca 
- 00009409  0x0000128f bpatch  0x0000004e , 0x00004009 
- 00009410  0x00001290 fetcht  0x00000001 , 0x00000047 
- 00009411  0x00001291 set1  0x00000003 , 0x00000002 
- 00009412  0x00001292 storet  0x00000001 , 0x00000047 
- 00009413  0x00001293 deposit  0x00000001 
- 00009414  0x00001294 store  0x00000001 , 0x000040c5 
- 00009415  0x00001295 setarg  0x0000ffff 
- 00009416  0x00001296 store  0x00000002 , 0x000040c8 
- 00009417  0x00001297 rtn 
- 00009418  0x0000129a bpatch  0x0000004f , 0x00004009 
- 00009419  0x0000129b fetch  0x00000001 , 0x0000004c 
- 00009420  0x0000129c isolate1  0x00000005 , 0x0000003f 
- 00009421  0x0000129d fetch  0x00000002 , 0x000041dc 
- 00009422  0x0000129e branch  0x000024e0 , 0x00000001 
- 00009423  0x0000129f force  0x00000003 , 0x00000001 
- 00009424  0x000012a0 sub  0x0000003f , 0x00000011 , 0x0000003e 
- 00009425  0x000012a1 rtn  0x00000002 
- 00009426  0x000012a2 force  0x00000004 , 0x00000001 
- 00009427  0x000012a3 sub  0x0000003f , 0x0000001b , 0x0000003e 
- 00009428  0x000012a4 rtn  0x00000002 
- 00009429  0x000012a5 force  0x0000000a , 0x00000001 
- 00009430  0x000012a6 sub  0x0000003f , 0x00000079 , 0x0000003e 
- 00009431  0x000012a7 rtn  0x00000002 
- 00009432  0x000012a8 force  0x0000000b , 0x00000001 
- 00009433  0x000012a9 sub  0x0000003f , 0x000000b7 , 0x0000003e 
- 00009434  0x000012aa rtn  0x00000002 
- 00009435  0x000012ab force  0x0000000e , 0x00000001 
- 00009436  0x000012ac sub  0x0000003f , 0x000000e0 , 0x0000003e 
- 00009437  0x000012ad rtn  0x00000002 
- 00009438  0x000012ae force  0x0000000f , 0x00000001 
- 00009439  0x000012af rtn 
- 00009440  0x000012b1 force  0x00000003 , 0x00000001 
- 00009441  0x000012b2 sub  0x0000003f , 0x00000011 , 0x0000003e 
- 00009442  0x000012b3 rtn  0x00000002 
- 00009443  0x000012b4 force  0x00000004 , 0x00000001 
- 00009444  0x000012b5 sub  0x0000003f , 0x00000036 , 0x0000003e 
- 00009445  0x000012b6 rtn  0x00000002 
- 00009446  0x000012b7 force  0x0000000a , 0x00000001 
- 00009447  0x000012b8 arg  0x0000016f , 0x00000002 
- 00009448  0x000012b9 isub  0x00000002 , 0x0000003e 
- 00009449  0x000012ba nrtn  0x00000002 
- 00009450  0x000012bb force  0x0000000e , 0x00000001 
- 00009451  0x000012bc arg  0x000002a7 , 0x00000002 
- 00009452  0x000012bd isub  0x00000002 , 0x0000003e 
- 00009453  0x000012be nrtn  0x00000002 
- 00009454  0x000012bf force  0x0000000f , 0x00000001 
- 00009455  0x000012c0 rtn 
- 00009456  0x000012ca fetch  0x00000001 , 0x00000030 
- 00009457  0x000012cb bbit0  0x00000001 , 0x000024f5 
- 00009458  0x000012cc fetch  0x00000002 , 0x00000032 
- 00009459  0x000012cd branch  0x000024f5 , 0x00000034 
- 00009460  0x000012ce nbranch  0x000024f7 , 0x0000002e 
- 00009461  0x000012d0 call  0x00002a4f 
- 00009462  0x000012d2 add  0x00000028 , 0x00000001 , 0x00000021 
- 00009463  0x000012d4 enable  0x00000010 
- 00009464  0x000012d5 fetch  0x00000002 , 0x0000003e 
- 00009465  0x000012d6 rshift  0x0000003f , 0x0000003f 
- 00009466  0x000012d7 arg  0x00000500 , 0x00000002 
- 00009467  0x000012d8 iadd  0x00000002 , 0x0000003f 
- 00009468  0x000012d9 call  0x00002a24 
- 00009469  0x000012da call  0x000028ea 
- 00009470  0x000012db force  0x00000003 , 0x00000024 
- 00009471  0x000012dc call  0x000028cc 
- 00009472  0x000012dd call  0x0000242a 
- 00009473  0x000012de call  0x000029f1 
- 00009474  0x000012df bpatch  0x00000050 , 0x0000400a 
- 00009475  0x000012e0 fetch  0x00000002 , 0x0000003e 
- 00009476  0x000012e1 rshift  0x0000003f , 0x0000003f 
- 00009477  0x000012e2 call  0x00002a24 
- 00009478  0x000012e3 call  0x000029eb 
- 00009479  0x000012e4 enable  0x0000000d 
- 00009480  0x000012e5 fetch  0x00000002 , 0x0000003e 
- 00009481  0x000012e6 arg  0x000003bb , 0x00000002 
- 00009482  0x000012e7 iadd  0x00000002 , 0x0000001b 
- 00009483  0x000012e8 correlate  0x0000003e , 0x00000003 
- 00009484  0x000012e9 copy  0x0000001a , 0x00000002 
- 00009485  0x000012ea storet  0x00000006 , 0x0000009a 
- 00009486  0x000012eb disable  0x0000000d 
- 00009487  0x000012ec nrtn  0x00000018 
- 00009488  0x000012ed arg  0x000003bb , 0x00000029 
- 00009489  0x000012ee copy  0x00000021 , 0x00000028 
- 00009490  0x000012ef branch  0x00002b05 , 0x0000002b 
- 00009491  0x000012f0 rtn 
- 00009492  0x000012f4 bpatch  0x00000051 , 0x0000400a 
- 00009493  0x000012f5 call  0x000024f0 
- 00009494  0x000012f6 nbranch  0x000028f9 , 0x00000018 
- 00009495  0x000012f7 call  0x000029bb 
- 00009496  0x000012f8 bmark0  0x00000011 , 0x0000251c 
- 00009497  0x000012f9 fetch  0x00000002 , 0x000000f6 
- 00009498  0x000012fa increase  0x00000001 , 0x0000003f 
- 00009499  0x000012fb store  0x00000002 , 0x000000f6 
- 00009500  0x000012fd rshift  0x00000021 , 0x00000002 
- 00009501  0x000012fe or  0x00000002 , 0x00000040 , 0x0000000e 
- 00009502  0x00001300 bpatch  0x00000052 , 0x0000400a 
- 00009503  0x00001301 enable  0x00000007 
- 00009504  0x00001302 enable  0x0000000a 
- 00009505  0x00001303 enable  0x0000000b 
- 00009506  0x00001304 parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009507  0x00001305 rshift8  0x0000000c , 0x0000003f 
- 00009508  0x00001306 store  0x00000001 , 0x0000015d 
- 00009509  0x00001307 parse  0x00000003 , 0x00000000 , 0x00000004 
- 00009510  0x00001308 inject  0x00000000 , 0x00000007 
- 00009511  0x00001309 copy  0x0000000c , 0x0000003f 
- 00009512  0x0000130a store  0x00000001 , 0x00000019 
- 00009513  0x0000130b parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009514  0x0000130c rshift8  0x0000000c , 0x0000003f 
- 00009515  0x0000130d store  0x00000001 , 0x0000015e 
- 00009516  0x0000130e fetch  0x00000001 , 0x00000019 
- 00009517  0x0000130f sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00009518  0x00001310 branch  0x00002533 , 0x00000002 
- 00009519  0x00001311 beq  0x00000007 , 0x00002533 
- 00009520  0x00001312 fetch  0x00000001 , 0x0000004c 
- 00009521  0x00001313 isolate1  0x00000005 , 0x0000003f 
- 00009522  0x00001314 setflag  0x00000001 , 0x00000001 , 0x00000015 
- 00009523  0x00001316 bpatch  0x00000053 , 0x0000400a 
- 00009524  0x00001317 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00009525  0x00001318 disable  0x0000000b 
- 00009526  0x00001319 disable  0x0000000a 
- 00009527  0x0000131a branch  0x00002631 , 0x00000006 
- 00009528  0x0000131b bmark0  0x00000011 , 0x0000253c 
- 00009529  0x0000131c fetch  0x00000002 , 0x000000f8 
- 00009530  0x0000131d increase  0x00000001 , 0x0000003f 
- 00009531  0x0000131e store  0x00000002 , 0x000000f8 
- 00009532  0x00001320 bpatch  0x00000054 , 0x0000400a 
- 00009533  0x00001321 fetch  0x00000001 , 0x0000015d 
- 00009534  0x00001322 compare  0x00000000 , 0x0000003f , 0x00000007 
- 00009535  0x00001323 setflag  0x00000001 , 0x0000000a , 0x00000000 
- 00009536  0x00001324 branch  0x0000254c , 0x00000001 
- 00009537  0x00001325 icompare  0x00000007 , 0x00000004 
- 00009538  0x00001326 branch  0x0000254b , 0x00000001 
- 00009539  0x00001327 bmark0  0x00000007 , 0x0000264d 
- 00009540  0x00001328 fetcht  0x00000001 , 0x000000b0 
- 00009541  0x00001329 icompare  0x00000007 , 0x00000002 
- 00009542  0x0000132a nbranch  0x0000264d , 0x00000001 
- 00009543  0x0000132b fetch  0x00000001 , 0x00000047 
- 00009544  0x0000132c set0  0x00000005 , 0x0000003f 
- 00009545  0x0000132d set1  0x00000004 , 0x0000003f 
- 00009546  0x0000132e store  0x00000001 , 0x00000047 
- 00009547  0x00001330 enable  0x0000002d 
- 00009548  0x00001332 bpatch  0x00000055 , 0x0000400a 
- 00009549  0x00001333 fetch  0x00000001 , 0x00000019 
- 00009550  0x00001334 icopy  0x00000001 
- 00009551  0x00001335 bmark1  0x0000000a , 0x0000255b 
- 00009552  0x00001336 fetcht  0x00000001 , 0x0000015e 
- 00009553  0x00001337 fetch  0x00000001 , 0x00000047 
- 00009554  0x00001338 set0  0x00000000 , 0x0000003f 
- 00009555  0x00001339 isolate1  0x00000000 , 0x00000002 
- 00009556  0x0000133a setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00009557  0x0000133b isolate1  0x00000001 , 0x00000002 
- 00009558  0x0000133c setflag  0x00000001 , 0x00000001 , 0x0000003f 
- 00009559  0x0000133d store  0x00000001 , 0x00000047 
- 00009560  0x0000133e isolate0  0x00000001 , 0x00000002 
- 00009561  0x0000133f branch  0x0000255b , 0x00000001 
- 00009562  0x00001340 call  0x00002687 
- 00009563  0x00001342 bpatch  0x00000056 , 0x0000400a 
- 00009564  0x00001343 arg  0x00000000 , 0x00000002 
- 00009565  0x00001344 call  0x00002a1c 
- 00009566  0x00001345 and  0x00000001 , 0x0000000f , 0x0000003f 
- 00009567  0x00001346 beq  0x00000001 , 0x00002587 
- 00009568  0x00001347 beq  0x00000000 , 0x0000264d 
- 00009569  0x00001348 beq  0x00000002 , 0x00002659 
- 00009570  0x00001349 fetcht  0x00000001 , 0x0000015e 
- 00009571  0x0000134a fetch  0x00000001 , 0x00000047 
- 00009572  0x0000134b icompare  0x00000004 , 0x00000002 
- 00009573  0x0000134c nbranch  0x00002569 , 0x00000001 
- 00009574  0x0000134d bmark0  0x0000000a , 0x00002568 
- 00009575  0x0000134e bbit0  0x00000007 , 0x00002569 
- 00009576  0x00001350 set1  0x0000000f , 0x00000000 
- 00009577  0x00001352 bpatch  0x00000057 , 0x0000400a 
- 00009578  0x00001353 deposit  0x00000001 
- 00009579  0x00001354 beq  0x00000003 , 0x00002589 
- 00009580  0x00001355 beq  0x00000004 , 0x0000258d 
- 00009581  0x00001356 beq  0x00000007 , 0x00002578 
- 00009582  0x00001357 beq  0x00000008 , 0x0000258c 
- 00009583  0x00001358 arg  0x00000004 , 0x00000002 
- 00009584  0x00001359 call  0x00002a1c 
- 00009585  0x0000135a beq  0x0000000a , 0x00002588 
- 00009586  0x0000135b beq  0x0000000b , 0x0000258b 
- 00009587  0x0000135c arg  0x00000008 , 0x00000002 
- 00009588  0x0000135d call  0x00002a1c 
- 00009589  0x0000135e beq  0x0000000e , 0x00002588 
- 00009590  0x0000135f beq  0x0000000f , 0x0000258b 
- 00009591  0x00001360 rtn 
- 00009592  0x00001364 bpatch  0x00000058 , 0x0000400b 
- 00009593  0x00001365 enable  0x0000000d 
- 00009594  0x00001366 enable  0x00000009 
- 00009595  0x00001367 enable  0x0000000e 
- 00009596  0x00001368 arg  0x000000d1 , 0x00000005 
- 00009597  0x00001369 force  0x0000001e , 0x00000039 
- 00009598  0x0000136b parse  0x00000003 , 0x00000000 , 0x00000008 
- 00009599  0x0000136c rshift3  0x0000000c , 0x0000003f 
- 00009600  0x0000136d istore  0x00000001 , 0x00000005 
- 00009601  0x0000136e loop  0x0000257e 
- 00009602  0x0000136f bmark0  0x00000007 , 0x0000264d 
- 00009603  0x00001370 parse  0x00000003 , 0x00000000 , 0x00000010 
- 00009604  0x00001371 nsetflag  0x00000006 , 0x00000008 , 0x00000000 
- 00009605  0x00001372 branch  0x0000263d , 0x00000006 
- 00009606  0x00001373 branch  0x00002620 
- 00009607  0x00001377 branch  0x0000264d 
- 00009608  0x0000137b set1  0x00000010 , 0x00000000 
- 00009609  0x0000137d enable  0x0000000c 
- 00009610  0x0000137e branch  0x0000258e 
- 00009611  0x00001382 set1  0x00000010 , 0x00000000 
- 00009612  0x00001384 set1  0x00000002 , 0x00000015 
- 00009613  0x00001386 enable  0x0000000d 
- 00009614  0x00001388 bpatch  0x00000059 , 0x0000400b 
- 00009615  0x00001389 bmark1  0x00000001 , 0x0000264d 
- 00009616  0x0000138a isolate0  0x00000001 , 0x00000015 
- 00009617  0x0000138b branch  0x0000259a , 0x00000001 
- 00009618  0x0000138c disable  0x00000007 
- 00009619  0x0000138d enable  0x0000000d 
- 00009620  0x0000138e disable  0x0000000c 
- 00009621  0x0000138f add  0x00000022 , 0x00000002 , 0x0000000b 
- 00009622  0x00001390 correlate  0x00000022 , 0x00000026 
- 00009623  0x00001391 nbranch  0x0000263d , 0x00000018 
- 00009624  0x00001392 set1  0x00000010 , 0x00000000 
- 00009625  0x00001393 enable  0x00000007 
- 00009626  0x00001395 bpatch  0x0000005a , 0x0000400b 
- 00009627  0x00001396 enable  0x0000000e 
- 00009628  0x00001397 enable  0x00000009 
- 00009629  0x00001398 parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009630  0x00001399 rshift8  0x0000000c , 0x0000003f 
- 00009631  0x0000139a store  0x00000001 , 0x00000180 
- 00009632  0x0000139b parse  0x00000003 , 0x00000000 , 0x00000005 
- 00009633  0x0000139c bmark1  0x00000010 , 0x000025a5 
- 00009634  0x0000139d rshift3  0x0000000c , 0x00000039 
- 00009635  0x0000139e rshift3  0x00000039 , 0x00000039 
- 00009636  0x0000139f branch  0x000025a8 
- 00009637  0x000013a1 parse  0x00000003 , 0x00000000 , 0x00000005 
- 00009638  0x000013a2 rshift  0x0000000c , 0x00000039 
- 00009639  0x000013a3 parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009640  0x000013a5 bpatch  0x0000005b , 0x0000400b 
- 00009641  0x000013a6 deposit  0x00000039 
- 00009642  0x000013a7 store  0x00000002 , 0x0000015f 
- 00009643  0x000013a8 branch  0x000025e8 , 0x00000034 
- 00009644  0x000013a9 isub  0x00000035 , 0x0000003e 
- 00009645  0x000013aa branch  0x0000263d , 0x00000002 
- 00009646  0x000013ab bpatch  0x0000005c , 0x0000400b 
- 00009647  0x000013ac set0  0x00000000 , 0x00000000 
- 00009648  0x000013ad fetch  0x00000001 , 0x00000180 
- 00009649  0x000013ae and_into  0x00000003 , 0x0000003f 
- 00009650  0x000013af arg  0x00000551 , 0x00000005 
- 00009651  0x000013b0 beq  0x00000003 , 0x000025ba 
- 00009652  0x000013b1 bmark1  0x00000011 , 0x000025e4 
- 00009653  0x000013b3 fetch  0x00000001 , 0x00000180 
- 00009654  0x000013b4 and_into  0x00000003 , 0x0000003f 
- 00009655  0x000013b5 beq  0x00000002 , 0x000025bf 
- 00009656  0x000013b6 beq  0x00000001 , 0x000025d3 
- 00009657  0x000013b7 branch  0x0000263d 
- 00009658  0x000013ba fetch  0x00000002 , 0x0000015f 
- 00009659  0x000013bb sub  0x0000003f , 0x00000070 , 0x0000003e 
- 00009660  0x000013bc nbranch  0x0000263d , 0x00000002 
- 00009661  0x000013bd bmark1  0x0000000f , 0x00002620 
- 00009662  0x000013be branch  0x000025e4 
- 00009663  0x000013c2 bpatch  0x0000005d , 0x0000400b 
- 00009664  0x000013c3 bmark1  0x0000000f , 0x00002620 
- 00009665  0x000013c4 fetch  0x00000002 , 0x0000015f 
- 00009666  0x000013c5 arg  0x000002e0 , 0x00000002 
- 00009667  0x000013c6 isub  0x00000002 , 0x0000003e 
- 00009668  0x000013c7 branch  0x0000263d , 0x00000002 
- 00009669  0x000013c8 fetch  0x00000001 , 0x00000263 
- 00009670  0x000013c9 bbit0  0x00000000 , 0x000025c9 
- 00009671  0x000013ca bbit0  0x00000001 , 0x000025ce 
- 00009672  0x000013cb branch  0x0000264d 
- 00009673  0x000013cd jam  0x00000001 , 0x00000261 
- 00009674  0x000013ce fetch  0x00000002 , 0x0000025d 
- 00009675  0x000013cf bne  0x00000000 , 0x0000264d 
- 00009676  0x000013d0 arg  0x00001000 , 0x00000005 
- 00009677  0x000013d1 branch  0x000025e4 
- 00009678  0x000013d3 jam  0x00000002 , 0x00000261 
- 00009679  0x000013d4 fetch  0x00000002 , 0x0000025f 
- 00009680  0x000013d5 bne  0x00000000 , 0x0000264d 
- 00009681  0x000013d6 arg  0x00001400 , 0x00000005 
- 00009682  0x000013d7 branch  0x000025e4 
- 00009683  0x000013da bpatch  0x0000005e , 0x0000400b 
- 00009684  0x000013db bmark1  0x0000000f , 0x00002620 
- 00009685  0x000013dc fetch  0x00000002 , 0x0000015f 
- 00009686  0x000013dd arg  0x000002e0 , 0x00000002 
- 00009687  0x000013de isub  0x00000002 , 0x0000003e 
- 00009688  0x000013df branch  0x0000263d , 0x00000002 
- 00009689  0x000013e0 fetch  0x00000001 , 0x00000261 
- 00009690  0x000013e1 beq  0x00000001 , 0x000025dd 
- 00009691  0x000013e2 beq  0x00000002 , 0x000025e1 
- 00009692  0x000013e3 branch  0x0000264d 
- 00009693  0x000013e5 arg  0x00001000 , 0x00000005 
- 00009694  0x000013e6 fetch  0x00000002 , 0x0000025d 
- 00009695  0x000013e7 iadd  0x00000005 , 0x00000005 
- 00009696  0x000013e8 branch  0x000025e4 
- 00009697  0x000013ea arg  0x00001400 , 0x00000005 
- 00009698  0x000013eb fetch  0x00000002 , 0x0000025f 
- 00009699  0x000013ec iadd  0x00000005 , 0x00000005 
- 00009700  0x000013ee parse  0x00000003 , 0x00000000 , 0x00000008 
- 00009701  0x000013ef rshift3  0x0000000c , 0x0000003f 
- 00009702  0x000013f0 istore  0x00000001 , 0x00000005 
- 00009703  0x000013f1 loop  0x000025e4 
- 00009704  0x000013f3 bpatch  0x0000005f , 0x0000400b 
- 00009705  0x000013f4 parse  0x00000003 , 0x00000000 , 0x00000010 
- 00009706  0x000013f5 branch  0x00002637 , 0x00000006 
- 00009707  0x000013f6 fetch  0x00000001 , 0x00004363 
- 00009708  0x000013f7 beq  0x00000001 , 0x0000264d 
- 00009709  0x000013f8 bmark1  0x00000011 , 0x0000260d 
- 00009710  0x000013f9 bmark1  0x0000000f , 0x0000264a 
- 00009711  0x000013fa fetch  0x00000001 , 0x00000180 
- 00009712  0x000013fb compare  0x00000003 , 0x0000003f , 0x00000003 
- 00009713  0x000013fc branch  0x0000260d , 0x00000001 
- 00009714  0x000013fd fetch  0x00000002 , 0x0000015f 
- 00009715  0x000013fe branch  0x0000260d , 0x00000034 
- 00009716  0x000013ff bpatch  0x00000060 , 0x0000400c 
- 00009717  0x00001400 fetch  0x00000001 , 0x00000261 
- 00009718  0x00001401 beq  0x00000001 , 0x000025f9 
- 00009719  0x00001402 beq  0x00000002 , 0x00002603 
- 00009720  0x00001403 branch  0x00002a8c 
- 00009721  0x00001405 fetch  0x00000002 , 0x0000025d 
- 00009722  0x00001406 fetcht  0x00000002 , 0x0000015f 
- 00009723  0x00001407 iadd  0x00000002 , 0x0000003f 
- 00009724  0x00001408 store  0x00000002 , 0x0000025d 
- 00009725  0x00001409 beq  0x00000000 , 0x00002a8c 
- 00009726  0x0000140a fetcht  0x00000002 , 0x00001000 
- 00009727  0x0000140b increase  0x00000004 , 0x00000002 
- 00009728  0x0000140c isub  0x00000002 , 0x0000003e 
- 00009729  0x0000140d call  0x00002747 , 0x00000005 
- 00009730  0x0000140e branch  0x0000260d 
- 00009731  0x00001410 fetch  0x00000002 , 0x0000025f 
- 00009732  0x00001411 fetcht  0x00000002 , 0x0000015f 
- 00009733  0x00001412 iadd  0x00000002 , 0x0000003f 
- 00009734  0x00001413 store  0x00000002 , 0x0000025f 
- 00009735  0x00001414 beq  0x00000000 , 0x00002a8c 
- 00009736  0x00001415 fetcht  0x00000002 , 0x00001400 
- 00009737  0x00001416 add  0x00000002 , 0x00000004 , 0x00000002 
- 00009738  0x00001417 isub  0x00000002 , 0x0000003e 
- 00009739  0x00001418 call  0x0000274b , 0x00000005 
- 00009740  0x00001419 branch  0x0000260d 
- 00009741  0x0000141b bpatch  0x00000061 , 0x0000400c 
- 00009742  0x0000141c fetcht  0x00000001 , 0x0000004c 
- 00009743  0x0000141d fetch  0x00000001 , 0x00000180 
- 00009744  0x0000141e compare  0x00000003 , 0x0000003f , 0x00000003 
- 00009745  0x0000141f setflag  0x00000001 , 0x00000006 , 0x00000002 
- 00009746  0x00001420 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
- 00009747  0x00001421 storet  0x00000001 , 0x0000004c 
- 00009748  0x00001422 nbranch  0x00002616 , 0x00000001 
- 00009749  0x00001423 set1  0x00000001 , 0x00000000 
- 00009750  0x00001425 bmark0  0x00000011 , 0x00002620 
- 00009751  0x00001426 isolate1  0x00000006 , 0x00000002 
- 00009752  0x00001427 branch  0x00002620 , 0x00000001 
- 00009753  0x00001428 fetch  0x00000002 , 0x000000fa 
- 00009754  0x00001429 increase  0x00000001 , 0x0000003f 
- 00009755  0x0000142a store  0x00000002 , 0x000000fa 
- 00009756  0x0000142b set1  0x00000005 , 0x00000000 
- 00009757  0x0000142c set0  0x00000007 , 0x00000002 
- 00009758  0x0000142d set0  0x00000001 , 0x00000000 
- 00009759  0x0000142e storet  0x00000001 , 0x0000004c 
- 00009760  0x00001430 bpatch  0x00000062 , 0x0000400c 
- 00009761  0x00001431 fetcht  0x00000001 , 0x0000015e 
- 00009762  0x00001432 fetch  0x00000001 , 0x00000047 
- 00009763  0x00001433 set1  0x00000005 , 0x0000003f 
- 00009764  0x00001434 isolate1  0x00000002 , 0x00000002 
- 00009765  0x00001435 setflag  0x00000001 , 0x00000002 , 0x0000003f 
- 00009766  0x00001436 isolate1  0x0000000a , 0x00000000 
- 00009767  0x00001437 setflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00009768  0x00001438 store  0x00000001 , 0x00000047 
- 00009769  0x00001439 fetch  0x00000002 , 0x0000015f 
- 00009770  0x0000143a nbranch  0x0000264d , 0x00000034 
- 00009771  0x0000143b fetch  0x00000001 , 0x0000004c 
- 00009772  0x0000143c set0  0x00000007 , 0x0000003f 
- 00009773  0x0000143d store  0x00000001 , 0x0000004c 
- 00009774  0x0000143e fetch  0x00000001 , 0x00000180 
- 00009775  0x0000143f compare  0x00000001 , 0x0000003f , 0x00000007 
- 00009776  0x00001441 branch  0x0000264d 
- 00009777  0x00001444 bpatch  0x00000063 , 0x0000400c 
- 00009778  0x00001445 disable  0x0000002d 
- 00009779  0x00001446 fetch  0x00000002 , 0x0000001a 
- 00009780  0x00001447 increase  0x00000001 , 0x0000003f 
- 00009781  0x00001448 store  0x00000002 , 0x0000001a 
- 00009782  0x00001449 branch  0x0000264d 
- 00009783  0x0000144b fetch  0x00000002 , 0x0000001c 
- 00009784  0x0000144c increase  0x00000001 , 0x0000003f 
- 00009785  0x0000144d store  0x00000002 , 0x0000001c 
- 00009786  0x0000144e call  0x0000263e 
- 00009787  0x0000144f bmark0  0x00000011 , 0x0000263d 
- 00009788  0x00001450 set1  0x00000005 , 0x00000000 
- 00009789  0x00001452 branch  0x0000264d 
- 00009790  0x00001455 bpatch  0x00000064 , 0x0000400c 
- 00009791  0x00001456 fetch  0x00000001 , 0x00000180 
- 00009792  0x00001457 compare  0x00000003 , 0x0000003f , 0x00000003 
- 00009793  0x00001458 nbranch  0x00002646 , 0x00000001 
- 00009794  0x0000145a fetcht  0x00000001 , 0x0000004c 
- 00009795  0x0000145b set0  0x00000006 , 0x00000002 
- 00009796  0x0000145c storet  0x00000001 , 0x0000004c 
- 00009797  0x0000145d rtn 
- 00009798  0x00001461 fetcht  0x00000001 , 0x0000004c 
- 00009799  0x00001462 set0  0x00000007 , 0x00000002 
- 00009800  0x00001463 storet  0x00000001 , 0x0000004c 
- 00009801  0x00001464 branch  0x00004c0b 
- 00009802  0x00001467 fetch  0x00000001 , 0x00000047 
- 00009803  0x00001468 set1  0x00000005 , 0x0000003f 
- 00009804  0x00001469 store  0x00000001 , 0x00000047 
- 00009805  0x0000146b bpatch  0x00000065 , 0x0000400c 
- 00009806  0x0000146c disable  0x0000001d 
- 00009807  0x0000146d disable  0x0000001c 
- 00009808  0x0000146e disable  0x0000000d 
- 00009809  0x0000146f disable  0x0000000c 
- 00009810  0x00001470 disable  0x00000009 
- 00009811  0x00001471 disable  0x0000000e 
- 00009812  0x00001472 disable  0x00000007 
- 00009813  0x00001473 branch  0x000028f9 , 0x00000021 
- 00009814  0x00001474 until  0x0000003e , 0x00000027 
- 00009815  0x00001475 nop  0x00000064 
- 00009816  0x00001476 branch  0x000028f9 
- 00009817  0x00001479 bpatch  0x00000066 , 0x0000400c 
- 00009818  0x0000147a enable  0x00000009 
- 00009819  0x0000147b enable  0x0000000c 
- 00009820  0x0000147c parse  0x00000003 , 0x00000000 , 0x00000048 
- 00009821  0x0000147d isolate1  0x0000003a , 0x0000003f 
- 00009822  0x0000147e setflag  0x00000001 , 0x00000000 , 0x00000000 
- 00009823  0x0000147f copy  0x00000020 , 0x00000002 
- 00009824  0x00001480 ialigned  0x00000020 
- 00009825  0x00001481 ialigned  0x0000001e 
- 00009826  0x00001482 pulse  0x00000015 
- 00009827  0x00001483 setsect  0x00000002 , 0x000fffff 
- 00009828  0x00001484 setsect  0x00000003 , 0x0000ffff 
- 00009829  0x00001485 nop  0x00000020 
- 00009830  0x00001486 iverify  0x0000000d 
- 00009831  0x00001487 deposit  0x0000002c 
- 00009832  0x00001488 store  0x00000003 , 0x00000178 
- 00009833  0x00001489 deposit  0x0000002d 
- 00009834  0x0000148a store  0x00000001 , 0x0000017b 
- 00009835  0x0000148b copy  0x00000002 , 0x00000020 
- 00009836  0x0000148c branch  0x0000266e , 0x00000001 
- 00009837  0x0000148d branch  0x0000263d 
- 00009838  0x0000148f bpatch  0x00000067 , 0x0000400c 
- 00009839  0x00001490 parse  0x00000003 , 0x00000000 , 0x00000048 
- 00009840  0x00001491 ialigned  0x0000001f 
- 00009841  0x00001492 ialigned  0x00000004 
- 00009842  0x00001493 ialigned  0x0000002e 
- 00009843  0x00001494 ialigned  0x00000012 
- 00009844  0x00001495 force  0x00000000 , 0x0000003f 
- 00009845  0x00001496 parse  0x00000003 , 0x00000000 , 0x00000010 
- 00009846  0x00001497 branch  0x0000263d , 0x00000006 
- 00009847  0x00001498 setarg  0x0ffffffc 
- 00009848  0x00001499 iand  0x00000012 , 0x0000003f 
- 00009849  0x0000149a store  0x00000004 , 0x00000165 
- 00009850  0x0000149b deposit  0x0000001d 
- 00009851  0x0000149c store  0x00000003 , 0x00000175 
- 00009852  0x0000149d deposit  0x0000001c 
- 00009853  0x0000149e store  0x00000001 , 0x00000173 
- 00009854  0x0000149f deposit  0x00000004 
- 00009855  0x000014a0 store  0x00000001 , 0x00000174 
- 00009856  0x000014a1 deposit  0x0000002e 
- 00009857  0x000014a2 store  0x00000002 , 0x0000017c 
- 00009858  0x000014a3 deposit  0x00000021 
- 00009859  0x000014a4 inject  0x00000001 , 0x00000020 
- 00009860  0x000014a5 compare  0x00000002 , 0x00000001 , 0x0000000f 
- 00009861  0x000014a6 setflag  0x00000001 , 0x0000000b , 0x00000000 
- 00009862  0x000014a7 branch  0x0000264d 
- 00009863  0x000014aa bpatch  0x00000068 , 0x0000400d 
- 00009864  0x000014ab fetch  0x00000001 , 0x00000047 
- 00009865  0x000014ac rtnbit0  0x00000003 
- 00009866  0x000014ad set0  0x00000003 , 0x0000003f 
- 00009867  0x000014ae setflip  0x00000006 , 0x0000003f 
- 00009868  0x000014af store  0x00000001 , 0x00000047 
- 00009869  0x000014b0 fetch  0x00000001 , 0x000040c5 
- 00009870  0x000014b1 beq  0x00000013 , 0x0000269c 
- 00009871  0x000014b2 rtneq  0x00000007 
- 00009872  0x000014b3 fetch  0x00000001 , 0x0000004b 
- 00009873  0x000014b4 rtnbit0  0x00000006 , 0x0000003f 
- 00009874  0x000014b5 set0  0x00000006 , 0x0000003f 
- 00009875  0x000014b6 set1  0x00000007 , 0x0000003f 
- 00009876  0x000014b7 store  0x00000001 , 0x0000004b 
- 00009877  0x000014b8 set0  0x00000002 , 0x00000000 
- 00009878  0x000014b9 fetch  0x00000002 , 0x00004246 
- 00009879  0x000014ba nrtn  0x00000034 
- 00009880  0x000014bb fetch  0x00000001 , 0x0000004b 
- 00009881  0x000014bc set0  0x00000007 , 0x0000003f 
- 00009882  0x000014bd store  0x00000001 , 0x0000004b 
- 00009883  0x000014be branch  0x0000525d 
- 00009884  0x000014c1 bpatch  0x00000069 , 0x0000400d 
- 00009885  0x000014c2 fetch  0x00000001 , 0x000004b7 
- 00009886  0x000014c3 rshift  0x0000003f , 0x0000003f 
- 00009887  0x000014c4 beq  0x00000011 , 0x000026b8 
- 00009888  0x000014c5 beq  0x00000012 , 0x000026c0 
- 00009889  0x000014c6 beq  0x00000018 , 0x000026e9 
- 00009890  0x000014c7 beq  0x0000007f , 0x000026a8 
- 00009891  0x000014c8 rtnne  0x00000003 
- 00009892  0x000014c9 fetch  0x00000001 , 0x000004b8 
- 00009893  0x000014ca beq  0x0000002b , 0x000026b0 
- 00009894  0x000014cb beq  0x00000011 , 0x000026ab 
- 00009895  0x000014cc rtn 
- 00009896  0x000014cf fetch  0x00000001 , 0x000004b8 
- 00009897  0x000014d0 set1  0x00000007 , 0x0000003f 
- 00009898  0x000014d1 rtn 
- 00009899  0x000014d3 rtn  0x00000029 
- 00009900  0x000014d4 fetch  0x00000001 , 0x00000030 
- 00009901  0x000014d5 rtnbit1  0x00000004 
- 00009902  0x000014d6 jam  0x00000031 , 0x0000007c 
- 00009903  0x000014d7 rtn 
- 00009904  0x000014db rtn  0x00000029 
- 00009905  0x000014dc fetch  0x00000001 , 0x00000031 
- 00009906  0x000014dd isolate1  0x00000004 , 0x0000003f 
- 00009907  0x000014de branch  0x000026b5 , 0x00000001 
- 00009908  0x000014e0 rtn 
- 00009909  0x000014e2 set0  0x00000004 , 0x0000003f 
- 00009910  0x000014e3 store  0x00000001 , 0x00000031 
- 00009911  0x000014e4 rtn 
- 00009912  0x000014e7 bpatch  0x0000006a , 0x0000400d 
- 00009913  0x000014e8 fetch  0x00000001 , 0x0000004c 
- 00009914  0x000014e9 set1  0x00000002 , 0x0000003f 
- 00009915  0x000014ea store  0x00000001 , 0x0000004c 
- 00009916  0x000014eb jam  0x00000001 , 0x00008011 
- 00009917  0x000014ec fetch  0x00000001 , 0x00000030 
- 00009918  0x000014ed isolate1  0x00000004 , 0x0000003f 
- 00009919  0x000014ee rtn 
- 00009920  0x000014f1 bpatch  0x0000006b , 0x0000400d 
- 00009921  0x000014f2 fetch  0x00000001 , 0x0000004c 
- 00009922  0x000014f3 set0  0x00000002 , 0x0000003f 
- 00009923  0x000014f4 store  0x00000001 , 0x0000004c 
- 00009924  0x000014f5 jam  0x00000000 , 0x00008011 
- 00009925  0x000014f6 rtn 
- 00009926  0x000014fa bpatch  0x0000006c , 0x0000400d 
- 00009927  0x000014fb copy  0x00000022 , 0x0000003f 
- 00009928  0x000014fc store  0x00000004 , 0x0000420c 
- 00009929  0x000014fd add  0x00000022 , 0x00000003 , 0x00000011 
- 00009930  0x000014fe branch  0x000026cc , 0x00000029 
- 00009931  0x000014ff add  0x00000028 , 0x00000003 , 0x00000011 
- 00009932  0x00001501 fetcht  0x00000002 , 0x00000032 
- 00009933  0x00001502 deposit  0x00000011 
- 00009934  0x00001503 set0  0x0000001b , 0x0000003f 
- 00009935  0x00001504 idiv  0x00000002 
- 00009936  0x00001505 fetch  0x00000002 , 0x00000075 
- 00009937  0x00001506 call  0x00007f86 
- 00009938  0x00001507 remainder  0x00000013 
- 00009939  0x00001508 isub  0x00000013 , 0x0000003f 
- 00009940  0x00001509 branch  0x000026d6 , 0x00000002 
- 00009941  0x0000150a iadd  0x00000002 , 0x0000003f 
- 00009942  0x0000150c iadd  0x00000011 , 0x0000003f 
- 00009943  0x0000150d store  0x00000004 , 0x00000034 
- 00009944  0x0000150e jam  0x00000000 , 0x0000455b 
- 00009945  0x0000150f fetch  0x00000001 , 0x00000030 
- 00009946  0x00001510 set1  0x00000001 , 0x0000003f 
- 00009947  0x00001511 store  0x00000001 , 0x00000030 
- 00009948  0x00001512 fetch  0x00000001 , 0x00000073 
- 00009949  0x00001513 store  0x00000001 , 0x0000008a 
- 00009950  0x00001514 setarg  0x00000000 
- 00009951  0x00001515 store  0x00000003 , 0x00004169 
- 00009952  0x00001516 store  0x00000003 , 0x0000416c 
- 00009953  0x00001517 store  0x00000001 , 0x00004159 
- 00009954  0x00001518 jam  0x0000000b , 0x00000a99 
- 00009955  0x00001519 call  0x00007d86 
- 00009956  0x0000151a fetch  0x00000002 , 0x000040c1 
- 00009957  0x0000151b store  0x00000002 , 0x0000003e 
- 00009958  0x0000151c nrtn  0x00000029 
- 00009959  0x0000151d add  0x00000004 , 0xffffffff , 0x00000007 
- 00009960  0x0000151e rtn 
- 00009961  0x00001521 bpatch  0x0000006d , 0x0000400d 
- 00009962  0x00001522 fetch  0x00000001 , 0x00000030 
- 00009963  0x00001523 rtnbit0  0x00000001 
- 00009964  0x00001524 set0  0x00000001 , 0x0000003f 
- 00009965  0x00001525 store  0x00000001 , 0x00000030 
- 00009966  0x00001526 fetch  0x00000002 , 0x000040bf 
- 00009967  0x00001527 store  0x00000002 , 0x0000003e 
- 00009968  0x00001528 disable  0x0000002b 
- 00009969  0x00001529 jam  0x0000000c , 0x00000a99 
- 00009970  0x0000152a branch  0x00007d86 
- 00009971  0x0000152e bpatch  0x0000006e , 0x0000400d 
- 00009972  0x0000152f enable  0x0000002e 
- 00009973  0x00001530 fetch  0x00000001 , 0x00000030 
- 00009974  0x00001531 bbit1  0x00000001 , 0x00002700 
- 00009975  0x00001532 rtnmark1  0x00000011 
- 00009976  0x00001533 fetch  0x00000001 , 0x00000047 
- 00009977  0x00001534 rtnbit1  0x00000003 
- 00009978  0x00001535 fetch  0x00000001 , 0x00000048 
- 00009979  0x00001536 nrtn  0x00000034 
- 00009980  0x00001537 fetch  0x00000001 , 0x0000004b 
- 00009981  0x00001538 rtnbit1  0x00000006 
- 00009982  0x0000153a force  0x00000000 , 0x0000003f 
- 00009983  0x0000153b rtn 
- 00009984  0x0000153e bbit0  0x00000002 , 0x0000270f 
- 00009985  0x0000153f fetch  0x00000001 , 0x0000008a 
- 00009986  0x00001540 beq  0x00000002 , 0x00002706 
- 00009987  0x00001541 fetch  0x00000001 , 0x00000047 
- 00009988  0x00001542 bbit1  0x00000003 , 0x00002718 
- 00009989  0x00001543 bmark0  0x00000008 , 0x00002718 
- 00009990  0x00001545 nbranch  0x00002718 , 0x00000029 
- 00009991  0x00001546 fetch  0x00000001 , 0x00000048 
- 00009992  0x00001547 nbranch  0x00002718 , 0x00000034 
- 00009993  0x00001549 fetch  0x00000001 , 0x000000ef 
- 00009994  0x0000154a increase  0xffffffff , 0x0000003f 
- 00009995  0x0000154b store  0x00000001 , 0x000000ef 
- 00009996  0x0000154c nbranch  0x000026fe , 0x00000034 
- 00009997  0x0000154d jam  0x00000010 , 0x000000ef 
- 00009998  0x0000154e branch  0x00002718 
- 00009999  0x00001556 fetch  0x00000001 , 0x0000008a 
- 00010000  0x00001557 bne  0x00000001 , 0x00002718 
- 00010001  0x00001558 fetch  0x00000001 , 0x0000008b 
- 00010002  0x00001559 branch  0x00002718 , 0x00000034 
- 00010003  0x0000155a increase  0xffffffff , 0x0000003f 
- 00010004  0x0000155b store  0x00000001 , 0x0000008b 
- 00010005  0x0000155c fetch  0x00000001 , 0x00000047 
- 00010006  0x0000155d rtnbit1  0x00000003 
- 00010007  0x0000155e nrtn  0x0000002d 
- 00010008  0x00001560 fetch  0x00000001 , 0x0000008a 
- 00010009  0x00001561 increase  0xffffffff , 0x0000003f 
- 00010010  0x00001562 store  0x00000001 , 0x0000008a 
- 00010011  0x00001563 rtn 
- 00010012  0x0000156f bpatch  0x0000006f , 0x0000400d 
- 00010013  0x00001570 disable  0x00000010 
- 00010014  0x00001571 copy  0x00000002 , 0x0000001b 
- 00010015  0x00001572 call  0x00002260 
- 00010016  0x00001573 disable  0x00000028 
- 00010017  0x00001574 nrtn  0x00000005 
- 00010018  0x00001575 force  0x00000000 , 0x0000001b 
- 00010019  0x00001576 enable  0x00000028 
- 00010020  0x00001577 rtn 
- 00010021  0x0000157b fetch  0x00000001 , 0x00004158 
- 00010022  0x0000157c icompare  0x000000ff , 0x00000004 
- 00010023  0x0000157d rtn 
- 00010024  0x00001581 bpatch  0x00000070 , 0x0000400e 
- 00010025  0x00001582 set0  0x00000001 , 0x00000000 
- 00010026  0x00001584 jam  0x00000000 , 0x0000026a 
- 00010027  0x00001585 fetch  0x00000001 , 0x00000263 
- 00010028  0x00001586 rtn  0x00000034 
- 00010029  0x00001587 isolate1  0x00000000 , 0x0000003f 
- 00010030  0x00001588 arg  0x00001000 , 0x00000006 
- 00010031  0x00001589 call  0x00004d79 , 0x00000001 
- 00010032  0x0000158a bpatch  0x00000071 , 0x0000400e 
- 00010033  0x0000158b fetch  0x00000001 , 0x0000026a 
- 00010034  0x0000158c beq  0x00000001 , 0x0000273b 
- 00010035  0x0000158e jam  0x00000000 , 0x0000026a 
- 00010036  0x0000158f fetch  0x00000001 , 0x00000263 
- 00010037  0x00001590 rtnbit0  0x00000001 
- 00010038  0x00001591 arg  0x00001400 , 0x00000006 
- 00010039  0x00001592 call  0x00004d79 
- 00010040  0x00001593 fetch  0x00000001 , 0x0000026a 
- 00010041  0x00001594 beq  0x00000001 , 0x00002741 
- 00010042  0x00001595 rtn 
- 00010043  0x00001598 fetch  0x00000001 , 0x00000263 
- 00010044  0x00001599 set0  0x00000000 , 0x0000003f 
- 00010045  0x0000159a store  0x00000001 , 0x00000263 
- 00010046  0x0000159b setarg  0x00000000 
- 00010047  0x0000159c store  0x00000002 , 0x0000025d 
- 00010048  0x0000159d rtn 
- 00010049  0x0000159f fetch  0x00000001 , 0x00000263 
- 00010050  0x000015a0 set0  0x00000001 , 0x0000003f 
- 00010051  0x000015a1 store  0x00000001 , 0x00000263 
- 00010052  0x000015a2 setarg  0x00000000 
- 00010053  0x000015a3 store  0x00000002 , 0x0000025f 
- 00010054  0x000015a4 rtn 
- 00010055  0x000015a7 fetch  0x00000001 , 0x00000263 
- 00010056  0x000015a8 set1  0x00000000 , 0x0000003f 
- 00010057  0x000015a9 store  0x00000001 , 0x00000263 
- 00010058  0x000015aa rtn 
- 00010059  0x000015ad fetch  0x00000001 , 0x00000263 
- 00010060  0x000015ae set1  0x00000001 , 0x0000003f 
- 00010061  0x000015af store  0x00000001 , 0x00000263 
- 00010062  0x000015b0 rtn 
- 00010063  0x000015b7 bpatch  0x00000072 , 0x0000400e 
- 00010064  0x000015b8 add  0x00000028 , 0x00000001 , 0x00000021 
- 00010065  0x000015b9 call  0x000028ea 
- 00010066  0x000015ba force  0x00000003 , 0x00000024 
- 00010067  0x000015bb call  0x000028d2 
- 00010068  0x000015bc call  0x00002a51 
- 00010069  0x000015bd call  0x00002a5f 
- 00010070  0x000015be branch  0x00002a64 
- 00010071  0x000015c2 bpatch  0x00000073 , 0x0000400e 
- 00010072  0x000015c3 call  0x00002a4d 
- 00010073  0x000015c4 deposit  0x00000028 
- 00010074  0x000015c5 fetcht  0x00000004 , 0x000040ca 
- 00010075  0x000015c6 isub  0x00000002 , 0x0000003f 
- 00010076  0x000015c7 rtnne  0x00000001 
- 00010077  0x000015c8 compare  0x00000000 , 0x00000001 , 0x0000001f 
- 00010078  0x000015c9 nbranch  0x00002761 , 0x00000001 
- 00010079  0x000015ca fetch  0x00000001 , 0x00000019 
- 00010080  0x000015cb rtn  0x00000034 
- 00010081  0x000015cd call  0x0000274f 
- 00010082  0x000015cf compare  0x00000010 , 0x00000001 , 0x0000001f 
- 00010083  0x000015d0 branch  0x0000264d , 0x00000001 
- 00010084  0x000015d1 rshift  0x00000021 , 0x00000002 
- 00010085  0x000015d2 or  0x00000002 , 0x00000040 , 0x0000000e 
- 00010086  0x000015d4 bpatch  0x00000074 , 0x0000400e 
- 00010087  0x000015d5 enable  0x00000007 
- 00010088  0x000015d6 enable  0x0000000a 
- 00010089  0x000015d7 enable  0x0000001b 
- 00010090  0x000015d8 set0  0x00000010 , 0x00000000 
- 00010091  0x000015d9 deposit  0x00000004 
- 00010092  0x000015da inject  0x00000003 , 0x00000003 
- 00010093  0x000015db deposit  0x00000001 
- 00010094  0x000015dc inject  0x00000003 , 0x00000004 
- 00010095  0x000015dd fetch  0x00000001 , 0x00000047 
- 00010096  0x000015de inject  0x00000000 , 0x00000004 
- 00010097  0x000015df inject  0x00000003 , 0x00000003 
- 00010098  0x000015e0 enable  0x00000008 
- 00010099  0x000015e1 inject  0x00000003 , 0x00000008 
- 00010100  0x000015e2 disable  0x0000001b 
- 00010101  0x000015e3 disable  0x00000008 
- 00010102  0x000015e4 disable  0x0000000a 
- 00010103  0x000015e5 set0  0x00000002 , 0x00000015 
- 00010104  0x000015e6 arg  0x00000000 , 0x00000002 
- 00010105  0x000015e7 call  0x00002a1c 
- 00010106  0x000015e8 bpatch  0x00000075 , 0x0000400e 
- 00010107  0x000015e9 and  0x00000001 , 0x0000001f , 0x0000003f 
- 00010108  0x000015ea beq  0x00000013 , 0x000027b4 
- 00010109  0x000015eb beq  0x00000000 , 0x0000264d 
- 00010110  0x000015ec beq  0x00000001 , 0x0000264d 
- 00010111  0x000015ed beq  0x00000002 , 0x00002797 
- 00010112  0x000015ee beq  0x00000003 , 0x000027c5 
- 00010113  0x000015ef beq  0x00000004 , 0x000027cb 
- 00010114  0x000015f0 beq  0x00000007 , 0x0000278c 
- 00010115  0x000015f1 beq  0x00000008 , 0x000027ca 
- 00010116  0x000015f2 arg  0x00000004 , 0x00000002 
- 00010117  0x000015f3 call  0x00002a1c 
- 00010118  0x000015f4 beq  0x0000000a , 0x000027c7 
- 00010119  0x000015f5 beq  0x0000000b , 0x000027cd 
- 00010120  0x000015f6 arg  0x00000008 , 0x00000002 
- 00010121  0x000015f7 call  0x00002a1c 
- 00010122  0x000015f8 beq  0x0000000f , 0x000027cd 
- 00010123  0x000015f9 branch  0x000027c7 
- 00010124  0x000015fd bpatch  0x00000076 , 0x0000400e 
- 00010125  0x000015fe enable  0x0000001d 
- 00010126  0x000015ff enable  0x00000009 
- 00010127  0x00001600 enable  0x0000000e 
- 00010128  0x00001601 force  0x0000001e , 0x00000039 
- 00010129  0x00001602 arg  0x000000b3 , 0x00000006 
- 00010130  0x00001604 ifetch  0x00000001 , 0x00000006 
- 00010131  0x00001605 inject  0x00000003 , 0x00000008 
- 00010132  0x00001606 loop  0x00002792 
- 00010133  0x00001607 bmark1  0x00000007 , 0x000027f7 
- 00010134  0x00001608 branch  0x0000264d 
- 00010135  0x0000160b bpatch  0x00000077 , 0x0000400e 
- 00010136  0x0000160c fetch  0x00000001 , 0x00000181 
- 00010137  0x0000160d icopy  0x00000004 
- 00010138  0x0000160e fetch  0x00000001 , 0x00000090 
- 00010139  0x0000160f icopy  0x0000001c 
- 00010140  0x00001610 fetch  0x00000003 , 0x000040aa 
- 00010141  0x00001611 icopy  0x0000001d 
- 00010142  0x00001612 fetch  0x00000002 , 0x000040a4 
- 00010143  0x00001613 icopy  0x0000002e 
- 00010144  0x00001614 enable  0x00000009 
- 00010145  0x00001615 enable  0x0000001c 
- 00010146  0x00001616 copy  0x00000020 , 0x00000011 
- 00010147  0x00001617 call  0x000028e2 
- 00010148  0x00001618 pulse  0x00000015 
- 00010149  0x00001619 nop  0x00000020 
- 00010150  0x0000161a copy  0x00000021 , 0x0000000b 
- 00010151  0x0000161b fetch  0x00000004 , 0x00000161 
- 00010152  0x0000161c icopy  0x00000021 
- 00010153  0x0000161d preload  0x0000001e 
- 00010154  0x0000161e set1  0x0000003a , 0x0000003f 
- 00010155  0x0000161f inject  0x00000003 , 0x00000048 
- 00010156  0x00001620 preload  0x0000001f 
- 00010157  0x00001621 inject  0x00000003 , 0x00000048 
- 00010158  0x00001622 copy  0x0000000b , 0x00000021 
- 00010159  0x00001623 copy  0x00000011 , 0x00000020 
- 00010160  0x00001624 enable  0x00000008 
- 00010161  0x00001625 inject  0x00000003 , 0x00000010 
- 00010162  0x00001626 disable  0x00000008 
- 00010163  0x00001627 branch  0x0000264d 
- 00010164  0x0000162a bpatch  0x00000078 , 0x0000400f 
- 00010165  0x0000162b enable  0x0000000e 
- 00010166  0x0000162c enable  0x00000009 
- 00010167  0x0000162d enable  0x0000001c 
- 00010168  0x0000162e fetch  0x00000001 , 0x000004b6 
- 00010169  0x0000162f and  0x0000003f , 0x000001f8 , 0x00000002 
- 00010170  0x00001630 arg  0x000004b6 , 0x00000006 
- 00010171  0x00001631 increase  0x00000008 , 0x00000002 
- 00010172  0x00001633 add  0x00000002 , 0xffffffb8 , 0x00000013 
- 00010173  0x00001634 nbranch  0x000027c2 , 0x00000002 
- 00010174  0x00001635 ifetch  0x00000009 , 0x00000006 
- 00010175  0x00001636 inject  0x00000003 , 0x00000048 
- 00010176  0x00001637 copy  0x00000013 , 0x00000002 
- 00010177  0x00001638 branch  0x000027bc 
- 00010178  0x0000163a ifetch  0x00000009 , 0x00000006 
- 00010179  0x0000163b iinject  0x00000003 , 0x00000002 
- 00010180  0x0000163c branch  0x000027f7 
- 00010181  0x0000163f enable  0x0000001c 
- 00010182  0x00001640 branch  0x000027d0 
- 00010183  0x00001643 enable  0x0000001c 
- 00010184  0x00001644 set1  0x00000010 , 0x00000000 
- 00010185  0x00001645 branch  0x000027d0 
- 00010186  0x00001648 set1  0x00000002 , 0x00000015 
- 00010187  0x0000164a enable  0x0000001d 
- 00010188  0x0000164b branch  0x000027d0 
- 00010189  0x0000164f set1  0x00000002 , 0x00000015 
- 00010190  0x00001650 enable  0x0000001d 
- 00010191  0x00001651 set1  0x00000010 , 0x00000000 
- 00010192  0x00001654 bpatch  0x00000079 , 0x0000400f 
- 00010193  0x00001655 fetch  0x00000001 , 0x0000004c 
- 00010194  0x00001656 bbit0  0x00000005 , 0x000027e5 
- 00010195  0x00001657 sub  0x00000001 , 0x00000003 , 0x0000003e 
- 00010196  0x00001658 branch  0x000027e5 , 0x00000002 
- 00010197  0x00001659 disable  0x0000000e 
- 00010198  0x0000165a disable  0x0000001c 
- 00010199  0x0000165b enable  0x0000001d 
- 00010200  0x0000165c disable  0x00000007 
- 00010201  0x0000165d set1  0x00000001 , 0x00000015 
- 00010202  0x0000165e isolate1  0x00000002 , 0x00000015 
- 00010203  0x0000165f branch  0x000027df , 0x00000001 
- 00010204  0x00001660 setarg  0x000abeee 
- 00010205  0x00001661 inject  0x00000003 , 0x00000014 
- 00010206  0x00001662 branch  0x000027e3 
- 00010207  0x00001664 setarg  0x005faeba 
- 00010208  0x00001665 inject  0x00000003 , 0x00000018 
- 00010209  0x00001666 setarg  0x00000012 
- 00010210  0x00001667 inject  0x00000003 , 0x00000006 
- 00010211  0x00001669 enable  0x00000007 
- 00010212  0x0000166a set1  0x00000010 , 0x00000000 
- 00010213  0x0000166c enable  0x0000000e 
- 00010214  0x0000166d enable  0x00000009 
- 00010215  0x0000166e bmark1  0x00000005 , 0x00002800 
- 00010216  0x0000166f fetch  0x00000001 , 0x000041db 
- 00010217  0x00001670 inject  0x00000003 , 0x00000003 
- 00010218  0x00001671 fetch  0x00000002 , 0x000041dc 
- 00010219  0x00001672 iforce  0x00000039 
- 00010220  0x00001673 bmark1  0x00000010 , 0x000027ef 
- 00010221  0x00001674 inject  0x00000003 , 0x00000005 
- 00010222  0x00001675 branch  0x000027f0 
- 00010223  0x00001677 inject  0x00000003 , 0x0000000d 
- 00010224  0x00001679 deposit  0x00000039 
- 00010225  0x0000167a branch  0x000027f7 , 0x00000034 
- 00010226  0x0000167b fetch  0x00000002 , 0x0000016f 
- 00010227  0x0000167c iforce  0x00000006 
- 00010228  0x0000167e ifetch  0x00000001 , 0x00000006 
- 00010229  0x0000167f inject  0x00000003 , 0x00000008 
- 00010230  0x00001680 loop  0x000027f4 
- 00010231  0x00001684 enable  0x00000008 
- 00010232  0x00001685 inject  0x00000003 , 0x00000010 
- 00010233  0x00001686 disable  0x00000008 
- 00010234  0x00001687 call  0x000024c1 
- 00010235  0x00001688 fetch  0x00000001 , 0x0000004c 
- 00010236  0x00001689 bbit0  0x00000005 , 0x0000264d 
- 00010237  0x0000168a force  0x00000000 , 0x0000003f 
- 00010238  0x0000168b inject  0x00000003 , 0x00000006 
- 00010239  0x0000168c branch  0x0000264d 
- 00010240  0x00001690 bpatch  0x0000007a , 0x0000400f 
- 00010241  0x00001691 bmark1  0x00000010 , 0x00002808 
- 00010242  0x00001693 fetch  0x00000001 , 0x00000180 
- 00010243  0x00001694 inject  0x00000003 , 0x00000003 
- 00010244  0x00001695 fetch  0x00000001 , 0x0000015f 
- 00010245  0x00001696 iforce  0x00000013 
- 00010246  0x00001697 inject  0x00000003 , 0x00000005 
- 00010247  0x00001698 branch  0x0000280d 
- 00010248  0x0000169a fetch  0x00000001 , 0x00000180 
- 00010249  0x0000169b inject  0x00000003 , 0x00000003 
- 00010250  0x0000169c fetch  0x00000002 , 0x0000015f 
- 00010251  0x0000169d iforce  0x00000013 
- 00010252  0x0000169e inject  0x00000003 , 0x0000000d 
- 00010253  0x000016a0 arg  0x00000551 , 0x00000006 
- 00010254  0x000016a2 copy  0x00000013 , 0x0000003e 
- 00010255  0x000016a3 branch  0x00002814 , 0x00000005 
- 00010256  0x000016a4 ifetch  0x00000001 , 0x00000006 
- 00010257  0x000016a5 inject  0x00000003 , 0x00000008 
- 00010258  0x000016a6 increase  0xffffffff , 0x00000013 
- 00010259  0x000016a7 branch  0x0000280e 
- 00010260  0x000016a9 fetch  0x00000002 , 0x000000fc 
- 00010261  0x000016aa increase  0x00000001 , 0x0000003f 
- 00010262  0x000016ab store  0x00000002 , 0x000000fc 
- 00010263  0x000016ac branch  0x000027f7 
- 00010264  0x000016b0 fetch  0x00000004 , 0x00000165 
- 00010265  0x000016b1 add  0x0000003f , 0x00000007 , 0x00000011 
- 00010266  0x000016b2 fetch  0x00000002 , 0x00000171 
- 00010267  0x000016b3 nbranch  0x0000281e , 0x00000034 
- 00010268  0x000016b4 increase  0xfffffffd , 0x00000011 
- 00010269  0x000016b5 branch  0x00002826 
- 00010270  0x000016b7 mul32  0x0000003f , 0x0000000c , 0x0000003f 
- 00010271  0x000016b8 hfetcht  0x00000002 , 0x00008040 
- 00010272  0x000016b9 increase  0x00000001 , 0x00000002 
- 00010273  0x000016bb isub  0x00000002 , 0x0000003f 
- 00010274  0x000016bc nbranch  0x00002825 , 0x00000002 
- 00010275  0x000016bd increase  0xffffffff , 0x00000011 
- 00010276  0x000016be branch  0x00002821 
- 00010277  0x000016c0 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00010278  0x000016c2 until  0x0000003e , 0x00000023 
- 00010279  0x000016c3 compare  0x00000000 , 0x00000022 , 0x00000003 
- 00010280  0x000016c4 nbranch  0x00002826 , 0x00000001 
- 00010281  0x000016c5 iforce  0x00000029 
- 00010282  0x000016c6 copy  0x00000011 , 0x00000028 
- 00010283  0x000016c7 iforce  0x00000029 
- 00010284  0x000016c8 rtn 
- 00010285  0x000016cc bpatch  0x0000007b , 0x0000400f 
- 00010286  0x000016cd until  0x0000003e , 0x00000022 
- 00010287  0x000016ce deposit  0x0000001a 
- 00010288  0x000016cf iforce  0x00000006 
- 00010289  0x000016d0 rshift16 , 0x0000003f , 0x0000003f 
- 00010290  0x000016d1 isub  0x00000022 , 0x00000039 
- 00010291  0x000016d2 and_into  0x00000003 , 0x00000039 
- 00010292  0x000016d3 nbranch  0x00002837 , 0x00000005 
- 00010293  0x000016d4 force  0x00000000 , 0x0000003f 
- 00010294  0x000016d5 branch  0x0000283b 
- 00010295  0x000016d7 arg  0x00000ea6 , 0x00000002 
- 00010296  0x000016d8 force  0x00000000 , 0x0000003f 
- 00010297  0x000016da iadd  0x00000002 , 0x0000003f 
- 00010298  0x000016db loop  0x00002839 
- 00010299  0x000016dd iadd  0x00000006 , 0x0000003f 
- 00010300  0x000016de div  0x0000003f , 0x0000000c 
- 00010301  0x000016df call  0x00007f86 
- 00010302  0x000016e0 quotient  0x0000003f 
- 00010303  0x000016e1 store  0x00000002 , 0x00000171 
- 00010304  0x000016e2 rtn 
- 00010305  0x000016e5 bpatch  0x0000007c , 0x0000400f 
- 00010306  0x000016e6 deposit  0x0000001a 
- 00010307  0x000016e7 copy  0x00000019 , 0x00000002 
- 00010308  0x000016e8 isub  0x00000002 , 0x0000003e 
- 00010309  0x000016e9 nsetflag  0x00000002 , 0x0000002c , 0x0000003f 
- 00010310  0x000016ea isub  0x00000002 , 0x00000002 
- 00010311  0x000016eb setarg  0x00000ea6 
- 00010312  0x000016ec isolate0  0x0000000f , 0x00000002 
- 00010313  0x000016ed branch  0x0000284c , 0x00000001 
- 00010314  0x000016ee setarg  0xffff0ea6 
- 00010315  0x000016ef iadd  0x00000002 , 0x00000002 
- 00010316  0x000016f1 storet  0x00000006 , 0x00000447 
- 00010317  0x000016f2 rtn  0x00000036 
- 00010318  0x000016f3 storet  0x00000006 , 0x00000038 
- 00010319  0x000016f4 rtn 
- 00010320  0x000016f7 disable  0x00000030 
- 00010321  0x000016f8 fetch  0x00000006 , 0x00000447 
- 00010322  0x000016f9 branch  0x00002854 , 0x00000036 
- 00010323  0x000016fa fetch  0x00000006 , 0x00000038 
- 00010324  0x000016fc iadd  0x00000019 , 0x00000030 
- 00010325  0x000016fd increase  0x0000000a , 0x00000030 
- 00010326  0x000016fe setarg  0x00000ea6 
- 00010327  0x000016ff isub  0x00000030 , 0x0000003f 
- 00010328  0x00001700 isolate0  0x0000000f , 0x0000003f 
- 00010329  0x00001701 branch  0x0000285e , 0x00000001 
- 00010330  0x00001702 setarg  0x0000f15a 
- 00010331  0x00001703 iadd  0x00000030 , 0x00000030 
- 00010332  0x00001705 copy  0x00000030 , 0x0000001a 
- 00010333  0x00001706 rtn 
- 00010334  0x00001708 force  0x00000000 , 0x0000003e 
- 00010335  0x00001709 branch  0x0000285c 
- 00010336  0x00001711 bpatch  0x0000007d , 0x0000400f 
- 00010337  0x00001712 call  0x00002918 
- 00010338  0x00001713 copy  0x00000021 , 0x0000003f 
- 00010339  0x00001714 and_into  0x00000180 , 0x0000003f 
- 00010340  0x00001715 compare  0x00000003 , 0x00000024 , 0x00000007 
- 00010341  0x00001716 nbranch  0x00002869 , 0x00000001 
- 00010342  0x00001717 rshift3  0x0000003f , 0x0000003f 
- 00010343  0x00001718 iadd  0x00000017 , 0x0000003f 
- 00010344  0x00001719 branch  0x0000286a 
- 00010345  0x0000171b copy  0x00000017 , 0x0000003f 
- 00010346  0x0000171d div  0x0000003f , 0x0000004f 
- 00010347  0x0000171e pulse  0x00000015 
- 00010348  0x0000171f call  0x00007f86 
- 00010349  0x00001720 remainder  0x00000011 
- 00010350  0x00001721 add  0x00000011 , 0xffffffd8 , 0x00000002 
- 00010351  0x00001722 branch  0x00002872 , 0x00000002 
- 00010352  0x00001723 lshift  0x00000011 , 0x00000002 
- 00010353  0x00001724 branch  0x00002874 
- 00010354  0x00001726 lshift  0x00000002 , 0x00000002 
- 00010355  0x00001727 increase  0x00000001 , 0x00000002 
- 00010356  0x00001729 bpatch  0x0000007e , 0x0000400f 
- 00010357  0x0000172a fetch  0x00000001 , 0x00000031 
- 00010358  0x0000172b bbit0  0x00000003 , 0x00002885 
- 00010359  0x0000172d fetch  0x00000004 , 0x000040d2 
- 00010360  0x0000172e isub  0x00000021 , 0x0000003e 
- 00010361  0x0000172f branch  0x00002885 , 0x00000002 
- 00010362  0x00001730 call  0x000028a4 
- 00010363  0x00001731 fetch  0x00000001 , 0x000040d9 
- 00010364  0x00001732 rtn  0x00000034 
- 00010365  0x00001733 fetch  0x00000001 , 0x00000031 
- 00010366  0x00001734 set1  0x00000002 , 0x0000003f 
- 00010367  0x00001735 store  0x00000001 , 0x00000031 
- 00010368  0x00001736 fetch  0x00000005 , 0x000040e7 
- 00010369  0x00001737 store  0x00000005 , 0x000040da 
- 00010370  0x00001738 ifetch  0x00000005 , 0x00000006 
- 00010371  0x00001739 store  0x00000005 , 0x000040df 
- 00010372  0x0000173a call  0x000028a9 
- 00010373  0x0000173c fetch  0x00000001 , 0x00000031 
- 00010374  0x0000173d rtnbit0  0x00000002 
- 00010375  0x0000173e isolate1  0x00000001 , 0x00000021 
- 00010376  0x0000173f branch  0x000028a1 , 0x00000001 
- 00010377  0x00001740 rshift3  0x00000002 , 0x00000011 
- 00010378  0x00001741 and  0x00000002 , 0x00000007 , 0x00000007 
- 00010379  0x00001742 setarg  0x000040da 
- 00010380  0x00001743 iadd  0x00000011 , 0x00000011 
- 00010381  0x00001744 ifetch  0x00000001 , 0x00000011 
- 00010382  0x00001745 qisolate0  0x0000003f 
- 00010383  0x00001746 branch  0x00002892 , 0x00000001 
- 00010384  0x00001747 deposit  0x00000002 
- 00010385  0x00001748 branch  0x0000289e 
- 00010386  0x0000174a fetch  0x00000001 , 0x000040e4 
- 00010387  0x0000174b iforce  0x00000012 
- 00010388  0x0000174c deposit  0x00000021 
- 00010389  0x0000174d and_into  0x00000180 , 0x0000003f 
- 00010390  0x0000174e rshift3  0x0000003f , 0x0000003f 
- 00010391  0x0000174f iadd  0x00000017 , 0x0000003f 
- 00010392  0x00001750 idiv  0x00000012 
- 00010393  0x00001751 setarg  0x000040f2 
- 00010394  0x00001752 call  0x00007f86 
- 00010395  0x00001753 remainder  0x00000011 
- 00010396  0x00001754 iadd  0x00000011 , 0x00000006 
- 00010397  0x00001755 ifetch  0x00000001 , 0x00000006 
- 00010398  0x00001757 store  0x00000001 , 0x000040e5 
- 00010399  0x00001758 iforce  0x00000002 
- 00010400  0x00001759 rtn 
- 00010401  0x0000175c fetch  0x00000001 , 0x000040e5 
- 00010402  0x0000175d iforce  0x00000002 
- 00010403  0x0000175e rtn 
- 00010404  0x00001761 fetch  0x00000001 , 0x00000031 
- 00010405  0x00001762 set0  0x00000002 , 0x0000003f 
- 00010406  0x00001763 set0  0x00000003 , 0x0000003f 
- 00010407  0x00001764 store  0x00000001 , 0x00000031 
- 00010408  0x00001765 rtn 
- 00010409  0x0000176c bpatch  0x0000007f , 0x0000400f 
- 00010410  0x0000176d arg  0x000040f2 , 0x00000005 
- 00010411  0x0000176e force  0x0000000a , 0x00000039 
- 00010412  0x0000176f call  0x00007ec6 
- 00010413  0x00001770 arg  0x000040f2 , 0x00000005 
- 00010414  0x00001771 force  0x00000000 , 0x00000013 
- 00010415  0x00001772 force  0x00000002 , 0x00000007 
- 00010416  0x00001774 fetch  0x00000005 , 0x000040da 
- 00010417  0x00001775 iforce  0x00000002 
- 00010418  0x00001776 compare  0x00000002 , 0x00000007 , 0x000000ff 
- 00010419  0x00001777 branch  0x000028b5 , 0x00000001 
- 00010420  0x00001778 rshift  0x00000002 , 0x00000002 
- 00010421  0x0000177a isolate0  0x00000000 , 0x00000002 
- 00010422  0x0000177b branch  0x000028b9 , 0x00000001 
- 00010423  0x0000177c deposit  0x00000013 
- 00010424  0x0000177d istore  0x00000001 , 0x00000005 
- 00010425  0x0000177f rshift2  0x00000002 , 0x00000002 
- 00010426  0x00001780 increase  0x00000002 , 0x00000013 
- 00010427  0x00001781 compare  0x00000028 , 0x00000013 , 0x000000fe 
- 00010428  0x00001782 nbranch  0x000028c2 , 0x00000001 
- 00010429  0x00001783 fetch  0x00000005 , 0x000040df 
- 00010430  0x00001784 iforce  0x00000002 
- 00010431  0x00001785 compare  0x00000002 , 0x00000007 , 0x000000ff 
- 00010432  0x00001786 branch  0x000028c2 , 0x00000001 
- 00010433  0x00001787 rshift  0x00000002 , 0x00000002 
- 00010434  0x00001789 sub  0x00000013 , 0x0000004e , 0x0000003e 
- 00010435  0x0000178a branch  0x000028b5 , 0x00000002 
- 00010436  0x0000178b force  0x00000001 , 0x00000013 
- 00010437  0x0000178c increase  0xffffffff , 0x00000007 
- 00010438  0x0000178d nbranch  0x000028b0 , 0x00000005 
- 00010439  0x0000178e arg  0x000040f2 , 0x00000011 
- 00010440  0x0000178f deposit  0x00000005 
- 00010441  0x00001790 isub  0x00000011 , 0x0000003f 
- 00010442  0x00001791 store  0x00000001 , 0x000040e4 
- 00010443  0x00001792 rtn 
- 00010444  0x00001795 bpatch  0x00000080 , 0x00004010 
- 00010445  0x00001796 call  0x00002860 
- 00010446  0x00001797 fetch  0x00000001 , 0x0000017f 
- 00010447  0x00001798 bbit0  0x00000005 , 0x000028d1 
- 00010448  0x00001799 fetcht  0x00000001 , 0x000004cc 
- 00010449  0x0000179b branch  0x0000291f 
- 00010450  0x0000179f bpatch  0x00000081 , 0x00004010 
- 00010451  0x000017a0 call  0x00002860 
- 00010452  0x000017a1 fetch  0x00000001 , 0x0000017f 
- 00010453  0x000017a2 bbit0  0x00000004 , 0x000028d7 
- 00010454  0x000017a3 fetcht  0x00000001 , 0x000004cb 
- 00010455  0x000017a5 branch  0x00002933 
- 00010456  0x000017a9 force  0x00000000 , 0x0000002d 
- 00010457  0x000017aa fetch  0x00000003 , 0x000040a7 
- 00010458  0x000017ab iforce  0x0000002c 
- 00010459  0x000017ac rtn 
- 00010460  0x000017af bpatch  0x00000082 , 0x00004010 
- 00010461  0x000017b0 fetch  0x00000001 , 0x000041d3 
- 00010462  0x000017b1 icopy  0x0000002d 
- 00010463  0x000017b2 fetch  0x00000003 , 0x000041d0 
- 00010464  0x000017b3 icopy  0x0000002c 
- 00010465  0x000017b4 rtn 
- 00010466  0x000017b7 bpatch  0x00000083 , 0x00004010 
- 00010467  0x000017b8 fetch  0x00000002 , 0x000040a4 
- 00010468  0x000017b9 icopy  0x0000002e 
- 00010469  0x000017ba fetch  0x00000001 , 0x000040a3 
- 00010470  0x000017bb icopy  0x0000002d 
- 00010471  0x000017bc fetch  0x00000003 , 0x000040a0 
- 00010472  0x000017bd icopy  0x0000002c 
- 00010473  0x000017be rtn 
- 00010474  0x000017c1 bpatch  0x00000084 , 0x00004010 
- 00010475  0x000017c2 fetch  0x00000002 , 0x00000044 
- 00010476  0x000017c3 icopy  0x0000002e 
- 00010477  0x000017c4 fetch  0x00000001 , 0x00000043 
- 00010478  0x000017c5 icopy  0x0000002d 
- 00010479  0x000017c6 fetch  0x00000003 , 0x00000040 
- 00010480  0x000017c7 icopy  0x0000002c 
- 00010481  0x000017c8 rtn 
- 00010482  0x000017cc bmark1  0x00000020 , 0x000028f5 
- 00010483  0x000017cd rtnmark0  0x0000001d 
- 00010484  0x000017ce rtnmark0  0x0000001f 
- 00010485  0x000017d0 and_into  0xffffff00 , 0x0000002c 
- 00010486  0x000017d1 pulse  0x00000015 
- 00010487  0x000017d2 nop  0x00000020 
- 00010488  0x000017d3 rtn 
- 00010489  0x000017d7 bpatch  0x00000085 , 0x00004010 
- 00010490  0x000017d8 branch  0x0000290a , 0x00000021 
- 00010491  0x000017d9 jam  0x000000d4 , 0x00008955 
- 00010492  0x000017da nop  0x00000004 
- 00010493  0x000017db jam  0x000000d2 , 0x00008955 
- 00010494  0x000017dc nop  0x00000004 
- 00010495  0x000017dd jam  0x000000d1 , 0x00008955 
- 00010496  0x000017de nop  0x00000004 
- 00010497  0x000017df fetch  0x00000001 , 0x000041de 
- 00010498  0x000017e0 beq  0x00000000 , 0x00002908 
- 00010499  0x000017e1 beq  0x00000001 , 0x00002915 
- 00010500  0x000017e2 beq  0x00000002 , 0x00002908 
- 00010501  0x000017e3 beq  0x00000003 , 0x00002915 
- 00010502  0x000017e4 beq  0x00000004 , 0x00002915 
- 00010503  0x000017e5 beq  0x00000020 , 0x00002915 
- 00010504  0x000017e8 jam  0x000000d0 , 0x00008955 
- 00010505  0x000017e9 jam  0x000000e0 , 0x00008956 
- 00010506  0x000017eb force  0x00000000 , 0x00000015 
- 00010507  0x000017ec disable  0x00000021 
- 00010508  0x000017ed disable  0x00000020 
- 00010509  0x000017ee pulse  0x0000001e 
- 00010510  0x000017ef jam  0x00000000 , 0x00008902 
- 00010511  0x000017f0 jam  0x00000000 , 0x00008901 
- 00010512  0x000017f1 jam  0x00000000 , 0x00008900 
- 00010513  0x000017f2 jam  0x00000000 , 0x00008903 
- 00010514  0x000017f3 jam  0x00000070 , 0x00008904 
- 00010515  0x000017f4 jam  0x00000000 , 0x00008906 
- 00010516  0x000017f5 rtn 
- 00010517  0x000017fb jam  0x000000d0 , 0x00008955 
- 00010518  0x000017fc jam  0x000000c0 , 0x00008956 
- 00010519  0x000017fd branch  0x0000290a 
- 00010520  0x00001800 bpatch  0x00000086 , 0x00004010 
- 00010521  0x00001801 jam  0x00000000 , 0x00008902 
- 00010522  0x00001802 jam  0x00000000 , 0x00008901 
- 00010523  0x00001803 jam  0x00000018 , 0x00008900 
- 00010524  0x00001804 jam  0x000000a7 , 0x00008903 
- 00010525  0x00001805 jam  0x0000007f , 0x00008904 
- 00010526  0x00001806 rtn 
- 00010527  0x00001809 bpatch  0x00000087 , 0x00004010 
- 00010528  0x0000180b storet  0x00000001 , 0x00000017 
- 00010529  0x0000180c add  0x00000002 , 0x00000004 , 0x00000011 
- 00010530  0x0000180d jam  0x00000007 , 0x0000896d 
- 00010531  0x0000180e branch  0x00002981 
- 00010532  0x00001810 bpatch  0x00000088 , 0x00004011 
- 00010533  0x00001811 jam  0x000000cf , 0x00008901 
- 00010534  0x00001812 nop  0x0000000a 
- 00010535  0x00001813 jam  0x000000ff , 0x00008900 
- 00010536  0x00001814 jam  0x000000af , 0x00008903 
- 00010537  0x00001815 jam  0x000000ff , 0x00008904 
- 00010538  0x00001816 nop  0x0000000a 
- 00010539  0x00001817 jam  0x000000a0 , 0x00008902 
- 00010540  0x00001818 rtn 
- 00010541  0x0000181b fetch  0x00000001 , 0x000041e0 
- 00010542  0x0000181c branch  0x00002931 , 0x00000034 
- 00010543  0x0000181e add  0x00000002 , 0x00000002 , 0x00000011 
- 00010544  0x0000181f rtn 
- 00010545  0x00001821 add  0x00000002 , 0x00000000 , 0x00000011 
- 00010546  0x00001822 rtn 
- 00010547  0x00001825 bpatch  0x00000089 , 0x00004011 
- 00010548  0x00001826 storet  0x00000001 , 0x00000017 
- 00010549  0x00001827 call  0x0000292d 
- 00010550  0x00001828 call  0x00002981 
- 00010551  0x00001829 setarg  0x00000500 
- 00010552  0x0000182a call  0x00002a8f 
- 00010553  0x0000182c jam  0x00000001 , 0x00008906 
- 00010554  0x0000182d jam  0x0000003c , 0x00008900 
- 00010555  0x0000182e jam  0x000000e0 , 0x00008901 
- 00010556  0x0000182f jam  0x00000012 , 0x0000896d 
- 00010557  0x00001830 nop  0x0000000a 
- 00010558  0x00001831 jam  0x00000001 , 0x00008902 
- 00010559  0x00001832 jam  0x0000003d , 0x00008902 
- 00010560  0x00001833 nop  0x0000000a 
- 00010561  0x00001834 jam  0x000000b7 , 0x00008903 
- 00010562  0x00001835 nop  0x0000000a 
- 00010563  0x00001836 jam  0x0000007f , 0x00008902 
- 00010564  0x00001838 fetch  0x00000001 , 0x000041de 
- 00010565  0x00001839 beq  0x00000000 , 0x0000294b 
- 00010566  0x0000183a beq  0x00000001 , 0x0000294f 
- 00010567  0x0000183b beq  0x00000002 , 0x00002953 
- 00010568  0x0000183c beq  0x00000003 , 0x00002957 
- 00010569  0x0000183d beq  0x00000004 , 0x0000295b 
- 00010570  0x0000183e beq  0x00000020 , 0x0000295f 
- 00010571  0x00001840 jam  0x000000f0 , 0x00008956 
- 00010572  0x00001841 call  0x00002965 
- 00010573  0x00001842 jam  0x000000d8 , 0x00008955 
- 00010574  0x00001843 rtn 
- 00010575  0x00001846 jam  0x000000df , 0x00008956 
- 00010576  0x00001847 call  0x00002965 
- 00010577  0x00001848 jam  0x000000df , 0x00008955 
- 00010578  0x00001849 rtn 
- 00010579  0x0000184c jam  0x000000ff , 0x00008956 
- 00010580  0x0000184d call  0x00002965 
- 00010581  0x0000184e jam  0x000000df , 0x00008955 
- 00010582  0x0000184f rtn 
- 00010583  0x00001851 jam  0x000000ce , 0x00008956 
- 00010584  0x00001852 call  0x00002965 
- 00010585  0x00001853 jam  0x000000d8 , 0x00008955 
- 00010586  0x00001854 rtn 
- 00010587  0x00001857 jam  0x000000cb , 0x00008956 
- 00010588  0x00001858 call  0x00002965 
- 00010589  0x00001859 jam  0x000000d8 , 0x00008955 
- 00010590  0x0000185a rtn 
- 00010591  0x0000185d jam  0x000000d0 , 0x00008955 
- 00010592  0x0000185e jam  0x000000c0 , 0x00008956 
- 00010593  0x0000185f jam  0x0000004c , 0x00008957 
- 00010594  0x00001860 jam  0x0000006c , 0x00008958 
- 00010595  0x00001861 jam  0x00000050 , 0x00008959 
- 00010596  0x00001862 rtn 
- 00010597  0x00001865 nop  0x00000004 
- 00010598  0x00001866 jam  0x000000d1 , 0x00008955 
- 00010599  0x00001867 nop  0x00000004 
- 00010600  0x00001868 jam  0x000000d2 , 0x00008955 
- 00010601  0x00001869 nop  0x00000004 
- 00010602  0x0000186a jam  0x000000d4 , 0x00008955 
- 00010603  0x0000186b rtn 
- 00010604  0x0000186f jam  0x00000006 , 0x00008042 
- 00010605  0x00001871 fetch  0x00000002 , 0x000040c3 
- 00010606  0x00001872 bbit0  0x0000000e , 0x0000296d 
- 00010607  0x00001873 iforce  0x00000006 
- 00010608  0x00001874 arg  0x00008900 , 0x00000002 
- 00010609  0x00001876 ifetch  0x00000001 , 0x00000006 
- 00010610  0x00001877 beq  0x000000ff , 0x00002977 
- 00010611  0x00001878 ior  0x00000002 , 0x00000005 
- 00010612  0x00001879 ifetch  0x00000001 , 0x00000006 
- 00010613  0x0000187a istore  0x00000001 , 0x00000005 
- 00010614  0x0000187b branch  0x00002971 
- 00010615  0x0000187d bpatch  0x0000008a , 0x00004011 
- 00010616  0x0000187e call  0x00002be5 
- 00010617  0x0000187f call  0x000029c9 
- 00010618  0x00001881 setarg  0x000007d0 
- 00010619  0x00001882 iadd  0x00000022 , 0x0000003f 
- 00010620  0x00001883 store  0x00000004 , 0x00000169 
- 00010621  0x00001884 set1  0x00000003 , 0x00000015 
- 00010622  0x00001885 force  0x00000000 , 0x00000015 
- 00010623  0x00001886 ncall  0x00002998 , 0x0000002b 
- 00010624  0x00001887 branch  0x000029ab 
- 00010625  0x0000188b bpatch  0x0000008b , 0x00004011 
- 00010626  0x0000188c setarg  0x00000960 
- 00010627  0x0000188d iadd  0x00000011 , 0x00000002 
- 00010628  0x0000188e fetch  0x00000001 , 0x000040bd 
- 00010629  0x0000188f jam  0x00000004 , 0x0000895f 
- 00010630  0x00001890 imul32  0x00000002 , 0x0000003f 
- 00010631  0x00001891 fetcht  0x00000001 , 0x000040be 
- 00010632  0x00001892 idiv  0x00000002 
- 00010633  0x00001893 call  0x00007f86 
- 00010634  0x00001894 quotient  0x00000011 
- 00010635  0x00001895 remainder  0x0000003f 
- 00010636  0x00001896 lshift16  0x0000003f , 0x0000003f 
- 00010637  0x00001897 lshift4  0x0000003f , 0x0000003f 
- 00010638  0x00001898 idiv  0x00000002 
- 00010639  0x00001899 call  0x00007f86 
- 00010640  0x0000189a quotient  0x0000003f 
- 00010641  0x0000189b lshift8  0x0000003f , 0x0000003f 
- 00010642  0x0000189c lshift  0x0000003f , 0x0000003f 
- 00010643  0x0000189d ior  0x00000011 , 0x0000003f 
- 00010644  0x0000189e hstore  0x00000004 , 0x00008960 
- 00010645  0x0000189f jam  0x00000044 , 0x0000895f 
- 00010646  0x000018a0 jam  0x000000c4 , 0x0000895f 
- 00010647  0x000018a1 rtn 
- 00010648  0x000018a5 bpatch  0x0000008c , 0x00004011 
- 00010649  0x000018a6 jam  0x00000002 , 0x00008906 
- 00010650  0x000018a7 setarg  0x0003d090 
- 00010651  0x000018a8 call  0x00002a8f 
- 00010652  0x000018a9 jam  0x0000007f , 0x00008900 
- 00010653  0x000018aa nop  0x00000082 
- 00010654  0x000018ab jam  0x00000030 , 0x00008952 
- 00010655  0x000018ac jam  0x000000d0 , 0x00008901 
- 00010656  0x000018ad jam  0x00000070 , 0x00008952 
- 00010657  0x000018ae jam  0x000000f0 , 0x00008952 
- 00010658  0x000018af force  0x00000032 , 0x00000039 
- 00010659  0x000018b1 hfetch  0x00000001 , 0x00008980 
- 00010660  0x000018b2 bbit1  0x00000005 , 0x000029a6 
- 00010661  0x000018b3 loop  0x000029a3 
- 00010662  0x000018b5 store  0x00000001 , 0x000040ce 
- 00010663  0x000018b6 jam  0x00000000 , 0x00008901 
- 00010664  0x000018b7 jam  0x00000000 , 0x00008900 
- 00010665  0x000018b8 jam  0x00000000 , 0x00008906 
- 00010666  0x000018b9 rtn 
- 00010667  0x000018bc bpatch  0x0000008d , 0x00004011 
- 00010668  0x000018bd fetch  0x00000001 , 0x000040ce 
- 00010669  0x000018be set1  0x00000005 , 0x0000003f 
- 00010670  0x000018bf hstore  0x00000001 , 0x00008952 
- 00010671  0x000018c0 hfetcht  0x00000001 , 0x00008950 
- 00010672  0x000018c1 and_into  0x00000007 , 0x00000002 
- 00010673  0x000018c2 lshift3  0x0000003f , 0x0000003f 
- 00010674  0x000018c3 ior  0x00000002 , 0x0000003f 
- 00010675  0x000018c4 hstore  0x00000001 , 0x00008950 
- 00010676  0x000018c5 hfetch  0x00000001 , 0x00008951 
- 00010677  0x000018c6 set0  0x00000000 , 0x0000003f 
- 00010678  0x000018c7 hstore  0x00000001 , 0x00008951 
- 00010679  0x000018c8 hfetch  0x00000001 , 0x00008952 
- 00010680  0x000018c9 set0  0x00000005 , 0x0000003f 
- 00010681  0x000018ca hstore  0x00000001 , 0x00008952 
- 00010682  0x000018cb rtn 
- 00010683  0x000018ce bpatch  0x0000008e , 0x00004011 
- 00010684  0x000018cf hfetch  0x00000002 , 0x00008981 
- 00010685  0x000018d0 rshift4  0x0000003f , 0x0000003f 
- 00010686  0x000018d1 rshift3  0x0000003f , 0x0000003f 
- 00010687  0x000018d2 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00010688  0x000018d4 and_into  0x000000ff , 0x0000003f 
- 00010689  0x000018d5 div  0x0000003f , 0x0000000a 
- 00010690  0x000018d6 call  0x00007f86 
- 00010691  0x000018d7 quotient  0x0000003f 
- 00010692  0x000018d8 lshift4  0x0000003f , 0x0000003f 
- 00010693  0x000018d9 remainder  0x00000002 
- 00010694  0x000018da ior  0x00000002 , 0x0000003f 
- 00010695  0x000018db store  0x00000001 , 0x00000018 
- 00010696  0x000018dc rtn 
- 00010697  0x000018e0 jam  0x00000006 , 0x00008042 
- 00010698  0x000018e1 hfetch  0x00000001 , 0x0000896b 
- 00010699  0x000018e2 set0  0x00000004 , 0x0000003f 
- 00010700  0x000018e3 set0  0x00000005 , 0x0000003f 
- 00010701  0x000018e4 hstore  0x00000001 , 0x0000896b 
- 00010702  0x000018e5 jam  0x00000000 , 0x00008905 
- 00010703  0x000018e6 jam  0x00000000 , 0x00008904 
- 00010704  0x000018e7 jam  0x00000070 , 0x00008904 
- 00010705  0x000018e8 jam  0x000000ff , 0x00008905 
- 00010706  0x000018e9 hfetch  0x00000001 , 0x0000896b 
- 00010707  0x000018ea set1  0x00000004 , 0x0000003f 
- 00010708  0x000018eb set1  0x00000005 , 0x0000003f 
- 00010709  0x000018ec hstore  0x00000001 , 0x0000896b 
- 00010710  0x000018ed call  0x000029e9 
- 00010711  0x000018ee hfetch  0x00000001 , 0x00008968 
- 00010712  0x000018ef set1  0x00000007 , 0x0000003f 
- 00010713  0x000018f0 hstore  0x00000001 , 0x00008968 
- 00010714  0x000018f1 set0  0x00000007 , 0x0000003f 
- 00010715  0x000018f2 hstore  0x00000001 , 0x00008968 
- 00010716  0x000018f3 set1  0x00000007 , 0x0000003f 
- 00010717  0x000018f4 hstore  0x00000001 , 0x00008968 
- 00010718  0x000018f5 jam  0x00000005 , 0x00008042 
- 00010719  0x000018f6 nop  0x00000001 
- 00010720  0x000018f7 jam  0x00000004 , 0x00008042 
- 00010721  0x000018f8 hfetch  0x00000001 , 0x0000896b 
- 00010722  0x000018f9 and_into  0x000000cf , 0x0000003f 
- 00010723  0x000018fa hstore  0x00000001 , 0x0000896b 
- 00010724  0x000018fb or_into  0x00000030 , 0x0000003f 
- 00010725  0x000018fc hstore  0x00000001 , 0x0000896b 
- 00010726  0x000018fd rtn 
- 00010727  0x00001901 setarg  0x00000f0f 
- 00010728  0x00001902 branch  0x00002c18 
- 00010729  0x00001905 setarg  0x0000080f 
- 00010730  0x00001906 branch  0x00002c18 
- 00010731  0x0000190b bpatch  0x0000008f , 0x00004011 
- 00010732  0x0000190c call  0x00002924 
- 00010733  0x0000190d disable  0x00000020 
- 00010734  0x0000190e enable  0x00000021 
- 00010735  0x0000190f pulse  0x00000016 
- 00010736  0x00001910 rtn 
- 00010737  0x00001913 bpatch  0x00000090 , 0x00004012 
- 00010738  0x00001914 fetch  0x00000001 , 0x0000004c 
- 00010739  0x00001915 isolate1  0x00000002 , 0x0000003f 
- 00010740  0x00001916 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00010741  0x00001917 hstore  0x00000001 , 0x00008011 
- 00010742  0x00001918 arg  0x00000062 , 0x00000006 
- 00010743  0x00001919 ifetch  0x00000009 , 0x00000006 
- 00010744  0x0000191a iforce  0x00000032 
- 00010745  0x0000191b ifetch  0x00000007 , 0x00000006 
- 00010746  0x0000191c iforce  0x00000033 
- 00010747  0x0000191d fetch  0x00000001 , 0x00000054 
- 00010748  0x0000191e add  0x0000003f , 0xffffffff , 0x00000034 
- 00010749  0x0000191f pulse  0x0000001a 
- 00010750  0x00001920 rtn 
- 00010751  0x00001923 deposit  0x0000001a 
- 00010752  0x00001924 store  0x00000006 , 0x0000009a 
- 00010753  0x00001925 disable  0x0000000d 
- 00010754  0x00001926 nbranch  0x000028f9 , 0x00000018 
- 00010755  0x00001927 arg  0x000003bb , 0x00000029 
- 00010756  0x00001928 increase  0x00000001 , 0x00000028 
- 00010757  0x00001929 and_into  0x000001fc , 0x00000028 
- 00010758  0x0000192a rtn 
- 00010759  0x0000192f enable  0x0000000d 
- 00010760  0x00001931 correlate  0x0000003e , 0x00000017 
- 00010761  0x00001932 branch  0x000029ff , 0x00000018 
- 00010762  0x00001933 compare  0x00000002 , 0x00000028 , 0x00000002 
- 00010763  0x00001934 nbranch  0x00002a08 , 0x00000001 
- 00010764  0x00001935 branch  0x000029ff 
- 00010765  0x00001938 bpatch  0x00000091 , 0x00004012 
- 00010766  0x00001939 arg  0x00000600 , 0x0000000b 
- 00010767  0x0000193a enable  0x0000000d 
- 00010768  0x0000193b correlate  0x00000023 , 0x00000026 
- 00010769  0x0000193c disable  0x0000000d 
- 00010770  0x0000193d nbranch  0x000028f9 , 0x00000018 
- 00010771  0x0000193e rtn 
- 00010772  0x00001941 bpatch  0x00000092 , 0x00004012 
- 00010773  0x00001942 enable  0x0000000d 
- 00010774  0x00001943 correlate  0x0000003e , 0x00000003 
- 00010775  0x00001944 disable  0x0000000d 
- 00010776  0x00001945 nbranch  0x000028f9 , 0x00000018 
- 00010777  0x00001946 arg  0x000003bb , 0x00000029 
- 00010778  0x00001947 and_into  0x000001fc , 0x00000028 
- 00010779  0x00001948 rtn 
- 00010780  0x0000194c bpatch  0x00000093 , 0x00004012 
- 00010781  0x0000194d iforce  0x00000011 
- 00010782  0x0000194e deposit  0x00000021 
- 00010783  0x0000194f iadd  0x00000002 , 0x0000000b 
- 00010784  0x00001950 copy  0x0000000b , 0x0000003f 
- 00010785  0x00001951 store  0x00000004 , 0x000040ca 
- 00010786  0x00001952 deposit  0x00000011 
- 00010787  0x00001953 rtn 
- 00010788  0x00001957 copy  0x0000003f , 0x00000002 
- 00010789  0x00001958 bpatch  0x00000094 , 0x00004012 
- 00010790  0x00001959 copy  0x00000002 , 0x0000003f 
- 00010791  0x0000195a call  0x00007f50 
- 00010792  0x0000195b lshift16  0x00000021 , 0x0000003f 
- 00010793  0x0000195c set1  0x0000002c , 0x0000003f 
- 00010794  0x0000195d call  0x00007f39 
- 00010795  0x0000195e set0  0x0000002c , 0x0000003f 
- 00010796  0x0000195f call  0x00002a77 
- 00010797  0x00001960 call  0x00007f39 
- 00010798  0x00001961 rtn  0x00000028 
- 00010799  0x00001962 call  0x00007f43 
- 00010800  0x00001963 iforce  0x0000001b 
- 00010801  0x00001964 until  0x0000003e , 0x00000003 
- 00010802  0x00001965 rtn 
- 00010803  0x00001969 bpatch  0x00000095 , 0x00004012 
- 00010804  0x0000196a branch  0x00002a38 , 0x00000030 
- 00010805  0x0000196b until  0x00000029 , 0x00000026 
- 00010806  0x0000196d copy  0x00000028 , 0x00000002 
- 00010807  0x0000196e branch  0x00002a3b 
- 00010808  0x00001970 branch  0x00002a3a , 0x0000002e 
- 00010809  0x00001971 until  0x00000023 , 0x00000026 
- 00010810  0x00001973 copy  0x00000022 , 0x00000002 
- 00010811  0x00001975 branch  0x00002a47 , 0x00000028 
- 00010812  0x00001976 compare  0x00000001 , 0x00000002 , 0x00000003 
- 00010813  0x00001977 nbranch  0x00002a33 , 0x00000001 
- 00010814  0x00001979 bpatch  0x00000096 , 0x00004012 
- 00010815  0x0000197a fetch  0x00000001 , 0x00000030 
- 00010816  0x0000197b rtnbit0  0x00000000 
- 00010817  0x0000197c fetch  0x00000004 , 0x000040ca 
- 00010818  0x0000197d isub  0x00000002 , 0x0000003f 
- 00010819  0x0000197e nrtn  0x00000002 
- 00010820  0x0000197f sub  0x0000003f , 0x000000ff , 0x0000003e 
- 00010821  0x00001980 branch  0x00002a33 , 0x00000002 
- 00010822  0x00001981 rtn 
- 00010823  0x00001983 compare  0x00000003 , 0x00000002 , 0x00000003 
- 00010824  0x00001984 nbranch  0x00002a33 , 0x00000001 
- 00010825  0x00001985 branch  0x00002a3e 
- 00010826  0x00001988 bpatch  0x00000097 , 0x00004012 
- 00010827  0x00001989 arg  0x00000600 , 0x0000000b 
- 00010828  0x0000198a branch  0x00002a33 
- 00010829  0x0000198d disable  0x00000028 
- 00010830  0x0000198e branch  0x00002a4a 
- 00010831  0x00001991 enable  0x00000028 
- 00010832  0x00001992 branch  0x00002a4a 
- 00010833  0x00001995 bpatch  0x00000098 , 0x00004013 
- 00010834  0x00001996 call  0x000029f1 
- 00010835  0x00001997 disable  0x00000021 
- 00010836  0x00001998 enable  0x00000020 
- 00010837  0x00001999 rtn 
- 00010838  0x0000199e bpatch  0x00000099 , 0x00004013 
- 00010839  0x0000199f arg  0x00000e43 , 0x0000000b 
- 00010840  0x000019a0 until  0x00000023 , 0x00000026 
- 00010841  0x000019a1 pulse  0x00000016 
- 00010842  0x000019a2 rtn 
- 00010843  0x000019a5 bpatch  0x0000009a , 0x00004013 
- 00010844  0x000019a6 arg  0x00000d00 , 0x0000000b 
- 00010845  0x000019a7 until  0x00000023 , 0x00000026 
- 00010846  0x000019a8 rtn 
- 00010847  0x000019ac bpatch  0x0000009b , 0x00004013 
- 00010848  0x000019ad arg  0x00000e43 , 0x0000000b 
- 00010849  0x000019ae until  0x00000029 , 0x00000026 
- 00010850  0x000019af pulse  0x00000016 
- 00010851  0x000019b0 rtn 
- 00010852  0x000019b3 bpatch  0x0000009c , 0x00004013 
- 00010853  0x000019b4 preload  0x00000009 
- 00010854  0x000019b5 enable  0x0000001d 
- 00010855  0x000019b6 set1  0x00000000 , 0x00000015 
- 00010856  0x000019b7 inject  0x00000003 , 0x00000048 
- 00010857  0x000019b8 disable  0x0000001d 
- 00010858  0x000019b9 rtn 
- 00010859  0x000019bd copy  0x00000025 , 0x00000002 
- 00010860  0x000019be or_into  0x00000060 , 0x00000002 
- 00010861  0x000019bf copy  0x00000002 , 0x0000000e 
- 00010862  0x000019c0 rtn 
- 00010863  0x000019c6 bpatch  0x0000009d , 0x00004013 
- 00010864  0x000019c7 fetch  0x00000001 , 0x00004090 
- 00010865  0x000019c8 increase  0x00000001 , 0x0000003f 
- 00010866  0x000019c9 bne  0x00000007 , 0x00002a74 
- 00010867  0x000019ca force  0x00000001 , 0x0000003f 
- 00010868  0x000019cc store  0x00000001 , 0x00004090 
- 00010869  0x000019cd iforce  0x00000004 
- 00010870  0x000019ce rtn 
- 00010871  0x000019d1 copy  0x00000019 , 0x00000002 
- 00010872  0x000019d2 rtn  0x00000029 
- 00010873  0x000019d3 copy  0x0000001a , 0x00000002 
- 00010874  0x000019d4 rtn 
- 00010875  0x000019d7 deposit  0x00000022 
- 00010876  0x000019d8 rtn  0x00000029 
- 00010877  0x000019d9 deposit  0x00000028 
- 00010878  0x000019da rtn 
- 00010879  0x000019de bpatch  0x0000009e , 0x00004013 
- 00010880  0x000019df fetcht  0x00000004 , 0x0000004d 
- 00010881  0x000019e0 call  0x00002a7b 
- 00010882  0x000019e1 isub  0x00000002 , 0x0000000b 
- 00010883  0x000019e2 deposit  0x0000000b 
- 00010884  0x000019e3 fetcht  0x00000002 , 0x00000051 
- 00010885  0x000019e4 lshift  0x00000002 , 0x00000002 
- 00010886  0x000019e5 isub  0x00000002 , 0x0000003f 
- 00010887  0x000019e6 rtn 
- 00010888  0x000019e9 bpatch  0x0000009f , 0x00004013 
- 00010889  0x000019ea call  0x00002a7b 
- 00010890  0x000019eb store  0x00000004 , 0x0000004d 
- 00010891  0x000019ec rtn 
- 00010892  0x000019ef bpatch  0x000000a0 , 0x00004014 
- 00010893  0x000019f0 branch  0x00002a8c 
- 00010894  0x000019f3 branch  0x00002a8e 
- 00010895  0x000019f6 rtn  0x00000034 
- 00010896  0x000019f8 rshift  0x0000003f , 0x0000003f 
- 00010897  0x000019f9 increase  0xfffffffd , 0x0000003f 
- 00010898  0x000019fb increase  0xffffffff , 0x0000003f 
- 00010899  0x000019fc nbranch  0x00002a92 , 0x00000005 
- 00010900  0x000019fd force  0x00000000 , 0x0000003f 
- 00010901  0x000019fe rtn 
- 00010902  0x00001a04 arg  0x00000010 , 0x00000039 
- 00010903  0x00001a05 arg  0x00000000 , 0x00000005 
- 00010904  0x00001a06 call  0x00007ec6 
- 00010905  0x00001a07 arg  0x0000043f , 0x00000005 
- 00010906  0x00001a08 arg  0x0000000a , 0x00000039 
- 00010907  0x00001a09 call  0x00007ec6 
- 00010908  0x00001a0a jam  0x00000000 , 0x000009b2 
- 00010909  0x00001a0b jam  0x00000000 , 0x00000a99 
- 00010910  0x00001a0c jam  0x00000000 , 0x0000048c 
- 00010911  0x00001a0d jam  0x00000000 , 0x0000017f 
- 00010912  0x00001a0e jam  0x00000000 , 0x000004d1 
- 00010913  0x00001a0f bpatch  0x000000a1 , 0x00004014 
- 00010914  0x00001a10 jam  0x00000000 , 0x0000016d 
- 00010915  0x00001a11 jam  0x00000000 , 0x00000151 
- 00010916  0x00001a12 jam  0x00000000 , 0x0000015c 
- 00010917  0x00001a13 setarg  0x009e8b33 
- 00010918  0x00001a14 store  0x00000003 , 0x000040a7 
- 00010919  0x00001a15 setarg  0x00000153 
- 00010920  0x00001a16 store  0x00000002 , 0x00000083 
- 00010921  0x00001a17 jam  0x0000001e , 0x00000085 
- 00010922  0x00001a18 jam  0x00000001 , 0x00000086 
- 00010923  0x00001a19 jam  0x00000007 , 0x00000088 
- 00010924  0x00001a1a setarg  0x0012e904 
- 00010925  0x00001a1b store  0x00000003 , 0x00000080 
- 00010926  0x00001a20 jam  0x00000060 , 0x00000090 
- 00010927  0x00001a21 jam  0x00000005 , 0x000040d0 
- 00010928  0x00001a22 jam  0x00000002 , 0x00000014 
- 00010929  0x00001a23 fetch  0x00000001 , 0x0000465a 
- 00010930  0x00001a24 ncall  0x000074c1 , 0x00000034 
- 00010931  0x00001a25 fetch  0x00000001 , 0x000044be 
- 00010932  0x00001a26 ncall  0x00007518 , 0x00000034 
- 00010933  0x00001a27 bpatch  0x000000a2 , 0x00004014 
- 00010934  0x00001a28 rtn  0x0000002b 
- 00010935  0x00001a29 setarg  0x00000000 
- 00010936  0x00001a2a store  0x00000002 , 0x000041dc 
- 00010937  0x00001a2b rshift  0x00000022 , 0x0000003f 
- 00010938  0x00001a2c store  0x00000004 , 0x00004094 
- 00010939  0x00001a2d rtn 
- 00010940  0x00001a35 setarg  0x0000ee21 
- 00010941  0x00001a36 hstore  0x00000002 , 0x00008050 
- 00010942  0x00001a37 hfetch  0x00000004 , 0x0000811c 
- 00010943  0x00001a38 store  0x00000004 , 0x00000abe 
- 00010944  0x00001a39 hfetch  0x00000001 , 0x0000813e 
- 00010945  0x00001a3a store  0x00000001 , 0x00000abd 
- 00010946  0x00001a3b bbit0  0x00000003 , 0x0000645b 
- 00010947  0x00001a3c enable  0x0000002b 
- 00010948  0x00001a3d bbit0  0x00000007 , 0x00002acc 
- 00010949  0x00001a3e disable  0x0000002b 
- 00010950  0x00001a3f deposit  0x00000027 
- 00010951  0x00001a40 nbranch  0x00002acc , 0x00000034 
- 00010952  0x00001a41 hfetch  0x00000001 , 0x0000813b 
- 00010953  0x00001a42 bbit1  0x00000002 , 0x00002acc 
- 00010954  0x00001a43 arg  0xffffffff , 0x00000002 
- 00010955  0x00001a44 branch  0x00002b3c 
- 00010956  0x00001a46 hfetch  0x00000003 , 0x0000813c 
- 00010957  0x00001a47 hstore  0x00000003 , 0x0000804c 
- 00010958  0x00001a48 ifetch  0x00000001 , 0x00000006 
- 00010959  0x00001a49 or_into  0x000000ef , 0x0000003f 
- 00010960  0x00001a4a istore  0x00000001 , 0x00000005 
- 00010961  0x00001a4b call  0x00002c23 
- 00010962  0x00001a4c hfetch  0x00000001 , 0x0000804f 
- 00010963  0x00001a4d set1  0x00000004 , 0x0000003f 
- 00010964  0x00001a4e hstore  0x00000001 , 0x0000804f 
- 00010965  0x00001a4f call  0x00002c23 
- 00010966  0x00001a50 call  0x00002adf , 0x0000002b 
- 00010967  0x00001a51 hfetch  0x00000001 , 0x0000804e 
- 00010968  0x00001a52 set0  0x00000003 , 0x0000003f 
- 00010969  0x00001a53 hstore  0x00000001 , 0x0000804e 
- 00010970  0x00001a54 call  0x00002c23 
- 00010971  0x00001a55 nbranch  0x0000645b , 0x0000002b 
- 00010972  0x00001a56 rtnmark0  0x0000002b 
- 00010973  0x00001a57 jam  0x00000008 , 0x00008006 
- 00010974  0x00001a58 rtn 
- 00010975  0x00001a5b fetch  0x00000001 , 0x00004198 
- 00010976  0x00001a5c hstore  0x00000001 , 0x00008086 
- 00010977  0x00001a5d fetch  0x00000003 , 0x0000418d 
- 00010978  0x00001a5e hstore  0x00000003 , 0x00008080 
- 00010979  0x00001a5f fetch  0x00000004 , 0x00004181 
- 00010980  0x00001a60 hstore  0x00000004 , 0x00008074 
- 00010981  0x00001a61 fetch  0x00000004 , 0x0000417d 
- 00010982  0x00001a62 hstore  0x00000004 , 0x00008070 
- 00010983  0x00001a63 fetch  0x00000008 , 0x00004185 
- 00010984  0x00001a64 hstore  0x00000008 , 0x00008078 
- 00010985  0x00001a65 fetch  0x00000008 , 0x00004190 
- 00010986  0x00001a66 iforce  0x00000000 
- 00010987  0x00001a67 hfetch  0x00000008 , 0x00008140 
- 00010988  0x00001a68 store  0x00000008 , 0x000000a1 
- 00010989  0x00001a69 call  0x000064ca 
- 00010990  0x00001a6a rtn 
- 00010991  0x00001a6d deposit  0x00000000 
- 00010992  0x00001a6e store  0x00000008 , 0x00004190 
- 00010993  0x00001a6f hfetch  0x00000008 , 0x00008070 
- 00010994  0x00001a70 store  0x00000008 , 0x0000417d 
- 00010995  0x00001a71 ifetch  0x00000008 , 0x00000006 
- 00010996  0x00001a72 istore  0x00000008 , 0x00000005 
- 00010997  0x00001a73 hfetch  0x00000003 , 0x00008080 
- 00010998  0x00001a74 store  0x00000003 , 0x0000418d 
- 00010999  0x00001a75 hfetch  0x00000001 , 0x00008086 
- 00011000  0x00001a76 store  0x00000001 , 0x00004198 
- 00011001  0x00001a77 branch  0x00002c29 
- 00011002  0x00001a7a hfetch  0x00000001 , 0x00008063 
- 00011003  0x00001a7b nbranch  0x00002b00 , 0x00000034 
- 00011004  0x00001a7c fetch  0x00000003 , 0x0000416f 
- 00011005  0x00001a7d nrtn  0x00000034 
- 00011006  0x00001a7e jam  0x000000c0 , 0x00008063 
- 00011007  0x00001a7f jam  0x00000080 , 0x00008006 
- 00011008  0x00001a81 hfetch  0x00000001 , 0x0000812d 
- 00011009  0x00001a82 rtnbit0  0x00000001 
- 00011010  0x00001a83 hfetch  0x00000003 , 0x00008149 
- 00011011  0x00001a84 store  0x00000003 , 0x0000416f 
- 00011012  0x00001a85 rtn 
- 00011013  0x00001a8a bpatch  0x000000a3 , 0x00004014 
- 00011014  0x00001a8b deposit  0x0000001a 
- 00011015  0x00001a8c call  0x00007f37 
- 00011016  0x00001a8d fetcht  0x00000004 , 0x0000415f 
- 00011017  0x00001a8e sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00011018  0x00001a8f rtn  0x00000002 
- 00011019  0x00001a90 lshift8  0x0000003f , 0x0000003f 
- 00011020  0x00001a91 lshift4  0x0000003f , 0x0000003f 
- 00011021  0x00001a92 idiv  0x00000002 
- 00011022  0x00001a93 call  0x00007f86 
- 00011023  0x00001a94 quotient  0x0000003f 
- 00011024  0x00001a95 arg  0x000000c8 , 0x00000002 
- 00011025  0x00001a96 call  0x00007f91 
- 00011026  0x00001a97 store  0x00000001 , 0x00000099 
- 00011027  0x00001a98 nbranch  0x00002b15 , 0x00000028 
- 00011028  0x00001a99 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00011029  0x00001a9b fetcht  0x00000003 , 0x0000416f 
- 00011030  0x00001a9c iadd  0x00000002 , 0x0000003f 
- 00011031  0x00001a9d store  0x00000003 , 0x0000416f 
- 00011032  0x00001a9f setarg  0x00000000 
- 00011033  0x00001aa0 store  0x00000004 , 0x0000415f 
- 00011034  0x00001aa1 rtn 
- 00011035  0x00001aa6 fetch  0x00000001 , 0x00004177 
- 00011036  0x00001aa7 set1  0x00000002 , 0x0000003f 
- 00011037  0x00001aa8 store  0x00000001 , 0x00004177 
- 00011038  0x00001aa9 branch  0x00002b23 
- 00011039  0x00001aae arg  0xffffffff , 0x00000002 
- 00011040  0x00001aaf fetch  0x00000001 , 0x00004176 
- 00011041  0x00001ab0 set0  0x00000007 , 0x0000003f 
- 00011042  0x00001ab1 store  0x00000001 , 0x00004176 
- 00011043  0x00001ab3 bpatch  0x000000a4 , 0x00004014 
- 00011044  0x00001ab4 call  0x00002c29 
- 00011045  0x00001ab5 fetch  0x00000001 , 0x00004157 
- 00011046  0x00001ab6 store  0x00000001 , 0x0000417c 
- 00011047  0x00001ab7 fetch  0x00000001 , 0x0000417a 
- 00011048  0x00001ab8 set1  0x00000007 , 0x0000003f 
- 00011049  0x00001ab9 store  0x00000001 , 0x0000417a 
- 00011050  0x00001abd bpatch  0x000000a5 , 0x00004014 
- 00011051  0x00001abe call  0x000029e7 
- 00011052  0x00001abf fetch  0x00000004 , 0x0000415f 
- 00011053  0x00001ac0 iadd  0x00000002 , 0x0000003f 
- 00011054  0x00001ac1 store  0x00000004 , 0x0000415f 
- 00011055  0x00001ac2 call  0x00002aef 
- 00011056  0x00001ac3 fetch  0x00000005 , 0x00004178 
- 00011057  0x00001ac4 hstore  0x00000004 , 0x0000804c 
- 00011058  0x00001ac5 rshift32  0x0000003f , 0x00000011 
- 00011059  0x00001ac6 until  0x0000003e , 0x00000033 
- 00011060  0x00001ac7 deposit  0x00000019 
- 00011061  0x00001ac8 store  0x00000006 , 0x00004163 
- 00011062  0x00001ac9 jam  0x00000002 , 0x00008005 
- 00011063  0x00001aca until  0x0000003e , 0x00000033 
- 00011064  0x00001acb until  0x0000003e , 0x00000033 
- 00011065  0x00001acc deposit  0x00000011 
- 00011066  0x00001acd hstore  0x00000001 , 0x0000804f 
- 00011067  0x00001ace jam  0x00000002 , 0x00008005 
- 00011068  0x00001ad0 until  0x0000003e , 0x00000033 
- 00011069  0x00001ad1 until  0x0000003e , 0x00000033 
- 00011070  0x00001ad2 hstoret  0x00000004 , 0x0000804c 
- 00011071  0x00001ad3 jam  0x00000010 , 0x00008005 
- 00011072  0x00001ad4 until  0x0000003e , 0x0000003f 
- 00011073  0x00001ada bpatch  0x000000a6 , 0x00004014 
- 00011074  0x00001adb setarg  0x00000000 
- 00011075  0x00001adc copy  0x00000027 , 0x0000003e 
- 00011076  0x00001add branch  0x00002b4c , 0x00000005 
- 00011077  0x00001ade hfetch  0x00000001 , 0x0000813c 
- 00011078  0x00001adf hfetcht  0x00000001 , 0x0000813d 
- 00011079  0x00001ae0 isub  0x00000002 , 0x0000003e 
- 00011080  0x00001ae1 branch  0x00002b4a , 0x00000002 
- 00011081  0x00001ae2 deposit  0x00000002 
- 00011082  0x00001ae4 isub  0x00000027 , 0x0000003f 
- 00011083  0x00001ae5 increase  0x00000001 , 0x0000003f 
- 00011084  0x00001ae7 increase  0x00000008 , 0x0000003f 
- 00011085  0x00001ae8 until  0x0000003e , 0x00000033 
- 00011086  0x00001ae9 iadd  0x00000031 , 0x0000003f 
- 00011087  0x00001aea fetcht  0x00000004 , 0x0000415b 
- 00011088  0x00001aeb iadd  0x00000002 , 0x0000003f 
- 00011089  0x00001aec fetcht  0x00000003 , 0x0000416f 
- 00011090  0x00001aed imul32  0x00000002 , 0x0000003f 
- 00011091  0x00001aee rshift8  0x0000003f , 0x0000003f 
- 00011092  0x00001aef rshift4  0x0000003f , 0x0000003f 
- 00011093  0x00001af0 increase  0x0000006e , 0x0000003f 
- 00011094  0x00001af1 arg  0x00000ea6 , 0x00000002 
- 00011095  0x00001af2 idiv  0x00000002 
- 00011096  0x00001af3 call  0x00007f86 
- 00011097  0x00001af4 quotient  0x0000003f 
- 00011098  0x00001af5 lshift16  0x0000003f , 0x0000003f 
- 00011099  0x00001af6 remainder  0x00000002 
- 00011100  0x00001af7 ior  0x00000002 , 0x0000003f 
- 00011101  0x00001af8 fetcht  0x00000006 , 0x00004163 
- 00011102  0x00001af9 call  0x00007f2c 
- 00011103  0x00001afa copy  0x00000002 , 0x00000019 
- 00011104  0x00001afb fetch  0x00000006 , 0x00004048 
- 00011105  0x00001afc call  0x00002854 
- 00011106  0x00001afd deposit  0x0000001a 
- 00011107  0x00001afe store  0x00000006 , 0x00000a9a 
- 00011108  0x00001aff deposit  0x00000027 
- 00011109  0x00001b00 istore  0x00000001 , 0x00000005 
- 00011110  0x00001b01 hfetch  0x00000001 , 0x0000811d 
- 00011111  0x00001b02 or_into  0x000000f0 , 0x0000003f 
- 00011112  0x00001b03 istore  0x00000001 , 0x00000005 
- 00011113  0x00001b04 rtn 
- 00011114  0x00001b07 bpatch  0x000000a7 , 0x00004014 
- 00011115  0x00001b08 call  0x00002afa 
- 00011116  0x00001b09 fetch  0x00000003 , 0x0000416f 
- 00011117  0x00001b0a rtn  0x00000034 
- 00011118  0x00001b0b fetch  0x00000001 , 0x00004091 
- 00011119  0x00001b0c rtn  0x00000034 
- 00011120  0x00001b0d fetch  0x00000001 , 0x0000465a 
- 00011121  0x00001b0e branch  0x00002b74 , 0x00000034 
- 00011122  0x00001b0f fetch  0x00000001 , 0x000045b1 
- 00011123  0x00001b10 rtn  0x00000034 
- 00011124  0x00001b12 fetch  0x00000001 , 0x000044c0 
- 00011125  0x00001b13 nrtn  0x00000034 
- 00011126  0x00001b14 call  0x00002c3a 
- 00011127  0x00001b15 nrtn  0x00000034 
- 00011128  0x00001b16 fetch  0x00000001 , 0x00004040 
- 00011129  0x00001b17 compare  0x00000003 , 0x0000003f , 0x00000007 
- 00011130  0x00001b18 nbranch  0x00002b9d , 0x00000001 
- 00011131  0x00001b19 fetch  0x00000002 , 0x00004042 
- 00011132  0x00001b1a rtn  0x00000034 
- 00011133  0x00001b1b rtn  0x0000002b 
- 00011134  0x00001b1c bpatch  0x000000a8 , 0x00004015 
- 00011135  0x00001b1e fetcht  0x00000001 , 0x000000a0 
- 00011136  0x00001b1f fetch  0x00000002 , 0x00004042 
- 00011137  0x00001b20 imul32  0x00000002 , 0x0000003f 
- 00011138  0x00001b21 rshift4  0x00000002 , 0x00000002 
- 00011139  0x00001b22 rshift2  0x00000002 , 0x00000002 
- 00011140  0x00001b23 isub  0x00000002 , 0x0000003f 
- 00011141  0x00001b24 fetcht  0x00000004 , 0x00004044 
- 00011142  0x00001b25 iadd  0x00000002 , 0x0000003f 
- 00011143  0x00001b26 fetcht  0x00000001 , 0x00004156 
- 00011144  0x00001b27 isub  0x00000002 , 0x0000003f 
- 00011145  0x00001b28 lshift16  0x0000003f , 0x00000030 
- 00011146  0x00001b29 bpatch  0x000000a9 , 0x00004015 
- 00011147  0x00001b2a fetch  0x00000002 , 0x0000404e 
- 00011148  0x00001b2b rshift  0x0000003f , 0x0000003f 
- 00011149  0x00001b2c call  0x00007f50 
- 00011150  0x00001b2d deposit  0x00000030 
- 00011151  0x00001b2e call  0x00007f39 
- 00011152  0x00001b2f copy  0x0000001a , 0x00000002 
- 00011153  0x00001b30 call  0x00007f37 
- 00011154  0x00001b31 rtn  0x00000028 
- 00011155  0x00001b33 call  0x00007f49 
- 00011156  0x00001b35 bpatch  0x000000aa , 0x00004015 
- 00011157  0x00001b36 fetch  0x00000001 , 0x00004178 
- 00011158  0x00001b37 isub  0x00000002 , 0x0000003e 
- 00011159  0x00001b38 branch  0x00002b18 , 0x00000002 
- 00011160  0x00001b39 storet  0x00000004 , 0x0000415b 
- 00011161  0x00001b3a call  0x00003328 
- 00011162  0x00001b3b call  0x000052fb 
- 00011163  0x00001b3c fetcht  0x00000004 , 0x0000415b 
- 00011164  0x00001b3d branch  0x00002b2a 
- 00011165  0x00001b40 bpatch  0x000000ab , 0x00004015 
- 00011166  0x00001b41 fetch  0x00000001 , 0x00004040 
- 00011167  0x00001b42 rtnbit1  0x00000000 
- 00011168  0x00001b43 rtnbit1  0x00000003 
- 00011169  0x00001b44 fetch  0x00000001 , 0x0000465a 
- 00011170  0x00001b45 branch  0x00002ba5 , 0x00000034 
- 00011171  0x00001b46 fetch  0x00000001 , 0x000045b1 
- 00011172  0x00001b47 rtn  0x00000034 
- 00011173  0x00001b49 bpatch  0x000000ac , 0x00004015 
- 00011174  0x00001b4a fetch  0x00000001 , 0x0000436e 
- 00011175  0x00001b4b nbranch  0x00002baa , 0x00000034 
- 00011176  0x00001b4c fetch  0x00000001 , 0x00004093 
- 00011177  0x00001b4d rtn  0x00000034 
- 00011178  0x00001b4f fetch  0x00000002 , 0x00004154 
- 00011179  0x00001b50 rtn  0x00000034 
- 00011180  0x00001b52 fetcht  0x00000001 , 0x00004156 
- 00011181  0x00001b53 isub  0x00000002 , 0x0000003f 
- 00011182  0x00001b54 arg  0x00001d4c , 0x00000002 
- 00011183  0x00001b55 imul32  0x00000002 , 0x0000003f 
- 00011184  0x00001b56 branch  0x00002b93 
- 00011185  0x00001b59 bpatch  0x000000ad , 0x00004015 
- 00011186  0x00001b5a disable  0x0000002b 
- 00011187  0x00001b5b fetch  0x00000001 , 0x00000030 
- 00011188  0x00001b5c rtnbit0  0x00000001 
- 00011189  0x00001b5d nbranch  0x00002bd0 , 0x0000002d 
- 00011190  0x00001b5e call  0x00002bcb 
- 00011191  0x00001b5f fetch  0x00000002 , 0x000040c1 
- 00011192  0x00001b60 store  0x00000002 , 0x0000003e 
- 00011193  0x00001b61 fetch  0x00000001 , 0x00000047 
- 00011194  0x00001b62 bbit1  0x00000003 , 0x00002bde 
- 00011195  0x00001b63 bmark0  0x0000000d , 0x00002bde 
- 00011196  0x00001b64 call  0x00005274 
- 00011197  0x00001b65 nbranch  0x00002bde , 0x00000034 
- 00011198  0x00001b66 fetch  0x00000001 , 0x0000455c 
- 00011199  0x00001b67 bbit1  0x00000001 , 0x00002bde 
- 00011200  0x00001b69 jam  0x00000000 , 0x000000a0 
- 00011201  0x00001b6a bmark0  0x0000000d , 0x00002bde 
- 00011202  0x00001b6b fetch  0x00000001 , 0x00004174 
- 00011203  0x00001b6c branch  0x00002be2 , 0x00000034 
- 00011204  0x00001b6d increase  0xffffffff , 0x0000003f 
- 00011205  0x00001b6e store  0x00000001 , 0x00004174 
- 00011206  0x00001b6f rtn 
- 00011207  0x00001b73 arg  0x00000001 , 0x00000007 
- 00011208  0x00001b74 branch  0x000060cd 
- 00011209  0x00001b77 arg  0x00000001 , 0x00000007 
- 00011210  0x00001b78 branch  0x000060d1 
- 00011211  0x00001b7d jam  0x00000000 , 0x00004159 
- 00011212  0x00001b7e fetch  0x00000003 , 0x00004169 
- 00011213  0x00001b7f increase  0x00000001 , 0x0000003f 
- 00011214  0x00001b80 store  0x00000003 , 0x00004169 
- 00011215  0x00001b81 rtn 
- 00011216  0x00001b84 bpatch  0x000000ae , 0x00004015 
- 00011217  0x00001b85 fetcht  0x00000002 , 0x000040c1 
- 00011218  0x00001b86 rshift  0x00000002 , 0x00000002 
- 00011219  0x00001b87 fetch  0x00000002 , 0x0000003e 
- 00011220  0x00001b88 iadd  0x00000002 , 0x0000003f 
- 00011221  0x00001b89 store  0x00000002 , 0x0000003e 
- 00011222  0x00001b8b jam  0x00000000 , 0x000000a0 
- 00011223  0x00001b8c fetch  0x00000003 , 0x0000416c 
- 00011224  0x00001b8d increase  0x00000001 , 0x0000003f 
- 00011225  0x00001b8e store  0x00000003 , 0x0000416c 
- 00011226  0x00001b8f fetch  0x00000001 , 0x00004159 
- 00011227  0x00001b90 increase  0x00000001 , 0x0000003f 
- 00011228  0x00001b91 store  0x00000001 , 0x00004159 
- 00011229  0x00001b92 rtn 
- 00011230  0x00001b95 jam  0x00000000 , 0x000000a0 
- 00011231  0x00001b96 fetch  0x00000001 , 0x00004173 
- 00011232  0x00001b97 store  0x00000001 , 0x00004174 
- 00011233  0x00001b98 rtn 
- 00011234  0x00001b9b fetcht  0x00000001 , 0x00004172 
- 00011235  0x00001b9c storet  0x00000001 , 0x000000a0 
- 00011236  0x00001b9d rtn 
- 00011237  0x00001ba0 bpatch  0x000000af , 0x00004015 
- 00011238  0x00001ba1 fetch  0x00000001 , 0x00004178 
- 00011239  0x00001ba2 nrtn  0x00000034 
- 00011240  0x00001ba3 jam  0x00000006 , 0x00008042 
- 00011241  0x00001ba4 setarg  0x00000f0c 
- 00011242  0x00001ba5 call  0x00002c18 
- 00011243  0x00001ba6 setarg  0x00030d40 
- 00011244  0x00001ba7 call  0x00002a8f 
- 00011245  0x00001ba8 until  0x0000003e , 0x00000033 
- 00011246  0x00001ba9 copy  0x00000031 , 0x00000030 
- 00011247  0x00001baa call  0x000029e7 
- 00011248  0x00001bab jam  0x00000004 , 0x00008042 
- 00011249  0x00001bac nop  0x0000000a 
- 00011250  0x00001bad until  0x0000003e , 0x00000033 
- 00011251  0x00001bae deposit  0x00000031 
- 00011252  0x00001baf isub  0x00000030 , 0x0000003f 
- 00011253  0x00001bb0 increase  0x00000030 , 0x0000003f 
- 00011254  0x00001bb1 arg  0x000000ff , 0x00000002 
- 00011255  0x00001bb2 call  0x00007f91 
- 00011256  0x00001bb3 store  0x00000001 , 0x00004178 
- 00011257  0x00001bb4 nop  0x00007530 
- 00011258  0x00001bb5 nop  0x00007530 
- 00011259  0x00001bb6 nop  0x00007530 
- 00011260  0x00001bb7 rtn 
- 00011261  0x00001bba fetch  0x00000001 , 0x00004178 
- 00011262  0x00001bbb nrtn  0x00000034 
- 00011263  0x00001bbc jam  0x000000ff , 0x00008044 
- 00011264  0x00001bbd jam  0x00000006 , 0x00008042 
- 00011265  0x00001bbe call  0x000029e7 
- 00011266  0x00001bbf setarg  0x000003e8 
- 00011267  0x00001bc0 iadd  0x00000031 , 0x00000030 
- 00011268  0x00001bc1 snooze 
- 00011269  0x00001bc2 deposit  0x00000031 
- 00011270  0x00001bc3 nop  0x00002ee0 
- 00011271  0x00001bc4 nop  0x00002ee0 
- 00011272  0x00001bc5 nop  0x00002ee0 
- 00011273  0x00001bc6 nop  0x00002ee0 
- 00011274  0x00001bc7 nop  0x00002ee0 
- 00011275  0x00001bc8 nop  0x00002ee0 
- 00011276  0x00001bc9 nop  0x00002ee0 
- 00011277  0x00001bca nop  0x00002ee0 
- 00011278  0x00001bcb nop  0x00002ee0 
- 00011279  0x00001bcc isub  0x00000030 , 0x0000003f 
- 00011280  0x00001bcd add  0x0000003f , 0x00000030 , 0x0000003f 
- 00011281  0x00001bce arg  0x000000ff , 0x00000002 
- 00011282  0x00001bcf call  0x00007f91 
- 00011283  0x00001bd0 store  0x00000001 , 0x00004178 
- 00011284  0x00001bd1 nop  0x00007530 
- 00011285  0x00001bd2 nop  0x00007530 
- 00011286  0x00001bd3 nop  0x00007530 
- 00011287  0x00001bd4 rtn 
- 00011288  0x00001bda arg  0x00000fff , 0x00000005 
- 00011289  0x00001bdb iand  0x00000005 , 0x00000005 
- 00011290  0x00001bdc fetch  0x00000001 , 0x00004175 
- 00011291  0x00001bdd and_into  0x000000f0 , 0x0000003f 
- 00011292  0x00001bde lshift8  0x0000003f , 0x0000003f 
- 00011293  0x00001bdf ior  0x00000005 , 0x0000003f 
- 00011294  0x00001be0 hstore  0x00000002 , 0x0000804c 
- 00011295  0x00001be1 ifetch  0x00000002 , 0x00000006 
- 00011296  0x00001be2 istore  0x00000002 , 0x00000005 
- 00011297  0x00001be5 setarg  0x00000001 
- 00011298  0x00001be6 branch  0x00002c24 
- 00011299  0x00001be9 setarg  0x00000002 
- 00011300  0x00001beb until  0x0000003e , 0x00000033 
- 00011301  0x00001bec hstore  0x00000001 , 0x00008005 
- 00011302  0x00001bed until  0x0000003e , 0x00000033 
- 00011303  0x00001bee until  0x0000003e , 0x00000033 
- 00011304  0x00001bef rtn 
- 00011305  0x00001bf3 bpatch  0x000000b0 , 0x00004016 
- 00011306  0x00001bf4 fetch  0x00000004 , 0x000000a1 
- 00011307  0x00001bf5 hstore  0x00000004 , 0x0000804c 
- 00011308  0x00001bf6 setarg  0x00000004 
- 00011309  0x00001bf7 call  0x00002c24 
- 00011310  0x00001bf8 fetch  0x00000004 , 0x000000a5 
- 00011311  0x00001bf9 hstore  0x00000004 , 0x0000804c 
- 00011312  0x00001bfa setarg  0x00000008 
- 00011313  0x00001bfb branch  0x00002c24 
- 00011314  0x00001bfe fetch  0x00000002 , 0x00004152 
- 00011315  0x00001bff qset1  0x0000003f 
- 00011316  0x00001c00 store  0x00000002 , 0x00004152 
- 00011317  0x00001c01 rtn 
- 00011318  0x00001c04 fetch  0x00000002 , 0x00004152 
- 00011319  0x00001c05 qset0  0x0000003f 
- 00011320  0x00001c06 store  0x00000002 , 0x00004152 
- 00011321  0x00001c07 rtn 
- 00011322  0x00001c0c bpatch  0x000000b1 , 0x00004016 
- 00011323  0x00001c0d call  0x00003326 
- 00011324  0x00001c0e fetch  0x00000002 , 0x00004152 
- 00011325  0x00001c0f copy  0x0000003f , 0x00000011 
- 00011326  0x00001c10 fetch  0x00000001 , 0x0000004c 
- 00011327  0x00001c11 isolate1  0x00000006 , 0x0000003f 
- 00011328  0x00001c12 setflag  0x00000001 , 0x0000000b , 0x00000011 
- 00011329  0x00001c13 fetch  0x00000001 , 0x00000078 
- 00011330  0x00001c14 fetcht  0x00000001 , 0x0000007c 
- 00011331  0x00001c15 iadd  0x00000002 , 0x0000003f 
- 00011332  0x00001c16 fetcht  0x00000001 , 0x00000048 
- 00011333  0x00001c17 iadd  0x00000002 , 0x0000003f 
- 00011334  0x00001c18 nsetflag  0x00000034 , 0x0000000a , 0x00000011 
- 00011335  0x00001c19 fetch  0x00000001 , 0x000044ff 
- 00011336  0x00001c1a nsetflag  0x00000034 , 0x00000001 , 0x00000011 
- 00011337  0x00001c1b fetch  0x00000002 , 0x0000025d 
- 00011338  0x00001c1c fetcht  0x00000002 , 0x0000025f 
- 00011339  0x00001c1d iadd  0x00000002 , 0x0000003f 
- 00011340  0x00001c1e nsetflag  0x00000034 , 0x0000000d , 0x00000011 
- 00011341  0x00001c1f fetch  0x00000008 , 0x00004668 
- 00011342  0x00001c20 nsetflag  0x00000034 , 0x0000000f , 0x00000011 
- 00011343  0x00001c21 fetch  0x00000008 , 0x00004670 
- 00011344  0x00001c22 nsetflag  0x00000034 , 0x0000000e , 0x00000011 
- 00011345  0x00001c23 fetch  0x00000001 , 0x000041ce 
- 00011346  0x00001c24 nsetflag  0x00000034 , 0x00000008 , 0x00000011 
- 00011347  0x00001c25 fetch  0x00000001 , 0x00004092 
- 00011348  0x00001c26 compare  0x0000000a , 0x0000003f , 0x000000ff 
- 00011349  0x00001c27 call  0x00002c5b , 0x00000001 
- 00011350  0x00001c28 setarg  0xfffffff8 
- 00011351  0x00001c29 iand  0x00000011 , 0x00000011 
- 00011352  0x00001c2a copy  0x00000011 , 0x0000003f 
- 00011353  0x00001c2b store  0x00000002 , 0x00004152 
- 00011354  0x00001c2c rtn 
- 00011355  0x00001c2f hfetch  0x00000002 , 0x00008112 
- 00011356  0x00001c30 nsetflag  0x00000034 , 0x00000006 , 0x00000011 
- 00011357  0x00001c31 hfetch  0x00000002 , 0x0000810e 
- 00011358  0x00001c32 nsetflag  0x00000034 , 0x00000005 , 0x00000011 
- 00011359  0x00001c33 rtn 
- 00011360  0x00001c36 hfetch  0x00000004 , 0x00008138 
- 00011361  0x00001c37 set0  0x0000001b , 0x0000003f 
- 00011362  0x00001c38 hstore  0x00000004 , 0x0000804c 
- 00011363  0x00001c39 call  0x00002c21 
- 00011364  0x00001c3a branch  0x00002a8c 
- 00011365  0x00001c3d hfetch  0x00000004 , 0x0000813c 
- 00011366  0x00001c3e set0  0x00000014 , 0x0000003f 
- 00011367  0x00001c3f hstore  0x00000004 , 0x0000804c 
- 00011368  0x00001c40 branch  0x00002c23 
- 00011369  0x00001c43 fetch  0x00000002 , 0x00004150 
- 00011370  0x00001c44 bbit1  0x00000000 , 0x00002a8c 
- 00011371  0x00001c45 rtn 
- 00011372  0x00001c47 fetch  0x00000002 , 0x00004150 
- 00011373  0x00001c48 bbit1  0x00000001 , 0x00002a8c 
- 00011374  0x00001c49 rtn 
- 00011375  0x00001c4b fetch  0x00000002 , 0x00004150 
- 00011376  0x00001c4c bbit1  0x00000002 , 0x00002a8c 
- 00011377  0x00001c4d rtn 
- 00011378  0x00001c8b bpatch  0x000000b2 , 0x00004016 
- 00011379  0x00001c8c call  0x00002c7a 
- 00011380  0x00001c8d add  0x00000013 , 0x000000cd , 0x00000012 
- 00011381  0x00001c8e ifetch  0x00000001 , 0x00000012 
- 00011382  0x00001c90 rtneq  0x00000000 
- 00011383  0x00001c91 beq  0x00000001 , 0x00002d06 
- 00011384  0x00001c92 beq  0x00000002 , 0x00002c7f 
- 00011385  0x00001c93 rtn 
- 00011386  0x00001c96 fetcht  0x00000002 , 0x00004241 
- 00011387  0x00001c97 copy  0x00000002 , 0x00000013 
- 00011388  0x00001c98 rtn 
- 00011389  0x00001c9b call  0x00002f3d 
- 00011390  0x00001c9c branch  0x0000307d 
- 00011391  0x00001c9f call  0x00003084 
- 00011392  0x00001ca0 call  0x0000305a 
- 00011393  0x00001ca1 call  0x0000305e 
- 00011394  0x00001ca2 branch  0x000030a2 
- 00011395  0x00001ca8 call  0x00003231 
- 00011396  0x00001ca9 setarg  0x0000004e 
- 00011397  0x00001caa call  0x0000322f 
- 00011398  0x00001cab call  0x000032ba 
- 00011399  0x00001cae add  0x00000013 , 0x00000092 , 0x00000011 
- 00011400  0x00001caf ifetch  0x00000004 , 0x00000011 
- 00011401  0x00001cb0 branch  0x0000322c 
- 00011402  0x00001cb3 call  0x00002c7a 
- 00011403  0x00001cb4 add  0x00000013 , 0x00000091 , 0x00000012 
- 00011404  0x00001cb5 ifetcht  0x00000001 , 0x00000012 
- 00011405  0x00001cb7 call  0x00002c90 
- 00011406  0x00001cb8 add  0x00000013 , 0x00000091 , 0x00000005 
- 00011407  0x00001cba branch  0x00002e56 
- 00011408  0x00001cbd call  0x00002c94 
- 00011409  0x00001cbe increase  0x00000001 , 0x00000002 
- 00011410  0x00001cbf and_into  0x00000003 , 0x00000002 
- 00011411  0x00001cc0 rtn 
- 00011412  0x00001cc3 add  0x00000013 , 0x000000ae , 0x00000012 
- 00011413  0x00001cc4 ifetch  0x00000001 , 0x00000012 
- 00011414  0x00001cc6 and_into  0x00000003 , 0x0000003f 
- 00011415  0x00001cc7 mul32  0x0000003f , 0x00000004 , 0x00000011 
- 00011416  0x00001cc8 add  0x00000013 , 0x00000097 , 0x0000003f 
- 00011417  0x00001cca iadd  0x00000011 , 0x0000003f 
- 00011418  0x00001ccb iadd  0x00000002 , 0x00000006 
- 00011419  0x00001ccc ifetch  0x00000001 , 0x00000006 
- 00011420  0x00001cce branch  0x0000322f 
- 00011421  0x00001cd1 call  0x0000326c 
- 00011422  0x00001cd2 call  0x0000666a 
- 00011423  0x00001cd3 setarg  0x000007e2 
- 00011424  0x00001cd4 arg  0x00000aa2 , 0x00000011 
- 00011425  0x00001cd5 arg  0x00000004 , 0x00000002 
- 00011426  0x00001cd6 call  0x000066b3 
- 00011427  0x00001cd7 call  0x0000666d 
- 00011428  0x00001cd8 fetch  0x00000004 , 0x00000aa2 
- 00011429  0x00001cd9 call  0x00003227 
- 00011430  0x00001cdb nrtn  0x00000034 
- 00011431  0x00001cdc fetch  0x00000004 , 0x000040a0 
- 00011432  0x00001cde branch  0x00003227 
- 00011433  0x00001ce1 call  0x00003241 
- 00011434  0x00001ce3 setarg  0x00000000 
- 00011435  0x00001ce4 call  0x0000323f 
- 00011436  0x00001ce7 call  0x0000323a 
- 00011437  0x00001ce9 and_into  0x00000007 , 0x0000003f 
- 00011438  0x00001ceb branch  0x0000323c 
- 00011439  0x00001cee call  0x0000323a 
- 00011440  0x00001cf0 set1  0x00000004 , 0x0000003f 
- 00011441  0x00001cf1 call  0x0000323c 
- 00011442  0x00001cf4 branch  0x00003235 
- 00011443  0x00001cf7 call  0x0000325d 
- 00011444  0x00001cf9 beq  0x00000001 , 0x00002cb7 
- 00011445  0x00001cfa beq  0x00000002 , 0x00002cbc 
- 00011446  0x00001cfb rtn 
- 00011447  0x00001cfe call  0x0000323e 
- 00011448  0x00001d01 add  0x00000013 , 0x000000d1 , 0x00000005 
- 00011449  0x00001d02 call  0x000032d6 
- 00011450  0x00001d04 call  0x00003242 
- 00011451  0x00001d06 branch  0x00002cac 
- 00011452  0x00001d09 call  0x0000325a 
- 00011453  0x00001d0b branch  0x00002cb8 
- 00011454  0x00001d0e add  0x00000013 , 0x0000008c , 0x00000011 
- 00011455  0x00001d0f ifetch  0x00000001 , 0x00000011 
- 00011456  0x00001d11 increase  0x00000001 , 0x0000003f 
- 00011457  0x00001d12 add  0x00000013 , 0x0000008c , 0x00000005 
- 00011458  0x00001d13 istore  0x00000001 , 0x00000005 
- 00011459  0x00001d15 beq  0x00000020 , 0x00002dd2 
- 00011460  0x00001d16 call  0x00003258 
- 00011461  0x00001d18 beq  0x00000001 , 0x00002cca 
- 00011462  0x00001d19 setarg  0x00000001 
- 00011463  0x00001d1a call  0x0000325b 
- 00011464  0x00001d1d call  0x00003258 
- 00011465  0x00001d1f bne  0x00000001 , 0x00002cac 
- 00011466  0x00001d21 add  0x00000013 , 0x000000d3 , 0x00000011 
- 00011467  0x00001d22 ifetch  0x00000001 , 0x00000011 
- 00011468  0x00001d24 increase  0x00000001 , 0x0000003f 
- 00011469  0x00001d25 call  0x00002cd5 
- 00011470  0x00001d27 beq  0x00000004 , 0x00002cd2 
- 00011471  0x00001d28 call  0x00002c8a 
- 00011472  0x00001d29 call  0x00002d04 
- 00011473  0x00001d2b branch  0x00002d8f 
- 00011474  0x00001d2e call  0x00002cd4 
- 00011475  0x00001d30 branch  0x00002cac 
- 00011476  0x00001d33 setarg  0x00000000 
- 00011477  0x00001d35 add  0x00000013 , 0x000000d3 , 0x00000005 
- 00011478  0x00001d36 branch  0x000032b4 
- 00011479  0x00001d39 call  0x0000323e 
- 00011480  0x00001d3c call  0x0000325a 
- 00011481  0x00001d3e call  0x00003241 
- 00011482  0x00001d40 branch  0x00002cac 
- 00011483  0x00001d43 call  0x0000325d 
- 00011484  0x00001d45 beq  0x00000003 , 0x00002cd8 
- 00011485  0x00001d46 call  0x0000323a 
- 00011486  0x00001d48 isolate0  0x00000004 , 0x0000003f 
- 00011487  0x00001d49 branch  0x00002ca9 , 0x00000001 
- 00011488  0x00001d4a call  0x0000325d 
- 00011489  0x00001d4c beq  0x00000001 , 0x00002cd7 
- 00011490  0x00001d4d beq  0x00000002 , 0x00002cd8 
- 00011491  0x00001d4e rtn 
- 00011492  0x00001d51 call  0x00003253 
- 00011493  0x00001d53 rtnne  0x000000ff 
- 00011494  0x00001d54 call  0x00002ce9 
- 00011495  0x00001d55 ncall  0x00002cf4 , 0x0000002c 
- 00011496  0x00001d56 rtn 
- 00011497  0x00001d59 disable  0x0000002c 
- 00011498  0x00001d5a add  0x00000013 , 0x000000ce , 0x00000011 
- 00011499  0x00001d5b ifetch  0x00000001 , 0x00000011 
- 00011500  0x00001d5d rtnne  0x00000001 
- 00011501  0x00001d5e add  0x00000013 , 0x000000d0 , 0x00000011 
- 00011502  0x00001d5f ifetch  0x00000001 , 0x00000011 
- 00011503  0x00001d61 rtnne  0x00000000 
- 00011504  0x00001d62 setarg  0x00000001 
- 00011505  0x00001d63 call  0x00002cfd 
- 00011506  0x00001d65 call  0x00003237 
- 00011507  0x00001d67 branch  0x00007feb 
- 00011508  0x00001d6a add  0x00000013 , 0x000000d0 , 0x00000011 
- 00011509  0x00001d6b ifetch  0x00000001 , 0x00000011 
- 00011510  0x00001d6d branch  0x00002cff , 0x00000034 
- 00011511  0x00001d6e increase  0xffffffff , 0x0000003f 
- 00011512  0x00001d6f call  0x0000323f 
- 00011513  0x00001d71 setarg  0x00000002 
- 00011514  0x00001d72 call  0x00002cfd 
- 00011515  0x00001d74 call  0x00002c8a 
- 00011516  0x00001d76 branch  0x00003237 
- 00011517  0x00001d79 add  0x00000013 , 0x000000d2 , 0x00000005 
- 00011518  0x00001d7a branch  0x000032b4 
- 00011519  0x00001d7e setarg  0x00000003 
- 00011520  0x00001d7f call  0x00002cfd 
- 00011521  0x00001d81 call  0x00003258 
- 00011522  0x00001d83 nbranch  0x00002cc8 , 0x00000034 
- 00011523  0x00001d84 call  0x00002c8a 
- 00011524  0x00001d87 setarg  0x00000002 
- 00011525  0x00001d88 branch  0x00003238 
- 00011526  0x00001d8b rtnmark0  0x00000026 
- 00011527  0x00001d8c set1  0x00000027 , 0x00000000 
- 00011528  0x00001d8d bpatch  0x000000b3 , 0x00004016 
- 00011529  0x00001d8e add  0x00000013 , 0x0000008e , 0x00000011 
- 00011530  0x00001d8f ifetch  0x00000001 , 0x00000011 
- 00011531  0x00001d91 beq  0x00000001 , 0x00002d0f 
- 00011532  0x00001d92 call  0x0000306a 
- 00011533  0x00001d93 nbranch  0x00002d16 , 0x00000028 
- 00011534  0x00001d94 call  0x00002d1b 
- 00011535  0x00001d96 add  0x00000013 , 0x0000008e , 0x00000005 
- 00011536  0x00001d97 call  0x000032d6 
- 00011537  0x00001d99 call  0x00002d2c 
- 00011538  0x00001d9a nbranch  0x00002d7d , 0x00000028 
- 00011539  0x00001d9b call  0x00002ce4 
- 00011540  0x00001d9d call  0x00002d8f 
- 00011541  0x00001d9e call  0x00002e7a 
- 00011542  0x00001da0 set0  0x00000027 , 0x00000000 
- 00011543  0x00001da1 rtn 
- 00011544  0x00001da4 rtn  0x00000005 
- 00011545  0x00001da5 set1  0x0000001c , 0x0000003f 
- 00011546  0x00001da6 rtn 
- 00011547  0x00001da9 add  0x00000013 , 0x000000c2 , 0x00000011 
- 00011548  0x00001daa ifetch  0x00000001 , 0x00000011 
- 00011549  0x00001dac increase  0x00000001 , 0x0000003f 
- 00011550  0x00001dad add  0x00000013 , 0x000000c2 , 0x00000005 
- 00011551  0x00001dae istore  0x00000001 , 0x00000005 
- 00011552  0x00001db0 beq  0x00000004 , 0x00002d23 
- 00011553  0x00001db1 beq  0x00000005 , 0x00002d27 
- 00011554  0x00001db2 rtn 
- 00011555  0x00001db4 add  0x00000013 , 0x000000ad , 0x00000011 
- 00011556  0x00001db5 ifetch  0x00000001 , 0x00000011 
- 00011557  0x00001db9 add  0x00000013 , 0x000000ab , 0x00000005 
- 00011558  0x00001dba branch  0x000032b4 
- 00011559  0x00001dbd add  0x00000013 , 0x000000c2 , 0x00000005 
- 00011560  0x00001dbe call  0x000032d6 
- 00011561  0x00001dc0 add  0x00000013 , 0x000000ac , 0x00000011 
- 00011562  0x00001dc1 ifetch  0x00000001 , 0x00000011 
- 00011563  0x00001dc3 branch  0x00002d25 
- 00011564  0x00001dc6 call  0x00003253 
- 00011565  0x00001dc8 bne  0x000000ff , 0x00002eb1 
- 00011566  0x00001dc9 bpatch  0x000000b4 , 0x00004016 
- 00011567  0x00001dca call  0x00002d3a 
- 00011568  0x00001dcb nbranch  0x00002d36 , 0x00000028 
- 00011569  0x00001dcc call  0x00002d53 
- 00011570  0x00001dcd call  0x00002e71 
- 00011571  0x00001dd0 setarg  0x00000001 
- 00011572  0x00001dd2 add  0x00000013 , 0x0000008b , 0x00000005 
- 00011573  0x00001dd3 branch  0x000032b4 
- 00011574  0x00001dd6 add  0x00000013 , 0x0000008b , 0x00000011 
- 00011575  0x00001dd7 ifetch  0x00000001 , 0x00000011 
- 00011576  0x00001dd9 beq  0x00000001 , 0x00007fe7 
- 00011577  0x00001dda rtn 
- 00011578  0x00001dde add  0x00000013 , 0x000000d8 , 0x00000002 
- 00011579  0x00001ddf ifetch  0x00000002 , 0x00000002 
- 00011580  0x00001de1 call  0x00007f9c 
- 00011581  0x00001de2 nrtn  0x00000028 
- 00011582  0x00001de3 copy  0x00000011 , 0x0000003f 
- 00011583  0x00001de4 store  0x00000001 , 0x00000aae 
- 00011584  0x00001de5 add  0x00000013 , 0x000000b2 , 0x00000005 
- 00011585  0x00001de6 call  0x000032d6 
- 00011586  0x00001de8 call  0x00002cac 
- 00011587  0x00001de9 store  0x00000001 , 0x0000119e 
- 00011588  0x00001dea fetch  0x00000001 , 0x00000aae 
- 00011589  0x00001deb copy  0x0000003f , 0x00000011 
- 00011590  0x00001dec add  0x00000011 , 0x00000001 , 0x00000002 
- 00011591  0x00001ded arg  0x0000119f , 0x00000005 
- 00011592  0x00001dee copy  0x00000011 , 0x00000039 
- 00011593  0x00001def copy  0x00000012 , 0x00000006 
- 00011594  0x00001df0 call  0x00007f01 
- 00011595  0x00001df1 arg  0x0000119e , 0x00000011 
- 00011596  0x00001df3 rtnmark0  0x00000027 
- 00011597  0x00001df4 add  0x00000013 , 0x00000086 , 0x00000005 
- 00011598  0x00001df5 istoret  0x00000001 , 0x00000005 
- 00011599  0x00001df7 copy  0x00000002 , 0x00000039 
- 00011600  0x00001df8 add  0x00000013 , 0x00000022 , 0x00000005 
- 00011601  0x00001dfa copy  0x00000011 , 0x00000006 
- 00011602  0x00001dfb branch  0x00007f01 
- 00011603  0x00001dff add  0x00000013 , 0x00000086 , 0x00000011 
- 00011604  0x00001e00 ifetch  0x00000001 , 0x00000011 
- 00011605  0x00001e02 increase  0x00000002 , 0x0000003f 
- 00011606  0x00001e03 add  0x00000013 , 0x00000088 , 0x00000005 
- 00011607  0x00001e04 istore  0x00000001 , 0x00000005 
- 00011608  0x00001e07 call  0x0000323a 
- 00011609  0x00001e09 call  0x00003235 
- 00011610  0x00001e0c add  0x00000013 , 0x00000086 , 0x00000011 
- 00011611  0x00001e0d ifetch  0x00000001 , 0x00000011 
- 00011612  0x00001e0f lshift3  0x0000003f , 0x0000003f 
- 00011613  0x00001e10 add  0x00000013 , 0x00000085 , 0x00000011 
- 00011614  0x00001e11 ifetcht  0x00000001 , 0x00000011 
- 00011615  0x00001e13 and  0x00000002 , 0x00000003 , 0x00000002 
- 00011616  0x00001e14 lshift  0x00000002 , 0x00000002 
- 00011617  0x00001e15 ior  0x00000002 , 0x0000003f 
- 00011618  0x00001e16 add  0x00000013 , 0x000000c3 , 0x00000011 
- 00011619  0x00001e17 ifetcht  0x00000001 , 0x00000011 
- 00011620  0x00001e19 iadd  0x00000002 , 0x0000003f 
- 00011621  0x00001e1a istore  0x00000001 , 0x00000005 
- 00011622  0x00001e1c add  0x00000013 , 0x00000086 , 0x00000011 
- 00011623  0x00001e1d ifetch  0x00000001 , 0x00000011 
- 00011624  0x00001e1f iforce  0x00000039 
- 00011625  0x00001e20 add  0x00000013 , 0x00000022 , 0x00000006 
- 00011626  0x00001e22 branch  0x00007f01 
- 00011627  0x00001e25 call  0x0000324f 
- 00011628  0x00001e27 call  0x0000325a 
- 00011629  0x00001e29 call  0x00002e6d 
- 00011630  0x00001e2a call  0x00002cac 
- 00011631  0x00001e2b store  0x00000001 , 0x0000119e 
- 00011632  0x00001e2c call  0x00002d77 
- 00011633  0x00001e2d call  0x0000323a 
- 00011634  0x00001e2f set1  0x00000003 , 0x0000003f 
- 00011635  0x00001e30 call  0x0000323c 
- 00011636  0x00001e32 call  0x00002d53 
- 00011637  0x00001e33 call  0x00002d33 
- 00011638  0x00001e34 branch  0x00002d14 
- 00011639  0x00001e37 store  0x00000001 , 0x0000119f 
- 00011640  0x00001e38 call  0x00003224 
- 00011641  0x00001e3a store  0x00000004 , 0x000011a0 
- 00011642  0x00001e3b arg  0x00000006 , 0x00000002 
- 00011643  0x00001e3c arg  0x0000119e , 0x00000011 
- 00011644  0x00001e3d branch  0x00002d4c 
- 00011645  0x00001e40 add  0x00000013 , 0x000000b2 , 0x00000011 
- 00011646  0x00001e41 ifetch  0x00000001 , 0x00000011 
- 00011647  0x00001e43 branch  0x00002d6b , 0x00000034 
- 00011648  0x00001e46 add  0x00000013 , 0x000000da , 0x00000011 
- 00011649  0x00001e47 ifetch  0x00000002 , 0x00000011 
- 00011650  0x00001e49 branch  0x00007f9c 
- 00011651  0x00001e4c call  0x00002c7a 
- 00011652  0x00001e4e call  0x00002afa 
- 00011653  0x00001e4f fetch  0x00000003 , 0x0000416f 
- 00011654  0x00001e50 rtn  0x00000034 
- 00011655  0x00001e51 add  0x00000013 , 0x000000dc , 0x00000002 
- 00011656  0x00001e52 ifetch  0x00000002 , 0x00000002 
- 00011657  0x00001e54 call  0x00007f9c 
- 00011658  0x00001e55 add  0x00000013 , 0x000000b6 , 0x00000002 
- 00011659  0x00001e56 ifetch  0x00000008 , 0x00000002 
- 00011660  0x00001e57 call  0x00007f49 
- 00011661  0x00001e58 storet  0x00000004 , 0x0000415b 
- 00011662  0x00001e59 branch  0x00002b2a 
- 00011663  0x00001e5c call  0x00002c7a 
- 00011664  0x00001e5d add  0x00000013 , 0x0000008f , 0x00000005 
- 00011665  0x00001e5e call  0x000032d6 
- 00011666  0x00001e61 call  0x00002da4 
- 00011667  0x00001e62 nbranch  0x00002dae , 0x00000018 
- 00011668  0x00001e63 nbranch  0x00002dae , 0x0000002f 
- 00011669  0x00001e64 call  0x00002dd6 
- 00011670  0x00001e65 call  0x00002e75 
- 00011671  0x00001e67 call  0x00002c7a 
- 00011672  0x00001e68 add  0x00000013 , 0x00000085 , 0x00000011 
- 00011673  0x00001e69 ifetch  0x00000001 , 0x00000011 
- 00011674  0x00001e6b increase  0x00000001 , 0x0000003f 
- 00011675  0x00001e6c call  0x00003232 
- 00011676  0x00001e6e call  0x00003253 
- 00011677  0x00001e70 bne  0x000000ff , 0x00002ed0 
- 00011678  0x00001e71 call  0x00002cdb 
- 00011679  0x00001e73 setarg  0x00000000 
- 00011680  0x00001e74 add  0x00000013 , 0x0000008c , 0x00000005 
- 00011681  0x00001e75 istore  0x00000002 , 0x00000005 
- 00011682  0x00001e79 setarg  0x00000000 
- 00011683  0x00001e7a branch  0x00002d34 
- 00011684  0x00001e7e disable  0x0000002f 
- 00011685  0x00001e7f call  0x00002df7 
- 00011686  0x00001e80 call  0x00002c7a 
- 00011687  0x00001e81 add  0x00000013 , 0x000000c3 , 0x00000011 
- 00011688  0x00001e82 ifetch  0x00000001 , 0x00000011 
- 00011689  0x00001e84 beq  0x00000001 , 0x00002dac 
- 00011690  0x00001e85 call  0x00002e11 
- 00011691  0x00001e86 branch  0x00002e45 
- 00011692  0x00001e88 call  0x00002e45 
- 00011693  0x00001e89 branch  0x00002d97 
- 00011694  0x00001e8d bpatch  0x000000b5 , 0x00004016 
- 00011695  0x00001e8e add  0x00000013 , 0x0000008d , 0x00000011 
- 00011696  0x00001e8f ifetch  0x00000001 , 0x00000011 
- 00011697  0x00001e91 increase  0x00000001 , 0x0000003f 
- 00011698  0x00001e92 add  0x00000013 , 0x0000008d , 0x00000005 
- 00011699  0x00001e93 istore  0x00000001 , 0x00000005 
- 00011700  0x00001e95 call  0x00003253 
- 00011701  0x00001e97 bne  0x000000ff , 0x00002dcc 
- 00011702  0x00001e98 add  0x00000013 , 0x0000008f , 0x00000011 
- 00011703  0x00001e99 ifetcht  0x00000001 , 0x00000011 
- 00011704  0x00001e9b increase  0x00000001 , 0x00000002 
- 00011705  0x00001e9c add  0x00000013 , 0x0000008f , 0x00000005 
- 00011706  0x00001e9d istoret  0x00000001 , 0x00000005 
- 00011707  0x00001e9f add  0x00000013 , 0x000000cc , 0x00000011 
- 00011708  0x00001ea0 ifetch  0x00000001 , 0x00000011 
- 00011709  0x00001ea2 isub  0x00000002 , 0x0000003f 
- 00011710  0x00001ea3 nbranch  0x00002d92 , 0x00000034 
- 00011711  0x00001ea4 bpatch  0x000000b6 , 0x00004016 
- 00011712  0x00001ea5 call  0x0000325d 
- 00011713  0x00001ea7 beq  0x00000003 , 0x00002cbe 
- 00011714  0x00001ea8 add  0x00000013 , 0x000000d1 , 0x00000011 
- 00011715  0x00001ea9 ifetch  0x00000001 , 0x00000011 
- 00011716  0x00001eab increase  0x00000001 , 0x0000003f 
- 00011717  0x00001eac add  0x00000013 , 0x000000d1 , 0x00000005 
- 00011718  0x00001ead istore  0x00000001 , 0x00000005 
- 00011719  0x00001eaf beq  0x00000002 , 0x00002cb3 
- 00011720  0x00001eb0 call  0x00002caf 
- 00011721  0x00001eb1 setarg  0x00000001 
- 00011722  0x00001eb2 call  0x00003238 
- 00011723  0x00001eb4 branch  0x00002d8f 
- 00011724  0x00001eb7 add  0x00000013 , 0x0000008d , 0x00000011 
- 00011725  0x00001eb8 ifetch  0x00000001 , 0x00000011 
- 00011726  0x00001eba rtnne  0x000000ff 
- 00011727  0x00001ebb add  0x00000013 , 0x0000008d , 0x00000005 
- 00011728  0x00001ebc call  0x000032d6 
- 00011729  0x00001ebe branch  0x00002dd4 
- 00011730  0x00001ec1 add  0x00000013 , 0x0000008c , 0x00000005 
- 00011731  0x00001ec2 call  0x000032d6 
- 00011732  0x00001ec5 jam  0x0000003a , 0x00000a99 
- 00011733  0x00001ec6 branch  0x00007d86 
- 00011734  0x00001ec9 call  0x00002dde 
- 00011735  0x00001eca add  0x00000013 , 0x00000084 , 0x00000011 
- 00011736  0x00001ecb ifetch  0x00000001 , 0x00000011 
- 00011737  0x00001ecd rtn  0x00000034 
- 00011738  0x00001ece iforce  0x00000039 
- 00011739  0x00001ecf add  0x00000013 , 0x00000002 , 0x00000006 
- 00011740  0x00001ed1 add  0x00000013 , 0x00000064 , 0x00000005 
- 00011741  0x00001ed3 branch  0x00007f01 
- 00011742  0x00001ed8 call  0x0000325f 
- 00011743  0x00001eda rshift3  0x0000003f , 0x0000003f 
- 00011744  0x00001edb add  0x00000013 , 0x00000084 , 0x00000005 
- 00011745  0x00001edc istore  0x00000001 , 0x00000005 
- 00011746  0x00001edf increase  0x00000001 , 0x0000003f 
- 00011747  0x00001ee0 add  0x00000013 , 0x00000001 , 0x00000006 
- 00011748  0x00001ee2 iadd  0x00000006 , 0x00000006 
- 00011749  0x00001ee3 ifetch  0x00000003 , 0x00000006 
- 00011750  0x00001ee4 add  0x00000013 , 0x000000c4 , 0x00000005 
- 00011751  0x00001ee5 istore  0x00000003 , 0x00000005 
- 00011752  0x00001ee8 call  0x0000325f 
- 00011753  0x00001eea rshift  0x0000003f , 0x0000003f 
- 00011754  0x00001eeb and  0x0000003f , 0x00000003 , 0x0000003f 
- 00011755  0x00001eec add  0x00000013 , 0x000000ca , 0x00000005 
- 00011756  0x00001eed istore  0x00000001 , 0x00000005 
- 00011757  0x00001eef rtn 
- 00011758  0x00001ef2 disable  0x00000009 
- 00011759  0x00001ef3 disable  0x00000007 
- 00011760  0x00001ef4 setarg  0x00555555 
- 00011761  0x00001ef5 iforce  0x0000000f 
- 00011762  0x00001ef6 rtn 
- 00011763  0x00001ef9 call  0x00002918 
- 00011764  0x00001efa add  0x00000013 , 0x00000090 , 0x00000011 
- 00011765  0x00001efb ifetcht  0x00000001 , 0x00000011 
- 00011766  0x00001efd branch  0x00002933 
- 00011767  0x00001f00 call  0x00002dee 
- 00011768  0x00001f01 call  0x00002df3 
- 00011769  0x00001f02 set1  0x00000000 , 0x00000015 
- 00011770  0x00001f03 enable  0x0000001d 
- 00011771  0x00001f04 enable  0x00000020 
- 00011772  0x00001f05 disable  0x00000021 
- 00011773  0x00001f06 call  0x000053c4 
- 00011774  0x00001f07 call  0x0000322a 
- 00011775  0x00001f09 iforce  0x00000009 
- 00011776  0x00001f0a inject  0x00000003 , 0x00000020 
- 00011777  0x00001f0b enable  0x00000009 
- 00011778  0x00001f0c add  0x00000013 , 0x00000088 , 0x00000011 
- 00011779  0x00001f0d ifetch  0x00000001 , 0x00000011 
- 00011780  0x00001f0f iforce  0x00000039 
- 00011781  0x00001f10 add  0x00000013 , 0x00000042 , 0x00000006 
- 00011782  0x00001f13 ifetch  0x00000001 , 0x00000006 
- 00011783  0x00001f14 inject  0x00000003 , 0x00000008 
- 00011784  0x00001f15 loop  0x00002e06 
- 00011785  0x00001f16 enable  0x00000008 
- 00011786  0x00001f17 inject  0x00000003 , 0x00000018 
- 00011787  0x00001f18 disable  0x00000008 
- 00011788  0x00001f19 until  0x0000003e , 0x00000027 
- 00011789  0x00001f1a bpatch  0x000000b7 , 0x00004016 
- 00011790  0x00001f1b nop  0x00000064 
- 00011791  0x00001f1c disable  0x0000001d 
- 00011792  0x00001f1d rtn 
- 00011793  0x00001f20 disable  0x0000002f 
- 00011794  0x00001f21 force  0x00000000 , 0x00000015 
- 00011795  0x00001f22 add  0x00000013 , 0x00000090 , 0x00000011 
- 00011796  0x00001f23 ifetcht  0x00000001 , 0x00000011 
- 00011797  0x00001f25 call  0x0000291f 
- 00011798  0x00001f26 call  0x00002924 
- 00011799  0x00001f28 call  0x00002dee 
- 00011800  0x00001f29 enable  0x0000000d 
- 00011801  0x00001f2a enable  0x00000021 
- 00011802  0x00001f2b disable  0x00000020 
- 00011803  0x00001f2c call  0x000053c4 
- 00011804  0x00001f2d call  0x0000322a 
- 00011805  0x00001f2f iforce  0x00000009 
- 00011806  0x00001f30 enable  0x00000010 
- 00011807  0x00001f31 add  0x00000013 , 0x00000089 , 0x00000011 
- 00011808  0x00001f32 ifetch  0x00000002 , 0x00000011 
- 00011809  0x00001f34 iforce  0x0000001b 
- 00011810  0x00001f35 correlate  0x0000003e , 0x00000003 
- 00011811  0x00001f36 nbranch  0x00002e4d , 0x00000018 
- 00011812  0x00001f37 enable  0x00000009 
- 00011813  0x00001f38 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00011814  0x00001f39 rshift3  0x0000000c , 0x0000003f 
- 00011815  0x00001f3a add  0x00000013 , 0x00000000 , 0x00000005 
- 00011816  0x00001f3b istore  0x00000001 , 0x00000005 
- 00011817  0x00001f3d add  0x00000013 , 0x000000cd , 0x00000011 
- 00011818  0x00001f3e ifetch  0x00000001 , 0x00000011 
- 00011819  0x00001f40 beq  0x00000002 , 0x00002e33 
- 00011820  0x00001f41 bpatch  0x000000b8 , 0x00004017 
- 00011821  0x00001f42 add  0x00000013 , 0x00000000 , 0x00000011 
- 00011822  0x00001f43 ifetch  0x00000001 , 0x00000011 
- 00011823  0x00001f45 add  0x00000013 , 0x00000087 , 0x00000011 
- 00011824  0x00001f46 ifetcht  0x00000001 , 0x00000011 
- 00011825  0x00001f48 icompare  0x00000007 , 0x00000002 
- 00011826  0x00001f49 nbranch  0x00002e45 , 0x00000001 
- 00011827  0x00001f4b parse  0x00000003 , 0x00000000 , 0x00000008 
- 00011828  0x00001f4c rshift3  0x0000000c , 0x0000003f 
- 00011829  0x00001f4d istore  0x00000001 , 0x00000005 
- 00011830  0x00001f4e rshift3  0x0000003f , 0x0000003f 
- 00011831  0x00001f4f and  0x0000003f , 0x0000001f , 0x00000039 
- 00011832  0x00001f50 branch  0x00002e3d , 0x00000005 
- 00011833  0x00001f52 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00011834  0x00001f53 rshift3  0x0000000c , 0x0000003f 
- 00011835  0x00001f54 istore  0x00000001 , 0x00000005 
- 00011836  0x00001f55 loop  0x00002e39 
- 00011837  0x00001f57 parse  0x00000003 , 0x00000000 , 0x00000018 
- 00011838  0x00001f58 rshift32  0x0000003f , 0x0000003f 
- 00011839  0x00001f59 rshift16  0x0000003f , 0x0000003f 
- 00011840  0x00001f5a istore  0x00000003 , 0x00000005 
- 00011841  0x00001f5b branch  0x00002e45 , 0x00000006 
- 00011842  0x00001f5c enable  0x0000002f 
- 00011843  0x00001f5d disable  0x0000000d 
- 00011844  0x00001f5e rtn 
- 00011845  0x00001f62 disable  0x0000001d 
- 00011846  0x00001f63 disable  0x0000000d 
- 00011847  0x00001f64 disable  0x00000009 
- 00011848  0x00001f65 disable  0x00000007 
- 00011849  0x00001f66 branch  0x000028f9 , 0x00000021 
- 00011850  0x00001f67 until  0x0000003e , 0x00000027 
- 00011851  0x00001f68 nop  0x00000064 
- 00011852  0x00001f69 branch  0x000028f9 
- 00011853  0x00001f6c call  0x00002e4f 
- 00011854  0x00001f6d branch  0x00002e45 
- 00011855  0x00001f70 call  0x000029bb 
- 00011856  0x00001f71 rtn  0x00000034 
- 00011857  0x00001f72 add  0x00000013 , 0x000000ea , 0x00000011 
- 00011858  0x00001f73 ifetcht  0x00000001 , 0x00000011 
- 00011859  0x00001f75 arg  0x00000d9e , 0x00000011 
- 00011860  0x00001f77 call  0x00002e58 
- 00011861  0x00001f78 add  0x00000013 , 0x000000ea , 0x00000005 
- 00011862  0x00001f7b istoret  0x00000001 , 0x00000005 
- 00011863  0x00001f7c rtn 
- 00011864  0x00001f7f arg  0x000000ff , 0x00000012 
- 00011865  0x00001f80 branch  0x00002e5a 
- 00011866  0x00001f93 copy  0x00000011 , 0x0000003f 
- 00011867  0x00001f94 iadd  0x00000002 , 0x00000005 
- 00011868  0x00001f95 fetch  0x00000001 , 0x00000018 
- 00011869  0x00001f96 istore  0x00000001 , 0x00000005 
- 00011870  0x00001f97 increase  0x00000001 , 0x00000002 
- 00011871  0x00001f98 copy  0x00000012 , 0x0000003f 
- 00011872  0x00001f99 iand_into  0x00000002 
- 00011873  0x00001f9a rtn 
- 00011874  0x00001f9d arg  0x00000000 , 0x00000002 
- 00011875  0x00001f9e copy  0x00000011 , 0x00000006 
- 00011876  0x00001fa0 ifetch  0x00000001 , 0x00000006 
- 00011877  0x00001fa1 iadd  0x00000002 , 0x00000002 
- 00011878  0x00001fa2 loop  0x00002e64 
- 00011879  0x00001fa3 rshift8  0x00000002 , 0x00000002 
- 00011880  0x00001fa4 rtn 
- 00011881  0x00001fa7 call  0x00002c7a 
- 00011882  0x00001fa8 call  0x00002e9f 
- 00011883  0x00001fa9 setarg  0x00000001 
- 00011884  0x00001faa call  0x00003272 
- 00011885  0x00001fad setarg  0x00000000 
- 00011886  0x00001fae call  0x00002e73 
- 00011887  0x00001fb0 istore  0x00000001 , 0x00000005 
- 00011888  0x00001fb2 rtn 
- 00011889  0x00001fb5 call  0x00003270 
- 00011890  0x00001fb7 increase  0x00000001 , 0x0000003f 
- 00011891  0x00001fba add  0x00000013 , 0x000000fc , 0x00000005 
- 00011892  0x00001fbb branch  0x000032b4 
- 00011893  0x00001fc0 add  0x00000013 , 0x000000fd , 0x00000011 
- 00011894  0x00001fc1 ifetch  0x00000001 , 0x00000011 
- 00011895  0x00001fc2 increase  0x00000001 , 0x0000003f 
- 00011896  0x00001fc3 add  0x00000013 , 0x000000fd , 0x00000005 
- 00011897  0x00001fc4 branch  0x000032b4 
- 00011898  0x00001fc7 bpatch  0x000000b9 , 0x00004017 
- 00011899  0x00001fc8 call  0x00003270 
- 00011900  0x00001fca sub  0x0000003f , 0x0000007c , 0x0000003e 
- 00011901  0x00001fcb rtn  0x00000002 
- 00011902  0x00001fcc add  0x00000013 , 0x000000fd , 0x00000011 
- 00011903  0x00001fcd ifetcht  0x00000001 , 0x00000011 
- 00011904  0x00001fcf isub  0x00000002 , 0x00000002 
- 00011905  0x00001fd0 call  0x00002e6d 
- 00011906  0x00001fd1 setarg  0x00000102 
- 00011907  0x00001fd2 iadd  0x00000013 , 0x00000011 
- 00011908  0x00001fd3 ifetch  0x00000001 , 0x00000011 
- 00011909  0x00001fd5 isub  0x00000002 , 0x0000003e 
- 00011910  0x00001fd6 nbranch  0x00002e8d , 0x00000002 
- 00011911  0x00001fd7 setarg  0x00000103 
- 00011912  0x00001fd8 iadd  0x00000013 , 0x00000011 
- 00011913  0x00001fd9 ifetch  0x00000001 , 0x00000011 
- 00011914  0x00001fdb isub  0x00000002 , 0x0000003e 
- 00011915  0x00001fdc branch  0x00002e99 , 0x00000002 
- 00011916  0x00001fdd rtn 
- 00011917  0x00001fe0 add  0x00000013 , 0x000000fe , 0x00000011 
- 00011918  0x00001fe1 ifetch  0x00000001 , 0x00000011 
- 00011919  0x00001fe3 beq  0x00000002 , 0x00002e93 
- 00011920  0x00001fe4 increase  0x00000001 , 0x0000003f 
- 00011921  0x00001fe5 call  0x00003272 
- 00011922  0x00001fe7 beq  0x00000001 , 0x00002e9f 
- 00011923  0x00001fe9 setarg  0x0000000a 
- 00011924  0x00001fea call  0x000032b0 
- 00011925  0x00001fec setarg  0x00000000 
- 00011926  0x00001fed call  0x000032b2 
- 00011927  0x00001ff0 add  0x00000013 , 0x000000ff , 0x00000011 
- 00011928  0x00001ff2 branch  0x00002ea5 
- 00011929  0x00001ff5 add  0x00000013 , 0x000000fe , 0x00000011 
- 00011930  0x00001ff6 ifetch  0x00000001 , 0x00000011 
- 00011931  0x00001ff8 beq  0x00000000 , 0x00002ea7 
- 00011932  0x00001ff9 increase  0xffffffff , 0x0000003f 
- 00011933  0x00001ffa call  0x00003272 
- 00011934  0x00001ffc beq  0x00000000 , 0x00002ea7 
- 00011935  0x00002001 setarg  0x00000005 
- 00011936  0x00002002 call  0x000032b0 
- 00011937  0x00002004 setarg  0x00000000 
- 00011938  0x00002005 call  0x000032b2 
- 00011939  0x00002008 setarg  0x00000100 
- 00011940  0x0000200a iadd  0x00000013 , 0x00000011 
- 00011941  0x0000200c ifetch  0x00000001 , 0x00000011 
- 00011942  0x0000200e branch  0x0000326a 
- 00011943  0x00002013 setarg  0x00000002 
- 00011944  0x00002014 call  0x000032b0 
- 00011945  0x00002016 setarg  0x00000000 
- 00011946  0x00002017 call  0x000032b2 
- 00011947  0x0000201a setarg  0x00000101 
- 00011948  0x0000201c branch  0x00002ea4 
- 00011949  0x0000202b set1  0x00000026 , 0x00000000 
- 00011950  0x0000202c call  0x00002c83 
- 00011951  0x0000202f setarg  0x00000001 
- 00011952  0x00002030 branch  0x00003256 
- 00011953  0x00002033 add  0x00000013 , 0x0000008b , 0x00000011 
- 00011954  0x00002034 ifetch  0x00000001 , 0x00000011 
- 00011955  0x00002036 beq  0x00000001 , 0x00007fe7 
- 00011956  0x00002037 call  0x00003253 
- 00011957  0x00002039 beq  0x00000001 , 0x00002eb9 
- 00011958  0x0000203a beq  0x00000002 , 0x00002ebd 
- 00011959  0x0000203b beq  0x00000003 , 0x00002ec1 
- 00011960  0x0000203c branch  0x00002a8c 
- 00011961  0x0000203f setarg  0x00000011 
- 00011962  0x00002040 call  0x00003256 
- 00011963  0x00002042 jam  0x000000aa , 0x0000119e 
- 00011964  0x00002043 branch  0x00002ec4 
- 00011965  0x00002045 setarg  0x00000012 
- 00011966  0x00002046 call  0x00003256 
- 00011967  0x00002048 jam  0x00000055 , 0x0000119e 
- 00011968  0x00002049 branch  0x00002ec4 
- 00011969  0x0000204b setarg  0x00000013 
- 00011970  0x0000204c call  0x00003256 
- 00011971  0x0000204e jam  0x00000022 , 0x0000119e 
- 00011972  0x00002050 call  0x0000323a 
- 00011973  0x00002052 and_into  0x00000007 , 0x0000003f 
- 00011974  0x00002053 store  0x00000001 , 0x0000119f 
- 00011975  0x00002054 call  0x00003224 
- 00011976  0x00002056 store  0x00000004 , 0x000011a0 
- 00011977  0x00002058 jam  0x00000000 , 0x000011a4 
- 00011978  0x00002059 arg  0x0000119e , 0x00000011 
- 00011979  0x0000205a arg  0x00000007 , 0x00000002 
- 00011980  0x0000205b call  0x00002d4c 
- 00011981  0x0000205c call  0x00002d53 
- 00011982  0x0000205d call  0x00002d33 
- 00011983  0x0000205e branch  0x00007fe7 
- 00011984  0x00002061 call  0x00003253 
- 00011985  0x00002063 rtneq  0x000000ff 
- 00011986  0x00002064 beq  0x00000011 , 0x00002ed6 
- 00011987  0x00002065 beq  0x00000012 , 0x00002ed9 
- 00011988  0x00002066 beq  0x00000013 , 0x00002edc 
- 00011989  0x00002067 rtn 
- 00011990  0x0000206a setarg  0x00000002 
- 00011991  0x0000206b call  0x00003256 
- 00011992  0x0000206d branch  0x00002d9f 
- 00011993  0x0000206f setarg  0x00000003 
- 00011994  0x00002070 call  0x00003256 
- 00011995  0x00002072 branch  0x00002d9f 
- 00011996  0x00002074 setarg  0x000000ff 
- 00011997  0x00002075 call  0x00003256 
- 00011998  0x00002077 jam  0x00000039 , 0x00000a99 
- 00011999  0x00002078 call  0x00007d86 
- 00012000  0x00002079 add  0x00000013 , 0x00000066 , 0x00000011 
- 00012001  0x0000207a ifetch  0x00000004 , 0x00000011 
- 00012002  0x0000207c call  0x0000322c 
- 00012003  0x0000207e branch  0x00002d9f 
- 00012004  0x00002081 set0  0x00000026 , 0x00000000 
- 00012005  0x00002082 call  0x00002f08 
- 00012006  0x00002083 call  0x00002f22 
- 00012007  0x00002085 call  0x00003263 
- 00012008  0x00002087 nop  0x000007d0 
- 00012009  0x00002088 call  0x00003261 
- 00012010  0x00002089 beq  0x000000ff , 0x00002dd4 
- 00012011  0x0000208a call  0x00002da4 
- 00012012  0x0000208b nbranch  0x00002efa , 0x00000018 
- 00012013  0x0000208c nbranch  0x00002efa , 0x0000002f 
- 00012014  0x0000208d call  0x00002dd6 
- 00012015  0x0000208e call  0x00002c7a 
- 00012016  0x0000208f add  0x00000013 , 0x00000092 , 0x00000011 
- 00012017  0x00002090 ifetcht  0x00000004 , 0x00000011 
- 00012018  0x00002091 call  0x000030be 
- 00012019  0x00002092 branch  0x00002ead , 0x00000005 
- 00012020  0x00002093 call  0x00002c7a 
- 00012021  0x00002094 add  0x00000013 , 0x00000066 , 0x00000011 
- 00012022  0x00002095 ifetch  0x00000004 , 0x00000011 
- 00012023  0x00002096 beq  0x00000000 , 0x00002ee7 
- 00012024  0x00002097 call  0x0000322c 
- 00012025  0x00002098 branch  0x00002f1c 
- 00012026  0x0000209b call  0x00003261 
- 00012027  0x0000209c increase  0x00000001 , 0x0000003f 
- 00012028  0x0000209d call  0x00003264 
- 00012029  0x0000209f call  0x00002f04 
- 00012030  0x000020a0 increase  0x00000001 , 0x0000003f 
- 00012031  0x000020a1 and_into  0x00000001 , 0x0000003f 
- 00012032  0x000020a2 call  0x00002f06 
- 00012033  0x000020a3 beq  0x00000000 , 0x00002f0c 
- 00012034  0x000020a4 beq  0x00000001 , 0x00002f0e 
- 00012035  0x000020a5 rtn 
- 00012036  0x000020a8 setarg  0x0000018b 
- 00012037  0x000020a9 branch  0x000032d0 
- 00012038  0x000020ab arg  0x0000018b , 0x00000011 
- 00012039  0x000020ac branch  0x000032b3 
- 00012040  0x000020af call  0x00003267 
- 00012041  0x000020b0 call  0x00003224 
- 00012042  0x000020b1 call  0x0000322c 
- 00012043  0x000020b2 branch  0x00002c8a 
- 00012044  0x000020b5 call  0x00002f08 
- 00012045  0x000020b6 branch  0x00002ee8 
- 00012046  0x000020b9 call  0x00002c83 
- 00012047  0x000020ba branch  0x00002ee8 
- 00012048  0x000020be set0  0x00000026 , 0x00000000 
- 00012049  0x000020bf call  0x00002c8a 
- 00012050  0x000020c0 call  0x00003253 
- 00012051  0x000020c2 rtnne  0x000000ff 
- 00012052  0x000020c3 call  0x00002f22 
- 00012053  0x000020c4 call  0x00003263 
- 00012054  0x000020c7 nop  0x000007d0 
- 00012055  0x000020c8 call  0x00003261 
- 00012056  0x000020ca beq  0x000000ff , 0x00002dd4 
- 00012057  0x000020cb call  0x00002da4 
- 00012058  0x000020cc nbranch  0x00002f27 , 0x00000018 
- 00012059  0x000020cd nbranch  0x00002f27 , 0x0000002f 
- 00012060  0x000020cf set1  0x00000026 , 0x00000000 
- 00012061  0x000020d0 call  0x00003263 
- 00012062  0x000020d1 setarg  0x000000ff 
- 00012063  0x000020d2 call  0x00003256 
- 00012064  0x000020d5 jam  0x0000003c , 0x00000a99 
- 00012065  0x000020d6 branch  0x00007d86 
- 00012066  0x000020d9 set1  0x00000027 , 0x00000000 
- 00012067  0x000020da jam  0x000000ff , 0x0000119e 
- 00012068  0x000020db call  0x0000323a 
- 00012069  0x000020dd call  0x00002d77 
- 00012070  0x000020de branch  0x00002d53 
- 00012071  0x000020e1 call  0x00003261 
- 00012072  0x000020e3 increase  0x00000001 , 0x0000003f 
- 00012073  0x000020e4 call  0x00003264 
- 00012074  0x000020e6 call  0x00002c8a 
- 00012075  0x000020e7 branch  0x00002f16 
- 00012076  0x000020ea call  0x00003267 
- 00012077  0x000020ed setarg  0x000000ff 
- 00012078  0x000020ee call  0x00003256 
- 00012079  0x000020f0 branch  0x00002f10 
- 00012080  0x000020fa bpatch  0x000000ba , 0x00004017 
- 00012081  0x000020fb call  0x00002c7a 
- 00012082  0x000020fc setarg  0x000031b0 
- 00012083  0x000020fd add  0x00000013 , 0x000000de , 0x00000005 
- 00012084  0x000020fe istore  0x00000002 , 0x00000005 
- 00012085  0x00002100 call  0x00002f3d 
- 00012086  0x00002101 call  0x000048ea 
- 00012087  0x00002102 call  0x000032b6 
- 00012088  0x00002104 bpatch  0x000000bb , 0x00004017 
- 00012089  0x00002105 beq  0x00000000 , 0x00003055 
- 00012090  0x00002106 beq  0x00000001 , 0x00002f45 
- 00012091  0x00002107 beq  0x0000000f , 0x00002f41 
- 00012092  0x00002108 branch  0x00002a8c 
- 00012093  0x0000210b call  0x0000326c 
- 00012094  0x0000210c arg  0x00000080 , 0x00000039 
- 00012095  0x0000210d arg  0x00000d9e , 0x00000005 
- 00012096  0x0000210e branch  0x00007ec6 
- 00012097  0x00002111 call  0x00002f4c 
- 00012098  0x00002113 call  0x00002f4f 
- 00012099  0x00002114 call  0x000048d3 
- 00012100  0x00002115 branch  0x00002f42 
- 00012101  0x00002118 bpatch  0x000000bc , 0x00004017 
- 00012102  0x00002119 call  0x00002f4c 
- 00012103  0x0000211b call  0x00002f4f 
- 00012104  0x0000211c call  0x00002fbd 
- 00012105  0x0000211d call  0x000048d3 
- 00012106  0x0000211e call  0x00003019 
- 00012107  0x0000211f branch  0x00002f47 
- 00012108  0x00002125 call  0x00003291 
- 00012109  0x00002126 call  0x00003296 
- 00012110  0x00002127 branch  0x00003299 
- 00012111  0x0000212a call  0x0000328f 
- 00012112  0x0000212c rtnne  0x00000000 
- 00012113  0x0000212e call  0x00002f55 
- 00012114  0x0000212f call  0x00002f65 
- 00012115  0x00002130 call  0x0000316b 
- 00012116  0x00002131 branch  0x00002f96 
- 00012117  0x00002134 call  0x00003294 
- 00012118  0x00002136 rtnbit1  0x00000000 
- 00012119  0x00002137 set1  0x00000000 , 0x0000003f 
- 00012120  0x00002138 call  0x00003297 
- 00012121  0x0000213a call  0x00003267 
- 00012122  0x0000213d call  0x00003299 
- 00012123  0x0000213f jam  0x00000000 , 0x00000d38 
- 00012124  0x00002140 call  0x0000324f 
- 00012125  0x00002142 call  0x00002f61 
- 00012126  0x00002144 add  0x00000013 , 0x00000000 , 0x00000005 
- 00012127  0x00002146 arg  0x00000042 , 0x00000039 
- 00012128  0x00002147 branch  0x00007ed4 
- 00012129  0x0000214a call  0x00003231 
- 00012130  0x0000214c call  0x0000327d 
- 00012131  0x0000214e call  0x0000322c 
- 00012132  0x00002150 branch  0x00002c8a 
- 00012133  0x00002153 bpatch  0x000000bd , 0x00004017 
- 00012134  0x00002154 call  0x0000324c 
- 00012135  0x00002156 beq  0x00000001 , 0x00002f8d 
- 00012136  0x00002157 call  0x00003245 
- 00012137  0x00002159 beq  0x00000001 , 0x00002c8a 
- 00012138  0x0000215a setarg  0x00000136 
- 00012139  0x0000215b iadd  0x00000013 , 0x00000011 
- 00012140  0x0000215c ifetcht  0x00000004 , 0x00000011 
- 00012141  0x0000215e copy  0x00000022 , 0x0000003f 
- 00012142  0x0000215f isub  0x00000002 , 0x0000003e 
- 00012143  0x00002160 ncall  0x00002d18 , 0x00000002 
- 00012144  0x00002161 copy  0x0000003f , 0x00000012 
- 00012145  0x00002162 setarg  0x00000136 
- 00012146  0x00002163 iadd  0x00000013 , 0x00000011 
- 00012147  0x00002164 ifetch  0x00000004 , 0x00000011 
- 00012148  0x00002165 copy  0x0000003f , 0x00000002 
- 00012149  0x00002167 setarg  0x0000013a 
- 00012150  0x00002168 iadd  0x00000013 , 0x00000011 
- 00012151  0x00002169 copy  0x00000002 , 0x0000003f 
- 00012152  0x0000216a ifetcht  0x00000001 , 0x00000011 
- 00012153  0x0000216c iadd  0x00000002 , 0x00000002 
- 00012154  0x0000216d copy  0x00000012 , 0x0000003f 
- 00012155  0x0000216e isub  0x00000002 , 0x0000003e 
- 00012156  0x0000216f nrtn  0x00000002 
- 00012157  0x00002170 set0  0x0000001c , 0x0000003f 
- 00012158  0x00002171 setarg  0x00000136 
- 00012159  0x00002172 iadd  0x00000013 , 0x00000005 
- 00012160  0x00002173 istore  0x00000004 , 0x00000005 
- 00012161  0x00002176 call  0x00002c8a 
- 00012162  0x00002177 call  0x00003278 
- 00012163  0x00002179 increase  0x00000001 , 0x0000003f 
- 00012164  0x0000217a call  0x0000327b 
- 00012165  0x0000217c rtnne  0x00000002 
- 00012166  0x0000217d call  0x0000327a 
- 00012167  0x00002181 branch  0x0000324f 
- 00012168  0x00002184 copy  0x00000022 , 0x0000003f 
- 00012169  0x00002185 arg  0x00000136 , 0x00000011 
- 00012170  0x00002186 call  0x000032bf 
- 00012171  0x00002187 istore  0x00000004 , 0x00000005 
- 00012172  0x0000218b branch  0x0000327a 
- 00012173  0x0000218e arg  0x00000d9e , 0x00000011 
- 00012174  0x0000218f call  0x00002f94 
- 00012175  0x00002190 add  0x00000013 , 0x000000eb , 0x00000005 
- 00012176  0x00002191 istoret  0x00000001 , 0x00000005 
- 00012177  0x00002193 sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012178  0x00002194 nrtn  0x00000002 
- 00012179  0x00002195 branch  0x00002c8a 
- 00012180  0x00002198 arg  0x00000100 , 0x00000039 
- 00012181  0x00002199 branch  0x00002e62 
- 00012182  0x0000219c call  0x00002f99 
- 00012183  0x0000219d call  0x00002fa5 
- 00012184  0x0000219e branch  0x00002fb1 
- 00012185  0x000021a1 setarg  0x00000180 
- 00012186  0x000021a2 call  0x000032d0 
- 00012187  0x000021a4 rtn  0x00000034 
- 00012188  0x000021a5 arg  0x0000000b , 0x00000007 
- 00012189  0x000021a6 call  0x00007f16 
- 00012190  0x000021a7 nrtn  0x00000034 
- 00012191  0x000021a8 call  0x000032a7 
- 00012192  0x000021ab setarg  0x00000001 
- 00012193  0x000021ac store  0x00000001 , 0x00000d54 
- 00012194  0x000021ad setarg  0x00000000 
- 00012195  0x000021ae istore  0x00000007 , 0x00000005 
- 00012196  0x000021af branch  0x000031b8 
- 00012197  0x000021b2 setarg  0x0000017e 
- 00012198  0x000021b3 call  0x000032d0 
- 00012199  0x000021b5 rtn  0x00000034 
- 00012200  0x000021b6 arg  0x0000000e , 0x00000007 
- 00012201  0x000021b7 call  0x00007f16 
- 00012202  0x000021b8 nrtn  0x00000034 
- 00012203  0x000021b9 call  0x000032aa 
- 00012204  0x000021bc arg  0x00000d64 , 0x00000005 
- 00012205  0x000021bd arg  0x00000002 , 0x00000039 
- 00012206  0x000021be call  0x00007ec6 
- 00012207  0x000021bf jam  0x00000000 , 0x00000d64 
- 00012208  0x000021c0 branch  0x000031ed 
- 00012209  0x000021c3 setarg  0x0000017f 
- 00012210  0x000021c4 call  0x000032d0 
- 00012211  0x000021c6 rtn  0x00000034 
- 00012212  0x000021c7 arg  0x0000000c , 0x00000007 
- 00012213  0x000021c8 call  0x00007f16 
- 00012214  0x000021c9 nrtn  0x00000034 
- 00012215  0x000021ca call  0x000032ad 
- 00012216  0x000021cd arg  0x00000d74 , 0x00000005 
- 00012217  0x000021ce arg  0x00000002 , 0x00000039 
- 00012218  0x000021cf call  0x00007ec6 
- 00012219  0x000021d0 jam  0x00000003 , 0x00000d74 
- 00012220  0x000021d1 branch  0x00003207 
- 00012221  0x000021d4 call  0x0000328f 
- 00012222  0x000021d6 rtnne  0x00000001 
- 00012223  0x000021d7 call  0x00002fc1 
- 00012224  0x000021d8 branch  0x00002fcb 
- 00012225  0x000021db call  0x00003294 
- 00012226  0x000021dd rtnbit1  0x00000001 
- 00012227  0x000021de set1  0x00000001 , 0x0000003f 
- 00012228  0x000021df call  0x00003297 
- 00012229  0x000021e1 call  0x0000329c 
- 00012230  0x000021e3 call  0x00002c83 
- 00012231  0x000021e4 setarg  0x00000000 
- 00012232  0x000021e5 arg  0x00000106 , 0x00000011 
- 00012233  0x000021e6 call  0x000032bf 
- 00012234  0x000021e8 branch  0x000032c5 
- 00012235  0x000021eb call  0x0000316e 
- 00012236  0x000021ec nbranch  0x00002f5e , 0x0000002f 
- 00012237  0x000021ed add  0x00000013 , 0x00000000 , 0x00000006 
- 00012238  0x000021ee setarg  0x00000109 
- 00012239  0x000021ef iadd  0x00000013 , 0x00000005 
- 00012240  0x000021f0 arg  0x00000008 , 0x00000039 
- 00012241  0x000021f1 call  0x00007f01 
- 00012242  0x000021f2 setarg  0x0000010b 
- 00012243  0x000021f3 call  0x000032d0 
- 00012244  0x000021f4 beq  0x000000aa , 0x00002fd9 
- 00012245  0x000021f5 beq  0x00000055 , 0x00002fed 
- 00012246  0x000021f6 beq  0x00000022 , 0x00003001 
- 00012247  0x000021f7 beq  0x000000ff , 0x00003212 
- 00012248  0x000021f8 branch  0x00002f5e 
- 00012249  0x000021fb call  0x000032bd 
- 00012250  0x000021fc beq  0x00000001 , 0x00002fdd 
- 00012251  0x000021fd beq  0x00000002 , 0x00002fe8 
- 00012252  0x000021fe rtn 
- 00012253  0x00002200 setarg  0x00000001 
- 00012254  0x00002201 call  0x00002ff7 
- 00012255  0x00002204 setarg  0x00000001 
- 00012256  0x00002205 call  0x00003289 
- 00012257  0x00002208 setarg  0x00000080 
- 00012258  0x00002209 arg  0x00000130 , 0x00000011 
- 00012259  0x0000220a call  0x000032b3 
- 00012260  0x0000220c call  0x0000327d 
- 00012261  0x0000220e arg  0x00000131 , 0x00000011 
- 00012262  0x0000220f call  0x000032bf 
- 00012263  0x00002211 branch  0x0000322d 
- 00012264  0x00002214 setarg  0x00000001 
- 00012265  0x00002215 call  0x00002fff 
- 00012266  0x00002218 setarg  0x00000002 
- 00012267  0x00002219 call  0x00003289 
- 00012268  0x0000221b branch  0x00002fe1 
- 00012269  0x0000221e call  0x000032bd 
- 00012270  0x0000221f beq  0x00000001 , 0x00002ff1 
- 00012271  0x00002220 beq  0x00000002 , 0x00002ff9 
- 00012272  0x00002221 rtn 
- 00012273  0x00002223 call  0x00002fdf 
- 00012274  0x00002224 setarg  0x00000106 
- 00012275  0x00002225 call  0x000032d0 
- 00012276  0x00002227 beq  0x00000001 , 0x00002ff6 
- 00012277  0x00002228 rtn 
- 00012278  0x0000222a setarg  0x00000002 
- 00012279  0x0000222d arg  0x00000106 , 0x00000011 
- 00012280  0x0000222e branch  0x000032b3 
- 00012281  0x00002231 call  0x00002fea 
- 00012282  0x00002232 setarg  0x00000107 
- 00012283  0x00002233 call  0x000032d0 
- 00012284  0x00002235 beq  0x00000001 , 0x00002ffe 
- 00012285  0x00002236 rtn 
- 00012286  0x00002238 setarg  0x00000002 
- 00012287  0x0000223b arg  0x00000107 , 0x00000011 
- 00012288  0x0000223c branch  0x000032b3 
- 00012289  0x0000223f call  0x000032bd 
- 00012290  0x00002240 beq  0x00000001 , 0x00003005 
- 00012291  0x00002241 beq  0x00000002 , 0x00003011 
- 00012292  0x00002242 rtn 
- 00012293  0x00002244 setarg  0x00000106 
- 00012294  0x00002245 call  0x000032d0 
- 00012295  0x00002247 beq  0x00000002 , 0x00003009 
- 00012296  0x00002248 rtn 
- 00012297  0x0000224a call  0x0000328b 
- 00012298  0x0000224c or_into  0x00000001 , 0x0000003f 
- 00012299  0x0000224d call  0x0000328d 
- 00012300  0x00002250 setarg  0x00000000 
- 00012301  0x00002251 setarg  0x00000106 
- 00012302  0x00002252 iadd  0x00000013 , 0x00000005 
- 00012303  0x00002253 istore  0x00000002 , 0x00000005 
- 00012304  0x00002254 branch  0x00002f5e 
- 00012305  0x00002257 setarg  0x00000107 
- 00012306  0x00002258 call  0x000032d0 
- 00012307  0x0000225a bne  0x00000000 , 0x00003015 
- 00012308  0x0000225b rtn 
- 00012309  0x0000225d call  0x0000328b 
- 00012310  0x0000225f or_into  0x00000002 , 0x0000003f 
- 00012311  0x00002260 call  0x0000328d 
- 00012312  0x00002262 branch  0x0000300c 
- 00012313  0x00002266 fetch  0x00000001 , 0x00000d50 
- 00012314  0x00002267 rtn  0x00000034 
- 00012315  0x00002268 jam  0x00000000 , 0x00000d50 
- 00012316  0x00002269 fetch  0x00000002 , 0x00000d4e 
- 00012317  0x0000226a arg  0x000002ba , 0x00000002 
- 00012318  0x0000226b isub  0x00000002 , 0x0000003e 
- 00012319  0x0000226c nrtn  0x00000005 
- 00012320  0x0000226e fetch  0x00000001 , 0x00000cb6 
- 00012321  0x0000226f rtnne  0x000000ba 
- 00012322  0x00002270 fetch  0x00000001 , 0x00000cb7 
- 00012323  0x00002271 bpatch  0x000000be , 0x00004017 
- 00012324  0x00002272 beq  0x000000a0 , 0x0000303b 
- 00012325  0x00002273 beq  0x000000a1 , 0x0000302c 
- 00012326  0x00002274 beq  0x000000a6 , 0x00003041 
- 00012327  0x00002275 beq  0x000000a7 , 0x00003043 
- 00012328  0x00002276 beq  0x000000a9 , 0x00003049 
- 00012329  0x00002277 beq  0x000000b0 , 0x0000304d 
- 00012330  0x00002279 jam  0x00000000 , 0x00000d42 
- 00012331  0x0000227a rtn 
- 00012332  0x0000227c fetch  0x00000001 , 0x00000cb8 
- 00012333  0x0000227d beq  0x00000001 , 0x00003031 
- 00012334  0x0000227e beq  0x00000084 , 0x00003034 
- 00012335  0x0000227f beq  0x000000a7 , 0x00003039 
- 00012336  0x00002280 branch  0x0000302a 
- 00012337  0x00002282 call  0x0000328b 
- 00012338  0x00002284 store  0x00000001 , 0x00000cf7 
- 00012339  0x00002285 branch  0x0000303f 
- 00012340  0x00002287 call  0x00003291 
- 00012341  0x00002289 call  0x00003296 
- 00012342  0x0000228b call  0x0000328b 
- 00012343  0x0000228d store  0x00000001 , 0x00000cf7 
- 00012344  0x0000228e branch  0x0000303f 
- 00012345  0x00002292 jam  0x000000a1 , 0x00000cf7 
- 00012346  0x00002293 branch  0x0000303f 
- 00012347  0x00002296 fetch  0x00000001 , 0x00000cb8 
- 00012348  0x00002297 beq  0x00000081 , 0x0000303e 
- 00012349  0x00002299 branch  0x0000302a 
- 00012350  0x0000229d call  0x00003090 
- 00012351  0x0000229f jam  0x00000001 , 0x00000d42 
- 00012352  0x000022a0 rtn 
- 00012353  0x000022a6 jam  0x00000015 , 0x00000cf7 
- 00012354  0x000022a7 branch  0x0000303f 
- 00012355  0x000022aa call  0x0000328f 
- 00012356  0x000022ac beq  0x00000000 , 0x00003047 
- 00012357  0x000022ad beq  0x00000001 , 0x00003039 
- 00012358  0x000022af rtn 
- 00012359  0x000022b1 jam  0x000000a0 , 0x00000cf7 
- 00012360  0x000022b2 branch  0x0000303f 
- 00012361  0x000022b8 jam  0x00000000 , 0x00000cf7 
- 00012362  0x000022b9 jam  0x00000000 , 0x00000cf8 
- 00012363  0x000022ba jam  0x00000001 , 0x00000cf9 
- 00012364  0x000022bb branch  0x0000303f 
- 00012365  0x000022bf call  0x0000329c 
- 00012366  0x000022c0 fetch  0x00000001 , 0x00000cb8 
- 00012367  0x000022c1 increase  0x00000002 , 0x0000003f 
- 00012368  0x000022c2 copy  0x0000003f , 0x00000039 
- 00012369  0x000022c3 arg  0x00000cb6 , 0x00000006 
- 00012370  0x000022c4 setarg  0x0000013c 
- 00012371  0x000022c5 iadd  0x00000013 , 0x00000005 
- 00012372  0x000022c6 branch  0x00007f01 
- 00012373  0x000022ca bpatch  0x000000bf , 0x00004017 
- 00012374  0x000022cb call  0x0000307d 
- 00012375  0x000022cd call  0x00002c7f 
- 00012376  0x000022ce call  0x000048d3 
- 00012377  0x000022cf branch  0x00003057 
- 00012378  0x000022d2 call  0x0000328f 
- 00012379  0x000022d4 rtnne  0x00000000 
- 00012380  0x000022d5 call  0x00002f51 
- 00012381  0x000022d6 branch  0x00003098 
- 00012382  0x000022d9 call  0x0000328f 
- 00012383  0x000022db rtnne  0x00000001 
- 00012384  0x000022dc call  0x00002fc1 
- 00012385  0x000022dd call  0x00002fcb 
- 00012386  0x000022de call  0x0000328b 
- 00012387  0x000022e0 rtn  0x00000034 
- 00012388  0x000022e1 call  0x00003286 
- 00012389  0x000022e3 call  0x00002f4c 
- 00012390  0x000022e4 call  0x00003093 
- 00012391  0x000022e6 setarg  0x00000000 
- 00012392  0x000022e7 add  0x00000013 , 0x000000a7 , 0x00000005 
- 00012393  0x000022e9 branch  0x0000322d 
- 00012394  0x000022ec call  0x00007fe9 
- 00012395  0x000022ed add  0x00000013 , 0x000000a7 , 0x00000011 
- 00012396  0x000022ee ifetcht  0x00000004 , 0x00000011 
- 00012397  0x000022f0 copy  0x00000022 , 0x0000003f 
- 00012398  0x000022f1 isub  0x00000002 , 0x0000003e 
- 00012399  0x000022f2 ncall  0x00002d18 , 0x00000002 
- 00012400  0x000022f3 copy  0x0000003f , 0x00000012 
- 00012401  0x000022f4 add  0x00000013 , 0x000000a7 , 0x00000011 
- 00012402  0x000022f5 ifetch  0x00000004 , 0x00000011 
- 00012403  0x000022f7 add  0x00000013 , 0x000000ab , 0x00000011 
- 00012404  0x000022f8 ifetcht  0x00000001 , 0x00000011 
- 00012405  0x000022fa iadd  0x00000002 , 0x00000002 
- 00012406  0x000022fb copy  0x00000012 , 0x0000003f 
- 00012407  0x000022fc isub  0x00000002 , 0x0000003e 
- 00012408  0x000022fd nrtn  0x00000002 
- 00012409  0x000022fe set0  0x0000001c , 0x0000003f 
- 00012410  0x000022ff add  0x00000013 , 0x000000a7 , 0x00000005 
- 00012411  0x00002300 istore  0x00000004 , 0x00000005 
- 00012412  0x00002302 branch  0x00007fe7 
- 00012413  0x00002305 setarg  0x00000001 
- 00012414  0x00002306 call  0x00003287 
- 00012415  0x00002308 call  0x00003283 
- 00012416  0x0000230a setarg  0x000000ff 
- 00012417  0x0000230b add  0x00000013 , 0x000000ab , 0x00000005 
- 00012418  0x0000230c istore  0x00000001 , 0x00000005 
- 00012419  0x0000230e branch  0x00003067 
- 00012420  0x00002311 setarg  0x0000015c 
- 00012421  0x00002312 call  0x000032d0 
- 00012422  0x00002314 rtn  0x00000034 
- 00012423  0x00002315 call  0x0000306a 
- 00012424  0x00002316 nrtn  0x00000028 
- 00012425  0x00002317 call  0x00003281 
- 00012426  0x00002319 increase  0x00000001 , 0x0000003f 
- 00012427  0x0000231a and_into  0x00000001 , 0x0000003f 
- 00012428  0x0000231b call  0x00003284 
- 00012429  0x0000231d beq  0x00000000 , 0x00002f4c 
- 00012430  0x0000231e beq  0x00000001 , 0x00003090 
- 00012431  0x0000231f rtn 
- 00012432  0x00002325 setarg  0x00000001 
- 00012433  0x00002326 call  0x00003292 
- 00012434  0x00002327 branch  0x00003296 
- 00012435  0x0000232a setarg  0x00000001 
- 00012436  0x0000232b call  0x000032a5 
- 00012437  0x0000232e setarg  0x00000280 
- 00012438  0x0000232f arg  0x00000008 , 0x00000007 
- 00012439  0x00002330 branch  0x00007f08 
- 00012440  0x00002333 call  0x000032a2 
- 00012441  0x00002335 rtn  0x00000034 
- 00012442  0x00002336 arg  0x00000008 , 0x00000007 
- 00012443  0x00002337 call  0x00007f16 
- 00012444  0x00002338 nrtn  0x00000034 
- 00012445  0x00002339 call  0x000032a4 
- 00012446  0x0000233c setarg  0x00000007 
- 00012447  0x0000233d call  0x00003292 
- 00012448  0x0000233f call  0x00003296 
- 00012449  0x00002341 branch  0x00002f5e 
- 00012450  0x00002344 bpatch  0x000000c0 , 0x00004018 
- 00012451  0x00002345 call  0x0000328f 
- 00012452  0x00002347 rtnne  0x00000007 
- 00012453  0x00002348 call  0x000030cb 
- 00012454  0x00002349 call  0x000030e0 
- 00012455  0x0000234a call  0x0000316e 
- 00012456  0x0000234b nbranch  0x00002f5e , 0x0000002f 
- 00012457  0x0000234d call  0x000030bc 
- 00012458  0x0000234e call  0x00003172 , 0x00000005 
- 00012459  0x00002352 call  0x00002f4c 
- 00012460  0x00002353 call  0x00003294 
- 00012461  0x00002355 set1  0x00000000 , 0x0000003f 
- 00012462  0x00002356 call  0x00003297 
- 00012463  0x00002358 call  0x00002f5e 
- 00012464  0x00002359 call  0x00003093 
- 00012465  0x0000235a call  0x000030bc 
- 00012466  0x0000235b branch  0x000030c1 , 0x00000005 
- 00012467  0x0000235c setarg  0x00000164 
- 00012468  0x0000235d call  0x000032d3 
- 00012469  0x0000235f call  0x000030be 
- 00012470  0x00002360 branch  0x000030c5 , 0x00000005 
- 00012471  0x00002361 setarg  0x00000160 
- 00012472  0x00002362 call  0x000032d3 
- 00012473  0x00002364 call  0x000030be 
- 00012474  0x00002365 branch  0x000030c8 , 0x00000005 
- 00012475  0x00002366 rtn 
- 00012476  0x00002369 setarg  0x0000012b 
- 00012477  0x0000236a call  0x000032d3 
- 00012478  0x0000236d call  0x0000322a 
- 00012479  0x0000236f isub  0x00000002 , 0x0000003e 
- 00012480  0x00002370 rtn 
- 00012481  0x00002373 setarg  0x00000182 
- 00012482  0x00002374 call  0x000032d0 
- 00012483  0x00002378 add  0x00000013 , 0x00000091 , 0x00000005 
- 00012484  0x00002379 branch  0x000032b4 
- 00012485  0x0000237c setarg  0x00000185 
- 00012486  0x0000237d call  0x000032d0 
- 00012487  0x0000237f branch  0x000030c3 
- 00012488  0x00002381 setarg  0x00000188 
- 00012489  0x00002382 call  0x000032d0 
- 00012490  0x00002384 branch  0x000030c3 
- 00012491  0x00002387 call  0x00003294 
- 00012492  0x00002389 rtnbit1  0x00000007 
- 00012493  0x0000238a set1  0x00000007 , 0x0000003f 
- 00012494  0x0000238b call  0x00003297 
- 00012495  0x0000238d call  0x00003283 
- 00012496  0x0000238f call  0x0000329c 
- 00012497  0x00002391 setarg  0x00000000 
- 00012498  0x00002392 add  0x00000013 , 0x000000f5 , 0x00000005 
- 00012499  0x00002393 istore  0x00000003 , 0x00000005 
- 00012500  0x00002395 arg  0x00000183 , 0x00000011 
- 00012501  0x00002396 call  0x000032bf 
- 00012502  0x00002397 istore  0x00000007 , 0x00000005 
- 00012503  0x0000239a call  0x000030bc 
- 00012504  0x0000239b nrtn  0x00000005 
- 00012505  0x0000239c add  0x00000013 , 0x00000091 , 0x00000011 
- 00012506  0x0000239d ifetch  0x00000001 , 0x00000011 
- 00012507  0x0000239f arg  0x00000182 , 0x00000011 
- 00012508  0x000023a0 call  0x000032b3 
- 00012509  0x000023a2 add  0x00000013 , 0x00000090 , 0x00000011 
- 00012510  0x000023a3 ifetch  0x00000001 , 0x00000011 
- 00012511  0x000023a6 branch  0x0000314a 
- 00012512  0x000023a9 bpatch  0x000000c1 , 0x00004018 
- 00012513  0x000023aa call  0x00003281 
- 00012514  0x000023ac increase  0x00000001 , 0x0000003f 
- 00012515  0x000023ad and_into  0x00000003 , 0x0000003f 
- 00012516  0x000023ae call  0x00003284 
- 00012517  0x000023b1 beq  0x00000000 , 0x0000310e 
- 00012518  0x000023b2 beq  0x00000001 , 0x00003132 
- 00012519  0x000023b3 beq  0x00000002 , 0x000030ea 
- 00012520  0x000023b4 beq  0x00000003 , 0x00003132 
- 00012521  0x000023b5 rtn 
- 00012522  0x000023b8 call  0x00002fdf 
- 00012523  0x000023b9 setarg  0x00000160 
- 00012524  0x000023ba call  0x0000327e 
- 00012525  0x000023bc branch  0x000030e0 , 0x00000034 
- 00012526  0x000023bd call  0x0000322c 
- 00012527  0x000023bf setarg  0x00000189 
- 00012528  0x000023c0 call  0x000032d0 
- 00012529  0x000023c2 call  0x00003108 , 0x00000034 
- 00012530  0x000023c3 setarg  0x00000187 
- 00012531  0x000023c4 call  0x000032d0 
- 00012532  0x000023c6 call  0x0000322f 
- 00012533  0x000023c8 add  0x00000013 , 0x000000f7 , 0x00000011 
- 00012534  0x000023c9 ifetcht  0x00000001 , 0x00000011 
- 00012535  0x000023cb arg  0x00000f9e , 0x00000011 
- 00012536  0x000023cc call  0x00002e58 
- 00012537  0x000023cd add  0x00000013 , 0x000000f7 , 0x00000005 
- 00012538  0x000023ce istoret  0x00000001 , 0x00000005 
- 00012539  0x000023d0 call  0x00002f94 
- 00012540  0x000023d1 add  0x00000013 , 0x000000fa , 0x00000005 
- 00012541  0x000023d2 istoret  0x00000001 , 0x00000005 
- 00012542  0x000023d4 sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012543  0x000023d5 nrtn  0x00000002 
- 00012544  0x000023d6 setarg  0x00000188 
- 00012545  0x000023d7 call  0x00003275 
- 00012546  0x000023d9 call  0x00002c90 
- 00012547  0x000023da arg  0x00000188 , 0x00000011 
- 00012548  0x000023db call  0x000032c8 
- 00012549  0x000023dc istoret  0x00000001 , 0x00000005 
- 00012550  0x000023e0 arg  0x00000187 , 0x00000011 
- 00012551  0x000023e1 branch  0x000032b3 
- 00012552  0x000023e4 setarg  0x00000001 
- 00012553  0x000023e5 arg  0x00000189 , 0x00000011 
- 00012554  0x000023e6 call  0x000032b3 
- 00012555  0x000023e8 arg  0x00000000 , 0x00000002 
- 00012556  0x000023e9 call  0x00002c94 
- 00012557  0x000023ec branch  0x00003106 
- 00012558  0x000023ef call  0x00002fea 
- 00012559  0x000023f0 setarg  0x00000164 
- 00012560  0x000023f1 call  0x0000327e 
- 00012561  0x000023f3 branch  0x000030e0 , 0x00000034 
- 00012562  0x000023f4 call  0x0000322c 
- 00012563  0x000023f6 setarg  0x00000186 
- 00012564  0x000023f7 call  0x000032d0 
- 00012565  0x000023f9 call  0x0000312c , 0x00000034 
- 00012566  0x000023fa setarg  0x00000184 
- 00012567  0x000023fb call  0x000032d0 
- 00012568  0x000023fd call  0x0000322f 
- 00012569  0x000023ff add  0x00000013 , 0x000000f6 , 0x00000011 
- 00012570  0x00002400 ifetcht  0x00000001 , 0x00000011 
- 00012571  0x00002402 arg  0x0000109e , 0x00000011 
- 00012572  0x00002403 call  0x00002e58 
- 00012573  0x00002404 add  0x00000013 , 0x000000f6 , 0x00000005 
- 00012574  0x00002405 istoret  0x00000001 , 0x00000005 
- 00012575  0x00002407 call  0x00002f94 
- 00012576  0x00002408 add  0x00000013 , 0x000000f9 , 0x00000005 
- 00012577  0x00002409 istoret  0x00000001 , 0x00000005 
- 00012578  0x0000240b sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012579  0x0000240c nrtn  0x00000002 
- 00012580  0x0000240d setarg  0x00000185 
- 00012581  0x0000240e call  0x00003275 
- 00012582  0x00002410 call  0x00002c90 
- 00012583  0x00002411 arg  0x00000185 , 0x00000011 
- 00012584  0x00002412 call  0x000032c8 
- 00012585  0x00002413 istoret  0x00000001 , 0x00000005 
- 00012586  0x00002417 arg  0x00000184 , 0x00000011 
- 00012587  0x00002418 branch  0x000032b3 
- 00012588  0x0000241b setarg  0x00000001 
- 00012589  0x0000241c arg  0x00000186 , 0x00000011 
- 00012590  0x0000241d call  0x000032b3 
- 00012591  0x0000241f arg  0x00000000 , 0x00000002 
- 00012592  0x00002420 call  0x00002c94 
- 00012593  0x00002423 branch  0x0000312a 
- 00012594  0x00002426 call  0x00002fdf 
- 00012595  0x00002427 call  0x0000327d 
- 00012596  0x00002429 call  0x0000322c 
- 00012597  0x0000242b setarg  0x00000183 
- 00012598  0x0000242c call  0x000032d0 
- 00012599  0x0000242e call  0x0000314c , 0x00000034 
- 00012600  0x0000242f call  0x0000314f 
- 00012601  0x00002430 add  0x00000013 , 0x000000f5 , 0x00000011 
- 00012602  0x00002431 ifetcht  0x00000001 , 0x00000011 
- 00012603  0x00002433 arg  0x00000e9e , 0x00000011 
- 00012604  0x00002434 call  0x00002e58 
- 00012605  0x00002435 add  0x00000013 , 0x000000f5 , 0x00000005 
- 00012606  0x00002436 istoret  0x00000001 , 0x00000005 
- 00012607  0x00002438 call  0x00002f94 
- 00012608  0x00002439 add  0x00000013 , 0x000000f8 , 0x00000005 
- 00012609  0x0000243a istoret  0x00000001 , 0x00000005 
- 00012610  0x0000243c sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012611  0x0000243d nrtn  0x00000002 
- 00012612  0x0000243e setarg  0x00000182 
- 00012613  0x0000243f call  0x00003275 
- 00012614  0x00002441 call  0x00002c90 
- 00012615  0x00002442 arg  0x00000182 , 0x00000011 
- 00012616  0x00002443 call  0x000032c8 
- 00012617  0x00002444 istoret  0x00000001 , 0x00000005 
- 00012618  0x00002449 arg  0x00000181 , 0x00000011 
- 00012619  0x0000244a branch  0x000032b3 
- 00012620  0x00002452 setarg  0x00000001 
- 00012621  0x00002453 arg  0x00000183 , 0x00000011 
- 00012622  0x00002454 call  0x000032b3 
- 00012623  0x00002456 setarg  0x00000181 
- 00012624  0x00002457 call  0x000032d0 
- 00012625  0x00002458 branch  0x0000322f 
- 00012626  0x0000245d add  0x00000013 , 0x00000000 , 0x00000011 
- 00012627  0x0000245e ifetch  0x00000001 , 0x00000011 
- 00012628  0x00002460 call  0x0000323c 
- 00012629  0x00002463 call  0x00002dde 
- 00012630  0x00002465 call  0x0000325f 
- 00012631  0x00002467 isolate1  0x00000000 , 0x0000003f 
- 00012632  0x00002468 branch  0x0000315c , 0x00000001 
- 00012633  0x0000246a call  0x0000315d 
- 00012634  0x0000246b call  0x00002d53 
- 00012635  0x0000246c call  0x00002df7 
- 00012636  0x0000246e branch  0x00002e45 
- 00012637  0x00002471 bpatch  0x000000c2 , 0x00004018 
- 00012638  0x00002472 add  0x00000013 , 0x00000086 , 0x00000005 
- 00012639  0x00002473 call  0x000032d6 
- 00012640  0x00002475 setarg  0x0000013b 
- 00012641  0x00002476 call  0x000032d0 
- 00012642  0x00002478 rtn  0x00000034 
- 00012643  0x00002479 setarg  0x00000006 
- 00012644  0x0000247a add  0x00000013 , 0x00000086 , 0x00000005 
- 00012645  0x0000247b istore  0x00000001 , 0x00000005 
- 00012646  0x0000247d arg  0x00000006 , 0x00000039 
- 00012647  0x0000247e setarg  0x0000012f 
- 00012648  0x0000247f iadd  0x00000013 , 0x00000006 
- 00012649  0x00002481 add  0x00000013 , 0x00000022 , 0x00000005 
- 00012650  0x00002483 branch  0x00007f01 
- 00012651  0x00002487 call  0x0000316e 
- 00012652  0x00002488 nbranch  0x00002f5e , 0x0000002f 
- 00012653  0x00002489 branch  0x00003172 
- 00012654  0x0000248c call  0x00002f5e 
- 00012655  0x0000248d call  0x00002e11 
- 00012656  0x0000248e nrtn  0x0000002f 
- 00012657  0x0000248f branch  0x00003152 
- 00012658  0x00002492 bpatch  0x000000c3 , 0x00004018 
- 00012659  0x00002493 call  0x00003188 
- 00012660  0x00002494 nbranch  0x00002f5e , 0x00000028 
- 00012661  0x00002495 add  0x00000013 , 0x00000084 , 0x00000011 
- 00012662  0x00002496 ifetch  0x00000001 , 0x00000011 
- 00012663  0x00002498 branch  0x00002f5e , 0x00000034 
- 00012664  0x00002499 increase  0x00000002 , 0x0000003f 
- 00012665  0x0000249a iforce  0x00000039 
- 00012666  0x0000249b add  0x00000013 , 0x00000000 , 0x00000006 
- 00012667  0x0000249d setarg  0x00000109 
- 00012668  0x0000249e iadd  0x00000013 , 0x00000005 
- 00012669  0x000024a0 call  0x00007f01 
- 00012670  0x000024a1 call  0x00003286 
- 00012671  0x000024a3 call  0x000032b6 
- 00012672  0x000024a5 call  0x00003093 , 0x00000034 
- 00012673  0x000024a6 setarg  0x0000010b 
- 00012674  0x000024a7 call  0x000032d0 
- 00012675  0x000024a9 beq  0x00000001 , 0x0000319e 
- 00012676  0x000024aa beq  0x00000002 , 0x000031c6 
- 00012677  0x000024ab beq  0x00000003 , 0x000031f2 
- 00012678  0x000024ac beq  0x000000ff , 0x00003212 
- 00012679  0x000024ad branch  0x00002f5e 
- 00012680  0x000024b0 call  0x00002c7a 
- 00012681  0x000024b1 call  0x00007fe9 
- 00012682  0x000024b2 add  0x00000013 , 0x000000ca , 0x00000011 
- 00012683  0x000024b3 ifetch  0x00000001 , 0x00000011 
- 00012684  0x000024b5 add  0x00000013 , 0x000000cb , 0x00000011 
- 00012685  0x000024b6 ifetcht  0x00000001 , 0x00000011 
- 00012686  0x000024b8 isub  0x00000002 , 0x0000003e 
- 00012687  0x000024b9 ncall  0x00007fe7 , 0x00000005 
- 00012688  0x000024ba add  0x00000013 , 0x000000ca , 0x00000011 
- 00012689  0x000024bb ifetch  0x00000001 , 0x00000011 
- 00012690  0x000024bd add  0x00000013 , 0x000000cb , 0x00000005 
- 00012691  0x000024be istore  0x00000001 , 0x00000005 
- 00012692  0x000024c0 add  0x00000013 , 0x000000c4 , 0x00000011 
- 00012693  0x000024c1 ifetch  0x00000003 , 0x00000011 
- 00012694  0x000024c3 add  0x00000013 , 0x000000c7 , 0x00000011 
- 00012695  0x000024c4 ifetcht  0x00000003 , 0x00000011 
- 00012696  0x000024c6 isub  0x00000002 , 0x0000003e 
- 00012697  0x000024c7 ncall  0x00007fe7 , 0x00000005 
- 00012698  0x000024c8 add  0x00000013 , 0x000000c4 , 0x00000011 
- 00012699  0x000024c9 ifetch  0x00000003 , 0x00000011 
- 00012700  0x000024cb add  0x00000013 , 0x000000c7 , 0x00000005 
- 00012701  0x000024cd branch  0x000032c5 
- 00012702  0x000024d0 call  0x00002f88 
- 00012703  0x000024d1 call  0x0000324c 
- 00012704  0x000024d2 store  0x00000001 , 0x00000aa2 
- 00012705  0x000024d4 call  0x00003274 
- 00012706  0x000024d5 fetch  0x00000001 , 0x00000aa2 
- 00012707  0x000024d7 isolate1  0x00000003 , 0x00000002 
- 00012708  0x000024d8 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00012709  0x000024d9 add  0x00000013 , 0x000000b2 , 0x00000005 
- 00012710  0x000024da istore  0x00000001 , 0x00000005 
- 00012711  0x000024dc beq  0x00000001 , 0x00003216 
- 00012712  0x000024dd call  0x00003245 
- 00012713  0x000024df call  0x00003274 
- 00012714  0x000024e1 isolate1  0x00000004 , 0x00000002 
- 00012715  0x000024e2 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00012716  0x000024e3 call  0x00003249 
- 00012717  0x000024e5 add  0x00000013 , 0x000000de , 0x00000011 
- 00012718  0x000024e6 ifetch  0x00000002 , 0x00000011 
- 00012719  0x000024e8 branch  0x00007f9c 
- 00012720  0x000024eb setarg  0x00000001 
- 00012721  0x000024ec store  0x00000001 , 0x00000d54 
- 00012722  0x000024ed call  0x0000329e 
- 00012723  0x000024ef istore  0x00000007 , 0x00000005 
- 00012724  0x000024f0 call  0x0000329e 
- 00012725  0x000024f2 ncall  0x000031bd , 0x00000034 
- 00012726  0x000024f3 call  0x0000329e 
- 00012727  0x000024f5 call  0x000031c2 , 0x00000034 
- 00012728  0x000024f7 jam  0x00000020 , 0x00000d52 
- 00012729  0x000024f9 fetch  0x00000001 , 0x00000d38 
- 00012730  0x000024fa set1  0x00000002 , 0x0000003f 
- 00012731  0x000024fb store  0x00000001 , 0x00000d38 
- 00012732  0x000024fc rtn 
- 00012733  0x000024ff setarg  0x00000001 
- 00012734  0x00002500 call  0x000032a8 
- 00012735  0x00002503 setarg  0x00000140 
- 00012736  0x00002504 arg  0x0000000b , 0x00000007 
- 00012737  0x00002505 branch  0x00007f08 
- 00012738  0x00002507 call  0x000032a7 
- 00012739  0x0000250a setarg  0x00000000 
- 00012740  0x0000250b arg  0x0000000b , 0x00000007 
- 00012741  0x0000250c branch  0x00007f08 
- 00012742  0x0000250f call  0x00003274 
- 00012743  0x00002511 isolate1  0x00000003 , 0x00000002 
- 00012744  0x00002512 branch  0x0000321b , 0x00000001 
- 00012745  0x00002513 arg  0x00000d64 , 0x00000005 
- 00012746  0x00002514 call  0x000031e0 
- 00012747  0x00002515 fetch  0x00000008 , 0x00000d64 
- 00012748  0x00002516 ncall  0x000031e4 , 0x00000034 
- 00012749  0x00002517 fetch  0x00000008 , 0x00000d64 
- 00012750  0x00002518 call  0x000031e9 , 0x00000034 
- 00012751  0x00002519 call  0x00002c7a 
- 00012752  0x0000251a fetch  0x00000008 , 0x00000d64 
- 00012753  0x0000251b arg  0x00000168 , 0x00000011 
- 00012754  0x0000251c call  0x000032bf 
- 00012755  0x0000251d istore  0x00000008 , 0x00000005 
- 00012756  0x0000251f setarg  0x00000170 
- 00012757  0x00002520 iadd  0x00000013 , 0x00000011 
- 00012758  0x00002521 ifetcht  0x00000008 , 0x00000011 
- 00012759  0x00002523 isub  0x00000002 , 0x0000003e 
- 00012760  0x00002524 ncall  0x000031ed , 0x00000005 
- 00012761  0x00002525 setarg  0x00000168 
- 00012762  0x00002526 iadd  0x00000013 , 0x00000011 
- 00012763  0x00002527 ifetch  0x00000008 , 0x00000011 
- 00012764  0x00002529 arg  0x00000170 , 0x00000011 
- 00012765  0x0000252a call  0x000032bf 
- 00012766  0x0000252b istore  0x00000008 , 0x00000005 
- 00012767  0x0000252d branch  0x00002f5e 
- 00012768  0x00002530 setarg  0x0000010b 
- 00012769  0x00002531 iadd  0x00000013 , 0x00000006 
- 00012770  0x00002533 arg  0x00000009 , 0x00000039 
- 00012771  0x00002534 branch  0x00007ff3 
- 00012772  0x00002537 setarg  0x00000001 
- 00012773  0x00002538 call  0x000032ab 
- 00012774  0x0000253b setarg  0x00000140 
- 00012775  0x0000253c arg  0x0000000e , 0x00000007 
- 00012776  0x0000253d branch  0x00007f08 
- 00012777  0x00002540 call  0x000032aa 
- 00012778  0x00002543 setarg  0x00000000 
- 00012779  0x00002544 arg  0x0000000e , 0x00000007 
- 00012780  0x00002545 branch  0x00007f08 
- 00012781  0x00002549 jam  0x00000010 , 0x00000d51 
- 00012782  0x0000254a fetch  0x00000001 , 0x00000d38 
- 00012783  0x0000254b set1  0x00000001 , 0x0000003f 
- 00012784  0x0000254c store  0x00000001 , 0x00000d38 
- 00012785  0x0000254d rtn 
- 00012786  0x00002550 arg  0x00000d74 , 0x00000005 
- 00012787  0x00002551 call  0x000031e0 
- 00012788  0x00002552 fetch  0x00000002 , 0x00000d75 
- 00012789  0x00002553 ncall  0x00003209 , 0x00000034 
- 00012790  0x00002554 fetch  0x00000002 , 0x00000d75 
- 00012791  0x00002555 call  0x0000320e , 0x00000034 
- 00012792  0x00002556 call  0x00002c7a 
- 00012793  0x00002557 fetch  0x00000003 , 0x00000d74 
- 00012794  0x00002558 arg  0x00000178 , 0x00000011 
- 00012795  0x00002559 call  0x000032c4 
- 00012796  0x0000255b setarg  0x0000017b 
- 00012797  0x0000255c iadd  0x00000013 , 0x00000011 
- 00012798  0x0000255d ifetcht  0x00000003 , 0x00000011 
- 00012799  0x0000255f isub  0x00000002 , 0x0000003e 
- 00012800  0x00002560 ncall  0x00003207 , 0x00000005 
- 00012801  0x00002561 setarg  0x00000178 
- 00012802  0x00002562 iadd  0x00000013 , 0x00000011 
- 00012803  0x00002563 ifetch  0x00000003 , 0x00000011 
- 00012804  0x00002565 arg  0x0000017b , 0x00000011 
- 00012805  0x00002566 call  0x000032c4 
- 00012806  0x00002568 branch  0x00002f5e 
- 00012807  0x0000256b jam  0x00000021 , 0x00000d52 
- 00012808  0x0000256c branch  0x000031b9 
- 00012809  0x0000256f setarg  0x00000001 
- 00012810  0x00002570 call  0x000032ae 
- 00012811  0x00002573 setarg  0x00000140 
- 00012812  0x00002574 arg  0x0000000c , 0x00000007 
- 00012813  0x00002575 branch  0x00007f08 
- 00012814  0x00002578 call  0x000032ad 
- 00012815  0x0000257b setarg  0x00000000 
- 00012816  0x0000257c arg  0x0000000c , 0x00000007 
- 00012817  0x0000257d branch  0x00007f08 
- 00012818  0x00002580 call  0x000032bd 
- 00012819  0x00002582 beq  0x00000001 , 0x00003216 
- 00012820  0x00002583 beq  0x00000002 , 0x0000321b 
- 00012821  0x00002584 rtn 
- 00012822  0x00002586 setarg  0x0000010d 
- 00012823  0x00002587 call  0x0000327e 
- 00012824  0x00002588 arg  0x00000160 , 0x00000011 
- 00012825  0x00002589 call  0x000032bf 
- 00012826  0x0000258c branch  0x0000322d 
- 00012827  0x0000258f setarg  0x0000010d 
- 00012828  0x00002590 call  0x0000327e 
- 00012829  0x00002591 arg  0x00000164 , 0x00000011 
- 00012830  0x00002592 call  0x000032bf 
- 00012831  0x00002595 branch  0x0000322d 
- 00012832  0x00002598 call  0x00002c7a 
- 00012833  0x00002599 add  0x00000013 , 0x000000cd , 0x00000005 
- 00012834  0x0000259a istore  0x00000001 , 0x00000005 
- 00012835  0x0000259b rtn 
- 00012836  0x0000259e call  0x00002c7a 
- 00012837  0x0000259f add  0x00000013 , 0x000000be , 0x00000011 
- 00012838  0x000025a0 branch  0x0000327f 
- 00012839  0x000025a2 call  0x00002c7a 
- 00012840  0x000025a3 add  0x00000013 , 0x000000be , 0x00000005 
- 00012841  0x000025a4 branch  0x0000322d 
- 00012842  0x000025a7 add  0x00000013 , 0x000000ae , 0x00000011 
- 00012843  0x000025a8 branch  0x0000327f 
- 00012844  0x000025aa add  0x00000013 , 0x000000ae , 0x00000005 
- 00012845  0x000025ac istore  0x00000004 , 0x00000005 
- 00012846  0x000025ad rtn 
- 00012847  0x000025b0 add  0x00000013 , 0x00000090 , 0x00000005 
- 00012848  0x000025b1 branch  0x000032b4 
- 00012849  0x000025b4 setarg  0x00000000 
- 00012850  0x000025b6 call  0x00002c7a 
- 00012851  0x000025b7 add  0x00000013 , 0x00000085 , 0x00000005 
- 00012852  0x000025b8 branch  0x000032b4 
- 00012853  0x000025bb add  0x00000013 , 0x00000042 , 0x00000005 
- 00012854  0x000025bc branch  0x000032b4 
- 00012855  0x000025bf setarg  0x00000004 
- 00012856  0x000025c1 add  0x00000013 , 0x000000cc , 0x00000005 
- 00012857  0x000025c2 branch  0x000032b4 
- 00012858  0x000025c5 add  0x00000013 , 0x00000087 , 0x00000011 
- 00012859  0x000025c6 branch  0x000032d1 
- 00012860  0x000025c8 add  0x00000013 , 0x00000087 , 0x00000005 
- 00012861  0x000025c9 branch  0x000032b4 
- 00012862  0x000025cc setarg  0x00000002 
- 00012863  0x000025ce add  0x00000013 , 0x000000d0 , 0x00000005 
- 00012864  0x000025cf branch  0x000032b4 
- 00012865  0x000025d2 setarg  0x00000001 
- 00012866  0x000025d4 call  0x00002c7a 
- 00012867  0x000025d5 add  0x00000013 , 0x000000ce , 0x00000005 
- 00012868  0x000025d6 branch  0x000032b4 
- 00012869  0x000025d9 call  0x00002c7a 
- 00012870  0x000025da add  0x00000013 , 0x000000b4 , 0x00000011 
- 00012871  0x000025db branch  0x000032d1 
- 00012872  0x000025dd setarg  0x00000001 
- 00012873  0x000025df call  0x00002c7a 
- 00012874  0x000025e0 add  0x00000013 , 0x000000b4 , 0x00000005 
- 00012875  0x000025e1 branch  0x000032b4 
- 00012876  0x000025e4 call  0x00002c7a 
- 00012877  0x000025e5 add  0x00000013 , 0x000000b2 , 0x00000011 
- 00012878  0x000025e6 branch  0x000032d1 
- 00012879  0x000025e8 setarg  0x00000001 
- 00012880  0x000025ea call  0x00002c7a 
- 00012881  0x000025eb add  0x00000013 , 0x000000b2 , 0x00000005 
- 00012882  0x000025ec branch  0x000032b4 
- 00012883  0x000025ef call  0x00002c7a 
- 00012884  0x000025f0 add  0x00000013 , 0x00000096 , 0x00000011 
- 00012885  0x000025f1 branch  0x000032d1 
- 00012886  0x000025f3 add  0x00000013 , 0x00000096 , 0x00000005 
- 00012887  0x000025f4 branch  0x000032b4 
- 00012888  0x000025f7 add  0x00000013 , 0x000000cf , 0x00000011 
- 00012889  0x000025f8 branch  0x000032d1 
- 00012890  0x000025fa setarg  0x00000000 
- 00012891  0x000025fc add  0x00000013 , 0x000000cf , 0x00000005 
- 00012892  0x000025fd branch  0x000032b4 
- 00012893  0x00002600 add  0x00000013 , 0x000000d2 , 0x00000011 
- 00012894  0x00002601 branch  0x000032d1 
- 00012895  0x00002604 add  0x00000013 , 0x00000001 , 0x00000011 
- 00012896  0x00002605 branch  0x000032d1 
- 00012897  0x00002608 add  0x00000013 , 0x000000b5 , 0x00000011 
- 00012898  0x00002609 branch  0x000032d1 
- 00012899  0x0000260b setarg  0x00000000 
- 00012900  0x0000260d call  0x00002c7a 
- 00012901  0x0000260e add  0x00000013 , 0x000000b5 , 0x00000005 
- 00012902  0x0000260f branch  0x000032b4 
- 00012903  0x00002612 call  0x00002c7a 
- 00012904  0x00002613 add  0x00000013 , 0x000000fb , 0x00000011 
- 00012905  0x00002614 ifetch  0x00000001 , 0x00000011 
- 00012906  0x00002616 store  0x00000001 , 0x000041de 
- 00012907  0x00002617 rtn 
- 00012908  0x0000261a call  0x00002c7a 
- 00012909  0x0000261b fetch  0x00000001 , 0x000041de 
- 00012910  0x0000261d add  0x00000013 , 0x000000fb , 0x00000005 
- 00012911  0x0000261e branch  0x000032b4 
- 00012912  0x00002621 add  0x00000013 , 0x000000fc , 0x00000011 
- 00012913  0x00002622 branch  0x000032d1 
- 00012914  0x00002625 add  0x00000013 , 0x000000fe , 0x00000005 
- 00012915  0x00002626 branch  0x000032b4 
- 00012916  0x00002629 setarg  0x00000109 
- 00012917  0x0000262b iadd  0x00000013 , 0x00000011 
- 00012918  0x0000262c ifetcht  0x00000001 , 0x00000011 
- 00012919  0x0000262d rtn 
- 00012920  0x00002630 setarg  0x00000135 
- 00012921  0x00002631 branch  0x000032d0 
- 00012922  0x00002633 setarg  0x00000000 
- 00012923  0x00002635 arg  0x00000135 , 0x00000011 
- 00012924  0x00002636 branch  0x000032b3 
- 00012925  0x00002639 setarg  0x0000012b 
- 00012926  0x0000263b call  0x000032cd 
- 00012927  0x0000263d ifetch  0x00000004 , 0x00000011 
- 00012928  0x0000263e rtn 
- 00012929  0x00002641 setarg  0x0000015f 
- 00012930  0x00002642 branch  0x000032d0 
- 00012931  0x00002644 setarg  0x00000000 
- 00012932  0x00002646 arg  0x0000015f , 0x00000011 
- 00012933  0x00002647 branch  0x000032b3 
- 00012934  0x0000264a setarg  0x00000000 
- 00012935  0x0000264c arg  0x0000015c , 0x00000011 
- 00012936  0x0000264d branch  0x000032b3 
- 00012937  0x00002650 arg  0x0000012f , 0x00000011 
- 00012938  0x00002651 branch  0x000032b3 
- 00012939  0x00002654 setarg  0x00000108 
- 00012940  0x00002655 branch  0x000032d0 
- 00012941  0x00002657 arg  0x00000108 , 0x00000011 
- 00012942  0x00002658 branch  0x000032b3 
- 00012943  0x0000265b setarg  0x00000105 
- 00012944  0x0000265c branch  0x000032d0 
- 00012945  0x0000265e setarg  0x00000000 
- 00012946  0x00002660 arg  0x00000105 , 0x00000011 
- 00012947  0x00002661 branch  0x000032b3 
- 00012948  0x00002664 setarg  0x00000104 
- 00012949  0x00002665 branch  0x000032d0 
- 00012950  0x00002667 setarg  0x00000000 
- 00012951  0x00002669 arg  0x00000104 , 0x00000011 
- 00012952  0x0000266a branch  0x000032b3 
- 00012953  0x0000266d setarg  0x00000000 
- 00012954  0x0000266f arg  0x0000013b , 0x00000011 
- 00012955  0x00002670 branch  0x000032b3 
- 00012956  0x00002672 setarg  0x00000001 
- 00012957  0x00002673 branch  0x0000329a 
- 00012958  0x00002676 setarg  0x0000010c 
- 00012959  0x00002677 call  0x000032cd 
- 00012960  0x00002678 ifetch  0x00000007 , 0x00000011 
- 00012961  0x00002679 rtn 
- 00012962  0x0000267c setarg  0x0000015e 
- 00012963  0x0000267d branch  0x000032d0 
- 00012964  0x0000267f setarg  0x00000000 
- 00012965  0x00002681 arg  0x0000015e , 0x00000011 
- 00012966  0x00002682 branch  0x000032b3 
- 00012967  0x00002685 setarg  0x00000000 
- 00012968  0x00002687 arg  0x00000180 , 0x00000011 
- 00012969  0x00002688 branch  0x000032b3 
- 00012970  0x0000268b setarg  0x00000000 
- 00012971  0x0000268d arg  0x0000017e , 0x00000011 
- 00012972  0x0000268e branch  0x000032b3 
- 00012973  0x00002691 setarg  0x00000000 
- 00012974  0x00002693 arg  0x0000017f , 0x00000011 
- 00012975  0x00002694 branch  0x000032b3 
- 00012976  0x00002697 arg  0x00000102 , 0x00000011 
- 00012977  0x00002698 branch  0x000032b3 
- 00012978  0x0000269b arg  0x00000103 , 0x00000011 
- 00012979  0x0000269d call  0x000032c7 
- 00012980  0x0000269f istore  0x00000001 , 0x00000005 
- 00012981  0x000026a0 rtn 
- 00012982  0x000026a3 setarg  0x0000015d 
- 00012983  0x000026a4 branch  0x000032d0 
- 00012984  0x000026a7 arg  0x0000015d , 0x00000011 
- 00012985  0x000026a8 branch  0x000032b3 
- 00012986  0x000026ab setarg  0x0000018a 
- 00012987  0x000026ac call  0x000032d0 
- 00012988  0x000026ad branch  0x0000326a 
- 00012989  0x000026b0 setarg  0x0000010c 
- 00012990  0x000026b1 branch  0x000032d0 
- 00012991  0x000026b4 copy  0x0000003f , 0x00000002 
- 00012992  0x000026b5 copy  0x00000011 , 0x0000003f 
- 00012993  0x000026b6 iadd  0x00000013 , 0x00000005 
- 00012994  0x000026b7 copy  0x00000002 , 0x0000003f 
- 00012995  0x000026b8 rtn 
- 00012996  0x000026bb call  0x000032bf 
- 00012997  0x000026bd istore  0x00000003 , 0x00000005 
- 00012998  0x000026be rtn 
- 00012999  0x000026c1 call  0x00002c7a 
- 00013000  0x000026c3 copy  0x0000003f , 0x00000012 
- 00013001  0x000026c4 copy  0x00000011 , 0x0000003f 
- 00013002  0x000026c5 iadd  0x00000013 , 0x00000005 
- 00013003  0x000026c6 copy  0x00000012 , 0x0000003f 
- 00013004  0x000026c7 rtn 
- 00013005  0x000026ca call  0x00002c7a 
- 00013006  0x000026cb iadd  0x00000013 , 0x00000011 
- 00013007  0x000026cc rtn 
- 00013008  0x000026cf call  0x000032cd 
- 00013009  0x000026d1 ifetch  0x00000001 , 0x00000011 
- 00013010  0x000026d2 rtn 
- 00013011  0x000026d5 call  0x000032cd 
- 00013012  0x000026d6 ifetcht  0x00000004 , 0x00000011 
- 00013013  0x000026d7 rtn 
- 00013014  0x000026da setarg  0x00000000 
- 00013015  0x000026db branch  0x000032b4 
- 00013016  0x000026e0 bpatch  0x000000c4 , 0x00004018 
- 00013017  0x000026e1 fetch  0x00000001 , 0x00004092 
- 00013018  0x000026e2 branch  0x000032d8 , 0x00000034 
- 00013019  0x000026e4 beq  0x00000004 , 0x00002f30 
- 00013020  0x000026e5 beq  0x0000000f , 0x00003436 
- 00013021  0x000026e6 beq  0x00000009 , 0x000045de 
- 00013022  0x000026e7 beq  0x0000000a , 0x0000392a 
- 00013023  0x000026e8 beq  0x0000000e , 0x000035bf 
- 00013024  0x000026e9 beq  0x00000010 , 0x000044a4 
- 00013025  0x000026ea bbit1  0x00000006 , 0x00003d00 
- 00013026  0x000026eb rtn 
- 00013027  0x000026ee bpatch  0x000000c5 , 0x00004018 
- 00013028  0x000026ef jam  0x00000000 , 0x00000151 
- 00013029  0x000026f0 jam  0x00000000 , 0x0000017f 
- 00013030  0x000026f1 jam  0x00000000 , 0x00000180 
- 00013031  0x000026f2 setarg  0x00000000 
- 00013032  0x000026f3 store  0x00000005 , 0x000009ae 
- 00013033  0x000026f4 fetch  0x00000001 , 0x00004092 
- 00013034  0x000026f5 branch  0x000032e3 , 0x00000034 
- 00013035  0x000026f6 beq  0x0000000a , 0x00003962 
- 00013036  0x000026f8 rtn 
- 00013037  0x000026fc call  0x00007cd1 
- 00013038  0x000026fd call  0x00007d9c 
- 00013039  0x000026fe call  0x000032f6 
- 00013040  0x000026ff fetch  0x00000002 , 0x000041f3 
- 00013041  0x00002700 branch  0x00007f9c 
- 00013042  0x00002703 fetch  0x00000002 , 0x000041f1 
- 00013043  0x00002704 branch  0x00007f9c 
- 00013044  0x00002707 fetch  0x00000002 , 0x000041ef 
- 00013045  0x00002708 branch  0x00007f9c 
- 00013046  0x0000270b bpatch  0x000000c6 , 0x00004018 
- 00013047  0x0000270d arg  0x00004668 , 0x00000011 
- 00013048  0x0000270e call  0x00007fc4 
- 00013049  0x0000270f rtn  0x00000034 
- 00013050  0x00002711 copy  0x0000003f , 0x00000013 
- 00013051  0x00002712 call  0x000032ff 
- 00013052  0x00002713 branch  0x00003324 
- 00013053  0x00002716 arg  0x00000000 , 0x00000013 
- 00013054  0x00002717 rtn 
- 00013055  0x0000271d beq  0x00000001 , 0x00003311 
- 00013056  0x0000271e beq  0x00000010 , 0x00003357 
- 00013057  0x0000271f beq  0x00000005 , 0x00003335 
- 00013058  0x00002720 beq  0x00000012 , 0x0000333c 
- 00013059  0x00002721 beq  0x00000006 , 0x00003353 
- 00013060  0x00002722 beq  0x00000004 , 0x00003394 
- 00013061  0x00002723 beq  0x00000002 , 0x00003399 
- 00013062  0x00002724 beq  0x00000013 , 0x00003394 
- 00013063  0x00002725 beq  0x00000014 , 0x0000334b 
- 00013064  0x00002726 beq  0x00000015 , 0x0000334f 
- 00013065  0x00002727 beq  0x00000003 , 0x0000332e 
- 00013066  0x00002728 beq  0x0000000b , 0x00003340 
- 00013067  0x00002729 beq  0x0000000c , 0x00003347 
- 00013068  0x0000272b beq  0x00000016 , 0x0000335b 
- 00013069  0x0000272c beq  0x00000018 , 0x0000332a 
- 00013070  0x0000272d beq  0x0000002a , 0x0000331a 
- 00013071  0x0000272e beq  0x0000002b , 0x00003318 
- 00013072  0x0000272f rtn 
- 00013073  0x00002733 fetch  0x00000002 , 0x00004682 
- 00013074  0x00002734 set1  0x00000000 , 0x0000003f 
- 00013075  0x00002735 store  0x00000002 , 0x00004682 
- 00013076  0x00002736 fetch  0x00000002 , 0x0000420a 
- 00013077  0x00002737 set0  0x00000000 , 0x0000003f 
- 00013078  0x00002738 store  0x00000002 , 0x0000420a 
- 00013079  0x00002739 rtn 
- 00013080  0x0000273c jam  0x00000000 , 0x00000229 
- 00013081  0x0000273d rtn 
- 00013082  0x00002740 fetch  0x00000001 , 0x00000229 
- 00013083  0x00002741 increase  0x00000001 , 0x0000003f 
- 00013084  0x00002742 store  0x00000001 , 0x00000229 
- 00013085  0x00002743 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00013086  0x00002744 branch  0x000033df , 0x00000002 
- 00013087  0x00002745 jam  0x00000000 , 0x00000229 
- 00013088  0x00002746 fetch  0x00000002 , 0x0000420a 
- 00013089  0x00002747 set1  0x00000009 , 0x0000003f 
- 00013090  0x00002748 store  0x00000002 , 0x0000420a 
- 00013091  0x00002749 branch  0x000033e9 
- 00013092  0x0000274c fetch  0x00000002 , 0x000041f5 
- 00013093  0x0000274d branch  0x00007f9c 
- 00013094  0x00002750 fetch  0x00000002 , 0x000041e9 
- 00013095  0x00002751 branch  0x00007f9c 
- 00013096  0x00002754 fetch  0x00000002 , 0x000041ed 
- 00013097  0x00002755 branch  0x00007f9c 
- 00013098  0x00002758 fetch  0x00000002 , 0x0000420a 
- 00013099  0x00002759 set1  0x00000001 , 0x0000003f 
- 00013100  0x0000275a store  0x00000002 , 0x0000420a 
- 00013101  0x0000275b branch  0x00003412 
- 00013102  0x0000275e fetch  0x00000002 , 0x00004682 
- 00013103  0x0000275f set1  0x00000007 , 0x0000003f 
- 00013104  0x00002760 store  0x00000002 , 0x00004682 
- 00013105  0x00002761 fetch  0x00000002 , 0x0000420a 
- 00013106  0x00002762 set1  0x00000002 , 0x0000003f 
- 00013107  0x00002763 store  0x00000002 , 0x0000420a 
- 00013108  0x00002764 rtn 
- 00013109  0x00002767 fetch  0x00000002 , 0x00004682 
- 00013110  0x00002768 set1  0x00000001 , 0x0000003f 
- 00013111  0x00002769 store  0x00000002 , 0x00004682 
- 00013112  0x0000276a fetch  0x00000002 , 0x0000420a 
- 00013113  0x0000276b set1  0x00000004 , 0x0000003f 
- 00013114  0x0000276c store  0x00000002 , 0x0000420a 
- 00013115  0x0000276d rtn 
- 00013116  0x00002770 fetch  0x00000002 , 0x00004682 
- 00013117  0x00002771 set1  0x00000003 , 0x0000003f 
- 00013118  0x00002772 store  0x00000002 , 0x00004682 
- 00013119  0x00002773 rtn 
- 00013120  0x00002776 fetch  0x00000002 , 0x00004682 
- 00013121  0x00002777 set1  0x00000005 , 0x0000003f 
- 00013122  0x00002778 store  0x00000002 , 0x00004682 
- 00013123  0x00002779 fetch  0x00000002 , 0x0000420a 
- 00013124  0x0000277a set1  0x00000003 , 0x0000003f 
- 00013125  0x0000277b store  0x00000002 , 0x0000420a 
- 00013126  0x0000277c rtn 
- 00013127  0x0000277f fetch  0x00000002 , 0x00004682 
- 00013128  0x00002780 set0  0x00000005 , 0x0000003f 
- 00013129  0x00002781 store  0x00000002 , 0x00004682 
- 00013130  0x00002782 rtn 
- 00013131  0x00002785 fetch  0x00000002 , 0x00004682 
- 00013132  0x00002786 set1  0x00000009 , 0x0000003f 
- 00013133  0x00002787 store  0x00000002 , 0x00004682 
- 00013134  0x00002788 rtn 
- 00013135  0x0000278b fetch  0x00000002 , 0x00004682 
- 00013136  0x0000278c set0  0x00000009 , 0x0000003f 
- 00013137  0x0000278d store  0x00000002 , 0x00004682 
- 00013138  0x0000278e branch  0x00003418 
- 00013139  0x00002791 fetch  0x00000002 , 0x00004682 
- 00013140  0x00002792 set1  0x00000002 , 0x0000003f 
- 00013141  0x00002793 store  0x00000002 , 0x00004682 
- 00013142  0x00002794 rtn 
- 00013143  0x00002797 fetch  0x00000002 , 0x0000420a 
- 00013144  0x00002798 set1  0x00000000 , 0x0000003f 
- 00013145  0x00002799 store  0x00000002 , 0x0000420a 
- 00013146  0x0000279a rtn 
- 00013147  0x0000279d fetch  0x00000002 , 0x0000420a 
- 00013148  0x0000279e set1  0x00000008 , 0x0000003f 
- 00013149  0x0000279f store  0x00000002 , 0x0000420a 
- 00013150  0x000027a0 branch  0x000033e9 
- 00013151  0x000027a4 bpatch  0x000000c7 , 0x00004018 
- 00013152  0x000027a5 store  0x00000001 , 0x0000022a 
- 00013153  0x000027a7 fetch  0x00000001 , 0x0000022a 
- 00013154  0x000027a8 rtn  0x00000034 
- 00013155  0x000027a9 increase  0xffffffff , 0x0000003f 
- 00013156  0x000027aa store  0x00000001 , 0x0000022a 
- 00013157  0x000027ab call  0x00007cdd 
- 00013158  0x000027ac call  0x000033d6 
- 00013159  0x000027ad call  0x00003387 
- 00013160  0x000027ae call  0x0000338d 
- 00013161  0x000027af call  0x0000651b 
- 00013162  0x000027b0 fetch  0x00000002 , 0x000041fd 
- 00013163  0x000027b1 call  0x00007f9c 
- 00013164  0x000027b2 branch  0x00003361 
- 00013165  0x000027b8 ifetch  0x00000001 , 0x00000013 
- 00013166  0x000027b9 rtn  0x00000034 
- 00013167  0x000027ba pincrease  0xffffffff 
- 00013168  0x000027bb istore  0x00000001 , 0x00000013 
- 00013169  0x000027bc nrtn  0x00000034 
- 00013170  0x000027bd copy  0x00000012 , 0x0000003f 
- 00013171  0x000027be branch  0x00007f9c 
- 00013172  0x000027c3 ifetch  0x00000002 , 0x00000013 
- 00013173  0x000027c4 rtn  0x00000034 
- 00013174  0x000027c5 pincrease  0xffffffff 
- 00013175  0x000027c6 istore  0x00000002 , 0x00000013 
- 00013176  0x000027c7 nrtn  0x00000034 
- 00013177  0x000027c8 copy  0x00000012 , 0x0000003f 
- 00013178  0x000027c9 branch  0x00007f9c 
- 00013179  0x000027cc fetcht  0x00000002 , 0x0000423f 
- 00013180  0x000027cd add  0x00000002 , 0x00000001 , 0x00000013 
- 00013181  0x000027ce arg  0x0000337f , 0x00000012 
- 00013182  0x000027cf branch  0x0000336d 
- 00013183  0x000027d2 call  0x0000342d 
- 00013184  0x000027d3 beq  0x00000001 , 0x00003382 
- 00013185  0x000027d5 branch  0x0000340a 
- 00013186  0x000027d7 setarg  0x00000002 
- 00013187  0x000027d8 istore  0x00000001 , 0x00000013 
- 00013188  0x000027d9 add  0x00000002 , 0x00000008 , 0x00000012 
- 00013189  0x000027db ifetch  0x00000002 , 0x00000012 
- 00013190  0x000027dc branch  0x00007f9c 
- 00013191  0x000027df arg  0x00004205 , 0x00000013 
- 00013192  0x000027e0 arg  0x0000338a , 0x00000012 
- 00013193  0x000027e1 branch  0x0000336d 
- 00013194  0x000027e4 call  0x00002252 
- 00013195  0x000027e5 branch  0x0000340e , 0x00000005 
- 00013196  0x000027e6 rtn 
- 00013197  0x000027ea arg  0x0000467e , 0x00000013 
- 00013198  0x000027eb arg  0x00003390 , 0x00000012 
- 00013199  0x000027ec branch  0x00003374 
- 00013200  0x000027ef call  0x000033f0 
- 00013201  0x000027f0 call  0x00003408 
- 00013202  0x000027f1 fetch  0x00000002 , 0x000041f7 
- 00013203  0x000027f2 branch  0x00007f9c 
- 00013204  0x000027f6 call  0x000033ac 
- 00013205  0x000027f8 fetch  0x00000002 , 0x00004682 
- 00013206  0x000027f9 set0  0x00000007 , 0x0000003f 
- 00013207  0x000027fa store  0x00000002 , 0x00004682 
- 00013208  0x000027fb rtn 
- 00013209  0x000027fe jam  0x00000000 , 0x00004205 
- 00013210  0x000027ff fetch  0x00000002 , 0x00004682 
- 00013211  0x00002800 bbit1  0x00000007 , 0x0000339e 
- 00013212  0x00002801 isolate0  0x00000001 , 0x0000003f 
- 00013213  0x00002802 call  0x000032fd , 0x00000001 
- 00013214  0x00002804 bpatch  0x000000c8 , 0x00004019 
- 00013215  0x00002805 fetch  0x00000002 , 0x00004682 
- 00013216  0x00002806 set0  0x00000000 , 0x0000003f 
- 00013217  0x00002807 set0  0x00000001 , 0x0000003f 
- 00013218  0x00002808 set0  0x00000002 , 0x0000003f 
- 00013219  0x00002809 set0  0x00000003 , 0x0000003f 
- 00013220  0x0000280a set0  0x00000007 , 0x0000003f 
- 00013221  0x0000280b store  0x00000002 , 0x00004682 
- 00013222  0x0000280c branch  0x00003418 
- 00013223  0x0000280f call  0x000033a9 
- 00013224  0x00002810 branch  0x0000340a 
- 00013225  0x00002814 setarg  0x00000000 
- 00013226  0x00002815 store  0x00000002 , 0x00004208 
- 00013227  0x00002816 rtn 
- 00013228  0x00002818 setarg  0x00000000 
- 00013229  0x00002819 store  0x00000002 , 0x0000420a 
- 00013230  0x0000281a rtn 
- 00013231  0x0000281d fetch  0x00000002 , 0x0000420a 
- 00013232  0x0000281e store  0x00000002 , 0x00004208 
- 00013233  0x0000281f setarg  0x00000000 
- 00013234  0x00002820 store  0x00000002 , 0x0000420a 
- 00013235  0x00002821 rtn 
- 00013236  0x00002824 fetch  0x00000002 , 0x0000420a 
- 00013237  0x00002825 set1  0x00000007 , 0x0000003f 
- 00013238  0x00002826 store  0x00000002 , 0x00004208 
- 00013239  0x00002827 setarg  0x00000000 
- 00013240  0x00002828 store  0x00000002 , 0x0000420a 
- 00013241  0x00002829 rtn 
- 00013242  0x00002832 fetch  0x00000001 , 0x00004682 
- 00013243  0x00002833 isolate1  0x00000005 , 0x0000003f 
- 00013244  0x00002834 rtn 
- 00013245  0x0000283d setarg  0x0000aa55 
- 00013246  0x0000283f store  0x00000002 , 0x00000aaa 
- 00013247  0x00002840 bpatch  0x000000c9 , 0x00004019 
- 00013248  0x00002841 arg  0x00000002 , 0x00000002 
- 00013249  0x00002842 arg  0x00000aaa , 0x00000011 
- 00013250  0x00002843 arg  0x000000c3 , 0x00000012 
- 00013251  0x00002844 branch  0x00006606 
- 00013252  0x00002848 bpatch  0x000000ca , 0x00004019 
- 00013253  0x00002849 arg  0x00000002 , 0x00000002 
- 00013254  0x0000284a arg  0x00000a9a , 0x00000011 
- 00013255  0x0000284b arg  0x000000c3 , 0x00000012 
- 00013256  0x0000284c call  0x000065df 
- 00013257  0x0000284d fetch  0x00000002 , 0x00000a9a 
- 00013258  0x0000284e arg  0x0000aa55 , 0x00000002 
- 00013259  0x0000284f isub  0x00000002 , 0x0000003e 
- 00013260  0x00002850 rtn 
- 00013261  0x00002854 fetch  0x00000001 , 0x0000455a 
- 00013262  0x00002855 store  0x00000001 , 0x00004205 
- 00013263  0x00002856 rtn 
- 00013264  0x00002859 arg  0x00000009 , 0x00000007 
- 00013265  0x0000285a branch  0x00002c32 
- 00013266  0x0000285d arg  0x00000009 , 0x00000007 
- 00013267  0x0000285e branch  0x00002c36 
- 00013268  0x00002861 jam  0x00000005 , 0x00004206 
- 00013269  0x00002862 branch  0x000033d0 
- 00013270  0x00002865 arg  0x00004206 , 0x00000013 
- 00013271  0x00002866 arg  0x000033d2 , 0x00000012 
- 00013272  0x00002867 branch  0x0000336d 
- 00013273  0x0000286a jam  0x00000001 , 0x00004363 
- 00013274  0x0000286b rtn 
- 00013275  0x0000286e jam  0x00000000 , 0x00004363 
- 00013276  0x0000286f rtn 
- 00013277  0x00002872 jam  0x0000000a , 0x00000a99 
- 00013278  0x00002873 branch  0x00007d8f 
- 00013279  0x00002876 jam  0x0000001d , 0x00000a99 
- 00013280  0x00002877 branch  0x00007d8f 
- 00013281  0x0000287a bpatch  0x000000cb , 0x00004019 
- 00013282  0x0000287b fetch  0x00000001 , 0x00004207 
- 00013283  0x0000287c store  0x00000001 , 0x0000016d 
- 00013284  0x0000287d jam  0x00000001 , 0x00000228 
- 00013285  0x0000287e jam  0x00000003 , 0x00000a99 
- 00013286  0x0000287f branch  0x00007d8f 
- 00013287  0x00002882 jam  0x0000001e , 0x00000a99 
- 00013288  0x00002883 branch  0x00007d8f 
- 00013289  0x00002886 jam  0x00000004 , 0x00000a99 
- 00013290  0x00002887 branch  0x00007d8f 
- 00013291  0x0000288a fetch  0x00000002 , 0x00004687 
- 00013292  0x0000288b store  0x00000002 , 0x0000467e 
- 00013293  0x0000288d call  0x00003404 
- 00013294  0x0000288f jam  0x00000001 , 0x00000a99 
- 00013295  0x00002890 branch  0x00007d8f 
- 00013296  0x00002893 setarg  0x00000000 
- 00013297  0x00002894 store  0x00000002 , 0x0000467e 
- 00013298  0x00002895 jam  0x00000002 , 0x00000a99 
- 00013299  0x00002896 branch  0x00007d8f 
- 00013300  0x00002899 jam  0x0000000f , 0x00000a99 
- 00013301  0x0000289a branch  0x00007d8f 
- 00013302  0x0000289d jam  0x00000010 , 0x00000a99 
- 00013303  0x0000289e branch  0x00007d8f 
- 00013304  0x000028a1 jam  0x0000000e , 0x00000a99 
- 00013305  0x000028a2 branch  0x00007d8f 
- 00013306  0x000028a5 jam  0x0000000d , 0x00000a99 
- 00013307  0x000028a6 branch  0x00007d8f 
- 00013308  0x000028a9 jam  0x00000017 , 0x00000a99 
- 00013309  0x000028aa branch  0x00007d8f 
- 00013310  0x000028ad jam  0x00000018 , 0x00000a99 
- 00013311  0x000028ae branch  0x00007d8f 
- 00013312  0x000028b1 jam  0x00000016 , 0x00000a99 
- 00013313  0x000028b2 branch  0x00007d8f 
- 00013314  0x000028b5 jam  0x00000011 , 0x00000a99 
- 00013315  0x000028b6 branch  0x00007d8f 
- 00013316  0x000028b9 jam  0x00000015 , 0x00000a99 
- 00013317  0x000028ba branch  0x00007d8f 
- 00013318  0x000028bd jam  0x00000014 , 0x00000a99 
- 00013319  0x000028be branch  0x00007d8f 
- 00013320  0x000028c2 jam  0x00000013 , 0x00000a99 
- 00013321  0x000028c3 branch  0x00007d8f 
- 00013322  0x000028c6 jam  0x00000019 , 0x00000a99 
- 00013323  0x000028c7 branch  0x00007d8f 
- 00013324  0x000028ca jam  0x00000006 , 0x00000a99 
- 00013325  0x000028cb branch  0x00007d8f 
- 00013326  0x000028ce jam  0x00000005 , 0x00000a99 
- 00013327  0x000028cf branch  0x00007d8f 
- 00013328  0x000028d2 jam  0x0000001f , 0x00000a99 
- 00013329  0x000028d3 branch  0x00007d8f 
- 00013330  0x000028d6 jam  0x00000020 , 0x00000a99 
- 00013331  0x000028d7 branch  0x00007d8f 
- 00013332  0x000028da jam  0x00000025 , 0x00000a99 
- 00013333  0x000028db branch  0x00007d8f 
- 00013334  0x000028de set1  0x0000000d , 0x00000000 
- 00013335  0x000028df rtn 
- 00013336  0x000028e2 set0  0x0000000d , 0x00000000 
- 00013337  0x000028e3 rtn 
- 00013338  0x000028f8 call  0x0000342d 
- 00013339  0x000028f9 beq  0x00000002 , 0x00003424 
- 00013340  0x000028fb setarg  0x00000001 
- 00013341  0x000028fc istore  0x00000001 , 0x00000013 
- 00013342  0x000028fd add  0x00000002 , 0x00000003 , 0x00000011 
- 00013343  0x000028fe add  0x00000002 , 0x00000006 , 0x00000012 
- 00013344  0x00002900 ifetcht  0x00000001 , 0x00000011 
- 00013345  0x00002901 increase  0x00000001 , 0x00000013 
- 00013346  0x00002902 istoret  0x00000001 , 0x00000013 
- 00013347  0x00002903 branch  0x00003385 
- 00013348  0x00002906 setarg  0x00000000 
- 00013349  0x00002907 istore  0x00000001 , 0x00000013 
- 00013350  0x00002908 fetch  0x00000002 , 0x00004682 
- 00013351  0x00002909 bbit0  0x00000009 , 0x00003429 
- 00013352  0x0000290a call  0x00003402 
- 00013353  0x0000290c fetcht  0x00000002 , 0x0000423f 
- 00013354  0x0000290d add  0x00000002 , 0x00000002 , 0x00000011 
- 00013355  0x0000290e add  0x00000002 , 0x00000004 , 0x00000012 
- 00013356  0x0000290f branch  0x00003420 
- 00013357  0x00002912 fetcht  0x00000002 , 0x0000423f 
- 00013358  0x00002913 add  0x00000002 , 0x00000000 , 0x00000013 
- 00013359  0x00002914 ifetch  0x00000001 , 0x00000013 
- 00013360  0x00002915 rtn 
- 00013361  0x00002918 call  0x0000342d 
- 00013362  0x00002919 bne  0x00000000 , 0x00003434 
- 00013363  0x0000291a branch  0x0000340a 
- 00013364  0x0000291c add  0x00000002 , 0x0000000a , 0x00000012 
- 00013365  0x0000291d branch  0x00003385 
- 00013366  0x00002920 rtn  0x0000002b 
- 00013367  0x00002921 jam  0x00000000 , 0x00008081 
- 00013368  0x00002922 setarg  0x00003463 
- 00013369  0x00002923 store  0x00000002 , 0x000041eb 
- 00013370  0x00002924 setarg  0x0000696c 
- 00013371  0x00002925 store  0x00000002 , 0x000041ed 
- 00013372  0x00002926 setarg  0x000034f5 
- 00013373  0x00002927 store  0x00000002 , 0x000041f3 
- 00013374  0x00002928 setarg  0x000034f4 
- 00013375  0x00002929 store  0x00000002 , 0x000041ef 
- 00013376  0x0000292a setarg  0x0000347e 
- 00013377  0x0000292b store  0x00000002 , 0x000041f5 
- 00013378  0x0000292c setarg  0x000034b2 
- 00013379  0x0000292d store  0x00000002 , 0x000041fd 
- 00013380  0x0000292e setarg  0x00003465 
- 00013381  0x0000292f store  0x00000002 , 0x000041fb 
- 00013382  0x00002930 setarg  0x00003470 
- 00013383  0x00002931 store  0x00000002 , 0x000041e9 
- 00013384  0x00002932 setarg  0x00003501 
- 00013385  0x00002933 store  0x00000002 , 0x000041f9 
- 00013386  0x00002934 bpatch  0x000000cc , 0x00004019 
- 00013387  0x00002935 call  0x0000359b 
- 00013388  0x00002936 call  0x00006948 
- 00013389  0x00002937 call  0x000035ad 
- 00013390  0x00002938 call  0x00007d08 
- 00013391  0x00002939 call  0x00007cd3 
- 00013392  0x0000293a setarg  0x0000350b 
- 00013393  0x0000293b store  0x00000002 , 0x00004766 
- 00013394  0x0000293c setarg  0x000034fc 
- 00013395  0x0000293d store  0x00000002 , 0x0000475d 
- 00013396  0x0000293e setarg  0x000034f8 
- 00013397  0x0000293f store  0x00000002 , 0x0000475f 
- 00013398  0x00002940 setarg  0x0000346c 
- 00013399  0x00002941 store  0x00000002 , 0x00004761 
- 00013400  0x00002942 setarg  0x000035a2 
- 00013401  0x00002943 store  0x00000002 , 0x000046a9 
- 00013402  0x00002944 setarg  0x000035a4 
- 00013403  0x00002945 store  0x00000002 , 0x000046ab 
- 00013404  0x00002946 setarg  0x000035a9 
- 00013405  0x00002947 store  0x00000002 , 0x000046b4 
- 00013406  0x00002948 setarg  0x000035a6 
- 00013407  0x00002949 store  0x00000002 , 0x000046b6 
- 00013408  0x0000294a fetch  0x00000002 , 0x00004682 
- 00013409  0x0000294b rtnbit1  0x0000000c 
- 00013410  0x0000294c branch  0x0000340a 
- 00013411  0x0000294f call  0x00003586 
- 00013412  0x00002950 branch  0x0000340a 
- 00013413  0x00002953 call  0x00005892 
- 00013414  0x00002954 nrtn  0x00000034 
- 00013415  0x00002955 arg  0x00000b06 , 0x00000011 
- 00013416  0x00002956 call  0x00007e54 
- 00013417  0x00002957 nrtn  0x00000028 
- 00013418  0x00002958 arg  0x00000b06 , 0x00000006 
- 00013419  0x00002959 branch  0x00004746 
- 00013420  0x0000295c fetch  0x00000002 , 0x00004797 
- 00013421  0x0000295d store  0x00000002 , 0x00004791 
- 00013422  0x0000295e jam  0x00000001 , 0x00004753 
- 00013423  0x0000295f branch  0x0000358f 
- 00013424  0x00002962 fetch  0x00000001 , 0x0000479d 
- 00013425  0x00002963 beq  0x00000001 , 0x00003479 
- 00013426  0x00002964 fetch  0x00000002 , 0x00004682 
- 00013427  0x00002965 bbit0  0x00000009 , 0x00003479 
- 00013428  0x00002966 fetch  0x00000001 , 0x0000479e 
- 00013429  0x00002967 beq  0x00000001 , 0x000033d0 
- 00013430  0x00002968 fetch  0x00000001 , 0x00004700 
- 00013431  0x00002969 nbranch  0x000033d0 , 0x00000034 
- 00013432  0x0000296a branch  0x000033d2 
- 00013433  0x0000296d fetch  0x00000001 , 0x0000479b 
- 00013434  0x0000296e fetcht  0x00000001 , 0x0000479c 
- 00013435  0x0000296f ior  0x00000002 , 0x0000003f 
- 00013436  0x00002970 beq  0x00000001 , 0x000033d0 
- 00013437  0x00002971 branch  0x000033d2 
- 00013438  0x00002974 copy  0x00000013 , 0x0000003f 
- 00013439  0x00002975 beq  0x0000002d , 0x00003431 
- 00013440  0x00002976 beq  0x00000010 , 0x0000341a 
- 00013441  0x00002977 beq  0x00000014 , 0x000034df 
- 00013442  0x00002978 beq  0x00000015 , 0x000034e8 
- 00013443  0x00002979 beq  0x00000040 , 0x00003485 
- 00013444  0x0000297a rtn 
- 00013445  0x0000297c fetch  0x00000002 , 0x00004509 
- 00013446  0x0000297d beq  0x00000001 , 0x0000348c 
- 00013447  0x0000297f fetch  0x00000002 , 0x000043d8 
- 00013448  0x00002980 branch  0x000034a2 , 0x00000034 
- 00013449  0x00002982 jam  0x00000002 , 0x0000478a 
- 00013450  0x00002983 jam  0x0000003c , 0x0000478f 
- 00013451  0x00002984 rtn 
- 00013452  0x00002987 fetch  0x00000002 , 0x0000449a 
- 00013453  0x00002988 branch  0x000034a0 , 0x00000034 
- 00013454  0x0000298a jam  0x00000001 , 0x0000478a 
- 00013455  0x0000298b fetcht  0x00000002 , 0x000047b4 
- 00013456  0x0000298c fetch  0x00000002 , 0x00004496 
- 00013457  0x0000298d iadd  0x00000002 , 0x0000003f 
- 00013458  0x0000298e store  0x00000002 , 0x00004496 
- 00013459  0x0000298f copy  0x0000003f , 0x00000011 
- 00013460  0x00002990 fetch  0x00000002 , 0x00004498 
- 00013461  0x00002991 iadd  0x00000002 , 0x0000003f 
- 00013462  0x00002992 store  0x00000002 , 0x00004498 
- 00013463  0x00002993 iadd  0x00000011 , 0x0000003f 
- 00013464  0x00002994 rshift  0x0000003f , 0x00000002 
- 00013465  0x00002995 fetch  0x00000002 , 0x000047c0 
- 00013466  0x00002996 idiv  0x00000002 
- 00013467  0x00002997 call  0x00007f86 
- 00013468  0x00002998 quotient  0x0000003f 
- 00013469  0x00002999 store  0x00000002 , 0x0000449a 
- 00013470  0x0000299a jam  0x00000001 , 0x00004790 
- 00013471  0x0000299b rtn 
- 00013472  0x0000299d jam  0x00000003 , 0x0000478a 
- 00013473  0x0000299e rtn 
- 00013474  0x000029a1 jam  0x00000000 , 0x00004172 
- 00013475  0x000029a2 jam  0x00000000 , 0x00004790 
- 00013476  0x000029a3 fetch  0x00000002 , 0x000043d6 
- 00013477  0x000029a4 fetcht  0x00000002 , 0x000047be 
- 00013478  0x000029a5 isub  0x00000002 , 0x0000003e 
- 00013479  0x000029a6 setflag  0x00000002 , 0x00000000 , 0x00000011 
- 00013480  0x000029a7 fetch  0x00000002 , 0x000047c0 
- 00013481  0x000029a8 fetcht  0x00000002 , 0x000043d6 
- 00013482  0x000029a9 isub  0x00000002 , 0x0000003f 
- 00013483  0x000029aa setflag  0x00000002 , 0x00000001 , 0x00000011 
- 00013484  0x000029ab compare  0x00000003 , 0x00000011 , 0x00000003 
- 00013485  0x000029ac rtn  0x00000001 
- 00013486  0x000029ad fetch  0x00000008 , 0x000047be 
- 00013487  0x000029ae store  0x00000008 , 0x00004496 
- 00013488  0x000029af jam  0x00000001 , 0x00004790 
- 00013489  0x000029b0 rtn 
- 00013490  0x000029b5 call  0x0000337b 
- 00013491  0x000029b6 call  0x000034b9 
- 00013492  0x000029b7 call  0x000034be 
- 00013493  0x000029b8 call  0x000034d5 
- 00013494  0x000029b9 call  0x000034ca 
- 00013495  0x000029ba call  0x000034c4 
- 00013496  0x000029bb branch  0x000034d9 
- 00013497  0x000029bf arg  0x00004799 , 0x00000013 
- 00013498  0x000029c0 arg  0x000034bc , 0x00000012 
- 00013499  0x000029c1 branch  0x0000336d 
- 00013500  0x000029c3 jam  0x00000000 , 0x0000479a 
- 00013501  0x000029c4 rtn 
- 00013502  0x000029c6 arg  0x00004793 , 0x00000013 
- 00013503  0x000029c7 arg  0x000034c1 , 0x00000012 
- 00013504  0x000029c8 branch  0x00003374 
- 00013505  0x000029ca arg  0x000046bf , 0x00000013 
- 00013506  0x000029cb arg  0x0000469e , 0x00000012 
- 00013507  0x000029cc branch  0x00003591 
- 00013508  0x000029d0 arg  0x0000478f , 0x00000013 
- 00013509  0x000029d1 arg  0x000034c7 , 0x00000012 
- 00013510  0x000029d2 branch  0x0000336d 
- 00013511  0x000029d5 fetch  0x00000002 , 0x0000449a 
- 00013512  0x000029d6 store  0x00000001 , 0x00004172 
- 00013513  0x000029d7 rtn 
- 00013514  0x000029d9 arg  0x00004790 , 0x00000013 
- 00013515  0x000029da arg  0x000034cd , 0x00000012 
- 00013516  0x000029db branch  0x0000336d 
- 00013517  0x000029dd fetch  0x00000001 , 0x0000043f 
- 00013518  0x000029de compare  0x00000000 , 0x0000003f , 0x00000060 
- 00013519  0x000029df nbranch  0x000034d3 , 0x00000001 
- 00013520  0x000029e0 jam  0x00000001 , 0x0000478a 
- 00013521  0x000029e1 call  0x00003416 
- 00013522  0x000029e2 branch  0x00005abf 
- 00013523  0x000029e4 jam  0x00000001 , 0x00004790 
- 00013524  0x000029e5 rtn 
- 00013525  0x000029e8 arg  0x00004791 , 0x00000013 
- 00013526  0x000029e9 arg  0x000034d8 , 0x00000012 
- 00013527  0x000029ea branch  0x00003374 
- 00013528  0x000029ee branch  0x0000341a 
- 00013529  0x000029f3 arg  0x0000478d , 0x00000013 
- 00013530  0x000029f4 arg  0x000034dc , 0x00000012 
- 00013531  0x000029f5 branch  0x00003374 
- 00013532  0x000029f7 fetch  0x00000002 , 0x000047a7 
- 00013533  0x000029f8 store  0x00000002 , 0x0000478d 
- 00013534  0x000029f9 branch  0x000035af 
- 00013535  0x000029fd fetch  0x00000002 , 0x000047a7 
- 00013536  0x000029fe store  0x00000002 , 0x0000478d 
- 00013537  0x000029ff setarg  0x00000000 
- 00013538  0x00002a00 store  0x00000002 , 0x00004793 
- 00013539  0x00002a01 store  0x00000002 , 0x00004791 
- 00013540  0x00002a02 call  0x0000355c 
- 00013541  0x00002a03 call  0x00003586 
- 00013542  0x00002a04 jam  0x00000000 , 0x00004172 
- 00013543  0x00002a05 branch  0x000033f8 
- 00013544  0x00002a0b setarg  0x00000000 
- 00013545  0x00002a0c store  0x00000004 , 0x0000478d 
- 00013546  0x00002a0d store  0x00000003 , 0x0000478a 
- 00013547  0x00002a0e store  0x00000002 , 0x00004509 
- 00013548  0x00002a10 jam  0x00000001 , 0x000047a0 
- 00013549  0x00002a11 fetch  0x00000002 , 0x00004797 
- 00013550  0x00002a12 store  0x00000002 , 0x00004791 
- 00013551  0x00002a13 call  0x00007e38 
- 00013552  0x00002a14 fetch  0x00000001 , 0x00004759 
- 00013553  0x00002a15 rtneq  0x00000000 
- 00013554  0x00002a16 call  0x0000358f 
- 00013555  0x00002a17 branch  0x0000356e 
- 00013556  0x00002a1c branch  0x00003508 
- 00013557  0x00002a20 fetch  0x00000001 , 0x00004759 
- 00013558  0x00002a21 rtnne  0x00000002 
- 00013559  0x00002a22 branch  0x00003508 
- 00013560  0x00002a28 arg  0x000046cd , 0x00000013 
- 00013561  0x00002a29 call  0x00003582 
- 00013562  0x00002a2a arg  0x000046c6 , 0x00000013 
- 00013563  0x00002a2c branch  0x00003584 
- 00013564  0x00002a2f jam  0x00000000 , 0x0000436e 
- 00013565  0x00002a30 arg  0x000046db , 0x00000013 
- 00013566  0x00002a31 call  0x00003582 
- 00013567  0x00002a32 arg  0x000046d4 , 0x00000013 
- 00013568  0x00002a33 branch  0x000034fb 
- 00013569  0x00002a36 fetch  0x00000001 , 0x00000477 
- 00013570  0x00002a37 beq  0x00000012 , 0x00003504 
- 00013571  0x00002a38 rtn 
- 00013572  0x00002a3a fetch  0x00000002 , 0x00000478 
- 00013573  0x00002a3c beq  0x0000000d , 0x00003536 
- 00013574  0x00002a3d beq  0x0000000b , 0x00003571 
- 00013575  0x00002a3e rtn 
- 00013576  0x00002a44 fetch  0x00000001 , 0x00004753 
- 00013577  0x00002a45 rtn  0x00000034 
- 00013578  0x00002a46 branch  0x00006978 
- 00013579  0x00002a4b copy  0x00000011 , 0x0000003f 
- 00013580  0x00002a4c branch  0x00003510 , 0x00000034 
- 00013581  0x00002a4e copy  0x00000007 , 0x0000003f 
- 00013582  0x00002a4f beq  0x00000000 , 0x00003513 
- 00013583  0x00002a50 rtn 
- 00013584  0x00002a52 copy  0x00000007 , 0x0000003f 
- 00013585  0x00002a53 beq  0x00000000 , 0x0000351b 
- 00013586  0x00002a54 rtn 
- 00013587  0x00002a57 jam  0x00000001 , 0x0000479d 
- 00013588  0x00002a58 arg  0x000046f7 , 0x00000013 
- 00013589  0x00002a59 call  0x00003582 
- 00013590  0x00002a5a arg  0x000046f0 , 0x00000013 
- 00013591  0x00002a5b call  0x00003584 
- 00013592  0x00002a5c fetch  0x00000002 , 0x00004682 
- 00013593  0x00002a5d bbit0  0x00000009 , 0x00003532 
- 00013594  0x00002a5e branch  0x00003521 
- 00013595  0x00002a61 jam  0x00000000 , 0x0000479d 
- 00013596  0x00002a62 branch  0x0000351d 
- 00013597  0x00002a67 fetch  0x00000001 , 0x0000479a 
- 00013598  0x00002a68 rtnne  0x00000001 
- 00013599  0x00002a69 jam  0x00000005 , 0x00004799 
- 00013600  0x00002a6a rtn 
- 00013601  0x00002a6d fetch  0x00000001 , 0x0000479a 
- 00013602  0x00002a6e pincrease  0x00000001 
- 00013603  0x00002a6f store  0x00000001 , 0x0000479a 
- 00013604  0x00002a70 beq  0x00000001 , 0x00003527 
- 00013605  0x00002a71 beq  0x00000002 , 0x0000352b 
- 00013606  0x00002a72 rtn 
- 00013607  0x00002a74 call  0x0000355c 
- 00013608  0x00002a75 jam  0x00000001 , 0x00004771 
- 00013609  0x00002a76 arg  0x0000476c , 0x00000013 
- 00013610  0x00002a77 branch  0x00003544 
- 00013611  0x00002a79 jam  0x00000000 , 0x0000479a 
- 00013612  0x00002a7a jam  0x00000002 , 0x00004771 
- 00013613  0x00002a7b arg  0x0000476c , 0x00000013 
- 00013614  0x00002a7c call  0x00003544 
- 00013615  0x00002a7d fetch  0x00000001 , 0x0000479e 
- 00013616  0x00002a7e beq  0x00000001 , 0x00003551 
- 00013617  0x00002a7f rtn 
- 00013618  0x00002a82 fetch  0x00000002 , 0x00004797 
- 00013619  0x00002a83 store  0x00000002 , 0x00004791 
- 00013620  0x00002a84 call  0x0000355c 
- 00013621  0x00002a85 branch  0x0000358f 
- 00013622  0x00002a89 bpatch  0x000000cd , 0x00004019 
- 00013623  0x00002a8a call  0x000036fc 
- 00013624  0x00002a8b ifetch  0x00000001 , 0x00000011 
- 00013625  0x00002a8c beq  0x00000003 , 0x0000353c 
- 00013626  0x00002a8d beq  0x00000007 , 0x00003540 
- 00013627  0x00002a8e rtn 
- 00013628  0x00002a91 fetch  0x00000001 , 0x0000479e 
- 00013629  0x00002a92 beq  0x00000000 , 0x00003551 
- 00013630  0x00002a93 beq  0x00000001 , 0x0000355c 
- 00013631  0x00002a94 rtn 
- 00013632  0x00002a97 ifetch  0x00000001 , 0x00000012 
- 00013633  0x00002a98 beq  0x00000001 , 0x00003564 
- 00013634  0x00002a99 beq  0x00000000 , 0x00003569 
- 00013635  0x00002a9a rtn 
- 00013636  0x00002aa2 bpatch  0x000000ce , 0x00004019 
- 00013637  0x00002aa3 fetch  0x00000001 , 0x0000478b 
- 00013638  0x00002aa4 isolate1  0x00000000 , 0x0000003f 
- 00013639  0x00002aa5 nrtn  0x00000001 
- 00013640  0x00002aa6 add  0x00000013 , 0x00000006 , 0x00000006 
- 00013641  0x00002aa7 ifetch  0x00000002 , 0x00000006 
- 00013642  0x00002aa8 byteswap  0x0000003f , 0x0000003f 
- 00013643  0x00002aa9 add  0x0000003f , 0x00000005 , 0x00000039 
- 00013644  0x00002aaa add  0x00000013 , 0x00000003 , 0x00000006 
- 00013645  0x00002aab call  0x000036f0 
- 00013646  0x00002aac istore  0x00000001 , 0x00000006 
- 00013647  0x00002aad copy  0x00000013 , 0x00000011 
- 00013648  0x00002aae branch  0x00007e3d 
- 00013649  0x00002ab5 fetch  0x00000001 , 0x00004759 
- 00013650  0x00002ab6 rtn  0x00000034 
- 00013651  0x00002ab7 jam  0x00000001 , 0x0000479e 
- 00013652  0x00002ab8 arg  0x000046e9 , 0x00000013 
- 00013653  0x00002ab9 call  0x00003582 
- 00013654  0x00002aba arg  0x000046e2 , 0x00000013 
- 00013655  0x00002abb call  0x00003584 
- 00013656  0x00002abc jam  0x00000004 , 0x00004780 
- 00013657  0x00002abd jam  0x00000001 , 0x00004783 
- 00013658  0x00002abe arg  0x0000477b , 0x00000013 
- 00013659  0x00002abf branch  0x00003544 
- 00013660  0x00002ac1 fetch  0x00000001 , 0x0000479e 
- 00013661  0x00002ac2 rtn  0x00000034 
- 00013662  0x00002ac3 jam  0x00000000 , 0x0000479e 
- 00013663  0x00002ac4 call  0x00003586 
- 00013664  0x00002ac5 jam  0x00000004 , 0x00004780 
- 00013665  0x00002ac6 jam  0x00000000 , 0x00004783 
- 00013666  0x00002ac7 arg  0x0000477b , 0x00000013 
- 00013667  0x00002ac8 branch  0x00003544 
- 00013668  0x00002acb jam  0x00000001 , 0x0000479f 
- 00013669  0x00002acc jam  0x00000007 , 0x00004780 
- 00013670  0x00002acd jam  0x00000001 , 0x00004783 
- 00013671  0x00002ace arg  0x0000477b , 0x00000013 
- 00013672  0x00002acf branch  0x00003544 
- 00013673  0x00002ad1 jam  0x00000000 , 0x0000479f 
- 00013674  0x00002ad2 jam  0x00000007 , 0x00004780 
- 00013675  0x00002ad3 jam  0x00000000 , 0x00004783 
- 00013676  0x00002ad4 arg  0x0000477b , 0x00000013 
- 00013677  0x00002ad5 branch  0x00003544 
- 00013678  0x00002ad7 fetch  0x00000001 , 0x0000479f 
- 00013679  0x00002ad8 rtn  0x00000034 
- 00013680  0x00002ad9 branch  0x00003551 
- 00013681  0x00002adc ifetch  0x00000002 , 0x00000011 
- 00013682  0x00002add store  0x00000002 , 0x0000478b 
- 00013683  0x00002ade isolate1  0x00000000 , 0x0000003f 
- 00013684  0x00002adf nrtn  0x00000001 
- 00013685  0x00002ae0 fetch  0x00000001 , 0x000047a0 
- 00013686  0x00002ae1 rtn  0x00000034 
- 00013687  0x00002ae2 jam  0x00000000 , 0x000047a0 
- 00013688  0x00002ae3 fetch  0x00000008 , 0x000047b6 
- 00013689  0x00002ae4 store  0x00000008 , 0x00004496 
- 00013690  0x00002ae5 jam  0x00000002 , 0x00004790 
- 00013691  0x00002ae6 call  0x000035af 
- 00013692  0x00002ae7 call  0x000035b9 
- 00013693  0x00002ae8 jam  0x00000007 , 0x00004780 
- 00013694  0x00002ae9 fetch  0x00000001 , 0x0000479f 
- 00013695  0x00002aea store  0x00000001 , 0x00004783 
- 00013696  0x00002aeb arg  0x0000477b , 0x00000013 
- 00013697  0x00002aec branch  0x00003544 
- 00013698  0x00002af1 arg  0x00000001 , 0x00000011 
- 00013699  0x00002af2 branch  0x00003585 
- 00013700  0x00002af4 arg  0x00000000 , 0x00000011 
- 00013701  0x00002af6 branch  0x0000358c 
- 00013702  0x00002af9 arg  0x00000000 , 0x00000011 
- 00013703  0x00002afa call  0x00007d19 
- 00013704  0x00002afb arg  0x00000001 , 0x00000011 
- 00013705  0x00002afc call  0x00007d19 
- 00013706  0x00002afd fetch  0x00000001 , 0x000047a1 
- 00013707  0x00002afe branch  0x000069d7 
- 00013708  0x00002b01 call  0x00007d04 
- 00013709  0x00002b02 arg  0x00000007 , 0x00000039 
- 00013710  0x00002b03 branch  0x00007d26 
- 00013711  0x00002b08 arg  0x000046b8 , 0x00000013 
- 00013712  0x00002b09 arg  0x0000469a , 0x00000012 
- 00013713  0x00002b0b call  0x00003596 
- 00013714  0x00002b0c call  0x00003584 
- 00013715  0x00002b0d fetch  0x00000002 , 0x00004795 
- 00013716  0x00002b0e store  0x00000002 , 0x00004793 
- 00013717  0x00002b0f branch  0x000033fa 
- 00013718  0x00002b12 ifetch  0x00000002 , 0x00000012 
- 00013719  0x00002b13 store  0x00000002 , 0x00004154 
- 00013720  0x00002b14 ifetch  0x00000002 , 0x00000006 
- 00013721  0x00002b15 store  0x00000002 , 0x00004482 
- 00013722  0x00002b16 rtn 
- 00013723  0x00002b19 arg  0x00000000 , 0x00000011 
- 00013724  0x00002b1a call  0x000069a6 
- 00013725  0x00002b1b fetch  0x00000006 , 0x000047a1 
- 00013726  0x00002b1c store  0x00000006 , 0x00000a9a 
- 00013727  0x00002b1d call  0x000069ae 
- 00013728  0x00002b1e fetch  0x00000001 , 0x000047a1 
- 00013729  0x00002b1f branch  0x000069d7 
- 00013730  0x00002b22 jam  0x00000001 , 0x0000479b 
- 00013731  0x00002b23 rtn 
- 00013732  0x00002b25 jam  0x00000000 , 0x0000479b 
- 00013733  0x00002b26 rtn 
- 00013734  0x00002b2b jam  0x00000000 , 0x0000479c 
- 00013735  0x00002b2c fetch  0x00000001 , 0x000047a1 
- 00013736  0x00002b2d branch  0x000069d7 
- 00013737  0x00002b30 jam  0x00000001 , 0x0000479c 
- 00013738  0x00002b31 fetch  0x00000006 , 0x000047a1 
- 00013739  0x00002b32 store  0x00000006 , 0x00000a9a 
- 00013740  0x00002b33 branch  0x000069ae 
- 00013741  0x00002b38 jam  0x00000000 , 0x0000422d 
- 00013742  0x00002b39 branch  0x000068a8 
- 00013743  0x00002b3c call  0x000068eb 
- 00013744  0x00002b3d call  0x00006908 
- 00013745  0x00002b3e store  0x00000002 , 0x000047b0 
- 00013746  0x00002b3f arg  0x000047aa , 0x00000011 
- 00013747  0x00002b40 call  0x00006930 
- 00013748  0x00002b41 store  0x00000001 , 0x000047a9 
- 00013749  0x00002b42 beq  0x00000000 , 0x000035be 
- 00013750  0x00002b43 sub  0x0000003f , 0x00000064 , 0x0000003e 
- 00013751  0x00002b44 nbranch  0x000035bc , 0x00000002 
- 00013752  0x00002b45 store  0x00000001 , 0x00004783 
- 00013753  0x00002b47 jam  0x00000005 , 0x00004780 
- 00013754  0x00002b48 arg  0x0000477b , 0x00000013 
- 00013755  0x00002b49 branch  0x00003544 
- 00013756  0x00002b4b jam  0x00000064 , 0x00004783 
- 00013757  0x00002b4c branch  0x000035b9 
- 00013758  0x00002b4f branch  0x0000341a 
- 00013759  0x00002b54 rtn  0x0000002b 
- 00013760  0x00002b55 hfetch  0x00000001 , 0x00008081 
- 00013761  0x00002b56 and_into  0x000000f0 , 0x0000003f 
- 00013762  0x00002b57 hstore  0x00000001 , 0x00008081 
- 00013763  0x00002b58 setarg  0x00003631 
- 00013764  0x00002b59 store  0x00000002 , 0x000041eb 
- 00013765  0x00002b5b setarg  0x00003633 
- 00013766  0x00002b5c store  0x00000002 , 0x000041ed 
- 00013767  0x00002b5e setarg  0x0000340a 
- 00013768  0x00002b5f store  0x00000002 , 0x000041f7 
- 00013769  0x00002b61 setarg  0x00003635 
- 00013770  0x00002b62 store  0x00000002 , 0x000041f3 
- 00013771  0x00002b64 setarg  0x0000364b 
- 00013772  0x00002b65 store  0x00000002 , 0x000041f5 
- 00013773  0x00002b67 setarg  0x000033d0 
- 00013774  0x00002b68 store  0x00000002 , 0x000041e9 
- 00013775  0x00002b6a setarg  0x000036f6 
- 00013776  0x00002b6b store  0x00000002 , 0x000041f9 
- 00013777  0x00002b6d setarg  0x0000367a 
- 00013778  0x00002b6e store  0x00000002 , 0x000041fd 
- 00013779  0x00002b70 call  0x00002c7a 
- 00013780  0x00002b71 setarg  0x00003722 
- 00013781  0x00002b72 add  0x00000013 , 0x000000de , 0x00000005 
- 00013782  0x00002b73 istore  0x00000002 , 0x00000005 
- 00013783  0x00002b75 setarg  0x000035ed 
- 00013784  0x00002b76 store  0x00000002 , 0x0000475b 
- 00013785  0x00002b78 setarg  0x000035ef 
- 00013786  0x00002b79 store  0x00000002 , 0x0000475f 
- 00013787  0x00002b7b bpatch  0x000000cf , 0x00004019 
- 00013788  0x00002b7c call  0x00003628 
- 00013789  0x00002b7d call  0x00007e38 
- 00013790  0x00002b7e jam  0x00000002 , 0x00004172 
- 00013791  0x00002b7f jam  0x00000000 , 0x000049f6 
- 00013792  0x00002b80 fetch  0x00000001 , 0x000047cb 
- 00013793  0x00002b81 store  0x00000001 , 0x0000469a 
- 00013794  0x00002b82 beq  0x00000000 , 0x000035ee 
- 00013795  0x00002b83 fetch  0x00000001 , 0x000047cc 
- 00013796  0x00002b84 store  0x00000001 , 0x00004686 
- 00013797  0x00002b85 jam  0x00000000 , 0x0000436e 
- 00013798  0x00002b87 call  0x0000360f 
- 00013799  0x00002b88 call  0x00007cd3 
- 00013800  0x00002b89 call  0x00007cdd 
- 00013801  0x00002b8a jam  0x00000001 , 0x000047f3 
- 00013802  0x00002b8b fetch  0x00000002 , 0x00004682 
- 00013803  0x00002b8c rtnbit1  0x0000000c 
- 00013804  0x00002b8d branch  0x0000340a 
- 00013805  0x00002b90 branch  0x0000360f 
- 00013806  0x00002b93 jam  0x00000002 , 0x000047f3 
- 00013807  0x00002b95 jam  0x00000001 , 0x0000436e 
- 00013808  0x00002b96 call  0x0000360f 
- 00013809  0x00002b97 arg  0x00000000 , 0x00000011 
- 00013810  0x00002b98 call  0x00007d1e 
- 00013811  0x00002b9a setarg  0x00000020 
- 00013812  0x00002b9b call  0x000046f0 
- 00013813  0x00002b9d arg  0x000043b7 , 0x00000005 
- 00013814  0x00002b9e fetch  0x00000001 , 0x000044a0 
- 00013815  0x00002ba0 and  0x0000003f , 0x000000f0 , 0x00000002 
- 00013816  0x00002ba1 rshift4  0x00000002 , 0x00000002 
- 00013817  0x00002ba2 call  0x00003609 
- 00013818  0x00002ba3 istoret  0x00000001 , 0x00000005 
- 00013819  0x00002ba4 and  0x0000003f , 0x0000000f , 0x00000002 
- 00013820  0x00002ba5 call  0x00003609 
- 00013821  0x00002ba6 istoret  0x00000001 , 0x00000005 
- 00013822  0x00002ba7 call  0x000057a6 
- 00013823  0x00002ba8 fetcht  0x00000001 , 0x000043af 
- 00013824  0x00002ba9 copy  0x00000002 , 0x00000039 
- 00013825  0x00002baa arg  0x00004372 , 0x00000005 
- 00013826  0x00002bab arg  0x000043b0 , 0x00000006 
- 00013827  0x00002bac call  0x00007f01 
- 00013828  0x00002bae fetcht  0x00000001 , 0x000043af 
- 00013829  0x00002baf copy  0x00000002 , 0x00000039 
- 00013830  0x00002bb0 arg  0x00004392 , 0x00000005 
- 00013831  0x00002bb1 arg  0x000043b0 , 0x00000006 
- 00013832  0x00002bb2 branch  0x00007f01 
- 00013833  0x00002bb4 sub  0x00000002 , 0x00000009 , 0x0000003e 
- 00013834  0x00002bb5 branch  0x0000360d , 0x00000002 
- 00013835  0x00002bb6 add  0x00000002 , 0x00000037 , 0x00000002 
- 00013836  0x00002bb7 rtn 
- 00013837  0x00002bb9 add  0x00000002 , 0x00000030 , 0x00000002 
- 00013838  0x00002bba rtn 
- 00013839  0x00002bbd fetch  0x00000001 , 0x000047c0 
- 00013840  0x00002bbe bne  0x000000ff , 0x00003621 
- 00013841  0x00002bc0 fetch  0x00000001 , 0x000047be 
- 00013842  0x00002bc1 bne  0x000000ff , 0x00003624 
- 00013843  0x00002bc3 fetch  0x00000001 , 0x000047c9 
- 00013844  0x00002bc4 bne  0x000000ff , 0x00003626 
- 00013845  0x00002bc6 fetch  0x00000001 , 0x0000472c 
- 00013846  0x00002bc7 copy  0x0000003f , 0x00000039 
- 00013847  0x00002bc8 setarg  0x0000472d 
- 00013848  0x00002bc9 copy  0x0000003f , 0x00000011 
- 00013849  0x00002bcb copy  0x00000011 , 0x00000006 
- 00013850  0x00002bcc ifetch  0x00000001 , 0x00000006 
- 00013851  0x00002bcd copy  0x00000006 , 0x00000011 
- 00013852  0x00002bce beq  0x000000ff , 0x0000361f 
- 00013853  0x00002bcf copy  0x0000003f , 0x00000002 
- 00013854  0x00002bd0 call  0x0000680e 
- 00013855  0x00002bd2 loop  0x00003619 
- 00013856  0x00002bd4 rtn 
- 00013857  0x00002bd6 fetch  0x00000008 , 0x000047c0 
- 00013858  0x00002bd7 store  0x00000008 , 0x0000472f 
- 00013859  0x00002bd8 branch  0x00003611 
- 00013860  0x00002bda store  0x00000001 , 0x0000472d 
- 00013861  0x00002bdb branch  0x00003613 
- 00013862  0x00002bdd store  0x00000001 , 0x0000472e 
- 00013863  0x00002bde branch  0x00003615 
- 00013864  0x00002be2 arg  0x00000000 , 0x00000011 
- 00013865  0x00002be3 call  0x000069a6 
- 00013866  0x00002be4 call  0x000037e4 
- 00013867  0x00002be5 call  0x00002c7d 
- 00013868  0x00002be6 branch  0x0000362d 
- 00013869  0x00002be9 jam  0x00000064 , 0x000047cf 
- 00013870  0x00002bea fetch  0x00000001 , 0x000047c9 
- 00013871  0x00002beb store  0x00000001 , 0x00004744 
- 00013872  0x00002bec branch  0x000068a8 
- 00013873  0x00002bef call  0x00006835 
- 00013874  0x00002bf0 branch  0x0000696c 
- 00013875  0x00002bf3 branch  0x0000696c 
- 00013876  0x00002bf8 branch  0x00006978 
- 00013877  0x00002bfb call  0x00003642 
- 00013878  0x00002bfc call  0x000037ee 
- 00013879  0x00002bfd call  0x00003639 
- 00013880  0x00002bfe branch  0x00003634 
- 00013881  0x00002c01 fetch  0x00000002 , 0x00004682 
- 00013882  0x00002c02 rtnbit1  0x00000009 
- 00013883  0x00002c03 fetch  0x00000001 , 0x000049f6 
- 00013884  0x00002c04 beq  0x00000001 , 0x0000363e 
- 00013885  0x00002c05 rtn 
- 00013886  0x00002c07 fetch  0x00000001 , 0x000047ea 
- 00013887  0x00002c08 rtneq  0x00000001 
- 00013888  0x00002c09 jam  0x00000001 , 0x000047ea 
- 00013889  0x00002c0a branch  0x00003654 
- 00013890  0x00002c0d fetch  0x00000002 , 0x00004682 
- 00013891  0x00002c0e rtnbit0  0x00000009 
- 00013892  0x00002c0f call  0x00005892 
- 00013893  0x00002c10 nrtn  0x00000034 
- 00013894  0x00002c11 arg  0x00004718 , 0x00000011 
- 00013895  0x00002c12 call  0x00007e54 
- 00013896  0x00002c13 nrtn  0x00000028 
- 00013897  0x00002c14 arg  0x00004718 , 0x00000006 
- 00013898  0x00002c15 branch  0x00004746 
- 00013899  0x00002c18 copy  0x00000013 , 0x0000003f 
- 00013900  0x00002c19 beq  0x0000002d , 0x00003431 
- 00013901  0x00002c1a beq  0x00000010 , 0x0000341a 
- 00013902  0x00002c1b beq  0x00000014 , 0x00003651 
- 00013903  0x00002c1c beq  0x00000015 , 0x00003660 
- 00013904  0x00002c1d rtn 
- 00013905  0x00002c20 setarg  0x00000000 
- 00013906  0x00002c21 call  0x00003220 
- 00013907  0x00002c22 branch  0x00003656 
- 00013908  0x00002c24 fetch  0x00000002 , 0x000047eb 
- 00013909  0x00002c25 store  0x00000002 , 0x000047ed 
- 00013910  0x00002c27 jam  0x00000014 , 0x000047ce 
- 00013911  0x00002c28 jam  0x00000000 , 0x00004091 
- 00013912  0x00002c29 call  0x000033f8 
- 00013913  0x00002c2a call  0x00003416 
- 00013914  0x00002c2b fetch  0x00000001 , 0x000047bd 
- 00013915  0x00002c2c beq  0x00000001 , 0x0000365e 
- 00013916  0x00002c2e arg  0x00000000 , 0x00000011 
- 00013917  0x00002c2f branch  0x00007d14 
- 00013918  0x00002c31 arg  0x00000000 , 0x00000011 
- 00013919  0x00002c32 branch  0x00007d19 
- 00013920  0x00002c35 setarg  0x00000002 
- 00013921  0x00002c36 call  0x00003220 
- 00013922  0x00002c38 setarg  0x00000000 
- 00013923  0x00002c39 store  0x00000005 , 0x0000479c 
- 00013924  0x00002c3a setarg  0x00000004 
- 00013925  0x00002c3b call  0x000069d7 
- 00013926  0x00002c3c setarg  0x00000005 
- 00013927  0x00002c3d call  0x000069d7 
- 00013928  0x00002c3e setarg  0x00000014 
- 00013929  0x00002c3f call  0x000069d7 
- 00013930  0x00002c40 setarg  0x00000015 
- 00013931  0x00002c41 call  0x000069d7 
- 00013932  0x00002c42 setarg  0x00000016 
- 00013933  0x00002c43 call  0x000069d7 
- 00013934  0x00002c44 setarg  0x00000007 
- 00013935  0x00002c45 call  0x000069d7 
- 00013936  0x00002c46 call  0x00007e38 
- 00013937  0x00002c47 jam  0x0000000a , 0x0000475e 
- 00013938  0x00002c48 jam  0x0000000a , 0x00004760 
- 00013939  0x00002c49 jam  0x0000000a , 0x00004762 
- 00013940  0x00002c4b jam  0x00000002 , 0x00004172 
- 00013941  0x00002c4c arg  0x00000000 , 0x00000011 
- 00013942  0x00002c4d call  0x00007d1e 
- 00013943  0x00002c4f setarg  0x00000020 
- 00013944  0x00002c50 call  0x000046f0 
- 00013945  0x00002c51 branch  0x000033fa 
- 00013946  0x00002c55 call  0x0000373b 
- 00013947  0x00002c56 call  0x0000373e 
- 00013948  0x00002c57 call  0x00003741 
- 00013949  0x00002c58 call  0x0000337b 
- 00013950  0x00002c59 call  0x000036c8 
- 00013951  0x00002c5a call  0x000036a1 
- 00013952  0x00002c5b call  0x0000368a 
- 00013953  0x00002c5c call  0x00003683 
- 00013954  0x00002c5d branch  0x0000368f 
- 00013955  0x00002c60 arg  0x0000479a , 0x00000013 
- 00013956  0x00002c61 arg  0x00003686 , 0x00000012 
- 00013957  0x00002c62 branch  0x0000336d 
- 00013958  0x00002c64 call  0x00003847 
- 00013959  0x00002c65 nrtn  0x00000001 
- 00013960  0x00002c66 jam  0x00000001 , 0x0000479b 
- 00013961  0x00002c67 rtn 
- 00013962  0x00002c6a arg  0x000047ed , 0x00000013 
- 00013963  0x00002c6b arg  0x0000368d , 0x00000012 
- 00013964  0x00002c6c branch  0x00003374 
- 00013965  0x00002c6e jam  0x00000002 , 0x000047ea 
- 00013966  0x00002c6f branch  0x00003662 
- 00013967  0x00002c72 arg  0x000047f1 , 0x00000013 
- 00013968  0x00002c73 arg  0x00003692 , 0x00000012 
- 00013969  0x00002c74 branch  0x0000336d 
- 00013970  0x00002c76 fetch  0x00000001 , 0x000047f2 
- 00013971  0x00002c77 branch  0x0000369e , 0x00000034 
- 00013972  0x00002c78 jam  0x00000002 , 0x000047f1 
- 00013973  0x00002c79 jam  0x00000000 , 0x000047f2 
- 00013974  0x00002c7a setarg  0x00000a02 
- 00013975  0x00002c7b store  0x00000002 , 0x00004752 
- 00013976  0x00002c7c fetch  0x00000001 , 0x000047b9 
- 00013977  0x00002c7d beq  0x00000003 , 0x0000369b 
- 00013978  0x00002c7f branch  0x00003762 
- 00013979  0x00002c81 setarg  0x00000a02 
- 00013980  0x00002c82 store  0x00000002 , 0x00004754 
- 00013981  0x00002c83 branch  0x00003762 
- 00013982  0x00002c85 setarg  0x00000000 
- 00013983  0x00002c86 store  0x00000004 , 0x00004752 
- 00013984  0x00002c87 branch  0x00003762 
- 00013985  0x00002c8a fetch  0x00000001 , 0x000047c8 
- 00013986  0x00002c8b rtn  0x00000034 
- 00013987  0x00002c8c fetch  0x00000002 , 0x00004682 
- 00013988  0x00002c8d bbit0  0x00000009 , 0x000036c6 
- 00013989  0x00002c8e arg  0x000047ce , 0x00000013 
- 00013990  0x00002c8f arg  0x000036a8 , 0x00000012 
- 00013991  0x00002c90 branch  0x0000336d 
- 00013992  0x00002c92 fetch  0x00000001 , 0x000047cd 
- 00013993  0x00002c93 store  0x00000001 , 0x000047ce 
- 00013994  0x00002c94 fetch  0x00000001 , 0x000047d1 
- 00013995  0x00002c95 nrtn  0x00000034 
- 00013996  0x00002c97 call  0x000068eb 
- 00013997  0x00002c98 call  0x00006908 
- 00013998  0x00002c99 store  0x00000002 , 0x000047e8 
- 00013999  0x00002c9a arg  0x000047e2 , 0x00000011 
- 00014000  0x00002c9b call  0x00006930 
- 00014001  0x00002c9c fetcht  0x00000001 , 0x000047cf 
- 00014002  0x00002c9d isub  0x00000002 , 0x0000003e 
- 00014003  0x00002c9e branch  0x000036b6 , 0x00000002 
- 00014004  0x00002c9f store  0x00000001 , 0x000047cf 
- 00014005  0x00002ca0 copy  0x0000003f , 0x00000002 
- 00014006  0x00002ca2 storet  0x00000001 , 0x000047d0 
- 00014007  0x00002ca3 fetch  0x00000001 , 0x000047ca 
- 00014008  0x00002ca4 isub  0x00000002 , 0x0000003e 
- 00014009  0x00002ca5 call  0x000036c1 , 0x00000002 
- 00014010  0x00002ca6 storet  0x00000001 , 0x000047db 
- 00014011  0x00002ca7 arg  0x00000006 , 0x00000039 
- 00014012  0x00002ca8 arg  0x000047d6 , 0x00000006 
- 00014013  0x00002ca9 call  0x000036f0 
- 00014014  0x00002caa store  0x00000001 , 0x000047dc 
- 00014015  0x00002cab arg  0x000047d3 , 0x00000011 
- 00014016  0x00002cac branch  0x00007e3d 
- 00014017  0x00002cae fetch  0x00000001 , 0x000047d2 
- 00014018  0x00002caf nrtn  0x00000034 
- 00014019  0x00002cb0 jam  0x00000001 , 0x000047d2 
- 00014020  0x00002cb1 arg  0x00000001 , 0x00000011 
- 00014021  0x00002cb2 branch  0x00007d1e 
- 00014022  0x00002cb4 arg  0x00000001 , 0x00000011 
- 00014023  0x00002cb5 branch  0x00007d19 
- 00014024  0x00002cb8 arg  0x000047a4 , 0x00000013 
- 00014025  0x00002cb9 arg  0x000036cb , 0x00000012 
- 00014026  0x00002cba branch  0x0000336d 
- 00014027  0x00002cbc jam  0x00000005 , 0x000047a4 
- 00014028  0x00002cbd jam  0x00000000 , 0x000047a6 
- 00014029  0x00002cbe fetch  0x00000001 , 0x000047a5 
- 00014030  0x00002cbf beq  0x00000001 , 0x000036ee 
- 00014031  0x00002cc0 beq  0x00000000 , 0x000036ec 
- 00014032  0x00002cc2 arg  0x0000479c , 0x00000006 
- 00014033  0x00002cc3 copy  0x00000006 , 0x00000011 
- 00014034  0x00002cc4 arg  0x00000008 , 0x00000039 
- 00014035  0x00002cc6 copy  0x00000011 , 0x00000006 
- 00014036  0x00002cc7 ifetch  0x00000001 , 0x00000006 
- 00014037  0x00002cc8 copy  0x00000006 , 0x00000011 
- 00014038  0x00002cc9 beq  0x00000000 , 0x000036e3 
- 00014039  0x00002cca beq  0x00000001 , 0x000036e6 
- 00014040  0x00002ccb beq  0x00000002 , 0x000036e9 
- 00014041  0x00002ccd fetch  0x00000001 , 0x000047a6 
- 00014042  0x00002cce increase  0x00000001 , 0x0000003f 
- 00014043  0x00002ccf store  0x00000001 , 0x000047a6 
- 00014044  0x00002cd0 loop  0x000036d3 
- 00014045  0x00002cd1 rtn 
- 00014046  0x00002cd3 fetch  0x00000001 , 0x000047a6 
- 00014047  0x00002cd4 arg  0x000047c0 , 0x00000012 
- 00014048  0x00002cd5 iadd  0x00000012 , 0x00000012 
- 00014049  0x00002cd6 ifetcht  0x00000001 , 0x00000012 
- 00014050  0x00002cd7 rtn 
- 00014051  0x00002cd9 call  0x000036de 
- 00014052  0x00002cda call  0x00006825 
- 00014053  0x00002cdb branch  0x000036d9 
- 00014054  0x00002cdd call  0x000036de 
- 00014055  0x00002cde call  0x00006829 
- 00014056  0x00002cdf branch  0x000036d9 
- 00014057  0x00002ce1 fetch  0x00000001 , 0x000047a5 
- 00014058  0x00002ce2 beq  0x00000001 , 0x000036e3 
- 00014059  0x00002ce3 branch  0x000036e6 
- 00014060  0x00002ce5 jam  0x00000001 , 0x000047a5 
- 00014061  0x00002ce6 branch  0x000036d0 
- 00014062  0x00002ce8 jam  0x00000000 , 0x000047a5 
- 00014063  0x00002ce9 branch  0x000036d0 
- 00014064  0x00002cee arg  0x00000000 , 0x00000011 
- 00014065  0x00002cf0 ifetch  0x00000001 , 0x00000006 
- 00014066  0x00002cf1 iadd  0x00000011 , 0x00000011 
- 00014067  0x00002cf2 loop  0x000036f1 
- 00014068  0x00002cf4 and  0x00000011 , 0x000000ff , 0x0000003f 
- 00014069  0x00002cf5 rtn 
- 00014070  0x00002cf8 fetch  0x00000001 , 0x00000477 
- 00014071  0x00002cf9 beq  0x00000012 , 0x000036f9 
- 00014072  0x00002cfa rtn 
- 00014073  0x00002cfc fetch  0x00000002 , 0x00000478 
- 00014074  0x00002cfd beq  0x00000014 , 0x00003710 
- 00014075  0x00002cfe rtn 
- 00014076  0x00002d0b bpatch  0x000000d0 , 0x0000401a 
- 00014077  0x00002d0c ifetch  0x00000005 , 0x00000011 
- 00014078  0x00002d0d store  0x00000005 , 0x00000b12 
- 00014079  0x00002d0e fetch  0x00000002 , 0x00000b12 
- 00014080  0x00002d0f arg  0x00006b5a , 0x00000002 
- 00014081  0x00002d10 isub  0x00000002 , 0x0000003e 
- 00014082  0x00002d11 nrtn  0x00000005 
- 00014083  0x00002d12 fetch  0x00000002 , 0x00000b15 
- 00014084  0x00002d13 byteswap  0x0000003f , 0x0000003f 
- 00014085  0x00002d14 store  0x00000002 , 0x00000b15 
- 00014086  0x00002d15 copy  0x0000003f , 0x00000039 
- 00014087  0x00002d16 increase  0x00000005 , 0x00000011 
- 00014088  0x00002d17 copy  0x00000011 , 0x00000006 
- 00014089  0x00002d18 arg  0x00000b17 , 0x00000005 
- 00014090  0x00002d19 call  0x00007f01 
- 00014091  0x00002d1a ifetch  0x00000001 , 0x00000006 
- 00014092  0x00002d1b store  0x00000001 , 0x00000b21 
- 00014093  0x00002d1c arg  0x00000b14 , 0x00000011 
- 00014094  0x00002d1d arg  0x00000b17 , 0x00000012 
- 00014095  0x00002d1e rtn 
- 00014096  0x00002d21 setarg  0x00000000 
- 00014097  0x00002d22 store  0x00000005 , 0x00004752 
- 00014098  0x00002d23 store  0x00000005 , 0x00004757 
- 00014099  0x00002d24 call  0x000036fc 
- 00014100  0x00002d25 copy  0x00000012 , 0x00000006 
- 00014101  0x00002d26 arg  0x00004752 , 0x00000005 
- 00014102  0x00002d27 arg  0x0000000a , 0x00000039 
- 00014103  0x00002d28 call  0x00007f01 
- 00014104  0x00002d2a bpatch  0x000000d1 , 0x0000401a 
- 00014105  0x00002d2b ifetch  0x00000001 , 0x00000011 
- 00014106  0x00002d2c beq  0x00000002 , 0x0000374a 
- 00014107  0x00002d2d beq  0x00000003 , 0x0000375c 
- 00014108  0x00002d2e beq  0x00000004 , 0x00003762 
- 00014109  0x00002d2f beq  0x00000005 , 0x00003762 
- 00014110  0x00002d30 beq  0x00000006 , 0x000037b1 
- 00014111  0x00002d31 beq  0x00000007 , 0x00003849 
- 00014112  0x00002d32 beq  0x00000008 , 0x0000384c 
- 00014113  0x00002d33 rtn 
- 00014114  0x00002d36 fetch  0x00000002 , 0x00004682 
- 00014115  0x00002d37 rtnbit1  0x00000009 
- 00014116  0x00002d39 fetch  0x00000002 , 0x000047eb 
- 00014117  0x00002d3a store  0x00000002 , 0x000047ed 
- 00014118  0x00002d3c jam  0x00000001 , 0x000049f6 
- 00014119  0x00002d3e setarg  0x0000010c 
- 00014120  0x00002d3f call  0x000032cd 
- 00014121  0x00002d40 call  0x00003710 
- 00014122  0x00002d42 fetch  0x00000001 , 0x00000b14 
- 00014123  0x00002d43 beq  0x00000004 , 0x0000372e 
- 00014124  0x00002d44 beq  0x00000005 , 0x0000372e 
- 00014125  0x00002d45 rtn 
- 00014126  0x00002d47 fetch  0x00000001 , 0x00004752 
- 00014127  0x00002d48 ncall  0x00003735 , 0x00000034 
- 00014128  0x00002d49 fetch  0x00000001 , 0x00004754 
- 00014129  0x00002d4a ncall  0x00003737 , 0x00000034 
- 00014130  0x00002d4b fetch  0x00000001 , 0x00004756 
- 00014131  0x00002d4c ncall  0x00003739 , 0x00000034 
- 00014132  0x00002d4d rtn 
- 00014133  0x00002d50 jam  0x00000005 , 0x000049f3 
- 00014134  0x00002d51 rtn 
- 00014135  0x00002d53 jam  0x00000005 , 0x000049f4 
- 00014136  0x00002d54 rtn 
- 00014137  0x00002d56 jam  0x00000005 , 0x000049f5 
- 00014138  0x00002d57 rtn 
- 00014139  0x00002d5a arg  0x000049f3 , 0x00000013 
- 00014140  0x00002d5b arg  0x00003744 , 0x00000012 
- 00014141  0x00002d5c branch  0x0000336d 
- 00014142  0x00002d5e arg  0x000049f4 , 0x00000013 
- 00014143  0x00002d5f arg  0x00003746 , 0x00000012 
- 00014144  0x00002d60 branch  0x0000336d 
- 00014145  0x00002d62 arg  0x000049f5 , 0x00000013 
- 00014146  0x00002d63 arg  0x00003748 , 0x00000012 
- 00014147  0x00002d64 branch  0x0000336d 
- 00014148  0x00002d67 jam  0x00000000 , 0x00004752 
- 00014149  0x00002d68 branch  0x00003762 
- 00014150  0x00002d6a jam  0x00000000 , 0x00004754 
- 00014151  0x00002d6b branch  0x00003762 
- 00014152  0x00002d6d jam  0x00000000 , 0x00004756 
- 00014153  0x00002d6e branch  0x00003762 
- 00014154  0x00002d74 call  0x0000374c 
- 00014155  0x00002d75 branch  0x0000374f 
- 00014156  0x00002d77 fetch  0x00000001 , 0x00004752 
- 00014157  0x00002d78 store  0x00000001 , 0x0000475f 
- 00014158  0x00002d79 branch  0x00003773 
- 00014159  0x00002d7b fetch  0x00000001 , 0x0000475e 
- 00014160  0x00002d7c call  0x00003754 
- 00014161  0x00002d7d fetch  0x00000001 , 0x00004753 
- 00014162  0x00002d7e store  0x00000001 , 0x0000475d 
- 00014163  0x00002d7f branch  0x00003770 
- 00014164  0x00002d81 beq  0x00000002 , 0x00003758 
- 00014165  0x00002d82 beq  0x00000003 , 0x0000375a 
- 00014166  0x00002d83 store  0x00000001 , 0x0000475e 
- 00014167  0x00002d84 rtn 
- 00014168  0x00002d86 jam  0x00000005 , 0x0000475e 
- 00014169  0x00002d87 rtn 
- 00014170  0x00002d89 jam  0x0000000a , 0x0000475e 
- 00014171  0x00002d8a rtn 
- 00014172  0x00002d8c fetch  0x00000001 , 0x00004752 
- 00014173  0x00002d8d call  0x00003754 
- 00014174  0x00002d8e fetch  0x00000001 , 0x0000475e 
- 00014175  0x00002d8f call  0x0000379e 
- 00014176  0x00002d90 call  0x000037a1 
- 00014177  0x00002d91 branch  0x000069c4 
- 00014178  0x00002d94 fetch  0x00000001 , 0x000047f0 
- 00014179  0x00002d95 nrtn  0x00000034 
- 00014180  0x00002d96 fetch  0x00000006 , 0x00004752 
- 00014181  0x00002d97 store  0x00000006 , 0x0000475d 
- 00014182  0x00002d98 fetch  0x00000001 , 0x0000475e 
- 00014183  0x00002d99 fetcht  0x00000001 , 0x00004760 
- 00014184  0x00002d9a iand  0x00000002 , 0x0000003f 
- 00014185  0x00002d9b fetcht  0x00000001 , 0x00004762 
- 00014186  0x00002d9c iand  0x00000002 , 0x0000003f 
- 00014187  0x00002d9d call  0x00003779 , 0x00000034 
- 00014188  0x00002d9e bpatch  0x000000d2 , 0x0000401a 
- 00014189  0x00002d9f call  0x00003770 
- 00014190  0x00002da0 call  0x00003773 
- 00014191  0x00002da1 branch  0x00003776 
- 00014192  0x00002da3 arg  0x00004763 , 0x00000012 
- 00014193  0x00002da4 arg  0x0000475d , 0x00000006 
- 00014194  0x00002da5 branch  0x0000377b 
- 00014195  0x00002da7 arg  0x0000476b , 0x00000012 
- 00014196  0x00002da8 arg  0x0000475f , 0x00000006 
- 00014197  0x00002da9 branch  0x0000377b 
- 00014198  0x00002dab arg  0x00004773 , 0x00000012 
- 00014199  0x00002dac arg  0x00004761 , 0x00000006 
- 00014200  0x00002dad branch  0x0000377b 
- 00014201  0x00002daf jam  0x00000000 , 0x000047d1 
- 00014202  0x00002db0 rtn 
- 00014203  0x00002db3 ifetch  0x00000001 , 0x00000006 
- 00014204  0x00002db4 beq  0x00000000 , 0x00003787 
- 00014205  0x00002db5 beq  0x00000001 , 0x00003780 
- 00014206  0x00002db6 beq  0x00000002 , 0x00003782 
- 00014207  0x00002db7 rtn 
- 00014208  0x00002db9 jam  0x00000000 , 0x0000477b 
- 00014209  0x00002dba branch  0x00003783 
- 00014210  0x00002dbc jam  0x00000001 , 0x0000477b 
- 00014211  0x00002dbd ifetch  0x00000001 , 0x00000006 
- 00014212  0x00002dbe store  0x00000001 , 0x0000477d 
- 00014213  0x00002dbf ifetch  0x00000008 , 0x00000012 
- 00014214  0x00002dc0 branch  0x0000378c 
- 00014215  0x00002dc3 ifetch  0x00000001 , 0x00000012 
- 00014216  0x00002dc4 call  0x000069d7 
- 00014217  0x00002dc5 increase  0x00000001 , 0x00000012 
- 00014218  0x00002dc6 ifetch  0x00000001 , 0x00000012 
- 00014219  0x00002dc7 branch  0x000069d7 
- 00014220  0x00002dc9 store  0x00000008 , 0x0000477e 
- 00014221  0x00002dca jam  0x00000001 , 0x000047d1 
- 00014222  0x00002dcb fetch  0x00000001 , 0x0000477b 
- 00014223  0x00002dcc beq  0x00000000 , 0x0000379a 
- 00014224  0x00002dce fetch  0x00000001 , 0x0000477f 
- 00014225  0x00002dcf store  0x00000001 , 0x00004780 
- 00014226  0x00002dd0 fetch  0x00000001 , 0x0000477e 
- 00014227  0x00002dd2 call  0x000069d7 
- 00014228  0x00002dd3 fetch  0x00000001 , 0x0000477d 
- 00014229  0x00002dd4 call  0x0000379e 
- 00014230  0x00002dd5 store  0x00000001 , 0x00004785 
- 00014231  0x00002dd6 fetch  0x00000006 , 0x00004780 
- 00014232  0x00002dd7 store  0x00000006 , 0x00000a9a 
- 00014233  0x00002dd8 branch  0x000069ae 
- 00014234  0x00002dda fetch  0x00000001 , 0x0000477e 
- 00014235  0x00002ddb store  0x00000001 , 0x00004780 
- 00014236  0x00002ddc fetch  0x00000001 , 0x0000477f 
- 00014237  0x00002ddd branch  0x00003793 
- 00014238  0x00002de0 mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00014239  0x00002de1 add  0x0000003f , 0x00000032 , 0x0000003f 
- 00014240  0x00002de2 rtn 
- 00014241  0x00002de4 arg  0x00002ee0 , 0x00000002 
- 00014242  0x00002de5 imul32  0x00000002 , 0x0000003f 
- 00014243  0x00002de6 div  0x0000003f , 0x00000064 
- 00014244  0x00002de7 call  0x00007f86 
- 00014245  0x00002de8 quotient  0x00000002 
- 00014246  0x00002de9 copy  0x00000002 , 0x00000011 
- 00014247  0x00002dea setarg  0x00002ee0 
- 00014248  0x00002deb isub  0x00000002 , 0x00000012 
- 00014249  0x00002dec rtn 
- 00014250  0x00002df0 hfetch  0x00000001 , 0x00008082 
- 00014251  0x00002df1 set1  0x00000002 , 0x0000003f 
- 00014252  0x00002df2 hstore  0x00000001 , 0x00008082 
- 00014253  0x00002df3 setarg  0x0000009e 
- 00014254  0x00002df4 hstore  0x00000002 , 0x00008068 
- 00014255  0x00002df5 hstore  0x00000002 , 0x0000806a 
- 00014256  0x00002df6 rtn 
- 00014257  0x00002df9 fetch  0x00000001 , 0x000047f0 
- 00014258  0x00002dfa nrtn  0x00000034 
- 00014259  0x00002dfb fetch  0x00000002 , 0x00004752 
- 00014260  0x00002dfc store  0x00000002 , 0x00004787 
- 00014261  0x00002dfd fetch  0x00000001 , 0x000047ea 
- 00014262  0x00002dfe bne  0x00000001 , 0x000037b9 
- 00014263  0x00002dff fetch  0x00000002 , 0x000044a0 
- 00014264  0x00002e00 store  0x00000002 , 0x00004787 
- 00014265  0x00002e02 bpatch  0x000000d3 , 0x0000401a 
- 00014266  0x00002e03 call  0x000037aa 
- 00014267  0x00002e04 call  0x000037dc 
- 00014268  0x00002e05 setarg  0x0000bb80 
- 00014269  0x00002e06 call  0x00002a8f 
- 00014270  0x00002e07 call  0x000037e0 
- 00014271  0x00002e08 setarg  0x00001c20 
- 00014272  0x00002e09 call  0x00002a8f 
- 00014273  0x00002e0a arg  0x00000010 , 0x00000039 
- 00014274  0x00002e0c call  0x000037dc 
- 00014275  0x00002e0d fetch  0x00000002 , 0x00004787 
- 00014276  0x00002e0e bbit1  0x00000000 , 0x000037c9 
- 00014277  0x00002e0f setarg  0x00001c20 
- 00014278  0x00002e10 call  0x00002a8f 
- 00014279  0x00002e11 call  0x000037e0 
- 00014280  0x00002e12 branch  0x000037cc 
- 00014281  0x00002e15 setarg  0x00003840 
- 00014282  0x00002e16 call  0x00002a8f 
- 00014283  0x00002e17 call  0x000037e0 
- 00014284  0x00002e19 setarg  0x00001c20 
- 00014285  0x00002e1a call  0x00002a8f 
- 00014286  0x00002e1b fetch  0x00000002 , 0x00004787 
- 00014287  0x00002e1c rshift  0x0000003f , 0x0000003f 
- 00014288  0x00002e1d store  0x00000002 , 0x00004787 
- 00014289  0x00002e1e loop  0x000037c2 
- 00014290  0x00002e20 jam  0x00000002 , 0x000047f1 
- 00014291  0x00002e21 jam  0x00000001 , 0x000047f2 
- 00014292  0x00002e22 setarg  0x00000a01 
- 00014293  0x00002e23 store  0x00000002 , 0x00004752 
- 00014294  0x00002e24 fetch  0x00000001 , 0x000047b9 
- 00014295  0x00002e25 beq  0x00000003 , 0x000037d9 
- 00014296  0x00002e27 branch  0x00003762 
- 00014297  0x00002e29 setarg  0x00000a01 
- 00014298  0x00002e2a store  0x00000002 , 0x00004754 
- 00014299  0x00002e2b branch  0x00003762 
- 00014300  0x00002e2e hfetch  0x00000001 , 0x00008085 
- 00014301  0x00002e2f or_into  0x00000040 , 0x0000003f 
- 00014302  0x00002e30 hstore  0x00000001 , 0x00008085 
- 00014303  0x00002e31 rtn 
- 00014304  0x00002e33 hfetch  0x00000001 , 0x00008085 
- 00014305  0x00002e34 and_into  0x000000bf , 0x0000003f 
- 00014306  0x00002e35 hstore  0x00000001 , 0x00008085 
- 00014307  0x00002e36 rtn 
- 00014308  0x00002e39 fetch  0x00000001 , 0x000047bb 
- 00014309  0x00002e3a rtneq  0x00000000 
- 00014310  0x00002e3b call  0x00002c65 
- 00014311  0x00002e3c fetcht  0x00000001 , 0x000047bc 
- 00014312  0x00002e3d storet  0x00000001 , 0x00004786 
- 00014313  0x00002e3e call  0x000067fb 
- 00014314  0x00002e3f call  0x00003847 
- 00014315  0x00002e40 nrtn  0x00000001 
- 00014316  0x00002e41 jam  0x00000001 , 0x0000479a 
- 00014317  0x00002e42 rtn 
- 00014318  0x00002e45 fetch  0x00000001 , 0x000047bb 
- 00014319  0x00002e46 rtneq  0x00000000 
- 00014320  0x00002e47 fetch  0x00000001 , 0x0000479b 
- 00014321  0x00002e48 nrtn  0x00000034 
- 00014322  0x00002e49 fetch  0x00000002 , 0x00004682 
- 00014323  0x00002e4a bbit1  0x00000009 , 0x000037f6 
- 00014324  0x00002e4b fetch  0x00000001 , 0x000047ea 
- 00014325  0x00002e4c rtnne  0x00000001 
- 00014326  0x00002e4e bpatch  0x000000d4 , 0x0000401a 
- 00014327  0x00002e4f call  0x00003847 
- 00014328  0x00002e50 nrtn  0x00000001 
- 00014329  0x00002e51 setarg  0x00008ca0 
- 00014330  0x00002e52 call  0x00002a8f 
- 00014331  0x00002e53 call  0x00003847 
- 00014332  0x00002e54 nrtn  0x00000001 
- 00014333  0x00002e55 call  0x0000383f 
- 00014334  0x00002e57 call  0x00003842 
- 00014335  0x00002e58 nrtn  0x00000002 
- 00014336  0x00002e59 call  0x00003847 
- 00014337  0x00002e5a branch  0x000037fe , 0x00000001 
- 00014338  0x00002e5b arg  0x00000000 , 0x00000011 
- 00014339  0x00002e5c arg  0x00000010 , 0x00000039 
- 00014340  0x00002e5d call  0x0000383f 
- 00014341  0x00002e5f call  0x00003842 
- 00014342  0x00002e60 nrtn  0x00000002 
- 00014343  0x00002e61 call  0x00003847 
- 00014344  0x00002e62 nbranch  0x00003805 , 0x00000001 
- 00014345  0x00002e63 setarg  0x00002a30 
- 00014346  0x00002e64 call  0x00002a8f 
- 00014347  0x00002e65 call  0x00003847 
- 00014348  0x00002e66 branch  0x00003812 , 0x00000001 
- 00014349  0x00002e68 setarg  0x00000000 
- 00014350  0x00002e69 rshift  0x00000011 , 0x00000011 
- 00014351  0x00002e6a ior  0x00000011 , 0x00000011 
- 00014352  0x00002e6b loop  0x00003805 
- 00014353  0x00002e6c branch  0x0000381b 
- 00014354  0x00002e6e setarg  0x00008000 
- 00014355  0x00002e6f rshift  0x00000011 , 0x00000011 
- 00014356  0x00002e70 ior  0x00000011 , 0x00000011 
- 00014357  0x00002e71 call  0x0000383f 
- 00014358  0x00002e73 call  0x00003842 
- 00014359  0x00002e74 nrtn  0x00000002 
- 00014360  0x00002e75 call  0x00003847 
- 00014361  0x00002e76 branch  0x00003816 , 0x00000001 
- 00014362  0x00002e77 loop  0x00003805 
- 00014363  0x00002e79 bpatch  0x000000d5 , 0x0000401a 
- 00014364  0x00002e7a copy  0x00000011 , 0x0000003f 
- 00014365  0x00002e7b store  0x00000002 , 0x00004789 
- 00014366  0x00002e7c store  0x00000002 , 0x00004797 
- 00014367  0x00002e7d fetch  0x00000001 , 0x000047ea 
- 00014368  0x00002e7e beq  0x00000001 , 0x00003827 
- 00014369  0x00002e80 arg  0x00000007 , 0x00000039 
- 00014370  0x00002e81 arg  0x00004792 , 0x00000006 
- 00014371  0x00002e82 call  0x000036f0 
- 00014372  0x00002e83 store  0x00000001 , 0x00004799 
- 00014373  0x00002e84 arg  0x0000478f , 0x00000011 
- 00014374  0x00002e85 branch  0x00007e3d 
- 00014375  0x00002e88 fetch  0x00000001 , 0x000047ef 
- 00014376  0x00002e89 increase  0x00000001 , 0x0000003f 
- 00014377  0x00002e8a store  0x00000001 , 0x000047ef 
- 00014378  0x00002e8b div  0x0000003f , 0x00000002 
- 00014379  0x00002e8c call  0x00007f86 
- 00014380  0x00002e8d quotient  0x00000002 
- 00014381  0x00002e8e remainder  0x0000003f 
- 00014382  0x00002e8f nbranch  0x00003838 , 0x00000034 
- 00014383  0x00002e91 fetch  0x00000001 , 0x000047bf 
- 00014384  0x00002e92 isub  0x00000002 , 0x0000003e 
- 00014385  0x00002e93 call  0x0000383d , 0x00000005 
- 00014386  0x00002e94 arg  0x0000479c , 0x0000003f 
- 00014387  0x00002e95 increase  0xffffffff , 0x00000002 
- 00014388  0x00002e96 iadd  0x00000002 , 0x00000011 
- 00014389  0x00002e97 arg  0x00000000 , 0x0000003f 
- 00014390  0x00002e98 istore  0x00000001 , 0x00000011 
- 00014391  0x00002e99 rtn 
- 00014392  0x00002e9b arg  0x0000479c , 0x0000003f 
- 00014393  0x00002e9c iadd  0x00000002 , 0x00000011 
- 00014394  0x00002e9d arg  0x00000002 , 0x0000003f 
- 00014395  0x00002e9e istore  0x00000001 , 0x00000011 
- 00014396  0x00002e9f rtn 
- 00014397  0x00002ea1 jam  0x00000001 , 0x000047f0 
- 00014398  0x00002ea2 rtn 
- 00014399  0x00002ea4 copy  0x00000022 , 0x0000003f 
- 00014400  0x00002ea5 store  0x00000004 , 0x0000478b 
- 00014401  0x00002ea6 rtn 
- 00014402  0x00002ea8 copy  0x00000022 , 0x0000003f 
- 00014403  0x00002ea9 fetcht  0x00000004 , 0x0000478b 
- 00014404  0x00002eaa isub  0x00000002 , 0x0000003f 
- 00014405  0x00002eab sub  0x0000003f , 0x000000c8 , 0x0000003e 
- 00014406  0x00002eac rtn 
- 00014407  0x00002eaf fetcht  0x00000001 , 0x00004786 
- 00014408  0x00002eb0 branch  0x0000681d 
- 00014409  0x00002eb3 fetch  0x00000008 , 0x00004752 
- 00014410  0x00002eb4 store  0x00000008 , 0x0000479c 
- 00014411  0x00002eb5 rtn 
- 00014412  0x00002eb8 fetch  0x00000001 , 0x000047b9 
- 00014413  0x00002eb9 store  0x00000001 , 0x000047af 
- 00014414  0x00002eba fetch  0x00000001 , 0x000047ba 
- 00014415  0x00002ebb store  0x00000001 , 0x000047b0 
- 00014416  0x00002ebc fetch  0x00000001 , 0x000047bb 
- 00014417  0x00002ebd store  0x00000001 , 0x000047b1 
- 00014418  0x00002ebe arg  0x0000000d , 0x00000039 
- 00014419  0x00002ebf arg  0x000047aa , 0x00000006 
- 00014420  0x00002ec0 call  0x000036f0 
- 00014421  0x00002ec1 store  0x00000001 , 0x000047b7 
- 00014422  0x00002ec2 arg  0x000047a7 , 0x00000011 
- 00014423  0x00002ec3 branch  0x00007e3d 
- 00014424  0x00002eca call  0x000065c2 
- 00014425  0x00002ecb jam  0x0000007a , 0x000046f6 
- 00014426  0x00002ecc call  0x0000386d 
- 00014427  0x00002ecd call  0x00003867 
- 00014428  0x00002ece setarg  0x00003860 
- 00014429  0x00002ecf store  0x00000002 , 0x000041fd 
- 00014430  0x00002ed0 arg  0x00000000 , 0x00000011 
- 00014431  0x00002ed1 branch  0x000069a6 
- 00014432  0x00002ed4 fetch  0x00000002 , 0x000046a1 
- 00014433  0x00002ed5 rtn  0x00000034 
- 00014434  0x00002ed6 increase  0xffffffff , 0x0000003f 
- 00014435  0x00002ed7 store  0x00000002 , 0x000046a1 
- 00014436  0x00002ed8 rtnne  0x00000000 
- 00014437  0x00002ed9 jam  0x00000000 , 0x000046a0 
- 00014438  0x00002eda rtn 
- 00014439  0x00002edd bpatch  0x000000d6 , 0x0000401a 
- 00014440  0x00002ede fetch  0x00000001 , 0x000046a4 
- 00014441  0x00002edf sub  0x0000003f , 0x00000028 , 0x0000003e 
- 00014442  0x00002ee0 rtn  0x00000002 
- 00014443  0x00002ee1 jam  0x00000000 , 0x000046a4 
- 00014444  0x00002ee2 rtn 
- 00014445  0x00002ee5 arg  0x000046a4 , 0x00000011 
- 00014446  0x00002ee6 arg  0x00000000 , 0x00000012 
- 00014447  0x00002ee7 arg  0x00000051 , 0x00000002 
- 00014448  0x00002ee8 branch  0x000065df 
- 00014449  0x00002eec disable  0x00000028 
- 00014450  0x00002eed fetch  0x00000001 , 0x000046a3 
- 00014451  0x00002eee copy  0x0000003f , 0x00000039 
- 00014452  0x00002ef0 arg  0x000046a5 , 0x00000011 
- 00014453  0x00002ef1 copy  0x00000013 , 0x00000012 
- 00014454  0x00002ef3 bpatch  0x000000d7 , 0x0000401a 
- 00014455  0x00002ef4 call  0x0000387c 
- 00014456  0x00002ef5 branch  0x00007fe7 , 0x00000005 
- 00014457  0x00002ef7 increase  0x00000004 , 0x00000011 
- 00014458  0x00002ef8 loop  0x00003876 
- 00014459  0x00002ef9 rtn 
- 00014460  0x00002efd bpatch  0x000000d8 , 0x0000401b 
- 00014461  0x00002efe ifetch  0x00000003 , 0x00000011 
- 00014462  0x00002eff ifetcht  0x00000003 , 0x00000012 
- 00014463  0x00002f00 isub  0x00000002 , 0x0000003e 
- 00014464  0x00002f01 rtn 
- 00014465  0x00002f04 bpatch  0x000000d9 , 0x0000401b 
- 00014466  0x00002f05 ifetch  0x00000003 , 0x00000011 
- 00014467  0x00002f06 ifetcht  0x00000003 , 0x00000012 
- 00014468  0x00002f07 isub  0x00000002 , 0x0000003e 
- 00014469  0x00002f08 nrtn  0x00000005 
- 00014470  0x00002f09 ifetch  0x00000001 , 0x00000006 
- 00014471  0x00002f0a sub  0x0000003f , 0x00000000 , 0x0000003e 
- 00014472  0x00002f0b rtn  0x00000005 
- 00014473  0x00002f0c add  0x00000011 , 0x00000003 , 0x00000006 
- 00014474  0x00002f0d ifetcht  0x00000001 , 0x00000006 
- 00014475  0x00002f0e isub  0x00000002 , 0x0000003e 
- 00014476  0x00002f0f rtn 
- 00014477  0x00002f13 bpatch  0x000000da , 0x0000401b 
- 00014478  0x00002f14 disable  0x00000028 
- 00014479  0x00002f15 fetch  0x00000001 , 0x000046a3 
- 00014480  0x00002f16 copy  0x0000003f , 0x00000039 
- 00014481  0x00002f18 arg  0x000046a5 , 0x00000011 
- 00014482  0x00002f19 copy  0x00000013 , 0x00000012 
- 00014483  0x00002f1b call  0x00003881 
- 00014484  0x00002f1c branch  0x00007fe7 , 0x00000005 
- 00014485  0x00002f1d increase  0x00000004 , 0x00000011 
- 00014486  0x00002f1e loop  0x00003893 
- 00014487  0x00002f1f rtn 
- 00014488  0x00002f23 fetch  0x00000001 , 0x00000004 
- 00014489  0x00002f24 increase  0x00000001 , 0x0000003f 
- 00014490  0x00002f25 store  0x00000001 , 0x00000004 
- 00014491  0x00002f26 arg  0x000002e5 , 0x00000013 
- 00014492  0x00002f29 ifetch  0x00000002 , 0x00000013 
- 00014493  0x00002f2a arg  0x000055aa , 0x00000002 
- 00014494  0x00002f2b isub  0x00000002 , 0x0000003e 
- 00014495  0x00002f2c nrtn  0x00000005 
- 00014496  0x00002f2d copy  0x00000006 , 0x00000013 
- 00014497  0x00002f2e ifetcht  0x00000003 , 0x00000013 
- 00014498  0x00002f2f setarg  0x00ffffff 
- 00014499  0x00002f30 isub  0x00000002 , 0x0000003e 
- 00014500  0x00002f31 branch  0x000038a8 , 0x00000005 
- 00014501  0x00002f32 call  0x0000388d 
- 00014502  0x00002f33 branch  0x000038a8 , 0x00000028 
- 00014503  0x00002f34 rtn 
- 00014504  0x00002f37 bpatch  0x000000db , 0x0000401b 
- 00014505  0x00002f38 increase  0x00000004 , 0x00000013 
- 00014506  0x00002f39 ifetch  0x00000001 , 0x00000013 
- 00014507  0x00002f3a fetcht  0x00000001 , 0x000046f6 
- 00014508  0x00002f3b isub  0x00000002 , 0x0000003e 
- 00014509  0x00002f3c rtn  0x00000005 
- 00014510  0x00002f3d store  0x00000001 , 0x000046f6 
- 00014511  0x00002f3e fetch  0x00000001 , 0x00000003 
- 00014512  0x00002f3f increase  0x00000001 , 0x0000003f 
- 00014513  0x00002f40 store  0x00000001 , 0x00000003 
- 00014514  0x00002f42 increase  0x00000001 , 0x00000013 
- 00014515  0x00002f43 ifetch  0x00000001 , 0x00000013 
- 00014516  0x00002f44 store  0x00000001 , 0x000046f5 
- 00014517  0x00002f45 copy  0x0000003f , 0x00000039 
- 00014518  0x00002f46 rtn  0x00000034 
- 00014519  0x00002f48 ifetch  0x00000001 , 0x00000006 
- 00014520  0x00002f49 beq  0x00000000 , 0x000038c2 
- 00014521  0x00002f4a beq  0x00000001 , 0x000038cf 
- 00014522  0x00002f4b beq  0x00000002 , 0x000038d4 
- 00014523  0x00002f4c beq  0x00000003 , 0x000038d9 
- 00014524  0x00002f4d beq  0x00000004 , 0x000038de 
- 00014525  0x00002f4e beq  0x00000005 , 0x000038e3 
- 00014526  0x00002f4f beq  0x00000006 , 0x000038e8 
- 00014527  0x00002f50 beq  0x000000ff , 0x000038ea 
- 00014528  0x00002f51 loop  0x000038b7 
- 00014529  0x00002f52 rtn 
- 00014530  0x00002f55 copy  0x00000006 , 0x00000013 
- 00014531  0x00002f56 fetch  0x00000001 , 0x0000469a 
- 00014532  0x00002f57 store  0x00000001 , 0x00000a9a 
- 00014533  0x00002f58 arg  0x00000000 , 0x00000002 
- 00014534  0x00002f5a storet  0x00000001 , 0x00000a9b 
- 00014535  0x00002f5b setarg  0x00002710 
- 00014536  0x00002f5c store  0x00000003 , 0x00000a9c 
- 00014537  0x00002f5d ifetch  0x00000001 , 0x00000013 
- 00014538  0x00002f5e store  0x00000001 , 0x00000a9f 
- 00014539  0x00002f5f call  0x000069ae 
- 00014540  0x00002f60 and  0x00000013 , 0x00000001 , 0x00000006 
- 00014541  0x00002f61 loop  0x000038b7 
- 00014542  0x00002f62 rtn 
- 00014543  0x00002f64 copy  0x00000013 , 0x00000006 
- 00014544  0x00002f65 fetch  0x00000001 , 0x0000469b 
- 00014545  0x00002f66 store  0x00000001 , 0x00000a9a 
- 00014546  0x00002f67 arg  0x00000001 , 0x00000002 
- 00014547  0x00002f68 branch  0x000038c6 
- 00014548  0x00002f6a copy  0x00000013 , 0x00000006 
- 00014549  0x00002f6b fetch  0x00000001 , 0x0000469c 
- 00014550  0x00002f6c store  0x00000001 , 0x00000a9a 
- 00014551  0x00002f6d arg  0x00000002 , 0x00000002 
- 00014552  0x00002f6e branch  0x000038c6 
- 00014553  0x00002f70 copy  0x00000013 , 0x00000006 
- 00014554  0x00002f71 fetch  0x00000001 , 0x0000469d 
- 00014555  0x00002f72 store  0x00000001 , 0x00000a9a 
- 00014556  0x00002f73 arg  0x00000003 , 0x00000002 
- 00014557  0x00002f74 branch  0x000038c6 
- 00014558  0x00002f76 copy  0x00000013 , 0x00000006 
- 00014559  0x00002f77 fetch  0x00000001 , 0x0000469e 
- 00014560  0x00002f78 store  0x00000001 , 0x00000a9a 
- 00014561  0x00002f79 arg  0x00000004 , 0x00000002 
- 00014562  0x00002f7a branch  0x000038c6 
- 00014563  0x00002f7c copy  0x00000013 , 0x00000006 
- 00014564  0x00002f7d fetch  0x00000001 , 0x0000469f 
- 00014565  0x00002f7e store  0x00000001 , 0x00000a9a 
- 00014566  0x00002f7f arg  0x00000005 , 0x00000002 
- 00014567  0x00002f80 branch  0x000038c6 
- 00014568  0x00002f83 ifetch  0x00000001 , 0x00000006 
- 00014569  0x00002f84 rtn 
- 00014570  0x00002f87 copy  0x00000006 , 0x00000013 
- 00014571  0x00002f88 fetch  0x00000001 , 0x000046a0 
- 00014572  0x00002f89 bne  0x00000001 , 0x000038ee 
- 00014573  0x00002f8a call  0x000038f0 
- 00014574  0x00002f8c and  0x00000013 , 0x00000004 , 0x00000006 
- 00014575  0x00002f8d rtn 
- 00014576  0x00002f8f bpatch  0x000000dc , 0x0000401b 
- 00014577  0x00002f90 call  0x00003871 
- 00014578  0x00002f91 branch  0x000038fe , 0x00000028 
- 00014579  0x00002f92 fetch  0x00000001 , 0x000046a4 
- 00014580  0x00002f93 copy  0x0000003f , 0x00000002 
- 00014581  0x00002f94 increase  0x00000001 , 0x0000003f 
- 00014582  0x00002f95 store  0x00000001 , 0x000046a4 
- 00014583  0x00002f96 call  0x00003867 
- 00014584  0x00002f97 lshift2  0x00000002 , 0x00000002 
- 00014585  0x00002f98 setarg  0x000046a5 
- 00014586  0x00002f99 iadd  0x00000002 , 0x00000005 
- 00014587  0x00002f9a ifetch  0x00000004 , 0x00000013 
- 00014588  0x00002f9b istore  0x00000004 , 0x00000005 
- 00014589  0x00002f9c branch  0x00003903 
- 00014590  0x00002f9e add  0x00000013 , 0x00000003 , 0x00000006 
- 00014591  0x00002f9f ifetch  0x00000001 , 0x00000006 
- 00014592  0x00002fa0 rtn  0x00000034 
- 00014593  0x00002fa1 ifetch  0x00000004 , 0x00000013 
- 00014594  0x00002fa2 istore  0x00000004 , 0x00000011 
- 00014595  0x00002fa4 arg  0x000046a4 , 0x00000011 
- 00014596  0x00002fa5 arg  0x00000000 , 0x00000012 
- 00014597  0x00002fa6 arg  0x00000051 , 0x00000002 
- 00014598  0x00002fa7 branch  0x00006606 
- 00014599  0x00002faf fetcht  0x00000001 , 0x0000469a 
- 00014600  0x00002fb0 call  0x00006825 
- 00014601  0x00002fb1 rtn 
- 00014602  0x00002fb7 fetcht  0x00000001 , 0x0000469a 
- 00014603  0x00002fb8 call  0x00006829 
- 00014604  0x00002fbb fetcht  0x00000001 , 0x0000469a 
- 00014605  0x00002fbc call  0x00006825 
- 00014606  0x00002fbf call  0x0000391d 
- 00014607  0x00002fc1 fetch  0x00000001 , 0x000046a7 
- 00014608  0x00002fc2 nrtn  0x00000034 
- 00014609  0x00002fc4 call  0x00002c29 
- 00014610  0x00002fc5 hfetch  0x00000004 , 0x00008138 
- 00014611  0x00002fc6 set0  0x0000000f , 0x0000003f 
- 00014612  0x00002fc7 hstore  0x00000004 , 0x0000804c 
- 00014613  0x00002fc8 call  0x00002c21 
- 00014614  0x00002fc9 arg  0xffffffff , 0x00000002 
- 00014615  0x00002fca branch  0x00002b2a 
- 00014616  0x00002fcd fetch  0x00000001 , 0x000046a7 
- 00014617  0x00002fce branch  0x000056f9 , 0x00000034 
- 00014618  0x00002fcf increase  0xffffffff , 0x0000003f 
- 00014619  0x00002fd0 store  0x00000001 , 0x000046a7 
- 00014620  0x00002fd1 branch  0x000056f9 
- 00014621  0x00002fd4 mul32  0x0000003f , 0x00000014 , 0x0000003f 
- 00014622  0x00002fd5 arg  0x000046a8 , 0x00000006 
- 00014623  0x00002fd6 iadd  0x00000006 , 0x00000006 
- 00014624  0x00002fd7 ifetch  0x00000001 , 0x00000006 
- 00014625  0x00002fd8 rtn  0x00000034 
- 00014626  0x00002fd9 copy  0x0000003f , 0x00000011 
- 00014627  0x00002fda copy  0x00000011 , 0x00000039 
- 00014628  0x00002fdb arg  0x00004372 , 0x00000005 
- 00014629  0x00002fdc call  0x00007f01 
- 00014630  0x00002fdd copy  0x00000011 , 0x0000003f 
- 00014631  0x00002fde increase  0x00000002 , 0x0000003f 
- 00014632  0x00002fdf store  0x00000001 , 0x0000436f 
- 00014633  0x00002fe0 rtn 
- 00014634  0x00002fe9 rtn  0x0000002b 
- 00014635  0x00002fea call  0x000057a3 
- 00014636  0x00002feb call  0x000068a8 
- 00014637  0x00002fec setarg  0x00003982 
- 00014638  0x00002fed store  0x00000002 , 0x000041f3 
- 00014639  0x00002fee setarg  0x0000396e 
- 00014640  0x00002fef store  0x00000002 , 0x000041f1 
- 00014641  0x00002ff0 setarg  0x00003986 
- 00014642  0x00002ff1 store  0x00000002 , 0x000041f5 
- 00014643  0x00002ff2 setarg  0x0000396d 
- 00014644  0x00002ff3 store  0x00000002 , 0x000041ef 
- 00014645  0x00002ff4 setarg  0x00003969 
- 00014646  0x00002ff5 store  0x00000002 , 0x000041e9 
- 00014647  0x00002ff6 setarg  0x00003ab7 
- 00014648  0x00002ff7 store  0x00000002 , 0x000041fb 
- 00014649  0x00002ff8 setarg  0x00003c32 
- 00014650  0x00002ff9 store  0x00000002 , 0x0000456f 
- 00014651  0x00002ffa setarg  0x00003cc2 
- 00014652  0x00002ffb store  0x00000002 , 0x000041f9 
- 00014653  0x00002ffc setarg  0x00003cd7 
- 00014654  0x00002ffd store  0x00000002 , 0x000041fd 
- 00014655  0x00002fff call  0x0000397f 
- 00014656  0x00003000 bpatch  0x000000dd , 0x0000401b 
- 00014657  0x00003001 call  0x00003945 
- 00014658  0x00003002 call  0x00003964 
- 00014659  0x00003003 call  0x00002c6f 
- 00014660  0x00003004 branch  0x00003c48 
- 00014661  0x00003008 fetch  0x00000004 , 0x000046aa 
- 00014662  0x00003009 hstore  0x00000004 , 0x00008054 
- 00014663  0x0000300b fetch  0x00000004 , 0x000046ae 
- 00014664  0x0000300c hstore  0x00000004 , 0x0000805a 
- 00014665  0x0000300e hfetch  0x00000001 , 0x00008081 
- 00014666  0x0000300f or_into  0x00000004 , 0x0000003f 
- 00014667  0x00003010 and_into  0x000000fc , 0x0000003f 
- 00014668  0x00003011 hstore  0x00000001 , 0x00008081 
- 00014669  0x00003012 jam  0x00000000 , 0x00008062 
- 00014670  0x00003014 fetch  0x00000002 , 0x000046aa 
- 00014671  0x00003015 hstore  0x00000002 , 0x00008058 
- 00014672  0x00003016 fetch  0x00000002 , 0x000046ae 
- 00014673  0x00003017 hstore  0x00000002 , 0x0000805e 
- 00014674  0x00003018 hstore  0x00000002 , 0x00008060 
- 00014675  0x0000301a hfetch  0x00000004 , 0x00008078 
- 00014676  0x0000301b set1  0x00000007 , 0x0000003f 
- 00014677  0x0000301c hstore  0x00000004 , 0x00008078 
- 00014678  0x0000301e hfetch  0x00000002 , 0x00008050 
- 00014679  0x0000301f set0  0x0000000f , 0x0000003f 
- 00014680  0x00003020 hstore  0x00000002 , 0x00008050 
- 00014681  0x00003021 call  0x000066ce 
- 00014682  0x00003022 jam  0x00000000 , 0x00008043 
- 00014683  0x00003023 jam  0x00000081 , 0x00008062 
- 00014684  0x00003025 fetch  0x00000001 , 0x000046bf 
- 00014685  0x00003026 isolate1  0x00000000 , 0x0000003f 
- 00014686  0x00003027 hfetcht  0x00000001 , 0x00008062 
- 00014687  0x00003028 setflag  0x00000001 , 0x00000004 , 0x00000002 
- 00014688  0x00003029 hstoret  0x00000001 , 0x00008062 
- 00014689  0x0000302a rtn 
- 00014690  0x0000302f call  0x0000397f 
- 00014691  0x00003030 branch  0x00003945 
- 00014692  0x00003038 fetcht  0x00000001 , 0x0000469e 
- 00014693  0x00003039 call  0x0000680e 
- 00014694  0x0000303a call  0x000039e6 
- 00014695  0x0000303c fetcht  0x00000001 , 0x0000469c 
- 00014696  0x0000303d branch  0x000067fb 
- 00014697  0x00003040 fetcht  0x00000001 , 0x0000469c 
- 00014698  0x00003041 call  0x0000681d 
- 00014699  0x00003042 nbranch  0x000033d2 , 0x00000001 
- 00014700  0x00003043 branch  0x000033d0 
- 00014701  0x00003047 rtn 
- 00014702  0x0000304a call  0x00003970 
- 00014703  0x0000304b branch  0x00003ce9 
- 00014704  0x0000304e fetch  0x00000001 , 0x00004682 
- 00014705  0x0000304f bbit0  0x00000004 , 0x0000397f 
- 00014706  0x00003050 bpatch  0x000000de , 0x0000401b 
- 00014707  0x00003051 setarg  0x00003eff 
- 00014708  0x00003052 fetcht  0x00000004 , 0x000046c5 
- 00014709  0x00003053 iadd  0x00000002 , 0x00000002 
- 00014710  0x00003054 copy  0x00000022 , 0x0000003f 
- 00014711  0x00003055 isub  0x00000002 , 0x0000003e 
- 00014712  0x00003056 nrtn  0x00000002 
- 00014713  0x00003057 fetch  0x00000002 , 0x00004682 
- 00014714  0x00003058 bbit1  0x00000005 , 0x0000397f 
- 00014715  0x00003059 fetch  0x00000001 , 0x000046bf 
- 00014716  0x0000305a rtnbit1  0x00000006 
- 00014717  0x0000305b call  0x00003cec 
- 00014718  0x0000305c call  0x0000340e 
- 00014719  0x0000305e copy  0x00000022 , 0x0000003f 
- 00014720  0x0000305f store  0x00000004 , 0x000046c5 
- 00014721  0x00003060 rtn 
- 00014722  0x00003064 call  0x00003ce9 
- 00014723  0x00003065 call  0x0000526e 
- 00014724  0x00003066 nrtn  0x00000034 
- 00014725  0x00003067 branch  0x000039eb 
- 00014726  0x0000306b copy  0x00000013 , 0x0000003f 
- 00014727  0x0000306c beq  0x00000001 , 0x000039d4 
- 00014728  0x0000306d beq  0x00000002 , 0x000039a3 
- 00014729  0x0000306e beq  0x00000004 , 0x000039d7 
- 00014730  0x0000306f beq  0x00000005 , 0x000039c4 
- 00014731  0x00003070 beq  0x00000008 , 0x000039aa 
- 00014732  0x00003071 beq  0x00000009 , 0x000039b1 
- 00014733  0x00003072 beq  0x0000000a , 0x000039c9 
- 00014734  0x00003073 beq  0x0000000b , 0x000039b6 
- 00014735  0x00003074 beq  0x0000000c , 0x000039c2 
- 00014736  0x00003075 beq  0x00000013 , 0x000039d7 
- 00014737  0x00003076 beq  0x00000014 , 0x000039cf 
- 00014738  0x00003077 beq  0x00000015 , 0x000039c6 
- 00014739  0x00003078 beq  0x00000021 , 0x000039ca 
- 00014740  0x00003079 beq  0x00000023 , 0x000039cb 
- 00014741  0x0000307a beq  0x00000024 , 0x000039ce 
- 00014742  0x0000307b beq  0x00000030 , 0x00003c8a 
- 00014743  0x0000307c beq  0x00000031 , 0x00003c8c 
- 00014744  0x0000307d beq  0x00000032 , 0x00003c9a 
- 00014745  0x0000307e beq  0x00000033 , 0x00003c98 
- 00014746  0x0000307f beq  0x00000034 , 0x00003c84 
- 00014747  0x00003080 beq  0x00000035 , 0x00003c73 
- 00014748  0x00003081 beq  0x00000036 , 0x00003c82 
- 00014749  0x00003082 beq  0x00000037 , 0x00003c8e 
- 00014750  0x00003083 beq  0x00000038 , 0x00003c90 
- 00014751  0x00003084 beq  0x0000003b , 0x00003ca1 
- 00014752  0x00003085 beq  0x0000003d , 0x00003c6a 
- 00014753  0x00003086 beq  0x00000041 , 0x000039d9 
- 00014754  0x00003087 rtn 
- 00014755  0x0000308b call  0x0000397f 
- 00014756  0x0000308c fetch  0x00000001 , 0x00004665 
- 00014757  0x0000308d ncall  0x00003c8e , 0x00000034 
- 00014758  0x0000308e call  0x000039d7 
- 00014759  0x0000308f fetch  0x00000002 , 0x00004682 
- 00014760  0x00003090 rtnbit0  0x00000004 
- 00014761  0x00003091 branch  0x000039b1 
- 00014762  0x00003094 fetch  0x00000002 , 0x00004682 
- 00014763  0x00003095 set1  0x00000004 , 0x0000003f 
- 00014764  0x00003096 store  0x00000002 , 0x00004682 
- 00014765  0x00003097 fetch  0x00000001 , 0x000046a7 
- 00014766  0x00003098 store  0x00000001 , 0x00004172 
- 00014767  0x00003099 call  0x000039e6 
- 00014768  0x0000309a branch  0x00003c1d 
- 00014769  0x0000309f fetch  0x00000002 , 0x00004682 
- 00014770  0x000030a0 rtnbit0  0x00000004 
- 00014771  0x000030a1 set0  0x00000004 , 0x0000003f 
- 00014772  0x000030a2 store  0x00000002 , 0x00004682 
- 00014773  0x000030a3 branch  0x00003c21 
- 00014774  0x000030a9 call  0x0000397f 
- 00014775  0x000030ac fetch  0x00000002 , 0x00004042 
- 00014776  0x000030ad rshift  0x0000003f , 0x0000003f 
- 00014777  0x000030ae fetcht  0x00000002 , 0x000041e3 
- 00014778  0x000030af isub  0x00000002 , 0x0000003e 
- 00014779  0x000030b0 nbranch  0x000039bd , 0x00000005 
- 00014780  0x000030b1 branch  0x00003416 
- 00014781  0x000030b3 fetch  0x00000001 , 0x000046bf 
- 00014782  0x000030b4 rtnbit1  0x00000005 
- 00014783  0x000030b5 hfetch  0x00000002 , 0x00008112 
- 00014784  0x000030b6 ncall  0x00003cf0 , 0x00000034 
- 00014785  0x000030b7 branch  0x0000340c 
- 00014786  0x000030ba call  0x00003cee 
- 00014787  0x000030bb branch  0x00003418 
- 00014788  0x000030be call  0x0000397f 
- 00014789  0x000030bf branch  0x000039dd 
- 00014790  0x000030c2 call  0x00005816 
- 00014791  0x000030c3 call  0x000039d7 
- 00014792  0x000030c4 branch  0x00003c23 
- 00014793  0x000030c7 branch  0x000033dd 
- 00014794  0x000030cb branch  0x00003cee 
- 00014795  0x000030cf fetch  0x00000001 , 0x000046bf 
- 00014796  0x000030d0 bbit0  0x00000005 , 0x0000340e 
- 00014797  0x000030d1 branch  0x00003cf2 
- 00014798  0x000030d5 branch  0x00003cf2 
- 00014799  0x000030d9 call  0x000058ba 
- 00014800  0x000030da call  0x000039dd 
- 00014801  0x000030db fetch  0x00000001 , 0x000046a8 
- 00014802  0x000030dc store  0x00000001 , 0x00004172 
- 00014803  0x000030dd branch  0x00003c1f 
- 00014804  0x000030e1 jam  0x00000000 , 0x00004661 
- 00014805  0x000030e2 call  0x00003cee 
- 00014806  0x000030e3 branch  0x00003cf2 
- 00014807  0x000030e8 call  0x00003a52 
- 00014808  0x000030e9 branch  0x000039db 
- 00014809  0x000030ed call  0x00005cc9 
- 00014810  0x000030ee branch  0x00005b02 
- 00014811  0x000030f2 fetcht  0x00000001 , 0x0000469e 
- 00014812  0x000030f3 branch  0x00006829 
- 00014813  0x000030f6 call  0x000039df 
- 00014814  0x000030f7 branch  0x000039e6 
- 00014815  0x000030fa fetch  0x00000001 , 0x000046a1 
- 00014816  0x000030fb isolate1  0x00000000 , 0x0000003f 
- 00014817  0x000030fc call  0x000033f0 , 0x00000001 
- 00014818  0x000030fd fetch  0x00000001 , 0x000046a1 
- 00014819  0x000030fe isolate1  0x00000001 , 0x0000003f 
- 00014820  0x000030ff call  0x000033f8 , 0x00000001 
- 00014821  0x00003100 rtn 
- 00014822  0x00003102 fetcht  0x00000001 , 0x0000469e 
- 00014823  0x00003103 branch  0x00006825 
- 00014824  0x00003106 fetch  0x00000001 , 0x0000456b 
- 00014825  0x00003107 rtneq  0x00000000 
- 00014826  0x00003108 branch  0x00006c28 
- 00014827  0x0000310b hfetch  0x00000001 , 0x0000810c 
- 00014828  0x0000310c bbit1  0x00000003 , 0x000039e8 
- 00014829  0x0000310d call  0x000066cb 
- 00014830  0x0000310e ifetch  0x00000001 , 0x00000003 
- 00014831  0x0000310f bne  0x00000001 , 0x00003a01 
- 00014832  0x00003110 hfetch  0x00000002 , 0x00008112 
- 00014833  0x00003111 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00014834  0x00003112 rtn  0x00000002 
- 00014835  0x00003113 ifetch  0x00000001 , 0x00000003 
- 00014836  0x00003114 store  0x00000001 , 0x00000b03 
- 00014837  0x00003115 ifetcht  0x00000001 , 0x00000003 
- 00014838  0x00003116 copy  0x00000003 , 0x00000011 
- 00014839  0x00003117 storet  0x00000001 , 0x00000b04 
- 00014840  0x00003118 add  0x00000002 , 0x00000003 , 0x00000002 
- 00014841  0x00003119 hfetch  0x00000002 , 0x00008112 
- 00014842  0x0000311a isub  0x00000002 , 0x00000002 
- 00014843  0x0000311b nrtn  0x00000002 
- 00014844  0x0000311c jam  0x00000001 , 0x00000b05 
- 00014845  0x0000311d call  0x00003a17 
- 00014846  0x0000311e fetch  0x00000001 , 0x00000b05 
- 00014847  0x0000311f rtneq  0x00000000 
- 00014848  0x00003120 branch  0x00003a12 
- 00014849  0x00003123 call  0x00007ec1 
- 00014850  0x00003124 call  0x00003c79 
- 00014851  0x00003125 branch  0x00003a04 
- 00014852  0x00003129 bpatch  0x000000df , 0x0000401b 
- 00014853  0x0000312a hfetch  0x00000002 , 0x00008112 
- 00014854  0x0000312b rtn  0x00000034 
- 00014855  0x0000312c call  0x000066cb 
- 00014856  0x0000312d ifetch  0x00000001 , 0x00000003 
- 00014857  0x0000312e sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00014858  0x0000312f ncall  0x00003a16 , 0x00000005 
- 00014859  0x00003130 nbranch  0x00003a04 , 0x00000005 
- 00014860  0x00003131 ifetch  0x00000001 , 0x00000003 
- 00014861  0x00003132 rtneq  0x00000005 
- 00014862  0x00003133 rtneq  0x00000029 
- 00014863  0x00003134 increase  0xffffffff , 0x00000003 
- 00014864  0x00003135 call  0x00003a16 
- 00014865  0x00003136 branch  0x00003a04 
- 00014866  0x00003139 call  0x000066cb 
- 00014867  0x0000313a increase  0x00000002 , 0x00000003 
- 00014868  0x0000313b ifetch  0x00000001 , 0x00000003 
- 00014869  0x0000313c iadd  0x00000003 , 0x00000003 
- 00014870  0x0000313e branch  0x000066c8 
- 00014871  0x00003142 bpatch  0x000000e0 , 0x0000401c 
- 00014872  0x00003143 fetch  0x00000001 , 0x00000b03 
- 00014873  0x00003144 beq  0x00000000 , 0x00003a3f 
- 00014874  0x00003145 beq  0x00000001 , 0x00003a44 
- 00014875  0x00003146 beq  0x00000002 , 0x00003a49 
- 00014876  0x00003147 beq  0x00000003 , 0x00003a5f 
- 00014877  0x00003148 beq  0x00000004 , 0x00003a6b 
- 00014878  0x00003149 beq  0x00000005 , 0x00003a75 
- 00014879  0x0000314a beq  0x00000009 , 0x00003a9a 
- 00014880  0x0000314b beq  0x0000000b , 0x00003ad7 
- 00014881  0x0000314c beq  0x0000000c , 0x00003ad8 
- 00014882  0x0000314d beq  0x0000000d , 0x00003aec 
- 00014883  0x0000314e beq  0x0000000e , 0x00003af4 
- 00014884  0x0000314f beq  0x0000000f , 0x00003afa 
- 00014885  0x00003150 beq  0x00000010 , 0x00003b06 
- 00014886  0x00003151 beq  0x00000011 , 0x00003b0e 
- 00014887  0x00003152 beq  0x00000012 , 0x00003b12 
- 00014888  0x00003153 beq  0x00000026 , 0x00003b16 
- 00014889  0x00003154 beq  0x00000028 , 0x00003b1d 
- 00014890  0x00003155 beq  0x00000029 , 0x00003b2d 
- 00014891  0x00003156 beq  0x0000002a , 0x00003b36 
- 00014892  0x00003157 beq  0x0000002b , 0x00003b69 
- 00014893  0x00003158 beq  0x0000002c , 0x00003b6f 
- 00014894  0x00003159 beq  0x00000030 , 0x00003b76 
- 00014895  0x0000315a beq  0x00000031 , 0x00003b7c 
- 00014896  0x0000315b beq  0x00000032 , 0x00003b90 
- 00014897  0x0000315c beq  0x00000033 , 0x00003b98 
- 00014898  0x0000315d beq  0x00000034 , 0x00003bbb 
- 00014899  0x0000315e beq  0x00000035 , 0x00003bc4 
- 00014900  0x0000315f beq  0x00000036 , 0x00003bcd 
- 00014901  0x00003160 beq  0x00000037 , 0x00003bd7 
- 00014902  0x00003161 beq  0x00000038 , 0x00003bda 
- 00014903  0x00003162 beq  0x00000040 , 0x00003be2 
- 00014904  0x00003163 beq  0x00000042 , 0x00003bec 
- 00014905  0x00003164 beq  0x00000048 , 0x00003bf1 
- 00014906  0x00003165 beq  0x00000049 , 0x00003bfc 
- 00014907  0x00003166 beq  0x00000051 , 0x00003c02 
- 00014908  0x00003167 beq  0x00000061 , 0x00003c06 
- 00014909  0x00003168 beq  0x000000ff , 0x00003c15 
- 00014910  0x00003169 branch  0x00003c17 
- 00014911  0x0000316f fetch  0x00000001 , 0x00000b04 
- 00014912  0x00003170 bne  0x00000006 , 0x00003c17 
- 00014913  0x00003171 ifetch  0x00000006 , 0x00000003 
- 00014914  0x00003172 store  0x00000006 , 0x000040a0 
- 00014915  0x00003173 branch  0x00003c1a 
- 00014916  0x00003177 fetch  0x00000001 , 0x00000b04 
- 00014917  0x00003178 bne  0x00000006 , 0x00003c17 
- 00014918  0x00003179 ifetch  0x00000006 , 0x00000003 
- 00014919  0x0000317a store  0x00000006 , 0x000044a0 
- 00014920  0x0000317b branch  0x00003c1a 
- 00014921  0x00003180 fetch  0x00000001 , 0x00000b04 
- 00014922  0x00003181 bne  0x00000001 , 0x00003c17 
- 00014923  0x00003182 copy  0x00000011 , 0x00000003 
- 00014924  0x00003183 call  0x00003c1a 
- 00014925  0x00003184 ifetcht  0x00000001 , 0x00000003 
- 00014926  0x00003185 storet  0x00000001 , 0x000046a9 
- 00014927  0x00003186 fetch  0x00000002 , 0x00004682 
- 00014928  0x00003187 rtnbit1  0x00000009 
- 00014929  0x00003188 rtnbit1  0x00000000 
- 00014930  0x0000318a fetch  0x00000001 , 0x000046a1 
- 00014931  0x0000318b isolate1  0x00000000 , 0x0000003f 
- 00014932  0x0000318c nbranch  0x00003a58 , 0x00000001 
- 00014933  0x0000318d fetcht  0x00000001 , 0x000046a9 
- 00014934  0x0000318e and  0x00000002 , 0x00000003 , 0x0000003f 
- 00014935  0x0000318f store  0x00000001 , 0x00004093 
- 00014936  0x00003191 fetch  0x00000001 , 0x000046a1 
- 00014937  0x00003192 isolate1  0x00000001 , 0x0000003f 
- 00014938  0x00003193 nrtn  0x00000001 
- 00014939  0x00003194 fetcht  0x00000001 , 0x000046a9 
- 00014940  0x00003195 isolate1  0x00000002 , 0x00000002 
- 00014941  0x00003196 branch  0x000033fa , 0x00000001 
- 00014942  0x00003197 branch  0x000033f8 
- 00014943  0x0000319c fetch  0x00000001 , 0x00000b04 
- 00014944  0x0000319d sub  0x0000003f , 0x00000043 , 0x0000003e 
- 00014945  0x0000319e nbranch  0x00003c17 , 0x00000002 
- 00014946  0x0000319f store  0x00000001 , 0x00004515 
- 00014947  0x000031a0 arg  0x00000008 , 0x00000039 
- 00014948  0x000031a1 call  0x00007ec6 
- 00014949  0x000031a2 fetch  0x00000001 , 0x00000b04 
- 00014950  0x000031a3 copy  0x0000003f , 0x00000039 
- 00014951  0x000031a4 copy  0x00000011 , 0x00000003 
- 00014952  0x000031a5 arg  0x00004516 , 0x00000005 
- 00014953  0x000031a6 call  0x000066ea 
- 00014954  0x000031a7 branch  0x00003c1a 
- 00014955  0x000031ac fetch  0x00000001 , 0x00000b04 
- 00014956  0x000031ad sub  0x0000003f , 0x0000001d , 0x0000003e 
- 00014957  0x000031ae nbranch  0x00003c17 , 0x00000002 
- 00014958  0x000031af store  0x00000001 , 0x000043af 
- 00014959  0x000031b0 copy  0x0000003f , 0x00000039 
- 00014960  0x000031b1 copy  0x00000011 , 0x00000003 
- 00014961  0x000031b2 arg  0x000043b0 , 0x00000005 
- 00014962  0x000031b3 call  0x000066ea 
- 00014963  0x000031b4 call  0x000057a3 
- 00014964  0x000031b5 branch  0x00003c1a 
- 00014965  0x000031ba fetch  0x00000001 , 0x00004682 
- 00014966  0x000031bb bbit0  0x00000004 , 0x00003c17 
- 00014967  0x000031bc call  0x000033ba 
- 00014968  0x000031bd branch  0x00003a86 , 0x00000001 
- 00014969  0x000031be jam  0x00000000 , 0x00000b05 
- 00014970  0x000031c0 call  0x0000397f 
- 00014971  0x000031c1 fetch  0x00000001 , 0x00004568 
- 00014972  0x000031c2 rtn  0x00000034 
- 00014973  0x000031c3 fetch  0x00000002 , 0x00004573 
- 00014974  0x000031c4 bne  0x00000000 , 0x00003a84 
- 00014975  0x000031c5 fetch  0x00000001 , 0x00000b04 
- 00014976  0x000031c6 store  0x00000002 , 0x00004573 
- 00014977  0x000031c8 copy  0x00000011 , 0x00000003 
- 00014978  0x000031cb copy  0x00000003 , 0x0000003f 
- 00014979  0x000031cc store  0x00000002 , 0x00004571 
- 00014980  0x000031ce call  0x00003a88 
- 00014981  0x000031cf branch  0x00006c4d 
- 00014982  0x000031d2 jam  0x00000000 , 0x00000b05 
- 00014983  0x000031d3 branch  0x00003cd1 
- 00014984  0x000031d6 call  0x00003a8e 
- 00014985  0x000031d7 fetch  0x00000002 , 0x00004573 
- 00014986  0x000031d8 fetcht  0x00000002 , 0x0000469f 
- 00014987  0x000031d9 isub  0x00000002 , 0x0000003f 
- 00014988  0x000031da store  0x00000002 , 0x00004573 
- 00014989  0x000031db rtn 
- 00014990  0x000031de fetch  0x00000002 , 0x00004573 
- 00014991  0x000031df arg  0x0000006e , 0x00000002 
- 00014992  0x000031e0 call  0x00007fdd 
- 00014993  0x000031e1 fetcht  0x00000002 , 0x0000456c 
- 00014994  0x000031e2 call  0x00007fdd 
- 00014995  0x000031e3 fetcht  0x00000002 , 0x0000455e 
- 00014996  0x000031e4 call  0x00007fdd 
- 00014997  0x000031e5 store  0x00000002 , 0x0000469f 
- 00014998  0x000031e6 rtn 
- 00014999  0x000031e9 jam  0x00000001 , 0x00000b05 
- 00015000  0x000031ea jam  0x00000005 , 0x00000b03 
- 00015001  0x000031eb branch  0x00003c1a 
- 00015002  0x000031f0 fetch  0x00000002 , 0x00004682 
- 00015003  0x000031f1 bbit0  0x00000009 , 0x00003c17 
- 00015004  0x000031f2 call  0x00003ad4 
- 00015005  0x000031f3 branch  0x00003c17 , 0x00000028 
- 00015006  0x000031f4 jam  0x00000000 , 0x00000b05 
- 00015007  0x000031f5 fetch  0x00000001 , 0x000046bf 
- 00015008  0x000031f6 bbit1  0x00000004 , 0x00003ab4 
- 00015009  0x000031f7 fetch  0x00000001 , 0x000046c0 
- 00015010  0x000031f8 nrtn  0x00000034 
- 00015011  0x000031f9 jam  0x00000001 , 0x00000b05 
- 00015012  0x000031fa ifetch  0x00000002 , 0x00000003 
- 00015013  0x000031fb store  0x00000002 , 0x000046c1 
- 00015014  0x000031fc copy  0x00000003 , 0x0000003f 
- 00015015  0x000031fd store  0x00000002 , 0x000046c3 
- 00015016  0x000031fe fetch  0x00000001 , 0x00000b04 
- 00015017  0x000031ff pincrease  0xfffffffe 
- 00015018  0x00003200 nbranch  0x00003c17 , 0x00000002 
- 00015019  0x00003201 branch  0x00003c17 , 0x00000005 
- 00015020  0x00003202 store  0x00000001 , 0x000046c0 
- 00015021  0x00003203 jam  0x00000000 , 0x00000b05 
- 00015022  0x00003204 call  0x00005814 
- 00015023  0x00003205 call  0x00003ab7 
- 00015024  0x00003206 call  0x00003ab7 
- 00015025  0x00003207 call  0x00003ab7 
- 00015026  0x00003208 fetch  0x00000001 , 0x000046bf 
- 00015027  0x00003209 rtnbit0  0x00000004 
- 00015028  0x0000320b jam  0x00000001 , 0x00000b05 
- 00015029  0x0000320c call  0x00003cf6 
- 00015030  0x0000320d branch  0x00003c1a 
- 00015031  0x00003210 fetch  0x00000001 , 0x000046c0 
- 00015032  0x00003211 rtn  0x00000034 
- 00015033  0x00003212 call  0x00005892 
- 00015034  0x00003213 nrtn  0x00000034 
- 00015035  0x00003214 call  0x00003acf 
- 00015036  0x00003215 bpatch  0x000000e1 , 0x0000401c 
- 00015037  0x00003216 add  0x00000002 , 0xfffffffd , 0x0000003f 
- 00015038  0x00003217 fetcht  0x00000001 , 0x000046c0 
- 00015039  0x00003218 call  0x00007fdd 
- 00015040  0x00003219 copy  0x0000003f , 0x00000011 
- 00015041  0x0000321a copy  0x00000002 , 0x0000003f 
- 00015042  0x0000321b isub  0x00000011 , 0x0000003f 
- 00015043  0x0000321c store  0x00000001 , 0x000046c0 
- 00015044  0x0000321d fetcht  0x00000002 , 0x000046c1 
- 00015045  0x0000321e call  0x00005a64 
- 00015046  0x0000321f fetch  0x00000002 , 0x000046c3 
- 00015047  0x00003220 copy  0x0000003f , 0x00000003 
- 00015048  0x00003221 copy  0x00000011 , 0x00000039 
- 00015049  0x00003222 call  0x000066ea 
- 00015050  0x00003223 copy  0x00000003 , 0x0000003f 
- 00015051  0x00003224 store  0x00000002 , 0x000046c3 
- 00015052  0x00003225 fetch  0x00000001 , 0x000046c0 
- 00015053  0x00003226 nrtn  0x00000034 
- 00015054  0x00003227 branch  0x00003cf4 
- 00015055  0x0000322c arg  0x00000017 , 0x00000002 
- 00015056  0x0000322d fetch  0x00000001 , 0x000046bf 
- 00015057  0x0000322e rtnbit1  0x00000001 
- 00015058  0x0000322f fetcht  0x00000002 , 0x000044a8 
- 00015059  0x00003230 rtn 
- 00015060  0x00003233 fetch  0x00000001 , 0x000046bf 
- 00015061  0x00003234 bbit1  0x00000002 , 0x00005a42 
- 00015062  0x00003235 branch  0x00007fe9 
- 00015063  0x0000323a branch  0x00003c4c 
- 00015064  0x0000323f copy  0x00000011 , 0x00000003 
- 00015065  0x00003240 ifetch  0x00000001 , 0x00000003 
- 00015066  0x00003241 beq  0x00000000 , 0x00003adf 
- 00015067  0x00003242 beq  0x00000001 , 0x00003ae2 
- 00015068  0x00003243 beq  0x00000002 , 0x00003ae8 
- 00015069  0x00003244 beq  0x00000003 , 0x00003aea 
- 00015070  0x00003245 branch  0x00003c17 
- 00015071  0x00003247 call  0x0000612b 
- 00015072  0x00003248 jam  0x00000000 , 0x0000465a 
- 00015073  0x00003249 branch  0x00003c1a 
- 00015074  0x0000324b setarg  0x00040003 
- 00015075  0x0000324d store  0x00000003 , 0x0000465b 
- 00015076  0x0000324e store  0x00000001 , 0x00004662 
- 00015077  0x0000324f call  0x00006124 
- 00015078  0x00003250 jam  0x00000001 , 0x0000465a 
- 00015079  0x00003251 branch  0x00003c1a 
- 00015080  0x00003253 setarg  0x00040002 
- 00015081  0x00003254 branch  0x00003ae3 
- 00015082  0x00003257 setarg  0x00040001 
- 00015083  0x00003258 branch  0x00003ae3 
- 00015084  0x0000325c fetch  0x00000001 , 0x00000b04 
- 00015085  0x0000325d sub  0x0000003f , 0x00000010 , 0x0000003e 
- 00015086  0x0000325e nbranch  0x00003c17 , 0x00000002 
- 00015087  0x0000325f store  0x00000001 , 0x00004689 
- 00015088  0x00003260 copy  0x0000003f , 0x00000039 
- 00015089  0x00003261 arg  0x0000468a , 0x00000005 
- 00015090  0x00003262 call  0x000066fd 
- 00015091  0x00003263 branch  0x00003c1a 
- 00015092  0x00003268 copy  0x00000011 , 0x00000003 
- 00015093  0x00003269 ifetch  0x00000001 , 0x00000003 
- 00015094  0x0000326a hfetcht  0x00000001 , 0x00008062 
- 00015095  0x0000326b nsetflag  0x00000034 , 0x00000004 , 0x00000002 
- 00015096  0x0000326c hstoret  0x00000001 , 0x00008062 
- 00015097  0x0000326d branch  0x00003c1a 
- 00015098  0x00003272 fetch  0x00000001 , 0x00000b04 
- 00015099  0x00003273 copy  0x0000003f , 0x00000039 
- 00015100  0x00003274 copy  0x00000011 , 0x00000003 
- 00015101  0x00003275 call  0x00007f58 
- 00015102  0x00003276 setarg  0x016e3600 
- 00015103  0x00003277 idiv  0x00000002 
- 00015104  0x00003278 call  0x00007f86 
- 00015105  0x00003279 quotient  0x0000003f 
- 00015106  0x0000327b store  0x00000002 , 0x00004243 
- 00015107  0x0000327c call  0x00003c1a 
- 00015108  0x0000327d call  0x00007f9e 
- 00015109  0x0000327e branch  0x000066ce 
- 00015110  0x00003283 arg  0x00000002 , 0x00000011 
- 00015111  0x00003284 arg  0x0000469a , 0x00000012 
- 00015112  0x00003285 arg  0x00000000 , 0x00000002 
- 00015113  0x00003286 branch  0x00003c25 
- 00015114  0x00003288 store  0x00000002 , 0x00000ac2 
- 00015115  0x00003289 arg  0x00000ac2 , 0x00000012 
- 00015116  0x0000328a arg  0x00000000 , 0x00000002 
- 00015117  0x0000328b branch  0x00003c25 
- 00015118  0x00003290 fetch  0x00000002 , 0x00004682 
- 00015119  0x00003291 bbit0  0x00000000 , 0x00003c17 
- 00015120  0x00003293 call  0x00003c1a 
- 00015121  0x00003294 branch  0x000033e9 
- 00015122  0x00003299 fetch  0x00000002 , 0x00004682 
- 00015123  0x0000329a bbit0  0x00000009 , 0x00003c17 
- 00015124  0x0000329c call  0x00003c1a 
- 00015125  0x0000329d branch  0x00003402 
- 00015126  0x000032a4 fetch  0x00000001 , 0x00000b04 
- 00015127  0x000032a5 copy  0x0000003f , 0x00000039 
- 00015128  0x000032a6 copy  0x00000011 , 0x00000003 
- 00015129  0x000032a7 fetch  0x00000002 , 0x00004215 
- 00015130  0x000032a8 icopy  0x00000005 
- 00015131  0x000032a9 call  0x000066ea 
- 00015132  0x000032aa branch  0x00003c1a 
- 00015133  0x000032af fetch  0x00000001 , 0x00004682 
- 00015134  0x000032b0 bbit0  0x00000000 , 0x00003c17 
- 00015135  0x000032b1 ifetch  0x00000001 , 0x00000003 
- 00015136  0x000032b2 fetcht  0x00000001 , 0x00004661 
- 00015137  0x000032b3 setflag  0x00000034 , 0x00000000 , 0x00000002 
- 00015138  0x000032b4 set1  0x00000007 , 0x00000002 
- 00015139  0x000032b5 storet  0x00000001 , 0x00004661 
- 00015140  0x000032b7 call  0x00003c1a 
- 00015141  0x000032b9 fetch  0x00000001 , 0x00004661 
- 00015142  0x000032ba bbit1  0x00000006 , 0x00003b2b 
- 00015143  0x000032bb rtn 
- 00015144  0x000032be jam  0x00000000 , 0x00004661 
- 00015145  0x000032bf jam  0x00000021 , 0x00000a99 
- 00015146  0x000032c0 branch  0x00007d8f 
- 00015147  0x000032c4 bbit1  0x00000000 , 0x00005f95 
- 00015148  0x000032c5 branch  0x00003b28 
- 00015149  0x000032ca fetch  0x00000001 , 0x00004682 
- 00015150  0x000032cb rtnbit0  0x00000004 
- 00015151  0x000032cc fetch  0x00000001 , 0x0000456b 
- 00015152  0x000032cd rtneq  0x00000000 
- 00015153  0x000032ce ifetch  0x00000001 , 0x00000003 
- 00015154  0x000032cf fetcht  0x00000001 , 0x00004569 
- 00015155  0x000032d0 iadd  0x00000002 , 0x00000002 
- 00015156  0x000032d1 storet  0x00000001 , 0x00004569 
- 00015157  0x000032d2 rtn 
- 00015158  0x000032d7 arg  0x00000040 , 0x00000039 
- 00015159  0x000032d8 arg  0x0000436f , 0x00000005 
- 00015160  0x000032d9 call  0x00007ed4 
- 00015161  0x000032da setarg  0x00000000 
- 00015162  0x000032db store  0x00000001 , 0x00000ab2 
- 00015163  0x000032dc copy  0x00000011 , 0x00000003 
- 00015164  0x000032de copy  0x00000003 , 0x0000003f 
- 00015165  0x000032df store  0x00000002 , 0x00000ab6 
- 00015166  0x000032e0 call  0x00003b64 
- 00015167  0x000032e2 fetch  0x00000001 , 0x00000ab2 
- 00015168  0x000032e3 fetcht  0x00000001 , 0x00000aa2 
- 00015169  0x000032e4 increase  0x00000001 , 0x00000002 
- 00015170  0x000032e5 iadd  0x00000002 , 0x0000003f 
- 00015171  0x000032e6 store  0x00000001 , 0x00000ab2 
- 00015172  0x000032e8 sub  0x0000003f , 0x0000001f , 0x0000003e 
- 00015173  0x000032e9 nbranch  0x00003b50 , 0x00000002 
- 00015174  0x000032eb fetcht  0x00000001 , 0x0000436f 
- 00015175  0x000032ec setarg  0x00004370 
- 00015176  0x000032ed iadd  0x00000002 , 0x0000003f 
- 00015177  0x000032ee store  0x00000002 , 0x00000abb 
- 00015178  0x000032ef fetcht  0x00000001 , 0x00000aa2 
- 00015179  0x000032f0 increase  0x00000001 , 0x00000002 
- 00015180  0x000032f1 fetch  0x00000001 , 0x0000436f 
- 00015181  0x000032f2 iadd  0x00000002 , 0x0000003f 
- 00015182  0x000032f3 store  0x00000001 , 0x0000436f 
- 00015183  0x000032f4 branch  0x00003b59 
- 00015184  0x000032f6 fetcht  0x00000001 , 0x0000438f 
- 00015185  0x000032f7 setarg  0x00004390 
- 00015186  0x000032f8 iadd  0x00000002 , 0x0000003f 
- 00015187  0x000032f9 store  0x00000002 , 0x00000abb 
- 00015188  0x000032fa fetcht  0x00000001 , 0x00000aa2 
- 00015189  0x000032fb increase  0x00000001 , 0x00000002 
- 00015190  0x000032fc fetch  0x00000001 , 0x0000438f 
- 00015191  0x000032fd iadd  0x00000002 , 0x0000003f 
- 00015192  0x000032fe store  0x00000001 , 0x0000438f 
- 00015193  0x00003300 fetch  0x00000002 , 0x00000abb 
- 00015194  0x00003301 copy  0x0000003f , 0x00000005 
- 00015195  0x00003302 fetch  0x00000002 , 0x00000ab6 
- 00015196  0x00003303 copy  0x0000003f , 0x00000003 
- 00015197  0x00003305 copy  0x00000002 , 0x00000039 
- 00015198  0x00003306 call  0x000066ea 
- 00015199  0x00003308 fetch  0x00000001 , 0x00000b04 
- 00015200  0x00003309 fetcht  0x00000001 , 0x00000ab2 
- 00015201  0x0000330a isub  0x00000002 , 0x0000003e 
- 00015202  0x0000330b nbranch  0x00003b3c , 0x00000005 
- 00015203  0x0000330c branch  0x00003c1a 
- 00015204  0x00003310 ifetch  0x00000001 , 0x00000003 
- 00015205  0x00003311 store  0x00000001 , 0x00000aa2 
- 00015206  0x00003312 ifetch  0x00000001 , 0x00000003 
- 00015207  0x00003313 store  0x00000001 , 0x00000aae 
- 00015208  0x00003314 rtn 
- 00015209  0x00003319 arg  0x00000000 , 0x00000002 
- 00015210  0x0000331a arg  0x00000002 , 0x00000011 
- 00015211  0x0000331b fetch  0x00000002 , 0x000046b4 
- 00015212  0x0000331c store  0x00000002 , 0x00000ac2 
- 00015213  0x0000331d arg  0x00000ac2 , 0x00000012 
- 00015214  0x0000331e branch  0x00003c25 
- 00015215  0x00003323 fetch  0x00000001 , 0x00000b04 
- 00015216  0x00003324 bne  0x00000001 , 0x00003c17 
- 00015217  0x00003325 ifetch  0x00000001 , 0x00000003 
- 00015218  0x00003326 store  0x00000001 , 0x000046b2 
- 00015219  0x00003327 setarg  0x00000000 
- 00015220  0x00003328 store  0x00000002 , 0x000046b4 
- 00015221  0x00003329 branch  0x00003c1a 
- 00015222  0x0000332e ifetch  0x00000004 , 0x00000003 
- 00015223  0x0000332f store  0x00000004 , 0x0000468a 
- 00015224  0x00003330 jam  0x00000004 , 0x00004689 
- 00015225  0x00003331 jam  0x00000000 , 0x00004663 
- 00015226  0x00003332 call  0x00003c1a 
- 00015227  0x00003333 branch  0x00005f31 
- 00015228  0x00003338 fetch  0x00000001 , 0x00000b04 
- 00015229  0x00003339 bne  0x00000003 , 0x00003c17 
- 00015230  0x0000333a ifetch  0x00000001 , 0x00000003 
- 00015231  0x0000333b beq  0x00000000 , 0x00003b82 
- 00015232  0x0000333c beq  0x00000001 , 0x00003b8a 
- 00015233  0x0000333d branch  0x00003c17 
- 00015234  0x00003340 ifetcht  0x00000001 , 0x00000003 
- 00015235  0x00003341 ifetch  0x00000001 , 0x00000003 
- 00015236  0x00003342 beq  0x00000002 , 0x00003b88 
- 00015237  0x00003343 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
- 00015238  0x00003344 call  0x000067fb 
- 00015239  0x00003345 branch  0x00003c1a 
- 00015240  0x00003348 call  0x00006806 
- 00015241  0x00003349 branch  0x00003c1a 
- 00015242  0x0000334c ifetcht  0x00000001 , 0x00000003 
- 00015243  0x0000334d call  0x00006812 
- 00015244  0x0000334e ifetch  0x00000001 , 0x00000003 
- 00015245  0x0000334f isolate1  0x00000000 , 0x0000003f 
- 00015246  0x00003350 call  0x0000682c 
- 00015247  0x00003351 branch  0x00003c1a 
- 00015248  0x00003356 fetch  0x00000001 , 0x00000b04 
- 00015249  0x00003357 bne  0x00000001 , 0x00003c17 
- 00015250  0x00003358 ifetcht  0x00000001 , 0x00000003 
- 00015251  0x00003359 call  0x0000681d 
- 00015252  0x0000335a setarg  0x00000000 
- 00015253  0x0000335b nsetflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00015254  0x0000335c arg  0x00000001 , 0x00000011 
- 00015255  0x0000335d branch  0x00003b0a 
- 00015256  0x00003362 copy  0x00000011 , 0x00000003 
- 00015257  0x00003363 ifetch  0x00000001 , 0x00000003 
- 00015258  0x00003364 copy  0x0000003f , 0x00000002 
- 00015259  0x00003365 beq  0x00000081 , 0x00003ba3 
- 00015260  0x00003366 beq  0x00000082 , 0x00003ba8 
- 00015261  0x00003367 beq  0x00000083 , 0x00003bae 
- 00015262  0x00003368 store  0x00000001 , 0x000044c6 
- 00015263  0x00003369 beq  0x00000000 , 0x00003bb3 
- 00015264  0x0000336a beq  0x00000001 , 0x00003bb6 
- 00015265  0x0000336b beq  0x00000002 , 0x00003bb8 
- 00015266  0x0000336c branch  0x00003c17 
- 00015267  0x0000336f fetch  0x00000001 , 0x000044be 
- 00015268  0x00003370 branch  0x00003c17 , 0x00000034 
- 00015269  0x00003371 storet  0x00000001 , 0x000044c6 
- 00015270  0x00003372 jam  0x0000000d , 0x00004456 
- 00015271  0x00003373 branch  0x00003bb4 
- 00015272  0x00003375 fetch  0x00000001 , 0x000044be 
- 00015273  0x00003376 branch  0x00003c17 , 0x00000034 
- 00015274  0x00003377 storet  0x00000001 , 0x000044c6 
- 00015275  0x00003378 jam  0x0000000d , 0x00004456 
- 00015276  0x00003379 jam  0x00000001 , 0x00004454 
- 00015277  0x0000337a branch  0x00003c1a 
- 00015278  0x0000337c fetch  0x00000001 , 0x000044be 
- 00015279  0x0000337d branch  0x00003c17 , 0x00000034 
- 00015280  0x0000337e storet  0x00000001 , 0x000044c6 
- 00015281  0x0000337f jam  0x0000000d , 0x00004456 
- 00015282  0x00003380 branch  0x00003bb9 
- 00015283  0x00003382 jam  0x00000000 , 0x00004456 
- 00015284  0x00003384 jam  0x00000003 , 0x00004454 
- 00015285  0x00003385 branch  0x00003c1a 
- 00015286  0x00003387 jam  0x00000005 , 0x00004456 
- 00015287  0x00003388 branch  0x00003bb4 
- 00015288  0x0000338a jam  0x00000005 , 0x00004456 
- 00015289  0x0000338c jam  0x00000000 , 0x00004454 
- 00015290  0x0000338d branch  0x00003c1a 
- 00015291  0x00003392 fetch  0x00000001 , 0x00000b04 
- 00015292  0x00003393 sub  0x0000003f , 0x0000001f , 0x0000003e 
- 00015293  0x00003394 nbranch  0x00003c17 , 0x00000002 
- 00015294  0x00003395 store  0x00000001 , 0x0000436f 
- 00015295  0x00003396 copy  0x0000003f , 0x00000039 
- 00015296  0x00003397 copy  0x00000011 , 0x00000003 
- 00015297  0x00003398 arg  0x00004370 , 0x00000005 
- 00015298  0x00003399 call  0x000066ea 
- 00015299  0x0000339a branch  0x00003c1a 
- 00015300  0x0000339f fetch  0x00000001 , 0x00000b04 
- 00015301  0x000033a0 sub  0x0000003f , 0x0000001f , 0x0000003e 
- 00015302  0x000033a1 nbranch  0x00003c17 , 0x00000002 
- 00015303  0x000033a2 store  0x00000001 , 0x0000438f 
- 00015304  0x000033a3 copy  0x0000003f , 0x00000039 
- 00015305  0x000033a4 copy  0x00000011 , 0x00000003 
- 00015306  0x000033a5 arg  0x00004390 , 0x00000005 
- 00015307  0x000033a6 call  0x000066ea 
- 00015308  0x000033a7 branch  0x00003c1a 
- 00015309  0x000033ac fetch  0x00000002 , 0x00004682 
- 00015310  0x000033ad bbit0  0x00000009 , 0x00003c17 
- 00015311  0x000033ae fetch  0x00000001 , 0x00000b04 
- 00015312  0x000033af bne  0x00000008 , 0x00003c17 
- 00015313  0x000033b0 copy  0x00000011 , 0x00000003 
- 00015314  0x000033b1 ifetch  0x00000008 , 0x00000003 
- 00015315  0x000033b2 store  0x00000008 , 0x00004496 
- 00015316  0x000033b3 jam  0x00000012 , 0x00000a99 
- 00015317  0x000033b4 call  0x00007d8f 
- 00015318  0x000033b5 branch  0x00003c1a 
- 00015319  0x000033ba ifetch  0x00000002 , 0x00000003 
- 00015320  0x000033bb store  0x00000002 , 0x00004482 
- 00015321  0x000033bc branch  0x00003c1a 
- 00015322  0x000033c1 fetch  0x00000001 , 0x000044c6 
- 00015323  0x000033c2 branch  0x00003c17 , 0x00000034 
- 00015324  0x000033c3 fetch  0x00000001 , 0x000044c4 
- 00015325  0x000033c4 bne  0x00000000 , 0x00003c17 
- 00015326  0x000033c5 fetch  0x00000001 , 0x000044c5 
- 00015327  0x000033c6 bne  0x00000000 , 0x00003c17 
- 00015328  0x000033c7 call  0x00007e25 
- 00015329  0x000033c8 branch  0x00003c1a 
- 00015330  0x000033cd fetch  0x00000001 , 0x00000b04 
- 00015331  0x000033ce bne  0x00000005 , 0x00003c17 
- 00015332  0x000033cf ifetch  0x00000001 , 0x00000003 
- 00015333  0x000033d0 store  0x00000001 , 0x000046a2 
- 00015334  0x000033d1 ifetch  0x00000004 , 0x00000003 
- 00015335  0x000033d2 store  0x00000004 , 0x000046a3 
- 00015336  0x000033d3 fetcht  0x00000001 , 0x000046a2 
- 00015337  0x000033d4 call  0x0000680e 
- 00015338  0x000033d5 call  0x00003cbc 
- 00015339  0x000033d6 branch  0x00003c1a 
- 00015340  0x000033db fetch  0x00000001 , 0x00000b04 
- 00015341  0x000033dc bne  0x00000001 , 0x00003c17 
- 00015342  0x000033dd ifetch  0x00000001 , 0x00000003 
- 00015343  0x000033de store  0x00000001 , 0x000041de 
- 00015344  0x000033df branch  0x00003c1a 
- 00015345  0x000033e4 ifetch  0x00000001 , 0x00000003 
- 00015346  0x000033e5 beq  0x00000001 , 0x00003bfa 
- 00015347  0x000033e6 fetch  0x00000001 , 0x000044c1 
- 00015348  0x000033e7 beq  0x00000003 , 0x00003bf8 
- 00015349  0x000033e8 beq  0x00000006 , 0x00003bf8 
- 00015350  0x000033e9 beq  0x00000007 , 0x00003bf8 
- 00015351  0x000033ea branch  0x00003c17 
- 00015352  0x000033ec jam  0x00000001 , 0x000044c2 
- 00015353  0x000033ed branch  0x00003c1a 
- 00015354  0x000033f0 call  0x00005b53 
- 00015355  0x000033f1 branch  0x00003c1a 
- 00015356  0x000033f6 fetch  0x00000001 , 0x00000b04 
- 00015357  0x000033f7 bne  0x00000001 , 0x00003c17 
- 00015358  0x000033f8 call  0x00003c1a 
- 00015359  0x000033f9 ifetch  0x00000001 , 0x00000003 
- 00015360  0x000033fa branch  0x000060cb , 0x00000034 
- 00015361  0x000033fb branch  0x000060c9 
- 00015362  0x00003400 call  0x00003c1a 
- 00015363  0x00003401 call  0x00007f9e 
- 00015364  0x00003402 jam  0x00000001 , 0x00008010 
- 00015365  0x00003403 branch  0x00002a8e 
- 00015366  0x00003408 fetch  0x00000001 , 0x00000b04 
- 00015367  0x00003409 beq  0x00000000 , 0x00003c17 
- 00015368  0x0000340a ifetch  0x00000001 , 0x00000003 
- 00015369  0x0000340b branch  0x00003c13 , 0x00000034 
- 00015370  0x0000340c fetch  0x00000001 , 0x00000b04 
- 00015371  0x0000340d bne  0x00000005 , 0x00003c17 
- 00015372  0x0000340e ifetch  0x00000004 , 0x00000003 
- 00015373  0x0000340f arg  0x000f4240 , 0x00000002 
- 00015374  0x00003410 isub  0x00000002 , 0x0000003e 
- 00015375  0x00003411 branch  0x00003c17 , 0x00000002 
- 00015376  0x00003412 store  0x00000004 , 0x000044c7 
- 00015377  0x00003413 call  0x0000580c 
- 00015378  0x00003414 branch  0x00003c1a 
- 00015379  0x00003417 call  0x0000580e 
- 00015380  0x00003418 branch  0x00003c1a 
- 00015381  0x0000341d jam  0x00000000 , 0x00004091 
- 00015382  0x0000341e branch  0x00003c1a 
- 00015383  0x00003424 arg  0x00000001 , 0x00000002 
- 00015384  0x00003425 arg  0x00000000 , 0x00000011 
- 00015385  0x00003426 branch  0x00003c25 
- 00015386  0x0000342a arg  0x00000000 , 0x00000002 
- 00015387  0x0000342b arg  0x00000000 , 0x00000011 
- 00015388  0x0000342c branch  0x00003c25 
- 00015389  0x00003431 jam  0x00000000 , 0x00000b03 
- 00015390  0x00003432 branch  0x00003c49 
- 00015391  0x00003437 jam  0x00000002 , 0x00000b03 
- 00015392  0x00003438 branch  0x00003c49 
- 00015393  0x0000343d jam  0x00000003 , 0x00000b03 
- 00015394  0x0000343e branch  0x00003c49 
- 00015395  0x00003443 jam  0x00000005 , 0x00000b03 
- 00015396  0x00003444 branch  0x00003c49 
- 00015397  0x0000344d fetch  0x00000001 , 0x00000b03 
- 00015398  0x0000344e copy  0x0000003f , 0x00000013 
- 00015399  0x0000344f jam  0x00000006 , 0x00000b03 
- 00015400  0x00003450 setarg  0x00000002 
- 00015401  0x00003451 iadd  0x00000011 , 0x0000003f 
- 00015402  0x00003452 call  0x00003ca7 
- 00015403  0x00003453 copy  0x00000013 , 0x0000003f 
- 00015404  0x00003454 istore  0x00000001 , 0x0000000a 
- 00015405  0x00003455 istoret  0x00000001 , 0x0000000a 
- 00015406  0x00003456 copy  0x00000011 , 0x00000039 
- 00015407  0x00003457 copy  0x00000012 , 0x00000006 
- 00015408  0x00003458 call  0x000066e4 
- 00015409  0x00003459 branch  0x000066c5 
- 00015410  0x0000345f call  0x0000397f 
- 00015411  0x00003460 jam  0x00000007 , 0x00000b03 
- 00015412  0x00003461 fetch  0x00000001 , 0x000004ff 
- 00015413  0x00003462 rtn  0x00000034 
- 00015414  0x00003463 call  0x00003ca7 
- 00015415  0x00003464 fetch  0x00000001 , 0x000004ff 
- 00015416  0x00003465 copy  0x0000003f , 0x00000039 
- 00015417  0x00003466 fetch  0x00000002 , 0x00000501 
- 00015418  0x00003467 copy  0x0000003f , 0x00000006 
- 00015419  0x00003468 call  0x000066d1 
- 00015420  0x00003469 branch  0x000066c5 
- 00015421  0x0000346e jam  0x00000008 , 0x00000b03 
- 00015422  0x0000346f fetch  0x00000001 , 0x000046b6 
- 00015423  0x00003470 icopy  0x00000039 
- 00015424  0x00003471 increase  0x00000002 , 0x0000003f 
- 00015425  0x00003472 call  0x00003ca7 
- 00015426  0x00003473 fetch  0x00000002 , 0x000046b9 
- 00015427  0x00003474 istore  0x00000002 , 0x0000000a 
- 00015428  0x00003475 fetch  0x00000002 , 0x000046b7 
- 00015429  0x00003476 icopy  0x00000006 
- 00015430  0x00003477 call  0x000066d1 
- 00015431  0x00003478 branch  0x000066c5 
- 00015432  0x0000347d jam  0x00000009 , 0x00000b03 
- 00015433  0x0000347f setarg  0x00000000 
- 00015434  0x00003480 call  0x00003ca7 
- 00015435  0x00003481 branch  0x000066c5 
- 00015436  0x00003486 jam  0x0000000a , 0x00000b03 
- 00015437  0x00003487 setarg  0x00000001 
- 00015438  0x00003488 call  0x00003ca7 
- 00015439  0x0000348a call  0x00003c5d 
- 00015440  0x0000348c fetch  0x00000002 , 0x00004682 
- 00015441  0x0000348d arg  0x00000002 , 0x00000007 
- 00015442  0x0000348e qisolate1  0x0000003f 
- 00015443  0x0000348f setflag  0x00000001 , 0x00000003 , 0x00000002 
- 00015444  0x00003491 arg  0x00000009 , 0x00000007 
- 00015445  0x00003492 qisolate1  0x0000003f 
- 00015446  0x00003493 setflag  0x00000001 , 0x00000005 , 0x00000002 
- 00015447  0x00003495 fetch  0x00000001 , 0x00004682 
- 00015448  0x00003496 arg  0x00000004 , 0x00000007 
- 00015449  0x00003497 qisolate1  0x0000003f 
- 00015450  0x00003498 setflag  0x00000001 , 0x00000004 , 0x00000002 
- 00015451  0x0000349a istoret  0x00000001 , 0x0000000a 
- 00015452  0x0000349b branch  0x000066c5 
- 00015453  0x000034a0 arg  0x00000000 , 0x00000002 
- 00015454  0x000034a1 fetch  0x00000001 , 0x00004093 
- 00015455  0x000034a2 arg  0x00000000 , 0x00000007 
- 00015456  0x000034a3 qisolate1  0x0000003f 
- 00015457  0x000034a4 setflag  0x00000001 , 0x00000000 , 0x00000002 
- 00015458  0x000034a5 arg  0x00000001 , 0x00000007 
- 00015459  0x000034a6 qisolate1  0x0000003f 
- 00015460  0x000034a7 setflag  0x00000001 , 0x00000001 , 0x00000002 
- 00015461  0x000034a9 fetch  0x00000001 , 0x0000436e 
- 00015462  0x000034aa arg  0x00000000 , 0x00000007 
- 00015463  0x000034ab qisolate1  0x0000003f 
- 00015464  0x000034ac setflag  0x00000001 , 0x00000002 , 0x00000002 
- 00015465  0x000034ad rtn 
- 00015466  0x000034b2 jam  0x0000000d , 0x00000b03 
- 00015467  0x000034b3 fetch  0x00000001 , 0x00004217 
- 00015468  0x000034b4 mul32  0x0000003f , 0x00000022 , 0x0000003f 
- 00015469  0x000034b5 icopy  0x00000039 
- 00015470  0x000034b6 call  0x00003ca7 
- 00015471  0x000034b7 fetch  0x00000002 , 0x00004215 
- 00015472  0x000034b8 icopy  0x00000006 
- 00015473  0x000034b9 call  0x000066d1 
- 00015474  0x000034ba branch  0x000066c5 
- 00015475  0x000034bf jam  0x0000000e , 0x00000b03 
- 00015476  0x000034c0 setarg  0x00000004 
- 00015477  0x000034c1 call  0x00003ca7 
- 00015478  0x000034c2 fetch  0x00000004 , 0x000009ba 
- 00015479  0x000034c3 istore  0x00000004 , 0x0000000a 
- 00015480  0x000034c4 branch  0x000066c5 
- 00015481  0x000034c9 jam  0x0000000f , 0x00000b03 
- 00015482  0x000034ca hfetch  0x00000002 , 0x00008112 
- 00015483  0x000034cb arg  0x000000ff , 0x00000002 
- 00015484  0x000034cc call  0x00007fdd 
- 00015485  0x000034cd copy  0x0000003f , 0x00000039 
- 00015486  0x000034ce call  0x00003ca7 
- 00015487  0x000034cf call  0x000066cb 
- 00015488  0x000034d0 call  0x00006703 
- 00015489  0x000034d1 branch  0x000066c5 
- 00015490  0x000034d6 jam  0x00000010 , 0x00000b03 
- 00015491  0x000034d7 branch  0x00003c49 
- 00015492  0x000034dc jam  0x00000011 , 0x00000b03 
- 00015493  0x000034dd setarg  0x00000004 
- 00015494  0x000034de call  0x00003ca7 
- 00015495  0x000034df fetch  0x00000004 , 0x000044c7 
- 00015496  0x000034e0 istore  0x00000004 , 0x0000000a 
- 00015497  0x000034e1 branch  0x000066c5 
- 00015498  0x000034e6 arg  0x00000180 , 0x00000011 
- 00015499  0x000034e7 branch  0x00003c91 
- 00015500  0x000034ea arg  0x00000080 , 0x00000011 
- 00015501  0x000034eb branch  0x00003c91 
- 00015502  0x000034ee arg  0x00000101 , 0x00000011 
- 00015503  0x000034ef branch  0x00003c91 
- 00015504  0x000034f2 arg  0x00000001 , 0x00000011 
- 00015505  0x000034f5 jam  0x00000000 , 0x00004661 
- 00015506  0x000034f6 jam  0x00000014 , 0x00000b03 
- 00015507  0x000034f7 setarg  0x00000002 
- 00015508  0x000034f8 call  0x00003ca7 
- 00015509  0x000034f9 copy  0x00000011 , 0x0000003f 
- 00015510  0x000034fa istore  0x00000002 , 0x0000000a 
- 00015511  0x000034fb branch  0x000066c5 
- 00015512  0x00003500 arg  0x00000000 , 0x00000013 
- 00015513  0x00003501 branch  0x00003c9b 
- 00015514  0x00003504 arg  0x00000001 , 0x00000013 
- 00015515  0x00003507 jam  0x00000015 , 0x00000b03 
- 00015516  0x00003508 setarg  0x00000001 
- 00015517  0x00003509 call  0x00003ca7 
- 00015518  0x0000350a copy  0x00000013 , 0x0000003f 
- 00015519  0x0000350b istore  0x00000001 , 0x0000000a 
- 00015520  0x0000350c branch  0x000066c5 
- 00015521  0x00003511 jam  0x0000001d , 0x00000b03 
- 00015522  0x00003512 setarg  0x00000004 
- 00015523  0x00003513 call  0x00003ca7 
- 00015524  0x00003514 fetch  0x00000004 , 0x000009ba 
- 00015525  0x00003515 istore  0x00000004 , 0x0000000a 
- 00015526  0x00003516 branch  0x000066c5 
- 00015527  0x00003522 jam  0x00000002 , 0x00000b02 
- 00015528  0x00003523 store  0x00000001 , 0x00000b04 
- 00015529  0x00003524 storet  0x00000008 , 0x00000aa2 
- 00015530  0x00003525 bpatch  0x000000e2 , 0x0000401c 
- 00015531  0x00003526 call  0x00003cb1 
- 00015532  0x00003527 fetcht  0x00000008 , 0x00000aa2 
- 00015533  0x00003528 call  0x000066c2 
- 00015534  0x00003529 fetch  0x00000003 , 0x00000b02 
- 00015535  0x0000352a istore  0x00000003 , 0x0000000a 
- 00015536  0x0000352b rtn 
- 00015537  0x0000352f call  0x00003cba 
- 00015538  0x00003530 rtn  0x00000001 
- 00015539  0x00003532 call  0x00003cb8 
- 00015540  0x00003533 fetch  0x00000004 , 0x000046a3 
- 00015541  0x00003534 rshift2  0x0000003f , 0x0000003f 
- 00015542  0x00003535 rtn  0x00000034 
- 00015543  0x00003536 branch  0x00003cbe 
- 00015544  0x0000353a fetcht  0x00000001 , 0x000046a2 
- 00015545  0x0000353b branch  0x00006829 
- 00015546  0x0000353e fetcht  0x00000001 , 0x000046a2 
- 00015547  0x0000353f branch  0x0000681b 
- 00015548  0x00003542 fetcht  0x00000001 , 0x000046a2 
- 00015549  0x00003543 branch  0x00006825 
- 00015550  0x00003547 increase  0xffffffff , 0x0000003f 
- 00015551  0x00003548 nop  0x00000026 
- 00015552  0x00003549 nbranch  0x00003cbe , 0x00000034 
- 00015553  0x0000354a rtn 
- 00015554  0x00003554 call  0x00003ad4 
- 00015555  0x00003555 rtn  0x00000028 
- 00015556  0x00003556 copy  0x00000011 , 0x0000003f 
- 00015557  0x00003557 store  0x00000002 , 0x000046b7 
- 00015558  0x00003558 copy  0x00000012 , 0x0000003f 
- 00015559  0x00003559 store  0x00000001 , 0x000046b6 
- 00015560  0x0000355a fetch  0x00000002 , 0x00000478 
- 00015561  0x0000355b fetcht  0x00000002 , 0x000046bb 
- 00015562  0x0000355c isub  0x00000002 , 0x0000003e 
- 00015563  0x0000355d branch  0x00003ccf , 0x00000005 
- 00015564  0x0000355e fetcht  0x00000002 , 0x000046bd 
- 00015565  0x0000355f isub  0x00000002 , 0x0000003e 
- 00015566  0x00003560 nrtn  0x00000005 
- 00015567  0x00003562 store  0x00000002 , 0x000046b9 
- 00015568  0x00003563 branch  0x00003c3d 
- 00015569  0x00003569 fetch  0x00000001 , 0x000046bf 
- 00015570  0x0000356a rtnbit1  0x00000005 
- 00015571  0x0000356b call  0x00003cf0 
- 00015572  0x0000356c branch  0x0000340c 
- 00015573  0x00003570 jam  0x00000002 , 0x00004172 
- 00015574  0x00003571 rtn 
- 00015575  0x00003576 branch  0x00003cd8 
- 00015576  0x00003579 fetch  0x00000001 , 0x000046b2 
- 00015577  0x0000357a rtn  0x00000034 
- 00015578  0x0000357b fetch  0x00000001 , 0x000046b3 
- 00015579  0x0000357c rtn  0x00000034 
- 00015580  0x0000357d increase  0xffffffff , 0x0000003f 
- 00015581  0x0000357e store  0x00000001 , 0x000046b3 
- 00015582  0x0000357f nrtn  0x00000034 
- 00015583  0x00003580 jam  0x0000000a , 0x000046b3 
- 00015584  0x00003581 call  0x000068eb 
- 00015585  0x00003582 call  0x00006908 
- 00015586  0x00003583 div  0x0000003f , 0x00000064 
- 00015587  0x00003584 call  0x00007f86 
- 00015588  0x00003585 quotient  0x0000003f 
- 00015589  0x00003586 remainder  0x00000002 
- 00015590  0x00003587 store  0x00000001 , 0x000046b4 
- 00015591  0x00003588 storet  0x00000001 , 0x000046b5 
- 00015592  0x00003589 rtn 
- 00015593  0x0000358d call  0x00007fb4 
- 00015594  0x0000358e branch  0x000033d9 , 0x00000002 
- 00015595  0x0000358f branch  0x000033db 
- 00015596  0x00003594 arg  0x00000006 , 0x00000007 
- 00015597  0x00003595 branch  0x00003cfc 
- 00015598  0x00003598 arg  0x00000006 , 0x00000007 
- 00015599  0x00003599 branch  0x00003cf8 
- 00015600  0x0000359c arg  0x00000005 , 0x00000007 
- 00015601  0x0000359d branch  0x00003cfc 
- 00015602  0x000035a0 arg  0x00000005 , 0x00000007 
- 00015603  0x000035a1 branch  0x00003cf8 
- 00015604  0x000035a4 arg  0x00000004 , 0x00000007 
- 00015605  0x000035a5 branch  0x00003cfc 
- 00015606  0x000035a8 arg  0x00000004 , 0x00000007 
- 00015607  0x000035a9 branch  0x00003cf8 
- 00015608  0x000035ac fetch  0x00000001 , 0x000046bf 
- 00015609  0x000035ad qset0  0x0000003f 
- 00015610  0x000035ae store  0x00000001 , 0x000046bf 
- 00015611  0x000035af rtn 
- 00015612  0x000035b2 fetch  0x00000001 , 0x000046bf 
- 00015613  0x000035b3 qset1  0x0000003f 
- 00015614  0x000035b4 store  0x00000001 , 0x000046bf 
- 00015615  0x000035b5 rtn 
- 00015616  0x000035c0 call  0x00003d39 
- 00015617  0x000035c1 call  0x0000640f 
- 00015618  0x000035c2 call  0x000040c6 
- 00015619  0x000035c3 call  0x00003d66 
- 00015620  0x000035c4 call  0x00006411 
- 00015621  0x000035c5 rtn  0x0000002b 
- 00015622  0x000035c6 call  0x00003d16 
- 00015623  0x000035c7 call  0x00003d19 
- 00015624  0x000035ca fetch  0x00000004 , 0x000046d3 
- 00015625  0x000035cb rtnbit1  0x00000010 
- 00015626  0x000035cc call  0x00003d4e 
- 00015627  0x000035cd rtnmark1  0x00000026 
- 00015628  0x000035ce fetch  0x00000002 , 0x00004682 
- 00015629  0x000035cf bbit1  0x0000000c , 0x000042b0 
- 00015630  0x000035d0 branch  0x000042a2 
- 00015631  0x000035d4 fetch  0x00000004 , 0x000046d3 
- 00015632  0x000035d5 rtnbit0  0x0000001b 
- 00015633  0x000035d6 arg  0x00000014 , 0x00000039 
- 00015634  0x000035d8 setarg  0x00030d40 
- 00015635  0x000035d9 call  0x00002a8f 
- 00015636  0x000035da loop  0x00007ec1 
- 00015637  0x000035db rtn 
- 00015638  0x000035df fetch  0x00000004 , 0x000046d3 
- 00015639  0x000035e0 rtnbit0  0x00000010 
- 00015640  0x000035e1 branch  0x000048ea 
- 00015641  0x000035e5 setarg  0x0000416d 
- 00015642  0x000035e6 store  0x00000002 , 0x000041ef 
- 00015643  0x000035e7 setarg  0x00003f77 
- 00015644  0x000035e8 store  0x00000002 , 0x000041f1 
- 00015645  0x000035e9 setarg  0x00003ebb 
- 00015646  0x000035ea store  0x00000002 , 0x000041ed 
- 00015647  0x000035eb setarg  0x0000417c 
- 00015648  0x000035ec store  0x00000002 , 0x000041f5 
- 00015649  0x000035ed setarg  0x00003de3 
- 00015650  0x000035ee store  0x00000002 , 0x000041f3 
- 00015651  0x000035ef setarg  0x00003eb3 
- 00015652  0x000035f0 store  0x00000002 , 0x000041eb 
- 00015653  0x000035f1 setarg  0x00003d5b 
- 00015654  0x000035f2 store  0x00000002 , 0x000041f9 
- 00015655  0x000035f4 call  0x00002c7a 
- 00015656  0x000035f5 setarg  0x00004401 
- 00015657  0x000035f6 add  0x00000013 , 0x000000d8 , 0x00000005 
- 00015658  0x000035f7 istore  0x00000002 , 0x00000005 
- 00015659  0x000035f8 setarg  0x00004406 
- 00015660  0x000035f9 add  0x00000013 , 0x000000da , 0x00000005 
- 00015661  0x000035fa istore  0x00000002 , 0x00000005 
- 00015662  0x000035fb setarg  0x00003ebf 
- 00015663  0x000035fc add  0x00000013 , 0x000000dc , 0x00000005 
- 00015664  0x000035fd istore  0x00000002 , 0x00000005 
- 00015665  0x000035ff setarg  0x000041f9 
- 00015666  0x00003600 store  0x00000002 , 0x000041fd 
- 00015667  0x00003601 setarg  0x00003d36 
- 00015668  0x00003602 store  0x00000002 , 0x00004201 
- 00015669  0x00003603 rtn 
- 00015670  0x00003606 fetch  0x00000004 , 0x000046d3 
- 00015671  0x00003607 bbit0  0x00000012 , 0x000064d7 
- 00015672  0x00003608 branch  0x000064da 
- 00015673  0x0000360b rtn  0x0000002b 
- 00015674  0x0000360c call  0x00002c9d 
- 00015675  0x0000360d call  0x00003e6e 
- 00015676  0x0000360e call  0x00003e1e 
- 00015677  0x0000360f call  0x00003e54 
- 00015678  0x00003610 call  0x00005810 
- 00015679  0x00003611 call  0x00005839 
- 00015680  0x00003612 call  0x0000582c 
- 00015681  0x00003613 call  0x00005818 
- 00015682  0x00003614 fetch  0x00000004 , 0x000046d3 
- 00015683  0x00003615 bbit1  0x00000014 , 0x00003d46 
- 00015684  0x00003616 bbit1  0x00000013 , 0x00004414 
- 00015685  0x00003617 rtn 
- 00015686  0x0000361a call  0x0000659c 
- 00015687  0x0000361b fetch  0x00000004 , 0x000046d3 
- 00015688  0x0000361c isolate1  0x00000019 , 0x0000003f 
- 00015689  0x0000361d ncall  0x000065c2 , 0x00000001 
- 00015690  0x0000361e call  0x0000443f 
- 00015691  0x0000361f call  0x00003dc9 
- 00015692  0x00003620 call  0x000041aa 
- 00015693  0x00003621 branch  0x000065df 
- 00015694  0x00003624 fetch  0x00000004 , 0x000046d3 
- 00015695  0x00003625 bbit0  0x0000001e , 0x00003d53 
- 00015696  0x00003626 fetch  0x00000001 , 0x00000abd 
- 00015697  0x00003627 isolate0  0x00000003 , 0x0000003f 
- 00015698  0x00003628 nrtn  0x00000001 
- 00015699  0x0000362a fetch  0x00000001 , 0x0000471f 
- 00015700  0x0000362b store  0x00000001 , 0x0000471e 
- 00015701  0x0000362c fetch  0x00000001 , 0x000046f5 
- 00015702  0x0000362d rtnbit1  0x00000006 
- 00015703  0x0000362f fetch  0x00000004 , 0x000046d3 
- 00015704  0x00003630 rtnbit0  0x00000011 
- 00015705  0x00003631 bbit1  0x0000001d , 0x00002ee4 
- 00015706  0x00003632 branch  0x00002f2c 
- 00015707  0x00003634 fetch  0x00000001 , 0x00000478 
- 00015708  0x00003635 sub  0x0000003f , 0x0000001a , 0x0000003f 
- 00015709  0x00003636 nrtn  0x00000005 
- 00015710  0x00003637 jam  0x00000012 , 0x00000a99 
- 00015711  0x00003638 call  0x00007d8f 
- 00015712  0x0000363a arg  0x00000000 , 0x00000007 
- 00015713  0x0000363b branch  0x000041b9 
- 00015714  0x0000363e fetch  0x00000001 , 0x000046b6 
- 00015715  0x0000363f rtneq  0x00000001 
- 00015716  0x00003640 jam  0x00000001 , 0x000046b6 
- 00015717  0x00003641 rtn 
- 00015718  0x00003643 fetch  0x00000001 , 0x000046e1 
- 00015719  0x00003644 and  0x0000003f , 0x0000000f , 0x0000003f 
- 00015720  0x00003645 store  0x00000001 , 0x0000477a 
- 00015721  0x00003646 branch  0x00003d80 
- 00015722  0x0000364a fetcht  0x00000001 , 0x000046e7 
- 00015723  0x0000364b call  0x0000681d 
- 00015724  0x0000364c nbranch  0x00003d62 , 0x00000001 
- 00015725  0x0000364e fetch  0x00000001 , 0x000046b6 
- 00015726  0x0000364f rtneq  0x00000000 
- 00015727  0x00003650 jam  0x00000000 , 0x000046b6 
- 00015728  0x00003652 fetch  0x00000001 , 0x0000477a 
- 00015729  0x00003653 increase  0x00000001 , 0x0000003f 
- 00015730  0x00003654 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00015731  0x00003655 store  0x00000001 , 0x0000477a 
- 00015732  0x00003656 call  0x00003d7e 
- 00015733  0x00003657 fetch  0x00000004 , 0x000046d3 
- 00015734  0x00003658 bbit1  0x00000014 , 0x0000443b 
- 00015735  0x00003659 bbit1  0x00000013 , 0x00003d79 
- 00015736  0x0000365a rtn 
- 00015737  0x0000365c arg  0x0000001e , 0x00000002 
- 00015738  0x0000365d call  0x0000680e 
- 00015739  0x0000365e arg  0x0000001f , 0x00000002 
- 00015740  0x0000365f call  0x0000680e 
- 00015741  0x00003660 branch  0x00004435 
- 00015742  0x00003663 bpatch  0x000000e3 , 0x0000401c 
- 00015743  0x00003664 call  0x0000424a 
- 00015744  0x00003665 fetch  0x00000001 , 0x000046e0 
- 00015745  0x00003666 beq  0x00000005 , 0x00003daa 
- 00015746  0x00003667 beq  0x00000004 , 0x00003d96 
- 00015747  0x00003668 fetch  0x00000001 , 0x0000477a 
- 00015748  0x00003669 beq  0x00000000 , 0x00003d8a 
- 00015749  0x0000366a beq  0x00000001 , 0x00003d88 
- 00015750  0x0000366b beq  0x00000002 , 0x00003d8c 
- 00015751  0x0000366c beq  0x00000003 , 0x00003d8e 
- 00015752  0x0000366e fetch  0x00000001 , 0x00004780 
- 00015753  0x0000366f branch  0x00003dbe 
- 00015754  0x00003671 fetch  0x00000001 , 0x0000477f 
- 00015755  0x00003672 branch  0x00003dbe 
- 00015756  0x00003674 fetch  0x00000001 , 0x00004781 
- 00015757  0x00003675 branch  0x00003dbe 
- 00015758  0x00003677 fetch  0x00000001 , 0x00004782 
- 00015759  0x00003678 branch  0x00003dbe 
- 00015760  0x0000367a fetch  0x00000001 , 0x000046e0 
- 00015761  0x0000367b rtneq  0x00000006 
- 00015762  0x0000367c fetch  0x00000001 , 0x000046b5 
- 00015763  0x0000367d increase  0x00000001 , 0x0000003f 
- 00015764  0x0000367e store  0x00000001 , 0x000046b5 
- 00015765  0x0000367f rtn 
- 00015766  0x00003682 fetch  0x00000001 , 0x0000477a 
- 00015767  0x00003683 beq  0x00000000 , 0x00003d9d 
- 00015768  0x00003684 beq  0x00000001 , 0x00003d9b 
- 00015769  0x00003685 beq  0x00000002 , 0x00003d9f 
- 00015770  0x00003686 beq  0x00000003 , 0x00003da1 
- 00015771  0x00003688 fetch  0x00000001 , 0x00004784 
- 00015772  0x00003689 branch  0x00003da2 
- 00015773  0x0000368b fetch  0x00000001 , 0x00004783 
- 00015774  0x0000368c branch  0x00003da2 
- 00015775  0x0000368e fetch  0x00000001 , 0x00004785 
- 00015776  0x0000368f branch  0x00003da2 
- 00015777  0x00003691 fetch  0x00000001 , 0x00004786 
- 00015778  0x00003693 store  0x00000001 , 0x000046b5 
- 00015779  0x00003694 lshift8  0x0000003f , 0x0000003f 
- 00015780  0x00003695 copy  0x0000003f , 0x00000011 
- 00015781  0x00003696 add  0x0000003f , 0x0000000d , 0x0000003f 
- 00015782  0x00003697 call  0x00006413 
- 00015783  0x00003698 copy  0x00000011 , 0x0000003f 
- 00015784  0x00003699 add  0x0000003f , 0x0000000e , 0x0000003f 
- 00015785  0x0000369a branch  0x00006413 
- 00015786  0x0000369d fetch  0x00000001 , 0x0000477a 
- 00015787  0x0000369e beq  0x00000000 , 0x00003db1 
- 00015788  0x0000369f beq  0x00000001 , 0x00003daf 
- 00015789  0x000036a0 beq  0x00000002 , 0x00003db3 
- 00015790  0x000036a1 beq  0x00000003 , 0x00003db5 
- 00015791  0x000036a3 fetch  0x00000001 , 0x00004788 
- 00015792  0x000036a4 branch  0x00003db6 
- 00015793  0x000036a6 fetch  0x00000001 , 0x00004787 
- 00015794  0x000036a7 branch  0x00003db6 
- 00015795  0x000036a9 fetch  0x00000001 , 0x00004789 
- 00015796  0x000036aa branch  0x00003db6 
- 00015797  0x000036ac fetch  0x00000001 , 0x0000478a 
- 00015798  0x000036ae store  0x00000001 , 0x000046b5 
- 00015799  0x000036af call  0x000040c0 
- 00015800  0x000036b0 fetch  0x00000001 , 0x000046b5 
- 00015801  0x000036b2 add  0x0000003f , 0x00000080 , 0x0000003f 
- 00015802  0x000036b3 lshift8  0x0000003f , 0x0000003f 
- 00015803  0x000036b4 add  0x0000003f , 0x00000005 , 0x0000003f 
- 00015804  0x000036b5 copy  0x0000003f , 0x00000011 
- 00015805  0x000036b6 branch  0x0000415a 
- 00015806  0x000036b9 store  0x00000001 , 0x000046b5 
- 00015807  0x000036ba call  0x00003d90 
- 00015808  0x000036bb fetch  0x00000001 , 0x000046b5 
- 00015809  0x000036bc setarg  0x00000006 
- 00015810  0x000036bd call  0x00006414 
- 00015811  0x000036be and  0x0000003f , 0x000000f8 , 0x00000002 
- 00015812  0x000036bf fetch  0x00000001 , 0x000046b5 
- 00015813  0x000036c0 iadd  0x00000002 , 0x0000003f 
- 00015814  0x000036c1 lshift8  0x0000003f , 0x0000003f 
- 00015815  0x000036c2 add  0x0000003f , 0x00000006 , 0x0000003f 
- 00015816  0x000036c3 branch  0x00006413 
- 00015817  0x000036c7 call  0x000033c4 
- 00015818  0x000036c8 branch  0x00004316 , 0x00000005 
- 00015819  0x000036c9 call  0x0000441c 
- 00015820  0x000036ca call  0x000042e4 
- 00015821  0x000036cb branch  0x000033bd 
- 00015822  0x000036cf fetch  0x00000002 , 0x00004707 
- 00015823  0x000036d0 rtn  0x00000034 
- 00015824  0x000036d1 fetch  0x00000004 , 0x000046d3 
- 00015825  0x000036d2 rtnbit0  0x00000011 
- 00015826  0x000036d3 rtnbit1  0x00000003 
- 00015827  0x000036d4 rtnmark1  0x00000026 
- 00015828  0x000036d5 call  0x00004083 
- 00015829  0x000036d6 rtnne  0x00000007 
- 00015830  0x000036d7 call  0x00004482 
- 00015831  0x000036d8 arg  0x00000003 , 0x00000007 
- 00015832  0x000036d9 call  0x000043ce 
- 00015833  0x000036da setarg  0x00000000 
- 00015834  0x000036db store  0x00000002 , 0x000046ae 
- 00015835  0x000036dc store  0x00000001 , 0x000046b4 
- 00015836  0x000036dd call  0x00003263 
- 00015837  0x000036df fetch  0x00000002 , 0x00004682 
- 00015838  0x000036e0 bbit1  0x00000007 , 0x00004392 
- 00015839  0x000036e1 bbit1  0x00000009 , 0x00003402 
- 00015840  0x000036e2 bbit1  0x00000000 , 0x000033e9 
- 00015841  0x000036e3 call  0x000042ca 
- 00015842  0x000036e4 branch  0x00002ead 
- 00015843  0x000036e8 call  0x00003dce 
- 00015844  0x000036e9 call  0x00007e34 
- 00015845  0x000036ea call  0x00003d6a 
- 00015846  0x000036eb call  0x00003de9 
- 00015847  0x000036ec call  0x00003ee0 
- 00015848  0x000036ed branch  0x00003df7 
- 00015849  0x000036ef fetch  0x00000004 , 0x000046d3 
- 00015850  0x000036f0 rtnbit0  0x00000010 
- 00015851  0x000036f1 call  0x000048d3 
- 00015852  0x000036f2 branch  0x000048fd 
- 00015853  0x000036f5 hfetch  0x00000001 , 0x00008a04 
- 00015854  0x000036f6 bbit0  0x00000007 , 0x00003df1 
- 00015855  0x000036f7 bbit1  0x00000007 , 0x00003df4 
- 00015856  0x000036f8 rtn 
- 00015857  0x000036fa fetch  0x00000001 , 0x000046ff 
- 00015858  0x000036fb rtnbit0  0x00000007 
- 00015859  0x000036fc branch  0x0000659a 
- 00015860  0x000036fe fetch  0x00000001 , 0x000046ff 
- 00015861  0x000036ff rtnbit1  0x00000007 
- 00015862  0x00003700 branch  0x00004381 
- 00015863  0x00003703 call  0x00003ded 
- 00015864  0x00003704 hfetch  0x00000001 , 0x00008a04 
- 00015865  0x00003705 store  0x00000001 , 0x000046ff 
- 00015866  0x00003706 rtnbit0  0x00000007 
- 00015867  0x00003707 call  0x00003e07 
- 00015868  0x00003708 fetch  0x00000004 , 0x000046f9 
- 00015869  0x00003709 fetcht  0x00000001 , 0x000046fd 
- 00015870  0x0000370a iadd  0x00000002 , 0x00000002 
- 00015871  0x0000370b copy  0x00000022 , 0x0000003f 
- 00015872  0x0000370c isub  0x00000002 , 0x0000003e 
- 00015873  0x0000370d nrtn  0x00000002 
- 00015874  0x0000370e store  0x00000004 , 0x000046f9 
- 00015875  0x0000370f call  0x00003f97 
- 00015876  0x00003710 nrtn  0x00000028 
- 00015877  0x00003711 jam  0x00000004 , 0x00000d38 
- 00015878  0x00003712 branch  0x00003e0f 
- 00015879  0x00003715 fetcht  0x00000004 , 0x000046f9 
- 00015880  0x00003716 copy  0x00000022 , 0x0000003f 
- 00015881  0x00003717 isub  0x00000002 , 0x0000003e 
- 00015882  0x00003718 ncall  0x00003e0c , 0x00000002 
- 00015883  0x00003719 rtn 
- 00015884  0x0000371b setarg  0x00000000 
- 00015885  0x0000371c store  0x00000004 , 0x000046f9 
- 00015886  0x0000371d rtn 
- 00015887  0x00003722 fetch  0x00000001 , 0x00000d38 
- 00015888  0x00003723 rtnbit0  0x00000002 
- 00015889  0x00003724 branch  0x00003e12 
- 00015890  0x00003726 hfetch  0x00000001 , 0x00008a04 
- 00015891  0x00003727 rtnbit0  0x00000007 
- 00015892  0x00003728 jam  0x00000020 , 0x00000d52 
- 00015893  0x00003729 setarg  0x00000001 
- 00015894  0x0000372a store  0x00000001 , 0x00000d54 
- 00015895  0x0000372b fetch  0x00000007 , 0x0000469a 
- 00015896  0x0000372c istore  0x00000007 , 0x00000005 
- 00015897  0x0000372d rtn 
- 00015898  0x00003731 hfetch  0x00000002 , 0x00008050 
- 00015899  0x00003732 set0  0x0000000b , 0x0000003f 
- 00015900  0x00003733 hstore  0x00000002 , 0x00008050 
- 00015901  0x00003734 rtn 
- 00015902  0x00003737 setarg  0x00008c00 
- 00015903  0x00003738 store  0x00000002 , 0x00004575 
- 00015904  0x00003739 setarg  0x00008e7a 
- 00015905  0x0000373a store  0x00000002 , 0x000044bc 
- 00015906  0x0000373b setarg  0x00002402 
- 00015907  0x0000373c store  0x00000002 , 0x000040bd 
- 00015908  0x0000373d setarg  0x00002580 
- 00015909  0x0000373e store  0x00000003 , 0x000040aa 
- 00015910  0x0000373f jam  0x00000003 , 0x00004173 
- 00015911  0x00003740 jam  0x00000008 , 0x00004156 
- 00015912  0x00003741 jam  0x00000001 , 0x000046d9 
- 00015913  0x00003742 setarg  0x00000200 
- 00015914  0x00003743 store  0x00000002 , 0x00004154 
- 00015915  0x00003744 jam  0x00000017 , 0x000044a6 
- 00015916  0x00003745 jam  0x00000017 , 0x000044a8 
- 00015917  0x00003747 setarg  0x00000a77 
- 00015918  0x00003748 store  0x00000002 , 0x00004212 
- 00015919  0x00003758 setsect  0x00000000 , 0x00000306 
- 00015920  0x00003759 setsect  0x00000001 , 0x00004440 
- 00015921  0x0000375a setsect  0x00000002 , 0x00010000 
- 00015922  0x0000375b setsect  0x00000003 , 0x00004408 
- 00015923  0x0000375c store  0x00000009 , 0x00004577 
- 00015924  0x0000375d setsect  0x00000000 , 0x00001224 
- 00015925  0x0000375e setsect  0x00000001 , 0x00004000 
- 00015926  0x0000375f setsect  0x00000002 , 0x00000000 
- 00015927  0x00003760 istore  0x00000005 , 0x00000005 
- 00015928  0x00003762 setsect  0x00000000 , 0x0003ffff 
- 00015929  0x00003763 setsect  0x00000001 , 0x0002fe23 
- 00015930  0x00003764 setsect  0x00000002 , 0x000199d9 
- 00015931  0x00003765 setsect  0x00000003 , 0x0000020d 
- 00015932  0x00003766 store  0x00000008 , 0x00004098 
- 00015933  0x00003768 setarg  0x0000012c 
- 00015934  0x00003769 store  0x00000002 , 0x00004707 
- 00015935  0x0000376a call  0x000057a3 
- 00015936  0x0000376b fetch  0x00000004 , 0x000046d3 
- 00015937  0x0000376c rtnbit0  0x0000001f 
- 00015938  0x0000376d call  0x00003e44 
- 00015939  0x0000376e branch  0x00003e4c 
- 00015940  0x00003771 fetcht  0x00000001 , 0x000046f7 
- 00015941  0x00003772 call  0x000067fb 
- 00015942  0x00003773 fetcht  0x00000001 , 0x000046f7 
- 00015943  0x00003774 call  0x0000681d 
- 00015944  0x00003775 jam  0x00000003 , 0x000046f6 
- 00015945  0x00003776 rtn  0x00000001 
- 00015946  0x00003777 jam  0x00000002 , 0x000046f6 
- 00015947  0x00003778 rtn 
- 00015948  0x0000377b fetcht  0x00000001 , 0x000046f8 
- 00015949  0x0000377c call  0x000067fb 
- 00015950  0x0000377d fetcht  0x00000001 , 0x000046f8 
- 00015951  0x0000377e call  0x0000681d 
- 00015952  0x0000377f jam  0x00000000 , 0x0000422d 
- 00015953  0x00003780 rtn  0x00000001 
- 00015954  0x00003781 jam  0x00000002 , 0x0000422d 
- 00015955  0x00003782 rtn 
- 00015956  0x00003786 fetch  0x00000001 , 0x0000422d 
- 00015957  0x00003787 beq  0x00000000 , 0x00003e59 
- 00015958  0x00003788 beq  0x00000001 , 0x00003e62 
- 00015959  0x00003789 beq  0x00000002 , 0x00003e6b 
- 00015960  0x0000378a branch  0x00003e59 
- 00015961  0x0000378d fetcht  0x00000002 , 0x00004221 
- 00015962  0x0000378e fetch  0x00000002 , 0x00004227 
- 00015963  0x0000378f isub  0x00000002 , 0x0000003f 
- 00015964  0x00003790 mul32  0x0000003f , 0x00000014 , 0x0000003f 
- 00015965  0x00003791 div  0x0000003f , 0x00000064 
- 00015966  0x00003792 call  0x00007f86 
- 00015967  0x00003793 quotient  0x0000003f 
- 00015968  0x00003794 store  0x00000002 , 0x000046d0 
- 00015969  0x00003795 rtn 
- 00015970  0x00003797 fetcht  0x00000002 , 0x0000421f 
- 00015971  0x00003798 fetch  0x00000002 , 0x00004225 
- 00015972  0x00003799 isub  0x00000002 , 0x0000003f 
- 00015973  0x0000379a mul32  0x0000003f , 0x000000e6 , 0x0000003f 
- 00015974  0x0000379b div  0x0000003f , 0x00000190 
- 00015975  0x0000379c call  0x00007f86 
- 00015976  0x0000379d quotient  0x0000003f 
- 00015977  0x0000379e store  0x00000002 , 0x000046d0 
- 00015978  0x0000379f rtn 
- 00015979  0x000037a1 fetch  0x00000002 , 0x00004223 
- 00015980  0x000037a2 store  0x00000002 , 0x000046d0 
- 00015981  0x000037a3 rtn 
- 00015982  0x000037a5 fetcht  0x00000001 , 0x0000423a 
- 00015983  0x000037a6 call  0x0000680e 
- 00015984  0x000037a7 call  0x000048fb 
- 00015985  0x000037a8 fetcht  0x00000001 , 0x000046e2 
- 00015986  0x000037a9 call  0x000067fb 
- 00015987  0x000037aa fetcht  0x00000001 , 0x000046e3 
- 00015988  0x000037ab call  0x000067fb 
- 00015989  0x000037ac fetcht  0x00000001 , 0x000046e4 
- 00015990  0x000037ad call  0x000067fb 
- 00015991  0x000037ae fetcht  0x00000001 , 0x000046f3 
- 00015992  0x000037af call  0x000067fb 
- 00015993  0x000037b1 fetcht  0x00000001 , 0x000046dc 
- 00015994  0x000037b2 call  0x0000680e 
- 00015995  0x000037b4 fetcht  0x00000001 , 0x000046e8 
- 00015996  0x000037b5 call  0x000067fb 
- 00015997  0x000037b7 fetcht  0x00000001 , 0x000046e9 
- 00015998  0x000037b8 call  0x000067fb 
- 00015999  0x000037ba fetcht  0x00000001 , 0x000046ea 
- 00016000  0x000037bb call  0x000067fb 
- 00016001  0x000037bc fetcht  0x00000001 , 0x000046eb 
- 00016002  0x000037bd call  0x000067fb 
- 00016003  0x000037bf fetcht  0x00000001 , 0x000046e5 
- 00016004  0x000037c0 call  0x000067fb 
- 00016005  0x000037c1 fetcht  0x00000001 , 0x000046e6 
- 00016006  0x000037c2 call  0x000067fb 
- 00016007  0x000037c4 fetcht  0x00000001 , 0x000046ef 
- 00016008  0x000037c5 call  0x0000680e 
- 00016009  0x000037c7 fetcht  0x00000001 , 0x000046f0 
- 00016010  0x000037c8 call  0x0000680e 
- 00016011  0x000037ca fetcht  0x00000001 , 0x000046f1 
- 00016012  0x000037cb call  0x0000680e 
- 00016013  0x000037cd fetcht  0x00000001 , 0x000046f2 
- 00016014  0x000037ce call  0x0000680e 
- 00016015  0x000037d0 fetcht  0x00000001 , 0x000046f4 
- 00016016  0x000037d1 call  0x0000680e 
- 00016017  0x000037d3 fetcht  0x00000001 , 0x000046ed 
- 00016018  0x000037d4 call  0x000067fb 
- 00016019  0x000037d6 fetcht  0x00000001 , 0x000046ec 
- 00016020  0x000037d7 call  0x000067fb 
- 00016021  0x000037d9 fetcht  0x00000001 , 0x000046e7 
- 00016022  0x000037da branch  0x000067fb 
- 00016023  0x000037dd fetcht  0x00000001 , 0x000046e8 
- 00016024  0x000037de call  0x000067dd 
- 00016025  0x000037df fetcht  0x00000001 , 0x000046e9 
- 00016026  0x000037e0 call  0x000067dd 
- 00016027  0x000037e1 fetcht  0x00000001 , 0x000046ea 
- 00016028  0x000037e2 call  0x000067dd 
- 00016029  0x000037e3 fetcht  0x00000001 , 0x000046eb 
- 00016030  0x000037e4 branch  0x000067dd 
- 00016031  0x000037e7 fetcht  0x00000001 , 0x000046e8 
- 00016032  0x000037e8 call  0x00003ea7 
- 00016033  0x000037e9 fetcht  0x00000001 , 0x000046e9 
- 00016034  0x000037ea call  0x00003ea7 
- 00016035  0x000037eb fetcht  0x00000001 , 0x000046ea 
- 00016036  0x000037ec call  0x00003ea7 
- 00016037  0x000037ed fetcht  0x00000001 , 0x000046eb 
- 00016038  0x000037ee branch  0x00003ea7 
- 00016039  0x000037f1 sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00016040  0x000037f2 rtn  0x00000005 
- 00016041  0x000037f3 and  0x00000002 , 0x0000007f , 0x00000007 
- 00016042  0x000037f4 hfetch  0x00000004 , 0x0000811c 
- 00016043  0x000037f5 qisolate1  0x0000003f 
- 00016044  0x000037f6 hfetch  0x00000004 , 0x00008078 
- 00016045  0x000037f7 qsetflag  0x00000001 , 0x0000003f 
- 00016046  0x000037f8 hstore  0x00000004 , 0x00008078 
- 00016047  0x000037f9 hfetch  0x00000004 , 0x0000807c 
- 00016048  0x000037fa nqsetflag  0x00000001 , 0x0000003f 
- 00016049  0x000037fb hstore  0x00000004 , 0x0000807c 
- 00016050  0x000037fc rtn 
- 00016051  0x000037ff enable  0x00000028 
- 00016052  0x00003800 hfetch  0x00000004 , 0x00008138 
- 00016053  0x00003801 setflag  0x00000028 , 0x0000001a , 0x0000003f 
- 00016054  0x00003802 hstore  0x00000004 , 0x0000804c 
- 00016055  0x00003803 call  0x00002c21 
- 00016056  0x00003804 call  0x00004482 
- 00016057  0x00003805 call  0x00003e9f 
- 00016058  0x00003807 branch  0x00003ebf 
- 00016059  0x0000380c call  0x00003ebf 
- 00016060  0x0000380d fetch  0x00000001 , 0x000000a0 
- 00016061  0x0000380e nrtn  0x00000034 
- 00016062  0x0000380f branch  0x000067ed 
- 00016063  0x00003812 call  0x00003ee0 
- 00016064  0x00003813 arg  0x00000019 , 0x00000002 
- 00016065  0x00003814 fetch  0x00000004 , 0x000046d3 
- 00016066  0x00003815 isolate1  0x00000012 , 0x0000003f 
- 00016067  0x00003816 call  0x00003ede , 0x00000001 
- 00016068  0x00003817 call  0x0000680e 
- 00016069  0x00003818 call  0x000063ee 
- 00016070  0x0000381c fetcht  0x00000001 , 0x000046e2 
- 00016071  0x0000381d call  0x000067dd 
- 00016072  0x0000381e fetcht  0x00000001 , 0x000046e3 
- 00016073  0x0000381f call  0x000067dd 
- 00016074  0x00003820 fetcht  0x00000001 , 0x000046e4 
- 00016075  0x00003821 call  0x000067dd 
- 00016076  0x00003823 fetcht  0x00000001 , 0x000046e5 
- 00016077  0x00003824 call  0x000067dd 
- 00016078  0x00003825 fetcht  0x00000001 , 0x000046e6 
- 00016079  0x00003826 call  0x000067dd 
- 00016080  0x00003827 fetcht  0x00000001 , 0x000046e7 
- 00016081  0x00003828 call  0x000067dd 
- 00016082  0x00003829 fetcht  0x00000001 , 0x000046ed 
- 00016083  0x0000382a call  0x000067dd 
- 00016084  0x0000382b fetcht  0x00000001 , 0x000046e8 
- 00016085  0x0000382c call  0x000067dd 
- 00016086  0x0000382d fetcht  0x00000001 , 0x000046e9 
- 00016087  0x0000382e call  0x000067dd 
- 00016088  0x0000382f fetcht  0x00000001 , 0x000046ea 
- 00016089  0x00003830 call  0x000067dd 
- 00016090  0x00003831 fetcht  0x00000001 , 0x000046eb 
- 00016091  0x00003832 call  0x000067dd 
- 00016092  0x00003833 fetcht  0x00000001 , 0x000046f3 
- 00016093  0x00003834 branch  0x000067e1 
- 00016094  0x00003839 arg  0x0000001e , 0x00000002 
- 00016095  0x0000383a rtn 
- 00016096  0x0000383d bpatch  0x000000e4 , 0x0000401c 
- 00016097  0x0000383e call  0x00003eee 
- 00016098  0x0000383f call  0x00003f36 
- 00016099  0x00003840 fetch  0x00000001 , 0x000046b8 
- 00016100  0x00003841 fetcht  0x00000001 , 0x000046b7 
- 00016101  0x00003842 store  0x00000001 , 0x000046b7 
- 00016102  0x00003843 isub  0x00000002 , 0x0000003e 
- 00016103  0x00003844 nbranch  0x000033d4 , 0x00000005 
- 00016104  0x00003845 fetch  0x00000001 , 0x000046be 
- 00016105  0x00003846 fetcht  0x00000001 , 0x000046bd 
- 00016106  0x00003847 store  0x00000001 , 0x000046bd 
- 00016107  0x00003848 isub  0x00000002 , 0x0000003e 
- 00016108  0x00003849 nbranch  0x000033d4 , 0x00000005 
- 00016109  0x0000384a rtn 
- 00016110  0x0000384c fetch  0x00000001 , 0x000046ea 
- 00016111  0x0000384d rtneq  0x000000ff 
- 00016112  0x0000384e arg  0x00000000 , 0x00000011 
- 00016113  0x0000384f fetcht  0x00000001 , 0x000046ea 
- 00016114  0x00003850 call  0x0000681d 
- 00016115  0x00003851 setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00016116  0x00003852 fetcht  0x00000001 , 0x000046eb 
- 00016117  0x00003853 call  0x0000681d 
- 00016118  0x00003854 setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00016119  0x00003855 copy  0x00000011 , 0x0000003f 
- 00016120  0x00003856 store  0x00000001 , 0x000046b8 
- 00016121  0x00003857 beq  0x00000001 , 0x00003efe 
- 00016122  0x00003858 beq  0x00000002 , 0x00003f02 
- 00016123  0x00003859 fetch  0x00000001 , 0x000046b9 
- 00016124  0x0000385a bbit1  0x00000007 , 0x00003f0e 
- 00016125  0x0000385b rtn 
- 00016126  0x0000385e fetch  0x00000001 , 0x000046b7 
- 00016127  0x0000385f beq  0x00000000 , 0x00003f06 
- 00016128  0x00003860 beq  0x00000003 , 0x00003f08 
- 00016129  0x00003861 rtn 
- 00016130  0x00003863 fetch  0x00000001 , 0x000046b7 
- 00016131  0x00003864 beq  0x00000000 , 0x00003f0a 
- 00016132  0x00003865 beq  0x00000003 , 0x00003f0c 
- 00016133  0x00003866 rtn 
- 00016134  0x00003868 jam  0x00000082 , 0x000046b9 
- 00016135  0x00003869 rtn 
- 00016136  0x0000386b jam  0x00000081 , 0x000046b9 
- 00016137  0x0000386c rtn 
- 00016138  0x0000386e jam  0x00000080 , 0x000046b9 
- 00016139  0x0000386f rtn 
- 00016140  0x00003871 jam  0x00000083 , 0x000046b9 
- 00016141  0x00003872 rtn 
- 00016142  0x00003874 fetch  0x00000001 , 0x000046b9 
- 00016143  0x00003875 set0  0x00000007 , 0x0000003f 
- 00016144  0x00003876 store  0x00000001 , 0x000046b9 
- 00016145  0x00003877 beq  0x00000000 , 0x00003f16 
- 00016146  0x00003878 beq  0x00000001 , 0x00003f19 
- 00016147  0x00003879 beq  0x00000002 , 0x00003f1c 
- 00016148  0x0000387a beq  0x00000003 , 0x00003f1f 
- 00016149  0x0000387b rtn 
- 00016150  0x0000387d fetch  0x00000001 , 0x000046b8 
- 00016151  0x0000387e beq  0x00000003 , 0x00003f22 
- 00016152  0x0000387f rtn 
- 00016153  0x00003881 fetch  0x00000001 , 0x000046b8 
- 00016154  0x00003882 beq  0x00000000 , 0x00003f22 
- 00016155  0x00003883 rtn 
- 00016156  0x00003885 fetch  0x00000001 , 0x000046b8 
- 00016157  0x00003886 beq  0x00000003 , 0x00003f2c 
- 00016158  0x00003887 rtn 
- 00016159  0x00003889 fetch  0x00000001 , 0x000046b8 
- 00016160  0x0000388a beq  0x00000000 , 0x00003f2c 
- 00016161  0x0000388b rtn 
- 00016162  0x0000388d fetch  0x00000001 , 0x000046bc 
- 00016163  0x0000388e increase  0x00000001 , 0x0000003f 
- 00016164  0x0000388f store  0x00000001 , 0x000046bc 
- 00016165  0x00003890 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00016166  0x00003891 rtn  0x00000002 
- 00016167  0x00003892 jam  0x00000000 , 0x000046bc 
- 00016168  0x00003893 fetch  0x00000001 , 0x000046ba 
- 00016169  0x00003894 increase  0x00000001 , 0x0000003f 
- 00016170  0x00003895 store  0x00000001 , 0x000046ba 
- 00016171  0x00003896 rtn 
- 00016172  0x00003898 fetch  0x00000001 , 0x000046bb 
- 00016173  0x00003899 increase  0x00000001 , 0x0000003f 
- 00016174  0x0000389a store  0x00000001 , 0x000046bb 
- 00016175  0x0000389b sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00016176  0x0000389c rtn  0x00000002 
- 00016177  0x0000389d jam  0x00000000 , 0x000046bb 
- 00016178  0x0000389e fetch  0x00000001 , 0x000046ba 
- 00016179  0x0000389f increase  0xffffffff , 0x0000003f 
- 00016180  0x000038a0 store  0x00000001 , 0x000046ba 
- 00016181  0x000038a1 rtn 
- 00016182  0x000038a5 fetch  0x00000001 , 0x000046e8 
- 00016183  0x000038a6 rtneq  0x000000ff 
- 00016184  0x000038a7 arg  0x00000000 , 0x00000011 
- 00016185  0x000038a8 fetcht  0x00000001 , 0x000046e8 
- 00016186  0x000038a9 call  0x0000681d 
- 00016187  0x000038aa setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00016188  0x000038ab fetcht  0x00000001 , 0x000046e9 
- 00016189  0x000038ac call  0x0000681d 
- 00016190  0x000038ad setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00016191  0x000038ae copy  0x00000011 , 0x0000003f 
- 00016192  0x000038af store  0x00000001 , 0x000046be 
- 00016193  0x000038b0 beq  0x00000001 , 0x00003f46 
- 00016194  0x000038b1 beq  0x00000002 , 0x00003f4a 
- 00016195  0x000038b2 fetch  0x00000001 , 0x000046bf 
- 00016196  0x000038b3 bbit1  0x00000007 , 0x00003f56 
- 00016197  0x000038b4 rtn 
- 00016198  0x000038b7 fetch  0x00000001 , 0x000046bd 
- 00016199  0x000038b8 beq  0x00000000 , 0x00003f4e 
- 00016200  0x000038b9 beq  0x00000003 , 0x00003f50 
- 00016201  0x000038ba rtn 
- 00016202  0x000038bc fetch  0x00000001 , 0x000046bd 
- 00016203  0x000038bd beq  0x00000000 , 0x00003f52 
- 00016204  0x000038be beq  0x00000003 , 0x00003f54 
- 00016205  0x000038bf rtn 
- 00016206  0x000038c1 jam  0x00000082 , 0x000046bf 
- 00016207  0x000038c2 rtn 
- 00016208  0x000038c4 jam  0x00000081 , 0x000046bf 
- 00016209  0x000038c5 rtn 
- 00016210  0x000038c7 jam  0x00000080 , 0x000046bf 
- 00016211  0x000038c8 rtn 
- 00016212  0x000038ca jam  0x00000083 , 0x000046bf 
- 00016213  0x000038cb rtn 
- 00016214  0x000038cd fetch  0x00000001 , 0x000046bf 
- 00016215  0x000038ce set0  0x00000007 , 0x0000003f 
- 00016216  0x000038cf store  0x00000001 , 0x000046bf 
- 00016217  0x000038d0 beq  0x00000000 , 0x00003f5e 
- 00016218  0x000038d1 beq  0x00000001 , 0x00003f61 
- 00016219  0x000038d2 beq  0x00000002 , 0x00003f64 
- 00016220  0x000038d3 beq  0x00000003 , 0x00003f67 
- 00016221  0x000038d4 rtn 
- 00016222  0x000038d6 fetch  0x00000001 , 0x000046be 
- 00016223  0x000038d7 beq  0x00000003 , 0x00003f6a 
- 00016224  0x000038d8 rtn 
- 00016225  0x000038da fetch  0x00000001 , 0x000046be 
- 00016226  0x000038db beq  0x00000000 , 0x00003f6a 
- 00016227  0x000038dc rtn 
- 00016228  0x000038de fetch  0x00000001 , 0x000046be 
- 00016229  0x000038df beq  0x00000003 , 0x00003f6f 
- 00016230  0x000038e0 rtn 
- 00016231  0x000038e2 fetch  0x00000001 , 0x000046be 
- 00016232  0x000038e3 beq  0x00000000 , 0x00003f6f 
- 00016233  0x000038e4 rtn 
- 00016234  0x000038e6 jam  0x00000000 , 0x000046c2 
- 00016235  0x000038e7 fetch  0x00000001 , 0x000046c0 
- 00016236  0x000038e8 increase  0x00000001 , 0x0000003f 
- 00016237  0x000038e9 store  0x00000001 , 0x000046c0 
- 00016238  0x000038ea rtn 
- 00016239  0x000038ec jam  0x00000000 , 0x000046c1 
- 00016240  0x000038ed fetch  0x00000001 , 0x000046c0 
- 00016241  0x000038ee increase  0xffffffff , 0x0000003f 
- 00016242  0x000038ef store  0x00000001 , 0x000046c0 
- 00016243  0x000038f0 rtn 
- 00016244  0x000038f4 setarg  0x00000002 
- 00016245  0x000038f5 store  0x00000001 , 0x00004680 
- 00016246  0x000038f6 rtn 
- 00016247  0x000038f9 fetch  0x00000001 , 0x000041e2 
- 00016248  0x000038fa rtn  0x00000034 
- 00016249  0x000038fb call  0x00005271 
- 00016250  0x000038fc nrtn  0x00000034 
- 00016251  0x000038fd fetch  0x00000004 , 0x000046d3 
- 00016252  0x000038fe bbit1  0x00000003 , 0x00003f8a 
- 00016253  0x000038ff bbit1  0x00000000 , 0x00003f8a 
- 00016254  0x00003900 bbit1  0x00000005 , 0x00003f8a 
- 00016255  0x00003901 call  0x00003f97 
- 00016256  0x00003902 nrtn  0x00000028 
- 00016257  0x00003904 arg  0x00000009 , 0x00000011 
- 00016258  0x00003905 call  0x00004d63 
- 00016259  0x00003906 fetch  0x00000002 , 0x0000424e 
- 00016260  0x00003907 istore  0x00000002 , 0x00000005 
- 00016261  0x00003908 setarg  0x000002a1 
- 00016262  0x00003909 istore  0x00000002 , 0x00000005 
- 00016263  0x0000390a fetch  0x00000007 , 0x0000469a 
- 00016264  0x0000390b istore  0x00000007 , 0x00000005 
- 00016265  0x0000390c rtn 
- 00016266  0x00003910 setarg  0x00000000 
- 00016267  0x00003911 store  0x00000007 , 0x0000469a 
- 00016268  0x00003912 branch  0x00003f81 
- 00016269  0x00003916 fetch  0x00000002 , 0x000046aa 
- 00016270  0x00003917 store  0x00000002 , 0x000046b0 
- 00016271  0x00003918 rtn 
- 00016272  0x0000391c bpatch  0x000000e5 , 0x0000401c 
- 00016273  0x0000391d arg  0x00000007 , 0x00000011 
- 00016274  0x0000391e fetcht  0x00000002 , 0x0000446f 
- 00016275  0x0000391f call  0x00005a64 
- 00016276  0x00003920 fetch  0x00000007 , 0x0000469a 
- 00016277  0x00003921 istore  0x00000007 , 0x00000005 
- 00016278  0x00003922 rtn 
- 00016279  0x00003925 bpatch  0x000000e6 , 0x0000401c 
- 00016280  0x00003926 disable  0x00000028 
- 00016281  0x00003927 setarg  0x00000000 
- 00016282  0x00003928 store  0x00000006 , 0x0000469b 
- 00016283  0x00003929 call  0x00003fb5 
- 00016284  0x0000392a call  0x00004079 
- 00016285  0x0000392b call  0x0000407e 
- 00016286  0x0000392c call  0x00004099 
- 00016287  0x0000392d nrtn  0x00000028 
- 00016288  0x0000392e call  0x00003f8d 
- 00016289  0x0000392f arg  0x00000008 , 0x00000007 
- 00016290  0x00003930 branch  0x000043ce 
- 00016291  0x00003933 fetch  0x00000002 , 0x0000469b 
- 00016292  0x00003934 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016293  0x00003935 store  0x00000002 , 0x0000469b 
- 00016294  0x00003936 branch  0x00007fe7 
- 00016295  0x00003938 fetch  0x00000002 , 0x0000469d 
- 00016296  0x00003939 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016297  0x0000393a store  0x00000002 , 0x0000469d 
- 00016298  0x0000393b branch  0x00007fe7 
- 00016299  0x0000393d fetch  0x00000002 , 0x0000469d 
- 00016300  0x0000393e sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016301  0x0000393f store  0x00000002 , 0x0000469d 
- 00016302  0x00003940 fetch  0x00000002 , 0x0000469b 
- 00016303  0x00003941 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016304  0x00003942 store  0x00000002 , 0x0000469b 
- 00016305  0x00003943 call  0x00004002 
- 00016306  0x00003944 branch  0x00007fe7 
- 00016307  0x00003946 call  0x00004002 
- 00016308  0x00003947 branch  0x00007fe7 
- 00016309  0x00003949 fetch  0x00000001 , 0x00004239 
- 00016310  0x0000394a rtnne  0x00000000 
- 00016311  0x0000394b fetch  0x00000001 , 0x000046e0 
- 00016312  0x0000394c beq  0x00000000 , 0x00003fe2 
- 00016313  0x0000394d beq  0x00000001 , 0x00003fe2 
- 00016314  0x0000394e beq  0x00000002 , 0x00003fe2 
- 00016315  0x0000394f beq  0x00000003 , 0x00003fe2 
- 00016316  0x00003950 beq  0x00000004 , 0x00003fc4 
- 00016317  0x00003951 beq  0x00000005 , 0x00004010 
- 00016318  0x00003952 beq  0x00000006 , 0x00003fe2 
- 00016319  0x00003953 branch  0x00003fe2 
- 00016320  0x00003956 fetch  0x00000001 , 0x000046a7 
- 00016321  0x00003957 call  0x0000405d , 0x00000034 
- 00016322  0x00003958 jam  0x00000001 , 0x000046a7 
- 00016323  0x00003959 rtn 
- 00016324  0x0000395d call  0x00003fc0 
- 00016325  0x0000395e fetcht  0x00000001 , 0x000046f3 
- 00016326  0x0000395f call  0x0000681d 
- 00016327  0x00003960 nrtn  0x00000001 
- 00016328  0x00003962 setarg  0x00000000 
- 00016329  0x00003963 call  0x00006414 
- 00016330  0x00003964 bne  0x00000030 , 0x000040d1 
- 00016331  0x00003965 setarg  0x00000002 
- 00016332  0x00003966 call  0x00006414 
- 00016333  0x00003967 rtnbit0  0x00000007 
- 00016334  0x00003968 call  0x0000405d 
- 00016335  0x00003969 call  0x00003fde 
- 00016336  0x0000396a store  0x00000001 , 0x000046a1 
- 00016337  0x0000396b rshift4  0x0000003f , 0x0000003f 
- 00016338  0x0000396c call  0x00004169 
- 00016339  0x0000396d store  0x00000001 , 0x0000469c 
- 00016340  0x0000396e fetch  0x00000001 , 0x000046a1 
- 00016341  0x0000396f and  0x0000003f , 0x0000000f , 0x0000003f 
- 00016342  0x00003970 call  0x00004169 
- 00016343  0x00003971 store  0x00000001 , 0x0000469e 
- 00016344  0x00003972 fetch  0x00000001 , 0x000046f6 
- 00016345  0x00003973 beq  0x00000000 , 0x00003fa3 
- 00016346  0x00003974 beq  0x00000001 , 0x00003fab 
- 00016347  0x00003975 beq  0x00000002 , 0x00003fa7 
- 00016348  0x00003976 beq  0x00000003 , 0x00003fb3 
- 00016349  0x00003977 rtn 
- 00016350  0x0000397a setarg  0x00000012 
- 00016351  0x0000397b branch  0x00006414 
- 00016352  0x0000397e beq  0x00000031 , 0x00003fea 
- 00016353  0x0000397f branch  0x000040d1 
- 00016354  0x00003982 call  0x00003fc0 
- 00016355  0x00003983 disable  0x00000028 
- 00016356  0x00003984 fetcht  0x00000001 , 0x000046f3 
- 00016357  0x00003985 call  0x0000681d 
- 00016358  0x00003986 nrtn  0x00000001 
- 00016359  0x00003988 setarg  0x00000000 
- 00016360  0x00003989 call  0x00006414 
- 00016361  0x0000398a bne  0x00000030 , 0x00003fe0 
- 00016362  0x0000398c setarg  0x00000002 
- 00016363  0x0000398d call  0x00006414 
- 00016364  0x0000398e rtnbit0  0x00000007 
- 00016365  0x0000398f call  0x0000405d 
- 00016366  0x00003990 fetch  0x00000001 , 0x0000469b 
- 00016367  0x00003991 call  0x00004165 
- 00016368  0x00003992 store  0x00000002 , 0x0000469b 
- 00016369  0x00003993 fetch  0x00000001 , 0x0000469d 
- 00016370  0x00003994 call  0x00004165 
- 00016371  0x00003995 store  0x00000002 , 0x0000469d 
- 00016372  0x00003996 fetch  0x00000001 , 0x000046f6 
- 00016373  0x00003997 beq  0x00000000 , 0x00003ffa 
- 00016374  0x00003998 beq  0x00000001 , 0x00003ffc 
- 00016375  0x00003999 beq  0x00000002 , 0x00003ffe 
- 00016376  0x0000399a beq  0x00000003 , 0x00004000 
- 00016377  0x0000399b rtn 
- 00016378  0x0000399e call  0x00003fa3 
- 00016379  0x0000399f branch  0x000040b3 
- 00016380  0x000039a1 call  0x00003fab 
- 00016381  0x000039a2 branch  0x000040b3 
- 00016382  0x000039a4 call  0x00003fa7 
- 00016383  0x000039a5 branch  0x000040b3 
- 00016384  0x000039a7 call  0x00003fb3 
- 00016385  0x000039a8 branch  0x000040b3 
- 00016386  0x000039ab fetch  0x00000002 , 0x0000469d 
- 00016387  0x000039ac fetcht  0x00000002 , 0x0000469b 
- 00016388  0x000039ad store  0x00000002 , 0x0000469b 
- 00016389  0x000039ae storet  0x00000002 , 0x0000469d 
- 00016390  0x000039af rtn 
- 00016391  0x000039b2 call  0x0000640f 
- 00016392  0x000039b3 nop  0x00000064 
- 00016393  0x000039b4 copy  0x00000012 , 0x0000003f 
- 00016394  0x000039b5 call  0x00006414 
- 00016395  0x000039b6 copy  0x0000003f , 0x00000012 
- 00016396  0x000039b7 call  0x00006411 
- 00016397  0x000039b8 nop  0x00000064 
- 00016398  0x000039b9 copy  0x00000012 , 0x0000003f 
- 00016399  0x000039ba rtn 
- 00016400  0x000039bc disable  0x00000028 
- 00016401  0x000039bd fetcht  0x00000001 , 0x000046f3 
- 00016402  0x000039be call  0x0000681d 
- 00016403  0x000039bf nrtn  0x00000001 
- 00016404  0x000039c0 arg  0x00000002 , 0x00000012 
- 00016405  0x000039c1 call  0x00004007 
- 00016406  0x000039c2 rtnbit0  0x00000007 
- 00016407  0x000039c3 arg  0x00000000 , 0x00000012 
- 00016408  0x000039c4 call  0x00004007 
- 00016409  0x000039c5 store  0x00000001 , 0x000046dd 
- 00016410  0x000039c6 bne  0x0000003e , 0x00004145 
- 00016411  0x000039c7 fetch  0x00000001 , 0x000046a7 
- 00016412  0x000039c8 call  0x00004039 , 0x00000034 
- 00016413  0x000039c9 jam  0x00000001 , 0x000046a7 
- 00016414  0x000039ca call  0x00004039 
- 00016415  0x000039cb fetch  0x00000001 , 0x000046a1 
- 00016416  0x000039cc rshift4  0x0000003f , 0x0000003f 
- 00016417  0x000039cd call  0x00004169 
- 00016418  0x000039ce store  0x00000001 , 0x0000469c 
- 00016419  0x000039cf fetch  0x00000001 , 0x000046a1 
- 00016420  0x000039d0 and  0x0000003f , 0x0000000f , 0x0000003f 
- 00016421  0x000039d1 call  0x00004169 
- 00016422  0x000039d2 store  0x00000001 , 0x0000469e 
- 00016423  0x000039d3 fetch  0x00000001 , 0x000046f6 
- 00016424  0x000039d4 beq  0x00000000 , 0x00004031 
- 00016425  0x000039d5 beq  0x00000001 , 0x00004035 
- 00016426  0x000039d6 beq  0x00000002 , 0x00004033 
- 00016427  0x000039d7 beq  0x00000003 , 0x00004037 
- 00016428  0x000039d8 rtn 
- 00016429  0x000039db fetch  0x00000001 , 0x000046a4 
- 00016430  0x000039dc beq  0x00000000 , 0x00004051 
- 00016431  0x000039dd beq  0x00000001 , 0x00004045 
- 00016432  0x000039de rtn 
- 00016433  0x000039e2 call  0x00003fa3 
- 00016434  0x000039e3 branch  0x0000402d 
- 00016435  0x000039e6 call  0x00003fa7 
- 00016436  0x000039e7 branch  0x0000402d 
- 00016437  0x000039ea call  0x00003fab 
- 00016438  0x000039eb branch  0x0000402d 
- 00016439  0x000039ee call  0x00003fb3 
- 00016440  0x000039ef branch  0x0000402d 
- 00016441  0x000039f2 call  0x0000640f 
- 00016442  0x000039f3 call  0x0000405d 
- 00016443  0x000039f4 arg  0x00000005 , 0x0000003f 
- 00016444  0x000039f5 call  0x00006414 
- 00016445  0x000039f6 store  0x00000001 , 0x000046a1 
- 00016446  0x000039f7 arg  0x00000007 , 0x0000003f 
- 00016447  0x000039f8 call  0x00006414 
- 00016448  0x000039f9 store  0x00000001 , 0x000046a2 
- 00016449  0x000039fa arg  0x00000008 , 0x0000003f 
- 00016450  0x000039fb call  0x00006414 
- 00016451  0x000039fc store  0x00000001 , 0x000046a3 
- 00016452  0x000039fd branch  0x00006411 
- 00016453  0x00003a01 fetch  0x00000001 , 0x000046a2 
- 00016454  0x00003a02 rtnne  0x00000000 
- 00016455  0x00003a03 fetch  0x00000001 , 0x000046a3 
- 00016456  0x00003a04 sub  0x0000003f , 0x0000002d , 0x0000003e 
- 00016457  0x00003a05 rtn  0x00000002 
- 00016458  0x00003a06 jam  0x00000000 , 0x000046a4 
- 00016459  0x00003a07 setarg  0x0000ba41 
- 00016460  0x00003a08 call  0x00006405 
- 00016461  0x00003a09 setarg  0x00000032 
- 00016462  0x00003a0a call  0x00006405 
- 00016463  0x00003a0b setarg  0x0000b541 
- 00016464  0x00003a0c branch  0x00006405 
- 00016465  0x00003a0e fetch  0x00000001 , 0x000046a2 
- 00016466  0x00003a0f rtnne  0x00000000 
- 00016467  0x00003a10 fetch  0x00000001 , 0x000046a3 
- 00016468  0x00003a11 sub  0x0000003f , 0x0000002d , 0x0000003e 
- 00016469  0x00003a12 nrtn  0x00000002 
- 00016470  0x00003a13 jam  0x00000001 , 0x000046a4 
- 00016471  0x00003a14 setarg  0x0000ba41 
- 00016472  0x00003a15 call  0x00006405 
- 00016473  0x00003a16 setarg  0x00008032 
- 00016474  0x00003a17 call  0x00006405 
- 00016475  0x00003a18 setarg  0x0000b541 
- 00016476  0x00003a19 branch  0x00006405 
- 00016477  0x00003a1e arg  0x00000003 , 0x0000003f 
- 00016478  0x00003a1f call  0x00006414 
- 00016479  0x00003a20 store  0x00000002 , 0x0000469b 
- 00016480  0x00003a21 arg  0x00000004 , 0x0000003f 
- 00016481  0x00003a22 call  0x00006414 
- 00016482  0x00003a23 store  0x00000002 , 0x0000469d 
- 00016483  0x00003a24 rtn 
- 00016484  0x00003a27 arg  0x0000001b , 0x00000002 
- 00016485  0x00003a28 call  0x000067fb 
- 00016486  0x00003a29 arg  0x0000001b , 0x00000002 
- 00016487  0x00003a2a call  0x0000681d 
- 00016488  0x00003a2b rtn  0x00000001 
- 00016489  0x00003a2c hfetch  0x00000001 , 0x00008109 
- 00016490  0x00003a2d set1  0x00000004 , 0x0000003f 
- 00016491  0x00003a2e hstore  0x00000001 , 0x00008109 
- 00016492  0x00003a2f rtn 
- 00016493  0x00003a32 fetcht  0x00000001 , 0x000046c0 
- 00016494  0x00003a33 hfetch  0x00000001 , 0x00008109 
- 00016495  0x00003a34 iadd  0x00000002 , 0x0000003f 
- 00016496  0x00003a35 rtn  0x00000034 
- 00016497  0x00003a36 store  0x00000001 , 0x0000469f 
- 00016498  0x00003a37 jam  0x00000000 , 0x000046c0 
- 00016499  0x00003a38 branch  0x00007fe7 
- 00016500  0x00003a3a fetcht  0x00000001 , 0x000046c0 
- 00016501  0x00003a3b hfetch  0x00000001 , 0x00008109 
- 00016502  0x00003a3c iadd  0x00000002 , 0x0000003f 
- 00016503  0x00003a3d store  0x00000001 , 0x000046c0 
- 00016504  0x00003a3e rtn 
- 00016505  0x00003a40 fetch  0x00000001 , 0x000046c0 
- 00016506  0x00003a41 rtn  0x00000034 
- 00016507  0x00003a42 store  0x00000001 , 0x0000469f 
- 00016508  0x00003a43 jam  0x00000000 , 0x000046c0 
- 00016509  0x00003a44 branch  0x00007fe7 
- 00016510  0x00003a47 fetch  0x00000001 , 0x000046ba 
- 00016511  0x00003a48 rtn  0x00000034 
- 00016512  0x00003a49 store  0x00000001 , 0x000046a0 
- 00016513  0x00003a4a jam  0x00000000 , 0x000046ba 
- 00016514  0x00003a4b branch  0x00007fe7 
- 00016515  0x00003a4e arg  0x00000000 , 0x00000011 
- 00016516  0x00003a4f fetcht  0x00000001 , 0x000046e2 
- 00016517  0x00003a50 call  0x0000681d 
- 00016518  0x00003a51 setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00016519  0x00003a52 fetcht  0x00000001 , 0x000046e3 
- 00016520  0x00003a53 call  0x0000681d 
- 00016521  0x00003a54 setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00016522  0x00003a55 fetcht  0x00000001 , 0x000046e4 
- 00016523  0x00003a56 call  0x0000681d 
- 00016524  0x00003a57 setflag  0x00000001 , 0x00000002 , 0x00000011 
- 00016525  0x00003a58 call  0x00004090 
- 00016526  0x00003a5a copy  0x00000011 , 0x0000003f 
- 00016527  0x00003a5b rtn 
- 00016528  0x00003a5d fetch  0x00000001 , 0x000046e5 
- 00016529  0x00003a5e rtneq  0x000000ff 
- 00016530  0x00003a5f fetcht  0x00000001 , 0x000046e5 
- 00016531  0x00003a60 call  0x0000681d 
- 00016532  0x00003a61 setflag  0x00000001 , 0x00000003 , 0x00000011 
- 00016533  0x00003a62 fetcht  0x00000001 , 0x000046e6 
- 00016534  0x00003a63 call  0x0000681d 
- 00016535  0x00003a64 setflag  0x00000001 , 0x00000004 , 0x00000011 
- 00016536  0x00003a65 rtn 
- 00016537  0x00003a68 call  0x00004083 
- 00016538  0x00003a69 call  0x000040a8 
- 00016539  0x00003a6a call  0x000040a3 
- 00016540  0x00003a6b copy  0x00000011 , 0x0000003f 
- 00016541  0x00003a6c fetcht  0x00000001 , 0x0000469a 
- 00016542  0x00003a6d store  0x00000001 , 0x0000469a 
- 00016543  0x00003a6e ixor  0x00000002 , 0x0000003f 
- 00016544  0x00003a6f sub  0x0000003f , 0x00000000 , 0x0000003e 
- 00016545  0x00003a70 rtn  0x00000005 
- 00016546  0x00003a71 branch  0x00007fe7 
- 00016547  0x00003a74 rtnmark0  0x00000026 
- 00016548  0x00003a75 copy  0x00000011 , 0x0000003f 
- 00016549  0x00003a76 rtn  0x00000034 
- 00016550  0x00003a77 store  0x00000001 , 0x0000469a 
- 00016551  0x00003a78 branch  0x00007fe7 
- 00016552  0x00003a7c fetch  0x00000002 , 0x00004682 
- 00016553  0x00003a7d bbit1  0x00000009 , 0x000040ad 
- 00016554  0x00003a7e fetch  0x00000002 , 0x00004682 
- 00016555  0x00003a7f bbit1  0x00000000 , 0x000040b0 
- 00016556  0x00003a80 rtn 
- 00016557  0x00003a82 copy  0x00000011 , 0x0000003f 
- 00016558  0x00003a83 nbranch  0x00005820 , 0x00000034 
- 00016559  0x00003a84 branch  0x00005822 
- 00016560  0x00003a86 copy  0x00000011 , 0x0000003f 
- 00016561  0x00003a87 nbranch  0x00002bc7 , 0x00000034 
- 00016562  0x00003a88 branch  0x00002bc9 
- 00016563  0x00003a8c bpatch  0x000000e7 , 0x0000401c 
- 00016564  0x00003a8d arg  0x0000001a , 0x00000002 
- 00016565  0x00003a8e fetch  0x00000004 , 0x000046d3 
- 00016566  0x00003a8f isolate1  0x00000012 , 0x0000003f 
- 00016567  0x00003a90 call  0x000040be , 0x00000001 
- 00016568  0x00003a91 call  0x0000681d 
- 00016569  0x00003a92 rtn  0x00000001 
- 00016570  0x00003a93 setarg  0x0000000a 
- 00016571  0x00003a94 call  0x00006414 
- 00016572  0x00003a95 nop  0x000003e8 
- 00016573  0x00003a96 branch  0x000040b3 
- 00016574  0x00003a98 arg  0x0000001f , 0x00000002 
- 00016575  0x00003a99 rtn 
- 00016576  0x00003a9c fetch  0x00000004 , 0x000046d3 
- 00016577  0x00003a9d bbit1  0x00000012 , 0x000040c4 
- 00016578  0x00003a9f arg  0x0000001a , 0x00000002 
- 00016579  0x00003aa0 branch  0x000067fe 
- 00016580  0x00003aa2 arg  0x0000001f , 0x00000002 
- 00016581  0x00003aa3 branch  0x000067fe 
- 00016582  0x00003aa7 call  0x00003d36 
- 00016583  0x00003aa8 rtn  0x0000002b 
- 00016584  0x00003aa9 call  0x000040c0 
- 00016585  0x00003aaa fetch  0x00000001 , 0x000046e0 
- 00016586  0x00003aab beq  0x00000005 , 0x000040d5 
- 00016587  0x00003aad call  0x000040d9 
- 00016588  0x00003aae beq  0x00000030 , 0x000040e0 
- 00016589  0x00003aaf beq  0x00000031 , 0x000040ea 
- 00016590  0x00003ab0 call  0x000040d1 
- 00016591  0x00003ab1 nop  0x000003e8 
- 00016592  0x00003ab2 branch  0x000040cb 
- 00016593  0x00003ab4 bpatch  0x000000e8 , 0x0000401d 
- 00016594  0x00003ab5 fetch  0x00000004 , 0x000046d3 
- 00016595  0x00003ab6 bbit1  0x00000012 , 0x000063e0 
- 00016596  0x00003ab7 branch  0x000063d1 
- 00016597  0x00003aba call  0x000040d9 
- 00016598  0x00003abb beq  0x0000003e , 0x0000414b 
- 00016599  0x00003abc call  0x00004145 
- 00016600  0x00003abd branch  0x000040d5 
- 00016601  0x00003ac0 setarg  0x00000001 
- 00016602  0x00003ac1 call  0x00006414 
- 00016603  0x00003ac2 store  0x00000001 , 0x000046de 
- 00016604  0x00003ac3 setarg  0x00000000 
- 00016605  0x00003ac4 call  0x00006414 
- 00016606  0x00003ac5 store  0x00000001 , 0x000046dd 
- 00016607  0x00003ac6 rtn 
- 00016608  0x00003ac8 fetch  0x00000001 , 0x000046de 
- 00016609  0x00003ac9 beq  0x000000d1 , 0x00004139 
- 00016610  0x00003aca beq  0x000000d2 , 0x000040f8 
- 00016611  0x00003acb beq  0x00000002 , 0x000040ee 
- 00016612  0x00003acc beq  0x00000054 , 0x000040e6 
- 00016613  0x00003acd rtn 
- 00016614  0x00003acf jam  0x00000002 , 0x000046e0 
- 00016615  0x00003ad0 rtn 
- 00016616  0x00003ad2 jam  0x00000006 , 0x000046e0 
- 00016617  0x00003ad3 rtn 
- 00016618  0x00003ad5 fetch  0x00000001 , 0x000046de 
- 00016619  0x00003ad6 beq  0x00000070 , 0x000040e8 
- 00016620  0x00003ad7 jam  0x00000001 , 0x000046e0 
- 00016621  0x00003ad8 rtn 
- 00016622  0x00003ada jam  0x00000004 , 0x000046e0 
- 00016623  0x00003adb call  0x000040f6 
- 00016624  0x00003adc setarg  0x00003426 
- 00016625  0x00003add call  0x00006413 
- 00016626  0x00003ade setarg  0x00000419 
- 00016627  0x00003adf call  0x00006413 
- 00016628  0x00003ae1 setarg  0x00000009 
- 00016629  0x00003ae2 branch  0x00006413 
- 00016630  0x00003ae4 setarg  0x00005a09 
- 00016631  0x00003ae5 branch  0x00006413 
- 00016632  0x00003ae8 jam  0x00000003 , 0x000046e0 
- 00016633  0x00003ae9 call  0x000040f6 
- 00016634  0x00003aea setarg  0x00000f0d 
- 00016635  0x00003aeb call  0x00006413 
- 00016636  0x00003aec setarg  0x0000e31d 
- 00016637  0x00003aed call  0x00006413 
- 00016638  0x00003aee setarg  0x0000d27d 
- 00016639  0x00003aef call  0x00006413 
- 00016640  0x00003af0 call  0x00004102 
- 00016641  0x00003af1 branch  0x0000411a 
- 00016642  0x00003af4 setarg  0x0000351b 
- 00016643  0x00003af5 call  0x00006413 
- 00016644  0x00003af6 setarg  0x0000b428 
- 00016645  0x00003af7 call  0x00006413 
- 00016646  0x00003af8 setarg  0x00004629 
- 00016647  0x00003af9 call  0x00006413 
- 00016648  0x00003afa setarg  0x0000962a 
- 00016649  0x00003afb call  0x00006413 
- 00016650  0x00003afc setarg  0x00008c2b 
- 00016651  0x00003afd call  0x00006413 
- 00016652  0x00003afe setarg  0x00006e2c 
- 00016653  0x00003aff call  0x00006413 
- 00016654  0x00003b00 setarg  0x0000642d 
- 00016655  0x00003b01 call  0x00006413 
- 00016656  0x00003b02 setarg  0x00005f38 
- 00016657  0x00003b03 call  0x00006413 
- 00016658  0x00003b04 setarg  0x00000f39 
- 00016659  0x00003b05 call  0x00006413 
- 00016660  0x00003b06 setarg  0x0000323a 
- 00016661  0x00003b07 call  0x00006413 
- 00016662  0x00003b08 setarg  0x0000473b 
- 00016663  0x00003b09 call  0x00006413 
- 00016664  0x00003b0a setarg  0x00001042 
- 00016665  0x00003b0b branch  0x00006413 
- 00016666  0x00003b0d setarg  0x00002e54 
- 00016667  0x00003b0e call  0x00006413 
- 00016668  0x00003b0f setarg  0x0000f255 
- 00016669  0x00003b10 call  0x00006413 
- 00016670  0x00003b11 setarg  0x0000f461 
- 00016671  0x00003b12 call  0x00006413 
- 00016672  0x00003b13 setarg  0x00007063 
- 00016673  0x00003b14 call  0x00006413 
- 00016674  0x00003b15 setarg  0x00005275 
- 00016675  0x00003b16 call  0x00006413 
- 00016676  0x00003b17 setarg  0x00004176 
- 00016677  0x00003b18 call  0x00006413 
- 00016678  0x00003b19 setarg  0x0000ed77 
- 00016679  0x00003b1a call  0x00006413 
- 00016680  0x00003b1b setarg  0x00002378 
- 00016681  0x00003b1c call  0x00006413 
- 00016682  0x00003b1d setarg  0x00004679 
- 00016683  0x00003b1e call  0x00006413 
- 00016684  0x00003b1f setarg  0x0000e57a 
- 00016685  0x00003b20 call  0x00006413 
- 00016686  0x00003b21 setarg  0x0000487c 
- 00016687  0x00003b22 call  0x00006413 
- 00016688  0x00003b23 setarg  0x0000777e 
- 00016689  0x00003b24 call  0x00006413 
- 00016690  0x00003b25 setarg  0x0000017f 
- 00016691  0x00003b26 call  0x00006413 
- 00016692  0x00003b27 setarg  0x0000000b 
- 00016693  0x00003b28 call  0x00006413 
- 00016694  0x00003b29 setarg  0x0000007f 
- 00016695  0x00003b2a call  0x00006413 
- 00016696  0x00003b2b branch  0x000040f4 
- 00016697  0x00003b2f jam  0x00000000 , 0x000046e0 
- 00016698  0x00003b30 call  0x000040f6 
- 00016699  0x00003b31 setarg  0x0000100d 
- 00016700  0x00003b32 call  0x00006413 
- 00016701  0x00003b33 setarg  0x0000ed1d 
- 00016702  0x00003b34 call  0x00006413 
- 00016703  0x00003b35 setarg  0x0000807d 
- 00016704  0x00003b36 call  0x00006413 
- 00016705  0x00003b37 call  0x00004102 
- 00016706  0x00003b38 setarg  0x00000943 
- 00016707  0x00003b39 call  0x00006413 
- 00016708  0x00003b3a branch  0x0000411a 
- 00016709  0x00003b3e fetcht  0x00000001 , 0x000046dc 
- 00016710  0x00003b3f call  0x00006829 
- 00016711  0x00003b40 call  0x00007ec1 
- 00016712  0x00003b41 fetcht  0x00000001 , 0x000046dc 
- 00016713  0x00003b42 call  0x00006825 
- 00016714  0x00003b43 branch  0x00007ec1 
- 00016715  0x00003b46 jam  0x00000005 , 0x000046e0 
- 00016716  0x00003b47 setarg  0x0000ba41 
- 00016717  0x00003b48 call  0x00006405 
- 00016718  0x00003b49 setarg  0x00000d11 
- 00016719  0x00003b4a call  0x00006405 
- 00016720  0x00003b4b setarg  0x0000041b 
- 00016721  0x00003b4c call  0x00006405 
- 00016722  0x00003b4d setarg  0x0000041c 
- 00016723  0x00003b4e call  0x00006405 
- 00016724  0x00003b4f setarg  0x00000f1d 
- 00016725  0x00003b50 call  0x00006405 
- 00016726  0x00003b51 setarg  0x00000032 
- 00016727  0x00003b52 call  0x00006405 
- 00016728  0x00003b53 setarg  0x0000b541 
- 00016729  0x00003b54 branch  0x00006405 
- 00016730  0x00003b59 setarg  0x0000ba41 
- 00016731  0x00003b5a call  0x00006405 
- 00016732  0x00003b5b nop  0x00000fa0 
- 00016733  0x00003b5c setarg  0x0000ff7f 
- 00016734  0x00003b5d call  0x00006405 
- 00016735  0x00003b5e copy  0x00000011 , 0x0000003f 
- 00016736  0x00003b5f call  0x00006405 
- 00016737  0x00003b60 setarg  0x0000007f 
- 00016738  0x00003b61 call  0x00006405 
- 00016739  0x00003b62 setarg  0x0000b541 
- 00016740  0x00003b63 branch  0x00006405 
- 00016741  0x00003b66 rtnbit0  0x00000007 
- 00016742  0x00003b67 arg  0x0000ff00 , 0x00000002 
- 00016743  0x00003b68 ior  0x00000002 , 0x0000003f 
- 00016744  0x00003b69 rtn 
- 00016745  0x00003b6c rtnbit0  0x00000003 
- 00016746  0x00003b6d arg  0x000000f0 , 0x00000002 
- 00016747  0x00003b6e ior  0x00000002 , 0x0000003f 
- 00016748  0x00003b6f rtn 
- 00016749  0x00003b73 call  0x00005892 
- 00016750  0x00003b74 nrtn  0x00000034 
- 00016751  0x00003b75 fetch  0x00000001 , 0x000046c5 
- 00016752  0x00003b76 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00016753  0x00003b77 rtnne  0x00000003 
- 00016754  0x00003b78 fetch  0x00000004 , 0x000046d3 
- 00016755  0x00003b79 bbit1  0x00000003 , 0x00004179 
- 00016756  0x00003b7a bbit1  0x00000000 , 0x00004179 
- 00016757  0x00003b7b bbit1  0x00000005 , 0x00004179 
- 00016758  0x00003b7c call  0x00003f97 
- 00016759  0x00003b7d nrtn  0x00000028 
- 00016760  0x00003b7e branch  0x00003f90 
- 00016761  0x00003b81 setarg  0x00000000 
- 00016762  0x00003b82 store  0x00000007 , 0x0000469a 
- 00016763  0x00003b83 branch  0x00003f90 
- 00016764  0x00003b86 copy  0x00000013 , 0x0000003f 
- 00016765  0x00003b87 beq  0x00000014 , 0x000041c3 
- 00016766  0x00003b88 beq  0x00000001 , 0x000042ca 
- 00016767  0x00003b89 beq  0x00000015 , 0x000041d9 
- 00016768  0x00003b8a beq  0x00000002 , 0x000041d9 
- 00016769  0x00003b8b beq  0x00000005 , 0x000041d6 
- 00016770  0x00003b8c beq  0x00000010 , 0x0000426c 
- 00016771  0x00003b8d beq  0x00000012 , 0x0000429b 
- 00016772  0x00003b8e beq  0x00000006 , 0x000041d5 
- 00016773  0x00003b8f beq  0x00000004 , 0x000041cc 
- 00016774  0x00003b90 beq  0x00000013 , 0x000041cc 
- 00016775  0x00003b91 beq  0x0000000a , 0x000041ca 
- 00016776  0x00003b92 beq  0x0000002e , 0x000033cd 
- 00016777  0x00003b93 beq  0x00000031 , 0x000041b4 
- 00016778  0x00003b94 beq  0x00000032 , 0x000041b6 
- 00016779  0x00003b95 beq  0x0000003e , 0x00004191 
- 00016780  0x00003b96 beq  0x00000027 , 0x0000438e 
- 00016781  0x00003b97 beq  0x00000039 , 0x0000419c 
- 00016782  0x00003b98 beq  0x0000003a , 0x00004192 
- 00016783  0x00003b99 beq  0x0000003c , 0x0000419a 
- 00016784  0x00003b9a rtn 
- 00016785  0x00003b9e branch  0x00003410 
- 00016786  0x00003ba1 jam  0x00000001 , 0x0000478b 
- 00016787  0x00003ba2 fetch  0x00000001 , 0x0000471e 
- 00016788  0x00003ba3 nbranch  0x00004492 , 0x00000034 
- 00016789  0x00003ba4 fetch  0x00000001 , 0x00004720 
- 00016790  0x00003ba5 fetcht  0x00000001 , 0x00004703 
- 00016791  0x00003ba6 isub  0x00000002 , 0x0000003e 
- 00016792  0x00003ba7 branch  0x0000340a , 0x00000005 
- 00016793  0x00003ba8 rtn 
- 00016794  0x00003baa jam  0x00000001 , 0x0000478b 
- 00016795  0x00003bab rtn 
- 00016796  0x00003bad jam  0x00000001 , 0x0000478b 
- 00016797  0x00003bae arg  0x00000003 , 0x00000007 
- 00016798  0x00003baf call  0x000043d2 
- 00016799  0x00003bb0 setarg  0x00000000 
- 00016800  0x00003bb1 store  0x00000002 , 0x00004707 
- 00016801  0x00003bb2 jam  0x00000000 , 0x000046a7 
- 00016802  0x00003bb4 fetch  0x00000001 , 0x000046e0 
- 00016803  0x00003bb5 sub  0x0000003f , 0x00000005 , 0x0000003e 
- 00016804  0x00003bb6 call  0x00004039 , 0x00000005 
- 00016805  0x00003bb7 ncall  0x0000405d , 0x00000005 
- 00016806  0x00003bb9 fetch  0x00000001 , 0x00000004 , 0x000046d3 
- 00016807  0x00003bba bbit1  0x00000013 , 0x000041af 
- 00016808  0x00003bbb call  0x000041aa 
- 00016809  0x00003bbc branch  0x000065d1 
- 00016810  0x00003bbf call  0x00002c7a 
- 00016811  0x00003bc0 add  0x00000013 , 0x000000ae , 0x00000011 
- 00016812  0x00003bc1 arg  0x0000005b , 0x00000012 
- 00016813  0x00003bc2 arg  0x00000004 , 0x00000002 
- 00016814  0x00003bc3 rtn 
- 00016815  0x00003bc6 call  0x00002c7a 
- 00016816  0x00003bc7 add  0x00000013 , 0x000000ae , 0x00000012 
- 00016817  0x00003bc8 ifetch  0x00000001 , 0x00000012 
- 00016818  0x00003bc9 store  0x00000001 , 0x0000477b 
- 00016819  0x00003bca branch  0x00004435 
- 00016820  0x00003bce arg  0x00000002 , 0x00000007 
- 00016821  0x00003bcf branch  0x000041b9 
- 00016822  0x00003bd1 jam  0x00000002 , 0x000046c6 
- 00016823  0x00003bd2 arg  0x00000001 , 0x00000007 
- 00016824  0x00003bd3 branch  0x000041b9 
- 00016825  0x00003bd7 fetch  0x00000001 , 0x000046c5 
- 00016826  0x00003bd8 qset1  0x0000003f 
- 00016827  0x00003bd9 store  0x00000001 , 0x000046c5 
- 00016828  0x00003bda rtn 
- 00016829  0x00003bdd fetch  0x00000001 , 0x000046c5 
- 00016830  0x00003bde qset0  0x0000003f 
- 00016831  0x00003bdf store  0x00000001 , 0x000046c5 
- 00016832  0x00003be0 rtn 
- 00016833  0x00003be2 jam  0x00000000 , 0x000046c5 
- 00016834  0x00003be3 rtn 
- 00016835  0x00003be6 fetch  0x00000002 , 0x0000420a 
- 00016836  0x00003be7 set0  0x00000000 , 0x0000003f 
- 00016837  0x00003be8 store  0x00000002 , 0x0000420a 
- 00016838  0x00003be9 setarg  0x00000000 
- 00016839  0x00003bea store  0x00000002 , 0x000046ae 
- 00016840  0x00003beb call  0x00003f8d 
- 00016841  0x00003bec branch  0x000042ca 
- 00016842  0x00003bef call  0x000063cb 
- 00016843  0x00003bf0 branch  0x000033dd 
- 00016844  0x00003bf3 fetch  0x00000001 , 0x0000471e 
- 00016845  0x00003bf4 nbranch  0x00004492 , 0x00000034 
- 00016846  0x00003bf5 fetch  0x00000002 , 0x00004682 
- 00016847  0x00003bf6 bbit1  0x0000000c , 0x000042b0 
- 00016848  0x00003bf7 fetch  0x00000004 , 0x000046d3 
- 00016849  0x00003bf8 bbit1  0x00000000 , 0x000041d7 
- 00016850  0x00003bf9 bbit1  0x00000005 , 0x000042b0 
- 00016851  0x00003bfa bbit1  0x00000003 , 0x00002ead 
- 00016852  0x00003bfb branch  0x000033a7 
- 00016853  0x00003bff branch  0x00003f74 
- 00016854  0x00003c02 rtn 
- 00016855  0x00003c05 call  0x000043c0 
- 00016856  0x00003c06 branch  0x0000659a 
- 00016857  0x00003c09 bpatch  0x000000e9 , 0x0000401d 
- 00016858  0x00003c0a call  0x000041e7 
- 00016859  0x00003c0b fetch  0x00000004 , 0x000046d3 
- 00016860  0x00003c0c bbit1  0x00000000 , 0x000041d7 
- 00016861  0x00003c0d bbit1  0x00000003 , 0x00002ead 
- 00016862  0x00003c0e fetch  0x00000001 , 0x0000471e 
- 00016863  0x00003c0f nbranch  0x00004492 , 0x00000034 
- 00016864  0x00003c10 fetch  0x00000002 , 0x00004208 
- 00016865  0x00003c11 bbit1  0x00000007 , 0x000041f5 
- 00016866  0x00003c12 bbit1  0x00000000 , 0x000033a9 
- 00016867  0x00003c13 bbit1  0x00000001 , 0x000041ef 
- 00016868  0x00003c14 bbit1  0x00000002 , 0x000041f2 
- 00016869  0x00003c15 bbit1  0x00000003 , 0x000041f2 
- 00016870  0x00003c16 branch  0x000042b0 
- 00016871  0x00003c18 setarg  0x00000000 
- 00016872  0x00003c19 store  0x00000008 , 0x000046b7 
- 00016873  0x00003c1a istore  0x00000004 , 0x00000005 
- 00016874  0x00003c1b jam  0x00000000 , 0x000046b4 
- 00016875  0x00003c1c jam  0x00000000 , 0x000046a7 
- 00016876  0x00003c1d jam  0x00000000 , 0x000041e2 
- 00016877  0x00003c1e jam  0x00000000 , 0x00004429 
- 00016878  0x00003c1f rtn 
- 00016879  0x00003c22 bbit1  0x00000005 , 0x000041f2 
- 00016880  0x00003c23 bbit1  0x00000003 , 0x000041f2 
- 00016881  0x00003c24 branch  0x000042b0 
- 00016882  0x00003c26 fetch  0x00000002 , 0x00004682 
- 00016883  0x00003c27 bbit1  0x0000000c , 0x000042b0 
- 00016884  0x00003c28 branch  0x000033a7 
- 00016885  0x00003c2b call  0x000041c1 
- 00016886  0x00003c2c fetch  0x00000002 , 0x00004208 
- 00016887  0x00003c2d bbit1  0x00000000 , 0x000033a9 
- 00016888  0x00003c2e branch  0x000033a7 
- 00016889  0x00003c31 call  0x000043d6 
- 00016890  0x00003c32 call  0x00004243 
- 00016891  0x00003c33 call  0x00004246 
- 00016892  0x00003c34 call  0x00004250 
- 00016893  0x00003c35 call  0x0000445d 
- 00016894  0x00003c37 call  0x00004443 
- 00016895  0x00003c38 call  0x00004333 
- 00016896  0x00003c39 call  0x000043a5 
- 00016897  0x00003c3a call  0x000043eb 
- 00016898  0x00003c3b call  0x00004209 
- 00016899  0x00003c3c call  0x00004231 
- 00016900  0x00003c3d call  0x00004234 
- 00016901  0x00003c3e call  0x00004237 
- 00016902  0x00003c3f call  0x0000423a 
- 00016903  0x00003c40 call  0x0000423d 
- 00016904  0x00003c41 branch  0x00004240 
- 00016905  0x00003c46 fetch  0x00000001 , 0x00004711 
- 00016906  0x00003c47 rtn  0x00000034 
- 00016907  0x00003c48 increase  0xffffffff , 0x0000003f 
- 00016908  0x00003c49 store  0x00000001 , 0x00004711 
- 00016909  0x00003c4a nrtn  0x00000034 
- 00016910  0x00003c4b branch  0x0000420f 
- 00016911  0x00003c4d fetch  0x00000001 , 0x00004712 
- 00016912  0x00003c4e rtneq  0x00000000 
- 00016913  0x00003c4f beq  0x00000005 , 0x00004216 
- 00016914  0x00003c51 call  0x00004225 
- 00016915  0x00003c52 jam  0x00000005 , 0x00004712 
- 00016916  0x00003c53 jam  0x00000005 , 0x00004711 
- 00016917  0x00003c54 rtn 
- 00016918  0x00003c56 call  0x0000422c 
- 00016919  0x00003c57 jam  0x00000004 , 0x00004712 
- 00016920  0x00003c58 jam  0x00000005 , 0x00004711 
- 00016921  0x00003c59 rtn 
- 00016922  0x00003c5d setarg  0x00008006 
- 00016923  0x00003c5e call  0x00006413 
- 00016924  0x00003c5f nop  0x000003e8 
- 00016925  0x00003c60 jam  0x00000000 , 0x00004711 
- 00016926  0x00003c61 jam  0x00000000 , 0x00004712 
- 00016927  0x00003c62 branch  0x000040e0 
- 00016928  0x00003c65 setarg  0x0000a006 
- 00016929  0x00003c66 call  0x00006413 
- 00016930  0x00003c67 setarg  0x0000a005 
- 00016931  0x00003c68 branch  0x00006413 
- 00016932  0x00003c6a jam  0x00000000 , 0x00004711 
- 00016933  0x00003c6c fetch  0x00000001 , 0x000046e0 
- 00016934  0x00003c6d beq  0x00000004 , 0x00004220 
- 00016935  0x00003c6e setarg  0x00000106 
- 00016936  0x00003c6f call  0x00006413 
- 00016937  0x00003c70 setarg  0x0000a105 
- 00016938  0x00003c71 branch  0x00006413 
- 00016939  0x00003c74 jam  0x00000000 , 0x00004711 
- 00016940  0x00003c76 setarg  0x00000906 
- 00016941  0x00003c77 branch  0x00006413 
- 00016942  0x00003c79 jam  0x00000005 , 0x00004711 
- 00016943  0x00003c7a jam  0x00000001 , 0x00004712 
- 00016944  0x00003c7b rtn 
- 00016945  0x00003c7e arg  0x00004680 , 0x00000013 
- 00016946  0x00003c7f arg  0x0000429b , 0x00000012 
- 00016947  0x00003c80 branch  0x0000336d 
- 00016948  0x00003c83 arg  0x000046ac , 0x00000013 
- 00016949  0x00003c84 arg  0x00004264 , 0x00000012 
- 00016950  0x00003c85 branch  0x00003374 
- 00016951  0x00003c88 arg  0x000046ae , 0x00000013 
- 00016952  0x00003c89 arg  0x00004266 , 0x00000012 
- 00016953  0x00003c8a branch  0x00003374 
- 00016954  0x00003c8d arg  0x000046b0 , 0x00000013 
- 00016955  0x00003c8e arg  0x0000426a , 0x00000012 
- 00016956  0x00003c8f branch  0x00003374 
- 00016957  0x00003c92 arg  0x000046c4 , 0x00000013 
- 00016958  0x00003c93 arg  0x00004478 , 0x00000012 
- 00016959  0x00003c94 branch  0x0000336d 
- 00016960  0x00003c99 arg  0x000046c6 , 0x00000013 
- 00016961  0x00003c9a arg  0x0000425e , 0x00000012 
- 00016962  0x00003c9b branch  0x0000336d 
- 00016963  0x00003c9e arg  0x00004704 , 0x00000013 
- 00016964  0x00003c9f arg  0x00004249 , 0x00000012 
- 00016965  0x00003ca0 branch  0x0000336d 
- 00016966  0x00003ca3 arg  0x00004707 , 0x00000013 
- 00016967  0x00003ca4 arg  0x00004249 , 0x00000012 
- 00016968  0x00003ca5 branch  0x00003374 
- 00016969  0x00003ca8 rtn 
- 00016970  0x00003cac fetch  0x00000004 , 0x000046d3 
- 00016971  0x00003cad rtnbit0  0x00000017 
- 00016972  0x00003cae jam  0x0000000a , 0x000046df 
- 00016973  0x00003caf fetch  0x00000001 , 0x000046f4 
- 00016974  0x00003cb0 store  0x00000001 , 0x00004715 
- 00016975  0x00003cb1 rtn 
- 00016976  0x00003cb5 arg  0x000046df , 0x00000013 
- 00016977  0x00003cb6 arg  0x00004253 , 0x00000012 
- 00016978  0x00003cb7 branch  0x0000336d 
- 00016979  0x00003cb9 fetch  0x00000001 , 0x000046f4 
- 00016980  0x00003cba store  0x00000001 , 0x00004715 
- 00016981  0x00003cbb setarg  0x00000190 
- 00016982  0x00003cbc store  0x00000002 , 0x00004716 
- 00016983  0x00003cbd store  0x00000002 , 0x00004718 
- 00016984  0x00003cbe arg  0x00000000 , 0x00000011 
- 00016985  0x00003cbf fetcht  0x00000001 , 0x0000477a 
- 00016986  0x00003cc0 increase  0x00000001 , 0x00000002 
- 00016987  0x00003cc1 storet  0x00000001 , 0x00004714 
- 00016988  0x00003cc2 jam  0x00000001 , 0x00004713 
- 00016989  0x00003cc3 rtn 
- 00016990  0x00003cc6 fetch  0x00000001 , 0x000046c5 
- 00016991  0x00003cc7 rtnbit1  0x00000002 
- 00016992  0x00003cc8 jam  0x00000012 , 0x00000a99 
- 00016993  0x00003cc9 call  0x00007d8f 
- 00016994  0x00003cca arg  0x00000000 , 0x00000007 
- 00016995  0x00003ccb branch  0x000041b9 
- 00016996  0x00003ccf call  0x000042ca 
- 00016997  0x00003cd0 branch  0x0000340a 
- 00016998  0x00003cd3 call  0x000033f6 
- 00016999  0x00003cd4 fetch  0x00000001 , 0x0000471e 
- 00017000  0x00003cd5 nbranch  0x00004492 , 0x00000034 
- 00017001  0x00003cd6 branch  0x0000340a 
- 00017002  0x00003cd9 bmark1  0x00000026 , 0x00007e1d 
- 00017003  0x00003cda branch  0x00004386 
- 00017004  0x00003cdf bpatch  0x000000ea , 0x0000401d 
- 00017005  0x00003ce0 jam  0x00000000 , 0x000046b4 
- 00017006  0x00003ce1 call  0x00004386 
- 00017007  0x00003ce2 call  0x000041c1 
- 00017008  0x00003ce3 branch  0x000042b0 
- 00017009  0x00003ce8 fetch  0x00000006 , 0x000041d0 
- 00017010  0x00003ce9 branch  0x000033eb , 0x00000034 
- 00017011  0x00003cea call  0x0000427e 
- 00017012  0x00003ceb jam  0x00000017 , 0x0000016d 
- 00017013  0x00003cec fetch  0x00000001 , 0x0000465a 
- 00017014  0x00003ced nbranch  0x000033e1 , 0x00000034 
- 00017015  0x00003cee jam  0x00000004 , 0x0000016d 
- 00017016  0x00003cef branch  0x000033e1 
- 00017017  0x00003cf2 fetch  0x00000002 , 0x000046a8 
- 00017018  0x00003cf3 store  0x00000002 , 0x000046ae 
- 00017019  0x00003cf4 call  0x0000427e 
- 00017020  0x00003cf5 call  0x00003418 
- 00017021  0x00003cf6 branch  0x00007df4 
- 00017022  0x00003cf9 setarg  0x000000c8 
- 00017023  0x00003cfa store  0x00000002 , 0x00004716 
- 00017024  0x00003cfb store  0x00000002 , 0x00004718 
- 00017025  0x00003cfc branch  0x00004285 
- 00017026  0x00003cff setarg  0x000003e8 
- 00017027  0x00003d00 store  0x00000002 , 0x00004716 
- 00017028  0x00003d01 store  0x00000002 , 0x00004718 
- 00017029  0x00003d03 fetch  0x00000001 , 0x00004720 
- 00017030  0x00003d04 beq  0x00000001 , 0x0000428a 
- 00017031  0x00003d05 beq  0x00000002 , 0x0000428c 
- 00017032  0x00003d06 beq  0x00000003 , 0x0000428e 
- 00017033  0x00003d07 rtn 
- 00017034  0x00003d09 fetch  0x00000001 , 0x000046f0 
- 00017035  0x00003d0a branch  0x0000428f 
- 00017036  0x00003d0c fetch  0x00000001 , 0x000046f1 
- 00017037  0x00003d0d branch  0x0000428f 
- 00017038  0x00003d0f fetch  0x00000001 , 0x000046f2 
- 00017039  0x00003d11 store  0x00000001 , 0x00000aa2 
- 00017040  0x00003d12 call  0x00004482 
- 00017041  0x00003d13 fetch  0x00000001 , 0x00000aa2 
- 00017042  0x00003d14 store  0x00000001 , 0x00004715 
- 00017043  0x00003d15 arg  0x00000000 , 0x00000011 
- 00017044  0x00003d16 jam  0x00000001 , 0x00004713 
- 00017045  0x00003d17 branch  0x00007d1e 
- 00017046  0x00003d1a arg  0x00000000 , 0x00000011 
- 00017047  0x00003d1b branch  0x00007d19 
- 00017048  0x00003d1d arg  0x00000000 , 0x00000011 
- 00017049  0x00003d1e branch  0x00007d14 
- 00017050  0x00003d21 branch  0x000041c1 
- 00017051  0x00003d24 jam  0x00000001 , 0x000041e2 
- 00017052  0x00003d25 call  0x00003416 
- 00017053  0x00003d26 call  0x00003412 
- 00017054  0x00003d27 setarg  0x00000000 
- 00017055  0x00003d28 store  0x00000002 , 0x0000467e 
- 00017056  0x00003d29 store  0x00000001 , 0x00004680 
- 00017057  0x00003d2a branch  0x0000340e 
- 00017058  0x00003d2d call  0x0000435f 
- 00017059  0x00003d2e fetch  0x00000001 , 0x00004720 
- 00017060  0x00003d2f fetcht  0x00000001 , 0x00004703 
- 00017061  0x00003d30 isub  0x00000002 , 0x0000003e 
- 00017062  0x00003d31 branch  0x000042ab , 0x00000005 
- 00017063  0x00003d32 fetch  0x00000001 , 0x00004210 
- 00017064  0x00003d33 beq  0x00000033 , 0x00004271 
- 00017065  0x00003d34 beq  0x00000034 , 0x00004279 
- 00017066  0x00003d35 branch  0x000042b0 
- 00017067  0x00003d37 call  0x00003d57 
- 00017068  0x00003d38 rtnmark1  0x00000026 
- 00017069  0x00003d39 fetch  0x00000001 , 0x0000471e 
- 00017070  0x00003d3a nbranch  0x00004492 , 0x00000034 
- 00017071  0x00003d3b rtn 
- 00017072  0x00003d3e bpatch  0x000000eb , 0x0000401d 
- 00017073  0x00003d3f fetch  0x00000002 , 0x00004682 
- 00017074  0x00003d40 bbit1  0x0000000b , 0x000042b7 
- 00017075  0x00003d41 fetch  0x00000004 , 0x000046d3 
- 00017076  0x00003d42 bbit0  0x00000018 , 0x000042b7 
- 00017077  0x00003d43 random  0x0000003f 
- 00017078  0x00003d44 store  0x00000001 , 0x000044a1 
- 00017079  0x00003d46 call  0x00003418 
- 00017080  0x00003d47 fetch  0x00000002 , 0x00004687 
- 00017081  0x00003d48 store  0x00000002 , 0x000046ac 
- 00017082  0x00003d49 jam  0x00000006 , 0x0000016d 
- 00017083  0x00003d4a setarg  0x00000000 
- 00017084  0x00003d4b store  0x00000002 , 0x000046b0 
- 00017085  0x00003d4c store  0x00000002 , 0x000046ae 
- 00017086  0x00003d4d arg  0x00000007 , 0x00000007 
- 00017087  0x00003d4e call  0x000043ce 
- 00017088  0x00003d4f call  0x000043ca 
- 00017089  0x00003d50 fetch  0x00000001 , 0x00004092 
- 00017090  0x00003d51 isolate1  0x00000001 , 0x0000003f 
- 00017091  0x00003d52 call  0x00007df4 , 0x00000001 
- 00017092  0x00003d53 fetch  0x00000001 , 0x00004092 
- 00017093  0x00003d54 isolate1  0x00000000 , 0x0000003f 
- 00017094  0x00003d55 call  0x00007ddd , 0x00000001 
- 00017095  0x00003d56 fetch  0x00000004 , 0x000046d3 
- 00017096  0x00003d57 bbit1  0x0000001c , 0x0000422e 
- 00017097  0x00003d58 branch  0x00004282 
- 00017098  0x00003d5b bpatch  0x000000ec , 0x0000401d 
- 00017099  0x00003d5c fetch  0x00000001 , 0x00004092 
- 00017100  0x00003d5d isolate1  0x00000001 , 0x0000003f 
- 00017101  0x00003d5e call  0x000042d4 , 0x00000001 
- 00017102  0x00003d5f fetch  0x00000001 , 0x00004092 
- 00017103  0x00003d60 isolate1  0x00000000 , 0x0000003f 
- 00017104  0x00003d61 call  0x000042d7 , 0x00000001 
- 00017105  0x00003d62 fetch  0x00000004 , 0x000046d3 
- 00017106  0x00003d63 bbit1  0x0000001c , 0x0000421a 
- 00017107  0x00003d64 branch  0x00004482 
- 00017108  0x00003d66 setarg  0x00000000 
- 00017109  0x00003d67 store  0x00000002 , 0x000046ae 
- 00017110  0x00003d68 branch  0x00007dfa 
- 00017111  0x00003d6a setarg  0x00000000 
- 00017112  0x00003d6b store  0x00000002 , 0x000046ac 
- 00017113  0x00003d6c branch  0x00007de2 
- 00017114  0x00003d73 fetch  0x00000004 , 0x000046d3 
- 00017115  0x00003d74 rtnbit0  0x00000007 
- 00017116  0x00003d75 arg  0x00000007 , 0x00000007 
- 00017117  0x00003d76 call  0x000043d2 
- 00017118  0x00003d77 call  0x000042e8 
- 00017119  0x00003d79 call  0x000042fb 
- 00017120  0x00003d7a fetch  0x00000004 , 0x000046d3 
- 00017121  0x00003d7b bbit1  0x00000013 , 0x00004435 
- 00017122  0x00003d7c bbit1  0x00000014 , 0x000042e4 
- 00017123  0x00003d7d rtn 
- 00017124  0x00003d7f arg  0x00000058 , 0x00000002 
- 00017125  0x00003d80 arg  0x00004720 , 0x00000011 
- 00017126  0x00003d81 arg  0x00000000 , 0x00000012 
- 00017127  0x00003d82 branch  0x000065d1 
- 00017128  0x00003d85 fetch  0x00000001 , 0x00000185 
- 00017129  0x00003d86 beq  0x00000034 , 0x000042ec 
- 00017130  0x00003d87 beq  0x00000033 , 0x000042ef 
- 00017131  0x00003d88 rtn 
- 00017132  0x00003d8a store  0x00000001 , 0x000046c7 
- 00017133  0x00003d8b fetch  0x00000006 , 0x0000044f 
- 00017134  0x00003d8c branch  0x000042f1 
- 00017135  0x00003d8e store  0x00000001 , 0x000046c7 
- 00017136  0x00003d8f fetch  0x00000006 , 0x00000040 
- 00017137  0x00003d91 store  0x00000006 , 0x000046c8 
- 00017138  0x00003d92 fetch  0x00000007 , 0x000046c7 
- 00017139  0x00003d93 arg  0x00004721 , 0x00000006 
- 00017140  0x00003d94 arg  0x00000003 , 0x00000039 
- 00017141  0x00003d96 ifetcht  0x00000007 , 0x00000006 
- 00017142  0x00003d97 isub  0x00000002 , 0x0000003e 
- 00017143  0x00003d98 branch  0x00004310 , 0x00000005 
- 00017144  0x00003d99 increase  0x00000016 , 0x00000006 
- 00017145  0x00003d9a loop  0x000042f5 
- 00017146  0x00003d9b rtn 
- 00017147  0x00003d9d arg  0x00004721 , 0x00000011 
- 00017148  0x00003d9e fetch  0x00000001 , 0x00004720 
- 00017149  0x00003d9f increase  0xffffffff , 0x0000003f 
- 00017150  0x00003da0 mul32  0x0000003f , 0x0000001d , 0x0000003f 
- 00017151  0x00003da1 iadd  0x00000011 , 0x00000011 
- 00017152  0x00003da2 fetch  0x00000001 , 0x00000185 
- 00017153  0x00003da3 istore  0x00000001 , 0x00000011 
- 00017154  0x00003da4 beq  0x00000034 , 0x00004305 
- 00017155  0x00003da5 beq  0x00000033 , 0x0000430c 
- 00017156  0x00003da6 rtn 
- 00017157  0x00003da9 fetch  0x00000006 , 0x0000044f 
- 00017158  0x00003daa istore  0x00000006 , 0x00000005 
- 00017159  0x00003dab arg  0x00004419 , 0x00000006 
- 00017160  0x00003dac call  0x00007ebf 
- 00017161  0x00003dad fetch  0x00000006 , 0x000044a0 
- 00017162  0x00003dae istore  0x00000006 , 0x00000005 
- 00017163  0x00003daf rtn 
- 00017164  0x00003db1 fetch  0x00000006 , 0x00000040 
- 00017165  0x00003db2 istore  0x00000006 , 0x00000005 
- 00017166  0x00003db3 arg  0x000041be , 0x00000006 
- 00017167  0x00003db4 branch  0x00007ebf 
- 00017168  0x00003db7 increase  0xfffffffa , 0x00000006 
- 00017169  0x00003db8 copy  0x00000006 , 0x00000005 
- 00017170  0x00003db9 fetcht  0x00000006 , 0x000046c8 
- 00017171  0x00003dba increase  0x00000003 , 0x00000002 
- 00017172  0x00003dbb istoret  0x00000006 , 0x00000005 
- 00017173  0x00003dbc rtn 
- 00017174  0x00003dc1 arg  0x00000058 , 0x00000002 
- 00017175  0x00003dc2 arg  0x00004720 , 0x00000011 
- 00017176  0x00003dc3 arg  0x00000000 , 0x00000012 
- 00017177  0x00003dc4 call  0x000065df 
- 00017178  0x00003dc6 arg  0x00004721 , 0x00000011 
- 00017179  0x00003dc7 fetch  0x00000001 , 0x00004720 
- 00017180  0x00003dc8 fetcht  0x00000001 , 0x00004703 
- 00017181  0x00003dc9 isub  0x00000002 , 0x0000003e 
- 00017182  0x00003dca rtn  0x00000005 
- 00017183  0x00003dcb increase  0xffffffff , 0x0000003f 
- 00017184  0x00003dcc mul32  0x0000003f , 0x0000001d , 0x0000003f 
- 00017185  0x00003dcd iadd  0x00000011 , 0x00000011 
- 00017186  0x00003dce ifetch  0x00000001 , 0x00000011 
- 00017187  0x00003dcf store  0x00000001 , 0x00004210 
- 00017188  0x00003dd0 beq  0x00000033 , 0x00004327 
- 00017189  0x00003dd1 beq  0x00000034 , 0x0000432c 
- 00017190  0x00003dd2 rtn 
- 00017191  0x00003dd5 ifetch  0x00000006 , 0x00000006 
- 00017192  0x00003dd7 store  0x00000006 , 0x000041d0 
- 00017193  0x00003dd8 arg  0x000041be , 0x00000005 
- 00017194  0x00003dd9 call  0x00007ebf 
- 00017195  0x00003dda branch  0x000067d7 
- 00017196  0x00003ddd ifetch  0x00000006 , 0x00000006 
- 00017197  0x00003ddf store  0x00000006 , 0x000041d0 
- 00017198  0x00003de0 arg  0x00004419 , 0x00000005 
- 00017199  0x00003de1 call  0x00007ebf 
- 00017200  0x00003de2 ifetch  0x00000006 , 0x00000006 
- 00017201  0x00003de3 store  0x00000006 , 0x000044a0 
- 00017202  0x00003de4 rtn 
- 00017203  0x00003de8 fetch  0x00000001 , 0x000046f5 
- 00017204  0x00003de9 bbit1  0x00000005 , 0x00004349 
- 00017205  0x00003dea bbit1  0x00000006 , 0x00004359 
- 00017206  0x00003deb branch  0x00004337 
- 00017207  0x00003dee call  0x00004083 
- 00017208  0x00003def beq  0x00000006 , 0x0000433e 
- 00017209  0x00003df1 jam  0x0000001e , 0x000046d8 
- 00017210  0x00003df2 fetch  0x00000001 , 0x000046d9 
- 00017211  0x00003df3 rtneq  0x00000001 
- 00017212  0x00003df4 jam  0x00000001 , 0x000046d9 
- 00017213  0x00003df5 rtn 
- 00017214  0x00003df8 call  0x00004343 
- 00017215  0x00003df9 fetch  0x00000001 , 0x000046d9 
- 00017216  0x00003dfa rtneq  0x00000000 
- 00017217  0x00003dfb jam  0x00000000 , 0x000046d9 
- 00017218  0x00003dfc branch  0x000043c0 
- 00017219  0x00003dff fetch  0x00000001 , 0x000046d8 
- 00017220  0x00003e00 rtn  0x00000034 
- 00017221  0x00003e01 pincrease  0xffffffff 
- 00017222  0x00003e02 store  0x00000001 , 0x000046d8 
- 00017223  0x00003e03 nrtn  0x00000034 
- 00017224  0x00003e04 branch  0x00004370 
- 00017225  0x00003e07 fetch  0x00000001 , 0x000046ed 
- 00017226  0x00003e08 rtneq  0x000000ff 
- 00017227  0x00003e09 fetcht  0x00000001 , 0x000046ed 
- 00017228  0x00003e0a call  0x0000681d 
- 00017229  0x00003e0b branch  0x00004354 , 0x00000001 
- 00017230  0x00003e0d fetch  0x00000001 , 0x000046d9 
- 00017231  0x00003e0e rtneq  0x00000001 
- 00017232  0x00003e0f jam  0x00000001 , 0x000046d9 
- 00017233  0x00003e10 fetch  0x00000004 , 0x000046d3 
- 00017234  0x00003e11 rtnbit1  0x00000006 
- 00017235  0x00003e12 branch  0x00004370 
- 00017236  0x00003e15 fetch  0x00000001 , 0x000046d9 
- 00017237  0x00003e16 rtneq  0x00000000 
- 00017238  0x00003e17 jam  0x00000000 , 0x000046d9 
- 00017239  0x00003e18 arg  0x00000006 , 0x00000007 
- 00017240  0x00003e19 branch  0x000043d2 
- 00017241  0x00003e1e fetch  0x00000001 , 0x00000004 , 0x000046d3 
- 00017242  0x00003e1f rtnbit0  0x00000006 
- 00017243  0x00003e20 fetch  0x00000001 , 0x00004720 
- 00017244  0x00003e21 beq  0x00000001 , 0x00004369 
- 00017245  0x00003e22 beq  0x00000002 , 0x0000436c 
- 00017246  0x00003e23 rtn 
- 00017247  0x00003e25 fetch  0x00000001 , 0x00000004 , 0x000046d3 
- 00017248  0x00003e26 rtnbit0  0x00000006 
- 00017249  0x00003e27 fetcht  0x00000001 , 0x000046ed 
- 00017250  0x00003e28 call  0x0000681d 
- 00017251  0x00003e29 branch  0x00004366 , 0x00000001 
- 00017252  0x00003e2b jam  0x00000001 , 0x00004720 
- 00017253  0x00003e2c rtn 
- 00017254  0x00003e2e fetch  0x00000001 , 0x00004703 
- 00017255  0x00003e2f store  0x00000001 , 0x00004720 
- 00017256  0x00003e30 rtn 
- 00017257  0x00003e32 fetcht  0x00000001 , 0x000046ed 
- 00017258  0x00003e33 nbranch  0x00004370 , 0x00000001 
- 00017259  0x00003e34 rtn 
- 00017260  0x00003e36 fetcht  0x00000001 , 0x000046ed 
- 00017261  0x00003e37 call  0x0000681d 
- 00017262  0x00003e38 branch  0x00004354 , 0x00000001 
- 00017263  0x00003e39 rtn 
- 00017264  0x00003e3f fetcht  0x00000001 , 0x00004720 
- 00017265  0x00003e40 increase  0x00000001 , 0x00000002 
- 00017266  0x00003e41 fetch  0x00000001 , 0x000046d2 
- 00017267  0x00003e42 isub  0x00000002 , 0x0000003e 
- 00017268  0x00003e43 ncall  0x000043cc , 0x00000002 
- 00017269  0x00003e44 storet  0x00000001 , 0x00004720 
- 00017270  0x00003e45 jam  0x00000000 , 0x000041bd 
- 00017271  0x00003e46 call  0x0000437a 
- 00017272  0x00003e47 call  0x000043c0 
- 00017273  0x00003e49 branch  0x0000437e 
- 00017274  0x00003e4c arg  0x00000001 , 0x00000002 
- 00017275  0x00003e4d arg  0x00004720 , 0x00000011 
- 00017276  0x00003e4e arg  0x00000000 , 0x00000012 
- 00017277  0x00003e4f branch  0x00006606 
- 00017278  0x00003e52 call  0x00004381 
- 00017279  0x00003e53 call  0x000043c2 
- 00017280  0x00003e54 branch  0x000041d7 
- 00017281  0x00003e56 fetch  0x00000002 , 0x00004682 
- 00017282  0x00003e57 bbit1  0x00000007 , 0x00004392 
- 00017283  0x00003e58 bbit1  0x00000009 , 0x00003402 
- 00017284  0x00003e59 bbit1  0x00000000 , 0x000033e9 
- 00017285  0x00003e5a branch  0x000042ca 
- 00017286  0x00003e5d bpatch  0x000000ed , 0x0000401d 
- 00017287  0x00003e5e setarg  0x00000000 
- 00017288  0x00003e5f store  0x00000002 , 0x000046b0 
- 00017289  0x00003e60 fetch  0x00000002 , 0x00004682 
- 00017290  0x00003e61 bbit1  0x00000009 , 0x00003402 
- 00017291  0x00003e62 fetch  0x00000002 , 0x00004682 
- 00017292  0x00003e63 bbit1  0x00000000 , 0x000033e9 
- 00017293  0x00003e64 rtn 
- 00017294  0x00003e67 setarg  0x00000001 
- 00017295  0x00003e68 store  0x00000006 , 0x00000040 
- 00017296  0x00003e69 jam  0x00000033 , 0x00000185 
- 00017297  0x00003e6a branch  0x000042df 
- 00017298  0x00003e6e call  0x000043c4 
- 00017299  0x00003e6f branch  0x00007e2f 
- 00017300  0x00003e72 fetch  0x00000001 , 0x000046ec 
- 00017301  0x00003e73 rtneq  0x000000ff 
- 00017302  0x00003e74 fetcht  0x00000001 , 0x000046ec 
- 00017303  0x00003e75 call  0x0000681d 
- 00017304  0x00003e76 branch  0x0000439f , 0x00000001 
- 00017305  0x00003e78 fetch  0x00000001 , 0x00004685 
- 00017306  0x00003e79 store  0x00000001 , 0x000046da 
- 00017307  0x00003e7a fetch  0x00000001 , 0x000046db 
- 00017308  0x00003e7b rtneq  0x00000001 
- 00017309  0x00003e7c jam  0x00000001 , 0x000046db 
- 00017310  0x00003e7d branch  0x000043ca 
- 00017311  0x00003e7f call  0x000043b5 
- 00017312  0x00003e80 fetch  0x00000001 , 0x000046db 
- 00017313  0x00003e81 rtneq  0x00000000 
- 00017314  0x00003e82 jam  0x00000000 , 0x000046db 
- 00017315  0x00003e83 call  0x00007e2f 
- 00017316  0x00003e84 branch  0x000043c8 
- 00017317  0x00003e88 fetch  0x00000001 , 0x000046f5 
- 00017318  0x00003e89 bbit1  0x00000004 , 0x00004394 
- 00017319  0x00003e8b call  0x00004083 
- 00017320  0x00003e8c beq  0x00000007 , 0x000043af 
- 00017321  0x00003e8e fetch  0x00000001 , 0x00004685 
- 00017322  0x00003e8f store  0x00000001 , 0x000046da 
- 00017323  0x00003e90 fetch  0x00000001 , 0x000046db 
- 00017324  0x00003e91 rtneq  0x00000001 
- 00017325  0x00003e92 jam  0x00000001 , 0x000046db 
- 00017326  0x00003e93 branch  0x000043ca 
- 00017327  0x00003e97 call  0x000043b5 
- 00017328  0x00003e98 fetch  0x00000001 , 0x000046db 
- 00017329  0x00003e99 rtneq  0x00000000 
- 00017330  0x00003e9a jam  0x00000000 , 0x000046db 
- 00017331  0x00003e9b call  0x00007e2f 
- 00017332  0x00003e9c branch  0x000043c8 
- 00017333  0x00003e9f arg  0x000046da , 0x00000013 
- 00017334  0x00003ea0 arg  0x000043b8 , 0x00000012 
- 00017335  0x00003ea1 branch  0x0000336d 
- 00017336  0x00003ea4 arg  0x00000006 , 0x00000007 
- 00017337  0x00003ea5 call  0x000043ce 
- 00017338  0x00003ea6 call  0x00003357 
- 00017339  0x00003ea7 branch  0x0000426c 
- 00017340  0x00003eab arg  0x00000001 , 0x00000007 
- 00017341  0x00003eac branch  0x000043ce 
- 00017342  0x00003eae arg  0x00000001 , 0x00000007 
- 00017343  0x00003eaf branch  0x000043d2 
- 00017344  0x00003eb1 arg  0x00000000 , 0x00000007 
- 00017345  0x00003eb2 branch  0x000043ce 
- 00017346  0x00003eb4 arg  0x00000000 , 0x00000007 
- 00017347  0x00003eb5 branch  0x000043d2 
- 00017348  0x00003eb7 arg  0x00000002 , 0x00000007 
- 00017349  0x00003eb8 branch  0x000043ce 
- 00017350  0x00003eba arg  0x00000002 , 0x00000007 
- 00017351  0x00003ebb branch  0x000043d2 
- 00017352  0x00003ebd arg  0x00000005 , 0x00000007 
- 00017353  0x00003ebe branch  0x000043ce 
- 00017354  0x00003ec0 arg  0x00000005 , 0x00000007 
- 00017355  0x00003ec1 branch  0x000043d2 
- 00017356  0x00003ec6 arg  0x00000001 , 0x00000002 
- 00017357  0x00003ec7 rtn 
- 00017358  0x00003eca fetch  0x00000004 , 0x000046d3 
- 00017359  0x00003ecb qset1  0x0000003f 
- 00017360  0x00003ecc store  0x00000004 , 0x000046d3 
- 00017361  0x00003ecd rtn 
- 00017362  0x00003ed0 fetch  0x00000004 , 0x000046d3 
- 00017363  0x00003ed1 qset0  0x0000003f 
- 00017364  0x00003ed2 store  0x00000004 , 0x000046d3 
- 00017365  0x00003ed3 rtn 
- 00017366  0x00003ed6 fetch  0x00000004 , 0x000046d3 
- 00017367  0x00003ed7 rtnbit0  0x0000001a 
- 00017368  0x00003ed8 fetch  0x00000001 , 0x000046ce 
- 00017369  0x00003ed9 increase  0x00000001 , 0x0000003f 
- 00017370  0x00003eda store  0x00000001 , 0x000046ce 
- 00017371  0x00003edb sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00017372  0x00003edc rtn  0x00000002 
- 00017373  0x00003edd jam  0x00000000 , 0x000046ce 
- 00017374  0x00003ede call  0x000068eb 
- 00017375  0x00003edf call  0x00006908 
- 00017376  0x00003ee0 store  0x00000002 , 0x0000470f 
- 00017377  0x00003ee1 arg  0x00004709 , 0x00000011 
- 00017378  0x00003ee2 call  0x00006930 
- 00017379  0x00003ee3 fetch  0x00000001 , 0x00004231 
- 00017380  0x00003ee4 bbit1  0x00000001 , 0x000044a0 
- 00017381  0x00003ee5 bbit0  0x00000000 , 0x000043e9 
- 00017382  0x00003ee6 branch  0x000043e7 
- 00017383  0x00003ee8 arg  0x00000004 , 0x00000007 
- 00017384  0x00003ee9 branch  0x000043ce 
- 00017385  0x00003eeb arg  0x00000004 , 0x00000007 
- 00017386  0x00003eec branch  0x000043d2 
- 00017387  0x00003eef fetch  0x00000004 , 0x000046d3 
- 00017388  0x00003ef0 rtnbit0  0x00000004 
- 00017389  0x00003ef1 fetch  0x00000001 , 0x000046ef 
- 00017390  0x00003ef2 store  0x00000001 , 0x00004715 
- 00017391  0x00003ef3 fetch  0x00000001 , 0x000046cf 
- 00017392  0x00003ef4 pincrease  0x00000001 
- 00017393  0x00003ef5 store  0x00000001 , 0x000046cf 
- 00017394  0x00003ef6 sub  0x0000003f , 0x00000014 , 0x0000003e 
- 00017395  0x00003ef7 ncall  0x000043f9 , 0x00000002 
- 00017396  0x00003ef8 beq  0x00000002 , 0x000043fb 
- 00017397  0x00003ef9 beq  0x00000004 , 0x000043fe 
- 00017398  0x00003efa beq  0x00000006 , 0x000043fb 
- 00017399  0x00003efb beq  0x00000008 , 0x000043fe 
- 00017400  0x00003efc rtn 
- 00017401  0x00003efe jam  0x00000001 , 0x000046cf 
- 00017402  0x00003eff branch  0x000043fe 
- 00017403  0x00003f01 arg  0x00000000 , 0x00000011 
- 00017404  0x00003f02 jam  0x00000002 , 0x00004713 
- 00017405  0x00003f03 branch  0x00007d14 
- 00017406  0x00003f05 arg  0x00000000 , 0x00000011 
- 00017407  0x00003f06 jam  0x00000002 , 0x00004713 
- 00017408  0x00003f07 branch  0x00007d19 
- 00017409  0x00003f0a call  0x00003f97 
- 00017410  0x00003f0b nrtn  0x00000028 
- 00017411  0x00003f0c arg  0x00000007 , 0x00000011 
- 00017412  0x00003f0d arg  0x0000469a , 0x00000012 
- 00017413  0x00003f0e rtn 
- 00017414  0x00003f11 fetch  0x00000001 , 0x0000478b 
- 00017415  0x00003f12 rtn  0x00000034 
- 00017416  0x00003f14 fetcht  0x00000001 , 0x000046e7 
- 00017417  0x00003f15 call  0x0000681d 
- 00017418  0x00003f16 call  0x00004410 , 0x00000001 
- 00017419  0x00003f17 fetch  0x00000001 , 0x00004704 
- 00017420  0x00003f18 nrtn  0x00000034 
- 00017421  0x00003f19 call  0x00004083 
- 00017422  0x00003f1a nrtn  0x00000034 
- 00017423  0x00003f1b branch  0x00002d83 
- 00017424  0x00003f1e fetch  0x00000001 , 0x000046e7 
- 00017425  0x00003f1f rtneq  0x000000ff 
- 00017426  0x00003f20 jam  0x0000000a , 0x00004704 
- 00017427  0x00003f21 rtn 
- 00017428  0x00003f25 call  0x00004423 
- 00017429  0x00003f26 fetch  0x00000002 , 0x00004778 
- 00017430  0x00003f27 arg  0x0000aa55 , 0x00000002 
- 00017431  0x00003f28 isub  0x00000002 , 0x0000003e 
- 00017432  0x00003f29 branch  0x0000442b , 0x00000005 
- 00017433  0x00003f2a storet  0x00000002 , 0x00004778 
- 00017434  0x00003f2b call  0x0000441c 
- 00017435  0x00003f2c branch  0x00004435 
- 00017436  0x00003f2e fetch  0x00000006 , 0x000044a0 
- 00017437  0x00003f2f store  0x00000006 , 0x00004738 
- 00017438  0x00003f30 add  0x0000003f , 0x00000100 , 0x0000003f 
- 00017439  0x00003f31 store  0x00000006 , 0x00004755 
- 00017440  0x00003f32 add  0x0000003f , 0x00000100 , 0x0000003f 
- 00017441  0x00003f33 store  0x00000006 , 0x00004772 
- 00017442  0x00003f34 rtn 
- 00017443  0x00003f38 setarg  0x00004778 
- 00017444  0x00003f39 arg  0x00004720 , 0x00000002 
- 00017445  0x00003f3a isub  0x00000002 , 0x00000002 
- 00017446  0x00003f3b fetch  0x00000003 , 0x00004700 
- 00017447  0x00003f3c iadd  0x00000002 , 0x0000003f 
- 00017448  0x00003f3d arg  0x00000002 , 0x00000002 
- 00017449  0x00003f3e arg  0x00004778 , 0x00000011 
- 00017450  0x00003f3f branch  0x00006562 
- 00017451  0x00003f43 setarg  0x0000477f 
- 00017452  0x00003f44 arg  0x00004720 , 0x00000002 
- 00017453  0x00003f45 isub  0x00000002 , 0x00000002 
- 00017454  0x00003f46 fetch  0x00000003 , 0x00004700 
- 00017455  0x00003f47 arg  0x00004720 , 0x00000011 
- 00017456  0x00003f48 call  0x00006562 
- 00017457  0x00003f49 call  0x0000431a 
- 00017458  0x00003f4a fetch  0x00000004 , 0x0000477b 
- 00017459  0x00003f4b call  0x00002c7a 
- 00017460  0x00003f4c branch  0x0000322c 
- 00017461  0x00003f4f setarg  0x0000477f 
- 00017462  0x00003f50 arg  0x00004720 , 0x00000002 
- 00017463  0x00003f51 isub  0x00000002 , 0x00000002 
- 00017464  0x00003f52 arg  0x00004720 , 0x00000011 
- 00017465  0x00003f53 fetch  0x00000003 , 0x00004700 
- 00017466  0x00003f54 branch  0x00006514 
- 00017467  0x00003f57 arg  0x00000001 , 0x00000002 
- 00017468  0x00003f58 arg  0x0000477a , 0x00000011 
- 00017469  0x00003f59 arg  0x0000005a , 0x00000012 
- 00017470  0x00003f5a branch  0x000065d1 
- 00017471  0x00003f5d arg  0x00000001 , 0x00000002 
- 00017472  0x00003f5e arg  0x0000477a , 0x00000011 
- 00017473  0x00003f5f arg  0x0000005a , 0x00000012 
- 00017474  0x00003f60 branch  0x000065df 
- 00017475  0x00003f63 rtnmark1  0x00000026 
- 00017476  0x00003f64 fetch  0x00000004 , 0x000046d3 
- 00017477  0x00003f65 rtnbit0  0x00000016 
- 00017478  0x00003f66 fetch  0x00000001 , 0x00004705 
- 00017479  0x00003f67 pincrease  0x00000001 
- 00017480  0x00003f68 and  0x0000003f , 0x00000007 , 0x0000003f 
- 00017481  0x00003f69 store  0x00000001 , 0x00004705 
- 00017482  0x00003f6a rtnne  0x00000007 
- 00017483  0x00003f6b fetch  0x00000002 , 0x00004682 
- 00017484  0x00003f6c bbit1  0x00000000 , 0x0000444f 
- 00017485  0x00003f6d bbit1  0x00000009 , 0x0000444f 
- 00017486  0x00003f6e rtn 
- 00017487  0x00003f74 bpatch  0x000000ee , 0x0000401d 
- 00017488  0x00003f75 fetch  0x00000001 , 0x00004706 
- 00017489  0x00003f76 nrtn  0x00000034 
- 00017490  0x00003f77 fetch  0x00000004 , 0x000046d3 
- 00017491  0x00003f78 rtnbit0  0x00000008 
- 00017492  0x00003f79 fetch  0x00000001 , 0x000046a5 
- 00017493  0x00003f7a call  0x000063fb 
- 00017494  0x00003f7b store  0x00000001 , 0x000046a6 
- 00017495  0x00003f7c sub  0x0000003f , 0x00000010 , 0x0000003e 
- 00017496  0x00003f7d branch  0x0000445b , 0x00000002 
- 00017497  0x00003f7e jam  0x00000000 , 0x00004706 
- 00017498  0x00003f7f rtn 
- 00017499  0x00003f82 jam  0x0000001e , 0x00004706 
- 00017500  0x00003f83 rtn 
- 00017501  0x00003f85 arg  0x00004706 , 0x00000013 
- 00017502  0x00003f86 arg  0x00004460 , 0x00000012 
- 00017503  0x00003f87 branch  0x0000336d 
- 00017504  0x00003f8a fetch  0x00000001 , 0x000046a5 
- 00017505  0x00003f8b call  0x00006414 
- 00017506  0x00003f8c sub  0x0000003f , 0x00000010 , 0x0000003e 
- 00017507  0x00003f8d nrtn  0x00000002 
- 00017508  0x00003f8e fetch  0x00000004 , 0x000046d3 
- 00017509  0x00003f8f rtnbit0  0x00000008 
- 00017510  0x00003f90 arg  0x00000008 , 0x00000007 
- 00017511  0x00003f91 call  0x000043d2 
- 00017512  0x00003f92 jam  0x00000000 , 0x00004172 
- 00017513  0x00003f93 jam  0x0000001e , 0x000046c4 
- 00017514  0x00003f94 call  0x00004482 
- 00017515  0x00003f95 fetch  0x00000004 , 0x000046d3 
- 00017516  0x00003f96 bbit1  0x00000015 , 0x00004471 
- 00017517  0x00003f98 fetch  0x00000001 , 0x00004720 
- 00017518  0x00003f99 beq  0x00000001 , 0x00004489 
- 00017519  0x00003f9a beq  0x00000002 , 0x00004476 
- 00017520  0x00003f9b rtn 
- 00017521  0x00003f9d fetch  0x00000001 , 0x00004720 
- 00017522  0x00003f9e beq  0x00000001 , 0x00004489 
- 00017523  0x00003f9f beq  0x00000002 , 0x0000448c 
- 00017524  0x00003fa0 beq  0x00000003 , 0x0000448f 
- 00017525  0x00003fa1 rtn 
- 00017526  0x00003fa4 fetch  0x00000001 , 0x000046f0 
- 00017527  0x00003fa5 branch  0x0000428f 
- 00017528  0x00003faa jam  0x00000020 , 0x00004172 
- 00017529  0x00003fab branch  0x00004482 
- 00017530  0x00003fb0 fetch  0x00000001 , 0x000046f0 
- 00017531  0x00003fb1 rtneq  0x000000ff 
- 00017532  0x00003fb2 store  0x00000001 , 0x00004715 
- 00017533  0x00003fb3 branch  0x00004296 
- 00017534  0x00003fb6 fetch  0x00000001 , 0x000046f1 
- 00017535  0x00003fb7 rtneq  0x000000ff 
- 00017536  0x00003fb8 store  0x00000001 , 0x00004715 
- 00017537  0x00003fb9 branch  0x00004296 
- 00017538  0x00003fbc call  0x00004296 
- 00017539  0x00003fbd call  0x0000447a 
- 00017540  0x00003fbe call  0x0000447e 
- 00017541  0x00003fc0 fetch  0x00000001 , 0x000046f2 
- 00017542  0x00003fc1 rtneq  0x000000ff 
- 00017543  0x00003fc2 store  0x00000001 , 0x00004715 
- 00017544  0x00003fc3 branch  0x00004296 
- 00017545  0x00003fc6 fetch  0x00000001 , 0x000046f0 
- 00017546  0x00003fc7 store  0x00000001 , 0x00004715 
- 00017547  0x00003fc8 branch  0x00004298 
- 00017548  0x00003fca fetch  0x00000001 , 0x000046f1 
- 00017549  0x00003fcb store  0x00000001 , 0x00004715 
- 00017550  0x00003fcc branch  0x00004298 
- 00017551  0x00003fce fetch  0x00000001 , 0x000046f2 
- 00017552  0x00003fcf store  0x00000001 , 0x00004715 
- 00017553  0x00003fd0 branch  0x00004298 
- 00017554  0x00003fd5 bpatch  0x000000ef , 0x0000401d 
- 00017555  0x00003fd6 fetch  0x00000001 , 0x0000471e 
- 00017556  0x00003fd7 increase  0xffffffff , 0x0000003f 
- 00017557  0x00003fd8 store  0x00000001 , 0x0000471e 
- 00017558  0x00003fd9 fetcht  0x00000001 , 0x00004720 
- 00017559  0x00003fda increase  0x00000001 , 0x00000002 
- 00017560  0x00003fdb fetch  0x00000001 , 0x000046d2 
- 00017561  0x00003fdc isub  0x00000002 , 0x0000003e 
- 00017562  0x00003fdd ncall  0x000043cc , 0x00000002 
- 00017563  0x00003fde storet  0x00000001 , 0x00004720 
- 00017564  0x00003fdf jam  0x00000000 , 0x000041bd 
- 00017565  0x00003fe0 call  0x0000437a 
- 00017566  0x00003fe1 call  0x000042fb 
- 00017567  0x00003fe2 branch  0x000042a2 
- 00017568  0x00003fe5 call  0x00004482 
- 00017569  0x00003fe6 setarg  0x00000000 
- 00017570  0x00003fe7 store  0x00000008 , 0x000000a1 
- 00017571  0x00003fe8 branch  0x00002b1f 
- 00017572  0x00003ff4 rtn  0x0000002b 
- 00017573  0x00003ff5 hfetch  0x00000001 , 0x00008081 
- 00017574  0x00003ff6 and_into  0x000000f0 , 0x0000003f 
- 00017575  0x00003ff7 hstore  0x00000001 , 0x00008081 
- 00017576  0x00003ff8 call  0x00006948 
- 00017577  0x00003ff9 setarg  0x000044e6 
- 00017578  0x00003ffa store  0x00000002 , 0x000041eb 
- 00017579  0x00003ffc setarg  0x000044e9 
- 00017580  0x00003ffd store  0x00000002 , 0x000041ed 
- 00017581  0x00003fff setarg  0x000044ef 
- 00017582  0x00004000 store  0x00000002 , 0x000041f3 
- 00017583  0x00004002 setarg  0x000044f2 
- 00017584  0x00004003 store  0x00000002 , 0x000041f5 
- 00017585  0x00004005 setarg  0x000033d0 
- 00017586  0x00004006 store  0x00000002 , 0x000041e9 
- 00017587  0x00004008 call  0x00002c7a 
- 00017588  0x00004009 setarg  0x000045c2 
- 00017589  0x0000400a add  0x00000013 , 0x000000d8 , 0x00000005 
- 00017590  0x0000400b istore  0x00000002 , 0x00000005 
- 00017591  0x0000400d setarg  0x000044ea 
- 00017592  0x0000400e add  0x00000013 , 0x000000da , 0x00000005 
- 00017593  0x0000400f istore  0x00000002 , 0x00000005 
- 00017594  0x00004011 setarg  0x000044e9 
- 00017595  0x00004012 add  0x00000013 , 0x000000dc , 0x00000005 
- 00017596  0x00004013 istore  0x00000002 , 0x00000005 
- 00017597  0x00004015 setarg  0x0000450e 
- 00017598  0x00004016 store  0x00000002 , 0x000041fd 
- 00017599  0x00004018 setarg  0x000044da 
- 00017600  0x00004019 store  0x00000002 , 0x0000475b 
- 00017601  0x0000401b setarg  0x000044d6 
- 00017602  0x0000401c store  0x00000002 , 0x0000475f 
- 00017603  0x0000401e setarg  0x00004560 
- 00017604  0x0000401f store  0x00000002 , 0x0000470f 
- 00017605  0x00004021 bpatch  0x000000f0 , 0x0000401e 
- 00017606  0x00004022 call  0x000044e2 
- 00017607  0x00004023 call  0x00007e38 
- 00017608  0x00004024 jam  0x00000002 , 0x00004172 
- 00017609  0x00004025 fetch  0x00000001 , 0x0000472b 
- 00017610  0x00004026 store  0x00000001 , 0x0000469a 
- 00017611  0x00004027 beq  0x00000000 , 0x000044d5 
- 00017612  0x00004028 fetch  0x00000001 , 0x0000472c 
- 00017613  0x00004029 store  0x00000001 , 0x00004686 
- 00017614  0x0000402b call  0x000044db 
- 00017615  0x0000402c call  0x00007cd3 
- 00017616  0x0000402d call  0x00007cdd 
- 00017617  0x0000402e jam  0x00000001 , 0x00004757 
- 00017618  0x0000402f fetch  0x00000002 , 0x00004682 
- 00017619  0x00004030 rtnbit1  0x0000000c 
- 00017620  0x00004031 branch  0x0000340a 
- 00017621  0x00004036 jam  0x00000002 , 0x00004757 
- 00017622  0x00004038 call  0x000044db 
- 00017623  0x0000403a arg  0x00000000 , 0x00000011 
- 00017624  0x0000403b call  0x00007d1e 
- 00017625  0x0000403d branch  0x00002ee4 
- 00017626  0x00004040 branch  0x000044db 
- 00017627  0x00004043 bpatch  0x000000f1 , 0x0000401e 
- 00017628  0x00004044 fetch  0x00000001 , 0x00004729 
- 00017629  0x00004045 bne  0x000000ff , 0x000044e0 
- 00017630  0x00004047 fetcht  0x00000001 , 0x00004706 
- 00017631  0x00004048 branch  0x0000680e 
- 00017632  0x0000404a store  0x00000001 , 0x00004706 
- 00017633  0x0000404b branch  0x000044de 
- 00017634  0x0000404f call  0x00002c9d 
- 00017635  0x00004050 fetch  0x00000002 , 0x00004753 
- 00017636  0x00004051 store  0x00000002 , 0x00004755 
- 00017637  0x00004052 branch  0x00004515 
- 00017638  0x0000405a call  0x00006835 
- 00017639  0x0000405b call  0x000044e9 
- 00017640  0x0000405c branch  0x0000340a 
- 00017641  0x0000405f branch  0x0000696c 
- 00017642  0x00004062 fetch  0x00000001 , 0x00004765 
- 00017643  0x00004063 rtn  0x00000034 
- 00017644  0x00004065 branch  0x00002d83 
- 00017645  0x00004068 rtn 
- 00017646  0x0000406b branch  0x00006978 
- 00017647  0x0000406e call  0x00004544 
- 00017648  0x0000406f call  0x00004503 
- 00017649  0x00004070 branch  0x000044ee 
- 00017650  0x00004073 copy  0x00000013 , 0x0000003f 
- 00017651  0x00004074 beq  0x0000002d , 0x00003431 
- 00017652  0x00004075 beq  0x00000010 , 0x0000341a 
- 00017653  0x00004076 beq  0x00000039 , 0x000044fb 
- 00017654  0x00004077 beq  0x0000003c , 0x000044ff 
- 00017655  0x00004078 beq  0x0000003a , 0x000044f9 
- 00017656  0x00004079 rtn 
- 00017657  0x0000407c jam  0x00000001 , 0x00004765 
- 00017658  0x0000407d rtn 
- 00017659  0x00004080 jam  0x00000001 , 0x00004765 
- 00017660  0x00004081 jam  0x00000001 , 0x00004763 
- 00017661  0x00004082 jam  0x00000001 , 0x00004764 
- 00017662  0x00004083 rtn 
- 00017663  0x00004086 jam  0x00000001 , 0x00004765 
- 00017664  0x00004087 jam  0x00000001 , 0x00004763 
- 00017665  0x00004088 jam  0x00000001 , 0x00004764 
- 00017666  0x00004089 rtn 
- 00017667  0x0000408c fetch  0x00000001 , 0x00004763 
- 00017668  0x0000408d rtneq  0x00000000 
- 00017669  0x0000408e fetch  0x00000001 , 0x00004762 
- 00017670  0x0000408f rtneq  0x00000001 
- 00017671  0x00004090 jam  0x00000001 , 0x00004762 
- 00017672  0x00004092 arg  0x00000000 , 0x00000011 
- 00017673  0x00004093 branch  0x00007d19 
- 00017674  0x00004095 arg  0x00000000 , 0x00000011 
- 00017675  0x00004096 call  0x00007d19 
- 00017676  0x00004097 call  0x000044db 
- 00017677  0x00004098 branch  0x0000340a 
- 00017678  0x0000409b call  0x0000337b 
- 00017679  0x0000409c branch  0x00004510 
- 00017680  0x0000409f fetch  0x00000001 , 0x0000472d 
- 00017681  0x000040a0 rtn  0x00000034 
- 00017682  0x000040a1 arg  0x00004755 , 0x00000013 
- 00017683  0x000040a2 arg  0x0000450a , 0x00000012 
- 00017684  0x000040a3 branch  0x00003374 
- 00017685  0x000040a7 call  0x0000451a 
- 00017686  0x000040a8 storet  0x00000002 , 0x0000471a 
- 00017687  0x000040a9 call  0x0000451f 
- 00017688  0x000040aa storet  0x00000002 , 0x0000471c 
- 00017689  0x000040ab rtn 
- 00017690  0x000040ae fetch  0x00000002 , 0x0000471a 
- 00017691  0x000040af store  0x00000002 , 0x0000471e 
- 00017692  0x000040b0 call  0x00004540 
- 00017693  0x000040b1 call  0x00004525 
- 00017694  0x000040b2 store  0x00000001 , 0x00004724 
- 00017695  0x000040b4 fetch  0x00000002 , 0x0000471c 
- 00017696  0x000040b5 store  0x00000002 , 0x0000471e 
- 00017697  0x000040b6 call  0x00004542 
- 00017698  0x000040b7 call  0x00004525 
- 00017699  0x000040b8 store  0x00000001 , 0x00004725 
- 00017700  0x000040b9 rtn 
- 00017701  0x000040bb fetch  0x00000002 , 0x00004720 
- 00017702  0x000040bc copy  0x0000003f , 0x00000011 
- 00017703  0x000040bd fetch  0x00000002 , 0x0000471e 
- 00017704  0x000040be call  0x0000452e 
- 00017705  0x000040bf fetch  0x00000001 , 0x00004719 
- 00017706  0x000040c0 nbranch  0x00004537 , 0x00000034 
- 00017707  0x000040c1 nrtn  0x00000002 
- 00017708  0x000040c2 fetcht  0x00000002 , 0x0000471e 
- 00017709  0x000040c3 rtn 
- 00017710  0x000040c5 isub  0x00000002 , 0x0000003f 
- 00017711  0x000040c6 branch  0x00004534 , 0x00000002 
- 00017712  0x000040c7 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00017713  0x000040c8 jam  0x00000001 , 0x00004718 
- 00017714  0x000040c9 isub  0x00000011 , 0x0000003e 
- 00017715  0x000040ca rtn 
- 00017716  0x000040cc jam  0x00000000 , 0x00004718 
- 00017717  0x000040cd isub  0x00000011 , 0x0000003e 
- 00017718  0x000040ce rtn 
- 00017719  0x000040d0 nbranch  0x0000453e , 0x00000002 
- 00017720  0x000040d1 fetch  0x00000001 , 0x00004718 
- 00017721  0x000040d2 nbranch  0x0000453c , 0x00000034 
- 00017722  0x000040d4 setarg  0x00000001 
- 00017723  0x000040d5 rtn 
- 00017724  0x000040d7 setarg  0x00000002 
- 00017725  0x000040d8 rtn 
- 00017726  0x000040da setarg  0x00000000 
- 00017727  0x000040db rtn 
- 00017728  0x000040dd jam  0x00000033 , 0x0000422e 
- 00017729  0x000040de branch  0x000068eb 
- 00017730  0x000040e0 jam  0x00000034 , 0x0000422e 
- 00017731  0x000040e1 branch  0x000068eb 
- 00017732  0x000040e5 fetch  0x00000001 , 0x0000472a 
- 00017733  0x000040e6 rtnne  0x00000001 
- 00017734  0x000040e8 bpatch  0x000000f2 , 0x0000401e 
- 00017735  0x000040e9 jam  0x00000001 , 0x00004719 
- 00017736  0x000040ea call  0x0000451a 
- 00017737  0x000040eb fetch  0x00000002 , 0x00004724 
- 00017738  0x000040ec fetcht  0x00000002 , 0x00004722 
- 00017739  0x000040ed isub  0x00000002 , 0x0000003e 
- 00017740  0x000040ee rtn  0x00000005 
- 00017741  0x000040ef store  0x00000002 , 0x00004722 
- 00017742  0x000040f0 call  0x00004550 
- 00017743  0x000040f1 branch  0x00004554 
- 00017744  0x000040f4 fetch  0x00000001 , 0x00004724 
- 00017745  0x000040f5 branch  0x0000455a , 0x00000034 
- 00017746  0x000040f6 increase  0xffffffff , 0x0000003f 
- 00017747  0x000040f7 branch  0x00004557 
- 00017748  0x000040f9 fetch  0x00000001 , 0x00004725 
- 00017749  0x000040fa branch  0x0000455d , 0x00000034 
- 00017750  0x000040fb increase  0x00000001 , 0x0000003f 
- 00017751  0x000040fd copy  0x0000003f , 0x00000007 
- 00017752  0x000040fe arg  0x00000001 , 0x00000011 
- 00017753  0x000040ff branch  0x00004560 
- 00017754  0x00004102 arg  0x00000000 , 0x00000007 
- 00017755  0x00004103 arg  0x00000000 , 0x00000011 
- 00017756  0x00004104 branch  0x00004560 
- 00017757  0x00004106 arg  0x00000002 , 0x00000007 
- 00017758  0x00004107 arg  0x00000000 , 0x00000011 
- 00017759  0x00004108 branch  0x00004560 
- 00017760  0x0000410b copy  0x00000011 , 0x0000003f 
- 00017761  0x0000410c store  0x00000001 , 0x00004761 
- 00017762  0x0000410d fetch  0x00000001 , 0x00004763 
- 00017763  0x0000410e beq  0x00000000 , 0x00002ee4 
- 00017764  0x0000410f fetch  0x00000002 , 0x00004753 
- 00017765  0x00004110 store  0x00000002 , 0x00004755 
- 00017766  0x00004111 fetch  0x00000001 , 0x00004761 
- 00017767  0x00004112 branch  0x00004580 , 0x00000034 
- 00017768  0x00004114 bpatch  0x000000f3 , 0x0000401e 
- 00017769  0x00004115 arg  0x00000000 , 0x00000011 
- 00017770  0x00004116 call  0x00007d14 
- 00017771  0x00004118 copy  0x00000007 , 0x0000003f 
- 00017772  0x00004119 beq  0x00000004 , 0x000045a3 
- 00017773  0x0000411a beq  0x00000005 , 0x000045a5 
- 00017774  0x0000411b beq  0x00000006 , 0x000045a7 
- 00017775  0x0000411f call  0x0000458b 
- 00017776  0x00004120 beq  0x00000000 , 0x00004574 
- 00017777  0x00004121 beq  0x00000002 , 0x0000457a 
- 00017778  0x00004122 beq  0x00000003 , 0x00004574 
- 00017779  0x00004123 rtn 
- 00017780  0x00004126 copy  0x00000007 , 0x0000003f 
- 00017781  0x00004127 beq  0x00000000 , 0x0000458f 
- 00017782  0x00004128 beq  0x00000001 , 0x00004591 
- 00017783  0x00004129 beq  0x00000002 , 0x00004593 
- 00017784  0x0000412a beq  0x00000003 , 0x00004595 
- 00017785  0x0000412b rtn 
- 00017786  0x0000412e copy  0x00000007 , 0x0000003f 
- 00017787  0x0000412f beq  0x00000000 , 0x00004597 
- 00017788  0x00004130 beq  0x00000001 , 0x0000459a 
- 00017789  0x00004131 beq  0x00000002 , 0x0000459d 
- 00017790  0x00004132 beq  0x00000003 , 0x000045a0 
- 00017791  0x00004133 rtn 
- 00017792  0x00004136 bpatch  0x000000f4 , 0x0000401e 
- 00017793  0x00004137 arg  0x00000000 , 0x00000011 
- 00017794  0x00004138 call  0x00007d19 
- 00017795  0x0000413a copy  0x00000007 , 0x0000003f 
- 00017796  0x0000413b beq  0x00000004 , 0x000045bc 
- 00017797  0x0000413c beq  0x00000005 , 0x000045bc 
- 00017798  0x00004140 call  0x0000458b 
- 00017799  0x00004141 beq  0x00000000 , 0x000045a9 
- 00017800  0x00004142 beq  0x00000002 , 0x000045af 
- 00017801  0x00004143 beq  0x00000003 , 0x000045a9 
- 00017802  0x00004144 rtn 
- 00017803  0x00004147 fetch  0x00000001 , 0x00004728 
- 00017804  0x00004148 fetcht  0x00000001 , 0x00004727 
- 00017805  0x00004149 ior  0x00000002 , 0x0000003f 
- 00017806  0x0000414a rtn 
- 00017807  0x0000414e jam  0x00000001 , 0x00004734 
- 00017808  0x0000414f branch  0x000045be 
- 00017809  0x00004151 jam  0x00000002 , 0x00004734 
- 00017810  0x00004152 branch  0x000045be 
- 00017811  0x00004154 jam  0x00000001 , 0x00004736 
- 00017812  0x00004155 branch  0x000045be 
- 00017813  0x00004157 jam  0x00000002 , 0x00004736 
- 00017814  0x00004158 branch  0x000045be 
- 00017815  0x0000415c jam  0x00000001 , 0x00004734 
- 00017816  0x0000415d jam  0x00000001 , 0x00004736 
- 00017817  0x0000415e branch  0x000045be 
- 00017818  0x00004160 jam  0x00000002 , 0x00004734 
- 00017819  0x00004161 jam  0x00000002 , 0x00004736 
- 00017820  0x00004162 branch  0x000045be 
- 00017821  0x00004164 jam  0x00000002 , 0x00004734 
- 00017822  0x00004165 jam  0x00000001 , 0x00004736 
- 00017823  0x00004166 branch  0x000045be 
- 00017824  0x00004168 jam  0x00000001 , 0x00004734 
- 00017825  0x00004169 jam  0x00000002 , 0x00004736 
- 00017826  0x0000416a branch  0x000045be 
- 00017827  0x0000416e jam  0x00000001 , 0x00004738 
- 00017828  0x0000416f branch  0x000045be 
- 00017829  0x00004171 jam  0x00000002 , 0x00004738 
- 00017830  0x00004172 branch  0x000045be 
- 00017831  0x00004175 jam  0x00000001 , 0x00004741 
- 00017832  0x00004176 branch  0x000045c0 
- 00017833  0x00004179 copy  0x00000007 , 0x0000003f 
- 00017834  0x0000417a beq  0x00000000 , 0x000045b5 
- 00017835  0x0000417b beq  0x00000001 , 0x000045b5 
- 00017836  0x0000417c beq  0x00000002 , 0x000045b7 
- 00017837  0x0000417d beq  0x00000003 , 0x000045b7 
- 00017838  0x0000417e rtn 
- 00017839  0x00004181 copy  0x00000007 , 0x0000003f 
- 00017840  0x00004182 beq  0x00000000 , 0x000045b9 
- 00017841  0x00004183 beq  0x00000001 , 0x000045b9 
- 00017842  0x00004184 beq  0x00000002 , 0x000045b9 
- 00017843  0x00004185 beq  0x00000003 , 0x000045b9 
- 00017844  0x00004186 rtn 
- 00017845  0x0000418a jam  0x00000000 , 0x00004734 
- 00017846  0x0000418b branch  0x000045be 
- 00017847  0x0000418e jam  0x00000000 , 0x00004736 
- 00017848  0x0000418f branch  0x000045be 
- 00017849  0x00004195 jam  0x00000000 , 0x00004734 
- 00017850  0x00004196 jam  0x00000000 , 0x00004736 
- 00017851  0x00004197 branch  0x000045be 
- 00017852  0x0000419b jam  0x00000000 , 0x00004738 
- 00017853  0x0000419c branch  0x000045be 
- 00017854  0x0000419f arg  0x0000472e , 0x00000011 
- 00017855  0x000041a0 branch  0x00007e3d 
- 00017856  0x000041a2 arg  0x0000473b , 0x00000011 
- 00017857  0x000041a3 branch  0x00007e3d 
- 00017858  0x000041a6 fetch  0x00000001 , 0x00004764 
- 00017859  0x000041a7 beq  0x00000001 , 0x000045cc 
- 00017860  0x000041a8 arg  0x00004744 , 0x00000011 
- 00017861  0x000041a9 call  0x00007e54 
- 00017862  0x000041aa nbranch  0x000045d1 , 0x00000028 
- 00017863  0x000041ac arg  0x00004744 , 0x00000006 
- 00017864  0x000041ad ifetch  0x00000001 , 0x00000006 
- 00017865  0x000041ae copy  0x0000003f , 0x00000011 
- 00017866  0x000041af arg  0x00004745 , 0x00000012 
- 00017867  0x000041b2 rtn 
- 00017868  0x000041b5 jam  0x00000000 , 0x00004764 
- 00017869  0x000041b6 enable  0x00000028 
- 00017870  0x000041b7 arg  0x00000001 , 0x00000011 
- 00017871  0x000041b8 arg  0x00004766 , 0x00000012 
- 00017872  0x000041b9 rtn 
- 00017873  0x000041bc fetch  0x00000001 , 0x00004747 
- 00017874  0x000041bd beq  0x00000004 , 0x000045d5 
- 00017875  0x000041be beq  0x00000005 , 0x000045d5 
- 00017876  0x000041bf rtn 
- 00017877  0x000041c1 fetch  0x00000001 , 0x0000474a 
- 00017878  0x000041c2 nbranch  0x000045dc , 0x00000034 
- 00017879  0x000041c3 fetch  0x00000001 , 0x0000474c 
- 00017880  0x000041c4 nbranch  0x000045dc , 0x00000034 
- 00017881  0x000041c5 fetch  0x00000001 , 0x0000474e 
- 00017882  0x000041c6 nbranch  0x000045dc , 0x00000034 
- 00017883  0x000041c7 rtn 
- 00017884  0x000041c9 enable  0x00000028 
- 00017885  0x000041ca branch  0x000045c7 
- 00017886  0x000041d3 rtn  0x0000002b 
- 00017887  0x000041d4 hfetch  0x00000001 , 0x00008081 
- 00017888  0x000041d5 and_into  0x000000fc , 0x0000003f 
- 00017889  0x000041d6 hstore  0x00000001 , 0x00008081 
- 00017890  0x000041d7 setarg  0x000046b4 
- 00017891  0x000041d8 store  0x00000002 , 0x000041eb 
- 00017892  0x000041da setarg  0x000046b3 
- 00017893  0x000041db store  0x00000002 , 0x000041ed 
- 00017894  0x000041dd setarg  0x0000340a 
- 00017895  0x000041de store  0x00000002 , 0x000041f7 
- 00017896  0x000041e0 setarg  0x000046b1 
- 00017897  0x000041e1 store  0x00000002 , 0x000041f3 
- 00017898  0x000041e3 setarg  0x00004612 
- 00017899  0x000041e4 store  0x00000002 , 0x000041f5 
- 00017900  0x000041e6 setarg  0x0000460c 
- 00017901  0x000041e7 store  0x00000002 , 0x000041e9 
- 00017902  0x000041e9 setarg  0x0000476a 
- 00017903  0x000041ea store  0x00000002 , 0x000041f9 
- 00017904  0x000041ec setarg  0x00004686 
- 00017905  0x000041ed store  0x00000002 , 0x000041fd 
- 00017906  0x000041ef setarg  0x00004729 
- 00017907  0x000041f0 store  0x00000002 , 0x000046e7 
- 00017908  0x000041f2 setarg  0x00004806 
- 00017909  0x000041f3 store  0x00000002 , 0x000046e2 
- 00017910  0x000041f4 setarg  0x00004807 
- 00017911  0x000041f5 store  0x00000002 , 0x000046e4 
- 00017912  0x000041f7 call  0x000057a3 
- 00017913  0x000041f8 call  0x000047da 
- 00017914  0x000041f9 call  0x00004788 
- 00017915  0x000041fa call  0x0000476d 
- 00017916  0x000041fb call  0x00006948 
- 00017917  0x000041fc call  0x0000477a 
- 00017918  0x000041fd call  0x00007e38 
- 00017919  0x000041fe call  0x00007d08 
- 00017920  0x000041ff call  0x00004793 
- 00017921  0x00004200 call  0x000047c7 
- 00017922  0x00004202 bpatch  0x000000f5 , 0x0000401e 
- 00017923  0x00004203 call  0x0000464f 
- 00017924  0x00004204 fetch  0x00000001 , 0x000046dd 
- 00017925  0x00004205 beq  0x00000000 , 0x00004609 
- 00017926  0x00004206 fetch  0x00000001 , 0x000046de 
- 00017927  0x00004207 store  0x00000001 , 0x00004686 
- 00017928  0x00004208 branch  0x0000480e 
- 00017929  0x0000420c jam  0x000000ff , 0x00004686 
- 00017930  0x0000420d jam  0x00000001 , 0x000046df 
- 00017931  0x0000420e branch  0x000046d9 
- 00017932  0x00004213 fetch  0x00000001 , 0x000046df 
- 00017933  0x00004214 beq  0x00000002 , 0x000033d0 
- 00017934  0x00004215 call  0x0000527e 
- 00017935  0x00004216 fetch  0x00000001 , 0x00004256 
- 00017936  0x00004217 nbranch  0x000033d0 , 0x00000034 
- 00017937  0x00004218 branch  0x000033d2 
- 00017938  0x0000421d copy  0x00000013 , 0x0000003f 
- 00017939  0x0000421f beq  0x00000001 , 0x00004626 
- 00017940  0x00004220 beq  0x00000002 , 0x00004629 
- 00017941  0x00004221 beq  0x00000004 , 0x00004631 
- 00017942  0x00004222 beq  0x00000005 , 0x00004633 
- 00017943  0x00004223 beq  0x00000006 , 0x00004635 
- 00017944  0x00004224 beq  0x00000007 , 0x00004638 
- 00017945  0x00004225 beq  0x00000012 , 0x0000463c 
- 00017946  0x00004226 beq  0x00000013 , 0x00004644 
- 00017947  0x00004227 beq  0x00000027 , 0x00004645 
- 00017948  0x00004228 beq  0x0000002e , 0x00004648 
- 00017949  0x00004229 beq  0x0000003d , 0x00004649 
- 00017950  0x0000422b beq  0x00000014 , 0x00004658 
- 00017951  0x0000422c beq  0x00000015 , 0x0000465c 
- 00017952  0x0000422d beq  0x0000003f , 0x0000465f 
- 00017953  0x0000422e beq  0x00000040 , 0x00004665 
- 00017954  0x00004230 beq  0x00000010 , 0x0000466b 
- 00017955  0x00004231 beq  0x0000002c , 0x0000466c 
- 00017956  0x00004232 beq  0x0000002d , 0x00004677 
- 00017957  0x00004233 rtn 
- 00017958  0x00004239 jam  0x00000000 , 0x000046ad 
- 00017959  0x0000423a jam  0x00000000 , 0x000046ac 
- 00017960  0x0000423b rtn 
- 00017961  0x0000423f call  0x0000462b 
- 00017962  0x00004240 branch  0x00004631 
- 00017963  0x00004243 jam  0x00000000 , 0x000041e2 
- 00017964  0x00004244 jam  0x00000000 , 0x00004680 
- 00017965  0x00004245 jam  0x00000000 , 0x00004205 
- 00017966  0x00004246 jam  0x00000000 , 0x000046ac 
- 00017967  0x00004247 jam  0x00000000 , 0x000046ad 
- 00017968  0x00004248 branch  0x00007e38 
- 00017969  0x0000424c call  0x000033a9 
- 00017970  0x0000424d branch  0x000046c2 
- 00017971  0x00004251 call  0x000046b6 
- 00017972  0x00004252 branch  0x00003408 
- 00017973  0x00004256 setarg  0x00000002 
- 00017974  0x00004257 store  0x00000001 , 0x00004680 
- 00017975  0x00004258 rtn 
- 00017976  0x0000425c jam  0x00000000 , 0x000046ac 
- 00017977  0x0000425d setarg  0x00000001 
- 00017978  0x0000425e store  0x00000001 , 0x000046ad 
- 00017979  0x0000425f rtn 
- 00017980  0x00004263 fetch  0x00000001 , 0x000041e2 
- 00017981  0x00004264 rtneq  0x00000001 
- 00017982  0x00004265 jam  0x00000001 , 0x000041e2 
- 00017983  0x00004266 call  0x00003416 
- 00017984  0x00004267 call  0x00003414 
- 00017985  0x00004268 call  0x000046b6 
- 00017986  0x00004269 call  0x00003408 
- 00017987  0x0000426a branch  0x0000340e 
- 00017988  0x0000426e branch  0x00004631 
- 00017989  0x00004272 setarg  0x00000005 
- 00017990  0x00004273 store  0x00000001 , 0x000046ac 
- 00017991  0x00004274 rtn 
- 00017992  0x00004278 branch  0x000033cd 
- 00017993  0x0000427d arg  0x00000000 , 0x00000012 
- 00017994  0x0000427e fetch  0x00000001 , 0x00004217 
- 00017995  0x0000427f mul32  0x0000003f , 0x00000022 , 0x00000002 
- 00017996  0x00004280 fetch  0x00000002 , 0x00004215 
- 00017997  0x00004281 copy  0x0000003f , 0x00000011 
- 00017998  0x00004282 branch  0x00006606 
- 00017999  0x00004285 arg  0x00000000 , 0x00000012 
- 00018000  0x00004286 fetch  0x00000001 , 0x0000469a 
- 00018001  0x00004287 rtnbit0  0x00000001 
- 00018002  0x00004288 fetch  0x00000001 , 0x00004217 
- 00018003  0x00004289 rtn  0x00000034 
- 00018004  0x0000428a mul32  0x0000003f , 0x00000022 , 0x00000002 
- 00018005  0x0000428b fetch  0x00000002 , 0x00004215 
- 00018006  0x0000428c copy  0x0000003f , 0x00000011 
- 00018007  0x0000428d branch  0x000065df 
- 00018008  0x00004292 call  0x000046b6 
- 00018009  0x00004293 setarg  0x00000000 
- 00018010  0x00004294 store  0x00000002 , 0x000046b7 
- 00018011  0x00004295 branch  0x00003408 
- 00018012  0x00004299 call  0x00007e38 
- 00018013  0x0000429a jam  0x00000000 , 0x000046b0 
- 00018014  0x0000429b branch  0x000046d9 
- 00018015  0x0000429f call  0x00007e38 
- 00018016  0x000042a0 jam  0x00000001 , 0x000046b0 
- 00018017  0x000042a1 fetch  0x00000008 , 0x000046c1 
- 00018018  0x000042a2 store  0x00000008 , 0x00004496 
- 00018019  0x000042a3 call  0x00003416 
- 00018020  0x000042a4 branch  0x00005abf 
- 00018021  0x000042a8 fetch  0x00000002 , 0x00004509 
- 00018022  0x000042a9 rtneq  0x00000000 
- 00018023  0x000042aa fetch  0x00000008 , 0x000046c9 
- 00018024  0x000042ab rtn  0x00000034 
- 00018025  0x000042ac store  0x00000008 , 0x00004496 
- 00018026  0x000042ad branch  0x00005abf 
- 00018027  0x000042b2 branch  0x0000481f 
- 00018028  0x000042b5 fetch  0x00000001 , 0x000046dd 
- 00018029  0x000042b6 rtneq  0x00000000 
- 00018030  0x000042b7 fetch  0x00000001 , 0x000046df 
- 00018031  0x000042b8 rtnne  0x00000001 
- 00018032  0x000042b9 call  0x00004672 
- 00018033  0x000042ba branch  0x00003406 
- 00018034  0x000042bd jam  0x00000001 , 0x000048df 
- 00018035  0x000042be arg  0x0000000b , 0x00000039 
- 00018036  0x000042bf arg  0x000048e0 , 0x00000005 
- 00018037  0x000042c0 arg  0x000048c9 , 0x00000006 
- 00018038  0x000042c1 branch  0x00007f01 
- 00018039  0x000042c4 fetch  0x00000001 , 0x000046dd 
- 00018040  0x000042c5 rtneq  0x00000000 
- 00018041  0x000042c6 fetch  0x00000001 , 0x000046df 
- 00018042  0x000042c7 beq  0x00000001 , 0x0000467c 
- 00018043  0x000042c8 branch  0x0000481b 
- 00018044  0x000042cb fetch  0x00000001 , 0x000048df 
- 00018045  0x000042cc rtnne  0x00000001 
- 00018046  0x000042cd jam  0x00000000 , 0x000048df 
- 00018047  0x000042ce fetch  0x00000002 , 0x00004682 
- 00018048  0x000042cf bbit1  0x00000000 , 0x00003408 
- 00018049  0x000042d0 bbit1  0x00000009 , 0x00003408 
- 00018050  0x000042d1 arg  0x0000000b , 0x00000039 
- 00018051  0x000042d2 arg  0x000048e0 , 0x00000006 
- 00018052  0x000042d3 arg  0x000048c9 , 0x00000005 
- 00018053  0x000042d4 branch  0x00007f01 
- 00018054  0x000042db call  0x0000468c 
- 00018055  0x000042de call  0x00004693 
- 00018056  0x000042e1 call  0x0000469e 
- 00018057  0x000042e2 call  0x000046a6 
- 00018058  0x000042e3 call  0x000046a9 
- 00018059  0x000042e6 branch  0x000046ac 
- 00018060  0x000042eb arg  0x000046db , 0x00000013 
- 00018061  0x000042ec arg  0x0000468f , 0x00000012 
- 00018062  0x000042ed branch  0x00003374 
- 00018063  0x000042ef jam  0x00000002 , 0x000046df 
- 00018064  0x000042f0 call  0x00003408 
- 00018065  0x000042f1 call  0x000046f4 
- 00018066  0x000042f2 branch  0x0000480b 
- 00018067  0x000042f6 arg  0x000048ec , 0x00000013 
- 00018068  0x000042f7 arg  0x00004696 , 0x00000012 
- 00018069  0x000042f8 branch  0x0000336d 
- 00018070  0x000042fb fetch  0x00000002 , 0x00004682 
- 00018071  0x000042fc bbit1  0x00000009 , 0x0000480b 
- 00018072  0x000042fd bbit1  0x00000000 , 0x0000480b 
- 00018073  0x000042fe fetch  0x00000001 , 0x000048c9 
- 00018074  0x000042ff beq  0x00000001 , 0x0000480b 
- 00018075  0x00004300 beq  0x00000004 , 0x0000480b 
- 00018076  0x00004301 beq  0x00000005 , 0x0000480b 
- 00018077  0x00004302 branch  0x0000340a 
- 00018078  0x00004307 arg  0x000046ac , 0x00000013 
- 00018079  0x00004308 arg  0x000046a1 , 0x00000012 
- 00018080  0x00004309 branch  0x0000336d 
- 00018081  0x0000430c fetch  0x00000001 , 0x0000027f 
- 00018082  0x0000430d set1  0x00000000 , 0x0000003f 
- 00018083  0x0000430e set1  0x00000007 , 0x0000003f 
- 00018084  0x0000430f store  0x00000001 , 0x0000027f 
- 00018085  0x00004310 rtn 
- 00018086  0x00004313 arg  0x00004680 , 0x00000013 
- 00018087  0x00004314 arg  0x0000463c , 0x00000012 
- 00018088  0x00004315 branch  0x0000336d 
- 00018089  0x00004318 arg  0x000046ad , 0x00000013 
- 00018090  0x00004319 arg  0x000033e9 , 0x00000012 
- 00018091  0x0000431a branch  0x0000336d 
- 00018092  0x00004320 fetch  0x00000001 , 0x000046df 
- 00018093  0x00004321 rtnne  0x00000001 
- 00018094  0x00004322 arg  0x000046b7 , 0x00000013 
- 00018095  0x00004323 arg  0x000046c2 , 0x00000012 
- 00018096  0x00004324 branch  0x00003374 
- 00018097  0x00004328 call  0x0000473a 
- 00018098  0x00004329 branch  0x00006978 
- 00018099  0x0000432d branch  0x0000696c 
- 00018100  0x00004330 call  0x00006835 
- 00018101  0x00004331 branch  0x000046b3 
- 00018102  0x00004338 fetch  0x00000001 , 0x0000469a 
- 00018103  0x00004339 bbit1  0x00000001 , 0x000046be 
- 00018104  0x0000433a bbit1  0x00000000 , 0x000046ba 
- 00018105  0x0000433b rtn 
- 00018106  0x0000433e fetch  0x00000002 , 0x000046d7 
- 00018107  0x0000433f store  0x00000002 , 0x000046d9 
- 00018108  0x00004340 store  0x00000002 , 0x000046db 
- 00018109  0x00004341 branch  0x000033f8 
- 00018110  0x00004344 fetch  0x00000002 , 0x000046d3 
- 00018111  0x00004345 store  0x00000002 , 0x000046d9 
- 00018112  0x00004346 store  0x00000002 , 0x000046db 
- 00018113  0x00004347 branch  0x000033f0 
- 00018114  0x0000434a fetch  0x00000001 , 0x000046df 
- 00018115  0x0000434b rtnne  0x00000001 
- 00018116  0x0000434c fetch  0x00000001 , 0x0000469a 
- 00018117  0x0000434d bbit1  0x00000001 , 0x000046c8 
- 00018118  0x0000434e bbit1  0x00000000 , 0x000046cc 
- 00018119  0x0000434f rtn 
- 00018120  0x00004352 fetch  0x00000002 , 0x000046d1 ,
- 00018121  0x00004353 store  0x00000002 , 0x000046d9 
- 00018122  0x00004354 store  0x00000002 , 0x000046db 
- 00018123  0x00004355 branch  0x000033eb 
- 00018124  0x00004358 fetch  0x00000002 , 0x00004682 
- 00018125  0x00004359 rtnbit1  0x00000009 
- 00018126  0x0000435a fetch  0x00000002 , 0x000046d5 
- 00018127  0x0000435b store  0x00000002 , 0x000046d9 
- 00018128  0x0000435c store  0x00000002 , 0x000046db 
- 00018129  0x0000435d fetch  0x00000002 , 0x000046b3 
- 00018130  0x0000435e call  0x000046f0 
- 00018131  0x0000435f call  0x00003404 
- 00018132  0x00004360 fetch  0x00000004 , 0x000046bd 
- 00018133  0x00004361 store  0x00000004 , 0x000048cc 
- 00018134  0x00004362 fetch  0x00000002 , 0x00004682 
- 00018135  0x00004363 rtnbit1  0x0000000b 
- 00018136  0x00004364 branch  0x000033fa 
- 00018137  0x00004368 fetch  0x00000001 , 0x000046df 
- 00018138  0x00004369 rtnne  0x00000001 
- 00018139  0x0000436a fetch  0x00000001 , 0x0000469a 
- 00018140  0x0000436b bbit1  0x00000001 , 0x000046df 
- 00018141  0x0000436c bbit1  0x00000000 , 0x000046e4 
- 00018142  0x0000436d rtn 
- 00018143  0x00004370 call  0x000046f8 
- 00018144  0x00004371 branch  0x000046c2 , 0x00000034 
- 00018145  0x00004372 call  0x00003406 
- 00018146  0x00004373 call  0x000033f0 
- 00018147  0x00004374 branch  0x000033e1 
- 00018148  0x00004377 fetch  0x00000002 , 0x000046b7 
- 00018149  0x00004378 fetcht  0x00000002 , 0x000046b5 
- 00018150  0x00004379 storet  0x00000002 , 0x000046b7 
- 00018151  0x0000437a nrtn  0x00000034 
- 00018152  0x0000437b fetch  0x00000002 , 0x000046b1 
- 00018153  0x0000437c call  0x000046f0 
- 00018154  0x0000437d call  0x00003404 
- 00018155  0x0000437e fetch  0x00000004 , 0x000046b9 
- 00018156  0x0000437f store  0x00000004 , 0x000048cc 
- 00018157  0x00004380 fetch  0x00000002 , 0x00004682 
- 00018158  0x00004381 rtnbit1  0x0000000b 
- 00018159  0x00004382 branch  0x000033fa 
- 00018160  0x00004386 store  0x00000002 , 0x00004154 
- 00018161  0x00004387 increase  0xfffffffc , 0x0000003f 
- 00018162  0x00004388 store  0x00000002 , 0x00004482 
- 00018163  0x00004389 rtn 
- 00018164  0x0000438d fetch  0x00000002 , 0x00004682 
- 00018165  0x0000438e bbit1  0x00000009 , 0x00003402 
- 00018166  0x0000438f bbit1  0x00000000 , 0x000033e9 
- 00018167  0x00004390 branch  0x000046b6 
- 00018168  0x00004395 fetch  0x00000001 , 0x00004217 
- 00018169  0x00004396 copy  0x0000003f , 0x00000039 
- 00018170  0x00004397 fetch  0x00000002 , 0x00004215 
- 00018171  0x00004398 copy  0x0000003f , 0x00000011 
- 00018172  0x0000439a ifetch  0x00000002 , 0x00000011 
- 00018173  0x0000439b beq  0x00000000 , 0x00004701 
- 00018174  0x0000439c increase  0x00000022 , 0x00000011 
- 00018175  0x0000439d loop  0x000046fc 
- 00018176  0x0000439e branch  0x00007ff1 
- 00018177  0x000043a1 ifetch  0x00000006 , 0x00000006 
- 00018178  0x000043a2 store  0x00000006 , 0x000041d0 
- 00018179  0x000043a3 increase  0x0000000a , 0x00000006 
- 00018180  0x000043a4 arg  0x000041be , 0x00000005 
- 00018181  0x000043a5 call  0x00007ebf 
- 00018182  0x000043a6 call  0x000067d7 
- 00018183  0x000043a7 branch  0x00007fef 
- 00018184  0x000043ae call  0x00007fe9 
- 00018185  0x000043af fetch  0x00000002 , 0x00004682 
- 00018186  0x000043b0 bbit1  0x00000000 , 0x0000470d 
- 00018187  0x000043b1 bbit1  0x00000009 , 0x00004710 
- 00018188  0x000043b2 rtn 
- 00018189  0x000043b5 fetch  0x00000001 , 0x00004253 
- 00018190  0x000043b6 rtnne  0x0000003f 
- 00018191  0x000043b7 branch  0x00007fe7 
- 00018192  0x000043ba fetch  0x00000001 , 0x000046b0 
- 00018193  0x000043bb rtn  0x00000034 
- 00018194  0x000043bc branch  0x00007fe7 
- 00018195  0x000043c2 call  0x00007fe9 
- 00018196  0x000043c3 fetch  0x00000002 , 0x00004682 
- 00018197  0x000043c4 rtnbit1  0x00000000 
- 00018198  0x000043c5 rtnbit1  0x00000009 
- 00018199  0x000043c6 branch  0x00007fe7 
- 00018200  0x000043cb fetch  0x00000001 , 0x0000469a 
- 00018201  0x000043cc bbit1  0x00000001 , 0x0000471c 
- 00018202  0x000043cd bbit1  0x00000000 , 0x0000471f 
- 00018203  0x000043ce rtn 
- 00018204  0x000043d1 fetch  0x00000001 , 0x00004093 
- 00018205  0x000043d2 rtnne  0x00000003 
- 00018206  0x000043d3 branch  0x000046d9 
- 00018207  0x000043d6 branch  0x000046d9 
- 00018208  0x000043da disable  0x0000002c 
- 00018209  0x000043db fetch  0x00000002 , 0x000046d9 
- 00018210  0x000043dc store  0x00000002 , 0x000046db 
- 00018211  0x000043de call  0x00004713 
- 00018212  0x000043df branch  0x00004718 , 0x00000028 
- 00018213  0x000043e1 call  0x00004708 
- 00018214  0x000043e2 nrtn  0x00000028 
- 00018215  0x000043e3 enable  0x0000002c 
- 00018216  0x000043e4 rtn 
- 00018217  0x000043e9 call  0x00004720 
- 00018218  0x000043ea nrtn  0x0000002c 
- 00018219  0x000043eb deposit  0x00000011 
- 00018220  0x000043ec branch  0x00004730 , 0x00000034 
- 00018221  0x000043ee call  0x00003406 
- 00018222  0x000043ef arg  0x000046f1 , 0x00000013 
- 00018223  0x000043f0 branch  0x00004732 
- 00018224  0x000043f3 call  0x00003408 
- 00018225  0x000043f4 arg  0x00004719 , 0x00000013 
- 00018226  0x000043f7 arg  0x00000005 , 0x0000003f 
- 00018227  0x000043f8 imul32  0x00000007 , 0x0000003f 
- 00018228  0x000043f9 iadd  0x00000013 , 0x00000013 
- 00018229  0x000043fd ifetch  0x00000001 , 0x00000013 
- 00018230  0x000043fe rtn  0x00000034 
- 00018231  0x000043ff call  0x00004762 
- 00018232  0x00004400 increase  0x00000001 , 0x00000013 
- 00018233  0x00004401 branch  0x00004735 
- 00018234  0x00004405 fetch  0x00000002 , 0x00004682 
- 00018235  0x00004406 bbit1  0x00000009 , 0x0000473e 
- 00018236  0x00004407 bbit1  0x00000000 , 0x0000474e 
- 00018237  0x00004408 rtn 
- 00018238  0x0000440b call  0x00005892 
- 00018239  0x0000440c nrtn  0x00000034 
- 00018240  0x0000440d call  0x00004765 
- 00018241  0x0000440e nrtn  0x00000028 
- 00018242  0x0000440f pincrease  0xffffffff 
- 00018243  0x00004410 mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00018244  0x00004411 arg  0x00004741 , 0x00000002 
- 00018245  0x00004412 iadd  0x00000002 , 0x00000006 
- 00018246  0x00004414 ifetch  0x00000001 , 0x00000006 
- 00018247  0x00004415 copy  0x0000003f , 0x00000011 
- 00018248  0x00004416 ifetcht  0x00000002 , 0x00000006 
- 00018249  0x00004417 call  0x00007ea5 
- 00018250  0x00004418 call  0x00005a64 
- 00018251  0x00004419 copy  0x00000011 , 0x00000039 
- 00018252  0x0000441a call  0x00007e9f 
- 00018253  0x0000441b branch  0x00007f01 
- 00018254  0x0000441f call  0x00005271 
- 00018255  0x00004420 nrtn  0x00000034 
- 00018256  0x00004421 call  0x00004765 
- 00018257  0x00004422 nrtn  0x00000028 
- 00018258  0x00004423 pincrease  0xffffffff 
- 00018259  0x00004424 mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00018260  0x00004425 arg  0x000047a0 , 0x00000002 
- 00018261  0x00004426 iadd  0x00000002 , 0x00000006 
- 00018262  0x00004427 ifetch  0x00000005 , 0x00000006 
- 00018263  0x00004428 store  0x00000005 , 0x0000479b 
- 00018264  0x0000442a fetch  0x00000001 , 0x0000479b 
- 00018265  0x0000442b copy  0x0000003f , 0x00000011 
- 00018266  0x0000442c call  0x00004d63 
- 00018267  0x0000442d fetch  0x00000002 , 0x0000424e 
- 00018268  0x0000442e istore  0x00000002 , 0x00000005 
- 00018269  0x0000442f setarg  0x000000a1 
- 00018270  0x00004430 istore  0x00000001 , 0x00000005 
- 00018271  0x00004431 fetch  0x00000004 , 0x0000479c 
- 00018272  0x00004432 istore  0x00000009 , 0x00000005 
- 00018273  0x00004433 rtn 
- 00018274  0x00004438 store  0x00000001 , 0x00000a9a 
- 00018275  0x00004439 arg  0x00000a9a , 0x00000011 
- 00018276  0x0000443a branch  0x00007e3d 
- 00018277  0x0000443d arg  0x00000a9a , 0x00000011 
- 00018278  0x0000443e call  0x00007e54 
- 00018279  0x0000443f nrtn  0x00000028 
- 00018280  0x00004440 fetch  0x00000001 , 0x00000a9a 
- 00018281  0x00004441 rtn 
- 00018282  0x00004445 fetch  0x00000002 , 0x00000478 
- 00018283  0x00004446 beq  0x00000018 , 0x0000465f 
- 00018284  0x00004447 rtn 
- 00018285  0x0000444a setarg  0x00000002 
- 00018286  0x0000444b store  0x00000001 , 0x000048eb 
- 00018287  0x0000444d setarg  0x00200008 
- 00018288  0x0000444e store  0x00000004 , 0x000046c1 
- 00018289  0x0000444f setarg  0x012c0005 
- 00018290  0x00004450 istore  0x00000004 , 0x00000005 
- 00018291  0x00004453 jam  0x00000017 , 0x000044a6 
- 00018292  0x00004456 setarg  0x0000001b 
- 00018293  0x00004457 store  0x00000002 , 0x000044fa 
- 00018294  0x00004458 call  0x00005810 
- 00018295  0x00004459 call  0x0000582c 
- 00018296  0x0000445a call  0x00005839 
- 00018297  0x0000445b branch  0x00005818 
- 00018298  0x00004460 arg  0x00000028 , 0x00000039 
- 00018299  0x00004461 arg  0x00004741 , 0x00000005 
- 00018300  0x00004462 arg  0x0000949f , 0x00000006 
- 00018301  0x00004463 call  0x00007ef4 
- 00018302  0x00004464 arg  0x00000028 , 0x00000039 
- 00018303  0x00004465 arg  0x000047a0 , 0x00000005 
- 00018304  0x00004466 arg  0x000094c7 , 0x00000006 
- 00018305  0x00004467 branch  0x00007ef4 
- 00018306  0x0000446b arg  0x0000017e , 0x00000039 
- 00018307  0x0000446c arg  0x0000913a , 0x00000006 
- 00018308  0x0000446d branch  0x00007ef4 
- 00018309  0x00004471 arg  0x000001e7 , 0x00000039 
- 00018310  0x00004472 arg  0x000092b8 , 0x00000006 
- 00018311  0x00004473 branch  0x00007ef4 
- 00018312  0x00004478 call  0x000047ae 
- 00018313  0x00004479 nrtn  0x00000028 
- 00018314  0x0000447a fetch  0x00000001 , 0x0000469f 
- 00018315  0x0000447b call  0x00004790 
- 00018316  0x0000447c fetch  0x00000001 , 0x000046a0 
- 00018317  0x0000447d call  0x00004790 
- 00018318  0x0000447e fetch  0x00000001 , 0x000046a1 
- 00018319  0x0000447f branch  0x00004790 
- 00018320  0x00004482 rtn  0x00000034 
- 00018321  0x00004483 or  0x0000003f , 0x00000080 , 0x00000002 
- 00018322  0x00004484 branch  0x000067f9 
- 00018323  0x00004488 call  0x000047ae 
- 00018324  0x00004489 nrtn  0x00000028 
- 00018325  0x0000448a call  0x00004797 
- 00018326  0x0000448b branch  0x000047b4 
- 00018327  0x0000448e arg  0x00000000 , 0x00000011 
- 00018328  0x0000448f fetch  0x00000001 , 0x0000469f 
- 00018329  0x00004490 call  0x000047a9 
- 00018330  0x00004491 nsetflag  0x00000034 , 0x00000000 , 0x00000011 
- 00018331  0x00004492 fetch  0x00000001 , 0x000046a0 
- 00018332  0x00004493 call  0x000047a9 
- 00018333  0x00004494 nsetflag  0x00000034 , 0x00000001 , 0x00000011 
- 00018334  0x00004495 fetch  0x00000001 , 0x000046a1 
- 00018335  0x00004496 call  0x000047a9 
- 00018336  0x00004497 nsetflag  0x00000034 , 0x00000002 , 0x00000011 
- 00018337  0x00004498 copy  0x00000011 , 0x0000003f 
- 00018338  0x00004499 store  0x00000001 , 0x000046a9 
- 00018339  0x0000449a fetch  0x00000001 , 0x0000469e 
- 00018340  0x0000449b imul32  0x00000011 , 0x0000003f 
- 00018341  0x0000449c fetcht  0x00000002 , 0x0000469c 
- 00018342  0x0000449d iadd  0x00000002 , 0x0000003f 
- 00018343  0x0000449e store  0x00000002 , 0x000046aa 
- 00018344  0x0000449f rtn 
- 00018345  0x000044a2 rtn  0x00000034 
- 00018346  0x000044a3 or  0x0000003f , 0x00000080 , 0x00000002 
- 00018347  0x000044a4 call  0x0000681d 
- 00018348  0x000044a5 nbranch  0x00007ff1 , 0x00000001 
- 00018349  0x000044a6 branch  0x00007fef 
- 00018350  0x000044aa call  0x00007fe9 
- 00018351  0x000044ab fetch  0x00000001 , 0x000046a8 
- 00018352  0x000044ac nrtn  0x00000034 
- 00018353  0x000044ad fetch  0x00000001 , 0x0000469b 
- 00018354  0x000044ae rtn  0x00000034 
- 00018355  0x000044af branch  0x00007fe7 
- 00018356  0x000044b3 call  0x0000666a 
- 00018357  0x000044b4 fetch  0x00000002 , 0x000046aa 
- 00018358  0x000044b5 arg  0x00000ac2 , 0x00000011 
- 00018359  0x000044b6 fetcht  0x00000001 , 0x0000469e 
- 00018360  0x000044b7 call  0x000066b3 
- 00018361  0x000044b8 call  0x0000666d 
- 00018362  0x000044ba fetch  0x00000001 , 0x00000ac2 
- 00018363  0x000044bb copy  0x0000003f , 0x00000039 
- 00018364  0x000044bc store  0x00000001 , 0x000043af 
- 00018365  0x000044bd call  0x00007ef4 
- 00018366  0x000044be fetch  0x00000001 , 0x00000ac2 
- 00018367  0x000044bf copy  0x0000003f , 0x00000039 
- 00018368  0x000044c0 store  0x00000001 , 0x00004515 
- 00018369  0x000044c1 call  0x00007ef4 
- 00018370  0x000044c2 ifetch  0x00000001 , 0x00000006 
- 00018371  0x000044c3 store  0x00000001 , 0x000046e6 
- 00018372  0x000044c4 ifetch  0x00000001 , 0x00000006 
- 00018373  0x000044c5 store  0x00000001 , 0x000046dd 
- 00018374  0x000044c6 rtn 
- 00018375  0x000044ca fetch  0x00000001 , 0x0000469a 
- 00018376  0x000044cb rtnbit0  0x00000001 
- 00018377  0x000044cc arg  0x00000003 , 0x00000002 
- 00018378  0x000044cd fetch  0x00000002 , 0x000046a4 
- 00018379  0x000044ce copy  0x0000003f , 0x00000012 
- 00018380  0x000044cf arg  0x000046a6 , 0x00000011 
- 00018381  0x000044d0 call  0x000065df 
- 00018382  0x000044d1 fetcht  0x00000002 , 0x000046a6 
- 00018383  0x000044d2 setarg  0x00001b3a 
- 00018384  0x000044d3 isub  0x00000002 , 0x0000003e 
- 00018385  0x000044d4 nrtn  0x00000005 
- 00018386  0x000044d5 fetch  0x00000001 , 0x000046a8 
- 00018387  0x000044d6 rtn  0x00000034 
- 00018388  0x000044d7 copy  0x0000003f , 0x00000002 
- 00018389  0x000044d8 fetch  0x00000002 , 0x000046a4 
- 00018390  0x000044d9 add  0x0000003f , 0x00000003 , 0x00000012 
- 00018391  0x000044da arg  0x00000ac2 , 0x00000011 
- 00018392  0x000044db call  0x000065df 
- 00018393  0x000044dc branch  0x000047e8 
- 00018394  0x000044df fetch  0x00000002 , 0x000046a2 
- 00018395  0x000044e0 rtn  0x00000034 
- 00018396  0x000044e1 call  0x0000666a 
- 00018397  0x000044e2 arg  0x00000001 , 0x00000002 
- 00018398  0x000044e3 arg  0x000046a8 , 0x00000011 
- 00018399  0x000044e4 call  0x000066b3 
- 00018400  0x000044e6 fetch  0x00000001 , 0x000046a8 
- 00018401  0x000044e7 rtn  0x00000034 
- 00018402  0x000044e9 fetch  0x00000002 , 0x000046a2 
- 00018403  0x000044ea pincrease  0x00000001 
- 00018404  0x000044eb arg  0x00000ac2 , 0x00000011 
- 00018405  0x000044ec fetcht  0x00000001 , 0x000046a8 
- 00018406  0x000044ed call  0x000066b3 
- 00018407  0x000044ee call  0x0000666d 
- 00018408  0x000044f0 call  0x000047ba 
- 00018409  0x000044f2 ifetch  0x00000002 , 0x00000006 
- 00018410  0x000044f3 rtn  0x00000034 
- 00018411  0x000044f4 copy  0x0000003f , 0x00000005 
- 00018412  0x000044f5 ifetcht  0x00000001 , 0x00000006 
- 00018413  0x000044f6 copy  0x00000002 , 0x00000039 
- 00018414  0x000044f7 call  0x00007f01 
- 00018415  0x000044f8 branch  0x000047e9 
- 00018416  0x000044fd fetch  0x00000001 , 0x0000469a 
- 00018417  0x000044fe rtnbit0  0x00000001 
- 00018418  0x000044ff fetch  0x00000002 , 0x000046ae 
- 00018419  0x00004500 copy  0x0000003f , 0x00000012 
- 00018420  0x00004501 arg  0x00000004 , 0x00000002 
- 00018421  0x00004502 arg  0x00000ac2 , 0x00000011 
- 00018422  0x00004503 call  0x000065df 
- 00018423  0x00004504 fetch  0x00000001 , 0x00000ac2 
- 00018424  0x00004505 bne  0x00000001 , 0x000047f9 
- 00018425  0x00004507 setarg  0x00000001 
- 00018426  0x00004508 store  0x00000001 , 0x00000ac2 
- 00018427  0x00004509 force  0x00000003 , 0x00000039 
- 00018428  0x0000450a call  0x0000630d 
- 00018429  0x0000450b fetch  0x00000002 , 0x000046ae 
- 00018430  0x0000450c copy  0x0000003f , 0x00000012 
- 00018431  0x0000450d arg  0x00000004 , 0x00000002 
- 00018432  0x0000450e arg  0x00000ac2 , 0x00000011 
- 00018433  0x0000450f call  0x00006606 
- 00018434  0x00004511 fetch  0x00000003 , 0x00000ac3 
- 00018435  0x00004512 store  0x00000003 , 0x000040a0 
- 00018436  0x00004513 store  0x00000003 , 0x000044a0 
- 00018437  0x00004514 rtn 
- 00018438  0x00004518 branch  0x000046d9 
- 00018439  0x0000451c arg  0x00000000 , 0x00000011 
- 00018440  0x0000451d arg  0x000048d4 , 0x00000013 
- 00018441  0x0000451e call  0x00007d24 
- 00018442  0x0000451f call  0x000046f4 
- 00018443  0x00004521 fetch  0x00000001 , 0x000048eb 
- 00018444  0x00004522 store  0x00000001 , 0x000048ec 
- 00018445  0x00004523 rtn 
- 00018446  0x00004528 setarg  0x00000000 
- 00018447  0x00004529 call  0x00004816 
- 00018448  0x0000452a jam  0x00000001 , 0x00004679 
- 00018449  0x0000452b call  0x00007cd3 
- 00018450  0x0000452c call  0x00007cdd 
- 00018451  0x0000452d fetch  0x00000002 , 0x00004682 
- 00018452  0x0000452e rtnbit1  0x0000000c 
- 00018453  0x0000452f branch  0x0000340a 
- 00018454  0x00004532 fetcht  0x00000002 , 0x0000423f 
- 00018455  0x00004533 istore  0x00000001 , 0x00000002 
- 00018456  0x00004534 ifetch  0x00000001 , 0x00000005 
- 00018457  0x00004535 store  0x00000001 , 0x00004685 
- 00018458  0x00004536 rtn 
- 00018459  0x0000453a fetch  0x00000002 , 0x0000423f 
- 00018460  0x0000453b ifetch  0x00000001 , 0x0000003f 
- 00018461  0x0000453c rtnne  0x00000000 
- 00018462  0x0000453d branch  0x0000340a 
- 00018463  0x00004541 fetcht  0x00000002 , 0x0000423f 
- 00018464  0x00004542 ifetch  0x00000001 , 0x00000002 
- 00018465  0x00004543 beq  0x00000001 , 0x0000482a 
- 00018466  0x00004545 setarg  0x00000001 
- 00018467  0x00004546 fetcht  0x00000002 , 0x0000423f 
- 00018468  0x00004547 istore  0x00000001 , 0x00000002 
- 00018469  0x00004548 add  0x00000002 , 0x00000002 , 0x00000006 
- 00018470  0x00004549 ifetch  0x00000001 , 0x00000006 
- 00018471  0x0000454a istore  0x00000001 , 0x00004685 
- 00018472  0x0000454b ifetch  0x00000002 , 0x00000006 
- 00018473  0x0000454c branch  0x00007f9c 
- 00018474  0x0000454f setarg  0x00000002 
- 00018475  0x00004550 call  0x00004816 
- 00018476  0x00004551 add  0x00000002 , 0x00000005 , 0x00000006 
- 00018477  0x00004552 ifetch  0x00000002 , 0x00000006 
- 00018478  0x00004553 branch  0x0000340a , 0x00000034 
- 00018479  0x00004554 branch  0x00007f9c 
- 00018480  0x0000455b store  0x00000006 , 0x00000101 
- 00018481  0x0000455c fetch  0x00000001 , 0x00000101 
- 00018482  0x0000455d store  0x00000001 , 0x0000010c 
- 00018483  0x0000455e ifetch  0x00000001 , 0x00000006 
- 00018484  0x0000455f store  0x00000001 , 0x0000010b 
- 00018485  0x00004560 ifetch  0x00000001 , 0x00000006 
- 00018486  0x00004561 store  0x00000001 , 0x0000010a 
- 00018487  0x00004562 ifetch  0x00000001 , 0x00000006 
- 00018488  0x00004563 store  0x00000001 , 0x00000109 
- 00018489  0x00004564 ifetch  0x00000001 , 0x00000006 
- 00018490  0x00004565 store  0x00000001 , 0x00000108 
- 00018491  0x00004566 ifetch  0x00000001 , 0x00000006 
- 00018492  0x00004567 store  0x00000001 , 0x00000107 
- 00018493  0x00004568 fetch  0x00000006 , 0x00000107 
- 00018494  0x00004569 rtn 
- 00018495  0x0000456c call  0x000068a2 
- 00018496  0x0000456d fetch  0x00000001 , 0x00004223 
- 00018497  0x0000456e store  0x00000001 , 0x000044a0 
- 00018498  0x0000456f fetch  0x00000001 , 0x00004225 
- 00018499  0x00004570 istore  0x00000001 , 0x00000005 
- 00018500  0x00004571 fetch  0x00000001 , 0x00004227 
- 00018501  0x00004572 istore  0x00000001 , 0x00000005 
- 00018502  0x00004573 fetch  0x00000003 , 0x000044a0 
- 00018503  0x00004574 store  0x00000003 , 0x000040a0 
- 00018504  0x00004575 rtn 
- 00018505  0x00004582 fetch  0x00000002 , 0x00004203 
- 00018506  0x00004583 iadd  0x00000012 , 0x0000003f 
- 00018507  0x00004584 byteswap  0x0000003f , 0x0000003f 
- 00018508  0x00004585 store  0x00000002 , 0x000001f7 
- 00018509  0x00004586 copy  0x00000002 , 0x00000012 
- 00018510  0x00004588 call  0x0000489b 
- 00018511  0x00004589 setarg  0x000000a0 
- 00018512  0x0000458a call  0x0000488d 
- 00018513  0x0000458b fetch  0x00000001 , 0x000001f7 
- 00018514  0x0000458c call  0x0000488d 
- 00018515  0x0000458d bmark1  0x00000028 , 0x00004856 
- 00018516  0x0000458e fetch  0x00000001 , 0x000001f8 
- 00018517  0x0000458f call  0x0000488d 
- 00018518  0x00004591 call  0x000048a1 
- 00018519  0x00004593 call  0x0000489b 
- 00018520  0x00004594 setarg  0x000000a1 
- 00018521  0x00004595 call  0x0000488d 
- 00018522  0x00004598 call  0x0000487f 
- 00018523  0x00004599 istore  0x00000001 , 0x00000011 
- 00018524  0x0000459a increase  0x00000001 , 0x00000011 
- 00018525  0x0000459b increase  0xffffffff , 0x00000012 
- 00018526  0x0000459c nbranch  0x0000485a , 0x00000005 
- 00018527  0x0000459d branch  0x000048a1 
- 00018528  0x000045a9 byteswap  0x00000012 , 0x0000003f 
- 00018529  0x000045aa store  0x00000002 , 0x000001f7 
- 00018530  0x000045ab copy  0x00000002 , 0x00000012 
- 00018531  0x000045ad call  0x0000489b 
- 00018532  0x000045ae setarg  0x000000a0 
- 00018533  0x000045af call  0x0000488d 
- 00018534  0x000045b1 fetch  0x00000001 , 0x000001f7 
- 00018535  0x000045b2 call  0x0000488d 
- 00018536  0x000045b3 bmark1  0x00000028 , 0x0000486b 
- 00018537  0x000045b4 fetch  0x00000001 , 0x000001f8 
- 00018538  0x000045b5 call  0x0000488d 
- 00018539  0x000045b7 ifetch  0x00000001 , 0x00000011 
- 00018540  0x000045b8 call  0x0000488d 
- 00018541  0x000045b9 increase  0x00000001 , 0x00000011 
- 00018542  0x000045ba increase  0xffffffff , 0x00000012 
- 00018543  0x000045bb nbranch  0x0000486b , 0x00000005 
- 00018544  0x000045bc branch  0x000048a1 
- 00018545  0x000045c1 arg  0x0000000a , 0x00000039 
- 00018546  0x000045c2 call  0x000048be 
- 00018547  0x000045c3 call  0x000048a6 
- 00018548  0x000045c4 call  0x000048d2 
- 00018549  0x000045c6 call  0x000048c7 
- 00018550  0x000045c7 branch  0x000048a9 , 0x00000034 
- 00018551  0x000045c8 loop  0x00004875 
- 00018552  0x000045c9 branch  0x000048a9 
- 00018553  0x000045ce call  0x000048a9 
- 00018554  0x000045cf call  0x000048af 
- 00018555  0x000045d0 call  0x000048d2 
- 00018556  0x000045d1 call  0x000048a6 
- 00018557  0x000045d2 call  0x000048d2 
- 00018558  0x000045d3 branch  0x000048a9 
- 00018559  0x000045d9 arg  0x00000008 , 0x00000039 
- 00018560  0x000045da arg  0x00000000 , 0x00000013 
- 00018561  0x000045db call  0x000048be 
- 00018562  0x000045dd call  0x000048a6 
- 00018563  0x000045de call  0x000048d2 
- 00018564  0x000045df lshift  0x00000013 , 0x00000013 
- 00018565  0x000045e0 call  0x000048c7 
- 00018566  0x000045e1 iadd  0x00000013 , 0x00000013 
- 00018567  0x000045e2 call  0x000048d2 
- 00018568  0x000045e3 call  0x000048a9 
- 00018569  0x000045e4 loop  0x00004882 
- 00018570  0x000045e5 call  0x00004879 
- 00018571  0x000045e6 copy  0x00000013 , 0x0000003f 
- 00018572  0x000045e7 rtn 
- 00018573  0x000045ec arg  0x00000008 , 0x00000039 
- 00018574  0x000045ed copy  0x0000003f , 0x00000013 
- 00018575  0x000045ee call  0x000048a9 
- 00018576  0x000045f0 isolate1  0x00000007 , 0x00000013 
- 00018577  0x000045f1 call  0x000048ac , 0x00000001 
- 00018578  0x000045f2 ncall  0x000048af , 0x00000001 
- 00018579  0x000045f3 lshift  0x00000013 , 0x00000013 
- 00018580  0x000045f4 call  0x000048d2 
- 00018581  0x000045f5 call  0x000048a6 
- 00018582  0x000045f6 call  0x000048d2 
- 00018583  0x000045f7 call  0x000048a9 
- 00018584  0x000045f8 call  0x000048d2 
- 00018585  0x000045f9 loop  0x00004890 
- 00018586  0x000045fa branch  0x00004871 
- 00018587  0x000045ff call  0x000048ac 
- 00018588  0x00004600 call  0x000048a6 
- 00018589  0x00004601 call  0x000048d2 
- 00018590  0x00004602 call  0x000048af 
- 00018591  0x00004603 call  0x000048d2 
- 00018592  0x00004604 branch  0x000048a9 
- 00018593  0x00004609 call  0x000048af 
- 00018594  0x0000460a call  0x000048a6 
- 00018595  0x0000460b call  0x000048d2 
- 00018596  0x0000460c call  0x000048ac 
- 00018597  0x0000460d branch  0x000048d2 
- 00018598  0x00004612 enable  0x00000028 
- 00018599  0x00004613 fetch  0x00000001 , 0x00004ffe 
- 00018600  0x00004614 branch  0x000048b2 
- 00018601  0x00004618 disable  0x00000028 
- 00018602  0x00004619 fetch  0x00000001 , 0x00004ffe 
- 00018603  0x0000461a branch  0x000048b2 
- 00018604  0x0000461e enable  0x00000028 
- 00018605  0x0000461f fetch  0x00000001 , 0x00004fff 
- 00018606  0x00004620 branch  0x000048b2 
- 00018607  0x00004624 disable  0x00000028 
- 00018608  0x00004625 fetch  0x00000001 , 0x00004fff 
- 00018609  0x00004626 branch  0x000048b2 
- 00018610  0x0000462c and  0x0000003f , 0x00000007 , 0x00000007 
- 00018611  0x0000462d rshift3  0x0000003f , 0x0000003f 
- 00018612  0x0000462e arg  0x00008070 , 0x00000002 
- 00018613  0x0000462f iadd  0x00000002 , 0x00000002 
- 00018614  0x00004630 ifetch  0x00000001 , 0x00000002 
- 00018615  0x00004631 qset1  0x0000003f 
- 00018616  0x00004632 istore  0x00000001 , 0x00000002 
- 00018617  0x00004633 increase  0x00000004 , 0x00000002 
- 00018618  0x00004634 ifetch  0x00000001 , 0x00000002 
- 00018619  0x00004635 qsetflag  0x00000028 , 0x0000003f 
- 00018620  0x00004636 istore  0x00000001 , 0x00000002 
- 00018621  0x00004637 rtn 
- 00018622  0x0000463b fetch  0x00000001 , 0x00004fff 
- 00018623  0x0000463c and  0x0000003f , 0x00000007 , 0x00000007 
- 00018624  0x0000463d rshift3  0x0000003f , 0x0000003f 
- 00018625  0x0000463e arg  0x00008070 , 0x00000002 
- 00018626  0x0000463f iadd  0x00000002 , 0x00000002 
- 00018627  0x00004640 ifetch  0x00000001 , 0x00000002 
- 00018628  0x00004641 qset0  0x0000003f 
- 00018629  0x00004642 istore  0x00000001 , 0x00000002 
- 00018630  0x00004643 rtn 
- 00018631  0x00004649 nop  0x00000004 
- 00018632  0x0000464a fetch  0x00000001 , 0x00004fff 
- 00018633  0x0000464b and  0x0000003f , 0x00000007 , 0x00000007 
- 00018634  0x0000464c rshift3  0x0000003f , 0x0000003f 
- 00018635  0x0000464d arg  0x0000811c , 0x00000002 
- 00018636  0x0000464e iadd  0x00000002 , 0x00000002 
- 00018637  0x0000464f setarg  0x00000000 
- 00018638  0x00004650 ifetcht  0x00000001 , 0x00000002 
- 00018639  0x00004651 qisolate1  0x00000002 
- 00018640  0x00004652 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00018641  0x00004653 rtn 
- 00018642  0x00004658 rtn 
- 00018643  0x0000465f bpatch  0x000000f6 , 0x0000401e 
- 00018644  0x00004660 hfetch  0x00000001 , 0x00008a26 
- 00018645  0x00004661 isolate1  0x00000007 , 0x0000003f 
- 00018646  0x00004662 call  0x000048ea , 0x00000001 
- 00018647  0x00004663 call  0x0000492e 
- 00018648  0x00004664 hfetch  0x00000001 , 0x00008a26 
- 00018649  0x00004665 store  0x00000001 , 0x00000b22 
- 00018650  0x00004666 hfetch  0x00000001 , 0x00008a27 
- 00018651  0x00004667 store  0x00000001 , 0x00000b23 
- 00018652  0x00004668 hstore  0x00000001 , 0x00008a27 
- 00018653  0x00004669 pinvert 
- 00018654  0x0000466a fetcht  0x00000001 , 0x00000d37 
- 00018655  0x0000466b iand  0x00000002 , 0x0000003f 
- 00018656  0x0000466c store  0x00000001 , 0x00000d37 
- 00018657  0x0000466d jam  0x000000e0 , 0x00008a26 
- 00018658  0x0000466e fetch  0x00000001 , 0x00000b23 
- 00018659  0x0000466f compare  0x00000001 , 0x0000003f , 0x00000001 
- 00018660  0x00004670 call  0x00004941 , 0x00000001 
- 00018661  0x00004671 fetch  0x00000001 , 0x00000b22 
- 00018662  0x00004672 compare  0x00000001 , 0x0000003f , 0x00000001 
- 00018663  0x00004673 call  0x0000494a , 0x00000001 
- 00018664  0x00004674 call  0x00004b61 
- 00018665  0x00004675 branch  0x00004903 
- 00018666  0x00004678 bpatch  0x000000f7 , 0x0000401e 
- 00018667  0x00004679 call  0x00004919 
- 00018668  0x0000467a jam  0x00000000 , 0x00008a00 
- 00018669  0x0000467b nop  0x00002710 
- 00018670  0x0000467c jam  0x000000c0 , 0x00008a10 
- 00018671  0x0000467d hfetch  0x00000002 , 0x00008050 
- 00018672  0x0000467e set0  0x0000000a , 0x0000003f 
- 00018673  0x0000467f hstore  0x00000002 , 0x00008050 
- 00018674  0x00004680 jam  0x0000003c , 0x00008a00 
- 00018675  0x00004681 jam  0x000000ff , 0x00008a26 
- 00018676  0x00004682 jam  0x000000ff , 0x00008a27 
- 00018677  0x00004683 jam  0x00000000 , 0x00008a04 
- 00018678  0x00004684 jam  0x00000002 , 0x00000c6b 
- 00018679  0x00004685 setarg  0x00000d9d 
- 00018680  0x00004686 arg  0x00000c6e , 0x00000005 
- 00018681  0x00004687 isub  0x00000005 , 0x00000039 
- 00018682  0x00004688 branch  0x00007ed4 
- 00018683  0x0000468b fetcht  0x00000001 , 0x00000c6c 
- 00018684  0x0000468c branch  0x000067fb 
- 00018685  0x0000468e fetch  0x00000001 , 0x00000d45 
- 00018686  0x0000468f rtn  0x00000034 
- 00018687  0x00004690 fetcht  0x00000001 , 0x00000c6c 
- 00018688  0x00004691 call  0x0000681d 
- 00018689  0x00004692 branch  0x000048ea , 0x00000001 
- 00018690  0x00004693 rtn 
- 00018691  0x00004697 arg  0x00000000 , 0x00000007 
- 00018692  0x00004698 call  0x00007f16 
- 00018693  0x00004699 nrtn  0x00000034 
- 00018694  0x0000469a fetch  0x00000001 , 0x00000d46 
- 00018695  0x0000469b nrtn  0x00000034 
- 00018696  0x0000469c fetch  0x00000001 , 0x00000d45 
- 00018697  0x0000469d ncall  0x00004bb7 , 0x00000034 
- 00018698  0x0000469e rtn 
- 00018699  0x000046a1 arg  0x00000b68 , 0x00000005 
- 00018700  0x000046a2 setsect  0x00000000 , 0x00011212 
- 00018701  0x000046a3 setsect  0x00000001 , 0x00008000 
- 00018702  0x000046a4 setsect  0x00000002 , 0x00000000 
- 00018703  0x000046a5 setsect  0x00000003 , 0x00010000 
- 00018704  0x000046a6 istore  0x00000009 , 0x00000005 
- 00018705  0x000046a7 setsect  0x00000000 , 0x00022412 
- 00018706  0x000046a8 setsect  0x00000001 , 0x00008604 
- 00018707  0x000046a9 setsect  0x00000002 , 0x00001000 
- 00018708  0x000046aa setsect  0x00000003 , 0x00000008 
- 00018709  0x000046ab istore  0x00000009 , 0x00000005 
- 00018710  0x000046ac setsect  0x00000000 , 0x00000001 
- 00018711  0x000046ad istore  0x00000001 , 0x00000005 
- 00018712  0x000046ae rtn 
- 00018713  0x000046b1 jam  0x00000002 , 0x00000c6b 
- 00018714  0x000046b2 setarg  0x00000000 
- 00018715  0x000046b3 store  0x00000001 , 0x00000b67 
- 00018716  0x000046b4 store  0x00000002 , 0x00000c65 
- 00018717  0x000046b5 pincrease  0x00000001 
- 00018718  0x000046b6 store  0x00000002 , 0x00000c67 
- 00018719  0x000046b7 pincrease  0x00000001 
- 00018720  0x000046b8 store  0x00000002 , 0x00000c69 
- 00018721  0x000046b9 setarg  0x00008ffa 
- 00018722  0x000046ba store  0x00000002 , 0x00000b7c 
- 00018723  0x000046bb setarg  0x0000903a 
- 00018724  0x000046bc store  0x00000002 , 0x00000b7e 
- 00018725  0x000046bd arg  0x00000b80 , 0x00000005 
- 00018726  0x000046be arg  0x000090fe , 0x00000006 
- 00018727  0x000046bf call  0x00007eb3 
- 00018728  0x000046c0 fetch  0x00000001 , 0x00000c6d 
- 00018729  0x000046c1 ncall  0x0000492b , 0x00000034 
- 00018730  0x000046c2 branch  0x0000490b 
- 00018731  0x000046c5 store  0x00000001 , 0x00000ba2 
- 00018732  0x000046c6 store  0x00000001 , 0x00000bbb 
- 00018733  0x000046c7 rtn 
- 00018734  0x000046c9 hfetch  0x00000001 , 0x00008a26 
- 00018735  0x000046ca bbit1  0x00000006 , 0x00004931 
- 00018736  0x000046cb rtn 
- 00018737  0x000046ce call  0x00004936 
- 00018738  0x000046cf call  0x00007f15 
- 00018739  0x000046d0 setarg  0x00000280 
- 00018740  0x000046d1 arg  0x00000000 , 0x00000007 
- 00018741  0x000046d2 branch  0x00007f08 
- 00018742  0x000046d5 fetch  0x00000001 , 0x00000d36 
- 00018743  0x000046d6 bne  0x00000002 , 0x0000493b 
- 00018744  0x000046d7 jam  0x00000000 , 0x00000d46 
- 00018745  0x000046d8 jam  0x00000000 , 0x00000d47 
- 00018746  0x000046d9 rtn 
- 00018747  0x000046db fetch  0x00000001 , 0x00000d53 
- 00018748  0x000046dc rtn  0x00000034 
- 00018749  0x000046dd jam  0x00000000 , 0x00000d53 
- 00018750  0x000046de jam  0x00000002 , 0x00000d36 
- 00018751  0x000046df jam  0x00000001 , 0x00000d45 
- 00018752  0x000046e0 rtn 
- 00018753  0x000046e3 jam  0x00000001 , 0x00008a27 
- 00018754  0x000046e4 branch  0x00004b37 
- 00018755  0x000046e7 fetch  0x00000001 , 0x00000b22 
- 00018756  0x000046e8 bbit1  0x00000004 , 0x00004955 
- 00018757  0x000046e9 rtn 
- 00018758  0x000046ec hfetch  0x00000001 , 0x00008a18 
- 00018759  0x000046ed istore  0x00000001 , 0x00000005 
- 00018760  0x000046ee loop  0x00004946 
- 00018761  0x000046ef rtn 
- 00018762  0x000046f2 bpatch  0x000000f8 , 0x0000401f 
- 00018763  0x000046f3 jam  0x00000011 , 0x00008a26 
- 00018764  0x000046f4 hfetch  0x00000001 , 0x00008a20 
- 00018765  0x000046f5 store  0x00000001 , 0x00000b24 
- 00018766  0x000046f6 copy  0x0000003f , 0x00000039 
- 00018767  0x000046f7 branch  0x00004943 , 0x00000034 
- 00018768  0x000046f8 arg  0x00000c6e , 0x00000005 
- 00018769  0x000046f9 call  0x00004946 
- 00018770  0x000046fa fetch  0x00000001 , 0x00000b24 
- 00018771  0x000046fb sub  0x0000003f , 0x00000007 , 0x0000003e 
- 00018772  0x000046fc rtn  0x00000002 
- 00018773  0x000046fe fetch  0x00000001 , 0x00000c6e 
- 00018774  0x000046ff and_into  0x00000080 , 0x0000003f 
- 00018775  0x00004700 beq  0x00000080 , 0x0000495a 
- 00018776  0x00004701 beq  0x00000000 , 0x00004962 
- 00018777  0x00004702 branch  0x00002a8c 
- 00018778  0x00004705 fetch  0x00000001 , 0x00000c6e 
- 00018779  0x00004706 rshift4  0x0000003f , 0x0000003f 
- 00018780  0x00004707 rshift  0x0000003f , 0x0000003f 
- 00018781  0x00004708 and_into  0x00000003 , 0x0000003f 
- 00018782  0x00004709 beq  0x00000000 , 0x0000496a 
- 00018783  0x0000470a beq  0x00000001 , 0x00004970 
- 00018784  0x0000470b beq  0x00000002 , 0x00004975 
- 00018785  0x0000470c branch  0x00002a8c 
- 00018786  0x0000470f fetch  0x00000001 , 0x00000c6e 
- 00018787  0x00004710 rshift4  0x0000003f , 0x0000003f 
- 00018788  0x00004711 rshift  0x0000003f , 0x0000003f 
- 00018789  0x00004712 and_into  0x00000003 , 0x0000003f 
- 00018790  0x00004713 beq  0x00000000 , 0x00004976 
- 00018791  0x00004714 beq  0x00000001 , 0x0000497e 
- 00018792  0x00004715 beq  0x00000002 , 0x00004983 
- 00018793  0x00004716 branch  0x00002a8c 
- 00018794  0x00004719 fetch  0x00000001 , 0x00000c6f 
- 00018795  0x0000471a beq  0x00000008 , 0x0000498a 
- 00018796  0x0000471b beq  0x00000006 , 0x000049a0 
- 00018797  0x0000471c beq  0x0000000a , 0x000049ea 
- 00018798  0x0000471d beq  0x00000000 , 0x000049fc 
- 00018799  0x0000471e branch  0x00004984 
- 00018800  0x00004721 fetch  0x00000001 , 0x00000c6f 
- 00018801  0x00004722 beq  0x00000002 , 0x00004a2f 
- 00018802  0x00004723 beq  0x00000001 , 0x00004a33 
- 00018803  0x00004724 beq  0x00000003 , 0x00004a45 
- 00018804  0x00004725 branch  0x00004984 
- 00018805  0x00004728 branch  0x00004984 
- 00018806  0x0000472b fetch  0x00000001 , 0x00000c6f 
- 00018807  0x0000472c beq  0x00000001 , 0x00004a4f 
- 00018808  0x0000472d beq  0x00000003 , 0x00004a79 
- 00018809  0x0000472e beq  0x00000005 , 0x00004aa3 
- 00018810  0x0000472f beq  0x00000009 , 0x00004abc 
- 00018811  0x00004730 beq  0x0000000b , 0x00004ad7 
- 00018812  0x00004731 beq  0x00000007 , 0x00004984 
- 00018813  0x00004732 branch  0x00004984 
- 00018814  0x00004735 fetch  0x00000001 , 0x00000c6f 
- 00018815  0x00004736 beq  0x0000000a , 0x00004ae8 
- 00018816  0x00004737 beq  0x00000009 , 0x00004af9 
- 00018817  0x00004738 beq  0x0000000b , 0x00004b11 
- 00018818  0x00004739 branch  0x00004984 
- 00018819  0x0000473c branch  0x00004984 
- 00018820  0x0000473f hfetch  0x00000001 , 0x00008a11 
- 00018821  0x00004740 set1  0x00000000 , 0x0000003f 
- 00018822  0x00004741 hstore  0x00000001 , 0x00008a11 
- 00018823  0x00004742 branch  0x00004988 
- 00018824  0x00004745 jam  0x00000040 , 0x00008a12 
- 00018825  0x00004746 rtn 
- 00018826  0x00004749 fetch  0x00000001 , 0x00000c6e 
- 00018827  0x0000474a bne  0x00000080 , 0x00004984 
- 00018828  0x0000474b fetch  0x00000001 , 0x00000c72 
- 00018829  0x0000474c bne  0x00000000 , 0x00004984 
- 00018830  0x0000474d fetch  0x00000001 , 0x00000c73 
- 00018831  0x0000474e bne  0x00000000 , 0x00004984 
- 00018832  0x0000474f fetch  0x00000001 , 0x00000c74 
- 00018833  0x00004750 bne  0x00000001 , 0x00004984 
- 00018834  0x00004751 fetch  0x00000001 , 0x00000c75 
- 00018835  0x00004752 bne  0x00000000 , 0x00004984 
- 00018836  0x00004753 fetch  0x00000001 , 0x00000c70 
- 00018837  0x00004754 bne  0x00000000 , 0x00004984 
- 00018838  0x00004755 fetch  0x00000001 , 0x00000c71 
- 00018839  0x00004756 bne  0x00000000 , 0x00004984 
- 00018840  0x00004757 fetch  0x00000001 , 0x00000c6b 
- 00018841  0x00004758 beq  0x00000004 , 0x0000499c 
- 00018842  0x00004759 beq  0x00000003 , 0x0000499e 
- 00018843  0x0000475a branch  0x00004984 
- 00018844  0x0000475d arg  0x00000001 , 0x00000012 
- 00018845  0x0000475e branch  0x00004a14 
- 00018846  0x00004761 arg  0x00000001 , 0x00000012 
- 00018847  0x00004762 branch  0x00004a12 
- 00018848  0x00004765 bpatch  0x000000f9 , 0x0000401f 
- 00018849  0x00004766 set0  0x00000023 , 0x00000000 
- 00018850  0x00004767 fetch  0x00000001 , 0x00000c71 
- 00018851  0x00004768 beq  0x00000001 , 0x000049b6 
- 00018852  0x00004769 beq  0x00000002 , 0x000049cf 
- 00018853  0x0000476a beq  0x00000003 , 0x000049d2 
- 00018854  0x0000476b beq  0x00000021 , 0x000049a9 
- 00018855  0x0000476c beq  0x00000022 , 0x000049e0 
- 00018856  0x0000476d branch  0x00004984 
- 00018857  0x00004770 jam  0x00000000 , 0x00000d4b 
- 00018858  0x00004771 fetch  0x00000001 , 0x00000c72 
- 00018859  0x00004772 beq  0x00000000 , 0x000049ae 
- 00018860  0x00004773 beq  0x00000001 , 0x000049b2 
- 00018861  0x00004774 branch  0x00004984 
- 00018862  0x00004777 arg  0x00000b93 , 0x00000011 
- 00018863  0x00004778 ifetch  0x00000001 , 0x00000011 
- 00018864  0x00004779 iforce  0x00000012 
- 00018865  0x0000477a branch  0x00004b21 
- 00018866  0x0000477d arg  0x00000bac , 0x00000011 
- 00018867  0x0000477e ifetch  0x00000001 , 0x00000011 
- 00018868  0x0000477f iforce  0x00000012 
- 00018869  0x00004780 branch  0x00004b21 
- 00018870  0x00004786 fetch  0x00000001 , 0x00000d48 
- 00018871  0x00004787 ncall  0x000049c7 , 0x00000034 
- 00018872  0x00004788 setarg  0x00000b68 
- 00018873  0x00004789 fetcht  0x00000001 , 0x00000b68 
- 00018874  0x0000478b store  0x00000002 , 0x00000d3f 
- 00018875  0x0000478c storet  0x00000001 , 0x00000d41 
- 00018876  0x0000478d fetch  0x00000001 , 0x00000c74 
- 00018877  0x0000478e isub  0x00000002 , 0x0000003e 
- 00018878  0x0000478f nbranch  0x000049c5 , 0x00000002 
- 00018879  0x00004791 fetch  0x00000001 , 0x00000d41 
- 00018880  0x00004793 iforce  0x00000012 
- 00018881  0x00004794 fetch  0x00000002 , 0x00000d3f 
- 00018882  0x00004795 add  0x0000003f , 0x00000001 , 0x0000003f 
- 00018883  0x00004796 iforce  0x00000011 
- 00018884  0x00004797 branch  0x00004b21 
- 00018885  0x00004799 fetch  0x00000001 , 0x00000c74 
- 00018886  0x0000479a branch  0x000049c0 
- 00018887  0x0000479d hfetch  0x00000001 , 0x00008a04 
- 00018888  0x0000479e ncall  0x000049cb , 0x00000034 
- 00018889  0x0000479f jam  0x00000000 , 0x00000d48 
- 00018890  0x000047a0 rtn 
- 00018891  0x000047a2 hfetch  0x00000001 , 0x00008a04 
- 00018892  0x000047a3 set1  0x00000007 , 0x0000003f 
- 00018893  0x000047a4 hstore  0x00000001 , 0x00008a04 
- 00018894  0x000047a5 rtn 
- 00018895  0x000047a8 setarg  0x00000b80 
- 00018896  0x000047a9 fetcht  0x00000001 , 0x00000b80 
- 00018897  0x000047aa branch  0x000049ba 
- 00018898  0x000047ad fetch  0x00000001 , 0x00000c70 
- 00018899  0x000047ae sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00018900  0x000047af nbranch  0x00004984 , 0x00000002 
- 00018901  0x000047b0 fetch  0x00000001 , 0x00000c70 
- 00018902  0x000047b1 arg  0x00000be4 , 0x00000011 
- 00018903  0x000047b2 beq  0x00000000 , 0x00004b1e 
- 00018904  0x000047b3 set1  0x00000023 , 0x00000000 
- 00018905  0x000047b4 arg  0x00000be9 , 0x00000011 
- 00018906  0x000047b5 beq  0x00000001 , 0x00004b1e 
- 00018907  0x000047b6 arg  0x00000c07 , 0x00000011 
- 00018908  0x000047b7 beq  0x00000002 , 0x00004b1e 
- 00018909  0x000047b8 arg  0x00000c47 , 0x00000011 
- 00018910  0x000047b9 beq  0x00000003 , 0x00004b1e 
- 00018911  0x000047ba rtn 
- 00018912  0x000047bd fetch  0x00000002 , 0x00000c72 
- 00018913  0x000047be beq  0x00000001 , 0x000049e5 
- 00018914  0x000047bf fetch  0x00000002 , 0x00000b7c 
- 00018915  0x000047c0 copy  0x0000003f , 0x00000011 
- 00018916  0x000047c2 branch  0x00004b1e 
- 00018917  0x000047c4 jam  0x00000001 , 0x00000d45 
- 00018918  0x000047c5 jam  0x00000001 , 0x00000d36 
- 00018919  0x000047c6 fetch  0x00000002 , 0x00000b7e 
- 00018920  0x000047c7 copy  0x0000003f , 0x00000011 
- 00018921  0x000047c9 branch  0x00004b1e 
- 00018922  0x000047cd fetch  0x00000001 , 0x00000c6b 
- 00018923  0x000047ce bne  0x00000004 , 0x00004984 
- 00018924  0x000047cf fetch  0x00000001 , 0x00000c6e 
- 00018925  0x000047d0 bne  0x00000081 , 0x00004984 
- 00018926  0x000047d1 fetch  0x00000001 , 0x00000c70 
- 00018927  0x000047d2 bne  0x00000000 , 0x00004984 
- 00018928  0x000047d3 fetch  0x00000001 , 0x00000c71 
- 00018929  0x000047d4 bne  0x00000000 , 0x00004984 
- 00018930  0x000047d5 fetch  0x00000001 , 0x00000c74 
- 00018931  0x000047d6 bne  0x00000001 , 0x00004984 
- 00018932  0x000047d7 fetch  0x00000001 , 0x00000c75 
- 00018933  0x000047d8 bne  0x00000000 , 0x00004984 
- 00018934  0x000047d9 fetch  0x00000001 , 0x00000c72 
- 00018935  0x000047da bne  0x00000000 , 0x00004984 
- 00018936  0x000047db fetch  0x00000001 , 0x00000c73 
- 00018937  0x000047dc bne  0x00000000 , 0x00004984 
- 00018938  0x000047dd arg  0x00000001 , 0x00000012 
- 00018939  0x000047de branch  0x00004a12 
- 00018940  0x000047e2 fetch  0x00000001 , 0x00000c6b 
- 00018941  0x000047e3 beq  0x00000002 , 0x00004984 
- 00018942  0x000047e4 fetch  0x00000001 , 0x00000c70 
- 00018943  0x000047e5 bne  0x00000000 , 0x00004984 
- 00018944  0x000047e6 fetch  0x00000001 , 0x00000c71 
- 00018945  0x000047e7 bne  0x00000000 , 0x00004984 
- 00018946  0x000047e8 fetch  0x00000001 , 0x00000c74 
- 00018947  0x000047e9 bne  0x00000002 , 0x00004984 
- 00018948  0x000047ea fetch  0x00000001 , 0x00000c75 
- 00018949  0x000047eb bne  0x00000000 , 0x00004984 
- 00018950  0x000047ec fetch  0x00000001 , 0x00000c73 
- 00018951  0x000047ed bne  0x00000000 , 0x00004984 
- 00018952  0x000047ee fetch  0x00000001 , 0x00000c6e 
- 00018953  0x000047ef beq  0x00000080 , 0x00004a0d 
- 00018954  0x000047f0 beq  0x00000081 , 0x00004a18 
- 00018955  0x000047f1 beq  0x00000082 , 0x00004a1c 
- 00018956  0x000047f2 branch  0x00004984 
- 00018957  0x000047f5 fetch  0x00000001 , 0x00000c72 
- 00018958  0x000047f6 bne  0x00000000 , 0x00004984 
- 00018959  0x000047f7 arg  0x00000002 , 0x00000012 
- 00018960  0x000047f8 fetch  0x00000001 , 0x00000d39 
- 00018961  0x000047f9 beq  0x00000001 , 0x00004a16 
- 00018962  0x000047fc arg  0x00000c65 , 0x00000011 
- 00018963  0x000047fd branch  0x00004b21 
- 00018964  0x000047ff arg  0x00000c67 , 0x00000011 
- 00018965  0x00004800 branch  0x00004b21 
- 00018966  0x00004802 arg  0x00000c69 , 0x00000011 
- 00018967  0x00004803 branch  0x00004b21 
- 00018968  0x00004806 fetch  0x00000001 , 0x00000c6b 
- 00018969  0x00004807 bne  0x00000004 , 0x00004984 
- 00018970  0x00004808 arg  0x00000002 , 0x00000012 
- 00018971  0x00004809 branch  0x00004a12 
- 00018972  0x0000480c fetch  0x00000001 , 0x00000c6b 
- 00018973  0x0000480d bne  0x00000004 , 0x00004984 
- 00018974  0x0000480e fetch  0x00000001 , 0x00000c72 
- 00018975  0x0000480f beq  0x00000081 , 0x00004a29 
- 00018976  0x00004810 beq  0x00000082 , 0x00004a2b 
- 00018977  0x00004811 beq  0x00000083 , 0x00004a2d 
- 00018978  0x00004812 and_into  0x0000007f , 0x0000003f 
- 00018979  0x00004813 beq  0x00000000 , 0x00004a25 
- 00018980  0x00004814 branch  0x00004984 
- 00018981  0x00004817 fetch  0x00000001 , 0x00000d3b 
- 00018982  0x00004819 arg  0x00000002 , 0x00000012 
- 00018983  0x0000481a beq  0x00000001 , 0x00004a14 
- 00018984  0x0000481b branch  0x00004a12 
- 00018985  0x0000481d fetch  0x00000001 , 0x00000d3c 
- 00018986  0x0000481e branch  0x00004a26 
- 00018987  0x00004820 fetch  0x00000001 , 0x00000d3d 
- 00018988  0x00004821 branch  0x00004a26 
- 00018989  0x00004823 fetch  0x00000001 , 0x00000d3e 
- 00018990  0x00004824 branch  0x00004a26 
- 00018991  0x00004827 jam  0x00000001 , 0x00000d4c 
- 00018992  0x00004828 arg  0x00000d4d , 0x00000011 
- 00018993  0x00004829 arg  0x00000001 , 0x00000012 
- 00018994  0x0000482a branch  0x00004b21 
- 00018995  0x0000482d fetch  0x00000002 , 0x00000c70 
- 00018996  0x0000482e arg  0x000001ba , 0x00000002 
- 00018997  0x0000482f isub  0x00000002 , 0x0000003e 
- 00018998  0x00004830 nbranch  0x00004984 , 0x00000005 
- 00018999  0x00004831 set0  0x00000023 , 0x00000000 
- 00019000  0x00004833 fetch  0x00000001 , 0x00000d42 
- 00019001  0x00004834 nbranch  0x00004a42 , 0x00000034 
- 00019002  0x00004835 jam  0x00000000 , 0x00000cf6 
- 00019003  0x00004837 fetch  0x00000001 , 0x00000c74 
- 00019004  0x00004838 iforce  0x00000012 
- 00019005  0x00004839 arg  0x00000cf6 , 0x00000011 
- 00019006  0x0000483a call  0x00004b21 
- 00019007  0x0000483c arg  0x00000cf6 , 0x00000005 
- 00019008  0x0000483d arg  0x00000008 , 0x00000039 
- 00019009  0x0000483e branch  0x00007ec6 
- 00019010  0x00004840 jam  0x00000000 , 0x00000d42 
- 00019011  0x00004841 jam  0x00000001 , 0x00000cf6 
- 00019012  0x00004842 branch  0x00004a3b 
- 00019013  0x00004845 fetch  0x00000001 , 0x00000c74 
- 00019014  0x00004846 bne  0x00000001 , 0x00004984 
- 00019015  0x00004847 jam  0x00000001 , 0x00000d4b 
- 00019016  0x00004848 arg  0x00000001 , 0x00000012 
- 00019017  0x00004849 fetch  0x00000001 , 0x00000d49 
- 00019018  0x0000484a beq  0x00000000 , 0x00004a4d 
- 00019019  0x0000484b beq  0x00000001 , 0x00004a4e 
- 00019020  0x0000484c branch  0x00004a12 
- 00019021  0x0000484e branch  0x00004a14 
- 00019022  0x00004850 branch  0x00004a12 
- 00019023  0x00004856 fetch  0x00000001 , 0x00000c6b 
- 00019024  0x00004857 bne  0x00000004 , 0x00004984 
- 00019025  0x00004858 fetch  0x00000001 , 0x00000c74 
- 00019026  0x00004859 bne  0x00000000 , 0x00004984 
- 00019027  0x0000485a fetch  0x00000001 , 0x00000c75 
- 00019028  0x0000485b bne  0x00000000 , 0x00004984 
- 00019029  0x0000485c fetch  0x00000001 , 0x00000c71 
- 00019030  0x0000485d bne  0x00000000 , 0x00004984 
- 00019031  0x0000485e fetch  0x00000001 , 0x00000c73 
- 00019032  0x0000485f bne  0x00000000 , 0x00004984 
- 00019033  0x00004860 fetch  0x00000001 , 0x00000c6e 
- 00019034  0x00004861 beq  0x00000000 , 0x00004a5e 
- 00019035  0x00004862 beq  0x00000001 , 0x00004a66 
- 00019036  0x00004863 beq  0x00000002 , 0x00004a67 
- 00019037  0x00004864 branch  0x00004984 
- 00019038  0x00004867 fetch  0x00000001 , 0x00000c70 
- 00019039  0x00004868 bne  0x00000001 , 0x00004984 
- 00019040  0x00004869 hfetch  0x00000001 , 0x00008a00 
- 00019041  0x0000486a set0  0x00000007 , 0x0000003f 
- 00019042  0x0000486b hstore  0x00000001 , 0x00008a00 
- 00019043  0x0000486c jam  0x00000000 , 0x00000d39 
- 00019044  0x0000486d jam  0x00000001 , 0x00000d3a 
- 00019045  0x0000486e branch  0x00004988 
- 00019046  0x00004871 branch  0x00004984 
- 00019047  0x00004874 fetch  0x00000001 , 0x00000c70 
- 00019048  0x00004875 bne  0x00000000 , 0x00004984 
- 00019049  0x00004876 fetch  0x00000001 , 0x00000c72 
- 00019050  0x00004877 beq  0x00000081 , 0x00004a72 
- 00019051  0x00004878 beq  0x00000082 , 0x00004a75 
- 00019052  0x00004879 beq  0x00000083 , 0x00004a77 
- 00019053  0x0000487a and_into  0x0000007f , 0x0000003f 
- 00019054  0x0000487b beq  0x00000000 , 0x00004a70 
- 00019055  0x0000487c branch  0x00004984 
- 00019056  0x0000487f jam  0x00000000 , 0x00000d3b 
- 00019057  0x00004880 branch  0x00004988 
- 00019058  0x00004882 jam  0x00000000 , 0x00000d3c 
- 00019059  0x00004884 jam  0x00000001 , 0x00000d53 
- 00019060  0x00004885 branch  0x00004988 
- 00019061  0x00004887 jam  0x00000000 , 0x00000d3d 
- 00019062  0x00004888 branch  0x00004a73 
- 00019063  0x0000488a jam  0x00000000 , 0x00000d3e 
- 00019064  0x0000488b branch  0x00004a73 
- 00019065  0x0000488f fetch  0x00000001 , 0x00000c74 
- 00019066  0x00004890 bne  0x00000000 , 0x00004984 
- 00019067  0x00004891 fetch  0x00000001 , 0x00000c75 
- 00019068  0x00004892 bne  0x00000000 , 0x00004984 
- 00019069  0x00004893 fetch  0x00000001 , 0x00000c6e 
- 00019070  0x00004894 beq  0x00000000 , 0x00004a82 
- 00019071  0x00004895 beq  0x00000001 , 0x00004a8f 
- 00019072  0x00004896 beq  0x00000002 , 0x00004a90 
- 00019073  0x00004897 branch  0x00004984 
- 00019074  0x0000489a fetch  0x00000001 , 0x00000c70 
- 00019075  0x0000489b bne  0x00000001 , 0x00004984 
- 00019076  0x0000489c hfetch  0x00000001 , 0x00008a00 
- 00019077  0x0000489d set1  0x00000007 , 0x0000003f 
- 00019078  0x0000489e hstore  0x00000001 , 0x00008a00 
- 00019079  0x0000489f jam  0x00000001 , 0x00000d39 
- 00019080  0x000048a0 jam  0x00000003 , 0x00000d36 
- 00019081  0x000048a1 jam  0x00000000 , 0x00000d43 
- 00019082  0x000048a2 call  0x00004988 
- 00019083  0x000048a4 call  0x00007f15 
- 00019084  0x000048a5 setarg  0x00001388 
- 00019085  0x000048a6 arg  0x0000000f , 0x00000007 
- 00019086  0x000048a7 branch  0x00007f08 
- 00019087  0x000048aa branch  0x00004984 
- 00019088  0x000048ad fetch  0x00000001 , 0x00000c70 
- 00019089  0x000048ae bne  0x00000000 , 0x00004984 
- 00019090  0x000048af fetch  0x00000001 , 0x00000c71 
- 00019091  0x000048b0 bne  0x00000000 , 0x00004984 
- 00019092  0x000048b1 fetch  0x00000001 , 0x00000c72 
- 00019093  0x000048b2 beq  0x00000081 , 0x00004a9d 
- 00019094  0x000048b3 beq  0x00000082 , 0x00004a9f 
- 00019095  0x000048b4 beq  0x00000083 , 0x00004aa1 
- 00019096  0x000048b5 and_into  0x0000007f , 0x0000003f 
- 00019097  0x000048b6 beq  0x00000000 , 0x00004a9b 
- 00019098  0x000048b7 branch  0x00004984 
- 00019099  0x000048ba jam  0x00000001 , 0x00000d3b 
- 00019100  0x000048bb branch  0x00004988 
- 00019101  0x000048bd jam  0x00000001 , 0x00000d3c 
- 00019102  0x000048be branch  0x00004988 
- 00019103  0x000048c0 jam  0x00000001 , 0x00000d3d 
- 00019104  0x000048c1 branch  0x00004988 
- 00019105  0x000048c3 jam  0x00000001 , 0x00000d3e 
- 00019106  0x000048c4 branch  0x00004988 
- 00019107  0x000048c8 fetch  0x00000001 , 0x00000c6e 
- 00019108  0x000048c9 bne  0x00000000 , 0x00004984 
- 00019109  0x000048ca fetch  0x00000001 , 0x00000c72 
- 00019110  0x000048cb bne  0x00000000 , 0x00004984 
- 00019111  0x000048cc fetch  0x00000001 , 0x00000c73 
- 00019112  0x000048cd bne  0x00000000 , 0x00004984 
- 00019113  0x000048ce fetch  0x00000001 , 0x00000c74 
- 00019114  0x000048cf bne  0x00000000 , 0x00004984 
- 00019115  0x000048d0 fetch  0x00000001 , 0x00000c75 
- 00019116  0x000048d1 bne  0x00000000 , 0x00004984 
- 00019117  0x000048d2 fetch  0x00000001 , 0x00000c71 
- 00019118  0x000048d3 bne  0x00000000 , 0x00004984 
- 00019119  0x000048d4 fetch  0x00000001 , 0x00000c70 
- 00019120  0x000048d5 and_into  0x00000080 , 0x0000003f 
- 00019121  0x000048d6 bne  0x00000000 , 0x00004984 
- 00019122  0x000048d7 fetch  0x00000001 , 0x00000c70 
- 00019123  0x000048d8 bne  0x00000000 , 0x00004aba 
- 00019124  0x000048da jam  0x00000002 , 0x00000c6b 
- 00019125  0x000048dc fetch  0x00000001 , 0x00000c70 
- 00019126  0x000048dd hstore  0x00000001 , 0x00008a04 
- 00019127  0x000048de call  0x00004988 
- 00019128  0x000048df jam  0x00000001 , 0x00000d48 
- 00019129  0x000048e0 rtn 
- 00019130  0x000048e2 jam  0x00000003 , 0x00000c6b 
- 00019131  0x000048e3 branch  0x00004ab5 
- 00019132  0x000048e7 fetch  0x00000001 , 0x00000c6b 
- 00019133  0x000048e8 beq  0x00000002 , 0x00004984 
- 00019134  0x000048e9 fetch  0x00000001 , 0x00000c6e 
- 00019135  0x000048ea bne  0x00000000 , 0x00004984 
- 00019136  0x000048eb fetch  0x00000001 , 0x00000c72 
- 00019137  0x000048ec bne  0x00000000 , 0x00004984 
- 00019138  0x000048ed fetch  0x00000001 , 0x00000c73 
- 00019139  0x000048ee bne  0x00000000 , 0x00004984 
- 00019140  0x000048ef fetch  0x00000001 , 0x00000c74 
- 00019141  0x000048f0 bne  0x00000000 , 0x00004984 
- 00019142  0x000048f1 fetch  0x00000001 , 0x00000c75 
- 00019143  0x000048f2 bne  0x00000000 , 0x00004984 
- 00019144  0x000048f3 fetch  0x00000001 , 0x00000c71 
- 00019145  0x000048f4 bne  0x00000000 , 0x00004984 
- 00019146  0x000048f5 fetch  0x00000001 , 0x00000c70 
- 00019147  0x000048f6 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00019148  0x000048f7 nbranch  0x00004984 , 0x00000002 
- 00019149  0x000048f8 fetch  0x00000001 , 0x00000c6b 
- 00019150  0x000048f9 beq  0x00000003 , 0x00004ad1 
- 00019151  0x000048fa beq  0x00000004 , 0x00004ad1 
- 00019152  0x000048fb branch  0x00004984 
- 00019153  0x000048ff fetch  0x00000001 , 0x00000c70 
- 00019154  0x00004900 beq  0x00000000 , 0x00004ad5 
- 00019155  0x00004901 jam  0x00000004 , 0x00000c6b 
- 00019156  0x00004902 branch  0x00004988 
- 00019157  0x00004904 jam  0x00000003 , 0x00000c6b 
- 00019158  0x00004905 branch  0x00004988 
- 00019159  0x00004909 fetch  0x00000001 , 0x00000c6b 
- 00019160  0x0000490a bne  0x00000004 , 0x00004984 
- 00019161  0x0000490b fetch  0x00000001 , 0x00000c6e 
- 00019162  0x0000490c bne  0x00000001 , 0x00004984 
- 00019163  0x0000490d fetch  0x00000001 , 0x00000c70 
- 00019164  0x0000490e bne  0x00000000 , 0x00004984 
- 00019165  0x0000490f fetch  0x00000001 , 0x00000c71 
- 00019166  0x00004910 bne  0x00000000 , 0x00004984 
- 00019167  0x00004911 fetch  0x00000001 , 0x00000c74 
- 00019168  0x00004912 bne  0x00000000 , 0x00004984 
- 00019169  0x00004913 fetch  0x00000001 , 0x00000c75 
- 00019170  0x00004914 bne  0x00000000 , 0x00004984 
- 00019171  0x00004915 fetch  0x00000001 , 0x00000c72 
- 00019172  0x00004916 bne  0x00000000 , 0x00004984 
- 00019173  0x00004917 fetch  0x00000001 , 0x00000c73 
- 00019174  0x00004918 bne  0x00000000 , 0x00004984 
- 00019175  0x00004919 branch  0x00004988 
- 00019176  0x0000491d jam  0x00000001 , 0x00000d4c 
- 00019177  0x0000491e fetch  0x00000001 , 0x00000c71 
- 00019178  0x0000491f store  0x00000001 , 0x00000d4d 
- 00019179  0x00004920 fetch  0x00000001 , 0x00000c72 
- 00019180  0x00004921 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00019181  0x00004922 call  0x00004af5 , 0x00000005 
- 00019182  0x00004923 fetch  0x00000001 , 0x00000d36 
- 00019183  0x00004924 bne  0x00000004 , 0x00004988 
- 00019184  0x00004925 jam  0x00000002 , 0x00000d36 
- 00019185  0x00004926 call  0x00004988 
- 00019186  0x00004927 nop  0x00007530 
- 00019187  0x00004928 nop  0x00007530 
- 00019188  0x00004929 rtn 
- 00019189  0x0000492b jam  0x00000001 , 0x00000d45 
- 00019190  0x0000492c jam  0x00000000 , 0x00000d3a 
- 00019191  0x0000492d jam  0x00000004 , 0x00000d36 
- 00019192  0x0000492e rtn 
- 00019193  0x00004932 jam  0x00000001 , 0x00000d50 
- 00019194  0x00004933 call  0x00004b03 
- 00019195  0x00004934 fetch  0x00000002 , 0x00000c70 
- 00019196  0x00004935 store  0x00000002 , 0x00000d4e 
- 00019197  0x00004936 fetch  0x00000001 , 0x00000c74 
- 00019198  0x00004937 iforce  0x00000039 
- 00019199  0x00004938 arg  0x00000c76 , 0x00000006 
- 00019200  0x00004939 arg  0x00000cb6 , 0x00000005 
- 00019201  0x0000493a call  0x00007f01 
- 00019202  0x0000493b branch  0x00004988 
- 00019203  0x0000493e fetch  0x00000002 , 0x00000c70 
- 00019204  0x0000493f arg  0x00000200 , 0x00000002 
- 00019205  0x00004940 isub  0x00000002 , 0x0000003e 
- 00019206  0x00004941 nrtn  0x00000005 
- 00019207  0x00004942 fetch  0x00000002 , 0x00000c72 
- 00019208  0x00004943 arg  0x00000000 , 0x00000002 
- 00019209  0x00004944 isub  0x00000002 , 0x0000003e 
- 00019210  0x00004945 nrtn  0x00000005 
- 00019211  0x00004946 fetch  0x00000002 , 0x00000c74 
- 00019212  0x00004947 arg  0x00000001 , 0x00000002 
- 00019213  0x00004948 isub  0x00000002 , 0x0000003e 
- 00019214  0x00004949 nrtn  0x00000005 
- 00019215  0x0000494a jam  0x00000001 , 0x00000d43 
- 00019216  0x0000494b rtn 
- 00019217  0x0000494f fetch  0x00000001 , 0x00000c74 
- 00019218  0x00004950 bne  0x00000000 , 0x00004984 
- 00019219  0x00004951 fetch  0x00000001 , 0x00000c70 
- 00019220  0x00004952 beq  0x00000000 , 0x00004b17 
- 00019221  0x00004953 beq  0x00000001 , 0x00004b1a 
- 00019222  0x00004954 branch  0x00004984 
- 00019223  0x00004956 jam  0x00000000 , 0x00000d4a 
- 00019224  0x00004957 jam  0x00000001 , 0x00000d49 
- 00019225  0x00004958 branch  0x00004988 
- 00019226  0x0000495a jam  0x00000001 , 0x00000d44 
- 00019227  0x0000495b jam  0x00000001 , 0x00000d4a 
- 00019228  0x0000495c jam  0x00000000 , 0x00000d49 
- 00019229  0x0000495d branch  0x00004988 
- 00019230  0x00004961 ifetch  0x00000001 , 0x00000011 
- 00019231  0x00004962 iforce  0x00000012 
- 00019232  0x00004963 increase  0x00000001 , 0x00000011 
- 00019233  0x00004966 bpatch  0x000000fa , 0x0000401f 
- 00019234  0x00004967 bmark0  0x00000023 , 0x00004b2c 
- 00019235  0x00004968 add  0x00000012 , 0x00000001 , 0x0000003f 
- 00019236  0x00004969 lshift  0x0000003f , 0x0000003f 
- 00019237  0x0000496a hstore  0x00000001 , 0x00008a18 
- 00019238  0x0000496b jam  0x00000003 , 0x00008a18 
- 00019239  0x0000496c fetch  0x00000001 , 0x00000c74 
- 00019240  0x0000496d increase  0xfffffffe , 0x0000003f 
- 00019241  0x0000496e rshift  0x0000003f , 0x0000003f 
- 00019242  0x0000496f store  0x00000001 , 0x00000c74 
- 00019243  0x00004970 beq  0x00000000 , 0x00004b35 
- 00019244  0x00004972 fetch  0x00000002 , 0x00000c74 
- 00019245  0x00004973 isub  0x00000012 , 0x0000003e 
- 00019246  0x00004974 branch  0x00004b30 , 0x00000002 
- 00019247  0x00004975 copy  0x0000003f , 0x00000012 
- 00019248  0x00004977 deposit  0x00000011 
- 00019249  0x00004978 store  0x00000002 , 0x00000b65 
- 00019250  0x00004979 deposit  0x00000012 
- 00019251  0x0000497a store  0x00000001 , 0x00000b67 
- 00019252  0x0000497b branch  0x00004b37 
- 00019253  0x0000497e arg  0x00000000 , 0x00000007 
- 00019254  0x0000497f branch  0x00004b57 
- 00019255  0x00004983 bpatch  0x000000fb , 0x0000401f 
- 00019256  0x00004984 fetch  0x00000001 , 0x00000b67 
- 00019257  0x00004985 rtn  0x00000034 
- 00019258  0x00004986 copy  0x0000003f , 0x00000039 
- 00019259  0x00004987 sub  0x0000003f , 0x00000040 , 0x0000003e 
- 00019260  0x00004988 branch  0x00004b3e , 0x00000002 
- 00019261  0x00004989 arg  0x00000040 , 0x00000039 
- 00019262  0x0000498b fetch  0x00000001 , 0x00000b67 
- 00019263  0x0000498c isub  0x00000039 , 0x0000003f 
- 00019264  0x0000498d store  0x00000001 , 0x00000b67 
- 00019265  0x0000498e fetch  0x00000002 , 0x00000b65 
- 00019266  0x0000498f copy  0x0000003f , 0x00000006 
- 00019267  0x00004991 ifetch  0x00000001 , 0x00000006 
- 00019268  0x00004992 hstore  0x00000001 , 0x00008a18 
- 00019269  0x00004993 bmark0  0x00000023 , 0x00004b47 
- 00019270  0x00004994 jam  0x00000000 , 0x00008a18 
- 00019271  0x00004996 loop  0x00004b43 
- 00019272  0x00004997 copy  0x00000006 , 0x0000003f 
- 00019273  0x00004998 store  0x00000002 , 0x00000b65 
- 00019274  0x00004999 arg  0x00000000 , 0x00000007 
- 00019275  0x0000499a call  0x00004b57 
- 00019276  0x0000499b fetch  0x00000001 , 0x00000b67 
- 00019277  0x0000499c nrtn  0x00000034 
- 00019278  0x0000499d fetch  0x00000001 , 0x00000d36 
- 00019279  0x0000499e rtnne  0x00000001 
- 00019280  0x0000499f jam  0x00000002 , 0x00000d36 
- 00019281  0x000049a0 rtn 
- 00019282  0x000049a4 arg  0x00008a19 , 0x00000011 
- 00019283  0x000049a5 arg  0x00000001 , 0x00000007 
- 00019284  0x000049a7 ifetch  0x00000001 , 0x00000006 
- 00019285  0x000049a8 istore  0x00000001 , 0x00000011 
- 00019286  0x000049a9 loop  0x00004b54 
- 00019287  0x000049ab setarg  0x00000000 
- 00019288  0x000049ac qset1  0x0000003f 
- 00019289  0x000049ad hstore  0x00000001 , 0x00008a10 
- 00019290  0x000049ae fetcht  0x00000001 , 0x00000d37 
- 00019291  0x000049af ior  0x00000002 , 0x0000003f 
- 00019292  0x000049b0 store  0x00000001 , 0x00000d37 
- 00019293  0x000049b1 rtn 
- 00019294  0x000049b4 arg  0x00000002 , 0x00000007 
- 00019295  0x000049b5 arg  0x00008a1a , 0x00000011 
- 00019296  0x000049b6 branch  0x00004b54 
- 00019297  0x000049b9 bpatch  0x000000fc , 0x0000401f 
- 00019298  0x000049ba fetch  0x00000001 , 0x00000d38 
- 00019299  0x000049bb rtn  0x00000034 
- 00019300  0x000049bc fetch  0x00000001 , 0x00000d37 
- 00019301  0x000049bd nbranch  0x00004bac , 0x00000034 
- 00019302  0x000049be fetch  0x00000001 , 0x00000d45 
- 00019303  0x000049bf branch  0x00004b86 , 0x00000034 
- 00019304  0x000049c0 fetch  0x00000001 , 0x00000d36 
- 00019305  0x000049c1 beq  0x00000003 , 0x00004bbf 
- 00019306  0x000049c2 bne  0x00000002 , 0x00004b86 
- 00019307  0x000049c3 fetch  0x00000001 , 0x00000d3a 
- 00019308  0x000049c4 nbranch  0x00004b86 , 0x00000034 
- 00019309  0x000049c5 call  0x00004b6f 
- 00019310  0x000049c6 branch  0x00004b7a 
- 00019311  0x000049c9 fetch  0x00000001 , 0x00000d38 
- 00019312  0x000049ca rtnbit0  0x00000001 
- 00019313  0x000049cb fetch  0x00000001 , 0x00000d37 
- 00019314  0x000049cc rtnbit1  0x00000001 
- 00019315  0x000049cd fetch  0x00000001 , 0x00000d38 
- 00019316  0x000049ce set0  0x00000001 , 0x0000003f 
- 00019317  0x000049cf store  0x00000001 , 0x00000d38 
- 00019318  0x000049d0 fetch  0x00000001 , 0x00000d51 
- 00019319  0x000049d1 rtn  0x00000034 
- 00019320  0x000049d2 beq  0x00000010 , 0x00004ba8 
- 00019321  0x000049d3 branch  0x00002a8c 
- 00019322  0x000049d6 fetch  0x00000001 , 0x00000d38 
- 00019323  0x000049d7 rtnbit0  0x00000002 
- 00019324  0x000049d8 fetch  0x00000001 , 0x00000d37 
- 00019325  0x000049d9 rtnbit1  0x00000002 
- 00019326  0x000049da fetch  0x00000001 , 0x00000d38 
- 00019327  0x000049db set0  0x00000002 , 0x0000003f 
- 00019328  0x000049dc store  0x00000001 , 0x00000d38 
- 00019329  0x000049dd fetch  0x00000001 , 0x00000d52 
- 00019330  0x000049de rtn  0x00000034 
- 00019331  0x000049df beq  0x00000020 , 0x00004b89 
- 00019332  0x000049e0 beq  0x00000021 , 0x00004ba4 
- 00019333  0x000049e1 branch  0x00002a8c 
- 00019334  0x000049e5 arg  0x00000d54 , 0x00000005 
- 00019335  0x000049e6 arg  0x00000006 , 0x00000039 
- 00019336  0x000049e7 branch  0x00007ec6 
- 00019337  0x000049ea fetch  0x00000001 , 0x00000d4c 
- 00019338  0x000049eb fetcht  0x00000001 , 0x00000d4b 
- 00019339  0x000049ec iand  0x00000002 , 0x0000003f 
- 00019340  0x000049ed branch  0x00004ba0 , 0x00000034 
- 00019341  0x000049ee fetcht  0x00000001 , 0x00000d4a 
- 00019342  0x000049ef iadd  0x00000002 , 0x0000003f 
- 00019343  0x000049f0 beq  0x00000001 , 0x00004b91 
- 00019344  0x000049f1 branch  0x00004ba0 
- 00019345  0x000049f4 jam  0x00000000 , 0x00000d52 
- 00019346  0x000049f6 fetch  0x00000001 , 0x00000d55 
- 00019347  0x000049f7 beq  0x00000002 , 0x00004ba1 
- 00019348  0x000049f8 beq  0x00000003 , 0x00004ba1 
- 00019349  0x000049f9 fetch  0x00000001 , 0x00000d55 
- 00019350  0x000049fa store  0x00000001 , 0x00000d54 
- 00019351  0x000049fb fetch  0x00000001 , 0x00000d56 
- 00019352  0x000049fc istore  0x00000001 , 0x00000005 
- 00019353  0x000049fd fetch  0x00000001 , 0x00000d58 
- 00019354  0x000049fe istore  0x00000001 , 0x00000005 
- 00019355  0x000049ff fetch  0x00000001 , 0x00000d5a 
- 00019356  0x00004a00 istore  0x00000001 , 0x00000005 
- 00019357  0x00004a01 arg  0x00000004 , 0x00000039 
- 00019358  0x00004a02 arg  0x00000d54 , 0x00000006 
- 00019359  0x00004a03 branch  0x00004b5e 
- 00019360  0x00004a06 jam  0x00000000 , 0x00000d52 
- 00019361  0x00004a08 arg  0x00000008 , 0x00000039 
- 00019362  0x00004a09 arg  0x00000d54 , 0x00000006 
- 00019363  0x00004a0a branch  0x00004b5e 
- 00019364  0x00004a0d jam  0x00000000 , 0x00000d52 
- 00019365  0x00004a0e arg  0x00000003 , 0x00000039 
- 00019366  0x00004a0f arg  0x00000d74 , 0x00000006 
- 00019367  0x00004a10 branch  0x00004b5e 
- 00019368  0x00004a13 jam  0x00000000 , 0x00000d51 
- 00019369  0x00004a14 arg  0x00000008 , 0x00000039 
- 00019370  0x00004a15 arg  0x00000d64 , 0x00000006 
- 00019371  0x00004a16 branch  0x00004b52 
- 00019372  0x00004a19 fetch  0x00000001 , 0x00000d36 
- 00019373  0x00004a1a beq  0x00000003 , 0x00004bb0 
- 00019374  0x00004a1b beq  0x00000002 , 0x00004bb2 
- 00019375  0x00004a1c rtn 
- 00019376  0x00004a1e jam  0x00000000 , 0x00000d37 
- 00019377  0x00004a1f rtn 
- 00019378  0x00004a21 hfetch  0x00000001 , 0x00008a00 
- 00019379  0x00004a22 set1  0x00000007 , 0x0000003f 
- 00019380  0x00004a23 hstore  0x00000001 , 0x00008a00 
- 00019381  0x00004a24 jam  0x00000001 , 0x00000d47 
- 00019382  0x00004a25 rtn 
- 00019383  0x00004a28 fetch  0x00000001 , 0x00000d36 
- 00019384  0x00004a29 rtneq  0x00000003 
- 00019385  0x00004a2a beq  0x00000002 , 0x00004bbb 
- 00019386  0x00004a2b rtn 
- 00019387  0x00004a2d fetch  0x00000001 , 0x00000d47 
- 00019388  0x00004a2e rtn  0x00000034 
- 00019389  0x00004a2f jam  0x00000001 , 0x00000d46 
- 00019390  0x00004a30 branch  0x00004bc2 
- 00019391  0x00004a33 arg  0x0000000f , 0x00000007 
- 00019392  0x00004a34 call  0x00007f16 
- 00019393  0x00004a35 nrtn  0x00000034 
- 00019394  0x00004a37 hfetch  0x00000001 , 0x00008a00 
- 00019395  0x00004a38 rtnbit0  0x00000007 
- 00019396  0x00004a39 jam  0x000000fc , 0x00008a00 
- 00019397  0x00004a3a nop  0x00007530 
- 00019398  0x00004a3b jam  0x0000003c , 0x00008a00 
- 00019399  0x00004a3c rtn 
- 00019400  0x00004a44 bpatch  0x000000fd , 0x0000401f 
- 00019401  0x00004a45 fetch  0x00000001 , 0x000041ce 
- 00019402  0x00004a46 nrtn  0x00000034 
- 00019403  0x00004a48 call  0x00004bce 
- 00019404  0x00004a49 ncall  0x00004be6 , 0x00000028 
- 00019405  0x00004a4a rtn 
- 00019406  0x00004a4d bpatch  0x000000fe , 0x0000401f 
- 00019407  0x00004a4e copy  0x00000003 , 0x00000011 
- 00019408  0x00004a4f arg  0x00000004 , 0x00000002 
- 00019409  0x00004a50 ifetch  0x00000001 , 0x00000003 
- 00019410  0x00004a51 beq  0x00000001 , 0x00004bd8 
- 00019411  0x00004a52 increase  0x00000001 , 0x00000002 
- 00019412  0x00004a53 beq  0x00000002 , 0x00004bd8 
- 00019413  0x00004a54 copy  0x00000003 , 0x0000003f 
- 00019414  0x00004a55 hstore  0x00000002 , 0x00008058 
- 00019415  0x00004a56 rtn 
- 00019416  0x00004a58 hfetch  0x00000002 , 0x00008112 
- 00019417  0x00004a59 isub  0x00000002 , 0x0000003e 
- 00019418  0x00004a5a nbranch  0x00004bd8 , 0x00000002 
- 00019419  0x00004a5c disable  0x00000028 
- 00019420  0x00004a5d copy  0x00000011 , 0x00000003 
- 00019421  0x00004a5e call  0x00004bee 
- 00019422  0x00004a5f iadd  0x00000002 , 0x00000002 
- 00019423  0x00004a61 hfetch  0x00000002 , 0x00008112 
- 00019424  0x00004a62 isub  0x00000002 , 0x0000003e 
- 00019425  0x00004a63 nbranch  0x00004bdf , 0x00000002 
- 00019426  0x00004a64 copy  0x00000011 , 0x00000003 
- 00019427  0x00004a65 ifetch  0x00000001 , 0x00000003 
- 00019428  0x00004a66 beq  0x00000001 , 0x00004c3f 
- 00019429  0x00004a67 branch  0x00002a8c 
- 00019430  0x00004a6a bpatch  0x000000ff , 0x0000401f 
- 00019431  0x00004a6b hfetch  0x00000002 , 0x00008058 
- 00019432  0x00004a6c iforce  0x00000003 
- 00019433  0x00004a6d call  0x00004bee 
- 00019434  0x00004a6e iadd  0x00000003 , 0x00000003 
- 00019435  0x00004a6f deposit  0x00000003 
- 00019436  0x00004a70 hstore  0x00000002 , 0x00008058 
- 00019437  0x00004a71 rtn 
- 00019438  0x00004a77 ifetch  0x00000001 , 0x00000003 
- 00019439  0x00004a78 increase  0x00000002 , 0x00000003 
- 00019440  0x00004a79 beq  0x00000002 , 0x00004bf3 
- 00019441  0x00004a7a ifetch  0x00000001 , 0x00000003 
- 00019442  0x00004a7b rtn 
- 00019443  0x00004a7d ifetch  0x00000002 , 0x00000003 
- 00019444  0x00004a7e rtn 
- 00019445  0x00004a81 hfetch  0x00000002 , 0x0000805e 
- 00019446  0x00004a82 increase  0xfffffffb , 0x0000000a 
- 00019447  0x00004a83 iadd  0x0000000a , 0x0000000a 
- 00019448  0x00004a84 rtn 
- 00019449  0x00004a87 arg  0x00000004 , 0x00000002 
- 00019450  0x00004a88 branch  0x00004bfc 
- 00019451  0x00004a8a arg  0x00000002 , 0x00000002 
- 00019452  0x00004a8c bpatchx  0x00000000 , 0x00004020 
- 00019453  0x00004a8d increase  0x00000001 , 0x00000039 
- 00019454  0x00004a8e hfetch  0x00000002 , 0x0000805e 
- 00019455  0x00004a8f copy  0x0000003f , 0x0000000a 
- 00019456  0x00004a90 copy  0x00000039 , 0x0000003f 
- 00019457  0x00004a91 istoret  0x00000001 , 0x0000000a 
- 00019458  0x00004a92 increase  0xffffffff , 0x0000003f 
- 00019459  0x00004a93 iadd  0x0000000a , 0x0000000a 
- 00019460  0x00004a94 copy  0x0000000a , 0x0000003f 
- 00019461  0x00004a95 store  0x00000002 , 0x00000258 
- 00019462  0x00004a96 copy  0x00000002 , 0x0000003f 
- 00019463  0x00004a97 rtneq  0x00000002 
- 00019464  0x00004a98 fetch  0x00000002 , 0x00000258 
- 00019465  0x00004a99 hstore  0x00000002 , 0x0000805e 
- 00019466  0x00004a9a branch  0x00004c0b 
- 00019467  0x00004a9e setarg  0x00000000 
- 00019468  0x00004a9f store  0x00000002 , 0x00000258 
- 00019469  0x00004aa0 rtn 
- 00019470  0x00004aa8 rtn  0x0000002b 
- 00019471  0x00004aa9 setarg  0x00004d28 
- 00019472  0x00004aaa store  0x00000002 , 0x000041f3 
- 00019473  0x00004aac setarg  0x000001a0 
- 00019474  0x00004aad store  0x00000002 , 0x00004243 
- 00019475  0x00004aaf setarg  0x00001800 
- 00019476  0x00004ab0 hstore  0x00000002 , 0x00008054 
- 00019477  0x00004ab1 setarg  0x00001bff 
- 00019478  0x00004ab2 hstore  0x00000002 , 0x00008056 
- 00019479  0x00004ab3 setarg  0x00001c00 
- 00019480  0x00004ab4 hstore  0x00000002 , 0x0000805a 
- 00019481  0x00004ab5 call  0x00004c28 
- 00019482  0x00004ab7 jam  0x00000000 , 0x00008062 
- 00019483  0x00004ab8 setarg  0x00001c00 
- 00019484  0x00004ab9 hstore  0x00000002 , 0x0000805e 
- 00019485  0x00004aba hstore  0x00000002 , 0x00008060 
- 00019486  0x00004abb setarg  0x00001800 
- 00019487  0x00004abc hstore  0x00000002 , 0x00008058 
- 00019488  0x00004abd store  0x00000002 , 0x00000244 
- 00019489  0x00004abf hfetch  0x00000002 , 0x00008050 
- 00019490  0x00004ac0 set0  0x0000000f , 0x0000003f 
- 00019491  0x00004ac1 hstore  0x00000002 , 0x00008050 
- 00019492  0x00004ac2 call  0x000066ce 
- 00019493  0x00004ac3 jam  0x00000001 , 0x00008043 
- 00019494  0x00004ac4 jam  0x00000081 , 0x00008062 
- 00019495  0x00004ac5 rtn 
- 00019496  0x00004ac8 setarg  0x00001fff 
- 00019497  0x00004ac9 hstore  0x00000002 , 0x0000805c 
- 00019498  0x00004aca hfetch  0x00000001 , 0x00008081 
- 00019499  0x00004acb or_into  0x00000007 , 0x0000003f 
- 00019500  0x00004acc hstore  0x00000001 , 0x00008081 
- 00019501  0x00004acd rtn 
- 00019502  0x00004ad1 bpatchx  0x00000001 , 0x00004020 
- 00019503  0x00004ad2 hfetch  0x00000001 , 0x0000810c 
- 00019504  0x00004ad3 iforce  0x00000012 
- 00019505  0x00004ad4 bbit0  0x00000003 , 0x00004c37 
- 00019506  0x00004ad5 hfetch  0x00000002 , 0x00008112 
- 00019507  0x00004ad6 iforce  0x00000013 
- 00019508  0x00004ad7 arg  0x0000044f , 0x00000002 
- 00019509  0x00004ad8 isub  0x00000002 , 0x0000003e 
- 00019510  0x00004ad9 nrtn  0x00000005 
- 00019511  0x00004adb hfetch  0x00000002 , 0x00008058 
- 00019512  0x00004adc iforce  0x00000003 
- 00019513  0x00004add branch  0x00004bc8 
- 00019514  0x00004ae0 hfetcht  0x00000001 , 0x0000810c 
- 00019515  0x00004ae1 isolate1  0x00000006 , 0x00000002 
- 00019516  0x00004ae2 branch  0x00004c3a , 0x00000001 
- 00019517  0x00004ae3 hstore  0x00000001 , 0x00008015 
- 00019518  0x00004ae4 rtn 
- 00019519  0x00004ae7 bpatchx  0x00000002 , 0x00004020 
- 00019520  0x00004ae8 fetch  0x00000001 , 0x000041ce 
- 00019521  0x00004ae9 branch  0x00004c44 , 0x00000034 
- 00019522  0x00004aea enable  0x00000028 
- 00019523  0x00004aeb rtn 
- 00019524  0x00004aed ifetch  0x00000002 , 0x00000003 
- 00019525  0x00004aee iforce  0x00000030 
- 00019526  0x00004aef iforce  0x00000007 
- 00019527  0x00004af0 ifetch  0x00000001 , 0x00000003 
- 00019528  0x00004af1 iforce  0x00000002 
- 00019529  0x00004af2 rshift2  0x00000030 , 0x0000003f 
- 00019530  0x00004af3 rshift8  0x0000003f , 0x0000003f 
- 00019531  0x00004af4 beq  0x0000003f , 0x00004c4d 
- 00019532  0x00004af5 rtn 
- 00019533  0x00004af9 bpatchx  0x00000003 , 0x00004020 
- 00019534  0x00004afa deposit  0x00000007 
- 00019535  0x00004afb beq  0x00000000 , 0x00004cdc 
- 00019536  0x00004afc beq  0x00000001 , 0x00004c66 
- 00019537  0x00004afd beq  0x00000002 , 0x00004c6b 
- 00019538  0x00004afe beq  0x00000003 , 0x00004c7a 
- 00019539  0x00004aff beq  0x00000004 , 0x00004cb3 
- 00019540  0x00004b00 beq  0x00000005 , 0x00004cdc 
- 00019541  0x00004b01 beq  0x00000006 , 0x00004cc6 
- 00019542  0x00004b02 beq  0x00000007 , 0x00004c5c 
- 00019543  0x00004b04 beq  0x00000010 , 0x00004cc9 
- 00019544  0x00004b05 beq  0x00000011 , 0x00004cd1 
- 00019545  0x00004b06 beq  0x00000012 , 0x00004ca5 
- 00019546  0x00004b07 beq  0x00000013 , 0x00004c85 
- 00019547  0x00004b08 branch  0x00004cdc 
- 00019548  0x00004b0b call  0x00004cdc 
- 00019549  0x00004b0c call  0x00007f9e 
- 00019550  0x00004b0d call  0x0000688c 
- 00019551  0x00004b0f call  0x000033d2 
- 00019552  0x00004b10 call  0x000033d9 
- 00019553  0x00004b11 branch  0x0000688f 
- 00019554  0x00004b14 jam  0x00000000 , 0x00004245 
- 00019555  0x00004b15 call  0x000033d0 
- 00019556  0x00004b16 call  0x00004c13 
- 00019557  0x00004b17 branch  0x000033db 
- 00019558  0x00004b1a call  0x00004cf2 
- 00019559  0x00004b1b hfetch  0x00000002 , 0x00008000 
- 00019560  0x00004b1c istore  0x00000002 , 0x0000000a 
- 00019561  0x00004b1d force  0x00000006 , 0x00000039 
- 00019562  0x00004b1e branch  0x00004cdd 
- 00019563  0x00004b21 ifetch  0x00000002 , 0x00000003 
- 00019564  0x00004b22 store  0x00000002 , 0x00004243 
- 00019565  0x00004b23 hstore  0x00000002 , 0x00008052 
- 00019566  0x00004b24 rtn 
- 00019567  0x00004b29 ifetch  0x00000001 , 0x00000003 
- 00019568  0x00004b2a copy  0x0000003f , 0x00000002 
- 00019569  0x00004b2b hstore  0x00000001 , 0x00008024 
- 00019570  0x00004b2c ifetch  0x00000001 , 0x00000003 
- 00019571  0x00004b2d iadd  0x00000002 , 0x00000002 
- 00019572  0x00004b2e set1  0x00000007 , 0x0000003f 
- 00019573  0x00004b2f hstore  0x00000001 , 0x00008023 
- 00019574  0x00004b30 ifetch  0x00000001 , 0x00000003 
- 00019575  0x00004b31 iadd  0x00000002 , 0x00000002 
- 00019576  0x00004b32 copy  0x0000003f , 0x00000039 
- 00019577  0x00004b33 rtn 
- 00019578  0x00004b36 bmark1  0x0000002b , 0x00004cc4 
- 00019579  0x00004b37 call  0x00004c6f 
- 00019580  0x00004b39 ifetch  0x00000001 , 0x00000003 
- 00019581  0x00004b3a hstore  0x00000001 , 0x00008025 
- 00019582  0x00004b3b iadd  0x00000002 , 0x00000002 
- 00019583  0x00004b3c loop  0x00004c7c 
- 00019584  0x00004b3e and  0x00000002 , 0x000000ff , 0x00000002 
- 00019585  0x00004b3f ifetch  0x00000001 , 0x00000003 
- 00019586  0x00004b40 isub  0x00000002 , 0x0000003e 
- 00019587  0x00004b41 nbranch  0x00004cc4 , 0x00000005 
- 00019588  0x00004b42 branch  0x00004cdc 
- 00019589  0x00004b46 bmark0  0x0000002b , 0x00004cc4 
- 00019590  0x00004b47 call  0x00004c6f 
- 00019591  0x00004b48 store  0x00000008 , 0x00000a9a 
- 00019592  0x00004b4a call  0x00007422 
- 00019593  0x00004b4b arg  0x00000010 , 0x00000039 
- 00019594  0x00004b4c arg  0x00000ac2 , 0x00000005 
- 00019595  0x00004b4d call  0x00004ca0 
- 00019596  0x00004b4e storet  0x00000008 , 0x00000aa2 
- 00019597  0x00004b4f arg  0x00000ad2 , 0x00000005 
- 00019598  0x00004b50 call  0x00007497 
- 00019599  0x00004b51 arg  0x00000ad2 , 0x00000011 
- 00019600  0x00004b52 arg  0x00000ac2 , 0x00000012 
- 00019601  0x00004b53 arg  0x00000ae2 , 0x00000005 
- 00019602  0x00004b54 call  0x00007352 
- 00019603  0x00004b55 arg  0x00000010 , 0x00000039 
- 00019604  0x00004b56 arg  0x00000ae2 , 0x00000006 
- 00019605  0x00004b57 call  0x00004c9c 
- 00019606  0x00004b58 fetcht  0x00000008 , 0x00000aa2 
- 00019607  0x00004b59 fetch  0x00000008 , 0x00000a9a 
- 00019608  0x00004b5a increase  0xfffffff0 , 0x0000003f 
- 00019609  0x00004b5b store  0x00000008 , 0x00000a9a 
- 00019610  0x00004b5c nbranch  0x00004c88 , 0x00000034 
- 00019611  0x00004b5d branch  0x00004c80 
- 00019612  0x00004b60 ifetch  0x00000001 , 0x00000006 
- 00019613  0x00004b61 hstore  0x00000001 , 0x00008025 
- 00019614  0x00004b62 loop  0x00004c9c 
- 00019615  0x00004b63 rtn 
- 00019616  0x00004b66 ifetch  0x00000001 , 0x00000003 
- 00019617  0x00004b67 istore  0x00000001 , 0x00000005 
- 00019618  0x00004b68 iadd  0x00000002 , 0x00000002 
- 00019619  0x00004b69 loop  0x00004ca0 
- 00019620  0x00004b6a rtn 
- 00019621  0x00004b6d bmark0  0x0000002b , 0x00004cc4 
- 00019622  0x00004b6e arg  0x00000000 , 0x00000002 
- 00019623  0x00004b6f arg  0x00000010 , 0x00000039 
- 00019624  0x00004b70 arg  0x00000ac2 , 0x00000005 
- 00019625  0x00004b71 call  0x00004ca0 
- 00019626  0x00004b72 hfetch  0x00000001 , 0x00008085 
- 00019627  0x00004b73 and_into  0x000000fd , 0x0000003f 
- 00019628  0x00004b74 hstore  0x00000001 , 0x00008085 
- 00019629  0x00004b75 arg  0x00000ac2 , 0x00000006 
- 00019630  0x00004b76 arg  0x00000010 , 0x00000039 
- 00019631  0x00004b77 call  0x00007478 
- 00019632  0x00004b78 call  0x00007428 
- 00019633  0x00004b79 call  0x00007491 
- 00019634  0x00004b7a branch  0x00004c80 
- 00019635  0x00004b7e arg  0x00000020 , 0x00000039 
- 00019636  0x00004b7f arg  0x00004000 , 0x00000005 
- 00019637  0x00004b80 arg  0x00000000 , 0x00000002 
- 00019638  0x00004b82 ifetch  0x00000001 , 0x00000003 
- 00019639  0x00004b83 istore  0x00000001 , 0x00000005 
- 00019640  0x00004b84 iadd  0x00000002 , 0x00000002 
- 00019641  0x00004b85 loop  0x00004cb6 
- 00019642  0x00004b86 and  0x00000002 , 0x000000ff , 0x00000002 
- 00019643  0x00004b87 ifetch  0x00000001 , 0x00000003 
- 00019644  0x00004b88 isub  0x00000002 , 0x0000003e 
- 00019645  0x00004b89 nbranch  0x00004cc4 , 0x00000005 
- 00019646  0x00004b8a jam  0x00000000 , 0x00008023 
- 00019647  0x00004b8b call  0x00004cdc 
- 00019648  0x00004b8c call  0x00004be6 
- 00019649  0x00004b8d call  0x000064a3 
- 00019650  0x00004b8e call  0x00007f9e 
- 00019651  0x00004b8f branch  0x00002001 
- 00019652  0x00004b92 jam  0x00000000 , 0x00008023 
- 00019653  0x00004b93 branch  0x00002000 
- 00019654  0x00004b96 ifetch  0x00000006 , 0x00000003 
- 00019655  0x00004b97 store  0x00000006 , 0x000040a0 
- 00019656  0x00004b98 branch  0x00004cdc 
- 00019657  0x00004b9c ifetch  0x00000001 , 0x00000003 
- 00019658  0x00004b9d store  0x00000001 , 0x0000025a 
- 00019659  0x00004b9e copy  0x0000003f , 0x00000039 
- 00019660  0x00004b9f ifetch  0x00000002 , 0x00000003 
- 00019661  0x00004ba0 store  0x00000002 , 0x0000025b 
- 00019662  0x00004ba1 copy  0x0000003f , 0x00000005 
- 00019663  0x00004ba2 call  0x000066fd 
- 00019664  0x00004ba3 branch  0x00004cdc 
- 00019665  0x00004ba7 ifetch  0x00000001 , 0x00000003 
- 00019666  0x00004ba8 store  0x00000001 , 0x0000025a 
- 00019667  0x00004ba9 copy  0x0000003f , 0x00000039 
- 00019668  0x00004baa ifetch  0x00000002 , 0x00000003 
- 00019669  0x00004bab store  0x00000002 , 0x0000025b 
- 00019670  0x00004bac arg  0x00001000 , 0x00000005 
- 00019671  0x00004bad call  0x000066fd 
- 00019672  0x00004bae fetcht  0x00000001 , 0x0000025a 
- 00019673  0x00004baf arg  0x00001000 , 0x00000011 
- 00019674  0x00004bb0 fetch  0x00000002 , 0x0000025b 
- 00019675  0x00004bb1 branch  0x00006608 
- 00019676  0x00004bb7 force  0x00000004 , 0x00000039 
- 00019677  0x00004bb9 call  0x00004cf4 
- 00019678  0x00004bba force  0x00000001 , 0x0000003f 
- 00019679  0x00004bbb istore  0x00000001 , 0x0000000a 
- 00019680  0x00004bbc deposit  0x00000030 
- 00019681  0x00004bbd istore  0x00000003 , 0x0000000a 
- 00019682  0x00004bbe force  0x0000000e , 0x00000007 
- 00019683  0x00004bc0 bpatchx  0x00000004 , 0x00004020 
- 00019684  0x00004bc1 call  0x00004cf6 
- 00019685  0x00004bc2 deposit  0x00000007 
- 00019686  0x00004bc3 istore  0x00000001 , 0x0000000a 
- 00019687  0x00004bc4 deposit  0x00000039 
- 00019688  0x00004bc5 istore  0x00000001 , 0x0000000a 
- 00019689  0x00004bc7 force  0x00000005 , 0x00000007 
- 00019690  0x00004bc8 increase  0x00000002 , 0x00000039 
- 00019691  0x00004bca branch  0x00004bf9 
- 00019692  0x00004bcd force  0x000000ff , 0x00000007 
- 00019693  0x00004bce call  0x00004cf4 
- 00019694  0x00004bcf setarg  0x00000001 
- 00019695  0x00004bd0 istore  0x00000001 , 0x0000000a 
- 00019696  0x00004bd1 force  0x00000001 , 0x00000039 
- 00019697  0x00004bd2 branch  0x00004ce3 
- 00019698  0x00004bd5 force  0x0000000c , 0x0000000a 
- 00019699  0x00004bd6 branch  0x00004cf7 
- 00019700  0x00004bd9 force  0x00000008 , 0x0000000a 
- 00019701  0x00004bda branch  0x00004cf7 
- 00019702  0x00004bdd force  0x00000006 , 0x0000000a 
- 00019703  0x00004bdf branch  0x00004bf5 
- 00019704  0x00004be4 pulse  0x0000000f 
- 00019705  0x00004be5 enable  0x00000009 
- 00019706  0x00004be7 ifetch  0x00000001 , 0x0000000a 
- 00019707  0x00004be8 inject  0x00000000 , 0x00000008 
- 00019708  0x00004be9 loop  0x00004cfa 
- 00019709  0x00004bea enable  0x00000008 
- 00019710  0x00004beb inject  0x00000000 , 0x00000010 
- 00019711  0x00004bec disable  0x00000008 
- 00019712  0x00004bed disable  0x00000009 
- 00019713  0x00004bee disable  0x0000000f 
- 00019714  0x00004bef byteswap  0x0000003f , 0x0000003f 
- 00019715  0x00004bf0 rtn 
- 00019716  0x00004bf5 jam  0x00000000 , 0x000041ce 
- 00019717  0x00004bf6 rtn 
- 00019718  0x00004bf8 fetch  0x00000006 , 0x000041d0 
- 00019719  0x00004bf9 fetcht  0x00000006 , 0x00000040 
- 00019720  0x00004bfa isub  0x00000002 , 0x0000003e 
- 00019721  0x00004bfb rtn 
- 00019722  0x00004c01 fetch  0x00000001 , 0x0000004b 
- 00019723  0x00004c02 bbit1  0x00000002 , 0x00004d0f 
- 00019724  0x00004c03 call  0x000062ef 
- 00019725  0x00004c04 jam  0x00000008 , 0x0000007c 
- 00019726  0x00004c05 branch  0x00004d04 
- 00019727  0x00004c07 set0  0x00000002 , 0x0000003f 
- 00019728  0x00004c08 store  0x00000001 , 0x0000004b 
- 00019729  0x00004c09 call  0x00006001 
- 00019730  0x00004c0a setarg  0x00000000 
- 00019731  0x00004c0b setflag  0x00000029 , 0x00000001 , 0x0000003f 
- 00019732  0x00004c0c store  0x00000001 , 0x0000007f 
- 00019733  0x00004c0d branch  0x00004d04 
- 00019734  0x00004c0e rtn 
- 00019735  0x00004c10 jam  0x00000017 , 0x0000007c 
- 00019736  0x00004c11 arg  0x000004d9 , 0x00000005 
- 00019737  0x00004c12 setarg  0x00000000 
- 00019738  0x00004c13 isolate1  0x0000001b , 0x00000028 
- 00019739  0x00004c14 setflag  0x00000001 , 0x00000001 , 0x0000003f 
- 00019740  0x00004c15 istore  0x00000001 , 0x00000005 
- 00019741  0x00004c16 setarg  0x00000000 
- 00019742  0x00004c17 istore  0x00000002 , 0x00000005 
- 00019743  0x00004c18 fetch  0x00000002 , 0x000041e3 
- 00019744  0x00004c19 istore  0x00000002 , 0x00000005 
- 00019745  0x00004c1a fetch  0x00000001 , 0x000041e5 
- 00019746  0x00004c1b istore  0x00000002 , 0x00000005 
- 00019747  0x00004c1c fetch  0x00000001 , 0x000041e7 
- 00019748  0x00004c1d istore  0x00000002 , 0x00000005 
- 00019749  0x00004c1e branch  0x00004d04 
- 00019750  0x00004c21 jam  0x00000018 , 0x0000007c 
- 00019751  0x00004c22 branch  0x00004d04 
- 00019752  0x00004c25 call  0x00006899 
- 00019753  0x00004c26 rtn  0x00000001 
- 00019754  0x00004c27 arg  0x00000007 , 0x00000002 
- 00019755  0x00004c28 call  0x0000681d 
- 00019756  0x00004c29 nbranch  0x00004d2f , 0x00000001 
- 00019757  0x00004c2a jam  0x00000001 , 0x00004245 
- 00019758  0x00004c2b rtn 
- 00019759  0x00004c2d fetch  0x00000001 , 0x00004245 
- 00019760  0x00004c2e rtnne  0x00000001 
- 00019761  0x00004c2f call  0x00004c62 
- 00019762  0x00004c30 branch  0x00004cec 
- 00019763  0x00004c3f bpatchx  0x00000005 , 0x00004020 
- 00019764  0x00004c40 fetch  0x00000002 , 0x00000264 
- 00019765  0x00004c41 copy  0x0000003f , 0x00000006 
- 00019766  0x00004c42 ifetch  0x00000001 , 0x00000006 
- 00019767  0x00004c43 and  0x0000003f , 0x0000000f , 0x00000002 
- 00019768  0x00004c44 rshift4  0x0000003f , 0x0000003f 
- 00019769  0x00004c45 beq  0x00000009 , 0x00004d53 
- 00019770  0x00004c46 beq  0x00000007 , 0x00004d53 
- 00019771  0x00004c47 beq  0x0000000a , 0x00004d5f 
- 00019772  0x00004c48 beq  0x00000005 , 0x00004d4b 
- 00019773  0x00004c49 beq  0x00000001 , 0x00004d3f 
- 00019774  0x00004c4a rtn 
- 00019775  0x00004c4d copy  0x00000002 , 0x0000003f 
- 00019776  0x00004c4e beq  0x00000005 , 0x00004d43 
- 00019777  0x00004c4f beq  0x00000003 , 0x00004d4a 
- 00019778  0x00004c50 rtn 
- 00019779  0x00004c53 jam  0x00000027 , 0x00000a99 
- 00019780  0x00004c54 call  0x00007d86 
- 00019781  0x00004c55 fetch  0x00000001 , 0x00004092 
- 00019782  0x00004c56 rtnbit0  0x00000006 
- 00019783  0x00004c57 copy  0x00000002 , 0x0000003f 
- 00019784  0x00004c58 beq  0x00000005 , 0x0000438e 
- 00019785  0x00004c59 rtn 
- 00019786  0x00004c5b rtn 
- 00019787  0x00004c5e call  0x00004d5f 
- 00019788  0x00004c5f arg  0x00000001 , 0x00000011 
- 00019789  0x00004c60 call  0x00004d63 
- 00019790  0x00004c61 fetch  0x00000002 , 0x0000424c 
- 00019791  0x00004c62 istore  0x00000002 , 0x00000005 
- 00019792  0x00004c63 setarg  0x00000000 
- 00019793  0x00004c64 istore  0x00000001 , 0x00000005 
- 00019794  0x00004c65 rtn 
- 00019795  0x00004c68 arg  0x00000001 , 0x00000011 
- 00019796  0x00004c69 call  0x00004d63 
- 00019797  0x00004c6a fetch  0x00000002 , 0x0000424c 
- 00019798  0x00004c6b istore  0x00000002 , 0x00000005 
- 00019799  0x00004c6c setarg  0x00000000 
- 00019800  0x00004c6d istore  0x00000001 , 0x00000005 
- 00019801  0x00004c6e jam  0x00000001 , 0x00000a8e 
- 00019802  0x00004c6f fetch  0x00000001 , 0x00004252 
- 00019803  0x00004c70 set1  0x00000006 
- 00019804  0x00004c71 store  0x00000001 , 0x00004252 
- 00019805  0x00004c72 jam  0x00000012 , 0x00000a99 
- 00019806  0x00004c73 branch  0x00007d86 
- 00019807  0x00004c76 ifetch  0x00000001 , 0x00000006 
- 00019808  0x00004c77 beq  0x00000001 , 0x00004d62 
- 00019809  0x00004c78 rtn 
- 00019810  0x00004c7b rtn 
- 00019811  0x00004c7f call  0x00005240 
- 00019812  0x00004c80 copy  0x00000011 , 0x00000002 
- 00019813  0x00004c81 storet  0x00000001 , 0x00000a8e 
- 00019814  0x00004c82 copy  0x0000003f , 0x00000005 
- 00019815  0x00004c83 copy  0x00000011 , 0x0000003f 
- 00019816  0x00004c84 istore  0x00000002 , 0x00000005 
- 00019817  0x00004c85 rtn 
- 00019818  0x00004c97 branch  0x00004d6f , 0x0000002b 
- 00019819  0x00004c99 setarg  0x00004365 
- 00019820  0x00004c9a arg  0x00004246 , 0x00000005 
- 00019821  0x00004c9b isub  0x00000005 , 0x00000039 
- 00019822  0x00004c9c call  0x00007ed4 
- 00019823  0x00004c9e bpatchx  0x00000006 , 0x00004020 
- 00019824  0x00004c9f setarg  0x00000551 
- 00019825  0x00004ca0 arg  0x00000511 , 0x00000005 
- 00019826  0x00004ca1 isub  0x00000005 , 0x00000039 
- 00019827  0x00004ca2 call  0x00007ed4 
- 00019828  0x00004ca3 setarg  0x000002c9 
- 00019829  0x00004ca4 arg  0x0000025d , 0x00000005 
- 00019830  0x00004ca5 isub  0x00000005 , 0x00000039 
- 00019831  0x00004ca6 call  0x00007ed4 
- 00019832  0x00004ca7 branch  0x00005318 
- 00019833  0x00004caa bpatchx  0x00000007 , 0x00004020 
- 00019834  0x00004cab copy  0x00000006 , 0x00000002 
- 00019835  0x00004cae copy  0x00000002 , 0x00000006 
- 00019836  0x00004caf ifetch  0x00000002 , 0x00000006 
- 00019837  0x00004cb0 store  0x00000002 , 0x00000266 
- 00019838  0x00004cb1 ifetch  0x00000002 , 0x00000006 
- 00019839  0x00004cb2 store  0x00000002 , 0x00000268 
- 00019840  0x00004cb3 deposit  0x00000006 
- 00019841  0x00004cb4 store  0x00000002 , 0x00000264 
- 00019842  0x00004cb5 fetch  0x00000001 , 0x00004681 
- 00019843  0x00004cb6 beq  0x00000000 , 0x00004d85 
- 00019844  0x00004cb7 branch  0x000050ef 
- 00019845  0x00004cba fetch  0x00000002 , 0x00000266 
- 00019846  0x00004cbb branch  0x00004dfc , 0x00000034 
- 00019847  0x00004cbc bpatchx  0x00000008 , 0x00004021 
- 00019848  0x00004cbd fetch  0x00000001 , 0x00000268 
- 00019849  0x00004cbe beq  0x00000001 , 0x00004d9d 
- 00019850  0x00004cc0 beq  0x00000050 , 0x00004de0 
- 00019851  0x00004cc1 beq  0x00000051 , 0x00004df5 
- 00019852  0x00004cc2 beq  0x00000052 , 0x00004df3 
- 00019853  0x00004cc3 beq  0x00000053 , 0x00004df3 
- 00019854  0x00004cc4 branch  0x00004dfc 
- 00019855  0x00004cc9 bpatchx  0x00000009 , 0x00004021 
- 00019856  0x00004cca call  0x0000527e 
- 00019857  0x00004ccb fetch  0x00000001 , 0x00004256 
- 00019858  0x00004ccc beq  0x00000000 , 0x00004d9b 
- 00019859  0x00004ccd beq  0x00000001 , 0x00004d9b 
- 00019860  0x00004cce beq  0x00000002 , 0x00004d9b 
- 00019861  0x00004ccf beq  0x00000003 , 0x00004d9b 
- 00019862  0x00004cd0 beq  0x00000081 , 0x00004d9b 
- 00019863  0x00004cd1 beq  0x000000c0 , 0x00004d9b 
- 00019864  0x00004cd2 beq  0x00000080 , 0x00004d9b 
- 00019865  0x00004cd3 beq  0x00000040 , 0x00004d9b 
- 00019866  0x00004cd4 rtn 
- 00019867  0x00004cd7 setarg  0x00000000 
- 00019868  0x00004cd8 rtn 
- 00019869  0x00004cdc call  0x00004d8f 
- 00019870  0x00004cdd nrtn  0x00000034 
- 00019871  0x00004cdf call  0x000052b8 
- 00019872  0x00004ce0 call  0x00004e01 
- 00019873  0x00004ce1 fetcht  0x00000002 , 0x0000026f 
- 00019874  0x00004ce2 branch  0x00004dfb , 0x00000034 
- 00019875  0x00004ce3 call  0x000052c1 
- 00019876  0x00004ce4 fetch  0x00000002 , 0x0000026f 
- 00019877  0x00004ce5 istore  0x00000002 , 0x00000005 
- 00019878  0x00004ce6 force  0x00000001 , 0x0000003f 
- 00019879  0x00004ce7 istore  0x00000002 , 0x00000005 
- 00019880  0x00004ce8 branch  0x00004dfc 
- 00019881  0x00004ceb fetch  0x00000001 , 0x00004364 
- 00019882  0x00004cec rtn  0x00000034 
- 00019883  0x00004ced copy  0x0000003f , 0x00000011 
- 00019884  0x00004cee bpatchx  0x0000000a , 0x00004021 
- 00019885  0x00004cef fetch  0x00000004 , 0x000002d5 
- 00019886  0x00004cf0 arg  0x00000100 , 0x00000002 
- 00019887  0x00004cf1 iadd  0x00000002 , 0x00000002 
- 00019888  0x00004cf2 copy  0x00000022 , 0x0000003f 
- 00019889  0x00004cf3 isub  0x00000002 , 0x0000003e 
- 00019890  0x00004cf4 nrtn  0x00000002 
- 00019891  0x00004cf5 jam  0x00000000 , 0x00004364 
- 00019892  0x00004cf6 copy  0x00000011 , 0x0000003f 
- 00019893  0x00004cf7 beq  0x00000050 , 0x00004db7 
- 00019894  0x00004cf8 branch  0x00002a8c 
- 00019895  0x00004cfa arg  0x00000000 , 0x00000008 
- 00019896  0x00004cfb call  0x000052b8 
- 00019897  0x00004cfc call  0x00004e7a 
- 00019898  0x00004cfd call  0x000052c3 
- 00019899  0x00004cfe call  0x00007ea8 
- 00019900  0x00004cff call  0x00004ead 
- 00019901  0x00004d00 call  0x000052c1 
- 00019902  0x00004d02 setarg  0x0000000c 
- 00019903  0x00004d03 istore  0x00000002 , 0x00000005 
- 00019904  0x00004d04 force  0x00000001 , 0x0000003f 
- 00019905  0x00004d05 istore  0x00000002 , 0x00000005 
- 00019906  0x00004d06 branch  0x00004dfc 
- 00019907  0x00004d0b bpatchx  0x0000000b , 0x00004021 
- 00019908  0x00004d0c fetch  0x00000002 , 0x00000275 
- 00019909  0x00004d0d increase  0x00000004 , 0x0000003f 
- 00019910  0x00004d0e rshift4  0x0000003f , 0x0000003f 
- 00019911  0x00004d0f rshift3  0x0000003f , 0x0000003f 
- 00019912  0x00004d10 add  0x0000003f , 0x00000001 , 0x00000002 
- 00019913  0x00004d11 arg  0x00004260 , 0x00000006 
- 00019914  0x00004d12 ifetch  0x00000003 , 0x00000006 
- 00019915  0x00004d13 rtn  0x00000034 
- 00019916  0x00004d14 store  0x00000003 , 0x00000ac2 
- 00019917  0x00004d15 fetch  0x00000001 , 0x00000ac2 
- 00019918  0x00004d16 copy  0x0000003f , 0x00000011 
- 00019919  0x00004d17 call  0x00004dd3 
- 00019920  0x00004d18 copy  0x00000012 , 0x0000003f 
- 00019921  0x00004d19 store  0x00000001 , 0x00004260 
- 00019922  0x00004d1a rtn 
- 00019923  0x00004d1d arg  0x00000000 , 0x00000007 
- 00019924  0x00004d1e arg  0x00000000 , 0x00000012 
- 00019925  0x00004d21 sub  0x00000007 , 0x00000007 , 0x0000003e 
- 00019926  0x00004d22 nrtn  0x00000002 
- 00019927  0x00004d23 qisolate1  0x00000011 
- 00019928  0x00004d24 branch  0x00004dda , 0x00000001 
- 00019929  0x00004d25 branch  0x00004dde 
- 00019930  0x00004d28 copy  0x00000002 , 0x0000003f 
- 00019931  0x00004d29 branch  0x00004dde , 0x00000034 
- 00019932  0x00004d2a qset1  0x00000012 
- 00019933  0x00004d2b increase  0xffffffff , 0x00000002 
- 00019934  0x00004d2e increase  0x00000001 , 0x00000007 
- 00019935  0x00004d2f branch  0x00004dd5 
- 00019936  0x00004d32 call  0x00005274 
- 00019937  0x00004d33 nrtn  0x00000034 
- 00019938  0x00004d34 call  0x00004d8f 
- 00019939  0x00004d35 nrtn  0x00000034 
- 00019940  0x00004d36 call  0x000052c5 
- 00019941  0x00004d37 call  0x00006e11 
- 00019942  0x00004d38 call  0x00004dc3 
- 00019943  0x00004d39 branch  0x00004dec 
- 00019944  0x00004d3d call  0x00005274 
- 00019945  0x00004d3e nrtn  0x00000034 
- 00019946  0x00004d3f call  0x000052c5 
- 00019947  0x00004d40 call  0x00006e11 
- 00019948  0x00004d42 call  0x000052ce 
- 00019949  0x00004d43 fetch  0x00000002 , 0x00000275 
- 00019950  0x00004d44 branch  0x00004dfb , 0x00000034 
- 00019951  0x00004d45 istore  0x00000002 , 0x00000005 
- 00019952  0x00004d46 fetch  0x00000002 , 0x00004248 
- 00019953  0x00004d47 istore  0x00000002 , 0x00000005 
- 00019954  0x00004d48 branch  0x00004dfc 
- 00019955  0x00004d4b call  0x00004d33 
- 00019956  0x00004d4c branch  0x00004dfc 
- 00019957  0x00004d4f bpatchx  0x0000000c , 0x00004021 
- 00019958  0x00004d50 jam  0x00000000 , 0x00000284 
- 00019959  0x00004d51 call  0x00006a8a 
- 00019960  0x00004d52 fetch  0x00000001 , 0x00000284 
- 00019961  0x00004d53 rtneq  0x00000001 
- 00019962  0x00004d54 branch  0x00004dfc 
- 00019963  0x00004d56 call  0x00005264 
- 00019964  0x00004d59 setarg  0x00000000 
- 00019965  0x00004d5a store  0x00000002 , 0x00000266 
- 00019966  0x00004d5b store  0x00000002 , 0x00000268 
- 00019967  0x00004d5c jam  0x00000001 , 0x0000026a 
- 00019968  0x00004d5d rtn 
- 00019969  0x00004d60 bpatchx  0x0000000d , 0x00004021 
- 00019970  0x00004d61 call  0x000052c3 
- 00019971  0x00004d62 force  0x00000000 , 0x00000012 
- 00019972  0x00004d63 fetch  0x00000002 , 0x00000266 
- 00019973  0x00004d64 copy  0x0000003f , 0x00000013 
- 00019974  0x00004d65 fetch  0x00000002 , 0x00000264 
- 00019975  0x00004d66 iforce  0x00000006 
- 00019976  0x00004d68 call  0x00004e10 
- 00019977  0x00004d69 deposit  0x00000013 
- 00019978  0x00004d6a increase  0xfffffffc , 0x00000013 
- 00019979  0x00004d6b increase  0xfffffffc , 0x0000003f 
- 00019980  0x00004d6c nbranch  0x00004e08 , 0x00000034 
- 00019981  0x00004d6d copy  0x00000012 , 0x0000003f 
- 00019982  0x00004d6e store  0x00000002 , 0x0000026f 
- 00019983  0x00004d6f rtn 
- 00019984  0x00004d72 bpatchx  0x0000000e , 0x00004021 
- 00019985  0x00004d73 ifetch  0x00000001 , 0x00000006 
- 00019986  0x00004d74 beq  0x00000001 , 0x00004e49 
- 00019987  0x00004d75 beq  0x00000002 , 0x00004e51 
- 00019988  0x00004d76 beq  0x00000003 , 0x00004ed5 
- 00019989  0x00004d77 beq  0x00000004 , 0x00004f05 
- 00019990  0x00004d78 beq  0x00000005 , 0x00004fa2 
- 00019991  0x00004d79 beq  0x00000006 , 0x00004fcb 
- 00019992  0x00004d7a beq  0x00000007 , 0x0000501b 
- 00019993  0x00004d7b beq  0x00000008 , 0x00005050 
- 00019994  0x00004d7c beq  0x00000009 , 0x00005060 
- 00019995  0x00004d7d beq  0x0000000a , 0x00004e1f 
- 00019996  0x00004d7e beq  0x0000000b , 0x00005061 
- 00019997  0x00004d7f call  0x00005062 
- 00019998  0x00004d81 rtn 
- 00019999  0x00004d84 ifetch  0x00000001 , 0x00000006 
- 00020000  0x00004d85 copy  0x0000003f , 0x00000007 
- 00020001  0x00004d86 ifetch  0x00000002 , 0x00000006 
- 00020002  0x00004d87 copy  0x0000003f , 0x00000011 
- 00020003  0x00004d88 copy  0x00000013 , 0x0000003f 
- 00020004  0x00004d89 isub  0x00000011 , 0x00000013 
- 00020005  0x00004d8a setarg  0x0000000b 
- 00020006  0x00004d8b istore  0x00000001 , 0x00000005 
- 00020007  0x00004d8c copy  0x00000007 , 0x0000003f 
- 00020008  0x00004d8d istore  0x00000001 , 0x00000005 
- 00020009  0x00004d8e ifetch  0x00000002 , 0x00000006 
- 00020010  0x00004d90 beq  0x00000002 , 0x00004e2d 
- 00020011  0x00004d91 beq  0x00000003 , 0x00004e33 
- 00020012  0x00004d92 rtn 
- 00020013  0x00004d94 setarg  0x00020008 
- 00020014  0x00004d95 istore  0x00000006 , 0x00000005 
- 00020015  0x00004d96 setarg  0x00000280 
- 00020016  0x00004d97 istore  0x00000004 , 0x00000005 
- 00020017  0x00004d98 force  0x0000000c , 0x0000003f 
- 00020018  0x00004d99 branch  0x00004e38 
- 00020019  0x00004d9b setarg  0x0003000c 
- 00020020  0x00004d9c istore  0x00000006 , 0x00000005 
- 00020021  0x00004d9d setarg  0x00000006 
- 00020022  0x00004d9e istore  0x00000008 , 0x00000005 
- 00020023  0x00004d9f force  0x00000010 , 0x0000003f 
- 00020024  0x00004da1 iadd  0x00000012 , 0x00000012 
- 00020025  0x00004da2 branch  0x00004e1e 
- 00020026  0x00004da5 ifetch  0x00000001 , 0x00000006 
- 00020027  0x00004da6 copy  0x0000003f , 0x00000007 
- 00020028  0x00004da7 ifetch  0x00000002 , 0x00000006 
- 00020029  0x00004da8 copy  0x0000003f , 0x00000011 
- 00020030  0x00004da9 ifetch  0x00000002 , 0x00000006 
- 00020031  0x00004daa store  0x00000002 , 0x00000aa2 
- 00020032  0x00004dab copy  0x00000013 , 0x0000003f 
- 00020033  0x00004dac isub  0x00000011 , 0x00000013 
- 00020034  0x00004dad call  0x000052c3 
- 00020035  0x00004dae setarg  0x0000000b 
- 00020036  0x00004daf istore  0x00000001 , 0x00000005 
- 00020037  0x00004db0 copy  0x00000007 , 0x0000003f 
- 00020038  0x00004db1 istore  0x00000001 , 0x00000005 
- 00020039  0x00004db2 fetch  0x00000002 , 0x00000aa2 
- 00020040  0x00004db3 branch  0x00004e2a 
- 00020041  0x00004db8 ifetch  0x00000001 , 0x00000006 
- 00020042  0x00004db9 copy  0x0000003f , 0x00000007 
- 00020043  0x00004dba ifetch  0x00000002 , 0x00000006 
- 00020044  0x00004dbb copy  0x0000003f , 0x00000011 
- 00020045  0x00004dbc iadd  0x00000006 , 0x00000006 
- 00020046  0x00004dbd copy  0x00000013 , 0x0000003f 
- 00020047  0x00004dbe isub  0x00000011 , 0x00000013 
- 00020048  0x00004dc0 branch  0x00004e1e 
- 00020049  0x00004dc3 call  0x00007ea8 
- 00020050  0x00004dc6 call  0x00007ead 
- 00020051  0x00004dc7 arg  0x00000000 , 0x00000008 
- 00020052  0x00004dc8 ifetch  0x00000001 , 0x00000006 
- 00020053  0x00004dc9 copy  0x0000003f , 0x00000007 
- 00020054  0x00004dca ifetch  0x00000002 , 0x00000006 
- 00020055  0x00004dcb copy  0x0000003f , 0x00000011 
- 00020056  0x00004dcc ifetch  0x00000002 , 0x00000006 
- 00020057  0x00004dcd copy  0x0000003f , 0x00000002 
- 00020058  0x00004dce ifetch  0x00000002 , 0x00000006 
- 00020059  0x00004dcf copy  0x0000003f , 0x0000000b 
- 00020060  0x00004dd0 bpatchx  0x0000000f , 0x00004021 
- 00020061  0x00004dd1 copy  0x00000002 , 0x0000003f 
- 00020062  0x00004dd2 beq  0x00000001 , 0x00004e64 
- 00020063  0x00004dd3 beq  0x00000003 , 0x00004e86 
- 00020064  0x00004dd4 beq  0x00000011 , 0x00004e92 
- 00020065  0x00004dd5 beq  0x00000013 , 0x00004e9d 
- 00020066  0x00004dd6 call  0x00005062 
- 00020067  0x00004dd7 branch  0x00004ed4 
- 00020068  0x00004dda call  0x00007ea8 
- 00020069  0x00004ddb arg  0x00000050 , 0x00000002 
- 00020070  0x00004ddc fetch  0x00000002 , 0x00004248 
- 00020071  0x00004ddd nbranch  0x00004ece , 0x00000034 
- 00020072  0x00004dde copy  0x0000000b , 0x0000003f 
- 00020073  0x00004ddf store  0x00000002 , 0x00004248 
- 00020074  0x00004de0 copy  0x00000022 , 0x0000003f 
- 00020075  0x00004de1 store  0x00000004 , 0x000002d5 
- 00020076  0x00004de2 call  0x00004e6e 
- 00020077  0x00004de3 branch  0x00004ea9 
- 00020078  0x00004de6 storet  0x00000002 , 0x000002d3 
- 00020079  0x00004de7 deposit  0x0000000b 
- 00020080  0x00004de8 store  0x00000002 , 0x000002c9 
- 00020081  0x00004de9 deposit  0x00000011 
- 00020082  0x00004dea store  0x00000002 , 0x000002cb 
- 00020083  0x00004deb deposit  0x00000012 
- 00020084  0x00004dec store  0x00000002 , 0x000002cd 
- 00020085  0x00004ded deposit  0x00000013 
- 00020086  0x00004dee store  0x00000002 , 0x000002cf 
- 00020087  0x00004def deposit  0x00000007 
- 00020088  0x00004df0 store  0x00000002 , 0x000002d1 
- 00020089  0x00004df1 rtn 
- 00020090  0x00004df4 fetcht  0x00000002 , 0x000002d3 
- 00020091  0x00004df5 fetch  0x00000002 , 0x000002c9 
- 00020092  0x00004df6 copy  0x0000003f , 0x0000000b 
- 00020093  0x00004df7 fetch  0x00000002 , 0x000002cb 
- 00020094  0x00004df8 copy  0x0000003f , 0x00000011 
- 00020095  0x00004df9 fetch  0x00000002 , 0x000002cd 
- 00020096  0x00004dfa copy  0x0000003f , 0x00000012 
- 00020097  0x00004dfb fetch  0x00000002 , 0x000002cf 
- 00020098  0x00004dfc copy  0x0000003f , 0x00000013 
- 00020099  0x00004dfd fetch  0x00000002 , 0x000002d1 
- 00020100  0x00004dfe copy  0x0000003f , 0x00000007 
- 00020101  0x00004dff rtn 
- 00020102  0x00004e02 call  0x00007ea8 
- 00020103  0x00004e03 setarg  0x00000051 
- 00020104  0x00004e04 arg  0x00000051 , 0x00000002 
- 00020105  0x00004e05 fetch  0x00000002 , 0x0000424a 
- 00020106  0x00004e06 nbranch  0x00004ece , 0x00000034 
- 00020107  0x00004e07 copy  0x0000000b , 0x0000003f 
- 00020108  0x00004e08 store  0x00000002 , 0x0000424a 
- 00020109  0x00004e09 fetch  0x00000001 , 0x00004251 
- 00020110  0x00004e0a set1  0x00000000 , 0x0000003f 
- 00020111  0x00004e0b set1  0x00000001 , 0x0000003f 
- 00020112  0x00004e0c store  0x00000001 , 0x00004251 
- 00020113  0x00004e0d branch  0x00004eb1 
- 00020114  0x00004e0f call  0x00007ea8 
- 00020115  0x00004e10 arg  0x00000052 , 0x00000002 
- 00020116  0x00004e11 fetch  0x00000002 , 0x0000424c 
- 00020117  0x00004e12 nbranch  0x00004ece , 0x00000034 
- 00020118  0x00004e13 copy  0x0000000b , 0x0000003f 
- 00020119  0x00004e14 store  0x00000002 , 0x0000424c 
- 00020120  0x00004e15 fetch  0x00000001 , 0x00004252 
- 00020121  0x00004e16 set1  0x00000000 , 0x0000003f 
- 00020122  0x00004e17 set1  0x00000001 , 0x0000003f 
- 00020123  0x00004e18 store  0x00000001 , 0x00004252 
- 00020124  0x00004e19 branch  0x00004eb1 
- 00020125  0x00004e1b call  0x00007ea8 
- 00020126  0x00004e1c deposit  0x0000001a 
- 00020127  0x00004e1d arg  0x00000053 , 0x00000002 
- 00020128  0x00004e1e fetch  0x00000002 , 0x0000424e 
- 00020129  0x00004e1f nbranch  0x00004ece , 0x00000034 
- 00020130  0x00004e20 copy  0x0000000b , 0x0000003f 
- 00020131  0x00004e21 store  0x00000002 , 0x0000424e 
- 00020132  0x00004e22 fetch  0x00000001 , 0x00004253 
- 00020133  0x00004e23 set1  0x00000000 , 0x0000003f 
- 00020134  0x00004e24 set1  0x00000001 , 0x0000003f 
- 00020135  0x00004e25 store  0x00000001 , 0x00004253 
- 00020136  0x00004e26 branch  0x00004eb1 
- 00020137  0x00004e29 setarg  0x00000001 
- 00020138  0x00004e2a store  0x00000002 , 0x0000027d 
- 00020139  0x00004e2b jam  0x00000050 , 0x00004364 
- 00020140  0x00004e2c branch  0x00004eb3 
- 00020141  0x00004e2e fetch  0x00000001 , 0x00004250 
- 00020142  0x00004e2f set1  0x00000000 , 0x0000003f 
- 00020143  0x00004e30 set1  0x00000001 , 0x0000003f 
- 00020144  0x00004e31 store  0x00000001 , 0x00004250 
- 00020145  0x00004e33 setarg  0x00000000 
- 00020146  0x00004e34 store  0x00000002 , 0x0000027d 
- 00020147  0x00004e36 bpatchx  0x00000010 , 0x00004022 
- 00020148  0x00004e37 call  0x00007ead 
- 00020149  0x00004e38 setarg  0x00000003 
- 00020150  0x00004e39 istore  0x00000001 , 0x00000005 
- 00020151  0x00004e3a copy  0x00000007 , 0x0000003f 
- 00020152  0x00004e3b istore  0x00000001 , 0x00000005 
- 00020153  0x00004e3c setarg  0x00000008 
- 00020154  0x00004e3d istore  0x00000002 , 0x00000005 
- 00020155  0x00004e3e copy  0x00000002 , 0x0000003f 
- 00020156  0x00004e3f istore  0x00000002 , 0x00000005 
- 00020157  0x00004e40 copy  0x0000000b , 0x0000003f 
- 00020158  0x00004e41 istore  0x00000002 , 0x00000005 
- 00020159  0x00004e42 fetch  0x00000002 , 0x0000027d 
- 00020160  0x00004e43 beq  0x00000001 , 0x00004ec9 
- 00020161  0x00004e44 isolate0  0x00000000 , 0x00000008 
- 00020162  0x00004e45 branch  0x00004ec4 , 0x00000001 
- 00020163  0x00004e46 setarg  0x00000004 
- 00020164  0x00004e48 istore  0x00000002 , 0x00000005 
- 00020165  0x00004e49 force  0x00000000 , 0x0000003f 
- 00020166  0x00004e4a istore  0x00000002 , 0x00000005 
- 00020167  0x00004e4b setarg  0x0000000c 
- 00020168  0x00004e4c branch  0x00004ed0 
- 00020169  0x00004e4e istore  0x00000002 , 0x00000005 
- 00020170  0x00004e4f force  0x00000002 , 0x0000003f 
- 00020171  0x00004e50 istore  0x00000002 , 0x00000005 
- 00020172  0x00004e51 setarg  0x0000000c 
- 00020173  0x00004e52 branch  0x00004ed0 
- 00020174  0x00004e55 set1  0x00000000 , 0x00000008 
- 00020175  0x00004e56 branch  0x00004eb1 
- 00020176  0x00004e58 iadd  0x00000012 , 0x00000012 
- 00020177  0x00004e59 copy  0x00000013 , 0x0000003f 
- 00020178  0x00004e5a isub  0x00000011 , 0x00000013 
- 00020179  0x00004e5b branch  0x00004ed4 
- 00020180  0x00004e5d branch  0x00004e1e 
- 00020181  0x00004e60 ifetch  0x00000001 , 0x00000006 
- 00020182  0x00004e61 copy  0x0000003f , 0x00000007 
- 00020183  0x00004e62 ifetch  0x00000002 , 0x00000006 
- 00020184  0x00004e63 copy  0x0000003f , 0x00000011 
- 00020185  0x00004e64 copy  0x00000013 , 0x0000003f 
- 00020186  0x00004e65 isub  0x00000011 , 0x00000013 
- 00020187  0x00004e66 ifetch  0x00000002 , 0x00000006 
- 00020188  0x00004e67 copy  0x0000003f , 0x0000000b 
- 00020189  0x00004e68 ifetch  0x00000002 , 0x00000006 
- 00020190  0x00004e69 copy  0x0000003f , 0x00000002 
- 00020191  0x00004e6a bpatchx  0x00000011 , 0x00004022 
- 00020192  0x00004e6b setarg  0x00000050 
- 00020193  0x00004e6c isub  0x00000002 , 0x0000003e 
- 00020194  0x00004e6d branch  0x00004eed , 0x00000005 
- 00020195  0x00004e6e setarg  0x00000051 
- 00020196  0x00004e6f isub  0x00000002 , 0x0000003e 
- 00020197  0x00004e70 branch  0x00004ef3 , 0x00000005 
- 00020198  0x00004e71 setarg  0x00000052 
- 00020199  0x00004e72 isub  0x00000002 , 0x0000003e 
- 00020200  0x00004e73 branch  0x00004eff , 0x00000005 
- 00020201  0x00004e74 setarg  0x00000053 
- 00020202  0x00004e75 isub  0x00000002 , 0x0000003e 
- 00020203  0x00004e76 branch  0x00004ef9 , 0x00000005 
- 00020204  0x00004e77 rtn 
- 00020205  0x00004e7a copy  0x0000000b , 0x0000003f 
- 00020206  0x00004e7b store  0x00000002 , 0x00004248 
- 00020207  0x00004e7c fetch  0x00000001 , 0x00004250 
- 00020208  0x00004e7d set1  0x00000001 , 0x0000003f 
- 00020209  0x00004e7e store  0x00000001 , 0x00004250 
- 00020210  0x00004e7f branch  0x00004e1e 
- 00020211  0x00004e81 copy  0x0000000b , 0x0000003f 
- 00020212  0x00004e82 store  0x00000002 , 0x0000424a 
- 00020213  0x00004e83 fetch  0x00000001 , 0x00004251 
- 00020214  0x00004e84 set1  0x00000001 , 0x0000003f 
- 00020215  0x00004e85 store  0x00000001 , 0x00004251 
- 00020216  0x00004e86 rtn 
- 00020217  0x00004e88 copy  0x0000000b , 0x0000003f 
- 00020218  0x00004e89 store  0x00000002 , 0x0000424c 
- 00020219  0x00004e8a fetch  0x00000001 , 0x00004253 
- 00020220  0x00004e8b set1  0x00000001 , 0x0000003f 
- 00020221  0x00004e8c store  0x00000001 , 0x00004253 
- 00020222  0x00004e8d rtn 
- 00020223  0x00004e8f copy  0x0000000b , 0x0000003f 
- 00020224  0x00004e90 store  0x00000002 , 0x0000424e 
- 00020225  0x00004e91 fetch  0x00000001 , 0x00004252 
- 00020226  0x00004e92 set1  0x00000001 , 0x0000003f 
- 00020227  0x00004e93 store  0x00000001 , 0x00004252 
- 00020228  0x00004e94 rtn 
- 00020229  0x00004e97 ifetch  0x00000001 , 0x00000006 
- 00020230  0x00004e98 copy  0x0000003f , 0x00000007 
- 00020231  0x00004e99 ifetch  0x00000002 , 0x00000006 
- 00020232  0x00004e9a copy  0x0000003f , 0x00000011 
- 00020233  0x00004e9b copy  0x00000013 , 0x0000003f 
- 00020234  0x00004e9c isub  0x00000011 , 0x00000013 
- 00020235  0x00004e9d ifetch  0x00000002 , 0x00000006 
- 00020236  0x00004e9e copy  0x0000003f , 0x00000002 
- 00020237  0x00004e9f copy  0x00000002 , 0x00000011 
- 00020238  0x00004ea0 bpatchx  0x00000012 , 0x00004022 
- 00020239  0x00004ea1 setarg  0x00000050 
- 00020240  0x00004ea2 isub  0x00000002 , 0x0000003e 
- 00020241  0x00004ea3 branch  0x00004f1c , 0x00000005 
- 00020242  0x00004ea4 setarg  0x00000051 
- 00020243  0x00004ea5 isub  0x00000002 , 0x0000003e 
- 00020244  0x00004ea6 branch  0x00004f3a , 0x00000005 
- 00020245  0x00004ea7 setarg  0x00000052 
- 00020246  0x00004ea8 isub  0x00000002 , 0x0000003e 
- 00020247  0x00004ea9 branch  0x00004f26 , 0x00000005 
- 00020248  0x00004eaa setarg  0x00000053 
- 00020249  0x00004eab isub  0x00000002 , 0x0000003e 
- 00020250  0x00004eac branch  0x00004f30 , 0x00000005 
- 00020251  0x00004ead branch  0x00005062 
- 00020252  0x00004eb0 copy  0x00000005 , 0x0000000b 
- 00020253  0x00004eb1 fetch  0x00000001 , 0x00004250 
- 00020254  0x00004eb2 set1  0x00000004 , 0x0000003f 
- 00020255  0x00004eb3 set1  0x00000003 , 0x0000003f 
- 00020256  0x00004eb5 store  0x00000001 , 0x00004250 
- 00020257  0x00004eb6 copy  0x0000000b , 0x00000005 
- 00020258  0x00004eb7 arg  0x00000050 , 0x0000000b 
- 00020259  0x00004eb8 fetch  0x00000002 , 0x00004248 
- 00020260  0x00004eb9 copy  0x0000003f , 0x00000002 
- 00020261  0x00004eba branch  0x00004f43 
- 00020262  0x00004ebc copy  0x00000005 , 0x0000000b 
- 00020263  0x00004ebd fetch  0x00000001 , 0x00004252 
- 00020264  0x00004ebe set1  0x00000004 , 0x0000003f 
- 00020265  0x00004ebf set1  0x00000003 , 0x0000003f 
- 00020266  0x00004ec1 store  0x00000001 , 0x00004252 
- 00020267  0x00004ec2 copy  0x0000000b , 0x00000005 
- 00020268  0x00004ec3 arg  0x00000052 , 0x0000000b 
- 00020269  0x00004ec4 fetch  0x00000002 , 0x0000424c 
- 00020270  0x00004ec5 copy  0x0000003f , 0x00000002 
- 00020271  0x00004ec6 branch  0x00004f43 
- 00020272  0x00004ec8 copy  0x00000005 , 0x0000000b 
- 00020273  0x00004ec9 fetch  0x00000001 , 0x00004253 
- 00020274  0x00004eca set1  0x00000004 , 0x0000003f 
- 00020275  0x00004ecb set1  0x00000003 , 0x0000003f 
- 00020276  0x00004ecd store  0x00000001 , 0x00004253 
- 00020277  0x00004ece copy  0x0000000b , 0x00000005 
- 00020278  0x00004ecf arg  0x00000053 , 0x0000000b 
- 00020279  0x00004ed0 fetch  0x00000002 , 0x0000424e 
- 00020280  0x00004ed1 copy  0x0000003f , 0x00000002 
- 00020281  0x00004ed2 branch  0x00004f43 
- 00020282  0x00004ed4 copy  0x00000005 , 0x0000000b 
- 00020283  0x00004ed5 fetch  0x00000001 , 0x00004251 
- 00020284  0x00004ed6 set1  0x00000004 , 0x0000003f 
- 00020285  0x00004ed7 set1  0x00000003 , 0x0000003f 
- 00020286  0x00004ed9 store  0x00000001 , 0x00004251 
- 00020287  0x00004edb copy  0x0000000b , 0x00000005 
- 00020288  0x00004edc arg  0x00000051 , 0x0000000b 
- 00020289  0x00004edd fetch  0x00000002 , 0x0000424a 
- 00020290  0x00004ede copy  0x0000003f , 0x00000002 
- 00020291  0x00004ee0 bpatchx  0x00000013 , 0x00004022 
- 00020292  0x00004ee1 setarg  0x00000005 
- 00020293  0x00004ee2 istore  0x00000001 , 0x00000005 
- 00020294  0x00004ee3 copy  0x00000007 , 0x0000003f 
- 00020295  0x00004ee4 istore  0x00000001 , 0x00000005 
- 00020296  0x00004ee5 setarg  0x00000006 
- 00020297  0x00004ee6 istore  0x00000002 , 0x00000005 
- 00020298  0x00004ee7 copy  0x00000002 , 0x0000003f 
- 00020299  0x00004ee8 istore  0x00000002 , 0x00000005 
- 00020300  0x00004ee9 force  0x00000000 , 0x0000003f 
- 00020301  0x00004eea istore  0x00000002 , 0x00000005 
- 00020302  0x00004eeb force  0x00000000 , 0x0000003f 
- 00020303  0x00004eec istore  0x00000002 , 0x00000005 
- 00020304  0x00004eed force  0x0000000a , 0x0000003f 
- 00020305  0x00004eee iadd  0x00000012 , 0x00000012 
- 00020306  0x00004ef0 storet  0x00000002 , 0x00000282 
- 00020307  0x00004ef1 copy  0x00000007 , 0x0000003f 
- 00020308  0x00004ef2 store  0x00000001 , 0x00000281 
- 00020309  0x00004ef3 force  0x00000050 , 0x0000003f 
- 00020310  0x00004ef4 icompare  0x000000ff , 0x0000000b 
- 00020311  0x00004ef5 branch  0x00004f59 , 0x00000001 
- 00020312  0x00004ef6 increase  0x00000001 , 0x0000003f 
- 00020313  0x00004ef9 rtn 
- 00020314  0x00004efb disable  0x00000028 
- 00020315  0x00004efc rtnbit1  0x00000002 , 0x0000003f 
- 00020316  0x00004efd rtnbit0  0x00000000 , 0x0000003f 
- 00020317  0x00004efe rtnbit0  0x00000001 , 0x0000003f 
- 00020318  0x00004eff set1  0x00000002 , 0x0000003f 
- 00020319  0x00004f00 copy  0x00000006 , 0x00000005 
- 00020320  0x00004f01 increase  0xffffffff , 0x00000005 
- 00020321  0x00004f02 istore  0x00000001 , 0x00000005 
- 00020322  0x00004f03 enable  0x00000028 
- 00020323  0x00004f04 rtn 
- 00020324  0x00004f07 fetch  0x00000001 , 0x00004250 
- 00020325  0x00004f08 call  0x00004f5a 
- 00020326  0x00004f09 nbranch  0x00004f6b , 0x00000028 
- 00020327  0x00004f0a jam  0x00000050 , 0x00000280 
- 00020328  0x00004f0b fetch  0x00000002 , 0x00004248 
- 00020329  0x00004f0c store  0x00000002 , 0x00000282 
- 00020330  0x00004f0d branch  0x00004f7f 
- 00020331  0x00004f0f fetch  0x00000001 , 0x00004251 
- 00020332  0x00004f10 call  0x00004f5a 
- 00020333  0x00004f11 nbranch  0x00004f72 , 0x00000028 
- 00020334  0x00004f12 jam  0x00000051 , 0x00000280 
- 00020335  0x00004f13 fetch  0x00000002 , 0x0000424a 
- 00020336  0x00004f14 store  0x00000002 , 0x00000282 
- 00020337  0x00004f15 branch  0x00004f7f 
- 00020338  0x00004f17 fetch  0x00000001 , 0x00004252 
- 00020339  0x00004f18 call  0x00004f5a 
- 00020340  0x00004f19 nbranch  0x00004f79 , 0x00000028 
- 00020341  0x00004f1a jam  0x00000052 , 0x00000280 
- 00020342  0x00004f1b fetch  0x00000002 , 0x0000424c 
- 00020343  0x00004f1c store  0x00000002 , 0x00000282 
- 00020344  0x00004f1d branch  0x00004f7f 
- 00020345  0x00004f1f fetch  0x00000001 , 0x00004253 
- 00020346  0x00004f20 call  0x00004f5a 
- 00020347  0x00004f21 nrtn  0x00000028 
- 00020348  0x00004f22 jam  0x00000053 , 0x00000280 
- 00020349  0x00004f23 fetch  0x00000002 , 0x0000424e 
- 00020350  0x00004f24 store  0x00000002 , 0x00000282 
- 00020351  0x00004f28 bpatchx  0x00000014 , 0x00004022 
- 00020352  0x00004f29 call  0x0000523a 
- 00020353  0x00004f2a call  0x000052b8 
- 00020354  0x00004f2b force  0x00000000 , 0x00000012 
- 00020355  0x00004f2c call  0x000052c3 
- 00020356  0x00004f2d force  0x00000004 , 0x0000003f 
- 00020357  0x00004f2e istore  0x00000001 , 0x00000005 
- 00020358  0x00004f2f fetch  0x00000001 , 0x00004255 
- 00020359  0x00004f30 istore  0x00000001 , 0x00000005 
- 00020360  0x00004f31 setarg  0x00000008 
- 00020361  0x00004f32 istore  0x00000002 , 0x00000005 
- 00020362  0x00004f33 fetch  0x00000002 , 0x00000282 
- 00020363  0x00004f34 istore  0x00000002 , 0x00000005 
- 00020364  0x00004f35 setarg  0x00000000 
- 00020365  0x00004f36 istore  0x00000002 , 0x00000005 
- 00020366  0x00004f37 force  0x00000001 , 0x0000003f 
- 00020367  0x00004f38 istore  0x00000001 , 0x00000005 
- 00020368  0x00004f39 force  0x00000002 , 0x0000003f 
- 00020369  0x00004f3a istore  0x00000001 , 0x00000005 
- 00020370  0x00004f3b fetch  0x00000001 , 0x00000280 
- 00020371  0x00004f3c beq  0x00000051 , 0x00004f97 
- 00020372  0x00004f3d setarg  0x00000030 
- 00020373  0x00004f3e istore  0x00000002 , 0x00000005 
- 00020374  0x00004f3f branch  0x00004f99 
- 00020375  0x00004f41 setarg  0x000003e3 
- 00020376  0x00004f42 istore  0x00000002 , 0x00000005 
- 00020377  0x00004f44 arg  0x0000000c , 0x00000002 
- 00020378  0x00004f45 storet  0x00000002 , 0x0000026f 
- 00020379  0x00004f46 call  0x000052c1 
- 00020380  0x00004f47 fetch  0x00000002 , 0x0000026f 
- 00020381  0x00004f48 istore  0x00000002 , 0x00000005 
- 00020382  0x00004f49 force  0x00000001 , 0x0000003f 
- 00020383  0x00004f4a istore  0x00000002 , 0x00000005 
- 00020384  0x00004f4b jam  0x00000000 , 0x00000280 
- 00020385  0x00004f4d branch  0x00004e1e 
- 00020386  0x00004f50 increase  0x00000001 , 0x00000006 
- 00020387  0x00004f51 ifetch  0x00000002 , 0x00000006 
- 00020388  0x00004f52 copy  0x0000003f , 0x00000011 
- 00020389  0x00004f53 copy  0x00000013 , 0x0000003f 
- 00020390  0x00004f54 isub  0x00000011 , 0x00000013 
- 00020391  0x00004f55 ifetch  0x00000002 , 0x00000006 
- 00020392  0x00004f56 copy  0x0000003f , 0x00000011 
- 00020393  0x00004f57 bpatchx  0x00000015 , 0x00004022 
- 00020394  0x00004f58 setarg  0x00000050 
- 00020395  0x00004f59 isub  0x00000011 , 0x0000003e 
- 00020396  0x00004f5a branch  0x00004fba , 0x00000005 
- 00020397  0x00004f5b setarg  0x00000051 
- 00020398  0x00004f5c isub  0x00000011 , 0x0000003e 
- 00020399  0x00004f5d branch  0x00004fbe , 0x00000005 
- 00020400  0x00004f5e setarg  0x00000052 
- 00020401  0x00004f5f isub  0x00000011 , 0x0000003e 
- 00020402  0x00004f60 branch  0x00004fc2 , 0x00000005 
- 00020403  0x00004f61 setarg  0x00000053 
- 00020404  0x00004f62 isub  0x00000011 , 0x0000003e 
- 00020405  0x00004f63 branch  0x00004fc6 , 0x00000005 
- 00020406  0x00004f64 increase  0x00000002 , 0x00000006 
- 00020407  0x00004f65 ifetch  0x00000002 , 0x00000006 
- 00020408  0x00004f66 iforce  0x0000003e 
- 00020409  0x00004f67 branch  0x00004e1e 
- 00020410  0x00004f69 fetch  0x00000001 , 0x00004250 
- 00020411  0x00004f6a set1  0x00000005 , 0x0000003f 
- 00020412  0x00004f6b store  0x00000001 , 0x00004250 
- 00020413  0x00004f6c branch  0x00004e1e 
- 00020414  0x00004f6e fetch  0x00000001 , 0x00004251 
- 00020415  0x00004f6f set1  0x00000005 , 0x0000003f 
- 00020416  0x00004f70 store  0x00000001 , 0x00004251 
- 00020417  0x00004f71 branch  0x00004e1e 
- 00020418  0x00004f73 fetch  0x00000001 , 0x00004252 
- 00020419  0x00004f74 set1  0x00000005 , 0x0000003f 
- 00020420  0x00004f75 store  0x00000001 , 0x00004252 
- 00020421  0x00004f76 branch  0x00004e1e 
- 00020422  0x00004f78 fetch  0x00000001 , 0x00004253 
- 00020423  0x00004f79 set1  0x00000005 , 0x0000003f 
- 00020424  0x00004f7a store  0x00000001 , 0x00004253 
- 00020425  0x00004f7b jam  0x00000006 , 0x00000a99 
- 00020426  0x00004f7c branch  0x00007d86 
- 00020427  0x00004f81 ifetch  0x00000001 , 0x00000006 
- 00020428  0x00004f82 copy  0x0000003f , 0x00000007 
- 00020429  0x00004f83 ifetch  0x00000002 , 0x00000006 
- 00020430  0x00004f84 copy  0x0000003f , 0x00000011 
- 00020431  0x00004f85 copy  0x00000013 , 0x0000003f 
- 00020432  0x00004f86 isub  0x00000011 , 0x00000013 
- 00020433  0x00004f87 ifetch  0x00000002 , 0x00000006 
- 00020434  0x00004f88 copy  0x0000003f , 0x00000011 
- 00020435  0x00004f89 ifetch  0x00000002 , 0x00000006 
- 00020436  0x00004f8a copy  0x0000003f , 0x0000000b 
- 00020437  0x00004f8b copy  0x00000011 , 0x00000002 
- 00020438  0x00004f8c call  0x00007ea8 
- 00020439  0x00004f8d bpatchx  0x00000016 , 0x00004022 
- 00020440  0x00004f8e setarg  0x00000050 
- 00020441  0x00004f8f isub  0x00000002 , 0x0000003e 
- 00020442  0x00004f90 branch  0x00004ff2 , 0x00000005 
- 00020443  0x00004f91 setarg  0x00000051 
- 00020444  0x00004f92 isub  0x00000002 , 0x0000003e 
- 00020445  0x00004f93 branch  0x00005002 , 0x00000005 
- 00020446  0x00004f94 setarg  0x00000052 
- 00020447  0x00004f95 isub  0x00000002 , 0x0000003e 
- 00020448  0x00004f96 branch  0x00004fe6 , 0x00000005 
- 00020449  0x00004f97 setarg  0x00000053 
- 00020450  0x00004f98 isub  0x00000002 , 0x0000003e 
- 00020451  0x00004f99 branch  0x00004fec , 0x00000005 
- 00020452  0x00004f9a call  0x00005062 
- 00020453  0x00004f9b branch  0x00005017 
- 00020454  0x00004f9d copy  0x0000000b , 0x00000002 
- 00020455  0x00004f9e fetch  0x00000002 , 0x0000424c 
- 00020456  0x00004f9f isub  0x00000002 , 0x0000003e 
- 00020457  0x00004fa0 branch  0x00004ff8 , 0x00000005 
- 00020458  0x00004fa1 call  0x00005062 
- 00020459  0x00004fa2 branch  0x00005017 
- 00020460  0x00004fa4 copy  0x0000000b , 0x00000002 
- 00020461  0x00004fa5 fetch  0x00000002 , 0x0000424e 
- 00020462  0x00004fa6 isub  0x00000002 , 0x0000003e 
- 00020463  0x00004fa7 branch  0x00004ffa , 0x00000005 
- 00020464  0x00004fa8 call  0x00005062 
- 00020465  0x00004fa9 branch  0x00005017 
- 00020466  0x00004fac copy  0x0000000b , 0x00000002 
- 00020467  0x00004fad fetch  0x00000002 , 0x00004248 
- 00020468  0x00004fae isub  0x00000002 , 0x0000003e 
- 00020469  0x00004faf branch  0x00004ffe , 0x00000005 
- 00020470  0x00004fb0 call  0x00005062 
- 00020471  0x00004fb1 branch  0x00005017 
- 00020472  0x00004fb3 call  0x00005079 
- 00020473  0x00004fb4 branch  0x0000500a 
- 00020474  0x00004fb6 call  0x0000507f 
- 00020475  0x00004fb7 fetch  0x00000002 , 0x0000424c 
- 00020476  0x00004fb8 branch  0x0000500a , 0x00000034 
- 00020477  0x00004fc0 branch  0x0000500a 
- 00020478  0x00004fc3 call  0x00005074 
- 00020479  0x00004fc4 fetch  0x00000001 , 0x00000288 
- 00020480  0x00004fc5 nbranch  0x0000500a , 0x00000034 
- 00020481  0x00004fc8 branch  0x0000500a 
- 00020482  0x00004fca copy  0x0000000b , 0x00000002 
- 00020483  0x00004fcb fetch  0x00000002 , 0x0000424a 
- 00020484  0x00004fcc isub  0x00000002 , 0x0000003e 
- 00020485  0x00004fcd branch  0x00005008 , 0x00000005 
- 00020486  0x00004fce call  0x00005062 
- 00020487  0x00004fcf branch  0x00005017 
- 00020488  0x00004fd1 call  0x0000506f 
- 00020489  0x00004fd2 branch  0x0000500a 
- 00020490  0x00004fd4 call  0x00007ead 
- 00020491  0x00004fd5 setarg  0x00000007 
- 00020492  0x00004fd6 istore  0x00000001 , 0x00000005 
- 00020493  0x00004fd7 copy  0x00000007 , 0x0000003f 
- 00020494  0x00004fd8 istore  0x00000001 , 0x00000005 
- 00020495  0x00004fd9 setarg  0x00000004 
- 00020496  0x00004fda istore  0x00000002 , 0x00000005 
- 00020497  0x00004fdb copy  0x00000011 , 0x0000003f 
- 00020498  0x00004fdc istore  0x00000002 , 0x00000005 
- 00020499  0x00004fdd copy  0x0000000b , 0x0000003f 
- 00020500  0x00004fde istore  0x00000002 , 0x00000005 
- 00020501  0x00004fdf force  0x00000008 , 0x0000003f 
- 00020502  0x00004fe0 branch  0x00005019 
- 00020503  0x00004fe2 call  0x00007ead 
- 00020504  0x00004fe3 branch  0x00005019 
- 00020505  0x00004fe5 iadd  0x00000012 , 0x00000012 
- 00020506  0x00004fe6 branch  0x00004e1e 
- 00020507  0x00004fe8 ifetch  0x00000001 , 0x00000006 
- 00020508  0x00004fe9 copy  0x0000003f , 0x00000007 
- 00020509  0x00004fea ifetch  0x00000002 , 0x00000006 
- 00020510  0x00004feb copy  0x0000003f , 0x00000011 
- 00020511  0x00004fec copy  0x00000013 , 0x0000003f 
- 00020512  0x00004fed isub  0x00000011 , 0x00000013 
- 00020513  0x00004fee ifetch  0x00000002 , 0x00000006 
- 00020514  0x00004fef copy  0x0000003f , 0x0000000b 
- 00020515  0x00004ff0 ifetch  0x00000002 , 0x00000006 
- 00020516  0x00004ff1 copy  0x0000003f , 0x00000002 
- 00020517  0x00004ff2 call  0x00007ea8 
- 00020518  0x00004ff3 bpatchx  0x00000017 , 0x00004022 
- 00020519  0x00004ff4 setarg  0x00000050 
- 00020520  0x00004ff5 isub  0x00000002 , 0x0000003e 
- 00020521  0x00004ff6 branch  0x00005035 , 0x00000005 
- 00020522  0x00004ff7 setarg  0x00000051 
- 00020523  0x00004ff8 isub  0x00000002 , 0x0000003e 
- 00020524  0x00004ff9 branch  0x0000503b , 0x00000005 
- 00020525  0x00004ffa setarg  0x00000052 
- 00020526  0x00004ffb isub  0x00000002 , 0x0000003e 
- 00020527  0x00004ffc branch  0x00005041 , 0x00000005 
- 00020528  0x00004ffd setarg  0x00000053 
- 00020529  0x00004ffe isub  0x00000002 , 0x0000003e 
- 00020530  0x00004fff branch  0x00005047 , 0x00000005 
- 00020531  0x00005000 call  0x00005062 
- 00020532  0x00005001 branch  0x0000504f 
- 00020533  0x00005003 copy  0x00000002 , 0x00000011 
- 00020534  0x00005004 copy  0x0000000b , 0x00000002 
- 00020535  0x00005005 fetch  0x00000002 , 0x00004248 
- 00020536  0x00005006 isub  0x00000002 , 0x0000003e 
- 00020537  0x00005007 call  0x00005074 , 0x00000005 
- 00020538  0x00005008 branch  0x0000504d 
- 00020539  0x0000500a copy  0x00000002 , 0x00000011 
- 00020540  0x0000500b copy  0x0000000b , 0x00000002 
- 00020541  0x0000500c fetch  0x00000002 , 0x0000424a 
- 00020542  0x0000500d isub  0x00000002 , 0x0000003e 
- 00020543  0x0000500e call  0x0000506f , 0x00000005 
- 00020544  0x0000500f branch  0x0000504d 
- 00020545  0x00005011 copy  0x00000002 , 0x00000011 
- 00020546  0x00005012 copy  0x0000000b , 0x00000002 
- 00020547  0x00005013 fetch  0x00000002 , 0x0000424c 
- 00020548  0x00005014 isub  0x00000002 , 0x0000003e 
- 00020549  0x00005015 call  0x00005079 , 0x00000005 
- 00020550  0x00005016 branch  0x0000504d 
- 00020551  0x00005018 copy  0x00000002 , 0x00000011 
- 00020552  0x00005019 copy  0x0000000b , 0x00000002 
- 00020553  0x0000501a fetch  0x00000002 , 0x0000424e 
- 00020554  0x0000501b isub  0x00000002 , 0x0000003e 
- 00020555  0x0000501c call  0x0000507f , 0x00000005 
- 00020556  0x0000501d branch  0x0000504d 
- 00020557  0x0000501f call  0x00007ead 
- 00020558  0x00005020 branch  0x00004e1e 
- 00020559  0x00005022 branch  0x00004e1e 
- 00020560  0x00005026 ifetch  0x00000001 , 0x00000006 
- 00020561  0x00005027 copy  0x0000003f , 0x00000007 
- 00020562  0x00005028 ifetch  0x00000002 , 0x00000006 
- 00020563  0x00005029 copy  0x0000003f , 0x00000011 
- 00020564  0x0000502a iadd  0x00000006 , 0x00000006 
- 00020565  0x0000502b setarg  0x00000009 
- 00020566  0x0000502c istore  0x00000001 , 0x00000005 
- 00020567  0x0000502d copy  0x00000007 , 0x0000003f 
- 00020568  0x0000502e istore  0x00000001 , 0x00000005 
- 00020569  0x0000502f force  0x00000000 , 0x0000003f 
- 00020570  0x00005030 istore  0x00000002 , 0x00000005 
- 00020571  0x00005031 force  0x00000004 , 0x0000003f 
- 00020572  0x00005032 iadd  0x00000012 , 0x00000012 
- 00020573  0x00005033 copy  0x00000013 , 0x0000003f 
- 00020574  0x00005034 isub  0x00000011 , 0x00000013 
- 00020575  0x00005035 branch  0x00004e1e 
- 00020576  0x00005037 branch  0x00004e1e 
- 00020577  0x0000503a branch  0x00004e1e 
- 00020578  0x0000503c force  0x00000000 , 0x00000012 
- 00020579  0x0000503d call  0x000052c3 
- 00020580  0x0000503e setarg  0x00000001 
- 00020581  0x0000503f istore  0x00000001 , 0x00000005 
- 00020582  0x00005040 copy  0x00000007 , 0x0000003f 
- 00020583  0x00005041 istore  0x00000001 , 0x00000005 
- 00020584  0x00005042 setarg  0x00000002 
- 00020585  0x00005043 istore  0x00000002 , 0x00000005 
- 00020586  0x00005044 setarg  0x00000000 
- 00020587  0x00005045 istore  0x00000002 , 0x00000005 
- 00020588  0x00005046 increase  0x00000006 , 0x00000012 
- 00020589  0x00005047 arg  0x00000004 , 0x00000013 
- 00020590  0x00005048 branch  0x00004e1e 
- 00020591  0x0000504d setarg  0x00000000 
- 00020592  0x0000504e store  0x00000002 , 0x0000027b 
- 00020593  0x0000504f store  0x00000002 , 0x0000424a 
- 00020594  0x00005050 jam  0x00000000 , 0x00004251 
- 00020595  0x00005051 rtn 
- 00020596  0x00005053 setarg  0x00000000 
- 00020597  0x00005054 store  0x00000002 , 0x00000275 
- 00020598  0x00005055 store  0x00000002 , 0x00004248 
- 00020599  0x00005056 jam  0x00000000 , 0x00004250 
- 00020600  0x00005057 rtn 
- 00020601  0x00005059 setarg  0x00000000 
- 00020602  0x0000505a store  0x00000002 , 0x0000424c 
- 00020603  0x0000505b jam  0x00000000 , 0x00004252 
- 00020604  0x0000505c fetch  0x00000001 , 0x00004253 
- 00020605  0x0000505d beq  0x00000000 , 0x00005085 
- 00020606  0x0000505e rtn 
- 00020607  0x00005061 setarg  0x00000000 
- 00020608  0x00005062 store  0x00000002 , 0x0000424e 
- 00020609  0x00005063 jam  0x00000000 , 0x00004253 
- 00020610  0x00005064 fetch  0x00000001 , 0x00004252 
- 00020611  0x00005065 beq  0x00000000 , 0x00005085 
- 00020612  0x00005066 rtn 
- 00020613  0x00005069 jam  0x00000007 , 0x00000a99 
- 00020614  0x0000506a branch  0x00007d86 
- 00020615  0x0000506d fetch  0x00000001 , 0x0000027f 
- 00020616  0x0000506e set0  0x00000000 , 0x0000003f 
- 00020617  0x0000506f store  0x00000001 , 0x0000027f 
- 00020618  0x00005070 fetch  0x00000002 , 0x0000424e 
- 00020619  0x00005071 rtn  0x00000034 
- 00020620  0x00005072 call  0x000052b8 
- 00020621  0x00005073 fetch  0x00000002 , 0x0000424e 
- 00020622  0x00005074 copy  0x0000003f , 0x00000011 
- 00020623  0x00005075 force  0x00000053 , 0x00000012 
- 00020624  0x00005076 branch  0x0000509a 
- 00020625  0x00005078 fetch  0x00000001 , 0x0000027f 
- 00020626  0x00005079 set0  0x00000007 , 0x0000003f 
- 00020627  0x0000507a store  0x00000001 , 0x0000027f 
- 00020628  0x0000507b fetch  0x00000002 , 0x0000424c 
- 00020629  0x0000507c rtn  0x00000034 
- 00020630  0x0000507d call  0x000052b8 
- 00020631  0x0000507e fetch  0x00000002 , 0x0000424c 
- 00020632  0x0000507f copy  0x0000003f , 0x00000011 
- 00020633  0x00005080 force  0x00000052 , 0x00000012 
- 00020634  0x00005082 call  0x0000523a 
- 00020635  0x00005083 call  0x000052c3 
- 00020636  0x00005084 force  0x00000006 , 0x0000003f 
- 00020637  0x00005085 istore  0x00000001 , 0x00000005 
- 00020638  0x00005086 fetch  0x00000001 , 0x00004255 
- 00020639  0x00005087 istore  0x00000001 , 0x00000005 
- 00020640  0x00005088 setarg  0x00000004 
- 00020641  0x00005089 istore  0x00000002 , 0x00000005 
- 00020642  0x0000508a copy  0x00000011 , 0x0000003f 
- 00020643  0x0000508b istore  0x00000002 , 0x00000005 
- 00020644  0x0000508c copy  0x00000012 , 0x0000003f 
- 00020645  0x0000508d istore  0x00000002 , 0x00000005 
- 00020646  0x0000508e force  0x00000008 , 0x00000002 
- 00020647  0x0000508f branch  0x000050de 
- 00020648  0x00005092 bpatchx  0x00000018 , 0x00004023 
- 00020649  0x00005093 call  0x0000523a 
- 00020650  0x00005094 call  0x000052c3 
- 00020651  0x00005095 setarg  0x00000002 
- 00020652  0x00005096 istore  0x00000001 , 0x00000005 
- 00020653  0x00005097 fetch  0x00000001 , 0x00004255 
- 00020654  0x00005098 istore  0x00000001 , 0x00000005 
- 00020655  0x00005099 setarg  0x00000004 
- 00020656  0x0000509a istore  0x00000002 , 0x00000005 
- 00020657  0x0000509b copy  0x00000002 , 0x0000003f 
- 00020658  0x0000509c istore  0x00000002 , 0x00000005 
- 00020659  0x0000509d copy  0x0000000b , 0x0000003f 
- 00020660  0x0000509e istore  0x00000002 , 0x00000005 
- 00020661  0x0000509f arg  0x00000008 , 0x00000002 
- 00020662  0x000050a0 branch  0x000050de 
- 00020663  0x000050a2 bpatchx  0x00000019 , 0x00004023 
- 00020664  0x000050a3 call  0x0000523a 
- 00020665  0x000050a4 call  0x000052c3 
- 00020666  0x000050a5 setarg  0x00000004 
- 00020667  0x000050a6 istore  0x00000001 , 0x00000005 
- 00020668  0x000050a7 fetch  0x00000001 , 0x00004255 
- 00020669  0x000050a8 istore  0x00000001 , 0x00000005 
- 00020670  0x000050a9 setarg  0x00000008 
- 00020671  0x000050aa istore  0x00000002 , 0x00000005 
- 00020672  0x000050ac copy  0x00000002 , 0x0000003f 
- 00020673  0x000050ae istore  0x00000002 , 0x00000005 
- 00020674  0x000050af setarg  0x00000000 
- 00020675  0x000050b0 istore  0x00000002 , 0x00000005 
- 00020676  0x000050b1 setarg  0x00000001 
- 00020677  0x000050b2 istore  0x00000001 , 0x00000005 
- 00020678  0x000050b3 setarg  0x00000002 
- 00020679  0x000050b4 istore  0x00000001 , 0x00000005 
- 00020680  0x000050b5 setarg  0x000003e3 
- 00020681  0x000050b6 istore  0x00000002 , 0x00000005 
- 00020682  0x000050b7 arg  0x0000000c , 0x00000002 
- 00020683  0x000050b8 branch  0x000050de 
- 00020684  0x000050ba bpatchx  0x0000001a , 0x00004023 
- 00020685  0x000050bb call  0x0000523a 
- 00020686  0x000050bc call  0x000052c3 
- 00020687  0x000050bd setarg  0x00000006 
- 00020688  0x000050be istore  0x00000001 , 0x00000005 
- 00020689  0x000050bf fetch  0x00000001 , 0x00004255 
- 00020690  0x000050c0 increase  0x00000001 , 0x0000003f 
- 00020691  0x000050c1 copy  0x00000005 , 0x00000011 
- 00020692  0x000050c2 store  0x00000001 , 0x00004255 
- 00020693  0x000050c3 copy  0x00000011 , 0x00000005 
- 00020694  0x000050c4 istore  0x00000001 , 0x00000005 
- 00020695  0x000050c5 setarg  0x00000004 
- 00020696  0x000050c6 istore  0x00000002 , 0x00000005 
- 00020697  0x000050c7 copy  0x00000002 , 0x0000003f 
- 00020698  0x000050c8 istore  0x00000002 , 0x00000005 
- 00020699  0x000050c9 copy  0x0000000b , 0x0000003f 
- 00020700  0x000050ca istore  0x00000002 , 0x00000005 
- 00020701  0x000050cb arg  0x00000008 , 0x00000002 
- 00020702  0x000050cf storet  0x00000002 , 0x0000026f 
- 00020703  0x000050d0 copy  0x00000002 , 0x0000003f 
- 00020704  0x000050d1 branch  0x00005264 , 0x00000034 
- 00020705  0x000050d2 call  0x000052c1 
- 00020706  0x000050d3 fetch  0x00000002 , 0x0000026f 
- 00020707  0x000050d4 istore  0x00000002 , 0x00000005 
- 00020708  0x000050d5 force  0x00000001 , 0x0000003f 
- 00020709  0x000050d6 istore  0x00000002 , 0x00000005 
- 00020710  0x000050d7 rtn 
- 00020711  0x000050da fetch  0x00000002 , 0x00000275 
- 00020712  0x000050db branch  0x00002a8c , 0x00000034 
- 00020713  0x000050dc call  0x000052ce 
- 00020714  0x000050dd fetch  0x00000002 , 0x00000275 
- 00020715  0x000050de istore  0x00000002 , 0x00000005 
- 00020716  0x000050df fetch  0x00000002 , 0x00004248 
- 00020717  0x000050e0 istore  0x00000002 , 0x00000005 
- 00020718  0x000050e1 rtn 
- 00020719  0x000050e3 fetch  0x00000002 , 0x00000266 
- 00020720  0x000050e4 branch  0x00004dfc , 0x00000034 
- 00020721  0x000050e5 bpatchx  0x0000001b , 0x00004023 
- 00020722  0x000050e6 fetch  0x00000001 , 0x00000268 
- 00020723  0x000050e7 beq  0x00000001 , 0x000050f9 
- 00020724  0x000050e8 beq  0x00000050 , 0x00004de8 
- 00020725  0x000050e9 beq  0x00000051 , 0x00004df5 
- 00020726  0x000050ea beq  0x00000052 , 0x00004df3 
- 00020727  0x000050eb beq  0x00000053 , 0x00004df3 
- 00020728  0x000050ec branch  0x00004dfc 
- 00020729  0x000050ef bpatchx  0x0000001c , 0x00004023 
- 00020730  0x000050f0 call  0x000052b8 
- 00020731  0x000050f1 force  0x00000000 , 0x00000012 
- 00020732  0x000050f2 call  0x000052c3 
- 00020733  0x000050f3 copy  0x0000003f , 0x00000005 
- 00020734  0x000050f4 fetch  0x00000002 , 0x00000266 
- 00020735  0x000050f5 copy  0x0000003f , 0x00000013 
- 00020736  0x000050f6 fetch  0x00000002 , 0x00000264 
- 00020737  0x000050f7 iforce  0x00000006 
- 00020738  0x000050f9 call  0x00005108 
- 00020739  0x000050fa increase  0xfffffffc , 0x00000013 
- 00020740  0x000050fb nbranch  0x00005102 , 0x00000005 
- 00020741  0x000050fc copy  0x00000012 , 0x00000002 
- 00020742  0x000050fd call  0x000050de 
- 00020743  0x000050fe branch  0x00004dfc 
- 00020744  0x00005101 ifetch  0x00000001 , 0x00000006 
- 00020745  0x00005102 beq  0x00000002 , 0x00005113 
- 00020746  0x00005103 beq  0x00000001 , 0x00005116 
- 00020747  0x00005104 beq  0x00000003 , 0x00005120 
- 00020748  0x00005105 beq  0x00000005 , 0x0000515c 
- 00020749  0x00005106 beq  0x00000004 , 0x0000518e 
- 00020750  0x00005107 beq  0x00000007 , 0x00005213 
- 00020751  0x00005108 beq  0x00000006 , 0x000051e1 
- 00020752  0x00005109 beq  0x00000008 , 0x00005050 
- 00020753  0x0000510a beq  0x0000000a , 0x00004e3a 
- 00020754  0x0000510b branch  0x0000522e 
- 00020755  0x0000510e call  0x00007ea8 
- 00020756  0x00005110 call  0x00007ead 
- 00020757  0x00005111 branch  0x00004e51 
- 00020758  0x00005113 ifetch  0x00000001 , 0x00000006 
- 00020759  0x00005114 copy  0x0000003f , 0x00000007 
- 00020760  0x00005115 ifetch  0x00000002 , 0x00000006 
- 00020761  0x00005116 copy  0x0000003f , 0x00000011 
- 00020762  0x00005117 copy  0x00000013 , 0x0000003f 
- 00020763  0x00005118 isub  0x00000011 , 0x00000013 
- 00020764  0x0000511a ifetch  0x00000001 , 0x00000006 
- 00020765  0x0000511b increase  0xffffffff , 0x00000011 
- 00020766  0x0000511c nbranch  0x0000511c , 0x00000005 
- 00020767  0x0000511d rtn 
- 00020768  0x0000511f ifetch  0x00000001 , 0x00000006 
- 00020769  0x00005120 copy  0x0000003f , 0x00000007 
- 00020770  0x00005121 ifetch  0x00000002 , 0x00000006 
- 00020771  0x00005122 copy  0x0000003f , 0x00000011 
- 00020772  0x00005123 ifetch  0x00000002 , 0x00000006 
- 00020773  0x00005124 copy  0x0000003f , 0x0000000b 
- 00020774  0x00005125 ifetch  0x00000002 , 0x00000006 
- 00020775  0x00005126 copy  0x0000003f , 0x00000002 
- 00020776  0x00005127 ifetch  0x00000002 , 0x00000006 
- 00020777  0x00005128 sub  0x0000003f , 0x00000000 , 0x0000003e 
- 00020778  0x00005129 branch  0x00005132 , 0x00000005 
- 00020779  0x0000512a beq  0x00000002 , 0x0000512e 
- 00020780  0x0000512b beq  0x00000004 , 0x0000512e 
- 00020781  0x0000512c branch  0x00005130 
- 00020782  0x0000512e jam  0x00000016 , 0x00000a99 
- 00020783  0x0000512f call  0x00007d86 
- 00020784  0x00005131 ifetch  0x00000002 , 0x00000006 
- 00020785  0x00005132 branch  0x00005159 
- 00020786  0x00005134 call  0x00007ea8 
- 00020787  0x00005138 bpatchx  0x0000001d , 0x00004023 
- 00020788  0x00005139 setarg  0x00000050 
- 00020789  0x0000513a isub  0x00000002 , 0x0000003e 
- 00020790  0x0000513b branch  0x00005141 , 0x00000005 
- 00020791  0x0000513c setarg  0x00000051 
- 00020792  0x0000513d isub  0x00000002 , 0x0000003e 
- 00020793  0x0000513e branch  0x00005147 , 0x00000005 
- 00020794  0x0000513f setarg  0x00000053 
- 00020795  0x00005140 isub  0x00000002 , 0x0000003e 
- 00020796  0x00005141 branch  0x00005153 , 0x00000005 
- 00020797  0x00005142 setarg  0x00000052 
- 00020798  0x00005143 isub  0x00000002 , 0x0000003e 
- 00020799  0x00005144 branch  0x0000514d , 0x00000005 
- 00020800  0x00005145 branch  0x00005159 
- 00020801  0x00005147 copy  0x0000000b , 0x0000003f 
- 00020802  0x00005148 store  0x00000002 , 0x00004248 
- 00020803  0x00005149 fetch  0x00000001 , 0x00004250 
- 00020804  0x0000514a set1  0x00000001 
- 00020805  0x0000514b store  0x00000001 , 0x00004250 
- 00020806  0x0000514c branch  0x00005158 
- 00020807  0x0000514e copy  0x0000000b , 0x0000003f 
- 00020808  0x0000514f store  0x00000002 , 0x0000424a 
- 00020809  0x00005150 fetch  0x00000001 , 0x00004251 
- 00020810  0x00005151 set1  0x00000001 
- 00020811  0x00005152 store  0x00000001 , 0x00004251 
- 00020812  0x00005153 branch  0x00005158 
- 00020813  0x00005155 copy  0x0000000b , 0x0000003f 
- 00020814  0x00005156 store  0x00000002 , 0x0000424c 
- 00020815  0x00005157 fetch  0x00000001 , 0x00004252 
- 00020816  0x00005158 set1  0x00000001 
- 00020817  0x00005159 store  0x00000001 , 0x00004252 
- 00020818  0x0000515a branch  0x00005158 
- 00020819  0x0000515c copy  0x0000000b , 0x0000003f 
- 00020820  0x0000515d store  0x00000002 , 0x0000424e 
- 00020821  0x0000515e fetch  0x00000001 , 0x00004253 
- 00020822  0x0000515f set1  0x00000001 
- 00020823  0x00005160 store  0x00000001 , 0x00004253 
- 00020824  0x00005164 call  0x00007ead 
- 00020825  0x00005166 copy  0x00000013 , 0x0000003f 
- 00020826  0x00005167 isub  0x00000011 , 0x00000013 
- 00020827  0x00005168 rtn 
- 00020828  0x0000516b ifetch  0x00000001 , 0x00000006 
- 00020829  0x0000516c copy  0x0000003f , 0x00000007 
- 00020830  0x0000516d ifetch  0x00000002 , 0x00000006 
- 00020831  0x0000516e copy  0x0000003f , 0x00000011 
- 00020832  0x0000516f copy  0x00000013 , 0x0000003f 
- 00020833  0x00005170 isub  0x00000011 , 0x00000013 
- 00020834  0x00005171 ifetch  0x00000002 , 0x00000006 
- 00020835  0x00005172 copy  0x0000003f , 0x0000000b 
- 00020836  0x00005173 ifetch  0x00000002 , 0x00000006 
- 00020837  0x00005174 ifetch  0x00000002 , 0x00000006 
- 00020838  0x00005175 nbranch  0x00005188 , 0x00000034 
- 00020839  0x00005176 call  0x00007ea8 
- 00020840  0x0000517a copy  0x0000000b , 0x00000002 
- 00020841  0x0000517b bpatchx  0x0000001e , 0x00004023 
- 00020842  0x0000517c setarg  0x00000050 
- 00020843  0x0000517d isub  0x00000002 , 0x0000003e 
- 00020844  0x0000517e branch  0x00005176 , 0x00000005 
- 00020845  0x0000517f setarg  0x00000051 
- 00020846  0x00005180 isub  0x00000002 , 0x0000003e 
- 00020847  0x00005181 branch  0x0000517a , 0x00000005 
- 00020848  0x00005182 setarg  0x00000052 
- 00020849  0x00005183 isub  0x00000002 , 0x0000003e 
- 00020850  0x00005184 branch  0x0000517e , 0x00000005 
- 00020851  0x00005185 setarg  0x00000053 
- 00020852  0x00005186 isub  0x00000002 , 0x0000003e 
- 00020853  0x00005187 branch  0x00005182 , 0x00000005 
- 00020854  0x00005189 fetch  0x00000001 , 0x00004250 
- 00020855  0x0000518a set1  0x00000005 
- 00020856  0x0000518b store  0x00000001 , 0x00004250 
- 00020857  0x0000518c rtn 
- 00020858  0x0000518e fetch  0x00000001 , 0x00004251 
- 00020859  0x0000518f set1  0x00000005 
- 00020860  0x00005190 store  0x00000001 , 0x00004251 
- 00020861  0x00005191 rtn 
- 00020862  0x00005193 fetch  0x00000001 , 0x00004252 
- 00020863  0x00005194 set1  0x00000005 
- 00020864  0x00005195 store  0x00000001 , 0x00004252 
- 00020865  0x00005196 rtn 
- 00020866  0x00005198 fetch  0x00000001 , 0x00004253 
- 00020867  0x00005199 set1  0x00000005 
- 00020868  0x0000519a store  0x00000001 , 0x00004253 
- 00020869  0x0000519b jam  0x00000006 , 0x00000a99 
- 00020870  0x0000519c branch  0x00007d86 
- 00020871  0x000051a0 call  0x00007ead 
- 00020872  0x000051a2 increase  0xfffffffa , 0x00000011 
- 00020873  0x000051a4 branch  0x0000518d , 0x00000005 
- 00020874  0x000051a5 increase  0x00000001 , 0x00000006 
- 00020875  0x000051a6 increase  0xffffffff , 0x00000011 
- 00020876  0x000051a7 branch  0x00005189 
- 00020877  0x000051a9 rtn 
- 00020878  0x000051ab ifetch  0x00000001 , 0x00000006 
- 00020879  0x000051ac copy  0x0000003f , 0x00000007 
- 00020880  0x000051ad ifetch  0x00000002 , 0x00000006 
- 00020881  0x000051ae copy  0x0000003f , 0x00000011 
- 00020882  0x000051af copy  0x00000013 , 0x0000003f 
- 00020883  0x000051b0 isub  0x00000011 , 0x00000013 
- 00020884  0x000051b1 ifetch  0x00000002 , 0x00000006 
- 00020885  0x000051b2 increase  0x00000002 , 0x00000006 
- 00020886  0x000051b3 copy  0x0000003f , 0x00000002 
- 00020887  0x000051b4 setarg  0x00000005 
- 00020888  0x000051b5 istore  0x00000001 , 0x00000005 
- 00020889  0x000051b6 copy  0x00000007 , 0x0000003f 
- 00020890  0x000051b7 istore  0x00000001 , 0x00000005 
- 00020891  0x000051b8 increase  0x00000002 , 0x00000011 
- 00020892  0x000051b9 copy  0x00000011 , 0x0000003f 
- 00020893  0x000051ba istore  0x00000002 , 0x00000005 
- 00020894  0x000051bb call  0x00007ea8 
- 00020895  0x000051bc bpatchx  0x0000001f , 0x00004023 
- 00020896  0x000051bd setarg  0x00000050 
- 00020897  0x000051be isub  0x00000002 , 0x0000003e 
- 00020898  0x000051bf branch  0x000051ad , 0x00000005 
- 00020899  0x000051c0 setarg  0x00000051 
- 00020900  0x000051c1 isub  0x00000002 , 0x0000003e 
- 00020901  0x000051c2 branch  0x000051be , 0x00000005 
- 00020902  0x000051c3 setarg  0x00000052 
- 00020903  0x000051c4 isub  0x00000002 , 0x0000003e 
- 00020904  0x000051c5 branch  0x000051c4 , 0x00000005 
- 00020905  0x000051c6 setarg  0x00000053 
- 00020906  0x000051c7 isub  0x00000002 , 0x0000003e 
- 00020907  0x000051c8 branch  0x000051ca , 0x00000005 
- 00020908  0x000051c9 branch  0x000051cf 
- 00020909  0x000051cb fetch  0x00000001 , 0x00004250 
- 00020910  0x000051cc set1  0x00000004 , 0x0000003f 
- 00020911  0x000051cd set1  0x00000003 , 0x0000003f 
- 00020912  0x000051ce store  0x00000001 , 0x00004250 
- 00020913  0x000051cf bbit1  0x00000002 , 0x000051bb 
- 00020914  0x000051d0 fetcht  0x00000001 , 0x0000027f 
- 00020915  0x000051d1 set1  0x00000006 , 0x00000002 
- 00020916  0x000051d2 storet  0x00000001 , 0x0000027f 
- 00020917  0x000051d3 copy  0x00000007 , 0x0000003f 
- 00020918  0x000051d4 increase  0x00000001 , 0x0000003f 
- 00020919  0x000051d5 store  0x00000001 , 0x00000281 
- 00020920  0x000051d6 fetch  0x00000001 , 0x00004250 
- 00020921  0x000051d7 set1  0x00000002 , 0x0000003f 
- 00020922  0x000051d8 store  0x00000001 , 0x00004250 
- 00020923  0x000051da fetch  0x00000002 , 0x00004248 
- 00020924  0x000051db store  0x00000002 , 0x00000282 
- 00020925  0x000051dc branch  0x000051cf 
- 00020926  0x000051de fetch  0x00000001 , 0x00004251 
- 00020927  0x000051df set1  0x00000004 , 0x0000003f 
- 00020928  0x000051e0 set1  0x00000003 , 0x0000003f 
- 00020929  0x000051e1 store  0x00000001 , 0x00004251 
- 00020930  0x000051e2 fetch  0x00000002 , 0x0000424a 
- 00020931  0x000051e3 branch  0x000051cf 
- 00020932  0x000051e5 fetch  0x00000001 , 0x00004252 
- 00020933  0x000051e6 set1  0x00000004 , 0x0000003f 
- 00020934  0x000051e7 set1  0x00000003 , 0x0000003f 
- 00020935  0x000051e8 store  0x00000001 , 0x00004252 
- 00020936  0x000051e9 fetch  0x00000002 , 0x0000424c 
- 00020937  0x000051ea branch  0x000051cf 
- 00020938  0x000051ec fetch  0x00000001 , 0x00004253 
- 00020939  0x000051ed set1  0x00000004 , 0x0000003f 
- 00020940  0x000051ee set1  0x00000003 , 0x0000003f 
- 00020941  0x000051ef store  0x00000001 , 0x00004253 
- 00020942  0x000051f0 fetch  0x00000002 , 0x0000424e 
- 00020943  0x000051f4 copy  0x0000003f , 0x0000000b 
- 00020944  0x000051f5 call  0x00007ead 
- 00020945  0x000051f7 copy  0x0000000b , 0x0000003f 
- 00020946  0x000051f9 istore  0x00000002 , 0x00000005 
- 00020947  0x000051fa force  0x00000000 , 0x0000003f 
- 00020948  0x000051fb istore  0x00000002 , 0x00000005 
- 00020949  0x000051fc force  0x00000000 , 0x0000003f 
- 00020950  0x000051fd istore  0x00000002 , 0x00000005 
- 00020951  0x000051fe force  0x0000000a , 0x0000003f 
- 00020952  0x000051ff iadd  0x00000012 , 0x00000012 
- 00020953  0x00005200 increase  0xfffffffa , 0x00000011 
- 00020954  0x00005202 branch  0x000051e0 , 0x00000005 
- 00020955  0x00005203 ifetch  0x00000001 , 0x00000006 
- 00020956  0x00005204 istore  0x00000001 , 0x00000005 
- 00020957  0x00005205 increase  0x00000001 , 0x00000012 
- 00020958  0x00005206 increase  0xffffffff , 0x00000011 
- 00020959  0x00005207 branch  0x000051da 
- 00020960  0x00005209 rtn 
- 00020961  0x0000520b ifetch  0x00000001 , 0x00000006 
- 00020962  0x0000520c copy  0x0000003f , 0x00000007 
- 00020963  0x0000520d ifetch  0x00000002 , 0x00000006 
- 00020964  0x0000520e copy  0x0000003f , 0x00000011 
- 00020965  0x0000520f copy  0x00000013 , 0x0000003f 
- 00020966  0x00005210 isub  0x00000011 , 0x00000013 
- 00020967  0x00005212 ifetch  0x00000002 , 0x00000006 
- 00020968  0x00005213 copy  0x0000003f , 0x00000011 
- 00020969  0x00005214 ifetch  0x00000002 , 0x00000006 
- 00020970  0x00005215 copy  0x0000003f , 0x0000000b 
- 00020971  0x00005216 call  0x00007ea8 
- 00020972  0x00005217 bpatchx  0x00000020 , 0x00004024 
- 00020973  0x00005218 setarg  0x00000050 
- 00020974  0x00005219 copy  0x00000011 , 0x00000002 
- 00020975  0x0000521a isub  0x00000002 , 0x0000003e 
- 00020976  0x0000521b branch  0x000051fa , 0x00000005 
- 00020977  0x0000521c setarg  0x00000052 
- 00020978  0x0000521d copy  0x00000011 , 0x00000002 
- 00020979  0x0000521e isub  0x00000002 , 0x0000003e 
- 00020980  0x0000521f branch  0x000051ff , 0x00000005 
- 00020981  0x00005220 setarg  0x00000053 
- 00020982  0x00005221 copy  0x00000011 , 0x00000002 
- 00020983  0x00005222 isub  0x00000002 , 0x0000003e 
- 00020984  0x00005223 branch  0x00005201 , 0x00000005 
- 00020985  0x00005224 branch  0x00005203 
- 00020986  0x00005226 setarg  0x00000000 
- 00020987  0x00005227 store  0x00000002 , 0x00000275 
- 00020988  0x00005228 store  0x00000002 , 0x00004248 
- 00020989  0x00005229 store  0x00000001 , 0x00004250 
- 00020990  0x0000522a branch  0x00005205 
- 00020991  0x0000522c call  0x00005079 
- 00020992  0x0000522d branch  0x00005205 
- 00020993  0x0000522f call  0x0000507f 
- 00020994  0x00005235 branch  0x00005205 
- 00020995  0x00005237 setarg  0x00000000 
- 00020996  0x00005238 store  0x00000002 , 0x0000027b 
- 00020997  0x0000523a call  0x00007ead 
- 00020998  0x0000523b setarg  0x00000007 
- 00020999  0x0000523c istore  0x00000001 , 0x00000005 
- 00021000  0x0000523d copy  0x00000007 , 0x0000003f 
- 00021001  0x0000523e istore  0x00000001 , 0x00000005 
- 00021002  0x0000523f setarg  0x00000004 
- 00021003  0x00005240 istore  0x00000002 , 0x00000005 
- 00021004  0x00005241 copy  0x00000011 , 0x0000003f 
- 00021005  0x00005242 istore  0x00000002 , 0x00000005 
- 00021006  0x00005243 copy  0x0000000b , 0x0000003f 
- 00021007  0x00005244 istore  0x00000002 , 0x00000005 
- 00021008  0x00005245 force  0x00000008 , 0x0000003f 
- 00021009  0x00005246 iadd  0x00000012 , 0x00000012 
- 00021010  0x00005247 rtn 
- 00021011  0x0000524a ifetch  0x00000001 , 0x00000006 
- 00021012  0x0000524b copy  0x0000003f , 0x00000007 
- 00021013  0x0000524c ifetch  0x00000002 , 0x00000006 
- 00021014  0x0000524d copy  0x0000003f , 0x00000011 
- 00021015  0x0000524e ifetch  0x00000002 , 0x00000006 
- 00021016  0x0000524f copy  0x0000003f , 0x0000000b 
- 00021017  0x00005250 ifetch  0x00000002 , 0x00000006 
- 00021018  0x00005251 copy  0x0000003f , 0x00000002 
- 00021019  0x00005252 call  0x00007ea8 
- 00021020  0x00005253 bpatchx  0x00000021 , 0x00004024 
- 00021021  0x00005254 fetch  0x00000001 , 0x00004255 
- 00021022  0x00005255 icompare  0x000000ff , 0x00000007 
- 00021023  0x00005256 nbranch  0x0000522a , 0x00000001 
- 00021024  0x00005257 setarg  0x00000050 
- 00021025  0x00005258 isub  0x00000002 , 0x0000003e 
- 00021026  0x00005259 branch  0x00005227 , 0x00000005 
- 00021027  0x0000525a setarg  0x00000051 
- 00021028  0x0000525b isub  0x00000002 , 0x0000003e 
- 00021029  0x0000525c branch  0x0000522a , 0x00000005 
- 00021030  0x0000525d branch  0x0000522a 
- 00021031  0x0000525f jam  0x00000000 , 0x00004248 
- 00021032  0x00005260 jam  0x00000000 , 0x00004250 
- 00021033  0x00005261 branch  0x0000522a 
- 00021034  0x00005266 call  0x00007ead 
- 00021035  0x00005267 copy  0x00000013 , 0x0000003f 
- 00021036  0x00005268 isub  0x00000011 , 0x00000013 
- 00021037  0x00005269 rtn 
- 00021038  0x0000526c setarg  0x00000001 
- 00021039  0x0000526d istore  0x00000001 , 0x00000005 
- 00021040  0x0000526e ifetch  0x00000001 , 0x00000006 
- 00021041  0x0000526f istore  0x00000001 , 0x00000005 
- 00021042  0x00005270 setarg  0x00000002 
- 00021043  0x00005271 istore  0x00000002 , 0x00000005 
- 00021044  0x00005272 setarg  0x00000000 
- 00021045  0x00005273 istore  0x00000002 , 0x00000005 
- 00021046  0x00005274 setarg  0x00000006 
- 00021047  0x00005275 iadd  0x00000012 , 0x00000012 
- 00021048  0x00005276 force  0x00000004 , 0x00000013 
- 00021049  0x00005277 rtn 
- 00021050  0x0000527b fetch  0x00000001 , 0x00004255 
- 00021051  0x0000527c increase  0x00000001 , 0x0000003f 
- 00021052  0x0000527d bne  0x00000000 , 0x0000523e 
- 00021053  0x0000527e increase  0x00000001 , 0x0000003f 
- 00021054  0x00005280 store  0x00000001 , 0x00004255 
- 00021055  0x00005281 rtn 
- 00021056  0x0000528c bpatchx  0x00000022 , 0x00004024 
- 00021057  0x0000528d arg  0x00000000 , 0x00000012 
- 00021058  0x0000528e call  0x0000526e 
- 00021059  0x0000528f nbranch  0x00002a8c , 0x00000034 
- 00021060  0x00005290 call  0x0000527e 
- 00021061  0x00005291 arg  0x00001800 , 0x00000012 
- 00021062  0x00005292 arg  0x00000000 , 0x00000007 
- 00021063  0x00005294 fetcht  0x00000001 , 0x00004256 
- 00021064  0x00005295 qisolate1  0x00000002 
- 00021065  0x00005296 branch  0x0000524f , 0x00000001 
- 00021066  0x00005297 call  0x000052a0 
- 00021067  0x00005298 sub  0x0000000b , 0x00000000 , 0x0000003e 
- 00021068  0x00005299 branch  0x0000524f , 0x00000002 
- 00021069  0x0000529a call  0x00005288 
- 00021070  0x0000529b branch  0x00005255 
- 00021071  0x0000529d increase  0x00000080 , 0x00000012 
- 00021072  0x0000529e increase  0x00000001 , 0x00000007 
- 00021073  0x0000529f setarg  0x00000008 
- 00021074  0x000052a0 isub  0x00000007 , 0x0000003e 
- 00021075  0x000052a1 branch  0x00005247 , 0x00000002 
- 00021076  0x000052a2 arg  0x00000000 , 0x00000012 
- 00021077  0x000052a4 copy  0x00000012 , 0x0000003f 
- 00021078  0x000052a5 branch  0x00002a8c , 0x00000034 
- 00021079  0x000052a6 rtn 
- 00021080  0x000052af bpatchx  0x00000023 , 0x00004024 
- 00021081  0x000052b0 call  0x00005277 
- 00021082  0x000052b1 increase  0x00000001 , 0x00000006 
- 00021083  0x000052b2 ifetch  0x00000002 , 0x00000006 
- 00021084  0x000052b3 rtn 
- 00021085  0x000052ba bpatchx  0x00000024 , 0x00004024 
- 00021086  0x000052bb call  0x00005277 
- 00021087  0x000052bc copy  0x00000006 , 0x00000005 
- 00021088  0x000052bd copy  0x00000006 , 0x00000002 
- 00021089  0x000052be setarg  0x00000000 
- 00021090  0x000052bf istore  0x00000003 , 0x00000005 
- 00021091  0x000052c0 rtn 
- 00021092  0x000052c6 bpatchx  0x00000025 , 0x00004024 
- 00021093  0x000052c7 call  0x00005274 
- 00021094  0x000052c8 branch  0x00002a8c , 0x00000034 
- 00021095  0x000052c9 fetch  0x00000003 , 0x0000425d 
- 00021096  0x000052ca store  0x00000003 , 0x00004260 
- 00021097  0x000052cb fetch  0x00000003 , 0x0000425a 
- 00021098  0x000052cc store  0x00000003 , 0x0000425d 
- 00021099  0x000052cd fetch  0x00000003 , 0x00004257 
- 00021100  0x000052ce store  0x00000003 , 0x0000425a 
- 00021101  0x000052cf rtn 
- 00021102  0x000052d6 bpatchx  0x00000026 , 0x00004024 
- 00021103  0x000052d7 fetch  0x00000003 , 0x00004257 
- 00021104  0x000052d8 rtn 
- 00021105  0x000052df bpatchx  0x00000027 , 0x00004024 
- 00021106  0x000052e0 fetch  0x00000003 , 0x0000425a 
- 00021107  0x000052e1 rtn 
- 00021108  0x000052e8 bpatchx  0x00000028 , 0x00004025 
- 00021109  0x000052e9 fetch  0x00000003 , 0x00004260 
- 00021110  0x000052ea rtn 
- 00021111  0x000052f0 call  0x00005274 
- 00021112  0x000052f1 branch  0x00002a8c , 0x00000034 
- 00021113  0x000052f2 arg  0x00004257 , 0x00000006 
- 00021114  0x000052f4 ifetch  0x00000003 , 0x00000006 
- 00021115  0x000052f5 branch  0x0000527a , 0x00000034 
- 00021116  0x000052f6 increase  0xfffffffd , 0x00000006 
- 00021117  0x000052f7 rtn 
- 00021118  0x000052ff bpatchx  0x00000029 , 0x00004025 
- 00021119  0x00005300 arg  0x00000004 , 0x00000039 
- 00021120  0x00005301 arg  0x00004257 , 0x00000006 
- 00021121  0x00005302 arg  0x00000000 , 0x00000002 
- 00021122  0x00005304 ifetch  0x00000003 , 0x00000006 
- 00021123  0x00005305 and  0x0000003f , 0x000000ff , 0x0000003f 
- 00021124  0x00005306 ior  0x00000002 , 0x00000002 
- 00021125  0x00005307 loop  0x00005282 
- 00021126  0x00005308 storet  0x00000001 , 0x00004256 
- 00021127  0x00005309 rtn 
- 00021128  0x00005312 bpatchx  0x0000002a , 0x00004025 
- 00021129  0x00005313 call  0x0000526e 
- 00021130  0x00005314 nbranch  0x00002a8c , 0x00000034 
- 00021131  0x00005315 call  0x00005274 
- 00021132  0x00005316 branch  0x00005295 , 0x00000034 
- 00021133  0x00005317 fetch  0x00000003 , 0x0000425a 
- 00021134  0x00005318 store  0x00000003 , 0x00004257 
- 00021135  0x00005319 ifetch  0x00000003 , 0x00000006 
- 00021136  0x0000531a istore  0x00000003 , 0x00000005 
- 00021137  0x0000531b ifetch  0x00000003 , 0x00000006 
- 00021138  0x0000531c istore  0x00000003 , 0x00000005 
- 00021139  0x0000531d setarg  0x00000000 
- 00021140  0x0000531e istore  0x00000003 , 0x00000005 
- 00021141  0x00005320 arg  0x00000000 , 0x00000002 
- 00021142  0x00005321 copy  0x0000000b , 0x0000003f 
- 00021143  0x00005322 iadd  0x00000007 , 0x0000003f 
- 00021144  0x00005324 qset1  0x00000002 
- 00021145  0x00005325 increase  0x00000001 , 0x00000007 
- 00021146  0x00005326 isub  0x00000007 , 0x0000003e 
- 00021147  0x00005327 nbranch  0x00005298 , 0x00000005 
- 00021148  0x00005329 lshift8  0x00000012 , 0x0000003f 
- 00021149  0x0000532a ior  0x00000002 , 0x0000003f 
- 00021150  0x0000532b store  0x00000003 , 0x00004260 
- 00021151  0x0000532c rtn 
- 00021152  0x00005337 bpatchx  0x0000002b , 0x00004025 
- 00021153  0x00005338 call  0x0000527e 
- 00021154  0x00005339 copy  0x00000007 , 0x00000013 
- 00021155  0x0000533a arg  0x00000000 , 0x00000002 
- 00021156  0x0000533b arg  0x00000000 , 0x0000000b 
- 00021157  0x0000533e copy  0x00000007 , 0x0000003f 
- 00021158  0x0000533f beq  0x00000008 , 0x000052b0 
- 00021159  0x00005340 fetch  0x00000001 , 0x00004256 
- 00021160  0x00005341 qisolate1  0x0000003f 
- 00021161  0x00005342 branch  0x000052b0 , 0x00000001 
- 00021162  0x00005343 increase  0x00000080 , 0x00000002 
- 00021163  0x00005344 increase  0x00000001 , 0x00000007 
- 00021164  0x00005345 copy  0x00000011 , 0x0000003f 
- 00021165  0x00005346 isub  0x00000002 , 0x0000003e 
- 00021166  0x00005347 branch  0x000052b0 , 0x00000005 
- 00021167  0x00005348 branch  0x000052a5 , 0x00000002 
- 00021168  0x0000534a copy  0x00000002 , 0x0000003f 
- 00021169  0x0000534b isub  0x00000011 , 0x0000003e 
- 00021170  0x0000534c nbranch  0x000052b6 , 0x00000002 
- 00021171  0x0000534d copy  0x00000007 , 0x0000003f 
- 00021172  0x0000534e copy  0x00000013 , 0x00000002 
- 00021173  0x0000534f isub  0x00000002 , 0x0000000b 
- 00021174  0x00005351 copy  0x00000013 , 0x00000007 
- 00021175  0x00005352 rtn 
- 00021176  0x00005356 bpatchx  0x0000002c , 0x00004025 
- 00021177  0x00005357 arg  0x0000007f , 0x00000011 
- 00021178  0x00005358 call  0x00005240 
- 00021179  0x00005359 store  0x00000002 , 0x0000026b 
- 00021180  0x0000535a increase  0x00000004 , 0x0000003f 
- 00021181  0x0000535b store  0x00000002 , 0x0000026d 
- 00021182  0x0000535c setarg  0x00000000 
- 00021183  0x0000535d store  0x00000002 , 0x0000026f 
- 00021184  0x0000535e rtn 
- 00021185  0x00005361 fetch  0x00000002 , 0x0000026b 
- 00021186  0x00005362 branch  0x000052e2 
- 00021187  0x00005365 fetch  0x00000002 , 0x0000026d 
- 00021188  0x00005366 branch  0x000052e2 
- 00021189  0x0000536a bpatchx  0x0000002d , 0x00004025 
- 00021190  0x0000536b arg  0x000000fa , 0x00000011 
- 00021191  0x0000536c call  0x00005240 
- 00021192  0x0000536d store  0x00000002 , 0x00000271 
- 00021193  0x0000536e increase  0x00000004 , 0x0000003f 
- 00021194  0x0000536f store  0x00000002 , 0x00000273 
- 00021195  0x00005370 setarg  0x00000000 
- 00021196  0x00005371 store  0x00000002 , 0x00000275 
- 00021197  0x00005372 rtn 
- 00021198  0x00005375 fetch  0x00000002 , 0x00000271 
- 00021199  0x00005376 branch  0x000052e2 
- 00021200  0x00005379 fetch  0x00000002 , 0x00000273 
- 00021201  0x0000537a branch  0x000052e2 
- 00021202  0x0000537e bpatchx  0x0000002e , 0x00004025 
- 00021203  0x0000537f call  0x00007e7c 
- 00021204  0x00005380 jam  0x00000001 , 0x00000284 
- 00021205  0x00005381 call  0x0000526e 
- 00021206  0x00005382 nrtn  0x00000034 
- 00021207  0x00005383 arg  0x0000007f , 0x00000011 
- 00021208  0x00005384 call  0x00005240 
- 00021209  0x00005385 store  0x00000002 , 0x00000277 
- 00021210  0x00005386 increase  0x00000004 , 0x0000003f 
- 00021211  0x00005387 store  0x00000002 , 0x00000279 
- 00021212  0x00005388 setarg  0x00000000 
- 00021213  0x00005389 store  0x00000002 , 0x0000027b 
- 00021214  0x0000538a jam  0x00000000 , 0x00000284 
- 00021215  0x0000538b branch  0x00007e8c 
- 00021216  0x0000538e fetch  0x00000002 , 0x00000277 
- 00021217  0x0000538f branch  0x000052e2 
- 00021218  0x00005392 branch  0x00002a8c , 0x00000034 
- 00021219  0x00005393 copy  0x0000003f , 0x00000005 
- 00021220  0x00005394 rtn 
- 00021221  0x00005398 bpatchx  0x0000002f , 0x00004025 
- 00021222  0x00005399 arg  0x00000000 , 0x00000012 
- 00021223  0x0000539a arg  0x00004257 , 0x00000011 
- 00021224  0x0000539b increase  0xfffffffe , 0x00000011 
- 00021225  0x0000539d increase  0x00000002 , 0x00000011 
- 00021226  0x0000539e setarg  0x00004263 
- 00021227  0x0000539f isub  0x00000011 , 0x0000003e 
- 00021228  0x000053a0 branch  0x000052f5 , 0x00000005 
- 00021229  0x000053a1 ifetch  0x00000001 , 0x00000011 
- 00021230  0x000053a2 increase  0x00000001 , 0x00000011 
- 00021231  0x000053a3 branch  0x000052e9 , 0x00000034 
- 00021232  0x000053a4 ifetcht  0x00000002 , 0x00000011 
- 00021233  0x000053a5 ifetch  0x00000002 , 0x00000002 
- 00021234  0x000053a6 iadd  0x00000012 , 0x00000012 
- 00021235  0x000053a7 increase  0x00000004 , 0x00000012 
- 00021236  0x000053a8 branch  0x000052e9 
- 00021237  0x000053aa copy  0x00000012 , 0x0000003f 
- 00021238  0x000053ab rtn 
- 00021239  0x000053af arg  0x0000000c , 0x00000007 
- 00021240  0x000053b0 branch  0x00002c32 
- 00021241  0x000053b3 arg  0x0000000c , 0x00000007 
- 00021242  0x000053b4 branch  0x00002c36 
- 00021243  0x000053b7 bpatchx  0x00000030 , 0x00004026 
- 00021244  0x000053b8 call  0x0000527e 
- 00021245  0x000053b9 fetch  0x00000001 , 0x00004256 
- 00021246  0x000053ba rtn  0x00000034 
- 00021247  0x000053bb call  0x000052e5 
- 00021248  0x000053bc arg  0x00000100 , 0x00000002 
- 00021249  0x000053bd isub  0x00000002 , 0x0000003e 
- 00021250  0x000053be branch  0x000052f7 , 0x00000002 
- 00021251  0x000053bf call  0x000052f9 
- 00021252  0x000053c0 arg  0x00004263 , 0x00000005 
- 00021253  0x000053c1 arg  0x00004257 , 0x00000011 
- 00021254  0x000053c3 setarg  0x00004263 
- 00021255  0x000053c4 isub  0x00000011 , 0x0000003e 
- 00021256  0x000053c5 rtn  0x00000005 
- 00021257  0x000053c6 ifetch  0x00000001 , 0x00000011 
- 00021258  0x000053c7 increase  0x00000001 , 0x00000011 
- 00021259  0x000053c8 nbranch  0x0000530f , 0x00000034 
- 00021260  0x000053c9 istore  0x00000002 , 0x00000005 
- 00021261  0x000053ca increase  0x00000002 , 0x00000011 
- 00021262  0x000053cb branch  0x00005306 
- 00021263  0x000053cd ifetch  0x00000002 , 0x00000011 
- 00021264  0x000053ce increase  0x00000002 , 0x00000011 
- 00021265  0x000053cf copy  0x0000003f , 0x00000006 
- 00021266  0x000053d0 ifetch  0x00000002 , 0x00000006 
- 00021267  0x000053d1 istore  0x00000002 , 0x00000005 
- 00021268  0x000053d2 copy  0x0000003f , 0x00000039 
- 00021269  0x000053d3 increase  0x00000002 , 0x00000039 
- 00021270  0x000053d4 call  0x00007f01 
- 00021271  0x000053d5 branch  0x00005306 
- 00021272  0x000053d8 bpatchx  0x00000031 , 0x00004026 
- 00021273  0x000053d9 call  0x0000527e 
- 00021274  0x000053da fetch  0x00000001 , 0x00004256 
- 00021275  0x000053db rtn  0x00000034 
- 00021276  0x000053dc arg  0x00004258 , 0x00000011 
- 00021277  0x000053dd increase  0xfffffffd , 0x00000011 
- 00021278  0x000053de arg  0x00004263 , 0x00000006 
- 00021279  0x000053e0 increase  0x00000003 , 0x00000011 
- 00021280  0x000053e1 setarg  0x00004264 
- 00021281  0x000053e2 isub  0x00000011 , 0x0000003e 
- 00021282  0x000053e3 rtn  0x00000005 
- 00021283  0x000053e4 ifetch  0x00000002 , 0x00000006 
- 00021284  0x000053e5 branch  0x0000531f , 0x00000034 
- 00021285  0x000053e6 increase  0x00000004 , 0x0000003f 
- 00021286  0x000053e7 copy  0x0000003f , 0x00000039 
- 00021287  0x000053e8 copy  0x00000006 , 0x00000012 
- 00021288  0x000053e9 ifetch  0x00000002 , 0x00000011 
- 00021289  0x000053ea copy  0x0000003f , 0x00000005 
- 00021290  0x000053eb copy  0x00000012 , 0x00000006 
- 00021291  0x000053ec increase  0xfffffffe , 0x00000006 
- 00021292  0x000053ed call  0x00007f01 
- 00021293  0x000053ee branch  0x0000531f 
- 00021294  0x000053f9 bpatchx  0x00000032 , 0x00004026 
- 00021295  0x000053fa disable  0x0000002b 
- 00021296  0x000053fb jam  0x00000001 , 0x00000455 
- 00021297  0x000053fc jam  0x00000003 , 0x0000043f 
- 00021298  0x000053fd jam  0x00000001 , 0x00000456 
- 00021299  0x000053fe setarg  0xffffffff 
- 00021300  0x000053ff store  0x00000002 , 0x00000459 
- 00021301  0x00005400 force  0x00000000 , 0x0000003f 
- 00021302  0x00005401 store  0x00000001 , 0x00000457 
- 00021303  0x00005402 store  0x00000001 , 0x00000462 
- 00021304  0x00005403 store  0x00000003 , 0x00004169 
- 00021305  0x00005404 store  0x00000003 , 0x0000416c 
- 00021306  0x00005405 store  0x00000005 , 0x00004403 
- 00021307  0x00005406 set1  0x00000027 , 0x0000003f 
- 00021308  0x00005407 store  0x00000005 , 0x00004408 
- 00021309  0x00005408 jam  0x00000001 , 0x000043dc 
- 00021310  0x00005409 jam  0x00000000 , 0x000043dd 
- 00021311  0x0000540a branch  0x000056ed 
- 00021312  0x0000540d bpatchx  0x00000033 , 0x00004026 
- 00021313  0x0000540e enable  0x00000029 
- 00021314  0x0000540f jam  0x00000003 , 0x00000440 
- 00021315  0x00005410 jam  0x00000001 , 0x00000478 
- 00021316  0x00005411 jam  0x00000001 , 0x0000445a 
- 00021317  0x00005412 setarg  0x0000ffff 
- 00021318  0x00005413 store  0x00000002 , 0x0000445c 
- 00021319  0x00005414 force  0x00000000 , 0x0000003f 
- 00021320  0x00005415 store  0x00000005 , 0x00004408 
- 00021321  0x00005416 set1  0x00000027 , 0x0000003f 
- 00021322  0x00005417 store  0x00000005 , 0x00004403 
- 00021323  0x00005418 branch  0x0000532e 
- 00021324  0x0000541c bpatchx  0x00000034 , 0x00004026 
- 00021325  0x0000541d disable  0x00000029 
- 00021326  0x0000541e setarg  0x00000017 
- 00021327  0x0000541f store  0x00000002 , 0x000044a8 
- 00021328  0x00005420 jam  0x00000001 , 0x00000440 
- 00021329  0x00005421 jam  0x00000000 , 0x0000436e 
- 00021330  0x00005422 jam  0x00000000 , 0x000000a0 
- 00021331  0x00005423 jam  0x00000000 , 0x000044c4 
- 00021332  0x00005424 jam  0x00000000 , 0x000044c5 
- 00021333  0x00005425 fetch  0x00000002 , 0x0000046d 
- 00021334  0x00005426 store  0x00000002 , 0x000044ba 
- 00021335  0x00005427 fetch  0x00000002 , 0x00000441 
- 00021336  0x00005428 mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00021337  0x00005429 rshift4  0x0000003f , 0x0000003f 
- 00021338  0x0000542a store  0x00000002 , 0x0000046d 
- 00021339  0x0000542b branch  0x0000532e 
- 00021340  0x00005432 call  0x000053c4 
- 00021341  0x00005433 call  0x000055e8 
- 00021342  0x00005434 call  0x000056f0 
- 00021343  0x00005435 branch  0x000053ce 
- 00021344  0x00005438 bpatchx  0x00000035 , 0x00004026 
- 00021345  0x00005439 call  0x000053c4 
- 00021346  0x0000543a call  0x000032f4 
- 00021347  0x0000543b fetch  0x00000001 , 0x00000440 
- 00021348  0x0000543c beq  0x00000003 , 0x00005366 
- 00021349  0x0000543d branch  0x0000537a 
- 00021350  0x00005444 bpatchx  0x00000036 , 0x00004026 
- 00021351  0x00005445 enable  0x00000029 
- 00021352  0x00005446 call  0x000056e4 
- 00021353  0x00005447 branch  0x00005377 , 0x00000002 
- 00021354  0x00005448 call  0x00002c6c 
- 00021355  0x00005449 call  0x00005413 
- 00021356  0x0000544a call  0x0000561e 
- 00021357  0x0000544b disable  0x0000002d 
- 00021358  0x0000544c call  0x000054bf 
- 00021359  0x0000544d nrtn  0x0000002d 
- 00021360  0x0000544e bpatchx  0x00000037 , 0x00004026 
- 00021361  0x0000544f fetch  0x00000001 , 0x00000005 
- 00021362  0x00005450 increase  0x00000001 , 0x0000003f 
- 00021363  0x00005451 store  0x00000001 , 0x00000005 
- 00021364  0x00005452 call  0x000055aa 
- 00021365  0x00005453 disable  0x00000029 
- 00021366  0x00005454 rtn 
- 00021367  0x00005457 call  0x000053a9 
- 00021368  0x00005458 disable  0x00000029 
- 00021369  0x00005459 rtn 
- 00021370  0x0000545f bpatchx  0x00000038 , 0x00004027 
- 00021371  0x00005460 jam  0x00000000 , 0x0000450f 
- 00021372  0x00005461 call  0x00007aaf 
- 00021373  0x00005462 call  0x00005c18 
- 00021374  0x00005463 disable  0x0000002e 
- 00021375  0x00005464 call  0x000056e4 
- 00021376  0x00005465 branch  0x000053a9 , 0x00000002 
- 00021377  0x00005466 call  0x00002c6c 
- 00021378  0x00005467 call  0x00005413 
- 00021379  0x00005468 call  0x00005489 
- 00021380  0x00005469 nbranch  0x0000539b , 0x00000018 
- 00021381  0x0000546a call  0x000053b7 
- 00021382  0x0000546b branch  0x00005388 , 0x0000002d 
- 00021383  0x0000546c branch  0x00005395 
- 00021384  0x00005470 bpatchx  0x00000039 , 0x00004027 
- 00021385  0x00005471 fetch  0x00000001 , 0x0000450f 
- 00021386  0x00005472 pincrease  0x00000001 
- 00021387  0x00005473 store  0x00000001 , 0x0000450f 
- 00021388  0x00005474 beq  0x0000000c , 0x00005395 
- 00021389  0x00005475 call  0x000055aa 
- 00021390  0x00005476 call  0x0000561e 
- 00021391  0x00005477 call  0x000054c7 
- 00021392  0x00005478 call  0x0000567e 
- 00021393  0x00005479 fetch  0x00000002 , 0x000041fb 
- 00021394  0x0000547a call  0x00007f9c 
- 00021395  0x0000547b call  0x000053a0 
- 00021396  0x0000547c branch  0x000053a4 , 0x00000028 
- 00021397  0x0000547e bpatchx  0x0000003a , 0x00004027 
- 00021398  0x0000547f call  0x00005be4 
- 00021399  0x00005480 call  0x00005bdb 
- 00021400  0x00005481 call  0x00007d9c 
- 00021401  0x00005482 fetch  0x00000001 , 0x00000462 
- 00021402  0x00005483 bbit1  0x00000003 , 0x000053a9 
- 00021403  0x00005485 bpatchx  0x0000003b , 0x00004027 
- 00021404  0x00005486 call  0x000057f4 
- 00021405  0x00005487 call  0x0000559d 
- 00021406  0x00005488 call  0x00005575 
- 00021407  0x00005489 branch  0x00002841 
- 00021408  0x0000548d disable  0x00000028 
- 00021409  0x0000548e bmark1  0x0000002a , 0x00007fe7 
- 00021410  0x0000548f bmark1  0x00000029 , 0x00007fe7 
- 00021411  0x00005490 rtn 
- 00021412  0x00005494 bpatchx  0x0000003c , 0x00004027 
- 00021413  0x00005495 enable  0x0000002e 
- 00021414  0x00005496 call  0x000054c1 
- 00021415  0x00005497 branch  0x00005388 , 0x0000002d 
- 00021416  0x00005498 branch  0x00005395 
- 00021417  0x0000549e bpatchx  0x0000003d , 0x00004027 
- 00021418  0x0000549f call  0x000053af 
- 00021419  0x000054a0 call  0x000033b4 
- 00021420  0x000054a1 call  0x00007a77 
- 00021421  0x000054a2 jam  0x00000015 , 0x00000a99 
- 00021422  0x000054a3 branch  0x00007d86 
- 00021423  0x000054a6 setarg  0x00000000 
- 00021424  0x000054a7 store  0x00000009 , 0x000044ff 
- 00021425  0x000054a8 jam  0x00000000 , 0x00000455 
- 00021426  0x000054a9 jam  0x00000000 , 0x00000440 
- 00021427  0x000054aa jam  0x00000000 , 0x0000043f 
- 00021428  0x000054ab jam  0x00000000 , 0x000044c5 
- 00021429  0x000054ac jam  0x00000000 , 0x000044c4 
- 00021430  0x000054ad rtn 
- 00021431  0x000054b0 bpatchx  0x0000003e , 0x00004027 
- 00021432  0x000054b1 fetch  0x00000001 , 0x00000005 
- 00021433  0x000054b2 increase  0x00000001 , 0x0000003f 
- 00021434  0x000054b3 store  0x00000001 , 0x00000005 
- 00021435  0x000054b4 fetch  0x00000001 , 0x0000043f 
- 00021436  0x000054b5 rtnbit1  0x00000003 
- 00021437  0x000054b6 set1  0x00000003 
- 00021438  0x000054b7 store  0x00000001 , 0x0000043f 
- 00021439  0x000054b8 fetch  0x00000002 , 0x000044ba 
- 00021440  0x000054b9 store  0x00000002 , 0x0000046d 
- 00021441  0x000054ba setarg  0x00000000 
- 00021442  0x000054bb store  0x00000004 , 0x000044e5 
- 00021443  0x000054bc rtn 
- 00021444  0x000054c0 bpatchx  0x0000003f , 0x00004027 
- 00021445  0x000054c1 jam  0x00000036 , 0x0000890f 
- 00021446  0x000054c2 jam  0x0000005f , 0x0000890b 
- 00021447  0x000054c3 enable  0x00000036 
- 00021448  0x000054c4 jam  0x00000007 , 0x00008914 
- 00021449  0x000054c5 call  0x00002c6c 
- 00021450  0x000054c6 fetch  0x00000001 , 0x000041e0 
- 00021451  0x000054c7 rtn  0x00000034 
- 00021452  0x000054c8 jam  0x000000b8 , 0x0000890a 
- 00021453  0x000054c9 rtn 
- 00021454  0x000054cc bpatchx  0x00000040 , 0x00004028 
- 00021455  0x000054cd jam  0x0000002e , 0x0000890f 
- 00021456  0x000054ce jam  0x000000ff , 0x0000890b 
- 00021457  0x000054cf disable  0x00000036 
- 00021458  0x000054d0 jam  0x00000003 , 0x00008914 
- 00021459  0x000054d1 arg  0x00000000 , 0x0000001b 
- 00021460  0x000054d2 rtn 
- 00021461  0x000054d5 disable  0x00000009 
- 00021462  0x000054d6 disable  0x00000007 
- 00021463  0x000054d7 fetch  0x00000003 , 0x00000467 
- 00021464  0x000054d8 iforce  0x0000000f 
- 00021465  0x000054d9 fetch  0x00000001 , 0x00000016 
- 00021466  0x000054da reverse  0x0000003f , 0x00000002 
- 00021467  0x000054db set1  0x00000001 , 0x00000002 
- 00021468  0x000054dc rshift  0x00000002 , 0x0000000e 
- 00021469  0x000054dd rtn 
- 00021470  0x000054e1 call  0x000053e6 
- 00021471  0x000054e2 call  0x0000291f 
- 00021472  0x000054e3 setarg  0x00000500 
- 00021473  0x000054e4 call  0x00002a8f 
- 00021474  0x000054e5 branch  0x00002924 
- 00021475  0x000054e8 branch  0x00002939 , 0x0000002d 
- 00021476  0x000054ea call  0x000053e6 
- 00021477  0x000054eb branch  0x00002933 
- 00021478  0x000054ed bpatchx  0x00000041 , 0x00004028 
- 00021479  0x000054ee call  0x00002918 
- 00021480  0x000054ef fetch  0x00000001 , 0x0000048c 
- 00021481  0x000054f0 nbranch  0x000053f9 , 0x00000034 
- 00021482  0x000054f1 fetch  0x00000001 , 0x00000016 
- 00021483  0x000054f2 sub  0x0000003f , 0x00000024 , 0x0000003e 
- 00021484  0x000054f3 branch  0x000053f3 , 0x00000002 
- 00021485  0x000054f4 force  0x00000000 , 0x00000002 
- 00021486  0x000054f5 rtneq  0x00000025 
- 00021487  0x000054f6 force  0x00000018 , 0x00000002 
- 00021488  0x000054f7 rtneq  0x00000026 
- 00021489  0x000054f8 force  0x0000004e , 0x00000002 
- 00021490  0x000054f9 rtn 
- 00021491  0x000054fc sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00021492  0x000054fd branch  0x000053f6 , 0x00000002 
- 00021493  0x000054fe increase  0x00000001 , 0x0000003f 
- 00021494  0x00005501 lshift  0x0000003f , 0x0000003f 
- 00021495  0x00005502 add  0x0000003f , 0x00000002 , 0x00000002 
- 00021496  0x00005503 rtn 
- 00021497  0x00005506 fetch  0x00000001 , 0x00000016 
- 00021498  0x00005507 lshift  0x0000003f , 0x00000002 
- 00021499  0x00005508 rtn 
- 00021500  0x0000550b arg  0x000001f4 , 0x00000002 
- 00021501  0x0000550c rtn  0x00000034 
- 00021502  0x0000550d arg  0x000000fa , 0x00000002 
- 00021503  0x0000550e rtneq  0x00000001 
- 00021504  0x0000550f arg  0x00000096 , 0x00000002 
- 00021505  0x00005510 rtneq  0x00000002 
- 00021506  0x00005511 arg  0x00000064 , 0x00000002 
- 00021507  0x00005512 rtneq  0x00000003 
- 00021508  0x00005513 arg  0x0000004b , 0x00000002 
- 00021509  0x00005514 rtneq  0x00000004 
- 00021510  0x00005515 arg  0x00000032 , 0x00000002 
- 00021511  0x00005516 rtneq  0x00000005 
- 00021512  0x00005517 arg  0x00000028 , 0x00000002 
- 00021513  0x00005518 rtneq  0x00000006 
- 00021514  0x00005519 arg  0x00000014 , 0x00000002 
- 00021515  0x0000551a rtn 
- 00021516  0x0000551f setarg  0x008e89be 
- 00021517  0x00005520 lshift8  0x0000003f , 0x0000003f 
- 00021518  0x00005521 or_into  0x000000d6 , 0x0000003f 
- 00021519  0x00005522 iforce  0x00000009 
- 00021520  0x00005523 setarg  0x00555555 
- 00021521  0x00005524 store  0x00000003 , 0x00000467 
- 00021522  0x00005525 rtn 
- 00021523  0x00005528 bpatchx  0x00000042 , 0x00004028 
- 00021524  0x00005529 enable  0x00000010 
- 00021525  0x0000552a fetch  0x00000004 , 0x00000463 
- 00021526  0x0000552b iforce  0x00000009 
- 00021527  0x0000552c call  0x00005466 
- 00021528  0x0000552d setarg  0x00000200 
- 00021529  0x0000552e branch  0x0000541c , 0x00000029 
- 00021530  0x0000552f fetch  0x00000002 , 0x0000044d 
- 00021531  0x00005530 rshift  0x0000003f , 0x0000003f 
- 00021532  0x00005532 arg  0x00000500 , 0x00000002 
- 00021533  0x00005533 iadd  0x00000002 , 0x0000003f 
- 00021534  0x00005534 call  0x00002a24 
- 00021535  0x00005535 deposit  0x0000001a 
- 00021536  0x00005536 store  0x00000006 , 0x00000491 
- 00021537  0x00005537 rtn 
- 00021538  0x0000553a bpatchx  0x00000043 , 0x00004028 
- 00021539  0x0000553b fetch  0x00000001 , 0x00000016 
- 00021540  0x0000553c beq  0x00000025 , 0x00005428 
- 00021541  0x0000553d beq  0x00000026 , 0x0000542e 
- 00021542  0x0000553e beq  0x00000027 , 0x00005434 
- 00021543  0x0000553f branch  0x00005434 
- 00021544  0x00005542 fetcht  0x00000001 , 0x0000448d 
- 00021545  0x00005543 isolate1  0x00000001 , 0x00000002 
- 00021546  0x00005544 branch  0x0000543f , 0x00000001 
- 00021547  0x00005545 isolate1  0x00000002 , 0x00000002 
- 00021548  0x00005546 branch  0x00005444 , 0x00000001 
- 00021549  0x00005547 branch  0x0000543a 
- 00021550  0x0000554b fetcht  0x00000001 , 0x0000448d 
- 00021551  0x0000554c isolate1  0x00000002 , 0x00000002 
- 00021552  0x0000554d branch  0x00005444 , 0x00000001 
- 00021553  0x0000554e isolate1  0x00000000 , 0x00000002 
- 00021554  0x0000554f branch  0x0000543a , 0x00000001 
- 00021555  0x00005550 branch  0x0000543f 
- 00021556  0x00005554 fetcht  0x00000001 , 0x0000448d 
- 00021557  0x00005555 isolate1  0x00000000 , 0x00000002 
- 00021558  0x00005556 branch  0x0000543a , 0x00000001 
- 00021559  0x00005557 isolate1  0x00000001 , 0x00000002 
- 00021560  0x00005558 branch  0x0000543f , 0x00000001 
- 00021561  0x00005559 branch  0x00005444 
- 00021562  0x0000555e jam  0x00000025 , 0x00000016 
- 00021563  0x0000555f fetch  0x00000001 , 0x00000ac2 
- 00021564  0x00005560 set1  0x00000000 , 0x0000003f 
- 00021565  0x00005561 store  0x00000001 , 0x00000ac2 
- 00021566  0x00005562 rtn 
- 00021567  0x00005565 jam  0x00000026 , 0x00000016 
- 00021568  0x00005566 fetch  0x00000001 , 0x00000ac2 
- 00021569  0x00005567 set1  0x00000001 , 0x0000003f 
- 00021570  0x00005568 store  0x00000001 , 0x00000ac2 
- 00021571  0x00005569 rtn 
- 00021572  0x0000556c jam  0x00000027 , 0x00000016 
- 00021573  0x0000556d fetch  0x00000001 , 0x00000ac2 
- 00021574  0x0000556e set1  0x00000002 , 0x0000003f 
- 00021575  0x0000556f store  0x00000001 , 0x00000ac2 
- 00021576  0x00005570 rtn 
- 00021577  0x00005575 bpatchx  0x00000044 , 0x00004028 
- 00021578  0x00005576 add  0x00000011 , 0x00000001 , 0x00000006 
- 00021579  0x00005577 ifetch  0x00000001 , 0x00000006 
- 00021580  0x00005578 rtnbit0  0x00000000 
- 00021581  0x00005579 add  0x00000011 , 0x0000001a , 0x00000005 
- 00021582  0x0000557a ifetch  0x00000002 , 0x00000005 
- 00021583  0x0000557b increase  0x00000001 , 0x0000003f 
- 00021584  0x0000557c istore  0x00000002 , 0x00000005 
- 00021585  0x0000557d add  0x00000011 , 0x00000019 , 0x00000006 
- 00021586  0x0000557e ifetch  0x00000001 , 0x00000006 
- 00021587  0x0000557f add  0x00000011 , 0x00000018 , 0x00000005 
- 00021588  0x00005580 ifetcht  0x00000001 , 0x00000005 
- 00021589  0x00005581 iadd  0x00000002 , 0x0000003f 
- 00021590  0x00005582 sub  0x0000003f , 0x00000024 , 0x0000003e 
- 00021591  0x00005583 branch  0x00005459 , 0x00000002 
- 00021592  0x00005584 increase  0xffffffdb , 0x0000003f 
- 00021593  0x00005586 istore  0x00000001 , 0x00000005 
- 00021594  0x00005587 rtn 
- 00021595  0x0000558b bpatchx  0x00000045 , 0x00004028 
- 00021596  0x0000558c fetch  0x00000005 , 0x0000046f 
- 00021597  0x0000558d force  0x00000000 , 0x00000002 
- 00021598  0x0000558e force  0x00000025 , 0x00000039 
- 00021599  0x00005590 bbit0  0x00000000 , 0x00005461 
- 00021600  0x00005591 increase  0x00000001 , 0x00000002 
- 00021601  0x00005593 rshift  0x0000003f , 0x0000003f 
- 00021602  0x00005594 loop  0x0000545f 
- 00021603  0x00005595 add  0x00000002 , 0xffffffff , 0x0000003f 
- 00021604  0x00005596 store  0x00000001 , 0x00000461 
- 00021605  0x00005597 rtn 
- 00021606  0x0000559a bpatchx  0x00000046 , 0x00004028 
- 00021607  0x0000559b fetch  0x00000001 , 0x00000457 
- 00021608  0x0000559c iforce  0x00000007 
- 00021609  0x0000559d fetcht  0x00000005 , 0x0000046f 
- 00021610  0x0000559e qisolate1  0x00000002 
- 00021611  0x0000559f branch  0x0000547c , 0x00000001 
- 00021612  0x000055a1 bpatchx  0x00000047 , 0x00004028 
- 00021613  0x000055a2 fetch  0x00000001 , 0x00000461 
- 00021614  0x000055a3 isub  0x00000007 , 0x0000003f 
- 00021615  0x000055a4 branch  0x00005472 , 0x00000002 
- 00021616  0x000055a5 sub  0x0000003f , 0xffffffff , 0x00000007 
- 00021617  0x000055a6 branch  0x0000546c 
- 00021618  0x000055a8 copy  0x00000007 , 0x00000039 
- 00021619  0x000055a9 force  0x00000000 , 0x00000007 
- 00021620  0x000055ab qisolate1  0x00000002 
- 00021621  0x000055ac branch  0x00005477 , 0x00000001 
- 00021622  0x000055ad increase  0x00000001 , 0x00000039 
- 00021623  0x000055af deposit  0x00000039 
- 00021624  0x000055b0 branch  0x0000547c , 0x00000034 
- 00021625  0x000055b1 increase  0x00000001 , 0x00000007 
- 00021626  0x000055b2 increase  0xffffffff , 0x00000039 
- 00021627  0x000055b3 branch  0x00005474 
- 00021628  0x000055b5 deposit  0x00000007 
- 00021629  0x000055b6 store  0x00000001 , 0x00000016 
- 00021630  0x000055b7 rtn 
- 00021631  0x000055bb branch  0x00005482 , 0x00000029 
- 00021632  0x000055bc until  0x0000003e , 0x00000003 
- 00021633  0x000055bd rtn 
- 00021634  0x000055c0 arg  0x00000ea0 , 0x0000000b 
- 00021635  0x000055c1 until  0x00000023 , 0x00000026 
- 00021636  0x000055c2 rtn 
- 00021637  0x000055c5 disable  0x00000010 
- 00021638  0x000055c6 fetch  0x00000002 , 0x0000436c 
- 00021639  0x000055c7 copy  0x0000003f , 0x0000000b 
- 00021640  0x000055c8 branch  0x0000548e 
- 00021641  0x000055cc bpatchx  0x00000048 , 0x00004029 
- 00021642  0x000055cd enable  0x00000010 
- 00021643  0x000055ce fetch  0x00000002 , 0x0000044d 
- 00021644  0x000055cf fetcht  0x00000004 , 0x000044e5 
- 00021645  0x000055d0 iadd  0x00000002 , 0x0000000b 
- 00021646  0x000055d2 call  0x000053de 
- 00021647  0x000055d4 bpatchx  0x00000049 , 0x00004029 
- 00021648  0x000055d5 call  0x000053d5 
- 00021649  0x000055d6 disable  0x0000002d 
- 00021650  0x000055d7 enable  0x0000000d 
- 00021651  0x000055d8 enable  0x00000021 
- 00021652  0x000055d9 disable  0x00000020 
- 00021653  0x000055da copy  0x0000000b , 0x0000001b 
- 00021654  0x000055db correlate  0x0000003e , 0x00000003 
- 00021655  0x000055dc branch  0x0000549a , 0x0000002e 
- 00021656  0x000055dd copy  0x0000001a , 0x00000002 
- 00021657  0x000055de storet  0x00000006 , 0x0000009a 
- 00021658  0x000055e0 nbranch  0x0000264d , 0x00000018 
- 00021659  0x000055e1 branch  0x000054a1 , 0x0000002e 
- 00021660  0x000055e2 arg  0x000001e0 , 0x00000029 
- 00021661  0x000055e3 copy  0x00000021 , 0x00000028 
- 00021662  0x000055e4 fetch  0x00000001 , 0x0000043f 
- 00021663  0x000055e5 bbit0  0x00000003 , 0x000054a1 
- 00021664  0x000055e6 call  0x00002b05 , 0x0000002b 
- 00021665  0x000055e8 bpatchx  0x0000004a , 0x00004029 
- 00021666  0x000055e9 call  0x000029bb 
- 00021667  0x000055ea enable  0x00000007 
- 00021668  0x000055eb enable  0x00000009 
- 00021669  0x000055ec parse  0x00000003 , 0x00000000 , 0x00000008 
- 00021670  0x000055ed rshift3  0x0000000c , 0x0000003f 
- 00021671  0x000055ee store  0x00000001 , 0x000002d9 
- 00021672  0x000055ef parse  0x00000003 , 0x00000000 , 0x00000008 
- 00021673  0x000055f0 rshift3  0x0000000c , 0x0000003f 
- 00021674  0x000055f1 istore  0x00000001 , 0x00000005 
- 00021675  0x000055f2 and  0x0000003f , 0x0000003f , 0x00000039 
- 00021676  0x000055f3 branch  0x000054b1 , 0x00000005 
- 00021677  0x000055f6 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00021678  0x000055f7 rshift3  0x0000000c , 0x0000003f 
- 00021679  0x000055f8 istore  0x00000001 , 0x00000005 
- 00021680  0x000055f9 loop  0x000054ad 
- 00021681  0x000055fc bpatchx  0x0000004b , 0x00004029 
- 00021682  0x000055fd parse  0x00000003 , 0x00000000 , 0x00000018 
- 00021683  0x000055fe enable  0x00000010 
- 00021684  0x000055ff arg  0x00000664 , 0x0000001b 
- 00021685  0x00005600 rshift32  0x0000003f , 0x0000003f 
- 00021686  0x00005601 rshift16  0x0000003f , 0x0000003f 
- 00021687  0x00005602 istore  0x00000003 , 0x00000005 
- 00021688  0x00005603 branch  0x0000264d , 0x00000006 
- 00021689  0x00005604 enable  0x0000002d 
- 00021690  0x00005605 fetch  0x00000001 , 0x00000017 
- 00021691  0x00005606 add  0x0000003f , 0x00000000 , 0x00000011 
- 00021692  0x00005607 call  0x00002981 
- 00021693  0x00005608 disable  0x0000000d 
- 00021694  0x00005609 branch  0x00002918 
- 00021695  0x0000560c bpatchx  0x0000004c , 0x00004029 
- 00021696  0x0000560d call  0x000054c9 
- 00021697  0x0000560f fetcht  0x00000001 , 0x00000017 
- 00021698  0x00005610 call  0x0000291f 
- 00021699  0x00005611 call  0x00002924 
- 00021700  0x00005612 enable  0x00000010 
- 00021701  0x00005613 arg  0x0000157c , 0x0000000b 
- 00021702  0x00005614 branch  0x0000548f 
- 00021703  0x00005617 call  0x000054c9 
- 00021704  0x00005618 branch  0x0000264d 
- 00021705  0x0000561b bpatchx  0x0000004d , 0x00004029 
- 00021706  0x0000561c call  0x000053d5 
- 00021707  0x0000561d call  0x000053e3 
- 00021708  0x0000561e branch  0x000054cd 
- 00021709  0x00005621 set1  0x00000000 , 0x00000015 
- 00021710  0x00005622 enable  0x0000001d 
- 00021711  0x00005623 enable  0x00000020 
- 00021712  0x00005624 disable  0x00000021 
- 00021713  0x00005625 call  0x0000547f 
- 00021714  0x00005626 rshift16  0x00000009 , 0x0000003f 
- 00021715  0x00005627 rshift8  0x0000003f , 0x0000003f 
- 00021716  0x00005628 rshift4  0x0000003f , 0x0000003f 
- 00021717  0x00005629 inject  0x00000003 , 0x00000028 
- 00021718  0x0000562a enable  0x00000007 
- 00021719  0x0000562b enable  0x00000009 
- 00021720  0x0000562c bpatchx  0x0000004e , 0x00004029 
- 00021721  0x0000562d fetch  0x00000001 , 0x000043dc 
- 00021722  0x0000562e inject  0x00000003 , 0x00000008 
- 00021723  0x0000562f ifetch  0x00000001 , 0x00000006 
- 00021724  0x00005630 and  0x0000003f , 0x0000003f , 0x00000039 
- 00021725  0x00005631 inject  0x00000003 , 0x00000008 
- 00021726  0x00005632 branch  0x000054e2 , 0x00000005 
- 00021727  0x00005634 ifetch  0x00000001 , 0x00000006 
- 00021728  0x00005635 inject  0x00000003 , 0x00000008 
- 00021729  0x00005636 loop  0x000054df 
- 00021730  0x00005639 enable  0x00000008 
- 00021731  0x0000563a inject  0x00000003 , 0x00000018 
- 00021732  0x0000563b disable  0x00000008 
- 00021733  0x0000563c until  0x0000003e , 0x00000027 
- 00021734  0x0000563d nop  0x00000064 
- 00021735  0x0000563e disable  0x0000001d 
- 00021736  0x0000563f rtn 
- 00021737  0x00005642 bpatchx  0x0000004f , 0x00004029 
- 00021738  0x00005643 fetch  0x00000001 , 0x00004484 
- 00021739  0x00005644 beq  0x00000001 , 0x000054f9 
- 00021740  0x00005645 fetch  0x00000001 , 0x00004485 
- 00021741  0x00005646 lshift4  0x0000003f , 0x0000003f 
- 00021742  0x00005647 lshift2  0x0000003f , 0x0000003f 
- 00021743  0x00005648 store  0x00000001 , 0x000043dc 
- 00021744  0x00005649 fetcht  0x00000001 , 0x0000436f 
- 00021745  0x0000564a add  0x00000002 , 0x00000006 , 0x0000003f 
- 00021746  0x0000564b store  0x00000001 , 0x000043dd 
- 00021747  0x0000564c fetch  0x00000006 , 0x000044a0 
- 00021748  0x0000564d store  0x00000006 , 0x000043de 
- 00021749  0x0000564e copy  0x00000002 , 0x00000039 
- 00021750  0x0000564f arg  0x00004370 , 0x00000006 
- 00021751  0x00005650 call  0x00007ef4 
- 00021752  0x00005651 branch  0x00005504 
- 00021753  0x00005653 fetch  0x00000001 , 0x00004486 
- 00021754  0x00005654 lshift4  0x0000003f , 0x0000003f 
- 00021755  0x00005655 lshift2  0x0000003f , 0x0000003f 
- 00021756  0x00005656 increase  0x00000001 , 0x0000003f 
- 00021757  0x00005657 store  0x00000001 , 0x000043dc 
- 00021758  0x00005658 setarg  0x0000000c 
- 00021759  0x00005659 store  0x00000001 , 0x000043dd 
- 00021760  0x0000565a fetch  0x00000006 , 0x000044a0 
- 00021761  0x0000565b store  0x00000006 , 0x000043de 
- 00021762  0x0000565c fetch  0x00000006 , 0x000041d0 
- 00021763  0x0000565d istore  0x00000006 , 0x00000005 
- 00021764  0x0000565f bpatchx  0x00000050 , 0x0000402a 
- 00021765  0x00005660 fetch  0x00000001 , 0x00000000 
- 00021766  0x00005661 increase  0x00000001 , 0x0000003f 
- 00021767  0x00005662 store  0x00000001 , 0x00000000 
- 00021768  0x00005663 arg  0x00000708 , 0x0000001b 
- 00021769  0x00005664 disable  0x0000002d 
- 00021770  0x00005665 branch  0x000054bf 
- 00021771  0x00005668 bpatchx  0x00000051 , 0x0000402a 
- 00021772  0x00005669 fetch  0x00000001 , 0x0000449e 
- 00021773  0x0000566a rtnne  0x00000001 
- 00021774  0x0000566b fetch  0x00000001 , 0x00000000 
- 00021775  0x0000566c increase  0x00000001 , 0x0000003f 
- 00021776  0x0000566d store  0x00000001 , 0x00000000 
- 00021777  0x0000566e arg  0x00000c03 , 0x00000002 
- 00021778  0x0000566f fetch  0x00000001 , 0x0000449f 
- 00021779  0x00005670 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
- 00021780  0x00005671 copy  0x00000011 , 0x0000003f 
- 00021781  0x00005672 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
- 00021782  0x00005673 storet  0x00000002 , 0x000043dc 
- 00021783  0x00005674 fetch  0x00000006 , 0x000044a0 
- 00021784  0x00005675 istore  0x00000006 , 0x00000005 
- 00021785  0x00005676 fetch  0x00000006 , 0x0000044f 
- 00021786  0x00005677 istore  0x00000006 , 0x00000005 
- 00021787  0x00005678 branch  0x000054bf 
- 00021788  0x0000567c bpatchx  0x00000052 , 0x0000402a 
- 00021789  0x0000567d arg  0x00000004 , 0x00000002 
- 00021790  0x0000567e fetch  0x00000001 , 0x00004485 
- 00021791  0x0000567f nsetflag  0x00000034 , 0x00000006 , 0x00000002 
- 00021792  0x00005680 storet  0x00000001 , 0x000043dc 
- 00021793  0x00005681 fetcht  0x00000001 , 0x0000438f 
- 00021794  0x00005682 add  0x00000002 , 0x00000006 , 0x0000003f 
- 00021795  0x00005683 store  0x00000001 , 0x000043dd 
- 00021796  0x00005684 fetch  0x00000006 , 0x000044a0 
- 00021797  0x00005685 store  0x00000006 , 0x000043de 
- 00021798  0x00005686 arg  0x00004390 , 0x00000006 
- 00021799  0x00005687 copy  0x00000002 , 0x00000039 
- 00021800  0x00005688 call  0x00007ef4 
- 00021801  0x00005689 call  0x000054c7 
- 00021802  0x0000568a branch  0x00005706 
- 00021803  0x0000568d bpatchx  0x00000053 , 0x0000402a 
- 00021804  0x0000568e force  0xffffffff , 0x0000003f 
- 00021805  0x0000568f setsect  0x00000002 , 0x00000001 
- 00021806  0x00005690 store  0x00000005 , 0x0000046f 
- 00021807  0x00005691 call  0x0000545b 
- 00021808  0x00005692 force  0x00000004 , 0x00000039 
- 00021809  0x00005693 arg  0x00000463 , 0x00000005 
- 00021810  0x00005694 call  0x0000630d 
- 00021811  0x00005695 fetch  0x00000002 , 0x0000449c 
- 00021812  0x00005696 store  0x00000002 , 0x0000046d 
- 00021813  0x00005698 random  0x0000003f 
- 00021814  0x00005699 and_into  0x0000000f , 0x0000003f 
- 00021815  0x0000569a sub  0x0000003f , 0x00000004 , 0x0000003e 
- 00021816  0x0000569b branch  0x00005535 , 0x00000002 
- 00021817  0x0000569c store  0x00000001 , 0x00000458 
- 00021818  0x0000569d store  0x00000001 , 0x000006e6 
- 00021819  0x0000569e bpatchx  0x00000054 , 0x0000402a 
- 00021820  0x0000569f fetcht  0x00000002 , 0x00004367 
- 00021821  0x000056a0 storet  0x00000002 , 0x00000441 
- 00021822  0x000056a1 copy  0x00000002 , 0x00000013 
- 00021823  0x000056a2 add  0x00000022 , 0x00000007 , 0x0000003f 
- 00021824  0x000056a3 idiv  0x00000013 
- 00021825  0x000056a4 call  0x00007f86 
- 00021826  0x000056a5 remainder  0x00000011 
- 00021827  0x000056a6 isub  0x00000011 , 0x0000003f 
- 00021828  0x000056a7 iadd  0x00000013 , 0x0000003f 
- 00021829  0x000056a8 fetcht  0x00000002 , 0x00004365 
- 00021830  0x000056a9 iadd  0x00000002 , 0x0000003f 
- 00021831  0x000056aa store  0x00000004 , 0x00000443 
- 00021832  0x000056ab isub  0x00000022 , 0x00000011 
- 00021833  0x000056ac increase  0xfffffffa , 0x00000011 
- 00021834  0x000056ad arg  0x00002205 , 0x00000012 
- 00021835  0x000056ae fetch  0x00000001 , 0x00004495 
- 00021836  0x000056af nsetflag  0x00000034 , 0x00000006 , 0x00000012 
- 00021837  0x000056b0 fetch  0x00000001 , 0x0000448e 
- 00021838  0x000056b1 nsetflag  0x00000034 , 0x00000007 , 0x00000012 
- 00021839  0x000056b2 copy  0x00000012 , 0x0000003f 
- 00021840  0x000056b3 store  0x00000002 , 0x000043dc 
- 00021841  0x000056b4 fetch  0x00000006 , 0x000044a0 
- 00021842  0x000056b5 istore  0x00000006 , 0x00000005 
- 00021843  0x000056b6 fetch  0x00000006 , 0x0000044f 
- 00021844  0x000056b7 istore  0x00000006 , 0x00000005 
- 00021845  0x000056b8 fetch  0x00000004 , 0x00000463 
- 00021846  0x000056b9 istore  0x00000004 , 0x00000005 
- 00021847  0x000056ba random  0x0000003f 
- 00021848  0x000056bb istore  0x00000002 , 0x00000005 
- 00021849  0x000056bc random  0x0000003f 
- 00021850  0x000056bd istore  0x00000001 , 0x00000005 
- 00021851  0x000056be force  0x00000002 , 0x0000003f 
- 00021852  0x000056bf istore  0x00000001 , 0x00000005 
- 00021853  0x000056c0 rshift2  0x00000011 , 0x0000003f 
- 00021854  0x000056c1 istore  0x00000002 , 0x00000005 
- 00021855  0x000056c2 rshift2  0x00000013 , 0x0000003f 
- 00021856  0x000056c3 istore  0x00000002 , 0x00000005 
- 00021857  0x000056c4 bpatchx  0x00000055 , 0x0000402a 
- 00021858  0x000056c5 setarg  0x00000000 
- 00021859  0x000056c6 istore  0x00000002 , 0x00000005 
- 00021860  0x000056c7 fetch  0x00000002 , 0x0000449c 
- 00021861  0x000056c8 istore  0x00000002 , 0x00000005 
- 00021862  0x000056c9 fetch  0x00000005 , 0x0000046f 
- 00021863  0x000056ca istore  0x00000005 , 0x00000005 
- 00021864  0x000056cb fetch  0x00000001 , 0x00000458 
- 00021865  0x000056cc arg  0x000000a0 , 0x00000002 
- 00021866  0x000056cd ior  0x00000002 , 0x0000003f 
- 00021867  0x000056ce istore  0x00000001 , 0x00000005 
- 00021868  0x000056cf call  0x000054c7 
- 00021869  0x000056d0 setarg  0x000043dc 
- 00021870  0x000056d1 add  0x0000003f , 0x00000012 , 0x00000006 
- 00021871  0x000056d2 ifetch  0x00000003 , 0x00000006 
- 00021872  0x000056d3 store  0x00000003 , 0x00000467 
- 00021873  0x000056d4 rtn 
- 00021874  0x000056d7 bpatchx  0x00000056 , 0x0000402a 
- 00021875  0x000056d8 disable  0x00000029 
- 00021876  0x000056d9 branch  0x0000540c 
- 00021877  0x000056de fetch  0x00000001 , 0x0000043f 
- 00021878  0x000056df rtnbit0  0x00000005 
- 00021879  0x000056e0 fetch  0x00000002 , 0x00000459 
- 00021880  0x000056e1 fetcht  0x00000002 , 0x0000045f 
- 00021881  0x000056e2 isub  0x00000002 , 0x0000003f 
- 00021882  0x000056e3 nrtn  0x00000002 
- 00021883  0x000056e4 store  0x00000002 , 0x00000a9a 
- 00021884  0x000056e5 bpatchx  0x00000057 , 0x0000402a 
- 00021885  0x000056e6 fetch  0x00000001 , 0x0000043f 
- 00021886  0x000056e7 set0  0x00000005 , 0x0000003f 
- 00021887  0x000056e8 set0  0x00000003 , 0x0000003f 
- 00021888  0x000056e9 store  0x00000001 , 0x0000043f 
- 00021889  0x000056ea fetch  0x00000004 , 0x00000443 
- 00021890  0x000056eb fetcht  0x00000002 , 0x00000441 
- 00021891  0x000056ec storet  0x00000002 , 0x00000aa2 
- 00021892  0x000056ed isub  0x00000002 , 0x00000011 
- 00021893  0x000056ee bpatchx  0x00000058 , 0x0000402b 
- 00021894  0x000056ef fetch  0x00000001 , 0x000043d3 
- 00021895  0x000056f0 store  0x00000001 , 0x0000046a 
- 00021896  0x000056f1 ifetcht  0x00000002 , 0x00000006 
- 00021897  0x000056f2 ifetch  0x00000002 , 0x00000006 
- 00021898  0x000056f3 lshift2  0x0000003f , 0x0000003f 
- 00021899  0x000056f4 store  0x00000002 , 0x00000441 
- 00021900  0x000056f5 lshift2  0x00000002 , 0x00000002 
- 00021901  0x000056f6 iadd  0x00000002 , 0x0000003f 
- 00021902  0x000056f7 ifetcht  0x00000004 , 0x00000006 
- 00021903  0x000056f8 storet  0x00000004 , 0x0000046b 
- 00021904  0x000056f9 iadd  0x00000011 , 0x0000003f 
- 00021905  0x000056fa copy  0x0000003f , 0x00000014 
- 00021906  0x000056fb fetch  0x00000002 , 0x00000441 
- 00021907  0x000056fc fetcht  0x00000002 , 0x00000aa2 
- 00021908  0x000056fd isub  0x00000002 , 0x0000003f 
- 00021909  0x000056fe fetcht  0x00000002 , 0x00000a9a 
- 00021910  0x000056ff imul32  0x00000002 , 0x0000003f 
- 00021911  0x00005700 iadd  0x00000014 , 0x0000003f 
- 00021912  0x00005701 store  0x00000004 , 0x00000443 
- 00021913  0x00005702 call  0x00005713 
- 00021914  0x00005703 fetch  0x00000002 , 0x0000046d 
- 00021915  0x00005704 store  0x00000002 , 0x000044ba 
- 00021916  0x00005705 rtn 
- 00021917  0x00005709 bpatchx  0x00000059 , 0x0000402b 
- 00021918  0x0000570a fetch  0x00000001 , 0x0000043f 
- 00021919  0x0000570b rtnbit0  0x00000006 
- 00021920  0x0000570c fetch  0x00000002 , 0x00000459 
- 00021921  0x0000570d fetcht  0x00000002 , 0x0000045f 
- 00021922  0x0000570e isub  0x00000002 , 0x0000003f 
- 00021923  0x0000570f nrtn  0x00000002 
- 00021924  0x00005710 fetch  0x00000001 , 0x0000043f 
- 00021925  0x00005711 set0  0x00000006 , 0x0000003f 
- 00021926  0x00005712 store  0x00000001 , 0x0000043f 
- 00021927  0x00005713 fetch  0x00000005 , 0x000043ce 
- 00021928  0x00005714 store  0x00000005 , 0x0000046f 
- 00021929  0x00005715 branch  0x0000545b 
- 00021930  0x00005719 bpatchx  0x0000005a , 0x0000402b 
- 00021931  0x0000571a call  0x000056ed 
- 00021932  0x0000571b call  0x000055c0 
- 00021933  0x0000571c fetch  0x00000001 , 0x000002d9 
- 00021934  0x0000571d isolate1  0x00000004 , 0x0000003f 
- 00021935  0x0000571e setflag  0x00000001 , 0x0000002a , 0x00000000 
- 00021936  0x0000571f rshift  0x0000003f , 0x0000003f 
- 00021937  0x00005720 ixor  0x00000002 , 0x0000003f 
- 00021938  0x00005721 isolate1  0x00000002 , 0x0000003f 
- 00021939  0x00005722 setflag  0x00000001 , 0x0000000f , 0x00000000 
- 00021940  0x00005723 rtnmark1  0x0000000f 
- 00021941  0x00005724 fetch  0x00000001 , 0x000002da 
- 00021942  0x00005725 branch  0x000055bc , 0x00000034 
- 00021943  0x00005726 fetch  0x00000001 , 0x0000043f 
- 00021944  0x00005727 bbit0  0x00000004 , 0x000055bc 
- 00021945  0x00005728 call  0x0000748d 
- 00021946  0x00005729 call  0x000073fb 
- 00021947  0x0000572a nrtn  0x00000034 
- 00021948  0x0000572c fetcht  0x00000001 , 0x00000456 
- 00021949  0x0000572d setflip  0x00000002 , 0x00000002 
- 00021950  0x0000572e storet  0x00000001 , 0x00000456 
- 00021951  0x0000572f rtn 
- 00021952  0x00005733 bpatchx  0x0000005b , 0x0000402b 
- 00021953  0x00005734 fetcht  0x00000001 , 0x00000456 
- 00021954  0x00005735 isolate0  0x00000005 , 0x00000002 
- 00021955  0x00005736 rtn  0x00000001 
- 00021956  0x00005737 fetch  0x00000001 , 0x000002d9 
- 00021957  0x00005738 lshift  0x0000003f , 0x0000003f 
- 00021958  0x00005739 ixor  0x00000002 , 0x0000003f 
- 00021959  0x0000573a rtnbit0  0x00000003 
- 00021960  0x0000573b set0  0x00000005 , 0x00000002 
- 00021961  0x0000573c setflip  0x00000003 , 0x00000002 
- 00021962  0x0000573d storet  0x00000001 , 0x00000456 
- 00021963  0x0000573e compare  0x00000003 , 0x00000002 , 0x00000003 
- 00021964  0x0000573f nrtn  0x00000001 
- 00021965  0x00005740 fetch  0x00000001 , 0x000043de 
- 00021966  0x00005741 beq  0x00000005 , 0x000055d2 
- 00021967  0x00005742 fetch  0x00000001 , 0x000044c5 
- 00021968  0x00005743 beq  0x00000002 , 0x000055d6 
- 00021969  0x00005744 rtn 
- 00021970  0x00005748 fetch  0x00000001 , 0x0000043f 
- 00021971  0x00005749 set1  0x00000004 , 0x0000003f 
- 00021972  0x0000574a store  0x00000001 , 0x0000043f 
- 00021973  0x0000574b rtn 
- 00021974  0x0000574e bpatchx  0x0000005c , 0x0000402b 
- 00021975  0x0000574f jam  0x00000000 , 0x000044c5 
- 00021976  0x00005750 arg  0x00000000 , 0x0000003f 
- 00021977  0x00005751 store  0x00000004 , 0x0000440d 
- 00021978  0x00005752 store  0x00000005 , 0x00004403 
- 00021979  0x00005753 set1  0x00000027 , 0x0000003f 
- 00021980  0x00005754 store  0x00000005 , 0x00004408 
- 00021981  0x00005755 fetch  0x00000001 , 0x0000043f 
- 00021982  0x00005756 set0  0x00000004 , 0x0000003f 
- 00021983  0x00005757 store  0x00000001 , 0x0000043f 
- 00021984  0x00005758 rtn 
- 00021985  0x0000575c bpatchx  0x0000005d , 0x0000402b 
- 00021986  0x0000575d call  0x00005422 
- 00021987  0x0000575e call  0x00005485 
- 00021988  0x0000575f fetch  0x00000001 , 0x00000001 
- 00021989  0x00005760 increase  0x00000001 , 0x0000003f 
- 00021990  0x00005761 store  0x00000001 , 0x00000001 
- 00021991  0x00005762 rtn 
- 00021992  0x00005766 bpatchx  0x0000005e , 0x0000402b 
- 00021993  0x00005767 fetch  0x00000001 , 0x00004369 
- 00021994  0x00005768 rtnne  0x00000001 
- 00021995  0x00005769 arg  0x00000002 , 0x00000007 
- 00021996  0x0000576a call  0x00007f16 
- 00021997  0x0000576b nrtn  0x00000034 
- 00021998  0x0000576c fetch  0x00000002 , 0x0000436a 
- 00021999  0x0000576d fetcht  0x00000002 , 0x0000436c 
- 00022000  0x0000576e isub  0x00000002 , 0x0000003f 
- 00022001  0x0000576f arg  0x00000002 , 0x00000007 
- 00022002  0x00005770 call  0x00007f08 
- 00022003  0x00005771 disable  0x00000029 
- 00022004  0x00005772 call  0x00005572 
- 00022005  0x00005773 call  0x000055e1 
- 00022006  0x00005774 nrtn  0x0000002d 
- 00022007  0x00005775 bpatchx  0x0000005f , 0x0000402b 
- 00022008  0x00005776 fetch  0x00000006 , 0x000002db 
- 00022009  0x00005777 store  0x00000006 , 0x0000044f 
- 00022010  0x0000577a fetch  0x00000001 , 0x00000002 
- 00022011  0x0000577b increase  0x00000001 , 0x0000003f 
- 00022012  0x0000577c store  0x00000001 , 0x00000002 
- 00022013  0x0000577d call  0x00005608 
- 00022014  0x0000577e rtn  0x00000029 
- 00022015  0x0000577f call  0x0000550b 
- 00022016  0x00005780 nrtn  0x0000002d 
- 00022017  0x00005781 bpatchx  0x00000060 , 0x0000402c 
- 00022018  0x00005782 fetch  0x00000001 , 0x00000004 
- 00022019  0x00005783 increase  0x00000001 , 0x0000003f 
- 00022020  0x00005784 store  0x00000001 , 0x00000004 
- 00022021  0x00005785 fetch  0x00000009 , 0x000002e1 
- 00022022  0x00005786 store  0x00000009 , 0x00000101 
- 00022023  0x00005787 rtn 
- 00022024  0x0000578a bpatchx  0x00000061 , 0x0000402c 
- 00022025  0x0000578b fetch  0x00000001 , 0x0000049b 
- 00022026  0x0000578c rtnne  0x0000001b 
- 00022027  0x0000578d fetch  0x00000006 , 0x0000044f 
- 00022028  0x0000578e fetcht  0x00000006 , 0x0000448f 
- 00022029  0x0000578f isub  0x00000002 , 0x0000003e 
- 00022030  0x00005790 nrtn  0x00000005 
- 00022031  0x00005791 call  0x0000223b 
- 00022032  0x00005792 nrtn  0x00000005 
- 00022033  0x00005793 call  0x0000552b 
- 00022034  0x00005794 call  0x00005340 
- 00022035  0x00005795 bpatchx  0x00000062 , 0x0000402c 
- 00022036  0x00005796 jam  0x00000000 , 0x000041ce 
- 00022037  0x00005797 jam  0x00000000 , 0x00000476 
- 00022038  0x00005798 jam  0x00000000 , 0x00004369 
- 00022039  0x00005799 jam  0x00000000 , 0x0000049b 
- 00022040  0x0000579a branch  0x00002223 
- 00022041  0x0000579d arg  0x00000001 , 0x00000011 
- 00022042  0x0000579e fetch  0x00000001 , 0x000002d9 
- 00022043  0x0000579f rtnbit1  0x00000006 
- 00022044  0x000057a0 arg  0x00000000 , 0x00000011 
- 00022045  0x000057a1 rtn 
- 00022046  0x000057a6 bpatchx  0x00000063 , 0x0000402c 
- 00022047  0x000057a7 fetch  0x00000001 , 0x00000456 
- 00022048  0x000057a8 rtnbit1  0x00000005 
- 00022049  0x000057a9 call  0x00005642 
- 00022050  0x000057aa call  0x00005873 
- 00022051  0x000057ab branch  0x00005664 , 0x00000034 
- 00022052  0x000057ac ifetch  0x00000001 , 0x00000006 
- 00022053  0x000057ad ifetcht  0x00000001 , 0x00000006 
- 00022054  0x000057ae copy  0x00000002 , 0x00000011 
- 00022055  0x000057af isub  0x00000011 , 0x0000003f 
- 00022056  0x000057b0 arg  0x0000001b , 0x00000002 
- 00022057  0x000057b1 call  0x00007fdd 
- 00022058  0x000057b2 copy  0x0000003f , 0x00000002 
- 00022059  0x000057b3 ifetch  0x00000001 , 0x00000006 
- 00022060  0x000057b4 copy  0x0000003f , 0x00000001 
- 00022061  0x000057b5 copy  0x00000011 , 0x0000003f 
- 00022062  0x000057b6 iadd  0x00000006 , 0x00000006 
- 00022063  0x000057b7 arg  0x000043de , 0x00000005 
- 00022064  0x000057b8 copy  0x00000002 , 0x00000039 
- 00022065  0x000057b9 call  0x00007f01 
- 00022066  0x000057ba call  0x00005654 
- 00022067  0x000057bb call  0x00005666 
- 00022068  0x000057bd call  0x00005873 
- 00022069  0x000057be ifetch  0x00000001 , 0x00000006 
- 00022070  0x000057bf copy  0x0000003f , 0x00000011 
- 00022071  0x000057c0 copy  0x00000006 , 0x00000013 
- 00022072  0x000057c1 ifetcht  0x00000001 , 0x00000006 
- 00022073  0x000057c2 copy  0x00000002 , 0x00000012 
- 00022074  0x000057c3 isub  0x00000012 , 0x0000003f 
- 00022075  0x000057c4 arg  0x0000001b , 0x00000002 
- 00022076  0x000057c5 call  0x00007fdd 
- 00022077  0x000057c6 iadd  0x00000012 , 0x0000003f 
- 00022078  0x000057c7 istore  0x00000001 , 0x00000013 
- 00022079  0x000057c8 isub  0x00000011 , 0x0000003e 
- 00022080  0x000057c9 nrtn  0x00000005 
- 00022081  0x000057ca branch  0x00005896 
- 00022082  0x000057ce call  0x00005649 
- 00022083  0x000057cf rtnmark1  0x00000029 
- 00022084  0x000057d0 fetch  0x00000001 , 0x000044e9 
- 00022085  0x000057d1 bbit0  0x00000002 , 0x00005652 
- 00022086  0x000057d2 call  0x00005876 
- 00022087  0x000057d3 branch  0x00005652 , 0x00000034 
- 00022088  0x000057d4 branch  0x00005650 
- 00022089  0x000057d8 call  0x00005873 
- 00022090  0x000057d9 branch  0x00005652 , 0x00000034 
- 00022091  0x000057da ifetch  0x00000001 , 0x00000006 
- 00022092  0x000057db ifetcht  0x00000001 , 0x00000006 
- 00022093  0x000057dc isub  0x00000002 , 0x0000003f 
- 00022094  0x000057dd sub  0x0000003f , 0x0000001b , 0x0000003e 
- 00022095  0x000057de branch  0x00005652 , 0x00000002 
- 00022096  0x000057e0 set1  0x00000029 , 0x00000000 
- 00022097  0x000057e1 rtn 
- 00022098  0x000057e4 set0  0x00000029 , 0x00000000 
- 00022099  0x000057e5 rtn 
- 00022100  0x000057e8 copy  0x00000011 , 0x0000003f 
- 00022101  0x000057e9 rtn  0x00000034 
- 00022102  0x000057ea arg  0x00000001 , 0x00000001 
- 00022103  0x000057eb rtn 
- 00022104  0x000057ef bpatchx  0x00000064 , 0x0000402c 
- 00022105  0x000057f0 increase  0x00000001 , 0x00000002 
- 00022106  0x000057f1 call  0x0000576a 
- 00022107  0x000057f2 increase  0xfffffffe , 0x00000006 
- 00022108  0x000057f3 ifetch  0x00000002 , 0x00000006 
- 00022109  0x000057f4 arg  0x00002902 , 0x00000002 
- 00022110  0x000057f5 isub  0x00000002 , 0x0000003e 
- 00022111  0x000057f6 nrtn  0x00000005 
- 00022112  0x000057f7 increase  0x00000001 , 0x00000006 
- 00022113  0x000057f8 copy  0x00000006 , 0x00000011 
- 00022114  0x000057f9 ifetch  0x00000001 , 0x00000006 
- 00022115  0x000057fa rtn 
- 00022116  0x000057fe force  0x00000000 , 0x00000002 
- 00022117  0x000057ff force  0x00000001 , 0x00000001 
- 00022118  0x00005802 bpatchx  0x00000065 , 0x0000402c 
- 00022119  0x00005803 storet  0x00000001 , 0x000043dd 
- 00022120  0x00005804 fetcht  0x00000001 , 0x00000456 
- 00022121  0x00005805 set1  0x00000005 , 0x00000002 
- 00022122  0x00005806 and  0x00000002 , 0x000000fc , 0x0000003f 
- 00022123  0x00005807 ior  0x00000001 , 0x0000003f 
- 00022124  0x00005808 store  0x00000001 , 0x00000456 
- 00022125  0x00005809 and_into  0x0000001f , 0x0000003f 
- 00022126  0x0000580a isolate1  0x00000029 , 0x00000000 
- 00022127  0x0000580b setflag  0x00000001 , 0x00000004 , 0x0000003f 
- 00022128  0x0000580c store  0x00000001 , 0x000043dc 
- 00022129  0x0000580e fetch  0x00000001 , 0x000043dc 
- 00022130  0x0000580f compare  0x00000001 , 0x00000001 , 0x00000003 
- 00022131  0x00005810 nbranch  0x00005676 , 0x00000001 
- 00022132  0x00005811 fetch  0x00000001 , 0x000043dd 
- 00022133  0x00005812 rtn  0x00000034 
- 00022134  0x00005814 fetch  0x00000001 , 0x0000043f 
- 00022135  0x00005815 rtnbit0  0x00000004 
- 00022136  0x00005816 call  0x0000748d 
- 00022137  0x00005817 branch  0x000073e3 
- 00022138  0x0000581b arg  0x00000000 , 0x00000007 
- 00022139  0x0000581c branch  0x00002c32 
- 00022140  0x0000581f arg  0x00000000 , 0x00000007 
- 00022141  0x00005820 branch  0x00002c36 
- 00022142  0x00005824 bpatchx  0x00000066 , 0x0000402c 
- 00022143  0x00005825 rtnmark1  0x0000000f 
- 00022144  0x00005826 call  0x00005890 
- 00022145  0x00005827 nrtn  0x00000034 
- 00022146  0x00005828 fetch  0x00000001 , 0x000002d9 
- 00022147  0x00005829 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00022148  0x0000582a store  0x00000001 , 0x0000450c 
- 00022149  0x0000582b ifetch  0x00000001 , 0x00000006 
- 00022150  0x0000582c and  0x0000003f , 0x0000001f , 0x0000003f 
- 00022151  0x0000582d store  0x00000001 , 0x0000450b 
- 00022152  0x0000582e rtn  0x00000034 
- 00022153  0x0000582f copy  0x00000006 , 0x0000003f 
- 00022154  0x00005830 store  0x00000002 , 0x0000450d 
- 00022155  0x00005831 fetch  0x00000001 , 0x0000450c 
- 00022156  0x00005832 beq  0x00000003 , 0x00005c64 
- 00022157  0x00005834 call  0x0000569a 
- 00022158  0x00005835 nbranch  0x0000567a , 0x00000028 
- 00022159  0x00005836 call  0x0000567c 
- 00022160  0x00005837 fetch  0x00000002 , 0x0000450d 
- 00022161  0x00005838 copy  0x0000003f , 0x00000006 
- 00022162  0x00005839 ifetch  0x00000002 , 0x00000006 
- 00022163  0x0000583a store  0x00000002 , 0x000044fc 
- 00022164  0x0000583b bpatchx  0x00000067 , 0x0000402c 
- 00022165  0x0000583c ifetch  0x00000002 , 0x00000006 
- 00022166  0x0000583d beq  0x00000004 , 0x000058ab 
- 00022167  0x0000583e beq  0x00000006 , 0x00005af4 
- 00022168  0x0000583f beq  0x00000005 , 0x00005ab6 
- 00022169  0x00005840 rtn 
- 00022170  0x00005844 fetch  0x00000001 , 0x0000450c 
- 00022171  0x00005845 beq  0x00000002 , 0x000056a9 
- 00022172  0x00005846 beq  0x00000001 , 0x000056c1 
- 00022173  0x00005847 rtn 
- 00022174  0x0000584d call  0x00007fe7 
- 00022175  0x0000584e arg  0x00000004 , 0x00000002 
- 00022176  0x0000584f isub  0x0000003f , 0x0000003e 
- 00022177  0x00005850 rtn  0x00000005 
- 00022178  0x00005851 arg  0x00000005 , 0x00000002 
- 00022179  0x00005852 isub  0x0000003f , 0x0000003e 
- 00022180  0x00005853 rtn  0x00000005 
- 00022181  0x00005854 arg  0x00000006 , 0x00000002 
- 00022182  0x00005855 isub  0x0000003f , 0x0000003e 
- 00022183  0x00005856 rtn  0x00000005 
- 00022184  0x00005857 branch  0x00007fe9 
- 00022185  0x0000585b fetch  0x00000002 , 0x0000450d 
- 00022186  0x0000585c copy  0x0000003f , 0x00000006 
- 00022187  0x0000585d ifetch  0x00000002 , 0x00000006 
- 00022188  0x0000585e store  0x00000002 , 0x000044fc 
- 00022189  0x0000585f ifetch  0x00000002 , 0x00000006 
- 00022190  0x00005860 call  0x0000569e 
- 00022191  0x00005861 nrtn  0x00000028 
- 00022192  0x00005862 fetcht  0x00000001 , 0x0000450b 
- 00022193  0x00005863 storet  0x00000001 , 0x000044fe 
- 00022194  0x00005864 fetch  0x00000002 , 0x000044fc 
- 00022195  0x00005865 increase  0x00000004 , 0x0000003f 
- 00022196  0x00005866 isub  0x00000002 , 0x0000003e 
- 00022197  0x00005867 branch  0x00007fe7 , 0x00000005 
- 00022198  0x00005868 fetch  0x00000001 , 0x0000450b 
- 00022199  0x00005869 copy  0x0000003f , 0x00000039 
- 00022200  0x0000586a arg  0x00000311 , 0x00000005 
- 00022201  0x0000586b fetch  0x00000002 , 0x0000450d 
- 00022202  0x0000586c copy  0x0000003f , 0x00000006 
- 00022203  0x0000586d call  0x00007f01 
- 00022204  0x0000586e branch  0x00007fe9 
- 00022205  0x00005874 call  0x00007fe7 
- 00022206  0x00005875 fetch  0x00000001 , 0x000044fe 
- 00022207  0x00005876 nrtn  0x00000034 
- 00022208  0x00005877 branch  0x00007fe9 
- 00022209  0x0000587a call  0x000056bd 
- 00022210  0x0000587b nrtn  0x00000028 
- 00022211  0x0000587c fetch  0x00000001 , 0x000044fe 
- 00022212  0x0000587d arg  0x00000311 , 0x00000005 
- 00022213  0x0000587e iadd  0x00000005 , 0x00000011 
- 00022214  0x0000587f fetcht  0x00000001 , 0x0000450b 
- 00022215  0x00005880 iadd  0x00000002 , 0x0000003f 
- 00022216  0x00005881 store  0x00000001 , 0x000044fe 
- 00022217  0x00005882 fetch  0x00000001 , 0x0000450b 
- 00022218  0x00005883 copy  0x0000003f , 0x00000039 
- 00022219  0x00005884 copy  0x00000011 , 0x00000005 
- 00022220  0x00005885 fetch  0x00000002 , 0x0000450d 
- 00022221  0x00005886 copy  0x0000003f , 0x00000006 
- 00022222  0x00005887 call  0x00007ef4 
- 00022223  0x00005888 setarg  0x00000311 
- 00022224  0x00005889 store  0x00000002 , 0x0000450d 
- 00022225  0x0000588a fetch  0x00000002 , 0x000044fc 
- 00022226  0x0000588b increase  0x00000004 , 0x0000003f 
- 00022227  0x0000588c fetcht  0x00000001 , 0x000044fe 
- 00022228  0x0000588d isub  0x00000002 , 0x0000003e 
- 00022229  0x0000588e branch  0x00007fe7 , 0x00000005 
- 00022230  0x0000588f branch  0x00007fe9 
- 00022231  0x00005896 call  0x00007ea5 
- 00022232  0x00005897 arg  0x0000445e , 0x00000005 
- 00022233  0x00005899 fetch  0x00000002 , 0x000044fc 
- 00022234  0x0000589a increase  0xfffffffb , 0x0000003f 
- 00022235  0x0000589c istore  0x00000001 , 0x00000005 
- 00022236  0x0000589d copy  0x0000003f , 0x00000039 
- 00022237  0x0000589e call  0x00007e9f 
- 00022238  0x0000589f branch  0x00007ef4 
- 00022239  0x000058a2 call  0x00007ea5 
- 00022240  0x000058a3 arg  0x00004471 , 0x00000005 
- 00022241  0x000058a4 branch  0x000056d9 
- 00022242  0x000058a9 fetch  0x00000002 , 0x000041f9 
- 00022243  0x000058aa branch  0x00007f9c 
- 00022244  0x000058ad fetcht  0x00000004 , 0x0000045b 
- 00022245  0x000058ae call  0x00002a7b 
- 00022246  0x000058af isub  0x00000002 , 0x0000000b 
- 00022247  0x000058b0 deposit  0x0000000b 
- 00022248  0x000058b1 fetcht  0x00000002 , 0x0000046d 
- 00022249  0x000058b2 lshift4  0x00000002 , 0x00000002 
- 00022250  0x000058b3 lshift  0x00000002 , 0x00000002 
- 00022251  0x000058b4 isub  0x00000002 , 0x0000003f 
- 00022252  0x000058b5 rtn 
- 00022253  0x000058b8 call  0x00002a7b 
- 00022254  0x000058b9 store  0x00000004 , 0x0000045b 
- 00022255  0x000058ba rtn 
- 00022256  0x000058be jam  0x00000024 , 0x00000016 
- 00022257  0x000058bf jam  0x00000000 , 0x00000ac2 
- 00022258  0x000058c1 bpatchx  0x00000068 , 0x0000402d 
- 00022259  0x000058c2 fetch  0x00000001 , 0x0000436e 
- 00022260  0x000058c3 rtn  0x00000034 
- 00022261  0x000058c4 arg  0x00000000 , 0x00000007 
- 00022262  0x000058c5 call  0x00007f16 
- 00022263  0x000058c6 nrtn  0x00000034 
- 00022264  0x000058c7 bpatchx  0x00000069 , 0x0000402d 
- 00022265  0x000058c9 disable  0x00000029 
- 00022266  0x000058ca enable  0x00000010 
- 00022267  0x000058cb call  0x00005572 
- 00022268  0x000058cc call  0x00005422 
- 00022269  0x000058cd call  0x000054e9 
- 00022270  0x000058ce nbranch  0x00005706 , 0x0000002d 
- 00022271  0x000058cf fetch  0x00000001 , 0x00000003 
- 00022272  0x000058d0 increase  0x00000001 , 0x0000003f 
- 00022273  0x000058d1 store  0x00000001 , 0x00000003 
- 00022274  0x000058d2 fetch  0x00000001 , 0x000002d9 
- 00022275  0x000058d3 and  0x0000003f , 0x0000000f , 0x0000003f 
- 00022276  0x000058d4 beq  0x00000003 , 0x0000551c 
- 00022277  0x000058d5 beq  0x00000005 , 0x00005728 
- 00022278  0x000058d7 bpatchx  0x0000006a , 0x0000402d 
- 00022279  0x000058d8 random  0x0000003f 
- 00022280  0x000058d9 arg  0x000001ff , 0x00000002 
- 00022281  0x000058da iand  0x00000002 , 0x0000003f 
- 00022282  0x000058db add  0x0000003f , 0x000000fa , 0x0000003f 
- 00022283  0x000058dc call  0x00003cbe 
- 00022284  0x000058dd fetch  0x00000001 , 0x00000ac2 
- 00022285  0x000058de fetcht  0x00000001 , 0x0000448d 
- 00022286  0x000058df isub  0x00000002 , 0x0000003e 
- 00022287  0x000058e0 nbranch  0x000056f2 , 0x00000005 
- 00022288  0x000058e1 arg  0x00000000 , 0x00000007 
- 00022289  0x000058e2 fetch  0x00000002 , 0x00004482 
- 00022290  0x000058e3 branch  0x00007f08 
- 00022291  0x000058e7 bpatchx  0x0000006b , 0x0000402d 
- 00022292  0x000058e8 fetch  0x00000001 , 0x00000476 
- 00022293  0x000058e9 call  0x000053fc 
- 00022294  0x000058ea fetch  0x00000002 , 0x00000441 
- 00022295  0x000058eb imul32  0x00000002 , 0x0000003f 
- 00022296  0x000058ec arg  0x00000177 , 0x00000002 
- 00022297  0x000058ed imul32  0x00000002 , 0x0000003f 
- 00022298  0x000058ee arg  0x000186a0 , 0x00000002 
- 00022299  0x000058ef idiv  0x00000002 
- 00022300  0x000058f0 fetch  0x00000001 , 0x0000046a 
- 00022301  0x000058f1 arg  0x00004e20 , 0x00000002 
- 00022302  0x000058f2 imul32  0x00000002 , 0x0000003f 
- 00022303  0x000058f3 iadd  0x00000002 , 0x0000003f 
- 00022304  0x000058f4 store  0x00000004 , 0x000044e5 
- 00022305  0x000058f5 bpatchx  0x0000006c , 0x0000402d 
- 00022306  0x000058f6 fetch  0x00000002 , 0x000040c1 
- 00022307  0x000058f7 call  0x00007f86 
- 00022308  0x000058f8 quotient  0x00000002 
- 00022309  0x000058f9 iadd  0x00000002 , 0x0000003f 
- 00022310  0x000058fa store  0x00000002 , 0x0000044d 
- 00022311  0x000058fb rtn 
- 00022312  0x000058fe bpatchx  0x0000006d , 0x0000402d 
- 00022313  0x000058ff fetch  0x00000006 , 0x000002e1 
- 00022314  0x00005900 fetcht  0x00000006 , 0x000044a0 
- 00022315  0x00005901 isub  0x00000002 , 0x0000003e 
- 00022316  0x00005902 nrtn  0x00000005 
- 00022317  0x00005903 call  0x00005619 
- 00022318  0x00005904 copy  0x00000011 , 0x0000003f 
- 00022319  0x00005905 store  0x00000001 , 0x0000448e 
- 00022320  0x00005906 fetch  0x00000007 , 0x000002ee 
- 00022321  0x00005907 store  0x00000007 , 0x00000101 
- 00022322  0x00005908 ifetch  0x00000008 , 0x00000006 
- 00022323  0x00005909 istore  0x00000008 , 0x00000005 
- 00022324  0x0000590a fetch  0x00000006 , 0x000002db 
- 00022325  0x0000590b store  0x00000006 , 0x0000044f 
- 00022326  0x0000590c increase  0x00000006 , 0x00000006 
- 00022327  0x0000590d ifetch  0x00000008 , 0x00000006 
- 00022328  0x0000590e store  0x00000008 , 0x00000463 
- 00022329  0x0000590f ifetcht  0x00000002 , 0x00000006 
- 00022330  0x00005910 bpatchx  0x0000006e , 0x0000402d 
- 00022331  0x00005911 lshift2  0x00000002 , 0x00000002 
- 00022332  0x00005912 ifetch  0x00000002 , 0x00000006 
- 00022333  0x00005913 lshift2  0x0000003f , 0x0000003f 
- 00022334  0x00005914 store  0x00000002 , 0x00000441 
- 00022335  0x00005915 store  0x00000004 , 0x00000443 
- 00022336  0x00005916 isub  0x00000002 , 0x0000003f 
- 00022337  0x00005917 add  0x0000003f , 0xfffffffe , 0x00000028 
- 00022338  0x00005918 ifetch  0x00000009 , 0x00000006 
- 00022339  0x00005919 store  0x00000009 , 0x0000046b 
- 00022340  0x0000591a bpatchx  0x0000006f , 0x0000402d 
- 00022341  0x0000591b ifetch  0x00000001 , 0x00000006 
- 00022342  0x0000591c rshift4  0x0000003f , 0x00000002 
- 00022343  0x0000591d rshift  0x00000002 , 0x00000002 
- 00022344  0x0000591e storet  0x00000001 , 0x00000476 
- 00022345  0x0000591f and_into  0x0000001f , 0x0000003f 
- 00022346  0x00005920 store  0x00000001 , 0x00000458 
- 00022347  0x00005921 call  0x00005713 
- 00022348  0x00005922 call  0x0000545b 
- 00022349  0x00005923 call  0x0000534c 
- 00022350  0x00005924 call  0x0000223b 
- 00022351  0x00005925 nrtn  0x00000005 
- 00022352  0x00005926 bpatchx  0x00000070 , 0x0000402e 
- 00022353  0x00005927 call  0x00002841 
- 00022354  0x00005928 call  0x00005ad3 
- 00022355  0x00005929 jam  0x00000014 , 0x00000a99 
- 00022356  0x0000592a call  0x00007d86 
- 00022357  0x0000592b branch  0x00002223 
- 00022358  0x0000592f bpatchx  0x00000071 , 0x0000402e 
- 00022359  0x00005930 fetch  0x00000002 , 0x0000445a 
- 00022360  0x00005931 iforce  0x00000012 
- 00022361  0x00005932 fetch  0x00000002 , 0x0000445c 
- 00022362  0x00005933 iforce  0x00000013 
- 00022363  0x00005934 fetch  0x00000002 , 0x000044bc 
- 00022364  0x00005935 iforce  0x00000006 
- 00022365  0x00005936 enable  0x00000028 
- 00022366  0x00005937 rtn 
- 00022367  0x0000593b ifetch  0x00000002 , 0x00000006 
- 00022368  0x0000593c rtn  0x00000034 
- 00022369  0x0000593d isub  0x00000012 , 0x0000003e 
- 00022370  0x0000593e nrtn  0x00000002 
- 00022371  0x0000593f isub  0x00000013 , 0x0000003e 
- 00022372  0x00005940 rtn  0x00000005 
- 00022373  0x00005941 branch  0x00005768 , 0x00000002 
- 00022374  0x00005942 force  0x00000001 , 0x0000003e 
- 00022375  0x00005943 rtn 
- 00022376  0x00005945 force  0x00000000 , 0x0000003f 
- 00022377  0x00005946 rtn 
- 00022378  0x0000594b call  0x0000576d 
- 00022379  0x0000594c branch  0x00005779 , 0x00000005 
- 00022380  0x0000594d rtn 
- 00022381  0x00005950 bpatchx  0x00000072 , 0x0000402e 
- 00022382  0x00005951 fetch  0x00000002 , 0x000044bc 
- 00022383  0x00005952 iforce  0x00000006 
- 00022384  0x00005954 ifetch  0x00000002 , 0x00000006 
- 00022385  0x00005955 rtn  0x00000034 
- 00022386  0x00005956 isub  0x00000002 , 0x0000003e 
- 00022387  0x00005957 rtn  0x00000005 
- 00022388  0x00005958 ifetch  0x00000001 , 0x00000006 
- 00022389  0x00005959 iadd  0x00000006 , 0x00000006 
- 00022390  0x0000595a ifetch  0x00000001 , 0x00000006 
- 00022391  0x0000595b iadd  0x00000006 , 0x00000006 
- 00022392  0x0000595c branch  0x00005770 
- 00022393  0x0000595e ifetch  0x00000001 , 0x00000006 
- 00022394  0x0000595f iadd  0x00000006 , 0x00000006 
- 00022395  0x00005960 rtn 
- 00022396  0x00005965 bpatchx  0x00000073 , 0x0000402e 
- 00022397  0x00005966 fetch  0x00000002 , 0x000044bc 
- 00022398  0x00005967 iforce  0x00000006 
- 00022399  0x00005969 ifetch  0x00000002 , 0x00000006 
- 00022400  0x0000596a rtn  0x00000034 
- 00022401  0x0000596b ifetch  0x00000001 , 0x00000006 
- 00022402  0x0000596c iadd  0x00000006 , 0x00000006 
- 00022403  0x0000596d increase  0xfffffffe , 0x00000006 
- 00022404  0x0000596e ifetch  0x00000002 , 0x00000006 
- 00022405  0x0000596f isub  0x00000002 , 0x0000003e 
- 00022406  0x00005970 rtn  0x00000005 
- 00022407  0x00005971 ifetch  0x00000001 , 0x00000006 
- 00022408  0x00005972 iadd  0x00000006 , 0x00000006 
- 00022409  0x00005973 branch  0x0000577f 
- 00022410  0x00005978 fetch  0x00000002 , 0x0000049c 
- 00022411  0x00005979 branch  0x0000578e 
- 00022412  0x0000597c bpatchx  0x00000074 , 0x0000402e 
- 00022413  0x0000597d fetch  0x00000002 , 0x000044bc 
- 00022414  0x0000597f iforce  0x00000006 
- 00022415  0x00005980 copy  0x00000002 , 0x00000011 
- 00022416  0x00005982 ifetch  0x00000002 , 0x00000006 
- 00022417  0x00005983 branch  0x00005799 , 0x00000034 
- 00022418  0x00005984 isub  0x00000011 , 0x0000003e 
- 00022419  0x00005985 branch  0x0000579a , 0x00000005 
- 00022420  0x00005986 ifetch  0x00000001 , 0x00000006 
- 00022421  0x00005987 iadd  0x00000006 , 0x00000006 
- 00022422  0x00005988 ifetch  0x00000001 , 0x00000006 
- 00022423  0x00005989 iadd  0x00000006 , 0x00000006 
- 00022424  0x0000598a branch  0x00005790 
- 00022425  0x0000598c branch  0x00007fef 
- 00022426  0x0000598f ifetch  0x00000001 , 0x00000006 
- 00022427  0x00005990 store  0x00000001 , 0x000004a2 
- 00022428  0x00005991 copy  0x0000003f , 0x00000039 
- 00022429  0x00005992 arg  0x000004a3 , 0x00000005 
- 00022430  0x00005993 call  0x00007ef4 
- 00022431  0x00005994 ifetch  0x00000001 , 0x00000006 
- 00022432  0x00005995 store  0x00000001 , 0x000004b3 
- 00022433  0x00005996 call  0x00007ea5 
- 00022434  0x00005997 branch  0x00007ff1 
- 00022435  0x0000599b bpatchx  0x00000075 , 0x0000402e 
- 00022436  0x0000599c call  0x000057a6 
- 00022437  0x0000599d branch  0x000057b8 
- 00022438  0x000059a0 arg  0x00002a00 , 0x00000002 
- 00022439  0x000059a1 call  0x0000577c 
- 00022440  0x000059a2 rtn  0x00000034 
- 00022441  0x000059a3 ifetch  0x00000001 , 0x00000006 
- 00022442  0x000059a4 copy  0x00000006 , 0x00000005 
- 00022443  0x000059a5 fetcht  0x00000001 , 0x000043af 
- 00022444  0x000059a6 copy  0x00000002 , 0x00000039 
- 00022445  0x000059a7 isub  0x00000002 , 0x0000003e 
- 00022446  0x000059a8 nbranch  0x000057b5 , 0x00000002 
- 00022447  0x000059a9 isub  0x00000002 , 0x00000002 
- 00022448  0x000059aa arg  0x000043b0 , 0x00000006 
- 00022449  0x000059ab call  0x00007f01 
- 00022450  0x000059ac copy  0x00000002 , 0x00000039 
- 00022451  0x000059ad ncall  0x000057f0 , 0x00000005 
- 00022452  0x000059ae rtn 
- 00022453  0x000059b0 copy  0x0000003f , 0x00000039 
- 00022454  0x000059b1 arg  0x000043b0 , 0x00000006 
- 00022455  0x000059b2 branch  0x00007ef4 
- 00022456  0x000059b6 arg  0x0000438f , 0x00000013 
- 00022457  0x000059b7 arg  0x00004370 , 0x00000011 
- 00022458  0x000059b8 call  0x000057c5 
- 00022459  0x000059b9 setarg  0x00000000 
- 00022460  0x000059ba setflag  0x00000028 , 0x00000000 , 0x0000003f 
- 00022461  0x000059bb store  0x00000001 , 0x00000a9a 
- 00022462  0x000059bc arg  0x000043af , 0x00000013 
- 00022463  0x000059bd arg  0x00004390 , 0x00000011 
- 00022464  0x000059be call  0x000057c5 
- 00022465  0x000059bf rtn  0x00000028 
- 00022466  0x000059c0 fetch  0x00000001 , 0x00000a9a 
- 00022467  0x000059c1 branch  0x00002a8c , 0x00000034 
- 00022468  0x000059c2 rtn 
- 00022469  0x000059c6 bpatchx  0x00000076 , 0x0000402e 
- 00022470  0x000059c7 call  0x00007fe7 
- 00022471  0x000059c8 call  0x00007eda 
- 00022472  0x000059c9 arg  0x00000000 , 0x00000012 
- 00022473  0x000059ca arg  0x00000ac3 , 0x00000005 
- 00022474  0x000059cb call  0x000057df 
- 00022475  0x000059cc fetch  0x00000001 , 0x000043af 
- 00022476  0x000059cd add  0x0000003f , 0x00000001 , 0x00000002 
- 00022477  0x000059ce iadd  0x00000012 , 0x00000011 
- 00022478  0x000059cf increase  0x00000002 , 0x00000011 
- 00022479  0x000059d0 sub  0x00000011 , 0x0000001f , 0x0000003e 
- 00022480  0x000059d1 nbranch  0x000057dd , 0x00000002 
- 00022481  0x000059d2 istoret  0x00000001 , 0x00000005 
- 00022482  0x000059d3 arg  0x00000009 , 0x00000002 
- 00022483  0x000059d4 istoret  0x00000001 , 0x00000005 
- 00022484  0x000059d5 iforce  0x00000039 
- 00022485  0x000059d6 call  0x00007ef4 
- 00022486  0x000059d7 copy  0x00000011 , 0x00000012 
- 00022487  0x000059d9 deposit  0x00000012 
- 00022488  0x000059da store  0x00000001 , 0x00000ac2 
- 00022489  0x000059db arg  0x00000ac2 , 0x00000006 
- 00022490  0x000059dc setarg  0xffffffe0 
- 00022491  0x000059dd iadd  0x00000013 , 0x00000005 
- 00022492  0x000059de branch  0x00007ebd 
- 00022493  0x000059e1 call  0x00007fe9 
- 00022494  0x000059e2 branch  0x000057d7 
- 00022495  0x000059e5 ifetch  0x00000001 , 0x00000011 
- 00022496  0x000059e6 rtn  0x00000034 
- 00022497  0x000059e7 pincrease  0x00000001 
- 00022498  0x000059e8 ifetcht  0x00000001 , 0x00000006 
- 00022499  0x000059e9 sub  0x00000002 , 0x00000009 , 0x0000003e 
- 00022500  0x000059ea branch  0x000057ee , 0x00000005 
- 00022501  0x000059eb iadd  0x00000012 , 0x00000012 
- 00022502  0x000059ec copy  0x00000011 , 0x00000006 
- 00022503  0x000059ed iforce  0x00000039 
- 00022504  0x000059ee call  0x00007ef4 
- 00022505  0x000059ef copy  0x00000006 , 0x00000011 
- 00022506  0x000059f1 deposit  0x00000011 
- 00022507  0x000059f2 isub  0x00000013 , 0x0000003e 
- 00022508  0x000059f3 rtn  0x00000002 
- 00022509  0x000059f4 branch  0x000057df 
- 00022510  0x000059f7 iadd  0x00000011 , 0x00000011 
- 00022511  0x000059f8 branch  0x000057ea 
- 00022512  0x000059fc setarg  0x00000020 
- 00022513  0x000059fd istore  0x00000001 , 0x00000005 
- 00022514  0x000059fe loop  0x000057f0 
- 00022515  0x000059ff rtn 
- 00022516  0x00005a03 bpatchx  0x00000077 , 0x0000402e 
- 00022517  0x00005a04 disable  0x0000002b 
- 00022518  0x00005a05 branch  0x000057f8 , 0x0000002e 
- 00022519  0x00005a06 nbranch  0x00005806 , 0x0000002d 
- 00022520  0x00005a08 call  0x00002bcb 
- 00022521  0x00005a09 fetch  0x00000002 , 0x000040c1 
- 00022522  0x00005a0a store  0x00000002 , 0x0000044d 
- 00022523  0x00005a0c nbranch  0x00002bde , 0x0000002d 
- 00022524  0x00005a0d bmark1  0x0000000f , 0x00002bde 
- 00022525  0x00005a0f fetch  0x00000001 , 0x0000450b 
- 00022526  0x00005a10 nbranch  0x00002bde , 0x00000034 
- 00022527  0x00005a11 fetch  0x00000001 , 0x000043dd 
- 00022528  0x00005a12 nbranch  0x00002bde , 0x00000034 
- 00022529  0x00005a14 fetch  0x00000001 , 0x000044e9 
- 00022530  0x00005a15 bbit1  0x00000005 , 0x00002bde 
- 00022531  0x00005a17 fetch  0x00000001 , 0x0000043f 
- 00022532  0x00005a18 bbit1  0x00000005 , 0x00002bde 
- 00022533  0x00005a19 branch  0x00002bc0 
- 00022534  0x00005a1c fetcht  0x00000002 , 0x000040c1 
- 00022535  0x00005a1d rshift  0x00000002 , 0x00000002 
- 00022536  0x00005a1e fetch  0x00000002 , 0x0000044d 
- 00022537  0x00005a1f iadd  0x00000002 , 0x0000003f 
- 00022538  0x00005a20 store  0x00000002 , 0x0000044d 
- 00022539  0x00005a21 branch  0x00002bd6 
- 00022540  0x00005a25 arg  0x00000000 , 0x00000007 
- 00022541  0x00005a26 branch  0x00005824 
- 00022542  0x00005a29 arg  0x00000000 , 0x00000007 
- 00022543  0x00005a2a branch  0x00005828 
- 00022544  0x00005a2d arg  0x00000001 , 0x00000007 
- 00022545  0x00005a2e branch  0x00005824 
- 00022546  0x00005a31 arg  0x00000001 , 0x00000007 
- 00022547  0x00005a32 branch  0x00005828 
- 00022548  0x00005a35 arg  0x00000002 , 0x00000007 
- 00022549  0x00005a36 branch  0x00005824 
- 00022550  0x00005a39 arg  0x00000002 , 0x00000007 
- 00022551  0x00005a3a branch  0x00005828 
- 00022552  0x00005a3d arg  0x00000003 , 0x00000007 
- 00022553  0x00005a3e branch  0x00005824 
- 00022554  0x00005a41 arg  0x00000003 , 0x00000007 
- 00022555  0x00005a42 branch  0x00005828 
- 00022556  0x00005a45 arg  0x00000004 , 0x00000007 
- 00022557  0x00005a46 branch  0x00005824 
- 00022558  0x00005a49 arg  0x00000004 , 0x00000007 
- 00022559  0x00005a4a branch  0x00005828 
- 00022560  0x00005a4d arg  0x00000005 , 0x00000007 
- 00022561  0x00005a4e branch  0x00005824 
- 00022562  0x00005a51 arg  0x00000005 , 0x00000007 
- 00022563  0x00005a52 branch  0x00005828 
- 00022564  0x00005a56 fetch  0x00000001 , 0x000044e9 
- 00022565  0x00005a57 qset1  0x0000003f 
- 00022566  0x00005a58 store  0x00000001 , 0x000044e9 
- 00022567  0x00005a59 rtn 
- 00022568  0x00005a5c fetch  0x00000001 , 0x000044e9 
- 00022569  0x00005a5d qset0  0x0000003f 
- 00022570  0x00005a5e store  0x00000001 , 0x000044e9 
- 00022571  0x00005a5f rtn 
- 00022572  0x00005a62 setarg  0x00112233 
- 00022573  0x00005a63 store  0x00000003 , 0x000044ea 
- 00022574  0x00005a64 setarg  0x00445566 
- 00022575  0x00005a65 istore  0x00000003 , 0x00000005 
- 00022576  0x00005a66 setarg  0x00778899 
- 00022577  0x00005a67 istore  0x00000003 , 0x00000005 
- 00022578  0x00005a68 setarg  0x00001122 
- 00022579  0x00005a69 istore  0x00000003 , 0x00000005 
- 00022580  0x00005a6a setarg  0x00334455 
- 00022581  0x00005a6b istore  0x00000003 , 0x00000005 
- 00022582  0x00005a6c setarg  0x00000066 
- 00022583  0x00005a6d istore  0x00000001 , 0x00000005 
- 00022584  0x00005a6e rtn 
- 00022585  0x00005a72 setarg  0x01000302 
- 00022586  0x00005a73 store  0x00000004 , 0x00004453 
- 00022587  0x00005a74 setarg  0x00010010 
- 00022588  0x00005a75 store  0x00000003 , 0x00004457 
- 00022589  0x00005a76 jam  0x00000001 , 0x000044c6 
- 00022590  0x00005a77 rtn 
- 00022591  0x00005a7c arg  0x00000000 , 0x00000011 
- 00022592  0x00005a7d arg  0x00000001 , 0x00000001 
- 00022593  0x00005a7e branch  0x00005850 
- 00022594  0x00005a83 arg  0x00000003 , 0x00000001 
- 00022595  0x00005a84 call  0x00005850 
- 00022596  0x00005a85 copy  0x00000012 , 0x0000003f 
- 00022597  0x00005a86 istore  0x00000001 , 0x00000005 
- 00022598  0x00005a87 rtn 
- 00022599  0x00005a8c force  0x00000002 , 0x00000001 
- 00022600  0x00005a8d increase  0x00000004 , 0x00000011 
- 00022601  0x00005a8e call  0x00005850 
- 00022602  0x00005a8f increase  0xfffffffc , 0x00000011 
- 00022603  0x00005a90 copy  0x00000011 , 0x0000003f 
- 00022604  0x00005a91 istore  0x00000002 , 0x00000005 
- 00022605  0x00005a92 copy  0x00000012 , 0x0000003f 
- 00022606  0x00005a93 istore  0x00000002 , 0x00000005 
- 00022607  0x00005a94 rtn 
- 00022608  0x00005a99 sub  0x00000011 , 0x000000f0 , 0x0000003e 
- 00022609  0x00005a9a nbranch  0x00002a8c , 0x00000002 
- 00022610  0x00005a9b fetch  0x00000001 , 0x000044ff 
- 00022611  0x00005a9c arg  0x00000001 , 0x00000002 
- 00022612  0x00005a9d arg  0x00000004 , 0x00000039 
- 00022613  0x00005a9f iand  0x00000002 , 0x0000003e 
- 00022614  0x00005aa0 branch  0x0000585a , 0x00000005 
- 00022615  0x00005aa1 lshift  0x00000002 , 0x00000002 
- 00022616  0x00005aa2 loop  0x00005855 
- 00022617  0x00005aa3 branch  0x00002a8c 
- 00022618  0x00005aa5 ixor  0x00000002 , 0x0000003f 
- 00022619  0x00005aa6 store  0x00000001 , 0x000044ff 
- 00022620  0x00005aa7 sub  0x00000039 , 0x00000004 , 0x0000003f 
- 00022621  0x00005aa8 lshift4  0x0000003f , 0x0000003f 
- 00022622  0x00005aa9 lshift4  0x0000003f , 0x0000003f 
- 00022623  0x00005aaa arg  0x00001800 , 0x00000002 
- 00022624  0x00005aab iadd  0x00000002 , 0x00000002 
- 00022625  0x00005aad arg  0x00000000 , 0x00000039 
- 00022626  0x00005aae arg  0x00004500 , 0x00000006 
- 00022627  0x00005ab0 ifetch  0x00000002 , 0x00000006 
- 00022628  0x00005ab1 branch  0x00005869 , 0x00000034 
- 00022629  0x00005ab2 copy  0x00000039 , 0x0000003f 
- 00022630  0x00005ab3 increase  0x00000001 , 0x00000039 
- 00022631  0x00005ab4 bne  0x00000004 , 0x00005863 
- 00022632  0x00005ab5 branch  0x00002a8c 
- 00022633  0x00005ab9 increase  0xfffffffe , 0x00000006 
- 00022634  0x00005aba istoret  0x00000002 , 0x00000006 
- 00022635  0x00005abb copy  0x00000002 , 0x00000005 
- 00022636  0x00005abc copy  0x00000011 , 0x0000003f 
- 00022637  0x00005abd istore  0x00000001 , 0x00000005 
- 00022638  0x00005abe setarg  0x00000000 
- 00022639  0x00005abf istore  0x00000001 , 0x00000005 
- 00022640  0x00005ac0 copy  0x00000001 , 0x0000003f 
- 00022641  0x00005ac1 istore  0x00000001 , 0x00000005 
- 00022642  0x00005ac2 rtn 
- 00022643  0x00005ac7 fetch  0x00000002 , 0x00004500 
- 00022644  0x00005ac8 copy  0x0000003f , 0x00000006 
- 00022645  0x00005ac9 rtn 
- 00022646  0x00005acc fetch  0x00000002 , 0x00004502 
- 00022647  0x00005acd copy  0x0000003f , 0x00000006 
- 00022648  0x00005ace rtn 
- 00022649  0x00005ad1 call  0x0000587c 
- 00022650  0x00005ad2 copy  0x0000003f , 0x00000006 
- 00022651  0x00005ad3 rtn 
- 00022652  0x00005ad5 fetch  0x00000002 , 0x00004506 
- 00022653  0x00005ad6 nrtn  0x00000034 
- 00022654  0x00005ad7 fetch  0x00000002 , 0x00004504 
- 00022655  0x00005ad8 nrtn  0x00000034 
- 00022656  0x00005ad9 fetch  0x00000002 , 0x00004502 
- 00022657  0x00005ada nrtn  0x00000034 
- 00022658  0x00005adb fetch  0x00000002 , 0x00004500 
- 00022659  0x00005adc rtn 
- 00022660  0x00005adf call  0x00005873 
- 00022661  0x00005ae0 increase  0x00000003 , 0x00000006 
- 00022662  0x00005ae1 rtn 
- 00022663  0x00005ae4 call  0x00005873 
- 00022664  0x00005ae5 increase  0x00000007 , 0x00000006 
- 00022665  0x00005ae6 rtn 
- 00022666  0x00005ae9 call  0x00005879 
- 00022667  0x00005aea increase  0x00000007 , 0x00000006 
- 00022668  0x00005aeb rtn 
- 00022669  0x00005aee call  0x00005879 
- 00022670  0x00005aef increase  0x00000003 , 0x00000006 
- 00022671  0x00005af0 rtn 
- 00022672  0x00005af5 fetch  0x00000002 , 0x00004506 
- 00022673  0x00005af6 rtn 
- 00022674  0x00005afa fetch  0x00000002 , 0x00004504 
- 00022675  0x00005afb rtn 
- 00022676  0x00005aff fetch  0x00000002 , 0x00004500 
- 00022677  0x00005b00 rtn 
- 00022678  0x00005b04 fetch  0x00000002 , 0x00004500 
- 00022679  0x00005b05 arg  0x00001800 , 0x00000002 
- 00022680  0x00005b06 isub  0x00000002 , 0x0000003f 
- 00022681  0x00005b07 rshift4  0x0000003f , 0x0000003f 
- 00022682  0x00005b08 rshift4  0x0000003f , 0x00000007 
- 00022683  0x00005b09 fetch  0x00000001 , 0x000044ff 
- 00022684  0x00005b0a qset0  0x0000003f 
- 00022685  0x00005b0b store  0x00000001 , 0x000044ff 
- 00022686  0x00005b0c arg  0x00000000 , 0x00000039 
- 00022687  0x00005b0e lshift  0x00000039 , 0x0000003f 
- 00022688  0x00005b0f arg  0x00004502 , 0x00000002 
- 00022689  0x00005b10 iadd  0x00000002 , 0x00000002 
- 00022690  0x00005b11 ifetch  0x00000002 , 0x00000002 
- 00022691  0x00005b12 increase  0xfffffffe , 0x00000002 
- 00022692  0x00005b13 istore  0x00000002 , 0x00000002 
- 00022693  0x00005b14 copy  0x00000039 , 0x0000003f 
- 00022694  0x00005b15 increase  0x00000001 , 0x00000039 
- 00022695  0x00005b16 bne  0x00000003 , 0x0000589f 
- 00022696  0x00005b17 setarg  0x00000000 
- 00022697  0x00005b18 istore  0x00000002 , 0x00000002 
- 00022698  0x00005b19 rtn 
- 00022699  0x00005b20 ifetch  0x00000003 , 0x00000006 
- 00022700  0x00005b21 store  0x00000003 , 0x00000477 
- 00022701  0x00005b22 beq  0x00000002 , 0x000058c1 
- 00022702  0x00005b23 beq  0x00000003 , 0x000058c9 
- 00022703  0x00005b24 beq  0x00000004 , 0x000058cc 
- 00022704  0x00005b25 beq  0x00000006 , 0x000058f2 
- 00022705  0x00005b26 beq  0x00000008 , 0x0000593f 
- 00022706  0x00005b27 beq  0x0000000a , 0x000059bc 
- 00022707  0x00005b28 beq  0x0000000c , 0x000059e4 
- 00022708  0x00005b29 beq  0x00000010 , 0x000059fa 
- 00022709  0x00005b2a beq  0x00000012 , 0x00005a2f 
- 00022710  0x00005b2b beq  0x00000016 , 0x00005a48 
- 00022711  0x00005b2c beq  0x00000018 , 0x00005a5b 
- 00022712  0x00005b2d beq  0x00000052 , 0x00005a60 
- 00022713  0x00005b2e rtn 
- 00022714  0x00005b32 force  0x00000003 , 0x00000011 
- 00022715  0x00005b33 call  0x00005a82 
- 00022716  0x00005b34 setarg  0x00000002 
- 00022717  0x00005b35 istore  0x00000001 , 0x00000005 
- 00022718  0x00005b36 fetch  0x00000002 , 0x000044a6 
- 00022719  0x00005b37 istore  0x00000002 , 0x00000005 
- 00022720  0x00005b38 rtn 
- 00022721  0x00005b3c call  0x000058c9 
- 00022722  0x00005b3e force  0x00000003 , 0x00000011 
- 00022723  0x00005b3f call  0x00005a82 
- 00022724  0x00005b40 setarg  0x00000003 
- 00022725  0x00005b41 istore  0x00000001 , 0x00000005 
- 00022726  0x00005b42 fetch  0x00000002 , 0x000044a6 
- 00022727  0x00005b43 istore  0x00000002 , 0x00000005 
- 00022728  0x00005b44 rtn 
- 00022729  0x00005b47 rshift8  0x0000003f , 0x0000003f 
- 00022730  0x00005b48 store  0x00000002 , 0x000044a8 
- 00022731  0x00005b49 rtn 
- 00022732  0x00005b4c call  0x00005ab1 
- 00022733  0x00005b4d call  0x00007fe7 
- 00022734  0x00005b4e branch  0x000058cf 
- 00022735  0x00005b51 arg  0x00000003 , 0x0000000b 
- 00022736  0x00005b52 call  0x00005756 
- 00022737  0x00005b54 call  0x0000575f 
- 00022738  0x00005b55 branch  0x000058f0 , 0x00000034 
- 00022739  0x00005b56 nbranch  0x000058ed , 0x00000002 
- 00022740  0x00005b57 increase  0xfffffffe , 0x00000006 
- 00022741  0x00005b58 call  0x00007ea5 
- 00022742  0x00005b59 call  0x00007e9c 
- 00022743  0x00005b5a nbranch  0x000058e1 , 0x00000028 
- 00022744  0x00005b5b call  0x00007e85 
- 00022745  0x00005b5c call  0x00007fe9 
- 00022746  0x00005b5d force  0x00000014 , 0x00000011 
- 00022747  0x00005b5e call  0x00005a82 
- 00022748  0x00005b5f call  0x00007e95 
- 00022749  0x00005b60 setarg  0x00000005 
- 00022750  0x00005b61 istore  0x00000001 , 0x00000005 
- 00022751  0x00005b62 setarg  0x00000001 
- 00022752  0x00005b63 istore  0x00000001 , 0x00000005 
- 00022753  0x00005b65 call  0x00007e9f 
- 00022754  0x00005b66 ifetch  0x00000002 , 0x00000006 
- 00022755  0x00005b67 istore  0x00000002 , 0x00000005 
- 00022756  0x00005b68 ifetch  0x00000001 , 0x00000006 
- 00022757  0x00005b69 copy  0x0000003f , 0x00000039 
- 00022758  0x00005b6a call  0x00007f01 
- 00022759  0x00005b6b call  0x00007ea2 
- 00022760  0x00005b6c increase  0xffffffff , 0x0000000b 
- 00022761  0x00005b6d branch  0x000058f0 , 0x00000005 
- 00022762  0x00005b6f ifetch  0x00000001 , 0x00000006 
- 00022763  0x00005b70 iadd  0x00000006 , 0x00000006 
- 00022764  0x00005b71 branch  0x000058d1 
- 00022765  0x00005b73 ifetch  0x00000001 , 0x00000006 
- 00022766  0x00005b74 iadd  0x00000006 , 0x00000006 
- 00022767  0x00005b75 branch  0x000058ea 
- 00022768  0x00005b77 branch  0x00005a76 , 0x00000028 
- 00022769  0x00005b78 branch  0x00005aa5 
- 00022770  0x00005b7c call  0x00005ab1 
- 00022771  0x00005b7d ifetch  0x00000002 , 0x00000006 
- 00022772  0x00005b7e store  0x00000002 , 0x00004472 
- 00022773  0x00005b7f call  0x00007ea5 
- 00022774  0x00005b80 arg  0x0000445e , 0x00000005 
- 00022775  0x00005b81 fetch  0x00000002 , 0x000044fc 
- 00022776  0x00005b82 increase  0xfffffff9 , 0x0000003f 
- 00022777  0x00005b83 call  0x000056db 
- 00022778  0x00005b84 branch  0x00005905 
- 00022779  0x00005b88 disable  0x00000028 
- 00022780  0x00005b89 fetcht  0x00000002 , 0x0000445a 
- 00022781  0x00005b8a fetch  0x00000002 , 0x0000445c 
- 00022782  0x00005b8b isub  0x00000002 , 0x0000003e 
- 00022783  0x00005b8c nbranch  0x00005902 , 0x00000002 
- 00022784  0x00005b8d deposit  0x00000002 
- 00022785  0x00005b8e rtnne  0x00000000 
- 00022786  0x00005b90 enable  0x00000028 
- 00022787  0x00005b91 jam  0x00000001 , 0x0000047a 
- 00022788  0x00005b92 branch  0x00005a77 
- 00022789  0x00005b96 call  0x000058fb 
- 00022790  0x00005b97 rtn  0x00000028 
- 00022791  0x00005b98 fetcht  0x00000002 , 0x00004472 
- 00022792  0x00005b99 setarg  0x00002800 
- 00022793  0x00005b9a isub  0x00000002 , 0x0000003e 
- 00022794  0x00005b9b branch  0x0000590c , 0x00000005 
- 00022795  0x00005b9c branch  0x00005a76 
- 00022796  0x00005ba0 jam  0x00000000 , 0x000004b4 
- 00022797  0x00005ba1 fetcht  0x00000002 , 0x0000445a 
- 00022798  0x00005ba2 storet  0x00000002 , 0x00000aa2 
- 00022799  0x00005ba3 call  0x0000578c 
- 00022800  0x00005ba4 nbranch  0x00005a76 , 0x00000034 
- 00022801  0x00005ba6 fetcht  0x00000002 , 0x00000aa2 
- 00022802  0x00005ba7 call  0x0000578c 
- 00022803  0x00005ba8 nbranch  0x00005925 , 0x00000034 
- 00022804  0x00005ba9 copy  0x00000006 , 0x00000011 
- 00022805  0x00005baa fetch  0x00000001 , 0x000004b3 
- 00022806  0x00005bab copy  0x0000003f , 0x00000039 
- 00022807  0x00005bac fetcht  0x00000001 , 0x0000445e 
- 00022808  0x00005bad isub  0x00000002 , 0x0000003e 
- 00022809  0x00005bae nbranch  0x00005921 , 0x00000005 
- 00022810  0x00005baf arg  0x0000445f , 0x00000012 
- 00022811  0x00005bb0 call  0x00007f88 
- 00022812  0x00005bb2 branch  0x00005928 , 0x00000005 
- 00022813  0x00005bb4 fetch  0x00000002 , 0x000004a3 
- 00022814  0x00005bb5 fetcht  0x00000002 , 0x00004472 
- 00022815  0x00005bb6 isub  0x00000002 , 0x0000003e 
- 00022816  0x00005bb7 branch  0x00005930 , 0x00000005 
- 00022817  0x00005bb9 fetch  0x00000002 , 0x00000aa2 
- 00022818  0x00005bba increase  0x00000001 , 0x0000003f 
- 00022819  0x00005bbb store  0x00000002 , 0x00000aa2 
- 00022820  0x00005bbc branch  0x00005911 
- 00022821  0x00005bbf fetch  0x00000001 , 0x000004b4 
- 00022822  0x00005bc0 beq  0x00000001 , 0x00005930 
- 00022823  0x00005bc1 branch  0x00005a76 
- 00022824  0x00005bc5 fetch  0x00000002 , 0x000004a3 
- 00022825  0x00005bc6 fetcht  0x00000002 , 0x00004472 
- 00022826  0x00005bc7 isub  0x00000002 , 0x0000003e 
- 00022827  0x00005bc8 nbranch  0x00005921 , 0x00000005 
- 00022828  0x00005bc9 jam  0x00000001 , 0x000004b4 
- 00022829  0x00005bcb fetcht  0x00000002 , 0x00000aa2 
- 00022830  0x00005bcc storet  0x00000002 , 0x0000049e 
- 00022831  0x00005bcd branch  0x00005921 
- 00022832  0x00005bd0 fetch  0x00000001 , 0x000004b4 
- 00022833  0x00005bd1 beq  0x00000000 , 0x00005921 
- 00022834  0x00005bd2 jam  0x00000002 , 0x000004b4 
- 00022835  0x00005bd3 fetcht  0x00000002 , 0x00000aa2 
- 00022836  0x00005bd4 increase  0xffffffff , 0x00000002 
- 00022837  0x00005bd5 storet  0x00000002 , 0x000004a0 
- 00022838  0x00005bd8 arg  0x00000005 , 0x00000011 
- 00022839  0x00005bd9 call  0x00005a82 
- 00022840  0x00005bda setarg  0x00000007 
- 00022841  0x00005bdb istore  0x00000001 , 0x00000005 
- 00022842  0x00005bdc fetch  0x00000002 , 0x0000049e 
- 00022843  0x00005bdd istore  0x00000002 , 0x00000005 
- 00022844  0x00005bde fetch  0x00000002 , 0x000004a0 
- 00022845  0x00005bdf istore  0x00000002 , 0x00000005 
- 00022846  0x00005be0 rtn 
- 00022847  0x00005be5 call  0x00005ab1 
- 00022848  0x00005be6 call  0x000056df 
- 00022849  0x00005be7 branch  0x00005942 
- 00022850  0x00005bea fetcht  0x00000002 , 0x0000445a 
- 00022851  0x00005beb storet  0x00000002 , 0x00000aa2 
- 00022852  0x00005bec call  0x00005756 
- 00022853  0x00005bed call  0x0000576d 
- 00022854  0x00005bee increase  0xfffffffe , 0x00000006 
- 00022855  0x00005bef copy  0x00000006 , 0x0000003f 
- 00022856  0x00005bf0 store  0x00000002 , 0x0000049c 
- 00022857  0x00005bf2 fetcht  0x00000002 , 0x00004472 
- 00022858  0x00005bf3 setarg  0x00002a00 
- 00022859  0x00005bf4 isub  0x00000002 , 0x0000003e 
- 00022860  0x00005bf5 branch  0x000059a8 , 0x00000005 
- 00022861  0x00005bf6 setarg  0x00002803 
- 00022862  0x00005bf7 isub  0x00000002 , 0x0000003e 
- 00022863  0x00005bf8 nbranch  0x00005990 , 0x00000005 
- 00022864  0x00005bf9 arg  0x00000002 , 0x0000000b 
- 00022865  0x00005bfb call  0x00005a88 
- 00022866  0x00005bfc nbranch  0x0000596d , 0x00000002 
- 00022867  0x00005bfd fetcht  0x00000002 , 0x00000aa2 
- 00022868  0x00005bfe call  0x0000578a 
- 00022869  0x00005bff beq  0x00000001 , 0x0000596d 
- 00022870  0x00005c00 call  0x00005a94 
- 00022871  0x00005c01 nbranch  0x0000596b , 0x00000005 
- 00022872  0x00005c02 nbranch  0x0000596f , 0x00000028 
- 00022873  0x00005c03 disable  0x00000028 
- 00022874  0x00005c04 arg  0x00000014 , 0x00000011 
- 00022875  0x00005c05 call  0x00005a82 
- 00022876  0x00005c06 setarg  0x00000009 
- 00022877  0x00005c07 istore  0x00000001 , 0x00000005 
- 00022878  0x00005c08 copy  0x00000005 , 0x00000030 
- 00022879  0x00005c09 increase  0x00000001 , 0x00000005 
- 00022880  0x00005c0b call  0x0000597d 
- 00022881  0x00005c0c call  0x00005a84 
- 00022882  0x00005c0d call  0x0000578a 
- 00022883  0x00005c0e call  0x00005984 
- 00022884  0x00005c0f fetch  0x00000001 , 0x000004a2 
- 00022885  0x00005c10 increase  0x00000005 , 0x0000003f 
- 00022886  0x00005c11 istore  0x00000001 , 0x00000030 
- 00022887  0x00005c12 fetch  0x00000001 , 0x000004a2 
- 00022888  0x00005c13 beq  0x00000010 , 0x0000596d 
- 00022889  0x00005c14 increase  0xffffffff , 0x0000000b 
- 00022890  0x00005c15 branch  0x0000596d , 0x00000005 
- 00022891  0x00005c17 call  0x00005a84 
- 00022892  0x00005c18 branch  0x00005951 
- 00022893  0x00005c1a branch  0x00005a76 , 0x00000028 
- 00022894  0x00005c1b branch  0x00005aa5 
- 00022895  0x00005c1e call  0x00005a97 
- 00022896  0x00005c1f call  0x00005a84 
- 00022897  0x00005c20 call  0x0000578a 
- 00022898  0x00005c21 fetch  0x00000001 , 0x000004a2 
- 00022899  0x00005c22 beq  0x00000010 , 0x0000596d 
- 00022900  0x00005c24 call  0x00007e9c 
- 00022901  0x00005c25 fetch  0x00000002 , 0x00000aa2 
- 00022902  0x00005c26 increase  0xffffffff , 0x0000003f 
- 00022903  0x00005c27 istore  0x00000002 , 0x00000005 
- 00022904  0x00005c28 call  0x00005aa1 
- 00022905  0x00005c29 call  0x00005984 
- 00022906  0x00005c2a increase  0xffffffff , 0x0000000b 
- 00022907  0x00005c2b branch  0x0000596d , 0x00000005 
- 00022908  0x00005c2c branch  0x0000596b 
- 00022909  0x00005c30 fetch  0x00000002 , 0x00000aa2 
- 00022910  0x00005c31 istore  0x00000002 , 0x00000005 
- 00022911  0x00005c33 fetch  0x00000001 , 0x000004b3 
- 00022912  0x00005c34 copy  0x0000003f , 0x00000039 
- 00022913  0x00005c35 call  0x00007e9f 
- 00022914  0x00005c36 call  0x00007ef4 
- 00022915  0x00005c37 branch  0x00007ea2 
- 00022916  0x00005c39 call  0x00007e9c 
- 00022917  0x00005c3a fetch  0x00000002 , 0x00000aa2 
- 00022918  0x00005c3b istore  0x00000002 , 0x00000005 
- 00022919  0x00005c3c call  0x00007ea2 
- 00022920  0x00005c3d fetch  0x00000001 , 0x000004a2 
- 00022921  0x00005c3e copy  0x0000003f , 0x00000039 
- 00022922  0x00005c3f call  0x00007e9c 
- 00022923  0x00005c40 call  0x00007e9f 
- 00022924  0x00005c41 isub  0x00000039 , 0x00000006 
- 00022925  0x00005c42 increase  0xffffffff , 0x00000006 
- 00022926  0x00005c43 call  0x00007ef4 
- 00022927  0x00005c44 branch  0x00007ea2 
- 00022928  0x00005c49 fetcht  0x00000002 , 0x0000445a 
- 00022929  0x00005c4a storet  0x00000002 , 0x00000aa2 
- 00022930  0x00005c4c call  0x00005a88 
- 00022931  0x00005c4d nbranch  0x00005a76 , 0x00000002 
- 00022932  0x00005c4e call  0x0000578a 
- 00022933  0x00005c4f beq  0x00000001 , 0x00005a76 
- 00022934  0x00005c50 call  0x00005a94 
- 00022935  0x00005c51 nbranch  0x000059a6 , 0x00000005 
- 00022936  0x00005c54 arg  0x00000014 , 0x00000011 
- 00022937  0x00005c55 call  0x00005a82 
- 00022938  0x00005c56 setarg  0x00000009 
- 00022939  0x00005c57 istore  0x00000001 , 0x00000005 
- 00022940  0x00005c58 fetch  0x00000001 , 0x000004b3 
- 00022941  0x00005c59 copy  0x0000003f , 0x00000039 
- 00022942  0x00005c5a increase  0x00000002 , 0x0000003f 
- 00022943  0x00005c5b istore  0x00000001 , 0x00000005 
- 00022944  0x00005c5c fetch  0x00000002 , 0x00000aa2 
- 00022945  0x00005c5d istore  0x00000002 , 0x00000005 
- 00022946  0x00005c5e call  0x00007e9f 
- 00022947  0x00005c5f call  0x00007ef4 
- 00022948  0x00005c60 call  0x00007ea2 
- 00022949  0x00005c61 branch  0x00005aa5 
- 00022950  0x00005c64 call  0x00005a84 
- 00022951  0x00005c65 branch  0x00005992 
- 00022952  0x00005c69 arg  0x00002a00 , 0x00000002 
- 00022953  0x00005c6a call  0x0000577c 
- 00022954  0x00005c6b rtn  0x00000034 
- 00022955  0x00005c6c increase  0xfffffffb , 0x00000006 
- 00022956  0x00005c6d ifetch  0x00000002 , 0x00000006 
- 00022957  0x00005c6e store  0x00000002 , 0x00000aa2 
- 00022958  0x00005c6f arg  0x00000014 , 0x00000011 
- 00022959  0x00005c70 call  0x00005a82 
- 00022960  0x00005c71 setarg  0x00000009 
- 00022961  0x00005c72 istore  0x00000001 , 0x00000005 
- 00022962  0x00005c73 fetch  0x00000001 , 0x000043af 
- 00022963  0x00005c74 copy  0x0000003f , 0x00000039 
- 00022964  0x00005c75 increase  0x00000002 , 0x0000003f 
- 00022965  0x00005c76 istore  0x00000001 , 0x00000005 
- 00022966  0x00005c77 fetch  0x00000002 , 0x00000aa2 
- 00022967  0x00005c78 istore  0x00000002 , 0x00000005 
- 00022968  0x00005c79 arg  0x000043b0 , 0x00000006 
- 00022969  0x00005c7a call  0x00007ef4 
- 00022970  0x00005c7b call  0x00007ea2 
- 00022971  0x00005c7c branch  0x00005aa5 
- 00022972  0x00005c81 fetcht  0x00000002 , 0x00000478 
- 00022973  0x00005c82 fetch  0x00000001 , 0x000044e9 
- 00022974  0x00005c83 bbit1  0x00000003 , 0x000059dd 
- 00022975  0x00005c86 call  0x0000576a 
- 00022976  0x00005c87 branch  0x00005a76 , 0x00000034 
- 00022977  0x00005c88 increase  0xfffffffe , 0x00000006 
- 00022978  0x00005c89 ifetch  0x00000002 , 0x00000006 
- 00022979  0x00005c8a arg  0x00002a00 , 0x00000002 
- 00022980  0x00005c8b isub  0x00000002 , 0x0000003e 
- 00022981  0x00005c8c branch  0x000059d3 , 0x00000005 
- 00022982  0x00005c8d ifetch  0x00000001 , 0x00000006 
- 00022983  0x00005c8e sub  0x0000003f , 0x00000016 , 0x0000003e 
- 00022984  0x00005c8f branch  0x000059ca , 0x00000002 
- 00022985  0x00005c90 force  0x00000016 , 0x0000003f 
- 00022986  0x00005c92 copy  0x0000003f , 0x00000013 
- 00022987  0x00005c93 call  0x00007ea5 
- 00022988  0x00005c94 add  0x00000013 , 0x00000001 , 0x00000011 
- 00022989  0x00005c95 call  0x00005a82 
- 00022990  0x00005c96 setarg  0x0000000b 
- 00022991  0x00005c97 istore  0x00000001 , 0x00000005 
- 00022992  0x00005c98 copy  0x00000013 , 0x00000039 
- 00022993  0x00005c99 call  0x00007e9f 
- 00022994  0x00005c9a branch  0x00007f01 
- 00022995  0x00005c9d call  0x00007ea5 
- 00022996  0x00005c9e fetch  0x00000001 , 0x000043af 
- 00022997  0x00005c9f add  0x0000003f , 0x00000001 , 0x00000011 
- 00022998  0x00005ca0 call  0x00005a82 
- 00022999  0x00005ca1 setarg  0x0000000b 
- 00023000  0x00005ca2 istore  0x00000001 , 0x00000005 
- 00023001  0x00005ca3 fetch  0x00000001 , 0x000043af 
- 00023002  0x00005ca4 copy  0x0000003f , 0x00000039 
- 00023003  0x00005ca5 arg  0x000043b0 , 0x00000006 
- 00023004  0x00005ca6 branch  0x00007f01 
- 00023005  0x00005caa fetch  0x00000002 , 0x000044fa 
- 00023006  0x00005cab isub  0x00000002 , 0x0000003e 
- 00023007  0x00005cac nbranch  0x000059bf , 0x00000005 
- 00023008  0x00005cae call  0x00005a42 
- 00023009  0x00005caf nbranch  0x000059bf , 0x00000028 
- 00023010  0x00005cb0 jam  0x00000005 , 0x0000047a 
- 00023011  0x00005cb1 branch  0x00005a77 
- 00023012  0x00005cb5 ifetch  0x00000002 , 0x00000006 
- 00023013  0x00005cb6 store  0x00000002 , 0x0000445e 
- 00023014  0x00005cb8 arg  0x00000014 , 0x00000011 
- 00023015  0x00005cb9 call  0x00005a82 
- 00023016  0x00005cba setarg  0x0000000d 
- 00023017  0x00005cbb istore  0x00000001 , 0x00000005 
- 00023018  0x00005cbc fetch  0x00000002 , 0x0000445e 
- 00023019  0x00005cbd iforce  0x00000011 
- 00023020  0x00005cbe fetcht  0x00000002 , 0x00000478 
- 00023021  0x00005cbf call  0x0000576a 
- 00023022  0x00005cc0 branch  0x00005a76 , 0x00000034 
- 00023023  0x00005cc1 ifetch  0x00000001 , 0x00000006 
- 00023024  0x00005cc2 isub  0x00000011 , 0x00000039 
- 00023025  0x00005cc3 nbranch  0x00005a76 , 0x00000002 
- 00023026  0x00005cc4 sub  0x00000039 , 0x00000016 , 0x0000003e 
- 00023027  0x00005cc5 branch  0x000059f5 , 0x00000002 
- 00023028  0x00005cc6 force  0x00000016 , 0x00000039 
- 00023029  0x00005cc8 deposit  0x00000011 
- 00023030  0x00005cc9 iadd  0x00000006 , 0x00000006 
- 00023031  0x00005cca call  0x00007ef4 
- 00023032  0x00005ccb call  0x00007ea2 
- 00023033  0x00005ccc branch  0x00005aa5 
- 00023034  0x00005cd0 call  0x00005ab1 
- 00023035  0x00005cd1 call  0x000056d7 
- 00023036  0x00005cd2 branch  0x000059fd 
- 00023037  0x00005cd8 arg  0x00000002 , 0x0000000b 
- 00023038  0x00005cd9 fetcht  0x00000002 , 0x0000445a 
- 00023039  0x00005cdd storet  0x00000002 , 0x00000aa2 
- 00023040  0x00005cde call  0x00005756 
- 00023041  0x00005cdf call  0x0000576d 
- 00023042  0x00005ce0 increase  0xfffffffe , 0x00000006 
- 00023043  0x00005ce1 copy  0x00000006 , 0x0000003f 
- 00023044  0x00005ce2 store  0x00000002 , 0x0000049c 
- 00023045  0x00005ce4 call  0x00005a88 
- 00023046  0x00005ce5 nbranch  0x00005a25 , 0x00000002 
- 00023047  0x00005ce6 fetcht  0x00000002 , 0x00000aa2 
- 00023048  0x00005ce7 call  0x0000578a 
- 00023049  0x00005ce8 beq  0x00000001 , 0x00005a28 
- 00023050  0x00005cea call  0x00005a8c 
- 00023051  0x00005ceb nbranch  0x00005a23 , 0x00000005 
- 00023052  0x00005cec copy  0x0000000b , 0x0000003f 
- 00023053  0x00005ced beq  0x00000000 , 0x00005a28 
- 00023054  0x00005cee nbranch  0x00005a19 , 0x00000028 
- 00023055  0x00005cef disable  0x00000028 
- 00023056  0x00005cf1 arg  0x00000014 , 0x00000011 
- 00023057  0x00005cf2 call  0x00005a82 
- 00023058  0x00005cf3 setarg  0x00000011 
- 00023059  0x00005cf4 istore  0x00000001 , 0x00000005 
- 00023060  0x00005cf5 fetch  0x00000001 , 0x000004b3 
- 00023061  0x00005cf6 increase  0x00000004 , 0x0000003f 
- 00023062  0x00005cf7 istore  0x00000001 , 0x00000005 
- 00023063  0x00005cf8 call  0x00007ea2 
- 00023064  0x00005cf9 branch  0x00005a1f 
- 00023065  0x00005cfb fetch  0x00000001 , 0x000004b3 
- 00023066  0x00005cfc beq  0x00000010 , 0x00005a28 
- 00023067  0x00005cfd fetch  0x00000002 , 0x00000aa2 
- 00023068  0x00005cfe increase  0xffffffff , 0x0000003f 
- 00023069  0x00005cff store  0x00000002 , 0x000004a0 
- 00023070  0x00005d00 call  0x00005a9c 
- 00023071  0x00005d02 fetch  0x00000002 , 0x00000aa2 
- 00023072  0x00005d03 store  0x00000002 , 0x0000049e 
- 00023073  0x00005d04 call  0x00005a97 
- 00023074  0x00005d05 increase  0xffffffff , 0x0000000b 
- 00023075  0x00005d08 call  0x00005a84 
- 00023076  0x00005d09 branch  0x00005a05 
- 00023077  0x00005d0c fetch  0x00000002 , 0x00000aa2 
- 00023078  0x00005d0d store  0x00000002 , 0x000004a0 
- 00023079  0x00005d0e branch  0x00005a2c 
- 00023080  0x00005d10 fetch  0x00000002 , 0x00000aa2 
- 00023081  0x00005d11 increase  0xffffffff , 0x0000003f 
- 00023082  0x00005d12 store  0x00000002 , 0x000004a0 
- 00023083  0x00005d13 branch  0x00005a2c 
- 00023084  0x00005d15 branch  0x00005a76 , 0x00000028 
- 00023085  0x00005d16 call  0x00005a9c 
- 00023086  0x00005d17 branch  0x00005aa5 
- 00023087  0x00005d1d copy  0x00000006 , 0x00000011 
- 00023088  0x00005d1e fetch  0x00000002 , 0x000044fc 
- 00023089  0x00005d1f add  0x0000003f , 0xfffffffd , 0x00000012 
- 00023090  0x00005d20 call  0x000056e2 
- 00023091  0x00005d22 fetch  0x00000001 , 0x000044e9 
- 00023092  0x00005d23 bbit0  0x00000004 , 0x00005a3d 
- 00023093  0x00005d25 fetcht  0x00000002 , 0x00000478 
- 00023094  0x00005d26 fetch  0x00000002 , 0x000044fa 
- 00023095  0x00005d27 isub  0x00000002 , 0x0000003e 
- 00023096  0x00005d28 nbranch  0x00005a3d , 0x00000005 
- 00023097  0x00005d29 call  0x00005a42 
- 00023098  0x00005d2a nbranch  0x00005a3d , 0x00000028 
- 00023099  0x00005d2b jam  0x00000005 , 0x0000047a 
- 00023100  0x00005d2c branch  0x00005a77 
- 00023101  0x00005d2f force  0x00000001 , 0x00000011 
- 00023102  0x00005d30 call  0x00005a82 
- 00023103  0x00005d31 setarg  0x00000013 
- 00023104  0x00005d32 istore  0x00000001 , 0x00000005 
- 00023105  0x00005d33 rtn 
- 00023106  0x00005d36 call  0x00007fe9 
- 00023107  0x00005d37 fetch  0x00000001 , 0x000044c6 
- 00023108  0x00005d38 rtneq  0x00000000 
- 00023109  0x00005d39 fetch  0x00000001 , 0x00004040 
- 00023110  0x00005d3a rtnbit1  0x00000004 
- 00023111  0x00005d3b branch  0x00007fe7 
- 00023112  0x00005d3f add  0x00000006 , 0x00000002 , 0x00000011 
- 00023113  0x00005d40 fetch  0x00000002 , 0x000044fc 
- 00023114  0x00005d41 add  0x0000003f , 0xfffffffb , 0x00000012 
- 00023115  0x00005d42 call  0x000056e2 
- 00023116  0x00005d43 branch  0x00005a4d 
- 00023117  0x00005d47 fetch  0x00000002 , 0x000044fc 
- 00023118  0x00005d48 copy  0x0000003f , 0x00000011 
- 00023119  0x00005d49 call  0x00005a82 
- 00023120  0x00005d4a setarg  0x00000017 
- 00023121  0x00005d4b istore  0x00000001 , 0x00000005 
- 00023122  0x00005d4c fetch  0x00000002 , 0x00000478 
- 00023123  0x00005d4d istore  0x00000002 , 0x00000005 
- 00023124  0x00005d4e fetch  0x00000002 , 0x000044fc 
- 00023125  0x00005d4f add  0x0000003f , 0xfffffffb , 0x00000039 
- 00023126  0x00005d50 fetch  0x00000002 , 0x0000450d 
- 00023127  0x00005d51 add  0x0000003f , 0x00000007 , 0x00000006 
- 00023128  0x00005d52 ifetch  0x00000002 , 0x00000006 
- 00023129  0x00005d53 istore  0x00000002 , 0x00000005 
- 00023130  0x00005d54 branch  0x00007ef4 
- 00023131  0x00005d5b force  0x00000001 , 0x00000011 
- 00023132  0x00005d5c call  0x00005a82 
- 00023133  0x00005d5d setarg  0x00000019 
- 00023134  0x00005d5e istore  0x00000001 , 0x00000005 
- 00023135  0x00005d5f rtn 
- 00023136  0x00005d64 copy  0x00000006 , 0x00000011 
- 00023137  0x00005d65 fetch  0x00000002 , 0x000044fc 
- 00023138  0x00005d66 add  0x0000003f , 0xfffffffd , 0x00000012 
- 00023139  0x00005d67 branch  0x000056e2 
- 00023140  0x00005d6d copy  0x00000002 , 0x00000013 
- 00023141  0x00005d6e increase  0x00000003 , 0x00000011 
- 00023142  0x00005d6f call  0x00005a82 
- 00023143  0x00005d70 increase  0xfffffffd , 0x00000011 
- 00023144  0x00005d71 setarg  0x0000001b 
- 00023145  0x00005d72 istore  0x00000001 , 0x00000005 
- 00023146  0x00005d73 copy  0x00000013 , 0x00000002 
- 00023147  0x00005d74 istoret  0x00000002 , 0x00000005 
- 00023148  0x00005d75 rtn 
- 00023149  0x00005d79 copy  0x00000002 , 0x00000013 
- 00023150  0x00005d7a increase  0x00000003 , 0x00000011 
- 00023151  0x00005d7b call  0x00005a82 
- 00023152  0x00005d7c increase  0xfffffffd , 0x00000011 
- 00023153  0x00005d7d setarg  0x0000001d 
- 00023154  0x00005d7e istore  0x00000001 , 0x00000005 
- 00023155  0x00005d7f copy  0x00000013 , 0x00000002 
- 00023156  0x00005d80 istoret  0x00000002 , 0x00000005 
- 00023157  0x00005d81 rtn 
- 00023158  0x00005d87 jam  0x0000000a , 0x0000047a 
- 00023159  0x00005d89 force  0x00000005 , 0x00000011 
- 00023160  0x00005d8a call  0x00005a82 
- 00023161  0x00005d8b setarg  0x00000001 
- 00023162  0x00005d8c istore  0x00000001 , 0x00000005 
- 00023163  0x00005d8d fetch  0x00000001 , 0x00000477 
- 00023164  0x00005d8e istore  0x00000001 , 0x00000005 
- 00023165  0x00005d8f fetch  0x00000002 , 0x00000478 
- 00023166  0x00005d90 istore  0x00000002 , 0x00000005 
- 00023167  0x00005d91 fetch  0x00000001 , 0x0000047a 
- 00023168  0x00005d92 istore  0x00000001 , 0x00000005 
- 00023169  0x00005d93 rtn 
- 00023170  0x00005d97 force  0x00000004 , 0x00000012 
- 00023171  0x00005d98 branch  0x00005847 
- 00023172  0x00005d9c fetcht  0x00000002 , 0x00000aa2 
- 00023173  0x00005d9d increase  0x00000001 , 0x00000002 
- 00023174  0x00005d9e storet  0x00000002 , 0x00000aa2 
- 00023175  0x00005d9f rtn 
- 00023176  0x00005da2 fetcht  0x00000002 , 0x00000aa2 
- 00023177  0x00005da3 fetch  0x00000002 , 0x0000445c 
- 00023178  0x00005da4 isub  0x00000002 , 0x0000003e 
- 00023179  0x00005da5 rtn 
- 00023180  0x00005da9 fetcht  0x00000001 , 0x0000445e 
- 00023181  0x00005daa arg  0x0000445f , 0x00000011 
- 00023182  0x00005dac fetch  0x00000001 , 0x000004a2 
- 00023183  0x00005dad copy  0x0000003f , 0x00000039 
- 00023184  0x00005dae isub  0x00000002 , 0x0000003e 
- 00023185  0x00005daf nrtn  0x00000005 
- 00023186  0x00005db0 arg  0x000004a3 , 0x00000012 
- 00023187  0x00005db1 branch  0x00007f88 
- 00023188  0x00005db4 fetcht  0x00000001 , 0x00004471 
- 00023189  0x00005db5 arg  0x00004472 , 0x00000011 
- 00023190  0x00005db6 branch  0x00005a8e 
- 00023191  0x00005dba fetch  0x00000001 , 0x000004b3 
- 00023192  0x00005dbb store  0x00000001 , 0x00000101 
- 00023193  0x00005dbc copy  0x0000003f , 0x00000039 
- 00023194  0x00005dbd call  0x00007e9f 
- 00023195  0x00005dbe branch  0x00007ef4 
- 00023196  0x00005dc2 call  0x00007e9c 
- 00023197  0x00005dc3 fetch  0x00000002 , 0x0000049e 
- 00023198  0x00005dc4 istore  0x00000002 , 0x00000005 
- 00023199  0x00005dc5 fetch  0x00000002 , 0x000004a0 
- 00023200  0x00005dc6 istore  0x00000002 , 0x00000005 
- 00023201  0x00005dc8 fetch  0x00000001 , 0x00000101 
- 00023202  0x00005dc9 copy  0x0000003f , 0x00000039 
- 00023203  0x00005dca call  0x00007ef4 
- 00023204  0x00005dcb branch  0x00007ea2 
- 00023205  0x00005dd0 call  0x00007e9c 
- 00023206  0x00005dd1 call  0x0000588a 
- 00023207  0x00005dd2 copy  0x00000005 , 0x0000003f 
- 00023208  0x00005dd3 isub  0x00000006 , 0x00000011 
- 00023209  0x00005dd4 call  0x0000588d 
- 00023210  0x00005dd5 copy  0x00000011 , 0x0000003f 
- 00023211  0x00005dd6 istore  0x00000002 , 0x00000006 
- 00023212  0x00005dd7 increase  0x00000004 , 0x00000011 
- 00023213  0x00005dd8 call  0x00005879 
- 00023214  0x00005dd9 copy  0x00000011 , 0x0000003f 
- 00023215  0x00005dda istore  0x00000001 , 0x00000006 
- 00023216  0x00005ddb rtn 
- 00023217  0x00005ddf rshift8  0x0000003f , 0x0000003f 
- 00023218  0x00005de0 store  0x00000002 , 0x0000445a 
- 00023219  0x00005de1 ifetch  0x00000002 , 0x00000006 
- 00023220  0x00005de2 store  0x00000002 , 0x0000445c 
- 00023221  0x00005de3 rtn 
- 00023222  0x00005de9 ifetch  0x00000001 , 0x00000006 
- 00023223  0x00005dea ifetcht  0x00000001 , 0x00000006 
- 00023224  0x00005deb ifetcht  0x00000002 , 0x00000006 
- 00023225  0x00005dec beq  0x00000013 , 0x00005abb 
- 00023226  0x00005ded rtn 
- 00023227  0x00005def ifetch  0x00000002 , 0x00000006 
- 00023228  0x00005df0 store  0x00000002 , 0x00004509 
- 00023229  0x00005df1 jam  0x00000040 , 0x00000a99 
- 00023230  0x00005df2 branch  0x00007d86 
- 00023231  0x00005df9 arg  0x0000000c , 0x00000011 
- 00023232  0x00005dfa arg  0x00000012 , 0x00000013 
- 00023233  0x00005dfb call  0x00005ac7 
- 00023234  0x00005dfc setarg  0x00000008 
- 00023235  0x00005dfd istore  0x00000002 , 0x00000005 
- 00023236  0x00005dfe fetch  0x00000008 , 0x00004496 
- 00023237  0x00005dff istore  0x00000008 , 0x00000005 
- 00023238  0x00005e00 rtn 
- 00023239  0x00005e05 call  0x00005acf 
- 00023240  0x00005e06 arg  0x00000005 , 0x00000012 
- 00023241  0x00005e07 call  0x00005847 
- 00023242  0x00005e08 copy  0x00000013 , 0x0000003f 
- 00023243  0x00005e09 istore  0x00000001 , 0x00000005 
- 00023244  0x00005e0a fetch  0x00000001 , 0x00004508 
- 00023245  0x00005e0b istore  0x00000001 , 0x00000005 
- 00023246  0x00005e0c rtn 
- 00023247  0x00005e10 fetch  0x00000001 , 0x00004508 
- 00023248  0x00005e12 pincrease  0x00000001 
- 00023249  0x00005e13 store  0x00000001 , 0x00004508 
- 00023250  0x00005e14 rtnne  0x00000000 
- 00023251  0x00005e17 jam  0x00000001 , 0x00004508 
- 00023252  0x00005e18 rtn 
- 00023253  0x00005e1e fetch  0x00000001 , 0x000044c6 
- 00023254  0x00005e1f beq  0x00000000 , 0x00005ae4 
- 00023255  0x00005e20 beq  0x00000001 , 0x00005ae7 
- 00023256  0x00005e21 beq  0x00000002 , 0x00005ae9 
- 00023257  0x00005e22 beq  0x00000081 , 0x00005add 
- 00023258  0x00005e23 beq  0x00000082 , 0x00005adf 
- 00023259  0x00005e24 beq  0x00000083 , 0x00005ae2 
- 00023260  0x00005e25 rtn 
- 00023261  0x00005e28 jam  0x0000000d , 0x00004456 
- 00023262  0x00005e29 branch  0x00005ae5 
- 00023263  0x00005e2b jam  0x0000000d , 0x00004456 
- 00023264  0x00005e2c jam  0x00000001 , 0x00004454 
- 00023265  0x00005e2d rtn 
- 00023266  0x00005e2f jam  0x0000000d , 0x00004456 
- 00023267  0x00005e30 branch  0x00005aea 
- 00023268  0x00005e32 jam  0x00000000 , 0x00004456 
- 00023269  0x00005e34 jam  0x00000003 , 0x00004454 
- 00023270  0x00005e35 rtn 
- 00023271  0x00005e37 jam  0x00000005 , 0x00004456 
- 00023272  0x00005e38 branch  0x00005ae5 
- 00023273  0x00005e3a jam  0x00000005 , 0x00004456 
- 00023274  0x00005e3c jam  0x00000000 , 0x00004454 
- 00023275  0x00005e3d rtn 
- 00023276  0x00005e41 fetch  0x00000001 , 0x00004456 
- 00023277  0x00005e42 set1  0x00000003 , 0x0000003f 
- 00023278  0x00005e43 store  0x00000001 , 0x00004456 
- 00023279  0x00005e44 rtn 
- 00023280  0x00005e46 fetch  0x00000001 , 0x00004456 
- 00023281  0x00005e47 set0  0x00000003 , 0x0000003f 
- 00023282  0x00005e48 store  0x00000001 , 0x00004456 
- 00023283  0x00005e49 rtn 
- 00023284  0x00005e4c ifetch  0x00000001 , 0x00000006 
- 00023285  0x00005e4d beq  0x00000001 , 0x00005b09 
- 00023286  0x00005e4f beq  0x00000003 , 0x00005b30 
- 00023287  0x00005e50 beq  0x00000004 , 0x00005b4d 
- 00023288  0x00005e51 beq  0x00000005 , 0x00005b5a 
- 00023289  0x00005e52 beq  0x00000006 , 0x00005b80 
- 00023290  0x00005e53 beq  0x00000007 , 0x00005bc4 
- 00023291  0x00005e54 beq  0x00000008 , 0x00005baf 
- 00023292  0x00005e55 beq  0x00000009 , 0x00005bc0 
- 00023293  0x00005e56 beq  0x0000000a , 0x00005bc4 
- 00023294  0x00005e57 beq  0x0000000b , 0x00005bc4 
- 00023295  0x00005e58 beq  0x0000000c , 0x00005bc5 
- 00023296  0x00005e59 beq  0x0000000d , 0x00005bca 
- 00023297  0x00005e5a rtn 
- 00023298  0x00005e5f force  0x00000002 , 0x00000011 
- 00023299  0x00005e60 call  0x00005c62 
- 00023300  0x00005e61 setarg  0x0000000b 
- 00023301  0x00005e62 istore  0x00000001 , 0x00000005 
- 00023302  0x00005e63 fetch  0x00000001 , 0x00004456 
- 00023303  0x00005e64 istore  0x00000001 , 0x00000005 
- 00023304  0x00005e65 rtn 
- 00023305  0x00005e68 store  0x00000001 , 0x0000444c 
- 00023306  0x00005e69 ifetch  0x00000006 , 0x00000006 
- 00023307  0x00005e6a istore  0x00000006 , 0x00000005 
- 00023308  0x00005e6b fetch  0x00000001 , 0x000044c6 
- 00023309  0x00005e6c beq  0x00000000 , 0x00005b5f 
- 00023310  0x00005e6d call  0x00005b2b 
- 00023311  0x00005e6e call  0x00005b26 
- 00023312  0x00005e6f jam  0x00000003 , 0x000044c4 
- 00023313  0x00005e70 fetch  0x00000001 , 0x0000444d 
- 00023314  0x00005e71 beq  0x00000000 , 0x00005b18 
- 00023315  0x00005e72 beq  0x00000001 , 0x00005b18 
- 00023316  0x00005e73 beq  0x00000003 , 0x00005b18 
- 00023317  0x00005e74 fetch  0x00000001 , 0x000044c6 
- 00023318  0x00005e75 beq  0x00000002 , 0x00005b1b 
- 00023319  0x00005e76 rtneq  0x00000083 
- 00023320  0x00005e78 arg  0x00000000 , 0x0000003f 
- 00023321  0x00005e79 store  0x00000004 , 0x000044c7 
- 00023322  0x00005e7a rtn 
- 00023323  0x00005e7d fetch  0x00000001 , 0x000044e9 
- 00023324  0x00005e7e bbit1  0x00000000 , 0x00005b24 
- 00023325  0x00005e80 arg  0x000044c7 , 0x00000011 
- 00023326  0x00005e81 copy  0x00000011 , 0x00000005 
- 00023327  0x00005e82 arg  0x00000003 , 0x00000039 
- 00023328  0x00005e83 call  0x0000630d 
- 00023329  0x00005e84 fetch  0x00000002 , 0x000044c9 
- 00023330  0x00005e85 and_into  0x00000007 , 0x0000003f 
- 00023331  0x00005e86 store  0x00000002 , 0x000044c9 
- 00023332  0x00005e88 jam  0x00000034 , 0x00000a99 
- 00023333  0x00005e89 branch  0x00007d86 
- 00023334  0x00005e8c fetch  0x00000001 , 0x0000444f 
- 00023335  0x00005e8d rtnbit1  0x00000003 
- 00023336  0x00005e8e fetch  0x00000001 , 0x000044c6 
- 00023337  0x00005e8f rtnbit0  0x00000007 
- 00023338  0x00005e90 branch  0x00003402 
- 00023339  0x00005e93 force  0x00000007 , 0x00000011 
- 00023340  0x00005e94 call  0x00005c62 
- 00023341  0x00005e95 fetch  0x00000007 , 0x00004453 
- 00023342  0x00005e96 istore  0x00000007 , 0x00000005 
- 00023343  0x00005e97 rtn 
- 00023344  0x00005e9b copy  0x00000006 , 0x00000011 
- 00023345  0x00005e9c fetch  0x00000001 , 0x000044c6 
- 00023346  0x00005e9d beq  0x00000083 , 0x00005b37 
- 00023347  0x00005e9e copy  0x00000011 , 0x00000006 
- 00023348  0x00005e9f arg  0x0000442a , 0x00000005 
- 00023349  0x00005ea0 call  0x00007ebf 
- 00023350  0x00005ea1 branch  0x00005b3d 
- 00023351  0x00005ea3 copy  0x00000011 , 0x00000006 
- 00023352  0x00005ea4 arg  0x0000442a , 0x00000005 
- 00023353  0x00005ea5 call  0x00007ebf 
- 00023354  0x00005ea6 jam  0x00000002 , 0x000044bf 
- 00023355  0x00005ea7 jam  0x00000008 , 0x000044c1 
- 00023356  0x00005ea8 rtn 
- 00023357  0x00005eac fetch  0x00000001 , 0x000044c6 
- 00023358  0x00005ead bbit1  0x00000007 , 0x00005b45 
- 00023359  0x00005eae call  0x0000739c 
- 00023360  0x00005eaf force  0x00000011 , 0x00000011 
- 00023361  0x00005eb0 call  0x00005c62 
- 00023362  0x00005eb1 setarg  0x00000003 
- 00023363  0x00005eb2 istore  0x00000001 , 0x00000005 
- 00023364  0x00005eb3 branch  0x00007497 
- 00023365  0x00005eb7 arg  0x0000443a , 0x00000005 
- 00023366  0x00005eb8 call  0x0000630c 
- 00023367  0x00005eb9 call  0x000071c5 
- 00023368  0x00005eba force  0x00000011 , 0x00000011 
- 00023369  0x00005ebb call  0x00005c62 
- 00023370  0x00005ebc setarg  0x00000003 
- 00023371  0x00005ebd istore  0x00000001 , 0x00000005 
- 00023372  0x00005ebe branch  0x00007201 
- 00023373  0x00005ec3 copy  0x00000006 , 0x00000011 
- 00023374  0x00005ec4 fetch  0x00000001 , 0x000044c6 
- 00023375  0x00005ec5 bbit1  0x00000007 , 0x00005b61 
- 00023376  0x00005ec6 copy  0x00000011 , 0x00000006 
- 00023377  0x00005ec7 call  0x00007394 
- 00023378  0x00005ec8 branch  0x00005b75 , 0x00000005 
- 00023379  0x00005eca jam  0x00000004 , 0x0000047b 
- 00023380  0x00005ecc force  0x00000002 , 0x00000011 
- 00023381  0x00005ecd call  0x00005c62 
- 00023382  0x00005ece setarg  0x00000005 
- 00023383  0x00005ecf istore  0x00000001 , 0x00000005 
- 00023384  0x00005ed0 fetch  0x00000001 , 0x0000047b 
- 00023385  0x00005ed1 istore  0x00000001 , 0x00000005 
- 00023386  0x00005ed3 force  0x0000000a , 0x00000007 
- 00023387  0x00005ed4 call  0x00007f07 
- 00023388  0x00005ed5 jam  0x00000000 , 0x000044c4 
- 00023389  0x00005ed6 jam  0x00000030 , 0x00000a99 
- 00023390  0x00005ed7 branch  0x00007d86 
- 00023391  0x00005eda jam  0x00000005 , 0x0000047b 
- 00023392  0x00005edb branch  0x00005b54 
- 00023393  0x00005edf arg  0x0000042f , 0x00000005 
- 00023394  0x00005ee0 copy  0x00000011 , 0x00000006 
- 00023395  0x00005ee1 call  0x00007ebf 
- 00023396  0x00005ee2 fetch  0x00000001 , 0x000044c6 
- 00023397  0x00005ee3 beq  0x00000083 , 0x00005b6c 
- 00023398  0x00005ee4 call  0x0000714f 
- 00023399  0x00005ee7 call  0x00005b7a 
- 00023400  0x00005ee8 fetch  0x00000001 , 0x000044c6 
- 00023401  0x00005ee9 rtnne  0x00000082 
- 00023402  0x00005eea jam  0x0000003b , 0x00000a99 
- 00023403  0x00005eeb branch  0x00007d86 
- 00023404  0x00005eee call  0x000071ba 
- 00023405  0x00005eef arg  0x00000af2 , 0x00000005 
- 00023406  0x00005ef0 call  0x00007201 
- 00023407  0x00005ef1 arg  0x00000af2 , 0x00000011 
- 00023408  0x00005ef2 arg  0x0000442a , 0x00000012 
- 00023409  0x00005ef3 arg  0x00000010 , 0x00000039 
- 00023410  0x00005ef4 call  0x00007f88 
- 00023411  0x00005ef5 nbranch  0x00005b53 , 0x00000005 
- 00023412  0x00005ef6 branch  0x00005b7a 
- 00023413  0x00005ef9 call  0x00007390 
- 00023414  0x00005efa jam  0x00000031 , 0x00000a99 
- 00023415  0x00005efb call  0x00007d86 
- 00023416  0x00005efc jam  0x00000001 , 0x00004429 
- 00023417  0x00005efd jam  0x00000005 , 0x000044c4 
- 00023418  0x00005f00 force  0x00000011 , 0x00000011 
- 00023419  0x00005f01 call  0x00005c62 
- 00023420  0x00005f02 setarg  0x00000004 
- 00023421  0x00005f03 istore  0x00000001 , 0x00000005 
- 00023422  0x00005f04 arg  0x0000443a , 0x00000006 
- 00023423  0x00005f05 branch  0x00007ebf 
- 00023424  0x00005f08 arg  0x0000041f , 0x00000005 
- 00023425  0x00005f09 branch  0x00007ebf 
- 00023426  0x00005f0c force  0x00000011 , 0x00000011 
- 00023427  0x00005f0d call  0x00005c62 
- 00023428  0x00005f0e setarg  0x00000006 
- 00023429  0x00005f0f istore  0x00000001 , 0x00000005 
- 00023430  0x00005f10 fetch  0x00000001 , 0x000044e9 
- 00023431  0x00005f11 bbit1  0x00000001 , 0x00005b8a 
- 00023432  0x00005f12 arg  0x00004419 , 0x00000006 
- 00023433  0x00005f13 branch  0x00007ebf 
- 00023434  0x00005f16 arg  0x000044ea , 0x00000006 
- 00023435  0x00005f17 branch  0x00007ebf 
- 00023436  0x00005f1b arg  0x000044cb , 0x00000005 
- 00023437  0x00005f1c force  0x0000000a , 0x00000039 
- 00023438  0x00005f1d call  0x0000630d 
- 00023439  0x00005f1e force  0x0000000b , 0x00000011 
- 00023440  0x00005f1f call  0x00005c62 
- 00023441  0x00005f20 setarg  0x00000007 
- 00023442  0x00005f21 istore  0x00000001 , 0x00000005 
- 00023443  0x00005f22 fetch  0x00000002 , 0x000044cb 
- 00023444  0x00005f23 istore  0x00000002 , 0x00000005 
- 00023445  0x00005f24 fetch  0x00000008 , 0x000044cd 
- 00023446  0x00005f25 istore  0x00000008 , 0x00000005 
- 00023447  0x00005f26 rtn 
- 00023448  0x00005f29 force  0x00000011 , 0x00000011 
- 00023449  0x00005f2a call  0x00005c62 
- 00023450  0x00005f2b setarg  0x00000008 
- 00023451  0x00005f2c istore  0x00000001 , 0x00000005 
- 00023452  0x00005f2d setarg  0x00000000 
- 00023453  0x00005f2e istore  0x00000008 , 0x00000005 
- 00023454  0x00005f2f istore  0x00000008 , 0x00000005 
- 00023455  0x00005f30 rtn 
- 00023456  0x00005f34 force  0x00000008 , 0x00000011 
- 00023457  0x00005f35 call  0x00005c62 
- 00023458  0x00005f36 setarg  0x00000009 
- 00023459  0x00005f37 istore  0x00000001 , 0x00000005 
- 00023460  0x00005f38 fetch  0x00000001 , 0x00004495 
- 00023461  0x00005f39 istore  0x00000001 , 0x00000005 
- 00023462  0x00005f3a fetch  0x00000006 , 0x000044a0 
- 00023463  0x00005f3b istore  0x00000006 , 0x00000005 
- 00023464  0x00005f3c rtn 
- 00023465  0x00005f40 jam  0x00000008 , 0x0000047b 
- 00023466  0x00005f41 branch  0x00005b54 
- 00023467  0x00005f44 fetch  0x00000001 , 0x00004458 
- 00023468  0x00005f45 fetcht  0x00000001 , 0x00004458 
- 00023469  0x00005f46 iand  0x00000002 , 0x0000003f 
- 00023470  0x00005f47 rtn 
- 00023471  0x00005f4a arg  0x000044d5 , 0x00000005 
- 00023472  0x00005f4b call  0x00007ebf 
- 00023473  0x00005f4c call  0x00005bab 
- 00023474  0x00005f4d isolate0  0x00000001 , 0x0000003f 
- 00023475  0x00005f4e branch  0x00005ba9 , 0x00000001 
- 00023476  0x00005f4f fetch  0x00000001 , 0x00004092 
- 00023477  0x00005f50 rtnne  0x0000000a 
- 00023478  0x00005f51 call  0x00005bb9 
- 00023479  0x00005f52 nrtn  0x00000028 
- 00023480  0x00005f53 branch  0x00003410 
- 00023481  0x00005f57 call  0x00007fe9 
- 00023482  0x00005f58 fetch  0x00000001 , 0x0000448e 
- 00023483  0x00005f59 rtneq  0x00000000 
- 00023484  0x00005f5a fetch  0x00000001 , 0x00000454 
- 00023485  0x00005f5b compare  0x000000c0 , 0x0000003f , 0x000000c0 
- 00023486  0x00005f5c rtn  0x00000001 
- 00023487  0x00005f5d branch  0x00007fe7 
- 00023488  0x00005f60 call  0x00005bab 
- 00023489  0x00005f61 isolate0  0x00000001 , 0x0000003f 
- 00023490  0x00005f62 branch  0x00005ba9 , 0x00000001 
- 00023491  0x00005f63 rtn 
- 00023492  0x00005f68 rtn 
- 00023493  0x00005f6b arg  0x000009be , 0x00000005 
- 00023494  0x00005f6c call  0x00007eb3 
- 00023495  0x00005f6d jam  0x00000002 , 0x000044bf 
- 00023496  0x00005f6e jam  0x00000001 , 0x000044c1 
- 00023497  0x00005f6f rtn 
- 00023498  0x00005f72 arg  0x00000a6e , 0x00000005 
- 00023499  0x00005f73 call  0x00007ebf 
- 00023500  0x00005f74 jam  0x00000006 , 0x000044c1 
- 00023501  0x00005f75 jam  0x00000002 , 0x000044bf 
- 00023502  0x00005f76 rtn 
- 00023503  0x00005f79 force  0x00000041 , 0x00000011 
- 00023504  0x00005f7a call  0x00005c62 
- 00023505  0x00005f7b setarg  0x0000000c 
- 00023506  0x00005f7c istore  0x00000001 , 0x00000005 
- 00023507  0x00005f7d arg  0x000045d2 , 0x00000006 
- 00023508  0x00005f7e branch  0x00007eb3 
- 00023509  0x00005f81 call  0x00007166 
- 00023510  0x00005f82 force  0x00000011 , 0x00000011 
- 00023511  0x00005f83 call  0x00005c62 
- 00023512  0x00005f84 setarg  0x0000000d 
- 00023513  0x00005f85 istore  0x00000001 , 0x00000005 
- 00023514  0x00005f86 branch  0x00007201 
- 00023515  0x00005f8a fetch  0x00000001 , 0x000044c4 
- 00023516  0x00005f8b rtneq  0x000000ff 
- 00023517  0x00005f8c arg  0x00000003 , 0x00000002 
- 00023518  0x00005f8d isub  0x00000002 , 0x0000003e 
- 00023519  0x00005f8e nrtn  0x00000002 
- 00023520  0x00005f8f arg  0x0000000a , 0x00000007 
- 00023521  0x00005f90 call  0x00007f16 
- 00023522  0x00005f91 nrtn  0x00000034 
- 00023523  0x00005f92 branch  0x00005ba9 
- 00023524  0x00005f95 bpatchx  0x00000078 , 0x0000402f 
- 00023525  0x00005f96 fetch  0x00000001 , 0x000044c4 
- 00023526  0x00005f97 beq  0x00000000 , 0x00005bef 
- 00023527  0x00005f98 beq  0x00000001 , 0x00005bf5 
- 00023528  0x00005f99 beq  0x00000002 , 0x00005bef 
- 00023529  0x00005f9a beq  0x00000003 , 0x00005bf7 
- 00023530  0x00005f9b beq  0x00000005 , 0x00005bfb 
- 00023531  0x00005f9c beq  0x00000007 , 0x00005c07 
- 00023532  0x00005f9d beq  0x00000008 , 0x00005c09 
- 00023533  0x00005f9e beq  0x00000009 , 0x00005c10 
- 00023534  0x00005f9f rtn 
- 00023535  0x00005fa3 fetch  0x00000001 , 0x000044c5 
- 00023536  0x00005fa4 rtnne  0x00000004 
- 00023537  0x00005fa5 jam  0x000000ff , 0x000044c5 
- 00023538  0x00005fa6 jam  0x000000ff , 0x000044c4 
- 00023539  0x00005fa7 jam  0x0000003f , 0x00000a99 
- 00023540  0x00005fa8 branch  0x00007d86 
- 00023541  0x00005fac jam  0x00000002 , 0x000044c4 
- 00023542  0x00005fad branch  0x00005b02 
- 00023543  0x00005fb0 jam  0x00000004 , 0x000044c4 
- 00023544  0x00005fb1 setarg  0x00017700 
- 00023545  0x00005fb2 arg  0x0000000a , 0x00000007 
- 00023546  0x00005fb3 branch  0x00007f08 
- 00023547  0x00005fb6 fetch  0x00000001 , 0x000044c5 
- 00023548  0x00005fb7 beq  0x00000004 , 0x00005bfe 
- 00023549  0x00005fb8 rtn 
- 00023550  0x00005fbb jam  0x00000007 , 0x000044c4 
- 00023551  0x00005fbc jam  0x00000029 , 0x00000a99 
- 00023552  0x00005fbd call  0x00007d86 
- 00023553  0x00005fbe call  0x00005b82 
- 00023554  0x00005fbf fetch  0x00000001 , 0x00004092 
- 00023555  0x00005fc0 rtnne  0x0000000a 
- 00023556  0x00005fc1 call  0x00005bb9 
- 00023557  0x00005fc2 rtn  0x00000028 
- 00023558  0x00005fc3 branch  0x00003410 
- 00023559  0x00005fc7 jam  0x00000008 , 0x000044c4 
- 00023560  0x00005fc8 branch  0x00005b8c 
- 00023561  0x00005fcb fetch  0x00000001 , 0x00004452 
- 00023562  0x00005fcc fetcht  0x00000001 , 0x00004459 
- 00023563  0x00005fcd iand  0x00000002 , 0x0000003f 
- 00023564  0x00005fce isolate0  0x00000001 , 0x0000003f 
- 00023565  0x00005fcf branch  0x00005c12 , 0x00000001 
- 00023566  0x00005fd0 jam  0x00000009 , 0x000044c4 
- 00023567  0x00005fd1 branch  0x00005b98 
- 00023568  0x00005fd4 call  0x00005ba0 
- 00023569  0x00005fd5 branch  0x00005c12 
- 00023570  0x00005fd9 force  0x0000000a , 0x00000007 
- 00023571  0x00005fda call  0x00007f07 
- 00023572  0x00005fdb jam  0x000000ff , 0x000044c5 
- 00023573  0x00005fdc jam  0x000000ff , 0x000044c4 
- 00023574  0x00005fdd jam  0x0000003e , 0x00000a99 
- 00023575  0x00005fde branch  0x00007d86 
- 00023576  0x00005fe3 bpatchx  0x00000079 , 0x0000402f 
- 00023577  0x00005fe4 fetch  0x00000001 , 0x000044c6 
- 00023578  0x00005fe5 rtnbit0  0x00000007 
- 00023579  0x00005fe6 fetch  0x00000001 , 0x000044bf 
- 00023580  0x00005fe7 rtnne  0x00000002 
- 00023581  0x00005fe8 jam  0x00000000 , 0x000044bf 
- 00023582  0x00005fe9 fetch  0x00000001 , 0x000044c1 
- 00023583  0x00005fea beq  0x00000001 , 0x00005c58 
- 00023584  0x00005feb beq  0x00000002 , 0x00005c5f 
- 00023585  0x00005fec beq  0x00000003 , 0x00005c52 
- 00023586  0x00005fed beq  0x00000006 , 0x00005c39 
- 00023587  0x00005fee beq  0x00000007 , 0x00005c30 
- 00023588  0x00005fef beq  0x00000008 , 0x00005c26 
- 00023589  0x00005ff0 rtn 
- 00023590  0x00005ff4 fetch  0x00000001 , 0x00004663 
- 00023591  0x00005ff5 copy  0x0000003f , 0x00000007 
- 00023592  0x00005ff6 increase  0x00000001 , 0x0000003f 
- 00023593  0x00005ff7 store  0x00000001 , 0x00004663 
- 00023594  0x00005ff8 fetch  0x00000004 , 0x000044c7 
- 00023595  0x00005ff9 qisolate1  0x0000003f 
- 00023596  0x00005ffa setarg  0x00000080 
- 00023597  0x00005ffb setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00023598  0x00005ffc store  0x00000001 , 0x00004664 
- 00023599  0x00005ffd branch  0x00005c55 
- 00023600  0x00006000 fetch  0x00000001 , 0x000044c2 
- 00023601  0x00006001 jam  0x00000000 , 0x000044c2 
- 00023602  0x00006002 beq  0x00000001 , 0x00005c35 
- 00023603  0x00006003 jam  0x00000002 , 0x000044bf 
- 00023604  0x00006004 rtn 
- 00023605  0x00006007 jam  0x00000031 , 0x00000a99 
- 00023606  0x00006008 call  0x00007d86 
- 00023607  0x00006009 jam  0x00000005 , 0x000044c4 
- 00023608  0x0000600a branch  0x00005bd5 
- 00023609  0x0000600d fetch  0x00000001 , 0x000009b9 
- 00023610  0x0000600e beq  0x00000003 , 0x00005c3d 
- 00023611  0x0000600f jam  0x00000002 , 0x000044bf 
- 00023612  0x00006010 rtn 
- 00023613  0x00006013 call  0x0000718d 
- 00023614  0x00006017 fetch  0x00000001 , 0x000044c6 
- 00023615  0x00006018 beq  0x00000083 , 0x00005c41 
- 00023616  0x00006019 call  0x00005b18 
- 00023617  0x0000601b call  0x0000717a 
- 00023618  0x0000601c arg  0x00000af2 , 0x00000011 
- 00023619  0x0000601d arg  0x00000a6e , 0x00000012 
- 00023620  0x0000601e arg  0x00000010 , 0x00000039 
- 00023621  0x0000601f call  0x00007f88 
- 00023622  0x00006020 branch  0x00005c49 , 0x00000005 
- 00023623  0x00006022 jam  0x0000000b , 0x0000047b 
- 00023624  0x00006023 branch  0x00005b54 
- 00023625  0x00006027 call  0x00007595 
- 00023626  0x00006028 nbranch  0x00005c47 , 0x00000005 
- 00023627  0x00006029 jam  0x00000001 , 0x00004429 
- 00023628  0x0000602a fetch  0x00000001 , 0x000044c6 
- 00023629  0x0000602b beq  0x00000081 , 0x00005c35 
- 00023630  0x0000602c beq  0x00000083 , 0x00005c35 
- 00023631  0x0000602d jam  0x00000002 , 0x000044bf 
- 00023632  0x0000602e jam  0x00000007 , 0x000044c1 
- 00023633  0x0000602f rtn 
- 00023634  0x00006032 fetch  0x00000001 , 0x000044c6 
- 00023635  0x00006033 beq  0x00000083 , 0x00005c56 
- 00023636  0x00006034 jam  0x00000000 , 0x00004664 
- 00023637  0x00006036 branch  0x00005b3d 
- 00023638  0x0000603c jam  0x00000000 , 0x00004663 
- 00023639  0x0000603d branch  0x00005b1b 
- 00023640  0x00006041 jam  0x00000002 , 0x000044bf 
- 00023641  0x00006042 fetch  0x00000001 , 0x000044c3 
- 00023642  0x00006043 beq  0x00000003 , 0x00005c5c 
- 00023643  0x00006045 rtn 
- 00023644  0x00006048 jam  0x00000002 , 0x000044c1 
- 00023645  0x00006049 jam  0x00000000 , 0x000009b9 
- 00023646  0x0000604a branch  0x00007a99 
- 00023647  0x0000604d jam  0x00000002 , 0x000044bf 
- 00023648  0x0000604e jam  0x00000003 , 0x000044c1 
- 00023649  0x0000604f branch  0x00005bcf 
- 00023650  0x00006054 force  0x00000006 , 0x00000012 
- 00023651  0x00006055 branch  0x00005847 
- 00023652  0x0000605a fetch  0x00000001 , 0x000002db 
- 00023653  0x0000605b beq  0x00000000 , 0x00005c7b 
- 00023654  0x0000605c beq  0x00000001 , 0x00005c83 
- 00023655  0x0000605d beq  0x00000002 , 0x00005c8e 
- 00023656  0x0000605e beq  0x00000003 , 0x00005caa 
- 00023657  0x0000605f beq  0x00000004 , 0x00005ce1 
- 00023658  0x00006060 beq  0x00000005 , 0x00005ce6 
- 00023659  0x00006061 beq  0x00000006 , 0x00005cea 
- 00023660  0x00006062 beq  0x00000007 , 0x00005cf5 
- 00023661  0x00006063 beq  0x00000008 , 0x00005c99 
- 00023662  0x00006064 beq  0x00000009 , 0x00005cf5 
- 00023663  0x00006065 beq  0x0000000a , 0x00005cef 
- 00023664  0x00006066 beq  0x0000000b , 0x00005cf5 
- 00023665  0x00006067 beq  0x0000000c , 0x00005c9f 
- 00023666  0x00006068 beq  0x0000000d , 0x00005cf5 
- 00023667  0x00006069 beq  0x00000012 , 0x00005ca6 
- 00023668  0x0000606a beq  0x00000013 , 0x00005cf5 
- 00023669  0x0000606b arg  0x00000002 , 0x00000011 
- 00023670  0x0000606c arg  0x00000007 , 0x00000012 
- 00023671  0x0000606d call  0x00005842 
- 00023672  0x0000606e fetch  0x00000001 , 0x000002db 
- 00023673  0x0000606f istore  0x00000001 , 0x00000005 
- 00023674  0x00006070 rtn 
- 00023675  0x00006074 ifetch  0x00000009 , 0x00000006 
- 00023676  0x00006075 store  0x00000009 , 0x000043d3 
- 00023677  0x00006076 ifetch  0x00000002 , 0x00000006 
- 00023678  0x00006077 store  0x00000002 , 0x0000045f 
- 00023679  0x00006078 fetch  0x00000001 , 0x0000043f 
- 00023680  0x00006079 set1  0x00000005 , 0x0000003f 
- 00023681  0x0000607a store  0x00000001 , 0x0000043f 
- 00023682  0x0000607b rtn 
- 00023683  0x0000607e ifetch  0x00000005 , 0x00000006 
- 00023684  0x0000607f store  0x00000005 , 0x000043ce 
- 00023685  0x00006080 ifetch  0x00000002 , 0x00000006 
- 00023686  0x00006081 store  0x00000002 , 0x0000045f 
- 00023687  0x00006082 fetcht  0x00000002 , 0x00000459 
- 00023688  0x00006083 isub  0x00000002 , 0x0000003e 
- 00023689  0x00006084 nbranch  0x00005c8e , 0x00000002 
- 00023690  0x00006085 fetch  0x00000001 , 0x0000043f 
- 00023691  0x00006086 set1  0x00000006 , 0x0000003f 
- 00023692  0x00006087 store  0x00000001 , 0x0000043f 
- 00023693  0x00006088 rtn 
- 00023694  0x0000608c setarg  0x00000014 
- 00023695  0x0000608d store  0x00000002 , 0x0000046d 
- 00023696  0x0000608e store  0x00000002 , 0x000044ba 
- 00023697  0x0000608f rtn 
- 00023698  0x00006092 arg  0x00000013 , 0x00000013 
- 00023699  0x00006096 arg  0x00000002 , 0x00000011 
- 00023700  0x00006097 arg  0x00000002 , 0x00000012 
- 00023701  0x00006098 call  0x00005842 
- 00023702  0x00006099 copy  0x00000013 , 0x0000003f 
- 00023703  0x0000609a istore  0x00000001 , 0x00000005 
- 00023704  0x0000609b rtn 
- 00023705  0x000060a0 arg  0x00000009 , 0x00000011 
- 00023706  0x000060a1 arg  0x00000009 , 0x00000012 
- 00023707  0x000060a2 call  0x00005842 
- 00023708  0x000060a3 setarg  0x00000001 
- 00023709  0x000060a4 istore  0x00000008 , 0x00000005 
- 00023710  0x000060a5 rtn 
- 00023711  0x000060a9 rtn  0x00000029 
- 00023712  0x000060ab arg  0x00000006 , 0x00000011 
- 00023713  0x000060ac arg  0x0000000c , 0x00000012 
- 00023714  0x000060ad call  0x00005842 
- 00023715  0x000060ae fetch  0x00000005 , 0x00004510 
- 00023716  0x000060af istore  0x00000005 , 0x00000005 
- 00023717  0x000060b0 rtn 
- 00023718  0x000060b4 arg  0x00000013 , 0x00000012 
- 00023719  0x000060b5 branch  0x00005ca8 
- 00023720  0x000060b9 arg  0x00000001 , 0x00000011 
- 00023721  0x000060ba branch  0x00005842 
- 00023722  0x000060be ifetch  0x00000008 , 0x00000006 
- 00023723  0x000060bf store  0x00000008 , 0x000044cd 
- 00023724  0x000060c0 ifetch  0x00000002 , 0x00000006 
- 00023725  0x000060c1 store  0x00000002 , 0x000044cb 
- 00023726  0x000060c2 ifetch  0x00000008 , 0x00000006 
- 00023727  0x000060c3 store  0x00000008 , 0x000044aa 
- 00023728  0x000060c4 ifetch  0x00000004 , 0x00000006 
- 00023729  0x000060c5 store  0x00000004 , 0x00004411 
- 00023730  0x000060c6 call  0x00005ccf 
- 00023731  0x000060c7 bpatchx  0x0000007a , 0x0000402f 
- 00023732  0x000060c8 fetch  0x00000001 , 0x000044c4 
- 00023733  0x000060c9 beq  0x00000005 , 0x00005cbc 
- 00023734  0x000060ca fetch  0x00000001 , 0x000044e9 
- 00023735  0x000060cb bbit1  0x00000001 , 0x00005cbf 
- 00023736  0x000060cc fetch  0x00000001 , 0x00004217 
- 00023737  0x000060cd ncall  0x000067be , 0x00000034 
- 00023738  0x000060ce fetch  0x00000001 , 0x00004429 
- 00023739  0x000060cf beq  0x00000000 , 0x00005cc4 
- 00023740  0x000060d1 jam  0x00000001 , 0x000044c5 
- 00023741  0x000060d2 call  0x00005cdd 
- 00023742  0x000060d3 branch  0x000073a2 
- 00023743  0x000060d6 jam  0x00000001 , 0x00004429 
- 00023744  0x000060d7 arg  0x000044ea , 0x00000006 
- 00023745  0x000060d8 arg  0x00004419 , 0x00000005 
- 00023746  0x000060d9 call  0x00007ebf 
- 00023747  0x000060da branch  0x00005cbc 
- 00023748  0x000060de bpatchx  0x0000007b , 0x0000402f 
- 00023749  0x000060df jam  0x00000000 , 0x000044c5 
- 00023750  0x000060e0 jam  0x00000000 , 0x000044c4 
- 00023751  0x000060e1 jam  0x00000041 , 0x00000a99 
- 00023752  0x000060e2 branch  0x00007d86 
- 00023753  0x000060e5 arg  0x00000002 , 0x00000011 
- 00023754  0x000060e6 arg  0x0000000d , 0x00000012 
- 00023755  0x000060e7 call  0x00005842 
- 00023756  0x000060e8 setarg  0x00000006 
- 00023757  0x000060e9 istore  0x00000001 , 0x00000005 
- 00023758  0x000060ea rtn 
- 00023759  0x000060ed arg  0x000044b2 , 0x00000005 
- 00023760  0x000060ee force  0x00000008 , 0x00000039 
- 00023761  0x000060ef call  0x0000630d 
- 00023762  0x000060f0 arg  0x00004415 , 0x00000005 
- 00023763  0x000060f1 force  0x00000004 , 0x00000039 
- 00023764  0x000060f2 call  0x0000630d 
- 00023765  0x000060f3 arg  0x0000000d , 0x00000011 
- 00023766  0x000060f4 arg  0x00000004 , 0x00000012 
- 00023767  0x000060f5 call  0x00005842 
- 00023768  0x000060f6 fetch  0x00000008 , 0x000044b2 
- 00023769  0x000060f7 istore  0x00000008 , 0x00000005 
- 00023770  0x000060f8 fetch  0x00000004 , 0x00004415 
- 00023771  0x000060f9 istore  0x00000004 , 0x00000005 
- 00023772  0x000060fa rtn 
- 00023773  0x000060fd arg  0x00000005 , 0x00000012 
- 00023774  0x000060fe branch  0x00005ca8 
- 00023775  0x00006101 arg  0x00000006 , 0x00000012 
- 00023776  0x00006102 branch  0x00005ca8 
- 00023777  0x00006106 ifetch  0x00000008 , 0x00000006 
- 00023778  0x00006107 store  0x00000008 , 0x000044b2 
- 00023779  0x00006108 ifetch  0x00000004 , 0x00000006 
- 00023780  0x00006109 store  0x00000004 , 0x00004415 
- 00023781  0x0000610a branch  0x000073a2 
- 00023782  0x0000610d fetch  0x00000001 , 0x0000043f 
- 00023783  0x0000610e set1  0x00000004 , 0x0000003f 
- 00023784  0x0000610f store  0x00000001 , 0x0000043f 
- 00023785  0x00006110 rtn 
- 00023786  0x00006113 rtn  0x00000029 
- 00023787  0x00006114 jam  0x00000032 , 0x00000a99 
- 00023788  0x00006115 call  0x00007d86 
- 00023789  0x00006116 jam  0x00000004 , 0x000044c5 
- 00023790  0x00006117 branch  0x00005cdf 
- 00023791  0x0000611a jam  0x00000002 , 0x000044c5 
- 00023792  0x0000611b call  0x00005cf3 
- 00023793  0x0000611c jam  0x00000033 , 0x00000a99 
- 00023794  0x0000611d branch  0x00007d86 
- 00023795  0x00006120 arg  0x0000000b , 0x00000012 
- 00023796  0x00006121 branch  0x00005ca8 
- 00023797  0x00006129 rtn 
- 00023798  0x00006131 rtn  0x0000002b 
- 00023799  0x00006133 bpatchx  0x0000007c , 0x0000402f 
- 00023800  0x00006134 setarg  0x00000000 
- 00023801  0x00006135 store  0x00000001 , 0x00000048 
- 00023802  0x00006136 store  0x00000001 , 0x00000055 
- 00023803  0x00006137 store  0x00000001 , 0x00000078 
- 00023804  0x00006138 store  0x00000001 , 0x0000007c 
- 00023805  0x00006139 store  0x00000001 , 0x00004158 
- 00023806  0x0000613a store  0x00000001 , 0x000004d7 
- 00023807  0x0000613b store  0x00000001 , 0x0000016d 
- 00023808  0x0000613c store  0x00000001 , 0x000009b5 
- 00023809  0x0000613d jam  0x00000000 , 0x0000455b 
- 00023810  0x0000613e jam  0x00000000 , 0x00000229 
- 00023811  0x0000613f jam  0x00000000 , 0x000004d8 
- 00023812  0x00006141 jam  0x00000000 , 0x000009b5 
- 00023813  0x00006142 jam  0x00000000 , 0x000009b4 
- 00023814  0x00006143 jam  0x00000000 , 0x000004d1 
- 00023815  0x00006146 rtn 
- 00023816  0x00006149 bpatchx  0x0000007d , 0x0000402f 
- 00023817  0x0000614a call  0x000062ff , 0x00000029 
- 00023818  0x0000614b ncall  0x00006303 , 0x00000029 
- 00023819  0x0000614c call  0x000062bc 
- 00023820  0x0000614d nrtn  0x00000034 
- 00023821  0x0000614e fetch  0x00000001 , 0x0000004c 
- 00023822  0x0000614f rtnbit0  0x00000006 
- 00023823  0x00006150 set0  0x00000006 , 0x0000003f 
- 00023824  0x00006151 set0  0x00000001 , 0x00000000 
- 00023825  0x00006152 store  0x00000001 , 0x0000004c 
- 00023826  0x00006153 fetch  0x00000001 , 0x00000551 
- 00023827  0x00006154 fetcht  0x00000001 , 0x0000004c 
- 00023828  0x00006155 isolate1  0x00000000 , 0x0000003f 
- 00023829  0x00006156 setflag  0x00000001 , 0x00000001 , 0x00000002 
- 00023830  0x00006157 storet  0x00000001 , 0x0000004c 
- 00023831  0x00006158 and_into  0x00000002 , 0x00000002 
- 00023832  0x00006159 storet  0x00000001 , 0x0000007f 
- 00023833  0x0000615a fetcht  0x00000001 , 0x0000004c 
- 00023834  0x0000615b rshift  0x0000003f , 0x0000003f 
- 00023835  0x0000615c store  0x00000001 , 0x0000007d 
- 00023836  0x0000615d bpatchx  0x0000007e , 0x0000402f 
- 00023837  0x0000615e fetch  0x00000001 , 0x0000007d 
- 00023838  0x0000615f beq  0x0000007f , 0x00005d66 
- 00023839  0x00006160 beq  0x00000003 , 0x00005db1 
- 00023840  0x00006161 beq  0x00000004 , 0x00005dc2 
- 00023841  0x00006162 beq  0x0000003c , 0x00005d59 
- 00023842  0x00006163 beq  0x00000005 , 0x00005d55 
- 00023843  0x00006164 beq  0x0000000f , 0x00005fa8 
- 00023844  0x00006165 beq  0x00000010 , 0x00005e24 
- 00023845  0x00006166 beq  0x00000023 , 0x00005e42 
- 00023846  0x00006167 beq  0x00000039 , 0x00005fc1 
- 00023847  0x00006168 beq  0x00000038 , 0x00005fbc 
- 00023848  0x00006169 beq  0x00000031 , 0x00005e27 
- 00023849  0x0000616a beq  0x00000037 , 0x00005eb0 
- 00023850  0x0000616b beq  0x00000027 , 0x00005eac 
- 00023851  0x0000616c beq  0x00000033 , 0x00005ea9 
- 00023852  0x0000616d beq  0x00000025 , 0x00005eae 
- 00023853  0x0000616e beq  0x00000026 , 0x00005e3e 
- 00023854  0x0000616f beq  0x00000007 , 0x00005e36 
- 00023855  0x00006170 beq  0x0000002d , 0x00005e2d 
- 00023856  0x00006171 beq  0x0000002e , 0x00005e2e 
- 00023857  0x00006172 beq  0x00000001 , 0x00005ea5 
- 00023858  0x00006173 beq  0x00000002 , 0x00005e90 
- 00023859  0x00006174 beq  0x00000028 , 0x00005fb3 
- 00023860  0x00006175 beq  0x00000009 , 0x00005e86 
- 00023861  0x00006176 beq  0x0000000b , 0x00005e5f 
- 00023862  0x00006177 beq  0x00000008 , 0x00005e43 
- 00023863  0x00006178 beq  0x0000000c , 0x00005e6a 
- 00023864  0x00006179 beq  0x0000001f , 0x00005e3a 
- 00023865  0x0000617a beq  0x00000020 , 0x00005e3c 
- 00023866  0x0000617b beq  0x00000021 , 0x00005eca 
- 00023867  0x0000617c beq  0x00000022 , 0x00005eca 
- 00023868  0x0000617d beq  0x00000035 , 0x00005ecb 
- 00023869  0x0000617e beq  0x00000036 , 0x00005ecc 
- 00023870  0x0000617f beq  0x00000024 , 0x00005eca 
- 00023871  0x00006180 beq  0x00000034 , 0x00005ecd 
- 00023872  0x00006181 beq  0x00000017 , 0x00005ed6 
- 00023873  0x00006182 beq  0x00000011 , 0x00005ef2 
- 00023874  0x00006183 beq  0x00000012 , 0x00005ef6 
- 00023875  0x00006184 beq  0x00000013 , 0x00005ef8 
- 00023876  0x00006185 beq  0x0000000d , 0x00005f0a 
- 00023877  0x00006186 beq  0x0000000e , 0x00005f0a 
- 00023878  0x00006187 beq  0x0000002f , 0x00005eaa 
- 00023879  0x00006188 beq  0x00000030 , 0x00005f0a 
- 00023880  0x00006189 beq  0x0000000a , 0x00005f0a 
- 00023881  0x0000618a beq  0x00000018 , 0x00005f0b 
- 00023882  0x0000618b beq  0x00000032 , 0x00005f0a 
- 00023883  0x0000618c beq  0x0000003d , 0x00005f10 
- 00023884  0x0000618d beq  0x0000003e , 0x00005f51 
- 00023885  0x0000618e beq  0x0000003f , 0x00005f4b 
- 00023886  0x0000618f beq  0x00000040 , 0x00005f78 
- 00023887  0x00006190 beq  0x00000041 , 0x00005f8a 
- 00023888  0x00006191 beq  0x00000006 , 0x00005fa7 
- 00023889  0x00006192 beq  0x0000003a , 0x00005d57 
- 00023890  0x00006196 jam  0x00000019 , 0x0000007e 
- 00023891  0x00006198 jam  0x00000004 , 0x0000007c 
- 00023892  0x00006199 rtn 
- 00023893  0x0000619c jam  0x00000006 , 0x0000007c 
- 00023894  0x0000619d rtn 
- 00023895  0x000061a0 jam  0x0000003b , 0x0000007c 
- 00023896  0x000061a1 rtn 
- 00023897  0x000061a4 fetch  0x00000004 , 0x00000552 
- 00023898  0x000061a5 lshift  0x0000003f , 0x0000003f 
- 00023899  0x000061a6 store  0x00000004 , 0x000040d2 
- 00023900  0x000061a7 fetch  0x00000001 , 0x00000556 
- 00023901  0x000061a8 store  0x00000001 , 0x000040d9 
- 00023902  0x000061a9 fetch  0x00000005 , 0x00000557 
- 00023903  0x000061aa store  0x00000005 , 0x000040e7 
- 00023904  0x000061ab fetch  0x00000005 , 0x0000055c 
- 00023905  0x000061ac istore  0x00000005 , 0x00000005 
- 00023906  0x000061ad fetch  0x00000001 , 0x00000031 
- 00023907  0x000061ae set1  0x00000003 , 0x0000003f 
- 00023908  0x000061af store  0x00000001 , 0x00000031 
- 00023909  0x000061b0 rtn 
- 00023910  0x000061b2 bpatchx  0x0000007f , 0x0000402f 
- 00023911  0x000061b3 fetch  0x00000001 , 0x00000552 
- 00023912  0x000061b4 set1  0x00000007 , 0x0000003f 
- 00023913  0x000061b5 store  0x00000001 , 0x0000007d 
- 00023914  0x000061b6 beq  0x00000081 , 0x00005d88 
- 00023915  0x000061b7 beq  0x00000082 , 0x00005d8d 
- 00023916  0x000061b8 beq  0x00000095 , 0x00005eb1 
- 00023917  0x000061b9 beq  0x00000096 , 0x00005eca 
- 00023918  0x000061ba beq  0x0000008b , 0x00005ebf 
- 00023919  0x000061bb beq  0x00000083 , 0x00005da5 
- 00023920  0x000061bc beq  0x00000084 , 0x00005da7 
- 00023921  0x000061bd beq  0x00000090 , 0x00005d7a 
- 00023922  0x000061be beq  0x00000097 , 0x00005d9e 
- 00023923  0x000061bf beq  0x00000098 , 0x00005da3 
- 00023924  0x000061c0 beq  0x00000099 , 0x00005d7d 
- 00023925  0x000061c1 beq  0x0000009a , 0x00005d80 
- 00023926  0x000061c2 rtneq  0x00000084 
- 00023927  0x000061c6 jam  0x00000082 , 0x0000007c 
- 00023928  0x000061c7 jam  0x00000019 , 0x0000007e 
- 00023929  0x000061c9 rtn 
- 00023930  0x000061cb jam  0x00000082 , 0x0000007c 
- 00023931  0x000061cc jam  0x0000002e , 0x0000007e 
- 00023932  0x000061cd rtn 
- 00023933  0x000061d0 call  0x00005d82 
- 00023934  0x000061d1 jam  0x0000009a , 0x0000007c 
- 00023935  0x000061d2 rtn 
- 00023936  0x000061d5 call  0x00005d82 
- 00023937  0x000061d6 branch  0x00005d86 
- 00023938  0x000061d9 arg  0x0000465e , 0x00000005 
- 00023939  0x000061da fetch  0x00000003 , 0x00000553 
- 00023940  0x000061db istore  0x00000003 , 0x00000005 
- 00023941  0x000061dc rtn 
- 00023942  0x000061df branch  0x000076d8 , 0x00000001 
- 00023943  0x000061e0 rtn 
- 00023944  0x000061e2 fetch  0x00000001 , 0x00000554 
- 00023945  0x000061e3 set1  0x00000007 , 0x0000003f 
- 00023946  0x000061e4 store  0x00000001 , 0x000004c9 
- 00023947  0x000061e5 beq  0x0000008b , 0x00005d92 
- 00023948  0x000061e6 rtn 
- 00023949  0x000061ea fetch  0x00000001 , 0x00000554 
- 00023950  0x000061eb set1  0x00000007 , 0x0000003f 
- 00023951  0x000061ec store  0x00000001 , 0x000004c9 
- 00023952  0x000061ed beq  0x0000008b , 0x00005d96 
- 00023953  0x000061ee rtn 
- 00023954  0x000061f1 fetch  0x00000001 , 0x0000415a 
- 00023955  0x000061f2 fetcht  0x00000001 , 0x0000004c 
- 00023956  0x000061f3 nsetflag  0x00000034 , 0x00000005 , 0x00000002 
- 00023957  0x000061f4 storet  0x00000001 , 0x0000004c 
- 00023958  0x000061f6 fetch  0x00000001 , 0x00000030 
- 00023959  0x000061f7 rtnbit0  0x00000005 
- 00023960  0x000061f8 set0  0x00000005 , 0x0000003f 
- 00023961  0x000061f9 store  0x00000001 , 0x00000030 
- 00023962  0x000061fa fetch  0x00000001 , 0x000004d7 
- 00023963  0x000061fb nrtn  0x00000034 
- 00023964  0x000061fc jam  0x00000031 , 0x0000007c 
- 00023965  0x000061fd rtn 
- 00023966  0x00006200 nbranch  0x00005da1 , 0x00000029 
- 00023967  0x00006201 jam  0x00000012 , 0x0000007c 
- 00023968  0x00006202 branch  0x000062eb 
- 00023969  0x00006205 jam  0x00000097 , 0x0000007c 
- 00023970  0x00006206 rtn 
- 00023971  0x0000620b call  0x000062eb 
- 00023972  0x0000620c branch  0x00005ffe 
- 00023973  0x0000620f jam  0x00000084 , 0x0000007c 
- 00023974  0x00006210 rtn 
- 00023975  0x00006213 fetcht  0x00000001 , 0x00000555 
- 00023976  0x00006214 and  0x00000002 , 0x00000001 , 0x00000002 
- 00023977  0x00006215 storet  0x00000001 , 0x000004d0 
- 00023978  0x00006216 fetch  0x00000001 , 0x000041ce 
- 00023979  0x00006217 bne  0x00000051 , 0x00005dad 
- 00023980  0x00006218 jam  0x00000000 , 0x000041ce 
- 00023981  0x0000621a fetch  0x00000001 , 0x00000055 
- 00023982  0x0000621b rtnne  0x00000015 
- 00023983  0x0000621c jam  0x00000004 , 0x00000055 
- 00023984  0x0000621d branch  0x0000631b 
- 00023985  0x00006220 bpatchx  0x00000080 , 0x00004030 
- 00023986  0x00006221 fetch  0x00000001 , 0x00000552 
- 00023987  0x00006222 store  0x00000001 , 0x000004c9 
- 00023988  0x00006223 beq  0x00000033 , 0x00005dd8 
- 00023989  0x00006224 beq  0x00000008 , 0x00005de7 
- 00023990  0x00006225 beq  0x0000000f , 0x00005dee 
- 00023991  0x00006226 beq  0x00000010 , 0x00005df4 
- 00023992  0x00006227 beq  0x00000011 , 0x00005df5 
- 00023993  0x00006228 beq  0x00000012 , 0x00005dfd 
- 00023994  0x00006229 beq  0x00000018 , 0x00005e13 
- 00023995  0x0000622a beq  0x00000017 , 0x00005e16 
- 00023996  0x0000622b beq  0x00000013 , 0x00005dcf 
- 00023997  0x0000622d beq  0x0000003d , 0x00005f1e 
- 00023998  0x0000622e beq  0x0000003e , 0x00005f6a 
- 00023999  0x0000622f beq  0x00000040 , 0x00005f20 
- 00024000  0x00006230 beq  0x00000041 , 0x00005f3d 
- 00024001  0x00006231 rtn 
- 00024002  0x00006234 bpatchx  0x00000081 , 0x00004030 
- 00024003  0x00006235 fetch  0x00000001 , 0x00000552 
- 00024004  0x00006236 store  0x00000001 , 0x000004c9 
- 00024005  0x00006237 beq  0x00000001 , 0x00005e0a 
- 00024006  0x00006238 beq  0x00000033 , 0x00005de2 
- 00024007  0x00006239 beq  0x0000000b , 0x00005dfe 
- 00024008  0x0000623a beq  0x00000008 , 0x00005e01 
- 00024009  0x0000623b beq  0x00000013 , 0x00005dd2 
- 00024010  0x0000623d beq  0x00000040 , 0x00005e0b 
- 00024011  0x0000623e beq  0x00000041 , 0x00005e0e 
- 00024012  0x0000623f beq  0x00000018 , 0x00005e11 
- 00024013  0x00006240 beq  0x00000017 , 0x00005e22 
- 00024014  0x00006241 rtn 
- 00024015  0x00006244 jam  0x00000020 , 0x00000a99 
- 00024016  0x00006245 call  0x00007d86 
- 00024017  0x00006246 branch  0x000021dc 
- 00024018  0x00006248 jam  0x00000019 , 0x00000a99 
- 00024019  0x00006249 call  0x00007d86 
- 00024020  0x0000624a jam  0x00000002 , 0x0000455b 
- 00024021  0x0000624b setarg  0x00000050 
- 00024022  0x0000624c arg  0x00000006 , 0x00000007 
- 00024023  0x0000624d branch  0x00007f08 
- 00024024  0x00006253 fetch  0x00000001 , 0x000004d1 
- 00024025  0x00006254 set1  0x00000000 , 0x0000003f 
- 00024026  0x00006255 store  0x00000001 , 0x000004d1 
- 00024027  0x00006256 jam  0x00000001 , 0x00000a99 
- 00024028  0x00006257 call  0x00007d86 
- 00024029  0x00006258 jam  0x0000008b , 0x0000007c 
- 00024030  0x0000625c fetch  0x00000001 , 0x00000055 
- 00024031  0x0000625d bne  0x00000005 , 0x00005d07 
- 00024032  0x00006260 jam  0x00000006 , 0x00000055 
- 00024033  0x00006261 rtn 
- 00024034  0x0000626a jam  0x0000000b , 0x000004ca 
- 00024035  0x0000626b jam  0x00000007 , 0x0000007c 
- 00024036  0x0000626d jam  0x00000000 , 0x00000055 
- 00024037  0x0000626f branch  0x00005d07 , 0x00000001 
- 00024038  0x00006270 rtn 
- 00024039  0x00006273 fetch  0x00000001 , 0x000041bd 
- 00024040  0x00006274 nrtn  0x00000034 
- 00024041  0x00006275 call  0x0000244f 
- 00024042  0x00006276 call  0x00005ffc 
- 00024043  0x00006277 rtn  0x00000029 
- 00024044  0x00006278 set1  0x00000021 , 0x00000000 
- 00024045  0x00006279 rtn 
- 00024046  0x0000627c nrtn  0x00000029 
- 00024047  0x0000627d jam  0x00000010 , 0x0000007c 
- 00024048  0x0000627e fetch  0x00000001 , 0x0000004c 
- 00024049  0x0000627f rtnbit0  0x00000002 
- 00024050  0x00006280 jam  0x00000012 , 0x0000007c 
- 00024051  0x00006281 rtn 
- 00024052  0x00006284 branch  0x00005ffe 
- 00024053  0x00006287 call  0x00006059 
- 00024054  0x00006288 fetch  0x00000001 , 0x00000030 
- 00024055  0x00006289 rtnbit1  0x00000004 
- 00024056  0x0000628a jam  0x00000031 , 0x0000007c 
- 00024057  0x0000628b fetch  0x00000001 , 0x00000055 
- 00024058  0x0000628c rtnne  0x0000000a 
- 00024059  0x0000628d jam  0x0000000b , 0x00000055 
- 00024060  0x0000628e rtn 
- 00024061  0x00006298 rtn 
- 00024062  0x0000629c jam  0x00000007 , 0x0000007c 
- 00024063  0x0000629d jam  0x00000013 , 0x000004ca 
- 00024064  0x0000629e rtn 
- 00024065  0x000062a1 fetch  0x00000001 , 0x00000553 
- 00024066  0x000062a2 beq  0x00000006 , 0x00005e07 
- 00024067  0x000062a3 rtnne  0x00000018 
- 00024068  0x000062a4 jam  0x00000018 , 0x000004ca 
- 00024069  0x000062a5 jam  0x00000007 , 0x0000007c 
- 00024070  0x000062a6 rtn 
- 00024071  0x000062a8 jam  0x00000006 , 0x000004ca 
- 00024072  0x000062a9 jam  0x00000007 , 0x0000007c 
- 00024073  0x000062aa rtn 
- 00024074  0x000062ad rtn 
- 00024075  0x000062b0 jam  0x00000000 , 0x000009ae 
- 00024076  0x000062b1 jam  0x00000007 , 0x0000007c 
- 00024077  0x000062b2 branch  0x00005d07 
- 00024078  0x000062b5 jam  0x00000000 , 0x000009ae 
- 00024079  0x000062b6 jam  0x00000007 , 0x0000007c 
- 00024080  0x000062b7 branch  0x00005d07 
- 00024081  0x000062b9 jam  0x00000024 , 0x00000a99 
- 00024082  0x000062ba branch  0x00007d86 
- 00024083  0x000062bd jam  0x00000023 , 0x00000a99 
- 00024084  0x000062be call  0x00007d86 
- 00024085  0x000062bf branch  0x000026e9 
- 00024086  0x000062c2 jam  0x00000022 , 0x00000a99 
- 00024087  0x000062c3 call  0x00007d86 
- 00024088  0x000062c4 setarg  0x00000000 
- 00024089  0x000062c5 store  0x00000002 , 0x00000075 
- 00024090  0x000062c6 fetch  0x00000002 , 0x000041e3 
- 00024091  0x000062c7 lshift  0x0000003f , 0x0000003f 
- 00024092  0x000062c8 store  0x00000002 , 0x00000032 
- 00024093  0x000062c9 fetch  0x00000001 , 0x000041e5 
- 00024094  0x000062ca store  0x00000001 , 0x00000073 
- 00024095  0x000062cb fetch  0x00000001 , 0x000041e7 
- 00024096  0x000062cc store  0x00000001 , 0x00000074 
- 00024097  0x000062cd branch  0x000026c6 
- 00024098  0x000062d0 jam  0x00000021 , 0x00000a99 
- 00024099  0x000062d1 branch  0x00007d86 
- 00024100  0x000062d4 fetcht  0x00000001 , 0x00000552 
- 00024101  0x000062d5 storet  0x00000001 , 0x00000054 
- 00024102  0x000062d6 branch  0x00005e38 
- 00024103  0x000062d9 fetch  0x00000001 , 0x000004d1 
- 00024104  0x000062da set1  0x00000002 , 0x0000003f 
- 00024105  0x000062db store  0x00000001 , 0x000004d1 
- 00024106  0x000062dc rtnbit1  0x00000003 
- 00024107  0x000062dd jam  0x00000031 , 0x0000007c 
- 00024108  0x000062de branch  0x00005d07 
- 00024109  0x000062e3 rtn 
- 00024110  0x000062e6 fetch  0x00000001 , 0x000040d0 
- 00024111  0x000062e7 fetcht  0x00000001 , 0x00000552 
- 00024112  0x000062e8 isub  0x00000002 , 0x0000003e 
- 00024113  0x000062ea branch  0x00005e38 , 0x00000002 
- 00024114  0x000062eb jam  0x00000004 , 0x0000007c 
- 00024115  0x000062ec jam  0x0000001f , 0x0000007e 
- 00024116  0x000062ed jam  0x0000002e , 0x0000007d 
- 00024117  0x000062ee rtn 
- 00024118  0x000062f1 call  0x00006157 
- 00024119  0x000062f2 branch  0x00005e38 
- 00024120  0x000062f5 jam  0x00000003 , 0x0000007c 
- 00024121  0x000062f6 rtn 
- 00024122  0x000062f9 jam  0x00000021 , 0x0000007c 
- 00024123  0x000062fa rtn 
- 00024124  0x000062fd jam  0x00000022 , 0x0000007c 
- 00024125  0x000062fe rtn 
- 00024126  0x00006301 fetch  0x00000001 , 0x00000055 
- 00024127  0x00006302 rtneq  0x00000013 
- 00024128  0x00006304 jam  0x00000002 , 0x00000055 
- 00024129  0x00006306 rtn 
- 00024130  0x0000630a rtn 
- 00024131  0x0000630d call  0x00005ff9 
- 00024132  0x0000630e jam  0x00000001 , 0x000004d4 
- 00024133  0x0000630f jam  0x0000000a , 0x00000a99 
- 00024134  0x00006310 call  0x00007d86 
- 00024135  0x00006312 call  0x000062f3 
- 00024136  0x00006313 nbranch  0x00006001 , 0x00000001 
- 00024137  0x00006315 nbranch  0x00005e4e , 0x00000029 
- 00024138  0x00006316 jam  0x00000004 , 0x0000007c 
- 00024139  0x00006317 jam  0x00000008 , 0x0000007d 
- 00024140  0x00006318 jam  0x00000023 , 0x0000007e 
- 00024141  0x00006319 rtn 
- 00024142  0x0000631b fetch  0x00000001 , 0x0000004b 
- 00024143  0x0000631c set1  0x00000002 , 0x0000003f 
- 00024144  0x0000631d store  0x00000001 , 0x0000004b 
- 00024145  0x0000631e rtn 
- 00024146  0x00006322 fetcht  0x00000001 , 0x0000004c 
- 00024147  0x00006323 nsetflag  0x00000034 , 0x00000001 , 0x00000002 
- 00024148  0x00006324 storet  0x00000001 , 0x0000004c 
- 00024149  0x00006325 rtn 
- 00024150  0x00006329 fetch  0x00000001 , 0x0000007f 
- 00024151  0x0000632a rshift  0x0000003f , 0x0000003f 
- 00024152  0x0000632b and_into  0x00000001 , 0x0000003f 
- 00024153  0x0000632c rtn 
- 00024154  0x0000632f fetch  0x00000001 , 0x00004217 
- 00024155  0x00006330 rtn  0x00000034 
- 00024156  0x00006331 fetch  0x00000001 , 0x000009b5 
- 00024157  0x00006332 call  0x000067b2 , 0x00000034 
- 00024158  0x00006333 rtn 
- 00024159  0x00006336 call  0x00005e5a 
- 00024160  0x00006337 call  0x00005e56 
- 00024161  0x00006338 store  0x00000001 , 0x000004d5 
- 00024162  0x00006339 call  0x00005ff9 
- 00024163  0x0000633a jam  0x0000000c , 0x0000007c 
- 00024164  0x0000633b fetch  0x00000001 , 0x000041bd 
- 00024165  0x0000633c nrtn  0x00000034 
- 00024166  0x0000633d fetch  0x00000001 , 0x00000030 
- 00024167  0x0000633e rtnbit1  0x00000006 
- 00024168  0x0000633f jam  0x00000006 , 0x0000007e 
- 00024169  0x00006340 branch  0x00005d53 
- 00024170  0x00006343 arg  0x00000040 , 0x00000011 
- 00024171  0x00006344 call  0x00007288 
- 00024172  0x00006345 fetch  0x00000004 , 0x00000552 
- 00024173  0x00006346 fetcht  0x00000004 , 0x00000592 
- 00024174  0x00006347 isub  0x00000002 , 0x0000003e 
- 00024175  0x00006348 branch  0x00005e73 , 0x00000005 
- 00024176  0x00006349 jam  0x00000007 , 0x0000007c 
- 00024177  0x0000634a jam  0x00000005 , 0x000004ca 
- 00024178  0x0000634b rtn 
- 00024179  0x0000634d call  0x00005e77 
- 00024180  0x0000634e fetch  0x00000001 , 0x0000465a 
- 00024181  0x0000634f branch  0x00005f3e , 0x00000034 
- 00024182  0x00006350 rtn 
- 00024183  0x00006354 call  0x00007386 
- 00024184  0x00006355 call  0x000021b2 
- 00024185  0x00006356 fetch  0x00000001 , 0x0000004b 
- 00024186  0x00006357 isolate1  0x00000001 , 0x0000003f 
- 00024187  0x00006358 set0  0x00000001 , 0x0000003f 
- 00024188  0x00006359 store  0x00000001 , 0x0000004b 
- 00024189  0x0000635a fetch  0x00000001 , 0x00000055 
- 00024190  0x0000635b beq  0x00000019 , 0x00005e81 
- 00024191  0x0000635c beq  0x00000018 , 0x00005e81 
- 00024192  0x0000635d rtn 
- 00024193  0x0000635f fetch  0x00000001 , 0x000009b5 
- 00024194  0x00006360 rtnne  0x00000000 
- 00024195  0x00006361 fetch  0x00000001 , 0x0000004c 
- 00024196  0x00006362 rtnbit1  0x00000002 
- 00024197  0x00006363 branch  0x000063b1 
- 00024198  0x00006366 arg  0x00000552 , 0x00000011 
- 00024199  0x00006367 arg  0x00000582 , 0x00000012 
- 00024200  0x00006368 arg  0x00000562 , 0x00000005 
- 00024201  0x00006369 call  0x00007352 
- 00024202  0x0000636a arg  0x00000040 , 0x00000011 
- 00024203  0x0000636b call  0x00006311 
- 00024204  0x0000636c jam  0x0000000b , 0x0000007c 
- 00024205  0x0000636d fetch  0x00000001 , 0x00000030 
- 00024206  0x0000636e bbit0  0x00000006 , 0x00005ffc 
- 00024207  0x0000636f rtn 
- 00024208  0x00006372 fetch  0x00000002 , 0x0000015f 
- 00024209  0x00006373 add  0x0000003f , 0xfffffffd , 0x00000039 
- 00024210  0x00006374 fetcht  0x00000001 , 0x00000552 
- 00024211  0x00006375 setarg  0x00000101 
- 00024212  0x00006376 iadd  0x00000002 , 0x00000005 
- 00024213  0x00006377 arg  0x00000554 , 0x00000006 
- 00024214  0x00006378 call  0x00007f01 
- 00024215  0x00006379 fetcht  0x00000001 , 0x00000053 
- 00024216  0x0000637a fetch  0x00000001 , 0x00000553 
- 00024217  0x0000637b isub  0x00000002 , 0x0000003f 
- 00024218  0x0000637c sub  0x0000003f , 0x0000000e , 0x0000003e 
- 00024219  0x0000637d branch  0x00005ea0 , 0x00000002 
- 00024220  0x0000637e add  0x00000002 , 0x0000000e , 0x0000003f 
- 00024221  0x0000637f store  0x00000001 , 0x00000053 
- 00024222  0x00006380 jam  0x00000001 , 0x0000007c 
- 00024223  0x00006381 rtn 
- 00024224  0x00006383 fetch  0x00000001 , 0x0000004c 
- 00024225  0x00006384 set1  0x00000003 , 0x0000003f 
- 00024226  0x00006385 store  0x00000001 , 0x0000004c 
- 00024227  0x00006386 bbit1  0x00000004 , 0x00006006 
- 00024228  0x00006387 rtn 
- 00024229  0x00006389 fetch  0x00000001 , 0x00000552 
- 00024230  0x0000638a store  0x00000001 , 0x0000007d 
- 00024231  0x0000638b jam  0x00000002 , 0x0000007c 
- 00024232  0x0000638c rtn 
- 00024233  0x0000638f branch  0x00005e38 
- 00024234  0x00006392 jam  0x00000030 , 0x0000007c 
- 00024235  0x00006393 rtn 
- 00024236  0x00006396 jam  0x00000028 , 0x0000007c 
- 00024237  0x00006397 rtn 
- 00024238  0x0000639a jam  0x00000026 , 0x0000007c 
- 00024239  0x0000639b rtn 
- 00024240  0x000063a0 rtn 
- 00024241  0x000063a5 fetch  0x00000002 , 0x00000032 
- 00024242  0x000063a6 iforce  0x00000002 
- 00024243  0x000063a7 fetch  0x00000001 , 0x00000553 
- 00024244  0x000063a8 store  0x00000001 , 0x00000095 
- 00024245  0x000063a9 imul32  0x00000002 , 0x00000002 
- 00024246  0x000063aa fetch  0x00000002 , 0x00000554 
- 00024247  0x000063ab lshift  0x0000003f , 0x0000003f 
- 00024248  0x000063ac store  0x00000002 , 0x00000096 
- 00024249  0x000063ad fetch  0x00000004 , 0x00000556 
- 00024250  0x000063ae lshift  0x0000003f , 0x0000003f 
- 00024251  0x000063af store  0x00000004 , 0x00000091 
- 00024252  0x000063b1 deposit  0x00000002 
- 00024253  0x000063b2 store  0x00000002 , 0x00000098 
- 00024254  0x000063b3 rtn 
- 00024255  0x000063b5 fetcht  0x00000001 , 0x0000415a 
- 00024256  0x000063b6 fetch  0x00000001 , 0x00000553 
- 00024257  0x000063b7 ixor  0x00000002 , 0x0000003e 
- 00024258  0x000063b8 nbranch  0x00005d77 , 0x00000005 
- 00024259  0x000063b9 isolate1  0x00000000 , 0x0000003f 
- 00024260  0x000063ba fetch  0x00000001 , 0x0000004c 
- 00024261  0x000063bb setflag  0x00000001 , 0x00000005 , 0x0000003f 
- 00024262  0x000063bc store  0x00000001 , 0x0000004c 
- 00024263  0x000063bd jam  0x00000081 , 0x0000007c 
- 00024264  0x000063be jam  0x0000008b , 0x0000007d 
- 00024265  0x000063bf rtn 
- 00024266  0x000063c6 rtn 
- 00024267  0x000063c9 branch  0x00005e38 
- 00024268  0x000063cd branch  0x00005e38 
- 00024269  0x000063d2 fetch  0x00000002 , 0x00000552 
- 00024270  0x000063d3 store  0x00000002 , 0x00000171 
- 00024271  0x000063d4 rtn 
- 00024272  0x000063d7 fetch  0x00000002 , 0x00000555 
- 00024273  0x000063d8 fetcht  0x00000001 , 0x00004172 
- 00024274  0x000063d9 imul32  0x00000002 , 0x0000003f 
- 00024275  0x000063da arg  0x00000640 , 0x00000002 
- 00024276  0x000063db isub  0x00000002 , 0x0000003e 
- 00024277  0x000063dd rtn 
- 00024278  0x000063e0 fetch  0x00000002 , 0x00000557 
- 00024279  0x000063e1 branch  0x00005ef0 , 0x00000034 
- 00024280  0x000063e2 call  0x00005ed0 
- 00024281  0x000063e3 branch  0x00005ef0 , 0x00000002 
- 00024282  0x000063e4 fetch  0x00000001 , 0x00004092 
- 00024283  0x000063e5 sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00024284  0x000063e6 call  0x00003cd5 , 0x00000005 
- 00024285  0x000063e7 fetch  0x00000001 , 0x00000030 
- 00024286  0x000063e8 bbit1  0x00000001 , 0x00005ef0 
- 00024287  0x000063e9 fetch  0x00000002 , 0x00000553 
- 00024288  0x000063ea lshift  0x0000003f , 0x0000003f 
- 00024289  0x000063eb store  0x00000002 , 0x00000075 
- 00024290  0x000063ec fetch  0x00000002 , 0x00000555 
- 00024291  0x000063ed lshift  0x0000003f , 0x0000003f 
- 00024292  0x000063ee store  0x00000002 , 0x00000032 
- 00024293  0x000063ef fetch  0x00000002 , 0x00000557 
- 00024294  0x000063f0 store  0x00000001 , 0x00000073 
- 00024295  0x000063f1 iforce  0x00000002 
- 00024296  0x000063f2 fetch  0x00000002 , 0x00000559 
- 00024297  0x000063f3 store  0x00000001 , 0x00000074 
- 00024298  0x000063f4 isub  0x00000002 , 0x0000003e 
- 00024299  0x000063f5 nbranch  0x00005eed , 0x00000002 
- 00024300  0x000063f6 store  0x00000001 , 0x00000073 
- 00024301  0x000063f9 jam  0x00000003 , 0x0000007c 
- 00024302  0x000063fa jam  0x00000017 , 0x0000007d 
- 00024303  0x000063fb rtn 
- 00024304  0x000063fe jam  0x00000024 , 0x0000007e 
- 00024305  0x000063ff branch  0x00005d53 
- 00024306  0x00006402 call  0x00005e38 
- 00024307  0x00006403 call  0x00005ff9 
- 00024308  0x00006404 call  0x0000728b 
- 00024309  0x00006405 branch  0x000026b8 
- 00024310  0x00006408 call  0x00005e38 
- 00024311  0x00006409 branch  0x000026c0 
- 00024312  0x0000640d fetch  0x00000004 , 0x00000552 
- 00024313  0x0000640e lshift  0x0000003f , 0x0000003f 
- 00024314  0x00006410 branch  0x00005f04 , 0x00000029 
- 00024315  0x00006411 fetcht  0x00000001 , 0x000041bd 
- 00024316  0x00006412 nbranch  0x00005f01 , 0x00000034 
- 00024317  0x00006414 jam  0x00000004 , 0x0000007c 
- 00024318  0x00006415 jam  0x00000013 , 0x0000007d 
- 00024319  0x00006416 jam  0x00000024 , 0x0000007e 
- 00024320  0x00006417 rtn 
- 00024321  0x00006419 jam  0x00000034 , 0x0000007c 
- 00024322  0x0000641a jam  0x00000000 , 0x00000055 
- 00024323  0x0000641b branch  0x000021d9 
- 00024324  0x0000641e call  0x000021d9 
- 00024325  0x0000641f set1  0x00000022 , 0x00000000 
- 00024326  0x00006420 fetch  0x00000001 , 0x0000016d 
- 00024327  0x00006421 set0  0x00000002 , 0x0000003f 
- 00024328  0x00006422 store  0x00000001 , 0x0000016d 
- 00024329  0x00006423 branch  0x00005e38 
- 00024330  0x0000642c rtn 
- 00024331  0x00006430 jam  0x00000003 , 0x0000007c 
- 00024332  0x00006431 jam  0x00000018 , 0x0000007d 
- 00024333  0x00006432 jam  0x0000002e , 0x00000a99 
- 00024334  0x00006433 call  0x00007d86 
- 00024335  0x00006434 branch  0x000026e9 
- 00024336  0x00006437 fetch  0x00000001 , 0x00000552 
- 00024337  0x00006438 bne  0x00000001 , 0x00005f1c 
- 00024338  0x00006439 fetch  0x00000001 , 0x00000553 
- 00024339  0x0000643a bne  0x00000001 , 0x00005f1c 
- 00024340  0x0000643b fetch  0x00000001 , 0x00000554 
- 00024341  0x0000643c bne  0x00000030 , 0x00005f1c 
- 00024342  0x0000643d call  0x000062fc 
- 00024343  0x0000643e branch  0x00005f19 , 0x00000001 
- 00024344  0x0000643f jam  0x00000001 , 0x000009ae 
- 00024345  0x00006441 jam  0x00000003 , 0x0000007c 
- 00024346  0x00006442 jam  0x0000003d , 0x0000007d 
- 00024347  0x00006443 branch  0x00005d07 
- 00024348  0x00006446 jam  0x00000024 , 0x0000007e 
- 00024349  0x00006447 branch  0x00005d53 
- 00024350  0x0000644c jam  0x0000003e , 0x0000007c 
- 00024351  0x0000644e rtn 
- 00024352  0x00006450 fetch  0x00000001 , 0x00004662 
- 00024353  0x00006451 beq  0x00000001 , 0x00005f27 
- 00024354  0x00006452 beq  0x00000002 , 0x00005f2b 
- 00024355  0x00006454 call  0x000062fc 
- 00024356  0x00006455 rtn  0x00000001 
- 00024357  0x00006456 jam  0x00000008 , 0x000009ae 
- 00024358  0x00006457 rtn 
- 00024359  0x0000645a call  0x00007962 
- 00024360  0x0000645b jam  0x00000035 , 0x00000a99 
- 00024361  0x0000645c call  0x00007d86 
- 00024362  0x0000645d branch  0x00005f23 
- 00024363  0x00006461 call  0x000062fc 
- 00024364  0x00006462 rtn  0x00000001 
- 00024365  0x00006463 fetch  0x00000001 , 0x00004663 
- 00024366  0x00006464 beq  0x00000013 , 0x00005f3b 
- 00024367  0x00006465 increase  0x00000001 , 0x0000003f 
- 00024368  0x00006466 store  0x00000001 , 0x00004663 
- 00024369  0x0000646a jam  0x00000001 , 0x000009b0 
- 00024370  0x0000646b jam  0x00000004 , 0x000009ae 
- 00024371  0x0000646c fetch  0x00000001 , 0x00004663 
- 00024372  0x0000646d copy  0x0000003f , 0x00000007 
- 00024373  0x0000646e fetch  0x00000006 , 0x0000468a 
- 00024374  0x0000646f qisolate1  0x0000003f 
- 00024375  0x00006470 setarg  0x00000080 
- 00024376  0x00006471 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00024377  0x00006472 store  0x00000001 , 0x00004664 
- 00024378  0x00006473 rtn 
- 00024379  0x00006476 jam  0x00000008 , 0x000009ae 
- 00024380  0x00006477 rtn 
- 00024381  0x0000647a call  0x00005f43 
- 00024382  0x0000647c fetch  0x00000001 , 0x00004665 
- 00024383  0x0000647d rtn  0x00000034 
- 00024384  0x0000647e jam  0x00000000 , 0x00004665 
- 00024385  0x0000647f jam  0x00000038 , 0x00000a99 
- 00024386  0x00006480 branch  0x00007d86 
- 00024387  0x00006485 call  0x000062fc 
- 00024388  0x00006486 ncall  0x00007965 , 0x00000001 
- 00024389  0x00006487 call  0x00007975 , 0x00000001 
- 00024390  0x00006488 call  0x000062fc 
- 00024391  0x00006489 rtn  0x00000001 
- 00024392  0x0000648a jam  0x0000000c , 0x000009ae 
- 00024393  0x0000648b jam  0x00000001 , 0x000009b0 
- 00024394  0x0000648c rtn 
- 00024395  0x0000648f arg  0x00000a6e , 0x00000005 
- 00024396  0x00006490 arg  0x00000552 , 0x00000006 
- 00024397  0x00006491 call  0x00007ebf 
- 00024398  0x00006492 fetch  0x00000001 , 0x00004662 
- 00024399  0x00006493 rtneq  0x00000002 
- 00024400  0x00006494 branch  0x000076d8 
- 00024401  0x00006497 fetch  0x00000001 , 0x000009af 
- 00024402  0x00006498 beq  0x00000007 , 0x00005f55 
- 00024403  0x00006499 fetch  0x00000001 , 0x000009ae 
- 00024404  0x0000649a bne  0x00000001 , 0x00005f68 
- 00024405  0x0000649c fetch  0x00000001 , 0x000009b7 
- 00024406  0x0000649d sub  0x0000003f , 0x00000020 , 0x00000005 
- 00024407  0x0000649e nbranch  0x00005f68 , 0x00000002 
- 00024408  0x0000649f arg  0x000009c6 , 0x00000005 
- 00024409  0x000064a0 iadd  0x00000005 , 0x00000005 
- 00024410  0x000064a1 fetch  0x00000008 , 0x00000552 
- 00024411  0x000064a2 istore  0x00000008 , 0x00000005 
- 00024412  0x000064a3 fetch  0x00000008 , 0x0000055a 
- 00024413  0x000064a4 istore  0x00000008 , 0x00000005 
- 00024414  0x000064a5 fetch  0x00000001 , 0x000009b7 
- 00024415  0x000064a6 increase  0x00000010 , 0x0000003f 
- 00024416  0x000064a7 store  0x00000001 , 0x000009b7 
- 00024417  0x000064a8 bne  0x00000030 , 0x00005e38 
- 00024418  0x000064aa call  0x000062fc 
- 00024419  0x000064ab branch  0x00005e38 , 0x00000001 
- 00024420  0x000064ac jam  0x00000001 , 0x000009b8 
- 00024421  0x000064ad jam  0x00000002 , 0x000009ae 
- 00024422  0x000064ae jam  0x00000001 , 0x000009b0 
- 00024423  0x000064af branch  0x00005e38 
- 00024424  0x000064b1 jam  0x00000024 , 0x0000007e 
- 00024425  0x000064b2 branch  0x00005d53 
- 00024426  0x000064b4 fetch  0x00000001 , 0x000009b6 
- 00024427  0x000064b5 beq  0x00000030 , 0x00005f6e 
- 00024428  0x000064b6 jam  0x0000003e , 0x0000007c 
- 00024429  0x000064b7 branch  0x00005d07 
- 00024430  0x000064ba call  0x000062fc 
- 00024431  0x000064bb branch  0x00005f77 , 0x00000001 
- 00024432  0x000064bc fetch  0x00000001 , 0x00004662 
- 00024433  0x000064bd beq  0x00000002 , 0x00005f75 
- 00024434  0x000064be jam  0x00000001 , 0x000009b0 
- 00024435  0x000064bf jam  0x00000004 , 0x000009ae 
- 00024436  0x000064c0 branch  0x00005d07 
- 00024437  0x000064c3 jam  0x00000036 , 0x00000a99 
- 00024438  0x000064c4 branch  0x00007d86 
- 00024439  0x000064c9 branch  0x00005d07 
- 00024440  0x000064cc fetch  0x00000001 , 0x000009af 
- 00024441  0x000064cd beq  0x00000007 , 0x00005f7c 
- 00024442  0x000064ce fetch  0x00000001 , 0x000009ae 
- 00024443  0x000064cf bne  0x00000006 , 0x00005f88 
- 00024444  0x000064d1 arg  0x00000a2e , 0x00000005 
- 00024445  0x000064d2 fetch  0x00000008 , 0x00000552 
- 00024446  0x000064d3 istore  0x00000008 , 0x00000005 
- 00024447  0x000064d4 fetch  0x00000008 , 0x0000055a 
- 00024448  0x000064d5 istore  0x00000008 , 0x00000005 
- 00024449  0x000064d6 call  0x000062fc 
- 00024450  0x000064d7 branch  0x00005f86 , 0x00000001 
- 00024451  0x000064d8 jam  0x00000007 , 0x000009ae 
- 00024452  0x000064d9 jam  0x00000001 , 0x000009b0 
- 00024453  0x000064da branch  0x00005e38 
- 00024454  0x000064dc jam  0x00000004 , 0x000009af 
- 00024455  0x000064dd branch  0x000076d8 
- 00024456  0x000064e1 jam  0x00000024 , 0x0000007e 
- 00024457  0x000064e2 branch  0x00005d53 
- 00024458  0x000064e5 fetch  0x00000001 , 0x000009af 
- 00024459  0x000064e6 beq  0x0000000b , 0x00005f8e 
- 00024460  0x000064e7 fetch  0x00000001 , 0x000009ae 
- 00024461  0x000064e8 bne  0x00000008 , 0x00005f9d 
- 00024462  0x000064ea arg  0x00000a5e , 0x00000005 
- 00024463  0x000064eb arg  0x00000552 , 0x00000006 
- 00024464  0x000064ec call  0x00007ebf 
- 00024465  0x000064ed call  0x000062fc 
- 00024466  0x000064ee branch  0x00005f9a , 0x00000001 
- 00024467  0x000064ef fetch  0x00000001 , 0x00004662 
- 00024468  0x000064f0 beq  0x00000001 , 0x00005f9f 
- 00024469  0x000064f2 jam  0x00000000 , 0x00004661 
- 00024470  0x000064f3 jam  0x00000009 , 0x000009ae 
- 00024471  0x000064f4 jam  0x00000001 , 0x000009b0 
- 00024472  0x000064f5 jam  0x00000041 , 0x0000007d 
- 00024473  0x000064f6 branch  0x00005d07 
- 00024474  0x000064f9 jam  0x00000009 , 0x000009af 
- 00024475  0x000064fa jam  0x00000001 , 0x000009b1 
- 00024476  0x000064fb branch  0x00005d07 
- 00024477  0x000064fd jam  0x00000024 , 0x0000007e 
- 00024478  0x000064fe branch  0x00005d53 
- 00024479  0x00006501 fetch  0x00000001 , 0x00004661 
- 00024480  0x00006502 bbit1  0x00000007 , 0x00005fa4 
- 00024481  0x00006503 set1  0x00000006 , 0x0000003f 
- 00024482  0x00006504 store  0x00000001 , 0x00004661 
- 00024483  0x00006505 rtn 
- 00024484  0x00006508 bbit1  0x00000000 , 0x00005f95 
- 00024485  0x00006509 jam  0x00000000 , 0x00004661 
- 00024486  0x0000650a branch  0x00005f9d 
- 00024487  0x0000650e branch  0x00005d07 
- 00024488  0x00006511 fetch  0x00000001 , 0x0000016d 
- 00024489  0x00006512 set0  0x00000001 
- 00024490  0x00006513 store  0x00000001 , 0x0000016d 
- 00024491  0x00006514 call  0x00005e38 
- 00024492  0x00006515 nrtn  0x00000029 
- 00024493  0x00006516 fetch  0x00000001 , 0x00000552 
- 00024494  0x00006517 fetcht  0x00000001 , 0x0000004b 
- 00024495  0x00006518 setflag  0x00000034 , 0x00000004 , 0x00000002 
- 00024496  0x00006519 nsetflag  0x00000034 , 0x00000005 , 0x00000002 
- 00024497  0x0000651a storet  0x00000001 , 0x0000004b 
- 00024498  0x0000651b rtn 
- 00024499  0x0000651e fetcht  0x00000008 , 0x00000552 
- 00024500  0x00006520 fetch  0x00000001 , 0x00000055 
- 00024501  0x00006521 rtnne  0x00000003 
- 00024502  0x00006523 fetch  0x00000001 , 0x0000016d 
- 00024503  0x00006524 bbit0  0x00000004 , 0x00005fba 
- 00024504  0x00006526 jam  0x00000014 , 0x00000055 
- 00024505  0x00006527 rtn 
- 00024506  0x00006529 jam  0x00000004 , 0x00000055 
- 00024507  0x0000652a rtn 
- 00024508  0x0000652c fetch  0x00000001 , 0x0000017f 
- 00024509  0x0000652d store  0x00000001 , 0x0000015b 
- 00024510  0x0000652e jam  0x00000003 , 0x0000007c 
- 00024511  0x0000652f jam  0x00000038 , 0x0000007d 
- 00024512  0x00006530 rtn 
- 00024513  0x00006534 jam  0x00000003 , 0x0000007c 
- 00024514  0x00006535 jam  0x00000039 , 0x0000007d 
- 00024515  0x00006536 force  0x00000009 , 0x00000039 
- 00024516  0x00006537 arg  0x00000552 , 0x00000006 
- 00024517  0x00006538 arg  0x00000152 , 0x00000005 
- 00024518  0x0000653a ifetch  0x00000001 , 0x00000006 
- 00024519  0x0000653b xor_into  0x00000055 , 0x0000003f 
- 00024520  0x0000653c istore  0x00000001 , 0x00000005 
- 00024521  0x0000653d loop  0x00005fc6 
- 00024522  0x0000653e fetch  0x00000001 , 0x00000152 
- 00024523  0x0000653f fetcht  0x00000001 , 0x00000151 
- 00024524  0x00006540 set0  0x00000007 , 0x00000002 
- 00024525  0x00006541 set0  0x00000004 , 0x00000002 
- 00024526  0x00006542 beq  0x000000ff , 0x00005fda 
- 00024527  0x00006543 beq  0x00000000 , 0x00005ff3 
- 00024528  0x00006544 beq  0x00000005 , 0x00005fe7 
- 00024529  0x00006545 beq  0x00000007 , 0x00005fe6 
- 00024530  0x00006546 beq  0x00000006 , 0x00005fe7 
- 00024531  0x00006547 beq  0x00000008 , 0x00005fe6 
- 00024532  0x00006548 beq  0x00000001 , 0x00005fdf 
- 00024533  0x00006549 beq  0x00000002 , 0x00005fdf 
- 00024534  0x0000654a beq  0x00000003 , 0x00005fdf 
- 00024535  0x0000654b beq  0x00000009 , 0x00005fdf 
- 00024536  0x0000654c beq  0x00000004 , 0x00005fdf 
- 00024537  0x0000654d rtn 
- 00024538  0x00006550 fetch  0x00000001 , 0x00000151 
- 00024539  0x00006551 set1  0x00000003 , 0x0000003f 
- 00024540  0x00006552 set1  0x00000002 , 0x0000003f 
- 00024541  0x00006553 store  0x00000001 , 0x00000151 
- 00024542  0x00006554 rtn 
- 00024543  0x00006556 set1  0x00000004 , 0x00000002 
- 00024544  0x00006557 jam  0x00000005 , 0x00000180 
- 00024545  0x00006558 fetch  0x00000002 , 0x00000159 
- 00024546  0x00006559 iforce  0x00000039 
- 00024547  0x0000655a store  0x00000002 , 0x0000015f 
- 00024548  0x0000655b arg  0x00000551 , 0x00000005 
- 00024549  0x0000655c call  0x00007f73 
- 00024550  0x0000655e set1  0x00000007 , 0x00000002 
- 00024551  0x00006560 set1  0x00000002 , 0x00000002 
- 00024552  0x00006561 force  0x00000000 , 0x0000003f 
- 00024553  0x00006562 store  0x00000001 , 0x0000000b 
- 00024554  0x00006563 store  0x00000002 , 0x000000fa 
- 00024555  0x00006564 store  0x00000002 , 0x000000fc 
- 00024556  0x00006565 store  0x00000002 , 0x000000f8 
- 00024557  0x00006566 store  0x00000002 , 0x000000f6 
- 00024558  0x00006567 fetch  0x00000001 , 0x00000153 
- 00024559  0x00006568 compare  0x00000000 , 0x0000003f , 0x000000ff 
- 00024560  0x00006569 setflag  0x00000001 , 0x00000006 , 0x00000002 
- 00024561  0x0000656a storet  0x00000001 , 0x00000151 
- 00024562  0x0000656b rtn 
- 00024563  0x0000656e set0  0x00000011 , 0x00000000 
- 00024564  0x0000656f jam  0x00000000 , 0x00000151 
- 00024565  0x00006570 fetch  0x00000001 , 0x0000017f 
- 00024566  0x00006571 set0  0x00000006 , 0x0000003f 
- 00024567  0x00006572 store  0x00000001 , 0x0000017f 
- 00024568  0x00006573 rtn 
- 00024569  0x0000657a arg  0x00000552 , 0x00000006 
- 00024570  0x0000657b arg  0x00000562 , 0x00000005 
- 00024571  0x0000657c branch  0x00007ebf 
- 00024572  0x0000657f jam  0x00000009 , 0x0000007c 
- 00024573  0x00006580 rtn 
- 00024574  0x00006583 nrtn  0x00000029 
- 00024575  0x00006584 jam  0x00000011 , 0x0000007c 
- 00024576  0x00006585 rtn 
- 00024577  0x00006588 arg  0x000040a0 , 0x00000011 
- 00024578  0x00006589 call  0x00007255 
- 00024579  0x0000658a jam  0x00000003 , 0x0000007c 
- 00024580  0x0000658b jam  0x00000008 , 0x0000007d 
- 00024581  0x0000658c rtn 
- 00024582  0x0000658f jam  0x0000000a , 0x00000072 
- 00024583  0x00006590 jam  0x00000007 , 0x0000007c 
- 00024584  0x00006591 jam  0x00000016 , 0x000004ca 
- 00024585  0x00006592 rtn 
- 00024586  0x00006599 bpatchx  0x00000082 , 0x00004030 
- 00024587  0x0000659a disable  0x00000028 
- 00024588  0x0000659b call  0x000062c1 
- 00024589  0x0000659c fetch  0x00000001 , 0x00000048 
- 00024590  0x0000659d rtn  0x00000034 
- 00024591  0x000065a2 bbit1  0x00000007 , 0x0000603f 
- 00024592  0x000065a4 beq  0x00000001 , 0x0000616f 
- 00024593  0x000065a5 beq  0x00000002 , 0x000060e4 
- 00024594  0x000065a6 beq  0x00000003 , 0x0000604a 
- 00024595  0x000065a7 beq  0x00000004 , 0x00006060 
- 00024596  0x000065a8 beq  0x00000027 , 0x000061db 
- 00024597  0x000065a9 beq  0x00000028 , 0x00006108 
- 00024598  0x000065aa beq  0x00000030 , 0x000060f4 
- 00024599  0x000065ab beq  0x00000025 , 0x000061d6 
- 00024600  0x000065ac beq  0x00000026 , 0x00006103 
- 00024601  0x000065ad beq  0x00000031 , 0x000061c3 
- 00024602  0x000065ae beq  0x00000037 , 0x0000616a 
- 00024603  0x000065af beq  0x00000033 , 0x0000615c 
- 00024604  0x000065b0 beq  0x00000008 , 0x00006259 
- 00024605  0x000065b1 beq  0x00000009 , 0x0000624f 
- 00024606  0x000065b2 beq  0x0000000b , 0x00006264 
- 00024607  0x000065b3 beq  0x0000000c , 0x0000626d 
- 00024608  0x000065b4 beq  0x0000000f , 0x00006162 
- 00024609  0x000065b5 beq  0x00000010 , 0x00006292 
- 00024610  0x000065b6 beq  0x00000011 , 0x00006288 
- 00024611  0x000065b7 beq  0x00000007 , 0x00006152 
- 00024612  0x000065b8 beq  0x0000002a , 0x0000617e 
- 00024613  0x000065b9 beq  0x0000000a , 0x0000617f 
- 00024614  0x000065bb beq  0x0000001f , 0x000061bc 
- 00024615  0x000065bc beq  0x00000006 , 0x000060f9 
- 00024616  0x000065bd beq  0x00000021 , 0x0000615f 
- 00024617  0x000065be beq  0x0000002d , 0x000061b2 
- 00024618  0x000065bf beq  0x0000002e , 0x000061b7 
- 00024619  0x000065c0 beq  0x00000022 , 0x0000615f 
- 00024620  0x000065c1 beq  0x00000034 , 0x00006180 
- 00024621  0x000065c2 beq  0x00000013 , 0x00006195 
- 00024622  0x000065c3 beq  0x00000017 , 0x000061a4 
- 00024623  0x000065c4 beq  0x00000012 , 0x0000628f 
- 00024624  0x000065c5 beq  0x0000002f , 0x000061aa 
- 00024625  0x000065c6 beq  0x00000018 , 0x000061af 
- 00024626  0x000065c7 beq  0x0000003d , 0x000061ff 
- 00024627  0x000065c8 beq  0x0000003e , 0x0000620b 
- 00024628  0x000065c9 beq  0x0000003f , 0x0000621d 
- 00024629  0x000065ca beq  0x00000040 , 0x00006227 
- 00024630  0x000065cb beq  0x00000041 , 0x0000623c 
- 00024631  0x000065cc beq  0x00000023 , 0x0000624b 
- 00024632  0x000065cd beq  0x0000003b , 0x00006246 
- 00024633  0x000065cf beq  0x00000005 , 0x0000624c 
- 00024634  0x000065d0 beq  0x00000029 , 0x0000624d 
- 00024635  0x000065d1 beq  0x00000038 , 0x0000624e 
- 00024636  0x000065d2 beq  0x00000039 , 0x00006175 
- 00024637  0x000065d4 branch  0x00002a8c 
- 00024638  0x000065d5 rtn 
- 00024639  0x000065d7 beq  0x00000081 , 0x0000606d 
- 00024640  0x000065d8 beq  0x00000084 , 0x00006099 
- 00024641  0x000065d9 beq  0x00000082 , 0x00006076 
- 00024642  0x000065da beq  0x00000083 , 0x0000610d 
- 00024643  0x000065db beq  0x0000008b , 0x00006118 
- 00024644  0x000065dc beq  0x00000097 , 0x0000614e 
- 00024645  0x000065dd beq  0x00000099 , 0x000060d5 
- 00024646  0x000065de beq  0x0000009a , 0x000060a4 
- 00024647  0x000065df beq  0x00000095 , 0x000060da 
- 00024648  0x000065e0 beq  0x00000096 , 0x000060db 
- 00024649  0x000065e1 branch  0x00002a8c 
- 00024650  0x000065e8 force  0x00000002 , 0x0000003f 
- 00024651  0x000065e9 call  0x00006298 
- 00024652  0x000065ea fetch  0x00000001 , 0x00000049 
- 00024653  0x000065eb istore  0x00000001 , 0x00000005 
- 00024654  0x000065ec call  0x000062a7 
- 00024655  0x000065ed bpatchx  0x00000083 , 0x00004030 
- 00024656  0x000065ee fetch  0x00000001 , 0x00000049 
- 00024657  0x000065ef beq  0x00000008 , 0x00006080 
- 00024658  0x000065f0 beq  0x0000000f , 0x00006084 
- 00024659  0x000065f1 beq  0x00000010 , 0x0000608f 
- 00024660  0x000065f2 beq  0x00000017 , 0x0000605f 
- 00024661  0x000065f3 beq  0x00000033 , 0x00006092 
- 00024662  0x000065f4 beq  0x00000041 , 0x00006098 
- 00024663  0x000065f5 beq  0x00000011 , 0x00006059 
- 00024664  0x000065f6 rtn 
- 00024665  0x000065f9 fetch  0x00000001 , 0x00000055 
- 00024666  0x000065fa rtn  0x00000034 
- 00024667  0x000065fb jam  0x0000001b , 0x00000055 
- 00024668  0x000065fc setarg  0x0000000c 
- 00024669  0x000065fd arg  0x00000007 , 0x00000007 
- 00024670  0x000065fe branch  0x00007f08 
- 00024671  0x00006601 branch  0x000026c6 
- 00024672  0x00006603 force  0x00000003 , 0x0000003f 
- 00024673  0x00006604 call  0x00006298 
- 00024674  0x00006605 fetch  0x00000001 , 0x00000049 
- 00024675  0x00006606 beq  0x0000000b , 0x00006068 
- 00024676  0x00006607 istore  0x00000001 , 0x00000005 
- 00024677  0x00006608 fetch  0x00000001 , 0x0000004a 
- 00024678  0x00006609 istore  0x00000001 , 0x00000005 
- 00024679  0x0000660a branch  0x000062a7 
- 00024680  0x0000660d istore  0x00000001 , 0x00000005 
- 00024681  0x0000660e fetch  0x00000001 , 0x0000004a 
- 00024682  0x0000660f istore  0x00000001 , 0x00000005 
- 00024683  0x00006610 arg  0x000004d5 , 0x00000002 
- 00024684  0x00006611 branch  0x000062e2 
- 00024685  0x00006614 force  0x00000004 , 0x00000007 
- 00024686  0x00006615 call  0x000062a0 
- 00024687  0x00006616 setarg  0x0000007f 
- 00024688  0x00006617 istore  0x00000001 , 0x00000005 
- 00024689  0x00006618 fetch  0x00000001 , 0x00000049 
- 00024690  0x00006619 set0  0x00000007 , 0x0000003f 
- 00024691  0x0000661a istore  0x00000001 , 0x00000005 
- 00024692  0x0000661b fetch  0x00000001 , 0x00000049 
- 00024693  0x0000661c branch  0x000062a7 
- 00024694  0x0000661f force  0x00000005 , 0x00000007 
- 00024695  0x00006620 call  0x000062a0 
- 00024696  0x00006621 setarg  0x0000007f 
- 00024697  0x00006622 istore  0x00000001 , 0x00000005 
- 00024698  0x00006623 fetch  0x00000001 , 0x00000049 
- 00024699  0x00006624 set0  0x00000007 , 0x0000003f 
- 00024700  0x00006625 istore  0x00000001 , 0x00000005 
- 00024701  0x00006626 fetch  0x00000001 , 0x0000004a 
- 00024702  0x00006627 istore  0x00000001 , 0x00000005 
- 00024703  0x00006628 branch  0x000062a7 
- 00024704  0x0000662c call  0x0000244f 
- 00024705  0x0000662d call  0x000062f3 
- 00024706  0x0000662e rtn  0x00000001 
- 00024707  0x0000662f branch  0x00005ffc 
- 00024708  0x00006632 fetch  0x00000001 , 0x0000004b 
- 00024709  0x00006633 bbit1  0x00000005 , 0x0000608b 
- 00024710  0x00006634 rtnbit0  0x00000004 
- 00024711  0x00006635 jam  0x00000012 , 0x0000007c 
- 00024712  0x00006636 set0  0x00000004 , 0x0000003f 
- 00024713  0x00006637 call  0x000062eb 
- 00024714  0x00006638 branch  0x0000608d 
- 00024715  0x0000663a jam  0x00000010 , 0x0000007c 
- 00024716  0x0000663b set0  0x00000005 , 0x0000003f 
- 00024717  0x0000663d store  0x00000001 , 0x0000004b 
- 00024718  0x0000663e rtn 
- 00024719  0x00006641 call  0x000062fc 
- 00024720  0x00006642 branch  0x00005ffe , 0x00000001 
- 00024721  0x00006643 rtn 
- 00024722  0x00006646 jam  0x0000008b , 0x0000007c 
- 00024723  0x00006648 fetch  0x00000001 , 0x000004d1 
- 00024724  0x00006649 set1  0x00000000 , 0x0000003f 
- 00024725  0x0000664a store  0x00000001 , 0x000004d1 
- 00024726  0x0000664b jam  0x00000001 , 0x00000a99 
- 00024727  0x0000664c branch  0x00007d86 
- 00024728  0x00006650 rtn 
- 00024729  0x00006655 force  0x0000000c , 0x00000007 
- 00024730  0x00006656 call  0x000062a0 
- 00024731  0x00006657 setarg  0x00000001 
- 00024732  0x00006658 istore  0x00000001 , 0x00000005 
- 00024733  0x00006659 fetch  0x00000002 , 0x000004ce 
- 00024734  0x0000665a istore  0x00000002 , 0x00000005 
- 00024735  0x0000665b setarg  0x00000000 
- 00024736  0x0000665c istore  0x00000003 , 0x00000005 
- 00024737  0x0000665d setarg  0x00000000 
- 00024738  0x0000665e istore  0x00000004 , 0x00000005 
- 00024739  0x0000665f branch  0x000062b0 
- 00024740  0x00006661 force  0x00000005 , 0x00000007 
- 00024741  0x00006662 call  0x000062a0 
- 00024742  0x00006663 fetch  0x00000003 , 0x0000465b 
- 00024743  0x00006664 istore  0x00000003 , 0x00000005 
- 00024744  0x00006665 call  0x000062b0 
- 00024745  0x00006666 jam  0x00000001 , 0x00004665 
- 00024746  0x00006667 fetch  0x00000001 , 0x0000465b 
- 00024747  0x00006668 beq  0x00000001 , 0x000060b5 
- 00024748  0x00006669 beq  0x00000002 , 0x000060af 
- 00024749  0x0000666a beq  0x00000003 , 0x000060bb 
- 00024750  0x0000666b rtn 
- 00024751  0x0000666e fetch  0x00000001 , 0x0000465e 
- 00024752  0x0000666f beq  0x00000000 , 0x000060c7 
- 00024753  0x00006670 beq  0x00000001 , 0x000060c7 
- 00024754  0x00006671 beq  0x00000002 , 0x000060c7 
- 00024755  0x00006672 beq  0x00000003 , 0x000060c1 
- 00024756  0x00006673 rtn 
- 00024757  0x00006677 fetch  0x00000001 , 0x0000465e 
- 00024758  0x00006678 beq  0x00000000 , 0x000060c1 
- 00024759  0x00006679 beq  0x00000001 , 0x000060c5 
- 00024760  0x0000667a beq  0x00000002 , 0x000060c7 
- 00024761  0x0000667b beq  0x00000003 , 0x000060c1 
- 00024762  0x0000667c rtn 
- 00024763  0x00006680 fetch  0x00000001 , 0x0000465e 
- 00024764  0x00006681 beq  0x00000000 , 0x000060c1 
- 00024765  0x00006682 beq  0x00000001 , 0x000060c1 
- 00024766  0x00006683 beq  0x00000002 , 0x000060c1 
- 00024767  0x00006684 beq  0x00000003 , 0x000060c1 
- 00024768  0x00006685 rtn 
- 00024769  0x0000668f jam  0x00000003 , 0x00004662 
- 00024770  0x00006690 fetch  0x00000001 , 0x0000455c 
- 00024771  0x00006691 bbit1  0x00000000 , 0x000033e9 
- 00024772  0x00006692 rtn 
- 00024773  0x00006696 jam  0x00000001 , 0x00004662 
- 00024774  0x00006697 rtn 
- 00024775  0x0000669e jam  0x00000002 , 0x00004662 
- 00024776  0x0000669f rtn 
- 00024777  0x000066a3 arg  0x00000000 , 0x00000007 
- 00024778  0x000066a4 branch  0x000060cd 
- 00024779  0x000066a7 arg  0x00000000 , 0x00000007 
- 00024780  0x000066a8 branch  0x000060d1 
- 00024781  0x000066ab fetch  0x00000001 , 0x0000455c 
- 00024782  0x000066ac qset1  0x0000003f 
- 00024783  0x000066ad store  0x00000001 , 0x0000455c 
- 00024784  0x000066ae rtn 
- 00024785  0x000066b1 fetch  0x00000001 , 0x0000455c 
- 00024786  0x000066b2 qset0  0x0000003f 
- 00024787  0x000066b3 store  0x00000001 , 0x0000455c 
- 00024788  0x000066b4 rtn 
- 00024789  0x000066b8 force  0x00000005 , 0x00000007 
- 00024790  0x000066b9 call  0x000062a0 
- 00024791  0x000066ba fetch  0x00000003 , 0x0000465b 
- 00024792  0x000066bb istore  0x00000003 , 0x00000005 
- 00024793  0x000066bc branch  0x000062b2 
- 00024794  0x000066c1 rtn 
- 00024795  0x000066c3 force  0x00000009 , 0x00000007 
- 00024796  0x000066c4 call  0x000062a0 
- 00024797  0x000066c5 fetch  0x00000001 , 0x00000095 
- 00024798  0x000066c6 istore  0x00000001 , 0x00000005 
- 00024799  0x000066c7 fetch  0x00000002 , 0x00000096 
- 00024800  0x000066c8 istore  0x00000002 , 0x00000005 
- 00024801  0x000066c9 fetch  0x00000004 , 0x00000091 
- 00024802  0x000066ca istore  0x00000004 , 0x00000005 
- 00024803  0x000066cb branch  0x000062b0 
- 00024804  0x000066ce force  0x00000011 , 0x0000003f 
- 00024805  0x000066cf call  0x00006298 
- 00024806  0x000066d0 fetch  0x00000001 , 0x00000049 
- 00024807  0x000066d1 copy  0x0000003f , 0x00000002 
- 00024808  0x000066d2 beq  0x00000000 , 0x000060ec 
- 00024809  0x000066d3 beq  0x0000000e , 0x000060ec 
- 00024810  0x000066d4 beq  0x0000001c , 0x000060ec 
- 00024811  0x000066d5 rtn 
- 00024812  0x000066d7 istore  0x00000001 , 0x00000005 
- 00024813  0x000066d8 fetch  0x00000001 , 0x00004515 
- 00024814  0x000066d9 istore  0x00000001 , 0x00000005 
- 00024815  0x000066da arg  0x0000000e , 0x00000039 
- 00024816  0x000066db setarg  0x00004516 
- 00024817  0x000066dc iadd  0x00000002 , 0x00000006 
- 00024818  0x000066dd call  0x00007f01 
- 00024819  0x000066de branch  0x000062b0 
- 00024820  0x000066e2 force  0x00000003 , 0x0000003f 
- 00024821  0x000066e3 call  0x00006298 
- 00024822  0x000066e4 setarg  0x00000114 
- 00024823  0x000066e5 istore  0x00000002 , 0x00000005 
- 00024824  0x000066e6 branch  0x000062b0 
- 00024825  0x000066ea force  0x00000003 , 0x0000003f 
- 00024826  0x000066eb call  0x00006298 
- 00024827  0x000066ec fetch  0x00000004 , 0x00000165 
- 00024828  0x000066ed isub  0x00000022 , 0x0000003f 
- 00024829  0x000066ee branch  0x000060ff , 0x00000029 
- 00024830  0x000066ef sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00024831  0x000066f2 rshift2  0x0000003f , 0x0000003f 
- 00024832  0x000066f3 set0  0x0000000f , 0x0000003f 
- 00024833  0x000066f4 istore  0x00000002 , 0x00000005 
- 00024834  0x000066f5 branch  0x000062b0 
- 00024835  0x000066f8 force  0x00000006 , 0x0000003f 
- 00024836  0x000066f9 call  0x00006298 
- 00024837  0x000066fa fetch  0x00000005 , 0x00004510 
- 00024838  0x000066fb istore  0x00000005 , 0x00000005 
- 00024839  0x000066fc branch  0x000062b0 
- 00024840  0x000066ff force  0x00000009 , 0x0000003f 
- 00024841  0x00006700 call  0x00006298 
- 00024842  0x00006701 fetch  0x00000008 , 0x00004098 
- 00024843  0x00006702 istore  0x00000008 , 0x00000005 
- 00024844  0x00006703 branch  0x000062b0 
- 00024845  0x0000670b force  0x0000000c , 0x00000007 
- 00024846  0x0000670c call  0x000062a0 
- 00024847  0x0000670d setarg  0x00000001 
- 00024848  0x0000670e istore  0x00000001 , 0x00000005 
- 00024849  0x0000670f fetch  0x00000002 , 0x000004ce 
- 00024850  0x00006710 istore  0x00000002 , 0x00000005 
- 00024851  0x00006711 setarg  0x00000000 
- 00024852  0x00006712 istore  0x00000003 , 0x00000005 
- 00024853  0x00006713 setarg  0x00000000 
- 00024854  0x00006714 istore  0x00000004 , 0x00000005 
- 00024855  0x00006715 branch  0x000062b2 
- 00024856  0x00006718 force  0x00000003 , 0x00000007 
- 00024857  0x00006719 call  0x000062a0 
- 00024858  0x0000671a fetch  0x00000001 , 0x0000415a 
- 00024859  0x0000671b istore  0x00000001 , 0x00000005 
- 00024860  0x0000671c disable  0x00000028 
- 00024861  0x0000671d call  0x000062b2 
- 00024862  0x0000671e nrtn  0x00000028 
- 00024863  0x0000671f nrtn  0x00000029 
- 00024864  0x00006720 fetch  0x00000001 , 0x000040d8 
- 00024865  0x00006721 rtnbit0  0x00000000 
- 00024866  0x00006722 call  0x00006132 
- 00024867  0x00006723 branch  0x0000613c 
- 00024868  0x00006727 bpatchx  0x00000084 , 0x00004030 
- 00024869  0x00006728 fetch  0x00000001 , 0x0000409e 
- 00024870  0x00006729 set1  0x00000003 , 0x0000003f 
- 00024871  0x0000672a store  0x00000001 , 0x0000409e 
- 00024872  0x0000672b setarg  0x00000101 
- 00024873  0x0000672c store  0x00000002 , 0x000004ce 
- 00024874  0x0000672d rtn 
- 00024875  0x00006730 bpatchx  0x00000085 , 0x00004030 
- 00024876  0x00006731 fetch  0x00000001 , 0x0000409e 
- 00024877  0x00006732 set0  0x00000003 , 0x0000003f 
- 00024878  0x00006733 store  0x00000001 , 0x0000409e 
- 00024879  0x00006734 setarg  0x00000000 
- 00024880  0x00006735 store  0x00000002 , 0x000004ce 
- 00024881  0x00006736 rtn 
- 00024882  0x00006739 jam  0x00000003 , 0x000040d8 
- 00024883  0x0000673a setarg  0x00000000 
- 00024884  0x0000673b store  0x00000004 , 0x00004142 
- 00024885  0x0000673c arg  0x000040da , 0x00000005 
- 00024886  0x0000673d call  0x00006140 
- 00024887  0x0000673e arg  0x000040e7 , 0x00000005 
- 00024888  0x0000673f call  0x00006140 
- 00024889  0x00006740 arg  0x00004146 , 0x00000005 
- 00024890  0x00006741 call  0x00006140 
- 00024891  0x00006742 branch  0x00006147 
- 00024892  0x00006744 arg  0x000040e7 , 0x00000005 
- 00024893  0x00006745 call  0x00006140 
- 00024894  0x00006746 call  0x00006147 
- 00024895  0x00006747 branch  0x0000614a 
- 00024896  0x0000674b setarg  0x00ffffff 
- 00024897  0x0000674c istore  0x00000003 , 0x00000005 
- 00024898  0x0000674d istore  0x00000003 , 0x00000005 
- 00024899  0x0000674e istore  0x00000003 , 0x00000005 
- 00024900  0x0000674f setarg  0x0000007f 
- 00024901  0x00006750 istore  0x00000001 , 0x00000005 
- 00024902  0x00006751 rtn 
- 00024903  0x00006753 setarg  0x00000000 
- 00024904  0x00006754 store  0x00000002 , 0x000040d6 
- 00024905  0x00006755 rtn 
- 00024906  0x00006757 fetch  0x00000001 , 0x000040d8 
- 00024907  0x00006758 set1  0x00000002 , 0x0000003f 
- 00024908  0x00006759 store  0x00000001 , 0x000040d8 
- 00024909  0x0000675a rtn 
- 00024910  0x0000675e force  0x00000002 , 0x00000007 
- 00024911  0x0000675f call  0x000062a0 
- 00024912  0x00006760 nbranch  0x000062b0 , 0x00000029 
- 00024913  0x00006762 branch  0x000062b2 
- 00024914  0x00006767 force  0x00000002 , 0x0000003f 
- 00024915  0x00006768 call  0x00006298 
- 00024916  0x00006769 fetch  0x00000001 , 0x000004ca 
- 00024917  0x0000676a istore  0x00000001 , 0x00000005 
- 00024918  0x0000676b call  0x000062b2 
- 00024919  0x0000676d fetch  0x00000001 , 0x0000004b 
- 00024920  0x0000676e set1  0x00000003 , 0x0000003f 
- 00024921  0x0000676f store  0x00000001 , 0x0000004b 
- 00024922  0x00006770 jam  0x00000032 , 0x00000072 
- 00024923  0x00006771 rtn 
- 00024924  0x00006775 force  0x00000001 , 0x0000003f 
- 00024925  0x00006776 call  0x00006298 
- 00024926  0x00006777 branch  0x000062b2 
- 00024927  0x00006779 force  0x00000001 , 0x0000003f 
- 00024928  0x0000677a call  0x00006298 
- 00024929  0x0000677b branch  0x000062b0 
- 00024930  0x0000677f force  0x00000002 , 0x0000003f 
- 00024931  0x00006780 call  0x00006298 
- 00024932  0x00006781 fetch  0x00000001 , 0x0000004c 
- 00024933  0x00006782 isolate0  0x00000002 , 0x0000003f 
- 00024934  0x00006783 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00024935  0x00006784 and_into  0x00000001 , 0x0000003f 
- 00024936  0x00006785 istore  0x00000001 , 0x00000005 
- 00024937  0x00006786 branch  0x000062b2 
- 00024938  0x0000678a force  0x00000003 , 0x0000003f 
- 00024939  0x0000678b call  0x00006298 
- 00024940  0x0000678c fetch  0x00000002 , 0x00000051 
- 00024941  0x0000678d istore  0x00000002 , 0x00000005 
- 00024942  0x0000678e branch  0x000062b2 
- 00024943  0x00006791 jam  0x000000fa , 0x00000072 
- 00024944  0x00006792 force  0x00000002 , 0x0000003f 
- 00024945  0x00006793 call  0x00006298 
- 00024946  0x00006794 fetch  0x00000001 , 0x00000053 
- 00024947  0x00006795 istore  0x00000001 , 0x00000005 
- 00024948  0x00006796 branch  0x000062b2 
- 00024949  0x00006799 force  0x0000000a , 0x0000003f 
- 00024950  0x0000679a call  0x00006298 
- 00024951  0x0000679b arg  0x00000152 , 0x00000006 
- 00024952  0x0000679c force  0x00000009 , 0x00000039 
- 00024953  0x0000679e ifetch  0x00000001 , 0x00000006 
- 00024954  0x0000679f xor_into  0x00000055 , 0x0000003f 
- 00024955  0x000067a0 istore  0x00000001 , 0x00000005 
- 00024956  0x000067a1 loop  0x00006179 
- 00024957  0x000067a2 branch  0x000062b2 
- 00024958  0x000067a5 branch  0x000062b2 
- 00024959  0x000067a7 branch  0x000062b2 
- 00024960  0x000067aa rtn  0x00000029 
- 00024961  0x000067ab call  0x0000282d 
- 00024962  0x000067ac force  0x00000009 , 0x0000003f 
- 00024963  0x000067ad call  0x00006298 
- 00024964  0x000067ae fetch  0x00000002 , 0x00000171 
- 00024965  0x000067af istore  0x00000002 , 0x00000005 
- 00024966  0x000067b0 fetch  0x00000003 , 0x000040a0 
- 00024967  0x000067b1 istore  0x00000003 , 0x00000005 
- 00024968  0x000067b2 fetch  0x00000001 , 0x000040a3 
- 00024969  0x000067b3 istore  0x00000001 , 0x00000005 
- 00024970  0x000067b4 fetch  0x00000002 , 0x000040a4 
- 00024971  0x000067b5 istore  0x00000002 , 0x00000005 
- 00024972  0x000067b6 bmark0  0x00000003 , 0x00006191 
- 00024973  0x000067b7 set0  0x00000003 , 0x00000000 
- 00024974  0x000067b8 call  0x000062b2 
- 00024975  0x000067b9 jam  0x00000013 , 0x0000007c 
- 00024976  0x000067ba rtn 
- 00024977  0x000067bc call  0x000062b0 
- 00024978  0x000067bd jam  0x00000003 , 0x0000007c 
- 00024979  0x000067be jam  0x00000013 , 0x0000007d 
- 00024980  0x000067bf rtn 
- 00024981  0x000067c2 arg  0x00000200 , 0x00000002 
- 00024982  0x000067c3 branch  0x00006199 , 0x00000029 
- 00024983  0x000067c4 deposit  0x00000028 
- 00024984  0x000067c5 branch  0x0000619a 
- 00024985  0x000067c7 deposit  0x00000022 
- 00024986  0x000067c9 deposit  0x00000021 
- 00024987  0x000067ca iadd  0x00000002 , 0x0000003f 
- 00024988  0x000067cb and_into  0x000001fc , 0x0000003f 
- 00024989  0x000067cc store  0x00000004 , 0x00000034 
- 00024990  0x000067cd force  0x00000005 , 0x0000003f 
- 00024991  0x000067ce call  0x00006298 
- 00024992  0x000067cf fetch  0x00000004 , 0x00000034 
- 00024993  0x000067d0 rshift  0x0000003f , 0x0000003f 
- 00024994  0x000067d1 istore  0x00000004 , 0x00000005 
- 00024995  0x000067d2 branch  0x000062b2 
- 00024996  0x000067d5 force  0x0000000a , 0x0000003f 
- 00024997  0x000067d6 call  0x00006298 
- 00024998  0x000067d7 arg  0x000004d9 , 0x00000006 
- 00024999  0x000067d8 ifetch  0x00000009 , 0x00000006 
- 00025000  0x000067d9 istore  0x00000009 , 0x00000005 
- 00025001  0x000067da branch  0x000062b2 
- 00025002  0x000067df force  0x00000003 , 0x0000003f 
- 00025003  0x000067e0 call  0x00006298 
- 00025004  0x000067e1 setarg  0x00000114 
- 00025005  0x000067e2 istore  0x00000002 , 0x00000005 
- 00025006  0x000067e3 branch  0x000062b2 
- 00025007  0x000067e7 force  0x00000001 , 0x0000003f 
- 00025008  0x000067e8 call  0x00006298 
- 00025009  0x000067f1 branch  0x000062b2 
- 00025010  0x000067f5 force  0x00000002 , 0x0000003f 
- 00025011  0x000067f6 call  0x00006298 
- 00025012  0x000067f7 fetch  0x00000001 , 0x000040d0 
- 00025013  0x000067f8 istore  0x00000001 , 0x00000005 
- 00025014  0x000067f9 branch  0x000062b2 
- 00025015  0x000067fd force  0x00000002 , 0x0000003f 
- 00025016  0x000067fe call  0x00006298 
- 00025017  0x000067ff setarg  0x00000005 
- 00025018  0x00006800 istore  0x00000001 , 0x00000005 
- 00025019  0x00006801 branch  0x000062b2 
- 00025020  0x00006805 force  0x00000002 , 0x0000003f 
- 00025021  0x00006806 call  0x00006298 
- 00025022  0x00006807 setarg  0x00000000 
- 00025023  0x00006808 istore  0x00000001 , 0x00000005 
- 00025024  0x00006809 branch  0x000062b2 
- 00025025  0x0000680d jam  0x0000002e , 0x0000007c 
- 00025026  0x0000680e rtn 
- 00025027  0x00006810 fetch  0x00000001 , 0x00004092 
- 00025028  0x00006811 sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00025029  0x00006812 call  0x000061c1 , 0x00000005 
- 00025030  0x00006813 fetch  0x00000001 , 0x00000030 
- 00025031  0x00006814 set1  0x00000004 , 0x0000003f 
- 00025032  0x00006815 store  0x00000001 , 0x00000030 
- 00025033  0x00006816 copy  0x00000022 , 0x0000003f 
- 00025034  0x00006817 store  0x00000004 , 0x000004e9 
- 00025035  0x00006818 fetch  0x00000001 , 0x000004d1 
- 00025036  0x00006819 bbit1  0x00000003 , 0x000061d4 
- 00025037  0x0000681a set1  0x00000003 , 0x0000003f 
- 00025038  0x0000681b store  0x00000001 , 0x000004d1 
- 00025039  0x0000681c jam  0x00000005 , 0x00000a99 
- 00025040  0x0000681d call  0x00007d86 
- 00025041  0x0000681e force  0x00000001 , 0x0000003f 
- 00025042  0x0000681f call  0x00006298 
- 00025043  0x00006820 branch  0x000062b2 
- 00025044  0x00006822 jam  0x00000000 , 0x00000048 
- 00025045  0x00006823 rtn 
- 00025046  0x00006826 force  0x00000006 , 0x0000003f 
- 00025047  0x00006827 call  0x00006298 
- 00025048  0x00006828 fetch  0x00000005 , 0x00004510 
- 00025049  0x00006829 istore  0x00000005 , 0x00000005 
- 00025050  0x0000682a branch  0x000062b2 
- 00025051  0x0000682d force  0x00000009 , 0x0000003f 
- 00025052  0x0000682e call  0x00006298 
- 00025053  0x0000682f fetch  0x00000008 , 0x00004098 
- 00025054  0x00006830 istore  0x00000008 , 0x00000005 
- 00025055  0x00006831 branch  0x000062b2 
- 00025056  0x00006834 jam  0x00000001 , 0x000009b1 
- 00025057  0x00006835 fetch  0x00000001 , 0x000045b1 
- 00025058  0x00006836 rtnne  0x00000001 
- 00025059  0x00006837 jam  0x00000013 , 0x000009af 
- 00025060  0x00006838 rtn 
- 00025061  0x0000683b call  0x000062ef 
- 00025062  0x0000683c jam  0x00000099 , 0x0000007c 
- 00025063  0x0000683d jam  0x00000003 , 0x000009af 
- 00025064  0x0000683e rtn 
- 00025065  0x00006842 call  0x000062ef 
- 00025066  0x00006843 jam  0x0000003d , 0x0000007c 
- 00025067  0x00006844 jam  0x00000007 , 0x000009af 
- 00025068  0x00006845 rtn 
- 00025069  0x00006848 arg  0x00000a4e , 0x00000011 
- 00025070  0x00006849 arg  0x00000a6e , 0x00000012 
- 00025071  0x0000684a arg  0x00000010 , 0x00000039 
- 00025072  0x0000684b call  0x00007f88 
- 00025073  0x0000684c branch  0x000061f7 , 0x00000005 
- 00025074  0x0000684d jam  0x00000000 , 0x000009af 
- 00025075  0x0000684e call  0x000076da 
- 00025076  0x0000684f jam  0x00000024 , 0x0000007e 
- 00025077  0x00006850 jam  0x00000040 , 0x0000007d 
- 00025078  0x00006851 branch  0x00005d53 
- 00025079  0x00006853 jam  0x0000000a , 0x000009af 
- 00025080  0x00006854 call  0x000076d8 
- 00025081  0x00006855 jam  0x00000040 , 0x0000007d 
- 00025082  0x00006856 branch  0x00005e38 
- 00025083  0x0000685b jam  0x00000040 , 0x0000007c 
- 00025084  0x0000685c rtn 
- 00025085  0x00006863 jam  0x0000003d , 0x0000007c 
- 00025086  0x00006865 rtn 
- 00025087  0x0000686c jam  0x00000000 , 0x000009b6 
- 00025088  0x0000686d force  0x00000004 , 0x0000003f 
- 00025089  0x0000686e call  0x00006298 
- 00025090  0x0000686f force  0x00000001 , 0x0000003f 
- 00025091  0x00006870 istore  0x00000001 , 0x00000005 
- 00025092  0x00006871 force  0x00000001 , 0x0000003f 
- 00025093  0x00006872 istore  0x00000001 , 0x00000005 
- 00025094  0x00006873 force  0x00000030 , 0x0000003f 
- 00025095  0x00006874 istore  0x00000001 , 0x00000005 
- 00025096  0x00006875 call  0x000062fc 
- 00025097  0x00006876 branch  0x000062b2 , 0x00000001 
- 00025098  0x00006877 branch  0x000062b0 
- 00025099  0x0000687b force  0x00000011 , 0x0000003f 
- 00025100  0x0000687c call  0x00006298 
- 00025101  0x0000687d fetch  0x00000001 , 0x000009b6 
- 00025102  0x0000687e arg  0x0000462a , 0x00000006 
- 00025103  0x0000687f iadd  0x00000006 , 0x00000006 
- 00025104  0x00006880 ifetch  0x00000008 , 0x00000006 
- 00025105  0x00006881 istore  0x00000008 , 0x00000005 
- 00025106  0x00006882 ifetch  0x00000008 , 0x00000006 
- 00025107  0x00006883 istore  0x00000008 , 0x00000005 
- 00025108  0x00006884 fetch  0x00000001 , 0x000009b6 
- 00025109  0x00006885 increase  0x00000010 , 0x0000003f 
- 00025110  0x00006886 store  0x00000001 , 0x000009b6 
- 00025111  0x00006887 call  0x000062fc 
- 00025112  0x00006888 branch  0x000062b2 , 0x00000001 
- 00025113  0x00006889 branch  0x000062b0 
- 00025114  0x0000688d jam  0x00000006 , 0x000009ae 
- 00025115  0x0000688e jam  0x0000003f , 0x0000007c 
- 00025116  0x0000688f rtn 
- 00025117  0x00006893 force  0x00000011 , 0x0000003f 
- 00025118  0x00006894 call  0x00006298 
- 00025119  0x00006895 arg  0x00000a4e , 0x00000006 
- 00025120  0x00006896 ifetch  0x00000008 , 0x00000006 
- 00025121  0x00006897 istore  0x00000008 , 0x00000005 
- 00025122  0x00006898 ifetch  0x00000008 , 0x00000006 
- 00025123  0x00006899 istore  0x00000008 , 0x00000005 
- 00025124  0x0000689a branch  0x000062b0 
- 00025125  0x0000689d jam  0x00000040 , 0x0000007c 
- 00025126  0x0000689e rtn 
- 00025127  0x000068a2 call  0x000062fc 
- 00025128  0x000068a3 call  0x00007612 , 0x00000001 
- 00025129  0x000068a4 force  0x00000011 , 0x0000003f 
- 00025130  0x000068a5 call  0x00006298 
- 00025131  0x000068a6 arg  0x00000a1e , 0x00000006 
- 00025132  0x000068a7 ifetch  0x00000008 , 0x00000006 
- 00025133  0x000068a8 istore  0x00000008 , 0x00000005 
- 00025134  0x000068a9 ifetch  0x00000008 , 0x00000006 
- 00025135  0x000068aa istore  0x00000008 , 0x00000005 
- 00025136  0x000068ab call  0x000062fc 
- 00025137  0x000068ac nbranch  0x000062b0 , 0x00000001 
- 00025138  0x000068ad branch  0x000062b2 , 0x00000001 
- 00025139  0x000068b1 jam  0x0000000f , 0x000009af 
- 00025140  0x000068b3 call  0x000062ef 
- 00025141  0x000068b4 jam  0x0000000b , 0x0000007c 
- 00025142  0x000068b5 call  0x00006307 
- 00025143  0x000068b6 branch  0x0000764e , 0x00000001 
- 00025144  0x000068b7 branch  0x00007658 
- 00025145  0x000068b9 call  0x000062eb 
- 00025146  0x000068bb jam  0x00000041 , 0x0000007c 
- 00025147  0x000068bc rtn 
- 00025148  0x000068bf force  0x00000011 , 0x0000003f 
- 00025149  0x000068c0 call  0x00006298 
- 00025150  0x000068c1 arg  0x00000a4e , 0x00000006 
- 00025151  0x000068c2 ifetch  0x00000008 , 0x00000006 
- 00025152  0x000068c3 istore  0x00000008 , 0x00000005 
- 00025153  0x000068c4 ifetch  0x00000008 , 0x00000006 
- 00025154  0x000068c5 istore  0x00000008 , 0x00000005 
- 00025155  0x000068c6 call  0x000062fc 
- 00025156  0x000068c7 nbranch  0x000062b0 , 0x00000001 
- 00025157  0x000068c8 branch  0x000062b2 , 0x00000001 
- 00025158  0x000068cb force  0x00000003 , 0x0000003f 
- 00025159  0x000068cc call  0x00006298 
- 00025160  0x000068cd setarg  0x0000fffe 
- 00025161  0x000068ce istore  0x00000002 , 0x00000005 
- 00025162  0x000068cf branch  0x000062b0 
- 00025163  0x000068d2 branch  0x000062b2 
- 00025164  0x000068d4 branch  0x000062b2 
- 00025165  0x000068d6 branch  0x000062b2 
- 00025166  0x000068d8 branch  0x000062b2 
- 00025167  0x000068de call  0x0000630b 
- 00025168  0x000068df arg  0x000040a0 , 0x00000011 
- 00025169  0x000068e0 call  0x00006311 
- 00025170  0x000068e1 force  0x00000011 , 0x0000003f 
- 00025171  0x000068e2 call  0x00006298 
- 00025172  0x000068e3 arg  0x00000582 , 0x00000011 
- 00025173  0x000068e4 arg  0x00000562 , 0x00000012 
- 00025174  0x000068e5 call  0x00007352 
- 00025175  0x000068e6 nbranch  0x000062a7 , 0x00000029 
- 00025176  0x000068e7 branch  0x000062ad 
- 00025177  0x000068ea call  0x0000630b 
- 00025178  0x000068eb arg  0x00000040 , 0x00000011 
- 00025179  0x000068ec call  0x00007255 
- 00025180  0x000068ee force  0x00000011 , 0x0000003f 
- 00025181  0x000068ef call  0x00006298 
- 00025182  0x000068f0 arg  0x00000562 , 0x00000006 
- 00025183  0x000068f1 call  0x00007ebf 
- 00025184  0x000068f2 fetch  0x00000001 , 0x00000055 
- 00025185  0x000068f3 beq  0x00000019 , 0x000062b2 
- 00025186  0x000068f4 beq  0x00000018 , 0x000062b2 
- 00025187  0x000068f5 branch  0x000062ad 
- 00025188  0x000068f8 fetch  0x00000001 , 0x000009b5 
- 00025189  0x000068f9 branch  0x0000626a , 0x00000034 
- 00025190  0x000068fa call  0x000062fc 
- 00025191  0x000068fb call  0x000062ef , 0x00000001 
- 00025192  0x000068fc ncall  0x000062eb , 0x00000001 
- 00025193  0x000068fd branch  0x0000626b 
- 00025194  0x000068ff call  0x000062ef 
- 00025195  0x00006901 call  0x0000630b 
- 00025196  0x00006902 branch  0x0000625c 
- 00025197  0x00006905 arg  0x000040a0 , 0x00000011 
- 00025198  0x00006906 call  0x00007288 
- 00025199  0x00006907 force  0x00000005 , 0x0000003f 
- 00025200  0x00006908 call  0x00006298 
- 00025201  0x00006909 fetch  0x00000004 , 0x00000592 
- 00025202  0x0000690a istore  0x00000004 , 0x00000005 
- 00025203  0x0000690b arg  0x000004d5 , 0x00000002 
- 00025204  0x0000690c call  0x000062e2 
- 00025205  0x0000690d call  0x00007386 
- 00025206  0x0000690e call  0x000062fc 
- 00025207  0x0000690f branch  0x0000627c , 0x00000001 
- 00025208  0x00006910 jam  0x00000001 , 0x000004d8 
- 00025209  0x00006911 fetch  0x00000001 , 0x000009b5 
- 00025210  0x00006912 rtn  0x00000034 
- 00025211  0x00006913 jam  0x0000000b , 0x0000007c 
- 00025212  0x00006915 fetch  0x00000001 , 0x000041bd 
- 00025213  0x00006916 rtn  0x00000034 
- 00025214  0x00006918 call  0x000062fc 
- 00025215  0x00006919 nbranch  0x00006284 , 0x00000001 
- 00025216  0x0000691a fetch  0x00000001 , 0x000004d7 
- 00025217  0x0000691b rtn  0x00000034 
- 00025218  0x0000691c jam  0x0000000f , 0x0000007c 
- 00025219  0x0000691d rtn 
- 00025220  0x0000691f rtnmark0  0x00000021 
- 00025221  0x00006920 set0  0x00000021 , 0x00000000 
- 00025222  0x00006921 jam  0x0000000f , 0x0000007c 
- 00025223  0x00006922 rtn 
- 00025224  0x00006927 call  0x0000630b 
- 00025225  0x00006928 call  0x0000728b 
- 00025226  0x00006929 force  0x00000011 , 0x0000003f 
- 00025227  0x0000692a call  0x00006298 
- 00025228  0x0000692b arg  0x00000562 , 0x00000006 
- 00025229  0x0000692c call  0x00007ebf 
- 00025230  0x0000692d branch  0x000062ad 
- 00025231  0x00006930 force  0x00000001 , 0x0000003f 
- 00025232  0x00006931 call  0x00006298 
- 00025233  0x00006932 branch  0x000062ad 
- 00025234  0x00006935 force  0x00000002 , 0x0000003f 
- 00025235  0x00006936 call  0x00006298 
- 00025236  0x00006937 force  0x00000010 , 0x0000003f 
- 00025237  0x00006938 istore  0x00000001 , 0x00000005 
- 00025238  0x00006939 store  0x00000001 , 0x00000054 
- 00025239  0x0000693a branch  0x000062ad 
- 00025240  0x0000693e lshift3  0x0000003f , 0x0000003f 
- 00025241  0x0000693f or_into  0x00000007 , 0x0000003f 
- 00025242  0x00006940 store  0x00000001 , 0x000004b6 
- 00025243  0x00006941 arg  0x00000011 , 0x00000039 
- 00025244  0x00006942 arg  0x000004b8 , 0x00000005 
- 00025245  0x00006943 call  0x00007ed4 
- 00025246  0x00006944 arg  0x000004b8 , 0x00000005 
- 00025247  0x00006945 rtn 
- 00025248  0x00006948 and  0x0000003f , 0x0000007f , 0x00000011 
- 00025249  0x00006949 jam  0x0000007f , 0x00000048 
- 00025250  0x0000694a deposit  0x00000007 
- 00025251  0x0000694b call  0x00006298 
- 00025252  0x0000694c deposit  0x00000011 
- 00025253  0x0000694d istore  0x00000001 , 0x00000005 
- 00025254  0x0000694e rtn 
- 00025255  0x00006951 fetch  0x00000001 , 0x00000048 
- 00025256  0x00006952 lshift  0x0000003f , 0x0000003f 
- 00025257  0x00006953 fetcht  0x00000001 , 0x0000004c 
- 00025258  0x00006954 isolate1  0x00000001 , 0x00000002 
- 00025259  0x00006955 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00025260  0x00006956 branch  0x000062b7 
- 00025261  0x0000695a fetcht  0x00000001 , 0x0000004c 
- 00025262  0x0000695b and_into  0x00000001 , 0x00000002 
- 00025263  0x0000695c branch  0x000062b3 
- 00025264  0x0000695f force  0x00000000 , 0x00000002 
- 00025265  0x00006960 branch  0x000062b3 
- 00025266  0x00006963 force  0x00000001 , 0x00000002 
- 00025267  0x00006965 fetch  0x00000001 , 0x00000048 
- 00025268  0x00006966 lshift  0x0000003f , 0x0000003f 
- 00025269  0x00006967 setflag  0x00000029 , 0x00000000 , 0x0000003f 
- 00025270  0x00006968 ixor  0x00000002 , 0x0000003f 
- 00025271  0x0000696a store  0x00000001 , 0x000004b7 
- 00025272  0x0000696b jam  0x00000000 , 0x00000048 
- 00025273  0x0000696c call  0x000062c7 
- 00025274  0x0000696d enable  0x00000028 
- 00025275  0x0000696e rtn 
- 00025276  0x00006972 fetch  0x00000001 , 0x0000007c 
- 00025277  0x00006973 rtn  0x00000034 
- 00025278  0x00006974 call  0x000062c1 
- 00025279  0x00006975 fetch  0x00000001 , 0x0000007c 
- 00025280  0x00006976 rtn 
- 00025281  0x00006979 bpatchx  0x00000086 , 0x00004030 
- 00025282  0x0000697a fetch  0x00000001 , 0x00000048 
- 00025283  0x0000697b branch  0x000062c7 , 0x00000034 
- 00025284  0x0000697c fetch  0x00000001 , 0x00000078 
- 00025285  0x0000697d nrtn  0x00000034 
- 00025286  0x0000697e branch  0x000062d1 
- 00025287  0x00006980 fetch  0x00000001 , 0x00000078 
- 00025288  0x00006981 branch  0x000062d7 , 0x00000034 
- 00025289  0x00006982 fetch  0x00000003 , 0x00000078 
- 00025290  0x00006983 store  0x00000003 , 0x00000048 
- 00025291  0x00006984 fetcht  0x00000001 , 0x0000007b 
- 00025292  0x00006985 fetch  0x00000001 , 0x0000004c 
- 00025293  0x00006986 set0  0x00000001 , 0x0000003f 
- 00025294  0x00006987 ior  0x00000002 , 0x0000003f 
- 00025295  0x00006988 store  0x00000001 , 0x0000004c 
- 00025296  0x00006989 jam  0x00000000 , 0x00000078 
- 00025297  0x0000698b fetch  0x00000001 , 0x0000007c 
- 00025298  0x0000698c rtn  0x00000034 
- 00025299  0x0000698d fetch  0x00000004 , 0x0000007c 
- 00025300  0x0000698e store  0x00000004 , 0x00000078 
- 00025301  0x0000698f jam  0x00000000 , 0x0000007c 
- 00025302  0x00006990 rtn 
- 00025303  0x00006992 fetch  0x00000001 , 0x0000007c 
- 00025304  0x00006993 rtn  0x00000034 
- 00025305  0x00006994 fetch  0x00000003 , 0x0000007c 
- 00025306  0x00006995 store  0x00000003 , 0x00000048 
- 00025307  0x00006996 fetcht  0x00000001 , 0x0000007f 
- 00025308  0x00006997 fetch  0x00000001 , 0x0000004c 
- 00025309  0x00006998 set0  0x00000001 , 0x0000003f 
- 00025310  0x00006999 ior  0x00000002 , 0x0000003f 
- 00025311  0x0000699a store  0x00000001 , 0x0000004c 
- 00025312  0x0000699b jam  0x00000000 , 0x0000007c 
- 00025313  0x0000699c rtn 
- 00025314  0x000069a0 bpatchx  0x00000087 , 0x00004030 
- 00025315  0x000069a1 fetch  0x00000001 , 0x0000004c 
- 00025316  0x000069a2 copy  0x0000003f , 0x00000013 
- 00025317  0x000069a3 ifetch  0x00000001 , 0x00000002 
- 00025318  0x000069a4 call  0x00005e52 
- 00025319  0x000069a5 call  0x000062a7 
- 00025320  0x000069a6 copy  0x00000013 , 0x0000003f 
- 00025321  0x000069a7 store  0x00000001 , 0x0000004c 
- 00025322  0x000069a8 rtn 
- 00025323  0x000069ab fetcht  0x00000001 , 0x0000004c 
- 00025324  0x000069ac set0  0x00000000 , 0x00000002 
- 00025325  0x000069ad storet  0x00000001 , 0x0000004c 
- 00025326  0x000069ae rtn 
- 00025327  0x000069b1 fetcht  0x00000001 , 0x0000004c 
- 00025328  0x000069b2 set1  0x00000000 , 0x00000002 
- 00025329  0x000069b3 storet  0x00000001 , 0x0000004c 
- 00025330  0x000069b4 rtn 
- 00025331  0x000069b8 nsetflag  0x00000029 , 0x00000001 , 0x0000003f 
- 00025332  0x000069b9 fetcht  0x00000001 , 0x0000004c 
- 00025333  0x000069ba ixor  0x00000002 , 0x0000003f 
- 00025334  0x000069bb isolate1  0x00000001 , 0x0000003f 
- 00025335  0x000069bc rtn 
- 00025336  0x000069c0 fetch  0x00000001 , 0x0000004c 
- 00025337  0x000069c1 setflag  0x00000029 , 0x00000001 , 0x0000003f 
- 00025338  0x000069c2 store  0x00000001 , 0x0000004c 
- 00025339  0x000069c3 rtn 
- 00025340  0x000069c7 fetch  0x00000001 , 0x000009b4 
- 00025341  0x000069c8 compare  0x00000001 , 0x0000003f , 0x0000007f 
- 00025342  0x000069c9 rtn 
- 00025343  0x000069cb fetch  0x00000001 , 0x000009b4 
- 00025344  0x000069cc set1  0x00000007 , 0x0000003f 
- 00025345  0x000069cd store  0x00000001 , 0x000009b4 
- 00025346  0x000069ce rtn 
- 00025347  0x000069d0 fetch  0x00000001 , 0x000009b4 
- 00025348  0x000069d1 set0  0x00000007 , 0x0000003f 
- 00025349  0x000069d2 store  0x00000001 , 0x000009b4 
- 00025350  0x000069d3 rtn 
- 00025351  0x000069d5 fetch  0x00000001 , 0x000009b4 
- 00025352  0x000069d6 isolate1  0x00000007 , 0x0000003f 
- 00025353  0x000069d7 store  0x00000001 , 0x000009b4 
- 00025354  0x000069d8 rtn 
- 00025355  0x000069dc arg  0x00000562 , 0x00000005 
- 00025356  0x000069de force  0x00000010 , 0x00000039 
- 00025357  0x000069e1 random  0x0000003f 
- 00025358  0x000069e2 istore  0x00000001 , 0x00000005 
- 00025359  0x000069e3 loop  0x0000630d 
- 00025360  0x000069e4 rtn 
- 00025361  0x000069e7 call  0x00007259 
- 00025362  0x000069e8 arg  0x000041be , 0x00000011 
- 00025363  0x000069e9 arg  0x00000592 , 0x00000012 
- 00025364  0x000069ea ifetch  0x00000008 , 0x00000011 
- 00025365  0x000069eb fetcht  0x00000001 , 0x00000030 
- 00025366  0x000069ec nsetflag  0x00000034 , 0x00000006 , 0x00000002 
- 00025367  0x000069ed storet  0x00000001 , 0x00000030 
- 00025368  0x000069ee copy  0x00000011 , 0x00000005 
- 00025369  0x000069ef call  0x00007352 
- 00025370  0x000069f0 branch  0x000021c4 
- 00025371  0x000069f8 bpatchx  0x00000088 , 0x00004031 
- 00025372  0x000069fa call  0x000062bc 
- 00025373  0x000069fb nrtn  0x00000034 
- 00025374  0x000069fd fetch  0x00000001 , 0x00000055 
- 00025375  0x000069fe rtn  0x00000034 
- 00025376  0x00006a02 beq  0x00000004 , 0x0000636f 
- 00025377  0x00006a03 beq  0x00000005 , 0x00006374 
- 00025378  0x00006a04 beq  0x00000002 , 0x00006366 
- 00025379  0x00006a05 beq  0x00000003 , 0x0000637c 
- 00025380  0x00006a06 beq  0x0000000e , 0x00006369 
- 00025381  0x00006a07 beq  0x00000006 , 0x00006398 
- 00025382  0x00006a08 beq  0x00000007 , 0x000063b0 
- 00025383  0x00006a09 beq  0x00000009 , 0x000063b1 
- 00025384  0x00006a0a beq  0x0000000a , 0x000063ba 
- 00025385  0x00006a0b beq  0x0000000b , 0x000063be 
- 00025386  0x00006a0c beq  0x0000000c , 0x00006386 
- 00025387  0x00006a0d beq  0x0000000d , 0x00006389 
- 00025388  0x00006a0e beq  0x0000000f , 0x0000638f 
- 00025389  0x00006a0f beq  0x00000012 , 0x00006359 
- 00025390  0x00006a10 beq  0x00000013 , 0x0000637c 
- 00025391  0x00006a11 beq  0x00000010 , 0x0000635c 
- 00025392  0x00006a12 beq  0x00000014 , 0x00006356 
- 00025393  0x00006a13 beq  0x00000015 , 0x0000637c 
- 00025394  0x00006a14 beq  0x00000016 , 0x00006350 
- 00025395  0x00006a15 beq  0x00000018 , 0x00006355 
- 00025396  0x00006a16 beq  0x00000017 , 0x00006349 
- 00025397  0x00006a17 beq  0x00000019 , 0x0000634f 
- 00025398  0x00006a18 beq  0x0000001a , 0x0000633a 
- 00025399  0x00006a19 beq  0x0000001b , 0x00006344 
- 00025400  0x00006a1a jam  0x00000000 , 0x00000055 
- 00025401  0x00006a1c rtn 
- 00025402  0x00006a1e fetch  0x00000001 , 0x000004d1 
- 00025403  0x00006a1f rtnbit0  0x00000002 
- 00025404  0x00006a20 rtnbit0  0x00000003 
- 00025405  0x00006a21 jam  0x00000000 , 0x00000055 
- 00025406  0x00006a22 call  0x00006340 
- 00025407  0x00006a23 branch  0x00006cef 
- 00025408  0x00006a26 fetch  0x00000001 , 0x0000016d 
- 00025409  0x00006a27 rtnbit0  0x00000001 
- 00025410  0x00006a28 jam  0x0000000a , 0x00000055 
- 00025411  0x00006a29 rtn 
- 00025412  0x00006a2c arg  0x00000007 , 0x00000007 
- 00025413  0x00006a2d call  0x00007f16 
- 00025414  0x00006a2e nrtn  0x00000034 
- 00025415  0x00006a2f jam  0x0000001a , 0x00000055 
- 00025416  0x00006a30 rtn 
- 00025417  0x00006a33 fetch  0x00000001 , 0x0000016d 
- 00025418  0x00006a34 set0  0x00000000 , 0x0000003f 
- 00025419  0x00006a35 store  0x00000001 , 0x0000016d 
- 00025420  0x00006a36 jam  0x00000019 , 0x00000055 
- 00025421  0x00006a37 jam  0x0000000b , 0x0000007c 
- 00025422  0x00006a38 rtn 
- 00025423  0x00006a3a rtn 
- 00025424  0x00006a3c fetch  0x00000001 , 0x000004d4 
- 00025425  0x00006a3d rtnne  0x00000002 
- 00025426  0x00006a3e call  0x000063c0 
- 00025427  0x00006a3f jam  0x00000018 , 0x00000055 
- 00025428  0x00006a40 rtn 
- 00025429  0x00006a43 rtn 
- 00025430  0x00006a45 jam  0x00000015 , 0x00000055 
- 00025431  0x00006a46 jam  0x00000083 , 0x0000007c 
- 00025432  0x00006a47 rtn 
- 00025433  0x00006a49 jam  0x00000013 , 0x00000055 
- 00025434  0x00006a4a jam  0x00000025 , 0x0000007c 
- 00025435  0x00006a4b rtn 
- 00025436  0x00006a4e fetch  0x00000001 , 0x0000455b 
- 00025437  0x00006a4f rtneq  0x00000000 
- 00025438  0x00006a50 beq  0x00000001 , 0x00006364 
- 00025439  0x00006a51 arg  0x00000006 , 0x00000007 
- 00025440  0x00006a52 call  0x00007f16 
- 00025441  0x00006a53 nrtn  0x00000034 
- 00025442  0x00006a54 jam  0x00000000 , 0x0000455b 
- 00025443  0x00006a55 branch  0x0000637d 
- 00025444  0x00006a57 rtn  0x00000029 
- 00025445  0x00006a58 branch  0x00006398 
- 00025446  0x00006a5b jam  0x00000003 , 0x00000055 
- 00025447  0x00006a5c jam  0x00000027 , 0x0000007c 
- 00025448  0x00006a5d rtn 
- 00025449  0x00006a5f jam  0x00000013 , 0x0000007c 
- 00025450  0x00006a60 set1  0x00000003 , 0x00000000 
- 00025451  0x00006a61 jam  0x00000005 , 0x00000055 
- 00025452  0x00006a62 setarg  0x000001ff 
- 00025453  0x00006a63 store  0x00000002 , 0x000004d2 
- 00025454  0x00006a64 rtn 
- 00025455  0x00006a66 jam  0x00000005 , 0x00000055 
- 00025456  0x00006a67 jam  0x000000ff , 0x000004d2 
- 00025457  0x00006a68 set0  0x00000022 , 0x00000000 
- 00025458  0x00006a69 jam  0x00000033 , 0x0000007c 
- 00025459  0x00006a6a branch  0x00005d04 
- 00025460  0x00006a6c rtnmark1  0x00000022 
- 00025461  0x00006a6d fetch  0x00000002 , 0x000004d2 
- 00025462  0x00006a6e sub  0x0000003f , 0x00000001 , 0x0000003f 
- 00025463  0x00006a6f branch  0x0000637a , 0x00000005 
- 00025464  0x00006a70 store  0x00000002 , 0x000004d2 
- 00025465  0x00006a71 rtn 
- 00025466  0x00006a73 jam  0x0000000e , 0x00000055 
- 00025467  0x00006a74 rtn 
- 00025468  0x00006a77 rtn 
- 00025469  0x00006a7a fetch  0x00000001 , 0x000004d1 
- 00025470  0x00006a7b rtnbit0  0x00000003 
- 00025471  0x00006a7c rtnbit0  0x00000002 
- 00025472  0x00006a7d fetch  0x00000001 , 0x0000016d 
- 00025473  0x00006a7e set0  0x00000002 , 0x0000003f 
- 00025474  0x00006a7f store  0x00000001 , 0x0000016d 
- 00025475  0x00006a80 jam  0x00000013 , 0x0000007c 
- 00025476  0x00006a81 jam  0x00000010 , 0x00000055 
- 00025477  0x00006a82 rtn 
- 00025478  0x00006a85 jam  0x0000000d , 0x00000055 
- 00025479  0x00006a86 jam  0x00000031 , 0x0000007c 
- 00025480  0x00006a87 rtn 
- 00025481  0x00006a8a fetch  0x00000001 , 0x000004d1 
- 00025482  0x00006a8b rtnbit0  0x00000002 
- 00025483  0x00006a8c jam  0x00000000 , 0x00000055 
- 00025484  0x00006a8e rtn 
- 00025485  0x00006a90 jam  0x00000006 , 0x00000055 
- 00025486  0x00006a91 rtn 
- 00025487  0x00006a94 fetch  0x00000001 , 0x000004d2 
- 00025488  0x00006a95 increase  0xffffffff , 0x0000003f 
- 00025489  0x00006a96 branch  0x00006394 , 0x00000034 
- 00025490  0x00006a97 store  0x00000001 , 0x000004d2 
- 00025491  0x00006a98 rtn 
- 00025492  0x00006a9a jam  0x00000007 , 0x0000007c 
- 00025493  0x00006a9b jam  0x00000016 , 0x000004ca 
- 00025494  0x00006a9c jam  0x00000000 , 0x00000055 
- 00025495  0x00006a9d rtn 
- 00025496  0x00006aa0 fetch  0x00000001 , 0x0000016d 
- 00025497  0x00006aa1 bbit1  0x00000002 , 0x0000637d 
- 00025498  0x00006aa2 bbit1  0x00000000 , 0x0000639d 
- 00025499  0x00006aa4 jam  0x0000001a , 0x00000055 
- 00025500  0x00006aa5 rtn 
- 00025501  0x00006aa7 fetch  0x00000001 , 0x000041bd 
- 00025502  0x00006aa8 branch  0x000063a9 , 0x00000034 
- 00025503  0x00006aa9 fetch  0x00000001 , 0x000004d1 
- 00025504  0x00006aaa rtnbit0  0x00000003 
- 00025505  0x00006aab rtnbit0  0x00000002 
- 00025506  0x00006aac fetch  0x00000004 , 0x000004e9 
- 00025507  0x00006aad arg  0x00000064 , 0x00000002 
- 00025508  0x00006aae iadd  0x00000002 , 0x00000002 
- 00025509  0x00006aaf copy  0x00000022 , 0x0000003f 
- 00025510  0x00006ab0 isub  0x00000002 , 0x0000003e 
- 00025511  0x00006ab1 nrtn  0x00000002 
- 00025512  0x00006ab2 branch  0x00006349 
- 00025513  0x00006ab7 jam  0x00000016 , 0x00000055 
- 00025514  0x00006ab8 jam  0x00000004 , 0x00004689 
- 00025515  0x00006ab9 setarg  0x00003030 
- 00025516  0x00006aba store  0x00000002 , 0x0000468a 
- 00025517  0x00006abb istore  0x00000002 , 0x00000005 
- 00025518  0x00006abc jam  0x00000002 , 0x000004d4 
- 00025519  0x00006abd branch  0x00006350 
- 00025520  0x00006ac0 rtn 
- 00025521  0x00006ac2 fetch  0x00000001 , 0x0000016d 
- 00025522  0x00006ac3 bbit1  0x00000001 , 0x000063b5 
- 00025523  0x00006ac4 jam  0x0000001a , 0x00000055 
- 00025524  0x00006ac5 rtn 
- 00025525  0x00006ac8 fetch  0x00000001 , 0x0000016d 
- 00025526  0x00006ac9 set0  0x00000001 , 0x0000003f 
- 00025527  0x00006aca store  0x00000001 , 0x0000016d 
- 00025528  0x00006acb jam  0x0000000f , 0x0000007c 
- 00025529  0x00006acc rtn 
- 00025530  0x00006acf fetch  0x00000001 , 0x000004d8 
- 00025531  0x00006ad0 rtn  0x00000034 
- 00025532  0x00006ad1 jam  0x00000000 , 0x00000055 
- 00025533  0x00006ad2 branch  0x000063b5 
- 00025534  0x00006ad5 jam  0x0000000c , 0x00000055 
- 00025535  0x00006ad6 rtn 
- 00025536  0x00006ad9 fetch  0x00000001 , 0x0000004b 
- 00025537  0x00006ada bbit1  0x00000002 , 0x000063c5 
- 00025538  0x00006adb call  0x000062ef 
- 00025539  0x00006adc jam  0x00000008 , 0x0000007c 
- 00025540  0x00006add branch  0x00004d04 
- 00025541  0x00006adf fetch  0x00000001 , 0x0000004b 
- 00025542  0x00006ae0 set0  0x00000002 , 0x0000003f 
- 00025543  0x00006ae1 store  0x00000001 , 0x0000004b 
- 00025544  0x00006ae2 call  0x00006001 
- 00025545  0x00006ae3 call  0x000062f8 
- 00025546  0x00006ae4 branch  0x00004d04 
- 00025547  0x00006ae7 setarg  0x00000004 
- 00025548  0x00006ae8 store  0x00000001 , 0x00004689 
- 00025549  0x00006ae9 setarg  0x00003030 
- 00025550  0x00006aea istore  0x00000002 , 0x00000005 
- 00025551  0x00006aeb istore  0x00000002 , 0x00000005 
- 00025552  0x00006aec rtn 
- 00025553  0x00006af3 bpatchx  0x0000008c , 0x00004031 
- 00025554  0x00006af4 hfetch  0x00000001 , 0x00008073 
- 00025555  0x00006af5 arg  0x00000006 , 0x00000002 
- 00025556  0x00006af6 ior  0x00000002 , 0x0000003f 
- 00025557  0x00006af7 hstore  0x00000001 , 0x00008073 
- 00025558  0x00006af8 hfetch  0x00000001 , 0x00008077 
- 00025559  0x00006af9 ior  0x00000002 , 0x0000003f 
- 00025560  0x00006afa hstore  0x00000001 , 0x00008077 
- 00025561  0x00006afb call  0x000063ee 
- 00025562  0x00006afc hfetch  0x00000001 , 0x00008077 
- 00025563  0x00006afd set0  0x00000001 , 0x0000003f 
- 00025564  0x00006afe set0  0x00000002 , 0x0000003f 
- 00025565  0x00006aff hstore  0x00000001 , 0x00008077 
- 00025566  0x00006b00 nop  0x0000001e 
- 00025567  0x00006b01 branch  0x000063f2 
- 00025568  0x00006b04 hfetch  0x00000001 , 0x00008073 
- 00025569  0x00006b05 arg  0x000000c0 , 0x00000002 
- 00025570  0x00006b06 ior  0x00000002 , 0x0000003f 
- 00025571  0x00006b07 hstore  0x00000001 , 0x00008073 
- 00025572  0x00006b08 hfetch  0x00000001 , 0x00008077 
- 00025573  0x00006b09 ior  0x00000002 , 0x0000003f 
- 00025574  0x00006b0a hstore  0x00000001 , 0x00008077 
- 00025575  0x00006b0b call  0x000063ee 
- 00025576  0x00006b0c hfetch  0x00000001 , 0x00008077 
- 00025577  0x00006b0d set0  0x00000006 , 0x0000003f 
- 00025578  0x00006b0e set0  0x00000007 , 0x0000003f 
- 00025579  0x00006b0f hstore  0x00000001 , 0x00008077 
- 00025580  0x00006b10 nop  0x0000001e 
- 00025581  0x00006b11 branch  0x000063f6 
- 00025582  0x00006b14 hfetch  0x00000001 , 0x00008081 
- 00025583  0x00006b15 and  0x0000003f , 0x000000fc , 0x0000003f 
- 00025584  0x00006b16 hstore  0x00000001 , 0x00008081 
- 00025585  0x00006b17 rtn 
- 00025586  0x00006b19 hfetch  0x00000001 , 0x00008081 
- 00025587  0x00006b1a or  0x0000003f , 0x00000001 , 0x0000003f 
- 00025588  0x00006b1b hstore  0x00000001 , 0x00008081 
- 00025589  0x00006b1c rtn 
- 00025590  0x00006b1e hfetch  0x00000001 , 0x00008081 
- 00025591  0x00006b1f or  0x0000003f , 0x00000003 , 0x0000003f 
- 00025592  0x00006b20 set0  0x00000004 , 0x0000003f 
- 00025593  0x00006b21 hstore  0x00000001 , 0x00008081 
- 00025594  0x00006b22 rtn 
- 00025595  0x00006b27 copy  0x0000003f , 0x00000012 
- 00025596  0x00006b28 call  0x0000640f 
- 00025597  0x00006b29 nop  0x00000064 
- 00025598  0x00006b2a copy  0x00000012 , 0x0000003f 
- 00025599  0x00006b2b call  0x00006414 
- 00025600  0x00006b2c copy  0x0000003f , 0x00000012 
- 00025601  0x00006b2d call  0x00006411 
- 00025602  0x00006b2e nop  0x00000064 
- 00025603  0x00006b2f copy  0x00000012 , 0x0000003f 
- 00025604  0x00006b30 rtn 
- 00025605  0x00006b33 copy  0x0000003f , 0x00000012 
- 00025606  0x00006b34 call  0x0000640f 
- 00025607  0x00006b35 nop  0x00000064 
- 00025608  0x00006b36 copy  0x00000012 , 0x0000003f 
- 00025609  0x00006b37 call  0x00006413 
- 00025610  0x00006b38 call  0x00006411 
- 00025611  0x00006b39 nop  0x00000064 
- 00025612  0x00006b3a rtn 
- 00025613  0x00006b3e fetcht  0x00000001 , 0x00004214 
- 00025614  0x00006b3f branch  0x0000680e 
- 00025615  0x00006b43 fetcht  0x00000001 , 0x00004214 
- 00025616  0x00006b44 branch  0x00006829 
- 00025617  0x00006b48 fetcht  0x00000001 , 0x00004214 
- 00025618  0x00006b49 branch  0x00006825 
- 00025619  0x00006b4d branch  0x000064ec 
- 00025620  0x00006b50 branch  0x000064f3 
- 00025621  0x00006b58 nbranch  0x00006419 , 0x00000028 
- 00025622  0x00006b59 hfetch  0x00000001 , 0x00008085 
- 00025623  0x00006b5a or_into  0x00000002 , 0x0000003f 
- 00025624  0x00006b5b hstore  0x00000001 , 0x00008085 
- 00025625  0x00006b5d copy  0x00000002 , 0x0000003e 
- 00025626  0x00006b5e branch  0x0000641c , 0x00000005 
- 00025627  0x00006b5f copy  0x00000013 , 0x0000003d 
- 00025628  0x00006b61 isolate0  0x00000000 , 0x0000003e 
- 00025629  0x00006b62 branch  0x000064b9 
- 00025630  0x00006b66 force  0x00000004 , 0x00000002 
- 00025631  0x00006b68 arg  0x000001fe , 0x00000011 
- 00025632  0x00006b69 hfetch  0x00000001 , 0x00008085 
- 00025633  0x00006b6a and_into  0x000000fd , 0x0000003f 
- 00025634  0x00006b6b hstore  0x00000001 , 0x00008085 
- 00025635  0x00006b6c call  0x00006419 
- 00025636  0x00006b6d arg  0x000055aa , 0x00000011 
- 00025637  0x00006b6e fetch  0x00000002 , 0x000001fe 
- 00025638  0x00006b6f ifetcht  0x00000002 , 0x00000006 
- 00025639  0x00006b70 isub  0x00000011 , 0x0000003e 
- 00025640  0x00006b71 rtn 
- 00025641  0x00006b74 arg  0x00000002 , 0x00000002 
- 00025642  0x00006b75 arg  0x00000204 , 0x00000011 
- 00025643  0x00006b76 call  0x00006419 
- 00025644  0x00006b77 fetch  0x00000002 , 0x00000204 
- 00025645  0x00006b78 store  0x00000002 , 0x000001f7 
- 00025646  0x00006b79 call  0x00006430 , 0x00000028 
- 00025647  0x00006b7a rtn 
- 00025648  0x00006b7d arg  0x00000010 , 0x00000002 
- 00025649  0x00006b7e arg  0x00000206 , 0x00000011 
- 00025650  0x00006b7f hfetch  0x00000001 , 0x00008085 
- 00025651  0x00006b80 and_into  0x000000fd , 0x0000003f 
- 00025652  0x00006b81 hstore  0x00000001 , 0x00008085 
- 00025653  0x00006b82 call  0x00006419 
- 00025654  0x00006b83 arg  0x00000206 , 0x00000006 
- 00025655  0x00006b84 arg  0x00000010 , 0x00000039 
- 00025656  0x00006b85 call  0x00007478 
- 00025657  0x00006b86 call  0x00007428 
- 00025658  0x00006b87 call  0x00007491 
- 00025659  0x00006b88 branch  0x00007422 
- 00025660  0x00006b8b disable  0x0000002d 
- 00025661  0x00006b8c call  0x0000641e 
- 00025662  0x00006b8d nrtn  0x00000005 
- 00025663  0x00006b8e enable  0x0000002d 
- 00025664  0x00006b8f jam  0x00000080 , 0x00008023 
- 00025665  0x00006b90 jam  0x00000000 , 0x00008022 
- 00025666  0x00006b91 jam  0x00000000 , 0x00008024 
- 00025667  0x00006b92 arg  0x00008025 , 0x00000011 
- 00025668  0x00006b93 call  0x00006415 
- 00025669  0x00006b94 jam  0x00000000 , 0x00008023 
- 00025670  0x00006b96 arg  0x00000006 , 0x00000002 
- 00025671  0x00006b97 call  0x0000641f 
- 00025672  0x00006b98 nrtn  0x00000005 
- 00025673  0x00006b99 ifetch  0x00000002 , 0x00000006 
- 00025674  0x00006b9a iforce  0x00000011 
- 00025675  0x00006b9b call  0x00006419 
- 00025676  0x00006b9c branch  0x00006446 
- 00025677  0x00006ba1 call  0x00007f99 
- 00025678  0x00006ba2 setarg  0x00001000 
- 00025679  0x00006ba3 store  0x00000002 , 0x000001f7 
- 00025680  0x00006ba4 arg  0x000065e5 , 0x00000013 
- 00025681  0x00006ba5 arg  0x00000002 , 0x00000039 
- 00025682  0x00006ba7 call  0x0000641e 
- 00025683  0x00006ba8 nrtn  0x00000005 
- 00025684  0x00006ba9 fetch  0x00000002 , 0x000001f7 
- 00025685  0x00006baa byteswap  0x0000003f , 0x0000003f 
- 00025686  0x00006bab iadd  0x00000002 , 0x0000003f 
- 00025687  0x00006bac byteswap  0x0000003f , 0x0000003f 
- 00025688  0x00006bad store  0x00000002 , 0x000001f7 
- 00025689  0x00006bae loop  0x00006452 
- 00025690  0x00006baf branch  0x00006446 
- 00025691  0x00006bb2 call  0x00007f99 
- 00025692  0x00006bb3 disable  0x00000028 
- 00025693  0x00006bb4 call  0x0000666a 
- 00025694  0x00006bb5 setarg  0x00000000 
- 00025695  0x00006bb6 arg  0x000001f3 , 0x00000011 
- 00025696  0x00006bb7 arg  0x00000002 , 0x00000002 
- 00025697  0x00006bb8 call  0x000066b3 
- 00025698  0x00006bb9 fetch  0x00000002 , 0x000001f3 
- 00025699  0x00006bba bbit0  0x00000007 , 0x0000646e 
- 00025700  0x00006bbb jam  0x00000025 , 0x00008050 
- 00025701  0x00006bbc setarg  0x000007f0 
- 00025702  0x00006bbd arg  0x00000206 , 0x00000011 
- 00025703  0x00006bbe arg  0x00000010 , 0x00000002 
- 00025704  0x00006bbf call  0x000066b3 
- 00025705  0x00006bc0 jam  0x00000008 , 0x00008006 
- 00025706  0x00006bc1 set1  0x0000002b , 0x00000000 
- 00025707  0x00006bc2 arg  0x00000206 , 0x00000006 
- 00025708  0x00006bc3 call  0x00007484 
- 00025709  0x00006bc4 enable  0x00000028 
- 00025710  0x00006bc6 jam  0x00000000 , 0x000041da 
- 00025711  0x00006bc8 call  0x000064b0 
- 00025712  0x00006bc9 fetch  0x00000002 , 0x000001f3 
- 00025713  0x00006bca byteswap  0x0000003f , 0x0000003f 
- 00025714  0x00006bcb arg  0x000007ff , 0x00000002 
- 00025715  0x00006bcc iand  0x00000002 , 0x0000003f 
- 00025716  0x00006bcd branch  0x0000647b , 0x00000005 
- 00025717  0x00006bce call  0x0000666f 
- 00025718  0x00006bcf arg  0x000066b8 , 0x00000013 
- 00025719  0x00006bd0 call  0x00006430 , 0x00000028 
- 00025720  0x00006bd1 call  0x0000643c 
- 00025721  0x00006bd2 fetch  0x00000001 , 0x000001f2 
- 00025722  0x00006bd3 bbit0  0x00000000 , 0x0000646f 
- 00025723  0x00006bd6 call  0x0000666d 
- 00025724  0x00006bd7 jam  0x00000000 , 0x000041da 
- 00025725  0x00006bd9 call  0x000064b0 
- 00025726  0x00006bda call  0x000065c2 
- 00025727  0x00006bdb fetch  0x00000001 , 0x000001f3 
- 00025728  0x00006bdc bbit1  0x00000006 , 0x0000648e 
- 00025729  0x00006bdd call  0x000064aa 
- 00025730  0x00006bde nbranch  0x00006486 , 0x0000002d 
- 00025731  0x00006bdf fetch  0x00000001 , 0x000001f2 
- 00025732  0x00006be0 bbit0  0x00000000 , 0x0000647d 
- 00025733  0x00006be1 branch  0x0000649b 
- 00025734  0x00006be3 call  0x000065bf 
- 00025735  0x00006be4 fetch  0x00000001 , 0x000001f3 
- 00025736  0x00006be5 bbit1  0x00000006 , 0x0000648e 
- 00025737  0x00006be6 call  0x000064aa 
- 00025738  0x00006be7 nbranch  0x0000648e , 0x0000002d 
- 00025739  0x00006be8 fetch  0x00000001 , 0x000001f2 
- 00025740  0x00006be9 bbit0  0x00000000 , 0x0000647d 
- 00025741  0x00006bea branch  0x0000649b 
- 00025742  0x00006bed jam  0x00000000 , 0x000041da 
- 00025743  0x00006bef call  0x000064b0 
- 00025744  0x00006bf0 fetch  0x00000001 , 0x000001f3 
- 00025745  0x00006bf1 bbit1  0x00000005 , 0x0000649b 
- 00025746  0x00006bf2 setarg  0x00000000 
- 00025747  0x00006bf3 store  0x00000003 , 0x000001f6 
- 00025748  0x00006bf4 call  0x00006502 
- 00025749  0x00006bf5 arg  0x00006578 , 0x00000013 
- 00025750  0x00006bf6 call  0x00006429 
- 00025751  0x00006bf7 call  0x0000643c 
- 00025752  0x00006bf8 nbranch  0x0000649b , 0x0000002d 
- 00025753  0x00006bf9 fetch  0x00000001 , 0x000001f2 
- 00025754  0x00006bfa bbit0  0x00000000 , 0x0000648f 
- 00025755  0x00006bfd bmark1  0x0000002b , 0x0000649d 
- 00025756  0x00006bfe call  0x000064a3 
- 00025757  0x00006c00 fetch  0x00000001 , 0x000001f3 
- 00025758  0x00006c01 bbit0  0x00000004 , 0x000064a3 
- 00025759  0x00006c02 jam  0x00000021 , 0x00008050 
- 00025760  0x00006c03 call  0x00004c0e 
- 00025761  0x00006c05 call  0x00004c2e 
- 00025762  0x00006c06 branch  0x000064a1 
- 00025763  0x00006c09 setarg  0x00000000 
- 00025764  0x00006c0a store  0x00000008 , 0x00000206 
- 00025765  0x00006c0b store  0x00000008 , 0x0000020e 
- 00025766  0x00006c0c force  0x00000004 , 0x00000038 
- 00025767  0x00006c0d call  0x00007492 
- 00025768  0x00006c0e jam  0x00000021 , 0x00008050 
- 00025769  0x00006c0f rtn 
- 00025770  0x00006c13 setarg  0x00000000 
- 00025771  0x00006c14 store  0x00000002 , 0x000001f7 
- 00025772  0x00006c15 arg  0x000065e5 , 0x00000013 
- 00025773  0x00006c16 call  0x000065a3 
- 00025774  0x00006c17 call  0x00006429 
- 00025775  0x00006c18 branch  0x0000643c 
- 00025776  0x00006c1c fetch  0x00000001 , 0x000041da 
- 00025777  0x00006c1d increase  0x00000001 , 0x0000003f 
- 00025778  0x00006c1e sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00025779  0x00006c1f nbranch  0x000064b6 , 0x00000002 
- 00025780  0x00006c20 store  0x00000001 , 0x000041da 
- 00025781  0x00006c21 rtn 
- 00025782  0x00006c24 call  0x000064a3 
- 00025783  0x00006c25 call  0x00007fa1 
- 00025784  0x00006c26 rtn 
- 00025785  0x00006c2b fetch  0x00000001 , 0x000001f2 
- 00025786  0x00006c2c lshift  0x0000003f , 0x0000003f 
- 00025787  0x00006c2d setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00025788  0x00006c2e isolate0  0x0000000f , 0x00000011 
- 00025789  0x00006c2f rtn  0x00000001 
- 00025790  0x00006c30 store  0x00000001 , 0x000001f2 
- 00025791  0x00006c31 rtn 
- 00025792  0x00006c35 hfetch  0x00000001 , 0x00008085 
- 00025793  0x00006c36 rtnbit0  0x00000001 
- 00025794  0x00006c37 branch  0x000064c6 
- 00025795  0x00006c39 hfetch  0x00000001 , 0x0000812c 
- 00025796  0x00006c3a qisolate1  0x0000003f 
- 00025797  0x00006c3b rtn  0x00000001 
- 00025798  0x00006c3d hfetch  0x00000001 , 0x00008108 
- 00025799  0x00006c3e bbit0  0x00000001 , 0x000064c3 
- 00025800  0x00006c3f call  0x00007422 
- 00025801  0x00006c40 branch  0x000064c3 
- 00025802  0x00006c45 fetch  0x00000002 , 0x00004199 
- 00025803  0x00006c46 rtn  0x00000034 
- 00025804  0x00006c47 jam  0x00000080 , 0x00008023 
- 00025805  0x00006c48 jam  0x00000000 , 0x00008022 
- 00025806  0x00006c49 jam  0x00000000 , 0x00008024 
- 00025807  0x00006c4a fetcht  0x00000002 , 0x0000419b 
- 00025808  0x00006c4b lshift2  0x00000002 , 0x00000039 
- 00025809  0x00006c4c iforce  0x00000006 
- 00025810  0x00006c4e ifetch  0x00000001 , 0x00000006 
- 00025811  0x00006c4f hstore  0x00000001 , 0x00008025 
- 00025812  0x00006c50 loop  0x000064d2 
- 00025813  0x00006c51 jam  0x00000000 , 0x00008023 
- 00025814  0x00006c52 rtn 
- 00025815  0x00006c58 bpatchx  0x0000008d , 0x00004031 
- 00025816  0x00006c59 call  0x000064dd 
- 00025817  0x00006c5a branch  0x000063f2 
- 00025818  0x00006c5d call  0x000064dd 
- 00025819  0x00006c5e call  0x000063ee 
- 00025820  0x00006c5f branch  0x000063f6 
- 00025821  0x00006c62 fetch  0x00000001 , 0x00004212 
- 00025822  0x00006c63 hstore  0x00000001 , 0x00008086 
- 00025823  0x00006c64 fetch  0x00000001 , 0x00004213 
- 00025824  0x00006c65 hstore  0x00000001 , 0x00008087 
- 00025825  0x00006c66 setarg  0x000001f5 
- 00025826  0x00006c67 hstore  0x00000002 , 0x0000808a 
- 00025827  0x00006c68 setarg  0x000001fa 
- 00025828  0x00006c69 hstore  0x00000002 , 0x0000808c 
- 00025829  0x00006c6a branch  0x000063ee 
- 00025830  0x00006c6d hfetch  0x00000001 , 0x00008086 
- 00025831  0x00006c6e set1  0x00000007 , 0x0000003f 
- 00025832  0x00006c6f hstore  0x00000001 , 0x00008086 
- 00025833  0x00006c70 set0  0x00000007 , 0x0000003f 
- 00025834  0x00006c71 hstore  0x00000001 , 0x00008086 
- 00025835  0x00006c72 rtn 
- 00025836  0x00006c77 set1  0x00000007 , 0x0000003f 
- 00025837  0x00006c78 store  0x00000002 , 0x000001f5 
- 00025838  0x00006c79 bpatchx  0x0000008e , 0x00004031 
- 00025839  0x00006c7a jam  0x00000002 , 0x00008088 
- 00025840  0x00006c7b jam  0x00000000 , 0x0000808e 
- 00025841  0x00006c7c jam  0x00000002 , 0x00008006 
- 00025842  0x00006c7d branch  0x000064fc 
- 00025843  0x00006c81 force  0x00000001 , 0x00000002 
- 00025844  0x00006c85 store  0x00000001 , 0x000001f5 
- 00025845  0x00006c86 bpatchx  0x0000008f , 0x00004031 
- 00025846  0x00006c87 jam  0x00000001 , 0x00008088 
- 00025847  0x00006c88 hstoret  0x00000002 , 0x0000808e 
- 00025848  0x00006c89 jam  0x00000002 , 0x00008006 
- 00025849  0x00006c8a call  0x000064fc 
- 00025850  0x00006c8b fetch  0x00000001 , 0x000001fa 
- 00025851  0x00006c8c rtn 
- 00025852  0x00006c8f fetch  0x00000002 , 0x000040d6 
- 00025853  0x00006c90 increase  0x00000001 , 0x0000003f 
- 00025854  0x00006c91 store  0x00000002 , 0x000040d6 
- 00025855  0x00006c92 hfetch  0x00000001 , 0x0000812c 
- 00025856  0x00006c93 bbit0  0x00000003 , 0x000064fc 
- 00025857  0x00006c94 rtn 
- 00025858  0x00006c97 jam  0x00000040 , 0x00008086 
- 00025859  0x00006c98 jam  0x00000000 , 0x00008087 
- 00025860  0x00006c99 hfetch  0x00000001 , 0x00008081 
- 00025861  0x00006c9a set0  0x00000000 , 0x0000003f 
- 00025862  0x00006c9b set1  0x00000001 , 0x0000003f 
- 00025863  0x00006c9c hstore  0x00000001 , 0x00008081 
- 00025864  0x00006c9d setarg  0x00000000 
- 00025865  0x00006c9e store  0x00000004 , 0x000001f5 
- 00025866  0x00006c9f rtn 
- 00025867  0x00006ca3 setarg  0x00000000 
- 00025868  0x00006ca4 hstore  0x00000002 , 0x0000808e 
- 00025869  0x00006ca5 setarg  0x00000001 
- 00025870  0x00006ca6 hstore  0x00000002 , 0x00008088 
- 00025871  0x00006ca7 setarg  0x000001f5 
- 00025872  0x00006ca8 hstore  0x00000002 , 0x0000808a 
- 00025873  0x00006ca9 jam  0x00000006 , 0x000001f5 
- 00025874  0x00006caa jam  0x00000002 , 0x00008006 
- 00025875  0x00006cab branch  0x000064fc 
- 00025876  0x00006cbb disable  0x00000028 
- 00025877  0x00006cbc copy  0x0000003f , 0x00000012 
- 00025878  0x00006cbd fetch  0x00000001 , 0x00004239 
- 00025879  0x00006cbe rtnne  0x00000000 
- 00025880  0x00006cbf enable  0x00000028 
- 00025881  0x00006cc0 copy  0x00000012 , 0x0000003f 
- 00025882  0x00006cc1 branch  0x00006522 
- 00025883  0x00006cc5 fetch  0x00000001 , 0x00004239 
- 00025884  0x00006cc6 beq  0x00000001 , 0x00006522 
- 00025885  0x00006cc7 beq  0x00000002 , 0x00006528 
- 00025886  0x00006cc8 beq  0x00000003 , 0x00006530 
- 00025887  0x00006cc9 beq  0x00000004 , 0x00006537 
- 00025888  0x00006cca beq  0x00000005 , 0x0000653d 
- 00025889  0x00006ccb rtn 
- 00025890  0x00006cce store  0x00000003 , 0x00004232 
- 00025891  0x00006ccf copy  0x00000011 , 0x0000003f 
- 00025892  0x00006cd0 store  0x00000002 , 0x00004235 
- 00025893  0x00006cd1 storet  0x00000002 , 0x00004237 
- 00025894  0x00006cd2 jam  0x00000002 , 0x00004239 
- 00025895  0x00006cd3 branch  0x00006502 
- 00025896  0x00006cd5 call  0x00006502 
- 00025897  0x00006cd6 jam  0x00000003 , 0x00004239 
- 00025898  0x00006cd7 call  0x0000650b 
- 00025899  0x00006cd8 arg  0x000001f5 , 0x00000011 
- 00025900  0x00006cd9 fetch  0x00000003 , 0x00004232 
- 00025901  0x00006cda jam  0x00000004 , 0x00008088 
- 00025902  0x00006cdb arg  0x00000020 , 0x00000002 
- 00025903  0x00006cdc branch  0x00006556 
- 00025904  0x00006cdf call  0x00006502 
- 00025905  0x00006ce0 call  0x0000650b 
- 00025906  0x00006ce1 setarg  0x00000005 
- 00025907  0x00006ce2 call  0x000064f3 
- 00025908  0x00006ce3 rtnbit1  0x00000000 
- 00025909  0x00006ce4 jam  0x00000004 , 0x00004239 
- 00025910  0x00006ce5 rtn 
- 00025911  0x00006ce7 call  0x00006502 
- 00025912  0x00006ce8 jam  0x00000005 , 0x00004239 
- 00025913  0x00006ce9 call  0x0000650b 
- 00025914  0x00006cea call  0x0000654a 
- 00025915  0x00006ceb call  0x00006552 
- 00025916  0x00006cec branch  0x00006545 
- 00025917  0x00006cee call  0x00006502 
- 00025918  0x00006cef call  0x0000650b 
- 00025919  0x00006cf0 setarg  0x00000005 
- 00025920  0x00006cf1 call  0x000064f3 
- 00025921  0x00006cf2 rtnbit1  0x00000000 
- 00025922  0x00006cf3 jam  0x00000000 , 0x00004239 
- 00025923  0x00006cf4 fetch  0x00000002 , 0x00004201 
- 00025924  0x00006cf5 branch  0x00007f9c 
- 00025925  0x00006cf7 fetch  0x00000004 , 0x00000aa2 
- 00025926  0x00006cf8 fetcht  0x00000002 , 0x00004235 
- 00025927  0x00006cf9 increase  0xfffffffc , 0x00000002 
- 00025928  0x00006cfa istore  0x00000004 , 0x00000002 
- 00025929  0x00006cfb rtn 
- 00025930  0x00006cfd fetcht  0x00000002 , 0x00004235 
- 00025931  0x00006cfe copy  0x00000002 , 0x00000011 
- 00025932  0x00006cff increase  0xfffffffc , 0x00000002 
- 00025933  0x00006d00 ifetch  0x00000004 , 0x00000002 
- 00025934  0x00006d01 store  0x00000004 , 0x00000aa2 
- 00025935  0x00006d02 fetcht  0x00000002 , 0x00004237 
- 00025936  0x00006d03 fetch  0x00000003 , 0x00004232 
- 00025937  0x00006d04 rtn 
- 00025938  0x00006d09 increase  0x00000004 , 0x00000002 
- 00025939  0x00006d0a hstoret  0x00000002 , 0x00008088 
- 00025940  0x00006d0b arg  0x00000002 , 0x00000002 
- 00025941  0x00006d0c increase  0xfffffffc , 0x00000011 
- 00025942  0x00006d0f istoret  0x00000001 , 0x00000011 
- 00025943  0x00006d10 rshift16  0x0000003f , 0x00000002 
- 00025944  0x00006d11 istoret  0x00000001 , 0x00000005 
- 00025945  0x00006d12 rshift8  0x0000003f , 0x00000002 
- 00025946  0x00006d13 istoret  0x00000001 , 0x00000005 
- 00025947  0x00006d14 istore  0x00000001 , 0x00000005 
- 00025948  0x00006d15 deposit  0x00000011 
- 00025949  0x00006d16 hstore  0x00000002 , 0x0000808a 
- 00025950  0x00006d17 setarg  0x00000000 
- 00025951  0x00006d18 hstore  0x00000002 , 0x0000808e 
- 00025952  0x00006d19 jam  0x00000002 , 0x00008006 
- 00025953  0x00006d1a branch  0x000064fc 
- 00025954  0x00006d1f hstoret  0x00000002 , 0x0000808e 
- 00025955  0x00006d20 rshift16  0x0000003f , 0x00000002 
- 00025956  0x00006d21 storet  0x00000001 , 0x000001f6 
- 00025957  0x00006d22 rshift8  0x0000003f , 0x00000002 
- 00025958  0x00006d23 storet  0x00000001 , 0x000001f7 
- 00025959  0x00006d24 store  0x00000001 , 0x000001f8 
- 00025960  0x00006d25 setarg  0x00000004 
- 00025961  0x00006d26 hstore  0x00000002 , 0x00008088 
- 00025962  0x00006d27 jam  0x00000003 , 0x000001f5 
- 00025963  0x00006d28 setarg  0x000001f5 
- 00025964  0x00006d29 hstore  0x00000002 , 0x0000808a 
- 00025965  0x00006d2a deposit  0x00000011 
- 00025966  0x00006d2b hstore  0x00000002 , 0x0000808c 
- 00025967  0x00006d2c hfetch  0x00000001 , 0x00008086 
- 00025968  0x00006d2d isolate0  0x0000000f , 0x00000011 
- 00025969  0x00006d2e setflag  0x00000001 , 0x00000006 , 0x0000003f 
- 00025970  0x00006d2f hstore  0x00000001 , 0x00008086 
- 00025971  0x00006d30 jam  0x00000002 , 0x00008006 
- 00025972  0x00006d32 hfetch  0x00000001 , 0x0000812c 
- 00025973  0x00006d33 bbit1  0x00000007 , 0x00006574 
- 00025974  0x00006d34 arg  0x00000003 , 0x00000007 
- 00025975  0x00006d35 branch  0x000064fc 
- 00025976  0x00006d3a hstoret  0x00000002 , 0x0000808e 
- 00025977  0x00006d3b setarg  0x00000004 
- 00025978  0x00006d3c hstore  0x00000002 , 0x00008088 
- 00025979  0x00006d3d jam  0x00000003 , 0x000001f5 
- 00025980  0x00006d3e setarg  0x000001f5 
- 00025981  0x00006d3f hstore  0x00000002 , 0x0000808a 
- 00025982  0x00006d40 deposit  0x00000011 
- 00025983  0x00006d41 hstore  0x00000002 , 0x0000808c 
- 00025984  0x00006d42 hfetch  0x00000001 , 0x00008086 
- 00025985  0x00006d43 isolate0  0x0000000f , 0x00000011 
- 00025986  0x00006d44 setflag  0x00000001 , 0x00000006 , 0x0000003f 
- 00025987  0x00006d45 hstore  0x00000001 , 0x00008086 
- 00025988  0x00006d46 jam  0x00000002 , 0x00008006 
- 00025989  0x00006d48 hfetch  0x00000001 , 0x0000812c 
- 00025990  0x00006d49 bbit1  0x00000007 , 0x00006585 
- 00025991  0x00006d4a arg  0x00000003 , 0x00000007 
- 00025992  0x00006d4b call  0x000064c0 
- 00025993  0x00006d4c call  0x000064fc 
- 00025994  0x00006d4d isolate1  0x00000002 , 0x0000003f 
- 00025995  0x00006d4e call  0x000064b9 
- 00025996  0x00006d4f fetch  0x00000001 , 0x000001f6 
- 00025997  0x00006d50 lshift16  0x0000003f , 0x00000012 
- 00025998  0x00006d51 fetch  0x00000001 , 0x000001f7 
- 00025999  0x00006d52 lshift8  0x0000003f , 0x0000003f 
- 00026000  0x00006d53 ior  0x00000012 , 0x00000012 
- 00026001  0x00006d54 fetch  0x00000001 , 0x000001f8 
- 00026002  0x00006d55 ior  0x00000012 , 0x0000003f 
- 00026003  0x00006d56 iadd  0x00000002 , 0x0000003f 
- 00026004  0x00006d57 store  0x00000001 , 0x000001f8 
- 00026005  0x00006d58 rshift8  0x0000003f , 0x0000003f 
- 00026006  0x00006d59 store  0x00000001 , 0x000001f7 
- 00026007  0x00006d5a rshift8  0x0000003f , 0x0000003f 
- 00026008  0x00006d5b store  0x00000001 , 0x000001f6 
- 00026009  0x00006d5c rtn 
- 00026010  0x00006d62 jam  0x00000001 , 0x00008010 
- 00026011  0x00006d63 rtn 
- 00026012  0x00006d6a jam  0x0000000c , 0x00008091 
- 00026013  0x00006d6b jam  0x0000000d , 0x00008092 
- 00026014  0x00006d6c jam  0x0000000d , 0x00008093 
- 00026015  0x00006d6d jam  0x0000000d , 0x00008094 
- 00026016  0x00006d6e jam  0x0000000d , 0x00008095 
- 00026017  0x00006d6f jam  0x0000000c , 0x00008096 
- 00026018  0x00006d70 branch  0x000065a9 
- 00026019  0x00006d74 jam  0x00000005 , 0x00008091 
- 00026020  0x00006d75 jam  0x00000007 , 0x00008092 
- 00026021  0x00006d76 jam  0x00000007 , 0x00008093 
- 00026022  0x00006d77 jam  0x00000007 , 0x00008094 
- 00026023  0x00006d78 jam  0x00000007 , 0x00008095 
- 00026024  0x00006d79 jam  0x00000005 , 0x00008096 
- 00026025  0x00006d7b hfetch  0x00000001 , 0x0000807b 
- 00026026  0x00006d7c or_into  0x000000c0 , 0x0000003f 
- 00026027  0x00006d7d hstore  0x00000001 , 0x0000807b 
- 00026028  0x00006d7e hfetch  0x00000001 , 0x00008081 
- 00026029  0x00006d7f or_into  0x00000010 , 0x0000003f 
- 00026030  0x00006d80 hstore  0x00000001 , 0x00008081 
- 00026031  0x00006d81 rtn 
- 00026032  0x00006d86 hfetch  0x00000001 , 0x0000812c 
- 00026033  0x00006d87 bbit0  0x00000005 , 0x000065b0 
- 00026034  0x00006d88 rtn 
- 00026035  0x00006d91 hstore  0x00000002 , 0x00008098 
- 00026036  0x00006d92 deposit  0x00000011 
- 00026037  0x00006d93 hstore  0x00000002 , 0x0000809a 
- 00026038  0x00006d94 deposit  0x00000012 
- 00026039  0x00006d95 hstore  0x00000002 , 0x0000809c 
- 00026040  0x00006d96 deposit  0x00000002 
- 00026041  0x00006d97 hstore  0x00000002 , 0x0000809e 
- 00026042  0x00006d98 arg  0x00000001 , 0x00000002 
- 00026043  0x00006d99 nsetflag  0x00000034 , 0x00000001 , 0x00000002 
- 00026044  0x00006d9a hstore  0x00000001 , 0x00008090 
- 00026045  0x00006d9b jam  0x00000004 , 0x00008006 
- 00026046  0x00006d9c branch  0x000065b0 
- 00026047  0x00006da0 set1  0x00000028 , 0x00000000 
- 00026048  0x00006da1 jam  0x00000008 , 0x00004211 
- 00026049  0x00006da2 rtn 
- 00026050  0x00006da5 set0  0x00000028 , 0x00000000 
- 00026051  0x00006da6 jam  0x00000020 , 0x00004211 
- 00026052  0x00006da7 rtn 
- 00026053  0x00006dab fetch  0x00000001 , 0x00004203 
- 00026054  0x00006dac iadd  0x00000012 , 0x0000003f 
- 00026055  0x00006dad store  0x00000001 , 0x000001f7 
- 00026056  0x00006dae branch  0x000065cc 
- 00026057  0x00006db1 fetch  0x00000002 , 0x000001f7 
- 00026058  0x00006db2 byteswap  0x0000003f , 0x0000003f 
- 00026059  0x00006db3 store  0x00000001 , 0x000001f7 
- 00026060  0x00006db9 setarg  0x00000003 
- 00026061  0x00006dba hstore  0x00000002 , 0x00008098 
- 00026062  0x00006dbb jam  0x000000a0 , 0x000001f6 
- 00026063  0x00006dbc jam  0x000000a1 , 0x000001f8 
- 00026064  0x00006dbd branch  0x000065eb 
- 00026065  0x00006dc4 storet  0x00000002 , 0x00000aa2 
- 00026066  0x00006dc5 call  0x000065d6 
- 00026067  0x00006dc6 fetcht  0x00000002 , 0x00000aa2 
- 00026068  0x00006dc7 call  0x00006606 
- 00026069  0x00006dc8 branch  0x000065dd 
- 00026070  0x00006dcb fetch  0x00000001 , 0x0000423a 
- 00026071  0x00006dcc rtneq  0x000000ff 
- 00026072  0x00006dcd bbit0  0x00000006 , 0x000065db 
- 00026073  0x00006dce setarg  0x000249f0 
- 00026074  0x00006dcf call  0x00002a8f 
- 00026075  0x00006dd1 fetcht  0x00000001 , 0x0000423a 
- 00026076  0x00006dd2 branch  0x00006829 
- 00026077  0x00006dd5 fetcht  0x00000001 , 0x0000423a 
- 00026078  0x00006dd6 branch  0x00006825 
- 00026079  0x00006ddc bpatchx  0x00000090 , 0x00004032 
- 00026080  0x00006ddd bmark1  0x00000028 , 0x000065c5 
- 00026081  0x00006dde fetch  0x00000002 , 0x00004203 
- 00026082  0x00006ddf iadd  0x00000012 , 0x0000003f 
- 00026083  0x00006de0 byteswap  0x0000003f , 0x0000003f 
- 00026084  0x00006de1 store  0x00000002 , 0x000001f7 
- 00026085  0x00006de5 bpatchx  0x00000091 , 0x00004032 
- 00026086  0x00006de6 bmark1  0x00000028 , 0x000065c9 
- 00026087  0x00006de7 setarg  0x00000004 
- 00026088  0x00006de8 hstore  0x00000002 , 0x00008098 
- 00026089  0x00006de9 jam  0x000000a0 , 0x000001f6 
- 00026090  0x00006dea jam  0x000000a1 , 0x000001f9 
- 00026091  0x00006dec setarg  0x000001f6 
- 00026092  0x00006ded hstore  0x00000002 , 0x0000809a 
- 00026093  0x00006dee hstoret  0x00000002 , 0x0000809e 
- 00026094  0x00006def deposit  0x00000011 
- 00026095  0x00006df0 hstore  0x00000002 , 0x0000809c 
- 00026096  0x00006df1 setarg  0x00000002 
- 00026097  0x00006df2 isolate0  0x0000000f , 0x00000011 
- 00026098  0x00006df3 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00026099  0x00006df4 hstore  0x00000001 , 0x00008090 
- 00026100  0x00006df5 jam  0x00000004 , 0x00008006 
- 00026101  0x00006df6 arg  0x00000005 , 0x00000007 
- 00026102  0x00006df7 call  0x000064c0 
- 00026103  0x00006df8 call  0x000065b0 
- 00026104  0x00006df9 isolate1  0x00000004 , 0x0000003f 
- 00026105  0x00006dfa call  0x000064b9 
- 00026106  0x00006dfb bmark1  0x00000028 , 0x00006601 
- 00026107  0x00006dfc fetch  0x00000002 , 0x000001f7 
- 00026108  0x00006dfd byteswap  0x0000003f , 0x0000003f 
- 00026109  0x00006dfe iadd  0x00000002 , 0x0000003f 
- 00026110  0x00006dff byteswap  0x0000003f , 0x0000003f 
- 00026111  0x00006e00 store  0x00000002 , 0x000001f7 
- 00026112  0x00006e01 rtn 
- 00026113  0x00006e04 fetch  0x00000001 , 0x000001f7 
- 00026114  0x00006e05 iadd  0x00000002 , 0x0000003f 
- 00026115  0x00006e06 byteswap  0x0000003f , 0x0000003f 
- 00026116  0x00006e07 store  0x00000002 , 0x000001f7 
- 00026117  0x00006e08 rtn 
- 00026118  0x00006e0f fetch  0x00000002 , 0x00004203 
- 00026119  0x00006e10 iadd  0x00000012 , 0x0000003f 
- 00026120  0x00006e14 store  0x00000002 , 0x00000a9a 
- 00026121  0x00006e15 bpatchx  0x00000092 , 0x00004032 
- 00026122  0x00006e16 storet  0x00000002 , 0x00000aa2 
- 00026123  0x00006e17 copy  0x00000011 , 0x0000003f 
- 00026124  0x00006e18 store  0x00000002 , 0x00000ab9 
- 00026125  0x00006e1a call  0x0000661d 
- 00026126  0x00006e1c fetcht  0x00000002 , 0x00000ab2 
- 00026127  0x00006e1d fetch  0x00000002 , 0x00000ab9 
- 00026128  0x00006e1e copy  0x0000003f , 0x00000011 
- 00026129  0x00006e1f fetch  0x00000002 , 0x00000a9a 
- 00026130  0x00006e21 call  0x0000663d 
- 00026131  0x00006e23 fetch  0x00000002 , 0x00000ab2 
- 00026132  0x00006e24 fetcht  0x00000002 , 0x00000ab9 
- 00026133  0x00006e25 iadd  0x00000002 , 0x00000002 
- 00026134  0x00006e26 storet  0x00000002 , 0x00000ab9 
- 00026135  0x00006e27 fetcht  0x00000002 , 0x00000a9a 
- 00026136  0x00006e28 iadd  0x00000002 , 0x00000002 
- 00026137  0x00006e29 storet  0x00000002 , 0x00000a9a 
- 00026138  0x00006e2a fetch  0x00000002 , 0x00000aa2 
- 00026139  0x00006e2b nbranch  0x0000660d , 0x00000034 
- 00026140  0x00006e2c rtn 
- 00026141  0x00006e35 bpatchx  0x00000093 , 0x00004032 
- 00026142  0x00006e36 fetch  0x00000001 , 0x00004211 
- 00026143  0x00006e37 increase  0xffffffff , 0x0000003f 
- 00026144  0x00006e38 fetcht  0x00000002 , 0x00000a9a 
- 00026145  0x00006e39 ior  0x00000002 , 0x0000003f 
- 00026146  0x00006e3a increase  0x00000001 , 0x0000003f 
- 00026147  0x00006e3b store  0x00000003 , 0x00000ab6 
- 00026148  0x00006e3d fetch  0x00000002 , 0x00000aa2 
- 00026149  0x00006e3e iadd  0x00000002 , 0x0000003f 
- 00026150  0x00006e40 fetcht  0x00000003 , 0x00000ab6 
- 00026151  0x00006e41 isub  0x00000002 , 0x0000003f 
- 00026152  0x00006e42 nbranch  0x0000662f , 0x00000002 
- 00026153  0x00006e43 store  0x00000002 , 0x00000aa2 
- 00026154  0x00006e44 fetch  0x00000003 , 0x00000ab6 
- 00026155  0x00006e45 fetcht  0x00000002 , 0x00000a9a 
- 00026156  0x00006e46 isub  0x00000002 , 0x0000003f 
- 00026157  0x00006e47 store  0x00000002 , 0x00000ab2 
- 00026158  0x00006e48 rtn 
- 00026159  0x00006e4a fetch  0x00000002 , 0x00000aa2 
- 00026160  0x00006e4b store  0x00000002 , 0x00000ab2 
- 00026161  0x00006e4c setarg  0x00000000 
- 00026162  0x00006e4d store  0x00000002 , 0x00000aa2 
- 00026163  0x00006e4e rtn 
- 00026164  0x00006e51 increase  0x00000002 , 0x00000002 
- 00026165  0x00006e52 hstoret  0x00000002 , 0x00008098 
- 00026166  0x00006e53 increase  0xfffffffe , 0x00000011 
- 00026167  0x00006e54 ifetcht  0x00000003 , 0x00000011 
- 00026168  0x00006e55 copy  0x00000002 , 0x00000012 
- 00026169  0x00006e56 arg  0x000000a0 , 0x00000002 
- 00026170  0x00006e57 istoret  0x00000001 , 0x00000011 
- 00026171  0x00006e59 istore  0x00000001 , 0x00000005 
- 00026172  0x00006e5a branch  0x0000664a 
- 00026173  0x00006e5e copy  0x0000003f , 0x00000012 
- 00026174  0x00006e5f bpatchx  0x00000094 , 0x00004032 
- 00026175  0x00006e60 bmark1  0x00000028 , 0x00006634 
- 00026176  0x00006e61 copy  0x00000012 , 0x0000003f 
- 00026177  0x00006e62 increase  0x00000003 , 0x00000002 
- 00026178  0x00006e63 hstoret  0x00000002 , 0x00008098 
- 00026179  0x00006e64 increase  0xfffffffd , 0x00000011 
- 00026180  0x00006e65 ifetcht  0x00000003 , 0x00000011 
- 00026181  0x00006e66 copy  0x00000002 , 0x00000012 
- 00026182  0x00006e67 arg  0x000000a0 , 0x00000002 
- 00026183  0x00006e68 istoret  0x00000001 , 0x00000011 
- 00026184  0x00006e69 byteswap  0x0000003f , 0x0000003f 
- 00026185  0x00006e6a istore  0x00000002 , 0x00000005 
- 00026186  0x00006e6c deposit  0x00000011 
- 00026187  0x00006e6d hstore  0x00000002 , 0x0000809a 
- 00026188  0x00006e6e setarg  0x00000000 
- 00026189  0x00006e6f hstore  0x00000002 , 0x0000809e 
- 00026190  0x00006e70 jam  0x00000001 , 0x00008090 
- 00026191  0x00006e71 jam  0x00000004 , 0x00008006 
- 00026192  0x00006e72 call  0x000065b0 
- 00026193  0x00006e73 copy  0x00000012 , 0x0000003f 
- 00026194  0x00006e74 istore  0x00000003 , 0x00000011 
- 00026195  0x00006e77 bpatchx  0x00000095 , 0x00004032 
- 00026196  0x00006e78 jam  0x00000000 , 0x000001f9 
- 00026197  0x00006e7a setarg  0x00000001 
- 00026198  0x00006e7b hstore  0x00000002 , 0x00008098 
- 00026199  0x00006e7c jam  0x000000a0 , 0x000001f6 
- 00026200  0x00006e7d setarg  0x000001f6 
- 00026201  0x00006e7e hstore  0x00000002 , 0x0000809a 
- 00026202  0x00006e7f setarg  0x00000000 
- 00026203  0x00006e80 hstore  0x00000002 , 0x0000809e 
- 00026204  0x00006e81 hstore  0x00000002 , 0x0000809c 
- 00026205  0x00006e82 setarg  0x00000003 
- 00026206  0x00006e83 hstore  0x00000001 , 0x00008090 
- 00026207  0x00006e84 jam  0x00000004 , 0x00008006 
- 00026208  0x00006e85 call  0x000065b0 
- 00026209  0x00006e86 hfetch  0x00000001 , 0x0000812c 
- 00026210  0x00006e87 rtnbit0  0x00000006 
- 00026211  0x00006e88 nop  0x000005dc 
- 00026212  0x00006e89 fetch  0x00000001 , 0x000001f9 
- 00026213  0x00006e8a increase  0x00000001 , 0x0000003f 
- 00026214  0x00006e8b store  0x00000001 , 0x000001f9 
- 00026215  0x00006e8c sub  0x0000003f , 0x00000028 , 0x0000003e 
- 00026216  0x00006e8d nrtn  0x00000002 
- 00026217  0x00006e8e branch  0x00006655 
- 00026218  0x00006e93 jam  0x00000070 , 0x00008973 
- 00026219  0x00006e94 nop  0x00000bb8 
- 00026220  0x00006e95 rtn 
- 00026221  0x00006e98 jam  0x00000030 , 0x00008973 
- 00026222  0x00006e99 rtn 
- 00026223  0x00006e9c lshift3  0x0000003f , 0x0000003f 
- 00026224  0x00006e9d hstore  0x00000002 , 0x00008045 
- 00026225  0x00006e9e jam  0x00000000 , 0x0000804b 
- 00026226  0x00006e9f rtn 
- 00026227  0x00006ea3 call  0x0000666f 
- 00026228  0x00006ea4 call  0x000066a0 
- 00026229  0x00006ea6 ifetcht  0x00000001 , 0x00000011 
- 00026230  0x00006ea7 increase  0x00000001 , 0x00000011 
- 00026231  0x00006ea8 force  0x00000000 , 0x00000007 
- 00026232  0x00006eaa qisolate0  0x00000002 
- 00026233  0x00006eab branch  0x00006697 , 0x00000001 
- 00026234  0x00006eac hfetch  0x00000001 , 0x00008046 
- 00026235  0x00006ead set1  0x00000006 , 0x0000003f 
- 00026236  0x00006eae set1  0x00000007 , 0x0000003f 
- 00026237  0x00006eaf hstore  0x00000001 , 0x00008046 
- 00026238  0x00006eb0 jam  0x00000002 , 0x00008047 
- 00026239  0x00006eb1 jam  0x00000082 , 0x00008047 
- 00026240  0x00006eb2 set0  0x00000007 , 0x0000003f 
- 00026241  0x00006eb3 hstore  0x00000001 , 0x00008046 
- 00026242  0x00006eb4 jam  0x0000008a , 0x00008047 
- 00026243  0x00006eb5 nop  0x0000000b 
- 00026244  0x00006eb6 jam  0x000000ca , 0x00008047 
- 00026245  0x00006eb7 nop  0x00000021 
- 00026246  0x00006eb8 jam  0x0000004a , 0x00008047 
- 00026247  0x00006eb9 nop  0x0000002c 
- 00026248  0x00006eba jam  0x000000ca , 0x00008047 
- 00026249  0x00006ebb nop  0x00000016 
- 00026250  0x00006ebc jam  0x0000008a , 0x00008047 
- 00026251  0x00006ebd nop  0x00000021 
- 00026252  0x00006ebe jam  0x00000082 , 0x00008047 
- 00026253  0x00006ebf nop  0x00000001 
- 00026254  0x00006ec0 jam  0x00000092 , 0x00008047 
- 00026255  0x00006ec1 nop  0x0000000a 
- 00026256  0x00006ec2 jam  0x000000b2 , 0x00008047 
- 00026257  0x00006ec3 hfetch  0x00000001 , 0x00008007 
- 00026258  0x00006ec4 jam  0x00000092 , 0x00008047 
- 00026259  0x00006ec5 nop  0x00000001 
- 00026260  0x00006ec6 jam  0x00000082 , 0x00008047 
- 00026261  0x00006ec7 qisolate0  0x0000003f 
- 00026262  0x00006ec8 branch  0x00006678 , 0x00000001 
- 00026263  0x00006eca hfetch  0x00000002 , 0x00008045 
- 00026264  0x00006ecb increase  0x00000001 , 0x0000003f 
- 00026265  0x00006ecc hstore  0x00000002 , 0x00008045 
- 00026266  0x00006ecd increase  0x00000001 , 0x00000007 
- 00026267  0x00006ece compare  0x00000008 , 0x00000007 , 0x0000000f 
- 00026268  0x00006ecf nbranch  0x00006678 , 0x00000001 
- 00026269  0x00006ed0 loop  0x00006675 
- 00026270  0x00006ed1 jam  0x00000083 , 0x00008047 
- 00026271  0x00006ed2 rtn 
- 00026272  0x00006ed5 jam  0x00000082 , 0x00008047 
- 00026273  0x00006ed6 nop  0x0000000c 
- 00026274  0x00006ed7 jam  0x00000080 , 0x00008047 
- 00026275  0x00006ed8 jam  0x00000082 , 0x00008047 
- 00026276  0x00006ed9 nop  0x00000096 
- 00026277  0x00006eda rtn 
- 00026278  0x00006ede call  0x000066a0 
- 00026279  0x00006edf jam  0x000000a2 , 0x00008047 
- 00026280  0x00006ee0 deposit  0x00000011 
- 00026281  0x00006ee1 hstore  0x00000002 , 0x00008048 
- 00026282  0x00006ee2 set1  0x0000000b , 0x00000002 
- 00026283  0x00006ee3 isolate0  0x0000000f , 0x0000003f 
- 00026284  0x00006ee4 setflag  0x00000001 , 0x0000000f , 0x00000002 
- 00026285  0x00006ee5 hstoret  0x00000002 , 0x0000804a 
- 00026286  0x00006ee6 jam  0x00000001 , 0x00008006 
- 00026287  0x00006ee7 rtn 
- 00026288  0x00006eea hfetch  0x00000001 , 0x0000812c 
- 00026289  0x00006eeb bbit0  0x00000001 , 0x000066b0 
- 00026290  0x00006eec rtn 
- 00026291  0x00006ef0 call  0x0000666f 
- 00026292  0x00006ef1 call  0x000066a6 
- 00026293  0x00006ef2 call  0x000066b0 
- 00026294  0x00006ef3 jam  0x00000083 , 0x00008047 
- 00026295  0x00006ef4 rtn 
- 00026296  0x00006efa hfetch  0x00000002 , 0x00008124 
- 00026297  0x00006efb hstore  0x00000002 , 0x00008045 
- 00026298  0x00006efc call  0x000066a6 
- 00026299  0x00006efd arg  0x00000001 , 0x00000007 
- 00026300  0x00006efe call  0x000064c0 
- 00026301  0x00006eff call  0x000066b0 
- 00026302  0x00006f00 isolate1  0x00000000 , 0x0000003f 
- 00026303  0x00006f01 call  0x000064b9 
- 00026304  0x00006f02 jam  0x00000083 , 0x00008047 
- 00026305  0x00006f03 rtn 
- 00026306  0x00006f07 hfetch  0x00000002 , 0x0000805e 
- 00026307  0x00006f08 iforce  0x0000000a 
- 00026308  0x00006f09 rtn 
- 00026309  0x00006f0c deposit  0x0000000a 
- 00026310  0x00006f0d hstore  0x00000002 , 0x0000805e 
- 00026311  0x00006f0e rtn 
- 00026312  0x00006f11 deposit  0x00000003 
- 00026313  0x00006f12 hstore  0x00000002 , 0x00008058 
- 00026314  0x00006f13 rtn 
- 00026315  0x00006f16 hfetch  0x00000002 , 0x00008058 
- 00026316  0x00006f17 copy  0x0000003f , 0x00000003 
- 00026317  0x00006f18 rtn 
- 00026318  0x00006f1b fetch  0x00000002 , 0x00004243 
- 00026319  0x00006f1c hstore  0x00000002 , 0x00008052 
- 00026320  0x00006f1d rtn 
- 00026321  0x00006f20 deposit  0x00000039 
- 00026322  0x00006f21 rtn  0x00000034 
- 00026323  0x00006f23 increase  0xfffffff8 , 0x00000039 
- 00026324  0x00006f24 call  0x000066de , 0x00000002 
- 00026325  0x00006f25 rtn  0x00000005 
- 00026326  0x00006f26 branch  0x000066d3 , 0x00000002 
- 00026327  0x00006f27 increase  0x00000008 , 0x00000039 
- 00026328  0x00006f29 increase  0xfffffffc , 0x00000039 
- 00026329  0x00006f2a call  0x000066e1 , 0x00000002 
- 00026330  0x00006f2b rtn  0x00000005 
- 00026331  0x00006f2c branch  0x000066d8 , 0x00000002 
- 00026332  0x00006f2d increase  0x00000004 , 0x00000039 
- 00026333  0x00006f2e branch  0x000066e4 
- 00026334  0x00006f31 ifetch  0x00000008 , 0x00000006 
- 00026335  0x00006f32 istore  0x00000008 , 0x0000000a 
- 00026336  0x00006f33 rtn 
- 00026337  0x00006f36 ifetch  0x00000004 , 0x00000006 
- 00026338  0x00006f37 istore  0x00000004 , 0x0000000a 
- 00026339  0x00006f38 rtn 
- 00026340  0x00006f3b deposit  0x00000039 
- 00026341  0x00006f3c rtn  0x00000034 
- 00026342  0x00006f3e ifetch  0x00000001 , 0x00000006 
- 00026343  0x00006f3f istore  0x00000001 , 0x0000000a 
- 00026344  0x00006f40 loop  0x000066e6 
- 00026345  0x00006f41 rtn 
- 00026346  0x00006f44 deposit  0x00000039 
- 00026347  0x00006f45 rtn  0x00000034 
- 00026348  0x00006f47 increase  0xfffffff8 , 0x00000039 
- 00026349  0x00006f48 call  0x000066f7 , 0x00000002 
- 00026350  0x00006f49 rtn  0x00000005 
- 00026351  0x00006f4a branch  0x000066ec , 0x00000002 
- 00026352  0x00006f4b increase  0x00000008 , 0x00000039 
- 00026353  0x00006f4d increase  0xfffffffc , 0x00000039 
- 00026354  0x00006f4e call  0x000066fa , 0x00000002 
- 00026355  0x00006f4f rtn  0x00000005 
- 00026356  0x00006f50 branch  0x000066f1 , 0x00000002 
- 00026357  0x00006f51 increase  0x00000004 , 0x00000039 
- 00026358  0x00006f52 branch  0x000066fd 
- 00026359  0x00006f55 ifetch  0x00000008 , 0x00000003 
- 00026360  0x00006f56 istore  0x00000008 , 0x00000005 
- 00026361  0x00006f57 rtn 
- 00026362  0x00006f5a ifetch  0x00000004 , 0x00000003 
- 00026363  0x00006f5b istore  0x00000004 , 0x00000005 
- 00026364  0x00006f5c rtn 
- 00026365  0x00006f60 deposit  0x00000039 
- 00026366  0x00006f61 rtn  0x00000034 
- 00026367  0x00006f63 ifetch  0x00000001 , 0x00000003 
- 00026368  0x00006f64 istore  0x00000001 , 0x00000005 
- 00026369  0x00006f65 loop  0x000066ff 
- 00026370  0x00006f66 rtn 
- 00026371  0x00006f6a deposit  0x00000039 
- 00026372  0x00006f6b rtn  0x00000034 
- 00026373  0x00006f6d ifetch  0x00000001 , 0x00000003 
- 00026374  0x00006f6e istore  0x00000001 , 0x0000000a 
- 00026375  0x00006f6f loop  0x00006705 
- 00026376  0x00006f70 rtn 
- 00026377  0x00006f76 jam  0x0000003d , 0x00000a99 
- 00026378  0x00006f77 branch  0x00007d86 
- 00026379  0x00006f7b bpatchx  0x00000096 , 0x00004032 
- 00026380  0x00006f7c fetch  0x00000001 , 0x00004217 
- 00026381  0x00006f7d rtn  0x00000034 
- 00026382  0x00006f7e call  0x000067a3 
- 00026383  0x00006f7f call  0x000067a9 , 0x00000005 
- 00026384  0x00006f80 call  0x0000673e 
- 00026385  0x00006f82 fetch  0x00000001 , 0x00004217 
- 00026386  0x00006f83 icopy  0x00000013 
- 00026387  0x00006f84 fetcht  0x00000002 , 0x00004215 
- 00026388  0x00006f85 storet  0x00000002 , 0x0000018c 
- 00026389  0x00006f87 copy  0x00000013 , 0x0000003f 
- 00026390  0x00006f88 branch  0x00006709 , 0x00000034 
- 00026391  0x00006f89 increase  0xffffffff , 0x00000013 
- 00026392  0x00006f8a copy  0x00000002 , 0x00000011 
- 00026393  0x00006f8b ifetch  0x00000001 , 0x00000011 
- 00026394  0x00006f8c fetcht  0x00000001 , 0x00000184 
- 00026395  0x00006f8d isub  0x00000002 , 0x0000003e 
- 00026396  0x00006f8e call  0x00006725 , 0x00000005 
- 00026397  0x00006f8f branch  0x00006721 , 0x00000002 
- 00026398  0x00006f90 ifetch  0x00000001 , 0x00000011 
- 00026399  0x00006f91 increase  0x00000001 , 0x0000003f 
- 00026400  0x00006f92 istore  0x00000001 , 0x00000011 
- 00026401  0x00006f94 fetcht  0x00000002 , 0x0000018c 
- 00026402  0x00006f95 increase  0x00000022 , 0x00000002 
- 00026403  0x00006f96 storet  0x00000002 , 0x0000018c 
- 00026404  0x00006f97 branch  0x00006715 
- 00026405  0x00006f9a setarg  0x00000000 
- 00026406  0x00006f9b istore  0x00000001 , 0x00000011 
- 00026407  0x00006f9c fetch  0x00000001 , 0x00000185 
- 00026408  0x00006f9d istore  0x00000001 , 0x00000005 
- 00026409  0x00006f9e bne  0x00000033 , 0x00006733 
- 00026410  0x00006f9f arg  0x000041be , 0x00000012 
- 00026411  0x00006fa1 ifetch  0x00000006 , 0x00000006 
- 00026412  0x00006fa2 istore  0x00000008 , 0x00000005 
- 00026413  0x00006fa3 setarg  0x00000000 
- 00026414  0x00006fa4 istore  0x00000008 , 0x00000005 
- 00026415  0x00006fa5 copy  0x00000012 , 0x00000006 
- 00026416  0x00006fa7 call  0x00007ebf 
- 00026417  0x00006fa8 force  0x00000001 , 0x0000003e 
- 00026418  0x00006fa9 rtn 
- 00026419  0x00006fac beq  0x00000036 , 0x00006737 
- 00026420  0x00006fad beq  0x00000037 , 0x0000673b 
- 00026421  0x00006fae arg  0x00004419 , 0x00000012 
- 00026422  0x00006faf branch  0x0000672b 
- 00026423  0x00006fb2 arg  0x000044d5 , 0x00000006 
- 00026424  0x00006fb3 call  0x00007ebf 
- 00026425  0x00006fb5 arg  0x00004419 , 0x00000006 
- 00026426  0x00006fb6 branch  0x00006730 
- 00026427  0x00006fb9 arg  0x000044cd , 0x00000006 
- 00026428  0x00006fba call  0x00007ebf 
- 00026429  0x00006fbb branch  0x00006739 
- 00026430  0x00006fbf call  0x00007fe9 
- 00026431  0x00006fc0 fetch  0x00000001 , 0x00004217 
- 00026432  0x00006fc1 rtn  0x00000034 
- 00026433  0x00006fc2 fetch  0x00000002 , 0x00004682 
- 00026434  0x00006fc3 bbit1  0x00000000 , 0x00006754 
- 00026435  0x00006fc5 bpatchx  0x00000097 , 0x00004032 
- 00026436  0x00006fc6 fetch  0x00000001 , 0x0000448e 
- 00026437  0x00006fc7 beq  0x00000000 , 0x0000674d 
- 00026438  0x00006fc8 fetch  0x00000001 , 0x00000454 
- 00026439  0x00006fc9 compare  0x000000c0 , 0x0000003f , 0x000000c0 
- 00026440  0x00006fca branch  0x0000674d , 0x00000001 
- 00026441  0x00006fcb compare  0x00000040 , 0x0000003f , 0x000000c0 
- 00026442  0x00006fcc branch  0x00006752 , 0x00000001 
- 00026443  0x00006fcd compare  0x00000000 , 0x0000003f , 0x000000c0 
- 00026444  0x00006fce branch  0x00006750 , 0x00000001 
- 00026445  0x00006fd0 jam  0x00000035 , 0x00000185 
- 00026446  0x00006fd1 fetch  0x00000006 , 0x0000044f 
- 00026447  0x00006fd2 branch  0x00006757 
- 00026448  0x00006fd5 jam  0x00000037 , 0x00000185 
- 00026449  0x00006fd6 branch  0x00006757 
- 00026450  0x00006fda jam  0x00000036 , 0x00000185 
- 00026451  0x00006fdb branch  0x00006757 
- 00026452  0x00006fdf bpatchx  0x00000098 , 0x00004033 
- 00026453  0x00006fe0 jam  0x00000033 , 0x00000185 
- 00026454  0x00006fe1 fetch  0x00000006 , 0x00000040 
- 00026455  0x00006fe3 store  0x00000006 , 0x00000186 
- 00026456  0x00006fe4 fetch  0x00000002 , 0x00004215 
- 00026457  0x00006fe5 ifetcht  0x00000001 , 0x0000003f 
- 00026458  0x00006fe6 pincrease  0x00000001 
- 00026459  0x00006fe7 store  0x00000002 , 0x0000018c 
- 00026460  0x00006fe8 storet  0x00000001 , 0x00000184 
- 00026461  0x00006fe9 fetch  0x00000001 , 0x00004217 
- 00026462  0x00006fea icopy  0x00000013 
- 00026463  0x00006fec fetch  0x00000002 , 0x0000018c 
- 00026464  0x00006fed copy  0x0000003f , 0x00000011 
- 00026465  0x00006fee call  0x0000676f 
- 00026466  0x00006fef rtn  0x00000028 
- 00026467  0x00006ff0 fetcht  0x00000002 , 0x0000018c 
- 00026468  0x00006ff1 increase  0x00000022 , 0x00000002 
- 00026469  0x00006ff2 storet  0x00000002 , 0x0000018c 
- 00026470  0x00006ff3 increase  0xffffffff , 0x00000002 
- 00026471  0x00006ff4 ifetch  0x00000001 , 0x00000002 
- 00026472  0x00006ff5 store  0x00000001 , 0x00000184 
- 00026473  0x00006ff6 increase  0xffffffff , 0x00000013 
- 00026474  0x00006ff7 nbranch  0x0000675f , 0x00000005 
- 00026475  0x00006ff8 fetch  0x00000001 , 0x00004217 
- 00026476  0x00006ff9 pincrease  0xffffffff 
- 00026477  0x00006ffa store  0x00000001 , 0x00000184 
- 00026478  0x00006ffb rtn 
- 00026479  0x00006ffd fetch  0x00000001 , 0x00000185 
- 00026480  0x00006ffe bne  0x00000033 , 0x00006776 
- 00026481  0x00007000 arg  0x00000185 , 0x00000012 
- 00026482  0x00007001 arg  0x00000007 , 0x00000039 
- 00026483  0x00007002 call  0x00007f88 
- 00026484  0x00007003 branch  0x00007fe7 , 0x00000005 
- 00026485  0x00007004 rtn 
- 00026486  0x00007007 beq  0x00000036 , 0x00006779 
- 00026487  0x00007008 beq  0x00000037 , 0x00006794 
- 00026488  0x00007009 branch  0x00006771 
- 00026489  0x0000700c ifetcht  0x00000001 , 0x00000011 
- 00026490  0x0000700d isub  0x00000002 , 0x0000003e 
- 00026491  0x0000700e nrtn  0x00000005 
- 00026492  0x0000700f arg  0x00000ac2 , 0x00000005 
- 00026493  0x00007010 arg  0x00000010 , 0x00000039 
- 00026494  0x00007011 call  0x00007ed4 
- 00026495  0x00007012 fetch  0x00000003 , 0x00000452 
- 00026496  0x00007013 store  0x00000003 , 0x00000ac2 
- 00026497  0x00007014 call  0x0000678b 
- 00026498  0x00007015 fetch  0x00000002 , 0x00000adf 
- 00026499  0x00007016 byteswap  0x0000003f , 0x0000003f 
- 00026500  0x00007017 lshift8  0x0000003f , 0x00000002 
- 00026501  0x00007018 ifetch  0x00000001 , 0x00000006 
- 00026502  0x00007019 iadd  0x00000002 , 0x0000003f 
- 00026503  0x0000701a fetcht  0x00000003 , 0x0000044f 
- 00026504  0x0000701b isub  0x00000002 , 0x0000003e 
- 00026505  0x0000701c branch  0x00007fe7 , 0x00000005 
- 00026506  0x0000701d rtn 
- 00026507  0x00007021 arg  0x00000ac2 , 0x00000006 
- 00026508  0x00007022 call  0x00007486 
- 00026509  0x00007024 ifetch  0x00000001 , 0x00000011 
- 00026510  0x00007025 call  0x00007487 
- 00026511  0x00007026 force  0x00000038 , 0x00000036 
- 00026512  0x00007027 force  0x00000000 , 0x00000036 
- 00026513  0x00007028 call  0x0000741d 
- 00026514  0x00007029 arg  0x00000ad2 , 0x00000005 
- 00026515  0x0000702a branch  0x00007497 
- 00026516  0x0000702d ifetcht  0x00000001 , 0x00000011 
- 00026517  0x0000702e isub  0x00000002 , 0x0000003e 
- 00026518  0x0000702f nrtn  0x00000005 
- 00026519  0x00007030 copy  0x00000006 , 0x00000011 
- 00026520  0x00007031 add  0x00000006 , 0x00000008 , 0x00000013 
- 00026521  0x00007032 arg  0x000044cd , 0x00000012 
- 00026522  0x00007033 arg  0x00000008 , 0x00000039 
- 00026523  0x00007034 call  0x00007f88 
- 00026524  0x00007035 branch  0x00007fe7 , 0x00000005 
- 00026525  0x00007036 copy  0x00000013 , 0x00000011 
- 00026526  0x00007037 arg  0x000044d5 , 0x00000012 
- 00026527  0x00007038 arg  0x00000008 , 0x00000039 
- 00026528  0x00007039 call  0x00007f88 
- 00026529  0x0000703a branch  0x00007fe7 , 0x00000005 
- 00026530  0x0000703b rtn 
- 00026531  0x0000703e fetch  0x00000002 , 0x00004215 
- 00026532  0x0000703f ifetcht  0x00000001 , 0x0000003f 
- 00026533  0x00007040 pincrease  0x00000022 
- 00026534  0x00007041 ifetch  0x00000001 , 0x0000003f 
- 00026535  0x00007042 isub  0x00000002 , 0x0000003e 
- 00026536  0x00007043 rtn 
- 00026537  0x00007046 fetch  0x00000001 , 0x00004217 
- 00026538  0x00007047 icopy  0x00000039 
- 00026539  0x00007048 fetcht  0x00000002 , 0x00004215 
- 00026540  0x00007049 setarg  0x00000000 
- 00026541  0x0000704b istore  0x00000001 , 0x00000002 
- 00026542  0x0000704c increase  0x00000022 , 0x00000002 
- 00026543  0x0000704d pincrease  0x00000001 
- 00026544  0x0000704e loop  0x000067ad 
- 00026545  0x0000704f rtn 
- 00026546  0x00007052 bpatchx  0x00000099 , 0x00004033 
- 00026547  0x00007053 call  0x0000673e 
- 00026548  0x00007054 fetch  0x00000001 , 0x00000030 
- 00026549  0x00007055 setflag  0x00000028 , 0x00000006 , 0x0000003f 
- 00026550  0x00007056 store  0x00000001 , 0x00000030 
- 00026551  0x00007057 nbranch  0x000067bc , 0x00000028 
- 00026552  0x00007058 add  0x00000011 , 0x0000000a , 0x00000006 
- 00026553  0x0000705a arg  0x000041be , 0x00000005 
- 00026554  0x0000705b call  0x00007ebf 
- 00026555  0x0000705c branch  0x000067d7 
- 00026556  0x0000705e jam  0x00000000 , 0x000041bd 
- 00026557  0x0000705f rtn 
- 00026558  0x00007062 fetch  0x00000009 , 0x000044cb 
- 00026559  0x00007063 branch  0x000067ca , 0x00000034 
- 00026560  0x00007064 call  0x0000673e 
- 00026561  0x00007065 nbranch  0x000067ca , 0x00000028 
- 00026562  0x00007066 fetch  0x00000002 , 0x0000018c 
- 00026563  0x00007067 add  0x0000003f , 0x00000001 , 0x00000006 
- 00026564  0x00007068 arg  0x000044d5 , 0x00000005 
- 00026565  0x00007069 call  0x00007ebf 
- 00026566  0x0000706a arg  0x00004419 , 0x00000005 
- 00026567  0x0000706b call  0x00007ebf 
- 00026568  0x0000706c jam  0x00000001 , 0x00004429 
- 00026569  0x0000706d rtn 
- 00026570  0x00007070 jam  0x00000000 , 0x00004429 
- 00026571  0x00007071 rtn 
- 00026572  0x00007075 fetch  0x00000006 , 0x0000044f 
- 00026573  0x00007076 store  0x00000006 , 0x00000186 
- 00026574  0x00007077 jam  0x00000034 , 0x00000185 
- 00026575  0x00007078 branch  0x000067d3 
- 00026576  0x0000707a fetch  0x00000006 , 0x00000040 
- 00026577  0x0000707b store  0x00000006 , 0x00000186 
- 00026578  0x0000707c jam  0x00000033 , 0x00000185 
- 00026579  0x0000707e fetch  0x00000001 , 0x00004092 
- 00026580  0x0000707f beq  0x0000000a , 0x0000670b 
- 00026581  0x00007080 bbit1  0x00000006 , 0x000042da 
- 00026582  0x00007081 rtn 
- 00026583  0x00007085 fetch  0x00000008 , 0x000041be 
- 00026584  0x00007086 fetcht  0x00000008 , 0x000041c6 
- 00026585  0x00007087 ior  0x00000002 , 0x0000003f 
- 00026586  0x00007088 rtn  0x00000034 
- 00026587  0x00007089 jam  0x00000001 , 0x000041bd 
- 00026588  0x0000708a rtn 
- 00026589  0x00007092 bpatchx  0x0000009a , 0x00004033 
- 00026590  0x00007093 set1  0x00000007 , 0x00000002 
- 00026591  0x00007094 call  0x0000681d 
- 00026592  0x00007095 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
- 00026593  0x0000709b bpatchx  0x0000009b , 0x00004033 
- 00026594  0x0000709c sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026595  0x0000709d rtn  0x00000005 
- 00026596  0x0000709e isolate0  0x00000007 , 0x00000002 
- 00026597  0x0000709f and  0x00000002 , 0x0000001f , 0x00000007 
- 00026598  0x000070a0 fetch  0x00000004 , 0x000000a1 
- 00026599  0x000070a1 qsetflag  0x00000001 , 0x0000003f 
- 00026600  0x000070a2 store  0x00000004 , 0x000000a1 
- 00026601  0x000070a3 fetch  0x00000004 , 0x000000a5 
- 00026602  0x000070a4 nqsetflag  0x00000001 , 0x0000003f 
- 00026603  0x000070a5 store  0x00000004 , 0x000000a5 
- 00026604  0x000070a6 rtn 
- 00026605  0x000070aa bpatchx  0x0000009c , 0x00004033 
- 00026606  0x000070ab sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026607  0x000070ac rtn  0x00000005 
- 00026608  0x000070ad isolate0  0x00000007 , 0x00000002 
- 00026609  0x000070ae and  0x00000002 , 0x0000001f , 0x00000007 
- 00026610  0x000070af fetch  0x00000004 , 0x000000a1 
- 00026611  0x000070b0 qset0  0x0000003f 
- 00026612  0x000070b1 store  0x00000004 , 0x000000a1 
- 00026613  0x000070b2 fetch  0x00000004 , 0x000000a5 
- 00026614  0x000070b3 qset0  0x0000003f 
- 00026615  0x000070b4 store  0x00000004 , 0x000000a5 
- 00026616  0x000070b5 rtn 
- 00026617  0x000070b9 call  0x000067ed 
- 00026618  0x000070ba branch  0x000067fe 
- 00026619  0x000070be sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026620  0x000070bf rtn  0x00000005 
- 00026621  0x000070c0 ncall  0x000067e1 , 0x0000002b 
- 00026622  0x000070c3 arg  0x0000807c , 0x00000005 
- 00026623  0x000070c4 call  0x00006830 
- 00026624  0x000070c5 setflip  0x00000007 , 0x00000002 
- 00026625  0x000070c6 arg  0x00008078 , 0x00000005 
- 00026626  0x000070c7 call  0x00006830 
- 00026627  0x000070c8 set0  0x00000007 , 0x00000002 
- 00026628  0x000070c9 arg  0x00008070 , 0x00000005 
- 00026629  0x000070ca branch  0x00006830 
- 00026630  0x000070ce arg  0x0000807c , 0x00000005 
- 00026631  0x000070cf call  0x00006830 
- 00026632  0x000070d0 set0  0x00000007 , 0x00000002 
- 00026633  0x000070d1 arg  0x00008078 , 0x00000005 
- 00026634  0x000070d2 call  0x00006830 
- 00026635  0x000070d3 set0  0x00000007 , 0x00000002 
- 00026636  0x000070d4 arg  0x00008070 , 0x00000005 
- 00026637  0x000070d5 branch  0x00006830 
- 00026638  0x000070da sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026639  0x000070db rtn  0x00000005 
- 00026640  0x000070dc setflip  0x00000007 , 0x00000002 
- 00026641  0x000070dd call  0x0000682f 
- 00026642  0x000070df set1  0x00000007 , 0x00000002 
- 00026643  0x000070e0 arg  0x00008070 , 0x00000005 
- 00026644  0x000070e1 branch  0x00006830 
- 00026645  0x000070e4 and  0x00000002 , 0x00000007 , 0x00000007 
- 00026646  0x000070e5 rshift3  0x00000002 , 0x0000003f 
- 00026647  0x000070e6 and_into  0x00000003 , 0x0000003f 
- 00026648  0x000070e7 iadd  0x00000005 , 0x00000005 
- 00026649  0x000070e8 ifetch  0x00000001 , 0x00000005 
- 00026650  0x000070e9 rtn 
- 00026651  0x000070ec arg  0x00008074 , 0x00000005 
- 00026652  0x000070ed branch  0x0000681e 
- 00026653  0x000070f2 arg  0x0000811c , 0x00000005 
- 00026654  0x000070f4 call  0x00006815 
- 00026655  0x000070f5 isolate1  0x00000007 , 0x00000002 
- 00026656  0x000070f6 branch  0x00006823 , 0x00000001 
- 00026657  0x000070f7 qisolate0  0x0000003f 
- 00026658  0x000070f8 rtn 
- 00026659  0x000070fa qisolate1  0x0000003f 
- 00026660  0x000070fb rtn 
- 00026661  0x000070fe sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026662  0x000070ff rtn  0x00000005 
- 00026663  0x00007100 isolate1  0x00000007 , 0x0000003e 
- 00026664  0x00007101 branch  0x0000682c 
- 00026665  0x00007104 sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026666  0x00007105 rtn  0x00000005 
- 00026667  0x00007106 isolate0  0x00000007 , 0x0000003e 
- 00026668  0x0000710a setarg  0x00000000 
- 00026669  0x0000710b nsetflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00026670  0x0000710c ixor  0x00000002 , 0x00000002 
- 00026671  0x00007110 arg  0x00008074 , 0x00000005 
- 00026672  0x00007114 call  0x00006815 
- 00026673  0x00007115 isolate1  0x00000007 , 0x00000002 
- 00026674  0x00007116 qsetflag  0x00000001 , 0x0000003f 
- 00026675  0x00007117 istore  0x00000001 , 0x00000005 
- 00026676  0x00007118 rtn 
- 00026677  0x0000711b arg  0xffffffff , 0x00000011 
- 00026678  0x0000711c hfetch  0x00000001 , 0x00008081 
- 00026679  0x0000711d compare  0x00000002 , 0x0000003f , 0x00000003 
- 00026680  0x0000711e call  0x00006878 , 0x00000001 
- 00026681  0x00007120 compare  0x00000001 , 0x0000003f , 0x00000003 
- 00026682  0x00007121 call  0x0000687a , 0x00000001 
- 00026683  0x00007123 compare  0x00000003 , 0x0000003f , 0x00000003 
- 00026684  0x00007124 call  0x0000687a , 0x00000001 
- 00026685  0x00007126 isolate1  0x00000002 , 0x0000003f 
- 00026686  0x00007127 call  0x00006874 , 0x00000001 
- 00026687  0x00007129 isolate1  0x00000003 , 0x0000003f 
- 00026688  0x0000712a call  0x00006876 , 0x00000001 
- 00026689  0x0000712c isolate1  0x00000004 , 0x0000003f 
- 00026690  0x0000712d call  0x0000687c , 0x00000001 
- 00026691  0x0000712f isolate1  0x00000006 , 0x0000003f 
- 00026692  0x00007130 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
- 00026693  0x00007132 isolate1  0x00000007 , 0x0000003f 
- 00026694  0x00007133 nsetflag  0x00000001 , 0x00000005 , 0x00000011 
- 00026695  0x00007135 hfetch  0x00000001 , 0x00008082 
- 00026696  0x00007136 isolate1  0x00000000 , 0x0000003f 
- 00026697  0x00007137 nsetflag  0x00000001 , 0x0000001b , 0x00000011 
- 00026698  0x00007138 isolate1  0x00000001 , 0x0000003f 
- 00026699  0x00007139 nsetflag  0x00000001 , 0x0000001c , 0x00000011 
- 00026700  0x0000713a isolate1  0x00000002 , 0x0000003f 
- 00026701  0x0000713b nsetflag  0x00000001 , 0x00000003 , 0x00000011 
- 00026702  0x0000713c isolate1  0x00000003 , 0x0000003f 
- 00026703  0x0000713d nsetflag  0x00000001 , 0x00000008 , 0x00000011 
- 00026704  0x0000713e isolate1  0x00000004 , 0x0000003f 
- 00026705  0x0000713f nsetflag  0x00000001 , 0x00000014 , 0x00000011 
- 00026706  0x00007140 isolate1  0x00000005 , 0x0000003f 
- 00026707  0x00007141 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
- 00026708  0x00007142 isolate1  0x00000006 , 0x0000003f 
- 00026709  0x00007143 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
- 00026710  0x00007144 isolate1  0x00000007 , 0x0000003f 
- 00026711  0x00007145 nsetflag  0x00000001 , 0x00000017 , 0x00000011 
- 00026712  0x00007147 hfetch  0x00000001 , 0x00008080 
- 00026713  0x00007148 isolate1  0x00000000 , 0x0000003f 
- 00026714  0x00007149 nsetflag  0x00000001 , 0x00000005 , 0x00000011 
- 00026715  0x0000714a isolate1  0x00000001 , 0x0000003f 
- 00026716  0x0000714b nsetflag  0x00000001 , 0x00000006 , 0x00000011 
- 00026717  0x0000714c isolate1  0x00000002 , 0x0000003f 
- 00026718  0x0000714d nsetflag  0x00000001 , 0x00000007 , 0x00000011 
- 00026719  0x0000714e isolate1  0x00000003 , 0x0000003f 
- 00026720  0x0000714f nsetflag  0x00000001 , 0x00000012 , 0x00000011 
- 00026721  0x00007150 isolate1  0x00000004 , 0x0000003f 
- 00026722  0x00007151 nsetflag  0x00000001 , 0x00000013 , 0x00000011 
- 00026723  0x00007152 isolate1  0x00000005 , 0x0000003f 
- 00026724  0x00007153 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
- 00026725  0x00007154 isolate1  0x00000006 , 0x0000003f 
- 00026726  0x00007155 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
- 00026727  0x00007156 isolate1  0x00000007 , 0x0000003f 
- 00026728  0x00007157 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
- 00026729  0x00007159 hfetch  0x00000001 , 0x00008062 
- 00026730  0x0000715a isolate1  0x00000004 , 0x0000003f 
- 00026731  0x0000715b call  0x0000687e , 0x00000001 
- 00026732  0x0000715c bpatchx  0x0000009d , 0x00004033 
- 00026733  0x0000715e hfetch  0x00000004 , 0x00008078 
- 00026734  0x0000715f hfetcht  0x00000004 , 0x0000807c 
- 00026735  0x00007160 ior  0x00000002 , 0x0000003f 
- 00026736  0x00007161 invert  0x0000003f , 0x0000003f 
- 00026737  0x00007162 iand  0x00000011 , 0x0000003f 
- 00026738  0x00007164 hstore  0x00000004 , 0x00008070 
- 00026739  0x00007165 rtn 
- 00026740  0x00007169 arg  0x00000006 , 0x00000007 
- 00026741  0x0000716a branch  0x00006884 
- 00026742  0x0000716c arg  0x00000009 , 0x00000007 
- 00026743  0x0000716d branch  0x00006882 
- 00026744  0x0000716f arg  0x00000017 , 0x00000007 
- 00026745  0x00007170 branch  0x00006882 
- 00026746  0x00007172 arg  0x00000019 , 0x00000007 
- 00026747  0x00007173 branch  0x00006884 
- 00026748  0x00007175 arg  0x0000001e , 0x00000007 
- 00026749  0x00007176 branch  0x00006884 
- 00026750  0x00007178 arg  0x00000002 , 0x00000007 
- 00026751  0x00007179 branch  0x00006884 
- 00026752  0x0000717b arg  0x00000001 , 0x00000039 
- 00026753  0x0000717c branch  0x00006885 
- 00026754  0x0000717e arg  0x00000004 , 0x00000039 
- 00026755  0x0000717f branch  0x00006885 
- 00026756  0x00007181 arg  0x00000002 , 0x00000039 
- 00026757  0x00007183 qset0  0x00000011 
- 00026758  0x00007184 increase  0x00000001 , 0x00000007 
- 00026759  0x00007185 loop  0x00006885 
- 00026760  0x00007186 rtn 
- 00026761  0x0000718f call  0x00006895 
- 00026762  0x00007190 arg  0x00000006 , 0x00000002 
- 00026763  0x00007191 branch  0x0000680e 
- 00026764  0x00007194 call  0x00006889 
- 00026765  0x00007195 arg  0x00000006 , 0x00000002 
- 00026766  0x00007196 branch  0x00006825 
- 00026767  0x0000719b call  0x00006895 
- 00026768  0x0000719c hfetch  0x00000001 , 0x00008078 
- 00026769  0x0000719d set1  0x00000007 , 0x0000003f 
- 00026770  0x0000719e hstore  0x00000001 , 0x00008078 
- 00026771  0x0000719f arg  0x00000007 , 0x00000002 
- 00026772  0x000071a0 branch  0x000067fb 
- 00026773  0x000071a3 hfetch  0x00000001 , 0x00008081 
- 00026774  0x000071a4 and_into  0x000000fb , 0x0000003f 
- 00026775  0x000071a5 hstore  0x00000001 , 0x00008081 
- 00026776  0x000071a6 rtn 
- 00026777  0x000071a9 hfetch  0x00000001 , 0x00008081 
- 00026778  0x000071aa isolate1  0x00000002 , 0x0000003f 
- 00026779  0x000071ab rtn 
- 00026780  0x000071ae call  0x0000666a 
- 00026781  0x000071af setarg  0x000007e0 
- 00026782  0x000071b0 arg  0x00004150 , 0x00000011 
- 00026783  0x000071b1 arg  0x00000002 , 0x00000002 
- 00026784  0x000071b2 call  0x000066b3 
- 00026785  0x000071b3 branch  0x0000666d 
- 00026786  0x000071b7 call  0x0000666a 
- 00026787  0x000071b8 setarg  0x000007e2 
- 00026788  0x000071b9 arg  0x0000421d , 0x00000011 
- 00026789  0x000071ba arg  0x0000000e , 0x00000002 
- 00026790  0x000071bb call  0x000066b3 
- 00026791  0x000071bc branch  0x0000666d 
- 00026792  0x000071c1 bpatchx  0x0000009e , 0x00004033 
- 00026793  0x000071c3 call  0x000068a2 
- 00026794  0x000071c5 fetch  0x00000001 , 0x0000422d 
- 00026795  0x000071c6 beq  0x00000000 , 0x000068af 
- 00026796  0x000071c7 beq  0x00000001 , 0x000068c3 
- 00026797  0x000071c8 beq  0x00000002 , 0x000068d7 
- 00026798  0x000071c9 rtn 
- 00026799  0x000071cc fetcht  0x00000002 , 0x00004229 
- 00026800  0x000071cd setarg  0x0000aa55 
- 00026801  0x000071ce isub  0x00000002 , 0x0000003e 
- 00026802  0x000071cf branch  0x000068b8 , 0x00000005 
- 00026803  0x000071d0 setarg  0x00004dfa 
- 00026804  0x000071d1 store  0x00000002 , 0x00004227 
- 00026805  0x000071d2 setarg  0x00004894 
- 00026806  0x000071d3 store  0x00000002 , 0x00004221 
- 00026807  0x000071d4 branch  0x000068c0 
- 00026808  0x000071d7 fetch  0x00000002 , 0x00004227 
- 00026809  0x000071d8 nbranch  0x000068bc , 0x00000034 
- 00026810  0x000071d9 setarg  0x00004dfa 
- 00026811  0x000071da store  0x00000002 , 0x00004227 
- 00026812  0x000071dc fetch  0x00000002 , 0x00004221 
- 00026813  0x000071dd nbranch  0x000068c0 , 0x00000034 
- 00026814  0x000071de setarg  0x00004894 
- 00026815  0x000071df store  0x00000002 , 0x00004221 
- 00026816  0x000071e1 setarg  0x00000064 
- 00026817  0x000071e2 store  0x00000002 , 0x0000422b 
- 00026818  0x000071e3 rtn 
- 00026819  0x000071e6 fetcht  0x00000002 , 0x00004229 
- 00026820  0x000071e7 setarg  0x0000aa55 
- 00026821  0x000071e8 isub  0x00000002 , 0x0000003e 
- 00026822  0x000071e9 branch  0x000068cc , 0x00000005 
- 00026823  0x000071ea setarg  0x00005932 
- 00026824  0x000071eb store  0x00000002 , 0x00004225 
- 00026825  0x000071ec setarg  0x00004323 
- 00026826  0x000071ed store  0x00000002 , 0x0000421f 
- 00026827  0x000071ee branch  0x000068d4 
- 00026828  0x000071f1 fetch  0x00000002 , 0x00004225 
- 00026829  0x000071f2 nbranch  0x000068d0 , 0x00000034 
- 00026830  0x000071f3 setarg  0x00005932 
- 00026831  0x000071f4 store  0x00000002 , 0x00004225 
- 00026832  0x000071f6 fetch  0x00000002 , 0x0000421f 
- 00026833  0x000071f7 nbranch  0x000068d4 , 0x00000034 
- 00026834  0x000071f8 setarg  0x00004323 
- 00026835  0x000071f9 store  0x00000002 , 0x0000421f 
- 00026836  0x000071fb setarg  0x00000190 
- 00026837  0x000071fc store  0x00000002 , 0x0000422b 
- 00026838  0x000071fd rtn 
- 00026839  0x00007200 fetcht  0x00000002 , 0x00004229 
- 00026840  0x00007201 setarg  0x0000aa55 
- 00026841  0x00007202 isub  0x00000002 , 0x0000003e 
- 00026842  0x00007203 branch  0x000068e0 , 0x00000005 
- 00026843  0x00007204 setarg  0x00006946 
- 00026844  0x00007205 store  0x00000002 , 0x00004223 
- 00026845  0x00007206 setarg  0x00005377 
- 00026846  0x00007207 store  0x00000002 , 0x0000421d 
- 00026847  0x00007208 branch  0x000068e8 
- 00026848  0x0000720b fetch  0x00000002 , 0x00004223 
- 00026849  0x0000720c nbranch  0x000068e4 , 0x00000034 
- 00026850  0x0000720d setarg  0x00006946 
- 00026851  0x0000720e store  0x00000002 , 0x00004223 
- 00026852  0x00007210 fetch  0x00000002 , 0x0000421d 
- 00026853  0x00007211 nbranch  0x000068e8 , 0x00000034 
- 00026854  0x00007212 setarg  0x00005377 
- 00026855  0x00007213 store  0x00000002 , 0x0000421d 
- 00026856  0x00007215 setarg  0x00000032 
- 00026857  0x00007216 store  0x00000002 , 0x0000422b 
- 00026858  0x00007217 rtn 
- 00026859  0x0000721b fetch  0x00000001 , 0x0000422d 
- 00026860  0x0000721c beq  0x00000000 , 0x000068f0 
- 00026861  0x0000721d beq  0x00000001 , 0x000068f2 
- 00026862  0x0000721e beq  0x00000002 , 0x000068f4 
- 00026863  0x0000721f rtn 
- 00026864  0x00007221 jam  0x000000bf , 0x00008971 
- 00026865  0x00007222 branch  0x000068f8 
- 00026866  0x00007224 jam  0x000000af , 0x00008971 
- 00026867  0x00007225 branch  0x000068f8 
- 00026868  0x00007227 jam  0x0000008f , 0x00008971 
- 00026869  0x00007228 fetch  0x00000001 , 0x0000422e 
- 00026870  0x00007229 hstore  0x00000001 , 0x00008973 
- 00026871  0x0000722a branch  0x000068f8 
- 00026872  0x0000722c bpatchx  0x0000009f , 0x00004033 
- 00026873  0x0000722d hfetch  0x00000001 , 0x00008053 
- 00026874  0x0000722e set1  0x00000007 , 0x0000003f 
- 00026875  0x0000722f hstore  0x00000001 , 0x00008053 
- 00026876  0x00007230 hfetch  0x00000001 , 0x00008973 
- 00026877  0x00007231 or_into  0x00000030 , 0x0000003f 
- 00026878  0x00007232 hstore  0x00000001 , 0x00008973 
- 00026879  0x00007233 jam  0x0000007c , 0x00008906 
- 00026880  0x00007234 jam  0x000000aa , 0x00008972 
- 00026881  0x00007235 nop  0x00001388 
- 00026882  0x00007236 hfetcht  0x00000002 , 0x00008150 
- 00026883  0x00007237 hfetch  0x00000001 , 0x00008053 
- 00026884  0x00007238 set0  0x00000007 , 0x0000003f 
- 00026885  0x00007239 hstore  0x00000001 , 0x00008053 
- 00026886  0x0000723a storet  0x00000002 , 0x0000422f 
- 00026887  0x0000723b rtn 
- 00026888  0x0000723e bpatchx  0x000000a0 , 0x00004034 
- 00026889  0x0000723f fetch  0x00000001 , 0x0000422d 
- 00026890  0x00007240 beq  0x00000000 , 0x0000690e 
- 00026891  0x00007241 beq  0x00000001 , 0x00006912 
- 00026892  0x00007242 beq  0x00000002 , 0x00006916 
- 00026893  0x00007243 rtn 
- 00026894  0x00007246 fetch  0x00000002 , 0x00004227 
- 00026895  0x00007247 fetcht  0x00000002 , 0x00004221 
- 00026896  0x00007248 arg  0x000000c8 , 0x00000013 
- 00026897  0x00007249 branch  0x0000691a 
- 00026898  0x0000724c fetch  0x00000002 , 0x00004225 
- 00026899  0x0000724d fetcht  0x00000002 , 0x0000421f 
- 00026900  0x0000724e arg  0x00000064 , 0x00000013 
- 00026901  0x0000724f branch  0x0000691a 
- 00026902  0x00007252 fetch  0x00000002 , 0x00004223 
- 00026903  0x00007253 fetcht  0x00000002 , 0x0000421d 
- 00026904  0x00007254 arg  0x00000032 , 0x00000013 
- 00026905  0x00007255 branch  0x0000691a 
- 00026906  0x00007258 isub  0x00000002 , 0x00000011 
- 00026907  0x00007259 fetch  0x00000002 , 0x0000422f 
- 00026908  0x0000725a isub  0x00000002 , 0x0000003f 
- 00026909  0x0000725b nbranch  0x00006927 , 0x00000002 
- 00026910  0x0000725c fetcht  0x00000002 , 0x0000422b 
- 00026911  0x0000725d imul32  0x00000002 , 0x00000012 
- 00026912  0x0000725e copy  0x00000013 , 0x0000003f 
- 00026913  0x0000725f imul32  0x00000011 , 0x0000003f 
- 00026914  0x00007260 iadd  0x00000012 , 0x0000003f 
- 00026915  0x00007262 idiv  0x00000011 
- 00026916  0x00007263 call  0x00007f86 
- 00026917  0x00007264 quotient  0x0000003f 
- 00026918  0x00007265 rtn 
- 00026919  0x00007268 copy  0x00000002 , 0x0000003f 
- 00026920  0x00007269 fetcht  0x00000002 , 0x0000422f 
- 00026921  0x0000726a isub  0x00000002 , 0x0000003f 
- 00026922  0x0000726b fetcht  0x00000002 , 0x0000422b 
- 00026923  0x0000726c imul32  0x00000002 , 0x00000012 
- 00026924  0x0000726d copy  0x00000013 , 0x0000003f 
- 00026925  0x0000726e imul32  0x00000011 , 0x0000003f 
- 00026926  0x0000726f isub  0x00000012 , 0x0000003f 
- 00026927  0x00007270 branch  0x00006923 
- 00026928  0x0000727c ifetch  0x00000008 , 0x00000011 
- 00026929  0x0000727d store  0x00000008 , 0x00000a9a 
- 00026930  0x0000727e fetch  0x00000002 , 0x00000a9a 
- 00026931  0x0000727f fetcht  0x00000002 , 0x00000a9c 
- 00026932  0x00007280 isub  0x00000002 , 0x00000011 
- 00026933  0x00007281 fetch  0x00000002 , 0x00000aa0 
- 00026934  0x00007282 isub  0x00000002 , 0x00000012 
- 00026935  0x00007283 fetcht  0x00000002 , 0x00000a9e 
- 00026936  0x00007284 isub  0x00000002 , 0x0000003e 
- 00026937  0x00007285 ncall  0x00006940 , 0x00000002 
- 00026938  0x00007286 mul32  0x00000012 , 0x00000064 , 0x0000003f 
- 00026939  0x00007287 idiv  0x00000011 
- 00026940  0x00007288 call  0x00007f86 
- 00026941  0x00007289 quotient  0x0000003f 
- 00026942  0x0000728a call  0x00006944 , 0x00000034 
- 00026943  0x0000728b rtn 
- 00026944  0x0000728d fetch  0x00000001 , 0x00004231 
- 00026945  0x0000728e set1  0x00000000 , 0x0000003f 
- 00026946  0x0000728f store  0x00000001 , 0x00004231 
- 00026947  0x00007290 rtn 
- 00026948  0x00007292 fetcht  0x00000001 , 0x00004231 
- 00026949  0x00007293 set1  0x00000001 , 0x00000002 
- 00026950  0x00007294 storet  0x00000001 , 0x00004231 
- 00026951  0x00007295 rtn 
- 00026952  0x0000729b fetch  0x00000002 , 0x0000423d 
- 00026953  0x0000729c ifetch  0x00000001 , 0x0000003f 
- 00026954  0x0000729e rtn  0x00000034 
- 00026955  0x0000729f copy  0x0000003f , 0x00000039 
- 00026956  0x000072a1 fetch  0x00000002 , 0x0000423d 
- 00026957  0x000072a2 increase  0x00000003 , 0x0000003f 
- 00026958  0x000072a3 copy  0x0000003f , 0x00000011 
- 00026959  0x000072a5 ifetcht  0x00000001 , 0x00000011 
- 00026960  0x000072a6 call  0x000067fb 
- 00026961  0x000072a7 increase  0x00000001 , 0x00000011 
- 00026962  0x000072a8 loop  0x0000694f 
- 00026963  0x000072aa rtn 
- 00026964  0x000072ad fetch  0x00000002 , 0x0000423d 
- 00026965  0x000072ae increase  0x00000003 , 0x0000003f 
- 00026966  0x000072af copy  0x0000003f , 0x00000011 
- 00026967  0x000072b1 force  0x00000000 , 0x00000012 
- 00026968  0x000072b2 jam  0x00000000 , 0x00000b12 
- 00026969  0x000072b4 ifetcht  0x00000001 , 0x00000011 
- 00026970  0x000072b5 call  0x0000681d 
- 00026971  0x000072b6 bpatchx  0x000000a1 , 0x00004034 
- 00026972  0x000072b7 fetch  0x00000002 , 0x00000b12 
- 00026973  0x000072b8 copy  0x00000012 , 0x00000007 
- 00026974  0x000072b9 qsetflag  0x00000001 , 0x0000003f 
- 00026975  0x000072ba store  0x00000002 , 0x00000b12 
- 00026976  0x000072bb increase  0x00000001 , 0x00000011 
- 00026977  0x000072bc increase  0x00000001 , 0x00000012 
- 00026978  0x000072bd fetch  0x00000002 , 0x0000423d 
- 00026979  0x000072be ifetch  0x00000001 , 0x0000003f 
- 00026980  0x000072c0 ixor  0x00000012 , 0x0000003e 
- 00026981  0x000072c1 nbranch  0x00006959 , 0x00000005 
- 00026982  0x000072c2 fetch  0x00000002 , 0x00000b12 
- 00026983  0x000072c3 fetcht  0x00000002 , 0x00000b14 
- 00026984  0x000072c4 ixor  0x00000002 , 0x0000003e 
- 00026985  0x000072c5 rtn  0x00000005 
- 00026986  0x000072c6 enable  0x00000028 
- 00026987  0x000072c7 rtn 
- 00026988  0x000072ca fetch  0x00000002 , 0x0000423d 
- 00026989  0x000072cb ifetch  0x00000001 , 0x0000003f 
- 00026990  0x000072cd rtn  0x00000034 
- 00026991  0x000072ce copy  0x0000003f , 0x00000039 
- 00026992  0x000072cf fetch  0x00000002 , 0x0000423d 
- 00026993  0x000072d0 increase  0x00000003 , 0x0000003f 
- 00026994  0x000072d1 copy  0x0000003f , 0x00000011 
- 00026995  0x000072d3 ifetcht  0x00000001 , 0x00000011 
- 00026996  0x000072d4 call  0x000067dd 
- 00026997  0x000072d5 increase  0x00000001 , 0x00000011 
- 00026998  0x000072d6 loop  0x00006973 
- 00026999  0x000072d8 rtn 
- 00027000  0x000072db arg  0x00000009 , 0x00000007 
- 00027001  0x000072dc call  0x00007f16 
- 00027002  0x000072dd nrtn  0x00000034 
- 00027003  0x000072de setarg  0x00000020 
- 00027004  0x000072df arg  0x00000009 , 0x00000007 
- 00027005  0x000072e0 call  0x00007f08 
- 00027006  0x000072e1 disable  0x00000028 
- 00027007  0x000072e2 call  0x0000696c 
- 00027008  0x000072e3 bpatchx  0x000000a2 , 0x00004034 
- 00027009  0x000072e4 fetch  0x00000002 , 0x0000423d 
- 00027010  0x000072e5 ifetch  0x00000001 , 0x0000003f 
- 00027011  0x000072e7 rtn  0x00000034 
- 00027012  0x000072e8 call  0x00006954 
- 00027013  0x000072e9 nbranch  0x00007d02 , 0x00000028 
- 00027014  0x000072ea call  0x00007d00 
- 00027015  0x000072eb disable  0x00000028 
- 00027016  0x000072ec fetch  0x00000002 , 0x00000b12 
- 00027017  0x000072ed store  0x00000002 , 0x00000b19 
- 00027018  0x000072ee jam  0x00000000 , 0x00000b1b 
- 00027019  0x000072ef force  0x00000000 , 0x00000007 
- 00027020  0x000072f1 fetch  0x00000002 , 0x00000b14 
- 00027021  0x000072f2 rshift  0x0000003f , 0x00000002 
- 00027022  0x000072f3 storet  0x00000002 , 0x00000b14 
- 00027023  0x000072f4 and  0x0000003f , 0x00000001 , 0x0000003f 
- 00027024  0x000072f5 fetcht  0x00000002 , 0x00000b19 
- 00027025  0x000072f6 and  0x00000002 , 0x00000001 , 0x00000011 
- 00027026  0x000072f7 rshift  0x00000002 , 0x00000002 
- 00027027  0x000072f8 storet  0x00000002 , 0x00000b19 
- 00027028  0x000072f9 ixor  0x00000011 , 0x0000003e 
- 00027029  0x000072fa ncall  0x000069a1 , 0x00000005 
- 00027030  0x000072fb fetch  0x00000002 , 0x0000423d 
- 00027031  0x000072fc ifetch  0x00000001 , 0x0000003f 
- 00027032  0x000072fe fetcht  0x00000001 , 0x00000b1b 
- 00027033  0x000072ff increase  0x00000001 , 0x00000002 
- 00027034  0x00007300 storet  0x00000001 , 0x00000b1b 
- 00027035  0x00007301 copy  0x00000002 , 0x00000007 
- 00027036  0x00007302 ixor  0x00000007 , 0x0000003e 
- 00027037  0x00007303 nbranch  0x0000698c , 0x00000005 
- 00027038  0x00007304 fetch  0x00000002 , 0x00000b12 
- 00027039  0x00007305 store  0x00000002 , 0x00000b14 
- 00027040  0x00007306 rtn 
- 00027041  0x00007308 bpatchx  0x000000a3 , 0x00004034 
- 00027042  0x00007309 fetch  0x00000002 , 0x0000423d 
- 00027043  0x0000730a increase  0x00000001 , 0x0000003f 
- 00027044  0x0000730b ifetch  0x00000002 , 0x0000003f 
- 00027045  0x0000730c branch  0x00007f9c 
- 00027046  0x00007318 hfetch  0x00000001 , 0x00008042 
- 00027047  0x00007319 ior  0x00000011 , 0x0000003f 
- 00027048  0x0000731a hstore  0x00000001 , 0x00008042 
- 00027049  0x0000731b hfetch  0x00000002 , 0x00008050 
- 00027050  0x0000731c set0  0x0000000d , 0x0000003f 
- 00027051  0x0000731d hstore  0x00000002 , 0x00008050 
- 00027052  0x0000731f nop  0x00000064 
- 00027053  0x00007320 rtn 
- 00027054  0x0000732c fetcht  0x00000003 , 0x00000a9c 
- 00027055  0x0000732d setarg  0x00b71b00 
- 00027056  0x0000732e idiv  0x00000002 
- 00027057  0x0000732f call  0x00007f86 
- 00027058  0x00007330 quotient  0x00000002 
- 00027059  0x00007331 fetch  0x00000001 , 0x00000a9f 
- 00027060  0x00007332 imul32  0x00000002 , 0x0000003f 
- 00027061  0x00007333 div  0x0000003f , 0x00000064 
- 00027062  0x00007334 call  0x00007f86 
- 00027063  0x00007335 quotient  0x00000011 
- 00027064  0x00007336 copy  0x00000002 , 0x0000003f 
- 00027065  0x00007337 isub  0x00000011 , 0x00000012 
- 00027066  0x00007338 fetch  0x00000001 , 0x00000a9b 
- 00027067  0x00007339 call  0x000069be 
- 00027068  0x0000733a fetch  0x00000001 , 0x00000a9a 
- 00027069  0x0000733b branch  0x000069d5 
- 00027070  0x0000733f beq  0x00000000 , 0x000069c4 
- 00027071  0x00007340 beq  0x00000001 , 0x000069c6 
- 00027072  0x00007341 beq  0x00000002 , 0x000069c8 
- 00027073  0x00007342 beq  0x00000003 , 0x000069ca 
- 00027074  0x00007343 beq  0x00000004 , 0x000069cc 
- 00027075  0x00007344 beq  0x00000005 , 0x000069ce 
- 00027076  0x00007346 arg  0x000080a0 , 0x00000005 
- 00027077  0x00007347 branch  0x000069d0 
- 00027078  0x00007349 arg  0x000080a4 , 0x00000005 
- 00027079  0x0000734a branch  0x000069d0 
- 00027080  0x0000734c arg  0x000080a8 , 0x00000005 
- 00027081  0x0000734d branch  0x000069d0 
- 00027082  0x0000734f arg  0x00008064 , 0x00000005 
- 00027083  0x00007350 branch  0x000069d0 
- 00027084  0x00007352 arg  0x00008068 , 0x00000005 
- 00027085  0x00007353 branch  0x000069d0 
- 00027086  0x00007355 arg  0x0000806c , 0x00000005 
- 00027087  0x00007356 branch  0x000069d0 
- 00027088  0x00007358 copy  0x00000011 , 0x0000003f 
- 00027089  0x00007359 istore  0x00000002 , 0x00000005 
- 00027090  0x0000735a copy  0x00000012 , 0x0000003f 
- 00027091  0x0000735b istore  0x00000002 , 0x00000005 
- 00027092  0x0000735c rtn 
- 00027093  0x00007361 enable  0x00000028 
- 00027094  0x00007362 branch  0x000069d8 
- 00027095  0x00007364 disable  0x00000028 
- 00027096  0x00007366 beq  0x00000004 , 0x000069e3 
- 00027097  0x00007367 beq  0x00000005 , 0x000069e5 
- 00027098  0x00007368 beq  0x0000001b , 0x000069e7 
- 00027099  0x00007369 beq  0x0000001c , 0x000069e9 
- 00027100  0x0000736a beq  0x00000003 , 0x000069eb 
- 00027101  0x0000736b beq  0x00000008 , 0x000069ed 
- 00027102  0x0000736c beq  0x00000014 , 0x000069ef 
- 00027103  0x0000736d beq  0x00000015 , 0x000069f1 
- 00027104  0x0000736e beq  0x00000016 , 0x000069f3 
- 00027105  0x0000736f beq  0x00000017 , 0x000069f5 
- 00027106  0x00007370 rtn 
- 00027107  0x00007374 arg  0x00000006 , 0x00000007 
- 00027108  0x00007375 branch  0x000069ff 
- 00027109  0x00007377 arg  0x00000007 , 0x00000007 
- 00027110  0x00007378 branch  0x000069ff 
- 00027111  0x0000737a arg  0x00000008 , 0x00000007 
- 00027112  0x0000737b branch  0x000069ff 
- 00027113  0x0000737d arg  0x00000009 , 0x00000007 
- 00027114  0x0000737e branch  0x000069ff 
- 00027115  0x00007380 arg  0x0000000a , 0x00000007 
- 00027116  0x00007381 branch  0x000069ff 
- 00027117  0x00007383 arg  0x0000000b , 0x00000007 
- 00027118  0x00007384 branch  0x000069ff 
- 00027119  0x00007386 arg  0x0000000c , 0x00000007 
- 00027120  0x00007387 branch  0x00006a01 
- 00027121  0x00007389 arg  0x0000000d , 0x00000007 
- 00027122  0x0000738a branch  0x00006a01 
- 00027123  0x0000738c arg  0x0000000e , 0x00000007 
- 00027124  0x0000738d branch  0x00006a01 
- 00027125  0x0000738f arg  0x0000000f , 0x00000007 
- 00027126  0x00007390 branch  0x00006a01 
- 00027127  0x00007393 hfetch  0x00000002 , 0x00008081 
- 00027128  0x00007394 qsetflag  0x00000028 , 0x0000003f 
- 00027129  0x00007395 hstore  0x00000002 , 0x00008081 
- 00027130  0x00007396 copy  0x00000011 , 0x00000007 
- 00027131  0x00007397 hfetch  0x00000001 , 0x00008085 
- 00027132  0x00007398 qsetflag  0x00000028 , 0x0000003f 
- 00027133  0x00007399 hstore  0x00000001 , 0x00008085 
- 00027134  0x0000739a rtn 
- 00027135  0x0000739d add  0x00000007 , 0xfffffffc , 0x00000011 
- 00027136  0x0000739e branch  0x000069f7 
- 00027137  0x000073a1 add  0x00000007 , 0xfffffff6 , 0x00000011 
- 00027138  0x000073a2 branch  0x000069f7 
- 00027139  0x000073a8 rtn  0x0000002b 
- 00027140  0x000073a9 jam  0x00000000 , 0x00004567 
- 00027141  0x000073aa jam  0x00000003 , 0x000004ed 
- 00027142  0x000073ab jam  0x00000003 , 0x000004ee 
- 00027143  0x000073ac jam  0x00000011 , 0x000004f2 
- 00027144  0x000073ad jam  0x00000013 , 0x000004f3 
- 00027145  0x000073ae setarg  0x00000000 
- 00027146  0x000073af store  0x00000003 , 0x000004ef 
- 00027147  0x000073b0 store  0x00000001 , 0x00004254 
- 00027148  0x000073b1 jam  0x00000000 , 0x00004681 
- 00027149  0x000073b4 bpatchx  0x000000a4 , 0x00004034 
- 00027150  0x000073b5 setarg  0x00000000 
- 00027151  0x000073b6 store  0x00000001 , 0x00004254 
- 00027152  0x000073b7 store  0x00000001 , 0x00004564 
- 00027153  0x000073b8 store  0x00000001 , 0x0000455d 
- 00027154  0x000073b9 fetch  0x00000001 , 0x0000456b 
- 00027155  0x000073ba beq  0x00000001 , 0x00006a16 
- 00027156  0x000073bb jam  0x00000050 , 0x00004569 
- 00027157  0x000073bc rtn 
- 00027158  0x000073bf jam  0x00000000 , 0x00004569 
- 00027159  0x000073c0 rtn 
- 00027160  0x000073c3 or_into  0x00000002 , 0x00000002 
- 00027161  0x000073c4 rtn 
- 00027162  0x000073d1 copy  0x00000002 , 0x0000003f 
- 00027163  0x000073d2 reverse  0x0000003f , 0x0000003f 
- 00027164  0x000073d3 store  0x00000001 , 0x00004562 
- 00027165  0x000073d4 force  0x0000003f , 0x0000003f 
- 00027166  0x000073d5 reverse  0x0000003f , 0x0000003f 
- 00027167  0x000073d6 store  0x00000001 , 0x00004561 
- 00027168  0x000073d7 force  0x00000001 , 0x0000003f 
- 00027169  0x000073d8 reverse  0x0000003f , 0x0000003f 
- 00027170  0x000073d9 store  0x00000001 , 0x00004560 
- 00027171  0x000073da call  0x00006a50 
- 00027172  0x000073db copy  0x00000002 , 0x0000003f 
- 00027173  0x000073dc rtn 
- 00027174  0x000073de reverse  0x0000003f , 0x0000003f 
- 00027175  0x000073df store  0x00000001 , 0x00004562 
- 00027176  0x000073e0 force  0x00000073 , 0x0000003f 
- 00027177  0x000073e1 reverse  0x0000003f , 0x0000003f 
- 00027178  0x000073e2 store  0x00000001 , 0x00004561 
- 00027179  0x000073e3 force  0x00000001 , 0x0000003f 
- 00027180  0x000073e4 reverse  0x0000003f , 0x0000003f 
- 00027181  0x000073e5 store  0x00000001 , 0x00004560 
- 00027182  0x000073e6 branch  0x00006a50 
- 00027183  0x000073e9 fetch  0x00000001 , 0x00004563 
- 00027184  0x000073ea branch  0x00006a33 , 0x00000034 
- 00027185  0x000073eb setarg  0x00000070 
- 00027186  0x000073ec rtn 
- 00027187  0x000073ee setarg  0x000000aa 
- 00027188  0x000073ef rtn 
- 00027189  0x000073f2 reverse  0x0000003f , 0x0000003f 
- 00027190  0x000073f3 store  0x00000001 , 0x00004562 
- 00027191  0x000073f4 force  0x000000ef , 0x0000003f 
- 00027192  0x000073f5 call  0x00006a44 
- 00027193  0x000073f6 fetcht  0x00000002 , 0x000004f7 
- 00027194  0x000073f7 copy  0x00000002 , 0x00000005 
- 00027195  0x000073f8 istore  0x00000001 , 0x00000005 
- 00027196  0x000073f9 copy  0x00000005 , 0x00000002 
- 00027197  0x000073fa storet  0x00000002 , 0x000004f7 
- 00027198  0x000073fb force  0x000000ff , 0x0000003f 
- 00027199  0x000073fc call  0x00006a44 
- 00027200  0x000073fd fetcht  0x00000002 , 0x000004f7 
- 00027201  0x000073fe copy  0x00000002 , 0x00000005 
- 00027202  0x000073ff istore  0x00000001 , 0x00000005 
- 00027203  0x00007400 rtn 
- 00027204  0x0000740a reverse  0x0000003f , 0x0000003f 
- 00027205  0x0000740b store  0x00000001 , 0x00004561 
- 00027206  0x0000740c fetch  0x00000002 , 0x00004561 
- 00027207  0x0000740d lshift8  0x0000003f , 0x0000003f 
- 00027208  0x0000740e store  0x00000003 , 0x000004f4 
- 00027209  0x0000740f arg  0x00000107 , 0x00000011 
- 00027210  0x00007410 arg  0x0000000f , 0x00000012 
- 00027211  0x00007411 call  0x00006a5d 
- 00027212  0x00007412 xor_into  0x000000d7 , 0x0000003f 
- 00027213  0x00007413 invert  0x0000003f , 0x0000003f 
- 00027214  0x00007414 reverse  0x0000003f , 0x0000003f 
- 00027215  0x00007415 rtn 
- 00027216  0x00007420 fetch  0x00000003 , 0x00004560 
- 00027217  0x00007421 store  0x00000003 , 0x000004f4 
- 00027218  0x00007422 arg  0x00000107 , 0x00000011 
- 00027219  0x00007423 arg  0x0000000f , 0x00000012 
- 00027220  0x00007424 call  0x00006a5d 
- 00027221  0x00007425 lshift8  0x0000003f , 0x0000003f 
- 00027222  0x00007426 arg  0x00000007 , 0x00000012 
- 00027223  0x00007427 call  0x00006a5d 
- 00027224  0x00007428 xor_into  0x0000002b , 0x0000003f 
- 00027225  0x00007429 invert  0x0000003f , 0x0000003f 
- 00027226  0x0000742a reverse  0x0000003f , 0x0000003f 
- 00027227  0x0000742b copy  0x0000003f , 0x00000002 
- 00027228  0x0000742c rtn 
- 00027229  0x0000742f arg  0x00000000 , 0x00000013 
- 00027230  0x00007430 copy  0x00000012 , 0x00000039 
- 00027231  0x00007431 call  0x00007e71 
- 00027232  0x00007432 icopy  0x00000002 
- 00027233  0x00007438 copy  0x00000002 , 0x0000003f 
- 00027234  0x00007439 lshift  0x00000013 , 0x00000013 
- 00027235  0x0000743a bbit0  0x00000008 , 0x00006a66 
- 00027236  0x0000743b ixor  0x00000011 , 0x00000002 
- 00027237  0x0000743c increase  0x00000001 , 0x00000013 
- 00027238  0x0000743e lshift  0x00000002 , 0x00000002 
- 00027239  0x0000743f fetch  0x00000003 , 0x000004f4 
- 00027240  0x00007440 increase  0xffffffff , 0x00000012 
- 00027241  0x00007441 compare  0x000000ff , 0x00000012 , 0x000000ff 
- 00027242  0x00007442 branch  0x00006a70 , 0x00000001 
- 00027243  0x00007443 copy  0x00000012 , 0x00000039 
- 00027244  0x00007444 call  0x00007e71 
- 00027245  0x00007445 isolate1  0x00000000 , 0x0000003f 
- 00027246  0x00007446 setflag  0x00000001 , 0x00000000 , 0x00000002 
- 00027247  0x00007447 branch  0x00006a61 
- 00027248  0x0000744a rshift  0x00000002 , 0x0000003f 
- 00027249  0x0000744b rtn 
- 00027250  0x0000744e fetcht  0x00000001 , 0x0000455d 
- 00027251  0x00007451 lshift2  0x00000002 , 0x00000002 
- 00027252  0x00007452 set1  0x00000000 , 0x00000002 
- 00027253  0x00007453 fetch  0x00000001 , 0x00004563 
- 00027254  0x00007454 ncall  0x00006a18 , 0x00000034 
- 00027255  0x00007455 storet  0x00000001 , 0x0000050d 
- 00027256  0x00007456 rtn 
- 00027257  0x0000745a lshift  0x00000002 , 0x00000002 
- 00027258  0x0000745b fetch  0x00000001 , 0x00004563 
- 00027259  0x0000745c setflag  0x00000034 , 0x00000000 , 0x00000002 
- 00027260  0x0000745e rtn 
- 00027261  0x00007460 fetcht  0x00000001 , 0x000004fc 
- 00027262  0x00007461 jam  0x000000d7 , 0x000004fe 
- 00027263  0x00007462 call  0x00006bb6 
- 00027264  0x00007463 fetch  0x00000001 , 0x00004251 
- 00027265  0x00007464 set1  0x00000006 , 0x0000003f 
- 00027266  0x00007465 set1  0x00000007 , 0x0000003f 
- 00027267  0x00007466 store  0x00000001 , 0x00004251 
- 00027268  0x00007467 jam  0x00000000 , 0x00004563 
- 00027269  0x00007468 branch  0x00006b97 
- 00027270  0x0000746a fetch  0x00000001 , 0x00004251 
- 00027271  0x0000746b set1  0x00000007 , 0x0000003f 
- 00027272  0x0000746c store  0x00000001 , 0x00004251 
- 00027273  0x0000746d branch  0x00006b97 
- 00027274  0x00007471 bpatchx  0x000000a5 , 0x00004034 
- 00027275  0x00007472 fetch  0x00000001 , 0x00004681 
- 00027276  0x00007473 beq  0x00000000 , 0x00006a8e 
- 00027277  0x00007474 branch  0x00006b4c 
- 00027278  0x00007477 fetch  0x00000002 , 0x00000264 
- 00027279  0x00007478 copy  0x0000003f , 0x00000006 
- 00027280  0x00007479 call  0x00006ab8 
- 00027281  0x0000747a fetch  0x00000001 , 0x000004fc 
- 00027282  0x0000747b beq  0x00000000 , 0x00006a94 
- 00027283  0x0000747c branch  0x00006b18 
- 00027284  0x0000747e bpatchx  0x000000a6 , 0x00004034 
- 00027285  0x0000747f fetch  0x00000001 , 0x000004fd 
- 00027286  0x00007480 beq  0x0000003f , 0x00006a7d 
- 00027287  0x00007481 beq  0x00000073 , 0x00006a86 
- 00027288  0x00007482 beq  0x000000ef , 0x00006a9b 
- 00027289  0x00007483 beq  0x00000053 , 0x00006b44 
- 00027290  0x00007484 rtn 
- 00027291  0x00007488 fetch  0x00000002 , 0x00000501 
- 00027292  0x00007489 copy  0x0000003f , 0x00000006 
- 00027293  0x0000748a call  0x00006ac3 
- 00027294  0x0000748b fetch  0x00000001 , 0x00000503 
- 00027295  0x0000748c beq  0x00000041 , 0x00006aa5 
- 00027296  0x0000748d beq  0x00000040 , 0x00006aad 
- 00027297  0x0000748e beq  0x00000071 , 0x00006ae6 
- 00027298  0x0000748f beq  0x00000070 , 0x00006af2 
- 00027299  0x00007490 beq  0x00000049 , 0x00006afd 
- 00027300  0x00007491 branch  0x00006b97 
- 00027301  0x00007494 call  0x00006aaf 
- 00027302  0x00007496 branch  0x00006aa7 
- 00027303  0x00007499 fetch  0x00000001 , 0x00004254 
- 00027304  0x0000749a set1  0x00000000 , 0x0000003f 
- 00027305  0x0000749b set1  0x00000001 , 0x0000003f 
- 00027306  0x0000749c store  0x00000001 , 0x00004254 
- 00027307  0x0000749d call  0x00006be0 
- 00027308  0x0000749e branch  0x00006b97 
- 00027309  0x000074a1 call  0x00006aaf 
- 00027310  0x000074a2 branch  0x00006b97 
- 00027311  0x000074a5 call  0x00006acb 
- 00027312  0x000074a6 branch  0x00006ad7 
- 00027313  0x000074a9 call  0x00006acb 
- 00027314  0x000074aa ifetch  0x00000001 , 0x00000006 
- 00027315  0x000074ab rshift3  0x0000003f , 0x0000003f 
- 00027316  0x000074ac store  0x00000001 , 0x0000456a 
- 00027317  0x000074ad ifetch  0x00000001 , 0x00000006 
- 00027318  0x000074ae store  0x00000001 , 0x00000508 
- 00027319  0x000074af rtn 
- 00027320  0x000074b3 ifetch  0x00000001 , 0x00000006 
- 00027321  0x000074b4 store  0x00000001 , 0x000004fb 
- 00027322  0x000074b5 rshift3  0x0000003f , 0x0000003f 
- 00027323  0x000074b6 store  0x00000001 , 0x000004fc 
- 00027324  0x000074b7 ifetch  0x00000001 , 0x00000006 
- 00027325  0x000074b8 store  0x00000001 , 0x000004fd 
- 00027326  0x000074ba call  0x00006ace 
- 00027327  0x000074bb storet  0x00000002 , 0x000004ff 
- 00027328  0x000074bc copy  0x00000006 , 0x0000003f 
- 00027329  0x000074bd store  0x00000002 , 0x00000501 
- 00027330  0x000074be rtn 
- 00027331  0x000074c1 ifetch  0x00000001 , 0x00000006 
- 00027332  0x000074c2 rshift  0x0000003f , 0x0000003f 
- 00027333  0x000074c3 store  0x00000001 , 0x00000503 
- 00027334  0x000074c4 call  0x00006ace 
- 00027335  0x000074c5 storet  0x00000002 , 0x00000504 
- 00027336  0x000074c6 copy  0x00000006 , 0x0000003f 
- 00027337  0x000074c7 store  0x00000002 , 0x00000506 
- 00027338  0x000074c8 rtn 
- 00027339  0x000074cc fetch  0x00000002 , 0x00000506 
- 00027340  0x000074cd copy  0x0000003f , 0x00000006 
- 00027341  0x000074ce rtn 
- 00027342  0x000074d1 ifetch  0x00000001 , 0x00000006 
- 00027343  0x000074d2 copy  0x0000003f , 0x00000002 
- 00027344  0x000074d3 rshift  0x00000002 , 0x00000002 
- 00027345  0x000074d4 rtnbit1  0x00000000 
- 00027346  0x000074d5 ifetch  0x00000001 , 0x00000006 
- 00027347  0x000074d6 lshift3  0x0000003f , 0x0000003f 
- 00027348  0x000074d7 lshift4  0x0000003f , 0x0000003f 
- 00027349  0x000074d8 iadd  0x00000002 , 0x00000002 
- 00027350  0x000074d9 rtn 
- 00027351  0x000074dc ifetch  0x00000001 , 0x00000006 
- 00027352  0x000074dd store  0x00000001 , 0x0000455d 
- 00027353  0x000074de ifetch  0x00000001 , 0x00000006 
- 00027354  0x000074df store  0x00000001 , 0x00000509 
- 00027355  0x000074e0 ifetch  0x00000001 , 0x00000006 
- 00027356  0x000074e1 store  0x00000001 , 0x0000050a 
- 00027357  0x000074e2 ifetch  0x00000001 , 0x00000006 
- 00027358  0x000074e3 store  0x00000001 , 0x0000050b 
- 00027359  0x000074e4 ifetch  0x00000002 , 0x00000006 
- 00027360  0x000074e5 store  0x00000002 , 0x0000455e 
- 00027361  0x000074e6 ifetch  0x00000001 , 0x00000006 
- 00027362  0x000074e7 store  0x00000001 , 0x0000050c 
- 00027363  0x000074e8 ifetch  0x00000001 , 0x00000006 
- 00027364  0x000074e9 store  0x00000001 , 0x00004568 
- 00027365  0x000074ea rtn 
- 00027366  0x000074ee call  0x00006ab1 
- 00027367  0x000074f0 branch  0x00006ae8 
- 00027368  0x000074f3 fetch  0x00000001 , 0x00004254 
- 00027369  0x000074f4 set1  0x00000005 , 0x0000003f 
- 00027370  0x000074f5 set1  0x00000006 , 0x0000003f 
- 00027371  0x000074f6 store  0x00000001 , 0x00004254 
- 00027372  0x000074f7 fetcht  0x00000001 , 0x0000455d 
- 00027373  0x000074f8 lshift2  0x00000002 , 0x00000002 
- 00027374  0x000074f9 or_into  0x00000003 , 0x00000002 
- 00027375  0x000074fa call  0x00006c11 
- 00027376  0x000074fb jam  0x00000003 , 0x00004567 
- 00027377  0x000074fc branch  0x00006b97 
- 00027378  0x000074ff jam  0x00000008 , 0x00000a99 
- 00027379  0x00007500 call  0x00007d86 
- 00027380  0x00007501 call  0x00006ab1 
- 00027381  0x00007502 fetch  0x00000001 , 0x0000456a 
- 00027382  0x00007503 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00027383  0x00007504 branch  0x00006af9 , 0x00000005 
- 00027384  0x00007505 branch  0x00002a8c 
- 00027385  0x00007507 fetch  0x00000001 , 0x00004254 
- 00027386  0x00007508 set1  0x00000007 , 0x0000003f 
- 00027387  0x00007509 store  0x00000001 , 0x00004254 
- 00027388  0x0000750a branch  0x00006b97 
- 00027389  0x0000750d call  0x00006acb 
- 00027390  0x0000750e ifetch  0x00000001 , 0x00000006 
- 00027391  0x0000750f store  0x00000001 , 0x00000ac2 
- 00027392  0x00007510 call  0x000052d2 
- 00027393  0x00007511 call  0x000052e0 
- 00027394  0x00007512 setarg  0x0000000e 
- 00027395  0x00007513 istore  0x00000002 , 0x00000005 
- 00027396  0x00007514 fetch  0x00000002 , 0x0000424a 
- 00027397  0x00007515 istore  0x00000002 , 0x00000005 
- 00027398  0x00007516 fetch  0x00000001 , 0x00004563 
- 00027399  0x00007518 lshift  0x0000003f , 0x0000003f 
- 00027400  0x00007519 set1  0x00000000 , 0x0000003f 
- 00027401  0x0000751a istore  0x00000001 , 0x00000005 
- 00027402  0x0000751b bpatchx  0x000000a7 , 0x00004034 
- 00027403  0x0000751c setarg  0x000015ef 
- 00027404  0x0000751d istore  0x00000002 , 0x00000005 
- 00027405  0x0000751e setarg  0x00001191 
- 00027406  0x0000751f istore  0x00000002 , 0x00000005 
- 00027407  0x00007522 fetch  0x00000001 , 0x00000ac2 
- 00027408  0x00007523 istore  0x00000001 , 0x00000005 
- 00027409  0x00007524 setarg  0x00000007 
- 00027410  0x00007525 istore  0x00000005 , 0x00000005 
- 00027411  0x00007528 setarg  0x00000001 
- 00027412  0x00007529 istore  0x00000002 , 0x00000005 
- 00027413  0x0000752c call  0x00006a2f 
- 00027414  0x0000752d istore  0x00000001 , 0x00000005 
- 00027415  0x0000752e rtn 
- 00027416  0x00007533 branch  0x00006b19 
- 00027417  0x00007536 bpatchx  0x000000a8 , 0x00004035 
- 00027418  0x00007537 fetch  0x00000001 , 0x000004fd 
- 00027419  0x00007538 beq  0x00000073 , 0x00006b21 
- 00027420  0x00007539 beq  0x0000003f , 0x00006b25 
- 00027421  0x0000753a beq  0x000000ef , 0x00006b3f 
- 00027422  0x0000753b beq  0x000000ff , 0x00006b37 
- 00027423  0x0000753c beq  0x00000053 , 0x00006b46 
- 00027424  0x0000753d rtn 
- 00027425  0x0000753f fetch  0x00000001 , 0x00004254 
- 00027426  0x00007540 set1  0x00000003 , 0x0000003f 
- 00027427  0x00007541 store  0x00000001 , 0x00004254 
- 00027428  0x00007542 branch  0x00006b97 
- 00027429  0x00007544 fetch  0x00000001 , 0x00004254 
- 00027430  0x00007545 set1  0x00000003 , 0x0000003f 
- 00027431  0x00007546 set1  0x00000002 , 0x0000003f 
- 00027432  0x00007547 store  0x00000001 , 0x00004254 
- 00027433  0x00007548 fetch  0x00000001 , 0x000004fb 
- 00027434  0x00007549 call  0x00006a26 
- 00027435  0x0000754a store  0x00000001 , 0x000004fe 
- 00027436  0x0000754b call  0x00006bb6 
- 00027437  0x0000754c fetch  0x00000001 , 0x000004fb 
- 00027438  0x0000754d rshift2  0x0000003f , 0x0000003f 
- 00027439  0x0000754e store  0x00000001 , 0x0000455d 
- 00027440  0x0000754f lshift2  0x0000003f , 0x0000003f 
- 00027441  0x00007550 set0  0x00000001 , 0x0000003f 
- 00027442  0x00007551 set1  0x00000000 , 0x0000003f 
- 00027443  0x00007552 arg  0x00004565 , 0x00000002 
- 00027444  0x00007553 storet  0x00000002 , 0x000004f7 
- 00027445  0x00007554 call  0x00006a35 
- 00027446  0x00007555 branch  0x00006b97 
- 00027447  0x00007558 fetch  0x00000002 , 0x00000501 
- 00027448  0x00007559 copy  0x0000003f , 0x00000006 
- 00027449  0x0000755a increase  0x00000001 , 0x0000003f 
- 00027450  0x0000755b store  0x00000002 , 0x00000501 
- 00027451  0x0000755c ifetch  0x00000001 , 0x00000006 
- 00027452  0x0000755d fetcht  0x00000001 , 0x00004568 
- 00027453  0x0000755e iadd  0x00000002 , 0x0000003f 
- 00027454  0x0000755f store  0x00000001 , 0x00004568 
- 00027455  0x00007561 call  0x00006c42 
- 00027456  0x00007563 call  0x00006a72 
- 00027457  0x00007564 call  0x00006c28 
- 00027458  0x00007565 call  0x00006c4b 
- 00027459  0x00007566 branch  0x00006b97 
- 00027460  0x00007569 jam  0x00000009 , 0x00000a99 
- 00027461  0x0000756a call  0x00007d86 
- 00027462  0x0000756c call  0x00006a0d 
- 00027463  0x0000756d fetch  0x00000001 , 0x000004fb 
- 00027464  0x0000756e call  0x00006a26 
- 00027465  0x0000756f store  0x00000001 , 0x000004fe 
- 00027466  0x00007570 call  0x00006bb6 
- 00027467  0x00007571 branch  0x00006b97 
- 00027468  0x00007577 fetch  0x00000002 , 0x00000264 
- 00027469  0x00007578 copy  0x0000003f , 0x00000006 
- 00027470  0x00007579 call  0x00006ab8 
- 00027471  0x0000757a fetch  0x00000001 , 0x000004fc 
- 00027472  0x0000757b beq  0x00000000 , 0x00006b52 
- 00027473  0x0000757c branch  0x00006b86 
- 00027474  0x0000757f bpatchx  0x000000a9 , 0x00004035 
- 00027475  0x00007580 fetch  0x00000001 , 0x000004fd 
- 00027476  0x00007581 beq  0x0000003f , 0x00006a7d 
- 00027477  0x00007582 beq  0x00000073 , 0x00006a86 
- 00027478  0x00007583 beq  0x000000ef , 0x00006b58 
- 00027479  0x00007584 branch  0x00006b97 
- 00027480  0x00007586 fetch  0x00000002 , 0x00000501 
- 00027481  0x00007587 copy  0x0000003f , 0x00000006 
- 00027482  0x00007588 call  0x00006ac3 
- 00027483  0x00007589 fetch  0x00000001 , 0x00000503 
- 00027484  0x0000758a beq  0x00000041 , 0x00006b61 
- 00027485  0x0000758b beq  0x00000040 , 0x00006b61 
- 00027486  0x0000758c beq  0x00000071 , 0x00006b6c 
- 00027487  0x0000758d beq  0x00000070 , 0x00006b7c 
- 00027488  0x0000758e branch  0x00006b97 
- 00027489  0x00007591 call  0x00006aaf 
- 00027490  0x00007592 fetch  0x00000001 , 0x0000455d 
- 00027491  0x00007593 rshift  0x0000003f , 0x0000003f 
- 00027492  0x00007594 fetcht  0x00000001 , 0x00004564 
- 00027493  0x00007595 isub  0x00000002 , 0x0000003e 
- 00027494  0x00007596 branch  0x00006b68 , 0x00000005 
- 00027495  0x00007597 branch  0x00002a8c 
- 00027496  0x00007599 fetch  0x00000001 , 0x00004254 
- 00027497  0x0000759a set1  0x00000001 , 0x0000003f 
- 00027498  0x0000759b store  0x00000001 , 0x00004254 
- 00027499  0x0000759c branch  0x00006b97 
- 00027500  0x0000759f call  0x00006ab1 
- 00027501  0x000075a0 fetch  0x00000001 , 0x0000456a 
- 00027502  0x000075a1 fetcht  0x00000001 , 0x00004564 
- 00027503  0x000075a2 isub  0x00000002 , 0x0000003e 
- 00027504  0x000075a3 branch  0x00006b73 , 0x00000005 
- 00027505  0x000075a4 branch  0x00002a8c 
- 00027506  0x000075a5 branch  0x00006b97 
- 00027507  0x000075a7 fetch  0x00000001 , 0x00004254 
- 00027508  0x000075a8 set1  0x00000005 , 0x0000003f 
- 00027509  0x000075a9 set1  0x00000006 , 0x0000003f 
- 00027510  0x000075aa store  0x00000001 , 0x00004254 
- 00027511  0x000075ab fetcht  0x00000001 , 0x0000455d 
- 00027512  0x000075ac lshift2  0x00000002 , 0x00000002 
- 00027513  0x000075ad or_into  0x00000003 , 0x00000002 
- 00027514  0x000075ae call  0x00006c11 
- 00027515  0x000075af branch  0x00006b97 
- 00027516  0x000075b2 call  0x00006ab1 
- 00027517  0x000075b3 fetch  0x00000001 , 0x0000456a 
- 00027518  0x000075b4 fetcht  0x00000001 , 0x00004564 
- 00027519  0x000075b5 isub  0x00000002 , 0x0000003e 
- 00027520  0x000075b6 branch  0x00006b82 , 0x00000005 
- 00027521  0x000075b7 branch  0x00002a8c 
- 00027522  0x000075b9 fetch  0x00000001 , 0x00004254 
- 00027523  0x000075ba set1  0x00000007 , 0x0000003f 
- 00027524  0x000075bb store  0x00000001 , 0x00004254 
- 00027525  0x000075bc branch  0x00006b97 
- 00027526  0x000075bf fetch  0x00000001 , 0x000004fc 
- 00027527  0x000075c0 fetcht  0x00000001 , 0x00004564 
- 00027528  0x000075c1 isub  0x00000002 , 0x0000003e 
- 00027529  0x000075c2 branch  0x00006b8c , 0x00000005 
- 00027530  0x000075c3 branch  0x00002a8c 
- 00027531  0x000075c4 branch  0x00006b97 
- 00027532  0x000075c7 fetch  0x00000001 , 0x000004fd 
- 00027533  0x000075c8 beq  0x00000073 , 0x00006b91 
- 00027534  0x000075c9 beq  0x000000ef , 0x00006b3f 
- 00027535  0x000075ca beq  0x000000ff , 0x00006b37 
- 00027536  0x000075cb beq  0x00000053 , 0x00006b96 
- 00027537  0x000075cd fetch  0x00000001 , 0x00004254 
- 00027538  0x000075ce set1  0x00000003 , 0x0000003f 
- 00027539  0x000075cf store  0x00000001 , 0x00004254 
- 00027540  0x000075d0 branch  0x00006b97 
- 00027541  0x000075d2 branch  0x00006b95 
- 00027542  0x000075d4 branch  0x00006b46 
- 00027543  0x000075d6 rtn 
- 00027544  0x000075d9 fetch  0x00000001 , 0x00004567 
- 00027545  0x000075da rtn  0x00000034 
- 00027546  0x000075db beq  0x00000003 , 0x00006b9c 
- 00027547  0x000075dc branch  0x00002a8c 
- 00027548  0x000075df jam  0x00000000 , 0x00004567 
- 00027549  0x000075e0 call  0x000052d2 
- 00027550  0x000075e1 arg  0x00000001 , 0x00000002 
- 00027551  0x000075e2 fetcht  0x00000001 , 0x0000455d 
- 00027552  0x000075e3 lshift2  0x00000002 , 0x00000002 
- 00027553  0x000075e5 or_into  0x00000003 , 0x00000002 
- 00027554  0x000075e6 arg  0x000000aa , 0x00000011 
- 00027555  0x000075e7 call  0x00006bfc 
- 00027556  0x000075e8 call  0x000052e0 
- 00027557  0x000075e9 copy  0x00000005 , 0x00000006 
- 00027558  0x000075ea ifetch  0x00000002 , 0x00000006 
- 00027559  0x000075eb branch  0x00002a8c , 0x00000034 
- 00027560  0x000075ec rtn 
- 00027561  0x000075ef call  0x000052e0 
- 00027562  0x000075f0 setarg  0x00000004 
- 00027563  0x000075f1 istore  0x00000002 , 0x00000005 
- 00027564  0x000075f2 fetch  0x00000002 , 0x0000424a 
- 00027565  0x000075f3 istore  0x00000002 , 0x00000005 
- 00027566  0x000075f4 fetch  0x00000001 , 0x000004fb 
- 00027567  0x000075f5 istore  0x00000001 , 0x00000005 
- 00027568  0x000075f6 bpatchx  0x000000aa , 0x00004035 
- 00027569  0x000075f7 setarg  0x0000013f 
- 00027570  0x000075f8 istore  0x00000002 , 0x00000005 
- 00027571  0x000075f9 fetch  0x00000001 , 0x000004fe 
- 00027572  0x000075fa istore  0x00000001 , 0x00000005 
- 00027573  0x000075fb rtn 
- 00027574  0x000075fd call  0x000052d2 
- 00027575  0x000075fe call  0x000052e0 
- 00027576  0x000075ff setarg  0x00000004 
- 00027577  0x00007600 istore  0x00000002 , 0x00000005 
- 00027578  0x00007601 fetch  0x00000002 , 0x0000424a 
- 00027579  0x00007602 istore  0x00000002 , 0x00000005 
- 00027580  0x00007603 fetch  0x00000001 , 0x000004fb 
- 00027581  0x00007604 istore  0x00000001 , 0x00000005 
- 00027582  0x00007605 bpatchx  0x000000ab , 0x00004035 
- 00027583  0x00007606 setarg  0x00000173 
- 00027584  0x00007607 istore  0x00000002 , 0x00000005 
- 00027585  0x00007608 fetch  0x00000001 , 0x000004fe 
- 00027586  0x00007609 istore  0x00000001 , 0x00000005 
- 00027587  0x0000760a rtn 
- 00027588  0x0000760c call  0x000052e0 
- 00027589  0x0000760d setarg  0x0000000e 
- 00027590  0x0000760e istore  0x00000002 , 0x00000005 
- 00027591  0x0000760f fetch  0x00000002 , 0x0000424a 
- 00027592  0x00007610 istore  0x00000002 , 0x00000005 
- 00027593  0x00007611 fetch  0x00000001 , 0x00004563 
- 00027594  0x00007612 lshift  0x0000003f , 0x0000003f 
- 00027595  0x00007613 set1  0x00000000 , 0x0000003f 
- 00027596  0x00007614 istore  0x00000001 , 0x00000005 
- 00027597  0x00007615 bpatchx  0x000000ac , 0x00004035 
- 00027598  0x00007616 setarg  0x000015ef 
- 00027599  0x00007617 istore  0x00000002 , 0x00000005 
- 00027600  0x00007618 setarg  0x00001183 
- 00027601  0x00007619 istore  0x00000002 , 0x00000005 
- 00027602  0x0000761a copy  0x00000002 , 0x0000003f 
- 00027603  0x0000761b istore  0x00000001 , 0x00000005 
- 00027604  0x0000761c setarg  0x000000f0 
- 00027605  0x0000761d istore  0x00000003 , 0x00000005 
- 00027606  0x0000761e setarg  0x0000007f 
- 00027607  0x0000761f istore  0x00000002 , 0x00000005 
- 00027608  0x00007620 setarg  0x00000000 
- 00027609  0x00007621 istore  0x00000001 , 0x00000005 
- 00027610  0x00007622 setarg  0x00000001 
- 00027611  0x00007623 istore  0x00000001 , 0x00000005 
- 00027612  0x00007624 call  0x00006a2f 
- 00027613  0x00007625 istore  0x00000001 , 0x00000005 
- 00027614  0x00007626 jam  0x00000010 , 0x00004569 
- 00027615  0x00007627 rtn 
- 00027616  0x00007629 call  0x000052d2 
- 00027617  0x0000762a call  0x000052e0 
- 00027618  0x0000762b setarg  0x0000000e 
- 00027619  0x0000762c istore  0x00000002 , 0x00000005 
- 00027620  0x0000762d fetch  0x00000002 , 0x0000424a 
- 00027621  0x0000762e istore  0x00000002 , 0x00000005 
- 00027622  0x0000762f fetch  0x00000001 , 0x00004563 
- 00027623  0x00007630 lshift  0x0000003f , 0x0000003f 
- 00027624  0x00007631 set1  0x00000000 , 0x0000003f 
- 00027625  0x00007632 istore  0x00000001 , 0x00000005 
- 00027626  0x00007633 bpatchx  0x000000ad , 0x00004035 
- 00027627  0x00007634 setarg  0x000015ef 
- 00027628  0x00007635 istore  0x00000002 , 0x00000005 
- 00027629  0x00007636 setarg  0x00001181 
- 00027630  0x00007637 istore  0x00000002 , 0x00000005 
- 00027631  0x00007638 fetch  0x00000001 , 0x0000455d 
- 00027632  0x00007639 istore  0x00000001 , 0x00000005 
- 00027633  0x0000763a setarg  0x000000e0 
- 00027634  0x0000763b istore  0x00000003 , 0x00000005 
- 00027635  0x0000763c fetch  0x00000002 , 0x0000456c 
- 00027636  0x0000763d istore  0x00000002 , 0x00000005 
- 00027637  0x0000763e setarg  0x00000000 
- 00027638  0x0000763f istore  0x00000001 , 0x00000005 
- 00027639  0x00007640 fetch  0x00000001 , 0x0000456e 
- 00027640  0x00007641 istore  0x00000001 , 0x00000005 
- 00027641  0x00007642 call  0x00006a2f 
- 00027642  0x00007643 istore  0x00000001 , 0x00000005 
- 00027643  0x00007644 rtn 
- 00027644  0x00007646 call  0x000052e0 
- 00027645  0x00007647 setarg  0x00000008 
- 00027646  0x00007648 istore  0x00000002 , 0x00000005 
- 00027647  0x00007649 fetch  0x00000002 , 0x0000424a 
- 00027648  0x0000764a istore  0x00000002 , 0x00000005 
- 00027649  0x0000764b fetch  0x00000001 , 0x00004563 
- 00027650  0x0000764c lshift  0x0000003f , 0x0000003f 
- 00027651  0x0000764d set1  0x00000000 , 0x0000003f 
- 00027652  0x0000764e istore  0x00000001 , 0x00000005 
- 00027653  0x0000764f bpatchx  0x000000ae , 0x00004035 
- 00027654  0x00007650 setarg  0x000009ef 
- 00027655  0x00007651 istore  0x00000002 , 0x00000005 
- 00027656  0x00007652 setarg  0x000005e3 
- 00027657  0x00007653 istore  0x00000002 , 0x00000005 
- 00027658  0x00007654 copy  0x00000002 , 0x0000003f 
- 00027659  0x00007655 istore  0x00000001 , 0x00000005 
- 00027660  0x00007656 setarg  0x0000008d 
- 00027661  0x00007657 istore  0x00000001 , 0x00000005 
- 00027662  0x00007658 call  0x00006a2f 
- 00027663  0x00007659 istore  0x00000001 , 0x00000005 
- 00027664  0x0000765a rtn 
- 00027665  0x0000765d call  0x000052d2 
- 00027666  0x0000765e call  0x000052e0 
- 00027667  0x0000765f setarg  0x00000008 
- 00027668  0x00007660 istore  0x00000002 , 0x00000005 
- 00027669  0x00007661 fetch  0x00000002 , 0x0000424a 
- 00027670  0x00007662 istore  0x00000002 , 0x00000005 
- 00027671  0x00007663 copy  0x00000002 , 0x0000000b 
- 00027672  0x00007664 fetch  0x00000001 , 0x00004563 
- 00027673  0x00007665 lshift  0x0000003f , 0x0000003f 
- 00027674  0x00007666 set1  0x00000000 , 0x0000003f 
- 00027675  0x00007667 istore  0x00000001 , 0x00000005 
- 00027676  0x00007668 bpatchx  0x000000af , 0x00004035 
- 00027677  0x00007669 setarg  0x000009ef 
- 00027678  0x0000766a istore  0x00000002 , 0x00000005 
- 00027679  0x0000766b setarg  0x000005e1 
- 00027680  0x0000766c istore  0x00000002 , 0x00000005 
- 00027681  0x0000766d copy  0x0000000b , 0x0000003f 
- 00027682  0x0000766e istore  0x00000001 , 0x00000005 
- 00027683  0x0000766f setarg  0x0000008d 
- 00027684  0x00007670 istore  0x00000001 , 0x00000005 
- 00027685  0x00007671 call  0x00006a2f 
- 00027686  0x00007672 istore  0x00000001 , 0x00000005 
- 00027687  0x00007673 rtn 
- 00027688  0x00007676 bpatchx  0x000000b0 , 0x00004036 
- 00027689  0x00007677 fetch  0x00000001 , 0x00004569 
- 00027690  0x00007678 rtn  0x00000034 
- 00027691  0x00007679 hfetch  0x00000002 , 0x00008112 
- 00027692  0x0000767a nrtn  0x00000034 
- 00027693  0x0000767b copy  0x00000011 , 0x0000003f 
- 00027694  0x0000767c store  0x00000001 , 0x00000a9b 
- 00027695  0x0000767d storet  0x00000001 , 0x00000a9a 
- 00027696  0x0000767e call  0x0000526e 
- 00027697  0x0000767f nrtn  0x00000034 
- 00027698  0x00007680 call  0x000052d2 
- 00027699  0x00007681 call  0x000052e0 
- 00027700  0x00007682 setarg  0x00000005 
- 00027701  0x00007683 istore  0x00000002 , 0x00000005 
- 00027702  0x00007684 fetch  0x00000002 , 0x0000424a 
- 00027703  0x00007685 istore  0x00000002 , 0x00000005 
- 00027704  0x00007686 fetch  0x00000001 , 0x0000050d 
- 00027705  0x00007687 istore  0x00000001 , 0x00000005 
- 00027706  0x00007688 setarg  0x000001ff 
- 00027707  0x00007689 istore  0x00000002 , 0x00000005 
- 00027708  0x0000768a fetch  0x00000001 , 0x00004569 
- 00027709  0x0000768b istore  0x00000001 , 0x00000005 
- 00027710  0x0000768c fetch  0x00000001 , 0x00004566 
- 00027711  0x0000768d istore  0x00000001 , 0x00000005 
- 00027712  0x0000768e jam  0x00000000 , 0x00004569 
- 00027713  0x0000768f rtn 
- 00027714  0x00007692 bpatchx  0x000000b1 , 0x00004036 
- 00027715  0x00007693 fetch  0x00000001 , 0x0000456b 
- 00027716  0x00007694 rtneq  0x00000001 
- 00027717  0x00007695 fetch  0x00000002 , 0x000004ff 
- 00027718  0x00007696 rtn  0x00000034 
- 00027719  0x00007697 fetch  0x00000001 , 0x00004569 
- 00027720  0x00007698 increase  0x00000001 , 0x0000003f 
- 00027721  0x00007699 store  0x00000001 , 0x00004569 
- 00027722  0x0000769a rtn 
- 00027723  0x0000769d fetch  0x00000002 , 0x0000456f 
- 00027724  0x0000769e branch  0x00007f9c 
- 00027725  0x000076a1 bpatchx  0x000000b2 , 0x00004036 
- 00027726  0x000076a3 fetch  0x00000001 , 0x00004568 
- 00027727  0x000076a4 rtn  0x00000034 
- 00027728  0x000076a5 increase  0xffffffff , 0x0000003f 
- 00027729  0x000076a6 store  0x00000001 , 0x00004568 
- 00027730  0x000076a7 fetch  0x00000002 , 0x0000455e 
- 00027731  0x000076a8 fetcht  0x00000002 , 0x0000469f 
- 00027732  0x000076a9 isub  0x00000002 , 0x0000003e 
- 00027733  0x000076aa branch  0x00006c57 , 0x00000002 
- 00027734  0x000076ab store  0x00000002 , 0x0000469f 
- 00027735  0x000076ad fetch  0x00000001 , 0x00004569 
- 00027736  0x000076ae branch  0x00006c5f , 0x00000034 
- 00027737  0x000076af jam  0x00000001 , 0x00000510 
- 00027738  0x000076b0 fetch  0x00000001 , 0x00004566 
- 00027739  0x000076b1 store  0x00000001 , 0x0000050f 
- 00027740  0x000076b2 setarg  0x000000ff 
- 00027741  0x000076b3 store  0x00000001 , 0x0000050e 
- 00027742  0x000076b4 branch  0x00006c64 
- 00027743  0x000076b6 jam  0x00000000 , 0x00000510 
- 00027744  0x000076b7 fetch  0x00000001 , 0x00004565 
- 00027745  0x000076b8 store  0x00000001 , 0x0000050f 
- 00027746  0x000076b9 setarg  0x000000ef 
- 00027747  0x000076ba store  0x00000001 , 0x0000050e 
- 00027748  0x000076bc bpatchx  0x000000b3 , 0x00004036 
- 00027749  0x000076bd fetch  0x00000002 , 0x0000469f 
- 00027750  0x000076be sub  0x0000003f , 0x0000007f , 0x0000003e 
- 00027751  0x000076bf branch  0x00006c6b , 0x00000002 
- 00027752  0x000076c0 fetch  0x00000001 , 0x00000510 
- 00027753  0x000076c1 increase  0x00000001 , 0x0000003f 
- 00027754  0x000076c2 store  0x00000001 , 0x00000510 
- 00027755  0x000076c4 call  0x00006a72 
- 00027756  0x000076c5 fetch  0x00000002 , 0x0000469f 
- 00027757  0x000076c6 increase  0x00000008 , 0x0000003f 
- 00027758  0x000076c7 fetcht  0x00000001 , 0x00000510 
- 00027759  0x000076c8 iadd  0x00000002 , 0x00000011 
- 00027760  0x000076ca call  0x00005240 
- 00027761  0x000076cb store  0x00000002 , 0x00000277 
- 00027762  0x000076cc increase  0x00000004 , 0x0000003f 
- 00027763  0x000076cd store  0x00000002 , 0x00000279 
- 00027764  0x000076ce copy  0x0000003f , 0x00000005 
- 00027765  0x000076cf fetch  0x00000001 , 0x0000050d 
- 00027766  0x000076d0 istore  0x00000001 , 0x00000005 
- 00027767  0x000076d1 fetch  0x00000001 , 0x0000050e 
- 00027768  0x000076d2 istore  0x00000001 , 0x00000005 
- 00027769  0x000076d3 call  0x00006c95 
- 00027770  0x000076d4 call  0x00006ca6 
- 00027771  0x000076d5 bpatchx  0x000000b4 , 0x00004036 
- 00027772  0x000076d6 fetch  0x00000002 , 0x00004571 
- 00027773  0x000076d7 copy  0x0000003f , 0x00000003 
- 00027774  0x000076d8 fetch  0x00000002 , 0x0000469f 
- 00027775  0x000076d9 copy  0x0000003f , 0x00000039 
- 00027776  0x000076da call  0x000066ea 
- 00027777  0x000076db copy  0x00000005 , 0x00000002 
- 00027778  0x000076dc copy  0x00000003 , 0x0000003f 
- 00027779  0x000076dd store  0x00000002 , 0x00004571 
- 00027780  0x000076de copy  0x00000002 , 0x00000005 
- 00027781  0x000076df fetch  0x00000001 , 0x0000050f 
- 00027782  0x000076e0 istore  0x00000001 , 0x00000005 
- 00027783  0x000076e1 fetch  0x00000002 , 0x00000277 
- 00027784  0x000076e2 copy  0x0000003f , 0x00000005 
- 00027785  0x000076e3 fetch  0x00000002 , 0x0000469f 
- 00027786  0x000076e4 fetcht  0x00000001 , 0x00000510 
- 00027787  0x000076e5 iadd  0x00000002 , 0x0000003f 
- 00027788  0x000076e6 increase  0x00000004 , 0x0000003f 
- 00027789  0x000076e7 istore  0x00000002 , 0x00000005 
- 00027790  0x000076e8 fetch  0x00000002 , 0x0000424a 
- 00027791  0x000076e9 istore  0x00000002 , 0x00000005 
- 00027792  0x000076ea jam  0x00000000 , 0x00004569 
- 00027793  0x000076eb fetch  0x00000002 , 0x00004573 
- 00027794  0x000076ec beq  0x00000000 , 0x00003a97 
- 00027795  0x000076ed jam  0x00000000 , 0x00000b05 
- 00027796  0x000076ee rtn 
- 00027797  0x000076f1 bpatchx  0x000000b5 , 0x00004036 
- 00027798  0x000076f2 fetch  0x00000002 , 0x0000469f 
- 00027799  0x000076f3 sub  0x0000003f , 0x0000007f , 0x0000003e 
- 00027800  0x000076f4 nbranch  0x00006c9d , 0x00000002 
- 00027801  0x000076f5 lshift  0x0000003f , 0x0000003f 
- 00027802  0x000076f6 set1  0x00000000 , 0x0000003f 
- 00027803  0x000076f7 istore  0x00000001 , 0x00000005 
- 00027804  0x000076f8 rtn 
- 00027805  0x000076fa fetch  0x00000002 , 0x0000469f 
- 00027806  0x000076fb rshift3  0x0000003f , 0x0000003f 
- 00027807  0x000076fc rshift4  0x0000003f , 0x00000002 
- 00027808  0x000076fd and_into  0x0000007f , 0x0000003f 
- 00027809  0x000076fe lshift  0x0000003f , 0x0000003f 
- 00027810  0x000076ff set0  0x00000000 , 0x0000003f 
- 00027811  0x00007700 istore  0x00000001 , 0x00000005 
- 00027812  0x00007701 istoret  0x00000001 , 0x00000005 
- 00027813  0x00007702 rtn 
- 00027814  0x00007704 fetch  0x00000001 , 0x00004569 
- 00027815  0x00007705 rtn  0x00000034 
- 00027816  0x00007706 istore  0x00000001 , 0x00000005 
- 00027817  0x00007707 rtn 
- 00027818  0x0000770d bpatchx  0x000000b6 , 0x00004036 
- 00027819  0x0000770e call  0x00007d9c 
- 00027820  0x0000770f call  0x000032f6 
- 00027821  0x00007710 call  0x0000631b 
- 00027822  0x00007712 bpatchx  0x000000b7 , 0x00004036 
- 00027823  0x00007713 call  0x000076dc 
- 00027824  0x00007714 call  0x000076b5 
- 00027825  0x00007715 call  0x000076c6 
- 00027826  0x00007718 call  0x0000526e 
- 00027827  0x00007719 nrtn  0x00000034 
- 00027828  0x0000771b call  0x00004da9 
- 00027829  0x0000771c call  0x0000526e 
- 00027830  0x0000771d nrtn  0x00000034 
- 00027831  0x0000771e bpatchx  0x000000b8 , 0x00004037 
- 00027832  0x00007720 call  0x00006cf5 
- 00027833  0x00007721 call  0x00004f64 
- 00027834  0x00007722 call  0x00006b98 
- 00027835  0x00007724 call  0x00006cbe 
- 00027836  0x00007725 bpatchx  0x000000b9 , 0x00004037 
- 00027837  0x00007728 branch  0x000032f2 
- 00027838  0x0000772b fetch  0x00000001 , 0x0000027f 
- 00027839  0x0000772c bbit1  0x00000000 , 0x00005087 
- 00027840  0x0000772d bbit1  0x00000007 , 0x00005091 
- 00027841  0x0000772e rtn 
- 00027842  0x00007731 bpatchx  0x000000ba , 0x00004037 
- 00027843  0x00007732 call  0x00005274 
- 00027844  0x00007733 rtn  0x00000034 
- 00027845  0x00007734 fetch  0x00000001 , 0x0000004b 
- 00027846  0x00007735 rtnbit1  0x00000006 
- 00027847  0x00007736 call  0x00005258 
- 00027848  0x00007737 store  0x00000002 , 0x0000016f 
- 00027849  0x00007738 copy  0x0000003f , 0x00000006 
- 00027850  0x00007739 ifetch  0x00000002 , 0x00000006 
- 00027851  0x0000773a increase  0x00000004 , 0x0000003f 
- 00027852  0x0000773b store  0x00000002 , 0x000041dc 
- 00027853  0x0000773c jam  0x00000006 , 0x000041db 
- 00027854  0x0000773d bpatchx  0x000000bb , 0x00004037 
- 00027855  0x0000773e fetch  0x00000002 , 0x00004246 
- 00027856  0x0000773f branch  0x00006cdd , 0x00000034 
- 00027857  0x00007740 fetch  0x00000001 , 0x0000004b 
- 00027858  0x00007741 rtnbit0  0x00000007 
- 00027859  0x00007742 set0  0x00000007 , 0x0000003f 
- 00027860  0x00007743 store  0x00000001 , 0x0000004b 
- 00027861  0x00007744 jam  0x00000005 , 0x000041db 
- 00027862  0x00007745 fetcht  0x00000002 , 0x00004246 
- 00027863  0x00007746 fetch  0x00000002 , 0x0000016f 
- 00027864  0x00007747 iadd  0x00000002 , 0x0000003f 
- 00027865  0x00007748 store  0x00000002 , 0x0000016f 
- 00027866  0x00007749 fetch  0x00000002 , 0x000041dc 
- 00027867  0x0000774a isub  0x00000002 , 0x0000003f 
- 00027868  0x0000774b store  0x00000002 , 0x000041dc 
- 00027869  0x0000774d bpatchx  0x000000bc , 0x00004037 
- 00027870  0x0000774e fetch  0x00000002 , 0x000041dc 
- 00027871  0x0000774f branch  0x00002a8c , 0x00000034 
- 00027872  0x00007750 arg  0x00000104 , 0x00000002 
- 00027873  0x00007751 isub  0x00000002 , 0x0000003f 
- 00027874  0x00007752 nbranch  0x00006ce9 , 0x00000002 
- 00027875  0x00007753 bpatchx  0x000000bd , 0x00004037 
- 00027876  0x00007754 storet  0x00000002 , 0x000041dc 
- 00027877  0x00007755 fetch  0x00000002 , 0x00004246 
- 00027878  0x00007756 iadd  0x00000002 , 0x0000003f 
- 00027879  0x00007757 store  0x00000002 , 0x00004246 
- 00027880  0x00007758 branch  0x00006ceb 
- 00027881  0x0000775a setarg  0x00000000 
- 00027882  0x0000775b store  0x00000002 , 0x00004246 
- 00027883  0x0000775d fetch  0x00000001 , 0x0000004b 
- 00027884  0x0000775e set1  0x00000006 , 0x0000003f 
- 00027885  0x0000775f store  0x00000001 , 0x0000004b 
- 00027886  0x00007760 rtn 
- 00027887  0x00007763 fetch  0x00000001 , 0x00004684 
- 00027888  0x00007764 bbit1  0x00000000 , 0x00006cf3 
- 00027889  0x00007765 jam  0x00000001 , 0x00000287 
- 00027890  0x00007766 rtn 
- 00027891  0x00007768 jam  0x0000000f , 0x00000287 
- 00027892  0x00007769 rtn 
- 00027893  0x0000776c fetch  0x00000001 , 0x00004681 
- 00027894  0x0000776d nbranch  0x00006cfb , 0x00000034 
- 00027895  0x0000776f fetch  0x00000001 , 0x00000286 
- 00027896  0x00007771 rtn  0x00000034 
- 00027897  0x00007773 jam  0x00000000 , 0x00000286 
- 00027898  0x00007775 rtn 
- 00027899  0x00007779 bpatchx  0x000000be , 0x00004037 
- 00027900  0x0000777a fetch  0x00000001 , 0x00000287 
- 00027901  0x0000777b rtn  0x00000034 
- 00027902  0x0000777c beq  0x00000001 , 0x00006d1b 
- 00027903  0x0000777d beq  0x00000002 , 0x00006d74 
- 00027904  0x0000777e beq  0x00000003 , 0x00006d21 
- 00027905  0x0000777f beq  0x00000004 , 0x00006d78 
- 00027906  0x00007780 beq  0x0000003b , 0x00006d2b 
- 00027907  0x00007781 beq  0x0000003c , 0x00006d7b 
- 00027908  0x00007782 beq  0x0000000d , 0x00006d30 
- 00027909  0x00007783 beq  0x0000000e , 0x00006d80 
- 00027910  0x00007784 beq  0x0000000f , 0x00006d33 
- 00027911  0x00007785 beq  0x00000010 , 0x00006d86 
- 00027912  0x00007786 beq  0x00000011 , 0x00006d39 
- 00027913  0x00007787 beq  0x00000012 , 0x00006d8a 
- 00027914  0x00007788 beq  0x00000013 , 0x00006d3f 
- 00027915  0x00007789 beq  0x00000014 , 0x00006d8e 
- 00027916  0x0000778a beq  0x00000015 , 0x00006d45 
- 00027917  0x0000778b beq  0x00000016 , 0x00006d92 
- 00027918  0x0000778c beq  0x00000017 , 0x00006d4b 
- 00027919  0x0000778d beq  0x00000018 , 0x00006d97 
- 00027920  0x0000778e beq  0x00000019 , 0x00006d51 
- 00027921  0x0000778f beq  0x0000001a , 0x00006d9b 
- 00027922  0x00007790 beq  0x0000001b , 0x00006d57 
- 00027923  0x00007791 beq  0x0000001c , 0x00006d9f 
- 00027924  0x00007792 beq  0x0000001d , 0x00006d5d 
- 00027925  0x00007793 beq  0x0000001e , 0x00006da4 
- 00027926  0x00007794 beq  0x0000001f , 0x00006d63 
- 00027927  0x00007795 beq  0x00000020 , 0x00006da8 
- 00027928  0x00007796 beq  0x00000021 , 0x00006d6e 
- 00027929  0x00007797 beq  0x00000022 , 0x00006dac 
- 00027930  0x00007799 rtn 
- 00027931  0x0000779b call  0x00006db7 
- 00027932  0x0000779c jam  0x00000002 , 0x00000287 
- 00027933  0x0000779d fetch  0x00000001 , 0x00004250 
- 00027934  0x0000779e set1  0x00000000 , 0x0000003f 
- 00027935  0x0000779f store  0x00000001 , 0x00004250 
- 00027936  0x000077a0 rtn 
- 00027937  0x000077a2 jam  0x00000004 , 0x00000287 
- 00027938  0x000077a3 fetch  0x00000001 , 0x00004250 
- 00027939  0x000077a4 rtnbit1  0x00000002 
- 00027940  0x000077a5 jam  0x00000003 , 0x00000287 
- 00027941  0x000077a6 call  0x00006dbe 
- 00027942  0x000077a7 jam  0x00000004 , 0x00000287 
- 00027943  0x000077a8 fetch  0x00000001 , 0x00004250 
- 00027944  0x000077a9 set1  0x00000002 , 0x0000003f 
- 00027945  0x000077aa store  0x00000001 , 0x00004250 
- 00027946  0x000077ab rtn 
- 00027947  0x000077ad call  0x00005274 
- 00027948  0x000077ae nrtn  0x00000034 
- 00027949  0x000077af call  0x00006dcd 
- 00027950  0x000077b0 jam  0x0000003c , 0x00000287 
- 00027951  0x000077b1 rtn 
- 00027952  0x000077b3 call  0x00006dc3 
- 00027953  0x000077b4 jam  0x0000000e , 0x00000287 
- 00027954  0x000077b5 rtn 
- 00027955  0x000077b7 call  0x00006ddd 
- 00027956  0x000077b8 jam  0x00000010 , 0x00000287 
- 00027957  0x000077b9 fetch  0x00000001 , 0x00004252 
- 00027958  0x000077ba set1  0x00000000 , 0x0000003f 
- 00027959  0x000077bb store  0x00000001 , 0x00004252 
- 00027960  0x000077bc rtn 
- 00027961  0x000077be call  0x00006de4 
- 00027962  0x000077bf jam  0x00000012 , 0x00000287 
- 00027963  0x000077c0 fetch  0x00000001 , 0x00004252 
- 00027964  0x000077c1 set1  0x00000002 , 0x0000003f 
- 00027965  0x000077c2 store  0x00000001 , 0x00004252 
- 00027966  0x000077c3 rtn 
- 00027967  0x000077c5 call  0x00006de9 
- 00027968  0x000077c6 jam  0x00000014 , 0x00000287 
- 00027969  0x000077c7 fetch  0x00000001 , 0x00004253 
- 00027970  0x000077c8 set1  0x00000000 , 0x0000003f 
- 00027971  0x000077c9 store  0x00000001 , 0x00004253 
- 00027972  0x000077ca rtn 
- 00027973  0x000077cc call  0x00006df0 
- 00027974  0x000077cd jam  0x00000016 , 0x00000287 
- 00027975  0x000077ce fetch  0x00000001 , 0x00004253 
- 00027976  0x000077cf set1  0x00000002 , 0x0000003f 
- 00027977  0x000077d0 store  0x00000001 , 0x00004253 
- 00027978  0x000077d1 rtn 
- 00027979  0x000077d3 call  0x00006dd1 
- 00027980  0x000077d4 jam  0x00000018 , 0x00000287 
- 00027981  0x000077d5 fetch  0x00000001 , 0x00004251 
- 00027982  0x000077d6 set1  0x00000000 , 0x0000003f 
- 00027983  0x000077d7 store  0x00000001 , 0x00004251 
- 00027984  0x000077d8 rtn 
- 00027985  0x000077da call  0x00006dd8 
- 00027986  0x000077db jam  0x0000001a , 0x00000287 
- 00027987  0x000077dc fetch  0x00000001 , 0x00004251 
- 00027988  0x000077dd set1  0x00000002 , 0x0000003f 
- 00027989  0x000077de store  0x00000001 , 0x00004251 
- 00027990  0x000077df rtn 
- 00027991  0x000077e1 call  0x00006df5 
- 00027992  0x000077e2 jam  0x0000001c , 0x00000287 
- 00027993  0x000077e3 fetch  0x00000001 , 0x00004251 
- 00027994  0x000077e4 set1  0x00000006 , 0x0000003f 
- 00027995  0x000077e5 store  0x00000001 , 0x00004251 
- 00027996  0x000077e6 rtn 
- 00027997  0x000077e8 call  0x00006dfc 
- 00027998  0x000077e9 fetch  0x00000001 , 0x00004254 
- 00027999  0x000077ea set1  0x00000000 
- 00028000  0x000077eb store  0x00000001 , 0x00004254 
- 00028001  0x000077ec jam  0x0000001e , 0x00000287 
- 00028002  0x000077ed rtn 
- 00028003  0x000077ef call  0x00006e02 
- 00028004  0x000077f0 fetch  0x00000001 , 0x00004254 
- 00028005  0x000077f1 set1  0x00000002 
- 00028006  0x000077f2 store  0x00000001 , 0x00004254 
- 00028007  0x000077f3 jam  0x00000020 , 0x00000287 
- 00028008  0x000077f4 fetch  0x00000001 , 0x00004564 
- 00028009  0x000077f5 lshift3  0x0000003f , 0x0000003f 
- 00028010  0x000077f6 or_into  0x00000003 , 0x0000003f 
- 00028011  0x000077f7 arg  0x00004565 , 0x00000002 
- 00028012  0x000077f8 storet  0x00000002 , 0x000004f7 
- 00028013  0x000077f9 branch  0x00006a35 
- 00028014  0x000077fb call  0x00006e0c 
- 00028015  0x000077fc fetch  0x00000001 , 0x00004254 
- 00028016  0x000077fd set1  0x00000004 
- 00028017  0x000077fe store  0x00000001 , 0x00004254 
- 00028018  0x000077ff jam  0x00000022 , 0x00000287 
- 00028019  0x00007800 rtn 
- 00028020  0x00007803 fetch  0x00000001 , 0x00004250 
- 00028021  0x00007804 rtnbit0  0x00000001 
- 00028022  0x00007805 jam  0x00000003 , 0x00000287 
- 00028023  0x00007806 branch  0x00006cfb 
- 00028024  0x00007808 fetch  0x00000001 , 0x00004250 
- 00028025  0x00007809 rtnne  0x0000003f 
- 00028026  0x0000780a jam  0x0000003b , 0x00000287 
- 00028027  0x0000780c fetch  0x00000001 , 0x00000285 
- 00028028  0x0000780d rtnne  0x00000017 
- 00028029  0x0000780e jam  0x00000000 , 0x00000285 
- 00028030  0x0000780f jam  0x0000000d , 0x00000287 
- 00028031  0x00007810 branch  0x00006cfb 
- 00028032  0x00007812 fetch  0x00000001 , 0x00004250 
- 00028033  0x00007813 nrtn  0x00000034 
- 00028034  0x00007814 fetch  0x00000001 , 0x00004684 
- 00028035  0x00007815 bbit1  0x00000000 , 0x00006daf 
- 00028036  0x00007816 bbit1  0x00000006 , 0x00006db1 
- 00028037  0x00007817 branch  0x00006db5 
- 00028038  0x00007819 fetch  0x00000001 , 0x00004252 
- 00028039  0x0000781a rtnbit0  0x00000001 
- 00028040  0x0000781b jam  0x00000011 , 0x00000287 
- 00028041  0x0000781c branch  0x00006cfb 
- 00028042  0x0000781e fetch  0x00000001 , 0x00004252 
- 00028043  0x0000781f rtnne  0x0000003f 
- 00028044  0x00007820 jam  0x00000013 , 0x00000287 
- 00028045  0x00007821 branch  0x00006cfb 
- 00028046  0x00007823 fetch  0x00000001 , 0x00004253 
- 00028047  0x00007824 rtnbit0  0x00000001 
- 00028048  0x00007825 jam  0x00000015 , 0x00000287 
- 00028049  0x00007826 branch  0x00006cfb 
- 00028050  0x00007828 fetch  0x00000001 , 0x00004253 
- 00028051  0x00007829 rtnne  0x0000003f 
- 00028052  0x0000782a fetch  0x00000001 , 0x00004684 
- 00028053  0x0000782b bbit1  0x00000006 , 0x00006db1 
- 00028054  0x0000782c branch  0x00006db5 
- 00028055  0x0000782e fetch  0x00000001 , 0x00004251 
- 00028056  0x0000782f rtnbit0  0x00000001 
- 00028057  0x00007830 jam  0x00000019 , 0x00000287 
- 00028058  0x00007831 branch  0x00006cfb 
- 00028059  0x00007833 fetch  0x00000001 , 0x00004251 
- 00028060  0x00007834 rtnne  0x0000003f 
- 00028061  0x00007835 jam  0x0000001b , 0x00000287 
- 00028062  0x00007836 branch  0x00006cfb 
- 00028063  0x00007838 fetch  0x00000001 , 0x00004251 
- 00028064  0x00007839 rtnne  0x000000ff 
- 00028065  0x0000783a fetch  0x00000001 , 0x00004684 
- 00028066  0x0000783b bbit1  0x00000006 , 0x00006db3 
- 00028067  0x0000783c branch  0x00006db5 
- 00028068  0x0000783e fetch  0x00000001 , 0x00004254 
- 00028069  0x0000783f rtnbit0  0x00000001 
- 00028070  0x00007840 jam  0x0000001f , 0x00000287 
- 00028071  0x00007841 branch  0x00006cfb 
- 00028072  0x00007843 fetch  0x00000001 , 0x00004254 
- 00028073  0x00007844 rtnbit0  0x00000003 
- 00028074  0x00007845 jam  0x00000021 , 0x00000287 
- 00028075  0x00007846 branch  0x00006cfb 
- 00028076  0x00007848 fetch  0x00000001 , 0x00004254 
- 00028077  0x00007849 rtnne  0x000000ff 
- 00028078  0x0000784a branch  0x00006db5 
- 00028079  0x0000784d jam  0x0000000f , 0x00000287 
- 00028080  0x0000784e branch  0x00006cfb 
- 00028081  0x00007851 jam  0x00000017 , 0x00000287 
- 00028082  0x00007852 branch  0x00006cfb 
- 00028083  0x00007854 jam  0x0000001d , 0x00000287 
- 00028084  0x00007855 branch  0x00006cfb 
- 00028085  0x0000785a jam  0x00000000 , 0x00000287 
- 00028086  0x0000785b rtn 
- 00028087  0x0000785d bpatchx  0x000000bf , 0x00004037 
- 00028088  0x0000785e call  0x000052b8 
- 00028089  0x0000785f setarg  0x00000001 
- 00028090  0x00007860 copy  0x0000003f , 0x00000002 
- 00028091  0x00007861 setarg  0x00000050 
- 00028092  0x00007862 copy  0x0000003f , 0x0000000b 
- 00028093  0x00007863 branch  0x000050a8 
- 00028094  0x00007866 bpatchx  0x000000c0 , 0x00004038 
- 00028095  0x00007867 call  0x000052b8 
- 00028096  0x00007868 fetch  0x00000002 , 0x00004248 
- 00028097  0x00007869 copy  0x0000003f , 0x00000002 
- 00028098  0x0000786a branch  0x000050b7 
- 00028099  0x0000786d bpatchx  0x000000c1 , 0x00004038 
- 00028100  0x0000786e call  0x000052b8 
- 00028101  0x0000786f fetch  0x00000002 , 0x00004248 
- 00028102  0x00007870 copy  0x0000003f , 0x00000002 
- 00028103  0x00007871 arg  0x00000050 , 0x0000000b 
- 00028104  0x00007872 call  0x000050cc 
- 00028105  0x00007873 fetch  0x00000001 , 0x00004250 
- 00028106  0x00007874 set0  0x00000005 , 0x0000003f 
- 00028107  0x00007875 store  0x00000001 , 0x00004250 
- 00028108  0x00007876 rtn 
- 00028109  0x00007879 bpatchx  0x000000c2 , 0x00004038 
- 00028110  0x0000787a call  0x000052c5 
- 00028111  0x0000787b call  0x00007138 
- 00028112  0x0000787c branch  0x000050e7 
- 00028113  0x0000787f bpatchx  0x000000c3 , 0x00004038 
- 00028114  0x00007880 call  0x000052b8 
- 00028115  0x00007881 setarg  0x00000003 
- 00028116  0x00007882 copy  0x0000003f , 0x00000002 
- 00028117  0x00007883 setarg  0x00000051 
- 00028118  0x00007884 copy  0x0000003f , 0x0000000b 
- 00028119  0x00007885 branch  0x000050a8 
- 00028120  0x00007888 bpatchx  0x000000c4 , 0x00004038 
- 00028121  0x00007889 call  0x000052b8 
- 00028122  0x0000788a fetch  0x00000002 , 0x0000424a 
- 00028123  0x0000788b copy  0x0000003f , 0x00000002 
- 00028124  0x0000788c branch  0x000050b7 
- 00028125  0x0000788f bpatchx  0x000000c5 , 0x00004038 
- 00028126  0x00007890 call  0x000052b8 
- 00028127  0x00007891 setarg  0x00000011 
- 00028128  0x00007892 copy  0x0000003f , 0x00000002 
- 00028129  0x00007893 setarg  0x00000052 
- 00028130  0x00007894 copy  0x0000003f , 0x0000000b 
- 00028131  0x00007895 branch  0x000050a8 
- 00028132  0x00007898 bpatchx  0x000000c6 , 0x00004038 
- 00028133  0x00007899 call  0x000052b8 
- 00028134  0x0000789a fetch  0x00000002 , 0x0000424c 
- 00028135  0x0000789b copy  0x0000003f , 0x00000002 
- 00028136  0x0000789c branch  0x000050b7 
- 00028137  0x0000789f bpatchx  0x000000c7 , 0x00004038 
- 00028138  0x000078a0 call  0x000052b8 
- 00028139  0x000078a1 setarg  0x00000013 
- 00028140  0x000078a2 copy  0x0000003f , 0x00000002 
- 00028141  0x000078a3 setarg  0x00000053 
- 00028142  0x000078a4 copy  0x0000003f , 0x0000000b 
- 00028143  0x000078a5 branch  0x000050a8 
- 00028144  0x000078a8 bpatchx  0x000000c8 , 0x00004039 
- 00028145  0x000078a9 call  0x000052b8 
- 00028146  0x000078aa fetch  0x00000002 , 0x0000424e 
- 00028147  0x000078ab copy  0x0000003f , 0x00000002 
- 00028148  0x000078ac branch  0x000050b7 
- 00028149  0x000078af bpatchx  0x000000c9 , 0x00004039 
- 00028150  0x000078b0 call  0x000052d2 
- 00028151  0x000078b2 jam  0x00000003 , 0x000004fb 
- 00028152  0x000078b3 jam  0x0000001c , 0x000004fe 
- 00028153  0x000078b4 call  0x00006ba9 
- 00028154  0x000078b5 jam  0x00000001 , 0x00004563 
- 00028155  0x000078b6 rtn 
- 00028156  0x000078b9 bpatchx  0x000000ca , 0x00004039 
- 00028157  0x000078ba call  0x000052d2 
- 00028158  0x000078bb fetcht  0x00000001 , 0x00004564 
- 00028159  0x000078bc call  0x00006a79 
- 00028160  0x000078bd storet  0x00000001 , 0x0000455d 
- 00028161  0x000078be branch  0x00006bc4 
- 00028162  0x000078c1 bpatchx  0x000000cb , 0x00004039 
- 00028163  0x000078c2 call  0x000052d2 
- 00028164  0x000078c3 fetcht  0x00000001 , 0x0000455d 
- 00028165  0x000078c4 call  0x00006a73 
- 00028166  0x000078c5 call  0x00006a1a 
- 00028167  0x000078c6 store  0x00000001 , 0x000004fe 
- 00028168  0x000078c7 fetcht  0x00000001 , 0x0000455d 
- 00028169  0x000078c8 call  0x00006a73 
- 00028170  0x000078c9 storet  0x00000001 , 0x000004fb 
- 00028171  0x000078ca branch  0x00006ba9 
- 00028172  0x000078cd bpatchx  0x000000cc , 0x00004039 
- 00028173  0x000078ce call  0x000052d2 
- 00028174  0x000078cf fetcht  0x00000001 , 0x0000455d 
- 00028175  0x000078d0 call  0x00006a73 
- 00028176  0x000078d1 branch  0x00006bfc 
- 00028177  0x000078df bpatchx  0x000000cd , 0x00004039 
- 00028178  0x000078e0 fetch  0x00000002 , 0x00000264 
- 00028179  0x000078e1 iforce  0x00000006 
- 00028180  0x000078e4 ifetch  0x00000001 , 0x00000006 
- 00028181  0x000078e5 copy  0x0000003f , 0x00000012 
- 00028182  0x000078e6 store  0x00000001 , 0x0000051b 
- 00028183  0x000078e7 ifetch  0x00000002 , 0x00000006 
- 00028184  0x000078e8 store  0x00000002 , 0x0000051c 
- 00028185  0x000078e9 ifetch  0x00000001 , 0x00000006 
- 00028186  0x000078ea lshift8  0x0000003f , 0x0000000b 
- 00028187  0x000078eb ifetch  0x00000001 , 0x00000006 
- 00028188  0x000078ec iadd  0x0000000b , 0x0000000b 
- 00028189  0x000078ed bpatchx  0x000000ce , 0x00004039 
- 00028190  0x000078ee copy  0x00000006 , 0x00000002 
- 00028191  0x000078ef arg  0x00000004 , 0x00000039 
- 00028192  0x000078f0 arg  0x0000052a , 0x00000005 
- 00028193  0x000078f1 call  0x00007ec6 
- 00028194  0x000078f2 copy  0x00000002 , 0x00000006 
- 00028195  0x000078f3 deposit  0x00000012 
- 00028196  0x000078f4 beq  0x00000001 , 0x00006fba 
- 00028197  0x000078f5 beq  0x00000002 , 0x00006e2c 
- 00028198  0x000078f6 beq  0x00000003 , 0x00006fba 
- 00028199  0x000078f7 beq  0x00000004 , 0x00006e54 
- 00028200  0x000078f8 beq  0x00000005 , 0x00006fba 
- 00028201  0x000078f9 beq  0x00000006 , 0x00006f02 
- 00028202  0x000078fa beq  0x00000007 , 0x00006fba 
- 00028203  0x000078fb branch  0x00006fc1 
- 00028204  0x00007907 bpatchx  0x000000cf , 0x00004039 
- 00028205  0x00007908 call  0x00006fd0 
- 00028206  0x00007909 compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00028207  0x0000790a branch  0x00007040 , 0x00000001 
- 00028208  0x0000790b compare  0x000000ff , 0x00000002 , 0x000000ff 
- 00028209  0x0000790c branch  0x00006fc4 , 0x00000001 
- 00028210  0x0000790e ifetch  0x00000002 , 0x00000006 
- 00028211  0x0000790f store  0x00000002 , 0x00000522 
- 00028212  0x00007910 increase  0xfffffffe , 0x0000000b 
- 00028213  0x00007912 increase  0xffffffff , 0x0000000b 
- 00028214  0x00007913 nbranch  0x00006fbe , 0x00000005 
- 00028215  0x00007914 arg  0x00000511 , 0x0000000b 
- 00028216  0x00007915 ifetch  0x00000002 , 0x0000000b 
- 00028217  0x00007916 rtn  0x00000034 
- 00028218  0x00007917 call  0x00007082 
- 00028219  0x00007918 call  0x000052d0 
- 00028220  0x00007919 force  0x00000003 , 0x0000003f 
- 00028221  0x0000791a istore  0x00000001 , 0x00000005 
- 00028222  0x0000791b fetch  0x00000002 , 0x0000051c 
- 00028223  0x0000791c istore  0x00000002 , 0x00000005 
- 00028224  0x0000791d lshift2  0x00000007 , 0x0000003f 
- 00028225  0x0000791e add  0x0000003f , 0x00000005 , 0x0000003f 
- 00028226  0x0000791f add  0x0000003f , 0x00000005 , 0x00000013 
- 00028227  0x00007920 byteswap  0x0000003f , 0x0000003f 
- 00028228  0x00007921 istore  0x00000002 , 0x00000005 
- 00028229  0x00007922 deposit  0x00000007 
- 00028230  0x00007923 byteswap  0x0000003f , 0x0000003f 
- 00028231  0x00007924 istore  0x00000002 , 0x00000005 
- 00028232  0x00007925 istore  0x00000002 , 0x00000005 
- 00028233  0x00007926 arg  0x0000052a , 0x00000006 
- 00028234  0x00007927 copy  0x00000007 , 0x00000039 
- 00028235  0x00007928 branch  0x00006e4f , 0x00000005 
- 00028236  0x0000792a ifetch  0x00000004 , 0x00000006 
- 00028237  0x0000792b istore  0x00000004 , 0x00000005 
- 00028238  0x0000792c loop  0x00006e4c 
- 00028239  0x0000792e force  0x00000000 , 0x0000003f 
- 00028240  0x0000792f istore  0x00000001 , 0x00000005 
- 00028241  0x00007930 deposit  0x00000013 
- 00028242  0x00007931 store  0x00000002 , 0x00000275 
- 00028243  0x00007933 rtn 
- 00028244  0x0000793f bpatchx  0x000000d0 , 0x0000403a 
- 00028245  0x00007940 ifetch  0x00000004 , 0x00000006 
- 00028246  0x00007941 store  0x00000004 , 0x00000524 
- 00028247  0x00007942 increase  0xfffffffc , 0x0000000b 
- 00028248  0x00007943 call  0x00006f2e 
- 00028249  0x00007944 store  0x00000002 , 0x00000520 
- 00028250  0x00007945 increase  0xfffffffe , 0x0000000b 
- 00028251  0x00007946 call  0x00007028 
- 00028252  0x00007947 branch  0x00006fc4 , 0x00000005 
- 00028253  0x00007948 compare  0x00000005 , 0x00000011 , 0x000000ff 
- 00028254  0x0000794a branch  0x00006e62 , 0x00000001 
- 00028255  0x0000794c arg  0x0000052a , 0x00000005 
- 00028256  0x0000794d force  0x00000000 , 0x00000007 
- 00028257  0x0000794e branch  0x00006e71 
- 00028258  0x00007950 ifetch  0x00000001 , 0x00000006 
- 00028259  0x00007951 bne  0x0000000a , 0x00006fc4 
- 00028260  0x00007952 ifetch  0x00000002 , 0x00000006 
- 00028261  0x00007953 nbranch  0x00006e6f , 0x00000034 
- 00028262  0x00007954 ifetch  0x00000001 , 0x00000006 
- 00028263  0x00007955 bne  0x000000ff , 0x00006e6d 
- 00028264  0x00007956 ifetch  0x00000001 , 0x00000006 
- 00028265  0x00007957 bne  0x000000ff , 0x00006e6b 
- 00028266  0x00007958 branch  0x00006eb8 
- 00028267  0x0000795a increase  0xfffffffb , 0x00000006 
- 00028268  0x0000795b branch  0x00006e5f 
- 00028269  0x0000795d increase  0xfffffffc , 0x00000006 
- 00028270  0x0000795e branch  0x00006e5f 
- 00028271  0x00007960 increase  0xfffffffd , 0x00000006 
- 00028272  0x00007961 branch  0x00006e5f 
- 00028273  0x00007963 ifetch  0x00000001 , 0x00000006 
- 00028274  0x00007964 beq  0x00000009 , 0x00006e86 
- 00028275  0x00007965 beq  0x0000000a , 0x00006e74 
- 00028276  0x00007967 ifetch  0x00000002 , 0x00000006 
- 00028277  0x00007968 istore  0x00000002 , 0x00000005 
- 00028278  0x00007969 increase  0x00000001 , 0x00000007 
- 00028279  0x0000796a byteswap  0x0000003f , 0x00000012 
- 00028280  0x0000796b ifetch  0x00000002 , 0x00000006 
- 00028281  0x0000796c byteswap  0x0000003f , 0x0000003f 
- 00028282  0x0000796e increase  0x00000001 , 0x00000012 
- 00028283  0x0000796f isub  0x00000012 , 0x0000003e 
- 00028284  0x00007970 nbranch  0x00006e83 , 0x00000002 
- 00028285  0x00007971 copy  0x0000003f , 0x00000013 
- 00028286  0x00007972 byteswap  0x00000012 , 0x0000003f 
- 00028287  0x00007973 istore  0x00000002 , 0x00000005 
- 00028288  0x00007974 increase  0x00000001 , 0x00000007 
- 00028289  0x00007975 copy  0x00000013 , 0x0000003f 
- 00028290  0x00007976 branch  0x00006e7a 
- 00028291  0x00007978 increase  0xfffffffb , 0x0000000b 
- 00028292  0x00007979 increase  0xfffffffb , 0x00000011 
- 00028293  0x0000797a branch  0x00006e8b 
- 00028294  0x0000797c ifetch  0x00000002 , 0x00000006 
- 00028295  0x0000797d istore  0x00000002 , 0x00000005 
- 00028296  0x0000797e increase  0x00000001 , 0x00000007 
- 00028297  0x0000797f increase  0xfffffffd , 0x0000000b 
- 00028298  0x00007980 increase  0xfffffffd , 0x00000011 
- 00028299  0x00007982 nbranch  0x00006fc4 , 0x00000002 
- 00028300  0x00007983 nbranch  0x00006e71 , 0x00000005 
- 00028301  0x00007984 increase  0xffffffff , 0x0000000b 
- 00028302  0x00007985 nbranch  0x00006fc4 , 0x00000005 
- 00028303  0x00007987 call  0x000052d0 
- 00028304  0x00007988 increase  0x0000000a , 0x00000005 
- 00028305  0x00007989 arg  0x0000052a , 0x00000011 
- 00028306  0x0000798b copy  0x00000007 , 0x0000003f 
- 00028307  0x0000798c branch  0x00006ea5 , 0x00000034 
- 00028308  0x0000798d ifetch  0x00000002 , 0x00000011 
- 00028309  0x0000798e branch  0x00006ea5 , 0x00000034 
- 00028310  0x0000798f iforce  0x00000012 
- 00028311  0x00007990 fetch  0x00000004 , 0x00000524 
- 00028312  0x00007991 iforce  0x00000002 
- 00028313  0x00007992 call  0x000070e7 
- 00028314  0x00007993 copy  0x00000006 , 0x0000003f 
- 00028315  0x00007994 branch  0x00006ea2 , 0x00000034 
- 00028316  0x00007995 increase  0xfffffffd , 0x00000006 
- 00028317  0x00007996 ifetch  0x00000003 , 0x00000006 
- 00028318  0x00007997 istore  0x00000003 , 0x00000005 
- 00028319  0x00007998 call  0x0000705b 
- 00028320  0x00007999 iforce  0x00000039 
- 00028321  0x0000799a call  0x00007f01 
- 00028322  0x0000799c increase  0x00000002 , 0x00000011 
- 00028323  0x0000799d increase  0xffffffff , 0x00000007 
- 00028324  0x0000799e branch  0x00006e92 
- 00028325  0x000079a1 arg  0x00000005 , 0x00000011 
- 00028326  0x000079a2 call  0x00006f84 
- 00028327  0x000079a3 fetch  0x00000002 , 0x00000275 
- 00028328  0x000079a4 beq  0x0000000b , 0x00007043 
- 00028329  0x000079a5 branch  0x00006f9a 
- 00028330  0x000079a9 ifetch  0x00000001 , 0x00000006 
- 00028331  0x000079aa beq  0x00000000 , 0x00006eae 
- 00028332  0x000079ab beq  0x00000001 , 0x00006eb0 
- 00028333  0x000079ac beq  0x00000002 , 0x00006eb3 
- 00028334  0x000079ae increase  0xffffffff , 0x0000000b 
- 00028335  0x000079af branch  0x00006eb6 
- 00028336  0x000079b1 ifetch  0x00000001 , 0x00000006 
- 00028337  0x000079b2 increase  0xfffffffe , 0x0000000b 
- 00028338  0x000079b3 branch  0x00006eb6 
- 00028339  0x000079b5 ifetch  0x00000002 , 0x00000006 
- 00028340  0x000079b6 byteswap  0x0000003f , 0x0000003f 
- 00028341  0x000079b7 increase  0xfffffffd , 0x0000000b 
- 00028342  0x000079b9 store  0x00000002 , 0x00000519 
- 00028343  0x000079ba rtn 
- 00028344  0x000079bd increase  0xfffffffb , 0x0000000b 
- 00028345  0x000079be call  0x00006eaa 
- 00028346  0x000079bf nbranch  0x00006fbe , 0x00000005 
- 00028347  0x000079c0 fetcht  0x00000004 , 0x00000524 
- 00028348  0x000079c1 call  0x000070b1 
- 00028349  0x000079c2 nbranch  0x00006fbb , 0x00000005 
- 00028350  0x000079c3 copy  0x00000006 , 0x00000011 
- 00028351  0x000079c4 call  0x000052d0 
- 00028352  0x000079c5 copy  0x00000011 , 0x00000006 
- 00028353  0x000079c6 increase  0x00000003 , 0x00000005 
- 00028354  0x000079c7 copy  0x00000006 , 0x0000000b 
- 00028355  0x000079c8 call  0x00007062 
- 00028356  0x000079c9 copy  0x0000003f , 0x00000011 
- 00028357  0x000079cb fetch  0x00000002 , 0x00000519 
- 00028358  0x000079cc copy  0x0000003f , 0x00000012 
- 00028359  0x000079cd copy  0x00000011 , 0x0000003f 
- 00028360  0x000079ce isub  0x00000012 , 0x00000012 
- 00028361  0x000079cf fetch  0x00000002 , 0x00000520 
- 00028362  0x000079d0 isub  0x00000012 , 0x0000003e 
- 00028363  0x000079d1 nbranch  0x00006ee7 , 0x00000002 
- 00028364  0x000079d3 disable  0x00000028 
- 00028365  0x000079d4 fetch  0x00000002 , 0x00000519 
- 00028366  0x000079d5 branch  0x00006eda , 0x00000034 
- 00028367  0x000079d6 iadd  0x0000000b , 0x00000006 
- 00028368  0x000079d7 increase  0x00000003 , 0x00000012 
- 00028369  0x000079d8 copy  0x00000012 , 0x00000039 
- 00028370  0x000079d9 copy  0x00000039 , 0x0000003f 
- 00028371  0x000079da increase  0x00000003 , 0x0000003f 
- 00028372  0x000079db byteswap  0x0000003f , 0x0000003f 
- 00028373  0x000079dc istore  0x00000002 , 0x00000005 
- 00028374  0x000079dd copy  0x00000039 , 0x0000003f 
- 00028375  0x000079de byteswap  0x0000003f , 0x0000003f 
- 00028376  0x000079df istore  0x00000002 , 0x00000005 
- 00028377  0x000079e0 branch  0x00006ef5 
- 00028378  0x000079e2 add  0x00000011 , 0x00000006 , 0x00000039 
- 00028379  0x000079e3 branch  0x00006ede , 0x00000028 
- 00028380  0x000079e4 byteswap  0x00000039 , 0x0000003f 
- 00028381  0x000079e5 branch  0x00006ee1 
- 00028382  0x000079e7 copy  0x00000039 , 0x0000003f 
- 00028383  0x000079e8 increase  0x00000002 , 0x0000003f 
- 00028384  0x000079e9 byteswap  0x0000003f , 0x0000003f 
- 00028385  0x000079eb istore  0x00000002 , 0x00000005 
- 00028386  0x000079ec increase  0xfffffffd , 0x00000039 
- 00028387  0x000079ed byteswap  0x00000039 , 0x0000003f 
- 00028388  0x000079ee istore  0x00000002 , 0x00000005 
- 00028389  0x000079ef copy  0x0000000b , 0x00000006 
- 00028390  0x000079f0 branch  0x00006ef5 
- 00028391  0x000079f2 enable  0x00000028 
- 00028392  0x000079f4 fetch  0x00000002 , 0x00000520 
- 00028393  0x000079f5 copy  0x0000003f , 0x00000011 
- 00028394  0x000079f6 copy  0x00000011 , 0x00000039 
- 00028395  0x000079f7 fetch  0x00000002 , 0x00000519 
- 00028396  0x000079f8 branch  0x00006eda , 0x00000034 
- 00028397  0x000079f9 iadd  0x0000000b , 0x00000006 
- 00028398  0x000079fa copy  0x00000011 , 0x0000003f 
- 00028399  0x000079fb increase  0x00000005 , 0x0000003f 
- 00028400  0x000079fc byteswap  0x0000003f , 0x0000003f 
- 00028401  0x000079fd istore  0x00000002 , 0x00000005 
- 00028402  0x000079fe copy  0x00000011 , 0x0000003f 
- 00028403  0x000079ff byteswap  0x0000003f , 0x0000003f 
- 00028404  0x00007a00 istore  0x00000002 , 0x00000005 
- 00028405  0x00007a02 call  0x00007f01 
- 00028406  0x00007a03 nbranch  0x00006efe , 0x00000028 
- 00028407  0x00007a04 force  0x00000002 , 0x0000003f 
- 00028408  0x00007a05 istore  0x00000001 , 0x00000005 
- 00028409  0x00007a06 copy  0x00000006 , 0x0000003f 
- 00028410  0x00007a07 isub  0x0000000b , 0x0000003f 
- 00028411  0x00007a08 byteswap  0x0000003f , 0x0000003f 
- 00028412  0x00007a09 istore  0x00000002 , 0x00000005 
- 00028413  0x00007a0a branch  0x00006f00 
- 00028414  0x00007a0c force  0x00000000 , 0x0000003f 
- 00028415  0x00007a0d istore  0x00000001 , 0x00000005 
- 00028416  0x00007a0f arg  0x00000005 , 0x00000011 
- 00028417  0x00007a10 branch  0x00006fb0 
- 00028418  0x00007a1c bpatchx  0x000000d1 , 0x0000403a 
- 00028419  0x00007a1d call  0x00006fd0 
- 00028420  0x00007a1e compare  0x000000ff , 0x00000002 , 0x000000ff 
- 00028421  0x00007a1f branch  0x00006fc4 , 0x00000001 
- 00028422  0x00007a20 call  0x00006f2e 
- 00028423  0x00007a21 store  0x00000002 , 0x00000520 
- 00028424  0x00007a22 increase  0xfffffffe , 0x0000000b 
- 00028425  0x00007a23 call  0x00007028 
- 00028426  0x00007a24 arg  0x0000052a , 0x00000005 
- 00028427  0x00007a25 force  0x00000000 , 0x00000007 
- 00028428  0x00007a27 ifetch  0x00000001 , 0x00000006 
- 00028429  0x00007a28 beq  0x0000000a , 0x00006f36 
- 00028430  0x00007a29 ifetch  0x00000002 , 0x00000006 
- 00028431  0x00007a2a istore  0x00000002 , 0x00000005 
- 00028432  0x00007a2b increase  0x00000001 , 0x00000007 
- 00028433  0x00007a2c increase  0xfffffffd , 0x0000000b 
- 00028434  0x00007a2d increase  0xfffffffd , 0x00000011 
- 00028435  0x00007a2e nbranch  0x00006fc4 , 0x00000002 
- 00028436  0x00007a2f nbranch  0x00006f0c , 0x00000005 
- 00028437  0x00007a30 increase  0xffffffff , 0x0000000b 
- 00028438  0x00007a31 nbranch  0x00006fc4 , 0x00000005 
- 00028439  0x00007a32 call  0x000052d0 
- 00028440  0x00007a33 increase  0x0000000d , 0x00000005 
- 00028441  0x00007a34 fetch  0x00000002 , 0x00000511 
- 00028442  0x00007a35 iforce  0x00000013 
- 00028443  0x00007a36 arg  0x0000052a , 0x00000011 
- 00028444  0x00007a38 ifetch  0x00000002 , 0x00000011 
- 00028445  0x00007a39 branch  0x00006f29 , 0x00000034 
- 00028446  0x00007a3a iforce  0x00000012 
- 00028447  0x00007a3b call  0x000070c6 
- 00028448  0x00007a3c branch  0x00006f27 , 0x00000034 
- 00028449  0x00007a3d increase  0xfffffffd , 0x00000006 
- 00028450  0x00007a3e ifetch  0x00000003 , 0x00000006 
- 00028451  0x00007a3f istore  0x00000003 , 0x00000005 
- 00028452  0x00007a40 call  0x0000705b 
- 00028453  0x00007a41 iforce  0x00000039 
- 00028454  0x00007a42 call  0x00007f01 
- 00028455  0x00007a44 increase  0x00000002 , 0x00000011 
- 00028456  0x00007a45 branch  0x00006f1c 
- 00028457  0x00007a48 call  0x00006f83 
- 00028458  0x00007a49 fetch  0x00000002 , 0x00000275 
- 00028459  0x00007a4a beq  0x0000000e , 0x00007046 
- 00028460  0x00007a4b call  0x00006f9a 
- 00028461  0x00007a4c branch  0x00006f9a 
- 00028462  0x00007a50 ifetch  0x00000002 , 0x00000006 
- 00028463  0x00007a51 byteswap  0x0000003f , 0x0000003f 
- 00028464  0x00007a52 increase  0xfffffffd , 0x0000003f 
- 00028465  0x00007a53 arg  0x000000c8 , 0x00000002 
- 00028466  0x00007a54 isub  0x00000002 , 0x0000003e 
- 00028467  0x00007a55 nrtn  0x00000002 
- 00028468  0x00007a56 setarg  0x000000c8 
- 00028469  0x00007a57 rtn 
- 00028470  0x00007a5b increase  0x00000004 , 0x00000006 
- 00028471  0x00007a5c increase  0xfffffffb , 0x0000000b 
- 00028472  0x00007a5d increase  0xfffffffb , 0x00000011 
- 00028473  0x00007a5e nbranch  0x00006fc4 , 0x00000005 
- 00028474  0x00007a5f call  0x00006eaa 
- 00028475  0x00007a60 nbranch  0x00006fbe , 0x00000005 
- 00028476  0x00007a61 arg  0x00000511 , 0x0000000b 
- 00028477  0x00007a62 call  0x00007082 
- 00028478  0x00007a63 deposit  0x00000007 
- 00028479  0x00007a64 branch  0x00007046 , 0x00000034 
- 00028480  0x00007a65 store  0x00000001 , 0x0000054e 
- 00028481  0x00007a67 copy  0x00000012 , 0x0000003f 
- 00028482  0x00007a68 store  0x00000002 , 0x0000054c 
- 00028483  0x00007a69 arg  0x00000000 , 0x00000007 
- 00028484  0x00007a6a arg  0x00000000 , 0x00000011 
- 00028485  0x00007a6b call  0x000052d0 
- 00028486  0x00007a6c increase  0x0000000a , 0x00000005 
- 00028487  0x00007a6e call  0x00006f6c 
- 00028488  0x00007a6f nbranch  0x00002a8c , 0x00000028 
- 00028489  0x00007a70 copy  0x00000006 , 0x0000000b 
- 00028490  0x00007a71 copy  0x0000003f , 0x00000013 
- 00028491  0x00007a72 iadd  0x00000011 , 0x00000011 
- 00028492  0x00007a75 fetch  0x00000002 , 0x00000519 
- 00028493  0x00007a76 copy  0x0000003f , 0x00000012 
- 00028494  0x00007a77 branch  0x00006f75 , 0x00000034 
- 00028495  0x00007a79 copy  0x00000011 , 0x0000003f 
- 00028496  0x00007a7a isub  0x00000012 , 0x00000012 
- 00028497  0x00007a7b branch  0x00006f67 , 0x00000005 
- 00028498  0x00007a7c nbranch  0x00006f67 , 0x00000002 
- 00028499  0x00007a7d fetch  0x00000002 , 0x00000520 
- 00028500  0x00007a7e isub  0x00000012 , 0x0000003e 
- 00028501  0x00007a7f branch  0x00006f5e , 0x00000005 
- 00028502  0x00007a80 nbranch  0x00006f5e , 0x00000002 
- 00028503  0x00007a84 copy  0x00000012 , 0x00000039 
- 00028504  0x00007a85 call  0x00006f61 
- 00028505  0x00007a86 fetch  0x00000001 , 0x0000054e 
- 00028506  0x00007a87 increase  0x00000001 , 0x00000007 
- 00028507  0x00007a88 isub  0x00000007 , 0x0000003e 
- 00028508  0x00007a89 branch  0x00006f83 , 0x00000005 
- 00028509  0x00007a8a branch  0x00006fa0 
- 00028510  0x00007a8d copy  0x0000003f , 0x00000039 
- 00028511  0x00007a8e call  0x00006f61 
- 00028512  0x00007a8f branch  0x00006fa0 
- 00028513  0x00007a92 increase  0xfffffffd , 0x00000005 
- 00028514  0x00007a93 copy  0x00000039 , 0x00000002 
- 00028515  0x00007a94 copy  0x00000013 , 0x0000003f 
- 00028516  0x00007a95 isub  0x00000012 , 0x0000003f 
- 00028517  0x00007a96 iadd  0x0000000b , 0x00000006 
- 00028518  0x00007a97 branch  0x00007f01 
- 00028519  0x00007a9a fetch  0x00000001 , 0x0000054e 
- 00028520  0x00007a9b increase  0x00000001 , 0x00000007 
- 00028521  0x00007a9c isub  0x00000007 , 0x0000003e 
- 00028522  0x00007a9d rtn  0x00000005 
- 00028523  0x00007a9e branch  0x00006f47 
- 00028524  0x00007aa1 call  0x00007fe9 
- 00028525  0x00007aa2 arg  0x0000052a , 0x00000006 
- 00028526  0x00007aa3 lshift2  0x00000007 , 0x0000003f 
- 00028527  0x00007aa4 iadd  0x00000006 , 0x00000006 
- 00028528  0x00007aa5 ifetcht  0x00000004 , 0x00000006 
- 00028529  0x00007aa6 call  0x000070b1 
- 00028530  0x00007aa7 nrtn  0x00000005 
- 00028531  0x00007aa8 call  0x0000705b 
- 00028532  0x00007aa9 branch  0x00007fe7 
- 00028533  0x00007aac fetch  0x00000002 , 0x00000520 
- 00028534  0x00007aad isub  0x00000011 , 0x0000003e 
- 00028535  0x00007aae nbranch  0x00006f8f , 0x00000002 
- 00028536  0x00007aaf copy  0x00000011 , 0x00000039 
- 00028537  0x00007ab0 copy  0x00000039 , 0x00000002 
- 00028538  0x00007ab1 copy  0x0000000b , 0x00000006 
- 00028539  0x00007ab2 call  0x00007f01 
- 00028540  0x00007ab3 fetch  0x00000002 , 0x0000054c 
- 00028541  0x00007ab4 isub  0x00000011 , 0x0000003e 
- 00028542  0x00007ab5 branch  0x00006f81 , 0x00000005 
- 00028543  0x00007ab7 call  0x00006fa0 
- 00028544  0x00007ab8 branch  0x00006f94 
- 00028545  0x00007abb call  0x00006f83 
- 00028546  0x00007abc branch  0x00006f94 
- 00028547  0x00007abf arg  0x00000007 , 0x00000011 
- 00028548  0x00007ac1 force  0x00000000 , 0x0000003f 
- 00028549  0x00007ac2 istore  0x00000001 , 0x00000005 
- 00028550  0x00007ac3 call  0x00006fb0 
- 00028551  0x00007ac4 fetcht  0x00000002 , 0x00000275 
- 00028552  0x00007ac5 increase  0xfffffffb , 0x00000002 
- 00028553  0x00007ac6 byteswap  0x00000002 , 0x0000003f 
- 00028554  0x00007ac7 istore  0x00000002 , 0x00000005 
- 00028555  0x00007ac8 increase  0xfffffffd , 0x00000002 
- 00028556  0x00007ac9 byteswap  0x00000002 , 0x0000003f 
- 00028557  0x00007aca istore  0x00000002 , 0x00000005 
- 00028558  0x00007acb rtn 
- 00028559  0x00007ace copy  0x0000003f , 0x00000039 
- 00028560  0x00007acf copy  0x00000039 , 0x00000002 
- 00028561  0x00007ad0 copy  0x0000000b , 0x00000006 
- 00028562  0x00007ad1 call  0x00007f01 
- 00028563  0x00007ad2 call  0x00006fa0 
- 00028564  0x00007ad4 setarg  0x00000036 
- 00028565  0x00007ad5 istore  0x00000001 , 0x00000005 
- 00028566  0x00007ad6 fetch  0x00000002 , 0x0000054c 
- 00028567  0x00007ad7 byteswap  0x0000003f , 0x0000003f 
- 00028568  0x00007ad8 istore  0x00000002 , 0x00000005 
- 00028569  0x00007ad9 rtn 
- 00028570  0x00007adc setarg  0x00000036 
- 00028571  0x00007add istore  0x00000001 , 0x00000005 
- 00028572  0x00007ade increase  0xfffffffd , 0x00000002 
- 00028573  0x00007adf byteswap  0x00000002 , 0x0000003f 
- 00028574  0x00007ae0 istore  0x00000002 , 0x00000005 
- 00028575  0x00007ae1 rtn 
- 00028576  0x00007ae4 arg  0x00000007 , 0x00000011 
- 00028577  0x00007ae5 setarg  0x00000002 
- 00028578  0x00007ae6 istore  0x00000001 , 0x00000005 
- 00028579  0x00007ae7 fetch  0x00000002 , 0x00000519 
- 00028580  0x00007ae8 iadd  0x00000002 , 0x00000002 
- 00028581  0x00007ae9 byteswap  0x00000002 , 0x0000003f 
- 00028582  0x00007aea istore  0x00000002 , 0x00000005 
- 00028583  0x00007aeb call  0x00006fb0 
- 00028584  0x00007aec fetcht  0x00000002 , 0x00000275 
- 00028585  0x00007aed increase  0xfffffffb , 0x00000002 
- 00028586  0x00007aee byteswap  0x00000002 , 0x0000003f 
- 00028587  0x00007aef istore  0x00000002 , 0x00000005 
- 00028588  0x00007af0 increase  0xfffffffb , 0x00000002 
- 00028589  0x00007af1 byteswap  0x00000002 , 0x0000003f 
- 00028590  0x00007af2 istore  0x00000002 , 0x00000005 
- 00028591  0x00007af3 rtn 
- 00028592  0x00007af6 fetch  0x00000002 , 0x00000273 
- 00028593  0x00007af7 isub  0x00000005 , 0x0000003f 
- 00028594  0x00007af8 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00028595  0x00007af9 store  0x00000002 , 0x00000275 
- 00028596  0x00007afa call  0x000052d0 
- 00028597  0x00007afb copy  0x00000011 , 0x0000003f 
- 00028598  0x00007afc istore  0x00000001 , 0x00000005 
- 00028599  0x00007afd fetch  0x00000002 , 0x0000051c 
- 00028600  0x00007afe istore  0x00000002 , 0x00000005 
- 00028601  0x00007aff rtn 
- 00028602  0x00007b10 rtn 
- 00028603  0x00007b32 setarg  0x00000200 
- 00028604  0x00007b33 store  0x00000002 , 0x0000054a 
- 00028605  0x00007b34 branch  0x00006fc6 
- 00028606  0x00007b36 setarg  0x00000400 
- 00028607  0x00007b37 store  0x00000002 , 0x0000054a 
- 00028608  0x00007b38 branch  0x00006fc6 
- 00028609  0x00007b3a setarg  0x00000600 
- 00028610  0x00007b3b store  0x00000002 , 0x0000054a 
- 00028611  0x00007b3c branch  0x00006fc6 
- 00028612  0x00007b3e setarg  0x00000300 
- 00028613  0x00007b3f store  0x00000002 , 0x0000054a 
- 00028614  0x00007b41 call  0x000052d0 
- 00028615  0x00007b42 istore  0x00000001 , 0x00000005 
- 00028616  0x00007b43 fetch  0x00000002 , 0x0000051c 
- 00028617  0x00007b44 istore  0x00000002 , 0x00000005 
- 00028618  0x00007b45 setarg  0x00000200 
- 00028619  0x00007b46 istore  0x00000002 , 0x00000005 
- 00028620  0x00007b47 fetch  0x00000002 , 0x0000054a 
- 00028621  0x00007b48 istore  0x00000002 , 0x00000005 
- 00028622  0x00007b49 jam  0x00000007 , 0x00000275 
- 00028623  0x00007b4a rtn 
- 00028624  0x00007b50 arg  0x00000000 , 0x00000012 
- 00028625  0x00007b51 force  0x00000000 , 0x00000002 
- 00028626  0x00007b52 arg  0x00000511 , 0x00000005 
- 00028627  0x00007b53 call  0x00007028 
- 00028628  0x00007b54 branch  0x00007026 , 0x00000005 
- 00028629  0x00007b56 increase  0x00000001 , 0x00000012 
- 00028630  0x00007b57 ifetch  0x00000001 , 0x00000006 
- 00028631  0x00007b58 increase  0xffffffff , 0x00000011 
- 00028632  0x00007b59 increase  0xffffffff , 0x0000000b 
- 00028633  0x00007b5a compare  0x00000018 , 0x0000003f , 0x000000f8 
- 00028634  0x00007b5b nbranch  0x00007026 , 0x00000001 
- 00028635  0x00007b5c compare  0x00000004 , 0x0000003f , 0x00000007 
- 00028636  0x00007b5d nbranch  0x00006ff3 , 0x00000001 
- 00028637  0x00007b5e force  0x00000001 , 0x00000002 
- 00028638  0x00007b60 ifetch  0x00000001 , 0x00000006 
- 00028639  0x00007b61 increase  0xffffffff , 0x00000011 
- 00028640  0x00007b62 increase  0xffffffff , 0x0000000b 
- 00028641  0x00007b63 bne  0x00000000 , 0x00006fe7 
- 00028642  0x00007b64 ifetch  0x00000001 , 0x00000006 
- 00028643  0x00007b65 increase  0xffffffff , 0x00000011 
- 00028644  0x00007b66 increase  0xffffffff , 0x0000000b 
- 00028645  0x00007b67 beq  0x00000000 , 0x00006ff8 
- 00028646  0x00007b68 branch  0x00006fea 
- 00028647  0x00007b6a increase  0x00000001 , 0x00000006 
- 00028648  0x00007b6b increase  0xffffffff , 0x00000011 
- 00028649  0x00007b6c increase  0xffffffff , 0x0000000b 
- 00028650  0x00007b6e increase  0x00000002 , 0x00000006 
- 00028651  0x00007b6f increase  0xfffffffe , 0x00000011 
- 00028652  0x00007b70 increase  0xfffffffe , 0x0000000b 
- 00028653  0x00007b71 compare  0x00000000 , 0x00000002 , 0x000000ff 
- 00028654  0x00007b72 branch  0x00007020 , 0x00000001 
- 00028655  0x00007b73 increase  0x0000000c , 0x00000006 
- 00028656  0x00007b74 increase  0xfffffff4 , 0x00000011 
- 00028657  0x00007b75 increase  0xfffffff4 , 0x0000000b 
- 00028658  0x00007b76 branch  0x00007020 
- 00028659  0x00007b78 compare  0x00000002 , 0x0000003f , 0x00000007 
- 00028660  0x00007b79 nbranch  0x00006ff6 , 0x00000001 
- 00028661  0x00007b7a branch  0x00006fde 
- 00028662  0x00007b7c compare  0x00000001 , 0x0000003f , 0x00000007 
- 00028663  0x00007b7d nbranch  0x00007026 , 0x00000001 
- 00028664  0x00007b7f increase  0xfffffffe , 0x00000011 
- 00028665  0x00007b80 increase  0xfffffffe , 0x0000000b 
- 00028666  0x00007b81 ifetch  0x00000002 , 0x00000006 
- 00028667  0x00007b82 sub  0x00000012 , 0x00000004 , 0x0000003e 
- 00028668  0x00007b83 branch  0x00006ffe , 0x00000005 
- 00028669  0x00007b84 istore  0x00000002 , 0x00000005 
- 00028670  0x00007b86 compare  0x00000000 , 0x00000002 , 0x000000ff 
- 00028671  0x00007b87 branch  0x00007020 , 0x00000001 
- 00028672  0x00007b88 copy  0x00000006 , 0x00000002 
- 00028673  0x00007b89 ifetch  0x00000001 , 0x00000006 
- 00028674  0x00007b8a bne  0x00000000 , 0x00007019 
- 00028675  0x00007b8b ifetch  0x00000001 , 0x00000006 
- 00028676  0x00007b8c bne  0x00000000 , 0x00007019 
- 00028677  0x00007b8d ifetch  0x00000001 , 0x00000006 
- 00028678  0x00007b8e bne  0x00000010 , 0x00007019 
- 00028679  0x00007b8f ifetch  0x00000001 , 0x00000006 
- 00028680  0x00007b90 bne  0x00000000 , 0x00007019 
- 00028681  0x00007b91 ifetch  0x00000001 , 0x00000006 
- 00028682  0x00007b92 bne  0x00000080 , 0x00007019 
- 00028683  0x00007b93 ifetch  0x00000001 , 0x00000006 
- 00028684  0x00007b94 bne  0x00000000 , 0x00007019 
- 00028685  0x00007b95 ifetch  0x00000001 , 0x00000006 
- 00028686  0x00007b96 bne  0x00000000 , 0x00007019 
- 00028687  0x00007b97 ifetch  0x00000001 , 0x00000006 
- 00028688  0x00007b98 bne  0x00000080 , 0x00007019 
- 00028689  0x00007b99 ifetch  0x00000001 , 0x00000006 
- 00028690  0x00007b9a bne  0x0000005f , 0x00007019 
- 00028691  0x00007b9b ifetch  0x00000001 , 0x00000006 
- 00028692  0x00007b9c bne  0x0000009b , 0x00007019 
- 00028693  0x00007b9d ifetch  0x00000001 , 0x00000006 
- 00028694  0x00007b9e bne  0x00000034 , 0x00007019 
- 00028695  0x00007b9f ifetch  0x00000001 , 0x00000006 
- 00028696  0x00007ba0 beq  0x000000fb , 0x0000701e 
- 00028697  0x00007ba2 copy  0x00000002 , 0x00000006 
- 00028698  0x00007ba4 increase  0x0000000c , 0x00000006 
- 00028699  0x00007ba5 force  0x00000000 , 0x00000007 
- 00028700  0x00007ba6 force  0x00000000 , 0x00000002 
- 00028701  0x00007ba7 branch  0x0000701e 
- 00028702  0x00007baa increase  0xfffffff4 , 0x0000000b 
- 00028703  0x00007bab increase  0xfffffff4 , 0x00000011 
- 00028704  0x00007bad force  0x00000000 , 0x00000002 
- 00028705  0x00007bae compare  0x00000000 , 0x00000011 , 0x000000ff 
- 00028706  0x00007baf nbranch  0x00006fd5 , 0x00000001 
- 00028707  0x00007bb0 force  0x00000000 , 0x0000003f 
- 00028708  0x00007bb1 istore  0x00000002 , 0x00000005 
- 00028709  0x00007bb2 rtn 
- 00028710  0x00007bb4 arg  0x000000ff , 0x00000002 
- 00028711  0x00007bb5 rtn 
- 00028712  0x00007bc0 bpatchx  0x000000d4 , 0x0000403a 
- 00028713  0x00007bc1 ifetch  0x00000001 , 0x00000006 
- 00028714  0x00007bc2 increase  0xffffffff , 0x0000000b 
- 00028715  0x00007bc3 compare  0x00000030 , 0x0000003f , 0x000000f8 
- 00028716  0x00007bc4 nbranch  0x0000703e , 0x00000001 
- 00028717  0x00007bc5 compare  0x00000007 , 0x0000003f , 0x00000007 
- 00028718  0x00007bc6 branch  0x00007037 , 0x00000001 
- 00028719  0x00007bc7 compare  0x00000006 , 0x0000003f , 0x00000007 
- 00028720  0x00007bc8 branch  0x00007039 , 0x00000001 
- 00028721  0x00007bc9 compare  0x00000005 , 0x0000003f , 0x00000007 
- 00028722  0x00007bca nbranch  0x0000703e , 0x00000001 
- 00028723  0x00007bcc ifetch  0x00000001 , 0x00000006 
- 00028724  0x00007bcd copy  0x0000003f , 0x00000011 
- 00028725  0x00007bce increase  0xffffffff , 0x0000000b 
- 00028726  0x00007bcf branch  0x0000703c 
- 00028727  0x00007bd1 increase  0x00000002 , 0x00000006 
- 00028728  0x00007bd2 increase  0xfffffffe , 0x0000000b 
- 00028729  0x00007bd4 ifetch  0x00000002 , 0x00000006 
- 00028730  0x00007bd5 byteswap  0x0000003f , 0x00000011 
- 00028731  0x00007bd6 increase  0xfffffffe , 0x0000000b 
- 00028732  0x00007bd8 force  0x00000001 , 0x0000003f 
- 00028733  0x00007bd9 rtn 
- 00028734  0x00007bdb force  0x00000000 , 0x0000003f 
- 00028735  0x00007bdc rtn 
- 00028736  0x00007be7 setarg  0x00000003 
- 00028737  0x00007be8 store  0x00000001 , 0x0000051b 
- 00028738  0x00007be9 branch  0x00007048 
- 00028739  0x00007beb setarg  0x00000005 
- 00028740  0x00007bec store  0x00000001 , 0x0000051b 
- 00028741  0x00007bed branch  0x00007048 
- 00028742  0x00007bef setarg  0x00000007 
- 00028743  0x00007bf0 store  0x00000001 , 0x0000051b 
- 00028744  0x00007bf2 call  0x000052d0 
- 00028745  0x00007bf5 fetch  0x00000001 , 0x0000051b 
- 00028746  0x00007bf6 copy  0x0000003f , 0x00000012 
- 00028747  0x00007bf7 istore  0x00000001 , 0x00000005 
- 00028748  0x00007bf8 fetch  0x00000002 , 0x0000051c 
- 00028749  0x00007bf9 istore  0x00000002 , 0x00000005 
- 00028750  0x00007bfa setarg  0x00000500 
- 00028751  0x00007bfb istore  0x00000002 , 0x00000005 
- 00028752  0x00007bfc compare  0x00000005 , 0x00000012 , 0x000000ff 
- 00028753  0x00007bfd branch  0x00007057 , 0x00000001 
- 00028754  0x00007bfe compare  0x00000007 , 0x00000012 , 0x000000ff 
- 00028755  0x00007bff branch  0x00007057 , 0x00000001 
- 00028756  0x00007c00 setarg  0x00000000 
- 00028757  0x00007c01 istore  0x00000005 , 0x00000005 
- 00028758  0x00007c02 branch  0x00007059 
- 00028759  0x00007c05 setarg  0x00350200 
- 00028760  0x00007c06 istore  0x00000005 , 0x00000005 
- 00028761  0x00007c08 jam  0x0000000a , 0x00000275 
- 00028762  0x00007c09 rtn 
- 00028763  0x00007c0d call  0x00007ea2 
- 00028764  0x00007c0e call  0x00007ea5 
- 00028765  0x00007c0f call  0x00007062 
- 00028766  0x00007c10 call  0x00007e9c 
- 00028767  0x00007c11 call  0x00007e9f 
- 00028768  0x00007c12 copy  0x00000002 , 0x0000003f 
- 00028769  0x00007c13 rtn 
- 00028770  0x00007c17 ifetch  0x00000001 , 0x00000006 
- 00028771  0x00007c18 and  0x0000003f , 0x00000007 , 0x00000039 
- 00028772  0x00007c19 rshift3  0x0000003f , 0x0000003f 
- 00028773  0x00007c1a bne  0x00000000 , 0x0000706c 
- 00028774  0x00007c1c force  0x00000001 , 0x0000003f 
- 00028775  0x00007c1d force  0x00000001 , 0x00000002 
- 00028776  0x00007c1e rtn 
- 00028777  0x00007c21 call  0x00007e76 
- 00028778  0x00007c22 add  0x0000003f , 0x00000001 , 0x00000002 
- 00028779  0x00007c23 rtn 
- 00028780  0x00007c25 deposit  0x00000039 
- 00028781  0x00007c26 sub  0x0000003f , 0x00000004 , 0x0000003e 
- 00028782  0x00007c27 branch  0x00007069 , 0x00000002 
- 00028783  0x00007c28 beq  0x00000005 , 0x00007073 
- 00028784  0x00007c29 beq  0x00000006 , 0x00007076 
- 00028785  0x00007c2a beq  0x00000007 , 0x0000707a 
- 00028786  0x00007c2b rtn 
- 00028787  0x00007c2e ifetch  0x00000001 , 0x00000006 
- 00028788  0x00007c2f add  0x0000003f , 0x00000002 , 0x00000002 
- 00028789  0x00007c30 rtn 
- 00028790  0x00007c32 ifetch  0x00000002 , 0x00000006 
- 00028791  0x00007c33 byteswap  0x0000003f , 0x0000003f 
- 00028792  0x00007c34 add  0x0000003f , 0x00000003 , 0x00000002 
- 00028793  0x00007c35 rtn 
- 00028794  0x00007c37 ifetch  0x00000002 , 0x00000006 
- 00028795  0x00007c38 byteswap  0x0000003f , 0x0000003f 
- 00028796  0x00007c39 ifetcht  0x00000002 , 0x00000006 
- 00028797  0x00007c3a byteswap  0x00000002 , 0x00000002 
- 00028798  0x00007c3b lshift16  0x00000002 , 0x00000002 
- 00028799  0x00007c3c iadd  0x00000002 , 0x0000003f 
- 00028800  0x00007c3d add  0x0000003f , 0x00000005 , 0x00000002 
- 00028801  0x00007c3e rtn 
- 00028802  0x00007c45 bpatchx  0x000000d5 , 0x0000403a 
- 00028803  0x00007c46 force  0x00000000 , 0x00000007 
- 00028804  0x00007c47 arg  0x00000000 , 0x00000012 
- 00028805  0x00007c48 arg  0x0000052a , 0x00000005 
- 00028806  0x00007c4a ifetch  0x00000002 , 0x0000000b 
- 00028807  0x00007c4b rtn  0x00000034 
- 00028808  0x00007c4c call  0x0000708d 
- 00028809  0x00007c4d copy  0x00000007 , 0x0000003f 
- 00028810  0x00007c4e rtneq  0x00000007 
- 00028811  0x00007c4f increase  0x00000002 , 0x0000000b 
- 00028812  0x00007c50 branch  0x00007086 
- 00028813  0x00007c54 iforce  0x00000013 
- 00028814  0x00007c56 fetch  0x00000002 , 0x00004575 
- 00028815  0x00007c57 iforce  0x00000006 
- 00028816  0x00007c59 copy  0x00000007 , 0x0000003f 
- 00028817  0x00007c5a rtneq  0x00000007 
- 00028818  0x00007c5b disable  0x00000028 
- 00028819  0x00007c5c ifetch  0x00000001 , 0x00000006 
- 00028820  0x00007c5d rtn  0x00000034 
- 00028821  0x00007c5e iforce  0x00000039 
- 00028822  0x00007c60 ifetch  0x00000002 , 0x00000006 
- 00028823  0x00007c61 isub  0x00000013 , 0x0000003e 
- 00028824  0x00007c62 nbranch  0x0000709a , 0x00000005 
- 00028825  0x00007c63 enable  0x00000028 
- 00028826  0x00007c65 loop  0x00007096 
- 00028827  0x00007c66 ifetcht  0x00000004 , 0x00000006 
- 00028828  0x00007c67 copy  0x00000006 , 0x00000011 
- 00028829  0x00007c68 nbranch  0x000070ad , 0x00000028 
- 00028830  0x00007c69 arg  0x0000052a , 0x00000006 
- 00028831  0x00007c6a arg  0x00000007 , 0x00000039 
- 00028832  0x00007c6c ifetch  0x00000004 , 0x00000006 
- 00028833  0x00007c6d branch  0x000070a6 , 0x00000034 
- 00028834  0x00007c6e isub  0x00000002 , 0x0000003e 
- 00028835  0x00007c6f branch  0x000070ad , 0x00000005 
- 00028836  0x00007c70 loop  0x000070a0 
- 00028837  0x00007c71 rtn 
- 00028838  0x00007c73 istoret  0x00000004 , 0x00000005 
- 00028839  0x00007c74 increase  0x00000001 , 0x00000007 
- 00028840  0x00007c75 copy  0x00000011 , 0x00000006 
- 00028841  0x00007c76 call  0x0000705b 
- 00028842  0x00007c77 iadd  0x00000012 , 0x00000012 
- 00028843  0x00007c78 iadd  0x00000006 , 0x00000006 
- 00028844  0x00007c79 branch  0x00007090 
- 00028845  0x00007c7b copy  0x00000011 , 0x00000006 
- 00028846  0x00007c7c call  0x00007062 
- 00028847  0x00007c7d iadd  0x00000006 , 0x00000006 
- 00028848  0x00007c7e branch  0x00007090 
- 00028849  0x00007c85 bpatchx  0x000000d6 , 0x0000403a 
- 00028850  0x00007c86 fetch  0x00000002 , 0x00004575 
- 00028851  0x00007c87 iforce  0x00000006 
- 00028852  0x00007c89 ifetch  0x00000001 , 0x00000006 
- 00028853  0x00007c8a branch  0x00007fe3 , 0x00000034 
- 00028854  0x00007c8b lshift  0x0000003f , 0x0000003f 
- 00028855  0x00007c8c iadd  0x00000006 , 0x00000006 
- 00028856  0x00007c8d ifetch  0x00000004 , 0x00000006 
- 00028857  0x00007c8e isub  0x00000002 , 0x0000003e 
- 00028858  0x00007c8f rtn  0x00000005 
- 00028859  0x00007c90 deposit  0x00000005 
- 00028860  0x00007c91 store  0x00000002 , 0x00000abb 
- 00028861  0x00007c92 storet  0x00000008 , 0x00000aa2 
- 00028862  0x00007c93 call  0x00007062 
- 00028863  0x00007c94 iadd  0x00000006 , 0x00000006 
- 00028864  0x00007c95 copy  0x00000006 , 0x0000003f 
- 00028865  0x00007c96 fetcht  0x00000002 , 0x00000abb 
- 00028866  0x00007c97 copy  0x00000002 , 0x00000005 
- 00028867  0x00007c98 fetcht  0x00000008 , 0x00000aa2 
- 00028868  0x00007c99 copy  0x0000003f , 0x00000006 
- 00028869  0x00007c9a branch  0x000070b4 
- 00028870  0x00007ca1 bpatchx  0x000000d7 , 0x0000403a 
- 00028871  0x00007ca2 fetch  0x00000002 , 0x00004575 
- 00028872  0x00007ca3 iforce  0x00000006 
- 00028873  0x00007ca5 ifetch  0x00000001 , 0x00000006 
- 00028874  0x00007ca6 branch  0x000070e4 , 0x00000034 
- 00028875  0x00007ca7 iforce  0x00000039 
- 00028876  0x00007ca9 ifetch  0x00000002 , 0x00000006 
- 00028877  0x00007caa isub  0x00000013 , 0x0000003e 
- 00028878  0x00007cab branch  0x000070d4 , 0x00000005 
- 00028879  0x00007cac loop  0x000070cc 
- 00028880  0x00007cad increase  0x00000004 , 0x00000006 
- 00028881  0x00007cae call  0x00007062 
- 00028882  0x00007caf iadd  0x00000006 , 0x00000006 
- 00028883  0x00007cb0 branch  0x000070c9 
- 00028884  0x00007cb2 increase  0xffffffff , 0x00000039 
- 00028885  0x00007cb3 lshift  0x00000039 , 0x0000003f 
- 00028886  0x00007cb4 iadd  0x00000006 , 0x00000006 
- 00028887  0x00007cb5 increase  0x00000004 , 0x00000006 
- 00028888  0x00007cb6 call  0x00007062 
- 00028889  0x00007cb7 iadd  0x00000006 , 0x0000000b 
- 00028890  0x00007cb9 increase  0x00000001 , 0x00000006 
- 00028891  0x00007cba ifetch  0x00000002 , 0x00000006 
- 00028892  0x00007cbb isub  0x00000012 , 0x0000003e 
- 00028893  0x00007cbf branch  0x00007fef , 0x00000005 
- 00028894  0x00007cc0 call  0x0000705b 
- 00028895  0x00007cc1 iadd  0x00000006 , 0x00000006 
- 00028896  0x00007cc2 deposit  0x0000000b 
- 00028897  0x00007cc3 isub  0x00000006 , 0x0000003e 
- 00028898  0x00007cc4 branch  0x000070e4 , 0x00000005 
- 00028899  0x00007cc5 branch  0x000070da 
- 00028900  0x00007cc7 force  0x00000000 , 0x00000006 
- 00028901  0x00007cc8 force  0x00000000 , 0x0000003f 
- 00028902  0x00007cc9 rtn 
- 00028903  0x00007cd0 bpatchx  0x000000d8 , 0x0000403b 
- 00028904  0x00007cd1 fetch  0x00000002 , 0x00004575 
- 00028905  0x00007cd2 iforce  0x00000006 
- 00028906  0x00007cd4 ifetch  0x00000001 , 0x00000006 
- 00028907  0x00007cd5 branch  0x00007100 , 0x00000034 
- 00028908  0x00007cd6 lshift  0x0000003f , 0x0000003f 
- 00028909  0x00007cd7 iadd  0x00000006 , 0x00000006 
- 00028910  0x00007cd8 ifetch  0x00000004 , 0x00000006 
- 00028911  0x00007cd9 isub  0x00000002 , 0x0000003e 
- 00028912  0x00007cda branch  0x000070f4 , 0x00000005 
- 00028913  0x00007cdb call  0x00007062 
- 00028914  0x00007cdc iadd  0x00000006 , 0x00000006 
- 00028915  0x00007cdd branch  0x000070ea 
- 00028916  0x00007cdf call  0x00007062 
- 00028917  0x00007ce0 iadd  0x00000006 , 0x0000000b 
- 00028918  0x00007ce2 increase  0x00000001 , 0x00000006 
- 00028919  0x00007ce3 ifetch  0x00000002 , 0x00000006 
- 00028920  0x00007ce4 isub  0x00000012 , 0x0000003e 
- 00028921  0x00007ce5 rtn  0x00000005 
- 00028922  0x00007ce6 call  0x0000705b 
- 00028923  0x00007ce7 iadd  0x00000006 , 0x00000006 
- 00028924  0x00007ce8 deposit  0x0000000b 
- 00028925  0x00007ce9 isub  0x00000006 , 0x0000003e 
- 00028926  0x00007cea branch  0x00007100 , 0x00000005 
- 00028927  0x00007ceb branch  0x000070f6 
- 00028928  0x00007ced force  0x00000000 , 0x00000006 
- 00028929  0x00007cee rtn 
- 00028930  0x00007cf3 arg  0x00000400 , 0x00000012 
- 00028931  0x00007cf4 call  0x000070f4 
- 00028932  0x00007cf5 arg  0x00000300 , 0x00000012 
- 00028933  0x00007cf6 call  0x0000710d 
- 00028934  0x00007cf7 nrtn  0x00000028 
- 00028935  0x00007cf8 sub  0x00000011 , 0x00000003 , 0x0000003e 
- 00028936  0x00007cf9 branch  0x00007fe9 , 0x00000002 
- 00028937  0x00007cfa ifetch  0x00000001 , 0x00000006 
- 00028938  0x00007cfb bne  0x00000008 , 0x00007fe9 
- 00028939  0x00007cfc ifetch  0x00000001 , 0x00000006 
- 00028940  0x00007cfd rtn 
- 00028941  0x00007d03 bpatchx  0x000000d9 , 0x0000403b 
- 00028942  0x00007d04 call  0x00007062 
- 00028943  0x00007d05 copy  0x0000003f , 0x00000011 
- 00028944  0x00007d07 ifetch  0x00000001 , 0x00000006 
- 00028945  0x00007d08 and  0x0000003f , 0x00000007 , 0x00000039 
- 00028946  0x00007d09 rshift3  0x0000003f , 0x0000003f 
- 00028947  0x00007d0a sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00028948  0x00007d0b branch  0x00007129 , 0x00000005 
- 00028949  0x00007d0c copy  0x00000039 , 0x0000003f 
- 00028950  0x00007d0d beq  0x00000005 , 0x00007120 
- 00028951  0x00007d0e beq  0x00000006 , 0x00007123 
- 00028952  0x00007d0f beq  0x00000007 , 0x00007126 
- 00028953  0x00007d10 increase  0xffffffff , 0x00000006 
- 00028954  0x00007d11 call  0x00007062 
- 00028955  0x00007d12 iadd  0x00000006 , 0x00000006 
- 00028956  0x00007d13 copy  0x00000011 , 0x0000003f 
- 00028957  0x00007d14 isub  0x00000002 , 0x00000011 
- 00028958  0x00007d15 branch  0x00007fe9 , 0x00000005 
- 00028959  0x00007d16 branch  0x00007110 
- 00028960  0x00007d19 increase  0xfffffffe , 0x00000011 
- 00028961  0x00007d1a increase  0x00000001 , 0x00000006 
- 00028962  0x00007d1b branch  0x00007110 
- 00028963  0x00007d1d increase  0xfffffffd , 0x00000011 
- 00028964  0x00007d1e increase  0x00000002 , 0x00000006 
- 00028965  0x00007d1f branch  0x00007110 
- 00028966  0x00007d21 increase  0xfffffffb , 0x00000011 
- 00028967  0x00007d22 increase  0x00000004 , 0x00000006 
- 00028968  0x00007d23 branch  0x00007110 
- 00028969  0x00007d26 increase  0xffffffff , 0x00000011 
- 00028970  0x00007d27 copy  0x00000039 , 0x0000003f 
- 00028971  0x00007d28 beq  0x00000001 , 0x00007132 
- 00028972  0x00007d29 beq  0x00000002 , 0x00007130 
- 00028973  0x00007d2a beq  0x00000004 , 0x0000712f 
- 00028974  0x00007d2b branch  0x00007fe9 
- 00028975  0x00007d2d increase  0xfffffff4 , 0x00000011 
- 00028976  0x00007d2f ifetch  0x00000002 , 0x00000006 
- 00028977  0x00007d30 increase  0xfffffffe , 0x00000011 
- 00028978  0x00007d32 ifetch  0x00000002 , 0x00000006 
- 00028979  0x00007d33 isub  0x00000012 , 0x0000003e 
- 00028980  0x00007d34 branch  0x00007fe7 , 0x00000005 
- 00028981  0x00007d35 increase  0xfffffffe , 0x00000011 
- 00028982  0x00007d36 branch  0x00007fe9 , 0x00000005 
- 00028983  0x00007d37 branch  0x00007110 
- 00028984  0x00007d73 call  0x000052d0 
- 00028985  0x00007d74 copy  0x0000003f , 0x00000005 
- 00028986  0x00007d75 setarg  0x00000006 
- 00028987  0x00007d76 istore  0x00000001 , 0x00000005 
- 00028988  0x00007d77 setarg  0x0000006e 
- 00028989  0x00007d78 istore  0x00000002 , 0x00000005 
- 00028990  0x00007d79 setarg  0x00000f00 
- 00028991  0x00007d7a istore  0x00000002 , 0x00000005 
- 00028992  0x00007d7b setarg  0x001a0535 
- 00028993  0x00007d7c istore  0x00000003 , 0x00000005 
- 00028994  0x00007d7d setarg  0x00000111 
- 00028995  0x00007d7e lshift16  0x0000003f , 0x0000003f 
- 00028996  0x00007d7f istore  0x00000004 , 0x00000005 
- 00028997  0x00007d80 setarg  0x00002600 
- 00028998  0x00007d81 istore  0x00000002 , 0x00000005 
- 00028999  0x00007d82 setarg  0x00000335 
- 00029000  0x00007d83 istore  0x00000002 , 0x00000005 
- 00029001  0x00007d84 setarg  0x00000009 
- 00029002  0x00007d85 istore  0x00000002 , 0x00000005 
- 00029003  0x00007d86 setarg  0x00000004 
- 00029004  0x00007d87 istore  0x00000002 , 0x00000005 
- 00029005  0x00007d88 jam  0x00000014 , 0x00000275 
- 00029006  0x00007d89 rtn 
- 00029007  0x00007d8e bpatchx  0x000000da , 0x0000403b 
- 00029008  0x00007d8f jam  0x00000050 , 0x000005e5 
- 00029009  0x00007d90 arg  0x000005e6 , 0x00000005 
- 00029010  0x00007d91 arg  0x0000443a , 0x00000006 
- 00029011  0x00007d92 call  0x00007ebf 
- 00029012  0x00007d93 arg  0x000045d2 , 0x00000006 
- 00029013  0x00007d94 call  0x00007ebd 
- 00029014  0x00007d95 arg  0x000009be , 0x00000006 
- 00029015  0x00007d96 call  0x00007ebd 
- 00029016  0x00007d97 call  0x0000720a 
- 00029017  0x00007d98 arg  0x0000042f , 0x00000006 
- 00029018  0x00007d99 call  0x00007205 
- 00029019  0x00007d9a call  0x000071d0 
- 00029020  0x00007d9c arg  0x00000af2 , 0x00000005 
- 00029021  0x00007d9d call  0x00007201 
- 00029022  0x00007d9e setarg  0x000f4240 
- 00029023  0x00007d9f copy  0x0000003f , 0x00000011 
- 00029024  0x00007da0 fetch  0x00000004 , 0x00000af2 
- 00029025  0x00007da1 idiv  0x00000011 
- 00029026  0x00007da2 call  0x00007f86 
- 00029027  0x00007da3 remainder  0x0000003f 
- 00029028  0x00007da4 store  0x00000004 , 0x000009ba 
- 00029029  0x00007da6 rtn 
- 00029030  0x00007da9 jam  0x00000041 , 0x000005e5 
- 00029031  0x00007daa arg  0x000005e6 , 0x00000005 
- 00029032  0x00007dab call  0x000071b5 
- 00029033  0x00007dac call  0x000071b0 
- 00029034  0x00007dad fetch  0x00000003 , 0x00004454 
- 00029035  0x00007dae istore  0x00000003 , 0x00000005 
- 00029036  0x00007db1 call  0x00007176 
- 00029037  0x00007db3 arg  0x0000042f , 0x00000006 
- 00029038  0x00007db4 call  0x00007ebf 
- 00029039  0x00007db5 arg  0x0000443a , 0x00000006 
- 00029040  0x00007db6 call  0x00007ebf 
- 00029041  0x00007db7 call  0x0000720a 
- 00029042  0x00007db8 arg  0x00000b12 , 0x00000006 
- 00029043  0x00007db9 arg  0x00000ac2 , 0x00000005 
- 00029044  0x00007dba call  0x00007ebf 
- 00029045  0x00007dbc branch  0x000071d0 
- 00029046  0x00007dc1 fetch  0x00000004 , 0x000044c7 
- 00029047  0x00007dc2 istore  0x00000004 , 0x00000005 
- 00029048  0x00007dc3 call  0x00007ecd 
- 00029049  0x00007dc4 branch  0x00007eca 
- 00029050  0x00007dc7 bpatchx  0x000000db , 0x0000403b 
- 00029051  0x00007dc8 jam  0x00000041 , 0x000005e5 
- 00029052  0x00007dc9 arg  0x000005e6 , 0x00000005 
- 00029053  0x00007dca call  0x000071b0 
- 00029054  0x00007dcb call  0x000071b5 
- 00029055  0x00007dcc fetch  0x00000003 , 0x0000444d 
- 00029056  0x00007dcd istore  0x00000003 , 0x00000005 
- 00029057  0x00007dd0 call  0x00007176 
- 00029058  0x00007dd1 arg  0x0000443a , 0x00000006 
- 00029059  0x00007dd2 call  0x00007ebf 
- 00029060  0x00007dd3 arg  0x0000042f , 0x00000006 
- 00029061  0x00007dd4 call  0x00007ebf 
- 00029062  0x00007dd5 call  0x0000720a 
- 00029063  0x00007dd6 arg  0x00000b12 , 0x00000006 
- 00029064  0x00007dd7 arg  0x00000ac2 , 0x00000005 
- 00029065  0x00007dd8 call  0x00007ebf 
- 00029066  0x00007dda call  0x000071d0 
- 00029067  0x00007ddb arg  0x00000af2 , 0x00000005 
- 00029068  0x00007ddc branch  0x00007201 
- 00029069  0x00007ddf jam  0x00000020 , 0x000005e5 
- 00029070  0x00007de0 arg  0x000009fe , 0x00000006 
- 00029071  0x00007de1 arg  0x000005e6 , 0x00000005 
- 00029072  0x00007de2 call  0x00007ebd 
- 00029073  0x00007de3 call  0x0000720a 
- 00029074  0x00007de4 arg  0x0000099e , 0x00000006 
- 00029075  0x00007de5 call  0x00007205 
- 00029076  0x00007de6 call  0x000071d0 
- 00029077  0x00007de7 arg  0x00000ac2 , 0x00000005 
- 00029078  0x00007de8 call  0x00007497 
- 00029079  0x00007de9 arg  0x00000001 , 0x00000002 
- 00029080  0x00007dea call  0x0000719f 
- 00029081  0x00007deb arg  0x00004419 , 0x00000005 
- 00029082  0x00007dec call  0x00007201 
- 00029083  0x00007ded arg  0x00000000 , 0x00000002 
- 00029084  0x00007dee call  0x0000719f 
- 00029085  0x00007def arg  0x00000b12 , 0x00000005 
- 00029086  0x00007df1 branch  0x00007497 
- 00029087  0x00007df5 bpatchx  0x000000dc , 0x0000403b 
- 00029088  0x00007df6 jam  0x00000035 , 0x000005e5 
- 00029089  0x00007df7 setarg  0x00000100 
- 00029090  0x00007df8 store  0x00000002 , 0x000005e6 
- 00029091  0x00007df9 call  0x000071b0 
- 00029092  0x00007dfa call  0x000071b5 
- 00029093  0x00007dfb arg  0x0000443a , 0x00000006 
- 00029094  0x00007dfc call  0x00007ebf 
- 00029095  0x00007dfd arg  0x0000042f , 0x00000006 
- 00029096  0x00007dfe call  0x00007ebf 
- 00029097  0x00007e00 setarg  0x00006c65 
- 00029098  0x00007e01 istore  0x00000002 , 0x00000005 
- 00029099  0x00007e02 setarg  0x00006274 
- 00029100  0x00007e03 istore  0x00000002 , 0x00000005 
- 00029101  0x00007e04 istoret  0x00000001 , 0x00000005 
- 00029102  0x00007e05 call  0x0000720a 
- 00029103  0x00007e06 branch  0x000071d0 
- 00029104  0x00007e09 fetch  0x00000006 , 0x000044a0 
- 00029105  0x00007e0a istore  0x00000006 , 0x00000005 
- 00029106  0x00007e0b fetch  0x00000001 , 0x00004495 
- 00029107  0x00007e0c istore  0x00000001 , 0x00000005 
- 00029108  0x00007e0d rtn 
- 00029109  0x00007e10 fetch  0x00000006 , 0x0000044f 
- 00029110  0x00007e11 istore  0x00000006 , 0x00000005 
- 00029111  0x00007e16 fetch  0x00000001 , 0x0000448e 
- 00029112  0x00007e17 istore  0x00000001 , 0x00000005 
- 00029113  0x00007e18 rtn 
- 00029114  0x00007e1b jam  0x00000041 , 0x000005e5 
- 00029115  0x00007e1c fetch  0x00000001 , 0x00004664 
- 00029116  0x00007e1d store  0x00000001 , 0x000005e6 
- 00029117  0x00007e1e arg  0x000045d2 , 0x00000006 
- 00029118  0x00007e1f call  0x00007ebd 
- 00029119  0x00007e20 arg  0x000009be , 0x00000006 
- 00029120  0x00007e21 call  0x00007ebd 
- 00029121  0x00007e22 call  0x0000720a 
- 00029122  0x00007e23 arg  0x0000042f , 0x00000006 
- 00029123  0x00007e24 call  0x00007205 
- 00029124  0x00007e25 branch  0x000071d0 
- 00029125  0x00007e29 jam  0x00000041 , 0x000005e5 
- 00029126  0x00007e2a fetch  0x00000001 , 0x00004664 
- 00029127  0x00007e2b store  0x00000001 , 0x000005e6 
- 00029128  0x00007e2c arg  0x000009be , 0x00000006 
- 00029129  0x00007e2d call  0x00007ebd 
- 00029130  0x00007e2e arg  0x000045d2 , 0x00000006 
- 00029131  0x00007e2f call  0x00007ebd 
- 00029132  0x00007e30 call  0x0000720a 
- 00029133  0x00007e31 arg  0x0000443a , 0x00000006 
- 00029134  0x00007e32 call  0x00007205 
- 00029135  0x00007e33 branch  0x000071d0 
- 00029136  0x00007e36 bpatchx  0x000000dd , 0x0000403b 
- 00029137  0x00007e37 call  0x0000721f 
- 00029138  0x00007e3b fetch  0x00000001 , 0x000005e5 
- 00029139  0x00007e3c copy  0x0000003f , 0x00000002 
- 00029140  0x00007e3e increase  0x0000000f , 0x0000003f 
- 00029141  0x00007e3f rshift4  0x0000003f , 0x0000003f 
- 00029142  0x00007e40 copy  0x0000003f , 0x00000012 
- 00029143  0x00007e41 branch  0x000071e2 , 0x00000034 
- 00029144  0x00007e42 and  0x00000002 , 0x0000000f , 0x0000003f 
- 00029145  0x00007e43 nbranch  0x000071e5 , 0x00000034 
- 00029146  0x00007e45 arg  0x00000ad2 , 0x00000013 
- 00029147  0x00007e46 arg  0x000005e6 , 0x0000003f 
- 00029148  0x00007e47 increase  0xfffffff0 , 0x0000003f 
- 00029149  0x00007e4a iadd  0x00000002 , 0x00000011 
- 00029150  0x00007e4b arg  0x00000b02 , 0x00000005 
- 00029151  0x00007e4c arg  0x00000004 , 0x00000039 
- 00029152  0x00007e4d call  0x00007edd 
- 00029153  0x00007e51 branch  0x000071f0 
- 00029154  0x00007e54 arg  0x00000001 , 0x00000012 
- 00029155  0x00007e55 arg  0x00000000 , 0x00000011 
- 00029156  0x00007e57 branch  0x000071e6 
- 00029157  0x00007e5c and  0x00000002 , 0x0000000f , 0x00000011 
- 00029158  0x00007e5e arg  0x000005e6 , 0x0000003f 
- 00029159  0x00007e5f iadd  0x00000002 , 0x0000003f 
- 00029160  0x00007e60 isub  0x00000011 , 0x00000006 
- 00029161  0x00007e62 arg  0x00000af2 , 0x00000005 
- 00029162  0x00007e63 call  0x00007245 
- 00029163  0x00007e65 arg  0x00000ae2 , 0x00000013 
- 00029164  0x00007e66 arg  0x00000af2 , 0x00000011 
- 00029165  0x00007e67 arg  0x00000b02 , 0x00000005 
- 00029166  0x00007e68 arg  0x00000004 , 0x00000039 
- 00029167  0x00007e69 call  0x00007edd 
- 00029168  0x00007e75 call  0x00007491 
- 00029169  0x00007e76 call  0x00007428 
- 00029170  0x00007e79 arg  0x000005e6 , 0x00000006 
- 00029171  0x00007e7c increase  0xffffffff , 0x00000012 
- 00029172  0x00007e7d deposit  0x00000012 
- 00029173  0x00007e7e branch  0x000071f9 , 0x00000034 
- 00029174  0x00007e7f call  0x00007486 
- 00029175  0x00007e80 call  0x00007422 
- 00029176  0x00007e81 branch  0x000071f3 
- 00029177  0x00007e84 arg  0x00000af2 , 0x00000005 
- 00029178  0x00007e85 call  0x00007497 
- 00029179  0x00007e86 arg  0x00000b02 , 0x00000006 
- 00029180  0x00007e87 call  0x00007486 
- 00029181  0x00007e88 call  0x00007428 
- 00029182  0x00007e89 arg  0x00000af2 , 0x00000006 
- 00029183  0x00007e8a call  0x00007486 
- 00029184  0x00007e8b branch  0x00007422 
- 00029185  0x00007e91 copy  0x00000005 , 0x00000011 
- 00029186  0x00007e92 call  0x00007497 
- 00029187  0x00007e94 arg  0x00000010 , 0x00000039 
- 00029188  0x00007e95 branch  0x00007ee5 
- 00029189  0x00007e98 arg  0x00000ac2 , 0x00000005 
- 00029190  0x00007e99 call  0x00007ebf 
- 00029191  0x00007e9b arg  0x00000010 , 0x00000039 
- 00029192  0x00007e9c arg  0x00000ac2 , 0x00000011 
- 00029193  0x00007e9d branch  0x00007ee5 
- 00029194  0x00007ea0 fetch  0x00000001 , 0x000005e5 
- 00029195  0x00007ea1 copy  0x0000003f , 0x00000039 
- 00029196  0x00007ea2 arg  0x000005e6 , 0x00000011 
- 00029197  0x00007ea3 branch  0x00007ee5 
- 00029198  0x00007ea6 ifetch  0x00000001 , 0x00000011 
- 00029199  0x00007ea7 lshift  0x0000003f , 0x0000003f 
- 00029200  0x00007ea8 isolate1  0x00000000 , 0x00000013 
- 00029201  0x00007ea9 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00029202  0x00007eaa isolate1  0x00000008 , 0x0000003f 
- 00029203  0x00007eab setflag  0x00000001 , 0x00000000 , 0x00000013 
- 00029204  0x00007eac istore  0x00000001 , 0x00000011 
- 00029205  0x00007ead increase  0xffffffff , 0x00000011 
- 00029206  0x00007eae loop  0x0000720e 
- 00029207  0x00007eaf rtn 
- 00029208  0x00007eb2 arg  0x00000ad2 , 0x00000011 
- 00029209  0x00007eb4 increase  0x0000000f , 0x00000011 
- 00029210  0x00007eb5 force  0x00000010 , 0x00000039 
- 00029211  0x00007eb6 force  0x00000000 , 0x00000013 
- 00029212  0x00007eb7 branch  0x0000720e 
- 00029213  0x00007eba arg  0x00000ae2 , 0x00000011 
- 00029214  0x00007ebb branch  0x00007219 
- 00029215  0x00007ebf arg  0x00000ac2 , 0x00000006 
- 00029216  0x00007ec0 call  0x00007484 
- 00029217  0x00007ec3 force  0x00000008 , 0x00000038 
- 00029218  0x00007ec4 call  0x00007492 
- 00029219  0x00007ec5 call  0x00007491 
- 00029220  0x00007ec6 call  0x0000741f 
- 00029221  0x00007ecb arg  0x00000ad2 , 0x00000005 
- 00029222  0x00007ecc call  0x00007497 
- 00029223  0x00007ece bpatchx  0x000000de , 0x0000403b 
- 00029224  0x00007ecf fetch  0x00000001 , 0x00000ad2 
- 00029225  0x00007ed0 isolate1  0x00000007 , 0x0000003f 
- 00029226  0x00007ed1 nbranch  0x00007230 , 0x00000001 
- 00029227  0x00007ed2 call  0x00007218 
- 00029228  0x00007ed5 arg  0x00000ad2 , 0x00000013 
- 00029229  0x00007ed7 arg  0x00000ad2 , 0x00000005 
- 00029230  0x00007eda call  0x0000723a 
- 00029231  0x00007edb branch  0x00007231 
- 00029232  0x00007edd call  0x00007218 
- 00029233  0x00007ee0 arg  0x00000ad2 , 0x00000006 
- 00029234  0x00007ee1 arg  0x00000ae2 , 0x00000005 
- 00029235  0x00007ee2 call  0x00007ebf 
- 00029236  0x00007ee3 fetch  0x00000001 , 0x00000ae2 
- 00029237  0x00007ee4 isolate1  0x00000007 , 0x0000003f 
- 00029238  0x00007ee5 nbranch  0x0000721d , 0x00000001 
- 00029239  0x00007ee6 call  0x0000721d 
- 00029240  0x00007ee8 arg  0x00000ae2 , 0x00000013 
- 00029241  0x00007eea arg  0x00000ae2 , 0x00000005 
- 00029242  0x00007ef1 arg  0x00000003 , 0x00000039 
- 00029243  0x00007ef3 arg  0x00000000 , 0x00000002 
- 00029244  0x00007ef4 call  0x00007241 
- 00029245  0x00007ef5 increase  0x00000004 , 0x00000013 
- 00029246  0x00007ef6 loop  0x0000723b 
- 00029247  0x00007ef7 arg  0x00008700 , 0x00000002 
- 00029248  0x00007ef8 lshift16  0x00000002 , 0x00000002 
- 00029249  0x00007efa ifetch  0x00000004 , 0x00000013 
- 00029250  0x00007efb ixor  0x00000002 , 0x0000003f 
- 00029251  0x00007efc istore  0x00000004 , 0x00000005 
- 00029252  0x00007efd rtn 
- 00029253  0x00007f04 bpatchx  0x000000df , 0x0000403b 
- 00029254  0x00007f05 arg  0x00000010 , 0x00000039 
- 00029255  0x00007f06 arg  0x00000000 , 0x0000003f 
- 00029256  0x00007f08 isub  0x00000011 , 0x0000003e 
- 00029257  0x00007f09 branch  0x00007250 , 0x00000005 
- 00029258  0x00007f0a branch  0x00007253 , 0x00000002 
- 00029259  0x00007f0b ifetcht  0x00000001 , 0x00000006 
- 00029260  0x00007f0c istoret  0x00000001 , 0x00000005 
- 00029261  0x00007f0e increase  0x00000001 , 0x0000003f 
- 00029262  0x00007f0f loop  0x00007248 
- 00029263  0x00007f10 rtn 
- 00029264  0x00007f12 arg  0x00000080 , 0x00000002 
- 00029265  0x00007f14 istoret  0x00000001 , 0x00000005 
- 00029266  0x00007f15 branch  0x0000724d 
- 00029267  0x00007f18 arg  0x00000000 , 0x00000002 
- 00029268  0x00007f19 branch  0x00007251 
- 00029269  0x00007f1d call  0x00007268 
- 00029270  0x00007f1e arg  0x00000592 , 0x00000006 
- 00029271  0x00007f1f arg  0x00000582 , 0x00000005 
- 00029272  0x00007f20 branch  0x00007ebf 
- 00029273  0x00007f24 disable  0x00000028 
- 00029274  0x00007f25 call  0x0000735f 
- 00029275  0x00007f26 arg  0x00000562 , 0x00000006 
- 00029276  0x00007f27 arg  0x000005a2 , 0x00000005 
- 00029277  0x00007f28 force  0x0000000f , 0x00000039 
- 00029278  0x00007f29 call  0x00007f01 
- 00029279  0x00007f2a ifetch  0x00000001 , 0x00000006 
- 00029280  0x00007f2b xor_into  0x00000006 , 0x0000003f 
- 00029281  0x00007f2c istore  0x00000001 , 0x00000005 
- 00029282  0x00007f2d setarg  0x000005b2 
- 00029283  0x00007f2e store  0x00000002 , 0x000005d6 
- 00029284  0x00007f2f setarg  0x000005a2 
- 00029285  0x00007f30 store  0x00000002 , 0x000005d4 
- 00029286  0x00007f31 set1  0x00000012 , 0x00000000 
- 00029287  0x00007f32 branch  0x000072a8 
- 00029288  0x00007f37 fetcht  0x00000001 , 0x00004689 
- 00029289  0x00007f38 force  0x00000010 , 0x00000012 
- 00029290  0x00007f39 add  0x00000002 , 0x00000006 , 0x00000013 
- 00029291  0x00007f3a sub  0x00000013 , 0x00000010 , 0x0000003e 
- 00029292  0x00007f3b branch  0x0000726e , 0x00000002 
- 00029293  0x00007f3c force  0x00000010 , 0x00000013 
- 00029294  0x00007f3e arg  0x000005a2 , 0x00000005 
- 00029295  0x00007f40 arg  0x0000468a , 0x00000006 
- 00029296  0x00007f41 copy  0x00000002 , 0x00000039 
- 00029297  0x00007f42 disable  0x00000028 
- 00029298  0x00007f44 ifetch  0x00000001 , 0x00000006 
- 00029299  0x00007f45 istore  0x00000001 , 0x00000005 
- 00029300  0x00007f46 increase  0xffffffff , 0x00000012 
- 00029301  0x00007f47 branch  0x0000727c , 0x00000005 
- 00029302  0x00007f48 loop  0x00007272 
- 00029303  0x00007f49 branch  0x0000726f , 0x00000028 
- 00029304  0x00007f4a enable  0x00000028 
- 00029305  0x00007f4b force  0x00000006 , 0x00000039 
- 00029306  0x00007f4c copy  0x00000011 , 0x00000006 
- 00029307  0x00007f4d branch  0x00007272 
- 00029308  0x00007f4f arg  0x00000562 , 0x00000006 
- 00029309  0x00007f50 arg  0x000005b2 , 0x00000005 
- 00029310  0x00007f51 call  0x00007ebf 
- 00029311  0x00007f52 fetch  0x00000001 , 0x000005c1 
- 00029312  0x00007f53 ixor  0x00000013 , 0x0000003f 
- 00029313  0x00007f54 store  0x00000001 , 0x000005c1 
- 00029314  0x00007f55 setarg  0x000005b2 
- 00029315  0x00007f56 store  0x00000002 , 0x000005d6 
- 00029316  0x00007f57 setarg  0x000005a2 
- 00029317  0x00007f58 store  0x00000002 , 0x000005d4 
- 00029318  0x00007f59 set1  0x00000012 , 0x00000000 
- 00029319  0x00007f5a branch  0x000072a8 
- 00029320  0x00007f60 disable  0x00000028 
- 00029321  0x00007f61 call  0x0000735f 
- 00029322  0x00007f62 branch  0x00007292 
- 00029323  0x00007f65 arg  0x00000056 , 0x00000011 
- 00029324  0x00007f66 enable  0x00000028 
- 00029325  0x00007f67 call  0x0000735f 
- 00029326  0x00007f68 call  0x00007292 
- 00029327  0x00007f69 arg  0x00000592 , 0x00000006 
- 00029328  0x00007f6a arg  0x00000062 , 0x00000005 
- 00029329  0x00007f6b branch  0x00007ebf 
- 00029330  0x00007f6f setarg  0x00000562 
- 00029331  0x00007f70 store  0x00000002 , 0x000005d6 
- 00029332  0x00007f71 setarg  0x000041be 
- 00029333  0x00007f72 store  0x00000002 , 0x000005d4 
- 00029334  0x00007f73 set0  0x00000012 , 0x00000000 
- 00029335  0x00007f74 call  0x000072a8 
- 00029336  0x00007f75 arg  0x00000592 , 0x00000011 
- 00029337  0x00007f76 arg  0x00000562 , 0x00000012 
- 00029338  0x00007f77 arg  0x000005a2 , 0x00000005 
- 00029339  0x00007f78 call  0x00007352 
- 00029340  0x00007f79 arg  0x000005a2 , 0x00000011 
- 00029341  0x00007f7a arg  0x000005b2 , 0x00000012 
- 00029342  0x00007f7b copy  0x00000012 , 0x00000005 
- 00029343  0x00007f7c enable  0x00000028 
- 00029344  0x00007f7d call  0x00007350 
- 00029345  0x00007f7e call  0x0000736a 
- 00029346  0x00007f7f setarg  0x000005b2 
- 00029347  0x00007f80 store  0x00000002 , 0x000005d6 
- 00029348  0x00007f81 setarg  0x000005a2 
- 00029349  0x00007f82 store  0x00000002 , 0x000005d4 
- 00029350  0x00007f83 set1  0x00000012 , 0x00000000 
- 00029351  0x00007f84 branch  0x000072a8 
- 00029352  0x00007f89 jam  0x00000000 , 0x000005d8 
- 00029353  0x00007f8a fetch  0x00000002 , 0x000005d4 
- 00029354  0x00007f8b iforce  0x00000006 
- 00029355  0x00007f8c arg  0x000005c2 , 0x00000005 
- 00029356  0x00007f8d call  0x00007ebf 
- 00029357  0x00007f8e fetch  0x00000002 , 0x000005d6 
- 00029358  0x00007f8f iforce  0x00000006 
- 00029359  0x00007f90 arg  0x00000592 , 0x00000005 
- 00029360  0x00007f91 call  0x00007ebf 
- 00029361  0x00007f94 call  0x000072cf 
- 00029362  0x00007f95 disable  0x00000028 
- 00029363  0x00007f96 bmark0  0x00000012 , 0x000072b9 
- 00029364  0x00007f97 fetch  0x00000001 , 0x000005d8 
- 00029365  0x00007f98 bne  0x00000004 , 0x000072b9 
- 00029366  0x00007f99 fetch  0x00000002 , 0x000005d6 
- 00029367  0x00007f9a iforce  0x00000012 
- 00029368  0x00007f9b call  0x00007301 
- 00029369  0x00007f9d call  0x00007300 
- 00029370  0x00007f9e call  0x00007313 
- 00029371  0x00007f9f fetch  0x00000001 , 0x000005d8 
- 00029372  0x00007fa0 increase  0x00000001 , 0x0000003f 
- 00029373  0x00007fa1 store  0x00000001 , 0x000005d8 
- 00029374  0x00007fa3 call  0x000072cf 
- 00029375  0x00007fa4 enable  0x00000028 
- 00029376  0x00007fa5 call  0x00007300 
- 00029377  0x00007fa6 call  0x00007322 
- 00029378  0x00007fa7 call  0x00007331 
- 00029379  0x00007fa8 call  0x00007322 
- 00029380  0x00007fa9 call  0x00007331 
- 00029381  0x00007faa call  0x00007322 
- 00029382  0x00007fab call  0x00007331 
- 00029383  0x00007fac call  0x00007322 
- 00029384  0x00007fad fetch  0x00000001 , 0x000005d8 
- 00029385  0x00007fae increase  0x00000001 , 0x0000003f 
- 00029386  0x00007faf store  0x00000001 , 0x000005d8 
- 00029387  0x00007fb0 bne  0x00000010 , 0x000072b1 
- 00029388  0x00007fb1 call  0x000072cf 
- 00029389  0x00007fb2 disable  0x00000028 
- 00029390  0x00007fb3 branch  0x00007300 
- 00029391  0x00007fb8 fetch  0x00000001 , 0x000005d8 
- 00029392  0x00007fb9 arg  0x000005c2 , 0x00000006 
- 00029393  0x00007fba branch  0x000072f6 , 0x00000034 
- 00029394  0x00007fbb iforce  0x00000012 
- 00029395  0x00007fbc force  0x00000011 , 0x00000039 
- 00029396  0x00007fbd copy  0x00000006 , 0x00000005 
- 00029397  0x00007fbf ifetch  0x00000001 , 0x00000006 
- 00029398  0x00007fc0 lshift3  0x0000003f , 0x00000002 
- 00029399  0x00007fc1 rshift2  0x0000003f , 0x0000003f 
- 00029400  0x00007fc2 rshift3  0x0000003f , 0x0000003f 
- 00029401  0x00007fc3 ior  0x00000002 , 0x0000003f 
- 00029402  0x00007fc4 istore  0x00000001 , 0x00000005 
- 00029403  0x00007fc5 loop  0x000072d5 
- 00029404  0x00007fc6 setarg  0x000005c2 
- 00029405  0x00007fc7 iadd  0x00000012 , 0x00000006 
- 00029406  0x00007fc8 force  0x00000010 , 0x00000039 
- 00029407  0x00007fc9 arg  0x00000572 , 0x00000005 
- 00029408  0x00007fcb ifetch  0x00000001 , 0x00000006 
- 00029409  0x00007fcc istore  0x00000001 , 0x00000005 
- 00029410  0x00007fcd compare  0x000005d3 , 0x00000006 , 0x000000ff 
- 00029411  0x00007fce nbranch  0x000072e5 , 0x00000001 
- 00029412  0x00007fcf increase  0xffffffef , 0x00000006 
- 00029413  0x00007fd1 loop  0x000072e0 
- 00029414  0x00007fd2 force  0x00000000 , 0x00000011 
- 00029415  0x00007fd3 add  0x00000012 , 0xffffffff , 0x00000013 
- 00029416  0x00007fd4 lshift2  0x00000013 , 0x00000013 
- 00029417  0x00007fd5 lshift2  0x00000013 , 0x00000013 
- 00029418  0x00007fd6 call  0x000074b9 
- 00029419  0x00007fd7 setarg  0x00008400 
- 00029420  0x00007fd8 iadd  0x00000013 , 0x00000013 
- 00029421  0x00007fd9 arg  0x00000572 , 0x00000005 
- 00029422  0x00007fda force  0x00000010 , 0x00000039 
- 00029423  0x00007fdc ifetcht  0x00000001 , 0x00000013 
- 00029424  0x00007fdd ifetch  0x00000001 , 0x00000005 
- 00029425  0x00007fde iadd  0x00000002 , 0x0000003f 
- 00029426  0x00007fdf istore  0x00000001 , 0x00000005 
- 00029427  0x00007fe0 increase  0x00000001 , 0x00000013 
- 00029428  0x00007fe1 loop  0x000072ef 
- 00029429  0x00007fe2 branch  0x000074bd 
- 00029430  0x00007fe5 force  0x00000010 , 0x00000039 
- 00029431  0x00007fe6 force  0x00000000 , 0x00000002 
- 00029432  0x00007fe8 ifetch  0x00000001 , 0x00000006 
- 00029433  0x00007fe9 ixor  0x00000002 , 0x00000002 
- 00029434  0x00007fea loop  0x000072f8 
- 00029435  0x00007feb deposit  0x00000002 
- 00029436  0x00007fec istore  0x00000001 , 0x00000006 
- 00029437  0x00007fed arg  0x000005c2 , 0x00000006 
- 00029438  0x00007fee arg  0x00000572 , 0x00000005 
- 00029439  0x00007fef branch  0x00007ebf 
- 00029440  0x00007ff2 arg  0x00000572 , 0x00000012 
- 00029441  0x00007ff4 force  0x00000010 , 0x00000039 
- 00029442  0x00007ff5 arg  0x00000592 , 0x00000011 
- 00029443  0x00007ff6 copy  0x00000011 , 0x00000005 
- 00029444  0x00007ff8 ifetcht  0x00000001 , 0x00000011 
- 00029445  0x00007ff9 ifetch  0x00000001 , 0x00000012 
- 00029446  0x00007ffa ixor  0x00000002 , 0x00000030 
- 00029447  0x00007ffb and  0x00000039 , 0x00000003 , 0x00000013 
- 00029448  0x00007ffc nbranch  0x0000730a , 0x00000028 
- 00029449  0x00007ffd xor_into  0x00000003 , 0x00000013 
- 00029450  0x00007fff sub  0x00000013 , 0x00000001 , 0x00000013 
- 00029451  0x00008000 branch  0x0000730d , 0x00000002 
- 00029452  0x00008001 iadd  0x00000002 , 0x00000030 
- 00029453  0x00008003 deposit  0x00000030 
- 00029454  0x00008004 istore  0x00000001 , 0x00000005 
- 00029455  0x00008005 increase  0x00000001 , 0x00000011 
- 00029456  0x00008006 increase  0x00000001 , 0x00000012 
- 00029457  0x00008007 loop  0x00007304 
- 00029458  0x00008008 rtn 
- 00029459  0x0000800b call  0x000074b9 
- 00029460  0x0000800c force  0x00000010 , 0x00000039 
- 00029461  0x0000800d arg  0x00000592 , 0x00000011 
- 00029462  0x0000800f ifetch  0x00000001 , 0x00000011 
- 00029463  0x00008010 arg  0x00008500 , 0x00000006 
- 00029464  0x00008011 and  0x00000039 , 0x00000003 , 0x00000013 
- 00029465  0x00008012 sub  0x00000013 , 0x00000001 , 0x0000003e 
- 00029466  0x00008013 branch  0x0000731c , 0x00000002 
- 00029467  0x00008014 arg  0x00008600 , 0x00000006 
- 00029468  0x00008016 iadd  0x00000006 , 0x00000006 
- 00029469  0x00008017 ifetch  0x00000001 , 0x00000006 
- 00029470  0x00008018 istore  0x00000001 , 0x00000011 
- 00029471  0x00008019 increase  0x00000001 , 0x00000011 
- 00029472  0x0000801a loop  0x00007316 
- 00029473  0x0000801b branch  0x000074bd 
- 00029474  0x0000801e force  0x00000008 , 0x00000039 
- 00029475  0x0000801f arg  0x00000592 , 0x00000006 
- 00029476  0x00008020 copy  0x00000006 , 0x00000005 
- 00029477  0x00008022 ifetch  0x00000001 , 0x00000006 
- 00029478  0x00008023 iforce  0x00000011 
- 00029479  0x00008024 ifetch  0x00000001 , 0x00000006 
- 00029480  0x00008025 iforce  0x00000012 
- 00029481  0x00008026 lshift  0x00000011 , 0x0000003f 
- 00029482  0x00008027 iadd  0x00000012 , 0x0000003f 
- 00029483  0x00008028 istore  0x00000001 , 0x00000005 
- 00029484  0x00008029 deposit  0x00000011 
- 00029485  0x0000802a iadd  0x00000012 , 0x0000003f 
- 00029486  0x0000802b istore  0x00000001 , 0x00000005 
- 00029487  0x0000802c loop  0x00007325 
- 00029488  0x0000802d rtn 
- 00029489  0x00008031 setarg  0x008ae42c 
- 00029490  0x00008032 iforce  0x00000002 
- 00029491  0x00008033 force  0x00000007 , 0x00000039 
- 00029492  0x00008034 call  0x00007340 
- 00029493  0x00008035 setarg  0x000d751b 
- 00029494  0x00008036 iforce  0x00000002 
- 00029495  0x00008037 force  0x00000005 , 0x00000039 
- 00029496  0x00008038 call  0x00007340 
- 00029497  0x00008039 fetch  0x00000001 , 0x000005a1 
- 00029498  0x0000803a iforce  0x00000011 
- 00029499  0x0000803b fetch  0x00000001 , 0x00000595 
- 00029500  0x0000803c store  0x00000001 , 0x000005a1 
- 00029501  0x0000803d deposit  0x00000011 
- 00029502  0x0000803e store  0x00000001 , 0x00000595 
- 00029503  0x0000803f rtn 
- 00029504  0x00008042 and  0x00000002 , 0x0000000f , 0x00000012 
- 00029505  0x00008044 and  0x00000002 , 0x0000000f , 0x0000003f 
- 00029506  0x00008045 arg  0x00000592 , 0x00000005 
- 00029507  0x00008046 iadd  0x00000005 , 0x00000005 
- 00029508  0x00008047 ifetch  0x00000001 , 0x00000005 
- 00029509  0x00008048 iforce  0x00000013 
- 00029510  0x00008049 deposit  0x00000011 
- 00029511  0x0000804a istore  0x00000001 , 0x00000005 
- 00029512  0x0000804b copy  0x00000013 , 0x00000011 
- 00029513  0x0000804c rshift4  0x00000002 , 0x00000002 
- 00029514  0x0000804d loop  0x00007341 
- 00029515  0x0000804e setarg  0x00000592 
- 00029516  0x0000804f iadd  0x00000012 , 0x00000005 
- 00029517  0x00008050 deposit  0x00000011 
- 00029518  0x00008051 istore  0x00000001 , 0x00000005 
- 00029519  0x00008052 rtn 
- 00029520  0x00008055 enable  0x00000028 
- 00029521  0x00008056 branch  0x00007353 
- 00029522  0x00008059 disable  0x00000028 
- 00029523  0x0000805b force  0x00000010 , 0x00000039 
- 00029524  0x0000805d ifetcht  0x00000001 , 0x00000011 
- 00029525  0x0000805e ifetch  0x00000001 , 0x00000012 
- 00029526  0x0000805f branch  0x00007359 , 0x00000028 
- 00029527  0x00008060 ixor  0x00000002 , 0x0000003f 
- 00029528  0x00008061 branch  0x0000735a 
- 00029529  0x00008063 iadd  0x00000002 , 0x0000003f 
- 00029530  0x00008065 istore  0x00000001 , 0x00000005 
- 00029531  0x00008066 increase  0x00000001 , 0x00000011 
- 00029532  0x00008067 increase  0x00000001 , 0x00000012 
- 00029533  0x00008068 loop  0x00007354 
- 00029534  0x00008069 rtn 
- 00029535  0x0000806d arg  0x000005b2 , 0x00000005 
- 00029536  0x0000806e ifetch  0x00000006 , 0x00000011 
- 00029537  0x0000806f istore  0x00000006 , 0x00000005 
- 00029538  0x00008070 branch  0x00007365 , 0x00000028 
- 00029539  0x00008071 ifetch  0x00000006 , 0x00000011 
- 00029540  0x00008072 branch  0x00007366 
- 00029541  0x00008074 ifetch  0x00000006 , 0x00000006 
- 00029542  0x00008076 istore  0x00000006 , 0x00000005 
- 00029543  0x00008077 ifetch  0x00000004 , 0x00000011 
- 00029544  0x00008078 istore  0x00000004 , 0x00000005 
- 00029545  0x00008079 rtn 
- 00029546  0x0000807c arg  0x000041be , 0x00000006 
- 00029547  0x0000807d arg  0x000005a2 , 0x00000005 
- 00029548  0x0000807e arg  0x00000000 , 0x00000002 
- 00029549  0x0000807f setarg  0x008395a7 
- 00029550  0x00008080 call  0x0000738b 
- 00029551  0x00008081 setarg  0x00b3c1df 
- 00029552  0x00008082 call  0x0000738b 
- 00029553  0x00008083 setarg  0x0000e5e9 
- 00029554  0x00008084 call  0x0000738c 
- 00029555  0x00008085 copy  0x00000002 , 0x00000014 
- 00029556  0x00008086 disable  0x00000028 
- 00029557  0x00008087 call  0x00007379 
- 00029558  0x00008088 copy  0x00000014 , 0x00000002 
- 00029559  0x00008089 enable  0x00000028 
- 00029560  0x0000808a branch  0x00007379 
- 00029561  0x0000808d force  0x00000008 , 0x00000039 
- 00029562  0x0000808f ifetch  0x00000001 , 0x00000006 
- 00029563  0x00008090 compare  0x00000001 , 0x00000039 , 0x00000001 
- 00029564  0x00008091 branch  0x00007380 , 0x00000028 
- 00029565  0x00008092 branch  0x00007381 , 0x00000001 
- 00029566  0x00008094 iadd  0x00000002 , 0x0000003f 
- 00029567  0x00008095 branch  0x00007382 
- 00029568  0x00008097 branch  0x0000737e , 0x00000001 
- 00029569  0x00008099 ixor  0x00000002 , 0x0000003f 
- 00029570  0x0000809b istore  0x00000001 , 0x00000005 
- 00029571  0x0000809c rshift8  0x00000002 , 0x00000002 
- 00029572  0x0000809d loop  0x0000737a 
- 00029573  0x0000809e rtn 
- 00029574  0x000080a1 fetch  0x00000006 , 0x00000596 
- 00029575  0x000080a2 store  0x00000006 , 0x00000056 
- 00029576  0x000080a3 ifetch  0x00000006 , 0x00000006 
- 00029577  0x000080a4 istore  0x00000006 , 0x00000005 
- 00029578  0x000080a5 rtn 
- 00029579  0x000080a8 lshift8  0x00000002 , 0x00000002 
- 00029580  0x000080aa lshift16  0x00000002 , 0x00000002 
- 00029581  0x000080ab ior  0x00000002 , 0x00000002 
- 00029582  0x000080ac rtn 
- 00029583  0x000080b1 branch  0x0000738f 
- 00029584  0x000080b6 bpatchx  0x000000e0 , 0x0000403c 
- 00029585  0x000080b7 call  0x0000742b 
- 00029586  0x000080b8 arg  0x00004419 , 0x00000005 
- 00029587  0x000080b9 branch  0x00007497 
- 00029588  0x000080bd arg  0x0000443a , 0x00000005 
- 00029589  0x000080be branch  0x00007397 , 0x00000029 
- 00029590  0x000080bf arg  0x0000042f , 0x00000005 
- 00029591  0x000080c1 copy  0x00000006 , 0x00000011 
- 00029592  0x000080c2 call  0x00007ebf 
- 00029593  0x000080c3 call  0x00007440 
- 00029594  0x000080c4 arg  0x0000442a , 0x00000006 
- 00029595  0x000080c5 branch  0x000074b0 
- 00029596  0x000080c8 arg  0x0000042f , 0x00000011 
- 00029597  0x000080c9 branch  0x0000739f , 0x00000029 
- 00029598  0x000080ca arg  0x0000443a , 0x00000011 
- 00029599  0x000080cc copy  0x00000011 , 0x00000005 
- 00029600  0x000080cd call  0x0000630c 
- 00029601  0x000080ce branch  0x00007440 
- 00029602  0x000080d1 arg  0x000044aa , 0x00000006 
- 00029603  0x000080d2 call  0x00007486 
- 00029604  0x000080d3 arg  0x00004419 , 0x00000006 
- 00029605  0x000080d4 call  0x00007487 
- 00029606  0x000080d5 force  0x00000038 , 0x00000036 
- 00029607  0x000080d6 force  0x00000000 , 0x00000036 
- 00029608  0x000080d7 call  0x0000741d 
- 00029609  0x000080d8 arg  0x0000047c , 0x00000005 
- 00029610  0x000080d9 branch  0x00007497 
- 00029611  0x000080dd force  0x00000049 , 0x0000003f 
- 00029612  0x000080de branch  0x000073ae 
- 00029613  0x000080e0 force  0x00000001 , 0x0000003f 
- 00029614  0x000080e2 force  0x00000000 , 0x00000038 
- 00029615  0x000080e3 lshift8  0x00000002 , 0x0000002f 
- 00029616  0x000080e4 ior  0x0000002f , 0x0000002f 
- 00029617  0x000080e5 increase  0x00000001 , 0x00000038 
- 00029618  0x000080e6 rshift8  0x00000002 , 0x0000002f 
- 00029619  0x000080e7 rshift16  0x0000002f , 0x0000002f 
- 00029620  0x000080e8 fetch  0x00000002 , 0x00004411 
- 00029621  0x000080e9 lshift16 , 0x0000003f , 0x0000003f 
- 00029622  0x000080ea ior  0x0000002f , 0x0000002f 
- 00029623  0x000080eb increase  0x00000001 , 0x00000038 
- 00029624  0x000080ec ifetch  0x00000004 , 0x00000006 
- 00029625  0x000080ed iforce  0x0000002f 
- 00029626  0x000080ee increase  0x00000001 , 0x00000038 
- 00029627  0x000080ef ifetch  0x00000002 , 0x00000006 
- 00029628  0x000080f0 byteswap  0x00000011 , 0x0000002f 
- 00029629  0x000080f1 lshift16  0x0000002f , 0x0000002f 
- 00029630  0x000080f2 ior  0x0000002f , 0x0000002f 
- 00029631  0x000080f3 increase  0x00000001 , 0x00000038 
- 00029632  0x000080f4 rtn 
- 00029633  0x000080f9 add  0x00000013 , 0x00000001 , 0x00000006 
- 00029634  0x000080fa ifetch  0x00000001 , 0x00000006 
- 00029635  0x000080fb iforce  0x00000011 
- 00029636  0x000080fc call  0x000073ab 
- 00029637  0x000080fd call  0x0000741f 
- 00029638  0x000080ff force  0x00000000 , 0x00000038 
- 00029639  0x00008100 ifetch  0x00000001 , 0x00000013 
- 00029640  0x00008101 and_into  0x00000003 , 0x0000003f 
- 00029641  0x00008102 lshift16  0x0000003f , 0x0000002f 
- 00029642  0x00008103 set1  0x00000008 , 0x0000002f 
- 00029643  0x00008104 call  0x0000748f 
- 00029644  0x00008105 call  0x00007422 
- 00029645  0x00008107 copy  0x00000011 , 0x00000039 
- 00029646  0x00008108 add  0x00000013 , 0x00000002 , 0x00000006 
- 00029647  0x00008109 call  0x0000746e 
- 00029648  0x0000810b call  0x00007478 
- 00029649  0x0000810c call  0x00007422 
- 00029650  0x0000810d deposit  0x00000039 
- 00029651  0x0000810e branch  0x000073d5 , 0x00000034 
- 00029652  0x0000810f branch  0x000073d0 
- 00029653  0x00008111 force  0x0000000c , 0x00000038 
- 00029654  0x00008112 deposit  0x0000002f 
- 00029655  0x00008113 store  0x00000004 , 0x00000417 
- 00029656  0x00008114 rtn 
- 00029657  0x00008117 increase  0x00000001 , 0x00000011 
- 00029658  0x00008118 call  0x000073ad 
- 00029659  0x00008119 copy  0x00000013 , 0x00000006 
- 00029660  0x0000811a call  0x00007482 
- 00029661  0x0000811b call  0x00007425 
- 00029662  0x0000811c call  0x0000749e 
- 00029663  0x0000811d increase  0x00000010 , 0x00000013 
- 00029664  0x0000811e increase  0xfffffff0 , 0x00000012 
- 00029665  0x0000811f branch  0x000073d9 , 0x00000002 
- 00029666  0x00008120 rtn 
- 00029667  0x00008123 bpatchx  0x000000e1 , 0x0000403c 
- 00029668  0x00008124 arg  0x000043dc , 0x00000013 
- 00029669  0x00008125 fetcht  0x00000005 , 0x00004403 
- 00029670  0x00008126 call  0x000073c1 
- 00029671  0x00008127 force  0x00000008 , 0x00000038 
- 00029672  0x00008128 iforce  0x0000002f 
- 00029673  0x00008129 force  0x00000000 , 0x00000011 
- 00029674  0x0000812a call  0x000073ad 
- 00029675  0x0000812b call  0x00007425 
- 00029676  0x0000812c arg  0x000043de , 0x00000013 
- 00029677  0x0000812d fetch  0x00000001 , 0x000043dd 
- 00029678  0x0000812e add  0x0000003f , 0xffffffff , 0x00000012 
- 00029679  0x0000812f iadd  0x00000013 , 0x00000005 
- 00029680  0x00008130 force  0x0000000c , 0x00000038 
- 00029681  0x00008131 deposit  0x0000002f 
- 00029682  0x00008132 istore  0x00000004 , 0x00000005 
- 00029683  0x00008133 call  0x000073d9 
- 00029684  0x00008134 fetch  0x00000001 , 0x000043dd 
- 00029685  0x00008135 increase  0x00000004 , 0x0000003f 
- 00029686  0x00008136 store  0x00000001 , 0x000043dd 
- 00029687  0x00008137 fetcht  0x00000005 , 0x00004403 
- 00029688  0x00008138 increase  0x00000001 , 0x00000002 
- 00029689  0x00008139 storet  0x00000005 , 0x00004403 
- 00029690  0x0000813a rtn 
- 00029691  0x0000813d bpatchx  0x000000e2 , 0x0000403c 
- 00029692  0x0000813e fetch  0x00000001 , 0x000002da 
- 00029693  0x0000813f sub  0x0000003f , 0x00000014 , 0x0000003e 
- 00029694  0x00008140 branch  0x000073ff , 0x00000002 
- 00029695  0x00008142 arg  0x000002db , 0x00000013 
- 00029696  0x00008143 add  0x0000003f , 0xffffffff , 0x00000012 
- 00029697  0x00008144 increase  0xfffffffc , 0x0000003f 
- 00029698  0x00008145 store  0x00000001 , 0x000002da 
- 00029699  0x00008146 iadd  0x00000013 , 0x00000006 
- 00029700  0x00008147 ifetch  0x00000004 , 0x00000006 
- 00029701  0x00008148 force  0x00000008 , 0x00000038 
- 00029702  0x00008149 iforce  0x0000002f 
- 00029703  0x0000814a force  0x00000000 , 0x00000011 
- 00029704  0x0000814b fetcht  0x00000005 , 0x00004408 
- 00029705  0x0000814c call  0x000073ad 
- 00029706  0x0000814d call  0x00007425 
- 00029707  0x0000814e force  0x0000000c , 0x00000038 
- 00029708  0x0000814f deposit  0x0000002f 
- 00029709  0x00008150 store  0x00000004 , 0x0000041b 
- 00029710  0x00008151 call  0x000073d9 
- 00029711  0x00008152 arg  0x000002d9 , 0x00000013 
- 00029712  0x00008153 call  0x000073c1 
- 00029713  0x00008154 fetcht  0x00000004 , 0x0000041b 
- 00029714  0x00008155 isub  0x00000002 , 0x0000003f 
- 00029715  0x00008156 nrtn  0x00000034 
- 00029716  0x00008157 fetch  0x00000004 , 0x0000440d 
- 00029717  0x00008158 isub  0x00000002 , 0x0000003f 
- 00029718  0x00008159 rtn  0x00000034 
- 00029719  0x0000815a storet  0x00000004 , 0x0000440d 
- 00029720  0x0000815b fetch  0x00000005 , 0x00004408 
- 00029721  0x0000815c increase  0x00000001 , 0x0000003f 
- 00029722  0x0000815d store  0x00000005 , 0x00004408 
- 00029723  0x0000815e force  0x00000000 , 0x0000003f 
- 00029724  0x0000815f rtn 
- 00029725  0x00008162 nbranch  0x0000741d , 0x00000037 
- 00029726  0x00008163 rtn 
- 00029727  0x00008166 force  0x00000030 , 0x00000036 
- 00029728  0x00008167 force  0x00000000 , 0x00000036 
- 00029729  0x00008168 branch  0x0000741d 
- 00029730  0x0000816b force  0x00000032 , 0x00000036 
- 00029731  0x0000816c force  0x00000002 , 0x00000036 
- 00029732  0x0000816d branch  0x0000741d 
- 00029733  0x00008170 force  0x00000034 , 0x00000036 
- 00029734  0x00008171 force  0x00000004 , 0x00000036 
- 00029735  0x00008172 branch  0x0000741d 
- 00029736  0x00008176 force  0x00000001 , 0x00000036 
- 00029737  0x00008177 force  0x00000000 , 0x00000036 
- 00029738  0x00008178 rtn 
- 00029739  0x0000817a force  0x00000000 , 0x00000038 
- 00029740  0x0000817b fetch  0x00000004 , 0x0000042f 
- 00029741  0x0000817c iforce  0x0000002f 
- 00029742  0x0000817d increase  0x00000001 , 0x00000038 
- 00029743  0x0000817e ifetch  0x00000004 , 0x00000006 
- 00029744  0x0000817f iforce  0x0000002f 
- 00029745  0x00008180 increase  0x00000001 , 0x00000038 
- 00029746  0x00008181 fetch  0x00000004 , 0x0000443a 
- 00029747  0x00008182 iforce  0x0000002f 
- 00029748  0x00008183 increase  0x00000001 , 0x00000038 
- 00029749  0x00008184 ifetch  0x00000004 , 0x00000006 
- 00029750  0x00008185 iforce  0x0000002f 
- 00029751  0x00008186 increase  0x00000001 , 0x00000038 
- 00029752  0x00008187 call  0x00007492 
- 00029753  0x00008188 increase  0xfffffffc , 0x00000038 
- 00029754  0x00008189 fetch  0x00000004 , 0x000044c7 
- 00029755  0x0000818a copy  0x0000003f , 0x0000002f 
- 00029756  0x0000818b increase  0x00000004 , 0x00000038 
- 00029757  0x0000818c force  0x00000038 , 0x00000036 
- 00029758  0x0000818d force  0x00000008 , 0x00000036 
- 00029759  0x0000818e branch  0x0000741d 
- 00029760  0x00008192 bpatchx  0x000000e3 , 0x0000403c 
- 00029761  0x00008193 fetch  0x00000006 , 0x000044a0 
- 00029762  0x00008194 fetcht  0x00000006 , 0x0000044f 
- 00029763  0x00008195 branch  0x00007446 , 0x00000029 
- 00029764  0x00008196 fetch  0x00000006 , 0x0000044f 
- 00029765  0x00008197 fetcht  0x00000006 , 0x000044a0 
- 00029766  0x00008199 force  0x00000008 , 0x00000038 
- 00029767  0x0000819a copy  0x00000002 , 0x0000002f 
- 00029768  0x0000819b increase  0x00000001 , 0x00000038 
- 00029769  0x0000819c rshift32  0x00000002 , 0x0000002f 
- 00029770  0x0000819d lshift16  0x0000003f , 0x0000003f 
- 00029771  0x0000819e ior  0x0000002f , 0x0000002f 
- 00029772  0x0000819f increase  0x00000001 , 0x00000038 
- 00029773  0x000081a0 rshift32  0x0000003f , 0x0000002f 
- 00029774  0x000081a1 increase  0x00000001 , 0x00000038 
- 00029775  0x000081a2 force  0x00000000 , 0x0000002f 
- 00029776  0x000081a3 force  0x00000000 , 0x0000003f 
- 00029777  0x000081a4 fetch  0x00000001 , 0x0000448e 
- 00029778  0x000081a5 fetcht  0x00000001 , 0x00004485 
- 00029779  0x000081a6 nbranch  0x00007456 , 0x00000029 
- 00029780  0x000081a8 fetch  0x00000001 , 0x00004495 
- 00029781  0x000081a9 fetcht  0x00000001 , 0x0000448e 
- 00029782  0x000081ab store  0x00000001 , 0x0000444a 
- 00029783  0x000081ac storet  0x00000001 , 0x0000444b 
- 00029784  0x000081ad force  0x00000000 , 0x00000038 
- 00029785  0x000081ae arg  0x0000444a , 0x00000012 
- 00029786  0x000081af force  0x00000004 , 0x00000039 
- 00029787  0x000081b1 ifetch  0x00000004 , 0x00000011 
- 00029788  0x000081b2 ifetcht  0x00000004 , 0x00000012 
- 00029789  0x000081b3 ixor  0x00000002 , 0x0000002f 
- 00029790  0x000081b4 increase  0x00000001 , 0x00000038 
- 00029791  0x000081b5 increase  0x00000004 , 0x00000011 
- 00029792  0x000081b6 increase  0x00000004 , 0x00000012 
- 00029793  0x000081b7 loop  0x0000745b 
- 00029794  0x000081b8 call  0x00007492 
- 00029795  0x000081b9 increase  0xfffffffc , 0x00000038 
- 00029796  0x000081ba fetch  0x00000004 , 0x000044c7 
- 00029797  0x000081bb copy  0x0000003f , 0x0000002f 
- 00029798  0x000081bc increase  0x00000004 , 0x00000038 
- 00029799  0x000081bd force  0x00000038 , 0x00000036 
- 00029800  0x000081be force  0x0000000c , 0x00000036 
- 00029801  0x000081bf call  0x0000741d 
- 00029802  0x000081c1 call  0x00007491 
- 00029803  0x000081c2 force  0x0000003a , 0x00000036 
- 00029804  0x000081c3 force  0x00000008 , 0x00000036 
- 00029805  0x000081c4 branch  0x0000741d 
- 00029806  0x000081c7 compare  0x00000000 , 0x00000039 , 0x00000003 
- 00029807  0x000081c8 rtn  0x00000001 
- 00029808  0x000081c9 deposit  0x00000006 
- 00029809  0x000081ca iadd  0x00000039 , 0x00000005 
- 00029810  0x000081cb force  0x00000000 , 0x0000003f 
- 00029811  0x000081cd istore  0x00000001 , 0x00000005 
- 00029812  0x000081ce increase  0x00000001 , 0x00000039 
- 00029813  0x000081cf compare  0x00000000 , 0x00000039 , 0x00000003 
- 00029814  0x000081d0 rtn  0x00000001 
- 00029815  0x000081d1 branch  0x00007473 
- 00029816  0x000081d4 force  0x00000000 , 0x00000038 
- 00029817  0x000081d6 deposit  0x00000039 
- 00029818  0x000081d7 branch  0x0000747d , 0x00000034 
- 00029819  0x000081d8 ifetch  0x00000004 , 0x00000006 
- 00029820  0x000081d9 increase  0xfffffffc , 0x00000039 
- 00029821  0x000081db iforce  0x0000002f 
- 00029822  0x000081dc increase  0x00000001 , 0x00000038 
- 00029823  0x000081dd compare  0x00000004 , 0x00000038 , 0x0000000f 
- 00029824  0x000081de rtn  0x00000001 
- 00029825  0x000081df branch  0x00007479 
- 00029826  0x000081e2 force  0x00000008 , 0x00000038 
- 00029827  0x000081e3 branch  0x00007487 
- 00029828  0x000081e5 force  0x00000004 , 0x00000038 
- 00029829  0x000081e6 branch  0x00007487 
- 00029830  0x000081e8 force  0x00000000 , 0x00000038 
- 00029831  0x000081ea force  0x00000004 , 0x00000039 
- 00029832  0x000081ec ifetch  0x00000004 , 0x00000006 
- 00029833  0x000081ed iforce  0x0000002f 
- 00029834  0x000081ee increase  0x00000001 , 0x00000038 
- 00029835  0x000081ef loop  0x00007488 
- 00029836  0x000081f0 rtn 
- 00029837  0x000081f3 arg  0x0000047c , 0x00000006 
- 00029838  0x000081f4 branch  0x00007484 
- 00029839  0x000081f7 force  0x00000004 , 0x00000039 
- 00029840  0x000081f8 branch  0x00007494 
- 00029841  0x000081fb force  0x00000000 , 0x00000038 
- 00029842  0x000081fd force  0x00000004 , 0x00000039 
- 00029843  0x000081ff force  0x00000000 , 0x0000002f 
- 00029844  0x00008201 increase  0x00000001 , 0x00000038 
- 00029845  0x00008202 loop  0x00007493 
- 00029846  0x00008203 rtn 
- 00029847  0x00008206 force  0x0000000c , 0x00000038 
- 00029848  0x00008207 force  0x00000004 , 0x00000039 
- 00029849  0x00008209 deposit  0x0000002f 
- 00029850  0x0000820a istore  0x00000004 , 0x00000005 
- 00029851  0x0000820b increase  0x00000001 , 0x00000038 
- 00029852  0x0000820c loop  0x00007499 
- 00029853  0x0000820d rtn 
- 00029854  0x00008210 force  0x0000000c , 0x00000038 
- 00029855  0x00008211 copy  0x00000013 , 0x00000005 
- 00029856  0x00008212 add  0x00000012 , 0x00000001 , 0x00000039 
- 00029857  0x00008213 sub  0x00000039 , 0x0000000f , 0x0000003e 
- 00029858  0x00008214 branch  0x000074a4 , 0x00000002 
- 00029859  0x00008215 force  0x00000010 , 0x00000039 
- 00029860  0x00008217 deposit  0x0000002f 
- 00029861  0x00008218 sub  0x00000039 , 0x00000003 , 0x0000003e 
- 00029862  0x00008219 branch  0x000074ac , 0x00000002 
- 00029863  0x0000821a istore  0x00000004 , 0x00000005 
- 00029864  0x0000821b increase  0xfffffffc , 0x00000039 
- 00029865  0x0000821c rtn  0x00000005 
- 00029866  0x0000821d increase  0x00000001 , 0x00000038 
- 00029867  0x0000821e branch  0x000074a4 
- 00029868  0x00008220 istore  0x00000001 , 0x00000005 
- 00029869  0x00008221 rshift8  0x0000003f , 0x0000003f 
- 00029870  0x00008222 loop  0x000074ac 
- 00029871  0x00008223 rtn 
- 00029872  0x00008227 force  0x0000000c , 0x00000038 
- 00029873  0x00008228 force  0x00000004 , 0x00000039 
- 00029874  0x0000822a ifetch  0x00000004 , 0x00000006 
- 00029875  0x0000822b isub  0x0000002f , 0x0000003e 
- 00029876  0x0000822c nrtn  0x00000005 
- 00029877  0x0000822d increase  0x00000001 , 0x00000038 
- 00029878  0x0000822e loop  0x000074b2 
- 00029879  0x0000822f force  0x00000000 , 0x0000003e 
- 00029880  0x00008230 rtn 
- 00029881  0x00008233 hfetch  0x00000001 , 0x00008050 
- 00029882  0x00008234 set0  0x00000000 , 0x0000003f 
- 00029883  0x00008235 hstore  0x00000001 , 0x00008050 
- 00029884  0x00008236 rtn 
- 00029885  0x00008239 hfetch  0x00000001 , 0x00008050 
- 00029886  0x0000823a set1  0x00000000 , 0x0000003f 
- 00029887  0x0000823b hstore  0x00000001 , 0x00008050 
- 00029888  0x0000823c rtn 
- 00029889  0x0000823f arg  0x00000886 , 0x00000005 
- 00029890  0x00008240 setsect  0x00000000 , 0x0003ffff 
- 00029891  0x00008241 setsect  0x00000001 , 0x0003ffff 
- 00029892  0x00008242 setsect  0x00000002 , 0x0003ffff 
- 00029893  0x00008243 setsect  0x00000003 , 0x0003fbff 
- 00029894  0x00008244 istore  0x00000009 , 0x00000005 
- 00029895  0x00008245 setsect  0x00000000 , 0x0003ffff 
- 00029896  0x00008246 setsect  0x00000001 , 0x0003ffff 
- 00029897  0x00008247 setsect  0x00000002 , 0x0003ffff 
- 00029898  0x00008248 setsect  0x00000003 , 0x0003ffff 
- 00029899  0x00008249 istore  0x00000009 , 0x00000005 
- 00029900  0x0000824a setsect  0x00000000 , 0x0003ffff 
- 00029901  0x0000824b setsect  0x00000001 , 0x0003ffff 
- 00029902  0x0000824c setsect  0x00000002 , 0x0003cfff 
- 00029903  0x0000824d setsect  0x00000003 , 0x0003ffff 
- 00029904  0x0000824e istore  0x00000009 , 0x00000005 
- 00029905  0x0000824f setsect  0x00000000 , 0x0003ffff 
- 00029906  0x00008250 setsect  0x00000001 , 0x0003ffff 
- 00029907  0x00008251 setsect  0x00000002 , 0x0003ffef 
- 00029908  0x00008252 setsect  0x00000003 , 0x0003ffff 
- 00029909  0x00008253 istore  0x00000009 , 0x00000005 
- 00029910  0x00008254 setsect  0x00000000 , 0x0003ffff 
- 00029911  0x00008255 setsect  0x00000001 , 0x0003ffff 
- 00029912  0x00008256 setsect  0x00000002 , 0x0003ffff 
- 00029913  0x00008257 setsect  0x00000003 , 0x0003ffff 
- 00029914  0x00008258 istore  0x00000009 , 0x00000005 
- 00029915  0x00008259 setsect  0x00000000 , 0x0003ffff 
- 00029916  0x0000825a setsect  0x00000001 , 0x00026c7f 
- 00029917  0x0000825b setsect  0x00000002 , 0x0000146b 
- 00029918  0x0000825c setsect  0x00000003 , 0x00037bb3 
- 00029919  0x0000825d istore  0x00000009 , 0x00000005 
- 00029920  0x0000825e setsect  0x00000000 , 0x0001feb8 
- 00029921  0x0000825f setsect  0x00000001 , 0x00010c12 
- 00029922  0x00008260 setsect  0x00000002 , 0x0002b722 
- 00029923  0x00008261 setsect  0x00000003 , 0x00029fa6 
- 00029924  0x00008262 istore  0x00000009 , 0x00000005 
- 00029925  0x00008263 setsect  0x00000000 , 0x0000e70f 
- 00029926  0x00008264 setsect  0x00000001 , 0x00016720 
- 00029927  0x00008265 setsect  0x00000002 , 0x0000519e 
- 00029928  0x00008266 setsect  0x00000003 , 0x00019084 
- 00029929  0x00008267 istore  0x00000009 , 0x00000005 
- 00029930  0x00008268 setsect  0x00000000 , 0x00031012 
- 00029931  0x00008269 setsect  0x00000001 , 0x000360bf 
- 00029932  0x0000826a setsect  0x00000002 , 0x0003f0af 
- 00029933  0x0000826b setsect  0x00000003 , 0x000003d3 
- 00029934  0x0000826c istore  0x00000009 , 0x00000005 
- 00029935  0x0000826d setsect  0x00000000 , 0x0003a188 
- 00029936  0x0000826e setsect  0x00000001 , 0x00003ad0 
- 00029937  0x0000826f setsect  0x00000002 , 0x0003cbf2 
- 00029938  0x00008270 setsect  0x00000003 , 0x000243d9 
- 00029939  0x00008271 istore  0x00000009 , 0x00000005 
- 00029940  0x00008272 setsect  0x00000000 , 0x0002b030 
- 00029941  0x00008273 setsect  0x00000001 , 0x00036a03 
- 00029942  0x00008274 setsect  0x00000002 , 0x00011188 
- 00029943  0x00008275 setsect  0x00000003 , 0x0001e520 
- 00029944  0x00008276 istore  0x00000009 , 0x00000005 
- 00029945  0x00008277 setsect  0x00000000 , 0x0003a11e 
- 00029946  0x00008278 setsect  0x00000001 , 0x0000fe5d 
- 00029947  0x00008279 setsect  0x00000002 , 0x0000dd57 
- 00029948  0x0000827a setsect  0x00000003 , 0x0001ac93 
- 00029949  0x0000827b istore  0x00000009 , 0x00000005 
- 00029950  0x0000827c setsect  0x00000000 , 0x000011ed 
- 00029951  0x0000827d setsect  0x00000001 , 0x000218c4 
- 00029952  0x0000827e setsect  0x00000002 , 0x00008da7 
- 00029953  0x0000827f setsect  0x00000003 , 0x000257ff 
- 00029954  0x00008280 istore  0x00000009 , 0x00000005 
- 00029955  0x00008281 setsect  0x00000000 , 0x0003192b 
- 00029956  0x00008282 setsect  0x00000001 , 0x00034641 
- 00029957  0x00008283 setsect  0x00000002 , 0x0001be0c 
- 00029958  0x00008284 setsect  0x00000003 , 0x000366ad 
- 00029959  0x00008285 istore  0x00000009 , 0x00000005 
- 00029960  0x00008286 setsect  0x00000000 , 0x00001f83 
- 00029961  0x00008287 setsect  0x00000001 , 0x00015a23 
- 00029962  0x00008288 setsect  0x00000002 , 0x0003f9b0 
- 00029963  0x00008289 setsect  0x00000003 , 0x00003949 
- 00029964  0x0000828a istore  0x00000009 , 0x00000005 
- 00029965  0x0000828b setsect  0x00000000 , 0x00013a51 
- 00029966  0x0000828c setsect  0x00000001 , 0x000153fd 
- 00029967  0x0000828d setsect  0x00000002 , 0x0003372a 
- 00029968  0x0000828e setsect  0x00000003 , 0x0000f1bb 
- 00029969  0x0000828f istore  0x00000009 , 0x00000005 
- 00029970  0x00008290 setsect  0x00000000 , 0x0003ae85 
- 00029971  0x00008291 setsect  0x00000001 , 0x0001eed9 
- 00029972  0x00008292 setsect  0x00000002 , 0x00009e66 
- 00029973  0x00008293 setsect  0x00000003 , 0x000001a8 
- 00029974  0x00008294 istore  0x00000008 , 0x00000005 
- 00029975  0x00008295 rtn 
- 00029976  0x0000829a arg  0x0000091e , 0x00000005 
- 00029977  0x0000829b setsect  0x00000000 , 0x0003ffff 
- 00029978  0x0000829c setsect  0x00000001 , 0x0003ffff 
- 00029979  0x0000829d setsect  0x00000002 , 0x0003ffff 
- 00029980  0x0000829e setsect  0x00000003 , 0x0003ffff 
- 00029981  0x0000829f istore  0x00000009 , 0x00000005 
- 00029982  0x000082a0 setsect  0x00000000 , 0x0003ffff 
- 00029983  0x000082a1 setsect  0x00000001 , 0x0000003f 
- 00029984  0x000082a2 setsect  0x00000002 , 0x00000000 
- 00029985  0x000082a3 setsect  0x00000003 , 0x00000000 
- 00029986  0x000082a4 istore  0x00000009 , 0x00000005 
- 00029987  0x000082a5 setsect  0x00000000 , 0x00000000 
- 00029988  0x000082a6 setsect  0x00000001 , 0x00000000 
- 00029989  0x000082a7 setsect  0x00000002 , 0x00001000 
- 00029990  0x000082a8 setsect  0x00000003 , 0x00000000 
- 00029991  0x000082a9 istore  0x00000009 , 0x00000005 
- 00029992  0x000082aa setsect  0x00000000 , 0x0003ff00 
- 00029993  0x000082ab setsect  0x00000001 , 0x0003ffff 
- 00029994  0x000082ac setsect  0x00000002 , 0x0003ffcf 
- 00029995  0x000082ad setsect  0x00000003 , 0x0003ffff 
- 00029996  0x000082ae istore  0x00000009 , 0x00000005 
- 00029997  0x000082af setsect  0x00000000 , 0x0003ffff 
- 00029998  0x000082b0 setsect  0x00000001 , 0x0003ffff 
- 00029999  0x000082b1 setsect  0x00000002 , 0x0003ffff 
- 00030000  0x000082b2 setsect  0x00000003 , 0x000003ff 
- 00030001  0x000082b3 istore  0x00000009 , 0x00000005 
- 00030002  0x000082b4 setsect  0x00000000 , 0x00000000 
- 00030003  0x000082b5 setsect  0x00000001 , 0x00000000 
- 00030004  0x000082b6 setsect  0x00000002 , 0x00000000 
- 00030005  0x000082b7 setsect  0x00000003 , 0x00000000 
- 00030006  0x000082b8 istore  0x00000009 , 0x00000005 
- 00030007  0x000082b9 setsect  0x00000000 , 0x00010000 
- 00030008  0x000082ba setsect  0x00000001 , 0x00000000 
- 00030009  0x000082bb setsect  0x00000002 , 0x0003f000 
- 00030010  0x000082bc setsect  0x00000003 , 0x0003ffff 
- 00030011  0x000082bd istore  0x00000009 , 0x00000005 
- 00030012  0x000082be setsect  0x00000000 , 0x000296ff 
- 00030013  0x000082bf setsect  0x00000001 , 0x00022630 
- 00030014  0x000082c0 setsect  0x00000002 , 0x0003945d 
- 00030015  0x000082c1 setsect  0x00000003 , 0x0003d284 
- 00030016  0x000082c2 istore  0x00000009 , 0x00000005 
- 00030017  0x000082c3 setsect  0x00000000 , 0x000333a0 
- 00030018  0x000082c4 setsect  0x00000001 , 0x00004b7a 
- 00030019  0x000082c5 setsect  0x00000002 , 0x000037d8 
- 00030020  0x000082c6 setsect  0x00000003 , 0x0003c9dc 
- 00030021  0x000082c7 istore  0x00000009 , 0x00000005 
- 00030022  0x000082c8 setsect  0x00000000 , 0x0003a440 
- 00030023  0x000082c9 setsect  0x00000001 , 0x0001b958 
- 00030024  0x000082ca setsect  0x00000002 , 0x00038bce 
- 00030025  0x000082cb setsect  0x00000003 , 0x0001091f 
- 00030026  0x000082cc istore  0x00000009 , 0x00000005 
- 00030027  0x000082cd setsect  0x00000000 , 0x0002e12c 
- 00030028  0x000082ce setsect  0x00000001 , 0x0001f47c 
- 00030029  0x000082cf setsect  0x00000002 , 0x000356b1 
- 00030030  0x000082d0 setsect  0x00000003 , 0x0002fd47 
- 00030031  0x000082d1 istore  0x00000009 , 0x00000005 
- 00030032  0x000082d2 setsect  0x00000000 , 0x00006837 
- 00030033  0x000082d3 setsect  0x00000001 , 0x0002ed90 
- 00030034  0x000082d4 setsect  0x00000002 , 0x0001ecec 
- 00030035  0x000082d5 setsect  0x00000003 , 0x0001acc5 
- 00030036  0x000082d6 istore  0x00000009 , 0x00000005 
- 00030037  0x000082d7 setsect  0x00000000 , 0x00023357 
- 00030038  0x000082d8 setsect  0x00000001 , 0x00018af3 
- 00030039  0x000082d9 setsect  0x00000002 , 0x0000f9e1 
- 00030040  0x000082da setsect  0x00000003 , 0x000129f0 
- 00030041  0x000082db istore  0x00000009 , 0x00000005 
- 00030042  0x000082dc setsect  0x00000000 , 0x0002e7eb 
- 00030043  0x000082dd setsect  0x00000001 , 0x0003e6e3 
- 00030044  0x000082de setsect  0x00000002 , 0x0003e1a7 
- 00030045  0x000082df setsect  0x00000003 , 0x00010b8b 
- 00030046  0x000082e0 istore  0x00000009 , 0x00000005 
- 00030047  0x000082e1 setsect  0x00000000 , 0x00024fe3 
- 00030048  0x000082e2 setsect  0x00000001 , 0x000020ef 
- 00030049  0x000082e3 setsect  0x00000002 , 0x0001b5a6 
- 00030050  0x000082e4 setsect  0x00000003 , 0x0000dc2f 
- 00030051  0x000082e5 istore  0x00000009 , 0x00000005 
- 00030052  0x000082e6 setsect  0x00000000 , 0x00013860 
- 00030053  0x000082e7 setsect  0x00000001 , 0x0002bd69 
- 00030054  0x000082e8 setsect  0x00000002 , 0x0000391a 
- 00030055  0x000082e9 setsect  0x00000003 , 0x0001b222 
- 00030056  0x000082ea istore  0x00000009 , 0x00000005 
- 00030057  0x000082eb rtn 
- 00030058  0x000082ef fetch  0x00000001 , 0x0000465a 
- 00030059  0x000082f0 nbranch  0x0000757d , 0x00000034 
- 00030060  0x000082f1 branch  0x00007a77 
- 00030061  0x000082f4 bpatchx  0x000000e4 , 0x0000403c 
- 00030062  0x000082f5 fetch  0x00000001 , 0x0000465a 
- 00030063  0x000082f6 rtn  0x00000034 
- 00030064  0x000082f7 fetch  0x00000001 , 0x000045b1 
- 00030065  0x000082f8 rtnne  0x00000001 
- 00030066  0x000082f9 fetch  0x00000001 , 0x000044be 
- 00030067  0x000082fa rtn  0x00000034 
- 00030068  0x000082fb fetch  0x00000001 , 0x000044c3 
- 00030069  0x000082fc rtneq  0x00000003 
- 00030070  0x000082fd fetch  0x00000002 , 0x00004682 
- 00030071  0x000082fe bbit1  0x00000000 , 0x0000757b 
- 00030072  0x000082ff fetch  0x00000001 , 0x000044c0 
- 00030073  0x00008300 beq  0x00000000 , 0x00007a77 
- 00030074  0x00008301 rtn 
- 00030075  0x00008303 jam  0x00000000 , 0x000044c0 
- 00030076  0x00008304 rtn 
- 00030077  0x00008308 bpatchx  0x000000e5 , 0x0000403c 
- 00030078  0x00008309 fetch  0x00000001 , 0x0000465a 
- 00030079  0x0000830a branch  0x0000612b , 0x00000034 
- 00030080  0x0000830b call  0x00006124 
- 00030081  0x0000830c call  0x00007583 
- 00030082  0x0000830d branch  0x0000766d 
- 00030083  0x00008310 setarg  0x00000000 
- 00030084  0x00008311 store  0x00000008 , 0x000009ae 
- 00030085  0x00008312 store  0x00000004 , 0x000009b6 
- 00030086  0x00008313 store  0x00000007 , 0x0000465e 
- 00030087  0x00008314 rtn 
- 00030088  0x00008317 jam  0x00000001 , 0x000009b0 
- 00030089  0x00008318 branch  0x0000758d 
- 00030090  0x0000831a fetch  0x00000001 , 0x000045b1 
- 00030091  0x0000831b beq  0x00000001 , 0x0000768a 
- 00030092  0x0000831c branch  0x00002a8c 
- 00030093  0x0000831e fetch  0x00000001 , 0x000045b1 
- 00030094  0x0000831f beq  0x00000001 , 0x00007590 
- 00030095  0x00008320 branch  0x0000766d 
- 00030096  0x00008323 call  0x0000768a 
- 00030097  0x00008324 fetch  0x00000001 , 0x000009af 
- 00030098  0x00008325 nrtn  0x00000034 
- 00030099  0x00008326 jam  0x00000003 , 0x000009ae 
- 00030100  0x00008327 rtn 
- 00030101  0x0000832b call  0x000075b0 
- 00030102  0x0000832c arg  0x000009de , 0x00000011 
- 00030103  0x0000832d arg  0x00000866 , 0x00000005 
- 00030104  0x0000832e call  0x00007c79 
- 00030105  0x0000832f arg  0x000009be , 0x00000011 
- 00030106  0x00008330 arg  0x00000826 , 0x00000005 
- 00030107  0x00008331 call  0x00007c79 
- 00030108  0x00008332 arg  0x00000826 , 0x00000011 
- 00030109  0x00008333 arg  0x000009be , 0x00000012 
- 00030110  0x00008334 arg  0x00000826 , 0x00000005 
- 00030111  0x00008335 call  0x00007be1 
- 00030112  0x00008336 arg  0x0000093e , 0x00000011 
- 00030113  0x00008337 arg  0x000009be , 0x00000012 
- 00030114  0x00008338 arg  0x00000846 , 0x00000005 
- 00030115  0x00008339 call  0x00007be1 
- 00030116  0x0000833a arg  0x00000846 , 0x00000011 
- 00030117  0x0000833b arg  0x00000826 , 0x00000012 
- 00030118  0x0000833c arg  0x00000826 , 0x00000005 
- 00030119  0x0000833d call  0x00007c7d 
- 00030120  0x0000833e arg  0x00000806 , 0x00000011 
- 00030121  0x0000833f arg  0x00000826 , 0x00000012 
- 00030122  0x00008340 arg  0x00000806 , 0x00000005 
- 00030123  0x00008341 call  0x00007c7d 
- 00030124  0x00008342 arg  0x00000020 , 0x00000039 
- 00030125  0x00008343 arg  0x00000866 , 0x00000011 
- 00030126  0x00008344 arg  0x00000806 , 0x00000012 
- 00030127  0x00008345 branch  0x00007f88 
- 00030128  0x00008348 arg  0x0000097e , 0x00000011 
- 00030129  0x00008349 arg  0x00000806 , 0x00000005 
- 00030130  0x0000834a call  0x00007c79 
- 00030131  0x0000834b arg  0x0000095e , 0x00000011 
- 00030132  0x0000834c arg  0x00000826 , 0x00000005 
- 00030133  0x0000834d call  0x00007c79 
- 00030134  0x0000834e arg  0x00000826 , 0x00000011 
- 00030135  0x0000834f arg  0x0000095e , 0x00000012 
- 00030136  0x00008350 arg  0x00000826 , 0x00000005 
- 00030137  0x00008351 call  0x00007be1 
- 00030138  0x00008352 arg  0x0000093e , 0x00000011 
- 00030139  0x00008353 arg  0x0000095e , 0x00000012 
- 00030140  0x00008354 arg  0x00000846 , 0x00000005 
- 00030141  0x00008355 call  0x00007be1 
- 00030142  0x00008356 arg  0x00000846 , 0x00000011 
- 00030143  0x00008357 arg  0x00000826 , 0x00000012 
- 00030144  0x00008358 arg  0x00000826 , 0x00000005 
- 00030145  0x00008359 call  0x00007c7d 
- 00030146  0x0000835a arg  0x00000806 , 0x00000011 
- 00030147  0x0000835b arg  0x00000826 , 0x00000012 
- 00030148  0x0000835c arg  0x00000806 , 0x00000005 
- 00030149  0x0000835d branch  0x00007c96 
- 00030150  0x00008360 call  0x000075e1 
- 00030151  0x00008361 arg  0x000009e6 , 0x00000011 
- 00030152  0x00008362 arg  0x00000866 , 0x00000005 
- 00030153  0x00008363 call  0x000077a8 
- 00030154  0x00008364 arg  0x000009c6 , 0x00000011 
- 00030155  0x00008365 arg  0x00000826 , 0x00000005 
- 00030156  0x00008366 call  0x000077a8 
- 00030157  0x00008367 arg  0x00000826 , 0x00000011 
- 00030158  0x00008368 arg  0x000009c6 , 0x00000012 
- 00030159  0x00008369 arg  0x00000826 , 0x00000005 
- 00030160  0x0000836a call  0x00007786 
- 00030161  0x0000836b arg  0x0000089e , 0x00000011 
- 00030162  0x0000836c arg  0x000009c6 , 0x00000012 
- 00030163  0x0000836d arg  0x00000846 , 0x00000005 
- 00030164  0x0000836e call  0x00007786 
- 00030165  0x0000836f arg  0x00000846 , 0x00000011 
- 00030166  0x00008370 arg  0x00000826 , 0x00000012 
- 00030167  0x00008371 arg  0x00000826 , 0x00000005 
- 00030168  0x00008372 call  0x00007755 
- 00030169  0x00008373 arg  0x00000806 , 0x00000011 
- 00030170  0x00008374 arg  0x00000826 , 0x00000012 
- 00030171  0x00008375 arg  0x00000806 , 0x00000005 
- 00030172  0x00008376 call  0x00007755 
- 00030173  0x00008377 arg  0x00000018 , 0x00000039 
- 00030174  0x00008378 arg  0x00000866 , 0x00000011 
- 00030175  0x00008379 arg  0x00000806 , 0x00000012 
- 00030176  0x0000837a branch  0x00007f88 
- 00030177  0x0000837d arg  0x000008e6 , 0x00000011 
- 00030178  0x0000837e arg  0x00000806 , 0x00000005 
- 00030179  0x0000837f call  0x000077a8 
- 00030180  0x00008380 arg  0x000008ce , 0x00000011 
- 00030181  0x00008381 arg  0x00000826 , 0x00000005 
- 00030182  0x00008382 call  0x000077a8 
- 00030183  0x00008383 arg  0x00000826 , 0x00000011 
- 00030184  0x00008384 arg  0x000008ce , 0x00000012 
- 00030185  0x00008385 arg  0x00000826 , 0x00000005 
- 00030186  0x00008386 call  0x00007786 
- 00030187  0x00008387 arg  0x0000089e , 0x00000011 
- 00030188  0x00008388 arg  0x000008ce , 0x00000012 
- 00030189  0x00008389 arg  0x00000846 , 0x00000005 
- 00030190  0x0000838a call  0x00007786 
- 00030191  0x0000838b arg  0x00000846 , 0x00000011 
- 00030192  0x0000838c arg  0x00000826 , 0x00000012 
- 00030193  0x0000838d arg  0x00000826 , 0x00000005 
- 00030194  0x0000838e call  0x00007755 
- 00030195  0x0000838f arg  0x00000806 , 0x00000011 
- 00030196  0x00008390 arg  0x00000826 , 0x00000012 
- 00030197  0x00008391 arg  0x00000806 , 0x00000005 
- 00030198  0x00008392 branch  0x00007758 
- 00030199  0x00008396 fetch  0x00000001 , 0x000009b2 
- 00030200  0x00008397 bne  0x00000000 , 0x00007615 
- 00030201  0x00008398 call  0x00007612 
- 00030202  0x00008399 arg  0x00000a7e , 0x00000005 
- 00030203  0x0000839a setarg  0x00000a2e 
- 00030204  0x0000839b istore  0x00000002 , 0x00000005 
- 00030205  0x0000839c setarg  0x00004642 
- 00030206  0x0000839d istore  0x00000002 , 0x00000005 
- 00030207  0x0000839e setarg  0x000009de 
- 00030208  0x0000839f istore  0x00000002 , 0x00000005 
- 00030209  0x000083a0 branch  0x00007609 
- 00030210  0x000083a2 arg  0x00000a7e , 0x00000005 
- 00030211  0x000083a3 setarg  0x00000a3e 
- 00030212  0x000083a4 istore  0x00000002 , 0x00000005 
- 00030213  0x000083a5 setarg  0x000009de 
- 00030214  0x000083a6 istore  0x00000002 , 0x00000005 
- 00030215  0x000083a7 setarg  0x00004642 
- 00030216  0x000083a8 istore  0x00000002 , 0x00000005 
- 00030217  0x000083aa call  0x000079a0 
- 00030218  0x000083ab fetch  0x00000001 , 0x000009af 
- 00030219  0x000083ac beq  0x00000004 , 0x0000760f 
- 00030220  0x000083ad jam  0x00000001 , 0x000009b0 
- 00030221  0x000083ae jam  0x00000005 , 0x000009ae 
- 00030222  0x000083af rtn 
- 00030223  0x000083b1 jam  0x00000014 , 0x000009af 
- 00030224  0x000083b2 call  0x0000758a 
- 00030225  0x000083b3 branch  0x000076d8 
- 00030226  0x000083b6 arg  0x00000a1e , 0x00000005 
- 00030227  0x000083b7 force  0x00000008 , 0x00000007 
- 00030228  0x000083b8 branch  0x000076a2 
- 00030229  0x000083bb jam  0x00000001 , 0x000009b0 
- 00030230  0x000083bc rtn 
- 00030231  0x000083c0 bpatchx  0x000000e6 , 0x0000403c 
- 00030232  0x000083c1 arg  0x00000727 , 0x00000005 
- 00030233  0x000083c2 fetch  0x00000006 , 0x000040a0 
- 00030234  0x000083c3 istore  0x00000006 , 0x00000005 
- 00030235  0x000083c4 fetch  0x00000006 , 0x00000040 
- 00030236  0x000083c5 istore  0x00000006 , 0x00000005 
- 00030237  0x000083c6 fetch  0x00000003 , 0x0000465e 
- 00030238  0x000083c7 istore  0x00000003 , 0x00000005 
- 00030239  0x000083c9 call  0x00007a0d 
- 00030240  0x000083cb arg  0x00000a4e , 0x00000011 
- 00030241  0x000083cc arg  0x00000a5e , 0x00000012 
- 00030242  0x000083cd force  0x00000004 , 0x00000007 
- 00030243  0x000083ce call  0x000076a7 
- 00030244  0x000083cf nbranch  0x00007631 , 0x00000001 
- 00030245  0x000083d1 call  0x00007628 
- 00030246  0x000083d2 jam  0x00000041 , 0x0000007d 
- 00030247  0x000083d3 branch  0x000062f8 
- 00030248  0x000083d6 fetch  0x00000001 , 0x000009af 
- 00030249  0x000083d7 beq  0x00000009 , 0x0000762e 
- 00030250  0x000083d8 jam  0x0000000a , 0x000009ae 
- 00030251  0x000083d9 jam  0x00000001 , 0x000009b0 
- 00030252  0x000083da jam  0x00000003 , 0x0000007c 
- 00030253  0x000083db rtn 
- 00030254  0x000083dd jam  0x00000003 , 0x0000007c 
- 00030255  0x000083de jam  0x00000015 , 0x000009af 
- 00030256  0x000083df branch  0x000076d8 
- 00030257  0x000083e3 fetch  0x00000001 , 0x000009af 
- 00030258  0x000083e4 beq  0x00000009 , 0x00007637 
- 00030259  0x000083e5 jam  0x00000000 , 0x000009ae 
- 00030260  0x000083e6 jam  0x00000004 , 0x0000007c 
- 00030261  0x000083e8 jam  0x00000005 , 0x0000007e 
- 00030262  0x000083e9 rtn 
- 00030263  0x000083eb jam  0x00000004 , 0x0000007c 
- 00030264  0x000083ec jam  0x00000000 , 0x000009af 
- 00030265  0x000083ed rtn 
- 00030266  0x000083f0 fetch  0x00000001 , 0x000009b3 
- 00030267  0x000083f1 beq  0x00000001 , 0x0000763e 
- 00030268  0x000083f2 jam  0x0000000a , 0x000009af 
- 00030269  0x000083f3 branch  0x000076d8 
- 00030270  0x000083f5 arg  0x00000727 , 0x00000005 
- 00030271  0x000083f6 fetch  0x00000006 , 0x00000040 
- 00030272  0x000083f7 istore  0x00000006 , 0x00000005 
- 00030273  0x000083f8 fetch  0x00000006 , 0x000040a0 
- 00030274  0x000083f9 istore  0x00000006 , 0x00000005 
- 00030275  0x000083fa fetch  0x00000003 , 0x0000465b 
- 00030276  0x000083fb istore  0x00000003 , 0x00000005 
- 00030277  0x000083fd call  0x00007a24 
- 00030278  0x000083fe fetch  0x00000001 , 0x000009af 
- 00030279  0x000083ff beq  0x0000000a , 0x0000764b 
- 00030280  0x00008400 jam  0x0000000b , 0x000009ae 
- 00030281  0x00008401 jam  0x00000001 , 0x000009b0 
- 00030282  0x00008402 rtn 
- 00030283  0x00008404 jam  0x0000000b , 0x000009af 
- 00030284  0x00008405 jam  0x00000001 , 0x000009b1 
- 00030285  0x00008406 rtn 
- 00030286  0x00008409 arg  0x00000a7e , 0x00000005 
- 00030287  0x0000840a fetch  0x00000006 , 0x00000040 
- 00030288  0x0000840b istore  0x00000006 , 0x00000005 
- 00030289  0x0000840c fetch  0x00000006 , 0x000040a0 
- 00030290  0x0000840d istore  0x00000006 , 0x00000005 
- 00030291  0x0000840e setarg  0x00000a2e 
- 00030292  0x0000840f istore  0x00000002 , 0x00000005 
- 00030293  0x00008410 setarg  0x00000a3e 
- 00030294  0x00008411 istore  0x00000002 , 0x00000005 
- 00030295  0x00008412 branch  0x00007662 
- 00030296  0x00008414 jam  0x0000000f , 0x000009ae 
- 00030297  0x00008415 arg  0x00000a7e , 0x00000005 
- 00030298  0x00008416 fetch  0x00000006 , 0x000040a0 
- 00030299  0x00008417 istore  0x00000006 , 0x00000005 
- 00030300  0x00008418 fetch  0x00000006 , 0x00000040 
- 00030301  0x00008419 istore  0x00000006 , 0x00000005 
- 00030302  0x0000841a setarg  0x00000a3e 
- 00030303  0x0000841b istore  0x00000002 , 0x00000005 
- 00030304  0x0000841c setarg  0x00000a2e 
- 00030305  0x0000841d istore  0x00000002 , 0x00000005 
- 00030306  0x00008420 arg  0x00000727 , 0x00000005 
- 00030307  0x00008421 fetch  0x00000006 , 0x00000a7e 
- 00030308  0x00008422 istore  0x00000006 , 0x00000005 
- 00030309  0x00008423 fetch  0x00000006 , 0x00000a84 
- 00030310  0x00008424 istore  0x00000006 , 0x00000005 
- 00030311  0x00008426 call  0x000079d7 
- 00030312  0x00008429 jam  0x00000001 , 0x000041bd 
- 00030313  0x0000842a arg  0x000041be , 0x00000005 
- 00030314  0x0000842b arg  0x00000a4e , 0x00000006 
- 00030315  0x0000842c call  0x00007ebf 
- 00030316  0x0000842d branch  0x000021c4 
- 00030317  0x00008431 bpatchx  0x000000e7 , 0x0000403c 
- 00030318  0x00008432 fetch  0x00000001 , 0x000045b1 
- 00030319  0x00008433 rtnne  0x00000000 
- 00030320  0x00008434 fetch  0x00000001 , 0x000009b2 
- 00030321  0x00008435 rtnne  0x00000000 
- 00030322  0x00008436 arg  0x00004612 , 0x00000005 
- 00030323  0x00008437 force  0x0000000b , 0x00000007 
- 00030324  0x00008438 call  0x000076a2 
- 00030325  0x00008439 random  0x0000003f 
- 00030326  0x0000843a rshift  0x0000003f , 0x0000003f 
- 00030327  0x0000843b istore  0x00000002 , 0x00000005 
- 00030328  0x0000843d arg  0x000006be , 0x00000005 
- 00030329  0x0000843e arg  0x00004612 , 0x00000006 
- 00030330  0x0000843f call  0x00007ebe 
- 00030331  0x00008441 arg  0x000005e6 , 0x00000005 
- 00030332  0x00008442 arg  0x000008ce , 0x00000006 
- 00030333  0x00008443 call  0x00007ebc 
- 00030334  0x00008445 arg  0x00000616 , 0x00000005 
- 00030335  0x00008446 call  0x00007ec5 
- 00030336  0x00008447 jam  0x00000001 , 0x00000616 
- 00030337  0x00008449 call  0x00007a5d 
- 00030338  0x0000844a jam  0x00000001 , 0x000009b2 
- 00030339  0x0000844b rtn 
- 00030340  0x0000844e arg  0x0000462a , 0x00000005 
- 00030341  0x0000844f arg  0x0000062e , 0x00000006 
- 00030342  0x00008450 call  0x00007ebc 
- 00030343  0x00008451 jam  0x00000001 , 0x000045b1 
- 00030344  0x00008452 jam  0x00000000 , 0x000009b2 
- 00030345  0x00008453 rtn 
- 00030346  0x00008456 bpatchx  0x000000e8 , 0x0000403d 
- 00030347  0x00008457 fetch  0x00000001 , 0x000009b9 
- 00030348  0x00008458 rtnne  0x00000000 
- 00030349  0x00008459 fetch  0x00000001 , 0x000009b2 
- 00030350  0x0000845a rtnne  0x00000000 
- 00030351  0x0000845c arg  0x000006be , 0x00000005 
- 00030352  0x0000845d arg  0x00004612 , 0x00000006 
- 00030353  0x0000845e call  0x00007ebe 
- 00030354  0x00008460 arg  0x000005e6 , 0x00000005 
- 00030355  0x00008461 arg  0x000009c6 , 0x00000006 
- 00030356  0x00008462 call  0x00007ebc 
- 00030357  0x00008464 arg  0x00000616 , 0x00000005 
- 00030358  0x00008465 call  0x00007ec5 
- 00030359  0x00008466 jam  0x00000001 , 0x00000616 
- 00030360  0x00008468 call  0x00007a5d 
- 00030361  0x00008469 jam  0x00000002 , 0x000009b2 
- 00030362  0x0000846a rtn 
- 00030363  0x0000846d jam  0x00000001 , 0x000009b3 
- 00030364  0x0000846e arg  0x00000a06 , 0x00000005 
- 00030365  0x0000846f arg  0x0000062e , 0x00000006 
- 00030366  0x00008470 call  0x00007ebe 
- 00030367  0x00008471 jam  0x00000001 , 0x000009b9 
- 00030368  0x00008472 jam  0x00000000 , 0x000009b2 
- 00030369  0x00008473 rtn 
- 00030370  0x00008476 increase  0xffffffff , 0x00000007 
- 00030371  0x00008477 nrtn  0x00000002 
- 00030372  0x00008478 random  0x0000003f 
- 00030373  0x00008479 istore  0x00000002 , 0x00000005 
- 00030374  0x0000847a branch  0x000076a2 
- 00030375  0x0000847c increase  0xffffffff , 0x00000007 
- 00030376  0x0000847d nbranch  0x000076b3 , 0x00000002 
- 00030377  0x0000847e ifetch  0x00000004 , 0x00000011 
- 00030378  0x0000847f copy  0x0000003f , 0x00000002 
- 00030379  0x00008480 ifetch  0x00000004 , 0x00000012 
- 00030380  0x00008481 iflip  0x00000002 , 0x0000003f 
- 00030381  0x00008482 nbranch  0x000076b1 , 0x00000005 
- 00030382  0x00008483 increase  0x00000004 , 0x00000011 
- 00030383  0x00008484 increase  0x00000004 , 0x00000012 
- 00030384  0x00008485 branch  0x000076a7 
- 00030385  0x00008487 disable  0x00000001 
- 00030386  0x00008488 rtn 
- 00030387  0x0000848a enable  0x00000001 
- 00030388  0x0000848b rtn 
- 00030389  0x00008493 bpatchx  0x000000e9 , 0x0000403d 
- 00030390  0x00008494 fetch  0x00000001 , 0x000009b0 
- 00030391  0x00008495 rtn  0x00000034 
- 00030392  0x00008496 call  0x000062bc 
- 00030393  0x00008497 nrtn  0x00000034 
- 00030394  0x00008498 jam  0x00000000 , 0x000009b0 
- 00030395  0x00008499 fetch  0x00000001 , 0x000009ae 
- 00030396  0x0000849a beq  0x00000003 , 0x000061fd 
- 00030397  0x0000849b beq  0x00000005 , 0x0000621a 
- 00030398  0x0000849c beq  0x00000007 , 0x00006225 
- 00030399  0x0000849d beq  0x0000000b , 0x0000623a 
- 00030400  0x0000849e beq  0x00000002 , 0x00007588 
- 00030401  0x0000849f beq  0x00000004 , 0x000075f7 
- 00030402  0x000084a0 beq  0x00000009 , 0x00007617 
- 00030403  0x000084a1 beq  0x0000000a , 0x0000763a 
- 00030404  0x000084a2 beq  0x0000000c , 0x00007658 
- 00030405  0x000084a4 rtn 
- 00030406  0x000084a7 bpatchx  0x000000ea , 0x0000403d 
- 00030407  0x000084a8 fetch  0x00000001 , 0x000009b1 
- 00030408  0x000084a9 rtn  0x00000034 
- 00030409  0x000084aa call  0x000062bc 
- 00030410  0x000084ab nrtn  0x00000034 
- 00030411  0x000084ac jam  0x00000000 , 0x000009b1 
- 00030412  0x000084ad fetch  0x00000001 , 0x000009af 
- 00030413  0x000084ae beq  0x00000012 , 0x000061e0 
- 00030414  0x000084af beq  0x00000013 , 0x000061e5 
- 00030415  0x000084b0 beq  0x00000003 , 0x000061e9 
- 00030416  0x000084b1 beq  0x00000004 , 0x00007602 
- 00030417  0x000084b2 beq  0x00000014 , 0x000061ed 
- 00030418  0x000084b3 beq  0x00000007 , 0x000061fb 
- 00030419  0x000084b4 beq  0x0000000a , 0x0000763a 
- 00030420  0x000084b5 beq  0x0000000b , 0x00006239 
- 00030421  0x000084b6 beq  0x00000009 , 0x00007617 
- 00030422  0x000084b7 beq  0x00000015 , 0x00006233 
- 00030423  0x000084b8 rtn 
- 00030424  0x000084bb jam  0x00000001 , 0x000009b1 
- 00030425  0x000084bc rtn 
- 00030426  0x000084bf jam  0x00000000 , 0x000009b1 
- 00030427  0x000084c0 rtn 
- 00030428  0x000084c2 bpatchx  0x000000eb , 0x0000403d 
- 00030429  0x000084c3 fetch  0x00000001 , 0x0000465a 
- 00030430  0x000084c4 rtn  0x00000034 
- 00030431  0x000084c5 fetch  0x00000001 , 0x000009b2 
- 00030432  0x000084c6 rtn  0x00000034 
- 00030433  0x000084c7 increase  0x00000080 , 0x0000003f 
- 00030434  0x000084c8 store  0x00000001 , 0x000009b2 
- 00030435  0x000084c9 rtnbit1  0x00000007 
- 00030436  0x000084ca fetch  0x00000001 , 0x000005e3 
- 00030437  0x000084cb branch  0x000076e7 , 0x00000034 
- 00030438  0x000084cc branch  0x00007a68 
- 00030439  0x000084cf call  0x000078d3 
- 00030440  0x000084d0 fetch  0x00000001 , 0x000009b2 
- 00030441  0x000084d1 beq  0x00000001 , 0x00007684 
- 00030442  0x000084d2 beq  0x00000002 , 0x0000769b 
- 00030443  0x000084d3 rtn 
- 00030444  0x000084d7 and  0x0000003f , 0x00000007 , 0x00000007 
- 00030445  0x000084d8 rshift3  0x0000003f , 0x0000003f 
- 00030446  0x000084d9 iadd  0x00000006 , 0x00000006 
- 00030447  0x000084da ifetch  0x00000001 , 0x00000006 
- 00030448  0x000084db qisolate0  0x0000003f 
- 00030449  0x000084dc rtn 
- 00030450  0x000084e0 call  0x00007ebe 
- 00030451  0x000084e1 call  0x00007ebe 
- 00030452  0x000084e2 branch  0x00007ebe 
- 00030453  0x000084e6 ifetch  0x00000008 , 0x00000006 
- 00030454  0x000084e7 nrtn  0x00000034 
- 00030455  0x000084e8 ifetch  0x00000008 , 0x00000006 
- 00030456  0x000084e9 nrtn  0x00000034 
- 00030457  0x000084ea ifetch  0x00000008 , 0x00000006 
- 00030458  0x000084eb rtn 
- 00030459  0x000084f1 ifetch  0x00000004 , 0x00000011 
- 00030460  0x000084f2 iforce  0x00000002 
- 00030461  0x000084f3 ifetch  0x00000004 , 0x00000012 
- 00030462  0x000084f4 isub  0x00000002 , 0x0000003e 
- 00030463  0x000084f5 nrtn  0x00000005 
- 00030464  0x000084f6 increase  0x00000004 , 0x00000011 
- 00030465  0x000084f7 increase  0x00000004 , 0x00000012 
- 00030466  0x000084f8 loop  0x000076fb 
- 00030467  0x000084f9 rtn 
- 00030468  0x000084fd force  0x00000006 , 0x00000039 
- 00030469  0x000084fe increase  0x00000014 , 0x00000011 
- 00030470  0x000084ff increase  0x00000014 , 0x00000012 
- 00030471  0x00008501 ifetch  0x00000004 , 0x00000012 
- 00030472  0x00008502 iforce  0x00000002 
- 00030473  0x00008503 ifetch  0x00000004 , 0x00000011 
- 00030474  0x00008504 isub  0x00000002 , 0x0000003f 
- 00030475  0x00008505 nrtn  0x00000002 
- 00030476  0x00008506 nrtn  0x00000034 
- 00030477  0x00008507 increase  0xfffffffc , 0x00000011 
- 00030478  0x00008508 increase  0xfffffffc , 0x00000012 
- 00030479  0x00008509 loop  0x00007707 
- 00030480  0x0000850a rtn 
- 00030481  0x0000850d force  0x00000006 , 0x00000039 
- 00030482  0x0000850e force  0x00000000 , 0x00000013 
- 00030483  0x00008510 ifetch  0x00000004 , 0x00000011 
- 00030484  0x00008511 iforce  0x00000002 
- 00030485  0x00008512 ifetch  0x00000004 , 0x00000012 
- 00030486  0x00008513 iadd  0x00000002 , 0x0000003f 
- 00030487  0x00008514 iadd  0x00000013 , 0x0000003f 
- 00030488  0x00008515 istore  0x00000004 , 0x00000005 
- 00030489  0x00008516 isolate1  0x00000020 , 0x0000003f 
- 00030490  0x00008517 setflag  0x00000001 , 0x00000000 , 0x00000013 
- 00030491  0x00008518 increase  0x00000004 , 0x00000011 
- 00030492  0x00008519 increase  0x00000004 , 0x00000012 
- 00030493  0x0000851a loop  0x00007713 
- 00030494  0x0000851b rtn 
- 00030495  0x0000851e force  0x00000006 , 0x00000039 
- 00030496  0x0000851f force  0x00000000 , 0x00000013 
- 00030497  0x00008521 ifetch  0x00000004 , 0x00000012 
- 00030498  0x00008522 iforce  0x00000002 
- 00030499  0x00008523 ifetch  0x00000004 , 0x00000011 
- 00030500  0x00008524 isub  0x00000002 , 0x0000003f 
- 00030501  0x00008525 isub  0x00000013 , 0x0000003f 
- 00030502  0x00008526 istore  0x00000004 , 0x00000005 
- 00030503  0x00008527 isolate1  0x00000020 , 0x0000003f 
- 00030504  0x00008528 setflag  0x00000001 , 0x00000000 , 0x00000013 
- 00030505  0x00008529 increase  0x00000004 , 0x00000011 
- 00030506  0x0000852a increase  0x00000004 , 0x00000012 
- 00030507  0x0000852b loop  0x00007721 
- 00030508  0x0000852c rtn 
- 00030509  0x0000852f force  0x00000006 , 0x00000039 
- 00030510  0x00008530 increase  0x00000014 , 0x00000011 
- 00030511  0x00008532 force  0x00000000 , 0x00000013 
- 00030512  0x00008534 ifetch  0x00000004 , 0x00000011 
- 00030513  0x00008535 isolate1  0x00000000 , 0x0000003f 
- 00030514  0x00008536 setflag  0x00000001 , 0x00000001 , 0x00000013 
- 00030515  0x00008537 rshift  0x0000003f , 0x0000003f 
- 00030516  0x00008538 isolate1  0x00000000 , 0x00000013 
- 00030517  0x00008539 setflag  0x00000001 , 0x0000001f , 0x0000003f 
- 00030518  0x0000853a istore  0x00000004 , 0x00000011 
- 00030519  0x0000853b increase  0xfffffffc , 0x00000011 
- 00030520  0x0000853c rshift  0x00000013 , 0x00000013 
- 00030521  0x0000853d loop  0x00007730 
- 00030522  0x0000853e rtn 
- 00030523  0x00008541 force  0x00000006 , 0x00000039 
- 00030524  0x00008542 force  0x00000000 , 0x00000013 
- 00030525  0x00008544 ifetch  0x00000004 , 0x00000011 
- 00030526  0x00008545 isolate1  0x0000001f , 0x0000003f 
- 00030527  0x00008546 setflag  0x00000001 , 0x00000001 , 0x00000013 
- 00030528  0x00008547 lshift  0x0000003f , 0x0000003f 
- 00030529  0x00008548 isolate1  0x00000000 , 0x00000013 
- 00030530  0x00008549 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00030531  0x0000854a istore  0x00000004 , 0x00000011 
- 00030532  0x0000854b increase  0x00000004 , 0x00000011 
- 00030533  0x0000854c rshift  0x00000013 , 0x00000013 
- 00030534  0x0000854d loop  0x0000773d 
- 00030535  0x0000854e rtn 
- 00030536  0x00008551 call  0x0000773b 
- 00030537  0x00008553 isolate1  0x00000000 , 0x00000013 
- 00030538  0x00008554 branch  0x00007751 , 0x00000001 
- 00030539  0x00008555 arg  0x00000886 , 0x00000012 
- 00030540  0x00008556 copy  0x00000011 , 0x00000013 
- 00030541  0x00008557 increase  0xffffffe8 , 0x00000011 
- 00030542  0x00008558 call  0x00007704 
- 00030543  0x00008559 nrtn  0x00000002 
- 00030544  0x0000855a copy  0x00000013 , 0x00000011 
- 00030545  0x0000855c increase  0xffffffe8 , 0x00000011 
- 00030546  0x0000855d arg  0x00000886 , 0x00000012 
- 00030547  0x0000855e copy  0x00000011 , 0x00000005 
- 00030548  0x0000855f branch  0x0000771f 
- 00030549  0x00008563 call  0x00007711 
- 00030550  0x00008564 copy  0x00000005 , 0x00000011 
- 00030551  0x00008565 branch  0x00007749 
- 00030552  0x00008568 call  0x0000771f 
- 00030553  0x00008569 isolate0  0x00000000 , 0x00000013 
- 00030554  0x0000856a rtn  0x00000001 
- 00030555  0x0000856b arg  0x00000886 , 0x00000012 
- 00030556  0x0000856c add  0x00000005 , 0xffffffe8 , 0x00000011 
- 00030557  0x0000856d copy  0x00000011 , 0x00000005 
- 00030558  0x0000856e branch  0x00007711 
- 00030559  0x00008572 copy  0x00000005 , 0x0000000b 
- 00030560  0x00008573 copy  0x00000011 , 0x00000030 
- 00030561  0x00008574 arg  0x00000716 , 0x00000012 
- 00030562  0x00008575 copy  0x00000012 , 0x00000005 
- 00030563  0x00008576 add  0x00000011 , 0x00000018 , 0x00000006 
- 00030564  0x00008577 ifetch  0x00000008 , 0x00000006 
- 00030565  0x00008578 istore  0x00000008 , 0x00000005 
- 00030566  0x00008579 istore  0x00000008 , 0x00000005 
- 00030567  0x0000857a force  0x00000000 , 0x0000003f 
- 00030568  0x0000857b istore  0x00000008 , 0x00000005 
- 00030569  0x0000857c copy  0x0000000b , 0x00000005 
- 00030570  0x0000857d call  0x00007755 
- 00030571  0x0000857e arg  0x00000716 , 0x00000012 
- 00030572  0x0000857f copy  0x00000012 , 0x00000005 
- 00030573  0x00008580 force  0x00000000 , 0x0000003f 
- 00030574  0x00008581 istore  0x00000008 , 0x00000005 
- 00030575  0x00008582 add  0x00000030 , 0x00000020 , 0x00000006 
- 00030576  0x00008583 ifetch  0x00000008 , 0x00000006 
- 00030577  0x00008584 istore  0x00000008 , 0x00000005 
- 00030578  0x00008585 istore  0x00000008 , 0x00000005 
- 00030579  0x00008586 copy  0x0000000b , 0x00000011 
- 00030580  0x00008587 copy  0x00000011 , 0x00000005 
- 00030581  0x00008588 call  0x00007755 
- 00030582  0x00008589 arg  0x00000716 , 0x00000012 
- 00030583  0x0000858a copy  0x00000012 , 0x00000005 
- 00030584  0x0000858b add  0x00000030 , 0x00000028 , 0x00000006 
- 00030585  0x0000858c ifetch  0x00000008 , 0x00000006 
- 00030586  0x0000858d istore  0x00000008 , 0x00000005 
- 00030587  0x0000858e istore  0x00000008 , 0x00000005 
- 00030588  0x0000858f istore  0x00000008 , 0x00000005 
- 00030589  0x00008590 copy  0x0000000b , 0x00000011 
- 00030590  0x00008591 copy  0x00000011 , 0x00000005 
- 00030591  0x00008592 branch  0x00007755 
- 00030592  0x00008596 force  0x00000006 , 0x00000039 
- 00030593  0x00008598 ifetch  0x00000004 , 0x00000006 
- 00030594  0x00008599 iforce  0x0000002f 
- 00030595  0x0000859a increase  0x00000001 , 0x00000038 
- 00030596  0x0000859b loop  0x00007781 
- 00030597  0x0000859c rtn 
- 00030598  0x000085a1 copy  0x00000005 , 0x0000000b 
- 00030599  0x000085a2 arg  0x000006e6 , 0x00000005 
- 00030600  0x000085a3 call  0x00007ec5 
- 00030601  0x000085a4 arg  0x000006e6 , 0x00000005 
- 00030602  0x000085a5 copy  0x00000011 , 0x00000006 
- 00030603  0x000085a6 force  0x00000000 , 0x00000038 
- 00030604  0x000085a7 call  0x00007780 
- 00030605  0x000085a8 copy  0x00000012 , 0x00000006 
- 00030606  0x000085a9 call  0x00007780 
- 00030607  0x000085aa force  0x00000000 , 0x00000012 
- 00030608  0x000085ac force  0x00000000 , 0x00000002 
- 00030609  0x000085ad force  0x00000006 , 0x00000013 
- 00030610  0x000085af ifetch  0x00000004 , 0x00000005 
- 00030611  0x000085b0 iforce  0x00000011 
- 00030612  0x000085b1 copy  0x00000012 , 0x00000038 
- 00030613  0x000085b2 deposit  0x0000002f 
- 00030614  0x000085b3 copy  0x00000013 , 0x00000038 
- 00030615  0x000085b4 imul32  0x0000002f , 0x0000003f 
- 00030616  0x000085b5 iadd  0x00000011 , 0x0000003f 
- 00030617  0x000085b6 iadd  0x00000002 , 0x0000003f 
- 00030618  0x000085b7 istore  0x00000004 , 0x00000005 
- 00030619  0x000085b8 rshift32  0x0000003f , 0x00000002 
- 00030620  0x000085b9 increase  0x00000001 , 0x00000013 
- 00030621  0x000085ba compare  0x0000000c , 0x00000013 , 0x000000ff 
- 00030622  0x000085bb nbranch  0x00007792 , 0x00000001 
- 00030623  0x000085bc deposit  0x00000002 
- 00030624  0x000085bd istore  0x00000004 , 0x00000005 
- 00030625  0x000085be increase  0xffffffe8 , 0x00000005 
- 00030626  0x000085bf increase  0x00000001 , 0x00000012 
- 00030627  0x000085c0 compare  0x00000006 , 0x00000012 , 0x000000ff 
- 00030628  0x000085c1 nbranch  0x00007790 , 0x00000001 
- 00030629  0x000085c2 arg  0x000006e6 , 0x00000011 
- 00030630  0x000085c3 copy  0x0000000b , 0x00000005 
- 00030631  0x000085c4 branch  0x0000775f 
- 00030632  0x000085c8 copy  0x00000011 , 0x00000012 
- 00030633  0x000085c9 branch  0x00007786 
- 00030634  0x000085cc copy  0x00000011 , 0x00000030 
- 00030635  0x000085ce copy  0x00000030 , 0x00000011 
- 00030636  0x000085cf ifetch  0x00000001 , 0x00000011 
- 00030637  0x000085d0 isolate1  0x00000000 , 0x0000003f 
- 00030638  0x000085d1 rtn  0x00000001 
- 00030639  0x000085d2 call  0x0000772d 
- 00030640  0x000085d3 ifetch  0x00000001 , 0x00000012 
- 00030641  0x000085d4 isolate0  0x00000000 , 0x0000003f 
- 00030642  0x000085d5 branch  0x000077ba , 0x00000001 
- 00030643  0x000085d6 arg  0x00000886 , 0x00000011 
- 00030644  0x000085d7 copy  0x00000012 , 0x00000005 
- 00030645  0x000085d8 call  0x00007711 
- 00030646  0x000085d9 ifetch  0x00000001 , 0x00000012 
- 00030647  0x000085da iadd  0x00000013 , 0x0000003f 
- 00030648  0x000085db istore  0x00000001 , 0x00000012 
- 00030649  0x000085dc increase  0xffffffe8 , 0x00000012 
- 00030650  0x000085de add  0x00000012 , 0x00000018 , 0x00000011 
- 00030651  0x000085df force  0x00000007 , 0x00000039 
- 00030652  0x000085e0 call  0x0000772f 
- 00030653  0x000085e1 branch  0x000077ab 
- 00030654  0x000085e5 copy  0x00000005 , 0x0000000b 
- 00030655  0x000085e6 arg  0x00000746 , 0x00000005 
- 00030656  0x000085e7 call  0x00007ec5 
- 00030657  0x000085e8 force  0x00000000 , 0x0000003f 
- 00030658  0x000085e9 store  0x00000004 , 0x000006fe 
- 00030659  0x000085ea store  0x00000004 , 0x0000075e 
- 00030660  0x000085eb jam  0x00000001 , 0x00000746 
- 00030661  0x000085ec arg  0x000006e6 , 0x00000005 
- 00030662  0x000085ed call  0x00007ec5 
- 00030663  0x000085ee arg  0x00000886 , 0x00000006 
- 00030664  0x000085ef arg  0x00000716 , 0x00000005 
- 00030665  0x000085f0 call  0x00007ebe 
- 00030666  0x000085f1 copy  0x00000011 , 0x00000006 
- 00030667  0x000085f2 arg  0x0000072e , 0x00000005 
- 00030668  0x000085f3 call  0x00007ebe 
- 00030669  0x000085f5 arg  0x0000072e , 0x00000006 
- 00030670  0x000085f6 call  0x000076f5 
- 00030671  0x000085f7 branch  0x000077f6 , 0x00000034 
- 00030672  0x000085f8 arg  0x0000072e , 0x00000011 
- 00030673  0x000085f9 arg  0x00000746 , 0x00000012 
- 00030674  0x000085fa call  0x000077aa 
- 00030675  0x000085fc arg  0x00000716 , 0x00000011 
- 00030676  0x000085fd arg  0x000006e6 , 0x00000012 
- 00030677  0x000085fe call  0x000077aa 
- 00030678  0x000085ff arg  0x0000072e , 0x00000011 
- 00030679  0x00008600 arg  0x00000716 , 0x00000012 
- 00030680  0x00008601 call  0x00007704 
- 00030681  0x00008602 branch  0x000077e8 , 0x00000002 
- 00030682  0x00008603 arg  0x00000716 , 0x00000011 
- 00030683  0x00008604 arg  0x0000072e , 0x00000012 
- 00030684  0x00008605 copy  0x00000011 , 0x00000005 
- 00030685  0x00008606 call  0x0000771f 
- 00030686  0x00008607 arg  0x00000746 , 0x00000011 
- 00030687  0x00008608 arg  0x000006e6 , 0x00000012 
- 00030688  0x00008609 copy  0x00000012 , 0x00000005 
- 00030689  0x0000860a call  0x00007711 
- 00030690  0x0000860b ifetch  0x00000001 , 0x00000011 
- 00030691  0x0000860c iadd  0x00000013 , 0x00000013 
- 00030692  0x0000860d ifetch  0x00000001 , 0x00000012 
- 00030693  0x0000860e iadd  0x00000013 , 0x0000003f 
- 00030694  0x0000860f istore  0x00000001 , 0x00000012 
- 00030695  0x00008610 branch  0x000077cd 
- 00030696  0x00008612 arg  0x0000072e , 0x00000011 
- 00030697  0x00008613 arg  0x00000716 , 0x00000012 
- 00030698  0x00008614 copy  0x00000011 , 0x00000005 
- 00030699  0x00008615 call  0x0000771f 
- 00030700  0x00008616 arg  0x000006e6 , 0x00000011 
- 00030701  0x00008617 arg  0x00000746 , 0x00000012 
- 00030702  0x00008618 copy  0x00000012 , 0x00000005 
- 00030703  0x00008619 call  0x00007711 
- 00030704  0x0000861a ifetch  0x00000001 , 0x00000011 
- 00030705  0x0000861b iadd  0x00000013 , 0x00000013 
- 00030706  0x0000861c ifetch  0x00000001 , 0x00000012 
- 00030707  0x0000861d iadd  0x00000013 , 0x0000003f 
- 00030708  0x0000861e istore  0x00000001 , 0x00000012 
- 00030709  0x0000861f branch  0x000077cd 
- 00030710  0x00008621 arg  0x00000746 , 0x00000005 
- 00030711  0x00008622 call  0x00007ec5 
- 00030712  0x00008623 fetch  0x00000001 , 0x000006fe 
- 00030713  0x00008624 store  0x00000001 , 0x00000746 
- 00030714  0x00008625 store  0x00000001 , 0x0000074e 
- 00030715  0x00008626 arg  0x00000746 , 0x00000011 
- 00030716  0x00008627 arg  0x000006e6 , 0x00000012 
- 00030717  0x00008628 copy  0x00000012 , 0x00000005 
- 00030718  0x00008629 call  0x00007755 
- 00030719  0x0000862a arg  0x00000886 , 0x00000011 
- 00030720  0x0000862b arg  0x000006e6 , 0x00000012 
- 00030721  0x0000862c copy  0x0000000b , 0x00000005 
- 00030722  0x0000862d branch  0x00007758 
- 00030723  0x00008633 arg  0x000006a6 , 0x00000011 
- 00030724  0x00008634 arg  0x0000075e , 0x00000005 
- 00030725  0x00008635 call  0x000077a8 
- 00030726  0x00008636 arg  0x0000075e , 0x00000011 
- 00030727  0x00008637 arg  0x00000776 , 0x00000005 
- 00030728  0x00008638 call  0x000077a8 
- 00030729  0x00008639 arg  0x0000089e , 0x00000011 
- 00030730  0x0000863a arg  0x00000776 , 0x00000012 
- 00030731  0x0000863b arg  0x00000776 , 0x00000005 
- 00030732  0x0000863c call  0x00007786 
- 00030733  0x0000863d arg  0x00000676 , 0x00000011 
- 00030734  0x0000863e arg  0x0000075e , 0x00000005 
- 00030735  0x0000863f call  0x000077a8 
- 00030736  0x00008640 arg  0x0000075e , 0x00000006 
- 00030737  0x00008641 arg  0x0000072e , 0x00000005 
- 00030738  0x00008642 call  0x00007ebe 
- 00030739  0x00008643 arg  0x0000072e , 0x00000011 
- 00030740  0x00008644 call  0x00007748 
- 00030741  0x00008645 arg  0x0000075e , 0x00000011 
- 00030742  0x00008646 arg  0x0000072e , 0x00000012 
- 00030743  0x00008647 arg  0x0000075e , 0x00000005 
- 00030744  0x00008648 call  0x00007755 
- 00030745  0x00008649 arg  0x0000075e , 0x00000011 
- 00030746  0x0000864a arg  0x00000776 , 0x00000012 
- 00030747  0x0000864b arg  0x0000075e , 0x00000005 
- 00030748  0x0000864c call  0x00007755 
- 00030749  0x0000864d arg  0x00000676 , 0x00000006 
- 00030750  0x0000864e arg  0x0000072e , 0x00000005 
- 00030751  0x0000864f call  0x00007ebe 
- 00030752  0x00008650 arg  0x0000068e , 0x00000011 
- 00030753  0x00008651 arg  0x00000776 , 0x00000005 
- 00030754  0x00008652 call  0x000077a8 
- 00030755  0x00008653 arg  0x0000072e , 0x00000011 
- 00030756  0x00008654 call  0x00007748 
- 00030757  0x00008655 arg  0x0000072e , 0x00000011 
- 00030758  0x00008656 call  0x00007748 
- 00030759  0x00008657 arg  0x0000072e , 0x00000011 
- 00030760  0x00008658 arg  0x00000776 , 0x00000012 
- 00030761  0x00008659 arg  0x0000072e , 0x00000005 
- 00030762  0x0000865a call  0x00007786 
- 00030763  0x0000865b arg  0x00000776 , 0x00000011 
- 00030764  0x0000865c arg  0x00000746 , 0x00000005 
- 00030765  0x0000865d call  0x000077a8 
- 00030766  0x0000865e arg  0x00000746 , 0x00000011 
- 00030767  0x0000865f call  0x00007748 
- 00030768  0x00008660 arg  0x00000746 , 0x00000011 
- 00030769  0x00008661 call  0x00007748 
- 00030770  0x00008662 arg  0x00000746 , 0x00000011 
- 00030771  0x00008663 call  0x00007748 
- 00030772  0x00008664 arg  0x0000068e , 0x00000006 
- 00030773  0x00008665 arg  0x00000776 , 0x00000005 
- 00030774  0x00008666 call  0x00007ebe 
- 00030775  0x00008667 arg  0x00000776 , 0x00000011 
- 00030776  0x00008668 call  0x00007748 
- 00030777  0x00008669 arg  0x00000776 , 0x00000011 
- 00030778  0x0000866a arg  0x000006a6 , 0x00000012 
- 00030779  0x0000866b arg  0x000006a6 , 0x00000005 
- 00030780  0x0000866c call  0x00007786 
- 00030781  0x0000866d arg  0x0000075e , 0x00000011 
- 00030782  0x0000866e arg  0x00000776 , 0x00000005 
- 00030783  0x0000866f call  0x000077a8 
- 00030784  0x00008670 arg  0x00000776 , 0x00000011 
- 00030785  0x00008671 arg  0x0000072e , 0x00000012 
- 00030786  0x00008672 arg  0x00000776 , 0x00000005 
- 00030787  0x00008673 call  0x00007758 
- 00030788  0x00008674 arg  0x00000776 , 0x00000011 
- 00030789  0x00008675 arg  0x0000072e , 0x00000012 
- 00030790  0x00008676 arg  0x00000676 , 0x00000005 
- 00030791  0x00008677 call  0x00007758 
- 00030792  0x00008678 arg  0x0000072e , 0x00000011 
- 00030793  0x00008679 arg  0x00000676 , 0x00000012 
- 00030794  0x0000867a arg  0x00000776 , 0x00000005 
- 00030795  0x0000867b call  0x00007758 
- 00030796  0x0000867c arg  0x00000776 , 0x00000011 
- 00030797  0x0000867d arg  0x0000075e , 0x00000012 
- 00030798  0x0000867e arg  0x00000776 , 0x00000005 
- 00030799  0x0000867f call  0x00007786 
- 00030800  0x00008680 arg  0x00000776 , 0x00000011 
- 00030801  0x00008681 arg  0x00000746 , 0x00000012 
- 00030802  0x00008682 arg  0x0000068e , 0x00000005 
- 00030803  0x00008683 branch  0x00007758 
- 00030804  0x00008688 arg  0x00000616 , 0x00000011 
- 00030805  0x00008689 arg  0x0000078e , 0x00000005 
- 00030806  0x0000868a call  0x000077a8 
- 00030807  0x0000868b arg  0x00000676 , 0x00000011 
- 00030808  0x0000868c arg  0x0000078e , 0x00000012 
- 00030809  0x0000868d arg  0x00000746 , 0x00000005 
- 00030810  0x0000868e call  0x00007786 
- 00030811  0x0000868f arg  0x00000616 , 0x00000011 
- 00030812  0x00008690 arg  0x0000078e , 0x00000012 
- 00030813  0x00008691 arg  0x0000078e , 0x00000005 
- 00030814  0x00008692 call  0x00007786 
- 00030815  0x00008693 arg  0x0000068e , 0x00000011 
- 00030816  0x00008694 arg  0x0000078e , 0x00000012 
- 00030817  0x00008695 arg  0x0000072e , 0x00000005 
- 00030818  0x00008696 call  0x00007786 
- 00030819  0x00008697 arg  0x000006a6 , 0x00000011 
- 00030820  0x00008698 arg  0x0000078e , 0x00000005 
- 00030821  0x00008699 call  0x000077a8 
- 00030822  0x0000869a arg  0x000005e6 , 0x00000011 
- 00030823  0x0000869b arg  0x0000078e , 0x00000012 
- 00030824  0x0000869c arg  0x0000075e , 0x00000005 
- 00030825  0x0000869d call  0x00007786 
- 00030826  0x0000869e arg  0x000006a6 , 0x00000011 
- 00030827  0x0000869f arg  0x0000078e , 0x00000012 
- 00030828  0x000086a0 arg  0x0000078e , 0x00000005 
- 00030829  0x000086a1 call  0x00007786 
- 00030830  0x000086a2 arg  0x000005fe , 0x00000011 
- 00030831  0x000086a3 arg  0x0000078e , 0x00000012 
- 00030832  0x000086a4 arg  0x00000776 , 0x00000005 
- 00030833  0x000086a5 call  0x00007786 
- 00030834  0x000086a6 arg  0x00000746 , 0x00000011 
- 00030835  0x000086a7 arg  0x0000075e , 0x00000012 
- 00030836  0x000086a8 arg  0x0000078e , 0x00000005 
- 00030837  0x000086a9 call  0x00007758 
- 00030838  0x000086aa arg  0x00000746 , 0x00000011 
- 00030839  0x000086ab arg  0x0000075e , 0x00000012 
- 00030840  0x000086ac arg  0x00000746 , 0x00000005 
- 00030841  0x000086ad call  0x00007755 
- 00030842  0x000086ae arg  0x0000072e , 0x00000011 
- 00030843  0x000086af arg  0x00000776 , 0x00000012 
- 00030844  0x000086b0 arg  0x0000075e , 0x00000005 
- 00030845  0x000086b1 call  0x00007758 
- 00030846  0x000086b2 arg  0x0000072e , 0x00000011 
- 00030847  0x000086b3 arg  0x00000776 , 0x00000012 
- 00030848  0x000086b4 arg  0x0000072e , 0x00000005 
- 00030849  0x000086b5 call  0x00007755 
- 00030850  0x000086b6 arg  0x0000072e , 0x00000011 
- 00030851  0x000086b7 arg  0x0000078e , 0x00000012 
- 00030852  0x000086b8 arg  0x0000072e , 0x00000005 
- 00030853  0x000086b9 call  0x00007786 
- 00030854  0x000086ba arg  0x000006a6 , 0x00000011 
- 00030855  0x000086bb arg  0x00000616 , 0x00000012 
- 00030856  0x000086bc arg  0x00000776 , 0x00000005 
- 00030857  0x000086bd call  0x00007786 
- 00030858  0x000086be arg  0x00000776 , 0x00000011 
- 00030859  0x000086bf arg  0x0000078e , 0x00000012 
- 00030860  0x000086c0 arg  0x000006a6 , 0x00000005 
- 00030861  0x000086c1 call  0x00007786 
- 00030862  0x000086c2 arg  0x0000078e , 0x00000011 
- 00030863  0x000086c3 arg  0x0000078e , 0x00000005 
- 00030864  0x000086c4 call  0x000077a8 
- 00030865  0x000086c5 arg  0x0000078e , 0x00000011 
- 00030866  0x000086c6 arg  0x00000746 , 0x00000012 
- 00030867  0x000086c7 arg  0x00000776 , 0x00000005 
- 00030868  0x000086c8 call  0x00007786 
- 00030869  0x000086c9 arg  0x0000078e , 0x00000011 
- 00030870  0x000086ca arg  0x0000072e , 0x00000012 
- 00030871  0x000086cb arg  0x0000072e , 0x00000005 
- 00030872  0x000086cc call  0x00007786 
- 00030873  0x000086cd arg  0x0000075e , 0x00000011 
- 00030874  0x000086ce arg  0x00000676 , 0x00000005 
- 00030875  0x000086cf call  0x000077a8 
- 00030876  0x000086d0 arg  0x00000676 , 0x00000011 
- 00030877  0x000086d1 arg  0x00000776 , 0x00000012 
- 00030878  0x000086d2 arg  0x00000676 , 0x00000005 
- 00030879  0x000086d3 call  0x00007758 
- 00030880  0x000086d4 arg  0x00000676 , 0x00000006 
- 00030881  0x000086d5 arg  0x0000078e , 0x00000005 
- 00030882  0x000086d6 call  0x00007ebe 
- 00030883  0x000086d7 arg  0x0000078e , 0x00000011 
- 00030884  0x000086d8 call  0x00007748 
- 00030885  0x000086d9 arg  0x00000776 , 0x00000011 
- 00030886  0x000086da arg  0x0000078e , 0x00000012 
- 00030887  0x000086db arg  0x00000776 , 0x00000005 
- 00030888  0x000086dc call  0x00007758 
- 00030889  0x000086dd arg  0x00000776 , 0x00000011 
- 00030890  0x000086de arg  0x0000075e , 0x00000012 
- 00030891  0x000086df arg  0x0000075e , 0x00000005 
- 00030892  0x000086e0 call  0x00007786 
- 00030893  0x000086e1 arg  0x0000075e , 0x00000011 
- 00030894  0x000086e2 arg  0x0000072e , 0x00000012 
- 00030895  0x000086e3 arg  0x0000068e , 0x00000005 
- 00030896  0x000086e4 call  0x00007758 
- 00030897  0x000086e5 arg  0x0000068e , 0x00000011 
- 00030898  0x000086e6 arg  0x00000886 , 0x00000012 
- 00030899  0x000086e7 arg  0x0000068e , 0x00000005 
- 00030900  0x000086e8 force  0x00000000 , 0x00000013 
- 00030901  0x000086e9 fetch  0x00000001 , 0x0000068e 
- 00030902  0x000086ea isolate1  0x00000000 , 0x0000003f 
- 00030903  0x000086eb call  0x00007711 , 0x00000001 
- 00030904  0x000086ec copy  0x00000013 , 0x00000030 
- 00030905  0x000086ed arg  0x0000068e , 0x00000011 
- 00030906  0x000086ee call  0x0000772d 
- 00030907  0x000086ef fetch  0x00000001 , 0x000006a5 
- 00030908  0x000086f0 isolate1  0x00000000 , 0x00000030 
- 00030909  0x000086f1 setflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00030910  0x000086f2 store  0x00000001 , 0x000006a5 
- 00030911  0x000086f3 rtn 
- 00030912  0x000086f8 fetch  0x00000001 , 0x000005e3 
- 00030913  0x000086f9 increase  0xffffffff , 0x0000003f 
- 00030914  0x000086fa nrtn  0x00000002 
- 00030915  0x000086fb store  0x00000001 , 0x000005e3 
- 00030916  0x000086fc fetch  0x00000001 , 0x000005e2 
- 00030917  0x000086fd call  0x00007803 , 0x00000034 
- 00030918  0x000086fe fetch  0x00000001 , 0x000005e3 
- 00030919  0x000086ff arg  0x000006be , 0x00000006 
- 00030920  0x00008700 call  0x000076ec 
- 00030921  0x00008701 branch  0x000078c0 , 0x00000001 
- 00030922  0x00008702 fetch  0x00000001 , 0x000005e2 
- 00030923  0x00008703 nbranch  0x000078ce , 0x00000034 
- 00030924  0x00008704 call  0x00007854 
- 00030925  0x00008705 branch  0x000078c0 
- 00030926  0x00008707 jam  0x00000000 , 0x000005e2 
- 00030927  0x00008708 arg  0x000005e6 , 0x00000006 
- 00030928  0x00008709 arg  0x00000676 , 0x00000005 
- 00030929  0x0000870a call  0x000076f2 
- 00030930  0x0000870b branch  0x000078c0 
- 00030931  0x0000870f arg  0x000006a6 , 0x00000011 
- 00030932  0x00008710 arg  0x00000776 , 0x00000005 
- 00030933  0x00008711 call  0x000077be 
- 00030934  0x00008712 arg  0x00000776 , 0x00000011 
- 00030935  0x00008713 arg  0x0000072e , 0x00000005 
- 00030936  0x00008714 call  0x000077a8 
- 00030937  0x00008715 arg  0x00000676 , 0x00000011 
- 00030938  0x00008716 arg  0x0000072e , 0x00000012 
- 00030939  0x00008717 arg  0x0000062e , 0x00000005 
- 00030940  0x00008718 call  0x00007786 
- 00030941  0x00008719 arg  0x00000776 , 0x00000011 
- 00030942  0x0000871a arg  0x0000072e , 0x00000012 
- 00030943  0x0000871b arg  0x0000075e , 0x00000005 
- 00030944  0x0000871c call  0x00007786 
- 00030945  0x0000871d arg  0x0000068e , 0x00000011 
- 00030946  0x0000871e arg  0x0000075e , 0x00000012 
- 00030947  0x0000871f arg  0x00000646 , 0x00000005 
- 00030948  0x00008720 branch  0x00007786 
- 00030949  0x00008725 ifetch  0x00000004 , 0x00000006 
- 00030950  0x00008726 force  0x00000004 , 0x00000011 
- 00030951  0x00008727 increase  0x00000003 , 0x00000005 
- 00030952  0x00008729 istore  0x00000001 , 0x00000005 
- 00030953  0x0000872a rshift8  0x0000003f , 0x0000003f 
- 00030954  0x0000872b increase  0xfffffffe , 0x00000005 
- 00030955  0x0000872c increase  0xffffffff , 0x00000011 
- 00030956  0x0000872d nbranch  0x000078e8 , 0x00000005 
- 00030957  0x0000872e increase  0x00000005 , 0x00000005 
- 00030958  0x0000872f loop  0x000078e5 
- 00030959  0x00008730 rtn 
- 00030960  0x00008734 lshift2  0x00000007 , 0x0000003f 
- 00030961  0x00008735 iadd  0x0000000b , 0x00000006 
- 00030962  0x00008736 ifetch  0x00000004 , 0x00000006 
- 00030963  0x00008737 rtn 
- 00030964  0x0000873a force  0x00000010 , 0x00000030 
- 00030965  0x0000873b arg  0x000005e6 , 0x0000000b 
- 00030966  0x0000873d add  0x00000030 , 0xfffffff9 , 0x00000007 
- 00030967  0x0000873e call  0x000078f0 
- 00030968  0x0000873f iforce  0x00000002 
- 00030969  0x00008740 add  0x00000030 , 0xfffffff0 , 0x00000007 
- 00030970  0x00008741 call  0x000078f0 
- 00030971  0x00008742 iadd  0x00000002 , 0x00000002 
- 00030972  0x00008743 add  0x00000030 , 0xfffffffe , 0x00000007 
- 00030973  0x00008744 call  0x000078f0 
- 00030974  0x00008745 shasx  0x0000003f , 0x00000001 , 0x0000003f 
- 00030975  0x00008746 iadd  0x00000002 , 0x00000002 
- 00030976  0x00008747 add  0x00000030 , 0xfffffff1 , 0x00000007 
- 00030977  0x00008748 call  0x000078f0 
- 00030978  0x00008749 shasx  0x0000003f , 0x00000000 , 0x0000003f 
- 00030979  0x0000874a iadd  0x00000002 , 0x00000002 
- 00030980  0x0000874b lshift2  0x00000030 , 0x0000003f 
- 00030981  0x0000874c iadd  0x0000000b , 0x00000005 
- 00030982  0x0000874d istoret  0x00000004 , 0x00000005 
- 00030983  0x0000874e increase  0x00000001 , 0x00000030 
- 00030984  0x0000874f compare  0x00000040 , 0x00000030 , 0x000000ff 
- 00030985  0x00008750 nbranch  0x000078f6 , 0x00000001 
- 00030986  0x00008751 rtn 
- 00030987  0x00008755 arg  0x000008fe , 0x00000006 
- 00030988  0x00008756 force  0x00000007 , 0x00000038 
- 00030989  0x00008758 ifetch  0x00000004 , 0x00000006 
- 00030990  0x00008759 iforce  0x0000002f 
- 00030991  0x0000875a increase  0xffffffff , 0x00000038 
- 00030992  0x0000875b branch  0x0000790d , 0x00000002 
- 00030993  0x0000875c rtn 
- 00030994  0x0000875f bpatchx  0x000000ec , 0x0000403d 
- 00030995  0x00008760 call  0x000078f4 
- 00030996  0x00008761 arg  0x000006e6 , 0x00000005 
- 00030997  0x00008762 force  0x00000000 , 0x00000038 
- 00030998  0x00008764 deposit  0x0000002f 
- 00030999  0x00008765 istore  0x00000004 , 0x00000005 
- 00031000  0x00008766 increase  0x00000001 , 0x00000038 
- 00031001  0x00008767 compare  0x00000008 , 0x00000038 , 0x000000ff 
- 00031002  0x00008768 nbranch  0x00007916 , 0x00000001 
- 00031003  0x00008769 call  0x000074b9 
- 00031004  0x0000876a arg  0x00008700 , 0x0000000b 
- 00031005  0x0000876b arg  0x000005e6 , 0x00000030 
- 00031006  0x0000876c force  0x00000040 , 0x00000039 
- 00031007  0x0000876e ifetcht  0x00000004 , 0x00000030 
- 00031008  0x0000876f ifetch  0x00000004 , 0x0000000b 
- 00031009  0x00008770 increase  0x00000004 , 0x0000000b 
- 00031010  0x00008771 increase  0x00000004 , 0x00000030 
- 00031011  0x00008772 iadd  0x00000002 , 0x0000003f 
- 00031012  0x00008773 force  0x00000007 , 0x00000038 
- 00031013  0x00008774 iadd  0x0000002f , 0x00000002 
- 00031014  0x00008775 force  0x00000004 , 0x00000038 
- 00031015  0x00008776 shasx  0x0000002f , 0x00000003 , 0x0000003f 
- 00031016  0x00008777 iadd  0x00000002 , 0x00000002 
- 00031017  0x00008778 force  0x00000005 , 0x00000038 
- 00031018  0x00008779 deposit  0x0000002f 
- 00031019  0x0000877a force  0x00000006 , 0x00000038 
- 00031020  0x0000877b ixor  0x0000002f , 0x0000003f 
- 00031021  0x0000877c force  0x00000004 , 0x00000038 
- 00031022  0x0000877d iand  0x0000002f , 0x0000003f 
- 00031023  0x0000877e force  0x00000006 , 0x00000038 
- 00031024  0x0000877f ixor  0x0000002f , 0x0000003f 
- 00031025  0x00008780 iadd  0x00000002 , 0x00000002 
- 00031026  0x00008781 force  0x00000007 , 0x00000038 
- 00031027  0x00008782 copy  0x00000002 , 0x0000002f 
- 00031028  0x00008783 force  0x00000003 , 0x00000038 
- 00031029  0x00008784 deposit  0x0000002f 
- 00031030  0x00008785 iadd  0x00000002 , 0x0000002f 
- 00031031  0x00008786 force  0x00000000 , 0x00000038 
- 00031032  0x00008787 deposit  0x0000002f 
- 00031033  0x00008788 force  0x00000001 , 0x00000038 
- 00031034  0x00008789 iand  0x0000002f , 0x00000002 
- 00031035  0x0000878a ior  0x0000002f , 0x0000003f 
- 00031036  0x0000878b force  0x00000002 , 0x00000038 
- 00031037  0x0000878c iand  0x0000002f , 0x0000003f 
- 00031038  0x0000878d ior  0x00000002 , 0x00000002 
- 00031039  0x0000878e force  0x00000000 , 0x00000038 
- 00031040  0x0000878f shasx  0x0000002f , 0x00000002 , 0x0000003f 
- 00031041  0x00008790 iadd  0x00000002 , 0x0000003f 
- 00031042  0x00008791 force  0x00000007 , 0x00000038 
- 00031043  0x00008792 iadd  0x0000002f , 0x0000002f 
- 00031044  0x00008793 regexrot 
- 00031045  0x00008794 loop  0x0000791f 
- 00031046  0x00008795 arg  0x000006e6 , 0x00000006 
- 00031047  0x00008796 force  0x00000000 , 0x00000038 
- 00031048  0x00008798 ifetch  0x00000004 , 0x00000006 
- 00031049  0x00008799 iadd  0x0000002f , 0x0000002f 
- 00031050  0x0000879a increase  0x00000001 , 0x00000038 
- 00031051  0x0000879b compare  0x00000008 , 0x00000038 , 0x000000ff 
- 00031052  0x0000879c nbranch  0x00007948 , 0x00000001 
- 00031053  0x0000879d branch  0x000074bd 
- 00031054  0x000087a1 arg  0x00000a3e , 0x00000005 
- 00031055  0x000087a2 force  0x00000007 , 0x00000038 
- 00031056  0x000087a4 deposit  0x0000002f 
- 00031057  0x000087a5 istore  0x00000004 , 0x00000005 
- 00031058  0x000087a6 increase  0xffffffff , 0x00000038 
- 00031059  0x000087a7 branch  0x00007950 , 0x00000002 
- 00031060  0x000087a8 rtn 
- 00031061  0x000087ac arg  0x000005e6 , 0x00000005 
- 00031062  0x000087ad increase  0xfffffffc , 0x00000006 
- 00031063  0x000087ae sub  0x00000039 , 0x00000010 , 0x00000011 
- 00031064  0x000087b0 ifetch  0x00000004 , 0x00000006 
- 00031065  0x000087b1 ixor  0x00000002 , 0x0000003f 
- 00031066  0x000087b2 istore  0x00000004 , 0x00000005 
- 00031067  0x000087b3 increase  0xfffffff8 , 0x00000006 
- 00031068  0x000087b4 loop  0x00007958 
- 00031069  0x000087b5 copy  0x00000011 , 0x00000039 
- 00031070  0x000087b6 deposit  0x00000002 
- 00031071  0x000087b8 istore  0x00000004 , 0x00000005 
- 00031072  0x000087b9 loop  0x0000795f 
- 00031073  0x000087ba rtn 
- 00031074  0x000087bd call  0x00007967 
- 00031075  0x000087be call  0x0000794e 
- 00031076  0x000087bf branch  0x0000798d 
- 00031077  0x000087c2 call  0x00007967 
- 00031078  0x000087c3 branch  0x0000798d 
- 00031079  0x000087c6 arg  0x000009de , 0x00000006 
- 00031080  0x000087c7 arg  0x000005e6 , 0x00000005 
- 00031081  0x000087c8 force  0x00000006 , 0x00000039 
- 00031082  0x000087c9 call  0x00007a71 
- 00031083  0x000087ca arg  0x00004642 , 0x00000006 
- 00031084  0x000087cb force  0x00000006 , 0x00000039 
- 00031085  0x000087cc call  0x00007a71 
- 00031086  0x000087cd arg  0x00000a3e , 0x00000006 
- 00031087  0x000087ce call  0x00007a70 
- 00031088  0x000087cf call  0x0000790b 
- 00031089  0x000087d0 call  0x00007912 
- 00031090  0x000087d1 arg  0x00000a2e , 0x00000006 
- 00031091  0x000087d2 arg  0x000005e6 , 0x00000005 
- 00031092  0x000087d3 branch  0x00007984 
- 00031093  0x000087d6 arg  0x00004642 , 0x00000006 
- 00031094  0x000087d7 arg  0x000005e6 , 0x00000005 
- 00031095  0x000087d8 force  0x00000006 , 0x00000039 
- 00031096  0x000087d9 call  0x00007a71 
- 00031097  0x000087da arg  0x000009de , 0x00000006 
- 00031098  0x000087db force  0x00000006 , 0x00000039 
- 00031099  0x000087dc call  0x00007a71 
- 00031100  0x000087dd arg  0x00000a2e , 0x00000006 
- 00031101  0x000087de call  0x00007a70 
- 00031102  0x000087df call  0x0000790b 
- 00031103  0x000087e0 call  0x00007912 
- 00031104  0x000087e1 arg  0x00000a3e , 0x00000006 
- 00031105  0x000087e2 arg  0x000005e6 , 0x00000005 
- 00031106  0x000087e3 call  0x00007984 
- 00031107  0x000087e4 branch  0x0000798d 
- 00031108  0x000087e7 call  0x00007a70 
- 00031109  0x000087e8 setarg  0x00800000 
- 00031110  0x000087e9 lshift8  0x0000003f , 0x0000003f 
- 00031111  0x000087ea istore  0x00000004 , 0x00000005 
- 00031112  0x000087eb force  0x00000005 , 0x00000039 
- 00031113  0x000087ec call  0x00007ec6 
- 00031114  0x000087ed setarg  0x00000280 
- 00031115  0x000087ee istore  0x00000004 , 0x00000005 
- 00031116  0x000087ef branch  0x00007912 
- 00031117  0x000087f1 fetch  0x00000004 , 0x00000a3e 
- 00031118  0x000087f3 arg  0x000003e8 , 0x00000011 
- 00031119  0x000087f4 idiv  0x00000011 
- 00031120  0x000087f5 call  0x00007f86 
- 00031121  0x000087f6 remainder  0x0000003f 
- 00031122  0x000087f7 store  0x00000004 , 0x000009ba 
- 00031123  0x000087f8 quotient  0x0000003f 
- 00031124  0x000087f9 arg  0x000003e8 , 0x00000011 
- 00031125  0x000087fa idiv  0x00000011 
- 00031126  0x000087fb call  0x00007f86 
- 00031127  0x000087fc remainder  0x0000003f 
- 00031128  0x000087fd arg  0x000003e8 , 0x00000011 
- 00031129  0x000087fe imul32  0x00000011 , 0x0000003f 
- 00031130  0x000087ff fetcht  0x00000004 , 0x000009ba 
- 00031131  0x00008800 iadd  0x00000002 , 0x0000003f 
- 00031132  0x00008801 store  0x00000004 , 0x000009ba 
- 00031133  0x00008802 rtn 
- 00031134  0x00008805 jam  0x00000000 , 0x00004664 
- 00031135  0x00008806 branch  0x000079a2 
- 00031136  0x00008809 fetch  0x00000001 , 0x00004662 
- 00031137  0x0000880a bne  0x00000002 , 0x0000799e 
- 00031138  0x0000880c bpatchx  0x000000ed , 0x0000403d 
- 00031139  0x0000880d setarg  0x00363636 
- 00031140  0x0000880e lshift8  0x0000003f , 0x00000002 
- 00031141  0x0000880f or_into  0x00000036 , 0x00000002 
- 00031142  0x00008810 fetch  0x00000002 , 0x00000a7e 
- 00031143  0x00008811 copy  0x0000003f , 0x00000006 
- 00031144  0x00008812 force  0x00000004 , 0x00000039 
- 00031145  0x00008813 call  0x00007955 
- 00031146  0x00008814 call  0x0000790b 
- 00031147  0x00008815 call  0x00007912 
- 00031148  0x00008816 fetch  0x00000002 , 0x00000a80 
- 00031149  0x00008817 copy  0x0000003f , 0x00000006 
- 00031150  0x00008818 arg  0x000005e6 , 0x00000005 
- 00031151  0x00008819 force  0x00000006 , 0x00000039 
- 00031152  0x0000881a call  0x00007a71 
- 00031153  0x0000881b fetch  0x00000002 , 0x00000a82 
- 00031154  0x0000881c copy  0x0000003f , 0x00000006 
- 00031155  0x0000881d force  0x00000006 , 0x00000039 
- 00031156  0x0000881e call  0x00007a71 
- 00031157  0x0000881f setarg  0x00800000 
- 00031158  0x00008820 istore  0x00000003 , 0x00000005 
- 00031159  0x00008822 fetch  0x00000001 , 0x00004664 
- 00031160  0x00008824 istore  0x00000001 , 0x00000005 
- 00031161  0x00008825 force  0x00000000 , 0x0000003f 
- 00031162  0x00008826 istore  0x00000008 , 0x00000005 
- 00031163  0x00008827 setarg  0x00000388 
- 00031164  0x00008828 istore  0x00000004 , 0x00000005 
- 00031165  0x00008829 call  0x00007912 
- 00031166  0x0000882a call  0x0000794e 
- 00031167  0x0000882b arg  0x00000a3e , 0x00000006 
- 00031168  0x0000882c arg  0x00000706 , 0x00000005 
- 00031169  0x0000882d call  0x00007ebd 
- 00031170  0x0000882f setarg  0x005c5c5c 
- 00031171  0x00008830 lshift8  0x0000003f , 0x00000002 
- 00031172  0x00008831 or_into  0x0000005c , 0x00000002 
- 00031173  0x00008832 fetch  0x00000002 , 0x00000a7e 
- 00031174  0x00008833 copy  0x0000003f , 0x00000006 
- 00031175  0x00008834 force  0x00000004 , 0x00000039 
- 00031176  0x00008835 call  0x00007955 
- 00031177  0x00008836 call  0x0000790b 
- 00031178  0x00008837 call  0x00007912 
- 00031179  0x00008838 arg  0x00000726 , 0x00000006 
- 00031180  0x00008839 arg  0x000005e6 , 0x00000005 
- 00031181  0x0000883a force  0x00000008 , 0x00000039 
- 00031182  0x0000883b call  0x00007a71 
- 00031183  0x0000883c setarg  0x00800000 
- 00031184  0x0000883d lshift8  0x0000003f , 0x0000003f 
- 00031185  0x0000883e istore  0x00000004 , 0x00000005 
- 00031186  0x0000883f call  0x00007ec5 
- 00031187  0x00008840 setarg  0x00000300 
- 00031188  0x00008841 istore  0x00000004 , 0x00000005 
- 00031189  0x00008842 call  0x00007912 
- 00031190  0x00008843 branch  0x0000794e 
- 00031191  0x00008847 setarg  0x00363636 
- 00031192  0x00008848 lshift8  0x0000003f , 0x00000002 
- 00031193  0x00008849 or_into  0x00000036 , 0x00000002 
- 00031194  0x0000884a arg  0x00000a1e , 0x00000006 
- 00031195  0x0000884b force  0x00000006 , 0x00000039 
- 00031196  0x0000884c call  0x00007955 
- 00031197  0x0000884d call  0x0000790b 
- 00031198  0x0000884e call  0x00007912 
- 00031199  0x0000884f fetch  0x00000002 , 0x00000a8a 
- 00031200  0x00008850 copy  0x0000003f , 0x00000006 
- 00031201  0x00008851 arg  0x000005e6 , 0x00000005 
- 00031202  0x00008852 call  0x00007a70 
- 00031203  0x00008853 fetch  0x00000002 , 0x00000a8c 
- 00031204  0x00008854 copy  0x0000003f , 0x00000006 
- 00031205  0x00008855 call  0x00007a70 
- 00031206  0x00008857 setarg  0x0062746c 
- 00031207  0x00008858 lshift8  0x0000003f , 0x0000003f 
- 00031208  0x00008859 or_into  0x0000006b , 0x0000003f 
- 00031209  0x0000885a istore  0x00000004 , 0x00000005 
- 00031210  0x0000885b arg  0x00000733 , 0x00000006 
- 00031211  0x0000885c force  0x00000003 , 0x00000039 
- 00031212  0x0000885d call  0x00007a71 
- 00031213  0x0000885f setarg  0x00800000 
- 00031214  0x00008860 lshift8  0x0000003f , 0x0000003f 
- 00031215  0x00008861 istore  0x00000004 , 0x00000005 
- 00031216  0x00008862 force  0x00000000 , 0x0000003f 
- 00031217  0x00008863 istore  0x00000008 , 0x00000005 
- 00031218  0x00008864 setarg  0x00000380 
- 00031219  0x00008865 istore  0x00000004 , 0x00000005 
- 00031220  0x00008866 call  0x00007912 
- 00031221  0x00008868 call  0x0000794e 
- 00031222  0x00008869 arg  0x00000a3e , 0x00000006 
- 00031223  0x0000886a arg  0x00000706 , 0x00000005 
- 00031224  0x0000886b call  0x00007ebd 
- 00031225  0x0000886d setarg  0x005c5c5c 
- 00031226  0x0000886e lshift8  0x0000003f , 0x00000002 
- 00031227  0x0000886f or_into  0x0000005c , 0x00000002 
- 00031228  0x00008870 arg  0x00000a1e , 0x00000006 
- 00031229  0x00008871 force  0x00000006 , 0x00000039 
- 00031230  0x00008872 call  0x00007955 
- 00031231  0x00008873 call  0x0000790b 
- 00031232  0x00008874 call  0x00007912 
- 00031233  0x00008875 arg  0x00000726 , 0x00000006 
- 00031234  0x00008876 arg  0x000005e6 , 0x00000005 
- 00031235  0x00008877 force  0x00000008 , 0x00000039 
- 00031236  0x00008878 call  0x00007a71 
- 00031237  0x00008879 setarg  0x00800000 
- 00031238  0x0000887a lshift8  0x0000003f , 0x0000003f 
- 00031239  0x0000887b istore  0x00000004 , 0x00000005 
- 00031240  0x0000887c call  0x00007ec5 
- 00031241  0x0000887d setarg  0x00000300 
- 00031242  0x0000887e istore  0x00000004 , 0x00000005 
- 00031243  0x0000887f call  0x00007912 
- 00031244  0x00008880 branch  0x0000794e 
- 00031245  0x00008884 fetch  0x00000001 , 0x00004662 
- 00031246  0x00008885 bne  0x00000002 , 0x00007a1e 
- 00031247  0x00008887 bpatchx  0x000000ee , 0x0000403d 
- 00031248  0x00008888 setarg  0x00363636 
- 00031249  0x00008889 lshift8  0x0000003f , 0x00000002 
- 00031250  0x0000888a or_into  0x00000036 , 0x00000002 
- 00031251  0x0000888b arg  0x00000a1e , 0x00000006 
- 00031252  0x0000888c force  0x00000006 , 0x00000039 
- 00031253  0x0000888d call  0x00007955 
- 00031254  0x0000888e call  0x0000790b 
- 00031255  0x0000888f call  0x00007912 
- 00031256  0x00008890 arg  0x00000a3e , 0x00000006 
- 00031257  0x00008891 arg  0x000005e6 , 0x00000005 
- 00031258  0x00008892 call  0x00007a70 
- 00031259  0x00008893 arg  0x00000a2e , 0x00000006 
- 00031260  0x00008894 call  0x00007a70 
- 00031261  0x00008895 branch  0x00007a33 
- 00031262  0x00008898 setarg  0x00000000 
- 00031263  0x00008899 store  0x00000004 , 0x0000468a 
- 00031264  0x0000889a branch  0x00007a0f 
- 00031265  0x0000889d setarg  0x00000000 
- 00031266  0x0000889e store  0x00000004 , 0x0000468a 
- 00031267  0x0000889f branch  0x00007a26 
- 00031268  0x000088a3 fetch  0x00000001 , 0x00004662 
- 00031269  0x000088a4 bne  0x00000002 , 0x00007a21 
- 00031270  0x000088a6 setarg  0x00363636 
- 00031271  0x000088a7 lshift8  0x0000003f , 0x00000002 
- 00031272  0x000088a8 or_into  0x00000036 , 0x00000002 
- 00031273  0x000088a9 arg  0x00000a1e , 0x00000006 
- 00031274  0x000088aa force  0x00000006 , 0x00000039 
- 00031275  0x000088ab call  0x00007955 
- 00031276  0x000088ac call  0x0000790b 
- 00031277  0x000088ad call  0x00007912 
- 00031278  0x000088af arg  0x00000a2e , 0x00000006 
- 00031279  0x000088b0 arg  0x000005e6 , 0x00000005 
- 00031280  0x000088b1 call  0x00007a70 
- 00031281  0x000088b2 arg  0x00000a3e , 0x00000006 
- 00031282  0x000088b3 call  0x00007a70 
- 00031283  0x000088b5 setarg  0x00000000 
- 00031284  0x000088b6 istore  0x00000008 , 0x00000005 
- 00031285  0x000088b7 istore  0x00000004 , 0x00000005 
- 00031286  0x000088b8 fetch  0x00000004 , 0x0000468a 
- 00031287  0x000088b9 istore  0x00000004 , 0x00000005 
- 00031288  0x000088bb copy  0x00000005 , 0x00000002 
- 00031289  0x000088bc jam  0x00000080 , 0x00000726 
- 00031290  0x000088bd copy  0x00000002 , 0x00000005 
- 00031291  0x000088be arg  0x00000736 , 0x00000006 
- 00031292  0x000088bf call  0x00007a70 
- 00031293  0x000088c1 call  0x00007912 
- 00031294  0x000088c3 arg  0x000005e6 , 0x00000005 
- 00031295  0x000088c4 force  0x00000007 , 0x00000039 
- 00031296  0x000088c5 call  0x00007ec6 
- 00031297  0x000088c6 istore  0x00000004 , 0x00000005 
- 00031298  0x000088c7 setarg  0x000003f8 
- 00031299  0x000088c8 istore  0x00000004 , 0x00000005 
- 00031300  0x000088c9 call  0x00007912 
- 00031301  0x000088ca call  0x0000794e 
- 00031302  0x000088cc arg  0x00000a3e , 0x00000006 
- 00031303  0x000088cd arg  0x00000706 , 0x00000005 
- 00031304  0x000088ce call  0x00007ebd 
- 00031305  0x000088d0 setarg  0x005c5c5c 
- 00031306  0x000088d1 lshift8  0x0000003f , 0x00000002 
- 00031307  0x000088d2 or_into  0x0000005c , 0x00000002 
- 00031308  0x000088d3 arg  0x00000a1e , 0x00000006 
- 00031309  0x000088d4 force  0x00000006 , 0x00000039 
- 00031310  0x000088d5 call  0x00007955 
- 00031311  0x000088d6 call  0x0000790b 
- 00031312  0x000088d7 call  0x00007912 
- 00031313  0x000088d8 arg  0x00000726 , 0x00000006 
- 00031314  0x000088d9 arg  0x000005e6 , 0x00000005 
- 00031315  0x000088da force  0x00000008 , 0x00000039 
- 00031316  0x000088db call  0x00007a71 
- 00031317  0x000088dc setarg  0x00800000 
- 00031318  0x000088dd lshift8  0x0000003f , 0x0000003f 
- 00031319  0x000088de istore  0x00000004 , 0x00000005 
- 00031320  0x000088df call  0x00007ec5 
- 00031321  0x000088e0 setarg  0x00000300 
- 00031322  0x000088e1 istore  0x00000004 , 0x00000005 
- 00031323  0x000088e2 call  0x00007912 
- 00031324  0x000088e3 branch  0x0000794e 
- 00031325  0x000088eb jam  0x000000c0 , 0x000005e3 
- 00031326  0x000088ed fetch  0x00000001 , 0x000005e3 
- 00031327  0x000088ee rtn  0x00000034 
- 00031328  0x000088ef increase  0xffffffff , 0x0000003f 
- 00031329  0x000088f0 store  0x00000001 , 0x000005e3 
- 00031330  0x000088f1 arg  0x000006be , 0x00000006 
- 00031331  0x000088f2 call  0x000076ec 
- 00031332  0x000088f3 branch  0x00007a5e , 0x00000001 
- 00031333  0x000088f4 arg  0x000005e6 , 0x00000006 
- 00031334  0x000088f5 arg  0x00000676 , 0x00000005 
- 00031335  0x000088f6 branch  0x000076f2 
- 00031336  0x000088f9 call  0x00007803 
- 00031337  0x000088fa fetch  0x00000001 , 0x000005e3 
- 00031338  0x000088fb increase  0xffffffff , 0x0000003f 
- 00031339  0x000088fc store  0x00000001 , 0x000005e3 
- 00031340  0x000088fd arg  0x000006be , 0x00000006 
- 00031341  0x000088fe call  0x000076ec 
- 00031342  0x000088ff rtn  0x00000001 
- 00031343  0x00008900 branch  0x00007854 
- 00031344  0x00008903 force  0x00000004 , 0x00000039 
- 00031345  0x00008905 increase  0xfffffffc , 0x00000006 
- 00031346  0x00008907 ifetch  0x00000004 , 0x00000006 
- 00031347  0x00008908 istore  0x00000004 , 0x00000005 
- 00031348  0x00008909 increase  0xfffffff8 , 0x00000006 
- 00031349  0x0000890a loop  0x00007a72 
- 00031350  0x0000890b rtn 
- 00031351  0x00008911 bpatchx  0x000000ef , 0x0000403d 
- 00031352  0x00008912 fetch  0x00000001 , 0x000044be 
- 00031353  0x00008913 branch  0x00005af0 , 0x00000034 
- 00031354  0x00008914 call  0x00005aec 
- 00031355  0x00008915 call  0x00007583 
- 00031356  0x00008917 branch  0x00007a7d 
- 00031357  0x0000891d fetch  0x00000001 , 0x000044c3 
- 00031358  0x0000891e rtnne  0x00000000 
- 00031359  0x0000891f fetch  0x00000001 , 0x000044c0 
- 00031360  0x00008920 rtnne  0x00000000 
- 00031361  0x00008922 arg  0x000045b2 , 0x00000005 
- 00031362  0x00008923 force  0x0000000f , 0x00000007 
- 00031363  0x00008924 call  0x000076a2 
- 00031364  0x00008925 random  0x0000003f 
- 00031365  0x00008926 rshift  0x0000003f , 0x0000003f 
- 00031366  0x00008927 istore  0x00000002 , 0x00000005 
- 00031367  0x00008929 arg  0x00000766 , 0x00000005 
- 00031368  0x0000892a arg  0x000045b2 , 0x00000006 
- 00031369  0x0000892b call  0x00007ebd 
- 00031370  0x0000892d arg  0x00000646 , 0x00000005 
- 00031371  0x0000892e arg  0x0000095e , 0x00000006 
- 00031372  0x0000892f call  0x00007eb3 
- 00031373  0x00008931 arg  0x00000686 , 0x00000005 
- 00031374  0x00008932 call  0x00007ed0 
- 00031375  0x00008933 jam  0x00000001 , 0x00000686 
- 00031376  0x00008935 call  0x00007ac7 
- 00031377  0x00008936 jam  0x00000003 , 0x000044c0 
- 00031378  0x00008937 rtn 
- 00031379  0x0000893a arg  0x000045d2 , 0x00000005 
- 00031380  0x0000893b arg  0x000006a6 , 0x00000006 
- 00031381  0x0000893c call  0x00007eb3 
- 00031382  0x0000893d jam  0x00000003 , 0x000044c3 
- 00031383  0x0000893e jam  0x00000000 , 0x000044c0 
- 00031384  0x0000893f rtn 
- 00031385  0x00008944 fetch  0x00000001 , 0x000009b9 
- 00031386  0x00008945 rtnne  0x00000000 
- 00031387  0x00008946 fetch  0x00000001 , 0x000044c0 
- 00031388  0x00008947 rtnne  0x00000000 
- 00031389  0x00008949 arg  0x00000766 , 0x00000005 
- 00031390  0x0000894a arg  0x000045b2 , 0x00000006 
- 00031391  0x0000894b call  0x00007ebd 
- 00031392  0x0000894d arg  0x00000646 , 0x00000005 
- 00031393  0x0000894e arg  0x000009be , 0x00000006 
- 00031394  0x0000894f call  0x00007eb3 
- 00031395  0x00008951 arg  0x00000686 , 0x00000005 
- 00031396  0x00008952 call  0x00007ed0 
- 00031397  0x00008953 jam  0x00000001 , 0x00000686 
- 00031398  0x00008955 call  0x00007ac7 
- 00031399  0x00008956 jam  0x00000004 , 0x000044c0 
- 00031400  0x00008957 rtn 
- 00031401  0x0000895c arg  0x000009fe , 0x00000005 
- 00031402  0x0000895d arg  0x000006a6 , 0x00000006 
- 00031403  0x0000895e call  0x00007ebd 
- 00031404  0x0000895f jam  0x00000003 , 0x000009b9 
- 00031405  0x00008960 jam  0x00000000 , 0x000044c0 
- 00031406  0x00008961 rtn 
- 00031407  0x00008966 fetch  0x00000001 , 0x000044be 
- 00031408  0x00008967 rtn  0x00000034 
- 00031409  0x00008968 fetch  0x00000001 , 0x000044c0 
- 00031410  0x00008969 rtn  0x00000034 
- 00031411  0x0000896a increase  0x00000080 , 0x0000003f 
- 00031412  0x0000896b store  0x00000001 , 0x000044c0 
- 00031413  0x0000896c rtnbit1  0x00000007 
- 00031414  0x0000896d fetch  0x00000002 , 0x000005e3 
- 00031415  0x0000896e branch  0x00007ab9 , 0x00000034 
- 00031416  0x0000896f branch  0x00007abf 
- 00031417  0x00008972 bpatchx  0x000000f0 , 0x0000403e 
- 00031418  0x00008973 call  0x00007ad4 
- 00031419  0x00008974 fetch  0x00000001 , 0x000044c0 
- 00031420  0x00008975 beq  0x00000003 , 0x00007a93 
- 00031421  0x00008976 beq  0x00000004 , 0x00007aa9 
- 00031422  0x00008977 rtn 
- 00031423  0x0000897b call  0x00007ae6 
- 00031424  0x0000897c fetch  0x00000002 , 0x000005e3 
- 00031425  0x0000897d increase  0xffffffff , 0x0000003f 
- 00031426  0x0000897e store  0x00000002 , 0x000005e3 
- 00031427  0x0000897f arg  0x00000766 , 0x00000006 
- 00031428  0x00008980 call  0x000076ec 
- 00031429  0x00008981 rtn  0x00000001 
- 00031430  0x00008982 branch  0x00007b37 
- 00031431  0x00008985 bpatchx  0x000000f1 , 0x0000403e 
- 00031432  0x00008986 setarg  0x00000100 , 0x0000003f 
- 00031433  0x00008987 store  0x00000002 , 0x000005e3 
- 00031434  0x00008989 fetch  0x00000002 , 0x000005e3 
- 00031435  0x0000898a rtn  0x00000034 
- 00031436  0x0000898b increase  0xffffffff , 0x0000003f 
- 00031437  0x0000898c store  0x00000002 , 0x000005e3 
- 00031438  0x0000898d arg  0x00000766 , 0x00000006 
- 00031439  0x0000898e call  0x000076ec 
- 00031440  0x0000898f branch  0x00007aca , 0x00000001 
- 00031441  0x00008990 arg  0x00000646 , 0x00000006 
- 00031442  0x00008991 arg  0x00000706 , 0x00000005 
- 00031443  0x00008992 branch  0x00007eb2 
- 00031444  0x00008996 arg  0x00000746 , 0x00000011 
- 00031445  0x00008997 arg  0x00000846 , 0x00000005 
- 00031446  0x00008998 call  0x00007ba3 
- 00031447  0x00008999 arg  0x00000846 , 0x00000011 
- 00031448  0x0000899a arg  0x000007e6 , 0x00000005 
- 00031449  0x0000899b call  0x00007c79 
- 00031450  0x0000899c arg  0x00000706 , 0x00000011 
- 00031451  0x0000899d arg  0x000007e6 , 0x00000012 
- 00031452  0x0000899e arg  0x000006a6 , 0x00000005 
- 00031453  0x0000899f call  0x00007be1 
- 00031454  0x000089a0 arg  0x00000846 , 0x00000011 
- 00031455  0x000089a1 arg  0x000007e6 , 0x00000012 
- 00031456  0x000089a2 arg  0x00000826 , 0x00000005 
- 00031457  0x000089a3 call  0x00007be1 
- 00031458  0x000089a4 arg  0x00000726 , 0x00000011 
- 00031459  0x000089a5 arg  0x00000826 , 0x00000012 
- 00031460  0x000089a6 arg  0x000006c6 , 0x00000005 
- 00031461  0x000089a7 branch  0x00007be1 
- 00031462  0x000089aa arg  0x00000746 , 0x00000011 
- 00031463  0x000089ab arg  0x00000826 , 0x00000005 
- 00031464  0x000089ac call  0x00007c79 
- 00031465  0x000089ad arg  0x00000826 , 0x00000011 
- 00031466  0x000089ae arg  0x00000846 , 0x00000005 
- 00031467  0x000089af call  0x00007c79 
- 00031468  0x000089b1 arg  0x0000093e , 0x00000011 
- 00031469  0x000089b2 arg  0x00000846 , 0x00000012 
- 00031470  0x000089b3 arg  0x00000846 , 0x00000005 
- 00031471  0x000089b4 call  0x00007be1 
- 00031472  0x000089b5 arg  0x00000706 , 0x00000011 
- 00031473  0x000089b6 arg  0x00000826 , 0x00000005 
- 00031474  0x000089b7 call  0x00007c79 
- 00031475  0x000089b9 arg  0x00000826 , 0x00000006 
- 00031476  0x000089ba arg  0x000007e6 , 0x00000005 
- 00031477  0x000089bb call  0x00007ebd 
- 00031478  0x000089bc arg  0x000007e6 , 0x00000011 
- 00031479  0x000089bd call  0x00007c80 
- 00031480  0x000089be arg  0x00000826 , 0x00000011 
- 00031481  0x000089bf arg  0x000007e6 , 0x00000012 
- 00031482  0x000089c0 arg  0x00000826 , 0x00000005 
- 00031483  0x000089c1 call  0x00007c7d 
- 00031484  0x000089c3 arg  0x00000826 , 0x00000011 
- 00031485  0x000089c4 arg  0x00000846 , 0x00000012 
- 00031486  0x000089c5 arg  0x00000826 , 0x00000005 
- 00031487  0x000089c6 call  0x00007c7d 
- 00031488  0x000089c8 arg  0x00000706 , 0x00000006 
- 00031489  0x000089c9 arg  0x000007e6 , 0x00000005 
- 00031490  0x000089ca call  0x00007ebd 
- 00031491  0x000089cb arg  0x00000726 , 0x00000011 
- 00031492  0x000089cc arg  0x00000846 , 0x00000005 
- 00031493  0x000089cd call  0x00007c79 
- 00031494  0x000089ce arg  0x000007e6 , 0x00000011 
- 00031495  0x000089cf call  0x00007c80 
- 00031496  0x000089d0 arg  0x000007e6 , 0x00000011 
- 00031497  0x000089d1 call  0x00007c80 
- 00031498  0x000089d2 arg  0x000007e6 , 0x00000011 
- 00031499  0x000089d3 arg  0x00000846 , 0x00000012 
- 00031500  0x000089d4 arg  0x000007e6 , 0x00000005 
- 00031501  0x000089d5 call  0x00007be1 
- 00031502  0x000089d6 arg  0x00000846 , 0x00000011 
- 00031503  0x000089d7 arg  0x00000806 , 0x00000005 
- 00031504  0x000089d8 call  0x00007c79 
- 00031505  0x000089d9 arg  0x00000806 , 0x00000011 
- 00031506  0x000089da call  0x00007c80 
- 00031507  0x000089db arg  0x00000806 , 0x00000011 
- 00031508  0x000089dc call  0x00007c80 
- 00031509  0x000089dd arg  0x00000806 , 0x00000011 
- 00031510  0x000089de call  0x00007c80 
- 00031511  0x000089df arg  0x00000726 , 0x00000006 
- 00031512  0x000089e0 arg  0x00000846 , 0x00000005 
- 00031513  0x000089e1 call  0x00007ebd 
- 00031514  0x000089e2 arg  0x00000846 , 0x00000011 
- 00031515  0x000089e3 call  0x00007c80 
- 00031516  0x000089e4 arg  0x00000846 , 0x00000011 
- 00031517  0x000089e5 arg  0x00000746 , 0x00000012 
- 00031518  0x000089e6 arg  0x00000746 , 0x00000005 
- 00031519  0x000089e7 call  0x00007be1 
- 00031520  0x000089ea arg  0x00000826 , 0x00000011 
- 00031521  0x000089eb arg  0x00000846 , 0x00000005 
- 00031522  0x000089ec call  0x00007c79 
- 00031523  0x000089ee arg  0x00000846 , 0x00000011 
- 00031524  0x000089ef arg  0x000007e6 , 0x00000012 
- 00031525  0x000089f0 arg  0x00000846 , 0x00000005 
- 00031526  0x000089f1 call  0x00007c96 
- 00031527  0x000089f2 arg  0x00000846 , 0x00000011 
- 00031528  0x000089f3 arg  0x000007e6 , 0x00000012 
- 00031529  0x000089f4 arg  0x00000706 , 0x00000005 
- 00031530  0x000089f5 call  0x00007c96 
- 00031531  0x000089f6 arg  0x000007e6 , 0x00000011 
- 00031532  0x000089f7 arg  0x00000706 , 0x00000012 
- 00031533  0x000089f8 arg  0x00000846 , 0x00000005 
- 00031534  0x000089f9 call  0x00007c96 
- 00031535  0x000089fa arg  0x00000846 , 0x00000011 
- 00031536  0x000089fb arg  0x00000826 , 0x00000012 
- 00031537  0x000089fc arg  0x00000846 , 0x00000005 
- 00031538  0x000089fd call  0x00007be1 
- 00031539  0x000089fe arg  0x00000846 , 0x00000011 
- 00031540  0x000089ff arg  0x00000806 , 0x00000012 
- 00031541  0x00008a00 arg  0x00000726 , 0x00000005 
- 00031542  0x00008a01 branch  0x00007c96 
- 00031543  0x00008a05 arg  0x00000686 , 0x00000011 
- 00031544  0x00008a06 arg  0x00000866 , 0x00000005 
- 00031545  0x00008a07 call  0x00007c79 
- 00031546  0x00008a08 arg  0x00000706 , 0x00000011 
- 00031547  0x00008a09 arg  0x00000866 , 0x00000012 
- 00031548  0x00008a0a arg  0x00000806 , 0x00000005 
- 00031549  0x00008a0b call  0x00007be1 
- 00031550  0x00008a0e arg  0x00000686 , 0x00000011 
- 00031551  0x00008a0f arg  0x00000866 , 0x00000012 
- 00031552  0x00008a10 arg  0x00000866 , 0x00000005 
- 00031553  0x00008a11 call  0x00007be1 
- 00031554  0x00008a12 arg  0x00000726 , 0x00000011 
- 00031555  0x00008a13 arg  0x00000866 , 0x00000012 
- 00031556  0x00008a14 arg  0x000007e6 , 0x00000005 
- 00031557  0x00008a15 call  0x00007be1 
- 00031558  0x00008a18 arg  0x00000746 , 0x00000011 
- 00031559  0x00008a19 arg  0x00000866 , 0x00000005 
- 00031560  0x00008a1a call  0x00007c79 
- 00031561  0x00008a1b arg  0x00000646 , 0x00000011 
- 00031562  0x00008a1c arg  0x00000866 , 0x00000012 
- 00031563  0x00008a1d arg  0x00000826 , 0x00000005 
- 00031564  0x00008a1e call  0x00007be1 
- 00031565  0x00008a20 arg  0x00000746 , 0x00000011 
- 00031566  0x00008a21 arg  0x00000866 , 0x00000012 
- 00031567  0x00008a22 arg  0x00000866 , 0x00000005 
- 00031568  0x00008a23 call  0x00007be1 
- 00031569  0x00008a24 arg  0x00000666 , 0x00000011 
- 00031570  0x00008a25 arg  0x00000866 , 0x00000012 
- 00031571  0x00008a26 arg  0x00000846 , 0x00000005 
- 00031572  0x00008a27 call  0x00007be1 
- 00031573  0x00008a2c arg  0x00000806 , 0x00000012 
- 00031574  0x00008a2d arg  0x00000826 , 0x00000011 
- 00031575  0x00008a2e arg  0x00000866 , 0x00000005 
- 00031576  0x00008a2f call  0x00007c96 
- 00031577  0x00008a30 arg  0x00000806 , 0x00000011 
- 00031578  0x00008a31 arg  0x00000826 , 0x00000012 
- 00031579  0x00008a32 arg  0x00000806 , 0x00000005 
- 00031580  0x00008a33 call  0x00007c7d 
- 00031581  0x00008a36 arg  0x000007e6 , 0x00000012 
- 00031582  0x00008a37 arg  0x00000846 , 0x00000011 
- 00031583  0x00008a38 arg  0x00000826 , 0x00000005 
- 00031584  0x00008a39 call  0x00007c96 
- 00031585  0x00008a3a arg  0x000007e6 , 0x00000011 
- 00031586  0x00008a3b arg  0x00000846 , 0x00000012 
- 00031587  0x00008a3c arg  0x000007e6 , 0x00000005 
- 00031588  0x00008a3d call  0x00007c7d 
- 00031589  0x00008a3e arg  0x000007e6 , 0x00000011 
- 00031590  0x00008a3f arg  0x00000866 , 0x00000012 
- 00031591  0x00008a40 arg  0x000007e6 , 0x00000005 
- 00031592  0x00008a41 call  0x00007be1 
- 00031593  0x00008a42 arg  0x00000746 , 0x00000011 
- 00031594  0x00008a43 arg  0x00000686 , 0x00000012 
- 00031595  0x00008a44 arg  0x00000846 , 0x00000005 
- 00031596  0x00008a45 call  0x00007be1 
- 00031597  0x00008a46 arg  0x00000846 , 0x00000011 
- 00031598  0x00008a47 arg  0x00000866 , 0x00000012 
- 00031599  0x00008a48 arg  0x00000746 , 0x00000005 
- 00031600  0x00008a49 call  0x00007be1 
- 00031601  0x00008a4b arg  0x00000866 , 0x00000011 
- 00031602  0x00008a4c arg  0x00000866 , 0x00000005 
- 00031603  0x00008a4d call  0x00007c79 
- 00031604  0x00008a4e arg  0x00000866 , 0x00000011 
- 00031605  0x00008a4f arg  0x00000806 , 0x00000012 
- 00031606  0x00008a50 arg  0x00000846 , 0x00000005 
- 00031607  0x00008a51 call  0x00007be1 
- 00031608  0x00008a52 arg  0x00000866 , 0x00000011 
- 00031609  0x00008a53 arg  0x000007e6 , 0x00000012 
- 00031610  0x00008a54 arg  0x000007e6 , 0x00000005 
- 00031611  0x00008a55 call  0x00007be1 
- 00031612  0x00008a56 arg  0x00000826 , 0x00000011 
- 00031613  0x00008a57 arg  0x00000706 , 0x00000005 
- 00031614  0x00008a58 call  0x00007c79 
- 00031615  0x00008a59 arg  0x00000706 , 0x00000011 
- 00031616  0x00008a5a arg  0x00000846 , 0x00000012 
- 00031617  0x00008a5b arg  0x00000706 , 0x00000005 
- 00031618  0x00008a5c call  0x00007c96 
- 00031619  0x00008a5d arg  0x00000706 , 0x00000006 
- 00031620  0x00008a5e arg  0x00000866 , 0x00000005 
- 00031621  0x00008a5f call  0x00007ebd 
- 00031622  0x00008a60 arg  0x00000866 , 0x00000011 
- 00031623  0x00008a61 call  0x00007c80 
- 00031624  0x00008a62 arg  0x00000846 , 0x00000011 
- 00031625  0x00008a63 arg  0x00000866 , 0x00000012 
- 00031626  0x00008a64 arg  0x00000846 , 0x00000005 
- 00031627  0x00008a65 call  0x00007c96 
- 00031628  0x00008a66 arg  0x00000846 , 0x00000011 
- 00031629  0x00008a67 arg  0x00000826 , 0x00000012 
- 00031630  0x00008a68 arg  0x00000826 , 0x00000005 
- 00031631  0x00008a69 call  0x00007be1 
- 00031632  0x00008a6a arg  0x00000826 , 0x00000011 
- 00031633  0x00008a6b arg  0x000007e6 , 0x00000012 
- 00031634  0x00008a6c arg  0x00000726 , 0x00000005 
- 00031635  0x00008a6d call  0x00007c96 
- 00031636  0x00008a6e arg  0x00000726 , 0x00000011 
- 00031637  0x00008a6f arg  0x0000091e , 0x00000012 
- 00031638  0x00008a70 arg  0x00000726 , 0x00000005 
- 00031639  0x00008a71 force  0x00000000 , 0x00000013 
- 00031640  0x00008a72 fetch  0x00000001 , 0x00000726 
- 00031641  0x00008a73 isolate1  0x00000000 , 0x0000003f 
- 00031642  0x00008a74 call  0x00007c7b , 0x00000001 
- 00031643  0x00008a75 copy  0x00000013 , 0x00000030 
- 00031644  0x00008a76 arg  0x00000726 , 0x00000011 
- 00031645  0x00008a77 call  0x00007cab 
- 00031646  0x00008a78 fetch  0x00000001 , 0x00000745 
- 00031647  0x00008a79 isolate1  0x00000000 , 0x00000030 
- 00031648  0x00008a7a setflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00031649  0x00008a7b store  0x00000001 , 0x00000745 
- 00031650  0x00008a7c rtn 
- 00031651  0x00008a7f copy  0x00000005 , 0x0000000b 
- 00031652  0x00008a80 arg  0x00000806 , 0x00000005 
- 00031653  0x00008a81 call  0x00007ed0 
- 00031654  0x00008a82 force  0x00000000 , 0x0000003f 
- 00031655  0x00008a84 store  0x00000004 , 0x00000826 
- 00031656  0x00008a85 jam  0x00000001 , 0x00000806 
- 00031657  0x00008a86 arg  0x00000786 , 0x00000005 
- 00031658  0x00008a87 call  0x00007ed2 
- 00031659  0x00008a88 arg  0x0000091e , 0x00000006 
- 00031660  0x00008a89 arg  0x000007c6 , 0x00000005 
- 00031661  0x00008a8a call  0x00007ebd 
- 00031662  0x00008a8b copy  0x00000011 , 0x00000006 
- 00031663  0x00008a8c arg  0x000007e6 , 0x00000005 
- 00031664  0x00008a8d call  0x00007ebd 
- 00031665  0x00008a94 arg  0x000007e6 , 0x00000006 
- 00031666  0x00008a95 call  0x00007cb5 
- 00031667  0x00008a96 branch  0x00007bda , 0x00000034 
- 00031668  0x00008a9b arg  0x000007e6 , 0x00000011 
- 00031669  0x00008a9c arg  0x00000806 , 0x00000012 
- 00031670  0x00008a9d call  0x00007cb8 
- 00031671  0x00008a9e arg  0x000007c6 , 0x00000011 
- 00031672  0x00008a9f arg  0x00000786 , 0x00000012 
- 00031673  0x00008aa0 call  0x00007cb8 
- 00031674  0x00008aa2 arg  0x000007e6 , 0x00000011 
- 00031675  0x00008aa3 arg  0x000007c6 , 0x00000012 
- 00031676  0x00008aa4 call  0x00007cb1 
- 00031677  0x00008aa5 branch  0x00007bcc , 0x00000002 
- 00031678  0x00008aa6 arg  0x000007c6 , 0x00000011 
- 00031679  0x00008aa7 arg  0x000007e6 , 0x00000012 
- 00031680  0x00008aa8 copy  0x00000011 , 0x00000005 
- 00031681  0x00008aa9 call  0x00007ca9 
- 00031682  0x00008aaa arg  0x00000806 , 0x00000011 
- 00031683  0x00008aab arg  0x00000786 , 0x00000012 
- 00031684  0x00008aac copy  0x00000012 , 0x00000005 
- 00031685  0x00008aad call  0x00007c7b 
- 00031686  0x00008aae ifetch  0x00000001 , 0x00000011 
- 00031687  0x00008aaf iadd  0x00000013 , 0x00000013 
- 00031688  0x00008ab0 ifetch  0x00000001 , 0x00000012 
- 00031689  0x00008ab1 iadd  0x00000013 , 0x0000003f 
- 00031690  0x00008ab2 istore  0x00000001 , 0x00000012 
- 00031691  0x00008ab3 branch  0x00007bb1 
- 00031692  0x00008ab5 arg  0x000007e6 , 0x00000011 
- 00031693  0x00008ab6 arg  0x000007c6 , 0x00000012 
- 00031694  0x00008ab7 copy  0x00000011 , 0x00000005 
- 00031695  0x00008ab8 call  0x00007ca9 
- 00031696  0x00008ab9 arg  0x00000786 , 0x00000011 
- 00031697  0x00008aba arg  0x00000806 , 0x00000012 
- 00031698  0x00008abb copy  0x00000012 , 0x00000005 
- 00031699  0x00008abc call  0x00007c7b 
- 00031700  0x00008abd ifetch  0x00000001 , 0x00000011 
- 00031701  0x00008abe iadd  0x00000013 , 0x00000013 
- 00031702  0x00008abf ifetch  0x00000001 , 0x00000012 
- 00031703  0x00008ac0 iadd  0x00000013 , 0x0000003f 
- 00031704  0x00008ac1 istore  0x00000001 , 0x00000012 
- 00031705  0x00008ac2 branch  0x00007bb1 
- 00031706  0x00008ac5 arg  0x00000786 , 0x00000011 
- 00031707  0x00008ac6 copy  0x0000000b , 0x00000005 
- 00031708  0x00008ac7 call  0x00007c0a 
- 00031709  0x00008ac9 arg  0x0000091e , 0x00000011 
- 00031710  0x00008aca copy  0x0000000b , 0x00000012 
- 00031711  0x00008acb copy  0x0000000b , 0x00000005 
- 00031712  0x00008acc branch  0x00007c96 
- 00031713  0x00008ad0 copy  0x00000005 , 0x0000000b 
- 00031714  0x00008ad2 force  0x00000000 , 0x00000038 
- 00031715  0x00008ad4 arg  0x00000786 , 0x00000005 
- 00031716  0x00008ad5 call  0x00007ed2 
- 00031717  0x00008ad6 arg  0x00000ad2 , 0x00000005 
- 00031718  0x00008ad7 call  0x00007ed2 
- 00031719  0x00008adb copy  0x00000011 , 0x00000006 
- 00031720  0x00008add jam  0x00000000 , 0x00000ad2 
- 00031721  0x00008ade setarg  0x00000000 
- 00031722  0x00008adf call  0x00007c73 
- 00031723  0x00008ae0 copy  0x00000012 , 0x00000006 
- 00031724  0x00008ae1 call  0x00007c77 
- 00031725  0x00008ae4 force  0x00000000 , 0x00000007 
- 00031726  0x00008ae5 arg  0x00000786 , 0x00000005 
- 00031727  0x00008ae9 arg  0x00000ad2 , 0x00000002 
- 00031728  0x00008aea copy  0x00000007 , 0x00000012 
- 00031729  0x00008aeb lshift2  0x00000012 , 0x0000003f 
- 00031730  0x00008aed iadd  0x00000002 , 0x00000012 
- 00031731  0x00008aee force  0x00000000 , 0x00000002 
- 00031732  0x00008aef force  0x00000000 , 0x00000013 
- 00031733  0x00008af5 ifetch  0x00000004 , 0x00000005 
- 00031734  0x00008af6 iforce  0x00000011 
- 00031735  0x00008af9 ifetch  0x00000004 , 0x00000012 
- 00031736  0x00008afa copy  0x00000013 , 0x00000038 
- 00031737  0x00008afb imul32  0x0000002f , 0x0000003f 
- 00031738  0x00008afc iadd  0x00000011 , 0x0000003f 
- 00031739  0x00008afd iadd  0x00000002 , 0x0000003f 
- 00031740  0x00008afe istore  0x00000004 , 0x00000005 
- 00031741  0x00008aff rshift32  0x0000003f , 0x00000002 
- 00031742  0x00008b00 increase  0x00000001 , 0x00000013 
- 00031743  0x00008b01 compare  0x00000008 , 0x00000013 , 0x000000ff 
- 00031744  0x00008b02 nbranch  0x00007bf5 , 0x00000001 
- 00031745  0x00008b04 deposit  0x00000002 
- 00031746  0x00008b05 istore  0x00000004 , 0x00000005 
- 00031747  0x00008b06 increase  0xffffffe0 , 0x00000005 
- 00031748  0x00008b09 increase  0x00000001 , 0x00000007 
- 00031749  0x00008b0a compare  0x00000008 , 0x00000007 , 0x000000ff 
- 00031750  0x00008b0b nbranch  0x00007bef , 0x00000001 
- 00031751  0x00008b0c arg  0x00000786 , 0x00000011 
- 00031752  0x00008b0d copy  0x0000000b , 0x00000005 
- 00031753  0x00008b0e branch  0x00007c0a 
- 00031754  0x00008b11 bpatchx  0x000000f2 , 0x0000403e 
- 00031755  0x00008b12 copy  0x00000005 , 0x0000000b 
- 00031756  0x00008b13 copy  0x00000011 , 0x00000030 
- 00031757  0x00008b14 arg  0x000007c6 , 0x00000012 
- 00031758  0x00008b15 copy  0x00000012 , 0x00000005 
- 00031759  0x00008b16 call  0x00007ecd 
- 00031760  0x00008b17 istore  0x00000008 , 0x00000005 
- 00031761  0x00008b18 add  0x00000011 , 0x0000002c , 0x00000006 
- 00031762  0x00008b19 call  0x00007eb9 
- 00031763  0x00008b1a call  0x00007eb5 
- 00031764  0x00008b1b copy  0x00000012 , 0x00000011 
- 00031765  0x00008b1c call  0x00007c80 
- 00031766  0x00008b1d arg  0x000007c6 , 0x00000012 
- 00031767  0x00008b1e copy  0x00000030 , 0x00000011 
- 00031768  0x00008b1f copy  0x0000000b , 0x00000005 
- 00031769  0x00008b20 call  0x00007c7d 
- 00031770  0x00008b22 arg  0x000007c6 , 0x00000012 
- 00031771  0x00008b23 copy  0x00000012 , 0x00000005 
- 00031772  0x00008b24 call  0x00007ecd 
- 00031773  0x00008b25 istore  0x00000008 , 0x00000005 
- 00031774  0x00008b26 add  0x00000030 , 0x00000030 , 0x00000006 
- 00031775  0x00008b27 call  0x00007ebf 
- 00031776  0x00008b28 call  0x00007ecd 
- 00031777  0x00008b29 copy  0x00000012 , 0x00000011 
- 00031778  0x00008b2a call  0x00007c80 
- 00031779  0x00008b2e arg  0x000007c6 , 0x00000012 
- 00031780  0x00008b2f copy  0x0000000b , 0x00000011 
- 00031781  0x00008b30 copy  0x00000011 , 0x00000005 
- 00031782  0x00008b31 call  0x00007c7d 
- 00031783  0x00008b35 arg  0x000007c6 , 0x00000012 
- 00031784  0x00008b36 copy  0x00000012 , 0x00000005 
- 00031785  0x00008b37 add  0x00000030 , 0x00000020 , 0x00000006 
- 00031786  0x00008b38 call  0x00007eb5 
- 00031787  0x00008b39 call  0x00007ecd 
- 00031788  0x00008b3a istore  0x00000008 , 0x00000005 
- 00031789  0x00008b3b add  0x00000030 , 0x00000038 , 0x00000006 
- 00031790  0x00008b3c call  0x00007eb9 
- 00031791  0x00008b3d copy  0x0000000b , 0x00000011 
- 00031792  0x00008b3e copy  0x00000011 , 0x00000005 
- 00031793  0x00008b3f call  0x00007c7d 
- 00031794  0x00008b43 arg  0x000007c6 , 0x00000012 
- 00031795  0x00008b44 copy  0x00000012 , 0x00000005 
- 00031796  0x00008b45 add  0x00000030 , 0x00000024 , 0x00000006 
- 00031797  0x00008b46 call  0x00007eb5 
- 00031798  0x00008b47 add  0x00000030 , 0x00000034 , 0x00000006 
- 00031799  0x00008b48 call  0x00007eb5 
- 00031800  0x00008b49 add  0x00000030 , 0x00000034 , 0x00000006 
- 00031801  0x00008b4a call  0x00007eb6 
- 00031802  0x00008b4b add  0x00000030 , 0x00000020 , 0x00000006 
- 00031803  0x00008b4c call  0x00007eb6 
- 00031804  0x00008b4d copy  0x0000000b , 0x00000011 
- 00031805  0x00008b4e copy  0x00000011 , 0x00000005 
- 00031806  0x00008b4f call  0x00007c7d 
- 00031807  0x00008b52 arg  0x000007c6 , 0x00000012 
- 00031808  0x00008b53 copy  0x00000012 , 0x00000005 
- 00031809  0x00008b54 add  0x00000030 , 0x0000002c , 0x00000006 
- 00031810  0x00008b55 call  0x00007eb5 
- 00031811  0x00008b56 call  0x00007ecd 
- 00031812  0x00008b57 istore  0x00000008 , 0x00000005 
- 00031813  0x00008b58 add  0x00000030 , 0x00000020 , 0x00000006 
- 00031814  0x00008b59 call  0x00007eb6 
- 00031815  0x00008b5a add  0x00000030 , 0x00000028 , 0x00000006 
- 00031816  0x00008b5b call  0x00007eb6 
- 00031817  0x00008b5c copy  0x0000000b , 0x00000011 
- 00031818  0x00008b5d copy  0x00000011 , 0x00000005 
- 00031819  0x00008b5e call  0x00007c96 
- 00031820  0x00008b61 arg  0x000007c6 , 0x00000012 
- 00031821  0x00008b62 copy  0x00000012 , 0x00000005 
- 00031822  0x00008b63 add  0x00000030 , 0x00000030 , 0x00000006 
- 00031823  0x00008b64 call  0x00007eb9 
- 00031824  0x00008b65 call  0x00007eb9 
- 00031825  0x00008b66 force  0x00000000 , 0x0000003f 
- 00031826  0x00008b67 istore  0x00000008 , 0x00000005 
- 00031827  0x00008b68 add  0x00000030 , 0x00000024 , 0x00000006 
- 00031828  0x00008b69 call  0x00007eb6 
- 00031829  0x00008b6a add  0x00000030 , 0x0000002c , 0x00000006 
- 00031830  0x00008b6b call  0x00007eb6 
- 00031831  0x00008b6c copy  0x0000000b , 0x00000011 
- 00031832  0x00008b6d copy  0x00000011 , 0x00000005 
- 00031833  0x00008b6e call  0x00007c96 
- 00031834  0x00008b71 arg  0x000007c6 , 0x00000012 
- 00031835  0x00008b72 copy  0x00000012 , 0x00000005 
- 00031836  0x00008b73 add  0x00000030 , 0x00000034 , 0x00000006 
- 00031837  0x00008b74 call  0x00007eb5 
- 00031838  0x00008b75 add  0x00000030 , 0x00000020 , 0x00000006 
- 00031839  0x00008b76 call  0x00007eb5 
- 00031840  0x00008b77 call  0x00007ecd 
- 00031841  0x00008b78 add  0x00000030 , 0x00000030 , 0x00000006 
- 00031842  0x00008b79 call  0x00007eb6 
- 00031843  0x00008b7a copy  0x0000000b , 0x00000011 
- 00031844  0x00008b7b copy  0x00000011 , 0x00000005 
- 00031845  0x00008b7c call  0x00007c96 
- 00031846  0x00008b7f arg  0x000007c6 , 0x00000012 
- 00031847  0x00008b80 copy  0x00000012 , 0x00000005 
- 00031848  0x00008b81 add  0x00000030 , 0x00000038 , 0x00000006 
- 00031849  0x00008b82 call  0x00007eb9 
- 00031850  0x00008b83 call  0x00007ecd 
- 00031851  0x00008b84 add  0x00000030 , 0x00000024 , 0x00000006 
- 00031852  0x00008b85 call  0x00007eb5 
- 00031853  0x00008b86 call  0x00007ecd 
- 00031854  0x00008b87 add  0x00000030 , 0x00000034 , 0x00000006 
- 00031855  0x00008b88 call  0x00007eb6 
- 00031856  0x00008b89 copy  0x0000000b , 0x00000011 
- 00031857  0x00008b8a copy  0x00000011 , 0x00000005 
- 00031858  0x00008b8b branch  0x00007c96 
- 00031859  0x00008b8f force  0x00000020 , 0x00000039 
- 00031860  0x00008b90 arg  0x00000ad2 , 0x00000005 
- 00031861  0x00008b91 iadd  0x00000005 , 0x00000005 
- 00031862  0x00008b92 branch  0x00007f01 
- 00031863  0x00008b95 force  0x00000008 , 0x00000039 
- 00031864  0x00008b96 branch  0x00007781 
- 00031865  0x00008b99 copy  0x00000011 , 0x00000012 
- 00031866  0x00008b9a branch  0x00007be1 
- 00031867  0x00008b9d force  0x00000008 , 0x00000039 
- 00031868  0x00008b9e branch  0x00007712 
- 00031869  0x00008ba1 call  0x00007c7b 
- 00031870  0x00008ba2 copy  0x00000005 , 0x00000011 
- 00031871  0x00008ba3 branch  0x00007c81 
- 00031872  0x00008ba6 call  0x00007cae 
- 00031873  0x00008ba8 isolate1  0x00000000 , 0x00000013 
- 00031874  0x00008ba9 branch  0x00007c8a , 0x00000001 
- 00031875  0x00008baa arg  0x0000091e , 0x00000012 
- 00031876  0x00008bab copy  0x00000011 , 0x00000013 
- 00031877  0x00008bac increase  0xffffffe0 , 0x00000011 
- 00031878  0x00008bad call  0x00007cb1 
- 00031879  0x00008bae nrtn  0x00000002 
- 00031880  0x00008baf copy  0x00000013 , 0x00000011 
- 00031881  0x00008bb0 branch  0x00007c92 
- 00031882  0x00008bb3 call  0x00007c92 
- 00031883  0x00008bb5 copy  0x00000011 , 0x00000013 
- 00031884  0x00008bb6 increase  0xffffffe0 , 0x00000011 
- 00031885  0x00008bb7 arg  0x0000091e , 0x00000012 
- 00031886  0x00008bb8 call  0x00007cb1 
- 00031887  0x00008bb9 nrtn  0x00000002 
- 00031888  0x00008bba copy  0x00000013 , 0x00000011 
- 00031889  0x00008bbb branch  0x00007c92 
- 00031890  0x00008bbf increase  0xffffffe0 , 0x00000011 
- 00031891  0x00008bc0 arg  0x0000091e , 0x00000012 
- 00031892  0x00008bc1 copy  0x00000011 , 0x00000005 
- 00031893  0x00008bc2 branch  0x00007ca9 
- 00031894  0x00008bc8 call  0x00007ca9 
- 00031895  0x00008bca branch  0x00007ca0 , 0x00000001 
- 00031896  0x00008bcd add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031897  0x00008bce arg  0x0000091e , 0x00000012 
- 00031898  0x00008bcf call  0x00007cb1 
- 00031899  0x00008bd0 nrtn  0x00000002 
- 00031900  0x00008bd1 arg  0x0000091e , 0x00000012 
- 00031901  0x00008bd2 add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031902  0x00008bd4 copy  0x00000011 , 0x00000005 
- 00031903  0x00008bd5 branch  0x00007ca9 
- 00031904  0x00008bd7 add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031905  0x00008bd8 arg  0x0000091e , 0x00000012 
- 00031906  0x00008bd9 copy  0x00000011 , 0x00000005 
- 00031907  0x00008bda call  0x00007c7b 
- 00031908  0x00008bdc rtn  0x00000001 
- 00031909  0x00008bdd add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031910  0x00008bde arg  0x0000091e , 0x00000012 
- 00031911  0x00008bdf copy  0x00000011 , 0x00000005 
- 00031912  0x00008be0 branch  0x00007c7b 
- 00031913  0x00008be5 force  0x00000008 , 0x00000039 
- 00031914  0x00008be6 branch  0x00007720 
- 00031915  0x00008be9 force  0x00000008 , 0x00000039 
- 00031916  0x00008bea increase  0x0000001c , 0x00000011 
- 00031917  0x00008beb branch  0x0000772f 
- 00031918  0x00008bee force  0x00000008 , 0x00000039 
- 00031919  0x00008bef force  0x00000000 , 0x00000013 
- 00031920  0x00008bf0 branch  0x0000773d 
- 00031921  0x00008bf3 force  0x00000008 , 0x00000039 
- 00031922  0x00008bf4 increase  0x0000001c , 0x00000011 
- 00031923  0x00008bf5 increase  0x0000001c , 0x00000012 
- 00031924  0x00008bf6 branch  0x00007707 
- 00031925  0x00008bfa ifetch  0x00000008 , 0x00000006 
- 00031926  0x00008bfb nrtn  0x00000034 
- 00031927  0x00008bfc branch  0x000076f5 
- 00031928  0x00008c02 copy  0x00000011 , 0x00000030 
- 00031929  0x00008c04 copy  0x00000030 , 0x00000011 
- 00031930  0x00008c05 ifetch  0x00000001 , 0x00000011 
- 00031931  0x00008c06 isolate1  0x00000000 , 0x0000003f 
- 00031932  0x00008c07 rtn  0x00000001 
- 00031933  0x00008c08 call  0x00007cab 
- 00031934  0x00008c09 ifetch  0x00000001 , 0x00000012 
- 00031935  0x00008c0a isolate0  0x00000000 , 0x0000003f 
- 00031936  0x00008c0b branch  0x00007cc8 , 0x00000001 
- 00031937  0x00008c0c arg  0x0000091e , 0x00000011 
- 00031938  0x00008c0d copy  0x00000012 , 0x00000005 
- 00031939  0x00008c0e call  0x00007c7b 
- 00031940  0x00008c0f ifetch  0x00000001 , 0x00000012 
- 00031941  0x00008c10 iadd  0x00000013 , 0x0000003f 
- 00031942  0x00008c11 istore  0x00000001 , 0x00000012 
- 00031943  0x00008c12 increase  0xffffffe0 , 0x00000012 
- 00031944  0x00008c14 add  0x00000012 , 0x00000020 , 0x00000011 
- 00031945  0x00008c15 force  0x00000009 , 0x00000039 
- 00031946  0x00008c16 call  0x0000772f 
- 00031947  0x00008c17 branch  0x00007cb9 
- 00031948  0x00008c1c call  0x00002c65 
- 00031949  0x00008c1d rtn  0x0000002b 
- 00031950  0x00008c1e call  0x00007cd3 
- 00031951  0x00008c1f call  0x00007d75 
- 00031952  0x00008c20 branch  0x00007d08 
- 00031953  0x00008c23 call  0x00007d29 
- 00031954  0x00008c25 branch  0x00007d64 
- 00031955  0x00008c28 fetch  0x00000001 , 0x00004686 
- 00031956  0x00008c29 rtneq  0x000000ff 
- 00031957  0x00008c2a iforce  0x00000002 
- 00031958  0x00008c2b call  0x0000680e 
- 00031959  0x00008c2c fetcht  0x00000001 , 0x00004686 
- 00031960  0x00008c2d call  0x00006825 
- 00031961  0x00008c2e nop  0x00000064 
- 00031962  0x00008c2f fetcht  0x00000001 , 0x00004686 
- 00031963  0x00008c30 call  0x000067fb 
- 00031964  0x00008c31 branch  0x00007cdd 
- 00031965  0x00008c36 bpatchx  0x000000f3 , 0x0000403e 
- 00031966  0x00008c37 fetch  0x00000001 , 0x00004686 
- 00031967  0x00008c38 rtneq  0x000000ff 
- 00031968  0x00008c39 copy  0x0000003f , 0x00000002 
- 00031969  0x00008c3a call  0x0000681d 
- 00031970  0x00008c3b nbranch  0x00007cef , 0x00000001 
- 00031971  0x00008c3e call  0x00007cf9 
- 00031972  0x00008c3f fetch  0x00000002 , 0x00004682 
- 00031973  0x00008c40 set1  0x0000000c 
- 00031974  0x00008c41 store  0x00000002 , 0x00004682 
- 00031975  0x00008c42 fetch  0x00000001 , 0x00004679 
- 00031976  0x00008c43 rtneq  0x00000000 
- 00031977  0x00008c44 jam  0x00000000 , 0x00004679 
- 00031978  0x00008c46 fetch  0x00000001 , 0x00004685 
- 00031979  0x00008c47 store  0x00000001 , 0x00004678 
- 00031980  0x00008c48 call  0x00007d00 
- 00031981  0x00008c49 jam  0x0000002c , 0x00000a99 
- 00031982  0x00008c4a branch  0x00007d86 
- 00031983  0x00008c4c fetch  0x00000002 , 0x00004682 
- 00031984  0x00008c4d set0  0x0000000c 
- 00031985  0x00008c4e store  0x00000002 , 0x00004682 
- 00031986  0x00008c4f fetch  0x00000001 , 0x00004679 
- 00031987  0x00008c50 rtneq  0x00000001 
- 00031988  0x00008c51 jam  0x00000001 , 0x00004679 
- 00031989  0x00008c53 jam  0x00000000 , 0x00004678 
- 00031990  0x00008c54 call  0x00007d02 
- 00031991  0x00008c55 jam  0x0000002d , 0x00000a99 
- 00031992  0x00008c56 branch  0x00007d86 
- 00031993  0x00008c59 fetch  0x00000001 , 0x00004678 
- 00031994  0x00008c5a rtn  0x00000034 
- 00031995  0x00008c5b increase  0xffffffff , 0x0000003f 
- 00031996  0x00008c5c store  0x00000001 , 0x00004678 
- 00031997  0x00008c5d nrtn  0x00000034 
- 00031998  0x00008c5f jam  0x00000010 , 0x00000a99 
- 00031999  0x00008c60 branch  0x00007d86 
- 00032000  0x00008c63 arg  0x00000007 , 0x00000007 
- 00032001  0x00008c64 branch  0x00002c32 
- 00032002  0x00008c67 arg  0x00000007 , 0x00000007 
- 00032003  0x00008c68 branch  0x00002c36 
- 00032004  0x00008c7f fetch  0x00000002 , 0x0000421b 
- 00032005  0x00008c80 mul32  0x00000011 , 0x0000000b , 0x00000012 
- 00032006  0x00008c81 iadd  0x00000012 , 0x00000012 
- 00032007  0x00008c82 rtn 
- 00032008  0x00008c86 fetch  0x00000001 , 0x0000421a 
- 00032009  0x00008c87 rtn  0x00000034 
- 00032010  0x00008c88 copy  0x0000003f , 0x00000039 
- 00032011  0x00008c89 fetch  0x00000002 , 0x0000421b 
- 00032012  0x00008c8a copy  0x0000003f , 0x00000012 
- 00032013  0x00008c8c add  0x00000012 , 0x00000002 , 0x00000013 
- 00032014  0x00008c8d ifetcht  0x00000001 , 0x00000013 
- 00032015  0x00008c8e call  0x0000680e 
- 00032016  0x00008c8f call  0x00007d32 
- 00032017  0x00008c90 increase  0x0000000b , 0x00000012 
- 00032018  0x00008c91 loop  0x00007d0d 
- 00032019  0x00008c92 rtn 
- 00032020  0x00008c97 call  0x00007d04 
- 00032021  0x00008c98 setarg  0x00000002 
- 00032022  0x00008c99 istore  0x00000001 , 0x00000012 
- 00032023  0x00008c9a call  0x00007d5e 
- 00032024  0x00008c9b branch  0x00007d35 
- 00032025  0x00008ca1 call  0x00007d04 
- 00032026  0x00008ca2 setarg  0x00000003 
- 00032027  0x00008ca3 istore  0x00000001 , 0x00000012 
- 00032028  0x00008ca4 call  0x00007d5e 
- 00032029  0x00008ca5 branch  0x00007d32 
- 00032030  0x00008caa call  0x00007d04 
- 00032031  0x00008cab setarg  0x00000001 
- 00032032  0x00008cac istore  0x00000001 , 0x00000012 
- 00032033  0x00008cad setarg  0x000000ff 
- 00032034  0x00008cae istore  0x00000001 , 0x00000005 
- 00032035  0x00008caf branch  0x00007d32 
- 00032036  0x00008cb5 call  0x00007d04 
- 00032037  0x00008cb6 arg  0x0000000b , 0x00000039 
- 00032038  0x00008cb7 copy  0x00000013 , 0x00000006 
- 00032039  0x00008cb8 copy  0x00000012 , 0x00000005 
- 00032040  0x00008cb9 branch  0x00007ef4 
- 00032041  0x00008cbe fetch  0x00000001 , 0x0000421a 
- 00032042  0x00008cbf rtn  0x00000034 
- 00032043  0x00008cc0 arg  0x00000000 , 0x00000011 
- 00032044  0x00008cc2 call  0x00007d38 
- 00032045  0x00008cc3 increase  0x00000001 , 0x00000011 
- 00032046  0x00008cc4 fetch  0x00000001 , 0x0000421a 
- 00032047  0x00008cc5 isub  0x00000011 , 0x0000003e 
- 00032048  0x00008cc6 rtn  0x00000005 
- 00032049  0x00008cc7 branch  0x00007d2c 
- 00032050  0x00008ccb add  0x00000012 , 0x00000002 , 0x00000013 
- 00032051  0x00008ccc ifetcht  0x00000001 , 0x00000013 
- 00032052  0x00008ccd branch  0x00006825 
- 00032053  0x00008cd1 add  0x00000012 , 0x00000002 , 0x00000013 
- 00032054  0x00008cd2 ifetcht  0x00000001 , 0x00000013 
- 00032055  0x00008cd3 branch  0x00006829 
- 00032056  0x00008cd8 add  0x00000011 , 0x0000000b , 0x00000007 
- 00032057  0x00008cd9 call  0x00007f16 
- 00032058  0x00008cda nrtn  0x00000034 
- 00032059  0x00008cdc call  0x00007d04 
- 00032060  0x00008cde ifetch  0x00000001 , 0x00000012 
- 00032061  0x00008ce0 beq  0x00000002 , 0x00007d35 
- 00032062  0x00008ce1 beq  0x00000003 , 0x00007d32 
- 00032063  0x00008ce2 beq  0x00000000 , 0x00007d32 
- 00032064  0x00008ce3 beq  0x00000005 , 0x00007d4c 
- 00032065  0x00008ce5 call  0x00007d35 
- 00032066  0x00008ce6 add  0x00000012 , 0x00000007 , 0x00000013 
- 00032067  0x00008ce7 call  0x00007e7c 
- 00032068  0x00008ce8 ifetch  0x00000002 , 0x00000013 
- 00032069  0x00008ce9 call  0x00007f9c 
- 00032070  0x00008cea call  0x00007e8c 
- 00032071  0x00008ceb setarg  0x00000005 
- 00032072  0x00008cec istore  0x00000001 , 0x00000012 
- 00032073  0x00008ced add  0x00000012 , 0x00000003 , 0x00000013 
- 00032074  0x00008cee ifetch  0x00000002 , 0x00000013 
- 00032075  0x00008cef branch  0x00007d5c 
- 00032076  0x00008cf3 call  0x00007d32 
- 00032077  0x00008cf4 add  0x00000012 , 0x00000009 , 0x00000013 
- 00032078  0x00008cf5 call  0x00007e7c 
- 00032079  0x00008cf6 ifetch  0x00000002 , 0x00000013 
- 00032080  0x00008cf7 call  0x00007f9c 
- 00032081  0x00008cf8 call  0x00007e8c 
- 00032082  0x00008cfa add  0x00000012 , 0x00000001 , 0x00000013 
- 00032083  0x00008cfb ifetch  0x00000001 , 0x00000013 
- 00032084  0x00008cfc beq  0x000000ff , 0x00007d58 
- 00032085  0x00008cfd increase  0xffffffff , 0x0000003f 
- 00032086  0x00008cfe istore  0x00000001 , 0x00000013 
- 00032087  0x00008cff branch  0x00007d19 , 0x00000034 
- 00032088  0x00008d01 setarg  0x00000004 
- 00032089  0x00008d02 istore  0x00000001 , 0x00000012 
- 00032090  0x00008d03 add  0x00000012 , 0x00000005 , 0x00000013 
- 00032091  0x00008d04 ifetch  0x00000002 , 0x00000013 
- 00032092  0x00008d06 add  0x00000011 , 0x0000000b , 0x00000007 
- 00032093  0x00008d07 branch  0x00007f08 
- 00032094  0x00008d0a setarg  0x00000000 
- 00032095  0x00008d0b branch  0x00007d5c 
- 00032096  0x00008d12 setarg  0x00001000 
- 00032097  0x00008d13 lshift16  0x0000003f , 0x0000003f 
- 00032098  0x00008d14 iadd  0x00000012 , 0x00000012 
- 00032099  0x00008d15 rtn 
- 00032100  0x00008d18 bpatchx  0x000000f4 , 0x0000403e 
- 00032101  0x00008d19 arg  0x00000000 , 0x00000011 
- 00032102  0x00008d1a fetcht  0x00000004 , 0x0000467a 
- 00032103  0x00008d1b copy  0x00000022 , 0x00000012 
- 00032104  0x00008d1c copy  0x00000012 , 0x0000003f 
- 00032105  0x00008d1d isub  0x00000002 , 0x0000003e 
- 00032106  0x00008d1e ncall  0x00007d60 , 0x00000002 
- 00032107  0x00008d21 copy  0x00000012 , 0x0000003f 
- 00032108  0x00008d22 increase  0x000000a0 , 0x00000002 
- 00032109  0x00008d23 increase  0x000000a0 , 0x00000002 
- 00032110  0x00008d24 isub  0x00000002 , 0x0000003e 
- 00032111  0x00008d25 nbranch  0x00007d78 , 0x00000002 
- 00032112  0x00008d26 increase  0x00000001 , 0x00000011 
- 00032113  0x00008d27 and  0x00000011 , 0x0000000f , 0x0000003f 
- 00032114  0x00008d28 nbranch  0x00007d6b , 0x00000034 
- 00032115  0x00008d29 arg  0x00000000 , 0x00000011 
- 00032116  0x00008d2a call  0x00007d7f 
- 00032117  0x00008d2c copy  0x00000022 , 0x0000003f 
- 00032118  0x00008d2d store  0x00000004 , 0x0000467a 
- 00032119  0x00008d2e rtn 
- 00032120  0x00008d30 bpatchx  0x000000f5 , 0x0000403e 
- 00032121  0x00008d31 copy  0x00000011 , 0x0000003f 
- 00032122  0x00008d32 rtn  0x00000034 
- 00032123  0x00008d33 increase  0xffffff60 , 0x00000002 
- 00032124  0x00008d34 increase  0xffffff60 , 0x00000002 
- 00032125  0x00008d35 set0  0x0000001c , 0x00000002 
- 00032126  0x00008d36 storet  0x00000004 , 0x0000467a 
- 00032127  0x00008d38 branch  0x0000335f 
- 00032128  0x00008d40 jam  0x00000001 , 0x00004666 
- 00032129  0x00008d42 fetch  0x00000001 , 0x00004667 
- 00032130  0x00008d43 nbranch  0x00007d81 , 0x00000034 
- 00032131  0x00008d44 rtn 
- 00032132  0x00008d47 jam  0x00000000 , 0x00004666 
- 00032133  0x00008d48 rtn 
- 00032134  0x00008d4d bpatchx  0x000000f6 , 0x0000403e 
- 00032135  0x00008d4e call  0x00007d80 
- 00032136  0x00008d4f copy  0x00000011 , 0x0000003f 
- 00032137  0x00008d50 store  0x00000004 , 0x00000a91 
- 00032138  0x00008d51 arg  0x00004668 , 0x00000011 
- 00032139  0x00008d52 call  0x00007fb8 
- 00032140  0x00008d53 fetch  0x00000004 , 0x00000a91 
- 00032141  0x00008d54 copy  0x0000003f , 0x00000011 
- 00032142  0x00008d55 branch  0x00007d84 
- 00032143  0x00008d58 bpatchx  0x000000f7 , 0x0000403e 
- 00032144  0x00008d59 call  0x00007d80 
- 00032145  0x00008d5a copy  0x00000011 , 0x0000003f 
- 00032146  0x00008d5b store  0x00000004 , 0x00000a91 
- 00032147  0x00008d5c arg  0x00004670 , 0x00000011 
- 00032148  0x00008d5d call  0x00007fb8 
- 00032149  0x00008d5e fetch  0x00000004 , 0x00000a91 
- 00032150  0x00008d5f copy  0x0000003f , 0x00000011 
- 00032151  0x00008d60 branch  0x00007d84 
- 00032152  0x00008d63 setarg  0x00000000 
- 00032153  0x00008d64 store  0x00000008 , 0x00004670 
- 00032154  0x00008d65 store  0x00000008 , 0x00004668 
- 00032155  0x00008d66 rtn 
- 00032156  0x00008d69 bpatchx  0x000000f8 , 0x0000403f 
- 00032157  0x00008d6a fetch  0x00000001 , 0x000041ce 
- 00032158  0x00008d6b nrtn  0x00000034 
- 00032159  0x00008d6c arg  0x00004670 , 0x00000011 
- 00032160  0x00008d6d call  0x00007fd0 
- 00032161  0x00008d6e rtn  0x00000034 
- 00032162  0x00008d6f jam  0x00000000 , 0x00000a90 
- 00032163  0x00008d70 call  0x00007da7 
- 00032164  0x00008d71 fetch  0x00000001 , 0x00000a90 
- 00032165  0x00008d72 branch  0x00007d9c , 0x00000034 
- 00032166  0x00008d73 rtn 
- 00032167  0x00008d76 call  0x00007d80 
- 00032168  0x00008d77 arg  0x00004670 , 0x00000011 
- 00032169  0x00008d78 call  0x00007fc4 
- 00032170  0x00008d79 copy  0x0000003f , 0x00000002 
- 00032171  0x00008d7a call  0x00007d84 
- 00032172  0x00008d7b bpatchx  0x000000f9 , 0x0000403f 
- 00032173  0x00008d7c copy  0x00000002 , 0x0000003f 
- 00032174  0x00008d7d rtn  0x00000034 
- 00032175  0x00008d7e beq  0x00000001 , 0x00007ddd 
- 00032176  0x00008d7f beq  0x00000002 , 0x00007de2 
- 00032177  0x00008d80 beq  0x00000003 , 0x00007de8 
- 00032178  0x00008d81 beq  0x00000007 , 0x00007ded 
- 00032179  0x00008d82 beq  0x00000008 , 0x00007dee 
- 00032180  0x00008d83 beq  0x00000009 , 0x00007def 
- 00032181  0x00008d84 beq  0x0000000b , 0x00007df2 
- 00032182  0x00008d85 beq  0x0000000c , 0x00007df3 
- 00032183  0x00008d86 beq  0x0000000d , 0x00007df4 
- 00032184  0x00008d87 beq  0x0000000e , 0x00007dfa 
- 00032185  0x00008d88 beq  0x0000000f , 0x00007dff 
- 00032186  0x00008d89 beq  0x00000010 , 0x00007e05 
- 00032187  0x00008d8a beq  0x00000013 , 0x00007e0f 
- 00032188  0x00008d8b beq  0x00000014 , 0x00007e11 
- 00032189  0x00008d8c beq  0x00000015 , 0x00007e13 
- 00032190  0x00008d8d beq  0x00000016 , 0x00007e15 
- 00032191  0x00008d8e beq  0x00000017 , 0x00007e18 
- 00032192  0x00008d8f beq  0x00000018 , 0x00007e1a 
- 00032193  0x00008d90 beq  0x00000019 , 0x00007e1d 
- 00032194  0x00008d91 beq  0x0000001b , 0x00007e25 
- 00032195  0x00008d92 beq  0x0000001e , 0x00007e2f 
- 00032196  0x00008d94 store  0x00000001 , 0x00000a99 
- 00032197  0x00008d95 bpatchx  0x000000fa , 0x0000403f 
- 00032198  0x00008d96 call  0x000062bc 
- 00032199  0x00008d97 nbranch  0x00007ddb , 0x00000034 
- 00032200  0x00008d99 fetch  0x00000001 , 0x00000a99 
- 00032201  0x00008d9a bmark0  0x00000009 , 0x00007dd6 
- 00032202  0x00008d9b beq  0x00000004 , 0x00007dea 
- 00032203  0x00008d9c beq  0x00000005 , 0x00004d17 
- 00032204  0x00008d9d beq  0x00000006 , 0x00004d26 
- 00032205  0x00008d9e beq  0x0000000a , 0x00007df0 
- 00032206  0x00008d9f beq  0x00000011 , 0x00007e0a 
- 00032207  0x00008da0 beq  0x00000012 , 0x00007e0e 
- 00032208  0x00008da1 beq  0x0000001d , 0x00007e26 
- 00032209  0x00008da2 beq  0x0000001f , 0x000067cc 
- 00032210  0x00008da3 beq  0x00000020 , 0x000067d0 
- 00032211  0x00008da4 beq  0x00000021 , 0x00007e31 
- 00032212  0x00008da5 beq  0x00000025 , 0x0000670b 
- 00032213  0x00008da6 rtn 
- 00032214  0x00008da9 store  0x00000001 , 0x00000a99 
- 00032215  0x00008daa call  0x00002252 
- 00032216  0x00008dab branch  0x00007ddb , 0x00000005 
- 00032217  0x00008dac call  0x0000225a 
- 00032218  0x00008dad nrtn  0x00000005 
- 00032219  0x00008daf jam  0x00000001 , 0x00000a90 
- 00032220  0x00008db0 branch  0x00007d8f 
- 00032221  0x00008db6 fetch  0x00000002 , 0x00004682 
- 00032222  0x00008db7 set1  0x00000006 
- 00032223  0x00008db8 store  0x00000002 , 0x00004682 
- 00032224  0x00008db9 jam  0x00000003 , 0x00004093 
- 00032225  0x00008dba rtn 
- 00032226  0x00008dbf jam  0x00000000 , 0x00004680 
- 00032227  0x00008dc0 jam  0x00000000 , 0x00004093 
- 00032228  0x00008dc1 fetch  0x00000002 , 0x00004682 
- 00032229  0x00008dc2 set0  0x00000006 
- 00032230  0x00008dc3 store  0x00000002 , 0x00004682 
- 00032231  0x00008dc4 rtn 
- 00032232  0x00008dc9 jam  0x00000005 , 0x000041ce 
- 00032233  0x00008dca rtn 
- 00032234  0x00008dcf jam  0x00000007 , 0x0000007c 
- 00032235  0x00008dd0 jam  0x00000013 , 0x000004ca 
- 00032236  0x00008dd1 rtn 
- 00032237  0x00008dd6 rtn 
- 00032238  0x00008ddb rtn 
- 00032239  0x00008de0 rtn 
- 00032240  0x00008de5 jam  0x00000002 , 0x000004d4 
- 00032241  0x00008de6 branch  0x00004d0a 
- 00032242  0x00008deb rtn 
- 00032243  0x00008df0 rtn 
- 00032244  0x00008df5 jam  0x00000001 , 0x0000436e 
- 00032245  0x00008df6 jam  0x00000000 , 0x00004484 
- 00032246  0x00008df7 fetch  0x00000002 , 0x00004682 
- 00032247  0x00008df8 set1  0x0000000b , 0x0000003f 
- 00032248  0x00008df9 store  0x00000002 , 0x00004682 
- 00032249  0x00008dfa rtn 
- 00032250  0x00008dff fetch  0x00000002 , 0x00004682 
- 00032251  0x00008e00 set0  0x0000000b , 0x0000003f 
- 00032252  0x00008e01 store  0x00000002 , 0x00004682 
- 00032253  0x00008e02 jam  0x00000000 , 0x0000436e 
- 00032254  0x00008e03 rtn 
- 00032255  0x00008e08 jam  0x00000001 , 0x0000436e 
- 00032256  0x00008e09 jam  0x00000001 , 0x00004484 
- 00032257  0x00008e0a fetch  0x00000002 , 0x00004682 
- 00032258  0x00008e0b set1  0x0000000b , 0x0000003f 
- 00032259  0x00008e0c store  0x00000002 , 0x00004682 
- 00032260  0x00008e0d rtn 
- 00032261  0x00008e12 fetch  0x00000002 , 0x00004682 
- 00032262  0x00008e13 set0  0x0000000b , 0x0000003f 
- 00032263  0x00008e14 store  0x00000002 , 0x00004682 
- 00032264  0x00008e15 jam  0x00000000 , 0x0000436e 
- 00032265  0x00008e16 rtn 
- 00032266  0x00008e1b setarg  0x00000014 
- 00032267  0x00008e1c store  0x00000002 , 0x0000046d 
- 00032268  0x00008e1d store  0x00000002 , 0x000044ba 
- 00032269  0x00008e1e branch  0x00005c92 
- 00032270  0x00008e23 branch  0x00005abf 
- 00032271  0x00008e28 arg  0x00000000 , 0x00000011 
- 00032272  0x00008e29 branch  0x00007d19 
- 00032273  0x00008e2e arg  0x00000000 , 0x00000011 
- 00032274  0x00008e2f branch  0x00007d14 
- 00032275  0x00008e34 arg  0x00000000 , 0x00000011 
- 00032276  0x00008e35 branch  0x00007d1e 
- 00032277  0x00008e3a jam  0x00000001 , 0x00004369 
- 00032278  0x00008e3b jam  0x0000001b , 0x000041ce 
- 00032279  0x00008e3e rtn 
- 00032280  0x00008e43 jam  0x00000001 , 0x00004369 
- 00032281  0x00008e44 rtn 
- 00032282  0x00008e49 jam  0x00000000 , 0x00004369 
- 00032283  0x00008e4a jam  0x00000000 , 0x000041ce 
- 00032284  0x00008e4b rtn 
- 00032285  0x00008e50 fetch  0x00000002 , 0x000041eb 
- 00032286  0x00008e51 call  0x00007f9c 
- 00032287  0x00008e52 fetch  0x00000001 , 0x00004686 
- 00032288  0x00008e53 beq  0x000000ff , 0x00007e23 
- 00032289  0x00008e54 copy  0x0000003f , 0x00000002 
- 00032290  0x00008e55 call  0x000067fb 
- 00032291  0x00008e57 call  0x00007d98 
- 00032292  0x00008e58 branch  0x00002b1f 
- 00032293  0x00008e5d branch  0x00005b02 
- 00032294  0x00008e62 jam  0x00000034 , 0x0000007c 
- 00032295  0x00008e63 set1  0x00000003 , 0x00000000 
- 00032296  0x00008e64 nrtn  0x00000029 
- 00032297  0x00008e65 jam  0x00000000 , 0x0000455b 
- 00032298  0x00008e66 jam  0x00000013 , 0x0000007c 
- 00032299  0x00008e67 fetch  0x00000001 , 0x0000016d 
- 00032300  0x00008e68 set0  0x00000002 , 0x0000003f 
- 00032301  0x00008e69 store  0x00000001 , 0x0000016d 
- 00032302  0x00008e6a rtn 
- 00032303  0x00008e6f force  0x00000003 , 0x00000007 
- 00032304  0x00008e70 branch  0x00007f07 
- 00032305  0x00008e75 call  0x000062f8 
- 00032306  0x00008e76 jam  0x00000041 , 0x0000007d 
- 00032307  0x00008e77 branch  0x00005f9d 
- 00032308  0x00008e7b fetch  0x00000001 , 0x00004682 
- 00032309  0x00008e7c rtnbit0  0x0000000c 
- 00032310  0x00008e7d rtnbit0  0x00000007 
- 00032311  0x00008e7e branch  0x00007e2f 
- 00032312  0x00008e84 fetch  0x00000002 , 0x00004218 
- 00032313  0x00008e85 add  0x0000003f , 0x00000002 , 0x00000005 
- 00032314  0x00008e86 setarg  0x00000000 
- 00032315  0x00008e87 istore  0x00000003 , 0x00000005 
- 00032316  0x00008e88 rtn 
- 00032317  0x00008e8d call  0x00007fe9 
- 00032318  0x00008e8e call  0x00007e69 
- 00032319  0x00008e8f rtn  0x00000034 
- 00032320  0x00008e90 fetch  0x00000002 , 0x00004218 
- 00032321  0x00008e91 add  0x0000003f , 0x00000002 , 0x00000012 
- 00032322  0x00008e92 ifetcht  0x00000001 , 0x00000012 
- 00032323  0x00008e93 increase  0x00000001 , 0x00000002 
- 00032324  0x00008e94 istoret  0x00000001 , 0x00000012 
- 00032325  0x00008e96 ifetcht  0x00000001 , 0x0000003f 
- 00032326  0x00008e97 copy  0x00000002 , 0x00000039 
- 00032327  0x00008e98 add  0x0000003f , 0x00000004 , 0x00000012 
- 00032328  0x00008e99 ifetch  0x00000001 , 0x00000012 
- 00032329  0x00008e9a imul32  0x00000002 , 0x0000003f 
- 00032330  0x00008e9b iadd  0x00000006 , 0x00000005 
- 00032331  0x00008e9c copy  0x00000011 , 0x00000006 
- 00032332  0x00008e9e call  0x00007f01 
- 00032333  0x00008e9f call  0x00007e6d 
- 00032334  0x00008ea0 pincrease  0xffffffff 
- 00032335  0x00008ea1 ifetcht  0x00000001 , 0x00000012 
- 00032336  0x00008ea2 increase  0x00000001 , 0x00000002 
- 00032337  0x00008ea3 iand  0x00000002 , 0x00000002 
- 00032338  0x00008ea4 istoret  0x00000001 , 0x00000012 
- 00032339  0x00008ea5 branch  0x00007fe7 
- 00032340  0x00008eab call  0x00007fe9 
- 00032341  0x00008eac call  0x00007e65 
- 00032342  0x00008ead rtn  0x00000034 
- 00032343  0x00008eae fetch  0x00000002 , 0x00004218 
- 00032344  0x00008eaf add  0x0000003f , 0x00000002 , 0x00000012 
- 00032345  0x00008eb0 ifetcht  0x00000001 , 0x00000012 
- 00032346  0x00008eb1 increase  0xffffffff , 0x00000002 
- 00032347  0x00008eb2 istoret  0x00000001 , 0x00000012 
- 00032348  0x00008eb3 ifetcht  0x00000001 , 0x0000003f 
- 00032349  0x00008eb4 copy  0x00000002 , 0x00000039 
- 00032350  0x00008eb5 add  0x0000003f , 0x00000003 , 0x00000012 
- 00032351  0x00008eb6 ifetch  0x00000001 , 0x00000012 
- 00032352  0x00008eb7 imul32  0x00000002 , 0x0000003f 
- 00032353  0x00008eb8 iadd  0x00000006 , 0x00000006 
- 00032354  0x00008eb9 increase  0x00000001 , 0x00000006 
- 00032355  0x00008eba copy  0x00000011 , 0x00000005 
- 00032356  0x00008ebb branch  0x00007e4c 
- 00032357  0x00008ec0 fetch  0x00000002 , 0x00004218 
- 00032358  0x00008ec1 add  0x0000003f , 0x00000002 , 0x00000006 
- 00032359  0x00008ec2 ifetch  0x00000001 , 0x00000006 
- 00032360  0x00008ec3 rtn 
- 00032361  0x00008ec7 call  0x00007e6d 
- 00032362  0x00008ec8 ifetcht  0x00000001 , 0x00000006 
- 00032363  0x00008ec9 isub  0x00000002 , 0x0000003f 
- 00032364  0x00008eca rtn 
- 00032365  0x00008ece fetch  0x00000002 , 0x00004218 
- 00032366  0x00008ecf add  0x0000003f , 0x00000001 , 0x00000006 
- 00032367  0x00008ed0 ifetch  0x00000001 , 0x00000006 
- 00032368  0x00008ed1 rtn 
- 00032369  0x00008eda sub  0x00000039 , 0x00000000 , 0x0000003e 
- 00032370  0x00008edb rtn  0x00000005 
- 00032371  0x00008edd rshift  0x0000003f , 0x0000003f 
- 00032372  0x00008ede loop  0x00007e73 
- 00032373  0x00008edf rtn 
- 00032374  0x00008ee3 force  0x00000001 , 0x0000003f 
- 00032375  0x00008ee4 sub  0x00000039 , 0x00000000 , 0x0000003e 
- 00032376  0x00008ee5 rtn  0x00000005 
- 00032377  0x00008ee7 lshift  0x0000003f , 0x0000003f 
- 00032378  0x00008ee8 loop  0x00007e79 
- 00032379  0x00008ee9 rtn 
- 00032380  0x00008eeb deposit  0x00000005 
- 00032381  0x00008eec store  0x00000002 , 0x00000abb 
- 00032382  0x00008eed storet  0x00000008 , 0x00000aa2 
- 00032383  0x00008eee deposit  0x0000000b 
- 00032384  0x00008eef store  0x00000004 , 0x00000aaa 
- 00032385  0x00008ef0 call  0x00007e85 
- 00032386  0x00008ef1 deposit  0x00000006 
- 00032387  0x00008ef2 store  0x00000002 , 0x00000ab9 
- 00032388  0x00008ef3 rtn 
- 00032389  0x00008ef6 deposit  0x00000011 
- 00032390  0x00008ef7 store  0x00000004 , 0x00000aae 
- 00032391  0x00008ef8 deposit  0x00000012 
- 00032392  0x00008ef9 store  0x00000004 , 0x00000ab2 
- 00032393  0x00008efa deposit  0x00000013 
- 00032394  0x00008efb store  0x00000003 , 0x00000ab6 
- 00032395  0x00008efc rtn 
- 00032396  0x00008eff fetcht  0x00000008 , 0x00000aa2 
- 00032397  0x00008f00 fetch  0x00000004 , 0x00000aaa 
- 00032398  0x00008f01 iforce  0x0000000b 
- 00032399  0x00008f02 call  0x00007e95 
- 00032400  0x00008f03 fetch  0x00000002 , 0x00000abb 
- 00032401  0x00008f04 iforce  0x00000005 
- 00032402  0x00008f05 fetch  0x00000002 , 0x00000ab9 
- 00032403  0x00008f06 iforce  0x00000006 
- 00032404  0x00008f07 rtn 
- 00032405  0x00008f0a fetch  0x00000004 , 0x00000aae 
- 00032406  0x00008f0b iforce  0x00000011 
- 00032407  0x00008f0c fetch  0x00000004 , 0x00000ab2 
- 00032408  0x00008f0d iforce  0x00000012 
- 00032409  0x00008f0e fetch  0x00000003 , 0x00000ab6 
- 00032410  0x00008f0f iforce  0x00000013 
- 00032411  0x00008f10 rtn 
- 00032412  0x00008f13 fetch  0x00000002 , 0x00000abb 
- 00032413  0x00008f14 copy  0x0000003f , 0x00000005 
- 00032414  0x00008f15 rtn 
- 00032415  0x00008f17 fetch  0x00000002 , 0x00000ab9 
- 00032416  0x00008f18 copy  0x0000003f , 0x00000006 
- 00032417  0x00008f19 rtn 
- 00032418  0x00008f1b copy  0x00000005 , 0x0000003f 
- 00032419  0x00008f1c store  0x00000002 , 0x00000abb 
- 00032420  0x00008f1d rtn 
- 00032421  0x00008f1f copy  0x00000006 , 0x0000003f 
- 00032422  0x00008f20 store  0x00000002 , 0x00000ab9 
- 00032423  0x00008f21 rtn 
- 00032424  0x00008f26 copy  0x00000005 , 0x0000003f 
- 00032425  0x00008f27 store  0x00000002 , 0x00000a97 
- 00032426  0x00008f28 copy  0x00000006 , 0x0000003f 
- 00032427  0x00008f29 store  0x00000002 , 0x00000a95 
- 00032428  0x00008f2a rtn 
- 00032429  0x00008f2c fetch  0x00000002 , 0x00000a97 
- 00032430  0x00008f2d copy  0x0000003f , 0x00000005 
- 00032431  0x00008f2e fetch  0x00000002 , 0x00000a95 
- 00032432  0x00008f2f copy  0x0000003f , 0x00000006 
- 00032433  0x00008f30 rtn 
- 00032434  0x00008f33 call  0x00007ebd 
- 00032435  0x00008f35 call  0x00007ebd 
- 00032436  0x00008f36 branch  0x00007ebd 
- 00032437  0x00008f38 call  0x00007eb9 
- 00032438  0x00008f3a ifetch  0x00000004 , 0x00000006 
- 00032439  0x00008f3b istore  0x00000004 , 0x00000005 
- 00032440  0x00008f3c rtn 
- 00032441  0x00008f3e ifetch  0x00000008 , 0x00000006 
- 00032442  0x00008f3f istore  0x00000008 , 0x00000005 
- 00032443  0x00008f40 rtn 
- 00032444  0x00008f43 call  0x00007ebf 
- 00032445  0x00008f45 call  0x00007eb9 
- 00032446  0x00008f47 call  0x00007eb9 
- 00032447  0x00008f49 call  0x00007eb9 
- 00032448  0x00008f4a branch  0x00007eb9 
- 00032449  0x00008f4f arg  0x0000000a , 0x00000039 
- 00032450  0x00008f51 nop  0x00002ee0 
- 00032451  0x00008f52 loop  0x00007ec2 
- 00032452  0x00008f53 rtn 
- 00032453  0x00008f56 force  0x00000003 , 0x00000039 
- 00032454  0x00008f58 force  0x00000000 , 0x0000003f 
- 00032455  0x00008f5a istore  0x00000008 , 0x00000005 
- 00032456  0x00008f5b loop  0x00007ec7 
- 00032457  0x00008f5c rtn 
- 00032458  0x00008f5f force  0x00000000 , 0x0000003f 
- 00032459  0x00008f60 istore  0x00000008 , 0x00000005 
- 00032460  0x00008f61 rtn 
- 00032461  0x00008f63 force  0x00000000 , 0x0000003f 
- 00032462  0x00008f64 istore  0x00000004 , 0x00000005 
- 00032463  0x00008f65 rtn 
- 00032464  0x00008f68 force  0x00000004 , 0x00000039 
- 00032465  0x00008f69 branch  0x00007ec6 
- 00032466  0x00008f6b force  0x00000008 , 0x00000039 
- 00032467  0x00008f6c branch  0x00007ec6 
- 00032468  0x00008f6f deposit  0x00000039 
- 00032469  0x00008f70 rtn  0x00000034 
- 00032470  0x00008f71 setarg  0x00000000 
- 00032471  0x00008f73 istore  0x00000001 , 0x00000005 
- 00032472  0x00008f74 loop  0x00007ed7 
- 00032473  0x00008f75 rtn 
- 00032474  0x00008f79 arg  0x00000020 , 0x00000039 
- 00032475  0x00008f7a arg  0x00000ac2 , 0x00000005 
- 00032476  0x00008f7b branch  0x00007ed4 
- 00032477  0x00008f7e ifetch  0x00000004 , 0x00000013 
- 00032478  0x00008f7f ifetcht  0x00000004 , 0x00000011 
- 00032479  0x00008f80 ixor  0x00000002 , 0x0000003f 
- 00032480  0x00008f81 istore  0x00000004 , 0x00000005 
- 00032481  0x00008f82 increase  0x00000004 , 0x00000011 
- 00032482  0x00008f83 increase  0x00000004 , 0x00000013 
- 00032483  0x00008f84 loop  0x00007edd 
- 00032484  0x00008f85 rtn 
- 00032485  0x00008f8a bpatchx  0x000000fb , 0x0000403f 
- 00032486  0x00008f8b copy  0x00000039 , 0x0000003f 
- 00032487  0x00008f8c sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00032488  0x00008f8d rtn  0x00000002 
- 00032489  0x00008f8e iadd  0x00000011 , 0x00000012 
- 00032490  0x00008f8f increase  0xffffffff , 0x00000012 
- 00032491  0x00008f90 rshift  0x00000039 , 0x00000039 
- 00032492  0x00008f92 ifetcht  0x00000001 , 0x00000011 
- 00032493  0x00008f93 ifetch  0x00000001 , 0x00000012 
- 00032494  0x00008f94 istore  0x00000001 , 0x00000011 
- 00032495  0x00008f95 istoret  0x00000001 , 0x00000012 
- 00032496  0x00008f96 increase  0xffffffff , 0x00000012 
- 00032497  0x00008f97 increase  0x00000001 , 0x00000011 
- 00032498  0x00008f98 loop  0x00007eec 
- 00032499  0x00008f99 rtn 
- 00032500  0x00008f9d deposit  0x00000039 
- 00032501  0x00008f9e rtn  0x00000034 
- 00032502  0x00008fa0 increase  0xfffffff8 , 0x00000039 
- 00032503  0x00008fa1 call  0x00007eb9 , 0x00000002 
- 00032504  0x00008fa2 rtn  0x00000005 
- 00032505  0x00008fa3 branch  0x00007ef6 , 0x00000002 
- 00032506  0x00008fa4 increase  0x00000008 , 0x00000039 
- 00032507  0x00008fa6 increase  0xfffffffc , 0x00000039 
- 00032508  0x00008fa7 call  0x00007eb6 , 0x00000002 
- 00032509  0x00008fa8 rtn  0x00000005 
- 00032510  0x00008fa9 branch  0x00007efb , 0x00000002 
- 00032511  0x00008faa increase  0x00000004 , 0x00000039 
- 00032512  0x00008fab branch  0x00007f01 
- 00032513  0x00008fae deposit  0x00000039 
- 00032514  0x00008faf rtn  0x00000034 
- 00032515  0x00008fb1 ifetch  0x00000001 , 0x00000006 
- 00032516  0x00008fb2 istore  0x00000001 , 0x00000005 
- 00032517  0x00008fb3 loop  0x00007f03 
- 00032518  0x00008fb4 rtn 
- 00032519  0x00008fb7 setarg  0x00000000 
- 00032520  0x00008fb9 rshift  0x00000022 , 0x00000002 
- 00032521  0x00008fba storet  0x00000004 , 0x00004094 
- 00032522  0x00008fbb arg  0x0000419d , 0x00000005 
- 00032523  0x00008fbc iforce  0x00000002 
- 00032524  0x00008fbd lshift  0x00000007 , 0x0000003f 
- 00032525  0x00008fbe iadd  0x00000005 , 0x00000005 
- 00032526  0x00008fbf istoret  0x00000002 , 0x00000005 
- 00032527  0x00008fc0 bpatchx  0x000000fc , 0x0000403f 
- 00032528  0x00008fc1 rtn 
- 00032529  0x00008fc4 arg  0x00000800 , 0x0000000b 
- 00032530  0x00008fc5 lshift16  0x0000000b , 0x0000000b 
- 00032531  0x00008fc6 iadd  0x0000000b , 0x0000003f 
- 00032532  0x00008fc7 rtn 
- 00032533  0x00008fcb arg  0x00000000 , 0x00000007 
- 00032534  0x00008fcd bpatchx  0x000000fd , 0x0000403f 
- 00032535  0x00008fce fetcht  0x00000004 , 0x00004094 
- 00032536  0x00008fcf rshift  0x00000022 , 0x0000003f 
- 00032537  0x00008fd0 store  0x00000004 , 0x00004094 
- 00032538  0x00008fd1 isub  0x00000002 , 0x0000003e 
- 00032539  0x00008fd2 ncall  0x00007f11 , 0x00000002 
- 00032540  0x00008fd3 isub  0x00000002 , 0x0000000b 
- 00032541  0x00008fd4 copy  0x0000000b , 0x00000002 
- 00032542  0x00008fd5 arg  0x0000419d , 0x00000006 
- 00032543  0x00008fd6 copy  0x00000006 , 0x00000005 
- 00032544  0x00008fd7 arg  0x00000010 , 0x00000039 
- 00032545  0x00008fd9 ifetch  0x00000002 , 0x00000006 
- 00032546  0x00008fda isub  0x00000002 , 0x0000003f 
- 00032547  0x00008fdb branch  0x00007f25 , 0x00000002 
- 00032548  0x00008fdc force  0x00000000 , 0x0000003f 
- 00032549  0x00008fde istore  0x00000002 , 0x00000005 
- 00032550  0x00008fdf loop  0x00007f21 
- 00032551  0x00008fe0 arg  0x0000419d , 0x00000006 
- 00032552  0x00008fe1 lshift  0x00000007 , 0x0000003f 
- 00032553  0x00008fe2 iadd  0x00000006 , 0x00000006 
- 00032554  0x00008fe3 ifetch  0x00000002 , 0x00000006 
- 00032555  0x00008fe4 rtn 
- 00032556  0x00008fea iadd  0x00000002 , 0x00000002 
- 00032557  0x00008feb copy  0x00000002 , 0x00000039 
- 00032558  0x00008fec setarg  0x00000ea6 
- 00032559  0x00008fed isub  0x00000039 , 0x0000003f 
- 00032560  0x00008fee rtn  0x00000002 
- 00032561  0x00008fef sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00032562  0x00008ff0 rshift16  0x00000002 , 0x00000002 
- 00032563  0x00008ff1 increase  0x00000001 , 0x00000002 
- 00032564  0x00008ff2 lshift16  0x00000002 , 0x00000002 
- 00032565  0x00008ff3 ior  0x00000002 , 0x00000002 
- 00032566  0x00008ff4 rtn 
- 00032567  0x00008ff7 call  0x00007f39 
- 00032568  0x00008ff8 branch  0x00007f43 
- 00032569  0x00008ffc disable  0x00000028 
- 00032570  0x00008ffd isub  0x00000002 , 0x0000003f 
- 00032571  0x00008ffe branch  0x00007f3e , 0x00000002 
- 00032572  0x00008fff enable  0x00000028 
- 00032573  0x00009000 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00032574  0x00009002 rtnbit0  0x0000000f 
- 00032575  0x00009003 arg  0xffff0ea6 , 0x00000002 
- 00032576  0x00009004 iadd  0x00000002 , 0x0000003f 
- 00032577  0x00009005 set0  0x00000040 , 0x0000003f 
- 00032578  0x00009006 rtn 
- 00032579  0x00009009 iforce  0x00000006 
- 00032580  0x0000900a rshift16  0x0000003f , 0x0000003f 
- 00032581  0x0000900b arg  0x00000ea6 , 0x00000002 
- 00032582  0x0000900c imul32  0x00000002 , 0x0000003f 
- 00032583  0x0000900d iadd  0x00000006 , 0x0000003f 
- 00032584  0x0000900e rtn 
- 00032585  0x00009012 lshift8  0x0000003f , 0x0000003f 
- 00032586  0x00009013 lshift4  0x0000003f , 0x0000003f 
- 00032587  0x00009014 fetcht  0x00000003 , 0x0000416f 
- 00032588  0x00009015 idiv  0x00000002 
- 00032589  0x00009016 call  0x00007f86 
- 00032590  0x00009017 quotient  0x00000002 
- 00032591  0x00009018 rtn 
- 00032592  0x0000901c arg  0x00000ea6 , 0x00000002 
- 00032593  0x0000901d idiv  0x00000002 
- 00032594  0x0000901e call  0x00007f86 
- 00032595  0x0000901f quotient  0x0000003f 
- 00032596  0x00009020 lshift16  0x0000003f , 0x0000003f 
- 00032597  0x00009021 remainder  0x00000002 
- 00032598  0x00009022 ior  0x00000002 , 0x00000002 
- 00032599  0x00009023 rtn 
- 00032600  0x0000902b arg  0x00000000 , 0x00000002 
- 00032601  0x0000902d copy  0x00000002 , 0x00000013 
- 00032602  0x0000902e ifetch  0x00000001 , 0x00000003 
- 00032603  0x0000902f call  0x00007f64 
- 00032604  0x00009030 copy  0x00000013 , 0x00000002 
- 00032605  0x00009031 call  0x00007f95 
- 00032606  0x00009032 arg  0x0000000a , 0x00000012 
- 00032607  0x00009033 imul32  0x00000012 , 0x0000003f 
- 00032608  0x00009034 iadd  0x00000002 , 0x0000003f 
- 00032609  0x00009035 copy  0x0000003f , 0x00000002 
- 00032610  0x00009036 loop  0x00007f59 
- 00032611  0x00009037 rtn 
- 00032612  0x0000903c arg  0x0000003a , 0x00000002 
- 00032613  0x0000903d isub  0x00000002 , 0x0000003e 
- 00032614  0x0000903e nbranch  0x00007f6d , 0x00000002 
- 00032615  0x0000903f arg  0x00000061 , 0x00000002 
- 00032616  0x00009040 isub  0x00000002 , 0x0000003e 
- 00032617  0x00009041 branch  0x00007f70 , 0x00000002 
- 00032618  0x00009042 arg  0x00000037 , 0x00000002 
- 00032619  0x00009043 isub  0x00000002 , 0x0000003f 
- 00032620  0x00009044 rtn 
- 00032621  0x00009046 arg  0x00000030 , 0x00000002 
- 00032622  0x00009047 isub  0x00000002 , 0x0000003f 
- 00032623  0x00009048 rtn 
- 00032624  0x0000904a arg  0x00000057 , 0x00000002 
- 00032625  0x0000904b isub  0x00000002 , 0x0000003f 
- 00032626  0x0000904c rtn 
- 00032627  0x0000904f copy  0x00000002 , 0x00000030 
- 00032628  0x00009050 setarg  0x000001ff 
- 00032629  0x00009051 force  0x00000000 , 0x00000012 
- 00032630  0x00009053 rshift3  0x0000003f , 0x00000011 
- 00032631  0x00009054 rshift  0x00000011 , 0x00000011 
- 00032632  0x00009055 ixor  0x00000011 , 0x00000011 
- 00032633  0x00009056 isolate1  0x00000000 , 0x00000011 
- 00032634  0x00009057 setflag  0x00000001 , 0x00000009 , 0x0000003f 
- 00032635  0x00009058 rshift  0x00000002 , 0x00000002 
- 00032636  0x00009059 isolate1  0x00000000 , 0x0000003f 
- 00032637  0x0000905a setflag  0x00000001 , 0x00000007 , 0x00000002 
- 00032638  0x0000905b rshift  0x0000003f , 0x0000003f 
- 00032639  0x0000905c increase  0x00000001 , 0x00000012 
- 00032640  0x0000905d compare  0x00000000 , 0x00000012 , 0x00000007 
- 00032641  0x0000905e nbranch  0x00007f76 , 0x00000001 
- 00032642  0x0000905f istoret  0x00000001 , 0x00000005 
- 00032643  0x00009060 loop  0x00007f76 
- 00032644  0x00009061 copy  0x00000030 , 0x00000002 
- 00032645  0x00009062 rtn 
- 00032646  0x00009066 rtn  0x00000035 
- 00032647  0x00009067 branch  0x00007f86 
- 00032648  0x00009073 ifetch  0x00000001 , 0x00000011 
- 00032649  0x00009074 ifetcht  0x00000001 , 0x00000012 
- 00032650  0x00009075 isub  0x00000002 , 0x0000003e 
- 00032651  0x00009076 nrtn  0x00000005 
- 00032652  0x00009077 increase  0x00000001 , 0x00000011 
- 00032653  0x00009078 increase  0x00000001 , 0x00000012 
- 00032654  0x00009079 loop  0x00007f88 
- 00032655  0x0000907a force  0x00000000 , 0x0000003e 
- 00032656  0x0000907b rtn 
- 00032657  0x0000907f isub  0x00000002 , 0x0000003e 
- 00032658  0x00009080 nrtn  0x00000002 
- 00032659  0x00009081 deposit  0x00000002 
- 00032660  0x00009082 rtn 
- 00032661  0x00009085 iadd  0x00000002 , 0x0000003f 
- 00032662  0x00009086 isub  0x00000002 , 0x00000002 
- 00032663  0x00009087 isub  0x00000002 , 0x0000003f 
- 00032664  0x00009088 rtn 
- 00032665  0x0000908b arg  0x00000200 , 0x00000039 
- 00032666  0x0000908c arg  0x00004000 , 0x00000005 
- 00032667  0x0000908d branch  0x00007ec6 
- 00032668  0x00009091 rtn  0x00000034 
- 00032669  0x00009092 copy  0x0000003f , 0x0000003d 
- 00032670  0x00009096 hfetch  0x00000002 , 0x0000810e 
- 00032671  0x00009097 nbranch  0x00007f9e , 0x00000034 
- 00032672  0x00009098 rtn 
- 00032673  0x0000909b jam  0x00000001 , 0x00008203 
- 00032674  0x0000909c rtn 
- 00032675  0x0000909f hstore  0x00000002 , 0x00008205 
- 00032676  0x000090a0 hfetch  0x00000001 , 0x00008203 
- 00032677  0x000090a1 set1  0x00000004 , 0x0000003f 
- 00032678  0x000090a2 hstore  0x00000001 , 0x00008203 
- 00032679  0x000090a3 rtn 
- 00032680  0x000090a5 hstore  0x00000002 , 0x00008207 
- 00032681  0x000090a6 hfetch  0x00000001 , 0x00008203 
- 00032682  0x000090a7 set1  0x00000006 , 0x0000003f 
- 00032683  0x000090a8 hstore  0x00000001 , 0x00008203 
- 00032684  0x000090a9 rtn 
- 00032685  0x000090ac hstore  0x00000002 , 0x00008205 
- 00032686  0x000090ad jam  0x00000030 , 0x00008203 
- 00032687  0x000090ae rtn 
- 00032688  0x000090b3 hfetch  0x00000001 , 0x00008043 
- 00032689  0x000090b4 set0  0x00000004 , 0x0000003f 
- 00032690  0x000090b5 hstore  0x00000001 , 0x00008043 
- 00032691  0x000090b6 rtn 
- 00032692  0x000090b9 hfetch  0x00000002 , 0x0000810e 
- 00032693  0x000090ba arg  0x00000200 , 0x00000002 
- 00032694  0x000090bc isub  0x00000002 , 0x0000003e 
- 00032695  0x000090bd rtn 
- 00032696  0x000090c4 bpatchx  0x000000fe , 0x0000403f 
- 00032697  0x000090c5 ifetcht  0x00000008 , 0x00000011 
- 00032698  0x000090c6 and  0x00000002 , 0x000000ff , 0x0000003f 
- 00032699  0x000090c7 nbranch  0x00007fbe , 0x00000034 
- 00032700  0x000090c8 rshift8  0x00000002 , 0x0000003f 
- 00032701  0x000090c9 istore  0x00000008 , 0x00000011 
- 00032702  0x000090cb increase  0x00000007 , 0x00000011 
- 00032703  0x000090cc ifetch  0x00000001 , 0x00000011 
- 00032704  0x000090cd nbranch  0x00002a8c , 0x00000034 
- 00032705  0x000090ce fetch  0x00000001 , 0x00000a99 
- 00032706  0x000090cf istore  0x00000001 , 0x00000011 
- 00032707  0x000090d0 rtn 
- 00032708  0x000090d6 bpatchx  0x000000ff , 0x0000403f 
- 00032709  0x000090d7 arg  0x00000008 , 0x00000039 
- 00032710  0x000090d8 ifetch  0x00000008 , 0x00000011 
- 00032711  0x000090d9 rtn  0x00000034 
- 00032712  0x000090db ifetch  0x00000001 , 0x00000011 
- 00032713  0x000090dc nbranch  0x00007fcd , 0x00000034 
- 00032714  0x000090dd increase  0x00000001 , 0x00000011 
- 00032715  0x000090de loop  0x00007fc8 
- 00032716  0x000090df branch  0x00002a8c 
- 00032717  0x000090e1 arg  0x00000000 , 0x00000002 
- 00032718  0x000090e2 istoret  0x00000001 , 0x00000011 
- 00032719  0x000090e3 rtn 
- 00032720  0x000090e9 ifetch  0x00000008 , 0x00000011 
- 00032721  0x000090ea rtn 
- 00032722  0x000090f0 ifetch  0x00000001 , 0x00000011 
- 00032723  0x000090f1 rtn 
- 00032724  0x000090f5 ifetch  0x00000002 , 0x00000011 
- 00032725  0x000090f6 rtn 
- 00032726  0x000090fb arg  0x00000000 , 0x00000002 
- 00032727  0x000090fd fetch  0x00000001 , 0x00000006 
- 00032728  0x000090fe loop  0x00007fd7 , 0x00000034 
- 00032729  0x000090ff increase  0x00000001 , 0x00000002 
- 00032730  0x00009100 loop  0x00007fd7 
- 00032731  0x00009101 copy  0x00000002 , 0x0000003f 
- 00032732  0x00009102 rtn 
- 00032733  0x00009105 isub  0x00000002 , 0x0000003e 
- 00032734  0x00009106 nrtn  0x00000002 
- 00032735  0x00009107 copy  0x00000002 , 0x0000003f 
- 00032736  0x00009108 rtn 
- 00032737  0x0000910c force  0xffffffff , 0x0000003e 
- 00032738  0x0000910d rtn 
- 00032739  0x00009110 force  0x00000001 , 0x0000003e 
- 00032740  0x00009111 rtn 
- 00032741  0x00009113 force  0x00000000 , 0x0000003e 
- 00032742  0x00009114 rtn 
- 00032743  0x00009117 enable  0x00000028 
- 00032744  0x00009118 rtn 
- 00032745  0x0000911b disable  0x00000028 
- 00032746  0x0000911c rtn 
- 00032747  0x0000911f enable  0x0000002c 
- 00032748  0x00009120 rtn 
- 00032749  0x00009123 disable  0x0000002c 
- 00032750  0x00009124 rtn 
- 00032751  0x00009127 setarg  0x00000001 
- 00032752  0x00009128 rtn 
- 00032753  0x0000912b setarg  0x00000000 
- 00032754  0x0000912c rtn 
- 00032755  0x00009130 copy  0x00000039 , 0x0000003f 
- 00032756  0x00009131 rtn  0x00000034 
- 00032757  0x00009132 copy  0x00000006 , 0x0000003f 
- 00032758  0x00009133 iadd  0x00000039 , 0x0000003f 
- 00032759  0x00009134 increase  0xffffffff , 0x0000003f 
- 00032760  0x00009135 copy  0x0000003f , 0x00000006 
- 00032761  0x00009137 ifetch  0x00000001 , 0x00000006 
- 00032762  0x00009138 increase  0xfffffffe , 0x00000006 
- 00032763  0x00009139 istore  0x00000001 , 0x00000005 
- 00032764  0x0000913a loop  0x00007ff9 
- 00032765  0x0000913b rtn 
- 00065537  0x00009141 beq  0x00000001 , 0x00010005 
- 00065538  0x00009142 beq  0x00000000 , 0x0001001d 
- 00065539  0x00009143 beq  0x00000002 , 0x0001002a 
- 00065540  0x00009144 rtn 
- 00065541  0x00009147 jam  0x00000000 , 0x00004808 
- 00065542  0x00009148 jam  0x0000000e , 0x000041e3 
- 00065543  0x00009149 call  0x000041e7 
- 00065544  0x0000914a fetch  0x00000002 , 0x00004208 
- 00065545  0x0000914b bbit1  0x00000007 , 0x000041f5 
- 00065546  0x0000914c bbit1  0x00000000 , 0x000033a9 
- 00065547  0x0000914d bbit1  0x00000001 , 0x0001000f 
- 00065548  0x0000914e bbit1  0x00000002 , 0x00010012 
- 00065549  0x0000914f bbit1  0x00000003 , 0x00010012 
- 00065550  0x00009150 branch  0x000042b0 
- 00065551  0x00009153 bbit1  0x00000005 , 0x00010012 
- 00065552  0x00009154 bbit1  0x00000003 , 0x00010012 
- 00065553  0x00009155 branch  0x000042b0 
- 00065554  0x00009157 fetch  0x00000002 , 0x00004682 
- 00065555  0x00009158 bbit1  0x0000000c , 0x000042b0 
- 00065556  0x00009159 call  0x000033a9 
- 00065557  0x0000915a call  0x00000546 
- 00065558  0x0000915b beq  0x00000007 , 0x0001001a 
- 00065559  0x0000915c fetch  0x00000001 , 0x000046b6 
- 00065560  0x0000915d branch  0x0001001a , 0x00000034 
- 00065561  0x0000915e branch  0x000033a7 
- 00065562  0x00009161 jam  0x00000001 , 0x0000479f 
- 00065563  0x00009162 jam  0x00000028 , 0x000047a0 
- 00065564  0x00009163 rtn 
- 00065565  0x00009166 fetch  0x00000001 , 0x0000000e 
- 00065566  0x00009167 increase  0x00000001 , 0x0000003f 
- 00065567  0x00009168 store  0x00000001 , 0x0000000e 
- 00065568  0x00009169 call  0x00002435 
- 00065569  0x0000916b set1  0x0000002c , 0x00000000 
- 00065570  0x0000916c call  0x000022f2 
- 00065571  0x0000916d branch  0x00010028 , 0x00000018 
- 00065572  0x0000916e set0  0x0000002c , 0x00000000 
- 00065573  0x0000916f call  0x00002455 
- 00065574  0x00009170 nbranch  0x00010021 , 0x00000034 
- 00065575  0x00009171 branch  0x000020fc 
- 00065576  0x00009173 set0  0x0000002c , 0x00000000 
- 00065577  0x00009174 branch  0x0000215f 
- 00065578  0x00009177 fetch  0x00000002 , 0x00000264 
- 00065579  0x00009178 copy  0x0000003f , 0x00000006 
- 00065580  0x00009179 ifetch  0x00000001 , 0x00000006 
- 00065581  0x0000917a store  0x00000001 , 0x00004b02 
- 00065582  0x0000917b and  0x0000003f , 0x0000000f , 0x00000002 
- 00065583  0x0000917c rshift4  0x0000003f , 0x0000003f 
- 00065584  0x0000917d beq  0x00000007 , 0x00010033 
- 00065585  0x0000917e beq  0x00000001 , 0x0001003a 
- 00065586  0x0000917f branch  0x00004d39 
- 00065587  0x00009181 call  0x00004d53 
- 00065588  0x00009182 jam  0x00000000 , 0x00004b03 
- 00065589  0x00009183 fetch  0x00000001 , 0x00004b02 
- 00065590  0x00009184 isolate1  0x00000000 , 0x0000003f 
- 00065591  0x00009185 rtn  0x00000001 
- 00065592  0x00009186 jam  0x00000001 , 0x00004b03 
- 00065593  0x00009187 rtn 
- 00065594  0x0000918a copy  0x00000002 , 0x0000003f 
- 00065595  0x0000918b beq  0x00000005 , 0x00000442 
- 00065596  0x0000918c branch  0x00004d41 
- 00131073  0x00009191 beq  0x00000010 , 0x0002000e 
- 00131074  0x00009192 beq  0x00000011 , 0x0002001b 
- 00131075  0x00009193 beq  0x00000012 , 0x00020005 
- 00131076  0x00009194 rtn 
- 00131077  0x00009197 jam  0x00000001 , 0x00004b6e 
- 00131078  0x00009198 jam  0x00000001 , 0x000047a1 
- 00131079  0x00009199 fetch  0x00000002 , 0x000046a8 
- 00131080  0x0000919a store  0x00000002 , 0x000046ae 
- 00131081  0x0000919b call  0x00000499 
- 00131082  0x0000919c call  0x00003418 
- 00131083  0x0000919d arg  0x00004390 , 0x00000006 
- 00131084  0x0000919e call  0x00000495 
- 00131085  0x0000919f branch  0x00007df4 
- 00131086  0x000091a2 fetch  0x00000001 , 0x00000048 
- 00131087  0x000091a3 beq  0x00000084 , 0x00020012 
- 00131088  0x000091a4 beq  0x00000083 , 0x00020015 
- 00131089  0x000091a5 branch  0x0000603f 
- 00131090  0x000091a7 call  0x00020018 
- 00131091  0x000091a8 fetch  0x00000001 , 0x00000048 
- 00131092  0x000091a9 branch  0x00006099 
- 00131093  0x000091ab call  0x00020018 
- 00131094  0x000091ac fetch  0x00000001 , 0x00000048 
- 00131095  0x000091ad branch  0x0000610d 
- 00131096  0x000091af fetch  0x00000001 , 0x0000465a 
- 00131097  0x000091b0 branch  0x0000612b , 0x00000034 
- 00131098  0x000091b1 branch  0x00006124 
- 00131099  0x000091b4 force  0x00000002 , 0x0000003f 
- 00131100  0x000091b5 call  0x00006298 
- 00131101  0x000091b6 fetch  0x00000001 , 0x00000049 
- 00131102  0x000091b7 istore  0x00000001 , 0x00000005 
- 00131103  0x000091b8 store  0x00000001 , 0x00004afc 
- 00131104  0x000091b9 call  0x000062a7 
- 00131105  0x000091ba fetch  0x00000001 , 0x00004afc 
- 00131106  0x000091bb beq  0x0000002e , 0x00020024 
- 00131107  0x000091bc branch  0x00006051 
- 00131108  0x000091bf fetch  0x00000001 , 0x00004aff 
- 00131109  0x000091c0 rtn  0x00000034 
- 00131110  0x000091c1 jam  0x00000000 , 0x00004aff 
- 00131111  0x000091c2 fetch  0x00000001 , 0x00004b01 
- 00131112  0x000091c3 rtnne  0x00000002 
- 00131113  0x000091c4 jam  0x00000001 , 0x00004b00 
- 00131114  0x000091c5 copy  0x00000022 , 0x0000003f 
- 00131115  0x000091c6 store  0x00000004 , 0x000004e9 
- 00131116  0x000091c7 rtn 
- 00196609  0x000091cc beq  0x00000020 , 0x00030006 
- 00196610  0x000091cd beq  0x00000021 , 0x00030018 
- 00196611  0x000091ce beq  0x00000022 , 0x00030025 
- 00196612  0x000091cf beq  0x00000023 , 0x0003002c 
- 00196613  0x000091d0 rtn 
- 00196614  0x000091d3 call  0x0003000e 
- 00196615  0x000091d4 branch  0x0000557d 
- 00196616  0x000091d6 fetch  0x00000001 , 0x000047c5 
- 00196617  0x000091d7 store  0x00000001 , 0x00004172 
- 00196618  0x000091d9 jam  0x00000000 , 0x000047c4 
- 00196619  0x000091da rtn 
- 00196620  0x000091dc jam  0x00000001 , 0x000047c4 
- 00196621  0x000091dd rtn 
- 00196622  0x000091df fetch  0x00000001 , 0x000043d6 
- 00196623  0x000091e0 sub  0x0000003f , 0x0000000c , 0x0000003e 
- 00196624  0x000091e1 nbranch  0x0003000c , 0x00000002 
- 00196625  0x000091e2 fetch  0x00000001 , 0x000043d8 
- 00196626  0x000091e3 fetcht  0x00000001 , 0x000047c5 
- 00196627  0x000091e4 isub  0x00000002 , 0x0000003e 
- 00196628  0x000091e5 branch  0x00030008 , 0x00000002 
- 00196629  0x000091e6 fetch  0x00000001 , 0x000043d8 
- 00196630  0x000091e7 store  0x00000001 , 0x00004172 
- 00196631  0x000091e8 branch  0x0003000a 
- 00196632  0x000091eb fetch  0x00000001 , 0x0000043f 
- 00196633  0x000091ec rtnbit0  0x00000006 
- 00196634  0x000091ed call  0x0003001d 
- 00196635  0x000091ee nrtn  0x00000028 
- 00196636  0x000091ef branch  0x000055a0 
- 00196637  0x000091f1 enable  0x00000028 
- 00196638  0x000091f2 fetch  0x00000001 , 0x0000045a 
- 00196639  0x000091f3 rshift4  0x0000003f , 0x0000003f 
- 00196640  0x000091f4 rtnne  0x0000000f 
- 00196641  0x000091f5 fetch  0x00000001 , 0x00000460 
- 00196642  0x000091f6 rshift4  0x0000003f , 0x0000003f 
- 00196643  0x000091f7 rtnne  0x00000000 
- 00196644  0x000091f8 branch  0x00007fe9 
- 00196645  0x000091fb fetch  0x00000001 , 0x000047a1 
- 00196646  0x000091fc nrtn  0x00000034 
- 00196647  0x000091fd fetch  0x00000001 , 0x00000478 
- 00196648  0x000091fe sub  0x0000003f , 0x0000001a , 0x0000003f 
- 00196649  0x000091ff nrtn  0x00000005 
- 00196650  0x00009200 jam  0x00000000 , 0x000046c6 
- 00196651  0x00009201 branch  0x00003d60 
- 00196652  0x00009204 call  0x000033af 
- 00196653  0x00009205 call  0x000026e9 
- 00196654  0x00009206 jam  0x00000002 , 0x00000a99 
- 00196655  0x00009207 call  0x00007d86 
- 00196656  0x00009208 call  0x00005cf7 
- 00196657  0x00009209 call  0x00004d6b 
- 00196658  0x0000920a branch  0x0000246e 
- 00262145  0x0000920f beq  0x00000030 , 0x00040003 
- 00262146  0x00009210 rtn 
- 00262147  0x00009213 call  0x000002cc 
- 00262148  0x00009214 jam  0x00000000 , 0x00004b6e 
- 00262149  0x00009215 jam  0x00000001 , 0x00004b6b 
- 00262150  0x00009216 jam  0x00000001 , 0x00004720 
- 00262151  0x00009217 jam  0x00000000 , 0x0000479e 
- 00262152  0x00009219 fetch  0x00000006 , 0x00004b62 
- 00262153  0x0000921a store  0x00000006 , 0x000044a0 
- 00262154  0x0000921b call  0x00000366 
- 00262155  0x0000921c call  0x00003418 
- 00262156  0x0000921d fetch  0x00000002 , 0x00004687 
- 00262157  0x0000921e store  0x00000002 , 0x000046ac 
- 00262158  0x0000921f jam  0x00000006 , 0x0000016d 
- 00262159  0x00009220 setarg  0x00000000 
- 00262160  0x00009221 store  0x00000002 , 0x000046b0 
- 00262161  0x00009222 store  0x00000002 , 0x000046ae 
- 00262162  0x00009223 call  0x00000499 
- 00262163  0x00009224 call  0x000043ca 
- 00262164  0x00009226 call  0x00000355 
- 00262165  0x00009227 fetch  0x00000001 , 0x00004210 
- 00262166  0x00009228 sub  0x0000003f , 0x00000033 , 0x0000003e 
- 00262167  0x00009229 call  0x0004001e , 0x00000005 
- 00262168  0x0000922b fetch  0x00000001 , 0x00004b6c 
- 00262169  0x0000922c ncall  0x0004001e , 0x00000034 
- 00262170  0x0000922e fetch  0x00000001 , 0x00004092 
- 00262171  0x0000922f isolate1  0x00000000 , 0x0000003f 
- 00262172  0x00009230 call  0x00007ddd , 0x00000001 
- 00262173  0x00009232 rtn 
- 00262174  0x00009236 fetch  0x00000006 , 0x00004b62 
- 00262175  0x00009237 store  0x00000006 , 0x000044a0 
- 00262176  0x00009238 call  0x00000491 
- 00262177  0x00009239 branch  0x00007df4 
- 00327681  0x0000923e beq  0x00000040 , 0x00050005 
- 00327682  0x0000923f beq  0x00000041 , 0x00050017 
- 00327683  0x00009240 beq  0x00000042 , 0x0005001f 
- 00327684  0x00009241 rtn 
- 00327685  0x00009244 call  0x0005000e 
- 00327686  0x00009245 branch  0x0000037a , 0x00000028 
- 00327687  0x00009246 set1  0x00000026 , 0x00000000 
- 00327688  0x00009247 fetch  0x00000001 , 0x00004d9b 
- 00327689  0x00009248 set1  0x00000002 , 0x0000003f 
- 00327690  0x00009249 store  0x00000001 , 0x00004d9b 
- 00327691  0x0000924a call  0x000001dc 
- 00327692  0x0000924b call  0x0000015e 
- 00327693  0x0000924c branch  0x0005001b 
- 00327694  0x0000924f arg  0x00000002 , 0x00000039 
- 00327695  0x00009250 arg  0x00004c6f , 0x00000006 
- 00327696  0x00009251 call  0x00007fe7 
- 00327697  0x00009252 setarg  0x0000ffff 
- 00327698  0x00009254 ifetcht  0x00000002 , 0x00000006 
- 00327699  0x00009255 isub  0x00000002 , 0x0000003e 
- 00327700  0x00009256 ncall  0x00007fe9 , 0x00000005 
- 00327701  0x00009257 loop  0x00050012 
- 00327702  0x00009258 rtn 
- 00327703  0x0000925b set1  0x00000026 , 0x00000000 
- 00327704  0x0000925c fetch  0x00000001 , 0x00004d9b 
- 00327705  0x0000925d set1  0x00000001 , 0x0000003f 
- 00327706  0x0000925e store  0x00000001 , 0x00004d9b 
- 00327707  0x00009260 setarg  0x0000003c 
- 00327708  0x00009261 store  0x00000002 , 0x00004d93 
- 00327709  0x00009262 jam  0x00000000 , 0x00004d92 
- 00327710  0x00009263 rtn 
- 00327711  0x00009266 fetch  0x00000004 , 0x000046d3 
- 00327712  0x00009267 rtnbit0  0x00000011 
- 00327713  0x00009268 rtnbit1  0x00000003 
- 00327714  0x00009269 rtnmark1  0x00000026 
- 00327715  0x0000926a call  0x00004482 
- 00327716  0x0000926b arg  0x00000003 , 0x00000007 
- 00327717  0x0000926c call  0x000043ce 
- 00327718  0x0000926d setarg  0x00000000 
- 00327719  0x0000926e store  0x00000002 , 0x000046ae 
- 00327720  0x0000926f store  0x00000001 , 0x000046b4 
- 00327721  0x00009270 store  0x00000002 , 0x00004c74 
- 00327722  0x00009271 call  0x000042ca 
- 00327723  0x00009272 branch  0x0000037a 
- 00393217  0x00009279 beq  0x00000051 , 0x0006000a 
- 00393218  0x0000927a beq  0x00000052 , 0x00060011 
- 00393219  0x0000927b beq  0x00000053 , 0x00060021 
- 00393220  0x0000927d arg  0x00000003 , 0x00000007 
- 00393221  0x0000927e call  0x000043d2 
- 00393222  0x0000927f jam  0x00000000 , 0x000046a7 
- 00393223  0x00009280 call  0x0000405d 
- 00393224  0x00009281 call  0x000002cc 
- 00393225  0x00009282 branch  0x00060011 
- 00393226  0x00009285 jam  0x00000000 , 0x00004d87 
- 00393227  0x00009286 call  0x000002cc 
- 00393228  0x00009287 call  0x000001f3 
- 00393229  0x00009288 call  0x00000355 
- 00393230  0x00009289 fetch  0x00000001 , 0x00004b76 
- 00393231  0x0000928a rtnne  0x00000002 
- 00393232  0x0000928b branch  0x0000340a 
- 00393233  0x0000928e jam  0x00000000 , 0x00004b42 
- 00393234  0x0000928f jam  0x00000000 , 0x00004b77 
- 00393235  0x00009290 setarg  0x00000000 
- 00393236  0x00009291 store  0x00000003 , 0x00004b68 
- 00393237  0x00009292 call  0x000041c6 
- 00393238  0x00009295 call  0x0006001e 
- 00393239  0x00009296 call  0x00000503 
- 00393240  0x00009297 call  0x00003f8d 
- 00393241  0x00009298 fetch  0x00000004 , 0x00004c6f 
- 00393242  0x00009299 store  0x00000004 , 0x0000477b 
- 00393243  0x0000929a call  0x00004366 
- 00393244  0x0000929b jam  0x00000002 , 0x00004b76 
- 00393245  0x0000929c branch  0x00000325 
- 00393246  0x0000929f setarg  0x00000000 
- 00393247  0x000092a0 store  0x00000003 , 0x00004d92 
- 00393248  0x000092a1 rtn 
- 00393249  0x000092a4 fetch  0x00000001 , 0x00004d92 
- 00393250  0x000092a5 beq  0x00000001 , 0x00002dd4 
- 00393251  0x000092a6 call  0x00060030 
- 00393252  0x000092a7 call  0x000001aa 
- 00393253  0x000092a8 nbranch  0x0000015e , 0x00000018 
- 00393254  0x000092a9 nbranch  0x0000015e , 0x0000002f 
- 00393255  0x000092aa fetch  0x00000001 , 0x00004d9b 
- 00393256  0x000092ab set0  0x00000002 , 0x0000003f 
- 00393257  0x000092ac store  0x00000001 , 0x00004d9b 
- 00393258  0x000092ae jam  0x00000000 , 0x00004b42 
- 00393259  0x000092af call  0x00002f20 
- 00393260  0x000092b0 call  0x000001a7 
- 00393261  0x000092b1 branch  0x0000037f 
- 00393262  0x000092b5 fetch  0x00000004 , 0x00004c27 
- 00393263  0x000092b6 branch  0x000001db 
- 00393264  0x000092b9 jam  0x000000ff , 0x0000119e 
- 00393265  0x000092ba fetch  0x00000001 , 0x00004c48 
- 00393266  0x000092bb store  0x00000001 , 0x0000119f 
- 00393267  0x000092bc fetch  0x00000004 , 0x00004c7e 
- 00393268  0x000092bd store  0x00000004 , 0x000011a0 
- 00393269  0x000092be arg  0x00000006 , 0x00000002 
- 00393270  0x000092bf arg  0x0000119e , 0x00000011 
- 00393271  0x000092c0 call  0x000001f8 
- 00393272  0x000092c1 branch  0x0000020a 
- 00458753  0x000092cb fetch  0x00000001 , 0x00004d92 
- 00458754  0x000092cc beq  0x00000001 , 0x00002dd4 
- 00458755  0x000092cd jam  0x000000ff , 0x0000119e 
- 00458756  0x000092ce fetch  0x00000001 , 0x00004c48 
- 00458757  0x000092cf store  0x00000001 , 0x0000119f 
- 00458758  0x000092d0 fetch  0x00000004 , 0x00004c7e 
- 00458759  0x000092d1 store  0x00000004 , 0x000011a0 
- 00458760  0x000092d2 arg  0x00000006 , 0x00000002 
- 00458761  0x000092d3 arg  0x0000119e , 0x00000011 
- 00458762  0x000092d4 call  0x000001f8 
- 00458763  0x000092d5 call  0x0000020a 
- 00458764  0x000092d6 call  0x000001aa 
- 00458765  0x000092d7 nbranch  0x00070026 , 0x00000018 
- 00458766  0x000092d8 nbranch  0x00070026 , 0x0000002f 
- 00458767  0x000092d9 call  0x000001d0 
- 00458768  0x000092da fetch  0x00000004 , 0x00004c6f 
- 00458769  0x000092db fetcht  0x00000004 , 0x00004d8c 
- 00458770  0x000092dc isub  0x00000002 , 0x0000003e 
- 00458771  0x000092dd branch  0x00070016 , 0x00000005 
- 00458772  0x000092de fetch  0x00000001 , 0x00004c45 
- 00458773  0x000092df rtnne  0x00000008 
- 00458774  0x000092e4 jam  0x00000000 , 0x00004d9b 
- 00458775  0x000092e5 call  0x000002cc 
- 00458776  0x000092e6 fetch  0x00000004 , 0x00004c6f 
- 00458777  0x000092e7 fetcht  0x00000004 , 0x00004c53 
- 00458778  0x000092e8 isub  0x00000002 , 0x0000003e 
- 00458779  0x000092e9 branch  0x000001e9 , 0x00000005 
- 00458780  0x000092ea fetch  0x00000004 , 0x00004c6f 
- 00458781  0x000092eb fetcht  0x00000004 , 0x00004c7e 
- 00458782  0x000092ec isub  0x00000002 , 0x0000003e 
- 00458783  0x000092ed call  0x00070024 , 0x00000005 
- 00458784  0x000092ee jam  0x00000000 , 0x00004b42 
- 00458785  0x000092ef call  0x00002f20 
- 00458786  0x000092f0 call  0x000001a7 
- 00458787  0x000092f1 branch  0x0000037f 
- 00458788  0x000092f4 fetch  0x00000004 , 0x00004c27 
- 00458789  0x000092f5 branch  0x000001db 
- 00458790  0x000092f9 fetch  0x00000001 , 0x00004d85 
- 00458791  0x000092fa increase  0x00000001 , 0x0000003f 
- 00458792  0x000092fb and_into  0x00000003 , 0x0000003f 
- 00458793  0x000092fc store  0x00000001 , 0x00004d85 
- 00458794  0x000092fd beq  0x00000000 , 0x0007002d 
- 00458795  0x000092fe beq  0x00000002 , 0x00070037 
- 00458796  0x000092ff branch  0x000001d7 
- 00458797  0x00009302 call  0x000002cc 
- 00458798  0x00009303 fetch  0x00000004 , 0x00004c7e 
- 00458799  0x00009304 store  0x00000004 , 0x00004c6f 
- 00458800  0x00009305 fetch  0x00000001 , 0x00004d95 
- 00458801  0x00009306 store  0x00000001 , 0x00004c52 
- 00458802  0x00009307 call  0x00070035 
- 00458803  0x00009308 storet  0x00000001 , 0x00004d95 
- 00458804  0x00009309 rtn 
- 00458805  0x0000930c call  0x000001dc 
- 00458806  0x0000930d branch  0x0000015e 
- 00458807  0x00009310 jam  0x00000020 , 0x000041de 
- 00458808  0x00009311 fetch  0x00000004 , 0x00004d8c 
- 00458809  0x00009312 store  0x00000004 , 0x00004c6f 
- 00458810  0x00009313 fetch  0x00000001 , 0x00004d96 
- 00458811  0x00009314 store  0x00000001 , 0x00004c52 
- 00458812  0x00009315 call  0x00070035 
- 00458813  0x00009316 storet  0x00000001 , 0x00004d96 
- 00458814  0x00009317 rtn 
- 00524289  0x0000931c beq  0x00000070 , 0x00080004 
- 00524290  0x0000931d beq  0x00000071 , 0x0008000b 
- 00524291  0x0000931e rtn 
- 00524292  0x00009321 setarg  0xffffffff 
- 00524293  0x00009322 store  0x00000006 , 0x00000040 
- 00524294  0x00009323 jam  0x00000033 , 0x00000185 
- 00524295  0x00009324 jam  0x000000ff , 0x00004b75 
- 00524296  0x00009325 call  0x000042fb 
- 00524297  0x00009326 jam  0x000000ff , 0x00004721 
- 00524298  0x00009327 branch  0x00000325 
- 00524299  0x0000932a fetch  0x00000001 , 0x00004b42 
- 00524300  0x0000932b rtn  0x00000034 
- 00524301  0x0000932c fetch  0x00000001 , 0x00004c73 
- 00524302  0x0000932d rtn  0x00000034 
- 00524303  0x0000932e fetch  0x00000001 , 0x00004d9a 
- 00524304  0x0000932f increase  0x00000001 , 0x0000003f 
- 00524305  0x00009330 and_into  0x00000003 , 0x0000003f 
- 00524306  0x00009331 store  0x00000001 , 0x00004d9a 
- 00524307  0x00009332 nrtn  0x00000034 
- 00524308  0x00009333 jam  0x00000000 , 0x00004d99 
- 00524309  0x00009335 fetch  0x00000001 , 0x00004d99 
- 00524310  0x00009336 increase  0x00000001 , 0x0000003f 
- 00524311  0x00009337 store  0x00000001 , 0x00004d99 
- 00524312  0x00009338 sub  0x0000003f , 0x00000008 , 0x0000003e 
- 00524313  0x00009339 nbranch  0x0008001f , 0x00000002 
- 00524314  0x0000933a call  0x00080025 
- 00524315  0x0000933b call  0x000001aa 
- 00524316  0x0000933c nbranch  0x0008002e , 0x00000018 
- 00524317  0x0000933d nbranch  0x0008002e , 0x0000002f 
- 00524318  0x0000933e call  0x00000116 
- 00524319  0x00009340 call  0x000001a7 
- 00524320  0x00009341 fetch  0x00000001 , 0x00004d98 
- 00524321  0x00009342 increase  0x00000001 , 0x0000003f 
- 00524322  0x00009343 store  0x00000001 , 0x00004d98 
- 00524323  0x00009344 beq  0x00000010 , 0x0000010e 
- 00524324  0x00009345 rtn 
- 00524325  0x00009348 jam  0x000000ff , 0x0000119e 
- 00524326  0x00009349 fetch  0x00000001 , 0x00004c48 
- 00524327  0x0000934a store  0x00000001 , 0x0000119f 
- 00524328  0x0000934b fetch  0x00000004 , 0x00004c7e 
- 00524329  0x0000934c store  0x00000004 , 0x000011a0 
- 00524330  0x0000934d arg  0x00000006 , 0x00000002 
- 00524331  0x0000934e arg  0x0000119e , 0x00000011 
- 00524332  0x0000934f call  0x000001f8 
- 00524333  0x00009350 branch  0x0000020a 
- 00524334  0x00009353 call  0x0000015e 
- 00524335  0x00009354 branch  0x00080015 
- 00589825  0x0000935e call  0x00003e6e 
- 00589826  0x00009360 fetcht  0x00000001 , 0x00004b45 
- 00589827  0x00009361 call  0x0000680e 
- 00589828  0x00009362 call  0x00090013 
- 00589829  0x00009364 call  0x000063ee 
- 00589830  0x00009365 call  0x0009002e 
- 00589831  0x00009366 arg  0x0000001a , 0x00000002 
- 00589832  0x00009367 call  0x000067fb 
- 00589833  0x0000936c call  0x00003e54 
- 00589834  0x0000936d call  0x00000318 
- 00589835  0x0000936e fetch  0x00000001 , 0x00004720 
- 00589836  0x0000936f rtneq  0x00000002 
- 00589837  0x00009370 fetch  0x00000006 , 0x00004b4c 
- 00589838  0x00009371 fetcht  0x00000006 , 0x00004722 
- 00589839  0x00009372 isub  0x00000002 , 0x0000003e 
- 00589840  0x00009373 nbranch  0x00000366 , 0x00000005 
- 00589841  0x00009374 branch  0x00000368 
- 00589842  0x00009375 rtn 
- 00589843  0x00009378 call  0x000074b9 
- 00589844  0x00009379 arg  0x00008c00 , 0x00000006 
- 00589845  0x0000937a arg  0x00004876 , 0x00000005 
- 00589846  0x0000937b arg  0x00000171 , 0x00000039 
- 00589847  0x0000937c call  0x00007f01 
- 00589848  0x0000937e setarg  0x000f0209 
- 00589849  0x0000937f istore  0x00000003 , 0x00000005 
- 00589850  0x00009380 setarg  0x00120009 
- 00589851  0x00009381 istore  0x00000003 , 0x00000005 
- 00589852  0x00009383 setarg  0x00100209 
- 00589853  0x00009384 istore  0x00000003 , 0x00000005 
- 00589854  0x00009385 setarg  0x00000009 
- 00589855  0x00009386 istore  0x00000003 , 0x00000005 
- 00589856  0x00009387 arg  0x00008d71 , 0x00000006 
- 00589857  0x00009388 arg  0x00000109 , 0x00000039 
- 00589858  0x00009389 call  0x00007f01 
- 00589859  0x0000938b jam  0x00000000 , 0x0000488d 
- 00589860  0x0000938c jam  0x0000006d , 0x00004885 
- 00589861  0x0000938d setarg  0x0000401f 
- 00589862  0x0000938e store  0x00000002 , 0x000049db 
- 00589863  0x0000938f setarg  0x00006d04 
- 00589864  0x00009390 store  0x00000002 , 0x00004a44 
- 00589865  0x00009391 setarg  0x000016b0 
- 00589866  0x00009392 store  0x00000002 , 0x00004a4a 
- 00589867  0x00009394 setarg  0x00004876 
- 00589868  0x00009395 store  0x00000002 , 0x00004575 
- 00589869  0x00009396 rtn 
- 00589870  0x0000939a hfetch  0x00000001 , 0x0000807b 
- 00589871  0x0000939b set0  0x00000005 , 0x0000003f 
- 00589872  0x0000939c hstore  0x00000001 , 0x0000807b 
- 00589873  0x000093a3 arg  0x0000001a , 0x00000002 
- 00589874  0x000093a4 call  0x00000567 
- 00589875  0x000093a5 arg  0x0000001a , 0x00000002 
- 00589876  0x000093a6 call  0x0000681d 
- 00589877  0x000093a7 fetcht  0x00000001 , 0x000046f7 
- 00589878  0x000093a8 set0  0x00000007 , 0x00000002 
- 00589879  0x000093a9 call  0x000067fb 
- 00589880  0x000093aa fetcht  0x00000001 , 0x000046f7 
- 00589881  0x000093ab call  0x0000681d 
- 00589882  0x000093ac jam  0x00000003 , 0x000046f6 
- 00589883  0x000093ad rtn  0x00000001 
- 00589884  0x000093ae jam  0x00000000 , 0x000046f6 
- 00589885  0x000093af rtn 
- 00655361  0x000093b5 beq  0x00000090 , 0x000a0004 
- 00655362  0x000093b6 beq  0x00000091 , 0x000a001e 
- 00655363  0x000093b7 rtn 
- 00655364  0x000093ba fetch  0x00000001 , 0x00004c4c 
- 00655365  0x000093bb beq  0x00000001 , 0x00007fe7 
- 00655366  0x000093bc fetch  0x00000001 , 0x00004c57 
- 00655367  0x000093bd beq  0x00000001 , 0x000a000b 
- 00655368  0x000093be beq  0x00000002 , 0x000a000e 
- 00655369  0x000093bf beq  0x00000003 , 0x000a0011 
- 00655370  0x000093c0 branch  0x00002a8c 
- 00655371  0x000093c3 jam  0x00000011 , 0x00004c57 
- 00655372  0x000093c4 jam  0x000000aa , 0x0000119e 
- 00655373  0x000093c5 branch  0x000a0013 
- 00655374  0x000093c7 jam  0x00000012 , 0x00004c57 
- 00655375  0x000093c8 jam  0x00000055 , 0x0000119e 
- 00655376  0x000093c9 branch  0x000a0013 
- 00655377  0x000093cb jam  0x00000013 , 0x00004c57 
- 00655378  0x000093cc jam  0x00000022 , 0x0000119e 
- 00655379  0x000093ce fetch  0x00000001 , 0x00004c48 
- 00655380  0x000093cf and_into  0x00000007 , 0x0000003f 
- 00655381  0x000093d0 store  0x00000001 , 0x0000119f 
- 00655382  0x000093d1 fetch  0x00000004 , 0x00004c7e 
- 00655383  0x000093d2 store  0x00000004 , 0x000011a0 
- 00655384  0x000093d4 jam  0x00000000 , 0x000011a4 
- 00655385  0x000093d5 arg  0x0000119e , 0x00000011 
- 00655386  0x000093d6 arg  0x00000007 , 0x00000002 
- 00655387  0x000093d7 call  0x000001f8 
- 00655388  0x000093d8 call  0x00000173 
- 00655389  0x000093d9 branch  0x00007fe7 
- 00655390  0x000093dc fetch  0x00000001 , 0x00004c57 
- 00655391  0x000093dd rtneq  0x000000ff 
- 00655392  0x000093de beq  0x00000011 , 0x000a0024 
- 00655393  0x000093df beq  0x00000012 , 0x000a0026 
- 00655394  0x000093e0 beq  0x00000013 , 0x000a0028 
- 00655395  0x000093e1 rtn 
- 00655396  0x000093e4 jam  0x00000002 , 0x00004c57 
- 00655397  0x000093e5 branch  0x000001a3 
- 00655398  0x000093e7 jam  0x00000003 , 0x00004c57 
- 00655399  0x000093e8 branch  0x000001a3 
- 00655400  0x000093ea jam  0x000000ff , 0x00004c57 
- 00655401  0x000093eb jam  0x00000039 , 0x00000a99 
- 00655402  0x000093ec call  0x00007d86 
- 00655403  0x000093ed fetch  0x00000004 , 0x00004c27 
- 00655404  0x000093ee call  0x000001db 
- 00655405  0x000093ef branch  0x000001a3 
- 00720897  0x000093f5 beq  0x000000a0 , 0x000b002b 
- 00720898  0x000093f6 beq  0x000000a1 , 0x000b0006 
- 00720899  0x000093f7 beq  0x000000a2 , 0x000b001b 
- 00720900  0x000093f8 beq  0x000000a3 , 0x000b0014 
- 00720901  0x000093f9 rtn 
- 00720902  0x000093fc fetch  0x00000002 , 0x00004509 
- 00720903  0x000093fd rtneq  0x00000000 
- 00720904  0x000093fe fetch  0x00000001 , 0x00000441 
- 00720905  0x000093ff rshift2  0x0000003f , 0x0000003f 
- 00720906  0x00009400 sub  0x0000003f , 0x0000000c , 0x0000003e 
- 00720907  0x00009401 branch  0x000b0012 , 0x00000002 
- 00720908  0x00009402 setarg  0x00000009 
- 00720909  0x00009403 store  0x00000002 , 0x00004496 
- 00720910  0x00009404 store  0x00000002 , 0x00004498 
- 00720911  0x00009405 call  0x0000043a 
- 00720912  0x00009406 jam  0x00000001 , 0x000047c4 
- 00720913  0x00009407 rtn 
- 00720914  0x0000940a jam  0x00000001 , 0x00004b61 
- 00720915  0x0000940b branch  0x000005e4 
- 00720916  0x0000940f fetch  0x00000002 , 0x00004682 
- 00720917  0x00009410 rtnbit1  0x0000000c 
- 00720918  0x00009411 rtnbit1  0x00000006 
- 00720919  0x00009412 rtnbit1  0x0000000b 
- 00720920  0x00009413 fetch  0x00000004 , 0x000046d3 
- 00720921  0x00009414 rtnbit1  0x00000005 
- 00720922  0x00009415 branch  0x000033a7 
- 00720923  0x00009418 jam  0x00000000 , 0x00004b6f 
- 00720924  0x00009419 setarg  0x00000007 
- 00720925  0x0000941a store  0x00000002 , 0x00004496 
- 00720926  0x0000941b store  0x00000002 , 0x00004498 
- 00720927  0x0000941c jam  0x00000000 , 0x000047c4 
- 00720928  0x0000941d jam  0x00000000 , 0x0000479e 
- 00720929  0x0000941e call  0x000003bb 
- 00720930  0x0000941f call  0x00005816 
- 00720931  0x00009420 call  0x000041d9 
- 00720932  0x00009421 call  0x00000325 
- 00720933  0x00009422 fetch  0x00000001 , 0x00004b6b 
- 00720934  0x00009423 rtn  0x00000034 
- 00720935  0x00009425 fetch  0x00000006 , 0x00004b62 
- 00720936  0x00009426 store  0x00000006 , 0x000044a0 
- 00720937  0x00009427 call  0x00000491 
- 00720938  0x00009428 branch  0x00007df4 
- 00720939  0x0000942b hfetch  0x00000004 , 0x00008138 
- 00720940  0x0000942c set1  0x0000001a , 0x0000003f 
- 00720941  0x0000942d hstore  0x00000004 , 0x0000804c 
- 00720942  0x0000942e call  0x00002c21 
- 00720943  0x0000942f call  0x000074bd 
- 00720944  0x00009430 call  0x00004482 
- 00720945  0x00009432 call  0x00000325 
- 00720946  0x00009433 call  0x00003e9f 
- 00720947  0x00009434 call  0x000000ec 
- 00720948  0x00009436 call  0x0000035c 
- 00720949  0x00009437 hfetch  0x00000001 , 0x00008081 
- 00720950  0x00009438 and  0x0000003f , 0x000000f7 , 0x0000003f 
- 00720951  0x00009439 hstore  0x00000001 , 0x00008081 
- 00720952  0x0000943a hfetch  0x00000001 , 0x0000807f 
- 00720953  0x0000943b set1  0x00000000 , 0x0000003f 
- 00720954  0x0000943c hstore  0x00000001 , 0x0000807f 
- 00720955  0x0000943d rtn 
- 00786433  0x00009442 beq  0x000000b1 , 0x000c0006 
- 00786434  0x00009443 beq  0x000000b2 , 0x000c000c 
- 00786435  0x00009444 beq  0x000000b3 , 0x000c0011 
- 00786436  0x00009445 beq  0x000000b4 , 0x000c0019 
- 00786437  0x00009446 rtn 
- 00786438  0x00009449 fetch  0x00000001 , 0x00004808 
- 00786439  0x0000944a rtneq  0x00000002 
- 00786440  0x0000944b increase  0x00000001 , 0x0000003f 
- 00786441  0x0000944c store  0x00000001 , 0x00004808 
- 00786442  0x0000944d jam  0x00000012 , 0x000041e3 
- 00786443  0x0000944e branch  0x0000340e 
- 00786444  0x00009451 fetch  0x00000001 , 0x00004808 
- 00786445  0x00009452 rtnne  0x00000002 
- 00786446  0x00009453 jam  0x00000000 , 0x00004808 
- 00786447  0x00009454 jam  0x0000000e , 0x000041e3 
- 00786448  0x00009455 branch  0x0000340e 
- 00786449  0x00009458 fetch  0x00000001 , 0x000047a1 
- 00786450  0x00009459 beq  0x00000001 , 0x000c0015 
- 00786451  0x0000945a jam  0x00000014 , 0x000046c6 
- 00786452  0x0000945b branch  0x000c0017 
- 00786453  0x0000945d call  0x0000043a 
- 00786454  0x0000945e jam  0x0000000a , 0x000046c6 
- 00786455  0x00009460 arg  0x00000001 , 0x00000007 
- 00786456  0x00009461 branch  0x000041b9 
- 00786457  0x00009464 jam  0x00000000 , 0x00004aff 
- 00786458  0x00009465 jam  0x00000000 , 0x00004b01 
- 00786459  0x00009466 jam  0x00000000 , 0x00004b0a 
- 00786460  0x00009467 call  0x00000325 
- 00786461  0x00009468 branch  0x000041d9 
+ 00000696  0x0000044c fetch  0x00000001 , 0x00004241 
+ 00000697  0x0000044d bbit1  0x00000002 , 0x000002be 
+ 00000698  0x0000044e fetch  0x00000001 , 0x00004b76 
+ 00000699  0x0000044f beq  0x00000002 , 0x000001f1 
+ 00000700  0x00000450 jam  0x000000ff , 0x00004b76 
+ 00000701  0x00000451 branch  0x00000368 
+ 00000702  0x00000454 call  0x00000346 
+ 00000703  0x00000455 fetch  0x00000001 , 0x00004b76 
+ 00000704  0x00000456 beq  0x00000001 , 0x000002c4 
+ 00000705  0x00000457 beq  0x00000002 , 0x000001f1 
+ 00000706  0x00000458 jam  0x0000000a , 0x00004b77 
+ 00000707  0x00000459 rtn 
+ 00000708  0x0000045c jam  0x00000001 , 0x00004d94 
+ 00000709  0x0000045d call  0x000002cd 
+ 00000710  0x0000045e fetch  0x00000001 , 0x00004210 
+ 00000711  0x0000045f beq  0x00000033 , 0x000002d0 
+ 00000712  0x00000460 beq  0x00000034 , 0x000002d3 
+ 00000713  0x00000461 call  0x000004ee 
+ 00000714  0x00000462 jam  0x00000006 , 0x0000016d 
+ 00000715  0x00000463 call  0x0000048d 
+ 00000716  0x00000464 branch  0x00007ddd 
+ 00000717  0x0000046a fetch  0x00000001 , 0x00004d00 
+ 00000718  0x0000046b store  0x00000001 , 0x000041de 
+ 00000719  0x0000046c rtn 
+ 00000720  0x00000473 fetch  0x00000006 , 0x000041d0 
+ 00000721  0x00000474 branch  0x000033eb , 0x00000034 
+ 00000722  0x00000475 branch  0x00004274 
+ 00000723  0x00000478 jam  0x00000012 , 0x000011c6 
+ 00000724  0x00000479 branch  0x00000765 
+ 00000725  0x00000482 call  0x00000324 
+ 00000726  0x00000483 call  0x000040c0 
+ 00000727  0x00000485 call  0x000040d9 
+ 00000728  0x00000486 beq  0x00000030 , 0x000002dd 
+ 00000729  0x00000487 beq  0x00000031 , 0x000002f2 
+ 00000730  0x00000488 call  0x000040d1 
+ 00000731  0x00000489 nop  0x000003e8 
+ 00000732  0x0000048a branch  0x000002d7 
+ 00000733  0x0000048d call  0x00000390 
+ 00000734  0x0000048e fetch  0x00000001 , 0x000046de 
+ 00000735  0x0000048f beq  0x0000005a , 0x000002e2 
+ 00000736  0x00000490 beq  0x00000054 , 0x000002ef 
+ 00000737  0x00000492 branch  0x000040e0 
+ 00000738  0x00000495 jam  0x00000007 , 0x000046e0 
+ 00000739  0x00000496 setarg  0x00008006 
+ 00000740  0x00000497 call  0x00006413 
+ 00000741  0x00000498 call  0x00007ec1 
+ 00000742  0x00000499 arg  0x00004b7a , 0x00000013 
+ 00000743  0x0000049b ifetch  0x00000002 , 0x00000013 
+ 00000744  0x0000049c arg  0x0000ffff , 0x00000002 
+ 00000745  0x0000049d isub  0x00000002 , 0x0000003e 
+ 00000746  0x0000049e rtn  0x00000005 
+ 00000747  0x0000049f call  0x00006413 
+ 00000748  0x000004a0 nop  0x00002ee0 
+ 00000749  0x000004a1 increase  0x00000002 , 0x00000013 
+ 00000750  0x000004a2 branch  0x000002e7 
+ 00000751  0x000004a5 jam  0x00000002 , 0x000046e0 
+ 00000752  0x000004a6 arg  0x00004b94 , 0x00000013 
+ 00000753  0x000004a7 branch  0x000002e7 
+ 00000754  0x000004bb call  0x00000390 
+ 00000755  0x000004bc fetch  0x00000001 , 0x000046de 
+ 00000756  0x000004bd beq  0x00000070 , 0x000040e8 
+ 00000757  0x000004be jam  0x00000001 , 0x000046e0 
+ 00000758  0x000004bf rtn 
+ 00000759  0x000004c2 jam  0x00000080 , 0x000011c6 
+ 00000760  0x000004c3 branch  0x00000765 
+ 00000761  0x000004c7 fetcht  0x00000001 , 0x00004b45 
+ 00000762  0x000004c8 branch  0x00006825 
+ 00000763  0x000004cb jam  0x00000040 , 0x00008086 
+ 00000764  0x000004cc jam  0x00000000 , 0x00008087 
+ 00000765  0x000004cd hfetch  0x00000001 , 0x00008081 
+ 00000766  0x000004ce set0  0x00000000 , 0x0000003f 
+ 00000767  0x000004cf set0  0x00000001 , 0x0000003f 
+ 00000768  0x000004d0 set1  0x00000003 , 0x0000003f 
+ 00000769  0x000004d1 set0  0x00000004 , 0x0000003f 
+ 00000770  0x000004d2 hstore  0x00000001 , 0x00008081 
+ 00000771  0x000004d3 setarg  0x00000000 
+ 00000772  0x000004d4 store  0x00000004 , 0x000001f5 
+ 00000773  0x000004d5 hfetch  0x00000001 , 0x0000807f 
+ 00000774  0x000004d6 set0  0x00000000 , 0x0000003f 
+ 00000775  0x000004d7 hstore  0x00000001 , 0x0000807f 
+ 00000776  0x000004d8 rtn 
+ 00000777  0x000004db call  0x00000355 
+ 00000778  0x000004dc call  0x00004423 
+ 00000779  0x000004dd fetch  0x00000002 , 0x00004778 
+ 00000780  0x000004de arg  0x0000aa55 , 0x00000002 
+ 00000781  0x000004df isub  0x00000002 , 0x0000003e 
+ 00000782  0x000004e0 branch  0x00000346 , 0x00000005 
+ 00000783  0x000004e1 storet  0x00000002 , 0x00004778 
+ 00000784  0x000004e2 call  0x0000441c 
+ 00000785  0x000004e3 fetch  0x00000001 , 0x000046e1 
+ 00000786  0x000004e4 store  0x00000001 , 0x0000477a 
+ 00000787  0x000004e5 fetch  0x00000004 , 0x00004b4c 
+ 00000788  0x000004e6 store  0x00000004 , 0x0000477b 
+ 00000789  0x000004e7 store  0x00000004 , 0x00004c71 
+ 00000790  0x000004e9 call  0x00000355 
+ 00000791  0x000004ea call  0x00000326 
+ 00000792  0x000004eb call  0x0000033d 
+ 00000793  0x000004ec call  0x00000332 
+ 00000794  0x000004ed call  0x00000329 
+ 00000795  0x000004f0 call  0x000002fb 
+ 00000796  0x000004f1 arg  0x00000007 , 0x00000002 
+ 00000797  0x000004f2 arg  0x00004b70 , 0x00000011 
+ 00000798  0x000004f3 arg  0x0000005f , 0x00000012 
+ 00000799  0x000004f4 fetch  0x00000003 , 0x00004700 
+ 00000800  0x000004f5 iadd  0x00000012 , 0x0000003f 
+ 00000801  0x000004f6 call  0x00000332 
+ 00000802  0x000004f7 call  0x00000329 
+ 00000803  0x000004f8 call  0x0000034d 
+ 00000804  0x000004fa jam  0x00000076 , 0x00004212 
+ 00000805  0x000004fb branch  0x00003d36 
+ 00000806  0x000004fe fetch  0x00000003 , 0x00004700 
+ 00000807  0x000004ff store  0x00000003 , 0x00004232 
+ 00000808  0x00000500 call  0x0000652a 
+ 00000809  0x00000502 setarg  0x000186a0 
+ 00000810  0x00000503 call  0x00002a8f 
+ 00000811  0x00000504 call  0x0000650b 
+ 00000812  0x00000505 setarg  0x000001fa 
+ 00000813  0x00000506 hstore  0x00000002 , 0x0000808c 
+ 00000814  0x00000507 setarg  0x00000005 
+ 00000815  0x00000508 call  0x000064f3 
+ 00000816  0x00000509 bbit1  0x00000000 , 0x00000329 
+ 00000817  0x0000050a rtn 
+ 00000818  0x0000050d copy  0x0000003f , 0x00000013 
+ 00000819  0x0000050e copy  0x00000011 , 0x0000003f 
+ 00000820  0x0000050f increase  0xfffffffc , 0x0000003f 
+ 00000821  0x00000510 copy  0x0000003f , 0x00000012 
+ 00000822  0x00000511 ifetch  0x00000004 , 0x00000012 
+ 00000823  0x00000512 store  0x00000004 , 0x00004b47 
+ 00000824  0x00000513 copy  0x00000013 , 0x0000003f 
+ 00000825  0x00000514 call  0x00006552 
+ 00000826  0x00000515 fetch  0x00000004 , 0x00004b47 
+ 00000827  0x00000516 istore  0x00000004 , 0x00000012 
+ 00000828  0x00000517 rtn 
+ 00000829  0x0000051a setarg  0x0000477f 
+ 00000830  0x0000051b arg  0x00004720 , 0x00000002 
+ 00000831  0x0000051c isub  0x00000002 , 0x00000002 
+ 00000832  0x0000051d fetch  0x00000003 , 0x00004700 
+ 00000833  0x0000051e arg  0x00004720 , 0x00000011 
+ 00000834  0x0000051f rtn 
+ 00000835  0x00000522 call  0x00000355 
+ 00000836  0x00000523 call  0x0000033d 
+ 00000837  0x00000524 branch  0x00006562 
+ 00000838  0x00000527 call  0x00000343 
+ 00000839  0x00000528 call  0x0000035f 
+ 00000840  0x0000052b call  0x00004364 
+ 00000841  0x0000052c call  0x0000431a 
+ 00000842  0x0000052d fetch  0x00000004 , 0x0000477b 
+ 00000843  0x0000052e store  0x00000004 , 0x00004c71 
+ 00000844  0x0000052f rtn 
+ 00000845  0x00000532 jam  0x000000b9 , 0x00000aa2 
+ 00000846  0x00000534 call  0x000002fb 
+ 00000847  0x00000535 call  0x000069ac 
+ 00000848  0x00000536 call  0x0000650b 
+ 00000849  0x00000537 arg  0x00004b47 , 0x00000011 
+ 00000850  0x00000538 fetcht  0x00000001 , 0x00000aa2 
+ 00000851  0x00000539 call  0x00006556 
+ 00000852  0x0000053a branch  0x000069ac 
+ 00000853  0x0000053d jam  0x000000ab , 0x00000aa2 
+ 00000854  0x0000053e branch  0x0000034e 
+ 00000855  0x00000541 jam  0x0000005a , 0x00004b75 
+ 00000856  0x00000542 rtn 
+ 00000857  0x00000544 jam  0x00000001 , 0x00004b69 
+ 00000858  0x00000545 jam  0x00000001 , 0x00004b68 
+ 00000859  0x00000547 jam  0x000000ff , 0x00004b75 
+ 00000860  0x00000548 fetch  0x00000006 , 0x00004d8e 
+ 00000861  0x00000549 store  0x00000006 , 0x000044a0 
+ 00000862  0x0000054a rtn 
+ 00000863  0x0000054e call  0x00000355 
+ 00000864  0x0000054f arg  0x00000007 , 0x00000002 
+ 00000865  0x00000550 arg  0x00004b70 , 0x00000011 
+ 00000866  0x00000551 arg  0x0000005f , 0x00000012 
+ 00000867  0x00000552 fetch  0x00000003 , 0x00004700 
+ 00000868  0x00000553 iadd  0x00000012 , 0x0000003f 
+ 00000869  0x00000554 branch  0x00006562 
+ 00000870  0x00000575 fetch  0x00000001 , 0x00004241 
+ 00000871  0x00000576 bbit1  0x00000002 , 0x000001f1 
+ 00000872  0x00000578 fetch  0x00000004 , 0x00004b4c 
+ 00000873  0x00000579 store  0x00000004 , 0x00004c71 
+ 00000874  0x0000057a call  0x00000316 
+ 00000875  0x0000057c jam  0x00000041 , 0x000011c6 
+ 00000876  0x0000057d branch  0x00000765 
+ 00000877  0x00000580 call  0x00004401 
+ 00000878  0x00000581 fetch  0x00000002 , 0x0000469f 
+ 00000879  0x00000582 rtn  0x00000034 
+ 00000880  0x00000584 jam  0x00000001 , 0x00004d89 
+ 00000881  0x00000585 setarg  0x00000000 
+ 00000882  0x00000586 store  0x00000002 , 0x00004d8a 
+ 00000883  0x00000587 rtn 
+ 00000884  0x0000058a arg  0x00001800 , 0x00000006 
+ 00000885  0x0000058b arg  0x0000480a , 0x00000005 
+ 00000886  0x0000058c call  0x0000037c 
+ 00000887  0x0000058d arg  0x00001900 , 0x00000006 
+ 00000888  0x0000058e call  0x0000037c 
+ 00000889  0x0000058f arg  0x00001a00 , 0x00000006 
+ 00000890  0x00000590 call  0x0000037c 
+ 00000891  0x00000591 arg  0x00001b00 , 0x00000006 
+ 00000892  0x00000593 arg  0x0000001b , 0x00000039 
+ 00000893  0x00000594 branch  0x00007f01 
+ 00000894  0x00000597 arg  0x0000480a , 0x00000006 
+ 00000895  0x00000598 arg  0x00001800 , 0x00000005 
+ 00000896  0x00000599 call  0x0000037c 
+ 00000897  0x0000059a arg  0x00001900 , 0x00000005 
+ 00000898  0x0000059b call  0x0000037c 
+ 00000899  0x0000059c arg  0x00001a00 , 0x00000005 
+ 00000900  0x0000059d call  0x0000037c 
+ 00000901  0x0000059e arg  0x00001b00 , 0x00000005 
+ 00000902  0x0000059f branch  0x0000037c 
+ 00000903  0x000005a3 jam  0x00000000 , 0x00004172 
+ 00000904  0x000005a4 jam  0x0000001e , 0x00004b43 
+ 00000905  0x000005a5 rtn 
+ 00000906  0x000005a8 fetch  0x00000001 , 0x00004b42 
+ 00000907  0x000005a9 rtnne  0x00000001 
+ 00000908  0x000005aa setarg  0x00000000 
+ 00000909  0x000005ab store  0x00000001 , 0x00004b42 
+ 00000910  0x000005ac store  0x00000004 , 0x0000469b 
+ 00000911  0x000005ad branch  0x000003c9 
+ 00000912  0x000005b0 call  0x00000324 
+ 00000913  0x000005b1 arg  0x00004bb2 , 0x00000013 
+ 00000914  0x000005b2 call  0x000002e7 
+ 00000915  0x000005b4 fetch  0x00000001 , 0x0000477a 
+ 00000916  0x000005b5 bne  0x000000ff , 0x00000507 
+ 00000917  0x000005b7 fetch  0x00000001 , 0x000046e1 
+ 00000918  0x000005b8 store  0x00000001 , 0x0000477a 
+ 00000919  0x000005b9 branch  0x00000507 
+ 00000920  0x000005bc call  0x00005892 
+ 00000921  0x000005bd nrtn  0x00000034 
+ 00000922  0x000005be fetch  0x00000001 , 0x00004b75 
+ 00000923  0x000005bf beq  0x000000ff , 0x0000039f 
+ 00000924  0x000005c0 fetch  0x00000001 , 0x000046c5 
+ 00000925  0x000005c1 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000926  0x000005c2 rtnne  0x00000003 
+ 00000927  0x000005c4 fetch  0x00000001 , 0x0000479e 
+ 00000928  0x000005c5 call  0x000003c7 , 0x00000034 
+ 00000929  0x000005c6 fetch  0x00000004 , 0x000046d3 
+ 00000930  0x000005c7 bbit1  0x00000005 , 0x00004179 
+ 00000931  0x000005c8 call  0x00003f97 
+ 00000932  0x000005c9 nrtn  0x00000028 
+ 00000933  0x000005ca call  0x00000387 
+ 00000934  0x000005cb call  0x0000038a 
+ 00000935  0x000005cc call  0x000003c2 
+ 00000936  0x000005ce arg  0x0000469a , 0x00000011 
+ 00000937  0x000005cf call  0x00007e3d 
+ 00000938  0x000005d0 call  0x000003b1 , 0x00000028 
+ 00000939  0x000005d2 rtn 
+ 00000940  0x000005d5 jam  0x00000007 , 0x000047a2 
+ 00000941  0x000005d6 jam  0x00000004 , 0x000047a3 
+ 00000942  0x000005d7 setarg  0x000047a2 
+ 00000943  0x000005d8 store  0x00000002 , 0x00004218 
+ 00000944  0x000005d9 branch  0x00007e38 
+ 00000945  0x000005dc fetch  0x00000001 , 0x000047c3 
+ 00000946  0x000005dd increase  0x00000001 , 0x0000003f 
+ 00000947  0x000005de store  0x00000001 , 0x000047c3 
+ 00000948  0x000005df rtn 
+ 00000949  0x000005e2 arg  0x0000469a , 0x00000011 
+ 00000950  0x000005e3 call  0x00007e54 
+ 00000951  0x000005e4 branch  0x000003b9 , 0x00000028 
+ 00000952  0x000005e5 rtn 
+ 00000953  0x000005e8 call  0x00005652 
+ 00000954  0x000005e9 fetch  0x00000001 , 0x000047c3 
+ 00000955  0x000005ea sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00000956  0x000005eb ncall  0x00005650 , 0x00000002 
+ 00000957  0x000005ec fetch  0x00000001 , 0x000047c3 
+ 00000958  0x000005ed rtn  0x00000034 
+ 00000959  0x000005ee increase  0xffffffff , 0x0000003f 
+ 00000960  0x000005ef store  0x00000001 , 0x000047c3 
+ 00000961  0x000005f0 branch  0x00003f90 
+ 00000962  0x000005f4 fetch  0x00000002 , 0x0000469f 
+ 00000963  0x000005f5 rtn  0x00000034 
+ 00000964  0x000005f6 jam  0x00000001 , 0x00004806 
+ 00000965  0x000005f7 jam  0x0000000a , 0x00004807 
+ 00000966  0x000005f8 rtn 
+ 00000967  0x000005fb jam  0x00000001 , 0x0000479e 
+ 00000968  0x000005fc call  0x00005814 
+ 00000969  0x000005fe jam  0x00000001 , 0x00004afe 
+ 00000970  0x000005ff branch  0x000002d5 
+ 00000971  0x00000602 rtn  0x0000002e 
+ 00000972  0x00000603 fetch  0x00000001 , 0x000041e2 
+ 00000973  0x00000604 rtn  0x00000034 
+ 00000974  0x00000605 call  0x00005271 
+ 00000975  0x00000606 nrtn  0x00000034 
+ 00000976  0x00000607 fetch  0x00000001 , 0x0000479e 
+ 00000977  0x00000608 call  0x000003c7 , 0x00000034 
+ 00000978  0x00000609 fetch  0x00000004 , 0x000046d3 
+ 00000979  0x0000060a bbit1  0x00000005 , 0x00003f8a 
+ 00000980  0x0000060b bbit1  0x00000009 , 0x00003f8a 
+ 00000981  0x0000060c call  0x00003f97 
+ 00000982  0x0000060d nrtn  0x00000028 
+ 00000983  0x0000060e call  0x00000387 
+ 00000984  0x0000060f call  0x0000038a 
+ 00000985  0x00000610 call  0x000003c2 
+ 00000986  0x00000611 fetch  0x00000001 , 0x00004b03 
+ 00000987  0x00000612 beq  0x00000001 , 0x000003df 
+ 00000988  0x00000613 fetch  0x00000001 , 0x00004b0a 
+ 00000989  0x00000614 rtn  0x00000034 
+ 00000990  0x00000615 branch  0x00003f81 
+ 00000991  0x00000618 fetch  0x00000001 , 0x0000469a 
+ 00000992  0x00000619 store  0x00000001 , 0x00004b04 
+ 00000993  0x0000061a fetch  0x00000001 , 0x0000469b 
+ 00000994  0x0000061b istore  0x00000001 , 0x00000005 
+ 00000995  0x0000061c fetch  0x00000001 , 0x0000469d 
+ 00000996  0x0000061d istore  0x00000001 , 0x00000005 
+ 00000997  0x0000061e fetch  0x00000002 , 0x0000469f 
+ 00000998  0x0000061f istore  0x00000002 , 0x00000005 
+ 00000999  0x00000621 arg  0x00000007 , 0x00000011 
+ 00001000  0x00000622 call  0x00004d63 
+ 00001001  0x00000623 fetch  0x00000002 , 0x0000424e 
+ 00001002  0x00000624 istore  0x00000002 , 0x00000005 
+ 00001003  0x00000625 setarg  0x000002a1 
+ 00001004  0x00000626 istore  0x00000002 , 0x00000005 
+ 00001005  0x00000627 fetch  0x00000005 , 0x00004b04 
+ 00001006  0x00000628 istore  0x00000005 , 0x00000005 
+ 00001007  0x00000629 rtn 
+ 00001008  0x0000062d call  0x00007e34 
+ 00001009  0x0000062e call  0x000003f3 
+ 00001010  0x0000062f branch  0x00003ee0 
+ 00001011  0x00000632 fetcht  0x00000001 , 0x000046e7 
+ 00001012  0x00000633 call  0x00000561 
+ 00001013  0x00000634 fetcht  0x00000001 , 0x000046e7 
+ 00001014  0x00000635 call  0x0000681d 
+ 00001015  0x00000636 branch  0x00000401 , 0x00000001 
+ 00001016  0x00000637 call  0x0000055c 
+ 00001017  0x00000639 fetch  0x00000001 , 0x000046b6 
+ 00001018  0x0000063a rtneq  0x00000000 
+ 00001019  0x0000063b jam  0x00000000 , 0x000046b6 
+ 00001020  0x0000063c fetch  0x00000001 , 0x0000477a 
+ 00001021  0x0000063d increase  0x00000001 , 0x0000003f 
+ 00001022  0x0000063e and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001023  0x0000063f store  0x00000001 , 0x0000477a 
+ 00001024  0x00000643 branch  0x00003d7e 
+ 00001025  0x00000645 call  0x0000055c 
+ 00001026  0x00000646 branch  0x00003d62 
+ 00001027  0x00000649 copy  0x00000013 , 0x0000003f 
+ 00001028  0x0000064a beq  0x00000014 , 0x00000414 
+ 00001029  0x0000064b beq  0x00000015 , 0x00000428 
+ 00001030  0x0000064c beq  0x00000029 , 0x0000042b 
+ 00001031  0x0000064d beq  0x00000032 , 0x0000042d 
+ 00001032  0x0000064e beq  0x00000040 , 0x0000042f 
+ 00001033  0x0000064f beq  0x00000004 , 0x00000431 
+ 00001034  0x00000650 beq  0x00000013 , 0x00000431 
+ 00001035  0x00000651 beq  0x00000019 , 0x000033df 
+ 00001036  0x00000652 beq  0x00000021 , 0x00000435 
+ 00001037  0x00000653 beq  0x00000001 , 0x00000437 
+ 00001038  0x00000654 beq  0x00000002 , 0x00000443 
+ 00001039  0x00000655 beq  0x0000002b , 0x00000446 
+ 00001040  0x00000656 beq  0x00000039 , 0x00000448 
+ 00001041  0x00000657 beq  0x0000003a , 0x0000044c 
+ 00001042  0x00000658 beq  0x0000003c , 0x0000044f 
+ 00001043  0x00000659 branch  0x0000417d 
+ 00001044  0x0000065c call  0x000003c9 
+ 00001045  0x0000065d call  0x000041c3 
+ 00001046  0x0000065e setarg  0x00000000 
+ 00001047  0x0000065f store  0x00000003 , 0x00004b68 
+ 00001048  0x00000660 fetch  0x00000006 , 0x00004b4c 
+ 00001049  0x00000661 fetcht  0x00000006 , 0x00004722 
+ 00001050  0x00000662 isub  0x00000002 , 0x0000003e 
+ 00001051  0x00000663 ncall  0x00000357 , 0x00000005 
+ 00001052  0x00000664 call  0x00003410 
+ 00001053  0x00000665 jam  0x00000001 , 0x00004b76 
+ 00001054  0x00000666 fetch  0x00000001 , 0x000047a1 
+ 00001055  0x00000667 nbranch  0x00000421 , 0x00000034 
+ 00001056  0x00000668 jam  0x00000014 , 0x00004b6d 
+ 00001057  0x0000066a jam  0x00000000 , 0x00004b77 
+ 00001058  0x0000066b jam  0x00000000 , 0x00004b6c 
+ 00001059  0x0000066c jam  0x00000001 , 0x00004b6f 
+ 00001060  0x0000066d jam  0x00000000 , 0x00004b78 
+ 00001061  0x0000066e jam  0x00000000 , 0x00004b6b 
+ 00001062  0x0000066f call  0x000001f3 
+ 00001063  0x00000670 branch  0x000003ac 
+ 00001064  0x00000674 call  0x00000455 
+ 00001065  0x00000675 jam  0x000000a2 , 0x000011c6 
+ 00001066  0x00000676 branch  0x00000765 
+ 00001067  0x0000067a jam  0x00000012 , 0x00000a99 
+ 00001068  0x0000067b branch  0x00007d8f 
+ 00001069  0x0000067e jam  0x000000b3 , 0x000011c6 
+ 00001070  0x0000067f branch  0x00000765 
+ 00001071  0x00000682 jam  0x000000a1 , 0x000011c6 
+ 00001072  0x00000683 branch  0x00000765 
+ 00001073  0x00000688 jam  0x000000a3 , 0x000011c6 
+ 00001074  0x00000689 branch  0x00000765 
+ 00001075  0x0000068c jam  0x00000070 , 0x000011c6 
+ 00001076  0x0000068d branch  0x00000765 
+ 00001077  0x00000690 jam  0x000000b1 , 0x000011c6 
+ 00001078  0x00000691 branch  0x00000765 
+ 00001079  0x00000694 call  0x0000048b 
+ 00001080  0x00000695 call  0x000003c9 
+ 00001081  0x00000696 setarg  0x00000000 
+ 00001082  0x00000697 store  0x00000003 , 0x00004b68 
+ 00001083  0x00000698 jam  0x00000001 , 0x00004b76 
+ 00001084  0x00000699 jam  0x00000000 , 0x00004b77 
+ 00001085  0x0000069a jam  0x00000000 , 0x00004b78 
+ 00001086  0x0000069b jam  0x00000000 , 0x00004b6b 
+ 00001087  0x0000069c call  0x000001f3 
+ 00001088  0x0000069d call  0x000004f8 
+ 00001089  0x0000069e jam  0x00000000 , 0x00004809 
+ 00001090  0x0000069f branch  0x000042ca 
+ 00001091  0x000006a3 call  0x00000455 
+ 00001092  0x000006a4 jam  0x000000b4 , 0x000011c6 
+ 00001093  0x000006a5 branch  0x00000765 
+ 00001094  0x000006a8 jam  0x000000b2 , 0x000011c6 
+ 00001095  0x000006a9 branch  0x00000765 
+ 00001096  0x000006ac call  0x00000370 
+ 00001097  0x000006ad call  0x000003c9 
+ 00001098  0x000006ae jam  0x00000050 , 0x000011c6 
+ 00001099  0x000006af branch  0x00000765 
+ 00001100  0x000006b2 call  0x00000455 
+ 00001101  0x000006b3 jam  0x00000051 , 0x000011c6 
+ 00001102  0x000006b4 branch  0x00000765 
+ 00001103  0x000006b8 call  0x000003c9 
+ 00001104  0x000006b9 jam  0x00000052 , 0x000011c6 
+ 00001105  0x000006ba branch  0x00000765 
+ 00001106  0x000006bd call  0x00000455 
+ 00001107  0x000006be jam  0x000000a0 , 0x000011c6 
+ 00001108  0x000006bf branch  0x00000765 
+ 00001109  0x000006c2 fetch  0x00000001 , 0x00004afe 
+ 00001110  0x000006c3 rtn  0x00000034 
+ 00001111  0x000006c4 jam  0x00000000 , 0x00004afe 
+ 00001112  0x000006c6 call  0x000002d5 
+ 00001113  0x000006c7 setarg  0x00000006 
+ 00001114  0x000006c8 call  0x00006414 
+ 00001115  0x000006c9 or  0x0000003f , 0x00000008 , 0x0000003f 
+ 00001116  0x000006ca lshift8  0x0000003f , 0x0000003f 
+ 00001117  0x000006cb add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00001118  0x000006cc branch  0x00006413 
+ 00001119  0x000006d0 call  0x00000474 
+ 00001120  0x000006d1 call  0x000004fb 
+ 00001121  0x000006d2 call  0x000004c7 
+ 00001122  0x000006d3 call  0x000004f1 
+ 00001123  0x000006d4 call  0x000004cc 
+ 00001124  0x000006d5 call  0x00004234 
+ 00001125  0x000006d7 call  0x00000492 
+ 00001126  0x000006d8 call  0x00000499 
+ 00001127  0x000006d9 call  0x0000049c 
+ 00001128  0x000006da call  0x000004b0 
+ 00001129  0x000006db call  0x000004b6 
+ 00001130  0x000006dc call  0x000004b9 
+ 00001131  0x000006dd call  0x000004c1 
+ 00001132  0x000006de call  0x000004a8 
+ 00001133  0x000006df call  0x00004231 
+ 00001134  0x000006e0 call  0x000004ab 
+ 00001135  0x000006e1 call  0x00000471 
+ 00001136  0x000006e2 branch  0x0000423a 
+ 00001137  0x000006e5 arg  0x00004b77 , 0x00000013 
+ 00001138  0x000006e6 arg  0x000002c4 , 0x00000012 
+ 00001139  0x000006e7 branch  0x0000336d 
+ 00001140  0x000006f9 fetch  0x00000001 , 0x00004b68 
+ 00001141  0x000006fa rtn  0x00000034 
+ 00001142  0x000006fb arg  0x00004b69 , 0x00000013 
+ 00001143  0x000006fc arg  0x00000479 , 0x00000012 
+ 00001144  0x000006fd branch  0x0000336d 
+ 00001145  0x000006ff jam  0x00000001 , 0x00004b69 
+ 00001146  0x00000700 fetch  0x00000001 , 0x00004b6a 
+ 00001147  0x00000701 increase  0x00000001 , 0x0000003f 
+ 00001148  0x00000702 and_into  0x00000001 , 0x0000003f 
+ 00001149  0x00000703 store  0x00000001 , 0x00004b6a 
+ 00001150  0x00000704 beq  0x00000000 , 0x0000048d 
+ 00001151  0x00000706 fetch  0x00000006 , 0x00004b62 
+ 00001152  0x00000707 store  0x00000006 , 0x000044a0 
+ 00001153  0x00000708 call  0x00000483 
+ 00001154  0x00000709 branch  0x00007df4 
+ 00001155  0x0000070c jam  0x0000001f , 0x0000436f 
+ 00001156  0x0000070d jam  0x0000001f , 0x0000438f 
+ 00001157  0x0000070e call  0x0000048b 
+ 00001158  0x0000070f arg  0x00004b10 , 0x00000006 
+ 00001159  0x00000711 arg  0x0000437b , 0x00000005 
+ 00001160  0x00000712 arg  0x00000013 , 0x00000039 
+ 00001161  0x00000713 call  0x00007f01 
+ 00001162  0x00000714 branch  0x000057b8 
+ 00001163  0x00000717 arg  0x00000007 , 0x00000007 
+ 00001164  0x00000718 branch  0x000043ce 
+ 00001165  0x0000071c jam  0x00000000 , 0x0000436f 
+ 00001166  0x0000071d jam  0x00000000 , 0x0000438f 
+ 00001167  0x0000071e arg  0x00000007 , 0x00000007 
+ 00001168  0x0000071f call  0x000043d2 
+ 00001169  0x00000720 branch  0x0000035b 
+ 00001170  0x00000724 arg  0x00004b44 , 0x00000013 
+ 00001171  0x00000725 arg  0x00000495 , 0x00000012 
+ 00001172  0x00000726 branch  0x0000336d 
+ 00001173  0x00000728 setarg  0x00124f80 
+ 00001174  0x00000729 store  0x00000003 , 0x00004c78 
+ 00001175  0x0000072b jam  0x00000001 , 0x00004b42 
+ 00001176  0x0000072c rtn 
+ 00001177  0x0000072f arg  0x00004d95 , 0x00000013 
+ 00001178  0x00000730 arg  0x0000036b , 0x00000012 
+ 00001179  0x00000731 branch  0x00003374 
+ 00001180  0x00000734 arg  0x00004bc1 , 0x00000013 
+ 00001181  0x00000735 arg  0x0000049f , 0x00000012 
+ 00001182  0x00000736 branch  0x00003374 
+ 00001183  0x00000739 jam  0x00000001 , 0x00004d94 
+ 00001184  0x0000073a fetch  0x00000001 , 0x00004b68 
+ 00001185  0x0000073b nbranch  0x000004a3 , 0x00000034 
+ 00001186  0x0000073f rtn 
+ 00001187  0x00000742 jam  0x00000001 , 0x00004d95 
+ 00001188  0x00000743 fetch  0x00000001 , 0x00004b2f 
+ 00001189  0x00000744 nrtn  0x00000034 
+ 00001190  0x00000745 jam  0x00000000 , 0x00004d95 
+ 00001191  0x00000747 rtn 
+ 00001192  0x0000074b arg  0x00004809 , 0x00000013 
+ 00001193  0x0000074c arg  0x0000637a , 0x00000012 
+ 00001194  0x0000074d branch  0x0000336d 
+ 00001195  0x00000750 arg  0x00004b09 , 0x00000013 
+ 00001196  0x00000751 arg  0x000004ae , 0x00000012 
+ 00001197  0x00000752 branch  0x0000336d 
+ 00001198  0x00000754 jam  0x00000001 , 0x00004b0a 
+ 00001199  0x00000755 rtn 
+ 00001200  0x00000759 arg  0x000046ae , 0x00000013 
+ 00001201  0x0000075a arg  0x000004b3 , 0x00000012 
+ 00001202  0x0000075b branch  0x00003374 
+ 00001203  0x0000075d jam  0x00000001 , 0x00004b78 
+ 00001204  0x0000075e call  0x000004e0 
+ 00001205  0x0000075f branch  0x000004d5 
+ 00001206  0x00000762 arg  0x000046c6 , 0x00000013 
+ 00001207  0x00000763 arg  0x00003d60 , 0x00000012 
+ 00001208  0x00000764 branch  0x0000336d 
+ 00001209  0x00000767 fetch  0x00000001 , 0x00004b6f 
+ 00001210  0x00000768 rtn  0x00000034 
+ 00001211  0x00000769 arg  0x00004b6d , 0x00000013 
+ 00001212  0x0000076a arg  0x000004be , 0x00000012 
+ 00001213  0x0000076b branch  0x0000336d 
+ 00001214  0x0000076d fetch  0x00000001 , 0x00004b6e 
+ 00001215  0x0000076e nrtn  0x00000034 
+ 00001216  0x0000076f branch  0x00005bf5 
+ 00001217  0x00000772 arg  0x00004b43 , 0x00000013 
+ 00001218  0x00000773 arg  0x000004c4 , 0x00000012 
+ 00001219  0x00000774 branch  0x0000336d 
+ 00001220  0x00000776 fetch  0x00000001 , 0x000047c5 
+ 00001221  0x00000777 store  0x00000001 , 0x00004172 
+ 00001222  0x00000778 branch  0x00000497 
+ 00001223  0x0000077b arg  0x00004807 , 0x00000013 
+ 00001224  0x0000077c arg  0x000004ca , 0x00000012 
+ 00001225  0x0000077d branch  0x0000336d 
+ 00001226  0x0000077f jam  0x00000000 , 0x00004806 
+ 00001227  0x00000780 rtn 
+ 00001228  0x00000784 fetch  0x00000001 , 0x000046b6 
+ 00001229  0x00000785 branch  0x000004d8 , 0x00000034 
+ 00001230  0x00000786 call  0x0000053b 
+ 00001231  0x00000787 beq  0x00000007 , 0x000004d8 
+ 00001232  0x00000789 fetch  0x00000001 , 0x00004685 
+ 00001233  0x0000078a store  0x00000001 , 0x000046da 
+ 00001234  0x0000078b fetch  0x00000001 , 0x000046db 
+ 00001235  0x0000078c rtneq  0x00000001 
+ 00001236  0x0000078d jam  0x00000001 , 0x000046db 
+ 00001237  0x0000078f arg  0x00000009 , 0x00000007 
+ 00001238  0x00000790 call  0x000043d2 
+ 00001239  0x00000791 branch  0x000043ca 
+ 00001240  0x00000793 jam  0x00000028 , 0x000047a0 
+ 00001241  0x00000794 call  0x000004db 
+ 00001242  0x00000795 branch  0x000043b0 
+ 00001243  0x00000798 arg  0x000046da , 0x00000013 
+ 00001244  0x00000799 arg  0x000004de , 0x00000012 
+ 00001245  0x0000079a branch  0x0000336d 
+ 00001246  0x0000079c fetch  0x00000001 , 0x00004b68 
+ 00001247  0x0000079d nbranch  0x000004ee , 0x00000034 
+ 00001248  0x0000079f isolate1  0x00000026 , 0x00000000 
+ 00001249  0x000007a0 call  0x000004ec , 0x00000001 
+ 00001250  0x000007a1 fetch  0x00000001 , 0x00004b76 
+ 00001251  0x000007a2 sub  0x0000003f , 0x000000ff , 0x0000003e 
+ 00001252  0x000007a3 call  0x000004ec , 0x00000005 
+ 00001253  0x000007a5 call  0x00000483 
+ 00001254  0x000007a6 fetch  0x00000002 , 0x00004682 
+ 00001255  0x000007a7 isolate1  0x00000007 , 0x0000003f 
+ 00001256  0x000007a8 call  0x00004392 , 0x00000001 
+ 00001257  0x000007a9 arg  0x00000009 , 0x00000007 
+ 00001258  0x000007aa call  0x000043ce 
+ 00001259  0x000007ab branch  0x000043b8 
+ 00001260  0x000007ae jam  0x00000001 , 0x00004b6c 
+ 00001261  0x000007af rtn 
+ 00001262  0x000007b2 fetch  0x00000002 , 0x00004687 
+ 00001263  0x000007b3 store  0x00000002 , 0x000046ac 
+ 00001264  0x000007b4 rtn 
+ 00001265  0x000007b7 fetch  0x00000001 , 0x0000479f 
+ 00001266  0x000007b8 rtn  0x00000034 
+ 00001267  0x000007b9 arg  0x000047a0 , 0x00000013 
+ 00001268  0x000007ba arg  0x000004f6 , 0x00000012 
+ 00001269  0x000007bb branch  0x0000336d 
+ 00001270  0x000007bd jam  0x00000000 , 0x0000479f 
+ 00001271  0x000007be branch  0x0000340a 
+ 00001272  0x000007c1 jam  0x00000000 , 0x0000479f 
+ 00001273  0x000007c2 jam  0x00000000 , 0x000047a0 
+ 00001274  0x000007c3 rtn 
+ 00001275  0x00000832 fetch  0x00000001 , 0x000046ac 
+ 00001276  0x00000833 rtn  0x00000034 
+ 00001277  0x00000834 bbit1  0x00000002 , 0x000004ff 
+ 00001278  0x00000835 branch  0x00000503 
+ 00001279  0x00000839 fetcht  0x00000001 , 0x00004b25 
+ 00001280  0x0000083a call  0x0000680e 
+ 00001281  0x0000083b fetcht  0x00000001 , 0x00004b25 
+ 00001282  0x0000083c branch  0x00006825 
+ 00001283  0x0000083f fetcht  0x00000001 , 0x00004b25 
+ 00001284  0x00000840 call  0x0000680e 
+ 00001285  0x00000841 fetcht  0x00000001 , 0x00004b25 
+ 00001286  0x00000842 branch  0x00006829 
+ 00001287  0x0000084f fetch  0x00000001 , 0x0000477a 
+ 00001288  0x00000850 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00001289  0x00000851 call  0x00000514 , 0x00000005 
+ 00001290  0x00000852 fetch  0x00000001 , 0x0000477a 
+ 00001291  0x00000853 beq  0x00000000 , 0x00000516 
+ 00001292  0x00000854 beq  0x00000003 , 0x0000051c 
+ 00001293  0x00000856 fetch  0x00000001 , 0x000046e0 
+ 00001294  0x00000858 beq  0x00000006 , 0x00000522 
+ 00001295  0x00000859 beq  0x00000007 , 0x00000522 
+ 00001296  0x0000085a beq  0x00000002 , 0x00000528 
+ 00001297  0x0000085c fetch  0x00000001 , 0x00004781 
+ 00001298  0x0000085e store  0x00000001 , 0x000046b5 
+ 00001299  0x0000085f branch  0x00003dc1 
+ 00001300  0x00000861 jam  0x00000002 , 0x0000477a 
+ 00001301  0x00000862 rtn 
+ 00001302  0x00000865 fetch  0x00000001 , 0x000046e0 
+ 00001303  0x00000867 beq  0x00000006 , 0x00000524 
+ 00001304  0x00000868 beq  0x00000007 , 0x00000524 
+ 00001305  0x00000869 beq  0x00000002 , 0x0000052b 
+ 00001306  0x0000086b fetch  0x00000001 , 0x0000477f 
+ 00001307  0x0000086c branch  0x00000512 
+ 00001308  0x0000086f fetch  0x00000001 , 0x000046e0 
+ 00001309  0x00000871 beq  0x00000006 , 0x00000526 
+ 00001310  0x00000872 beq  0x00000007 , 0x00000526 
+ 00001311  0x00000873 beq  0x00000002 , 0x0000052d 
+ 00001312  0x00000875 fetch  0x00000001 , 0x00004782 
+ 00001313  0x00000876 branch  0x00000512 
+ 00001314  0x00000879 fetch  0x00000001 , 0x00004b38 
+ 00001315  0x0000087a branch  0x00000512 
+ 00001316  0x0000087c fetch  0x00000001 , 0x00004b36 
+ 00001317  0x0000087d branch  0x00000512 
+ 00001318  0x0000087f fetch  0x00000001 , 0x00004b39 
+ 00001319  0x00000880 branch  0x00000512 
+ 00001320  0x00000883 fetch  0x00000001 , 0x00004781 
+ 00001321  0x00000885 increase  0x00000002 , 0x0000003f 
+ 00001322  0x00000886 branch  0x00000512 
+ 00001323  0x00000888 fetch  0x00000001 , 0x0000477f 
+ 00001324  0x00000889 branch  0x00000529 
+ 00001325  0x0000088b fetch  0x00000001 , 0x00004782 
+ 00001326  0x0000088c branch  0x00000529 
+ 00001327  0x00000890 disable  0x00000028 
+ 00001328  0x00000891 setarg  0x00000000 
+ 00001329  0x00000892 store  0x00000006 , 0x0000469b 
+ 00001330  0x00000893 call  0x00000567 
+ 00001331  0x00000894 call  0x00004079 
+ 00001332  0x00000895 call  0x0000407e 
+ 00001333  0x00000896 call  0x00000539 
+ 00001334  0x00000897 nbranch  0x0000078f , 0x00000028 
+ 00001335  0x00000898 call  0x00000786 
+ 00001336  0x00000899 branch  0x00003fa0 
+ 00001337  0x0000089c call  0x0000053b 
+ 00001338  0x0000089d branch  0x0000409a 
+ 00001339  0x000008a0 arg  0x00000000 , 0x00000011 
+ 00001340  0x000008a1 call  0x00000541 
+ 00001341  0x000008a4 call  0x0000053f 
+ 00001342  0x000008a5 branch  0x0000408e 
+ 00001343  0x000008a9 call  0x00000551 
+ 00001344  0x000008aa branch  0x00000557 
+ 00001345  0x000008ad fetcht  0x00000001 , 0x000046e2 
+ 00001346  0x000008ae call  0x0000055c 
+ 00001347  0x000008af fetcht  0x00000001 , 0x000046e2 
+ 00001348  0x000008b0 call  0x0000681d 
+ 00001349  0x000008b1 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00001350  0x000008b4 fetcht  0x00000001 , 0x000046e3 
+ 00001351  0x000008b5 call  0x0000055c 
+ 00001352  0x000008b6 fetcht  0x00000001 , 0x000046e3 
+ 00001353  0x000008b7 call  0x0000681d 
+ 00001354  0x000008b8 setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00001355  0x000008bb fetcht  0x00000001 , 0x000046e4 
+ 00001356  0x000008bc call  0x0000055c 
+ 00001357  0x000008bd fetcht  0x00000001 , 0x000046e4 
+ 00001358  0x000008be call  0x0000681d 
+ 00001359  0x000008bf setflag  0x00000001 , 0x00000002 , 0x00000011 
+ 00001360  0x000008c0 rtn 
+ 00001361  0x000008c3 fetcht  0x00000001 , 0x000046e5 
+ 00001362  0x000008c4 call  0x00000561 
+ 00001363  0x000008c5 fetcht  0x00000001 , 0x000046e5 
+ 00001364  0x000008c6 call  0x0000681d 
+ 00001365  0x000008c7 nsetflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00001366  0x000008c8 branch  0x0000055c 
+ 00001367  0x000008ca fetcht  0x00000001 , 0x000046e6 
+ 00001368  0x000008cb call  0x00000561 
+ 00001369  0x000008cc fetcht  0x00000001 , 0x000046e6 
+ 00001370  0x000008cd call  0x0000681d 
+ 00001371  0x000008ce nsetflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00001372  0x000008d0 set1  0x00000007 , 0x00000002 
+ 00001373  0x000008d1 arg  0x00008078 , 0x00000005 
+ 00001374  0x000008d2 call  0x00006830 
+ 00001375  0x000008d3 set0  0x00000007 , 0x00000002 
+ 00001376  0x000008d4 branch  0x00000565 
+ 00001377  0x000008d7 set0  0x00000007 , 0x00000002 
+ 00001378  0x000008d8 arg  0x00008078 , 0x00000005 
+ 00001379  0x000008d9 call  0x00006830 
+ 00001380  0x000008da set1  0x00000007 , 0x00000002 
+ 00001381  0x000008dc arg  0x0000807c , 0x00000005 
+ 00001382  0x000008dd branch  0x0000680a 
+ 00001383  0x000008e1 fetch  0x00000001 , 0x000046e0 
+ 00001384  0x000008e3 beq  0x00000008 , 0x0000056c 
+ 00001385  0x000008e5 call  0x00003fc0 
+ 00001386  0x000008e6 disable  0x00000028 
+ 00001387  0x000008e7 branch  0x00003fe7 
+ 00001388  0x000008ed call  0x00003fc0 
+ 00001389  0x000008ee disable  0x00000028 
+ 00001390  0x000008f3 setarg  0x00000002 
+ 00001391  0x000008f4 call  0x00006414 
+ 00001392  0x000008f5 rtnbit0  0x00000007 
+ 00001393  0x000008f6 setarg  0x00000008 
+ 00001394  0x000008f7 call  0x00006414 
+ 00001395  0x000008f8 branch  0x00003fed , 0x00000034 
+ 00001396  0x000008f9 setarg  0x00000000 
+ 00001397  0x000008fa store  0x00000006 , 0x0000469b 
+ 00001398  0x000008fb rtn 
+ 00001399  0x000008fe call  0x000004f8 
+ 00001400  0x000008ff isolate1  0x00000026 , 0x00000000 
+ 00001401  0x00000900 call  0x000001f3 , 0x00000001 
+ 00001402  0x00000901 jam  0x00000000 , 0x000046b4 
+ 00001403  0x00000902 fetch  0x00000001 , 0x00004b78 
+ 00001404  0x00000903 call  0x00004386 , 0x00000034 
+ 00001405  0x00000904 setarg  0x00000000 
+ 00001406  0x00000905 store  0x00000002 , 0x000046b0 
+ 00001407  0x00000906 branch  0x0000426f 
+ 00001408  0x00000909 jam  0x00000000 , 0x00004091 
+ 00001409  0x0000090a jam  0x00000030 , 0x000011c6 
+ 00001410  0x0000090b branch  0x00000765 
+ 00001411  0x0000090f call  0x000003c9 
+ 00001412  0x00000910 branch  0x000042cb 
+ 00001413  0x00000913 fetch  0x00000001 , 0x0000450f 
+ 00001414  0x00000914 pincrease  0x00000001 
+ 00001415  0x00000915 store  0x00000001 , 0x0000450f 
+ 00001416  0x00000916 beq  0x0000000c , 0x00005395 
+ 00001417  0x00000917 call  0x000055aa 
+ 00001418  0x00000918 call  0x0000561e 
+ 00001419  0x00000919 call  0x00000705 
+ 00001420  0x0000091a branch  0x0000538f 
+ 00001421  0x0000091d fetch  0x00000001 , 0x00000016 
+ 00001422  0x0000091e increase  0x00000001 , 0x0000003f 
+ 00001423  0x0000091f store  0x00000001 , 0x00000016 
+ 00001424  0x00000920 rtnne  0x00000028 
+ 00001425  0x00000921 jam  0x00000025 , 0x00000016 
+ 00001426  0x00000922 rtn 
+ 00001427  0x00000925 call  0x000029bb 
+ 00001428  0x00000926 call  0x0000006c 
+ 00001429  0x00000927 branch  0x000054a3 
+ 00001430  0x0000092a jam  0x00000020 , 0x000011c6 
+ 00001431  0x0000092b branch  0x00000765 
+ 00001432  0x0000092e jam  0x00000021 , 0x000011c6 
+ 00001433  0x0000092f branch  0x00000765 
+ 00001434  0x00000932 fetch  0x00000001 , 0x00000456 
+ 00001435  0x00000933 bbit1  0x00000005 , 0x000005ba 
+ 00001436  0x00000934 call  0x000006f7 
+ 00001437  0x00000935 fetch  0x00000001 , 0x0000478e 
+ 00001438  0x00000936 nbranch  0x000005a4 , 0x00000034 
+ 00001439  0x00000937 fetch  0x00000001 , 0x0000043f 
+ 00001440  0x00000938 bbit0  0x00000004 , 0x000005a8 
+ 00001441  0x00000939 fetch  0x00000001 , 0x000002da 
+ 00001442  0x0000093a branch  0x000005a8 , 0x00000034 
+ 00001443  0x0000093b branch  0x00005664 
+ 00001444  0x0000093d fetch  0x00000001 , 0x0000478e 
+ 00001445  0x0000093e increase  0xffffffff , 0x0000003f 
+ 00001446  0x0000093f store  0x00000001 , 0x0000478e 
+ 00001447  0x00000940 branch  0x00005664 
+ 00001448  0x00000942 fetch  0x00000001 , 0x000044c4 
+ 00001449  0x00000943 bne  0x00000005 , 0x000005ab 
+ 00001450  0x00000944 jam  0x00000003 , 0x0000478e 
+ 00001451  0x00000946 call  0x00005892 
+ 00001452  0x00000947 call  0x000003b5 , 0x00000034 
+ 00001453  0x00000948 branch  0x00005622 
+ 00001454  0x0000094b fetch  0x00000001 , 0x000046c5 
+ 00001455  0x0000094c and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001456  0x0000094d rtnne  0x00000003 
+ 00001457  0x0000094e fetch  0x00000001 , 0x000047c3 
+ 00001458  0x0000094f rtn  0x00000034 
+ 00001459  0x00000950 fetch  0x00000001 , 0x000043dd 
+ 00001460  0x00000951 rtn  0x00000034 
+ 00001461  0x00000952 fetch  0x00000001 , 0x000043dc 
+ 00001462  0x00000953 set1  0x00000004 , 0x0000003f 
+ 00001463  0x00000954 store  0x00000001 , 0x000043dc 
+ 00001464  0x00000955 call  0x00005650 
+ 00001465  0x00000956 rtn 
+ 00001466  0x0000095a call  0x000005ae 
+ 00001467  0x0000095c branch  0x000006fb 
+ 00001468  0x0000095f fetch  0x00000001 , 0x000047a1 
+ 00001469  0x00000960 rtn  0x00000034 
+ 00001470  0x00000961 fetch  0x00000001 , 0x000046c5 
+ 00001471  0x00000962 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001472  0x00000963 rtneq  0x00000003 
+ 00001473  0x00000964 jam  0x00000002 , 0x000046c6 
+ 00001474  0x00000965 rtn 
+ 00001475  0x00000968 rtnmark1  0x0000000f 
+ 00001476  0x00000969 call  0x00005890 
+ 00001477  0x0000096a nrtn  0x00000034 
+ 00001478  0x0000096b fetch  0x00000001 , 0x000002d9 
+ 00001479  0x0000096c and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001480  0x0000096d store  0x00000001 , 0x0000450c 
+ 00001481  0x0000096e ifetch  0x00000001 , 0x00000006 
+ 00001482  0x0000096f and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00001483  0x00000970 store  0x00000001 , 0x0000450b 
+ 00001484  0x00000971 rtn  0x00000034 
+ 00001485  0x00000972 copy  0x00000006 , 0x0000003f 
+ 00001486  0x00000973 store  0x00000002 , 0x0000450d 
+ 00001487  0x00000974 fetch  0x00000001 , 0x0000450c 
+ 00001488  0x00000975 beq  0x00000003 , 0x000005d2 
+ 00001489  0x00000976 branch  0x0000568d 
+ 00001490  0x00000978 fetch  0x00000001 , 0x000002db 
+ 00001491  0x00000979 beq  0x00000000 , 0x000005d6 
+ 00001492  0x0000097a beq  0x00000001 , 0x000005dd 
+ 00001493  0x0000097b branch  0x00005c65 
+ 00001494  0x0000097d call  0x00005c7b 
+ 00001495  0x0000097e fetch  0x00000001 , 0x00004b61 
+ 00001496  0x0000097f rtn  0x00000034 
+ 00001497  0x00000982 fetch  0x00000001 , 0x000043d8 
+ 00001498  0x00000983 store  0x00000001 , 0x00004172 
+ 00001499  0x00000984 store  0x00000001 , 0x000047c5 
+ 00001500  0x00000985 rtn 
+ 00001501  0x00000987 ifetch  0x00000005 , 0x00000006 
+ 00001502  0x00000988 store  0x00000005 , 0x000043ce 
+ 00001503  0x00000989 ifetch  0x00000002 , 0x00000006 
+ 00001504  0x0000098a store  0x00000002 , 0x0000045f 
+ 00001505  0x0000098b branch  0x00005c8a 
+ 00001506  0x0000098e ifetch  0x00000002 , 0x00000006 
+ 00001507  0x0000098f beq  0x00000004 , 0x000005e6 
+ 00001508  0x00000990 beq  0x00000006 , 0x00000612 
+ 00001509  0x00000991 branch  0x00005698 
+ 00001510  0x00000993 call  0x00007ea5 
+ 00001511  0x00000994 call  0x000005bc 
+ 00001512  0x00000995 call  0x00007e9f 
+ 00001513  0x00000996 ifetch  0x00000003 , 0x00000006 
+ 00001514  0x00000997 store  0x00000003 , 0x00000477 
+ 00001515  0x00000998 beq  0x00000010 , 0x000005f5 
+ 00001516  0x00000999 rshift8  0x0000003f , 0x00000002 
+ 00001517  0x0000099a sub  0x00000002 , 0x00000024 , 0x0000003e 
+ 00001518  0x0000099b branch  0x00000603 , 0x00000002 
+ 00001519  0x0000099c arg  0x000047c6 , 0x00000002 
+ 00001520  0x0000099d storet  0x00000002 , 0x000044bc 
+ 00001521  0x0000099e call  0x000058ad 
+ 00001522  0x0000099f setarg  0x00008e7a 
+ 00001523  0x000009a0 store  0x00000002 , 0x000044bc 
+ 00001524  0x000009a1 rtn 
+ 00001525  0x000009a4 call  0x000059fa 
+ 00001526  0x000009a5 call  0x00005879 
+ 00001527  0x000009a6 increase  0x00000007 , 0x00000006 
+ 00001528  0x000009a7 ifetch  0x00000001 , 0x00000006 
+ 00001529  0x000009a8 rtnne  0x00000011 
+ 00001530  0x000009a9 increase  0x00000005 , 0x00000006 
+ 00001531  0x000009aa ifetch  0x00000002 , 0x00000006 
+ 00001532  0x000009ab arg  0x00001812 , 0x00000002 
+ 00001533  0x000009ac isub  0x00000002 , 0x0000003e 
+ 00001534  0x000009ad nrtn  0x00000005 
+ 00001535  0x000009ae increase  0xfffffffc , 0x00000006 
+ 00001536  0x000009af setarg  0x0000002b 
+ 00001537  0x000009b0 istore  0x00000002 , 0x00000006 
+ 00001538  0x000009b1 rtn 
+ 00001539  0x000009b4 beq  0x0000000a , 0x00000605 
+ 00001540  0x000009b5 branch  0x000058ad 
+ 00001541  0x000009b7 fetcht  0x00000002 , 0x00000478 
+ 00001542  0x000009b8 fetch  0x00000001 , 0x000044e9 
+ 00001543  0x000009b9 bbit1  0x00000003 , 0x0000060c 
+ 00001544  0x000009bb fetch  0x00000002 , 0x00000478 
+ 00001545  0x000009bc beq  0x00000013 , 0x00005a76 
+ 00001546  0x000009bd fetcht  0x00000002 , 0x00000478 
+ 00001547  0x000009be branch  0x000059bf 
+ 00001548  0x000009c0 fetch  0x00000002 , 0x000044fa 
+ 00001549  0x000009c1 isub  0x00000002 , 0x0000003e 
+ 00001550  0x000009c2 nbranch  0x00000608 , 0x00000005 
+ 00001551  0x000009c3 call  0x00005a42 
+ 00001552  0x000009c4 nbranch  0x00000608 , 0x00000028 
+ 00001553  0x000009c5 branch  0x000059e2 
+ 00001554  0x000009c8 ifetch  0x00000001 , 0x00000006 
+ 00001555  0x000009c9 beq  0x00000001 , 0x00000616 
+ 00001556  0x000009ca beq  0x00000005 , 0x00000618 
+ 00001557  0x000009cb branch  0x00005af5 
+ 00001558  0x000009cd jam  0x00000001 , 0x00004b6e 
+ 00001559  0x000009ce branch  0x00005b09 
+ 00001560  0x000009d0 jam  0x00000082 , 0x000011c6 
+ 00001561  0x000009d1 branch  0x00000765 
+ 00001562  0x000009d4 fetch  0x00000001 , 0x00000016 
+ 00001563  0x000009d5 bne  0x00000027 , 0x000056f2 
+ 00001564  0x000009d6 call  0x00000620 
+ 00001565  0x000009d7 arg  0x00000000 , 0x00000007 
+ 00001566  0x000009d8 fetch  0x00000002 , 0x00004482 
+ 00001567  0x000009d9 branch  0x00007f08 
+ 00001568  0x000009db random  0x0000003f 
+ 00001569  0x000009dc arg  0x000001ff , 0x00000002 
+ 00001570  0x000009dd iand  0x00000002 , 0x0000003f 
+ 00001571  0x000009de add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00001572  0x000009df branch  0x00003cbe 
+ 00001573  0x000009e2 disable  0x0000002b 
+ 00001574  0x000009e3 branch  0x00000628 , 0x0000002e 
+ 00001575  0x000009e4 nbranch  0x00005806 , 0x0000002d 
+ 00001576  0x000009e6 call  0x00002bcb 
+ 00001577  0x000009e7 fetch  0x00000002 , 0x000040c1 
+ 00001578  0x000009e8 store  0x00000002 , 0x0000044d 
+ 00001579  0x000009e9 fetch  0x00000001 , 0x000046c5 
+ 00001580  0x000009ea compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00001581  0x000009eb nbranch  0x00002bde , 0x00000001 
+ 00001582  0x000009ec branch  0x000057fb 
+ 00001583  0x000009ef jam  0x00000022 , 0x000011c6 
+ 00001584  0x000009f0 branch  0x00000765 
+ 00001585  0x000009f3 hfetch  0x00000001 , 0x00008077 
+ 00001586  0x000009f4 and_into  0x000000fd , 0x0000003f 
+ 00001587  0x000009f5 hstore  0x00000001 , 0x00008077 
+ 00001588  0x000009f6 hfetcht  0x00000001 , 0x00008073 
+ 00001589  0x000009f7 or_into  0x00000002 , 0x00000002 
+ 00001590  0x000009f8 hstoret  0x00000001 , 0x00008073 
+ 00001591  0x000009f9 call  0x000063ee 
+ 00001592  0x000009fa and_into  0x000000fd , 0x00000002 
+ 00001593  0x000009fb nop  0x0000000d 
+ 00001594  0x000009fc call  0x0000063e 
+ 00001595  0x000009fd hstoret  0x00000001 , 0x00008073 
+ 00001596  0x000009fe rtn 
+ 00001597  0x00000a01 call  0x000064dd 
+ 00001598  0x00000a03 hfetch  0x00000001 , 0x00008081 
+ 00001599  0x00000a04 set1  0x00000000 , 0x0000003f 
+ 00001600  0x00000a05 set0  0x00000001 , 0x0000003f 
+ 00001601  0x00000a06 set0  0x00000003 , 0x0000003f 
+ 00001602  0x00000a07 hstore  0x00000001 , 0x00008081 
+ 00001603  0x00000a08 rtn 
+ 00001604  0x00000a0c jam  0x00000000 , 0x000011c6 
+ 00001605  0x00000a0d branch  0x00000765 
+ 00001606  0x00000a10 call  0x000021c9 
+ 00001607  0x00000a11 nrtn  0x00000028 
+ 00001608  0x00000a13 disable  0x00000028 
+ 00001609  0x00000a14 jam  0x00000020 , 0x00000011 
+ 00001610  0x00000a15 set0  0x0000000b , 0x00000000 
+ 00001611  0x00000a16 set0  0x0000002d , 0x00000000 
+ 00001612  0x00000a18 call  0x00002a4f 
+ 00001613  0x00000a19 call  0x000022e6 
+ 00001614  0x00000a1a bmark1  0x0000000b , 0x00000653 
+ 00001615  0x00000a1b call  0x00002455 
+ 00001616  0x00000a1c nbranch  0x0000064c , 0x00000034 
+ 00001617  0x00000a1d bmark1  0x0000002d , 0x0000065c 
+ 00001618  0x00000a1e branch  0x000021ec 
+ 00001619  0x00000a21 call  0x00002a4d 
+ 00001620  0x00000a22 arg  0x00000010 , 0x00000001 
+ 00001621  0x00000a23 call  0x000022dc 
+ 00001622  0x00000a24 set1  0x0000002d , 0x00000000 
+ 00001623  0x00000a25 set0  0x0000000b , 0x00000000 
+ 00001624  0x00000a26 fetch  0x00000001 , 0x00000077 
+ 00001625  0x00000a27 iforce  0x00000004 
+ 00001626  0x00000a28 jam  0x00000002 , 0x00000011 
+ 00001627  0x00000a29 branch  0x0000064c 
+ 00001628  0x00000a2c fetch  0x00000004 , 0x00000165 
+ 00001629  0x00000a2d pincrease  0x00000008 
+ 00001630  0x00000a2e store  0x00000004 , 0x00000165 
+ 00001631  0x00000a2f branch  0x000021f8 
+ 00001632  0x00000a32 bmark1  0x0000002c , 0x0000264d 
+ 00001633  0x00000a33 branch  0x0000258f 
+ 00001634  0x00000a36 jam  0x00000023 , 0x000011c6 
+ 00001635  0x00000a37 branch  0x00000765 
+ 00001636  0x00000a3a fetch  0x00000001 , 0x00000030 
+ 00001637  0x00000a3b isolate1  0x00000000 , 0x0000003f 
+ 00001638  0x00000a3c call  0x00000668 , 0x00000001 
+ 00001639  0x00000a3d branch  0x0000248a 
+ 00001640  0x00000a3f fetch  0x00000001 , 0x00000047 
+ 00001641  0x00000a40 isolate1  0x00000003 , 0x0000003f 
+ 00001642  0x00000a41 call  0x000006fb , 0x00000001 
+ 00001643  0x00000a42 ncall  0x000006f7 , 0x00000001 
+ 00001644  0x00000a43 branch  0x00000705 
+ 00001645  0x00000a46 call  0x000024f0 
+ 00001646  0x00000a47 nbranch  0x000028f9 , 0x00000018 
+ 00001647  0x00000a48 call  0x000029bb 
+ 00001648  0x00000a49 call  0x0000006c 
+ 00001649  0x00000a4a branch  0x00002518 
+ 00001650  0x00000a4d rtnmark1  0x00000026 
+ 00001651  0x00000a4e call  0x00002afa 
+ 00001652  0x00000a4f fetch  0x00000003 , 0x0000416f 
+ 00001653  0x00000a50 rtn  0x00000034 
+ 00001654  0x00000a51 fetch  0x00000001 , 0x00004091 
+ 00001655  0x00000a52 rtn  0x00000034 
+ 00001656  0x00000a53 fetch  0x00000001 , 0x0000465a 
+ 00001657  0x00000a54 branch  0x0000067c , 0x00000034 
+ 00001658  0x00000a55 fetch  0x00000001 , 0x000045b1 
+ 00001659  0x00000a56 rtn  0x00000034 
+ 00001660  0x00000a58 fetch  0x00000001 , 0x000044c0 
+ 00001661  0x00000a59 nrtn  0x00000034 
+ 00001662  0x00000a5a call  0x00002c3a 
+ 00001663  0x00000a5b nrtn  0x00000034 
+ 00001664  0x00000a5c fetch  0x00000001 , 0x00004040 
+ 00001665  0x00000a5d compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00001666  0x00000a5e nbranch  0x00002b9d , 0x00000001 
+ 00001667  0x00000a5f fetch  0x00000002 , 0x00004042 
+ 00001668  0x00000a60 arg  0x0000ffff , 0x00000002 
+ 00001669  0x00000a61 isub  0x00000002 , 0x0000003e 
+ 00001670  0x00000a62 rtn  0x00000005 
+ 00001671  0x00000a63 branch  0x00002b7d 
+ 00001672  0x00000a66 disable  0x0000002b 
+ 00001673  0x00000a67 fetch  0x00000001 , 0x00000030 
+ 00001674  0x00000a68 rtnbit0  0x00000001 
+ 00001675  0x00000a69 nbranch  0x00002bd0 , 0x0000002d 
+ 00001676  0x00000a6a call  0x00002bcb 
+ 00001677  0x00000a6b fetch  0x00000002 , 0x000040c1 
+ 00001678  0x00000a6c store  0x00000002 , 0x0000003e 
+ 00001679  0x00000a6d fetch  0x00000001 , 0x00000047 
+ 00001680  0x00000a6e bbit1  0x00000003 , 0x00002bde 
+ 00001681  0x00000a6f bmark0  0x0000000d , 0x00002bde 
+ 00001682  0x00000a70 call  0x00005274 
+ 00001683  0x00000a71 nbranch  0x00002bde , 0x00000034 
+ 00001684  0x00000a72 call  0x00000696 , 0x00000034 
+ 00001685  0x00000a73 branch  0x00002bbe 
+ 00001686  0x00000a75 jam  0x00000001 , 0x0000008a 
+ 00001687  0x00000a76 jam  0x00000000 , 0x0000008b 
+ 00001688  0x00000a77 rtn 
+ 00001689  0x00000a7a jam  0x00000001 , 0x000011c6 
+ 00001690  0x00000a7b branch  0x00000765 
+ 00001691  0x00000a7e jam  0x00000002 , 0x000011c6 
+ 00001692  0x00000a7f branch  0x00000765 
+ 00001693  0x00000a82 fetch  0x00000001 , 0x00000552 
+ 00001694  0x00000a83 store  0x00000001 , 0x000004c9 
+ 00001695  0x00000a84 beq  0x00000013 , 0x000006a1 
+ 00001696  0x00000a85 branch  0x00005db4 
+ 00001697  0x00000a87 call  0x00005dcf 
+ 00001698  0x00000a88 jam  0x00000001 , 0x00004aff 
+ 00001699  0x00000a89 fetch  0x00000001 , 0x00004b01 
+ 00001700  0x00000a8a rtn  0x00000034 
+ 00001701  0x00000a8b jam  0x00000002 , 0x00004b01 
+ 00001702  0x00000a8c rtn 
+ 00001703  0x00000a8f disable  0x00000028 
+ 00001704  0x00000a90 call  0x000062c1 
+ 00001705  0x00000a91 fetch  0x00000001 , 0x00000048 
+ 00001706  0x00000a92 rtn  0x00000034 
+ 00001707  0x00000a93 bbit1  0x00000007 , 0x000006b0 
+ 00001708  0x00000a94 beq  0x00000003 , 0x000006b2 
+ 00001709  0x00000a95 beq  0x00000031 , 0x000006b4 
+ 00001710  0x00000a96 beq  0x00000017 , 0x000006b6 
+ 00001711  0x00000a97 branch  0x00006010 
+ 00001712  0x00000a9a jam  0x00000010 , 0x000011c6 
+ 00001713  0x00000a9b branch  0x00000765 
+ 00001714  0x00000a9e jam  0x00000011 , 0x000011c6 
+ 00001715  0x00000a9f branch  0x00000765 
+ 00001716  0x00000aa2 jam  0x00000001 , 0x00004b01 
+ 00001717  0x00000aa3 branch  0x000061c3 
+ 00001718  0x00000aa6 jam  0x00000004 , 0x00004b09 
+ 00001719  0x00000aa7 branch  0x000061a4 
+ 00001720  0x00000aaa call  0x000062bc 
+ 00001721  0x00000aab nrtn  0x00000034 
+ 00001722  0x00000aad fetch  0x00000001 , 0x00000055 
+ 00001723  0x00000aae rtn  0x00000034 
+ 00001724  0x00000aaf beq  0x00000004 , 0x000006da 
+ 00001725  0x00000ab0 beq  0x00000010 , 0x000006bf 
+ 00001726  0x00000ab1 branch  0x00006320 
+ 00001727  0x00000ab4 fetch  0x00000001 , 0x0000455b 
+ 00001728  0x00000ab5 rtneq  0x00000000 
+ 00001729  0x00000ab6 beq  0x00000001 , 0x000006c3 
+ 00001730  0x00000ab7 branch  0x0000635f 
+ 00001731  0x00000ab9 rtn  0x00000029 
+ 00001732  0x00000abc fetch  0x00000001 , 0x0000016d 
+ 00001733  0x00000abd bbit1  0x00000000 , 0x000006c7 
+ 00001734  0x00000abe branch  0x00006399 
+ 00001735  0x00000ac0 fetch  0x00000001 , 0x00004b01 
+ 00001736  0x00000ac1 beq  0x00000001 , 0x0000639d 
+ 00001737  0x00000ac3 fetch  0x00000001 , 0x000041bd 
+ 00001738  0x00000ac4 branch  0x000063a9 , 0x00000034 
+ 00001739  0x00000ac5 fetch  0x00000001 , 0x000004d1 
+ 00001740  0x00000ac6 rtnbit0  0x00000003 
+ 00001741  0x00000ac7 rtnbit0  0x00000002 
+ 00001742  0x00000ac8 fetch  0x00000001 , 0x00004b00 
+ 00001743  0x00000ac9 rtn  0x00000034 
+ 00001744  0x00000aca jam  0x00000000 , 0x00004b00 
+ 00001745  0x00000acb fetch  0x00000004 , 0x000004e9 
+ 00001746  0x00000acc arg  0x00000014 , 0x00000002 
+ 00001747  0x00000acd iadd  0x00000002 , 0x00000002 
+ 00001748  0x00000ace copy  0x00000022 , 0x0000003f 
+ 00001749  0x00000acf isub  0x00000002 , 0x0000003e 
+ 00001750  0x00000ad0 nbranch  0x000006d8 , 0x00000002 
+ 00001751  0x00000ad1 branch  0x00006349 
+ 00001752  0x00000ad4 jam  0x00000001 , 0x00004b00 
+ 00001753  0x00000ad5 rtn 
+ 00001754  0x00000ad8 jam  0x00000014 , 0x00004809 
+ 00001755  0x00000ad9 branch  0x0000636f 
+ 00001756  0x00000ae0 call  0x000062bc 
+ 00001757  0x00000ae1 nbranch  0x00007ddb , 0x00000034 
+ 00001758  0x00000ae2 fetch  0x00000001 , 0x00000a99 
+ 00001759  0x00000ae3 bmark0  0x00000009 , 0x00007dd6 
+ 00001760  0x00000ae4 beq  0x0000001f , 0x000006e4 
+ 00001761  0x00000ae5 beq  0x00000020 , 0x000006e7 
+ 00001762  0x00000ae6 beq  0x00000012 , 0x000006f1 
+ 00001763  0x00000ae7 branch  0x00007dca 
+ 00001764  0x00000aea jam  0x00000034 , 0x00000185 
+ 00001765  0x00000aeb fetch  0x00000006 , 0x0000044f 
+ 00001766  0x00000aec branch  0x000006e9 
+ 00001767  0x00000aee jam  0x00000033 , 0x00000185 
+ 00001768  0x00000aef fetch  0x00000006 , 0x00000040 
+ 00001769  0x00000af1 store  0x00000006 , 0x00000186 
+ 00001770  0x00000af3 fetch  0x00000004 , 0x000046d3 
+ 00001771  0x00000af4 rtnbit0  0x00000007 
+ 00001772  0x00000af5 arg  0x00000007 , 0x00000007 
+ 00001773  0x00000af6 call  0x000043d2 
+ 00001774  0x00000af7 call  0x000042e8 
+ 00001775  0x00000af9 call  0x000042fb 
+ 00001776  0x00000afa branch  0x00000316 
+ 00001777  0x00000afd call  0x00005890 
+ 00001778  0x00000afe nrtn  0x00000034 
+ 00001779  0x00000aff branch  0x00005abf 
+ 00001780  0x00000b02 jam  0x00000001 , 0x00004d85 
+ 00001781  0x00000b03 jam  0x00000000 , 0x00004d82 
+ 00001782  0x00000b04 rtn 
+ 00001783  0x00000b06 fetch  0x00000001 , 0x00004d82 
+ 00001784  0x00000b07 increase  0x00000001 , 0x0000003f 
+ 00001785  0x00000b08 store  0x00000001 , 0x00004d82 
+ 00001786  0x00000b09 rtn 
+ 00001787  0x00000b0b fetch  0x00000001 , 0x00004d82 
+ 00001788  0x00000b0c sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001789  0x00000b0d ncall  0x00000703 , 0x00000002 
+ 00001790  0x00000b0e fetch  0x00000001 , 0x00004d82 
+ 00001791  0x00000b0f rtneq  0x00000000 
+ 00001792  0x00000b10 increase  0xffffffff , 0x0000003f 
+ 00001793  0x00000b11 store  0x00000001 , 0x00004d82 
+ 00001794  0x00000b12 rtn 
+ 00001795  0x00000b14 jam  0x00000003 , 0x00004d82 
+ 00001796  0x00000b15 rtn 
+ 00001797  0x00000b18 fetch  0x00000002 , 0x00004682 
+ 00001798  0x00000b19 rtnbit1  0x0000000b 
+ 00001799  0x00000b1a rtnbit1  0x00000007 
+ 00001800  0x00000b1b rtnbit1  0x00000006 
+ 00001801  0x00000b1d arg  0x00004d0b , 0x00000011 
+ 00001802  0x00000b1e call  0x00000295 
+ 00001803  0x00000b1f storet  0x00000001 , 0x00004d83 
+ 00001804  0x00000b21 setarg  0x00000082 
+ 00001805  0x00000b22 bmark1  0x00000026 , 0x0000070f 
+ 00001806  0x00000b23 setarg  0x00000080 
+ 00001807  0x00000b25 isub  0x00000002 , 0x0000003e 
+ 00001808  0x00000b26 nbranch  0x00000727 , 0x00000002 
+ 00001809  0x00000b28 fetch  0x00000001 , 0x00004d82 
+ 00001810  0x00000b29 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001811  0x00000b2a nbranch  0x00000717 , 0x00000002 
+ 00001812  0x00000b2b fetch  0x00000001 , 0x00004d82 
+ 00001813  0x00000b2c beq  0x00000000 , 0x00000728 
+ 00001814  0x00000b2d rtn 
+ 00001815  0x00000b30 fetch  0x00000001 , 0x00004d82 
+ 00001816  0x00000b31 rtnne  0x00000032 
+ 00001817  0x00000b32 jam  0x00000000 , 0x00004d82 
+ 00001818  0x00000b34 fetcht  0x00000001 , 0x00004d83 
+ 00001819  0x00000b35 setarg  0x00000077 
+ 00001820  0x00000b36 bmark1  0x00000026 , 0x0000071e 
+ 00001821  0x00000b37 setarg  0x00000075 
+ 00001822  0x00000b39 isub  0x00000002 , 0x0000003e 
+ 00001823  0x00000b3a nrtn  0x00000002 
+ 00001824  0x00000b3b fetch  0x00000001 , 0x00004d85 
+ 00001825  0x00000b3c beq  0x00000000 , 0x0000072f 
+ 00001826  0x00000b3d increase  0xffffffff , 0x0000003f 
+ 00001827  0x00000b3e store  0x00000001 , 0x00004d85 
+ 00001828  0x00000b3f beq  0x00000000 , 0x0000072f 
+ 00001829  0x00000b42 jam  0x00000000 , 0x000041de 
+ 00001830  0x00000b43 rtn 
+ 00001831  0x00000b46 jam  0x00000000 , 0x00004d82 
+ 00001832  0x00000b48 fetch  0x00000001 , 0x00004d85 
+ 00001833  0x00000b49 beq  0x00000002 , 0x0000072d 
+ 00001834  0x00000b4a increase  0x00000001 , 0x0000003f 
+ 00001835  0x00000b4b store  0x00000001 , 0x00004d85 
+ 00001836  0x00000b4c beq  0x00000001 , 0x00000725 
+ 00001837  0x00000b4e jam  0x00000002 , 0x000041de 
+ 00001838  0x00000b4f rtn 
+ 00001839  0x00000b52 jam  0x00000004 , 0x000041de 
+ 00001840  0x00000b53 rtn 
+ 00001841  0x00000b57 storet  0x00000001 , 0x00000017 
+ 00001842  0x00000b58 add  0x00000002 , 0x00000000 , 0x00000011 
+ 00001843  0x00000b59 call  0x00002981 
+ 00001844  0x00000b5a setarg  0x00000500 
+ 00001845  0x00000b5b call  0x00002a8f 
+ 00001846  0x00000b5d jam  0x00000001 , 0x00008906 
+ 00001847  0x00000b5e jam  0x0000003c , 0x00008900 
+ 00001848  0x00000b5f jam  0x000000e0 , 0x00008901 
+ 00001849  0x00000b60 nop  0x0000000a 
+ 00001850  0x00000b61 jam  0x00000001 , 0x00008902 
+ 00001851  0x00000b62 jam  0x0000003d , 0x00008902 
+ 00001852  0x00000b63 nop  0x0000000a 
+ 00001853  0x00000b64 jam  0x000000b7 , 0x00008903 
+ 00001854  0x00000b65 nop  0x0000000a 
+ 00001855  0x00000b66 jam  0x0000007d , 0x00008902 
+ 00001856  0x00000b67 fetch  0x00000001 , 0x000041de 
+ 00001857  0x00000b6a beq  0x00000002 , 0x00000749 
+ 00001858  0x00000b6c beq  0x00000004 , 0x0000074e 
+ 00001859  0x00000b6d beq  0x00000020 , 0x0000075d 
+ 00001860  0x00000b70 call  0x00000753 
+ 00001861  0x00000b72 jam  0x000000d0 , 0x00008955 
+ 00001862  0x00000b73 jam  0x000000e0 , 0x00008956 
+ 00001863  0x00000b75 jam  0x0000006c , 0x00008958 
+ 00001864  0x00000b77 branch  0x0000294b 
+ 00001865  0x00000b84 call  0x00000758 
+ 00001866  0x00000b86 jam  0x000000d0 , 0x00008955 
+ 00001867  0x00000b87 jam  0x000000e0 , 0x00008956 
+ 00001868  0x00000b89 jam  0x0000003c , 0x00008958 
+ 00001869  0x00000b8b branch  0x00002953 
+ 00001870  0x00000b98 call  0x00000753 
+ 00001871  0x00000b9a jam  0x000000d0 , 0x00008955 
+ 00001872  0x00000b9b jam  0x000000c0 , 0x00008956 
+ 00001873  0x00000b9d jam  0x0000006c , 0x00008958 
+ 00001874  0x00000b9f branch  0x0000295b 
+ 00001875  0x00000ba2 jam  0x0000005b , 0x0000894c 
+ 00001876  0x00000ba3 jam  0x00000096 , 0x0000894d 
+ 00001877  0x00000ba4 jam  0x0000002c , 0x0000894e 
+ 00001878  0x00000ba5 jam  0x00000046 , 0x0000894f 
+ 00001879  0x00000ba6 rtn 
+ 00001880  0x00000ba9 jam  0x000000fb , 0x0000894c 
+ 00001881  0x00000baa jam  0x000000ef , 0x0000894d 
+ 00001882  0x00000bab jam  0x000000ec , 0x0000894e 
+ 00001883  0x00000bac jam  0x0000005e , 0x0000894f 
+ 00001884  0x00000bad rtn 
+ 00001885  0x00000bb1 jam  0x000000c2 , 0x00008956 
+ 00001886  0x00000bb2 jam  0x000000d0 , 0x00008955 
+ 00001887  0x00000bb3 rtn 
+ 00001888  0x00000bb6 force  0x00000008 , 0x00000015 
+ 00001889  0x00000bb7 branch  0x000028fa 
+ 00001890  0x00000bba call  0x00002978 
+ 00001891  0x00000bbb jam  0x00000005 , 0x00008042 
+ 00001892  0x00000bbc rtn 
+ 00001893  0x00000bc0 fetcht  0x00000001 , 0x000011c6 
+ 00001894  0x00000bc1 rshift4  0x00000002 , 0x00000002 
+ 00001895  0x00000bc2 fetch  0x00000001 , 0x00004b52 
+ 00001896  0x00000bc3 isub  0x00000002 , 0x0000003e 
+ 00001897  0x00000bc4 branch  0x00000784 , 0x00000005 
+ 00001898  0x00000bc5 storet  0x00000001 , 0x00004b52 
+ 00001899  0x00000bc6 increase  0x00000001 , 0x00000002 
+ 00001900  0x00000bc7 setarg  0x00000100 
+ 00001901  0x00000bc8 imul32  0x00000002 , 0x00000002 
+ 00001902  0x00000bc9 fetch  0x00000003 , 0x00004b53 
+ 00001903  0x00000bca isub  0x00000002 , 0x0000003f 
+ 00001904  0x00000bcc fetcht  0x00000003 , 0x00004b56 
+ 00001905  0x00000bcd iadd  0x00000002 , 0x0000003f 
+ 00001906  0x00000bce increase  0xfffffffb , 0x0000003f 
+ 00001907  0x00000bcf store  0x00000003 , 0x00004b59 
+ 00001908  0x00000bd0 call  0x00000355 
+ 00001909  0x00000bd2 fetch  0x00000003 , 0x00004b59 
+ 00001910  0x00000bd3 arg  0x00000100 , 0x00000002 
+ 00001911  0x00000bd4 arg  0x00001f00 , 0x00000011 
+ 00001912  0x00000bd5 call  0x00006562 
+ 00001913  0x00000bd6 fetch  0x00000004 , 0x00001f00 
+ 00001914  0x00000bd7 fetcht  0x00000004 , 0x00004b5c 
+ 00001915  0x00000bd8 isub  0x00000002 , 0x0000003e 
+ 00001916  0x00000bd9 nbranch  0x00000775 , 0x00000005 
+ 00001917  0x00000bda call  0x00000324 
+ 00001918  0x00000bdc setarg  0x00001f00 
+ 00001919  0x00000bdd store  0x00000002 , 0x00004199 
+ 00001920  0x00000bde jam  0x00000040 , 0x0000419b 
+ 00001921  0x00000bdf call  0x000064ca 
+ 00001922  0x00000be0 setarg  0x00000000 
+ 00001923  0x00000be1 store  0x00000004 , 0x00004199 
+ 00001924  0x00000be3 fetch  0x00000001 , 0x000011c6 
+ 00001925  0x00000be4 branch  0x00000001 
+ 00001926  0x00000bea fetch  0x00000004 , 0x0000469b 
+ 00001927  0x00000beb rtn  0x00000034 
+ 00001928  0x00000bec call  0x000007e6 
+ 00001929  0x00000bed setarg  0x00000006 
+ 00001930  0x00000bee call  0x000007d9 
+ 00001931  0x00000bef setarg  0x00000003 
+ 00001932  0x00000bf0 call  0x000007df 
+ 00001933  0x00000bf1 fetch  0x00000001 , 0x00004b0b 
+ 00001934  0x00000bf2 beq  0x00000001 , 0x00000792 
+ 00001935  0x00000bf4 arg  0x00000005 , 0x00000039 
+ 00001936  0x00000bf5 arg  0x00004b0b , 0x00000005 
+ 00001937  0x00000bf6 branch  0x00007ed4 
+ 00001938  0x00000bf9 fetch  0x00000002 , 0x00004b0c 
+ 00001939  0x00000bfa store  0x00000002 , 0x000011be 
+ 00001940  0x00000bfb fetch  0x00000002 , 0x0000469b 
+ 00001941  0x00000bfc store  0x00000002 , 0x000011c0 
+ 00001942  0x00000bfd call  0x000007a5 
+ 00001943  0x00000bfe fetch  0x00000002 , 0x000011be 
+ 00001944  0x00000bff store  0x00000002 , 0x00004b0c 
+ 00001945  0x00000c00 fetch  0x00000002 , 0x000011c0 
+ 00001946  0x00000c01 store  0x00000002 , 0x0000469b 
+ 00001947  0x00000c03 fetch  0x00000002 , 0x00004b0e 
+ 00001948  0x00000c04 store  0x00000002 , 0x000011be 
+ 00001949  0x00000c05 fetch  0x00000002 , 0x0000469d 
+ 00001950  0x00000c06 store  0x00000002 , 0x000011c0 
+ 00001951  0x00000c07 call  0x000007ad 
+ 00001952  0x00000c08 fetch  0x00000002 , 0x000011be 
+ 00001953  0x00000c09 store  0x00000002 , 0x00004b0e 
+ 00001954  0x00000c0a fetch  0x00000002 , 0x000011c0 
+ 00001955  0x00000c0b store  0x00000002 , 0x0000469d 
+ 00001956  0x00000c0c rtn 
+ 00001957  0x00000c0f fetch  0x00000002 , 0x000011be 
+ 00001958  0x00000c10 fetcht  0x00000002 , 0x000011c0 
+ 00001959  0x00000c11 iadd  0x00000002 , 0x0000003f 
+ 00001960  0x00000c12 fetcht  0x00000001 , 0x00004bbe 
+ 00001961  0x00000c13 iadd  0x00000002 , 0x0000003f 
+ 00001962  0x00000c14 and  0x0000003f , 0x00000001 , 0x00000002 
+ 00001963  0x00000c15 storet  0x00000001 , 0x00004bbe 
+ 00001964  0x00000c16 branch  0x000007b5 
+ 00001965  0x00000c19 fetch  0x00000002 , 0x000011be 
+ 00001966  0x00000c1a fetcht  0x00000002 , 0x000011c0 
+ 00001967  0x00000c1b iadd  0x00000002 , 0x0000003f 
+ 00001968  0x00000c1c fetcht  0x00000001 , 0x00004bbf 
+ 00001969  0x00000c1d iadd  0x00000002 , 0x0000003f 
+ 00001970  0x00000c1e and  0x0000003f , 0x00000001 , 0x00000002 
+ 00001971  0x00000c1f storet  0x00000001 , 0x00004bbf 
+ 00001972  0x00000c20 branch  0x000007b5 
+ 00001973  0x00000c27 store  0x00000003 , 0x000011c2 
+ 00001974  0x00000c28 isolate1  0x00000010 , 0x0000003f 
+ 00001975  0x00000c29 branch  0x000007bf , 0x00000001 
+ 00001976  0x00000c2a fetch  0x00000001 , 0x000011c3 
+ 00001977  0x00000c2b beq  0x000000ff , 0x000007c6 
+ 00001978  0x00000c2c fetch  0x00000001 , 0x000011c2 
+ 00001979  0x00000c2e rshift  0x0000003f , 0x0000003f 
+ 00001980  0x00000c2f store  0x00000002 , 0x000011be 
+ 00001981  0x00000c30 store  0x00000002 , 0x000011c0 
+ 00001982  0x00000c31 rtn 
+ 00001983  0x00000c33 fetch  0x00000001 , 0x000011c3 
+ 00001984  0x00000c34 beq  0x00000000 , 0x000007c3 
+ 00001985  0x00000c35 fetch  0x00000003 , 0x000011c2 
+ 00001986  0x00000c36 branch  0x000007bb 
+ 00001987  0x00000c38 jam  0x00000000 , 0x000011c4 
+ 00001988  0x00000c39 fetch  0x00000001 , 0x000011c2 
+ 00001989  0x00000c3a branch  0x000007bb 
+ 00001990  0x00000c3d fetch  0x00000001 , 0x000011c2 
+ 00001991  0x00000c3e call  0x000007d1 
+ 00001992  0x00000c3f store  0x00000001 , 0x000011be 
+ 00001993  0x00000c40 store  0x00000001 , 0x000011c0 
+ 00001994  0x00000c41 branch  0x000007cf , 0x00000034 
+ 00001995  0x00000c42 setarg  0x000000ff 
+ 00001996  0x00000c44 store  0x00000001 , 0x000011bf 
+ 00001997  0x00000c45 store  0x00000001 , 0x000011c1 
+ 00001998  0x00000c46 rtn 
+ 00001999  0x00000c48 setarg  0x00000000 
+ 00002000  0x00000c49 branch  0x000007cc 
+ 00002001  0x00000c4c sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002002  0x00000c4d store  0x00000001 , 0x00000aae 
+ 00002003  0x00000c4e fetch  0x00000001 , 0x00000aae 
+ 00002004  0x00000c4f rshift  0x0000003f , 0x0000003f 
+ 00002005  0x00000c50 store  0x00000001 , 0x00000aae 
+ 00002006  0x00000c51 fetch  0x00000001 , 0x00000aae 
+ 00002007  0x00000c52 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002008  0x00000c53 rtn 
+ 00002009  0x00000c58 isub  0x00000011 , 0x0000003e 
+ 00002010  0x00000c59 nbranch  0x000007e4 , 0x00000002 
+ 00002011  0x00000c5a isub  0x00000012 , 0x0000003e 
+ 00002012  0x00000c5b nbranch  0x000007e4 , 0x00000002 
+ 00002013  0x00000c5d jam  0x00000000 , 0x00004b0b 
+ 00002014  0x00000c5e rtn 
+ 00002015  0x00000c60 isub  0x00000011 , 0x0000003e 
+ 00002016  0x00000c61 nrtn  0x00000002 
+ 00002017  0x00000c62 isub  0x00000012 , 0x0000003e 
+ 00002018  0x00000c63 nrtn  0x00000002 
+ 00002019  0x00000c64 branch  0x000007dd 
+ 00002020  0x00000c66 jam  0x00000001 , 0x00004b0b 
+ 00002021  0x00000c67 rtn 
+ 00002022  0x00000c6a fetch  0x00000002 , 0x0000469b 
+ 00002023  0x00000c6b call  0x000007ed 
+ 00002024  0x00000c6c copy  0x0000003f , 0x00000011 
+ 00002025  0x00000c6d fetch  0x00000002 , 0x0000469d 
+ 00002026  0x00000c6e call  0x000007ed 
+ 00002027  0x00000c6f copy  0x0000003f , 0x00000012 
+ 00002028  0x00000c70 rtn 
+ 00002029  0x00000c77 store  0x00000002 , 0x000011c0 
+ 00002030  0x00000c78 fetch  0x00000001 , 0x000011c1 
+ 00002031  0x00000c79 beq  0x000000ff , 0x000007f3 
+ 00002032  0x00000c7a fetch  0x00000001 , 0x000011c0 
+ 00002033  0x00000c7c and_into  0x000000ff , 0x0000003f 
+ 00002034  0x00000c7e rtn 
+ 00002035  0x00000c80 fetch  0x00000002 , 0x000011c0 
+ 00002036  0x00000c81 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002037  0x00000c82 branch  0x000007f1 
+ 00008192  0x00000c8f call  0x00002abc 
+ 00008193  0x00000c92 bpatch  0x00000000 , 0x00004000 
+ 00008194  0x00000c93 clear_stack 
+ 00008195  0x00000c94 call  0x0000640d 
+ 00008196  0x00000c95 call  0x0000296c 
+ 00008197  0x00000c96 call  0x000065a3 
+ 00008198  0x00000c97 call  0x00002a96 
+ 00008199  0x00000c98 call  0x00004d6a 
+ 00008200  0x00000c99 bpatch  0x00000001 , 0x00004000 
+ 00008201  0x00000c9a call  0x00006a03 
+ 00008202  0x00000c9b call  0x00005cf6 
+ 00008203  0x00000c9c call  0x00007ccc 
+ 00008204  0x00000c9d call  0x000032d8 
+ 00008205  0x00000c9e ncall  0x0000689c , 0x0000002b 
+ 00008206  0x00000c9f bpatch  0x00000002 , 0x00004000 
+ 00008207  0x00000ca0 call  0x000032e3 , 0x0000002b 
+ 00008208  0x00000ca1 call  0x0000756a 
+ 00008209  0x00000ca2 call  0x00002b41 , 0x0000002b 
+ 00008210  0x00000ca4 bpatch  0x00000003 , 0x00004000 
+ 00008211  0x00000ca5 call  0x000076dc 
+ 00008212  0x00000ca6 call  0x00007aaf 
+ 00008213  0x00000ca7 call  0x0000756d 
+ 00008214  0x00000ca8 call  0x0000535c 
+ 00008215  0x00000ca9 bpatch  0x00000004 , 0x00004000 
+ 00008216  0x00000caa call  0x00002038 
+ 00008217  0x00000cab call  0x000032ed 
+ 00008218  0x00000cac call  0x0000208f 
+ 00008219  0x00000cad call  0x000022f8 
+ 00008220  0x00000cae call  0x0000236a 
+ 00008221  0x00000caf call  0x00002021 
+ 00008222  0x00000cb0 call  0x00002b6a 
+ 00008223  0x00000cb1 call  0x00002c72 
+ 00008224  0x00000cb2 branch  0x00002012 
+ 00008225  0x00000cb5 call  0x00002026 
+ 00008226  0x00000cb6 rtnmark0  0x00000009 
+ 00008227  0x00000cb7 set0  0x00000009 , 0x00000000 
+ 00008228  0x00000cb8 call  0x00002223 
+ 00008229  0x00000cb9 branch  0x000053ce 
+ 00008230  0x00000cbc bpatch  0x00000005 , 0x00004000 
+ 00008231  0x00000cbd call  0x0000225e 
+ 00008232  0x00000cbe nbranch  0x0000202f , 0x00000005 
+ 00008233  0x00000cbf call  0x0000220a 
+ 00008234  0x00000cc0 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008235  0x00000cc1 ifetch  0x00000001 , 0x00000006 
+ 00008236  0x00000cc2 bbit1  0x00000000 , 0x00005360 
+ 00008237  0x00000cc3 bbit1  0x00000001 , 0x00002166 
+ 00008238  0x00000cc4 branch  0x000023cf 
+ 00008239  0x00000cc6 call  0x0000222b 
+ 00008240  0x00000cc7 copy  0x00000039 , 0x0000003e 
+ 00008241  0x00000cc8 rtn  0x00000005 
+ 00008242  0x00000cc9 call  0x0000220a 
+ 00008243  0x00000cca fetch  0x00000001 , 0x00000030 
+ 00008244  0x00000ccb bbit1  0x00000003 , 0x000020d3 
+ 00008245  0x00000ccc fetch  0x00000001 , 0x00000031 
+ 00008246  0x00000ccd bbit1  0x00000001 , 0x00002166 
+ 00008247  0x00000cce branch  0x000023cf 
+ 00008248  0x00000cd7 fetch  0x00000001 , 0x000041ce 
+ 00008249  0x00000cd8 rtn  0x00000034 
+ 00008250  0x00000cd9 beq  0x00000001 , 0x00002048 
+ 00008251  0x00000cda beq  0x00000002 , 0x0000204d 
+ 00008252  0x00000cdb beq  0x00000003 , 0x00002050 
+ 00008253  0x00000cdc beq  0x00000005 , 0x00002055 
+ 00008254  0x00000cdd beq  0x0000001b , 0x00002045 
+ 00008255  0x00000cde call  0x00002257 
+ 00008256  0x00000cdf rtn  0x00000005 
+ 00008257  0x00000ce0 call  0x0000225a 
+ 00008258  0x00000ce1 rtn  0x00000005 
+ 00008259  0x00000ce3 jam  0x00000000 , 0x000041ce 
+ 00008260  0x00000ce4 rtn 
+ 00008261  0x00000ce7 jam  0x0000001b , 0x0000049b 
+ 00008262  0x00000ce8 jam  0x00000000 , 0x000041ce 
+ 00008263  0x00000ce9 rtn 
+ 00008264  0x00000cec set1  0x0000001c , 0x00000000 
+ 00008265  0x00000ced set0  0x0000001e , 0x00000000 
+ 00008266  0x00000cee jam  0x000000ff , 0x0000008f 
+ 00008267  0x00000cef jam  0x0000001f , 0x0000008d 
+ 00008268  0x00000cf0 branch  0x00002043 
+ 00008269  0x00000cf3 set0  0x0000001c , 0x00000000 
+ 00008270  0x00000cf4 force  0x00000000 , 0x0000001b 
+ 00008271  0x00000cf5 branch  0x00002043 
+ 00008272  0x00000cf8 call  0x0000225a 
+ 00008273  0x00000cf9 rtn  0x00000005 
+ 00008274  0x00000cfa force  0x00000001 , 0x00000002 
+ 00008275  0x00000cfb jam  0x00000005 , 0x0000016e 
+ 00008276  0x00000cfc branch  0x0000205c 
+ 00008277  0x00000cff bpatch  0x00000006 , 0x00004000 
+ 00008278  0x00000d01 fetch  0x00000006 , 0x000041d0 
+ 00008279  0x00000d02 branch  0x00002043 , 0x00000034 
+ 00008280  0x00000d03 jam  0x00000001 , 0x00004681 
+ 00008281  0x00000d05 jam  0x00000003 , 0x00000055 
+ 00008282  0x00000d06 branch  0x0000205b 
+ 00008283  0x00000d09 force  0x00000025 , 0x00000002 
+ 00008284  0x00000d0b bpatch  0x00000007 , 0x00004000 
+ 00008285  0x00000d0c fetch  0x00000001 , 0x000000f1 
+ 00008286  0x00000d0d branch  0x00002062 , 0x00000034 
+ 00008287  0x00000d0e lshift3  0x0000003f , 0x0000003f 
+ 00008288  0x00000d0f lshift4  0x0000003f , 0x0000003f 
+ 00008289  0x00000d10 increase  0xffffffff , 0x0000003f 
+ 00008290  0x00000d12 store  0x00000001 , 0x000040a6 
+ 00008291  0x00000d13 store  0x00000001 , 0x000000f0 
+ 00008292  0x00000d14 jam  0x0000001f , 0x0000008e 
+ 00008293  0x00000d15 set0  0x0000000c , 0x00000000 
+ 00008294  0x00000d16 call  0x0000223b 
+ 00008295  0x00000d17 nbranch  0x00002083 , 0x00000005 
+ 00008296  0x00000d18 call  0x00002a6f 
+ 00008297  0x00000d19 store  0x00000001 , 0x00000077 
+ 00008298  0x00000d1a storet  0x00000001 , 0x0000007c 
+ 00008299  0x00000d1b fetch  0x00000006 , 0x000041d0 
+ 00008300  0x00000d1c store  0x00000006 , 0x00000040 
+ 00008301  0x00000d1d bpatch  0x00000008 , 0x00004001 
+ 00008302  0x00000d1e call  0x00007f15 
+ 00008303  0x00000d1f force  0x00000000 , 0x0000003f 
+ 00008304  0x00000d20 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008305  0x00000d21 nsetflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00008306  0x00000d22 set1  0x00000003 , 0x0000003f 
+ 00008307  0x00000d23 store  0x00000001 , 0x00000030 
+ 00008308  0x00000d24 jam  0x00000003 , 0x00000a99 
+ 00008309  0x00000d25 call  0x00007d86 
+ 00008310  0x00000d26 force  0x00000000 , 0x0000003f 
+ 00008311  0x00000d27 setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00008312  0x00000d28 store  0x00000001 , 0x0000004c 
+ 00008313  0x00000d29 setarg  0x00000000 
+ 00008314  0x00000d2a set1  0x00000001 , 0x0000003f 
+ 00008315  0x00000d2b store  0x00000001 , 0x00000031 
+ 00008316  0x00000d2c enable  0x00000029 
+ 00008317  0x00000d2d call  0x00002223 
+ 00008318  0x00000d2e disable  0x00000029 
+ 00008319  0x00000d2f force  0x00000003 , 0x00000007 
+ 00008320  0x00000d30 fetch  0x00000002 , 0x000040b9 
+ 00008321  0x00000d31 call  0x00007f08 
+ 00008322  0x00000d32 branch  0x00002043 
+ 00008323  0x00000d34 bpatch  0x00000009 , 0x00004001 
+ 00008324  0x00000d35 fetch  0x00000006 , 0x000041d0 
+ 00008325  0x00000d36 store  0x00000006 , 0x00000040 
+ 00008326  0x00000d37 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008327  0x00000d38 branch  0x00002089 , 0x00000001 
+ 00008328  0x00000d39 branch  0x00002043 
+ 00008329  0x00000d3b arg  0x00000101 , 0x00000005 
+ 00008330  0x00000d3c arg  0x00000008 , 0x00000039 
+ 00008331  0x00000d3d call  0x00007ec6 
+ 00008332  0x00000d3e jam  0x00000004 , 0x00000a99 
+ 00008333  0x00000d3f call  0x00007d86 
+ 00008334  0x00000d40 branch  0x00002043 
+ 00008335  0x00000d48 rtnmark0  0x0000001c 
+ 00008336  0x00000d49 force  0x00000001 , 0x00000007 
+ 00008337  0x00000d4a call  0x00007f16 
+ 00008338  0x00000d4b nsetflag  0x00000034 , 0x0000001c , 0x00000000 
+ 00008339  0x00000d4c nbranch  0x00002095 , 0x00000034 
+ 00008340  0x00000d4d rtn 
+ 00008341  0x00000d52 bpatch  0x0000000a , 0x00004001 
+ 00008342  0x00000d53 fetcht  0x00000002 , 0x000040bb 
+ 00008343  0x00000d54 force  0x00000004 , 0x00000007 
+ 00008344  0x00000d55 call  0x0000271c 
+ 00008345  0x00000d56 rtn  0x00000028 
+ 00008346  0x00000d57 call  0x000028a4 
+ 00008347  0x00000d58 force  0x00000000 , 0x00000024 
+ 00008348  0x00000d5a rtn  0x00000003 
+ 00008349  0x00000d5b set0  0x0000000b , 0x00000000 
+ 00008350  0x00000d5c set0  0x00000000 , 0x00000000 
+ 00008351  0x00000d5e add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008352  0x00000d5f isolate1  0x0000001e , 0x00000000 
+ 00008353  0x00000d60 setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008354  0x00000d61 compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008355  0x00000d62 nbranch  0x000020be , 0x00000001 
+ 00008356  0x00000d65 bpatch  0x0000000b , 0x00004001 
+ 00008357  0x00000d66 fetch  0x00000001 , 0x00000012 
+ 00008358  0x00000d67 increase  0x00000001 , 0x0000003f 
+ 00008359  0x00000d68 store  0x00000001 , 0x00000012 
+ 00008360  0x00000d69 call  0x000028d8 
+ 00008361  0x00000d6a call  0x000028d2 
+ 00008362  0x00000d6b call  0x000028f2 
+ 00008363  0x00000d6c call  0x00002a51 
+ 00008364  0x00000d6d call  0x00002a56 
+ 00008365  0x00000d6e call  0x00002a64 
+ 00008366  0x00000d6f call  0x0000264d 
+ 00008367  0x00000d70 call  0x000020b1 
+ 00008368  0x00000d71 branch  0x0000209c 
+ 00008369  0x00000d74 bpatch  0x0000000c , 0x00004001 
+ 00008370  0x00000d75 fetch  0x00000001 , 0x0000008d 
+ 00008371  0x00000d76 increase  0xffffffff , 0x0000003f 
+ 00008372  0x00000d77 store  0x00000001 , 0x0000008d 
+ 00008373  0x00000d78 rtn  0x00000002 
+ 00008374  0x00000d79 jam  0x0000001f , 0x0000008d 
+ 00008375  0x00000d7a fetch  0x00000001 , 0x0000008f 
+ 00008376  0x00000d7b increase  0xffffffff , 0x0000003f 
+ 00008377  0x00000d7c store  0x00000001 , 0x0000008f 
+ 00008378  0x00000d7d rtn  0x00000002 
+ 00008379  0x00000d7e setflip  0x0000001e , 0x00000000 
+ 00008380  0x00000d7f jam  0x000000ff , 0x0000008f 
+ 00008381  0x00000d80 rtn 
+ 00008382  0x00000d83 bpatch  0x0000000d , 0x00004001 
+ 00008383  0x00000d84 call  0x000028d8 
+ 00008384  0x00000d85 call  0x000028cc 
+ 00008385  0x00000d86 call  0x000028f2 
+ 00008386  0x00000d87 call  0x00002a5b 
+ 00008387  0x00000d88 call  0x000029eb 
+ 00008388  0x00000d89 call  0x00002a0d 
+ 00008389  0x00000d8a branch  0x000020c8 , 0x00000018 
+ 00008390  0x00000d8b call  0x000020b1 
+ 00008391  0x00000d8c branch  0x0000209f 
+ 00008392  0x00000d8e bpatch  0x0000000e , 0x00004001 
+ 00008393  0x00000d8f call  0x000029bb 
+ 00008394  0x00000d90 call  0x00002a6b 
+ 00008395  0x00000d91 call  0x0000251e 
+ 00008396  0x00000d92 set0  0x00000001 , 0x00000000 
+ 00008397  0x00000d93 rtnmark0  0x0000000b 
+ 00008398  0x00000d95 bpatch  0x0000000f , 0x00004001 
+ 00008399  0x00000d97 fetch  0x00000001 , 0x00000013 
+ 00008400  0x00000d98 increase  0x00000001 , 0x0000003f 
+ 00008401  0x00000d99 store  0x00000001 , 0x00000013 
+ 00008402  0x00000d9a rtn 
+ 00008403  0x00000da3 bpatch  0x00000010 , 0x00004002 
+ 00008404  0x00000da4 enable  0x00000029 
+ 00008405  0x00000da5 enable  0x00000030 
+ 00008406  0x00000da6 fetch  0x00000002 , 0x000040b5 
+ 00008407  0x00000da7 branch  0x000020db , 0x00000034 
+ 00008408  0x00000da8 force  0x00000008 , 0x00000007 
+ 00008409  0x00000da9 call  0x00007f16 
+ 00008410  0x00000daa nrtn  0x00000034 
+ 00008411  0x00000dac bpatch  0x00000011 , 0x00004002 
+ 00008412  0x00000dad fetcht  0x00000002 , 0x000040b7 
+ 00008413  0x00000dae force  0x00000028 , 0x00000007 
+ 00008414  0x00000daf call  0x0000271c 
+ 00008415  0x00000db0 branch  0x00002114 , 0x00000028 
+ 00008416  0x00000db1 force  0x00000003 , 0x00000007 
+ 00008417  0x00000db2 call  0x00007f16 
+ 00008418  0x00000db3 nbranch  0x000020f0 , 0x00000034 
+ 00008419  0x00000db4 fetch  0x00000001 , 0x0000004c 
+ 00008420  0x00000db5 bbit1  0x00000004 , 0x000020e6 
+ 00008421  0x00000db6 branch  0x000020e9 
+ 00008422  0x00000db8 arg  0x00000101 , 0x00000005 
+ 00008423  0x00000db9 arg  0x00000008 , 0x00000039 
+ 00008424  0x00000dba call  0x00007ec6 
+ 00008425  0x00000dbc bpatch  0x00000012 , 0x00004002 
+ 00008426  0x00000dbd jam  0x00000000 , 0x00000030 
+ 00008427  0x00000dbe call  0x00005cf7 
+ 00008428  0x00000dbf jam  0x00000000 , 0x00004681 
+ 00008429  0x00000dc0 jam  0x00000013 , 0x00000a99 
+ 00008430  0x00000dc1 call  0x00007d86 
+ 00008431  0x00000dc2 branch  0x00002114 
+ 00008432  0x00000dc5 bpatch  0x00000013 , 0x00004002 
+ 00008433  0x00000dc6 force  0x00000000 , 0x0000000b 
+ 00008434  0x00000dc7 until  0x00000023 , 0x00000026 
+ 00008435  0x00000dc8 fetch  0x00000001 , 0x000000f2 
+ 00008436  0x00000dc9 increase  0xffffffff , 0x0000003f 
+ 00008437  0x00000dca ixor  0x00000022 , 0x0000003f 
+ 00008438  0x00000dcb compare  0x00000000 , 0x0000003f , 0x00000003 
+ 00008439  0x00000dcc nbranch  0x000020f0 , 0x00000001 
+ 00008440  0x00000dcd deposit  0x00000004 
+ 00008441  0x00000dce store  0x00000001 , 0x00000181 
+ 00008442  0x00000dcf force  0x00000000 , 0x00000026 
+ 00008443  0x00000dd0 force  0x00000000 , 0x00000024 
+ 00008444  0x00000dd3 bpatch  0x00000014 , 0x00004002 
+ 00008445  0x00000dd4 branch  0x00002114 , 0x00000003 
+ 00008446  0x00000dd5 call  0x000028dc 
+ 00008447  0x00000dd6 arg  0x00000600 , 0x0000000b 
+ 00008448  0x00000dd7 until  0x00000023 , 0x00000026 
+ 00008449  0x00000dd9 bpatch  0x00000015 , 0x00004002 
+ 00008450  0x00000dda fetch  0x00000004 , 0x000000f2 
+ 00008451  0x00000ddb iforce  0x00000021 
+ 00008452  0x00000ddc increase  0x00000001 , 0x0000003f 
+ 00008453  0x00000ddd store  0x00000004 , 0x000000f2 
+ 00008454  0x00000dde isolate1  0x0000000c , 0x00000000 
+ 00008455  0x00000ddf setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008456  0x00000de0 compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008457  0x00000de1 nbranch  0x00002128 , 0x00000001 
+ 00008458  0x00000de2 fetch  0x00000001 , 0x0000000c 
+ 00008459  0x00000de3 increase  0x00000001 , 0x0000003f 
+ 00008460  0x00000de4 store  0x00000001 , 0x0000000c 
+ 00008461  0x00000de5 call  0x000028d2 
+ 00008462  0x00000de6 call  0x00002a51 
+ 00008463  0x00000de7 call  0x00002a56 
+ 00008464  0x00000de8 call  0x00002a64 
+ 00008465  0x00000de9 call  0x0000264d 
+ 00008466  0x00000dea call  0x0000211a 
+ 00008467  0x00000deb branch  0x000020fc 
+ 00008468  0x00000ded bpatch  0x00000016 , 0x00004002 
+ 00008469  0x00000dee disable  0x00000029 
+ 00008470  0x00000def fetch  0x00000002 , 0x000040b5 
+ 00008471  0x00000df0 rtn  0x00000034 
+ 00008472  0x00000df1 force  0x00000008 , 0x00000007 
+ 00008473  0x00000df2 branch  0x00007f08 
+ 00008474  0x00000df5 bpatch  0x00000017 , 0x00004002 
+ 00008475  0x00000df6 fetch  0x00000001 , 0x0000008e 
+ 00008476  0x00000df7 increase  0xffffffff , 0x0000003f 
+ 00008477  0x00000df8 store  0x00000001 , 0x0000008e 
+ 00008478  0x00000df9 rtn  0x00000002 
+ 00008479  0x00000dfa jam  0x0000001f , 0x0000008e 
+ 00008480  0x00000dfb fetch  0x00000001 , 0x000000f0 
+ 00008481  0x00000dfc increase  0xffffffff , 0x0000003f 
+ 00008482  0x00000dfd store  0x00000001 , 0x000000f0 
+ 00008483  0x00000dfe rtn  0x00000002 
+ 00008484  0x00000dff setflip  0x0000000c , 0x00000000 
+ 00008485  0x00000e00 fetch  0x00000001 , 0x000040a6 
+ 00008486  0x00000e01 store  0x00000001 , 0x000000f0 
+ 00008487  0x00000e02 rtn 
+ 00008488  0x00000e05 bpatch  0x00000018 , 0x00004003 
+ 00008489  0x00000e06 call  0x000028cc 
+ 00008490  0x00000e07 call  0x00002a5b 
+ 00008491  0x00000e08 call  0x000029eb 
+ 00008492  0x00000e09 call  0x00002a0d 
+ 00008493  0x00000e0a branch  0x00002130 , 0x00000018 
+ 00008494  0x00000e0b call  0x0000211a 
+ 00008495  0x00000e0c branch  0x00002101 
+ 00008496  0x00000e0e call  0x0000264d 
+ 00008497  0x00000e0f fetch  0x00000001 , 0x0000000d 
+ 00008498  0x00000e10 increase  0x00000001 , 0x0000003f 
+ 00008499  0x00000e11 store  0x00000001 , 0x0000000d 
+ 00008500  0x00000e12 force  0x00000000 , 0x0000001b 
+ 00008501  0x00000e13 fetch  0x00000004 , 0x000000f2 
+ 00008502  0x00000e15 bpatch  0x00000019 , 0x00004003 
+ 00008503  0x00000e16 call  0x00002a4f 
+ 00008504  0x00000e17 call  0x000028dc 
+ 00008505  0x00000e18 increase  0x00000001 , 0x00000026 
+ 00008506  0x00000e1a and_into  0x000001fd , 0x00000021 
+ 00008507  0x00000e1b and_into  0x000001fc , 0x00000024 
+ 00008508  0x00000e1c call  0x000028d2 
+ 00008509  0x00000e1d call  0x00002a51 
+ 00008510  0x00000e1e call  0x00002a56 
+ 00008511  0x00000e1f call  0x00002a64 
+ 00008512  0x00000e20 deposit  0x00000022 
+ 00008513  0x00000e21 store  0x00000004 , 0x00000161 
+ 00008514  0x00000e22 force  0x00000000 , 0x00000004 
+ 00008515  0x00000e23 force  0x00000002 , 0x00000001 
+ 00008516  0x00000e24 call  0x00002a6b 
+ 00008517  0x00000e25 call  0x00002766 
+ 00008518  0x00000e27 bpatch  0x0000001a , 0x00004003 
+ 00008519  0x00000e28 call  0x00002a4d 
+ 00008520  0x00000e29 or_into  0x00000002 , 0x00000021 
+ 00008521  0x00000e2a and_into  0x000001fc , 0x00000024 
+ 00008522  0x00000e2b call  0x000028cc 
+ 00008523  0x00000e2c call  0x00002a5b 
+ 00008524  0x00000e2d call  0x000029eb 
+ 00008525  0x00000e2e call  0x00002a0d 
+ 00008526  0x00000e2f call  0x0000264d , 0x00000018 
+ 00008527  0x00000e30 branch  0x00002155 , 0x00000018 
+ 00008528  0x00000e31 fetch  0x00000001 , 0x00000010 
+ 00008529  0x00000e32 branch  0x000020fc , 0x00000034 
+ 00008530  0x00000e33 increase  0xffffffff , 0x0000003f 
+ 00008531  0x00000e34 store  0x00000001 , 0x00000010 
+ 00008532  0x00000e35 branch  0x00002136 
+ 00008533  0x00000e38 bpatch  0x0000001b , 0x00004003 
+ 00008534  0x00000e39 fetch  0x00000001 , 0x0000000e 
+ 00008535  0x00000e3a increase  0x00000001 , 0x0000003f 
+ 00008536  0x00000e3b store  0x00000001 , 0x0000000e 
+ 00008537  0x00000e3c call  0x00002435 
+ 00008538  0x00000e3e call  0x000022f2 
+ 00008539  0x00000e3f branch  0x0000215f , 0x00000018 
+ 00008540  0x00000e40 call  0x00002455 
+ 00008541  0x00000e41 nbranch  0x0000215a , 0x00000034 
+ 00008542  0x00000e42 branch  0x000020fc 
+ 00008543  0x00000e45 bpatch  0x0000001c , 0x00004003 
+ 00008544  0x00000e46 fetch  0x00000001 , 0x00000030 
+ 00008545  0x00000e47 set0  0x00000003 , 0x0000003f 
+ 00008546  0x00000e48 store  0x00000001 , 0x00000030 
+ 00008547  0x00000e49 call  0x00002440 
+ 00008548  0x00000e4a disable  0x00000029 
+ 00008549  0x00000e4b rtn 
+ 00008550  0x00000e4f bpatch  0x0000001d , 0x00004003 
+ 00008551  0x00000e50 enable  0x00000029 
+ 00008552  0x00000e51 enable  0x00000030 
+ 00008553  0x00000e52 call  0x000021e1 
+ 00008554  0x00000e53 rtn  0x00000028 
+ 00008555  0x00000e54 call  0x00002c69 
+ 00008556  0x00000e55 call  0x00002a4f 
+ 00008557  0x00000e56 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008558  0x00000e57 call  0x000028e2 
+ 00008559  0x00000e58 force  0x00000003 , 0x00000024 
+ 00008560  0x00000e59 call  0x00006cc2 
+ 00008561  0x00000e5a call  0x00002489 
+ 00008562  0x00000e5b call  0x000028d2 
+ 00008563  0x00000e5c call  0x00002a51 
+ 00008564  0x00000e5d call  0x00002a56 
+ 00008565  0x00000e5e call  0x00002a64 
+ 00008566  0x00000e5f call  0x00002762 
+ 00008567  0x00000e61 bpatch  0x0000001e , 0x00004003 
+ 00008568  0x00000e62 call  0x00005d08 
+ 00008569  0x00000e63 call  0x000022e4 
+ 00008570  0x00000e64 nbranch  0x00002180 , 0x0000002d 
+ 00008571  0x00000e65 call  0x00002a88 
+ 00008572  0x00000e66 call  0x00002728 
+ 00008573  0x00000e67 fetch  0x00000001 , 0x0000000f 
+ 00008574  0x00000e68 increase  0x00000001 , 0x0000003f 
+ 00008575  0x00000e69 store  0x00000001 , 0x0000000f 
+ 00008576  0x00000e6b bpatch  0x0000001f , 0x00004003 
+ 00008577  0x00000e6c call  0x00006caa 
+ 00008578  0x00000e6d call  0x0000218b 
+ 00008579  0x00000e6e nrtn  0x00000029 
+ 00008580  0x00000e6f call  0x000026f3 
+ 00008581  0x00000e70 nbranch  0x00002188 , 0x00000034 
+ 00008582  0x00000e72 disable  0x00000029 
+ 00008583  0x00000e73 rtn 
+ 00008584  0x00000e76 call  0x00002489 
+ 00008585  0x00000e77 call  0x000022da 
+ 00008586  0x00000e78 branch  0x00002177 
+ 00008587  0x00000e7c branch  0x0000218e , 0x0000002d 
+ 00008588  0x00000e7d call  0x00002a7f 
+ 00008589  0x00000e7e branch  0x0000219c , 0x00000002 
+ 00008590  0x00000e80 call  0x000021a7 
+ 00008591  0x00000e81 nbranch  0x0000219c , 0x00000028 
+ 00008592  0x00000e82 fetch  0x00000001 , 0x0000004c 
+ 00008593  0x00000e83 rtnbit0  0x00000004 
+ 00008594  0x00000e84 rtnbit1  0x00000003 
+ 00008595  0x00000e85 fetch  0x00000001 , 0x0000004b 
+ 00008596  0x00000e86 rtnbit1  0x00000003 
+ 00008597  0x00000e87 call  0x000021ae 
+ 00008598  0x00000e88 nrtn  0x00000034 
+ 00008599  0x00000e89 fetch  0x00000001 , 0x0000016e 
+ 00008600  0x00000e8a increase  0xffffffff , 0x0000003f 
+ 00008601  0x00000e8b store  0x00000001 , 0x0000016e 
+ 00008602  0x00000e8c nrtn  0x00000034 
+ 00008603  0x00000e8d branch  0x00006006 
+ 00008604  0x00000e90 bpatch  0x00000020 , 0x00004004 
+ 00008605  0x00000e91 call  0x0000245d 
+ 00008606  0x00000e92 disable  0x00000029 
+ 00008607  0x00000e93 fetch  0x00000001 , 0x0000004c 
+ 00008608  0x00000e94 bbit1  0x00000004 , 0x000021a2 
+ 00008609  0x00000e95 rtn 
+ 00008610  0x00000e98 fetch  0x00000001 , 0x0000004c 
+ 00008611  0x00000e99 rtnbit1  0x00000003 
+ 00008612  0x00000e9b arg  0x00000101 , 0x00000005 
+ 00008613  0x00000e9c arg  0x00000008 , 0x00000039 
+ 00008614  0x00000e9d branch  0x00007ec6 
+ 00008615  0x00000ea0 bpatch  0x00000021 , 0x00004004 
+ 00008616  0x00000ea1 enable  0x00000028 
+ 00008617  0x00000ea2 fetch  0x00000001 , 0x0000004b 
+ 00008618  0x00000ea3 rtnbit0  0x00000003 
+ 00008619  0x00000ea4 call  0x000021ae 
+ 00008620  0x00000ea5 nrtn  0x00000034 
+ 00008621  0x00000ea6 branch  0x00007fe9 
+ 00008622  0x00000ea9 fetch  0x00000001 , 0x00000072 
+ 00008623  0x00000eaa increase  0xffffffff , 0x0000003f 
+ 00008624  0x00000eab store  0x00000001 , 0x00000072 
+ 00008625  0x00000eac rtn 
+ 00008626  0x00000eaf bpatch  0x00000022 , 0x00004004 
+ 00008627  0x00000eb0 fetch  0x00000001 , 0x00000030 
+ 00008628  0x00000eb1 bbit1  0x00000007 , 0x000021bb 
+ 00008629  0x00000eb2 fetch  0x00000001 , 0x000009b5 
+ 00008630  0x00000eb3 branch  0x000021bb , 0x00000034 
+ 00008631  0x00000eb4 jam  0x00000000 , 0x000009b5 
+ 00008632  0x00000eb5 jam  0x00000018 , 0x00000a99 
+ 00008633  0x00000eb6 call  0x00007d86 
+ 00008634  0x00000eb7 branch  0x000021bb 
+ 00008635  0x00000eb9 bpatch  0x00000023 , 0x00004004 
+ 00008636  0x00000eba call  0x00002254 
+ 00008637  0x00000ebb fetch  0x00000001 , 0x00000030 
+ 00008638  0x00000ebc set1  0x00000007 , 0x0000003f 
+ 00008639  0x00000ebd store  0x00000001 , 0x00000030 
+ 00008640  0x00000ebe jam  0x00000001 , 0x000041bd 
+ 00008641  0x00000ebf fetch  0x00000001 , 0x00000055 
+ 00008642  0x00000ec0 bne  0x00000016 , 0x000021c3 
+ 00008643  0x00000ec2 rtn 
+ 00008644  0x00000ec5 jam  0x00000001 , 0x000009b5 
+ 00008645  0x00000ec7 fetch  0x00000001 , 0x00000030 
+ 00008646  0x00000ec8 set0  0x00000007 , 0x0000003f 
+ 00008647  0x00000ec9 store  0x00000001 , 0x00000030 
+ 00008648  0x00000eca rtn 
+ 00008649  0x00000ecf bpatch  0x00000024 , 0x00004004 
+ 00008650  0x00000ed0 disable  0x00000028 
+ 00008651  0x00000ed1 fetch  0x00000002 , 0x00000032 
+ 00008652  0x00000ed2 arg  0x0000ffff , 0x00000002 
+ 00008653  0x00000ed3 isub  0x00000002 , 0x0000003e 
+ 00008654  0x00000ed4 nrtn  0x00000005 
+ 00008655  0x00000ed5 fetch  0x00000004 , 0x00000034 
+ 00008656  0x00000ed6 branch  0x000021d3 , 0x00000030 
+ 00008657  0x00000ed7 isub  0x00000028 , 0x0000003f 
+ 00008658  0x00000ed8 branch  0x000021d4 
+ 00008659  0x00000eda isub  0x00000022 , 0x0000003f 
+ 00008660  0x00000edc sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00008661  0x00000edd nrtn  0x00000002 
+ 00008662  0x00000ede force  0x00000000 , 0x0000003f 
+ 00008663  0x00000edf store  0x00000002 , 0x00000032 
+ 00008664  0x00000ee0 branch  0x00007fe7 
+ 00008665  0x00000ee5 copy  0x0000003f , 0x00000002 
+ 00008666  0x00000ee6 bpatch  0x00000025 , 0x00004004 
+ 00008667  0x00000ee7 storet  0x00000004 , 0x00000034 
+ 00008668  0x00000ee9 jam  0x00000001 , 0x0000455b 
+ 00008669  0x00000eea setarg  0x0000ffff 
+ 00008670  0x00000eeb store  0x00000002 , 0x00000032 
+ 00008671  0x00000eec jam  0x00000001 , 0x00000073 
+ 00008672  0x00000eed rtn 
+ 00008673  0x00000ef1 bpatch  0x00000026 , 0x00004004 
+ 00008674  0x00000ef2 call  0x000021c9 
+ 00008675  0x00000ef3 nrtn  0x00000028 
+ 00008676  0x00000ef4 disable  0x00000028 
+ 00008677  0x00000ef5 jam  0x00000020 , 0x00000011 
+ 00008678  0x00000ef6 set0  0x0000000b , 0x00000000 
+ 00008679  0x00000ef8 call  0x00002a4f 
+ 00008680  0x00000ef9 call  0x000022e6 
+ 00008681  0x00000efa bmark1  0x0000000b , 0x000021f4 
+ 00008682  0x00000efb call  0x00002455 
+ 00008683  0x00000efc nbranch  0x000021e7 , 0x00000034 
+ 00008684  0x00000efe bpatch  0x00000027 , 0x00004004 
+ 00008685  0x00000eff disable  0x00000028 
+ 00008686  0x00000f00 deposit  0x00000022 
+ 00008687  0x00000f01 store  0x00000004 , 0x000040ca 
+ 00008688  0x00000f02 enable  0x00000030 
+ 00008689  0x00000f03 enable  0x00000029 
+ 00008690  0x00000f04 jam  0x0000002a , 0x00000a99 
+ 00008691  0x00000f05 branch  0x00007d86 
+ 00008692  0x00000f08 bpatch  0x00000028 , 0x00004005 
+ 00008693  0x00000f09 call  0x00002a4d 
+ 00008694  0x00000f0a arg  0x00000010 , 0x00000001 
+ 00008695  0x00000f0b call  0x000022dc 
+ 00008696  0x00000f0c disable  0x00000030 
+ 00008697  0x00000f0d disable  0x00000029 
+ 00008698  0x00000f0e call  0x00002818 
+ 00008699  0x00000f0f call  0x00002435 
+ 00008700  0x00000f11 bpatch  0x00000029 , 0x00004005 
+ 00008701  0x00000f12 call  0x0000247c 
+ 00008702  0x00000f13 branch  0x00002202 , 0x0000002d 
+ 00008703  0x00000f14 call  0x00002455 
+ 00008704  0x00000f15 nbranch  0x000021fc , 0x00000034 
+ 00008705  0x00000f16 branch  0x000021ec 
+ 00008706  0x00000f18 fetch  0x00000001 , 0x00000031 
+ 00008707  0x00000f19 set0  0x00000001 , 0x0000003f 
+ 00008708  0x00000f1a store  0x00000001 , 0x00000031 
+ 00008709  0x00000f1b call  0x00002a88 
+ 00008710  0x00000f1c call  0x00002841 
+ 00008711  0x00000f1d enable  0x00000028 
+ 00008712  0x00000f1e jam  0x0000002b , 0x00000a99 
+ 00008713  0x00000f1f branch  0x00007d86 
+ 00008714  0x00000f25 bpatch  0x0000002a , 0x00004005 
+ 00008715  0x00000f26 set1  0x00000009 , 0x00000000 
+ 00008716  0x00000f27 deposit  0x00000011 
+ 00008717  0x00000f28 store  0x00000002 , 0x0000001e 
+ 00008718  0x00000f29 force  0x00000050 , 0x00000039 
+ 00008719  0x00000f2a arg  0x0000043f , 0x00000005 
+ 00008720  0x00000f2b add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008721  0x00000f2c ifetch  0x00000001 , 0x00000006 
+ 00008722  0x00000f2d copy  0x00000011 , 0x00000006 
+ 00008723  0x00000f2e bbit1  0x00000000 , 0x00007f01 
+ 00008724  0x00000f2f arg  0x00000030 , 0x00000005 
+ 00008725  0x00000f30 call  0x00007f01 
+ 00008726  0x00000f31 disable  0x0000002e 
+ 00008727  0x00000f32 fetch  0x00000001 , 0x00000077 
+ 00008728  0x00000f33 iforce  0x00000004 
+ 00008729  0x00000f34 jam  0x00000001 , 0x0000008a 
+ 00008730  0x00000f35 branch  0x0000221c , 0x00000029 
+ 00008731  0x00000f36 jam  0x00000001 , 0x0000008a 
+ 00008732  0x00000f38 fetch  0x00000001 , 0x00000030 
+ 00008733  0x00000f39 rtnbit0  0x00000001 
+ 00008734  0x00000f3a fetch  0x00000001 , 0x00000073 
+ 00008735  0x00000f3b store  0x00000001 , 0x0000008a 
+ 00008736  0x00000f3c fetch  0x00000001 , 0x00000074 
+ 00008737  0x00000f3d store  0x00000001 , 0x0000008b 
+ 00008738  0x00000f3e rtn 
+ 00008739  0x00000f41 bpatch  0x0000002b , 0x00004005 
+ 00008740  0x00000f42 fetch  0x00000002 , 0x0000001e 
+ 00008741  0x00000f43 iforce  0x00000005 
+ 00008742  0x00000f44 force  0x00000050 , 0x00000039 
+ 00008743  0x00000f45 arg  0x0000043f , 0x00000006 
+ 00008744  0x00000f46 branch  0x00007f01 , 0x00000036 
+ 00008745  0x00000f47 arg  0x00000030 , 0x00000006 
+ 00008746  0x00000f48 branch  0x00007f01 
+ 00008747  0x00000f4d arg  0x00000001 , 0x00000039 
+ 00008748  0x00000f4e fetcht  0x00000001 , 0x00000015 
+ 00008749  0x00000f50 increase  0x00000001 , 0x00000002 
+ 00008750  0x00000f51 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008751  0x00000f52 nbranch  0x00002231 , 0x00000001 
+ 00008752  0x00000f53 arg  0x00000000 , 0x00000002 
+ 00008753  0x00000f55 storet  0x00000001 , 0x00000015 
+ 00008754  0x00000f56 mul32  0x00000002 , 0x00000050 , 0x0000003f 
+ 00008755  0x00000f57 arg  0x00004040 , 0x00000011 
+ 00008756  0x00000f58 iadd  0x00000011 , 0x00000011 
+ 00008757  0x00000f59 ifetch  0x00000001 , 0x00000011 
+ 00008758  0x00000f5a bbit1  0x00000001 , 0x00002239 
+ 00008759  0x00000f5b rtnbit1  0x00000000 
+ 00008760  0x00000f5c rtnbit1  0x00000003 
+ 00008761  0x00000f5e loop  0x0000222d 
+ 00008762  0x00000f5f rtn 
+ 00008763  0x00000f62 bpatch  0x0000002c , 0x00004005 
+ 00008764  0x00000f63 arg  0x0000226a , 0x00000013 
+ 00008765  0x00000f64 call  0x00002261 
+ 00008766  0x00000f65 nrtn  0x00000005 
+ 00008767  0x00000f66 deposit  0x00000011 
+ 00008768  0x00000f67 store  0x00000002 , 0x0000001e 
+ 00008769  0x00000f68 force  0x00000000 , 0x0000003e 
+ 00008770  0x00000f69 rtn 
+ 00008771  0x00000f6e call  0x00002725 
+ 00008772  0x00000f6f branch  0x0000224b , 0x00000001 
+ 00008773  0x00000f70 fetch  0x00000002 , 0x0000001e 
+ 00008774  0x00000f71 add  0x0000003f , 0x00000017 , 0x00000005 
+ 00008775  0x00000f72 fetch  0x00000001 , 0x00000047 
+ 00008776  0x00000f73 istore  0x00000001 , 0x00000005 
+ 00008777  0x00000f74 arg  0x000022aa , 0x00000013 
+ 00008778  0x00000f75 branch  0x00002261 
+ 00008779  0x00000f78 fetch  0x00000001 , 0x00000047 
+ 00008780  0x00000f79 isolate1  0x00000003 , 0x0000003f 
+ 00008781  0x00000f7a branch  0x00002250 , 0x00000001 
+ 00008782  0x00000f7b force  0x00000001 , 0x0000003e 
+ 00008783  0x00000f7c rtn 
+ 00008784  0x00000f7e force  0x00000000 , 0x0000003e 
+ 00008785  0x00000f7f rtn 
+ 00008786  0x00000f83 arg  0x000022a7 , 0x00000013 
+ 00008787  0x00000f84 branch  0x00002261 
+ 00008788  0x00000f87 fetcht  0x00000002 , 0x0000001e 
+ 00008789  0x00000f88 arg  0x000022cf , 0x00000013 
+ 00008790  0x00000f89 branch  0x00002261 
+ 00008791  0x00000f8e fetcht  0x00000001 , 0x000041cf 
+ 00008792  0x00000f90 arg  0x00002275 , 0x00000013 
+ 00008793  0x00000f91 branch  0x00002261 
+ 00008794  0x00000f94 bpatch  0x0000002d , 0x00004005 
+ 00008795  0x00000f95 fetcht  0x00000006 , 0x000041d0 
+ 00008796  0x00000f97 arg  0x0000226e , 0x00000013 
+ 00008797  0x00000f98 branch  0x00002261 
+ 00008798  0x00000f9b arg  0x0000227b , 0x00000013 
+ 00008799  0x00000f9c branch  0x00002261 
+ 00008800  0x00000f9f arg  0x000022c6 , 0x00000013 
+ 00008801  0x00000fa1 bpatch  0x0000002e , 0x00004005 
+ 00008802  0x00000fa2 arg  0x00004040 , 0x00000011 
+ 00008803  0x00000fa3 arg  0x00000001 , 0x00000039 
+ 00008804  0x00000fa5 ifetch  0x00000001 , 0x00000011 
+ 00008805  0x00000fa6 copy  0x00000013 , 0x0000003d 
+ 00008806  0x00000fa8 increase  0x00000050 , 0x00000011 
+ 00008807  0x00000fa9 loop  0x00002264 
+ 00008808  0x00000faa force  0x00000001 , 0x0000003e 
+ 00008809  0x00000fab rtn 
+ 00008810  0x00000fae bbit1  0x00000000 , 0x00002266 
+ 00008811  0x00000faf bbit1  0x00000003 , 0x00002266 
+ 00008812  0x00000fb0 force  0x00000000 , 0x0000003e 
+ 00008813  0x00000fb1 rtn 
+ 00008814  0x00000fb4 bbit1  0x00000003 , 0x00002270 
+ 00008815  0x00000fb5 bbit0  0x00000000 , 0x00002266 
+ 00008816  0x00000fb7 add  0x00000011 , 0x00000010 , 0x00000006 
+ 00008817  0x00000fb8 ifetch  0x00000006 , 0x00000006 
+ 00008818  0x00000fb9 isub  0x00000002 , 0x0000003e 
+ 00008819  0x00000fba rtn  0x00000005 
+ 00008820  0x00000fbb branch  0x00002266 
+ 00008821  0x00000fbe bbit0  0x00000000 , 0x00002266 
+ 00008822  0x00000fbf add  0x00000011 , 0x00000016 , 0x00000006 
+ 00008823  0x00000fc0 ifetch  0x00000001 , 0x00000006 
+ 00008824  0x00000fc1 isub  0x00000002 , 0x0000003e 
+ 00008825  0x00000fc2 rtn  0x00000005 
+ 00008826  0x00000fc3 branch  0x00002266 
+ 00008827  0x00000fc6 bbit0  0x00000001 , 0x00002266 
+ 00008828  0x00000fc8 call  0x000022b3 
+ 00008829  0x00000fc9 call  0x00002297 
+ 00008830  0x00000fca isub  0x00000002 , 0x0000003f 
+ 00008831  0x00000fcb increase  0x00000001 , 0x0000003f 
+ 00008832  0x00000fcc branch  0x00002291 , 0x00000002 
+ 00008833  0x00000fcd copy  0x00000006 , 0x00000012 
+ 00008834  0x00000fce store  0x00000009 , 0x00000aa2 
+ 00008835  0x00000fcf fetch  0x00000001 , 0x000044c0 
+ 00008836  0x00000fd0 nbranch  0x00002289 , 0x00000034 
+ 00008837  0x00000fd1 fetch  0x00000009 , 0x00000aa2 
+ 00008838  0x00000fd2 copy  0x00000012 , 0x00000006 
+ 00008839  0x00000fd3 increase  0x00000005 , 0x0000003f 
+ 00008840  0x00000fd4 branch  0x0000228c 
+ 00008841  0x00000fd6 fetch  0x00000009 , 0x00000aa2 
+ 00008842  0x00000fd7 copy  0x00000012 , 0x00000006 
+ 00008843  0x00000fd8 increase  0x00000014 , 0x0000003f 
+ 00008844  0x00000fda nbranch  0x00002266 , 0x00000002 
+ 00008845  0x00000fdc copy  0x00000002 , 0x00000021 
+ 00008846  0x00000fdd call  0x000022bf 
+ 00008847  0x00000fde force  0x00000000 , 0x0000003e 
+ 00008848  0x00000fdf rtn 
+ 00008849  0x00000fe3 iforce  0x00000012 
+ 00008850  0x00000fe4 add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008851  0x00000fe5 ifetch  0x00000002 , 0x00000006 
+ 00008852  0x00000fe6 branch  0x0000228d , 0x00000034 
+ 00008853  0x00000fe7 call  0x000022bf 
+ 00008854  0x00000fe8 branch  0x0000227c 
+ 00008855  0x00000feb rshift16  0x0000003f , 0x0000000b 
+ 00008856  0x00000fec rshift8  0x0000000b , 0x0000000b 
+ 00008857  0x00000fed branch  0x000022a1 , 0x00000005 
+ 00008858  0x00000fee compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008859  0x00000fef nrtn  0x00000001 
+ 00008860  0x00000ff0 rshift16  0x00000002 , 0x0000000b 
+ 00008861  0x00000ff1 rshift8  0x0000000b , 0x0000000b 
+ 00008862  0x00000ff2 nrtn  0x00000005 
+ 00008863  0x00000ff3 set1  0x0000001c , 0x00000002 
+ 00008864  0x00000ff4 rtn 
+ 00008865  0x00000ff6 rshift16  0x00000002 , 0x0000000b 
+ 00008866  0x00000ff7 rshift8  0x0000000b , 0x0000000b 
+ 00008867  0x00000ff8 compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008868  0x00000ff9 nrtn  0x00000001 
+ 00008869  0x00000ffa set1  0x0000001c , 0x0000003f 
+ 00008870  0x00000ffb rtn 
+ 00008871  0x00000ffe bbit0  0x00000000 , 0x00002266 
+ 00008872  0x00000fff force  0x00000000 , 0x0000003e 
+ 00008873  0x00001000 rtn 
+ 00008874  0x00001003 bbit0  0x00000000 , 0x00002266 
+ 00008875  0x00001004 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008876  0x00001005 ifetch  0x00000001 , 0x00000006 
+ 00008877  0x00001006 bbit1  0x00000000 , 0x00002266 
+ 00008878  0x00001007 add  0x00000011 , 0x00000017 , 0x00000006 
+ 00008879  0x00001008 ifetch  0x00000001 , 0x00000006 
+ 00008880  0x00001009 bbit0  0x00000003 , 0x00002266 
+ 00008881  0x0000100a force  0x00000000 , 0x0000003e 
+ 00008882  0x0000100b rtn 
+ 00008883  0x0000100e add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008884  0x0000100f ifetcht  0x00000001 , 0x00000006 
+ 00008885  0x00001010 deposit  0x00000022 
+ 00008886  0x00001011 isolate1  0x00000001 , 0x00000002 
+ 00008887  0x00001012 add  0x00000011 , 0x00000004 , 0x00000006 
+ 00008888  0x00001013 ifetcht  0x00000004 , 0x00000006 
+ 00008889  0x00001014 rtn  0x00000001 
+ 00008890  0x00001015 add  0x00000011 , 0x00000008 , 0x00000006 
+ 00008891  0x00001016 ifetch  0x00000006 , 0x00000006 
+ 00008892  0x00001017 call  0x00002854 
+ 00008893  0x00001018 deposit  0x00000028 
+ 00008894  0x00001019 rtn 
+ 00008895  0x0000101c add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008896  0x0000101d add  0x00000011 , 0x00000004 , 0x00000005 
+ 00008897  0x0000101e ifetch  0x00000002 , 0x00000006 
+ 00008898  0x0000101f iadd  0x00000002 , 0x0000000b 
+ 00008899  0x00001020 deposit  0x0000000b 
+ 00008900  0x00001021 istore  0x00000004 , 0x00000005 
+ 00008901  0x00001022 branch  0x00005449 
+ 00008902  0x00001026 bbit0  0x00000001 , 0x00002266 
+ 00008903  0x00001027 call  0x000022b3 
+ 00008904  0x00001028 iadd  0x0000001b , 0x0000003f 
+ 00008905  0x00001029 iadd  0x0000001b , 0x0000003f 
+ 00008906  0x0000102a iadd  0x00000007 , 0x0000003f 
+ 00008907  0x0000102b isub  0x00000002 , 0x0000003e 
+ 00008908  0x0000102c nbranch  0x00002266 , 0x00000002 
+ 00008909  0x0000102d force  0x00000000 , 0x0000003e 
+ 00008910  0x0000102e rtn 
+ 00008911  0x00001031 bbit0  0x00000000 , 0x00002266 
+ 00008912  0x00001032 deposit  0x00000002 
+ 00008913  0x00001033 isub  0x00000011 , 0x0000003e 
+ 00008914  0x00001034 branch  0x00002266 , 0x0000003e 
+ 00008915  0x00001035 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008916  0x00001036 ifetch  0x00000001 , 0x00000006 
+ 00008917  0x00001037 bbit1  0x00000000 , 0x00002266 
+ 00008918  0x00001038 ifetch  0x00000001 , 0x00000011 
+ 00008919  0x00001039 set0  0x00000007 , 0x0000003f 
+ 00008920  0x0000103a istore  0x00000001 , 0x00000011 
+ 00008921  0x0000103b branch  0x00002266 
+ 00008922  0x0000103f bpatch  0x0000002f , 0x00004005 
+ 00008923  0x00001040 call  0x00002a4f 
+ 00008924  0x00001042 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008925  0x00001043 call  0x000028e2 
+ 00008926  0x00001044 force  0x00000003 , 0x00000024 
+ 00008927  0x00001045 call  0x000028d2 
+ 00008928  0x00001046 call  0x00002a51 
+ 00008929  0x00001047 call  0x00002a56 
+ 00008930  0x00001048 call  0x00002a64 
+ 00008931  0x00001049 branch  0x00002762 
+ 00008932  0x0000104c bpatch  0x00000030 , 0x00004006 
+ 00008933  0x0000104d call  0x00002a4d 
+ 00008934  0x0000104f add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008935  0x00001050 call  0x000028e2 
+ 00008936  0x00001051 force  0x00000003 , 0x00000024 
+ 00008937  0x00001052 call  0x000028cc 
+ 00008938  0x00001053 call  0x0000242a 
+ 00008939  0x00001054 call  0x000029f1 
+ 00008940  0x00001055 call  0x00002a5b 
+ 00008941  0x00001056 call  0x000029eb 
+ 00008942  0x00001058 call  0x00002a0d 
+ 00008943  0x00001059 nrtn  0x00000018 
+ 00008944  0x0000105a call  0x000029bb 
+ 00008945  0x0000105b branch  0x0000251c 
+ 00008946  0x00001060 bpatch  0x00000031 , 0x00004006 
+ 00008947  0x00001061 fetch  0x00000001 , 0x00000181 
+ 00008948  0x00001062 iforce  0x00000004 
+ 00008949  0x00001063 force  0x00000001 , 0x00000001 
+ 00008950  0x00001064 call  0x000022da 
+ 00008951  0x00001065 branch  0x000022e4 
+ 00008952  0x00001071 fetch  0x00000001 , 0x00004093 
+ 00008953  0x00001072 rtnbit0  0x00000000 
+ 00008954  0x00001073 force  0x00000004 , 0x00000007 
+ 00008955  0x00001074 call  0x00007f16 
+ 00008956  0x00001075 nrtn  0x00000034 
+ 00008957  0x00001076 fetcht  0x00000002 , 0x000040ad 
+ 00008958  0x00001077 force  0x00000004 , 0x00000007 
+ 00008959  0x00001078 call  0x0000271c 
+ 00008960  0x00001079 rtn  0x00000028 
+ 00008961  0x0000107a call  0x00002308 
+ 00008962  0x0000107b force  0x00000004 , 0x00000007 
+ 00008963  0x0000107c fetch  0x00000002 , 0x000040af 
+ 00008964  0x0000107d nbranch  0x00007f08 , 0x00000018 
+ 00008965  0x0000107e random  0x0000003f 
+ 00008966  0x0000107f iand  0x00000035 , 0x0000003f 
+ 00008967  0x00001080 branch  0x00007f08 
+ 00008968  0x00001084 bpatch  0x00000032 , 0x00004006 
+ 00008969  0x00001085 jam  0x00000000 , 0x00000181 
+ 00008970  0x00001086 disable  0x00000030 
+ 00008971  0x00001087 disable  0x0000002e 
+ 00008972  0x00001088 call  0x000028a4 
+ 00008973  0x00001089 and  0x00000022 , 0x000001fc , 0x00000021 
+ 00008974  0x0000108a force  0x00000001 , 0x00000024 
+ 00008975  0x0000108b call  0x000028d8 
+ 00008976  0x0000108c call  0x000028cc 
+ 00008977  0x0000108d setflip  0x0000001d , 0x00000000 
+ 00008978  0x0000108e fetch  0x00000001 , 0x00000006 
+ 00008979  0x0000108f increase  0x00000001 , 0x0000003f 
+ 00008980  0x00001090 store  0x00000001 , 0x00000006 
+ 00008981  0x00001091 call  0x000028f2 
+ 00008982  0x00001092 call  0x000029eb 
+ 00008983  0x00001093 call  0x00002a14 
+ 00008984  0x00001094 nrtn  0x00000018 
+ 00008985  0x00001095 bpatch  0x00000033 , 0x00004006 
+ 00008986  0x00001096 force  0x00000000 , 0x0000001b 
+ 00008987  0x00001097 call  0x000028f9 
+ 00008988  0x00001098 fetch  0x00000001 , 0x00000007 
+ 00008989  0x00001099 increase  0x00000001 , 0x0000003f 
+ 00008990  0x0000109a store  0x00000001 , 0x00000007 
+ 00008991  0x0000109b call  0x000028d8 
+ 00008992  0x0000109c call  0x00002a4d 
+ 00008993  0x0000109d or_into  0x00000002 , 0x00000021 
+ 00008994  0x0000109e force  0x00000001 , 0x00000024 
+ 00008995  0x0000109f call  0x000028d2 
+ 00008996  0x000010a0 call  0x000028f2 
+ 00008997  0x000010a1 call  0x00002a51 
+ 00008998  0x000010a2 call  0x00002a5f 
+ 00008999  0x000010a3 deposit  0x00000022 
+ 00009000  0x000010a4 store  0x00000004 , 0x00000161 
+ 00009001  0x000010a5 call  0x00002a64 
+ 00009002  0x000010a6 force  0x00000002 , 0x00000001 
+ 00009003  0x000010a7 force  0x00000000 , 0x00000004 
+ 00009004  0x000010a8 call  0x00002a6b 
+ 00009005  0x000010a9 call  0x00002766 
+ 00009006  0x000010aa call  0x00002332 
+ 00009007  0x000010ab and_into  0x000001fd , 0x00000021 
+ 00009008  0x000010ac increase  0x00000001 , 0x00000026 
+ 00009009  0x000010ad rtn 
+ 00009010  0x000010b0 bpatch  0x00000034 , 0x00004006 
+ 00009011  0x000010b1 fetch  0x00000001 , 0x000040d1 
+ 00009012  0x000010b2 rtn  0x00000034 
+ 00009013  0x000010b3 arg  0x0000018e , 0x00000005 
+ 00009014  0x000010b4 fetch  0x00000001 , 0x00004515 
+ 00009015  0x000010b5 copy  0x0000003f , 0x00000039 
+ 00009016  0x000010b6 increase  0x00000001 , 0x0000003f 
+ 00009017  0x000010b7 istore  0x00000001 , 0x00000005 
+ 00009018  0x000010b8 copy  0x00000005 , 0x00000002 
+ 00009019  0x000010b9 increase  0x00000001 , 0x0000003f 
+ 00009020  0x000010ba store  0x00000002 , 0x000041dc 
+ 00009021  0x000010bb copy  0x00000002 , 0x00000005 
+ 00009022  0x000010bc setarg  0x00000009 
+ 00009023  0x000010bd istore  0x00000001 , 0x00000005 
+ 00009024  0x000010be arg  0x00004516 , 0x00000006 
+ 00009025  0x000010bf call  0x00007f01 
+ 00009026  0x000010c1 arg  0x0000458d , 0x00000013 
+ 00009027  0x000010c2 arg  0x00000004 , 0x00000039 
+ 00009028  0x000010c3 call  0x00002354 
+ 00009029  0x000010c4 arg  0x00004577 , 0x00000013 
+ 00009030  0x000010c5 arg  0x00000001 , 0x00000039 
+ 00009031  0x000010c6 call  0x00002354 
+ 00009032  0x000010c8 force  0x0000000a , 0x00000001 
+ 00009033  0x000010c9 jam  0x00000002 , 0x000041db 
+ 00009034  0x000010ca setarg  0x0000018e 
+ 00009035  0x000010cb store  0x00000002 , 0x0000016f 
+ 00009036  0x000010cc call  0x00002a4d 
+ 00009037  0x000010cd call  0x000028d2 
+ 00009038  0x000010ce call  0x00002a51 
+ 00009039  0x000010cf call  0x00002a5f 
+ 00009040  0x000010d0 call  0x00002a64 
+ 00009041  0x000010d1 call  0x00002a6b 
+ 00009042  0x000010d2 call  0x00002766 
+ 00009043  0x000010d3 rtn 
+ 00009044  0x000010d7 copy  0x00000005 , 0x00000002 
+ 00009045  0x000010d8 copy  0x00000013 , 0x00000006 
+ 00009046  0x000010d9 ifetch  0x00000001 , 0x00000006 
+ 00009047  0x000010da rtn  0x00000034 
+ 00009048  0x000010dc lshift  0x0000003f , 0x0000003f 
+ 00009049  0x000010dd loop  0x00002358 
+ 00009050  0x000010de copy  0x0000003f , 0x00000011 
+ 00009051  0x000010df increase  0x00000002 , 0x0000003f 
+ 00009052  0x000010e0 copy  0x0000003f , 0x00000007 
+ 00009053  0x000010e1 fetch  0x00000002 , 0x000041dc 
+ 00009054  0x000010e2 iadd  0x00000007 , 0x0000003f 
+ 00009055  0x000010e3 store  0x00000002 , 0x000041dc 
+ 00009056  0x000010e4 copy  0x00000002 , 0x00000005 
+ 00009057  0x000010e5 copy  0x00000011 , 0x0000003f 
+ 00009058  0x000010e6 increase  0x00000001 , 0x0000003f 
+ 00009059  0x000010e7 istore  0x00000001 , 0x00000005 
+ 00009060  0x000010e8 copy  0x00000013 , 0x00000006 
+ 00009061  0x000010e9 ifetch  0x00000001 , 0x00000006 
+ 00009062  0x000010ea ifetch  0x00000001 , 0x00000006 
+ 00009063  0x000010eb istore  0x00000001 , 0x00000005 
+ 00009064  0x000010ec copy  0x00000011 , 0x00000039 
+ 00009065  0x000010ed branch  0x00007f01 
+ 00009066  0x000010f4 fetch  0x00000001 , 0x00004093 
+ 00009067  0x000010f5 rtnbit0  0x00000001 
+ 00009068  0x000010f6 force  0x00000005 , 0x00000007 
+ 00009069  0x000010f7 call  0x00007f16 
+ 00009070  0x000010f8 nrtn  0x00000034 
+ 00009071  0x000010f9 fetcht  0x00000002 , 0x000040b1 
+ 00009072  0x000010fa force  0x00000028 , 0x00000007 
+ 00009073  0x000010fb call  0x0000271c 
+ 00009074  0x000010fc rtn  0x00000028 
+ 00009075  0x000010fd force  0x00000000 , 0x00000004 
+ 00009076  0x000010fe jam  0x00000008 , 0x00000010 
+ 00009077  0x000010ff set0  0x0000000b , 0x00000000 
+ 00009078  0x00001100 call  0x0000237a 
+ 00009079  0x00001101 force  0x00000005 , 0x00000007 
+ 00009080  0x00001102 fetch  0x00000002 , 0x000040b3 
+ 00009081  0x00001103 branch  0x00007f08 
+ 00009082  0x00001107 bpatch  0x00000035 , 0x00004006 
+ 00009083  0x00001108 disable  0x00000030 
+ 00009084  0x00001109 call  0x000028a4 
+ 00009085  0x0000110a fetch  0x00000001 , 0x00000008 
+ 00009086  0x0000110b increase  0x00000001 , 0x0000003f 
+ 00009087  0x0000110c store  0x00000001 , 0x00000008 
+ 00009088  0x0000110d force  0x00000000 , 0x00000026 
+ 00009089  0x0000110e call  0x000028e2 
+ 00009090  0x0000110f add  0x00000022 , 0x00000001 , 0x00000021 
+ 00009091  0x00001110 force  0x00000002 , 0x00000024 
+ 00009092  0x00001111 bpatch  0x00000036 , 0x00004006 
+ 00009093  0x00001112 call  0x000028cc 
+ 00009094  0x00001113 call  0x000029eb 
+ 00009095  0x00001114 call  0x00002a14 
+ 00009096  0x00001115 nrtn  0x00000018 
+ 00009097  0x00001116 call  0x000028f9 
+ 00009098  0x00001117 fetch  0x00000001 , 0x00000009 
+ 00009099  0x00001118 increase  0x00000001 , 0x0000003f 
+ 00009100  0x00001119 store  0x00000001 , 0x00000009 
+ 00009101  0x0000111a force  0x00000000 , 0x0000001b 
+ 00009102  0x0000111b call  0x00002a4d 
+ 00009103  0x0000111c or_into  0x00000002 , 0x00000021 
+ 00009104  0x0000111d force  0x00000001 , 0x00000024 
+ 00009105  0x0000111e call  0x000028d2 
+ 00009106  0x0000111f call  0x00002a51 
+ 00009107  0x00001120 call  0x00002a5f 
+ 00009108  0x00001121 call  0x00002a64 
+ 00009109  0x00001122 call  0x0000264d 
+ 00009110  0x00001123 force  0x00000000 , 0x00000004 
+ 00009111  0x00001124 arg  0x00000600 , 0x0000000b 
+ 00009112  0x00001125 until  0x00000029 , 0x00000026 
+ 00009113  0x00001126 or_into  0x00000003 , 0x00000028 
+ 00009114  0x00001127 and_into  0x000001fd , 0x00000021 
+ 00009115  0x00001129 bpatch  0x00000037 , 0x00004006 
+ 00009116  0x0000112a increase  0x00000001 , 0x00000026 
+ 00009117  0x0000112b call  0x000028cc 
+ 00009118  0x0000112c call  0x000029eb 
+ 00009119  0x0000112d call  0x00002a07 
+ 00009120  0x0000112e nbranch  0x000023a4 , 0x00000018 
+ 00009121  0x0000112f call  0x00002a6b 
+ 00009122  0x00001130 call  0x0000251e 
+ 00009123  0x00001131 bmark1  0x0000000b , 0x000023ab 
+ 00009124  0x00001133 bpatch  0x00000038 , 0x00004007 
+ 00009125  0x00001134 fetch  0x00000001 , 0x00000010 
+ 00009126  0x00001135 rtn  0x00000034 
+ 00009127  0x00001136 increase  0xffffffff , 0x0000003f 
+ 00009128  0x00001137 store  0x00000001 , 0x00000010 
+ 00009129  0x00001138 call  0x00002a4f 
+ 00009130  0x00001139 branch  0x0000239b 
+ 00009131  0x0000113d bpatch  0x00000039 , 0x00004007 
+ 00009132  0x0000113e set0  0x00000001 , 0x00000028 
+ 00009133  0x0000113f set1  0x00000000 , 0x00000028 
+ 00009134  0x00001140 fetch  0x00000001 , 0x0000000a 
+ 00009135  0x00001141 increase  0x00000001 , 0x0000003f 
+ 00009136  0x00001142 store  0x00000001 , 0x0000000a 
+ 00009137  0x00001143 call  0x00002a4d 
+ 00009138  0x00001144 or_into  0x00000002 , 0x00000021 
+ 00009139  0x00001145 call  0x000028d2 
+ 00009140  0x00001146 call  0x00002a51 
+ 00009141  0x00001147 call  0x00002a5f 
+ 00009142  0x00001148 call  0x00002a64 
+ 00009143  0x00001149 call  0x0000264d 
+ 00009144  0x0000114b compare  0x00000003 , 0x00000028 , 0x00000003 
+ 00009145  0x0000114c branch  0x000023bc , 0x00000001 
+ 00009146  0x0000114d until  0x0000003e , 0x00000017 
+ 00009147  0x0000114e branch  0x000023b8 
+ 00009148  0x00001150 fetch  0x00000004 , 0x00000165 
+ 00009149  0x00001151 or_into  0x00000003 , 0x0000003f 
+ 00009150  0x00001152 icopy  0x00000028 
+ 00009151  0x00001155 bpatch  0x0000003a , 0x00004007 
+ 00009152  0x00001156 fetch  0x00000006 , 0x00000178 
+ 00009153  0x00001157 store  0x00000006 , 0x00000040 
+ 00009154  0x00001158 call  0x00002435 
+ 00009155  0x0000115a call  0x0000247c 
+ 00009156  0x0000115b branch  0x000023c8 , 0x0000002d 
+ 00009157  0x0000115c call  0x00002455 
+ 00009158  0x0000115d nbranch  0x000023c3 , 0x00000034 
+ 00009159  0x0000115e rtn 
+ 00009160  0x00001162 bpatch  0x0000003b , 0x00004007 
+ 00009161  0x00001163 call  0x00002440 
+ 00009162  0x00001164 call  0x0000223b 
+ 00009163  0x00001165 nrtn  0x00000005 
+ 00009164  0x00001166 jam  0x00000000 , 0x00000031 
+ 00009165  0x00001167 call  0x00002841 
+ 00009166  0x00001168 branch  0x00002223 
+ 00009167  0x0000116e bpatch  0x0000003c , 0x00004007 
+ 00009168  0x0000116f call  0x00002850 
+ 00009169  0x00001170 call  0x000023f3 
+ 00009170  0x00001171 rtn  0x00000028 
+ 00009171  0x00001173 bpatch  0x0000003d , 0x00004007 
+ 00009172  0x00001174 call  0x00002c69 
+ 00009173  0x00001175 call  0x00006caa 
+ 00009174  0x00001176 call  0x00002514 
+ 00009175  0x00001177 nbranch  0x000023e2 , 0x0000002d 
+ 00009176  0x00001178 call  0x00002a88 
+ 00009177  0x00001179 call  0x00006cc2 
+ 00009178  0x0000117a call  0x00002489 
+ 00009179  0x0000117b call  0x00002757 
+ 00009180  0x0000117c call  0x00002728 
+ 00009181  0x0000117d call  0x00005d08 
+ 00009182  0x0000117e fetch  0x00000001 , 0x0000000b 
+ 00009183  0x0000117f increase  0x00000001 , 0x0000003f 
+ 00009184  0x00001180 store  0x00000001 , 0x0000000b 
+ 00009185  0x00001181 call  0x00002841 
+ 00009186  0x00001183 bpatch  0x0000003e , 0x00004007 
+ 00009187  0x00001184 call  0x00002bb1 
+ 00009188  0x00001185 call  0x00002a7f 
+ 00009189  0x00001186 branch  0x000023eb , 0x00000002 
+ 00009190  0x00001187 call  0x000021a7 
+ 00009191  0x00001188 nbranch  0x000023eb , 0x00000028 
+ 00009192  0x00001189 call  0x000026f3 
+ 00009193  0x0000118a nbranch  0x000023d3 , 0x00000034 
+ 00009194  0x0000118b rtn 
+ 00009195  0x0000118e bpatch  0x0000003f , 0x00004007 
+ 00009196  0x0000118f jam  0x00000000 , 0x00000151 
+ 00009197  0x00001190 jam  0x00000000 , 0x0000017f 
+ 00009198  0x00001191 call  0x0000245d 
+ 00009199  0x00001192 set0  0x00000011 , 0x00000000 
+ 00009200  0x00001193 call  0x00007fb0 
+ 00009201  0x00001194 fetch  0x00000001 , 0x00000030 
+ 00009202  0x00001195 rtn 
+ 00009203  0x00001199 bpatch  0x00000040 , 0x00004008 
+ 00009204  0x0000119a call  0x000021c9 
+ 00009205  0x0000119b nrtn  0x00000028 
+ 00009206  0x0000119c copy  0x00000004 , 0x00000002 
+ 00009207  0x0000119d call  0x00002a6f 
+ 00009208  0x0000119e store  0x00000001 , 0x00000181 
+ 00009209  0x0000119f copy  0x00000002 , 0x00000004 
+ 00009210  0x000011a0 jam  0x00000020 , 0x00000011 
+ 00009211  0x000011a2 bpatch  0x00000041 , 0x00004008 
+ 00009212  0x000011a3 call  0x00002a4f 
+ 00009213  0x000011a4 force  0x00000002 , 0x00000001 
+ 00009214  0x000011a5 call  0x0000274f 
+ 00009215  0x000011a6 deposit  0x00000022 
+ 00009216  0x000011a7 store  0x00000004 , 0x00000161 
+ 00009217  0x000011a8 call  0x00002762 
+ 00009218  0x000011a9 call  0x00002a4d 
+ 00009219  0x000011aa enable  0x0000002f 
+ 00009220  0x000011ab call  0x000024f6 
+ 00009221  0x000011ac branch  0x0000240d , 0x00000018 
+ 00009222  0x000011ad call  0x000028f9 
+ 00009223  0x000011ae call  0x00002455 
+ 00009224  0x000011af nbranch  0x000023fb , 0x00000034 
+ 00009225  0x000011b0 rtnmark0  0x00000004 
+ 00009226  0x000011b1 jam  0x00000034 , 0x0000007c 
+ 00009227  0x000011b2 set1  0x00000003 , 0x00000000 
+ 00009228  0x000011b3 rtn 
+ 00009229  0x000011b5 enable  0x00000030 
+ 00009230  0x000011b6 call  0x00002435 
+ 00009231  0x000011b7 call  0x000028a4 
+ 00009232  0x000011b9 bpatch  0x00000042 , 0x00004008 
+ 00009233  0x000011ba call  0x000022f2 
+ 00009234  0x000011bb branch  0x00002419 , 0x00000018 
+ 00009235  0x000011bc call  0x00002455 
+ 00009236  0x000011bd nbranch  0x00002410 , 0x00000034 
+ 00009237  0x000011be disable  0x00000030 
+ 00009238  0x000011bf deposit  0x00000028 
+ 00009239  0x000011c0 store  0x00000004 , 0x000040ca 
+ 00009240  0x000011c1 rtn 
+ 00009241  0x000011c3 enable  0x00000029 
+ 00009242  0x000011c4 bmark0  0x00000004 , 0x0000241f 
+ 00009243  0x000011c5 set0  0x00000004 , 0x00000000 
+ 00009244  0x000011c6 jam  0x00000003 , 0x0000007c 
+ 00009245  0x000011c7 jam  0x00000033 , 0x0000007d 
+ 00009246  0x000011c8 call  0x000062f8 
+ 00009247  0x000011ca deposit  0x00000004 
+ 00009248  0x000011cb store  0x00000001 , 0x00000077 
+ 00009249  0x000011cc force  0x00000000 , 0x0000003f 
+ 00009250  0x000011cd store  0x00000006 , 0x00000038 
+ 00009251  0x000011ce fetch  0x00000001 , 0x00000031 
+ 00009252  0x000011cf set1  0x00000001 , 0x0000003f 
+ 00009253  0x000011d0 store  0x00000001 , 0x00000031 
+ 00009254  0x000011d1 call  0x00002a88 
+ 00009255  0x000011d2 disable  0x00000029 
+ 00009256  0x000011d3 enable  0x00000028 
+ 00009257  0x000011d4 rtn 
+ 00009258  0x000011d9 bpatch  0x00000043 , 0x00004008 
+ 00009259  0x000011da disable  0x0000002d 
+ 00009260  0x000011db set0  0x00000005 , 0x00000000 
+ 00009261  0x000011dc set0  0x0000000a , 0x00000000 
+ 00009262  0x000011dd set0  0x00000010 , 0x00000000 
+ 00009263  0x000011de set0  0x0000000f , 0x00000000 
+ 00009264  0x000011df fetch  0x00000001 , 0x00000047 
+ 00009265  0x000011e0 set0  0x00000005 , 0x0000003f 
+ 00009266  0x000011e1 set1  0x00000004 , 0x0000003f 
+ 00009267  0x000011e2 store  0x00000001 , 0x00000047 
+ 00009268  0x000011e3 rtn 
+ 00009269  0x000011e6 bpatch  0x00000044 , 0x00004008 
+ 00009270  0x000011e7 jam  0x00000020 , 0x00000011 
+ 00009271  0x000011e8 jam  0x00000050 , 0x00000047 
+ 00009272  0x000011e9 fetch  0x00000002 , 0x000040bf 
+ 00009273  0x000011ea store  0x00000002 , 0x0000003e 
+ 00009274  0x000011eb deposit  0x00000022 
+ 00009275  0x000011ec store  0x00000004 , 0x000040ca 
+ 00009276  0x000011ed rtn  0x00000030 
+ 00009277  0x000011ee deposit  0x00000028 
+ 00009278  0x000011ef store  0x00000004 , 0x000040ca 
+ 00009279  0x000011f0 rtn 
+ 00009280  0x000011f3 bpatch  0x00000045 , 0x00004008 
+ 00009281  0x000011f4 call  0x00005d04 
+ 00009282  0x000011f5 call  0x00002459 
+ 00009283  0x000011f6 store  0x00000001 , 0x00000046 
+ 00009284  0x000011f7 setarg  0x00000000 
+ 00009285  0x000011f8 store  0x00000002 , 0x0000025d 
+ 00009286  0x000011f9 setarg  0x00001c80 
+ 00009287  0x000011fa store  0x00000002 , 0x00000051 
+ 00009288  0x000011fb fetch  0x00000001 , 0x00000030 
+ 00009289  0x000011fc set1  0x00000000 , 0x0000003f 
+ 00009290  0x000011fd store  0x00000001 , 0x00000030 
+ 00009291  0x000011fe jam  0x00000000 , 0x0000004b 
+ 00009292  0x000011ff jam  0x00000000 , 0x0000004c 
+ 00009293  0x00001200 jam  0x00000000 , 0x000000a0 
+ 00009294  0x00001201 branch  0x00002a88 
+ 00009295  0x00001205 bpatch  0x00000046 , 0x00004008 
+ 00009296  0x00001206 force  0x00000000 , 0x0000003f 
+ 00009297  0x00001207 store  0x00000008 , 0x000041be 
+ 00009298  0x00001208 istore  0x00000008 , 0x00000005 
+ 00009299  0x00001209 call  0x000021c5 
+ 00009300  0x0000120a branch  0x00002254 
+ 00009301  0x0000120d fetch  0x00000001 , 0x00000011 
+ 00009302  0x0000120e increase  0xffffffff , 0x0000003f 
+ 00009303  0x0000120f store  0x00000001 , 0x00000011 
+ 00009304  0x00001210 rtn 
+ 00009305  0x00001213 fetch  0x00000001 , 0x000040cf 
+ 00009306  0x00001214 increase  0x00000001 , 0x0000003f 
+ 00009307  0x00001215 store  0x00000001 , 0x000040cf 
+ 00009308  0x00001216 rtn 
+ 00009309  0x0000121a bpatch  0x00000047 , 0x00004008 
+ 00009310  0x0000121b fetch  0x00000001 , 0x000041ce 
+ 00009311  0x0000121c beq  0x00000003 , 0x00002462 
+ 00009312  0x0000121d fetch  0x00000001 , 0x00000048 
+ 00009313  0x0000121e bne  0x00000001 , 0x00002466 
+ 00009314  0x00001220 call  0x00004d06 
+ 00009315  0x00001221 nbranch  0x00002466 , 0x00000005 
+ 00009316  0x00001222 call  0x000021a4 
+ 00009317  0x00001223 jam  0x00000000 , 0x000041ce 
+ 00009318  0x00001225 bpatch  0x00000048 , 0x00004009 
+ 00009319  0x00001226 call  0x000033af 
+ 00009320  0x00001227 call  0x000026e9 
+ 00009321  0x00001228 jam  0x00000002 , 0x00000a99 
+ 00009322  0x00001229 call  0x00007d86 
+ 00009323  0x0000122a call  0x00005cf7 
+ 00009324  0x0000122b call  0x00004d6b 
+ 00009325  0x0000122c call  0x0000757d 
+ 00009326  0x0000122d fetch  0x00000001 , 0x00000030 
+ 00009327  0x0000122e set0  0x00000000 
+ 00009328  0x0000122f store  0x00000001 , 0x00000030 
+ 00009329  0x00001230 jam  0x00000000 , 0x00004681 
+ 00009330  0x00001232 fetch  0x00000001 , 0x0000004c 
+ 00009331  0x00001233 compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00009332  0x00001234 branch  0x00002476 , 0x00000001 
+ 00009333  0x00001235 set0  0x00000001 , 0x00000000 
+ 00009334  0x00001237 fetch  0x00000001 , 0x00000047 
+ 00009335  0x00001238 bbit0  0x00000003 , 0x00002478 
+ 00009336  0x0000123a fetch  0x00000001 , 0x0000004b 
+ 00009337  0x0000123b rtnbit0  0x00000006 
+ 00009338  0x0000123c set0  0x00000002 , 0x00000000 
+ 00009339  0x0000123d rtn 
+ 00009340  0x00001240 bpatch  0x00000049 , 0x00004009 
+ 00009341  0x00001241 fetch  0x00000001 , 0x00000174 
+ 00009342  0x00001242 rtn  0x00000034 
+ 00009343  0x00001243 icopy  0x00000004 
+ 00009344  0x00001244 call  0x00002514 
+ 00009345  0x00001245 nrtn  0x0000002d 
+ 00009346  0x00001246 force  0x00000000 , 0x00000001 
+ 00009347  0x00001247 call  0x00002757 
+ 00009348  0x00001248 deposit  0x00000004 
+ 00009349  0x00001249 store  0x00000001 , 0x00000077 
+ 00009350  0x0000124a force  0x00000000 , 0x0000003f 
+ 00009351  0x0000124b store  0x00000001 , 0x00000174 
+ 00009352  0x0000124c rtn 
+ 00009353  0x00001253 bpatch  0x0000004a , 0x00004009 
+ 00009354  0x00001254 fetch  0x00000001 , 0x00000030 
+ 00009355  0x00001255 bbit0  0x00000002 , 0x00002496 
+ 00009356  0x00001256 force  0x00000007 , 0x00000001 
+ 00009357  0x00001257 bmark0  0x00000007 , 0x00002495 
+ 00009358  0x00001258 call  0x00002725 
+ 00009359  0x00001259 nbranch  0x00002496 , 0x00000001 
+ 00009360  0x0000125a branch  0x00002496 , 0x0000002e 
+ 00009361  0x0000125b call  0x000024c1 
+ 00009362  0x0000125c setarg  0x00000002 
+ 00009363  0x0000125d store  0x00000002 , 0x000040c8 
+ 00009364  0x0000125e rtn 
+ 00009365  0x00001260 nrtn  0x0000002e 
+ 00009366  0x00001262 bpatch  0x0000004b , 0x00004009 
+ 00009367  0x00001263 call  0x00002243 
+ 00009368  0x00001264 nbranch  0x000024a7 , 0x00000005 
+ 00009369  0x00001265 fetch  0x00000001 , 0x00000047 
+ 00009370  0x00001266 bbit0  0x00000003 , 0x000024b0 
+ 00009371  0x00001268 bmark1  0x00000005 , 0x000024b4 
+ 00009372  0x00001269 fetch  0x00000001 , 0x0000017f 
+ 00009373  0x0000126a bbit1  0x00000006 , 0x000024ba 
+ 00009374  0x0000126b fetch  0x00000002 , 0x000040c8 
+ 00009375  0x0000126c increase  0xffffffff , 0x0000003f 
+ 00009376  0x0000126d store  0x00000002 , 0x000040c8 
+ 00009377  0x0000126e branch  0x000024a5 , 0x00000034 
+ 00009378  0x0000126f fetch  0x00000001 , 0x000040c5 
+ 00009379  0x00001270 iforce  0x00000001 
+ 00009380  0x00001271 rtn 
+ 00009381  0x00001274 bpatch  0x0000004c , 0x00004009 
+ 00009382  0x00001275 call  0x00002687 
+ 00009383  0x00001277 call  0x00002725 
+ 00009384  0x00001278 branch  0x000024b0 , 0x00000001 
+ 00009385  0x00001279 call  0x0000600a 
+ 00009386  0x0000127a branch  0x000024be , 0x00000028 
+ 00009387  0x0000127b fetch  0x00000001 , 0x0000004b 
+ 00009388  0x0000127c bbit1  0x00000006 , 0x000024c0 
+ 00009389  0x0000127d bmark1  0x00000005 , 0x000024b4 
+ 00009390  0x0000127e fetch  0x00000001 , 0x0000017f 
+ 00009391  0x0000127f bbit1  0x00000006 , 0x000024ba 
+ 00009392  0x00001281 force  0x00000001 , 0x00000001 
+ 00009393  0x00001282 rtn  0x00000029 
+ 00009394  0x00001283 force  0x00000000 , 0x00000001 
+ 00009395  0x00001284 rtn 
+ 00009396  0x00001286 bpatch  0x0000004d , 0x00004009 
+ 00009397  0x00001287 fetch  0x00000001 , 0x00000019 
+ 00009398  0x00001288 iforce  0x00000001 
+ 00009399  0x00001289 rtnne  0x00000001 
+ 00009400  0x0000128a force  0x00000000 , 0x00000001 
+ 00009401  0x0000128b rtn 
+ 00009402  0x0000128d fetch  0x00000001 , 0x00000158 
+ 00009403  0x0000128e and  0x0000003f , 0x0000000f , 0x00000001 
+ 00009404  0x0000128f set1  0x00000005 , 0x00000000 
+ 00009405  0x00001290 rtn 
+ 00009406  0x00001292 force  0x00000013 , 0x00000001 
+ 00009407  0x00001293 branch  0x000024c1 
+ 00009408  0x00001295 call  0x000024ca 
+ 00009409  0x00001298 bpatch  0x0000004e , 0x00004009 
+ 00009410  0x00001299 fetcht  0x00000001 , 0x00000047 
+ 00009411  0x0000129a set1  0x00000003 , 0x00000002 
+ 00009412  0x0000129b storet  0x00000001 , 0x00000047 
+ 00009413  0x0000129c deposit  0x00000001 
+ 00009414  0x0000129d store  0x00000001 , 0x000040c5 
+ 00009415  0x0000129e setarg  0x0000ffff 
+ 00009416  0x0000129f store  0x00000002 , 0x000040c8 
+ 00009417  0x000012a0 rtn 
+ 00009418  0x000012a3 bpatch  0x0000004f , 0x00004009 
+ 00009419  0x000012a4 fetch  0x00000001 , 0x0000004c 
+ 00009420  0x000012a5 isolate1  0x00000005 , 0x0000003f 
+ 00009421  0x000012a6 fetch  0x00000002 , 0x000041dc 
+ 00009422  0x000012a7 branch  0x000024e0 , 0x00000001 
+ 00009423  0x000012a8 force  0x00000003 , 0x00000001 
+ 00009424  0x000012a9 sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009425  0x000012aa rtn  0x00000002 
+ 00009426  0x000012ab force  0x00000004 , 0x00000001 
+ 00009427  0x000012ac sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00009428  0x000012ad rtn  0x00000002 
+ 00009429  0x000012ae force  0x0000000a , 0x00000001 
+ 00009430  0x000012af sub  0x0000003f , 0x00000079 , 0x0000003e 
+ 00009431  0x000012b0 rtn  0x00000002 
+ 00009432  0x000012b1 force  0x0000000b , 0x00000001 
+ 00009433  0x000012b2 sub  0x0000003f , 0x000000b7 , 0x0000003e 
+ 00009434  0x000012b3 rtn  0x00000002 
+ 00009435  0x000012b4 force  0x0000000e , 0x00000001 
+ 00009436  0x000012b5 sub  0x0000003f , 0x000000e0 , 0x0000003e 
+ 00009437  0x000012b6 rtn  0x00000002 
+ 00009438  0x000012b7 force  0x0000000f , 0x00000001 
+ 00009439  0x000012b8 rtn 
+ 00009440  0x000012ba force  0x00000003 , 0x00000001 
+ 00009441  0x000012bb sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009442  0x000012bc rtn  0x00000002 
+ 00009443  0x000012bd force  0x00000004 , 0x00000001 
+ 00009444  0x000012be sub  0x0000003f , 0x00000036 , 0x0000003e 
+ 00009445  0x000012bf rtn  0x00000002 
+ 00009446  0x000012c0 force  0x0000000a , 0x00000001 
+ 00009447  0x000012c1 arg  0x0000016f , 0x00000002 
+ 00009448  0x000012c2 isub  0x00000002 , 0x0000003e 
+ 00009449  0x000012c3 nrtn  0x00000002 
+ 00009450  0x000012c4 force  0x0000000e , 0x00000001 
+ 00009451  0x000012c5 arg  0x000002a7 , 0x00000002 
+ 00009452  0x000012c6 isub  0x00000002 , 0x0000003e 
+ 00009453  0x000012c7 nrtn  0x00000002 
+ 00009454  0x000012c8 force  0x0000000f , 0x00000001 
+ 00009455  0x000012c9 rtn 
+ 00009456  0x000012d3 fetch  0x00000001 , 0x00000030 
+ 00009457  0x000012d4 bbit0  0x00000001 , 0x000024f5 
+ 00009458  0x000012d5 fetch  0x00000002 , 0x00000032 
+ 00009459  0x000012d6 branch  0x000024f5 , 0x00000034 
+ 00009460  0x000012d7 nbranch  0x000024f7 , 0x0000002e 
+ 00009461  0x000012d9 call  0x00002a4f 
+ 00009462  0x000012db add  0x00000028 , 0x00000001 , 0x00000021 
+ 00009463  0x000012dd enable  0x00000010 
+ 00009464  0x000012de fetch  0x00000002 , 0x0000003e 
+ 00009465  0x000012df rshift  0x0000003f , 0x0000003f 
+ 00009466  0x000012e0 arg  0x00000500 , 0x00000002 
+ 00009467  0x000012e1 iadd  0x00000002 , 0x0000003f 
+ 00009468  0x000012e2 call  0x00002a24 
+ 00009469  0x000012e3 call  0x000028ea 
+ 00009470  0x000012e4 force  0x00000003 , 0x00000024 
+ 00009471  0x000012e5 call  0x000028cc 
+ 00009472  0x000012e6 call  0x0000242a 
+ 00009473  0x000012e7 call  0x000029f1 
+ 00009474  0x000012e8 bpatch  0x00000050 , 0x0000400a 
+ 00009475  0x000012e9 fetch  0x00000002 , 0x0000003e 
+ 00009476  0x000012ea rshift  0x0000003f , 0x0000003f 
+ 00009477  0x000012eb call  0x00002a24 
+ 00009478  0x000012ec call  0x000029eb 
+ 00009479  0x000012ed enable  0x0000000d 
+ 00009480  0x000012ee fetch  0x00000002 , 0x0000003e 
+ 00009481  0x000012ef arg  0x000003bb , 0x00000002 
+ 00009482  0x000012f0 iadd  0x00000002 , 0x0000001b 
+ 00009483  0x000012f1 correlate  0x0000003e , 0x00000003 
+ 00009484  0x000012f2 copy  0x0000001a , 0x00000002 
+ 00009485  0x000012f3 storet  0x00000006 , 0x0000009a 
+ 00009486  0x000012f4 disable  0x0000000d 
+ 00009487  0x000012f5 nrtn  0x00000018 
+ 00009488  0x000012f6 arg  0x000003bb , 0x00000029 
+ 00009489  0x000012f7 copy  0x00000021 , 0x00000028 
+ 00009490  0x000012f8 branch  0x00002b05 , 0x0000002b 
+ 00009491  0x000012f9 rtn 
+ 00009492  0x000012fd bpatch  0x00000051 , 0x0000400a 
+ 00009493  0x000012fe call  0x000024f0 
+ 00009494  0x000012ff nbranch  0x000028f9 , 0x00000018 
+ 00009495  0x00001300 call  0x000029bb 
+ 00009496  0x00001301 bmark0  0x00000011 , 0x0000251c 
+ 00009497  0x00001302 fetch  0x00000002 , 0x000000f6 
+ 00009498  0x00001303 increase  0x00000001 , 0x0000003f 
+ 00009499  0x00001304 store  0x00000002 , 0x000000f6 
+ 00009500  0x00001306 rshift  0x00000021 , 0x00000002 
+ 00009501  0x00001307 or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00009502  0x00001309 bpatch  0x00000052 , 0x0000400a 
+ 00009503  0x0000130a enable  0x00000007 
+ 00009504  0x0000130b enable  0x0000000a 
+ 00009505  0x0000130c enable  0x0000000b 
+ 00009506  0x0000130d parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009507  0x0000130e rshift8  0x0000000c , 0x0000003f 
+ 00009508  0x0000130f store  0x00000001 , 0x0000015d 
+ 00009509  0x00001310 parse  0x00000003 , 0x00000000 , 0x00000004 
+ 00009510  0x00001311 inject  0x00000000 , 0x00000007 
+ 00009511  0x00001312 copy  0x0000000c , 0x0000003f 
+ 00009512  0x00001313 store  0x00000001 , 0x00000019 
+ 00009513  0x00001314 parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009514  0x00001315 rshift8  0x0000000c , 0x0000003f 
+ 00009515  0x00001316 store  0x00000001 , 0x0000015e 
+ 00009516  0x00001317 fetch  0x00000001 , 0x00000019 
+ 00009517  0x00001318 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00009518  0x00001319 branch  0x00002533 , 0x00000002 
+ 00009519  0x0000131a beq  0x00000007 , 0x00002533 
+ 00009520  0x0000131b fetch  0x00000001 , 0x0000004c 
+ 00009521  0x0000131c isolate1  0x00000005 , 0x0000003f 
+ 00009522  0x0000131d setflag  0x00000001 , 0x00000001 , 0x00000015 
+ 00009523  0x0000131f bpatch  0x00000053 , 0x0000400a 
+ 00009524  0x00001320 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009525  0x00001321 disable  0x0000000b 
+ 00009526  0x00001322 disable  0x0000000a 
+ 00009527  0x00001323 branch  0x00002631 , 0x00000006 
+ 00009528  0x00001324 bmark0  0x00000011 , 0x0000253c 
+ 00009529  0x00001325 fetch  0x00000002 , 0x000000f8 
+ 00009530  0x00001326 increase  0x00000001 , 0x0000003f 
+ 00009531  0x00001327 store  0x00000002 , 0x000000f8 
+ 00009532  0x00001329 bpatch  0x00000054 , 0x0000400a 
+ 00009533  0x0000132a fetch  0x00000001 , 0x0000015d 
+ 00009534  0x0000132b compare  0x00000000 , 0x0000003f , 0x00000007 
+ 00009535  0x0000132c setflag  0x00000001 , 0x0000000a , 0x00000000 
+ 00009536  0x0000132d branch  0x0000254c , 0x00000001 
+ 00009537  0x0000132e icompare  0x00000007 , 0x00000004 
+ 00009538  0x0000132f branch  0x0000254b , 0x00000001 
+ 00009539  0x00001330 bmark0  0x00000007 , 0x0000264d 
+ 00009540  0x00001331 fetcht  0x00000001 , 0x000000b0 
+ 00009541  0x00001332 icompare  0x00000007 , 0x00000002 
+ 00009542  0x00001333 nbranch  0x0000264d , 0x00000001 
+ 00009543  0x00001334 fetch  0x00000001 , 0x00000047 
+ 00009544  0x00001335 set0  0x00000005 , 0x0000003f 
+ 00009545  0x00001336 set1  0x00000004 , 0x0000003f 
+ 00009546  0x00001337 store  0x00000001 , 0x00000047 
+ 00009547  0x00001339 enable  0x0000002d 
+ 00009548  0x0000133b bpatch  0x00000055 , 0x0000400a 
+ 00009549  0x0000133c fetch  0x00000001 , 0x00000019 
+ 00009550  0x0000133d icopy  0x00000001 
+ 00009551  0x0000133e bmark1  0x0000000a , 0x0000255b 
+ 00009552  0x0000133f fetcht  0x00000001 , 0x0000015e 
+ 00009553  0x00001340 fetch  0x00000001 , 0x00000047 
+ 00009554  0x00001341 set0  0x00000000 , 0x0000003f 
+ 00009555  0x00001342 isolate1  0x00000000 , 0x00000002 
+ 00009556  0x00001343 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00009557  0x00001344 isolate1  0x00000001 , 0x00000002 
+ 00009558  0x00001345 setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00009559  0x00001346 store  0x00000001 , 0x00000047 
+ 00009560  0x00001347 isolate0  0x00000001 , 0x00000002 
+ 00009561  0x00001348 branch  0x0000255b , 0x00000001 
+ 00009562  0x00001349 call  0x00002687 
+ 00009563  0x0000134b bpatch  0x00000056 , 0x0000400a 
+ 00009564  0x0000134c arg  0x00000000 , 0x00000002 
+ 00009565  0x0000134d call  0x00002a1c 
+ 00009566  0x0000134e and  0x00000001 , 0x0000000f , 0x0000003f 
+ 00009567  0x0000134f beq  0x00000001 , 0x00002587 
+ 00009568  0x00001350 beq  0x00000000 , 0x0000264d 
+ 00009569  0x00001351 beq  0x00000002 , 0x00002659 
+ 00009570  0x00001352 fetcht  0x00000001 , 0x0000015e 
+ 00009571  0x00001353 fetch  0x00000001 , 0x00000047 
+ 00009572  0x00001354 icompare  0x00000004 , 0x00000002 
+ 00009573  0x00001355 nbranch  0x00002569 , 0x00000001 
+ 00009574  0x00001356 bmark0  0x0000000a , 0x00002568 
+ 00009575  0x00001357 bbit0  0x00000007 , 0x00002569 
+ 00009576  0x00001359 set1  0x0000000f , 0x00000000 
+ 00009577  0x0000135b bpatch  0x00000057 , 0x0000400a 
+ 00009578  0x0000135c deposit  0x00000001 
+ 00009579  0x0000135d beq  0x00000003 , 0x00002589 
+ 00009580  0x0000135e beq  0x00000004 , 0x0000258d 
+ 00009581  0x0000135f beq  0x00000007 , 0x00002578 
+ 00009582  0x00001360 beq  0x00000008 , 0x0000258c 
+ 00009583  0x00001361 arg  0x00000004 , 0x00000002 
+ 00009584  0x00001362 call  0x00002a1c 
+ 00009585  0x00001363 beq  0x0000000a , 0x00002588 
+ 00009586  0x00001364 beq  0x0000000b , 0x0000258b 
+ 00009587  0x00001365 arg  0x00000008 , 0x00000002 
+ 00009588  0x00001366 call  0x00002a1c 
+ 00009589  0x00001367 beq  0x0000000e , 0x00002588 
+ 00009590  0x00001368 beq  0x0000000f , 0x0000258b 
+ 00009591  0x00001369 rtn 
+ 00009592  0x0000136d bpatch  0x00000058 , 0x0000400b 
+ 00009593  0x0000136e enable  0x0000000d 
+ 00009594  0x0000136f enable  0x00000009 
+ 00009595  0x00001370 enable  0x0000000e 
+ 00009596  0x00001371 arg  0x000000d1 , 0x00000005 
+ 00009597  0x00001372 force  0x0000001e , 0x00000039 
+ 00009598  0x00001374 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009599  0x00001375 rshift3  0x0000000c , 0x0000003f 
+ 00009600  0x00001376 istore  0x00000001 , 0x00000005 
+ 00009601  0x00001377 loop  0x0000257e 
+ 00009602  0x00001378 bmark0  0x00000007 , 0x0000264d 
+ 00009603  0x00001379 parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009604  0x0000137a nsetflag  0x00000006 , 0x00000008 , 0x00000000 
+ 00009605  0x0000137b branch  0x0000263d , 0x00000006 
+ 00009606  0x0000137c branch  0x00002620 
+ 00009607  0x00001380 branch  0x0000264d 
+ 00009608  0x00001384 set1  0x00000010 , 0x00000000 
+ 00009609  0x00001386 enable  0x0000000c 
+ 00009610  0x00001387 branch  0x0000258e 
+ 00009611  0x0000138b set1  0x00000010 , 0x00000000 
+ 00009612  0x0000138d set1  0x00000002 , 0x00000015 
+ 00009613  0x0000138f enable  0x0000000d 
+ 00009614  0x00001391 bpatch  0x00000059 , 0x0000400b 
+ 00009615  0x00001392 bmark1  0x00000001 , 0x0000264d 
+ 00009616  0x00001393 isolate0  0x00000001 , 0x00000015 
+ 00009617  0x00001394 branch  0x0000259a , 0x00000001 
+ 00009618  0x00001395 disable  0x00000007 
+ 00009619  0x00001396 enable  0x0000000d 
+ 00009620  0x00001397 disable  0x0000000c 
+ 00009621  0x00001398 add  0x00000022 , 0x00000002 , 0x0000000b 
+ 00009622  0x00001399 correlate  0x00000022 , 0x00000026 
+ 00009623  0x0000139a nbranch  0x0000263d , 0x00000018 
+ 00009624  0x0000139b set1  0x00000010 , 0x00000000 
+ 00009625  0x0000139c enable  0x00000007 
+ 00009626  0x0000139e bpatch  0x0000005a , 0x0000400b 
+ 00009627  0x0000139f enable  0x0000000e 
+ 00009628  0x000013a0 enable  0x00000009 
+ 00009629  0x000013a1 parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009630  0x000013a2 rshift8  0x0000000c , 0x0000003f 
+ 00009631  0x000013a3 store  0x00000001 , 0x00000180 
+ 00009632  0x000013a4 parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009633  0x000013a5 bmark1  0x00000010 , 0x000025a5 
+ 00009634  0x000013a6 rshift3  0x0000000c , 0x00000039 
+ 00009635  0x000013a7 rshift3  0x00000039 , 0x00000039 
+ 00009636  0x000013a8 branch  0x000025a8 
+ 00009637  0x000013aa parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009638  0x000013ab rshift  0x0000000c , 0x00000039 
+ 00009639  0x000013ac parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009640  0x000013ae bpatch  0x0000005b , 0x0000400b 
+ 00009641  0x000013af deposit  0x00000039 
+ 00009642  0x000013b0 store  0x00000002 , 0x0000015f 
+ 00009643  0x000013b1 branch  0x000025e8 , 0x00000034 
+ 00009644  0x000013b2 isub  0x00000035 , 0x0000003e 
+ 00009645  0x000013b3 branch  0x0000263d , 0x00000002 
+ 00009646  0x000013b4 bpatch  0x0000005c , 0x0000400b 
+ 00009647  0x000013b5 set0  0x00000000 , 0x00000000 
+ 00009648  0x000013b6 fetch  0x00000001 , 0x00000180 
+ 00009649  0x000013b7 and_into  0x00000003 , 0x0000003f 
+ 00009650  0x000013b8 arg  0x00000551 , 0x00000005 
+ 00009651  0x000013b9 beq  0x00000003 , 0x000025ba 
+ 00009652  0x000013ba bmark1  0x00000011 , 0x000025e4 
+ 00009653  0x000013bc fetch  0x00000001 , 0x00000180 
+ 00009654  0x000013bd and_into  0x00000003 , 0x0000003f 
+ 00009655  0x000013be beq  0x00000002 , 0x000025bf 
+ 00009656  0x000013bf beq  0x00000001 , 0x000025d3 
+ 00009657  0x000013c0 branch  0x0000263d 
+ 00009658  0x000013c3 fetch  0x00000002 , 0x0000015f 
+ 00009659  0x000013c4 sub  0x0000003f , 0x00000070 , 0x0000003e 
+ 00009660  0x000013c5 nbranch  0x0000263d , 0x00000002 
+ 00009661  0x000013c6 bmark1  0x0000000f , 0x00002620 
+ 00009662  0x000013c7 branch  0x000025e4 
+ 00009663  0x000013cb bpatch  0x0000005d , 0x0000400b 
+ 00009664  0x000013cc bmark1  0x0000000f , 0x00002620 
+ 00009665  0x000013cd fetch  0x00000002 , 0x0000015f 
+ 00009666  0x000013ce arg  0x000002e0 , 0x00000002 
+ 00009667  0x000013cf isub  0x00000002 , 0x0000003e 
+ 00009668  0x000013d0 branch  0x0000263d , 0x00000002 
+ 00009669  0x000013d1 fetch  0x00000001 , 0x00000263 
+ 00009670  0x000013d2 bbit0  0x00000000 , 0x000025c9 
+ 00009671  0x000013d3 bbit0  0x00000001 , 0x000025ce 
+ 00009672  0x000013d4 branch  0x0000264d 
+ 00009673  0x000013d6 jam  0x00000001 , 0x00000261 
+ 00009674  0x000013d7 fetch  0x00000002 , 0x0000025d 
+ 00009675  0x000013d8 bne  0x00000000 , 0x0000264d 
+ 00009676  0x000013d9 arg  0x00001000 , 0x00000005 
+ 00009677  0x000013da branch  0x000025e4 
+ 00009678  0x000013dc jam  0x00000002 , 0x00000261 
+ 00009679  0x000013dd fetch  0x00000002 , 0x0000025f 
+ 00009680  0x000013de bne  0x00000000 , 0x0000264d 
+ 00009681  0x000013df arg  0x00001400 , 0x00000005 
+ 00009682  0x000013e0 branch  0x000025e4 
+ 00009683  0x000013e3 bpatch  0x0000005e , 0x0000400b 
+ 00009684  0x000013e4 bmark1  0x0000000f , 0x00002620 
+ 00009685  0x000013e5 fetch  0x00000002 , 0x0000015f 
+ 00009686  0x000013e6 arg  0x000002e0 , 0x00000002 
+ 00009687  0x000013e7 isub  0x00000002 , 0x0000003e 
+ 00009688  0x000013e8 branch  0x0000263d , 0x00000002 
+ 00009689  0x000013e9 fetch  0x00000001 , 0x00000261 
+ 00009690  0x000013ea beq  0x00000001 , 0x000025dd 
+ 00009691  0x000013eb beq  0x00000002 , 0x000025e1 
+ 00009692  0x000013ec branch  0x0000264d 
+ 00009693  0x000013ee arg  0x00001000 , 0x00000005 
+ 00009694  0x000013ef fetch  0x00000002 , 0x0000025d 
+ 00009695  0x000013f0 iadd  0x00000005 , 0x00000005 
+ 00009696  0x000013f1 branch  0x000025e4 
+ 00009697  0x000013f3 arg  0x00001400 , 0x00000005 
+ 00009698  0x000013f4 fetch  0x00000002 , 0x0000025f 
+ 00009699  0x000013f5 iadd  0x00000005 , 0x00000005 
+ 00009700  0x000013f7 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009701  0x000013f8 rshift3  0x0000000c , 0x0000003f 
+ 00009702  0x000013f9 istore  0x00000001 , 0x00000005 
+ 00009703  0x000013fa loop  0x000025e4 
+ 00009704  0x000013fc bpatch  0x0000005f , 0x0000400b 
+ 00009705  0x000013fd parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009706  0x000013fe branch  0x00002637 , 0x00000006 
+ 00009707  0x000013ff fetch  0x00000001 , 0x00004363 
+ 00009708  0x00001400 beq  0x00000001 , 0x0000264d 
+ 00009709  0x00001401 bmark1  0x00000011 , 0x0000260d 
+ 00009710  0x00001402 bmark1  0x0000000f , 0x0000264a 
+ 00009711  0x00001403 fetch  0x00000001 , 0x00000180 
+ 00009712  0x00001404 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009713  0x00001405 branch  0x0000260d , 0x00000001 
+ 00009714  0x00001406 fetch  0x00000002 , 0x0000015f 
+ 00009715  0x00001407 branch  0x0000260d , 0x00000034 
+ 00009716  0x00001408 bpatch  0x00000060 , 0x0000400c 
+ 00009717  0x00001409 fetch  0x00000001 , 0x00000261 
+ 00009718  0x0000140a beq  0x00000001 , 0x000025f9 
+ 00009719  0x0000140b beq  0x00000002 , 0x00002603 
+ 00009720  0x0000140c branch  0x00002a8c 
+ 00009721  0x0000140e fetch  0x00000002 , 0x0000025d 
+ 00009722  0x0000140f fetcht  0x00000002 , 0x0000015f 
+ 00009723  0x00001410 iadd  0x00000002 , 0x0000003f 
+ 00009724  0x00001411 store  0x00000002 , 0x0000025d 
+ 00009725  0x00001412 beq  0x00000000 , 0x00002a8c 
+ 00009726  0x00001413 fetcht  0x00000002 , 0x00001000 
+ 00009727  0x00001414 increase  0x00000004 , 0x00000002 
+ 00009728  0x00001415 isub  0x00000002 , 0x0000003e 
+ 00009729  0x00001416 call  0x00002747 , 0x00000005 
+ 00009730  0x00001417 branch  0x0000260d 
+ 00009731  0x00001419 fetch  0x00000002 , 0x0000025f 
+ 00009732  0x0000141a fetcht  0x00000002 , 0x0000015f 
+ 00009733  0x0000141b iadd  0x00000002 , 0x0000003f 
+ 00009734  0x0000141c store  0x00000002 , 0x0000025f 
+ 00009735  0x0000141d beq  0x00000000 , 0x00002a8c 
+ 00009736  0x0000141e fetcht  0x00000002 , 0x00001400 
+ 00009737  0x0000141f add  0x00000002 , 0x00000004 , 0x00000002 
+ 00009738  0x00001420 isub  0x00000002 , 0x0000003e 
+ 00009739  0x00001421 call  0x0000274b , 0x00000005 
+ 00009740  0x00001422 branch  0x0000260d 
+ 00009741  0x00001424 bpatch  0x00000061 , 0x0000400c 
+ 00009742  0x00001425 fetcht  0x00000001 , 0x0000004c 
+ 00009743  0x00001426 fetch  0x00000001 , 0x00000180 
+ 00009744  0x00001427 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009745  0x00001428 setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00009746  0x00001429 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00009747  0x0000142a storet  0x00000001 , 0x0000004c 
+ 00009748  0x0000142b nbranch  0x00002616 , 0x00000001 
+ 00009749  0x0000142c set1  0x00000001 , 0x00000000 
+ 00009750  0x0000142e bmark0  0x00000011 , 0x00002620 
+ 00009751  0x0000142f isolate1  0x00000006 , 0x00000002 
+ 00009752  0x00001430 branch  0x00002620 , 0x00000001 
+ 00009753  0x00001431 fetch  0x00000002 , 0x000000fa 
+ 00009754  0x00001432 increase  0x00000001 , 0x0000003f 
+ 00009755  0x00001433 store  0x00000002 , 0x000000fa 
+ 00009756  0x00001434 set1  0x00000005 , 0x00000000 
+ 00009757  0x00001435 set0  0x00000007 , 0x00000002 
+ 00009758  0x00001436 set0  0x00000001 , 0x00000000 
+ 00009759  0x00001437 storet  0x00000001 , 0x0000004c 
+ 00009760  0x00001439 bpatch  0x00000062 , 0x0000400c 
+ 00009761  0x0000143a fetcht  0x00000001 , 0x0000015e 
+ 00009762  0x0000143b fetch  0x00000001 , 0x00000047 
+ 00009763  0x0000143c set1  0x00000005 , 0x0000003f 
+ 00009764  0x0000143d isolate1  0x00000002 , 0x00000002 
+ 00009765  0x0000143e setflag  0x00000001 , 0x00000002 , 0x0000003f 
+ 00009766  0x0000143f isolate1  0x0000000a , 0x00000000 
+ 00009767  0x00001440 setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00009768  0x00001441 store  0x00000001 , 0x00000047 
+ 00009769  0x00001442 fetch  0x00000002 , 0x0000015f 
+ 00009770  0x00001443 nbranch  0x0000264d , 0x00000034 
+ 00009771  0x00001444 fetch  0x00000001 , 0x0000004c 
+ 00009772  0x00001445 set0  0x00000007 , 0x0000003f 
+ 00009773  0x00001446 store  0x00000001 , 0x0000004c 
+ 00009774  0x00001447 fetch  0x00000001 , 0x00000180 
+ 00009775  0x00001448 compare  0x00000001 , 0x0000003f , 0x00000007 
+ 00009776  0x0000144a branch  0x0000264d 
+ 00009777  0x0000144d bpatch  0x00000063 , 0x0000400c 
+ 00009778  0x0000144e disable  0x0000002d 
+ 00009779  0x0000144f fetch  0x00000002 , 0x0000001a 
+ 00009780  0x00001450 increase  0x00000001 , 0x0000003f 
+ 00009781  0x00001451 store  0x00000002 , 0x0000001a 
+ 00009782  0x00001452 branch  0x0000264d 
+ 00009783  0x00001454 fetch  0x00000002 , 0x0000001c 
+ 00009784  0x00001455 increase  0x00000001 , 0x0000003f 
+ 00009785  0x00001456 store  0x00000002 , 0x0000001c 
+ 00009786  0x00001457 call  0x0000263e 
+ 00009787  0x00001458 bmark0  0x00000011 , 0x0000263d 
+ 00009788  0x00001459 set1  0x00000005 , 0x00000000 
+ 00009789  0x0000145b branch  0x0000264d 
+ 00009790  0x0000145e bpatch  0x00000064 , 0x0000400c 
+ 00009791  0x0000145f fetch  0x00000001 , 0x00000180 
+ 00009792  0x00001460 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009793  0x00001461 nbranch  0x00002646 , 0x00000001 
+ 00009794  0x00001463 fetcht  0x00000001 , 0x0000004c 
+ 00009795  0x00001464 set0  0x00000006 , 0x00000002 
+ 00009796  0x00001465 storet  0x00000001 , 0x0000004c 
+ 00009797  0x00001466 rtn 
+ 00009798  0x0000146a fetcht  0x00000001 , 0x0000004c 
+ 00009799  0x0000146b set0  0x00000007 , 0x00000002 
+ 00009800  0x0000146c storet  0x00000001 , 0x0000004c 
+ 00009801  0x0000146d branch  0x00004c0b 
+ 00009802  0x00001470 fetch  0x00000001 , 0x00000047 
+ 00009803  0x00001471 set1  0x00000005 , 0x0000003f 
+ 00009804  0x00001472 store  0x00000001 , 0x00000047 
+ 00009805  0x00001474 bpatch  0x00000065 , 0x0000400c 
+ 00009806  0x00001475 disable  0x0000001d 
+ 00009807  0x00001476 disable  0x0000001c 
+ 00009808  0x00001477 disable  0x0000000d 
+ 00009809  0x00001478 disable  0x0000000c 
+ 00009810  0x00001479 disable  0x00000009 
+ 00009811  0x0000147a disable  0x0000000e 
+ 00009812  0x0000147b disable  0x00000007 
+ 00009813  0x0000147c branch  0x000028f9 , 0x00000021 
+ 00009814  0x0000147d until  0x0000003e , 0x00000027 
+ 00009815  0x0000147e nop  0x00000064 
+ 00009816  0x0000147f branch  0x000028f9 
+ 00009817  0x00001482 bpatch  0x00000066 , 0x0000400c 
+ 00009818  0x00001483 enable  0x00000009 
+ 00009819  0x00001484 enable  0x0000000c 
+ 00009820  0x00001485 parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009821  0x00001486 isolate1  0x0000003a , 0x0000003f 
+ 00009822  0x00001487 setflag  0x00000001 , 0x00000000 , 0x00000000 
+ 00009823  0x00001488 copy  0x00000020 , 0x00000002 
+ 00009824  0x00001489 ialigned  0x00000020 
+ 00009825  0x0000148a ialigned  0x0000001e 
+ 00009826  0x0000148b pulse  0x00000015 
+ 00009827  0x0000148c setsect  0x00000002 , 0x000fffff 
+ 00009828  0x0000148d setsect  0x00000003 , 0x0000ffff 
+ 00009829  0x0000148e nop  0x00000020 
+ 00009830  0x0000148f iverify  0x0000000d 
+ 00009831  0x00001490 deposit  0x0000002c 
+ 00009832  0x00001491 store  0x00000003 , 0x00000178 
+ 00009833  0x00001492 deposit  0x0000002d 
+ 00009834  0x00001493 store  0x00000001 , 0x0000017b 
+ 00009835  0x00001494 copy  0x00000002 , 0x00000020 
+ 00009836  0x00001495 branch  0x0000266e , 0x00000001 
+ 00009837  0x00001496 branch  0x0000263d 
+ 00009838  0x00001498 bpatch  0x00000067 , 0x0000400c 
+ 00009839  0x00001499 parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009840  0x0000149a ialigned  0x0000001f 
+ 00009841  0x0000149b ialigned  0x00000004 
+ 00009842  0x0000149c ialigned  0x0000002e 
+ 00009843  0x0000149d ialigned  0x00000012 
+ 00009844  0x0000149e force  0x00000000 , 0x0000003f 
+ 00009845  0x0000149f parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009846  0x000014a0 branch  0x0000263d , 0x00000006 
+ 00009847  0x000014a1 setarg  0x0ffffffc 
+ 00009848  0x000014a2 iand  0x00000012 , 0x0000003f 
+ 00009849  0x000014a3 store  0x00000004 , 0x00000165 
+ 00009850  0x000014a4 deposit  0x0000001d 
+ 00009851  0x000014a5 store  0x00000003 , 0x00000175 
+ 00009852  0x000014a6 deposit  0x0000001c 
+ 00009853  0x000014a7 store  0x00000001 , 0x00000173 
+ 00009854  0x000014a8 deposit  0x00000004 
+ 00009855  0x000014a9 store  0x00000001 , 0x00000174 
+ 00009856  0x000014aa deposit  0x0000002e 
+ 00009857  0x000014ab store  0x00000002 , 0x0000017c 
+ 00009858  0x000014ac deposit  0x00000021 
+ 00009859  0x000014ad inject  0x00000001 , 0x00000020 
+ 00009860  0x000014ae compare  0x00000002 , 0x00000001 , 0x0000000f 
+ 00009861  0x000014af setflag  0x00000001 , 0x0000000b , 0x00000000 
+ 00009862  0x000014b0 branch  0x0000264d 
+ 00009863  0x000014b3 bpatch  0x00000068 , 0x0000400d 
+ 00009864  0x000014b4 fetch  0x00000001 , 0x00000047 
+ 00009865  0x000014b5 rtnbit0  0x00000003 
+ 00009866  0x000014b6 set0  0x00000003 , 0x0000003f 
+ 00009867  0x000014b7 setflip  0x00000006 , 0x0000003f 
+ 00009868  0x000014b8 store  0x00000001 , 0x00000047 
+ 00009869  0x000014b9 fetch  0x00000001 , 0x000040c5 
+ 00009870  0x000014ba beq  0x00000013 , 0x0000269c 
+ 00009871  0x000014bb rtneq  0x00000007 
+ 00009872  0x000014bc fetch  0x00000001 , 0x0000004b 
+ 00009873  0x000014bd rtnbit0  0x00000006 , 0x0000003f 
+ 00009874  0x000014be set0  0x00000006 , 0x0000003f 
+ 00009875  0x000014bf set1  0x00000007 , 0x0000003f 
+ 00009876  0x000014c0 store  0x00000001 , 0x0000004b 
+ 00009877  0x000014c1 set0  0x00000002 , 0x00000000 
+ 00009878  0x000014c2 fetch  0x00000002 , 0x00004246 
+ 00009879  0x000014c3 nrtn  0x00000034 
+ 00009880  0x000014c4 fetch  0x00000001 , 0x0000004b 
+ 00009881  0x000014c5 set0  0x00000007 , 0x0000003f 
+ 00009882  0x000014c6 store  0x00000001 , 0x0000004b 
+ 00009883  0x000014c7 branch  0x0000525d 
+ 00009884  0x000014ca bpatch  0x00000069 , 0x0000400d 
+ 00009885  0x000014cb fetch  0x00000001 , 0x000004b7 
+ 00009886  0x000014cc rshift  0x0000003f , 0x0000003f 
+ 00009887  0x000014cd beq  0x00000011 , 0x000026b8 
+ 00009888  0x000014ce beq  0x00000012 , 0x000026c0 
+ 00009889  0x000014cf beq  0x00000018 , 0x000026e9 
+ 00009890  0x000014d0 beq  0x0000007f , 0x000026a8 
+ 00009891  0x000014d1 rtnne  0x00000003 
+ 00009892  0x000014d2 fetch  0x00000001 , 0x000004b8 
+ 00009893  0x000014d3 beq  0x0000002b , 0x000026b0 
+ 00009894  0x000014d4 beq  0x00000011 , 0x000026ab 
+ 00009895  0x000014d5 rtn 
+ 00009896  0x000014d8 fetch  0x00000001 , 0x000004b8 
+ 00009897  0x000014d9 set1  0x00000007 , 0x0000003f 
+ 00009898  0x000014da rtn 
+ 00009899  0x000014dc rtn  0x00000029 
+ 00009900  0x000014dd fetch  0x00000001 , 0x00000030 
+ 00009901  0x000014de rtnbit1  0x00000004 
+ 00009902  0x000014df jam  0x00000031 , 0x0000007c 
+ 00009903  0x000014e0 rtn 
+ 00009904  0x000014e4 rtn  0x00000029 
+ 00009905  0x000014e5 fetch  0x00000001 , 0x00000031 
+ 00009906  0x000014e6 isolate1  0x00000004 , 0x0000003f 
+ 00009907  0x000014e7 branch  0x000026b5 , 0x00000001 
+ 00009908  0x000014e9 rtn 
+ 00009909  0x000014eb set0  0x00000004 , 0x0000003f 
+ 00009910  0x000014ec store  0x00000001 , 0x00000031 
+ 00009911  0x000014ed rtn 
+ 00009912  0x000014f0 bpatch  0x0000006a , 0x0000400d 
+ 00009913  0x000014f1 fetch  0x00000001 , 0x0000004c 
+ 00009914  0x000014f2 set1  0x00000002 , 0x0000003f 
+ 00009915  0x000014f3 store  0x00000001 , 0x0000004c 
+ 00009916  0x000014f4 jam  0x00000001 , 0x00008011 
+ 00009917  0x000014f5 fetch  0x00000001 , 0x00000030 
+ 00009918  0x000014f6 isolate1  0x00000004 , 0x0000003f 
+ 00009919  0x000014f7 rtn 
+ 00009920  0x000014fa bpatch  0x0000006b , 0x0000400d 
+ 00009921  0x000014fb fetch  0x00000001 , 0x0000004c 
+ 00009922  0x000014fc set0  0x00000002 , 0x0000003f 
+ 00009923  0x000014fd store  0x00000001 , 0x0000004c 
+ 00009924  0x000014fe jam  0x00000000 , 0x00008011 
+ 00009925  0x000014ff rtn 
+ 00009926  0x00001503 bpatch  0x0000006c , 0x0000400d 
+ 00009927  0x00001504 copy  0x00000022 , 0x0000003f 
+ 00009928  0x00001505 store  0x00000004 , 0x0000420c 
+ 00009929  0x00001506 add  0x00000022 , 0x00000003 , 0x00000011 
+ 00009930  0x00001507 branch  0x000026cc , 0x00000029 
+ 00009931  0x00001508 add  0x00000028 , 0x00000003 , 0x00000011 
+ 00009932  0x0000150a fetcht  0x00000002 , 0x00000032 
+ 00009933  0x0000150b deposit  0x00000011 
+ 00009934  0x0000150c set0  0x0000001b , 0x0000003f 
+ 00009935  0x0000150d idiv  0x00000002 
+ 00009936  0x0000150e fetch  0x00000002 , 0x00000075 
+ 00009937  0x0000150f call  0x00007f86 
+ 00009938  0x00001510 remainder  0x00000013 
+ 00009939  0x00001511 isub  0x00000013 , 0x0000003f 
+ 00009940  0x00001512 branch  0x000026d6 , 0x00000002 
+ 00009941  0x00001513 iadd  0x00000002 , 0x0000003f 
+ 00009942  0x00001515 iadd  0x00000011 , 0x0000003f 
+ 00009943  0x00001516 store  0x00000004 , 0x00000034 
+ 00009944  0x00001517 jam  0x00000000 , 0x0000455b 
+ 00009945  0x00001518 fetch  0x00000001 , 0x00000030 
+ 00009946  0x00001519 set1  0x00000001 , 0x0000003f 
+ 00009947  0x0000151a store  0x00000001 , 0x00000030 
+ 00009948  0x0000151b fetch  0x00000001 , 0x00000073 
+ 00009949  0x0000151c store  0x00000001 , 0x0000008a 
+ 00009950  0x0000151d setarg  0x00000000 
+ 00009951  0x0000151e store  0x00000003 , 0x00004169 
+ 00009952  0x0000151f store  0x00000003 , 0x0000416c 
+ 00009953  0x00001520 store  0x00000001 , 0x00004159 
+ 00009954  0x00001521 jam  0x0000000b , 0x00000a99 
+ 00009955  0x00001522 call  0x00007d86 
+ 00009956  0x00001523 fetch  0x00000002 , 0x000040c1 
+ 00009957  0x00001524 store  0x00000002 , 0x0000003e 
+ 00009958  0x00001525 nrtn  0x00000029 
+ 00009959  0x00001526 add  0x00000004 , 0xffffffff , 0x00000007 
+ 00009960  0x00001527 rtn 
+ 00009961  0x0000152a bpatch  0x0000006d , 0x0000400d 
+ 00009962  0x0000152b fetch  0x00000001 , 0x00000030 
+ 00009963  0x0000152c rtnbit0  0x00000001 
+ 00009964  0x0000152d set0  0x00000001 , 0x0000003f 
+ 00009965  0x0000152e store  0x00000001 , 0x00000030 
+ 00009966  0x0000152f fetch  0x00000002 , 0x000040bf 
+ 00009967  0x00001530 store  0x00000002 , 0x0000003e 
+ 00009968  0x00001531 disable  0x0000002b 
+ 00009969  0x00001532 jam  0x0000000c , 0x00000a99 
+ 00009970  0x00001533 branch  0x00007d86 
+ 00009971  0x00001537 bpatch  0x0000006e , 0x0000400d 
+ 00009972  0x00001538 enable  0x0000002e 
+ 00009973  0x00001539 fetch  0x00000001 , 0x00000030 
+ 00009974  0x0000153a bbit1  0x00000001 , 0x00002700 
+ 00009975  0x0000153b rtnmark1  0x00000011 
+ 00009976  0x0000153c fetch  0x00000001 , 0x00000047 
+ 00009977  0x0000153d rtnbit1  0x00000003 
+ 00009978  0x0000153e fetch  0x00000001 , 0x00000048 
+ 00009979  0x0000153f nrtn  0x00000034 
+ 00009980  0x00001540 fetch  0x00000001 , 0x0000004b 
+ 00009981  0x00001541 rtnbit1  0x00000006 
+ 00009982  0x00001543 force  0x00000000 , 0x0000003f 
+ 00009983  0x00001544 rtn 
+ 00009984  0x00001547 bbit0  0x00000002 , 0x0000270f 
+ 00009985  0x00001548 fetch  0x00000001 , 0x0000008a 
+ 00009986  0x00001549 beq  0x00000002 , 0x00002706 
+ 00009987  0x0000154a fetch  0x00000001 , 0x00000047 
+ 00009988  0x0000154b bbit1  0x00000003 , 0x00002718 
+ 00009989  0x0000154c bmark0  0x00000008 , 0x00002718 
+ 00009990  0x0000154e nbranch  0x00002718 , 0x00000029 
+ 00009991  0x0000154f fetch  0x00000001 , 0x00000048 
+ 00009992  0x00001550 nbranch  0x00002718 , 0x00000034 
+ 00009993  0x00001552 fetch  0x00000001 , 0x000000ef 
+ 00009994  0x00001553 increase  0xffffffff , 0x0000003f 
+ 00009995  0x00001554 store  0x00000001 , 0x000000ef 
+ 00009996  0x00001555 nbranch  0x000026fe , 0x00000034 
+ 00009997  0x00001556 jam  0x00000010 , 0x000000ef 
+ 00009998  0x00001557 branch  0x00002718 
+ 00009999  0x0000155f fetch  0x00000001 , 0x0000008a 
+ 00010000  0x00001560 bne  0x00000001 , 0x00002718 
+ 00010001  0x00001561 fetch  0x00000001 , 0x0000008b 
+ 00010002  0x00001562 branch  0x00002718 , 0x00000034 
+ 00010003  0x00001563 increase  0xffffffff , 0x0000003f 
+ 00010004  0x00001564 store  0x00000001 , 0x0000008b 
+ 00010005  0x00001565 fetch  0x00000001 , 0x00000047 
+ 00010006  0x00001566 rtnbit1  0x00000003 
+ 00010007  0x00001567 nrtn  0x0000002d 
+ 00010008  0x00001569 fetch  0x00000001 , 0x0000008a 
+ 00010009  0x0000156a increase  0xffffffff , 0x0000003f 
+ 00010010  0x0000156b store  0x00000001 , 0x0000008a 
+ 00010011  0x0000156c rtn 
+ 00010012  0x00001578 bpatch  0x0000006f , 0x0000400d 
+ 00010013  0x00001579 disable  0x00000010 
+ 00010014  0x0000157a copy  0x00000002 , 0x0000001b 
+ 00010015  0x0000157b call  0x00002260 
+ 00010016  0x0000157c disable  0x00000028 
+ 00010017  0x0000157d nrtn  0x00000005 
+ 00010018  0x0000157e force  0x00000000 , 0x0000001b 
+ 00010019  0x0000157f enable  0x00000028 
+ 00010020  0x00001580 rtn 
+ 00010021  0x00001584 fetch  0x00000001 , 0x00004158 
+ 00010022  0x00001585 icompare  0x000000ff , 0x00000004 
+ 00010023  0x00001586 rtn 
+ 00010024  0x0000158a bpatch  0x00000070 , 0x0000400e 
+ 00010025  0x0000158b set0  0x00000001 , 0x00000000 
+ 00010026  0x0000158d jam  0x00000000 , 0x0000026a 
+ 00010027  0x0000158e fetch  0x00000001 , 0x00000263 
+ 00010028  0x0000158f rtn  0x00000034 
+ 00010029  0x00001590 isolate1  0x00000000 , 0x0000003f 
+ 00010030  0x00001591 arg  0x00001000 , 0x00000006 
+ 00010031  0x00001592 call  0x00004d79 , 0x00000001 
+ 00010032  0x00001593 bpatch  0x00000071 , 0x0000400e 
+ 00010033  0x00001594 fetch  0x00000001 , 0x0000026a 
+ 00010034  0x00001595 beq  0x00000001 , 0x0000273b 
+ 00010035  0x00001597 jam  0x00000000 , 0x0000026a 
+ 00010036  0x00001598 fetch  0x00000001 , 0x00000263 
+ 00010037  0x00001599 rtnbit0  0x00000001 
+ 00010038  0x0000159a arg  0x00001400 , 0x00000006 
+ 00010039  0x0000159b call  0x00004d79 
+ 00010040  0x0000159c fetch  0x00000001 , 0x0000026a 
+ 00010041  0x0000159d beq  0x00000001 , 0x00002741 
+ 00010042  0x0000159e rtn 
+ 00010043  0x000015a1 fetch  0x00000001 , 0x00000263 
+ 00010044  0x000015a2 set0  0x00000000 , 0x0000003f 
+ 00010045  0x000015a3 store  0x00000001 , 0x00000263 
+ 00010046  0x000015a4 setarg  0x00000000 
+ 00010047  0x000015a5 store  0x00000002 , 0x0000025d 
+ 00010048  0x000015a6 rtn 
+ 00010049  0x000015a8 fetch  0x00000001 , 0x00000263 
+ 00010050  0x000015a9 set0  0x00000001 , 0x0000003f 
+ 00010051  0x000015aa store  0x00000001 , 0x00000263 
+ 00010052  0x000015ab setarg  0x00000000 
+ 00010053  0x000015ac store  0x00000002 , 0x0000025f 
+ 00010054  0x000015ad rtn 
+ 00010055  0x000015b0 fetch  0x00000001 , 0x00000263 
+ 00010056  0x000015b1 set1  0x00000000 , 0x0000003f 
+ 00010057  0x000015b2 store  0x00000001 , 0x00000263 
+ 00010058  0x000015b3 rtn 
+ 00010059  0x000015b6 fetch  0x00000001 , 0x00000263 
+ 00010060  0x000015b7 set1  0x00000001 , 0x0000003f 
+ 00010061  0x000015b8 store  0x00000001 , 0x00000263 
+ 00010062  0x000015b9 rtn 
+ 00010063  0x000015c0 bpatch  0x00000072 , 0x0000400e 
+ 00010064  0x000015c1 add  0x00000028 , 0x00000001 , 0x00000021 
+ 00010065  0x000015c2 call  0x000028ea 
+ 00010066  0x000015c3 force  0x00000003 , 0x00000024 
+ 00010067  0x000015c4 call  0x000028d2 
+ 00010068  0x000015c5 call  0x00002a51 
+ 00010069  0x000015c6 call  0x00002a5f 
+ 00010070  0x000015c7 branch  0x00002a64 
+ 00010071  0x000015cb bpatch  0x00000073 , 0x0000400e 
+ 00010072  0x000015cc call  0x00002a4d 
+ 00010073  0x000015cd deposit  0x00000028 
+ 00010074  0x000015ce fetcht  0x00000004 , 0x000040ca 
+ 00010075  0x000015cf isub  0x00000002 , 0x0000003f 
+ 00010076  0x000015d0 rtnne  0x00000001 
+ 00010077  0x000015d1 compare  0x00000000 , 0x00000001 , 0x0000001f 
+ 00010078  0x000015d2 nbranch  0x00002761 , 0x00000001 
+ 00010079  0x000015d3 fetch  0x00000001 , 0x00000019 
+ 00010080  0x000015d4 rtn  0x00000034 
+ 00010081  0x000015d6 call  0x0000274f 
+ 00010082  0x000015d8 compare  0x00000010 , 0x00000001 , 0x0000001f 
+ 00010083  0x000015d9 branch  0x0000264d , 0x00000001 
+ 00010084  0x000015da rshift  0x00000021 , 0x00000002 
+ 00010085  0x000015db or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00010086  0x000015dd bpatch  0x00000074 , 0x0000400e 
+ 00010087  0x000015de enable  0x00000007 
+ 00010088  0x000015df enable  0x0000000a 
+ 00010089  0x000015e0 enable  0x0000001b 
+ 00010090  0x000015e1 set0  0x00000010 , 0x00000000 
+ 00010091  0x000015e2 deposit  0x00000004 
+ 00010092  0x000015e3 inject  0x00000003 , 0x00000003 
+ 00010093  0x000015e4 deposit  0x00000001 
+ 00010094  0x000015e5 inject  0x00000003 , 0x00000004 
+ 00010095  0x000015e6 fetch  0x00000001 , 0x00000047 
+ 00010096  0x000015e7 inject  0x00000000 , 0x00000004 
+ 00010097  0x000015e8 inject  0x00000003 , 0x00000003 
+ 00010098  0x000015e9 enable  0x00000008 
+ 00010099  0x000015ea inject  0x00000003 , 0x00000008 
+ 00010100  0x000015eb disable  0x0000001b 
+ 00010101  0x000015ec disable  0x00000008 
+ 00010102  0x000015ed disable  0x0000000a 
+ 00010103  0x000015ee set0  0x00000002 , 0x00000015 
+ 00010104  0x000015ef arg  0x00000000 , 0x00000002 
+ 00010105  0x000015f0 call  0x00002a1c 
+ 00010106  0x000015f1 bpatch  0x00000075 , 0x0000400e 
+ 00010107  0x000015f2 and  0x00000001 , 0x0000001f , 0x0000003f 
+ 00010108  0x000015f3 beq  0x00000013 , 0x000027b4 
+ 00010109  0x000015f4 beq  0x00000000 , 0x0000264d 
+ 00010110  0x000015f5 beq  0x00000001 , 0x0000264d 
+ 00010111  0x000015f6 beq  0x00000002 , 0x00002797 
+ 00010112  0x000015f7 beq  0x00000003 , 0x000027c5 
+ 00010113  0x000015f8 beq  0x00000004 , 0x000027cb 
+ 00010114  0x000015f9 beq  0x00000007 , 0x0000278c 
+ 00010115  0x000015fa beq  0x00000008 , 0x000027ca 
+ 00010116  0x000015fb arg  0x00000004 , 0x00000002 
+ 00010117  0x000015fc call  0x00002a1c 
+ 00010118  0x000015fd beq  0x0000000a , 0x000027c7 
+ 00010119  0x000015fe beq  0x0000000b , 0x000027cd 
+ 00010120  0x000015ff arg  0x00000008 , 0x00000002 
+ 00010121  0x00001600 call  0x00002a1c 
+ 00010122  0x00001601 beq  0x0000000f , 0x000027cd 
+ 00010123  0x00001602 branch  0x000027c7 
+ 00010124  0x00001606 bpatch  0x00000076 , 0x0000400e 
+ 00010125  0x00001607 enable  0x0000001d 
+ 00010126  0x00001608 enable  0x00000009 
+ 00010127  0x00001609 enable  0x0000000e 
+ 00010128  0x0000160a force  0x0000001e , 0x00000039 
+ 00010129  0x0000160b arg  0x000000b3 , 0x00000006 
+ 00010130  0x0000160d ifetch  0x00000001 , 0x00000006 
+ 00010131  0x0000160e inject  0x00000003 , 0x00000008 
+ 00010132  0x0000160f loop  0x00002792 
+ 00010133  0x00001610 bmark1  0x00000007 , 0x000027f7 
+ 00010134  0x00001611 branch  0x0000264d 
+ 00010135  0x00001614 bpatch  0x00000077 , 0x0000400e 
+ 00010136  0x00001615 fetch  0x00000001 , 0x00000181 
+ 00010137  0x00001616 icopy  0x00000004 
+ 00010138  0x00001617 fetch  0x00000001 , 0x00000090 
+ 00010139  0x00001618 icopy  0x0000001c 
+ 00010140  0x00001619 fetch  0x00000003 , 0x000040aa 
+ 00010141  0x0000161a icopy  0x0000001d 
+ 00010142  0x0000161b fetch  0x00000002 , 0x000040a4 
+ 00010143  0x0000161c icopy  0x0000002e 
+ 00010144  0x0000161d enable  0x00000009 
+ 00010145  0x0000161e enable  0x0000001c 
+ 00010146  0x0000161f copy  0x00000020 , 0x00000011 
+ 00010147  0x00001620 call  0x000028e2 
+ 00010148  0x00001621 pulse  0x00000015 
+ 00010149  0x00001622 nop  0x00000020 
+ 00010150  0x00001623 copy  0x00000021 , 0x0000000b 
+ 00010151  0x00001624 fetch  0x00000004 , 0x00000161 
+ 00010152  0x00001625 icopy  0x00000021 
+ 00010153  0x00001626 preload  0x0000001e 
+ 00010154  0x00001627 set1  0x0000003a , 0x0000003f 
+ 00010155  0x00001628 inject  0x00000003 , 0x00000048 
+ 00010156  0x00001629 preload  0x0000001f 
+ 00010157  0x0000162a inject  0x00000003 , 0x00000048 
+ 00010158  0x0000162b copy  0x0000000b , 0x00000021 
+ 00010159  0x0000162c copy  0x00000011 , 0x00000020 
+ 00010160  0x0000162d enable  0x00000008 
+ 00010161  0x0000162e inject  0x00000003 , 0x00000010 
+ 00010162  0x0000162f disable  0x00000008 
+ 00010163  0x00001630 branch  0x0000264d 
+ 00010164  0x00001633 bpatch  0x00000078 , 0x0000400f 
+ 00010165  0x00001634 enable  0x0000000e 
+ 00010166  0x00001635 enable  0x00000009 
+ 00010167  0x00001636 enable  0x0000001c 
+ 00010168  0x00001637 fetch  0x00000001 , 0x000004b6 
+ 00010169  0x00001638 and  0x0000003f , 0x000001f8 , 0x00000002 
+ 00010170  0x00001639 arg  0x000004b6 , 0x00000006 
+ 00010171  0x0000163a increase  0x00000008 , 0x00000002 
+ 00010172  0x0000163c add  0x00000002 , 0xffffffb8 , 0x00000013 
+ 00010173  0x0000163d nbranch  0x000027c2 , 0x00000002 
+ 00010174  0x0000163e ifetch  0x00000009 , 0x00000006 
+ 00010175  0x0000163f inject  0x00000003 , 0x00000048 
+ 00010176  0x00001640 copy  0x00000013 , 0x00000002 
+ 00010177  0x00001641 branch  0x000027bc 
+ 00010178  0x00001643 ifetch  0x00000009 , 0x00000006 
+ 00010179  0x00001644 iinject  0x00000003 , 0x00000002 
+ 00010180  0x00001645 branch  0x000027f7 
+ 00010181  0x00001648 enable  0x0000001c 
+ 00010182  0x00001649 branch  0x000027d0 
+ 00010183  0x0000164c enable  0x0000001c 
+ 00010184  0x0000164d set1  0x00000010 , 0x00000000 
+ 00010185  0x0000164e branch  0x000027d0 
+ 00010186  0x00001651 set1  0x00000002 , 0x00000015 
+ 00010187  0x00001653 enable  0x0000001d 
+ 00010188  0x00001654 branch  0x000027d0 
+ 00010189  0x00001658 set1  0x00000002 , 0x00000015 
+ 00010190  0x00001659 enable  0x0000001d 
+ 00010191  0x0000165a set1  0x00000010 , 0x00000000 
+ 00010192  0x0000165d bpatch  0x00000079 , 0x0000400f 
+ 00010193  0x0000165e fetch  0x00000001 , 0x0000004c 
+ 00010194  0x0000165f bbit0  0x00000005 , 0x000027e5 
+ 00010195  0x00001660 sub  0x00000001 , 0x00000003 , 0x0000003e 
+ 00010196  0x00001661 branch  0x000027e5 , 0x00000002 
+ 00010197  0x00001662 disable  0x0000000e 
+ 00010198  0x00001663 disable  0x0000001c 
+ 00010199  0x00001664 enable  0x0000001d 
+ 00010200  0x00001665 disable  0x00000007 
+ 00010201  0x00001666 set1  0x00000001 , 0x00000015 
+ 00010202  0x00001667 isolate1  0x00000002 , 0x00000015 
+ 00010203  0x00001668 branch  0x000027df , 0x00000001 
+ 00010204  0x00001669 setarg  0x000abeee 
+ 00010205  0x0000166a inject  0x00000003 , 0x00000014 
+ 00010206  0x0000166b branch  0x000027e3 
+ 00010207  0x0000166d setarg  0x005faeba 
+ 00010208  0x0000166e inject  0x00000003 , 0x00000018 
+ 00010209  0x0000166f setarg  0x00000012 
+ 00010210  0x00001670 inject  0x00000003 , 0x00000006 
+ 00010211  0x00001672 enable  0x00000007 
+ 00010212  0x00001673 set1  0x00000010 , 0x00000000 
+ 00010213  0x00001675 enable  0x0000000e 
+ 00010214  0x00001676 enable  0x00000009 
+ 00010215  0x00001677 bmark1  0x00000005 , 0x00002800 
+ 00010216  0x00001678 fetch  0x00000001 , 0x000041db 
+ 00010217  0x00001679 inject  0x00000003 , 0x00000003 
+ 00010218  0x0000167a fetch  0x00000002 , 0x000041dc 
+ 00010219  0x0000167b iforce  0x00000039 
+ 00010220  0x0000167c bmark1  0x00000010 , 0x000027ef 
+ 00010221  0x0000167d inject  0x00000003 , 0x00000005 
+ 00010222  0x0000167e branch  0x000027f0 
+ 00010223  0x00001680 inject  0x00000003 , 0x0000000d 
+ 00010224  0x00001682 deposit  0x00000039 
+ 00010225  0x00001683 branch  0x000027f7 , 0x00000034 
+ 00010226  0x00001684 fetch  0x00000002 , 0x0000016f 
+ 00010227  0x00001685 iforce  0x00000006 
+ 00010228  0x00001687 ifetch  0x00000001 , 0x00000006 
+ 00010229  0x00001688 inject  0x00000003 , 0x00000008 
+ 00010230  0x00001689 loop  0x000027f4 
+ 00010231  0x0000168d enable  0x00000008 
+ 00010232  0x0000168e inject  0x00000003 , 0x00000010 
+ 00010233  0x0000168f disable  0x00000008 
+ 00010234  0x00001690 call  0x000024c1 
+ 00010235  0x00001691 fetch  0x00000001 , 0x0000004c 
+ 00010236  0x00001692 bbit0  0x00000005 , 0x0000264d 
+ 00010237  0x00001693 force  0x00000000 , 0x0000003f 
+ 00010238  0x00001694 inject  0x00000003 , 0x00000006 
+ 00010239  0x00001695 branch  0x0000264d 
+ 00010240  0x00001699 bpatch  0x0000007a , 0x0000400f 
+ 00010241  0x0000169a bmark1  0x00000010 , 0x00002808 
+ 00010242  0x0000169c fetch  0x00000001 , 0x00000180 
+ 00010243  0x0000169d inject  0x00000003 , 0x00000003 
+ 00010244  0x0000169e fetch  0x00000001 , 0x0000015f 
+ 00010245  0x0000169f iforce  0x00000013 
+ 00010246  0x000016a0 inject  0x00000003 , 0x00000005 
+ 00010247  0x000016a1 branch  0x0000280d 
+ 00010248  0x000016a3 fetch  0x00000001 , 0x00000180 
+ 00010249  0x000016a4 inject  0x00000003 , 0x00000003 
+ 00010250  0x000016a5 fetch  0x00000002 , 0x0000015f 
+ 00010251  0x000016a6 iforce  0x00000013 
+ 00010252  0x000016a7 inject  0x00000003 , 0x0000000d 
+ 00010253  0x000016a9 arg  0x00000551 , 0x00000006 
+ 00010254  0x000016ab copy  0x00000013 , 0x0000003e 
+ 00010255  0x000016ac branch  0x00002814 , 0x00000005 
+ 00010256  0x000016ad ifetch  0x00000001 , 0x00000006 
+ 00010257  0x000016ae inject  0x00000003 , 0x00000008 
+ 00010258  0x000016af increase  0xffffffff , 0x00000013 
+ 00010259  0x000016b0 branch  0x0000280e 
+ 00010260  0x000016b2 fetch  0x00000002 , 0x000000fc 
+ 00010261  0x000016b3 increase  0x00000001 , 0x0000003f 
+ 00010262  0x000016b4 store  0x00000002 , 0x000000fc 
+ 00010263  0x000016b5 branch  0x000027f7 
+ 00010264  0x000016b9 fetch  0x00000004 , 0x00000165 
+ 00010265  0x000016ba add  0x0000003f , 0x00000007 , 0x00000011 
+ 00010266  0x000016bb fetch  0x00000002 , 0x00000171 
+ 00010267  0x000016bc nbranch  0x0000281e , 0x00000034 
+ 00010268  0x000016bd increase  0xfffffffd , 0x00000011 
+ 00010269  0x000016be branch  0x00002826 
+ 00010270  0x000016c0 mul32  0x0000003f , 0x0000000c , 0x0000003f 
+ 00010271  0x000016c1 hfetcht  0x00000002 , 0x00008040 
+ 00010272  0x000016c2 increase  0x00000001 , 0x00000002 
+ 00010273  0x000016c4 isub  0x00000002 , 0x0000003f 
+ 00010274  0x000016c5 nbranch  0x00002825 , 0x00000002 
+ 00010275  0x000016c6 increase  0xffffffff , 0x00000011 
+ 00010276  0x000016c7 branch  0x00002821 
+ 00010277  0x000016c9 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010278  0x000016cb until  0x0000003e , 0x00000023 
+ 00010279  0x000016cc compare  0x00000000 , 0x00000022 , 0x00000003 
+ 00010280  0x000016cd nbranch  0x00002826 , 0x00000001 
+ 00010281  0x000016ce iforce  0x00000029 
+ 00010282  0x000016cf copy  0x00000011 , 0x00000028 
+ 00010283  0x000016d0 iforce  0x00000029 
+ 00010284  0x000016d1 rtn 
+ 00010285  0x000016d5 bpatch  0x0000007b , 0x0000400f 
+ 00010286  0x000016d6 until  0x0000003e , 0x00000022 
+ 00010287  0x000016d7 deposit  0x0000001a 
+ 00010288  0x000016d8 iforce  0x00000006 
+ 00010289  0x000016d9 rshift16 , 0x0000003f , 0x0000003f 
+ 00010290  0x000016da isub  0x00000022 , 0x00000039 
+ 00010291  0x000016db and_into  0x00000003 , 0x00000039 
+ 00010292  0x000016dc nbranch  0x00002837 , 0x00000005 
+ 00010293  0x000016dd force  0x00000000 , 0x0000003f 
+ 00010294  0x000016de branch  0x0000283b 
+ 00010295  0x000016e0 arg  0x00000ea6 , 0x00000002 
+ 00010296  0x000016e1 force  0x00000000 , 0x0000003f 
+ 00010297  0x000016e3 iadd  0x00000002 , 0x0000003f 
+ 00010298  0x000016e4 loop  0x00002839 
+ 00010299  0x000016e6 iadd  0x00000006 , 0x0000003f 
+ 00010300  0x000016e7 div  0x0000003f , 0x0000000c 
+ 00010301  0x000016e8 call  0x00007f86 
+ 00010302  0x000016e9 quotient  0x0000003f 
+ 00010303  0x000016ea store  0x00000002 , 0x00000171 
+ 00010304  0x000016eb rtn 
+ 00010305  0x000016ee bpatch  0x0000007c , 0x0000400f 
+ 00010306  0x000016ef deposit  0x0000001a 
+ 00010307  0x000016f0 copy  0x00000019 , 0x00000002 
+ 00010308  0x000016f1 isub  0x00000002 , 0x0000003e 
+ 00010309  0x000016f2 nsetflag  0x00000002 , 0x0000002c , 0x0000003f 
+ 00010310  0x000016f3 isub  0x00000002 , 0x00000002 
+ 00010311  0x000016f4 setarg  0x00000ea6 
+ 00010312  0x000016f5 isolate0  0x0000000f , 0x00000002 
+ 00010313  0x000016f6 branch  0x0000284c , 0x00000001 
+ 00010314  0x000016f7 setarg  0xffff0ea6 
+ 00010315  0x000016f8 iadd  0x00000002 , 0x00000002 
+ 00010316  0x000016fa storet  0x00000006 , 0x00000447 
+ 00010317  0x000016fb rtn  0x00000036 
+ 00010318  0x000016fc storet  0x00000006 , 0x00000038 
+ 00010319  0x000016fd rtn 
+ 00010320  0x00001700 disable  0x00000030 
+ 00010321  0x00001701 fetch  0x00000006 , 0x00000447 
+ 00010322  0x00001702 branch  0x00002854 , 0x00000036 
+ 00010323  0x00001703 fetch  0x00000006 , 0x00000038 
+ 00010324  0x00001705 iadd  0x00000019 , 0x00000030 
+ 00010325  0x00001706 increase  0x0000000a , 0x00000030 
+ 00010326  0x00001707 setarg  0x00000ea6 
+ 00010327  0x00001708 isub  0x00000030 , 0x0000003f 
+ 00010328  0x00001709 isolate0  0x0000000f , 0x0000003f 
+ 00010329  0x0000170a branch  0x0000285e , 0x00000001 
+ 00010330  0x0000170b setarg  0x0000f15a 
+ 00010331  0x0000170c iadd  0x00000030 , 0x00000030 
+ 00010332  0x0000170e copy  0x00000030 , 0x0000001a 
+ 00010333  0x0000170f rtn 
+ 00010334  0x00001711 force  0x00000000 , 0x0000003e 
+ 00010335  0x00001712 branch  0x0000285c 
+ 00010336  0x0000171a bpatch  0x0000007d , 0x0000400f 
+ 00010337  0x0000171b call  0x00002918 
+ 00010338  0x0000171c copy  0x00000021 , 0x0000003f 
+ 00010339  0x0000171d and_into  0x00000180 , 0x0000003f 
+ 00010340  0x0000171e compare  0x00000003 , 0x00000024 , 0x00000007 
+ 00010341  0x0000171f nbranch  0x00002869 , 0x00000001 
+ 00010342  0x00001720 rshift3  0x0000003f , 0x0000003f 
+ 00010343  0x00001721 iadd  0x00000017 , 0x0000003f 
+ 00010344  0x00001722 branch  0x0000286a 
+ 00010345  0x00001724 copy  0x00000017 , 0x0000003f 
+ 00010346  0x00001726 div  0x0000003f , 0x0000004f 
+ 00010347  0x00001727 pulse  0x00000015 
+ 00010348  0x00001728 call  0x00007f86 
+ 00010349  0x00001729 remainder  0x00000011 
+ 00010350  0x0000172a add  0x00000011 , 0xffffffd8 , 0x00000002 
+ 00010351  0x0000172b branch  0x00002872 , 0x00000002 
+ 00010352  0x0000172c lshift  0x00000011 , 0x00000002 
+ 00010353  0x0000172d branch  0x00002874 
+ 00010354  0x0000172f lshift  0x00000002 , 0x00000002 
+ 00010355  0x00001730 increase  0x00000001 , 0x00000002 
+ 00010356  0x00001732 bpatch  0x0000007e , 0x0000400f 
+ 00010357  0x00001733 fetch  0x00000001 , 0x00000031 
+ 00010358  0x00001734 bbit0  0x00000003 , 0x00002885 
+ 00010359  0x00001736 fetch  0x00000004 , 0x000040d2 
+ 00010360  0x00001737 isub  0x00000021 , 0x0000003e 
+ 00010361  0x00001738 branch  0x00002885 , 0x00000002 
+ 00010362  0x00001739 call  0x000028a4 
+ 00010363  0x0000173a fetch  0x00000001 , 0x000040d9 
+ 00010364  0x0000173b rtn  0x00000034 
+ 00010365  0x0000173c fetch  0x00000001 , 0x00000031 
+ 00010366  0x0000173d set1  0x00000002 , 0x0000003f 
+ 00010367  0x0000173e store  0x00000001 , 0x00000031 
+ 00010368  0x0000173f fetch  0x00000005 , 0x000040e7 
+ 00010369  0x00001740 store  0x00000005 , 0x000040da 
+ 00010370  0x00001741 ifetch  0x00000005 , 0x00000006 
+ 00010371  0x00001742 store  0x00000005 , 0x000040df 
+ 00010372  0x00001743 call  0x000028a9 
+ 00010373  0x00001745 fetch  0x00000001 , 0x00000031 
+ 00010374  0x00001746 rtnbit0  0x00000002 
+ 00010375  0x00001747 isolate1  0x00000001 , 0x00000021 
+ 00010376  0x00001748 branch  0x000028a1 , 0x00000001 
+ 00010377  0x00001749 rshift3  0x00000002 , 0x00000011 
+ 00010378  0x0000174a and  0x00000002 , 0x00000007 , 0x00000007 
+ 00010379  0x0000174b setarg  0x000040da 
+ 00010380  0x0000174c iadd  0x00000011 , 0x00000011 
+ 00010381  0x0000174d ifetch  0x00000001 , 0x00000011 
+ 00010382  0x0000174e qisolate0  0x0000003f 
+ 00010383  0x0000174f branch  0x00002892 , 0x00000001 
+ 00010384  0x00001750 deposit  0x00000002 
+ 00010385  0x00001751 branch  0x0000289e 
+ 00010386  0x00001753 fetch  0x00000001 , 0x000040e4 
+ 00010387  0x00001754 iforce  0x00000012 
+ 00010388  0x00001755 deposit  0x00000021 
+ 00010389  0x00001756 and_into  0x00000180 , 0x0000003f 
+ 00010390  0x00001757 rshift3  0x0000003f , 0x0000003f 
+ 00010391  0x00001758 iadd  0x00000017 , 0x0000003f 
+ 00010392  0x00001759 idiv  0x00000012 
+ 00010393  0x0000175a setarg  0x000040f2 
+ 00010394  0x0000175b call  0x00007f86 
+ 00010395  0x0000175c remainder  0x00000011 
+ 00010396  0x0000175d iadd  0x00000011 , 0x00000006 
+ 00010397  0x0000175e ifetch  0x00000001 , 0x00000006 
+ 00010398  0x00001760 store  0x00000001 , 0x000040e5 
+ 00010399  0x00001761 iforce  0x00000002 
+ 00010400  0x00001762 rtn 
+ 00010401  0x00001765 fetch  0x00000001 , 0x000040e5 
+ 00010402  0x00001766 iforce  0x00000002 
+ 00010403  0x00001767 rtn 
+ 00010404  0x0000176a fetch  0x00000001 , 0x00000031 
+ 00010405  0x0000176b set0  0x00000002 , 0x0000003f 
+ 00010406  0x0000176c set0  0x00000003 , 0x0000003f 
+ 00010407  0x0000176d store  0x00000001 , 0x00000031 
+ 00010408  0x0000176e rtn 
+ 00010409  0x00001775 bpatch  0x0000007f , 0x0000400f 
+ 00010410  0x00001776 arg  0x000040f2 , 0x00000005 
+ 00010411  0x00001777 force  0x0000000a , 0x00000039 
+ 00010412  0x00001778 call  0x00007ec6 
+ 00010413  0x00001779 arg  0x000040f2 , 0x00000005 
+ 00010414  0x0000177a force  0x00000000 , 0x00000013 
+ 00010415  0x0000177b force  0x00000002 , 0x00000007 
+ 00010416  0x0000177d fetch  0x00000005 , 0x000040da 
+ 00010417  0x0000177e iforce  0x00000002 
+ 00010418  0x0000177f compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010419  0x00001780 branch  0x000028b5 , 0x00000001 
+ 00010420  0x00001781 rshift  0x00000002 , 0x00000002 
+ 00010421  0x00001783 isolate0  0x00000000 , 0x00000002 
+ 00010422  0x00001784 branch  0x000028b9 , 0x00000001 
+ 00010423  0x00001785 deposit  0x00000013 
+ 00010424  0x00001786 istore  0x00000001 , 0x00000005 
+ 00010425  0x00001788 rshift2  0x00000002 , 0x00000002 
+ 00010426  0x00001789 increase  0x00000002 , 0x00000013 
+ 00010427  0x0000178a compare  0x00000028 , 0x00000013 , 0x000000fe 
+ 00010428  0x0000178b nbranch  0x000028c2 , 0x00000001 
+ 00010429  0x0000178c fetch  0x00000005 , 0x000040df 
+ 00010430  0x0000178d iforce  0x00000002 
+ 00010431  0x0000178e compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010432  0x0000178f branch  0x000028c2 , 0x00000001 
+ 00010433  0x00001790 rshift  0x00000002 , 0x00000002 
+ 00010434  0x00001792 sub  0x00000013 , 0x0000004e , 0x0000003e 
+ 00010435  0x00001793 branch  0x000028b5 , 0x00000002 
+ 00010436  0x00001794 force  0x00000001 , 0x00000013 
+ 00010437  0x00001795 increase  0xffffffff , 0x00000007 
+ 00010438  0x00001796 nbranch  0x000028b0 , 0x00000005 
+ 00010439  0x00001797 arg  0x000040f2 , 0x00000011 
+ 00010440  0x00001798 deposit  0x00000005 
+ 00010441  0x00001799 isub  0x00000011 , 0x0000003f 
+ 00010442  0x0000179a store  0x00000001 , 0x000040e4 
+ 00010443  0x0000179b rtn 
+ 00010444  0x0000179e bpatch  0x00000080 , 0x00004010 
+ 00010445  0x0000179f call  0x00002860 
+ 00010446  0x000017a0 fetch  0x00000001 , 0x0000017f 
+ 00010447  0x000017a1 bbit0  0x00000005 , 0x000028d1 
+ 00010448  0x000017a2 fetcht  0x00000001 , 0x000004cc 
+ 00010449  0x000017a4 branch  0x0000291f 
+ 00010450  0x000017a8 bpatch  0x00000081 , 0x00004010 
+ 00010451  0x000017a9 call  0x00002860 
+ 00010452  0x000017aa fetch  0x00000001 , 0x0000017f 
+ 00010453  0x000017ab bbit0  0x00000004 , 0x000028d7 
+ 00010454  0x000017ac fetcht  0x00000001 , 0x000004cb 
+ 00010455  0x000017ae branch  0x00002933 
+ 00010456  0x000017b2 force  0x00000000 , 0x0000002d 
+ 00010457  0x000017b3 fetch  0x00000003 , 0x000040a7 
+ 00010458  0x000017b4 iforce  0x0000002c 
+ 00010459  0x000017b5 rtn 
+ 00010460  0x000017b8 bpatch  0x00000082 , 0x00004010 
+ 00010461  0x000017b9 fetch  0x00000001 , 0x000041d3 
+ 00010462  0x000017ba icopy  0x0000002d 
+ 00010463  0x000017bb fetch  0x00000003 , 0x000041d0 
+ 00010464  0x000017bc icopy  0x0000002c 
+ 00010465  0x000017bd rtn 
+ 00010466  0x000017c0 bpatch  0x00000083 , 0x00004010 
+ 00010467  0x000017c1 fetch  0x00000002 , 0x000040a4 
+ 00010468  0x000017c2 icopy  0x0000002e 
+ 00010469  0x000017c3 fetch  0x00000001 , 0x000040a3 
+ 00010470  0x000017c4 icopy  0x0000002d 
+ 00010471  0x000017c5 fetch  0x00000003 , 0x000040a0 
+ 00010472  0x000017c6 icopy  0x0000002c 
+ 00010473  0x000017c7 rtn 
+ 00010474  0x000017ca bpatch  0x00000084 , 0x00004010 
+ 00010475  0x000017cb fetch  0x00000002 , 0x00000044 
+ 00010476  0x000017cc icopy  0x0000002e 
+ 00010477  0x000017cd fetch  0x00000001 , 0x00000043 
+ 00010478  0x000017ce icopy  0x0000002d 
+ 00010479  0x000017cf fetch  0x00000003 , 0x00000040 
+ 00010480  0x000017d0 icopy  0x0000002c 
+ 00010481  0x000017d1 rtn 
+ 00010482  0x000017d5 bmark1  0x00000020 , 0x000028f5 
+ 00010483  0x000017d6 rtnmark0  0x0000001d 
+ 00010484  0x000017d7 rtnmark0  0x0000001f 
+ 00010485  0x000017d9 and_into  0xffffff00 , 0x0000002c 
+ 00010486  0x000017da pulse  0x00000015 
+ 00010487  0x000017db nop  0x00000020 
+ 00010488  0x000017dc rtn 
+ 00010489  0x000017e0 bpatch  0x00000085 , 0x00004010 
+ 00010490  0x000017e1 branch  0x0000290a , 0x00000021 
+ 00010491  0x000017e2 jam  0x000000d4 , 0x00008955 
+ 00010492  0x000017e3 nop  0x00000004 
+ 00010493  0x000017e4 jam  0x000000d2 , 0x00008955 
+ 00010494  0x000017e5 nop  0x00000004 
+ 00010495  0x000017e6 jam  0x000000d1 , 0x00008955 
+ 00010496  0x000017e7 nop  0x00000004 
+ 00010497  0x000017e8 fetch  0x00000001 , 0x000041de 
+ 00010498  0x000017e9 beq  0x00000000 , 0x00002908 
+ 00010499  0x000017ea beq  0x00000001 , 0x00002915 
+ 00010500  0x000017eb beq  0x00000002 , 0x00002908 
+ 00010501  0x000017ec beq  0x00000003 , 0x00002915 
+ 00010502  0x000017ed beq  0x00000004 , 0x00002915 
+ 00010503  0x000017ee beq  0x00000020 , 0x00002915 
+ 00010504  0x000017f1 jam  0x000000d0 , 0x00008955 
+ 00010505  0x000017f2 jam  0x000000e0 , 0x00008956 
+ 00010506  0x000017f4 force  0x00000000 , 0x00000015 
+ 00010507  0x000017f5 disable  0x00000021 
+ 00010508  0x000017f6 disable  0x00000020 
+ 00010509  0x000017f7 pulse  0x0000001e 
+ 00010510  0x000017f8 jam  0x00000000 , 0x00008902 
+ 00010511  0x000017f9 jam  0x00000000 , 0x00008901 
+ 00010512  0x000017fa jam  0x00000000 , 0x00008900 
+ 00010513  0x000017fb jam  0x00000000 , 0x00008903 
+ 00010514  0x000017fc jam  0x00000070 , 0x00008904 
+ 00010515  0x000017fd jam  0x00000000 , 0x00008906 
+ 00010516  0x000017fe rtn 
+ 00010517  0x00001804 jam  0x000000d0 , 0x00008955 
+ 00010518  0x00001805 jam  0x000000c0 , 0x00008956 
+ 00010519  0x00001806 branch  0x0000290a 
+ 00010520  0x00001809 bpatch  0x00000086 , 0x00004010 
+ 00010521  0x0000180a jam  0x00000000 , 0x00008902 
+ 00010522  0x0000180b jam  0x00000000 , 0x00008901 
+ 00010523  0x0000180c jam  0x00000018 , 0x00008900 
+ 00010524  0x0000180d jam  0x000000a7 , 0x00008903 
+ 00010525  0x0000180e jam  0x0000007f , 0x00008904 
+ 00010526  0x0000180f rtn 
+ 00010527  0x00001812 bpatch  0x00000087 , 0x00004010 
+ 00010528  0x00001814 storet  0x00000001 , 0x00000017 
+ 00010529  0x00001815 add  0x00000002 , 0x00000004 , 0x00000011 
+ 00010530  0x00001816 jam  0x00000007 , 0x0000896d 
+ 00010531  0x00001817 branch  0x00002981 
+ 00010532  0x00001819 bpatch  0x00000088 , 0x00004011 
+ 00010533  0x0000181a jam  0x000000cf , 0x00008901 
+ 00010534  0x0000181b nop  0x0000000a 
+ 00010535  0x0000181c jam  0x000000ff , 0x00008900 
+ 00010536  0x0000181d jam  0x000000af , 0x00008903 
+ 00010537  0x0000181e jam  0x000000ff , 0x00008904 
+ 00010538  0x0000181f nop  0x0000000a 
+ 00010539  0x00001820 jam  0x000000a0 , 0x00008902 
+ 00010540  0x00001821 rtn 
+ 00010541  0x00001824 fetch  0x00000001 , 0x000041e0 
+ 00010542  0x00001825 branch  0x00002931 , 0x00000034 
+ 00010543  0x00001827 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00010544  0x00001828 rtn 
+ 00010545  0x0000182a add  0x00000002 , 0x00000000 , 0x00000011 
+ 00010546  0x0000182b rtn 
+ 00010547  0x0000182e bpatch  0x00000089 , 0x00004011 
+ 00010548  0x0000182f storet  0x00000001 , 0x00000017 
+ 00010549  0x00001830 call  0x0000292d 
+ 00010550  0x00001831 call  0x00002981 
+ 00010551  0x00001832 setarg  0x00000500 
+ 00010552  0x00001833 call  0x00002a8f 
+ 00010553  0x00001835 jam  0x00000001 , 0x00008906 
+ 00010554  0x00001836 jam  0x0000003c , 0x00008900 
+ 00010555  0x00001837 jam  0x000000e0 , 0x00008901 
+ 00010556  0x00001838 jam  0x00000012 , 0x0000896d 
+ 00010557  0x00001839 nop  0x0000000a 
+ 00010558  0x0000183a jam  0x00000001 , 0x00008902 
+ 00010559  0x0000183b jam  0x0000003d , 0x00008902 
+ 00010560  0x0000183c nop  0x0000000a 
+ 00010561  0x0000183d jam  0x000000b7 , 0x00008903 
+ 00010562  0x0000183e nop  0x0000000a 
+ 00010563  0x0000183f jam  0x0000007f , 0x00008902 
+ 00010564  0x00001841 fetch  0x00000001 , 0x000041de 
+ 00010565  0x00001842 beq  0x00000000 , 0x0000294b 
+ 00010566  0x00001843 beq  0x00000001 , 0x0000294f 
+ 00010567  0x00001844 beq  0x00000002 , 0x00002953 
+ 00010568  0x00001845 beq  0x00000003 , 0x00002957 
+ 00010569  0x00001846 beq  0x00000004 , 0x0000295b 
+ 00010570  0x00001847 beq  0x00000020 , 0x0000295f 
+ 00010571  0x00001849 jam  0x000000f0 , 0x00008956 
+ 00010572  0x0000184a call  0x00002965 
+ 00010573  0x0000184b jam  0x000000d8 , 0x00008955 
+ 00010574  0x0000184c rtn 
+ 00010575  0x0000184f jam  0x000000df , 0x00008956 
+ 00010576  0x00001850 call  0x00002965 
+ 00010577  0x00001851 jam  0x000000df , 0x00008955 
+ 00010578  0x00001852 rtn 
+ 00010579  0x00001855 jam  0x000000ff , 0x00008956 
+ 00010580  0x00001856 call  0x00002965 
+ 00010581  0x00001857 jam  0x000000df , 0x00008955 
+ 00010582  0x00001858 rtn 
+ 00010583  0x0000185a jam  0x000000ce , 0x00008956 
+ 00010584  0x0000185b call  0x00002965 
+ 00010585  0x0000185c jam  0x000000d8 , 0x00008955 
+ 00010586  0x0000185d rtn 
+ 00010587  0x00001860 jam  0x000000cb , 0x00008956 
+ 00010588  0x00001861 call  0x00002965 
+ 00010589  0x00001862 jam  0x000000d8 , 0x00008955 
+ 00010590  0x00001863 rtn 
+ 00010591  0x00001866 jam  0x000000d0 , 0x00008955 
+ 00010592  0x00001867 jam  0x000000c0 , 0x00008956 
+ 00010593  0x00001868 jam  0x0000004c , 0x00008957 
+ 00010594  0x00001869 jam  0x0000006c , 0x00008958 
+ 00010595  0x0000186a jam  0x00000050 , 0x00008959 
+ 00010596  0x0000186b rtn 
+ 00010597  0x0000186e nop  0x00000004 
+ 00010598  0x0000186f jam  0x000000d1 , 0x00008955 
+ 00010599  0x00001870 nop  0x00000004 
+ 00010600  0x00001871 jam  0x000000d2 , 0x00008955 
+ 00010601  0x00001872 nop  0x00000004 
+ 00010602  0x00001873 jam  0x000000d4 , 0x00008955 
+ 00010603  0x00001874 rtn 
+ 00010604  0x00001878 jam  0x00000006 , 0x00008042 
+ 00010605  0x0000187a fetch  0x00000002 , 0x000040c3 
+ 00010606  0x0000187b bbit0  0x0000000e , 0x0000296d 
+ 00010607  0x0000187c iforce  0x00000006 
+ 00010608  0x0000187d arg  0x00008900 , 0x00000002 
+ 00010609  0x0000187f ifetch  0x00000001 , 0x00000006 
+ 00010610  0x00001880 beq  0x000000ff , 0x00002977 
+ 00010611  0x00001881 ior  0x00000002 , 0x00000005 
+ 00010612  0x00001882 ifetch  0x00000001 , 0x00000006 
+ 00010613  0x00001883 istore  0x00000001 , 0x00000005 
+ 00010614  0x00001884 branch  0x00002971 
+ 00010615  0x00001886 bpatch  0x0000008a , 0x00004011 
+ 00010616  0x00001887 call  0x00002be5 
+ 00010617  0x00001888 call  0x000029c9 
+ 00010618  0x0000188a setarg  0x000007d0 
+ 00010619  0x0000188b iadd  0x00000022 , 0x0000003f 
+ 00010620  0x0000188c store  0x00000004 , 0x00000169 
+ 00010621  0x0000188d set1  0x00000003 , 0x00000015 
+ 00010622  0x0000188e force  0x00000000 , 0x00000015 
+ 00010623  0x0000188f ncall  0x00002998 , 0x0000002b 
+ 00010624  0x00001890 branch  0x000029ab 
+ 00010625  0x00001894 bpatch  0x0000008b , 0x00004011 
+ 00010626  0x00001895 setarg  0x00000960 
+ 00010627  0x00001896 iadd  0x00000011 , 0x00000002 
+ 00010628  0x00001897 fetch  0x00000001 , 0x000040bd 
+ 00010629  0x00001898 jam  0x00000004 , 0x0000895f 
+ 00010630  0x00001899 imul32  0x00000002 , 0x0000003f 
+ 00010631  0x0000189a fetcht  0x00000001 , 0x000040be 
+ 00010632  0x0000189b idiv  0x00000002 
+ 00010633  0x0000189c call  0x00007f86 
+ 00010634  0x0000189d quotient  0x00000011 
+ 00010635  0x0000189e remainder  0x0000003f 
+ 00010636  0x0000189f lshift16  0x0000003f , 0x0000003f 
+ 00010637  0x000018a0 lshift4  0x0000003f , 0x0000003f 
+ 00010638  0x000018a1 idiv  0x00000002 
+ 00010639  0x000018a2 call  0x00007f86 
+ 00010640  0x000018a3 quotient  0x0000003f 
+ 00010641  0x000018a4 lshift8  0x0000003f , 0x0000003f 
+ 00010642  0x000018a5 lshift  0x0000003f , 0x0000003f 
+ 00010643  0x000018a6 ior  0x00000011 , 0x0000003f 
+ 00010644  0x000018a7 hstore  0x00000004 , 0x00008960 
+ 00010645  0x000018a8 jam  0x00000044 , 0x0000895f 
+ 00010646  0x000018a9 jam  0x000000c4 , 0x0000895f 
+ 00010647  0x000018aa rtn 
+ 00010648  0x000018ae bpatch  0x0000008c , 0x00004011 
+ 00010649  0x000018af jam  0x00000002 , 0x00008906 
+ 00010650  0x000018b0 setarg  0x0003d090 
+ 00010651  0x000018b1 call  0x00002a8f 
+ 00010652  0x000018b2 jam  0x0000007f , 0x00008900 
+ 00010653  0x000018b3 nop  0x00000082 
+ 00010654  0x000018b4 jam  0x00000030 , 0x00008952 
+ 00010655  0x000018b5 jam  0x000000d0 , 0x00008901 
+ 00010656  0x000018b6 jam  0x00000070 , 0x00008952 
+ 00010657  0x000018b7 jam  0x000000f0 , 0x00008952 
+ 00010658  0x000018b8 force  0x00000032 , 0x00000039 
+ 00010659  0x000018ba hfetch  0x00000001 , 0x00008980 
+ 00010660  0x000018bb bbit1  0x00000005 , 0x000029a6 
+ 00010661  0x000018bc loop  0x000029a3 
+ 00010662  0x000018be store  0x00000001 , 0x000040ce 
+ 00010663  0x000018bf jam  0x00000000 , 0x00008901 
+ 00010664  0x000018c0 jam  0x00000000 , 0x00008900 
+ 00010665  0x000018c1 jam  0x00000000 , 0x00008906 
+ 00010666  0x000018c2 rtn 
+ 00010667  0x000018c5 bpatch  0x0000008d , 0x00004011 
+ 00010668  0x000018c6 fetch  0x00000001 , 0x000040ce 
+ 00010669  0x000018c7 set1  0x00000005 , 0x0000003f 
+ 00010670  0x000018c8 hstore  0x00000001 , 0x00008952 
+ 00010671  0x000018c9 hfetcht  0x00000001 , 0x00008950 
+ 00010672  0x000018ca and_into  0x00000007 , 0x00000002 
+ 00010673  0x000018cb lshift3  0x0000003f , 0x0000003f 
+ 00010674  0x000018cc ior  0x00000002 , 0x0000003f 
+ 00010675  0x000018cd hstore  0x00000001 , 0x00008950 
+ 00010676  0x000018ce hfetch  0x00000001 , 0x00008951 
+ 00010677  0x000018cf set0  0x00000000 , 0x0000003f 
+ 00010678  0x000018d0 hstore  0x00000001 , 0x00008951 
+ 00010679  0x000018d1 hfetch  0x00000001 , 0x00008952 
+ 00010680  0x000018d2 set0  0x00000005 , 0x0000003f 
+ 00010681  0x000018d3 hstore  0x00000001 , 0x00008952 
+ 00010682  0x000018d4 rtn 
+ 00010683  0x000018d7 bpatch  0x0000008e , 0x00004011 
+ 00010684  0x000018d8 hfetch  0x00000002 , 0x00008981 
+ 00010685  0x000018d9 rshift4  0x0000003f , 0x0000003f 
+ 00010686  0x000018da rshift3  0x0000003f , 0x0000003f 
+ 00010687  0x000018db sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010688  0x000018dd and_into  0x000000ff , 0x0000003f 
+ 00010689  0x000018de div  0x0000003f , 0x0000000a 
+ 00010690  0x000018df call  0x00007f86 
+ 00010691  0x000018e0 quotient  0x0000003f 
+ 00010692  0x000018e1 lshift4  0x0000003f , 0x0000003f 
+ 00010693  0x000018e2 remainder  0x00000002 
+ 00010694  0x000018e3 ior  0x00000002 , 0x0000003f 
+ 00010695  0x000018e4 store  0x00000001 , 0x00000018 
+ 00010696  0x000018e5 rtn 
+ 00010697  0x000018e9 jam  0x00000006 , 0x00008042 
+ 00010698  0x000018ea hfetch  0x00000001 , 0x0000896b 
+ 00010699  0x000018eb set0  0x00000004 , 0x0000003f 
+ 00010700  0x000018ec set0  0x00000005 , 0x0000003f 
+ 00010701  0x000018ed hstore  0x00000001 , 0x0000896b 
+ 00010702  0x000018ee jam  0x00000000 , 0x00008905 
+ 00010703  0x000018ef jam  0x00000000 , 0x00008904 
+ 00010704  0x000018f0 jam  0x00000070 , 0x00008904 
+ 00010705  0x000018f1 jam  0x000000ff , 0x00008905 
+ 00010706  0x000018f2 hfetch  0x00000001 , 0x0000896b 
+ 00010707  0x000018f3 set1  0x00000004 , 0x0000003f 
+ 00010708  0x000018f4 set1  0x00000005 , 0x0000003f 
+ 00010709  0x000018f5 hstore  0x00000001 , 0x0000896b 
+ 00010710  0x000018f6 call  0x000029e9 
+ 00010711  0x000018f7 hfetch  0x00000001 , 0x00008968 
+ 00010712  0x000018f8 set1  0x00000007 , 0x0000003f 
+ 00010713  0x000018f9 hstore  0x00000001 , 0x00008968 
+ 00010714  0x000018fa set0  0x00000007 , 0x0000003f 
+ 00010715  0x000018fb hstore  0x00000001 , 0x00008968 
+ 00010716  0x000018fc set1  0x00000007 , 0x0000003f 
+ 00010717  0x000018fd hstore  0x00000001 , 0x00008968 
+ 00010718  0x000018fe jam  0x00000005 , 0x00008042 
+ 00010719  0x000018ff nop  0x00000001 
+ 00010720  0x00001900 jam  0x00000004 , 0x00008042 
+ 00010721  0x00001901 hfetch  0x00000001 , 0x0000896b 
+ 00010722  0x00001902 and_into  0x000000cf , 0x0000003f 
+ 00010723  0x00001903 hstore  0x00000001 , 0x0000896b 
+ 00010724  0x00001904 or_into  0x00000030 , 0x0000003f 
+ 00010725  0x00001905 hstore  0x00000001 , 0x0000896b 
+ 00010726  0x00001906 rtn 
+ 00010727  0x0000190a setarg  0x00000f0f 
+ 00010728  0x0000190b branch  0x00002c18 
+ 00010729  0x0000190e setarg  0x0000080f 
+ 00010730  0x0000190f branch  0x00002c18 
+ 00010731  0x00001914 bpatch  0x0000008f , 0x00004011 
+ 00010732  0x00001915 call  0x00002924 
+ 00010733  0x00001916 disable  0x00000020 
+ 00010734  0x00001917 enable  0x00000021 
+ 00010735  0x00001918 pulse  0x00000016 
+ 00010736  0x00001919 rtn 
+ 00010737  0x0000191c bpatch  0x00000090 , 0x00004012 
+ 00010738  0x0000191d fetch  0x00000001 , 0x0000004c 
+ 00010739  0x0000191e isolate1  0x00000002 , 0x0000003f 
+ 00010740  0x0000191f setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00010741  0x00001920 hstore  0x00000001 , 0x00008011 
+ 00010742  0x00001921 arg  0x00000062 , 0x00000006 
+ 00010743  0x00001922 ifetch  0x00000009 , 0x00000006 
+ 00010744  0x00001923 iforce  0x00000032 
+ 00010745  0x00001924 ifetch  0x00000007 , 0x00000006 
+ 00010746  0x00001925 iforce  0x00000033 
+ 00010747  0x00001926 fetch  0x00000001 , 0x00000054 
+ 00010748  0x00001927 add  0x0000003f , 0xffffffff , 0x00000034 
+ 00010749  0x00001928 pulse  0x0000001a 
+ 00010750  0x00001929 rtn 
+ 00010751  0x0000192c deposit  0x0000001a 
+ 00010752  0x0000192d store  0x00000006 , 0x0000009a 
+ 00010753  0x0000192e disable  0x0000000d 
+ 00010754  0x0000192f nbranch  0x000028f9 , 0x00000018 
+ 00010755  0x00001930 arg  0x000003bb , 0x00000029 
+ 00010756  0x00001931 increase  0x00000001 , 0x00000028 
+ 00010757  0x00001932 and_into  0x000001fc , 0x00000028 
+ 00010758  0x00001933 rtn 
+ 00010759  0x00001938 enable  0x0000000d 
+ 00010760  0x0000193a correlate  0x0000003e , 0x00000017 
+ 00010761  0x0000193b branch  0x000029ff , 0x00000018 
+ 00010762  0x0000193c compare  0x00000002 , 0x00000028 , 0x00000002 
+ 00010763  0x0000193d nbranch  0x00002a08 , 0x00000001 
+ 00010764  0x0000193e branch  0x000029ff 
+ 00010765  0x00001941 bpatch  0x00000091 , 0x00004012 
+ 00010766  0x00001942 arg  0x00000600 , 0x0000000b 
+ 00010767  0x00001943 enable  0x0000000d 
+ 00010768  0x00001944 correlate  0x00000023 , 0x00000026 
+ 00010769  0x00001945 disable  0x0000000d 
+ 00010770  0x00001946 nbranch  0x000028f9 , 0x00000018 
+ 00010771  0x00001947 rtn 
+ 00010772  0x0000194a bpatch  0x00000092 , 0x00004012 
+ 00010773  0x0000194b enable  0x0000000d 
+ 00010774  0x0000194c correlate  0x0000003e , 0x00000003 
+ 00010775  0x0000194d disable  0x0000000d 
+ 00010776  0x0000194e nbranch  0x000028f9 , 0x00000018 
+ 00010777  0x0000194f arg  0x000003bb , 0x00000029 
+ 00010778  0x00001950 and_into  0x000001fc , 0x00000028 
+ 00010779  0x00001951 rtn 
+ 00010780  0x00001955 bpatch  0x00000093 , 0x00004012 
+ 00010781  0x00001956 iforce  0x00000011 
+ 00010782  0x00001957 deposit  0x00000021 
+ 00010783  0x00001958 iadd  0x00000002 , 0x0000000b 
+ 00010784  0x00001959 copy  0x0000000b , 0x0000003f 
+ 00010785  0x0000195a store  0x00000004 , 0x000040ca 
+ 00010786  0x0000195b deposit  0x00000011 
+ 00010787  0x0000195c rtn 
+ 00010788  0x00001960 copy  0x0000003f , 0x00000002 
+ 00010789  0x00001961 bpatch  0x00000094 , 0x00004012 
+ 00010790  0x00001962 copy  0x00000002 , 0x0000003f 
+ 00010791  0x00001963 call  0x00007f50 
+ 00010792  0x00001964 lshift16  0x00000021 , 0x0000003f 
+ 00010793  0x00001965 set1  0x0000002c , 0x0000003f 
+ 00010794  0x00001966 call  0x00007f39 
+ 00010795  0x00001967 set0  0x0000002c , 0x0000003f 
+ 00010796  0x00001968 call  0x00002a77 
+ 00010797  0x00001969 call  0x00007f39 
+ 00010798  0x0000196a rtn  0x00000028 
+ 00010799  0x0000196b call  0x00007f43 
+ 00010800  0x0000196c iforce  0x0000001b 
+ 00010801  0x0000196d until  0x0000003e , 0x00000003 
+ 00010802  0x0000196e rtn 
+ 00010803  0x00001972 bpatch  0x00000095 , 0x00004012 
+ 00010804  0x00001973 branch  0x00002a38 , 0x00000030 
+ 00010805  0x00001974 until  0x00000029 , 0x00000026 
+ 00010806  0x00001976 copy  0x00000028 , 0x00000002 
+ 00010807  0x00001977 branch  0x00002a3b 
+ 00010808  0x00001979 branch  0x00002a3a , 0x0000002e 
+ 00010809  0x0000197a until  0x00000023 , 0x00000026 
+ 00010810  0x0000197c copy  0x00000022 , 0x00000002 
+ 00010811  0x0000197e branch  0x00002a47 , 0x00000028 
+ 00010812  0x0000197f compare  0x00000001 , 0x00000002 , 0x00000003 
+ 00010813  0x00001980 nbranch  0x00002a33 , 0x00000001 
+ 00010814  0x00001982 bpatch  0x00000096 , 0x00004012 
+ 00010815  0x00001983 fetch  0x00000001 , 0x00000030 
+ 00010816  0x00001984 rtnbit0  0x00000000 
+ 00010817  0x00001985 fetch  0x00000004 , 0x000040ca 
+ 00010818  0x00001986 isub  0x00000002 , 0x0000003f 
+ 00010819  0x00001987 nrtn  0x00000002 
+ 00010820  0x00001988 sub  0x0000003f , 0x000000ff , 0x0000003e 
+ 00010821  0x00001989 branch  0x00002a33 , 0x00000002 
+ 00010822  0x0000198a rtn 
+ 00010823  0x0000198c compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00010824  0x0000198d nbranch  0x00002a33 , 0x00000001 
+ 00010825  0x0000198e branch  0x00002a3e 
+ 00010826  0x00001991 bpatch  0x00000097 , 0x00004012 
+ 00010827  0x00001992 arg  0x00000600 , 0x0000000b 
+ 00010828  0x00001993 branch  0x00002a33 
+ 00010829  0x00001996 disable  0x00000028 
+ 00010830  0x00001997 branch  0x00002a4a 
+ 00010831  0x0000199a enable  0x00000028 
+ 00010832  0x0000199b branch  0x00002a4a 
+ 00010833  0x0000199e bpatch  0x00000098 , 0x00004013 
+ 00010834  0x0000199f call  0x000029f1 
+ 00010835  0x000019a0 disable  0x00000021 
+ 00010836  0x000019a1 enable  0x00000020 
+ 00010837  0x000019a2 rtn 
+ 00010838  0x000019a7 bpatch  0x00000099 , 0x00004013 
+ 00010839  0x000019a8 arg  0x00000e43 , 0x0000000b 
+ 00010840  0x000019a9 until  0x00000023 , 0x00000026 
+ 00010841  0x000019aa pulse  0x00000016 
+ 00010842  0x000019ab rtn 
+ 00010843  0x000019ae bpatch  0x0000009a , 0x00004013 
+ 00010844  0x000019af arg  0x00000d00 , 0x0000000b 
+ 00010845  0x000019b0 until  0x00000023 , 0x00000026 
+ 00010846  0x000019b1 rtn 
+ 00010847  0x000019b5 bpatch  0x0000009b , 0x00004013 
+ 00010848  0x000019b6 arg  0x00000e43 , 0x0000000b 
+ 00010849  0x000019b7 until  0x00000029 , 0x00000026 
+ 00010850  0x000019b8 pulse  0x00000016 
+ 00010851  0x000019b9 rtn 
+ 00010852  0x000019bc bpatch  0x0000009c , 0x00004013 
+ 00010853  0x000019bd preload  0x00000009 
+ 00010854  0x000019be enable  0x0000001d 
+ 00010855  0x000019bf set1  0x00000000 , 0x00000015 
+ 00010856  0x000019c0 inject  0x00000003 , 0x00000048 
+ 00010857  0x000019c1 disable  0x0000001d 
+ 00010858  0x000019c2 rtn 
+ 00010859  0x000019c6 copy  0x00000025 , 0x00000002 
+ 00010860  0x000019c7 or_into  0x00000060 , 0x00000002 
+ 00010861  0x000019c8 copy  0x00000002 , 0x0000000e 
+ 00010862  0x000019c9 rtn 
+ 00010863  0x000019cf bpatch  0x0000009d , 0x00004013 
+ 00010864  0x000019d0 fetch  0x00000001 , 0x00004090 
+ 00010865  0x000019d1 increase  0x00000001 , 0x0000003f 
+ 00010866  0x000019d2 bne  0x00000007 , 0x00002a74 
+ 00010867  0x000019d3 force  0x00000001 , 0x0000003f 
+ 00010868  0x000019d5 store  0x00000001 , 0x00004090 
+ 00010869  0x000019d6 iforce  0x00000004 
+ 00010870  0x000019d7 rtn 
+ 00010871  0x000019da copy  0x00000019 , 0x00000002 
+ 00010872  0x000019db rtn  0x00000029 
+ 00010873  0x000019dc copy  0x0000001a , 0x00000002 
+ 00010874  0x000019dd rtn 
+ 00010875  0x000019e0 deposit  0x00000022 
+ 00010876  0x000019e1 rtn  0x00000029 
+ 00010877  0x000019e2 deposit  0x00000028 
+ 00010878  0x000019e3 rtn 
+ 00010879  0x000019e7 bpatch  0x0000009e , 0x00004013 
+ 00010880  0x000019e8 fetcht  0x00000004 , 0x0000004d 
+ 00010881  0x000019e9 call  0x00002a7b 
+ 00010882  0x000019ea isub  0x00000002 , 0x0000000b 
+ 00010883  0x000019eb deposit  0x0000000b 
+ 00010884  0x000019ec fetcht  0x00000002 , 0x00000051 
+ 00010885  0x000019ed lshift  0x00000002 , 0x00000002 
+ 00010886  0x000019ee isub  0x00000002 , 0x0000003f 
+ 00010887  0x000019ef rtn 
+ 00010888  0x000019f2 bpatch  0x0000009f , 0x00004013 
+ 00010889  0x000019f3 call  0x00002a7b 
+ 00010890  0x000019f4 store  0x00000004 , 0x0000004d 
+ 00010891  0x000019f5 rtn 
+ 00010892  0x000019f8 bpatch  0x000000a0 , 0x00004014 
+ 00010893  0x000019f9 branch  0x00002a8c 
+ 00010894  0x000019fc branch  0x00002a8e 
+ 00010895  0x000019ff rtn  0x00000034 
+ 00010896  0x00001a01 rshift  0x0000003f , 0x0000003f 
+ 00010897  0x00001a02 increase  0xfffffffd , 0x0000003f 
+ 00010898  0x00001a04 increase  0xffffffff , 0x0000003f 
+ 00010899  0x00001a05 nbranch  0x00002a92 , 0x00000005 
+ 00010900  0x00001a06 force  0x00000000 , 0x0000003f 
+ 00010901  0x00001a07 rtn 
+ 00010902  0x00001a0d arg  0x00000010 , 0x00000039 
+ 00010903  0x00001a0e arg  0x00000000 , 0x00000005 
+ 00010904  0x00001a0f call  0x00007ec6 
+ 00010905  0x00001a10 arg  0x0000043f , 0x00000005 
+ 00010906  0x00001a11 arg  0x0000000a , 0x00000039 
+ 00010907  0x00001a12 call  0x00007ec6 
+ 00010908  0x00001a13 jam  0x00000000 , 0x000009b2 
+ 00010909  0x00001a14 jam  0x00000000 , 0x00000a99 
+ 00010910  0x00001a15 jam  0x00000000 , 0x0000048c 
+ 00010911  0x00001a16 jam  0x00000000 , 0x0000017f 
+ 00010912  0x00001a17 jam  0x00000000 , 0x000004d1 
+ 00010913  0x00001a18 bpatch  0x000000a1 , 0x00004014 
+ 00010914  0x00001a19 jam  0x00000000 , 0x0000016d 
+ 00010915  0x00001a1a jam  0x00000000 , 0x00000151 
+ 00010916  0x00001a1b jam  0x00000000 , 0x0000015c 
+ 00010917  0x00001a1c setarg  0x009e8b33 
+ 00010918  0x00001a1d store  0x00000003 , 0x000040a7 
+ 00010919  0x00001a1e setarg  0x00000153 
+ 00010920  0x00001a1f store  0x00000002 , 0x00000083 
+ 00010921  0x00001a20 jam  0x0000001e , 0x00000085 
+ 00010922  0x00001a21 jam  0x00000001 , 0x00000086 
+ 00010923  0x00001a22 jam  0x00000007 , 0x00000088 
+ 00010924  0x00001a23 setarg  0x0012e904 
+ 00010925  0x00001a24 store  0x00000003 , 0x00000080 
+ 00010926  0x00001a29 jam  0x00000060 , 0x00000090 
+ 00010927  0x00001a2a jam  0x00000005 , 0x000040d0 
+ 00010928  0x00001a2b jam  0x00000002 , 0x00000014 
+ 00010929  0x00001a2c fetch  0x00000001 , 0x0000465a 
+ 00010930  0x00001a2d ncall  0x000074c1 , 0x00000034 
+ 00010931  0x00001a2e fetch  0x00000001 , 0x000044be 
+ 00010932  0x00001a2f ncall  0x00007518 , 0x00000034 
+ 00010933  0x00001a30 bpatch  0x000000a2 , 0x00004014 
+ 00010934  0x00001a31 rtn  0x0000002b 
+ 00010935  0x00001a32 setarg  0x00000000 
+ 00010936  0x00001a33 store  0x00000002 , 0x000041dc 
+ 00010937  0x00001a34 rshift  0x00000022 , 0x0000003f 
+ 00010938  0x00001a35 store  0x00000004 , 0x00004094 
+ 00010939  0x00001a36 rtn 
+ 00010940  0x00001a3e setarg  0x0000ee21 
+ 00010941  0x00001a3f hstore  0x00000002 , 0x00008050 
+ 00010942  0x00001a40 hfetch  0x00000004 , 0x0000811c 
+ 00010943  0x00001a41 store  0x00000004 , 0x00000abe 
+ 00010944  0x00001a42 hfetch  0x00000001 , 0x0000813e 
+ 00010945  0x00001a43 store  0x00000001 , 0x00000abd 
+ 00010946  0x00001a44 bbit0  0x00000003 , 0x0000645b 
+ 00010947  0x00001a45 enable  0x0000002b 
+ 00010948  0x00001a46 bbit0  0x00000007 , 0x00002acc 
+ 00010949  0x00001a47 disable  0x0000002b 
+ 00010950  0x00001a48 deposit  0x00000027 
+ 00010951  0x00001a49 nbranch  0x00002acc , 0x00000034 
+ 00010952  0x00001a4a hfetch  0x00000001 , 0x0000813b 
+ 00010953  0x00001a4b bbit1  0x00000002 , 0x00002acc 
+ 00010954  0x00001a4c arg  0xffffffff , 0x00000002 
+ 00010955  0x00001a4d branch  0x00002b3c 
+ 00010956  0x00001a4f hfetch  0x00000003 , 0x0000813c 
+ 00010957  0x00001a50 hstore  0x00000003 , 0x0000804c 
+ 00010958  0x00001a51 ifetch  0x00000001 , 0x00000006 
+ 00010959  0x00001a52 or_into  0x000000ef , 0x0000003f 
+ 00010960  0x00001a53 istore  0x00000001 , 0x00000005 
+ 00010961  0x00001a54 call  0x00002c23 
+ 00010962  0x00001a55 hfetch  0x00000001 , 0x0000804f 
+ 00010963  0x00001a56 set1  0x00000004 , 0x0000003f 
+ 00010964  0x00001a57 hstore  0x00000001 , 0x0000804f 
+ 00010965  0x00001a58 call  0x00002c23 
+ 00010966  0x00001a59 call  0x00002adf , 0x0000002b 
+ 00010967  0x00001a5a hfetch  0x00000001 , 0x0000804e 
+ 00010968  0x00001a5b set0  0x00000003 , 0x0000003f 
+ 00010969  0x00001a5c hstore  0x00000001 , 0x0000804e 
+ 00010970  0x00001a5d call  0x00002c23 
+ 00010971  0x00001a5e nbranch  0x0000645b , 0x0000002b 
+ 00010972  0x00001a5f rtnmark0  0x0000002b 
+ 00010973  0x00001a60 jam  0x00000008 , 0x00008006 
+ 00010974  0x00001a61 rtn 
+ 00010975  0x00001a64 fetch  0x00000001 , 0x00004198 
+ 00010976  0x00001a65 hstore  0x00000001 , 0x00008086 
+ 00010977  0x00001a66 fetch  0x00000003 , 0x0000418d 
+ 00010978  0x00001a67 hstore  0x00000003 , 0x00008080 
+ 00010979  0x00001a68 fetch  0x00000004 , 0x00004181 
+ 00010980  0x00001a69 hstore  0x00000004 , 0x00008074 
+ 00010981  0x00001a6a fetch  0x00000004 , 0x0000417d 
+ 00010982  0x00001a6b hstore  0x00000004 , 0x00008070 
+ 00010983  0x00001a6c fetch  0x00000008 , 0x00004185 
+ 00010984  0x00001a6d hstore  0x00000008 , 0x00008078 
+ 00010985  0x00001a6e fetch  0x00000008 , 0x00004190 
+ 00010986  0x00001a6f iforce  0x00000000 
+ 00010987  0x00001a70 hfetch  0x00000008 , 0x00008140 
+ 00010988  0x00001a71 store  0x00000008 , 0x000000a1 
+ 00010989  0x00001a72 call  0x000064ca 
+ 00010990  0x00001a73 rtn 
+ 00010991  0x00001a76 deposit  0x00000000 
+ 00010992  0x00001a77 store  0x00000008 , 0x00004190 
+ 00010993  0x00001a78 hfetch  0x00000008 , 0x00008070 
+ 00010994  0x00001a79 store  0x00000008 , 0x0000417d 
+ 00010995  0x00001a7a ifetch  0x00000008 , 0x00000006 
+ 00010996  0x00001a7b istore  0x00000008 , 0x00000005 
+ 00010997  0x00001a7c hfetch  0x00000003 , 0x00008080 
+ 00010998  0x00001a7d store  0x00000003 , 0x0000418d 
+ 00010999  0x00001a7e hfetch  0x00000001 , 0x00008086 
+ 00011000  0x00001a7f store  0x00000001 , 0x00004198 
+ 00011001  0x00001a80 branch  0x00002c29 
+ 00011002  0x00001a83 hfetch  0x00000001 , 0x00008063 
+ 00011003  0x00001a84 nbranch  0x00002b00 , 0x00000034 
+ 00011004  0x00001a85 fetch  0x00000003 , 0x0000416f 
+ 00011005  0x00001a86 nrtn  0x00000034 
+ 00011006  0x00001a87 jam  0x000000c0 , 0x00008063 
+ 00011007  0x00001a88 jam  0x00000080 , 0x00008006 
+ 00011008  0x00001a8a hfetch  0x00000001 , 0x0000812d 
+ 00011009  0x00001a8b rtnbit0  0x00000001 
+ 00011010  0x00001a8c hfetch  0x00000003 , 0x00008149 
+ 00011011  0x00001a8d store  0x00000003 , 0x0000416f 
+ 00011012  0x00001a8e rtn 
+ 00011013  0x00001a93 bpatch  0x000000a3 , 0x00004014 
+ 00011014  0x00001a94 deposit  0x0000001a 
+ 00011015  0x00001a95 call  0x00007f37 
+ 00011016  0x00001a96 fetcht  0x00000004 , 0x0000415f 
+ 00011017  0x00001a97 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00011018  0x00001a98 rtn  0x00000002 
+ 00011019  0x00001a99 lshift8  0x0000003f , 0x0000003f 
+ 00011020  0x00001a9a lshift4  0x0000003f , 0x0000003f 
+ 00011021  0x00001a9b idiv  0x00000002 
+ 00011022  0x00001a9c call  0x00007f86 
+ 00011023  0x00001a9d quotient  0x0000003f 
+ 00011024  0x00001a9e arg  0x000000c8 , 0x00000002 
+ 00011025  0x00001a9f call  0x00007f91 
+ 00011026  0x00001aa0 store  0x00000001 , 0x00000099 
+ 00011027  0x00001aa1 nbranch  0x00002b15 , 0x00000028 
+ 00011028  0x00001aa2 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00011029  0x00001aa4 fetcht  0x00000003 , 0x0000416f 
+ 00011030  0x00001aa5 iadd  0x00000002 , 0x0000003f 
+ 00011031  0x00001aa6 store  0x00000003 , 0x0000416f 
+ 00011032  0x00001aa8 setarg  0x00000000 
+ 00011033  0x00001aa9 store  0x00000004 , 0x0000415f 
+ 00011034  0x00001aaa rtn 
+ 00011035  0x00001aaf fetch  0x00000001 , 0x00004177 
+ 00011036  0x00001ab0 set1  0x00000002 , 0x0000003f 
+ 00011037  0x00001ab1 store  0x00000001 , 0x00004177 
+ 00011038  0x00001ab2 branch  0x00002b23 
+ 00011039  0x00001ab7 arg  0xffffffff , 0x00000002 
+ 00011040  0x00001ab8 fetch  0x00000001 , 0x00004176 
+ 00011041  0x00001ab9 set0  0x00000007 , 0x0000003f 
+ 00011042  0x00001aba store  0x00000001 , 0x00004176 
+ 00011043  0x00001abc bpatch  0x000000a4 , 0x00004014 
+ 00011044  0x00001abd call  0x00002c29 
+ 00011045  0x00001abe fetch  0x00000001 , 0x00004157 
+ 00011046  0x00001abf store  0x00000001 , 0x0000417c 
+ 00011047  0x00001ac0 fetch  0x00000001 , 0x0000417a 
+ 00011048  0x00001ac1 set1  0x00000007 , 0x0000003f 
+ 00011049  0x00001ac2 store  0x00000001 , 0x0000417a 
+ 00011050  0x00001ac6 bpatch  0x000000a5 , 0x00004014 
+ 00011051  0x00001ac7 call  0x000029e7 
+ 00011052  0x00001ac8 fetch  0x00000004 , 0x0000415f 
+ 00011053  0x00001ac9 iadd  0x00000002 , 0x0000003f 
+ 00011054  0x00001aca store  0x00000004 , 0x0000415f 
+ 00011055  0x00001acb call  0x00002aef 
+ 00011056  0x00001acc fetch  0x00000005 , 0x00004178 
+ 00011057  0x00001acd hstore  0x00000004 , 0x0000804c 
+ 00011058  0x00001ace rshift32  0x0000003f , 0x00000011 
+ 00011059  0x00001acf until  0x0000003e , 0x00000033 
+ 00011060  0x00001ad0 deposit  0x00000019 
+ 00011061  0x00001ad1 store  0x00000006 , 0x00004163 
+ 00011062  0x00001ad2 jam  0x00000002 , 0x00008005 
+ 00011063  0x00001ad3 until  0x0000003e , 0x00000033 
+ 00011064  0x00001ad4 until  0x0000003e , 0x00000033 
+ 00011065  0x00001ad5 deposit  0x00000011 
+ 00011066  0x00001ad6 hstore  0x00000001 , 0x0000804f 
+ 00011067  0x00001ad7 jam  0x00000002 , 0x00008005 
+ 00011068  0x00001ad9 until  0x0000003e , 0x00000033 
+ 00011069  0x00001ada until  0x0000003e , 0x00000033 
+ 00011070  0x00001adb hstoret  0x00000004 , 0x0000804c 
+ 00011071  0x00001adc jam  0x00000010 , 0x00008005 
+ 00011072  0x00001add until  0x0000003e , 0x0000003f 
+ 00011073  0x00001ae3 bpatch  0x000000a6 , 0x00004014 
+ 00011074  0x00001ae4 setarg  0x00000000 
+ 00011075  0x00001ae5 copy  0x00000027 , 0x0000003e 
+ 00011076  0x00001ae6 branch  0x00002b4c , 0x00000005 
+ 00011077  0x00001ae7 hfetch  0x00000001 , 0x0000813c 
+ 00011078  0x00001ae8 hfetcht  0x00000001 , 0x0000813d 
+ 00011079  0x00001ae9 isub  0x00000002 , 0x0000003e 
+ 00011080  0x00001aea branch  0x00002b4a , 0x00000002 
+ 00011081  0x00001aeb deposit  0x00000002 
+ 00011082  0x00001aed isub  0x00000027 , 0x0000003f 
+ 00011083  0x00001aee increase  0x00000001 , 0x0000003f 
+ 00011084  0x00001af0 increase  0x00000008 , 0x0000003f 
+ 00011085  0x00001af1 until  0x0000003e , 0x00000033 
+ 00011086  0x00001af2 iadd  0x00000031 , 0x0000003f 
+ 00011087  0x00001af3 fetcht  0x00000004 , 0x0000415b 
+ 00011088  0x00001af4 iadd  0x00000002 , 0x0000003f 
+ 00011089  0x00001af5 fetcht  0x00000003 , 0x0000416f 
+ 00011090  0x00001af6 imul32  0x00000002 , 0x0000003f 
+ 00011091  0x00001af7 rshift8  0x0000003f , 0x0000003f 
+ 00011092  0x00001af8 rshift4  0x0000003f , 0x0000003f 
+ 00011093  0x00001af9 increase  0x0000006e , 0x0000003f 
+ 00011094  0x00001afa arg  0x00000ea6 , 0x00000002 
+ 00011095  0x00001afb idiv  0x00000002 
+ 00011096  0x00001afc call  0x00007f86 
+ 00011097  0x00001afd quotient  0x0000003f 
+ 00011098  0x00001afe lshift16  0x0000003f , 0x0000003f 
+ 00011099  0x00001aff remainder  0x00000002 
+ 00011100  0x00001b00 ior  0x00000002 , 0x0000003f 
+ 00011101  0x00001b01 fetcht  0x00000006 , 0x00004163 
+ 00011102  0x00001b02 call  0x00007f2c 
+ 00011103  0x00001b03 copy  0x00000002 , 0x00000019 
+ 00011104  0x00001b04 fetch  0x00000006 , 0x00004048 
+ 00011105  0x00001b05 call  0x00002854 
+ 00011106  0x00001b06 deposit  0x0000001a 
+ 00011107  0x00001b07 store  0x00000006 , 0x00000a9a 
+ 00011108  0x00001b08 deposit  0x00000027 
+ 00011109  0x00001b09 istore  0x00000001 , 0x00000005 
+ 00011110  0x00001b0a hfetch  0x00000001 , 0x0000811d 
+ 00011111  0x00001b0b or_into  0x000000f0 , 0x0000003f 
+ 00011112  0x00001b0c istore  0x00000001 , 0x00000005 
+ 00011113  0x00001b0d rtn 
+ 00011114  0x00001b10 bpatch  0x000000a7 , 0x00004014 
+ 00011115  0x00001b11 call  0x00002afa 
+ 00011116  0x00001b12 fetch  0x00000003 , 0x0000416f 
+ 00011117  0x00001b13 rtn  0x00000034 
+ 00011118  0x00001b14 fetch  0x00000001 , 0x00004091 
+ 00011119  0x00001b15 rtn  0x00000034 
+ 00011120  0x00001b16 fetch  0x00000001 , 0x0000465a 
+ 00011121  0x00001b17 branch  0x00002b74 , 0x00000034 
+ 00011122  0x00001b18 fetch  0x00000001 , 0x000045b1 
+ 00011123  0x00001b19 rtn  0x00000034 
+ 00011124  0x00001b1b fetch  0x00000001 , 0x000044c0 
+ 00011125  0x00001b1c nrtn  0x00000034 
+ 00011126  0x00001b1d call  0x00002c3a 
+ 00011127  0x00001b1e nrtn  0x00000034 
+ 00011128  0x00001b1f fetch  0x00000001 , 0x00004040 
+ 00011129  0x00001b20 compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00011130  0x00001b21 nbranch  0x00002b9d , 0x00000001 
+ 00011131  0x00001b22 fetch  0x00000002 , 0x00004042 
+ 00011132  0x00001b23 rtn  0x00000034 
+ 00011133  0x00001b24 rtn  0x0000002b 
+ 00011134  0x00001b25 bpatch  0x000000a8 , 0x00004015 
+ 00011135  0x00001b27 fetcht  0x00000001 , 0x000000a0 
+ 00011136  0x00001b28 fetch  0x00000002 , 0x00004042 
+ 00011137  0x00001b29 imul32  0x00000002 , 0x0000003f 
+ 00011138  0x00001b2a rshift4  0x00000002 , 0x00000002 
+ 00011139  0x00001b2b rshift2  0x00000002 , 0x00000002 
+ 00011140  0x00001b2c isub  0x00000002 , 0x0000003f 
+ 00011141  0x00001b2d fetcht  0x00000004 , 0x00004044 
+ 00011142  0x00001b2e iadd  0x00000002 , 0x0000003f 
+ 00011143  0x00001b2f fetcht  0x00000001 , 0x00004156 
+ 00011144  0x00001b30 isub  0x00000002 , 0x0000003f 
+ 00011145  0x00001b31 lshift16  0x0000003f , 0x00000030 
+ 00011146  0x00001b32 bpatch  0x000000a9 , 0x00004015 
+ 00011147  0x00001b33 fetch  0x00000002 , 0x0000404e 
+ 00011148  0x00001b34 rshift  0x0000003f , 0x0000003f 
+ 00011149  0x00001b35 call  0x00007f50 
+ 00011150  0x00001b36 deposit  0x00000030 
+ 00011151  0x00001b37 call  0x00007f39 
+ 00011152  0x00001b38 copy  0x0000001a , 0x00000002 
+ 00011153  0x00001b39 call  0x00007f37 
+ 00011154  0x00001b3a rtn  0x00000028 
+ 00011155  0x00001b3c call  0x00007f49 
+ 00011156  0x00001b3e bpatch  0x000000aa , 0x00004015 
+ 00011157  0x00001b3f fetch  0x00000001 , 0x00004178 
+ 00011158  0x00001b40 isub  0x00000002 , 0x0000003e 
+ 00011159  0x00001b41 branch  0x00002b18 , 0x00000002 
+ 00011160  0x00001b42 storet  0x00000004 , 0x0000415b 
+ 00011161  0x00001b43 call  0x00003328 
+ 00011162  0x00001b44 call  0x000052fb 
+ 00011163  0x00001b45 fetcht  0x00000004 , 0x0000415b 
+ 00011164  0x00001b46 branch  0x00002b2a 
+ 00011165  0x00001b49 bpatch  0x000000ab , 0x00004015 
+ 00011166  0x00001b4a fetch  0x00000001 , 0x00004040 
+ 00011167  0x00001b4b rtnbit1  0x00000000 
+ 00011168  0x00001b4c rtnbit1  0x00000003 
+ 00011169  0x00001b4d fetch  0x00000001 , 0x0000465a 
+ 00011170  0x00001b4e branch  0x00002ba5 , 0x00000034 
+ 00011171  0x00001b4f fetch  0x00000001 , 0x000045b1 
+ 00011172  0x00001b50 rtn  0x00000034 
+ 00011173  0x00001b52 bpatch  0x000000ac , 0x00004015 
+ 00011174  0x00001b53 fetch  0x00000001 , 0x0000436e 
+ 00011175  0x00001b54 nbranch  0x00002baa , 0x00000034 
+ 00011176  0x00001b55 fetch  0x00000001 , 0x00004093 
+ 00011177  0x00001b56 rtn  0x00000034 
+ 00011178  0x00001b58 fetch  0x00000002 , 0x00004154 
+ 00011179  0x00001b59 rtn  0x00000034 
+ 00011180  0x00001b5b fetcht  0x00000001 , 0x00004156 
+ 00011181  0x00001b5c isub  0x00000002 , 0x0000003f 
+ 00011182  0x00001b5d arg  0x00001d4c , 0x00000002 
+ 00011183  0x00001b5e imul32  0x00000002 , 0x0000003f 
+ 00011184  0x00001b5f branch  0x00002b93 
+ 00011185  0x00001b62 bpatch  0x000000ad , 0x00004015 
+ 00011186  0x00001b63 disable  0x0000002b 
+ 00011187  0x00001b64 fetch  0x00000001 , 0x00000030 
+ 00011188  0x00001b65 rtnbit0  0x00000001 
+ 00011189  0x00001b66 nbranch  0x00002bd0 , 0x0000002d 
+ 00011190  0x00001b67 call  0x00002bcb 
+ 00011191  0x00001b68 fetch  0x00000002 , 0x000040c1 
+ 00011192  0x00001b69 store  0x00000002 , 0x0000003e 
+ 00011193  0x00001b6a fetch  0x00000001 , 0x00000047 
+ 00011194  0x00001b6b bbit1  0x00000003 , 0x00002bde 
+ 00011195  0x00001b6c bmark0  0x0000000d , 0x00002bde 
+ 00011196  0x00001b6d call  0x00005274 
+ 00011197  0x00001b6e nbranch  0x00002bde , 0x00000034 
+ 00011198  0x00001b6f fetch  0x00000001 , 0x0000455c 
+ 00011199  0x00001b70 bbit1  0x00000001 , 0x00002bde 
+ 00011200  0x00001b72 jam  0x00000000 , 0x000000a0 
+ 00011201  0x00001b73 bmark0  0x0000000d , 0x00002bde 
+ 00011202  0x00001b74 fetch  0x00000001 , 0x00004174 
+ 00011203  0x00001b75 branch  0x00002be2 , 0x00000034 
+ 00011204  0x00001b76 increase  0xffffffff , 0x0000003f 
+ 00011205  0x00001b77 store  0x00000001 , 0x00004174 
+ 00011206  0x00001b78 rtn 
+ 00011207  0x00001b7c arg  0x00000001 , 0x00000007 
+ 00011208  0x00001b7d branch  0x000060cd 
+ 00011209  0x00001b80 arg  0x00000001 , 0x00000007 
+ 00011210  0x00001b81 branch  0x000060d1 
+ 00011211  0x00001b86 jam  0x00000000 , 0x00004159 
+ 00011212  0x00001b87 fetch  0x00000003 , 0x00004169 
+ 00011213  0x00001b88 increase  0x00000001 , 0x0000003f 
+ 00011214  0x00001b89 store  0x00000003 , 0x00004169 
+ 00011215  0x00001b8a rtn 
+ 00011216  0x00001b8d bpatch  0x000000ae , 0x00004015 
+ 00011217  0x00001b8e fetcht  0x00000002 , 0x000040c1 
+ 00011218  0x00001b8f rshift  0x00000002 , 0x00000002 
+ 00011219  0x00001b90 fetch  0x00000002 , 0x0000003e 
+ 00011220  0x00001b91 iadd  0x00000002 , 0x0000003f 
+ 00011221  0x00001b92 store  0x00000002 , 0x0000003e 
+ 00011222  0x00001b94 jam  0x00000000 , 0x000000a0 
+ 00011223  0x00001b95 fetch  0x00000003 , 0x0000416c 
+ 00011224  0x00001b96 increase  0x00000001 , 0x0000003f 
+ 00011225  0x00001b97 store  0x00000003 , 0x0000416c 
+ 00011226  0x00001b98 fetch  0x00000001 , 0x00004159 
+ 00011227  0x00001b99 increase  0x00000001 , 0x0000003f 
+ 00011228  0x00001b9a store  0x00000001 , 0x00004159 
+ 00011229  0x00001b9b rtn 
+ 00011230  0x00001b9e jam  0x00000000 , 0x000000a0 
+ 00011231  0x00001b9f fetch  0x00000001 , 0x00004173 
+ 00011232  0x00001ba0 store  0x00000001 , 0x00004174 
+ 00011233  0x00001ba1 rtn 
+ 00011234  0x00001ba4 fetcht  0x00000001 , 0x00004172 
+ 00011235  0x00001ba5 storet  0x00000001 , 0x000000a0 
+ 00011236  0x00001ba6 rtn 
+ 00011237  0x00001ba9 bpatch  0x000000af , 0x00004015 
+ 00011238  0x00001baa fetch  0x00000001 , 0x00004178 
+ 00011239  0x00001bab nrtn  0x00000034 
+ 00011240  0x00001bac jam  0x00000006 , 0x00008042 
+ 00011241  0x00001bad setarg  0x00000f0c 
+ 00011242  0x00001bae call  0x00002c18 
+ 00011243  0x00001baf setarg  0x00030d40 
+ 00011244  0x00001bb0 call  0x00002a8f 
+ 00011245  0x00001bb1 until  0x0000003e , 0x00000033 
+ 00011246  0x00001bb2 copy  0x00000031 , 0x00000030 
+ 00011247  0x00001bb3 call  0x000029e7 
+ 00011248  0x00001bb4 jam  0x00000004 , 0x00008042 
+ 00011249  0x00001bb5 nop  0x0000000a 
+ 00011250  0x00001bb6 until  0x0000003e , 0x00000033 
+ 00011251  0x00001bb7 deposit  0x00000031 
+ 00011252  0x00001bb8 isub  0x00000030 , 0x0000003f 
+ 00011253  0x00001bb9 increase  0x00000030 , 0x0000003f 
+ 00011254  0x00001bba arg  0x000000ff , 0x00000002 
+ 00011255  0x00001bbb call  0x00007f91 
+ 00011256  0x00001bbc store  0x00000001 , 0x00004178 
+ 00011257  0x00001bbd nop  0x00007530 
+ 00011258  0x00001bbe nop  0x00007530 
+ 00011259  0x00001bbf nop  0x00007530 
+ 00011260  0x00001bc0 rtn 
+ 00011261  0x00001bc3 fetch  0x00000001 , 0x00004178 
+ 00011262  0x00001bc4 nrtn  0x00000034 
+ 00011263  0x00001bc5 jam  0x000000ff , 0x00008044 
+ 00011264  0x00001bc6 jam  0x00000006 , 0x00008042 
+ 00011265  0x00001bc7 call  0x000029e7 
+ 00011266  0x00001bc8 setarg  0x000003e8 
+ 00011267  0x00001bc9 iadd  0x00000031 , 0x00000030 
+ 00011268  0x00001bca snooze 
+ 00011269  0x00001bcb deposit  0x00000031 
+ 00011270  0x00001bcc nop  0x00002ee0 
+ 00011271  0x00001bcd nop  0x00002ee0 
+ 00011272  0x00001bce nop  0x00002ee0 
+ 00011273  0x00001bcf nop  0x00002ee0 
+ 00011274  0x00001bd0 nop  0x00002ee0 
+ 00011275  0x00001bd1 nop  0x00002ee0 
+ 00011276  0x00001bd2 nop  0x00002ee0 
+ 00011277  0x00001bd3 nop  0x00002ee0 
+ 00011278  0x00001bd4 nop  0x00002ee0 
+ 00011279  0x00001bd5 isub  0x00000030 , 0x0000003f 
+ 00011280  0x00001bd6 add  0x0000003f , 0x00000030 , 0x0000003f 
+ 00011281  0x00001bd7 arg  0x000000ff , 0x00000002 
+ 00011282  0x00001bd8 call  0x00007f91 
+ 00011283  0x00001bd9 store  0x00000001 , 0x00004178 
+ 00011284  0x00001bda nop  0x00007530 
+ 00011285  0x00001bdb nop  0x00007530 
+ 00011286  0x00001bdc nop  0x00007530 
+ 00011287  0x00001bdd rtn 
+ 00011288  0x00001be3 arg  0x00000fff , 0x00000005 
+ 00011289  0x00001be4 iand  0x00000005 , 0x00000005 
+ 00011290  0x00001be5 fetch  0x00000001 , 0x00004175 
+ 00011291  0x00001be6 and_into  0x000000f0 , 0x0000003f 
+ 00011292  0x00001be7 lshift8  0x0000003f , 0x0000003f 
+ 00011293  0x00001be8 ior  0x00000005 , 0x0000003f 
+ 00011294  0x00001be9 hstore  0x00000002 , 0x0000804c 
+ 00011295  0x00001bea ifetch  0x00000002 , 0x00000006 
+ 00011296  0x00001beb istore  0x00000002 , 0x00000005 
+ 00011297  0x00001bee setarg  0x00000001 
+ 00011298  0x00001bef branch  0x00002c24 
+ 00011299  0x00001bf2 setarg  0x00000002 
+ 00011300  0x00001bf4 until  0x0000003e , 0x00000033 
+ 00011301  0x00001bf5 hstore  0x00000001 , 0x00008005 
+ 00011302  0x00001bf6 until  0x0000003e , 0x00000033 
+ 00011303  0x00001bf7 until  0x0000003e , 0x00000033 
+ 00011304  0x00001bf8 rtn 
+ 00011305  0x00001bfc bpatch  0x000000b0 , 0x00004016 
+ 00011306  0x00001bfd fetch  0x00000004 , 0x000000a1 
+ 00011307  0x00001bfe hstore  0x00000004 , 0x0000804c 
+ 00011308  0x00001bff setarg  0x00000004 
+ 00011309  0x00001c00 call  0x00002c24 
+ 00011310  0x00001c01 fetch  0x00000004 , 0x000000a5 
+ 00011311  0x00001c02 hstore  0x00000004 , 0x0000804c 
+ 00011312  0x00001c03 setarg  0x00000008 
+ 00011313  0x00001c04 branch  0x00002c24 
+ 00011314  0x00001c07 fetch  0x00000002 , 0x00004152 
+ 00011315  0x00001c08 qset1  0x0000003f 
+ 00011316  0x00001c09 store  0x00000002 , 0x00004152 
+ 00011317  0x00001c0a rtn 
+ 00011318  0x00001c0d fetch  0x00000002 , 0x00004152 
+ 00011319  0x00001c0e qset0  0x0000003f 
+ 00011320  0x00001c0f store  0x00000002 , 0x00004152 
+ 00011321  0x00001c10 rtn 
+ 00011322  0x00001c15 bpatch  0x000000b1 , 0x00004016 
+ 00011323  0x00001c16 call  0x00003326 
+ 00011324  0x00001c17 fetch  0x00000002 , 0x00004152 
+ 00011325  0x00001c18 copy  0x0000003f , 0x00000011 
+ 00011326  0x00001c19 fetch  0x00000001 , 0x0000004c 
+ 00011327  0x00001c1a isolate1  0x00000006 , 0x0000003f 
+ 00011328  0x00001c1b setflag  0x00000001 , 0x0000000b , 0x00000011 
+ 00011329  0x00001c1c fetch  0x00000001 , 0x00000078 
+ 00011330  0x00001c1d fetcht  0x00000001 , 0x0000007c 
+ 00011331  0x00001c1e iadd  0x00000002 , 0x0000003f 
+ 00011332  0x00001c1f fetcht  0x00000001 , 0x00000048 
+ 00011333  0x00001c20 iadd  0x00000002 , 0x0000003f 
+ 00011334  0x00001c21 nsetflag  0x00000034 , 0x0000000a , 0x00000011 
+ 00011335  0x00001c22 fetch  0x00000001 , 0x000044ff 
+ 00011336  0x00001c23 nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00011337  0x00001c24 fetch  0x00000002 , 0x0000025d 
+ 00011338  0x00001c25 fetcht  0x00000002 , 0x0000025f 
+ 00011339  0x00001c26 iadd  0x00000002 , 0x0000003f 
+ 00011340  0x00001c27 nsetflag  0x00000034 , 0x0000000d , 0x00000011 
+ 00011341  0x00001c28 fetch  0x00000008 , 0x00004668 
+ 00011342  0x00001c29 nsetflag  0x00000034 , 0x0000000f , 0x00000011 
+ 00011343  0x00001c2a fetch  0x00000008 , 0x00004670 
+ 00011344  0x00001c2b nsetflag  0x00000034 , 0x0000000e , 0x00000011 
+ 00011345  0x00001c2c fetch  0x00000001 , 0x000041ce 
+ 00011346  0x00001c2d nsetflag  0x00000034 , 0x00000008 , 0x00000011 
+ 00011347  0x00001c2e fetch  0x00000001 , 0x00004092 
+ 00011348  0x00001c2f compare  0x0000000a , 0x0000003f , 0x000000ff 
+ 00011349  0x00001c30 call  0x00002c5b , 0x00000001 
+ 00011350  0x00001c31 setarg  0xfffffff8 
+ 00011351  0x00001c32 iand  0x00000011 , 0x00000011 
+ 00011352  0x00001c33 copy  0x00000011 , 0x0000003f 
+ 00011353  0x00001c34 store  0x00000002 , 0x00004152 
+ 00011354  0x00001c35 rtn 
+ 00011355  0x00001c38 hfetch  0x00000002 , 0x00008112 
+ 00011356  0x00001c39 nsetflag  0x00000034 , 0x00000006 , 0x00000011 
+ 00011357  0x00001c3a hfetch  0x00000002 , 0x0000810e 
+ 00011358  0x00001c3b nsetflag  0x00000034 , 0x00000005 , 0x00000011 
+ 00011359  0x00001c3c rtn 
+ 00011360  0x00001c3f hfetch  0x00000004 , 0x00008138 
+ 00011361  0x00001c40 set0  0x0000001b , 0x0000003f 
+ 00011362  0x00001c41 hstore  0x00000004 , 0x0000804c 
+ 00011363  0x00001c42 call  0x00002c21 
+ 00011364  0x00001c43 branch  0x00002a8c 
+ 00011365  0x00001c46 hfetch  0x00000004 , 0x0000813c 
+ 00011366  0x00001c47 set0  0x00000014 , 0x0000003f 
+ 00011367  0x00001c48 hstore  0x00000004 , 0x0000804c 
+ 00011368  0x00001c49 branch  0x00002c23 
+ 00011369  0x00001c4c fetch  0x00000002 , 0x00004150 
+ 00011370  0x00001c4d bbit1  0x00000000 , 0x00002a8c 
+ 00011371  0x00001c4e rtn 
+ 00011372  0x00001c50 fetch  0x00000002 , 0x00004150 
+ 00011373  0x00001c51 bbit1  0x00000001 , 0x00002a8c 
+ 00011374  0x00001c52 rtn 
+ 00011375  0x00001c54 fetch  0x00000002 , 0x00004150 
+ 00011376  0x00001c55 bbit1  0x00000002 , 0x00002a8c 
+ 00011377  0x00001c56 rtn 
+ 00011378  0x00001c94 bpatch  0x000000b2 , 0x00004016 
+ 00011379  0x00001c95 call  0x00002c7a 
+ 00011380  0x00001c96 add  0x00000013 , 0x000000cd , 0x00000012 
+ 00011381  0x00001c97 ifetch  0x00000001 , 0x00000012 
+ 00011382  0x00001c99 rtneq  0x00000000 
+ 00011383  0x00001c9a beq  0x00000001 , 0x00002d06 
+ 00011384  0x00001c9b beq  0x00000002 , 0x00002c7f 
+ 00011385  0x00001c9c rtn 
+ 00011386  0x00001c9f fetcht  0x00000002 , 0x00004241 
+ 00011387  0x00001ca0 copy  0x00000002 , 0x00000013 
+ 00011388  0x00001ca1 rtn 
+ 00011389  0x00001ca4 call  0x00002f3d 
+ 00011390  0x00001ca5 branch  0x0000307d 
+ 00011391  0x00001ca8 call  0x00003084 
+ 00011392  0x00001ca9 call  0x0000305a 
+ 00011393  0x00001caa call  0x0000305e 
+ 00011394  0x00001cab branch  0x000030a2 
+ 00011395  0x00001cb1 call  0x00003231 
+ 00011396  0x00001cb2 setarg  0x0000004e 
+ 00011397  0x00001cb3 call  0x0000322f 
+ 00011398  0x00001cb4 call  0x000032ba 
+ 00011399  0x00001cb7 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00011400  0x00001cb8 ifetch  0x00000004 , 0x00000011 
+ 00011401  0x00001cb9 branch  0x0000322c 
+ 00011402  0x00001cbc call  0x00002c7a 
+ 00011403  0x00001cbd add  0x00000013 , 0x00000091 , 0x00000012 
+ 00011404  0x00001cbe ifetcht  0x00000001 , 0x00000012 
+ 00011405  0x00001cc0 call  0x00002c90 
+ 00011406  0x00001cc1 add  0x00000013 , 0x00000091 , 0x00000005 
+ 00011407  0x00001cc3 branch  0x00002e56 
+ 00011408  0x00001cc6 call  0x00002c94 
+ 00011409  0x00001cc7 increase  0x00000001 , 0x00000002 
+ 00011410  0x00001cc8 and_into  0x00000003 , 0x00000002 
+ 00011411  0x00001cc9 rtn 
+ 00011412  0x00001ccc add  0x00000013 , 0x000000ae , 0x00000012 
+ 00011413  0x00001ccd ifetch  0x00000001 , 0x00000012 
+ 00011414  0x00001ccf and_into  0x00000003 , 0x0000003f 
+ 00011415  0x00001cd0 mul32  0x0000003f , 0x00000004 , 0x00000011 
+ 00011416  0x00001cd1 add  0x00000013 , 0x00000097 , 0x0000003f 
+ 00011417  0x00001cd3 iadd  0x00000011 , 0x0000003f 
+ 00011418  0x00001cd4 iadd  0x00000002 , 0x00000006 
+ 00011419  0x00001cd5 ifetch  0x00000001 , 0x00000006 
+ 00011420  0x00001cd7 branch  0x0000322f 
+ 00011421  0x00001cda call  0x0000326c 
+ 00011422  0x00001cdb call  0x0000666a 
+ 00011423  0x00001cdc setarg  0x000007e2 
+ 00011424  0x00001cdd arg  0x00000aa2 , 0x00000011 
+ 00011425  0x00001cde arg  0x00000004 , 0x00000002 
+ 00011426  0x00001cdf call  0x000066b3 
+ 00011427  0x00001ce0 call  0x0000666d 
+ 00011428  0x00001ce1 fetch  0x00000004 , 0x00000aa2 
+ 00011429  0x00001ce2 call  0x00003227 
+ 00011430  0x00001ce4 nrtn  0x00000034 
+ 00011431  0x00001ce5 fetch  0x00000004 , 0x000040a0 
+ 00011432  0x00001ce7 branch  0x00003227 
+ 00011433  0x00001cea call  0x00003241 
+ 00011434  0x00001cec setarg  0x00000000 
+ 00011435  0x00001ced call  0x0000323f 
+ 00011436  0x00001cf0 call  0x0000323a 
+ 00011437  0x00001cf2 and_into  0x00000007 , 0x0000003f 
+ 00011438  0x00001cf4 branch  0x0000323c 
+ 00011439  0x00001cf7 call  0x0000323a 
+ 00011440  0x00001cf9 set1  0x00000004 , 0x0000003f 
+ 00011441  0x00001cfa call  0x0000323c 
+ 00011442  0x00001cfd branch  0x00003235 
+ 00011443  0x00001d00 call  0x0000325d 
+ 00011444  0x00001d02 beq  0x00000001 , 0x00002cb7 
+ 00011445  0x00001d03 beq  0x00000002 , 0x00002cbc 
+ 00011446  0x00001d04 rtn 
+ 00011447  0x00001d07 call  0x0000323e 
+ 00011448  0x00001d0a add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011449  0x00001d0b call  0x000032d6 
+ 00011450  0x00001d0d call  0x00003242 
+ 00011451  0x00001d0f branch  0x00002cac 
+ 00011452  0x00001d12 call  0x0000325a 
+ 00011453  0x00001d14 branch  0x00002cb8 
+ 00011454  0x00001d17 add  0x00000013 , 0x0000008c , 0x00000011 
+ 00011455  0x00001d18 ifetch  0x00000001 , 0x00000011 
+ 00011456  0x00001d1a increase  0x00000001 , 0x0000003f 
+ 00011457  0x00001d1b add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011458  0x00001d1c istore  0x00000001 , 0x00000005 
+ 00011459  0x00001d1e beq  0x00000020 , 0x00002dd2 
+ 00011460  0x00001d1f call  0x00003258 
+ 00011461  0x00001d21 beq  0x00000001 , 0x00002cca 
+ 00011462  0x00001d22 setarg  0x00000001 
+ 00011463  0x00001d23 call  0x0000325b 
+ 00011464  0x00001d26 call  0x00003258 
+ 00011465  0x00001d28 bne  0x00000001 , 0x00002cac 
+ 00011466  0x00001d2a add  0x00000013 , 0x000000d3 , 0x00000011 
+ 00011467  0x00001d2b ifetch  0x00000001 , 0x00000011 
+ 00011468  0x00001d2d increase  0x00000001 , 0x0000003f 
+ 00011469  0x00001d2e call  0x00002cd5 
+ 00011470  0x00001d30 beq  0x00000004 , 0x00002cd2 
+ 00011471  0x00001d31 call  0x00002c8a 
+ 00011472  0x00001d32 call  0x00002d04 
+ 00011473  0x00001d34 branch  0x00002d8f 
+ 00011474  0x00001d37 call  0x00002cd4 
+ 00011475  0x00001d39 branch  0x00002cac 
+ 00011476  0x00001d3c setarg  0x00000000 
+ 00011477  0x00001d3e add  0x00000013 , 0x000000d3 , 0x00000005 
+ 00011478  0x00001d3f branch  0x000032b4 
+ 00011479  0x00001d42 call  0x0000323e 
+ 00011480  0x00001d45 call  0x0000325a 
+ 00011481  0x00001d47 call  0x00003241 
+ 00011482  0x00001d49 branch  0x00002cac 
+ 00011483  0x00001d4c call  0x0000325d 
+ 00011484  0x00001d4e beq  0x00000003 , 0x00002cd8 
+ 00011485  0x00001d4f call  0x0000323a 
+ 00011486  0x00001d51 isolate0  0x00000004 , 0x0000003f 
+ 00011487  0x00001d52 branch  0x00002ca9 , 0x00000001 
+ 00011488  0x00001d53 call  0x0000325d 
+ 00011489  0x00001d55 beq  0x00000001 , 0x00002cd7 
+ 00011490  0x00001d56 beq  0x00000002 , 0x00002cd8 
+ 00011491  0x00001d57 rtn 
+ 00011492  0x00001d5a call  0x00003253 
+ 00011493  0x00001d5c rtnne  0x000000ff 
+ 00011494  0x00001d5d call  0x00002ce9 
+ 00011495  0x00001d5e ncall  0x00002cf4 , 0x0000002c 
+ 00011496  0x00001d5f rtn 
+ 00011497  0x00001d62 disable  0x0000002c 
+ 00011498  0x00001d63 add  0x00000013 , 0x000000ce , 0x00000011 
+ 00011499  0x00001d64 ifetch  0x00000001 , 0x00000011 
+ 00011500  0x00001d66 rtnne  0x00000001 
+ 00011501  0x00001d67 add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011502  0x00001d68 ifetch  0x00000001 , 0x00000011 
+ 00011503  0x00001d6a rtnne  0x00000000 
+ 00011504  0x00001d6b setarg  0x00000001 
+ 00011505  0x00001d6c call  0x00002cfd 
+ 00011506  0x00001d6e call  0x00003237 
+ 00011507  0x00001d70 branch  0x00007feb 
+ 00011508  0x00001d73 add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011509  0x00001d74 ifetch  0x00000001 , 0x00000011 
+ 00011510  0x00001d76 branch  0x00002cff , 0x00000034 
+ 00011511  0x00001d77 increase  0xffffffff , 0x0000003f 
+ 00011512  0x00001d78 call  0x0000323f 
+ 00011513  0x00001d7a setarg  0x00000002 
+ 00011514  0x00001d7b call  0x00002cfd 
+ 00011515  0x00001d7d call  0x00002c8a 
+ 00011516  0x00001d7f branch  0x00003237 
+ 00011517  0x00001d82 add  0x00000013 , 0x000000d2 , 0x00000005 
+ 00011518  0x00001d83 branch  0x000032b4 
+ 00011519  0x00001d87 setarg  0x00000003 
+ 00011520  0x00001d88 call  0x00002cfd 
+ 00011521  0x00001d8a call  0x00003258 
+ 00011522  0x00001d8c nbranch  0x00002cc8 , 0x00000034 
+ 00011523  0x00001d8d call  0x00002c8a 
+ 00011524  0x00001d90 setarg  0x00000002 
+ 00011525  0x00001d91 branch  0x00003238 
+ 00011526  0x00001d94 rtnmark0  0x00000026 
+ 00011527  0x00001d95 set1  0x00000027 , 0x00000000 
+ 00011528  0x00001d96 bpatch  0x000000b3 , 0x00004016 
+ 00011529  0x00001d97 add  0x00000013 , 0x0000008e , 0x00000011 
+ 00011530  0x00001d98 ifetch  0x00000001 , 0x00000011 
+ 00011531  0x00001d9a beq  0x00000001 , 0x00002d0f 
+ 00011532  0x00001d9b call  0x0000306a 
+ 00011533  0x00001d9c nbranch  0x00002d16 , 0x00000028 
+ 00011534  0x00001d9d call  0x00002d1b 
+ 00011535  0x00001d9f add  0x00000013 , 0x0000008e , 0x00000005 
+ 00011536  0x00001da0 call  0x000032d6 
+ 00011537  0x00001da2 call  0x00002d2c 
+ 00011538  0x00001da3 nbranch  0x00002d7d , 0x00000028 
+ 00011539  0x00001da4 call  0x00002ce4 
+ 00011540  0x00001da6 call  0x00002d8f 
+ 00011541  0x00001da7 call  0x00002e7a 
+ 00011542  0x00001da9 set0  0x00000027 , 0x00000000 
+ 00011543  0x00001daa rtn 
+ 00011544  0x00001dad rtn  0x00000005 
+ 00011545  0x00001dae set1  0x0000001c , 0x0000003f 
+ 00011546  0x00001daf rtn 
+ 00011547  0x00001db2 add  0x00000013 , 0x000000c2 , 0x00000011 
+ 00011548  0x00001db3 ifetch  0x00000001 , 0x00000011 
+ 00011549  0x00001db5 increase  0x00000001 , 0x0000003f 
+ 00011550  0x00001db6 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011551  0x00001db7 istore  0x00000001 , 0x00000005 
+ 00011552  0x00001db9 beq  0x00000004 , 0x00002d23 
+ 00011553  0x00001dba beq  0x00000005 , 0x00002d27 
+ 00011554  0x00001dbb rtn 
+ 00011555  0x00001dbd add  0x00000013 , 0x000000ad , 0x00000011 
+ 00011556  0x00001dbe ifetch  0x00000001 , 0x00000011 
+ 00011557  0x00001dc2 add  0x00000013 , 0x000000ab , 0x00000005 
+ 00011558  0x00001dc3 branch  0x000032b4 
+ 00011559  0x00001dc6 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011560  0x00001dc7 call  0x000032d6 
+ 00011561  0x00001dc9 add  0x00000013 , 0x000000ac , 0x00000011 
+ 00011562  0x00001dca ifetch  0x00000001 , 0x00000011 
+ 00011563  0x00001dcc branch  0x00002d25 
+ 00011564  0x00001dcf call  0x00003253 
+ 00011565  0x00001dd1 bne  0x000000ff , 0x00002eb1 
+ 00011566  0x00001dd2 bpatch  0x000000b4 , 0x00004016 
+ 00011567  0x00001dd3 call  0x00002d3a 
+ 00011568  0x00001dd4 nbranch  0x00002d36 , 0x00000028 
+ 00011569  0x00001dd5 call  0x00002d53 
+ 00011570  0x00001dd6 call  0x00002e71 
+ 00011571  0x00001dd9 setarg  0x00000001 
+ 00011572  0x00001ddb add  0x00000013 , 0x0000008b , 0x00000005 
+ 00011573  0x00001ddc branch  0x000032b4 
+ 00011574  0x00001ddf add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011575  0x00001de0 ifetch  0x00000001 , 0x00000011 
+ 00011576  0x00001de2 beq  0x00000001 , 0x00007fe7 
+ 00011577  0x00001de3 rtn 
+ 00011578  0x00001de7 add  0x00000013 , 0x000000d8 , 0x00000002 
+ 00011579  0x00001de8 ifetch  0x00000002 , 0x00000002 
+ 00011580  0x00001dea call  0x00007f9c 
+ 00011581  0x00001deb nrtn  0x00000028 
+ 00011582  0x00001dec copy  0x00000011 , 0x0000003f 
+ 00011583  0x00001ded store  0x00000001 , 0x00000aae 
+ 00011584  0x00001dee add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00011585  0x00001def call  0x000032d6 
+ 00011586  0x00001df1 call  0x00002cac 
+ 00011587  0x00001df2 store  0x00000001 , 0x0000119e 
+ 00011588  0x00001df3 fetch  0x00000001 , 0x00000aae 
+ 00011589  0x00001df4 copy  0x0000003f , 0x00000011 
+ 00011590  0x00001df5 add  0x00000011 , 0x00000001 , 0x00000002 
+ 00011591  0x00001df6 arg  0x0000119f , 0x00000005 
+ 00011592  0x00001df7 copy  0x00000011 , 0x00000039 
+ 00011593  0x00001df8 copy  0x00000012 , 0x00000006 
+ 00011594  0x00001df9 call  0x00007f01 
+ 00011595  0x00001dfa arg  0x0000119e , 0x00000011 
+ 00011596  0x00001dfc rtnmark0  0x00000027 
+ 00011597  0x00001dfd add  0x00000013 , 0x00000086 , 0x00000005 
+ 00011598  0x00001dfe istoret  0x00000001 , 0x00000005 
+ 00011599  0x00001e00 copy  0x00000002 , 0x00000039 
+ 00011600  0x00001e01 add  0x00000013 , 0x00000022 , 0x00000005 
+ 00011601  0x00001e03 copy  0x00000011 , 0x00000006 
+ 00011602  0x00001e04 branch  0x00007f01 
+ 00011603  0x00001e08 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011604  0x00001e09 ifetch  0x00000001 , 0x00000011 
+ 00011605  0x00001e0b increase  0x00000002 , 0x0000003f 
+ 00011606  0x00001e0c add  0x00000013 , 0x00000088 , 0x00000005 
+ 00011607  0x00001e0d istore  0x00000001 , 0x00000005 
+ 00011608  0x00001e10 call  0x0000323a 
+ 00011609  0x00001e12 call  0x00003235 
+ 00011610  0x00001e15 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011611  0x00001e16 ifetch  0x00000001 , 0x00000011 
+ 00011612  0x00001e18 lshift3  0x0000003f , 0x0000003f 
+ 00011613  0x00001e19 add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011614  0x00001e1a ifetcht  0x00000001 , 0x00000011 
+ 00011615  0x00001e1c and  0x00000002 , 0x00000003 , 0x00000002 
+ 00011616  0x00001e1d lshift  0x00000002 , 0x00000002 
+ 00011617  0x00001e1e ior  0x00000002 , 0x0000003f 
+ 00011618  0x00001e1f add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011619  0x00001e20 ifetcht  0x00000001 , 0x00000011 
+ 00011620  0x00001e22 iadd  0x00000002 , 0x0000003f 
+ 00011621  0x00001e23 istore  0x00000001 , 0x00000005 
+ 00011622  0x00001e25 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011623  0x00001e26 ifetch  0x00000001 , 0x00000011 
+ 00011624  0x00001e28 iforce  0x00000039 
+ 00011625  0x00001e29 add  0x00000013 , 0x00000022 , 0x00000006 
+ 00011626  0x00001e2b branch  0x00007f01 
+ 00011627  0x00001e2e call  0x0000324f 
+ 00011628  0x00001e30 call  0x0000325a 
+ 00011629  0x00001e32 call  0x00002e6d 
+ 00011630  0x00001e33 call  0x00002cac 
+ 00011631  0x00001e34 store  0x00000001 , 0x0000119e 
+ 00011632  0x00001e35 call  0x00002d77 
+ 00011633  0x00001e36 call  0x0000323a 
+ 00011634  0x00001e38 set1  0x00000003 , 0x0000003f 
+ 00011635  0x00001e39 call  0x0000323c 
+ 00011636  0x00001e3b call  0x00002d53 
+ 00011637  0x00001e3c call  0x00002d33 
+ 00011638  0x00001e3d branch  0x00002d14 
+ 00011639  0x00001e40 store  0x00000001 , 0x0000119f 
+ 00011640  0x00001e41 call  0x00003224 
+ 00011641  0x00001e43 store  0x00000004 , 0x000011a0 
+ 00011642  0x00001e44 arg  0x00000006 , 0x00000002 
+ 00011643  0x00001e45 arg  0x0000119e , 0x00000011 
+ 00011644  0x00001e46 branch  0x00002d4c 
+ 00011645  0x00001e49 add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00011646  0x00001e4a ifetch  0x00000001 , 0x00000011 
+ 00011647  0x00001e4c branch  0x00002d6b , 0x00000034 
+ 00011648  0x00001e4f add  0x00000013 , 0x000000da , 0x00000011 
+ 00011649  0x00001e50 ifetch  0x00000002 , 0x00000011 
+ 00011650  0x00001e52 branch  0x00007f9c 
+ 00011651  0x00001e55 call  0x00002c7a 
+ 00011652  0x00001e57 call  0x00002afa 
+ 00011653  0x00001e58 fetch  0x00000003 , 0x0000416f 
+ 00011654  0x00001e59 rtn  0x00000034 
+ 00011655  0x00001e5a add  0x00000013 , 0x000000dc , 0x00000002 
+ 00011656  0x00001e5b ifetch  0x00000002 , 0x00000002 
+ 00011657  0x00001e5d call  0x00007f9c 
+ 00011658  0x00001e5e add  0x00000013 , 0x000000b6 , 0x00000002 
+ 00011659  0x00001e5f ifetch  0x00000008 , 0x00000002 
+ 00011660  0x00001e60 call  0x00007f49 
+ 00011661  0x00001e61 storet  0x00000004 , 0x0000415b 
+ 00011662  0x00001e62 branch  0x00002b2a 
+ 00011663  0x00001e65 call  0x00002c7a 
+ 00011664  0x00001e66 add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011665  0x00001e67 call  0x000032d6 
+ 00011666  0x00001e6a call  0x00002da4 
+ 00011667  0x00001e6b nbranch  0x00002dae , 0x00000018 
+ 00011668  0x00001e6c nbranch  0x00002dae , 0x0000002f 
+ 00011669  0x00001e6d call  0x00002dd6 
+ 00011670  0x00001e6e call  0x00002e75 
+ 00011671  0x00001e70 call  0x00002c7a 
+ 00011672  0x00001e71 add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011673  0x00001e72 ifetch  0x00000001 , 0x00000011 
+ 00011674  0x00001e74 increase  0x00000001 , 0x0000003f 
+ 00011675  0x00001e75 call  0x00003232 
+ 00011676  0x00001e77 call  0x00003253 
+ 00011677  0x00001e79 bne  0x000000ff , 0x00002ed0 
+ 00011678  0x00001e7a call  0x00002cdb 
+ 00011679  0x00001e7c setarg  0x00000000 
+ 00011680  0x00001e7d add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011681  0x00001e7e istore  0x00000002 , 0x00000005 
+ 00011682  0x00001e82 setarg  0x00000000 
+ 00011683  0x00001e83 branch  0x00002d34 
+ 00011684  0x00001e87 disable  0x0000002f 
+ 00011685  0x00001e88 call  0x00002df7 
+ 00011686  0x00001e89 call  0x00002c7a 
+ 00011687  0x00001e8a add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011688  0x00001e8b ifetch  0x00000001 , 0x00000011 
+ 00011689  0x00001e8d beq  0x00000001 , 0x00002dac 
+ 00011690  0x00001e8e call  0x00002e11 
+ 00011691  0x00001e8f branch  0x00002e45 
+ 00011692  0x00001e91 call  0x00002e45 
+ 00011693  0x00001e92 branch  0x00002d97 
+ 00011694  0x00001e96 bpatch  0x000000b5 , 0x00004016 
+ 00011695  0x00001e97 add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011696  0x00001e98 ifetch  0x00000001 , 0x00000011 
+ 00011697  0x00001e9a increase  0x00000001 , 0x0000003f 
+ 00011698  0x00001e9b add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011699  0x00001e9c istore  0x00000001 , 0x00000005 
+ 00011700  0x00001e9e call  0x00003253 
+ 00011701  0x00001ea0 bne  0x000000ff , 0x00002dcc 
+ 00011702  0x00001ea1 add  0x00000013 , 0x0000008f , 0x00000011 
+ 00011703  0x00001ea2 ifetcht  0x00000001 , 0x00000011 
+ 00011704  0x00001ea4 increase  0x00000001 , 0x00000002 
+ 00011705  0x00001ea5 add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011706  0x00001ea6 istoret  0x00000001 , 0x00000005 
+ 00011707  0x00001ea8 add  0x00000013 , 0x000000cc , 0x00000011 
+ 00011708  0x00001ea9 ifetch  0x00000001 , 0x00000011 
+ 00011709  0x00001eab isub  0x00000002 , 0x0000003f 
+ 00011710  0x00001eac nbranch  0x00002d92 , 0x00000034 
+ 00011711  0x00001ead bpatch  0x000000b6 , 0x00004016 
+ 00011712  0x00001eae call  0x0000325d 
+ 00011713  0x00001eb0 beq  0x00000003 , 0x00002cbe 
+ 00011714  0x00001eb1 add  0x00000013 , 0x000000d1 , 0x00000011 
+ 00011715  0x00001eb2 ifetch  0x00000001 , 0x00000011 
+ 00011716  0x00001eb4 increase  0x00000001 , 0x0000003f 
+ 00011717  0x00001eb5 add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011718  0x00001eb6 istore  0x00000001 , 0x00000005 
+ 00011719  0x00001eb8 beq  0x00000002 , 0x00002cb3 
+ 00011720  0x00001eb9 call  0x00002caf 
+ 00011721  0x00001eba setarg  0x00000001 
+ 00011722  0x00001ebb call  0x00003238 
+ 00011723  0x00001ebd branch  0x00002d8f 
+ 00011724  0x00001ec0 add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011725  0x00001ec1 ifetch  0x00000001 , 0x00000011 
+ 00011726  0x00001ec3 rtnne  0x000000ff 
+ 00011727  0x00001ec4 add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011728  0x00001ec5 call  0x000032d6 
+ 00011729  0x00001ec7 branch  0x00002dd4 
+ 00011730  0x00001eca add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011731  0x00001ecb call  0x000032d6 
+ 00011732  0x00001ece jam  0x0000003a , 0x00000a99 
+ 00011733  0x00001ecf branch  0x00007d86 
+ 00011734  0x00001ed2 call  0x00002dde 
+ 00011735  0x00001ed3 add  0x00000013 , 0x00000084 , 0x00000011 
+ 00011736  0x00001ed4 ifetch  0x00000001 , 0x00000011 
+ 00011737  0x00001ed6 rtn  0x00000034 
+ 00011738  0x00001ed7 iforce  0x00000039 
+ 00011739  0x00001ed8 add  0x00000013 , 0x00000002 , 0x00000006 
+ 00011740  0x00001eda add  0x00000013 , 0x00000064 , 0x00000005 
+ 00011741  0x00001edc branch  0x00007f01 
+ 00011742  0x00001ee1 call  0x0000325f 
+ 00011743  0x00001ee3 rshift3  0x0000003f , 0x0000003f 
+ 00011744  0x00001ee4 add  0x00000013 , 0x00000084 , 0x00000005 
+ 00011745  0x00001ee5 istore  0x00000001 , 0x00000005 
+ 00011746  0x00001ee8 increase  0x00000001 , 0x0000003f 
+ 00011747  0x00001ee9 add  0x00000013 , 0x00000001 , 0x00000006 
+ 00011748  0x00001eeb iadd  0x00000006 , 0x00000006 
+ 00011749  0x00001eec ifetch  0x00000003 , 0x00000006 
+ 00011750  0x00001eed add  0x00000013 , 0x000000c4 , 0x00000005 
+ 00011751  0x00001eee istore  0x00000003 , 0x00000005 
+ 00011752  0x00001ef1 call  0x0000325f 
+ 00011753  0x00001ef3 rshift  0x0000003f , 0x0000003f 
+ 00011754  0x00001ef4 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00011755  0x00001ef5 add  0x00000013 , 0x000000ca , 0x00000005 
+ 00011756  0x00001ef6 istore  0x00000001 , 0x00000005 
+ 00011757  0x00001ef8 rtn 
+ 00011758  0x00001efb disable  0x00000009 
+ 00011759  0x00001efc disable  0x00000007 
+ 00011760  0x00001efd setarg  0x00555555 
+ 00011761  0x00001efe iforce  0x0000000f 
+ 00011762  0x00001eff rtn 
+ 00011763  0x00001f02 call  0x00002918 
+ 00011764  0x00001f03 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011765  0x00001f04 ifetcht  0x00000001 , 0x00000011 
+ 00011766  0x00001f06 branch  0x00002933 
+ 00011767  0x00001f09 call  0x00002dee 
+ 00011768  0x00001f0a call  0x00002df3 
+ 00011769  0x00001f0b set1  0x00000000 , 0x00000015 
+ 00011770  0x00001f0c enable  0x0000001d 
+ 00011771  0x00001f0d enable  0x00000020 
+ 00011772  0x00001f0e disable  0x00000021 
+ 00011773  0x00001f0f call  0x000053c4 
+ 00011774  0x00001f10 call  0x0000322a 
+ 00011775  0x00001f12 iforce  0x00000009 
+ 00011776  0x00001f13 inject  0x00000003 , 0x00000020 
+ 00011777  0x00001f14 enable  0x00000009 
+ 00011778  0x00001f15 add  0x00000013 , 0x00000088 , 0x00000011 
+ 00011779  0x00001f16 ifetch  0x00000001 , 0x00000011 
+ 00011780  0x00001f18 iforce  0x00000039 
+ 00011781  0x00001f19 add  0x00000013 , 0x00000042 , 0x00000006 
+ 00011782  0x00001f1c ifetch  0x00000001 , 0x00000006 
+ 00011783  0x00001f1d inject  0x00000003 , 0x00000008 
+ 00011784  0x00001f1e loop  0x00002e06 
+ 00011785  0x00001f1f enable  0x00000008 
+ 00011786  0x00001f20 inject  0x00000003 , 0x00000018 
+ 00011787  0x00001f21 disable  0x00000008 
+ 00011788  0x00001f22 until  0x0000003e , 0x00000027 
+ 00011789  0x00001f23 bpatch  0x000000b7 , 0x00004016 
+ 00011790  0x00001f24 nop  0x00000064 
+ 00011791  0x00001f25 disable  0x0000001d 
+ 00011792  0x00001f26 rtn 
+ 00011793  0x00001f29 disable  0x0000002f 
+ 00011794  0x00001f2a force  0x00000000 , 0x00000015 
+ 00011795  0x00001f2b add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011796  0x00001f2c ifetcht  0x00000001 , 0x00000011 
+ 00011797  0x00001f2e call  0x0000291f 
+ 00011798  0x00001f2f call  0x00002924 
+ 00011799  0x00001f31 call  0x00002dee 
+ 00011800  0x00001f32 enable  0x0000000d 
+ 00011801  0x00001f33 enable  0x00000021 
+ 00011802  0x00001f34 disable  0x00000020 
+ 00011803  0x00001f35 call  0x000053c4 
+ 00011804  0x00001f36 call  0x0000322a 
+ 00011805  0x00001f38 iforce  0x00000009 
+ 00011806  0x00001f39 enable  0x00000010 
+ 00011807  0x00001f3a add  0x00000013 , 0x00000089 , 0x00000011 
+ 00011808  0x00001f3b ifetch  0x00000002 , 0x00000011 
+ 00011809  0x00001f3d iforce  0x0000001b 
+ 00011810  0x00001f3e correlate  0x0000003e , 0x00000003 
+ 00011811  0x00001f3f nbranch  0x00002e4d , 0x00000018 
+ 00011812  0x00001f40 enable  0x00000009 
+ 00011813  0x00001f41 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011814  0x00001f42 rshift3  0x0000000c , 0x0000003f 
+ 00011815  0x00001f43 add  0x00000013 , 0x00000000 , 0x00000005 
+ 00011816  0x00001f44 istore  0x00000001 , 0x00000005 
+ 00011817  0x00001f46 add  0x00000013 , 0x000000cd , 0x00000011 
+ 00011818  0x00001f47 ifetch  0x00000001 , 0x00000011 
+ 00011819  0x00001f49 beq  0x00000002 , 0x00002e33 
+ 00011820  0x00001f4a bpatch  0x000000b8 , 0x00004017 
+ 00011821  0x00001f4b add  0x00000013 , 0x00000000 , 0x00000011 
+ 00011822  0x00001f4c ifetch  0x00000001 , 0x00000011 
+ 00011823  0x00001f4e add  0x00000013 , 0x00000087 , 0x00000011 
+ 00011824  0x00001f4f ifetcht  0x00000001 , 0x00000011 
+ 00011825  0x00001f51 icompare  0x00000007 , 0x00000002 
+ 00011826  0x00001f52 nbranch  0x00002e45 , 0x00000001 
+ 00011827  0x00001f54 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011828  0x00001f55 rshift3  0x0000000c , 0x0000003f 
+ 00011829  0x00001f56 istore  0x00000001 , 0x00000005 
+ 00011830  0x00001f57 rshift3  0x0000003f , 0x0000003f 
+ 00011831  0x00001f58 and  0x0000003f , 0x0000001f , 0x00000039 
+ 00011832  0x00001f59 branch  0x00002e3d , 0x00000005 
+ 00011833  0x00001f5b parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011834  0x00001f5c rshift3  0x0000000c , 0x0000003f 
+ 00011835  0x00001f5d istore  0x00000001 , 0x00000005 
+ 00011836  0x00001f5e loop  0x00002e39 
+ 00011837  0x00001f60 parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00011838  0x00001f61 rshift32  0x0000003f , 0x0000003f 
+ 00011839  0x00001f62 rshift16  0x0000003f , 0x0000003f 
+ 00011840  0x00001f63 istore  0x00000003 , 0x00000005 
+ 00011841  0x00001f64 branch  0x00002e45 , 0x00000006 
+ 00011842  0x00001f65 enable  0x0000002f 
+ 00011843  0x00001f66 disable  0x0000000d 
+ 00011844  0x00001f67 rtn 
+ 00011845  0x00001f6b disable  0x0000001d 
+ 00011846  0x00001f6c disable  0x0000000d 
+ 00011847  0x00001f6d disable  0x00000009 
+ 00011848  0x00001f6e disable  0x00000007 
+ 00011849  0x00001f6f branch  0x000028f9 , 0x00000021 
+ 00011850  0x00001f70 until  0x0000003e , 0x00000027 
+ 00011851  0x00001f71 nop  0x00000064 
+ 00011852  0x00001f72 branch  0x000028f9 
+ 00011853  0x00001f75 call  0x00002e4f 
+ 00011854  0x00001f76 branch  0x00002e45 
+ 00011855  0x00001f79 call  0x000029bb 
+ 00011856  0x00001f7a rtn  0x00000034 
+ 00011857  0x00001f7b add  0x00000013 , 0x000000ea , 0x00000011 
+ 00011858  0x00001f7c ifetcht  0x00000001 , 0x00000011 
+ 00011859  0x00001f7e arg  0x00000d9e , 0x00000011 
+ 00011860  0x00001f80 call  0x00002e58 
+ 00011861  0x00001f81 add  0x00000013 , 0x000000ea , 0x00000005 
+ 00011862  0x00001f84 istoret  0x00000001 , 0x00000005 
+ 00011863  0x00001f85 rtn 
+ 00011864  0x00001f88 arg  0x000000ff , 0x00000012 
+ 00011865  0x00001f89 branch  0x00002e5a 
+ 00011866  0x00001f9c copy  0x00000011 , 0x0000003f 
+ 00011867  0x00001f9d iadd  0x00000002 , 0x00000005 
+ 00011868  0x00001f9e fetch  0x00000001 , 0x00000018 
+ 00011869  0x00001f9f istore  0x00000001 , 0x00000005 
+ 00011870  0x00001fa0 increase  0x00000001 , 0x00000002 
+ 00011871  0x00001fa1 copy  0x00000012 , 0x0000003f 
+ 00011872  0x00001fa2 iand_into  0x00000002 
+ 00011873  0x00001fa3 rtn 
+ 00011874  0x00001fa6 arg  0x00000000 , 0x00000002 
+ 00011875  0x00001fa7 copy  0x00000011 , 0x00000006 
+ 00011876  0x00001fa9 ifetch  0x00000001 , 0x00000006 
+ 00011877  0x00001faa iadd  0x00000002 , 0x00000002 
+ 00011878  0x00001fab loop  0x00002e64 
+ 00011879  0x00001fac rshift8  0x00000002 , 0x00000002 
+ 00011880  0x00001fad rtn 
+ 00011881  0x00001fb0 call  0x00002c7a 
+ 00011882  0x00001fb1 call  0x00002e9f 
+ 00011883  0x00001fb2 setarg  0x00000001 
+ 00011884  0x00001fb3 call  0x00003272 
+ 00011885  0x00001fb6 setarg  0x00000000 
+ 00011886  0x00001fb7 call  0x00002e73 
+ 00011887  0x00001fb9 istore  0x00000001 , 0x00000005 
+ 00011888  0x00001fbb rtn 
+ 00011889  0x00001fbe call  0x00003270 
+ 00011890  0x00001fc0 increase  0x00000001 , 0x0000003f 
+ 00011891  0x00001fc3 add  0x00000013 , 0x000000fc , 0x00000005 
+ 00011892  0x00001fc4 branch  0x000032b4 
+ 00011893  0x00001fc9 add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011894  0x00001fca ifetch  0x00000001 , 0x00000011 
+ 00011895  0x00001fcb increase  0x00000001 , 0x0000003f 
+ 00011896  0x00001fcc add  0x00000013 , 0x000000fd , 0x00000005 
+ 00011897  0x00001fcd branch  0x000032b4 
+ 00011898  0x00001fd0 bpatch  0x000000b9 , 0x00004017 
+ 00011899  0x00001fd1 call  0x00003270 
+ 00011900  0x00001fd3 sub  0x0000003f , 0x0000007c , 0x0000003e 
+ 00011901  0x00001fd4 rtn  0x00000002 
+ 00011902  0x00001fd5 add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011903  0x00001fd6 ifetcht  0x00000001 , 0x00000011 
+ 00011904  0x00001fd8 isub  0x00000002 , 0x00000002 
+ 00011905  0x00001fd9 call  0x00002e6d 
+ 00011906  0x00001fda setarg  0x00000102 
+ 00011907  0x00001fdb iadd  0x00000013 , 0x00000011 
+ 00011908  0x00001fdc ifetch  0x00000001 , 0x00000011 
+ 00011909  0x00001fde isub  0x00000002 , 0x0000003e 
+ 00011910  0x00001fdf nbranch  0x00002e8d , 0x00000002 
+ 00011911  0x00001fe0 setarg  0x00000103 
+ 00011912  0x00001fe1 iadd  0x00000013 , 0x00000011 
+ 00011913  0x00001fe2 ifetch  0x00000001 , 0x00000011 
+ 00011914  0x00001fe4 isub  0x00000002 , 0x0000003e 
+ 00011915  0x00001fe5 branch  0x00002e99 , 0x00000002 
+ 00011916  0x00001fe6 rtn 
+ 00011917  0x00001fe9 add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011918  0x00001fea ifetch  0x00000001 , 0x00000011 
+ 00011919  0x00001fec beq  0x00000002 , 0x00002e93 
+ 00011920  0x00001fed increase  0x00000001 , 0x0000003f 
+ 00011921  0x00001fee call  0x00003272 
+ 00011922  0x00001ff0 beq  0x00000001 , 0x00002e9f 
+ 00011923  0x00001ff2 setarg  0x0000000a 
+ 00011924  0x00001ff3 call  0x000032b0 
+ 00011925  0x00001ff5 setarg  0x00000000 
+ 00011926  0x00001ff6 call  0x000032b2 
+ 00011927  0x00001ff9 add  0x00000013 , 0x000000ff , 0x00000011 
+ 00011928  0x00001ffb branch  0x00002ea5 
+ 00011929  0x00001ffe add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011930  0x00001fff ifetch  0x00000001 , 0x00000011 
+ 00011931  0x00002001 beq  0x00000000 , 0x00002ea7 
+ 00011932  0x00002002 increase  0xffffffff , 0x0000003f 
+ 00011933  0x00002003 call  0x00003272 
+ 00011934  0x00002005 beq  0x00000000 , 0x00002ea7 
+ 00011935  0x0000200a setarg  0x00000005 
+ 00011936  0x0000200b call  0x000032b0 
+ 00011937  0x0000200d setarg  0x00000000 
+ 00011938  0x0000200e call  0x000032b2 
+ 00011939  0x00002011 setarg  0x00000100 
+ 00011940  0x00002013 iadd  0x00000013 , 0x00000011 
+ 00011941  0x00002015 ifetch  0x00000001 , 0x00000011 
+ 00011942  0x00002017 branch  0x0000326a 
+ 00011943  0x0000201c setarg  0x00000002 
+ 00011944  0x0000201d call  0x000032b0 
+ 00011945  0x0000201f setarg  0x00000000 
+ 00011946  0x00002020 call  0x000032b2 
+ 00011947  0x00002023 setarg  0x00000101 
+ 00011948  0x00002025 branch  0x00002ea4 
+ 00011949  0x00002034 set1  0x00000026 , 0x00000000 
+ 00011950  0x00002035 call  0x00002c83 
+ 00011951  0x00002038 setarg  0x00000001 
+ 00011952  0x00002039 branch  0x00003256 
+ 00011953  0x0000203c add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011954  0x0000203d ifetch  0x00000001 , 0x00000011 
+ 00011955  0x0000203f beq  0x00000001 , 0x00007fe7 
+ 00011956  0x00002040 call  0x00003253 
+ 00011957  0x00002042 beq  0x00000001 , 0x00002eb9 
+ 00011958  0x00002043 beq  0x00000002 , 0x00002ebd 
+ 00011959  0x00002044 beq  0x00000003 , 0x00002ec1 
+ 00011960  0x00002045 branch  0x00002a8c 
+ 00011961  0x00002048 setarg  0x00000011 
+ 00011962  0x00002049 call  0x00003256 
+ 00011963  0x0000204b jam  0x000000aa , 0x0000119e 
+ 00011964  0x0000204c branch  0x00002ec4 
+ 00011965  0x0000204e setarg  0x00000012 
+ 00011966  0x0000204f call  0x00003256 
+ 00011967  0x00002051 jam  0x00000055 , 0x0000119e 
+ 00011968  0x00002052 branch  0x00002ec4 
+ 00011969  0x00002054 setarg  0x00000013 
+ 00011970  0x00002055 call  0x00003256 
+ 00011971  0x00002057 jam  0x00000022 , 0x0000119e 
+ 00011972  0x00002059 call  0x0000323a 
+ 00011973  0x0000205b and_into  0x00000007 , 0x0000003f 
+ 00011974  0x0000205c store  0x00000001 , 0x0000119f 
+ 00011975  0x0000205d call  0x00003224 
+ 00011976  0x0000205f store  0x00000004 , 0x000011a0 
+ 00011977  0x00002061 jam  0x00000000 , 0x000011a4 
+ 00011978  0x00002062 arg  0x0000119e , 0x00000011 
+ 00011979  0x00002063 arg  0x00000007 , 0x00000002 
+ 00011980  0x00002064 call  0x00002d4c 
+ 00011981  0x00002065 call  0x00002d53 
+ 00011982  0x00002066 call  0x00002d33 
+ 00011983  0x00002067 branch  0x00007fe7 
+ 00011984  0x0000206a call  0x00003253 
+ 00011985  0x0000206c rtneq  0x000000ff 
+ 00011986  0x0000206d beq  0x00000011 , 0x00002ed6 
+ 00011987  0x0000206e beq  0x00000012 , 0x00002ed9 
+ 00011988  0x0000206f beq  0x00000013 , 0x00002edc 
+ 00011989  0x00002070 rtn 
+ 00011990  0x00002073 setarg  0x00000002 
+ 00011991  0x00002074 call  0x00003256 
+ 00011992  0x00002076 branch  0x00002d9f 
+ 00011993  0x00002078 setarg  0x00000003 
+ 00011994  0x00002079 call  0x00003256 
+ 00011995  0x0000207b branch  0x00002d9f 
+ 00011996  0x0000207d setarg  0x000000ff 
+ 00011997  0x0000207e call  0x00003256 
+ 00011998  0x00002080 jam  0x00000039 , 0x00000a99 
+ 00011999  0x00002081 call  0x00007d86 
+ 00012000  0x00002082 add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012001  0x00002083 ifetch  0x00000004 , 0x00000011 
+ 00012002  0x00002085 call  0x0000322c 
+ 00012003  0x00002087 branch  0x00002d9f 
+ 00012004  0x0000208a set0  0x00000026 , 0x00000000 
+ 00012005  0x0000208b call  0x00002f08 
+ 00012006  0x0000208c call  0x00002f22 
+ 00012007  0x0000208e call  0x00003263 
+ 00012008  0x00002090 nop  0x000007d0 
+ 00012009  0x00002091 call  0x00003261 
+ 00012010  0x00002092 beq  0x000000ff , 0x00002dd4 
+ 00012011  0x00002093 call  0x00002da4 
+ 00012012  0x00002094 nbranch  0x00002efa , 0x00000018 
+ 00012013  0x00002095 nbranch  0x00002efa , 0x0000002f 
+ 00012014  0x00002096 call  0x00002dd6 
+ 00012015  0x00002097 call  0x00002c7a 
+ 00012016  0x00002098 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00012017  0x00002099 ifetcht  0x00000004 , 0x00000011 
+ 00012018  0x0000209a call  0x000030be 
+ 00012019  0x0000209b branch  0x00002ead , 0x00000005 
+ 00012020  0x0000209c call  0x00002c7a 
+ 00012021  0x0000209d add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012022  0x0000209e ifetch  0x00000004 , 0x00000011 
+ 00012023  0x0000209f beq  0x00000000 , 0x00002ee7 
+ 00012024  0x000020a0 call  0x0000322c 
+ 00012025  0x000020a1 branch  0x00002f1c 
+ 00012026  0x000020a4 call  0x00003261 
+ 00012027  0x000020a5 increase  0x00000001 , 0x0000003f 
+ 00012028  0x000020a6 call  0x00003264 
+ 00012029  0x000020a8 call  0x00002f04 
+ 00012030  0x000020a9 increase  0x00000001 , 0x0000003f 
+ 00012031  0x000020aa and_into  0x00000001 , 0x0000003f 
+ 00012032  0x000020ab call  0x00002f06 
+ 00012033  0x000020ac beq  0x00000000 , 0x00002f0c 
+ 00012034  0x000020ad beq  0x00000001 , 0x00002f0e 
+ 00012035  0x000020ae rtn 
+ 00012036  0x000020b1 setarg  0x0000018b 
+ 00012037  0x000020b2 branch  0x000032d0 
+ 00012038  0x000020b4 arg  0x0000018b , 0x00000011 
+ 00012039  0x000020b5 branch  0x000032b3 
+ 00012040  0x000020b8 call  0x00003267 
+ 00012041  0x000020b9 call  0x00003224 
+ 00012042  0x000020ba call  0x0000322c 
+ 00012043  0x000020bb branch  0x00002c8a 
+ 00012044  0x000020be call  0x00002f08 
+ 00012045  0x000020bf branch  0x00002ee8 
+ 00012046  0x000020c2 call  0x00002c83 
+ 00012047  0x000020c3 branch  0x00002ee8 
+ 00012048  0x000020c7 set0  0x00000026 , 0x00000000 
+ 00012049  0x000020c8 call  0x00002c8a 
+ 00012050  0x000020c9 call  0x00003253 
+ 00012051  0x000020cb rtnne  0x000000ff 
+ 00012052  0x000020cc call  0x00002f22 
+ 00012053  0x000020cd call  0x00003263 
+ 00012054  0x000020d0 nop  0x000007d0 
+ 00012055  0x000020d1 call  0x00003261 
+ 00012056  0x000020d3 beq  0x000000ff , 0x00002dd4 
+ 00012057  0x000020d4 call  0x00002da4 
+ 00012058  0x000020d5 nbranch  0x00002f27 , 0x00000018 
+ 00012059  0x000020d6 nbranch  0x00002f27 , 0x0000002f 
+ 00012060  0x000020d8 set1  0x00000026 , 0x00000000 
+ 00012061  0x000020d9 call  0x00003263 
+ 00012062  0x000020da setarg  0x000000ff 
+ 00012063  0x000020db call  0x00003256 
+ 00012064  0x000020de jam  0x0000003c , 0x00000a99 
+ 00012065  0x000020df branch  0x00007d86 
+ 00012066  0x000020e2 set1  0x00000027 , 0x00000000 
+ 00012067  0x000020e3 jam  0x000000ff , 0x0000119e 
+ 00012068  0x000020e4 call  0x0000323a 
+ 00012069  0x000020e6 call  0x00002d77 
+ 00012070  0x000020e7 branch  0x00002d53 
+ 00012071  0x000020ea call  0x00003261 
+ 00012072  0x000020ec increase  0x00000001 , 0x0000003f 
+ 00012073  0x000020ed call  0x00003264 
+ 00012074  0x000020ef call  0x00002c8a 
+ 00012075  0x000020f0 branch  0x00002f16 
+ 00012076  0x000020f3 call  0x00003267 
+ 00012077  0x000020f6 setarg  0x000000ff 
+ 00012078  0x000020f7 call  0x00003256 
+ 00012079  0x000020f9 branch  0x00002f10 
+ 00012080  0x00002103 bpatch  0x000000ba , 0x00004017 
+ 00012081  0x00002104 call  0x00002c7a 
+ 00012082  0x00002105 setarg  0x000031b0 
+ 00012083  0x00002106 add  0x00000013 , 0x000000de , 0x00000005 
+ 00012084  0x00002107 istore  0x00000002 , 0x00000005 
+ 00012085  0x00002109 call  0x00002f3d 
+ 00012086  0x0000210a call  0x000048ea 
+ 00012087  0x0000210b call  0x000032b6 
+ 00012088  0x0000210d bpatch  0x000000bb , 0x00004017 
+ 00012089  0x0000210e beq  0x00000000 , 0x00003055 
+ 00012090  0x0000210f beq  0x00000001 , 0x00002f45 
+ 00012091  0x00002110 beq  0x0000000f , 0x00002f41 
+ 00012092  0x00002111 branch  0x00002a8c 
+ 00012093  0x00002114 call  0x0000326c 
+ 00012094  0x00002115 arg  0x00000080 , 0x00000039 
+ 00012095  0x00002116 arg  0x00000d9e , 0x00000005 
+ 00012096  0x00002117 branch  0x00007ec6 
+ 00012097  0x0000211a call  0x00002f4c 
+ 00012098  0x0000211c call  0x00002f4f 
+ 00012099  0x0000211d call  0x000048d3 
+ 00012100  0x0000211e branch  0x00002f42 
+ 00012101  0x00002121 bpatch  0x000000bc , 0x00004017 
+ 00012102  0x00002122 call  0x00002f4c 
+ 00012103  0x00002124 call  0x00002f4f 
+ 00012104  0x00002125 call  0x00002fbd 
+ 00012105  0x00002126 call  0x000048d3 
+ 00012106  0x00002127 call  0x00003019 
+ 00012107  0x00002128 branch  0x00002f47 
+ 00012108  0x0000212e call  0x00003291 
+ 00012109  0x0000212f call  0x00003296 
+ 00012110  0x00002130 branch  0x00003299 
+ 00012111  0x00002133 call  0x0000328f 
+ 00012112  0x00002135 rtnne  0x00000000 
+ 00012113  0x00002137 call  0x00002f55 
+ 00012114  0x00002138 call  0x00002f65 
+ 00012115  0x00002139 call  0x0000316b 
+ 00012116  0x0000213a branch  0x00002f96 
+ 00012117  0x0000213d call  0x00003294 
+ 00012118  0x0000213f rtnbit1  0x00000000 
+ 00012119  0x00002140 set1  0x00000000 , 0x0000003f 
+ 00012120  0x00002141 call  0x00003297 
+ 00012121  0x00002143 call  0x00003267 
+ 00012122  0x00002146 call  0x00003299 
+ 00012123  0x00002148 jam  0x00000000 , 0x00000d38 
+ 00012124  0x00002149 call  0x0000324f 
+ 00012125  0x0000214b call  0x00002f61 
+ 00012126  0x0000214d add  0x00000013 , 0x00000000 , 0x00000005 
+ 00012127  0x0000214f arg  0x00000042 , 0x00000039 
+ 00012128  0x00002150 branch  0x00007ed4 
+ 00012129  0x00002153 call  0x00003231 
+ 00012130  0x00002155 call  0x0000327d 
+ 00012131  0x00002157 call  0x0000322c 
+ 00012132  0x00002159 branch  0x00002c8a 
+ 00012133  0x0000215c bpatch  0x000000bd , 0x00004017 
+ 00012134  0x0000215d call  0x0000324c 
+ 00012135  0x0000215f beq  0x00000001 , 0x00002f8d 
+ 00012136  0x00002160 call  0x00003245 
+ 00012137  0x00002162 beq  0x00000001 , 0x00002c8a 
+ 00012138  0x00002163 setarg  0x00000136 
+ 00012139  0x00002164 iadd  0x00000013 , 0x00000011 
+ 00012140  0x00002165 ifetcht  0x00000004 , 0x00000011 
+ 00012141  0x00002167 copy  0x00000022 , 0x0000003f 
+ 00012142  0x00002168 isub  0x00000002 , 0x0000003e 
+ 00012143  0x00002169 ncall  0x00002d18 , 0x00000002 
+ 00012144  0x0000216a copy  0x0000003f , 0x00000012 
+ 00012145  0x0000216b setarg  0x00000136 
+ 00012146  0x0000216c iadd  0x00000013 , 0x00000011 
+ 00012147  0x0000216d ifetch  0x00000004 , 0x00000011 
+ 00012148  0x0000216e copy  0x0000003f , 0x00000002 
+ 00012149  0x00002170 setarg  0x0000013a 
+ 00012150  0x00002171 iadd  0x00000013 , 0x00000011 
+ 00012151  0x00002172 copy  0x00000002 , 0x0000003f 
+ 00012152  0x00002173 ifetcht  0x00000001 , 0x00000011 
+ 00012153  0x00002175 iadd  0x00000002 , 0x00000002 
+ 00012154  0x00002176 copy  0x00000012 , 0x0000003f 
+ 00012155  0x00002177 isub  0x00000002 , 0x0000003e 
+ 00012156  0x00002178 nrtn  0x00000002 
+ 00012157  0x00002179 set0  0x0000001c , 0x0000003f 
+ 00012158  0x0000217a setarg  0x00000136 
+ 00012159  0x0000217b iadd  0x00000013 , 0x00000005 
+ 00012160  0x0000217c istore  0x00000004 , 0x00000005 
+ 00012161  0x0000217f call  0x00002c8a 
+ 00012162  0x00002180 call  0x00003278 
+ 00012163  0x00002182 increase  0x00000001 , 0x0000003f 
+ 00012164  0x00002183 call  0x0000327b 
+ 00012165  0x00002185 rtnne  0x00000002 
+ 00012166  0x00002186 call  0x0000327a 
+ 00012167  0x0000218a branch  0x0000324f 
+ 00012168  0x0000218d copy  0x00000022 , 0x0000003f 
+ 00012169  0x0000218e arg  0x00000136 , 0x00000011 
+ 00012170  0x0000218f call  0x000032bf 
+ 00012171  0x00002190 istore  0x00000004 , 0x00000005 
+ 00012172  0x00002194 branch  0x0000327a 
+ 00012173  0x00002197 arg  0x00000d9e , 0x00000011 
+ 00012174  0x00002198 call  0x00002f94 
+ 00012175  0x00002199 add  0x00000013 , 0x000000eb , 0x00000005 
+ 00012176  0x0000219a istoret  0x00000001 , 0x00000005 
+ 00012177  0x0000219c sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012178  0x0000219d nrtn  0x00000002 
+ 00012179  0x0000219e branch  0x00002c8a 
+ 00012180  0x000021a1 arg  0x00000100 , 0x00000039 
+ 00012181  0x000021a2 branch  0x00002e62 
+ 00012182  0x000021a5 call  0x00002f99 
+ 00012183  0x000021a6 call  0x00002fa5 
+ 00012184  0x000021a7 branch  0x00002fb1 
+ 00012185  0x000021aa setarg  0x00000180 
+ 00012186  0x000021ab call  0x000032d0 
+ 00012187  0x000021ad rtn  0x00000034 
+ 00012188  0x000021ae arg  0x0000000b , 0x00000007 
+ 00012189  0x000021af call  0x00007f16 
+ 00012190  0x000021b0 nrtn  0x00000034 
+ 00012191  0x000021b1 call  0x000032a7 
+ 00012192  0x000021b4 setarg  0x00000001 
+ 00012193  0x000021b5 store  0x00000001 , 0x00000d54 
+ 00012194  0x000021b6 setarg  0x00000000 
+ 00012195  0x000021b7 istore  0x00000007 , 0x00000005 
+ 00012196  0x000021b8 branch  0x000031b8 
+ 00012197  0x000021bb setarg  0x0000017e 
+ 00012198  0x000021bc call  0x000032d0 
+ 00012199  0x000021be rtn  0x00000034 
+ 00012200  0x000021bf arg  0x0000000e , 0x00000007 
+ 00012201  0x000021c0 call  0x00007f16 
+ 00012202  0x000021c1 nrtn  0x00000034 
+ 00012203  0x000021c2 call  0x000032aa 
+ 00012204  0x000021c5 arg  0x00000d64 , 0x00000005 
+ 00012205  0x000021c6 arg  0x00000002 , 0x00000039 
+ 00012206  0x000021c7 call  0x00007ec6 
+ 00012207  0x000021c8 jam  0x00000000 , 0x00000d64 
+ 00012208  0x000021c9 branch  0x000031ed 
+ 00012209  0x000021cc setarg  0x0000017f 
+ 00012210  0x000021cd call  0x000032d0 
+ 00012211  0x000021cf rtn  0x00000034 
+ 00012212  0x000021d0 arg  0x0000000c , 0x00000007 
+ 00012213  0x000021d1 call  0x00007f16 
+ 00012214  0x000021d2 nrtn  0x00000034 
+ 00012215  0x000021d3 call  0x000032ad 
+ 00012216  0x000021d6 arg  0x00000d74 , 0x00000005 
+ 00012217  0x000021d7 arg  0x00000002 , 0x00000039 
+ 00012218  0x000021d8 call  0x00007ec6 
+ 00012219  0x000021d9 jam  0x00000003 , 0x00000d74 
+ 00012220  0x000021da branch  0x00003207 
+ 00012221  0x000021dd call  0x0000328f 
+ 00012222  0x000021df rtnne  0x00000001 
+ 00012223  0x000021e0 call  0x00002fc1 
+ 00012224  0x000021e1 branch  0x00002fcb 
+ 00012225  0x000021e4 call  0x00003294 
+ 00012226  0x000021e6 rtnbit1  0x00000001 
+ 00012227  0x000021e7 set1  0x00000001 , 0x0000003f 
+ 00012228  0x000021e8 call  0x00003297 
+ 00012229  0x000021ea call  0x0000329c 
+ 00012230  0x000021ec call  0x00002c83 
+ 00012231  0x000021ed setarg  0x00000000 
+ 00012232  0x000021ee arg  0x00000106 , 0x00000011 
+ 00012233  0x000021ef call  0x000032bf 
+ 00012234  0x000021f1 branch  0x000032c5 
+ 00012235  0x000021f4 call  0x0000316e 
+ 00012236  0x000021f5 nbranch  0x00002f5e , 0x0000002f 
+ 00012237  0x000021f6 add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012238  0x000021f7 setarg  0x00000109 
+ 00012239  0x000021f8 iadd  0x00000013 , 0x00000005 
+ 00012240  0x000021f9 arg  0x00000008 , 0x00000039 
+ 00012241  0x000021fa call  0x00007f01 
+ 00012242  0x000021fb setarg  0x0000010b 
+ 00012243  0x000021fc call  0x000032d0 
+ 00012244  0x000021fd beq  0x000000aa , 0x00002fd9 
+ 00012245  0x000021fe beq  0x00000055 , 0x00002fed 
+ 00012246  0x000021ff beq  0x00000022 , 0x00003001 
+ 00012247  0x00002200 beq  0x000000ff , 0x00003212 
+ 00012248  0x00002201 branch  0x00002f5e 
+ 00012249  0x00002204 call  0x000032bd 
+ 00012250  0x00002205 beq  0x00000001 , 0x00002fdd 
+ 00012251  0x00002206 beq  0x00000002 , 0x00002fe8 
+ 00012252  0x00002207 rtn 
+ 00012253  0x00002209 setarg  0x00000001 
+ 00012254  0x0000220a call  0x00002ff7 
+ 00012255  0x0000220d setarg  0x00000001 
+ 00012256  0x0000220e call  0x00003289 
+ 00012257  0x00002211 setarg  0x00000080 
+ 00012258  0x00002212 arg  0x00000130 , 0x00000011 
+ 00012259  0x00002213 call  0x000032b3 
+ 00012260  0x00002215 call  0x0000327d 
+ 00012261  0x00002217 arg  0x00000131 , 0x00000011 
+ 00012262  0x00002218 call  0x000032bf 
+ 00012263  0x0000221a branch  0x0000322d 
+ 00012264  0x0000221d setarg  0x00000001 
+ 00012265  0x0000221e call  0x00002fff 
+ 00012266  0x00002221 setarg  0x00000002 
+ 00012267  0x00002222 call  0x00003289 
+ 00012268  0x00002224 branch  0x00002fe1 
+ 00012269  0x00002227 call  0x000032bd 
+ 00012270  0x00002228 beq  0x00000001 , 0x00002ff1 
+ 00012271  0x00002229 beq  0x00000002 , 0x00002ff9 
+ 00012272  0x0000222a rtn 
+ 00012273  0x0000222c call  0x00002fdf 
+ 00012274  0x0000222d setarg  0x00000106 
+ 00012275  0x0000222e call  0x000032d0 
+ 00012276  0x00002230 beq  0x00000001 , 0x00002ff6 
+ 00012277  0x00002231 rtn 
+ 00012278  0x00002233 setarg  0x00000002 
+ 00012279  0x00002236 arg  0x00000106 , 0x00000011 
+ 00012280  0x00002237 branch  0x000032b3 
+ 00012281  0x0000223a call  0x00002fea 
+ 00012282  0x0000223b setarg  0x00000107 
+ 00012283  0x0000223c call  0x000032d0 
+ 00012284  0x0000223e beq  0x00000001 , 0x00002ffe 
+ 00012285  0x0000223f rtn 
+ 00012286  0x00002241 setarg  0x00000002 
+ 00012287  0x00002244 arg  0x00000107 , 0x00000011 
+ 00012288  0x00002245 branch  0x000032b3 
+ 00012289  0x00002248 call  0x000032bd 
+ 00012290  0x00002249 beq  0x00000001 , 0x00003005 
+ 00012291  0x0000224a beq  0x00000002 , 0x00003011 
+ 00012292  0x0000224b rtn 
+ 00012293  0x0000224d setarg  0x00000106 
+ 00012294  0x0000224e call  0x000032d0 
+ 00012295  0x00002250 beq  0x00000002 , 0x00003009 
+ 00012296  0x00002251 rtn 
+ 00012297  0x00002253 call  0x0000328b 
+ 00012298  0x00002255 or_into  0x00000001 , 0x0000003f 
+ 00012299  0x00002256 call  0x0000328d 
+ 00012300  0x00002259 setarg  0x00000000 
+ 00012301  0x0000225a setarg  0x00000106 
+ 00012302  0x0000225b iadd  0x00000013 , 0x00000005 
+ 00012303  0x0000225c istore  0x00000002 , 0x00000005 
+ 00012304  0x0000225d branch  0x00002f5e 
+ 00012305  0x00002260 setarg  0x00000107 
+ 00012306  0x00002261 call  0x000032d0 
+ 00012307  0x00002263 bne  0x00000000 , 0x00003015 
+ 00012308  0x00002264 rtn 
+ 00012309  0x00002266 call  0x0000328b 
+ 00012310  0x00002268 or_into  0x00000002 , 0x0000003f 
+ 00012311  0x00002269 call  0x0000328d 
+ 00012312  0x0000226b branch  0x0000300c 
+ 00012313  0x0000226f fetch  0x00000001 , 0x00000d50 
+ 00012314  0x00002270 rtn  0x00000034 
+ 00012315  0x00002271 jam  0x00000000 , 0x00000d50 
+ 00012316  0x00002272 fetch  0x00000002 , 0x00000d4e 
+ 00012317  0x00002273 arg  0x000002ba , 0x00000002 
+ 00012318  0x00002274 isub  0x00000002 , 0x0000003e 
+ 00012319  0x00002275 nrtn  0x00000005 
+ 00012320  0x00002277 fetch  0x00000001 , 0x00000cb6 
+ 00012321  0x00002278 rtnne  0x000000ba 
+ 00012322  0x00002279 fetch  0x00000001 , 0x00000cb7 
+ 00012323  0x0000227a bpatch  0x000000be , 0x00004017 
+ 00012324  0x0000227b beq  0x000000a0 , 0x0000303b 
+ 00012325  0x0000227c beq  0x000000a1 , 0x0000302c 
+ 00012326  0x0000227d beq  0x000000a6 , 0x00003041 
+ 00012327  0x0000227e beq  0x000000a7 , 0x00003043 
+ 00012328  0x0000227f beq  0x000000a9 , 0x00003049 
+ 00012329  0x00002280 beq  0x000000b0 , 0x0000304d 
+ 00012330  0x00002282 jam  0x00000000 , 0x00000d42 
+ 00012331  0x00002283 rtn 
+ 00012332  0x00002285 fetch  0x00000001 , 0x00000cb8 
+ 00012333  0x00002286 beq  0x00000001 , 0x00003031 
+ 00012334  0x00002287 beq  0x00000084 , 0x00003034 
+ 00012335  0x00002288 beq  0x000000a7 , 0x00003039 
+ 00012336  0x00002289 branch  0x0000302a 
+ 00012337  0x0000228b call  0x0000328b 
+ 00012338  0x0000228d store  0x00000001 , 0x00000cf7 
+ 00012339  0x0000228e branch  0x0000303f 
+ 00012340  0x00002290 call  0x00003291 
+ 00012341  0x00002292 call  0x00003296 
+ 00012342  0x00002294 call  0x0000328b 
+ 00012343  0x00002296 store  0x00000001 , 0x00000cf7 
+ 00012344  0x00002297 branch  0x0000303f 
+ 00012345  0x0000229b jam  0x000000a1 , 0x00000cf7 
+ 00012346  0x0000229c branch  0x0000303f 
+ 00012347  0x0000229f fetch  0x00000001 , 0x00000cb8 
+ 00012348  0x000022a0 beq  0x00000081 , 0x0000303e 
+ 00012349  0x000022a2 branch  0x0000302a 
+ 00012350  0x000022a6 call  0x00003090 
+ 00012351  0x000022a8 jam  0x00000001 , 0x00000d42 
+ 00012352  0x000022a9 rtn 
+ 00012353  0x000022af jam  0x00000015 , 0x00000cf7 
+ 00012354  0x000022b0 branch  0x0000303f 
+ 00012355  0x000022b3 call  0x0000328f 
+ 00012356  0x000022b5 beq  0x00000000 , 0x00003047 
+ 00012357  0x000022b6 beq  0x00000001 , 0x00003039 
+ 00012358  0x000022b8 rtn 
+ 00012359  0x000022ba jam  0x000000a0 , 0x00000cf7 
+ 00012360  0x000022bb branch  0x0000303f 
+ 00012361  0x000022c1 jam  0x00000000 , 0x00000cf7 
+ 00012362  0x000022c2 jam  0x00000000 , 0x00000cf8 
+ 00012363  0x000022c3 jam  0x00000001 , 0x00000cf9 
+ 00012364  0x000022c4 branch  0x0000303f 
+ 00012365  0x000022c8 call  0x0000329c 
+ 00012366  0x000022c9 fetch  0x00000001 , 0x00000cb8 
+ 00012367  0x000022ca increase  0x00000002 , 0x0000003f 
+ 00012368  0x000022cb copy  0x0000003f , 0x00000039 
+ 00012369  0x000022cc arg  0x00000cb6 , 0x00000006 
+ 00012370  0x000022cd setarg  0x0000013c 
+ 00012371  0x000022ce iadd  0x00000013 , 0x00000005 
+ 00012372  0x000022cf branch  0x00007f01 
+ 00012373  0x000022d3 bpatch  0x000000bf , 0x00004017 
+ 00012374  0x000022d4 call  0x0000307d 
+ 00012375  0x000022d6 call  0x00002c7f 
+ 00012376  0x000022d7 call  0x000048d3 
+ 00012377  0x000022d8 branch  0x00003057 
+ 00012378  0x000022db call  0x0000328f 
+ 00012379  0x000022dd rtnne  0x00000000 
+ 00012380  0x000022de call  0x00002f51 
+ 00012381  0x000022df branch  0x00003098 
+ 00012382  0x000022e2 call  0x0000328f 
+ 00012383  0x000022e4 rtnne  0x00000001 
+ 00012384  0x000022e5 call  0x00002fc1 
+ 00012385  0x000022e6 call  0x00002fcb 
+ 00012386  0x000022e7 call  0x0000328b 
+ 00012387  0x000022e9 rtn  0x00000034 
+ 00012388  0x000022ea call  0x00003286 
+ 00012389  0x000022ec call  0x00002f4c 
+ 00012390  0x000022ed call  0x00003093 
+ 00012391  0x000022ef setarg  0x00000000 
+ 00012392  0x000022f0 add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012393  0x000022f2 branch  0x0000322d 
+ 00012394  0x000022f5 call  0x00007fe9 
+ 00012395  0x000022f6 add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012396  0x000022f7 ifetcht  0x00000004 , 0x00000011 
+ 00012397  0x000022f9 copy  0x00000022 , 0x0000003f 
+ 00012398  0x000022fa isub  0x00000002 , 0x0000003e 
+ 00012399  0x000022fb ncall  0x00002d18 , 0x00000002 
+ 00012400  0x000022fc copy  0x0000003f , 0x00000012 
+ 00012401  0x000022fd add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012402  0x000022fe ifetch  0x00000004 , 0x00000011 
+ 00012403  0x00002300 add  0x00000013 , 0x000000ab , 0x00000011 
+ 00012404  0x00002301 ifetcht  0x00000001 , 0x00000011 
+ 00012405  0x00002303 iadd  0x00000002 , 0x00000002 
+ 00012406  0x00002304 copy  0x00000012 , 0x0000003f 
+ 00012407  0x00002305 isub  0x00000002 , 0x0000003e 
+ 00012408  0x00002306 nrtn  0x00000002 
+ 00012409  0x00002307 set0  0x0000001c , 0x0000003f 
+ 00012410  0x00002308 add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012411  0x00002309 istore  0x00000004 , 0x00000005 
+ 00012412  0x0000230b branch  0x00007fe7 
+ 00012413  0x0000230e setarg  0x00000001 
+ 00012414  0x0000230f call  0x00003287 
+ 00012415  0x00002311 call  0x00003283 
+ 00012416  0x00002313 setarg  0x000000ff 
+ 00012417  0x00002314 add  0x00000013 , 0x000000ab , 0x00000005 
+ 00012418  0x00002315 istore  0x00000001 , 0x00000005 
+ 00012419  0x00002317 branch  0x00003067 
+ 00012420  0x0000231a setarg  0x0000015c 
+ 00012421  0x0000231b call  0x000032d0 
+ 00012422  0x0000231d rtn  0x00000034 
+ 00012423  0x0000231e call  0x0000306a 
+ 00012424  0x0000231f nrtn  0x00000028 
+ 00012425  0x00002320 call  0x00003281 
+ 00012426  0x00002322 increase  0x00000001 , 0x0000003f 
+ 00012427  0x00002323 and_into  0x00000001 , 0x0000003f 
+ 00012428  0x00002324 call  0x00003284 
+ 00012429  0x00002326 beq  0x00000000 , 0x00002f4c 
+ 00012430  0x00002327 beq  0x00000001 , 0x00003090 
+ 00012431  0x00002328 rtn 
+ 00012432  0x0000232e setarg  0x00000001 
+ 00012433  0x0000232f call  0x00003292 
+ 00012434  0x00002330 branch  0x00003296 
+ 00012435  0x00002333 setarg  0x00000001 
+ 00012436  0x00002334 call  0x000032a5 
+ 00012437  0x00002337 setarg  0x00000280 
+ 00012438  0x00002338 arg  0x00000008 , 0x00000007 
+ 00012439  0x00002339 branch  0x00007f08 
+ 00012440  0x0000233c call  0x000032a2 
+ 00012441  0x0000233e rtn  0x00000034 
+ 00012442  0x0000233f arg  0x00000008 , 0x00000007 
+ 00012443  0x00002340 call  0x00007f16 
+ 00012444  0x00002341 nrtn  0x00000034 
+ 00012445  0x00002342 call  0x000032a4 
+ 00012446  0x00002345 setarg  0x00000007 
+ 00012447  0x00002346 call  0x00003292 
+ 00012448  0x00002348 call  0x00003296 
+ 00012449  0x0000234a branch  0x00002f5e 
+ 00012450  0x0000234d bpatch  0x000000c0 , 0x00004018 
+ 00012451  0x0000234e call  0x0000328f 
+ 00012452  0x00002350 rtnne  0x00000007 
+ 00012453  0x00002351 call  0x000030cb 
+ 00012454  0x00002352 call  0x000030e0 
+ 00012455  0x00002353 call  0x0000316e 
+ 00012456  0x00002354 nbranch  0x00002f5e , 0x0000002f 
+ 00012457  0x00002356 call  0x000030bc 
+ 00012458  0x00002357 call  0x00003172 , 0x00000005 
+ 00012459  0x0000235b call  0x00002f4c 
+ 00012460  0x0000235c call  0x00003294 
+ 00012461  0x0000235e set1  0x00000000 , 0x0000003f 
+ 00012462  0x0000235f call  0x00003297 
+ 00012463  0x00002361 call  0x00002f5e 
+ 00012464  0x00002362 call  0x00003093 
+ 00012465  0x00002363 call  0x000030bc 
+ 00012466  0x00002364 branch  0x000030c1 , 0x00000005 
+ 00012467  0x00002365 setarg  0x00000164 
+ 00012468  0x00002366 call  0x000032d3 
+ 00012469  0x00002368 call  0x000030be 
+ 00012470  0x00002369 branch  0x000030c5 , 0x00000005 
+ 00012471  0x0000236a setarg  0x00000160 
+ 00012472  0x0000236b call  0x000032d3 
+ 00012473  0x0000236d call  0x000030be 
+ 00012474  0x0000236e branch  0x000030c8 , 0x00000005 
+ 00012475  0x0000236f rtn 
+ 00012476  0x00002372 setarg  0x0000012b 
+ 00012477  0x00002373 call  0x000032d3 
+ 00012478  0x00002376 call  0x0000322a 
+ 00012479  0x00002378 isub  0x00000002 , 0x0000003e 
+ 00012480  0x00002379 rtn 
+ 00012481  0x0000237c setarg  0x00000182 
+ 00012482  0x0000237d call  0x000032d0 
+ 00012483  0x00002381 add  0x00000013 , 0x00000091 , 0x00000005 
+ 00012484  0x00002382 branch  0x000032b4 
+ 00012485  0x00002385 setarg  0x00000185 
+ 00012486  0x00002386 call  0x000032d0 
+ 00012487  0x00002388 branch  0x000030c3 
+ 00012488  0x0000238a setarg  0x00000188 
+ 00012489  0x0000238b call  0x000032d0 
+ 00012490  0x0000238d branch  0x000030c3 
+ 00012491  0x00002390 call  0x00003294 
+ 00012492  0x00002392 rtnbit1  0x00000007 
+ 00012493  0x00002393 set1  0x00000007 , 0x0000003f 
+ 00012494  0x00002394 call  0x00003297 
+ 00012495  0x00002396 call  0x00003283 
+ 00012496  0x00002398 call  0x0000329c 
+ 00012497  0x0000239a setarg  0x00000000 
+ 00012498  0x0000239b add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012499  0x0000239c istore  0x00000003 , 0x00000005 
+ 00012500  0x0000239e arg  0x00000183 , 0x00000011 
+ 00012501  0x0000239f call  0x000032bf 
+ 00012502  0x000023a0 istore  0x00000007 , 0x00000005 
+ 00012503  0x000023a3 call  0x000030bc 
+ 00012504  0x000023a4 nrtn  0x00000005 
+ 00012505  0x000023a5 add  0x00000013 , 0x00000091 , 0x00000011 
+ 00012506  0x000023a6 ifetch  0x00000001 , 0x00000011 
+ 00012507  0x000023a8 arg  0x00000182 , 0x00000011 
+ 00012508  0x000023a9 call  0x000032b3 
+ 00012509  0x000023ab add  0x00000013 , 0x00000090 , 0x00000011 
+ 00012510  0x000023ac ifetch  0x00000001 , 0x00000011 
+ 00012511  0x000023af branch  0x0000314a 
+ 00012512  0x000023b2 bpatch  0x000000c1 , 0x00004018 
+ 00012513  0x000023b3 call  0x00003281 
+ 00012514  0x000023b5 increase  0x00000001 , 0x0000003f 
+ 00012515  0x000023b6 and_into  0x00000003 , 0x0000003f 
+ 00012516  0x000023b7 call  0x00003284 
+ 00012517  0x000023ba beq  0x00000000 , 0x0000310e 
+ 00012518  0x000023bb beq  0x00000001 , 0x00003132 
+ 00012519  0x000023bc beq  0x00000002 , 0x000030ea 
+ 00012520  0x000023bd beq  0x00000003 , 0x00003132 
+ 00012521  0x000023be rtn 
+ 00012522  0x000023c1 call  0x00002fdf 
+ 00012523  0x000023c2 setarg  0x00000160 
+ 00012524  0x000023c3 call  0x0000327e 
+ 00012525  0x000023c5 branch  0x000030e0 , 0x00000034 
+ 00012526  0x000023c6 call  0x0000322c 
+ 00012527  0x000023c8 setarg  0x00000189 
+ 00012528  0x000023c9 call  0x000032d0 
+ 00012529  0x000023cb call  0x00003108 , 0x00000034 
+ 00012530  0x000023cc setarg  0x00000187 
+ 00012531  0x000023cd call  0x000032d0 
+ 00012532  0x000023cf call  0x0000322f 
+ 00012533  0x000023d1 add  0x00000013 , 0x000000f7 , 0x00000011 
+ 00012534  0x000023d2 ifetcht  0x00000001 , 0x00000011 
+ 00012535  0x000023d4 arg  0x00000f9e , 0x00000011 
+ 00012536  0x000023d5 call  0x00002e58 
+ 00012537  0x000023d6 add  0x00000013 , 0x000000f7 , 0x00000005 
+ 00012538  0x000023d7 istoret  0x00000001 , 0x00000005 
+ 00012539  0x000023d9 call  0x00002f94 
+ 00012540  0x000023da add  0x00000013 , 0x000000fa , 0x00000005 
+ 00012541  0x000023db istoret  0x00000001 , 0x00000005 
+ 00012542  0x000023dd sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012543  0x000023de nrtn  0x00000002 
+ 00012544  0x000023df setarg  0x00000188 
+ 00012545  0x000023e0 call  0x00003275 
+ 00012546  0x000023e2 call  0x00002c90 
+ 00012547  0x000023e3 arg  0x00000188 , 0x00000011 
+ 00012548  0x000023e4 call  0x000032c8 
+ 00012549  0x000023e5 istoret  0x00000001 , 0x00000005 
+ 00012550  0x000023e9 arg  0x00000187 , 0x00000011 
+ 00012551  0x000023ea branch  0x000032b3 
+ 00012552  0x000023ed setarg  0x00000001 
+ 00012553  0x000023ee arg  0x00000189 , 0x00000011 
+ 00012554  0x000023ef call  0x000032b3 
+ 00012555  0x000023f1 arg  0x00000000 , 0x00000002 
+ 00012556  0x000023f2 call  0x00002c94 
+ 00012557  0x000023f5 branch  0x00003106 
+ 00012558  0x000023f8 call  0x00002fea 
+ 00012559  0x000023f9 setarg  0x00000164 
+ 00012560  0x000023fa call  0x0000327e 
+ 00012561  0x000023fc branch  0x000030e0 , 0x00000034 
+ 00012562  0x000023fd call  0x0000322c 
+ 00012563  0x000023ff setarg  0x00000186 
+ 00012564  0x00002400 call  0x000032d0 
+ 00012565  0x00002402 call  0x0000312c , 0x00000034 
+ 00012566  0x00002403 setarg  0x00000184 
+ 00012567  0x00002404 call  0x000032d0 
+ 00012568  0x00002406 call  0x0000322f 
+ 00012569  0x00002408 add  0x00000013 , 0x000000f6 , 0x00000011 
+ 00012570  0x00002409 ifetcht  0x00000001 , 0x00000011 
+ 00012571  0x0000240b arg  0x0000109e , 0x00000011 
+ 00012572  0x0000240c call  0x00002e58 
+ 00012573  0x0000240d add  0x00000013 , 0x000000f6 , 0x00000005 
+ 00012574  0x0000240e istoret  0x00000001 , 0x00000005 
+ 00012575  0x00002410 call  0x00002f94 
+ 00012576  0x00002411 add  0x00000013 , 0x000000f9 , 0x00000005 
+ 00012577  0x00002412 istoret  0x00000001 , 0x00000005 
+ 00012578  0x00002414 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012579  0x00002415 nrtn  0x00000002 
+ 00012580  0x00002416 setarg  0x00000185 
+ 00012581  0x00002417 call  0x00003275 
+ 00012582  0x00002419 call  0x00002c90 
+ 00012583  0x0000241a arg  0x00000185 , 0x00000011 
+ 00012584  0x0000241b call  0x000032c8 
+ 00012585  0x0000241c istoret  0x00000001 , 0x00000005 
+ 00012586  0x00002420 arg  0x00000184 , 0x00000011 
+ 00012587  0x00002421 branch  0x000032b3 
+ 00012588  0x00002424 setarg  0x00000001 
+ 00012589  0x00002425 arg  0x00000186 , 0x00000011 
+ 00012590  0x00002426 call  0x000032b3 
+ 00012591  0x00002428 arg  0x00000000 , 0x00000002 
+ 00012592  0x00002429 call  0x00002c94 
+ 00012593  0x0000242c branch  0x0000312a 
+ 00012594  0x0000242f call  0x00002fdf 
+ 00012595  0x00002430 call  0x0000327d 
+ 00012596  0x00002432 call  0x0000322c 
+ 00012597  0x00002434 setarg  0x00000183 
+ 00012598  0x00002435 call  0x000032d0 
+ 00012599  0x00002437 call  0x0000314c , 0x00000034 
+ 00012600  0x00002438 call  0x0000314f 
+ 00012601  0x00002439 add  0x00000013 , 0x000000f5 , 0x00000011 
+ 00012602  0x0000243a ifetcht  0x00000001 , 0x00000011 
+ 00012603  0x0000243c arg  0x00000e9e , 0x00000011 
+ 00012604  0x0000243d call  0x00002e58 
+ 00012605  0x0000243e add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012606  0x0000243f istoret  0x00000001 , 0x00000005 
+ 00012607  0x00002441 call  0x00002f94 
+ 00012608  0x00002442 add  0x00000013 , 0x000000f8 , 0x00000005 
+ 00012609  0x00002443 istoret  0x00000001 , 0x00000005 
+ 00012610  0x00002445 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012611  0x00002446 nrtn  0x00000002 
+ 00012612  0x00002447 setarg  0x00000182 
+ 00012613  0x00002448 call  0x00003275 
+ 00012614  0x0000244a call  0x00002c90 
+ 00012615  0x0000244b arg  0x00000182 , 0x00000011 
+ 00012616  0x0000244c call  0x000032c8 
+ 00012617  0x0000244d istoret  0x00000001 , 0x00000005 
+ 00012618  0x00002452 arg  0x00000181 , 0x00000011 
+ 00012619  0x00002453 branch  0x000032b3 
+ 00012620  0x0000245b setarg  0x00000001 
+ 00012621  0x0000245c arg  0x00000183 , 0x00000011 
+ 00012622  0x0000245d call  0x000032b3 
+ 00012623  0x0000245f setarg  0x00000181 
+ 00012624  0x00002460 call  0x000032d0 
+ 00012625  0x00002461 branch  0x0000322f 
+ 00012626  0x00002466 add  0x00000013 , 0x00000000 , 0x00000011 
+ 00012627  0x00002467 ifetch  0x00000001 , 0x00000011 
+ 00012628  0x00002469 call  0x0000323c 
+ 00012629  0x0000246c call  0x00002dde 
+ 00012630  0x0000246e call  0x0000325f 
+ 00012631  0x00002470 isolate1  0x00000000 , 0x0000003f 
+ 00012632  0x00002471 branch  0x0000315c , 0x00000001 
+ 00012633  0x00002473 call  0x0000315d 
+ 00012634  0x00002474 call  0x00002d53 
+ 00012635  0x00002475 call  0x00002df7 
+ 00012636  0x00002477 branch  0x00002e45 
+ 00012637  0x0000247a bpatch  0x000000c2 , 0x00004018 
+ 00012638  0x0000247b add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012639  0x0000247c call  0x000032d6 
+ 00012640  0x0000247e setarg  0x0000013b 
+ 00012641  0x0000247f call  0x000032d0 
+ 00012642  0x00002481 rtn  0x00000034 
+ 00012643  0x00002482 setarg  0x00000006 
+ 00012644  0x00002483 add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012645  0x00002484 istore  0x00000001 , 0x00000005 
+ 00012646  0x00002486 arg  0x00000006 , 0x00000039 
+ 00012647  0x00002487 setarg  0x0000012f 
+ 00012648  0x00002488 iadd  0x00000013 , 0x00000006 
+ 00012649  0x0000248a add  0x00000013 , 0x00000022 , 0x00000005 
+ 00012650  0x0000248c branch  0x00007f01 
+ 00012651  0x00002490 call  0x0000316e 
+ 00012652  0x00002491 nbranch  0x00002f5e , 0x0000002f 
+ 00012653  0x00002492 branch  0x00003172 
+ 00012654  0x00002495 call  0x00002f5e 
+ 00012655  0x00002496 call  0x00002e11 
+ 00012656  0x00002497 nrtn  0x0000002f 
+ 00012657  0x00002498 branch  0x00003152 
+ 00012658  0x0000249b bpatch  0x000000c3 , 0x00004018 
+ 00012659  0x0000249c call  0x00003188 
+ 00012660  0x0000249d nbranch  0x00002f5e , 0x00000028 
+ 00012661  0x0000249e add  0x00000013 , 0x00000084 , 0x00000011 
+ 00012662  0x0000249f ifetch  0x00000001 , 0x00000011 
+ 00012663  0x000024a1 branch  0x00002f5e , 0x00000034 
+ 00012664  0x000024a2 increase  0x00000002 , 0x0000003f 
+ 00012665  0x000024a3 iforce  0x00000039 
+ 00012666  0x000024a4 add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012667  0x000024a6 setarg  0x00000109 
+ 00012668  0x000024a7 iadd  0x00000013 , 0x00000005 
+ 00012669  0x000024a9 call  0x00007f01 
+ 00012670  0x000024aa call  0x00003286 
+ 00012671  0x000024ac call  0x000032b6 
+ 00012672  0x000024ae call  0x00003093 , 0x00000034 
+ 00012673  0x000024af setarg  0x0000010b 
+ 00012674  0x000024b0 call  0x000032d0 
+ 00012675  0x000024b2 beq  0x00000001 , 0x0000319e 
+ 00012676  0x000024b3 beq  0x00000002 , 0x000031c6 
+ 00012677  0x000024b4 beq  0x00000003 , 0x000031f2 
+ 00012678  0x000024b5 beq  0x000000ff , 0x00003212 
+ 00012679  0x000024b6 branch  0x00002f5e 
+ 00012680  0x000024b9 call  0x00002c7a 
+ 00012681  0x000024ba call  0x00007fe9 
+ 00012682  0x000024bb add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012683  0x000024bc ifetch  0x00000001 , 0x00000011 
+ 00012684  0x000024be add  0x00000013 , 0x000000cb , 0x00000011 
+ 00012685  0x000024bf ifetcht  0x00000001 , 0x00000011 
+ 00012686  0x000024c1 isub  0x00000002 , 0x0000003e 
+ 00012687  0x000024c2 ncall  0x00007fe7 , 0x00000005 
+ 00012688  0x000024c3 add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012689  0x000024c4 ifetch  0x00000001 , 0x00000011 
+ 00012690  0x000024c6 add  0x00000013 , 0x000000cb , 0x00000005 
+ 00012691  0x000024c7 istore  0x00000001 , 0x00000005 
+ 00012692  0x000024c9 add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012693  0x000024ca ifetch  0x00000003 , 0x00000011 
+ 00012694  0x000024cc add  0x00000013 , 0x000000c7 , 0x00000011 
+ 00012695  0x000024cd ifetcht  0x00000003 , 0x00000011 
+ 00012696  0x000024cf isub  0x00000002 , 0x0000003e 
+ 00012697  0x000024d0 ncall  0x00007fe7 , 0x00000005 
+ 00012698  0x000024d1 add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012699  0x000024d2 ifetch  0x00000003 , 0x00000011 
+ 00012700  0x000024d4 add  0x00000013 , 0x000000c7 , 0x00000005 
+ 00012701  0x000024d6 branch  0x000032c5 
+ 00012702  0x000024d9 call  0x00002f88 
+ 00012703  0x000024da call  0x0000324c 
+ 00012704  0x000024db store  0x00000001 , 0x00000aa2 
+ 00012705  0x000024dd call  0x00003274 
+ 00012706  0x000024de fetch  0x00000001 , 0x00000aa2 
+ 00012707  0x000024e0 isolate1  0x00000003 , 0x00000002 
+ 00012708  0x000024e1 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012709  0x000024e2 add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012710  0x000024e3 istore  0x00000001 , 0x00000005 
+ 00012711  0x000024e5 beq  0x00000001 , 0x00003216 
+ 00012712  0x000024e6 call  0x00003245 
+ 00012713  0x000024e8 call  0x00003274 
+ 00012714  0x000024ea isolate1  0x00000004 , 0x00000002 
+ 00012715  0x000024eb setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012716  0x000024ec call  0x00003249 
+ 00012717  0x000024ee add  0x00000013 , 0x000000de , 0x00000011 
+ 00012718  0x000024ef ifetch  0x00000002 , 0x00000011 
+ 00012719  0x000024f1 branch  0x00007f9c 
+ 00012720  0x000024f4 setarg  0x00000001 
+ 00012721  0x000024f5 store  0x00000001 , 0x00000d54 
+ 00012722  0x000024f6 call  0x0000329e 
+ 00012723  0x000024f8 istore  0x00000007 , 0x00000005 
+ 00012724  0x000024f9 call  0x0000329e 
+ 00012725  0x000024fb ncall  0x000031bd , 0x00000034 
+ 00012726  0x000024fc call  0x0000329e 
+ 00012727  0x000024fe call  0x000031c2 , 0x00000034 
+ 00012728  0x00002500 jam  0x00000020 , 0x00000d52 
+ 00012729  0x00002502 fetch  0x00000001 , 0x00000d38 
+ 00012730  0x00002503 set1  0x00000002 , 0x0000003f 
+ 00012731  0x00002504 store  0x00000001 , 0x00000d38 
+ 00012732  0x00002505 rtn 
+ 00012733  0x00002508 setarg  0x00000001 
+ 00012734  0x00002509 call  0x000032a8 
+ 00012735  0x0000250c setarg  0x00000140 
+ 00012736  0x0000250d arg  0x0000000b , 0x00000007 
+ 00012737  0x0000250e branch  0x00007f08 
+ 00012738  0x00002510 call  0x000032a7 
+ 00012739  0x00002513 setarg  0x00000000 
+ 00012740  0x00002514 arg  0x0000000b , 0x00000007 
+ 00012741  0x00002515 branch  0x00007f08 
+ 00012742  0x00002518 call  0x00003274 
+ 00012743  0x0000251a isolate1  0x00000003 , 0x00000002 
+ 00012744  0x0000251b branch  0x0000321b , 0x00000001 
+ 00012745  0x0000251c arg  0x00000d64 , 0x00000005 
+ 00012746  0x0000251d call  0x000031e0 
+ 00012747  0x0000251e fetch  0x00000008 , 0x00000d64 
+ 00012748  0x0000251f ncall  0x000031e4 , 0x00000034 
+ 00012749  0x00002520 fetch  0x00000008 , 0x00000d64 
+ 00012750  0x00002521 call  0x000031e9 , 0x00000034 
+ 00012751  0x00002522 call  0x00002c7a 
+ 00012752  0x00002523 fetch  0x00000008 , 0x00000d64 
+ 00012753  0x00002524 arg  0x00000168 , 0x00000011 
+ 00012754  0x00002525 call  0x000032bf 
+ 00012755  0x00002526 istore  0x00000008 , 0x00000005 
+ 00012756  0x00002528 setarg  0x00000170 
+ 00012757  0x00002529 iadd  0x00000013 , 0x00000011 
+ 00012758  0x0000252a ifetcht  0x00000008 , 0x00000011 
+ 00012759  0x0000252c isub  0x00000002 , 0x0000003e 
+ 00012760  0x0000252d ncall  0x000031ed , 0x00000005 
+ 00012761  0x0000252e setarg  0x00000168 
+ 00012762  0x0000252f iadd  0x00000013 , 0x00000011 
+ 00012763  0x00002530 ifetch  0x00000008 , 0x00000011 
+ 00012764  0x00002532 arg  0x00000170 , 0x00000011 
+ 00012765  0x00002533 call  0x000032bf 
+ 00012766  0x00002534 istore  0x00000008 , 0x00000005 
+ 00012767  0x00002536 branch  0x00002f5e 
+ 00012768  0x00002539 setarg  0x0000010b 
+ 00012769  0x0000253a iadd  0x00000013 , 0x00000006 
+ 00012770  0x0000253c arg  0x00000009 , 0x00000039 
+ 00012771  0x0000253d branch  0x00007ff3 
+ 00012772  0x00002540 setarg  0x00000001 
+ 00012773  0x00002541 call  0x000032ab 
+ 00012774  0x00002544 setarg  0x00000140 
+ 00012775  0x00002545 arg  0x0000000e , 0x00000007 
+ 00012776  0x00002546 branch  0x00007f08 
+ 00012777  0x00002549 call  0x000032aa 
+ 00012778  0x0000254c setarg  0x00000000 
+ 00012779  0x0000254d arg  0x0000000e , 0x00000007 
+ 00012780  0x0000254e branch  0x00007f08 
+ 00012781  0x00002552 jam  0x00000010 , 0x00000d51 
+ 00012782  0x00002553 fetch  0x00000001 , 0x00000d38 
+ 00012783  0x00002554 set1  0x00000001 , 0x0000003f 
+ 00012784  0x00002555 store  0x00000001 , 0x00000d38 
+ 00012785  0x00002556 rtn 
+ 00012786  0x00002559 arg  0x00000d74 , 0x00000005 
+ 00012787  0x0000255a call  0x000031e0 
+ 00012788  0x0000255b fetch  0x00000002 , 0x00000d75 
+ 00012789  0x0000255c ncall  0x00003209 , 0x00000034 
+ 00012790  0x0000255d fetch  0x00000002 , 0x00000d75 
+ 00012791  0x0000255e call  0x0000320e , 0x00000034 
+ 00012792  0x0000255f call  0x00002c7a 
+ 00012793  0x00002560 fetch  0x00000003 , 0x00000d74 
+ 00012794  0x00002561 arg  0x00000178 , 0x00000011 
+ 00012795  0x00002562 call  0x000032c4 
+ 00012796  0x00002564 setarg  0x0000017b 
+ 00012797  0x00002565 iadd  0x00000013 , 0x00000011 
+ 00012798  0x00002566 ifetcht  0x00000003 , 0x00000011 
+ 00012799  0x00002568 isub  0x00000002 , 0x0000003e 
+ 00012800  0x00002569 ncall  0x00003207 , 0x00000005 
+ 00012801  0x0000256a setarg  0x00000178 
+ 00012802  0x0000256b iadd  0x00000013 , 0x00000011 
+ 00012803  0x0000256c ifetch  0x00000003 , 0x00000011 
+ 00012804  0x0000256e arg  0x0000017b , 0x00000011 
+ 00012805  0x0000256f call  0x000032c4 
+ 00012806  0x00002571 branch  0x00002f5e 
+ 00012807  0x00002574 jam  0x00000021 , 0x00000d52 
+ 00012808  0x00002575 branch  0x000031b9 
+ 00012809  0x00002578 setarg  0x00000001 
+ 00012810  0x00002579 call  0x000032ae 
+ 00012811  0x0000257c setarg  0x00000140 
+ 00012812  0x0000257d arg  0x0000000c , 0x00000007 
+ 00012813  0x0000257e branch  0x00007f08 
+ 00012814  0x00002581 call  0x000032ad 
+ 00012815  0x00002584 setarg  0x00000000 
+ 00012816  0x00002585 arg  0x0000000c , 0x00000007 
+ 00012817  0x00002586 branch  0x00007f08 
+ 00012818  0x00002589 call  0x000032bd 
+ 00012819  0x0000258b beq  0x00000001 , 0x00003216 
+ 00012820  0x0000258c beq  0x00000002 , 0x0000321b 
+ 00012821  0x0000258d rtn 
+ 00012822  0x0000258f setarg  0x0000010d 
+ 00012823  0x00002590 call  0x0000327e 
+ 00012824  0x00002591 arg  0x00000160 , 0x00000011 
+ 00012825  0x00002592 call  0x000032bf 
+ 00012826  0x00002595 branch  0x0000322d 
+ 00012827  0x00002598 setarg  0x0000010d 
+ 00012828  0x00002599 call  0x0000327e 
+ 00012829  0x0000259a arg  0x00000164 , 0x00000011 
+ 00012830  0x0000259b call  0x000032bf 
+ 00012831  0x0000259e branch  0x0000322d 
+ 00012832  0x000025a1 call  0x00002c7a 
+ 00012833  0x000025a2 add  0x00000013 , 0x000000cd , 0x00000005 
+ 00012834  0x000025a3 istore  0x00000001 , 0x00000005 
+ 00012835  0x000025a4 rtn 
+ 00012836  0x000025a7 call  0x00002c7a 
+ 00012837  0x000025a8 add  0x00000013 , 0x000000be , 0x00000011 
+ 00012838  0x000025a9 branch  0x0000327f 
+ 00012839  0x000025ab call  0x00002c7a 
+ 00012840  0x000025ac add  0x00000013 , 0x000000be , 0x00000005 
+ 00012841  0x000025ad branch  0x0000322d 
+ 00012842  0x000025b0 add  0x00000013 , 0x000000ae , 0x00000011 
+ 00012843  0x000025b1 branch  0x0000327f 
+ 00012844  0x000025b3 add  0x00000013 , 0x000000ae , 0x00000005 
+ 00012845  0x000025b5 istore  0x00000004 , 0x00000005 
+ 00012846  0x000025b6 rtn 
+ 00012847  0x000025b9 add  0x00000013 , 0x00000090 , 0x00000005 
+ 00012848  0x000025ba branch  0x000032b4 
+ 00012849  0x000025bd setarg  0x00000000 
+ 00012850  0x000025bf call  0x00002c7a 
+ 00012851  0x000025c0 add  0x00000013 , 0x00000085 , 0x00000005 
+ 00012852  0x000025c1 branch  0x000032b4 
+ 00012853  0x000025c4 add  0x00000013 , 0x00000042 , 0x00000005 
+ 00012854  0x000025c5 branch  0x000032b4 
+ 00012855  0x000025c8 setarg  0x00000004 
+ 00012856  0x000025ca add  0x00000013 , 0x000000cc , 0x00000005 
+ 00012857  0x000025cb branch  0x000032b4 
+ 00012858  0x000025ce add  0x00000013 , 0x00000087 , 0x00000011 
+ 00012859  0x000025cf branch  0x000032d1 
+ 00012860  0x000025d1 add  0x00000013 , 0x00000087 , 0x00000005 
+ 00012861  0x000025d2 branch  0x000032b4 
+ 00012862  0x000025d5 setarg  0x00000002 
+ 00012863  0x000025d7 add  0x00000013 , 0x000000d0 , 0x00000005 
+ 00012864  0x000025d8 branch  0x000032b4 
+ 00012865  0x000025db setarg  0x00000001 
+ 00012866  0x000025dd call  0x00002c7a 
+ 00012867  0x000025de add  0x00000013 , 0x000000ce , 0x00000005 
+ 00012868  0x000025df branch  0x000032b4 
+ 00012869  0x000025e2 call  0x00002c7a 
+ 00012870  0x000025e3 add  0x00000013 , 0x000000b4 , 0x00000011 
+ 00012871  0x000025e4 branch  0x000032d1 
+ 00012872  0x000025e6 setarg  0x00000001 
+ 00012873  0x000025e8 call  0x00002c7a 
+ 00012874  0x000025e9 add  0x00000013 , 0x000000b4 , 0x00000005 
+ 00012875  0x000025ea branch  0x000032b4 
+ 00012876  0x000025ed call  0x00002c7a 
+ 00012877  0x000025ee add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00012878  0x000025ef branch  0x000032d1 
+ 00012879  0x000025f1 setarg  0x00000001 
+ 00012880  0x000025f3 call  0x00002c7a 
+ 00012881  0x000025f4 add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012882  0x000025f5 branch  0x000032b4 
+ 00012883  0x000025f8 call  0x00002c7a 
+ 00012884  0x000025f9 add  0x00000013 , 0x00000096 , 0x00000011 
+ 00012885  0x000025fa branch  0x000032d1 
+ 00012886  0x000025fc add  0x00000013 , 0x00000096 , 0x00000005 
+ 00012887  0x000025fd branch  0x000032b4 
+ 00012888  0x00002600 add  0x00000013 , 0x000000cf , 0x00000011 
+ 00012889  0x00002601 branch  0x000032d1 
+ 00012890  0x00002603 setarg  0x00000000 
+ 00012891  0x00002605 add  0x00000013 , 0x000000cf , 0x00000005 
+ 00012892  0x00002606 branch  0x000032b4 
+ 00012893  0x00002609 add  0x00000013 , 0x000000d2 , 0x00000011 
+ 00012894  0x0000260a branch  0x000032d1 
+ 00012895  0x0000260d add  0x00000013 , 0x00000001 , 0x00000011 
+ 00012896  0x0000260e branch  0x000032d1 
+ 00012897  0x00002611 add  0x00000013 , 0x000000b5 , 0x00000011 
+ 00012898  0x00002612 branch  0x000032d1 
+ 00012899  0x00002614 setarg  0x00000000 
+ 00012900  0x00002616 call  0x00002c7a 
+ 00012901  0x00002617 add  0x00000013 , 0x000000b5 , 0x00000005 
+ 00012902  0x00002618 branch  0x000032b4 
+ 00012903  0x0000261b call  0x00002c7a 
+ 00012904  0x0000261c add  0x00000013 , 0x000000fb , 0x00000011 
+ 00012905  0x0000261d ifetch  0x00000001 , 0x00000011 
+ 00012906  0x0000261f store  0x00000001 , 0x000041de 
+ 00012907  0x00002620 rtn 
+ 00012908  0x00002623 call  0x00002c7a 
+ 00012909  0x00002624 fetch  0x00000001 , 0x000041de 
+ 00012910  0x00002626 add  0x00000013 , 0x000000fb , 0x00000005 
+ 00012911  0x00002627 branch  0x000032b4 
+ 00012912  0x0000262a add  0x00000013 , 0x000000fc , 0x00000011 
+ 00012913  0x0000262b branch  0x000032d1 
+ 00012914  0x0000262e add  0x00000013 , 0x000000fe , 0x00000005 
+ 00012915  0x0000262f branch  0x000032b4 
+ 00012916  0x00002632 setarg  0x00000109 
+ 00012917  0x00002634 iadd  0x00000013 , 0x00000011 
+ 00012918  0x00002635 ifetcht  0x00000001 , 0x00000011 
+ 00012919  0x00002636 rtn 
+ 00012920  0x00002639 setarg  0x00000135 
+ 00012921  0x0000263a branch  0x000032d0 
+ 00012922  0x0000263c setarg  0x00000000 
+ 00012923  0x0000263e arg  0x00000135 , 0x00000011 
+ 00012924  0x0000263f branch  0x000032b3 
+ 00012925  0x00002642 setarg  0x0000012b 
+ 00012926  0x00002644 call  0x000032cd 
+ 00012927  0x00002646 ifetch  0x00000004 , 0x00000011 
+ 00012928  0x00002647 rtn 
+ 00012929  0x0000264a setarg  0x0000015f 
+ 00012930  0x0000264b branch  0x000032d0 
+ 00012931  0x0000264d setarg  0x00000000 
+ 00012932  0x0000264f arg  0x0000015f , 0x00000011 
+ 00012933  0x00002650 branch  0x000032b3 
+ 00012934  0x00002653 setarg  0x00000000 
+ 00012935  0x00002655 arg  0x0000015c , 0x00000011 
+ 00012936  0x00002656 branch  0x000032b3 
+ 00012937  0x00002659 arg  0x0000012f , 0x00000011 
+ 00012938  0x0000265a branch  0x000032b3 
+ 00012939  0x0000265d setarg  0x00000108 
+ 00012940  0x0000265e branch  0x000032d0 
+ 00012941  0x00002660 arg  0x00000108 , 0x00000011 
+ 00012942  0x00002661 branch  0x000032b3 
+ 00012943  0x00002664 setarg  0x00000105 
+ 00012944  0x00002665 branch  0x000032d0 
+ 00012945  0x00002667 setarg  0x00000000 
+ 00012946  0x00002669 arg  0x00000105 , 0x00000011 
+ 00012947  0x0000266a branch  0x000032b3 
+ 00012948  0x0000266d setarg  0x00000104 
+ 00012949  0x0000266e branch  0x000032d0 
+ 00012950  0x00002670 setarg  0x00000000 
+ 00012951  0x00002672 arg  0x00000104 , 0x00000011 
+ 00012952  0x00002673 branch  0x000032b3 
+ 00012953  0x00002676 setarg  0x00000000 
+ 00012954  0x00002678 arg  0x0000013b , 0x00000011 
+ 00012955  0x00002679 branch  0x000032b3 
+ 00012956  0x0000267b setarg  0x00000001 
+ 00012957  0x0000267c branch  0x0000329a 
+ 00012958  0x0000267f setarg  0x0000010c 
+ 00012959  0x00002680 call  0x000032cd 
+ 00012960  0x00002681 ifetch  0x00000007 , 0x00000011 
+ 00012961  0x00002682 rtn 
+ 00012962  0x00002685 setarg  0x0000015e 
+ 00012963  0x00002686 branch  0x000032d0 
+ 00012964  0x00002688 setarg  0x00000000 
+ 00012965  0x0000268a arg  0x0000015e , 0x00000011 
+ 00012966  0x0000268b branch  0x000032b3 
+ 00012967  0x0000268e setarg  0x00000000 
+ 00012968  0x00002690 arg  0x00000180 , 0x00000011 
+ 00012969  0x00002691 branch  0x000032b3 
+ 00012970  0x00002694 setarg  0x00000000 
+ 00012971  0x00002696 arg  0x0000017e , 0x00000011 
+ 00012972  0x00002697 branch  0x000032b3 
+ 00012973  0x0000269a setarg  0x00000000 
+ 00012974  0x0000269c arg  0x0000017f , 0x00000011 
+ 00012975  0x0000269d branch  0x000032b3 
+ 00012976  0x000026a0 arg  0x00000102 , 0x00000011 
+ 00012977  0x000026a1 branch  0x000032b3 
+ 00012978  0x000026a4 arg  0x00000103 , 0x00000011 
+ 00012979  0x000026a6 call  0x000032c7 
+ 00012980  0x000026a8 istore  0x00000001 , 0x00000005 
+ 00012981  0x000026a9 rtn 
+ 00012982  0x000026ac setarg  0x0000015d 
+ 00012983  0x000026ad branch  0x000032d0 
+ 00012984  0x000026b0 arg  0x0000015d , 0x00000011 
+ 00012985  0x000026b1 branch  0x000032b3 
+ 00012986  0x000026b4 setarg  0x0000018a 
+ 00012987  0x000026b5 call  0x000032d0 
+ 00012988  0x000026b6 branch  0x0000326a 
+ 00012989  0x000026b9 setarg  0x0000010c 
+ 00012990  0x000026ba branch  0x000032d0 
+ 00012991  0x000026bd copy  0x0000003f , 0x00000002 
+ 00012992  0x000026be copy  0x00000011 , 0x0000003f 
+ 00012993  0x000026bf iadd  0x00000013 , 0x00000005 
+ 00012994  0x000026c0 copy  0x00000002 , 0x0000003f 
+ 00012995  0x000026c1 rtn 
+ 00012996  0x000026c4 call  0x000032bf 
+ 00012997  0x000026c6 istore  0x00000003 , 0x00000005 
+ 00012998  0x000026c7 rtn 
+ 00012999  0x000026ca call  0x00002c7a 
+ 00013000  0x000026cc copy  0x0000003f , 0x00000012 
+ 00013001  0x000026cd copy  0x00000011 , 0x0000003f 
+ 00013002  0x000026ce iadd  0x00000013 , 0x00000005 
+ 00013003  0x000026cf copy  0x00000012 , 0x0000003f 
+ 00013004  0x000026d0 rtn 
+ 00013005  0x000026d3 call  0x00002c7a 
+ 00013006  0x000026d4 iadd  0x00000013 , 0x00000011 
+ 00013007  0x000026d5 rtn 
+ 00013008  0x000026d8 call  0x000032cd 
+ 00013009  0x000026da ifetch  0x00000001 , 0x00000011 
+ 00013010  0x000026db rtn 
+ 00013011  0x000026de call  0x000032cd 
+ 00013012  0x000026df ifetcht  0x00000004 , 0x00000011 
+ 00013013  0x000026e0 rtn 
+ 00013014  0x000026e3 setarg  0x00000000 
+ 00013015  0x000026e4 branch  0x000032b4 
+ 00013016  0x000026e9 bpatch  0x000000c4 , 0x00004018 
+ 00013017  0x000026ea fetch  0x00000001 , 0x00004092 
+ 00013018  0x000026eb branch  0x000032d8 , 0x00000034 
+ 00013019  0x000026ed beq  0x00000004 , 0x00002f30 
+ 00013020  0x000026ee beq  0x0000000f , 0x00003436 
+ 00013021  0x000026ef beq  0x00000009 , 0x000045de 
+ 00013022  0x000026f0 beq  0x0000000a , 0x0000392a 
+ 00013023  0x000026f1 beq  0x0000000e , 0x000035bf 
+ 00013024  0x000026f2 beq  0x00000010 , 0x000044a4 
+ 00013025  0x000026f3 bbit1  0x00000006 , 0x00003d00 
+ 00013026  0x000026f4 rtn 
+ 00013027  0x000026f7 bpatch  0x000000c5 , 0x00004018 
+ 00013028  0x000026f8 jam  0x00000000 , 0x00000151 
+ 00013029  0x000026f9 jam  0x00000000 , 0x0000017f 
+ 00013030  0x000026fa jam  0x00000000 , 0x00000180 
+ 00013031  0x000026fb setarg  0x00000000 
+ 00013032  0x000026fc store  0x00000005 , 0x000009ae 
+ 00013033  0x000026fd fetch  0x00000001 , 0x00004092 
+ 00013034  0x000026fe branch  0x000032e3 , 0x00000034 
+ 00013035  0x000026ff beq  0x0000000a , 0x00003962 
+ 00013036  0x00002701 rtn 
+ 00013037  0x00002705 call  0x00007cd1 
+ 00013038  0x00002706 call  0x00007d9c 
+ 00013039  0x00002707 call  0x000032f6 
+ 00013040  0x00002708 fetch  0x00000002 , 0x000041f3 
+ 00013041  0x00002709 branch  0x00007f9c 
+ 00013042  0x0000270c fetch  0x00000002 , 0x000041f1 
+ 00013043  0x0000270d branch  0x00007f9c 
+ 00013044  0x00002710 fetch  0x00000002 , 0x000041ef 
+ 00013045  0x00002711 branch  0x00007f9c 
+ 00013046  0x00002714 bpatch  0x000000c6 , 0x00004018 
+ 00013047  0x00002716 arg  0x00004668 , 0x00000011 
+ 00013048  0x00002717 call  0x00007fc4 
+ 00013049  0x00002718 rtn  0x00000034 
+ 00013050  0x0000271a copy  0x0000003f , 0x00000013 
+ 00013051  0x0000271b call  0x000032ff 
+ 00013052  0x0000271c branch  0x00003324 
+ 00013053  0x0000271f arg  0x00000000 , 0x00000013 
+ 00013054  0x00002720 rtn 
+ 00013055  0x00002726 beq  0x00000001 , 0x00003311 
+ 00013056  0x00002727 beq  0x00000010 , 0x00003357 
+ 00013057  0x00002728 beq  0x00000005 , 0x00003335 
+ 00013058  0x00002729 beq  0x00000012 , 0x0000333c 
+ 00013059  0x0000272a beq  0x00000006 , 0x00003353 
+ 00013060  0x0000272b beq  0x00000004 , 0x00003394 
+ 00013061  0x0000272c beq  0x00000002 , 0x00003399 
+ 00013062  0x0000272d beq  0x00000013 , 0x00003394 
+ 00013063  0x0000272e beq  0x00000014 , 0x0000334b 
+ 00013064  0x0000272f beq  0x00000015 , 0x0000334f 
+ 00013065  0x00002730 beq  0x00000003 , 0x0000332e 
+ 00013066  0x00002731 beq  0x0000000b , 0x00003340 
+ 00013067  0x00002732 beq  0x0000000c , 0x00003347 
+ 00013068  0x00002734 beq  0x00000016 , 0x0000335b 
+ 00013069  0x00002735 beq  0x00000018 , 0x0000332a 
+ 00013070  0x00002736 beq  0x0000002a , 0x0000331a 
+ 00013071  0x00002737 beq  0x0000002b , 0x00003318 
+ 00013072  0x00002738 rtn 
+ 00013073  0x0000273c fetch  0x00000002 , 0x00004682 
+ 00013074  0x0000273d set1  0x00000000 , 0x0000003f 
+ 00013075  0x0000273e store  0x00000002 , 0x00004682 
+ 00013076  0x0000273f fetch  0x00000002 , 0x0000420a 
+ 00013077  0x00002740 set0  0x00000000 , 0x0000003f 
+ 00013078  0x00002741 store  0x00000002 , 0x0000420a 
+ 00013079  0x00002742 rtn 
+ 00013080  0x00002745 jam  0x00000000 , 0x00000229 
+ 00013081  0x00002746 rtn 
+ 00013082  0x00002749 fetch  0x00000001 , 0x00000229 
+ 00013083  0x0000274a increase  0x00000001 , 0x0000003f 
+ 00013084  0x0000274b store  0x00000001 , 0x00000229 
+ 00013085  0x0000274c sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00013086  0x0000274d branch  0x000033df , 0x00000002 
+ 00013087  0x0000274e jam  0x00000000 , 0x00000229 
+ 00013088  0x0000274f fetch  0x00000002 , 0x0000420a 
+ 00013089  0x00002750 set1  0x00000009 , 0x0000003f 
+ 00013090  0x00002751 store  0x00000002 , 0x0000420a 
+ 00013091  0x00002752 branch  0x000033e9 
+ 00013092  0x00002755 fetch  0x00000002 , 0x000041f5 
+ 00013093  0x00002756 branch  0x00007f9c 
+ 00013094  0x00002759 fetch  0x00000002 , 0x000041e9 
+ 00013095  0x0000275a branch  0x00007f9c 
+ 00013096  0x0000275d fetch  0x00000002 , 0x000041ed 
+ 00013097  0x0000275e branch  0x00007f9c 
+ 00013098  0x00002761 fetch  0x00000002 , 0x0000420a 
+ 00013099  0x00002762 set1  0x00000001 , 0x0000003f 
+ 00013100  0x00002763 store  0x00000002 , 0x0000420a 
+ 00013101  0x00002764 branch  0x00003412 
+ 00013102  0x00002767 fetch  0x00000002 , 0x00004682 
+ 00013103  0x00002768 set1  0x00000007 , 0x0000003f 
+ 00013104  0x00002769 store  0x00000002 , 0x00004682 
+ 00013105  0x0000276a fetch  0x00000002 , 0x0000420a 
+ 00013106  0x0000276b set1  0x00000002 , 0x0000003f 
+ 00013107  0x0000276c store  0x00000002 , 0x0000420a 
+ 00013108  0x0000276d rtn 
+ 00013109  0x00002770 fetch  0x00000002 , 0x00004682 
+ 00013110  0x00002771 set1  0x00000001 , 0x0000003f 
+ 00013111  0x00002772 store  0x00000002 , 0x00004682 
+ 00013112  0x00002773 fetch  0x00000002 , 0x0000420a 
+ 00013113  0x00002774 set1  0x00000004 , 0x0000003f 
+ 00013114  0x00002775 store  0x00000002 , 0x0000420a 
+ 00013115  0x00002776 rtn 
+ 00013116  0x00002779 fetch  0x00000002 , 0x00004682 
+ 00013117  0x0000277a set1  0x00000003 , 0x0000003f 
+ 00013118  0x0000277b store  0x00000002 , 0x00004682 
+ 00013119  0x0000277c rtn 
+ 00013120  0x0000277f fetch  0x00000002 , 0x00004682 
+ 00013121  0x00002780 set1  0x00000005 , 0x0000003f 
+ 00013122  0x00002781 store  0x00000002 , 0x00004682 
+ 00013123  0x00002782 fetch  0x00000002 , 0x0000420a 
+ 00013124  0x00002783 set1  0x00000003 , 0x0000003f 
+ 00013125  0x00002784 store  0x00000002 , 0x0000420a 
+ 00013126  0x00002785 rtn 
+ 00013127  0x00002788 fetch  0x00000002 , 0x00004682 
+ 00013128  0x00002789 set0  0x00000005 , 0x0000003f 
+ 00013129  0x0000278a store  0x00000002 , 0x00004682 
+ 00013130  0x0000278b rtn 
+ 00013131  0x0000278e fetch  0x00000002 , 0x00004682 
+ 00013132  0x0000278f set1  0x00000009 , 0x0000003f 
+ 00013133  0x00002790 store  0x00000002 , 0x00004682 
+ 00013134  0x00002791 rtn 
+ 00013135  0x00002794 fetch  0x00000002 , 0x00004682 
+ 00013136  0x00002795 set0  0x00000009 , 0x0000003f 
+ 00013137  0x00002796 store  0x00000002 , 0x00004682 
+ 00013138  0x00002797 branch  0x00003418 
+ 00013139  0x0000279a fetch  0x00000002 , 0x00004682 
+ 00013140  0x0000279b set1  0x00000002 , 0x0000003f 
+ 00013141  0x0000279c store  0x00000002 , 0x00004682 
+ 00013142  0x0000279d rtn 
+ 00013143  0x000027a0 fetch  0x00000002 , 0x0000420a 
+ 00013144  0x000027a1 set1  0x00000000 , 0x0000003f 
+ 00013145  0x000027a2 store  0x00000002 , 0x0000420a 
+ 00013146  0x000027a3 rtn 
+ 00013147  0x000027a6 fetch  0x00000002 , 0x0000420a 
+ 00013148  0x000027a7 set1  0x00000008 , 0x0000003f 
+ 00013149  0x000027a8 store  0x00000002 , 0x0000420a 
+ 00013150  0x000027a9 branch  0x000033e9 
+ 00013151  0x000027ad bpatch  0x000000c7 , 0x00004018 
+ 00013152  0x000027ae store  0x00000001 , 0x0000022a 
+ 00013153  0x000027b0 fetch  0x00000001 , 0x0000022a 
+ 00013154  0x000027b1 rtn  0x00000034 
+ 00013155  0x000027b2 increase  0xffffffff , 0x0000003f 
+ 00013156  0x000027b3 store  0x00000001 , 0x0000022a 
+ 00013157  0x000027b4 call  0x00007cdd 
+ 00013158  0x000027b5 call  0x000033d6 
+ 00013159  0x000027b6 call  0x00003387 
+ 00013160  0x000027b7 call  0x0000338d 
+ 00013161  0x000027b8 call  0x0000651b 
+ 00013162  0x000027b9 fetch  0x00000002 , 0x000041fd 
+ 00013163  0x000027ba call  0x00007f9c 
+ 00013164  0x000027bb branch  0x00003361 
+ 00013165  0x000027c1 ifetch  0x00000001 , 0x00000013 
+ 00013166  0x000027c2 rtn  0x00000034 
+ 00013167  0x000027c3 pincrease  0xffffffff 
+ 00013168  0x000027c4 istore  0x00000001 , 0x00000013 
+ 00013169  0x000027c5 nrtn  0x00000034 
+ 00013170  0x000027c6 copy  0x00000012 , 0x0000003f 
+ 00013171  0x000027c7 branch  0x00007f9c 
+ 00013172  0x000027cc ifetch  0x00000002 , 0x00000013 
+ 00013173  0x000027cd rtn  0x00000034 
+ 00013174  0x000027ce pincrease  0xffffffff 
+ 00013175  0x000027cf istore  0x00000002 , 0x00000013 
+ 00013176  0x000027d0 nrtn  0x00000034 
+ 00013177  0x000027d1 copy  0x00000012 , 0x0000003f 
+ 00013178  0x000027d2 branch  0x00007f9c 
+ 00013179  0x000027d5 fetcht  0x00000002 , 0x0000423f 
+ 00013180  0x000027d6 add  0x00000002 , 0x00000001 , 0x00000013 
+ 00013181  0x000027d7 arg  0x0000337f , 0x00000012 
+ 00013182  0x000027d8 branch  0x0000336d 
+ 00013183  0x000027db call  0x0000342d 
+ 00013184  0x000027dc beq  0x00000001 , 0x00003382 
+ 00013185  0x000027de branch  0x0000340a 
+ 00013186  0x000027e0 setarg  0x00000002 
+ 00013187  0x000027e1 istore  0x00000001 , 0x00000013 
+ 00013188  0x000027e2 add  0x00000002 , 0x00000008 , 0x00000012 
+ 00013189  0x000027e4 ifetch  0x00000002 , 0x00000012 
+ 00013190  0x000027e5 branch  0x00007f9c 
+ 00013191  0x000027e8 arg  0x00004205 , 0x00000013 
+ 00013192  0x000027e9 arg  0x0000338a , 0x00000012 
+ 00013193  0x000027ea branch  0x0000336d 
+ 00013194  0x000027ed call  0x00002252 
+ 00013195  0x000027ee branch  0x0000340e , 0x00000005 
+ 00013196  0x000027ef rtn 
+ 00013197  0x000027f3 arg  0x0000467e , 0x00000013 
+ 00013198  0x000027f4 arg  0x00003390 , 0x00000012 
+ 00013199  0x000027f5 branch  0x00003374 
+ 00013200  0x000027f8 call  0x000033f0 
+ 00013201  0x000027f9 call  0x00003408 
+ 00013202  0x000027fa fetch  0x00000002 , 0x000041f7 
+ 00013203  0x000027fb branch  0x00007f9c 
+ 00013204  0x000027ff call  0x000033ac 
+ 00013205  0x00002801 fetch  0x00000002 , 0x00004682 
+ 00013206  0x00002802 set0  0x00000007 , 0x0000003f 
+ 00013207  0x00002803 store  0x00000002 , 0x00004682 
+ 00013208  0x00002804 rtn 
+ 00013209  0x00002807 jam  0x00000000 , 0x00004205 
+ 00013210  0x00002808 fetch  0x00000002 , 0x00004682 
+ 00013211  0x00002809 bbit1  0x00000007 , 0x0000339e 
+ 00013212  0x0000280a isolate0  0x00000001 , 0x0000003f 
+ 00013213  0x0000280b call  0x000032fd , 0x00000001 
+ 00013214  0x0000280d bpatch  0x000000c8 , 0x00004019 
+ 00013215  0x0000280e fetch  0x00000002 , 0x00004682 
+ 00013216  0x0000280f set0  0x00000000 , 0x0000003f 
+ 00013217  0x00002810 set0  0x00000001 , 0x0000003f 
+ 00013218  0x00002811 set0  0x00000002 , 0x0000003f 
+ 00013219  0x00002812 set0  0x00000003 , 0x0000003f 
+ 00013220  0x00002813 set0  0x00000007 , 0x0000003f 
+ 00013221  0x00002814 store  0x00000002 , 0x00004682 
+ 00013222  0x00002815 branch  0x00003418 
+ 00013223  0x00002818 call  0x000033a9 
+ 00013224  0x00002819 branch  0x0000340a 
+ 00013225  0x0000281d setarg  0x00000000 
+ 00013226  0x0000281e store  0x00000002 , 0x00004208 
+ 00013227  0x0000281f rtn 
+ 00013228  0x00002821 setarg  0x00000000 
+ 00013229  0x00002822 store  0x00000002 , 0x0000420a 
+ 00013230  0x00002823 rtn 
+ 00013231  0x00002826 fetch  0x00000002 , 0x0000420a 
+ 00013232  0x00002827 store  0x00000002 , 0x00004208 
+ 00013233  0x00002828 setarg  0x00000000 
+ 00013234  0x00002829 store  0x00000002 , 0x0000420a 
+ 00013235  0x0000282a rtn 
+ 00013236  0x0000282d fetch  0x00000002 , 0x0000420a 
+ 00013237  0x0000282e set1  0x00000007 , 0x0000003f 
+ 00013238  0x0000282f store  0x00000002 , 0x00004208 
+ 00013239  0x00002830 setarg  0x00000000 
+ 00013240  0x00002831 store  0x00000002 , 0x0000420a 
+ 00013241  0x00002832 rtn 
+ 00013242  0x0000283b fetch  0x00000001 , 0x00004682 
+ 00013243  0x0000283c isolate1  0x00000005 , 0x0000003f 
+ 00013244  0x0000283d rtn 
+ 00013245  0x00002846 setarg  0x0000aa55 
+ 00013246  0x00002848 store  0x00000002 , 0x00000aaa 
+ 00013247  0x00002849 bpatch  0x000000c9 , 0x00004019 
+ 00013248  0x0000284a arg  0x00000002 , 0x00000002 
+ 00013249  0x0000284b arg  0x00000aaa , 0x00000011 
+ 00013250  0x0000284c arg  0x000000c3 , 0x00000012 
+ 00013251  0x0000284d branch  0x00006606 
+ 00013252  0x00002851 bpatch  0x000000ca , 0x00004019 
+ 00013253  0x00002852 arg  0x00000002 , 0x00000002 
+ 00013254  0x00002853 arg  0x00000a9a , 0x00000011 
+ 00013255  0x00002854 arg  0x000000c3 , 0x00000012 
+ 00013256  0x00002855 call  0x000065df 
+ 00013257  0x00002856 fetch  0x00000002 , 0x00000a9a 
+ 00013258  0x00002857 arg  0x0000aa55 , 0x00000002 
+ 00013259  0x00002858 isub  0x00000002 , 0x0000003e 
+ 00013260  0x00002859 rtn 
+ 00013261  0x0000285d fetch  0x00000001 , 0x0000455a 
+ 00013262  0x0000285e store  0x00000001 , 0x00004205 
+ 00013263  0x0000285f rtn 
+ 00013264  0x00002862 arg  0x00000009 , 0x00000007 
+ 00013265  0x00002863 branch  0x00002c32 
+ 00013266  0x00002866 arg  0x00000009 , 0x00000007 
+ 00013267  0x00002867 branch  0x00002c36 
+ 00013268  0x0000286a jam  0x00000005 , 0x00004206 
+ 00013269  0x0000286b branch  0x000033d0 
+ 00013270  0x0000286e arg  0x00004206 , 0x00000013 
+ 00013271  0x0000286f arg  0x000033d2 , 0x00000012 
+ 00013272  0x00002870 branch  0x0000336d 
+ 00013273  0x00002873 jam  0x00000001 , 0x00004363 
+ 00013274  0x00002874 rtn 
+ 00013275  0x00002877 jam  0x00000000 , 0x00004363 
+ 00013276  0x00002878 rtn 
+ 00013277  0x0000287b jam  0x0000000a , 0x00000a99 
+ 00013278  0x0000287c branch  0x00007d8f 
+ 00013279  0x0000287f jam  0x0000001d , 0x00000a99 
+ 00013280  0x00002880 branch  0x00007d8f 
+ 00013281  0x00002883 bpatch  0x000000cb , 0x00004019 
+ 00013282  0x00002884 fetch  0x00000001 , 0x00004207 
+ 00013283  0x00002885 store  0x00000001 , 0x0000016d 
+ 00013284  0x00002886 jam  0x00000001 , 0x00000228 
+ 00013285  0x00002887 jam  0x00000003 , 0x00000a99 
+ 00013286  0x00002888 branch  0x00007d8f 
+ 00013287  0x0000288b jam  0x0000001e , 0x00000a99 
+ 00013288  0x0000288c branch  0x00007d8f 
+ 00013289  0x0000288f jam  0x00000004 , 0x00000a99 
+ 00013290  0x00002890 branch  0x00007d8f 
+ 00013291  0x00002893 fetch  0x00000002 , 0x00004687 
+ 00013292  0x00002894 store  0x00000002 , 0x0000467e 
+ 00013293  0x00002896 call  0x00003404 
+ 00013294  0x00002898 jam  0x00000001 , 0x00000a99 
+ 00013295  0x00002899 branch  0x00007d8f 
+ 00013296  0x0000289c setarg  0x00000000 
+ 00013297  0x0000289d store  0x00000002 , 0x0000467e 
+ 00013298  0x0000289e jam  0x00000002 , 0x00000a99 
+ 00013299  0x0000289f branch  0x00007d8f 
+ 00013300  0x000028a2 jam  0x0000000f , 0x00000a99 
+ 00013301  0x000028a3 branch  0x00007d8f 
+ 00013302  0x000028a6 jam  0x00000010 , 0x00000a99 
+ 00013303  0x000028a7 branch  0x00007d8f 
+ 00013304  0x000028aa jam  0x0000000e , 0x00000a99 
+ 00013305  0x000028ab branch  0x00007d8f 
+ 00013306  0x000028ae jam  0x0000000d , 0x00000a99 
+ 00013307  0x000028af branch  0x00007d8f 
+ 00013308  0x000028b2 jam  0x00000017 , 0x00000a99 
+ 00013309  0x000028b3 branch  0x00007d8f 
+ 00013310  0x000028b6 jam  0x00000018 , 0x00000a99 
+ 00013311  0x000028b7 branch  0x00007d8f 
+ 00013312  0x000028ba jam  0x00000016 , 0x00000a99 
+ 00013313  0x000028bb branch  0x00007d8f 
+ 00013314  0x000028be jam  0x00000011 , 0x00000a99 
+ 00013315  0x000028bf branch  0x00007d8f 
+ 00013316  0x000028c2 jam  0x00000015 , 0x00000a99 
+ 00013317  0x000028c3 branch  0x00007d8f 
+ 00013318  0x000028c6 jam  0x00000014 , 0x00000a99 
+ 00013319  0x000028c7 branch  0x00007d8f 
+ 00013320  0x000028cb jam  0x00000013 , 0x00000a99 
+ 00013321  0x000028cc branch  0x00007d8f 
+ 00013322  0x000028cf jam  0x00000019 , 0x00000a99 
+ 00013323  0x000028d0 branch  0x00007d8f 
+ 00013324  0x000028d3 jam  0x00000006 , 0x00000a99 
+ 00013325  0x000028d4 branch  0x00007d8f 
+ 00013326  0x000028d7 jam  0x00000005 , 0x00000a99 
+ 00013327  0x000028d8 branch  0x00007d8f 
+ 00013328  0x000028db jam  0x0000001f , 0x00000a99 
+ 00013329  0x000028dc branch  0x00007d8f 
+ 00013330  0x000028df jam  0x00000020 , 0x00000a99 
+ 00013331  0x000028e0 branch  0x00007d8f 
+ 00013332  0x000028e3 jam  0x00000025 , 0x00000a99 
+ 00013333  0x000028e4 branch  0x00007d8f 
+ 00013334  0x000028e7 set1  0x0000000d , 0x00000000 
+ 00013335  0x000028e8 rtn 
+ 00013336  0x000028eb set0  0x0000000d , 0x00000000 
+ 00013337  0x000028ec rtn 
+ 00013338  0x00002901 call  0x0000342d 
+ 00013339  0x00002902 beq  0x00000002 , 0x00003424 
+ 00013340  0x00002904 setarg  0x00000001 
+ 00013341  0x00002905 istore  0x00000001 , 0x00000013 
+ 00013342  0x00002906 add  0x00000002 , 0x00000003 , 0x00000011 
+ 00013343  0x00002907 add  0x00000002 , 0x00000006 , 0x00000012 
+ 00013344  0x00002909 ifetcht  0x00000001 , 0x00000011 
+ 00013345  0x0000290a increase  0x00000001 , 0x00000013 
+ 00013346  0x0000290b istoret  0x00000001 , 0x00000013 
+ 00013347  0x0000290c branch  0x00003385 
+ 00013348  0x0000290f setarg  0x00000000 
+ 00013349  0x00002910 istore  0x00000001 , 0x00000013 
+ 00013350  0x00002911 fetch  0x00000002 , 0x00004682 
+ 00013351  0x00002912 bbit0  0x00000009 , 0x00003429 
+ 00013352  0x00002913 call  0x00003402 
+ 00013353  0x00002915 fetcht  0x00000002 , 0x0000423f 
+ 00013354  0x00002916 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00013355  0x00002917 add  0x00000002 , 0x00000004 , 0x00000012 
+ 00013356  0x00002918 branch  0x00003420 
+ 00013357  0x0000291b fetcht  0x00000002 , 0x0000423f 
+ 00013358  0x0000291c add  0x00000002 , 0x00000000 , 0x00000013 
+ 00013359  0x0000291d ifetch  0x00000001 , 0x00000013 
+ 00013360  0x0000291e rtn 
+ 00013361  0x00002921 call  0x0000342d 
+ 00013362  0x00002922 bne  0x00000000 , 0x00003434 
+ 00013363  0x00002923 branch  0x0000340a 
+ 00013364  0x00002925 add  0x00000002 , 0x0000000a , 0x00000012 
+ 00013365  0x00002926 branch  0x00003385 
+ 00013366  0x00002929 rtn  0x0000002b 
+ 00013367  0x0000292a jam  0x00000000 , 0x00008081 
+ 00013368  0x0000292b setarg  0x00003463 
+ 00013369  0x0000292c store  0x00000002 , 0x000041eb 
+ 00013370  0x0000292d setarg  0x0000696c 
+ 00013371  0x0000292e store  0x00000002 , 0x000041ed 
+ 00013372  0x0000292f setarg  0x000034f5 
+ 00013373  0x00002930 store  0x00000002 , 0x000041f3 
+ 00013374  0x00002931 setarg  0x000034f4 
+ 00013375  0x00002932 store  0x00000002 , 0x000041ef 
+ 00013376  0x00002933 setarg  0x0000347e 
+ 00013377  0x00002934 store  0x00000002 , 0x000041f5 
+ 00013378  0x00002935 setarg  0x000034b2 
+ 00013379  0x00002936 store  0x00000002 , 0x000041fd 
+ 00013380  0x00002937 setarg  0x00003465 
+ 00013381  0x00002938 store  0x00000002 , 0x000041fb 
+ 00013382  0x00002939 setarg  0x00003470 
+ 00013383  0x0000293a store  0x00000002 , 0x000041e9 
+ 00013384  0x0000293b setarg  0x00003501 
+ 00013385  0x0000293c store  0x00000002 , 0x000041f9 
+ 00013386  0x0000293d bpatch  0x000000cc , 0x00004019 
+ 00013387  0x0000293e call  0x0000359b 
+ 00013388  0x0000293f call  0x00006948 
+ 00013389  0x00002940 call  0x000035ad 
+ 00013390  0x00002941 call  0x00007d08 
+ 00013391  0x00002942 call  0x00007cd3 
+ 00013392  0x00002943 setarg  0x0000350b 
+ 00013393  0x00002944 store  0x00000002 , 0x00004766 
+ 00013394  0x00002945 setarg  0x000034fc 
+ 00013395  0x00002946 store  0x00000002 , 0x0000475d 
+ 00013396  0x00002947 setarg  0x000034f8 
+ 00013397  0x00002948 store  0x00000002 , 0x0000475f 
+ 00013398  0x00002949 setarg  0x0000346c 
+ 00013399  0x0000294a store  0x00000002 , 0x00004761 
+ 00013400  0x0000294b setarg  0x000035a2 
+ 00013401  0x0000294c store  0x00000002 , 0x000046a9 
+ 00013402  0x0000294d setarg  0x000035a4 
+ 00013403  0x0000294e store  0x00000002 , 0x000046ab 
+ 00013404  0x0000294f setarg  0x000035a9 
+ 00013405  0x00002950 store  0x00000002 , 0x000046b4 
+ 00013406  0x00002951 setarg  0x000035a6 
+ 00013407  0x00002952 store  0x00000002 , 0x000046b6 
+ 00013408  0x00002953 fetch  0x00000002 , 0x00004682 
+ 00013409  0x00002954 rtnbit1  0x0000000c 
+ 00013410  0x00002955 branch  0x0000340a 
+ 00013411  0x00002958 call  0x00003586 
+ 00013412  0x00002959 branch  0x0000340a 
+ 00013413  0x0000295c call  0x00005892 
+ 00013414  0x0000295d nrtn  0x00000034 
+ 00013415  0x0000295e arg  0x00000b06 , 0x00000011 
+ 00013416  0x0000295f call  0x00007e54 
+ 00013417  0x00002960 nrtn  0x00000028 
+ 00013418  0x00002961 arg  0x00000b06 , 0x00000006 
+ 00013419  0x00002962 branch  0x00004746 
+ 00013420  0x00002965 fetch  0x00000002 , 0x00004797 
+ 00013421  0x00002966 store  0x00000002 , 0x00004791 
+ 00013422  0x00002967 jam  0x00000001 , 0x00004753 
+ 00013423  0x00002968 branch  0x0000358f 
+ 00013424  0x0000296b fetch  0x00000001 , 0x0000479d 
+ 00013425  0x0000296c beq  0x00000001 , 0x00003479 
+ 00013426  0x0000296d fetch  0x00000002 , 0x00004682 
+ 00013427  0x0000296e bbit0  0x00000009 , 0x00003479 
+ 00013428  0x0000296f fetch  0x00000001 , 0x0000479e 
+ 00013429  0x00002970 beq  0x00000001 , 0x000033d0 
+ 00013430  0x00002971 fetch  0x00000001 , 0x00004700 
+ 00013431  0x00002972 nbranch  0x000033d0 , 0x00000034 
+ 00013432  0x00002973 branch  0x000033d2 
+ 00013433  0x00002976 fetch  0x00000001 , 0x0000479b 
+ 00013434  0x00002977 fetcht  0x00000001 , 0x0000479c 
+ 00013435  0x00002978 ior  0x00000002 , 0x0000003f 
+ 00013436  0x00002979 beq  0x00000001 , 0x000033d0 
+ 00013437  0x0000297a branch  0x000033d2 
+ 00013438  0x0000297d copy  0x00000013 , 0x0000003f 
+ 00013439  0x0000297e beq  0x0000002d , 0x00003431 
+ 00013440  0x0000297f beq  0x00000010 , 0x0000341a 
+ 00013441  0x00002980 beq  0x00000014 , 0x000034df 
+ 00013442  0x00002981 beq  0x00000015 , 0x000034e8 
+ 00013443  0x00002982 beq  0x00000040 , 0x00003485 
+ 00013444  0x00002983 rtn 
+ 00013445  0x00002985 fetch  0x00000002 , 0x00004509 
+ 00013446  0x00002986 beq  0x00000001 , 0x0000348c 
+ 00013447  0x00002988 fetch  0x00000002 , 0x000043d8 
+ 00013448  0x00002989 branch  0x000034a2 , 0x00000034 
+ 00013449  0x0000298b jam  0x00000002 , 0x0000478a 
+ 00013450  0x0000298c jam  0x0000003c , 0x0000478f 
+ 00013451  0x0000298d rtn 
+ 00013452  0x00002990 fetch  0x00000002 , 0x0000449a 
+ 00013453  0x00002991 branch  0x000034a0 , 0x00000034 
+ 00013454  0x00002993 jam  0x00000001 , 0x0000478a 
+ 00013455  0x00002994 fetcht  0x00000002 , 0x000047b4 
+ 00013456  0x00002995 fetch  0x00000002 , 0x00004496 
+ 00013457  0x00002996 iadd  0x00000002 , 0x0000003f 
+ 00013458  0x00002997 store  0x00000002 , 0x00004496 
+ 00013459  0x00002998 copy  0x0000003f , 0x00000011 
+ 00013460  0x00002999 fetch  0x00000002 , 0x00004498 
+ 00013461  0x0000299a iadd  0x00000002 , 0x0000003f 
+ 00013462  0x0000299b store  0x00000002 , 0x00004498 
+ 00013463  0x0000299c iadd  0x00000011 , 0x0000003f 
+ 00013464  0x0000299d rshift  0x0000003f , 0x00000002 
+ 00013465  0x0000299e fetch  0x00000002 , 0x000047c0 
+ 00013466  0x0000299f idiv  0x00000002 
+ 00013467  0x000029a0 call  0x00007f86 
+ 00013468  0x000029a1 quotient  0x0000003f 
+ 00013469  0x000029a2 store  0x00000002 , 0x0000449a 
+ 00013470  0x000029a3 jam  0x00000001 , 0x00004790 
+ 00013471  0x000029a4 rtn 
+ 00013472  0x000029a6 jam  0x00000003 , 0x0000478a 
+ 00013473  0x000029a7 rtn 
+ 00013474  0x000029aa jam  0x00000000 , 0x00004172 
+ 00013475  0x000029ab jam  0x00000000 , 0x00004790 
+ 00013476  0x000029ac fetch  0x00000002 , 0x000043d6 
+ 00013477  0x000029ad fetcht  0x00000002 , 0x000047be 
+ 00013478  0x000029ae isub  0x00000002 , 0x0000003e 
+ 00013479  0x000029af setflag  0x00000002 , 0x00000000 , 0x00000011 
+ 00013480  0x000029b0 fetch  0x00000002 , 0x000047c0 
+ 00013481  0x000029b1 fetcht  0x00000002 , 0x000043d6 
+ 00013482  0x000029b2 isub  0x00000002 , 0x0000003f 
+ 00013483  0x000029b3 setflag  0x00000002 , 0x00000001 , 0x00000011 
+ 00013484  0x000029b4 compare  0x00000003 , 0x00000011 , 0x00000003 
+ 00013485  0x000029b5 rtn  0x00000001 
+ 00013486  0x000029b6 fetch  0x00000008 , 0x000047be 
+ 00013487  0x000029b7 store  0x00000008 , 0x00004496 
+ 00013488  0x000029b8 jam  0x00000001 , 0x00004790 
+ 00013489  0x000029b9 rtn 
+ 00013490  0x000029be call  0x0000337b 
+ 00013491  0x000029bf call  0x000034b9 
+ 00013492  0x000029c0 call  0x000034be 
+ 00013493  0x000029c1 call  0x000034d5 
+ 00013494  0x000029c2 call  0x000034ca 
+ 00013495  0x000029c3 call  0x000034c4 
+ 00013496  0x000029c4 branch  0x000034d9 
+ 00013497  0x000029c8 arg  0x00004799 , 0x00000013 
+ 00013498  0x000029c9 arg  0x000034bc , 0x00000012 
+ 00013499  0x000029ca branch  0x0000336d 
+ 00013500  0x000029cc jam  0x00000000 , 0x0000479a 
+ 00013501  0x000029cd rtn 
+ 00013502  0x000029cf arg  0x00004793 , 0x00000013 
+ 00013503  0x000029d0 arg  0x000034c1 , 0x00000012 
+ 00013504  0x000029d1 branch  0x00003374 
+ 00013505  0x000029d3 arg  0x000046bf , 0x00000013 
+ 00013506  0x000029d4 arg  0x0000469e , 0x00000012 
+ 00013507  0x000029d5 branch  0x00003591 
+ 00013508  0x000029d9 arg  0x0000478f , 0x00000013 
+ 00013509  0x000029da arg  0x000034c7 , 0x00000012 
+ 00013510  0x000029db branch  0x0000336d 
+ 00013511  0x000029de fetch  0x00000002 , 0x0000449a 
+ 00013512  0x000029df store  0x00000001 , 0x00004172 
+ 00013513  0x000029e0 rtn 
+ 00013514  0x000029e2 arg  0x00004790 , 0x00000013 
+ 00013515  0x000029e3 arg  0x000034cd , 0x00000012 
+ 00013516  0x000029e4 branch  0x0000336d 
+ 00013517  0x000029e6 fetch  0x00000001 , 0x0000043f 
+ 00013518  0x000029e7 compare  0x00000000 , 0x0000003f , 0x00000060 
+ 00013519  0x000029e8 nbranch  0x000034d3 , 0x00000001 
+ 00013520  0x000029e9 jam  0x00000001 , 0x0000478a 
+ 00013521  0x000029ea call  0x00003416 
+ 00013522  0x000029eb branch  0x00005abf 
+ 00013523  0x000029ed jam  0x00000001 , 0x00004790 
+ 00013524  0x000029ee rtn 
+ 00013525  0x000029f1 arg  0x00004791 , 0x00000013 
+ 00013526  0x000029f2 arg  0x000034d8 , 0x00000012 
+ 00013527  0x000029f3 branch  0x00003374 
+ 00013528  0x000029f7 branch  0x0000341a 
+ 00013529  0x000029fc arg  0x0000478d , 0x00000013 
+ 00013530  0x000029fd arg  0x000034dc , 0x00000012 
+ 00013531  0x000029fe branch  0x00003374 
+ 00013532  0x00002a00 fetch  0x00000002 , 0x000047a7 
+ 00013533  0x00002a01 store  0x00000002 , 0x0000478d 
+ 00013534  0x00002a02 branch  0x000035af 
+ 00013535  0x00002a06 fetch  0x00000002 , 0x000047a7 
+ 00013536  0x00002a07 store  0x00000002 , 0x0000478d 
+ 00013537  0x00002a08 setarg  0x00000000 
+ 00013538  0x00002a09 store  0x00000002 , 0x00004793 
+ 00013539  0x00002a0a store  0x00000002 , 0x00004791 
+ 00013540  0x00002a0b call  0x0000355c 
+ 00013541  0x00002a0c call  0x00003586 
+ 00013542  0x00002a0d jam  0x00000000 , 0x00004172 
+ 00013543  0x00002a0e branch  0x000033f8 
+ 00013544  0x00002a14 setarg  0x00000000 
+ 00013545  0x00002a15 store  0x00000004 , 0x0000478d 
+ 00013546  0x00002a16 store  0x00000003 , 0x0000478a 
+ 00013547  0x00002a17 store  0x00000002 , 0x00004509 
+ 00013548  0x00002a19 jam  0x00000001 , 0x000047a0 
+ 00013549  0x00002a1a fetch  0x00000002 , 0x00004797 
+ 00013550  0x00002a1b store  0x00000002 , 0x00004791 
+ 00013551  0x00002a1c call  0x00007e38 
+ 00013552  0x00002a1d fetch  0x00000001 , 0x00004759 
+ 00013553  0x00002a1e rtneq  0x00000000 
+ 00013554  0x00002a1f call  0x0000358f 
+ 00013555  0x00002a20 branch  0x0000356e 
+ 00013556  0x00002a25 branch  0x00003508 
+ 00013557  0x00002a29 fetch  0x00000001 , 0x00004759 
+ 00013558  0x00002a2a rtnne  0x00000002 
+ 00013559  0x00002a2b branch  0x00003508 
+ 00013560  0x00002a31 arg  0x000046cd , 0x00000013 
+ 00013561  0x00002a32 call  0x00003582 
+ 00013562  0x00002a33 arg  0x000046c6 , 0x00000013 
+ 00013563  0x00002a35 branch  0x00003584 
+ 00013564  0x00002a38 jam  0x00000000 , 0x0000436e 
+ 00013565  0x00002a39 arg  0x000046db , 0x00000013 
+ 00013566  0x00002a3a call  0x00003582 
+ 00013567  0x00002a3b arg  0x000046d4 , 0x00000013 
+ 00013568  0x00002a3c branch  0x000034fb 
+ 00013569  0x00002a3f fetch  0x00000001 , 0x00000477 
+ 00013570  0x00002a40 beq  0x00000012 , 0x00003504 
+ 00013571  0x00002a41 rtn 
+ 00013572  0x00002a43 fetch  0x00000002 , 0x00000478 
+ 00013573  0x00002a45 beq  0x0000000d , 0x00003536 
+ 00013574  0x00002a46 beq  0x0000000b , 0x00003571 
+ 00013575  0x00002a47 rtn 
+ 00013576  0x00002a4d fetch  0x00000001 , 0x00004753 
+ 00013577  0x00002a4e rtn  0x00000034 
+ 00013578  0x00002a4f branch  0x00006978 
+ 00013579  0x00002a54 copy  0x00000011 , 0x0000003f 
+ 00013580  0x00002a55 branch  0x00003510 , 0x00000034 
+ 00013581  0x00002a57 copy  0x00000007 , 0x0000003f 
+ 00013582  0x00002a58 beq  0x00000000 , 0x00003513 
+ 00013583  0x00002a59 rtn 
+ 00013584  0x00002a5b copy  0x00000007 , 0x0000003f 
+ 00013585  0x00002a5c beq  0x00000000 , 0x0000351b 
+ 00013586  0x00002a5d rtn 
+ 00013587  0x00002a60 jam  0x00000001 , 0x0000479d 
+ 00013588  0x00002a61 arg  0x000046f7 , 0x00000013 
+ 00013589  0x00002a62 call  0x00003582 
+ 00013590  0x00002a63 arg  0x000046f0 , 0x00000013 
+ 00013591  0x00002a64 call  0x00003584 
+ 00013592  0x00002a65 fetch  0x00000002 , 0x00004682 
+ 00013593  0x00002a66 bbit0  0x00000009 , 0x00003532 
+ 00013594  0x00002a67 branch  0x00003521 
+ 00013595  0x00002a6a jam  0x00000000 , 0x0000479d 
+ 00013596  0x00002a6b branch  0x0000351d 
+ 00013597  0x00002a70 fetch  0x00000001 , 0x0000479a 
+ 00013598  0x00002a71 rtnne  0x00000001 
+ 00013599  0x00002a72 jam  0x00000005 , 0x00004799 
+ 00013600  0x00002a73 rtn 
+ 00013601  0x00002a76 fetch  0x00000001 , 0x0000479a 
+ 00013602  0x00002a77 pincrease  0x00000001 
+ 00013603  0x00002a78 store  0x00000001 , 0x0000479a 
+ 00013604  0x00002a79 beq  0x00000001 , 0x00003527 
+ 00013605  0x00002a7a beq  0x00000002 , 0x0000352b 
+ 00013606  0x00002a7b rtn 
+ 00013607  0x00002a7d call  0x0000355c 
+ 00013608  0x00002a7e jam  0x00000001 , 0x00004771 
+ 00013609  0x00002a7f arg  0x0000476c , 0x00000013 
+ 00013610  0x00002a80 branch  0x00003544 
+ 00013611  0x00002a82 jam  0x00000000 , 0x0000479a 
+ 00013612  0x00002a83 jam  0x00000002 , 0x00004771 
+ 00013613  0x00002a84 arg  0x0000476c , 0x00000013 
+ 00013614  0x00002a85 call  0x00003544 
+ 00013615  0x00002a86 fetch  0x00000001 , 0x0000479e 
+ 00013616  0x00002a87 beq  0x00000001 , 0x00003551 
+ 00013617  0x00002a88 rtn 
+ 00013618  0x00002a8b fetch  0x00000002 , 0x00004797 
+ 00013619  0x00002a8c store  0x00000002 , 0x00004791 
+ 00013620  0x00002a8d call  0x0000355c 
+ 00013621  0x00002a8e branch  0x0000358f 
+ 00013622  0x00002a92 bpatch  0x000000cd , 0x00004019 
+ 00013623  0x00002a93 call  0x000036fc 
+ 00013624  0x00002a94 ifetch  0x00000001 , 0x00000011 
+ 00013625  0x00002a95 beq  0x00000003 , 0x0000353c 
+ 00013626  0x00002a96 beq  0x00000007 , 0x00003540 
+ 00013627  0x00002a97 rtn 
+ 00013628  0x00002a9a fetch  0x00000001 , 0x0000479e 
+ 00013629  0x00002a9b beq  0x00000000 , 0x00003551 
+ 00013630  0x00002a9c beq  0x00000001 , 0x0000355c 
+ 00013631  0x00002a9d rtn 
+ 00013632  0x00002aa0 ifetch  0x00000001 , 0x00000012 
+ 00013633  0x00002aa1 beq  0x00000001 , 0x00003564 
+ 00013634  0x00002aa2 beq  0x00000000 , 0x00003569 
+ 00013635  0x00002aa3 rtn 
+ 00013636  0x00002aab bpatch  0x000000ce , 0x00004019 
+ 00013637  0x00002aac fetch  0x00000001 , 0x0000478b 
+ 00013638  0x00002aad isolate1  0x00000000 , 0x0000003f 
+ 00013639  0x00002aae nrtn  0x00000001 
+ 00013640  0x00002aaf add  0x00000013 , 0x00000006 , 0x00000006 
+ 00013641  0x00002ab0 ifetch  0x00000002 , 0x00000006 
+ 00013642  0x00002ab1 byteswap  0x0000003f , 0x0000003f 
+ 00013643  0x00002ab2 add  0x0000003f , 0x00000005 , 0x00000039 
+ 00013644  0x00002ab3 add  0x00000013 , 0x00000003 , 0x00000006 
+ 00013645  0x00002ab4 call  0x000036f0 
+ 00013646  0x00002ab5 istore  0x00000001 , 0x00000006 
+ 00013647  0x00002ab6 copy  0x00000013 , 0x00000011 
+ 00013648  0x00002ab7 branch  0x00007e3d 
+ 00013649  0x00002abe fetch  0x00000001 , 0x00004759 
+ 00013650  0x00002abf rtn  0x00000034 
+ 00013651  0x00002ac0 jam  0x00000001 , 0x0000479e 
+ 00013652  0x00002ac1 arg  0x000046e9 , 0x00000013 
+ 00013653  0x00002ac2 call  0x00003582 
+ 00013654  0x00002ac3 arg  0x000046e2 , 0x00000013 
+ 00013655  0x00002ac4 call  0x00003584 
+ 00013656  0x00002ac5 jam  0x00000004 , 0x00004780 
+ 00013657  0x00002ac6 jam  0x00000001 , 0x00004783 
+ 00013658  0x00002ac7 arg  0x0000477b , 0x00000013 
+ 00013659  0x00002ac8 branch  0x00003544 
+ 00013660  0x00002aca fetch  0x00000001 , 0x0000479e 
+ 00013661  0x00002acb rtn  0x00000034 
+ 00013662  0x00002acc jam  0x00000000 , 0x0000479e 
+ 00013663  0x00002acd call  0x00003586 
+ 00013664  0x00002ace jam  0x00000004 , 0x00004780 
+ 00013665  0x00002acf jam  0x00000000 , 0x00004783 
+ 00013666  0x00002ad0 arg  0x0000477b , 0x00000013 
+ 00013667  0x00002ad1 branch  0x00003544 
+ 00013668  0x00002ad4 jam  0x00000001 , 0x0000479f 
+ 00013669  0x00002ad5 jam  0x00000007 , 0x00004780 
+ 00013670  0x00002ad6 jam  0x00000001 , 0x00004783 
+ 00013671  0x00002ad7 arg  0x0000477b , 0x00000013 
+ 00013672  0x00002ad8 branch  0x00003544 
+ 00013673  0x00002ada jam  0x00000000 , 0x0000479f 
+ 00013674  0x00002adb jam  0x00000007 , 0x00004780 
+ 00013675  0x00002adc jam  0x00000000 , 0x00004783 
+ 00013676  0x00002add arg  0x0000477b , 0x00000013 
+ 00013677  0x00002ade branch  0x00003544 
+ 00013678  0x00002ae0 fetch  0x00000001 , 0x0000479f 
+ 00013679  0x00002ae1 rtn  0x00000034 
+ 00013680  0x00002ae2 branch  0x00003551 
+ 00013681  0x00002ae5 ifetch  0x00000002 , 0x00000011 
+ 00013682  0x00002ae6 store  0x00000002 , 0x0000478b 
+ 00013683  0x00002ae7 isolate1  0x00000000 , 0x0000003f 
+ 00013684  0x00002ae8 nrtn  0x00000001 
+ 00013685  0x00002ae9 fetch  0x00000001 , 0x000047a0 
+ 00013686  0x00002aea rtn  0x00000034 
+ 00013687  0x00002aeb jam  0x00000000 , 0x000047a0 
+ 00013688  0x00002aec fetch  0x00000008 , 0x000047b6 
+ 00013689  0x00002aed store  0x00000008 , 0x00004496 
+ 00013690  0x00002aee jam  0x00000002 , 0x00004790 
+ 00013691  0x00002aef call  0x000035af 
+ 00013692  0x00002af0 call  0x000035b9 
+ 00013693  0x00002af1 jam  0x00000007 , 0x00004780 
+ 00013694  0x00002af2 fetch  0x00000001 , 0x0000479f 
+ 00013695  0x00002af3 store  0x00000001 , 0x00004783 
+ 00013696  0x00002af4 arg  0x0000477b , 0x00000013 
+ 00013697  0x00002af5 branch  0x00003544 
+ 00013698  0x00002afa arg  0x00000001 , 0x00000011 
+ 00013699  0x00002afb branch  0x00003585 
+ 00013700  0x00002afd arg  0x00000000 , 0x00000011 
+ 00013701  0x00002aff branch  0x0000358c 
+ 00013702  0x00002b02 arg  0x00000000 , 0x00000011 
+ 00013703  0x00002b03 call  0x00007d19 
+ 00013704  0x00002b04 arg  0x00000001 , 0x00000011 
+ 00013705  0x00002b05 call  0x00007d19 
+ 00013706  0x00002b06 fetch  0x00000001 , 0x000047a1 
+ 00013707  0x00002b07 branch  0x000069d7 
+ 00013708  0x00002b0a call  0x00007d04 
+ 00013709  0x00002b0b arg  0x00000007 , 0x00000039 
+ 00013710  0x00002b0c branch  0x00007d26 
+ 00013711  0x00002b11 arg  0x000046b8 , 0x00000013 
+ 00013712  0x00002b12 arg  0x0000469a , 0x00000012 
+ 00013713  0x00002b14 call  0x00003596 
+ 00013714  0x00002b15 call  0x00003584 
+ 00013715  0x00002b16 fetch  0x00000002 , 0x00004795 
+ 00013716  0x00002b17 store  0x00000002 , 0x00004793 
+ 00013717  0x00002b18 branch  0x000033fa 
+ 00013718  0x00002b1b ifetch  0x00000002 , 0x00000012 
+ 00013719  0x00002b1c store  0x00000002 , 0x00004154 
+ 00013720  0x00002b1d ifetch  0x00000002 , 0x00000006 
+ 00013721  0x00002b1e store  0x00000002 , 0x00004482 
+ 00013722  0x00002b1f rtn 
+ 00013723  0x00002b22 arg  0x00000000 , 0x00000011 
+ 00013724  0x00002b23 call  0x000069a6 
+ 00013725  0x00002b24 fetch  0x00000006 , 0x000047a1 
+ 00013726  0x00002b25 store  0x00000006 , 0x00000a9a 
+ 00013727  0x00002b26 call  0x000069ae 
+ 00013728  0x00002b27 fetch  0x00000001 , 0x000047a1 
+ 00013729  0x00002b28 branch  0x000069d7 
+ 00013730  0x00002b2b jam  0x00000001 , 0x0000479b 
+ 00013731  0x00002b2c rtn 
+ 00013732  0x00002b2e jam  0x00000000 , 0x0000479b 
+ 00013733  0x00002b2f rtn 
+ 00013734  0x00002b34 jam  0x00000000 , 0x0000479c 
+ 00013735  0x00002b35 fetch  0x00000001 , 0x000047a1 
+ 00013736  0x00002b36 branch  0x000069d7 
+ 00013737  0x00002b39 jam  0x00000001 , 0x0000479c 
+ 00013738  0x00002b3a fetch  0x00000006 , 0x000047a1 
+ 00013739  0x00002b3b store  0x00000006 , 0x00000a9a 
+ 00013740  0x00002b3c branch  0x000069ae 
+ 00013741  0x00002b41 jam  0x00000000 , 0x0000422d 
+ 00013742  0x00002b42 branch  0x000068a8 
+ 00013743  0x00002b45 call  0x000068eb 
+ 00013744  0x00002b46 call  0x00006908 
+ 00013745  0x00002b47 store  0x00000002 , 0x000047b0 
+ 00013746  0x00002b48 arg  0x000047aa , 0x00000011 
+ 00013747  0x00002b49 call  0x00006930 
+ 00013748  0x00002b4a store  0x00000001 , 0x000047a9 
+ 00013749  0x00002b4b beq  0x00000000 , 0x000035be 
+ 00013750  0x00002b4c sub  0x0000003f , 0x00000064 , 0x0000003e 
+ 00013751  0x00002b4d nbranch  0x000035bc , 0x00000002 
+ 00013752  0x00002b4e store  0x00000001 , 0x00004783 
+ 00013753  0x00002b50 jam  0x00000005 , 0x00004780 
+ 00013754  0x00002b51 arg  0x0000477b , 0x00000013 
+ 00013755  0x00002b52 branch  0x00003544 
+ 00013756  0x00002b54 jam  0x00000064 , 0x00004783 
+ 00013757  0x00002b55 branch  0x000035b9 
+ 00013758  0x00002b58 branch  0x0000341a 
+ 00013759  0x00002b5d rtn  0x0000002b 
+ 00013760  0x00002b5e hfetch  0x00000001 , 0x00008081 
+ 00013761  0x00002b5f and_into  0x000000f0 , 0x0000003f 
+ 00013762  0x00002b60 hstore  0x00000001 , 0x00008081 
+ 00013763  0x00002b61 setarg  0x00003631 
+ 00013764  0x00002b62 store  0x00000002 , 0x000041eb 
+ 00013765  0x00002b64 setarg  0x00003633 
+ 00013766  0x00002b65 store  0x00000002 , 0x000041ed 
+ 00013767  0x00002b67 setarg  0x0000340a 
+ 00013768  0x00002b68 store  0x00000002 , 0x000041f7 
+ 00013769  0x00002b6a setarg  0x00003635 
+ 00013770  0x00002b6b store  0x00000002 , 0x000041f3 
+ 00013771  0x00002b6d setarg  0x0000364b 
+ 00013772  0x00002b6e store  0x00000002 , 0x000041f5 
+ 00013773  0x00002b70 setarg  0x000033d0 
+ 00013774  0x00002b71 store  0x00000002 , 0x000041e9 
+ 00013775  0x00002b73 setarg  0x000036f6 
+ 00013776  0x00002b74 store  0x00000002 , 0x000041f9 
+ 00013777  0x00002b76 setarg  0x0000367a 
+ 00013778  0x00002b77 store  0x00000002 , 0x000041fd 
+ 00013779  0x00002b79 call  0x00002c7a 
+ 00013780  0x00002b7a setarg  0x00003722 
+ 00013781  0x00002b7b add  0x00000013 , 0x000000de , 0x00000005 
+ 00013782  0x00002b7c istore  0x00000002 , 0x00000005 
+ 00013783  0x00002b7e setarg  0x000035ed 
+ 00013784  0x00002b7f store  0x00000002 , 0x0000475b 
+ 00013785  0x00002b81 setarg  0x000035ef 
+ 00013786  0x00002b82 store  0x00000002 , 0x0000475f 
+ 00013787  0x00002b84 bpatch  0x000000cf , 0x00004019 
+ 00013788  0x00002b85 call  0x00003628 
+ 00013789  0x00002b86 call  0x00007e38 
+ 00013790  0x00002b87 jam  0x00000002 , 0x00004172 
+ 00013791  0x00002b88 jam  0x00000000 , 0x000049f6 
+ 00013792  0x00002b89 fetch  0x00000001 , 0x000047cb 
+ 00013793  0x00002b8a store  0x00000001 , 0x0000469a 
+ 00013794  0x00002b8b beq  0x00000000 , 0x000035ee 
+ 00013795  0x00002b8c fetch  0x00000001 , 0x000047cc 
+ 00013796  0x00002b8d store  0x00000001 , 0x00004686 
+ 00013797  0x00002b8e jam  0x00000000 , 0x0000436e 
+ 00013798  0x00002b90 call  0x0000360f 
+ 00013799  0x00002b91 call  0x00007cd3 
+ 00013800  0x00002b92 call  0x00007cdd 
+ 00013801  0x00002b93 jam  0x00000001 , 0x000047f3 
+ 00013802  0x00002b94 fetch  0x00000002 , 0x00004682 
+ 00013803  0x00002b95 rtnbit1  0x0000000c 
+ 00013804  0x00002b96 branch  0x0000340a 
+ 00013805  0x00002b99 branch  0x0000360f 
+ 00013806  0x00002b9c jam  0x00000002 , 0x000047f3 
+ 00013807  0x00002b9e jam  0x00000001 , 0x0000436e 
+ 00013808  0x00002b9f call  0x0000360f 
+ 00013809  0x00002ba0 arg  0x00000000 , 0x00000011 
+ 00013810  0x00002ba1 call  0x00007d1e 
+ 00013811  0x00002ba3 setarg  0x00000020 
+ 00013812  0x00002ba4 call  0x000046f0 
+ 00013813  0x00002ba6 arg  0x000043b7 , 0x00000005 
+ 00013814  0x00002ba7 fetch  0x00000001 , 0x000044a0 
+ 00013815  0x00002ba9 and  0x0000003f , 0x000000f0 , 0x00000002 
+ 00013816  0x00002baa rshift4  0x00000002 , 0x00000002 
+ 00013817  0x00002bab call  0x00003609 
+ 00013818  0x00002bac istoret  0x00000001 , 0x00000005 
+ 00013819  0x00002bad and  0x0000003f , 0x0000000f , 0x00000002 
+ 00013820  0x00002bae call  0x00003609 
+ 00013821  0x00002baf istoret  0x00000001 , 0x00000005 
+ 00013822  0x00002bb0 call  0x000057a6 
+ 00013823  0x00002bb1 fetcht  0x00000001 , 0x000043af 
+ 00013824  0x00002bb2 copy  0x00000002 , 0x00000039 
+ 00013825  0x00002bb3 arg  0x00004372 , 0x00000005 
+ 00013826  0x00002bb4 arg  0x000043b0 , 0x00000006 
+ 00013827  0x00002bb5 call  0x00007f01 
+ 00013828  0x00002bb7 fetcht  0x00000001 , 0x000043af 
+ 00013829  0x00002bb8 copy  0x00000002 , 0x00000039 
+ 00013830  0x00002bb9 arg  0x00004392 , 0x00000005 
+ 00013831  0x00002bba arg  0x000043b0 , 0x00000006 
+ 00013832  0x00002bbb branch  0x00007f01 
+ 00013833  0x00002bbd sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00013834  0x00002bbe branch  0x0000360d , 0x00000002 
+ 00013835  0x00002bbf add  0x00000002 , 0x00000037 , 0x00000002 
+ 00013836  0x00002bc0 rtn 
+ 00013837  0x00002bc2 add  0x00000002 , 0x00000030 , 0x00000002 
+ 00013838  0x00002bc3 rtn 
+ 00013839  0x00002bc6 fetch  0x00000001 , 0x000047c0 
+ 00013840  0x00002bc7 bne  0x000000ff , 0x00003621 
+ 00013841  0x00002bc9 fetch  0x00000001 , 0x000047be 
+ 00013842  0x00002bca bne  0x000000ff , 0x00003624 
+ 00013843  0x00002bcc fetch  0x00000001 , 0x000047c9 
+ 00013844  0x00002bcd bne  0x000000ff , 0x00003626 
+ 00013845  0x00002bcf fetch  0x00000001 , 0x0000472c 
+ 00013846  0x00002bd0 copy  0x0000003f , 0x00000039 
+ 00013847  0x00002bd1 setarg  0x0000472d 
+ 00013848  0x00002bd2 copy  0x0000003f , 0x00000011 
+ 00013849  0x00002bd4 copy  0x00000011 , 0x00000006 
+ 00013850  0x00002bd5 ifetch  0x00000001 , 0x00000006 
+ 00013851  0x00002bd6 copy  0x00000006 , 0x00000011 
+ 00013852  0x00002bd7 beq  0x000000ff , 0x0000361f 
+ 00013853  0x00002bd8 copy  0x0000003f , 0x00000002 
+ 00013854  0x00002bd9 call  0x0000680e 
+ 00013855  0x00002bdb loop  0x00003619 
+ 00013856  0x00002bdd rtn 
+ 00013857  0x00002bdf fetch  0x00000008 , 0x000047c0 
+ 00013858  0x00002be0 store  0x00000008 , 0x0000472f 
+ 00013859  0x00002be1 branch  0x00003611 
+ 00013860  0x00002be3 store  0x00000001 , 0x0000472d 
+ 00013861  0x00002be4 branch  0x00003613 
+ 00013862  0x00002be6 store  0x00000001 , 0x0000472e 
+ 00013863  0x00002be7 branch  0x00003615 
+ 00013864  0x00002beb arg  0x00000000 , 0x00000011 
+ 00013865  0x00002bec call  0x000069a6 
+ 00013866  0x00002bed call  0x000037e4 
+ 00013867  0x00002bee call  0x00002c7d 
+ 00013868  0x00002bef branch  0x0000362d 
+ 00013869  0x00002bf2 jam  0x00000064 , 0x000047cf 
+ 00013870  0x00002bf3 fetch  0x00000001 , 0x000047c9 
+ 00013871  0x00002bf4 store  0x00000001 , 0x00004744 
+ 00013872  0x00002bf5 branch  0x000068a8 
+ 00013873  0x00002bf8 call  0x00006835 
+ 00013874  0x00002bf9 branch  0x0000696c 
+ 00013875  0x00002bfc branch  0x0000696c 
+ 00013876  0x00002c01 branch  0x00006978 
+ 00013877  0x00002c04 call  0x00003642 
+ 00013878  0x00002c05 call  0x000037ee 
+ 00013879  0x00002c06 call  0x00003639 
+ 00013880  0x00002c07 branch  0x00003634 
+ 00013881  0x00002c0a fetch  0x00000002 , 0x00004682 
+ 00013882  0x00002c0b rtnbit1  0x00000009 
+ 00013883  0x00002c0c fetch  0x00000001 , 0x000049f6 
+ 00013884  0x00002c0d beq  0x00000001 , 0x0000363e 
+ 00013885  0x00002c0e rtn 
+ 00013886  0x00002c10 fetch  0x00000001 , 0x000047ea 
+ 00013887  0x00002c11 rtneq  0x00000001 
+ 00013888  0x00002c12 jam  0x00000001 , 0x000047ea 
+ 00013889  0x00002c13 branch  0x00003654 
+ 00013890  0x00002c16 fetch  0x00000002 , 0x00004682 
+ 00013891  0x00002c17 rtnbit0  0x00000009 
+ 00013892  0x00002c18 call  0x00005892 
+ 00013893  0x00002c19 nrtn  0x00000034 
+ 00013894  0x00002c1a arg  0x00004718 , 0x00000011 
+ 00013895  0x00002c1b call  0x00007e54 
+ 00013896  0x00002c1c nrtn  0x00000028 
+ 00013897  0x00002c1d arg  0x00004718 , 0x00000006 
+ 00013898  0x00002c1e branch  0x00004746 
+ 00013899  0x00002c21 copy  0x00000013 , 0x0000003f 
+ 00013900  0x00002c22 beq  0x0000002d , 0x00003431 
+ 00013901  0x00002c23 beq  0x00000010 , 0x0000341a 
+ 00013902  0x00002c24 beq  0x00000014 , 0x00003651 
+ 00013903  0x00002c25 beq  0x00000015 , 0x00003660 
+ 00013904  0x00002c26 rtn 
+ 00013905  0x00002c29 setarg  0x00000000 
+ 00013906  0x00002c2a call  0x00003220 
+ 00013907  0x00002c2b branch  0x00003656 
+ 00013908  0x00002c2d fetch  0x00000002 , 0x000047eb 
+ 00013909  0x00002c2e store  0x00000002 , 0x000047ed 
+ 00013910  0x00002c30 jam  0x00000014 , 0x000047ce 
+ 00013911  0x00002c31 jam  0x00000000 , 0x00004091 
+ 00013912  0x00002c32 call  0x000033f8 
+ 00013913  0x00002c33 call  0x00003416 
+ 00013914  0x00002c34 fetch  0x00000001 , 0x000047bd 
+ 00013915  0x00002c35 beq  0x00000001 , 0x0000365e 
+ 00013916  0x00002c37 arg  0x00000000 , 0x00000011 
+ 00013917  0x00002c38 branch  0x00007d14 
+ 00013918  0x00002c3a arg  0x00000000 , 0x00000011 
+ 00013919  0x00002c3b branch  0x00007d19 
+ 00013920  0x00002c3e setarg  0x00000002 
+ 00013921  0x00002c3f call  0x00003220 
+ 00013922  0x00002c41 setarg  0x00000000 
+ 00013923  0x00002c42 store  0x00000005 , 0x0000479c 
+ 00013924  0x00002c43 setarg  0x00000004 
+ 00013925  0x00002c44 call  0x000069d7 
+ 00013926  0x00002c45 setarg  0x00000005 
+ 00013927  0x00002c46 call  0x000069d7 
+ 00013928  0x00002c47 setarg  0x00000014 
+ 00013929  0x00002c48 call  0x000069d7 
+ 00013930  0x00002c49 setarg  0x00000015 
+ 00013931  0x00002c4a call  0x000069d7 
+ 00013932  0x00002c4b setarg  0x00000016 
+ 00013933  0x00002c4c call  0x000069d7 
+ 00013934  0x00002c4d setarg  0x00000007 
+ 00013935  0x00002c4e call  0x000069d7 
+ 00013936  0x00002c4f call  0x00007e38 
+ 00013937  0x00002c50 jam  0x0000000a , 0x0000475e 
+ 00013938  0x00002c51 jam  0x0000000a , 0x00004760 
+ 00013939  0x00002c52 jam  0x0000000a , 0x00004762 
+ 00013940  0x00002c54 jam  0x00000002 , 0x00004172 
+ 00013941  0x00002c55 arg  0x00000000 , 0x00000011 
+ 00013942  0x00002c56 call  0x00007d1e 
+ 00013943  0x00002c58 setarg  0x00000020 
+ 00013944  0x00002c59 call  0x000046f0 
+ 00013945  0x00002c5a branch  0x000033fa 
+ 00013946  0x00002c5e call  0x0000373b 
+ 00013947  0x00002c5f call  0x0000373e 
+ 00013948  0x00002c60 call  0x00003741 
+ 00013949  0x00002c61 call  0x0000337b 
+ 00013950  0x00002c62 call  0x000036c8 
+ 00013951  0x00002c63 call  0x000036a1 
+ 00013952  0x00002c64 call  0x0000368a 
+ 00013953  0x00002c65 call  0x00003683 
+ 00013954  0x00002c66 branch  0x0000368f 
+ 00013955  0x00002c69 arg  0x0000479a , 0x00000013 
+ 00013956  0x00002c6a arg  0x00003686 , 0x00000012 
+ 00013957  0x00002c6b branch  0x0000336d 
+ 00013958  0x00002c6d call  0x00003847 
+ 00013959  0x00002c6e nrtn  0x00000001 
+ 00013960  0x00002c6f jam  0x00000001 , 0x0000479b 
+ 00013961  0x00002c70 rtn 
+ 00013962  0x00002c73 arg  0x000047ed , 0x00000013 
+ 00013963  0x00002c74 arg  0x0000368d , 0x00000012 
+ 00013964  0x00002c75 branch  0x00003374 
+ 00013965  0x00002c77 jam  0x00000002 , 0x000047ea 
+ 00013966  0x00002c78 branch  0x00003662 
+ 00013967  0x00002c7b arg  0x000047f1 , 0x00000013 
+ 00013968  0x00002c7c arg  0x00003692 , 0x00000012 
+ 00013969  0x00002c7d branch  0x0000336d 
+ 00013970  0x00002c7f fetch  0x00000001 , 0x000047f2 
+ 00013971  0x00002c80 branch  0x0000369e , 0x00000034 
+ 00013972  0x00002c81 jam  0x00000002 , 0x000047f1 
+ 00013973  0x00002c82 jam  0x00000000 , 0x000047f2 
+ 00013974  0x00002c83 setarg  0x00000a02 
+ 00013975  0x00002c84 store  0x00000002 , 0x00004752 
+ 00013976  0x00002c85 fetch  0x00000001 , 0x000047b9 
+ 00013977  0x00002c86 beq  0x00000003 , 0x0000369b 
+ 00013978  0x00002c88 branch  0x00003762 
+ 00013979  0x00002c8a setarg  0x00000a02 
+ 00013980  0x00002c8b store  0x00000002 , 0x00004754 
+ 00013981  0x00002c8c branch  0x00003762 
+ 00013982  0x00002c8e setarg  0x00000000 
+ 00013983  0x00002c8f store  0x00000004 , 0x00004752 
+ 00013984  0x00002c90 branch  0x00003762 
+ 00013985  0x00002c93 fetch  0x00000001 , 0x000047c8 
+ 00013986  0x00002c94 rtn  0x00000034 
+ 00013987  0x00002c95 fetch  0x00000002 , 0x00004682 
+ 00013988  0x00002c96 bbit0  0x00000009 , 0x000036c6 
+ 00013989  0x00002c97 arg  0x000047ce , 0x00000013 
+ 00013990  0x00002c98 arg  0x000036a8 , 0x00000012 
+ 00013991  0x00002c99 branch  0x0000336d 
+ 00013992  0x00002c9b fetch  0x00000001 , 0x000047cd 
+ 00013993  0x00002c9c store  0x00000001 , 0x000047ce 
+ 00013994  0x00002c9d fetch  0x00000001 , 0x000047d1 
+ 00013995  0x00002c9e nrtn  0x00000034 
+ 00013996  0x00002ca0 call  0x000068eb 
+ 00013997  0x00002ca1 call  0x00006908 
+ 00013998  0x00002ca2 store  0x00000002 , 0x000047e8 
+ 00013999  0x00002ca3 arg  0x000047e2 , 0x00000011 
+ 00014000  0x00002ca4 call  0x00006930 
+ 00014001  0x00002ca5 fetcht  0x00000001 , 0x000047cf 
+ 00014002  0x00002ca6 isub  0x00000002 , 0x0000003e 
+ 00014003  0x00002ca7 branch  0x000036b6 , 0x00000002 
+ 00014004  0x00002ca8 store  0x00000001 , 0x000047cf 
+ 00014005  0x00002ca9 copy  0x0000003f , 0x00000002 
+ 00014006  0x00002cab storet  0x00000001 , 0x000047d0 
+ 00014007  0x00002cac fetch  0x00000001 , 0x000047ca 
+ 00014008  0x00002cad isub  0x00000002 , 0x0000003e 
+ 00014009  0x00002cae call  0x000036c1 , 0x00000002 
+ 00014010  0x00002caf storet  0x00000001 , 0x000047db 
+ 00014011  0x00002cb0 arg  0x00000006 , 0x00000039 
+ 00014012  0x00002cb1 arg  0x000047d6 , 0x00000006 
+ 00014013  0x00002cb2 call  0x000036f0 
+ 00014014  0x00002cb3 store  0x00000001 , 0x000047dc 
+ 00014015  0x00002cb4 arg  0x000047d3 , 0x00000011 
+ 00014016  0x00002cb5 branch  0x00007e3d 
+ 00014017  0x00002cb7 fetch  0x00000001 , 0x000047d2 
+ 00014018  0x00002cb8 nrtn  0x00000034 
+ 00014019  0x00002cb9 jam  0x00000001 , 0x000047d2 
+ 00014020  0x00002cba arg  0x00000001 , 0x00000011 
+ 00014021  0x00002cbb branch  0x00007d1e 
+ 00014022  0x00002cbd arg  0x00000001 , 0x00000011 
+ 00014023  0x00002cbe branch  0x00007d19 
+ 00014024  0x00002cc1 arg  0x000047a4 , 0x00000013 
+ 00014025  0x00002cc2 arg  0x000036cb , 0x00000012 
+ 00014026  0x00002cc3 branch  0x0000336d 
+ 00014027  0x00002cc5 jam  0x00000005 , 0x000047a4 
+ 00014028  0x00002cc6 jam  0x00000000 , 0x000047a6 
+ 00014029  0x00002cc7 fetch  0x00000001 , 0x000047a5 
+ 00014030  0x00002cc8 beq  0x00000001 , 0x000036ee 
+ 00014031  0x00002cc9 beq  0x00000000 , 0x000036ec 
+ 00014032  0x00002ccb arg  0x0000479c , 0x00000006 
+ 00014033  0x00002ccc copy  0x00000006 , 0x00000011 
+ 00014034  0x00002ccd arg  0x00000008 , 0x00000039 
+ 00014035  0x00002ccf copy  0x00000011 , 0x00000006 
+ 00014036  0x00002cd0 ifetch  0x00000001 , 0x00000006 
+ 00014037  0x00002cd1 copy  0x00000006 , 0x00000011 
+ 00014038  0x00002cd2 beq  0x00000000 , 0x000036e3 
+ 00014039  0x00002cd3 beq  0x00000001 , 0x000036e6 
+ 00014040  0x00002cd4 beq  0x00000002 , 0x000036e9 
+ 00014041  0x00002cd6 fetch  0x00000001 , 0x000047a6 
+ 00014042  0x00002cd7 increase  0x00000001 , 0x0000003f 
+ 00014043  0x00002cd8 store  0x00000001 , 0x000047a6 
+ 00014044  0x00002cd9 loop  0x000036d3 
+ 00014045  0x00002cda rtn 
+ 00014046  0x00002cdc fetch  0x00000001 , 0x000047a6 
+ 00014047  0x00002cdd arg  0x000047c0 , 0x00000012 
+ 00014048  0x00002cde iadd  0x00000012 , 0x00000012 
+ 00014049  0x00002cdf ifetcht  0x00000001 , 0x00000012 
+ 00014050  0x00002ce0 rtn 
+ 00014051  0x00002ce2 call  0x000036de 
+ 00014052  0x00002ce3 call  0x00006825 
+ 00014053  0x00002ce4 branch  0x000036d9 
+ 00014054  0x00002ce6 call  0x000036de 
+ 00014055  0x00002ce7 call  0x00006829 
+ 00014056  0x00002ce8 branch  0x000036d9 
+ 00014057  0x00002cea fetch  0x00000001 , 0x000047a5 
+ 00014058  0x00002ceb beq  0x00000001 , 0x000036e3 
+ 00014059  0x00002cec branch  0x000036e6 
+ 00014060  0x00002cee jam  0x00000001 , 0x000047a5 
+ 00014061  0x00002cef branch  0x000036d0 
+ 00014062  0x00002cf1 jam  0x00000000 , 0x000047a5 
+ 00014063  0x00002cf2 branch  0x000036d0 
+ 00014064  0x00002cf7 arg  0x00000000 , 0x00000011 
+ 00014065  0x00002cf9 ifetch  0x00000001 , 0x00000006 
+ 00014066  0x00002cfa iadd  0x00000011 , 0x00000011 
+ 00014067  0x00002cfb loop  0x000036f1 
+ 00014068  0x00002cfd and  0x00000011 , 0x000000ff , 0x0000003f 
+ 00014069  0x00002cfe rtn 
+ 00014070  0x00002d01 fetch  0x00000001 , 0x00000477 
+ 00014071  0x00002d02 beq  0x00000012 , 0x000036f9 
+ 00014072  0x00002d03 rtn 
+ 00014073  0x00002d05 fetch  0x00000002 , 0x00000478 
+ 00014074  0x00002d06 beq  0x00000014 , 0x00003710 
+ 00014075  0x00002d07 rtn 
+ 00014076  0x00002d14 bpatch  0x000000d0 , 0x0000401a 
+ 00014077  0x00002d15 ifetch  0x00000005 , 0x00000011 
+ 00014078  0x00002d16 store  0x00000005 , 0x00000b12 
+ 00014079  0x00002d17 fetch  0x00000002 , 0x00000b12 
+ 00014080  0x00002d18 arg  0x00006b5a , 0x00000002 
+ 00014081  0x00002d19 isub  0x00000002 , 0x0000003e 
+ 00014082  0x00002d1a nrtn  0x00000005 
+ 00014083  0x00002d1b fetch  0x00000002 , 0x00000b15 
+ 00014084  0x00002d1c byteswap  0x0000003f , 0x0000003f 
+ 00014085  0x00002d1d store  0x00000002 , 0x00000b15 
+ 00014086  0x00002d1e copy  0x0000003f , 0x00000039 
+ 00014087  0x00002d1f increase  0x00000005 , 0x00000011 
+ 00014088  0x00002d20 copy  0x00000011 , 0x00000006 
+ 00014089  0x00002d21 arg  0x00000b17 , 0x00000005 
+ 00014090  0x00002d22 call  0x00007f01 
+ 00014091  0x00002d23 ifetch  0x00000001 , 0x00000006 
+ 00014092  0x00002d24 store  0x00000001 , 0x00000b21 
+ 00014093  0x00002d25 arg  0x00000b14 , 0x00000011 
+ 00014094  0x00002d26 arg  0x00000b17 , 0x00000012 
+ 00014095  0x00002d27 rtn 
+ 00014096  0x00002d2a setarg  0x00000000 
+ 00014097  0x00002d2b store  0x00000005 , 0x00004752 
+ 00014098  0x00002d2c store  0x00000005 , 0x00004757 
+ 00014099  0x00002d2d call  0x000036fc 
+ 00014100  0x00002d2e copy  0x00000012 , 0x00000006 
+ 00014101  0x00002d2f arg  0x00004752 , 0x00000005 
+ 00014102  0x00002d30 arg  0x0000000a , 0x00000039 
+ 00014103  0x00002d31 call  0x00007f01 
+ 00014104  0x00002d33 bpatch  0x000000d1 , 0x0000401a 
+ 00014105  0x00002d34 ifetch  0x00000001 , 0x00000011 
+ 00014106  0x00002d35 beq  0x00000002 , 0x0000374a 
+ 00014107  0x00002d36 beq  0x00000003 , 0x0000375c 
+ 00014108  0x00002d37 beq  0x00000004 , 0x00003762 
+ 00014109  0x00002d38 beq  0x00000005 , 0x00003762 
+ 00014110  0x00002d39 beq  0x00000006 , 0x000037b1 
+ 00014111  0x00002d3a beq  0x00000007 , 0x00003849 
+ 00014112  0x00002d3b beq  0x00000008 , 0x0000384c 
+ 00014113  0x00002d3c rtn 
+ 00014114  0x00002d3f fetch  0x00000002 , 0x00004682 
+ 00014115  0x00002d40 rtnbit1  0x00000009 
+ 00014116  0x00002d42 fetch  0x00000002 , 0x000047eb 
+ 00014117  0x00002d43 store  0x00000002 , 0x000047ed 
+ 00014118  0x00002d45 jam  0x00000001 , 0x000049f6 
+ 00014119  0x00002d47 setarg  0x0000010c 
+ 00014120  0x00002d48 call  0x000032cd 
+ 00014121  0x00002d49 call  0x00003710 
+ 00014122  0x00002d4b fetch  0x00000001 , 0x00000b14 
+ 00014123  0x00002d4c beq  0x00000004 , 0x0000372e 
+ 00014124  0x00002d4d beq  0x00000005 , 0x0000372e 
+ 00014125  0x00002d4e rtn 
+ 00014126  0x00002d50 fetch  0x00000001 , 0x00004752 
+ 00014127  0x00002d51 ncall  0x00003735 , 0x00000034 
+ 00014128  0x00002d52 fetch  0x00000001 , 0x00004754 
+ 00014129  0x00002d53 ncall  0x00003737 , 0x00000034 
+ 00014130  0x00002d54 fetch  0x00000001 , 0x00004756 
+ 00014131  0x00002d55 ncall  0x00003739 , 0x00000034 
+ 00014132  0x00002d56 rtn 
+ 00014133  0x00002d59 jam  0x00000005 , 0x000049f3 
+ 00014134  0x00002d5a rtn 
+ 00014135  0x00002d5c jam  0x00000005 , 0x000049f4 
+ 00014136  0x00002d5d rtn 
+ 00014137  0x00002d5f jam  0x00000005 , 0x000049f5 
+ 00014138  0x00002d60 rtn 
+ 00014139  0x00002d63 arg  0x000049f3 , 0x00000013 
+ 00014140  0x00002d64 arg  0x00003744 , 0x00000012 
+ 00014141  0x00002d65 branch  0x0000336d 
+ 00014142  0x00002d67 arg  0x000049f4 , 0x00000013 
+ 00014143  0x00002d68 arg  0x00003746 , 0x00000012 
+ 00014144  0x00002d69 branch  0x0000336d 
+ 00014145  0x00002d6b arg  0x000049f5 , 0x00000013 
+ 00014146  0x00002d6c arg  0x00003748 , 0x00000012 
+ 00014147  0x00002d6d branch  0x0000336d 
+ 00014148  0x00002d70 jam  0x00000000 , 0x00004752 
+ 00014149  0x00002d71 branch  0x00003762 
+ 00014150  0x00002d73 jam  0x00000000 , 0x00004754 
+ 00014151  0x00002d74 branch  0x00003762 
+ 00014152  0x00002d76 jam  0x00000000 , 0x00004756 
+ 00014153  0x00002d77 branch  0x00003762 
+ 00014154  0x00002d7d call  0x0000374c 
+ 00014155  0x00002d7e branch  0x0000374f 
+ 00014156  0x00002d80 fetch  0x00000001 , 0x00004752 
+ 00014157  0x00002d81 store  0x00000001 , 0x0000475f 
+ 00014158  0x00002d82 branch  0x00003773 
+ 00014159  0x00002d84 fetch  0x00000001 , 0x0000475e 
+ 00014160  0x00002d85 call  0x00003754 
+ 00014161  0x00002d86 fetch  0x00000001 , 0x00004753 
+ 00014162  0x00002d87 store  0x00000001 , 0x0000475d 
+ 00014163  0x00002d88 branch  0x00003770 
+ 00014164  0x00002d8a beq  0x00000002 , 0x00003758 
+ 00014165  0x00002d8b beq  0x00000003 , 0x0000375a 
+ 00014166  0x00002d8c store  0x00000001 , 0x0000475e 
+ 00014167  0x00002d8d rtn 
+ 00014168  0x00002d8f jam  0x00000005 , 0x0000475e 
+ 00014169  0x00002d90 rtn 
+ 00014170  0x00002d92 jam  0x0000000a , 0x0000475e 
+ 00014171  0x00002d93 rtn 
+ 00014172  0x00002d95 fetch  0x00000001 , 0x00004752 
+ 00014173  0x00002d96 call  0x00003754 
+ 00014174  0x00002d97 fetch  0x00000001 , 0x0000475e 
+ 00014175  0x00002d98 call  0x0000379e 
+ 00014176  0x00002d99 call  0x000037a1 
+ 00014177  0x00002d9a branch  0x000069c4 
+ 00014178  0x00002d9d fetch  0x00000001 , 0x000047f0 
+ 00014179  0x00002d9e nrtn  0x00000034 
+ 00014180  0x00002d9f fetch  0x00000006 , 0x00004752 
+ 00014181  0x00002da0 store  0x00000006 , 0x0000475d 
+ 00014182  0x00002da1 fetch  0x00000001 , 0x0000475e 
+ 00014183  0x00002da2 fetcht  0x00000001 , 0x00004760 
+ 00014184  0x00002da3 iand  0x00000002 , 0x0000003f 
+ 00014185  0x00002da4 fetcht  0x00000001 , 0x00004762 
+ 00014186  0x00002da5 iand  0x00000002 , 0x0000003f 
+ 00014187  0x00002da6 call  0x00003779 , 0x00000034 
+ 00014188  0x00002da7 bpatch  0x000000d2 , 0x0000401a 
+ 00014189  0x00002da8 call  0x00003770 
+ 00014190  0x00002da9 call  0x00003773 
+ 00014191  0x00002daa branch  0x00003776 
+ 00014192  0x00002dac arg  0x00004763 , 0x00000012 
+ 00014193  0x00002dad arg  0x0000475d , 0x00000006 
+ 00014194  0x00002dae branch  0x0000377b 
+ 00014195  0x00002db0 arg  0x0000476b , 0x00000012 
+ 00014196  0x00002db1 arg  0x0000475f , 0x00000006 
+ 00014197  0x00002db2 branch  0x0000377b 
+ 00014198  0x00002db4 arg  0x00004773 , 0x00000012 
+ 00014199  0x00002db5 arg  0x00004761 , 0x00000006 
+ 00014200  0x00002db6 branch  0x0000377b 
+ 00014201  0x00002db8 jam  0x00000000 , 0x000047d1 
+ 00014202  0x00002db9 rtn 
+ 00014203  0x00002dbc ifetch  0x00000001 , 0x00000006 
+ 00014204  0x00002dbd beq  0x00000000 , 0x00003787 
+ 00014205  0x00002dbe beq  0x00000001 , 0x00003780 
+ 00014206  0x00002dbf beq  0x00000002 , 0x00003782 
+ 00014207  0x00002dc0 rtn 
+ 00014208  0x00002dc2 jam  0x00000000 , 0x0000477b 
+ 00014209  0x00002dc3 branch  0x00003783 
+ 00014210  0x00002dc5 jam  0x00000001 , 0x0000477b 
+ 00014211  0x00002dc6 ifetch  0x00000001 , 0x00000006 
+ 00014212  0x00002dc7 store  0x00000001 , 0x0000477d 
+ 00014213  0x00002dc8 ifetch  0x00000008 , 0x00000012 
+ 00014214  0x00002dc9 branch  0x0000378c 
+ 00014215  0x00002dcc ifetch  0x00000001 , 0x00000012 
+ 00014216  0x00002dcd call  0x000069d7 
+ 00014217  0x00002dce increase  0x00000001 , 0x00000012 
+ 00014218  0x00002dcf ifetch  0x00000001 , 0x00000012 
+ 00014219  0x00002dd0 branch  0x000069d7 
+ 00014220  0x00002dd2 store  0x00000008 , 0x0000477e 
+ 00014221  0x00002dd3 jam  0x00000001 , 0x000047d1 
+ 00014222  0x00002dd4 fetch  0x00000001 , 0x0000477b 
+ 00014223  0x00002dd5 beq  0x00000000 , 0x0000379a 
+ 00014224  0x00002dd7 fetch  0x00000001 , 0x0000477f 
+ 00014225  0x00002dd8 store  0x00000001 , 0x00004780 
+ 00014226  0x00002dd9 fetch  0x00000001 , 0x0000477e 
+ 00014227  0x00002ddb call  0x000069d7 
+ 00014228  0x00002ddc fetch  0x00000001 , 0x0000477d 
+ 00014229  0x00002ddd call  0x0000379e 
+ 00014230  0x00002dde store  0x00000001 , 0x00004785 
+ 00014231  0x00002ddf fetch  0x00000006 , 0x00004780 
+ 00014232  0x00002de0 store  0x00000006 , 0x00000a9a 
+ 00014233  0x00002de1 branch  0x000069ae 
+ 00014234  0x00002de3 fetch  0x00000001 , 0x0000477e 
+ 00014235  0x00002de4 store  0x00000001 , 0x00004780 
+ 00014236  0x00002de5 fetch  0x00000001 , 0x0000477f 
+ 00014237  0x00002de6 branch  0x00003793 
+ 00014238  0x00002de9 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00014239  0x00002dea add  0x0000003f , 0x00000032 , 0x0000003f 
+ 00014240  0x00002deb rtn 
+ 00014241  0x00002ded arg  0x00002ee0 , 0x00000002 
+ 00014242  0x00002dee imul32  0x00000002 , 0x0000003f 
+ 00014243  0x00002def div  0x0000003f , 0x00000064 
+ 00014244  0x00002df0 call  0x00007f86 
+ 00014245  0x00002df1 quotient  0x00000002 
+ 00014246  0x00002df2 copy  0x00000002 , 0x00000011 
+ 00014247  0x00002df3 setarg  0x00002ee0 
+ 00014248  0x00002df4 isub  0x00000002 , 0x00000012 
+ 00014249  0x00002df5 rtn 
+ 00014250  0x00002df9 hfetch  0x00000001 , 0x00008082 
+ 00014251  0x00002dfa set1  0x00000002 , 0x0000003f 
+ 00014252  0x00002dfb hstore  0x00000001 , 0x00008082 
+ 00014253  0x00002dfc setarg  0x0000009e 
+ 00014254  0x00002dfd hstore  0x00000002 , 0x00008068 
+ 00014255  0x00002dfe hstore  0x00000002 , 0x0000806a 
+ 00014256  0x00002dff rtn 
+ 00014257  0x00002e02 fetch  0x00000001 , 0x000047f0 
+ 00014258  0x00002e03 nrtn  0x00000034 
+ 00014259  0x00002e04 fetch  0x00000002 , 0x00004752 
+ 00014260  0x00002e05 store  0x00000002 , 0x00004787 
+ 00014261  0x00002e06 fetch  0x00000001 , 0x000047ea 
+ 00014262  0x00002e07 bne  0x00000001 , 0x000037b9 
+ 00014263  0x00002e08 fetch  0x00000002 , 0x000044a0 
+ 00014264  0x00002e09 store  0x00000002 , 0x00004787 
+ 00014265  0x00002e0b bpatch  0x000000d3 , 0x0000401a 
+ 00014266  0x00002e0c call  0x000037aa 
+ 00014267  0x00002e0d call  0x000037dc 
+ 00014268  0x00002e0e setarg  0x0000bb80 
+ 00014269  0x00002e0f call  0x00002a8f 
+ 00014270  0x00002e10 call  0x000037e0 
+ 00014271  0x00002e11 setarg  0x00001c20 
+ 00014272  0x00002e12 call  0x00002a8f 
+ 00014273  0x00002e13 arg  0x00000010 , 0x00000039 
+ 00014274  0x00002e15 call  0x000037dc 
+ 00014275  0x00002e16 fetch  0x00000002 , 0x00004787 
+ 00014276  0x00002e17 bbit1  0x00000000 , 0x000037c9 
+ 00014277  0x00002e18 setarg  0x00001c20 
+ 00014278  0x00002e19 call  0x00002a8f 
+ 00014279  0x00002e1a call  0x000037e0 
+ 00014280  0x00002e1b branch  0x000037cc 
+ 00014281  0x00002e1e setarg  0x00003840 
+ 00014282  0x00002e1f call  0x00002a8f 
+ 00014283  0x00002e20 call  0x000037e0 
+ 00014284  0x00002e22 setarg  0x00001c20 
+ 00014285  0x00002e23 call  0x00002a8f 
+ 00014286  0x00002e24 fetch  0x00000002 , 0x00004787 
+ 00014287  0x00002e25 rshift  0x0000003f , 0x0000003f 
+ 00014288  0x00002e26 store  0x00000002 , 0x00004787 
+ 00014289  0x00002e27 loop  0x000037c2 
+ 00014290  0x00002e29 jam  0x00000002 , 0x000047f1 
+ 00014291  0x00002e2a jam  0x00000001 , 0x000047f2 
+ 00014292  0x00002e2b setarg  0x00000a01 
+ 00014293  0x00002e2c store  0x00000002 , 0x00004752 
+ 00014294  0x00002e2d fetch  0x00000001 , 0x000047b9 
+ 00014295  0x00002e2e beq  0x00000003 , 0x000037d9 
+ 00014296  0x00002e30 branch  0x00003762 
+ 00014297  0x00002e32 setarg  0x00000a01 
+ 00014298  0x00002e33 store  0x00000002 , 0x00004754 
+ 00014299  0x00002e34 branch  0x00003762 
+ 00014300  0x00002e37 hfetch  0x00000001 , 0x00008085 
+ 00014301  0x00002e38 or_into  0x00000040 , 0x0000003f 
+ 00014302  0x00002e39 hstore  0x00000001 , 0x00008085 
+ 00014303  0x00002e3a rtn 
+ 00014304  0x00002e3c hfetch  0x00000001 , 0x00008085 
+ 00014305  0x00002e3d and_into  0x000000bf , 0x0000003f 
+ 00014306  0x00002e3e hstore  0x00000001 , 0x00008085 
+ 00014307  0x00002e3f rtn 
+ 00014308  0x00002e42 fetch  0x00000001 , 0x000047bb 
+ 00014309  0x00002e43 rtneq  0x00000000 
+ 00014310  0x00002e44 call  0x00002c65 
+ 00014311  0x00002e45 fetcht  0x00000001 , 0x000047bc 
+ 00014312  0x00002e46 storet  0x00000001 , 0x00004786 
+ 00014313  0x00002e47 call  0x000067fb 
+ 00014314  0x00002e48 call  0x00003847 
+ 00014315  0x00002e49 nrtn  0x00000001 
+ 00014316  0x00002e4a jam  0x00000001 , 0x0000479a 
+ 00014317  0x00002e4b rtn 
+ 00014318  0x00002e4e fetch  0x00000001 , 0x000047bb 
+ 00014319  0x00002e4f rtneq  0x00000000 
+ 00014320  0x00002e50 fetch  0x00000001 , 0x0000479b 
+ 00014321  0x00002e51 nrtn  0x00000034 
+ 00014322  0x00002e52 fetch  0x00000002 , 0x00004682 
+ 00014323  0x00002e53 bbit1  0x00000009 , 0x000037f6 
+ 00014324  0x00002e54 fetch  0x00000001 , 0x000047ea 
+ 00014325  0x00002e55 rtnne  0x00000001 
+ 00014326  0x00002e57 bpatch  0x000000d4 , 0x0000401a 
+ 00014327  0x00002e58 call  0x00003847 
+ 00014328  0x00002e59 nrtn  0x00000001 
+ 00014329  0x00002e5a setarg  0x00008ca0 
+ 00014330  0x00002e5b call  0x00002a8f 
+ 00014331  0x00002e5c call  0x00003847 
+ 00014332  0x00002e5d nrtn  0x00000001 
+ 00014333  0x00002e5e call  0x0000383f 
+ 00014334  0x00002e60 call  0x00003842 
+ 00014335  0x00002e61 nrtn  0x00000002 
+ 00014336  0x00002e62 call  0x00003847 
+ 00014337  0x00002e63 branch  0x000037fe , 0x00000001 
+ 00014338  0x00002e64 arg  0x00000000 , 0x00000011 
+ 00014339  0x00002e65 arg  0x00000010 , 0x00000039 
+ 00014340  0x00002e66 call  0x0000383f 
+ 00014341  0x00002e68 call  0x00003842 
+ 00014342  0x00002e69 nrtn  0x00000002 
+ 00014343  0x00002e6a call  0x00003847 
+ 00014344  0x00002e6b nbranch  0x00003805 , 0x00000001 
+ 00014345  0x00002e6c setarg  0x00002a30 
+ 00014346  0x00002e6d call  0x00002a8f 
+ 00014347  0x00002e6e call  0x00003847 
+ 00014348  0x00002e6f branch  0x00003812 , 0x00000001 
+ 00014349  0x00002e71 setarg  0x00000000 
+ 00014350  0x00002e72 rshift  0x00000011 , 0x00000011 
+ 00014351  0x00002e73 ior  0x00000011 , 0x00000011 
+ 00014352  0x00002e74 loop  0x00003805 
+ 00014353  0x00002e75 branch  0x0000381b 
+ 00014354  0x00002e77 setarg  0x00008000 
+ 00014355  0x00002e78 rshift  0x00000011 , 0x00000011 
+ 00014356  0x00002e79 ior  0x00000011 , 0x00000011 
+ 00014357  0x00002e7a call  0x0000383f 
+ 00014358  0x00002e7c call  0x00003842 
+ 00014359  0x00002e7d nrtn  0x00000002 
+ 00014360  0x00002e7e call  0x00003847 
+ 00014361  0x00002e7f branch  0x00003816 , 0x00000001 
+ 00014362  0x00002e80 loop  0x00003805 
+ 00014363  0x00002e82 bpatch  0x000000d5 , 0x0000401a 
+ 00014364  0x00002e83 copy  0x00000011 , 0x0000003f 
+ 00014365  0x00002e84 store  0x00000002 , 0x00004789 
+ 00014366  0x00002e85 store  0x00000002 , 0x00004797 
+ 00014367  0x00002e86 fetch  0x00000001 , 0x000047ea 
+ 00014368  0x00002e87 beq  0x00000001 , 0x00003827 
+ 00014369  0x00002e89 arg  0x00000007 , 0x00000039 
+ 00014370  0x00002e8a arg  0x00004792 , 0x00000006 
+ 00014371  0x00002e8b call  0x000036f0 
+ 00014372  0x00002e8c store  0x00000001 , 0x00004799 
+ 00014373  0x00002e8d arg  0x0000478f , 0x00000011 
+ 00014374  0x00002e8e branch  0x00007e3d 
+ 00014375  0x00002e91 fetch  0x00000001 , 0x000047ef 
+ 00014376  0x00002e92 increase  0x00000001 , 0x0000003f 
+ 00014377  0x00002e93 store  0x00000001 , 0x000047ef 
+ 00014378  0x00002e94 div  0x0000003f , 0x00000002 
+ 00014379  0x00002e95 call  0x00007f86 
+ 00014380  0x00002e96 quotient  0x00000002 
+ 00014381  0x00002e97 remainder  0x0000003f 
+ 00014382  0x00002e98 nbranch  0x00003838 , 0x00000034 
+ 00014383  0x00002e9a fetch  0x00000001 , 0x000047bf 
+ 00014384  0x00002e9b isub  0x00000002 , 0x0000003e 
+ 00014385  0x00002e9c call  0x0000383d , 0x00000005 
+ 00014386  0x00002e9d arg  0x0000479c , 0x0000003f 
+ 00014387  0x00002e9e increase  0xffffffff , 0x00000002 
+ 00014388  0x00002e9f iadd  0x00000002 , 0x00000011 
+ 00014389  0x00002ea0 arg  0x00000000 , 0x0000003f 
+ 00014390  0x00002ea1 istore  0x00000001 , 0x00000011 
+ 00014391  0x00002ea2 rtn 
+ 00014392  0x00002ea4 arg  0x0000479c , 0x0000003f 
+ 00014393  0x00002ea5 iadd  0x00000002 , 0x00000011 
+ 00014394  0x00002ea6 arg  0x00000002 , 0x0000003f 
+ 00014395  0x00002ea7 istore  0x00000001 , 0x00000011 
+ 00014396  0x00002ea8 rtn 
+ 00014397  0x00002eaa jam  0x00000001 , 0x000047f0 
+ 00014398  0x00002eab rtn 
+ 00014399  0x00002ead copy  0x00000022 , 0x0000003f 
+ 00014400  0x00002eae store  0x00000004 , 0x0000478b 
+ 00014401  0x00002eaf rtn 
+ 00014402  0x00002eb1 copy  0x00000022 , 0x0000003f 
+ 00014403  0x00002eb2 fetcht  0x00000004 , 0x0000478b 
+ 00014404  0x00002eb3 isub  0x00000002 , 0x0000003f 
+ 00014405  0x00002eb4 sub  0x0000003f , 0x000000c8 , 0x0000003e 
+ 00014406  0x00002eb5 rtn 
+ 00014407  0x00002eb8 fetcht  0x00000001 , 0x00004786 
+ 00014408  0x00002eb9 branch  0x0000681d 
+ 00014409  0x00002ebc fetch  0x00000008 , 0x00004752 
+ 00014410  0x00002ebd store  0x00000008 , 0x0000479c 
+ 00014411  0x00002ebe rtn 
+ 00014412  0x00002ec1 fetch  0x00000001 , 0x000047b9 
+ 00014413  0x00002ec2 store  0x00000001 , 0x000047af 
+ 00014414  0x00002ec3 fetch  0x00000001 , 0x000047ba 
+ 00014415  0x00002ec4 store  0x00000001 , 0x000047b0 
+ 00014416  0x00002ec5 fetch  0x00000001 , 0x000047bb 
+ 00014417  0x00002ec6 store  0x00000001 , 0x000047b1 
+ 00014418  0x00002ec7 arg  0x0000000d , 0x00000039 
+ 00014419  0x00002ec8 arg  0x000047aa , 0x00000006 
+ 00014420  0x00002ec9 call  0x000036f0 
+ 00014421  0x00002eca store  0x00000001 , 0x000047b7 
+ 00014422  0x00002ecb arg  0x000047a7 , 0x00000011 
+ 00014423  0x00002ecc branch  0x00007e3d 
+ 00014424  0x00002ed3 call  0x000065c2 
+ 00014425  0x00002ed4 jam  0x0000007a , 0x000046f6 
+ 00014426  0x00002ed5 call  0x0000386d 
+ 00014427  0x00002ed6 call  0x00003867 
+ 00014428  0x00002ed7 setarg  0x00003860 
+ 00014429  0x00002ed8 store  0x00000002 , 0x000041fd 
+ 00014430  0x00002ed9 arg  0x00000000 , 0x00000011 
+ 00014431  0x00002eda branch  0x000069a6 
+ 00014432  0x00002edd fetch  0x00000002 , 0x000046a1 
+ 00014433  0x00002ede rtn  0x00000034 
+ 00014434  0x00002edf increase  0xffffffff , 0x0000003f 
+ 00014435  0x00002ee0 store  0x00000002 , 0x000046a1 
+ 00014436  0x00002ee1 rtnne  0x00000000 
+ 00014437  0x00002ee2 jam  0x00000000 , 0x000046a0 
+ 00014438  0x00002ee3 rtn 
+ 00014439  0x00002ee6 bpatch  0x000000d6 , 0x0000401a 
+ 00014440  0x00002ee7 fetch  0x00000001 , 0x000046a4 
+ 00014441  0x00002ee8 sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00014442  0x00002ee9 rtn  0x00000002 
+ 00014443  0x00002eea jam  0x00000000 , 0x000046a4 
+ 00014444  0x00002eeb rtn 
+ 00014445  0x00002eee arg  0x000046a4 , 0x00000011 
+ 00014446  0x00002eef arg  0x00000000 , 0x00000012 
+ 00014447  0x00002ef0 arg  0x00000051 , 0x00000002 
+ 00014448  0x00002ef1 branch  0x000065df 
+ 00014449  0x00002ef5 disable  0x00000028 
+ 00014450  0x00002ef6 fetch  0x00000001 , 0x000046a3 
+ 00014451  0x00002ef7 copy  0x0000003f , 0x00000039 
+ 00014452  0x00002ef9 arg  0x000046a5 , 0x00000011 
+ 00014453  0x00002efa copy  0x00000013 , 0x00000012 
+ 00014454  0x00002efc bpatch  0x000000d7 , 0x0000401a 
+ 00014455  0x00002efd call  0x0000387c 
+ 00014456  0x00002efe branch  0x00007fe7 , 0x00000005 
+ 00014457  0x00002f00 increase  0x00000004 , 0x00000011 
+ 00014458  0x00002f01 loop  0x00003876 
+ 00014459  0x00002f02 rtn 
+ 00014460  0x00002f06 bpatch  0x000000d8 , 0x0000401b 
+ 00014461  0x00002f07 ifetch  0x00000003 , 0x00000011 
+ 00014462  0x00002f08 ifetcht  0x00000003 , 0x00000012 
+ 00014463  0x00002f09 isub  0x00000002 , 0x0000003e 
+ 00014464  0x00002f0a rtn 
+ 00014465  0x00002f0d bpatch  0x000000d9 , 0x0000401b 
+ 00014466  0x00002f0e ifetch  0x00000003 , 0x00000011 
+ 00014467  0x00002f0f ifetcht  0x00000003 , 0x00000012 
+ 00014468  0x00002f10 isub  0x00000002 , 0x0000003e 
+ 00014469  0x00002f11 nrtn  0x00000005 
+ 00014470  0x00002f12 ifetch  0x00000001 , 0x00000006 
+ 00014471  0x00002f13 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00014472  0x00002f14 rtn  0x00000005 
+ 00014473  0x00002f15 add  0x00000011 , 0x00000003 , 0x00000006 
+ 00014474  0x00002f16 ifetcht  0x00000001 , 0x00000006 
+ 00014475  0x00002f17 isub  0x00000002 , 0x0000003e 
+ 00014476  0x00002f18 rtn 
+ 00014477  0x00002f1c bpatch  0x000000da , 0x0000401b 
+ 00014478  0x00002f1d disable  0x00000028 
+ 00014479  0x00002f1e fetch  0x00000001 , 0x000046a3 
+ 00014480  0x00002f1f copy  0x0000003f , 0x00000039 
+ 00014481  0x00002f21 arg  0x000046a5 , 0x00000011 
+ 00014482  0x00002f22 copy  0x00000013 , 0x00000012 
+ 00014483  0x00002f24 call  0x00003881 
+ 00014484  0x00002f25 branch  0x00007fe7 , 0x00000005 
+ 00014485  0x00002f26 increase  0x00000004 , 0x00000011 
+ 00014486  0x00002f27 loop  0x00003893 
+ 00014487  0x00002f28 rtn 
+ 00014488  0x00002f2c fetch  0x00000001 , 0x00000004 
+ 00014489  0x00002f2d increase  0x00000001 , 0x0000003f 
+ 00014490  0x00002f2e store  0x00000001 , 0x00000004 
+ 00014491  0x00002f2f arg  0x000002e5 , 0x00000013 
+ 00014492  0x00002f32 ifetch  0x00000002 , 0x00000013 
+ 00014493  0x00002f33 arg  0x000055aa , 0x00000002 
+ 00014494  0x00002f34 isub  0x00000002 , 0x0000003e 
+ 00014495  0x00002f35 nrtn  0x00000005 
+ 00014496  0x00002f36 copy  0x00000006 , 0x00000013 
+ 00014497  0x00002f37 ifetcht  0x00000003 , 0x00000013 
+ 00014498  0x00002f38 setarg  0x00ffffff 
+ 00014499  0x00002f39 isub  0x00000002 , 0x0000003e 
+ 00014500  0x00002f3a branch  0x000038a8 , 0x00000005 
+ 00014501  0x00002f3b call  0x0000388d 
+ 00014502  0x00002f3c branch  0x000038a8 , 0x00000028 
+ 00014503  0x00002f3d rtn 
+ 00014504  0x00002f40 bpatch  0x000000db , 0x0000401b 
+ 00014505  0x00002f41 increase  0x00000004 , 0x00000013 
+ 00014506  0x00002f42 ifetch  0x00000001 , 0x00000013 
+ 00014507  0x00002f43 fetcht  0x00000001 , 0x000046f6 
+ 00014508  0x00002f44 isub  0x00000002 , 0x0000003e 
+ 00014509  0x00002f45 rtn  0x00000005 
+ 00014510  0x00002f46 store  0x00000001 , 0x000046f6 
+ 00014511  0x00002f47 fetch  0x00000001 , 0x00000003 
+ 00014512  0x00002f48 increase  0x00000001 , 0x0000003f 
+ 00014513  0x00002f49 store  0x00000001 , 0x00000003 
+ 00014514  0x00002f4b increase  0x00000001 , 0x00000013 
+ 00014515  0x00002f4c ifetch  0x00000001 , 0x00000013 
+ 00014516  0x00002f4d store  0x00000001 , 0x000046f5 
+ 00014517  0x00002f4e copy  0x0000003f , 0x00000039 
+ 00014518  0x00002f4f rtn  0x00000034 
+ 00014519  0x00002f51 ifetch  0x00000001 , 0x00000006 
+ 00014520  0x00002f52 beq  0x00000000 , 0x000038c2 
+ 00014521  0x00002f53 beq  0x00000001 , 0x000038cf 
+ 00014522  0x00002f54 beq  0x00000002 , 0x000038d4 
+ 00014523  0x00002f55 beq  0x00000003 , 0x000038d9 
+ 00014524  0x00002f56 beq  0x00000004 , 0x000038de 
+ 00014525  0x00002f57 beq  0x00000005 , 0x000038e3 
+ 00014526  0x00002f58 beq  0x00000006 , 0x000038e8 
+ 00014527  0x00002f59 beq  0x000000ff , 0x000038ea 
+ 00014528  0x00002f5a loop  0x000038b7 
+ 00014529  0x00002f5b rtn 
+ 00014530  0x00002f5e copy  0x00000006 , 0x00000013 
+ 00014531  0x00002f5f fetch  0x00000001 , 0x0000469a 
+ 00014532  0x00002f60 store  0x00000001 , 0x00000a9a 
+ 00014533  0x00002f61 arg  0x00000000 , 0x00000002 
+ 00014534  0x00002f63 storet  0x00000001 , 0x00000a9b 
+ 00014535  0x00002f64 setarg  0x00002710 
+ 00014536  0x00002f65 store  0x00000003 , 0x00000a9c 
+ 00014537  0x00002f66 ifetch  0x00000001 , 0x00000013 
+ 00014538  0x00002f67 store  0x00000001 , 0x00000a9f 
+ 00014539  0x00002f68 call  0x000069ae 
+ 00014540  0x00002f69 and  0x00000013 , 0x00000001 , 0x00000006 
+ 00014541  0x00002f6a loop  0x000038b7 
+ 00014542  0x00002f6b rtn 
+ 00014543  0x00002f6d copy  0x00000013 , 0x00000006 
+ 00014544  0x00002f6e fetch  0x00000001 , 0x0000469b 
+ 00014545  0x00002f6f store  0x00000001 , 0x00000a9a 
+ 00014546  0x00002f70 arg  0x00000001 , 0x00000002 
+ 00014547  0x00002f71 branch  0x000038c6 
+ 00014548  0x00002f73 copy  0x00000013 , 0x00000006 
+ 00014549  0x00002f74 fetch  0x00000001 , 0x0000469c 
+ 00014550  0x00002f75 store  0x00000001 , 0x00000a9a 
+ 00014551  0x00002f76 arg  0x00000002 , 0x00000002 
+ 00014552  0x00002f77 branch  0x000038c6 
+ 00014553  0x00002f79 copy  0x00000013 , 0x00000006 
+ 00014554  0x00002f7a fetch  0x00000001 , 0x0000469d 
+ 00014555  0x00002f7b store  0x00000001 , 0x00000a9a 
+ 00014556  0x00002f7c arg  0x00000003 , 0x00000002 
+ 00014557  0x00002f7d branch  0x000038c6 
+ 00014558  0x00002f7f copy  0x00000013 , 0x00000006 
+ 00014559  0x00002f80 fetch  0x00000001 , 0x0000469e 
+ 00014560  0x00002f81 store  0x00000001 , 0x00000a9a 
+ 00014561  0x00002f82 arg  0x00000004 , 0x00000002 
+ 00014562  0x00002f83 branch  0x000038c6 
+ 00014563  0x00002f85 copy  0x00000013 , 0x00000006 
+ 00014564  0x00002f86 fetch  0x00000001 , 0x0000469f 
+ 00014565  0x00002f87 store  0x00000001 , 0x00000a9a 
+ 00014566  0x00002f88 arg  0x00000005 , 0x00000002 
+ 00014567  0x00002f89 branch  0x000038c6 
+ 00014568  0x00002f8c ifetch  0x00000001 , 0x00000006 
+ 00014569  0x00002f8d rtn 
+ 00014570  0x00002f90 copy  0x00000006 , 0x00000013 
+ 00014571  0x00002f91 fetch  0x00000001 , 0x000046a0 
+ 00014572  0x00002f92 bne  0x00000001 , 0x000038ee 
+ 00014573  0x00002f93 call  0x000038f0 
+ 00014574  0x00002f95 and  0x00000013 , 0x00000004 , 0x00000006 
+ 00014575  0x00002f96 rtn 
+ 00014576  0x00002f98 bpatch  0x000000dc , 0x0000401b 
+ 00014577  0x00002f99 call  0x00003871 
+ 00014578  0x00002f9a branch  0x000038fe , 0x00000028 
+ 00014579  0x00002f9b fetch  0x00000001 , 0x000046a4 
+ 00014580  0x00002f9c copy  0x0000003f , 0x00000002 
+ 00014581  0x00002f9d increase  0x00000001 , 0x0000003f 
+ 00014582  0x00002f9e store  0x00000001 , 0x000046a4 
+ 00014583  0x00002f9f call  0x00003867 
+ 00014584  0x00002fa0 lshift2  0x00000002 , 0x00000002 
+ 00014585  0x00002fa1 setarg  0x000046a5 
+ 00014586  0x00002fa2 iadd  0x00000002 , 0x00000005 
+ 00014587  0x00002fa3 ifetch  0x00000004 , 0x00000013 
+ 00014588  0x00002fa4 istore  0x00000004 , 0x00000005 
+ 00014589  0x00002fa5 branch  0x00003903 
+ 00014590  0x00002fa7 add  0x00000013 , 0x00000003 , 0x00000006 
+ 00014591  0x00002fa8 ifetch  0x00000001 , 0x00000006 
+ 00014592  0x00002fa9 rtn  0x00000034 
+ 00014593  0x00002faa ifetch  0x00000004 , 0x00000013 
+ 00014594  0x00002fab istore  0x00000004 , 0x00000011 
+ 00014595  0x00002fad arg  0x000046a4 , 0x00000011 
+ 00014596  0x00002fae arg  0x00000000 , 0x00000012 
+ 00014597  0x00002faf arg  0x00000051 , 0x00000002 
+ 00014598  0x00002fb0 branch  0x00006606 
+ 00014599  0x00002fb8 fetcht  0x00000001 , 0x0000469a 
+ 00014600  0x00002fb9 call  0x00006825 
+ 00014601  0x00002fba rtn 
+ 00014602  0x00002fc0 fetcht  0x00000001 , 0x0000469a 
+ 00014603  0x00002fc1 call  0x00006829 
+ 00014604  0x00002fc4 fetcht  0x00000001 , 0x0000469a 
+ 00014605  0x00002fc5 call  0x00006825 
+ 00014606  0x00002fc8 call  0x0000391d 
+ 00014607  0x00002fca fetch  0x00000001 , 0x000046a7 
+ 00014608  0x00002fcb nrtn  0x00000034 
+ 00014609  0x00002fcd call  0x00002c29 
+ 00014610  0x00002fce hfetch  0x00000004 , 0x00008138 
+ 00014611  0x00002fcf set0  0x0000000f , 0x0000003f 
+ 00014612  0x00002fd0 hstore  0x00000004 , 0x0000804c 
+ 00014613  0x00002fd1 call  0x00002c21 
+ 00014614  0x00002fd2 arg  0xffffffff , 0x00000002 
+ 00014615  0x00002fd3 branch  0x00002b2a 
+ 00014616  0x00002fd6 fetch  0x00000001 , 0x000046a7 
+ 00014617  0x00002fd7 branch  0x000056f9 , 0x00000034 
+ 00014618  0x00002fd8 increase  0xffffffff , 0x0000003f 
+ 00014619  0x00002fd9 store  0x00000001 , 0x000046a7 
+ 00014620  0x00002fda branch  0x000056f9 
+ 00014621  0x00002fdd mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00014622  0x00002fde arg  0x000046a8 , 0x00000006 
+ 00014623  0x00002fdf iadd  0x00000006 , 0x00000006 
+ 00014624  0x00002fe0 ifetch  0x00000001 , 0x00000006 
+ 00014625  0x00002fe1 rtn  0x00000034 
+ 00014626  0x00002fe2 copy  0x0000003f , 0x00000011 
+ 00014627  0x00002fe3 copy  0x00000011 , 0x00000039 
+ 00014628  0x00002fe4 arg  0x00004372 , 0x00000005 
+ 00014629  0x00002fe5 call  0x00007f01 
+ 00014630  0x00002fe6 copy  0x00000011 , 0x0000003f 
+ 00014631  0x00002fe7 increase  0x00000002 , 0x0000003f 
+ 00014632  0x00002fe8 store  0x00000001 , 0x0000436f 
+ 00014633  0x00002fe9 rtn 
+ 00014634  0x00002ff2 rtn  0x0000002b 
+ 00014635  0x00002ff3 call  0x000057a3 
+ 00014636  0x00002ff4 call  0x000068a8 
+ 00014637  0x00002ff5 setarg  0x00003982 
+ 00014638  0x00002ff6 store  0x00000002 , 0x000041f3 
+ 00014639  0x00002ff7 setarg  0x0000396e 
+ 00014640  0x00002ff8 store  0x00000002 , 0x000041f1 
+ 00014641  0x00002ff9 setarg  0x00003986 
+ 00014642  0x00002ffa store  0x00000002 , 0x000041f5 
+ 00014643  0x00002ffb setarg  0x0000396d 
+ 00014644  0x00002ffc store  0x00000002 , 0x000041ef 
+ 00014645  0x00002ffd setarg  0x00003969 
+ 00014646  0x00002ffe store  0x00000002 , 0x000041e9 
+ 00014647  0x00002fff setarg  0x00003ab7 
+ 00014648  0x00003000 store  0x00000002 , 0x000041fb 
+ 00014649  0x00003001 setarg  0x00003c32 
+ 00014650  0x00003002 store  0x00000002 , 0x0000456f 
+ 00014651  0x00003003 setarg  0x00003cc2 
+ 00014652  0x00003004 store  0x00000002 , 0x000041f9 
+ 00014653  0x00003005 setarg  0x00003cd7 
+ 00014654  0x00003006 store  0x00000002 , 0x000041fd 
+ 00014655  0x00003008 call  0x0000397f 
+ 00014656  0x00003009 bpatch  0x000000dd , 0x0000401b 
+ 00014657  0x0000300a call  0x00003945 
+ 00014658  0x0000300b call  0x00003964 
+ 00014659  0x0000300c call  0x00002c6f 
+ 00014660  0x0000300d branch  0x00003c48 
+ 00014661  0x00003011 fetch  0x00000004 , 0x000046aa 
+ 00014662  0x00003012 hstore  0x00000004 , 0x00008054 
+ 00014663  0x00003014 fetch  0x00000004 , 0x000046ae 
+ 00014664  0x00003015 hstore  0x00000004 , 0x0000805a 
+ 00014665  0x00003017 hfetch  0x00000001 , 0x00008081 
+ 00014666  0x00003018 or_into  0x00000004 , 0x0000003f 
+ 00014667  0x00003019 and_into  0x000000fc , 0x0000003f 
+ 00014668  0x0000301a hstore  0x00000001 , 0x00008081 
+ 00014669  0x0000301b jam  0x00000000 , 0x00008062 
+ 00014670  0x0000301d fetch  0x00000002 , 0x000046aa 
+ 00014671  0x0000301e hstore  0x00000002 , 0x00008058 
+ 00014672  0x0000301f fetch  0x00000002 , 0x000046ae 
+ 00014673  0x00003020 hstore  0x00000002 , 0x0000805e 
+ 00014674  0x00003021 hstore  0x00000002 , 0x00008060 
+ 00014675  0x00003023 hfetch  0x00000004 , 0x00008078 
+ 00014676  0x00003024 set1  0x00000007 , 0x0000003f 
+ 00014677  0x00003025 hstore  0x00000004 , 0x00008078 
+ 00014678  0x00003027 hfetch  0x00000002 , 0x00008050 
+ 00014679  0x00003028 set0  0x0000000f , 0x0000003f 
+ 00014680  0x00003029 hstore  0x00000002 , 0x00008050 
+ 00014681  0x0000302a call  0x000066ce 
+ 00014682  0x0000302b jam  0x00000000 , 0x00008043 
+ 00014683  0x0000302c jam  0x00000081 , 0x00008062 
+ 00014684  0x0000302e fetch  0x00000001 , 0x000046bf 
+ 00014685  0x0000302f isolate1  0x00000000 , 0x0000003f 
+ 00014686  0x00003030 hfetcht  0x00000001 , 0x00008062 
+ 00014687  0x00003031 setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00014688  0x00003032 hstoret  0x00000001 , 0x00008062 
+ 00014689  0x00003033 rtn 
+ 00014690  0x00003038 call  0x0000397f 
+ 00014691  0x00003039 branch  0x00003945 
+ 00014692  0x00003041 fetcht  0x00000001 , 0x0000469e 
+ 00014693  0x00003042 call  0x0000680e 
+ 00014694  0x00003043 call  0x000039e6 
+ 00014695  0x00003045 fetcht  0x00000001 , 0x0000469c 
+ 00014696  0x00003046 branch  0x000067fb 
+ 00014697  0x00003049 fetcht  0x00000001 , 0x0000469c 
+ 00014698  0x0000304a call  0x0000681d 
+ 00014699  0x0000304b nbranch  0x000033d2 , 0x00000001 
+ 00014700  0x0000304c branch  0x000033d0 
+ 00014701  0x00003050 rtn 
+ 00014702  0x00003053 call  0x00003970 
+ 00014703  0x00003054 branch  0x00003ce9 
+ 00014704  0x00003057 fetch  0x00000001 , 0x00004682 
+ 00014705  0x00003058 bbit0  0x00000004 , 0x0000397f 
+ 00014706  0x00003059 bpatch  0x000000de , 0x0000401b 
+ 00014707  0x0000305a setarg  0x00003eff 
+ 00014708  0x0000305b fetcht  0x00000004 , 0x000046c5 
+ 00014709  0x0000305c iadd  0x00000002 , 0x00000002 
+ 00014710  0x0000305d copy  0x00000022 , 0x0000003f 
+ 00014711  0x0000305e isub  0x00000002 , 0x0000003e 
+ 00014712  0x0000305f nrtn  0x00000002 
+ 00014713  0x00003060 fetch  0x00000002 , 0x00004682 
+ 00014714  0x00003061 bbit1  0x00000005 , 0x0000397f 
+ 00014715  0x00003062 fetch  0x00000001 , 0x000046bf 
+ 00014716  0x00003063 rtnbit1  0x00000006 
+ 00014717  0x00003064 call  0x00003cec 
+ 00014718  0x00003065 call  0x0000340e 
+ 00014719  0x00003067 copy  0x00000022 , 0x0000003f 
+ 00014720  0x00003068 store  0x00000004 , 0x000046c5 
+ 00014721  0x00003069 rtn 
+ 00014722  0x0000306d call  0x00003ce9 
+ 00014723  0x0000306e call  0x0000526e 
+ 00014724  0x0000306f nrtn  0x00000034 
+ 00014725  0x00003070 branch  0x000039eb 
+ 00014726  0x00003074 copy  0x00000013 , 0x0000003f 
+ 00014727  0x00003075 beq  0x00000001 , 0x000039d4 
+ 00014728  0x00003076 beq  0x00000002 , 0x000039a3 
+ 00014729  0x00003077 beq  0x00000004 , 0x000039d7 
+ 00014730  0x00003078 beq  0x00000005 , 0x000039c4 
+ 00014731  0x00003079 beq  0x00000008 , 0x000039aa 
+ 00014732  0x0000307a beq  0x00000009 , 0x000039b1 
+ 00014733  0x0000307b beq  0x0000000a , 0x000039c9 
+ 00014734  0x0000307c beq  0x0000000b , 0x000039b6 
+ 00014735  0x0000307d beq  0x0000000c , 0x000039c2 
+ 00014736  0x0000307e beq  0x00000013 , 0x000039d7 
+ 00014737  0x0000307f beq  0x00000014 , 0x000039cf 
+ 00014738  0x00003080 beq  0x00000015 , 0x000039c6 
+ 00014739  0x00003081 beq  0x00000021 , 0x000039ca 
+ 00014740  0x00003082 beq  0x00000023 , 0x000039cb 
+ 00014741  0x00003083 beq  0x00000024 , 0x000039ce 
+ 00014742  0x00003084 beq  0x00000030 , 0x00003c8a 
+ 00014743  0x00003085 beq  0x00000031 , 0x00003c8c 
+ 00014744  0x00003086 beq  0x00000032 , 0x00003c9a 
+ 00014745  0x00003087 beq  0x00000033 , 0x00003c98 
+ 00014746  0x00003088 beq  0x00000034 , 0x00003c84 
+ 00014747  0x00003089 beq  0x00000035 , 0x00003c73 
+ 00014748  0x0000308a beq  0x00000036 , 0x00003c82 
+ 00014749  0x0000308b beq  0x00000037 , 0x00003c8e 
+ 00014750  0x0000308c beq  0x00000038 , 0x00003c90 
+ 00014751  0x0000308d beq  0x0000003b , 0x00003ca1 
+ 00014752  0x0000308e beq  0x0000003d , 0x00003c6a 
+ 00014753  0x0000308f beq  0x00000041 , 0x000039d9 
+ 00014754  0x00003090 rtn 
+ 00014755  0x00003094 call  0x0000397f 
+ 00014756  0x00003095 fetch  0x00000001 , 0x00004665 
+ 00014757  0x00003096 ncall  0x00003c8e , 0x00000034 
+ 00014758  0x00003097 call  0x000039d7 
+ 00014759  0x00003098 fetch  0x00000002 , 0x00004682 
+ 00014760  0x00003099 rtnbit0  0x00000004 
+ 00014761  0x0000309a branch  0x000039b1 
+ 00014762  0x0000309d fetch  0x00000002 , 0x00004682 
+ 00014763  0x0000309e set1  0x00000004 , 0x0000003f 
+ 00014764  0x0000309f store  0x00000002 , 0x00004682 
+ 00014765  0x000030a0 fetch  0x00000001 , 0x000046a7 
+ 00014766  0x000030a1 store  0x00000001 , 0x00004172 
+ 00014767  0x000030a2 call  0x000039e6 
+ 00014768  0x000030a3 branch  0x00003c1d 
+ 00014769  0x000030a8 fetch  0x00000002 , 0x00004682 
+ 00014770  0x000030a9 rtnbit0  0x00000004 
+ 00014771  0x000030aa set0  0x00000004 , 0x0000003f 
+ 00014772  0x000030ab store  0x00000002 , 0x00004682 
+ 00014773  0x000030ac branch  0x00003c21 
+ 00014774  0x000030b2 call  0x0000397f 
+ 00014775  0x000030b5 fetch  0x00000002 , 0x00004042 
+ 00014776  0x000030b6 rshift  0x0000003f , 0x0000003f 
+ 00014777  0x000030b7 fetcht  0x00000002 , 0x000041e3 
+ 00014778  0x000030b8 isub  0x00000002 , 0x0000003e 
+ 00014779  0x000030b9 nbranch  0x000039bd , 0x00000005 
+ 00014780  0x000030ba branch  0x00003416 
+ 00014781  0x000030bc fetch  0x00000001 , 0x000046bf 
+ 00014782  0x000030bd rtnbit1  0x00000005 
+ 00014783  0x000030be hfetch  0x00000002 , 0x00008112 
+ 00014784  0x000030bf ncall  0x00003cf0 , 0x00000034 
+ 00014785  0x000030c0 branch  0x0000340c 
+ 00014786  0x000030c3 call  0x00003cee 
+ 00014787  0x000030c4 branch  0x00003418 
+ 00014788  0x000030c7 call  0x0000397f 
+ 00014789  0x000030c8 branch  0x000039dd 
+ 00014790  0x000030cb call  0x00005816 
+ 00014791  0x000030cc call  0x000039d7 
+ 00014792  0x000030cd branch  0x00003c23 
+ 00014793  0x000030d0 branch  0x000033dd 
+ 00014794  0x000030d4 branch  0x00003cee 
+ 00014795  0x000030d8 fetch  0x00000001 , 0x000046bf 
+ 00014796  0x000030d9 bbit0  0x00000005 , 0x0000340e 
+ 00014797  0x000030da branch  0x00003cf2 
+ 00014798  0x000030de branch  0x00003cf2 
+ 00014799  0x000030e2 call  0x000058ba 
+ 00014800  0x000030e3 call  0x000039dd 
+ 00014801  0x000030e4 fetch  0x00000001 , 0x000046a8 
+ 00014802  0x000030e5 store  0x00000001 , 0x00004172 
+ 00014803  0x000030e6 branch  0x00003c1f 
+ 00014804  0x000030ea jam  0x00000000 , 0x00004661 
+ 00014805  0x000030eb call  0x00003cee 
+ 00014806  0x000030ec branch  0x00003cf2 
+ 00014807  0x000030f1 call  0x00003a52 
+ 00014808  0x000030f2 branch  0x000039db 
+ 00014809  0x000030f6 call  0x00005cc9 
+ 00014810  0x000030f7 branch  0x00005b02 
+ 00014811  0x000030fb fetcht  0x00000001 , 0x0000469e 
+ 00014812  0x000030fc branch  0x00006829 
+ 00014813  0x000030ff call  0x000039df 
+ 00014814  0x00003100 branch  0x000039e6 
+ 00014815  0x00003103 fetch  0x00000001 , 0x000046a1 
+ 00014816  0x00003104 isolate1  0x00000000 , 0x0000003f 
+ 00014817  0x00003105 call  0x000033f0 , 0x00000001 
+ 00014818  0x00003106 fetch  0x00000001 , 0x000046a1 
+ 00014819  0x00003107 isolate1  0x00000001 , 0x0000003f 
+ 00014820  0x00003108 call  0x000033f8 , 0x00000001 
+ 00014821  0x00003109 rtn 
+ 00014822  0x0000310b fetcht  0x00000001 , 0x0000469e 
+ 00014823  0x0000310c branch  0x00006825 
+ 00014824  0x0000310f fetch  0x00000001 , 0x0000456b 
+ 00014825  0x00003110 rtneq  0x00000000 
+ 00014826  0x00003111 branch  0x00006c28 
+ 00014827  0x00003114 hfetch  0x00000001 , 0x0000810c 
+ 00014828  0x00003115 bbit1  0x00000003 , 0x000039e8 
+ 00014829  0x00003116 call  0x000066cb 
+ 00014830  0x00003117 ifetch  0x00000001 , 0x00000003 
+ 00014831  0x00003118 bne  0x00000001 , 0x00003a01 
+ 00014832  0x00003119 hfetch  0x00000002 , 0x00008112 
+ 00014833  0x0000311a sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00014834  0x0000311b rtn  0x00000002 
+ 00014835  0x0000311c ifetch  0x00000001 , 0x00000003 
+ 00014836  0x0000311d store  0x00000001 , 0x00000b03 
+ 00014837  0x0000311e ifetcht  0x00000001 , 0x00000003 
+ 00014838  0x0000311f copy  0x00000003 , 0x00000011 
+ 00014839  0x00003120 storet  0x00000001 , 0x00000b04 
+ 00014840  0x00003121 add  0x00000002 , 0x00000003 , 0x00000002 
+ 00014841  0x00003122 hfetch  0x00000002 , 0x00008112 
+ 00014842  0x00003123 isub  0x00000002 , 0x00000002 
+ 00014843  0x00003124 nrtn  0x00000002 
+ 00014844  0x00003125 jam  0x00000001 , 0x00000b05 
+ 00014845  0x00003126 call  0x00003a17 
+ 00014846  0x00003127 fetch  0x00000001 , 0x00000b05 
+ 00014847  0x00003128 rtneq  0x00000000 
+ 00014848  0x00003129 branch  0x00003a12 
+ 00014849  0x0000312c call  0x00007ec1 
+ 00014850  0x0000312d call  0x00003c79 
+ 00014851  0x0000312e branch  0x00003a04 
+ 00014852  0x00003132 bpatch  0x000000df , 0x0000401b 
+ 00014853  0x00003133 hfetch  0x00000002 , 0x00008112 
+ 00014854  0x00003134 rtn  0x00000034 
+ 00014855  0x00003135 call  0x000066cb 
+ 00014856  0x00003136 ifetch  0x00000001 , 0x00000003 
+ 00014857  0x00003137 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00014858  0x00003138 ncall  0x00003a16 , 0x00000005 
+ 00014859  0x00003139 nbranch  0x00003a04 , 0x00000005 
+ 00014860  0x0000313a ifetch  0x00000001 , 0x00000003 
+ 00014861  0x0000313b rtneq  0x00000005 
+ 00014862  0x0000313c rtneq  0x00000029 
+ 00014863  0x0000313d increase  0xffffffff , 0x00000003 
+ 00014864  0x0000313e call  0x00003a16 
+ 00014865  0x0000313f branch  0x00003a04 
+ 00014866  0x00003142 call  0x000066cb 
+ 00014867  0x00003143 increase  0x00000002 , 0x00000003 
+ 00014868  0x00003144 ifetch  0x00000001 , 0x00000003 
+ 00014869  0x00003145 iadd  0x00000003 , 0x00000003 
+ 00014870  0x00003147 branch  0x000066c8 
+ 00014871  0x0000314b bpatch  0x000000e0 , 0x0000401c 
+ 00014872  0x0000314c fetch  0x00000001 , 0x00000b03 
+ 00014873  0x0000314d beq  0x00000000 , 0x00003a3f 
+ 00014874  0x0000314e beq  0x00000001 , 0x00003a44 
+ 00014875  0x0000314f beq  0x00000002 , 0x00003a49 
+ 00014876  0x00003150 beq  0x00000003 , 0x00003a5f 
+ 00014877  0x00003151 beq  0x00000004 , 0x00003a6b 
+ 00014878  0x00003152 beq  0x00000005 , 0x00003a75 
+ 00014879  0x00003153 beq  0x00000009 , 0x00003a9a 
+ 00014880  0x00003154 beq  0x0000000b , 0x00003ad7 
+ 00014881  0x00003155 beq  0x0000000c , 0x00003ad8 
+ 00014882  0x00003156 beq  0x0000000d , 0x00003aec 
+ 00014883  0x00003157 beq  0x0000000e , 0x00003af4 
+ 00014884  0x00003158 beq  0x0000000f , 0x00003afa 
+ 00014885  0x00003159 beq  0x00000010 , 0x00003b06 
+ 00014886  0x0000315a beq  0x00000011 , 0x00003b0e 
+ 00014887  0x0000315b beq  0x00000012 , 0x00003b12 
+ 00014888  0x0000315c beq  0x00000026 , 0x00003b16 
+ 00014889  0x0000315d beq  0x00000028 , 0x00003b1d 
+ 00014890  0x0000315e beq  0x00000029 , 0x00003b2d 
+ 00014891  0x0000315f beq  0x0000002a , 0x00003b36 
+ 00014892  0x00003160 beq  0x0000002b , 0x00003b69 
+ 00014893  0x00003161 beq  0x0000002c , 0x00003b6f 
+ 00014894  0x00003162 beq  0x00000030 , 0x00003b76 
+ 00014895  0x00003163 beq  0x00000031 , 0x00003b7c 
+ 00014896  0x00003164 beq  0x00000032 , 0x00003b90 
+ 00014897  0x00003165 beq  0x00000033 , 0x00003b98 
+ 00014898  0x00003166 beq  0x00000034 , 0x00003bbb 
+ 00014899  0x00003167 beq  0x00000035 , 0x00003bc4 
+ 00014900  0x00003168 beq  0x00000036 , 0x00003bcd 
+ 00014901  0x00003169 beq  0x00000037 , 0x00003bd7 
+ 00014902  0x0000316a beq  0x00000038 , 0x00003bda 
+ 00014903  0x0000316b beq  0x00000040 , 0x00003be2 
+ 00014904  0x0000316c beq  0x00000042 , 0x00003bec 
+ 00014905  0x0000316d beq  0x00000048 , 0x00003bf1 
+ 00014906  0x0000316e beq  0x00000049 , 0x00003bfc 
+ 00014907  0x0000316f beq  0x00000051 , 0x00003c02 
+ 00014908  0x00003170 beq  0x00000061 , 0x00003c06 
+ 00014909  0x00003171 beq  0x000000ff , 0x00003c15 
+ 00014910  0x00003172 branch  0x00003c17 
+ 00014911  0x00003178 fetch  0x00000001 , 0x00000b04 
+ 00014912  0x00003179 bne  0x00000006 , 0x00003c17 
+ 00014913  0x0000317a ifetch  0x00000006 , 0x00000003 
+ 00014914  0x0000317b store  0x00000006 , 0x000040a0 
+ 00014915  0x0000317c branch  0x00003c1a 
+ 00014916  0x00003180 fetch  0x00000001 , 0x00000b04 
+ 00014917  0x00003181 bne  0x00000006 , 0x00003c17 
+ 00014918  0x00003182 ifetch  0x00000006 , 0x00000003 
+ 00014919  0x00003183 store  0x00000006 , 0x000044a0 
+ 00014920  0x00003184 branch  0x00003c1a 
+ 00014921  0x00003189 fetch  0x00000001 , 0x00000b04 
+ 00014922  0x0000318a bne  0x00000001 , 0x00003c17 
+ 00014923  0x0000318b copy  0x00000011 , 0x00000003 
+ 00014924  0x0000318c call  0x00003c1a 
+ 00014925  0x0000318d ifetcht  0x00000001 , 0x00000003 
+ 00014926  0x0000318e storet  0x00000001 , 0x000046a9 
+ 00014927  0x0000318f fetch  0x00000002 , 0x00004682 
+ 00014928  0x00003190 rtnbit1  0x00000009 
+ 00014929  0x00003191 rtnbit1  0x00000000 
+ 00014930  0x00003193 fetch  0x00000001 , 0x000046a1 
+ 00014931  0x00003194 isolate1  0x00000000 , 0x0000003f 
+ 00014932  0x00003195 nbranch  0x00003a58 , 0x00000001 
+ 00014933  0x00003196 fetcht  0x00000001 , 0x000046a9 
+ 00014934  0x00003197 and  0x00000002 , 0x00000003 , 0x0000003f 
+ 00014935  0x00003198 store  0x00000001 , 0x00004093 
+ 00014936  0x0000319a fetch  0x00000001 , 0x000046a1 
+ 00014937  0x0000319b isolate1  0x00000001 , 0x0000003f 
+ 00014938  0x0000319c nrtn  0x00000001 
+ 00014939  0x0000319d fetcht  0x00000001 , 0x000046a9 
+ 00014940  0x0000319e isolate1  0x00000002 , 0x00000002 
+ 00014941  0x0000319f branch  0x000033fa , 0x00000001 
+ 00014942  0x000031a0 branch  0x000033f8 
+ 00014943  0x000031a5 fetch  0x00000001 , 0x00000b04 
+ 00014944  0x000031a6 sub  0x0000003f , 0x00000043 , 0x0000003e 
+ 00014945  0x000031a7 nbranch  0x00003c17 , 0x00000002 
+ 00014946  0x000031a8 store  0x00000001 , 0x00004515 
+ 00014947  0x000031a9 arg  0x00000008 , 0x00000039 
+ 00014948  0x000031aa call  0x00007ec6 
+ 00014949  0x000031ab fetch  0x00000001 , 0x00000b04 
+ 00014950  0x000031ac copy  0x0000003f , 0x00000039 
+ 00014951  0x000031ad copy  0x00000011 , 0x00000003 
+ 00014952  0x000031ae arg  0x00004516 , 0x00000005 
+ 00014953  0x000031af call  0x000066ea 
+ 00014954  0x000031b0 branch  0x00003c1a 
+ 00014955  0x000031b5 fetch  0x00000001 , 0x00000b04 
+ 00014956  0x000031b6 sub  0x0000003f , 0x0000001d , 0x0000003e 
+ 00014957  0x000031b7 nbranch  0x00003c17 , 0x00000002 
+ 00014958  0x000031b8 store  0x00000001 , 0x000043af 
+ 00014959  0x000031b9 copy  0x0000003f , 0x00000039 
+ 00014960  0x000031ba copy  0x00000011 , 0x00000003 
+ 00014961  0x000031bb arg  0x000043b0 , 0x00000005 
+ 00014962  0x000031bc call  0x000066ea 
+ 00014963  0x000031bd call  0x000057a3 
+ 00014964  0x000031be branch  0x00003c1a 
+ 00014965  0x000031c3 fetch  0x00000001 , 0x00004682 
+ 00014966  0x000031c4 bbit0  0x00000004 , 0x00003c17 
+ 00014967  0x000031c5 call  0x000033ba 
+ 00014968  0x000031c6 branch  0x00003a86 , 0x00000001 
+ 00014969  0x000031c7 jam  0x00000000 , 0x00000b05 
+ 00014970  0x000031c9 call  0x0000397f 
+ 00014971  0x000031ca fetch  0x00000001 , 0x00004568 
+ 00014972  0x000031cb rtn  0x00000034 
+ 00014973  0x000031cc fetch  0x00000002 , 0x00004573 
+ 00014974  0x000031cd bne  0x00000000 , 0x00003a84 
+ 00014975  0x000031ce fetch  0x00000001 , 0x00000b04 
+ 00014976  0x000031cf store  0x00000002 , 0x00004573 
+ 00014977  0x000031d1 copy  0x00000011 , 0x00000003 
+ 00014978  0x000031d4 copy  0x00000003 , 0x0000003f 
+ 00014979  0x000031d5 store  0x00000002 , 0x00004571 
+ 00014980  0x000031d7 call  0x00003a88 
+ 00014981  0x000031d8 branch  0x00006c4d 
+ 00014982  0x000031db jam  0x00000000 , 0x00000b05 
+ 00014983  0x000031dc branch  0x00003cd1 
+ 00014984  0x000031df call  0x00003a8e 
+ 00014985  0x000031e0 fetch  0x00000002 , 0x00004573 
+ 00014986  0x000031e1 fetcht  0x00000002 , 0x0000469f 
+ 00014987  0x000031e2 isub  0x00000002 , 0x0000003f 
+ 00014988  0x000031e3 store  0x00000002 , 0x00004573 
+ 00014989  0x000031e4 rtn 
+ 00014990  0x000031e7 fetch  0x00000002 , 0x00004573 
+ 00014991  0x000031e8 arg  0x0000006e , 0x00000002 
+ 00014992  0x000031e9 call  0x00007fdd 
+ 00014993  0x000031ea fetcht  0x00000002 , 0x0000456c 
+ 00014994  0x000031eb call  0x00007fdd 
+ 00014995  0x000031ec fetcht  0x00000002 , 0x0000455e 
+ 00014996  0x000031ed call  0x00007fdd 
+ 00014997  0x000031ee store  0x00000002 , 0x0000469f 
+ 00014998  0x000031ef rtn 
+ 00014999  0x000031f2 jam  0x00000001 , 0x00000b05 
+ 00015000  0x000031f3 jam  0x00000005 , 0x00000b03 
+ 00015001  0x000031f4 branch  0x00003c1a 
+ 00015002  0x000031f9 fetch  0x00000002 , 0x00004682 
+ 00015003  0x000031fa bbit0  0x00000009 , 0x00003c17 
+ 00015004  0x000031fb call  0x00003ad4 
+ 00015005  0x000031fc branch  0x00003c17 , 0x00000028 
+ 00015006  0x000031fd jam  0x00000000 , 0x00000b05 
+ 00015007  0x000031fe fetch  0x00000001 , 0x000046bf 
+ 00015008  0x000031ff bbit1  0x00000004 , 0x00003ab4 
+ 00015009  0x00003200 fetch  0x00000001 , 0x000046c0 
+ 00015010  0x00003201 nrtn  0x00000034 
+ 00015011  0x00003202 jam  0x00000001 , 0x00000b05 
+ 00015012  0x00003203 ifetch  0x00000002 , 0x00000003 
+ 00015013  0x00003204 store  0x00000002 , 0x000046c1 
+ 00015014  0x00003205 copy  0x00000003 , 0x0000003f 
+ 00015015  0x00003206 store  0x00000002 , 0x000046c3 
+ 00015016  0x00003207 fetch  0x00000001 , 0x00000b04 
+ 00015017  0x00003208 pincrease  0xfffffffe 
+ 00015018  0x00003209 nbranch  0x00003c17 , 0x00000002 
+ 00015019  0x0000320a branch  0x00003c17 , 0x00000005 
+ 00015020  0x0000320b store  0x00000001 , 0x000046c0 
+ 00015021  0x0000320c jam  0x00000000 , 0x00000b05 
+ 00015022  0x0000320d call  0x00005814 
+ 00015023  0x0000320e call  0x00003ab7 
+ 00015024  0x0000320f call  0x00003ab7 
+ 00015025  0x00003210 call  0x00003ab7 
+ 00015026  0x00003211 fetch  0x00000001 , 0x000046bf 
+ 00015027  0x00003212 rtnbit0  0x00000004 
+ 00015028  0x00003214 jam  0x00000001 , 0x00000b05 
+ 00015029  0x00003215 call  0x00003cf6 
+ 00015030  0x00003216 branch  0x00003c1a 
+ 00015031  0x00003219 fetch  0x00000001 , 0x000046c0 
+ 00015032  0x0000321a rtn  0x00000034 
+ 00015033  0x0000321b call  0x00005892 
+ 00015034  0x0000321c nrtn  0x00000034 
+ 00015035  0x0000321d call  0x00003acf 
+ 00015036  0x0000321e bpatch  0x000000e1 , 0x0000401c 
+ 00015037  0x0000321f add  0x00000002 , 0xfffffffd , 0x0000003f 
+ 00015038  0x00003220 fetcht  0x00000001 , 0x000046c0 
+ 00015039  0x00003221 call  0x00007fdd 
+ 00015040  0x00003222 copy  0x0000003f , 0x00000011 
+ 00015041  0x00003223 copy  0x00000002 , 0x0000003f 
+ 00015042  0x00003224 isub  0x00000011 , 0x0000003f 
+ 00015043  0x00003225 store  0x00000001 , 0x000046c0 
+ 00015044  0x00003226 fetcht  0x00000002 , 0x000046c1 
+ 00015045  0x00003227 call  0x00005a64 
+ 00015046  0x00003228 fetch  0x00000002 , 0x000046c3 
+ 00015047  0x00003229 copy  0x0000003f , 0x00000003 
+ 00015048  0x0000322a copy  0x00000011 , 0x00000039 
+ 00015049  0x0000322b call  0x000066ea 
+ 00015050  0x0000322c copy  0x00000003 , 0x0000003f 
+ 00015051  0x0000322d store  0x00000002 , 0x000046c3 
+ 00015052  0x0000322e fetch  0x00000001 , 0x000046c0 
+ 00015053  0x0000322f nrtn  0x00000034 
+ 00015054  0x00003230 branch  0x00003cf4 
+ 00015055  0x00003235 arg  0x00000017 , 0x00000002 
+ 00015056  0x00003236 fetch  0x00000001 , 0x000046bf 
+ 00015057  0x00003237 rtnbit1  0x00000001 
+ 00015058  0x00003238 fetcht  0x00000002 , 0x000044a8 
+ 00015059  0x00003239 rtn 
+ 00015060  0x0000323c fetch  0x00000001 , 0x000046bf 
+ 00015061  0x0000323d bbit1  0x00000002 , 0x00005a42 
+ 00015062  0x0000323e branch  0x00007fe9 
+ 00015063  0x00003243 branch  0x00003c4c 
+ 00015064  0x00003248 copy  0x00000011 , 0x00000003 
+ 00015065  0x00003249 ifetch  0x00000001 , 0x00000003 
+ 00015066  0x0000324a beq  0x00000000 , 0x00003adf 
+ 00015067  0x0000324b beq  0x00000001 , 0x00003ae2 
+ 00015068  0x0000324c beq  0x00000002 , 0x00003ae8 
+ 00015069  0x0000324d beq  0x00000003 , 0x00003aea 
+ 00015070  0x0000324e branch  0x00003c17 
+ 00015071  0x00003250 call  0x0000612b 
+ 00015072  0x00003251 jam  0x00000000 , 0x0000465a 
+ 00015073  0x00003252 branch  0x00003c1a 
+ 00015074  0x00003254 setarg  0x00040003 
+ 00015075  0x00003256 store  0x00000003 , 0x0000465b 
+ 00015076  0x00003257 store  0x00000001 , 0x00004662 
+ 00015077  0x00003258 call  0x00006124 
+ 00015078  0x00003259 jam  0x00000001 , 0x0000465a 
+ 00015079  0x0000325a branch  0x00003c1a 
+ 00015080  0x0000325c setarg  0x00040002 
+ 00015081  0x0000325d branch  0x00003ae3 
+ 00015082  0x00003260 setarg  0x00040001 
+ 00015083  0x00003261 branch  0x00003ae3 
+ 00015084  0x00003265 fetch  0x00000001 , 0x00000b04 
+ 00015085  0x00003266 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00015086  0x00003267 nbranch  0x00003c17 , 0x00000002 
+ 00015087  0x00003268 store  0x00000001 , 0x00004689 
+ 00015088  0x00003269 copy  0x0000003f , 0x00000039 
+ 00015089  0x0000326a arg  0x0000468a , 0x00000005 
+ 00015090  0x0000326b call  0x000066fd 
+ 00015091  0x0000326c branch  0x00003c1a 
+ 00015092  0x00003271 copy  0x00000011 , 0x00000003 
+ 00015093  0x00003272 ifetch  0x00000001 , 0x00000003 
+ 00015094  0x00003273 hfetcht  0x00000001 , 0x00008062 
+ 00015095  0x00003274 nsetflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00015096  0x00003275 hstoret  0x00000001 , 0x00008062 
+ 00015097  0x00003276 branch  0x00003c1a 
+ 00015098  0x0000327b fetch  0x00000001 , 0x00000b04 
+ 00015099  0x0000327c copy  0x0000003f , 0x00000039 
+ 00015100  0x0000327d copy  0x00000011 , 0x00000003 
+ 00015101  0x0000327e call  0x00007f58 
+ 00015102  0x0000327f setarg  0x016e3600 
+ 00015103  0x00003280 idiv  0x00000002 
+ 00015104  0x00003281 call  0x00007f86 
+ 00015105  0x00003282 quotient  0x0000003f 
+ 00015106  0x00003284 store  0x00000002 , 0x00004243 
+ 00015107  0x00003285 call  0x00003c1a 
+ 00015108  0x00003286 call  0x00007f9e 
+ 00015109  0x00003287 branch  0x000066ce 
+ 00015110  0x0000328c arg  0x00000002 , 0x00000011 
+ 00015111  0x0000328d arg  0x0000469a , 0x00000012 
+ 00015112  0x0000328e arg  0x00000000 , 0x00000002 
+ 00015113  0x0000328f branch  0x00003c25 
+ 00015114  0x00003291 store  0x00000002 , 0x00000ac2 
+ 00015115  0x00003292 arg  0x00000ac2 , 0x00000012 
+ 00015116  0x00003293 arg  0x00000000 , 0x00000002 
+ 00015117  0x00003294 branch  0x00003c25 
+ 00015118  0x00003299 fetch  0x00000002 , 0x00004682 
+ 00015119  0x0000329a bbit0  0x00000000 , 0x00003c17 
+ 00015120  0x0000329c call  0x00003c1a 
+ 00015121  0x0000329d branch  0x000033e9 
+ 00015122  0x000032a2 fetch  0x00000002 , 0x00004682 
+ 00015123  0x000032a3 bbit0  0x00000009 , 0x00003c17 
+ 00015124  0x000032a5 call  0x00003c1a 
+ 00015125  0x000032a6 branch  0x00003402 
+ 00015126  0x000032ad fetch  0x00000001 , 0x00000b04 
+ 00015127  0x000032ae copy  0x0000003f , 0x00000039 
+ 00015128  0x000032af copy  0x00000011 , 0x00000003 
+ 00015129  0x000032b0 fetch  0x00000002 , 0x00004215 
+ 00015130  0x000032b1 icopy  0x00000005 
+ 00015131  0x000032b2 call  0x000066ea 
+ 00015132  0x000032b3 branch  0x00003c1a 
+ 00015133  0x000032b8 fetch  0x00000001 , 0x00004682 
+ 00015134  0x000032b9 bbit0  0x00000000 , 0x00003c17 
+ 00015135  0x000032ba ifetch  0x00000001 , 0x00000003 
+ 00015136  0x000032bb fetcht  0x00000001 , 0x00004661 
+ 00015137  0x000032bc setflag  0x00000034 , 0x00000000 , 0x00000002 
+ 00015138  0x000032bd set1  0x00000007 , 0x00000002 
+ 00015139  0x000032be storet  0x00000001 , 0x00004661 
+ 00015140  0x000032c0 call  0x00003c1a 
+ 00015141  0x000032c2 fetch  0x00000001 , 0x00004661 
+ 00015142  0x000032c3 bbit1  0x00000006 , 0x00003b2b 
+ 00015143  0x000032c4 rtn 
+ 00015144  0x000032c7 jam  0x00000000 , 0x00004661 
+ 00015145  0x000032c8 jam  0x00000021 , 0x00000a99 
+ 00015146  0x000032c9 branch  0x00007d8f 
+ 00015147  0x000032cd bbit1  0x00000000 , 0x00005f95 
+ 00015148  0x000032ce branch  0x00003b28 
+ 00015149  0x000032d3 fetch  0x00000001 , 0x00004682 
+ 00015150  0x000032d4 rtnbit0  0x00000004 
+ 00015151  0x000032d5 fetch  0x00000001 , 0x0000456b 
+ 00015152  0x000032d6 rtneq  0x00000000 
+ 00015153  0x000032d7 ifetch  0x00000001 , 0x00000003 
+ 00015154  0x000032d8 fetcht  0x00000001 , 0x00004569 
+ 00015155  0x000032d9 iadd  0x00000002 , 0x00000002 
+ 00015156  0x000032da storet  0x00000001 , 0x00004569 
+ 00015157  0x000032db rtn 
+ 00015158  0x000032e0 arg  0x00000040 , 0x00000039 
+ 00015159  0x000032e1 arg  0x0000436f , 0x00000005 
+ 00015160  0x000032e2 call  0x00007ed4 
+ 00015161  0x000032e3 setarg  0x00000000 
+ 00015162  0x000032e4 store  0x00000001 , 0x00000ab2 
+ 00015163  0x000032e5 copy  0x00000011 , 0x00000003 
+ 00015164  0x000032e7 copy  0x00000003 , 0x0000003f 
+ 00015165  0x000032e8 store  0x00000002 , 0x00000ab6 
+ 00015166  0x000032e9 call  0x00003b64 
+ 00015167  0x000032eb fetch  0x00000001 , 0x00000ab2 
+ 00015168  0x000032ec fetcht  0x00000001 , 0x00000aa2 
+ 00015169  0x000032ed increase  0x00000001 , 0x00000002 
+ 00015170  0x000032ee iadd  0x00000002 , 0x0000003f 
+ 00015171  0x000032ef store  0x00000001 , 0x00000ab2 
+ 00015172  0x000032f1 sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015173  0x000032f2 nbranch  0x00003b50 , 0x00000002 
+ 00015174  0x000032f4 fetcht  0x00000001 , 0x0000436f 
+ 00015175  0x000032f5 setarg  0x00004370 
+ 00015176  0x000032f6 iadd  0x00000002 , 0x0000003f 
+ 00015177  0x000032f7 store  0x00000002 , 0x00000abb 
+ 00015178  0x000032f8 fetcht  0x00000001 , 0x00000aa2 
+ 00015179  0x000032f9 increase  0x00000001 , 0x00000002 
+ 00015180  0x000032fa fetch  0x00000001 , 0x0000436f 
+ 00015181  0x000032fb iadd  0x00000002 , 0x0000003f 
+ 00015182  0x000032fc store  0x00000001 , 0x0000436f 
+ 00015183  0x000032fd branch  0x00003b59 
+ 00015184  0x000032ff fetcht  0x00000001 , 0x0000438f 
+ 00015185  0x00003300 setarg  0x00004390 
+ 00015186  0x00003301 iadd  0x00000002 , 0x0000003f 
+ 00015187  0x00003302 store  0x00000002 , 0x00000abb 
+ 00015188  0x00003303 fetcht  0x00000001 , 0x00000aa2 
+ 00015189  0x00003304 increase  0x00000001 , 0x00000002 
+ 00015190  0x00003305 fetch  0x00000001 , 0x0000438f 
+ 00015191  0x00003306 iadd  0x00000002 , 0x0000003f 
+ 00015192  0x00003307 store  0x00000001 , 0x0000438f 
+ 00015193  0x00003309 fetch  0x00000002 , 0x00000abb 
+ 00015194  0x0000330a copy  0x0000003f , 0x00000005 
+ 00015195  0x0000330b fetch  0x00000002 , 0x00000ab6 
+ 00015196  0x0000330c copy  0x0000003f , 0x00000003 
+ 00015197  0x0000330e copy  0x00000002 , 0x00000039 
+ 00015198  0x0000330f call  0x000066ea 
+ 00015199  0x00003311 fetch  0x00000001 , 0x00000b04 
+ 00015200  0x00003312 fetcht  0x00000001 , 0x00000ab2 
+ 00015201  0x00003313 isub  0x00000002 , 0x0000003e 
+ 00015202  0x00003314 nbranch  0x00003b3c , 0x00000005 
+ 00015203  0x00003315 branch  0x00003c1a 
+ 00015204  0x00003319 ifetch  0x00000001 , 0x00000003 
+ 00015205  0x0000331a store  0x00000001 , 0x00000aa2 
+ 00015206  0x0000331b ifetch  0x00000001 , 0x00000003 
+ 00015207  0x0000331c store  0x00000001 , 0x00000aae 
+ 00015208  0x0000331d rtn 
+ 00015209  0x00003322 arg  0x00000000 , 0x00000002 
+ 00015210  0x00003323 arg  0x00000002 , 0x00000011 
+ 00015211  0x00003324 fetch  0x00000002 , 0x000046b4 
+ 00015212  0x00003325 store  0x00000002 , 0x00000ac2 
+ 00015213  0x00003326 arg  0x00000ac2 , 0x00000012 
+ 00015214  0x00003327 branch  0x00003c25 
+ 00015215  0x0000332c fetch  0x00000001 , 0x00000b04 
+ 00015216  0x0000332d bne  0x00000001 , 0x00003c17 
+ 00015217  0x0000332e ifetch  0x00000001 , 0x00000003 
+ 00015218  0x0000332f store  0x00000001 , 0x000046b2 
+ 00015219  0x00003330 setarg  0x00000000 
+ 00015220  0x00003331 store  0x00000002 , 0x000046b4 
+ 00015221  0x00003332 branch  0x00003c1a 
+ 00015222  0x00003337 ifetch  0x00000004 , 0x00000003 
+ 00015223  0x00003338 store  0x00000004 , 0x0000468a 
+ 00015224  0x00003339 jam  0x00000004 , 0x00004689 
+ 00015225  0x0000333a jam  0x00000000 , 0x00004663 
+ 00015226  0x0000333b call  0x00003c1a 
+ 00015227  0x0000333c branch  0x00005f31 
+ 00015228  0x00003341 fetch  0x00000001 , 0x00000b04 
+ 00015229  0x00003342 bne  0x00000003 , 0x00003c17 
+ 00015230  0x00003343 ifetch  0x00000001 , 0x00000003 
+ 00015231  0x00003344 beq  0x00000000 , 0x00003b82 
+ 00015232  0x00003345 beq  0x00000001 , 0x00003b8a 
+ 00015233  0x00003346 branch  0x00003c17 
+ 00015234  0x00003349 ifetcht  0x00000001 , 0x00000003 
+ 00015235  0x0000334a ifetch  0x00000001 , 0x00000003 
+ 00015236  0x0000334b beq  0x00000002 , 0x00003b88 
+ 00015237  0x0000334c nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00015238  0x0000334d call  0x000067fb 
+ 00015239  0x0000334e branch  0x00003c1a 
+ 00015240  0x00003351 call  0x00006806 
+ 00015241  0x00003352 branch  0x00003c1a 
+ 00015242  0x00003355 ifetcht  0x00000001 , 0x00000003 
+ 00015243  0x00003356 call  0x00006812 
+ 00015244  0x00003357 ifetch  0x00000001 , 0x00000003 
+ 00015245  0x00003358 isolate1  0x00000000 , 0x0000003f 
+ 00015246  0x00003359 call  0x0000682c 
+ 00015247  0x0000335a branch  0x00003c1a 
+ 00015248  0x0000335f fetch  0x00000001 , 0x00000b04 
+ 00015249  0x00003360 bne  0x00000001 , 0x00003c17 
+ 00015250  0x00003361 ifetcht  0x00000001 , 0x00000003 
+ 00015251  0x00003362 call  0x0000681d 
+ 00015252  0x00003363 setarg  0x00000000 
+ 00015253  0x00003364 nsetflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00015254  0x00003365 arg  0x00000001 , 0x00000011 
+ 00015255  0x00003366 branch  0x00003b0a 
+ 00015256  0x0000336b copy  0x00000011 , 0x00000003 
+ 00015257  0x0000336c ifetch  0x00000001 , 0x00000003 
+ 00015258  0x0000336d copy  0x0000003f , 0x00000002 
+ 00015259  0x0000336e beq  0x00000081 , 0x00003ba3 
+ 00015260  0x0000336f beq  0x00000082 , 0x00003ba8 
+ 00015261  0x00003370 beq  0x00000083 , 0x00003bae 
+ 00015262  0x00003371 store  0x00000001 , 0x000044c6 
+ 00015263  0x00003372 beq  0x00000000 , 0x00003bb3 
+ 00015264  0x00003373 beq  0x00000001 , 0x00003bb6 
+ 00015265  0x00003374 beq  0x00000002 , 0x00003bb8 
+ 00015266  0x00003375 branch  0x00003c17 
+ 00015267  0x00003378 fetch  0x00000001 , 0x000044be 
+ 00015268  0x00003379 branch  0x00003c17 , 0x00000034 
+ 00015269  0x0000337a storet  0x00000001 , 0x000044c6 
+ 00015270  0x0000337b jam  0x0000000d , 0x00004456 
+ 00015271  0x0000337c branch  0x00003bb4 
+ 00015272  0x0000337e fetch  0x00000001 , 0x000044be 
+ 00015273  0x0000337f branch  0x00003c17 , 0x00000034 
+ 00015274  0x00003380 storet  0x00000001 , 0x000044c6 
+ 00015275  0x00003381 jam  0x0000000d , 0x00004456 
+ 00015276  0x00003382 jam  0x00000001 , 0x00004454 
+ 00015277  0x00003383 branch  0x00003c1a 
+ 00015278  0x00003385 fetch  0x00000001 , 0x000044be 
+ 00015279  0x00003386 branch  0x00003c17 , 0x00000034 
+ 00015280  0x00003387 storet  0x00000001 , 0x000044c6 
+ 00015281  0x00003388 jam  0x0000000d , 0x00004456 
+ 00015282  0x00003389 branch  0x00003bb9 
+ 00015283  0x0000338b jam  0x00000000 , 0x00004456 
+ 00015284  0x0000338d jam  0x00000003 , 0x00004454 
+ 00015285  0x0000338e branch  0x00003c1a 
+ 00015286  0x00003390 jam  0x00000005 , 0x00004456 
+ 00015287  0x00003391 branch  0x00003bb4 
+ 00015288  0x00003393 jam  0x00000005 , 0x00004456 
+ 00015289  0x00003395 jam  0x00000000 , 0x00004454 
+ 00015290  0x00003396 branch  0x00003c1a 
+ 00015291  0x0000339b fetch  0x00000001 , 0x00000b04 
+ 00015292  0x0000339c sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015293  0x0000339d nbranch  0x00003c17 , 0x00000002 
+ 00015294  0x0000339e store  0x00000001 , 0x0000436f 
+ 00015295  0x0000339f copy  0x0000003f , 0x00000039 
+ 00015296  0x000033a0 copy  0x00000011 , 0x00000003 
+ 00015297  0x000033a1 arg  0x00004370 , 0x00000005 
+ 00015298  0x000033a2 call  0x000066ea 
+ 00015299  0x000033a3 branch  0x00003c1a 
+ 00015300  0x000033a8 fetch  0x00000001 , 0x00000b04 
+ 00015301  0x000033a9 sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015302  0x000033aa nbranch  0x00003c17 , 0x00000002 
+ 00015303  0x000033ab store  0x00000001 , 0x0000438f 
+ 00015304  0x000033ac copy  0x0000003f , 0x00000039 
+ 00015305  0x000033ad copy  0x00000011 , 0x00000003 
+ 00015306  0x000033ae arg  0x00004390 , 0x00000005 
+ 00015307  0x000033af call  0x000066ea 
+ 00015308  0x000033b0 branch  0x00003c1a 
+ 00015309  0x000033b5 fetch  0x00000002 , 0x00004682 
+ 00015310  0x000033b6 bbit0  0x00000009 , 0x00003c17 
+ 00015311  0x000033b7 fetch  0x00000001 , 0x00000b04 
+ 00015312  0x000033b8 bne  0x00000008 , 0x00003c17 
+ 00015313  0x000033b9 copy  0x00000011 , 0x00000003 
+ 00015314  0x000033ba ifetch  0x00000008 , 0x00000003 
+ 00015315  0x000033bb store  0x00000008 , 0x00004496 
+ 00015316  0x000033bc jam  0x00000012 , 0x00000a99 
+ 00015317  0x000033bd call  0x00007d8f 
+ 00015318  0x000033be branch  0x00003c1a 
+ 00015319  0x000033c3 ifetch  0x00000002 , 0x00000003 
+ 00015320  0x000033c4 store  0x00000002 , 0x00004482 
+ 00015321  0x000033c5 branch  0x00003c1a 
+ 00015322  0x000033ca fetch  0x00000001 , 0x000044c6 
+ 00015323  0x000033cb branch  0x00003c17 , 0x00000034 
+ 00015324  0x000033cc fetch  0x00000001 , 0x000044c4 
+ 00015325  0x000033cd bne  0x00000000 , 0x00003c17 
+ 00015326  0x000033ce fetch  0x00000001 , 0x000044c5 
+ 00015327  0x000033cf bne  0x00000000 , 0x00003c17 
+ 00015328  0x000033d0 call  0x00007e25 
+ 00015329  0x000033d1 branch  0x00003c1a 
+ 00015330  0x000033d6 fetch  0x00000001 , 0x00000b04 
+ 00015331  0x000033d7 bne  0x00000005 , 0x00003c17 
+ 00015332  0x000033d8 ifetch  0x00000001 , 0x00000003 
+ 00015333  0x000033d9 store  0x00000001 , 0x000046a2 
+ 00015334  0x000033da ifetch  0x00000004 , 0x00000003 
+ 00015335  0x000033db store  0x00000004 , 0x000046a3 
+ 00015336  0x000033dc fetcht  0x00000001 , 0x000046a2 
+ 00015337  0x000033dd call  0x0000680e 
+ 00015338  0x000033de call  0x00003cbc 
+ 00015339  0x000033df branch  0x00003c1a 
+ 00015340  0x000033e4 fetch  0x00000001 , 0x00000b04 
+ 00015341  0x000033e5 bne  0x00000001 , 0x00003c17 
+ 00015342  0x000033e6 ifetch  0x00000001 , 0x00000003 
+ 00015343  0x000033e7 store  0x00000001 , 0x000041de 
+ 00015344  0x000033e8 branch  0x00003c1a 
+ 00015345  0x000033ed ifetch  0x00000001 , 0x00000003 
+ 00015346  0x000033ee beq  0x00000001 , 0x00003bfa 
+ 00015347  0x000033ef fetch  0x00000001 , 0x000044c1 
+ 00015348  0x000033f0 beq  0x00000003 , 0x00003bf8 
+ 00015349  0x000033f1 beq  0x00000006 , 0x00003bf8 
+ 00015350  0x000033f2 beq  0x00000007 , 0x00003bf8 
+ 00015351  0x000033f3 branch  0x00003c17 
+ 00015352  0x000033f5 jam  0x00000001 , 0x000044c2 
+ 00015353  0x000033f6 branch  0x00003c1a 
+ 00015354  0x000033f9 call  0x00005b53 
+ 00015355  0x000033fa branch  0x00003c1a 
+ 00015356  0x000033ff fetch  0x00000001 , 0x00000b04 
+ 00015357  0x00003400 bne  0x00000001 , 0x00003c17 
+ 00015358  0x00003401 call  0x00003c1a 
+ 00015359  0x00003402 ifetch  0x00000001 , 0x00000003 
+ 00015360  0x00003403 branch  0x000060cb , 0x00000034 
+ 00015361  0x00003404 branch  0x000060c9 
+ 00015362  0x00003409 call  0x00003c1a 
+ 00015363  0x0000340a call  0x00007f9e 
+ 00015364  0x0000340b jam  0x00000001 , 0x00008010 
+ 00015365  0x0000340c branch  0x00002a8e 
+ 00015366  0x00003411 fetch  0x00000001 , 0x00000b04 
+ 00015367  0x00003412 beq  0x00000000 , 0x00003c17 
+ 00015368  0x00003413 ifetch  0x00000001 , 0x00000003 
+ 00015369  0x00003414 branch  0x00003c13 , 0x00000034 
+ 00015370  0x00003415 fetch  0x00000001 , 0x00000b04 
+ 00015371  0x00003416 bne  0x00000005 , 0x00003c17 
+ 00015372  0x00003417 ifetch  0x00000004 , 0x00000003 
+ 00015373  0x00003418 arg  0x000f4240 , 0x00000002 
+ 00015374  0x00003419 isub  0x00000002 , 0x0000003e 
+ 00015375  0x0000341a branch  0x00003c17 , 0x00000002 
+ 00015376  0x0000341b store  0x00000004 , 0x000044c7 
+ 00015377  0x0000341c call  0x0000580c 
+ 00015378  0x0000341d branch  0x00003c1a 
+ 00015379  0x00003420 call  0x0000580e 
+ 00015380  0x00003421 branch  0x00003c1a 
+ 00015381  0x00003426 jam  0x00000000 , 0x00004091 
+ 00015382  0x00003427 branch  0x00003c1a 
+ 00015383  0x0000342d arg  0x00000001 , 0x00000002 
+ 00015384  0x0000342e arg  0x00000000 , 0x00000011 
+ 00015385  0x0000342f branch  0x00003c25 
+ 00015386  0x00003433 arg  0x00000000 , 0x00000002 
+ 00015387  0x00003434 arg  0x00000000 , 0x00000011 
+ 00015388  0x00003435 branch  0x00003c25 
+ 00015389  0x0000343a jam  0x00000000 , 0x00000b03 
+ 00015390  0x0000343b branch  0x00003c49 
+ 00015391  0x00003440 jam  0x00000002 , 0x00000b03 
+ 00015392  0x00003441 branch  0x00003c49 
+ 00015393  0x00003446 jam  0x00000003 , 0x00000b03 
+ 00015394  0x00003447 branch  0x00003c49 
+ 00015395  0x0000344c jam  0x00000005 , 0x00000b03 
+ 00015396  0x0000344d branch  0x00003c49 
+ 00015397  0x00003456 fetch  0x00000001 , 0x00000b03 
+ 00015398  0x00003457 copy  0x0000003f , 0x00000013 
+ 00015399  0x00003458 jam  0x00000006 , 0x00000b03 
+ 00015400  0x00003459 setarg  0x00000002 
+ 00015401  0x0000345a iadd  0x00000011 , 0x0000003f 
+ 00015402  0x0000345b call  0x00003ca7 
+ 00015403  0x0000345c copy  0x00000013 , 0x0000003f 
+ 00015404  0x0000345d istore  0x00000001 , 0x0000000a 
+ 00015405  0x0000345e istoret  0x00000001 , 0x0000000a 
+ 00015406  0x0000345f copy  0x00000011 , 0x00000039 
+ 00015407  0x00003460 copy  0x00000012 , 0x00000006 
+ 00015408  0x00003461 call  0x000066e4 
+ 00015409  0x00003462 branch  0x000066c5 
+ 00015410  0x00003468 call  0x0000397f 
+ 00015411  0x00003469 jam  0x00000007 , 0x00000b03 
+ 00015412  0x0000346a fetch  0x00000001 , 0x000004ff 
+ 00015413  0x0000346b rtn  0x00000034 
+ 00015414  0x0000346c call  0x00003ca7 
+ 00015415  0x0000346d fetch  0x00000001 , 0x000004ff 
+ 00015416  0x0000346e copy  0x0000003f , 0x00000039 
+ 00015417  0x0000346f fetch  0x00000002 , 0x00000501 
+ 00015418  0x00003470 copy  0x0000003f , 0x00000006 
+ 00015419  0x00003471 call  0x000066d1 
+ 00015420  0x00003472 branch  0x000066c5 
+ 00015421  0x00003477 jam  0x00000008 , 0x00000b03 
+ 00015422  0x00003478 fetch  0x00000001 , 0x000046b6 
+ 00015423  0x00003479 icopy  0x00000039 
+ 00015424  0x0000347a increase  0x00000002 , 0x0000003f 
+ 00015425  0x0000347b call  0x00003ca7 
+ 00015426  0x0000347c fetch  0x00000002 , 0x000046b9 
+ 00015427  0x0000347d istore  0x00000002 , 0x0000000a 
+ 00015428  0x0000347e fetch  0x00000002 , 0x000046b7 
+ 00015429  0x0000347f icopy  0x00000006 
+ 00015430  0x00003480 call  0x000066d1 
+ 00015431  0x00003481 branch  0x000066c5 
+ 00015432  0x00003486 jam  0x00000009 , 0x00000b03 
+ 00015433  0x00003488 setarg  0x00000000 
+ 00015434  0x00003489 call  0x00003ca7 
+ 00015435  0x0000348a branch  0x000066c5 
+ 00015436  0x0000348f jam  0x0000000a , 0x00000b03 
+ 00015437  0x00003490 setarg  0x00000001 
+ 00015438  0x00003491 call  0x00003ca7 
+ 00015439  0x00003493 call  0x00003c5d 
+ 00015440  0x00003495 fetch  0x00000002 , 0x00004682 
+ 00015441  0x00003496 arg  0x00000002 , 0x00000007 
+ 00015442  0x00003497 qisolate1  0x0000003f 
+ 00015443  0x00003498 setflag  0x00000001 , 0x00000003 , 0x00000002 
+ 00015444  0x0000349a arg  0x00000009 , 0x00000007 
+ 00015445  0x0000349b qisolate1  0x0000003f 
+ 00015446  0x0000349c setflag  0x00000001 , 0x00000005 , 0x00000002 
+ 00015447  0x0000349e fetch  0x00000001 , 0x00004682 
+ 00015448  0x0000349f arg  0x00000004 , 0x00000007 
+ 00015449  0x000034a0 qisolate1  0x0000003f 
+ 00015450  0x000034a1 setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00015451  0x000034a3 istoret  0x00000001 , 0x0000000a 
+ 00015452  0x000034a4 branch  0x000066c5 
+ 00015453  0x000034a9 arg  0x00000000 , 0x00000002 
+ 00015454  0x000034aa fetch  0x00000001 , 0x00004093 
+ 00015455  0x000034ab arg  0x00000000 , 0x00000007 
+ 00015456  0x000034ac qisolate1  0x0000003f 
+ 00015457  0x000034ad setflag  0x00000001 , 0x00000000 , 0x00000002 
+ 00015458  0x000034ae arg  0x00000001 , 0x00000007 
+ 00015459  0x000034af qisolate1  0x0000003f 
+ 00015460  0x000034b0 setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00015461  0x000034b2 fetch  0x00000001 , 0x0000436e 
+ 00015462  0x000034b3 arg  0x00000000 , 0x00000007 
+ 00015463  0x000034b4 qisolate1  0x0000003f 
+ 00015464  0x000034b5 setflag  0x00000001 , 0x00000002 , 0x00000002 
+ 00015465  0x000034b6 rtn 
+ 00015466  0x000034bb jam  0x0000000d , 0x00000b03 
+ 00015467  0x000034bc fetch  0x00000001 , 0x00004217 
+ 00015468  0x000034bd mul32  0x0000003f , 0x00000022 , 0x0000003f 
+ 00015469  0x000034be icopy  0x00000039 
+ 00015470  0x000034bf call  0x00003ca7 
+ 00015471  0x000034c0 fetch  0x00000002 , 0x00004215 
+ 00015472  0x000034c1 icopy  0x00000006 
+ 00015473  0x000034c2 call  0x000066d1 
+ 00015474  0x000034c3 branch  0x000066c5 
+ 00015475  0x000034c8 jam  0x0000000e , 0x00000b03 
+ 00015476  0x000034c9 setarg  0x00000004 
+ 00015477  0x000034ca call  0x00003ca7 
+ 00015478  0x000034cb fetch  0x00000004 , 0x000009ba 
+ 00015479  0x000034cc istore  0x00000004 , 0x0000000a 
+ 00015480  0x000034cd branch  0x000066c5 
+ 00015481  0x000034d2 jam  0x0000000f , 0x00000b03 
+ 00015482  0x000034d3 hfetch  0x00000002 , 0x00008112 
+ 00015483  0x000034d4 arg  0x000000ff , 0x00000002 
+ 00015484  0x000034d5 call  0x00007fdd 
+ 00015485  0x000034d6 copy  0x0000003f , 0x00000039 
+ 00015486  0x000034d7 call  0x00003ca7 
+ 00015487  0x000034d8 call  0x000066cb 
+ 00015488  0x000034d9 call  0x00006703 
+ 00015489  0x000034da branch  0x000066c5 
+ 00015490  0x000034df jam  0x00000010 , 0x00000b03 
+ 00015491  0x000034e0 branch  0x00003c49 
+ 00015492  0x000034e5 jam  0x00000011 , 0x00000b03 
+ 00015493  0x000034e6 setarg  0x00000004 
+ 00015494  0x000034e7 call  0x00003ca7 
+ 00015495  0x000034e8 fetch  0x00000004 , 0x000044c7 
+ 00015496  0x000034e9 istore  0x00000004 , 0x0000000a 
+ 00015497  0x000034ea branch  0x000066c5 
+ 00015498  0x000034ef arg  0x00000180 , 0x00000011 
+ 00015499  0x000034f0 branch  0x00003c91 
+ 00015500  0x000034f3 arg  0x00000080 , 0x00000011 
+ 00015501  0x000034f4 branch  0x00003c91 
+ 00015502  0x000034f7 arg  0x00000101 , 0x00000011 
+ 00015503  0x000034f8 branch  0x00003c91 
+ 00015504  0x000034fb arg  0x00000001 , 0x00000011 
+ 00015505  0x000034fe jam  0x00000000 , 0x00004661 
+ 00015506  0x000034ff jam  0x00000014 , 0x00000b03 
+ 00015507  0x00003500 setarg  0x00000002 
+ 00015508  0x00003501 call  0x00003ca7 
+ 00015509  0x00003502 copy  0x00000011 , 0x0000003f 
+ 00015510  0x00003503 istore  0x00000002 , 0x0000000a 
+ 00015511  0x00003504 branch  0x000066c5 
+ 00015512  0x00003509 arg  0x00000000 , 0x00000013 
+ 00015513  0x0000350a branch  0x00003c9b 
+ 00015514  0x0000350d arg  0x00000001 , 0x00000013 
+ 00015515  0x00003510 jam  0x00000015 , 0x00000b03 
+ 00015516  0x00003511 setarg  0x00000001 
+ 00015517  0x00003512 call  0x00003ca7 
+ 00015518  0x00003513 copy  0x00000013 , 0x0000003f 
+ 00015519  0x00003514 istore  0x00000001 , 0x0000000a 
+ 00015520  0x00003515 branch  0x000066c5 
+ 00015521  0x0000351a jam  0x0000001d , 0x00000b03 
+ 00015522  0x0000351b setarg  0x00000004 
+ 00015523  0x0000351c call  0x00003ca7 
+ 00015524  0x0000351d fetch  0x00000004 , 0x000009ba 
+ 00015525  0x0000351e istore  0x00000004 , 0x0000000a 
+ 00015526  0x0000351f branch  0x000066c5 
+ 00015527  0x0000352b jam  0x00000002 , 0x00000b02 
+ 00015528  0x0000352c store  0x00000001 , 0x00000b04 
+ 00015529  0x0000352d storet  0x00000008 , 0x00000aa2 
+ 00015530  0x0000352e bpatch  0x000000e2 , 0x0000401c 
+ 00015531  0x0000352f call  0x00003cb1 
+ 00015532  0x00003530 fetcht  0x00000008 , 0x00000aa2 
+ 00015533  0x00003531 call  0x000066c2 
+ 00015534  0x00003532 fetch  0x00000003 , 0x00000b02 
+ 00015535  0x00003533 istore  0x00000003 , 0x0000000a 
+ 00015536  0x00003534 rtn 
+ 00015537  0x00003538 call  0x00003cba 
+ 00015538  0x00003539 rtn  0x00000001 
+ 00015539  0x0000353b call  0x00003cb8 
+ 00015540  0x0000353c fetch  0x00000004 , 0x000046a3 
+ 00015541  0x0000353d rshift2  0x0000003f , 0x0000003f 
+ 00015542  0x0000353e rtn  0x00000034 
+ 00015543  0x0000353f branch  0x00003cbe 
+ 00015544  0x00003543 fetcht  0x00000001 , 0x000046a2 
+ 00015545  0x00003544 branch  0x00006829 
+ 00015546  0x00003547 fetcht  0x00000001 , 0x000046a2 
+ 00015547  0x00003548 branch  0x0000681b 
+ 00015548  0x0000354b fetcht  0x00000001 , 0x000046a2 
+ 00015549  0x0000354c branch  0x00006825 
+ 00015550  0x00003550 increase  0xffffffff , 0x0000003f 
+ 00015551  0x00003551 nop  0x00000026 
+ 00015552  0x00003552 nbranch  0x00003cbe , 0x00000034 
+ 00015553  0x00003553 rtn 
+ 00015554  0x0000355d call  0x00003ad4 
+ 00015555  0x0000355e rtn  0x00000028 
+ 00015556  0x0000355f copy  0x00000011 , 0x0000003f 
+ 00015557  0x00003560 store  0x00000002 , 0x000046b7 
+ 00015558  0x00003561 copy  0x00000012 , 0x0000003f 
+ 00015559  0x00003562 store  0x00000001 , 0x000046b6 
+ 00015560  0x00003563 fetch  0x00000002 , 0x00000478 
+ 00015561  0x00003564 fetcht  0x00000002 , 0x000046bb 
+ 00015562  0x00003565 isub  0x00000002 , 0x0000003e 
+ 00015563  0x00003566 branch  0x00003ccf , 0x00000005 
+ 00015564  0x00003567 fetcht  0x00000002 , 0x000046bd 
+ 00015565  0x00003568 isub  0x00000002 , 0x0000003e 
+ 00015566  0x00003569 nrtn  0x00000005 
+ 00015567  0x0000356b store  0x00000002 , 0x000046b9 
+ 00015568  0x0000356c branch  0x00003c3d 
+ 00015569  0x00003572 fetch  0x00000001 , 0x000046bf 
+ 00015570  0x00003573 rtnbit1  0x00000005 
+ 00015571  0x00003574 call  0x00003cf0 
+ 00015572  0x00003575 branch  0x0000340c 
+ 00015573  0x00003579 jam  0x00000002 , 0x00004172 
+ 00015574  0x0000357a rtn 
+ 00015575  0x0000357f branch  0x00003cd8 
+ 00015576  0x00003582 fetch  0x00000001 , 0x000046b2 
+ 00015577  0x00003583 rtn  0x00000034 
+ 00015578  0x00003584 fetch  0x00000001 , 0x000046b3 
+ 00015579  0x00003585 rtn  0x00000034 
+ 00015580  0x00003586 increase  0xffffffff , 0x0000003f 
+ 00015581  0x00003587 store  0x00000001 , 0x000046b3 
+ 00015582  0x00003588 nrtn  0x00000034 
+ 00015583  0x00003589 jam  0x0000000a , 0x000046b3 
+ 00015584  0x0000358a call  0x000068eb 
+ 00015585  0x0000358b call  0x00006908 
+ 00015586  0x0000358c div  0x0000003f , 0x00000064 
+ 00015587  0x0000358d call  0x00007f86 
+ 00015588  0x0000358e quotient  0x0000003f 
+ 00015589  0x0000358f remainder  0x00000002 
+ 00015590  0x00003590 store  0x00000001 , 0x000046b4 
+ 00015591  0x00003591 storet  0x00000001 , 0x000046b5 
+ 00015592  0x00003592 rtn 
+ 00015593  0x00003596 call  0x00007fb4 
+ 00015594  0x00003597 branch  0x000033d9 , 0x00000002 
+ 00015595  0x00003598 branch  0x000033db 
+ 00015596  0x0000359d arg  0x00000006 , 0x00000007 
+ 00015597  0x0000359e branch  0x00003cfc 
+ 00015598  0x000035a1 arg  0x00000006 , 0x00000007 
+ 00015599  0x000035a2 branch  0x00003cf8 
+ 00015600  0x000035a5 arg  0x00000005 , 0x00000007 
+ 00015601  0x000035a6 branch  0x00003cfc 
+ 00015602  0x000035a9 arg  0x00000005 , 0x00000007 
+ 00015603  0x000035aa branch  0x00003cf8 
+ 00015604  0x000035ad arg  0x00000004 , 0x00000007 
+ 00015605  0x000035ae branch  0x00003cfc 
+ 00015606  0x000035b1 arg  0x00000004 , 0x00000007 
+ 00015607  0x000035b2 branch  0x00003cf8 
+ 00015608  0x000035b5 fetch  0x00000001 , 0x000046bf 
+ 00015609  0x000035b6 qset0  0x0000003f 
+ 00015610  0x000035b7 store  0x00000001 , 0x000046bf 
+ 00015611  0x000035b8 rtn 
+ 00015612  0x000035bb fetch  0x00000001 , 0x000046bf 
+ 00015613  0x000035bc qset1  0x0000003f 
+ 00015614  0x000035bd store  0x00000001 , 0x000046bf 
+ 00015615  0x000035be rtn 
+ 00015616  0x000035c9 call  0x00003d39 
+ 00015617  0x000035ca call  0x0000640f 
+ 00015618  0x000035cb call  0x000040c6 
+ 00015619  0x000035cc call  0x00003d66 
+ 00015620  0x000035cd call  0x00006411 
+ 00015621  0x000035ce rtn  0x0000002b 
+ 00015622  0x000035cf call  0x00003d16 
+ 00015623  0x000035d0 call  0x00003d19 
+ 00015624  0x000035d3 fetch  0x00000004 , 0x000046d3 
+ 00015625  0x000035d4 rtnbit1  0x00000010 
+ 00015626  0x000035d5 call  0x00003d4e 
+ 00015627  0x000035d6 rtnmark1  0x00000026 
+ 00015628  0x000035d7 fetch  0x00000002 , 0x00004682 
+ 00015629  0x000035d8 bbit1  0x0000000c , 0x000042b0 
+ 00015630  0x000035d9 branch  0x000042a2 
+ 00015631  0x000035dd fetch  0x00000004 , 0x000046d3 
+ 00015632  0x000035de rtnbit0  0x0000001b 
+ 00015633  0x000035df arg  0x00000014 , 0x00000039 
+ 00015634  0x000035e1 setarg  0x00030d40 
+ 00015635  0x000035e2 call  0x00002a8f 
+ 00015636  0x000035e3 loop  0x00007ec1 
+ 00015637  0x000035e4 rtn 
+ 00015638  0x000035e8 fetch  0x00000004 , 0x000046d3 
+ 00015639  0x000035e9 rtnbit0  0x00000010 
+ 00015640  0x000035ea branch  0x000048ea 
+ 00015641  0x000035ee setarg  0x0000416d 
+ 00015642  0x000035ef store  0x00000002 , 0x000041ef 
+ 00015643  0x000035f0 setarg  0x00003f77 
+ 00015644  0x000035f1 store  0x00000002 , 0x000041f1 
+ 00015645  0x000035f2 setarg  0x00003ebb 
+ 00015646  0x000035f3 store  0x00000002 , 0x000041ed 
+ 00015647  0x000035f4 setarg  0x0000417c 
+ 00015648  0x000035f5 store  0x00000002 , 0x000041f5 
+ 00015649  0x000035f6 setarg  0x00003de3 
+ 00015650  0x000035f7 store  0x00000002 , 0x000041f3 
+ 00015651  0x000035f8 setarg  0x00003eb3 
+ 00015652  0x000035f9 store  0x00000002 , 0x000041eb 
+ 00015653  0x000035fa setarg  0x00003d5b 
+ 00015654  0x000035fb store  0x00000002 , 0x000041f9 
+ 00015655  0x000035fd call  0x00002c7a 
+ 00015656  0x000035fe setarg  0x00004401 
+ 00015657  0x000035ff add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00015658  0x00003600 istore  0x00000002 , 0x00000005 
+ 00015659  0x00003601 setarg  0x00004406 
+ 00015660  0x00003602 add  0x00000013 , 0x000000da , 0x00000005 
+ 00015661  0x00003603 istore  0x00000002 , 0x00000005 
+ 00015662  0x00003604 setarg  0x00003ebf 
+ 00015663  0x00003605 add  0x00000013 , 0x000000dc , 0x00000005 
+ 00015664  0x00003606 istore  0x00000002 , 0x00000005 
+ 00015665  0x00003608 setarg  0x000041f9 
+ 00015666  0x00003609 store  0x00000002 , 0x000041fd 
+ 00015667  0x0000360a setarg  0x00003d36 
+ 00015668  0x0000360b store  0x00000002 , 0x00004201 
+ 00015669  0x0000360c rtn 
+ 00015670  0x0000360f fetch  0x00000004 , 0x000046d3 
+ 00015671  0x00003610 bbit0  0x00000012 , 0x000064d7 
+ 00015672  0x00003611 branch  0x000064da 
+ 00015673  0x00003614 rtn  0x0000002b 
+ 00015674  0x00003615 call  0x00002c9d 
+ 00015675  0x00003616 call  0x00003e6e 
+ 00015676  0x00003617 call  0x00003e1e 
+ 00015677  0x00003618 call  0x00003e54 
+ 00015678  0x00003619 call  0x00005810 
+ 00015679  0x0000361a call  0x00005839 
+ 00015680  0x0000361b call  0x0000582c 
+ 00015681  0x0000361c call  0x00005818 
+ 00015682  0x0000361d fetch  0x00000004 , 0x000046d3 
+ 00015683  0x0000361e bbit1  0x00000014 , 0x00003d46 
+ 00015684  0x0000361f bbit1  0x00000013 , 0x00004414 
+ 00015685  0x00003620 rtn 
+ 00015686  0x00003623 call  0x0000659c 
+ 00015687  0x00003624 fetch  0x00000004 , 0x000046d3 
+ 00015688  0x00003625 isolate1  0x00000019 , 0x0000003f 
+ 00015689  0x00003626 ncall  0x000065c2 , 0x00000001 
+ 00015690  0x00003627 call  0x0000443f 
+ 00015691  0x00003628 call  0x00003dc9 
+ 00015692  0x00003629 call  0x000041aa 
+ 00015693  0x0000362a branch  0x000065df 
+ 00015694  0x0000362d fetch  0x00000004 , 0x000046d3 
+ 00015695  0x0000362e bbit0  0x0000001e , 0x00003d53 
+ 00015696  0x0000362f fetch  0x00000001 , 0x00000abd 
+ 00015697  0x00003630 isolate0  0x00000003 , 0x0000003f 
+ 00015698  0x00003631 nrtn  0x00000001 
+ 00015699  0x00003633 fetch  0x00000001 , 0x0000471f 
+ 00015700  0x00003634 store  0x00000001 , 0x0000471e 
+ 00015701  0x00003635 fetch  0x00000001 , 0x000046f5 
+ 00015702  0x00003636 rtnbit1  0x00000006 
+ 00015703  0x00003638 fetch  0x00000004 , 0x000046d3 
+ 00015704  0x00003639 rtnbit0  0x00000011 
+ 00015705  0x0000363a bbit1  0x0000001d , 0x00002ee4 
+ 00015706  0x0000363b branch  0x00002f2c 
+ 00015707  0x0000363d fetch  0x00000001 , 0x00000478 
+ 00015708  0x0000363e sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00015709  0x0000363f nrtn  0x00000005 
+ 00015710  0x00003640 jam  0x00000012 , 0x00000a99 
+ 00015711  0x00003641 call  0x00007d8f 
+ 00015712  0x00003643 arg  0x00000000 , 0x00000007 
+ 00015713  0x00003644 branch  0x000041b9 
+ 00015714  0x00003647 fetch  0x00000001 , 0x000046b6 
+ 00015715  0x00003648 rtneq  0x00000001 
+ 00015716  0x00003649 jam  0x00000001 , 0x000046b6 
+ 00015717  0x0000364a rtn 
+ 00015718  0x0000364c fetch  0x00000001 , 0x000046e1 
+ 00015719  0x0000364d and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00015720  0x0000364e store  0x00000001 , 0x0000477a 
+ 00015721  0x0000364f branch  0x00003d80 
+ 00015722  0x00003653 fetcht  0x00000001 , 0x000046e7 
+ 00015723  0x00003654 call  0x0000681d 
+ 00015724  0x00003655 nbranch  0x00003d62 , 0x00000001 
+ 00015725  0x00003657 fetch  0x00000001 , 0x000046b6 
+ 00015726  0x00003658 rtneq  0x00000000 
+ 00015727  0x00003659 jam  0x00000000 , 0x000046b6 
+ 00015728  0x0000365b fetch  0x00000001 , 0x0000477a 
+ 00015729  0x0000365c increase  0x00000001 , 0x0000003f 
+ 00015730  0x0000365d and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00015731  0x0000365e store  0x00000001 , 0x0000477a 
+ 00015732  0x0000365f call  0x00003d7e 
+ 00015733  0x00003660 fetch  0x00000004 , 0x000046d3 
+ 00015734  0x00003661 bbit1  0x00000014 , 0x0000443b 
+ 00015735  0x00003662 bbit1  0x00000013 , 0x00003d79 
+ 00015736  0x00003663 rtn 
+ 00015737  0x00003665 arg  0x0000001e , 0x00000002 
+ 00015738  0x00003666 call  0x0000680e 
+ 00015739  0x00003667 arg  0x0000001f , 0x00000002 
+ 00015740  0x00003668 call  0x0000680e 
+ 00015741  0x00003669 branch  0x00004435 
+ 00015742  0x0000366c bpatch  0x000000e3 , 0x0000401c 
+ 00015743  0x0000366d call  0x0000424a 
+ 00015744  0x0000366e fetch  0x00000001 , 0x000046e0 
+ 00015745  0x0000366f beq  0x00000005 , 0x00003daa 
+ 00015746  0x00003670 beq  0x00000004 , 0x00003d96 
+ 00015747  0x00003671 fetch  0x00000001 , 0x0000477a 
+ 00015748  0x00003672 beq  0x00000000 , 0x00003d8a 
+ 00015749  0x00003673 beq  0x00000001 , 0x00003d88 
+ 00015750  0x00003674 beq  0x00000002 , 0x00003d8c 
+ 00015751  0x00003675 beq  0x00000003 , 0x00003d8e 
+ 00015752  0x00003677 fetch  0x00000001 , 0x00004780 
+ 00015753  0x00003678 branch  0x00003dbe 
+ 00015754  0x0000367a fetch  0x00000001 , 0x0000477f 
+ 00015755  0x0000367b branch  0x00003dbe 
+ 00015756  0x0000367d fetch  0x00000001 , 0x00004781 
+ 00015757  0x0000367e branch  0x00003dbe 
+ 00015758  0x00003680 fetch  0x00000001 , 0x00004782 
+ 00015759  0x00003681 branch  0x00003dbe 
+ 00015760  0x00003683 fetch  0x00000001 , 0x000046e0 
+ 00015761  0x00003684 rtneq  0x00000006 
+ 00015762  0x00003685 fetch  0x00000001 , 0x000046b5 
+ 00015763  0x00003686 increase  0x00000001 , 0x0000003f 
+ 00015764  0x00003687 store  0x00000001 , 0x000046b5 
+ 00015765  0x00003688 rtn 
+ 00015766  0x0000368b fetch  0x00000001 , 0x0000477a 
+ 00015767  0x0000368c beq  0x00000000 , 0x00003d9d 
+ 00015768  0x0000368d beq  0x00000001 , 0x00003d9b 
+ 00015769  0x0000368e beq  0x00000002 , 0x00003d9f 
+ 00015770  0x0000368f beq  0x00000003 , 0x00003da1 
+ 00015771  0x00003691 fetch  0x00000001 , 0x00004784 
+ 00015772  0x00003692 branch  0x00003da2 
+ 00015773  0x00003694 fetch  0x00000001 , 0x00004783 
+ 00015774  0x00003695 branch  0x00003da2 
+ 00015775  0x00003697 fetch  0x00000001 , 0x00004785 
+ 00015776  0x00003698 branch  0x00003da2 
+ 00015777  0x0000369a fetch  0x00000001 , 0x00004786 
+ 00015778  0x0000369c store  0x00000001 , 0x000046b5 
+ 00015779  0x0000369d lshift8  0x0000003f , 0x0000003f 
+ 00015780  0x0000369e copy  0x0000003f , 0x00000011 
+ 00015781  0x0000369f add  0x0000003f , 0x0000000d , 0x0000003f 
+ 00015782  0x000036a0 call  0x00006413 
+ 00015783  0x000036a1 copy  0x00000011 , 0x0000003f 
+ 00015784  0x000036a2 add  0x0000003f , 0x0000000e , 0x0000003f 
+ 00015785  0x000036a3 branch  0x00006413 
+ 00015786  0x000036a6 fetch  0x00000001 , 0x0000477a 
+ 00015787  0x000036a7 beq  0x00000000 , 0x00003db1 
+ 00015788  0x000036a8 beq  0x00000001 , 0x00003daf 
+ 00015789  0x000036a9 beq  0x00000002 , 0x00003db3 
+ 00015790  0x000036aa beq  0x00000003 , 0x00003db5 
+ 00015791  0x000036ac fetch  0x00000001 , 0x00004788 
+ 00015792  0x000036ad branch  0x00003db6 
+ 00015793  0x000036af fetch  0x00000001 , 0x00004787 
+ 00015794  0x000036b0 branch  0x00003db6 
+ 00015795  0x000036b2 fetch  0x00000001 , 0x00004789 
+ 00015796  0x000036b3 branch  0x00003db6 
+ 00015797  0x000036b5 fetch  0x00000001 , 0x0000478a 
+ 00015798  0x000036b7 store  0x00000001 , 0x000046b5 
+ 00015799  0x000036b8 call  0x000040c0 
+ 00015800  0x000036b9 fetch  0x00000001 , 0x000046b5 
+ 00015801  0x000036bb add  0x0000003f , 0x00000080 , 0x0000003f 
+ 00015802  0x000036bc lshift8  0x0000003f , 0x0000003f 
+ 00015803  0x000036bd add  0x0000003f , 0x00000005 , 0x0000003f 
+ 00015804  0x000036be copy  0x0000003f , 0x00000011 
+ 00015805  0x000036bf branch  0x0000415a 
+ 00015806  0x000036c2 store  0x00000001 , 0x000046b5 
+ 00015807  0x000036c3 call  0x00003d90 
+ 00015808  0x000036c4 fetch  0x00000001 , 0x000046b5 
+ 00015809  0x000036c5 setarg  0x00000006 
+ 00015810  0x000036c6 call  0x00006414 
+ 00015811  0x000036c7 and  0x0000003f , 0x000000f8 , 0x00000002 
+ 00015812  0x000036c8 fetch  0x00000001 , 0x000046b5 
+ 00015813  0x000036c9 iadd  0x00000002 , 0x0000003f 
+ 00015814  0x000036ca lshift8  0x0000003f , 0x0000003f 
+ 00015815  0x000036cb add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00015816  0x000036cc branch  0x00006413 
+ 00015817  0x000036d0 call  0x000033c4 
+ 00015818  0x000036d1 branch  0x00004316 , 0x00000005 
+ 00015819  0x000036d2 call  0x0000441c 
+ 00015820  0x000036d3 call  0x000042e4 
+ 00015821  0x000036d4 branch  0x000033bd 
+ 00015822  0x000036d8 fetch  0x00000002 , 0x00004707 
+ 00015823  0x000036d9 rtn  0x00000034 
+ 00015824  0x000036da fetch  0x00000004 , 0x000046d3 
+ 00015825  0x000036db rtnbit0  0x00000011 
+ 00015826  0x000036dc rtnbit1  0x00000003 
+ 00015827  0x000036dd rtnmark1  0x00000026 
+ 00015828  0x000036de call  0x00004083 
+ 00015829  0x000036df rtnne  0x00000007 
+ 00015830  0x000036e0 call  0x00004482 
+ 00015831  0x000036e1 arg  0x00000003 , 0x00000007 
+ 00015832  0x000036e2 call  0x000043ce 
+ 00015833  0x000036e3 setarg  0x00000000 
+ 00015834  0x000036e4 store  0x00000002 , 0x000046ae 
+ 00015835  0x000036e5 store  0x00000001 , 0x000046b4 
+ 00015836  0x000036e6 call  0x00003263 
+ 00015837  0x000036e8 fetch  0x00000002 , 0x00004682 
+ 00015838  0x000036e9 bbit1  0x00000007 , 0x00004392 
+ 00015839  0x000036ea bbit1  0x00000009 , 0x00003402 
+ 00015840  0x000036eb bbit1  0x00000000 , 0x000033e9 
+ 00015841  0x000036ec call  0x000042ca 
+ 00015842  0x000036ed branch  0x00002ead 
+ 00015843  0x000036f1 call  0x00003dce 
+ 00015844  0x000036f2 call  0x00007e34 
+ 00015845  0x000036f3 call  0x00003d6a 
+ 00015846  0x000036f4 call  0x00003de9 
+ 00015847  0x000036f5 call  0x00003ee0 
+ 00015848  0x000036f6 branch  0x00003df7 
+ 00015849  0x000036f8 fetch  0x00000004 , 0x000046d3 
+ 00015850  0x000036f9 rtnbit0  0x00000010 
+ 00015851  0x000036fa call  0x000048d3 
+ 00015852  0x000036fb branch  0x000048fd 
+ 00015853  0x000036fe hfetch  0x00000001 , 0x00008a04 
+ 00015854  0x000036ff bbit0  0x00000007 , 0x00003df1 
+ 00015855  0x00003700 bbit1  0x00000007 , 0x00003df4 
+ 00015856  0x00003701 rtn 
+ 00015857  0x00003703 fetch  0x00000001 , 0x000046ff 
+ 00015858  0x00003704 rtnbit0  0x00000007 
+ 00015859  0x00003705 branch  0x0000659a 
+ 00015860  0x00003707 fetch  0x00000001 , 0x000046ff 
+ 00015861  0x00003708 rtnbit1  0x00000007 
+ 00015862  0x00003709 branch  0x00004381 
+ 00015863  0x0000370c call  0x00003ded 
+ 00015864  0x0000370d hfetch  0x00000001 , 0x00008a04 
+ 00015865  0x0000370e store  0x00000001 , 0x000046ff 
+ 00015866  0x0000370f rtnbit0  0x00000007 
+ 00015867  0x00003710 call  0x00003e07 
+ 00015868  0x00003711 fetch  0x00000004 , 0x000046f9 
+ 00015869  0x00003712 fetcht  0x00000001 , 0x000046fd 
+ 00015870  0x00003713 iadd  0x00000002 , 0x00000002 
+ 00015871  0x00003714 copy  0x00000022 , 0x0000003f 
+ 00015872  0x00003715 isub  0x00000002 , 0x0000003e 
+ 00015873  0x00003716 nrtn  0x00000002 
+ 00015874  0x00003717 store  0x00000004 , 0x000046f9 
+ 00015875  0x00003718 call  0x00003f97 
+ 00015876  0x00003719 nrtn  0x00000028 
+ 00015877  0x0000371a jam  0x00000004 , 0x00000d38 
+ 00015878  0x0000371b branch  0x00003e0f 
+ 00015879  0x0000371e fetcht  0x00000004 , 0x000046f9 
+ 00015880  0x0000371f copy  0x00000022 , 0x0000003f 
+ 00015881  0x00003720 isub  0x00000002 , 0x0000003e 
+ 00015882  0x00003721 ncall  0x00003e0c , 0x00000002 
+ 00015883  0x00003722 rtn 
+ 00015884  0x00003724 setarg  0x00000000 
+ 00015885  0x00003725 store  0x00000004 , 0x000046f9 
+ 00015886  0x00003726 rtn 
+ 00015887  0x0000372b fetch  0x00000001 , 0x00000d38 
+ 00015888  0x0000372c rtnbit0  0x00000002 
+ 00015889  0x0000372d branch  0x00003e12 
+ 00015890  0x0000372f hfetch  0x00000001 , 0x00008a04 
+ 00015891  0x00003730 rtnbit0  0x00000007 
+ 00015892  0x00003731 jam  0x00000020 , 0x00000d52 
+ 00015893  0x00003732 setarg  0x00000001 
+ 00015894  0x00003733 store  0x00000001 , 0x00000d54 
+ 00015895  0x00003734 fetch  0x00000007 , 0x0000469a 
+ 00015896  0x00003735 istore  0x00000007 , 0x00000005 
+ 00015897  0x00003736 rtn 
+ 00015898  0x0000373a hfetch  0x00000002 , 0x00008050 
+ 00015899  0x0000373b set0  0x0000000b , 0x0000003f 
+ 00015900  0x0000373c hstore  0x00000002 , 0x00008050 
+ 00015901  0x0000373d rtn 
+ 00015902  0x00003740 setarg  0x00008c00 
+ 00015903  0x00003741 store  0x00000002 , 0x00004575 
+ 00015904  0x00003742 setarg  0x00008e7a 
+ 00015905  0x00003743 store  0x00000002 , 0x000044bc 
+ 00015906  0x00003744 setarg  0x00002402 
+ 00015907  0x00003745 store  0x00000002 , 0x000040bd 
+ 00015908  0x00003746 setarg  0x00002580 
+ 00015909  0x00003747 store  0x00000003 , 0x000040aa 
+ 00015910  0x00003748 jam  0x00000003 , 0x00004173 
+ 00015911  0x00003749 jam  0x00000008 , 0x00004156 
+ 00015912  0x0000374a jam  0x00000001 , 0x000046d9 
+ 00015913  0x0000374b setarg  0x00000200 
+ 00015914  0x0000374c store  0x00000002 , 0x00004154 
+ 00015915  0x0000374d jam  0x00000017 , 0x000044a6 
+ 00015916  0x0000374e jam  0x00000017 , 0x000044a8 
+ 00015917  0x00003750 setarg  0x00000a77 
+ 00015918  0x00003751 store  0x00000002 , 0x00004212 
+ 00015919  0x00003761 setsect  0x00000000 , 0x00000306 
+ 00015920  0x00003762 setsect  0x00000001 , 0x00004440 
+ 00015921  0x00003763 setsect  0x00000002 , 0x00010000 
+ 00015922  0x00003764 setsect  0x00000003 , 0x00004408 
+ 00015923  0x00003765 store  0x00000009 , 0x00004577 
+ 00015924  0x00003766 setsect  0x00000000 , 0x00001224 
+ 00015925  0x00003767 setsect  0x00000001 , 0x00004000 
+ 00015926  0x00003768 setsect  0x00000002 , 0x00000000 
+ 00015927  0x00003769 istore  0x00000005 , 0x00000005 
+ 00015928  0x0000376b setsect  0x00000000 , 0x0003ffff 
+ 00015929  0x0000376c setsect  0x00000001 , 0x0002fe23 
+ 00015930  0x0000376d setsect  0x00000002 , 0x000199d9 
+ 00015931  0x0000376e setsect  0x00000003 , 0x0000020d 
+ 00015932  0x0000376f store  0x00000008 , 0x00004098 
+ 00015933  0x00003771 setarg  0x0000012c 
+ 00015934  0x00003772 store  0x00000002 , 0x00004707 
+ 00015935  0x00003773 call  0x000057a3 
+ 00015936  0x00003774 fetch  0x00000004 , 0x000046d3 
+ 00015937  0x00003775 rtnbit0  0x0000001f 
+ 00015938  0x00003776 call  0x00003e44 
+ 00015939  0x00003777 branch  0x00003e4c 
+ 00015940  0x0000377a fetcht  0x00000001 , 0x000046f7 
+ 00015941  0x0000377b call  0x000067fb 
+ 00015942  0x0000377c fetcht  0x00000001 , 0x000046f7 
+ 00015943  0x0000377d call  0x0000681d 
+ 00015944  0x0000377e jam  0x00000003 , 0x000046f6 
+ 00015945  0x0000377f rtn  0x00000001 
+ 00015946  0x00003780 jam  0x00000002 , 0x000046f6 
+ 00015947  0x00003781 rtn 
+ 00015948  0x00003784 fetcht  0x00000001 , 0x000046f8 
+ 00015949  0x00003785 call  0x000067fb 
+ 00015950  0x00003786 fetcht  0x00000001 , 0x000046f8 
+ 00015951  0x00003787 call  0x0000681d 
+ 00015952  0x00003788 jam  0x00000000 , 0x0000422d 
+ 00015953  0x00003789 rtn  0x00000001 
+ 00015954  0x0000378a jam  0x00000002 , 0x0000422d 
+ 00015955  0x0000378b rtn 
+ 00015956  0x0000378f fetch  0x00000001 , 0x0000422d 
+ 00015957  0x00003790 beq  0x00000000 , 0x00003e59 
+ 00015958  0x00003791 beq  0x00000001 , 0x00003e62 
+ 00015959  0x00003792 beq  0x00000002 , 0x00003e6b 
+ 00015960  0x00003793 branch  0x00003e59 
+ 00015961  0x00003796 fetcht  0x00000002 , 0x00004221 
+ 00015962  0x00003797 fetch  0x00000002 , 0x00004227 
+ 00015963  0x00003798 isub  0x00000002 , 0x0000003f 
+ 00015964  0x00003799 mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00015965  0x0000379a div  0x0000003f , 0x00000064 
+ 00015966  0x0000379b call  0x00007f86 
+ 00015967  0x0000379c quotient  0x0000003f 
+ 00015968  0x0000379d store  0x00000002 , 0x000046d0 
+ 00015969  0x0000379e rtn 
+ 00015970  0x000037a0 fetcht  0x00000002 , 0x0000421f 
+ 00015971  0x000037a1 fetch  0x00000002 , 0x00004225 
+ 00015972  0x000037a2 isub  0x00000002 , 0x0000003f 
+ 00015973  0x000037a3 mul32  0x0000003f , 0x000000e6 , 0x0000003f 
+ 00015974  0x000037a4 div  0x0000003f , 0x00000190 
+ 00015975  0x000037a5 call  0x00007f86 
+ 00015976  0x000037a6 quotient  0x0000003f 
+ 00015977  0x000037a7 store  0x00000002 , 0x000046d0 
+ 00015978  0x000037a8 rtn 
+ 00015979  0x000037aa fetch  0x00000002 , 0x00004223 
+ 00015980  0x000037ab store  0x00000002 , 0x000046d0 
+ 00015981  0x000037ac rtn 
+ 00015982  0x000037ae fetcht  0x00000001 , 0x0000423a 
+ 00015983  0x000037af call  0x0000680e 
+ 00015984  0x000037b0 call  0x000048fb 
+ 00015985  0x000037b1 fetcht  0x00000001 , 0x000046e2 
+ 00015986  0x000037b2 call  0x000067fb 
+ 00015987  0x000037b3 fetcht  0x00000001 , 0x000046e3 
+ 00015988  0x000037b4 call  0x000067fb 
+ 00015989  0x000037b5 fetcht  0x00000001 , 0x000046e4 
+ 00015990  0x000037b6 call  0x000067fb 
+ 00015991  0x000037b7 fetcht  0x00000001 , 0x000046f3 
+ 00015992  0x000037b8 call  0x000067fb 
+ 00015993  0x000037ba fetcht  0x00000001 , 0x000046dc 
+ 00015994  0x000037bb call  0x0000680e 
+ 00015995  0x000037bd fetcht  0x00000001 , 0x000046e8 
+ 00015996  0x000037be call  0x000067fb 
+ 00015997  0x000037c0 fetcht  0x00000001 , 0x000046e9 
+ 00015998  0x000037c1 call  0x000067fb 
+ 00015999  0x000037c3 fetcht  0x00000001 , 0x000046ea 
+ 00016000  0x000037c4 call  0x000067fb 
+ 00016001  0x000037c5 fetcht  0x00000001 , 0x000046eb 
+ 00016002  0x000037c6 call  0x000067fb 
+ 00016003  0x000037c8 fetcht  0x00000001 , 0x000046e5 
+ 00016004  0x000037c9 call  0x000067fb 
+ 00016005  0x000037ca fetcht  0x00000001 , 0x000046e6 
+ 00016006  0x000037cb call  0x000067fb 
+ 00016007  0x000037cd fetcht  0x00000001 , 0x000046ef 
+ 00016008  0x000037ce call  0x0000680e 
+ 00016009  0x000037d0 fetcht  0x00000001 , 0x000046f0 
+ 00016010  0x000037d1 call  0x0000680e 
+ 00016011  0x000037d3 fetcht  0x00000001 , 0x000046f1 
+ 00016012  0x000037d4 call  0x0000680e 
+ 00016013  0x000037d6 fetcht  0x00000001 , 0x000046f2 
+ 00016014  0x000037d7 call  0x0000680e 
+ 00016015  0x000037d9 fetcht  0x00000001 , 0x000046f4 
+ 00016016  0x000037da call  0x0000680e 
+ 00016017  0x000037dc fetcht  0x00000001 , 0x000046ed 
+ 00016018  0x000037dd call  0x000067fb 
+ 00016019  0x000037df fetcht  0x00000001 , 0x000046ec 
+ 00016020  0x000037e0 call  0x000067fb 
+ 00016021  0x000037e2 fetcht  0x00000001 , 0x000046e7 
+ 00016022  0x000037e3 branch  0x000067fb 
+ 00016023  0x000037e6 fetcht  0x00000001 , 0x000046e8 
+ 00016024  0x000037e7 call  0x000067dd 
+ 00016025  0x000037e8 fetcht  0x00000001 , 0x000046e9 
+ 00016026  0x000037e9 call  0x000067dd 
+ 00016027  0x000037ea fetcht  0x00000001 , 0x000046ea 
+ 00016028  0x000037eb call  0x000067dd 
+ 00016029  0x000037ec fetcht  0x00000001 , 0x000046eb 
+ 00016030  0x000037ed branch  0x000067dd 
+ 00016031  0x000037f0 fetcht  0x00000001 , 0x000046e8 
+ 00016032  0x000037f1 call  0x00003ea7 
+ 00016033  0x000037f2 fetcht  0x00000001 , 0x000046e9 
+ 00016034  0x000037f3 call  0x00003ea7 
+ 00016035  0x000037f4 fetcht  0x00000001 , 0x000046ea 
+ 00016036  0x000037f5 call  0x00003ea7 
+ 00016037  0x000037f6 fetcht  0x00000001 , 0x000046eb 
+ 00016038  0x000037f7 branch  0x00003ea7 
+ 00016039  0x000037fa sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00016040  0x000037fb rtn  0x00000005 
+ 00016041  0x000037fc and  0x00000002 , 0x0000007f , 0x00000007 
+ 00016042  0x000037fd hfetch  0x00000004 , 0x0000811c 
+ 00016043  0x000037fe qisolate1  0x0000003f 
+ 00016044  0x000037ff hfetch  0x00000004 , 0x00008078 
+ 00016045  0x00003800 qsetflag  0x00000001 , 0x0000003f 
+ 00016046  0x00003801 hstore  0x00000004 , 0x00008078 
+ 00016047  0x00003802 hfetch  0x00000004 , 0x0000807c 
+ 00016048  0x00003803 nqsetflag  0x00000001 , 0x0000003f 
+ 00016049  0x00003804 hstore  0x00000004 , 0x0000807c 
+ 00016050  0x00003805 rtn 
+ 00016051  0x00003808 enable  0x00000028 
+ 00016052  0x00003809 hfetch  0x00000004 , 0x00008138 
+ 00016053  0x0000380a setflag  0x00000028 , 0x0000001a , 0x0000003f 
+ 00016054  0x0000380b hstore  0x00000004 , 0x0000804c 
+ 00016055  0x0000380c call  0x00002c21 
+ 00016056  0x0000380d call  0x00004482 
+ 00016057  0x0000380e call  0x00003e9f 
+ 00016058  0x00003810 branch  0x00003ebf 
+ 00016059  0x00003815 call  0x00003ebf 
+ 00016060  0x00003816 fetch  0x00000001 , 0x000000a0 
+ 00016061  0x00003817 nrtn  0x00000034 
+ 00016062  0x00003818 branch  0x000067ed 
+ 00016063  0x0000381b call  0x00003ee0 
+ 00016064  0x0000381c arg  0x00000019 , 0x00000002 
+ 00016065  0x0000381d fetch  0x00000004 , 0x000046d3 
+ 00016066  0x0000381e isolate1  0x00000012 , 0x0000003f 
+ 00016067  0x0000381f call  0x00003ede , 0x00000001 
+ 00016068  0x00003820 call  0x0000680e 
+ 00016069  0x00003821 call  0x000063ee 
+ 00016070  0x00003825 fetcht  0x00000001 , 0x000046e2 
+ 00016071  0x00003826 call  0x000067dd 
+ 00016072  0x00003827 fetcht  0x00000001 , 0x000046e3 
+ 00016073  0x00003828 call  0x000067dd 
+ 00016074  0x00003829 fetcht  0x00000001 , 0x000046e4 
+ 00016075  0x0000382a call  0x000067dd 
+ 00016076  0x0000382c fetcht  0x00000001 , 0x000046e5 
+ 00016077  0x0000382d call  0x000067dd 
+ 00016078  0x0000382e fetcht  0x00000001 , 0x000046e6 
+ 00016079  0x0000382f call  0x000067dd 
+ 00016080  0x00003830 fetcht  0x00000001 , 0x000046e7 
+ 00016081  0x00003831 call  0x000067dd 
+ 00016082  0x00003832 fetcht  0x00000001 , 0x000046ed 
+ 00016083  0x00003833 call  0x000067dd 
+ 00016084  0x00003834 fetcht  0x00000001 , 0x000046e8 
+ 00016085  0x00003835 call  0x000067dd 
+ 00016086  0x00003836 fetcht  0x00000001 , 0x000046e9 
+ 00016087  0x00003837 call  0x000067dd 
+ 00016088  0x00003838 fetcht  0x00000001 , 0x000046ea 
+ 00016089  0x00003839 call  0x000067dd 
+ 00016090  0x0000383a fetcht  0x00000001 , 0x000046eb 
+ 00016091  0x0000383b call  0x000067dd 
+ 00016092  0x0000383c fetcht  0x00000001 , 0x000046f3 
+ 00016093  0x0000383d branch  0x000067e1 
+ 00016094  0x00003842 arg  0x0000001e , 0x00000002 
+ 00016095  0x00003843 rtn 
+ 00016096  0x00003846 bpatch  0x000000e4 , 0x0000401c 
+ 00016097  0x00003847 call  0x00003eee 
+ 00016098  0x00003848 call  0x00003f36 
+ 00016099  0x00003849 fetch  0x00000001 , 0x000046b8 
+ 00016100  0x0000384a fetcht  0x00000001 , 0x000046b7 
+ 00016101  0x0000384b store  0x00000001 , 0x000046b7 
+ 00016102  0x0000384c isub  0x00000002 , 0x0000003e 
+ 00016103  0x0000384d nbranch  0x000033d4 , 0x00000005 
+ 00016104  0x0000384e fetch  0x00000001 , 0x000046be 
+ 00016105  0x0000384f fetcht  0x00000001 , 0x000046bd 
+ 00016106  0x00003850 store  0x00000001 , 0x000046bd 
+ 00016107  0x00003851 isub  0x00000002 , 0x0000003e 
+ 00016108  0x00003852 nbranch  0x000033d4 , 0x00000005 
+ 00016109  0x00003853 rtn 
+ 00016110  0x00003855 fetch  0x00000001 , 0x000046ea 
+ 00016111  0x00003856 rtneq  0x000000ff 
+ 00016112  0x00003857 arg  0x00000000 , 0x00000011 
+ 00016113  0x00003858 fetcht  0x00000001 , 0x000046ea 
+ 00016114  0x00003859 call  0x0000681d 
+ 00016115  0x0000385a setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016116  0x0000385b fetcht  0x00000001 , 0x000046eb 
+ 00016117  0x0000385c call  0x0000681d 
+ 00016118  0x0000385d setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016119  0x0000385e copy  0x00000011 , 0x0000003f 
+ 00016120  0x0000385f store  0x00000001 , 0x000046b8 
+ 00016121  0x00003860 beq  0x00000001 , 0x00003efe 
+ 00016122  0x00003861 beq  0x00000002 , 0x00003f02 
+ 00016123  0x00003862 fetch  0x00000001 , 0x000046b9 
+ 00016124  0x00003863 bbit1  0x00000007 , 0x00003f0e 
+ 00016125  0x00003864 rtn 
+ 00016126  0x00003867 fetch  0x00000001 , 0x000046b7 
+ 00016127  0x00003868 beq  0x00000000 , 0x00003f06 
+ 00016128  0x00003869 beq  0x00000003 , 0x00003f08 
+ 00016129  0x0000386a rtn 
+ 00016130  0x0000386c fetch  0x00000001 , 0x000046b7 
+ 00016131  0x0000386d beq  0x00000000 , 0x00003f0a 
+ 00016132  0x0000386e beq  0x00000003 , 0x00003f0c 
+ 00016133  0x0000386f rtn 
+ 00016134  0x00003871 jam  0x00000082 , 0x000046b9 
+ 00016135  0x00003872 rtn 
+ 00016136  0x00003874 jam  0x00000081 , 0x000046b9 
+ 00016137  0x00003875 rtn 
+ 00016138  0x00003877 jam  0x00000080 , 0x000046b9 
+ 00016139  0x00003878 rtn 
+ 00016140  0x0000387a jam  0x00000083 , 0x000046b9 
+ 00016141  0x0000387b rtn 
+ 00016142  0x0000387d fetch  0x00000001 , 0x000046b9 
+ 00016143  0x0000387e set0  0x00000007 , 0x0000003f 
+ 00016144  0x0000387f store  0x00000001 , 0x000046b9 
+ 00016145  0x00003880 beq  0x00000000 , 0x00003f16 
+ 00016146  0x00003881 beq  0x00000001 , 0x00003f19 
+ 00016147  0x00003882 beq  0x00000002 , 0x00003f1c 
+ 00016148  0x00003883 beq  0x00000003 , 0x00003f1f 
+ 00016149  0x00003884 rtn 
+ 00016150  0x00003886 fetch  0x00000001 , 0x000046b8 
+ 00016151  0x00003887 beq  0x00000003 , 0x00003f22 
+ 00016152  0x00003888 rtn 
+ 00016153  0x0000388a fetch  0x00000001 , 0x000046b8 
+ 00016154  0x0000388b beq  0x00000000 , 0x00003f22 
+ 00016155  0x0000388c rtn 
+ 00016156  0x0000388e fetch  0x00000001 , 0x000046b8 
+ 00016157  0x0000388f beq  0x00000003 , 0x00003f2c 
+ 00016158  0x00003890 rtn 
+ 00016159  0x00003892 fetch  0x00000001 , 0x000046b8 
+ 00016160  0x00003893 beq  0x00000000 , 0x00003f2c 
+ 00016161  0x00003894 rtn 
+ 00016162  0x00003896 fetch  0x00000001 , 0x000046bc 
+ 00016163  0x00003897 increase  0x00000001 , 0x0000003f 
+ 00016164  0x00003898 store  0x00000001 , 0x000046bc 
+ 00016165  0x00003899 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016166  0x0000389a rtn  0x00000002 
+ 00016167  0x0000389b jam  0x00000000 , 0x000046bc 
+ 00016168  0x0000389c fetch  0x00000001 , 0x000046ba 
+ 00016169  0x0000389d increase  0x00000001 , 0x0000003f 
+ 00016170  0x0000389e store  0x00000001 , 0x000046ba 
+ 00016171  0x0000389f rtn 
+ 00016172  0x000038a1 fetch  0x00000001 , 0x000046bb 
+ 00016173  0x000038a2 increase  0x00000001 , 0x0000003f 
+ 00016174  0x000038a3 store  0x00000001 , 0x000046bb 
+ 00016175  0x000038a4 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016176  0x000038a5 rtn  0x00000002 
+ 00016177  0x000038a6 jam  0x00000000 , 0x000046bb 
+ 00016178  0x000038a7 fetch  0x00000001 , 0x000046ba 
+ 00016179  0x000038a8 increase  0xffffffff , 0x0000003f 
+ 00016180  0x000038a9 store  0x00000001 , 0x000046ba 
+ 00016181  0x000038aa rtn 
+ 00016182  0x000038ae fetch  0x00000001 , 0x000046e8 
+ 00016183  0x000038af rtneq  0x000000ff 
+ 00016184  0x000038b0 arg  0x00000000 , 0x00000011 
+ 00016185  0x000038b1 fetcht  0x00000001 , 0x000046e8 
+ 00016186  0x000038b2 call  0x0000681d 
+ 00016187  0x000038b3 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016188  0x000038b4 fetcht  0x00000001 , 0x000046e9 
+ 00016189  0x000038b5 call  0x0000681d 
+ 00016190  0x000038b6 setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016191  0x000038b7 copy  0x00000011 , 0x0000003f 
+ 00016192  0x000038b8 store  0x00000001 , 0x000046be 
+ 00016193  0x000038b9 beq  0x00000001 , 0x00003f46 
+ 00016194  0x000038ba beq  0x00000002 , 0x00003f4a 
+ 00016195  0x000038bb fetch  0x00000001 , 0x000046bf 
+ 00016196  0x000038bc bbit1  0x00000007 , 0x00003f56 
+ 00016197  0x000038bd rtn 
+ 00016198  0x000038c0 fetch  0x00000001 , 0x000046bd 
+ 00016199  0x000038c1 beq  0x00000000 , 0x00003f4e 
+ 00016200  0x000038c2 beq  0x00000003 , 0x00003f50 
+ 00016201  0x000038c3 rtn 
+ 00016202  0x000038c5 fetch  0x00000001 , 0x000046bd 
+ 00016203  0x000038c6 beq  0x00000000 , 0x00003f52 
+ 00016204  0x000038c7 beq  0x00000003 , 0x00003f54 
+ 00016205  0x000038c8 rtn 
+ 00016206  0x000038ca jam  0x00000082 , 0x000046bf 
+ 00016207  0x000038cb rtn 
+ 00016208  0x000038cd jam  0x00000081 , 0x000046bf 
+ 00016209  0x000038ce rtn 
+ 00016210  0x000038d0 jam  0x00000080 , 0x000046bf 
+ 00016211  0x000038d1 rtn 
+ 00016212  0x000038d3 jam  0x00000083 , 0x000046bf 
+ 00016213  0x000038d4 rtn 
+ 00016214  0x000038d6 fetch  0x00000001 , 0x000046bf 
+ 00016215  0x000038d7 set0  0x00000007 , 0x0000003f 
+ 00016216  0x000038d8 store  0x00000001 , 0x000046bf 
+ 00016217  0x000038d9 beq  0x00000000 , 0x00003f5e 
+ 00016218  0x000038da beq  0x00000001 , 0x00003f61 
+ 00016219  0x000038db beq  0x00000002 , 0x00003f64 
+ 00016220  0x000038dc beq  0x00000003 , 0x00003f67 
+ 00016221  0x000038dd rtn 
+ 00016222  0x000038df fetch  0x00000001 , 0x000046be 
+ 00016223  0x000038e0 beq  0x00000003 , 0x00003f6a 
+ 00016224  0x000038e1 rtn 
+ 00016225  0x000038e3 fetch  0x00000001 , 0x000046be 
+ 00016226  0x000038e4 beq  0x00000000 , 0x00003f6a 
+ 00016227  0x000038e5 rtn 
+ 00016228  0x000038e7 fetch  0x00000001 , 0x000046be 
+ 00016229  0x000038e8 beq  0x00000003 , 0x00003f6f 
+ 00016230  0x000038e9 rtn 
+ 00016231  0x000038eb fetch  0x00000001 , 0x000046be 
+ 00016232  0x000038ec beq  0x00000000 , 0x00003f6f 
+ 00016233  0x000038ed rtn 
+ 00016234  0x000038ef jam  0x00000000 , 0x000046c2 
+ 00016235  0x000038f0 fetch  0x00000001 , 0x000046c0 
+ 00016236  0x000038f1 increase  0x00000001 , 0x0000003f 
+ 00016237  0x000038f2 store  0x00000001 , 0x000046c0 
+ 00016238  0x000038f3 rtn 
+ 00016239  0x000038f5 jam  0x00000000 , 0x000046c1 
+ 00016240  0x000038f6 fetch  0x00000001 , 0x000046c0 
+ 00016241  0x000038f7 increase  0xffffffff , 0x0000003f 
+ 00016242  0x000038f8 store  0x00000001 , 0x000046c0 
+ 00016243  0x000038f9 rtn 
+ 00016244  0x000038fd setarg  0x00000002 
+ 00016245  0x000038fe store  0x00000001 , 0x00004680 
+ 00016246  0x000038ff rtn 
+ 00016247  0x00003902 fetch  0x00000001 , 0x000041e2 
+ 00016248  0x00003903 rtn  0x00000034 
+ 00016249  0x00003904 call  0x00005271 
+ 00016250  0x00003905 nrtn  0x00000034 
+ 00016251  0x00003906 fetch  0x00000004 , 0x000046d3 
+ 00016252  0x00003907 bbit1  0x00000003 , 0x00003f8a 
+ 00016253  0x00003908 bbit1  0x00000000 , 0x00003f8a 
+ 00016254  0x00003909 bbit1  0x00000005 , 0x00003f8a 
+ 00016255  0x0000390a call  0x00003f97 
+ 00016256  0x0000390b nrtn  0x00000028 
+ 00016257  0x0000390d arg  0x00000009 , 0x00000011 
+ 00016258  0x0000390e call  0x00004d63 
+ 00016259  0x0000390f fetch  0x00000002 , 0x0000424e 
+ 00016260  0x00003910 istore  0x00000002 , 0x00000005 
+ 00016261  0x00003911 setarg  0x000002a1 
+ 00016262  0x00003912 istore  0x00000002 , 0x00000005 
+ 00016263  0x00003913 fetch  0x00000007 , 0x0000469a 
+ 00016264  0x00003914 istore  0x00000007 , 0x00000005 
+ 00016265  0x00003915 rtn 
+ 00016266  0x00003919 setarg  0x00000000 
+ 00016267  0x0000391a store  0x00000007 , 0x0000469a 
+ 00016268  0x0000391b branch  0x00003f81 
+ 00016269  0x0000391f fetch  0x00000002 , 0x000046aa 
+ 00016270  0x00003920 store  0x00000002 , 0x000046b0 
+ 00016271  0x00003921 rtn 
+ 00016272  0x00003925 bpatch  0x000000e5 , 0x0000401c 
+ 00016273  0x00003926 arg  0x00000007 , 0x00000011 
+ 00016274  0x00003927 fetcht  0x00000002 , 0x0000446f 
+ 00016275  0x00003928 call  0x00005a64 
+ 00016276  0x00003929 fetch  0x00000007 , 0x0000469a 
+ 00016277  0x0000392a istore  0x00000007 , 0x00000005 
+ 00016278  0x0000392b rtn 
+ 00016279  0x0000392e bpatch  0x000000e6 , 0x0000401c 
+ 00016280  0x0000392f disable  0x00000028 
+ 00016281  0x00003930 setarg  0x00000000 
+ 00016282  0x00003931 store  0x00000006 , 0x0000469b 
+ 00016283  0x00003932 call  0x00003fb5 
+ 00016284  0x00003933 call  0x00004079 
+ 00016285  0x00003934 call  0x0000407e 
+ 00016286  0x00003935 call  0x00004099 
+ 00016287  0x00003936 nrtn  0x00000028 
+ 00016288  0x00003937 call  0x00003f8d 
+ 00016289  0x00003938 arg  0x00000008 , 0x00000007 
+ 00016290  0x00003939 branch  0x000043ce 
+ 00016291  0x0000393c fetch  0x00000002 , 0x0000469b 
+ 00016292  0x0000393d sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016293  0x0000393e store  0x00000002 , 0x0000469b 
+ 00016294  0x0000393f branch  0x00007fe7 
+ 00016295  0x00003941 fetch  0x00000002 , 0x0000469d 
+ 00016296  0x00003942 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016297  0x00003943 store  0x00000002 , 0x0000469d 
+ 00016298  0x00003944 branch  0x00007fe7 
+ 00016299  0x00003946 fetch  0x00000002 , 0x0000469d 
+ 00016300  0x00003947 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016301  0x00003948 store  0x00000002 , 0x0000469d 
+ 00016302  0x00003949 fetch  0x00000002 , 0x0000469b 
+ 00016303  0x0000394a sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016304  0x0000394b store  0x00000002 , 0x0000469b 
+ 00016305  0x0000394c call  0x00004002 
+ 00016306  0x0000394d branch  0x00007fe7 
+ 00016307  0x0000394f call  0x00004002 
+ 00016308  0x00003950 branch  0x00007fe7 
+ 00016309  0x00003952 fetch  0x00000001 , 0x00004239 
+ 00016310  0x00003953 rtnne  0x00000000 
+ 00016311  0x00003954 fetch  0x00000001 , 0x000046e0 
+ 00016312  0x00003955 beq  0x00000000 , 0x00003fe2 
+ 00016313  0x00003956 beq  0x00000001 , 0x00003fe2 
+ 00016314  0x00003957 beq  0x00000002 , 0x00003fe2 
+ 00016315  0x00003958 beq  0x00000003 , 0x00003fe2 
+ 00016316  0x00003959 beq  0x00000004 , 0x00003fc4 
+ 00016317  0x0000395a beq  0x00000005 , 0x00004010 
+ 00016318  0x0000395b beq  0x00000006 , 0x00003fe2 
+ 00016319  0x0000395c branch  0x00003fe2 
+ 00016320  0x0000395f fetch  0x00000001 , 0x000046a7 
+ 00016321  0x00003960 call  0x0000405d , 0x00000034 
+ 00016322  0x00003961 jam  0x00000001 , 0x000046a7 
+ 00016323  0x00003962 rtn 
+ 00016324  0x00003966 call  0x00003fc0 
+ 00016325  0x00003967 fetcht  0x00000001 , 0x000046f3 
+ 00016326  0x00003968 call  0x0000681d 
+ 00016327  0x00003969 nrtn  0x00000001 
+ 00016328  0x0000396b setarg  0x00000000 
+ 00016329  0x0000396c call  0x00006414 
+ 00016330  0x0000396d bne  0x00000030 , 0x000040d1 
+ 00016331  0x0000396e setarg  0x00000002 
+ 00016332  0x0000396f call  0x00006414 
+ 00016333  0x00003970 rtnbit0  0x00000007 
+ 00016334  0x00003971 call  0x0000405d 
+ 00016335  0x00003972 call  0x00003fde 
+ 00016336  0x00003973 store  0x00000001 , 0x000046a1 
+ 00016337  0x00003974 rshift4  0x0000003f , 0x0000003f 
+ 00016338  0x00003975 call  0x00004169 
+ 00016339  0x00003976 store  0x00000001 , 0x0000469c 
+ 00016340  0x00003977 fetch  0x00000001 , 0x000046a1 
+ 00016341  0x00003978 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016342  0x00003979 call  0x00004169 
+ 00016343  0x0000397a store  0x00000001 , 0x0000469e 
+ 00016344  0x0000397b fetch  0x00000001 , 0x000046f6 
+ 00016345  0x0000397c beq  0x00000000 , 0x00003fa3 
+ 00016346  0x0000397d beq  0x00000001 , 0x00003fab 
+ 00016347  0x0000397e beq  0x00000002 , 0x00003fa7 
+ 00016348  0x0000397f beq  0x00000003 , 0x00003fb3 
+ 00016349  0x00003980 rtn 
+ 00016350  0x00003983 setarg  0x00000012 
+ 00016351  0x00003984 branch  0x00006414 
+ 00016352  0x00003987 beq  0x00000031 , 0x00003fea 
+ 00016353  0x00003988 branch  0x000040d1 
+ 00016354  0x0000398b call  0x00003fc0 
+ 00016355  0x0000398c disable  0x00000028 
+ 00016356  0x0000398d fetcht  0x00000001 , 0x000046f3 
+ 00016357  0x0000398e call  0x0000681d 
+ 00016358  0x0000398f nrtn  0x00000001 
+ 00016359  0x00003991 setarg  0x00000000 
+ 00016360  0x00003992 call  0x00006414 
+ 00016361  0x00003993 bne  0x00000030 , 0x00003fe0 
+ 00016362  0x00003995 setarg  0x00000002 
+ 00016363  0x00003996 call  0x00006414 
+ 00016364  0x00003997 rtnbit0  0x00000007 
+ 00016365  0x00003998 call  0x0000405d 
+ 00016366  0x00003999 fetch  0x00000001 , 0x0000469b 
+ 00016367  0x0000399a call  0x00004165 
+ 00016368  0x0000399b store  0x00000002 , 0x0000469b 
+ 00016369  0x0000399c fetch  0x00000001 , 0x0000469d 
+ 00016370  0x0000399d call  0x00004165 
+ 00016371  0x0000399e store  0x00000002 , 0x0000469d 
+ 00016372  0x0000399f fetch  0x00000001 , 0x000046f6 
+ 00016373  0x000039a0 beq  0x00000000 , 0x00003ffa 
+ 00016374  0x000039a1 beq  0x00000001 , 0x00003ffc 
+ 00016375  0x000039a2 beq  0x00000002 , 0x00003ffe 
+ 00016376  0x000039a3 beq  0x00000003 , 0x00004000 
+ 00016377  0x000039a4 rtn 
+ 00016378  0x000039a7 call  0x00003fa3 
+ 00016379  0x000039a8 branch  0x000040b3 
+ 00016380  0x000039aa call  0x00003fab 
+ 00016381  0x000039ab branch  0x000040b3 
+ 00016382  0x000039ad call  0x00003fa7 
+ 00016383  0x000039ae branch  0x000040b3 
+ 00016384  0x000039b0 call  0x00003fb3 
+ 00016385  0x000039b1 branch  0x000040b3 
+ 00016386  0x000039b4 fetch  0x00000002 , 0x0000469d 
+ 00016387  0x000039b5 fetcht  0x00000002 , 0x0000469b 
+ 00016388  0x000039b6 store  0x00000002 , 0x0000469b 
+ 00016389  0x000039b7 storet  0x00000002 , 0x0000469d 
+ 00016390  0x000039b8 rtn 
+ 00016391  0x000039bb call  0x0000640f 
+ 00016392  0x000039bc nop  0x00000064 
+ 00016393  0x000039bd copy  0x00000012 , 0x0000003f 
+ 00016394  0x000039be call  0x00006414 
+ 00016395  0x000039bf copy  0x0000003f , 0x00000012 
+ 00016396  0x000039c0 call  0x00006411 
+ 00016397  0x000039c1 nop  0x00000064 
+ 00016398  0x000039c2 copy  0x00000012 , 0x0000003f 
+ 00016399  0x000039c3 rtn 
+ 00016400  0x000039c5 disable  0x00000028 
+ 00016401  0x000039c6 fetcht  0x00000001 , 0x000046f3 
+ 00016402  0x000039c7 call  0x0000681d 
+ 00016403  0x000039c8 nrtn  0x00000001 
+ 00016404  0x000039c9 arg  0x00000002 , 0x00000012 
+ 00016405  0x000039ca call  0x00004007 
+ 00016406  0x000039cb rtnbit0  0x00000007 
+ 00016407  0x000039cc arg  0x00000000 , 0x00000012 
+ 00016408  0x000039cd call  0x00004007 
+ 00016409  0x000039ce store  0x00000001 , 0x000046dd 
+ 00016410  0x000039cf bne  0x0000003e , 0x00004145 
+ 00016411  0x000039d0 fetch  0x00000001 , 0x000046a7 
+ 00016412  0x000039d1 call  0x00004039 , 0x00000034 
+ 00016413  0x000039d2 jam  0x00000001 , 0x000046a7 
+ 00016414  0x000039d3 call  0x00004039 
+ 00016415  0x000039d4 fetch  0x00000001 , 0x000046a1 
+ 00016416  0x000039d5 rshift4  0x0000003f , 0x0000003f 
+ 00016417  0x000039d6 call  0x00004169 
+ 00016418  0x000039d7 store  0x00000001 , 0x0000469c 
+ 00016419  0x000039d8 fetch  0x00000001 , 0x000046a1 
+ 00016420  0x000039d9 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016421  0x000039da call  0x00004169 
+ 00016422  0x000039db store  0x00000001 , 0x0000469e 
+ 00016423  0x000039dc fetch  0x00000001 , 0x000046f6 
+ 00016424  0x000039dd beq  0x00000000 , 0x00004031 
+ 00016425  0x000039de beq  0x00000001 , 0x00004035 
+ 00016426  0x000039df beq  0x00000002 , 0x00004033 
+ 00016427  0x000039e0 beq  0x00000003 , 0x00004037 
+ 00016428  0x000039e1 rtn 
+ 00016429  0x000039e4 fetch  0x00000001 , 0x000046a4 
+ 00016430  0x000039e5 beq  0x00000000 , 0x00004051 
+ 00016431  0x000039e6 beq  0x00000001 , 0x00004045 
+ 00016432  0x000039e7 rtn 
+ 00016433  0x000039eb call  0x00003fa3 
+ 00016434  0x000039ec branch  0x0000402d 
+ 00016435  0x000039ef call  0x00003fa7 
+ 00016436  0x000039f0 branch  0x0000402d 
+ 00016437  0x000039f3 call  0x00003fab 
+ 00016438  0x000039f4 branch  0x0000402d 
+ 00016439  0x000039f7 call  0x00003fb3 
+ 00016440  0x000039f8 branch  0x0000402d 
+ 00016441  0x000039fb call  0x0000640f 
+ 00016442  0x000039fc call  0x0000405d 
+ 00016443  0x000039fd arg  0x00000005 , 0x0000003f 
+ 00016444  0x000039fe call  0x00006414 
+ 00016445  0x000039ff store  0x00000001 , 0x000046a1 
+ 00016446  0x00003a00 arg  0x00000007 , 0x0000003f 
+ 00016447  0x00003a01 call  0x00006414 
+ 00016448  0x00003a02 store  0x00000001 , 0x000046a2 
+ 00016449  0x00003a03 arg  0x00000008 , 0x0000003f 
+ 00016450  0x00003a04 call  0x00006414 
+ 00016451  0x00003a05 store  0x00000001 , 0x000046a3 
+ 00016452  0x00003a06 branch  0x00006411 
+ 00016453  0x00003a0a fetch  0x00000001 , 0x000046a2 
+ 00016454  0x00003a0b rtnne  0x00000000 
+ 00016455  0x00003a0c fetch  0x00000001 , 0x000046a3 
+ 00016456  0x00003a0d sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016457  0x00003a0e rtn  0x00000002 
+ 00016458  0x00003a0f jam  0x00000000 , 0x000046a4 
+ 00016459  0x00003a10 setarg  0x0000ba41 
+ 00016460  0x00003a11 call  0x00006405 
+ 00016461  0x00003a12 setarg  0x00000032 
+ 00016462  0x00003a13 call  0x00006405 
+ 00016463  0x00003a14 setarg  0x0000b541 
+ 00016464  0x00003a15 branch  0x00006405 
+ 00016465  0x00003a17 fetch  0x00000001 , 0x000046a2 
+ 00016466  0x00003a18 rtnne  0x00000000 
+ 00016467  0x00003a19 fetch  0x00000001 , 0x000046a3 
+ 00016468  0x00003a1a sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016469  0x00003a1b nrtn  0x00000002 
+ 00016470  0x00003a1c jam  0x00000001 , 0x000046a4 
+ 00016471  0x00003a1d setarg  0x0000ba41 
+ 00016472  0x00003a1e call  0x00006405 
+ 00016473  0x00003a1f setarg  0x00008032 
+ 00016474  0x00003a20 call  0x00006405 
+ 00016475  0x00003a21 setarg  0x0000b541 
+ 00016476  0x00003a22 branch  0x00006405 
+ 00016477  0x00003a27 arg  0x00000003 , 0x0000003f 
+ 00016478  0x00003a28 call  0x00006414 
+ 00016479  0x00003a29 store  0x00000002 , 0x0000469b 
+ 00016480  0x00003a2a arg  0x00000004 , 0x0000003f 
+ 00016481  0x00003a2b call  0x00006414 
+ 00016482  0x00003a2c store  0x00000002 , 0x0000469d 
+ 00016483  0x00003a2d rtn 
+ 00016484  0x00003a30 arg  0x0000001b , 0x00000002 
+ 00016485  0x00003a31 call  0x000067fb 
+ 00016486  0x00003a32 arg  0x0000001b , 0x00000002 
+ 00016487  0x00003a33 call  0x0000681d 
+ 00016488  0x00003a34 rtn  0x00000001 
+ 00016489  0x00003a35 hfetch  0x00000001 , 0x00008109 
+ 00016490  0x00003a36 set1  0x00000004 , 0x0000003f 
+ 00016491  0x00003a37 hstore  0x00000001 , 0x00008109 
+ 00016492  0x00003a38 rtn 
+ 00016493  0x00003a3b fetcht  0x00000001 , 0x000046c0 
+ 00016494  0x00003a3c hfetch  0x00000001 , 0x00008109 
+ 00016495  0x00003a3d iadd  0x00000002 , 0x0000003f 
+ 00016496  0x00003a3e rtn  0x00000034 
+ 00016497  0x00003a3f store  0x00000001 , 0x0000469f 
+ 00016498  0x00003a40 jam  0x00000000 , 0x000046c0 
+ 00016499  0x00003a41 branch  0x00007fe7 
+ 00016500  0x00003a43 fetcht  0x00000001 , 0x000046c0 
+ 00016501  0x00003a44 hfetch  0x00000001 , 0x00008109 
+ 00016502  0x00003a45 iadd  0x00000002 , 0x0000003f 
+ 00016503  0x00003a46 store  0x00000001 , 0x000046c0 
+ 00016504  0x00003a47 rtn 
+ 00016505  0x00003a49 fetch  0x00000001 , 0x000046c0 
+ 00016506  0x00003a4a rtn  0x00000034 
+ 00016507  0x00003a4b store  0x00000001 , 0x0000469f 
+ 00016508  0x00003a4c jam  0x00000000 , 0x000046c0 
+ 00016509  0x00003a4d branch  0x00007fe7 
+ 00016510  0x00003a50 fetch  0x00000001 , 0x000046ba 
+ 00016511  0x00003a51 rtn  0x00000034 
+ 00016512  0x00003a52 store  0x00000001 , 0x000046a0 
+ 00016513  0x00003a53 jam  0x00000000 , 0x000046ba 
+ 00016514  0x00003a54 branch  0x00007fe7 
+ 00016515  0x00003a57 arg  0x00000000 , 0x00000011 
+ 00016516  0x00003a58 fetcht  0x00000001 , 0x000046e2 
+ 00016517  0x00003a59 call  0x0000681d 
+ 00016518  0x00003a5a setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016519  0x00003a5b fetcht  0x00000001 , 0x000046e3 
+ 00016520  0x00003a5c call  0x0000681d 
+ 00016521  0x00003a5d setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016522  0x00003a5e fetcht  0x00000001 , 0x000046e4 
+ 00016523  0x00003a5f call  0x0000681d 
+ 00016524  0x00003a60 setflag  0x00000001 , 0x00000002 , 0x00000011 
+ 00016525  0x00003a61 call  0x00004090 
+ 00016526  0x00003a63 copy  0x00000011 , 0x0000003f 
+ 00016527  0x00003a64 rtn 
+ 00016528  0x00003a66 fetch  0x00000001 , 0x000046e5 
+ 00016529  0x00003a67 rtneq  0x000000ff 
+ 00016530  0x00003a68 fetcht  0x00000001 , 0x000046e5 
+ 00016531  0x00003a69 call  0x0000681d 
+ 00016532  0x00003a6a setflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00016533  0x00003a6b fetcht  0x00000001 , 0x000046e6 
+ 00016534  0x00003a6c call  0x0000681d 
+ 00016535  0x00003a6d setflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00016536  0x00003a6e rtn 
+ 00016537  0x00003a71 call  0x00004083 
+ 00016538  0x00003a72 call  0x000040a8 
+ 00016539  0x00003a73 call  0x000040a3 
+ 00016540  0x00003a74 copy  0x00000011 , 0x0000003f 
+ 00016541  0x00003a75 fetcht  0x00000001 , 0x0000469a 
+ 00016542  0x00003a76 store  0x00000001 , 0x0000469a 
+ 00016543  0x00003a77 ixor  0x00000002 , 0x0000003f 
+ 00016544  0x00003a78 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00016545  0x00003a79 rtn  0x00000005 
+ 00016546  0x00003a7a branch  0x00007fe7 
+ 00016547  0x00003a7d rtnmark0  0x00000026 
+ 00016548  0x00003a7e copy  0x00000011 , 0x0000003f 
+ 00016549  0x00003a7f rtn  0x00000034 
+ 00016550  0x00003a80 store  0x00000001 , 0x0000469a 
+ 00016551  0x00003a81 branch  0x00007fe7 
+ 00016552  0x00003a85 fetch  0x00000002 , 0x00004682 
+ 00016553  0x00003a86 bbit1  0x00000009 , 0x000040ad 
+ 00016554  0x00003a87 fetch  0x00000002 , 0x00004682 
+ 00016555  0x00003a88 bbit1  0x00000000 , 0x000040b0 
+ 00016556  0x00003a89 rtn 
+ 00016557  0x00003a8b copy  0x00000011 , 0x0000003f 
+ 00016558  0x00003a8c nbranch  0x00005820 , 0x00000034 
+ 00016559  0x00003a8d branch  0x00005822 
+ 00016560  0x00003a8f copy  0x00000011 , 0x0000003f 
+ 00016561  0x00003a90 nbranch  0x00002bc7 , 0x00000034 
+ 00016562  0x00003a91 branch  0x00002bc9 
+ 00016563  0x00003a95 bpatch  0x000000e7 , 0x0000401c 
+ 00016564  0x00003a96 arg  0x0000001a , 0x00000002 
+ 00016565  0x00003a97 fetch  0x00000004 , 0x000046d3 
+ 00016566  0x00003a98 isolate1  0x00000012 , 0x0000003f 
+ 00016567  0x00003a99 call  0x000040be , 0x00000001 
+ 00016568  0x00003a9a call  0x0000681d 
+ 00016569  0x00003a9b rtn  0x00000001 
+ 00016570  0x00003a9c setarg  0x0000000a 
+ 00016571  0x00003a9d call  0x00006414 
+ 00016572  0x00003a9e nop  0x000003e8 
+ 00016573  0x00003a9f branch  0x000040b3 
+ 00016574  0x00003aa1 arg  0x0000001f , 0x00000002 
+ 00016575  0x00003aa2 rtn 
+ 00016576  0x00003aa5 fetch  0x00000004 , 0x000046d3 
+ 00016577  0x00003aa6 bbit1  0x00000012 , 0x000040c4 
+ 00016578  0x00003aa8 arg  0x0000001a , 0x00000002 
+ 00016579  0x00003aa9 branch  0x000067fe 
+ 00016580  0x00003aab arg  0x0000001f , 0x00000002 
+ 00016581  0x00003aac branch  0x000067fe 
+ 00016582  0x00003ab0 call  0x00003d36 
+ 00016583  0x00003ab1 rtn  0x0000002b 
+ 00016584  0x00003ab2 call  0x000040c0 
+ 00016585  0x00003ab3 fetch  0x00000001 , 0x000046e0 
+ 00016586  0x00003ab4 beq  0x00000005 , 0x000040d5 
+ 00016587  0x00003ab6 call  0x000040d9 
+ 00016588  0x00003ab7 beq  0x00000030 , 0x000040e0 
+ 00016589  0x00003ab8 beq  0x00000031 , 0x000040ea 
+ 00016590  0x00003ab9 call  0x000040d1 
+ 00016591  0x00003aba nop  0x000003e8 
+ 00016592  0x00003abb branch  0x000040cb 
+ 00016593  0x00003abd bpatch  0x000000e8 , 0x0000401d 
+ 00016594  0x00003abe fetch  0x00000004 , 0x000046d3 
+ 00016595  0x00003abf bbit1  0x00000012 , 0x000063e0 
+ 00016596  0x00003ac0 branch  0x000063d1 
+ 00016597  0x00003ac3 call  0x000040d9 
+ 00016598  0x00003ac4 beq  0x0000003e , 0x0000414b 
+ 00016599  0x00003ac5 call  0x00004145 
+ 00016600  0x00003ac6 branch  0x000040d5 
+ 00016601  0x00003ac9 setarg  0x00000001 
+ 00016602  0x00003aca call  0x00006414 
+ 00016603  0x00003acb store  0x00000001 , 0x000046de 
+ 00016604  0x00003acc setarg  0x00000000 
+ 00016605  0x00003acd call  0x00006414 
+ 00016606  0x00003ace store  0x00000001 , 0x000046dd 
+ 00016607  0x00003acf rtn 
+ 00016608  0x00003ad1 fetch  0x00000001 , 0x000046de 
+ 00016609  0x00003ad2 beq  0x000000d1 , 0x00004139 
+ 00016610  0x00003ad3 beq  0x000000d2 , 0x000040f8 
+ 00016611  0x00003ad4 beq  0x00000002 , 0x000040ee 
+ 00016612  0x00003ad5 beq  0x00000054 , 0x000040e6 
+ 00016613  0x00003ad6 rtn 
+ 00016614  0x00003ad8 jam  0x00000002 , 0x000046e0 
+ 00016615  0x00003ad9 rtn 
+ 00016616  0x00003adb jam  0x00000006 , 0x000046e0 
+ 00016617  0x00003adc rtn 
+ 00016618  0x00003ade fetch  0x00000001 , 0x000046de 
+ 00016619  0x00003adf beq  0x00000070 , 0x000040e8 
+ 00016620  0x00003ae0 jam  0x00000001 , 0x000046e0 
+ 00016621  0x00003ae1 rtn 
+ 00016622  0x00003ae3 jam  0x00000004 , 0x000046e0 
+ 00016623  0x00003ae4 call  0x000040f6 
+ 00016624  0x00003ae5 setarg  0x00003426 
+ 00016625  0x00003ae6 call  0x00006413 
+ 00016626  0x00003ae7 setarg  0x00000419 
+ 00016627  0x00003ae8 call  0x00006413 
+ 00016628  0x00003aea setarg  0x00000009 
+ 00016629  0x00003aeb branch  0x00006413 
+ 00016630  0x00003aed setarg  0x00005a09 
+ 00016631  0x00003aee branch  0x00006413 
+ 00016632  0x00003af1 jam  0x00000003 , 0x000046e0 
+ 00016633  0x00003af2 call  0x000040f6 
+ 00016634  0x00003af3 setarg  0x00000f0d 
+ 00016635  0x00003af4 call  0x00006413 
+ 00016636  0x00003af5 setarg  0x0000e31d 
+ 00016637  0x00003af6 call  0x00006413 
+ 00016638  0x00003af7 setarg  0x0000d27d 
+ 00016639  0x00003af8 call  0x00006413 
+ 00016640  0x00003af9 call  0x00004102 
+ 00016641  0x00003afa branch  0x0000411a 
+ 00016642  0x00003afd setarg  0x0000351b 
+ 00016643  0x00003afe call  0x00006413 
+ 00016644  0x00003aff setarg  0x0000b428 
+ 00016645  0x00003b00 call  0x00006413 
+ 00016646  0x00003b01 setarg  0x00004629 
+ 00016647  0x00003b02 call  0x00006413 
+ 00016648  0x00003b03 setarg  0x0000962a 
+ 00016649  0x00003b04 call  0x00006413 
+ 00016650  0x00003b05 setarg  0x00008c2b 
+ 00016651  0x00003b06 call  0x00006413 
+ 00016652  0x00003b07 setarg  0x00006e2c 
+ 00016653  0x00003b08 call  0x00006413 
+ 00016654  0x00003b09 setarg  0x0000642d 
+ 00016655  0x00003b0a call  0x00006413 
+ 00016656  0x00003b0b setarg  0x00005f38 
+ 00016657  0x00003b0c call  0x00006413 
+ 00016658  0x00003b0d setarg  0x00000f39 
+ 00016659  0x00003b0e call  0x00006413 
+ 00016660  0x00003b0f setarg  0x0000323a 
+ 00016661  0x00003b10 call  0x00006413 
+ 00016662  0x00003b11 setarg  0x0000473b 
+ 00016663  0x00003b12 call  0x00006413 
+ 00016664  0x00003b13 setarg  0x00001042 
+ 00016665  0x00003b14 branch  0x00006413 
+ 00016666  0x00003b16 setarg  0x00002e54 
+ 00016667  0x00003b17 call  0x00006413 
+ 00016668  0x00003b18 setarg  0x0000f255 
+ 00016669  0x00003b19 call  0x00006413 
+ 00016670  0x00003b1a setarg  0x0000f461 
+ 00016671  0x00003b1b call  0x00006413 
+ 00016672  0x00003b1c setarg  0x00007063 
+ 00016673  0x00003b1d call  0x00006413 
+ 00016674  0x00003b1e setarg  0x00005275 
+ 00016675  0x00003b1f call  0x00006413 
+ 00016676  0x00003b20 setarg  0x00004176 
+ 00016677  0x00003b21 call  0x00006413 
+ 00016678  0x00003b22 setarg  0x0000ed77 
+ 00016679  0x00003b23 call  0x00006413 
+ 00016680  0x00003b24 setarg  0x00002378 
+ 00016681  0x00003b25 call  0x00006413 
+ 00016682  0x00003b26 setarg  0x00004679 
+ 00016683  0x00003b27 call  0x00006413 
+ 00016684  0x00003b28 setarg  0x0000e57a 
+ 00016685  0x00003b29 call  0x00006413 
+ 00016686  0x00003b2a setarg  0x0000487c 
+ 00016687  0x00003b2b call  0x00006413 
+ 00016688  0x00003b2c setarg  0x0000777e 
+ 00016689  0x00003b2d call  0x00006413 
+ 00016690  0x00003b2e setarg  0x0000017f 
+ 00016691  0x00003b2f call  0x00006413 
+ 00016692  0x00003b30 setarg  0x0000000b 
+ 00016693  0x00003b31 call  0x00006413 
+ 00016694  0x00003b32 setarg  0x0000007f 
+ 00016695  0x00003b33 call  0x00006413 
+ 00016696  0x00003b34 branch  0x000040f4 
+ 00016697  0x00003b38 jam  0x00000000 , 0x000046e0 
+ 00016698  0x00003b39 call  0x000040f6 
+ 00016699  0x00003b3a setarg  0x0000100d 
+ 00016700  0x00003b3b call  0x00006413 
+ 00016701  0x00003b3c setarg  0x0000ed1d 
+ 00016702  0x00003b3d call  0x00006413 
+ 00016703  0x00003b3e setarg  0x0000807d 
+ 00016704  0x00003b3f call  0x00006413 
+ 00016705  0x00003b40 call  0x00004102 
+ 00016706  0x00003b41 setarg  0x00000943 
+ 00016707  0x00003b42 call  0x00006413 
+ 00016708  0x00003b43 branch  0x0000411a 
+ 00016709  0x00003b47 fetcht  0x00000001 , 0x000046dc 
+ 00016710  0x00003b48 call  0x00006829 
+ 00016711  0x00003b49 call  0x00007ec1 
+ 00016712  0x00003b4a fetcht  0x00000001 , 0x000046dc 
+ 00016713  0x00003b4b call  0x00006825 
+ 00016714  0x00003b4c branch  0x00007ec1 
+ 00016715  0x00003b4f jam  0x00000005 , 0x000046e0 
+ 00016716  0x00003b50 setarg  0x0000ba41 
+ 00016717  0x00003b51 call  0x00006405 
+ 00016718  0x00003b52 setarg  0x00000d11 
+ 00016719  0x00003b53 call  0x00006405 
+ 00016720  0x00003b54 setarg  0x0000041b 
+ 00016721  0x00003b55 call  0x00006405 
+ 00016722  0x00003b56 setarg  0x0000041c 
+ 00016723  0x00003b57 call  0x00006405 
+ 00016724  0x00003b58 setarg  0x00000f1d 
+ 00016725  0x00003b59 call  0x00006405 
+ 00016726  0x00003b5a setarg  0x00000032 
+ 00016727  0x00003b5b call  0x00006405 
+ 00016728  0x00003b5c setarg  0x0000b541 
+ 00016729  0x00003b5d branch  0x00006405 
+ 00016730  0x00003b62 setarg  0x0000ba41 
+ 00016731  0x00003b63 call  0x00006405 
+ 00016732  0x00003b64 nop  0x00000fa0 
+ 00016733  0x00003b65 setarg  0x0000ff7f 
+ 00016734  0x00003b66 call  0x00006405 
+ 00016735  0x00003b67 copy  0x00000011 , 0x0000003f 
+ 00016736  0x00003b68 call  0x00006405 
+ 00016737  0x00003b69 setarg  0x0000007f 
+ 00016738  0x00003b6a call  0x00006405 
+ 00016739  0x00003b6b setarg  0x0000b541 
+ 00016740  0x00003b6c branch  0x00006405 
+ 00016741  0x00003b6f rtnbit0  0x00000007 
+ 00016742  0x00003b70 arg  0x0000ff00 , 0x00000002 
+ 00016743  0x00003b71 ior  0x00000002 , 0x0000003f 
+ 00016744  0x00003b72 rtn 
+ 00016745  0x00003b75 rtnbit0  0x00000003 
+ 00016746  0x00003b76 arg  0x000000f0 , 0x00000002 
+ 00016747  0x00003b77 ior  0x00000002 , 0x0000003f 
+ 00016748  0x00003b78 rtn 
+ 00016749  0x00003b7c call  0x00005892 
+ 00016750  0x00003b7d nrtn  0x00000034 
+ 00016751  0x00003b7e fetch  0x00000001 , 0x000046c5 
+ 00016752  0x00003b7f and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00016753  0x00003b80 rtnne  0x00000003 
+ 00016754  0x00003b81 fetch  0x00000004 , 0x000046d3 
+ 00016755  0x00003b82 bbit1  0x00000003 , 0x00004179 
+ 00016756  0x00003b83 bbit1  0x00000000 , 0x00004179 
+ 00016757  0x00003b84 bbit1  0x00000005 , 0x00004179 
+ 00016758  0x00003b85 call  0x00003f97 
+ 00016759  0x00003b86 nrtn  0x00000028 
+ 00016760  0x00003b87 branch  0x00003f90 
+ 00016761  0x00003b8a setarg  0x00000000 
+ 00016762  0x00003b8b store  0x00000007 , 0x0000469a 
+ 00016763  0x00003b8c branch  0x00003f90 
+ 00016764  0x00003b8f copy  0x00000013 , 0x0000003f 
+ 00016765  0x00003b90 beq  0x00000014 , 0x000041c3 
+ 00016766  0x00003b91 beq  0x00000001 , 0x000042ca 
+ 00016767  0x00003b92 beq  0x00000015 , 0x000041d9 
+ 00016768  0x00003b93 beq  0x00000002 , 0x000041d9 
+ 00016769  0x00003b94 beq  0x00000005 , 0x000041d6 
+ 00016770  0x00003b95 beq  0x00000010 , 0x0000426c 
+ 00016771  0x00003b96 beq  0x00000012 , 0x0000429b 
+ 00016772  0x00003b97 beq  0x00000006 , 0x000041d5 
+ 00016773  0x00003b98 beq  0x00000004 , 0x000041cc 
+ 00016774  0x00003b99 beq  0x00000013 , 0x000041cc 
+ 00016775  0x00003b9a beq  0x0000000a , 0x000041ca 
+ 00016776  0x00003b9b beq  0x0000002e , 0x000033cd 
+ 00016777  0x00003b9c beq  0x00000031 , 0x000041b4 
+ 00016778  0x00003b9d beq  0x00000032 , 0x000041b6 
+ 00016779  0x00003b9e beq  0x0000003e , 0x00004191 
+ 00016780  0x00003b9f beq  0x00000027 , 0x0000438e 
+ 00016781  0x00003ba0 beq  0x00000039 , 0x0000419c 
+ 00016782  0x00003ba1 beq  0x0000003a , 0x00004192 
+ 00016783  0x00003ba2 beq  0x0000003c , 0x0000419a 
+ 00016784  0x00003ba3 rtn 
+ 00016785  0x00003ba7 branch  0x00003410 
+ 00016786  0x00003baa jam  0x00000001 , 0x0000478b 
+ 00016787  0x00003bab fetch  0x00000001 , 0x0000471e 
+ 00016788  0x00003bac nbranch  0x00004492 , 0x00000034 
+ 00016789  0x00003bad fetch  0x00000001 , 0x00004720 
+ 00016790  0x00003bae fetcht  0x00000001 , 0x00004703 
+ 00016791  0x00003baf isub  0x00000002 , 0x0000003e 
+ 00016792  0x00003bb0 branch  0x0000340a , 0x00000005 
+ 00016793  0x00003bb1 rtn 
+ 00016794  0x00003bb3 jam  0x00000001 , 0x0000478b 
+ 00016795  0x00003bb4 rtn 
+ 00016796  0x00003bb6 jam  0x00000001 , 0x0000478b 
+ 00016797  0x00003bb7 arg  0x00000003 , 0x00000007 
+ 00016798  0x00003bb8 call  0x000043d2 
+ 00016799  0x00003bb9 setarg  0x00000000 
+ 00016800  0x00003bba store  0x00000002 , 0x00004707 
+ 00016801  0x00003bbb jam  0x00000000 , 0x000046a7 
+ 00016802  0x00003bbd fetch  0x00000001 , 0x000046e0 
+ 00016803  0x00003bbe sub  0x0000003f , 0x00000005 , 0x0000003e 
+ 00016804  0x00003bbf call  0x00004039 , 0x00000005 
+ 00016805  0x00003bc0 ncall  0x0000405d , 0x00000005 
+ 00016806  0x00003bc2 fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00016807  0x00003bc3 bbit1  0x00000013 , 0x000041af 
+ 00016808  0x00003bc4 call  0x000041aa 
+ 00016809  0x00003bc5 branch  0x000065d1 
+ 00016810  0x00003bc8 call  0x00002c7a 
+ 00016811  0x00003bc9 add  0x00000013 , 0x000000ae , 0x00000011 
+ 00016812  0x00003bca arg  0x0000005b , 0x00000012 
+ 00016813  0x00003bcb arg  0x00000004 , 0x00000002 
+ 00016814  0x00003bcc rtn 
+ 00016815  0x00003bcf call  0x00002c7a 
+ 00016816  0x00003bd0 add  0x00000013 , 0x000000ae , 0x00000012 
+ 00016817  0x00003bd1 ifetch  0x00000001 , 0x00000012 
+ 00016818  0x00003bd2 store  0x00000001 , 0x0000477b 
+ 00016819  0x00003bd3 branch  0x00004435 
+ 00016820  0x00003bd7 arg  0x00000002 , 0x00000007 
+ 00016821  0x00003bd8 branch  0x000041b9 
+ 00016822  0x00003bda jam  0x00000002 , 0x000046c6 
+ 00016823  0x00003bdb arg  0x00000001 , 0x00000007 
+ 00016824  0x00003bdc branch  0x000041b9 
+ 00016825  0x00003be0 fetch  0x00000001 , 0x000046c5 
+ 00016826  0x00003be1 qset1  0x0000003f 
+ 00016827  0x00003be2 store  0x00000001 , 0x000046c5 
+ 00016828  0x00003be3 rtn 
+ 00016829  0x00003be6 fetch  0x00000001 , 0x000046c5 
+ 00016830  0x00003be7 qset0  0x0000003f 
+ 00016831  0x00003be8 store  0x00000001 , 0x000046c5 
+ 00016832  0x00003be9 rtn 
+ 00016833  0x00003beb jam  0x00000000 , 0x000046c5 
+ 00016834  0x00003bec rtn 
+ 00016835  0x00003bef fetch  0x00000002 , 0x0000420a 
+ 00016836  0x00003bf0 set0  0x00000000 , 0x0000003f 
+ 00016837  0x00003bf1 store  0x00000002 , 0x0000420a 
+ 00016838  0x00003bf2 setarg  0x00000000 
+ 00016839  0x00003bf3 store  0x00000002 , 0x000046ae 
+ 00016840  0x00003bf4 call  0x00003f8d 
+ 00016841  0x00003bf5 branch  0x000042ca 
+ 00016842  0x00003bf8 call  0x000063cb 
+ 00016843  0x00003bf9 branch  0x000033dd 
+ 00016844  0x00003bfc fetch  0x00000001 , 0x0000471e 
+ 00016845  0x00003bfd nbranch  0x00004492 , 0x00000034 
+ 00016846  0x00003bfe fetch  0x00000002 , 0x00004682 
+ 00016847  0x00003bff bbit1  0x0000000c , 0x000042b0 
+ 00016848  0x00003c00 fetch  0x00000004 , 0x000046d3 
+ 00016849  0x00003c01 bbit1  0x00000000 , 0x000041d7 
+ 00016850  0x00003c02 bbit1  0x00000005 , 0x000042b0 
+ 00016851  0x00003c03 bbit1  0x00000003 , 0x00002ead 
+ 00016852  0x00003c04 branch  0x000033a7 
+ 00016853  0x00003c08 branch  0x00003f74 
+ 00016854  0x00003c0b rtn 
+ 00016855  0x00003c0e call  0x000043c0 
+ 00016856  0x00003c0f branch  0x0000659a 
+ 00016857  0x00003c12 bpatch  0x000000e9 , 0x0000401d 
+ 00016858  0x00003c13 call  0x000041e7 
+ 00016859  0x00003c14 fetch  0x00000004 , 0x000046d3 
+ 00016860  0x00003c15 bbit1  0x00000000 , 0x000041d7 
+ 00016861  0x00003c16 bbit1  0x00000003 , 0x00002ead 
+ 00016862  0x00003c17 fetch  0x00000001 , 0x0000471e 
+ 00016863  0x00003c18 nbranch  0x00004492 , 0x00000034 
+ 00016864  0x00003c19 fetch  0x00000002 , 0x00004208 
+ 00016865  0x00003c1a bbit1  0x00000007 , 0x000041f5 
+ 00016866  0x00003c1b bbit1  0x00000000 , 0x000033a9 
+ 00016867  0x00003c1c bbit1  0x00000001 , 0x000041ef 
+ 00016868  0x00003c1d bbit1  0x00000002 , 0x000041f2 
+ 00016869  0x00003c1e bbit1  0x00000003 , 0x000041f2 
+ 00016870  0x00003c1f branch  0x000042b0 
+ 00016871  0x00003c21 setarg  0x00000000 
+ 00016872  0x00003c22 store  0x00000008 , 0x000046b7 
+ 00016873  0x00003c23 istore  0x00000004 , 0x00000005 
+ 00016874  0x00003c24 jam  0x00000000 , 0x000046b4 
+ 00016875  0x00003c25 jam  0x00000000 , 0x000046a7 
+ 00016876  0x00003c26 jam  0x00000000 , 0x000041e2 
+ 00016877  0x00003c27 jam  0x00000000 , 0x00004429 
+ 00016878  0x00003c28 rtn 
+ 00016879  0x00003c2b bbit1  0x00000005 , 0x000041f2 
+ 00016880  0x00003c2c bbit1  0x00000003 , 0x000041f2 
+ 00016881  0x00003c2d branch  0x000042b0 
+ 00016882  0x00003c2f fetch  0x00000002 , 0x00004682 
+ 00016883  0x00003c30 bbit1  0x0000000c , 0x000042b0 
+ 00016884  0x00003c31 branch  0x000033a7 
+ 00016885  0x00003c34 call  0x000041c1 
+ 00016886  0x00003c35 fetch  0x00000002 , 0x00004208 
+ 00016887  0x00003c36 bbit1  0x00000000 , 0x000033a9 
+ 00016888  0x00003c37 branch  0x000033a7 
+ 00016889  0x00003c3a call  0x000043d6 
+ 00016890  0x00003c3b call  0x00004243 
+ 00016891  0x00003c3c call  0x00004246 
+ 00016892  0x00003c3d call  0x00004250 
+ 00016893  0x00003c3e call  0x0000445d 
+ 00016894  0x00003c40 call  0x00004443 
+ 00016895  0x00003c41 call  0x00004333 
+ 00016896  0x00003c42 call  0x000043a5 
+ 00016897  0x00003c43 call  0x000043eb 
+ 00016898  0x00003c44 call  0x00004209 
+ 00016899  0x00003c45 call  0x00004231 
+ 00016900  0x00003c46 call  0x00004234 
+ 00016901  0x00003c47 call  0x00004237 
+ 00016902  0x00003c48 call  0x0000423a 
+ 00016903  0x00003c49 call  0x0000423d 
+ 00016904  0x00003c4a branch  0x00004240 
+ 00016905  0x00003c4f fetch  0x00000001 , 0x00004711 
+ 00016906  0x00003c50 rtn  0x00000034 
+ 00016907  0x00003c51 increase  0xffffffff , 0x0000003f 
+ 00016908  0x00003c52 store  0x00000001 , 0x00004711 
+ 00016909  0x00003c53 nrtn  0x00000034 
+ 00016910  0x00003c54 branch  0x0000420f 
+ 00016911  0x00003c56 fetch  0x00000001 , 0x00004712 
+ 00016912  0x00003c57 rtneq  0x00000000 
+ 00016913  0x00003c58 beq  0x00000005 , 0x00004216 
+ 00016914  0x00003c5a call  0x00004225 
+ 00016915  0x00003c5b jam  0x00000005 , 0x00004712 
+ 00016916  0x00003c5c jam  0x00000005 , 0x00004711 
+ 00016917  0x00003c5d rtn 
+ 00016918  0x00003c5f call  0x0000422c 
+ 00016919  0x00003c60 jam  0x00000004 , 0x00004712 
+ 00016920  0x00003c61 jam  0x00000005 , 0x00004711 
+ 00016921  0x00003c62 rtn 
+ 00016922  0x00003c66 setarg  0x00008006 
+ 00016923  0x00003c67 call  0x00006413 
+ 00016924  0x00003c68 nop  0x000003e8 
+ 00016925  0x00003c69 jam  0x00000000 , 0x00004711 
+ 00016926  0x00003c6a jam  0x00000000 , 0x00004712 
+ 00016927  0x00003c6b branch  0x000040e0 
+ 00016928  0x00003c6e setarg  0x0000a006 
+ 00016929  0x00003c6f call  0x00006413 
+ 00016930  0x00003c70 setarg  0x0000a005 
+ 00016931  0x00003c71 branch  0x00006413 
+ 00016932  0x00003c73 jam  0x00000000 , 0x00004711 
+ 00016933  0x00003c75 fetch  0x00000001 , 0x000046e0 
+ 00016934  0x00003c76 beq  0x00000004 , 0x00004220 
+ 00016935  0x00003c77 setarg  0x00000106 
+ 00016936  0x00003c78 call  0x00006413 
+ 00016937  0x00003c79 setarg  0x0000a105 
+ 00016938  0x00003c7a branch  0x00006413 
+ 00016939  0x00003c7d jam  0x00000000 , 0x00004711 
+ 00016940  0x00003c7f setarg  0x00000906 
+ 00016941  0x00003c80 branch  0x00006413 
+ 00016942  0x00003c82 jam  0x00000005 , 0x00004711 
+ 00016943  0x00003c83 jam  0x00000001 , 0x00004712 
+ 00016944  0x00003c84 rtn 
+ 00016945  0x00003c87 arg  0x00004680 , 0x00000013 
+ 00016946  0x00003c88 arg  0x0000429b , 0x00000012 
+ 00016947  0x00003c89 branch  0x0000336d 
+ 00016948  0x00003c8c arg  0x000046ac , 0x00000013 
+ 00016949  0x00003c8d arg  0x00004264 , 0x00000012 
+ 00016950  0x00003c8e branch  0x00003374 
+ 00016951  0x00003c91 arg  0x000046ae , 0x00000013 
+ 00016952  0x00003c92 arg  0x00004266 , 0x00000012 
+ 00016953  0x00003c93 branch  0x00003374 
+ 00016954  0x00003c96 arg  0x000046b0 , 0x00000013 
+ 00016955  0x00003c97 arg  0x0000426a , 0x00000012 
+ 00016956  0x00003c98 branch  0x00003374 
+ 00016957  0x00003c9b arg  0x000046c4 , 0x00000013 
+ 00016958  0x00003c9c arg  0x00004478 , 0x00000012 
+ 00016959  0x00003c9d branch  0x0000336d 
+ 00016960  0x00003ca2 arg  0x000046c6 , 0x00000013 
+ 00016961  0x00003ca3 arg  0x0000425e , 0x00000012 
+ 00016962  0x00003ca4 branch  0x0000336d 
+ 00016963  0x00003ca7 arg  0x00004704 , 0x00000013 
+ 00016964  0x00003ca8 arg  0x00004249 , 0x00000012 
+ 00016965  0x00003ca9 branch  0x0000336d 
+ 00016966  0x00003cac arg  0x00004707 , 0x00000013 
+ 00016967  0x00003cad arg  0x00004249 , 0x00000012 
+ 00016968  0x00003cae branch  0x00003374 
+ 00016969  0x00003cb1 rtn 
+ 00016970  0x00003cb5 fetch  0x00000004 , 0x000046d3 
+ 00016971  0x00003cb6 rtnbit0  0x00000017 
+ 00016972  0x00003cb7 jam  0x0000000a , 0x000046df 
+ 00016973  0x00003cb8 fetch  0x00000001 , 0x000046f4 
+ 00016974  0x00003cb9 store  0x00000001 , 0x00004715 
+ 00016975  0x00003cba rtn 
+ 00016976  0x00003cbe arg  0x000046df , 0x00000013 
+ 00016977  0x00003cbf arg  0x00004253 , 0x00000012 
+ 00016978  0x00003cc0 branch  0x0000336d 
+ 00016979  0x00003cc2 fetch  0x00000001 , 0x000046f4 
+ 00016980  0x00003cc3 store  0x00000001 , 0x00004715 
+ 00016981  0x00003cc4 setarg  0x00000190 
+ 00016982  0x00003cc5 store  0x00000002 , 0x00004716 
+ 00016983  0x00003cc6 store  0x00000002 , 0x00004718 
+ 00016984  0x00003cc7 arg  0x00000000 , 0x00000011 
+ 00016985  0x00003cc8 fetcht  0x00000001 , 0x0000477a 
+ 00016986  0x00003cc9 increase  0x00000001 , 0x00000002 
+ 00016987  0x00003cca storet  0x00000001 , 0x00004714 
+ 00016988  0x00003ccb jam  0x00000001 , 0x00004713 
+ 00016989  0x00003ccc rtn 
+ 00016990  0x00003ccf fetch  0x00000001 , 0x000046c5 
+ 00016991  0x00003cd0 rtnbit1  0x00000002 
+ 00016992  0x00003cd1 jam  0x00000012 , 0x00000a99 
+ 00016993  0x00003cd2 call  0x00007d8f 
+ 00016994  0x00003cd3 arg  0x00000000 , 0x00000007 
+ 00016995  0x00003cd4 branch  0x000041b9 
+ 00016996  0x00003cd8 call  0x000042ca 
+ 00016997  0x00003cd9 branch  0x0000340a 
+ 00016998  0x00003cdc call  0x000033f6 
+ 00016999  0x00003cdd fetch  0x00000001 , 0x0000471e 
+ 00017000  0x00003cde nbranch  0x00004492 , 0x00000034 
+ 00017001  0x00003cdf branch  0x0000340a 
+ 00017002  0x00003ce2 bmark1  0x00000026 , 0x00007e1d 
+ 00017003  0x00003ce3 branch  0x00004386 
+ 00017004  0x00003ce8 bpatch  0x000000ea , 0x0000401d 
+ 00017005  0x00003ce9 jam  0x00000000 , 0x000046b4 
+ 00017006  0x00003cea call  0x00004386 
+ 00017007  0x00003ceb call  0x000041c1 
+ 00017008  0x00003cec branch  0x000042b0 
+ 00017009  0x00003cf1 fetch  0x00000006 , 0x000041d0 
+ 00017010  0x00003cf2 branch  0x000033eb , 0x00000034 
+ 00017011  0x00003cf3 call  0x0000427e 
+ 00017012  0x00003cf4 jam  0x00000017 , 0x0000016d 
+ 00017013  0x00003cf5 fetch  0x00000001 , 0x0000465a 
+ 00017014  0x00003cf6 nbranch  0x000033e1 , 0x00000034 
+ 00017015  0x00003cf7 jam  0x00000004 , 0x0000016d 
+ 00017016  0x00003cf8 branch  0x000033e1 
+ 00017017  0x00003cfb fetch  0x00000002 , 0x000046a8 
+ 00017018  0x00003cfc store  0x00000002 , 0x000046ae 
+ 00017019  0x00003cfd call  0x0000427e 
+ 00017020  0x00003cfe call  0x00003418 
+ 00017021  0x00003cff branch  0x00007df4 
+ 00017022  0x00003d02 setarg  0x000000c8 
+ 00017023  0x00003d03 store  0x00000002 , 0x00004716 
+ 00017024  0x00003d04 store  0x00000002 , 0x00004718 
+ 00017025  0x00003d05 branch  0x00004285 
+ 00017026  0x00003d08 setarg  0x000003e8 
+ 00017027  0x00003d09 store  0x00000002 , 0x00004716 
+ 00017028  0x00003d0a store  0x00000002 , 0x00004718 
+ 00017029  0x00003d0c fetch  0x00000001 , 0x00004720 
+ 00017030  0x00003d0d beq  0x00000001 , 0x0000428a 
+ 00017031  0x00003d0e beq  0x00000002 , 0x0000428c 
+ 00017032  0x00003d0f beq  0x00000003 , 0x0000428e 
+ 00017033  0x00003d10 rtn 
+ 00017034  0x00003d12 fetch  0x00000001 , 0x000046f0 
+ 00017035  0x00003d13 branch  0x0000428f 
+ 00017036  0x00003d15 fetch  0x00000001 , 0x000046f1 
+ 00017037  0x00003d16 branch  0x0000428f 
+ 00017038  0x00003d18 fetch  0x00000001 , 0x000046f2 
+ 00017039  0x00003d1a store  0x00000001 , 0x00000aa2 
+ 00017040  0x00003d1b call  0x00004482 
+ 00017041  0x00003d1c fetch  0x00000001 , 0x00000aa2 
+ 00017042  0x00003d1d store  0x00000001 , 0x00004715 
+ 00017043  0x00003d1e arg  0x00000000 , 0x00000011 
+ 00017044  0x00003d1f jam  0x00000001 , 0x00004713 
+ 00017045  0x00003d20 branch  0x00007d1e 
+ 00017046  0x00003d23 arg  0x00000000 , 0x00000011 
+ 00017047  0x00003d24 branch  0x00007d19 
+ 00017048  0x00003d26 arg  0x00000000 , 0x00000011 
+ 00017049  0x00003d27 branch  0x00007d14 
+ 00017050  0x00003d2a branch  0x000041c1 
+ 00017051  0x00003d2d jam  0x00000001 , 0x000041e2 
+ 00017052  0x00003d2e call  0x00003416 
+ 00017053  0x00003d2f call  0x00003412 
+ 00017054  0x00003d30 setarg  0x00000000 
+ 00017055  0x00003d31 store  0x00000002 , 0x0000467e 
+ 00017056  0x00003d32 store  0x00000001 , 0x00004680 
+ 00017057  0x00003d33 branch  0x0000340e 
+ 00017058  0x00003d36 call  0x0000435f 
+ 00017059  0x00003d37 fetch  0x00000001 , 0x00004720 
+ 00017060  0x00003d38 fetcht  0x00000001 , 0x00004703 
+ 00017061  0x00003d39 isub  0x00000002 , 0x0000003e 
+ 00017062  0x00003d3a branch  0x000042ab , 0x00000005 
+ 00017063  0x00003d3b fetch  0x00000001 , 0x00004210 
+ 00017064  0x00003d3c beq  0x00000033 , 0x00004271 
+ 00017065  0x00003d3d beq  0x00000034 , 0x00004279 
+ 00017066  0x00003d3e branch  0x000042b0 
+ 00017067  0x00003d40 call  0x00003d57 
+ 00017068  0x00003d41 rtnmark1  0x00000026 
+ 00017069  0x00003d42 fetch  0x00000001 , 0x0000471e 
+ 00017070  0x00003d43 nbranch  0x00004492 , 0x00000034 
+ 00017071  0x00003d44 rtn 
+ 00017072  0x00003d47 bpatch  0x000000eb , 0x0000401d 
+ 00017073  0x00003d48 fetch  0x00000002 , 0x00004682 
+ 00017074  0x00003d49 bbit1  0x0000000b , 0x000042b7 
+ 00017075  0x00003d4a fetch  0x00000004 , 0x000046d3 
+ 00017076  0x00003d4b bbit0  0x00000018 , 0x000042b7 
+ 00017077  0x00003d4c random  0x0000003f 
+ 00017078  0x00003d4d store  0x00000001 , 0x000044a1 
+ 00017079  0x00003d4f call  0x00003418 
+ 00017080  0x00003d50 fetch  0x00000002 , 0x00004687 
+ 00017081  0x00003d51 store  0x00000002 , 0x000046ac 
+ 00017082  0x00003d52 jam  0x00000006 , 0x0000016d 
+ 00017083  0x00003d53 setarg  0x00000000 
+ 00017084  0x00003d54 store  0x00000002 , 0x000046b0 
+ 00017085  0x00003d55 store  0x00000002 , 0x000046ae 
+ 00017086  0x00003d56 arg  0x00000007 , 0x00000007 
+ 00017087  0x00003d57 call  0x000043ce 
+ 00017088  0x00003d58 call  0x000043ca 
+ 00017089  0x00003d59 fetch  0x00000001 , 0x00004092 
+ 00017090  0x00003d5a isolate1  0x00000001 , 0x0000003f 
+ 00017091  0x00003d5b call  0x00007df4 , 0x00000001 
+ 00017092  0x00003d5c fetch  0x00000001 , 0x00004092 
+ 00017093  0x00003d5d isolate1  0x00000000 , 0x0000003f 
+ 00017094  0x00003d5e call  0x00007ddd , 0x00000001 
+ 00017095  0x00003d5f fetch  0x00000004 , 0x000046d3 
+ 00017096  0x00003d60 bbit1  0x0000001c , 0x0000422e 
+ 00017097  0x00003d61 branch  0x00004282 
+ 00017098  0x00003d64 bpatch  0x000000ec , 0x0000401d 
+ 00017099  0x00003d65 fetch  0x00000001 , 0x00004092 
+ 00017100  0x00003d66 isolate1  0x00000001 , 0x0000003f 
+ 00017101  0x00003d67 call  0x000042d4 , 0x00000001 
+ 00017102  0x00003d68 fetch  0x00000001 , 0x00004092 
+ 00017103  0x00003d69 isolate1  0x00000000 , 0x0000003f 
+ 00017104  0x00003d6a call  0x000042d7 , 0x00000001 
+ 00017105  0x00003d6b fetch  0x00000004 , 0x000046d3 
+ 00017106  0x00003d6c bbit1  0x0000001c , 0x0000421a 
+ 00017107  0x00003d6d branch  0x00004482 
+ 00017108  0x00003d6f setarg  0x00000000 
+ 00017109  0x00003d70 store  0x00000002 , 0x000046ae 
+ 00017110  0x00003d71 branch  0x00007dfa 
+ 00017111  0x00003d73 setarg  0x00000000 
+ 00017112  0x00003d74 store  0x00000002 , 0x000046ac 
+ 00017113  0x00003d75 branch  0x00007de2 
+ 00017114  0x00003d7c fetch  0x00000004 , 0x000046d3 
+ 00017115  0x00003d7d rtnbit0  0x00000007 
+ 00017116  0x00003d7e arg  0x00000007 , 0x00000007 
+ 00017117  0x00003d7f call  0x000043d2 
+ 00017118  0x00003d80 call  0x000042e8 
+ 00017119  0x00003d82 call  0x000042fb 
+ 00017120  0x00003d83 fetch  0x00000004 , 0x000046d3 
+ 00017121  0x00003d84 bbit1  0x00000013 , 0x00004435 
+ 00017122  0x00003d85 bbit1  0x00000014 , 0x000042e4 
+ 00017123  0x00003d86 rtn 
+ 00017124  0x00003d88 arg  0x00000058 , 0x00000002 
+ 00017125  0x00003d89 arg  0x00004720 , 0x00000011 
+ 00017126  0x00003d8a arg  0x00000000 , 0x00000012 
+ 00017127  0x00003d8b branch  0x000065d1 
+ 00017128  0x00003d8e fetch  0x00000001 , 0x00000185 
+ 00017129  0x00003d8f beq  0x00000034 , 0x000042ec 
+ 00017130  0x00003d90 beq  0x00000033 , 0x000042ef 
+ 00017131  0x00003d91 rtn 
+ 00017132  0x00003d93 store  0x00000001 , 0x000046c7 
+ 00017133  0x00003d94 fetch  0x00000006 , 0x0000044f 
+ 00017134  0x00003d95 branch  0x000042f1 
+ 00017135  0x00003d97 store  0x00000001 , 0x000046c7 
+ 00017136  0x00003d98 fetch  0x00000006 , 0x00000040 
+ 00017137  0x00003d9a store  0x00000006 , 0x000046c8 
+ 00017138  0x00003d9b fetch  0x00000007 , 0x000046c7 
+ 00017139  0x00003d9c arg  0x00004721 , 0x00000006 
+ 00017140  0x00003d9d arg  0x00000003 , 0x00000039 
+ 00017141  0x00003d9f ifetcht  0x00000007 , 0x00000006 
+ 00017142  0x00003da0 isub  0x00000002 , 0x0000003e 
+ 00017143  0x00003da1 branch  0x00004310 , 0x00000005 
+ 00017144  0x00003da2 increase  0x00000016 , 0x00000006 
+ 00017145  0x00003da3 loop  0x000042f5 
+ 00017146  0x00003da4 rtn 
+ 00017147  0x00003da6 arg  0x00004721 , 0x00000011 
+ 00017148  0x00003da7 fetch  0x00000001 , 0x00004720 
+ 00017149  0x00003da8 increase  0xffffffff , 0x0000003f 
+ 00017150  0x00003da9 mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017151  0x00003daa iadd  0x00000011 , 0x00000011 
+ 00017152  0x00003dab fetch  0x00000001 , 0x00000185 
+ 00017153  0x00003dac istore  0x00000001 , 0x00000011 
+ 00017154  0x00003dad beq  0x00000034 , 0x00004305 
+ 00017155  0x00003dae beq  0x00000033 , 0x0000430c 
+ 00017156  0x00003daf rtn 
+ 00017157  0x00003db2 fetch  0x00000006 , 0x0000044f 
+ 00017158  0x00003db3 istore  0x00000006 , 0x00000005 
+ 00017159  0x00003db4 arg  0x00004419 , 0x00000006 
+ 00017160  0x00003db5 call  0x00007ebf 
+ 00017161  0x00003db6 fetch  0x00000006 , 0x000044a0 
+ 00017162  0x00003db7 istore  0x00000006 , 0x00000005 
+ 00017163  0x00003db8 rtn 
+ 00017164  0x00003dba fetch  0x00000006 , 0x00000040 
+ 00017165  0x00003dbb istore  0x00000006 , 0x00000005 
+ 00017166  0x00003dbc arg  0x000041be , 0x00000006 
+ 00017167  0x00003dbd branch  0x00007ebf 
+ 00017168  0x00003dc0 increase  0xfffffffa , 0x00000006 
+ 00017169  0x00003dc1 copy  0x00000006 , 0x00000005 
+ 00017170  0x00003dc2 fetcht  0x00000006 , 0x000046c8 
+ 00017171  0x00003dc3 increase  0x00000003 , 0x00000002 
+ 00017172  0x00003dc4 istoret  0x00000006 , 0x00000005 
+ 00017173  0x00003dc5 rtn 
+ 00017174  0x00003dca arg  0x00000058 , 0x00000002 
+ 00017175  0x00003dcb arg  0x00004720 , 0x00000011 
+ 00017176  0x00003dcc arg  0x00000000 , 0x00000012 
+ 00017177  0x00003dcd call  0x000065df 
+ 00017178  0x00003dcf arg  0x00004721 , 0x00000011 
+ 00017179  0x00003dd0 fetch  0x00000001 , 0x00004720 
+ 00017180  0x00003dd1 fetcht  0x00000001 , 0x00004703 
+ 00017181  0x00003dd2 isub  0x00000002 , 0x0000003e 
+ 00017182  0x00003dd3 rtn  0x00000005 
+ 00017183  0x00003dd4 increase  0xffffffff , 0x0000003f 
+ 00017184  0x00003dd5 mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017185  0x00003dd6 iadd  0x00000011 , 0x00000011 
+ 00017186  0x00003dd7 ifetch  0x00000001 , 0x00000011 
+ 00017187  0x00003dd8 store  0x00000001 , 0x00004210 
+ 00017188  0x00003dd9 beq  0x00000033 , 0x00004327 
+ 00017189  0x00003dda beq  0x00000034 , 0x0000432c 
+ 00017190  0x00003ddb rtn 
+ 00017191  0x00003dde ifetch  0x00000006 , 0x00000006 
+ 00017192  0x00003de0 store  0x00000006 , 0x000041d0 
+ 00017193  0x00003de1 arg  0x000041be , 0x00000005 
+ 00017194  0x00003de2 call  0x00007ebf 
+ 00017195  0x00003de3 branch  0x000067d7 
+ 00017196  0x00003de6 ifetch  0x00000006 , 0x00000006 
+ 00017197  0x00003de8 store  0x00000006 , 0x000041d0 
+ 00017198  0x00003de9 arg  0x00004419 , 0x00000005 
+ 00017199  0x00003dea call  0x00007ebf 
+ 00017200  0x00003deb ifetch  0x00000006 , 0x00000006 
+ 00017201  0x00003dec store  0x00000006 , 0x000044a0 
+ 00017202  0x00003ded rtn 
+ 00017203  0x00003df1 fetch  0x00000001 , 0x000046f5 
+ 00017204  0x00003df2 bbit1  0x00000005 , 0x00004349 
+ 00017205  0x00003df3 bbit1  0x00000006 , 0x00004359 
+ 00017206  0x00003df4 branch  0x00004337 
+ 00017207  0x00003df7 call  0x00004083 
+ 00017208  0x00003df8 beq  0x00000006 , 0x0000433e 
+ 00017209  0x00003dfa jam  0x0000001e , 0x000046d8 
+ 00017210  0x00003dfb fetch  0x00000001 , 0x000046d9 
+ 00017211  0x00003dfc rtneq  0x00000001 
+ 00017212  0x00003dfd jam  0x00000001 , 0x000046d9 
+ 00017213  0x00003dfe rtn 
+ 00017214  0x00003e01 call  0x00004343 
+ 00017215  0x00003e02 fetch  0x00000001 , 0x000046d9 
+ 00017216  0x00003e03 rtneq  0x00000000 
+ 00017217  0x00003e04 jam  0x00000000 , 0x000046d9 
+ 00017218  0x00003e05 branch  0x000043c0 
+ 00017219  0x00003e08 fetch  0x00000001 , 0x000046d8 
+ 00017220  0x00003e09 rtn  0x00000034 
+ 00017221  0x00003e0a pincrease  0xffffffff 
+ 00017222  0x00003e0b store  0x00000001 , 0x000046d8 
+ 00017223  0x00003e0c nrtn  0x00000034 
+ 00017224  0x00003e0d branch  0x00004370 
+ 00017225  0x00003e10 fetch  0x00000001 , 0x000046ed 
+ 00017226  0x00003e11 rtneq  0x000000ff 
+ 00017227  0x00003e12 fetcht  0x00000001 , 0x000046ed 
+ 00017228  0x00003e13 call  0x0000681d 
+ 00017229  0x00003e14 branch  0x00004354 , 0x00000001 
+ 00017230  0x00003e16 fetch  0x00000001 , 0x000046d9 
+ 00017231  0x00003e17 rtneq  0x00000001 
+ 00017232  0x00003e18 jam  0x00000001 , 0x000046d9 
+ 00017233  0x00003e19 fetch  0x00000004 , 0x000046d3 
+ 00017234  0x00003e1a rtnbit1  0x00000006 
+ 00017235  0x00003e1b branch  0x00004370 
+ 00017236  0x00003e1e fetch  0x00000001 , 0x000046d9 
+ 00017237  0x00003e1f rtneq  0x00000000 
+ 00017238  0x00003e20 jam  0x00000000 , 0x000046d9 
+ 00017239  0x00003e21 arg  0x00000006 , 0x00000007 
+ 00017240  0x00003e22 branch  0x000043d2 
+ 00017241  0x00003e27 fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017242  0x00003e28 rtnbit0  0x00000006 
+ 00017243  0x00003e29 fetch  0x00000001 , 0x00004720 
+ 00017244  0x00003e2a beq  0x00000001 , 0x00004369 
+ 00017245  0x00003e2b beq  0x00000002 , 0x0000436c 
+ 00017246  0x00003e2c rtn 
+ 00017247  0x00003e2e fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017248  0x00003e2f rtnbit0  0x00000006 
+ 00017249  0x00003e30 fetcht  0x00000001 , 0x000046ed 
+ 00017250  0x00003e31 call  0x0000681d 
+ 00017251  0x00003e32 branch  0x00004366 , 0x00000001 
+ 00017252  0x00003e34 jam  0x00000001 , 0x00004720 
+ 00017253  0x00003e35 rtn 
+ 00017254  0x00003e37 fetch  0x00000001 , 0x00004703 
+ 00017255  0x00003e38 store  0x00000001 , 0x00004720 
+ 00017256  0x00003e39 rtn 
+ 00017257  0x00003e3b fetcht  0x00000001 , 0x000046ed 
+ 00017258  0x00003e3c nbranch  0x00004370 , 0x00000001 
+ 00017259  0x00003e3d rtn 
+ 00017260  0x00003e3f fetcht  0x00000001 , 0x000046ed 
+ 00017261  0x00003e40 call  0x0000681d 
+ 00017262  0x00003e41 branch  0x00004354 , 0x00000001 
+ 00017263  0x00003e42 rtn 
+ 00017264  0x00003e48 fetcht  0x00000001 , 0x00004720 
+ 00017265  0x00003e49 increase  0x00000001 , 0x00000002 
+ 00017266  0x00003e4a fetch  0x00000001 , 0x000046d2 
+ 00017267  0x00003e4b isub  0x00000002 , 0x0000003e 
+ 00017268  0x00003e4c ncall  0x000043cc , 0x00000002 
+ 00017269  0x00003e4d storet  0x00000001 , 0x00004720 
+ 00017270  0x00003e4e jam  0x00000000 , 0x000041bd 
+ 00017271  0x00003e4f call  0x0000437a 
+ 00017272  0x00003e50 call  0x000043c0 
+ 00017273  0x00003e52 branch  0x0000437e 
+ 00017274  0x00003e55 arg  0x00000001 , 0x00000002 
+ 00017275  0x00003e56 arg  0x00004720 , 0x00000011 
+ 00017276  0x00003e57 arg  0x00000000 , 0x00000012 
+ 00017277  0x00003e58 branch  0x00006606 
+ 00017278  0x00003e5b call  0x00004381 
+ 00017279  0x00003e5c call  0x000043c2 
+ 00017280  0x00003e5d branch  0x000041d7 
+ 00017281  0x00003e5f fetch  0x00000002 , 0x00004682 
+ 00017282  0x00003e60 bbit1  0x00000007 , 0x00004392 
+ 00017283  0x00003e61 bbit1  0x00000009 , 0x00003402 
+ 00017284  0x00003e62 bbit1  0x00000000 , 0x000033e9 
+ 00017285  0x00003e63 branch  0x000042ca 
+ 00017286  0x00003e66 bpatch  0x000000ed , 0x0000401d 
+ 00017287  0x00003e67 setarg  0x00000000 
+ 00017288  0x00003e68 store  0x00000002 , 0x000046b0 
+ 00017289  0x00003e69 fetch  0x00000002 , 0x00004682 
+ 00017290  0x00003e6a bbit1  0x00000009 , 0x00003402 
+ 00017291  0x00003e6b fetch  0x00000002 , 0x00004682 
+ 00017292  0x00003e6c bbit1  0x00000000 , 0x000033e9 
+ 00017293  0x00003e6d rtn 
+ 00017294  0x00003e70 setarg  0x00000001 
+ 00017295  0x00003e71 store  0x00000006 , 0x00000040 
+ 00017296  0x00003e72 jam  0x00000033 , 0x00000185 
+ 00017297  0x00003e73 branch  0x000042df 
+ 00017298  0x00003e77 call  0x000043c4 
+ 00017299  0x00003e78 branch  0x00007e2f 
+ 00017300  0x00003e7b fetch  0x00000001 , 0x000046ec 
+ 00017301  0x00003e7c rtneq  0x000000ff 
+ 00017302  0x00003e7d fetcht  0x00000001 , 0x000046ec 
+ 00017303  0x00003e7e call  0x0000681d 
+ 00017304  0x00003e7f branch  0x0000439f , 0x00000001 
+ 00017305  0x00003e81 fetch  0x00000001 , 0x00004685 
+ 00017306  0x00003e82 store  0x00000001 , 0x000046da 
+ 00017307  0x00003e83 fetch  0x00000001 , 0x000046db 
+ 00017308  0x00003e84 rtneq  0x00000001 
+ 00017309  0x00003e85 jam  0x00000001 , 0x000046db 
+ 00017310  0x00003e86 branch  0x000043ca 
+ 00017311  0x00003e88 call  0x000043b5 
+ 00017312  0x00003e89 fetch  0x00000001 , 0x000046db 
+ 00017313  0x00003e8a rtneq  0x00000000 
+ 00017314  0x00003e8b jam  0x00000000 , 0x000046db 
+ 00017315  0x00003e8c call  0x00007e2f 
+ 00017316  0x00003e8d branch  0x000043c8 
+ 00017317  0x00003e91 fetch  0x00000001 , 0x000046f5 
+ 00017318  0x00003e92 bbit1  0x00000004 , 0x00004394 
+ 00017319  0x00003e94 call  0x00004083 
+ 00017320  0x00003e95 beq  0x00000007 , 0x000043af 
+ 00017321  0x00003e97 fetch  0x00000001 , 0x00004685 
+ 00017322  0x00003e98 store  0x00000001 , 0x000046da 
+ 00017323  0x00003e99 fetch  0x00000001 , 0x000046db 
+ 00017324  0x00003e9a rtneq  0x00000001 
+ 00017325  0x00003e9b jam  0x00000001 , 0x000046db 
+ 00017326  0x00003e9c branch  0x000043ca 
+ 00017327  0x00003ea0 call  0x000043b5 
+ 00017328  0x00003ea1 fetch  0x00000001 , 0x000046db 
+ 00017329  0x00003ea2 rtneq  0x00000000 
+ 00017330  0x00003ea3 jam  0x00000000 , 0x000046db 
+ 00017331  0x00003ea4 call  0x00007e2f 
+ 00017332  0x00003ea5 branch  0x000043c8 
+ 00017333  0x00003ea8 arg  0x000046da , 0x00000013 
+ 00017334  0x00003ea9 arg  0x000043b8 , 0x00000012 
+ 00017335  0x00003eaa branch  0x0000336d 
+ 00017336  0x00003ead arg  0x00000006 , 0x00000007 
+ 00017337  0x00003eae call  0x000043ce 
+ 00017338  0x00003eaf call  0x00003357 
+ 00017339  0x00003eb0 branch  0x0000426c 
+ 00017340  0x00003eb4 arg  0x00000001 , 0x00000007 
+ 00017341  0x00003eb5 branch  0x000043ce 
+ 00017342  0x00003eb7 arg  0x00000001 , 0x00000007 
+ 00017343  0x00003eb8 branch  0x000043d2 
+ 00017344  0x00003eba arg  0x00000000 , 0x00000007 
+ 00017345  0x00003ebb branch  0x000043ce 
+ 00017346  0x00003ebd arg  0x00000000 , 0x00000007 
+ 00017347  0x00003ebe branch  0x000043d2 
+ 00017348  0x00003ec0 arg  0x00000002 , 0x00000007 
+ 00017349  0x00003ec1 branch  0x000043ce 
+ 00017350  0x00003ec3 arg  0x00000002 , 0x00000007 
+ 00017351  0x00003ec4 branch  0x000043d2 
+ 00017352  0x00003ec6 arg  0x00000005 , 0x00000007 
+ 00017353  0x00003ec7 branch  0x000043ce 
+ 00017354  0x00003ec9 arg  0x00000005 , 0x00000007 
+ 00017355  0x00003eca branch  0x000043d2 
+ 00017356  0x00003ecf arg  0x00000001 , 0x00000002 
+ 00017357  0x00003ed0 rtn 
+ 00017358  0x00003ed3 fetch  0x00000004 , 0x000046d3 
+ 00017359  0x00003ed4 qset1  0x0000003f 
+ 00017360  0x00003ed5 store  0x00000004 , 0x000046d3 
+ 00017361  0x00003ed6 rtn 
+ 00017362  0x00003ed9 fetch  0x00000004 , 0x000046d3 
+ 00017363  0x00003eda qset0  0x0000003f 
+ 00017364  0x00003edb store  0x00000004 , 0x000046d3 
+ 00017365  0x00003edc rtn 
+ 00017366  0x00003edf fetch  0x00000004 , 0x000046d3 
+ 00017367  0x00003ee0 rtnbit0  0x0000001a 
+ 00017368  0x00003ee1 fetch  0x00000001 , 0x000046ce 
+ 00017369  0x00003ee2 increase  0x00000001 , 0x0000003f 
+ 00017370  0x00003ee3 store  0x00000001 , 0x000046ce 
+ 00017371  0x00003ee4 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00017372  0x00003ee5 rtn  0x00000002 
+ 00017373  0x00003ee6 jam  0x00000000 , 0x000046ce 
+ 00017374  0x00003ee7 call  0x000068eb 
+ 00017375  0x00003ee8 call  0x00006908 
+ 00017376  0x00003ee9 store  0x00000002 , 0x0000470f 
+ 00017377  0x00003eea arg  0x00004709 , 0x00000011 
+ 00017378  0x00003eeb call  0x00006930 
+ 00017379  0x00003eec fetch  0x00000001 , 0x00004231 
+ 00017380  0x00003eed bbit1  0x00000001 , 0x000044a0 
+ 00017381  0x00003eee bbit0  0x00000000 , 0x000043e9 
+ 00017382  0x00003eef branch  0x000043e7 
+ 00017383  0x00003ef1 arg  0x00000004 , 0x00000007 
+ 00017384  0x00003ef2 branch  0x000043ce 
+ 00017385  0x00003ef4 arg  0x00000004 , 0x00000007 
+ 00017386  0x00003ef5 branch  0x000043d2 
+ 00017387  0x00003ef8 fetch  0x00000004 , 0x000046d3 
+ 00017388  0x00003ef9 rtnbit0  0x00000004 
+ 00017389  0x00003efa fetch  0x00000001 , 0x000046ef 
+ 00017390  0x00003efb store  0x00000001 , 0x00004715 
+ 00017391  0x00003efc fetch  0x00000001 , 0x000046cf 
+ 00017392  0x00003efd pincrease  0x00000001 
+ 00017393  0x00003efe store  0x00000001 , 0x000046cf 
+ 00017394  0x00003eff sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00017395  0x00003f00 ncall  0x000043f9 , 0x00000002 
+ 00017396  0x00003f01 beq  0x00000002 , 0x000043fb 
+ 00017397  0x00003f02 beq  0x00000004 , 0x000043fe 
+ 00017398  0x00003f03 beq  0x00000006 , 0x000043fb 
+ 00017399  0x00003f04 beq  0x00000008 , 0x000043fe 
+ 00017400  0x00003f05 rtn 
+ 00017401  0x00003f07 jam  0x00000001 , 0x000046cf 
+ 00017402  0x00003f08 branch  0x000043fe 
+ 00017403  0x00003f0a arg  0x00000000 , 0x00000011 
+ 00017404  0x00003f0b jam  0x00000002 , 0x00004713 
+ 00017405  0x00003f0c branch  0x00007d14 
+ 00017406  0x00003f0e arg  0x00000000 , 0x00000011 
+ 00017407  0x00003f0f jam  0x00000002 , 0x00004713 
+ 00017408  0x00003f10 branch  0x00007d19 
+ 00017409  0x00003f13 call  0x00003f97 
+ 00017410  0x00003f14 nrtn  0x00000028 
+ 00017411  0x00003f15 arg  0x00000007 , 0x00000011 
+ 00017412  0x00003f16 arg  0x0000469a , 0x00000012 
+ 00017413  0x00003f17 rtn 
+ 00017414  0x00003f1a fetch  0x00000001 , 0x0000478b 
+ 00017415  0x00003f1b rtn  0x00000034 
+ 00017416  0x00003f1d fetcht  0x00000001 , 0x000046e7 
+ 00017417  0x00003f1e call  0x0000681d 
+ 00017418  0x00003f1f call  0x00004410 , 0x00000001 
+ 00017419  0x00003f20 fetch  0x00000001 , 0x00004704 
+ 00017420  0x00003f21 nrtn  0x00000034 
+ 00017421  0x00003f22 call  0x00004083 
+ 00017422  0x00003f23 nrtn  0x00000034 
+ 00017423  0x00003f24 branch  0x00002d83 
+ 00017424  0x00003f27 fetch  0x00000001 , 0x000046e7 
+ 00017425  0x00003f28 rtneq  0x000000ff 
+ 00017426  0x00003f29 jam  0x0000000a , 0x00004704 
+ 00017427  0x00003f2a rtn 
+ 00017428  0x00003f2e call  0x00004423 
+ 00017429  0x00003f2f fetch  0x00000002 , 0x00004778 
+ 00017430  0x00003f30 arg  0x0000aa55 , 0x00000002 
+ 00017431  0x00003f31 isub  0x00000002 , 0x0000003e 
+ 00017432  0x00003f32 branch  0x0000442b , 0x00000005 
+ 00017433  0x00003f33 storet  0x00000002 , 0x00004778 
+ 00017434  0x00003f34 call  0x0000441c 
+ 00017435  0x00003f35 branch  0x00004435 
+ 00017436  0x00003f37 fetch  0x00000006 , 0x000044a0 
+ 00017437  0x00003f38 store  0x00000006 , 0x00004738 
+ 00017438  0x00003f39 add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017439  0x00003f3a store  0x00000006 , 0x00004755 
+ 00017440  0x00003f3b add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017441  0x00003f3c store  0x00000006 , 0x00004772 
+ 00017442  0x00003f3d rtn 
+ 00017443  0x00003f41 setarg  0x00004778 
+ 00017444  0x00003f42 arg  0x00004720 , 0x00000002 
+ 00017445  0x00003f43 isub  0x00000002 , 0x00000002 
+ 00017446  0x00003f44 fetch  0x00000003 , 0x00004700 
+ 00017447  0x00003f45 iadd  0x00000002 , 0x0000003f 
+ 00017448  0x00003f46 arg  0x00000002 , 0x00000002 
+ 00017449  0x00003f47 arg  0x00004778 , 0x00000011 
+ 00017450  0x00003f48 branch  0x00006562 
+ 00017451  0x00003f4c setarg  0x0000477f 
+ 00017452  0x00003f4d arg  0x00004720 , 0x00000002 
+ 00017453  0x00003f4e isub  0x00000002 , 0x00000002 
+ 00017454  0x00003f4f fetch  0x00000003 , 0x00004700 
+ 00017455  0x00003f50 arg  0x00004720 , 0x00000011 
+ 00017456  0x00003f51 call  0x00006562 
+ 00017457  0x00003f52 call  0x0000431a 
+ 00017458  0x00003f53 fetch  0x00000004 , 0x0000477b 
+ 00017459  0x00003f54 call  0x00002c7a 
+ 00017460  0x00003f55 branch  0x0000322c 
+ 00017461  0x00003f58 setarg  0x0000477f 
+ 00017462  0x00003f59 arg  0x00004720 , 0x00000002 
+ 00017463  0x00003f5a isub  0x00000002 , 0x00000002 
+ 00017464  0x00003f5b arg  0x00004720 , 0x00000011 
+ 00017465  0x00003f5c fetch  0x00000003 , 0x00004700 
+ 00017466  0x00003f5d branch  0x00006514 
+ 00017467  0x00003f60 arg  0x00000001 , 0x00000002 
+ 00017468  0x00003f61 arg  0x0000477a , 0x00000011 
+ 00017469  0x00003f62 arg  0x0000005a , 0x00000012 
+ 00017470  0x00003f63 branch  0x000065d1 
+ 00017471  0x00003f66 arg  0x00000001 , 0x00000002 
+ 00017472  0x00003f67 arg  0x0000477a , 0x00000011 
+ 00017473  0x00003f68 arg  0x0000005a , 0x00000012 
+ 00017474  0x00003f69 branch  0x000065df 
+ 00017475  0x00003f6c rtnmark1  0x00000026 
+ 00017476  0x00003f6d fetch  0x00000004 , 0x000046d3 
+ 00017477  0x00003f6e rtnbit0  0x00000016 
+ 00017478  0x00003f6f fetch  0x00000001 , 0x00004705 
+ 00017479  0x00003f70 pincrease  0x00000001 
+ 00017480  0x00003f71 and  0x0000003f , 0x00000007 , 0x0000003f 
+ 00017481  0x00003f72 store  0x00000001 , 0x00004705 
+ 00017482  0x00003f73 rtnne  0x00000007 
+ 00017483  0x00003f74 fetch  0x00000002 , 0x00004682 
+ 00017484  0x00003f75 bbit1  0x00000000 , 0x0000444f 
+ 00017485  0x00003f76 bbit1  0x00000009 , 0x0000444f 
+ 00017486  0x00003f77 rtn 
+ 00017487  0x00003f7d bpatch  0x000000ee , 0x0000401d 
+ 00017488  0x00003f7e fetch  0x00000001 , 0x00004706 
+ 00017489  0x00003f7f nrtn  0x00000034 
+ 00017490  0x00003f80 fetch  0x00000004 , 0x000046d3 
+ 00017491  0x00003f81 rtnbit0  0x00000008 
+ 00017492  0x00003f82 fetch  0x00000001 , 0x000046a5 
+ 00017493  0x00003f83 call  0x000063fb 
+ 00017494  0x00003f84 store  0x00000001 , 0x000046a6 
+ 00017495  0x00003f85 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017496  0x00003f86 branch  0x0000445b , 0x00000002 
+ 00017497  0x00003f87 jam  0x00000000 , 0x00004706 
+ 00017498  0x00003f88 rtn 
+ 00017499  0x00003f8b jam  0x0000001e , 0x00004706 
+ 00017500  0x00003f8c rtn 
+ 00017501  0x00003f8e arg  0x00004706 , 0x00000013 
+ 00017502  0x00003f8f arg  0x00004460 , 0x00000012 
+ 00017503  0x00003f90 branch  0x0000336d 
+ 00017504  0x00003f93 fetch  0x00000001 , 0x000046a5 
+ 00017505  0x00003f94 call  0x00006414 
+ 00017506  0x00003f95 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017507  0x00003f96 nrtn  0x00000002 
+ 00017508  0x00003f97 fetch  0x00000004 , 0x000046d3 
+ 00017509  0x00003f98 rtnbit0  0x00000008 
+ 00017510  0x00003f99 arg  0x00000008 , 0x00000007 
+ 00017511  0x00003f9a call  0x000043d2 
+ 00017512  0x00003f9b jam  0x00000000 , 0x00004172 
+ 00017513  0x00003f9c jam  0x0000001e , 0x000046c4 
+ 00017514  0x00003f9d call  0x00004482 
+ 00017515  0x00003f9e fetch  0x00000004 , 0x000046d3 
+ 00017516  0x00003f9f bbit1  0x00000015 , 0x00004471 
+ 00017517  0x00003fa1 fetch  0x00000001 , 0x00004720 
+ 00017518  0x00003fa2 beq  0x00000001 , 0x00004489 
+ 00017519  0x00003fa3 beq  0x00000002 , 0x00004476 
+ 00017520  0x00003fa4 rtn 
+ 00017521  0x00003fa6 fetch  0x00000001 , 0x00004720 
+ 00017522  0x00003fa7 beq  0x00000001 , 0x00004489 
+ 00017523  0x00003fa8 beq  0x00000002 , 0x0000448c 
+ 00017524  0x00003fa9 beq  0x00000003 , 0x0000448f 
+ 00017525  0x00003faa rtn 
+ 00017526  0x00003fad fetch  0x00000001 , 0x000046f0 
+ 00017527  0x00003fae branch  0x0000428f 
+ 00017528  0x00003fb3 jam  0x00000020 , 0x00004172 
+ 00017529  0x00003fb4 branch  0x00004482 
+ 00017530  0x00003fb9 fetch  0x00000001 , 0x000046f0 
+ 00017531  0x00003fba rtneq  0x000000ff 
+ 00017532  0x00003fbb store  0x00000001 , 0x00004715 
+ 00017533  0x00003fbc branch  0x00004296 
+ 00017534  0x00003fbf fetch  0x00000001 , 0x000046f1 
+ 00017535  0x00003fc0 rtneq  0x000000ff 
+ 00017536  0x00003fc1 store  0x00000001 , 0x00004715 
+ 00017537  0x00003fc2 branch  0x00004296 
+ 00017538  0x00003fc5 call  0x00004296 
+ 00017539  0x00003fc6 call  0x0000447a 
+ 00017540  0x00003fc7 call  0x0000447e 
+ 00017541  0x00003fc9 fetch  0x00000001 , 0x000046f2 
+ 00017542  0x00003fca rtneq  0x000000ff 
+ 00017543  0x00003fcb store  0x00000001 , 0x00004715 
+ 00017544  0x00003fcc branch  0x00004296 
+ 00017545  0x00003fcf fetch  0x00000001 , 0x000046f0 
+ 00017546  0x00003fd0 store  0x00000001 , 0x00004715 
+ 00017547  0x00003fd1 branch  0x00004298 
+ 00017548  0x00003fd3 fetch  0x00000001 , 0x000046f1 
+ 00017549  0x00003fd4 store  0x00000001 , 0x00004715 
+ 00017550  0x00003fd5 branch  0x00004298 
+ 00017551  0x00003fd7 fetch  0x00000001 , 0x000046f2 
+ 00017552  0x00003fd8 store  0x00000001 , 0x00004715 
+ 00017553  0x00003fd9 branch  0x00004298 
+ 00017554  0x00003fde bpatch  0x000000ef , 0x0000401d 
+ 00017555  0x00003fdf fetch  0x00000001 , 0x0000471e 
+ 00017556  0x00003fe0 increase  0xffffffff , 0x0000003f 
+ 00017557  0x00003fe1 store  0x00000001 , 0x0000471e 
+ 00017558  0x00003fe2 fetcht  0x00000001 , 0x00004720 
+ 00017559  0x00003fe3 increase  0x00000001 , 0x00000002 
+ 00017560  0x00003fe4 fetch  0x00000001 , 0x000046d2 
+ 00017561  0x00003fe5 isub  0x00000002 , 0x0000003e 
+ 00017562  0x00003fe6 ncall  0x000043cc , 0x00000002 
+ 00017563  0x00003fe7 storet  0x00000001 , 0x00004720 
+ 00017564  0x00003fe8 jam  0x00000000 , 0x000041bd 
+ 00017565  0x00003fe9 call  0x0000437a 
+ 00017566  0x00003fea call  0x000042fb 
+ 00017567  0x00003feb branch  0x000042a2 
+ 00017568  0x00003fee call  0x00004482 
+ 00017569  0x00003fef setarg  0x00000000 
+ 00017570  0x00003ff0 store  0x00000008 , 0x000000a1 
+ 00017571  0x00003ff1 branch  0x00002b1f 
+ 00017572  0x00003ffd rtn  0x0000002b 
+ 00017573  0x00003ffe hfetch  0x00000001 , 0x00008081 
+ 00017574  0x00003fff and_into  0x000000f0 , 0x0000003f 
+ 00017575  0x00004000 hstore  0x00000001 , 0x00008081 
+ 00017576  0x00004001 call  0x00006948 
+ 00017577  0x00004002 setarg  0x000044e6 
+ 00017578  0x00004003 store  0x00000002 , 0x000041eb 
+ 00017579  0x00004005 setarg  0x000044e9 
+ 00017580  0x00004006 store  0x00000002 , 0x000041ed 
+ 00017581  0x00004008 setarg  0x000044ef 
+ 00017582  0x00004009 store  0x00000002 , 0x000041f3 
+ 00017583  0x0000400b setarg  0x000044f2 
+ 00017584  0x0000400c store  0x00000002 , 0x000041f5 
+ 00017585  0x0000400e setarg  0x000033d0 
+ 00017586  0x0000400f store  0x00000002 , 0x000041e9 
+ 00017587  0x00004011 call  0x00002c7a 
+ 00017588  0x00004012 setarg  0x000045c2 
+ 00017589  0x00004013 add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00017590  0x00004014 istore  0x00000002 , 0x00000005 
+ 00017591  0x00004016 setarg  0x000044ea 
+ 00017592  0x00004017 add  0x00000013 , 0x000000da , 0x00000005 
+ 00017593  0x00004018 istore  0x00000002 , 0x00000005 
+ 00017594  0x0000401a setarg  0x000044e9 
+ 00017595  0x0000401b add  0x00000013 , 0x000000dc , 0x00000005 
+ 00017596  0x0000401c istore  0x00000002 , 0x00000005 
+ 00017597  0x0000401e setarg  0x0000450e 
+ 00017598  0x0000401f store  0x00000002 , 0x000041fd 
+ 00017599  0x00004021 setarg  0x000044da 
+ 00017600  0x00004022 store  0x00000002 , 0x0000475b 
+ 00017601  0x00004024 setarg  0x000044d6 
+ 00017602  0x00004025 store  0x00000002 , 0x0000475f 
+ 00017603  0x00004027 setarg  0x00004560 
+ 00017604  0x00004028 store  0x00000002 , 0x0000470f 
+ 00017605  0x0000402a bpatch  0x000000f0 , 0x0000401e 
+ 00017606  0x0000402b call  0x000044e2 
+ 00017607  0x0000402c call  0x00007e38 
+ 00017608  0x0000402d jam  0x00000002 , 0x00004172 
+ 00017609  0x0000402e fetch  0x00000001 , 0x0000472b 
+ 00017610  0x0000402f store  0x00000001 , 0x0000469a 
+ 00017611  0x00004030 beq  0x00000000 , 0x000044d5 
+ 00017612  0x00004031 fetch  0x00000001 , 0x0000472c 
+ 00017613  0x00004032 store  0x00000001 , 0x00004686 
+ 00017614  0x00004034 call  0x000044db 
+ 00017615  0x00004035 call  0x00007cd3 
+ 00017616  0x00004036 call  0x00007cdd 
+ 00017617  0x00004037 jam  0x00000001 , 0x00004757 
+ 00017618  0x00004038 fetch  0x00000002 , 0x00004682 
+ 00017619  0x00004039 rtnbit1  0x0000000c 
+ 00017620  0x0000403a branch  0x0000340a 
+ 00017621  0x0000403f jam  0x00000002 , 0x00004757 
+ 00017622  0x00004041 call  0x000044db 
+ 00017623  0x00004043 arg  0x00000000 , 0x00000011 
+ 00017624  0x00004044 call  0x00007d1e 
+ 00017625  0x00004046 branch  0x00002ee4 
+ 00017626  0x00004049 branch  0x000044db 
+ 00017627  0x0000404c bpatch  0x000000f1 , 0x0000401e 
+ 00017628  0x0000404d fetch  0x00000001 , 0x00004729 
+ 00017629  0x0000404e bne  0x000000ff , 0x000044e0 
+ 00017630  0x00004050 fetcht  0x00000001 , 0x00004706 
+ 00017631  0x00004051 branch  0x0000680e 
+ 00017632  0x00004053 store  0x00000001 , 0x00004706 
+ 00017633  0x00004054 branch  0x000044de 
+ 00017634  0x00004058 call  0x00002c9d 
+ 00017635  0x00004059 fetch  0x00000002 , 0x00004753 
+ 00017636  0x0000405a store  0x00000002 , 0x00004755 
+ 00017637  0x0000405b branch  0x00004515 
+ 00017638  0x00004063 call  0x00006835 
+ 00017639  0x00004064 call  0x000044e9 
+ 00017640  0x00004065 branch  0x0000340a 
+ 00017641  0x00004068 branch  0x0000696c 
+ 00017642  0x0000406b fetch  0x00000001 , 0x00004765 
+ 00017643  0x0000406c rtn  0x00000034 
+ 00017644  0x0000406e branch  0x00002d83 
+ 00017645  0x00004071 rtn 
+ 00017646  0x00004074 branch  0x00006978 
+ 00017647  0x00004077 call  0x00004544 
+ 00017648  0x00004078 call  0x00004503 
+ 00017649  0x00004079 branch  0x000044ee 
+ 00017650  0x0000407c copy  0x00000013 , 0x0000003f 
+ 00017651  0x0000407d beq  0x0000002d , 0x00003431 
+ 00017652  0x0000407e beq  0x00000010 , 0x0000341a 
+ 00017653  0x0000407f beq  0x00000039 , 0x000044fb 
+ 00017654  0x00004080 beq  0x0000003c , 0x000044ff 
+ 00017655  0x00004081 beq  0x0000003a , 0x000044f9 
+ 00017656  0x00004082 rtn 
+ 00017657  0x00004085 jam  0x00000001 , 0x00004765 
+ 00017658  0x00004086 rtn 
+ 00017659  0x00004089 jam  0x00000001 , 0x00004765 
+ 00017660  0x0000408a jam  0x00000001 , 0x00004763 
+ 00017661  0x0000408b jam  0x00000001 , 0x00004764 
+ 00017662  0x0000408c rtn 
+ 00017663  0x0000408f jam  0x00000001 , 0x00004765 
+ 00017664  0x00004090 jam  0x00000001 , 0x00004763 
+ 00017665  0x00004091 jam  0x00000001 , 0x00004764 
+ 00017666  0x00004092 rtn 
+ 00017667  0x00004095 fetch  0x00000001 , 0x00004763 
+ 00017668  0x00004096 rtneq  0x00000000 
+ 00017669  0x00004097 fetch  0x00000001 , 0x00004762 
+ 00017670  0x00004098 rtneq  0x00000001 
+ 00017671  0x00004099 jam  0x00000001 , 0x00004762 
+ 00017672  0x0000409b arg  0x00000000 , 0x00000011 
+ 00017673  0x0000409c branch  0x00007d19 
+ 00017674  0x0000409e arg  0x00000000 , 0x00000011 
+ 00017675  0x0000409f call  0x00007d19 
+ 00017676  0x000040a0 call  0x000044db 
+ 00017677  0x000040a1 branch  0x0000340a 
+ 00017678  0x000040a4 call  0x0000337b 
+ 00017679  0x000040a5 branch  0x00004510 
+ 00017680  0x000040a8 fetch  0x00000001 , 0x0000472d 
+ 00017681  0x000040a9 rtn  0x00000034 
+ 00017682  0x000040aa arg  0x00004755 , 0x00000013 
+ 00017683  0x000040ab arg  0x0000450a , 0x00000012 
+ 00017684  0x000040ac branch  0x00003374 
+ 00017685  0x000040b0 call  0x0000451a 
+ 00017686  0x000040b1 storet  0x00000002 , 0x0000471a 
+ 00017687  0x000040b2 call  0x0000451f 
+ 00017688  0x000040b3 storet  0x00000002 , 0x0000471c 
+ 00017689  0x000040b4 rtn 
+ 00017690  0x000040b7 fetch  0x00000002 , 0x0000471a 
+ 00017691  0x000040b8 store  0x00000002 , 0x0000471e 
+ 00017692  0x000040b9 call  0x00004540 
+ 00017693  0x000040ba call  0x00004525 
+ 00017694  0x000040bb store  0x00000001 , 0x00004724 
+ 00017695  0x000040bd fetch  0x00000002 , 0x0000471c 
+ 00017696  0x000040be store  0x00000002 , 0x0000471e 
+ 00017697  0x000040bf call  0x00004542 
+ 00017698  0x000040c0 call  0x00004525 
+ 00017699  0x000040c1 store  0x00000001 , 0x00004725 
+ 00017700  0x000040c2 rtn 
+ 00017701  0x000040c4 fetch  0x00000002 , 0x00004720 
+ 00017702  0x000040c5 copy  0x0000003f , 0x00000011 
+ 00017703  0x000040c6 fetch  0x00000002 , 0x0000471e 
+ 00017704  0x000040c7 call  0x0000452e 
+ 00017705  0x000040c8 fetch  0x00000001 , 0x00004719 
+ 00017706  0x000040c9 nbranch  0x00004537 , 0x00000034 
+ 00017707  0x000040ca nrtn  0x00000002 
+ 00017708  0x000040cb fetcht  0x00000002 , 0x0000471e 
+ 00017709  0x000040cc rtn 
+ 00017710  0x000040ce isub  0x00000002 , 0x0000003f 
+ 00017711  0x000040cf branch  0x00004534 , 0x00000002 
+ 00017712  0x000040d0 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00017713  0x000040d1 jam  0x00000001 , 0x00004718 
+ 00017714  0x000040d2 isub  0x00000011 , 0x0000003e 
+ 00017715  0x000040d3 rtn 
+ 00017716  0x000040d5 jam  0x00000000 , 0x00004718 
+ 00017717  0x000040d6 isub  0x00000011 , 0x0000003e 
+ 00017718  0x000040d7 rtn 
+ 00017719  0x000040d9 nbranch  0x0000453e , 0x00000002 
+ 00017720  0x000040da fetch  0x00000001 , 0x00004718 
+ 00017721  0x000040db nbranch  0x0000453c , 0x00000034 
+ 00017722  0x000040dd setarg  0x00000001 
+ 00017723  0x000040de rtn 
+ 00017724  0x000040e0 setarg  0x00000002 
+ 00017725  0x000040e1 rtn 
+ 00017726  0x000040e3 setarg  0x00000000 
+ 00017727  0x000040e4 rtn 
+ 00017728  0x000040e6 jam  0x00000033 , 0x0000422e 
+ 00017729  0x000040e7 branch  0x000068eb 
+ 00017730  0x000040e9 jam  0x00000034 , 0x0000422e 
+ 00017731  0x000040ea branch  0x000068eb 
+ 00017732  0x000040ee fetch  0x00000001 , 0x0000472a 
+ 00017733  0x000040ef rtnne  0x00000001 
+ 00017734  0x000040f1 bpatch  0x000000f2 , 0x0000401e 
+ 00017735  0x000040f2 jam  0x00000001 , 0x00004719 
+ 00017736  0x000040f3 call  0x0000451a 
+ 00017737  0x000040f4 fetch  0x00000002 , 0x00004724 
+ 00017738  0x000040f5 fetcht  0x00000002 , 0x00004722 
+ 00017739  0x000040f6 isub  0x00000002 , 0x0000003e 
+ 00017740  0x000040f7 rtn  0x00000005 
+ 00017741  0x000040f8 store  0x00000002 , 0x00004722 
+ 00017742  0x000040f9 call  0x00004550 
+ 00017743  0x000040fa branch  0x00004554 
+ 00017744  0x000040fd fetch  0x00000001 , 0x00004724 
+ 00017745  0x000040fe branch  0x0000455a , 0x00000034 
+ 00017746  0x000040ff increase  0xffffffff , 0x0000003f 
+ 00017747  0x00004100 branch  0x00004557 
+ 00017748  0x00004102 fetch  0x00000001 , 0x00004725 
+ 00017749  0x00004103 branch  0x0000455d , 0x00000034 
+ 00017750  0x00004104 increase  0x00000001 , 0x0000003f 
+ 00017751  0x00004106 copy  0x0000003f , 0x00000007 
+ 00017752  0x00004107 arg  0x00000001 , 0x00000011 
+ 00017753  0x00004108 branch  0x00004560 
+ 00017754  0x0000410b arg  0x00000000 , 0x00000007 
+ 00017755  0x0000410c arg  0x00000000 , 0x00000011 
+ 00017756  0x0000410d branch  0x00004560 
+ 00017757  0x0000410f arg  0x00000002 , 0x00000007 
+ 00017758  0x00004110 arg  0x00000000 , 0x00000011 
+ 00017759  0x00004111 branch  0x00004560 
+ 00017760  0x00004114 copy  0x00000011 , 0x0000003f 
+ 00017761  0x00004115 store  0x00000001 , 0x00004761 
+ 00017762  0x00004116 fetch  0x00000001 , 0x00004763 
+ 00017763  0x00004117 beq  0x00000000 , 0x00002ee4 
+ 00017764  0x00004118 fetch  0x00000002 , 0x00004753 
+ 00017765  0x00004119 store  0x00000002 , 0x00004755 
+ 00017766  0x0000411a fetch  0x00000001 , 0x00004761 
+ 00017767  0x0000411b branch  0x00004580 , 0x00000034 
+ 00017768  0x0000411d bpatch  0x000000f3 , 0x0000401e 
+ 00017769  0x0000411e arg  0x00000000 , 0x00000011 
+ 00017770  0x0000411f call  0x00007d14 
+ 00017771  0x00004121 copy  0x00000007 , 0x0000003f 
+ 00017772  0x00004122 beq  0x00000004 , 0x000045a3 
+ 00017773  0x00004123 beq  0x00000005 , 0x000045a5 
+ 00017774  0x00004124 beq  0x00000006 , 0x000045a7 
+ 00017775  0x00004128 call  0x0000458b 
+ 00017776  0x00004129 beq  0x00000000 , 0x00004574 
+ 00017777  0x0000412a beq  0x00000002 , 0x0000457a 
+ 00017778  0x0000412b beq  0x00000003 , 0x00004574 
+ 00017779  0x0000412c rtn 
+ 00017780  0x0000412f copy  0x00000007 , 0x0000003f 
+ 00017781  0x00004130 beq  0x00000000 , 0x0000458f 
+ 00017782  0x00004131 beq  0x00000001 , 0x00004591 
+ 00017783  0x00004132 beq  0x00000002 , 0x00004593 
+ 00017784  0x00004133 beq  0x00000003 , 0x00004595 
+ 00017785  0x00004134 rtn 
+ 00017786  0x00004137 copy  0x00000007 , 0x0000003f 
+ 00017787  0x00004138 beq  0x00000000 , 0x00004597 
+ 00017788  0x00004139 beq  0x00000001 , 0x0000459a 
+ 00017789  0x0000413a beq  0x00000002 , 0x0000459d 
+ 00017790  0x0000413b beq  0x00000003 , 0x000045a0 
+ 00017791  0x0000413c rtn 
+ 00017792  0x0000413f bpatch  0x000000f4 , 0x0000401e 
+ 00017793  0x00004140 arg  0x00000000 , 0x00000011 
+ 00017794  0x00004141 call  0x00007d19 
+ 00017795  0x00004143 copy  0x00000007 , 0x0000003f 
+ 00017796  0x00004144 beq  0x00000004 , 0x000045bc 
+ 00017797  0x00004145 beq  0x00000005 , 0x000045bc 
+ 00017798  0x00004149 call  0x0000458b 
+ 00017799  0x0000414a beq  0x00000000 , 0x000045a9 
+ 00017800  0x0000414b beq  0x00000002 , 0x000045af 
+ 00017801  0x0000414c beq  0x00000003 , 0x000045a9 
+ 00017802  0x0000414d rtn 
+ 00017803  0x00004150 fetch  0x00000001 , 0x00004728 
+ 00017804  0x00004151 fetcht  0x00000001 , 0x00004727 
+ 00017805  0x00004152 ior  0x00000002 , 0x0000003f 
+ 00017806  0x00004153 rtn 
+ 00017807  0x00004157 jam  0x00000001 , 0x00004734 
+ 00017808  0x00004158 branch  0x000045be 
+ 00017809  0x0000415a jam  0x00000002 , 0x00004734 
+ 00017810  0x0000415b branch  0x000045be 
+ 00017811  0x0000415d jam  0x00000001 , 0x00004736 
+ 00017812  0x0000415e branch  0x000045be 
+ 00017813  0x00004160 jam  0x00000002 , 0x00004736 
+ 00017814  0x00004161 branch  0x000045be 
+ 00017815  0x00004165 jam  0x00000001 , 0x00004734 
+ 00017816  0x00004166 jam  0x00000001 , 0x00004736 
+ 00017817  0x00004167 branch  0x000045be 
+ 00017818  0x00004169 jam  0x00000002 , 0x00004734 
+ 00017819  0x0000416a jam  0x00000002 , 0x00004736 
+ 00017820  0x0000416b branch  0x000045be 
+ 00017821  0x0000416d jam  0x00000002 , 0x00004734 
+ 00017822  0x0000416e jam  0x00000001 , 0x00004736 
+ 00017823  0x0000416f branch  0x000045be 
+ 00017824  0x00004171 jam  0x00000001 , 0x00004734 
+ 00017825  0x00004172 jam  0x00000002 , 0x00004736 
+ 00017826  0x00004173 branch  0x000045be 
+ 00017827  0x00004177 jam  0x00000001 , 0x00004738 
+ 00017828  0x00004178 branch  0x000045be 
+ 00017829  0x0000417a jam  0x00000002 , 0x00004738 
+ 00017830  0x0000417b branch  0x000045be 
+ 00017831  0x0000417e jam  0x00000001 , 0x00004741 
+ 00017832  0x0000417f branch  0x000045c0 
+ 00017833  0x00004182 copy  0x00000007 , 0x0000003f 
+ 00017834  0x00004183 beq  0x00000000 , 0x000045b5 
+ 00017835  0x00004184 beq  0x00000001 , 0x000045b5 
+ 00017836  0x00004185 beq  0x00000002 , 0x000045b7 
+ 00017837  0x00004186 beq  0x00000003 , 0x000045b7 
+ 00017838  0x00004187 rtn 
+ 00017839  0x0000418a copy  0x00000007 , 0x0000003f 
+ 00017840  0x0000418b beq  0x00000000 , 0x000045b9 
+ 00017841  0x0000418c beq  0x00000001 , 0x000045b9 
+ 00017842  0x0000418d beq  0x00000002 , 0x000045b9 
+ 00017843  0x0000418e beq  0x00000003 , 0x000045b9 
+ 00017844  0x0000418f rtn 
+ 00017845  0x00004193 jam  0x00000000 , 0x00004734 
+ 00017846  0x00004194 branch  0x000045be 
+ 00017847  0x00004197 jam  0x00000000 , 0x00004736 
+ 00017848  0x00004198 branch  0x000045be 
+ 00017849  0x0000419e jam  0x00000000 , 0x00004734 
+ 00017850  0x0000419f jam  0x00000000 , 0x00004736 
+ 00017851  0x000041a0 branch  0x000045be 
+ 00017852  0x000041a4 jam  0x00000000 , 0x00004738 
+ 00017853  0x000041a5 branch  0x000045be 
+ 00017854  0x000041a8 arg  0x0000472e , 0x00000011 
+ 00017855  0x000041a9 branch  0x00007e3d 
+ 00017856  0x000041ab arg  0x0000473b , 0x00000011 
+ 00017857  0x000041ac branch  0x00007e3d 
+ 00017858  0x000041af fetch  0x00000001 , 0x00004764 
+ 00017859  0x000041b0 beq  0x00000001 , 0x000045cc 
+ 00017860  0x000041b1 arg  0x00004744 , 0x00000011 
+ 00017861  0x000041b2 call  0x00007e54 
+ 00017862  0x000041b3 nbranch  0x000045d1 , 0x00000028 
+ 00017863  0x000041b5 arg  0x00004744 , 0x00000006 
+ 00017864  0x000041b6 ifetch  0x00000001 , 0x00000006 
+ 00017865  0x000041b7 copy  0x0000003f , 0x00000011 
+ 00017866  0x000041b8 arg  0x00004745 , 0x00000012 
+ 00017867  0x000041bb rtn 
+ 00017868  0x000041be jam  0x00000000 , 0x00004764 
+ 00017869  0x000041bf enable  0x00000028 
+ 00017870  0x000041c0 arg  0x00000001 , 0x00000011 
+ 00017871  0x000041c1 arg  0x00004766 , 0x00000012 
+ 00017872  0x000041c2 rtn 
+ 00017873  0x000041c5 fetch  0x00000001 , 0x00004747 
+ 00017874  0x000041c6 beq  0x00000004 , 0x000045d5 
+ 00017875  0x000041c7 beq  0x00000005 , 0x000045d5 
+ 00017876  0x000041c8 rtn 
+ 00017877  0x000041ca fetch  0x00000001 , 0x0000474a 
+ 00017878  0x000041cb nbranch  0x000045dc , 0x00000034 
+ 00017879  0x000041cc fetch  0x00000001 , 0x0000474c 
+ 00017880  0x000041cd nbranch  0x000045dc , 0x00000034 
+ 00017881  0x000041ce fetch  0x00000001 , 0x0000474e 
+ 00017882  0x000041cf nbranch  0x000045dc , 0x00000034 
+ 00017883  0x000041d0 rtn 
+ 00017884  0x000041d2 enable  0x00000028 
+ 00017885  0x000041d3 branch  0x000045c7 
+ 00017886  0x000041dc rtn  0x0000002b 
+ 00017887  0x000041dd hfetch  0x00000001 , 0x00008081 
+ 00017888  0x000041de and_into  0x000000fc , 0x0000003f 
+ 00017889  0x000041df hstore  0x00000001 , 0x00008081 
+ 00017890  0x000041e0 setarg  0x000046b4 
+ 00017891  0x000041e1 store  0x00000002 , 0x000041eb 
+ 00017892  0x000041e3 setarg  0x000046b3 
+ 00017893  0x000041e4 store  0x00000002 , 0x000041ed 
+ 00017894  0x000041e6 setarg  0x0000340a 
+ 00017895  0x000041e7 store  0x00000002 , 0x000041f7 
+ 00017896  0x000041e9 setarg  0x000046b1 
+ 00017897  0x000041ea store  0x00000002 , 0x000041f3 
+ 00017898  0x000041ec setarg  0x00004612 
+ 00017899  0x000041ed store  0x00000002 , 0x000041f5 
+ 00017900  0x000041ef setarg  0x0000460c 
+ 00017901  0x000041f0 store  0x00000002 , 0x000041e9 
+ 00017902  0x000041f2 setarg  0x0000476a 
+ 00017903  0x000041f3 store  0x00000002 , 0x000041f9 
+ 00017904  0x000041f5 setarg  0x00004686 
+ 00017905  0x000041f6 store  0x00000002 , 0x000041fd 
+ 00017906  0x000041f8 setarg  0x00004729 
+ 00017907  0x000041f9 store  0x00000002 , 0x000046e7 
+ 00017908  0x000041fb setarg  0x00004806 
+ 00017909  0x000041fc store  0x00000002 , 0x000046e2 
+ 00017910  0x000041fd setarg  0x00004807 
+ 00017911  0x000041fe store  0x00000002 , 0x000046e4 
+ 00017912  0x00004200 call  0x000057a3 
+ 00017913  0x00004201 call  0x000047da 
+ 00017914  0x00004202 call  0x00004788 
+ 00017915  0x00004203 call  0x0000476d 
+ 00017916  0x00004204 call  0x00006948 
+ 00017917  0x00004205 call  0x0000477a 
+ 00017918  0x00004206 call  0x00007e38 
+ 00017919  0x00004207 call  0x00007d08 
+ 00017920  0x00004208 call  0x00004793 
+ 00017921  0x00004209 call  0x000047c7 
+ 00017922  0x0000420b bpatch  0x000000f5 , 0x0000401e 
+ 00017923  0x0000420c call  0x0000464f 
+ 00017924  0x0000420d fetch  0x00000001 , 0x000046dd 
+ 00017925  0x0000420e beq  0x00000000 , 0x00004609 
+ 00017926  0x0000420f fetch  0x00000001 , 0x000046de 
+ 00017927  0x00004210 store  0x00000001 , 0x00004686 
+ 00017928  0x00004211 branch  0x0000480e 
+ 00017929  0x00004215 jam  0x000000ff , 0x00004686 
+ 00017930  0x00004216 jam  0x00000001 , 0x000046df 
+ 00017931  0x00004217 branch  0x000046d9 
+ 00017932  0x0000421c fetch  0x00000001 , 0x000046df 
+ 00017933  0x0000421d beq  0x00000002 , 0x000033d0 
+ 00017934  0x0000421e call  0x0000527e 
+ 00017935  0x0000421f fetch  0x00000001 , 0x00004256 
+ 00017936  0x00004220 nbranch  0x000033d0 , 0x00000034 
+ 00017937  0x00004221 branch  0x000033d2 
+ 00017938  0x00004226 copy  0x00000013 , 0x0000003f 
+ 00017939  0x00004228 beq  0x00000001 , 0x00004626 
+ 00017940  0x00004229 beq  0x00000002 , 0x00004629 
+ 00017941  0x0000422a beq  0x00000004 , 0x00004631 
+ 00017942  0x0000422b beq  0x00000005 , 0x00004633 
+ 00017943  0x0000422c beq  0x00000006 , 0x00004635 
+ 00017944  0x0000422d beq  0x00000007 , 0x00004638 
+ 00017945  0x0000422e beq  0x00000012 , 0x0000463c 
+ 00017946  0x0000422f beq  0x00000013 , 0x00004644 
+ 00017947  0x00004230 beq  0x00000027 , 0x00004645 
+ 00017948  0x00004231 beq  0x0000002e , 0x00004648 
+ 00017949  0x00004232 beq  0x0000003d , 0x00004649 
+ 00017950  0x00004234 beq  0x00000014 , 0x00004658 
+ 00017951  0x00004235 beq  0x00000015 , 0x0000465c 
+ 00017952  0x00004236 beq  0x0000003f , 0x0000465f 
+ 00017953  0x00004237 beq  0x00000040 , 0x00004665 
+ 00017954  0x00004239 beq  0x00000010 , 0x0000466b 
+ 00017955  0x0000423a beq  0x0000002c , 0x0000466c 
+ 00017956  0x0000423b beq  0x0000002d , 0x00004677 
+ 00017957  0x0000423c rtn 
+ 00017958  0x00004242 jam  0x00000000 , 0x000046ad 
+ 00017959  0x00004243 jam  0x00000000 , 0x000046ac 
+ 00017960  0x00004244 rtn 
+ 00017961  0x00004248 call  0x0000462b 
+ 00017962  0x00004249 branch  0x00004631 
+ 00017963  0x0000424c jam  0x00000000 , 0x000041e2 
+ 00017964  0x0000424d jam  0x00000000 , 0x00004680 
+ 00017965  0x0000424e jam  0x00000000 , 0x00004205 
+ 00017966  0x0000424f jam  0x00000000 , 0x000046ac 
+ 00017967  0x00004250 jam  0x00000000 , 0x000046ad 
+ 00017968  0x00004251 branch  0x00007e38 
+ 00017969  0x00004255 call  0x000033a9 
+ 00017970  0x00004256 branch  0x000046c2 
+ 00017971  0x0000425a call  0x000046b6 
+ 00017972  0x0000425b branch  0x00003408 
+ 00017973  0x0000425f setarg  0x00000002 
+ 00017974  0x00004260 store  0x00000001 , 0x00004680 
+ 00017975  0x00004261 rtn 
+ 00017976  0x00004265 jam  0x00000000 , 0x000046ac 
+ 00017977  0x00004266 setarg  0x00000001 
+ 00017978  0x00004267 store  0x00000001 , 0x000046ad 
+ 00017979  0x00004268 rtn 
+ 00017980  0x0000426c fetch  0x00000001 , 0x000041e2 
+ 00017981  0x0000426d rtneq  0x00000001 
+ 00017982  0x0000426e jam  0x00000001 , 0x000041e2 
+ 00017983  0x0000426f call  0x00003416 
+ 00017984  0x00004270 call  0x00003414 
+ 00017985  0x00004271 call  0x000046b6 
+ 00017986  0x00004272 call  0x00003408 
+ 00017987  0x00004273 branch  0x0000340e 
+ 00017988  0x00004277 branch  0x00004631 
+ 00017989  0x0000427b setarg  0x00000005 
+ 00017990  0x0000427c store  0x00000001 , 0x000046ac 
+ 00017991  0x0000427d rtn 
+ 00017992  0x00004281 branch  0x000033cd 
+ 00017993  0x00004286 arg  0x00000000 , 0x00000012 
+ 00017994  0x00004287 fetch  0x00000001 , 0x00004217 
+ 00017995  0x00004288 mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00017996  0x00004289 fetch  0x00000002 , 0x00004215 
+ 00017997  0x0000428a copy  0x0000003f , 0x00000011 
+ 00017998  0x0000428b branch  0x00006606 
+ 00017999  0x0000428e arg  0x00000000 , 0x00000012 
+ 00018000  0x0000428f fetch  0x00000001 , 0x0000469a 
+ 00018001  0x00004290 rtnbit0  0x00000001 
+ 00018002  0x00004291 fetch  0x00000001 , 0x00004217 
+ 00018003  0x00004292 rtn  0x00000034 
+ 00018004  0x00004293 mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00018005  0x00004294 fetch  0x00000002 , 0x00004215 
+ 00018006  0x00004295 copy  0x0000003f , 0x00000011 
+ 00018007  0x00004296 branch  0x000065df 
+ 00018008  0x0000429b call  0x000046b6 
+ 00018009  0x0000429c setarg  0x00000000 
+ 00018010  0x0000429d store  0x00000002 , 0x000046b7 
+ 00018011  0x0000429e branch  0x00003408 
+ 00018012  0x000042a2 call  0x00007e38 
+ 00018013  0x000042a3 jam  0x00000000 , 0x000046b0 
+ 00018014  0x000042a4 branch  0x000046d9 
+ 00018015  0x000042a8 call  0x00007e38 
+ 00018016  0x000042a9 jam  0x00000001 , 0x000046b0 
+ 00018017  0x000042aa fetch  0x00000008 , 0x000046c1 
+ 00018018  0x000042ab store  0x00000008 , 0x00004496 
+ 00018019  0x000042ac call  0x00003416 
+ 00018020  0x000042ad branch  0x00005abf 
+ 00018021  0x000042b1 fetch  0x00000002 , 0x00004509 
+ 00018022  0x000042b2 rtneq  0x00000000 
+ 00018023  0x000042b3 fetch  0x00000008 , 0x000046c9 
+ 00018024  0x000042b4 rtn  0x00000034 
+ 00018025  0x000042b5 store  0x00000008 , 0x00004496 
+ 00018026  0x000042b6 branch  0x00005abf 
+ 00018027  0x000042bb branch  0x0000481f 
+ 00018028  0x000042be fetch  0x00000001 , 0x000046dd 
+ 00018029  0x000042bf rtneq  0x00000000 
+ 00018030  0x000042c0 fetch  0x00000001 , 0x000046df 
+ 00018031  0x000042c1 rtnne  0x00000001 
+ 00018032  0x000042c2 call  0x00004672 
+ 00018033  0x000042c3 branch  0x00003406 
+ 00018034  0x000042c6 jam  0x00000001 , 0x000048df 
+ 00018035  0x000042c7 arg  0x0000000b , 0x00000039 
+ 00018036  0x000042c8 arg  0x000048e0 , 0x00000005 
+ 00018037  0x000042c9 arg  0x000048c9 , 0x00000006 
+ 00018038  0x000042ca branch  0x00007f01 
+ 00018039  0x000042cd fetch  0x00000001 , 0x000046dd 
+ 00018040  0x000042ce rtneq  0x00000000 
+ 00018041  0x000042cf fetch  0x00000001 , 0x000046df 
+ 00018042  0x000042d0 beq  0x00000001 , 0x0000467c 
+ 00018043  0x000042d1 branch  0x0000481b 
+ 00018044  0x000042d4 fetch  0x00000001 , 0x000048df 
+ 00018045  0x000042d5 rtnne  0x00000001 
+ 00018046  0x000042d6 jam  0x00000000 , 0x000048df 
+ 00018047  0x000042d7 fetch  0x00000002 , 0x00004682 
+ 00018048  0x000042d8 bbit1  0x00000000 , 0x00003408 
+ 00018049  0x000042d9 bbit1  0x00000009 , 0x00003408 
+ 00018050  0x000042da arg  0x0000000b , 0x00000039 
+ 00018051  0x000042db arg  0x000048e0 , 0x00000006 
+ 00018052  0x000042dc arg  0x000048c9 , 0x00000005 
+ 00018053  0x000042dd branch  0x00007f01 
+ 00018054  0x000042e4 call  0x0000468c 
+ 00018055  0x000042e7 call  0x00004693 
+ 00018056  0x000042ea call  0x0000469e 
+ 00018057  0x000042eb call  0x000046a6 
+ 00018058  0x000042ec call  0x000046a9 
+ 00018059  0x000042ef branch  0x000046ac 
+ 00018060  0x000042f4 arg  0x000046db , 0x00000013 
+ 00018061  0x000042f5 arg  0x0000468f , 0x00000012 
+ 00018062  0x000042f6 branch  0x00003374 
+ 00018063  0x000042f8 jam  0x00000002 , 0x000046df 
+ 00018064  0x000042f9 call  0x00003408 
+ 00018065  0x000042fa call  0x000046f4 
+ 00018066  0x000042fb branch  0x0000480b 
+ 00018067  0x000042ff arg  0x000048ec , 0x00000013 
+ 00018068  0x00004300 arg  0x00004696 , 0x00000012 
+ 00018069  0x00004301 branch  0x0000336d 
+ 00018070  0x00004304 fetch  0x00000002 , 0x00004682 
+ 00018071  0x00004305 bbit1  0x00000009 , 0x0000480b 
+ 00018072  0x00004306 bbit1  0x00000000 , 0x0000480b 
+ 00018073  0x00004307 fetch  0x00000001 , 0x000048c9 
+ 00018074  0x00004308 beq  0x00000001 , 0x0000480b 
+ 00018075  0x00004309 beq  0x00000004 , 0x0000480b 
+ 00018076  0x0000430a beq  0x00000005 , 0x0000480b 
+ 00018077  0x0000430b branch  0x0000340a 
+ 00018078  0x00004310 arg  0x000046ac , 0x00000013 
+ 00018079  0x00004311 arg  0x000046a1 , 0x00000012 
+ 00018080  0x00004312 branch  0x0000336d 
+ 00018081  0x00004315 fetch  0x00000001 , 0x0000027f 
+ 00018082  0x00004316 set1  0x00000000 , 0x0000003f 
+ 00018083  0x00004317 set1  0x00000007 , 0x0000003f 
+ 00018084  0x00004318 store  0x00000001 , 0x0000027f 
+ 00018085  0x00004319 rtn 
+ 00018086  0x0000431c arg  0x00004680 , 0x00000013 
+ 00018087  0x0000431d arg  0x0000463c , 0x00000012 
+ 00018088  0x0000431e branch  0x0000336d 
+ 00018089  0x00004321 arg  0x000046ad , 0x00000013 
+ 00018090  0x00004322 arg  0x000033e9 , 0x00000012 
+ 00018091  0x00004323 branch  0x0000336d 
+ 00018092  0x00004329 fetch  0x00000001 , 0x000046df 
+ 00018093  0x0000432a rtnne  0x00000001 
+ 00018094  0x0000432b arg  0x000046b7 , 0x00000013 
+ 00018095  0x0000432c arg  0x000046c2 , 0x00000012 
+ 00018096  0x0000432d branch  0x00003374 
+ 00018097  0x00004331 call  0x0000473a 
+ 00018098  0x00004332 branch  0x00006978 
+ 00018099  0x00004336 branch  0x0000696c 
+ 00018100  0x00004339 call  0x00006835 
+ 00018101  0x0000433a branch  0x000046b3 
+ 00018102  0x00004341 fetch  0x00000001 , 0x0000469a 
+ 00018103  0x00004342 bbit1  0x00000001 , 0x000046be 
+ 00018104  0x00004343 bbit1  0x00000000 , 0x000046ba 
+ 00018105  0x00004344 rtn 
+ 00018106  0x00004347 fetch  0x00000002 , 0x000046d7 
+ 00018107  0x00004348 store  0x00000002 , 0x000046d9 
+ 00018108  0x00004349 store  0x00000002 , 0x000046db 
+ 00018109  0x0000434a branch  0x000033f8 
+ 00018110  0x0000434d fetch  0x00000002 , 0x000046d3 
+ 00018111  0x0000434e store  0x00000002 , 0x000046d9 
+ 00018112  0x0000434f store  0x00000002 , 0x000046db 
+ 00018113  0x00004350 branch  0x000033f0 
+ 00018114  0x00004353 fetch  0x00000001 , 0x000046df 
+ 00018115  0x00004354 rtnne  0x00000001 
+ 00018116  0x00004355 fetch  0x00000001 , 0x0000469a 
+ 00018117  0x00004356 bbit1  0x00000001 , 0x000046c8 
+ 00018118  0x00004357 bbit1  0x00000000 , 0x000046cc 
+ 00018119  0x00004358 rtn 
+ 00018120  0x0000435b fetch  0x00000002 , 0x000046d1 ,
+ 00018121  0x0000435c store  0x00000002 , 0x000046d9 
+ 00018122  0x0000435d store  0x00000002 , 0x000046db 
+ 00018123  0x0000435e branch  0x000033eb 
+ 00018124  0x00004361 fetch  0x00000002 , 0x00004682 
+ 00018125  0x00004362 rtnbit1  0x00000009 
+ 00018126  0x00004363 fetch  0x00000002 , 0x000046d5 
+ 00018127  0x00004364 store  0x00000002 , 0x000046d9 
+ 00018128  0x00004365 store  0x00000002 , 0x000046db 
+ 00018129  0x00004366 fetch  0x00000002 , 0x000046b3 
+ 00018130  0x00004367 call  0x000046f0 
+ 00018131  0x00004368 call  0x00003404 
+ 00018132  0x00004369 fetch  0x00000004 , 0x000046bd 
+ 00018133  0x0000436a store  0x00000004 , 0x000048cc 
+ 00018134  0x0000436b fetch  0x00000002 , 0x00004682 
+ 00018135  0x0000436c rtnbit1  0x0000000b 
+ 00018136  0x0000436d branch  0x000033fa 
+ 00018137  0x00004371 fetch  0x00000001 , 0x000046df 
+ 00018138  0x00004372 rtnne  0x00000001 
+ 00018139  0x00004373 fetch  0x00000001 , 0x0000469a 
+ 00018140  0x00004374 bbit1  0x00000001 , 0x000046df 
+ 00018141  0x00004375 bbit1  0x00000000 , 0x000046e4 
+ 00018142  0x00004376 rtn 
+ 00018143  0x00004379 call  0x000046f8 
+ 00018144  0x0000437a branch  0x000046c2 , 0x00000034 
+ 00018145  0x0000437b call  0x00003406 
+ 00018146  0x0000437c call  0x000033f0 
+ 00018147  0x0000437d branch  0x000033e1 
+ 00018148  0x00004380 fetch  0x00000002 , 0x000046b7 
+ 00018149  0x00004381 fetcht  0x00000002 , 0x000046b5 
+ 00018150  0x00004382 storet  0x00000002 , 0x000046b7 
+ 00018151  0x00004383 nrtn  0x00000034 
+ 00018152  0x00004384 fetch  0x00000002 , 0x000046b1 
+ 00018153  0x00004385 call  0x000046f0 
+ 00018154  0x00004386 call  0x00003404 
+ 00018155  0x00004387 fetch  0x00000004 , 0x000046b9 
+ 00018156  0x00004388 store  0x00000004 , 0x000048cc 
+ 00018157  0x00004389 fetch  0x00000002 , 0x00004682 
+ 00018158  0x0000438a rtnbit1  0x0000000b 
+ 00018159  0x0000438b branch  0x000033fa 
+ 00018160  0x0000438f store  0x00000002 , 0x00004154 
+ 00018161  0x00004390 increase  0xfffffffc , 0x0000003f 
+ 00018162  0x00004391 store  0x00000002 , 0x00004482 
+ 00018163  0x00004392 rtn 
+ 00018164  0x00004396 fetch  0x00000002 , 0x00004682 
+ 00018165  0x00004397 bbit1  0x00000009 , 0x00003402 
+ 00018166  0x00004398 bbit1  0x00000000 , 0x000033e9 
+ 00018167  0x00004399 branch  0x000046b6 
+ 00018168  0x0000439e fetch  0x00000001 , 0x00004217 
+ 00018169  0x0000439f copy  0x0000003f , 0x00000039 
+ 00018170  0x000043a0 fetch  0x00000002 , 0x00004215 
+ 00018171  0x000043a1 copy  0x0000003f , 0x00000011 
+ 00018172  0x000043a3 ifetch  0x00000002 , 0x00000011 
+ 00018173  0x000043a4 beq  0x00000000 , 0x00004701 
+ 00018174  0x000043a5 increase  0x00000022 , 0x00000011 
+ 00018175  0x000043a6 loop  0x000046fc 
+ 00018176  0x000043a7 branch  0x00007ff1 
+ 00018177  0x000043aa ifetch  0x00000006 , 0x00000006 
+ 00018178  0x000043ab store  0x00000006 , 0x000041d0 
+ 00018179  0x000043ac increase  0x0000000a , 0x00000006 
+ 00018180  0x000043ad arg  0x000041be , 0x00000005 
+ 00018181  0x000043ae call  0x00007ebf 
+ 00018182  0x000043af call  0x000067d7 
+ 00018183  0x000043b0 branch  0x00007fef 
+ 00018184  0x000043b7 call  0x00007fe9 
+ 00018185  0x000043b8 fetch  0x00000002 , 0x00004682 
+ 00018186  0x000043b9 bbit1  0x00000000 , 0x0000470d 
+ 00018187  0x000043ba bbit1  0x00000009 , 0x00004710 
+ 00018188  0x000043bb rtn 
+ 00018189  0x000043be fetch  0x00000001 , 0x00004253 
+ 00018190  0x000043bf rtnne  0x0000003f 
+ 00018191  0x000043c0 branch  0x00007fe7 
+ 00018192  0x000043c3 fetch  0x00000001 , 0x000046b0 
+ 00018193  0x000043c4 rtn  0x00000034 
+ 00018194  0x000043c5 branch  0x00007fe7 
+ 00018195  0x000043cb call  0x00007fe9 
+ 00018196  0x000043cc fetch  0x00000002 , 0x00004682 
+ 00018197  0x000043cd rtnbit1  0x00000000 
+ 00018198  0x000043ce rtnbit1  0x00000009 
+ 00018199  0x000043cf branch  0x00007fe7 
+ 00018200  0x000043d4 fetch  0x00000001 , 0x0000469a 
+ 00018201  0x000043d5 bbit1  0x00000001 , 0x0000471c 
+ 00018202  0x000043d6 bbit1  0x00000000 , 0x0000471f 
+ 00018203  0x000043d7 rtn 
+ 00018204  0x000043da fetch  0x00000001 , 0x00004093 
+ 00018205  0x000043db rtnne  0x00000003 
+ 00018206  0x000043dc branch  0x000046d9 
+ 00018207  0x000043df branch  0x000046d9 
+ 00018208  0x000043e3 disable  0x0000002c 
+ 00018209  0x000043e4 fetch  0x00000002 , 0x000046d9 
+ 00018210  0x000043e5 store  0x00000002 , 0x000046db 
+ 00018211  0x000043e7 call  0x00004713 
+ 00018212  0x000043e8 branch  0x00004718 , 0x00000028 
+ 00018213  0x000043ea call  0x00004708 
+ 00018214  0x000043eb nrtn  0x00000028 
+ 00018215  0x000043ec enable  0x0000002c 
+ 00018216  0x000043ed rtn 
+ 00018217  0x000043f2 call  0x00004720 
+ 00018218  0x000043f3 nrtn  0x0000002c 
+ 00018219  0x000043f4 deposit  0x00000011 
+ 00018220  0x000043f5 branch  0x00004730 , 0x00000034 
+ 00018221  0x000043f7 call  0x00003406 
+ 00018222  0x000043f8 arg  0x000046f1 , 0x00000013 
+ 00018223  0x000043f9 branch  0x00004732 
+ 00018224  0x000043fc call  0x00003408 
+ 00018225  0x000043fd arg  0x00004719 , 0x00000013 
+ 00018226  0x00004400 arg  0x00000005 , 0x0000003f 
+ 00018227  0x00004401 imul32  0x00000007 , 0x0000003f 
+ 00018228  0x00004402 iadd  0x00000013 , 0x00000013 
+ 00018229  0x00004406 ifetch  0x00000001 , 0x00000013 
+ 00018230  0x00004407 rtn  0x00000034 
+ 00018231  0x00004408 call  0x00004762 
+ 00018232  0x00004409 increase  0x00000001 , 0x00000013 
+ 00018233  0x0000440a branch  0x00004735 
+ 00018234  0x0000440e fetch  0x00000002 , 0x00004682 
+ 00018235  0x0000440f bbit1  0x00000009 , 0x0000473e 
+ 00018236  0x00004410 bbit1  0x00000000 , 0x0000474e 
+ 00018237  0x00004411 rtn 
+ 00018238  0x00004414 call  0x00005892 
+ 00018239  0x00004415 nrtn  0x00000034 
+ 00018240  0x00004416 call  0x00004765 
+ 00018241  0x00004417 nrtn  0x00000028 
+ 00018242  0x00004418 pincrease  0xffffffff 
+ 00018243  0x00004419 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018244  0x0000441a arg  0x00004741 , 0x00000002 
+ 00018245  0x0000441b iadd  0x00000002 , 0x00000006 
+ 00018246  0x0000441d ifetch  0x00000001 , 0x00000006 
+ 00018247  0x0000441e copy  0x0000003f , 0x00000011 
+ 00018248  0x0000441f ifetcht  0x00000002 , 0x00000006 
+ 00018249  0x00004420 call  0x00007ea5 
+ 00018250  0x00004421 call  0x00005a64 
+ 00018251  0x00004422 copy  0x00000011 , 0x00000039 
+ 00018252  0x00004423 call  0x00007e9f 
+ 00018253  0x00004424 branch  0x00007f01 
+ 00018254  0x00004428 call  0x00005271 
+ 00018255  0x00004429 nrtn  0x00000034 
+ 00018256  0x0000442a call  0x00004765 
+ 00018257  0x0000442b nrtn  0x00000028 
+ 00018258  0x0000442c pincrease  0xffffffff 
+ 00018259  0x0000442d mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018260  0x0000442e arg  0x000047a0 , 0x00000002 
+ 00018261  0x0000442f iadd  0x00000002 , 0x00000006 
+ 00018262  0x00004430 ifetch  0x00000005 , 0x00000006 
+ 00018263  0x00004431 store  0x00000005 , 0x0000479b 
+ 00018264  0x00004433 fetch  0x00000001 , 0x0000479b 
+ 00018265  0x00004434 copy  0x0000003f , 0x00000011 
+ 00018266  0x00004435 call  0x00004d63 
+ 00018267  0x00004436 fetch  0x00000002 , 0x0000424e 
+ 00018268  0x00004437 istore  0x00000002 , 0x00000005 
+ 00018269  0x00004438 setarg  0x000000a1 
+ 00018270  0x00004439 istore  0x00000001 , 0x00000005 
+ 00018271  0x0000443a fetch  0x00000004 , 0x0000479c 
+ 00018272  0x0000443b istore  0x00000009 , 0x00000005 
+ 00018273  0x0000443c rtn 
+ 00018274  0x00004441 store  0x00000001 , 0x00000a9a 
+ 00018275  0x00004442 arg  0x00000a9a , 0x00000011 
+ 00018276  0x00004443 branch  0x00007e3d 
+ 00018277  0x00004446 arg  0x00000a9a , 0x00000011 
+ 00018278  0x00004447 call  0x00007e54 
+ 00018279  0x00004448 nrtn  0x00000028 
+ 00018280  0x00004449 fetch  0x00000001 , 0x00000a9a 
+ 00018281  0x0000444a rtn 
+ 00018282  0x0000444e fetch  0x00000002 , 0x00000478 
+ 00018283  0x0000444f beq  0x00000018 , 0x0000465f 
+ 00018284  0x00004450 rtn 
+ 00018285  0x00004453 setarg  0x00000002 
+ 00018286  0x00004454 store  0x00000001 , 0x000048eb 
+ 00018287  0x00004456 setarg  0x00200008 
+ 00018288  0x00004457 store  0x00000004 , 0x000046c1 
+ 00018289  0x00004458 setarg  0x012c0005 
+ 00018290  0x00004459 istore  0x00000004 , 0x00000005 
+ 00018291  0x0000445c jam  0x00000017 , 0x000044a6 
+ 00018292  0x0000445f setarg  0x0000001b 
+ 00018293  0x00004460 store  0x00000002 , 0x000044fa 
+ 00018294  0x00004461 call  0x00005810 
+ 00018295  0x00004462 call  0x0000582c 
+ 00018296  0x00004463 call  0x00005839 
+ 00018297  0x00004464 branch  0x00005818 
+ 00018298  0x00004469 arg  0x00000028 , 0x00000039 
+ 00018299  0x0000446a arg  0x00004741 , 0x00000005 
+ 00018300  0x0000446b arg  0x0000949f , 0x00000006 
+ 00018301  0x0000446c call  0x00007ef4 
+ 00018302  0x0000446d arg  0x00000028 , 0x00000039 
+ 00018303  0x0000446e arg  0x000047a0 , 0x00000005 
+ 00018304  0x0000446f arg  0x000094c7 , 0x00000006 
+ 00018305  0x00004470 branch  0x00007ef4 
+ 00018306  0x00004474 arg  0x0000017e , 0x00000039 
+ 00018307  0x00004475 arg  0x0000913a , 0x00000006 
+ 00018308  0x00004476 branch  0x00007ef4 
+ 00018309  0x0000447a arg  0x000001e7 , 0x00000039 
+ 00018310  0x0000447b arg  0x000092b8 , 0x00000006 
+ 00018311  0x0000447c branch  0x00007ef4 
+ 00018312  0x00004481 call  0x000047ae 
+ 00018313  0x00004482 nrtn  0x00000028 
+ 00018314  0x00004483 fetch  0x00000001 , 0x0000469f 
+ 00018315  0x00004484 call  0x00004790 
+ 00018316  0x00004485 fetch  0x00000001 , 0x000046a0 
+ 00018317  0x00004486 call  0x00004790 
+ 00018318  0x00004487 fetch  0x00000001 , 0x000046a1 
+ 00018319  0x00004488 branch  0x00004790 
+ 00018320  0x0000448b rtn  0x00000034 
+ 00018321  0x0000448c or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018322  0x0000448d branch  0x000067f9 
+ 00018323  0x00004491 call  0x000047ae 
+ 00018324  0x00004492 nrtn  0x00000028 
+ 00018325  0x00004493 call  0x00004797 
+ 00018326  0x00004494 branch  0x000047b4 
+ 00018327  0x00004497 arg  0x00000000 , 0x00000011 
+ 00018328  0x00004498 fetch  0x00000001 , 0x0000469f 
+ 00018329  0x00004499 call  0x000047a9 
+ 00018330  0x0000449a nsetflag  0x00000034 , 0x00000000 , 0x00000011 
+ 00018331  0x0000449b fetch  0x00000001 , 0x000046a0 
+ 00018332  0x0000449c call  0x000047a9 
+ 00018333  0x0000449d nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00018334  0x0000449e fetch  0x00000001 , 0x000046a1 
+ 00018335  0x0000449f call  0x000047a9 
+ 00018336  0x000044a0 nsetflag  0x00000034 , 0x00000002 , 0x00000011 
+ 00018337  0x000044a1 copy  0x00000011 , 0x0000003f 
+ 00018338  0x000044a2 store  0x00000001 , 0x000046a9 
+ 00018339  0x000044a3 fetch  0x00000001 , 0x0000469e 
+ 00018340  0x000044a4 imul32  0x00000011 , 0x0000003f 
+ 00018341  0x000044a5 fetcht  0x00000002 , 0x0000469c 
+ 00018342  0x000044a6 iadd  0x00000002 , 0x0000003f 
+ 00018343  0x000044a7 store  0x00000002 , 0x000046aa 
+ 00018344  0x000044a8 rtn 
+ 00018345  0x000044ab rtn  0x00000034 
+ 00018346  0x000044ac or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018347  0x000044ad call  0x0000681d 
+ 00018348  0x000044ae nbranch  0x00007ff1 , 0x00000001 
+ 00018349  0x000044af branch  0x00007fef 
+ 00018350  0x000044b3 call  0x00007fe9 
+ 00018351  0x000044b4 fetch  0x00000001 , 0x000046a8 
+ 00018352  0x000044b5 nrtn  0x00000034 
+ 00018353  0x000044b6 fetch  0x00000001 , 0x0000469b 
+ 00018354  0x000044b7 rtn  0x00000034 
+ 00018355  0x000044b8 branch  0x00007fe7 
+ 00018356  0x000044bc call  0x0000666a 
+ 00018357  0x000044bd fetch  0x00000002 , 0x000046aa 
+ 00018358  0x000044be arg  0x00000ac2 , 0x00000011 
+ 00018359  0x000044bf fetcht  0x00000001 , 0x0000469e 
+ 00018360  0x000044c0 call  0x000066b3 
+ 00018361  0x000044c1 call  0x0000666d 
+ 00018362  0x000044c3 fetch  0x00000001 , 0x00000ac2 
+ 00018363  0x000044c4 copy  0x0000003f , 0x00000039 
+ 00018364  0x000044c5 store  0x00000001 , 0x000043af 
+ 00018365  0x000044c6 call  0x00007ef4 
+ 00018366  0x000044c7 fetch  0x00000001 , 0x00000ac2 
+ 00018367  0x000044c8 copy  0x0000003f , 0x00000039 
+ 00018368  0x000044c9 store  0x00000001 , 0x00004515 
+ 00018369  0x000044ca call  0x00007ef4 
+ 00018370  0x000044cb ifetch  0x00000001 , 0x00000006 
+ 00018371  0x000044cc store  0x00000001 , 0x000046e6 
+ 00018372  0x000044cd ifetch  0x00000001 , 0x00000006 
+ 00018373  0x000044ce store  0x00000001 , 0x000046dd 
+ 00018374  0x000044cf rtn 
+ 00018375  0x000044d3 fetch  0x00000001 , 0x0000469a 
+ 00018376  0x000044d4 rtnbit0  0x00000001 
+ 00018377  0x000044d5 arg  0x00000003 , 0x00000002 
+ 00018378  0x000044d6 fetch  0x00000002 , 0x000046a4 
+ 00018379  0x000044d7 copy  0x0000003f , 0x00000012 
+ 00018380  0x000044d8 arg  0x000046a6 , 0x00000011 
+ 00018381  0x000044d9 call  0x000065df 
+ 00018382  0x000044da fetcht  0x00000002 , 0x000046a6 
+ 00018383  0x000044db setarg  0x00001b3a 
+ 00018384  0x000044dc isub  0x00000002 , 0x0000003e 
+ 00018385  0x000044dd nrtn  0x00000005 
+ 00018386  0x000044de fetch  0x00000001 , 0x000046a8 
+ 00018387  0x000044df rtn  0x00000034 
+ 00018388  0x000044e0 copy  0x0000003f , 0x00000002 
+ 00018389  0x000044e1 fetch  0x00000002 , 0x000046a4 
+ 00018390  0x000044e2 add  0x0000003f , 0x00000003 , 0x00000012 
+ 00018391  0x000044e3 arg  0x00000ac2 , 0x00000011 
+ 00018392  0x000044e4 call  0x000065df 
+ 00018393  0x000044e5 branch  0x000047e8 
+ 00018394  0x000044e8 fetch  0x00000002 , 0x000046a2 
+ 00018395  0x000044e9 rtn  0x00000034 
+ 00018396  0x000044ea call  0x0000666a 
+ 00018397  0x000044eb arg  0x00000001 , 0x00000002 
+ 00018398  0x000044ec arg  0x000046a8 , 0x00000011 
+ 00018399  0x000044ed call  0x000066b3 
+ 00018400  0x000044ef fetch  0x00000001 , 0x000046a8 
+ 00018401  0x000044f0 rtn  0x00000034 
+ 00018402  0x000044f2 fetch  0x00000002 , 0x000046a2 
+ 00018403  0x000044f3 pincrease  0x00000001 
+ 00018404  0x000044f4 arg  0x00000ac2 , 0x00000011 
+ 00018405  0x000044f5 fetcht  0x00000001 , 0x000046a8 
+ 00018406  0x000044f6 call  0x000066b3 
+ 00018407  0x000044f7 call  0x0000666d 
+ 00018408  0x000044f9 call  0x000047ba 
+ 00018409  0x000044fb ifetch  0x00000002 , 0x00000006 
+ 00018410  0x000044fc rtn  0x00000034 
+ 00018411  0x000044fd copy  0x0000003f , 0x00000005 
+ 00018412  0x000044fe ifetcht  0x00000001 , 0x00000006 
+ 00018413  0x000044ff copy  0x00000002 , 0x00000039 
+ 00018414  0x00004500 call  0x00007f01 
+ 00018415  0x00004501 branch  0x000047e9 
+ 00018416  0x00004506 fetch  0x00000001 , 0x0000469a 
+ 00018417  0x00004507 rtnbit0  0x00000001 
+ 00018418  0x00004508 fetch  0x00000002 , 0x000046ae 
+ 00018419  0x00004509 copy  0x0000003f , 0x00000012 
+ 00018420  0x0000450a arg  0x00000004 , 0x00000002 
+ 00018421  0x0000450b arg  0x00000ac2 , 0x00000011 
+ 00018422  0x0000450c call  0x000065df 
+ 00018423  0x0000450d fetch  0x00000001 , 0x00000ac2 
+ 00018424  0x0000450e bne  0x00000001 , 0x000047f9 
+ 00018425  0x00004510 setarg  0x00000001 
+ 00018426  0x00004511 store  0x00000001 , 0x00000ac2 
+ 00018427  0x00004512 force  0x00000003 , 0x00000039 
+ 00018428  0x00004513 call  0x0000630d 
+ 00018429  0x00004514 fetch  0x00000002 , 0x000046ae 
+ 00018430  0x00004515 copy  0x0000003f , 0x00000012 
+ 00018431  0x00004516 arg  0x00000004 , 0x00000002 
+ 00018432  0x00004517 arg  0x00000ac2 , 0x00000011 
+ 00018433  0x00004518 call  0x00006606 
+ 00018434  0x0000451a fetch  0x00000003 , 0x00000ac3 
+ 00018435  0x0000451b store  0x00000003 , 0x000040a0 
+ 00018436  0x0000451c store  0x00000003 , 0x000044a0 
+ 00018437  0x0000451d rtn 
+ 00018438  0x00004521 branch  0x000046d9 
+ 00018439  0x00004525 arg  0x00000000 , 0x00000011 
+ 00018440  0x00004526 arg  0x000048d4 , 0x00000013 
+ 00018441  0x00004527 call  0x00007d24 
+ 00018442  0x00004528 call  0x000046f4 
+ 00018443  0x0000452a fetch  0x00000001 , 0x000048eb 
+ 00018444  0x0000452b store  0x00000001 , 0x000048ec 
+ 00018445  0x0000452c rtn 
+ 00018446  0x00004531 setarg  0x00000000 
+ 00018447  0x00004532 call  0x00004816 
+ 00018448  0x00004533 jam  0x00000001 , 0x00004679 
+ 00018449  0x00004534 call  0x00007cd3 
+ 00018450  0x00004535 call  0x00007cdd 
+ 00018451  0x00004536 fetch  0x00000002 , 0x00004682 
+ 00018452  0x00004537 rtnbit1  0x0000000c 
+ 00018453  0x00004538 branch  0x0000340a 
+ 00018454  0x0000453b fetcht  0x00000002 , 0x0000423f 
+ 00018455  0x0000453c istore  0x00000001 , 0x00000002 
+ 00018456  0x0000453d ifetch  0x00000001 , 0x00000005 
+ 00018457  0x0000453e store  0x00000001 , 0x00004685 
+ 00018458  0x0000453f rtn 
+ 00018459  0x00004543 fetch  0x00000002 , 0x0000423f 
+ 00018460  0x00004544 ifetch  0x00000001 , 0x0000003f 
+ 00018461  0x00004545 rtnne  0x00000000 
+ 00018462  0x00004546 branch  0x0000340a 
+ 00018463  0x0000454a fetcht  0x00000002 , 0x0000423f 
+ 00018464  0x0000454b ifetch  0x00000001 , 0x00000002 
+ 00018465  0x0000454c beq  0x00000001 , 0x0000482a 
+ 00018466  0x0000454e setarg  0x00000001 
+ 00018467  0x0000454f fetcht  0x00000002 , 0x0000423f 
+ 00018468  0x00004550 istore  0x00000001 , 0x00000002 
+ 00018469  0x00004551 add  0x00000002 , 0x00000002 , 0x00000006 
+ 00018470  0x00004552 ifetch  0x00000001 , 0x00000006 
+ 00018471  0x00004553 istore  0x00000001 , 0x00004685 
+ 00018472  0x00004554 ifetch  0x00000002 , 0x00000006 
+ 00018473  0x00004555 branch  0x00007f9c 
+ 00018474  0x00004558 setarg  0x00000002 
+ 00018475  0x00004559 call  0x00004816 
+ 00018476  0x0000455a add  0x00000002 , 0x00000005 , 0x00000006 
+ 00018477  0x0000455b ifetch  0x00000002 , 0x00000006 
+ 00018478  0x0000455c branch  0x0000340a , 0x00000034 
+ 00018479  0x0000455d branch  0x00007f9c 
+ 00018480  0x00004564 store  0x00000006 , 0x00000101 
+ 00018481  0x00004565 fetch  0x00000001 , 0x00000101 
+ 00018482  0x00004566 store  0x00000001 , 0x0000010c 
+ 00018483  0x00004567 ifetch  0x00000001 , 0x00000006 
+ 00018484  0x00004568 store  0x00000001 , 0x0000010b 
+ 00018485  0x00004569 ifetch  0x00000001 , 0x00000006 
+ 00018486  0x0000456a store  0x00000001 , 0x0000010a 
+ 00018487  0x0000456b ifetch  0x00000001 , 0x00000006 
+ 00018488  0x0000456c store  0x00000001 , 0x00000109 
+ 00018489  0x0000456d ifetch  0x00000001 , 0x00000006 
+ 00018490  0x0000456e store  0x00000001 , 0x00000108 
+ 00018491  0x0000456f ifetch  0x00000001 , 0x00000006 
+ 00018492  0x00004570 store  0x00000001 , 0x00000107 
+ 00018493  0x00004571 fetch  0x00000006 , 0x00000107 
+ 00018494  0x00004572 rtn 
+ 00018495  0x00004575 call  0x000068a2 
+ 00018496  0x00004576 fetch  0x00000001 , 0x00004223 
+ 00018497  0x00004577 store  0x00000001 , 0x000044a0 
+ 00018498  0x00004578 fetch  0x00000001 , 0x00004225 
+ 00018499  0x00004579 istore  0x00000001 , 0x00000005 
+ 00018500  0x0000457a fetch  0x00000001 , 0x00004227 
+ 00018501  0x0000457b istore  0x00000001 , 0x00000005 
+ 00018502  0x0000457c fetch  0x00000003 , 0x000044a0 
+ 00018503  0x0000457d store  0x00000003 , 0x000040a0 
+ 00018504  0x0000457e rtn 
+ 00018505  0x0000458b fetch  0x00000002 , 0x00004203 
+ 00018506  0x0000458c iadd  0x00000012 , 0x0000003f 
+ 00018507  0x0000458d byteswap  0x0000003f , 0x0000003f 
+ 00018508  0x0000458e store  0x00000002 , 0x000001f7 
+ 00018509  0x0000458f copy  0x00000002 , 0x00000012 
+ 00018510  0x00004591 call  0x0000489b 
+ 00018511  0x00004592 setarg  0x000000a0 
+ 00018512  0x00004593 call  0x0000488d 
+ 00018513  0x00004594 fetch  0x00000001 , 0x000001f7 
+ 00018514  0x00004595 call  0x0000488d 
+ 00018515  0x00004596 bmark1  0x00000028 , 0x00004856 
+ 00018516  0x00004597 fetch  0x00000001 , 0x000001f8 
+ 00018517  0x00004598 call  0x0000488d 
+ 00018518  0x0000459a call  0x000048a1 
+ 00018519  0x0000459c call  0x0000489b 
+ 00018520  0x0000459d setarg  0x000000a1 
+ 00018521  0x0000459e call  0x0000488d 
+ 00018522  0x000045a1 call  0x0000487f 
+ 00018523  0x000045a2 istore  0x00000001 , 0x00000011 
+ 00018524  0x000045a3 increase  0x00000001 , 0x00000011 
+ 00018525  0x000045a4 increase  0xffffffff , 0x00000012 
+ 00018526  0x000045a5 nbranch  0x0000485a , 0x00000005 
+ 00018527  0x000045a6 branch  0x000048a1 
+ 00018528  0x000045b2 byteswap  0x00000012 , 0x0000003f 
+ 00018529  0x000045b3 store  0x00000002 , 0x000001f7 
+ 00018530  0x000045b4 copy  0x00000002 , 0x00000012 
+ 00018531  0x000045b6 call  0x0000489b 
+ 00018532  0x000045b7 setarg  0x000000a0 
+ 00018533  0x000045b8 call  0x0000488d 
+ 00018534  0x000045ba fetch  0x00000001 , 0x000001f7 
+ 00018535  0x000045bb call  0x0000488d 
+ 00018536  0x000045bc bmark1  0x00000028 , 0x0000486b 
+ 00018537  0x000045bd fetch  0x00000001 , 0x000001f8 
+ 00018538  0x000045be call  0x0000488d 
+ 00018539  0x000045c0 ifetch  0x00000001 , 0x00000011 
+ 00018540  0x000045c1 call  0x0000488d 
+ 00018541  0x000045c2 increase  0x00000001 , 0x00000011 
+ 00018542  0x000045c3 increase  0xffffffff , 0x00000012 
+ 00018543  0x000045c4 nbranch  0x0000486b , 0x00000005 
+ 00018544  0x000045c5 branch  0x000048a1 
+ 00018545  0x000045ca arg  0x0000000a , 0x00000039 
+ 00018546  0x000045cb call  0x000048be 
+ 00018547  0x000045cc call  0x000048a6 
+ 00018548  0x000045cd call  0x000048d2 
+ 00018549  0x000045cf call  0x000048c7 
+ 00018550  0x000045d0 branch  0x000048a9 , 0x00000034 
+ 00018551  0x000045d1 loop  0x00004875 
+ 00018552  0x000045d2 branch  0x000048a9 
+ 00018553  0x000045d7 call  0x000048a9 
+ 00018554  0x000045d8 call  0x000048af 
+ 00018555  0x000045d9 call  0x000048d2 
+ 00018556  0x000045da call  0x000048a6 
+ 00018557  0x000045db call  0x000048d2 
+ 00018558  0x000045dc branch  0x000048a9 
+ 00018559  0x000045e2 arg  0x00000008 , 0x00000039 
+ 00018560  0x000045e3 arg  0x00000000 , 0x00000013 
+ 00018561  0x000045e4 call  0x000048be 
+ 00018562  0x000045e6 call  0x000048a6 
+ 00018563  0x000045e7 call  0x000048d2 
+ 00018564  0x000045e8 lshift  0x00000013 , 0x00000013 
+ 00018565  0x000045e9 call  0x000048c7 
+ 00018566  0x000045ea iadd  0x00000013 , 0x00000013 
+ 00018567  0x000045eb call  0x000048d2 
+ 00018568  0x000045ec call  0x000048a9 
+ 00018569  0x000045ed loop  0x00004882 
+ 00018570  0x000045ee call  0x00004879 
+ 00018571  0x000045ef copy  0x00000013 , 0x0000003f 
+ 00018572  0x000045f0 rtn 
+ 00018573  0x000045f5 arg  0x00000008 , 0x00000039 
+ 00018574  0x000045f6 copy  0x0000003f , 0x00000013 
+ 00018575  0x000045f7 call  0x000048a9 
+ 00018576  0x000045f9 isolate1  0x00000007 , 0x00000013 
+ 00018577  0x000045fa call  0x000048ac , 0x00000001 
+ 00018578  0x000045fb ncall  0x000048af , 0x00000001 
+ 00018579  0x000045fc lshift  0x00000013 , 0x00000013 
+ 00018580  0x000045fd call  0x000048d2 
+ 00018581  0x000045fe call  0x000048a6 
+ 00018582  0x000045ff call  0x000048d2 
+ 00018583  0x00004600 call  0x000048a9 
+ 00018584  0x00004601 call  0x000048d2 
+ 00018585  0x00004602 loop  0x00004890 
+ 00018586  0x00004603 branch  0x00004871 
+ 00018587  0x00004608 call  0x000048ac 
+ 00018588  0x00004609 call  0x000048a6 
+ 00018589  0x0000460a call  0x000048d2 
+ 00018590  0x0000460b call  0x000048af 
+ 00018591  0x0000460c call  0x000048d2 
+ 00018592  0x0000460d branch  0x000048a9 
+ 00018593  0x00004612 call  0x000048af 
+ 00018594  0x00004613 call  0x000048a6 
+ 00018595  0x00004614 call  0x000048d2 
+ 00018596  0x00004615 call  0x000048ac 
+ 00018597  0x00004616 branch  0x000048d2 
+ 00018598  0x0000461b enable  0x00000028 
+ 00018599  0x0000461c fetch  0x00000001 , 0x00004ffe 
+ 00018600  0x0000461d branch  0x000048b2 
+ 00018601  0x00004621 disable  0x00000028 
+ 00018602  0x00004622 fetch  0x00000001 , 0x00004ffe 
+ 00018603  0x00004623 branch  0x000048b2 
+ 00018604  0x00004627 enable  0x00000028 
+ 00018605  0x00004628 fetch  0x00000001 , 0x00004fff 
+ 00018606  0x00004629 branch  0x000048b2 
+ 00018607  0x0000462d disable  0x00000028 
+ 00018608  0x0000462e fetch  0x00000001 , 0x00004fff 
+ 00018609  0x0000462f branch  0x000048b2 
+ 00018610  0x00004635 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018611  0x00004636 rshift3  0x0000003f , 0x0000003f 
+ 00018612  0x00004637 arg  0x00008070 , 0x00000002 
+ 00018613  0x00004638 iadd  0x00000002 , 0x00000002 
+ 00018614  0x00004639 ifetch  0x00000001 , 0x00000002 
+ 00018615  0x0000463a qset1  0x0000003f 
+ 00018616  0x0000463b istore  0x00000001 , 0x00000002 
+ 00018617  0x0000463c increase  0x00000004 , 0x00000002 
+ 00018618  0x0000463d ifetch  0x00000001 , 0x00000002 
+ 00018619  0x0000463e qsetflag  0x00000028 , 0x0000003f 
+ 00018620  0x0000463f istore  0x00000001 , 0x00000002 
+ 00018621  0x00004640 rtn 
+ 00018622  0x00004644 fetch  0x00000001 , 0x00004fff 
+ 00018623  0x00004645 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018624  0x00004646 rshift3  0x0000003f , 0x0000003f 
+ 00018625  0x00004647 arg  0x00008070 , 0x00000002 
+ 00018626  0x00004648 iadd  0x00000002 , 0x00000002 
+ 00018627  0x00004649 ifetch  0x00000001 , 0x00000002 
+ 00018628  0x0000464a qset0  0x0000003f 
+ 00018629  0x0000464b istore  0x00000001 , 0x00000002 
+ 00018630  0x0000464c rtn 
+ 00018631  0x00004652 nop  0x00000004 
+ 00018632  0x00004653 fetch  0x00000001 , 0x00004fff 
+ 00018633  0x00004654 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018634  0x00004655 rshift3  0x0000003f , 0x0000003f 
+ 00018635  0x00004656 arg  0x0000811c , 0x00000002 
+ 00018636  0x00004657 iadd  0x00000002 , 0x00000002 
+ 00018637  0x00004658 setarg  0x00000000 
+ 00018638  0x00004659 ifetcht  0x00000001 , 0x00000002 
+ 00018639  0x0000465a qisolate1  0x00000002 
+ 00018640  0x0000465b setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00018641  0x0000465c rtn 
+ 00018642  0x00004661 rtn 
+ 00018643  0x00004668 bpatch  0x000000f6 , 0x0000401e 
+ 00018644  0x00004669 hfetch  0x00000001 , 0x00008a26 
+ 00018645  0x0000466a isolate1  0x00000007 , 0x0000003f 
+ 00018646  0x0000466b call  0x000048ea , 0x00000001 
+ 00018647  0x0000466c call  0x0000492e 
+ 00018648  0x0000466d hfetch  0x00000001 , 0x00008a26 
+ 00018649  0x0000466e store  0x00000001 , 0x00000b22 
+ 00018650  0x0000466f hfetch  0x00000001 , 0x00008a27 
+ 00018651  0x00004670 store  0x00000001 , 0x00000b23 
+ 00018652  0x00004671 hstore  0x00000001 , 0x00008a27 
+ 00018653  0x00004672 pinvert 
+ 00018654  0x00004673 fetcht  0x00000001 , 0x00000d37 
+ 00018655  0x00004674 iand  0x00000002 , 0x0000003f 
+ 00018656  0x00004675 store  0x00000001 , 0x00000d37 
+ 00018657  0x00004676 jam  0x000000e0 , 0x00008a26 
+ 00018658  0x00004677 fetch  0x00000001 , 0x00000b23 
+ 00018659  0x00004678 compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018660  0x00004679 call  0x00004941 , 0x00000001 
+ 00018661  0x0000467a fetch  0x00000001 , 0x00000b22 
+ 00018662  0x0000467b compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018663  0x0000467c call  0x0000494a , 0x00000001 
+ 00018664  0x0000467d call  0x00004b61 
+ 00018665  0x0000467e branch  0x00004903 
+ 00018666  0x00004681 bpatch  0x000000f7 , 0x0000401e 
+ 00018667  0x00004682 call  0x00004919 
+ 00018668  0x00004683 jam  0x00000000 , 0x00008a00 
+ 00018669  0x00004684 nop  0x00002710 
+ 00018670  0x00004685 jam  0x000000c0 , 0x00008a10 
+ 00018671  0x00004686 hfetch  0x00000002 , 0x00008050 
+ 00018672  0x00004687 set0  0x0000000a , 0x0000003f 
+ 00018673  0x00004688 hstore  0x00000002 , 0x00008050 
+ 00018674  0x00004689 jam  0x0000003c , 0x00008a00 
+ 00018675  0x0000468a jam  0x000000ff , 0x00008a26 
+ 00018676  0x0000468b jam  0x000000ff , 0x00008a27 
+ 00018677  0x0000468c jam  0x00000000 , 0x00008a04 
+ 00018678  0x0000468d jam  0x00000002 , 0x00000c6b 
+ 00018679  0x0000468e setarg  0x00000d9d 
+ 00018680  0x0000468f arg  0x00000c6e , 0x00000005 
+ 00018681  0x00004690 isub  0x00000005 , 0x00000039 
+ 00018682  0x00004691 branch  0x00007ed4 
+ 00018683  0x00004694 fetcht  0x00000001 , 0x00000c6c 
+ 00018684  0x00004695 branch  0x000067fb 
+ 00018685  0x00004697 fetch  0x00000001 , 0x00000d45 
+ 00018686  0x00004698 rtn  0x00000034 
+ 00018687  0x00004699 fetcht  0x00000001 , 0x00000c6c 
+ 00018688  0x0000469a call  0x0000681d 
+ 00018689  0x0000469b branch  0x000048ea , 0x00000001 
+ 00018690  0x0000469c rtn 
+ 00018691  0x000046a0 arg  0x00000000 , 0x00000007 
+ 00018692  0x000046a1 call  0x00007f16 
+ 00018693  0x000046a2 nrtn  0x00000034 
+ 00018694  0x000046a3 fetch  0x00000001 , 0x00000d46 
+ 00018695  0x000046a4 nrtn  0x00000034 
+ 00018696  0x000046a5 fetch  0x00000001 , 0x00000d45 
+ 00018697  0x000046a6 ncall  0x00004bb7 , 0x00000034 
+ 00018698  0x000046a7 rtn 
+ 00018699  0x000046aa arg  0x00000b68 , 0x00000005 
+ 00018700  0x000046ab setsect  0x00000000 , 0x00011212 
+ 00018701  0x000046ac setsect  0x00000001 , 0x00008000 
+ 00018702  0x000046ad setsect  0x00000002 , 0x00000000 
+ 00018703  0x000046ae setsect  0x00000003 , 0x00010000 
+ 00018704  0x000046af istore  0x00000009 , 0x00000005 
+ 00018705  0x000046b0 setsect  0x00000000 , 0x00022412 
+ 00018706  0x000046b1 setsect  0x00000001 , 0x00008604 
+ 00018707  0x000046b2 setsect  0x00000002 , 0x00001000 
+ 00018708  0x000046b3 setsect  0x00000003 , 0x00000008 
+ 00018709  0x000046b4 istore  0x00000009 , 0x00000005 
+ 00018710  0x000046b5 setsect  0x00000000 , 0x00000001 
+ 00018711  0x000046b6 istore  0x00000001 , 0x00000005 
+ 00018712  0x000046b7 rtn 
+ 00018713  0x000046ba jam  0x00000002 , 0x00000c6b 
+ 00018714  0x000046bb setarg  0x00000000 
+ 00018715  0x000046bc store  0x00000001 , 0x00000b67 
+ 00018716  0x000046bd store  0x00000002 , 0x00000c65 
+ 00018717  0x000046be pincrease  0x00000001 
+ 00018718  0x000046bf store  0x00000002 , 0x00000c67 
+ 00018719  0x000046c0 pincrease  0x00000001 
+ 00018720  0x000046c1 store  0x00000002 , 0x00000c69 
+ 00018721  0x000046c2 setarg  0x00008ffa 
+ 00018722  0x000046c3 store  0x00000002 , 0x00000b7c 
+ 00018723  0x000046c4 setarg  0x0000903a 
+ 00018724  0x000046c5 store  0x00000002 , 0x00000b7e 
+ 00018725  0x000046c6 arg  0x00000b80 , 0x00000005 
+ 00018726  0x000046c7 arg  0x000090fe , 0x00000006 
+ 00018727  0x000046c8 call  0x00007eb3 
+ 00018728  0x000046c9 fetch  0x00000001 , 0x00000c6d 
+ 00018729  0x000046ca ncall  0x0000492b , 0x00000034 
+ 00018730  0x000046cb branch  0x0000490b 
+ 00018731  0x000046ce store  0x00000001 , 0x00000ba2 
+ 00018732  0x000046cf store  0x00000001 , 0x00000bbb 
+ 00018733  0x000046d0 rtn 
+ 00018734  0x000046d2 hfetch  0x00000001 , 0x00008a26 
+ 00018735  0x000046d3 bbit1  0x00000006 , 0x00004931 
+ 00018736  0x000046d4 rtn 
+ 00018737  0x000046d7 call  0x00004936 
+ 00018738  0x000046d8 call  0x00007f15 
+ 00018739  0x000046d9 setarg  0x00000280 
+ 00018740  0x000046da arg  0x00000000 , 0x00000007 
+ 00018741  0x000046db branch  0x00007f08 
+ 00018742  0x000046de fetch  0x00000001 , 0x00000d36 
+ 00018743  0x000046df bne  0x00000002 , 0x0000493b 
+ 00018744  0x000046e0 jam  0x00000000 , 0x00000d46 
+ 00018745  0x000046e1 jam  0x00000000 , 0x00000d47 
+ 00018746  0x000046e2 rtn 
+ 00018747  0x000046e4 fetch  0x00000001 , 0x00000d53 
+ 00018748  0x000046e5 rtn  0x00000034 
+ 00018749  0x000046e6 jam  0x00000000 , 0x00000d53 
+ 00018750  0x000046e7 jam  0x00000002 , 0x00000d36 
+ 00018751  0x000046e8 jam  0x00000001 , 0x00000d45 
+ 00018752  0x000046e9 rtn 
+ 00018753  0x000046ec jam  0x00000001 , 0x00008a27 
+ 00018754  0x000046ed branch  0x00004b37 
+ 00018755  0x000046f0 fetch  0x00000001 , 0x00000b22 
+ 00018756  0x000046f1 bbit1  0x00000004 , 0x00004955 
+ 00018757  0x000046f2 rtn 
+ 00018758  0x000046f5 hfetch  0x00000001 , 0x00008a18 
+ 00018759  0x000046f6 istore  0x00000001 , 0x00000005 
+ 00018760  0x000046f7 loop  0x00004946 
+ 00018761  0x000046f8 rtn 
+ 00018762  0x000046fb bpatch  0x000000f8 , 0x0000401f 
+ 00018763  0x000046fc jam  0x00000011 , 0x00008a26 
+ 00018764  0x000046fd hfetch  0x00000001 , 0x00008a20 
+ 00018765  0x000046fe store  0x00000001 , 0x00000b24 
+ 00018766  0x000046ff copy  0x0000003f , 0x00000039 
+ 00018767  0x00004700 branch  0x00004943 , 0x00000034 
+ 00018768  0x00004701 arg  0x00000c6e , 0x00000005 
+ 00018769  0x00004702 call  0x00004946 
+ 00018770  0x00004703 fetch  0x00000001 , 0x00000b24 
+ 00018771  0x00004704 sub  0x0000003f , 0x00000007 , 0x0000003e 
+ 00018772  0x00004705 rtn  0x00000002 
+ 00018773  0x00004707 fetch  0x00000001 , 0x00000c6e 
+ 00018774  0x00004708 and_into  0x00000080 , 0x0000003f 
+ 00018775  0x00004709 beq  0x00000080 , 0x0000495a 
+ 00018776  0x0000470a beq  0x00000000 , 0x00004962 
+ 00018777  0x0000470b branch  0x00002a8c 
+ 00018778  0x0000470e fetch  0x00000001 , 0x00000c6e 
+ 00018779  0x0000470f rshift4  0x0000003f , 0x0000003f 
+ 00018780  0x00004710 rshift  0x0000003f , 0x0000003f 
+ 00018781  0x00004711 and_into  0x00000003 , 0x0000003f 
+ 00018782  0x00004712 beq  0x00000000 , 0x0000496a 
+ 00018783  0x00004713 beq  0x00000001 , 0x00004970 
+ 00018784  0x00004714 beq  0x00000002 , 0x00004975 
+ 00018785  0x00004715 branch  0x00002a8c 
+ 00018786  0x00004718 fetch  0x00000001 , 0x00000c6e 
+ 00018787  0x00004719 rshift4  0x0000003f , 0x0000003f 
+ 00018788  0x0000471a rshift  0x0000003f , 0x0000003f 
+ 00018789  0x0000471b and_into  0x00000003 , 0x0000003f 
+ 00018790  0x0000471c beq  0x00000000 , 0x00004976 
+ 00018791  0x0000471d beq  0x00000001 , 0x0000497e 
+ 00018792  0x0000471e beq  0x00000002 , 0x00004983 
+ 00018793  0x0000471f branch  0x00002a8c 
+ 00018794  0x00004722 fetch  0x00000001 , 0x00000c6f 
+ 00018795  0x00004723 beq  0x00000008 , 0x0000498a 
+ 00018796  0x00004724 beq  0x00000006 , 0x000049a0 
+ 00018797  0x00004725 beq  0x0000000a , 0x000049ea 
+ 00018798  0x00004726 beq  0x00000000 , 0x000049fc 
+ 00018799  0x00004727 branch  0x00004984 
+ 00018800  0x0000472a fetch  0x00000001 , 0x00000c6f 
+ 00018801  0x0000472b beq  0x00000002 , 0x00004a2f 
+ 00018802  0x0000472c beq  0x00000001 , 0x00004a33 
+ 00018803  0x0000472d beq  0x00000003 , 0x00004a45 
+ 00018804  0x0000472e branch  0x00004984 
+ 00018805  0x00004731 branch  0x00004984 
+ 00018806  0x00004734 fetch  0x00000001 , 0x00000c6f 
+ 00018807  0x00004735 beq  0x00000001 , 0x00004a4f 
+ 00018808  0x00004736 beq  0x00000003 , 0x00004a79 
+ 00018809  0x00004737 beq  0x00000005 , 0x00004aa3 
+ 00018810  0x00004738 beq  0x00000009 , 0x00004abc 
+ 00018811  0x00004739 beq  0x0000000b , 0x00004ad7 
+ 00018812  0x0000473a beq  0x00000007 , 0x00004984 
+ 00018813  0x0000473b branch  0x00004984 
+ 00018814  0x0000473e fetch  0x00000001 , 0x00000c6f 
+ 00018815  0x0000473f beq  0x0000000a , 0x00004ae8 
+ 00018816  0x00004740 beq  0x00000009 , 0x00004af9 
+ 00018817  0x00004741 beq  0x0000000b , 0x00004b11 
+ 00018818  0x00004742 branch  0x00004984 
+ 00018819  0x00004745 branch  0x00004984 
+ 00018820  0x00004748 hfetch  0x00000001 , 0x00008a11 
+ 00018821  0x00004749 set1  0x00000000 , 0x0000003f 
+ 00018822  0x0000474a hstore  0x00000001 , 0x00008a11 
+ 00018823  0x0000474b branch  0x00004988 
+ 00018824  0x0000474e jam  0x00000040 , 0x00008a12 
+ 00018825  0x0000474f rtn 
+ 00018826  0x00004752 fetch  0x00000001 , 0x00000c6e 
+ 00018827  0x00004753 bne  0x00000080 , 0x00004984 
+ 00018828  0x00004754 fetch  0x00000001 , 0x00000c72 
+ 00018829  0x00004755 bne  0x00000000 , 0x00004984 
+ 00018830  0x00004756 fetch  0x00000001 , 0x00000c73 
+ 00018831  0x00004757 bne  0x00000000 , 0x00004984 
+ 00018832  0x00004758 fetch  0x00000001 , 0x00000c74 
+ 00018833  0x00004759 bne  0x00000001 , 0x00004984 
+ 00018834  0x0000475a fetch  0x00000001 , 0x00000c75 
+ 00018835  0x0000475b bne  0x00000000 , 0x00004984 
+ 00018836  0x0000475c fetch  0x00000001 , 0x00000c70 
+ 00018837  0x0000475d bne  0x00000000 , 0x00004984 
+ 00018838  0x0000475e fetch  0x00000001 , 0x00000c71 
+ 00018839  0x0000475f bne  0x00000000 , 0x00004984 
+ 00018840  0x00004760 fetch  0x00000001 , 0x00000c6b 
+ 00018841  0x00004761 beq  0x00000004 , 0x0000499c 
+ 00018842  0x00004762 beq  0x00000003 , 0x0000499e 
+ 00018843  0x00004763 branch  0x00004984 
+ 00018844  0x00004766 arg  0x00000001 , 0x00000012 
+ 00018845  0x00004767 branch  0x00004a14 
+ 00018846  0x0000476a arg  0x00000001 , 0x00000012 
+ 00018847  0x0000476b branch  0x00004a12 
+ 00018848  0x0000476e bpatch  0x000000f9 , 0x0000401f 
+ 00018849  0x0000476f set0  0x00000023 , 0x00000000 
+ 00018850  0x00004770 fetch  0x00000001 , 0x00000c71 
+ 00018851  0x00004771 beq  0x00000001 , 0x000049b6 
+ 00018852  0x00004772 beq  0x00000002 , 0x000049cf 
+ 00018853  0x00004773 beq  0x00000003 , 0x000049d2 
+ 00018854  0x00004774 beq  0x00000021 , 0x000049a9 
+ 00018855  0x00004775 beq  0x00000022 , 0x000049e0 
+ 00018856  0x00004776 branch  0x00004984 
+ 00018857  0x00004779 jam  0x00000000 , 0x00000d4b 
+ 00018858  0x0000477a fetch  0x00000001 , 0x00000c72 
+ 00018859  0x0000477b beq  0x00000000 , 0x000049ae 
+ 00018860  0x0000477c beq  0x00000001 , 0x000049b2 
+ 00018861  0x0000477d branch  0x00004984 
+ 00018862  0x00004780 arg  0x00000b93 , 0x00000011 
+ 00018863  0x00004781 ifetch  0x00000001 , 0x00000011 
+ 00018864  0x00004782 iforce  0x00000012 
+ 00018865  0x00004783 branch  0x00004b21 
+ 00018866  0x00004786 arg  0x00000bac , 0x00000011 
+ 00018867  0x00004787 ifetch  0x00000001 , 0x00000011 
+ 00018868  0x00004788 iforce  0x00000012 
+ 00018869  0x00004789 branch  0x00004b21 
+ 00018870  0x0000478f fetch  0x00000001 , 0x00000d48 
+ 00018871  0x00004790 ncall  0x000049c7 , 0x00000034 
+ 00018872  0x00004791 setarg  0x00000b68 
+ 00018873  0x00004792 fetcht  0x00000001 , 0x00000b68 
+ 00018874  0x00004794 store  0x00000002 , 0x00000d3f 
+ 00018875  0x00004795 storet  0x00000001 , 0x00000d41 
+ 00018876  0x00004796 fetch  0x00000001 , 0x00000c74 
+ 00018877  0x00004797 isub  0x00000002 , 0x0000003e 
+ 00018878  0x00004798 nbranch  0x000049c5 , 0x00000002 
+ 00018879  0x0000479a fetch  0x00000001 , 0x00000d41 
+ 00018880  0x0000479c iforce  0x00000012 
+ 00018881  0x0000479d fetch  0x00000002 , 0x00000d3f 
+ 00018882  0x0000479e add  0x0000003f , 0x00000001 , 0x0000003f 
+ 00018883  0x0000479f iforce  0x00000011 
+ 00018884  0x000047a0 branch  0x00004b21 
+ 00018885  0x000047a2 fetch  0x00000001 , 0x00000c74 
+ 00018886  0x000047a3 branch  0x000049c0 
+ 00018887  0x000047a6 hfetch  0x00000001 , 0x00008a04 
+ 00018888  0x000047a7 ncall  0x000049cb , 0x00000034 
+ 00018889  0x000047a8 jam  0x00000000 , 0x00000d48 
+ 00018890  0x000047a9 rtn 
+ 00018891  0x000047ab hfetch  0x00000001 , 0x00008a04 
+ 00018892  0x000047ac set1  0x00000007 , 0x0000003f 
+ 00018893  0x000047ad hstore  0x00000001 , 0x00008a04 
+ 00018894  0x000047ae rtn 
+ 00018895  0x000047b1 setarg  0x00000b80 
+ 00018896  0x000047b2 fetcht  0x00000001 , 0x00000b80 
+ 00018897  0x000047b3 branch  0x000049ba 
+ 00018898  0x000047b6 fetch  0x00000001 , 0x00000c70 
+ 00018899  0x000047b7 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00018900  0x000047b8 nbranch  0x00004984 , 0x00000002 
+ 00018901  0x000047b9 fetch  0x00000001 , 0x00000c70 
+ 00018902  0x000047ba arg  0x00000be4 , 0x00000011 
+ 00018903  0x000047bb beq  0x00000000 , 0x00004b1e 
+ 00018904  0x000047bc set1  0x00000023 , 0x00000000 
+ 00018905  0x000047bd arg  0x00000be9 , 0x00000011 
+ 00018906  0x000047be beq  0x00000001 , 0x00004b1e 
+ 00018907  0x000047bf arg  0x00000c07 , 0x00000011 
+ 00018908  0x000047c0 beq  0x00000002 , 0x00004b1e 
+ 00018909  0x000047c1 arg  0x00000c47 , 0x00000011 
+ 00018910  0x000047c2 beq  0x00000003 , 0x00004b1e 
+ 00018911  0x000047c3 rtn 
+ 00018912  0x000047c6 fetch  0x00000002 , 0x00000c72 
+ 00018913  0x000047c7 beq  0x00000001 , 0x000049e5 
+ 00018914  0x000047c8 fetch  0x00000002 , 0x00000b7c 
+ 00018915  0x000047c9 copy  0x0000003f , 0x00000011 
+ 00018916  0x000047cb branch  0x00004b1e 
+ 00018917  0x000047cd jam  0x00000001 , 0x00000d45 
+ 00018918  0x000047ce jam  0x00000001 , 0x00000d36 
+ 00018919  0x000047cf fetch  0x00000002 , 0x00000b7e 
+ 00018920  0x000047d0 copy  0x0000003f , 0x00000011 
+ 00018921  0x000047d2 branch  0x00004b1e 
+ 00018922  0x000047d6 fetch  0x00000001 , 0x00000c6b 
+ 00018923  0x000047d7 bne  0x00000004 , 0x00004984 
+ 00018924  0x000047d8 fetch  0x00000001 , 0x00000c6e 
+ 00018925  0x000047d9 bne  0x00000081 , 0x00004984 
+ 00018926  0x000047da fetch  0x00000001 , 0x00000c70 
+ 00018927  0x000047db bne  0x00000000 , 0x00004984 
+ 00018928  0x000047dc fetch  0x00000001 , 0x00000c71 
+ 00018929  0x000047dd bne  0x00000000 , 0x00004984 
+ 00018930  0x000047de fetch  0x00000001 , 0x00000c74 
+ 00018931  0x000047df bne  0x00000001 , 0x00004984 
+ 00018932  0x000047e0 fetch  0x00000001 , 0x00000c75 
+ 00018933  0x000047e1 bne  0x00000000 , 0x00004984 
+ 00018934  0x000047e2 fetch  0x00000001 , 0x00000c72 
+ 00018935  0x000047e3 bne  0x00000000 , 0x00004984 
+ 00018936  0x000047e4 fetch  0x00000001 , 0x00000c73 
+ 00018937  0x000047e5 bne  0x00000000 , 0x00004984 
+ 00018938  0x000047e6 arg  0x00000001 , 0x00000012 
+ 00018939  0x000047e7 branch  0x00004a12 
+ 00018940  0x000047eb fetch  0x00000001 , 0x00000c6b 
+ 00018941  0x000047ec beq  0x00000002 , 0x00004984 
+ 00018942  0x000047ed fetch  0x00000001 , 0x00000c70 
+ 00018943  0x000047ee bne  0x00000000 , 0x00004984 
+ 00018944  0x000047ef fetch  0x00000001 , 0x00000c71 
+ 00018945  0x000047f0 bne  0x00000000 , 0x00004984 
+ 00018946  0x000047f1 fetch  0x00000001 , 0x00000c74 
+ 00018947  0x000047f2 bne  0x00000002 , 0x00004984 
+ 00018948  0x000047f3 fetch  0x00000001 , 0x00000c75 
+ 00018949  0x000047f4 bne  0x00000000 , 0x00004984 
+ 00018950  0x000047f5 fetch  0x00000001 , 0x00000c73 
+ 00018951  0x000047f6 bne  0x00000000 , 0x00004984 
+ 00018952  0x000047f7 fetch  0x00000001 , 0x00000c6e 
+ 00018953  0x000047f8 beq  0x00000080 , 0x00004a0d 
+ 00018954  0x000047f9 beq  0x00000081 , 0x00004a18 
+ 00018955  0x000047fa beq  0x00000082 , 0x00004a1c 
+ 00018956  0x000047fb branch  0x00004984 
+ 00018957  0x000047fe fetch  0x00000001 , 0x00000c72 
+ 00018958  0x000047ff bne  0x00000000 , 0x00004984 
+ 00018959  0x00004800 arg  0x00000002 , 0x00000012 
+ 00018960  0x00004801 fetch  0x00000001 , 0x00000d39 
+ 00018961  0x00004802 beq  0x00000001 , 0x00004a16 
+ 00018962  0x00004805 arg  0x00000c65 , 0x00000011 
+ 00018963  0x00004806 branch  0x00004b21 
+ 00018964  0x00004808 arg  0x00000c67 , 0x00000011 
+ 00018965  0x00004809 branch  0x00004b21 
+ 00018966  0x0000480b arg  0x00000c69 , 0x00000011 
+ 00018967  0x0000480c branch  0x00004b21 
+ 00018968  0x0000480f fetch  0x00000001 , 0x00000c6b 
+ 00018969  0x00004810 bne  0x00000004 , 0x00004984 
+ 00018970  0x00004811 arg  0x00000002 , 0x00000012 
+ 00018971  0x00004812 branch  0x00004a12 
+ 00018972  0x00004815 fetch  0x00000001 , 0x00000c6b 
+ 00018973  0x00004816 bne  0x00000004 , 0x00004984 
+ 00018974  0x00004817 fetch  0x00000001 , 0x00000c72 
+ 00018975  0x00004818 beq  0x00000081 , 0x00004a29 
+ 00018976  0x00004819 beq  0x00000082 , 0x00004a2b 
+ 00018977  0x0000481a beq  0x00000083 , 0x00004a2d 
+ 00018978  0x0000481b and_into  0x0000007f , 0x0000003f 
+ 00018979  0x0000481c beq  0x00000000 , 0x00004a25 
+ 00018980  0x0000481d branch  0x00004984 
+ 00018981  0x00004820 fetch  0x00000001 , 0x00000d3b 
+ 00018982  0x00004822 arg  0x00000002 , 0x00000012 
+ 00018983  0x00004823 beq  0x00000001 , 0x00004a14 
+ 00018984  0x00004824 branch  0x00004a12 
+ 00018985  0x00004826 fetch  0x00000001 , 0x00000d3c 
+ 00018986  0x00004827 branch  0x00004a26 
+ 00018987  0x00004829 fetch  0x00000001 , 0x00000d3d 
+ 00018988  0x0000482a branch  0x00004a26 
+ 00018989  0x0000482c fetch  0x00000001 , 0x00000d3e 
+ 00018990  0x0000482d branch  0x00004a26 
+ 00018991  0x00004830 jam  0x00000001 , 0x00000d4c 
+ 00018992  0x00004831 arg  0x00000d4d , 0x00000011 
+ 00018993  0x00004832 arg  0x00000001 , 0x00000012 
+ 00018994  0x00004833 branch  0x00004b21 
+ 00018995  0x00004836 fetch  0x00000002 , 0x00000c70 
+ 00018996  0x00004837 arg  0x000001ba , 0x00000002 
+ 00018997  0x00004838 isub  0x00000002 , 0x0000003e 
+ 00018998  0x00004839 nbranch  0x00004984 , 0x00000005 
+ 00018999  0x0000483a set0  0x00000023 , 0x00000000 
+ 00019000  0x0000483c fetch  0x00000001 , 0x00000d42 
+ 00019001  0x0000483d nbranch  0x00004a42 , 0x00000034 
+ 00019002  0x0000483e jam  0x00000000 , 0x00000cf6 
+ 00019003  0x00004840 fetch  0x00000001 , 0x00000c74 
+ 00019004  0x00004841 iforce  0x00000012 
+ 00019005  0x00004842 arg  0x00000cf6 , 0x00000011 
+ 00019006  0x00004843 call  0x00004b21 
+ 00019007  0x00004845 arg  0x00000cf6 , 0x00000005 
+ 00019008  0x00004846 arg  0x00000008 , 0x00000039 
+ 00019009  0x00004847 branch  0x00007ec6 
+ 00019010  0x00004849 jam  0x00000000 , 0x00000d42 
+ 00019011  0x0000484a jam  0x00000001 , 0x00000cf6 
+ 00019012  0x0000484b branch  0x00004a3b 
+ 00019013  0x0000484e fetch  0x00000001 , 0x00000c74 
+ 00019014  0x0000484f bne  0x00000001 , 0x00004984 
+ 00019015  0x00004850 jam  0x00000001 , 0x00000d4b 
+ 00019016  0x00004851 arg  0x00000001 , 0x00000012 
+ 00019017  0x00004852 fetch  0x00000001 , 0x00000d49 
+ 00019018  0x00004853 beq  0x00000000 , 0x00004a4d 
+ 00019019  0x00004854 beq  0x00000001 , 0x00004a4e 
+ 00019020  0x00004855 branch  0x00004a12 
+ 00019021  0x00004857 branch  0x00004a14 
+ 00019022  0x00004859 branch  0x00004a12 
+ 00019023  0x0000485f fetch  0x00000001 , 0x00000c6b 
+ 00019024  0x00004860 bne  0x00000004 , 0x00004984 
+ 00019025  0x00004861 fetch  0x00000001 , 0x00000c74 
+ 00019026  0x00004862 bne  0x00000000 , 0x00004984 
+ 00019027  0x00004863 fetch  0x00000001 , 0x00000c75 
+ 00019028  0x00004864 bne  0x00000000 , 0x00004984 
+ 00019029  0x00004865 fetch  0x00000001 , 0x00000c71 
+ 00019030  0x00004866 bne  0x00000000 , 0x00004984 
+ 00019031  0x00004867 fetch  0x00000001 , 0x00000c73 
+ 00019032  0x00004868 bne  0x00000000 , 0x00004984 
+ 00019033  0x00004869 fetch  0x00000001 , 0x00000c6e 
+ 00019034  0x0000486a beq  0x00000000 , 0x00004a5e 
+ 00019035  0x0000486b beq  0x00000001 , 0x00004a66 
+ 00019036  0x0000486c beq  0x00000002 , 0x00004a67 
+ 00019037  0x0000486d branch  0x00004984 
+ 00019038  0x00004870 fetch  0x00000001 , 0x00000c70 
+ 00019039  0x00004871 bne  0x00000001 , 0x00004984 
+ 00019040  0x00004872 hfetch  0x00000001 , 0x00008a00 
+ 00019041  0x00004873 set0  0x00000007 , 0x0000003f 
+ 00019042  0x00004874 hstore  0x00000001 , 0x00008a00 
+ 00019043  0x00004875 jam  0x00000000 , 0x00000d39 
+ 00019044  0x00004876 jam  0x00000001 , 0x00000d3a 
+ 00019045  0x00004877 branch  0x00004988 
+ 00019046  0x0000487a branch  0x00004984 
+ 00019047  0x0000487d fetch  0x00000001 , 0x00000c70 
+ 00019048  0x0000487e bne  0x00000000 , 0x00004984 
+ 00019049  0x0000487f fetch  0x00000001 , 0x00000c72 
+ 00019050  0x00004880 beq  0x00000081 , 0x00004a72 
+ 00019051  0x00004881 beq  0x00000082 , 0x00004a75 
+ 00019052  0x00004882 beq  0x00000083 , 0x00004a77 
+ 00019053  0x00004883 and_into  0x0000007f , 0x0000003f 
+ 00019054  0x00004884 beq  0x00000000 , 0x00004a70 
+ 00019055  0x00004885 branch  0x00004984 
+ 00019056  0x00004888 jam  0x00000000 , 0x00000d3b 
+ 00019057  0x00004889 branch  0x00004988 
+ 00019058  0x0000488b jam  0x00000000 , 0x00000d3c 
+ 00019059  0x0000488d jam  0x00000001 , 0x00000d53 
+ 00019060  0x0000488e branch  0x00004988 
+ 00019061  0x00004890 jam  0x00000000 , 0x00000d3d 
+ 00019062  0x00004891 branch  0x00004a73 
+ 00019063  0x00004893 jam  0x00000000 , 0x00000d3e 
+ 00019064  0x00004894 branch  0x00004a73 
+ 00019065  0x00004898 fetch  0x00000001 , 0x00000c74 
+ 00019066  0x00004899 bne  0x00000000 , 0x00004984 
+ 00019067  0x0000489a fetch  0x00000001 , 0x00000c75 
+ 00019068  0x0000489b bne  0x00000000 , 0x00004984 
+ 00019069  0x0000489c fetch  0x00000001 , 0x00000c6e 
+ 00019070  0x0000489d beq  0x00000000 , 0x00004a82 
+ 00019071  0x0000489e beq  0x00000001 , 0x00004a8f 
+ 00019072  0x0000489f beq  0x00000002 , 0x00004a90 
+ 00019073  0x000048a0 branch  0x00004984 
+ 00019074  0x000048a3 fetch  0x00000001 , 0x00000c70 
+ 00019075  0x000048a4 bne  0x00000001 , 0x00004984 
+ 00019076  0x000048a5 hfetch  0x00000001 , 0x00008a00 
+ 00019077  0x000048a6 set1  0x00000007 , 0x0000003f 
+ 00019078  0x000048a7 hstore  0x00000001 , 0x00008a00 
+ 00019079  0x000048a8 jam  0x00000001 , 0x00000d39 
+ 00019080  0x000048a9 jam  0x00000003 , 0x00000d36 
+ 00019081  0x000048aa jam  0x00000000 , 0x00000d43 
+ 00019082  0x000048ab call  0x00004988 
+ 00019083  0x000048ad call  0x00007f15 
+ 00019084  0x000048ae setarg  0x00001388 
+ 00019085  0x000048af arg  0x0000000f , 0x00000007 
+ 00019086  0x000048b0 branch  0x00007f08 
+ 00019087  0x000048b3 branch  0x00004984 
+ 00019088  0x000048b6 fetch  0x00000001 , 0x00000c70 
+ 00019089  0x000048b7 bne  0x00000000 , 0x00004984 
+ 00019090  0x000048b8 fetch  0x00000001 , 0x00000c71 
+ 00019091  0x000048b9 bne  0x00000000 , 0x00004984 
+ 00019092  0x000048ba fetch  0x00000001 , 0x00000c72 
+ 00019093  0x000048bb beq  0x00000081 , 0x00004a9d 
+ 00019094  0x000048bc beq  0x00000082 , 0x00004a9f 
+ 00019095  0x000048bd beq  0x00000083 , 0x00004aa1 
+ 00019096  0x000048be and_into  0x0000007f , 0x0000003f 
+ 00019097  0x000048bf beq  0x00000000 , 0x00004a9b 
+ 00019098  0x000048c0 branch  0x00004984 
+ 00019099  0x000048c3 jam  0x00000001 , 0x00000d3b 
+ 00019100  0x000048c4 branch  0x00004988 
+ 00019101  0x000048c6 jam  0x00000001 , 0x00000d3c 
+ 00019102  0x000048c7 branch  0x00004988 
+ 00019103  0x000048c9 jam  0x00000001 , 0x00000d3d 
+ 00019104  0x000048ca branch  0x00004988 
+ 00019105  0x000048cc jam  0x00000001 , 0x00000d3e 
+ 00019106  0x000048cd branch  0x00004988 
+ 00019107  0x000048d1 fetch  0x00000001 , 0x00000c6e 
+ 00019108  0x000048d2 bne  0x00000000 , 0x00004984 
+ 00019109  0x000048d3 fetch  0x00000001 , 0x00000c72 
+ 00019110  0x000048d4 bne  0x00000000 , 0x00004984 
+ 00019111  0x000048d5 fetch  0x00000001 , 0x00000c73 
+ 00019112  0x000048d6 bne  0x00000000 , 0x00004984 
+ 00019113  0x000048d7 fetch  0x00000001 , 0x00000c74 
+ 00019114  0x000048d8 bne  0x00000000 , 0x00004984 
+ 00019115  0x000048d9 fetch  0x00000001 , 0x00000c75 
+ 00019116  0x000048da bne  0x00000000 , 0x00004984 
+ 00019117  0x000048db fetch  0x00000001 , 0x00000c71 
+ 00019118  0x000048dc bne  0x00000000 , 0x00004984 
+ 00019119  0x000048dd fetch  0x00000001 , 0x00000c70 
+ 00019120  0x000048de and_into  0x00000080 , 0x0000003f 
+ 00019121  0x000048df bne  0x00000000 , 0x00004984 
+ 00019122  0x000048e0 fetch  0x00000001 , 0x00000c70 
+ 00019123  0x000048e1 bne  0x00000000 , 0x00004aba 
+ 00019124  0x000048e3 jam  0x00000002 , 0x00000c6b 
+ 00019125  0x000048e5 fetch  0x00000001 , 0x00000c70 
+ 00019126  0x000048e6 hstore  0x00000001 , 0x00008a04 
+ 00019127  0x000048e7 call  0x00004988 
+ 00019128  0x000048e8 jam  0x00000001 , 0x00000d48 
+ 00019129  0x000048e9 rtn 
+ 00019130  0x000048eb jam  0x00000003 , 0x00000c6b 
+ 00019131  0x000048ec branch  0x00004ab5 
+ 00019132  0x000048f0 fetch  0x00000001 , 0x00000c6b 
+ 00019133  0x000048f1 beq  0x00000002 , 0x00004984 
+ 00019134  0x000048f2 fetch  0x00000001 , 0x00000c6e 
+ 00019135  0x000048f3 bne  0x00000000 , 0x00004984 
+ 00019136  0x000048f4 fetch  0x00000001 , 0x00000c72 
+ 00019137  0x000048f5 bne  0x00000000 , 0x00004984 
+ 00019138  0x000048f6 fetch  0x00000001 , 0x00000c73 
+ 00019139  0x000048f7 bne  0x00000000 , 0x00004984 
+ 00019140  0x000048f8 fetch  0x00000001 , 0x00000c74 
+ 00019141  0x000048f9 bne  0x00000000 , 0x00004984 
+ 00019142  0x000048fa fetch  0x00000001 , 0x00000c75 
+ 00019143  0x000048fb bne  0x00000000 , 0x00004984 
+ 00019144  0x000048fc fetch  0x00000001 , 0x00000c71 
+ 00019145  0x000048fd bne  0x00000000 , 0x00004984 
+ 00019146  0x000048fe fetch  0x00000001 , 0x00000c70 
+ 00019147  0x000048ff sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019148  0x00004900 nbranch  0x00004984 , 0x00000002 
+ 00019149  0x00004901 fetch  0x00000001 , 0x00000c6b 
+ 00019150  0x00004902 beq  0x00000003 , 0x00004ad1 
+ 00019151  0x00004903 beq  0x00000004 , 0x00004ad1 
+ 00019152  0x00004904 branch  0x00004984 
+ 00019153  0x00004908 fetch  0x00000001 , 0x00000c70 
+ 00019154  0x00004909 beq  0x00000000 , 0x00004ad5 
+ 00019155  0x0000490a jam  0x00000004 , 0x00000c6b 
+ 00019156  0x0000490b branch  0x00004988 
+ 00019157  0x0000490d jam  0x00000003 , 0x00000c6b 
+ 00019158  0x0000490e branch  0x00004988 
+ 00019159  0x00004912 fetch  0x00000001 , 0x00000c6b 
+ 00019160  0x00004913 bne  0x00000004 , 0x00004984 
+ 00019161  0x00004914 fetch  0x00000001 , 0x00000c6e 
+ 00019162  0x00004915 bne  0x00000001 , 0x00004984 
+ 00019163  0x00004916 fetch  0x00000001 , 0x00000c70 
+ 00019164  0x00004917 bne  0x00000000 , 0x00004984 
+ 00019165  0x00004918 fetch  0x00000001 , 0x00000c71 
+ 00019166  0x00004919 bne  0x00000000 , 0x00004984 
+ 00019167  0x0000491a fetch  0x00000001 , 0x00000c74 
+ 00019168  0x0000491b bne  0x00000000 , 0x00004984 
+ 00019169  0x0000491c fetch  0x00000001 , 0x00000c75 
+ 00019170  0x0000491d bne  0x00000000 , 0x00004984 
+ 00019171  0x0000491e fetch  0x00000001 , 0x00000c72 
+ 00019172  0x0000491f bne  0x00000000 , 0x00004984 
+ 00019173  0x00004920 fetch  0x00000001 , 0x00000c73 
+ 00019174  0x00004921 bne  0x00000000 , 0x00004984 
+ 00019175  0x00004922 branch  0x00004988 
+ 00019176  0x00004926 jam  0x00000001 , 0x00000d4c 
+ 00019177  0x00004927 fetch  0x00000001 , 0x00000c71 
+ 00019178  0x00004928 store  0x00000001 , 0x00000d4d 
+ 00019179  0x00004929 fetch  0x00000001 , 0x00000c72 
+ 00019180  0x0000492a sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019181  0x0000492b call  0x00004af5 , 0x00000005 
+ 00019182  0x0000492c fetch  0x00000001 , 0x00000d36 
+ 00019183  0x0000492d bne  0x00000004 , 0x00004988 
+ 00019184  0x0000492e jam  0x00000002 , 0x00000d36 
+ 00019185  0x0000492f call  0x00004988 
+ 00019186  0x00004930 nop  0x00007530 
+ 00019187  0x00004931 nop  0x00007530 
+ 00019188  0x00004932 rtn 
+ 00019189  0x00004934 jam  0x00000001 , 0x00000d45 
+ 00019190  0x00004935 jam  0x00000000 , 0x00000d3a 
+ 00019191  0x00004936 jam  0x00000004 , 0x00000d36 
+ 00019192  0x00004937 rtn 
+ 00019193  0x0000493b jam  0x00000001 , 0x00000d50 
+ 00019194  0x0000493c call  0x00004b03 
+ 00019195  0x0000493d fetch  0x00000002 , 0x00000c70 
+ 00019196  0x0000493e store  0x00000002 , 0x00000d4e 
+ 00019197  0x0000493f fetch  0x00000001 , 0x00000c74 
+ 00019198  0x00004940 iforce  0x00000039 
+ 00019199  0x00004941 arg  0x00000c76 , 0x00000006 
+ 00019200  0x00004942 arg  0x00000cb6 , 0x00000005 
+ 00019201  0x00004943 call  0x00007f01 
+ 00019202  0x00004944 branch  0x00004988 
+ 00019203  0x00004947 fetch  0x00000002 , 0x00000c70 
+ 00019204  0x00004948 arg  0x00000200 , 0x00000002 
+ 00019205  0x00004949 isub  0x00000002 , 0x0000003e 
+ 00019206  0x0000494a nrtn  0x00000005 
+ 00019207  0x0000494b fetch  0x00000002 , 0x00000c72 
+ 00019208  0x0000494c arg  0x00000000 , 0x00000002 
+ 00019209  0x0000494d isub  0x00000002 , 0x0000003e 
+ 00019210  0x0000494e nrtn  0x00000005 
+ 00019211  0x0000494f fetch  0x00000002 , 0x00000c74 
+ 00019212  0x00004950 arg  0x00000001 , 0x00000002 
+ 00019213  0x00004951 isub  0x00000002 , 0x0000003e 
+ 00019214  0x00004952 nrtn  0x00000005 
+ 00019215  0x00004953 jam  0x00000001 , 0x00000d43 
+ 00019216  0x00004954 rtn 
+ 00019217  0x00004958 fetch  0x00000001 , 0x00000c74 
+ 00019218  0x00004959 bne  0x00000000 , 0x00004984 
+ 00019219  0x0000495a fetch  0x00000001 , 0x00000c70 
+ 00019220  0x0000495b beq  0x00000000 , 0x00004b17 
+ 00019221  0x0000495c beq  0x00000001 , 0x00004b1a 
+ 00019222  0x0000495d branch  0x00004984 
+ 00019223  0x0000495f jam  0x00000000 , 0x00000d4a 
+ 00019224  0x00004960 jam  0x00000001 , 0x00000d49 
+ 00019225  0x00004961 branch  0x00004988 
+ 00019226  0x00004963 jam  0x00000001 , 0x00000d44 
+ 00019227  0x00004964 jam  0x00000001 , 0x00000d4a 
+ 00019228  0x00004965 jam  0x00000000 , 0x00000d49 
+ 00019229  0x00004966 branch  0x00004988 
+ 00019230  0x0000496a ifetch  0x00000001 , 0x00000011 
+ 00019231  0x0000496b iforce  0x00000012 
+ 00019232  0x0000496c increase  0x00000001 , 0x00000011 
+ 00019233  0x0000496f bpatch  0x000000fa , 0x0000401f 
+ 00019234  0x00004970 bmark0  0x00000023 , 0x00004b2c 
+ 00019235  0x00004971 add  0x00000012 , 0x00000001 , 0x0000003f 
+ 00019236  0x00004972 lshift  0x0000003f , 0x0000003f 
+ 00019237  0x00004973 hstore  0x00000001 , 0x00008a18 
+ 00019238  0x00004974 jam  0x00000003 , 0x00008a18 
+ 00019239  0x00004975 fetch  0x00000001 , 0x00000c74 
+ 00019240  0x00004976 increase  0xfffffffe , 0x0000003f 
+ 00019241  0x00004977 rshift  0x0000003f , 0x0000003f 
+ 00019242  0x00004978 store  0x00000001 , 0x00000c74 
+ 00019243  0x00004979 beq  0x00000000 , 0x00004b35 
+ 00019244  0x0000497b fetch  0x00000002 , 0x00000c74 
+ 00019245  0x0000497c isub  0x00000012 , 0x0000003e 
+ 00019246  0x0000497d branch  0x00004b30 , 0x00000002 
+ 00019247  0x0000497e copy  0x0000003f , 0x00000012 
+ 00019248  0x00004980 deposit  0x00000011 
+ 00019249  0x00004981 store  0x00000002 , 0x00000b65 
+ 00019250  0x00004982 deposit  0x00000012 
+ 00019251  0x00004983 store  0x00000001 , 0x00000b67 
+ 00019252  0x00004984 branch  0x00004b37 
+ 00019253  0x00004987 arg  0x00000000 , 0x00000007 
+ 00019254  0x00004988 branch  0x00004b57 
+ 00019255  0x0000498c bpatch  0x000000fb , 0x0000401f 
+ 00019256  0x0000498d fetch  0x00000001 , 0x00000b67 
+ 00019257  0x0000498e rtn  0x00000034 
+ 00019258  0x0000498f copy  0x0000003f , 0x00000039 
+ 00019259  0x00004990 sub  0x0000003f , 0x00000040 , 0x0000003e 
+ 00019260  0x00004991 branch  0x00004b3e , 0x00000002 
+ 00019261  0x00004992 arg  0x00000040 , 0x00000039 
+ 00019262  0x00004994 fetch  0x00000001 , 0x00000b67 
+ 00019263  0x00004995 isub  0x00000039 , 0x0000003f 
+ 00019264  0x00004996 store  0x00000001 , 0x00000b67 
+ 00019265  0x00004997 fetch  0x00000002 , 0x00000b65 
+ 00019266  0x00004998 copy  0x0000003f , 0x00000006 
+ 00019267  0x0000499a ifetch  0x00000001 , 0x00000006 
+ 00019268  0x0000499b hstore  0x00000001 , 0x00008a18 
+ 00019269  0x0000499c bmark0  0x00000023 , 0x00004b47 
+ 00019270  0x0000499d jam  0x00000000 , 0x00008a18 
+ 00019271  0x0000499f loop  0x00004b43 
+ 00019272  0x000049a0 copy  0x00000006 , 0x0000003f 
+ 00019273  0x000049a1 store  0x00000002 , 0x00000b65 
+ 00019274  0x000049a2 arg  0x00000000 , 0x00000007 
+ 00019275  0x000049a3 call  0x00004b57 
+ 00019276  0x000049a4 fetch  0x00000001 , 0x00000b67 
+ 00019277  0x000049a5 nrtn  0x00000034 
+ 00019278  0x000049a6 fetch  0x00000001 , 0x00000d36 
+ 00019279  0x000049a7 rtnne  0x00000001 
+ 00019280  0x000049a8 jam  0x00000002 , 0x00000d36 
+ 00019281  0x000049a9 rtn 
+ 00019282  0x000049ad arg  0x00008a19 , 0x00000011 
+ 00019283  0x000049ae arg  0x00000001 , 0x00000007 
+ 00019284  0x000049b0 ifetch  0x00000001 , 0x00000006 
+ 00019285  0x000049b1 istore  0x00000001 , 0x00000011 
+ 00019286  0x000049b2 loop  0x00004b54 
+ 00019287  0x000049b4 setarg  0x00000000 
+ 00019288  0x000049b5 qset1  0x0000003f 
+ 00019289  0x000049b6 hstore  0x00000001 , 0x00008a10 
+ 00019290  0x000049b7 fetcht  0x00000001 , 0x00000d37 
+ 00019291  0x000049b8 ior  0x00000002 , 0x0000003f 
+ 00019292  0x000049b9 store  0x00000001 , 0x00000d37 
+ 00019293  0x000049ba rtn 
+ 00019294  0x000049bd arg  0x00000002 , 0x00000007 
+ 00019295  0x000049be arg  0x00008a1a , 0x00000011 
+ 00019296  0x000049bf branch  0x00004b54 
+ 00019297  0x000049c2 bpatch  0x000000fc , 0x0000401f 
+ 00019298  0x000049c3 fetch  0x00000001 , 0x00000d38 
+ 00019299  0x000049c4 rtn  0x00000034 
+ 00019300  0x000049c5 fetch  0x00000001 , 0x00000d37 
+ 00019301  0x000049c6 nbranch  0x00004bac , 0x00000034 
+ 00019302  0x000049c7 fetch  0x00000001 , 0x00000d45 
+ 00019303  0x000049c8 branch  0x00004b86 , 0x00000034 
+ 00019304  0x000049c9 fetch  0x00000001 , 0x00000d36 
+ 00019305  0x000049ca beq  0x00000003 , 0x00004bbf 
+ 00019306  0x000049cb bne  0x00000002 , 0x00004b86 
+ 00019307  0x000049cc fetch  0x00000001 , 0x00000d3a 
+ 00019308  0x000049cd nbranch  0x00004b86 , 0x00000034 
+ 00019309  0x000049ce call  0x00004b6f 
+ 00019310  0x000049cf branch  0x00004b7a 
+ 00019311  0x000049d2 fetch  0x00000001 , 0x00000d38 
+ 00019312  0x000049d3 rtnbit0  0x00000001 
+ 00019313  0x000049d4 fetch  0x00000001 , 0x00000d37 
+ 00019314  0x000049d5 rtnbit1  0x00000001 
+ 00019315  0x000049d6 fetch  0x00000001 , 0x00000d38 
+ 00019316  0x000049d7 set0  0x00000001 , 0x0000003f 
+ 00019317  0x000049d8 store  0x00000001 , 0x00000d38 
+ 00019318  0x000049d9 fetch  0x00000001 , 0x00000d51 
+ 00019319  0x000049da rtn  0x00000034 
+ 00019320  0x000049db beq  0x00000010 , 0x00004ba8 
+ 00019321  0x000049dc branch  0x00002a8c 
+ 00019322  0x000049df fetch  0x00000001 , 0x00000d38 
+ 00019323  0x000049e0 rtnbit0  0x00000002 
+ 00019324  0x000049e1 fetch  0x00000001 , 0x00000d37 
+ 00019325  0x000049e2 rtnbit1  0x00000002 
+ 00019326  0x000049e3 fetch  0x00000001 , 0x00000d38 
+ 00019327  0x000049e4 set0  0x00000002 , 0x0000003f 
+ 00019328  0x000049e5 store  0x00000001 , 0x00000d38 
+ 00019329  0x000049e6 fetch  0x00000001 , 0x00000d52 
+ 00019330  0x000049e7 rtn  0x00000034 
+ 00019331  0x000049e8 beq  0x00000020 , 0x00004b89 
+ 00019332  0x000049e9 beq  0x00000021 , 0x00004ba4 
+ 00019333  0x000049ea branch  0x00002a8c 
+ 00019334  0x000049ee arg  0x00000d54 , 0x00000005 
+ 00019335  0x000049ef arg  0x00000006 , 0x00000039 
+ 00019336  0x000049f0 branch  0x00007ec6 
+ 00019337  0x000049f3 fetch  0x00000001 , 0x00000d4c 
+ 00019338  0x000049f4 fetcht  0x00000001 , 0x00000d4b 
+ 00019339  0x000049f5 iand  0x00000002 , 0x0000003f 
+ 00019340  0x000049f6 branch  0x00004ba0 , 0x00000034 
+ 00019341  0x000049f7 fetcht  0x00000001 , 0x00000d4a 
+ 00019342  0x000049f8 iadd  0x00000002 , 0x0000003f 
+ 00019343  0x000049f9 beq  0x00000001 , 0x00004b91 
+ 00019344  0x000049fa branch  0x00004ba0 
+ 00019345  0x000049fd jam  0x00000000 , 0x00000d52 
+ 00019346  0x000049ff fetch  0x00000001 , 0x00000d55 
+ 00019347  0x00004a00 beq  0x00000002 , 0x00004ba1 
+ 00019348  0x00004a01 beq  0x00000003 , 0x00004ba1 
+ 00019349  0x00004a02 fetch  0x00000001 , 0x00000d55 
+ 00019350  0x00004a03 store  0x00000001 , 0x00000d54 
+ 00019351  0x00004a04 fetch  0x00000001 , 0x00000d56 
+ 00019352  0x00004a05 istore  0x00000001 , 0x00000005 
+ 00019353  0x00004a06 fetch  0x00000001 , 0x00000d58 
+ 00019354  0x00004a07 istore  0x00000001 , 0x00000005 
+ 00019355  0x00004a08 fetch  0x00000001 , 0x00000d5a 
+ 00019356  0x00004a09 istore  0x00000001 , 0x00000005 
+ 00019357  0x00004a0a arg  0x00000004 , 0x00000039 
+ 00019358  0x00004a0b arg  0x00000d54 , 0x00000006 
+ 00019359  0x00004a0c branch  0x00004b5e 
+ 00019360  0x00004a0f jam  0x00000000 , 0x00000d52 
+ 00019361  0x00004a11 arg  0x00000008 , 0x00000039 
+ 00019362  0x00004a12 arg  0x00000d54 , 0x00000006 
+ 00019363  0x00004a13 branch  0x00004b5e 
+ 00019364  0x00004a16 jam  0x00000000 , 0x00000d52 
+ 00019365  0x00004a17 arg  0x00000003 , 0x00000039 
+ 00019366  0x00004a18 arg  0x00000d74 , 0x00000006 
+ 00019367  0x00004a19 branch  0x00004b5e 
+ 00019368  0x00004a1c jam  0x00000000 , 0x00000d51 
+ 00019369  0x00004a1d arg  0x00000008 , 0x00000039 
+ 00019370  0x00004a1e arg  0x00000d64 , 0x00000006 
+ 00019371  0x00004a1f branch  0x00004b52 
+ 00019372  0x00004a22 fetch  0x00000001 , 0x00000d36 
+ 00019373  0x00004a23 beq  0x00000003 , 0x00004bb0 
+ 00019374  0x00004a24 beq  0x00000002 , 0x00004bb2 
+ 00019375  0x00004a25 rtn 
+ 00019376  0x00004a27 jam  0x00000000 , 0x00000d37 
+ 00019377  0x00004a28 rtn 
+ 00019378  0x00004a2a hfetch  0x00000001 , 0x00008a00 
+ 00019379  0x00004a2b set1  0x00000007 , 0x0000003f 
+ 00019380  0x00004a2c hstore  0x00000001 , 0x00008a00 
+ 00019381  0x00004a2d jam  0x00000001 , 0x00000d47 
+ 00019382  0x00004a2e rtn 
+ 00019383  0x00004a31 fetch  0x00000001 , 0x00000d36 
+ 00019384  0x00004a32 rtneq  0x00000003 
+ 00019385  0x00004a33 beq  0x00000002 , 0x00004bbb 
+ 00019386  0x00004a34 rtn 
+ 00019387  0x00004a36 fetch  0x00000001 , 0x00000d47 
+ 00019388  0x00004a37 rtn  0x00000034 
+ 00019389  0x00004a38 jam  0x00000001 , 0x00000d46 
+ 00019390  0x00004a39 branch  0x00004bc2 
+ 00019391  0x00004a3c arg  0x0000000f , 0x00000007 
+ 00019392  0x00004a3d call  0x00007f16 
+ 00019393  0x00004a3e nrtn  0x00000034 
+ 00019394  0x00004a40 hfetch  0x00000001 , 0x00008a00 
+ 00019395  0x00004a41 rtnbit0  0x00000007 
+ 00019396  0x00004a42 jam  0x000000fc , 0x00008a00 
+ 00019397  0x00004a43 nop  0x00007530 
+ 00019398  0x00004a44 jam  0x0000003c , 0x00008a00 
+ 00019399  0x00004a45 rtn 
+ 00019400  0x00004a4d bpatch  0x000000fd , 0x0000401f 
+ 00019401  0x00004a4e fetch  0x00000001 , 0x000041ce 
+ 00019402  0x00004a4f nrtn  0x00000034 
+ 00019403  0x00004a51 call  0x00004bce 
+ 00019404  0x00004a52 ncall  0x00004be6 , 0x00000028 
+ 00019405  0x00004a53 rtn 
+ 00019406  0x00004a56 bpatch  0x000000fe , 0x0000401f 
+ 00019407  0x00004a57 copy  0x00000003 , 0x00000011 
+ 00019408  0x00004a58 arg  0x00000004 , 0x00000002 
+ 00019409  0x00004a59 ifetch  0x00000001 , 0x00000003 
+ 00019410  0x00004a5a beq  0x00000001 , 0x00004bd8 
+ 00019411  0x00004a5b increase  0x00000001 , 0x00000002 
+ 00019412  0x00004a5c beq  0x00000002 , 0x00004bd8 
+ 00019413  0x00004a5d copy  0x00000003 , 0x0000003f 
+ 00019414  0x00004a5e hstore  0x00000002 , 0x00008058 
+ 00019415  0x00004a5f rtn 
+ 00019416  0x00004a61 hfetch  0x00000002 , 0x00008112 
+ 00019417  0x00004a62 isub  0x00000002 , 0x0000003e 
+ 00019418  0x00004a63 nbranch  0x00004bd8 , 0x00000002 
+ 00019419  0x00004a65 disable  0x00000028 
+ 00019420  0x00004a66 copy  0x00000011 , 0x00000003 
+ 00019421  0x00004a67 call  0x00004bee 
+ 00019422  0x00004a68 iadd  0x00000002 , 0x00000002 
+ 00019423  0x00004a6a hfetch  0x00000002 , 0x00008112 
+ 00019424  0x00004a6b isub  0x00000002 , 0x0000003e 
+ 00019425  0x00004a6c nbranch  0x00004bdf , 0x00000002 
+ 00019426  0x00004a6d copy  0x00000011 , 0x00000003 
+ 00019427  0x00004a6e ifetch  0x00000001 , 0x00000003 
+ 00019428  0x00004a6f beq  0x00000001 , 0x00004c3f 
+ 00019429  0x00004a70 branch  0x00002a8c 
+ 00019430  0x00004a73 bpatch  0x000000ff , 0x0000401f 
+ 00019431  0x00004a74 hfetch  0x00000002 , 0x00008058 
+ 00019432  0x00004a75 iforce  0x00000003 
+ 00019433  0x00004a76 call  0x00004bee 
+ 00019434  0x00004a77 iadd  0x00000003 , 0x00000003 
+ 00019435  0x00004a78 deposit  0x00000003 
+ 00019436  0x00004a79 hstore  0x00000002 , 0x00008058 
+ 00019437  0x00004a7a rtn 
+ 00019438  0x00004a80 ifetch  0x00000001 , 0x00000003 
+ 00019439  0x00004a81 increase  0x00000002 , 0x00000003 
+ 00019440  0x00004a82 beq  0x00000002 , 0x00004bf3 
+ 00019441  0x00004a83 ifetch  0x00000001 , 0x00000003 
+ 00019442  0x00004a84 rtn 
+ 00019443  0x00004a86 ifetch  0x00000002 , 0x00000003 
+ 00019444  0x00004a87 rtn 
+ 00019445  0x00004a8a hfetch  0x00000002 , 0x0000805e 
+ 00019446  0x00004a8b increase  0xfffffffb , 0x0000000a 
+ 00019447  0x00004a8c iadd  0x0000000a , 0x0000000a 
+ 00019448  0x00004a8d rtn 
+ 00019449  0x00004a90 arg  0x00000004 , 0x00000002 
+ 00019450  0x00004a91 branch  0x00004bfc 
+ 00019451  0x00004a93 arg  0x00000002 , 0x00000002 
+ 00019452  0x00004a95 bpatchx  0x00000000 , 0x00004020 
+ 00019453  0x00004a96 increase  0x00000001 , 0x00000039 
+ 00019454  0x00004a97 hfetch  0x00000002 , 0x0000805e 
+ 00019455  0x00004a98 copy  0x0000003f , 0x0000000a 
+ 00019456  0x00004a99 copy  0x00000039 , 0x0000003f 
+ 00019457  0x00004a9a istoret  0x00000001 , 0x0000000a 
+ 00019458  0x00004a9b increase  0xffffffff , 0x0000003f 
+ 00019459  0x00004a9c iadd  0x0000000a , 0x0000000a 
+ 00019460  0x00004a9d copy  0x0000000a , 0x0000003f 
+ 00019461  0x00004a9e store  0x00000002 , 0x00000258 
+ 00019462  0x00004a9f copy  0x00000002 , 0x0000003f 
+ 00019463  0x00004aa0 rtneq  0x00000002 
+ 00019464  0x00004aa1 fetch  0x00000002 , 0x00000258 
+ 00019465  0x00004aa2 hstore  0x00000002 , 0x0000805e 
+ 00019466  0x00004aa3 branch  0x00004c0b 
+ 00019467  0x00004aa7 setarg  0x00000000 
+ 00019468  0x00004aa8 store  0x00000002 , 0x00000258 
+ 00019469  0x00004aa9 rtn 
+ 00019470  0x00004ab1 rtn  0x0000002b 
+ 00019471  0x00004ab2 setarg  0x00004d28 
+ 00019472  0x00004ab3 store  0x00000002 , 0x000041f3 
+ 00019473  0x00004ab5 setarg  0x000001a0 
+ 00019474  0x00004ab6 store  0x00000002 , 0x00004243 
+ 00019475  0x00004ab8 setarg  0x00001800 
+ 00019476  0x00004ab9 hstore  0x00000002 , 0x00008054 
+ 00019477  0x00004aba setarg  0x00001bff 
+ 00019478  0x00004abb hstore  0x00000002 , 0x00008056 
+ 00019479  0x00004abc setarg  0x00001c00 
+ 00019480  0x00004abd hstore  0x00000002 , 0x0000805a 
+ 00019481  0x00004abe call  0x00004c28 
+ 00019482  0x00004ac0 jam  0x00000000 , 0x00008062 
+ 00019483  0x00004ac1 setarg  0x00001c00 
+ 00019484  0x00004ac2 hstore  0x00000002 , 0x0000805e 
+ 00019485  0x00004ac3 hstore  0x00000002 , 0x00008060 
+ 00019486  0x00004ac4 setarg  0x00001800 
+ 00019487  0x00004ac5 hstore  0x00000002 , 0x00008058 
+ 00019488  0x00004ac6 store  0x00000002 , 0x00000244 
+ 00019489  0x00004ac8 hfetch  0x00000002 , 0x00008050 
+ 00019490  0x00004ac9 set0  0x0000000f , 0x0000003f 
+ 00019491  0x00004aca hstore  0x00000002 , 0x00008050 
+ 00019492  0x00004acb call  0x000066ce 
+ 00019493  0x00004acc jam  0x00000001 , 0x00008043 
+ 00019494  0x00004acd jam  0x00000081 , 0x00008062 
+ 00019495  0x00004ace rtn 
+ 00019496  0x00004ad1 setarg  0x00001fff 
+ 00019497  0x00004ad2 hstore  0x00000002 , 0x0000805c 
+ 00019498  0x00004ad3 hfetch  0x00000001 , 0x00008081 
+ 00019499  0x00004ad4 or_into  0x00000007 , 0x0000003f 
+ 00019500  0x00004ad5 hstore  0x00000001 , 0x00008081 
+ 00019501  0x00004ad6 rtn 
+ 00019502  0x00004ada bpatchx  0x00000001 , 0x00004020 
+ 00019503  0x00004adb hfetch  0x00000001 , 0x0000810c 
+ 00019504  0x00004adc iforce  0x00000012 
+ 00019505  0x00004add bbit0  0x00000003 , 0x00004c37 
+ 00019506  0x00004ade hfetch  0x00000002 , 0x00008112 
+ 00019507  0x00004adf iforce  0x00000013 
+ 00019508  0x00004ae0 arg  0x0000044f , 0x00000002 
+ 00019509  0x00004ae1 isub  0x00000002 , 0x0000003e 
+ 00019510  0x00004ae2 nrtn  0x00000005 
+ 00019511  0x00004ae4 hfetch  0x00000002 , 0x00008058 
+ 00019512  0x00004ae5 iforce  0x00000003 
+ 00019513  0x00004ae6 branch  0x00004bc8 
+ 00019514  0x00004ae9 hfetcht  0x00000001 , 0x0000810c 
+ 00019515  0x00004aea isolate1  0x00000006 , 0x00000002 
+ 00019516  0x00004aeb branch  0x00004c3a , 0x00000001 
+ 00019517  0x00004aec hstore  0x00000001 , 0x00008015 
+ 00019518  0x00004aed rtn 
+ 00019519  0x00004af0 bpatchx  0x00000002 , 0x00004020 
+ 00019520  0x00004af1 fetch  0x00000001 , 0x000041ce 
+ 00019521  0x00004af2 branch  0x00004c44 , 0x00000034 
+ 00019522  0x00004af3 enable  0x00000028 
+ 00019523  0x00004af4 rtn 
+ 00019524  0x00004af6 ifetch  0x00000002 , 0x00000003 
+ 00019525  0x00004af7 iforce  0x00000030 
+ 00019526  0x00004af8 iforce  0x00000007 
+ 00019527  0x00004af9 ifetch  0x00000001 , 0x00000003 
+ 00019528  0x00004afa iforce  0x00000002 
+ 00019529  0x00004afb rshift2  0x00000030 , 0x0000003f 
+ 00019530  0x00004afc rshift8  0x0000003f , 0x0000003f 
+ 00019531  0x00004afd beq  0x0000003f , 0x00004c4d 
+ 00019532  0x00004afe rtn 
+ 00019533  0x00004b02 bpatchx  0x00000003 , 0x00004020 
+ 00019534  0x00004b03 deposit  0x00000007 
+ 00019535  0x00004b04 beq  0x00000000 , 0x00004cdc 
+ 00019536  0x00004b05 beq  0x00000001 , 0x00004c66 
+ 00019537  0x00004b06 beq  0x00000002 , 0x00004c6b 
+ 00019538  0x00004b07 beq  0x00000003 , 0x00004c7a 
+ 00019539  0x00004b08 beq  0x00000004 , 0x00004cb3 
+ 00019540  0x00004b09 beq  0x00000005 , 0x00004cdc 
+ 00019541  0x00004b0a beq  0x00000006 , 0x00004cc6 
+ 00019542  0x00004b0b beq  0x00000007 , 0x00004c5c 
+ 00019543  0x00004b0d beq  0x00000010 , 0x00004cc9 
+ 00019544  0x00004b0e beq  0x00000011 , 0x00004cd1 
+ 00019545  0x00004b0f beq  0x00000012 , 0x00004ca5 
+ 00019546  0x00004b10 beq  0x00000013 , 0x00004c85 
+ 00019547  0x00004b11 branch  0x00004cdc 
+ 00019548  0x00004b14 call  0x00004cdc 
+ 00019549  0x00004b15 call  0x00007f9e 
+ 00019550  0x00004b16 call  0x0000688c 
+ 00019551  0x00004b18 call  0x000033d2 
+ 00019552  0x00004b19 call  0x000033d9 
+ 00019553  0x00004b1a branch  0x0000688f 
+ 00019554  0x00004b1d jam  0x00000000 , 0x00004245 
+ 00019555  0x00004b1e call  0x000033d0 
+ 00019556  0x00004b1f call  0x00004c13 
+ 00019557  0x00004b20 branch  0x000033db 
+ 00019558  0x00004b23 call  0x00004cf2 
+ 00019559  0x00004b24 hfetch  0x00000002 , 0x00008000 
+ 00019560  0x00004b25 istore  0x00000002 , 0x0000000a 
+ 00019561  0x00004b26 force  0x00000006 , 0x00000039 
+ 00019562  0x00004b27 branch  0x00004cdd 
+ 00019563  0x00004b2a ifetch  0x00000002 , 0x00000003 
+ 00019564  0x00004b2b store  0x00000002 , 0x00004243 
+ 00019565  0x00004b2c hstore  0x00000002 , 0x00008052 
+ 00019566  0x00004b2d rtn 
+ 00019567  0x00004b32 ifetch  0x00000001 , 0x00000003 
+ 00019568  0x00004b33 copy  0x0000003f , 0x00000002 
+ 00019569  0x00004b34 hstore  0x00000001 , 0x00008024 
+ 00019570  0x00004b35 ifetch  0x00000001 , 0x00000003 
+ 00019571  0x00004b36 iadd  0x00000002 , 0x00000002 
+ 00019572  0x00004b37 set1  0x00000007 , 0x0000003f 
+ 00019573  0x00004b38 hstore  0x00000001 , 0x00008023 
+ 00019574  0x00004b39 ifetch  0x00000001 , 0x00000003 
+ 00019575  0x00004b3a iadd  0x00000002 , 0x00000002 
+ 00019576  0x00004b3b copy  0x0000003f , 0x00000039 
+ 00019577  0x00004b3c rtn 
+ 00019578  0x00004b3f bmark1  0x0000002b , 0x00004cc4 
+ 00019579  0x00004b40 call  0x00004c6f 
+ 00019580  0x00004b42 ifetch  0x00000001 , 0x00000003 
+ 00019581  0x00004b43 hstore  0x00000001 , 0x00008025 
+ 00019582  0x00004b44 iadd  0x00000002 , 0x00000002 
+ 00019583  0x00004b45 loop  0x00004c7c 
+ 00019584  0x00004b47 and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019585  0x00004b48 ifetch  0x00000001 , 0x00000003 
+ 00019586  0x00004b49 isub  0x00000002 , 0x0000003e 
+ 00019587  0x00004b4a nbranch  0x00004cc4 , 0x00000005 
+ 00019588  0x00004b4b branch  0x00004cdc 
+ 00019589  0x00004b4f bmark0  0x0000002b , 0x00004cc4 
+ 00019590  0x00004b50 call  0x00004c6f 
+ 00019591  0x00004b51 store  0x00000008 , 0x00000a9a 
+ 00019592  0x00004b53 call  0x00007422 
+ 00019593  0x00004b54 arg  0x00000010 , 0x00000039 
+ 00019594  0x00004b55 arg  0x00000ac2 , 0x00000005 
+ 00019595  0x00004b56 call  0x00004ca0 
+ 00019596  0x00004b57 storet  0x00000008 , 0x00000aa2 
+ 00019597  0x00004b58 arg  0x00000ad2 , 0x00000005 
+ 00019598  0x00004b59 call  0x00007497 
+ 00019599  0x00004b5a arg  0x00000ad2 , 0x00000011 
+ 00019600  0x00004b5b arg  0x00000ac2 , 0x00000012 
+ 00019601  0x00004b5c arg  0x00000ae2 , 0x00000005 
+ 00019602  0x00004b5d call  0x00007352 
+ 00019603  0x00004b5e arg  0x00000010 , 0x00000039 
+ 00019604  0x00004b5f arg  0x00000ae2 , 0x00000006 
+ 00019605  0x00004b60 call  0x00004c9c 
+ 00019606  0x00004b61 fetcht  0x00000008 , 0x00000aa2 
+ 00019607  0x00004b62 fetch  0x00000008 , 0x00000a9a 
+ 00019608  0x00004b63 increase  0xfffffff0 , 0x0000003f 
+ 00019609  0x00004b64 store  0x00000008 , 0x00000a9a 
+ 00019610  0x00004b65 nbranch  0x00004c88 , 0x00000034 
+ 00019611  0x00004b66 branch  0x00004c80 
+ 00019612  0x00004b69 ifetch  0x00000001 , 0x00000006 
+ 00019613  0x00004b6a hstore  0x00000001 , 0x00008025 
+ 00019614  0x00004b6b loop  0x00004c9c 
+ 00019615  0x00004b6c rtn 
+ 00019616  0x00004b6f ifetch  0x00000001 , 0x00000003 
+ 00019617  0x00004b70 istore  0x00000001 , 0x00000005 
+ 00019618  0x00004b71 iadd  0x00000002 , 0x00000002 
+ 00019619  0x00004b72 loop  0x00004ca0 
+ 00019620  0x00004b73 rtn 
+ 00019621  0x00004b76 bmark0  0x0000002b , 0x00004cc4 
+ 00019622  0x00004b77 arg  0x00000000 , 0x00000002 
+ 00019623  0x00004b78 arg  0x00000010 , 0x00000039 
+ 00019624  0x00004b79 arg  0x00000ac2 , 0x00000005 
+ 00019625  0x00004b7a call  0x00004ca0 
+ 00019626  0x00004b7b hfetch  0x00000001 , 0x00008085 
+ 00019627  0x00004b7c and_into  0x000000fd , 0x0000003f 
+ 00019628  0x00004b7d hstore  0x00000001 , 0x00008085 
+ 00019629  0x00004b7e arg  0x00000ac2 , 0x00000006 
+ 00019630  0x00004b7f arg  0x00000010 , 0x00000039 
+ 00019631  0x00004b80 call  0x00007478 
+ 00019632  0x00004b81 call  0x00007428 
+ 00019633  0x00004b82 call  0x00007491 
+ 00019634  0x00004b83 branch  0x00004c80 
+ 00019635  0x00004b87 arg  0x00000020 , 0x00000039 
+ 00019636  0x00004b88 arg  0x00004000 , 0x00000005 
+ 00019637  0x00004b89 arg  0x00000000 , 0x00000002 
+ 00019638  0x00004b8b ifetch  0x00000001 , 0x00000003 
+ 00019639  0x00004b8c istore  0x00000001 , 0x00000005 
+ 00019640  0x00004b8d iadd  0x00000002 , 0x00000002 
+ 00019641  0x00004b8e loop  0x00004cb6 
+ 00019642  0x00004b8f and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019643  0x00004b90 ifetch  0x00000001 , 0x00000003 
+ 00019644  0x00004b91 isub  0x00000002 , 0x0000003e 
+ 00019645  0x00004b92 nbranch  0x00004cc4 , 0x00000005 
+ 00019646  0x00004b93 jam  0x00000000 , 0x00008023 
+ 00019647  0x00004b94 call  0x00004cdc 
+ 00019648  0x00004b95 call  0x00004be6 
+ 00019649  0x00004b96 call  0x000064a3 
+ 00019650  0x00004b97 call  0x00007f9e 
+ 00019651  0x00004b98 branch  0x00002001 
+ 00019652  0x00004b9b jam  0x00000000 , 0x00008023 
+ 00019653  0x00004b9c branch  0x00002000 
+ 00019654  0x00004b9f ifetch  0x00000006 , 0x00000003 
+ 00019655  0x00004ba0 store  0x00000006 , 0x000040a0 
+ 00019656  0x00004ba1 branch  0x00004cdc 
+ 00019657  0x00004ba5 ifetch  0x00000001 , 0x00000003 
+ 00019658  0x00004ba6 store  0x00000001 , 0x0000025a 
+ 00019659  0x00004ba7 copy  0x0000003f , 0x00000039 
+ 00019660  0x00004ba8 ifetch  0x00000002 , 0x00000003 
+ 00019661  0x00004ba9 store  0x00000002 , 0x0000025b 
+ 00019662  0x00004baa copy  0x0000003f , 0x00000005 
+ 00019663  0x00004bab call  0x000066fd 
+ 00019664  0x00004bac branch  0x00004cdc 
+ 00019665  0x00004bb0 ifetch  0x00000001 , 0x00000003 
+ 00019666  0x00004bb1 store  0x00000001 , 0x0000025a 
+ 00019667  0x00004bb2 copy  0x0000003f , 0x00000039 
+ 00019668  0x00004bb3 ifetch  0x00000002 , 0x00000003 
+ 00019669  0x00004bb4 store  0x00000002 , 0x0000025b 
+ 00019670  0x00004bb5 arg  0x00001000 , 0x00000005 
+ 00019671  0x00004bb6 call  0x000066fd 
+ 00019672  0x00004bb7 fetcht  0x00000001 , 0x0000025a 
+ 00019673  0x00004bb8 arg  0x00001000 , 0x00000011 
+ 00019674  0x00004bb9 fetch  0x00000002 , 0x0000025b 
+ 00019675  0x00004bba branch  0x00006608 
+ 00019676  0x00004bc0 force  0x00000004 , 0x00000039 
+ 00019677  0x00004bc2 call  0x00004cf4 
+ 00019678  0x00004bc3 force  0x00000001 , 0x0000003f 
+ 00019679  0x00004bc4 istore  0x00000001 , 0x0000000a 
+ 00019680  0x00004bc5 deposit  0x00000030 
+ 00019681  0x00004bc6 istore  0x00000003 , 0x0000000a 
+ 00019682  0x00004bc7 force  0x0000000e , 0x00000007 
+ 00019683  0x00004bc9 bpatchx  0x00000004 , 0x00004020 
+ 00019684  0x00004bca call  0x00004cf6 
+ 00019685  0x00004bcb deposit  0x00000007 
+ 00019686  0x00004bcc istore  0x00000001 , 0x0000000a 
+ 00019687  0x00004bcd deposit  0x00000039 
+ 00019688  0x00004bce istore  0x00000001 , 0x0000000a 
+ 00019689  0x00004bd0 force  0x00000005 , 0x00000007 
+ 00019690  0x00004bd1 increase  0x00000002 , 0x00000039 
+ 00019691  0x00004bd3 branch  0x00004bf9 
+ 00019692  0x00004bd6 force  0x000000ff , 0x00000007 
+ 00019693  0x00004bd7 call  0x00004cf4 
+ 00019694  0x00004bd8 setarg  0x00000001 
+ 00019695  0x00004bd9 istore  0x00000001 , 0x0000000a 
+ 00019696  0x00004bda force  0x00000001 , 0x00000039 
+ 00019697  0x00004bdb branch  0x00004ce3 
+ 00019698  0x00004bde force  0x0000000c , 0x0000000a 
+ 00019699  0x00004bdf branch  0x00004cf7 
+ 00019700  0x00004be2 force  0x00000008 , 0x0000000a 
+ 00019701  0x00004be3 branch  0x00004cf7 
+ 00019702  0x00004be6 force  0x00000006 , 0x0000000a 
+ 00019703  0x00004be8 branch  0x00004bf5 
+ 00019704  0x00004bed pulse  0x0000000f 
+ 00019705  0x00004bee enable  0x00000009 
+ 00019706  0x00004bf0 ifetch  0x00000001 , 0x0000000a 
+ 00019707  0x00004bf1 inject  0x00000000 , 0x00000008 
+ 00019708  0x00004bf2 loop  0x00004cfa 
+ 00019709  0x00004bf3 enable  0x00000008 
+ 00019710  0x00004bf4 inject  0x00000000 , 0x00000010 
+ 00019711  0x00004bf5 disable  0x00000008 
+ 00019712  0x00004bf6 disable  0x00000009 
+ 00019713  0x00004bf7 disable  0x0000000f 
+ 00019714  0x00004bf8 byteswap  0x0000003f , 0x0000003f 
+ 00019715  0x00004bf9 rtn 
+ 00019716  0x00004bfe jam  0x00000000 , 0x000041ce 
+ 00019717  0x00004bff rtn 
+ 00019718  0x00004c01 fetch  0x00000006 , 0x000041d0 
+ 00019719  0x00004c02 fetcht  0x00000006 , 0x00000040 
+ 00019720  0x00004c03 isub  0x00000002 , 0x0000003e 
+ 00019721  0x00004c04 rtn 
+ 00019722  0x00004c0a fetch  0x00000001 , 0x0000004b 
+ 00019723  0x00004c0b bbit1  0x00000002 , 0x00004d0f 
+ 00019724  0x00004c0c call  0x000062ef 
+ 00019725  0x00004c0d jam  0x00000008 , 0x0000007c 
+ 00019726  0x00004c0e branch  0x00004d04 
+ 00019727  0x00004c10 set0  0x00000002 , 0x0000003f 
+ 00019728  0x00004c11 store  0x00000001 , 0x0000004b 
+ 00019729  0x00004c12 call  0x00006001 
+ 00019730  0x00004c13 setarg  0x00000000 
+ 00019731  0x00004c14 setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00019732  0x00004c15 store  0x00000001 , 0x0000007f 
+ 00019733  0x00004c16 branch  0x00004d04 
+ 00019734  0x00004c17 rtn 
+ 00019735  0x00004c19 jam  0x00000017 , 0x0000007c 
+ 00019736  0x00004c1a arg  0x000004d9 , 0x00000005 
+ 00019737  0x00004c1b setarg  0x00000000 
+ 00019738  0x00004c1c isolate1  0x0000001b , 0x00000028 
+ 00019739  0x00004c1d setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00019740  0x00004c1e istore  0x00000001 , 0x00000005 
+ 00019741  0x00004c1f setarg  0x00000000 
+ 00019742  0x00004c20 istore  0x00000002 , 0x00000005 
+ 00019743  0x00004c21 fetch  0x00000002 , 0x000041e3 
+ 00019744  0x00004c22 istore  0x00000002 , 0x00000005 
+ 00019745  0x00004c23 fetch  0x00000001 , 0x000041e5 
+ 00019746  0x00004c24 istore  0x00000002 , 0x00000005 
+ 00019747  0x00004c25 fetch  0x00000001 , 0x000041e7 
+ 00019748  0x00004c26 istore  0x00000002 , 0x00000005 
+ 00019749  0x00004c27 branch  0x00004d04 
+ 00019750  0x00004c2a jam  0x00000018 , 0x0000007c 
+ 00019751  0x00004c2b branch  0x00004d04 
+ 00019752  0x00004c2e call  0x00006899 
+ 00019753  0x00004c2f rtn  0x00000001 
+ 00019754  0x00004c30 arg  0x00000007 , 0x00000002 
+ 00019755  0x00004c31 call  0x0000681d 
+ 00019756  0x00004c32 nbranch  0x00004d2f , 0x00000001 
+ 00019757  0x00004c33 jam  0x00000001 , 0x00004245 
+ 00019758  0x00004c34 rtn 
+ 00019759  0x00004c36 fetch  0x00000001 , 0x00004245 
+ 00019760  0x00004c37 rtnne  0x00000001 
+ 00019761  0x00004c38 call  0x00004c62 
+ 00019762  0x00004c39 branch  0x00004cec 
+ 00019763  0x00004c48 bpatchx  0x00000005 , 0x00004020 
+ 00019764  0x00004c49 fetch  0x00000002 , 0x00000264 
+ 00019765  0x00004c4a copy  0x0000003f , 0x00000006 
+ 00019766  0x00004c4b ifetch  0x00000001 , 0x00000006 
+ 00019767  0x00004c4c and  0x0000003f , 0x0000000f , 0x00000002 
+ 00019768  0x00004c4d rshift4  0x0000003f , 0x0000003f 
+ 00019769  0x00004c4e beq  0x00000009 , 0x00004d53 
+ 00019770  0x00004c4f beq  0x00000007 , 0x00004d53 
+ 00019771  0x00004c50 beq  0x0000000a , 0x00004d5f 
+ 00019772  0x00004c51 beq  0x00000005 , 0x00004d4b 
+ 00019773  0x00004c52 beq  0x00000001 , 0x00004d3f 
+ 00019774  0x00004c53 rtn 
+ 00019775  0x00004c56 copy  0x00000002 , 0x0000003f 
+ 00019776  0x00004c57 beq  0x00000005 , 0x00004d43 
+ 00019777  0x00004c58 beq  0x00000003 , 0x00004d4a 
+ 00019778  0x00004c59 rtn 
+ 00019779  0x00004c5c jam  0x00000027 , 0x00000a99 
+ 00019780  0x00004c5d call  0x00007d86 
+ 00019781  0x00004c5e fetch  0x00000001 , 0x00004092 
+ 00019782  0x00004c5f rtnbit0  0x00000006 
+ 00019783  0x00004c60 copy  0x00000002 , 0x0000003f 
+ 00019784  0x00004c61 beq  0x00000005 , 0x0000438e 
+ 00019785  0x00004c62 rtn 
+ 00019786  0x00004c64 rtn 
+ 00019787  0x00004c67 call  0x00004d5f 
+ 00019788  0x00004c68 arg  0x00000001 , 0x00000011 
+ 00019789  0x00004c69 call  0x00004d63 
+ 00019790  0x00004c6a fetch  0x00000002 , 0x0000424c 
+ 00019791  0x00004c6b istore  0x00000002 , 0x00000005 
+ 00019792  0x00004c6c setarg  0x00000000 
+ 00019793  0x00004c6d istore  0x00000001 , 0x00000005 
+ 00019794  0x00004c6e rtn 
+ 00019795  0x00004c71 arg  0x00000001 , 0x00000011 
+ 00019796  0x00004c72 call  0x00004d63 
+ 00019797  0x00004c73 fetch  0x00000002 , 0x0000424c 
+ 00019798  0x00004c74 istore  0x00000002 , 0x00000005 
+ 00019799  0x00004c75 setarg  0x00000000 
+ 00019800  0x00004c76 istore  0x00000001 , 0x00000005 
+ 00019801  0x00004c77 jam  0x00000001 , 0x00000a8e 
+ 00019802  0x00004c78 fetch  0x00000001 , 0x00004252 
+ 00019803  0x00004c79 set1  0x00000006 
+ 00019804  0x00004c7a store  0x00000001 , 0x00004252 
+ 00019805  0x00004c7b jam  0x00000012 , 0x00000a99 
+ 00019806  0x00004c7c branch  0x00007d86 
+ 00019807  0x00004c7f ifetch  0x00000001 , 0x00000006 
+ 00019808  0x00004c80 beq  0x00000001 , 0x00004d62 
+ 00019809  0x00004c81 rtn 
+ 00019810  0x00004c84 rtn 
+ 00019811  0x00004c88 call  0x00005240 
+ 00019812  0x00004c89 copy  0x00000011 , 0x00000002 
+ 00019813  0x00004c8a storet  0x00000001 , 0x00000a8e 
+ 00019814  0x00004c8b copy  0x0000003f , 0x00000005 
+ 00019815  0x00004c8c copy  0x00000011 , 0x0000003f 
+ 00019816  0x00004c8d istore  0x00000002 , 0x00000005 
+ 00019817  0x00004c8e rtn 
+ 00019818  0x00004ca0 branch  0x00004d6f , 0x0000002b 
+ 00019819  0x00004ca2 setarg  0x00004365 
+ 00019820  0x00004ca3 arg  0x00004246 , 0x00000005 
+ 00019821  0x00004ca4 isub  0x00000005 , 0x00000039 
+ 00019822  0x00004ca5 call  0x00007ed4 
+ 00019823  0x00004ca7 bpatchx  0x00000006 , 0x00004020 
+ 00019824  0x00004ca8 setarg  0x00000551 
+ 00019825  0x00004ca9 arg  0x00000511 , 0x00000005 
+ 00019826  0x00004caa isub  0x00000005 , 0x00000039 
+ 00019827  0x00004cab call  0x00007ed4 
+ 00019828  0x00004cac setarg  0x000002c9 
+ 00019829  0x00004cad arg  0x0000025d , 0x00000005 
+ 00019830  0x00004cae isub  0x00000005 , 0x00000039 
+ 00019831  0x00004caf call  0x00007ed4 
+ 00019832  0x00004cb0 branch  0x00005318 
+ 00019833  0x00004cb3 bpatchx  0x00000007 , 0x00004020 
+ 00019834  0x00004cb4 copy  0x00000006 , 0x00000002 
+ 00019835  0x00004cb7 copy  0x00000002 , 0x00000006 
+ 00019836  0x00004cb8 ifetch  0x00000002 , 0x00000006 
+ 00019837  0x00004cb9 store  0x00000002 , 0x00000266 
+ 00019838  0x00004cba ifetch  0x00000002 , 0x00000006 
+ 00019839  0x00004cbb store  0x00000002 , 0x00000268 
+ 00019840  0x00004cbc deposit  0x00000006 
+ 00019841  0x00004cbd store  0x00000002 , 0x00000264 
+ 00019842  0x00004cbe fetch  0x00000001 , 0x00004681 
+ 00019843  0x00004cbf beq  0x00000000 , 0x00004d85 
+ 00019844  0x00004cc0 branch  0x000050ef 
+ 00019845  0x00004cc3 fetch  0x00000002 , 0x00000266 
+ 00019846  0x00004cc4 branch  0x00004dfc , 0x00000034 
+ 00019847  0x00004cc5 bpatchx  0x00000008 , 0x00004021 
+ 00019848  0x00004cc6 fetch  0x00000001 , 0x00000268 
+ 00019849  0x00004cc7 beq  0x00000001 , 0x00004d9d 
+ 00019850  0x00004cc9 beq  0x00000050 , 0x00004de0 
+ 00019851  0x00004cca beq  0x00000051 , 0x00004df5 
+ 00019852  0x00004ccb beq  0x00000052 , 0x00004df3 
+ 00019853  0x00004ccc beq  0x00000053 , 0x00004df3 
+ 00019854  0x00004ccd branch  0x00004dfc 
+ 00019855  0x00004cd2 bpatchx  0x00000009 , 0x00004021 
+ 00019856  0x00004cd3 call  0x0000527e 
+ 00019857  0x00004cd4 fetch  0x00000001 , 0x00004256 
+ 00019858  0x00004cd5 beq  0x00000000 , 0x00004d9b 
+ 00019859  0x00004cd6 beq  0x00000001 , 0x00004d9b 
+ 00019860  0x00004cd7 beq  0x00000002 , 0x00004d9b 
+ 00019861  0x00004cd8 beq  0x00000003 , 0x00004d9b 
+ 00019862  0x00004cd9 beq  0x00000081 , 0x00004d9b 
+ 00019863  0x00004cda beq  0x000000c0 , 0x00004d9b 
+ 00019864  0x00004cdb beq  0x00000080 , 0x00004d9b 
+ 00019865  0x00004cdc beq  0x00000040 , 0x00004d9b 
+ 00019866  0x00004cdd rtn 
+ 00019867  0x00004ce0 setarg  0x00000000 
+ 00019868  0x00004ce1 rtn 
+ 00019869  0x00004ce5 call  0x00004d8f 
+ 00019870  0x00004ce6 nrtn  0x00000034 
+ 00019871  0x00004ce8 call  0x000052b8 
+ 00019872  0x00004ce9 call  0x00004e01 
+ 00019873  0x00004cea fetcht  0x00000002 , 0x0000026f 
+ 00019874  0x00004ceb branch  0x00004dfb , 0x00000034 
+ 00019875  0x00004cec call  0x000052c1 
+ 00019876  0x00004ced fetch  0x00000002 , 0x0000026f 
+ 00019877  0x00004cee istore  0x00000002 , 0x00000005 
+ 00019878  0x00004cef force  0x00000001 , 0x0000003f 
+ 00019879  0x00004cf0 istore  0x00000002 , 0x00000005 
+ 00019880  0x00004cf1 branch  0x00004dfc 
+ 00019881  0x00004cf4 fetch  0x00000001 , 0x00004364 
+ 00019882  0x00004cf5 rtn  0x00000034 
+ 00019883  0x00004cf6 copy  0x0000003f , 0x00000011 
+ 00019884  0x00004cf7 bpatchx  0x0000000a , 0x00004021 
+ 00019885  0x00004cf8 fetch  0x00000004 , 0x000002d5 
+ 00019886  0x00004cf9 arg  0x00000100 , 0x00000002 
+ 00019887  0x00004cfa iadd  0x00000002 , 0x00000002 
+ 00019888  0x00004cfb copy  0x00000022 , 0x0000003f 
+ 00019889  0x00004cfc isub  0x00000002 , 0x0000003e 
+ 00019890  0x00004cfd nrtn  0x00000002 
+ 00019891  0x00004cfe jam  0x00000000 , 0x00004364 
+ 00019892  0x00004cff copy  0x00000011 , 0x0000003f 
+ 00019893  0x00004d00 beq  0x00000050 , 0x00004db7 
+ 00019894  0x00004d01 branch  0x00002a8c 
+ 00019895  0x00004d03 arg  0x00000000 , 0x00000008 
+ 00019896  0x00004d04 call  0x000052b8 
+ 00019897  0x00004d05 call  0x00004e7a 
+ 00019898  0x00004d06 call  0x000052c3 
+ 00019899  0x00004d07 call  0x00007ea8 
+ 00019900  0x00004d08 call  0x00004ead 
+ 00019901  0x00004d09 call  0x000052c1 
+ 00019902  0x00004d0b setarg  0x0000000c 
+ 00019903  0x00004d0c istore  0x00000002 , 0x00000005 
+ 00019904  0x00004d0d force  0x00000001 , 0x0000003f 
+ 00019905  0x00004d0e istore  0x00000002 , 0x00000005 
+ 00019906  0x00004d0f branch  0x00004dfc 
+ 00019907  0x00004d14 bpatchx  0x0000000b , 0x00004021 
+ 00019908  0x00004d15 fetch  0x00000002 , 0x00000275 
+ 00019909  0x00004d16 increase  0x00000004 , 0x0000003f 
+ 00019910  0x00004d17 rshift4  0x0000003f , 0x0000003f 
+ 00019911  0x00004d18 rshift3  0x0000003f , 0x0000003f 
+ 00019912  0x00004d19 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00019913  0x00004d1a arg  0x00004260 , 0x00000006 
+ 00019914  0x00004d1b ifetch  0x00000003 , 0x00000006 
+ 00019915  0x00004d1c rtn  0x00000034 
+ 00019916  0x00004d1d store  0x00000003 , 0x00000ac2 
+ 00019917  0x00004d1e fetch  0x00000001 , 0x00000ac2 
+ 00019918  0x00004d1f copy  0x0000003f , 0x00000011 
+ 00019919  0x00004d20 call  0x00004dd3 
+ 00019920  0x00004d21 copy  0x00000012 , 0x0000003f 
+ 00019921  0x00004d22 store  0x00000001 , 0x00004260 
+ 00019922  0x00004d23 rtn 
+ 00019923  0x00004d26 arg  0x00000000 , 0x00000007 
+ 00019924  0x00004d27 arg  0x00000000 , 0x00000012 
+ 00019925  0x00004d2a sub  0x00000007 , 0x00000007 , 0x0000003e 
+ 00019926  0x00004d2b nrtn  0x00000002 
+ 00019927  0x00004d2c qisolate1  0x00000011 
+ 00019928  0x00004d2d branch  0x00004dda , 0x00000001 
+ 00019929  0x00004d2e branch  0x00004dde 
+ 00019930  0x00004d31 copy  0x00000002 , 0x0000003f 
+ 00019931  0x00004d32 branch  0x00004dde , 0x00000034 
+ 00019932  0x00004d33 qset1  0x00000012 
+ 00019933  0x00004d34 increase  0xffffffff , 0x00000002 
+ 00019934  0x00004d37 increase  0x00000001 , 0x00000007 
+ 00019935  0x00004d38 branch  0x00004dd5 
+ 00019936  0x00004d3b call  0x00005274 
+ 00019937  0x00004d3c nrtn  0x00000034 
+ 00019938  0x00004d3d call  0x00004d8f 
+ 00019939  0x00004d3e nrtn  0x00000034 
+ 00019940  0x00004d3f call  0x000052c5 
+ 00019941  0x00004d40 call  0x00006e11 
+ 00019942  0x00004d41 call  0x00004dc3 
+ 00019943  0x00004d42 branch  0x00004dec 
+ 00019944  0x00004d46 call  0x00005274 
+ 00019945  0x00004d47 nrtn  0x00000034 
+ 00019946  0x00004d48 call  0x000052c5 
+ 00019947  0x00004d49 call  0x00006e11 
+ 00019948  0x00004d4b call  0x000052ce 
+ 00019949  0x00004d4c fetch  0x00000002 , 0x00000275 
+ 00019950  0x00004d4d branch  0x00004dfb , 0x00000034 
+ 00019951  0x00004d4e istore  0x00000002 , 0x00000005 
+ 00019952  0x00004d4f fetch  0x00000002 , 0x00004248 
+ 00019953  0x00004d50 istore  0x00000002 , 0x00000005 
+ 00019954  0x00004d51 branch  0x00004dfc 
+ 00019955  0x00004d54 call  0x00004d33 
+ 00019956  0x00004d55 branch  0x00004dfc 
+ 00019957  0x00004d58 bpatchx  0x0000000c , 0x00004021 
+ 00019958  0x00004d59 jam  0x00000000 , 0x00000284 
+ 00019959  0x00004d5a call  0x00006a8a 
+ 00019960  0x00004d5b fetch  0x00000001 , 0x00000284 
+ 00019961  0x00004d5c rtneq  0x00000001 
+ 00019962  0x00004d5d branch  0x00004dfc 
+ 00019963  0x00004d5f call  0x00005264 
+ 00019964  0x00004d62 setarg  0x00000000 
+ 00019965  0x00004d63 store  0x00000002 , 0x00000266 
+ 00019966  0x00004d64 store  0x00000002 , 0x00000268 
+ 00019967  0x00004d65 jam  0x00000001 , 0x0000026a 
+ 00019968  0x00004d66 rtn 
+ 00019969  0x00004d69 bpatchx  0x0000000d , 0x00004021 
+ 00019970  0x00004d6a call  0x000052c3 
+ 00019971  0x00004d6b force  0x00000000 , 0x00000012 
+ 00019972  0x00004d6c fetch  0x00000002 , 0x00000266 
+ 00019973  0x00004d6d copy  0x0000003f , 0x00000013 
+ 00019974  0x00004d6e fetch  0x00000002 , 0x00000264 
+ 00019975  0x00004d6f iforce  0x00000006 
+ 00019976  0x00004d71 call  0x00004e10 
+ 00019977  0x00004d72 deposit  0x00000013 
+ 00019978  0x00004d73 increase  0xfffffffc , 0x00000013 
+ 00019979  0x00004d74 increase  0xfffffffc , 0x0000003f 
+ 00019980  0x00004d75 nbranch  0x00004e08 , 0x00000034 
+ 00019981  0x00004d76 copy  0x00000012 , 0x0000003f 
+ 00019982  0x00004d77 store  0x00000002 , 0x0000026f 
+ 00019983  0x00004d78 rtn 
+ 00019984  0x00004d7b bpatchx  0x0000000e , 0x00004021 
+ 00019985  0x00004d7c ifetch  0x00000001 , 0x00000006 
+ 00019986  0x00004d7d beq  0x00000001 , 0x00004e49 
+ 00019987  0x00004d7e beq  0x00000002 , 0x00004e51 
+ 00019988  0x00004d7f beq  0x00000003 , 0x00004ed5 
+ 00019989  0x00004d80 beq  0x00000004 , 0x00004f05 
+ 00019990  0x00004d81 beq  0x00000005 , 0x00004fa2 
+ 00019991  0x00004d82 beq  0x00000006 , 0x00004fcb 
+ 00019992  0x00004d83 beq  0x00000007 , 0x0000501b 
+ 00019993  0x00004d84 beq  0x00000008 , 0x00005050 
+ 00019994  0x00004d85 beq  0x00000009 , 0x00005060 
+ 00019995  0x00004d86 beq  0x0000000a , 0x00004e1f 
+ 00019996  0x00004d87 beq  0x0000000b , 0x00005061 
+ 00019997  0x00004d88 call  0x00005062 
+ 00019998  0x00004d8a rtn 
+ 00019999  0x00004d8d ifetch  0x00000001 , 0x00000006 
+ 00020000  0x00004d8e copy  0x0000003f , 0x00000007 
+ 00020001  0x00004d8f ifetch  0x00000002 , 0x00000006 
+ 00020002  0x00004d90 copy  0x0000003f , 0x00000011 
+ 00020003  0x00004d91 copy  0x00000013 , 0x0000003f 
+ 00020004  0x00004d92 isub  0x00000011 , 0x00000013 
+ 00020005  0x00004d93 setarg  0x0000000b 
+ 00020006  0x00004d94 istore  0x00000001 , 0x00000005 
+ 00020007  0x00004d95 copy  0x00000007 , 0x0000003f 
+ 00020008  0x00004d96 istore  0x00000001 , 0x00000005 
+ 00020009  0x00004d97 ifetch  0x00000002 , 0x00000006 
+ 00020010  0x00004d99 beq  0x00000002 , 0x00004e2d 
+ 00020011  0x00004d9a beq  0x00000003 , 0x00004e33 
+ 00020012  0x00004d9b rtn 
+ 00020013  0x00004d9d setarg  0x00020008 
+ 00020014  0x00004d9e istore  0x00000006 , 0x00000005 
+ 00020015  0x00004d9f setarg  0x00000280 
+ 00020016  0x00004da0 istore  0x00000004 , 0x00000005 
+ 00020017  0x00004da1 force  0x0000000c , 0x0000003f 
+ 00020018  0x00004da2 branch  0x00004e38 
+ 00020019  0x00004da4 setarg  0x0003000c 
+ 00020020  0x00004da5 istore  0x00000006 , 0x00000005 
+ 00020021  0x00004da6 setarg  0x00000006 
+ 00020022  0x00004da7 istore  0x00000008 , 0x00000005 
+ 00020023  0x00004da8 force  0x00000010 , 0x0000003f 
+ 00020024  0x00004daa iadd  0x00000012 , 0x00000012 
+ 00020025  0x00004dab branch  0x00004e1e 
+ 00020026  0x00004dae ifetch  0x00000001 , 0x00000006 
+ 00020027  0x00004daf copy  0x0000003f , 0x00000007 
+ 00020028  0x00004db0 ifetch  0x00000002 , 0x00000006 
+ 00020029  0x00004db1 copy  0x0000003f , 0x00000011 
+ 00020030  0x00004db2 ifetch  0x00000002 , 0x00000006 
+ 00020031  0x00004db3 store  0x00000002 , 0x00000aa2 
+ 00020032  0x00004db4 copy  0x00000013 , 0x0000003f 
+ 00020033  0x00004db5 isub  0x00000011 , 0x00000013 
+ 00020034  0x00004db6 call  0x000052c3 
+ 00020035  0x00004db7 setarg  0x0000000b 
+ 00020036  0x00004db8 istore  0x00000001 , 0x00000005 
+ 00020037  0x00004db9 copy  0x00000007 , 0x0000003f 
+ 00020038  0x00004dba istore  0x00000001 , 0x00000005 
+ 00020039  0x00004dbb fetch  0x00000002 , 0x00000aa2 
+ 00020040  0x00004dbc branch  0x00004e2a 
+ 00020041  0x00004dc1 ifetch  0x00000001 , 0x00000006 
+ 00020042  0x00004dc2 copy  0x0000003f , 0x00000007 
+ 00020043  0x00004dc3 ifetch  0x00000002 , 0x00000006 
+ 00020044  0x00004dc4 copy  0x0000003f , 0x00000011 
+ 00020045  0x00004dc5 iadd  0x00000006 , 0x00000006 
+ 00020046  0x00004dc6 copy  0x00000013 , 0x0000003f 
+ 00020047  0x00004dc7 isub  0x00000011 , 0x00000013 
+ 00020048  0x00004dc9 branch  0x00004e1e 
+ 00020049  0x00004dcc call  0x00007ea8 
+ 00020050  0x00004dcf call  0x00007ead 
+ 00020051  0x00004dd0 arg  0x00000000 , 0x00000008 
+ 00020052  0x00004dd1 ifetch  0x00000001 , 0x00000006 
+ 00020053  0x00004dd2 copy  0x0000003f , 0x00000007 
+ 00020054  0x00004dd3 ifetch  0x00000002 , 0x00000006 
+ 00020055  0x00004dd4 copy  0x0000003f , 0x00000011 
+ 00020056  0x00004dd5 ifetch  0x00000002 , 0x00000006 
+ 00020057  0x00004dd6 copy  0x0000003f , 0x00000002 
+ 00020058  0x00004dd7 ifetch  0x00000002 , 0x00000006 
+ 00020059  0x00004dd8 copy  0x0000003f , 0x0000000b 
+ 00020060  0x00004dd9 bpatchx  0x0000000f , 0x00004021 
+ 00020061  0x00004dda copy  0x00000002 , 0x0000003f 
+ 00020062  0x00004ddb beq  0x00000001 , 0x00004e64 
+ 00020063  0x00004ddc beq  0x00000003 , 0x00004e86 
+ 00020064  0x00004ddd beq  0x00000011 , 0x00004e92 
+ 00020065  0x00004dde beq  0x00000013 , 0x00004e9d 
+ 00020066  0x00004ddf call  0x00005062 
+ 00020067  0x00004de0 branch  0x00004ed4 
+ 00020068  0x00004de3 call  0x00007ea8 
+ 00020069  0x00004de4 arg  0x00000050 , 0x00000002 
+ 00020070  0x00004de5 fetch  0x00000002 , 0x00004248 
+ 00020071  0x00004de6 nbranch  0x00004ece , 0x00000034 
+ 00020072  0x00004de7 copy  0x0000000b , 0x0000003f 
+ 00020073  0x00004de8 store  0x00000002 , 0x00004248 
+ 00020074  0x00004de9 copy  0x00000022 , 0x0000003f 
+ 00020075  0x00004dea store  0x00000004 , 0x000002d5 
+ 00020076  0x00004deb call  0x00004e6e 
+ 00020077  0x00004dec branch  0x00004ea9 
+ 00020078  0x00004def storet  0x00000002 , 0x000002d3 
+ 00020079  0x00004df0 deposit  0x0000000b 
+ 00020080  0x00004df1 store  0x00000002 , 0x000002c9 
+ 00020081  0x00004df2 deposit  0x00000011 
+ 00020082  0x00004df3 store  0x00000002 , 0x000002cb 
+ 00020083  0x00004df4 deposit  0x00000012 
+ 00020084  0x00004df5 store  0x00000002 , 0x000002cd 
+ 00020085  0x00004df6 deposit  0x00000013 
+ 00020086  0x00004df7 store  0x00000002 , 0x000002cf 
+ 00020087  0x00004df8 deposit  0x00000007 
+ 00020088  0x00004df9 store  0x00000002 , 0x000002d1 
+ 00020089  0x00004dfa rtn 
+ 00020090  0x00004dfd fetcht  0x00000002 , 0x000002d3 
+ 00020091  0x00004dfe fetch  0x00000002 , 0x000002c9 
+ 00020092  0x00004dff copy  0x0000003f , 0x0000000b 
+ 00020093  0x00004e00 fetch  0x00000002 , 0x000002cb 
+ 00020094  0x00004e01 copy  0x0000003f , 0x00000011 
+ 00020095  0x00004e02 fetch  0x00000002 , 0x000002cd 
+ 00020096  0x00004e03 copy  0x0000003f , 0x00000012 
+ 00020097  0x00004e04 fetch  0x00000002 , 0x000002cf 
+ 00020098  0x00004e05 copy  0x0000003f , 0x00000013 
+ 00020099  0x00004e06 fetch  0x00000002 , 0x000002d1 
+ 00020100  0x00004e07 copy  0x0000003f , 0x00000007 
+ 00020101  0x00004e08 rtn 
+ 00020102  0x00004e0b call  0x00007ea8 
+ 00020103  0x00004e0c setarg  0x00000051 
+ 00020104  0x00004e0d arg  0x00000051 , 0x00000002 
+ 00020105  0x00004e0e fetch  0x00000002 , 0x0000424a 
+ 00020106  0x00004e0f nbranch  0x00004ece , 0x00000034 
+ 00020107  0x00004e10 copy  0x0000000b , 0x0000003f 
+ 00020108  0x00004e11 store  0x00000002 , 0x0000424a 
+ 00020109  0x00004e12 fetch  0x00000001 , 0x00004251 
+ 00020110  0x00004e13 set1  0x00000000 , 0x0000003f 
+ 00020111  0x00004e14 set1  0x00000001 , 0x0000003f 
+ 00020112  0x00004e15 store  0x00000001 , 0x00004251 
+ 00020113  0x00004e16 branch  0x00004eb1 
+ 00020114  0x00004e18 call  0x00007ea8 
+ 00020115  0x00004e19 arg  0x00000052 , 0x00000002 
+ 00020116  0x00004e1a fetch  0x00000002 , 0x0000424c 
+ 00020117  0x00004e1b nbranch  0x00004ece , 0x00000034 
+ 00020118  0x00004e1c copy  0x0000000b , 0x0000003f 
+ 00020119  0x00004e1d store  0x00000002 , 0x0000424c 
+ 00020120  0x00004e1e fetch  0x00000001 , 0x00004252 
+ 00020121  0x00004e1f set1  0x00000000 , 0x0000003f 
+ 00020122  0x00004e20 set1  0x00000001 , 0x0000003f 
+ 00020123  0x00004e21 store  0x00000001 , 0x00004252 
+ 00020124  0x00004e22 branch  0x00004eb1 
+ 00020125  0x00004e24 call  0x00007ea8 
+ 00020126  0x00004e25 deposit  0x0000001a 
+ 00020127  0x00004e26 arg  0x00000053 , 0x00000002 
+ 00020128  0x00004e27 fetch  0x00000002 , 0x0000424e 
+ 00020129  0x00004e28 nbranch  0x00004ece , 0x00000034 
+ 00020130  0x00004e29 copy  0x0000000b , 0x0000003f 
+ 00020131  0x00004e2a store  0x00000002 , 0x0000424e 
+ 00020132  0x00004e2b fetch  0x00000001 , 0x00004253 
+ 00020133  0x00004e2c set1  0x00000000 , 0x0000003f 
+ 00020134  0x00004e2d set1  0x00000001 , 0x0000003f 
+ 00020135  0x00004e2e store  0x00000001 , 0x00004253 
+ 00020136  0x00004e2f branch  0x00004eb1 
+ 00020137  0x00004e32 setarg  0x00000001 
+ 00020138  0x00004e33 store  0x00000002 , 0x0000027d 
+ 00020139  0x00004e34 jam  0x00000050 , 0x00004364 
+ 00020140  0x00004e35 branch  0x00004eb3 
+ 00020141  0x00004e37 fetch  0x00000001 , 0x00004250 
+ 00020142  0x00004e38 set1  0x00000000 , 0x0000003f 
+ 00020143  0x00004e39 set1  0x00000001 , 0x0000003f 
+ 00020144  0x00004e3a store  0x00000001 , 0x00004250 
+ 00020145  0x00004e3c setarg  0x00000000 
+ 00020146  0x00004e3d store  0x00000002 , 0x0000027d 
+ 00020147  0x00004e3f bpatchx  0x00000010 , 0x00004022 
+ 00020148  0x00004e40 call  0x00007ead 
+ 00020149  0x00004e41 setarg  0x00000003 
+ 00020150  0x00004e42 istore  0x00000001 , 0x00000005 
+ 00020151  0x00004e43 copy  0x00000007 , 0x0000003f 
+ 00020152  0x00004e44 istore  0x00000001 , 0x00000005 
+ 00020153  0x00004e45 setarg  0x00000008 
+ 00020154  0x00004e46 istore  0x00000002 , 0x00000005 
+ 00020155  0x00004e47 copy  0x00000002 , 0x0000003f 
+ 00020156  0x00004e48 istore  0x00000002 , 0x00000005 
+ 00020157  0x00004e49 copy  0x0000000b , 0x0000003f 
+ 00020158  0x00004e4a istore  0x00000002 , 0x00000005 
+ 00020159  0x00004e4b fetch  0x00000002 , 0x0000027d 
+ 00020160  0x00004e4c beq  0x00000001 , 0x00004ec9 
+ 00020161  0x00004e4d isolate0  0x00000000 , 0x00000008 
+ 00020162  0x00004e4e branch  0x00004ec4 , 0x00000001 
+ 00020163  0x00004e4f setarg  0x00000004 
+ 00020164  0x00004e51 istore  0x00000002 , 0x00000005 
+ 00020165  0x00004e52 force  0x00000000 , 0x0000003f 
+ 00020166  0x00004e53 istore  0x00000002 , 0x00000005 
+ 00020167  0x00004e54 setarg  0x0000000c 
+ 00020168  0x00004e55 branch  0x00004ed0 
+ 00020169  0x00004e57 istore  0x00000002 , 0x00000005 
+ 00020170  0x00004e58 force  0x00000002 , 0x0000003f 
+ 00020171  0x00004e59 istore  0x00000002 , 0x00000005 
+ 00020172  0x00004e5a setarg  0x0000000c 
+ 00020173  0x00004e5b branch  0x00004ed0 
+ 00020174  0x00004e5e set1  0x00000000 , 0x00000008 
+ 00020175  0x00004e5f branch  0x00004eb1 
+ 00020176  0x00004e61 iadd  0x00000012 , 0x00000012 
+ 00020177  0x00004e62 copy  0x00000013 , 0x0000003f 
+ 00020178  0x00004e63 isub  0x00000011 , 0x00000013 
+ 00020179  0x00004e64 branch  0x00004ed4 
+ 00020180  0x00004e66 branch  0x00004e1e 
+ 00020181  0x00004e69 ifetch  0x00000001 , 0x00000006 
+ 00020182  0x00004e6a copy  0x0000003f , 0x00000007 
+ 00020183  0x00004e6b ifetch  0x00000002 , 0x00000006 
+ 00020184  0x00004e6c copy  0x0000003f , 0x00000011 
+ 00020185  0x00004e6d copy  0x00000013 , 0x0000003f 
+ 00020186  0x00004e6e isub  0x00000011 , 0x00000013 
+ 00020187  0x00004e6f ifetch  0x00000002 , 0x00000006 
+ 00020188  0x00004e70 copy  0x0000003f , 0x0000000b 
+ 00020189  0x00004e71 ifetch  0x00000002 , 0x00000006 
+ 00020190  0x00004e72 copy  0x0000003f , 0x00000002 
+ 00020191  0x00004e73 bpatchx  0x00000011 , 0x00004022 
+ 00020192  0x00004e74 setarg  0x00000050 
+ 00020193  0x00004e75 isub  0x00000002 , 0x0000003e 
+ 00020194  0x00004e76 branch  0x00004eed , 0x00000005 
+ 00020195  0x00004e77 setarg  0x00000051 
+ 00020196  0x00004e78 isub  0x00000002 , 0x0000003e 
+ 00020197  0x00004e79 branch  0x00004ef3 , 0x00000005 
+ 00020198  0x00004e7a setarg  0x00000052 
+ 00020199  0x00004e7b isub  0x00000002 , 0x0000003e 
+ 00020200  0x00004e7c branch  0x00004eff , 0x00000005 
+ 00020201  0x00004e7d setarg  0x00000053 
+ 00020202  0x00004e7e isub  0x00000002 , 0x0000003e 
+ 00020203  0x00004e7f branch  0x00004ef9 , 0x00000005 
+ 00020204  0x00004e80 rtn 
+ 00020205  0x00004e83 copy  0x0000000b , 0x0000003f 
+ 00020206  0x00004e84 store  0x00000002 , 0x00004248 
+ 00020207  0x00004e85 fetch  0x00000001 , 0x00004250 
+ 00020208  0x00004e86 set1  0x00000001 , 0x0000003f 
+ 00020209  0x00004e87 store  0x00000001 , 0x00004250 
+ 00020210  0x00004e88 branch  0x00004e1e 
+ 00020211  0x00004e8a copy  0x0000000b , 0x0000003f 
+ 00020212  0x00004e8b store  0x00000002 , 0x0000424a 
+ 00020213  0x00004e8c fetch  0x00000001 , 0x00004251 
+ 00020214  0x00004e8d set1  0x00000001 , 0x0000003f 
+ 00020215  0x00004e8e store  0x00000001 , 0x00004251 
+ 00020216  0x00004e8f rtn 
+ 00020217  0x00004e91 copy  0x0000000b , 0x0000003f 
+ 00020218  0x00004e92 store  0x00000002 , 0x0000424c 
+ 00020219  0x00004e93 fetch  0x00000001 , 0x00004253 
+ 00020220  0x00004e94 set1  0x00000001 , 0x0000003f 
+ 00020221  0x00004e95 store  0x00000001 , 0x00004253 
+ 00020222  0x00004e96 rtn 
+ 00020223  0x00004e98 copy  0x0000000b , 0x0000003f 
+ 00020224  0x00004e99 store  0x00000002 , 0x0000424e 
+ 00020225  0x00004e9a fetch  0x00000001 , 0x00004252 
+ 00020226  0x00004e9b set1  0x00000001 , 0x0000003f 
+ 00020227  0x00004e9c store  0x00000001 , 0x00004252 
+ 00020228  0x00004e9d rtn 
+ 00020229  0x00004ea0 ifetch  0x00000001 , 0x00000006 
+ 00020230  0x00004ea1 copy  0x0000003f , 0x00000007 
+ 00020231  0x00004ea2 ifetch  0x00000002 , 0x00000006 
+ 00020232  0x00004ea3 copy  0x0000003f , 0x00000011 
+ 00020233  0x00004ea4 copy  0x00000013 , 0x0000003f 
+ 00020234  0x00004ea5 isub  0x00000011 , 0x00000013 
+ 00020235  0x00004ea6 ifetch  0x00000002 , 0x00000006 
+ 00020236  0x00004ea7 copy  0x0000003f , 0x00000002 
+ 00020237  0x00004ea8 copy  0x00000002 , 0x00000011 
+ 00020238  0x00004ea9 bpatchx  0x00000012 , 0x00004022 
+ 00020239  0x00004eaa setarg  0x00000050 
+ 00020240  0x00004eab isub  0x00000002 , 0x0000003e 
+ 00020241  0x00004eac branch  0x00004f1c , 0x00000005 
+ 00020242  0x00004ead setarg  0x00000051 
+ 00020243  0x00004eae isub  0x00000002 , 0x0000003e 
+ 00020244  0x00004eaf branch  0x00004f3a , 0x00000005 
+ 00020245  0x00004eb0 setarg  0x00000052 
+ 00020246  0x00004eb1 isub  0x00000002 , 0x0000003e 
+ 00020247  0x00004eb2 branch  0x00004f26 , 0x00000005 
+ 00020248  0x00004eb3 setarg  0x00000053 
+ 00020249  0x00004eb4 isub  0x00000002 , 0x0000003e 
+ 00020250  0x00004eb5 branch  0x00004f30 , 0x00000005 
+ 00020251  0x00004eb6 branch  0x00005062 
+ 00020252  0x00004eb9 copy  0x00000005 , 0x0000000b 
+ 00020253  0x00004eba fetch  0x00000001 , 0x00004250 
+ 00020254  0x00004ebb set1  0x00000004 , 0x0000003f 
+ 00020255  0x00004ebc set1  0x00000003 , 0x0000003f 
+ 00020256  0x00004ebe store  0x00000001 , 0x00004250 
+ 00020257  0x00004ebf copy  0x0000000b , 0x00000005 
+ 00020258  0x00004ec0 arg  0x00000050 , 0x0000000b 
+ 00020259  0x00004ec1 fetch  0x00000002 , 0x00004248 
+ 00020260  0x00004ec2 copy  0x0000003f , 0x00000002 
+ 00020261  0x00004ec3 branch  0x00004f43 
+ 00020262  0x00004ec5 copy  0x00000005 , 0x0000000b 
+ 00020263  0x00004ec6 fetch  0x00000001 , 0x00004252 
+ 00020264  0x00004ec7 set1  0x00000004 , 0x0000003f 
+ 00020265  0x00004ec8 set1  0x00000003 , 0x0000003f 
+ 00020266  0x00004eca store  0x00000001 , 0x00004252 
+ 00020267  0x00004ecb copy  0x0000000b , 0x00000005 
+ 00020268  0x00004ecc arg  0x00000052 , 0x0000000b 
+ 00020269  0x00004ecd fetch  0x00000002 , 0x0000424c 
+ 00020270  0x00004ece copy  0x0000003f , 0x00000002 
+ 00020271  0x00004ecf branch  0x00004f43 
+ 00020272  0x00004ed1 copy  0x00000005 , 0x0000000b 
+ 00020273  0x00004ed2 fetch  0x00000001 , 0x00004253 
+ 00020274  0x00004ed3 set1  0x00000004 , 0x0000003f 
+ 00020275  0x00004ed4 set1  0x00000003 , 0x0000003f 
+ 00020276  0x00004ed6 store  0x00000001 , 0x00004253 
+ 00020277  0x00004ed7 copy  0x0000000b , 0x00000005 
+ 00020278  0x00004ed8 arg  0x00000053 , 0x0000000b 
+ 00020279  0x00004ed9 fetch  0x00000002 , 0x0000424e 
+ 00020280  0x00004eda copy  0x0000003f , 0x00000002 
+ 00020281  0x00004edb branch  0x00004f43 
+ 00020282  0x00004edd copy  0x00000005 , 0x0000000b 
+ 00020283  0x00004ede fetch  0x00000001 , 0x00004251 
+ 00020284  0x00004edf set1  0x00000004 , 0x0000003f 
+ 00020285  0x00004ee0 set1  0x00000003 , 0x0000003f 
+ 00020286  0x00004ee2 store  0x00000001 , 0x00004251 
+ 00020287  0x00004ee4 copy  0x0000000b , 0x00000005 
+ 00020288  0x00004ee5 arg  0x00000051 , 0x0000000b 
+ 00020289  0x00004ee6 fetch  0x00000002 , 0x0000424a 
+ 00020290  0x00004ee7 copy  0x0000003f , 0x00000002 
+ 00020291  0x00004ee9 bpatchx  0x00000013 , 0x00004022 
+ 00020292  0x00004eea setarg  0x00000005 
+ 00020293  0x00004eeb istore  0x00000001 , 0x00000005 
+ 00020294  0x00004eec copy  0x00000007 , 0x0000003f 
+ 00020295  0x00004eed istore  0x00000001 , 0x00000005 
+ 00020296  0x00004eee setarg  0x00000006 
+ 00020297  0x00004eef istore  0x00000002 , 0x00000005 
+ 00020298  0x00004ef0 copy  0x00000002 , 0x0000003f 
+ 00020299  0x00004ef1 istore  0x00000002 , 0x00000005 
+ 00020300  0x00004ef2 force  0x00000000 , 0x0000003f 
+ 00020301  0x00004ef3 istore  0x00000002 , 0x00000005 
+ 00020302  0x00004ef4 force  0x00000000 , 0x0000003f 
+ 00020303  0x00004ef5 istore  0x00000002 , 0x00000005 
+ 00020304  0x00004ef6 force  0x0000000a , 0x0000003f 
+ 00020305  0x00004ef7 iadd  0x00000012 , 0x00000012 
+ 00020306  0x00004ef9 storet  0x00000002 , 0x00000282 
+ 00020307  0x00004efa copy  0x00000007 , 0x0000003f 
+ 00020308  0x00004efb store  0x00000001 , 0x00000281 
+ 00020309  0x00004efc force  0x00000050 , 0x0000003f 
+ 00020310  0x00004efd icompare  0x000000ff , 0x0000000b 
+ 00020311  0x00004efe branch  0x00004f59 , 0x00000001 
+ 00020312  0x00004eff increase  0x00000001 , 0x0000003f 
+ 00020313  0x00004f02 rtn 
+ 00020314  0x00004f04 disable  0x00000028 
+ 00020315  0x00004f05 rtnbit1  0x00000002 , 0x0000003f 
+ 00020316  0x00004f06 rtnbit0  0x00000000 , 0x0000003f 
+ 00020317  0x00004f07 rtnbit0  0x00000001 , 0x0000003f 
+ 00020318  0x00004f08 set1  0x00000002 , 0x0000003f 
+ 00020319  0x00004f09 copy  0x00000006 , 0x00000005 
+ 00020320  0x00004f0a increase  0xffffffff , 0x00000005 
+ 00020321  0x00004f0b istore  0x00000001 , 0x00000005 
+ 00020322  0x00004f0c enable  0x00000028 
+ 00020323  0x00004f0d rtn 
+ 00020324  0x00004f10 fetch  0x00000001 , 0x00004250 
+ 00020325  0x00004f11 call  0x00004f5a 
+ 00020326  0x00004f12 nbranch  0x00004f6b , 0x00000028 
+ 00020327  0x00004f13 jam  0x00000050 , 0x00000280 
+ 00020328  0x00004f14 fetch  0x00000002 , 0x00004248 
+ 00020329  0x00004f15 store  0x00000002 , 0x00000282 
+ 00020330  0x00004f16 branch  0x00004f7f 
+ 00020331  0x00004f18 fetch  0x00000001 , 0x00004251 
+ 00020332  0x00004f19 call  0x00004f5a 
+ 00020333  0x00004f1a nbranch  0x00004f72 , 0x00000028 
+ 00020334  0x00004f1b jam  0x00000051 , 0x00000280 
+ 00020335  0x00004f1c fetch  0x00000002 , 0x0000424a 
+ 00020336  0x00004f1d store  0x00000002 , 0x00000282 
+ 00020337  0x00004f1e branch  0x00004f7f 
+ 00020338  0x00004f20 fetch  0x00000001 , 0x00004252 
+ 00020339  0x00004f21 call  0x00004f5a 
+ 00020340  0x00004f22 nbranch  0x00004f79 , 0x00000028 
+ 00020341  0x00004f23 jam  0x00000052 , 0x00000280 
+ 00020342  0x00004f24 fetch  0x00000002 , 0x0000424c 
+ 00020343  0x00004f25 store  0x00000002 , 0x00000282 
+ 00020344  0x00004f26 branch  0x00004f7f 
+ 00020345  0x00004f28 fetch  0x00000001 , 0x00004253 
+ 00020346  0x00004f29 call  0x00004f5a 
+ 00020347  0x00004f2a nrtn  0x00000028 
+ 00020348  0x00004f2b jam  0x00000053 , 0x00000280 
+ 00020349  0x00004f2c fetch  0x00000002 , 0x0000424e 
+ 00020350  0x00004f2d store  0x00000002 , 0x00000282 
+ 00020351  0x00004f31 bpatchx  0x00000014 , 0x00004022 
+ 00020352  0x00004f32 call  0x0000523a 
+ 00020353  0x00004f33 call  0x000052b8 
+ 00020354  0x00004f34 force  0x00000000 , 0x00000012 
+ 00020355  0x00004f35 call  0x000052c3 
+ 00020356  0x00004f36 force  0x00000004 , 0x0000003f 
+ 00020357  0x00004f37 istore  0x00000001 , 0x00000005 
+ 00020358  0x00004f38 fetch  0x00000001 , 0x00004255 
+ 00020359  0x00004f39 istore  0x00000001 , 0x00000005 
+ 00020360  0x00004f3a setarg  0x00000008 
+ 00020361  0x00004f3b istore  0x00000002 , 0x00000005 
+ 00020362  0x00004f3c fetch  0x00000002 , 0x00000282 
+ 00020363  0x00004f3d istore  0x00000002 , 0x00000005 
+ 00020364  0x00004f3e setarg  0x00000000 
+ 00020365  0x00004f3f istore  0x00000002 , 0x00000005 
+ 00020366  0x00004f40 force  0x00000001 , 0x0000003f 
+ 00020367  0x00004f41 istore  0x00000001 , 0x00000005 
+ 00020368  0x00004f42 force  0x00000002 , 0x0000003f 
+ 00020369  0x00004f43 istore  0x00000001 , 0x00000005 
+ 00020370  0x00004f44 fetch  0x00000001 , 0x00000280 
+ 00020371  0x00004f45 beq  0x00000051 , 0x00004f97 
+ 00020372  0x00004f46 setarg  0x00000030 
+ 00020373  0x00004f47 istore  0x00000002 , 0x00000005 
+ 00020374  0x00004f48 branch  0x00004f99 
+ 00020375  0x00004f4a setarg  0x000003e3 
+ 00020376  0x00004f4b istore  0x00000002 , 0x00000005 
+ 00020377  0x00004f4d arg  0x0000000c , 0x00000002 
+ 00020378  0x00004f4e storet  0x00000002 , 0x0000026f 
+ 00020379  0x00004f4f call  0x000052c1 
+ 00020380  0x00004f50 fetch  0x00000002 , 0x0000026f 
+ 00020381  0x00004f51 istore  0x00000002 , 0x00000005 
+ 00020382  0x00004f52 force  0x00000001 , 0x0000003f 
+ 00020383  0x00004f53 istore  0x00000002 , 0x00000005 
+ 00020384  0x00004f54 jam  0x00000000 , 0x00000280 
+ 00020385  0x00004f56 branch  0x00004e1e 
+ 00020386  0x00004f59 increase  0x00000001 , 0x00000006 
+ 00020387  0x00004f5a ifetch  0x00000002 , 0x00000006 
+ 00020388  0x00004f5b copy  0x0000003f , 0x00000011 
+ 00020389  0x00004f5c copy  0x00000013 , 0x0000003f 
+ 00020390  0x00004f5d isub  0x00000011 , 0x00000013 
+ 00020391  0x00004f5e ifetch  0x00000002 , 0x00000006 
+ 00020392  0x00004f5f copy  0x0000003f , 0x00000011 
+ 00020393  0x00004f60 bpatchx  0x00000015 , 0x00004022 
+ 00020394  0x00004f61 setarg  0x00000050 
+ 00020395  0x00004f62 isub  0x00000011 , 0x0000003e 
+ 00020396  0x00004f63 branch  0x00004fba , 0x00000005 
+ 00020397  0x00004f64 setarg  0x00000051 
+ 00020398  0x00004f65 isub  0x00000011 , 0x0000003e 
+ 00020399  0x00004f66 branch  0x00004fbe , 0x00000005 
+ 00020400  0x00004f67 setarg  0x00000052 
+ 00020401  0x00004f68 isub  0x00000011 , 0x0000003e 
+ 00020402  0x00004f69 branch  0x00004fc2 , 0x00000005 
+ 00020403  0x00004f6a setarg  0x00000053 
+ 00020404  0x00004f6b isub  0x00000011 , 0x0000003e 
+ 00020405  0x00004f6c branch  0x00004fc6 , 0x00000005 
+ 00020406  0x00004f6d increase  0x00000002 , 0x00000006 
+ 00020407  0x00004f6e ifetch  0x00000002 , 0x00000006 
+ 00020408  0x00004f6f iforce  0x0000003e 
+ 00020409  0x00004f70 branch  0x00004e1e 
+ 00020410  0x00004f72 fetch  0x00000001 , 0x00004250 
+ 00020411  0x00004f73 set1  0x00000005 , 0x0000003f 
+ 00020412  0x00004f74 store  0x00000001 , 0x00004250 
+ 00020413  0x00004f75 branch  0x00004e1e 
+ 00020414  0x00004f77 fetch  0x00000001 , 0x00004251 
+ 00020415  0x00004f78 set1  0x00000005 , 0x0000003f 
+ 00020416  0x00004f79 store  0x00000001 , 0x00004251 
+ 00020417  0x00004f7a branch  0x00004e1e 
+ 00020418  0x00004f7c fetch  0x00000001 , 0x00004252 
+ 00020419  0x00004f7d set1  0x00000005 , 0x0000003f 
+ 00020420  0x00004f7e store  0x00000001 , 0x00004252 
+ 00020421  0x00004f7f branch  0x00004e1e 
+ 00020422  0x00004f81 fetch  0x00000001 , 0x00004253 
+ 00020423  0x00004f82 set1  0x00000005 , 0x0000003f 
+ 00020424  0x00004f83 store  0x00000001 , 0x00004253 
+ 00020425  0x00004f84 jam  0x00000006 , 0x00000a99 
+ 00020426  0x00004f85 branch  0x00007d86 
+ 00020427  0x00004f8a ifetch  0x00000001 , 0x00000006 
+ 00020428  0x00004f8b copy  0x0000003f , 0x00000007 
+ 00020429  0x00004f8c ifetch  0x00000002 , 0x00000006 
+ 00020430  0x00004f8d copy  0x0000003f , 0x00000011 
+ 00020431  0x00004f8e copy  0x00000013 , 0x0000003f 
+ 00020432  0x00004f8f isub  0x00000011 , 0x00000013 
+ 00020433  0x00004f90 ifetch  0x00000002 , 0x00000006 
+ 00020434  0x00004f91 copy  0x0000003f , 0x00000011 
+ 00020435  0x00004f92 ifetch  0x00000002 , 0x00000006 
+ 00020436  0x00004f93 copy  0x0000003f , 0x0000000b 
+ 00020437  0x00004f94 copy  0x00000011 , 0x00000002 
+ 00020438  0x00004f95 call  0x00007ea8 
+ 00020439  0x00004f96 bpatchx  0x00000016 , 0x00004022 
+ 00020440  0x00004f97 setarg  0x00000050 
+ 00020441  0x00004f98 isub  0x00000002 , 0x0000003e 
+ 00020442  0x00004f99 branch  0x00004ff2 , 0x00000005 
+ 00020443  0x00004f9a setarg  0x00000051 
+ 00020444  0x00004f9b isub  0x00000002 , 0x0000003e 
+ 00020445  0x00004f9c branch  0x00005002 , 0x00000005 
+ 00020446  0x00004f9d setarg  0x00000052 
+ 00020447  0x00004f9e isub  0x00000002 , 0x0000003e 
+ 00020448  0x00004f9f branch  0x00004fe6 , 0x00000005 
+ 00020449  0x00004fa0 setarg  0x00000053 
+ 00020450  0x00004fa1 isub  0x00000002 , 0x0000003e 
+ 00020451  0x00004fa2 branch  0x00004fec , 0x00000005 
+ 00020452  0x00004fa3 call  0x00005062 
+ 00020453  0x00004fa4 branch  0x00005017 
+ 00020454  0x00004fa6 copy  0x0000000b , 0x00000002 
+ 00020455  0x00004fa7 fetch  0x00000002 , 0x0000424c 
+ 00020456  0x00004fa8 isub  0x00000002 , 0x0000003e 
+ 00020457  0x00004fa9 branch  0x00004ff8 , 0x00000005 
+ 00020458  0x00004faa call  0x00005062 
+ 00020459  0x00004fab branch  0x00005017 
+ 00020460  0x00004fad copy  0x0000000b , 0x00000002 
+ 00020461  0x00004fae fetch  0x00000002 , 0x0000424e 
+ 00020462  0x00004faf isub  0x00000002 , 0x0000003e 
+ 00020463  0x00004fb0 branch  0x00004ffa , 0x00000005 
+ 00020464  0x00004fb1 call  0x00005062 
+ 00020465  0x00004fb2 branch  0x00005017 
+ 00020466  0x00004fb5 copy  0x0000000b , 0x00000002 
+ 00020467  0x00004fb6 fetch  0x00000002 , 0x00004248 
+ 00020468  0x00004fb7 isub  0x00000002 , 0x0000003e 
+ 00020469  0x00004fb8 branch  0x00004ffe , 0x00000005 
+ 00020470  0x00004fb9 call  0x00005062 
+ 00020471  0x00004fba branch  0x00005017 
+ 00020472  0x00004fbc call  0x00005079 
+ 00020473  0x00004fbd branch  0x0000500a 
+ 00020474  0x00004fbf call  0x0000507f 
+ 00020475  0x00004fc0 fetch  0x00000002 , 0x0000424c 
+ 00020476  0x00004fc1 branch  0x0000500a , 0x00000034 
+ 00020477  0x00004fc9 branch  0x0000500a 
+ 00020478  0x00004fcc call  0x00005074 
+ 00020479  0x00004fcd fetch  0x00000001 , 0x00000288 
+ 00020480  0x00004fce nbranch  0x0000500a , 0x00000034 
+ 00020481  0x00004fd1 branch  0x0000500a 
+ 00020482  0x00004fd3 copy  0x0000000b , 0x00000002 
+ 00020483  0x00004fd4 fetch  0x00000002 , 0x0000424a 
+ 00020484  0x00004fd5 isub  0x00000002 , 0x0000003e 
+ 00020485  0x00004fd6 branch  0x00005008 , 0x00000005 
+ 00020486  0x00004fd7 call  0x00005062 
+ 00020487  0x00004fd8 branch  0x00005017 
+ 00020488  0x00004fda call  0x0000506f 
+ 00020489  0x00004fdb branch  0x0000500a 
+ 00020490  0x00004fdd call  0x00007ead 
+ 00020491  0x00004fde setarg  0x00000007 
+ 00020492  0x00004fdf istore  0x00000001 , 0x00000005 
+ 00020493  0x00004fe0 copy  0x00000007 , 0x0000003f 
+ 00020494  0x00004fe1 istore  0x00000001 , 0x00000005 
+ 00020495  0x00004fe2 setarg  0x00000004 
+ 00020496  0x00004fe3 istore  0x00000002 , 0x00000005 
+ 00020497  0x00004fe4 copy  0x00000011 , 0x0000003f 
+ 00020498  0x00004fe5 istore  0x00000002 , 0x00000005 
+ 00020499  0x00004fe6 copy  0x0000000b , 0x0000003f 
+ 00020500  0x00004fe7 istore  0x00000002 , 0x00000005 
+ 00020501  0x00004fe8 force  0x00000008 , 0x0000003f 
+ 00020502  0x00004fe9 branch  0x00005019 
+ 00020503  0x00004feb call  0x00007ead 
+ 00020504  0x00004fec branch  0x00005019 
+ 00020505  0x00004fee iadd  0x00000012 , 0x00000012 
+ 00020506  0x00004fef branch  0x00004e1e 
+ 00020507  0x00004ff1 ifetch  0x00000001 , 0x00000006 
+ 00020508  0x00004ff2 copy  0x0000003f , 0x00000007 
+ 00020509  0x00004ff3 ifetch  0x00000002 , 0x00000006 
+ 00020510  0x00004ff4 copy  0x0000003f , 0x00000011 
+ 00020511  0x00004ff5 copy  0x00000013 , 0x0000003f 
+ 00020512  0x00004ff6 isub  0x00000011 , 0x00000013 
+ 00020513  0x00004ff7 ifetch  0x00000002 , 0x00000006 
+ 00020514  0x00004ff8 copy  0x0000003f , 0x0000000b 
+ 00020515  0x00004ff9 ifetch  0x00000002 , 0x00000006 
+ 00020516  0x00004ffa copy  0x0000003f , 0x00000002 
+ 00020517  0x00004ffb call  0x00007ea8 
+ 00020518  0x00004ffc bpatchx  0x00000017 , 0x00004022 
+ 00020519  0x00004ffd setarg  0x00000050 
+ 00020520  0x00004ffe isub  0x00000002 , 0x0000003e 
+ 00020521  0x00004fff branch  0x00005035 , 0x00000005 
+ 00020522  0x00005000 setarg  0x00000051 
+ 00020523  0x00005001 isub  0x00000002 , 0x0000003e 
+ 00020524  0x00005002 branch  0x0000503b , 0x00000005 
+ 00020525  0x00005003 setarg  0x00000052 
+ 00020526  0x00005004 isub  0x00000002 , 0x0000003e 
+ 00020527  0x00005005 branch  0x00005041 , 0x00000005 
+ 00020528  0x00005006 setarg  0x00000053 
+ 00020529  0x00005007 isub  0x00000002 , 0x0000003e 
+ 00020530  0x00005008 branch  0x00005047 , 0x00000005 
+ 00020531  0x00005009 call  0x00005062 
+ 00020532  0x0000500a branch  0x0000504f 
+ 00020533  0x0000500c copy  0x00000002 , 0x00000011 
+ 00020534  0x0000500d copy  0x0000000b , 0x00000002 
+ 00020535  0x0000500e fetch  0x00000002 , 0x00004248 
+ 00020536  0x0000500f isub  0x00000002 , 0x0000003e 
+ 00020537  0x00005010 call  0x00005074 , 0x00000005 
+ 00020538  0x00005011 branch  0x0000504d 
+ 00020539  0x00005013 copy  0x00000002 , 0x00000011 
+ 00020540  0x00005014 copy  0x0000000b , 0x00000002 
+ 00020541  0x00005015 fetch  0x00000002 , 0x0000424a 
+ 00020542  0x00005016 isub  0x00000002 , 0x0000003e 
+ 00020543  0x00005017 call  0x0000506f , 0x00000005 
+ 00020544  0x00005018 branch  0x0000504d 
+ 00020545  0x0000501a copy  0x00000002 , 0x00000011 
+ 00020546  0x0000501b copy  0x0000000b , 0x00000002 
+ 00020547  0x0000501c fetch  0x00000002 , 0x0000424c 
+ 00020548  0x0000501d isub  0x00000002 , 0x0000003e 
+ 00020549  0x0000501e call  0x00005079 , 0x00000005 
+ 00020550  0x0000501f branch  0x0000504d 
+ 00020551  0x00005021 copy  0x00000002 , 0x00000011 
+ 00020552  0x00005022 copy  0x0000000b , 0x00000002 
+ 00020553  0x00005023 fetch  0x00000002 , 0x0000424e 
+ 00020554  0x00005024 isub  0x00000002 , 0x0000003e 
+ 00020555  0x00005025 call  0x0000507f , 0x00000005 
+ 00020556  0x00005026 branch  0x0000504d 
+ 00020557  0x00005028 call  0x00007ead 
+ 00020558  0x00005029 branch  0x00004e1e 
+ 00020559  0x0000502b branch  0x00004e1e 
+ 00020560  0x0000502f ifetch  0x00000001 , 0x00000006 
+ 00020561  0x00005030 copy  0x0000003f , 0x00000007 
+ 00020562  0x00005031 ifetch  0x00000002 , 0x00000006 
+ 00020563  0x00005032 copy  0x0000003f , 0x00000011 
+ 00020564  0x00005033 iadd  0x00000006 , 0x00000006 
+ 00020565  0x00005034 setarg  0x00000009 
+ 00020566  0x00005035 istore  0x00000001 , 0x00000005 
+ 00020567  0x00005036 copy  0x00000007 , 0x0000003f 
+ 00020568  0x00005037 istore  0x00000001 , 0x00000005 
+ 00020569  0x00005038 force  0x00000000 , 0x0000003f 
+ 00020570  0x00005039 istore  0x00000002 , 0x00000005 
+ 00020571  0x0000503a force  0x00000004 , 0x0000003f 
+ 00020572  0x0000503b iadd  0x00000012 , 0x00000012 
+ 00020573  0x0000503c copy  0x00000013 , 0x0000003f 
+ 00020574  0x0000503d isub  0x00000011 , 0x00000013 
+ 00020575  0x0000503e branch  0x00004e1e 
+ 00020576  0x00005040 branch  0x00004e1e 
+ 00020577  0x00005043 branch  0x00004e1e 
+ 00020578  0x00005045 force  0x00000000 , 0x00000012 
+ 00020579  0x00005046 call  0x000052c3 
+ 00020580  0x00005047 setarg  0x00000001 
+ 00020581  0x00005048 istore  0x00000001 , 0x00000005 
+ 00020582  0x00005049 copy  0x00000007 , 0x0000003f 
+ 00020583  0x0000504a istore  0x00000001 , 0x00000005 
+ 00020584  0x0000504b setarg  0x00000002 
+ 00020585  0x0000504c istore  0x00000002 , 0x00000005 
+ 00020586  0x0000504d setarg  0x00000000 
+ 00020587  0x0000504e istore  0x00000002 , 0x00000005 
+ 00020588  0x0000504f increase  0x00000006 , 0x00000012 
+ 00020589  0x00005050 arg  0x00000004 , 0x00000013 
+ 00020590  0x00005051 branch  0x00004e1e 
+ 00020591  0x00005056 setarg  0x00000000 
+ 00020592  0x00005057 store  0x00000002 , 0x0000027b 
+ 00020593  0x00005058 store  0x00000002 , 0x0000424a 
+ 00020594  0x00005059 jam  0x00000000 , 0x00004251 
+ 00020595  0x0000505a rtn 
+ 00020596  0x0000505c setarg  0x00000000 
+ 00020597  0x0000505d store  0x00000002 , 0x00000275 
+ 00020598  0x0000505e store  0x00000002 , 0x00004248 
+ 00020599  0x0000505f jam  0x00000000 , 0x00004250 
+ 00020600  0x00005060 rtn 
+ 00020601  0x00005062 setarg  0x00000000 
+ 00020602  0x00005063 store  0x00000002 , 0x0000424c 
+ 00020603  0x00005064 jam  0x00000000 , 0x00004252 
+ 00020604  0x00005065 fetch  0x00000001 , 0x00004253 
+ 00020605  0x00005066 beq  0x00000000 , 0x00005085 
+ 00020606  0x00005067 rtn 
+ 00020607  0x0000506a setarg  0x00000000 
+ 00020608  0x0000506b store  0x00000002 , 0x0000424e 
+ 00020609  0x0000506c jam  0x00000000 , 0x00004253 
+ 00020610  0x0000506d fetch  0x00000001 , 0x00004252 
+ 00020611  0x0000506e beq  0x00000000 , 0x00005085 
+ 00020612  0x0000506f rtn 
+ 00020613  0x00005072 jam  0x00000007 , 0x00000a99 
+ 00020614  0x00005073 branch  0x00007d86 
+ 00020615  0x00005076 fetch  0x00000001 , 0x0000027f 
+ 00020616  0x00005077 set0  0x00000000 , 0x0000003f 
+ 00020617  0x00005078 store  0x00000001 , 0x0000027f 
+ 00020618  0x00005079 fetch  0x00000002 , 0x0000424e 
+ 00020619  0x0000507a rtn  0x00000034 
+ 00020620  0x0000507b call  0x000052b8 
+ 00020621  0x0000507c fetch  0x00000002 , 0x0000424e 
+ 00020622  0x0000507d copy  0x0000003f , 0x00000011 
+ 00020623  0x0000507e force  0x00000053 , 0x00000012 
+ 00020624  0x0000507f branch  0x0000509a 
+ 00020625  0x00005081 fetch  0x00000001 , 0x0000027f 
+ 00020626  0x00005082 set0  0x00000007 , 0x0000003f 
+ 00020627  0x00005083 store  0x00000001 , 0x0000027f 
+ 00020628  0x00005084 fetch  0x00000002 , 0x0000424c 
+ 00020629  0x00005085 rtn  0x00000034 
+ 00020630  0x00005086 call  0x000052b8 
+ 00020631  0x00005087 fetch  0x00000002 , 0x0000424c 
+ 00020632  0x00005088 copy  0x0000003f , 0x00000011 
+ 00020633  0x00005089 force  0x00000052 , 0x00000012 
+ 00020634  0x0000508b call  0x0000523a 
+ 00020635  0x0000508c call  0x000052c3 
+ 00020636  0x0000508d force  0x00000006 , 0x0000003f 
+ 00020637  0x0000508e istore  0x00000001 , 0x00000005 
+ 00020638  0x0000508f fetch  0x00000001 , 0x00004255 
+ 00020639  0x00005090 istore  0x00000001 , 0x00000005 
+ 00020640  0x00005091 setarg  0x00000004 
+ 00020641  0x00005092 istore  0x00000002 , 0x00000005 
+ 00020642  0x00005093 copy  0x00000011 , 0x0000003f 
+ 00020643  0x00005094 istore  0x00000002 , 0x00000005 
+ 00020644  0x00005095 copy  0x00000012 , 0x0000003f 
+ 00020645  0x00005096 istore  0x00000002 , 0x00000005 
+ 00020646  0x00005097 force  0x00000008 , 0x00000002 
+ 00020647  0x00005098 branch  0x000050de 
+ 00020648  0x0000509b bpatchx  0x00000018 , 0x00004023 
+ 00020649  0x0000509c call  0x0000523a 
+ 00020650  0x0000509d call  0x000052c3 
+ 00020651  0x0000509e setarg  0x00000002 
+ 00020652  0x0000509f istore  0x00000001 , 0x00000005 
+ 00020653  0x000050a0 fetch  0x00000001 , 0x00004255 
+ 00020654  0x000050a1 istore  0x00000001 , 0x00000005 
+ 00020655  0x000050a2 setarg  0x00000004 
+ 00020656  0x000050a3 istore  0x00000002 , 0x00000005 
+ 00020657  0x000050a4 copy  0x00000002 , 0x0000003f 
+ 00020658  0x000050a5 istore  0x00000002 , 0x00000005 
+ 00020659  0x000050a6 copy  0x0000000b , 0x0000003f 
+ 00020660  0x000050a7 istore  0x00000002 , 0x00000005 
+ 00020661  0x000050a8 arg  0x00000008 , 0x00000002 
+ 00020662  0x000050a9 branch  0x000050de 
+ 00020663  0x000050ab bpatchx  0x00000019 , 0x00004023 
+ 00020664  0x000050ac call  0x0000523a 
+ 00020665  0x000050ad call  0x000052c3 
+ 00020666  0x000050ae setarg  0x00000004 
+ 00020667  0x000050af istore  0x00000001 , 0x00000005 
+ 00020668  0x000050b0 fetch  0x00000001 , 0x00004255 
+ 00020669  0x000050b1 istore  0x00000001 , 0x00000005 
+ 00020670  0x000050b2 setarg  0x00000008 
+ 00020671  0x000050b3 istore  0x00000002 , 0x00000005 
+ 00020672  0x000050b5 copy  0x00000002 , 0x0000003f 
+ 00020673  0x000050b7 istore  0x00000002 , 0x00000005 
+ 00020674  0x000050b8 setarg  0x00000000 
+ 00020675  0x000050b9 istore  0x00000002 , 0x00000005 
+ 00020676  0x000050ba setarg  0x00000001 
+ 00020677  0x000050bb istore  0x00000001 , 0x00000005 
+ 00020678  0x000050bc setarg  0x00000002 
+ 00020679  0x000050bd istore  0x00000001 , 0x00000005 
+ 00020680  0x000050be setarg  0x000003e3 
+ 00020681  0x000050bf istore  0x00000002 , 0x00000005 
+ 00020682  0x000050c0 arg  0x0000000c , 0x00000002 
+ 00020683  0x000050c1 branch  0x000050de 
+ 00020684  0x000050c3 bpatchx  0x0000001a , 0x00004023 
+ 00020685  0x000050c4 call  0x0000523a 
+ 00020686  0x000050c5 call  0x000052c3 
+ 00020687  0x000050c6 setarg  0x00000006 
+ 00020688  0x000050c7 istore  0x00000001 , 0x00000005 
+ 00020689  0x000050c8 fetch  0x00000001 , 0x00004255 
+ 00020690  0x000050c9 increase  0x00000001 , 0x0000003f 
+ 00020691  0x000050ca copy  0x00000005 , 0x00000011 
+ 00020692  0x000050cb store  0x00000001 , 0x00004255 
+ 00020693  0x000050cc copy  0x00000011 , 0x00000005 
+ 00020694  0x000050cd istore  0x00000001 , 0x00000005 
+ 00020695  0x000050ce setarg  0x00000004 
+ 00020696  0x000050cf istore  0x00000002 , 0x00000005 
+ 00020697  0x000050d0 copy  0x00000002 , 0x0000003f 
+ 00020698  0x000050d1 istore  0x00000002 , 0x00000005 
+ 00020699  0x000050d2 copy  0x0000000b , 0x0000003f 
+ 00020700  0x000050d3 istore  0x00000002 , 0x00000005 
+ 00020701  0x000050d4 arg  0x00000008 , 0x00000002 
+ 00020702  0x000050d8 storet  0x00000002 , 0x0000026f 
+ 00020703  0x000050d9 copy  0x00000002 , 0x0000003f 
+ 00020704  0x000050da branch  0x00005264 , 0x00000034 
+ 00020705  0x000050db call  0x000052c1 
+ 00020706  0x000050dc fetch  0x00000002 , 0x0000026f 
+ 00020707  0x000050dd istore  0x00000002 , 0x00000005 
+ 00020708  0x000050de force  0x00000001 , 0x0000003f 
+ 00020709  0x000050df istore  0x00000002 , 0x00000005 
+ 00020710  0x000050e0 rtn 
+ 00020711  0x000050e3 fetch  0x00000002 , 0x00000275 
+ 00020712  0x000050e4 branch  0x00002a8c , 0x00000034 
+ 00020713  0x000050e5 call  0x000052ce 
+ 00020714  0x000050e6 fetch  0x00000002 , 0x00000275 
+ 00020715  0x000050e7 istore  0x00000002 , 0x00000005 
+ 00020716  0x000050e8 fetch  0x00000002 , 0x00004248 
+ 00020717  0x000050e9 istore  0x00000002 , 0x00000005 
+ 00020718  0x000050ea rtn 
+ 00020719  0x000050ec fetch  0x00000002 , 0x00000266 
+ 00020720  0x000050ed branch  0x00004dfc , 0x00000034 
+ 00020721  0x000050ee bpatchx  0x0000001b , 0x00004023 
+ 00020722  0x000050ef fetch  0x00000001 , 0x00000268 
+ 00020723  0x000050f0 beq  0x00000001 , 0x000050f9 
+ 00020724  0x000050f1 beq  0x00000050 , 0x00004de8 
+ 00020725  0x000050f2 beq  0x00000051 , 0x00004df5 
+ 00020726  0x000050f3 beq  0x00000052 , 0x00004df3 
+ 00020727  0x000050f4 beq  0x00000053 , 0x00004df3 
+ 00020728  0x000050f5 branch  0x00004dfc 
+ 00020729  0x000050f8 bpatchx  0x0000001c , 0x00004023 
+ 00020730  0x000050f9 call  0x000052b8 
+ 00020731  0x000050fa force  0x00000000 , 0x00000012 
+ 00020732  0x000050fb call  0x000052c3 
+ 00020733  0x000050fc copy  0x0000003f , 0x00000005 
+ 00020734  0x000050fd fetch  0x00000002 , 0x00000266 
+ 00020735  0x000050fe copy  0x0000003f , 0x00000013 
+ 00020736  0x000050ff fetch  0x00000002 , 0x00000264 
+ 00020737  0x00005100 iforce  0x00000006 
+ 00020738  0x00005102 call  0x00005108 
+ 00020739  0x00005103 increase  0xfffffffc , 0x00000013 
+ 00020740  0x00005104 nbranch  0x00005102 , 0x00000005 
+ 00020741  0x00005105 copy  0x00000012 , 0x00000002 
+ 00020742  0x00005106 call  0x000050de 
+ 00020743  0x00005107 branch  0x00004dfc 
+ 00020744  0x0000510a ifetch  0x00000001 , 0x00000006 
+ 00020745  0x0000510b beq  0x00000002 , 0x00005113 
+ 00020746  0x0000510c beq  0x00000001 , 0x00005116 
+ 00020747  0x0000510d beq  0x00000003 , 0x00005120 
+ 00020748  0x0000510e beq  0x00000005 , 0x0000515c 
+ 00020749  0x0000510f beq  0x00000004 , 0x0000518e 
+ 00020750  0x00005110 beq  0x00000007 , 0x00005213 
+ 00020751  0x00005111 beq  0x00000006 , 0x000051e1 
+ 00020752  0x00005112 beq  0x00000008 , 0x00005050 
+ 00020753  0x00005113 beq  0x0000000a , 0x00004e3a 
+ 00020754  0x00005114 branch  0x0000522e 
+ 00020755  0x00005117 call  0x00007ea8 
+ 00020756  0x00005119 call  0x00007ead 
+ 00020757  0x0000511a branch  0x00004e51 
+ 00020758  0x0000511c ifetch  0x00000001 , 0x00000006 
+ 00020759  0x0000511d copy  0x0000003f , 0x00000007 
+ 00020760  0x0000511e ifetch  0x00000002 , 0x00000006 
+ 00020761  0x0000511f copy  0x0000003f , 0x00000011 
+ 00020762  0x00005120 copy  0x00000013 , 0x0000003f 
+ 00020763  0x00005121 isub  0x00000011 , 0x00000013 
+ 00020764  0x00005123 ifetch  0x00000001 , 0x00000006 
+ 00020765  0x00005124 increase  0xffffffff , 0x00000011 
+ 00020766  0x00005125 nbranch  0x0000511c , 0x00000005 
+ 00020767  0x00005126 rtn 
+ 00020768  0x00005128 ifetch  0x00000001 , 0x00000006 
+ 00020769  0x00005129 copy  0x0000003f , 0x00000007 
+ 00020770  0x0000512a ifetch  0x00000002 , 0x00000006 
+ 00020771  0x0000512b copy  0x0000003f , 0x00000011 
+ 00020772  0x0000512c ifetch  0x00000002 , 0x00000006 
+ 00020773  0x0000512d copy  0x0000003f , 0x0000000b 
+ 00020774  0x0000512e ifetch  0x00000002 , 0x00000006 
+ 00020775  0x0000512f copy  0x0000003f , 0x00000002 
+ 00020776  0x00005130 ifetch  0x00000002 , 0x00000006 
+ 00020777  0x00005131 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00020778  0x00005132 branch  0x00005132 , 0x00000005 
+ 00020779  0x00005133 beq  0x00000002 , 0x0000512e 
+ 00020780  0x00005134 beq  0x00000004 , 0x0000512e 
+ 00020781  0x00005135 branch  0x00005130 
+ 00020782  0x00005137 jam  0x00000016 , 0x00000a99 
+ 00020783  0x00005138 call  0x00007d86 
+ 00020784  0x0000513a ifetch  0x00000002 , 0x00000006 
+ 00020785  0x0000513b branch  0x00005159 
+ 00020786  0x0000513d call  0x00007ea8 
+ 00020787  0x00005141 bpatchx  0x0000001d , 0x00004023 
+ 00020788  0x00005142 setarg  0x00000050 
+ 00020789  0x00005143 isub  0x00000002 , 0x0000003e 
+ 00020790  0x00005144 branch  0x00005141 , 0x00000005 
+ 00020791  0x00005145 setarg  0x00000051 
+ 00020792  0x00005146 isub  0x00000002 , 0x0000003e 
+ 00020793  0x00005147 branch  0x00005147 , 0x00000005 
+ 00020794  0x00005148 setarg  0x00000053 
+ 00020795  0x00005149 isub  0x00000002 , 0x0000003e 
+ 00020796  0x0000514a branch  0x00005153 , 0x00000005 
+ 00020797  0x0000514b setarg  0x00000052 
+ 00020798  0x0000514c isub  0x00000002 , 0x0000003e 
+ 00020799  0x0000514d branch  0x0000514d , 0x00000005 
+ 00020800  0x0000514e branch  0x00005159 
+ 00020801  0x00005150 copy  0x0000000b , 0x0000003f 
+ 00020802  0x00005151 store  0x00000002 , 0x00004248 
+ 00020803  0x00005152 fetch  0x00000001 , 0x00004250 
+ 00020804  0x00005153 set1  0x00000001 
+ 00020805  0x00005154 store  0x00000001 , 0x00004250 
+ 00020806  0x00005155 branch  0x00005158 
+ 00020807  0x00005157 copy  0x0000000b , 0x0000003f 
+ 00020808  0x00005158 store  0x00000002 , 0x0000424a 
+ 00020809  0x00005159 fetch  0x00000001 , 0x00004251 
+ 00020810  0x0000515a set1  0x00000001 
+ 00020811  0x0000515b store  0x00000001 , 0x00004251 
+ 00020812  0x0000515c branch  0x00005158 
+ 00020813  0x0000515e copy  0x0000000b , 0x0000003f 
+ 00020814  0x0000515f store  0x00000002 , 0x0000424c 
+ 00020815  0x00005160 fetch  0x00000001 , 0x00004252 
+ 00020816  0x00005161 set1  0x00000001 
+ 00020817  0x00005162 store  0x00000001 , 0x00004252 
+ 00020818  0x00005163 branch  0x00005158 
+ 00020819  0x00005165 copy  0x0000000b , 0x0000003f 
+ 00020820  0x00005166 store  0x00000002 , 0x0000424e 
+ 00020821  0x00005167 fetch  0x00000001 , 0x00004253 
+ 00020822  0x00005168 set1  0x00000001 
+ 00020823  0x00005169 store  0x00000001 , 0x00004253 
+ 00020824  0x0000516d call  0x00007ead 
+ 00020825  0x0000516f copy  0x00000013 , 0x0000003f 
+ 00020826  0x00005170 isub  0x00000011 , 0x00000013 
+ 00020827  0x00005171 rtn 
+ 00020828  0x00005174 ifetch  0x00000001 , 0x00000006 
+ 00020829  0x00005175 copy  0x0000003f , 0x00000007 
+ 00020830  0x00005176 ifetch  0x00000002 , 0x00000006 
+ 00020831  0x00005177 copy  0x0000003f , 0x00000011 
+ 00020832  0x00005178 copy  0x00000013 , 0x0000003f 
+ 00020833  0x00005179 isub  0x00000011 , 0x00000013 
+ 00020834  0x0000517a ifetch  0x00000002 , 0x00000006 
+ 00020835  0x0000517b copy  0x0000003f , 0x0000000b 
+ 00020836  0x0000517c ifetch  0x00000002 , 0x00000006 
+ 00020837  0x0000517d ifetch  0x00000002 , 0x00000006 
+ 00020838  0x0000517e nbranch  0x00005188 , 0x00000034 
+ 00020839  0x0000517f call  0x00007ea8 
+ 00020840  0x00005183 copy  0x0000000b , 0x00000002 
+ 00020841  0x00005184 bpatchx  0x0000001e , 0x00004023 
+ 00020842  0x00005185 setarg  0x00000050 
+ 00020843  0x00005186 isub  0x00000002 , 0x0000003e 
+ 00020844  0x00005187 branch  0x00005176 , 0x00000005 
+ 00020845  0x00005188 setarg  0x00000051 
+ 00020846  0x00005189 isub  0x00000002 , 0x0000003e 
+ 00020847  0x0000518a branch  0x0000517a , 0x00000005 
+ 00020848  0x0000518b setarg  0x00000052 
+ 00020849  0x0000518c isub  0x00000002 , 0x0000003e 
+ 00020850  0x0000518d branch  0x0000517e , 0x00000005 
+ 00020851  0x0000518e setarg  0x00000053 
+ 00020852  0x0000518f isub  0x00000002 , 0x0000003e 
+ 00020853  0x00005190 branch  0x00005182 , 0x00000005 
+ 00020854  0x00005192 fetch  0x00000001 , 0x00004250 
+ 00020855  0x00005193 set1  0x00000005 
+ 00020856  0x00005194 store  0x00000001 , 0x00004250 
+ 00020857  0x00005195 rtn 
+ 00020858  0x00005197 fetch  0x00000001 , 0x00004251 
+ 00020859  0x00005198 set1  0x00000005 
+ 00020860  0x00005199 store  0x00000001 , 0x00004251 
+ 00020861  0x0000519a rtn 
+ 00020862  0x0000519c fetch  0x00000001 , 0x00004252 
+ 00020863  0x0000519d set1  0x00000005 
+ 00020864  0x0000519e store  0x00000001 , 0x00004252 
+ 00020865  0x0000519f rtn 
+ 00020866  0x000051a1 fetch  0x00000001 , 0x00004253 
+ 00020867  0x000051a2 set1  0x00000005 
+ 00020868  0x000051a3 store  0x00000001 , 0x00004253 
+ 00020869  0x000051a4 jam  0x00000006 , 0x00000a99 
+ 00020870  0x000051a5 branch  0x00007d86 
+ 00020871  0x000051a9 call  0x00007ead 
+ 00020872  0x000051ab increase  0xfffffffa , 0x00000011 
+ 00020873  0x000051ad branch  0x0000518d , 0x00000005 
+ 00020874  0x000051ae increase  0x00000001 , 0x00000006 
+ 00020875  0x000051af increase  0xffffffff , 0x00000011 
+ 00020876  0x000051b0 branch  0x00005189 
+ 00020877  0x000051b2 rtn 
+ 00020878  0x000051b4 ifetch  0x00000001 , 0x00000006 
+ 00020879  0x000051b5 copy  0x0000003f , 0x00000007 
+ 00020880  0x000051b6 ifetch  0x00000002 , 0x00000006 
+ 00020881  0x000051b7 copy  0x0000003f , 0x00000011 
+ 00020882  0x000051b8 copy  0x00000013 , 0x0000003f 
+ 00020883  0x000051b9 isub  0x00000011 , 0x00000013 
+ 00020884  0x000051ba ifetch  0x00000002 , 0x00000006 
+ 00020885  0x000051bb increase  0x00000002 , 0x00000006 
+ 00020886  0x000051bc copy  0x0000003f , 0x00000002 
+ 00020887  0x000051bd setarg  0x00000005 
+ 00020888  0x000051be istore  0x00000001 , 0x00000005 
+ 00020889  0x000051bf copy  0x00000007 , 0x0000003f 
+ 00020890  0x000051c0 istore  0x00000001 , 0x00000005 
+ 00020891  0x000051c1 increase  0x00000002 , 0x00000011 
+ 00020892  0x000051c2 copy  0x00000011 , 0x0000003f 
+ 00020893  0x000051c3 istore  0x00000002 , 0x00000005 
+ 00020894  0x000051c4 call  0x00007ea8 
+ 00020895  0x000051c5 bpatchx  0x0000001f , 0x00004023 
+ 00020896  0x000051c6 setarg  0x00000050 
+ 00020897  0x000051c7 isub  0x00000002 , 0x0000003e 
+ 00020898  0x000051c8 branch  0x000051ad , 0x00000005 
+ 00020899  0x000051c9 setarg  0x00000051 
+ 00020900  0x000051ca isub  0x00000002 , 0x0000003e 
+ 00020901  0x000051cb branch  0x000051be , 0x00000005 
+ 00020902  0x000051cc setarg  0x00000052 
+ 00020903  0x000051cd isub  0x00000002 , 0x0000003e 
+ 00020904  0x000051ce branch  0x000051c4 , 0x00000005 
+ 00020905  0x000051cf setarg  0x00000053 
+ 00020906  0x000051d0 isub  0x00000002 , 0x0000003e 
+ 00020907  0x000051d1 branch  0x000051ca , 0x00000005 
+ 00020908  0x000051d2 branch  0x000051cf 
+ 00020909  0x000051d4 fetch  0x00000001 , 0x00004250 
+ 00020910  0x000051d5 set1  0x00000004 , 0x0000003f 
+ 00020911  0x000051d6 set1  0x00000003 , 0x0000003f 
+ 00020912  0x000051d7 store  0x00000001 , 0x00004250 
+ 00020913  0x000051d8 bbit1  0x00000002 , 0x000051bb 
+ 00020914  0x000051d9 fetcht  0x00000001 , 0x0000027f 
+ 00020915  0x000051da set1  0x00000006 , 0x00000002 
+ 00020916  0x000051db storet  0x00000001 , 0x0000027f 
+ 00020917  0x000051dc copy  0x00000007 , 0x0000003f 
+ 00020918  0x000051dd increase  0x00000001 , 0x0000003f 
+ 00020919  0x000051de store  0x00000001 , 0x00000281 
+ 00020920  0x000051df fetch  0x00000001 , 0x00004250 
+ 00020921  0x000051e0 set1  0x00000002 , 0x0000003f 
+ 00020922  0x000051e1 store  0x00000001 , 0x00004250 
+ 00020923  0x000051e3 fetch  0x00000002 , 0x00004248 
+ 00020924  0x000051e4 store  0x00000002 , 0x00000282 
+ 00020925  0x000051e5 branch  0x000051cf 
+ 00020926  0x000051e7 fetch  0x00000001 , 0x00004251 
+ 00020927  0x000051e8 set1  0x00000004 , 0x0000003f 
+ 00020928  0x000051e9 set1  0x00000003 , 0x0000003f 
+ 00020929  0x000051ea store  0x00000001 , 0x00004251 
+ 00020930  0x000051eb fetch  0x00000002 , 0x0000424a 
+ 00020931  0x000051ec branch  0x000051cf 
+ 00020932  0x000051ee fetch  0x00000001 , 0x00004252 
+ 00020933  0x000051ef set1  0x00000004 , 0x0000003f 
+ 00020934  0x000051f0 set1  0x00000003 , 0x0000003f 
+ 00020935  0x000051f1 store  0x00000001 , 0x00004252 
+ 00020936  0x000051f2 fetch  0x00000002 , 0x0000424c 
+ 00020937  0x000051f3 branch  0x000051cf 
+ 00020938  0x000051f5 fetch  0x00000001 , 0x00004253 
+ 00020939  0x000051f6 set1  0x00000004 , 0x0000003f 
+ 00020940  0x000051f7 set1  0x00000003 , 0x0000003f 
+ 00020941  0x000051f8 store  0x00000001 , 0x00004253 
+ 00020942  0x000051f9 fetch  0x00000002 , 0x0000424e 
+ 00020943  0x000051fd copy  0x0000003f , 0x0000000b 
+ 00020944  0x000051fe call  0x00007ead 
+ 00020945  0x00005200 copy  0x0000000b , 0x0000003f 
+ 00020946  0x00005202 istore  0x00000002 , 0x00000005 
+ 00020947  0x00005203 force  0x00000000 , 0x0000003f 
+ 00020948  0x00005204 istore  0x00000002 , 0x00000005 
+ 00020949  0x00005205 force  0x00000000 , 0x0000003f 
+ 00020950  0x00005206 istore  0x00000002 , 0x00000005 
+ 00020951  0x00005207 force  0x0000000a , 0x0000003f 
+ 00020952  0x00005208 iadd  0x00000012 , 0x00000012 
+ 00020953  0x00005209 increase  0xfffffffa , 0x00000011 
+ 00020954  0x0000520b branch  0x000051e0 , 0x00000005 
+ 00020955  0x0000520c ifetch  0x00000001 , 0x00000006 
+ 00020956  0x0000520d istore  0x00000001 , 0x00000005 
+ 00020957  0x0000520e increase  0x00000001 , 0x00000012 
+ 00020958  0x0000520f increase  0xffffffff , 0x00000011 
+ 00020959  0x00005210 branch  0x000051da 
+ 00020960  0x00005212 rtn 
+ 00020961  0x00005214 ifetch  0x00000001 , 0x00000006 
+ 00020962  0x00005215 copy  0x0000003f , 0x00000007 
+ 00020963  0x00005216 ifetch  0x00000002 , 0x00000006 
+ 00020964  0x00005217 copy  0x0000003f , 0x00000011 
+ 00020965  0x00005218 copy  0x00000013 , 0x0000003f 
+ 00020966  0x00005219 isub  0x00000011 , 0x00000013 
+ 00020967  0x0000521b ifetch  0x00000002 , 0x00000006 
+ 00020968  0x0000521c copy  0x0000003f , 0x00000011 
+ 00020969  0x0000521d ifetch  0x00000002 , 0x00000006 
+ 00020970  0x0000521e copy  0x0000003f , 0x0000000b 
+ 00020971  0x0000521f call  0x00007ea8 
+ 00020972  0x00005220 bpatchx  0x00000020 , 0x00004024 
+ 00020973  0x00005221 setarg  0x00000050 
+ 00020974  0x00005222 copy  0x00000011 , 0x00000002 
+ 00020975  0x00005223 isub  0x00000002 , 0x0000003e 
+ 00020976  0x00005224 branch  0x000051fa , 0x00000005 
+ 00020977  0x00005225 setarg  0x00000052 
+ 00020978  0x00005226 copy  0x00000011 , 0x00000002 
+ 00020979  0x00005227 isub  0x00000002 , 0x0000003e 
+ 00020980  0x00005228 branch  0x000051ff , 0x00000005 
+ 00020981  0x00005229 setarg  0x00000053 
+ 00020982  0x0000522a copy  0x00000011 , 0x00000002 
+ 00020983  0x0000522b isub  0x00000002 , 0x0000003e 
+ 00020984  0x0000522c branch  0x00005201 , 0x00000005 
+ 00020985  0x0000522d branch  0x00005203 
+ 00020986  0x0000522f setarg  0x00000000 
+ 00020987  0x00005230 store  0x00000002 , 0x00000275 
+ 00020988  0x00005231 store  0x00000002 , 0x00004248 
+ 00020989  0x00005232 store  0x00000001 , 0x00004250 
+ 00020990  0x00005233 branch  0x00005205 
+ 00020991  0x00005235 call  0x00005079 
+ 00020992  0x00005236 branch  0x00005205 
+ 00020993  0x00005238 call  0x0000507f 
+ 00020994  0x0000523e branch  0x00005205 
+ 00020995  0x00005240 setarg  0x00000000 
+ 00020996  0x00005241 store  0x00000002 , 0x0000027b 
+ 00020997  0x00005243 call  0x00007ead 
+ 00020998  0x00005244 setarg  0x00000007 
+ 00020999  0x00005245 istore  0x00000001 , 0x00000005 
+ 00021000  0x00005246 copy  0x00000007 , 0x0000003f 
+ 00021001  0x00005247 istore  0x00000001 , 0x00000005 
+ 00021002  0x00005248 setarg  0x00000004 
+ 00021003  0x00005249 istore  0x00000002 , 0x00000005 
+ 00021004  0x0000524a copy  0x00000011 , 0x0000003f 
+ 00021005  0x0000524b istore  0x00000002 , 0x00000005 
+ 00021006  0x0000524c copy  0x0000000b , 0x0000003f 
+ 00021007  0x0000524d istore  0x00000002 , 0x00000005 
+ 00021008  0x0000524e force  0x00000008 , 0x0000003f 
+ 00021009  0x0000524f iadd  0x00000012 , 0x00000012 
+ 00021010  0x00005250 rtn 
+ 00021011  0x00005253 ifetch  0x00000001 , 0x00000006 
+ 00021012  0x00005254 copy  0x0000003f , 0x00000007 
+ 00021013  0x00005255 ifetch  0x00000002 , 0x00000006 
+ 00021014  0x00005256 copy  0x0000003f , 0x00000011 
+ 00021015  0x00005257 ifetch  0x00000002 , 0x00000006 
+ 00021016  0x00005258 copy  0x0000003f , 0x0000000b 
+ 00021017  0x00005259 ifetch  0x00000002 , 0x00000006 
+ 00021018  0x0000525a copy  0x0000003f , 0x00000002 
+ 00021019  0x0000525b call  0x00007ea8 
+ 00021020  0x0000525c bpatchx  0x00000021 , 0x00004024 
+ 00021021  0x0000525d fetch  0x00000001 , 0x00004255 
+ 00021022  0x0000525e icompare  0x000000ff , 0x00000007 
+ 00021023  0x0000525f nbranch  0x0000522a , 0x00000001 
+ 00021024  0x00005260 setarg  0x00000050 
+ 00021025  0x00005261 isub  0x00000002 , 0x0000003e 
+ 00021026  0x00005262 branch  0x00005227 , 0x00000005 
+ 00021027  0x00005263 setarg  0x00000051 
+ 00021028  0x00005264 isub  0x00000002 , 0x0000003e 
+ 00021029  0x00005265 branch  0x0000522a , 0x00000005 
+ 00021030  0x00005266 branch  0x0000522a 
+ 00021031  0x00005268 jam  0x00000000 , 0x00004248 
+ 00021032  0x00005269 jam  0x00000000 , 0x00004250 
+ 00021033  0x0000526a branch  0x0000522a 
+ 00021034  0x0000526f call  0x00007ead 
+ 00021035  0x00005270 copy  0x00000013 , 0x0000003f 
+ 00021036  0x00005271 isub  0x00000011 , 0x00000013 
+ 00021037  0x00005272 rtn 
+ 00021038  0x00005275 setarg  0x00000001 
+ 00021039  0x00005276 istore  0x00000001 , 0x00000005 
+ 00021040  0x00005277 ifetch  0x00000001 , 0x00000006 
+ 00021041  0x00005278 istore  0x00000001 , 0x00000005 
+ 00021042  0x00005279 setarg  0x00000002 
+ 00021043  0x0000527a istore  0x00000002 , 0x00000005 
+ 00021044  0x0000527b setarg  0x00000000 
+ 00021045  0x0000527c istore  0x00000002 , 0x00000005 
+ 00021046  0x0000527d setarg  0x00000006 
+ 00021047  0x0000527e iadd  0x00000012 , 0x00000012 
+ 00021048  0x0000527f force  0x00000004 , 0x00000013 
+ 00021049  0x00005280 rtn 
+ 00021050  0x00005284 fetch  0x00000001 , 0x00004255 
+ 00021051  0x00005285 increase  0x00000001 , 0x0000003f 
+ 00021052  0x00005286 bne  0x00000000 , 0x0000523e 
+ 00021053  0x00005287 increase  0x00000001 , 0x0000003f 
+ 00021054  0x00005289 store  0x00000001 , 0x00004255 
+ 00021055  0x0000528a rtn 
+ 00021056  0x00005295 bpatchx  0x00000022 , 0x00004024 
+ 00021057  0x00005296 arg  0x00000000 , 0x00000012 
+ 00021058  0x00005297 call  0x0000526e 
+ 00021059  0x00005298 nbranch  0x00002a8c , 0x00000034 
+ 00021060  0x00005299 call  0x0000527e 
+ 00021061  0x0000529a arg  0x00001800 , 0x00000012 
+ 00021062  0x0000529b arg  0x00000000 , 0x00000007 
+ 00021063  0x0000529d fetcht  0x00000001 , 0x00004256 
+ 00021064  0x0000529e qisolate1  0x00000002 
+ 00021065  0x0000529f branch  0x0000524f , 0x00000001 
+ 00021066  0x000052a0 call  0x000052a0 
+ 00021067  0x000052a1 sub  0x0000000b , 0x00000000 , 0x0000003e 
+ 00021068  0x000052a2 branch  0x0000524f , 0x00000002 
+ 00021069  0x000052a3 call  0x00005288 
+ 00021070  0x000052a4 branch  0x00005255 
+ 00021071  0x000052a6 increase  0x00000080 , 0x00000012 
+ 00021072  0x000052a7 increase  0x00000001 , 0x00000007 
+ 00021073  0x000052a8 setarg  0x00000008 
+ 00021074  0x000052a9 isub  0x00000007 , 0x0000003e 
+ 00021075  0x000052aa branch  0x00005247 , 0x00000002 
+ 00021076  0x000052ab arg  0x00000000 , 0x00000012 
+ 00021077  0x000052ad copy  0x00000012 , 0x0000003f 
+ 00021078  0x000052ae branch  0x00002a8c , 0x00000034 
+ 00021079  0x000052af rtn 
+ 00021080  0x000052b8 bpatchx  0x00000023 , 0x00004024 
+ 00021081  0x000052b9 call  0x00005277 
+ 00021082  0x000052ba increase  0x00000001 , 0x00000006 
+ 00021083  0x000052bb ifetch  0x00000002 , 0x00000006 
+ 00021084  0x000052bc rtn 
+ 00021085  0x000052c3 bpatchx  0x00000024 , 0x00004024 
+ 00021086  0x000052c4 call  0x00005277 
+ 00021087  0x000052c5 copy  0x00000006 , 0x00000005 
+ 00021088  0x000052c6 copy  0x00000006 , 0x00000002 
+ 00021089  0x000052c7 setarg  0x00000000 
+ 00021090  0x000052c8 istore  0x00000003 , 0x00000005 
+ 00021091  0x000052c9 rtn 
+ 00021092  0x000052cf bpatchx  0x00000025 , 0x00004024 
+ 00021093  0x000052d0 call  0x00005274 
+ 00021094  0x000052d1 branch  0x00002a8c , 0x00000034 
+ 00021095  0x000052d2 fetch  0x00000003 , 0x0000425d 
+ 00021096  0x000052d3 store  0x00000003 , 0x00004260 
+ 00021097  0x000052d4 fetch  0x00000003 , 0x0000425a 
+ 00021098  0x000052d5 store  0x00000003 , 0x0000425d 
+ 00021099  0x000052d6 fetch  0x00000003 , 0x00004257 
+ 00021100  0x000052d7 store  0x00000003 , 0x0000425a 
+ 00021101  0x000052d8 rtn 
+ 00021102  0x000052df bpatchx  0x00000026 , 0x00004024 
+ 00021103  0x000052e0 fetch  0x00000003 , 0x00004257 
+ 00021104  0x000052e1 rtn 
+ 00021105  0x000052e8 bpatchx  0x00000027 , 0x00004024 
+ 00021106  0x000052e9 fetch  0x00000003 , 0x0000425a 
+ 00021107  0x000052ea rtn 
+ 00021108  0x000052f1 bpatchx  0x00000028 , 0x00004025 
+ 00021109  0x000052f2 fetch  0x00000003 , 0x00004260 
+ 00021110  0x000052f3 rtn 
+ 00021111  0x000052f9 call  0x00005274 
+ 00021112  0x000052fa branch  0x00002a8c , 0x00000034 
+ 00021113  0x000052fb arg  0x00004257 , 0x00000006 
+ 00021114  0x000052fd ifetch  0x00000003 , 0x00000006 
+ 00021115  0x000052fe branch  0x0000527a , 0x00000034 
+ 00021116  0x000052ff increase  0xfffffffd , 0x00000006 
+ 00021117  0x00005300 rtn 
+ 00021118  0x00005308 bpatchx  0x00000029 , 0x00004025 
+ 00021119  0x00005309 arg  0x00000004 , 0x00000039 
+ 00021120  0x0000530a arg  0x00004257 , 0x00000006 
+ 00021121  0x0000530b arg  0x00000000 , 0x00000002 
+ 00021122  0x0000530d ifetch  0x00000003 , 0x00000006 
+ 00021123  0x0000530e and  0x0000003f , 0x000000ff , 0x0000003f 
+ 00021124  0x0000530f ior  0x00000002 , 0x00000002 
+ 00021125  0x00005310 loop  0x00005282 
+ 00021126  0x00005311 storet  0x00000001 , 0x00004256 
+ 00021127  0x00005312 rtn 
+ 00021128  0x0000531b bpatchx  0x0000002a , 0x00004025 
+ 00021129  0x0000531c call  0x0000526e 
+ 00021130  0x0000531d nbranch  0x00002a8c , 0x00000034 
+ 00021131  0x0000531e call  0x00005274 
+ 00021132  0x0000531f branch  0x00005295 , 0x00000034 
+ 00021133  0x00005320 fetch  0x00000003 , 0x0000425a 
+ 00021134  0x00005321 store  0x00000003 , 0x00004257 
+ 00021135  0x00005322 ifetch  0x00000003 , 0x00000006 
+ 00021136  0x00005323 istore  0x00000003 , 0x00000005 
+ 00021137  0x00005324 ifetch  0x00000003 , 0x00000006 
+ 00021138  0x00005325 istore  0x00000003 , 0x00000005 
+ 00021139  0x00005326 setarg  0x00000000 
+ 00021140  0x00005327 istore  0x00000003 , 0x00000005 
+ 00021141  0x00005329 arg  0x00000000 , 0x00000002 
+ 00021142  0x0000532a copy  0x0000000b , 0x0000003f 
+ 00021143  0x0000532b iadd  0x00000007 , 0x0000003f 
+ 00021144  0x0000532d qset1  0x00000002 
+ 00021145  0x0000532e increase  0x00000001 , 0x00000007 
+ 00021146  0x0000532f isub  0x00000007 , 0x0000003e 
+ 00021147  0x00005330 nbranch  0x00005298 , 0x00000005 
+ 00021148  0x00005332 lshift8  0x00000012 , 0x0000003f 
+ 00021149  0x00005333 ior  0x00000002 , 0x0000003f 
+ 00021150  0x00005334 store  0x00000003 , 0x00004260 
+ 00021151  0x00005335 rtn 
+ 00021152  0x00005340 bpatchx  0x0000002b , 0x00004025 
+ 00021153  0x00005341 call  0x0000527e 
+ 00021154  0x00005342 copy  0x00000007 , 0x00000013 
+ 00021155  0x00005343 arg  0x00000000 , 0x00000002 
+ 00021156  0x00005344 arg  0x00000000 , 0x0000000b 
+ 00021157  0x00005347 copy  0x00000007 , 0x0000003f 
+ 00021158  0x00005348 beq  0x00000008 , 0x000052b0 
+ 00021159  0x00005349 fetch  0x00000001 , 0x00004256 
+ 00021160  0x0000534a qisolate1  0x0000003f 
+ 00021161  0x0000534b branch  0x000052b0 , 0x00000001 
+ 00021162  0x0000534c increase  0x00000080 , 0x00000002 
+ 00021163  0x0000534d increase  0x00000001 , 0x00000007 
+ 00021164  0x0000534e copy  0x00000011 , 0x0000003f 
+ 00021165  0x0000534f isub  0x00000002 , 0x0000003e 
+ 00021166  0x00005350 branch  0x000052b0 , 0x00000005 
+ 00021167  0x00005351 branch  0x000052a5 , 0x00000002 
+ 00021168  0x00005353 copy  0x00000002 , 0x0000003f 
+ 00021169  0x00005354 isub  0x00000011 , 0x0000003e 
+ 00021170  0x00005355 nbranch  0x000052b6 , 0x00000002 
+ 00021171  0x00005356 copy  0x00000007 , 0x0000003f 
+ 00021172  0x00005357 copy  0x00000013 , 0x00000002 
+ 00021173  0x00005358 isub  0x00000002 , 0x0000000b 
+ 00021174  0x0000535a copy  0x00000013 , 0x00000007 
+ 00021175  0x0000535b rtn 
+ 00021176  0x0000535f bpatchx  0x0000002c , 0x00004025 
+ 00021177  0x00005360 arg  0x0000007f , 0x00000011 
+ 00021178  0x00005361 call  0x00005240 
+ 00021179  0x00005362 store  0x00000002 , 0x0000026b 
+ 00021180  0x00005363 increase  0x00000004 , 0x0000003f 
+ 00021181  0x00005364 store  0x00000002 , 0x0000026d 
+ 00021182  0x00005365 setarg  0x00000000 
+ 00021183  0x00005366 store  0x00000002 , 0x0000026f 
+ 00021184  0x00005367 rtn 
+ 00021185  0x0000536a fetch  0x00000002 , 0x0000026b 
+ 00021186  0x0000536b branch  0x000052e2 
+ 00021187  0x0000536e fetch  0x00000002 , 0x0000026d 
+ 00021188  0x0000536f branch  0x000052e2 
+ 00021189  0x00005373 bpatchx  0x0000002d , 0x00004025 
+ 00021190  0x00005374 arg  0x000000fa , 0x00000011 
+ 00021191  0x00005375 call  0x00005240 
+ 00021192  0x00005376 store  0x00000002 , 0x00000271 
+ 00021193  0x00005377 increase  0x00000004 , 0x0000003f 
+ 00021194  0x00005378 store  0x00000002 , 0x00000273 
+ 00021195  0x00005379 setarg  0x00000000 
+ 00021196  0x0000537a store  0x00000002 , 0x00000275 
+ 00021197  0x0000537b rtn 
+ 00021198  0x0000537e fetch  0x00000002 , 0x00000271 
+ 00021199  0x0000537f branch  0x000052e2 
+ 00021200  0x00005382 fetch  0x00000002 , 0x00000273 
+ 00021201  0x00005383 branch  0x000052e2 
+ 00021202  0x00005387 bpatchx  0x0000002e , 0x00004025 
+ 00021203  0x00005388 call  0x00007e7c 
+ 00021204  0x00005389 jam  0x00000001 , 0x00000284 
+ 00021205  0x0000538a call  0x0000526e 
+ 00021206  0x0000538b nrtn  0x00000034 
+ 00021207  0x0000538c arg  0x0000007f , 0x00000011 
+ 00021208  0x0000538d call  0x00005240 
+ 00021209  0x0000538e store  0x00000002 , 0x00000277 
+ 00021210  0x0000538f increase  0x00000004 , 0x0000003f 
+ 00021211  0x00005390 store  0x00000002 , 0x00000279 
+ 00021212  0x00005391 setarg  0x00000000 
+ 00021213  0x00005392 store  0x00000002 , 0x0000027b 
+ 00021214  0x00005393 jam  0x00000000 , 0x00000284 
+ 00021215  0x00005394 branch  0x00007e8c 
+ 00021216  0x00005397 fetch  0x00000002 , 0x00000277 
+ 00021217  0x00005398 branch  0x000052e2 
+ 00021218  0x0000539b branch  0x00002a8c , 0x00000034 
+ 00021219  0x0000539c copy  0x0000003f , 0x00000005 
+ 00021220  0x0000539d rtn 
+ 00021221  0x000053a1 bpatchx  0x0000002f , 0x00004025 
+ 00021222  0x000053a2 arg  0x00000000 , 0x00000012 
+ 00021223  0x000053a3 arg  0x00004257 , 0x00000011 
+ 00021224  0x000053a4 increase  0xfffffffe , 0x00000011 
+ 00021225  0x000053a6 increase  0x00000002 , 0x00000011 
+ 00021226  0x000053a7 setarg  0x00004263 
+ 00021227  0x000053a8 isub  0x00000011 , 0x0000003e 
+ 00021228  0x000053a9 branch  0x000052f5 , 0x00000005 
+ 00021229  0x000053aa ifetch  0x00000001 , 0x00000011 
+ 00021230  0x000053ab increase  0x00000001 , 0x00000011 
+ 00021231  0x000053ac branch  0x000052e9 , 0x00000034 
+ 00021232  0x000053ad ifetcht  0x00000002 , 0x00000011 
+ 00021233  0x000053ae ifetch  0x00000002 , 0x00000002 
+ 00021234  0x000053af iadd  0x00000012 , 0x00000012 
+ 00021235  0x000053b0 increase  0x00000004 , 0x00000012 
+ 00021236  0x000053b1 branch  0x000052e9 
+ 00021237  0x000053b3 copy  0x00000012 , 0x0000003f 
+ 00021238  0x000053b4 rtn 
+ 00021239  0x000053b8 arg  0x0000000c , 0x00000007 
+ 00021240  0x000053b9 branch  0x00002c32 
+ 00021241  0x000053bc arg  0x0000000c , 0x00000007 
+ 00021242  0x000053bd branch  0x00002c36 
+ 00021243  0x000053c0 bpatchx  0x00000030 , 0x00004026 
+ 00021244  0x000053c1 call  0x0000527e 
+ 00021245  0x000053c2 fetch  0x00000001 , 0x00004256 
+ 00021246  0x000053c3 rtn  0x00000034 
+ 00021247  0x000053c4 call  0x000052e5 
+ 00021248  0x000053c5 arg  0x00000100 , 0x00000002 
+ 00021249  0x000053c6 isub  0x00000002 , 0x0000003e 
+ 00021250  0x000053c7 branch  0x000052f7 , 0x00000002 
+ 00021251  0x000053c8 call  0x000052f9 
+ 00021252  0x000053c9 arg  0x00004263 , 0x00000005 
+ 00021253  0x000053ca arg  0x00004257 , 0x00000011 
+ 00021254  0x000053cc setarg  0x00004263 
+ 00021255  0x000053cd isub  0x00000011 , 0x0000003e 
+ 00021256  0x000053ce rtn  0x00000005 
+ 00021257  0x000053cf ifetch  0x00000001 , 0x00000011 
+ 00021258  0x000053d0 increase  0x00000001 , 0x00000011 
+ 00021259  0x000053d1 nbranch  0x0000530f , 0x00000034 
+ 00021260  0x000053d2 istore  0x00000002 , 0x00000005 
+ 00021261  0x000053d3 increase  0x00000002 , 0x00000011 
+ 00021262  0x000053d4 branch  0x00005306 
+ 00021263  0x000053d6 ifetch  0x00000002 , 0x00000011 
+ 00021264  0x000053d7 increase  0x00000002 , 0x00000011 
+ 00021265  0x000053d8 copy  0x0000003f , 0x00000006 
+ 00021266  0x000053d9 ifetch  0x00000002 , 0x00000006 
+ 00021267  0x000053da istore  0x00000002 , 0x00000005 
+ 00021268  0x000053db copy  0x0000003f , 0x00000039 
+ 00021269  0x000053dc increase  0x00000002 , 0x00000039 
+ 00021270  0x000053dd call  0x00007f01 
+ 00021271  0x000053de branch  0x00005306 
+ 00021272  0x000053e1 bpatchx  0x00000031 , 0x00004026 
+ 00021273  0x000053e2 call  0x0000527e 
+ 00021274  0x000053e3 fetch  0x00000001 , 0x00004256 
+ 00021275  0x000053e4 rtn  0x00000034 
+ 00021276  0x000053e5 arg  0x00004258 , 0x00000011 
+ 00021277  0x000053e6 increase  0xfffffffd , 0x00000011 
+ 00021278  0x000053e7 arg  0x00004263 , 0x00000006 
+ 00021279  0x000053e9 increase  0x00000003 , 0x00000011 
+ 00021280  0x000053ea setarg  0x00004264 
+ 00021281  0x000053eb isub  0x00000011 , 0x0000003e 
+ 00021282  0x000053ec rtn  0x00000005 
+ 00021283  0x000053ed ifetch  0x00000002 , 0x00000006 
+ 00021284  0x000053ee branch  0x0000531f , 0x00000034 
+ 00021285  0x000053ef increase  0x00000004 , 0x0000003f 
+ 00021286  0x000053f0 copy  0x0000003f , 0x00000039 
+ 00021287  0x000053f1 copy  0x00000006 , 0x00000012 
+ 00021288  0x000053f2 ifetch  0x00000002 , 0x00000011 
+ 00021289  0x000053f3 copy  0x0000003f , 0x00000005 
+ 00021290  0x000053f4 copy  0x00000012 , 0x00000006 
+ 00021291  0x000053f5 increase  0xfffffffe , 0x00000006 
+ 00021292  0x000053f6 call  0x00007f01 
+ 00021293  0x000053f7 branch  0x0000531f 
+ 00021294  0x00005402 bpatchx  0x00000032 , 0x00004026 
+ 00021295  0x00005403 disable  0x0000002b 
+ 00021296  0x00005404 jam  0x00000001 , 0x00000455 
+ 00021297  0x00005405 jam  0x00000003 , 0x0000043f 
+ 00021298  0x00005406 jam  0x00000001 , 0x00000456 
+ 00021299  0x00005407 setarg  0xffffffff 
+ 00021300  0x00005408 store  0x00000002 , 0x00000459 
+ 00021301  0x00005409 force  0x00000000 , 0x0000003f 
+ 00021302  0x0000540a store  0x00000001 , 0x00000457 
+ 00021303  0x0000540b store  0x00000001 , 0x00000462 
+ 00021304  0x0000540c store  0x00000003 , 0x00004169 
+ 00021305  0x0000540d store  0x00000003 , 0x0000416c 
+ 00021306  0x0000540e store  0x00000005 , 0x00004403 
+ 00021307  0x0000540f set1  0x00000027 , 0x0000003f 
+ 00021308  0x00005410 store  0x00000005 , 0x00004408 
+ 00021309  0x00005411 jam  0x00000001 , 0x000043dc 
+ 00021310  0x00005412 jam  0x00000000 , 0x000043dd 
+ 00021311  0x00005413 branch  0x000056ed 
+ 00021312  0x00005416 bpatchx  0x00000033 , 0x00004026 
+ 00021313  0x00005417 enable  0x00000029 
+ 00021314  0x00005418 jam  0x00000003 , 0x00000440 
+ 00021315  0x00005419 jam  0x00000001 , 0x00000478 
+ 00021316  0x0000541a jam  0x00000001 , 0x0000445a 
+ 00021317  0x0000541b setarg  0x0000ffff 
+ 00021318  0x0000541c store  0x00000002 , 0x0000445c 
+ 00021319  0x0000541d force  0x00000000 , 0x0000003f 
+ 00021320  0x0000541e store  0x00000005 , 0x00004408 
+ 00021321  0x0000541f set1  0x00000027 , 0x0000003f 
+ 00021322  0x00005420 store  0x00000005 , 0x00004403 
+ 00021323  0x00005421 branch  0x0000532e 
+ 00021324  0x00005425 bpatchx  0x00000034 , 0x00004026 
+ 00021325  0x00005426 disable  0x00000029 
+ 00021326  0x00005427 setarg  0x00000017 
+ 00021327  0x00005428 store  0x00000002 , 0x000044a8 
+ 00021328  0x00005429 jam  0x00000001 , 0x00000440 
+ 00021329  0x0000542a jam  0x00000000 , 0x0000436e 
+ 00021330  0x0000542b jam  0x00000000 , 0x000000a0 
+ 00021331  0x0000542c jam  0x00000000 , 0x000044c4 
+ 00021332  0x0000542d jam  0x00000000 , 0x000044c5 
+ 00021333  0x0000542e fetch  0x00000002 , 0x0000046d 
+ 00021334  0x0000542f store  0x00000002 , 0x000044ba 
+ 00021335  0x00005430 fetch  0x00000002 , 0x00000441 
+ 00021336  0x00005431 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00021337  0x00005432 rshift4  0x0000003f , 0x0000003f 
+ 00021338  0x00005433 store  0x00000002 , 0x0000046d 
+ 00021339  0x00005434 branch  0x0000532e 
+ 00021340  0x0000543b call  0x000053c4 
+ 00021341  0x0000543c call  0x000055e8 
+ 00021342  0x0000543d call  0x000056f0 
+ 00021343  0x0000543e branch  0x000053ce 
+ 00021344  0x00005441 bpatchx  0x00000035 , 0x00004026 
+ 00021345  0x00005442 call  0x000053c4 
+ 00021346  0x00005443 call  0x000032f4 
+ 00021347  0x00005444 fetch  0x00000001 , 0x00000440 
+ 00021348  0x00005445 beq  0x00000003 , 0x00005366 
+ 00021349  0x00005446 branch  0x0000537a 
+ 00021350  0x0000544d bpatchx  0x00000036 , 0x00004026 
+ 00021351  0x0000544e enable  0x00000029 
+ 00021352  0x0000544f call  0x000056e4 
+ 00021353  0x00005450 branch  0x00005377 , 0x00000002 
+ 00021354  0x00005451 call  0x00002c6c 
+ 00021355  0x00005452 call  0x00005413 
+ 00021356  0x00005453 call  0x0000561e 
+ 00021357  0x00005454 disable  0x0000002d 
+ 00021358  0x00005455 call  0x000054bf 
+ 00021359  0x00005456 nrtn  0x0000002d 
+ 00021360  0x00005457 bpatchx  0x00000037 , 0x00004026 
+ 00021361  0x00005458 fetch  0x00000001 , 0x00000005 
+ 00021362  0x00005459 increase  0x00000001 , 0x0000003f 
+ 00021363  0x0000545a store  0x00000001 , 0x00000005 
+ 00021364  0x0000545b call  0x000055aa 
+ 00021365  0x0000545c disable  0x00000029 
+ 00021366  0x0000545d rtn 
+ 00021367  0x00005460 call  0x000053a9 
+ 00021368  0x00005461 disable  0x00000029 
+ 00021369  0x00005462 rtn 
+ 00021370  0x00005468 bpatchx  0x00000038 , 0x00004027 
+ 00021371  0x00005469 jam  0x00000000 , 0x0000450f 
+ 00021372  0x0000546a call  0x00007aaf 
+ 00021373  0x0000546b call  0x00005c18 
+ 00021374  0x0000546c disable  0x0000002e 
+ 00021375  0x0000546d call  0x000056e4 
+ 00021376  0x0000546e branch  0x000053a9 , 0x00000002 
+ 00021377  0x0000546f call  0x00002c6c 
+ 00021378  0x00005470 call  0x00005413 
+ 00021379  0x00005471 call  0x00005489 
+ 00021380  0x00005472 nbranch  0x0000539b , 0x00000018 
+ 00021381  0x00005473 call  0x000053b7 
+ 00021382  0x00005474 branch  0x00005388 , 0x0000002d 
+ 00021383  0x00005475 branch  0x00005395 
+ 00021384  0x00005479 bpatchx  0x00000039 , 0x00004027 
+ 00021385  0x0000547a fetch  0x00000001 , 0x0000450f 
+ 00021386  0x0000547b pincrease  0x00000001 
+ 00021387  0x0000547c store  0x00000001 , 0x0000450f 
+ 00021388  0x0000547d beq  0x0000000c , 0x00005395 
+ 00021389  0x0000547e call  0x000055aa 
+ 00021390  0x0000547f call  0x0000561e 
+ 00021391  0x00005480 call  0x000054c7 
+ 00021392  0x00005481 call  0x0000567e 
+ 00021393  0x00005482 fetch  0x00000002 , 0x000041fb 
+ 00021394  0x00005483 call  0x00007f9c 
+ 00021395  0x00005484 call  0x000053a0 
+ 00021396  0x00005485 branch  0x000053a4 , 0x00000028 
+ 00021397  0x00005487 bpatchx  0x0000003a , 0x00004027 
+ 00021398  0x00005488 call  0x00005be4 
+ 00021399  0x00005489 call  0x00005bdb 
+ 00021400  0x0000548a call  0x00007d9c 
+ 00021401  0x0000548b fetch  0x00000001 , 0x00000462 
+ 00021402  0x0000548c bbit1  0x00000003 , 0x000053a9 
+ 00021403  0x0000548e bpatchx  0x0000003b , 0x00004027 
+ 00021404  0x0000548f call  0x000057f4 
+ 00021405  0x00005490 call  0x0000559d 
+ 00021406  0x00005491 call  0x00005575 
+ 00021407  0x00005492 branch  0x00002841 
+ 00021408  0x00005496 disable  0x00000028 
+ 00021409  0x00005497 bmark1  0x0000002a , 0x00007fe7 
+ 00021410  0x00005498 bmark1  0x00000029 , 0x00007fe7 
+ 00021411  0x00005499 rtn 
+ 00021412  0x0000549d bpatchx  0x0000003c , 0x00004027 
+ 00021413  0x0000549e enable  0x0000002e 
+ 00021414  0x0000549f call  0x000054c1 
+ 00021415  0x000054a0 branch  0x00005388 , 0x0000002d 
+ 00021416  0x000054a1 branch  0x00005395 
+ 00021417  0x000054a7 bpatchx  0x0000003d , 0x00004027 
+ 00021418  0x000054a8 call  0x000053af 
+ 00021419  0x000054a9 call  0x000033b4 
+ 00021420  0x000054aa call  0x00007a77 
+ 00021421  0x000054ab jam  0x00000015 , 0x00000a99 
+ 00021422  0x000054ac branch  0x00007d86 
+ 00021423  0x000054af setarg  0x00000000 
+ 00021424  0x000054b0 store  0x00000009 , 0x000044ff 
+ 00021425  0x000054b1 jam  0x00000000 , 0x00000455 
+ 00021426  0x000054b2 jam  0x00000000 , 0x00000440 
+ 00021427  0x000054b3 jam  0x00000000 , 0x0000043f 
+ 00021428  0x000054b4 jam  0x00000000 , 0x000044c5 
+ 00021429  0x000054b5 jam  0x00000000 , 0x000044c4 
+ 00021430  0x000054b6 rtn 
+ 00021431  0x000054b9 bpatchx  0x0000003e , 0x00004027 
+ 00021432  0x000054ba fetch  0x00000001 , 0x00000005 
+ 00021433  0x000054bb increase  0x00000001 , 0x0000003f 
+ 00021434  0x000054bc store  0x00000001 , 0x00000005 
+ 00021435  0x000054bd fetch  0x00000001 , 0x0000043f 
+ 00021436  0x000054be rtnbit1  0x00000003 
+ 00021437  0x000054bf set1  0x00000003 
+ 00021438  0x000054c0 store  0x00000001 , 0x0000043f 
+ 00021439  0x000054c1 fetch  0x00000002 , 0x000044ba 
+ 00021440  0x000054c2 store  0x00000002 , 0x0000046d 
+ 00021441  0x000054c3 setarg  0x00000000 
+ 00021442  0x000054c4 store  0x00000004 , 0x000044e5 
+ 00021443  0x000054c5 rtn 
+ 00021444  0x000054c9 bpatchx  0x0000003f , 0x00004027 
+ 00021445  0x000054ca jam  0x00000036 , 0x0000890f 
+ 00021446  0x000054cb jam  0x0000005f , 0x0000890b 
+ 00021447  0x000054cc enable  0x00000036 
+ 00021448  0x000054cd jam  0x00000007 , 0x00008914 
+ 00021449  0x000054ce call  0x00002c6c 
+ 00021450  0x000054cf fetch  0x00000001 , 0x000041e0 
+ 00021451  0x000054d0 rtn  0x00000034 
+ 00021452  0x000054d1 jam  0x000000b8 , 0x0000890a 
+ 00021453  0x000054d2 rtn 
+ 00021454  0x000054d5 bpatchx  0x00000040 , 0x00004028 
+ 00021455  0x000054d6 jam  0x0000002e , 0x0000890f 
+ 00021456  0x000054d7 jam  0x000000ff , 0x0000890b 
+ 00021457  0x000054d8 disable  0x00000036 
+ 00021458  0x000054d9 jam  0x00000003 , 0x00008914 
+ 00021459  0x000054da arg  0x00000000 , 0x0000001b 
+ 00021460  0x000054db rtn 
+ 00021461  0x000054de disable  0x00000009 
+ 00021462  0x000054df disable  0x00000007 
+ 00021463  0x000054e0 fetch  0x00000003 , 0x00000467 
+ 00021464  0x000054e1 iforce  0x0000000f 
+ 00021465  0x000054e2 fetch  0x00000001 , 0x00000016 
+ 00021466  0x000054e3 reverse  0x0000003f , 0x00000002 
+ 00021467  0x000054e4 set1  0x00000001 , 0x00000002 
+ 00021468  0x000054e5 rshift  0x00000002 , 0x0000000e 
+ 00021469  0x000054e6 rtn 
+ 00021470  0x000054ea call  0x000053e6 
+ 00021471  0x000054eb call  0x0000291f 
+ 00021472  0x000054ec setarg  0x00000500 
+ 00021473  0x000054ed call  0x00002a8f 
+ 00021474  0x000054ee branch  0x00002924 
+ 00021475  0x000054f1 branch  0x00002939 , 0x0000002d 
+ 00021476  0x000054f3 call  0x000053e6 
+ 00021477  0x000054f4 branch  0x00002933 
+ 00021478  0x000054f6 bpatchx  0x00000041 , 0x00004028 
+ 00021479  0x000054f7 call  0x00002918 
+ 00021480  0x000054f8 fetch  0x00000001 , 0x0000048c 
+ 00021481  0x000054f9 nbranch  0x000053f9 , 0x00000034 
+ 00021482  0x000054fa fetch  0x00000001 , 0x00000016 
+ 00021483  0x000054fb sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021484  0x000054fc branch  0x000053f3 , 0x00000002 
+ 00021485  0x000054fd force  0x00000000 , 0x00000002 
+ 00021486  0x000054fe rtneq  0x00000025 
+ 00021487  0x000054ff force  0x00000018 , 0x00000002 
+ 00021488  0x00005500 rtneq  0x00000026 
+ 00021489  0x00005501 force  0x0000004e , 0x00000002 
+ 00021490  0x00005502 rtn 
+ 00021491  0x00005505 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00021492  0x00005506 branch  0x000053f6 , 0x00000002 
+ 00021493  0x00005507 increase  0x00000001 , 0x0000003f 
+ 00021494  0x0000550a lshift  0x0000003f , 0x0000003f 
+ 00021495  0x0000550b add  0x0000003f , 0x00000002 , 0x00000002 
+ 00021496  0x0000550c rtn 
+ 00021497  0x0000550f fetch  0x00000001 , 0x00000016 
+ 00021498  0x00005510 lshift  0x0000003f , 0x00000002 
+ 00021499  0x00005511 rtn 
+ 00021500  0x00005514 arg  0x000001f4 , 0x00000002 
+ 00021501  0x00005515 rtn  0x00000034 
+ 00021502  0x00005516 arg  0x000000fa , 0x00000002 
+ 00021503  0x00005517 rtneq  0x00000001 
+ 00021504  0x00005518 arg  0x00000096 , 0x00000002 
+ 00021505  0x00005519 rtneq  0x00000002 
+ 00021506  0x0000551a arg  0x00000064 , 0x00000002 
+ 00021507  0x0000551b rtneq  0x00000003 
+ 00021508  0x0000551c arg  0x0000004b , 0x00000002 
+ 00021509  0x0000551d rtneq  0x00000004 
+ 00021510  0x0000551e arg  0x00000032 , 0x00000002 
+ 00021511  0x0000551f rtneq  0x00000005 
+ 00021512  0x00005520 arg  0x00000028 , 0x00000002 
+ 00021513  0x00005521 rtneq  0x00000006 
+ 00021514  0x00005522 arg  0x00000014 , 0x00000002 
+ 00021515  0x00005523 rtn 
+ 00021516  0x00005528 setarg  0x008e89be 
+ 00021517  0x00005529 lshift8  0x0000003f , 0x0000003f 
+ 00021518  0x0000552a or_into  0x000000d6 , 0x0000003f 
+ 00021519  0x0000552b iforce  0x00000009 
+ 00021520  0x0000552c setarg  0x00555555 
+ 00021521  0x0000552d store  0x00000003 , 0x00000467 
+ 00021522  0x0000552e rtn 
+ 00021523  0x00005531 bpatchx  0x00000042 , 0x00004028 
+ 00021524  0x00005532 enable  0x00000010 
+ 00021525  0x00005533 fetch  0x00000004 , 0x00000463 
+ 00021526  0x00005534 iforce  0x00000009 
+ 00021527  0x00005535 call  0x00005466 
+ 00021528  0x00005536 setarg  0x00000200 
+ 00021529  0x00005537 branch  0x0000541c , 0x00000029 
+ 00021530  0x00005538 fetch  0x00000002 , 0x0000044d 
+ 00021531  0x00005539 rshift  0x0000003f , 0x0000003f 
+ 00021532  0x0000553b arg  0x00000500 , 0x00000002 
+ 00021533  0x0000553c iadd  0x00000002 , 0x0000003f 
+ 00021534  0x0000553d call  0x00002a24 
+ 00021535  0x0000553e deposit  0x0000001a 
+ 00021536  0x0000553f store  0x00000006 , 0x00000491 
+ 00021537  0x00005540 rtn 
+ 00021538  0x00005543 bpatchx  0x00000043 , 0x00004028 
+ 00021539  0x00005544 fetch  0x00000001 , 0x00000016 
+ 00021540  0x00005545 beq  0x00000025 , 0x00005428 
+ 00021541  0x00005546 beq  0x00000026 , 0x0000542e 
+ 00021542  0x00005547 beq  0x00000027 , 0x00005434 
+ 00021543  0x00005548 branch  0x00005434 
+ 00021544  0x0000554b fetcht  0x00000001 , 0x0000448d 
+ 00021545  0x0000554c isolate1  0x00000001 , 0x00000002 
+ 00021546  0x0000554d branch  0x0000543f , 0x00000001 
+ 00021547  0x0000554e isolate1  0x00000002 , 0x00000002 
+ 00021548  0x0000554f branch  0x00005444 , 0x00000001 
+ 00021549  0x00005550 branch  0x0000543a 
+ 00021550  0x00005554 fetcht  0x00000001 , 0x0000448d 
+ 00021551  0x00005555 isolate1  0x00000002 , 0x00000002 
+ 00021552  0x00005556 branch  0x00005444 , 0x00000001 
+ 00021553  0x00005557 isolate1  0x00000000 , 0x00000002 
+ 00021554  0x00005558 branch  0x0000543a , 0x00000001 
+ 00021555  0x00005559 branch  0x0000543f 
+ 00021556  0x0000555d fetcht  0x00000001 , 0x0000448d 
+ 00021557  0x0000555e isolate1  0x00000000 , 0x00000002 
+ 00021558  0x0000555f branch  0x0000543a , 0x00000001 
+ 00021559  0x00005560 isolate1  0x00000001 , 0x00000002 
+ 00021560  0x00005561 branch  0x0000543f , 0x00000001 
+ 00021561  0x00005562 branch  0x00005444 
+ 00021562  0x00005567 jam  0x00000025 , 0x00000016 
+ 00021563  0x00005568 fetch  0x00000001 , 0x00000ac2 
+ 00021564  0x00005569 set1  0x00000000 , 0x0000003f 
+ 00021565  0x0000556a store  0x00000001 , 0x00000ac2 
+ 00021566  0x0000556b rtn 
+ 00021567  0x0000556e jam  0x00000026 , 0x00000016 
+ 00021568  0x0000556f fetch  0x00000001 , 0x00000ac2 
+ 00021569  0x00005570 set1  0x00000001 , 0x0000003f 
+ 00021570  0x00005571 store  0x00000001 , 0x00000ac2 
+ 00021571  0x00005572 rtn 
+ 00021572  0x00005575 jam  0x00000027 , 0x00000016 
+ 00021573  0x00005576 fetch  0x00000001 , 0x00000ac2 
+ 00021574  0x00005577 set1  0x00000002 , 0x0000003f 
+ 00021575  0x00005578 store  0x00000001 , 0x00000ac2 
+ 00021576  0x00005579 rtn 
+ 00021577  0x0000557e bpatchx  0x00000044 , 0x00004028 
+ 00021578  0x0000557f add  0x00000011 , 0x00000001 , 0x00000006 
+ 00021579  0x00005580 ifetch  0x00000001 , 0x00000006 
+ 00021580  0x00005581 rtnbit0  0x00000000 
+ 00021581  0x00005582 add  0x00000011 , 0x0000001a , 0x00000005 
+ 00021582  0x00005583 ifetch  0x00000002 , 0x00000005 
+ 00021583  0x00005584 increase  0x00000001 , 0x0000003f 
+ 00021584  0x00005585 istore  0x00000002 , 0x00000005 
+ 00021585  0x00005586 add  0x00000011 , 0x00000019 , 0x00000006 
+ 00021586  0x00005587 ifetch  0x00000001 , 0x00000006 
+ 00021587  0x00005588 add  0x00000011 , 0x00000018 , 0x00000005 
+ 00021588  0x00005589 ifetcht  0x00000001 , 0x00000005 
+ 00021589  0x0000558a iadd  0x00000002 , 0x0000003f 
+ 00021590  0x0000558b sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021591  0x0000558c branch  0x00005459 , 0x00000002 
+ 00021592  0x0000558d increase  0xffffffdb , 0x0000003f 
+ 00021593  0x0000558f istore  0x00000001 , 0x00000005 
+ 00021594  0x00005590 rtn 
+ 00021595  0x00005594 bpatchx  0x00000045 , 0x00004028 
+ 00021596  0x00005595 fetch  0x00000005 , 0x0000046f 
+ 00021597  0x00005596 force  0x00000000 , 0x00000002 
+ 00021598  0x00005597 force  0x00000025 , 0x00000039 
+ 00021599  0x00005599 bbit0  0x00000000 , 0x00005461 
+ 00021600  0x0000559a increase  0x00000001 , 0x00000002 
+ 00021601  0x0000559c rshift  0x0000003f , 0x0000003f 
+ 00021602  0x0000559d loop  0x0000545f 
+ 00021603  0x0000559e add  0x00000002 , 0xffffffff , 0x0000003f 
+ 00021604  0x0000559f store  0x00000001 , 0x00000461 
+ 00021605  0x000055a0 rtn 
+ 00021606  0x000055a3 bpatchx  0x00000046 , 0x00004028 
+ 00021607  0x000055a4 fetch  0x00000001 , 0x00000457 
+ 00021608  0x000055a5 iforce  0x00000007 
+ 00021609  0x000055a6 fetcht  0x00000005 , 0x0000046f 
+ 00021610  0x000055a7 qisolate1  0x00000002 
+ 00021611  0x000055a8 branch  0x0000547c , 0x00000001 
+ 00021612  0x000055aa bpatchx  0x00000047 , 0x00004028 
+ 00021613  0x000055ab fetch  0x00000001 , 0x00000461 
+ 00021614  0x000055ac isub  0x00000007 , 0x0000003f 
+ 00021615  0x000055ad branch  0x00005472 , 0x00000002 
+ 00021616  0x000055ae sub  0x0000003f , 0xffffffff , 0x00000007 
+ 00021617  0x000055af branch  0x0000546c 
+ 00021618  0x000055b1 copy  0x00000007 , 0x00000039 
+ 00021619  0x000055b2 force  0x00000000 , 0x00000007 
+ 00021620  0x000055b4 qisolate1  0x00000002 
+ 00021621  0x000055b5 branch  0x00005477 , 0x00000001 
+ 00021622  0x000055b6 increase  0x00000001 , 0x00000039 
+ 00021623  0x000055b8 deposit  0x00000039 
+ 00021624  0x000055b9 branch  0x0000547c , 0x00000034 
+ 00021625  0x000055ba increase  0x00000001 , 0x00000007 
+ 00021626  0x000055bb increase  0xffffffff , 0x00000039 
+ 00021627  0x000055bc branch  0x00005474 
+ 00021628  0x000055be deposit  0x00000007 
+ 00021629  0x000055bf store  0x00000001 , 0x00000016 
+ 00021630  0x000055c0 rtn 
+ 00021631  0x000055c4 branch  0x00005482 , 0x00000029 
+ 00021632  0x000055c5 until  0x0000003e , 0x00000003 
+ 00021633  0x000055c6 rtn 
+ 00021634  0x000055c9 arg  0x00000ea0 , 0x0000000b 
+ 00021635  0x000055ca until  0x00000023 , 0x00000026 
+ 00021636  0x000055cb rtn 
+ 00021637  0x000055ce disable  0x00000010 
+ 00021638  0x000055cf fetch  0x00000002 , 0x0000436c 
+ 00021639  0x000055d0 copy  0x0000003f , 0x0000000b 
+ 00021640  0x000055d1 branch  0x0000548e 
+ 00021641  0x000055d5 bpatchx  0x00000048 , 0x00004029 
+ 00021642  0x000055d6 enable  0x00000010 
+ 00021643  0x000055d7 fetch  0x00000002 , 0x0000044d 
+ 00021644  0x000055d8 fetcht  0x00000004 , 0x000044e5 
+ 00021645  0x000055d9 iadd  0x00000002 , 0x0000000b 
+ 00021646  0x000055db call  0x000053de 
+ 00021647  0x000055dd bpatchx  0x00000049 , 0x00004029 
+ 00021648  0x000055de call  0x000053d5 
+ 00021649  0x000055df disable  0x0000002d 
+ 00021650  0x000055e0 enable  0x0000000d 
+ 00021651  0x000055e1 enable  0x00000021 
+ 00021652  0x000055e2 disable  0x00000020 
+ 00021653  0x000055e3 copy  0x0000000b , 0x0000001b 
+ 00021654  0x000055e4 correlate  0x0000003e , 0x00000003 
+ 00021655  0x000055e5 branch  0x0000549a , 0x0000002e 
+ 00021656  0x000055e6 copy  0x0000001a , 0x00000002 
+ 00021657  0x000055e7 storet  0x00000006 , 0x0000009a 
+ 00021658  0x000055e9 nbranch  0x0000264d , 0x00000018 
+ 00021659  0x000055ea branch  0x000054a1 , 0x0000002e 
+ 00021660  0x000055eb arg  0x000001e0 , 0x00000029 
+ 00021661  0x000055ec copy  0x00000021 , 0x00000028 
+ 00021662  0x000055ed fetch  0x00000001 , 0x0000043f 
+ 00021663  0x000055ee bbit0  0x00000003 , 0x000054a1 
+ 00021664  0x000055ef call  0x00002b05 , 0x0000002b 
+ 00021665  0x000055f1 bpatchx  0x0000004a , 0x00004029 
+ 00021666  0x000055f2 call  0x000029bb 
+ 00021667  0x000055f3 enable  0x00000007 
+ 00021668  0x000055f4 enable  0x00000009 
+ 00021669  0x000055f5 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021670  0x000055f6 rshift3  0x0000000c , 0x0000003f 
+ 00021671  0x000055f7 store  0x00000001 , 0x000002d9 
+ 00021672  0x000055f8 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021673  0x000055f9 rshift3  0x0000000c , 0x0000003f 
+ 00021674  0x000055fa istore  0x00000001 , 0x00000005 
+ 00021675  0x000055fb and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021676  0x000055fc branch  0x000054b1 , 0x00000005 
+ 00021677  0x000055ff parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021678  0x00005600 rshift3  0x0000000c , 0x0000003f 
+ 00021679  0x00005601 istore  0x00000001 , 0x00000005 
+ 00021680  0x00005602 loop  0x000054ad 
+ 00021681  0x00005605 bpatchx  0x0000004b , 0x00004029 
+ 00021682  0x00005606 parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00021683  0x00005607 enable  0x00000010 
+ 00021684  0x00005608 arg  0x00000664 , 0x0000001b 
+ 00021685  0x00005609 rshift32  0x0000003f , 0x0000003f 
+ 00021686  0x0000560a rshift16  0x0000003f , 0x0000003f 
+ 00021687  0x0000560b istore  0x00000003 , 0x00000005 
+ 00021688  0x0000560c branch  0x0000264d , 0x00000006 
+ 00021689  0x0000560d enable  0x0000002d 
+ 00021690  0x0000560e fetch  0x00000001 , 0x00000017 
+ 00021691  0x0000560f add  0x0000003f , 0x00000000 , 0x00000011 
+ 00021692  0x00005610 call  0x00002981 
+ 00021693  0x00005611 disable  0x0000000d 
+ 00021694  0x00005612 branch  0x00002918 
+ 00021695  0x00005615 bpatchx  0x0000004c , 0x00004029 
+ 00021696  0x00005616 call  0x000054c9 
+ 00021697  0x00005618 fetcht  0x00000001 , 0x00000017 
+ 00021698  0x00005619 call  0x0000291f 
+ 00021699  0x0000561a call  0x00002924 
+ 00021700  0x0000561b enable  0x00000010 
+ 00021701  0x0000561c arg  0x0000157c , 0x0000000b 
+ 00021702  0x0000561d branch  0x0000548f 
+ 00021703  0x00005620 call  0x000054c9 
+ 00021704  0x00005621 branch  0x0000264d 
+ 00021705  0x00005624 bpatchx  0x0000004d , 0x00004029 
+ 00021706  0x00005625 call  0x000053d5 
+ 00021707  0x00005626 call  0x000053e3 
+ 00021708  0x00005627 branch  0x000054cd 
+ 00021709  0x0000562a set1  0x00000000 , 0x00000015 
+ 00021710  0x0000562b enable  0x0000001d 
+ 00021711  0x0000562c enable  0x00000020 
+ 00021712  0x0000562d disable  0x00000021 
+ 00021713  0x0000562e call  0x0000547f 
+ 00021714  0x0000562f rshift16  0x00000009 , 0x0000003f 
+ 00021715  0x00005630 rshift8  0x0000003f , 0x0000003f 
+ 00021716  0x00005631 rshift4  0x0000003f , 0x0000003f 
+ 00021717  0x00005632 inject  0x00000003 , 0x00000028 
+ 00021718  0x00005633 enable  0x00000007 
+ 00021719  0x00005634 enable  0x00000009 
+ 00021720  0x00005635 bpatchx  0x0000004e , 0x00004029 
+ 00021721  0x00005636 fetch  0x00000001 , 0x000043dc 
+ 00021722  0x00005637 inject  0x00000003 , 0x00000008 
+ 00021723  0x00005638 ifetch  0x00000001 , 0x00000006 
+ 00021724  0x00005639 and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021725  0x0000563a inject  0x00000003 , 0x00000008 
+ 00021726  0x0000563b branch  0x000054e2 , 0x00000005 
+ 00021727  0x0000563d ifetch  0x00000001 , 0x00000006 
+ 00021728  0x0000563e inject  0x00000003 , 0x00000008 
+ 00021729  0x0000563f loop  0x000054df 
+ 00021730  0x00005642 enable  0x00000008 
+ 00021731  0x00005643 inject  0x00000003 , 0x00000018 
+ 00021732  0x00005644 disable  0x00000008 
+ 00021733  0x00005645 until  0x0000003e , 0x00000027 
+ 00021734  0x00005646 nop  0x00000064 
+ 00021735  0x00005647 disable  0x0000001d 
+ 00021736  0x00005648 rtn 
+ 00021737  0x0000564b bpatchx  0x0000004f , 0x00004029 
+ 00021738  0x0000564c fetch  0x00000001 , 0x00004484 
+ 00021739  0x0000564d beq  0x00000001 , 0x000054f9 
+ 00021740  0x0000564e fetch  0x00000001 , 0x00004485 
+ 00021741  0x0000564f lshift4  0x0000003f , 0x0000003f 
+ 00021742  0x00005650 lshift2  0x0000003f , 0x0000003f 
+ 00021743  0x00005651 store  0x00000001 , 0x000043dc 
+ 00021744  0x00005652 fetcht  0x00000001 , 0x0000436f 
+ 00021745  0x00005653 add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021746  0x00005654 store  0x00000001 , 0x000043dd 
+ 00021747  0x00005655 fetch  0x00000006 , 0x000044a0 
+ 00021748  0x00005656 store  0x00000006 , 0x000043de 
+ 00021749  0x00005657 copy  0x00000002 , 0x00000039 
+ 00021750  0x00005658 arg  0x00004370 , 0x00000006 
+ 00021751  0x00005659 call  0x00007ef4 
+ 00021752  0x0000565a branch  0x00005504 
+ 00021753  0x0000565c fetch  0x00000001 , 0x00004486 
+ 00021754  0x0000565d lshift4  0x0000003f , 0x0000003f 
+ 00021755  0x0000565e lshift2  0x0000003f , 0x0000003f 
+ 00021756  0x0000565f increase  0x00000001 , 0x0000003f 
+ 00021757  0x00005660 store  0x00000001 , 0x000043dc 
+ 00021758  0x00005661 setarg  0x0000000c 
+ 00021759  0x00005662 store  0x00000001 , 0x000043dd 
+ 00021760  0x00005663 fetch  0x00000006 , 0x000044a0 
+ 00021761  0x00005664 store  0x00000006 , 0x000043de 
+ 00021762  0x00005665 fetch  0x00000006 , 0x000041d0 
+ 00021763  0x00005666 istore  0x00000006 , 0x00000005 
+ 00021764  0x00005668 bpatchx  0x00000050 , 0x0000402a 
+ 00021765  0x00005669 fetch  0x00000001 , 0x00000000 
+ 00021766  0x0000566a increase  0x00000001 , 0x0000003f 
+ 00021767  0x0000566b store  0x00000001 , 0x00000000 
+ 00021768  0x0000566c arg  0x00000708 , 0x0000001b 
+ 00021769  0x0000566d disable  0x0000002d 
+ 00021770  0x0000566e branch  0x000054bf 
+ 00021771  0x00005671 bpatchx  0x00000051 , 0x0000402a 
+ 00021772  0x00005672 fetch  0x00000001 , 0x0000449e 
+ 00021773  0x00005673 rtnne  0x00000001 
+ 00021774  0x00005674 fetch  0x00000001 , 0x00000000 
+ 00021775  0x00005675 increase  0x00000001 , 0x0000003f 
+ 00021776  0x00005676 store  0x00000001 , 0x00000000 
+ 00021777  0x00005677 arg  0x00000c03 , 0x00000002 
+ 00021778  0x00005678 fetch  0x00000001 , 0x0000449f 
+ 00021779  0x00005679 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021780  0x0000567a copy  0x00000011 , 0x0000003f 
+ 00021781  0x0000567b nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00021782  0x0000567c storet  0x00000002 , 0x000043dc 
+ 00021783  0x0000567d fetch  0x00000006 , 0x000044a0 
+ 00021784  0x0000567e istore  0x00000006 , 0x00000005 
+ 00021785  0x0000567f fetch  0x00000006 , 0x0000044f 
+ 00021786  0x00005680 istore  0x00000006 , 0x00000005 
+ 00021787  0x00005681 branch  0x000054bf 
+ 00021788  0x00005685 bpatchx  0x00000052 , 0x0000402a 
+ 00021789  0x00005686 arg  0x00000004 , 0x00000002 
+ 00021790  0x00005687 fetch  0x00000001 , 0x00004485 
+ 00021791  0x00005688 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021792  0x00005689 storet  0x00000001 , 0x000043dc 
+ 00021793  0x0000568a fetcht  0x00000001 , 0x0000438f 
+ 00021794  0x0000568b add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021795  0x0000568c store  0x00000001 , 0x000043dd 
+ 00021796  0x0000568d fetch  0x00000006 , 0x000044a0 
+ 00021797  0x0000568e store  0x00000006 , 0x000043de 
+ 00021798  0x0000568f arg  0x00004390 , 0x00000006 
+ 00021799  0x00005690 copy  0x00000002 , 0x00000039 
+ 00021800  0x00005691 call  0x00007ef4 
+ 00021801  0x00005692 call  0x000054c7 
+ 00021802  0x00005693 branch  0x00005706 
+ 00021803  0x00005696 bpatchx  0x00000053 , 0x0000402a 
+ 00021804  0x00005697 force  0xffffffff , 0x0000003f 
+ 00021805  0x00005698 setsect  0x00000002 , 0x00000001 
+ 00021806  0x00005699 store  0x00000005 , 0x0000046f 
+ 00021807  0x0000569a call  0x0000545b 
+ 00021808  0x0000569b force  0x00000004 , 0x00000039 
+ 00021809  0x0000569c arg  0x00000463 , 0x00000005 
+ 00021810  0x0000569d call  0x0000630d 
+ 00021811  0x0000569e fetch  0x00000002 , 0x0000449c 
+ 00021812  0x0000569f store  0x00000002 , 0x0000046d 
+ 00021813  0x000056a1 random  0x0000003f 
+ 00021814  0x000056a2 and_into  0x0000000f , 0x0000003f 
+ 00021815  0x000056a3 sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00021816  0x000056a4 branch  0x00005535 , 0x00000002 
+ 00021817  0x000056a5 store  0x00000001 , 0x00000458 
+ 00021818  0x000056a6 store  0x00000001 , 0x000006e6 
+ 00021819  0x000056a7 bpatchx  0x00000054 , 0x0000402a 
+ 00021820  0x000056a8 fetcht  0x00000002 , 0x00004367 
+ 00021821  0x000056a9 storet  0x00000002 , 0x00000441 
+ 00021822  0x000056aa copy  0x00000002 , 0x00000013 
+ 00021823  0x000056ab add  0x00000022 , 0x00000007 , 0x0000003f 
+ 00021824  0x000056ac idiv  0x00000013 
+ 00021825  0x000056ad call  0x00007f86 
+ 00021826  0x000056ae remainder  0x00000011 
+ 00021827  0x000056af isub  0x00000011 , 0x0000003f 
+ 00021828  0x000056b0 iadd  0x00000013 , 0x0000003f 
+ 00021829  0x000056b1 fetcht  0x00000002 , 0x00004365 
+ 00021830  0x000056b2 iadd  0x00000002 , 0x0000003f 
+ 00021831  0x000056b3 store  0x00000004 , 0x00000443 
+ 00021832  0x000056b4 isub  0x00000022 , 0x00000011 
+ 00021833  0x000056b5 increase  0xfffffffa , 0x00000011 
+ 00021834  0x000056b6 arg  0x00002205 , 0x00000012 
+ 00021835  0x000056b7 fetch  0x00000001 , 0x00004495 
+ 00021836  0x000056b8 nsetflag  0x00000034 , 0x00000006 , 0x00000012 
+ 00021837  0x000056b9 fetch  0x00000001 , 0x0000448e 
+ 00021838  0x000056ba nsetflag  0x00000034 , 0x00000007 , 0x00000012 
+ 00021839  0x000056bb copy  0x00000012 , 0x0000003f 
+ 00021840  0x000056bc store  0x00000002 , 0x000043dc 
+ 00021841  0x000056bd fetch  0x00000006 , 0x000044a0 
+ 00021842  0x000056be istore  0x00000006 , 0x00000005 
+ 00021843  0x000056bf fetch  0x00000006 , 0x0000044f 
+ 00021844  0x000056c0 istore  0x00000006 , 0x00000005 
+ 00021845  0x000056c1 fetch  0x00000004 , 0x00000463 
+ 00021846  0x000056c2 istore  0x00000004 , 0x00000005 
+ 00021847  0x000056c3 random  0x0000003f 
+ 00021848  0x000056c4 istore  0x00000002 , 0x00000005 
+ 00021849  0x000056c5 random  0x0000003f 
+ 00021850  0x000056c6 istore  0x00000001 , 0x00000005 
+ 00021851  0x000056c7 force  0x00000002 , 0x0000003f 
+ 00021852  0x000056c8 istore  0x00000001 , 0x00000005 
+ 00021853  0x000056c9 rshift2  0x00000011 , 0x0000003f 
+ 00021854  0x000056ca istore  0x00000002 , 0x00000005 
+ 00021855  0x000056cb rshift2  0x00000013 , 0x0000003f 
+ 00021856  0x000056cc istore  0x00000002 , 0x00000005 
+ 00021857  0x000056cd bpatchx  0x00000055 , 0x0000402a 
+ 00021858  0x000056ce setarg  0x00000000 
+ 00021859  0x000056cf istore  0x00000002 , 0x00000005 
+ 00021860  0x000056d0 fetch  0x00000002 , 0x0000449c 
+ 00021861  0x000056d1 istore  0x00000002 , 0x00000005 
+ 00021862  0x000056d2 fetch  0x00000005 , 0x0000046f 
+ 00021863  0x000056d3 istore  0x00000005 , 0x00000005 
+ 00021864  0x000056d4 fetch  0x00000001 , 0x00000458 
+ 00021865  0x000056d5 arg  0x000000a0 , 0x00000002 
+ 00021866  0x000056d6 ior  0x00000002 , 0x0000003f 
+ 00021867  0x000056d7 istore  0x00000001 , 0x00000005 
+ 00021868  0x000056d8 call  0x000054c7 
+ 00021869  0x000056d9 setarg  0x000043dc 
+ 00021870  0x000056da add  0x0000003f , 0x00000012 , 0x00000006 
+ 00021871  0x000056db ifetch  0x00000003 , 0x00000006 
+ 00021872  0x000056dc store  0x00000003 , 0x00000467 
+ 00021873  0x000056dd rtn 
+ 00021874  0x000056e0 bpatchx  0x00000056 , 0x0000402a 
+ 00021875  0x000056e1 disable  0x00000029 
+ 00021876  0x000056e2 branch  0x0000540c 
+ 00021877  0x000056e7 fetch  0x00000001 , 0x0000043f 
+ 00021878  0x000056e8 rtnbit0  0x00000005 
+ 00021879  0x000056e9 fetch  0x00000002 , 0x00000459 
+ 00021880  0x000056ea fetcht  0x00000002 , 0x0000045f 
+ 00021881  0x000056eb isub  0x00000002 , 0x0000003f 
+ 00021882  0x000056ec nrtn  0x00000002 
+ 00021883  0x000056ed store  0x00000002 , 0x00000a9a 
+ 00021884  0x000056ee bpatchx  0x00000057 , 0x0000402a 
+ 00021885  0x000056ef fetch  0x00000001 , 0x0000043f 
+ 00021886  0x000056f0 set0  0x00000005 , 0x0000003f 
+ 00021887  0x000056f1 set0  0x00000003 , 0x0000003f 
+ 00021888  0x000056f2 store  0x00000001 , 0x0000043f 
+ 00021889  0x000056f3 fetch  0x00000004 , 0x00000443 
+ 00021890  0x000056f4 fetcht  0x00000002 , 0x00000441 
+ 00021891  0x000056f5 storet  0x00000002 , 0x00000aa2 
+ 00021892  0x000056f6 isub  0x00000002 , 0x00000011 
+ 00021893  0x000056f7 bpatchx  0x00000058 , 0x0000402b 
+ 00021894  0x000056f8 fetch  0x00000001 , 0x000043d3 
+ 00021895  0x000056f9 store  0x00000001 , 0x0000046a 
+ 00021896  0x000056fa ifetcht  0x00000002 , 0x00000006 
+ 00021897  0x000056fb ifetch  0x00000002 , 0x00000006 
+ 00021898  0x000056fc lshift2  0x0000003f , 0x0000003f 
+ 00021899  0x000056fd store  0x00000002 , 0x00000441 
+ 00021900  0x000056fe lshift2  0x00000002 , 0x00000002 
+ 00021901  0x000056ff iadd  0x00000002 , 0x0000003f 
+ 00021902  0x00005700 ifetcht  0x00000004 , 0x00000006 
+ 00021903  0x00005701 storet  0x00000004 , 0x0000046b 
+ 00021904  0x00005702 iadd  0x00000011 , 0x0000003f 
+ 00021905  0x00005703 copy  0x0000003f , 0x00000014 
+ 00021906  0x00005704 fetch  0x00000002 , 0x00000441 
+ 00021907  0x00005705 fetcht  0x00000002 , 0x00000aa2 
+ 00021908  0x00005706 isub  0x00000002 , 0x0000003f 
+ 00021909  0x00005707 fetcht  0x00000002 , 0x00000a9a 
+ 00021910  0x00005708 imul32  0x00000002 , 0x0000003f 
+ 00021911  0x00005709 iadd  0x00000014 , 0x0000003f 
+ 00021912  0x0000570a store  0x00000004 , 0x00000443 
+ 00021913  0x0000570b call  0x00005713 
+ 00021914  0x0000570c fetch  0x00000002 , 0x0000046d 
+ 00021915  0x0000570d store  0x00000002 , 0x000044ba 
+ 00021916  0x0000570e rtn 
+ 00021917  0x00005712 bpatchx  0x00000059 , 0x0000402b 
+ 00021918  0x00005713 fetch  0x00000001 , 0x0000043f 
+ 00021919  0x00005714 rtnbit0  0x00000006 
+ 00021920  0x00005715 fetch  0x00000002 , 0x00000459 
+ 00021921  0x00005716 fetcht  0x00000002 , 0x0000045f 
+ 00021922  0x00005717 isub  0x00000002 , 0x0000003f 
+ 00021923  0x00005718 nrtn  0x00000002 
+ 00021924  0x00005719 fetch  0x00000001 , 0x0000043f 
+ 00021925  0x0000571a set0  0x00000006 , 0x0000003f 
+ 00021926  0x0000571b store  0x00000001 , 0x0000043f 
+ 00021927  0x0000571c fetch  0x00000005 , 0x000043ce 
+ 00021928  0x0000571d store  0x00000005 , 0x0000046f 
+ 00021929  0x0000571e branch  0x0000545b 
+ 00021930  0x00005722 bpatchx  0x0000005a , 0x0000402b 
+ 00021931  0x00005723 call  0x000056ed 
+ 00021932  0x00005724 call  0x000055c0 
+ 00021933  0x00005725 fetch  0x00000001 , 0x000002d9 
+ 00021934  0x00005726 isolate1  0x00000004 , 0x0000003f 
+ 00021935  0x00005727 setflag  0x00000001 , 0x0000002a , 0x00000000 
+ 00021936  0x00005728 rshift  0x0000003f , 0x0000003f 
+ 00021937  0x00005729 ixor  0x00000002 , 0x0000003f 
+ 00021938  0x0000572a isolate1  0x00000002 , 0x0000003f 
+ 00021939  0x0000572b setflag  0x00000001 , 0x0000000f , 0x00000000 
+ 00021940  0x0000572c rtnmark1  0x0000000f 
+ 00021941  0x0000572d fetch  0x00000001 , 0x000002da 
+ 00021942  0x0000572e branch  0x000055bc , 0x00000034 
+ 00021943  0x0000572f fetch  0x00000001 , 0x0000043f 
+ 00021944  0x00005730 bbit0  0x00000004 , 0x000055bc 
+ 00021945  0x00005731 call  0x0000748d 
+ 00021946  0x00005732 call  0x000073fb 
+ 00021947  0x00005733 nrtn  0x00000034 
+ 00021948  0x00005735 fetcht  0x00000001 , 0x00000456 
+ 00021949  0x00005736 setflip  0x00000002 , 0x00000002 
+ 00021950  0x00005737 storet  0x00000001 , 0x00000456 
+ 00021951  0x00005738 rtn 
+ 00021952  0x0000573c bpatchx  0x0000005b , 0x0000402b 
+ 00021953  0x0000573d fetcht  0x00000001 , 0x00000456 
+ 00021954  0x0000573e isolate0  0x00000005 , 0x00000002 
+ 00021955  0x0000573f rtn  0x00000001 
+ 00021956  0x00005740 fetch  0x00000001 , 0x000002d9 
+ 00021957  0x00005741 lshift  0x0000003f , 0x0000003f 
+ 00021958  0x00005742 ixor  0x00000002 , 0x0000003f 
+ 00021959  0x00005743 rtnbit0  0x00000003 
+ 00021960  0x00005744 set0  0x00000005 , 0x00000002 
+ 00021961  0x00005745 setflip  0x00000003 , 0x00000002 
+ 00021962  0x00005746 storet  0x00000001 , 0x00000456 
+ 00021963  0x00005747 compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00021964  0x00005748 nrtn  0x00000001 
+ 00021965  0x00005749 fetch  0x00000001 , 0x000043de 
+ 00021966  0x0000574a beq  0x00000005 , 0x000055d2 
+ 00021967  0x0000574b fetch  0x00000001 , 0x000044c5 
+ 00021968  0x0000574c beq  0x00000002 , 0x000055d6 
+ 00021969  0x0000574d rtn 
+ 00021970  0x00005751 fetch  0x00000001 , 0x0000043f 
+ 00021971  0x00005752 set1  0x00000004 , 0x0000003f 
+ 00021972  0x00005753 store  0x00000001 , 0x0000043f 
+ 00021973  0x00005754 rtn 
+ 00021974  0x00005757 bpatchx  0x0000005c , 0x0000402b 
+ 00021975  0x00005758 jam  0x00000000 , 0x000044c5 
+ 00021976  0x00005759 arg  0x00000000 , 0x0000003f 
+ 00021977  0x0000575a store  0x00000004 , 0x0000440d 
+ 00021978  0x0000575b store  0x00000005 , 0x00004403 
+ 00021979  0x0000575c set1  0x00000027 , 0x0000003f 
+ 00021980  0x0000575d store  0x00000005 , 0x00004408 
+ 00021981  0x0000575e fetch  0x00000001 , 0x0000043f 
+ 00021982  0x0000575f set0  0x00000004 , 0x0000003f 
+ 00021983  0x00005760 store  0x00000001 , 0x0000043f 
+ 00021984  0x00005761 rtn 
+ 00021985  0x00005765 bpatchx  0x0000005d , 0x0000402b 
+ 00021986  0x00005766 call  0x00005422 
+ 00021987  0x00005767 call  0x00005485 
+ 00021988  0x00005768 fetch  0x00000001 , 0x00000001 
+ 00021989  0x00005769 increase  0x00000001 , 0x0000003f 
+ 00021990  0x0000576a store  0x00000001 , 0x00000001 
+ 00021991  0x0000576b rtn 
+ 00021992  0x0000576f bpatchx  0x0000005e , 0x0000402b 
+ 00021993  0x00005770 fetch  0x00000001 , 0x00004369 
+ 00021994  0x00005771 rtnne  0x00000001 
+ 00021995  0x00005772 arg  0x00000002 , 0x00000007 
+ 00021996  0x00005773 call  0x00007f16 
+ 00021997  0x00005774 nrtn  0x00000034 
+ 00021998  0x00005775 fetch  0x00000002 , 0x0000436a 
+ 00021999  0x00005776 fetcht  0x00000002 , 0x0000436c 
+ 00022000  0x00005777 isub  0x00000002 , 0x0000003f 
+ 00022001  0x00005778 arg  0x00000002 , 0x00000007 
+ 00022002  0x00005779 call  0x00007f08 
+ 00022003  0x0000577a disable  0x00000029 
+ 00022004  0x0000577b call  0x00005572 
+ 00022005  0x0000577c call  0x000055e1 
+ 00022006  0x0000577d nrtn  0x0000002d 
+ 00022007  0x0000577e bpatchx  0x0000005f , 0x0000402b 
+ 00022008  0x0000577f fetch  0x00000006 , 0x000002db 
+ 00022009  0x00005780 store  0x00000006 , 0x0000044f 
+ 00022010  0x00005783 fetch  0x00000001 , 0x00000002 
+ 00022011  0x00005784 increase  0x00000001 , 0x0000003f 
+ 00022012  0x00005785 store  0x00000001 , 0x00000002 
+ 00022013  0x00005786 call  0x00005608 
+ 00022014  0x00005787 rtn  0x00000029 
+ 00022015  0x00005788 call  0x0000550b 
+ 00022016  0x00005789 nrtn  0x0000002d 
+ 00022017  0x0000578a bpatchx  0x00000060 , 0x0000402c 
+ 00022018  0x0000578b fetch  0x00000001 , 0x00000004 
+ 00022019  0x0000578c increase  0x00000001 , 0x0000003f 
+ 00022020  0x0000578d store  0x00000001 , 0x00000004 
+ 00022021  0x0000578e fetch  0x00000009 , 0x000002e1 
+ 00022022  0x0000578f store  0x00000009 , 0x00000101 
+ 00022023  0x00005790 rtn 
+ 00022024  0x00005793 bpatchx  0x00000061 , 0x0000402c 
+ 00022025  0x00005794 fetch  0x00000001 , 0x0000049b 
+ 00022026  0x00005795 rtnne  0x0000001b 
+ 00022027  0x00005796 fetch  0x00000006 , 0x0000044f 
+ 00022028  0x00005797 fetcht  0x00000006 , 0x0000448f 
+ 00022029  0x00005798 isub  0x00000002 , 0x0000003e 
+ 00022030  0x00005799 nrtn  0x00000005 
+ 00022031  0x0000579a call  0x0000223b 
+ 00022032  0x0000579b nrtn  0x00000005 
+ 00022033  0x0000579c call  0x0000552b 
+ 00022034  0x0000579d call  0x00005340 
+ 00022035  0x0000579e bpatchx  0x00000062 , 0x0000402c 
+ 00022036  0x0000579f jam  0x00000000 , 0x000041ce 
+ 00022037  0x000057a0 jam  0x00000000 , 0x00000476 
+ 00022038  0x000057a1 jam  0x00000000 , 0x00004369 
+ 00022039  0x000057a2 jam  0x00000000 , 0x0000049b 
+ 00022040  0x000057a3 branch  0x00002223 
+ 00022041  0x000057a6 arg  0x00000001 , 0x00000011 
+ 00022042  0x000057a7 fetch  0x00000001 , 0x000002d9 
+ 00022043  0x000057a8 rtnbit1  0x00000006 
+ 00022044  0x000057a9 arg  0x00000000 , 0x00000011 
+ 00022045  0x000057aa rtn 
+ 00022046  0x000057af bpatchx  0x00000063 , 0x0000402c 
+ 00022047  0x000057b0 fetch  0x00000001 , 0x00000456 
+ 00022048  0x000057b1 rtnbit1  0x00000005 
+ 00022049  0x000057b2 call  0x00005642 
+ 00022050  0x000057b3 call  0x00005873 
+ 00022051  0x000057b4 branch  0x00005664 , 0x00000034 
+ 00022052  0x000057b5 ifetch  0x00000001 , 0x00000006 
+ 00022053  0x000057b6 ifetcht  0x00000001 , 0x00000006 
+ 00022054  0x000057b7 copy  0x00000002 , 0x00000011 
+ 00022055  0x000057b8 isub  0x00000011 , 0x0000003f 
+ 00022056  0x000057b9 arg  0x0000001b , 0x00000002 
+ 00022057  0x000057ba call  0x00007fdd 
+ 00022058  0x000057bb copy  0x0000003f , 0x00000002 
+ 00022059  0x000057bc ifetch  0x00000001 , 0x00000006 
+ 00022060  0x000057bd copy  0x0000003f , 0x00000001 
+ 00022061  0x000057be copy  0x00000011 , 0x0000003f 
+ 00022062  0x000057bf iadd  0x00000006 , 0x00000006 
+ 00022063  0x000057c0 arg  0x000043de , 0x00000005 
+ 00022064  0x000057c1 copy  0x00000002 , 0x00000039 
+ 00022065  0x000057c2 call  0x00007f01 
+ 00022066  0x000057c3 call  0x00005654 
+ 00022067  0x000057c4 call  0x00005666 
+ 00022068  0x000057c6 call  0x00005873 
+ 00022069  0x000057c7 ifetch  0x00000001 , 0x00000006 
+ 00022070  0x000057c8 copy  0x0000003f , 0x00000011 
+ 00022071  0x000057c9 copy  0x00000006 , 0x00000013 
+ 00022072  0x000057ca ifetcht  0x00000001 , 0x00000006 
+ 00022073  0x000057cb copy  0x00000002 , 0x00000012 
+ 00022074  0x000057cc isub  0x00000012 , 0x0000003f 
+ 00022075  0x000057cd arg  0x0000001b , 0x00000002 
+ 00022076  0x000057ce call  0x00007fdd 
+ 00022077  0x000057cf iadd  0x00000012 , 0x0000003f 
+ 00022078  0x000057d0 istore  0x00000001 , 0x00000013 
+ 00022079  0x000057d1 isub  0x00000011 , 0x0000003e 
+ 00022080  0x000057d2 nrtn  0x00000005 
+ 00022081  0x000057d3 branch  0x00005896 
+ 00022082  0x000057d7 call  0x00005649 
+ 00022083  0x000057d8 rtnmark1  0x00000029 
+ 00022084  0x000057d9 fetch  0x00000001 , 0x000044e9 
+ 00022085  0x000057da bbit0  0x00000002 , 0x00005652 
+ 00022086  0x000057db call  0x00005876 
+ 00022087  0x000057dc branch  0x00005652 , 0x00000034 
+ 00022088  0x000057dd branch  0x00005650 
+ 00022089  0x000057e1 call  0x00005873 
+ 00022090  0x000057e2 branch  0x00005652 , 0x00000034 
+ 00022091  0x000057e3 ifetch  0x00000001 , 0x00000006 
+ 00022092  0x000057e4 ifetcht  0x00000001 , 0x00000006 
+ 00022093  0x000057e5 isub  0x00000002 , 0x0000003f 
+ 00022094  0x000057e6 sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00022095  0x000057e7 branch  0x00005652 , 0x00000002 
+ 00022096  0x000057e9 set1  0x00000029 , 0x00000000 
+ 00022097  0x000057ea rtn 
+ 00022098  0x000057ed set0  0x00000029 , 0x00000000 
+ 00022099  0x000057ee rtn 
+ 00022100  0x000057f1 copy  0x00000011 , 0x0000003f 
+ 00022101  0x000057f2 rtn  0x00000034 
+ 00022102  0x000057f3 arg  0x00000001 , 0x00000001 
+ 00022103  0x000057f4 rtn 
+ 00022104  0x000057f8 bpatchx  0x00000064 , 0x0000402c 
+ 00022105  0x000057f9 increase  0x00000001 , 0x00000002 
+ 00022106  0x000057fa call  0x0000576a 
+ 00022107  0x000057fb increase  0xfffffffe , 0x00000006 
+ 00022108  0x000057fc ifetch  0x00000002 , 0x00000006 
+ 00022109  0x000057fd arg  0x00002902 , 0x00000002 
+ 00022110  0x000057fe isub  0x00000002 , 0x0000003e 
+ 00022111  0x000057ff nrtn  0x00000005 
+ 00022112  0x00005800 increase  0x00000001 , 0x00000006 
+ 00022113  0x00005801 copy  0x00000006 , 0x00000011 
+ 00022114  0x00005802 ifetch  0x00000001 , 0x00000006 
+ 00022115  0x00005803 rtn 
+ 00022116  0x00005807 force  0x00000000 , 0x00000002 
+ 00022117  0x00005808 force  0x00000001 , 0x00000001 
+ 00022118  0x0000580b bpatchx  0x00000065 , 0x0000402c 
+ 00022119  0x0000580c storet  0x00000001 , 0x000043dd 
+ 00022120  0x0000580d fetcht  0x00000001 , 0x00000456 
+ 00022121  0x0000580e set1  0x00000005 , 0x00000002 
+ 00022122  0x0000580f and  0x00000002 , 0x000000fc , 0x0000003f 
+ 00022123  0x00005810 ior  0x00000001 , 0x0000003f 
+ 00022124  0x00005811 store  0x00000001 , 0x00000456 
+ 00022125  0x00005812 and_into  0x0000001f , 0x0000003f 
+ 00022126  0x00005813 isolate1  0x00000029 , 0x00000000 
+ 00022127  0x00005814 setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00022128  0x00005815 store  0x00000001 , 0x000043dc 
+ 00022129  0x00005817 fetch  0x00000001 , 0x000043dc 
+ 00022130  0x00005818 compare  0x00000001 , 0x00000001 , 0x00000003 
+ 00022131  0x00005819 nbranch  0x00005676 , 0x00000001 
+ 00022132  0x0000581a fetch  0x00000001 , 0x000043dd 
+ 00022133  0x0000581b rtn  0x00000034 
+ 00022134  0x0000581d fetch  0x00000001 , 0x0000043f 
+ 00022135  0x0000581e rtnbit0  0x00000004 
+ 00022136  0x0000581f call  0x0000748d 
+ 00022137  0x00005820 branch  0x000073e3 
+ 00022138  0x00005824 arg  0x00000000 , 0x00000007 
+ 00022139  0x00005825 branch  0x00002c32 
+ 00022140  0x00005828 arg  0x00000000 , 0x00000007 
+ 00022141  0x00005829 branch  0x00002c36 
+ 00022142  0x0000582d bpatchx  0x00000066 , 0x0000402c 
+ 00022143  0x0000582e rtnmark1  0x0000000f 
+ 00022144  0x0000582f call  0x00005890 
+ 00022145  0x00005830 nrtn  0x00000034 
+ 00022146  0x00005831 fetch  0x00000001 , 0x000002d9 
+ 00022147  0x00005832 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00022148  0x00005833 store  0x00000001 , 0x0000450c 
+ 00022149  0x00005834 ifetch  0x00000001 , 0x00000006 
+ 00022150  0x00005835 and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00022151  0x00005836 store  0x00000001 , 0x0000450b 
+ 00022152  0x00005837 rtn  0x00000034 
+ 00022153  0x00005838 copy  0x00000006 , 0x0000003f 
+ 00022154  0x00005839 store  0x00000002 , 0x0000450d 
+ 00022155  0x0000583a fetch  0x00000001 , 0x0000450c 
+ 00022156  0x0000583b beq  0x00000003 , 0x00005c64 
+ 00022157  0x0000583d call  0x0000569a 
+ 00022158  0x0000583e nbranch  0x0000567a , 0x00000028 
+ 00022159  0x0000583f call  0x0000567c 
+ 00022160  0x00005840 fetch  0x00000002 , 0x0000450d 
+ 00022161  0x00005841 copy  0x0000003f , 0x00000006 
+ 00022162  0x00005842 ifetch  0x00000002 , 0x00000006 
+ 00022163  0x00005843 store  0x00000002 , 0x000044fc 
+ 00022164  0x00005844 bpatchx  0x00000067 , 0x0000402c 
+ 00022165  0x00005845 ifetch  0x00000002 , 0x00000006 
+ 00022166  0x00005846 beq  0x00000004 , 0x000058ab 
+ 00022167  0x00005847 beq  0x00000006 , 0x00005af4 
+ 00022168  0x00005848 beq  0x00000005 , 0x00005ab6 
+ 00022169  0x00005849 rtn 
+ 00022170  0x0000584d fetch  0x00000001 , 0x0000450c 
+ 00022171  0x0000584e beq  0x00000002 , 0x000056a9 
+ 00022172  0x0000584f beq  0x00000001 , 0x000056c1 
+ 00022173  0x00005850 rtn 
+ 00022174  0x00005856 call  0x00007fe7 
+ 00022175  0x00005857 arg  0x00000004 , 0x00000002 
+ 00022176  0x00005858 isub  0x0000003f , 0x0000003e 
+ 00022177  0x00005859 rtn  0x00000005 
+ 00022178  0x0000585a arg  0x00000005 , 0x00000002 
+ 00022179  0x0000585b isub  0x0000003f , 0x0000003e 
+ 00022180  0x0000585c rtn  0x00000005 
+ 00022181  0x0000585d arg  0x00000006 , 0x00000002 
+ 00022182  0x0000585e isub  0x0000003f , 0x0000003e 
+ 00022183  0x0000585f rtn  0x00000005 
+ 00022184  0x00005860 branch  0x00007fe9 
+ 00022185  0x00005864 fetch  0x00000002 , 0x0000450d 
+ 00022186  0x00005865 copy  0x0000003f , 0x00000006 
+ 00022187  0x00005866 ifetch  0x00000002 , 0x00000006 
+ 00022188  0x00005867 store  0x00000002 , 0x000044fc 
+ 00022189  0x00005868 ifetch  0x00000002 , 0x00000006 
+ 00022190  0x00005869 call  0x0000569e 
+ 00022191  0x0000586a nrtn  0x00000028 
+ 00022192  0x0000586b fetcht  0x00000001 , 0x0000450b 
+ 00022193  0x0000586c storet  0x00000001 , 0x000044fe 
+ 00022194  0x0000586d fetch  0x00000002 , 0x000044fc 
+ 00022195  0x0000586e increase  0x00000004 , 0x0000003f 
+ 00022196  0x0000586f isub  0x00000002 , 0x0000003e 
+ 00022197  0x00005870 branch  0x00007fe7 , 0x00000005 
+ 00022198  0x00005871 fetch  0x00000001 , 0x0000450b 
+ 00022199  0x00005872 copy  0x0000003f , 0x00000039 
+ 00022200  0x00005873 arg  0x00000311 , 0x00000005 
+ 00022201  0x00005874 fetch  0x00000002 , 0x0000450d 
+ 00022202  0x00005875 copy  0x0000003f , 0x00000006 
+ 00022203  0x00005876 call  0x00007f01 
+ 00022204  0x00005877 branch  0x00007fe9 
+ 00022205  0x0000587d call  0x00007fe7 
+ 00022206  0x0000587e fetch  0x00000001 , 0x000044fe 
+ 00022207  0x0000587f nrtn  0x00000034 
+ 00022208  0x00005880 branch  0x00007fe9 
+ 00022209  0x00005883 call  0x000056bd 
+ 00022210  0x00005884 nrtn  0x00000028 
+ 00022211  0x00005885 fetch  0x00000001 , 0x000044fe 
+ 00022212  0x00005886 arg  0x00000311 , 0x00000005 
+ 00022213  0x00005887 iadd  0x00000005 , 0x00000011 
+ 00022214  0x00005888 fetcht  0x00000001 , 0x0000450b 
+ 00022215  0x00005889 iadd  0x00000002 , 0x0000003f 
+ 00022216  0x0000588a store  0x00000001 , 0x000044fe 
+ 00022217  0x0000588b fetch  0x00000001 , 0x0000450b 
+ 00022218  0x0000588c copy  0x0000003f , 0x00000039 
+ 00022219  0x0000588d copy  0x00000011 , 0x00000005 
+ 00022220  0x0000588e fetch  0x00000002 , 0x0000450d 
+ 00022221  0x0000588f copy  0x0000003f , 0x00000006 
+ 00022222  0x00005890 call  0x00007ef4 
+ 00022223  0x00005891 setarg  0x00000311 
+ 00022224  0x00005892 store  0x00000002 , 0x0000450d 
+ 00022225  0x00005893 fetch  0x00000002 , 0x000044fc 
+ 00022226  0x00005894 increase  0x00000004 , 0x0000003f 
+ 00022227  0x00005895 fetcht  0x00000001 , 0x000044fe 
+ 00022228  0x00005896 isub  0x00000002 , 0x0000003e 
+ 00022229  0x00005897 branch  0x00007fe7 , 0x00000005 
+ 00022230  0x00005898 branch  0x00007fe9 
+ 00022231  0x0000589f call  0x00007ea5 
+ 00022232  0x000058a0 arg  0x0000445e , 0x00000005 
+ 00022233  0x000058a2 fetch  0x00000002 , 0x000044fc 
+ 00022234  0x000058a3 increase  0xfffffffb , 0x0000003f 
+ 00022235  0x000058a5 istore  0x00000001 , 0x00000005 
+ 00022236  0x000058a6 copy  0x0000003f , 0x00000039 
+ 00022237  0x000058a7 call  0x00007e9f 
+ 00022238  0x000058a8 branch  0x00007ef4 
+ 00022239  0x000058ab call  0x00007ea5 
+ 00022240  0x000058ac arg  0x00004471 , 0x00000005 
+ 00022241  0x000058ad branch  0x000056d9 
+ 00022242  0x000058b2 fetch  0x00000002 , 0x000041f9 
+ 00022243  0x000058b3 branch  0x00007f9c 
+ 00022244  0x000058b6 fetcht  0x00000004 , 0x0000045b 
+ 00022245  0x000058b7 call  0x00002a7b 
+ 00022246  0x000058b8 isub  0x00000002 , 0x0000000b 
+ 00022247  0x000058b9 deposit  0x0000000b 
+ 00022248  0x000058ba fetcht  0x00000002 , 0x0000046d 
+ 00022249  0x000058bb lshift4  0x00000002 , 0x00000002 
+ 00022250  0x000058bc lshift  0x00000002 , 0x00000002 
+ 00022251  0x000058bd isub  0x00000002 , 0x0000003f 
+ 00022252  0x000058be rtn 
+ 00022253  0x000058c1 call  0x00002a7b 
+ 00022254  0x000058c2 store  0x00000004 , 0x0000045b 
+ 00022255  0x000058c3 rtn 
+ 00022256  0x000058c7 jam  0x00000024 , 0x00000016 
+ 00022257  0x000058c8 jam  0x00000000 , 0x00000ac2 
+ 00022258  0x000058ca bpatchx  0x00000068 , 0x0000402d 
+ 00022259  0x000058cb fetch  0x00000001 , 0x0000436e 
+ 00022260  0x000058cc rtn  0x00000034 
+ 00022261  0x000058cd arg  0x00000000 , 0x00000007 
+ 00022262  0x000058ce call  0x00007f16 
+ 00022263  0x000058cf nrtn  0x00000034 
+ 00022264  0x000058d0 bpatchx  0x00000069 , 0x0000402d 
+ 00022265  0x000058d2 disable  0x00000029 
+ 00022266  0x000058d3 enable  0x00000010 
+ 00022267  0x000058d4 call  0x00005572 
+ 00022268  0x000058d5 call  0x00005422 
+ 00022269  0x000058d6 call  0x000054e9 
+ 00022270  0x000058d7 nbranch  0x00005706 , 0x0000002d 
+ 00022271  0x000058d8 fetch  0x00000001 , 0x00000003 
+ 00022272  0x000058d9 increase  0x00000001 , 0x0000003f 
+ 00022273  0x000058da store  0x00000001 , 0x00000003 
+ 00022274  0x000058db fetch  0x00000001 , 0x000002d9 
+ 00022275  0x000058dc and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00022276  0x000058dd beq  0x00000003 , 0x0000551c 
+ 00022277  0x000058de beq  0x00000005 , 0x00005728 
+ 00022278  0x000058e0 bpatchx  0x0000006a , 0x0000402d 
+ 00022279  0x000058e1 random  0x0000003f 
+ 00022280  0x000058e2 arg  0x000001ff , 0x00000002 
+ 00022281  0x000058e3 iand  0x00000002 , 0x0000003f 
+ 00022282  0x000058e4 add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00022283  0x000058e5 call  0x00003cbe 
+ 00022284  0x000058e6 fetch  0x00000001 , 0x00000ac2 
+ 00022285  0x000058e7 fetcht  0x00000001 , 0x0000448d 
+ 00022286  0x000058e8 isub  0x00000002 , 0x0000003e 
+ 00022287  0x000058e9 nbranch  0x000056f2 , 0x00000005 
+ 00022288  0x000058ea arg  0x00000000 , 0x00000007 
+ 00022289  0x000058eb fetch  0x00000002 , 0x00004482 
+ 00022290  0x000058ec branch  0x00007f08 
+ 00022291  0x000058f0 bpatchx  0x0000006b , 0x0000402d 
+ 00022292  0x000058f1 fetch  0x00000001 , 0x00000476 
+ 00022293  0x000058f2 call  0x000053fc 
+ 00022294  0x000058f3 fetch  0x00000002 , 0x00000441 
+ 00022295  0x000058f4 imul32  0x00000002 , 0x0000003f 
+ 00022296  0x000058f5 arg  0x00000177 , 0x00000002 
+ 00022297  0x000058f6 imul32  0x00000002 , 0x0000003f 
+ 00022298  0x000058f7 arg  0x000186a0 , 0x00000002 
+ 00022299  0x000058f8 idiv  0x00000002 
+ 00022300  0x000058f9 fetch  0x00000001 , 0x0000046a 
+ 00022301  0x000058fa arg  0x00004e20 , 0x00000002 
+ 00022302  0x000058fb imul32  0x00000002 , 0x0000003f 
+ 00022303  0x000058fc iadd  0x00000002 , 0x0000003f 
+ 00022304  0x000058fd store  0x00000004 , 0x000044e5 
+ 00022305  0x000058fe bpatchx  0x0000006c , 0x0000402d 
+ 00022306  0x000058ff fetch  0x00000002 , 0x000040c1 
+ 00022307  0x00005900 call  0x00007f86 
+ 00022308  0x00005901 quotient  0x00000002 
+ 00022309  0x00005902 iadd  0x00000002 , 0x0000003f 
+ 00022310  0x00005903 store  0x00000002 , 0x0000044d 
+ 00022311  0x00005904 rtn 
+ 00022312  0x00005907 bpatchx  0x0000006d , 0x0000402d 
+ 00022313  0x00005908 fetch  0x00000006 , 0x000002e1 
+ 00022314  0x00005909 fetcht  0x00000006 , 0x000044a0 
+ 00022315  0x0000590a isub  0x00000002 , 0x0000003e 
+ 00022316  0x0000590b nrtn  0x00000005 
+ 00022317  0x0000590c call  0x00005619 
+ 00022318  0x0000590d copy  0x00000011 , 0x0000003f 
+ 00022319  0x0000590e store  0x00000001 , 0x0000448e 
+ 00022320  0x0000590f fetch  0x00000007 , 0x000002ee 
+ 00022321  0x00005910 store  0x00000007 , 0x00000101 
+ 00022322  0x00005911 ifetch  0x00000008 , 0x00000006 
+ 00022323  0x00005912 istore  0x00000008 , 0x00000005 
+ 00022324  0x00005913 fetch  0x00000006 , 0x000002db 
+ 00022325  0x00005914 store  0x00000006 , 0x0000044f 
+ 00022326  0x00005915 increase  0x00000006 , 0x00000006 
+ 00022327  0x00005916 ifetch  0x00000008 , 0x00000006 
+ 00022328  0x00005917 store  0x00000008 , 0x00000463 
+ 00022329  0x00005918 ifetcht  0x00000002 , 0x00000006 
+ 00022330  0x00005919 bpatchx  0x0000006e , 0x0000402d 
+ 00022331  0x0000591a lshift2  0x00000002 , 0x00000002 
+ 00022332  0x0000591b ifetch  0x00000002 , 0x00000006 
+ 00022333  0x0000591c lshift2  0x0000003f , 0x0000003f 
+ 00022334  0x0000591d store  0x00000002 , 0x00000441 
+ 00022335  0x0000591e store  0x00000004 , 0x00000443 
+ 00022336  0x0000591f isub  0x00000002 , 0x0000003f 
+ 00022337  0x00005920 add  0x0000003f , 0xfffffffe , 0x00000028 
+ 00022338  0x00005921 ifetch  0x00000009 , 0x00000006 
+ 00022339  0x00005922 store  0x00000009 , 0x0000046b 
+ 00022340  0x00005923 bpatchx  0x0000006f , 0x0000402d 
+ 00022341  0x00005924 ifetch  0x00000001 , 0x00000006 
+ 00022342  0x00005925 rshift4  0x0000003f , 0x00000002 
+ 00022343  0x00005926 rshift  0x00000002 , 0x00000002 
+ 00022344  0x00005927 storet  0x00000001 , 0x00000476 
+ 00022345  0x00005928 and_into  0x0000001f , 0x0000003f 
+ 00022346  0x00005929 store  0x00000001 , 0x00000458 
+ 00022347  0x0000592a call  0x00005713 
+ 00022348  0x0000592b call  0x0000545b 
+ 00022349  0x0000592c call  0x0000534c 
+ 00022350  0x0000592d call  0x0000223b 
+ 00022351  0x0000592e nrtn  0x00000005 
+ 00022352  0x0000592f bpatchx  0x00000070 , 0x0000402e 
+ 00022353  0x00005930 call  0x00002841 
+ 00022354  0x00005931 call  0x00005ad3 
+ 00022355  0x00005932 jam  0x00000014 , 0x00000a99 
+ 00022356  0x00005933 call  0x00007d86 
+ 00022357  0x00005934 branch  0x00002223 
+ 00022358  0x00005938 bpatchx  0x00000071 , 0x0000402e 
+ 00022359  0x00005939 fetch  0x00000002 , 0x0000445a 
+ 00022360  0x0000593a iforce  0x00000012 
+ 00022361  0x0000593b fetch  0x00000002 , 0x0000445c 
+ 00022362  0x0000593c iforce  0x00000013 
+ 00022363  0x0000593d fetch  0x00000002 , 0x000044bc 
+ 00022364  0x0000593e iforce  0x00000006 
+ 00022365  0x0000593f enable  0x00000028 
+ 00022366  0x00005940 rtn 
+ 00022367  0x00005944 ifetch  0x00000002 , 0x00000006 
+ 00022368  0x00005945 rtn  0x00000034 
+ 00022369  0x00005946 isub  0x00000012 , 0x0000003e 
+ 00022370  0x00005947 nrtn  0x00000002 
+ 00022371  0x00005948 isub  0x00000013 , 0x0000003e 
+ 00022372  0x00005949 rtn  0x00000005 
+ 00022373  0x0000594a branch  0x00005768 , 0x00000002 
+ 00022374  0x0000594b force  0x00000001 , 0x0000003e 
+ 00022375  0x0000594c rtn 
+ 00022376  0x0000594e force  0x00000000 , 0x0000003f 
+ 00022377  0x0000594f rtn 
+ 00022378  0x00005954 call  0x0000576d 
+ 00022379  0x00005955 branch  0x00005779 , 0x00000005 
+ 00022380  0x00005956 rtn 
+ 00022381  0x00005959 bpatchx  0x00000072 , 0x0000402e 
+ 00022382  0x0000595a fetch  0x00000002 , 0x000044bc 
+ 00022383  0x0000595b iforce  0x00000006 
+ 00022384  0x0000595d ifetch  0x00000002 , 0x00000006 
+ 00022385  0x0000595e rtn  0x00000034 
+ 00022386  0x0000595f isub  0x00000002 , 0x0000003e 
+ 00022387  0x00005960 rtn  0x00000005 
+ 00022388  0x00005961 ifetch  0x00000001 , 0x00000006 
+ 00022389  0x00005962 iadd  0x00000006 , 0x00000006 
+ 00022390  0x00005963 ifetch  0x00000001 , 0x00000006 
+ 00022391  0x00005964 iadd  0x00000006 , 0x00000006 
+ 00022392  0x00005965 branch  0x00005770 
+ 00022393  0x00005967 ifetch  0x00000001 , 0x00000006 
+ 00022394  0x00005968 iadd  0x00000006 , 0x00000006 
+ 00022395  0x00005969 rtn 
+ 00022396  0x0000596e bpatchx  0x00000073 , 0x0000402e 
+ 00022397  0x0000596f fetch  0x00000002 , 0x000044bc 
+ 00022398  0x00005970 iforce  0x00000006 
+ 00022399  0x00005972 ifetch  0x00000002 , 0x00000006 
+ 00022400  0x00005973 rtn  0x00000034 
+ 00022401  0x00005974 ifetch  0x00000001 , 0x00000006 
+ 00022402  0x00005975 iadd  0x00000006 , 0x00000006 
+ 00022403  0x00005976 increase  0xfffffffe , 0x00000006 
+ 00022404  0x00005977 ifetch  0x00000002 , 0x00000006 
+ 00022405  0x00005978 isub  0x00000002 , 0x0000003e 
+ 00022406  0x00005979 rtn  0x00000005 
+ 00022407  0x0000597a ifetch  0x00000001 , 0x00000006 
+ 00022408  0x0000597b iadd  0x00000006 , 0x00000006 
+ 00022409  0x0000597c branch  0x0000577f 
+ 00022410  0x00005981 fetch  0x00000002 , 0x0000049c 
+ 00022411  0x00005982 branch  0x0000578e 
+ 00022412  0x00005985 bpatchx  0x00000074 , 0x0000402e 
+ 00022413  0x00005986 fetch  0x00000002 , 0x000044bc 
+ 00022414  0x00005988 iforce  0x00000006 
+ 00022415  0x00005989 copy  0x00000002 , 0x00000011 
+ 00022416  0x0000598b ifetch  0x00000002 , 0x00000006 
+ 00022417  0x0000598c branch  0x00005799 , 0x00000034 
+ 00022418  0x0000598d isub  0x00000011 , 0x0000003e 
+ 00022419  0x0000598e branch  0x0000579a , 0x00000005 
+ 00022420  0x0000598f ifetch  0x00000001 , 0x00000006 
+ 00022421  0x00005990 iadd  0x00000006 , 0x00000006 
+ 00022422  0x00005991 ifetch  0x00000001 , 0x00000006 
+ 00022423  0x00005992 iadd  0x00000006 , 0x00000006 
+ 00022424  0x00005993 branch  0x00005790 
+ 00022425  0x00005995 branch  0x00007fef 
+ 00022426  0x00005998 ifetch  0x00000001 , 0x00000006 
+ 00022427  0x00005999 store  0x00000001 , 0x000004a2 
+ 00022428  0x0000599a copy  0x0000003f , 0x00000039 
+ 00022429  0x0000599b arg  0x000004a3 , 0x00000005 
+ 00022430  0x0000599c call  0x00007ef4 
+ 00022431  0x0000599d ifetch  0x00000001 , 0x00000006 
+ 00022432  0x0000599e store  0x00000001 , 0x000004b3 
+ 00022433  0x0000599f call  0x00007ea5 
+ 00022434  0x000059a0 branch  0x00007ff1 
+ 00022435  0x000059a4 bpatchx  0x00000075 , 0x0000402e 
+ 00022436  0x000059a5 call  0x000057a6 
+ 00022437  0x000059a6 branch  0x000057b8 
+ 00022438  0x000059a9 arg  0x00002a00 , 0x00000002 
+ 00022439  0x000059aa call  0x0000577c 
+ 00022440  0x000059ab rtn  0x00000034 
+ 00022441  0x000059ac ifetch  0x00000001 , 0x00000006 
+ 00022442  0x000059ad copy  0x00000006 , 0x00000005 
+ 00022443  0x000059ae fetcht  0x00000001 , 0x000043af 
+ 00022444  0x000059af copy  0x00000002 , 0x00000039 
+ 00022445  0x000059b0 isub  0x00000002 , 0x0000003e 
+ 00022446  0x000059b1 nbranch  0x000057b5 , 0x00000002 
+ 00022447  0x000059b2 isub  0x00000002 , 0x00000002 
+ 00022448  0x000059b3 arg  0x000043b0 , 0x00000006 
+ 00022449  0x000059b4 call  0x00007f01 
+ 00022450  0x000059b5 copy  0x00000002 , 0x00000039 
+ 00022451  0x000059b6 ncall  0x000057f0 , 0x00000005 
+ 00022452  0x000059b7 rtn 
+ 00022453  0x000059b9 copy  0x0000003f , 0x00000039 
+ 00022454  0x000059ba arg  0x000043b0 , 0x00000006 
+ 00022455  0x000059bb branch  0x00007ef4 
+ 00022456  0x000059bf arg  0x0000438f , 0x00000013 
+ 00022457  0x000059c0 arg  0x00004370 , 0x00000011 
+ 00022458  0x000059c1 call  0x000057c5 
+ 00022459  0x000059c2 setarg  0x00000000 
+ 00022460  0x000059c3 setflag  0x00000028 , 0x00000000 , 0x0000003f 
+ 00022461  0x000059c4 store  0x00000001 , 0x00000a9a 
+ 00022462  0x000059c5 arg  0x000043af , 0x00000013 
+ 00022463  0x000059c6 arg  0x00004390 , 0x00000011 
+ 00022464  0x000059c7 call  0x000057c5 
+ 00022465  0x000059c8 rtn  0x00000028 
+ 00022466  0x000059c9 fetch  0x00000001 , 0x00000a9a 
+ 00022467  0x000059ca branch  0x00002a8c , 0x00000034 
+ 00022468  0x000059cb rtn 
+ 00022469  0x000059cf bpatchx  0x00000076 , 0x0000402e 
+ 00022470  0x000059d0 call  0x00007fe7 
+ 00022471  0x000059d1 call  0x00007eda 
+ 00022472  0x000059d2 arg  0x00000000 , 0x00000012 
+ 00022473  0x000059d3 arg  0x00000ac3 , 0x00000005 
+ 00022474  0x000059d4 call  0x000057df 
+ 00022475  0x000059d5 fetch  0x00000001 , 0x000043af 
+ 00022476  0x000059d6 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00022477  0x000059d7 iadd  0x00000012 , 0x00000011 
+ 00022478  0x000059d8 increase  0x00000002 , 0x00000011 
+ 00022479  0x000059d9 sub  0x00000011 , 0x0000001f , 0x0000003e 
+ 00022480  0x000059da nbranch  0x000057dd , 0x00000002 
+ 00022481  0x000059db istoret  0x00000001 , 0x00000005 
+ 00022482  0x000059dc arg  0x00000009 , 0x00000002 
+ 00022483  0x000059dd istoret  0x00000001 , 0x00000005 
+ 00022484  0x000059de iforce  0x00000039 
+ 00022485  0x000059df call  0x00007ef4 
+ 00022486  0x000059e0 copy  0x00000011 , 0x00000012 
+ 00022487  0x000059e2 deposit  0x00000012 
+ 00022488  0x000059e3 store  0x00000001 , 0x00000ac2 
+ 00022489  0x000059e4 arg  0x00000ac2 , 0x00000006 
+ 00022490  0x000059e5 setarg  0xffffffe0 
+ 00022491  0x000059e6 iadd  0x00000013 , 0x00000005 
+ 00022492  0x000059e7 branch  0x00007ebd 
+ 00022493  0x000059ea call  0x00007fe9 
+ 00022494  0x000059eb branch  0x000057d7 
+ 00022495  0x000059ee ifetch  0x00000001 , 0x00000011 
+ 00022496  0x000059ef rtn  0x00000034 
+ 00022497  0x000059f0 pincrease  0x00000001 
+ 00022498  0x000059f1 ifetcht  0x00000001 , 0x00000006 
+ 00022499  0x000059f2 sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00022500  0x000059f3 branch  0x000057ee , 0x00000005 
+ 00022501  0x000059f4 iadd  0x00000012 , 0x00000012 
+ 00022502  0x000059f5 copy  0x00000011 , 0x00000006 
+ 00022503  0x000059f6 iforce  0x00000039 
+ 00022504  0x000059f7 call  0x00007ef4 
+ 00022505  0x000059f8 copy  0x00000006 , 0x00000011 
+ 00022506  0x000059fa deposit  0x00000011 
+ 00022507  0x000059fb isub  0x00000013 , 0x0000003e 
+ 00022508  0x000059fc rtn  0x00000002 
+ 00022509  0x000059fd branch  0x000057df 
+ 00022510  0x00005a00 iadd  0x00000011 , 0x00000011 
+ 00022511  0x00005a01 branch  0x000057ea 
+ 00022512  0x00005a05 setarg  0x00000020 
+ 00022513  0x00005a06 istore  0x00000001 , 0x00000005 
+ 00022514  0x00005a07 loop  0x000057f0 
+ 00022515  0x00005a08 rtn 
+ 00022516  0x00005a0c bpatchx  0x00000077 , 0x0000402e 
+ 00022517  0x00005a0d disable  0x0000002b 
+ 00022518  0x00005a0e branch  0x000057f8 , 0x0000002e 
+ 00022519  0x00005a0f nbranch  0x00005806 , 0x0000002d 
+ 00022520  0x00005a11 call  0x00002bcb 
+ 00022521  0x00005a12 fetch  0x00000002 , 0x000040c1 
+ 00022522  0x00005a13 store  0x00000002 , 0x0000044d 
+ 00022523  0x00005a15 nbranch  0x00002bde , 0x0000002d 
+ 00022524  0x00005a16 bmark1  0x0000000f , 0x00002bde 
+ 00022525  0x00005a18 fetch  0x00000001 , 0x0000450b 
+ 00022526  0x00005a19 nbranch  0x00002bde , 0x00000034 
+ 00022527  0x00005a1a fetch  0x00000001 , 0x000043dd 
+ 00022528  0x00005a1b nbranch  0x00002bde , 0x00000034 
+ 00022529  0x00005a1d fetch  0x00000001 , 0x000044e9 
+ 00022530  0x00005a1e bbit1  0x00000005 , 0x00002bde 
+ 00022531  0x00005a20 fetch  0x00000001 , 0x0000043f 
+ 00022532  0x00005a21 bbit1  0x00000005 , 0x00002bde 
+ 00022533  0x00005a22 branch  0x00002bc0 
+ 00022534  0x00005a25 fetcht  0x00000002 , 0x000040c1 
+ 00022535  0x00005a26 rshift  0x00000002 , 0x00000002 
+ 00022536  0x00005a27 fetch  0x00000002 , 0x0000044d 
+ 00022537  0x00005a28 iadd  0x00000002 , 0x0000003f 
+ 00022538  0x00005a29 store  0x00000002 , 0x0000044d 
+ 00022539  0x00005a2a branch  0x00002bd6 
+ 00022540  0x00005a2e arg  0x00000000 , 0x00000007 
+ 00022541  0x00005a2f branch  0x00005824 
+ 00022542  0x00005a32 arg  0x00000000 , 0x00000007 
+ 00022543  0x00005a33 branch  0x00005828 
+ 00022544  0x00005a36 arg  0x00000001 , 0x00000007 
+ 00022545  0x00005a37 branch  0x00005824 
+ 00022546  0x00005a3a arg  0x00000001 , 0x00000007 
+ 00022547  0x00005a3b branch  0x00005828 
+ 00022548  0x00005a3e arg  0x00000002 , 0x00000007 
+ 00022549  0x00005a3f branch  0x00005824 
+ 00022550  0x00005a42 arg  0x00000002 , 0x00000007 
+ 00022551  0x00005a43 branch  0x00005828 
+ 00022552  0x00005a46 arg  0x00000003 , 0x00000007 
+ 00022553  0x00005a47 branch  0x00005824 
+ 00022554  0x00005a4a arg  0x00000003 , 0x00000007 
+ 00022555  0x00005a4b branch  0x00005828 
+ 00022556  0x00005a4e arg  0x00000004 , 0x00000007 
+ 00022557  0x00005a4f branch  0x00005824 
+ 00022558  0x00005a52 arg  0x00000004 , 0x00000007 
+ 00022559  0x00005a53 branch  0x00005828 
+ 00022560  0x00005a56 arg  0x00000005 , 0x00000007 
+ 00022561  0x00005a57 branch  0x00005824 
+ 00022562  0x00005a5a arg  0x00000005 , 0x00000007 
+ 00022563  0x00005a5b branch  0x00005828 
+ 00022564  0x00005a5f fetch  0x00000001 , 0x000044e9 
+ 00022565  0x00005a60 qset1  0x0000003f 
+ 00022566  0x00005a61 store  0x00000001 , 0x000044e9 
+ 00022567  0x00005a62 rtn 
+ 00022568  0x00005a65 fetch  0x00000001 , 0x000044e9 
+ 00022569  0x00005a66 qset0  0x0000003f 
+ 00022570  0x00005a67 store  0x00000001 , 0x000044e9 
+ 00022571  0x00005a68 rtn 
+ 00022572  0x00005a6b setarg  0x00112233 
+ 00022573  0x00005a6c store  0x00000003 , 0x000044ea 
+ 00022574  0x00005a6d setarg  0x00445566 
+ 00022575  0x00005a6e istore  0x00000003 , 0x00000005 
+ 00022576  0x00005a6f setarg  0x00778899 
+ 00022577  0x00005a70 istore  0x00000003 , 0x00000005 
+ 00022578  0x00005a71 setarg  0x00001122 
+ 00022579  0x00005a72 istore  0x00000003 , 0x00000005 
+ 00022580  0x00005a73 setarg  0x00334455 
+ 00022581  0x00005a74 istore  0x00000003 , 0x00000005 
+ 00022582  0x00005a75 setarg  0x00000066 
+ 00022583  0x00005a76 istore  0x00000001 , 0x00000005 
+ 00022584  0x00005a77 rtn 
+ 00022585  0x00005a7b setarg  0x01000302 
+ 00022586  0x00005a7c store  0x00000004 , 0x00004453 
+ 00022587  0x00005a7d setarg  0x00010010 
+ 00022588  0x00005a7e store  0x00000003 , 0x00004457 
+ 00022589  0x00005a7f jam  0x00000001 , 0x000044c6 
+ 00022590  0x00005a80 rtn 
+ 00022591  0x00005a85 arg  0x00000000 , 0x00000011 
+ 00022592  0x00005a86 arg  0x00000001 , 0x00000001 
+ 00022593  0x00005a87 branch  0x00005850 
+ 00022594  0x00005a8c arg  0x00000003 , 0x00000001 
+ 00022595  0x00005a8d call  0x00005850 
+ 00022596  0x00005a8e copy  0x00000012 , 0x0000003f 
+ 00022597  0x00005a8f istore  0x00000001 , 0x00000005 
+ 00022598  0x00005a90 rtn 
+ 00022599  0x00005a95 force  0x00000002 , 0x00000001 
+ 00022600  0x00005a96 increase  0x00000004 , 0x00000011 
+ 00022601  0x00005a97 call  0x00005850 
+ 00022602  0x00005a98 increase  0xfffffffc , 0x00000011 
+ 00022603  0x00005a99 copy  0x00000011 , 0x0000003f 
+ 00022604  0x00005a9a istore  0x00000002 , 0x00000005 
+ 00022605  0x00005a9b copy  0x00000012 , 0x0000003f 
+ 00022606  0x00005a9c istore  0x00000002 , 0x00000005 
+ 00022607  0x00005a9d rtn 
+ 00022608  0x00005aa2 sub  0x00000011 , 0x000000f0 , 0x0000003e 
+ 00022609  0x00005aa3 nbranch  0x00002a8c , 0x00000002 
+ 00022610  0x00005aa4 fetch  0x00000001 , 0x000044ff 
+ 00022611  0x00005aa5 arg  0x00000001 , 0x00000002 
+ 00022612  0x00005aa6 arg  0x00000004 , 0x00000039 
+ 00022613  0x00005aa8 iand  0x00000002 , 0x0000003e 
+ 00022614  0x00005aa9 branch  0x0000585a , 0x00000005 
+ 00022615  0x00005aaa lshift  0x00000002 , 0x00000002 
+ 00022616  0x00005aab loop  0x00005855 
+ 00022617  0x00005aac branch  0x00002a8c 
+ 00022618  0x00005aae ixor  0x00000002 , 0x0000003f 
+ 00022619  0x00005aaf store  0x00000001 , 0x000044ff 
+ 00022620  0x00005ab0 sub  0x00000039 , 0x00000004 , 0x0000003f 
+ 00022621  0x00005ab1 lshift4  0x0000003f , 0x0000003f 
+ 00022622  0x00005ab2 lshift4  0x0000003f , 0x0000003f 
+ 00022623  0x00005ab3 arg  0x00001800 , 0x00000002 
+ 00022624  0x00005ab4 iadd  0x00000002 , 0x00000002 
+ 00022625  0x00005ab6 arg  0x00000000 , 0x00000039 
+ 00022626  0x00005ab7 arg  0x00004500 , 0x00000006 
+ 00022627  0x00005ab9 ifetch  0x00000002 , 0x00000006 
+ 00022628  0x00005aba branch  0x00005869 , 0x00000034 
+ 00022629  0x00005abb copy  0x00000039 , 0x0000003f 
+ 00022630  0x00005abc increase  0x00000001 , 0x00000039 
+ 00022631  0x00005abd bne  0x00000004 , 0x00005863 
+ 00022632  0x00005abe branch  0x00002a8c 
+ 00022633  0x00005ac2 increase  0xfffffffe , 0x00000006 
+ 00022634  0x00005ac3 istoret  0x00000002 , 0x00000006 
+ 00022635  0x00005ac4 copy  0x00000002 , 0x00000005 
+ 00022636  0x00005ac5 copy  0x00000011 , 0x0000003f 
+ 00022637  0x00005ac6 istore  0x00000001 , 0x00000005 
+ 00022638  0x00005ac7 setarg  0x00000000 
+ 00022639  0x00005ac8 istore  0x00000001 , 0x00000005 
+ 00022640  0x00005ac9 copy  0x00000001 , 0x0000003f 
+ 00022641  0x00005aca istore  0x00000001 , 0x00000005 
+ 00022642  0x00005acb rtn 
+ 00022643  0x00005ad0 fetch  0x00000002 , 0x00004500 
+ 00022644  0x00005ad1 copy  0x0000003f , 0x00000006 
+ 00022645  0x00005ad2 rtn 
+ 00022646  0x00005ad5 fetch  0x00000002 , 0x00004502 
+ 00022647  0x00005ad6 copy  0x0000003f , 0x00000006 
+ 00022648  0x00005ad7 rtn 
+ 00022649  0x00005ada call  0x0000587c 
+ 00022650  0x00005adb copy  0x0000003f , 0x00000006 
+ 00022651  0x00005adc rtn 
+ 00022652  0x00005ade fetch  0x00000002 , 0x00004506 
+ 00022653  0x00005adf nrtn  0x00000034 
+ 00022654  0x00005ae0 fetch  0x00000002 , 0x00004504 
+ 00022655  0x00005ae1 nrtn  0x00000034 
+ 00022656  0x00005ae2 fetch  0x00000002 , 0x00004502 
+ 00022657  0x00005ae3 nrtn  0x00000034 
+ 00022658  0x00005ae4 fetch  0x00000002 , 0x00004500 
+ 00022659  0x00005ae5 rtn 
+ 00022660  0x00005ae8 call  0x00005873 
+ 00022661  0x00005ae9 increase  0x00000003 , 0x00000006 
+ 00022662  0x00005aea rtn 
+ 00022663  0x00005aed call  0x00005873 
+ 00022664  0x00005aee increase  0x00000007 , 0x00000006 
+ 00022665  0x00005aef rtn 
+ 00022666  0x00005af2 call  0x00005879 
+ 00022667  0x00005af3 increase  0x00000007 , 0x00000006 
+ 00022668  0x00005af4 rtn 
+ 00022669  0x00005af7 call  0x00005879 
+ 00022670  0x00005af8 increase  0x00000003 , 0x00000006 
+ 00022671  0x00005af9 rtn 
+ 00022672  0x00005afe fetch  0x00000002 , 0x00004506 
+ 00022673  0x00005aff rtn 
+ 00022674  0x00005b03 fetch  0x00000002 , 0x00004504 
+ 00022675  0x00005b04 rtn 
+ 00022676  0x00005b08 fetch  0x00000002 , 0x00004500 
+ 00022677  0x00005b09 rtn 
+ 00022678  0x00005b0d fetch  0x00000002 , 0x00004500 
+ 00022679  0x00005b0e arg  0x00001800 , 0x00000002 
+ 00022680  0x00005b0f isub  0x00000002 , 0x0000003f 
+ 00022681  0x00005b10 rshift4  0x0000003f , 0x0000003f 
+ 00022682  0x00005b11 rshift4  0x0000003f , 0x00000007 
+ 00022683  0x00005b12 fetch  0x00000001 , 0x000044ff 
+ 00022684  0x00005b13 qset0  0x0000003f 
+ 00022685  0x00005b14 store  0x00000001 , 0x000044ff 
+ 00022686  0x00005b15 arg  0x00000000 , 0x00000039 
+ 00022687  0x00005b17 lshift  0x00000039 , 0x0000003f 
+ 00022688  0x00005b18 arg  0x00004502 , 0x00000002 
+ 00022689  0x00005b19 iadd  0x00000002 , 0x00000002 
+ 00022690  0x00005b1a ifetch  0x00000002 , 0x00000002 
+ 00022691  0x00005b1b increase  0xfffffffe , 0x00000002 
+ 00022692  0x00005b1c istore  0x00000002 , 0x00000002 
+ 00022693  0x00005b1d copy  0x00000039 , 0x0000003f 
+ 00022694  0x00005b1e increase  0x00000001 , 0x00000039 
+ 00022695  0x00005b1f bne  0x00000003 , 0x0000589f 
+ 00022696  0x00005b20 setarg  0x00000000 
+ 00022697  0x00005b21 istore  0x00000002 , 0x00000002 
+ 00022698  0x00005b22 rtn 
+ 00022699  0x00005b29 ifetch  0x00000003 , 0x00000006 
+ 00022700  0x00005b2a store  0x00000003 , 0x00000477 
+ 00022701  0x00005b2b beq  0x00000002 , 0x000058c1 
+ 00022702  0x00005b2c beq  0x00000003 , 0x000058c9 
+ 00022703  0x00005b2d beq  0x00000004 , 0x000058cc 
+ 00022704  0x00005b2e beq  0x00000006 , 0x000058f2 
+ 00022705  0x00005b2f beq  0x00000008 , 0x0000593f 
+ 00022706  0x00005b30 beq  0x0000000a , 0x000059bc 
+ 00022707  0x00005b31 beq  0x0000000c , 0x000059e4 
+ 00022708  0x00005b32 beq  0x00000010 , 0x000059fa 
+ 00022709  0x00005b33 beq  0x00000012 , 0x00005a2f 
+ 00022710  0x00005b34 beq  0x00000016 , 0x00005a48 
+ 00022711  0x00005b35 beq  0x00000018 , 0x00005a5b 
+ 00022712  0x00005b36 beq  0x00000052 , 0x00005a60 
+ 00022713  0x00005b37 rtn 
+ 00022714  0x00005b3b force  0x00000003 , 0x00000011 
+ 00022715  0x00005b3c call  0x00005a82 
+ 00022716  0x00005b3d setarg  0x00000002 
+ 00022717  0x00005b3e istore  0x00000001 , 0x00000005 
+ 00022718  0x00005b3f fetch  0x00000002 , 0x000044a6 
+ 00022719  0x00005b40 istore  0x00000002 , 0x00000005 
+ 00022720  0x00005b41 rtn 
+ 00022721  0x00005b45 call  0x000058c9 
+ 00022722  0x00005b47 force  0x00000003 , 0x00000011 
+ 00022723  0x00005b48 call  0x00005a82 
+ 00022724  0x00005b49 setarg  0x00000003 
+ 00022725  0x00005b4a istore  0x00000001 , 0x00000005 
+ 00022726  0x00005b4b fetch  0x00000002 , 0x000044a6 
+ 00022727  0x00005b4c istore  0x00000002 , 0x00000005 
+ 00022728  0x00005b4d rtn 
+ 00022729  0x00005b50 rshift8  0x0000003f , 0x0000003f 
+ 00022730  0x00005b51 store  0x00000002 , 0x000044a8 
+ 00022731  0x00005b52 rtn 
+ 00022732  0x00005b55 call  0x00005ab1 
+ 00022733  0x00005b56 call  0x00007fe7 
+ 00022734  0x00005b57 branch  0x000058cf 
+ 00022735  0x00005b5a arg  0x00000003 , 0x0000000b 
+ 00022736  0x00005b5b call  0x00005756 
+ 00022737  0x00005b5d call  0x0000575f 
+ 00022738  0x00005b5e branch  0x000058f0 , 0x00000034 
+ 00022739  0x00005b5f nbranch  0x000058ed , 0x00000002 
+ 00022740  0x00005b60 increase  0xfffffffe , 0x00000006 
+ 00022741  0x00005b61 call  0x00007ea5 
+ 00022742  0x00005b62 call  0x00007e9c 
+ 00022743  0x00005b63 nbranch  0x000058e1 , 0x00000028 
+ 00022744  0x00005b64 call  0x00007e85 
+ 00022745  0x00005b65 call  0x00007fe9 
+ 00022746  0x00005b66 force  0x00000014 , 0x00000011 
+ 00022747  0x00005b67 call  0x00005a82 
+ 00022748  0x00005b68 call  0x00007e95 
+ 00022749  0x00005b69 setarg  0x00000005 
+ 00022750  0x00005b6a istore  0x00000001 , 0x00000005 
+ 00022751  0x00005b6b setarg  0x00000001 
+ 00022752  0x00005b6c istore  0x00000001 , 0x00000005 
+ 00022753  0x00005b6e call  0x00007e9f 
+ 00022754  0x00005b6f ifetch  0x00000002 , 0x00000006 
+ 00022755  0x00005b70 istore  0x00000002 , 0x00000005 
+ 00022756  0x00005b71 ifetch  0x00000001 , 0x00000006 
+ 00022757  0x00005b72 copy  0x0000003f , 0x00000039 
+ 00022758  0x00005b73 call  0x00007f01 
+ 00022759  0x00005b74 call  0x00007ea2 
+ 00022760  0x00005b75 increase  0xffffffff , 0x0000000b 
+ 00022761  0x00005b76 branch  0x000058f0 , 0x00000005 
+ 00022762  0x00005b78 ifetch  0x00000001 , 0x00000006 
+ 00022763  0x00005b79 iadd  0x00000006 , 0x00000006 
+ 00022764  0x00005b7a branch  0x000058d1 
+ 00022765  0x00005b7c ifetch  0x00000001 , 0x00000006 
+ 00022766  0x00005b7d iadd  0x00000006 , 0x00000006 
+ 00022767  0x00005b7e branch  0x000058ea 
+ 00022768  0x00005b80 branch  0x00005a76 , 0x00000028 
+ 00022769  0x00005b81 branch  0x00005aa5 
+ 00022770  0x00005b85 call  0x00005ab1 
+ 00022771  0x00005b86 ifetch  0x00000002 , 0x00000006 
+ 00022772  0x00005b87 store  0x00000002 , 0x00004472 
+ 00022773  0x00005b88 call  0x00007ea5 
+ 00022774  0x00005b89 arg  0x0000445e , 0x00000005 
+ 00022775  0x00005b8a fetch  0x00000002 , 0x000044fc 
+ 00022776  0x00005b8b increase  0xfffffff9 , 0x0000003f 
+ 00022777  0x00005b8c call  0x000056db 
+ 00022778  0x00005b8d branch  0x00005905 
+ 00022779  0x00005b91 disable  0x00000028 
+ 00022780  0x00005b92 fetcht  0x00000002 , 0x0000445a 
+ 00022781  0x00005b93 fetch  0x00000002 , 0x0000445c 
+ 00022782  0x00005b94 isub  0x00000002 , 0x0000003e 
+ 00022783  0x00005b95 nbranch  0x00005902 , 0x00000002 
+ 00022784  0x00005b96 deposit  0x00000002 
+ 00022785  0x00005b97 rtnne  0x00000000 
+ 00022786  0x00005b99 enable  0x00000028 
+ 00022787  0x00005b9a jam  0x00000001 , 0x0000047a 
+ 00022788  0x00005b9b branch  0x00005a77 
+ 00022789  0x00005b9f call  0x000058fb 
+ 00022790  0x00005ba0 rtn  0x00000028 
+ 00022791  0x00005ba1 fetcht  0x00000002 , 0x00004472 
+ 00022792  0x00005ba2 setarg  0x00002800 
+ 00022793  0x00005ba3 isub  0x00000002 , 0x0000003e 
+ 00022794  0x00005ba4 branch  0x0000590c , 0x00000005 
+ 00022795  0x00005ba5 branch  0x00005a76 
+ 00022796  0x00005ba9 jam  0x00000000 , 0x000004b4 
+ 00022797  0x00005baa fetcht  0x00000002 , 0x0000445a 
+ 00022798  0x00005bab storet  0x00000002 , 0x00000aa2 
+ 00022799  0x00005bac call  0x0000578c 
+ 00022800  0x00005bad nbranch  0x00005a76 , 0x00000034 
+ 00022801  0x00005baf fetcht  0x00000002 , 0x00000aa2 
+ 00022802  0x00005bb0 call  0x0000578c 
+ 00022803  0x00005bb1 nbranch  0x00005925 , 0x00000034 
+ 00022804  0x00005bb2 copy  0x00000006 , 0x00000011 
+ 00022805  0x00005bb3 fetch  0x00000001 , 0x000004b3 
+ 00022806  0x00005bb4 copy  0x0000003f , 0x00000039 
+ 00022807  0x00005bb5 fetcht  0x00000001 , 0x0000445e 
+ 00022808  0x00005bb6 isub  0x00000002 , 0x0000003e 
+ 00022809  0x00005bb7 nbranch  0x00005921 , 0x00000005 
+ 00022810  0x00005bb8 arg  0x0000445f , 0x00000012 
+ 00022811  0x00005bb9 call  0x00007f88 
+ 00022812  0x00005bbb branch  0x00005928 , 0x00000005 
+ 00022813  0x00005bbd fetch  0x00000002 , 0x000004a3 
+ 00022814  0x00005bbe fetcht  0x00000002 , 0x00004472 
+ 00022815  0x00005bbf isub  0x00000002 , 0x0000003e 
+ 00022816  0x00005bc0 branch  0x00005930 , 0x00000005 
+ 00022817  0x00005bc2 fetch  0x00000002 , 0x00000aa2 
+ 00022818  0x00005bc3 increase  0x00000001 , 0x0000003f 
+ 00022819  0x00005bc4 store  0x00000002 , 0x00000aa2 
+ 00022820  0x00005bc5 branch  0x00005911 
+ 00022821  0x00005bc8 fetch  0x00000001 , 0x000004b4 
+ 00022822  0x00005bc9 beq  0x00000001 , 0x00005930 
+ 00022823  0x00005bca branch  0x00005a76 
+ 00022824  0x00005bce fetch  0x00000002 , 0x000004a3 
+ 00022825  0x00005bcf fetcht  0x00000002 , 0x00004472 
+ 00022826  0x00005bd0 isub  0x00000002 , 0x0000003e 
+ 00022827  0x00005bd1 nbranch  0x00005921 , 0x00000005 
+ 00022828  0x00005bd2 jam  0x00000001 , 0x000004b4 
+ 00022829  0x00005bd4 fetcht  0x00000002 , 0x00000aa2 
+ 00022830  0x00005bd5 storet  0x00000002 , 0x0000049e 
+ 00022831  0x00005bd6 branch  0x00005921 
+ 00022832  0x00005bd9 fetch  0x00000001 , 0x000004b4 
+ 00022833  0x00005bda beq  0x00000000 , 0x00005921 
+ 00022834  0x00005bdb jam  0x00000002 , 0x000004b4 
+ 00022835  0x00005bdc fetcht  0x00000002 , 0x00000aa2 
+ 00022836  0x00005bdd increase  0xffffffff , 0x00000002 
+ 00022837  0x00005bde storet  0x00000002 , 0x000004a0 
+ 00022838  0x00005be1 arg  0x00000005 , 0x00000011 
+ 00022839  0x00005be2 call  0x00005a82 
+ 00022840  0x00005be3 setarg  0x00000007 
+ 00022841  0x00005be4 istore  0x00000001 , 0x00000005 
+ 00022842  0x00005be5 fetch  0x00000002 , 0x0000049e 
+ 00022843  0x00005be6 istore  0x00000002 , 0x00000005 
+ 00022844  0x00005be7 fetch  0x00000002 , 0x000004a0 
+ 00022845  0x00005be8 istore  0x00000002 , 0x00000005 
+ 00022846  0x00005be9 rtn 
+ 00022847  0x00005bee call  0x00005ab1 
+ 00022848  0x00005bef call  0x000056df 
+ 00022849  0x00005bf0 branch  0x00005942 
+ 00022850  0x00005bf3 fetcht  0x00000002 , 0x0000445a 
+ 00022851  0x00005bf4 storet  0x00000002 , 0x00000aa2 
+ 00022852  0x00005bf5 call  0x00005756 
+ 00022853  0x00005bf6 call  0x0000576d 
+ 00022854  0x00005bf7 increase  0xfffffffe , 0x00000006 
+ 00022855  0x00005bf8 copy  0x00000006 , 0x0000003f 
+ 00022856  0x00005bf9 store  0x00000002 , 0x0000049c 
+ 00022857  0x00005bfb fetcht  0x00000002 , 0x00004472 
+ 00022858  0x00005bfc setarg  0x00002a00 
+ 00022859  0x00005bfd isub  0x00000002 , 0x0000003e 
+ 00022860  0x00005bfe branch  0x000059a8 , 0x00000005 
+ 00022861  0x00005bff setarg  0x00002803 
+ 00022862  0x00005c00 isub  0x00000002 , 0x0000003e 
+ 00022863  0x00005c01 nbranch  0x00005990 , 0x00000005 
+ 00022864  0x00005c02 arg  0x00000002 , 0x0000000b 
+ 00022865  0x00005c04 call  0x00005a88 
+ 00022866  0x00005c05 nbranch  0x0000596d , 0x00000002 
+ 00022867  0x00005c06 fetcht  0x00000002 , 0x00000aa2 
+ 00022868  0x00005c07 call  0x0000578a 
+ 00022869  0x00005c08 beq  0x00000001 , 0x0000596d 
+ 00022870  0x00005c09 call  0x00005a94 
+ 00022871  0x00005c0a nbranch  0x0000596b , 0x00000005 
+ 00022872  0x00005c0b nbranch  0x0000596f , 0x00000028 
+ 00022873  0x00005c0c disable  0x00000028 
+ 00022874  0x00005c0d arg  0x00000014 , 0x00000011 
+ 00022875  0x00005c0e call  0x00005a82 
+ 00022876  0x00005c0f setarg  0x00000009 
+ 00022877  0x00005c10 istore  0x00000001 , 0x00000005 
+ 00022878  0x00005c11 copy  0x00000005 , 0x00000030 
+ 00022879  0x00005c12 increase  0x00000001 , 0x00000005 
+ 00022880  0x00005c14 call  0x0000597d 
+ 00022881  0x00005c15 call  0x00005a84 
+ 00022882  0x00005c16 call  0x0000578a 
+ 00022883  0x00005c17 call  0x00005984 
+ 00022884  0x00005c18 fetch  0x00000001 , 0x000004a2 
+ 00022885  0x00005c19 increase  0x00000005 , 0x0000003f 
+ 00022886  0x00005c1a istore  0x00000001 , 0x00000030 
+ 00022887  0x00005c1b fetch  0x00000001 , 0x000004a2 
+ 00022888  0x00005c1c beq  0x00000010 , 0x0000596d 
+ 00022889  0x00005c1d increase  0xffffffff , 0x0000000b 
+ 00022890  0x00005c1e branch  0x0000596d , 0x00000005 
+ 00022891  0x00005c20 call  0x00005a84 
+ 00022892  0x00005c21 branch  0x00005951 
+ 00022893  0x00005c23 branch  0x00005a76 , 0x00000028 
+ 00022894  0x00005c24 branch  0x00005aa5 
+ 00022895  0x00005c27 call  0x00005a97 
+ 00022896  0x00005c28 call  0x00005a84 
+ 00022897  0x00005c29 call  0x0000578a 
+ 00022898  0x00005c2a fetch  0x00000001 , 0x000004a2 
+ 00022899  0x00005c2b beq  0x00000010 , 0x0000596d 
+ 00022900  0x00005c2d call  0x00007e9c 
+ 00022901  0x00005c2e fetch  0x00000002 , 0x00000aa2 
+ 00022902  0x00005c2f increase  0xffffffff , 0x0000003f 
+ 00022903  0x00005c30 istore  0x00000002 , 0x00000005 
+ 00022904  0x00005c31 call  0x00005aa1 
+ 00022905  0x00005c32 call  0x00005984 
+ 00022906  0x00005c33 increase  0xffffffff , 0x0000000b 
+ 00022907  0x00005c34 branch  0x0000596d , 0x00000005 
+ 00022908  0x00005c35 branch  0x0000596b 
+ 00022909  0x00005c39 fetch  0x00000002 , 0x00000aa2 
+ 00022910  0x00005c3a istore  0x00000002 , 0x00000005 
+ 00022911  0x00005c3c fetch  0x00000001 , 0x000004b3 
+ 00022912  0x00005c3d copy  0x0000003f , 0x00000039 
+ 00022913  0x00005c3e call  0x00007e9f 
+ 00022914  0x00005c3f call  0x00007ef4 
+ 00022915  0x00005c40 branch  0x00007ea2 
+ 00022916  0x00005c42 call  0x00007e9c 
+ 00022917  0x00005c43 fetch  0x00000002 , 0x00000aa2 
+ 00022918  0x00005c44 istore  0x00000002 , 0x00000005 
+ 00022919  0x00005c45 call  0x00007ea2 
+ 00022920  0x00005c46 fetch  0x00000001 , 0x000004a2 
+ 00022921  0x00005c47 copy  0x0000003f , 0x00000039 
+ 00022922  0x00005c48 call  0x00007e9c 
+ 00022923  0x00005c49 call  0x00007e9f 
+ 00022924  0x00005c4a isub  0x00000039 , 0x00000006 
+ 00022925  0x00005c4b increase  0xffffffff , 0x00000006 
+ 00022926  0x00005c4c call  0x00007ef4 
+ 00022927  0x00005c4d branch  0x00007ea2 
+ 00022928  0x00005c52 fetcht  0x00000002 , 0x0000445a 
+ 00022929  0x00005c53 storet  0x00000002 , 0x00000aa2 
+ 00022930  0x00005c55 call  0x00005a88 
+ 00022931  0x00005c56 nbranch  0x00005a76 , 0x00000002 
+ 00022932  0x00005c57 call  0x0000578a 
+ 00022933  0x00005c58 beq  0x00000001 , 0x00005a76 
+ 00022934  0x00005c59 call  0x00005a94 
+ 00022935  0x00005c5a nbranch  0x000059a6 , 0x00000005 
+ 00022936  0x00005c5d arg  0x00000014 , 0x00000011 
+ 00022937  0x00005c5e call  0x00005a82 
+ 00022938  0x00005c5f setarg  0x00000009 
+ 00022939  0x00005c60 istore  0x00000001 , 0x00000005 
+ 00022940  0x00005c61 fetch  0x00000001 , 0x000004b3 
+ 00022941  0x00005c62 copy  0x0000003f , 0x00000039 
+ 00022942  0x00005c63 increase  0x00000002 , 0x0000003f 
+ 00022943  0x00005c64 istore  0x00000001 , 0x00000005 
+ 00022944  0x00005c65 fetch  0x00000002 , 0x00000aa2 
+ 00022945  0x00005c66 istore  0x00000002 , 0x00000005 
+ 00022946  0x00005c67 call  0x00007e9f 
+ 00022947  0x00005c68 call  0x00007ef4 
+ 00022948  0x00005c69 call  0x00007ea2 
+ 00022949  0x00005c6a branch  0x00005aa5 
+ 00022950  0x00005c6d call  0x00005a84 
+ 00022951  0x00005c6e branch  0x00005992 
+ 00022952  0x00005c72 arg  0x00002a00 , 0x00000002 
+ 00022953  0x00005c73 call  0x0000577c 
+ 00022954  0x00005c74 rtn  0x00000034 
+ 00022955  0x00005c75 increase  0xfffffffb , 0x00000006 
+ 00022956  0x00005c76 ifetch  0x00000002 , 0x00000006 
+ 00022957  0x00005c77 store  0x00000002 , 0x00000aa2 
+ 00022958  0x00005c78 arg  0x00000014 , 0x00000011 
+ 00022959  0x00005c79 call  0x00005a82 
+ 00022960  0x00005c7a setarg  0x00000009 
+ 00022961  0x00005c7b istore  0x00000001 , 0x00000005 
+ 00022962  0x00005c7c fetch  0x00000001 , 0x000043af 
+ 00022963  0x00005c7d copy  0x0000003f , 0x00000039 
+ 00022964  0x00005c7e increase  0x00000002 , 0x0000003f 
+ 00022965  0x00005c7f istore  0x00000001 , 0x00000005 
+ 00022966  0x00005c80 fetch  0x00000002 , 0x00000aa2 
+ 00022967  0x00005c81 istore  0x00000002 , 0x00000005 
+ 00022968  0x00005c82 arg  0x000043b0 , 0x00000006 
+ 00022969  0x00005c83 call  0x00007ef4 
+ 00022970  0x00005c84 call  0x00007ea2 
+ 00022971  0x00005c85 branch  0x00005aa5 
+ 00022972  0x00005c8a fetcht  0x00000002 , 0x00000478 
+ 00022973  0x00005c8b fetch  0x00000001 , 0x000044e9 
+ 00022974  0x00005c8c bbit1  0x00000003 , 0x000059dd 
+ 00022975  0x00005c8f call  0x0000576a 
+ 00022976  0x00005c90 branch  0x00005a76 , 0x00000034 
+ 00022977  0x00005c91 increase  0xfffffffe , 0x00000006 
+ 00022978  0x00005c92 ifetch  0x00000002 , 0x00000006 
+ 00022979  0x00005c93 arg  0x00002a00 , 0x00000002 
+ 00022980  0x00005c94 isub  0x00000002 , 0x0000003e 
+ 00022981  0x00005c95 branch  0x000059d3 , 0x00000005 
+ 00022982  0x00005c96 ifetch  0x00000001 , 0x00000006 
+ 00022983  0x00005c97 sub  0x0000003f , 0x00000016 , 0x0000003e 
+ 00022984  0x00005c98 branch  0x000059ca , 0x00000002 
+ 00022985  0x00005c99 force  0x00000016 , 0x0000003f 
+ 00022986  0x00005c9b copy  0x0000003f , 0x00000013 
+ 00022987  0x00005c9c call  0x00007ea5 
+ 00022988  0x00005c9d add  0x00000013 , 0x00000001 , 0x00000011 
+ 00022989  0x00005c9e call  0x00005a82 
+ 00022990  0x00005c9f setarg  0x0000000b 
+ 00022991  0x00005ca0 istore  0x00000001 , 0x00000005 
+ 00022992  0x00005ca1 copy  0x00000013 , 0x00000039 
+ 00022993  0x00005ca2 call  0x00007e9f 
+ 00022994  0x00005ca3 branch  0x00007f01 
+ 00022995  0x00005ca6 call  0x00007ea5 
+ 00022996  0x00005ca7 fetch  0x00000001 , 0x000043af 
+ 00022997  0x00005ca8 add  0x0000003f , 0x00000001 , 0x00000011 
+ 00022998  0x00005ca9 call  0x00005a82 
+ 00022999  0x00005caa setarg  0x0000000b 
+ 00023000  0x00005cab istore  0x00000001 , 0x00000005 
+ 00023001  0x00005cac fetch  0x00000001 , 0x000043af 
+ 00023002  0x00005cad copy  0x0000003f , 0x00000039 
+ 00023003  0x00005cae arg  0x000043b0 , 0x00000006 
+ 00023004  0x00005caf branch  0x00007f01 
+ 00023005  0x00005cb3 fetch  0x00000002 , 0x000044fa 
+ 00023006  0x00005cb4 isub  0x00000002 , 0x0000003e 
+ 00023007  0x00005cb5 nbranch  0x000059bf , 0x00000005 
+ 00023008  0x00005cb7 call  0x00005a42 
+ 00023009  0x00005cb8 nbranch  0x000059bf , 0x00000028 
+ 00023010  0x00005cb9 jam  0x00000005 , 0x0000047a 
+ 00023011  0x00005cba branch  0x00005a77 
+ 00023012  0x00005cbe ifetch  0x00000002 , 0x00000006 
+ 00023013  0x00005cbf store  0x00000002 , 0x0000445e 
+ 00023014  0x00005cc1 arg  0x00000014 , 0x00000011 
+ 00023015  0x00005cc2 call  0x00005a82 
+ 00023016  0x00005cc3 setarg  0x0000000d 
+ 00023017  0x00005cc4 istore  0x00000001 , 0x00000005 
+ 00023018  0x00005cc5 fetch  0x00000002 , 0x0000445e 
+ 00023019  0x00005cc6 iforce  0x00000011 
+ 00023020  0x00005cc7 fetcht  0x00000002 , 0x00000478 
+ 00023021  0x00005cc8 call  0x0000576a 
+ 00023022  0x00005cc9 branch  0x00005a76 , 0x00000034 
+ 00023023  0x00005cca ifetch  0x00000001 , 0x00000006 
+ 00023024  0x00005ccb isub  0x00000011 , 0x00000039 
+ 00023025  0x00005ccc nbranch  0x00005a76 , 0x00000002 
+ 00023026  0x00005ccd sub  0x00000039 , 0x00000016 , 0x0000003e 
+ 00023027  0x00005cce branch  0x000059f5 , 0x00000002 
+ 00023028  0x00005ccf force  0x00000016 , 0x00000039 
+ 00023029  0x00005cd1 deposit  0x00000011 
+ 00023030  0x00005cd2 iadd  0x00000006 , 0x00000006 
+ 00023031  0x00005cd3 call  0x00007ef4 
+ 00023032  0x00005cd4 call  0x00007ea2 
+ 00023033  0x00005cd5 branch  0x00005aa5 
+ 00023034  0x00005cd9 call  0x00005ab1 
+ 00023035  0x00005cda call  0x000056d7 
+ 00023036  0x00005cdb branch  0x000059fd 
+ 00023037  0x00005ce1 arg  0x00000002 , 0x0000000b 
+ 00023038  0x00005ce2 fetcht  0x00000002 , 0x0000445a 
+ 00023039  0x00005ce6 storet  0x00000002 , 0x00000aa2 
+ 00023040  0x00005ce7 call  0x00005756 
+ 00023041  0x00005ce8 call  0x0000576d 
+ 00023042  0x00005ce9 increase  0xfffffffe , 0x00000006 
+ 00023043  0x00005cea copy  0x00000006 , 0x0000003f 
+ 00023044  0x00005ceb store  0x00000002 , 0x0000049c 
+ 00023045  0x00005ced call  0x00005a88 
+ 00023046  0x00005cee nbranch  0x00005a25 , 0x00000002 
+ 00023047  0x00005cef fetcht  0x00000002 , 0x00000aa2 
+ 00023048  0x00005cf0 call  0x0000578a 
+ 00023049  0x00005cf1 beq  0x00000001 , 0x00005a28 
+ 00023050  0x00005cf3 call  0x00005a8c 
+ 00023051  0x00005cf4 nbranch  0x00005a23 , 0x00000005 
+ 00023052  0x00005cf5 copy  0x0000000b , 0x0000003f 
+ 00023053  0x00005cf6 beq  0x00000000 , 0x00005a28 
+ 00023054  0x00005cf7 nbranch  0x00005a19 , 0x00000028 
+ 00023055  0x00005cf8 disable  0x00000028 
+ 00023056  0x00005cfa arg  0x00000014 , 0x00000011 
+ 00023057  0x00005cfb call  0x00005a82 
+ 00023058  0x00005cfc setarg  0x00000011 
+ 00023059  0x00005cfd istore  0x00000001 , 0x00000005 
+ 00023060  0x00005cfe fetch  0x00000001 , 0x000004b3 
+ 00023061  0x00005cff increase  0x00000004 , 0x0000003f 
+ 00023062  0x00005d00 istore  0x00000001 , 0x00000005 
+ 00023063  0x00005d01 call  0x00007ea2 
+ 00023064  0x00005d02 branch  0x00005a1f 
+ 00023065  0x00005d04 fetch  0x00000001 , 0x000004b3 
+ 00023066  0x00005d05 beq  0x00000010 , 0x00005a28 
+ 00023067  0x00005d06 fetch  0x00000002 , 0x00000aa2 
+ 00023068  0x00005d07 increase  0xffffffff , 0x0000003f 
+ 00023069  0x00005d08 store  0x00000002 , 0x000004a0 
+ 00023070  0x00005d09 call  0x00005a9c 
+ 00023071  0x00005d0b fetch  0x00000002 , 0x00000aa2 
+ 00023072  0x00005d0c store  0x00000002 , 0x0000049e 
+ 00023073  0x00005d0d call  0x00005a97 
+ 00023074  0x00005d0e increase  0xffffffff , 0x0000000b 
+ 00023075  0x00005d11 call  0x00005a84 
+ 00023076  0x00005d12 branch  0x00005a05 
+ 00023077  0x00005d15 fetch  0x00000002 , 0x00000aa2 
+ 00023078  0x00005d16 store  0x00000002 , 0x000004a0 
+ 00023079  0x00005d17 branch  0x00005a2c 
+ 00023080  0x00005d19 fetch  0x00000002 , 0x00000aa2 
+ 00023081  0x00005d1a increase  0xffffffff , 0x0000003f 
+ 00023082  0x00005d1b store  0x00000002 , 0x000004a0 
+ 00023083  0x00005d1c branch  0x00005a2c 
+ 00023084  0x00005d1e branch  0x00005a76 , 0x00000028 
+ 00023085  0x00005d1f call  0x00005a9c 
+ 00023086  0x00005d20 branch  0x00005aa5 
+ 00023087  0x00005d26 copy  0x00000006 , 0x00000011 
+ 00023088  0x00005d27 fetch  0x00000002 , 0x000044fc 
+ 00023089  0x00005d28 add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023090  0x00005d29 call  0x000056e2 
+ 00023091  0x00005d2b fetch  0x00000001 , 0x000044e9 
+ 00023092  0x00005d2c bbit0  0x00000004 , 0x00005a3d 
+ 00023093  0x00005d2e fetcht  0x00000002 , 0x00000478 
+ 00023094  0x00005d2f fetch  0x00000002 , 0x000044fa 
+ 00023095  0x00005d30 isub  0x00000002 , 0x0000003e 
+ 00023096  0x00005d31 nbranch  0x00005a3d , 0x00000005 
+ 00023097  0x00005d32 call  0x00005a42 
+ 00023098  0x00005d33 nbranch  0x00005a3d , 0x00000028 
+ 00023099  0x00005d34 jam  0x00000005 , 0x0000047a 
+ 00023100  0x00005d35 branch  0x00005a77 
+ 00023101  0x00005d38 force  0x00000001 , 0x00000011 
+ 00023102  0x00005d39 call  0x00005a82 
+ 00023103  0x00005d3a setarg  0x00000013 
+ 00023104  0x00005d3b istore  0x00000001 , 0x00000005 
+ 00023105  0x00005d3c rtn 
+ 00023106  0x00005d3f call  0x00007fe9 
+ 00023107  0x00005d40 fetch  0x00000001 , 0x000044c6 
+ 00023108  0x00005d41 rtneq  0x00000000 
+ 00023109  0x00005d42 fetch  0x00000001 , 0x00004040 
+ 00023110  0x00005d43 rtnbit1  0x00000004 
+ 00023111  0x00005d44 branch  0x00007fe7 
+ 00023112  0x00005d48 add  0x00000006 , 0x00000002 , 0x00000011 
+ 00023113  0x00005d49 fetch  0x00000002 , 0x000044fc 
+ 00023114  0x00005d4a add  0x0000003f , 0xfffffffb , 0x00000012 
+ 00023115  0x00005d4b call  0x000056e2 
+ 00023116  0x00005d4c branch  0x00005a4d 
+ 00023117  0x00005d50 fetch  0x00000002 , 0x000044fc 
+ 00023118  0x00005d51 copy  0x0000003f , 0x00000011 
+ 00023119  0x00005d52 call  0x00005a82 
+ 00023120  0x00005d53 setarg  0x00000017 
+ 00023121  0x00005d54 istore  0x00000001 , 0x00000005 
+ 00023122  0x00005d55 fetch  0x00000002 , 0x00000478 
+ 00023123  0x00005d56 istore  0x00000002 , 0x00000005 
+ 00023124  0x00005d57 fetch  0x00000002 , 0x000044fc 
+ 00023125  0x00005d58 add  0x0000003f , 0xfffffffb , 0x00000039 
+ 00023126  0x00005d59 fetch  0x00000002 , 0x0000450d 
+ 00023127  0x00005d5a add  0x0000003f , 0x00000007 , 0x00000006 
+ 00023128  0x00005d5b ifetch  0x00000002 , 0x00000006 
+ 00023129  0x00005d5c istore  0x00000002 , 0x00000005 
+ 00023130  0x00005d5d branch  0x00007ef4 
+ 00023131  0x00005d64 force  0x00000001 , 0x00000011 
+ 00023132  0x00005d65 call  0x00005a82 
+ 00023133  0x00005d66 setarg  0x00000019 
+ 00023134  0x00005d67 istore  0x00000001 , 0x00000005 
+ 00023135  0x00005d68 rtn 
+ 00023136  0x00005d6d copy  0x00000006 , 0x00000011 
+ 00023137  0x00005d6e fetch  0x00000002 , 0x000044fc 
+ 00023138  0x00005d6f add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023139  0x00005d70 branch  0x000056e2 
+ 00023140  0x00005d76 copy  0x00000002 , 0x00000013 
+ 00023141  0x00005d77 increase  0x00000003 , 0x00000011 
+ 00023142  0x00005d78 call  0x00005a82 
+ 00023143  0x00005d79 increase  0xfffffffd , 0x00000011 
+ 00023144  0x00005d7a setarg  0x0000001b 
+ 00023145  0x00005d7b istore  0x00000001 , 0x00000005 
+ 00023146  0x00005d7c copy  0x00000013 , 0x00000002 
+ 00023147  0x00005d7d istoret  0x00000002 , 0x00000005 
+ 00023148  0x00005d7e rtn 
+ 00023149  0x00005d82 copy  0x00000002 , 0x00000013 
+ 00023150  0x00005d83 increase  0x00000003 , 0x00000011 
+ 00023151  0x00005d84 call  0x00005a82 
+ 00023152  0x00005d85 increase  0xfffffffd , 0x00000011 
+ 00023153  0x00005d86 setarg  0x0000001d 
+ 00023154  0x00005d87 istore  0x00000001 , 0x00000005 
+ 00023155  0x00005d88 copy  0x00000013 , 0x00000002 
+ 00023156  0x00005d89 istoret  0x00000002 , 0x00000005 
+ 00023157  0x00005d8a rtn 
+ 00023158  0x00005d90 jam  0x0000000a , 0x0000047a 
+ 00023159  0x00005d92 force  0x00000005 , 0x00000011 
+ 00023160  0x00005d93 call  0x00005a82 
+ 00023161  0x00005d94 setarg  0x00000001 
+ 00023162  0x00005d95 istore  0x00000001 , 0x00000005 
+ 00023163  0x00005d96 fetch  0x00000001 , 0x00000477 
+ 00023164  0x00005d97 istore  0x00000001 , 0x00000005 
+ 00023165  0x00005d98 fetch  0x00000002 , 0x00000478 
+ 00023166  0x00005d99 istore  0x00000002 , 0x00000005 
+ 00023167  0x00005d9a fetch  0x00000001 , 0x0000047a 
+ 00023168  0x00005d9b istore  0x00000001 , 0x00000005 
+ 00023169  0x00005d9c rtn 
+ 00023170  0x00005da0 force  0x00000004 , 0x00000012 
+ 00023171  0x00005da1 branch  0x00005847 
+ 00023172  0x00005da5 fetcht  0x00000002 , 0x00000aa2 
+ 00023173  0x00005da6 increase  0x00000001 , 0x00000002 
+ 00023174  0x00005da7 storet  0x00000002 , 0x00000aa2 
+ 00023175  0x00005da8 rtn 
+ 00023176  0x00005dab fetcht  0x00000002 , 0x00000aa2 
+ 00023177  0x00005dac fetch  0x00000002 , 0x0000445c 
+ 00023178  0x00005dad isub  0x00000002 , 0x0000003e 
+ 00023179  0x00005dae rtn 
+ 00023180  0x00005db2 fetcht  0x00000001 , 0x0000445e 
+ 00023181  0x00005db3 arg  0x0000445f , 0x00000011 
+ 00023182  0x00005db5 fetch  0x00000001 , 0x000004a2 
+ 00023183  0x00005db6 copy  0x0000003f , 0x00000039 
+ 00023184  0x00005db7 isub  0x00000002 , 0x0000003e 
+ 00023185  0x00005db8 nrtn  0x00000005 
+ 00023186  0x00005db9 arg  0x000004a3 , 0x00000012 
+ 00023187  0x00005dba branch  0x00007f88 
+ 00023188  0x00005dbd fetcht  0x00000001 , 0x00004471 
+ 00023189  0x00005dbe arg  0x00004472 , 0x00000011 
+ 00023190  0x00005dbf branch  0x00005a8e 
+ 00023191  0x00005dc3 fetch  0x00000001 , 0x000004b3 
+ 00023192  0x00005dc4 store  0x00000001 , 0x00000101 
+ 00023193  0x00005dc5 copy  0x0000003f , 0x00000039 
+ 00023194  0x00005dc6 call  0x00007e9f 
+ 00023195  0x00005dc7 branch  0x00007ef4 
+ 00023196  0x00005dcb call  0x00007e9c 
+ 00023197  0x00005dcc fetch  0x00000002 , 0x0000049e 
+ 00023198  0x00005dcd istore  0x00000002 , 0x00000005 
+ 00023199  0x00005dce fetch  0x00000002 , 0x000004a0 
+ 00023200  0x00005dcf istore  0x00000002 , 0x00000005 
+ 00023201  0x00005dd1 fetch  0x00000001 , 0x00000101 
+ 00023202  0x00005dd2 copy  0x0000003f , 0x00000039 
+ 00023203  0x00005dd3 call  0x00007ef4 
+ 00023204  0x00005dd4 branch  0x00007ea2 
+ 00023205  0x00005dd9 call  0x00007e9c 
+ 00023206  0x00005dda call  0x0000588a 
+ 00023207  0x00005ddb copy  0x00000005 , 0x0000003f 
+ 00023208  0x00005ddc isub  0x00000006 , 0x00000011 
+ 00023209  0x00005ddd call  0x0000588d 
+ 00023210  0x00005dde copy  0x00000011 , 0x0000003f 
+ 00023211  0x00005ddf istore  0x00000002 , 0x00000006 
+ 00023212  0x00005de0 increase  0x00000004 , 0x00000011 
+ 00023213  0x00005de1 call  0x00005879 
+ 00023214  0x00005de2 copy  0x00000011 , 0x0000003f 
+ 00023215  0x00005de3 istore  0x00000001 , 0x00000006 
+ 00023216  0x00005de4 rtn 
+ 00023217  0x00005de8 rshift8  0x0000003f , 0x0000003f 
+ 00023218  0x00005de9 store  0x00000002 , 0x0000445a 
+ 00023219  0x00005dea ifetch  0x00000002 , 0x00000006 
+ 00023220  0x00005deb store  0x00000002 , 0x0000445c 
+ 00023221  0x00005dec rtn 
+ 00023222  0x00005df2 ifetch  0x00000001 , 0x00000006 
+ 00023223  0x00005df3 ifetcht  0x00000001 , 0x00000006 
+ 00023224  0x00005df4 ifetcht  0x00000002 , 0x00000006 
+ 00023225  0x00005df5 beq  0x00000013 , 0x00005abb 
+ 00023226  0x00005df6 rtn 
+ 00023227  0x00005df8 ifetch  0x00000002 , 0x00000006 
+ 00023228  0x00005df9 store  0x00000002 , 0x00004509 
+ 00023229  0x00005dfa jam  0x00000040 , 0x00000a99 
+ 00023230  0x00005dfb branch  0x00007d86 
+ 00023231  0x00005e02 arg  0x0000000c , 0x00000011 
+ 00023232  0x00005e03 arg  0x00000012 , 0x00000013 
+ 00023233  0x00005e04 call  0x00005ac7 
+ 00023234  0x00005e05 setarg  0x00000008 
+ 00023235  0x00005e06 istore  0x00000002 , 0x00000005 
+ 00023236  0x00005e07 fetch  0x00000008 , 0x00004496 
+ 00023237  0x00005e08 istore  0x00000008 , 0x00000005 
+ 00023238  0x00005e09 rtn 
+ 00023239  0x00005e0e call  0x00005acf 
+ 00023240  0x00005e0f arg  0x00000005 , 0x00000012 
+ 00023241  0x00005e10 call  0x00005847 
+ 00023242  0x00005e11 copy  0x00000013 , 0x0000003f 
+ 00023243  0x00005e12 istore  0x00000001 , 0x00000005 
+ 00023244  0x00005e13 fetch  0x00000001 , 0x00004508 
+ 00023245  0x00005e14 istore  0x00000001 , 0x00000005 
+ 00023246  0x00005e15 rtn 
+ 00023247  0x00005e19 fetch  0x00000001 , 0x00004508 
+ 00023248  0x00005e1b pincrease  0x00000001 
+ 00023249  0x00005e1c store  0x00000001 , 0x00004508 
+ 00023250  0x00005e1d rtnne  0x00000000 
+ 00023251  0x00005e20 jam  0x00000001 , 0x00004508 
+ 00023252  0x00005e21 rtn 
+ 00023253  0x00005e27 fetch  0x00000001 , 0x000044c6 
+ 00023254  0x00005e28 beq  0x00000000 , 0x00005ae4 
+ 00023255  0x00005e29 beq  0x00000001 , 0x00005ae7 
+ 00023256  0x00005e2a beq  0x00000002 , 0x00005ae9 
+ 00023257  0x00005e2b beq  0x00000081 , 0x00005add 
+ 00023258  0x00005e2c beq  0x00000082 , 0x00005adf 
+ 00023259  0x00005e2d beq  0x00000083 , 0x00005ae2 
+ 00023260  0x00005e2e rtn 
+ 00023261  0x00005e31 jam  0x0000000d , 0x00004456 
+ 00023262  0x00005e32 branch  0x00005ae5 
+ 00023263  0x00005e34 jam  0x0000000d , 0x00004456 
+ 00023264  0x00005e35 jam  0x00000001 , 0x00004454 
+ 00023265  0x00005e36 rtn 
+ 00023266  0x00005e38 jam  0x0000000d , 0x00004456 
+ 00023267  0x00005e39 branch  0x00005aea 
+ 00023268  0x00005e3b jam  0x00000000 , 0x00004456 
+ 00023269  0x00005e3d jam  0x00000003 , 0x00004454 
+ 00023270  0x00005e3e rtn 
+ 00023271  0x00005e40 jam  0x00000005 , 0x00004456 
+ 00023272  0x00005e41 branch  0x00005ae5 
+ 00023273  0x00005e43 jam  0x00000005 , 0x00004456 
+ 00023274  0x00005e45 jam  0x00000000 , 0x00004454 
+ 00023275  0x00005e46 rtn 
+ 00023276  0x00005e4a fetch  0x00000001 , 0x00004456 
+ 00023277  0x00005e4b set1  0x00000003 , 0x0000003f 
+ 00023278  0x00005e4c store  0x00000001 , 0x00004456 
+ 00023279  0x00005e4d rtn 
+ 00023280  0x00005e4f fetch  0x00000001 , 0x00004456 
+ 00023281  0x00005e50 set0  0x00000003 , 0x0000003f 
+ 00023282  0x00005e51 store  0x00000001 , 0x00004456 
+ 00023283  0x00005e52 rtn 
+ 00023284  0x00005e55 ifetch  0x00000001 , 0x00000006 
+ 00023285  0x00005e56 beq  0x00000001 , 0x00005b09 
+ 00023286  0x00005e58 beq  0x00000003 , 0x00005b30 
+ 00023287  0x00005e59 beq  0x00000004 , 0x00005b4d 
+ 00023288  0x00005e5a beq  0x00000005 , 0x00005b5a 
+ 00023289  0x00005e5b beq  0x00000006 , 0x00005b80 
+ 00023290  0x00005e5c beq  0x00000007 , 0x00005bc4 
+ 00023291  0x00005e5d beq  0x00000008 , 0x00005baf 
+ 00023292  0x00005e5e beq  0x00000009 , 0x00005bc0 
+ 00023293  0x00005e5f beq  0x0000000a , 0x00005bc4 
+ 00023294  0x00005e60 beq  0x0000000b , 0x00005bc4 
+ 00023295  0x00005e61 beq  0x0000000c , 0x00005bc5 
+ 00023296  0x00005e62 beq  0x0000000d , 0x00005bca 
+ 00023297  0x00005e63 rtn 
+ 00023298  0x00005e68 force  0x00000002 , 0x00000011 
+ 00023299  0x00005e69 call  0x00005c62 
+ 00023300  0x00005e6a setarg  0x0000000b 
+ 00023301  0x00005e6b istore  0x00000001 , 0x00000005 
+ 00023302  0x00005e6c fetch  0x00000001 , 0x00004456 
+ 00023303  0x00005e6d istore  0x00000001 , 0x00000005 
+ 00023304  0x00005e6e rtn 
+ 00023305  0x00005e71 store  0x00000001 , 0x0000444c 
+ 00023306  0x00005e72 ifetch  0x00000006 , 0x00000006 
+ 00023307  0x00005e73 istore  0x00000006 , 0x00000005 
+ 00023308  0x00005e74 fetch  0x00000001 , 0x000044c6 
+ 00023309  0x00005e75 beq  0x00000000 , 0x00005b5f 
+ 00023310  0x00005e76 call  0x00005b2b 
+ 00023311  0x00005e77 call  0x00005b26 
+ 00023312  0x00005e78 jam  0x00000003 , 0x000044c4 
+ 00023313  0x00005e79 fetch  0x00000001 , 0x0000444d 
+ 00023314  0x00005e7a beq  0x00000000 , 0x00005b18 
+ 00023315  0x00005e7b beq  0x00000001 , 0x00005b18 
+ 00023316  0x00005e7c beq  0x00000003 , 0x00005b18 
+ 00023317  0x00005e7d fetch  0x00000001 , 0x000044c6 
+ 00023318  0x00005e7e beq  0x00000002 , 0x00005b1b 
+ 00023319  0x00005e7f rtneq  0x00000083 
+ 00023320  0x00005e81 arg  0x00000000 , 0x0000003f 
+ 00023321  0x00005e82 store  0x00000004 , 0x000044c7 
+ 00023322  0x00005e83 rtn 
+ 00023323  0x00005e86 fetch  0x00000001 , 0x000044e9 
+ 00023324  0x00005e87 bbit1  0x00000000 , 0x00005b24 
+ 00023325  0x00005e89 arg  0x000044c7 , 0x00000011 
+ 00023326  0x00005e8a copy  0x00000011 , 0x00000005 
+ 00023327  0x00005e8b arg  0x00000003 , 0x00000039 
+ 00023328  0x00005e8c call  0x0000630d 
+ 00023329  0x00005e8d fetch  0x00000002 , 0x000044c9 
+ 00023330  0x00005e8e and_into  0x00000007 , 0x0000003f 
+ 00023331  0x00005e8f store  0x00000002 , 0x000044c9 
+ 00023332  0x00005e91 jam  0x00000034 , 0x00000a99 
+ 00023333  0x00005e92 branch  0x00007d86 
+ 00023334  0x00005e95 fetch  0x00000001 , 0x0000444f 
+ 00023335  0x00005e96 rtnbit1  0x00000003 
+ 00023336  0x00005e97 fetch  0x00000001 , 0x000044c6 
+ 00023337  0x00005e98 rtnbit0  0x00000007 
+ 00023338  0x00005e99 branch  0x00003402 
+ 00023339  0x00005e9c force  0x00000007 , 0x00000011 
+ 00023340  0x00005e9d call  0x00005c62 
+ 00023341  0x00005e9e fetch  0x00000007 , 0x00004453 
+ 00023342  0x00005e9f istore  0x00000007 , 0x00000005 
+ 00023343  0x00005ea0 rtn 
+ 00023344  0x00005ea4 copy  0x00000006 , 0x00000011 
+ 00023345  0x00005ea5 fetch  0x00000001 , 0x000044c6 
+ 00023346  0x00005ea6 beq  0x00000083 , 0x00005b37 
+ 00023347  0x00005ea7 copy  0x00000011 , 0x00000006 
+ 00023348  0x00005ea8 arg  0x0000442a , 0x00000005 
+ 00023349  0x00005ea9 call  0x00007ebf 
+ 00023350  0x00005eaa branch  0x00005b3d 
+ 00023351  0x00005eac copy  0x00000011 , 0x00000006 
+ 00023352  0x00005ead arg  0x0000442a , 0x00000005 
+ 00023353  0x00005eae call  0x00007ebf 
+ 00023354  0x00005eaf jam  0x00000002 , 0x000044bf 
+ 00023355  0x00005eb0 jam  0x00000008 , 0x000044c1 
+ 00023356  0x00005eb1 rtn 
+ 00023357  0x00005eb5 fetch  0x00000001 , 0x000044c6 
+ 00023358  0x00005eb6 bbit1  0x00000007 , 0x00005b45 
+ 00023359  0x00005eb7 call  0x0000739c 
+ 00023360  0x00005eb8 force  0x00000011 , 0x00000011 
+ 00023361  0x00005eb9 call  0x00005c62 
+ 00023362  0x00005eba setarg  0x00000003 
+ 00023363  0x00005ebb istore  0x00000001 , 0x00000005 
+ 00023364  0x00005ebc branch  0x00007497 
+ 00023365  0x00005ec0 arg  0x0000443a , 0x00000005 
+ 00023366  0x00005ec1 call  0x0000630c 
+ 00023367  0x00005ec2 call  0x000071c5 
+ 00023368  0x00005ec3 force  0x00000011 , 0x00000011 
+ 00023369  0x00005ec4 call  0x00005c62 
+ 00023370  0x00005ec5 setarg  0x00000003 
+ 00023371  0x00005ec6 istore  0x00000001 , 0x00000005 
+ 00023372  0x00005ec7 branch  0x00007201 
+ 00023373  0x00005ecc copy  0x00000006 , 0x00000011 
+ 00023374  0x00005ecd fetch  0x00000001 , 0x000044c6 
+ 00023375  0x00005ece bbit1  0x00000007 , 0x00005b61 
+ 00023376  0x00005ecf copy  0x00000011 , 0x00000006 
+ 00023377  0x00005ed0 call  0x00007394 
+ 00023378  0x00005ed1 branch  0x00005b75 , 0x00000005 
+ 00023379  0x00005ed3 jam  0x00000004 , 0x0000047b 
+ 00023380  0x00005ed5 force  0x00000002 , 0x00000011 
+ 00023381  0x00005ed6 call  0x00005c62 
+ 00023382  0x00005ed7 setarg  0x00000005 
+ 00023383  0x00005ed8 istore  0x00000001 , 0x00000005 
+ 00023384  0x00005ed9 fetch  0x00000001 , 0x0000047b 
+ 00023385  0x00005eda istore  0x00000001 , 0x00000005 
+ 00023386  0x00005edc force  0x0000000a , 0x00000007 
+ 00023387  0x00005edd call  0x00007f07 
+ 00023388  0x00005ede jam  0x00000000 , 0x000044c4 
+ 00023389  0x00005edf jam  0x00000030 , 0x00000a99 
+ 00023390  0x00005ee0 branch  0x00007d86 
+ 00023391  0x00005ee3 jam  0x00000005 , 0x0000047b 
+ 00023392  0x00005ee4 branch  0x00005b54 
+ 00023393  0x00005ee8 arg  0x0000042f , 0x00000005 
+ 00023394  0x00005ee9 copy  0x00000011 , 0x00000006 
+ 00023395  0x00005eea call  0x00007ebf 
+ 00023396  0x00005eeb fetch  0x00000001 , 0x000044c6 
+ 00023397  0x00005eec beq  0x00000083 , 0x00005b6c 
+ 00023398  0x00005eed call  0x0000714f 
+ 00023399  0x00005ef0 call  0x00005b7a 
+ 00023400  0x00005ef1 fetch  0x00000001 , 0x000044c6 
+ 00023401  0x00005ef2 rtnne  0x00000082 
+ 00023402  0x00005ef3 jam  0x0000003b , 0x00000a99 
+ 00023403  0x00005ef4 branch  0x00007d86 
+ 00023404  0x00005ef7 call  0x000071ba 
+ 00023405  0x00005ef8 arg  0x00000af2 , 0x00000005 
+ 00023406  0x00005ef9 call  0x00007201 
+ 00023407  0x00005efa arg  0x00000af2 , 0x00000011 
+ 00023408  0x00005efb arg  0x0000442a , 0x00000012 
+ 00023409  0x00005efc arg  0x00000010 , 0x00000039 
+ 00023410  0x00005efd call  0x00007f88 
+ 00023411  0x00005efe nbranch  0x00005b53 , 0x00000005 
+ 00023412  0x00005eff branch  0x00005b7a 
+ 00023413  0x00005f02 call  0x00007390 
+ 00023414  0x00005f03 jam  0x00000031 , 0x00000a99 
+ 00023415  0x00005f04 call  0x00007d86 
+ 00023416  0x00005f05 jam  0x00000001 , 0x00004429 
+ 00023417  0x00005f06 jam  0x00000005 , 0x000044c4 
+ 00023418  0x00005f09 force  0x00000011 , 0x00000011 
+ 00023419  0x00005f0a call  0x00005c62 
+ 00023420  0x00005f0b setarg  0x00000004 
+ 00023421  0x00005f0c istore  0x00000001 , 0x00000005 
+ 00023422  0x00005f0d arg  0x0000443a , 0x00000006 
+ 00023423  0x00005f0e branch  0x00007ebf 
+ 00023424  0x00005f11 arg  0x0000041f , 0x00000005 
+ 00023425  0x00005f12 branch  0x00007ebf 
+ 00023426  0x00005f15 force  0x00000011 , 0x00000011 
+ 00023427  0x00005f16 call  0x00005c62 
+ 00023428  0x00005f17 setarg  0x00000006 
+ 00023429  0x00005f18 istore  0x00000001 , 0x00000005 
+ 00023430  0x00005f19 fetch  0x00000001 , 0x000044e9 
+ 00023431  0x00005f1a bbit1  0x00000001 , 0x00005b8a 
+ 00023432  0x00005f1b arg  0x00004419 , 0x00000006 
+ 00023433  0x00005f1c branch  0x00007ebf 
+ 00023434  0x00005f1f arg  0x000044ea , 0x00000006 
+ 00023435  0x00005f20 branch  0x00007ebf 
+ 00023436  0x00005f24 arg  0x000044cb , 0x00000005 
+ 00023437  0x00005f25 force  0x0000000a , 0x00000039 
+ 00023438  0x00005f26 call  0x0000630d 
+ 00023439  0x00005f27 force  0x0000000b , 0x00000011 
+ 00023440  0x00005f28 call  0x00005c62 
+ 00023441  0x00005f29 setarg  0x00000007 
+ 00023442  0x00005f2a istore  0x00000001 , 0x00000005 
+ 00023443  0x00005f2b fetch  0x00000002 , 0x000044cb 
+ 00023444  0x00005f2c istore  0x00000002 , 0x00000005 
+ 00023445  0x00005f2d fetch  0x00000008 , 0x000044cd 
+ 00023446  0x00005f2e istore  0x00000008 , 0x00000005 
+ 00023447  0x00005f2f rtn 
+ 00023448  0x00005f32 force  0x00000011 , 0x00000011 
+ 00023449  0x00005f33 call  0x00005c62 
+ 00023450  0x00005f34 setarg  0x00000008 
+ 00023451  0x00005f35 istore  0x00000001 , 0x00000005 
+ 00023452  0x00005f36 setarg  0x00000000 
+ 00023453  0x00005f37 istore  0x00000008 , 0x00000005 
+ 00023454  0x00005f38 istore  0x00000008 , 0x00000005 
+ 00023455  0x00005f39 rtn 
+ 00023456  0x00005f3d force  0x00000008 , 0x00000011 
+ 00023457  0x00005f3e call  0x00005c62 
+ 00023458  0x00005f3f setarg  0x00000009 
+ 00023459  0x00005f40 istore  0x00000001 , 0x00000005 
+ 00023460  0x00005f41 fetch  0x00000001 , 0x00004495 
+ 00023461  0x00005f42 istore  0x00000001 , 0x00000005 
+ 00023462  0x00005f43 fetch  0x00000006 , 0x000044a0 
+ 00023463  0x00005f44 istore  0x00000006 , 0x00000005 
+ 00023464  0x00005f45 rtn 
+ 00023465  0x00005f49 jam  0x00000008 , 0x0000047b 
+ 00023466  0x00005f4a branch  0x00005b54 
+ 00023467  0x00005f4d fetch  0x00000001 , 0x00004458 
+ 00023468  0x00005f4e fetcht  0x00000001 , 0x00004458 
+ 00023469  0x00005f4f iand  0x00000002 , 0x0000003f 
+ 00023470  0x00005f50 rtn 
+ 00023471  0x00005f53 arg  0x000044d5 , 0x00000005 
+ 00023472  0x00005f54 call  0x00007ebf 
+ 00023473  0x00005f55 call  0x00005bab 
+ 00023474  0x00005f56 isolate0  0x00000001 , 0x0000003f 
+ 00023475  0x00005f57 branch  0x00005ba9 , 0x00000001 
+ 00023476  0x00005f58 fetch  0x00000001 , 0x00004092 
+ 00023477  0x00005f59 rtnne  0x0000000a 
+ 00023478  0x00005f5a call  0x00005bb9 
+ 00023479  0x00005f5b nrtn  0x00000028 
+ 00023480  0x00005f5c branch  0x00003410 
+ 00023481  0x00005f60 call  0x00007fe9 
+ 00023482  0x00005f61 fetch  0x00000001 , 0x0000448e 
+ 00023483  0x00005f62 rtneq  0x00000000 
+ 00023484  0x00005f63 fetch  0x00000001 , 0x00000454 
+ 00023485  0x00005f64 compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00023486  0x00005f65 rtn  0x00000001 
+ 00023487  0x00005f66 branch  0x00007fe7 
+ 00023488  0x00005f69 call  0x00005bab 
+ 00023489  0x00005f6a isolate0  0x00000001 , 0x0000003f 
+ 00023490  0x00005f6b branch  0x00005ba9 , 0x00000001 
+ 00023491  0x00005f6c rtn 
+ 00023492  0x00005f71 rtn 
+ 00023493  0x00005f74 arg  0x000009be , 0x00000005 
+ 00023494  0x00005f75 call  0x00007eb3 
+ 00023495  0x00005f76 jam  0x00000002 , 0x000044bf 
+ 00023496  0x00005f77 jam  0x00000001 , 0x000044c1 
+ 00023497  0x00005f78 rtn 
+ 00023498  0x00005f7b arg  0x00000a6e , 0x00000005 
+ 00023499  0x00005f7c call  0x00007ebf 
+ 00023500  0x00005f7d jam  0x00000006 , 0x000044c1 
+ 00023501  0x00005f7e jam  0x00000002 , 0x000044bf 
+ 00023502  0x00005f7f rtn 
+ 00023503  0x00005f82 force  0x00000041 , 0x00000011 
+ 00023504  0x00005f83 call  0x00005c62 
+ 00023505  0x00005f84 setarg  0x0000000c 
+ 00023506  0x00005f85 istore  0x00000001 , 0x00000005 
+ 00023507  0x00005f86 arg  0x000045d2 , 0x00000006 
+ 00023508  0x00005f87 branch  0x00007eb3 
+ 00023509  0x00005f8a call  0x00007166 
+ 00023510  0x00005f8b force  0x00000011 , 0x00000011 
+ 00023511  0x00005f8c call  0x00005c62 
+ 00023512  0x00005f8d setarg  0x0000000d 
+ 00023513  0x00005f8e istore  0x00000001 , 0x00000005 
+ 00023514  0x00005f8f branch  0x00007201 
+ 00023515  0x00005f93 fetch  0x00000001 , 0x000044c4 
+ 00023516  0x00005f94 rtneq  0x000000ff 
+ 00023517  0x00005f95 arg  0x00000003 , 0x00000002 
+ 00023518  0x00005f96 isub  0x00000002 , 0x0000003e 
+ 00023519  0x00005f97 nrtn  0x00000002 
+ 00023520  0x00005f98 arg  0x0000000a , 0x00000007 
+ 00023521  0x00005f99 call  0x00007f16 
+ 00023522  0x00005f9a nrtn  0x00000034 
+ 00023523  0x00005f9b branch  0x00005ba9 
+ 00023524  0x00005f9e bpatchx  0x00000078 , 0x0000402f 
+ 00023525  0x00005f9f fetch  0x00000001 , 0x000044c4 
+ 00023526  0x00005fa0 beq  0x00000000 , 0x00005bef 
+ 00023527  0x00005fa1 beq  0x00000001 , 0x00005bf5 
+ 00023528  0x00005fa2 beq  0x00000002 , 0x00005bef 
+ 00023529  0x00005fa3 beq  0x00000003 , 0x00005bf7 
+ 00023530  0x00005fa4 beq  0x00000005 , 0x00005bfb 
+ 00023531  0x00005fa5 beq  0x00000007 , 0x00005c07 
+ 00023532  0x00005fa6 beq  0x00000008 , 0x00005c09 
+ 00023533  0x00005fa7 beq  0x00000009 , 0x00005c10 
+ 00023534  0x00005fa8 rtn 
+ 00023535  0x00005fac fetch  0x00000001 , 0x000044c5 
+ 00023536  0x00005fad rtnne  0x00000004 
+ 00023537  0x00005fae jam  0x000000ff , 0x000044c5 
+ 00023538  0x00005faf jam  0x000000ff , 0x000044c4 
+ 00023539  0x00005fb0 jam  0x0000003f , 0x00000a99 
+ 00023540  0x00005fb1 branch  0x00007d86 
+ 00023541  0x00005fb5 jam  0x00000002 , 0x000044c4 
+ 00023542  0x00005fb6 branch  0x00005b02 
+ 00023543  0x00005fb9 jam  0x00000004 , 0x000044c4 
+ 00023544  0x00005fba setarg  0x00017700 
+ 00023545  0x00005fbb arg  0x0000000a , 0x00000007 
+ 00023546  0x00005fbc branch  0x00007f08 
+ 00023547  0x00005fbf fetch  0x00000001 , 0x000044c5 
+ 00023548  0x00005fc0 beq  0x00000004 , 0x00005bfe 
+ 00023549  0x00005fc1 rtn 
+ 00023550  0x00005fc4 jam  0x00000007 , 0x000044c4 
+ 00023551  0x00005fc5 jam  0x00000029 , 0x00000a99 
+ 00023552  0x00005fc6 call  0x00007d86 
+ 00023553  0x00005fc7 call  0x00005b82 
+ 00023554  0x00005fc8 fetch  0x00000001 , 0x00004092 
+ 00023555  0x00005fc9 rtnne  0x0000000a 
+ 00023556  0x00005fca call  0x00005bb9 
+ 00023557  0x00005fcb rtn  0x00000028 
+ 00023558  0x00005fcc branch  0x00003410 
+ 00023559  0x00005fd0 jam  0x00000008 , 0x000044c4 
+ 00023560  0x00005fd1 branch  0x00005b8c 
+ 00023561  0x00005fd4 fetch  0x00000001 , 0x00004452 
+ 00023562  0x00005fd5 fetcht  0x00000001 , 0x00004459 
+ 00023563  0x00005fd6 iand  0x00000002 , 0x0000003f 
+ 00023564  0x00005fd7 isolate0  0x00000001 , 0x0000003f 
+ 00023565  0x00005fd8 branch  0x00005c12 , 0x00000001 
+ 00023566  0x00005fd9 jam  0x00000009 , 0x000044c4 
+ 00023567  0x00005fda branch  0x00005b98 
+ 00023568  0x00005fdd call  0x00005ba0 
+ 00023569  0x00005fde branch  0x00005c12 
+ 00023570  0x00005fe2 force  0x0000000a , 0x00000007 
+ 00023571  0x00005fe3 call  0x00007f07 
+ 00023572  0x00005fe4 jam  0x000000ff , 0x000044c5 
+ 00023573  0x00005fe5 jam  0x000000ff , 0x000044c4 
+ 00023574  0x00005fe6 jam  0x0000003e , 0x00000a99 
+ 00023575  0x00005fe7 branch  0x00007d86 
+ 00023576  0x00005fec bpatchx  0x00000079 , 0x0000402f 
+ 00023577  0x00005fed fetch  0x00000001 , 0x000044c6 
+ 00023578  0x00005fee rtnbit0  0x00000007 
+ 00023579  0x00005fef fetch  0x00000001 , 0x000044bf 
+ 00023580  0x00005ff0 rtnne  0x00000002 
+ 00023581  0x00005ff1 jam  0x00000000 , 0x000044bf 
+ 00023582  0x00005ff2 fetch  0x00000001 , 0x000044c1 
+ 00023583  0x00005ff3 beq  0x00000001 , 0x00005c58 
+ 00023584  0x00005ff4 beq  0x00000002 , 0x00005c5f 
+ 00023585  0x00005ff5 beq  0x00000003 , 0x00005c52 
+ 00023586  0x00005ff6 beq  0x00000006 , 0x00005c39 
+ 00023587  0x00005ff7 beq  0x00000007 , 0x00005c30 
+ 00023588  0x00005ff8 beq  0x00000008 , 0x00005c26 
+ 00023589  0x00005ff9 rtn 
+ 00023590  0x00005ffd fetch  0x00000001 , 0x00004663 
+ 00023591  0x00005ffe copy  0x0000003f , 0x00000007 
+ 00023592  0x00005fff increase  0x00000001 , 0x0000003f 
+ 00023593  0x00006000 store  0x00000001 , 0x00004663 
+ 00023594  0x00006001 fetch  0x00000004 , 0x000044c7 
+ 00023595  0x00006002 qisolate1  0x0000003f 
+ 00023596  0x00006003 setarg  0x00000080 
+ 00023597  0x00006004 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00023598  0x00006005 store  0x00000001 , 0x00004664 
+ 00023599  0x00006006 branch  0x00005c55 
+ 00023600  0x00006009 fetch  0x00000001 , 0x000044c2 
+ 00023601  0x0000600a jam  0x00000000 , 0x000044c2 
+ 00023602  0x0000600b beq  0x00000001 , 0x00005c35 
+ 00023603  0x0000600c jam  0x00000002 , 0x000044bf 
+ 00023604  0x0000600d rtn 
+ 00023605  0x00006010 jam  0x00000031 , 0x00000a99 
+ 00023606  0x00006011 call  0x00007d86 
+ 00023607  0x00006012 jam  0x00000005 , 0x000044c4 
+ 00023608  0x00006013 branch  0x00005bd5 
+ 00023609  0x00006016 fetch  0x00000001 , 0x000009b9 
+ 00023610  0x00006017 beq  0x00000003 , 0x00005c3d 
+ 00023611  0x00006018 jam  0x00000002 , 0x000044bf 
+ 00023612  0x00006019 rtn 
+ 00023613  0x0000601c call  0x0000718d 
+ 00023614  0x00006020 fetch  0x00000001 , 0x000044c6 
+ 00023615  0x00006021 beq  0x00000083 , 0x00005c41 
+ 00023616  0x00006022 call  0x00005b18 
+ 00023617  0x00006024 call  0x0000717a 
+ 00023618  0x00006025 arg  0x00000af2 , 0x00000011 
+ 00023619  0x00006026 arg  0x00000a6e , 0x00000012 
+ 00023620  0x00006027 arg  0x00000010 , 0x00000039 
+ 00023621  0x00006028 call  0x00007f88 
+ 00023622  0x00006029 branch  0x00005c49 , 0x00000005 
+ 00023623  0x0000602b jam  0x0000000b , 0x0000047b 
+ 00023624  0x0000602c branch  0x00005b54 
+ 00023625  0x00006030 call  0x00007595 
+ 00023626  0x00006031 nbranch  0x00005c47 , 0x00000005 
+ 00023627  0x00006032 jam  0x00000001 , 0x00004429 
+ 00023628  0x00006033 fetch  0x00000001 , 0x000044c6 
+ 00023629  0x00006034 beq  0x00000081 , 0x00005c35 
+ 00023630  0x00006035 beq  0x00000083 , 0x00005c35 
+ 00023631  0x00006036 jam  0x00000002 , 0x000044bf 
+ 00023632  0x00006037 jam  0x00000007 , 0x000044c1 
+ 00023633  0x00006038 rtn 
+ 00023634  0x0000603b fetch  0x00000001 , 0x000044c6 
+ 00023635  0x0000603c beq  0x00000083 , 0x00005c56 
+ 00023636  0x0000603d jam  0x00000000 , 0x00004664 
+ 00023637  0x0000603f branch  0x00005b3d 
+ 00023638  0x00006045 jam  0x00000000 , 0x00004663 
+ 00023639  0x00006046 branch  0x00005b1b 
+ 00023640  0x0000604a jam  0x00000002 , 0x000044bf 
+ 00023641  0x0000604b fetch  0x00000001 , 0x000044c3 
+ 00023642  0x0000604c beq  0x00000003 , 0x00005c5c 
+ 00023643  0x0000604e rtn 
+ 00023644  0x00006051 jam  0x00000002 , 0x000044c1 
+ 00023645  0x00006052 jam  0x00000000 , 0x000009b9 
+ 00023646  0x00006053 branch  0x00007a99 
+ 00023647  0x00006056 jam  0x00000002 , 0x000044bf 
+ 00023648  0x00006057 jam  0x00000003 , 0x000044c1 
+ 00023649  0x00006058 branch  0x00005bcf 
+ 00023650  0x0000605d force  0x00000006 , 0x00000012 
+ 00023651  0x0000605e branch  0x00005847 
+ 00023652  0x00006063 fetch  0x00000001 , 0x000002db 
+ 00023653  0x00006064 beq  0x00000000 , 0x00005c7b 
+ 00023654  0x00006065 beq  0x00000001 , 0x00005c83 
+ 00023655  0x00006066 beq  0x00000002 , 0x00005c8e 
+ 00023656  0x00006067 beq  0x00000003 , 0x00005caa 
+ 00023657  0x00006068 beq  0x00000004 , 0x00005ce1 
+ 00023658  0x00006069 beq  0x00000005 , 0x00005ce6 
+ 00023659  0x0000606a beq  0x00000006 , 0x00005cea 
+ 00023660  0x0000606b beq  0x00000007 , 0x00005cf5 
+ 00023661  0x0000606c beq  0x00000008 , 0x00005c99 
+ 00023662  0x0000606d beq  0x00000009 , 0x00005cf5 
+ 00023663  0x0000606e beq  0x0000000a , 0x00005cef 
+ 00023664  0x0000606f beq  0x0000000b , 0x00005cf5 
+ 00023665  0x00006070 beq  0x0000000c , 0x00005c9f 
+ 00023666  0x00006071 beq  0x0000000d , 0x00005cf5 
+ 00023667  0x00006072 beq  0x00000012 , 0x00005ca6 
+ 00023668  0x00006073 beq  0x00000013 , 0x00005cf5 
+ 00023669  0x00006074 arg  0x00000002 , 0x00000011 
+ 00023670  0x00006075 arg  0x00000007 , 0x00000012 
+ 00023671  0x00006076 call  0x00005842 
+ 00023672  0x00006077 fetch  0x00000001 , 0x000002db 
+ 00023673  0x00006078 istore  0x00000001 , 0x00000005 
+ 00023674  0x00006079 rtn 
+ 00023675  0x0000607d ifetch  0x00000009 , 0x00000006 
+ 00023676  0x0000607e store  0x00000009 , 0x000043d3 
+ 00023677  0x0000607f ifetch  0x00000002 , 0x00000006 
+ 00023678  0x00006080 store  0x00000002 , 0x0000045f 
+ 00023679  0x00006081 fetch  0x00000001 , 0x0000043f 
+ 00023680  0x00006082 set1  0x00000005 , 0x0000003f 
+ 00023681  0x00006083 store  0x00000001 , 0x0000043f 
+ 00023682  0x00006084 rtn 
+ 00023683  0x00006087 ifetch  0x00000005 , 0x00000006 
+ 00023684  0x00006088 store  0x00000005 , 0x000043ce 
+ 00023685  0x00006089 ifetch  0x00000002 , 0x00000006 
+ 00023686  0x0000608a store  0x00000002 , 0x0000045f 
+ 00023687  0x0000608b fetcht  0x00000002 , 0x00000459 
+ 00023688  0x0000608c isub  0x00000002 , 0x0000003e 
+ 00023689  0x0000608d nbranch  0x00005c8e , 0x00000002 
+ 00023690  0x0000608e fetch  0x00000001 , 0x0000043f 
+ 00023691  0x0000608f set1  0x00000006 , 0x0000003f 
+ 00023692  0x00006090 store  0x00000001 , 0x0000043f 
+ 00023693  0x00006091 rtn 
+ 00023694  0x00006095 setarg  0x00000014 
+ 00023695  0x00006096 store  0x00000002 , 0x0000046d 
+ 00023696  0x00006097 store  0x00000002 , 0x000044ba 
+ 00023697  0x00006098 rtn 
+ 00023698  0x0000609b arg  0x00000013 , 0x00000013 
+ 00023699  0x0000609f arg  0x00000002 , 0x00000011 
+ 00023700  0x000060a0 arg  0x00000002 , 0x00000012 
+ 00023701  0x000060a1 call  0x00005842 
+ 00023702  0x000060a2 copy  0x00000013 , 0x0000003f 
+ 00023703  0x000060a3 istore  0x00000001 , 0x00000005 
+ 00023704  0x000060a4 rtn 
+ 00023705  0x000060a9 arg  0x00000009 , 0x00000011 
+ 00023706  0x000060aa arg  0x00000009 , 0x00000012 
+ 00023707  0x000060ab call  0x00005842 
+ 00023708  0x000060ac setarg  0x00000001 
+ 00023709  0x000060ad istore  0x00000008 , 0x00000005 
+ 00023710  0x000060ae rtn 
+ 00023711  0x000060b2 rtn  0x00000029 
+ 00023712  0x000060b4 arg  0x00000006 , 0x00000011 
+ 00023713  0x000060b5 arg  0x0000000c , 0x00000012 
+ 00023714  0x000060b6 call  0x00005842 
+ 00023715  0x000060b7 fetch  0x00000005 , 0x00004510 
+ 00023716  0x000060b8 istore  0x00000005 , 0x00000005 
+ 00023717  0x000060b9 rtn 
+ 00023718  0x000060bd arg  0x00000013 , 0x00000012 
+ 00023719  0x000060be branch  0x00005ca8 
+ 00023720  0x000060c2 arg  0x00000001 , 0x00000011 
+ 00023721  0x000060c3 branch  0x00005842 
+ 00023722  0x000060c7 ifetch  0x00000008 , 0x00000006 
+ 00023723  0x000060c8 store  0x00000008 , 0x000044cd 
+ 00023724  0x000060c9 ifetch  0x00000002 , 0x00000006 
+ 00023725  0x000060ca store  0x00000002 , 0x000044cb 
+ 00023726  0x000060cb ifetch  0x00000008 , 0x00000006 
+ 00023727  0x000060cc store  0x00000008 , 0x000044aa 
+ 00023728  0x000060cd ifetch  0x00000004 , 0x00000006 
+ 00023729  0x000060ce store  0x00000004 , 0x00004411 
+ 00023730  0x000060cf call  0x00005ccf 
+ 00023731  0x000060d0 bpatchx  0x0000007a , 0x0000402f 
+ 00023732  0x000060d1 fetch  0x00000001 , 0x000044c4 
+ 00023733  0x000060d2 beq  0x00000005 , 0x00005cbc 
+ 00023734  0x000060d3 fetch  0x00000001 , 0x000044e9 
+ 00023735  0x000060d4 bbit1  0x00000001 , 0x00005cbf 
+ 00023736  0x000060d5 fetch  0x00000001 , 0x00004217 
+ 00023737  0x000060d6 ncall  0x000067be , 0x00000034 
+ 00023738  0x000060d7 fetch  0x00000001 , 0x00004429 
+ 00023739  0x000060d8 beq  0x00000000 , 0x00005cc4 
+ 00023740  0x000060da jam  0x00000001 , 0x000044c5 
+ 00023741  0x000060db call  0x00005cdd 
+ 00023742  0x000060dc branch  0x000073a2 
+ 00023743  0x000060df jam  0x00000001 , 0x00004429 
+ 00023744  0x000060e0 arg  0x000044ea , 0x00000006 
+ 00023745  0x000060e1 arg  0x00004419 , 0x00000005 
+ 00023746  0x000060e2 call  0x00007ebf 
+ 00023747  0x000060e3 branch  0x00005cbc 
+ 00023748  0x000060e7 bpatchx  0x0000007b , 0x0000402f 
+ 00023749  0x000060e8 jam  0x00000000 , 0x000044c5 
+ 00023750  0x000060e9 jam  0x00000000 , 0x000044c4 
+ 00023751  0x000060ea jam  0x00000041 , 0x00000a99 
+ 00023752  0x000060eb branch  0x00007d86 
+ 00023753  0x000060ee arg  0x00000002 , 0x00000011 
+ 00023754  0x000060ef arg  0x0000000d , 0x00000012 
+ 00023755  0x000060f0 call  0x00005842 
+ 00023756  0x000060f1 setarg  0x00000006 
+ 00023757  0x000060f2 istore  0x00000001 , 0x00000005 
+ 00023758  0x000060f3 rtn 
+ 00023759  0x000060f6 arg  0x000044b2 , 0x00000005 
+ 00023760  0x000060f7 force  0x00000008 , 0x00000039 
+ 00023761  0x000060f8 call  0x0000630d 
+ 00023762  0x000060f9 arg  0x00004415 , 0x00000005 
+ 00023763  0x000060fa force  0x00000004 , 0x00000039 
+ 00023764  0x000060fb call  0x0000630d 
+ 00023765  0x000060fc arg  0x0000000d , 0x00000011 
+ 00023766  0x000060fd arg  0x00000004 , 0x00000012 
+ 00023767  0x000060fe call  0x00005842 
+ 00023768  0x000060ff fetch  0x00000008 , 0x000044b2 
+ 00023769  0x00006100 istore  0x00000008 , 0x00000005 
+ 00023770  0x00006101 fetch  0x00000004 , 0x00004415 
+ 00023771  0x00006102 istore  0x00000004 , 0x00000005 
+ 00023772  0x00006103 rtn 
+ 00023773  0x00006106 arg  0x00000005 , 0x00000012 
+ 00023774  0x00006107 branch  0x00005ca8 
+ 00023775  0x0000610a arg  0x00000006 , 0x00000012 
+ 00023776  0x0000610b branch  0x00005ca8 
+ 00023777  0x0000610f ifetch  0x00000008 , 0x00000006 
+ 00023778  0x00006110 store  0x00000008 , 0x000044b2 
+ 00023779  0x00006111 ifetch  0x00000004 , 0x00000006 
+ 00023780  0x00006112 store  0x00000004 , 0x00004415 
+ 00023781  0x00006113 branch  0x000073a2 
+ 00023782  0x00006116 fetch  0x00000001 , 0x0000043f 
+ 00023783  0x00006117 set1  0x00000004 , 0x0000003f 
+ 00023784  0x00006118 store  0x00000001 , 0x0000043f 
+ 00023785  0x00006119 rtn 
+ 00023786  0x0000611c rtn  0x00000029 
+ 00023787  0x0000611d jam  0x00000032 , 0x00000a99 
+ 00023788  0x0000611e call  0x00007d86 
+ 00023789  0x0000611f jam  0x00000004 , 0x000044c5 
+ 00023790  0x00006120 branch  0x00005cdf 
+ 00023791  0x00006123 jam  0x00000002 , 0x000044c5 
+ 00023792  0x00006124 call  0x00005cf3 
+ 00023793  0x00006125 jam  0x00000033 , 0x00000a99 
+ 00023794  0x00006126 branch  0x00007d86 
+ 00023795  0x00006129 arg  0x0000000b , 0x00000012 
+ 00023796  0x0000612a branch  0x00005ca8 
+ 00023797  0x00006132 rtn 
+ 00023798  0x0000613a rtn  0x0000002b 
+ 00023799  0x0000613c bpatchx  0x0000007c , 0x0000402f 
+ 00023800  0x0000613d setarg  0x00000000 
+ 00023801  0x0000613e store  0x00000001 , 0x00000048 
+ 00023802  0x0000613f store  0x00000001 , 0x00000055 
+ 00023803  0x00006140 store  0x00000001 , 0x00000078 
+ 00023804  0x00006141 store  0x00000001 , 0x0000007c 
+ 00023805  0x00006142 store  0x00000001 , 0x00004158 
+ 00023806  0x00006143 store  0x00000001 , 0x000004d7 
+ 00023807  0x00006144 store  0x00000001 , 0x0000016d 
+ 00023808  0x00006145 store  0x00000001 , 0x000009b5 
+ 00023809  0x00006146 jam  0x00000000 , 0x0000455b 
+ 00023810  0x00006147 jam  0x00000000 , 0x00000229 
+ 00023811  0x00006148 jam  0x00000000 , 0x000004d8 
+ 00023812  0x0000614a jam  0x00000000 , 0x000009b5 
+ 00023813  0x0000614b jam  0x00000000 , 0x000009b4 
+ 00023814  0x0000614c jam  0x00000000 , 0x000004d1 
+ 00023815  0x0000614f rtn 
+ 00023816  0x00006152 bpatchx  0x0000007d , 0x0000402f 
+ 00023817  0x00006153 call  0x000062ff , 0x00000029 
+ 00023818  0x00006154 ncall  0x00006303 , 0x00000029 
+ 00023819  0x00006155 call  0x000062bc 
+ 00023820  0x00006156 nrtn  0x00000034 
+ 00023821  0x00006157 fetch  0x00000001 , 0x0000004c 
+ 00023822  0x00006158 rtnbit0  0x00000006 
+ 00023823  0x00006159 set0  0x00000006 , 0x0000003f 
+ 00023824  0x0000615a set0  0x00000001 , 0x00000000 
+ 00023825  0x0000615b store  0x00000001 , 0x0000004c 
+ 00023826  0x0000615c fetch  0x00000001 , 0x00000551 
+ 00023827  0x0000615d fetcht  0x00000001 , 0x0000004c 
+ 00023828  0x0000615e isolate1  0x00000000 , 0x0000003f 
+ 00023829  0x0000615f setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00023830  0x00006160 storet  0x00000001 , 0x0000004c 
+ 00023831  0x00006161 and_into  0x00000002 , 0x00000002 
+ 00023832  0x00006162 storet  0x00000001 , 0x0000007f 
+ 00023833  0x00006163 fetcht  0x00000001 , 0x0000004c 
+ 00023834  0x00006164 rshift  0x0000003f , 0x0000003f 
+ 00023835  0x00006165 store  0x00000001 , 0x0000007d 
+ 00023836  0x00006166 bpatchx  0x0000007e , 0x0000402f 
+ 00023837  0x00006167 fetch  0x00000001 , 0x0000007d 
+ 00023838  0x00006168 beq  0x0000007f , 0x00005d66 
+ 00023839  0x00006169 beq  0x00000003 , 0x00005db1 
+ 00023840  0x0000616a beq  0x00000004 , 0x00005dc2 
+ 00023841  0x0000616b beq  0x0000003c , 0x00005d59 
+ 00023842  0x0000616c beq  0x00000005 , 0x00005d55 
+ 00023843  0x0000616d beq  0x0000000f , 0x00005fa8 
+ 00023844  0x0000616e beq  0x00000010 , 0x00005e24 
+ 00023845  0x0000616f beq  0x00000023 , 0x00005e42 
+ 00023846  0x00006170 beq  0x00000039 , 0x00005fc1 
+ 00023847  0x00006171 beq  0x00000038 , 0x00005fbc 
+ 00023848  0x00006172 beq  0x00000031 , 0x00005e27 
+ 00023849  0x00006173 beq  0x00000037 , 0x00005eb0 
+ 00023850  0x00006174 beq  0x00000027 , 0x00005eac 
+ 00023851  0x00006175 beq  0x00000033 , 0x00005ea9 
+ 00023852  0x00006176 beq  0x00000025 , 0x00005eae 
+ 00023853  0x00006177 beq  0x00000026 , 0x00005e3e 
+ 00023854  0x00006178 beq  0x00000007 , 0x00005e36 
+ 00023855  0x00006179 beq  0x0000002d , 0x00005e2d 
+ 00023856  0x0000617a beq  0x0000002e , 0x00005e2e 
+ 00023857  0x0000617b beq  0x00000001 , 0x00005ea5 
+ 00023858  0x0000617c beq  0x00000002 , 0x00005e90 
+ 00023859  0x0000617d beq  0x00000028 , 0x00005fb3 
+ 00023860  0x0000617e beq  0x00000009 , 0x00005e86 
+ 00023861  0x0000617f beq  0x0000000b , 0x00005e5f 
+ 00023862  0x00006180 beq  0x00000008 , 0x00005e43 
+ 00023863  0x00006181 beq  0x0000000c , 0x00005e6a 
+ 00023864  0x00006182 beq  0x0000001f , 0x00005e3a 
+ 00023865  0x00006183 beq  0x00000020 , 0x00005e3c 
+ 00023866  0x00006184 beq  0x00000021 , 0x00005eca 
+ 00023867  0x00006185 beq  0x00000022 , 0x00005eca 
+ 00023868  0x00006186 beq  0x00000035 , 0x00005ecb 
+ 00023869  0x00006187 beq  0x00000036 , 0x00005ecc 
+ 00023870  0x00006188 beq  0x00000024 , 0x00005eca 
+ 00023871  0x00006189 beq  0x00000034 , 0x00005ecd 
+ 00023872  0x0000618a beq  0x00000017 , 0x00005ed6 
+ 00023873  0x0000618b beq  0x00000011 , 0x00005ef2 
+ 00023874  0x0000618c beq  0x00000012 , 0x00005ef6 
+ 00023875  0x0000618d beq  0x00000013 , 0x00005ef8 
+ 00023876  0x0000618e beq  0x0000000d , 0x00005f0a 
+ 00023877  0x0000618f beq  0x0000000e , 0x00005f0a 
+ 00023878  0x00006190 beq  0x0000002f , 0x00005eaa 
+ 00023879  0x00006191 beq  0x00000030 , 0x00005f0a 
+ 00023880  0x00006192 beq  0x0000000a , 0x00005f0a 
+ 00023881  0x00006193 beq  0x00000018 , 0x00005f0b 
+ 00023882  0x00006194 beq  0x00000032 , 0x00005f0a 
+ 00023883  0x00006195 beq  0x0000003d , 0x00005f10 
+ 00023884  0x00006196 beq  0x0000003e , 0x00005f51 
+ 00023885  0x00006197 beq  0x0000003f , 0x00005f4b 
+ 00023886  0x00006198 beq  0x00000040 , 0x00005f78 
+ 00023887  0x00006199 beq  0x00000041 , 0x00005f8a 
+ 00023888  0x0000619a beq  0x00000006 , 0x00005fa7 
+ 00023889  0x0000619b beq  0x0000003a , 0x00005d57 
+ 00023890  0x0000619f jam  0x00000019 , 0x0000007e 
+ 00023891  0x000061a1 jam  0x00000004 , 0x0000007c 
+ 00023892  0x000061a2 rtn 
+ 00023893  0x000061a5 jam  0x00000006 , 0x0000007c 
+ 00023894  0x000061a6 rtn 
+ 00023895  0x000061a9 jam  0x0000003b , 0x0000007c 
+ 00023896  0x000061aa rtn 
+ 00023897  0x000061ad fetch  0x00000004 , 0x00000552 
+ 00023898  0x000061ae lshift  0x0000003f , 0x0000003f 
+ 00023899  0x000061af store  0x00000004 , 0x000040d2 
+ 00023900  0x000061b0 fetch  0x00000001 , 0x00000556 
+ 00023901  0x000061b1 store  0x00000001 , 0x000040d9 
+ 00023902  0x000061b2 fetch  0x00000005 , 0x00000557 
+ 00023903  0x000061b3 store  0x00000005 , 0x000040e7 
+ 00023904  0x000061b4 fetch  0x00000005 , 0x0000055c 
+ 00023905  0x000061b5 istore  0x00000005 , 0x00000005 
+ 00023906  0x000061b6 fetch  0x00000001 , 0x00000031 
+ 00023907  0x000061b7 set1  0x00000003 , 0x0000003f 
+ 00023908  0x000061b8 store  0x00000001 , 0x00000031 
+ 00023909  0x000061b9 rtn 
+ 00023910  0x000061bb bpatchx  0x0000007f , 0x0000402f 
+ 00023911  0x000061bc fetch  0x00000001 , 0x00000552 
+ 00023912  0x000061bd set1  0x00000007 , 0x0000003f 
+ 00023913  0x000061be store  0x00000001 , 0x0000007d 
+ 00023914  0x000061bf beq  0x00000081 , 0x00005d88 
+ 00023915  0x000061c0 beq  0x00000082 , 0x00005d8d 
+ 00023916  0x000061c1 beq  0x00000095 , 0x00005eb1 
+ 00023917  0x000061c2 beq  0x00000096 , 0x00005eca 
+ 00023918  0x000061c3 beq  0x0000008b , 0x00005ebf 
+ 00023919  0x000061c4 beq  0x00000083 , 0x00005da5 
+ 00023920  0x000061c5 beq  0x00000084 , 0x00005da7 
+ 00023921  0x000061c6 beq  0x00000090 , 0x00005d7a 
+ 00023922  0x000061c7 beq  0x00000097 , 0x00005d9e 
+ 00023923  0x000061c8 beq  0x00000098 , 0x00005da3 
+ 00023924  0x000061c9 beq  0x00000099 , 0x00005d7d 
+ 00023925  0x000061ca beq  0x0000009a , 0x00005d80 
+ 00023926  0x000061cb rtneq  0x00000084 
+ 00023927  0x000061cf jam  0x00000082 , 0x0000007c 
+ 00023928  0x000061d0 jam  0x00000019 , 0x0000007e 
+ 00023929  0x000061d2 rtn 
+ 00023930  0x000061d4 jam  0x00000082 , 0x0000007c 
+ 00023931  0x000061d5 jam  0x0000002e , 0x0000007e 
+ 00023932  0x000061d6 rtn 
+ 00023933  0x000061d9 call  0x00005d82 
+ 00023934  0x000061da jam  0x0000009a , 0x0000007c 
+ 00023935  0x000061db rtn 
+ 00023936  0x000061de call  0x00005d82 
+ 00023937  0x000061df branch  0x00005d86 
+ 00023938  0x000061e2 arg  0x0000465e , 0x00000005 
+ 00023939  0x000061e3 fetch  0x00000003 , 0x00000553 
+ 00023940  0x000061e4 istore  0x00000003 , 0x00000005 
+ 00023941  0x000061e5 rtn 
+ 00023942  0x000061e8 branch  0x000076d8 , 0x00000001 
+ 00023943  0x000061e9 rtn 
+ 00023944  0x000061eb fetch  0x00000001 , 0x00000554 
+ 00023945  0x000061ec set1  0x00000007 , 0x0000003f 
+ 00023946  0x000061ed store  0x00000001 , 0x000004c9 
+ 00023947  0x000061ee beq  0x0000008b , 0x00005d92 
+ 00023948  0x000061ef rtn 
+ 00023949  0x000061f3 fetch  0x00000001 , 0x00000554 
+ 00023950  0x000061f4 set1  0x00000007 , 0x0000003f 
+ 00023951  0x000061f5 store  0x00000001 , 0x000004c9 
+ 00023952  0x000061f6 beq  0x0000008b , 0x00005d96 
+ 00023953  0x000061f7 rtn 
+ 00023954  0x000061fa fetch  0x00000001 , 0x0000415a 
+ 00023955  0x000061fb fetcht  0x00000001 , 0x0000004c 
+ 00023956  0x000061fc nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00023957  0x000061fd storet  0x00000001 , 0x0000004c 
+ 00023958  0x000061ff fetch  0x00000001 , 0x00000030 
+ 00023959  0x00006200 rtnbit0  0x00000005 
+ 00023960  0x00006201 set0  0x00000005 , 0x0000003f 
+ 00023961  0x00006202 store  0x00000001 , 0x00000030 
+ 00023962  0x00006203 fetch  0x00000001 , 0x000004d7 
+ 00023963  0x00006204 nrtn  0x00000034 
+ 00023964  0x00006205 jam  0x00000031 , 0x0000007c 
+ 00023965  0x00006206 rtn 
+ 00023966  0x00006209 nbranch  0x00005da1 , 0x00000029 
+ 00023967  0x0000620a jam  0x00000012 , 0x0000007c 
+ 00023968  0x0000620b branch  0x000062eb 
+ 00023969  0x0000620e jam  0x00000097 , 0x0000007c 
+ 00023970  0x0000620f rtn 
+ 00023971  0x00006214 call  0x000062eb 
+ 00023972  0x00006215 branch  0x00005ffe 
+ 00023973  0x00006218 jam  0x00000084 , 0x0000007c 
+ 00023974  0x00006219 rtn 
+ 00023975  0x0000621c fetcht  0x00000001 , 0x00000555 
+ 00023976  0x0000621d and  0x00000002 , 0x00000001 , 0x00000002 
+ 00023977  0x0000621e storet  0x00000001 , 0x000004d0 
+ 00023978  0x0000621f fetch  0x00000001 , 0x000041ce 
+ 00023979  0x00006220 bne  0x00000051 , 0x00005dad 
+ 00023980  0x00006221 jam  0x00000000 , 0x000041ce 
+ 00023981  0x00006223 fetch  0x00000001 , 0x00000055 
+ 00023982  0x00006224 rtnne  0x00000015 
+ 00023983  0x00006225 jam  0x00000004 , 0x00000055 
+ 00023984  0x00006226 branch  0x0000631b 
+ 00023985  0x00006229 bpatchx  0x00000080 , 0x00004030 
+ 00023986  0x0000622a fetch  0x00000001 , 0x00000552 
+ 00023987  0x0000622b store  0x00000001 , 0x000004c9 
+ 00023988  0x0000622c beq  0x00000033 , 0x00005dd8 
+ 00023989  0x0000622d beq  0x00000008 , 0x00005de7 
+ 00023990  0x0000622e beq  0x0000000f , 0x00005dee 
+ 00023991  0x0000622f beq  0x00000010 , 0x00005df4 
+ 00023992  0x00006230 beq  0x00000011 , 0x00005df5 
+ 00023993  0x00006231 beq  0x00000012 , 0x00005dfd 
+ 00023994  0x00006232 beq  0x00000018 , 0x00005e13 
+ 00023995  0x00006233 beq  0x00000017 , 0x00005e16 
+ 00023996  0x00006234 beq  0x00000013 , 0x00005dcf 
+ 00023997  0x00006236 beq  0x0000003d , 0x00005f1e 
+ 00023998  0x00006237 beq  0x0000003e , 0x00005f6a 
+ 00023999  0x00006238 beq  0x00000040 , 0x00005f20 
+ 00024000  0x00006239 beq  0x00000041 , 0x00005f3d 
+ 00024001  0x0000623a rtn 
+ 00024002  0x0000623d bpatchx  0x00000081 , 0x00004030 
+ 00024003  0x0000623e fetch  0x00000001 , 0x00000552 
+ 00024004  0x0000623f store  0x00000001 , 0x000004c9 
+ 00024005  0x00006240 beq  0x00000001 , 0x00005e0a 
+ 00024006  0x00006241 beq  0x00000033 , 0x00005de2 
+ 00024007  0x00006242 beq  0x0000000b , 0x00005dfe 
+ 00024008  0x00006243 beq  0x00000008 , 0x00005e01 
+ 00024009  0x00006244 beq  0x00000013 , 0x00005dd2 
+ 00024010  0x00006246 beq  0x00000040 , 0x00005e0b 
+ 00024011  0x00006247 beq  0x00000041 , 0x00005e0e 
+ 00024012  0x00006248 beq  0x00000018 , 0x00005e11 
+ 00024013  0x00006249 beq  0x00000017 , 0x00005e22 
+ 00024014  0x0000624a rtn 
+ 00024015  0x0000624d jam  0x00000020 , 0x00000a99 
+ 00024016  0x0000624e call  0x00007d86 
+ 00024017  0x0000624f branch  0x000021dc 
+ 00024018  0x00006251 jam  0x00000019 , 0x00000a99 
+ 00024019  0x00006252 call  0x00007d86 
+ 00024020  0x00006253 jam  0x00000002 , 0x0000455b 
+ 00024021  0x00006254 setarg  0x00000050 
+ 00024022  0x00006255 arg  0x00000006 , 0x00000007 
+ 00024023  0x00006256 branch  0x00007f08 
+ 00024024  0x0000625c fetch  0x00000001 , 0x000004d1 
+ 00024025  0x0000625d set1  0x00000000 , 0x0000003f 
+ 00024026  0x0000625e store  0x00000001 , 0x000004d1 
+ 00024027  0x0000625f jam  0x00000001 , 0x00000a99 
+ 00024028  0x00006260 call  0x00007d86 
+ 00024029  0x00006261 jam  0x0000008b , 0x0000007c 
+ 00024030  0x00006265 fetch  0x00000001 , 0x00000055 
+ 00024031  0x00006266 bne  0x00000005 , 0x00005d07 
+ 00024032  0x00006269 jam  0x00000006 , 0x00000055 
+ 00024033  0x0000626a rtn 
+ 00024034  0x00006273 jam  0x0000000b , 0x000004ca 
+ 00024035  0x00006274 jam  0x00000007 , 0x0000007c 
+ 00024036  0x00006276 jam  0x00000000 , 0x00000055 
+ 00024037  0x00006278 branch  0x00005d07 , 0x00000001 
+ 00024038  0x00006279 rtn 
+ 00024039  0x0000627c fetch  0x00000001 , 0x000041bd 
+ 00024040  0x0000627d nrtn  0x00000034 
+ 00024041  0x0000627e call  0x0000244f 
+ 00024042  0x0000627f call  0x00005ffc 
+ 00024043  0x00006280 rtn  0x00000029 
+ 00024044  0x00006281 set1  0x00000021 , 0x00000000 
+ 00024045  0x00006282 rtn 
+ 00024046  0x00006285 nrtn  0x00000029 
+ 00024047  0x00006286 jam  0x00000010 , 0x0000007c 
+ 00024048  0x00006287 fetch  0x00000001 , 0x0000004c 
+ 00024049  0x00006288 rtnbit0  0x00000002 
+ 00024050  0x00006289 jam  0x00000012 , 0x0000007c 
+ 00024051  0x0000628a rtn 
+ 00024052  0x0000628d branch  0x00005ffe 
+ 00024053  0x00006290 call  0x00006059 
+ 00024054  0x00006291 fetch  0x00000001 , 0x00000030 
+ 00024055  0x00006292 rtnbit1  0x00000004 
+ 00024056  0x00006293 jam  0x00000031 , 0x0000007c 
+ 00024057  0x00006294 fetch  0x00000001 , 0x00000055 
+ 00024058  0x00006295 rtnne  0x0000000a 
+ 00024059  0x00006296 jam  0x0000000b , 0x00000055 
+ 00024060  0x00006297 rtn 
+ 00024061  0x000062a1 rtn 
+ 00024062  0x000062a5 jam  0x00000007 , 0x0000007c 
+ 00024063  0x000062a6 jam  0x00000013 , 0x000004ca 
+ 00024064  0x000062a7 rtn 
+ 00024065  0x000062aa fetch  0x00000001 , 0x00000553 
+ 00024066  0x000062ab beq  0x00000006 , 0x00005e07 
+ 00024067  0x000062ac rtnne  0x00000018 
+ 00024068  0x000062ad jam  0x00000018 , 0x000004ca 
+ 00024069  0x000062ae jam  0x00000007 , 0x0000007c 
+ 00024070  0x000062af rtn 
+ 00024071  0x000062b1 jam  0x00000006 , 0x000004ca 
+ 00024072  0x000062b2 jam  0x00000007 , 0x0000007c 
+ 00024073  0x000062b3 rtn 
+ 00024074  0x000062b6 rtn 
+ 00024075  0x000062b9 jam  0x00000000 , 0x000009ae 
+ 00024076  0x000062ba jam  0x00000007 , 0x0000007c 
+ 00024077  0x000062bb branch  0x00005d07 
+ 00024078  0x000062be jam  0x00000000 , 0x000009ae 
+ 00024079  0x000062bf jam  0x00000007 , 0x0000007c 
+ 00024080  0x000062c0 branch  0x00005d07 
+ 00024081  0x000062c2 jam  0x00000024 , 0x00000a99 
+ 00024082  0x000062c3 branch  0x00007d86 
+ 00024083  0x000062c6 jam  0x00000023 , 0x00000a99 
+ 00024084  0x000062c7 call  0x00007d86 
+ 00024085  0x000062c8 branch  0x000026e9 
+ 00024086  0x000062cb jam  0x00000022 , 0x00000a99 
+ 00024087  0x000062cc call  0x00007d86 
+ 00024088  0x000062cd setarg  0x00000000 
+ 00024089  0x000062ce store  0x00000002 , 0x00000075 
+ 00024090  0x000062cf fetch  0x00000002 , 0x000041e3 
+ 00024091  0x000062d0 lshift  0x0000003f , 0x0000003f 
+ 00024092  0x000062d1 store  0x00000002 , 0x00000032 
+ 00024093  0x000062d2 fetch  0x00000001 , 0x000041e5 
+ 00024094  0x000062d3 store  0x00000001 , 0x00000073 
+ 00024095  0x000062d4 fetch  0x00000001 , 0x000041e7 
+ 00024096  0x000062d5 store  0x00000001 , 0x00000074 
+ 00024097  0x000062d6 branch  0x000026c6 
+ 00024098  0x000062d9 jam  0x00000021 , 0x00000a99 
+ 00024099  0x000062da branch  0x00007d86 
+ 00024100  0x000062dd fetcht  0x00000001 , 0x00000552 
+ 00024101  0x000062de storet  0x00000001 , 0x00000054 
+ 00024102  0x000062df branch  0x00005e38 
+ 00024103  0x000062e2 fetch  0x00000001 , 0x000004d1 
+ 00024104  0x000062e3 set1  0x00000002 , 0x0000003f 
+ 00024105  0x000062e4 store  0x00000001 , 0x000004d1 
+ 00024106  0x000062e5 rtnbit1  0x00000003 
+ 00024107  0x000062e6 jam  0x00000031 , 0x0000007c 
+ 00024108  0x000062e7 branch  0x00005d07 
+ 00024109  0x000062ec rtn 
+ 00024110  0x000062ef fetch  0x00000001 , 0x000040d0 
+ 00024111  0x000062f0 fetcht  0x00000001 , 0x00000552 
+ 00024112  0x000062f1 isub  0x00000002 , 0x0000003e 
+ 00024113  0x000062f3 branch  0x00005e38 , 0x00000002 
+ 00024114  0x000062f4 jam  0x00000004 , 0x0000007c 
+ 00024115  0x000062f5 jam  0x0000001f , 0x0000007e 
+ 00024116  0x000062f6 jam  0x0000002e , 0x0000007d 
+ 00024117  0x000062f7 rtn 
+ 00024118  0x000062fa call  0x00006157 
+ 00024119  0x000062fb branch  0x00005e38 
+ 00024120  0x000062fe jam  0x00000003 , 0x0000007c 
+ 00024121  0x000062ff rtn 
+ 00024122  0x00006302 jam  0x00000021 , 0x0000007c 
+ 00024123  0x00006303 rtn 
+ 00024124  0x00006306 jam  0x00000022 , 0x0000007c 
+ 00024125  0x00006307 rtn 
+ 00024126  0x0000630a fetch  0x00000001 , 0x00000055 
+ 00024127  0x0000630b rtneq  0x00000013 
+ 00024128  0x0000630d jam  0x00000002 , 0x00000055 
+ 00024129  0x0000630f rtn 
+ 00024130  0x00006313 rtn 
+ 00024131  0x00006316 call  0x00005ff9 
+ 00024132  0x00006317 jam  0x00000001 , 0x000004d4 
+ 00024133  0x00006318 jam  0x0000000a , 0x00000a99 
+ 00024134  0x00006319 call  0x00007d86 
+ 00024135  0x0000631b call  0x000062f3 
+ 00024136  0x0000631c nbranch  0x00006001 , 0x00000001 
+ 00024137  0x0000631e nbranch  0x00005e4e , 0x00000029 
+ 00024138  0x0000631f jam  0x00000004 , 0x0000007c 
+ 00024139  0x00006320 jam  0x00000008 , 0x0000007d 
+ 00024140  0x00006321 jam  0x00000023 , 0x0000007e 
+ 00024141  0x00006322 rtn 
+ 00024142  0x00006324 fetch  0x00000001 , 0x0000004b 
+ 00024143  0x00006325 set1  0x00000002 , 0x0000003f 
+ 00024144  0x00006326 store  0x00000001 , 0x0000004b 
+ 00024145  0x00006327 rtn 
+ 00024146  0x0000632b fetcht  0x00000001 , 0x0000004c 
+ 00024147  0x0000632c nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00024148  0x0000632d storet  0x00000001 , 0x0000004c 
+ 00024149  0x0000632e rtn 
+ 00024150  0x00006332 fetch  0x00000001 , 0x0000007f 
+ 00024151  0x00006333 rshift  0x0000003f , 0x0000003f 
+ 00024152  0x00006334 and_into  0x00000001 , 0x0000003f 
+ 00024153  0x00006335 rtn 
+ 00024154  0x00006338 fetch  0x00000001 , 0x00004217 
+ 00024155  0x00006339 rtn  0x00000034 
+ 00024156  0x0000633a fetch  0x00000001 , 0x000009b5 
+ 00024157  0x0000633b call  0x000067b2 , 0x00000034 
+ 00024158  0x0000633c rtn 
+ 00024159  0x0000633f call  0x00005e5a 
+ 00024160  0x00006340 call  0x00005e56 
+ 00024161  0x00006341 store  0x00000001 , 0x000004d5 
+ 00024162  0x00006342 call  0x00005ff9 
+ 00024163  0x00006343 jam  0x0000000c , 0x0000007c 
+ 00024164  0x00006344 fetch  0x00000001 , 0x000041bd 
+ 00024165  0x00006345 nrtn  0x00000034 
+ 00024166  0x00006346 fetch  0x00000001 , 0x00000030 
+ 00024167  0x00006347 rtnbit1  0x00000006 
+ 00024168  0x00006348 jam  0x00000006 , 0x0000007e 
+ 00024169  0x00006349 branch  0x00005d53 
+ 00024170  0x0000634c arg  0x00000040 , 0x00000011 
+ 00024171  0x0000634d call  0x00007288 
+ 00024172  0x0000634e fetch  0x00000004 , 0x00000552 
+ 00024173  0x0000634f fetcht  0x00000004 , 0x00000592 
+ 00024174  0x00006350 isub  0x00000002 , 0x0000003e 
+ 00024175  0x00006351 branch  0x00005e73 , 0x00000005 
+ 00024176  0x00006352 jam  0x00000007 , 0x0000007c 
+ 00024177  0x00006353 jam  0x00000005 , 0x000004ca 
+ 00024178  0x00006354 rtn 
+ 00024179  0x00006356 call  0x00005e77 
+ 00024180  0x00006357 fetch  0x00000001 , 0x0000465a 
+ 00024181  0x00006358 branch  0x00005f3e , 0x00000034 
+ 00024182  0x00006359 rtn 
+ 00024183  0x0000635d call  0x00007386 
+ 00024184  0x0000635e call  0x000021b2 
+ 00024185  0x0000635f fetch  0x00000001 , 0x0000004b 
+ 00024186  0x00006360 isolate1  0x00000001 , 0x0000003f 
+ 00024187  0x00006361 set0  0x00000001 , 0x0000003f 
+ 00024188  0x00006362 store  0x00000001 , 0x0000004b 
+ 00024189  0x00006363 fetch  0x00000001 , 0x00000055 
+ 00024190  0x00006364 beq  0x00000019 , 0x00005e81 
+ 00024191  0x00006365 beq  0x00000018 , 0x00005e81 
+ 00024192  0x00006366 rtn 
+ 00024193  0x00006368 fetch  0x00000001 , 0x000009b5 
+ 00024194  0x00006369 rtnne  0x00000000 
+ 00024195  0x0000636a fetch  0x00000001 , 0x0000004c 
+ 00024196  0x0000636b rtnbit1  0x00000002 
+ 00024197  0x0000636c branch  0x000063b1 
+ 00024198  0x0000636f arg  0x00000552 , 0x00000011 
+ 00024199  0x00006370 arg  0x00000582 , 0x00000012 
+ 00024200  0x00006371 arg  0x00000562 , 0x00000005 
+ 00024201  0x00006372 call  0x00007352 
+ 00024202  0x00006373 arg  0x00000040 , 0x00000011 
+ 00024203  0x00006374 call  0x00006311 
+ 00024204  0x00006375 jam  0x0000000b , 0x0000007c 
+ 00024205  0x00006376 fetch  0x00000001 , 0x00000030 
+ 00024206  0x00006377 bbit0  0x00000006 , 0x00005ffc 
+ 00024207  0x00006378 rtn 
+ 00024208  0x0000637b fetch  0x00000002 , 0x0000015f 
+ 00024209  0x0000637c add  0x0000003f , 0xfffffffd , 0x00000039 
+ 00024210  0x0000637d fetcht  0x00000001 , 0x00000552 
+ 00024211  0x0000637e setarg  0x00000101 
+ 00024212  0x0000637f iadd  0x00000002 , 0x00000005 
+ 00024213  0x00006380 arg  0x00000554 , 0x00000006 
+ 00024214  0x00006381 call  0x00007f01 
+ 00024215  0x00006382 fetcht  0x00000001 , 0x00000053 
+ 00024216  0x00006383 fetch  0x00000001 , 0x00000553 
+ 00024217  0x00006384 isub  0x00000002 , 0x0000003f 
+ 00024218  0x00006385 sub  0x0000003f , 0x0000000e , 0x0000003e 
+ 00024219  0x00006386 branch  0x00005ea0 , 0x00000002 
+ 00024220  0x00006387 add  0x00000002 , 0x0000000e , 0x0000003f 
+ 00024221  0x00006388 store  0x00000001 , 0x00000053 
+ 00024222  0x00006389 jam  0x00000001 , 0x0000007c 
+ 00024223  0x0000638a rtn 
+ 00024224  0x0000638c fetch  0x00000001 , 0x0000004c 
+ 00024225  0x0000638d set1  0x00000003 , 0x0000003f 
+ 00024226  0x0000638e store  0x00000001 , 0x0000004c 
+ 00024227  0x0000638f bbit1  0x00000004 , 0x00006006 
+ 00024228  0x00006390 rtn 
+ 00024229  0x00006392 fetch  0x00000001 , 0x00000552 
+ 00024230  0x00006393 store  0x00000001 , 0x0000007d 
+ 00024231  0x00006394 jam  0x00000002 , 0x0000007c 
+ 00024232  0x00006395 rtn 
+ 00024233  0x00006398 branch  0x00005e38 
+ 00024234  0x0000639b jam  0x00000030 , 0x0000007c 
+ 00024235  0x0000639c rtn 
+ 00024236  0x0000639f jam  0x00000028 , 0x0000007c 
+ 00024237  0x000063a0 rtn 
+ 00024238  0x000063a3 jam  0x00000026 , 0x0000007c 
+ 00024239  0x000063a4 rtn 
+ 00024240  0x000063a9 rtn 
+ 00024241  0x000063ae fetch  0x00000002 , 0x00000032 
+ 00024242  0x000063af iforce  0x00000002 
+ 00024243  0x000063b0 fetch  0x00000001 , 0x00000553 
+ 00024244  0x000063b1 store  0x00000001 , 0x00000095 
+ 00024245  0x000063b2 imul32  0x00000002 , 0x00000002 
+ 00024246  0x000063b3 fetch  0x00000002 , 0x00000554 
+ 00024247  0x000063b4 lshift  0x0000003f , 0x0000003f 
+ 00024248  0x000063b5 store  0x00000002 , 0x00000096 
+ 00024249  0x000063b6 fetch  0x00000004 , 0x00000556 
+ 00024250  0x000063b7 lshift  0x0000003f , 0x0000003f 
+ 00024251  0x000063b8 store  0x00000004 , 0x00000091 
+ 00024252  0x000063ba deposit  0x00000002 
+ 00024253  0x000063bb store  0x00000002 , 0x00000098 
+ 00024254  0x000063bc rtn 
+ 00024255  0x000063be fetcht  0x00000001 , 0x0000415a 
+ 00024256  0x000063bf fetch  0x00000001 , 0x00000553 
+ 00024257  0x000063c0 ixor  0x00000002 , 0x0000003e 
+ 00024258  0x000063c1 nbranch  0x00005d77 , 0x00000005 
+ 00024259  0x000063c2 isolate1  0x00000000 , 0x0000003f 
+ 00024260  0x000063c3 fetch  0x00000001 , 0x0000004c 
+ 00024261  0x000063c4 setflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00024262  0x000063c5 store  0x00000001 , 0x0000004c 
+ 00024263  0x000063c6 jam  0x00000081 , 0x0000007c 
+ 00024264  0x000063c7 jam  0x0000008b , 0x0000007d 
+ 00024265  0x000063c8 rtn 
+ 00024266  0x000063cf rtn 
+ 00024267  0x000063d2 branch  0x00005e38 
+ 00024268  0x000063d6 branch  0x00005e38 
+ 00024269  0x000063db fetch  0x00000002 , 0x00000552 
+ 00024270  0x000063dc store  0x00000002 , 0x00000171 
+ 00024271  0x000063dd rtn 
+ 00024272  0x000063e0 fetch  0x00000002 , 0x00000555 
+ 00024273  0x000063e1 fetcht  0x00000001 , 0x00004172 
+ 00024274  0x000063e2 imul32  0x00000002 , 0x0000003f 
+ 00024275  0x000063e3 arg  0x00000640 , 0x00000002 
+ 00024276  0x000063e4 isub  0x00000002 , 0x0000003e 
+ 00024277  0x000063e6 rtn 
+ 00024278  0x000063e9 fetch  0x00000002 , 0x00000557 
+ 00024279  0x000063ea branch  0x00005ef0 , 0x00000034 
+ 00024280  0x000063eb call  0x00005ed0 
+ 00024281  0x000063ec branch  0x00005ef0 , 0x00000002 
+ 00024282  0x000063ed fetch  0x00000001 , 0x00004092 
+ 00024283  0x000063ee sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00024284  0x000063ef call  0x00003cd5 , 0x00000005 
+ 00024285  0x000063f0 fetch  0x00000001 , 0x00000030 
+ 00024286  0x000063f1 bbit1  0x00000001 , 0x00005ef0 
+ 00024287  0x000063f2 fetch  0x00000002 , 0x00000553 
+ 00024288  0x000063f3 lshift  0x0000003f , 0x0000003f 
+ 00024289  0x000063f4 store  0x00000002 , 0x00000075 
+ 00024290  0x000063f5 fetch  0x00000002 , 0x00000555 
+ 00024291  0x000063f6 lshift  0x0000003f , 0x0000003f 
+ 00024292  0x000063f7 store  0x00000002 , 0x00000032 
+ 00024293  0x000063f8 fetch  0x00000002 , 0x00000557 
+ 00024294  0x000063f9 store  0x00000001 , 0x00000073 
+ 00024295  0x000063fa iforce  0x00000002 
+ 00024296  0x000063fb fetch  0x00000002 , 0x00000559 
+ 00024297  0x000063fc store  0x00000001 , 0x00000074 
+ 00024298  0x000063fd isub  0x00000002 , 0x0000003e 
+ 00024299  0x000063fe nbranch  0x00005eed , 0x00000002 
+ 00024300  0x000063ff store  0x00000001 , 0x00000073 
+ 00024301  0x00006402 jam  0x00000003 , 0x0000007c 
+ 00024302  0x00006403 jam  0x00000017 , 0x0000007d 
+ 00024303  0x00006404 rtn 
+ 00024304  0x00006407 jam  0x00000024 , 0x0000007e 
+ 00024305  0x00006408 branch  0x00005d53 
+ 00024306  0x0000640b call  0x00005e38 
+ 00024307  0x0000640c call  0x00005ff9 
+ 00024308  0x0000640d call  0x0000728b 
+ 00024309  0x0000640e branch  0x000026b8 
+ 00024310  0x00006411 call  0x00005e38 
+ 00024311  0x00006412 branch  0x000026c0 
+ 00024312  0x00006416 fetch  0x00000004 , 0x00000552 
+ 00024313  0x00006417 lshift  0x0000003f , 0x0000003f 
+ 00024314  0x00006419 branch  0x00005f04 , 0x00000029 
+ 00024315  0x0000641a fetcht  0x00000001 , 0x000041bd 
+ 00024316  0x0000641b nbranch  0x00005f01 , 0x00000034 
+ 00024317  0x0000641d jam  0x00000004 , 0x0000007c 
+ 00024318  0x0000641e jam  0x00000013 , 0x0000007d 
+ 00024319  0x0000641f jam  0x00000024 , 0x0000007e 
+ 00024320  0x00006420 rtn 
+ 00024321  0x00006422 jam  0x00000034 , 0x0000007c 
+ 00024322  0x00006423 jam  0x00000000 , 0x00000055 
+ 00024323  0x00006424 branch  0x000021d9 
+ 00024324  0x00006427 call  0x000021d9 
+ 00024325  0x00006428 set1  0x00000022 , 0x00000000 
+ 00024326  0x00006429 fetch  0x00000001 , 0x0000016d 
+ 00024327  0x0000642a set0  0x00000002 , 0x0000003f 
+ 00024328  0x0000642b store  0x00000001 , 0x0000016d 
+ 00024329  0x0000642c branch  0x00005e38 
+ 00024330  0x00006435 rtn 
+ 00024331  0x00006439 jam  0x00000003 , 0x0000007c 
+ 00024332  0x0000643a jam  0x00000018 , 0x0000007d 
+ 00024333  0x0000643b jam  0x0000002e , 0x00000a99 
+ 00024334  0x0000643c call  0x00007d86 
+ 00024335  0x0000643d branch  0x000026e9 
+ 00024336  0x00006440 fetch  0x00000001 , 0x00000552 
+ 00024337  0x00006441 bne  0x00000001 , 0x00005f1c 
+ 00024338  0x00006442 fetch  0x00000001 , 0x00000553 
+ 00024339  0x00006443 bne  0x00000001 , 0x00005f1c 
+ 00024340  0x00006444 fetch  0x00000001 , 0x00000554 
+ 00024341  0x00006445 bne  0x00000030 , 0x00005f1c 
+ 00024342  0x00006446 call  0x000062fc 
+ 00024343  0x00006447 branch  0x00005f19 , 0x00000001 
+ 00024344  0x00006448 jam  0x00000001 , 0x000009ae 
+ 00024345  0x0000644a jam  0x00000003 , 0x0000007c 
+ 00024346  0x0000644b jam  0x0000003d , 0x0000007d 
+ 00024347  0x0000644c branch  0x00005d07 
+ 00024348  0x0000644f jam  0x00000024 , 0x0000007e 
+ 00024349  0x00006450 branch  0x00005d53 
+ 00024350  0x00006455 jam  0x0000003e , 0x0000007c 
+ 00024351  0x00006457 rtn 
+ 00024352  0x00006459 fetch  0x00000001 , 0x00004662 
+ 00024353  0x0000645a beq  0x00000001 , 0x00005f27 
+ 00024354  0x0000645b beq  0x00000002 , 0x00005f2b 
+ 00024355  0x0000645d call  0x000062fc 
+ 00024356  0x0000645e rtn  0x00000001 
+ 00024357  0x0000645f jam  0x00000008 , 0x000009ae 
+ 00024358  0x00006460 rtn 
+ 00024359  0x00006463 call  0x00007962 
+ 00024360  0x00006464 jam  0x00000035 , 0x00000a99 
+ 00024361  0x00006465 call  0x00007d86 
+ 00024362  0x00006466 branch  0x00005f23 
+ 00024363  0x0000646a call  0x000062fc 
+ 00024364  0x0000646b rtn  0x00000001 
+ 00024365  0x0000646c fetch  0x00000001 , 0x00004663 
+ 00024366  0x0000646d beq  0x00000013 , 0x00005f3b 
+ 00024367  0x0000646e increase  0x00000001 , 0x0000003f 
+ 00024368  0x0000646f store  0x00000001 , 0x00004663 
+ 00024369  0x00006473 jam  0x00000001 , 0x000009b0 
+ 00024370  0x00006474 jam  0x00000004 , 0x000009ae 
+ 00024371  0x00006475 fetch  0x00000001 , 0x00004663 
+ 00024372  0x00006476 copy  0x0000003f , 0x00000007 
+ 00024373  0x00006477 fetch  0x00000006 , 0x0000468a 
+ 00024374  0x00006478 qisolate1  0x0000003f 
+ 00024375  0x00006479 setarg  0x00000080 
+ 00024376  0x0000647a setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024377  0x0000647b store  0x00000001 , 0x00004664 
+ 00024378  0x0000647c rtn 
+ 00024379  0x0000647f jam  0x00000008 , 0x000009ae 
+ 00024380  0x00006480 rtn 
+ 00024381  0x00006483 call  0x00005f43 
+ 00024382  0x00006485 fetch  0x00000001 , 0x00004665 
+ 00024383  0x00006486 rtn  0x00000034 
+ 00024384  0x00006487 jam  0x00000000 , 0x00004665 
+ 00024385  0x00006488 jam  0x00000038 , 0x00000a99 
+ 00024386  0x00006489 branch  0x00007d86 
+ 00024387  0x0000648e call  0x000062fc 
+ 00024388  0x0000648f ncall  0x00007965 , 0x00000001 
+ 00024389  0x00006490 call  0x00007975 , 0x00000001 
+ 00024390  0x00006491 call  0x000062fc 
+ 00024391  0x00006492 rtn  0x00000001 
+ 00024392  0x00006493 jam  0x0000000c , 0x000009ae 
+ 00024393  0x00006494 jam  0x00000001 , 0x000009b0 
+ 00024394  0x00006495 rtn 
+ 00024395  0x00006498 arg  0x00000a6e , 0x00000005 
+ 00024396  0x00006499 arg  0x00000552 , 0x00000006 
+ 00024397  0x0000649a call  0x00007ebf 
+ 00024398  0x0000649b fetch  0x00000001 , 0x00004662 
+ 00024399  0x0000649c rtneq  0x00000002 
+ 00024400  0x0000649d branch  0x000076d8 
+ 00024401  0x000064a0 fetch  0x00000001 , 0x000009af 
+ 00024402  0x000064a1 beq  0x00000007 , 0x00005f55 
+ 00024403  0x000064a2 fetch  0x00000001 , 0x000009ae 
+ 00024404  0x000064a3 bne  0x00000001 , 0x00005f68 
+ 00024405  0x000064a5 fetch  0x00000001 , 0x000009b7 
+ 00024406  0x000064a6 sub  0x0000003f , 0x00000020 , 0x00000005 
+ 00024407  0x000064a7 nbranch  0x00005f68 , 0x00000002 
+ 00024408  0x000064a8 arg  0x000009c6 , 0x00000005 
+ 00024409  0x000064a9 iadd  0x00000005 , 0x00000005 
+ 00024410  0x000064aa fetch  0x00000008 , 0x00000552 
+ 00024411  0x000064ab istore  0x00000008 , 0x00000005 
+ 00024412  0x000064ac fetch  0x00000008 , 0x0000055a 
+ 00024413  0x000064ad istore  0x00000008 , 0x00000005 
+ 00024414  0x000064ae fetch  0x00000001 , 0x000009b7 
+ 00024415  0x000064af increase  0x00000010 , 0x0000003f 
+ 00024416  0x000064b0 store  0x00000001 , 0x000009b7 
+ 00024417  0x000064b1 bne  0x00000030 , 0x00005e38 
+ 00024418  0x000064b3 call  0x000062fc 
+ 00024419  0x000064b4 branch  0x00005e38 , 0x00000001 
+ 00024420  0x000064b5 jam  0x00000001 , 0x000009b8 
+ 00024421  0x000064b6 jam  0x00000002 , 0x000009ae 
+ 00024422  0x000064b7 jam  0x00000001 , 0x000009b0 
+ 00024423  0x000064b8 branch  0x00005e38 
+ 00024424  0x000064ba jam  0x00000024 , 0x0000007e 
+ 00024425  0x000064bb branch  0x00005d53 
+ 00024426  0x000064bd fetch  0x00000001 , 0x000009b6 
+ 00024427  0x000064be beq  0x00000030 , 0x00005f6e 
+ 00024428  0x000064bf jam  0x0000003e , 0x0000007c 
+ 00024429  0x000064c0 branch  0x00005d07 
+ 00024430  0x000064c3 call  0x000062fc 
+ 00024431  0x000064c4 branch  0x00005f77 , 0x00000001 
+ 00024432  0x000064c5 fetch  0x00000001 , 0x00004662 
+ 00024433  0x000064c6 beq  0x00000002 , 0x00005f75 
+ 00024434  0x000064c7 jam  0x00000001 , 0x000009b0 
+ 00024435  0x000064c8 jam  0x00000004 , 0x000009ae 
+ 00024436  0x000064c9 branch  0x00005d07 
+ 00024437  0x000064cc jam  0x00000036 , 0x00000a99 
+ 00024438  0x000064cd branch  0x00007d86 
+ 00024439  0x000064d2 branch  0x00005d07 
+ 00024440  0x000064d5 fetch  0x00000001 , 0x000009af 
+ 00024441  0x000064d6 beq  0x00000007 , 0x00005f7c 
+ 00024442  0x000064d7 fetch  0x00000001 , 0x000009ae 
+ 00024443  0x000064d8 bne  0x00000006 , 0x00005f88 
+ 00024444  0x000064da arg  0x00000a2e , 0x00000005 
+ 00024445  0x000064db fetch  0x00000008 , 0x00000552 
+ 00024446  0x000064dc istore  0x00000008 , 0x00000005 
+ 00024447  0x000064dd fetch  0x00000008 , 0x0000055a 
+ 00024448  0x000064de istore  0x00000008 , 0x00000005 
+ 00024449  0x000064df call  0x000062fc 
+ 00024450  0x000064e0 branch  0x00005f86 , 0x00000001 
+ 00024451  0x000064e1 jam  0x00000007 , 0x000009ae 
+ 00024452  0x000064e2 jam  0x00000001 , 0x000009b0 
+ 00024453  0x000064e3 branch  0x00005e38 
+ 00024454  0x000064e5 jam  0x00000004 , 0x000009af 
+ 00024455  0x000064e6 branch  0x000076d8 
+ 00024456  0x000064ea jam  0x00000024 , 0x0000007e 
+ 00024457  0x000064eb branch  0x00005d53 
+ 00024458  0x000064ee fetch  0x00000001 , 0x000009af 
+ 00024459  0x000064ef beq  0x0000000b , 0x00005f8e 
+ 00024460  0x000064f0 fetch  0x00000001 , 0x000009ae 
+ 00024461  0x000064f1 bne  0x00000008 , 0x00005f9d 
+ 00024462  0x000064f3 arg  0x00000a5e , 0x00000005 
+ 00024463  0x000064f4 arg  0x00000552 , 0x00000006 
+ 00024464  0x000064f5 call  0x00007ebf 
+ 00024465  0x000064f6 call  0x000062fc 
+ 00024466  0x000064f7 branch  0x00005f9a , 0x00000001 
+ 00024467  0x000064f8 fetch  0x00000001 , 0x00004662 
+ 00024468  0x000064f9 beq  0x00000001 , 0x00005f9f 
+ 00024469  0x000064fb jam  0x00000000 , 0x00004661 
+ 00024470  0x000064fc jam  0x00000009 , 0x000009ae 
+ 00024471  0x000064fd jam  0x00000001 , 0x000009b0 
+ 00024472  0x000064fe jam  0x00000041 , 0x0000007d 
+ 00024473  0x000064ff branch  0x00005d07 
+ 00024474  0x00006502 jam  0x00000009 , 0x000009af 
+ 00024475  0x00006503 jam  0x00000001 , 0x000009b1 
+ 00024476  0x00006504 branch  0x00005d07 
+ 00024477  0x00006506 jam  0x00000024 , 0x0000007e 
+ 00024478  0x00006507 branch  0x00005d53 
+ 00024479  0x0000650a fetch  0x00000001 , 0x00004661 
+ 00024480  0x0000650b bbit1  0x00000007 , 0x00005fa4 
+ 00024481  0x0000650c set1  0x00000006 , 0x0000003f 
+ 00024482  0x0000650d store  0x00000001 , 0x00004661 
+ 00024483  0x0000650e rtn 
+ 00024484  0x00006511 bbit1  0x00000000 , 0x00005f95 
+ 00024485  0x00006512 jam  0x00000000 , 0x00004661 
+ 00024486  0x00006513 branch  0x00005f9d 
+ 00024487  0x00006517 branch  0x00005d07 
+ 00024488  0x0000651a fetch  0x00000001 , 0x0000016d 
+ 00024489  0x0000651b set0  0x00000001 
+ 00024490  0x0000651c store  0x00000001 , 0x0000016d 
+ 00024491  0x0000651d call  0x00005e38 
+ 00024492  0x0000651e nrtn  0x00000029 
+ 00024493  0x0000651f fetch  0x00000001 , 0x00000552 
+ 00024494  0x00006520 fetcht  0x00000001 , 0x0000004b 
+ 00024495  0x00006521 setflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00024496  0x00006522 nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00024497  0x00006523 storet  0x00000001 , 0x0000004b 
+ 00024498  0x00006524 rtn 
+ 00024499  0x00006527 fetcht  0x00000008 , 0x00000552 
+ 00024500  0x00006529 fetch  0x00000001 , 0x00000055 
+ 00024501  0x0000652a rtnne  0x00000003 
+ 00024502  0x0000652c fetch  0x00000001 , 0x0000016d 
+ 00024503  0x0000652d bbit0  0x00000004 , 0x00005fba 
+ 00024504  0x0000652f jam  0x00000014 , 0x00000055 
+ 00024505  0x00006530 rtn 
+ 00024506  0x00006532 jam  0x00000004 , 0x00000055 
+ 00024507  0x00006533 rtn 
+ 00024508  0x00006535 fetch  0x00000001 , 0x0000017f 
+ 00024509  0x00006536 store  0x00000001 , 0x0000015b 
+ 00024510  0x00006537 jam  0x00000003 , 0x0000007c 
+ 00024511  0x00006538 jam  0x00000038 , 0x0000007d 
+ 00024512  0x00006539 rtn 
+ 00024513  0x0000653d jam  0x00000003 , 0x0000007c 
+ 00024514  0x0000653e jam  0x00000039 , 0x0000007d 
+ 00024515  0x0000653f force  0x00000009 , 0x00000039 
+ 00024516  0x00006540 arg  0x00000552 , 0x00000006 
+ 00024517  0x00006541 arg  0x00000152 , 0x00000005 
+ 00024518  0x00006543 ifetch  0x00000001 , 0x00000006 
+ 00024519  0x00006544 xor_into  0x00000055 , 0x0000003f 
+ 00024520  0x00006545 istore  0x00000001 , 0x00000005 
+ 00024521  0x00006546 loop  0x00005fc6 
+ 00024522  0x00006547 fetch  0x00000001 , 0x00000152 
+ 00024523  0x00006548 fetcht  0x00000001 , 0x00000151 
+ 00024524  0x00006549 set0  0x00000007 , 0x00000002 
+ 00024525  0x0000654a set0  0x00000004 , 0x00000002 
+ 00024526  0x0000654b beq  0x000000ff , 0x00005fda 
+ 00024527  0x0000654c beq  0x00000000 , 0x00005ff3 
+ 00024528  0x0000654d beq  0x00000005 , 0x00005fe7 
+ 00024529  0x0000654e beq  0x00000007 , 0x00005fe6 
+ 00024530  0x0000654f beq  0x00000006 , 0x00005fe7 
+ 00024531  0x00006550 beq  0x00000008 , 0x00005fe6 
+ 00024532  0x00006551 beq  0x00000001 , 0x00005fdf 
+ 00024533  0x00006552 beq  0x00000002 , 0x00005fdf 
+ 00024534  0x00006553 beq  0x00000003 , 0x00005fdf 
+ 00024535  0x00006554 beq  0x00000009 , 0x00005fdf 
+ 00024536  0x00006555 beq  0x00000004 , 0x00005fdf 
+ 00024537  0x00006556 rtn 
+ 00024538  0x00006559 fetch  0x00000001 , 0x00000151 
+ 00024539  0x0000655a set1  0x00000003 , 0x0000003f 
+ 00024540  0x0000655b set1  0x00000002 , 0x0000003f 
+ 00024541  0x0000655c store  0x00000001 , 0x00000151 
+ 00024542  0x0000655d rtn 
+ 00024543  0x0000655f set1  0x00000004 , 0x00000002 
+ 00024544  0x00006560 jam  0x00000005 , 0x00000180 
+ 00024545  0x00006561 fetch  0x00000002 , 0x00000159 
+ 00024546  0x00006562 iforce  0x00000039 
+ 00024547  0x00006563 store  0x00000002 , 0x0000015f 
+ 00024548  0x00006564 arg  0x00000551 , 0x00000005 
+ 00024549  0x00006565 call  0x00007f73 
+ 00024550  0x00006567 set1  0x00000007 , 0x00000002 
+ 00024551  0x00006569 set1  0x00000002 , 0x00000002 
+ 00024552  0x0000656a force  0x00000000 , 0x0000003f 
+ 00024553  0x0000656b store  0x00000001 , 0x0000000b 
+ 00024554  0x0000656c store  0x00000002 , 0x000000fa 
+ 00024555  0x0000656d store  0x00000002 , 0x000000fc 
+ 00024556  0x0000656e store  0x00000002 , 0x000000f8 
+ 00024557  0x0000656f store  0x00000002 , 0x000000f6 
+ 00024558  0x00006570 fetch  0x00000001 , 0x00000153 
+ 00024559  0x00006571 compare  0x00000000 , 0x0000003f , 0x000000ff 
+ 00024560  0x00006572 setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00024561  0x00006573 storet  0x00000001 , 0x00000151 
+ 00024562  0x00006574 rtn 
+ 00024563  0x00006577 set0  0x00000011 , 0x00000000 
+ 00024564  0x00006578 jam  0x00000000 , 0x00000151 
+ 00024565  0x00006579 fetch  0x00000001 , 0x0000017f 
+ 00024566  0x0000657a set0  0x00000006 , 0x0000003f 
+ 00024567  0x0000657b store  0x00000001 , 0x0000017f 
+ 00024568  0x0000657c rtn 
+ 00024569  0x00006583 arg  0x00000552 , 0x00000006 
+ 00024570  0x00006584 arg  0x00000562 , 0x00000005 
+ 00024571  0x00006585 branch  0x00007ebf 
+ 00024572  0x00006588 jam  0x00000009 , 0x0000007c 
+ 00024573  0x00006589 rtn 
+ 00024574  0x0000658c nrtn  0x00000029 
+ 00024575  0x0000658d jam  0x00000011 , 0x0000007c 
+ 00024576  0x0000658e rtn 
+ 00024577  0x00006591 arg  0x000040a0 , 0x00000011 
+ 00024578  0x00006592 call  0x00007255 
+ 00024579  0x00006593 jam  0x00000003 , 0x0000007c 
+ 00024580  0x00006594 jam  0x00000008 , 0x0000007d 
+ 00024581  0x00006595 rtn 
+ 00024582  0x00006598 jam  0x0000000a , 0x00000072 
+ 00024583  0x00006599 jam  0x00000007 , 0x0000007c 
+ 00024584  0x0000659a jam  0x00000016 , 0x000004ca 
+ 00024585  0x0000659b rtn 
+ 00024586  0x000065a2 bpatchx  0x00000082 , 0x00004030 
+ 00024587  0x000065a3 disable  0x00000028 
+ 00024588  0x000065a4 call  0x000062c1 
+ 00024589  0x000065a5 fetch  0x00000001 , 0x00000048 
+ 00024590  0x000065a6 rtn  0x00000034 
+ 00024591  0x000065ab bbit1  0x00000007 , 0x0000603f 
+ 00024592  0x000065ad beq  0x00000001 , 0x0000616f 
+ 00024593  0x000065ae beq  0x00000002 , 0x000060e4 
+ 00024594  0x000065af beq  0x00000003 , 0x0000604a 
+ 00024595  0x000065b0 beq  0x00000004 , 0x00006060 
+ 00024596  0x000065b1 beq  0x00000027 , 0x000061db 
+ 00024597  0x000065b2 beq  0x00000028 , 0x00006108 
+ 00024598  0x000065b3 beq  0x00000030 , 0x000060f4 
+ 00024599  0x000065b4 beq  0x00000025 , 0x000061d6 
+ 00024600  0x000065b5 beq  0x00000026 , 0x00006103 
+ 00024601  0x000065b6 beq  0x00000031 , 0x000061c3 
+ 00024602  0x000065b7 beq  0x00000037 , 0x0000616a 
+ 00024603  0x000065b8 beq  0x00000033 , 0x0000615c 
+ 00024604  0x000065b9 beq  0x00000008 , 0x00006259 
+ 00024605  0x000065ba beq  0x00000009 , 0x0000624f 
+ 00024606  0x000065bb beq  0x0000000b , 0x00006264 
+ 00024607  0x000065bc beq  0x0000000c , 0x0000626d 
+ 00024608  0x000065bd beq  0x0000000f , 0x00006162 
+ 00024609  0x000065be beq  0x00000010 , 0x00006292 
+ 00024610  0x000065bf beq  0x00000011 , 0x00006288 
+ 00024611  0x000065c0 beq  0x00000007 , 0x00006152 
+ 00024612  0x000065c1 beq  0x0000002a , 0x0000617e 
+ 00024613  0x000065c2 beq  0x0000000a , 0x0000617f 
+ 00024614  0x000065c4 beq  0x0000001f , 0x000061bc 
+ 00024615  0x000065c5 beq  0x00000006 , 0x000060f9 
+ 00024616  0x000065c6 beq  0x00000021 , 0x0000615f 
+ 00024617  0x000065c7 beq  0x0000002d , 0x000061b2 
+ 00024618  0x000065c8 beq  0x0000002e , 0x000061b7 
+ 00024619  0x000065c9 beq  0x00000022 , 0x0000615f 
+ 00024620  0x000065ca beq  0x00000034 , 0x00006180 
+ 00024621  0x000065cb beq  0x00000013 , 0x00006195 
+ 00024622  0x000065cc beq  0x00000017 , 0x000061a4 
+ 00024623  0x000065cd beq  0x00000012 , 0x0000628f 
+ 00024624  0x000065ce beq  0x0000002f , 0x000061aa 
+ 00024625  0x000065cf beq  0x00000018 , 0x000061af 
+ 00024626  0x000065d0 beq  0x0000003d , 0x000061ff 
+ 00024627  0x000065d1 beq  0x0000003e , 0x0000620b 
+ 00024628  0x000065d2 beq  0x0000003f , 0x0000621d 
+ 00024629  0x000065d3 beq  0x00000040 , 0x00006227 
+ 00024630  0x000065d4 beq  0x00000041 , 0x0000623c 
+ 00024631  0x000065d5 beq  0x00000023 , 0x0000624b 
+ 00024632  0x000065d6 beq  0x0000003b , 0x00006246 
+ 00024633  0x000065d8 beq  0x00000005 , 0x0000624c 
+ 00024634  0x000065d9 beq  0x00000029 , 0x0000624d 
+ 00024635  0x000065da beq  0x00000038 , 0x0000624e 
+ 00024636  0x000065db beq  0x00000039 , 0x00006175 
+ 00024637  0x000065dd branch  0x00002a8c 
+ 00024638  0x000065de rtn 
+ 00024639  0x000065e0 beq  0x00000081 , 0x0000606d 
+ 00024640  0x000065e1 beq  0x00000084 , 0x00006099 
+ 00024641  0x000065e2 beq  0x00000082 , 0x00006076 
+ 00024642  0x000065e3 beq  0x00000083 , 0x0000610d 
+ 00024643  0x000065e4 beq  0x0000008b , 0x00006118 
+ 00024644  0x000065e5 beq  0x00000097 , 0x0000614e 
+ 00024645  0x000065e6 beq  0x00000099 , 0x000060d5 
+ 00024646  0x000065e7 beq  0x0000009a , 0x000060a4 
+ 00024647  0x000065e8 beq  0x00000095 , 0x000060da 
+ 00024648  0x000065e9 beq  0x00000096 , 0x000060db 
+ 00024649  0x000065ea branch  0x00002a8c 
+ 00024650  0x000065f1 force  0x00000002 , 0x0000003f 
+ 00024651  0x000065f2 call  0x00006298 
+ 00024652  0x000065f3 fetch  0x00000001 , 0x00000049 
+ 00024653  0x000065f4 istore  0x00000001 , 0x00000005 
+ 00024654  0x000065f5 call  0x000062a7 
+ 00024655  0x000065f6 bpatchx  0x00000083 , 0x00004030 
+ 00024656  0x000065f7 fetch  0x00000001 , 0x00000049 
+ 00024657  0x000065f8 beq  0x00000008 , 0x00006080 
+ 00024658  0x000065f9 beq  0x0000000f , 0x00006084 
+ 00024659  0x000065fa beq  0x00000010 , 0x0000608f 
+ 00024660  0x000065fb beq  0x00000017 , 0x0000605f 
+ 00024661  0x000065fc beq  0x00000033 , 0x00006092 
+ 00024662  0x000065fd beq  0x00000041 , 0x00006098 
+ 00024663  0x000065fe beq  0x00000011 , 0x00006059 
+ 00024664  0x000065ff rtn 
+ 00024665  0x00006602 fetch  0x00000001 , 0x00000055 
+ 00024666  0x00006603 rtn  0x00000034 
+ 00024667  0x00006604 jam  0x0000001b , 0x00000055 
+ 00024668  0x00006605 setarg  0x0000000c 
+ 00024669  0x00006606 arg  0x00000007 , 0x00000007 
+ 00024670  0x00006607 branch  0x00007f08 
+ 00024671  0x0000660a branch  0x000026c6 
+ 00024672  0x0000660c force  0x00000003 , 0x0000003f 
+ 00024673  0x0000660d call  0x00006298 
+ 00024674  0x0000660e fetch  0x00000001 , 0x00000049 
+ 00024675  0x0000660f beq  0x0000000b , 0x00006068 
+ 00024676  0x00006610 istore  0x00000001 , 0x00000005 
+ 00024677  0x00006611 fetch  0x00000001 , 0x0000004a 
+ 00024678  0x00006612 istore  0x00000001 , 0x00000005 
+ 00024679  0x00006613 branch  0x000062a7 
+ 00024680  0x00006616 istore  0x00000001 , 0x00000005 
+ 00024681  0x00006617 fetch  0x00000001 , 0x0000004a 
+ 00024682  0x00006618 istore  0x00000001 , 0x00000005 
+ 00024683  0x00006619 arg  0x000004d5 , 0x00000002 
+ 00024684  0x0000661a branch  0x000062e2 
+ 00024685  0x0000661d force  0x00000004 , 0x00000007 
+ 00024686  0x0000661e call  0x000062a0 
+ 00024687  0x0000661f setarg  0x0000007f 
+ 00024688  0x00006620 istore  0x00000001 , 0x00000005 
+ 00024689  0x00006621 fetch  0x00000001 , 0x00000049 
+ 00024690  0x00006622 set0  0x00000007 , 0x0000003f 
+ 00024691  0x00006623 istore  0x00000001 , 0x00000005 
+ 00024692  0x00006624 fetch  0x00000001 , 0x00000049 
+ 00024693  0x00006625 branch  0x000062a7 
+ 00024694  0x00006628 force  0x00000005 , 0x00000007 
+ 00024695  0x00006629 call  0x000062a0 
+ 00024696  0x0000662a setarg  0x0000007f 
+ 00024697  0x0000662b istore  0x00000001 , 0x00000005 
+ 00024698  0x0000662c fetch  0x00000001 , 0x00000049 
+ 00024699  0x0000662d set0  0x00000007 , 0x0000003f 
+ 00024700  0x0000662e istore  0x00000001 , 0x00000005 
+ 00024701  0x0000662f fetch  0x00000001 , 0x0000004a 
+ 00024702  0x00006630 istore  0x00000001 , 0x00000005 
+ 00024703  0x00006631 branch  0x000062a7 
+ 00024704  0x00006635 call  0x0000244f 
+ 00024705  0x00006636 call  0x000062f3 
+ 00024706  0x00006637 rtn  0x00000001 
+ 00024707  0x00006638 branch  0x00005ffc 
+ 00024708  0x0000663b fetch  0x00000001 , 0x0000004b 
+ 00024709  0x0000663c bbit1  0x00000005 , 0x0000608b 
+ 00024710  0x0000663d rtnbit0  0x00000004 
+ 00024711  0x0000663e jam  0x00000012 , 0x0000007c 
+ 00024712  0x0000663f set0  0x00000004 , 0x0000003f 
+ 00024713  0x00006640 call  0x000062eb 
+ 00024714  0x00006641 branch  0x0000608d 
+ 00024715  0x00006643 jam  0x00000010 , 0x0000007c 
+ 00024716  0x00006644 set0  0x00000005 , 0x0000003f 
+ 00024717  0x00006646 store  0x00000001 , 0x0000004b 
+ 00024718  0x00006647 rtn 
+ 00024719  0x0000664a call  0x000062fc 
+ 00024720  0x0000664b branch  0x00005ffe , 0x00000001 
+ 00024721  0x0000664c rtn 
+ 00024722  0x0000664f jam  0x0000008b , 0x0000007c 
+ 00024723  0x00006651 fetch  0x00000001 , 0x000004d1 
+ 00024724  0x00006652 set1  0x00000000 , 0x0000003f 
+ 00024725  0x00006653 store  0x00000001 , 0x000004d1 
+ 00024726  0x00006654 jam  0x00000001 , 0x00000a99 
+ 00024727  0x00006655 branch  0x00007d86 
+ 00024728  0x00006659 rtn 
+ 00024729  0x0000665e force  0x0000000c , 0x00000007 
+ 00024730  0x0000665f call  0x000062a0 
+ 00024731  0x00006660 setarg  0x00000001 
+ 00024732  0x00006661 istore  0x00000001 , 0x00000005 
+ 00024733  0x00006662 fetch  0x00000002 , 0x000004ce 
+ 00024734  0x00006663 istore  0x00000002 , 0x00000005 
+ 00024735  0x00006664 setarg  0x00000000 
+ 00024736  0x00006665 istore  0x00000003 , 0x00000005 
+ 00024737  0x00006666 setarg  0x00000000 
+ 00024738  0x00006667 istore  0x00000004 , 0x00000005 
+ 00024739  0x00006668 branch  0x000062b0 
+ 00024740  0x0000666a force  0x00000005 , 0x00000007 
+ 00024741  0x0000666b call  0x000062a0 
+ 00024742  0x0000666c fetch  0x00000003 , 0x0000465b 
+ 00024743  0x0000666d istore  0x00000003 , 0x00000005 
+ 00024744  0x0000666e call  0x000062b0 
+ 00024745  0x0000666f jam  0x00000001 , 0x00004665 
+ 00024746  0x00006670 fetch  0x00000001 , 0x0000465b 
+ 00024747  0x00006671 beq  0x00000001 , 0x000060b5 
+ 00024748  0x00006672 beq  0x00000002 , 0x000060af 
+ 00024749  0x00006673 beq  0x00000003 , 0x000060bb 
+ 00024750  0x00006674 rtn 
+ 00024751  0x00006677 fetch  0x00000001 , 0x0000465e 
+ 00024752  0x00006678 beq  0x00000000 , 0x000060c7 
+ 00024753  0x00006679 beq  0x00000001 , 0x000060c7 
+ 00024754  0x0000667a beq  0x00000002 , 0x000060c7 
+ 00024755  0x0000667b beq  0x00000003 , 0x000060c1 
+ 00024756  0x0000667c rtn 
+ 00024757  0x00006680 fetch  0x00000001 , 0x0000465e 
+ 00024758  0x00006681 beq  0x00000000 , 0x000060c1 
+ 00024759  0x00006682 beq  0x00000001 , 0x000060c5 
+ 00024760  0x00006683 beq  0x00000002 , 0x000060c7 
+ 00024761  0x00006684 beq  0x00000003 , 0x000060c1 
+ 00024762  0x00006685 rtn 
+ 00024763  0x00006689 fetch  0x00000001 , 0x0000465e 
+ 00024764  0x0000668a beq  0x00000000 , 0x000060c1 
+ 00024765  0x0000668b beq  0x00000001 , 0x000060c1 
+ 00024766  0x0000668c beq  0x00000002 , 0x000060c1 
+ 00024767  0x0000668d beq  0x00000003 , 0x000060c1 
+ 00024768  0x0000668e rtn 
+ 00024769  0x00006698 jam  0x00000003 , 0x00004662 
+ 00024770  0x00006699 fetch  0x00000001 , 0x0000455c 
+ 00024771  0x0000669a bbit1  0x00000000 , 0x000033e9 
+ 00024772  0x0000669b rtn 
+ 00024773  0x0000669f jam  0x00000001 , 0x00004662 
+ 00024774  0x000066a0 rtn 
+ 00024775  0x000066a7 jam  0x00000002 , 0x00004662 
+ 00024776  0x000066a8 rtn 
+ 00024777  0x000066ac arg  0x00000000 , 0x00000007 
+ 00024778  0x000066ad branch  0x000060cd 
+ 00024779  0x000066b0 arg  0x00000000 , 0x00000007 
+ 00024780  0x000066b1 branch  0x000060d1 
+ 00024781  0x000066b4 fetch  0x00000001 , 0x0000455c 
+ 00024782  0x000066b5 qset1  0x0000003f 
+ 00024783  0x000066b6 store  0x00000001 , 0x0000455c 
+ 00024784  0x000066b7 rtn 
+ 00024785  0x000066ba fetch  0x00000001 , 0x0000455c 
+ 00024786  0x000066bb qset0  0x0000003f 
+ 00024787  0x000066bc store  0x00000001 , 0x0000455c 
+ 00024788  0x000066bd rtn 
+ 00024789  0x000066c1 force  0x00000005 , 0x00000007 
+ 00024790  0x000066c2 call  0x000062a0 
+ 00024791  0x000066c3 fetch  0x00000003 , 0x0000465b 
+ 00024792  0x000066c4 istore  0x00000003 , 0x00000005 
+ 00024793  0x000066c5 branch  0x000062b2 
+ 00024794  0x000066ca rtn 
+ 00024795  0x000066cc force  0x00000009 , 0x00000007 
+ 00024796  0x000066cd call  0x000062a0 
+ 00024797  0x000066ce fetch  0x00000001 , 0x00000095 
+ 00024798  0x000066cf istore  0x00000001 , 0x00000005 
+ 00024799  0x000066d0 fetch  0x00000002 , 0x00000096 
+ 00024800  0x000066d1 istore  0x00000002 , 0x00000005 
+ 00024801  0x000066d2 fetch  0x00000004 , 0x00000091 
+ 00024802  0x000066d3 istore  0x00000004 , 0x00000005 
+ 00024803  0x000066d4 branch  0x000062b0 
+ 00024804  0x000066d7 force  0x00000011 , 0x0000003f 
+ 00024805  0x000066d8 call  0x00006298 
+ 00024806  0x000066d9 fetch  0x00000001 , 0x00000049 
+ 00024807  0x000066da copy  0x0000003f , 0x00000002 
+ 00024808  0x000066db beq  0x00000000 , 0x000060ec 
+ 00024809  0x000066dc beq  0x0000000e , 0x000060ec 
+ 00024810  0x000066dd beq  0x0000001c , 0x000060ec 
+ 00024811  0x000066de rtn 
+ 00024812  0x000066e0 istore  0x00000001 , 0x00000005 
+ 00024813  0x000066e1 fetch  0x00000001 , 0x00004515 
+ 00024814  0x000066e2 istore  0x00000001 , 0x00000005 
+ 00024815  0x000066e3 arg  0x0000000e , 0x00000039 
+ 00024816  0x000066e4 setarg  0x00004516 
+ 00024817  0x000066e5 iadd  0x00000002 , 0x00000006 
+ 00024818  0x000066e6 call  0x00007f01 
+ 00024819  0x000066e7 branch  0x000062b0 
+ 00024820  0x000066eb force  0x00000003 , 0x0000003f 
+ 00024821  0x000066ec call  0x00006298 
+ 00024822  0x000066ed setarg  0x00000114 
+ 00024823  0x000066ee istore  0x00000002 , 0x00000005 
+ 00024824  0x000066ef branch  0x000062b0 
+ 00024825  0x000066f3 force  0x00000003 , 0x0000003f 
+ 00024826  0x000066f4 call  0x00006298 
+ 00024827  0x000066f5 fetch  0x00000004 , 0x00000165 
+ 00024828  0x000066f6 isub  0x00000022 , 0x0000003f 
+ 00024829  0x000066f7 branch  0x000060ff , 0x00000029 
+ 00024830  0x000066f8 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00024831  0x000066fb rshift2  0x0000003f , 0x0000003f 
+ 00024832  0x000066fc set0  0x0000000f , 0x0000003f 
+ 00024833  0x000066fd istore  0x00000002 , 0x00000005 
+ 00024834  0x000066fe branch  0x000062b0 
+ 00024835  0x00006701 force  0x00000006 , 0x0000003f 
+ 00024836  0x00006702 call  0x00006298 
+ 00024837  0x00006703 fetch  0x00000005 , 0x00004510 
+ 00024838  0x00006704 istore  0x00000005 , 0x00000005 
+ 00024839  0x00006705 branch  0x000062b0 
+ 00024840  0x00006708 force  0x00000009 , 0x0000003f 
+ 00024841  0x00006709 call  0x00006298 
+ 00024842  0x0000670a fetch  0x00000008 , 0x00004098 
+ 00024843  0x0000670b istore  0x00000008 , 0x00000005 
+ 00024844  0x0000670c branch  0x000062b0 
+ 00024845  0x00006714 force  0x0000000c , 0x00000007 
+ 00024846  0x00006715 call  0x000062a0 
+ 00024847  0x00006716 setarg  0x00000001 
+ 00024848  0x00006717 istore  0x00000001 , 0x00000005 
+ 00024849  0x00006718 fetch  0x00000002 , 0x000004ce 
+ 00024850  0x00006719 istore  0x00000002 , 0x00000005 
+ 00024851  0x0000671a setarg  0x00000000 
+ 00024852  0x0000671b istore  0x00000003 , 0x00000005 
+ 00024853  0x0000671c setarg  0x00000000 
+ 00024854  0x0000671d istore  0x00000004 , 0x00000005 
+ 00024855  0x0000671e branch  0x000062b2 
+ 00024856  0x00006721 force  0x00000003 , 0x00000007 
+ 00024857  0x00006722 call  0x000062a0 
+ 00024858  0x00006723 fetch  0x00000001 , 0x0000415a 
+ 00024859  0x00006724 istore  0x00000001 , 0x00000005 
+ 00024860  0x00006725 disable  0x00000028 
+ 00024861  0x00006726 call  0x000062b2 
+ 00024862  0x00006727 nrtn  0x00000028 
+ 00024863  0x00006728 nrtn  0x00000029 
+ 00024864  0x00006729 fetch  0x00000001 , 0x000040d8 
+ 00024865  0x0000672a rtnbit0  0x00000000 
+ 00024866  0x0000672b call  0x00006132 
+ 00024867  0x0000672c branch  0x0000613c 
+ 00024868  0x00006730 bpatchx  0x00000084 , 0x00004030 
+ 00024869  0x00006731 fetch  0x00000001 , 0x0000409e 
+ 00024870  0x00006732 set1  0x00000003 , 0x0000003f 
+ 00024871  0x00006733 store  0x00000001 , 0x0000409e 
+ 00024872  0x00006734 setarg  0x00000101 
+ 00024873  0x00006735 store  0x00000002 , 0x000004ce 
+ 00024874  0x00006736 rtn 
+ 00024875  0x00006739 bpatchx  0x00000085 , 0x00004030 
+ 00024876  0x0000673a fetch  0x00000001 , 0x0000409e 
+ 00024877  0x0000673b set0  0x00000003 , 0x0000003f 
+ 00024878  0x0000673c store  0x00000001 , 0x0000409e 
+ 00024879  0x0000673d setarg  0x00000000 
+ 00024880  0x0000673e store  0x00000002 , 0x000004ce 
+ 00024881  0x0000673f rtn 
+ 00024882  0x00006742 jam  0x00000003 , 0x000040d8 
+ 00024883  0x00006743 setarg  0x00000000 
+ 00024884  0x00006744 store  0x00000004 , 0x00004142 
+ 00024885  0x00006745 arg  0x000040da , 0x00000005 
+ 00024886  0x00006746 call  0x00006140 
+ 00024887  0x00006747 arg  0x000040e7 , 0x00000005 
+ 00024888  0x00006748 call  0x00006140 
+ 00024889  0x00006749 arg  0x00004146 , 0x00000005 
+ 00024890  0x0000674a call  0x00006140 
+ 00024891  0x0000674b branch  0x00006147 
+ 00024892  0x0000674d arg  0x000040e7 , 0x00000005 
+ 00024893  0x0000674e call  0x00006140 
+ 00024894  0x0000674f call  0x00006147 
+ 00024895  0x00006750 branch  0x0000614a 
+ 00024896  0x00006754 setarg  0x00ffffff 
+ 00024897  0x00006755 istore  0x00000003 , 0x00000005 
+ 00024898  0x00006756 istore  0x00000003 , 0x00000005 
+ 00024899  0x00006757 istore  0x00000003 , 0x00000005 
+ 00024900  0x00006758 setarg  0x0000007f 
+ 00024901  0x00006759 istore  0x00000001 , 0x00000005 
+ 00024902  0x0000675a rtn 
+ 00024903  0x0000675c setarg  0x00000000 
+ 00024904  0x0000675d store  0x00000002 , 0x000040d6 
+ 00024905  0x0000675e rtn 
+ 00024906  0x00006760 fetch  0x00000001 , 0x000040d8 
+ 00024907  0x00006761 set1  0x00000002 , 0x0000003f 
+ 00024908  0x00006762 store  0x00000001 , 0x000040d8 
+ 00024909  0x00006763 rtn 
+ 00024910  0x00006767 force  0x00000002 , 0x00000007 
+ 00024911  0x00006768 call  0x000062a0 
+ 00024912  0x00006769 nbranch  0x000062b0 , 0x00000029 
+ 00024913  0x0000676b branch  0x000062b2 
+ 00024914  0x00006770 force  0x00000002 , 0x0000003f 
+ 00024915  0x00006771 call  0x00006298 
+ 00024916  0x00006772 fetch  0x00000001 , 0x000004ca 
+ 00024917  0x00006773 istore  0x00000001 , 0x00000005 
+ 00024918  0x00006774 call  0x000062b2 
+ 00024919  0x00006776 fetch  0x00000001 , 0x0000004b 
+ 00024920  0x00006777 set1  0x00000003 , 0x0000003f 
+ 00024921  0x00006778 store  0x00000001 , 0x0000004b 
+ 00024922  0x00006779 jam  0x00000032 , 0x00000072 
+ 00024923  0x0000677a rtn 
+ 00024924  0x0000677e force  0x00000001 , 0x0000003f 
+ 00024925  0x0000677f call  0x00006298 
+ 00024926  0x00006780 branch  0x000062b2 
+ 00024927  0x00006782 force  0x00000001 , 0x0000003f 
+ 00024928  0x00006783 call  0x00006298 
+ 00024929  0x00006784 branch  0x000062b0 
+ 00024930  0x00006788 force  0x00000002 , 0x0000003f 
+ 00024931  0x00006789 call  0x00006298 
+ 00024932  0x0000678a fetch  0x00000001 , 0x0000004c 
+ 00024933  0x0000678b isolate0  0x00000002 , 0x0000003f 
+ 00024934  0x0000678c setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024935  0x0000678d and_into  0x00000001 , 0x0000003f 
+ 00024936  0x0000678e istore  0x00000001 , 0x00000005 
+ 00024937  0x0000678f branch  0x000062b2 
+ 00024938  0x00006793 force  0x00000003 , 0x0000003f 
+ 00024939  0x00006794 call  0x00006298 
+ 00024940  0x00006795 fetch  0x00000002 , 0x00000051 
+ 00024941  0x00006796 istore  0x00000002 , 0x00000005 
+ 00024942  0x00006797 branch  0x000062b2 
+ 00024943  0x0000679a jam  0x000000fa , 0x00000072 
+ 00024944  0x0000679b force  0x00000002 , 0x0000003f 
+ 00024945  0x0000679c call  0x00006298 
+ 00024946  0x0000679d fetch  0x00000001 , 0x00000053 
+ 00024947  0x0000679e istore  0x00000001 , 0x00000005 
+ 00024948  0x0000679f branch  0x000062b2 
+ 00024949  0x000067a2 force  0x0000000a , 0x0000003f 
+ 00024950  0x000067a3 call  0x00006298 
+ 00024951  0x000067a4 arg  0x00000152 , 0x00000006 
+ 00024952  0x000067a5 force  0x00000009 , 0x00000039 
+ 00024953  0x000067a7 ifetch  0x00000001 , 0x00000006 
+ 00024954  0x000067a8 xor_into  0x00000055 , 0x0000003f 
+ 00024955  0x000067a9 istore  0x00000001 , 0x00000005 
+ 00024956  0x000067aa loop  0x00006179 
+ 00024957  0x000067ab branch  0x000062b2 
+ 00024958  0x000067ae branch  0x000062b2 
+ 00024959  0x000067b0 branch  0x000062b2 
+ 00024960  0x000067b3 rtn  0x00000029 
+ 00024961  0x000067b4 call  0x0000282d 
+ 00024962  0x000067b5 force  0x00000009 , 0x0000003f 
+ 00024963  0x000067b6 call  0x00006298 
+ 00024964  0x000067b7 fetch  0x00000002 , 0x00000171 
+ 00024965  0x000067b8 istore  0x00000002 , 0x00000005 
+ 00024966  0x000067b9 fetch  0x00000003 , 0x000040a0 
+ 00024967  0x000067ba istore  0x00000003 , 0x00000005 
+ 00024968  0x000067bb fetch  0x00000001 , 0x000040a3 
+ 00024969  0x000067bc istore  0x00000001 , 0x00000005 
+ 00024970  0x000067bd fetch  0x00000002 , 0x000040a4 
+ 00024971  0x000067be istore  0x00000002 , 0x00000005 
+ 00024972  0x000067bf bmark0  0x00000003 , 0x00006191 
+ 00024973  0x000067c0 set0  0x00000003 , 0x00000000 
+ 00024974  0x000067c1 call  0x000062b2 
+ 00024975  0x000067c2 jam  0x00000013 , 0x0000007c 
+ 00024976  0x000067c3 rtn 
+ 00024977  0x000067c5 call  0x000062b0 
+ 00024978  0x000067c6 jam  0x00000003 , 0x0000007c 
+ 00024979  0x000067c7 jam  0x00000013 , 0x0000007d 
+ 00024980  0x000067c8 rtn 
+ 00024981  0x000067cb arg  0x00000200 , 0x00000002 
+ 00024982  0x000067cc branch  0x00006199 , 0x00000029 
+ 00024983  0x000067cd deposit  0x00000028 
+ 00024984  0x000067ce branch  0x0000619a 
+ 00024985  0x000067d0 deposit  0x00000022 
+ 00024986  0x000067d2 deposit  0x00000021 
+ 00024987  0x000067d3 iadd  0x00000002 , 0x0000003f 
+ 00024988  0x000067d4 and_into  0x000001fc , 0x0000003f 
+ 00024989  0x000067d5 store  0x00000004 , 0x00000034 
+ 00024990  0x000067d6 force  0x00000005 , 0x0000003f 
+ 00024991  0x000067d7 call  0x00006298 
+ 00024992  0x000067d8 fetch  0x00000004 , 0x00000034 
+ 00024993  0x000067d9 rshift  0x0000003f , 0x0000003f 
+ 00024994  0x000067da istore  0x00000004 , 0x00000005 
+ 00024995  0x000067db branch  0x000062b2 
+ 00024996  0x000067de force  0x0000000a , 0x0000003f 
+ 00024997  0x000067df call  0x00006298 
+ 00024998  0x000067e0 arg  0x000004d9 , 0x00000006 
+ 00024999  0x000067e1 ifetch  0x00000009 , 0x00000006 
+ 00025000  0x000067e2 istore  0x00000009 , 0x00000005 
+ 00025001  0x000067e3 branch  0x000062b2 
+ 00025002  0x000067e8 force  0x00000003 , 0x0000003f 
+ 00025003  0x000067e9 call  0x00006298 
+ 00025004  0x000067ea setarg  0x00000114 
+ 00025005  0x000067eb istore  0x00000002 , 0x00000005 
+ 00025006  0x000067ec branch  0x000062b2 
+ 00025007  0x000067f0 force  0x00000001 , 0x0000003f 
+ 00025008  0x000067f1 call  0x00006298 
+ 00025009  0x000067fa branch  0x000062b2 
+ 00025010  0x000067fe force  0x00000002 , 0x0000003f 
+ 00025011  0x000067ff call  0x00006298 
+ 00025012  0x00006800 fetch  0x00000001 , 0x000040d0 
+ 00025013  0x00006801 istore  0x00000001 , 0x00000005 
+ 00025014  0x00006802 branch  0x000062b2 
+ 00025015  0x00006806 force  0x00000002 , 0x0000003f 
+ 00025016  0x00006807 call  0x00006298 
+ 00025017  0x00006808 setarg  0x00000005 
+ 00025018  0x00006809 istore  0x00000001 , 0x00000005 
+ 00025019  0x0000680a branch  0x000062b2 
+ 00025020  0x0000680e force  0x00000002 , 0x0000003f 
+ 00025021  0x0000680f call  0x00006298 
+ 00025022  0x00006810 setarg  0x00000000 
+ 00025023  0x00006811 istore  0x00000001 , 0x00000005 
+ 00025024  0x00006812 branch  0x000062b2 
+ 00025025  0x00006816 jam  0x0000002e , 0x0000007c 
+ 00025026  0x00006817 rtn 
+ 00025027  0x00006819 fetch  0x00000001 , 0x00004092 
+ 00025028  0x0000681a sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00025029  0x0000681b call  0x000061c1 , 0x00000005 
+ 00025030  0x0000681c fetch  0x00000001 , 0x00000030 
+ 00025031  0x0000681d set1  0x00000004 , 0x0000003f 
+ 00025032  0x0000681e store  0x00000001 , 0x00000030 
+ 00025033  0x0000681f copy  0x00000022 , 0x0000003f 
+ 00025034  0x00006820 store  0x00000004 , 0x000004e9 
+ 00025035  0x00006821 fetch  0x00000001 , 0x000004d1 
+ 00025036  0x00006822 bbit1  0x00000003 , 0x000061d4 
+ 00025037  0x00006823 set1  0x00000003 , 0x0000003f 
+ 00025038  0x00006824 store  0x00000001 , 0x000004d1 
+ 00025039  0x00006825 jam  0x00000005 , 0x00000a99 
+ 00025040  0x00006826 call  0x00007d86 
+ 00025041  0x00006827 force  0x00000001 , 0x0000003f 
+ 00025042  0x00006828 call  0x00006298 
+ 00025043  0x00006829 branch  0x000062b2 
+ 00025044  0x0000682b jam  0x00000000 , 0x00000048 
+ 00025045  0x0000682c rtn 
+ 00025046  0x0000682f force  0x00000006 , 0x0000003f 
+ 00025047  0x00006830 call  0x00006298 
+ 00025048  0x00006831 fetch  0x00000005 , 0x00004510 
+ 00025049  0x00006832 istore  0x00000005 , 0x00000005 
+ 00025050  0x00006833 branch  0x000062b2 
+ 00025051  0x00006836 force  0x00000009 , 0x0000003f 
+ 00025052  0x00006837 call  0x00006298 
+ 00025053  0x00006838 fetch  0x00000008 , 0x00004098 
+ 00025054  0x00006839 istore  0x00000008 , 0x00000005 
+ 00025055  0x0000683a branch  0x000062b2 
+ 00025056  0x0000683d jam  0x00000001 , 0x000009b1 
+ 00025057  0x0000683e fetch  0x00000001 , 0x000045b1 
+ 00025058  0x0000683f rtnne  0x00000001 
+ 00025059  0x00006840 jam  0x00000013 , 0x000009af 
+ 00025060  0x00006841 rtn 
+ 00025061  0x00006844 call  0x000062ef 
+ 00025062  0x00006845 jam  0x00000099 , 0x0000007c 
+ 00025063  0x00006846 jam  0x00000003 , 0x000009af 
+ 00025064  0x00006847 rtn 
+ 00025065  0x0000684b call  0x000062ef 
+ 00025066  0x0000684c jam  0x0000003d , 0x0000007c 
+ 00025067  0x0000684d jam  0x00000007 , 0x000009af 
+ 00025068  0x0000684e rtn 
+ 00025069  0x00006851 arg  0x00000a4e , 0x00000011 
+ 00025070  0x00006852 arg  0x00000a6e , 0x00000012 
+ 00025071  0x00006853 arg  0x00000010 , 0x00000039 
+ 00025072  0x00006854 call  0x00007f88 
+ 00025073  0x00006855 branch  0x000061f7 , 0x00000005 
+ 00025074  0x00006856 jam  0x00000000 , 0x000009af 
+ 00025075  0x00006857 call  0x000076da 
+ 00025076  0x00006858 jam  0x00000024 , 0x0000007e 
+ 00025077  0x00006859 jam  0x00000040 , 0x0000007d 
+ 00025078  0x0000685a branch  0x00005d53 
+ 00025079  0x0000685c jam  0x0000000a , 0x000009af 
+ 00025080  0x0000685d call  0x000076d8 
+ 00025081  0x0000685e jam  0x00000040 , 0x0000007d 
+ 00025082  0x0000685f branch  0x00005e38 
+ 00025083  0x00006864 jam  0x00000040 , 0x0000007c 
+ 00025084  0x00006865 rtn 
+ 00025085  0x0000686c jam  0x0000003d , 0x0000007c 
+ 00025086  0x0000686e rtn 
+ 00025087  0x00006875 jam  0x00000000 , 0x000009b6 
+ 00025088  0x00006876 force  0x00000004 , 0x0000003f 
+ 00025089  0x00006877 call  0x00006298 
+ 00025090  0x00006878 force  0x00000001 , 0x0000003f 
+ 00025091  0x00006879 istore  0x00000001 , 0x00000005 
+ 00025092  0x0000687a force  0x00000001 , 0x0000003f 
+ 00025093  0x0000687b istore  0x00000001 , 0x00000005 
+ 00025094  0x0000687c force  0x00000030 , 0x0000003f 
+ 00025095  0x0000687d istore  0x00000001 , 0x00000005 
+ 00025096  0x0000687e call  0x000062fc 
+ 00025097  0x0000687f branch  0x000062b2 , 0x00000001 
+ 00025098  0x00006880 branch  0x000062b0 
+ 00025099  0x00006884 force  0x00000011 , 0x0000003f 
+ 00025100  0x00006885 call  0x00006298 
+ 00025101  0x00006886 fetch  0x00000001 , 0x000009b6 
+ 00025102  0x00006887 arg  0x0000462a , 0x00000006 
+ 00025103  0x00006888 iadd  0x00000006 , 0x00000006 
+ 00025104  0x00006889 ifetch  0x00000008 , 0x00000006 
+ 00025105  0x0000688a istore  0x00000008 , 0x00000005 
+ 00025106  0x0000688b ifetch  0x00000008 , 0x00000006 
+ 00025107  0x0000688c istore  0x00000008 , 0x00000005 
+ 00025108  0x0000688d fetch  0x00000001 , 0x000009b6 
+ 00025109  0x0000688e increase  0x00000010 , 0x0000003f 
+ 00025110  0x0000688f store  0x00000001 , 0x000009b6 
+ 00025111  0x00006890 call  0x000062fc 
+ 00025112  0x00006891 branch  0x000062b2 , 0x00000001 
+ 00025113  0x00006892 branch  0x000062b0 
+ 00025114  0x00006896 jam  0x00000006 , 0x000009ae 
+ 00025115  0x00006897 jam  0x0000003f , 0x0000007c 
+ 00025116  0x00006898 rtn 
+ 00025117  0x0000689c force  0x00000011 , 0x0000003f 
+ 00025118  0x0000689d call  0x00006298 
+ 00025119  0x0000689e arg  0x00000a4e , 0x00000006 
+ 00025120  0x0000689f ifetch  0x00000008 , 0x00000006 
+ 00025121  0x000068a0 istore  0x00000008 , 0x00000005 
+ 00025122  0x000068a1 ifetch  0x00000008 , 0x00000006 
+ 00025123  0x000068a2 istore  0x00000008 , 0x00000005 
+ 00025124  0x000068a3 branch  0x000062b0 
+ 00025125  0x000068a6 jam  0x00000040 , 0x0000007c 
+ 00025126  0x000068a7 rtn 
+ 00025127  0x000068ab call  0x000062fc 
+ 00025128  0x000068ac call  0x00007612 , 0x00000001 
+ 00025129  0x000068ad force  0x00000011 , 0x0000003f 
+ 00025130  0x000068ae call  0x00006298 
+ 00025131  0x000068af arg  0x00000a1e , 0x00000006 
+ 00025132  0x000068b0 ifetch  0x00000008 , 0x00000006 
+ 00025133  0x000068b1 istore  0x00000008 , 0x00000005 
+ 00025134  0x000068b2 ifetch  0x00000008 , 0x00000006 
+ 00025135  0x000068b3 istore  0x00000008 , 0x00000005 
+ 00025136  0x000068b4 call  0x000062fc 
+ 00025137  0x000068b5 nbranch  0x000062b0 , 0x00000001 
+ 00025138  0x000068b6 branch  0x000062b2 , 0x00000001 
+ 00025139  0x000068ba jam  0x0000000f , 0x000009af 
+ 00025140  0x000068bc call  0x000062ef 
+ 00025141  0x000068bd jam  0x0000000b , 0x0000007c 
+ 00025142  0x000068be call  0x00006307 
+ 00025143  0x000068bf branch  0x0000764e , 0x00000001 
+ 00025144  0x000068c0 branch  0x00007658 
+ 00025145  0x000068c2 call  0x000062eb 
+ 00025146  0x000068c4 jam  0x00000041 , 0x0000007c 
+ 00025147  0x000068c5 rtn 
+ 00025148  0x000068c8 force  0x00000011 , 0x0000003f 
+ 00025149  0x000068c9 call  0x00006298 
+ 00025150  0x000068ca arg  0x00000a4e , 0x00000006 
+ 00025151  0x000068cb ifetch  0x00000008 , 0x00000006 
+ 00025152  0x000068cc istore  0x00000008 , 0x00000005 
+ 00025153  0x000068cd ifetch  0x00000008 , 0x00000006 
+ 00025154  0x000068ce istore  0x00000008 , 0x00000005 
+ 00025155  0x000068cf call  0x000062fc 
+ 00025156  0x000068d0 nbranch  0x000062b0 , 0x00000001 
+ 00025157  0x000068d1 branch  0x000062b2 , 0x00000001 
+ 00025158  0x000068d4 force  0x00000003 , 0x0000003f 
+ 00025159  0x000068d5 call  0x00006298 
+ 00025160  0x000068d6 setarg  0x0000fffe 
+ 00025161  0x000068d7 istore  0x00000002 , 0x00000005 
+ 00025162  0x000068d8 branch  0x000062b0 
+ 00025163  0x000068db branch  0x000062b2 
+ 00025164  0x000068dd branch  0x000062b2 
+ 00025165  0x000068df branch  0x000062b2 
+ 00025166  0x000068e1 branch  0x000062b2 
+ 00025167  0x000068e7 call  0x0000630b 
+ 00025168  0x000068e8 arg  0x000040a0 , 0x00000011 
+ 00025169  0x000068e9 call  0x00006311 
+ 00025170  0x000068ea force  0x00000011 , 0x0000003f 
+ 00025171  0x000068eb call  0x00006298 
+ 00025172  0x000068ec arg  0x00000582 , 0x00000011 
+ 00025173  0x000068ed arg  0x00000562 , 0x00000012 
+ 00025174  0x000068ee call  0x00007352 
+ 00025175  0x000068ef nbranch  0x000062a7 , 0x00000029 
+ 00025176  0x000068f0 branch  0x000062ad 
+ 00025177  0x000068f3 call  0x0000630b 
+ 00025178  0x000068f4 arg  0x00000040 , 0x00000011 
+ 00025179  0x000068f5 call  0x00007255 
+ 00025180  0x000068f7 force  0x00000011 , 0x0000003f 
+ 00025181  0x000068f8 call  0x00006298 
+ 00025182  0x000068f9 arg  0x00000562 , 0x00000006 
+ 00025183  0x000068fa call  0x00007ebf 
+ 00025184  0x000068fb fetch  0x00000001 , 0x00000055 
+ 00025185  0x000068fc beq  0x00000019 , 0x000062b2 
+ 00025186  0x000068fd beq  0x00000018 , 0x000062b2 
+ 00025187  0x000068fe branch  0x000062ad 
+ 00025188  0x00006901 fetch  0x00000001 , 0x000009b5 
+ 00025189  0x00006902 branch  0x0000626a , 0x00000034 
+ 00025190  0x00006903 call  0x000062fc 
+ 00025191  0x00006904 call  0x000062ef , 0x00000001 
+ 00025192  0x00006905 ncall  0x000062eb , 0x00000001 
+ 00025193  0x00006906 branch  0x0000626b 
+ 00025194  0x00006908 call  0x000062ef 
+ 00025195  0x0000690a call  0x0000630b 
+ 00025196  0x0000690b branch  0x0000625c 
+ 00025197  0x0000690e arg  0x000040a0 , 0x00000011 
+ 00025198  0x0000690f call  0x00007288 
+ 00025199  0x00006910 force  0x00000005 , 0x0000003f 
+ 00025200  0x00006911 call  0x00006298 
+ 00025201  0x00006912 fetch  0x00000004 , 0x00000592 
+ 00025202  0x00006913 istore  0x00000004 , 0x00000005 
+ 00025203  0x00006914 arg  0x000004d5 , 0x00000002 
+ 00025204  0x00006915 call  0x000062e2 
+ 00025205  0x00006916 call  0x00007386 
+ 00025206  0x00006917 call  0x000062fc 
+ 00025207  0x00006918 branch  0x0000627c , 0x00000001 
+ 00025208  0x00006919 jam  0x00000001 , 0x000004d8 
+ 00025209  0x0000691a fetch  0x00000001 , 0x000009b5 
+ 00025210  0x0000691b rtn  0x00000034 
+ 00025211  0x0000691c jam  0x0000000b , 0x0000007c 
+ 00025212  0x0000691e fetch  0x00000001 , 0x000041bd 
+ 00025213  0x0000691f rtn  0x00000034 
+ 00025214  0x00006921 call  0x000062fc 
+ 00025215  0x00006922 nbranch  0x00006284 , 0x00000001 
+ 00025216  0x00006923 fetch  0x00000001 , 0x000004d7 
+ 00025217  0x00006924 rtn  0x00000034 
+ 00025218  0x00006925 jam  0x0000000f , 0x0000007c 
+ 00025219  0x00006926 rtn 
+ 00025220  0x00006928 rtnmark0  0x00000021 
+ 00025221  0x00006929 set0  0x00000021 , 0x00000000 
+ 00025222  0x0000692a jam  0x0000000f , 0x0000007c 
+ 00025223  0x0000692b rtn 
+ 00025224  0x00006930 call  0x0000630b 
+ 00025225  0x00006931 call  0x0000728b 
+ 00025226  0x00006932 force  0x00000011 , 0x0000003f 
+ 00025227  0x00006933 call  0x00006298 
+ 00025228  0x00006934 arg  0x00000562 , 0x00000006 
+ 00025229  0x00006935 call  0x00007ebf 
+ 00025230  0x00006936 branch  0x000062ad 
+ 00025231  0x00006939 force  0x00000001 , 0x0000003f 
+ 00025232  0x0000693a call  0x00006298 
+ 00025233  0x0000693b branch  0x000062ad 
+ 00025234  0x0000693e force  0x00000002 , 0x0000003f 
+ 00025235  0x0000693f call  0x00006298 
+ 00025236  0x00006940 force  0x00000010 , 0x0000003f 
+ 00025237  0x00006941 istore  0x00000001 , 0x00000005 
+ 00025238  0x00006942 store  0x00000001 , 0x00000054 
+ 00025239  0x00006943 branch  0x000062ad 
+ 00025240  0x00006947 lshift3  0x0000003f , 0x0000003f 
+ 00025241  0x00006948 or_into  0x00000007 , 0x0000003f 
+ 00025242  0x00006949 store  0x00000001 , 0x000004b6 
+ 00025243  0x0000694a arg  0x00000011 , 0x00000039 
+ 00025244  0x0000694b arg  0x000004b8 , 0x00000005 
+ 00025245  0x0000694c call  0x00007ed4 
+ 00025246  0x0000694d arg  0x000004b8 , 0x00000005 
+ 00025247  0x0000694e rtn 
+ 00025248  0x00006951 and  0x0000003f , 0x0000007f , 0x00000011 
+ 00025249  0x00006952 jam  0x0000007f , 0x00000048 
+ 00025250  0x00006953 deposit  0x00000007 
+ 00025251  0x00006954 call  0x00006298 
+ 00025252  0x00006955 deposit  0x00000011 
+ 00025253  0x00006956 istore  0x00000001 , 0x00000005 
+ 00025254  0x00006957 rtn 
+ 00025255  0x0000695a fetch  0x00000001 , 0x00000048 
+ 00025256  0x0000695b lshift  0x0000003f , 0x0000003f 
+ 00025257  0x0000695c fetcht  0x00000001 , 0x0000004c 
+ 00025258  0x0000695d isolate1  0x00000001 , 0x00000002 
+ 00025259  0x0000695e setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025260  0x0000695f branch  0x000062b7 
+ 00025261  0x00006963 fetcht  0x00000001 , 0x0000004c 
+ 00025262  0x00006964 and_into  0x00000001 , 0x00000002 
+ 00025263  0x00006965 branch  0x000062b3 
+ 00025264  0x00006968 force  0x00000000 , 0x00000002 
+ 00025265  0x00006969 branch  0x000062b3 
+ 00025266  0x0000696c force  0x00000001 , 0x00000002 
+ 00025267  0x0000696e fetch  0x00000001 , 0x00000048 
+ 00025268  0x0000696f lshift  0x0000003f , 0x0000003f 
+ 00025269  0x00006970 setflag  0x00000029 , 0x00000000 , 0x0000003f 
+ 00025270  0x00006971 ixor  0x00000002 , 0x0000003f 
+ 00025271  0x00006973 store  0x00000001 , 0x000004b7 
+ 00025272  0x00006974 jam  0x00000000 , 0x00000048 
+ 00025273  0x00006975 call  0x000062c7 
+ 00025274  0x00006976 enable  0x00000028 
+ 00025275  0x00006977 rtn 
+ 00025276  0x0000697b fetch  0x00000001 , 0x0000007c 
+ 00025277  0x0000697c rtn  0x00000034 
+ 00025278  0x0000697d call  0x000062c1 
+ 00025279  0x0000697e fetch  0x00000001 , 0x0000007c 
+ 00025280  0x0000697f rtn 
+ 00025281  0x00006982 bpatchx  0x00000086 , 0x00004030 
+ 00025282  0x00006983 fetch  0x00000001 , 0x00000048 
+ 00025283  0x00006984 branch  0x000062c7 , 0x00000034 
+ 00025284  0x00006985 fetch  0x00000001 , 0x00000078 
+ 00025285  0x00006986 nrtn  0x00000034 
+ 00025286  0x00006987 branch  0x000062d1 
+ 00025287  0x00006989 fetch  0x00000001 , 0x00000078 
+ 00025288  0x0000698a branch  0x000062d7 , 0x00000034 
+ 00025289  0x0000698b fetch  0x00000003 , 0x00000078 
+ 00025290  0x0000698c store  0x00000003 , 0x00000048 
+ 00025291  0x0000698d fetcht  0x00000001 , 0x0000007b 
+ 00025292  0x0000698e fetch  0x00000001 , 0x0000004c 
+ 00025293  0x0000698f set0  0x00000001 , 0x0000003f 
+ 00025294  0x00006990 ior  0x00000002 , 0x0000003f 
+ 00025295  0x00006991 store  0x00000001 , 0x0000004c 
+ 00025296  0x00006992 jam  0x00000000 , 0x00000078 
+ 00025297  0x00006994 fetch  0x00000001 , 0x0000007c 
+ 00025298  0x00006995 rtn  0x00000034 
+ 00025299  0x00006996 fetch  0x00000004 , 0x0000007c 
+ 00025300  0x00006997 store  0x00000004 , 0x00000078 
+ 00025301  0x00006998 jam  0x00000000 , 0x0000007c 
+ 00025302  0x00006999 rtn 
+ 00025303  0x0000699b fetch  0x00000001 , 0x0000007c 
+ 00025304  0x0000699c rtn  0x00000034 
+ 00025305  0x0000699d fetch  0x00000003 , 0x0000007c 
+ 00025306  0x0000699e store  0x00000003 , 0x00000048 
+ 00025307  0x0000699f fetcht  0x00000001 , 0x0000007f 
+ 00025308  0x000069a0 fetch  0x00000001 , 0x0000004c 
+ 00025309  0x000069a1 set0  0x00000001 , 0x0000003f 
+ 00025310  0x000069a2 ior  0x00000002 , 0x0000003f 
+ 00025311  0x000069a3 store  0x00000001 , 0x0000004c 
+ 00025312  0x000069a4 jam  0x00000000 , 0x0000007c 
+ 00025313  0x000069a5 rtn 
+ 00025314  0x000069a9 bpatchx  0x00000087 , 0x00004030 
+ 00025315  0x000069aa fetch  0x00000001 , 0x0000004c 
+ 00025316  0x000069ab copy  0x0000003f , 0x00000013 
+ 00025317  0x000069ac ifetch  0x00000001 , 0x00000002 
+ 00025318  0x000069ad call  0x00005e52 
+ 00025319  0x000069ae call  0x000062a7 
+ 00025320  0x000069af copy  0x00000013 , 0x0000003f 
+ 00025321  0x000069b0 store  0x00000001 , 0x0000004c 
+ 00025322  0x000069b1 rtn 
+ 00025323  0x000069b4 fetcht  0x00000001 , 0x0000004c 
+ 00025324  0x000069b5 set0  0x00000000 , 0x00000002 
+ 00025325  0x000069b6 storet  0x00000001 , 0x0000004c 
+ 00025326  0x000069b7 rtn 
+ 00025327  0x000069ba fetcht  0x00000001 , 0x0000004c 
+ 00025328  0x000069bb set1  0x00000000 , 0x00000002 
+ 00025329  0x000069bc storet  0x00000001 , 0x0000004c 
+ 00025330  0x000069bd rtn 
+ 00025331  0x000069c1 nsetflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025332  0x000069c2 fetcht  0x00000001 , 0x0000004c 
+ 00025333  0x000069c3 ixor  0x00000002 , 0x0000003f 
+ 00025334  0x000069c4 isolate1  0x00000001 , 0x0000003f 
+ 00025335  0x000069c5 rtn 
+ 00025336  0x000069c9 fetch  0x00000001 , 0x0000004c 
+ 00025337  0x000069ca setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025338  0x000069cb store  0x00000001 , 0x0000004c 
+ 00025339  0x000069cc rtn 
+ 00025340  0x000069d0 fetch  0x00000001 , 0x000009b4 
+ 00025341  0x000069d1 compare  0x00000001 , 0x0000003f , 0x0000007f 
+ 00025342  0x000069d2 rtn 
+ 00025343  0x000069d4 fetch  0x00000001 , 0x000009b4 
+ 00025344  0x000069d5 set1  0x00000007 , 0x0000003f 
+ 00025345  0x000069d6 store  0x00000001 , 0x000009b4 
+ 00025346  0x000069d7 rtn 
+ 00025347  0x000069d9 fetch  0x00000001 , 0x000009b4 
+ 00025348  0x000069da set0  0x00000007 , 0x0000003f 
+ 00025349  0x000069db store  0x00000001 , 0x000009b4 
+ 00025350  0x000069dc rtn 
+ 00025351  0x000069de fetch  0x00000001 , 0x000009b4 
+ 00025352  0x000069df isolate1  0x00000007 , 0x0000003f 
+ 00025353  0x000069e0 store  0x00000001 , 0x000009b4 
+ 00025354  0x000069e1 rtn 
+ 00025355  0x000069e5 arg  0x00000562 , 0x00000005 
+ 00025356  0x000069e7 force  0x00000010 , 0x00000039 
+ 00025357  0x000069ea random  0x0000003f 
+ 00025358  0x000069eb istore  0x00000001 , 0x00000005 
+ 00025359  0x000069ec loop  0x0000630d 
+ 00025360  0x000069ed rtn 
+ 00025361  0x000069f0 call  0x00007259 
+ 00025362  0x000069f1 arg  0x000041be , 0x00000011 
+ 00025363  0x000069f2 arg  0x00000592 , 0x00000012 
+ 00025364  0x000069f3 ifetch  0x00000008 , 0x00000011 
+ 00025365  0x000069f4 fetcht  0x00000001 , 0x00000030 
+ 00025366  0x000069f5 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00025367  0x000069f6 storet  0x00000001 , 0x00000030 
+ 00025368  0x000069f7 copy  0x00000011 , 0x00000005 
+ 00025369  0x000069f8 call  0x00007352 
+ 00025370  0x000069f9 branch  0x000021c4 
+ 00025371  0x00006a01 bpatchx  0x00000088 , 0x00004031 
+ 00025372  0x00006a03 call  0x000062bc 
+ 00025373  0x00006a04 nrtn  0x00000034 
+ 00025374  0x00006a06 fetch  0x00000001 , 0x00000055 
+ 00025375  0x00006a07 rtn  0x00000034 
+ 00025376  0x00006a0b beq  0x00000004 , 0x0000636f 
+ 00025377  0x00006a0c beq  0x00000005 , 0x00006374 
+ 00025378  0x00006a0d beq  0x00000002 , 0x00006366 
+ 00025379  0x00006a0e beq  0x00000003 , 0x0000637c 
+ 00025380  0x00006a0f beq  0x0000000e , 0x00006369 
+ 00025381  0x00006a10 beq  0x00000006 , 0x00006398 
+ 00025382  0x00006a11 beq  0x00000007 , 0x000063b0 
+ 00025383  0x00006a12 beq  0x00000009 , 0x000063b1 
+ 00025384  0x00006a13 beq  0x0000000a , 0x000063ba 
+ 00025385  0x00006a14 beq  0x0000000b , 0x000063be 
+ 00025386  0x00006a15 beq  0x0000000c , 0x00006386 
+ 00025387  0x00006a16 beq  0x0000000d , 0x00006389 
+ 00025388  0x00006a17 beq  0x0000000f , 0x0000638f 
+ 00025389  0x00006a18 beq  0x00000012 , 0x00006359 
+ 00025390  0x00006a19 beq  0x00000013 , 0x0000637c 
+ 00025391  0x00006a1a beq  0x00000010 , 0x0000635c 
+ 00025392  0x00006a1b beq  0x00000014 , 0x00006356 
+ 00025393  0x00006a1c beq  0x00000015 , 0x0000637c 
+ 00025394  0x00006a1d beq  0x00000016 , 0x00006350 
+ 00025395  0x00006a1e beq  0x00000018 , 0x00006355 
+ 00025396  0x00006a1f beq  0x00000017 , 0x00006349 
+ 00025397  0x00006a20 beq  0x00000019 , 0x0000634f 
+ 00025398  0x00006a21 beq  0x0000001a , 0x0000633a 
+ 00025399  0x00006a22 beq  0x0000001b , 0x00006344 
+ 00025400  0x00006a23 jam  0x00000000 , 0x00000055 
+ 00025401  0x00006a25 rtn 
+ 00025402  0x00006a27 fetch  0x00000001 , 0x000004d1 
+ 00025403  0x00006a28 rtnbit0  0x00000002 
+ 00025404  0x00006a29 rtnbit0  0x00000003 
+ 00025405  0x00006a2a jam  0x00000000 , 0x00000055 
+ 00025406  0x00006a2b call  0x00006340 
+ 00025407  0x00006a2c branch  0x00006cef 
+ 00025408  0x00006a2f fetch  0x00000001 , 0x0000016d 
+ 00025409  0x00006a30 rtnbit0  0x00000001 
+ 00025410  0x00006a31 jam  0x0000000a , 0x00000055 
+ 00025411  0x00006a32 rtn 
+ 00025412  0x00006a35 arg  0x00000007 , 0x00000007 
+ 00025413  0x00006a36 call  0x00007f16 
+ 00025414  0x00006a37 nrtn  0x00000034 
+ 00025415  0x00006a38 jam  0x0000001a , 0x00000055 
+ 00025416  0x00006a39 rtn 
+ 00025417  0x00006a3c fetch  0x00000001 , 0x0000016d 
+ 00025418  0x00006a3d set0  0x00000000 , 0x0000003f 
+ 00025419  0x00006a3e store  0x00000001 , 0x0000016d 
+ 00025420  0x00006a3f jam  0x00000019 , 0x00000055 
+ 00025421  0x00006a40 jam  0x0000000b , 0x0000007c 
+ 00025422  0x00006a41 rtn 
+ 00025423  0x00006a43 rtn 
+ 00025424  0x00006a45 fetch  0x00000001 , 0x000004d4 
+ 00025425  0x00006a46 rtnne  0x00000002 
+ 00025426  0x00006a47 call  0x000063c0 
+ 00025427  0x00006a48 jam  0x00000018 , 0x00000055 
+ 00025428  0x00006a49 rtn 
+ 00025429  0x00006a4c rtn 
+ 00025430  0x00006a4e jam  0x00000015 , 0x00000055 
+ 00025431  0x00006a4f jam  0x00000083 , 0x0000007c 
+ 00025432  0x00006a50 rtn 
+ 00025433  0x00006a52 jam  0x00000013 , 0x00000055 
+ 00025434  0x00006a53 jam  0x00000025 , 0x0000007c 
+ 00025435  0x00006a54 rtn 
+ 00025436  0x00006a57 fetch  0x00000001 , 0x0000455b 
+ 00025437  0x00006a58 rtneq  0x00000000 
+ 00025438  0x00006a59 beq  0x00000001 , 0x00006364 
+ 00025439  0x00006a5a arg  0x00000006 , 0x00000007 
+ 00025440  0x00006a5b call  0x00007f16 
+ 00025441  0x00006a5c nrtn  0x00000034 
+ 00025442  0x00006a5d jam  0x00000000 , 0x0000455b 
+ 00025443  0x00006a5e branch  0x0000637d 
+ 00025444  0x00006a60 rtn  0x00000029 
+ 00025445  0x00006a61 branch  0x00006398 
+ 00025446  0x00006a64 jam  0x00000003 , 0x00000055 
+ 00025447  0x00006a65 jam  0x00000027 , 0x0000007c 
+ 00025448  0x00006a66 rtn 
+ 00025449  0x00006a68 jam  0x00000013 , 0x0000007c 
+ 00025450  0x00006a69 set1  0x00000003 , 0x00000000 
+ 00025451  0x00006a6a jam  0x00000005 , 0x00000055 
+ 00025452  0x00006a6b setarg  0x000001ff 
+ 00025453  0x00006a6c store  0x00000002 , 0x000004d2 
+ 00025454  0x00006a6d rtn 
+ 00025455  0x00006a6f jam  0x00000005 , 0x00000055 
+ 00025456  0x00006a70 jam  0x000000ff , 0x000004d2 
+ 00025457  0x00006a71 set0  0x00000022 , 0x00000000 
+ 00025458  0x00006a72 jam  0x00000033 , 0x0000007c 
+ 00025459  0x00006a73 branch  0x00005d04 
+ 00025460  0x00006a75 rtnmark1  0x00000022 
+ 00025461  0x00006a76 fetch  0x00000002 , 0x000004d2 
+ 00025462  0x00006a77 sub  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025463  0x00006a78 branch  0x0000637a , 0x00000005 
+ 00025464  0x00006a79 store  0x00000002 , 0x000004d2 
+ 00025465  0x00006a7a rtn 
+ 00025466  0x00006a7c jam  0x0000000e , 0x00000055 
+ 00025467  0x00006a7d rtn 
+ 00025468  0x00006a80 rtn 
+ 00025469  0x00006a83 fetch  0x00000001 , 0x000004d1 
+ 00025470  0x00006a84 rtnbit0  0x00000003 
+ 00025471  0x00006a85 rtnbit0  0x00000002 
+ 00025472  0x00006a86 fetch  0x00000001 , 0x0000016d 
+ 00025473  0x00006a87 set0  0x00000002 , 0x0000003f 
+ 00025474  0x00006a88 store  0x00000001 , 0x0000016d 
+ 00025475  0x00006a89 jam  0x00000013 , 0x0000007c 
+ 00025476  0x00006a8a jam  0x00000010 , 0x00000055 
+ 00025477  0x00006a8b rtn 
+ 00025478  0x00006a8e jam  0x0000000d , 0x00000055 
+ 00025479  0x00006a8f jam  0x00000031 , 0x0000007c 
+ 00025480  0x00006a90 rtn 
+ 00025481  0x00006a93 fetch  0x00000001 , 0x000004d1 
+ 00025482  0x00006a94 rtnbit0  0x00000002 
+ 00025483  0x00006a95 jam  0x00000000 , 0x00000055 
+ 00025484  0x00006a97 rtn 
+ 00025485  0x00006a99 jam  0x00000006 , 0x00000055 
+ 00025486  0x00006a9a rtn 
+ 00025487  0x00006a9d fetch  0x00000001 , 0x000004d2 
+ 00025488  0x00006a9e increase  0xffffffff , 0x0000003f 
+ 00025489  0x00006a9f branch  0x00006394 , 0x00000034 
+ 00025490  0x00006aa0 store  0x00000001 , 0x000004d2 
+ 00025491  0x00006aa1 rtn 
+ 00025492  0x00006aa3 jam  0x00000007 , 0x0000007c 
+ 00025493  0x00006aa4 jam  0x00000016 , 0x000004ca 
+ 00025494  0x00006aa5 jam  0x00000000 , 0x00000055 
+ 00025495  0x00006aa6 rtn 
+ 00025496  0x00006aa9 fetch  0x00000001 , 0x0000016d 
+ 00025497  0x00006aaa bbit1  0x00000002 , 0x0000637d 
+ 00025498  0x00006aab bbit1  0x00000000 , 0x0000639d 
+ 00025499  0x00006aad jam  0x0000001a , 0x00000055 
+ 00025500  0x00006aae rtn 
+ 00025501  0x00006ab0 fetch  0x00000001 , 0x000041bd 
+ 00025502  0x00006ab1 branch  0x000063a9 , 0x00000034 
+ 00025503  0x00006ab2 fetch  0x00000001 , 0x000004d1 
+ 00025504  0x00006ab3 rtnbit0  0x00000003 
+ 00025505  0x00006ab4 rtnbit0  0x00000002 
+ 00025506  0x00006ab5 fetch  0x00000004 , 0x000004e9 
+ 00025507  0x00006ab6 arg  0x00000064 , 0x00000002 
+ 00025508  0x00006ab7 iadd  0x00000002 , 0x00000002 
+ 00025509  0x00006ab8 copy  0x00000022 , 0x0000003f 
+ 00025510  0x00006ab9 isub  0x00000002 , 0x0000003e 
+ 00025511  0x00006aba nrtn  0x00000002 
+ 00025512  0x00006abb branch  0x00006349 
+ 00025513  0x00006ac0 jam  0x00000016 , 0x00000055 
+ 00025514  0x00006ac1 jam  0x00000004 , 0x00004689 
+ 00025515  0x00006ac2 setarg  0x00003030 
+ 00025516  0x00006ac3 store  0x00000002 , 0x0000468a 
+ 00025517  0x00006ac4 istore  0x00000002 , 0x00000005 
+ 00025518  0x00006ac5 jam  0x00000002 , 0x000004d4 
+ 00025519  0x00006ac6 branch  0x00006350 
+ 00025520  0x00006ac9 rtn 
+ 00025521  0x00006acb fetch  0x00000001 , 0x0000016d 
+ 00025522  0x00006acc bbit1  0x00000001 , 0x000063b5 
+ 00025523  0x00006acd jam  0x0000001a , 0x00000055 
+ 00025524  0x00006ace rtn 
+ 00025525  0x00006ad1 fetch  0x00000001 , 0x0000016d 
+ 00025526  0x00006ad2 set0  0x00000001 , 0x0000003f 
+ 00025527  0x00006ad3 store  0x00000001 , 0x0000016d 
+ 00025528  0x00006ad4 jam  0x0000000f , 0x0000007c 
+ 00025529  0x00006ad5 rtn 
+ 00025530  0x00006ad8 fetch  0x00000001 , 0x000004d8 
+ 00025531  0x00006ad9 rtn  0x00000034 
+ 00025532  0x00006ada jam  0x00000000 , 0x00000055 
+ 00025533  0x00006adb branch  0x000063b5 
+ 00025534  0x00006ade jam  0x0000000c , 0x00000055 
+ 00025535  0x00006adf rtn 
+ 00025536  0x00006ae2 fetch  0x00000001 , 0x0000004b 
+ 00025537  0x00006ae3 bbit1  0x00000002 , 0x000063c5 
+ 00025538  0x00006ae4 call  0x000062ef 
+ 00025539  0x00006ae5 jam  0x00000008 , 0x0000007c 
+ 00025540  0x00006ae6 branch  0x00004d04 
+ 00025541  0x00006ae8 fetch  0x00000001 , 0x0000004b 
+ 00025542  0x00006ae9 set0  0x00000002 , 0x0000003f 
+ 00025543  0x00006aea store  0x00000001 , 0x0000004b 
+ 00025544  0x00006aeb call  0x00006001 
+ 00025545  0x00006aec call  0x000062f8 
+ 00025546  0x00006aed branch  0x00004d04 
+ 00025547  0x00006af0 setarg  0x00000004 
+ 00025548  0x00006af1 store  0x00000001 , 0x00004689 
+ 00025549  0x00006af2 setarg  0x00003030 
+ 00025550  0x00006af3 istore  0x00000002 , 0x00000005 
+ 00025551  0x00006af4 istore  0x00000002 , 0x00000005 
+ 00025552  0x00006af5 rtn 
+ 00025553  0x00006afc bpatchx  0x0000008c , 0x00004031 
+ 00025554  0x00006afd hfetch  0x00000001 , 0x00008073 
+ 00025555  0x00006afe arg  0x00000006 , 0x00000002 
+ 00025556  0x00006aff ior  0x00000002 , 0x0000003f 
+ 00025557  0x00006b00 hstore  0x00000001 , 0x00008073 
+ 00025558  0x00006b01 hfetch  0x00000001 , 0x00008077 
+ 00025559  0x00006b02 ior  0x00000002 , 0x0000003f 
+ 00025560  0x00006b03 hstore  0x00000001 , 0x00008077 
+ 00025561  0x00006b04 call  0x000063ee 
+ 00025562  0x00006b05 hfetch  0x00000001 , 0x00008077 
+ 00025563  0x00006b06 set0  0x00000001 , 0x0000003f 
+ 00025564  0x00006b07 set0  0x00000002 , 0x0000003f 
+ 00025565  0x00006b08 hstore  0x00000001 , 0x00008077 
+ 00025566  0x00006b09 nop  0x0000001e 
+ 00025567  0x00006b0a branch  0x000063f2 
+ 00025568  0x00006b0d hfetch  0x00000001 , 0x00008073 
+ 00025569  0x00006b0e arg  0x000000c0 , 0x00000002 
+ 00025570  0x00006b0f ior  0x00000002 , 0x0000003f 
+ 00025571  0x00006b10 hstore  0x00000001 , 0x00008073 
+ 00025572  0x00006b11 hfetch  0x00000001 , 0x00008077 
+ 00025573  0x00006b12 ior  0x00000002 , 0x0000003f 
+ 00025574  0x00006b13 hstore  0x00000001 , 0x00008077 
+ 00025575  0x00006b14 call  0x000063ee 
+ 00025576  0x00006b15 hfetch  0x00000001 , 0x00008077 
+ 00025577  0x00006b16 set0  0x00000006 , 0x0000003f 
+ 00025578  0x00006b17 set0  0x00000007 , 0x0000003f 
+ 00025579  0x00006b18 hstore  0x00000001 , 0x00008077 
+ 00025580  0x00006b19 nop  0x0000001e 
+ 00025581  0x00006b1a branch  0x000063f6 
+ 00025582  0x00006b1d hfetch  0x00000001 , 0x00008081 
+ 00025583  0x00006b1e and  0x0000003f , 0x000000fc , 0x0000003f 
+ 00025584  0x00006b1f hstore  0x00000001 , 0x00008081 
+ 00025585  0x00006b20 rtn 
+ 00025586  0x00006b22 hfetch  0x00000001 , 0x00008081 
+ 00025587  0x00006b23 or  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025588  0x00006b24 hstore  0x00000001 , 0x00008081 
+ 00025589  0x00006b25 rtn 
+ 00025590  0x00006b27 hfetch  0x00000001 , 0x00008081 
+ 00025591  0x00006b28 or  0x0000003f , 0x00000003 , 0x0000003f 
+ 00025592  0x00006b29 set0  0x00000004 , 0x0000003f 
+ 00025593  0x00006b2a hstore  0x00000001 , 0x00008081 
+ 00025594  0x00006b2b rtn 
+ 00025595  0x00006b30 copy  0x0000003f , 0x00000012 
+ 00025596  0x00006b31 call  0x0000640f 
+ 00025597  0x00006b32 nop  0x00000064 
+ 00025598  0x00006b33 copy  0x00000012 , 0x0000003f 
+ 00025599  0x00006b34 call  0x00006414 
+ 00025600  0x00006b35 copy  0x0000003f , 0x00000012 
+ 00025601  0x00006b36 call  0x00006411 
+ 00025602  0x00006b37 nop  0x00000064 
+ 00025603  0x00006b38 copy  0x00000012 , 0x0000003f 
+ 00025604  0x00006b39 rtn 
+ 00025605  0x00006b3c copy  0x0000003f , 0x00000012 
+ 00025606  0x00006b3d call  0x0000640f 
+ 00025607  0x00006b3e nop  0x00000064 
+ 00025608  0x00006b3f copy  0x00000012 , 0x0000003f 
+ 00025609  0x00006b40 call  0x00006413 
+ 00025610  0x00006b41 call  0x00006411 
+ 00025611  0x00006b42 nop  0x00000064 
+ 00025612  0x00006b43 rtn 
+ 00025613  0x00006b47 fetcht  0x00000001 , 0x00004214 
+ 00025614  0x00006b48 branch  0x0000680e 
+ 00025615  0x00006b4c fetcht  0x00000001 , 0x00004214 
+ 00025616  0x00006b4d branch  0x00006829 
+ 00025617  0x00006b51 fetcht  0x00000001 , 0x00004214 
+ 00025618  0x00006b52 branch  0x00006825 
+ 00025619  0x00006b56 branch  0x000064ec 
+ 00025620  0x00006b59 branch  0x000064f3 
+ 00025621  0x00006b61 nbranch  0x00006419 , 0x00000028 
+ 00025622  0x00006b62 hfetch  0x00000001 , 0x00008085 
+ 00025623  0x00006b63 or_into  0x00000002 , 0x0000003f 
+ 00025624  0x00006b64 hstore  0x00000001 , 0x00008085 
+ 00025625  0x00006b66 copy  0x00000002 , 0x0000003e 
+ 00025626  0x00006b67 branch  0x0000641c , 0x00000005 
+ 00025627  0x00006b68 copy  0x00000013 , 0x0000003d 
+ 00025628  0x00006b6a isolate0  0x00000000 , 0x0000003e 
+ 00025629  0x00006b6b branch  0x000064b9 
+ 00025630  0x00006b6f force  0x00000004 , 0x00000002 
+ 00025631  0x00006b71 arg  0x000001fe , 0x00000011 
+ 00025632  0x00006b72 hfetch  0x00000001 , 0x00008085 
+ 00025633  0x00006b73 and_into  0x000000fd , 0x0000003f 
+ 00025634  0x00006b74 hstore  0x00000001 , 0x00008085 
+ 00025635  0x00006b75 call  0x00006419 
+ 00025636  0x00006b76 arg  0x000055aa , 0x00000011 
+ 00025637  0x00006b77 fetch  0x00000002 , 0x000001fe 
+ 00025638  0x00006b78 ifetcht  0x00000002 , 0x00000006 
+ 00025639  0x00006b79 isub  0x00000011 , 0x0000003e 
+ 00025640  0x00006b7a rtn 
+ 00025641  0x00006b7d arg  0x00000002 , 0x00000002 
+ 00025642  0x00006b7e arg  0x00000204 , 0x00000011 
+ 00025643  0x00006b7f call  0x00006419 
+ 00025644  0x00006b80 fetch  0x00000002 , 0x00000204 
+ 00025645  0x00006b81 store  0x00000002 , 0x000001f7 
+ 00025646  0x00006b82 call  0x00006430 , 0x00000028 
+ 00025647  0x00006b83 rtn 
+ 00025648  0x00006b86 arg  0x00000010 , 0x00000002 
+ 00025649  0x00006b87 arg  0x00000206 , 0x00000011 
+ 00025650  0x00006b88 hfetch  0x00000001 , 0x00008085 
+ 00025651  0x00006b89 and_into  0x000000fd , 0x0000003f 
+ 00025652  0x00006b8a hstore  0x00000001 , 0x00008085 
+ 00025653  0x00006b8b call  0x00006419 
+ 00025654  0x00006b8c arg  0x00000206 , 0x00000006 
+ 00025655  0x00006b8d arg  0x00000010 , 0x00000039 
+ 00025656  0x00006b8e call  0x00007478 
+ 00025657  0x00006b8f call  0x00007428 
+ 00025658  0x00006b90 call  0x00007491 
+ 00025659  0x00006b91 branch  0x00007422 
+ 00025660  0x00006b94 disable  0x0000002d 
+ 00025661  0x00006b95 call  0x0000641e 
+ 00025662  0x00006b96 nrtn  0x00000005 
+ 00025663  0x00006b97 enable  0x0000002d 
+ 00025664  0x00006b98 jam  0x00000080 , 0x00008023 
+ 00025665  0x00006b99 jam  0x00000000 , 0x00008022 
+ 00025666  0x00006b9a jam  0x00000000 , 0x00008024 
+ 00025667  0x00006b9b arg  0x00008025 , 0x00000011 
+ 00025668  0x00006b9c call  0x00006415 
+ 00025669  0x00006b9d jam  0x00000000 , 0x00008023 
+ 00025670  0x00006b9f arg  0x00000006 , 0x00000002 
+ 00025671  0x00006ba0 call  0x0000641f 
+ 00025672  0x00006ba1 nrtn  0x00000005 
+ 00025673  0x00006ba2 ifetch  0x00000002 , 0x00000006 
+ 00025674  0x00006ba3 iforce  0x00000011 
+ 00025675  0x00006ba4 call  0x00006419 
+ 00025676  0x00006ba5 branch  0x00006446 
+ 00025677  0x00006baa call  0x00007f99 
+ 00025678  0x00006bab setarg  0x00001000 
+ 00025679  0x00006bac store  0x00000002 , 0x000001f7 
+ 00025680  0x00006bad arg  0x000065e5 , 0x00000013 
+ 00025681  0x00006bae arg  0x00000002 , 0x00000039 
+ 00025682  0x00006bb0 call  0x0000641e 
+ 00025683  0x00006bb1 nrtn  0x00000005 
+ 00025684  0x00006bb2 fetch  0x00000002 , 0x000001f7 
+ 00025685  0x00006bb3 byteswap  0x0000003f , 0x0000003f 
+ 00025686  0x00006bb4 iadd  0x00000002 , 0x0000003f 
+ 00025687  0x00006bb5 byteswap  0x0000003f , 0x0000003f 
+ 00025688  0x00006bb6 store  0x00000002 , 0x000001f7 
+ 00025689  0x00006bb7 loop  0x00006452 
+ 00025690  0x00006bb8 branch  0x00006446 
+ 00025691  0x00006bbb call  0x00007f99 
+ 00025692  0x00006bbc disable  0x00000028 
+ 00025693  0x00006bbd call  0x0000666a 
+ 00025694  0x00006bbe setarg  0x00000000 
+ 00025695  0x00006bbf arg  0x000001f3 , 0x00000011 
+ 00025696  0x00006bc0 arg  0x00000002 , 0x00000002 
+ 00025697  0x00006bc1 call  0x000066b3 
+ 00025698  0x00006bc2 fetch  0x00000002 , 0x000001f3 
+ 00025699  0x00006bc3 bbit0  0x00000007 , 0x0000646e 
+ 00025700  0x00006bc4 jam  0x00000025 , 0x00008050 
+ 00025701  0x00006bc5 setarg  0x000007f0 
+ 00025702  0x00006bc6 arg  0x00000206 , 0x00000011 
+ 00025703  0x00006bc7 arg  0x00000010 , 0x00000002 
+ 00025704  0x00006bc8 call  0x000066b3 
+ 00025705  0x00006bc9 jam  0x00000008 , 0x00008006 
+ 00025706  0x00006bca set1  0x0000002b , 0x00000000 
+ 00025707  0x00006bcb arg  0x00000206 , 0x00000006 
+ 00025708  0x00006bcc call  0x00007484 
+ 00025709  0x00006bcd enable  0x00000028 
+ 00025710  0x00006bcf jam  0x00000000 , 0x000041da 
+ 00025711  0x00006bd1 call  0x000064b0 
+ 00025712  0x00006bd2 fetch  0x00000002 , 0x000001f3 
+ 00025713  0x00006bd3 byteswap  0x0000003f , 0x0000003f 
+ 00025714  0x00006bd4 arg  0x000007ff , 0x00000002 
+ 00025715  0x00006bd5 iand  0x00000002 , 0x0000003f 
+ 00025716  0x00006bd6 branch  0x0000647b , 0x00000005 
+ 00025717  0x00006bd7 call  0x0000666f 
+ 00025718  0x00006bd8 arg  0x000066b8 , 0x00000013 
+ 00025719  0x00006bd9 call  0x00006430 , 0x00000028 
+ 00025720  0x00006bda call  0x0000643c 
+ 00025721  0x00006bdb fetch  0x00000001 , 0x000001f2 
+ 00025722  0x00006bdc bbit0  0x00000000 , 0x0000646f 
+ 00025723  0x00006bdf call  0x0000666d 
+ 00025724  0x00006be0 jam  0x00000000 , 0x000041da 
+ 00025725  0x00006be2 call  0x000064b0 
+ 00025726  0x00006be3 call  0x000065c2 
+ 00025727  0x00006be4 fetch  0x00000001 , 0x000001f3 
+ 00025728  0x00006be5 bbit1  0x00000006 , 0x0000648e 
+ 00025729  0x00006be6 call  0x000064aa 
+ 00025730  0x00006be7 nbranch  0x00006486 , 0x0000002d 
+ 00025731  0x00006be8 fetch  0x00000001 , 0x000001f2 
+ 00025732  0x00006be9 bbit0  0x00000000 , 0x0000647d 
+ 00025733  0x00006bea branch  0x0000649b 
+ 00025734  0x00006bec call  0x000065bf 
+ 00025735  0x00006bed fetch  0x00000001 , 0x000001f3 
+ 00025736  0x00006bee bbit1  0x00000006 , 0x0000648e 
+ 00025737  0x00006bef call  0x000064aa 
+ 00025738  0x00006bf0 nbranch  0x0000648e , 0x0000002d 
+ 00025739  0x00006bf1 fetch  0x00000001 , 0x000001f2 
+ 00025740  0x00006bf2 bbit0  0x00000000 , 0x0000647d 
+ 00025741  0x00006bf3 branch  0x0000649b 
+ 00025742  0x00006bf6 jam  0x00000000 , 0x000041da 
+ 00025743  0x00006bf8 call  0x000064b0 
+ 00025744  0x00006bf9 fetch  0x00000001 , 0x000001f3 
+ 00025745  0x00006bfa bbit1  0x00000005 , 0x0000649b 
+ 00025746  0x00006bfb setarg  0x00000000 
+ 00025747  0x00006bfc store  0x00000003 , 0x000001f6 
+ 00025748  0x00006bfd call  0x00006502 
+ 00025749  0x00006bfe arg  0x00006578 , 0x00000013 
+ 00025750  0x00006bff call  0x00006429 
+ 00025751  0x00006c00 call  0x0000643c 
+ 00025752  0x00006c01 nbranch  0x0000649b , 0x0000002d 
+ 00025753  0x00006c02 fetch  0x00000001 , 0x000001f2 
+ 00025754  0x00006c03 bbit0  0x00000000 , 0x0000648f 
+ 00025755  0x00006c06 bmark1  0x0000002b , 0x0000649d 
+ 00025756  0x00006c07 call  0x000064a3 
+ 00025757  0x00006c09 fetch  0x00000001 , 0x000001f3 
+ 00025758  0x00006c0a bbit0  0x00000004 , 0x000064a3 
+ 00025759  0x00006c0b jam  0x00000021 , 0x00008050 
+ 00025760  0x00006c0c call  0x00004c0e 
+ 00025761  0x00006c0e call  0x00004c2e 
+ 00025762  0x00006c0f branch  0x000064a1 
+ 00025763  0x00006c12 setarg  0x00000000 
+ 00025764  0x00006c13 store  0x00000008 , 0x00000206 
+ 00025765  0x00006c14 store  0x00000008 , 0x0000020e 
+ 00025766  0x00006c15 force  0x00000004 , 0x00000038 
+ 00025767  0x00006c16 call  0x00007492 
+ 00025768  0x00006c17 jam  0x00000021 , 0x00008050 
+ 00025769  0x00006c18 rtn 
+ 00025770  0x00006c1c setarg  0x00000000 
+ 00025771  0x00006c1d store  0x00000002 , 0x000001f7 
+ 00025772  0x00006c1e arg  0x000065e5 , 0x00000013 
+ 00025773  0x00006c1f call  0x000065a3 
+ 00025774  0x00006c20 call  0x00006429 
+ 00025775  0x00006c21 branch  0x0000643c 
+ 00025776  0x00006c25 fetch  0x00000001 , 0x000041da 
+ 00025777  0x00006c26 increase  0x00000001 , 0x0000003f 
+ 00025778  0x00006c27 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00025779  0x00006c28 nbranch  0x000064b6 , 0x00000002 
+ 00025780  0x00006c29 store  0x00000001 , 0x000041da 
+ 00025781  0x00006c2a rtn 
+ 00025782  0x00006c2d call  0x000064a3 
+ 00025783  0x00006c2e call  0x00007fa1 
+ 00025784  0x00006c2f rtn 
+ 00025785  0x00006c34 fetch  0x00000001 , 0x000001f2 
+ 00025786  0x00006c35 lshift  0x0000003f , 0x0000003f 
+ 00025787  0x00006c36 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025788  0x00006c37 isolate0  0x0000000f , 0x00000011 
+ 00025789  0x00006c38 rtn  0x00000001 
+ 00025790  0x00006c39 store  0x00000001 , 0x000001f2 
+ 00025791  0x00006c3a rtn 
+ 00025792  0x00006c3e hfetch  0x00000001 , 0x00008085 
+ 00025793  0x00006c3f rtnbit0  0x00000001 
+ 00025794  0x00006c40 branch  0x000064c6 
+ 00025795  0x00006c42 hfetch  0x00000001 , 0x0000812c 
+ 00025796  0x00006c43 qisolate1  0x0000003f 
+ 00025797  0x00006c44 rtn  0x00000001 
+ 00025798  0x00006c46 hfetch  0x00000001 , 0x00008108 
+ 00025799  0x00006c47 bbit0  0x00000001 , 0x000064c3 
+ 00025800  0x00006c48 call  0x00007422 
+ 00025801  0x00006c49 branch  0x000064c3 
+ 00025802  0x00006c4e fetch  0x00000002 , 0x00004199 
+ 00025803  0x00006c4f rtn  0x00000034 
+ 00025804  0x00006c50 jam  0x00000080 , 0x00008023 
+ 00025805  0x00006c51 jam  0x00000000 , 0x00008022 
+ 00025806  0x00006c52 jam  0x00000000 , 0x00008024 
+ 00025807  0x00006c53 fetcht  0x00000002 , 0x0000419b 
+ 00025808  0x00006c54 lshift2  0x00000002 , 0x00000039 
+ 00025809  0x00006c55 iforce  0x00000006 
+ 00025810  0x00006c57 ifetch  0x00000001 , 0x00000006 
+ 00025811  0x00006c58 hstore  0x00000001 , 0x00008025 
+ 00025812  0x00006c59 loop  0x000064d2 
+ 00025813  0x00006c5a jam  0x00000000 , 0x00008023 
+ 00025814  0x00006c5b rtn 
+ 00025815  0x00006c61 bpatchx  0x0000008d , 0x00004031 
+ 00025816  0x00006c62 call  0x000064dd 
+ 00025817  0x00006c63 branch  0x000063f2 
+ 00025818  0x00006c66 call  0x000064dd 
+ 00025819  0x00006c67 call  0x000063ee 
+ 00025820  0x00006c68 branch  0x000063f6 
+ 00025821  0x00006c6b fetch  0x00000001 , 0x00004212 
+ 00025822  0x00006c6c hstore  0x00000001 , 0x00008086 
+ 00025823  0x00006c6d fetch  0x00000001 , 0x00004213 
+ 00025824  0x00006c6e hstore  0x00000001 , 0x00008087 
+ 00025825  0x00006c6f setarg  0x000001f5 
+ 00025826  0x00006c70 hstore  0x00000002 , 0x0000808a 
+ 00025827  0x00006c71 setarg  0x000001fa 
+ 00025828  0x00006c72 hstore  0x00000002 , 0x0000808c 
+ 00025829  0x00006c73 branch  0x000063ee 
+ 00025830  0x00006c76 hfetch  0x00000001 , 0x00008086 
+ 00025831  0x00006c77 set1  0x00000007 , 0x0000003f 
+ 00025832  0x00006c78 hstore  0x00000001 , 0x00008086 
+ 00025833  0x00006c79 set0  0x00000007 , 0x0000003f 
+ 00025834  0x00006c7a hstore  0x00000001 , 0x00008086 
+ 00025835  0x00006c7b rtn 
+ 00025836  0x00006c80 set1  0x00000007 , 0x0000003f 
+ 00025837  0x00006c81 store  0x00000002 , 0x000001f5 
+ 00025838  0x00006c82 bpatchx  0x0000008e , 0x00004031 
+ 00025839  0x00006c83 jam  0x00000002 , 0x00008088 
+ 00025840  0x00006c84 jam  0x00000000 , 0x0000808e 
+ 00025841  0x00006c85 jam  0x00000002 , 0x00008006 
+ 00025842  0x00006c86 branch  0x000064fc 
+ 00025843  0x00006c8a force  0x00000001 , 0x00000002 
+ 00025844  0x00006c8e store  0x00000001 , 0x000001f5 
+ 00025845  0x00006c8f bpatchx  0x0000008f , 0x00004031 
+ 00025846  0x00006c90 jam  0x00000001 , 0x00008088 
+ 00025847  0x00006c91 hstoret  0x00000002 , 0x0000808e 
+ 00025848  0x00006c92 jam  0x00000002 , 0x00008006 
+ 00025849  0x00006c93 call  0x000064fc 
+ 00025850  0x00006c94 fetch  0x00000001 , 0x000001fa 
+ 00025851  0x00006c95 rtn 
+ 00025852  0x00006c98 fetch  0x00000002 , 0x000040d6 
+ 00025853  0x00006c99 increase  0x00000001 , 0x0000003f 
+ 00025854  0x00006c9a store  0x00000002 , 0x000040d6 
+ 00025855  0x00006c9b hfetch  0x00000001 , 0x0000812c 
+ 00025856  0x00006c9c bbit0  0x00000003 , 0x000064fc 
+ 00025857  0x00006c9d rtn 
+ 00025858  0x00006ca0 jam  0x00000040 , 0x00008086 
+ 00025859  0x00006ca1 jam  0x00000000 , 0x00008087 
+ 00025860  0x00006ca2 hfetch  0x00000001 , 0x00008081 
+ 00025861  0x00006ca3 set0  0x00000000 , 0x0000003f 
+ 00025862  0x00006ca4 set1  0x00000001 , 0x0000003f 
+ 00025863  0x00006ca5 hstore  0x00000001 , 0x00008081 
+ 00025864  0x00006ca6 setarg  0x00000000 
+ 00025865  0x00006ca7 store  0x00000004 , 0x000001f5 
+ 00025866  0x00006ca8 rtn 
+ 00025867  0x00006cac setarg  0x00000000 
+ 00025868  0x00006cad hstore  0x00000002 , 0x0000808e 
+ 00025869  0x00006cae setarg  0x00000001 
+ 00025870  0x00006caf hstore  0x00000002 , 0x00008088 
+ 00025871  0x00006cb0 setarg  0x000001f5 
+ 00025872  0x00006cb1 hstore  0x00000002 , 0x0000808a 
+ 00025873  0x00006cb2 jam  0x00000006 , 0x000001f5 
+ 00025874  0x00006cb3 jam  0x00000002 , 0x00008006 
+ 00025875  0x00006cb4 branch  0x000064fc 
+ 00025876  0x00006cc4 disable  0x00000028 
+ 00025877  0x00006cc5 copy  0x0000003f , 0x00000012 
+ 00025878  0x00006cc6 fetch  0x00000001 , 0x00004239 
+ 00025879  0x00006cc7 rtnne  0x00000000 
+ 00025880  0x00006cc8 enable  0x00000028 
+ 00025881  0x00006cc9 copy  0x00000012 , 0x0000003f 
+ 00025882  0x00006cca branch  0x00006522 
+ 00025883  0x00006cce fetch  0x00000001 , 0x00004239 
+ 00025884  0x00006ccf beq  0x00000001 , 0x00006522 
+ 00025885  0x00006cd0 beq  0x00000002 , 0x00006528 
+ 00025886  0x00006cd1 beq  0x00000003 , 0x00006530 
+ 00025887  0x00006cd2 beq  0x00000004 , 0x00006537 
+ 00025888  0x00006cd3 beq  0x00000005 , 0x0000653d 
+ 00025889  0x00006cd4 rtn 
+ 00025890  0x00006cd7 store  0x00000003 , 0x00004232 
+ 00025891  0x00006cd8 copy  0x00000011 , 0x0000003f 
+ 00025892  0x00006cd9 store  0x00000002 , 0x00004235 
+ 00025893  0x00006cda storet  0x00000002 , 0x00004237 
+ 00025894  0x00006cdb jam  0x00000002 , 0x00004239 
+ 00025895  0x00006cdc branch  0x00006502 
+ 00025896  0x00006cde call  0x00006502 
+ 00025897  0x00006cdf jam  0x00000003 , 0x00004239 
+ 00025898  0x00006ce0 call  0x0000650b 
+ 00025899  0x00006ce1 arg  0x000001f5 , 0x00000011 
+ 00025900  0x00006ce2 fetch  0x00000003 , 0x00004232 
+ 00025901  0x00006ce3 jam  0x00000004 , 0x00008088 
+ 00025902  0x00006ce4 arg  0x00000020 , 0x00000002 
+ 00025903  0x00006ce5 branch  0x00006556 
+ 00025904  0x00006ce8 call  0x00006502 
+ 00025905  0x00006ce9 call  0x0000650b 
+ 00025906  0x00006cea setarg  0x00000005 
+ 00025907  0x00006ceb call  0x000064f3 
+ 00025908  0x00006cec rtnbit1  0x00000000 
+ 00025909  0x00006ced jam  0x00000004 , 0x00004239 
+ 00025910  0x00006cee rtn 
+ 00025911  0x00006cf0 call  0x00006502 
+ 00025912  0x00006cf1 jam  0x00000005 , 0x00004239 
+ 00025913  0x00006cf2 call  0x0000650b 
+ 00025914  0x00006cf3 call  0x0000654a 
+ 00025915  0x00006cf4 call  0x00006552 
+ 00025916  0x00006cf5 branch  0x00006545 
+ 00025917  0x00006cf7 call  0x00006502 
+ 00025918  0x00006cf8 call  0x0000650b 
+ 00025919  0x00006cf9 setarg  0x00000005 
+ 00025920  0x00006cfa call  0x000064f3 
+ 00025921  0x00006cfb rtnbit1  0x00000000 
+ 00025922  0x00006cfc jam  0x00000000 , 0x00004239 
+ 00025923  0x00006cfd fetch  0x00000002 , 0x00004201 
+ 00025924  0x00006cfe branch  0x00007f9c 
+ 00025925  0x00006d00 fetch  0x00000004 , 0x00000aa2 
+ 00025926  0x00006d01 fetcht  0x00000002 , 0x00004235 
+ 00025927  0x00006d02 increase  0xfffffffc , 0x00000002 
+ 00025928  0x00006d03 istore  0x00000004 , 0x00000002 
+ 00025929  0x00006d04 rtn 
+ 00025930  0x00006d06 fetcht  0x00000002 , 0x00004235 
+ 00025931  0x00006d07 copy  0x00000002 , 0x00000011 
+ 00025932  0x00006d08 increase  0xfffffffc , 0x00000002 
+ 00025933  0x00006d09 ifetch  0x00000004 , 0x00000002 
+ 00025934  0x00006d0a store  0x00000004 , 0x00000aa2 
+ 00025935  0x00006d0b fetcht  0x00000002 , 0x00004237 
+ 00025936  0x00006d0c fetch  0x00000003 , 0x00004232 
+ 00025937  0x00006d0d rtn 
+ 00025938  0x00006d12 increase  0x00000004 , 0x00000002 
+ 00025939  0x00006d13 hstoret  0x00000002 , 0x00008088 
+ 00025940  0x00006d14 arg  0x00000002 , 0x00000002 
+ 00025941  0x00006d15 increase  0xfffffffc , 0x00000011 
+ 00025942  0x00006d18 istoret  0x00000001 , 0x00000011 
+ 00025943  0x00006d19 rshift16  0x0000003f , 0x00000002 
+ 00025944  0x00006d1a istoret  0x00000001 , 0x00000005 
+ 00025945  0x00006d1b rshift8  0x0000003f , 0x00000002 
+ 00025946  0x00006d1c istoret  0x00000001 , 0x00000005 
+ 00025947  0x00006d1d istore  0x00000001 , 0x00000005 
+ 00025948  0x00006d1e deposit  0x00000011 
+ 00025949  0x00006d1f hstore  0x00000002 , 0x0000808a 
+ 00025950  0x00006d20 setarg  0x00000000 
+ 00025951  0x00006d21 hstore  0x00000002 , 0x0000808e 
+ 00025952  0x00006d22 jam  0x00000002 , 0x00008006 
+ 00025953  0x00006d23 branch  0x000064fc 
+ 00025954  0x00006d28 hstoret  0x00000002 , 0x0000808e 
+ 00025955  0x00006d29 rshift16  0x0000003f , 0x00000002 
+ 00025956  0x00006d2a storet  0x00000001 , 0x000001f6 
+ 00025957  0x00006d2b rshift8  0x0000003f , 0x00000002 
+ 00025958  0x00006d2c storet  0x00000001 , 0x000001f7 
+ 00025959  0x00006d2d store  0x00000001 , 0x000001f8 
+ 00025960  0x00006d2e setarg  0x00000004 
+ 00025961  0x00006d2f hstore  0x00000002 , 0x00008088 
+ 00025962  0x00006d30 jam  0x00000003 , 0x000001f5 
+ 00025963  0x00006d31 setarg  0x000001f5 
+ 00025964  0x00006d32 hstore  0x00000002 , 0x0000808a 
+ 00025965  0x00006d33 deposit  0x00000011 
+ 00025966  0x00006d34 hstore  0x00000002 , 0x0000808c 
+ 00025967  0x00006d35 hfetch  0x00000001 , 0x00008086 
+ 00025968  0x00006d36 isolate0  0x0000000f , 0x00000011 
+ 00025969  0x00006d37 setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025970  0x00006d38 hstore  0x00000001 , 0x00008086 
+ 00025971  0x00006d39 jam  0x00000002 , 0x00008006 
+ 00025972  0x00006d3b hfetch  0x00000001 , 0x0000812c 
+ 00025973  0x00006d3c bbit1  0x00000007 , 0x00006574 
+ 00025974  0x00006d3d arg  0x00000003 , 0x00000007 
+ 00025975  0x00006d3e branch  0x000064fc 
+ 00025976  0x00006d43 hstoret  0x00000002 , 0x0000808e 
+ 00025977  0x00006d44 setarg  0x00000004 
+ 00025978  0x00006d45 hstore  0x00000002 , 0x00008088 
+ 00025979  0x00006d46 jam  0x00000003 , 0x000001f5 
+ 00025980  0x00006d47 setarg  0x000001f5 
+ 00025981  0x00006d48 hstore  0x00000002 , 0x0000808a 
+ 00025982  0x00006d49 deposit  0x00000011 
+ 00025983  0x00006d4a hstore  0x00000002 , 0x0000808c 
+ 00025984  0x00006d4b hfetch  0x00000001 , 0x00008086 
+ 00025985  0x00006d4c isolate0  0x0000000f , 0x00000011 
+ 00025986  0x00006d4d setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025987  0x00006d4e hstore  0x00000001 , 0x00008086 
+ 00025988  0x00006d4f jam  0x00000002 , 0x00008006 
+ 00025989  0x00006d51 hfetch  0x00000001 , 0x0000812c 
+ 00025990  0x00006d52 bbit1  0x00000007 , 0x00006585 
+ 00025991  0x00006d53 arg  0x00000003 , 0x00000007 
+ 00025992  0x00006d54 call  0x000064c0 
+ 00025993  0x00006d55 call  0x000064fc 
+ 00025994  0x00006d56 isolate1  0x00000002 , 0x0000003f 
+ 00025995  0x00006d57 call  0x000064b9 
+ 00025996  0x00006d58 fetch  0x00000001 , 0x000001f6 
+ 00025997  0x00006d59 lshift16  0x0000003f , 0x00000012 
+ 00025998  0x00006d5a fetch  0x00000001 , 0x000001f7 
+ 00025999  0x00006d5b lshift8  0x0000003f , 0x0000003f 
+ 00026000  0x00006d5c ior  0x00000012 , 0x00000012 
+ 00026001  0x00006d5d fetch  0x00000001 , 0x000001f8 
+ 00026002  0x00006d5e ior  0x00000012 , 0x0000003f 
+ 00026003  0x00006d5f iadd  0x00000002 , 0x0000003f 
+ 00026004  0x00006d60 store  0x00000001 , 0x000001f8 
+ 00026005  0x00006d61 rshift8  0x0000003f , 0x0000003f 
+ 00026006  0x00006d62 store  0x00000001 , 0x000001f7 
+ 00026007  0x00006d63 rshift8  0x0000003f , 0x0000003f 
+ 00026008  0x00006d64 store  0x00000001 , 0x000001f6 
+ 00026009  0x00006d65 rtn 
+ 00026010  0x00006d6b jam  0x00000001 , 0x00008010 
+ 00026011  0x00006d6c rtn 
+ 00026012  0x00006d73 jam  0x0000000c , 0x00008091 
+ 00026013  0x00006d74 jam  0x0000000d , 0x00008092 
+ 00026014  0x00006d75 jam  0x0000000d , 0x00008093 
+ 00026015  0x00006d76 jam  0x0000000d , 0x00008094 
+ 00026016  0x00006d77 jam  0x0000000d , 0x00008095 
+ 00026017  0x00006d78 jam  0x0000000c , 0x00008096 
+ 00026018  0x00006d79 branch  0x000065a9 
+ 00026019  0x00006d7d jam  0x00000005 , 0x00008091 
+ 00026020  0x00006d7e jam  0x00000007 , 0x00008092 
+ 00026021  0x00006d7f jam  0x00000007 , 0x00008093 
+ 00026022  0x00006d80 jam  0x00000007 , 0x00008094 
+ 00026023  0x00006d81 jam  0x00000007 , 0x00008095 
+ 00026024  0x00006d82 jam  0x00000005 , 0x00008096 
+ 00026025  0x00006d84 hfetch  0x00000001 , 0x0000807b 
+ 00026026  0x00006d85 or_into  0x000000c0 , 0x0000003f 
+ 00026027  0x00006d86 hstore  0x00000001 , 0x0000807b 
+ 00026028  0x00006d87 hfetch  0x00000001 , 0x00008081 
+ 00026029  0x00006d88 or_into  0x00000010 , 0x0000003f 
+ 00026030  0x00006d89 hstore  0x00000001 , 0x00008081 
+ 00026031  0x00006d8a rtn 
+ 00026032  0x00006d8f hfetch  0x00000001 , 0x0000812c 
+ 00026033  0x00006d90 bbit0  0x00000005 , 0x000065b0 
+ 00026034  0x00006d91 rtn 
+ 00026035  0x00006d9a hstore  0x00000002 , 0x00008098 
+ 00026036  0x00006d9b deposit  0x00000011 
+ 00026037  0x00006d9c hstore  0x00000002 , 0x0000809a 
+ 00026038  0x00006d9d deposit  0x00000012 
+ 00026039  0x00006d9e hstore  0x00000002 , 0x0000809c 
+ 00026040  0x00006d9f deposit  0x00000002 
+ 00026041  0x00006da0 hstore  0x00000002 , 0x0000809e 
+ 00026042  0x00006da1 arg  0x00000001 , 0x00000002 
+ 00026043  0x00006da2 nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00026044  0x00006da3 hstore  0x00000001 , 0x00008090 
+ 00026045  0x00006da4 jam  0x00000004 , 0x00008006 
+ 00026046  0x00006da5 branch  0x000065b0 
+ 00026047  0x00006da9 set1  0x00000028 , 0x00000000 
+ 00026048  0x00006daa jam  0x00000008 , 0x00004211 
+ 00026049  0x00006dab rtn 
+ 00026050  0x00006dae set0  0x00000028 , 0x00000000 
+ 00026051  0x00006daf jam  0x00000020 , 0x00004211 
+ 00026052  0x00006db0 rtn 
+ 00026053  0x00006db4 fetch  0x00000001 , 0x00004203 
+ 00026054  0x00006db5 iadd  0x00000012 , 0x0000003f 
+ 00026055  0x00006db6 store  0x00000001 , 0x000001f7 
+ 00026056  0x00006db7 branch  0x000065cc 
+ 00026057  0x00006dba fetch  0x00000002 , 0x000001f7 
+ 00026058  0x00006dbb byteswap  0x0000003f , 0x0000003f 
+ 00026059  0x00006dbc store  0x00000001 , 0x000001f7 
+ 00026060  0x00006dc2 setarg  0x00000003 
+ 00026061  0x00006dc3 hstore  0x00000002 , 0x00008098 
+ 00026062  0x00006dc4 jam  0x000000a0 , 0x000001f6 
+ 00026063  0x00006dc5 jam  0x000000a1 , 0x000001f8 
+ 00026064  0x00006dc6 branch  0x000065eb 
+ 00026065  0x00006dcd storet  0x00000002 , 0x00000aa2 
+ 00026066  0x00006dce call  0x000065d6 
+ 00026067  0x00006dcf fetcht  0x00000002 , 0x00000aa2 
+ 00026068  0x00006dd0 call  0x00006606 
+ 00026069  0x00006dd1 branch  0x000065dd 
+ 00026070  0x00006dd4 fetch  0x00000001 , 0x0000423a 
+ 00026071  0x00006dd5 rtneq  0x000000ff 
+ 00026072  0x00006dd6 bbit0  0x00000006 , 0x000065db 
+ 00026073  0x00006dd7 setarg  0x000249f0 
+ 00026074  0x00006dd8 call  0x00002a8f 
+ 00026075  0x00006dda fetcht  0x00000001 , 0x0000423a 
+ 00026076  0x00006ddb branch  0x00006829 
+ 00026077  0x00006dde fetcht  0x00000001 , 0x0000423a 
+ 00026078  0x00006ddf branch  0x00006825 
+ 00026079  0x00006de5 bpatchx  0x00000090 , 0x00004032 
+ 00026080  0x00006de6 bmark1  0x00000028 , 0x000065c5 
+ 00026081  0x00006de7 fetch  0x00000002 , 0x00004203 
+ 00026082  0x00006de8 iadd  0x00000012 , 0x0000003f 
+ 00026083  0x00006de9 byteswap  0x0000003f , 0x0000003f 
+ 00026084  0x00006dea store  0x00000002 , 0x000001f7 
+ 00026085  0x00006dee bpatchx  0x00000091 , 0x00004032 
+ 00026086  0x00006def bmark1  0x00000028 , 0x000065c9 
+ 00026087  0x00006df0 setarg  0x00000004 
+ 00026088  0x00006df1 hstore  0x00000002 , 0x00008098 
+ 00026089  0x00006df2 jam  0x000000a0 , 0x000001f6 
+ 00026090  0x00006df3 jam  0x000000a1 , 0x000001f9 
+ 00026091  0x00006df5 setarg  0x000001f6 
+ 00026092  0x00006df6 hstore  0x00000002 , 0x0000809a 
+ 00026093  0x00006df7 hstoret  0x00000002 , 0x0000809e 
+ 00026094  0x00006df8 deposit  0x00000011 
+ 00026095  0x00006df9 hstore  0x00000002 , 0x0000809c 
+ 00026096  0x00006dfa setarg  0x00000002 
+ 00026097  0x00006dfb isolate0  0x0000000f , 0x00000011 
+ 00026098  0x00006dfc setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00026099  0x00006dfd hstore  0x00000001 , 0x00008090 
+ 00026100  0x00006dfe jam  0x00000004 , 0x00008006 
+ 00026101  0x00006dff arg  0x00000005 , 0x00000007 
+ 00026102  0x00006e00 call  0x000064c0 
+ 00026103  0x00006e01 call  0x000065b0 
+ 00026104  0x00006e02 isolate1  0x00000004 , 0x0000003f 
+ 00026105  0x00006e03 call  0x000064b9 
+ 00026106  0x00006e04 bmark1  0x00000028 , 0x00006601 
+ 00026107  0x00006e05 fetch  0x00000002 , 0x000001f7 
+ 00026108  0x00006e06 byteswap  0x0000003f , 0x0000003f 
+ 00026109  0x00006e07 iadd  0x00000002 , 0x0000003f 
+ 00026110  0x00006e08 byteswap  0x0000003f , 0x0000003f 
+ 00026111  0x00006e09 store  0x00000002 , 0x000001f7 
+ 00026112  0x00006e0a rtn 
+ 00026113  0x00006e0d fetch  0x00000001 , 0x000001f7 
+ 00026114  0x00006e0e iadd  0x00000002 , 0x0000003f 
+ 00026115  0x00006e0f byteswap  0x0000003f , 0x0000003f 
+ 00026116  0x00006e10 store  0x00000002 , 0x000001f7 
+ 00026117  0x00006e11 rtn 
+ 00026118  0x00006e18 fetch  0x00000002 , 0x00004203 
+ 00026119  0x00006e19 iadd  0x00000012 , 0x0000003f 
+ 00026120  0x00006e1d store  0x00000002 , 0x00000a9a 
+ 00026121  0x00006e1e bpatchx  0x00000092 , 0x00004032 
+ 00026122  0x00006e1f storet  0x00000002 , 0x00000aa2 
+ 00026123  0x00006e20 copy  0x00000011 , 0x0000003f 
+ 00026124  0x00006e21 store  0x00000002 , 0x00000ab9 
+ 00026125  0x00006e23 call  0x0000661d 
+ 00026126  0x00006e25 fetcht  0x00000002 , 0x00000ab2 
+ 00026127  0x00006e26 fetch  0x00000002 , 0x00000ab9 
+ 00026128  0x00006e27 copy  0x0000003f , 0x00000011 
+ 00026129  0x00006e28 fetch  0x00000002 , 0x00000a9a 
+ 00026130  0x00006e2a call  0x0000663d 
+ 00026131  0x00006e2c fetch  0x00000002 , 0x00000ab2 
+ 00026132  0x00006e2d fetcht  0x00000002 , 0x00000ab9 
+ 00026133  0x00006e2e iadd  0x00000002 , 0x00000002 
+ 00026134  0x00006e2f storet  0x00000002 , 0x00000ab9 
+ 00026135  0x00006e30 fetcht  0x00000002 , 0x00000a9a 
+ 00026136  0x00006e31 iadd  0x00000002 , 0x00000002 
+ 00026137  0x00006e32 storet  0x00000002 , 0x00000a9a 
+ 00026138  0x00006e33 fetch  0x00000002 , 0x00000aa2 
+ 00026139  0x00006e34 nbranch  0x0000660d , 0x00000034 
+ 00026140  0x00006e35 rtn 
+ 00026141  0x00006e3e bpatchx  0x00000093 , 0x00004032 
+ 00026142  0x00006e3f fetch  0x00000001 , 0x00004211 
+ 00026143  0x00006e40 increase  0xffffffff , 0x0000003f 
+ 00026144  0x00006e41 fetcht  0x00000002 , 0x00000a9a 
+ 00026145  0x00006e42 ior  0x00000002 , 0x0000003f 
+ 00026146  0x00006e43 increase  0x00000001 , 0x0000003f 
+ 00026147  0x00006e44 store  0x00000003 , 0x00000ab6 
+ 00026148  0x00006e46 fetch  0x00000002 , 0x00000aa2 
+ 00026149  0x00006e47 iadd  0x00000002 , 0x0000003f 
+ 00026150  0x00006e49 fetcht  0x00000003 , 0x00000ab6 
+ 00026151  0x00006e4a isub  0x00000002 , 0x0000003f 
+ 00026152  0x00006e4b nbranch  0x0000662f , 0x00000002 
+ 00026153  0x00006e4c store  0x00000002 , 0x00000aa2 
+ 00026154  0x00006e4d fetch  0x00000003 , 0x00000ab6 
+ 00026155  0x00006e4e fetcht  0x00000002 , 0x00000a9a 
+ 00026156  0x00006e4f isub  0x00000002 , 0x0000003f 
+ 00026157  0x00006e50 store  0x00000002 , 0x00000ab2 
+ 00026158  0x00006e51 rtn 
+ 00026159  0x00006e53 fetch  0x00000002 , 0x00000aa2 
+ 00026160  0x00006e54 store  0x00000002 , 0x00000ab2 
+ 00026161  0x00006e55 setarg  0x00000000 
+ 00026162  0x00006e56 store  0x00000002 , 0x00000aa2 
+ 00026163  0x00006e57 rtn 
+ 00026164  0x00006e5a increase  0x00000002 , 0x00000002 
+ 00026165  0x00006e5b hstoret  0x00000002 , 0x00008098 
+ 00026166  0x00006e5c increase  0xfffffffe , 0x00000011 
+ 00026167  0x00006e5d ifetcht  0x00000003 , 0x00000011 
+ 00026168  0x00006e5e copy  0x00000002 , 0x00000012 
+ 00026169  0x00006e5f arg  0x000000a0 , 0x00000002 
+ 00026170  0x00006e60 istoret  0x00000001 , 0x00000011 
+ 00026171  0x00006e62 istore  0x00000001 , 0x00000005 
+ 00026172  0x00006e63 branch  0x0000664a 
+ 00026173  0x00006e67 copy  0x0000003f , 0x00000012 
+ 00026174  0x00006e68 bpatchx  0x00000094 , 0x00004032 
+ 00026175  0x00006e69 bmark1  0x00000028 , 0x00006634 
+ 00026176  0x00006e6a copy  0x00000012 , 0x0000003f 
+ 00026177  0x00006e6b increase  0x00000003 , 0x00000002 
+ 00026178  0x00006e6c hstoret  0x00000002 , 0x00008098 
+ 00026179  0x00006e6d increase  0xfffffffd , 0x00000011 
+ 00026180  0x00006e6e ifetcht  0x00000003 , 0x00000011 
+ 00026181  0x00006e6f copy  0x00000002 , 0x00000012 
+ 00026182  0x00006e70 arg  0x000000a0 , 0x00000002 
+ 00026183  0x00006e71 istoret  0x00000001 , 0x00000011 
+ 00026184  0x00006e72 byteswap  0x0000003f , 0x0000003f 
+ 00026185  0x00006e73 istore  0x00000002 , 0x00000005 
+ 00026186  0x00006e75 deposit  0x00000011 
+ 00026187  0x00006e76 hstore  0x00000002 , 0x0000809a 
+ 00026188  0x00006e77 setarg  0x00000000 
+ 00026189  0x00006e78 hstore  0x00000002 , 0x0000809e 
+ 00026190  0x00006e79 jam  0x00000001 , 0x00008090 
+ 00026191  0x00006e7a jam  0x00000004 , 0x00008006 
+ 00026192  0x00006e7b call  0x000065b0 
+ 00026193  0x00006e7c copy  0x00000012 , 0x0000003f 
+ 00026194  0x00006e7d istore  0x00000003 , 0x00000011 
+ 00026195  0x00006e80 bpatchx  0x00000095 , 0x00004032 
+ 00026196  0x00006e81 jam  0x00000000 , 0x000001f9 
+ 00026197  0x00006e83 setarg  0x00000001 
+ 00026198  0x00006e84 hstore  0x00000002 , 0x00008098 
+ 00026199  0x00006e85 jam  0x000000a0 , 0x000001f6 
+ 00026200  0x00006e86 setarg  0x000001f6 
+ 00026201  0x00006e87 hstore  0x00000002 , 0x0000809a 
+ 00026202  0x00006e88 setarg  0x00000000 
+ 00026203  0x00006e89 hstore  0x00000002 , 0x0000809e 
+ 00026204  0x00006e8a hstore  0x00000002 , 0x0000809c 
+ 00026205  0x00006e8b setarg  0x00000003 
+ 00026206  0x00006e8c hstore  0x00000001 , 0x00008090 
+ 00026207  0x00006e8d jam  0x00000004 , 0x00008006 
+ 00026208  0x00006e8e call  0x000065b0 
+ 00026209  0x00006e8f hfetch  0x00000001 , 0x0000812c 
+ 00026210  0x00006e90 rtnbit0  0x00000006 
+ 00026211  0x00006e91 nop  0x000005dc 
+ 00026212  0x00006e92 fetch  0x00000001 , 0x000001f9 
+ 00026213  0x00006e93 increase  0x00000001 , 0x0000003f 
+ 00026214  0x00006e94 store  0x00000001 , 0x000001f9 
+ 00026215  0x00006e95 sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00026216  0x00006e96 nrtn  0x00000002 
+ 00026217  0x00006e97 branch  0x00006655 
+ 00026218  0x00006e9c jam  0x00000070 , 0x00008973 
+ 00026219  0x00006e9d nop  0x00000bb8 
+ 00026220  0x00006e9e rtn 
+ 00026221  0x00006ea1 jam  0x00000030 , 0x00008973 
+ 00026222  0x00006ea2 rtn 
+ 00026223  0x00006ea5 lshift3  0x0000003f , 0x0000003f 
+ 00026224  0x00006ea6 hstore  0x00000002 , 0x00008045 
+ 00026225  0x00006ea7 jam  0x00000000 , 0x0000804b 
+ 00026226  0x00006ea8 rtn 
+ 00026227  0x00006eac call  0x0000666f 
+ 00026228  0x00006ead call  0x000066a0 
+ 00026229  0x00006eaf ifetcht  0x00000001 , 0x00000011 
+ 00026230  0x00006eb0 increase  0x00000001 , 0x00000011 
+ 00026231  0x00006eb1 force  0x00000000 , 0x00000007 
+ 00026232  0x00006eb3 qisolate0  0x00000002 
+ 00026233  0x00006eb4 branch  0x00006697 , 0x00000001 
+ 00026234  0x00006eb5 hfetch  0x00000001 , 0x00008046 
+ 00026235  0x00006eb6 set1  0x00000006 , 0x0000003f 
+ 00026236  0x00006eb7 set1  0x00000007 , 0x0000003f 
+ 00026237  0x00006eb8 hstore  0x00000001 , 0x00008046 
+ 00026238  0x00006eb9 jam  0x00000002 , 0x00008047 
+ 00026239  0x00006eba jam  0x00000082 , 0x00008047 
+ 00026240  0x00006ebb set0  0x00000007 , 0x0000003f 
+ 00026241  0x00006ebc hstore  0x00000001 , 0x00008046 
+ 00026242  0x00006ebd jam  0x0000008a , 0x00008047 
+ 00026243  0x00006ebe nop  0x0000000b 
+ 00026244  0x00006ebf jam  0x000000ca , 0x00008047 
+ 00026245  0x00006ec0 nop  0x00000021 
+ 00026246  0x00006ec1 jam  0x0000004a , 0x00008047 
+ 00026247  0x00006ec2 nop  0x0000002c 
+ 00026248  0x00006ec3 jam  0x000000ca , 0x00008047 
+ 00026249  0x00006ec4 nop  0x00000016 
+ 00026250  0x00006ec5 jam  0x0000008a , 0x00008047 
+ 00026251  0x00006ec6 nop  0x00000021 
+ 00026252  0x00006ec7 jam  0x00000082 , 0x00008047 
+ 00026253  0x00006ec8 nop  0x00000001 
+ 00026254  0x00006ec9 jam  0x00000092 , 0x00008047 
+ 00026255  0x00006eca nop  0x0000000a 
+ 00026256  0x00006ecb jam  0x000000b2 , 0x00008047 
+ 00026257  0x00006ecc hfetch  0x00000001 , 0x00008007 
+ 00026258  0x00006ecd jam  0x00000092 , 0x00008047 
+ 00026259  0x00006ece nop  0x00000001 
+ 00026260  0x00006ecf jam  0x00000082 , 0x00008047 
+ 00026261  0x00006ed0 qisolate0  0x0000003f 
+ 00026262  0x00006ed1 branch  0x00006678 , 0x00000001 
+ 00026263  0x00006ed3 hfetch  0x00000002 , 0x00008045 
+ 00026264  0x00006ed4 increase  0x00000001 , 0x0000003f 
+ 00026265  0x00006ed5 hstore  0x00000002 , 0x00008045 
+ 00026266  0x00006ed6 increase  0x00000001 , 0x00000007 
+ 00026267  0x00006ed7 compare  0x00000008 , 0x00000007 , 0x0000000f 
+ 00026268  0x00006ed8 nbranch  0x00006678 , 0x00000001 
+ 00026269  0x00006ed9 loop  0x00006675 
+ 00026270  0x00006eda jam  0x00000083 , 0x00008047 
+ 00026271  0x00006edb rtn 
+ 00026272  0x00006ede jam  0x00000082 , 0x00008047 
+ 00026273  0x00006edf nop  0x0000000c 
+ 00026274  0x00006ee0 jam  0x00000080 , 0x00008047 
+ 00026275  0x00006ee1 jam  0x00000082 , 0x00008047 
+ 00026276  0x00006ee2 nop  0x00000096 
+ 00026277  0x00006ee3 rtn 
+ 00026278  0x00006ee7 call  0x000066a0 
+ 00026279  0x00006ee8 jam  0x000000a2 , 0x00008047 
+ 00026280  0x00006ee9 deposit  0x00000011 
+ 00026281  0x00006eea hstore  0x00000002 , 0x00008048 
+ 00026282  0x00006eeb set1  0x0000000b , 0x00000002 
+ 00026283  0x00006eec isolate0  0x0000000f , 0x0000003f 
+ 00026284  0x00006eed setflag  0x00000001 , 0x0000000f , 0x00000002 
+ 00026285  0x00006eee hstoret  0x00000002 , 0x0000804a 
+ 00026286  0x00006eef jam  0x00000001 , 0x00008006 
+ 00026287  0x00006ef0 rtn 
+ 00026288  0x00006ef3 hfetch  0x00000001 , 0x0000812c 
+ 00026289  0x00006ef4 bbit0  0x00000001 , 0x000066b0 
+ 00026290  0x00006ef5 rtn 
+ 00026291  0x00006ef9 call  0x0000666f 
+ 00026292  0x00006efa call  0x000066a6 
+ 00026293  0x00006efb call  0x000066b0 
+ 00026294  0x00006efc jam  0x00000083 , 0x00008047 
+ 00026295  0x00006efd rtn 
+ 00026296  0x00006f03 hfetch  0x00000002 , 0x00008124 
+ 00026297  0x00006f04 hstore  0x00000002 , 0x00008045 
+ 00026298  0x00006f05 call  0x000066a6 
+ 00026299  0x00006f06 arg  0x00000001 , 0x00000007 
+ 00026300  0x00006f07 call  0x000064c0 
+ 00026301  0x00006f08 call  0x000066b0 
+ 00026302  0x00006f09 isolate1  0x00000000 , 0x0000003f 
+ 00026303  0x00006f0a call  0x000064b9 
+ 00026304  0x00006f0b jam  0x00000083 , 0x00008047 
+ 00026305  0x00006f0c rtn 
+ 00026306  0x00006f10 hfetch  0x00000002 , 0x0000805e 
+ 00026307  0x00006f11 iforce  0x0000000a 
+ 00026308  0x00006f12 rtn 
+ 00026309  0x00006f15 deposit  0x0000000a 
+ 00026310  0x00006f16 hstore  0x00000002 , 0x0000805e 
+ 00026311  0x00006f17 rtn 
+ 00026312  0x00006f1a deposit  0x00000003 
+ 00026313  0x00006f1b hstore  0x00000002 , 0x00008058 
+ 00026314  0x00006f1c rtn 
+ 00026315  0x00006f1f hfetch  0x00000002 , 0x00008058 
+ 00026316  0x00006f20 copy  0x0000003f , 0x00000003 
+ 00026317  0x00006f21 rtn 
+ 00026318  0x00006f24 fetch  0x00000002 , 0x00004243 
+ 00026319  0x00006f25 hstore  0x00000002 , 0x00008052 
+ 00026320  0x00006f26 rtn 
+ 00026321  0x00006f29 deposit  0x00000039 
+ 00026322  0x00006f2a rtn  0x00000034 
+ 00026323  0x00006f2c increase  0xfffffff8 , 0x00000039 
+ 00026324  0x00006f2d call  0x000066de , 0x00000002 
+ 00026325  0x00006f2e rtn  0x00000005 
+ 00026326  0x00006f2f branch  0x000066d3 , 0x00000002 
+ 00026327  0x00006f30 increase  0x00000008 , 0x00000039 
+ 00026328  0x00006f32 increase  0xfffffffc , 0x00000039 
+ 00026329  0x00006f33 call  0x000066e1 , 0x00000002 
+ 00026330  0x00006f34 rtn  0x00000005 
+ 00026331  0x00006f35 branch  0x000066d8 , 0x00000002 
+ 00026332  0x00006f36 increase  0x00000004 , 0x00000039 
+ 00026333  0x00006f37 branch  0x000066e4 
+ 00026334  0x00006f3a ifetch  0x00000008 , 0x00000006 
+ 00026335  0x00006f3b istore  0x00000008 , 0x0000000a 
+ 00026336  0x00006f3c rtn 
+ 00026337  0x00006f3f ifetch  0x00000004 , 0x00000006 
+ 00026338  0x00006f40 istore  0x00000004 , 0x0000000a 
+ 00026339  0x00006f41 rtn 
+ 00026340  0x00006f44 deposit  0x00000039 
+ 00026341  0x00006f45 rtn  0x00000034 
+ 00026342  0x00006f47 ifetch  0x00000001 , 0x00000006 
+ 00026343  0x00006f48 istore  0x00000001 , 0x0000000a 
+ 00026344  0x00006f49 loop  0x000066e6 
+ 00026345  0x00006f4a rtn 
+ 00026346  0x00006f4d deposit  0x00000039 
+ 00026347  0x00006f4e rtn  0x00000034 
+ 00026348  0x00006f50 increase  0xfffffff8 , 0x00000039 
+ 00026349  0x00006f51 call  0x000066f7 , 0x00000002 
+ 00026350  0x00006f52 rtn  0x00000005 
+ 00026351  0x00006f53 branch  0x000066ec , 0x00000002 
+ 00026352  0x00006f54 increase  0x00000008 , 0x00000039 
+ 00026353  0x00006f56 increase  0xfffffffc , 0x00000039 
+ 00026354  0x00006f57 call  0x000066fa , 0x00000002 
+ 00026355  0x00006f58 rtn  0x00000005 
+ 00026356  0x00006f59 branch  0x000066f1 , 0x00000002 
+ 00026357  0x00006f5a increase  0x00000004 , 0x00000039 
+ 00026358  0x00006f5b branch  0x000066fd 
+ 00026359  0x00006f5e ifetch  0x00000008 , 0x00000003 
+ 00026360  0x00006f5f istore  0x00000008 , 0x00000005 
+ 00026361  0x00006f60 rtn 
+ 00026362  0x00006f63 ifetch  0x00000004 , 0x00000003 
+ 00026363  0x00006f64 istore  0x00000004 , 0x00000005 
+ 00026364  0x00006f65 rtn 
+ 00026365  0x00006f69 deposit  0x00000039 
+ 00026366  0x00006f6a rtn  0x00000034 
+ 00026367  0x00006f6c ifetch  0x00000001 , 0x00000003 
+ 00026368  0x00006f6d istore  0x00000001 , 0x00000005 
+ 00026369  0x00006f6e loop  0x000066ff 
+ 00026370  0x00006f6f rtn 
+ 00026371  0x00006f73 deposit  0x00000039 
+ 00026372  0x00006f74 rtn  0x00000034 
+ 00026373  0x00006f76 ifetch  0x00000001 , 0x00000003 
+ 00026374  0x00006f77 istore  0x00000001 , 0x0000000a 
+ 00026375  0x00006f78 loop  0x00006705 
+ 00026376  0x00006f79 rtn 
+ 00026377  0x00006f7f jam  0x0000003d , 0x00000a99 
+ 00026378  0x00006f80 branch  0x00007d86 
+ 00026379  0x00006f84 bpatchx  0x00000096 , 0x00004032 
+ 00026380  0x00006f85 fetch  0x00000001 , 0x00004217 
+ 00026381  0x00006f86 rtn  0x00000034 
+ 00026382  0x00006f87 call  0x000067a3 
+ 00026383  0x00006f88 call  0x000067a9 , 0x00000005 
+ 00026384  0x00006f89 call  0x0000673e 
+ 00026385  0x00006f8b fetch  0x00000001 , 0x00004217 
+ 00026386  0x00006f8c icopy  0x00000013 
+ 00026387  0x00006f8d fetcht  0x00000002 , 0x00004215 
+ 00026388  0x00006f8e storet  0x00000002 , 0x0000018c 
+ 00026389  0x00006f90 copy  0x00000013 , 0x0000003f 
+ 00026390  0x00006f91 branch  0x00006709 , 0x00000034 
+ 00026391  0x00006f92 increase  0xffffffff , 0x00000013 
+ 00026392  0x00006f93 copy  0x00000002 , 0x00000011 
+ 00026393  0x00006f94 ifetch  0x00000001 , 0x00000011 
+ 00026394  0x00006f95 fetcht  0x00000001 , 0x00000184 
+ 00026395  0x00006f96 isub  0x00000002 , 0x0000003e 
+ 00026396  0x00006f97 call  0x00006725 , 0x00000005 
+ 00026397  0x00006f98 branch  0x00006721 , 0x00000002 
+ 00026398  0x00006f99 ifetch  0x00000001 , 0x00000011 
+ 00026399  0x00006f9a increase  0x00000001 , 0x0000003f 
+ 00026400  0x00006f9b istore  0x00000001 , 0x00000011 
+ 00026401  0x00006f9d fetcht  0x00000002 , 0x0000018c 
+ 00026402  0x00006f9e increase  0x00000022 , 0x00000002 
+ 00026403  0x00006f9f storet  0x00000002 , 0x0000018c 
+ 00026404  0x00006fa0 branch  0x00006715 
+ 00026405  0x00006fa3 setarg  0x00000000 
+ 00026406  0x00006fa4 istore  0x00000001 , 0x00000011 
+ 00026407  0x00006fa5 fetch  0x00000001 , 0x00000185 
+ 00026408  0x00006fa6 istore  0x00000001 , 0x00000005 
+ 00026409  0x00006fa7 bne  0x00000033 , 0x00006733 
+ 00026410  0x00006fa8 arg  0x000041be , 0x00000012 
+ 00026411  0x00006faa ifetch  0x00000006 , 0x00000006 
+ 00026412  0x00006fab istore  0x00000008 , 0x00000005 
+ 00026413  0x00006fac setarg  0x00000000 
+ 00026414  0x00006fad istore  0x00000008 , 0x00000005 
+ 00026415  0x00006fae copy  0x00000012 , 0x00000006 
+ 00026416  0x00006fb0 call  0x00007ebf 
+ 00026417  0x00006fb1 force  0x00000001 , 0x0000003e 
+ 00026418  0x00006fb2 rtn 
+ 00026419  0x00006fb5 beq  0x00000036 , 0x00006737 
+ 00026420  0x00006fb6 beq  0x00000037 , 0x0000673b 
+ 00026421  0x00006fb7 arg  0x00004419 , 0x00000012 
+ 00026422  0x00006fb8 branch  0x0000672b 
+ 00026423  0x00006fbb arg  0x000044d5 , 0x00000006 
+ 00026424  0x00006fbc call  0x00007ebf 
+ 00026425  0x00006fbe arg  0x00004419 , 0x00000006 
+ 00026426  0x00006fbf branch  0x00006730 
+ 00026427  0x00006fc2 arg  0x000044cd , 0x00000006 
+ 00026428  0x00006fc3 call  0x00007ebf 
+ 00026429  0x00006fc4 branch  0x00006739 
+ 00026430  0x00006fc8 call  0x00007fe9 
+ 00026431  0x00006fc9 fetch  0x00000001 , 0x00004217 
+ 00026432  0x00006fca rtn  0x00000034 
+ 00026433  0x00006fcb fetch  0x00000002 , 0x00004682 
+ 00026434  0x00006fcc bbit1  0x00000000 , 0x00006754 
+ 00026435  0x00006fce bpatchx  0x00000097 , 0x00004032 
+ 00026436  0x00006fcf fetch  0x00000001 , 0x0000448e 
+ 00026437  0x00006fd0 beq  0x00000000 , 0x0000674d 
+ 00026438  0x00006fd1 fetch  0x00000001 , 0x00000454 
+ 00026439  0x00006fd2 compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00026440  0x00006fd3 branch  0x0000674d , 0x00000001 
+ 00026441  0x00006fd4 compare  0x00000040 , 0x0000003f , 0x000000c0 
+ 00026442  0x00006fd5 branch  0x00006752 , 0x00000001 
+ 00026443  0x00006fd6 compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00026444  0x00006fd7 branch  0x00006750 , 0x00000001 
+ 00026445  0x00006fd9 jam  0x00000035 , 0x00000185 
+ 00026446  0x00006fda fetch  0x00000006 , 0x0000044f 
+ 00026447  0x00006fdb branch  0x00006757 
+ 00026448  0x00006fde jam  0x00000037 , 0x00000185 
+ 00026449  0x00006fdf branch  0x00006757 
+ 00026450  0x00006fe3 jam  0x00000036 , 0x00000185 
+ 00026451  0x00006fe4 branch  0x00006757 
+ 00026452  0x00006fe8 bpatchx  0x00000098 , 0x00004033 
+ 00026453  0x00006fe9 jam  0x00000033 , 0x00000185 
+ 00026454  0x00006fea fetch  0x00000006 , 0x00000040 
+ 00026455  0x00006fec store  0x00000006 , 0x00000186 
+ 00026456  0x00006fed fetch  0x00000002 , 0x00004215 
+ 00026457  0x00006fee ifetcht  0x00000001 , 0x0000003f 
+ 00026458  0x00006fef pincrease  0x00000001 
+ 00026459  0x00006ff0 store  0x00000002 , 0x0000018c 
+ 00026460  0x00006ff1 storet  0x00000001 , 0x00000184 
+ 00026461  0x00006ff2 fetch  0x00000001 , 0x00004217 
+ 00026462  0x00006ff3 icopy  0x00000013 
+ 00026463  0x00006ff5 fetch  0x00000002 , 0x0000018c 
+ 00026464  0x00006ff6 copy  0x0000003f , 0x00000011 
+ 00026465  0x00006ff7 call  0x0000676f 
+ 00026466  0x00006ff8 rtn  0x00000028 
+ 00026467  0x00006ff9 fetcht  0x00000002 , 0x0000018c 
+ 00026468  0x00006ffa increase  0x00000022 , 0x00000002 
+ 00026469  0x00006ffb storet  0x00000002 , 0x0000018c 
+ 00026470  0x00006ffc increase  0xffffffff , 0x00000002 
+ 00026471  0x00006ffd ifetch  0x00000001 , 0x00000002 
+ 00026472  0x00006ffe store  0x00000001 , 0x00000184 
+ 00026473  0x00006fff increase  0xffffffff , 0x00000013 
+ 00026474  0x00007000 nbranch  0x0000675f , 0x00000005 
+ 00026475  0x00007001 fetch  0x00000001 , 0x00004217 
+ 00026476  0x00007002 pincrease  0xffffffff 
+ 00026477  0x00007003 store  0x00000001 , 0x00000184 
+ 00026478  0x00007004 rtn 
+ 00026479  0x00007006 fetch  0x00000001 , 0x00000185 
+ 00026480  0x00007007 bne  0x00000033 , 0x00006776 
+ 00026481  0x00007009 arg  0x00000185 , 0x00000012 
+ 00026482  0x0000700a arg  0x00000007 , 0x00000039 
+ 00026483  0x0000700b call  0x00007f88 
+ 00026484  0x0000700c branch  0x00007fe7 , 0x00000005 
+ 00026485  0x0000700d rtn 
+ 00026486  0x00007010 beq  0x00000036 , 0x00006779 
+ 00026487  0x00007011 beq  0x00000037 , 0x00006794 
+ 00026488  0x00007012 branch  0x00006771 
+ 00026489  0x00007015 ifetcht  0x00000001 , 0x00000011 
+ 00026490  0x00007016 isub  0x00000002 , 0x0000003e 
+ 00026491  0x00007017 nrtn  0x00000005 
+ 00026492  0x00007018 arg  0x00000ac2 , 0x00000005 
+ 00026493  0x00007019 arg  0x00000010 , 0x00000039 
+ 00026494  0x0000701a call  0x00007ed4 
+ 00026495  0x0000701b fetch  0x00000003 , 0x00000452 
+ 00026496  0x0000701c store  0x00000003 , 0x00000ac2 
+ 00026497  0x0000701d call  0x0000678b 
+ 00026498  0x0000701e fetch  0x00000002 , 0x00000adf 
+ 00026499  0x0000701f byteswap  0x0000003f , 0x0000003f 
+ 00026500  0x00007020 lshift8  0x0000003f , 0x00000002 
+ 00026501  0x00007021 ifetch  0x00000001 , 0x00000006 
+ 00026502  0x00007022 iadd  0x00000002 , 0x0000003f 
+ 00026503  0x00007023 fetcht  0x00000003 , 0x0000044f 
+ 00026504  0x00007024 isub  0x00000002 , 0x0000003e 
+ 00026505  0x00007025 branch  0x00007fe7 , 0x00000005 
+ 00026506  0x00007026 rtn 
+ 00026507  0x0000702a arg  0x00000ac2 , 0x00000006 
+ 00026508  0x0000702b call  0x00007486 
+ 00026509  0x0000702d ifetch  0x00000001 , 0x00000011 
+ 00026510  0x0000702e call  0x00007487 
+ 00026511  0x0000702f force  0x00000038 , 0x00000036 
+ 00026512  0x00007030 force  0x00000000 , 0x00000036 
+ 00026513  0x00007031 call  0x0000741d 
+ 00026514  0x00007032 arg  0x00000ad2 , 0x00000005 
+ 00026515  0x00007033 branch  0x00007497 
+ 00026516  0x00007036 ifetcht  0x00000001 , 0x00000011 
+ 00026517  0x00007037 isub  0x00000002 , 0x0000003e 
+ 00026518  0x00007038 nrtn  0x00000005 
+ 00026519  0x00007039 copy  0x00000006 , 0x00000011 
+ 00026520  0x0000703a add  0x00000006 , 0x00000008 , 0x00000013 
+ 00026521  0x0000703b arg  0x000044cd , 0x00000012 
+ 00026522  0x0000703c arg  0x00000008 , 0x00000039 
+ 00026523  0x0000703d call  0x00007f88 
+ 00026524  0x0000703e branch  0x00007fe7 , 0x00000005 
+ 00026525  0x0000703f copy  0x00000013 , 0x00000011 
+ 00026526  0x00007040 arg  0x000044d5 , 0x00000012 
+ 00026527  0x00007041 arg  0x00000008 , 0x00000039 
+ 00026528  0x00007042 call  0x00007f88 
+ 00026529  0x00007043 branch  0x00007fe7 , 0x00000005 
+ 00026530  0x00007044 rtn 
+ 00026531  0x00007047 fetch  0x00000002 , 0x00004215 
+ 00026532  0x00007048 ifetcht  0x00000001 , 0x0000003f 
+ 00026533  0x00007049 pincrease  0x00000022 
+ 00026534  0x0000704a ifetch  0x00000001 , 0x0000003f 
+ 00026535  0x0000704b isub  0x00000002 , 0x0000003e 
+ 00026536  0x0000704c rtn 
+ 00026537  0x0000704f fetch  0x00000001 , 0x00004217 
+ 00026538  0x00007050 icopy  0x00000039 
+ 00026539  0x00007051 fetcht  0x00000002 , 0x00004215 
+ 00026540  0x00007052 setarg  0x00000000 
+ 00026541  0x00007054 istore  0x00000001 , 0x00000002 
+ 00026542  0x00007055 increase  0x00000022 , 0x00000002 
+ 00026543  0x00007056 pincrease  0x00000001 
+ 00026544  0x00007057 loop  0x000067ad 
+ 00026545  0x00007058 rtn 
+ 00026546  0x0000705b bpatchx  0x00000099 , 0x00004033 
+ 00026547  0x0000705c call  0x0000673e 
+ 00026548  0x0000705d fetch  0x00000001 , 0x00000030 
+ 00026549  0x0000705e setflag  0x00000028 , 0x00000006 , 0x0000003f 
+ 00026550  0x0000705f store  0x00000001 , 0x00000030 
+ 00026551  0x00007060 nbranch  0x000067bc , 0x00000028 
+ 00026552  0x00007061 add  0x00000011 , 0x0000000a , 0x00000006 
+ 00026553  0x00007063 arg  0x000041be , 0x00000005 
+ 00026554  0x00007064 call  0x00007ebf 
+ 00026555  0x00007065 branch  0x000067d7 
+ 00026556  0x00007067 jam  0x00000000 , 0x000041bd 
+ 00026557  0x00007068 rtn 
+ 00026558  0x0000706b fetch  0x00000009 , 0x000044cb 
+ 00026559  0x0000706c branch  0x000067ca , 0x00000034 
+ 00026560  0x0000706d call  0x0000673e 
+ 00026561  0x0000706e nbranch  0x000067ca , 0x00000028 
+ 00026562  0x0000706f fetch  0x00000002 , 0x0000018c 
+ 00026563  0x00007070 add  0x0000003f , 0x00000001 , 0x00000006 
+ 00026564  0x00007071 arg  0x000044d5 , 0x00000005 
+ 00026565  0x00007072 call  0x00007ebf 
+ 00026566  0x00007073 arg  0x00004419 , 0x00000005 
+ 00026567  0x00007074 call  0x00007ebf 
+ 00026568  0x00007075 jam  0x00000001 , 0x00004429 
+ 00026569  0x00007076 rtn 
+ 00026570  0x00007079 jam  0x00000000 , 0x00004429 
+ 00026571  0x0000707a rtn 
+ 00026572  0x0000707e fetch  0x00000006 , 0x0000044f 
+ 00026573  0x0000707f store  0x00000006 , 0x00000186 
+ 00026574  0x00007080 jam  0x00000034 , 0x00000185 
+ 00026575  0x00007081 branch  0x000067d3 
+ 00026576  0x00007083 fetch  0x00000006 , 0x00000040 
+ 00026577  0x00007084 store  0x00000006 , 0x00000186 
+ 00026578  0x00007085 jam  0x00000033 , 0x00000185 
+ 00026579  0x00007087 fetch  0x00000001 , 0x00004092 
+ 00026580  0x00007088 beq  0x0000000a , 0x0000670b 
+ 00026581  0x00007089 bbit1  0x00000006 , 0x000042da 
+ 00026582  0x0000708a rtn 
+ 00026583  0x0000708e fetch  0x00000008 , 0x000041be 
+ 00026584  0x0000708f fetcht  0x00000008 , 0x000041c6 
+ 00026585  0x00007090 ior  0x00000002 , 0x0000003f 
+ 00026586  0x00007091 rtn  0x00000034 
+ 00026587  0x00007092 jam  0x00000001 , 0x000041bd 
+ 00026588  0x00007093 rtn 
+ 00026589  0x0000709b bpatchx  0x0000009a , 0x00004033 
+ 00026590  0x0000709c set1  0x00000007 , 0x00000002 
+ 00026591  0x0000709d call  0x0000681d 
+ 00026592  0x0000709e nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00026593  0x000070a4 bpatchx  0x0000009b , 0x00004033 
+ 00026594  0x000070a5 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026595  0x000070a6 rtn  0x00000005 
+ 00026596  0x000070a7 isolate0  0x00000007 , 0x00000002 
+ 00026597  0x000070a8 and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026598  0x000070a9 fetch  0x00000004 , 0x000000a1 
+ 00026599  0x000070aa qsetflag  0x00000001 , 0x0000003f 
+ 00026600  0x000070ab store  0x00000004 , 0x000000a1 
+ 00026601  0x000070ac fetch  0x00000004 , 0x000000a5 
+ 00026602  0x000070ad nqsetflag  0x00000001 , 0x0000003f 
+ 00026603  0x000070ae store  0x00000004 , 0x000000a5 
+ 00026604  0x000070af rtn 
+ 00026605  0x000070b3 bpatchx  0x0000009c , 0x00004033 
+ 00026606  0x000070b4 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026607  0x000070b5 rtn  0x00000005 
+ 00026608  0x000070b6 isolate0  0x00000007 , 0x00000002 
+ 00026609  0x000070b7 and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026610  0x000070b8 fetch  0x00000004 , 0x000000a1 
+ 00026611  0x000070b9 qset0  0x0000003f 
+ 00026612  0x000070ba store  0x00000004 , 0x000000a1 
+ 00026613  0x000070bb fetch  0x00000004 , 0x000000a5 
+ 00026614  0x000070bc qset0  0x0000003f 
+ 00026615  0x000070bd store  0x00000004 , 0x000000a5 
+ 00026616  0x000070be rtn 
+ 00026617  0x000070c2 call  0x000067ed 
+ 00026618  0x000070c3 branch  0x000067fe 
+ 00026619  0x000070c7 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026620  0x000070c8 rtn  0x00000005 
+ 00026621  0x000070c9 ncall  0x000067e1 , 0x0000002b 
+ 00026622  0x000070cc arg  0x0000807c , 0x00000005 
+ 00026623  0x000070cd call  0x00006830 
+ 00026624  0x000070ce setflip  0x00000007 , 0x00000002 
+ 00026625  0x000070cf arg  0x00008078 , 0x00000005 
+ 00026626  0x000070d0 call  0x00006830 
+ 00026627  0x000070d1 set0  0x00000007 , 0x00000002 
+ 00026628  0x000070d2 arg  0x00008070 , 0x00000005 
+ 00026629  0x000070d3 branch  0x00006830 
+ 00026630  0x000070d7 arg  0x0000807c , 0x00000005 
+ 00026631  0x000070d8 call  0x00006830 
+ 00026632  0x000070d9 set0  0x00000007 , 0x00000002 
+ 00026633  0x000070da arg  0x00008078 , 0x00000005 
+ 00026634  0x000070db call  0x00006830 
+ 00026635  0x000070dc set0  0x00000007 , 0x00000002 
+ 00026636  0x000070dd arg  0x00008070 , 0x00000005 
+ 00026637  0x000070de branch  0x00006830 
+ 00026638  0x000070e3 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026639  0x000070e4 rtn  0x00000005 
+ 00026640  0x000070e5 setflip  0x00000007 , 0x00000002 
+ 00026641  0x000070e6 call  0x0000682f 
+ 00026642  0x000070e8 set1  0x00000007 , 0x00000002 
+ 00026643  0x000070e9 arg  0x00008070 , 0x00000005 
+ 00026644  0x000070ea branch  0x00006830 
+ 00026645  0x000070ed and  0x00000002 , 0x00000007 , 0x00000007 
+ 00026646  0x000070ee rshift3  0x00000002 , 0x0000003f 
+ 00026647  0x000070ef and_into  0x00000003 , 0x0000003f 
+ 00026648  0x000070f0 iadd  0x00000005 , 0x00000005 
+ 00026649  0x000070f1 ifetch  0x00000001 , 0x00000005 
+ 00026650  0x000070f2 rtn 
+ 00026651  0x000070f5 arg  0x00008074 , 0x00000005 
+ 00026652  0x000070f6 branch  0x0000681e 
+ 00026653  0x000070fb arg  0x0000811c , 0x00000005 
+ 00026654  0x000070fd call  0x00006815 
+ 00026655  0x000070fe isolate1  0x00000007 , 0x00000002 
+ 00026656  0x000070ff branch  0x00006823 , 0x00000001 
+ 00026657  0x00007100 qisolate0  0x0000003f 
+ 00026658  0x00007101 rtn 
+ 00026659  0x00007103 qisolate1  0x0000003f 
+ 00026660  0x00007104 rtn 
+ 00026661  0x00007107 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026662  0x00007108 rtn  0x00000005 
+ 00026663  0x00007109 isolate1  0x00000007 , 0x0000003e 
+ 00026664  0x0000710a branch  0x0000682c 
+ 00026665  0x0000710d sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026666  0x0000710e rtn  0x00000005 
+ 00026667  0x0000710f isolate0  0x00000007 , 0x0000003e 
+ 00026668  0x00007113 setarg  0x00000000 
+ 00026669  0x00007114 nsetflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00026670  0x00007115 ixor  0x00000002 , 0x00000002 
+ 00026671  0x00007119 arg  0x00008074 , 0x00000005 
+ 00026672  0x0000711d call  0x00006815 
+ 00026673  0x0000711e isolate1  0x00000007 , 0x00000002 
+ 00026674  0x0000711f qsetflag  0x00000001 , 0x0000003f 
+ 00026675  0x00007120 istore  0x00000001 , 0x00000005 
+ 00026676  0x00007121 rtn 
+ 00026677  0x00007124 arg  0xffffffff , 0x00000011 
+ 00026678  0x00007125 hfetch  0x00000001 , 0x00008081 
+ 00026679  0x00007126 compare  0x00000002 , 0x0000003f , 0x00000003 
+ 00026680  0x00007127 call  0x00006878 , 0x00000001 
+ 00026681  0x00007129 compare  0x00000001 , 0x0000003f , 0x00000003 
+ 00026682  0x0000712a call  0x0000687a , 0x00000001 
+ 00026683  0x0000712c compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00026684  0x0000712d call  0x0000687a , 0x00000001 
+ 00026685  0x0000712f isolate1  0x00000002 , 0x0000003f 
+ 00026686  0x00007130 call  0x00006874 , 0x00000001 
+ 00026687  0x00007132 isolate1  0x00000003 , 0x0000003f 
+ 00026688  0x00007133 call  0x00006876 , 0x00000001 
+ 00026689  0x00007135 isolate1  0x00000004 , 0x0000003f 
+ 00026690  0x00007136 call  0x0000687c , 0x00000001 
+ 00026691  0x00007138 isolate1  0x00000006 , 0x0000003f 
+ 00026692  0x00007139 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00026693  0x0000713b isolate1  0x00000007 , 0x0000003f 
+ 00026694  0x0000713c nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026695  0x0000713e hfetch  0x00000001 , 0x00008082 
+ 00026696  0x0000713f isolate1  0x00000000 , 0x0000003f 
+ 00026697  0x00007140 nsetflag  0x00000001 , 0x0000001b , 0x00000011 
+ 00026698  0x00007141 isolate1  0x00000001 , 0x0000003f 
+ 00026699  0x00007142 nsetflag  0x00000001 , 0x0000001c , 0x00000011 
+ 00026700  0x00007143 isolate1  0x00000002 , 0x0000003f 
+ 00026701  0x00007144 nsetflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00026702  0x00007145 isolate1  0x00000003 , 0x0000003f 
+ 00026703  0x00007146 nsetflag  0x00000001 , 0x00000008 , 0x00000011 
+ 00026704  0x00007147 isolate1  0x00000004 , 0x0000003f 
+ 00026705  0x00007148 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026706  0x00007149 isolate1  0x00000005 , 0x0000003f 
+ 00026707  0x0000714a nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026708  0x0000714b isolate1  0x00000006 , 0x0000003f 
+ 00026709  0x0000714c nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026710  0x0000714d isolate1  0x00000007 , 0x0000003f 
+ 00026711  0x0000714e nsetflag  0x00000001 , 0x00000017 , 0x00000011 
+ 00026712  0x00007150 hfetch  0x00000001 , 0x00008080 
+ 00026713  0x00007151 isolate1  0x00000000 , 0x0000003f 
+ 00026714  0x00007152 nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026715  0x00007153 isolate1  0x00000001 , 0x0000003f 
+ 00026716  0x00007154 nsetflag  0x00000001 , 0x00000006 , 0x00000011 
+ 00026717  0x00007155 isolate1  0x00000002 , 0x0000003f 
+ 00026718  0x00007156 nsetflag  0x00000001 , 0x00000007 , 0x00000011 
+ 00026719  0x00007157 isolate1  0x00000003 , 0x0000003f 
+ 00026720  0x00007158 nsetflag  0x00000001 , 0x00000012 , 0x00000011 
+ 00026721  0x00007159 isolate1  0x00000004 , 0x0000003f 
+ 00026722  0x0000715a nsetflag  0x00000001 , 0x00000013 , 0x00000011 
+ 00026723  0x0000715b isolate1  0x00000005 , 0x0000003f 
+ 00026724  0x0000715c nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026725  0x0000715d isolate1  0x00000006 , 0x0000003f 
+ 00026726  0x0000715e nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026727  0x0000715f isolate1  0x00000007 , 0x0000003f 
+ 00026728  0x00007160 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026729  0x00007162 hfetch  0x00000001 , 0x00008062 
+ 00026730  0x00007163 isolate1  0x00000004 , 0x0000003f 
+ 00026731  0x00007164 call  0x0000687e , 0x00000001 
+ 00026732  0x00007165 bpatchx  0x0000009d , 0x00004033 
+ 00026733  0x00007167 hfetch  0x00000004 , 0x00008078 
+ 00026734  0x00007168 hfetcht  0x00000004 , 0x0000807c 
+ 00026735  0x00007169 ior  0x00000002 , 0x0000003f 
+ 00026736  0x0000716a invert  0x0000003f , 0x0000003f 
+ 00026737  0x0000716b iand  0x00000011 , 0x0000003f 
+ 00026738  0x0000716d hstore  0x00000004 , 0x00008070 
+ 00026739  0x0000716e rtn 
+ 00026740  0x00007172 arg  0x00000006 , 0x00000007 
+ 00026741  0x00007173 branch  0x00006884 
+ 00026742  0x00007175 arg  0x00000009 , 0x00000007 
+ 00026743  0x00007176 branch  0x00006882 
+ 00026744  0x00007178 arg  0x00000017 , 0x00000007 
+ 00026745  0x00007179 branch  0x00006882 
+ 00026746  0x0000717b arg  0x00000019 , 0x00000007 
+ 00026747  0x0000717c branch  0x00006884 
+ 00026748  0x0000717e arg  0x0000001e , 0x00000007 
+ 00026749  0x0000717f branch  0x00006884 
+ 00026750  0x00007181 arg  0x00000002 , 0x00000007 
+ 00026751  0x00007182 branch  0x00006884 
+ 00026752  0x00007184 arg  0x00000001 , 0x00000039 
+ 00026753  0x00007185 branch  0x00006885 
+ 00026754  0x00007187 arg  0x00000004 , 0x00000039 
+ 00026755  0x00007188 branch  0x00006885 
+ 00026756  0x0000718a arg  0x00000002 , 0x00000039 
+ 00026757  0x0000718c qset0  0x00000011 
+ 00026758  0x0000718d increase  0x00000001 , 0x00000007 
+ 00026759  0x0000718e loop  0x00006885 
+ 00026760  0x0000718f rtn 
+ 00026761  0x00007198 call  0x00006895 
+ 00026762  0x00007199 arg  0x00000006 , 0x00000002 
+ 00026763  0x0000719a branch  0x0000680e 
+ 00026764  0x0000719d call  0x00006889 
+ 00026765  0x0000719e arg  0x00000006 , 0x00000002 
+ 00026766  0x0000719f branch  0x00006825 
+ 00026767  0x000071a4 call  0x00006895 
+ 00026768  0x000071a5 hfetch  0x00000001 , 0x00008078 
+ 00026769  0x000071a6 set1  0x00000007 , 0x0000003f 
+ 00026770  0x000071a7 hstore  0x00000001 , 0x00008078 
+ 00026771  0x000071a8 arg  0x00000007 , 0x00000002 
+ 00026772  0x000071a9 branch  0x000067fb 
+ 00026773  0x000071ac hfetch  0x00000001 , 0x00008081 
+ 00026774  0x000071ad and_into  0x000000fb , 0x0000003f 
+ 00026775  0x000071ae hstore  0x00000001 , 0x00008081 
+ 00026776  0x000071af rtn 
+ 00026777  0x000071b2 hfetch  0x00000001 , 0x00008081 
+ 00026778  0x000071b3 isolate1  0x00000002 , 0x0000003f 
+ 00026779  0x000071b4 rtn 
+ 00026780  0x000071b7 call  0x0000666a 
+ 00026781  0x000071b8 setarg  0x000007e0 
+ 00026782  0x000071b9 arg  0x00004150 , 0x00000011 
+ 00026783  0x000071ba arg  0x00000002 , 0x00000002 
+ 00026784  0x000071bb call  0x000066b3 
+ 00026785  0x000071bc branch  0x0000666d 
+ 00026786  0x000071c0 call  0x0000666a 
+ 00026787  0x000071c1 setarg  0x000007e2 
+ 00026788  0x000071c2 arg  0x0000421d , 0x00000011 
+ 00026789  0x000071c3 arg  0x0000000e , 0x00000002 
+ 00026790  0x000071c4 call  0x000066b3 
+ 00026791  0x000071c5 branch  0x0000666d 
+ 00026792  0x000071ca bpatchx  0x0000009e , 0x00004033 
+ 00026793  0x000071cc call  0x000068a2 
+ 00026794  0x000071ce fetch  0x00000001 , 0x0000422d 
+ 00026795  0x000071cf beq  0x00000000 , 0x000068af 
+ 00026796  0x000071d0 beq  0x00000001 , 0x000068c3 
+ 00026797  0x000071d1 beq  0x00000002 , 0x000068d7 
+ 00026798  0x000071d2 rtn 
+ 00026799  0x000071d5 fetcht  0x00000002 , 0x00004229 
+ 00026800  0x000071d6 setarg  0x0000aa55 
+ 00026801  0x000071d7 isub  0x00000002 , 0x0000003e 
+ 00026802  0x000071d8 branch  0x000068b8 , 0x00000005 
+ 00026803  0x000071d9 setarg  0x00004dfa 
+ 00026804  0x000071da store  0x00000002 , 0x00004227 
+ 00026805  0x000071db setarg  0x00004894 
+ 00026806  0x000071dc store  0x00000002 , 0x00004221 
+ 00026807  0x000071dd branch  0x000068c0 
+ 00026808  0x000071e0 fetch  0x00000002 , 0x00004227 
+ 00026809  0x000071e1 nbranch  0x000068bc , 0x00000034 
+ 00026810  0x000071e2 setarg  0x00004dfa 
+ 00026811  0x000071e3 store  0x00000002 , 0x00004227 
+ 00026812  0x000071e5 fetch  0x00000002 , 0x00004221 
+ 00026813  0x000071e6 nbranch  0x000068c0 , 0x00000034 
+ 00026814  0x000071e7 setarg  0x00004894 
+ 00026815  0x000071e8 store  0x00000002 , 0x00004221 
+ 00026816  0x000071ea setarg  0x00000064 
+ 00026817  0x000071eb store  0x00000002 , 0x0000422b 
+ 00026818  0x000071ec rtn 
+ 00026819  0x000071ef fetcht  0x00000002 , 0x00004229 
+ 00026820  0x000071f0 setarg  0x0000aa55 
+ 00026821  0x000071f1 isub  0x00000002 , 0x0000003e 
+ 00026822  0x000071f2 branch  0x000068cc , 0x00000005 
+ 00026823  0x000071f3 setarg  0x00005932 
+ 00026824  0x000071f4 store  0x00000002 , 0x00004225 
+ 00026825  0x000071f5 setarg  0x00004323 
+ 00026826  0x000071f6 store  0x00000002 , 0x0000421f 
+ 00026827  0x000071f7 branch  0x000068d4 
+ 00026828  0x000071fa fetch  0x00000002 , 0x00004225 
+ 00026829  0x000071fb nbranch  0x000068d0 , 0x00000034 
+ 00026830  0x000071fc setarg  0x00005932 
+ 00026831  0x000071fd store  0x00000002 , 0x00004225 
+ 00026832  0x000071ff fetch  0x00000002 , 0x0000421f 
+ 00026833  0x00007200 nbranch  0x000068d4 , 0x00000034 
+ 00026834  0x00007201 setarg  0x00004323 
+ 00026835  0x00007202 store  0x00000002 , 0x0000421f 
+ 00026836  0x00007204 setarg  0x00000190 
+ 00026837  0x00007205 store  0x00000002 , 0x0000422b 
+ 00026838  0x00007206 rtn 
+ 00026839  0x00007209 fetcht  0x00000002 , 0x00004229 
+ 00026840  0x0000720a setarg  0x0000aa55 
+ 00026841  0x0000720b isub  0x00000002 , 0x0000003e 
+ 00026842  0x0000720c branch  0x000068e0 , 0x00000005 
+ 00026843  0x0000720d setarg  0x00006946 
+ 00026844  0x0000720e store  0x00000002 , 0x00004223 
+ 00026845  0x0000720f setarg  0x00005377 
+ 00026846  0x00007210 store  0x00000002 , 0x0000421d 
+ 00026847  0x00007211 branch  0x000068e8 
+ 00026848  0x00007214 fetch  0x00000002 , 0x00004223 
+ 00026849  0x00007215 nbranch  0x000068e4 , 0x00000034 
+ 00026850  0x00007216 setarg  0x00006946 
+ 00026851  0x00007217 store  0x00000002 , 0x00004223 
+ 00026852  0x00007219 fetch  0x00000002 , 0x0000421d 
+ 00026853  0x0000721a nbranch  0x000068e8 , 0x00000034 
+ 00026854  0x0000721b setarg  0x00005377 
+ 00026855  0x0000721c store  0x00000002 , 0x0000421d 
+ 00026856  0x0000721e setarg  0x00000032 
+ 00026857  0x0000721f store  0x00000002 , 0x0000422b 
+ 00026858  0x00007220 rtn 
+ 00026859  0x00007224 fetch  0x00000001 , 0x0000422d 
+ 00026860  0x00007225 beq  0x00000000 , 0x000068f0 
+ 00026861  0x00007226 beq  0x00000001 , 0x000068f2 
+ 00026862  0x00007227 beq  0x00000002 , 0x000068f4 
+ 00026863  0x00007228 rtn 
+ 00026864  0x0000722a jam  0x000000bf , 0x00008971 
+ 00026865  0x0000722b branch  0x000068f8 
+ 00026866  0x0000722d jam  0x000000af , 0x00008971 
+ 00026867  0x0000722e branch  0x000068f8 
+ 00026868  0x00007230 jam  0x0000008f , 0x00008971 
+ 00026869  0x00007231 fetch  0x00000001 , 0x0000422e 
+ 00026870  0x00007232 hstore  0x00000001 , 0x00008973 
+ 00026871  0x00007233 branch  0x000068f8 
+ 00026872  0x00007235 bpatchx  0x0000009f , 0x00004033 
+ 00026873  0x00007236 hfetch  0x00000001 , 0x00008053 
+ 00026874  0x00007237 set1  0x00000007 , 0x0000003f 
+ 00026875  0x00007238 hstore  0x00000001 , 0x00008053 
+ 00026876  0x00007239 hfetch  0x00000001 , 0x00008973 
+ 00026877  0x0000723a or_into  0x00000030 , 0x0000003f 
+ 00026878  0x0000723b hstore  0x00000001 , 0x00008973 
+ 00026879  0x0000723c jam  0x0000007c , 0x00008906 
+ 00026880  0x0000723d jam  0x000000aa , 0x00008972 
+ 00026881  0x0000723e nop  0x00001388 
+ 00026882  0x0000723f hfetcht  0x00000002 , 0x00008150 
+ 00026883  0x00007240 hfetch  0x00000001 , 0x00008053 
+ 00026884  0x00007241 set0  0x00000007 , 0x0000003f 
+ 00026885  0x00007242 hstore  0x00000001 , 0x00008053 
+ 00026886  0x00007243 storet  0x00000002 , 0x0000422f 
+ 00026887  0x00007244 rtn 
+ 00026888  0x00007247 bpatchx  0x000000a0 , 0x00004034 
+ 00026889  0x00007248 fetch  0x00000001 , 0x0000422d 
+ 00026890  0x00007249 beq  0x00000000 , 0x0000690e 
+ 00026891  0x0000724a beq  0x00000001 , 0x00006912 
+ 00026892  0x0000724b beq  0x00000002 , 0x00006916 
+ 00026893  0x0000724c rtn 
+ 00026894  0x0000724f fetch  0x00000002 , 0x00004227 
+ 00026895  0x00007250 fetcht  0x00000002 , 0x00004221 
+ 00026896  0x00007251 arg  0x000000c8 , 0x00000013 
+ 00026897  0x00007252 branch  0x0000691a 
+ 00026898  0x00007255 fetch  0x00000002 , 0x00004225 
+ 00026899  0x00007256 fetcht  0x00000002 , 0x0000421f 
+ 00026900  0x00007257 arg  0x00000064 , 0x00000013 
+ 00026901  0x00007258 branch  0x0000691a 
+ 00026902  0x0000725b fetch  0x00000002 , 0x00004223 
+ 00026903  0x0000725c fetcht  0x00000002 , 0x0000421d 
+ 00026904  0x0000725d arg  0x00000032 , 0x00000013 
+ 00026905  0x0000725e branch  0x0000691a 
+ 00026906  0x00007261 isub  0x00000002 , 0x00000011 
+ 00026907  0x00007262 fetch  0x00000002 , 0x0000422f 
+ 00026908  0x00007263 isub  0x00000002 , 0x0000003f 
+ 00026909  0x00007264 nbranch  0x00006927 , 0x00000002 
+ 00026910  0x00007265 fetcht  0x00000002 , 0x0000422b 
+ 00026911  0x00007266 imul32  0x00000002 , 0x00000012 
+ 00026912  0x00007267 copy  0x00000013 , 0x0000003f 
+ 00026913  0x00007268 imul32  0x00000011 , 0x0000003f 
+ 00026914  0x00007269 iadd  0x00000012 , 0x0000003f 
+ 00026915  0x0000726b idiv  0x00000011 
+ 00026916  0x0000726c call  0x00007f86 
+ 00026917  0x0000726d quotient  0x0000003f 
+ 00026918  0x0000726e rtn 
+ 00026919  0x00007271 copy  0x00000002 , 0x0000003f 
+ 00026920  0x00007272 fetcht  0x00000002 , 0x0000422f 
+ 00026921  0x00007273 isub  0x00000002 , 0x0000003f 
+ 00026922  0x00007274 fetcht  0x00000002 , 0x0000422b 
+ 00026923  0x00007275 imul32  0x00000002 , 0x00000012 
+ 00026924  0x00007276 copy  0x00000013 , 0x0000003f 
+ 00026925  0x00007277 imul32  0x00000011 , 0x0000003f 
+ 00026926  0x00007278 isub  0x00000012 , 0x0000003f 
+ 00026927  0x00007279 branch  0x00006923 
+ 00026928  0x00007285 ifetch  0x00000008 , 0x00000011 
+ 00026929  0x00007286 store  0x00000008 , 0x00000a9a 
+ 00026930  0x00007287 fetch  0x00000002 , 0x00000a9a 
+ 00026931  0x00007288 fetcht  0x00000002 , 0x00000a9c 
+ 00026932  0x00007289 isub  0x00000002 , 0x00000011 
+ 00026933  0x0000728a fetch  0x00000002 , 0x00000aa0 
+ 00026934  0x0000728b isub  0x00000002 , 0x00000012 
+ 00026935  0x0000728c fetcht  0x00000002 , 0x00000a9e 
+ 00026936  0x0000728d isub  0x00000002 , 0x0000003e 
+ 00026937  0x0000728e ncall  0x00006940 , 0x00000002 
+ 00026938  0x0000728f mul32  0x00000012 , 0x00000064 , 0x0000003f 
+ 00026939  0x00007290 idiv  0x00000011 
+ 00026940  0x00007291 call  0x00007f86 
+ 00026941  0x00007292 quotient  0x0000003f 
+ 00026942  0x00007293 call  0x00006944 , 0x00000034 
+ 00026943  0x00007294 rtn 
+ 00026944  0x00007296 fetch  0x00000001 , 0x00004231 
+ 00026945  0x00007297 set1  0x00000000 , 0x0000003f 
+ 00026946  0x00007298 store  0x00000001 , 0x00004231 
+ 00026947  0x00007299 rtn 
+ 00026948  0x0000729b fetcht  0x00000001 , 0x00004231 
+ 00026949  0x0000729c set1  0x00000001 , 0x00000002 
+ 00026950  0x0000729d storet  0x00000001 , 0x00004231 
+ 00026951  0x0000729e rtn 
+ 00026952  0x000072a4 fetch  0x00000002 , 0x0000423d 
+ 00026953  0x000072a5 ifetch  0x00000001 , 0x0000003f 
+ 00026954  0x000072a7 rtn  0x00000034 
+ 00026955  0x000072a8 copy  0x0000003f , 0x00000039 
+ 00026956  0x000072aa fetch  0x00000002 , 0x0000423d 
+ 00026957  0x000072ab increase  0x00000003 , 0x0000003f 
+ 00026958  0x000072ac copy  0x0000003f , 0x00000011 
+ 00026959  0x000072ae ifetcht  0x00000001 , 0x00000011 
+ 00026960  0x000072af call  0x000067fb 
+ 00026961  0x000072b0 increase  0x00000001 , 0x00000011 
+ 00026962  0x000072b1 loop  0x0000694f 
+ 00026963  0x000072b3 rtn 
+ 00026964  0x000072b6 fetch  0x00000002 , 0x0000423d 
+ 00026965  0x000072b7 increase  0x00000003 , 0x0000003f 
+ 00026966  0x000072b8 copy  0x0000003f , 0x00000011 
+ 00026967  0x000072ba force  0x00000000 , 0x00000012 
+ 00026968  0x000072bb jam  0x00000000 , 0x00000b12 
+ 00026969  0x000072bd ifetcht  0x00000001 , 0x00000011 
+ 00026970  0x000072be call  0x0000681d 
+ 00026971  0x000072bf bpatchx  0x000000a1 , 0x00004034 
+ 00026972  0x000072c0 fetch  0x00000002 , 0x00000b12 
+ 00026973  0x000072c1 copy  0x00000012 , 0x00000007 
+ 00026974  0x000072c2 qsetflag  0x00000001 , 0x0000003f 
+ 00026975  0x000072c3 store  0x00000002 , 0x00000b12 
+ 00026976  0x000072c4 increase  0x00000001 , 0x00000011 
+ 00026977  0x000072c5 increase  0x00000001 , 0x00000012 
+ 00026978  0x000072c6 fetch  0x00000002 , 0x0000423d 
+ 00026979  0x000072c7 ifetch  0x00000001 , 0x0000003f 
+ 00026980  0x000072c9 ixor  0x00000012 , 0x0000003e 
+ 00026981  0x000072ca nbranch  0x00006959 , 0x00000005 
+ 00026982  0x000072cb fetch  0x00000002 , 0x00000b12 
+ 00026983  0x000072cc fetcht  0x00000002 , 0x00000b14 
+ 00026984  0x000072cd ixor  0x00000002 , 0x0000003e 
+ 00026985  0x000072ce rtn  0x00000005 
+ 00026986  0x000072cf enable  0x00000028 
+ 00026987  0x000072d0 rtn 
+ 00026988  0x000072d3 fetch  0x00000002 , 0x0000423d 
+ 00026989  0x000072d4 ifetch  0x00000001 , 0x0000003f 
+ 00026990  0x000072d6 rtn  0x00000034 
+ 00026991  0x000072d7 copy  0x0000003f , 0x00000039 
+ 00026992  0x000072d8 fetch  0x00000002 , 0x0000423d 
+ 00026993  0x000072d9 increase  0x00000003 , 0x0000003f 
+ 00026994  0x000072da copy  0x0000003f , 0x00000011 
+ 00026995  0x000072dc ifetcht  0x00000001 , 0x00000011 
+ 00026996  0x000072dd call  0x000067dd 
+ 00026997  0x000072de increase  0x00000001 , 0x00000011 
+ 00026998  0x000072df loop  0x00006973 
+ 00026999  0x000072e1 rtn 
+ 00027000  0x000072e4 arg  0x00000009 , 0x00000007 
+ 00027001  0x000072e5 call  0x00007f16 
+ 00027002  0x000072e6 nrtn  0x00000034 
+ 00027003  0x000072e7 setarg  0x00000020 
+ 00027004  0x000072e8 arg  0x00000009 , 0x00000007 
+ 00027005  0x000072e9 call  0x00007f08 
+ 00027006  0x000072ea disable  0x00000028 
+ 00027007  0x000072eb call  0x0000696c 
+ 00027008  0x000072ec bpatchx  0x000000a2 , 0x00004034 
+ 00027009  0x000072ed fetch  0x00000002 , 0x0000423d 
+ 00027010  0x000072ee ifetch  0x00000001 , 0x0000003f 
+ 00027011  0x000072f0 rtn  0x00000034 
+ 00027012  0x000072f1 call  0x00006954 
+ 00027013  0x000072f2 nbranch  0x00007d02 , 0x00000028 
+ 00027014  0x000072f3 call  0x00007d00 
+ 00027015  0x000072f4 disable  0x00000028 
+ 00027016  0x000072f5 fetch  0x00000002 , 0x00000b12 
+ 00027017  0x000072f6 store  0x00000002 , 0x00000b19 
+ 00027018  0x000072f7 jam  0x00000000 , 0x00000b1b 
+ 00027019  0x000072f8 force  0x00000000 , 0x00000007 
+ 00027020  0x000072fa fetch  0x00000002 , 0x00000b14 
+ 00027021  0x000072fb rshift  0x0000003f , 0x00000002 
+ 00027022  0x000072fc storet  0x00000002 , 0x00000b14 
+ 00027023  0x000072fd and  0x0000003f , 0x00000001 , 0x0000003f 
+ 00027024  0x000072fe fetcht  0x00000002 , 0x00000b19 
+ 00027025  0x000072ff and  0x00000002 , 0x00000001 , 0x00000011 
+ 00027026  0x00007300 rshift  0x00000002 , 0x00000002 
+ 00027027  0x00007301 storet  0x00000002 , 0x00000b19 
+ 00027028  0x00007302 ixor  0x00000011 , 0x0000003e 
+ 00027029  0x00007303 ncall  0x000069a1 , 0x00000005 
+ 00027030  0x00007304 fetch  0x00000002 , 0x0000423d 
+ 00027031  0x00007305 ifetch  0x00000001 , 0x0000003f 
+ 00027032  0x00007307 fetcht  0x00000001 , 0x00000b1b 
+ 00027033  0x00007308 increase  0x00000001 , 0x00000002 
+ 00027034  0x00007309 storet  0x00000001 , 0x00000b1b 
+ 00027035  0x0000730a copy  0x00000002 , 0x00000007 
+ 00027036  0x0000730b ixor  0x00000007 , 0x0000003e 
+ 00027037  0x0000730c nbranch  0x0000698c , 0x00000005 
+ 00027038  0x0000730d fetch  0x00000002 , 0x00000b12 
+ 00027039  0x0000730e store  0x00000002 , 0x00000b14 
+ 00027040  0x0000730f rtn 
+ 00027041  0x00007311 bpatchx  0x000000a3 , 0x00004034 
+ 00027042  0x00007312 fetch  0x00000002 , 0x0000423d 
+ 00027043  0x00007313 increase  0x00000001 , 0x0000003f 
+ 00027044  0x00007314 ifetch  0x00000002 , 0x0000003f 
+ 00027045  0x00007315 branch  0x00007f9c 
+ 00027046  0x00007321 hfetch  0x00000001 , 0x00008042 
+ 00027047  0x00007322 ior  0x00000011 , 0x0000003f 
+ 00027048  0x00007323 hstore  0x00000001 , 0x00008042 
+ 00027049  0x00007324 hfetch  0x00000002 , 0x00008050 
+ 00027050  0x00007325 set0  0x0000000d , 0x0000003f 
+ 00027051  0x00007326 hstore  0x00000002 , 0x00008050 
+ 00027052  0x00007328 nop  0x00000064 
+ 00027053  0x00007329 rtn 
+ 00027054  0x00007335 fetcht  0x00000003 , 0x00000a9c 
+ 00027055  0x00007336 setarg  0x00b71b00 
+ 00027056  0x00007337 idiv  0x00000002 
+ 00027057  0x00007338 call  0x00007f86 
+ 00027058  0x00007339 quotient  0x00000002 
+ 00027059  0x0000733a fetch  0x00000001 , 0x00000a9f 
+ 00027060  0x0000733b imul32  0x00000002 , 0x0000003f 
+ 00027061  0x0000733c div  0x0000003f , 0x00000064 
+ 00027062  0x0000733d call  0x00007f86 
+ 00027063  0x0000733e quotient  0x00000011 
+ 00027064  0x0000733f copy  0x00000002 , 0x0000003f 
+ 00027065  0x00007340 isub  0x00000011 , 0x00000012 
+ 00027066  0x00007341 fetch  0x00000001 , 0x00000a9b 
+ 00027067  0x00007342 call  0x000069be 
+ 00027068  0x00007343 fetch  0x00000001 , 0x00000a9a 
+ 00027069  0x00007344 branch  0x000069d5 
+ 00027070  0x00007348 beq  0x00000000 , 0x000069c4 
+ 00027071  0x00007349 beq  0x00000001 , 0x000069c6 
+ 00027072  0x0000734a beq  0x00000002 , 0x000069c8 
+ 00027073  0x0000734b beq  0x00000003 , 0x000069ca 
+ 00027074  0x0000734c beq  0x00000004 , 0x000069cc 
+ 00027075  0x0000734d beq  0x00000005 , 0x000069ce 
+ 00027076  0x0000734f arg  0x000080a0 , 0x00000005 
+ 00027077  0x00007350 branch  0x000069d0 
+ 00027078  0x00007352 arg  0x000080a4 , 0x00000005 
+ 00027079  0x00007353 branch  0x000069d0 
+ 00027080  0x00007355 arg  0x000080a8 , 0x00000005 
+ 00027081  0x00007356 branch  0x000069d0 
+ 00027082  0x00007358 arg  0x00008064 , 0x00000005 
+ 00027083  0x00007359 branch  0x000069d0 
+ 00027084  0x0000735b arg  0x00008068 , 0x00000005 
+ 00027085  0x0000735c branch  0x000069d0 
+ 00027086  0x0000735e arg  0x0000806c , 0x00000005 
+ 00027087  0x0000735f branch  0x000069d0 
+ 00027088  0x00007361 copy  0x00000011 , 0x0000003f 
+ 00027089  0x00007362 istore  0x00000002 , 0x00000005 
+ 00027090  0x00007363 copy  0x00000012 , 0x0000003f 
+ 00027091  0x00007364 istore  0x00000002 , 0x00000005 
+ 00027092  0x00007365 rtn 
+ 00027093  0x0000736a enable  0x00000028 
+ 00027094  0x0000736b branch  0x000069d8 
+ 00027095  0x0000736d disable  0x00000028 
+ 00027096  0x0000736f beq  0x00000004 , 0x000069e3 
+ 00027097  0x00007370 beq  0x00000005 , 0x000069e5 
+ 00027098  0x00007371 beq  0x0000001b , 0x000069e7 
+ 00027099  0x00007372 beq  0x0000001c , 0x000069e9 
+ 00027100  0x00007373 beq  0x00000003 , 0x000069eb 
+ 00027101  0x00007374 beq  0x00000008 , 0x000069ed 
+ 00027102  0x00007375 beq  0x00000014 , 0x000069ef 
+ 00027103  0x00007376 beq  0x00000015 , 0x000069f1 
+ 00027104  0x00007377 beq  0x00000016 , 0x000069f3 
+ 00027105  0x00007378 beq  0x00000017 , 0x000069f5 
+ 00027106  0x00007379 rtn 
+ 00027107  0x0000737d arg  0x00000006 , 0x00000007 
+ 00027108  0x0000737e branch  0x000069ff 
+ 00027109  0x00007380 arg  0x00000007 , 0x00000007 
+ 00027110  0x00007381 branch  0x000069ff 
+ 00027111  0x00007383 arg  0x00000008 , 0x00000007 
+ 00027112  0x00007384 branch  0x000069ff 
+ 00027113  0x00007386 arg  0x00000009 , 0x00000007 
+ 00027114  0x00007387 branch  0x000069ff 
+ 00027115  0x00007389 arg  0x0000000a , 0x00000007 
+ 00027116  0x0000738a branch  0x000069ff 
+ 00027117  0x0000738c arg  0x0000000b , 0x00000007 
+ 00027118  0x0000738d branch  0x000069ff 
+ 00027119  0x0000738f arg  0x0000000c , 0x00000007 
+ 00027120  0x00007390 branch  0x00006a01 
+ 00027121  0x00007392 arg  0x0000000d , 0x00000007 
+ 00027122  0x00007393 branch  0x00006a01 
+ 00027123  0x00007395 arg  0x0000000e , 0x00000007 
+ 00027124  0x00007396 branch  0x00006a01 
+ 00027125  0x00007398 arg  0x0000000f , 0x00000007 
+ 00027126  0x00007399 branch  0x00006a01 
+ 00027127  0x0000739c hfetch  0x00000002 , 0x00008081 
+ 00027128  0x0000739d qsetflag  0x00000028 , 0x0000003f 
+ 00027129  0x0000739e hstore  0x00000002 , 0x00008081 
+ 00027130  0x0000739f copy  0x00000011 , 0x00000007 
+ 00027131  0x000073a0 hfetch  0x00000001 , 0x00008085 
+ 00027132  0x000073a1 qsetflag  0x00000028 , 0x0000003f 
+ 00027133  0x000073a2 hstore  0x00000001 , 0x00008085 
+ 00027134  0x000073a3 rtn 
+ 00027135  0x000073a6 add  0x00000007 , 0xfffffffc , 0x00000011 
+ 00027136  0x000073a7 branch  0x000069f7 
+ 00027137  0x000073aa add  0x00000007 , 0xfffffff6 , 0x00000011 
+ 00027138  0x000073ab branch  0x000069f7 
+ 00027139  0x000073b1 rtn  0x0000002b 
+ 00027140  0x000073b2 jam  0x00000000 , 0x00004567 
+ 00027141  0x000073b3 jam  0x00000003 , 0x000004ed 
+ 00027142  0x000073b4 jam  0x00000003 , 0x000004ee 
+ 00027143  0x000073b5 jam  0x00000011 , 0x000004f2 
+ 00027144  0x000073b6 jam  0x00000013 , 0x000004f3 
+ 00027145  0x000073b7 setarg  0x00000000 
+ 00027146  0x000073b8 store  0x00000003 , 0x000004ef 
+ 00027147  0x000073b9 store  0x00000001 , 0x00004254 
+ 00027148  0x000073ba jam  0x00000000 , 0x00004681 
+ 00027149  0x000073bd bpatchx  0x000000a4 , 0x00004034 
+ 00027150  0x000073be setarg  0x00000000 
+ 00027151  0x000073bf store  0x00000001 , 0x00004254 
+ 00027152  0x000073c0 store  0x00000001 , 0x00004564 
+ 00027153  0x000073c1 store  0x00000001 , 0x0000455d 
+ 00027154  0x000073c2 fetch  0x00000001 , 0x0000456b 
+ 00027155  0x000073c3 beq  0x00000001 , 0x00006a16 
+ 00027156  0x000073c4 jam  0x00000050 , 0x00004569 
+ 00027157  0x000073c5 rtn 
+ 00027158  0x000073c8 jam  0x00000000 , 0x00004569 
+ 00027159  0x000073c9 rtn 
+ 00027160  0x000073cc or_into  0x00000002 , 0x00000002 
+ 00027161  0x000073cd rtn 
+ 00027162  0x000073da copy  0x00000002 , 0x0000003f 
+ 00027163  0x000073db reverse  0x0000003f , 0x0000003f 
+ 00027164  0x000073dc store  0x00000001 , 0x00004562 
+ 00027165  0x000073dd force  0x0000003f , 0x0000003f 
+ 00027166  0x000073de reverse  0x0000003f , 0x0000003f 
+ 00027167  0x000073df store  0x00000001 , 0x00004561 
+ 00027168  0x000073e0 force  0x00000001 , 0x0000003f 
+ 00027169  0x000073e1 reverse  0x0000003f , 0x0000003f 
+ 00027170  0x000073e2 store  0x00000001 , 0x00004560 
+ 00027171  0x000073e3 call  0x00006a50 
+ 00027172  0x000073e4 copy  0x00000002 , 0x0000003f 
+ 00027173  0x000073e5 rtn 
+ 00027174  0x000073e7 reverse  0x0000003f , 0x0000003f 
+ 00027175  0x000073e8 store  0x00000001 , 0x00004562 
+ 00027176  0x000073e9 force  0x00000073 , 0x0000003f 
+ 00027177  0x000073ea reverse  0x0000003f , 0x0000003f 
+ 00027178  0x000073eb store  0x00000001 , 0x00004561 
+ 00027179  0x000073ec force  0x00000001 , 0x0000003f 
+ 00027180  0x000073ed reverse  0x0000003f , 0x0000003f 
+ 00027181  0x000073ee store  0x00000001 , 0x00004560 
+ 00027182  0x000073ef branch  0x00006a50 
+ 00027183  0x000073f2 fetch  0x00000001 , 0x00004563 
+ 00027184  0x000073f3 branch  0x00006a33 , 0x00000034 
+ 00027185  0x000073f4 setarg  0x00000070 
+ 00027186  0x000073f5 rtn 
+ 00027187  0x000073f7 setarg  0x000000aa 
+ 00027188  0x000073f8 rtn 
+ 00027189  0x000073fb reverse  0x0000003f , 0x0000003f 
+ 00027190  0x000073fc store  0x00000001 , 0x00004562 
+ 00027191  0x000073fd force  0x000000ef , 0x0000003f 
+ 00027192  0x000073fe call  0x00006a44 
+ 00027193  0x000073ff fetcht  0x00000002 , 0x000004f7 
+ 00027194  0x00007400 copy  0x00000002 , 0x00000005 
+ 00027195  0x00007401 istore  0x00000001 , 0x00000005 
+ 00027196  0x00007402 copy  0x00000005 , 0x00000002 
+ 00027197  0x00007403 storet  0x00000002 , 0x000004f7 
+ 00027198  0x00007404 force  0x000000ff , 0x0000003f 
+ 00027199  0x00007405 call  0x00006a44 
+ 00027200  0x00007406 fetcht  0x00000002 , 0x000004f7 
+ 00027201  0x00007407 copy  0x00000002 , 0x00000005 
+ 00027202  0x00007408 istore  0x00000001 , 0x00000005 
+ 00027203  0x00007409 rtn 
+ 00027204  0x00007413 reverse  0x0000003f , 0x0000003f 
+ 00027205  0x00007414 store  0x00000001 , 0x00004561 
+ 00027206  0x00007415 fetch  0x00000002 , 0x00004561 
+ 00027207  0x00007416 lshift8  0x0000003f , 0x0000003f 
+ 00027208  0x00007417 store  0x00000003 , 0x000004f4 
+ 00027209  0x00007418 arg  0x00000107 , 0x00000011 
+ 00027210  0x00007419 arg  0x0000000f , 0x00000012 
+ 00027211  0x0000741a call  0x00006a5d 
+ 00027212  0x0000741b xor_into  0x000000d7 , 0x0000003f 
+ 00027213  0x0000741c invert  0x0000003f , 0x0000003f 
+ 00027214  0x0000741d reverse  0x0000003f , 0x0000003f 
+ 00027215  0x0000741e rtn 
+ 00027216  0x00007429 fetch  0x00000003 , 0x00004560 
+ 00027217  0x0000742a store  0x00000003 , 0x000004f4 
+ 00027218  0x0000742b arg  0x00000107 , 0x00000011 
+ 00027219  0x0000742c arg  0x0000000f , 0x00000012 
+ 00027220  0x0000742d call  0x00006a5d 
+ 00027221  0x0000742e lshift8  0x0000003f , 0x0000003f 
+ 00027222  0x0000742f arg  0x00000007 , 0x00000012 
+ 00027223  0x00007430 call  0x00006a5d 
+ 00027224  0x00007431 xor_into  0x0000002b , 0x0000003f 
+ 00027225  0x00007432 invert  0x0000003f , 0x0000003f 
+ 00027226  0x00007433 reverse  0x0000003f , 0x0000003f 
+ 00027227  0x00007434 copy  0x0000003f , 0x00000002 
+ 00027228  0x00007435 rtn 
+ 00027229  0x00007438 arg  0x00000000 , 0x00000013 
+ 00027230  0x00007439 copy  0x00000012 , 0x00000039 
+ 00027231  0x0000743a call  0x00007e71 
+ 00027232  0x0000743b icopy  0x00000002 
+ 00027233  0x00007441 copy  0x00000002 , 0x0000003f 
+ 00027234  0x00007442 lshift  0x00000013 , 0x00000013 
+ 00027235  0x00007443 bbit0  0x00000008 , 0x00006a66 
+ 00027236  0x00007444 ixor  0x00000011 , 0x00000002 
+ 00027237  0x00007445 increase  0x00000001 , 0x00000013 
+ 00027238  0x00007447 lshift  0x00000002 , 0x00000002 
+ 00027239  0x00007448 fetch  0x00000003 , 0x000004f4 
+ 00027240  0x00007449 increase  0xffffffff , 0x00000012 
+ 00027241  0x0000744a compare  0x000000ff , 0x00000012 , 0x000000ff 
+ 00027242  0x0000744b branch  0x00006a70 , 0x00000001 
+ 00027243  0x0000744c copy  0x00000012 , 0x00000039 
+ 00027244  0x0000744d call  0x00007e71 
+ 00027245  0x0000744e isolate1  0x00000000 , 0x0000003f 
+ 00027246  0x0000744f setflag  0x00000001 , 0x00000000 , 0x00000002 
+ 00027247  0x00007450 branch  0x00006a61 
+ 00027248  0x00007453 rshift  0x00000002 , 0x0000003f 
+ 00027249  0x00007454 rtn 
+ 00027250  0x00007457 fetcht  0x00000001 , 0x0000455d 
+ 00027251  0x0000745a lshift2  0x00000002 , 0x00000002 
+ 00027252  0x0000745b set1  0x00000000 , 0x00000002 
+ 00027253  0x0000745c fetch  0x00000001 , 0x00004563 
+ 00027254  0x0000745d ncall  0x00006a18 , 0x00000034 
+ 00027255  0x0000745e storet  0x00000001 , 0x0000050d 
+ 00027256  0x0000745f rtn 
+ 00027257  0x00007463 lshift  0x00000002 , 0x00000002 
+ 00027258  0x00007464 fetch  0x00000001 , 0x00004563 
+ 00027259  0x00007465 setflag  0x00000034 , 0x00000000 , 0x00000002 
+ 00027260  0x00007467 rtn 
+ 00027261  0x00007469 fetcht  0x00000001 , 0x000004fc 
+ 00027262  0x0000746a jam  0x000000d7 , 0x000004fe 
+ 00027263  0x0000746b call  0x00006bb6 
+ 00027264  0x0000746c fetch  0x00000001 , 0x00004251 
+ 00027265  0x0000746d set1  0x00000006 , 0x0000003f 
+ 00027266  0x0000746e set1  0x00000007 , 0x0000003f 
+ 00027267  0x0000746f store  0x00000001 , 0x00004251 
+ 00027268  0x00007470 jam  0x00000000 , 0x00004563 
+ 00027269  0x00007471 branch  0x00006b97 
+ 00027270  0x00007473 fetch  0x00000001 , 0x00004251 
+ 00027271  0x00007474 set1  0x00000007 , 0x0000003f 
+ 00027272  0x00007475 store  0x00000001 , 0x00004251 
+ 00027273  0x00007476 branch  0x00006b97 
+ 00027274  0x0000747a bpatchx  0x000000a5 , 0x00004034 
+ 00027275  0x0000747b fetch  0x00000001 , 0x00004681 
+ 00027276  0x0000747c beq  0x00000000 , 0x00006a8e 
+ 00027277  0x0000747d branch  0x00006b4c 
+ 00027278  0x00007480 fetch  0x00000002 , 0x00000264 
+ 00027279  0x00007481 copy  0x0000003f , 0x00000006 
+ 00027280  0x00007482 call  0x00006ab8 
+ 00027281  0x00007483 fetch  0x00000001 , 0x000004fc 
+ 00027282  0x00007484 beq  0x00000000 , 0x00006a94 
+ 00027283  0x00007485 branch  0x00006b18 
+ 00027284  0x00007487 bpatchx  0x000000a6 , 0x00004034 
+ 00027285  0x00007488 fetch  0x00000001 , 0x000004fd 
+ 00027286  0x00007489 beq  0x0000003f , 0x00006a7d 
+ 00027287  0x0000748a beq  0x00000073 , 0x00006a86 
+ 00027288  0x0000748b beq  0x000000ef , 0x00006a9b 
+ 00027289  0x0000748c beq  0x00000053 , 0x00006b44 
+ 00027290  0x0000748d rtn 
+ 00027291  0x00007491 fetch  0x00000002 , 0x00000501 
+ 00027292  0x00007492 copy  0x0000003f , 0x00000006 
+ 00027293  0x00007493 call  0x00006ac3 
+ 00027294  0x00007494 fetch  0x00000001 , 0x00000503 
+ 00027295  0x00007495 beq  0x00000041 , 0x00006aa5 
+ 00027296  0x00007496 beq  0x00000040 , 0x00006aad 
+ 00027297  0x00007497 beq  0x00000071 , 0x00006ae6 
+ 00027298  0x00007498 beq  0x00000070 , 0x00006af2 
+ 00027299  0x00007499 beq  0x00000049 , 0x00006afd 
+ 00027300  0x0000749a branch  0x00006b97 
+ 00027301  0x0000749d call  0x00006aaf 
+ 00027302  0x0000749f branch  0x00006aa7 
+ 00027303  0x000074a2 fetch  0x00000001 , 0x00004254 
+ 00027304  0x000074a3 set1  0x00000000 , 0x0000003f 
+ 00027305  0x000074a4 set1  0x00000001 , 0x0000003f 
+ 00027306  0x000074a5 store  0x00000001 , 0x00004254 
+ 00027307  0x000074a6 call  0x00006be0 
+ 00027308  0x000074a7 branch  0x00006b97 
+ 00027309  0x000074aa call  0x00006aaf 
+ 00027310  0x000074ab branch  0x00006b97 
+ 00027311  0x000074ae call  0x00006acb 
+ 00027312  0x000074af branch  0x00006ad7 
+ 00027313  0x000074b2 call  0x00006acb 
+ 00027314  0x000074b3 ifetch  0x00000001 , 0x00000006 
+ 00027315  0x000074b4 rshift3  0x0000003f , 0x0000003f 
+ 00027316  0x000074b5 store  0x00000001 , 0x0000456a 
+ 00027317  0x000074b6 ifetch  0x00000001 , 0x00000006 
+ 00027318  0x000074b7 store  0x00000001 , 0x00000508 
+ 00027319  0x000074b8 rtn 
+ 00027320  0x000074bc ifetch  0x00000001 , 0x00000006 
+ 00027321  0x000074bd store  0x00000001 , 0x000004fb 
+ 00027322  0x000074be rshift3  0x0000003f , 0x0000003f 
+ 00027323  0x000074bf store  0x00000001 , 0x000004fc 
+ 00027324  0x000074c0 ifetch  0x00000001 , 0x00000006 
+ 00027325  0x000074c1 store  0x00000001 , 0x000004fd 
+ 00027326  0x000074c3 call  0x00006ace 
+ 00027327  0x000074c4 storet  0x00000002 , 0x000004ff 
+ 00027328  0x000074c5 copy  0x00000006 , 0x0000003f 
+ 00027329  0x000074c6 store  0x00000002 , 0x00000501 
+ 00027330  0x000074c7 rtn 
+ 00027331  0x000074ca ifetch  0x00000001 , 0x00000006 
+ 00027332  0x000074cb rshift  0x0000003f , 0x0000003f 
+ 00027333  0x000074cc store  0x00000001 , 0x00000503 
+ 00027334  0x000074cd call  0x00006ace 
+ 00027335  0x000074ce storet  0x00000002 , 0x00000504 
+ 00027336  0x000074cf copy  0x00000006 , 0x0000003f 
+ 00027337  0x000074d0 store  0x00000002 , 0x00000506 
+ 00027338  0x000074d1 rtn 
+ 00027339  0x000074d5 fetch  0x00000002 , 0x00000506 
+ 00027340  0x000074d6 copy  0x0000003f , 0x00000006 
+ 00027341  0x000074d7 rtn 
+ 00027342  0x000074da ifetch  0x00000001 , 0x00000006 
+ 00027343  0x000074db copy  0x0000003f , 0x00000002 
+ 00027344  0x000074dc rshift  0x00000002 , 0x00000002 
+ 00027345  0x000074dd rtnbit1  0x00000000 
+ 00027346  0x000074de ifetch  0x00000001 , 0x00000006 
+ 00027347  0x000074df lshift3  0x0000003f , 0x0000003f 
+ 00027348  0x000074e0 lshift4  0x0000003f , 0x0000003f 
+ 00027349  0x000074e1 iadd  0x00000002 , 0x00000002 
+ 00027350  0x000074e2 rtn 
+ 00027351  0x000074e5 ifetch  0x00000001 , 0x00000006 
+ 00027352  0x000074e6 store  0x00000001 , 0x0000455d 
+ 00027353  0x000074e7 ifetch  0x00000001 , 0x00000006 
+ 00027354  0x000074e8 store  0x00000001 , 0x00000509 
+ 00027355  0x000074e9 ifetch  0x00000001 , 0x00000006 
+ 00027356  0x000074ea store  0x00000001 , 0x0000050a 
+ 00027357  0x000074eb ifetch  0x00000001 , 0x00000006 
+ 00027358  0x000074ec store  0x00000001 , 0x0000050b 
+ 00027359  0x000074ed ifetch  0x00000002 , 0x00000006 
+ 00027360  0x000074ee store  0x00000002 , 0x0000455e 
+ 00027361  0x000074ef ifetch  0x00000001 , 0x00000006 
+ 00027362  0x000074f0 store  0x00000001 , 0x0000050c 
+ 00027363  0x000074f1 ifetch  0x00000001 , 0x00000006 
+ 00027364  0x000074f2 store  0x00000001 , 0x00004568 
+ 00027365  0x000074f3 rtn 
+ 00027366  0x000074f7 call  0x00006ab1 
+ 00027367  0x000074f9 branch  0x00006ae8 
+ 00027368  0x000074fc fetch  0x00000001 , 0x00004254 
+ 00027369  0x000074fd set1  0x00000005 , 0x0000003f 
+ 00027370  0x000074fe set1  0x00000006 , 0x0000003f 
+ 00027371  0x000074ff store  0x00000001 , 0x00004254 
+ 00027372  0x00007500 fetcht  0x00000001 , 0x0000455d 
+ 00027373  0x00007501 lshift2  0x00000002 , 0x00000002 
+ 00027374  0x00007502 or_into  0x00000003 , 0x00000002 
+ 00027375  0x00007503 call  0x00006c11 
+ 00027376  0x00007504 jam  0x00000003 , 0x00004567 
+ 00027377  0x00007505 branch  0x00006b97 
+ 00027378  0x00007508 jam  0x00000008 , 0x00000a99 
+ 00027379  0x00007509 call  0x00007d86 
+ 00027380  0x0000750a call  0x00006ab1 
+ 00027381  0x0000750b fetch  0x00000001 , 0x0000456a 
+ 00027382  0x0000750c sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00027383  0x0000750d branch  0x00006af9 , 0x00000005 
+ 00027384  0x0000750e branch  0x00002a8c 
+ 00027385  0x00007510 fetch  0x00000001 , 0x00004254 
+ 00027386  0x00007511 set1  0x00000007 , 0x0000003f 
+ 00027387  0x00007512 store  0x00000001 , 0x00004254 
+ 00027388  0x00007513 branch  0x00006b97 
+ 00027389  0x00007516 call  0x00006acb 
+ 00027390  0x00007517 ifetch  0x00000001 , 0x00000006 
+ 00027391  0x00007518 store  0x00000001 , 0x00000ac2 
+ 00027392  0x00007519 call  0x000052d2 
+ 00027393  0x0000751a call  0x000052e0 
+ 00027394  0x0000751b setarg  0x0000000e 
+ 00027395  0x0000751c istore  0x00000002 , 0x00000005 
+ 00027396  0x0000751d fetch  0x00000002 , 0x0000424a 
+ 00027397  0x0000751e istore  0x00000002 , 0x00000005 
+ 00027398  0x0000751f fetch  0x00000001 , 0x00004563 
+ 00027399  0x00007521 lshift  0x0000003f , 0x0000003f 
+ 00027400  0x00007522 set1  0x00000000 , 0x0000003f 
+ 00027401  0x00007523 istore  0x00000001 , 0x00000005 
+ 00027402  0x00007524 bpatchx  0x000000a7 , 0x00004034 
+ 00027403  0x00007525 setarg  0x000015ef 
+ 00027404  0x00007526 istore  0x00000002 , 0x00000005 
+ 00027405  0x00007527 setarg  0x00001191 
+ 00027406  0x00007528 istore  0x00000002 , 0x00000005 
+ 00027407  0x0000752b fetch  0x00000001 , 0x00000ac2 
+ 00027408  0x0000752c istore  0x00000001 , 0x00000005 
+ 00027409  0x0000752d setarg  0x00000007 
+ 00027410  0x0000752e istore  0x00000005 , 0x00000005 
+ 00027411  0x00007531 setarg  0x00000001 
+ 00027412  0x00007532 istore  0x00000002 , 0x00000005 
+ 00027413  0x00007535 call  0x00006a2f 
+ 00027414  0x00007536 istore  0x00000001 , 0x00000005 
+ 00027415  0x00007537 rtn 
+ 00027416  0x0000753c branch  0x00006b19 
+ 00027417  0x0000753f bpatchx  0x000000a8 , 0x00004035 
+ 00027418  0x00007540 fetch  0x00000001 , 0x000004fd 
+ 00027419  0x00007541 beq  0x00000073 , 0x00006b21 
+ 00027420  0x00007542 beq  0x0000003f , 0x00006b25 
+ 00027421  0x00007543 beq  0x000000ef , 0x00006b3f 
+ 00027422  0x00007544 beq  0x000000ff , 0x00006b37 
+ 00027423  0x00007545 beq  0x00000053 , 0x00006b46 
+ 00027424  0x00007546 rtn 
+ 00027425  0x00007548 fetch  0x00000001 , 0x00004254 
+ 00027426  0x00007549 set1  0x00000003 , 0x0000003f 
+ 00027427  0x0000754a store  0x00000001 , 0x00004254 
+ 00027428  0x0000754b branch  0x00006b97 
+ 00027429  0x0000754d fetch  0x00000001 , 0x00004254 
+ 00027430  0x0000754e set1  0x00000003 , 0x0000003f 
+ 00027431  0x0000754f set1  0x00000002 , 0x0000003f 
+ 00027432  0x00007550 store  0x00000001 , 0x00004254 
+ 00027433  0x00007551 fetch  0x00000001 , 0x000004fb 
+ 00027434  0x00007552 call  0x00006a26 
+ 00027435  0x00007553 store  0x00000001 , 0x000004fe 
+ 00027436  0x00007554 call  0x00006bb6 
+ 00027437  0x00007555 fetch  0x00000001 , 0x000004fb 
+ 00027438  0x00007556 rshift2  0x0000003f , 0x0000003f 
+ 00027439  0x00007557 store  0x00000001 , 0x0000455d 
+ 00027440  0x00007558 lshift2  0x0000003f , 0x0000003f 
+ 00027441  0x00007559 set0  0x00000001 , 0x0000003f 
+ 00027442  0x0000755a set1  0x00000000 , 0x0000003f 
+ 00027443  0x0000755b arg  0x00004565 , 0x00000002 
+ 00027444  0x0000755c storet  0x00000002 , 0x000004f7 
+ 00027445  0x0000755d call  0x00006a35 
+ 00027446  0x0000755e branch  0x00006b97 
+ 00027447  0x00007561 fetch  0x00000002 , 0x00000501 
+ 00027448  0x00007562 copy  0x0000003f , 0x00000006 
+ 00027449  0x00007563 increase  0x00000001 , 0x0000003f 
+ 00027450  0x00007564 store  0x00000002 , 0x00000501 
+ 00027451  0x00007565 ifetch  0x00000001 , 0x00000006 
+ 00027452  0x00007566 fetcht  0x00000001 , 0x00004568 
+ 00027453  0x00007567 iadd  0x00000002 , 0x0000003f 
+ 00027454  0x00007568 store  0x00000001 , 0x00004568 
+ 00027455  0x0000756a call  0x00006c42 
+ 00027456  0x0000756c call  0x00006a72 
+ 00027457  0x0000756d call  0x00006c28 
+ 00027458  0x0000756e call  0x00006c4b 
+ 00027459  0x0000756f branch  0x00006b97 
+ 00027460  0x00007572 jam  0x00000009 , 0x00000a99 
+ 00027461  0x00007573 call  0x00007d86 
+ 00027462  0x00007575 call  0x00006a0d 
+ 00027463  0x00007576 fetch  0x00000001 , 0x000004fb 
+ 00027464  0x00007577 call  0x00006a26 
+ 00027465  0x00007578 store  0x00000001 , 0x000004fe 
+ 00027466  0x00007579 call  0x00006bb6 
+ 00027467  0x0000757a branch  0x00006b97 
+ 00027468  0x00007580 fetch  0x00000002 , 0x00000264 
+ 00027469  0x00007581 copy  0x0000003f , 0x00000006 
+ 00027470  0x00007582 call  0x00006ab8 
+ 00027471  0x00007583 fetch  0x00000001 , 0x000004fc 
+ 00027472  0x00007584 beq  0x00000000 , 0x00006b52 
+ 00027473  0x00007585 branch  0x00006b86 
+ 00027474  0x00007588 bpatchx  0x000000a9 , 0x00004035 
+ 00027475  0x00007589 fetch  0x00000001 , 0x000004fd 
+ 00027476  0x0000758a beq  0x0000003f , 0x00006a7d 
+ 00027477  0x0000758b beq  0x00000073 , 0x00006a86 
+ 00027478  0x0000758c beq  0x000000ef , 0x00006b58 
+ 00027479  0x0000758d branch  0x00006b97 
+ 00027480  0x0000758f fetch  0x00000002 , 0x00000501 
+ 00027481  0x00007590 copy  0x0000003f , 0x00000006 
+ 00027482  0x00007591 call  0x00006ac3 
+ 00027483  0x00007592 fetch  0x00000001 , 0x00000503 
+ 00027484  0x00007593 beq  0x00000041 , 0x00006b61 
+ 00027485  0x00007594 beq  0x00000040 , 0x00006b61 
+ 00027486  0x00007595 beq  0x00000071 , 0x00006b6c 
+ 00027487  0x00007596 beq  0x00000070 , 0x00006b7c 
+ 00027488  0x00007597 branch  0x00006b97 
+ 00027489  0x0000759a call  0x00006aaf 
+ 00027490  0x0000759b fetch  0x00000001 , 0x0000455d 
+ 00027491  0x0000759c rshift  0x0000003f , 0x0000003f 
+ 00027492  0x0000759d fetcht  0x00000001 , 0x00004564 
+ 00027493  0x0000759e isub  0x00000002 , 0x0000003e 
+ 00027494  0x0000759f branch  0x00006b68 , 0x00000005 
+ 00027495  0x000075a0 branch  0x00002a8c 
+ 00027496  0x000075a2 fetch  0x00000001 , 0x00004254 
+ 00027497  0x000075a3 set1  0x00000001 , 0x0000003f 
+ 00027498  0x000075a4 store  0x00000001 , 0x00004254 
+ 00027499  0x000075a5 branch  0x00006b97 
+ 00027500  0x000075a8 call  0x00006ab1 
+ 00027501  0x000075a9 fetch  0x00000001 , 0x0000456a 
+ 00027502  0x000075aa fetcht  0x00000001 , 0x00004564 
+ 00027503  0x000075ab isub  0x00000002 , 0x0000003e 
+ 00027504  0x000075ac branch  0x00006b73 , 0x00000005 
+ 00027505  0x000075ad branch  0x00002a8c 
+ 00027506  0x000075ae branch  0x00006b97 
+ 00027507  0x000075b0 fetch  0x00000001 , 0x00004254 
+ 00027508  0x000075b1 set1  0x00000005 , 0x0000003f 
+ 00027509  0x000075b2 set1  0x00000006 , 0x0000003f 
+ 00027510  0x000075b3 store  0x00000001 , 0x00004254 
+ 00027511  0x000075b4 fetcht  0x00000001 , 0x0000455d 
+ 00027512  0x000075b5 lshift2  0x00000002 , 0x00000002 
+ 00027513  0x000075b6 or_into  0x00000003 , 0x00000002 
+ 00027514  0x000075b7 call  0x00006c11 
+ 00027515  0x000075b8 branch  0x00006b97 
+ 00027516  0x000075bb call  0x00006ab1 
+ 00027517  0x000075bc fetch  0x00000001 , 0x0000456a 
+ 00027518  0x000075bd fetcht  0x00000001 , 0x00004564 
+ 00027519  0x000075be isub  0x00000002 , 0x0000003e 
+ 00027520  0x000075bf branch  0x00006b82 , 0x00000005 
+ 00027521  0x000075c0 branch  0x00002a8c 
+ 00027522  0x000075c2 fetch  0x00000001 , 0x00004254 
+ 00027523  0x000075c3 set1  0x00000007 , 0x0000003f 
+ 00027524  0x000075c4 store  0x00000001 , 0x00004254 
+ 00027525  0x000075c5 branch  0x00006b97 
+ 00027526  0x000075c8 fetch  0x00000001 , 0x000004fc 
+ 00027527  0x000075c9 fetcht  0x00000001 , 0x00004564 
+ 00027528  0x000075ca isub  0x00000002 , 0x0000003e 
+ 00027529  0x000075cb branch  0x00006b8c , 0x00000005 
+ 00027530  0x000075cc branch  0x00002a8c 
+ 00027531  0x000075cd branch  0x00006b97 
+ 00027532  0x000075d0 fetch  0x00000001 , 0x000004fd 
+ 00027533  0x000075d1 beq  0x00000073 , 0x00006b91 
+ 00027534  0x000075d2 beq  0x000000ef , 0x00006b3f 
+ 00027535  0x000075d3 beq  0x000000ff , 0x00006b37 
+ 00027536  0x000075d4 beq  0x00000053 , 0x00006b96 
+ 00027537  0x000075d6 fetch  0x00000001 , 0x00004254 
+ 00027538  0x000075d7 set1  0x00000003 , 0x0000003f 
+ 00027539  0x000075d8 store  0x00000001 , 0x00004254 
+ 00027540  0x000075d9 branch  0x00006b97 
+ 00027541  0x000075db branch  0x00006b95 
+ 00027542  0x000075dd branch  0x00006b46 
+ 00027543  0x000075df rtn 
+ 00027544  0x000075e2 fetch  0x00000001 , 0x00004567 
+ 00027545  0x000075e3 rtn  0x00000034 
+ 00027546  0x000075e4 beq  0x00000003 , 0x00006b9c 
+ 00027547  0x000075e5 branch  0x00002a8c 
+ 00027548  0x000075e8 jam  0x00000000 , 0x00004567 
+ 00027549  0x000075e9 call  0x000052d2 
+ 00027550  0x000075ea arg  0x00000001 , 0x00000002 
+ 00027551  0x000075eb fetcht  0x00000001 , 0x0000455d 
+ 00027552  0x000075ec lshift2  0x00000002 , 0x00000002 
+ 00027553  0x000075ee or_into  0x00000003 , 0x00000002 
+ 00027554  0x000075ef arg  0x000000aa , 0x00000011 
+ 00027555  0x000075f0 call  0x00006bfc 
+ 00027556  0x000075f1 call  0x000052e0 
+ 00027557  0x000075f2 copy  0x00000005 , 0x00000006 
+ 00027558  0x000075f3 ifetch  0x00000002 , 0x00000006 
+ 00027559  0x000075f4 branch  0x00002a8c , 0x00000034 
+ 00027560  0x000075f5 rtn 
+ 00027561  0x000075f8 call  0x000052e0 
+ 00027562  0x000075f9 setarg  0x00000004 
+ 00027563  0x000075fa istore  0x00000002 , 0x00000005 
+ 00027564  0x000075fb fetch  0x00000002 , 0x0000424a 
+ 00027565  0x000075fc istore  0x00000002 , 0x00000005 
+ 00027566  0x000075fd fetch  0x00000001 , 0x000004fb 
+ 00027567  0x000075fe istore  0x00000001 , 0x00000005 
+ 00027568  0x000075ff bpatchx  0x000000aa , 0x00004035 
+ 00027569  0x00007600 setarg  0x0000013f 
+ 00027570  0x00007601 istore  0x00000002 , 0x00000005 
+ 00027571  0x00007602 fetch  0x00000001 , 0x000004fe 
+ 00027572  0x00007603 istore  0x00000001 , 0x00000005 
+ 00027573  0x00007604 rtn 
+ 00027574  0x00007606 call  0x000052d2 
+ 00027575  0x00007607 call  0x000052e0 
+ 00027576  0x00007608 setarg  0x00000004 
+ 00027577  0x00007609 istore  0x00000002 , 0x00000005 
+ 00027578  0x0000760a fetch  0x00000002 , 0x0000424a 
+ 00027579  0x0000760b istore  0x00000002 , 0x00000005 
+ 00027580  0x0000760c fetch  0x00000001 , 0x000004fb 
+ 00027581  0x0000760d istore  0x00000001 , 0x00000005 
+ 00027582  0x0000760e bpatchx  0x000000ab , 0x00004035 
+ 00027583  0x0000760f setarg  0x00000173 
+ 00027584  0x00007610 istore  0x00000002 , 0x00000005 
+ 00027585  0x00007611 fetch  0x00000001 , 0x000004fe 
+ 00027586  0x00007612 istore  0x00000001 , 0x00000005 
+ 00027587  0x00007613 rtn 
+ 00027588  0x00007615 call  0x000052e0 
+ 00027589  0x00007616 setarg  0x0000000e 
+ 00027590  0x00007617 istore  0x00000002 , 0x00000005 
+ 00027591  0x00007618 fetch  0x00000002 , 0x0000424a 
+ 00027592  0x00007619 istore  0x00000002 , 0x00000005 
+ 00027593  0x0000761a fetch  0x00000001 , 0x00004563 
+ 00027594  0x0000761b lshift  0x0000003f , 0x0000003f 
+ 00027595  0x0000761c set1  0x00000000 , 0x0000003f 
+ 00027596  0x0000761d istore  0x00000001 , 0x00000005 
+ 00027597  0x0000761e bpatchx  0x000000ac , 0x00004035 
+ 00027598  0x0000761f setarg  0x000015ef 
+ 00027599  0x00007620 istore  0x00000002 , 0x00000005 
+ 00027600  0x00007621 setarg  0x00001183 
+ 00027601  0x00007622 istore  0x00000002 , 0x00000005 
+ 00027602  0x00007623 copy  0x00000002 , 0x0000003f 
+ 00027603  0x00007624 istore  0x00000001 , 0x00000005 
+ 00027604  0x00007625 setarg  0x000000f0 
+ 00027605  0x00007626 istore  0x00000003 , 0x00000005 
+ 00027606  0x00007627 setarg  0x0000007f 
+ 00027607  0x00007628 istore  0x00000002 , 0x00000005 
+ 00027608  0x00007629 setarg  0x00000000 
+ 00027609  0x0000762a istore  0x00000001 , 0x00000005 
+ 00027610  0x0000762b setarg  0x00000001 
+ 00027611  0x0000762c istore  0x00000001 , 0x00000005 
+ 00027612  0x0000762d call  0x00006a2f 
+ 00027613  0x0000762e istore  0x00000001 , 0x00000005 
+ 00027614  0x0000762f jam  0x00000010 , 0x00004569 
+ 00027615  0x00007630 rtn 
+ 00027616  0x00007632 call  0x000052d2 
+ 00027617  0x00007633 call  0x000052e0 
+ 00027618  0x00007634 setarg  0x0000000e 
+ 00027619  0x00007635 istore  0x00000002 , 0x00000005 
+ 00027620  0x00007636 fetch  0x00000002 , 0x0000424a 
+ 00027621  0x00007637 istore  0x00000002 , 0x00000005 
+ 00027622  0x00007638 fetch  0x00000001 , 0x00004563 
+ 00027623  0x00007639 lshift  0x0000003f , 0x0000003f 
+ 00027624  0x0000763a set1  0x00000000 , 0x0000003f 
+ 00027625  0x0000763b istore  0x00000001 , 0x00000005 
+ 00027626  0x0000763c bpatchx  0x000000ad , 0x00004035 
+ 00027627  0x0000763d setarg  0x000015ef 
+ 00027628  0x0000763e istore  0x00000002 , 0x00000005 
+ 00027629  0x0000763f setarg  0x00001181 
+ 00027630  0x00007640 istore  0x00000002 , 0x00000005 
+ 00027631  0x00007641 fetch  0x00000001 , 0x0000455d 
+ 00027632  0x00007642 istore  0x00000001 , 0x00000005 
+ 00027633  0x00007643 setarg  0x000000e0 
+ 00027634  0x00007644 istore  0x00000003 , 0x00000005 
+ 00027635  0x00007645 fetch  0x00000002 , 0x0000456c 
+ 00027636  0x00007646 istore  0x00000002 , 0x00000005 
+ 00027637  0x00007647 setarg  0x00000000 
+ 00027638  0x00007648 istore  0x00000001 , 0x00000005 
+ 00027639  0x00007649 fetch  0x00000001 , 0x0000456e 
+ 00027640  0x0000764a istore  0x00000001 , 0x00000005 
+ 00027641  0x0000764b call  0x00006a2f 
+ 00027642  0x0000764c istore  0x00000001 , 0x00000005 
+ 00027643  0x0000764d rtn 
+ 00027644  0x0000764f call  0x000052e0 
+ 00027645  0x00007650 setarg  0x00000008 
+ 00027646  0x00007651 istore  0x00000002 , 0x00000005 
+ 00027647  0x00007652 fetch  0x00000002 , 0x0000424a 
+ 00027648  0x00007653 istore  0x00000002 , 0x00000005 
+ 00027649  0x00007654 fetch  0x00000001 , 0x00004563 
+ 00027650  0x00007655 lshift  0x0000003f , 0x0000003f 
+ 00027651  0x00007656 set1  0x00000000 , 0x0000003f 
+ 00027652  0x00007657 istore  0x00000001 , 0x00000005 
+ 00027653  0x00007658 bpatchx  0x000000ae , 0x00004035 
+ 00027654  0x00007659 setarg  0x000009ef 
+ 00027655  0x0000765a istore  0x00000002 , 0x00000005 
+ 00027656  0x0000765b setarg  0x000005e3 
+ 00027657  0x0000765c istore  0x00000002 , 0x00000005 
+ 00027658  0x0000765d copy  0x00000002 , 0x0000003f 
+ 00027659  0x0000765e istore  0x00000001 , 0x00000005 
+ 00027660  0x0000765f setarg  0x0000008d 
+ 00027661  0x00007660 istore  0x00000001 , 0x00000005 
+ 00027662  0x00007661 call  0x00006a2f 
+ 00027663  0x00007662 istore  0x00000001 , 0x00000005 
+ 00027664  0x00007663 rtn 
+ 00027665  0x00007666 call  0x000052d2 
+ 00027666  0x00007667 call  0x000052e0 
+ 00027667  0x00007668 setarg  0x00000008 
+ 00027668  0x00007669 istore  0x00000002 , 0x00000005 
+ 00027669  0x0000766a fetch  0x00000002 , 0x0000424a 
+ 00027670  0x0000766b istore  0x00000002 , 0x00000005 
+ 00027671  0x0000766c copy  0x00000002 , 0x0000000b 
+ 00027672  0x0000766d fetch  0x00000001 , 0x00004563 
+ 00027673  0x0000766e lshift  0x0000003f , 0x0000003f 
+ 00027674  0x0000766f set1  0x00000000 , 0x0000003f 
+ 00027675  0x00007670 istore  0x00000001 , 0x00000005 
+ 00027676  0x00007671 bpatchx  0x000000af , 0x00004035 
+ 00027677  0x00007672 setarg  0x000009ef 
+ 00027678  0x00007673 istore  0x00000002 , 0x00000005 
+ 00027679  0x00007674 setarg  0x000005e1 
+ 00027680  0x00007675 istore  0x00000002 , 0x00000005 
+ 00027681  0x00007676 copy  0x0000000b , 0x0000003f 
+ 00027682  0x00007677 istore  0x00000001 , 0x00000005 
+ 00027683  0x00007678 setarg  0x0000008d 
+ 00027684  0x00007679 istore  0x00000001 , 0x00000005 
+ 00027685  0x0000767a call  0x00006a2f 
+ 00027686  0x0000767b istore  0x00000001 , 0x00000005 
+ 00027687  0x0000767c rtn 
+ 00027688  0x0000767f bpatchx  0x000000b0 , 0x00004036 
+ 00027689  0x00007680 fetch  0x00000001 , 0x00004569 
+ 00027690  0x00007681 rtn  0x00000034 
+ 00027691  0x00007682 hfetch  0x00000002 , 0x00008112 
+ 00027692  0x00007683 nrtn  0x00000034 
+ 00027693  0x00007684 copy  0x00000011 , 0x0000003f 
+ 00027694  0x00007685 store  0x00000001 , 0x00000a9b 
+ 00027695  0x00007686 storet  0x00000001 , 0x00000a9a 
+ 00027696  0x00007687 call  0x0000526e 
+ 00027697  0x00007688 nrtn  0x00000034 
+ 00027698  0x00007689 call  0x000052d2 
+ 00027699  0x0000768a call  0x000052e0 
+ 00027700  0x0000768b setarg  0x00000005 
+ 00027701  0x0000768c istore  0x00000002 , 0x00000005 
+ 00027702  0x0000768d fetch  0x00000002 , 0x0000424a 
+ 00027703  0x0000768e istore  0x00000002 , 0x00000005 
+ 00027704  0x0000768f fetch  0x00000001 , 0x0000050d 
+ 00027705  0x00007690 istore  0x00000001 , 0x00000005 
+ 00027706  0x00007691 setarg  0x000001ff 
+ 00027707  0x00007692 istore  0x00000002 , 0x00000005 
+ 00027708  0x00007693 fetch  0x00000001 , 0x00004569 
+ 00027709  0x00007694 istore  0x00000001 , 0x00000005 
+ 00027710  0x00007695 fetch  0x00000001 , 0x00004566 
+ 00027711  0x00007696 istore  0x00000001 , 0x00000005 
+ 00027712  0x00007697 jam  0x00000000 , 0x00004569 
+ 00027713  0x00007698 rtn 
+ 00027714  0x0000769b bpatchx  0x000000b1 , 0x00004036 
+ 00027715  0x0000769c fetch  0x00000001 , 0x0000456b 
+ 00027716  0x0000769d rtneq  0x00000001 
+ 00027717  0x0000769e fetch  0x00000002 , 0x000004ff 
+ 00027718  0x0000769f rtn  0x00000034 
+ 00027719  0x000076a0 fetch  0x00000001 , 0x00004569 
+ 00027720  0x000076a1 increase  0x00000001 , 0x0000003f 
+ 00027721  0x000076a2 store  0x00000001 , 0x00004569 
+ 00027722  0x000076a3 rtn 
+ 00027723  0x000076a6 fetch  0x00000002 , 0x0000456f 
+ 00027724  0x000076a7 branch  0x00007f9c 
+ 00027725  0x000076aa bpatchx  0x000000b2 , 0x00004036 
+ 00027726  0x000076ac fetch  0x00000001 , 0x00004568 
+ 00027727  0x000076ad rtn  0x00000034 
+ 00027728  0x000076ae increase  0xffffffff , 0x0000003f 
+ 00027729  0x000076af store  0x00000001 , 0x00004568 
+ 00027730  0x000076b0 fetch  0x00000002 , 0x0000455e 
+ 00027731  0x000076b1 fetcht  0x00000002 , 0x0000469f 
+ 00027732  0x000076b2 isub  0x00000002 , 0x0000003e 
+ 00027733  0x000076b3 branch  0x00006c57 , 0x00000002 
+ 00027734  0x000076b4 store  0x00000002 , 0x0000469f 
+ 00027735  0x000076b6 fetch  0x00000001 , 0x00004569 
+ 00027736  0x000076b7 branch  0x00006c5f , 0x00000034 
+ 00027737  0x000076b8 jam  0x00000001 , 0x00000510 
+ 00027738  0x000076b9 fetch  0x00000001 , 0x00004566 
+ 00027739  0x000076ba store  0x00000001 , 0x0000050f 
+ 00027740  0x000076bb setarg  0x000000ff 
+ 00027741  0x000076bc store  0x00000001 , 0x0000050e 
+ 00027742  0x000076bd branch  0x00006c64 
+ 00027743  0x000076bf jam  0x00000000 , 0x00000510 
+ 00027744  0x000076c0 fetch  0x00000001 , 0x00004565 
+ 00027745  0x000076c1 store  0x00000001 , 0x0000050f 
+ 00027746  0x000076c2 setarg  0x000000ef 
+ 00027747  0x000076c3 store  0x00000001 , 0x0000050e 
+ 00027748  0x000076c5 bpatchx  0x000000b3 , 0x00004036 
+ 00027749  0x000076c6 fetch  0x00000002 , 0x0000469f 
+ 00027750  0x000076c7 sub  0x0000003f , 0x0000007f , 0x0000003e 
+ 00027751  0x000076c8 branch  0x00006c6b , 0x00000002 
+ 00027752  0x000076c9 fetch  0x00000001 , 0x00000510 
+ 00027753  0x000076ca increase  0x00000001 , 0x0000003f 
+ 00027754  0x000076cb store  0x00000001 , 0x00000510 
+ 00027755  0x000076cd call  0x00006a72 
+ 00027756  0x000076ce fetch  0x00000002 , 0x0000469f 
+ 00027757  0x000076cf increase  0x00000008 , 0x0000003f 
+ 00027758  0x000076d0 fetcht  0x00000001 , 0x00000510 
+ 00027759  0x000076d1 iadd  0x00000002 , 0x00000011 
+ 00027760  0x000076d3 call  0x00005240 
+ 00027761  0x000076d4 store  0x00000002 , 0x00000277 
+ 00027762  0x000076d5 increase  0x00000004 , 0x0000003f 
+ 00027763  0x000076d6 store  0x00000002 , 0x00000279 
+ 00027764  0x000076d7 copy  0x0000003f , 0x00000005 
+ 00027765  0x000076d8 fetch  0x00000001 , 0x0000050d 
+ 00027766  0x000076d9 istore  0x00000001 , 0x00000005 
+ 00027767  0x000076da fetch  0x00000001 , 0x0000050e 
+ 00027768  0x000076db istore  0x00000001 , 0x00000005 
+ 00027769  0x000076dc call  0x00006c95 
+ 00027770  0x000076dd call  0x00006ca6 
+ 00027771  0x000076de bpatchx  0x000000b4 , 0x00004036 
+ 00027772  0x000076df fetch  0x00000002 , 0x00004571 
+ 00027773  0x000076e0 copy  0x0000003f , 0x00000003 
+ 00027774  0x000076e1 fetch  0x00000002 , 0x0000469f 
+ 00027775  0x000076e2 copy  0x0000003f , 0x00000039 
+ 00027776  0x000076e3 call  0x000066ea 
+ 00027777  0x000076e4 copy  0x00000005 , 0x00000002 
+ 00027778  0x000076e5 copy  0x00000003 , 0x0000003f 
+ 00027779  0x000076e6 store  0x00000002 , 0x00004571 
+ 00027780  0x000076e7 copy  0x00000002 , 0x00000005 
+ 00027781  0x000076e8 fetch  0x00000001 , 0x0000050f 
+ 00027782  0x000076e9 istore  0x00000001 , 0x00000005 
+ 00027783  0x000076ea fetch  0x00000002 , 0x00000277 
+ 00027784  0x000076eb copy  0x0000003f , 0x00000005 
+ 00027785  0x000076ec fetch  0x00000002 , 0x0000469f 
+ 00027786  0x000076ed fetcht  0x00000001 , 0x00000510 
+ 00027787  0x000076ee iadd  0x00000002 , 0x0000003f 
+ 00027788  0x000076ef increase  0x00000004 , 0x0000003f 
+ 00027789  0x000076f0 istore  0x00000002 , 0x00000005 
+ 00027790  0x000076f1 fetch  0x00000002 , 0x0000424a 
+ 00027791  0x000076f2 istore  0x00000002 , 0x00000005 
+ 00027792  0x000076f3 jam  0x00000000 , 0x00004569 
+ 00027793  0x000076f4 fetch  0x00000002 , 0x00004573 
+ 00027794  0x000076f5 beq  0x00000000 , 0x00003a97 
+ 00027795  0x000076f6 jam  0x00000000 , 0x00000b05 
+ 00027796  0x000076f7 rtn 
+ 00027797  0x000076fa bpatchx  0x000000b5 , 0x00004036 
+ 00027798  0x000076fb fetch  0x00000002 , 0x0000469f 
+ 00027799  0x000076fc sub  0x0000003f , 0x0000007f , 0x0000003e 
+ 00027800  0x000076fd nbranch  0x00006c9d , 0x00000002 
+ 00027801  0x000076fe lshift  0x0000003f , 0x0000003f 
+ 00027802  0x000076ff set1  0x00000000 , 0x0000003f 
+ 00027803  0x00007700 istore  0x00000001 , 0x00000005 
+ 00027804  0x00007701 rtn 
+ 00027805  0x00007703 fetch  0x00000002 , 0x0000469f 
+ 00027806  0x00007704 rshift3  0x0000003f , 0x0000003f 
+ 00027807  0x00007705 rshift4  0x0000003f , 0x00000002 
+ 00027808  0x00007706 and_into  0x0000007f , 0x0000003f 
+ 00027809  0x00007707 lshift  0x0000003f , 0x0000003f 
+ 00027810  0x00007708 set0  0x00000000 , 0x0000003f 
+ 00027811  0x00007709 istore  0x00000001 , 0x00000005 
+ 00027812  0x0000770a istoret  0x00000001 , 0x00000005 
+ 00027813  0x0000770b rtn 
+ 00027814  0x0000770d fetch  0x00000001 , 0x00004569 
+ 00027815  0x0000770e rtn  0x00000034 
+ 00027816  0x0000770f istore  0x00000001 , 0x00000005 
+ 00027817  0x00007710 rtn 
+ 00027818  0x00007716 bpatchx  0x000000b6 , 0x00004036 
+ 00027819  0x00007717 call  0x00007d9c 
+ 00027820  0x00007718 call  0x000032f6 
+ 00027821  0x00007719 call  0x0000631b 
+ 00027822  0x0000771b bpatchx  0x000000b7 , 0x00004036 
+ 00027823  0x0000771c call  0x000076dc 
+ 00027824  0x0000771d call  0x000076b5 
+ 00027825  0x0000771e call  0x000076c6 
+ 00027826  0x00007721 call  0x0000526e 
+ 00027827  0x00007722 nrtn  0x00000034 
+ 00027828  0x00007724 call  0x00004da9 
+ 00027829  0x00007725 call  0x0000526e 
+ 00027830  0x00007726 nrtn  0x00000034 
+ 00027831  0x00007727 bpatchx  0x000000b8 , 0x00004037 
+ 00027832  0x00007729 call  0x00006cf5 
+ 00027833  0x0000772a call  0x00004f64 
+ 00027834  0x0000772b call  0x00006b98 
+ 00027835  0x0000772d call  0x00006cbe 
+ 00027836  0x0000772e bpatchx  0x000000b9 , 0x00004037 
+ 00027837  0x00007731 branch  0x000032f2 
+ 00027838  0x00007734 fetch  0x00000001 , 0x0000027f 
+ 00027839  0x00007735 bbit1  0x00000000 , 0x00005087 
+ 00027840  0x00007736 bbit1  0x00000007 , 0x00005091 
+ 00027841  0x00007737 rtn 
+ 00027842  0x0000773a bpatchx  0x000000ba , 0x00004037 
+ 00027843  0x0000773b call  0x00005274 
+ 00027844  0x0000773c rtn  0x00000034 
+ 00027845  0x0000773d fetch  0x00000001 , 0x0000004b 
+ 00027846  0x0000773e rtnbit1  0x00000006 
+ 00027847  0x0000773f call  0x00005258 
+ 00027848  0x00007740 store  0x00000002 , 0x0000016f 
+ 00027849  0x00007741 copy  0x0000003f , 0x00000006 
+ 00027850  0x00007742 ifetch  0x00000002 , 0x00000006 
+ 00027851  0x00007743 increase  0x00000004 , 0x0000003f 
+ 00027852  0x00007744 store  0x00000002 , 0x000041dc 
+ 00027853  0x00007745 jam  0x00000006 , 0x000041db 
+ 00027854  0x00007746 bpatchx  0x000000bb , 0x00004037 
+ 00027855  0x00007747 fetch  0x00000002 , 0x00004246 
+ 00027856  0x00007748 branch  0x00006cdd , 0x00000034 
+ 00027857  0x00007749 fetch  0x00000001 , 0x0000004b 
+ 00027858  0x0000774a rtnbit0  0x00000007 
+ 00027859  0x0000774b set0  0x00000007 , 0x0000003f 
+ 00027860  0x0000774c store  0x00000001 , 0x0000004b 
+ 00027861  0x0000774d jam  0x00000005 , 0x000041db 
+ 00027862  0x0000774e fetcht  0x00000002 , 0x00004246 
+ 00027863  0x0000774f fetch  0x00000002 , 0x0000016f 
+ 00027864  0x00007750 iadd  0x00000002 , 0x0000003f 
+ 00027865  0x00007751 store  0x00000002 , 0x0000016f 
+ 00027866  0x00007752 fetch  0x00000002 , 0x000041dc 
+ 00027867  0x00007753 isub  0x00000002 , 0x0000003f 
+ 00027868  0x00007754 store  0x00000002 , 0x000041dc 
+ 00027869  0x00007756 bpatchx  0x000000bc , 0x00004037 
+ 00027870  0x00007757 fetch  0x00000002 , 0x000041dc 
+ 00027871  0x00007758 branch  0x00002a8c , 0x00000034 
+ 00027872  0x00007759 arg  0x00000104 , 0x00000002 
+ 00027873  0x0000775a isub  0x00000002 , 0x0000003f 
+ 00027874  0x0000775b nbranch  0x00006ce9 , 0x00000002 
+ 00027875  0x0000775c bpatchx  0x000000bd , 0x00004037 
+ 00027876  0x0000775d storet  0x00000002 , 0x000041dc 
+ 00027877  0x0000775e fetch  0x00000002 , 0x00004246 
+ 00027878  0x0000775f iadd  0x00000002 , 0x0000003f 
+ 00027879  0x00007760 store  0x00000002 , 0x00004246 
+ 00027880  0x00007761 branch  0x00006ceb 
+ 00027881  0x00007763 setarg  0x00000000 
+ 00027882  0x00007764 store  0x00000002 , 0x00004246 
+ 00027883  0x00007766 fetch  0x00000001 , 0x0000004b 
+ 00027884  0x00007767 set1  0x00000006 , 0x0000003f 
+ 00027885  0x00007768 store  0x00000001 , 0x0000004b 
+ 00027886  0x00007769 rtn 
+ 00027887  0x0000776c fetch  0x00000001 , 0x00004684 
+ 00027888  0x0000776d bbit1  0x00000000 , 0x00006cf3 
+ 00027889  0x0000776e jam  0x00000001 , 0x00000287 
+ 00027890  0x0000776f rtn 
+ 00027891  0x00007771 jam  0x0000000f , 0x00000287 
+ 00027892  0x00007772 rtn 
+ 00027893  0x00007775 fetch  0x00000001 , 0x00004681 
+ 00027894  0x00007776 nbranch  0x00006cfb , 0x00000034 
+ 00027895  0x00007778 fetch  0x00000001 , 0x00000286 
+ 00027896  0x0000777a rtn  0x00000034 
+ 00027897  0x0000777c jam  0x00000000 , 0x00000286 
+ 00027898  0x0000777e rtn 
+ 00027899  0x00007782 bpatchx  0x000000be , 0x00004037 
+ 00027900  0x00007783 fetch  0x00000001 , 0x00000287 
+ 00027901  0x00007784 rtn  0x00000034 
+ 00027902  0x00007785 beq  0x00000001 , 0x00006d1b 
+ 00027903  0x00007786 beq  0x00000002 , 0x00006d74 
+ 00027904  0x00007787 beq  0x00000003 , 0x00006d21 
+ 00027905  0x00007788 beq  0x00000004 , 0x00006d78 
+ 00027906  0x00007789 beq  0x0000003b , 0x00006d2b 
+ 00027907  0x0000778a beq  0x0000003c , 0x00006d7b 
+ 00027908  0x0000778b beq  0x0000000d , 0x00006d30 
+ 00027909  0x0000778c beq  0x0000000e , 0x00006d80 
+ 00027910  0x0000778d beq  0x0000000f , 0x00006d33 
+ 00027911  0x0000778e beq  0x00000010 , 0x00006d86 
+ 00027912  0x0000778f beq  0x00000011 , 0x00006d39 
+ 00027913  0x00007790 beq  0x00000012 , 0x00006d8a 
+ 00027914  0x00007791 beq  0x00000013 , 0x00006d3f 
+ 00027915  0x00007792 beq  0x00000014 , 0x00006d8e 
+ 00027916  0x00007793 beq  0x00000015 , 0x00006d45 
+ 00027917  0x00007794 beq  0x00000016 , 0x00006d92 
+ 00027918  0x00007795 beq  0x00000017 , 0x00006d4b 
+ 00027919  0x00007796 beq  0x00000018 , 0x00006d97 
+ 00027920  0x00007797 beq  0x00000019 , 0x00006d51 
+ 00027921  0x00007798 beq  0x0000001a , 0x00006d9b 
+ 00027922  0x00007799 beq  0x0000001b , 0x00006d57 
+ 00027923  0x0000779a beq  0x0000001c , 0x00006d9f 
+ 00027924  0x0000779b beq  0x0000001d , 0x00006d5d 
+ 00027925  0x0000779c beq  0x0000001e , 0x00006da4 
+ 00027926  0x0000779d beq  0x0000001f , 0x00006d63 
+ 00027927  0x0000779e beq  0x00000020 , 0x00006da8 
+ 00027928  0x0000779f beq  0x00000021 , 0x00006d6e 
+ 00027929  0x000077a0 beq  0x00000022 , 0x00006dac 
+ 00027930  0x000077a2 rtn 
+ 00027931  0x000077a4 call  0x00006db7 
+ 00027932  0x000077a5 jam  0x00000002 , 0x00000287 
+ 00027933  0x000077a6 fetch  0x00000001 , 0x00004250 
+ 00027934  0x000077a7 set1  0x00000000 , 0x0000003f 
+ 00027935  0x000077a8 store  0x00000001 , 0x00004250 
+ 00027936  0x000077a9 rtn 
+ 00027937  0x000077ab jam  0x00000004 , 0x00000287 
+ 00027938  0x000077ac fetch  0x00000001 , 0x00004250 
+ 00027939  0x000077ad rtnbit1  0x00000002 
+ 00027940  0x000077ae jam  0x00000003 , 0x00000287 
+ 00027941  0x000077af call  0x00006dbe 
+ 00027942  0x000077b0 jam  0x00000004 , 0x00000287 
+ 00027943  0x000077b1 fetch  0x00000001 , 0x00004250 
+ 00027944  0x000077b2 set1  0x00000002 , 0x0000003f 
+ 00027945  0x000077b3 store  0x00000001 , 0x00004250 
+ 00027946  0x000077b4 rtn 
+ 00027947  0x000077b6 call  0x00005274 
+ 00027948  0x000077b7 nrtn  0x00000034 
+ 00027949  0x000077b8 call  0x00006dcd 
+ 00027950  0x000077b9 jam  0x0000003c , 0x00000287 
+ 00027951  0x000077ba rtn 
+ 00027952  0x000077bc call  0x00006dc3 
+ 00027953  0x000077bd jam  0x0000000e , 0x00000287 
+ 00027954  0x000077be rtn 
+ 00027955  0x000077c0 call  0x00006ddd 
+ 00027956  0x000077c1 jam  0x00000010 , 0x00000287 
+ 00027957  0x000077c2 fetch  0x00000001 , 0x00004252 
+ 00027958  0x000077c3 set1  0x00000000 , 0x0000003f 
+ 00027959  0x000077c4 store  0x00000001 , 0x00004252 
+ 00027960  0x000077c5 rtn 
+ 00027961  0x000077c7 call  0x00006de4 
+ 00027962  0x000077c8 jam  0x00000012 , 0x00000287 
+ 00027963  0x000077c9 fetch  0x00000001 , 0x00004252 
+ 00027964  0x000077ca set1  0x00000002 , 0x0000003f 
+ 00027965  0x000077cb store  0x00000001 , 0x00004252 
+ 00027966  0x000077cc rtn 
+ 00027967  0x000077ce call  0x00006de9 
+ 00027968  0x000077cf jam  0x00000014 , 0x00000287 
+ 00027969  0x000077d0 fetch  0x00000001 , 0x00004253 
+ 00027970  0x000077d1 set1  0x00000000 , 0x0000003f 
+ 00027971  0x000077d2 store  0x00000001 , 0x00004253 
+ 00027972  0x000077d3 rtn 
+ 00027973  0x000077d5 call  0x00006df0 
+ 00027974  0x000077d6 jam  0x00000016 , 0x00000287 
+ 00027975  0x000077d7 fetch  0x00000001 , 0x00004253 
+ 00027976  0x000077d8 set1  0x00000002 , 0x0000003f 
+ 00027977  0x000077d9 store  0x00000001 , 0x00004253 
+ 00027978  0x000077da rtn 
+ 00027979  0x000077dc call  0x00006dd1 
+ 00027980  0x000077dd jam  0x00000018 , 0x00000287 
+ 00027981  0x000077de fetch  0x00000001 , 0x00004251 
+ 00027982  0x000077df set1  0x00000000 , 0x0000003f 
+ 00027983  0x000077e0 store  0x00000001 , 0x00004251 
+ 00027984  0x000077e1 rtn 
+ 00027985  0x000077e3 call  0x00006dd8 
+ 00027986  0x000077e4 jam  0x0000001a , 0x00000287 
+ 00027987  0x000077e5 fetch  0x00000001 , 0x00004251 
+ 00027988  0x000077e6 set1  0x00000002 , 0x0000003f 
+ 00027989  0x000077e7 store  0x00000001 , 0x00004251 
+ 00027990  0x000077e8 rtn 
+ 00027991  0x000077ea call  0x00006df5 
+ 00027992  0x000077eb jam  0x0000001c , 0x00000287 
+ 00027993  0x000077ec fetch  0x00000001 , 0x00004251 
+ 00027994  0x000077ed set1  0x00000006 , 0x0000003f 
+ 00027995  0x000077ee store  0x00000001 , 0x00004251 
+ 00027996  0x000077ef rtn 
+ 00027997  0x000077f1 call  0x00006dfc 
+ 00027998  0x000077f2 fetch  0x00000001 , 0x00004254 
+ 00027999  0x000077f3 set1  0x00000000 
+ 00028000  0x000077f4 store  0x00000001 , 0x00004254 
+ 00028001  0x000077f5 jam  0x0000001e , 0x00000287 
+ 00028002  0x000077f6 rtn 
+ 00028003  0x000077f8 call  0x00006e02 
+ 00028004  0x000077f9 fetch  0x00000001 , 0x00004254 
+ 00028005  0x000077fa set1  0x00000002 
+ 00028006  0x000077fb store  0x00000001 , 0x00004254 
+ 00028007  0x000077fc jam  0x00000020 , 0x00000287 
+ 00028008  0x000077fd fetch  0x00000001 , 0x00004564 
+ 00028009  0x000077fe lshift3  0x0000003f , 0x0000003f 
+ 00028010  0x000077ff or_into  0x00000003 , 0x0000003f 
+ 00028011  0x00007800 arg  0x00004565 , 0x00000002 
+ 00028012  0x00007801 storet  0x00000002 , 0x000004f7 
+ 00028013  0x00007802 branch  0x00006a35 
+ 00028014  0x00007804 call  0x00006e0c 
+ 00028015  0x00007805 fetch  0x00000001 , 0x00004254 
+ 00028016  0x00007806 set1  0x00000004 
+ 00028017  0x00007807 store  0x00000001 , 0x00004254 
+ 00028018  0x00007808 jam  0x00000022 , 0x00000287 
+ 00028019  0x00007809 rtn 
+ 00028020  0x0000780c fetch  0x00000001 , 0x00004250 
+ 00028021  0x0000780d rtnbit0  0x00000001 
+ 00028022  0x0000780e jam  0x00000003 , 0x00000287 
+ 00028023  0x0000780f branch  0x00006cfb 
+ 00028024  0x00007811 fetch  0x00000001 , 0x00004250 
+ 00028025  0x00007812 rtnne  0x0000003f 
+ 00028026  0x00007813 jam  0x0000003b , 0x00000287 
+ 00028027  0x00007815 fetch  0x00000001 , 0x00000285 
+ 00028028  0x00007816 rtnne  0x00000017 
+ 00028029  0x00007817 jam  0x00000000 , 0x00000285 
+ 00028030  0x00007818 jam  0x0000000d , 0x00000287 
+ 00028031  0x00007819 branch  0x00006cfb 
+ 00028032  0x0000781b fetch  0x00000001 , 0x00004250 
+ 00028033  0x0000781c nrtn  0x00000034 
+ 00028034  0x0000781d fetch  0x00000001 , 0x00004684 
+ 00028035  0x0000781e bbit1  0x00000000 , 0x00006daf 
+ 00028036  0x0000781f bbit1  0x00000006 , 0x00006db1 
+ 00028037  0x00007820 branch  0x00006db5 
+ 00028038  0x00007822 fetch  0x00000001 , 0x00004252 
+ 00028039  0x00007823 rtnbit0  0x00000001 
+ 00028040  0x00007824 jam  0x00000011 , 0x00000287 
+ 00028041  0x00007825 branch  0x00006cfb 
+ 00028042  0x00007827 fetch  0x00000001 , 0x00004252 
+ 00028043  0x00007828 rtnne  0x0000003f 
+ 00028044  0x00007829 jam  0x00000013 , 0x00000287 
+ 00028045  0x0000782a branch  0x00006cfb 
+ 00028046  0x0000782c fetch  0x00000001 , 0x00004253 
+ 00028047  0x0000782d rtnbit0  0x00000001 
+ 00028048  0x0000782e jam  0x00000015 , 0x00000287 
+ 00028049  0x0000782f branch  0x00006cfb 
+ 00028050  0x00007831 fetch  0x00000001 , 0x00004253 
+ 00028051  0x00007832 rtnne  0x0000003f 
+ 00028052  0x00007833 fetch  0x00000001 , 0x00004684 
+ 00028053  0x00007834 bbit1  0x00000006 , 0x00006db1 
+ 00028054  0x00007835 branch  0x00006db5 
+ 00028055  0x00007837 fetch  0x00000001 , 0x00004251 
+ 00028056  0x00007838 rtnbit0  0x00000001 
+ 00028057  0x00007839 jam  0x00000019 , 0x00000287 
+ 00028058  0x0000783a branch  0x00006cfb 
+ 00028059  0x0000783c fetch  0x00000001 , 0x00004251 
+ 00028060  0x0000783d rtnne  0x0000003f 
+ 00028061  0x0000783e jam  0x0000001b , 0x00000287 
+ 00028062  0x0000783f branch  0x00006cfb 
+ 00028063  0x00007841 fetch  0x00000001 , 0x00004251 
+ 00028064  0x00007842 rtnne  0x000000ff 
+ 00028065  0x00007843 fetch  0x00000001 , 0x00004684 
+ 00028066  0x00007844 bbit1  0x00000006 , 0x00006db3 
+ 00028067  0x00007845 branch  0x00006db5 
+ 00028068  0x00007847 fetch  0x00000001 , 0x00004254 
+ 00028069  0x00007848 rtnbit0  0x00000001 
+ 00028070  0x00007849 jam  0x0000001f , 0x00000287 
+ 00028071  0x0000784a branch  0x00006cfb 
+ 00028072  0x0000784c fetch  0x00000001 , 0x00004254 
+ 00028073  0x0000784d rtnbit0  0x00000003 
+ 00028074  0x0000784e jam  0x00000021 , 0x00000287 
+ 00028075  0x0000784f branch  0x00006cfb 
+ 00028076  0x00007851 fetch  0x00000001 , 0x00004254 
+ 00028077  0x00007852 rtnne  0x000000ff 
+ 00028078  0x00007853 branch  0x00006db5 
+ 00028079  0x00007856 jam  0x0000000f , 0x00000287 
+ 00028080  0x00007857 branch  0x00006cfb 
+ 00028081  0x0000785a jam  0x00000017 , 0x00000287 
+ 00028082  0x0000785b branch  0x00006cfb 
+ 00028083  0x0000785d jam  0x0000001d , 0x00000287 
+ 00028084  0x0000785e branch  0x00006cfb 
+ 00028085  0x00007863 jam  0x00000000 , 0x00000287 
+ 00028086  0x00007864 rtn 
+ 00028087  0x00007866 bpatchx  0x000000bf , 0x00004037 
+ 00028088  0x00007867 call  0x000052b8 
+ 00028089  0x00007868 setarg  0x00000001 
+ 00028090  0x00007869 copy  0x0000003f , 0x00000002 
+ 00028091  0x0000786a setarg  0x00000050 
+ 00028092  0x0000786b copy  0x0000003f , 0x0000000b 
+ 00028093  0x0000786c branch  0x000050a8 
+ 00028094  0x0000786f bpatchx  0x000000c0 , 0x00004038 
+ 00028095  0x00007870 call  0x000052b8 
+ 00028096  0x00007871 fetch  0x00000002 , 0x00004248 
+ 00028097  0x00007872 copy  0x0000003f , 0x00000002 
+ 00028098  0x00007873 branch  0x000050b7 
+ 00028099  0x00007876 bpatchx  0x000000c1 , 0x00004038 
+ 00028100  0x00007877 call  0x000052b8 
+ 00028101  0x00007878 fetch  0x00000002 , 0x00004248 
+ 00028102  0x00007879 copy  0x0000003f , 0x00000002 
+ 00028103  0x0000787a arg  0x00000050 , 0x0000000b 
+ 00028104  0x0000787b call  0x000050cc 
+ 00028105  0x0000787c fetch  0x00000001 , 0x00004250 
+ 00028106  0x0000787d set0  0x00000005 , 0x0000003f 
+ 00028107  0x0000787e store  0x00000001 , 0x00004250 
+ 00028108  0x0000787f rtn 
+ 00028109  0x00007882 bpatchx  0x000000c2 , 0x00004038 
+ 00028110  0x00007883 call  0x000052c5 
+ 00028111  0x00007884 call  0x00007138 
+ 00028112  0x00007885 branch  0x000050e7 
+ 00028113  0x00007888 bpatchx  0x000000c3 , 0x00004038 
+ 00028114  0x00007889 call  0x000052b8 
+ 00028115  0x0000788a setarg  0x00000003 
+ 00028116  0x0000788b copy  0x0000003f , 0x00000002 
+ 00028117  0x0000788c setarg  0x00000051 
+ 00028118  0x0000788d copy  0x0000003f , 0x0000000b 
+ 00028119  0x0000788e branch  0x000050a8 
+ 00028120  0x00007891 bpatchx  0x000000c4 , 0x00004038 
+ 00028121  0x00007892 call  0x000052b8 
+ 00028122  0x00007893 fetch  0x00000002 , 0x0000424a 
+ 00028123  0x00007894 copy  0x0000003f , 0x00000002 
+ 00028124  0x00007895 branch  0x000050b7 
+ 00028125  0x00007898 bpatchx  0x000000c5 , 0x00004038 
+ 00028126  0x00007899 call  0x000052b8 
+ 00028127  0x0000789a setarg  0x00000011 
+ 00028128  0x0000789b copy  0x0000003f , 0x00000002 
+ 00028129  0x0000789c setarg  0x00000052 
+ 00028130  0x0000789d copy  0x0000003f , 0x0000000b 
+ 00028131  0x0000789e branch  0x000050a8 
+ 00028132  0x000078a1 bpatchx  0x000000c6 , 0x00004038 
+ 00028133  0x000078a2 call  0x000052b8 
+ 00028134  0x000078a3 fetch  0x00000002 , 0x0000424c 
+ 00028135  0x000078a4 copy  0x0000003f , 0x00000002 
+ 00028136  0x000078a5 branch  0x000050b7 
+ 00028137  0x000078a8 bpatchx  0x000000c7 , 0x00004038 
+ 00028138  0x000078a9 call  0x000052b8 
+ 00028139  0x000078aa setarg  0x00000013 
+ 00028140  0x000078ab copy  0x0000003f , 0x00000002 
+ 00028141  0x000078ac setarg  0x00000053 
+ 00028142  0x000078ad copy  0x0000003f , 0x0000000b 
+ 00028143  0x000078ae branch  0x000050a8 
+ 00028144  0x000078b1 bpatchx  0x000000c8 , 0x00004039 
+ 00028145  0x000078b2 call  0x000052b8 
+ 00028146  0x000078b3 fetch  0x00000002 , 0x0000424e 
+ 00028147  0x000078b4 copy  0x0000003f , 0x00000002 
+ 00028148  0x000078b5 branch  0x000050b7 
+ 00028149  0x000078b8 bpatchx  0x000000c9 , 0x00004039 
+ 00028150  0x000078b9 call  0x000052d2 
+ 00028151  0x000078bb jam  0x00000003 , 0x000004fb 
+ 00028152  0x000078bc jam  0x0000001c , 0x000004fe 
+ 00028153  0x000078bd call  0x00006ba9 
+ 00028154  0x000078be jam  0x00000001 , 0x00004563 
+ 00028155  0x000078bf rtn 
+ 00028156  0x000078c2 bpatchx  0x000000ca , 0x00004039 
+ 00028157  0x000078c3 call  0x000052d2 
+ 00028158  0x000078c4 fetcht  0x00000001 , 0x00004564 
+ 00028159  0x000078c5 call  0x00006a79 
+ 00028160  0x000078c6 storet  0x00000001 , 0x0000455d 
+ 00028161  0x000078c7 branch  0x00006bc4 
+ 00028162  0x000078ca bpatchx  0x000000cb , 0x00004039 
+ 00028163  0x000078cb call  0x000052d2 
+ 00028164  0x000078cc fetcht  0x00000001 , 0x0000455d 
+ 00028165  0x000078cd call  0x00006a73 
+ 00028166  0x000078ce call  0x00006a1a 
+ 00028167  0x000078cf store  0x00000001 , 0x000004fe 
+ 00028168  0x000078d0 fetcht  0x00000001 , 0x0000455d 
+ 00028169  0x000078d1 call  0x00006a73 
+ 00028170  0x000078d2 storet  0x00000001 , 0x000004fb 
+ 00028171  0x000078d3 branch  0x00006ba9 
+ 00028172  0x000078d6 bpatchx  0x000000cc , 0x00004039 
+ 00028173  0x000078d7 call  0x000052d2 
+ 00028174  0x000078d8 fetcht  0x00000001 , 0x0000455d 
+ 00028175  0x000078d9 call  0x00006a73 
+ 00028176  0x000078da branch  0x00006bfc 
+ 00028177  0x000078e8 bpatchx  0x000000cd , 0x00004039 
+ 00028178  0x000078e9 fetch  0x00000002 , 0x00000264 
+ 00028179  0x000078ea iforce  0x00000006 
+ 00028180  0x000078ed ifetch  0x00000001 , 0x00000006 
+ 00028181  0x000078ee copy  0x0000003f , 0x00000012 
+ 00028182  0x000078ef store  0x00000001 , 0x0000051b 
+ 00028183  0x000078f0 ifetch  0x00000002 , 0x00000006 
+ 00028184  0x000078f1 store  0x00000002 , 0x0000051c 
+ 00028185  0x000078f2 ifetch  0x00000001 , 0x00000006 
+ 00028186  0x000078f3 lshift8  0x0000003f , 0x0000000b 
+ 00028187  0x000078f4 ifetch  0x00000001 , 0x00000006 
+ 00028188  0x000078f5 iadd  0x0000000b , 0x0000000b 
+ 00028189  0x000078f6 bpatchx  0x000000ce , 0x00004039 
+ 00028190  0x000078f7 copy  0x00000006 , 0x00000002 
+ 00028191  0x000078f8 arg  0x00000004 , 0x00000039 
+ 00028192  0x000078f9 arg  0x0000052a , 0x00000005 
+ 00028193  0x000078fa call  0x00007ec6 
+ 00028194  0x000078fb copy  0x00000002 , 0x00000006 
+ 00028195  0x000078fc deposit  0x00000012 
+ 00028196  0x000078fd beq  0x00000001 , 0x00006fba 
+ 00028197  0x000078fe beq  0x00000002 , 0x00006e2c 
+ 00028198  0x000078ff beq  0x00000003 , 0x00006fba 
+ 00028199  0x00007900 beq  0x00000004 , 0x00006e54 
+ 00028200  0x00007901 beq  0x00000005 , 0x00006fba 
+ 00028201  0x00007902 beq  0x00000006 , 0x00006f02 
+ 00028202  0x00007903 beq  0x00000007 , 0x00006fba 
+ 00028203  0x00007904 branch  0x00006fc1 
+ 00028204  0x00007910 bpatchx  0x000000cf , 0x00004039 
+ 00028205  0x00007911 call  0x00006fd0 
+ 00028206  0x00007912 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00028207  0x00007913 branch  0x00007040 , 0x00000001 
+ 00028208  0x00007914 compare  0x000000ff , 0x00000002 , 0x000000ff 
+ 00028209  0x00007915 branch  0x00006fc4 , 0x00000001 
+ 00028210  0x00007917 ifetch  0x00000002 , 0x00000006 
+ 00028211  0x00007918 store  0x00000002 , 0x00000522 
+ 00028212  0x00007919 increase  0xfffffffe , 0x0000000b 
+ 00028213  0x0000791b increase  0xffffffff , 0x0000000b 
+ 00028214  0x0000791c nbranch  0x00006fbe , 0x00000005 
+ 00028215  0x0000791d arg  0x00000511 , 0x0000000b 
+ 00028216  0x0000791e ifetch  0x00000002 , 0x0000000b 
+ 00028217  0x0000791f rtn  0x00000034 
+ 00028218  0x00007920 call  0x00007082 
+ 00028219  0x00007921 call  0x000052d0 
+ 00028220  0x00007922 force  0x00000003 , 0x0000003f 
+ 00028221  0x00007923 istore  0x00000001 , 0x00000005 
+ 00028222  0x00007924 fetch  0x00000002 , 0x0000051c 
+ 00028223  0x00007925 istore  0x00000002 , 0x00000005 
+ 00028224  0x00007926 lshift2  0x00000007 , 0x0000003f 
+ 00028225  0x00007927 add  0x0000003f , 0x00000005 , 0x0000003f 
+ 00028226  0x00007928 add  0x0000003f , 0x00000005 , 0x00000013 
+ 00028227  0x00007929 byteswap  0x0000003f , 0x0000003f 
+ 00028228  0x0000792a istore  0x00000002 , 0x00000005 
+ 00028229  0x0000792b deposit  0x00000007 
+ 00028230  0x0000792c byteswap  0x0000003f , 0x0000003f 
+ 00028231  0x0000792d istore  0x00000002 , 0x00000005 
+ 00028232  0x0000792e istore  0x00000002 , 0x00000005 
+ 00028233  0x0000792f arg  0x0000052a , 0x00000006 
+ 00028234  0x00007930 copy  0x00000007 , 0x00000039 
+ 00028235  0x00007931 branch  0x00006e4f , 0x00000005 
+ 00028236  0x00007933 ifetch  0x00000004 , 0x00000006 
+ 00028237  0x00007934 istore  0x00000004 , 0x00000005 
+ 00028238  0x00007935 loop  0x00006e4c 
+ 00028239  0x00007937 force  0x00000000 , 0x0000003f 
+ 00028240  0x00007938 istore  0x00000001 , 0x00000005 
+ 00028241  0x00007939 deposit  0x00000013 
+ 00028242  0x0000793a store  0x00000002 , 0x00000275 
+ 00028243  0x0000793c rtn 
+ 00028244  0x00007948 bpatchx  0x000000d0 , 0x0000403a 
+ 00028245  0x00007949 ifetch  0x00000004 , 0x00000006 
+ 00028246  0x0000794a store  0x00000004 , 0x00000524 
+ 00028247  0x0000794b increase  0xfffffffc , 0x0000000b 
+ 00028248  0x0000794c call  0x00006f2e 
+ 00028249  0x0000794d store  0x00000002 , 0x00000520 
+ 00028250  0x0000794e increase  0xfffffffe , 0x0000000b 
+ 00028251  0x0000794f call  0x00007028 
+ 00028252  0x00007950 branch  0x00006fc4 , 0x00000005 
+ 00028253  0x00007951 compare  0x00000005 , 0x00000011 , 0x000000ff 
+ 00028254  0x00007953 branch  0x00006e62 , 0x00000001 
+ 00028255  0x00007955 arg  0x0000052a , 0x00000005 
+ 00028256  0x00007956 force  0x00000000 , 0x00000007 
+ 00028257  0x00007957 branch  0x00006e71 
+ 00028258  0x00007959 ifetch  0x00000001 , 0x00000006 
+ 00028259  0x0000795a bne  0x0000000a , 0x00006fc4 
+ 00028260  0x0000795b ifetch  0x00000002 , 0x00000006 
+ 00028261  0x0000795c nbranch  0x00006e6f , 0x00000034 
+ 00028262  0x0000795d ifetch  0x00000001 , 0x00000006 
+ 00028263  0x0000795e bne  0x000000ff , 0x00006e6d 
+ 00028264  0x0000795f ifetch  0x00000001 , 0x00000006 
+ 00028265  0x00007960 bne  0x000000ff , 0x00006e6b 
+ 00028266  0x00007961 branch  0x00006eb8 
+ 00028267  0x00007963 increase  0xfffffffb , 0x00000006 
+ 00028268  0x00007964 branch  0x00006e5f 
+ 00028269  0x00007966 increase  0xfffffffc , 0x00000006 
+ 00028270  0x00007967 branch  0x00006e5f 
+ 00028271  0x00007969 increase  0xfffffffd , 0x00000006 
+ 00028272  0x0000796a branch  0x00006e5f 
+ 00028273  0x0000796c ifetch  0x00000001 , 0x00000006 
+ 00028274  0x0000796d beq  0x00000009 , 0x00006e86 
+ 00028275  0x0000796e beq  0x0000000a , 0x00006e74 
+ 00028276  0x00007970 ifetch  0x00000002 , 0x00000006 
+ 00028277  0x00007971 istore  0x00000002 , 0x00000005 
+ 00028278  0x00007972 increase  0x00000001 , 0x00000007 
+ 00028279  0x00007973 byteswap  0x0000003f , 0x00000012 
+ 00028280  0x00007974 ifetch  0x00000002 , 0x00000006 
+ 00028281  0x00007975 byteswap  0x0000003f , 0x0000003f 
+ 00028282  0x00007977 increase  0x00000001 , 0x00000012 
+ 00028283  0x00007978 isub  0x00000012 , 0x0000003e 
+ 00028284  0x00007979 nbranch  0x00006e83 , 0x00000002 
+ 00028285  0x0000797a copy  0x0000003f , 0x00000013 
+ 00028286  0x0000797b byteswap  0x00000012 , 0x0000003f 
+ 00028287  0x0000797c istore  0x00000002 , 0x00000005 
+ 00028288  0x0000797d increase  0x00000001 , 0x00000007 
+ 00028289  0x0000797e copy  0x00000013 , 0x0000003f 
+ 00028290  0x0000797f branch  0x00006e7a 
+ 00028291  0x00007981 increase  0xfffffffb , 0x0000000b 
+ 00028292  0x00007982 increase  0xfffffffb , 0x00000011 
+ 00028293  0x00007983 branch  0x00006e8b 
+ 00028294  0x00007985 ifetch  0x00000002 , 0x00000006 
+ 00028295  0x00007986 istore  0x00000002 , 0x00000005 
+ 00028296  0x00007987 increase  0x00000001 , 0x00000007 
+ 00028297  0x00007988 increase  0xfffffffd , 0x0000000b 
+ 00028298  0x00007989 increase  0xfffffffd , 0x00000011 
+ 00028299  0x0000798b nbranch  0x00006fc4 , 0x00000002 
+ 00028300  0x0000798c nbranch  0x00006e71 , 0x00000005 
+ 00028301  0x0000798d increase  0xffffffff , 0x0000000b 
+ 00028302  0x0000798e nbranch  0x00006fc4 , 0x00000005 
+ 00028303  0x00007990 call  0x000052d0 
+ 00028304  0x00007991 increase  0x0000000a , 0x00000005 
+ 00028305  0x00007992 arg  0x0000052a , 0x00000011 
+ 00028306  0x00007994 copy  0x00000007 , 0x0000003f 
+ 00028307  0x00007995 branch  0x00006ea5 , 0x00000034 
+ 00028308  0x00007996 ifetch  0x00000002 , 0x00000011 
+ 00028309  0x00007997 branch  0x00006ea5 , 0x00000034 
+ 00028310  0x00007998 iforce  0x00000012 
+ 00028311  0x00007999 fetch  0x00000004 , 0x00000524 
+ 00028312  0x0000799a iforce  0x00000002 
+ 00028313  0x0000799b call  0x000070e7 
+ 00028314  0x0000799c copy  0x00000006 , 0x0000003f 
+ 00028315  0x0000799d branch  0x00006ea2 , 0x00000034 
+ 00028316  0x0000799e increase  0xfffffffd , 0x00000006 
+ 00028317  0x0000799f ifetch  0x00000003 , 0x00000006 
+ 00028318  0x000079a0 istore  0x00000003 , 0x00000005 
+ 00028319  0x000079a1 call  0x0000705b 
+ 00028320  0x000079a2 iforce  0x00000039 
+ 00028321  0x000079a3 call  0x00007f01 
+ 00028322  0x000079a5 increase  0x00000002 , 0x00000011 
+ 00028323  0x000079a6 increase  0xffffffff , 0x00000007 
+ 00028324  0x000079a7 branch  0x00006e92 
+ 00028325  0x000079aa arg  0x00000005 , 0x00000011 
+ 00028326  0x000079ab call  0x00006f84 
+ 00028327  0x000079ac fetch  0x00000002 , 0x00000275 
+ 00028328  0x000079ad beq  0x0000000b , 0x00007043 
+ 00028329  0x000079ae branch  0x00006f9a 
+ 00028330  0x000079b2 ifetch  0x00000001 , 0x00000006 
+ 00028331  0x000079b3 beq  0x00000000 , 0x00006eae 
+ 00028332  0x000079b4 beq  0x00000001 , 0x00006eb0 
+ 00028333  0x000079b5 beq  0x00000002 , 0x00006eb3 
+ 00028334  0x000079b7 increase  0xffffffff , 0x0000000b 
+ 00028335  0x000079b8 branch  0x00006eb6 
+ 00028336  0x000079ba ifetch  0x00000001 , 0x00000006 
+ 00028337  0x000079bb increase  0xfffffffe , 0x0000000b 
+ 00028338  0x000079bc branch  0x00006eb6 
+ 00028339  0x000079be ifetch  0x00000002 , 0x00000006 
+ 00028340  0x000079bf byteswap  0x0000003f , 0x0000003f 
+ 00028341  0x000079c0 increase  0xfffffffd , 0x0000000b 
+ 00028342  0x000079c2 store  0x00000002 , 0x00000519 
+ 00028343  0x000079c3 rtn 
+ 00028344  0x000079c6 increase  0xfffffffb , 0x0000000b 
+ 00028345  0x000079c7 call  0x00006eaa 
+ 00028346  0x000079c8 nbranch  0x00006fbe , 0x00000005 
+ 00028347  0x000079c9 fetcht  0x00000004 , 0x00000524 
+ 00028348  0x000079ca call  0x000070b1 
+ 00028349  0x000079cb nbranch  0x00006fbb , 0x00000005 
+ 00028350  0x000079cc copy  0x00000006 , 0x00000011 
+ 00028351  0x000079cd call  0x000052d0 
+ 00028352  0x000079ce copy  0x00000011 , 0x00000006 
+ 00028353  0x000079cf increase  0x00000003 , 0x00000005 
+ 00028354  0x000079d0 copy  0x00000006 , 0x0000000b 
+ 00028355  0x000079d1 call  0x00007062 
+ 00028356  0x000079d2 copy  0x0000003f , 0x00000011 
+ 00028357  0x000079d4 fetch  0x00000002 , 0x00000519 
+ 00028358  0x000079d5 copy  0x0000003f , 0x00000012 
+ 00028359  0x000079d6 copy  0x00000011 , 0x0000003f 
+ 00028360  0x000079d7 isub  0x00000012 , 0x00000012 
+ 00028361  0x000079d8 fetch  0x00000002 , 0x00000520 
+ 00028362  0x000079d9 isub  0x00000012 , 0x0000003e 
+ 00028363  0x000079da nbranch  0x00006ee7 , 0x00000002 
+ 00028364  0x000079dc disable  0x00000028 
+ 00028365  0x000079dd fetch  0x00000002 , 0x00000519 
+ 00028366  0x000079de branch  0x00006eda , 0x00000034 
+ 00028367  0x000079df iadd  0x0000000b , 0x00000006 
+ 00028368  0x000079e0 increase  0x00000003 , 0x00000012 
+ 00028369  0x000079e1 copy  0x00000012 , 0x00000039 
+ 00028370  0x000079e2 copy  0x00000039 , 0x0000003f 
+ 00028371  0x000079e3 increase  0x00000003 , 0x0000003f 
+ 00028372  0x000079e4 byteswap  0x0000003f , 0x0000003f 
+ 00028373  0x000079e5 istore  0x00000002 , 0x00000005 
+ 00028374  0x000079e6 copy  0x00000039 , 0x0000003f 
+ 00028375  0x000079e7 byteswap  0x0000003f , 0x0000003f 
+ 00028376  0x000079e8 istore  0x00000002 , 0x00000005 
+ 00028377  0x000079e9 branch  0x00006ef5 
+ 00028378  0x000079eb add  0x00000011 , 0x00000006 , 0x00000039 
+ 00028379  0x000079ec branch  0x00006ede , 0x00000028 
+ 00028380  0x000079ed byteswap  0x00000039 , 0x0000003f 
+ 00028381  0x000079ee branch  0x00006ee1 
+ 00028382  0x000079f0 copy  0x00000039 , 0x0000003f 
+ 00028383  0x000079f1 increase  0x00000002 , 0x0000003f 
+ 00028384  0x000079f2 byteswap  0x0000003f , 0x0000003f 
+ 00028385  0x000079f4 istore  0x00000002 , 0x00000005 
+ 00028386  0x000079f5 increase  0xfffffffd , 0x00000039 
+ 00028387  0x000079f6 byteswap  0x00000039 , 0x0000003f 
+ 00028388  0x000079f7 istore  0x00000002 , 0x00000005 
+ 00028389  0x000079f8 copy  0x0000000b , 0x00000006 
+ 00028390  0x000079f9 branch  0x00006ef5 
+ 00028391  0x000079fb enable  0x00000028 
+ 00028392  0x000079fd fetch  0x00000002 , 0x00000520 
+ 00028393  0x000079fe copy  0x0000003f , 0x00000011 
+ 00028394  0x000079ff copy  0x00000011 , 0x00000039 
+ 00028395  0x00007a00 fetch  0x00000002 , 0x00000519 
+ 00028396  0x00007a01 branch  0x00006eda , 0x00000034 
+ 00028397  0x00007a02 iadd  0x0000000b , 0x00000006 
+ 00028398  0x00007a03 copy  0x00000011 , 0x0000003f 
+ 00028399  0x00007a04 increase  0x00000005 , 0x0000003f 
+ 00028400  0x00007a05 byteswap  0x0000003f , 0x0000003f 
+ 00028401  0x00007a06 istore  0x00000002 , 0x00000005 
+ 00028402  0x00007a07 copy  0x00000011 , 0x0000003f 
+ 00028403  0x00007a08 byteswap  0x0000003f , 0x0000003f 
+ 00028404  0x00007a09 istore  0x00000002 , 0x00000005 
+ 00028405  0x00007a0b call  0x00007f01 
+ 00028406  0x00007a0c nbranch  0x00006efe , 0x00000028 
+ 00028407  0x00007a0d force  0x00000002 , 0x0000003f 
+ 00028408  0x00007a0e istore  0x00000001 , 0x00000005 
+ 00028409  0x00007a0f copy  0x00000006 , 0x0000003f 
+ 00028410  0x00007a10 isub  0x0000000b , 0x0000003f 
+ 00028411  0x00007a11 byteswap  0x0000003f , 0x0000003f 
+ 00028412  0x00007a12 istore  0x00000002 , 0x00000005 
+ 00028413  0x00007a13 branch  0x00006f00 
+ 00028414  0x00007a15 force  0x00000000 , 0x0000003f 
+ 00028415  0x00007a16 istore  0x00000001 , 0x00000005 
+ 00028416  0x00007a18 arg  0x00000005 , 0x00000011 
+ 00028417  0x00007a19 branch  0x00006fb0 
+ 00028418  0x00007a25 bpatchx  0x000000d1 , 0x0000403a 
+ 00028419  0x00007a26 call  0x00006fd0 
+ 00028420  0x00007a27 compare  0x000000ff , 0x00000002 , 0x000000ff 
+ 00028421  0x00007a28 branch  0x00006fc4 , 0x00000001 
+ 00028422  0x00007a29 call  0x00006f2e 
+ 00028423  0x00007a2a store  0x00000002 , 0x00000520 
+ 00028424  0x00007a2b increase  0xfffffffe , 0x0000000b 
+ 00028425  0x00007a2c call  0x00007028 
+ 00028426  0x00007a2d arg  0x0000052a , 0x00000005 
+ 00028427  0x00007a2e force  0x00000000 , 0x00000007 
+ 00028428  0x00007a30 ifetch  0x00000001 , 0x00000006 
+ 00028429  0x00007a31 beq  0x0000000a , 0x00006f36 
+ 00028430  0x00007a32 ifetch  0x00000002 , 0x00000006 
+ 00028431  0x00007a33 istore  0x00000002 , 0x00000005 
+ 00028432  0x00007a34 increase  0x00000001 , 0x00000007 
+ 00028433  0x00007a35 increase  0xfffffffd , 0x0000000b 
+ 00028434  0x00007a36 increase  0xfffffffd , 0x00000011 
+ 00028435  0x00007a37 nbranch  0x00006fc4 , 0x00000002 
+ 00028436  0x00007a38 nbranch  0x00006f0c , 0x00000005 
+ 00028437  0x00007a39 increase  0xffffffff , 0x0000000b 
+ 00028438  0x00007a3a nbranch  0x00006fc4 , 0x00000005 
+ 00028439  0x00007a3b call  0x000052d0 
+ 00028440  0x00007a3c increase  0x0000000d , 0x00000005 
+ 00028441  0x00007a3d fetch  0x00000002 , 0x00000511 
+ 00028442  0x00007a3e iforce  0x00000013 
+ 00028443  0x00007a3f arg  0x0000052a , 0x00000011 
+ 00028444  0x00007a41 ifetch  0x00000002 , 0x00000011 
+ 00028445  0x00007a42 branch  0x00006f29 , 0x00000034 
+ 00028446  0x00007a43 iforce  0x00000012 
+ 00028447  0x00007a44 call  0x000070c6 
+ 00028448  0x00007a45 branch  0x00006f27 , 0x00000034 
+ 00028449  0x00007a46 increase  0xfffffffd , 0x00000006 
+ 00028450  0x00007a47 ifetch  0x00000003 , 0x00000006 
+ 00028451  0x00007a48 istore  0x00000003 , 0x00000005 
+ 00028452  0x00007a49 call  0x0000705b 
+ 00028453  0x00007a4a iforce  0x00000039 
+ 00028454  0x00007a4b call  0x00007f01 
+ 00028455  0x00007a4d increase  0x00000002 , 0x00000011 
+ 00028456  0x00007a4e branch  0x00006f1c 
+ 00028457  0x00007a51 call  0x00006f83 
+ 00028458  0x00007a52 fetch  0x00000002 , 0x00000275 
+ 00028459  0x00007a53 beq  0x0000000e , 0x00007046 
+ 00028460  0x00007a54 call  0x00006f9a 
+ 00028461  0x00007a55 branch  0x00006f9a 
+ 00028462  0x00007a59 ifetch  0x00000002 , 0x00000006 
+ 00028463  0x00007a5a byteswap  0x0000003f , 0x0000003f 
+ 00028464  0x00007a5b increase  0xfffffffd , 0x0000003f 
+ 00028465  0x00007a5c arg  0x000000c8 , 0x00000002 
+ 00028466  0x00007a5d isub  0x00000002 , 0x0000003e 
+ 00028467  0x00007a5e nrtn  0x00000002 
+ 00028468  0x00007a5f setarg  0x000000c8 
+ 00028469  0x00007a60 rtn 
+ 00028470  0x00007a64 increase  0x00000004 , 0x00000006 
+ 00028471  0x00007a65 increase  0xfffffffb , 0x0000000b 
+ 00028472  0x00007a66 increase  0xfffffffb , 0x00000011 
+ 00028473  0x00007a67 nbranch  0x00006fc4 , 0x00000005 
+ 00028474  0x00007a68 call  0x00006eaa 
+ 00028475  0x00007a69 nbranch  0x00006fbe , 0x00000005 
+ 00028476  0x00007a6a arg  0x00000511 , 0x0000000b 
+ 00028477  0x00007a6b call  0x00007082 
+ 00028478  0x00007a6c deposit  0x00000007 
+ 00028479  0x00007a6d branch  0x00007046 , 0x00000034 
+ 00028480  0x00007a6e store  0x00000001 , 0x0000054e 
+ 00028481  0x00007a70 copy  0x00000012 , 0x0000003f 
+ 00028482  0x00007a71 store  0x00000002 , 0x0000054c 
+ 00028483  0x00007a72 arg  0x00000000 , 0x00000007 
+ 00028484  0x00007a73 arg  0x00000000 , 0x00000011 
+ 00028485  0x00007a74 call  0x000052d0 
+ 00028486  0x00007a75 increase  0x0000000a , 0x00000005 
+ 00028487  0x00007a77 call  0x00006f6c 
+ 00028488  0x00007a78 nbranch  0x00002a8c , 0x00000028 
+ 00028489  0x00007a79 copy  0x00000006 , 0x0000000b 
+ 00028490  0x00007a7a copy  0x0000003f , 0x00000013 
+ 00028491  0x00007a7b iadd  0x00000011 , 0x00000011 
+ 00028492  0x00007a7e fetch  0x00000002 , 0x00000519 
+ 00028493  0x00007a7f copy  0x0000003f , 0x00000012 
+ 00028494  0x00007a80 branch  0x00006f75 , 0x00000034 
+ 00028495  0x00007a82 copy  0x00000011 , 0x0000003f 
+ 00028496  0x00007a83 isub  0x00000012 , 0x00000012 
+ 00028497  0x00007a84 branch  0x00006f67 , 0x00000005 
+ 00028498  0x00007a85 nbranch  0x00006f67 , 0x00000002 
+ 00028499  0x00007a86 fetch  0x00000002 , 0x00000520 
+ 00028500  0x00007a87 isub  0x00000012 , 0x0000003e 
+ 00028501  0x00007a88 branch  0x00006f5e , 0x00000005 
+ 00028502  0x00007a89 nbranch  0x00006f5e , 0x00000002 
+ 00028503  0x00007a8d copy  0x00000012 , 0x00000039 
+ 00028504  0x00007a8e call  0x00006f61 
+ 00028505  0x00007a8f fetch  0x00000001 , 0x0000054e 
+ 00028506  0x00007a90 increase  0x00000001 , 0x00000007 
+ 00028507  0x00007a91 isub  0x00000007 , 0x0000003e 
+ 00028508  0x00007a92 branch  0x00006f83 , 0x00000005 
+ 00028509  0x00007a93 branch  0x00006fa0 
+ 00028510  0x00007a96 copy  0x0000003f , 0x00000039 
+ 00028511  0x00007a97 call  0x00006f61 
+ 00028512  0x00007a98 branch  0x00006fa0 
+ 00028513  0x00007a9b increase  0xfffffffd , 0x00000005 
+ 00028514  0x00007a9c copy  0x00000039 , 0x00000002 
+ 00028515  0x00007a9d copy  0x00000013 , 0x0000003f 
+ 00028516  0x00007a9e isub  0x00000012 , 0x0000003f 
+ 00028517  0x00007a9f iadd  0x0000000b , 0x00000006 
+ 00028518  0x00007aa0 branch  0x00007f01 
+ 00028519  0x00007aa3 fetch  0x00000001 , 0x0000054e 
+ 00028520  0x00007aa4 increase  0x00000001 , 0x00000007 
+ 00028521  0x00007aa5 isub  0x00000007 , 0x0000003e 
+ 00028522  0x00007aa6 rtn  0x00000005 
+ 00028523  0x00007aa7 branch  0x00006f47 
+ 00028524  0x00007aaa call  0x00007fe9 
+ 00028525  0x00007aab arg  0x0000052a , 0x00000006 
+ 00028526  0x00007aac lshift2  0x00000007 , 0x0000003f 
+ 00028527  0x00007aad iadd  0x00000006 , 0x00000006 
+ 00028528  0x00007aae ifetcht  0x00000004 , 0x00000006 
+ 00028529  0x00007aaf call  0x000070b1 
+ 00028530  0x00007ab0 nrtn  0x00000005 
+ 00028531  0x00007ab1 call  0x0000705b 
+ 00028532  0x00007ab2 branch  0x00007fe7 
+ 00028533  0x00007ab5 fetch  0x00000002 , 0x00000520 
+ 00028534  0x00007ab6 isub  0x00000011 , 0x0000003e 
+ 00028535  0x00007ab7 nbranch  0x00006f8f , 0x00000002 
+ 00028536  0x00007ab8 copy  0x00000011 , 0x00000039 
+ 00028537  0x00007ab9 copy  0x00000039 , 0x00000002 
+ 00028538  0x00007aba copy  0x0000000b , 0x00000006 
+ 00028539  0x00007abb call  0x00007f01 
+ 00028540  0x00007abc fetch  0x00000002 , 0x0000054c 
+ 00028541  0x00007abd isub  0x00000011 , 0x0000003e 
+ 00028542  0x00007abe branch  0x00006f81 , 0x00000005 
+ 00028543  0x00007ac0 call  0x00006fa0 
+ 00028544  0x00007ac1 branch  0x00006f94 
+ 00028545  0x00007ac4 call  0x00006f83 
+ 00028546  0x00007ac5 branch  0x00006f94 
+ 00028547  0x00007ac8 arg  0x00000007 , 0x00000011 
+ 00028548  0x00007aca force  0x00000000 , 0x0000003f 
+ 00028549  0x00007acb istore  0x00000001 , 0x00000005 
+ 00028550  0x00007acc call  0x00006fb0 
+ 00028551  0x00007acd fetcht  0x00000002 , 0x00000275 
+ 00028552  0x00007ace increase  0xfffffffb , 0x00000002 
+ 00028553  0x00007acf byteswap  0x00000002 , 0x0000003f 
+ 00028554  0x00007ad0 istore  0x00000002 , 0x00000005 
+ 00028555  0x00007ad1 increase  0xfffffffd , 0x00000002 
+ 00028556  0x00007ad2 byteswap  0x00000002 , 0x0000003f 
+ 00028557  0x00007ad3 istore  0x00000002 , 0x00000005 
+ 00028558  0x00007ad4 rtn 
+ 00028559  0x00007ad7 copy  0x0000003f , 0x00000039 
+ 00028560  0x00007ad8 copy  0x00000039 , 0x00000002 
+ 00028561  0x00007ad9 copy  0x0000000b , 0x00000006 
+ 00028562  0x00007ada call  0x00007f01 
+ 00028563  0x00007adb call  0x00006fa0 
+ 00028564  0x00007add setarg  0x00000036 
+ 00028565  0x00007ade istore  0x00000001 , 0x00000005 
+ 00028566  0x00007adf fetch  0x00000002 , 0x0000054c 
+ 00028567  0x00007ae0 byteswap  0x0000003f , 0x0000003f 
+ 00028568  0x00007ae1 istore  0x00000002 , 0x00000005 
+ 00028569  0x00007ae2 rtn 
+ 00028570  0x00007ae5 setarg  0x00000036 
+ 00028571  0x00007ae6 istore  0x00000001 , 0x00000005 
+ 00028572  0x00007ae7 increase  0xfffffffd , 0x00000002 
+ 00028573  0x00007ae8 byteswap  0x00000002 , 0x0000003f 
+ 00028574  0x00007ae9 istore  0x00000002 , 0x00000005 
+ 00028575  0x00007aea rtn 
+ 00028576  0x00007aed arg  0x00000007 , 0x00000011 
+ 00028577  0x00007aee setarg  0x00000002 
+ 00028578  0x00007aef istore  0x00000001 , 0x00000005 
+ 00028579  0x00007af0 fetch  0x00000002 , 0x00000519 
+ 00028580  0x00007af1 iadd  0x00000002 , 0x00000002 
+ 00028581  0x00007af2 byteswap  0x00000002 , 0x0000003f 
+ 00028582  0x00007af3 istore  0x00000002 , 0x00000005 
+ 00028583  0x00007af4 call  0x00006fb0 
+ 00028584  0x00007af5 fetcht  0x00000002 , 0x00000275 
+ 00028585  0x00007af6 increase  0xfffffffb , 0x00000002 
+ 00028586  0x00007af7 byteswap  0x00000002 , 0x0000003f 
+ 00028587  0x00007af8 istore  0x00000002 , 0x00000005 
+ 00028588  0x00007af9 increase  0xfffffffb , 0x00000002 
+ 00028589  0x00007afa byteswap  0x00000002 , 0x0000003f 
+ 00028590  0x00007afb istore  0x00000002 , 0x00000005 
+ 00028591  0x00007afc rtn 
+ 00028592  0x00007aff fetch  0x00000002 , 0x00000273 
+ 00028593  0x00007b00 isub  0x00000005 , 0x0000003f 
+ 00028594  0x00007b01 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00028595  0x00007b02 store  0x00000002 , 0x00000275 
+ 00028596  0x00007b03 call  0x000052d0 
+ 00028597  0x00007b04 copy  0x00000011 , 0x0000003f 
+ 00028598  0x00007b05 istore  0x00000001 , 0x00000005 
+ 00028599  0x00007b06 fetch  0x00000002 , 0x0000051c 
+ 00028600  0x00007b07 istore  0x00000002 , 0x00000005 
+ 00028601  0x00007b08 rtn 
+ 00028602  0x00007b19 rtn 
+ 00028603  0x00007b3b setarg  0x00000200 
+ 00028604  0x00007b3c store  0x00000002 , 0x0000054a 
+ 00028605  0x00007b3d branch  0x00006fc6 
+ 00028606  0x00007b3f setarg  0x00000400 
+ 00028607  0x00007b40 store  0x00000002 , 0x0000054a 
+ 00028608  0x00007b41 branch  0x00006fc6 
+ 00028609  0x00007b43 setarg  0x00000600 
+ 00028610  0x00007b44 store  0x00000002 , 0x0000054a 
+ 00028611  0x00007b45 branch  0x00006fc6 
+ 00028612  0x00007b47 setarg  0x00000300 
+ 00028613  0x00007b48 store  0x00000002 , 0x0000054a 
+ 00028614  0x00007b4a call  0x000052d0 
+ 00028615  0x00007b4b istore  0x00000001 , 0x00000005 
+ 00028616  0x00007b4c fetch  0x00000002 , 0x0000051c 
+ 00028617  0x00007b4d istore  0x00000002 , 0x00000005 
+ 00028618  0x00007b4e setarg  0x00000200 
+ 00028619  0x00007b4f istore  0x00000002 , 0x00000005 
+ 00028620  0x00007b50 fetch  0x00000002 , 0x0000054a 
+ 00028621  0x00007b51 istore  0x00000002 , 0x00000005 
+ 00028622  0x00007b52 jam  0x00000007 , 0x00000275 
+ 00028623  0x00007b53 rtn 
+ 00028624  0x00007b59 arg  0x00000000 , 0x00000012 
+ 00028625  0x00007b5a force  0x00000000 , 0x00000002 
+ 00028626  0x00007b5b arg  0x00000511 , 0x00000005 
+ 00028627  0x00007b5c call  0x00007028 
+ 00028628  0x00007b5d branch  0x00007026 , 0x00000005 
+ 00028629  0x00007b5f increase  0x00000001 , 0x00000012 
+ 00028630  0x00007b60 ifetch  0x00000001 , 0x00000006 
+ 00028631  0x00007b61 increase  0xffffffff , 0x00000011 
+ 00028632  0x00007b62 increase  0xffffffff , 0x0000000b 
+ 00028633  0x00007b63 compare  0x00000018 , 0x0000003f , 0x000000f8 
+ 00028634  0x00007b64 nbranch  0x00007026 , 0x00000001 
+ 00028635  0x00007b65 compare  0x00000004 , 0x0000003f , 0x00000007 
+ 00028636  0x00007b66 nbranch  0x00006ff3 , 0x00000001 
+ 00028637  0x00007b67 force  0x00000001 , 0x00000002 
+ 00028638  0x00007b69 ifetch  0x00000001 , 0x00000006 
+ 00028639  0x00007b6a increase  0xffffffff , 0x00000011 
+ 00028640  0x00007b6b increase  0xffffffff , 0x0000000b 
+ 00028641  0x00007b6c bne  0x00000000 , 0x00006fe7 
+ 00028642  0x00007b6d ifetch  0x00000001 , 0x00000006 
+ 00028643  0x00007b6e increase  0xffffffff , 0x00000011 
+ 00028644  0x00007b6f increase  0xffffffff , 0x0000000b 
+ 00028645  0x00007b70 beq  0x00000000 , 0x00006ff8 
+ 00028646  0x00007b71 branch  0x00006fea 
+ 00028647  0x00007b73 increase  0x00000001 , 0x00000006 
+ 00028648  0x00007b74 increase  0xffffffff , 0x00000011 
+ 00028649  0x00007b75 increase  0xffffffff , 0x0000000b 
+ 00028650  0x00007b77 increase  0x00000002 , 0x00000006 
+ 00028651  0x00007b78 increase  0xfffffffe , 0x00000011 
+ 00028652  0x00007b79 increase  0xfffffffe , 0x0000000b 
+ 00028653  0x00007b7a compare  0x00000000 , 0x00000002 , 0x000000ff 
+ 00028654  0x00007b7b branch  0x00007020 , 0x00000001 
+ 00028655  0x00007b7c increase  0x0000000c , 0x00000006 
+ 00028656  0x00007b7d increase  0xfffffff4 , 0x00000011 
+ 00028657  0x00007b7e increase  0xfffffff4 , 0x0000000b 
+ 00028658  0x00007b7f branch  0x00007020 
+ 00028659  0x00007b81 compare  0x00000002 , 0x0000003f , 0x00000007 
+ 00028660  0x00007b82 nbranch  0x00006ff6 , 0x00000001 
+ 00028661  0x00007b83 branch  0x00006fde 
+ 00028662  0x00007b85 compare  0x00000001 , 0x0000003f , 0x00000007 
+ 00028663  0x00007b86 nbranch  0x00007026 , 0x00000001 
+ 00028664  0x00007b88 increase  0xfffffffe , 0x00000011 
+ 00028665  0x00007b89 increase  0xfffffffe , 0x0000000b 
+ 00028666  0x00007b8a ifetch  0x00000002 , 0x00000006 
+ 00028667  0x00007b8b sub  0x00000012 , 0x00000004 , 0x0000003e 
+ 00028668  0x00007b8c branch  0x00006ffe , 0x00000005 
+ 00028669  0x00007b8d istore  0x00000002 , 0x00000005 
+ 00028670  0x00007b8f compare  0x00000000 , 0x00000002 , 0x000000ff 
+ 00028671  0x00007b90 branch  0x00007020 , 0x00000001 
+ 00028672  0x00007b91 copy  0x00000006 , 0x00000002 
+ 00028673  0x00007b92 ifetch  0x00000001 , 0x00000006 
+ 00028674  0x00007b93 bne  0x00000000 , 0x00007019 
+ 00028675  0x00007b94 ifetch  0x00000001 , 0x00000006 
+ 00028676  0x00007b95 bne  0x00000000 , 0x00007019 
+ 00028677  0x00007b96 ifetch  0x00000001 , 0x00000006 
+ 00028678  0x00007b97 bne  0x00000010 , 0x00007019 
+ 00028679  0x00007b98 ifetch  0x00000001 , 0x00000006 
+ 00028680  0x00007b99 bne  0x00000000 , 0x00007019 
+ 00028681  0x00007b9a ifetch  0x00000001 , 0x00000006 
+ 00028682  0x00007b9b bne  0x00000080 , 0x00007019 
+ 00028683  0x00007b9c ifetch  0x00000001 , 0x00000006 
+ 00028684  0x00007b9d bne  0x00000000 , 0x00007019 
+ 00028685  0x00007b9e ifetch  0x00000001 , 0x00000006 
+ 00028686  0x00007b9f bne  0x00000000 , 0x00007019 
+ 00028687  0x00007ba0 ifetch  0x00000001 , 0x00000006 
+ 00028688  0x00007ba1 bne  0x00000080 , 0x00007019 
+ 00028689  0x00007ba2 ifetch  0x00000001 , 0x00000006 
+ 00028690  0x00007ba3 bne  0x0000005f , 0x00007019 
+ 00028691  0x00007ba4 ifetch  0x00000001 , 0x00000006 
+ 00028692  0x00007ba5 bne  0x0000009b , 0x00007019 
+ 00028693  0x00007ba6 ifetch  0x00000001 , 0x00000006 
+ 00028694  0x00007ba7 bne  0x00000034 , 0x00007019 
+ 00028695  0x00007ba8 ifetch  0x00000001 , 0x00000006 
+ 00028696  0x00007ba9 beq  0x000000fb , 0x0000701e 
+ 00028697  0x00007bab copy  0x00000002 , 0x00000006 
+ 00028698  0x00007bad increase  0x0000000c , 0x00000006 
+ 00028699  0x00007bae force  0x00000000 , 0x00000007 
+ 00028700  0x00007baf force  0x00000000 , 0x00000002 
+ 00028701  0x00007bb0 branch  0x0000701e 
+ 00028702  0x00007bb3 increase  0xfffffff4 , 0x0000000b 
+ 00028703  0x00007bb4 increase  0xfffffff4 , 0x00000011 
+ 00028704  0x00007bb6 force  0x00000000 , 0x00000002 
+ 00028705  0x00007bb7 compare  0x00000000 , 0x00000011 , 0x000000ff 
+ 00028706  0x00007bb8 nbranch  0x00006fd5 , 0x00000001 
+ 00028707  0x00007bb9 force  0x00000000 , 0x0000003f 
+ 00028708  0x00007bba istore  0x00000002 , 0x00000005 
+ 00028709  0x00007bbb rtn 
+ 00028710  0x00007bbd arg  0x000000ff , 0x00000002 
+ 00028711  0x00007bbe rtn 
+ 00028712  0x00007bc9 bpatchx  0x000000d4 , 0x0000403a 
+ 00028713  0x00007bca ifetch  0x00000001 , 0x00000006 
+ 00028714  0x00007bcb increase  0xffffffff , 0x0000000b 
+ 00028715  0x00007bcc compare  0x00000030 , 0x0000003f , 0x000000f8 
+ 00028716  0x00007bcd nbranch  0x0000703e , 0x00000001 
+ 00028717  0x00007bce compare  0x00000007 , 0x0000003f , 0x00000007 
+ 00028718  0x00007bcf branch  0x00007037 , 0x00000001 
+ 00028719  0x00007bd0 compare  0x00000006 , 0x0000003f , 0x00000007 
+ 00028720  0x00007bd1 branch  0x00007039 , 0x00000001 
+ 00028721  0x00007bd2 compare  0x00000005 , 0x0000003f , 0x00000007 
+ 00028722  0x00007bd3 nbranch  0x0000703e , 0x00000001 
+ 00028723  0x00007bd5 ifetch  0x00000001 , 0x00000006 
+ 00028724  0x00007bd6 copy  0x0000003f , 0x00000011 
+ 00028725  0x00007bd7 increase  0xffffffff , 0x0000000b 
+ 00028726  0x00007bd8 branch  0x0000703c 
+ 00028727  0x00007bda increase  0x00000002 , 0x00000006 
+ 00028728  0x00007bdb increase  0xfffffffe , 0x0000000b 
+ 00028729  0x00007bdd ifetch  0x00000002 , 0x00000006 
+ 00028730  0x00007bde byteswap  0x0000003f , 0x00000011 
+ 00028731  0x00007bdf increase  0xfffffffe , 0x0000000b 
+ 00028732  0x00007be1 force  0x00000001 , 0x0000003f 
+ 00028733  0x00007be2 rtn 
+ 00028734  0x00007be4 force  0x00000000 , 0x0000003f 
+ 00028735  0x00007be5 rtn 
+ 00028736  0x00007bf0 setarg  0x00000003 
+ 00028737  0x00007bf1 store  0x00000001 , 0x0000051b 
+ 00028738  0x00007bf2 branch  0x00007048 
+ 00028739  0x00007bf4 setarg  0x00000005 
+ 00028740  0x00007bf5 store  0x00000001 , 0x0000051b 
+ 00028741  0x00007bf6 branch  0x00007048 
+ 00028742  0x00007bf8 setarg  0x00000007 
+ 00028743  0x00007bf9 store  0x00000001 , 0x0000051b 
+ 00028744  0x00007bfb call  0x000052d0 
+ 00028745  0x00007bfe fetch  0x00000001 , 0x0000051b 
+ 00028746  0x00007bff copy  0x0000003f , 0x00000012 
+ 00028747  0x00007c00 istore  0x00000001 , 0x00000005 
+ 00028748  0x00007c01 fetch  0x00000002 , 0x0000051c 
+ 00028749  0x00007c02 istore  0x00000002 , 0x00000005 
+ 00028750  0x00007c03 setarg  0x00000500 
+ 00028751  0x00007c04 istore  0x00000002 , 0x00000005 
+ 00028752  0x00007c05 compare  0x00000005 , 0x00000012 , 0x000000ff 
+ 00028753  0x00007c06 branch  0x00007057 , 0x00000001 
+ 00028754  0x00007c07 compare  0x00000007 , 0x00000012 , 0x000000ff 
+ 00028755  0x00007c08 branch  0x00007057 , 0x00000001 
+ 00028756  0x00007c09 setarg  0x00000000 
+ 00028757  0x00007c0a istore  0x00000005 , 0x00000005 
+ 00028758  0x00007c0b branch  0x00007059 
+ 00028759  0x00007c0e setarg  0x00350200 
+ 00028760  0x00007c0f istore  0x00000005 , 0x00000005 
+ 00028761  0x00007c11 jam  0x0000000a , 0x00000275 
+ 00028762  0x00007c12 rtn 
+ 00028763  0x00007c16 call  0x00007ea2 
+ 00028764  0x00007c17 call  0x00007ea5 
+ 00028765  0x00007c18 call  0x00007062 
+ 00028766  0x00007c19 call  0x00007e9c 
+ 00028767  0x00007c1a call  0x00007e9f 
+ 00028768  0x00007c1b copy  0x00000002 , 0x0000003f 
+ 00028769  0x00007c1c rtn 
+ 00028770  0x00007c20 ifetch  0x00000001 , 0x00000006 
+ 00028771  0x00007c21 and  0x0000003f , 0x00000007 , 0x00000039 
+ 00028772  0x00007c22 rshift3  0x0000003f , 0x0000003f 
+ 00028773  0x00007c23 bne  0x00000000 , 0x0000706c 
+ 00028774  0x00007c25 force  0x00000001 , 0x0000003f 
+ 00028775  0x00007c26 force  0x00000001 , 0x00000002 
+ 00028776  0x00007c27 rtn 
+ 00028777  0x00007c2a call  0x00007e76 
+ 00028778  0x00007c2b add  0x0000003f , 0x00000001 , 0x00000002 
+ 00028779  0x00007c2c rtn 
+ 00028780  0x00007c2e deposit  0x00000039 
+ 00028781  0x00007c2f sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00028782  0x00007c30 branch  0x00007069 , 0x00000002 
+ 00028783  0x00007c31 beq  0x00000005 , 0x00007073 
+ 00028784  0x00007c32 beq  0x00000006 , 0x00007076 
+ 00028785  0x00007c33 beq  0x00000007 , 0x0000707a 
+ 00028786  0x00007c34 rtn 
+ 00028787  0x00007c37 ifetch  0x00000001 , 0x00000006 
+ 00028788  0x00007c38 add  0x0000003f , 0x00000002 , 0x00000002 
+ 00028789  0x00007c39 rtn 
+ 00028790  0x00007c3b ifetch  0x00000002 , 0x00000006 
+ 00028791  0x00007c3c byteswap  0x0000003f , 0x0000003f 
+ 00028792  0x00007c3d add  0x0000003f , 0x00000003 , 0x00000002 
+ 00028793  0x00007c3e rtn 
+ 00028794  0x00007c40 ifetch  0x00000002 , 0x00000006 
+ 00028795  0x00007c41 byteswap  0x0000003f , 0x0000003f 
+ 00028796  0x00007c42 ifetcht  0x00000002 , 0x00000006 
+ 00028797  0x00007c43 byteswap  0x00000002 , 0x00000002 
+ 00028798  0x00007c44 lshift16  0x00000002 , 0x00000002 
+ 00028799  0x00007c45 iadd  0x00000002 , 0x0000003f 
+ 00028800  0x00007c46 add  0x0000003f , 0x00000005 , 0x00000002 
+ 00028801  0x00007c47 rtn 
+ 00028802  0x00007c4e bpatchx  0x000000d5 , 0x0000403a 
+ 00028803  0x00007c4f force  0x00000000 , 0x00000007 
+ 00028804  0x00007c50 arg  0x00000000 , 0x00000012 
+ 00028805  0x00007c51 arg  0x0000052a , 0x00000005 
+ 00028806  0x00007c53 ifetch  0x00000002 , 0x0000000b 
+ 00028807  0x00007c54 rtn  0x00000034 
+ 00028808  0x00007c55 call  0x0000708d 
+ 00028809  0x00007c56 copy  0x00000007 , 0x0000003f 
+ 00028810  0x00007c57 rtneq  0x00000007 
+ 00028811  0x00007c58 increase  0x00000002 , 0x0000000b 
+ 00028812  0x00007c59 branch  0x00007086 
+ 00028813  0x00007c5d iforce  0x00000013 
+ 00028814  0x00007c5f fetch  0x00000002 , 0x00004575 
+ 00028815  0x00007c60 iforce  0x00000006 
+ 00028816  0x00007c62 copy  0x00000007 , 0x0000003f 
+ 00028817  0x00007c63 rtneq  0x00000007 
+ 00028818  0x00007c64 disable  0x00000028 
+ 00028819  0x00007c65 ifetch  0x00000001 , 0x00000006 
+ 00028820  0x00007c66 rtn  0x00000034 
+ 00028821  0x00007c67 iforce  0x00000039 
+ 00028822  0x00007c69 ifetch  0x00000002 , 0x00000006 
+ 00028823  0x00007c6a isub  0x00000013 , 0x0000003e 
+ 00028824  0x00007c6b nbranch  0x0000709a , 0x00000005 
+ 00028825  0x00007c6c enable  0x00000028 
+ 00028826  0x00007c6e loop  0x00007096 
+ 00028827  0x00007c6f ifetcht  0x00000004 , 0x00000006 
+ 00028828  0x00007c70 copy  0x00000006 , 0x00000011 
+ 00028829  0x00007c71 nbranch  0x000070ad , 0x00000028 
+ 00028830  0x00007c72 arg  0x0000052a , 0x00000006 
+ 00028831  0x00007c73 arg  0x00000007 , 0x00000039 
+ 00028832  0x00007c75 ifetch  0x00000004 , 0x00000006 
+ 00028833  0x00007c76 branch  0x000070a6 , 0x00000034 
+ 00028834  0x00007c77 isub  0x00000002 , 0x0000003e 
+ 00028835  0x00007c78 branch  0x000070ad , 0x00000005 
+ 00028836  0x00007c79 loop  0x000070a0 
+ 00028837  0x00007c7a rtn 
+ 00028838  0x00007c7c istoret  0x00000004 , 0x00000005 
+ 00028839  0x00007c7d increase  0x00000001 , 0x00000007 
+ 00028840  0x00007c7e copy  0x00000011 , 0x00000006 
+ 00028841  0x00007c7f call  0x0000705b 
+ 00028842  0x00007c80 iadd  0x00000012 , 0x00000012 
+ 00028843  0x00007c81 iadd  0x00000006 , 0x00000006 
+ 00028844  0x00007c82 branch  0x00007090 
+ 00028845  0x00007c84 copy  0x00000011 , 0x00000006 
+ 00028846  0x00007c85 call  0x00007062 
+ 00028847  0x00007c86 iadd  0x00000006 , 0x00000006 
+ 00028848  0x00007c87 branch  0x00007090 
+ 00028849  0x00007c8e bpatchx  0x000000d6 , 0x0000403a 
+ 00028850  0x00007c8f fetch  0x00000002 , 0x00004575 
+ 00028851  0x00007c90 iforce  0x00000006 
+ 00028852  0x00007c92 ifetch  0x00000001 , 0x00000006 
+ 00028853  0x00007c93 branch  0x00007fe3 , 0x00000034 
+ 00028854  0x00007c94 lshift  0x0000003f , 0x0000003f 
+ 00028855  0x00007c95 iadd  0x00000006 , 0x00000006 
+ 00028856  0x00007c96 ifetch  0x00000004 , 0x00000006 
+ 00028857  0x00007c97 isub  0x00000002 , 0x0000003e 
+ 00028858  0x00007c98 rtn  0x00000005 
+ 00028859  0x00007c99 deposit  0x00000005 
+ 00028860  0x00007c9a store  0x00000002 , 0x00000abb 
+ 00028861  0x00007c9b storet  0x00000008 , 0x00000aa2 
+ 00028862  0x00007c9c call  0x00007062 
+ 00028863  0x00007c9d iadd  0x00000006 , 0x00000006 
+ 00028864  0x00007c9e copy  0x00000006 , 0x0000003f 
+ 00028865  0x00007c9f fetcht  0x00000002 , 0x00000abb 
+ 00028866  0x00007ca0 copy  0x00000002 , 0x00000005 
+ 00028867  0x00007ca1 fetcht  0x00000008 , 0x00000aa2 
+ 00028868  0x00007ca2 copy  0x0000003f , 0x00000006 
+ 00028869  0x00007ca3 branch  0x000070b4 
+ 00028870  0x00007caa bpatchx  0x000000d7 , 0x0000403a 
+ 00028871  0x00007cab fetch  0x00000002 , 0x00004575 
+ 00028872  0x00007cac iforce  0x00000006 
+ 00028873  0x00007cae ifetch  0x00000001 , 0x00000006 
+ 00028874  0x00007caf branch  0x000070e4 , 0x00000034 
+ 00028875  0x00007cb0 iforce  0x00000039 
+ 00028876  0x00007cb2 ifetch  0x00000002 , 0x00000006 
+ 00028877  0x00007cb3 isub  0x00000013 , 0x0000003e 
+ 00028878  0x00007cb4 branch  0x000070d4 , 0x00000005 
+ 00028879  0x00007cb5 loop  0x000070cc 
+ 00028880  0x00007cb6 increase  0x00000004 , 0x00000006 
+ 00028881  0x00007cb7 call  0x00007062 
+ 00028882  0x00007cb8 iadd  0x00000006 , 0x00000006 
+ 00028883  0x00007cb9 branch  0x000070c9 
+ 00028884  0x00007cbb increase  0xffffffff , 0x00000039 
+ 00028885  0x00007cbc lshift  0x00000039 , 0x0000003f 
+ 00028886  0x00007cbd iadd  0x00000006 , 0x00000006 
+ 00028887  0x00007cbe increase  0x00000004 , 0x00000006 
+ 00028888  0x00007cbf call  0x00007062 
+ 00028889  0x00007cc0 iadd  0x00000006 , 0x0000000b 
+ 00028890  0x00007cc2 increase  0x00000001 , 0x00000006 
+ 00028891  0x00007cc3 ifetch  0x00000002 , 0x00000006 
+ 00028892  0x00007cc4 isub  0x00000012 , 0x0000003e 
+ 00028893  0x00007cc8 branch  0x00007fef , 0x00000005 
+ 00028894  0x00007cc9 call  0x0000705b 
+ 00028895  0x00007cca iadd  0x00000006 , 0x00000006 
+ 00028896  0x00007ccb deposit  0x0000000b 
+ 00028897  0x00007ccc isub  0x00000006 , 0x0000003e 
+ 00028898  0x00007ccd branch  0x000070e4 , 0x00000005 
+ 00028899  0x00007cce branch  0x000070da 
+ 00028900  0x00007cd0 force  0x00000000 , 0x00000006 
+ 00028901  0x00007cd1 force  0x00000000 , 0x0000003f 
+ 00028902  0x00007cd2 rtn 
+ 00028903  0x00007cd9 bpatchx  0x000000d8 , 0x0000403b 
+ 00028904  0x00007cda fetch  0x00000002 , 0x00004575 
+ 00028905  0x00007cdb iforce  0x00000006 
+ 00028906  0x00007cdd ifetch  0x00000001 , 0x00000006 
+ 00028907  0x00007cde branch  0x00007100 , 0x00000034 
+ 00028908  0x00007cdf lshift  0x0000003f , 0x0000003f 
+ 00028909  0x00007ce0 iadd  0x00000006 , 0x00000006 
+ 00028910  0x00007ce1 ifetch  0x00000004 , 0x00000006 
+ 00028911  0x00007ce2 isub  0x00000002 , 0x0000003e 
+ 00028912  0x00007ce3 branch  0x000070f4 , 0x00000005 
+ 00028913  0x00007ce4 call  0x00007062 
+ 00028914  0x00007ce5 iadd  0x00000006 , 0x00000006 
+ 00028915  0x00007ce6 branch  0x000070ea 
+ 00028916  0x00007ce8 call  0x00007062 
+ 00028917  0x00007ce9 iadd  0x00000006 , 0x0000000b 
+ 00028918  0x00007ceb increase  0x00000001 , 0x00000006 
+ 00028919  0x00007cec ifetch  0x00000002 , 0x00000006 
+ 00028920  0x00007ced isub  0x00000012 , 0x0000003e 
+ 00028921  0x00007cee rtn  0x00000005 
+ 00028922  0x00007cef call  0x0000705b 
+ 00028923  0x00007cf0 iadd  0x00000006 , 0x00000006 
+ 00028924  0x00007cf1 deposit  0x0000000b 
+ 00028925  0x00007cf2 isub  0x00000006 , 0x0000003e 
+ 00028926  0x00007cf3 branch  0x00007100 , 0x00000005 
+ 00028927  0x00007cf4 branch  0x000070f6 
+ 00028928  0x00007cf6 force  0x00000000 , 0x00000006 
+ 00028929  0x00007cf7 rtn 
+ 00028930  0x00007cfc arg  0x00000400 , 0x00000012 
+ 00028931  0x00007cfd call  0x000070f4 
+ 00028932  0x00007cfe arg  0x00000300 , 0x00000012 
+ 00028933  0x00007cff call  0x0000710d 
+ 00028934  0x00007d00 nrtn  0x00000028 
+ 00028935  0x00007d01 sub  0x00000011 , 0x00000003 , 0x0000003e 
+ 00028936  0x00007d02 branch  0x00007fe9 , 0x00000002 
+ 00028937  0x00007d03 ifetch  0x00000001 , 0x00000006 
+ 00028938  0x00007d04 bne  0x00000008 , 0x00007fe9 
+ 00028939  0x00007d05 ifetch  0x00000001 , 0x00000006 
+ 00028940  0x00007d06 rtn 
+ 00028941  0x00007d0c bpatchx  0x000000d9 , 0x0000403b 
+ 00028942  0x00007d0d call  0x00007062 
+ 00028943  0x00007d0e copy  0x0000003f , 0x00000011 
+ 00028944  0x00007d10 ifetch  0x00000001 , 0x00000006 
+ 00028945  0x00007d11 and  0x0000003f , 0x00000007 , 0x00000039 
+ 00028946  0x00007d12 rshift3  0x0000003f , 0x0000003f 
+ 00028947  0x00007d13 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00028948  0x00007d14 branch  0x00007129 , 0x00000005 
+ 00028949  0x00007d15 copy  0x00000039 , 0x0000003f 
+ 00028950  0x00007d16 beq  0x00000005 , 0x00007120 
+ 00028951  0x00007d17 beq  0x00000006 , 0x00007123 
+ 00028952  0x00007d18 beq  0x00000007 , 0x00007126 
+ 00028953  0x00007d19 increase  0xffffffff , 0x00000006 
+ 00028954  0x00007d1a call  0x00007062 
+ 00028955  0x00007d1b iadd  0x00000006 , 0x00000006 
+ 00028956  0x00007d1c copy  0x00000011 , 0x0000003f 
+ 00028957  0x00007d1d isub  0x00000002 , 0x00000011 
+ 00028958  0x00007d1e branch  0x00007fe9 , 0x00000005 
+ 00028959  0x00007d1f branch  0x00007110 
+ 00028960  0x00007d22 increase  0xfffffffe , 0x00000011 
+ 00028961  0x00007d23 increase  0x00000001 , 0x00000006 
+ 00028962  0x00007d24 branch  0x00007110 
+ 00028963  0x00007d26 increase  0xfffffffd , 0x00000011 
+ 00028964  0x00007d27 increase  0x00000002 , 0x00000006 
+ 00028965  0x00007d28 branch  0x00007110 
+ 00028966  0x00007d2a increase  0xfffffffb , 0x00000011 
+ 00028967  0x00007d2b increase  0x00000004 , 0x00000006 
+ 00028968  0x00007d2c branch  0x00007110 
+ 00028969  0x00007d2f increase  0xffffffff , 0x00000011 
+ 00028970  0x00007d30 copy  0x00000039 , 0x0000003f 
+ 00028971  0x00007d31 beq  0x00000001 , 0x00007132 
+ 00028972  0x00007d32 beq  0x00000002 , 0x00007130 
+ 00028973  0x00007d33 beq  0x00000004 , 0x0000712f 
+ 00028974  0x00007d34 branch  0x00007fe9 
+ 00028975  0x00007d36 increase  0xfffffff4 , 0x00000011 
+ 00028976  0x00007d38 ifetch  0x00000002 , 0x00000006 
+ 00028977  0x00007d39 increase  0xfffffffe , 0x00000011 
+ 00028978  0x00007d3b ifetch  0x00000002 , 0x00000006 
+ 00028979  0x00007d3c isub  0x00000012 , 0x0000003e 
+ 00028980  0x00007d3d branch  0x00007fe7 , 0x00000005 
+ 00028981  0x00007d3e increase  0xfffffffe , 0x00000011 
+ 00028982  0x00007d3f branch  0x00007fe9 , 0x00000005 
+ 00028983  0x00007d40 branch  0x00007110 
+ 00028984  0x00007d7c call  0x000052d0 
+ 00028985  0x00007d7d copy  0x0000003f , 0x00000005 
+ 00028986  0x00007d7e setarg  0x00000006 
+ 00028987  0x00007d7f istore  0x00000001 , 0x00000005 
+ 00028988  0x00007d80 setarg  0x0000006e 
+ 00028989  0x00007d81 istore  0x00000002 , 0x00000005 
+ 00028990  0x00007d82 setarg  0x00000f00 
+ 00028991  0x00007d83 istore  0x00000002 , 0x00000005 
+ 00028992  0x00007d84 setarg  0x001a0535 
+ 00028993  0x00007d85 istore  0x00000003 , 0x00000005 
+ 00028994  0x00007d86 setarg  0x00000111 
+ 00028995  0x00007d87 lshift16  0x0000003f , 0x0000003f 
+ 00028996  0x00007d88 istore  0x00000004 , 0x00000005 
+ 00028997  0x00007d89 setarg  0x00002600 
+ 00028998  0x00007d8a istore  0x00000002 , 0x00000005 
+ 00028999  0x00007d8b setarg  0x00000335 
+ 00029000  0x00007d8c istore  0x00000002 , 0x00000005 
+ 00029001  0x00007d8d setarg  0x00000009 
+ 00029002  0x00007d8e istore  0x00000002 , 0x00000005 
+ 00029003  0x00007d8f setarg  0x00000004 
+ 00029004  0x00007d90 istore  0x00000002 , 0x00000005 
+ 00029005  0x00007d91 jam  0x00000014 , 0x00000275 
+ 00029006  0x00007d92 rtn 
+ 00029007  0x00007d97 bpatchx  0x000000da , 0x0000403b 
+ 00029008  0x00007d98 jam  0x00000050 , 0x000005e5 
+ 00029009  0x00007d99 arg  0x000005e6 , 0x00000005 
+ 00029010  0x00007d9a arg  0x0000443a , 0x00000006 
+ 00029011  0x00007d9b call  0x00007ebf 
+ 00029012  0x00007d9c arg  0x000045d2 , 0x00000006 
+ 00029013  0x00007d9d call  0x00007ebd 
+ 00029014  0x00007d9e arg  0x000009be , 0x00000006 
+ 00029015  0x00007d9f call  0x00007ebd 
+ 00029016  0x00007da0 call  0x0000720a 
+ 00029017  0x00007da1 arg  0x0000042f , 0x00000006 
+ 00029018  0x00007da2 call  0x00007205 
+ 00029019  0x00007da3 call  0x000071d0 
+ 00029020  0x00007da5 arg  0x00000af2 , 0x00000005 
+ 00029021  0x00007da6 call  0x00007201 
+ 00029022  0x00007da7 setarg  0x000f4240 
+ 00029023  0x00007da8 copy  0x0000003f , 0x00000011 
+ 00029024  0x00007da9 fetch  0x00000004 , 0x00000af2 
+ 00029025  0x00007daa idiv  0x00000011 
+ 00029026  0x00007dab call  0x00007f86 
+ 00029027  0x00007dac remainder  0x0000003f 
+ 00029028  0x00007dad store  0x00000004 , 0x000009ba 
+ 00029029  0x00007daf rtn 
+ 00029030  0x00007db2 jam  0x00000041 , 0x000005e5 
+ 00029031  0x00007db3 arg  0x000005e6 , 0x00000005 
+ 00029032  0x00007db4 call  0x000071b5 
+ 00029033  0x00007db5 call  0x000071b0 
+ 00029034  0x00007db6 fetch  0x00000003 , 0x00004454 
+ 00029035  0x00007db7 istore  0x00000003 , 0x00000005 
+ 00029036  0x00007dba call  0x00007176 
+ 00029037  0x00007dbc arg  0x0000042f , 0x00000006 
+ 00029038  0x00007dbd call  0x00007ebf 
+ 00029039  0x00007dbe arg  0x0000443a , 0x00000006 
+ 00029040  0x00007dbf call  0x00007ebf 
+ 00029041  0x00007dc0 call  0x0000720a 
+ 00029042  0x00007dc1 arg  0x00000b12 , 0x00000006 
+ 00029043  0x00007dc2 arg  0x00000ac2 , 0x00000005 
+ 00029044  0x00007dc3 call  0x00007ebf 
+ 00029045  0x00007dc5 branch  0x000071d0 
+ 00029046  0x00007dca fetch  0x00000004 , 0x000044c7 
+ 00029047  0x00007dcb istore  0x00000004 , 0x00000005 
+ 00029048  0x00007dcc call  0x00007ecd 
+ 00029049  0x00007dcd branch  0x00007eca 
+ 00029050  0x00007dd0 bpatchx  0x000000db , 0x0000403b 
+ 00029051  0x00007dd1 jam  0x00000041 , 0x000005e5 
+ 00029052  0x00007dd2 arg  0x000005e6 , 0x00000005 
+ 00029053  0x00007dd3 call  0x000071b0 
+ 00029054  0x00007dd4 call  0x000071b5 
+ 00029055  0x00007dd5 fetch  0x00000003 , 0x0000444d 
+ 00029056  0x00007dd6 istore  0x00000003 , 0x00000005 
+ 00029057  0x00007dd9 call  0x00007176 
+ 00029058  0x00007dda arg  0x0000443a , 0x00000006 
+ 00029059  0x00007ddb call  0x00007ebf 
+ 00029060  0x00007ddc arg  0x0000042f , 0x00000006 
+ 00029061  0x00007ddd call  0x00007ebf 
+ 00029062  0x00007dde call  0x0000720a 
+ 00029063  0x00007ddf arg  0x00000b12 , 0x00000006 
+ 00029064  0x00007de0 arg  0x00000ac2 , 0x00000005 
+ 00029065  0x00007de1 call  0x00007ebf 
+ 00029066  0x00007de3 call  0x000071d0 
+ 00029067  0x00007de4 arg  0x00000af2 , 0x00000005 
+ 00029068  0x00007de5 branch  0x00007201 
+ 00029069  0x00007de8 jam  0x00000020 , 0x000005e5 
+ 00029070  0x00007de9 arg  0x000009fe , 0x00000006 
+ 00029071  0x00007dea arg  0x000005e6 , 0x00000005 
+ 00029072  0x00007deb call  0x00007ebd 
+ 00029073  0x00007dec call  0x0000720a 
+ 00029074  0x00007ded arg  0x0000099e , 0x00000006 
+ 00029075  0x00007dee call  0x00007205 
+ 00029076  0x00007def call  0x000071d0 
+ 00029077  0x00007df0 arg  0x00000ac2 , 0x00000005 
+ 00029078  0x00007df1 call  0x00007497 
+ 00029079  0x00007df2 arg  0x00000001 , 0x00000002 
+ 00029080  0x00007df3 call  0x0000719f 
+ 00029081  0x00007df4 arg  0x00004419 , 0x00000005 
+ 00029082  0x00007df5 call  0x00007201 
+ 00029083  0x00007df6 arg  0x00000000 , 0x00000002 
+ 00029084  0x00007df7 call  0x0000719f 
+ 00029085  0x00007df8 arg  0x00000b12 , 0x00000005 
+ 00029086  0x00007dfa branch  0x00007497 
+ 00029087  0x00007dfe bpatchx  0x000000dc , 0x0000403b 
+ 00029088  0x00007dff jam  0x00000035 , 0x000005e5 
+ 00029089  0x00007e00 setarg  0x00000100 
+ 00029090  0x00007e01 store  0x00000002 , 0x000005e6 
+ 00029091  0x00007e02 call  0x000071b0 
+ 00029092  0x00007e03 call  0x000071b5 
+ 00029093  0x00007e04 arg  0x0000443a , 0x00000006 
+ 00029094  0x00007e05 call  0x00007ebf 
+ 00029095  0x00007e06 arg  0x0000042f , 0x00000006 
+ 00029096  0x00007e07 call  0x00007ebf 
+ 00029097  0x00007e09 setarg  0x00006c65 
+ 00029098  0x00007e0a istore  0x00000002 , 0x00000005 
+ 00029099  0x00007e0b setarg  0x00006274 
+ 00029100  0x00007e0c istore  0x00000002 , 0x00000005 
+ 00029101  0x00007e0d istoret  0x00000001 , 0x00000005 
+ 00029102  0x00007e0e call  0x0000720a 
+ 00029103  0x00007e0f branch  0x000071d0 
+ 00029104  0x00007e12 fetch  0x00000006 , 0x000044a0 
+ 00029105  0x00007e13 istore  0x00000006 , 0x00000005 
+ 00029106  0x00007e14 fetch  0x00000001 , 0x00004495 
+ 00029107  0x00007e15 istore  0x00000001 , 0x00000005 
+ 00029108  0x00007e16 rtn 
+ 00029109  0x00007e19 fetch  0x00000006 , 0x0000044f 
+ 00029110  0x00007e1a istore  0x00000006 , 0x00000005 
+ 00029111  0x00007e1f fetch  0x00000001 , 0x0000448e 
+ 00029112  0x00007e20 istore  0x00000001 , 0x00000005 
+ 00029113  0x00007e21 rtn 
+ 00029114  0x00007e24 jam  0x00000041 , 0x000005e5 
+ 00029115  0x00007e25 fetch  0x00000001 , 0x00004664 
+ 00029116  0x00007e26 store  0x00000001 , 0x000005e6 
+ 00029117  0x00007e27 arg  0x000045d2 , 0x00000006 
+ 00029118  0x00007e28 call  0x00007ebd 
+ 00029119  0x00007e29 arg  0x000009be , 0x00000006 
+ 00029120  0x00007e2a call  0x00007ebd 
+ 00029121  0x00007e2b call  0x0000720a 
+ 00029122  0x00007e2c arg  0x0000042f , 0x00000006 
+ 00029123  0x00007e2d call  0x00007205 
+ 00029124  0x00007e2e branch  0x000071d0 
+ 00029125  0x00007e32 jam  0x00000041 , 0x000005e5 
+ 00029126  0x00007e33 fetch  0x00000001 , 0x00004664 
+ 00029127  0x00007e34 store  0x00000001 , 0x000005e6 
+ 00029128  0x00007e35 arg  0x000009be , 0x00000006 
+ 00029129  0x00007e36 call  0x00007ebd 
+ 00029130  0x00007e37 arg  0x000045d2 , 0x00000006 
+ 00029131  0x00007e38 call  0x00007ebd 
+ 00029132  0x00007e39 call  0x0000720a 
+ 00029133  0x00007e3a arg  0x0000443a , 0x00000006 
+ 00029134  0x00007e3b call  0x00007205 
+ 00029135  0x00007e3c branch  0x000071d0 
+ 00029136  0x00007e3f bpatchx  0x000000dd , 0x0000403b 
+ 00029137  0x00007e40 call  0x0000721f 
+ 00029138  0x00007e44 fetch  0x00000001 , 0x000005e5 
+ 00029139  0x00007e45 copy  0x0000003f , 0x00000002 
+ 00029140  0x00007e47 increase  0x0000000f , 0x0000003f 
+ 00029141  0x00007e48 rshift4  0x0000003f , 0x0000003f 
+ 00029142  0x00007e49 copy  0x0000003f , 0x00000012 
+ 00029143  0x00007e4a branch  0x000071e2 , 0x00000034 
+ 00029144  0x00007e4b and  0x00000002 , 0x0000000f , 0x0000003f 
+ 00029145  0x00007e4c nbranch  0x000071e5 , 0x00000034 
+ 00029146  0x00007e4e arg  0x00000ad2 , 0x00000013 
+ 00029147  0x00007e4f arg  0x000005e6 , 0x0000003f 
+ 00029148  0x00007e50 increase  0xfffffff0 , 0x0000003f 
+ 00029149  0x00007e53 iadd  0x00000002 , 0x00000011 
+ 00029150  0x00007e54 arg  0x00000b02 , 0x00000005 
+ 00029151  0x00007e55 arg  0x00000004 , 0x00000039 
+ 00029152  0x00007e56 call  0x00007edd 
+ 00029153  0x00007e5a branch  0x000071f0 
+ 00029154  0x00007e5d arg  0x00000001 , 0x00000012 
+ 00029155  0x00007e5e arg  0x00000000 , 0x00000011 
+ 00029156  0x00007e60 branch  0x000071e6 
+ 00029157  0x00007e65 and  0x00000002 , 0x0000000f , 0x00000011 
+ 00029158  0x00007e67 arg  0x000005e6 , 0x0000003f 
+ 00029159  0x00007e68 iadd  0x00000002 , 0x0000003f 
+ 00029160  0x00007e69 isub  0x00000011 , 0x00000006 
+ 00029161  0x00007e6b arg  0x00000af2 , 0x00000005 
+ 00029162  0x00007e6c call  0x00007245 
+ 00029163  0x00007e6e arg  0x00000ae2 , 0x00000013 
+ 00029164  0x00007e6f arg  0x00000af2 , 0x00000011 
+ 00029165  0x00007e70 arg  0x00000b02 , 0x00000005 
+ 00029166  0x00007e71 arg  0x00000004 , 0x00000039 
+ 00029167  0x00007e72 call  0x00007edd 
+ 00029168  0x00007e7e call  0x00007491 
+ 00029169  0x00007e7f call  0x00007428 
+ 00029170  0x00007e82 arg  0x000005e6 , 0x00000006 
+ 00029171  0x00007e85 increase  0xffffffff , 0x00000012 
+ 00029172  0x00007e86 deposit  0x00000012 
+ 00029173  0x00007e87 branch  0x000071f9 , 0x00000034 
+ 00029174  0x00007e88 call  0x00007486 
+ 00029175  0x00007e89 call  0x00007422 
+ 00029176  0x00007e8a branch  0x000071f3 
+ 00029177  0x00007e8d arg  0x00000af2 , 0x00000005 
+ 00029178  0x00007e8e call  0x00007497 
+ 00029179  0x00007e8f arg  0x00000b02 , 0x00000006 
+ 00029180  0x00007e90 call  0x00007486 
+ 00029181  0x00007e91 call  0x00007428 
+ 00029182  0x00007e92 arg  0x00000af2 , 0x00000006 
+ 00029183  0x00007e93 call  0x00007486 
+ 00029184  0x00007e94 branch  0x00007422 
+ 00029185  0x00007e9a copy  0x00000005 , 0x00000011 
+ 00029186  0x00007e9b call  0x00007497 
+ 00029187  0x00007e9d arg  0x00000010 , 0x00000039 
+ 00029188  0x00007e9e branch  0x00007ee5 
+ 00029189  0x00007ea1 arg  0x00000ac2 , 0x00000005 
+ 00029190  0x00007ea2 call  0x00007ebf 
+ 00029191  0x00007ea4 arg  0x00000010 , 0x00000039 
+ 00029192  0x00007ea5 arg  0x00000ac2 , 0x00000011 
+ 00029193  0x00007ea6 branch  0x00007ee5 
+ 00029194  0x00007ea9 fetch  0x00000001 , 0x000005e5 
+ 00029195  0x00007eaa copy  0x0000003f , 0x00000039 
+ 00029196  0x00007eab arg  0x000005e6 , 0x00000011 
+ 00029197  0x00007eac branch  0x00007ee5 
+ 00029198  0x00007eaf ifetch  0x00000001 , 0x00000011 
+ 00029199  0x00007eb0 lshift  0x0000003f , 0x0000003f 
+ 00029200  0x00007eb1 isolate1  0x00000000 , 0x00000013 
+ 00029201  0x00007eb2 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00029202  0x00007eb3 isolate1  0x00000008 , 0x0000003f 
+ 00029203  0x00007eb4 setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00029204  0x00007eb5 istore  0x00000001 , 0x00000011 
+ 00029205  0x00007eb6 increase  0xffffffff , 0x00000011 
+ 00029206  0x00007eb7 loop  0x0000720e 
+ 00029207  0x00007eb8 rtn 
+ 00029208  0x00007ebb arg  0x00000ad2 , 0x00000011 
+ 00029209  0x00007ebd increase  0x0000000f , 0x00000011 
+ 00029210  0x00007ebe force  0x00000010 , 0x00000039 
+ 00029211  0x00007ebf force  0x00000000 , 0x00000013 
+ 00029212  0x00007ec0 branch  0x0000720e 
+ 00029213  0x00007ec3 arg  0x00000ae2 , 0x00000011 
+ 00029214  0x00007ec4 branch  0x00007219 
+ 00029215  0x00007ec8 arg  0x00000ac2 , 0x00000006 
+ 00029216  0x00007ec9 call  0x00007484 
+ 00029217  0x00007ecc force  0x00000008 , 0x00000038 
+ 00029218  0x00007ecd call  0x00007492 
+ 00029219  0x00007ece call  0x00007491 
+ 00029220  0x00007ecf call  0x0000741f 
+ 00029221  0x00007ed4 arg  0x00000ad2 , 0x00000005 
+ 00029222  0x00007ed5 call  0x00007497 
+ 00029223  0x00007ed7 bpatchx  0x000000de , 0x0000403b 
+ 00029224  0x00007ed8 fetch  0x00000001 , 0x00000ad2 
+ 00029225  0x00007ed9 isolate1  0x00000007 , 0x0000003f 
+ 00029226  0x00007eda nbranch  0x00007230 , 0x00000001 
+ 00029227  0x00007edb call  0x00007218 
+ 00029228  0x00007ede arg  0x00000ad2 , 0x00000013 
+ 00029229  0x00007ee0 arg  0x00000ad2 , 0x00000005 
+ 00029230  0x00007ee3 call  0x0000723a 
+ 00029231  0x00007ee4 branch  0x00007231 
+ 00029232  0x00007ee6 call  0x00007218 
+ 00029233  0x00007ee9 arg  0x00000ad2 , 0x00000006 
+ 00029234  0x00007eea arg  0x00000ae2 , 0x00000005 
+ 00029235  0x00007eeb call  0x00007ebf 
+ 00029236  0x00007eec fetch  0x00000001 , 0x00000ae2 
+ 00029237  0x00007eed isolate1  0x00000007 , 0x0000003f 
+ 00029238  0x00007eee nbranch  0x0000721d , 0x00000001 
+ 00029239  0x00007eef call  0x0000721d 
+ 00029240  0x00007ef1 arg  0x00000ae2 , 0x00000013 
+ 00029241  0x00007ef3 arg  0x00000ae2 , 0x00000005 
+ 00029242  0x00007efa arg  0x00000003 , 0x00000039 
+ 00029243  0x00007efc arg  0x00000000 , 0x00000002 
+ 00029244  0x00007efd call  0x00007241 
+ 00029245  0x00007efe increase  0x00000004 , 0x00000013 
+ 00029246  0x00007eff loop  0x0000723b 
+ 00029247  0x00007f00 arg  0x00008700 , 0x00000002 
+ 00029248  0x00007f01 lshift16  0x00000002 , 0x00000002 
+ 00029249  0x00007f03 ifetch  0x00000004 , 0x00000013 
+ 00029250  0x00007f04 ixor  0x00000002 , 0x0000003f 
+ 00029251  0x00007f05 istore  0x00000004 , 0x00000005 
+ 00029252  0x00007f06 rtn 
+ 00029253  0x00007f0d bpatchx  0x000000df , 0x0000403b 
+ 00029254  0x00007f0e arg  0x00000010 , 0x00000039 
+ 00029255  0x00007f0f arg  0x00000000 , 0x0000003f 
+ 00029256  0x00007f11 isub  0x00000011 , 0x0000003e 
+ 00029257  0x00007f12 branch  0x00007250 , 0x00000005 
+ 00029258  0x00007f13 branch  0x00007253 , 0x00000002 
+ 00029259  0x00007f14 ifetcht  0x00000001 , 0x00000006 
+ 00029260  0x00007f15 istoret  0x00000001 , 0x00000005 
+ 00029261  0x00007f17 increase  0x00000001 , 0x0000003f 
+ 00029262  0x00007f18 loop  0x00007248 
+ 00029263  0x00007f19 rtn 
+ 00029264  0x00007f1b arg  0x00000080 , 0x00000002 
+ 00029265  0x00007f1d istoret  0x00000001 , 0x00000005 
+ 00029266  0x00007f1e branch  0x0000724d 
+ 00029267  0x00007f21 arg  0x00000000 , 0x00000002 
+ 00029268  0x00007f22 branch  0x00007251 
+ 00029269  0x00007f26 call  0x00007268 
+ 00029270  0x00007f27 arg  0x00000592 , 0x00000006 
+ 00029271  0x00007f28 arg  0x00000582 , 0x00000005 
+ 00029272  0x00007f29 branch  0x00007ebf 
+ 00029273  0x00007f2d disable  0x00000028 
+ 00029274  0x00007f2e call  0x0000735f 
+ 00029275  0x00007f2f arg  0x00000562 , 0x00000006 
+ 00029276  0x00007f30 arg  0x000005a2 , 0x00000005 
+ 00029277  0x00007f31 force  0x0000000f , 0x00000039 
+ 00029278  0x00007f32 call  0x00007f01 
+ 00029279  0x00007f33 ifetch  0x00000001 , 0x00000006 
+ 00029280  0x00007f34 xor_into  0x00000006 , 0x0000003f 
+ 00029281  0x00007f35 istore  0x00000001 , 0x00000005 
+ 00029282  0x00007f36 setarg  0x000005b2 
+ 00029283  0x00007f37 store  0x00000002 , 0x000005d6 
+ 00029284  0x00007f38 setarg  0x000005a2 
+ 00029285  0x00007f39 store  0x00000002 , 0x000005d4 
+ 00029286  0x00007f3a set1  0x00000012 , 0x00000000 
+ 00029287  0x00007f3b branch  0x000072a8 
+ 00029288  0x00007f40 fetcht  0x00000001 , 0x00004689 
+ 00029289  0x00007f41 force  0x00000010 , 0x00000012 
+ 00029290  0x00007f42 add  0x00000002 , 0x00000006 , 0x00000013 
+ 00029291  0x00007f43 sub  0x00000013 , 0x00000010 , 0x0000003e 
+ 00029292  0x00007f44 branch  0x0000726e , 0x00000002 
+ 00029293  0x00007f45 force  0x00000010 , 0x00000013 
+ 00029294  0x00007f47 arg  0x000005a2 , 0x00000005 
+ 00029295  0x00007f49 arg  0x0000468a , 0x00000006 
+ 00029296  0x00007f4a copy  0x00000002 , 0x00000039 
+ 00029297  0x00007f4b disable  0x00000028 
+ 00029298  0x00007f4d ifetch  0x00000001 , 0x00000006 
+ 00029299  0x00007f4e istore  0x00000001 , 0x00000005 
+ 00029300  0x00007f4f increase  0xffffffff , 0x00000012 
+ 00029301  0x00007f50 branch  0x0000727c , 0x00000005 
+ 00029302  0x00007f51 loop  0x00007272 
+ 00029303  0x00007f52 branch  0x0000726f , 0x00000028 
+ 00029304  0x00007f53 enable  0x00000028 
+ 00029305  0x00007f54 force  0x00000006 , 0x00000039 
+ 00029306  0x00007f55 copy  0x00000011 , 0x00000006 
+ 00029307  0x00007f56 branch  0x00007272 
+ 00029308  0x00007f58 arg  0x00000562 , 0x00000006 
+ 00029309  0x00007f59 arg  0x000005b2 , 0x00000005 
+ 00029310  0x00007f5a call  0x00007ebf 
+ 00029311  0x00007f5b fetch  0x00000001 , 0x000005c1 
+ 00029312  0x00007f5c ixor  0x00000013 , 0x0000003f 
+ 00029313  0x00007f5d store  0x00000001 , 0x000005c1 
+ 00029314  0x00007f5e setarg  0x000005b2 
+ 00029315  0x00007f5f store  0x00000002 , 0x000005d6 
+ 00029316  0x00007f60 setarg  0x000005a2 
+ 00029317  0x00007f61 store  0x00000002 , 0x000005d4 
+ 00029318  0x00007f62 set1  0x00000012 , 0x00000000 
+ 00029319  0x00007f63 branch  0x000072a8 
+ 00029320  0x00007f69 disable  0x00000028 
+ 00029321  0x00007f6a call  0x0000735f 
+ 00029322  0x00007f6b branch  0x00007292 
+ 00029323  0x00007f6e arg  0x00000056 , 0x00000011 
+ 00029324  0x00007f6f enable  0x00000028 
+ 00029325  0x00007f70 call  0x0000735f 
+ 00029326  0x00007f71 call  0x00007292 
+ 00029327  0x00007f72 arg  0x00000592 , 0x00000006 
+ 00029328  0x00007f73 arg  0x00000062 , 0x00000005 
+ 00029329  0x00007f74 branch  0x00007ebf 
+ 00029330  0x00007f78 setarg  0x00000562 
+ 00029331  0x00007f79 store  0x00000002 , 0x000005d6 
+ 00029332  0x00007f7a setarg  0x000041be 
+ 00029333  0x00007f7b store  0x00000002 , 0x000005d4 
+ 00029334  0x00007f7c set0  0x00000012 , 0x00000000 
+ 00029335  0x00007f7d call  0x000072a8 
+ 00029336  0x00007f7e arg  0x00000592 , 0x00000011 
+ 00029337  0x00007f7f arg  0x00000562 , 0x00000012 
+ 00029338  0x00007f80 arg  0x000005a2 , 0x00000005 
+ 00029339  0x00007f81 call  0x00007352 
+ 00029340  0x00007f82 arg  0x000005a2 , 0x00000011 
+ 00029341  0x00007f83 arg  0x000005b2 , 0x00000012 
+ 00029342  0x00007f84 copy  0x00000012 , 0x00000005 
+ 00029343  0x00007f85 enable  0x00000028 
+ 00029344  0x00007f86 call  0x00007350 
+ 00029345  0x00007f87 call  0x0000736a 
+ 00029346  0x00007f88 setarg  0x000005b2 
+ 00029347  0x00007f89 store  0x00000002 , 0x000005d6 
+ 00029348  0x00007f8a setarg  0x000005a2 
+ 00029349  0x00007f8b store  0x00000002 , 0x000005d4 
+ 00029350  0x00007f8c set1  0x00000012 , 0x00000000 
+ 00029351  0x00007f8d branch  0x000072a8 
+ 00029352  0x00007f92 jam  0x00000000 , 0x000005d8 
+ 00029353  0x00007f93 fetch  0x00000002 , 0x000005d4 
+ 00029354  0x00007f94 iforce  0x00000006 
+ 00029355  0x00007f95 arg  0x000005c2 , 0x00000005 
+ 00029356  0x00007f96 call  0x00007ebf 
+ 00029357  0x00007f97 fetch  0x00000002 , 0x000005d6 
+ 00029358  0x00007f98 iforce  0x00000006 
+ 00029359  0x00007f99 arg  0x00000592 , 0x00000005 
+ 00029360  0x00007f9a call  0x00007ebf 
+ 00029361  0x00007f9d call  0x000072cf 
+ 00029362  0x00007f9e disable  0x00000028 
+ 00029363  0x00007f9f bmark0  0x00000012 , 0x000072b9 
+ 00029364  0x00007fa0 fetch  0x00000001 , 0x000005d8 
+ 00029365  0x00007fa1 bne  0x00000004 , 0x000072b9 
+ 00029366  0x00007fa2 fetch  0x00000002 , 0x000005d6 
+ 00029367  0x00007fa3 iforce  0x00000012 
+ 00029368  0x00007fa4 call  0x00007301 
+ 00029369  0x00007fa6 call  0x00007300 
+ 00029370  0x00007fa7 call  0x00007313 
+ 00029371  0x00007fa8 fetch  0x00000001 , 0x000005d8 
+ 00029372  0x00007fa9 increase  0x00000001 , 0x0000003f 
+ 00029373  0x00007faa store  0x00000001 , 0x000005d8 
+ 00029374  0x00007fac call  0x000072cf 
+ 00029375  0x00007fad enable  0x00000028 
+ 00029376  0x00007fae call  0x00007300 
+ 00029377  0x00007faf call  0x00007322 
+ 00029378  0x00007fb0 call  0x00007331 
+ 00029379  0x00007fb1 call  0x00007322 
+ 00029380  0x00007fb2 call  0x00007331 
+ 00029381  0x00007fb3 call  0x00007322 
+ 00029382  0x00007fb4 call  0x00007331 
+ 00029383  0x00007fb5 call  0x00007322 
+ 00029384  0x00007fb6 fetch  0x00000001 , 0x000005d8 
+ 00029385  0x00007fb7 increase  0x00000001 , 0x0000003f 
+ 00029386  0x00007fb8 store  0x00000001 , 0x000005d8 
+ 00029387  0x00007fb9 bne  0x00000010 , 0x000072b1 
+ 00029388  0x00007fba call  0x000072cf 
+ 00029389  0x00007fbb disable  0x00000028 
+ 00029390  0x00007fbc branch  0x00007300 
+ 00029391  0x00007fc1 fetch  0x00000001 , 0x000005d8 
+ 00029392  0x00007fc2 arg  0x000005c2 , 0x00000006 
+ 00029393  0x00007fc3 branch  0x000072f6 , 0x00000034 
+ 00029394  0x00007fc4 iforce  0x00000012 
+ 00029395  0x00007fc5 force  0x00000011 , 0x00000039 
+ 00029396  0x00007fc6 copy  0x00000006 , 0x00000005 
+ 00029397  0x00007fc8 ifetch  0x00000001 , 0x00000006 
+ 00029398  0x00007fc9 lshift3  0x0000003f , 0x00000002 
+ 00029399  0x00007fca rshift2  0x0000003f , 0x0000003f 
+ 00029400  0x00007fcb rshift3  0x0000003f , 0x0000003f 
+ 00029401  0x00007fcc ior  0x00000002 , 0x0000003f 
+ 00029402  0x00007fcd istore  0x00000001 , 0x00000005 
+ 00029403  0x00007fce loop  0x000072d5 
+ 00029404  0x00007fcf setarg  0x000005c2 
+ 00029405  0x00007fd0 iadd  0x00000012 , 0x00000006 
+ 00029406  0x00007fd1 force  0x00000010 , 0x00000039 
+ 00029407  0x00007fd2 arg  0x00000572 , 0x00000005 
+ 00029408  0x00007fd4 ifetch  0x00000001 , 0x00000006 
+ 00029409  0x00007fd5 istore  0x00000001 , 0x00000005 
+ 00029410  0x00007fd6 compare  0x000005d3 , 0x00000006 , 0x000000ff 
+ 00029411  0x00007fd7 nbranch  0x000072e5 , 0x00000001 
+ 00029412  0x00007fd8 increase  0xffffffef , 0x00000006 
+ 00029413  0x00007fda loop  0x000072e0 
+ 00029414  0x00007fdb force  0x00000000 , 0x00000011 
+ 00029415  0x00007fdc add  0x00000012 , 0xffffffff , 0x00000013 
+ 00029416  0x00007fdd lshift2  0x00000013 , 0x00000013 
+ 00029417  0x00007fde lshift2  0x00000013 , 0x00000013 
+ 00029418  0x00007fdf call  0x000074b9 
+ 00029419  0x00007fe0 setarg  0x00008400 
+ 00029420  0x00007fe1 iadd  0x00000013 , 0x00000013 
+ 00029421  0x00007fe2 arg  0x00000572 , 0x00000005 
+ 00029422  0x00007fe3 force  0x00000010 , 0x00000039 
+ 00029423  0x00007fe5 ifetcht  0x00000001 , 0x00000013 
+ 00029424  0x00007fe6 ifetch  0x00000001 , 0x00000005 
+ 00029425  0x00007fe7 iadd  0x00000002 , 0x0000003f 
+ 00029426  0x00007fe8 istore  0x00000001 , 0x00000005 
+ 00029427  0x00007fe9 increase  0x00000001 , 0x00000013 
+ 00029428  0x00007fea loop  0x000072ef 
+ 00029429  0x00007feb branch  0x000074bd 
+ 00029430  0x00007fee force  0x00000010 , 0x00000039 
+ 00029431  0x00007fef force  0x00000000 , 0x00000002 
+ 00029432  0x00007ff1 ifetch  0x00000001 , 0x00000006 
+ 00029433  0x00007ff2 ixor  0x00000002 , 0x00000002 
+ 00029434  0x00007ff3 loop  0x000072f8 
+ 00029435  0x00007ff4 deposit  0x00000002 
+ 00029436  0x00007ff5 istore  0x00000001 , 0x00000006 
+ 00029437  0x00007ff6 arg  0x000005c2 , 0x00000006 
+ 00029438  0x00007ff7 arg  0x00000572 , 0x00000005 
+ 00029439  0x00007ff8 branch  0x00007ebf 
+ 00029440  0x00007ffb arg  0x00000572 , 0x00000012 
+ 00029441  0x00007ffd force  0x00000010 , 0x00000039 
+ 00029442  0x00007ffe arg  0x00000592 , 0x00000011 
+ 00029443  0x00007fff copy  0x00000011 , 0x00000005 
+ 00029444  0x00008001 ifetcht  0x00000001 , 0x00000011 
+ 00029445  0x00008002 ifetch  0x00000001 , 0x00000012 
+ 00029446  0x00008003 ixor  0x00000002 , 0x00000030 
+ 00029447  0x00008004 and  0x00000039 , 0x00000003 , 0x00000013 
+ 00029448  0x00008005 nbranch  0x0000730a , 0x00000028 
+ 00029449  0x00008006 xor_into  0x00000003 , 0x00000013 
+ 00029450  0x00008008 sub  0x00000013 , 0x00000001 , 0x00000013 
+ 00029451  0x00008009 branch  0x0000730d , 0x00000002 
+ 00029452  0x0000800a iadd  0x00000002 , 0x00000030 
+ 00029453  0x0000800c deposit  0x00000030 
+ 00029454  0x0000800d istore  0x00000001 , 0x00000005 
+ 00029455  0x0000800e increase  0x00000001 , 0x00000011 
+ 00029456  0x0000800f increase  0x00000001 , 0x00000012 
+ 00029457  0x00008010 loop  0x00007304 
+ 00029458  0x00008011 rtn 
+ 00029459  0x00008014 call  0x000074b9 
+ 00029460  0x00008015 force  0x00000010 , 0x00000039 
+ 00029461  0x00008016 arg  0x00000592 , 0x00000011 
+ 00029462  0x00008018 ifetch  0x00000001 , 0x00000011 
+ 00029463  0x00008019 arg  0x00008500 , 0x00000006 
+ 00029464  0x0000801a and  0x00000039 , 0x00000003 , 0x00000013 
+ 00029465  0x0000801b sub  0x00000013 , 0x00000001 , 0x0000003e 
+ 00029466  0x0000801c branch  0x0000731c , 0x00000002 
+ 00029467  0x0000801d arg  0x00008600 , 0x00000006 
+ 00029468  0x0000801f iadd  0x00000006 , 0x00000006 
+ 00029469  0x00008020 ifetch  0x00000001 , 0x00000006 
+ 00029470  0x00008021 istore  0x00000001 , 0x00000011 
+ 00029471  0x00008022 increase  0x00000001 , 0x00000011 
+ 00029472  0x00008023 loop  0x00007316 
+ 00029473  0x00008024 branch  0x000074bd 
+ 00029474  0x00008027 force  0x00000008 , 0x00000039 
+ 00029475  0x00008028 arg  0x00000592 , 0x00000006 
+ 00029476  0x00008029 copy  0x00000006 , 0x00000005 
+ 00029477  0x0000802b ifetch  0x00000001 , 0x00000006 
+ 00029478  0x0000802c iforce  0x00000011 
+ 00029479  0x0000802d ifetch  0x00000001 , 0x00000006 
+ 00029480  0x0000802e iforce  0x00000012 
+ 00029481  0x0000802f lshift  0x00000011 , 0x0000003f 
+ 00029482  0x00008030 iadd  0x00000012 , 0x0000003f 
+ 00029483  0x00008031 istore  0x00000001 , 0x00000005 
+ 00029484  0x00008032 deposit  0x00000011 
+ 00029485  0x00008033 iadd  0x00000012 , 0x0000003f 
+ 00029486  0x00008034 istore  0x00000001 , 0x00000005 
+ 00029487  0x00008035 loop  0x00007325 
+ 00029488  0x00008036 rtn 
+ 00029489  0x0000803a setarg  0x008ae42c 
+ 00029490  0x0000803b iforce  0x00000002 
+ 00029491  0x0000803c force  0x00000007 , 0x00000039 
+ 00029492  0x0000803d call  0x00007340 
+ 00029493  0x0000803e setarg  0x000d751b 
+ 00029494  0x0000803f iforce  0x00000002 
+ 00029495  0x00008040 force  0x00000005 , 0x00000039 
+ 00029496  0x00008041 call  0x00007340 
+ 00029497  0x00008042 fetch  0x00000001 , 0x000005a1 
+ 00029498  0x00008043 iforce  0x00000011 
+ 00029499  0x00008044 fetch  0x00000001 , 0x00000595 
+ 00029500  0x00008045 store  0x00000001 , 0x000005a1 
+ 00029501  0x00008046 deposit  0x00000011 
+ 00029502  0x00008047 store  0x00000001 , 0x00000595 
+ 00029503  0x00008048 rtn 
+ 00029504  0x0000804b and  0x00000002 , 0x0000000f , 0x00000012 
+ 00029505  0x0000804d and  0x00000002 , 0x0000000f , 0x0000003f 
+ 00029506  0x0000804e arg  0x00000592 , 0x00000005 
+ 00029507  0x0000804f iadd  0x00000005 , 0x00000005 
+ 00029508  0x00008050 ifetch  0x00000001 , 0x00000005 
+ 00029509  0x00008051 iforce  0x00000013 
+ 00029510  0x00008052 deposit  0x00000011 
+ 00029511  0x00008053 istore  0x00000001 , 0x00000005 
+ 00029512  0x00008054 copy  0x00000013 , 0x00000011 
+ 00029513  0x00008055 rshift4  0x00000002 , 0x00000002 
+ 00029514  0x00008056 loop  0x00007341 
+ 00029515  0x00008057 setarg  0x00000592 
+ 00029516  0x00008058 iadd  0x00000012 , 0x00000005 
+ 00029517  0x00008059 deposit  0x00000011 
+ 00029518  0x0000805a istore  0x00000001 , 0x00000005 
+ 00029519  0x0000805b rtn 
+ 00029520  0x0000805e enable  0x00000028 
+ 00029521  0x0000805f branch  0x00007353 
+ 00029522  0x00008062 disable  0x00000028 
+ 00029523  0x00008064 force  0x00000010 , 0x00000039 
+ 00029524  0x00008066 ifetcht  0x00000001 , 0x00000011 
+ 00029525  0x00008067 ifetch  0x00000001 , 0x00000012 
+ 00029526  0x00008068 branch  0x00007359 , 0x00000028 
+ 00029527  0x00008069 ixor  0x00000002 , 0x0000003f 
+ 00029528  0x0000806a branch  0x0000735a 
+ 00029529  0x0000806c iadd  0x00000002 , 0x0000003f 
+ 00029530  0x0000806e istore  0x00000001 , 0x00000005 
+ 00029531  0x0000806f increase  0x00000001 , 0x00000011 
+ 00029532  0x00008070 increase  0x00000001 , 0x00000012 
+ 00029533  0x00008071 loop  0x00007354 
+ 00029534  0x00008072 rtn 
+ 00029535  0x00008076 arg  0x000005b2 , 0x00000005 
+ 00029536  0x00008077 ifetch  0x00000006 , 0x00000011 
+ 00029537  0x00008078 istore  0x00000006 , 0x00000005 
+ 00029538  0x00008079 branch  0x00007365 , 0x00000028 
+ 00029539  0x0000807a ifetch  0x00000006 , 0x00000011 
+ 00029540  0x0000807b branch  0x00007366 
+ 00029541  0x0000807d ifetch  0x00000006 , 0x00000006 
+ 00029542  0x0000807f istore  0x00000006 , 0x00000005 
+ 00029543  0x00008080 ifetch  0x00000004 , 0x00000011 
+ 00029544  0x00008081 istore  0x00000004 , 0x00000005 
+ 00029545  0x00008082 rtn 
+ 00029546  0x00008085 arg  0x000041be , 0x00000006 
+ 00029547  0x00008086 arg  0x000005a2 , 0x00000005 
+ 00029548  0x00008087 arg  0x00000000 , 0x00000002 
+ 00029549  0x00008088 setarg  0x008395a7 
+ 00029550  0x00008089 call  0x0000738b 
+ 00029551  0x0000808a setarg  0x00b3c1df 
+ 00029552  0x0000808b call  0x0000738b 
+ 00029553  0x0000808c setarg  0x0000e5e9 
+ 00029554  0x0000808d call  0x0000738c 
+ 00029555  0x0000808e copy  0x00000002 , 0x00000014 
+ 00029556  0x0000808f disable  0x00000028 
+ 00029557  0x00008090 call  0x00007379 
+ 00029558  0x00008091 copy  0x00000014 , 0x00000002 
+ 00029559  0x00008092 enable  0x00000028 
+ 00029560  0x00008093 branch  0x00007379 
+ 00029561  0x00008096 force  0x00000008 , 0x00000039 
+ 00029562  0x00008098 ifetch  0x00000001 , 0x00000006 
+ 00029563  0x00008099 compare  0x00000001 , 0x00000039 , 0x00000001 
+ 00029564  0x0000809a branch  0x00007380 , 0x00000028 
+ 00029565  0x0000809b branch  0x00007381 , 0x00000001 
+ 00029566  0x0000809d iadd  0x00000002 , 0x0000003f 
+ 00029567  0x0000809e branch  0x00007382 
+ 00029568  0x000080a0 branch  0x0000737e , 0x00000001 
+ 00029569  0x000080a2 ixor  0x00000002 , 0x0000003f 
+ 00029570  0x000080a4 istore  0x00000001 , 0x00000005 
+ 00029571  0x000080a5 rshift8  0x00000002 , 0x00000002 
+ 00029572  0x000080a6 loop  0x0000737a 
+ 00029573  0x000080a7 rtn 
+ 00029574  0x000080aa fetch  0x00000006 , 0x00000596 
+ 00029575  0x000080ab store  0x00000006 , 0x00000056 
+ 00029576  0x000080ac ifetch  0x00000006 , 0x00000006 
+ 00029577  0x000080ad istore  0x00000006 , 0x00000005 
+ 00029578  0x000080ae rtn 
+ 00029579  0x000080b1 lshift8  0x00000002 , 0x00000002 
+ 00029580  0x000080b3 lshift16  0x00000002 , 0x00000002 
+ 00029581  0x000080b4 ior  0x00000002 , 0x00000002 
+ 00029582  0x000080b5 rtn 
+ 00029583  0x000080ba branch  0x0000738f 
+ 00029584  0x000080bf bpatchx  0x000000e0 , 0x0000403c 
+ 00029585  0x000080c0 call  0x0000742b 
+ 00029586  0x000080c1 arg  0x00004419 , 0x00000005 
+ 00029587  0x000080c2 branch  0x00007497 
+ 00029588  0x000080c6 arg  0x0000443a , 0x00000005 
+ 00029589  0x000080c7 branch  0x00007397 , 0x00000029 
+ 00029590  0x000080c8 arg  0x0000042f , 0x00000005 
+ 00029591  0x000080ca copy  0x00000006 , 0x00000011 
+ 00029592  0x000080cb call  0x00007ebf 
+ 00029593  0x000080cc call  0x00007440 
+ 00029594  0x000080cd arg  0x0000442a , 0x00000006 
+ 00029595  0x000080ce branch  0x000074b0 
+ 00029596  0x000080d1 arg  0x0000042f , 0x00000011 
+ 00029597  0x000080d2 branch  0x0000739f , 0x00000029 
+ 00029598  0x000080d3 arg  0x0000443a , 0x00000011 
+ 00029599  0x000080d5 copy  0x00000011 , 0x00000005 
+ 00029600  0x000080d6 call  0x0000630c 
+ 00029601  0x000080d7 branch  0x00007440 
+ 00029602  0x000080da arg  0x000044aa , 0x00000006 
+ 00029603  0x000080db call  0x00007486 
+ 00029604  0x000080dc arg  0x00004419 , 0x00000006 
+ 00029605  0x000080dd call  0x00007487 
+ 00029606  0x000080de force  0x00000038 , 0x00000036 
+ 00029607  0x000080df force  0x00000000 , 0x00000036 
+ 00029608  0x000080e0 call  0x0000741d 
+ 00029609  0x000080e1 arg  0x0000047c , 0x00000005 
+ 00029610  0x000080e2 branch  0x00007497 
+ 00029611  0x000080e6 force  0x00000049 , 0x0000003f 
+ 00029612  0x000080e7 branch  0x000073ae 
+ 00029613  0x000080e9 force  0x00000001 , 0x0000003f 
+ 00029614  0x000080eb force  0x00000000 , 0x00000038 
+ 00029615  0x000080ec lshift8  0x00000002 , 0x0000002f 
+ 00029616  0x000080ed ior  0x0000002f , 0x0000002f 
+ 00029617  0x000080ee increase  0x00000001 , 0x00000038 
+ 00029618  0x000080ef rshift8  0x00000002 , 0x0000002f 
+ 00029619  0x000080f0 rshift16  0x0000002f , 0x0000002f 
+ 00029620  0x000080f1 fetch  0x00000002 , 0x00004411 
+ 00029621  0x000080f2 lshift16 , 0x0000003f , 0x0000003f 
+ 00029622  0x000080f3 ior  0x0000002f , 0x0000002f 
+ 00029623  0x000080f4 increase  0x00000001 , 0x00000038 
+ 00029624  0x000080f5 ifetch  0x00000004 , 0x00000006 
+ 00029625  0x000080f6 iforce  0x0000002f 
+ 00029626  0x000080f7 increase  0x00000001 , 0x00000038 
+ 00029627  0x000080f8 ifetch  0x00000002 , 0x00000006 
+ 00029628  0x000080f9 byteswap  0x00000011 , 0x0000002f 
+ 00029629  0x000080fa lshift16  0x0000002f , 0x0000002f 
+ 00029630  0x000080fb ior  0x0000002f , 0x0000002f 
+ 00029631  0x000080fc increase  0x00000001 , 0x00000038 
+ 00029632  0x000080fd rtn 
+ 00029633  0x00008102 add  0x00000013 , 0x00000001 , 0x00000006 
+ 00029634  0x00008103 ifetch  0x00000001 , 0x00000006 
+ 00029635  0x00008104 iforce  0x00000011 
+ 00029636  0x00008105 call  0x000073ab 
+ 00029637  0x00008106 call  0x0000741f 
+ 00029638  0x00008108 force  0x00000000 , 0x00000038 
+ 00029639  0x00008109 ifetch  0x00000001 , 0x00000013 
+ 00029640  0x0000810a and_into  0x00000003 , 0x0000003f 
+ 00029641  0x0000810b lshift16  0x0000003f , 0x0000002f 
+ 00029642  0x0000810c set1  0x00000008 , 0x0000002f 
+ 00029643  0x0000810d call  0x0000748f 
+ 00029644  0x0000810e call  0x00007422 
+ 00029645  0x00008110 copy  0x00000011 , 0x00000039 
+ 00029646  0x00008111 add  0x00000013 , 0x00000002 , 0x00000006 
+ 00029647  0x00008112 call  0x0000746e 
+ 00029648  0x00008114 call  0x00007478 
+ 00029649  0x00008115 call  0x00007422 
+ 00029650  0x00008116 deposit  0x00000039 
+ 00029651  0x00008117 branch  0x000073d5 , 0x00000034 
+ 00029652  0x00008118 branch  0x000073d0 
+ 00029653  0x0000811a force  0x0000000c , 0x00000038 
+ 00029654  0x0000811b deposit  0x0000002f 
+ 00029655  0x0000811c store  0x00000004 , 0x00000417 
+ 00029656  0x0000811d rtn 
+ 00029657  0x00008120 increase  0x00000001 , 0x00000011 
+ 00029658  0x00008121 call  0x000073ad 
+ 00029659  0x00008122 copy  0x00000013 , 0x00000006 
+ 00029660  0x00008123 call  0x00007482 
+ 00029661  0x00008124 call  0x00007425 
+ 00029662  0x00008125 call  0x0000749e 
+ 00029663  0x00008126 increase  0x00000010 , 0x00000013 
+ 00029664  0x00008127 increase  0xfffffff0 , 0x00000012 
+ 00029665  0x00008128 branch  0x000073d9 , 0x00000002 
+ 00029666  0x00008129 rtn 
+ 00029667  0x0000812c bpatchx  0x000000e1 , 0x0000403c 
+ 00029668  0x0000812d arg  0x000043dc , 0x00000013 
+ 00029669  0x0000812e fetcht  0x00000005 , 0x00004403 
+ 00029670  0x0000812f call  0x000073c1 
+ 00029671  0x00008130 force  0x00000008 , 0x00000038 
+ 00029672  0x00008131 iforce  0x0000002f 
+ 00029673  0x00008132 force  0x00000000 , 0x00000011 
+ 00029674  0x00008133 call  0x000073ad 
+ 00029675  0x00008134 call  0x00007425 
+ 00029676  0x00008135 arg  0x000043de , 0x00000013 
+ 00029677  0x00008136 fetch  0x00000001 , 0x000043dd 
+ 00029678  0x00008137 add  0x0000003f , 0xffffffff , 0x00000012 
+ 00029679  0x00008138 iadd  0x00000013 , 0x00000005 
+ 00029680  0x00008139 force  0x0000000c , 0x00000038 
+ 00029681  0x0000813a deposit  0x0000002f 
+ 00029682  0x0000813b istore  0x00000004 , 0x00000005 
+ 00029683  0x0000813c call  0x000073d9 
+ 00029684  0x0000813d fetch  0x00000001 , 0x000043dd 
+ 00029685  0x0000813e increase  0x00000004 , 0x0000003f 
+ 00029686  0x0000813f store  0x00000001 , 0x000043dd 
+ 00029687  0x00008140 fetcht  0x00000005 , 0x00004403 
+ 00029688  0x00008141 increase  0x00000001 , 0x00000002 
+ 00029689  0x00008142 storet  0x00000005 , 0x00004403 
+ 00029690  0x00008143 rtn 
+ 00029691  0x00008146 bpatchx  0x000000e2 , 0x0000403c 
+ 00029692  0x00008147 fetch  0x00000001 , 0x000002da 
+ 00029693  0x00008148 sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00029694  0x00008149 branch  0x000073ff , 0x00000002 
+ 00029695  0x0000814b arg  0x000002db , 0x00000013 
+ 00029696  0x0000814c add  0x0000003f , 0xffffffff , 0x00000012 
+ 00029697  0x0000814d increase  0xfffffffc , 0x0000003f 
+ 00029698  0x0000814e store  0x00000001 , 0x000002da 
+ 00029699  0x0000814f iadd  0x00000013 , 0x00000006 
+ 00029700  0x00008150 ifetch  0x00000004 , 0x00000006 
+ 00029701  0x00008151 force  0x00000008 , 0x00000038 
+ 00029702  0x00008152 iforce  0x0000002f 
+ 00029703  0x00008153 force  0x00000000 , 0x00000011 
+ 00029704  0x00008154 fetcht  0x00000005 , 0x00004408 
+ 00029705  0x00008155 call  0x000073ad 
+ 00029706  0x00008156 call  0x00007425 
+ 00029707  0x00008157 force  0x0000000c , 0x00000038 
+ 00029708  0x00008158 deposit  0x0000002f 
+ 00029709  0x00008159 store  0x00000004 , 0x0000041b 
+ 00029710  0x0000815a call  0x000073d9 
+ 00029711  0x0000815b arg  0x000002d9 , 0x00000013 
+ 00029712  0x0000815c call  0x000073c1 
+ 00029713  0x0000815d fetcht  0x00000004 , 0x0000041b 
+ 00029714  0x0000815e isub  0x00000002 , 0x0000003f 
+ 00029715  0x0000815f nrtn  0x00000034 
+ 00029716  0x00008160 fetch  0x00000004 , 0x0000440d 
+ 00029717  0x00008161 isub  0x00000002 , 0x0000003f 
+ 00029718  0x00008162 rtn  0x00000034 
+ 00029719  0x00008163 storet  0x00000004 , 0x0000440d 
+ 00029720  0x00008164 fetch  0x00000005 , 0x00004408 
+ 00029721  0x00008165 increase  0x00000001 , 0x0000003f 
+ 00029722  0x00008166 store  0x00000005 , 0x00004408 
+ 00029723  0x00008167 force  0x00000000 , 0x0000003f 
+ 00029724  0x00008168 rtn 
+ 00029725  0x0000816b nbranch  0x0000741d , 0x00000037 
+ 00029726  0x0000816c rtn 
+ 00029727  0x0000816f force  0x00000030 , 0x00000036 
+ 00029728  0x00008170 force  0x00000000 , 0x00000036 
+ 00029729  0x00008171 branch  0x0000741d 
+ 00029730  0x00008174 force  0x00000032 , 0x00000036 
+ 00029731  0x00008175 force  0x00000002 , 0x00000036 
+ 00029732  0x00008176 branch  0x0000741d 
+ 00029733  0x00008179 force  0x00000034 , 0x00000036 
+ 00029734  0x0000817a force  0x00000004 , 0x00000036 
+ 00029735  0x0000817b branch  0x0000741d 
+ 00029736  0x0000817f force  0x00000001 , 0x00000036 
+ 00029737  0x00008180 force  0x00000000 , 0x00000036 
+ 00029738  0x00008181 rtn 
+ 00029739  0x00008183 force  0x00000000 , 0x00000038 
+ 00029740  0x00008184 fetch  0x00000004 , 0x0000042f 
+ 00029741  0x00008185 iforce  0x0000002f 
+ 00029742  0x00008186 increase  0x00000001 , 0x00000038 
+ 00029743  0x00008187 ifetch  0x00000004 , 0x00000006 
+ 00029744  0x00008188 iforce  0x0000002f 
+ 00029745  0x00008189 increase  0x00000001 , 0x00000038 
+ 00029746  0x0000818a fetch  0x00000004 , 0x0000443a 
+ 00029747  0x0000818b iforce  0x0000002f 
+ 00029748  0x0000818c increase  0x00000001 , 0x00000038 
+ 00029749  0x0000818d ifetch  0x00000004 , 0x00000006 
+ 00029750  0x0000818e iforce  0x0000002f 
+ 00029751  0x0000818f increase  0x00000001 , 0x00000038 
+ 00029752  0x00008190 call  0x00007492 
+ 00029753  0x00008191 increase  0xfffffffc , 0x00000038 
+ 00029754  0x00008192 fetch  0x00000004 , 0x000044c7 
+ 00029755  0x00008193 copy  0x0000003f , 0x0000002f 
+ 00029756  0x00008194 increase  0x00000004 , 0x00000038 
+ 00029757  0x00008195 force  0x00000038 , 0x00000036 
+ 00029758  0x00008196 force  0x00000008 , 0x00000036 
+ 00029759  0x00008197 branch  0x0000741d 
+ 00029760  0x0000819b bpatchx  0x000000e3 , 0x0000403c 
+ 00029761  0x0000819c fetch  0x00000006 , 0x000044a0 
+ 00029762  0x0000819d fetcht  0x00000006 , 0x0000044f 
+ 00029763  0x0000819e branch  0x00007446 , 0x00000029 
+ 00029764  0x0000819f fetch  0x00000006 , 0x0000044f 
+ 00029765  0x000081a0 fetcht  0x00000006 , 0x000044a0 
+ 00029766  0x000081a2 force  0x00000008 , 0x00000038 
+ 00029767  0x000081a3 copy  0x00000002 , 0x0000002f 
+ 00029768  0x000081a4 increase  0x00000001 , 0x00000038 
+ 00029769  0x000081a5 rshift32  0x00000002 , 0x0000002f 
+ 00029770  0x000081a6 lshift16  0x0000003f , 0x0000003f 
+ 00029771  0x000081a7 ior  0x0000002f , 0x0000002f 
+ 00029772  0x000081a8 increase  0x00000001 , 0x00000038 
+ 00029773  0x000081a9 rshift32  0x0000003f , 0x0000002f 
+ 00029774  0x000081aa increase  0x00000001 , 0x00000038 
+ 00029775  0x000081ab force  0x00000000 , 0x0000002f 
+ 00029776  0x000081ac force  0x00000000 , 0x0000003f 
+ 00029777  0x000081ad fetch  0x00000001 , 0x0000448e 
+ 00029778  0x000081ae fetcht  0x00000001 , 0x00004485 
+ 00029779  0x000081af nbranch  0x00007456 , 0x00000029 
+ 00029780  0x000081b1 fetch  0x00000001 , 0x00004495 
+ 00029781  0x000081b2 fetcht  0x00000001 , 0x0000448e 
+ 00029782  0x000081b4 store  0x00000001 , 0x0000444a 
+ 00029783  0x000081b5 storet  0x00000001 , 0x0000444b 
+ 00029784  0x000081b6 force  0x00000000 , 0x00000038 
+ 00029785  0x000081b7 arg  0x0000444a , 0x00000012 
+ 00029786  0x000081b8 force  0x00000004 , 0x00000039 
+ 00029787  0x000081ba ifetch  0x00000004 , 0x00000011 
+ 00029788  0x000081bb ifetcht  0x00000004 , 0x00000012 
+ 00029789  0x000081bc ixor  0x00000002 , 0x0000002f 
+ 00029790  0x000081bd increase  0x00000001 , 0x00000038 
+ 00029791  0x000081be increase  0x00000004 , 0x00000011 
+ 00029792  0x000081bf increase  0x00000004 , 0x00000012 
+ 00029793  0x000081c0 loop  0x0000745b 
+ 00029794  0x000081c1 call  0x00007492 
+ 00029795  0x000081c2 increase  0xfffffffc , 0x00000038 
+ 00029796  0x000081c3 fetch  0x00000004 , 0x000044c7 
+ 00029797  0x000081c4 copy  0x0000003f , 0x0000002f 
+ 00029798  0x000081c5 increase  0x00000004 , 0x00000038 
+ 00029799  0x000081c6 force  0x00000038 , 0x00000036 
+ 00029800  0x000081c7 force  0x0000000c , 0x00000036 
+ 00029801  0x000081c8 call  0x0000741d 
+ 00029802  0x000081ca call  0x00007491 
+ 00029803  0x000081cb force  0x0000003a , 0x00000036 
+ 00029804  0x000081cc force  0x00000008 , 0x00000036 
+ 00029805  0x000081cd branch  0x0000741d 
+ 00029806  0x000081d0 compare  0x00000000 , 0x00000039 , 0x00000003 
+ 00029807  0x000081d1 rtn  0x00000001 
+ 00029808  0x000081d2 deposit  0x00000006 
+ 00029809  0x000081d3 iadd  0x00000039 , 0x00000005 
+ 00029810  0x000081d4 force  0x00000000 , 0x0000003f 
+ 00029811  0x000081d6 istore  0x00000001 , 0x00000005 
+ 00029812  0x000081d7 increase  0x00000001 , 0x00000039 
+ 00029813  0x000081d8 compare  0x00000000 , 0x00000039 , 0x00000003 
+ 00029814  0x000081d9 rtn  0x00000001 
+ 00029815  0x000081da branch  0x00007473 
+ 00029816  0x000081dd force  0x00000000 , 0x00000038 
+ 00029817  0x000081df deposit  0x00000039 
+ 00029818  0x000081e0 branch  0x0000747d , 0x00000034 
+ 00029819  0x000081e1 ifetch  0x00000004 , 0x00000006 
+ 00029820  0x000081e2 increase  0xfffffffc , 0x00000039 
+ 00029821  0x000081e4 iforce  0x0000002f 
+ 00029822  0x000081e5 increase  0x00000001 , 0x00000038 
+ 00029823  0x000081e6 compare  0x00000004 , 0x00000038 , 0x0000000f 
+ 00029824  0x000081e7 rtn  0x00000001 
+ 00029825  0x000081e8 branch  0x00007479 
+ 00029826  0x000081eb force  0x00000008 , 0x00000038 
+ 00029827  0x000081ec branch  0x00007487 
+ 00029828  0x000081ee force  0x00000004 , 0x00000038 
+ 00029829  0x000081ef branch  0x00007487 
+ 00029830  0x000081f1 force  0x00000000 , 0x00000038 
+ 00029831  0x000081f3 force  0x00000004 , 0x00000039 
+ 00029832  0x000081f5 ifetch  0x00000004 , 0x00000006 
+ 00029833  0x000081f6 iforce  0x0000002f 
+ 00029834  0x000081f7 increase  0x00000001 , 0x00000038 
+ 00029835  0x000081f8 loop  0x00007488 
+ 00029836  0x000081f9 rtn 
+ 00029837  0x000081fc arg  0x0000047c , 0x00000006 
+ 00029838  0x000081fd branch  0x00007484 
+ 00029839  0x00008200 force  0x00000004 , 0x00000039 
+ 00029840  0x00008201 branch  0x00007494 
+ 00029841  0x00008204 force  0x00000000 , 0x00000038 
+ 00029842  0x00008206 force  0x00000004 , 0x00000039 
+ 00029843  0x00008208 force  0x00000000 , 0x0000002f 
+ 00029844  0x0000820a increase  0x00000001 , 0x00000038 
+ 00029845  0x0000820b loop  0x00007493 
+ 00029846  0x0000820c rtn 
+ 00029847  0x0000820f force  0x0000000c , 0x00000038 
+ 00029848  0x00008210 force  0x00000004 , 0x00000039 
+ 00029849  0x00008212 deposit  0x0000002f 
+ 00029850  0x00008213 istore  0x00000004 , 0x00000005 
+ 00029851  0x00008214 increase  0x00000001 , 0x00000038 
+ 00029852  0x00008215 loop  0x00007499 
+ 00029853  0x00008216 rtn 
+ 00029854  0x00008219 force  0x0000000c , 0x00000038 
+ 00029855  0x0000821a copy  0x00000013 , 0x00000005 
+ 00029856  0x0000821b add  0x00000012 , 0x00000001 , 0x00000039 
+ 00029857  0x0000821c sub  0x00000039 , 0x0000000f , 0x0000003e 
+ 00029858  0x0000821d branch  0x000074a4 , 0x00000002 
+ 00029859  0x0000821e force  0x00000010 , 0x00000039 
+ 00029860  0x00008220 deposit  0x0000002f 
+ 00029861  0x00008221 sub  0x00000039 , 0x00000003 , 0x0000003e 
+ 00029862  0x00008222 branch  0x000074ac , 0x00000002 
+ 00029863  0x00008223 istore  0x00000004 , 0x00000005 
+ 00029864  0x00008224 increase  0xfffffffc , 0x00000039 
+ 00029865  0x00008225 rtn  0x00000005 
+ 00029866  0x00008226 increase  0x00000001 , 0x00000038 
+ 00029867  0x00008227 branch  0x000074a4 
+ 00029868  0x00008229 istore  0x00000001 , 0x00000005 
+ 00029869  0x0000822a rshift8  0x0000003f , 0x0000003f 
+ 00029870  0x0000822b loop  0x000074ac 
+ 00029871  0x0000822c rtn 
+ 00029872  0x00008230 force  0x0000000c , 0x00000038 
+ 00029873  0x00008231 force  0x00000004 , 0x00000039 
+ 00029874  0x00008233 ifetch  0x00000004 , 0x00000006 
+ 00029875  0x00008234 isub  0x0000002f , 0x0000003e 
+ 00029876  0x00008235 nrtn  0x00000005 
+ 00029877  0x00008236 increase  0x00000001 , 0x00000038 
+ 00029878  0x00008237 loop  0x000074b2 
+ 00029879  0x00008238 force  0x00000000 , 0x0000003e 
+ 00029880  0x00008239 rtn 
+ 00029881  0x0000823c hfetch  0x00000001 , 0x00008050 
+ 00029882  0x0000823d set0  0x00000000 , 0x0000003f 
+ 00029883  0x0000823e hstore  0x00000001 , 0x00008050 
+ 00029884  0x0000823f rtn 
+ 00029885  0x00008242 hfetch  0x00000001 , 0x00008050 
+ 00029886  0x00008243 set1  0x00000000 , 0x0000003f 
+ 00029887  0x00008244 hstore  0x00000001 , 0x00008050 
+ 00029888  0x00008245 rtn 
+ 00029889  0x00008248 arg  0x00000886 , 0x00000005 
+ 00029890  0x00008249 setsect  0x00000000 , 0x0003ffff 
+ 00029891  0x0000824a setsect  0x00000001 , 0x0003ffff 
+ 00029892  0x0000824b setsect  0x00000002 , 0x0003ffff 
+ 00029893  0x0000824c setsect  0x00000003 , 0x0003fbff 
+ 00029894  0x0000824d istore  0x00000009 , 0x00000005 
+ 00029895  0x0000824e setsect  0x00000000 , 0x0003ffff 
+ 00029896  0x0000824f setsect  0x00000001 , 0x0003ffff 
+ 00029897  0x00008250 setsect  0x00000002 , 0x0003ffff 
+ 00029898  0x00008251 setsect  0x00000003 , 0x0003ffff 
+ 00029899  0x00008252 istore  0x00000009 , 0x00000005 
+ 00029900  0x00008253 setsect  0x00000000 , 0x0003ffff 
+ 00029901  0x00008254 setsect  0x00000001 , 0x0003ffff 
+ 00029902  0x00008255 setsect  0x00000002 , 0x0003cfff 
+ 00029903  0x00008256 setsect  0x00000003 , 0x0003ffff 
+ 00029904  0x00008257 istore  0x00000009 , 0x00000005 
+ 00029905  0x00008258 setsect  0x00000000 , 0x0003ffff 
+ 00029906  0x00008259 setsect  0x00000001 , 0x0003ffff 
+ 00029907  0x0000825a setsect  0x00000002 , 0x0003ffef 
+ 00029908  0x0000825b setsect  0x00000003 , 0x0003ffff 
+ 00029909  0x0000825c istore  0x00000009 , 0x00000005 
+ 00029910  0x0000825d setsect  0x00000000 , 0x0003ffff 
+ 00029911  0x0000825e setsect  0x00000001 , 0x0003ffff 
+ 00029912  0x0000825f setsect  0x00000002 , 0x0003ffff 
+ 00029913  0x00008260 setsect  0x00000003 , 0x0003ffff 
+ 00029914  0x00008261 istore  0x00000009 , 0x00000005 
+ 00029915  0x00008262 setsect  0x00000000 , 0x0003ffff 
+ 00029916  0x00008263 setsect  0x00000001 , 0x00026c7f 
+ 00029917  0x00008264 setsect  0x00000002 , 0x0000146b 
+ 00029918  0x00008265 setsect  0x00000003 , 0x00037bb3 
+ 00029919  0x00008266 istore  0x00000009 , 0x00000005 
+ 00029920  0x00008267 setsect  0x00000000 , 0x0001feb8 
+ 00029921  0x00008268 setsect  0x00000001 , 0x00010c12 
+ 00029922  0x00008269 setsect  0x00000002 , 0x0002b722 
+ 00029923  0x0000826a setsect  0x00000003 , 0x00029fa6 
+ 00029924  0x0000826b istore  0x00000009 , 0x00000005 
+ 00029925  0x0000826c setsect  0x00000000 , 0x0000e70f 
+ 00029926  0x0000826d setsect  0x00000001 , 0x00016720 
+ 00029927  0x0000826e setsect  0x00000002 , 0x0000519e 
+ 00029928  0x0000826f setsect  0x00000003 , 0x00019084 
+ 00029929  0x00008270 istore  0x00000009 , 0x00000005 
+ 00029930  0x00008271 setsect  0x00000000 , 0x00031012 
+ 00029931  0x00008272 setsect  0x00000001 , 0x000360bf 
+ 00029932  0x00008273 setsect  0x00000002 , 0x0003f0af 
+ 00029933  0x00008274 setsect  0x00000003 , 0x000003d3 
+ 00029934  0x00008275 istore  0x00000009 , 0x00000005 
+ 00029935  0x00008276 setsect  0x00000000 , 0x0003a188 
+ 00029936  0x00008277 setsect  0x00000001 , 0x00003ad0 
+ 00029937  0x00008278 setsect  0x00000002 , 0x0003cbf2 
+ 00029938  0x00008279 setsect  0x00000003 , 0x000243d9 
+ 00029939  0x0000827a istore  0x00000009 , 0x00000005 
+ 00029940  0x0000827b setsect  0x00000000 , 0x0002b030 
+ 00029941  0x0000827c setsect  0x00000001 , 0x00036a03 
+ 00029942  0x0000827d setsect  0x00000002 , 0x00011188 
+ 00029943  0x0000827e setsect  0x00000003 , 0x0001e520 
+ 00029944  0x0000827f istore  0x00000009 , 0x00000005 
+ 00029945  0x00008280 setsect  0x00000000 , 0x0003a11e 
+ 00029946  0x00008281 setsect  0x00000001 , 0x0000fe5d 
+ 00029947  0x00008282 setsect  0x00000002 , 0x0000dd57 
+ 00029948  0x00008283 setsect  0x00000003 , 0x0001ac93 
+ 00029949  0x00008284 istore  0x00000009 , 0x00000005 
+ 00029950  0x00008285 setsect  0x00000000 , 0x000011ed 
+ 00029951  0x00008286 setsect  0x00000001 , 0x000218c4 
+ 00029952  0x00008287 setsect  0x00000002 , 0x00008da7 
+ 00029953  0x00008288 setsect  0x00000003 , 0x000257ff 
+ 00029954  0x00008289 istore  0x00000009 , 0x00000005 
+ 00029955  0x0000828a setsect  0x00000000 , 0x0003192b 
+ 00029956  0x0000828b setsect  0x00000001 , 0x00034641 
+ 00029957  0x0000828c setsect  0x00000002 , 0x0001be0c 
+ 00029958  0x0000828d setsect  0x00000003 , 0x000366ad 
+ 00029959  0x0000828e istore  0x00000009 , 0x00000005 
+ 00029960  0x0000828f setsect  0x00000000 , 0x00001f83 
+ 00029961  0x00008290 setsect  0x00000001 , 0x00015a23 
+ 00029962  0x00008291 setsect  0x00000002 , 0x0003f9b0 
+ 00029963  0x00008292 setsect  0x00000003 , 0x00003949 
+ 00029964  0x00008293 istore  0x00000009 , 0x00000005 
+ 00029965  0x00008294 setsect  0x00000000 , 0x00013a51 
+ 00029966  0x00008295 setsect  0x00000001 , 0x000153fd 
+ 00029967  0x00008296 setsect  0x00000002 , 0x0003372a 
+ 00029968  0x00008297 setsect  0x00000003 , 0x0000f1bb 
+ 00029969  0x00008298 istore  0x00000009 , 0x00000005 
+ 00029970  0x00008299 setsect  0x00000000 , 0x0003ae85 
+ 00029971  0x0000829a setsect  0x00000001 , 0x0001eed9 
+ 00029972  0x0000829b setsect  0x00000002 , 0x00009e66 
+ 00029973  0x0000829c setsect  0x00000003 , 0x000001a8 
+ 00029974  0x0000829d istore  0x00000008 , 0x00000005 
+ 00029975  0x0000829e rtn 
+ 00029976  0x000082a3 arg  0x0000091e , 0x00000005 
+ 00029977  0x000082a4 setsect  0x00000000 , 0x0003ffff 
+ 00029978  0x000082a5 setsect  0x00000001 , 0x0003ffff 
+ 00029979  0x000082a6 setsect  0x00000002 , 0x0003ffff 
+ 00029980  0x000082a7 setsect  0x00000003 , 0x0003ffff 
+ 00029981  0x000082a8 istore  0x00000009 , 0x00000005 
+ 00029982  0x000082a9 setsect  0x00000000 , 0x0003ffff 
+ 00029983  0x000082aa setsect  0x00000001 , 0x0000003f 
+ 00029984  0x000082ab setsect  0x00000002 , 0x00000000 
+ 00029985  0x000082ac setsect  0x00000003 , 0x00000000 
+ 00029986  0x000082ad istore  0x00000009 , 0x00000005 
+ 00029987  0x000082ae setsect  0x00000000 , 0x00000000 
+ 00029988  0x000082af setsect  0x00000001 , 0x00000000 
+ 00029989  0x000082b0 setsect  0x00000002 , 0x00001000 
+ 00029990  0x000082b1 setsect  0x00000003 , 0x00000000 
+ 00029991  0x000082b2 istore  0x00000009 , 0x00000005 
+ 00029992  0x000082b3 setsect  0x00000000 , 0x0003ff00 
+ 00029993  0x000082b4 setsect  0x00000001 , 0x0003ffff 
+ 00029994  0x000082b5 setsect  0x00000002 , 0x0003ffcf 
+ 00029995  0x000082b6 setsect  0x00000003 , 0x0003ffff 
+ 00029996  0x000082b7 istore  0x00000009 , 0x00000005 
+ 00029997  0x000082b8 setsect  0x00000000 , 0x0003ffff 
+ 00029998  0x000082b9 setsect  0x00000001 , 0x0003ffff 
+ 00029999  0x000082ba setsect  0x00000002 , 0x0003ffff 
+ 00030000  0x000082bb setsect  0x00000003 , 0x000003ff 
+ 00030001  0x000082bc istore  0x00000009 , 0x00000005 
+ 00030002  0x000082bd setsect  0x00000000 , 0x00000000 
+ 00030003  0x000082be setsect  0x00000001 , 0x00000000 
+ 00030004  0x000082bf setsect  0x00000002 , 0x00000000 
+ 00030005  0x000082c0 setsect  0x00000003 , 0x00000000 
+ 00030006  0x000082c1 istore  0x00000009 , 0x00000005 
+ 00030007  0x000082c2 setsect  0x00000000 , 0x00010000 
+ 00030008  0x000082c3 setsect  0x00000001 , 0x00000000 
+ 00030009  0x000082c4 setsect  0x00000002 , 0x0003f000 
+ 00030010  0x000082c5 setsect  0x00000003 , 0x0003ffff 
+ 00030011  0x000082c6 istore  0x00000009 , 0x00000005 
+ 00030012  0x000082c7 setsect  0x00000000 , 0x000296ff 
+ 00030013  0x000082c8 setsect  0x00000001 , 0x00022630 
+ 00030014  0x000082c9 setsect  0x00000002 , 0x0003945d 
+ 00030015  0x000082ca setsect  0x00000003 , 0x0003d284 
+ 00030016  0x000082cb istore  0x00000009 , 0x00000005 
+ 00030017  0x000082cc setsect  0x00000000 , 0x000333a0 
+ 00030018  0x000082cd setsect  0x00000001 , 0x00004b7a 
+ 00030019  0x000082ce setsect  0x00000002 , 0x000037d8 
+ 00030020  0x000082cf setsect  0x00000003 , 0x0003c9dc 
+ 00030021  0x000082d0 istore  0x00000009 , 0x00000005 
+ 00030022  0x000082d1 setsect  0x00000000 , 0x0003a440 
+ 00030023  0x000082d2 setsect  0x00000001 , 0x0001b958 
+ 00030024  0x000082d3 setsect  0x00000002 , 0x00038bce 
+ 00030025  0x000082d4 setsect  0x00000003 , 0x0001091f 
+ 00030026  0x000082d5 istore  0x00000009 , 0x00000005 
+ 00030027  0x000082d6 setsect  0x00000000 , 0x0002e12c 
+ 00030028  0x000082d7 setsect  0x00000001 , 0x0001f47c 
+ 00030029  0x000082d8 setsect  0x00000002 , 0x000356b1 
+ 00030030  0x000082d9 setsect  0x00000003 , 0x0002fd47 
+ 00030031  0x000082da istore  0x00000009 , 0x00000005 
+ 00030032  0x000082db setsect  0x00000000 , 0x00006837 
+ 00030033  0x000082dc setsect  0x00000001 , 0x0002ed90 
+ 00030034  0x000082dd setsect  0x00000002 , 0x0001ecec 
+ 00030035  0x000082de setsect  0x00000003 , 0x0001acc5 
+ 00030036  0x000082df istore  0x00000009 , 0x00000005 
+ 00030037  0x000082e0 setsect  0x00000000 , 0x00023357 
+ 00030038  0x000082e1 setsect  0x00000001 , 0x00018af3 
+ 00030039  0x000082e2 setsect  0x00000002 , 0x0000f9e1 
+ 00030040  0x000082e3 setsect  0x00000003 , 0x000129f0 
+ 00030041  0x000082e4 istore  0x00000009 , 0x00000005 
+ 00030042  0x000082e5 setsect  0x00000000 , 0x0002e7eb 
+ 00030043  0x000082e6 setsect  0x00000001 , 0x0003e6e3 
+ 00030044  0x000082e7 setsect  0x00000002 , 0x0003e1a7 
+ 00030045  0x000082e8 setsect  0x00000003 , 0x00010b8b 
+ 00030046  0x000082e9 istore  0x00000009 , 0x00000005 
+ 00030047  0x000082ea setsect  0x00000000 , 0x00024fe3 
+ 00030048  0x000082eb setsect  0x00000001 , 0x000020ef 
+ 00030049  0x000082ec setsect  0x00000002 , 0x0001b5a6 
+ 00030050  0x000082ed setsect  0x00000003 , 0x0000dc2f 
+ 00030051  0x000082ee istore  0x00000009 , 0x00000005 
+ 00030052  0x000082ef setsect  0x00000000 , 0x00013860 
+ 00030053  0x000082f0 setsect  0x00000001 , 0x0002bd69 
+ 00030054  0x000082f1 setsect  0x00000002 , 0x0000391a 
+ 00030055  0x000082f2 setsect  0x00000003 , 0x0001b222 
+ 00030056  0x000082f3 istore  0x00000009 , 0x00000005 
+ 00030057  0x000082f4 rtn 
+ 00030058  0x000082f8 fetch  0x00000001 , 0x0000465a 
+ 00030059  0x000082f9 nbranch  0x0000757d , 0x00000034 
+ 00030060  0x000082fa branch  0x00007a77 
+ 00030061  0x000082fd bpatchx  0x000000e4 , 0x0000403c 
+ 00030062  0x000082fe fetch  0x00000001 , 0x0000465a 
+ 00030063  0x000082ff rtn  0x00000034 
+ 00030064  0x00008300 fetch  0x00000001 , 0x000045b1 
+ 00030065  0x00008301 rtnne  0x00000001 
+ 00030066  0x00008302 fetch  0x00000001 , 0x000044be 
+ 00030067  0x00008303 rtn  0x00000034 
+ 00030068  0x00008304 fetch  0x00000001 , 0x000044c3 
+ 00030069  0x00008305 rtneq  0x00000003 
+ 00030070  0x00008306 fetch  0x00000002 , 0x00004682 
+ 00030071  0x00008307 bbit1  0x00000000 , 0x0000757b 
+ 00030072  0x00008308 fetch  0x00000001 , 0x000044c0 
+ 00030073  0x00008309 beq  0x00000000 , 0x00007a77 
+ 00030074  0x0000830a rtn 
+ 00030075  0x0000830c jam  0x00000000 , 0x000044c0 
+ 00030076  0x0000830d rtn 
+ 00030077  0x00008311 bpatchx  0x000000e5 , 0x0000403c 
+ 00030078  0x00008312 fetch  0x00000001 , 0x0000465a 
+ 00030079  0x00008313 branch  0x0000612b , 0x00000034 
+ 00030080  0x00008314 call  0x00006124 
+ 00030081  0x00008315 call  0x00007583 
+ 00030082  0x00008316 branch  0x0000766d 
+ 00030083  0x00008319 setarg  0x00000000 
+ 00030084  0x0000831a store  0x00000008 , 0x000009ae 
+ 00030085  0x0000831b store  0x00000004 , 0x000009b6 
+ 00030086  0x0000831c store  0x00000007 , 0x0000465e 
+ 00030087  0x0000831d rtn 
+ 00030088  0x00008320 jam  0x00000001 , 0x000009b0 
+ 00030089  0x00008321 branch  0x0000758d 
+ 00030090  0x00008323 fetch  0x00000001 , 0x000045b1 
+ 00030091  0x00008324 beq  0x00000001 , 0x0000768a 
+ 00030092  0x00008325 branch  0x00002a8c 
+ 00030093  0x00008327 fetch  0x00000001 , 0x000045b1 
+ 00030094  0x00008328 beq  0x00000001 , 0x00007590 
+ 00030095  0x00008329 branch  0x0000766d 
+ 00030096  0x0000832c call  0x0000768a 
+ 00030097  0x0000832d fetch  0x00000001 , 0x000009af 
+ 00030098  0x0000832e nrtn  0x00000034 
+ 00030099  0x0000832f jam  0x00000003 , 0x000009ae 
+ 00030100  0x00008330 rtn 
+ 00030101  0x00008334 call  0x000075b0 
+ 00030102  0x00008335 arg  0x000009de , 0x00000011 
+ 00030103  0x00008336 arg  0x00000866 , 0x00000005 
+ 00030104  0x00008337 call  0x00007c79 
+ 00030105  0x00008338 arg  0x000009be , 0x00000011 
+ 00030106  0x00008339 arg  0x00000826 , 0x00000005 
+ 00030107  0x0000833a call  0x00007c79 
+ 00030108  0x0000833b arg  0x00000826 , 0x00000011 
+ 00030109  0x0000833c arg  0x000009be , 0x00000012 
+ 00030110  0x0000833d arg  0x00000826 , 0x00000005 
+ 00030111  0x0000833e call  0x00007be1 
+ 00030112  0x0000833f arg  0x0000093e , 0x00000011 
+ 00030113  0x00008340 arg  0x000009be , 0x00000012 
+ 00030114  0x00008341 arg  0x00000846 , 0x00000005 
+ 00030115  0x00008342 call  0x00007be1 
+ 00030116  0x00008343 arg  0x00000846 , 0x00000011 
+ 00030117  0x00008344 arg  0x00000826 , 0x00000012 
+ 00030118  0x00008345 arg  0x00000826 , 0x00000005 
+ 00030119  0x00008346 call  0x00007c7d 
+ 00030120  0x00008347 arg  0x00000806 , 0x00000011 
+ 00030121  0x00008348 arg  0x00000826 , 0x00000012 
+ 00030122  0x00008349 arg  0x00000806 , 0x00000005 
+ 00030123  0x0000834a call  0x00007c7d 
+ 00030124  0x0000834b arg  0x00000020 , 0x00000039 
+ 00030125  0x0000834c arg  0x00000866 , 0x00000011 
+ 00030126  0x0000834d arg  0x00000806 , 0x00000012 
+ 00030127  0x0000834e branch  0x00007f88 
+ 00030128  0x00008351 arg  0x0000097e , 0x00000011 
+ 00030129  0x00008352 arg  0x00000806 , 0x00000005 
+ 00030130  0x00008353 call  0x00007c79 
+ 00030131  0x00008354 arg  0x0000095e , 0x00000011 
+ 00030132  0x00008355 arg  0x00000826 , 0x00000005 
+ 00030133  0x00008356 call  0x00007c79 
+ 00030134  0x00008357 arg  0x00000826 , 0x00000011 
+ 00030135  0x00008358 arg  0x0000095e , 0x00000012 
+ 00030136  0x00008359 arg  0x00000826 , 0x00000005 
+ 00030137  0x0000835a call  0x00007be1 
+ 00030138  0x0000835b arg  0x0000093e , 0x00000011 
+ 00030139  0x0000835c arg  0x0000095e , 0x00000012 
+ 00030140  0x0000835d arg  0x00000846 , 0x00000005 
+ 00030141  0x0000835e call  0x00007be1 
+ 00030142  0x0000835f arg  0x00000846 , 0x00000011 
+ 00030143  0x00008360 arg  0x00000826 , 0x00000012 
+ 00030144  0x00008361 arg  0x00000826 , 0x00000005 
+ 00030145  0x00008362 call  0x00007c7d 
+ 00030146  0x00008363 arg  0x00000806 , 0x00000011 
+ 00030147  0x00008364 arg  0x00000826 , 0x00000012 
+ 00030148  0x00008365 arg  0x00000806 , 0x00000005 
+ 00030149  0x00008366 branch  0x00007c96 
+ 00030150  0x00008369 call  0x000075e1 
+ 00030151  0x0000836a arg  0x000009e6 , 0x00000011 
+ 00030152  0x0000836b arg  0x00000866 , 0x00000005 
+ 00030153  0x0000836c call  0x000077a8 
+ 00030154  0x0000836d arg  0x000009c6 , 0x00000011 
+ 00030155  0x0000836e arg  0x00000826 , 0x00000005 
+ 00030156  0x0000836f call  0x000077a8 
+ 00030157  0x00008370 arg  0x00000826 , 0x00000011 
+ 00030158  0x00008371 arg  0x000009c6 , 0x00000012 
+ 00030159  0x00008372 arg  0x00000826 , 0x00000005 
+ 00030160  0x00008373 call  0x00007786 
+ 00030161  0x00008374 arg  0x0000089e , 0x00000011 
+ 00030162  0x00008375 arg  0x000009c6 , 0x00000012 
+ 00030163  0x00008376 arg  0x00000846 , 0x00000005 
+ 00030164  0x00008377 call  0x00007786 
+ 00030165  0x00008378 arg  0x00000846 , 0x00000011 
+ 00030166  0x00008379 arg  0x00000826 , 0x00000012 
+ 00030167  0x0000837a arg  0x00000826 , 0x00000005 
+ 00030168  0x0000837b call  0x00007755 
+ 00030169  0x0000837c arg  0x00000806 , 0x00000011 
+ 00030170  0x0000837d arg  0x00000826 , 0x00000012 
+ 00030171  0x0000837e arg  0x00000806 , 0x00000005 
+ 00030172  0x0000837f call  0x00007755 
+ 00030173  0x00008380 arg  0x00000018 , 0x00000039 
+ 00030174  0x00008381 arg  0x00000866 , 0x00000011 
+ 00030175  0x00008382 arg  0x00000806 , 0x00000012 
+ 00030176  0x00008383 branch  0x00007f88 
+ 00030177  0x00008386 arg  0x000008e6 , 0x00000011 
+ 00030178  0x00008387 arg  0x00000806 , 0x00000005 
+ 00030179  0x00008388 call  0x000077a8 
+ 00030180  0x00008389 arg  0x000008ce , 0x00000011 
+ 00030181  0x0000838a arg  0x00000826 , 0x00000005 
+ 00030182  0x0000838b call  0x000077a8 
+ 00030183  0x0000838c arg  0x00000826 , 0x00000011 
+ 00030184  0x0000838d arg  0x000008ce , 0x00000012 
+ 00030185  0x0000838e arg  0x00000826 , 0x00000005 
+ 00030186  0x0000838f call  0x00007786 
+ 00030187  0x00008390 arg  0x0000089e , 0x00000011 
+ 00030188  0x00008391 arg  0x000008ce , 0x00000012 
+ 00030189  0x00008392 arg  0x00000846 , 0x00000005 
+ 00030190  0x00008393 call  0x00007786 
+ 00030191  0x00008394 arg  0x00000846 , 0x00000011 
+ 00030192  0x00008395 arg  0x00000826 , 0x00000012 
+ 00030193  0x00008396 arg  0x00000826 , 0x00000005 
+ 00030194  0x00008397 call  0x00007755 
+ 00030195  0x00008398 arg  0x00000806 , 0x00000011 
+ 00030196  0x00008399 arg  0x00000826 , 0x00000012 
+ 00030197  0x0000839a arg  0x00000806 , 0x00000005 
+ 00030198  0x0000839b branch  0x00007758 
+ 00030199  0x0000839f fetch  0x00000001 , 0x000009b2 
+ 00030200  0x000083a0 bne  0x00000000 , 0x00007615 
+ 00030201  0x000083a1 call  0x00007612 
+ 00030202  0x000083a2 arg  0x00000a7e , 0x00000005 
+ 00030203  0x000083a3 setarg  0x00000a2e 
+ 00030204  0x000083a4 istore  0x00000002 , 0x00000005 
+ 00030205  0x000083a5 setarg  0x00004642 
+ 00030206  0x000083a6 istore  0x00000002 , 0x00000005 
+ 00030207  0x000083a7 setarg  0x000009de 
+ 00030208  0x000083a8 istore  0x00000002 , 0x00000005 
+ 00030209  0x000083a9 branch  0x00007609 
+ 00030210  0x000083ab arg  0x00000a7e , 0x00000005 
+ 00030211  0x000083ac setarg  0x00000a3e 
+ 00030212  0x000083ad istore  0x00000002 , 0x00000005 
+ 00030213  0x000083ae setarg  0x000009de 
+ 00030214  0x000083af istore  0x00000002 , 0x00000005 
+ 00030215  0x000083b0 setarg  0x00004642 
+ 00030216  0x000083b1 istore  0x00000002 , 0x00000005 
+ 00030217  0x000083b3 call  0x000079a0 
+ 00030218  0x000083b4 fetch  0x00000001 , 0x000009af 
+ 00030219  0x000083b5 beq  0x00000004 , 0x0000760f 
+ 00030220  0x000083b6 jam  0x00000001 , 0x000009b0 
+ 00030221  0x000083b7 jam  0x00000005 , 0x000009ae 
+ 00030222  0x000083b8 rtn 
+ 00030223  0x000083ba jam  0x00000014 , 0x000009af 
+ 00030224  0x000083bb call  0x0000758a 
+ 00030225  0x000083bc branch  0x000076d8 
+ 00030226  0x000083bf arg  0x00000a1e , 0x00000005 
+ 00030227  0x000083c0 force  0x00000008 , 0x00000007 
+ 00030228  0x000083c1 branch  0x000076a2 
+ 00030229  0x000083c4 jam  0x00000001 , 0x000009b0 
+ 00030230  0x000083c5 rtn 
+ 00030231  0x000083c9 bpatchx  0x000000e6 , 0x0000403c 
+ 00030232  0x000083ca arg  0x00000727 , 0x00000005 
+ 00030233  0x000083cb fetch  0x00000006 , 0x000040a0 
+ 00030234  0x000083cc istore  0x00000006 , 0x00000005 
+ 00030235  0x000083cd fetch  0x00000006 , 0x00000040 
+ 00030236  0x000083ce istore  0x00000006 , 0x00000005 
+ 00030237  0x000083cf fetch  0x00000003 , 0x0000465e 
+ 00030238  0x000083d0 istore  0x00000003 , 0x00000005 
+ 00030239  0x000083d2 call  0x00007a0d 
+ 00030240  0x000083d4 arg  0x00000a4e , 0x00000011 
+ 00030241  0x000083d5 arg  0x00000a5e , 0x00000012 
+ 00030242  0x000083d6 force  0x00000004 , 0x00000007 
+ 00030243  0x000083d7 call  0x000076a7 
+ 00030244  0x000083d8 nbranch  0x00007631 , 0x00000001 
+ 00030245  0x000083da call  0x00007628 
+ 00030246  0x000083db jam  0x00000041 , 0x0000007d 
+ 00030247  0x000083dc branch  0x000062f8 
+ 00030248  0x000083df fetch  0x00000001 , 0x000009af 
+ 00030249  0x000083e0 beq  0x00000009 , 0x0000762e 
+ 00030250  0x000083e1 jam  0x0000000a , 0x000009ae 
+ 00030251  0x000083e2 jam  0x00000001 , 0x000009b0 
+ 00030252  0x000083e3 jam  0x00000003 , 0x0000007c 
+ 00030253  0x000083e4 rtn 
+ 00030254  0x000083e6 jam  0x00000003 , 0x0000007c 
+ 00030255  0x000083e7 jam  0x00000015 , 0x000009af 
+ 00030256  0x000083e8 branch  0x000076d8 
+ 00030257  0x000083ec fetch  0x00000001 , 0x000009af 
+ 00030258  0x000083ed beq  0x00000009 , 0x00007637 
+ 00030259  0x000083ee jam  0x00000000 , 0x000009ae 
+ 00030260  0x000083ef jam  0x00000004 , 0x0000007c 
+ 00030261  0x000083f1 jam  0x00000005 , 0x0000007e 
+ 00030262  0x000083f2 rtn 
+ 00030263  0x000083f4 jam  0x00000004 , 0x0000007c 
+ 00030264  0x000083f5 jam  0x00000000 , 0x000009af 
+ 00030265  0x000083f6 rtn 
+ 00030266  0x000083f9 fetch  0x00000001 , 0x000009b3 
+ 00030267  0x000083fa beq  0x00000001 , 0x0000763e 
+ 00030268  0x000083fb jam  0x0000000a , 0x000009af 
+ 00030269  0x000083fc branch  0x000076d8 
+ 00030270  0x000083fe arg  0x00000727 , 0x00000005 
+ 00030271  0x000083ff fetch  0x00000006 , 0x00000040 
+ 00030272  0x00008400 istore  0x00000006 , 0x00000005 
+ 00030273  0x00008401 fetch  0x00000006 , 0x000040a0 
+ 00030274  0x00008402 istore  0x00000006 , 0x00000005 
+ 00030275  0x00008403 fetch  0x00000003 , 0x0000465b 
+ 00030276  0x00008404 istore  0x00000003 , 0x00000005 
+ 00030277  0x00008406 call  0x00007a24 
+ 00030278  0x00008407 fetch  0x00000001 , 0x000009af 
+ 00030279  0x00008408 beq  0x0000000a , 0x0000764b 
+ 00030280  0x00008409 jam  0x0000000b , 0x000009ae 
+ 00030281  0x0000840a jam  0x00000001 , 0x000009b0 
+ 00030282  0x0000840b rtn 
+ 00030283  0x0000840d jam  0x0000000b , 0x000009af 
+ 00030284  0x0000840e jam  0x00000001 , 0x000009b1 
+ 00030285  0x0000840f rtn 
+ 00030286  0x00008412 arg  0x00000a7e , 0x00000005 
+ 00030287  0x00008413 fetch  0x00000006 , 0x00000040 
+ 00030288  0x00008414 istore  0x00000006 , 0x00000005 
+ 00030289  0x00008415 fetch  0x00000006 , 0x000040a0 
+ 00030290  0x00008416 istore  0x00000006 , 0x00000005 
+ 00030291  0x00008417 setarg  0x00000a2e 
+ 00030292  0x00008418 istore  0x00000002 , 0x00000005 
+ 00030293  0x00008419 setarg  0x00000a3e 
+ 00030294  0x0000841a istore  0x00000002 , 0x00000005 
+ 00030295  0x0000841b branch  0x00007662 
+ 00030296  0x0000841d jam  0x0000000f , 0x000009ae 
+ 00030297  0x0000841e arg  0x00000a7e , 0x00000005 
+ 00030298  0x0000841f fetch  0x00000006 , 0x000040a0 
+ 00030299  0x00008420 istore  0x00000006 , 0x00000005 
+ 00030300  0x00008421 fetch  0x00000006 , 0x00000040 
+ 00030301  0x00008422 istore  0x00000006 , 0x00000005 
+ 00030302  0x00008423 setarg  0x00000a3e 
+ 00030303  0x00008424 istore  0x00000002 , 0x00000005 
+ 00030304  0x00008425 setarg  0x00000a2e 
+ 00030305  0x00008426 istore  0x00000002 , 0x00000005 
+ 00030306  0x00008429 arg  0x00000727 , 0x00000005 
+ 00030307  0x0000842a fetch  0x00000006 , 0x00000a7e 
+ 00030308  0x0000842b istore  0x00000006 , 0x00000005 
+ 00030309  0x0000842c fetch  0x00000006 , 0x00000a84 
+ 00030310  0x0000842d istore  0x00000006 , 0x00000005 
+ 00030311  0x0000842f call  0x000079d7 
+ 00030312  0x00008432 jam  0x00000001 , 0x000041bd 
+ 00030313  0x00008433 arg  0x000041be , 0x00000005 
+ 00030314  0x00008434 arg  0x00000a4e , 0x00000006 
+ 00030315  0x00008435 call  0x00007ebf 
+ 00030316  0x00008436 branch  0x000021c4 
+ 00030317  0x0000843a bpatchx  0x000000e7 , 0x0000403c 
+ 00030318  0x0000843b fetch  0x00000001 , 0x000045b1 
+ 00030319  0x0000843c rtnne  0x00000000 
+ 00030320  0x0000843d fetch  0x00000001 , 0x000009b2 
+ 00030321  0x0000843e rtnne  0x00000000 
+ 00030322  0x0000843f arg  0x00004612 , 0x00000005 
+ 00030323  0x00008440 force  0x0000000b , 0x00000007 
+ 00030324  0x00008441 call  0x000076a2 
+ 00030325  0x00008442 random  0x0000003f 
+ 00030326  0x00008443 rshift  0x0000003f , 0x0000003f 
+ 00030327  0x00008444 istore  0x00000002 , 0x00000005 
+ 00030328  0x00008446 arg  0x000006be , 0x00000005 
+ 00030329  0x00008447 arg  0x00004612 , 0x00000006 
+ 00030330  0x00008448 call  0x00007ebe 
+ 00030331  0x0000844a arg  0x000005e6 , 0x00000005 
+ 00030332  0x0000844b arg  0x000008ce , 0x00000006 
+ 00030333  0x0000844c call  0x00007ebc 
+ 00030334  0x0000844e arg  0x00000616 , 0x00000005 
+ 00030335  0x0000844f call  0x00007ec5 
+ 00030336  0x00008450 jam  0x00000001 , 0x00000616 
+ 00030337  0x00008452 call  0x00007a5d 
+ 00030338  0x00008453 jam  0x00000001 , 0x000009b2 
+ 00030339  0x00008454 rtn 
+ 00030340  0x00008457 arg  0x0000462a , 0x00000005 
+ 00030341  0x00008458 arg  0x0000062e , 0x00000006 
+ 00030342  0x00008459 call  0x00007ebc 
+ 00030343  0x0000845a jam  0x00000001 , 0x000045b1 
+ 00030344  0x0000845b jam  0x00000000 , 0x000009b2 
+ 00030345  0x0000845c rtn 
+ 00030346  0x0000845f bpatchx  0x000000e8 , 0x0000403d 
+ 00030347  0x00008460 fetch  0x00000001 , 0x000009b9 
+ 00030348  0x00008461 rtnne  0x00000000 
+ 00030349  0x00008462 fetch  0x00000001 , 0x000009b2 
+ 00030350  0x00008463 rtnne  0x00000000 
+ 00030351  0x00008465 arg  0x000006be , 0x00000005 
+ 00030352  0x00008466 arg  0x00004612 , 0x00000006 
+ 00030353  0x00008467 call  0x00007ebe 
+ 00030354  0x00008469 arg  0x000005e6 , 0x00000005 
+ 00030355  0x0000846a arg  0x000009c6 , 0x00000006 
+ 00030356  0x0000846b call  0x00007ebc 
+ 00030357  0x0000846d arg  0x00000616 , 0x00000005 
+ 00030358  0x0000846e call  0x00007ec5 
+ 00030359  0x0000846f jam  0x00000001 , 0x00000616 
+ 00030360  0x00008471 call  0x00007a5d 
+ 00030361  0x00008472 jam  0x00000002 , 0x000009b2 
+ 00030362  0x00008473 rtn 
+ 00030363  0x00008476 jam  0x00000001 , 0x000009b3 
+ 00030364  0x00008477 arg  0x00000a06 , 0x00000005 
+ 00030365  0x00008478 arg  0x0000062e , 0x00000006 
+ 00030366  0x00008479 call  0x00007ebe 
+ 00030367  0x0000847a jam  0x00000001 , 0x000009b9 
+ 00030368  0x0000847b jam  0x00000000 , 0x000009b2 
+ 00030369  0x0000847c rtn 
+ 00030370  0x0000847f increase  0xffffffff , 0x00000007 
+ 00030371  0x00008480 nrtn  0x00000002 
+ 00030372  0x00008481 random  0x0000003f 
+ 00030373  0x00008482 istore  0x00000002 , 0x00000005 
+ 00030374  0x00008483 branch  0x000076a2 
+ 00030375  0x00008485 increase  0xffffffff , 0x00000007 
+ 00030376  0x00008486 nbranch  0x000076b3 , 0x00000002 
+ 00030377  0x00008487 ifetch  0x00000004 , 0x00000011 
+ 00030378  0x00008488 copy  0x0000003f , 0x00000002 
+ 00030379  0x00008489 ifetch  0x00000004 , 0x00000012 
+ 00030380  0x0000848a iflip  0x00000002 , 0x0000003f 
+ 00030381  0x0000848b nbranch  0x000076b1 , 0x00000005 
+ 00030382  0x0000848c increase  0x00000004 , 0x00000011 
+ 00030383  0x0000848d increase  0x00000004 , 0x00000012 
+ 00030384  0x0000848e branch  0x000076a7 
+ 00030385  0x00008490 disable  0x00000001 
+ 00030386  0x00008491 rtn 
+ 00030387  0x00008493 enable  0x00000001 
+ 00030388  0x00008494 rtn 
+ 00030389  0x0000849c bpatchx  0x000000e9 , 0x0000403d 
+ 00030390  0x0000849d fetch  0x00000001 , 0x000009b0 
+ 00030391  0x0000849e rtn  0x00000034 
+ 00030392  0x0000849f call  0x000062bc 
+ 00030393  0x000084a0 nrtn  0x00000034 
+ 00030394  0x000084a1 jam  0x00000000 , 0x000009b0 
+ 00030395  0x000084a2 fetch  0x00000001 , 0x000009ae 
+ 00030396  0x000084a3 beq  0x00000003 , 0x000061fd 
+ 00030397  0x000084a4 beq  0x00000005 , 0x0000621a 
+ 00030398  0x000084a5 beq  0x00000007 , 0x00006225 
+ 00030399  0x000084a6 beq  0x0000000b , 0x0000623a 
+ 00030400  0x000084a7 beq  0x00000002 , 0x00007588 
+ 00030401  0x000084a8 beq  0x00000004 , 0x000075f7 
+ 00030402  0x000084a9 beq  0x00000009 , 0x00007617 
+ 00030403  0x000084aa beq  0x0000000a , 0x0000763a 
+ 00030404  0x000084ab beq  0x0000000c , 0x00007658 
+ 00030405  0x000084ad rtn 
+ 00030406  0x000084b0 bpatchx  0x000000ea , 0x0000403d 
+ 00030407  0x000084b1 fetch  0x00000001 , 0x000009b1 
+ 00030408  0x000084b2 rtn  0x00000034 
+ 00030409  0x000084b3 call  0x000062bc 
+ 00030410  0x000084b4 nrtn  0x00000034 
+ 00030411  0x000084b5 jam  0x00000000 , 0x000009b1 
+ 00030412  0x000084b6 fetch  0x00000001 , 0x000009af 
+ 00030413  0x000084b7 beq  0x00000012 , 0x000061e0 
+ 00030414  0x000084b8 beq  0x00000013 , 0x000061e5 
+ 00030415  0x000084b9 beq  0x00000003 , 0x000061e9 
+ 00030416  0x000084ba beq  0x00000004 , 0x00007602 
+ 00030417  0x000084bb beq  0x00000014 , 0x000061ed 
+ 00030418  0x000084bc beq  0x00000007 , 0x000061fb 
+ 00030419  0x000084bd beq  0x0000000a , 0x0000763a 
+ 00030420  0x000084be beq  0x0000000b , 0x00006239 
+ 00030421  0x000084bf beq  0x00000009 , 0x00007617 
+ 00030422  0x000084c0 beq  0x00000015 , 0x00006233 
+ 00030423  0x000084c1 rtn 
+ 00030424  0x000084c4 jam  0x00000001 , 0x000009b1 
+ 00030425  0x000084c5 rtn 
+ 00030426  0x000084c8 jam  0x00000000 , 0x000009b1 
+ 00030427  0x000084c9 rtn 
+ 00030428  0x000084cb bpatchx  0x000000eb , 0x0000403d 
+ 00030429  0x000084cc fetch  0x00000001 , 0x0000465a 
+ 00030430  0x000084cd rtn  0x00000034 
+ 00030431  0x000084ce fetch  0x00000001 , 0x000009b2 
+ 00030432  0x000084cf rtn  0x00000034 
+ 00030433  0x000084d0 increase  0x00000080 , 0x0000003f 
+ 00030434  0x000084d1 store  0x00000001 , 0x000009b2 
+ 00030435  0x000084d2 rtnbit1  0x00000007 
+ 00030436  0x000084d3 fetch  0x00000001 , 0x000005e3 
+ 00030437  0x000084d4 branch  0x000076e7 , 0x00000034 
+ 00030438  0x000084d5 branch  0x00007a68 
+ 00030439  0x000084d8 call  0x000078d3 
+ 00030440  0x000084d9 fetch  0x00000001 , 0x000009b2 
+ 00030441  0x000084da beq  0x00000001 , 0x00007684 
+ 00030442  0x000084db beq  0x00000002 , 0x0000769b 
+ 00030443  0x000084dc rtn 
+ 00030444  0x000084e0 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00030445  0x000084e1 rshift3  0x0000003f , 0x0000003f 
+ 00030446  0x000084e2 iadd  0x00000006 , 0x00000006 
+ 00030447  0x000084e3 ifetch  0x00000001 , 0x00000006 
+ 00030448  0x000084e4 qisolate0  0x0000003f 
+ 00030449  0x000084e5 rtn 
+ 00030450  0x000084e9 call  0x00007ebe 
+ 00030451  0x000084ea call  0x00007ebe 
+ 00030452  0x000084eb branch  0x00007ebe 
+ 00030453  0x000084ef ifetch  0x00000008 , 0x00000006 
+ 00030454  0x000084f0 nrtn  0x00000034 
+ 00030455  0x000084f1 ifetch  0x00000008 , 0x00000006 
+ 00030456  0x000084f2 nrtn  0x00000034 
+ 00030457  0x000084f3 ifetch  0x00000008 , 0x00000006 
+ 00030458  0x000084f4 rtn 
+ 00030459  0x000084fa ifetch  0x00000004 , 0x00000011 
+ 00030460  0x000084fb iforce  0x00000002 
+ 00030461  0x000084fc ifetch  0x00000004 , 0x00000012 
+ 00030462  0x000084fd isub  0x00000002 , 0x0000003e 
+ 00030463  0x000084fe nrtn  0x00000005 
+ 00030464  0x000084ff increase  0x00000004 , 0x00000011 
+ 00030465  0x00008500 increase  0x00000004 , 0x00000012 
+ 00030466  0x00008501 loop  0x000076fb 
+ 00030467  0x00008502 rtn 
+ 00030468  0x00008506 force  0x00000006 , 0x00000039 
+ 00030469  0x00008507 increase  0x00000014 , 0x00000011 
+ 00030470  0x00008508 increase  0x00000014 , 0x00000012 
+ 00030471  0x0000850a ifetch  0x00000004 , 0x00000012 
+ 00030472  0x0000850b iforce  0x00000002 
+ 00030473  0x0000850c ifetch  0x00000004 , 0x00000011 
+ 00030474  0x0000850d isub  0x00000002 , 0x0000003f 
+ 00030475  0x0000850e nrtn  0x00000002 
+ 00030476  0x0000850f nrtn  0x00000034 
+ 00030477  0x00008510 increase  0xfffffffc , 0x00000011 
+ 00030478  0x00008511 increase  0xfffffffc , 0x00000012 
+ 00030479  0x00008512 loop  0x00007707 
+ 00030480  0x00008513 rtn 
+ 00030481  0x00008516 force  0x00000006 , 0x00000039 
+ 00030482  0x00008517 force  0x00000000 , 0x00000013 
+ 00030483  0x00008519 ifetch  0x00000004 , 0x00000011 
+ 00030484  0x0000851a iforce  0x00000002 
+ 00030485  0x0000851b ifetch  0x00000004 , 0x00000012 
+ 00030486  0x0000851c iadd  0x00000002 , 0x0000003f 
+ 00030487  0x0000851d iadd  0x00000013 , 0x0000003f 
+ 00030488  0x0000851e istore  0x00000004 , 0x00000005 
+ 00030489  0x0000851f isolate1  0x00000020 , 0x0000003f 
+ 00030490  0x00008520 setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00030491  0x00008521 increase  0x00000004 , 0x00000011 
+ 00030492  0x00008522 increase  0x00000004 , 0x00000012 
+ 00030493  0x00008523 loop  0x00007713 
+ 00030494  0x00008524 rtn 
+ 00030495  0x00008527 force  0x00000006 , 0x00000039 
+ 00030496  0x00008528 force  0x00000000 , 0x00000013 
+ 00030497  0x0000852a ifetch  0x00000004 , 0x00000012 
+ 00030498  0x0000852b iforce  0x00000002 
+ 00030499  0x0000852c ifetch  0x00000004 , 0x00000011 
+ 00030500  0x0000852d isub  0x00000002 , 0x0000003f 
+ 00030501  0x0000852e isub  0x00000013 , 0x0000003f 
+ 00030502  0x0000852f istore  0x00000004 , 0x00000005 
+ 00030503  0x00008530 isolate1  0x00000020 , 0x0000003f 
+ 00030504  0x00008531 setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00030505  0x00008532 increase  0x00000004 , 0x00000011 
+ 00030506  0x00008533 increase  0x00000004 , 0x00000012 
+ 00030507  0x00008534 loop  0x00007721 
+ 00030508  0x00008535 rtn 
+ 00030509  0x00008538 force  0x00000006 , 0x00000039 
+ 00030510  0x00008539 increase  0x00000014 , 0x00000011 
+ 00030511  0x0000853b force  0x00000000 , 0x00000013 
+ 00030512  0x0000853d ifetch  0x00000004 , 0x00000011 
+ 00030513  0x0000853e isolate1  0x00000000 , 0x0000003f 
+ 00030514  0x0000853f setflag  0x00000001 , 0x00000001 , 0x00000013 
+ 00030515  0x00008540 rshift  0x0000003f , 0x0000003f 
+ 00030516  0x00008541 isolate1  0x00000000 , 0x00000013 
+ 00030517  0x00008542 setflag  0x00000001 , 0x0000001f , 0x0000003f 
+ 00030518  0x00008543 istore  0x00000004 , 0x00000011 
+ 00030519  0x00008544 increase  0xfffffffc , 0x00000011 
+ 00030520  0x00008545 rshift  0x00000013 , 0x00000013 
+ 00030521  0x00008546 loop  0x00007730 
+ 00030522  0x00008547 rtn 
+ 00030523  0x0000854a force  0x00000006 , 0x00000039 
+ 00030524  0x0000854b force  0x00000000 , 0x00000013 
+ 00030525  0x0000854d ifetch  0x00000004 , 0x00000011 
+ 00030526  0x0000854e isolate1  0x0000001f , 0x0000003f 
+ 00030527  0x0000854f setflag  0x00000001 , 0x00000001 , 0x00000013 
+ 00030528  0x00008550 lshift  0x0000003f , 0x0000003f 
+ 00030529  0x00008551 isolate1  0x00000000 , 0x00000013 
+ 00030530  0x00008552 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00030531  0x00008553 istore  0x00000004 , 0x00000011 
+ 00030532  0x00008554 increase  0x00000004 , 0x00000011 
+ 00030533  0x00008555 rshift  0x00000013 , 0x00000013 
+ 00030534  0x00008556 loop  0x0000773d 
+ 00030535  0x00008557 rtn 
+ 00030536  0x0000855a call  0x0000773b 
+ 00030537  0x0000855c isolate1  0x00000000 , 0x00000013 
+ 00030538  0x0000855d branch  0x00007751 , 0x00000001 
+ 00030539  0x0000855e arg  0x00000886 , 0x00000012 
+ 00030540  0x0000855f copy  0x00000011 , 0x00000013 
+ 00030541  0x00008560 increase  0xffffffe8 , 0x00000011 
+ 00030542  0x00008561 call  0x00007704 
+ 00030543  0x00008562 nrtn  0x00000002 
+ 00030544  0x00008563 copy  0x00000013 , 0x00000011 
+ 00030545  0x00008565 increase  0xffffffe8 , 0x00000011 
+ 00030546  0x00008566 arg  0x00000886 , 0x00000012 
+ 00030547  0x00008567 copy  0x00000011 , 0x00000005 
+ 00030548  0x00008568 branch  0x0000771f 
+ 00030549  0x0000856c call  0x00007711 
+ 00030550  0x0000856d copy  0x00000005 , 0x00000011 
+ 00030551  0x0000856e branch  0x00007749 
+ 00030552  0x00008571 call  0x0000771f 
+ 00030553  0x00008572 isolate0  0x00000000 , 0x00000013 
+ 00030554  0x00008573 rtn  0x00000001 
+ 00030555  0x00008574 arg  0x00000886 , 0x00000012 
+ 00030556  0x00008575 add  0x00000005 , 0xffffffe8 , 0x00000011 
+ 00030557  0x00008576 copy  0x00000011 , 0x00000005 
+ 00030558  0x00008577 branch  0x00007711 
+ 00030559  0x0000857b copy  0x00000005 , 0x0000000b 
+ 00030560  0x0000857c copy  0x00000011 , 0x00000030 
+ 00030561  0x0000857d arg  0x00000716 , 0x00000012 
+ 00030562  0x0000857e copy  0x00000012 , 0x00000005 
+ 00030563  0x0000857f add  0x00000011 , 0x00000018 , 0x00000006 
+ 00030564  0x00008580 ifetch  0x00000008 , 0x00000006 
+ 00030565  0x00008581 istore  0x00000008 , 0x00000005 
+ 00030566  0x00008582 istore  0x00000008 , 0x00000005 
+ 00030567  0x00008583 force  0x00000000 , 0x0000003f 
+ 00030568  0x00008584 istore  0x00000008 , 0x00000005 
+ 00030569  0x00008585 copy  0x0000000b , 0x00000005 
+ 00030570  0x00008586 call  0x00007755 
+ 00030571  0x00008587 arg  0x00000716 , 0x00000012 
+ 00030572  0x00008588 copy  0x00000012 , 0x00000005 
+ 00030573  0x00008589 force  0x00000000 , 0x0000003f 
+ 00030574  0x0000858a istore  0x00000008 , 0x00000005 
+ 00030575  0x0000858b add  0x00000030 , 0x00000020 , 0x00000006 
+ 00030576  0x0000858c ifetch  0x00000008 , 0x00000006 
+ 00030577  0x0000858d istore  0x00000008 , 0x00000005 
+ 00030578  0x0000858e istore  0x00000008 , 0x00000005 
+ 00030579  0x0000858f copy  0x0000000b , 0x00000011 
+ 00030580  0x00008590 copy  0x00000011 , 0x00000005 
+ 00030581  0x00008591 call  0x00007755 
+ 00030582  0x00008592 arg  0x00000716 , 0x00000012 
+ 00030583  0x00008593 copy  0x00000012 , 0x00000005 
+ 00030584  0x00008594 add  0x00000030 , 0x00000028 , 0x00000006 
+ 00030585  0x00008595 ifetch  0x00000008 , 0x00000006 
+ 00030586  0x00008596 istore  0x00000008 , 0x00000005 
+ 00030587  0x00008597 istore  0x00000008 , 0x00000005 
+ 00030588  0x00008598 istore  0x00000008 , 0x00000005 
+ 00030589  0x00008599 copy  0x0000000b , 0x00000011 
+ 00030590  0x0000859a copy  0x00000011 , 0x00000005 
+ 00030591  0x0000859b branch  0x00007755 
+ 00030592  0x0000859f force  0x00000006 , 0x00000039 
+ 00030593  0x000085a1 ifetch  0x00000004 , 0x00000006 
+ 00030594  0x000085a2 iforce  0x0000002f 
+ 00030595  0x000085a3 increase  0x00000001 , 0x00000038 
+ 00030596  0x000085a4 loop  0x00007781 
+ 00030597  0x000085a5 rtn 
+ 00030598  0x000085aa copy  0x00000005 , 0x0000000b 
+ 00030599  0x000085ab arg  0x000006e6 , 0x00000005 
+ 00030600  0x000085ac call  0x00007ec5 
+ 00030601  0x000085ad arg  0x000006e6 , 0x00000005 
+ 00030602  0x000085ae copy  0x00000011 , 0x00000006 
+ 00030603  0x000085af force  0x00000000 , 0x00000038 
+ 00030604  0x000085b0 call  0x00007780 
+ 00030605  0x000085b1 copy  0x00000012 , 0x00000006 
+ 00030606  0x000085b2 call  0x00007780 
+ 00030607  0x000085b3 force  0x00000000 , 0x00000012 
+ 00030608  0x000085b5 force  0x00000000 , 0x00000002 
+ 00030609  0x000085b6 force  0x00000006 , 0x00000013 
+ 00030610  0x000085b8 ifetch  0x00000004 , 0x00000005 
+ 00030611  0x000085b9 iforce  0x00000011 
+ 00030612  0x000085ba copy  0x00000012 , 0x00000038 
+ 00030613  0x000085bb deposit  0x0000002f 
+ 00030614  0x000085bc copy  0x00000013 , 0x00000038 
+ 00030615  0x000085bd imul32  0x0000002f , 0x0000003f 
+ 00030616  0x000085be iadd  0x00000011 , 0x0000003f 
+ 00030617  0x000085bf iadd  0x00000002 , 0x0000003f 
+ 00030618  0x000085c0 istore  0x00000004 , 0x00000005 
+ 00030619  0x000085c1 rshift32  0x0000003f , 0x00000002 
+ 00030620  0x000085c2 increase  0x00000001 , 0x00000013 
+ 00030621  0x000085c3 compare  0x0000000c , 0x00000013 , 0x000000ff 
+ 00030622  0x000085c4 nbranch  0x00007792 , 0x00000001 
+ 00030623  0x000085c5 deposit  0x00000002 
+ 00030624  0x000085c6 istore  0x00000004 , 0x00000005 
+ 00030625  0x000085c7 increase  0xffffffe8 , 0x00000005 
+ 00030626  0x000085c8 increase  0x00000001 , 0x00000012 
+ 00030627  0x000085c9 compare  0x00000006 , 0x00000012 , 0x000000ff 
+ 00030628  0x000085ca nbranch  0x00007790 , 0x00000001 
+ 00030629  0x000085cb arg  0x000006e6 , 0x00000011 
+ 00030630  0x000085cc copy  0x0000000b , 0x00000005 
+ 00030631  0x000085cd branch  0x0000775f 
+ 00030632  0x000085d1 copy  0x00000011 , 0x00000012 
+ 00030633  0x000085d2 branch  0x00007786 
+ 00030634  0x000085d5 copy  0x00000011 , 0x00000030 
+ 00030635  0x000085d7 copy  0x00000030 , 0x00000011 
+ 00030636  0x000085d8 ifetch  0x00000001 , 0x00000011 
+ 00030637  0x000085d9 isolate1  0x00000000 , 0x0000003f 
+ 00030638  0x000085da rtn  0x00000001 
+ 00030639  0x000085db call  0x0000772d 
+ 00030640  0x000085dc ifetch  0x00000001 , 0x00000012 
+ 00030641  0x000085dd isolate0  0x00000000 , 0x0000003f 
+ 00030642  0x000085de branch  0x000077ba , 0x00000001 
+ 00030643  0x000085df arg  0x00000886 , 0x00000011 
+ 00030644  0x000085e0 copy  0x00000012 , 0x00000005 
+ 00030645  0x000085e1 call  0x00007711 
+ 00030646  0x000085e2 ifetch  0x00000001 , 0x00000012 
+ 00030647  0x000085e3 iadd  0x00000013 , 0x0000003f 
+ 00030648  0x000085e4 istore  0x00000001 , 0x00000012 
+ 00030649  0x000085e5 increase  0xffffffe8 , 0x00000012 
+ 00030650  0x000085e7 add  0x00000012 , 0x00000018 , 0x00000011 
+ 00030651  0x000085e8 force  0x00000007 , 0x00000039 
+ 00030652  0x000085e9 call  0x0000772f 
+ 00030653  0x000085ea branch  0x000077ab 
+ 00030654  0x000085ee copy  0x00000005 , 0x0000000b 
+ 00030655  0x000085ef arg  0x00000746 , 0x00000005 
+ 00030656  0x000085f0 call  0x00007ec5 
+ 00030657  0x000085f1 force  0x00000000 , 0x0000003f 
+ 00030658  0x000085f2 store  0x00000004 , 0x000006fe 
+ 00030659  0x000085f3 store  0x00000004 , 0x0000075e 
+ 00030660  0x000085f4 jam  0x00000001 , 0x00000746 
+ 00030661  0x000085f5 arg  0x000006e6 , 0x00000005 
+ 00030662  0x000085f6 call  0x00007ec5 
+ 00030663  0x000085f7 arg  0x00000886 , 0x00000006 
+ 00030664  0x000085f8 arg  0x00000716 , 0x00000005 
+ 00030665  0x000085f9 call  0x00007ebe 
+ 00030666  0x000085fa copy  0x00000011 , 0x00000006 
+ 00030667  0x000085fb arg  0x0000072e , 0x00000005 
+ 00030668  0x000085fc call  0x00007ebe 
+ 00030669  0x000085fe arg  0x0000072e , 0x00000006 
+ 00030670  0x000085ff call  0x000076f5 
+ 00030671  0x00008600 branch  0x000077f6 , 0x00000034 
+ 00030672  0x00008601 arg  0x0000072e , 0x00000011 
+ 00030673  0x00008602 arg  0x00000746 , 0x00000012 
+ 00030674  0x00008603 call  0x000077aa 
+ 00030675  0x00008605 arg  0x00000716 , 0x00000011 
+ 00030676  0x00008606 arg  0x000006e6 , 0x00000012 
+ 00030677  0x00008607 call  0x000077aa 
+ 00030678  0x00008608 arg  0x0000072e , 0x00000011 
+ 00030679  0x00008609 arg  0x00000716 , 0x00000012 
+ 00030680  0x0000860a call  0x00007704 
+ 00030681  0x0000860b branch  0x000077e8 , 0x00000002 
+ 00030682  0x0000860c arg  0x00000716 , 0x00000011 
+ 00030683  0x0000860d arg  0x0000072e , 0x00000012 
+ 00030684  0x0000860e copy  0x00000011 , 0x00000005 
+ 00030685  0x0000860f call  0x0000771f 
+ 00030686  0x00008610 arg  0x00000746 , 0x00000011 
+ 00030687  0x00008611 arg  0x000006e6 , 0x00000012 
+ 00030688  0x00008612 copy  0x00000012 , 0x00000005 
+ 00030689  0x00008613 call  0x00007711 
+ 00030690  0x00008614 ifetch  0x00000001 , 0x00000011 
+ 00030691  0x00008615 iadd  0x00000013 , 0x00000013 
+ 00030692  0x00008616 ifetch  0x00000001 , 0x00000012 
+ 00030693  0x00008617 iadd  0x00000013 , 0x0000003f 
+ 00030694  0x00008618 istore  0x00000001 , 0x00000012 
+ 00030695  0x00008619 branch  0x000077cd 
+ 00030696  0x0000861b arg  0x0000072e , 0x00000011 
+ 00030697  0x0000861c arg  0x00000716 , 0x00000012 
+ 00030698  0x0000861d copy  0x00000011 , 0x00000005 
+ 00030699  0x0000861e call  0x0000771f 
+ 00030700  0x0000861f arg  0x000006e6 , 0x00000011 
+ 00030701  0x00008620 arg  0x00000746 , 0x00000012 
+ 00030702  0x00008621 copy  0x00000012 , 0x00000005 
+ 00030703  0x00008622 call  0x00007711 
+ 00030704  0x00008623 ifetch  0x00000001 , 0x00000011 
+ 00030705  0x00008624 iadd  0x00000013 , 0x00000013 
+ 00030706  0x00008625 ifetch  0x00000001 , 0x00000012 
+ 00030707  0x00008626 iadd  0x00000013 , 0x0000003f 
+ 00030708  0x00008627 istore  0x00000001 , 0x00000012 
+ 00030709  0x00008628 branch  0x000077cd 
+ 00030710  0x0000862a arg  0x00000746 , 0x00000005 
+ 00030711  0x0000862b call  0x00007ec5 
+ 00030712  0x0000862c fetch  0x00000001 , 0x000006fe 
+ 00030713  0x0000862d store  0x00000001 , 0x00000746 
+ 00030714  0x0000862e store  0x00000001 , 0x0000074e 
+ 00030715  0x0000862f arg  0x00000746 , 0x00000011 
+ 00030716  0x00008630 arg  0x000006e6 , 0x00000012 
+ 00030717  0x00008631 copy  0x00000012 , 0x00000005 
+ 00030718  0x00008632 call  0x00007755 
+ 00030719  0x00008633 arg  0x00000886 , 0x00000011 
+ 00030720  0x00008634 arg  0x000006e6 , 0x00000012 
+ 00030721  0x00008635 copy  0x0000000b , 0x00000005 
+ 00030722  0x00008636 branch  0x00007758 
+ 00030723  0x0000863c arg  0x000006a6 , 0x00000011 
+ 00030724  0x0000863d arg  0x0000075e , 0x00000005 
+ 00030725  0x0000863e call  0x000077a8 
+ 00030726  0x0000863f arg  0x0000075e , 0x00000011 
+ 00030727  0x00008640 arg  0x00000776 , 0x00000005 
+ 00030728  0x00008641 call  0x000077a8 
+ 00030729  0x00008642 arg  0x0000089e , 0x00000011 
+ 00030730  0x00008643 arg  0x00000776 , 0x00000012 
+ 00030731  0x00008644 arg  0x00000776 , 0x00000005 
+ 00030732  0x00008645 call  0x00007786 
+ 00030733  0x00008646 arg  0x00000676 , 0x00000011 
+ 00030734  0x00008647 arg  0x0000075e , 0x00000005 
+ 00030735  0x00008648 call  0x000077a8 
+ 00030736  0x00008649 arg  0x0000075e , 0x00000006 
+ 00030737  0x0000864a arg  0x0000072e , 0x00000005 
+ 00030738  0x0000864b call  0x00007ebe 
+ 00030739  0x0000864c arg  0x0000072e , 0x00000011 
+ 00030740  0x0000864d call  0x00007748 
+ 00030741  0x0000864e arg  0x0000075e , 0x00000011 
+ 00030742  0x0000864f arg  0x0000072e , 0x00000012 
+ 00030743  0x00008650 arg  0x0000075e , 0x00000005 
+ 00030744  0x00008651 call  0x00007755 
+ 00030745  0x00008652 arg  0x0000075e , 0x00000011 
+ 00030746  0x00008653 arg  0x00000776 , 0x00000012 
+ 00030747  0x00008654 arg  0x0000075e , 0x00000005 
+ 00030748  0x00008655 call  0x00007755 
+ 00030749  0x00008656 arg  0x00000676 , 0x00000006 
+ 00030750  0x00008657 arg  0x0000072e , 0x00000005 
+ 00030751  0x00008658 call  0x00007ebe 
+ 00030752  0x00008659 arg  0x0000068e , 0x00000011 
+ 00030753  0x0000865a arg  0x00000776 , 0x00000005 
+ 00030754  0x0000865b call  0x000077a8 
+ 00030755  0x0000865c arg  0x0000072e , 0x00000011 
+ 00030756  0x0000865d call  0x00007748 
+ 00030757  0x0000865e arg  0x0000072e , 0x00000011 
+ 00030758  0x0000865f call  0x00007748 
+ 00030759  0x00008660 arg  0x0000072e , 0x00000011 
+ 00030760  0x00008661 arg  0x00000776 , 0x00000012 
+ 00030761  0x00008662 arg  0x0000072e , 0x00000005 
+ 00030762  0x00008663 call  0x00007786 
+ 00030763  0x00008664 arg  0x00000776 , 0x00000011 
+ 00030764  0x00008665 arg  0x00000746 , 0x00000005 
+ 00030765  0x00008666 call  0x000077a8 
+ 00030766  0x00008667 arg  0x00000746 , 0x00000011 
+ 00030767  0x00008668 call  0x00007748 
+ 00030768  0x00008669 arg  0x00000746 , 0x00000011 
+ 00030769  0x0000866a call  0x00007748 
+ 00030770  0x0000866b arg  0x00000746 , 0x00000011 
+ 00030771  0x0000866c call  0x00007748 
+ 00030772  0x0000866d arg  0x0000068e , 0x00000006 
+ 00030773  0x0000866e arg  0x00000776 , 0x00000005 
+ 00030774  0x0000866f call  0x00007ebe 
+ 00030775  0x00008670 arg  0x00000776 , 0x00000011 
+ 00030776  0x00008671 call  0x00007748 
+ 00030777  0x00008672 arg  0x00000776 , 0x00000011 
+ 00030778  0x00008673 arg  0x000006a6 , 0x00000012 
+ 00030779  0x00008674 arg  0x000006a6 , 0x00000005 
+ 00030780  0x00008675 call  0x00007786 
+ 00030781  0x00008676 arg  0x0000075e , 0x00000011 
+ 00030782  0x00008677 arg  0x00000776 , 0x00000005 
+ 00030783  0x00008678 call  0x000077a8 
+ 00030784  0x00008679 arg  0x00000776 , 0x00000011 
+ 00030785  0x0000867a arg  0x0000072e , 0x00000012 
+ 00030786  0x0000867b arg  0x00000776 , 0x00000005 
+ 00030787  0x0000867c call  0x00007758 
+ 00030788  0x0000867d arg  0x00000776 , 0x00000011 
+ 00030789  0x0000867e arg  0x0000072e , 0x00000012 
+ 00030790  0x0000867f arg  0x00000676 , 0x00000005 
+ 00030791  0x00008680 call  0x00007758 
+ 00030792  0x00008681 arg  0x0000072e , 0x00000011 
+ 00030793  0x00008682 arg  0x00000676 , 0x00000012 
+ 00030794  0x00008683 arg  0x00000776 , 0x00000005 
+ 00030795  0x00008684 call  0x00007758 
+ 00030796  0x00008685 arg  0x00000776 , 0x00000011 
+ 00030797  0x00008686 arg  0x0000075e , 0x00000012 
+ 00030798  0x00008687 arg  0x00000776 , 0x00000005 
+ 00030799  0x00008688 call  0x00007786 
+ 00030800  0x00008689 arg  0x00000776 , 0x00000011 
+ 00030801  0x0000868a arg  0x00000746 , 0x00000012 
+ 00030802  0x0000868b arg  0x0000068e , 0x00000005 
+ 00030803  0x0000868c branch  0x00007758 
+ 00030804  0x00008691 arg  0x00000616 , 0x00000011 
+ 00030805  0x00008692 arg  0x0000078e , 0x00000005 
+ 00030806  0x00008693 call  0x000077a8 
+ 00030807  0x00008694 arg  0x00000676 , 0x00000011 
+ 00030808  0x00008695 arg  0x0000078e , 0x00000012 
+ 00030809  0x00008696 arg  0x00000746 , 0x00000005 
+ 00030810  0x00008697 call  0x00007786 
+ 00030811  0x00008698 arg  0x00000616 , 0x00000011 
+ 00030812  0x00008699 arg  0x0000078e , 0x00000012 
+ 00030813  0x0000869a arg  0x0000078e , 0x00000005 
+ 00030814  0x0000869b call  0x00007786 
+ 00030815  0x0000869c arg  0x0000068e , 0x00000011 
+ 00030816  0x0000869d arg  0x0000078e , 0x00000012 
+ 00030817  0x0000869e arg  0x0000072e , 0x00000005 
+ 00030818  0x0000869f call  0x00007786 
+ 00030819  0x000086a0 arg  0x000006a6 , 0x00000011 
+ 00030820  0x000086a1 arg  0x0000078e , 0x00000005 
+ 00030821  0x000086a2 call  0x000077a8 
+ 00030822  0x000086a3 arg  0x000005e6 , 0x00000011 
+ 00030823  0x000086a4 arg  0x0000078e , 0x00000012 
+ 00030824  0x000086a5 arg  0x0000075e , 0x00000005 
+ 00030825  0x000086a6 call  0x00007786 
+ 00030826  0x000086a7 arg  0x000006a6 , 0x00000011 
+ 00030827  0x000086a8 arg  0x0000078e , 0x00000012 
+ 00030828  0x000086a9 arg  0x0000078e , 0x00000005 
+ 00030829  0x000086aa call  0x00007786 
+ 00030830  0x000086ab arg  0x000005fe , 0x00000011 
+ 00030831  0x000086ac arg  0x0000078e , 0x00000012 
+ 00030832  0x000086ad arg  0x00000776 , 0x00000005 
+ 00030833  0x000086ae call  0x00007786 
+ 00030834  0x000086af arg  0x00000746 , 0x00000011 
+ 00030835  0x000086b0 arg  0x0000075e , 0x00000012 
+ 00030836  0x000086b1 arg  0x0000078e , 0x00000005 
+ 00030837  0x000086b2 call  0x00007758 
+ 00030838  0x000086b3 arg  0x00000746 , 0x00000011 
+ 00030839  0x000086b4 arg  0x0000075e , 0x00000012 
+ 00030840  0x000086b5 arg  0x00000746 , 0x00000005 
+ 00030841  0x000086b6 call  0x00007755 
+ 00030842  0x000086b7 arg  0x0000072e , 0x00000011 
+ 00030843  0x000086b8 arg  0x00000776 , 0x00000012 
+ 00030844  0x000086b9 arg  0x0000075e , 0x00000005 
+ 00030845  0x000086ba call  0x00007758 
+ 00030846  0x000086bb arg  0x0000072e , 0x00000011 
+ 00030847  0x000086bc arg  0x00000776 , 0x00000012 
+ 00030848  0x000086bd arg  0x0000072e , 0x00000005 
+ 00030849  0x000086be call  0x00007755 
+ 00030850  0x000086bf arg  0x0000072e , 0x00000011 
+ 00030851  0x000086c0 arg  0x0000078e , 0x00000012 
+ 00030852  0x000086c1 arg  0x0000072e , 0x00000005 
+ 00030853  0x000086c2 call  0x00007786 
+ 00030854  0x000086c3 arg  0x000006a6 , 0x00000011 
+ 00030855  0x000086c4 arg  0x00000616 , 0x00000012 
+ 00030856  0x000086c5 arg  0x00000776 , 0x00000005 
+ 00030857  0x000086c6 call  0x00007786 
+ 00030858  0x000086c7 arg  0x00000776 , 0x00000011 
+ 00030859  0x000086c8 arg  0x0000078e , 0x00000012 
+ 00030860  0x000086c9 arg  0x000006a6 , 0x00000005 
+ 00030861  0x000086ca call  0x00007786 
+ 00030862  0x000086cb arg  0x0000078e , 0x00000011 
+ 00030863  0x000086cc arg  0x0000078e , 0x00000005 
+ 00030864  0x000086cd call  0x000077a8 
+ 00030865  0x000086ce arg  0x0000078e , 0x00000011 
+ 00030866  0x000086cf arg  0x00000746 , 0x00000012 
+ 00030867  0x000086d0 arg  0x00000776 , 0x00000005 
+ 00030868  0x000086d1 call  0x00007786 
+ 00030869  0x000086d2 arg  0x0000078e , 0x00000011 
+ 00030870  0x000086d3 arg  0x0000072e , 0x00000012 
+ 00030871  0x000086d4 arg  0x0000072e , 0x00000005 
+ 00030872  0x000086d5 call  0x00007786 
+ 00030873  0x000086d6 arg  0x0000075e , 0x00000011 
+ 00030874  0x000086d7 arg  0x00000676 , 0x00000005 
+ 00030875  0x000086d8 call  0x000077a8 
+ 00030876  0x000086d9 arg  0x00000676 , 0x00000011 
+ 00030877  0x000086da arg  0x00000776 , 0x00000012 
+ 00030878  0x000086db arg  0x00000676 , 0x00000005 
+ 00030879  0x000086dc call  0x00007758 
+ 00030880  0x000086dd arg  0x00000676 , 0x00000006 
+ 00030881  0x000086de arg  0x0000078e , 0x00000005 
+ 00030882  0x000086df call  0x00007ebe 
+ 00030883  0x000086e0 arg  0x0000078e , 0x00000011 
+ 00030884  0x000086e1 call  0x00007748 
+ 00030885  0x000086e2 arg  0x00000776 , 0x00000011 
+ 00030886  0x000086e3 arg  0x0000078e , 0x00000012 
+ 00030887  0x000086e4 arg  0x00000776 , 0x00000005 
+ 00030888  0x000086e5 call  0x00007758 
+ 00030889  0x000086e6 arg  0x00000776 , 0x00000011 
+ 00030890  0x000086e7 arg  0x0000075e , 0x00000012 
+ 00030891  0x000086e8 arg  0x0000075e , 0x00000005 
+ 00030892  0x000086e9 call  0x00007786 
+ 00030893  0x000086ea arg  0x0000075e , 0x00000011 
+ 00030894  0x000086eb arg  0x0000072e , 0x00000012 
+ 00030895  0x000086ec arg  0x0000068e , 0x00000005 
+ 00030896  0x000086ed call  0x00007758 
+ 00030897  0x000086ee arg  0x0000068e , 0x00000011 
+ 00030898  0x000086ef arg  0x00000886 , 0x00000012 
+ 00030899  0x000086f0 arg  0x0000068e , 0x00000005 
+ 00030900  0x000086f1 force  0x00000000 , 0x00000013 
+ 00030901  0x000086f2 fetch  0x00000001 , 0x0000068e 
+ 00030902  0x000086f3 isolate1  0x00000000 , 0x0000003f 
+ 00030903  0x000086f4 call  0x00007711 , 0x00000001 
+ 00030904  0x000086f5 copy  0x00000013 , 0x00000030 
+ 00030905  0x000086f6 arg  0x0000068e , 0x00000011 
+ 00030906  0x000086f7 call  0x0000772d 
+ 00030907  0x000086f8 fetch  0x00000001 , 0x000006a5 
+ 00030908  0x000086f9 isolate1  0x00000000 , 0x00000030 
+ 00030909  0x000086fa setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00030910  0x000086fb store  0x00000001 , 0x000006a5 
+ 00030911  0x000086fc rtn 
+ 00030912  0x00008701 fetch  0x00000001 , 0x000005e3 
+ 00030913  0x00008702 increase  0xffffffff , 0x0000003f 
+ 00030914  0x00008703 nrtn  0x00000002 
+ 00030915  0x00008704 store  0x00000001 , 0x000005e3 
+ 00030916  0x00008705 fetch  0x00000001 , 0x000005e2 
+ 00030917  0x00008706 call  0x00007803 , 0x00000034 
+ 00030918  0x00008707 fetch  0x00000001 , 0x000005e3 
+ 00030919  0x00008708 arg  0x000006be , 0x00000006 
+ 00030920  0x00008709 call  0x000076ec 
+ 00030921  0x0000870a branch  0x000078c0 , 0x00000001 
+ 00030922  0x0000870b fetch  0x00000001 , 0x000005e2 
+ 00030923  0x0000870c nbranch  0x000078ce , 0x00000034 
+ 00030924  0x0000870d call  0x00007854 
+ 00030925  0x0000870e branch  0x000078c0 
+ 00030926  0x00008710 jam  0x00000000 , 0x000005e2 
+ 00030927  0x00008711 arg  0x000005e6 , 0x00000006 
+ 00030928  0x00008712 arg  0x00000676 , 0x00000005 
+ 00030929  0x00008713 call  0x000076f2 
+ 00030930  0x00008714 branch  0x000078c0 
+ 00030931  0x00008718 arg  0x000006a6 , 0x00000011 
+ 00030932  0x00008719 arg  0x00000776 , 0x00000005 
+ 00030933  0x0000871a call  0x000077be 
+ 00030934  0x0000871b arg  0x00000776 , 0x00000011 
+ 00030935  0x0000871c arg  0x0000072e , 0x00000005 
+ 00030936  0x0000871d call  0x000077a8 
+ 00030937  0x0000871e arg  0x00000676 , 0x00000011 
+ 00030938  0x0000871f arg  0x0000072e , 0x00000012 
+ 00030939  0x00008720 arg  0x0000062e , 0x00000005 
+ 00030940  0x00008721 call  0x00007786 
+ 00030941  0x00008722 arg  0x00000776 , 0x00000011 
+ 00030942  0x00008723 arg  0x0000072e , 0x00000012 
+ 00030943  0x00008724 arg  0x0000075e , 0x00000005 
+ 00030944  0x00008725 call  0x00007786 
+ 00030945  0x00008726 arg  0x0000068e , 0x00000011 
+ 00030946  0x00008727 arg  0x0000075e , 0x00000012 
+ 00030947  0x00008728 arg  0x00000646 , 0x00000005 
+ 00030948  0x00008729 branch  0x00007786 
+ 00030949  0x0000872e ifetch  0x00000004 , 0x00000006 
+ 00030950  0x0000872f force  0x00000004 , 0x00000011 
+ 00030951  0x00008730 increase  0x00000003 , 0x00000005 
+ 00030952  0x00008732 istore  0x00000001 , 0x00000005 
+ 00030953  0x00008733 rshift8  0x0000003f , 0x0000003f 
+ 00030954  0x00008734 increase  0xfffffffe , 0x00000005 
+ 00030955  0x00008735 increase  0xffffffff , 0x00000011 
+ 00030956  0x00008736 nbranch  0x000078e8 , 0x00000005 
+ 00030957  0x00008737 increase  0x00000005 , 0x00000005 
+ 00030958  0x00008738 loop  0x000078e5 
+ 00030959  0x00008739 rtn 
+ 00030960  0x0000873d lshift2  0x00000007 , 0x0000003f 
+ 00030961  0x0000873e iadd  0x0000000b , 0x00000006 
+ 00030962  0x0000873f ifetch  0x00000004 , 0x00000006 
+ 00030963  0x00008740 rtn 
+ 00030964  0x00008743 force  0x00000010 , 0x00000030 
+ 00030965  0x00008744 arg  0x000005e6 , 0x0000000b 
+ 00030966  0x00008746 add  0x00000030 , 0xfffffff9 , 0x00000007 
+ 00030967  0x00008747 call  0x000078f0 
+ 00030968  0x00008748 iforce  0x00000002 
+ 00030969  0x00008749 add  0x00000030 , 0xfffffff0 , 0x00000007 
+ 00030970  0x0000874a call  0x000078f0 
+ 00030971  0x0000874b iadd  0x00000002 , 0x00000002 
+ 00030972  0x0000874c add  0x00000030 , 0xfffffffe , 0x00000007 
+ 00030973  0x0000874d call  0x000078f0 
+ 00030974  0x0000874e shasx  0x0000003f , 0x00000001 , 0x0000003f 
+ 00030975  0x0000874f iadd  0x00000002 , 0x00000002 
+ 00030976  0x00008750 add  0x00000030 , 0xfffffff1 , 0x00000007 
+ 00030977  0x00008751 call  0x000078f0 
+ 00030978  0x00008752 shasx  0x0000003f , 0x00000000 , 0x0000003f 
+ 00030979  0x00008753 iadd  0x00000002 , 0x00000002 
+ 00030980  0x00008754 lshift2  0x00000030 , 0x0000003f 
+ 00030981  0x00008755 iadd  0x0000000b , 0x00000005 
+ 00030982  0x00008756 istoret  0x00000004 , 0x00000005 
+ 00030983  0x00008757 increase  0x00000001 , 0x00000030 
+ 00030984  0x00008758 compare  0x00000040 , 0x00000030 , 0x000000ff 
+ 00030985  0x00008759 nbranch  0x000078f6 , 0x00000001 
+ 00030986  0x0000875a rtn 
+ 00030987  0x0000875e arg  0x000008fe , 0x00000006 
+ 00030988  0x0000875f force  0x00000007 , 0x00000038 
+ 00030989  0x00008761 ifetch  0x00000004 , 0x00000006 
+ 00030990  0x00008762 iforce  0x0000002f 
+ 00030991  0x00008763 increase  0xffffffff , 0x00000038 
+ 00030992  0x00008764 branch  0x0000790d , 0x00000002 
+ 00030993  0x00008765 rtn 
+ 00030994  0x00008768 bpatchx  0x000000ec , 0x0000403d 
+ 00030995  0x00008769 call  0x000078f4 
+ 00030996  0x0000876a arg  0x000006e6 , 0x00000005 
+ 00030997  0x0000876b force  0x00000000 , 0x00000038 
+ 00030998  0x0000876d deposit  0x0000002f 
+ 00030999  0x0000876e istore  0x00000004 , 0x00000005 
+ 00031000  0x0000876f increase  0x00000001 , 0x00000038 
+ 00031001  0x00008770 compare  0x00000008 , 0x00000038 , 0x000000ff 
+ 00031002  0x00008771 nbranch  0x00007916 , 0x00000001 
+ 00031003  0x00008772 call  0x000074b9 
+ 00031004  0x00008773 arg  0x00008700 , 0x0000000b 
+ 00031005  0x00008774 arg  0x000005e6 , 0x00000030 
+ 00031006  0x00008775 force  0x00000040 , 0x00000039 
+ 00031007  0x00008777 ifetcht  0x00000004 , 0x00000030 
+ 00031008  0x00008778 ifetch  0x00000004 , 0x0000000b 
+ 00031009  0x00008779 increase  0x00000004 , 0x0000000b 
+ 00031010  0x0000877a increase  0x00000004 , 0x00000030 
+ 00031011  0x0000877b iadd  0x00000002 , 0x0000003f 
+ 00031012  0x0000877c force  0x00000007 , 0x00000038 
+ 00031013  0x0000877d iadd  0x0000002f , 0x00000002 
+ 00031014  0x0000877e force  0x00000004 , 0x00000038 
+ 00031015  0x0000877f shasx  0x0000002f , 0x00000003 , 0x0000003f 
+ 00031016  0x00008780 iadd  0x00000002 , 0x00000002 
+ 00031017  0x00008781 force  0x00000005 , 0x00000038 
+ 00031018  0x00008782 deposit  0x0000002f 
+ 00031019  0x00008783 force  0x00000006 , 0x00000038 
+ 00031020  0x00008784 ixor  0x0000002f , 0x0000003f 
+ 00031021  0x00008785 force  0x00000004 , 0x00000038 
+ 00031022  0x00008786 iand  0x0000002f , 0x0000003f 
+ 00031023  0x00008787 force  0x00000006 , 0x00000038 
+ 00031024  0x00008788 ixor  0x0000002f , 0x0000003f 
+ 00031025  0x00008789 iadd  0x00000002 , 0x00000002 
+ 00031026  0x0000878a force  0x00000007 , 0x00000038 
+ 00031027  0x0000878b copy  0x00000002 , 0x0000002f 
+ 00031028  0x0000878c force  0x00000003 , 0x00000038 
+ 00031029  0x0000878d deposit  0x0000002f 
+ 00031030  0x0000878e iadd  0x00000002 , 0x0000002f 
+ 00031031  0x0000878f force  0x00000000 , 0x00000038 
+ 00031032  0x00008790 deposit  0x0000002f 
+ 00031033  0x00008791 force  0x00000001 , 0x00000038 
+ 00031034  0x00008792 iand  0x0000002f , 0x00000002 
+ 00031035  0x00008793 ior  0x0000002f , 0x0000003f 
+ 00031036  0x00008794 force  0x00000002 , 0x00000038 
+ 00031037  0x00008795 iand  0x0000002f , 0x0000003f 
+ 00031038  0x00008796 ior  0x00000002 , 0x00000002 
+ 00031039  0x00008797 force  0x00000000 , 0x00000038 
+ 00031040  0x00008798 shasx  0x0000002f , 0x00000002 , 0x0000003f 
+ 00031041  0x00008799 iadd  0x00000002 , 0x0000003f 
+ 00031042  0x0000879a force  0x00000007 , 0x00000038 
+ 00031043  0x0000879b iadd  0x0000002f , 0x0000002f 
+ 00031044  0x0000879c regexrot 
+ 00031045  0x0000879d loop  0x0000791f 
+ 00031046  0x0000879e arg  0x000006e6 , 0x00000006 
+ 00031047  0x0000879f force  0x00000000 , 0x00000038 
+ 00031048  0x000087a1 ifetch  0x00000004 , 0x00000006 
+ 00031049  0x000087a2 iadd  0x0000002f , 0x0000002f 
+ 00031050  0x000087a3 increase  0x00000001 , 0x00000038 
+ 00031051  0x000087a4 compare  0x00000008 , 0x00000038 , 0x000000ff 
+ 00031052  0x000087a5 nbranch  0x00007948 , 0x00000001 
+ 00031053  0x000087a6 branch  0x000074bd 
+ 00031054  0x000087aa arg  0x00000a3e , 0x00000005 
+ 00031055  0x000087ab force  0x00000007 , 0x00000038 
+ 00031056  0x000087ad deposit  0x0000002f 
+ 00031057  0x000087ae istore  0x00000004 , 0x00000005 
+ 00031058  0x000087af increase  0xffffffff , 0x00000038 
+ 00031059  0x000087b0 branch  0x00007950 , 0x00000002 
+ 00031060  0x000087b1 rtn 
+ 00031061  0x000087b5 arg  0x000005e6 , 0x00000005 
+ 00031062  0x000087b6 increase  0xfffffffc , 0x00000006 
+ 00031063  0x000087b7 sub  0x00000039 , 0x00000010 , 0x00000011 
+ 00031064  0x000087b9 ifetch  0x00000004 , 0x00000006 
+ 00031065  0x000087ba ixor  0x00000002 , 0x0000003f 
+ 00031066  0x000087bb istore  0x00000004 , 0x00000005 
+ 00031067  0x000087bc increase  0xfffffff8 , 0x00000006 
+ 00031068  0x000087bd loop  0x00007958 
+ 00031069  0x000087be copy  0x00000011 , 0x00000039 
+ 00031070  0x000087bf deposit  0x00000002 
+ 00031071  0x000087c1 istore  0x00000004 , 0x00000005 
+ 00031072  0x000087c2 loop  0x0000795f 
+ 00031073  0x000087c3 rtn 
+ 00031074  0x000087c6 call  0x00007967 
+ 00031075  0x000087c7 call  0x0000794e 
+ 00031076  0x000087c8 branch  0x0000798d 
+ 00031077  0x000087cb call  0x00007967 
+ 00031078  0x000087cc branch  0x0000798d 
+ 00031079  0x000087cf arg  0x000009de , 0x00000006 
+ 00031080  0x000087d0 arg  0x000005e6 , 0x00000005 
+ 00031081  0x000087d1 force  0x00000006 , 0x00000039 
+ 00031082  0x000087d2 call  0x00007a71 
+ 00031083  0x000087d3 arg  0x00004642 , 0x00000006 
+ 00031084  0x000087d4 force  0x00000006 , 0x00000039 
+ 00031085  0x000087d5 call  0x00007a71 
+ 00031086  0x000087d6 arg  0x00000a3e , 0x00000006 
+ 00031087  0x000087d7 call  0x00007a70 
+ 00031088  0x000087d8 call  0x0000790b 
+ 00031089  0x000087d9 call  0x00007912 
+ 00031090  0x000087da arg  0x00000a2e , 0x00000006 
+ 00031091  0x000087db arg  0x000005e6 , 0x00000005 
+ 00031092  0x000087dc branch  0x00007984 
+ 00031093  0x000087df arg  0x00004642 , 0x00000006 
+ 00031094  0x000087e0 arg  0x000005e6 , 0x00000005 
+ 00031095  0x000087e1 force  0x00000006 , 0x00000039 
+ 00031096  0x000087e2 call  0x00007a71 
+ 00031097  0x000087e3 arg  0x000009de , 0x00000006 
+ 00031098  0x000087e4 force  0x00000006 , 0x00000039 
+ 00031099  0x000087e5 call  0x00007a71 
+ 00031100  0x000087e6 arg  0x00000a2e , 0x00000006 
+ 00031101  0x000087e7 call  0x00007a70 
+ 00031102  0x000087e8 call  0x0000790b 
+ 00031103  0x000087e9 call  0x00007912 
+ 00031104  0x000087ea arg  0x00000a3e , 0x00000006 
+ 00031105  0x000087eb arg  0x000005e6 , 0x00000005 
+ 00031106  0x000087ec call  0x00007984 
+ 00031107  0x000087ed branch  0x0000798d 
+ 00031108  0x000087f0 call  0x00007a70 
+ 00031109  0x000087f1 setarg  0x00800000 
+ 00031110  0x000087f2 lshift8  0x0000003f , 0x0000003f 
+ 00031111  0x000087f3 istore  0x00000004 , 0x00000005 
+ 00031112  0x000087f4 force  0x00000005 , 0x00000039 
+ 00031113  0x000087f5 call  0x00007ec6 
+ 00031114  0x000087f6 setarg  0x00000280 
+ 00031115  0x000087f7 istore  0x00000004 , 0x00000005 
+ 00031116  0x000087f8 branch  0x00007912 
+ 00031117  0x000087fa fetch  0x00000004 , 0x00000a3e 
+ 00031118  0x000087fc arg  0x000003e8 , 0x00000011 
+ 00031119  0x000087fd idiv  0x00000011 
+ 00031120  0x000087fe call  0x00007f86 
+ 00031121  0x000087ff remainder  0x0000003f 
+ 00031122  0x00008800 store  0x00000004 , 0x000009ba 
+ 00031123  0x00008801 quotient  0x0000003f 
+ 00031124  0x00008802 arg  0x000003e8 , 0x00000011 
+ 00031125  0x00008803 idiv  0x00000011 
+ 00031126  0x00008804 call  0x00007f86 
+ 00031127  0x00008805 remainder  0x0000003f 
+ 00031128  0x00008806 arg  0x000003e8 , 0x00000011 
+ 00031129  0x00008807 imul32  0x00000011 , 0x0000003f 
+ 00031130  0x00008808 fetcht  0x00000004 , 0x000009ba 
+ 00031131  0x00008809 iadd  0x00000002 , 0x0000003f 
+ 00031132  0x0000880a store  0x00000004 , 0x000009ba 
+ 00031133  0x0000880b rtn 
+ 00031134  0x0000880e jam  0x00000000 , 0x00004664 
+ 00031135  0x0000880f branch  0x000079a2 
+ 00031136  0x00008812 fetch  0x00000001 , 0x00004662 
+ 00031137  0x00008813 bne  0x00000002 , 0x0000799e 
+ 00031138  0x00008815 bpatchx  0x000000ed , 0x0000403d 
+ 00031139  0x00008816 setarg  0x00363636 
+ 00031140  0x00008817 lshift8  0x0000003f , 0x00000002 
+ 00031141  0x00008818 or_into  0x00000036 , 0x00000002 
+ 00031142  0x00008819 fetch  0x00000002 , 0x00000a7e 
+ 00031143  0x0000881a copy  0x0000003f , 0x00000006 
+ 00031144  0x0000881b force  0x00000004 , 0x00000039 
+ 00031145  0x0000881c call  0x00007955 
+ 00031146  0x0000881d call  0x0000790b 
+ 00031147  0x0000881e call  0x00007912 
+ 00031148  0x0000881f fetch  0x00000002 , 0x00000a80 
+ 00031149  0x00008820 copy  0x0000003f , 0x00000006 
+ 00031150  0x00008821 arg  0x000005e6 , 0x00000005 
+ 00031151  0x00008822 force  0x00000006 , 0x00000039 
+ 00031152  0x00008823 call  0x00007a71 
+ 00031153  0x00008824 fetch  0x00000002 , 0x00000a82 
+ 00031154  0x00008825 copy  0x0000003f , 0x00000006 
+ 00031155  0x00008826 force  0x00000006 , 0x00000039 
+ 00031156  0x00008827 call  0x00007a71 
+ 00031157  0x00008828 setarg  0x00800000 
+ 00031158  0x00008829 istore  0x00000003 , 0x00000005 
+ 00031159  0x0000882b fetch  0x00000001 , 0x00004664 
+ 00031160  0x0000882d istore  0x00000001 , 0x00000005 
+ 00031161  0x0000882e force  0x00000000 , 0x0000003f 
+ 00031162  0x0000882f istore  0x00000008 , 0x00000005 
+ 00031163  0x00008830 setarg  0x00000388 
+ 00031164  0x00008831 istore  0x00000004 , 0x00000005 
+ 00031165  0x00008832 call  0x00007912 
+ 00031166  0x00008833 call  0x0000794e 
+ 00031167  0x00008834 arg  0x00000a3e , 0x00000006 
+ 00031168  0x00008835 arg  0x00000706 , 0x00000005 
+ 00031169  0x00008836 call  0x00007ebd 
+ 00031170  0x00008838 setarg  0x005c5c5c 
+ 00031171  0x00008839 lshift8  0x0000003f , 0x00000002 
+ 00031172  0x0000883a or_into  0x0000005c , 0x00000002 
+ 00031173  0x0000883b fetch  0x00000002 , 0x00000a7e 
+ 00031174  0x0000883c copy  0x0000003f , 0x00000006 
+ 00031175  0x0000883d force  0x00000004 , 0x00000039 
+ 00031176  0x0000883e call  0x00007955 
+ 00031177  0x0000883f call  0x0000790b 
+ 00031178  0x00008840 call  0x00007912 
+ 00031179  0x00008841 arg  0x00000726 , 0x00000006 
+ 00031180  0x00008842 arg  0x000005e6 , 0x00000005 
+ 00031181  0x00008843 force  0x00000008 , 0x00000039 
+ 00031182  0x00008844 call  0x00007a71 
+ 00031183  0x00008845 setarg  0x00800000 
+ 00031184  0x00008846 lshift8  0x0000003f , 0x0000003f 
+ 00031185  0x00008847 istore  0x00000004 , 0x00000005 
+ 00031186  0x00008848 call  0x00007ec5 
+ 00031187  0x00008849 setarg  0x00000300 
+ 00031188  0x0000884a istore  0x00000004 , 0x00000005 
+ 00031189  0x0000884b call  0x00007912 
+ 00031190  0x0000884c branch  0x0000794e 
+ 00031191  0x00008850 setarg  0x00363636 
+ 00031192  0x00008851 lshift8  0x0000003f , 0x00000002 
+ 00031193  0x00008852 or_into  0x00000036 , 0x00000002 
+ 00031194  0x00008853 arg  0x00000a1e , 0x00000006 
+ 00031195  0x00008854 force  0x00000006 , 0x00000039 
+ 00031196  0x00008855 call  0x00007955 
+ 00031197  0x00008856 call  0x0000790b 
+ 00031198  0x00008857 call  0x00007912 
+ 00031199  0x00008858 fetch  0x00000002 , 0x00000a8a 
+ 00031200  0x00008859 copy  0x0000003f , 0x00000006 
+ 00031201  0x0000885a arg  0x000005e6 , 0x00000005 
+ 00031202  0x0000885b call  0x00007a70 
+ 00031203  0x0000885c fetch  0x00000002 , 0x00000a8c 
+ 00031204  0x0000885d copy  0x0000003f , 0x00000006 
+ 00031205  0x0000885e call  0x00007a70 
+ 00031206  0x00008860 setarg  0x0062746c 
+ 00031207  0x00008861 lshift8  0x0000003f , 0x0000003f 
+ 00031208  0x00008862 or_into  0x0000006b , 0x0000003f 
+ 00031209  0x00008863 istore  0x00000004 , 0x00000005 
+ 00031210  0x00008864 arg  0x00000733 , 0x00000006 
+ 00031211  0x00008865 force  0x00000003 , 0x00000039 
+ 00031212  0x00008866 call  0x00007a71 
+ 00031213  0x00008868 setarg  0x00800000 
+ 00031214  0x00008869 lshift8  0x0000003f , 0x0000003f 
+ 00031215  0x0000886a istore  0x00000004 , 0x00000005 
+ 00031216  0x0000886b force  0x00000000 , 0x0000003f 
+ 00031217  0x0000886c istore  0x00000008 , 0x00000005 
+ 00031218  0x0000886d setarg  0x00000380 
+ 00031219  0x0000886e istore  0x00000004 , 0x00000005 
+ 00031220  0x0000886f call  0x00007912 
+ 00031221  0x00008871 call  0x0000794e 
+ 00031222  0x00008872 arg  0x00000a3e , 0x00000006 
+ 00031223  0x00008873 arg  0x00000706 , 0x00000005 
+ 00031224  0x00008874 call  0x00007ebd 
+ 00031225  0x00008876 setarg  0x005c5c5c 
+ 00031226  0x00008877 lshift8  0x0000003f , 0x00000002 
+ 00031227  0x00008878 or_into  0x0000005c , 0x00000002 
+ 00031228  0x00008879 arg  0x00000a1e , 0x00000006 
+ 00031229  0x0000887a force  0x00000006 , 0x00000039 
+ 00031230  0x0000887b call  0x00007955 
+ 00031231  0x0000887c call  0x0000790b 
+ 00031232  0x0000887d call  0x00007912 
+ 00031233  0x0000887e arg  0x00000726 , 0x00000006 
+ 00031234  0x0000887f arg  0x000005e6 , 0x00000005 
+ 00031235  0x00008880 force  0x00000008 , 0x00000039 
+ 00031236  0x00008881 call  0x00007a71 
+ 00031237  0x00008882 setarg  0x00800000 
+ 00031238  0x00008883 lshift8  0x0000003f , 0x0000003f 
+ 00031239  0x00008884 istore  0x00000004 , 0x00000005 
+ 00031240  0x00008885 call  0x00007ec5 
+ 00031241  0x00008886 setarg  0x00000300 
+ 00031242  0x00008887 istore  0x00000004 , 0x00000005 
+ 00031243  0x00008888 call  0x00007912 
+ 00031244  0x00008889 branch  0x0000794e 
+ 00031245  0x0000888d fetch  0x00000001 , 0x00004662 
+ 00031246  0x0000888e bne  0x00000002 , 0x00007a1e 
+ 00031247  0x00008890 bpatchx  0x000000ee , 0x0000403d 
+ 00031248  0x00008891 setarg  0x00363636 
+ 00031249  0x00008892 lshift8  0x0000003f , 0x00000002 
+ 00031250  0x00008893 or_into  0x00000036 , 0x00000002 
+ 00031251  0x00008894 arg  0x00000a1e , 0x00000006 
+ 00031252  0x00008895 force  0x00000006 , 0x00000039 
+ 00031253  0x00008896 call  0x00007955 
+ 00031254  0x00008897 call  0x0000790b 
+ 00031255  0x00008898 call  0x00007912 
+ 00031256  0x00008899 arg  0x00000a3e , 0x00000006 
+ 00031257  0x0000889a arg  0x000005e6 , 0x00000005 
+ 00031258  0x0000889b call  0x00007a70 
+ 00031259  0x0000889c arg  0x00000a2e , 0x00000006 
+ 00031260  0x0000889d call  0x00007a70 
+ 00031261  0x0000889e branch  0x00007a33 
+ 00031262  0x000088a1 setarg  0x00000000 
+ 00031263  0x000088a2 store  0x00000004 , 0x0000468a 
+ 00031264  0x000088a3 branch  0x00007a0f 
+ 00031265  0x000088a6 setarg  0x00000000 
+ 00031266  0x000088a7 store  0x00000004 , 0x0000468a 
+ 00031267  0x000088a8 branch  0x00007a26 
+ 00031268  0x000088ac fetch  0x00000001 , 0x00004662 
+ 00031269  0x000088ad bne  0x00000002 , 0x00007a21 
+ 00031270  0x000088af setarg  0x00363636 
+ 00031271  0x000088b0 lshift8  0x0000003f , 0x00000002 
+ 00031272  0x000088b1 or_into  0x00000036 , 0x00000002 
+ 00031273  0x000088b2 arg  0x00000a1e , 0x00000006 
+ 00031274  0x000088b3 force  0x00000006 , 0x00000039 
+ 00031275  0x000088b4 call  0x00007955 
+ 00031276  0x000088b5 call  0x0000790b 
+ 00031277  0x000088b6 call  0x00007912 
+ 00031278  0x000088b8 arg  0x00000a2e , 0x00000006 
+ 00031279  0x000088b9 arg  0x000005e6 , 0x00000005 
+ 00031280  0x000088ba call  0x00007a70 
+ 00031281  0x000088bb arg  0x00000a3e , 0x00000006 
+ 00031282  0x000088bc call  0x00007a70 
+ 00031283  0x000088be setarg  0x00000000 
+ 00031284  0x000088bf istore  0x00000008 , 0x00000005 
+ 00031285  0x000088c0 istore  0x00000004 , 0x00000005 
+ 00031286  0x000088c1 fetch  0x00000004 , 0x0000468a 
+ 00031287  0x000088c2 istore  0x00000004 , 0x00000005 
+ 00031288  0x000088c4 copy  0x00000005 , 0x00000002 
+ 00031289  0x000088c5 jam  0x00000080 , 0x00000726 
+ 00031290  0x000088c6 copy  0x00000002 , 0x00000005 
+ 00031291  0x000088c7 arg  0x00000736 , 0x00000006 
+ 00031292  0x000088c8 call  0x00007a70 
+ 00031293  0x000088ca call  0x00007912 
+ 00031294  0x000088cc arg  0x000005e6 , 0x00000005 
+ 00031295  0x000088cd force  0x00000007 , 0x00000039 
+ 00031296  0x000088ce call  0x00007ec6 
+ 00031297  0x000088cf istore  0x00000004 , 0x00000005 
+ 00031298  0x000088d0 setarg  0x000003f8 
+ 00031299  0x000088d1 istore  0x00000004 , 0x00000005 
+ 00031300  0x000088d2 call  0x00007912 
+ 00031301  0x000088d3 call  0x0000794e 
+ 00031302  0x000088d5 arg  0x00000a3e , 0x00000006 
+ 00031303  0x000088d6 arg  0x00000706 , 0x00000005 
+ 00031304  0x000088d7 call  0x00007ebd 
+ 00031305  0x000088d9 setarg  0x005c5c5c 
+ 00031306  0x000088da lshift8  0x0000003f , 0x00000002 
+ 00031307  0x000088db or_into  0x0000005c , 0x00000002 
+ 00031308  0x000088dc arg  0x00000a1e , 0x00000006 
+ 00031309  0x000088dd force  0x00000006 , 0x00000039 
+ 00031310  0x000088de call  0x00007955 
+ 00031311  0x000088df call  0x0000790b 
+ 00031312  0x000088e0 call  0x00007912 
+ 00031313  0x000088e1 arg  0x00000726 , 0x00000006 
+ 00031314  0x000088e2 arg  0x000005e6 , 0x00000005 
+ 00031315  0x000088e3 force  0x00000008 , 0x00000039 
+ 00031316  0x000088e4 call  0x00007a71 
+ 00031317  0x000088e5 setarg  0x00800000 
+ 00031318  0x000088e6 lshift8  0x0000003f , 0x0000003f 
+ 00031319  0x000088e7 istore  0x00000004 , 0x00000005 
+ 00031320  0x000088e8 call  0x00007ec5 
+ 00031321  0x000088e9 setarg  0x00000300 
+ 00031322  0x000088ea istore  0x00000004 , 0x00000005 
+ 00031323  0x000088eb call  0x00007912 
+ 00031324  0x000088ec branch  0x0000794e 
+ 00031325  0x000088f4 jam  0x000000c0 , 0x000005e3 
+ 00031326  0x000088f6 fetch  0x00000001 , 0x000005e3 
+ 00031327  0x000088f7 rtn  0x00000034 
+ 00031328  0x000088f8 increase  0xffffffff , 0x0000003f 
+ 00031329  0x000088f9 store  0x00000001 , 0x000005e3 
+ 00031330  0x000088fa arg  0x000006be , 0x00000006 
+ 00031331  0x000088fb call  0x000076ec 
+ 00031332  0x000088fc branch  0x00007a5e , 0x00000001 
+ 00031333  0x000088fd arg  0x000005e6 , 0x00000006 
+ 00031334  0x000088fe arg  0x00000676 , 0x00000005 
+ 00031335  0x000088ff branch  0x000076f2 
+ 00031336  0x00008902 call  0x00007803 
+ 00031337  0x00008903 fetch  0x00000001 , 0x000005e3 
+ 00031338  0x00008904 increase  0xffffffff , 0x0000003f 
+ 00031339  0x00008905 store  0x00000001 , 0x000005e3 
+ 00031340  0x00008906 arg  0x000006be , 0x00000006 
+ 00031341  0x00008907 call  0x000076ec 
+ 00031342  0x00008908 rtn  0x00000001 
+ 00031343  0x00008909 branch  0x00007854 
+ 00031344  0x0000890c force  0x00000004 , 0x00000039 
+ 00031345  0x0000890e increase  0xfffffffc , 0x00000006 
+ 00031346  0x00008910 ifetch  0x00000004 , 0x00000006 
+ 00031347  0x00008911 istore  0x00000004 , 0x00000005 
+ 00031348  0x00008912 increase  0xfffffff8 , 0x00000006 
+ 00031349  0x00008913 loop  0x00007a72 
+ 00031350  0x00008914 rtn 
+ 00031351  0x0000891a bpatchx  0x000000ef , 0x0000403d 
+ 00031352  0x0000891b fetch  0x00000001 , 0x000044be 
+ 00031353  0x0000891c branch  0x00005af0 , 0x00000034 
+ 00031354  0x0000891d call  0x00005aec 
+ 00031355  0x0000891e call  0x00007583 
+ 00031356  0x00008920 branch  0x00007a7d 
+ 00031357  0x00008926 fetch  0x00000001 , 0x000044c3 
+ 00031358  0x00008927 rtnne  0x00000000 
+ 00031359  0x00008928 fetch  0x00000001 , 0x000044c0 
+ 00031360  0x00008929 rtnne  0x00000000 
+ 00031361  0x0000892b arg  0x000045b2 , 0x00000005 
+ 00031362  0x0000892c force  0x0000000f , 0x00000007 
+ 00031363  0x0000892d call  0x000076a2 
+ 00031364  0x0000892e random  0x0000003f 
+ 00031365  0x0000892f rshift  0x0000003f , 0x0000003f 
+ 00031366  0x00008930 istore  0x00000002 , 0x00000005 
+ 00031367  0x00008932 arg  0x00000766 , 0x00000005 
+ 00031368  0x00008933 arg  0x000045b2 , 0x00000006 
+ 00031369  0x00008934 call  0x00007ebd 
+ 00031370  0x00008936 arg  0x00000646 , 0x00000005 
+ 00031371  0x00008937 arg  0x0000095e , 0x00000006 
+ 00031372  0x00008938 call  0x00007eb3 
+ 00031373  0x0000893a arg  0x00000686 , 0x00000005 
+ 00031374  0x0000893b call  0x00007ed0 
+ 00031375  0x0000893c jam  0x00000001 , 0x00000686 
+ 00031376  0x0000893e call  0x00007ac7 
+ 00031377  0x0000893f jam  0x00000003 , 0x000044c0 
+ 00031378  0x00008940 rtn 
+ 00031379  0x00008943 arg  0x000045d2 , 0x00000005 
+ 00031380  0x00008944 arg  0x000006a6 , 0x00000006 
+ 00031381  0x00008945 call  0x00007eb3 
+ 00031382  0x00008946 jam  0x00000003 , 0x000044c3 
+ 00031383  0x00008947 jam  0x00000000 , 0x000044c0 
+ 00031384  0x00008948 rtn 
+ 00031385  0x0000894d fetch  0x00000001 , 0x000009b9 
+ 00031386  0x0000894e rtnne  0x00000000 
+ 00031387  0x0000894f fetch  0x00000001 , 0x000044c0 
+ 00031388  0x00008950 rtnne  0x00000000 
+ 00031389  0x00008952 arg  0x00000766 , 0x00000005 
+ 00031390  0x00008953 arg  0x000045b2 , 0x00000006 
+ 00031391  0x00008954 call  0x00007ebd 
+ 00031392  0x00008956 arg  0x00000646 , 0x00000005 
+ 00031393  0x00008957 arg  0x000009be , 0x00000006 
+ 00031394  0x00008958 call  0x00007eb3 
+ 00031395  0x0000895a arg  0x00000686 , 0x00000005 
+ 00031396  0x0000895b call  0x00007ed0 
+ 00031397  0x0000895c jam  0x00000001 , 0x00000686 
+ 00031398  0x0000895e call  0x00007ac7 
+ 00031399  0x0000895f jam  0x00000004 , 0x000044c0 
+ 00031400  0x00008960 rtn 
+ 00031401  0x00008965 arg  0x000009fe , 0x00000005 
+ 00031402  0x00008966 arg  0x000006a6 , 0x00000006 
+ 00031403  0x00008967 call  0x00007ebd 
+ 00031404  0x00008968 jam  0x00000003 , 0x000009b9 
+ 00031405  0x00008969 jam  0x00000000 , 0x000044c0 
+ 00031406  0x0000896a rtn 
+ 00031407  0x0000896f fetch  0x00000001 , 0x000044be 
+ 00031408  0x00008970 rtn  0x00000034 
+ 00031409  0x00008971 fetch  0x00000001 , 0x000044c0 
+ 00031410  0x00008972 rtn  0x00000034 
+ 00031411  0x00008973 increase  0x00000080 , 0x0000003f 
+ 00031412  0x00008974 store  0x00000001 , 0x000044c0 
+ 00031413  0x00008975 rtnbit1  0x00000007 
+ 00031414  0x00008976 fetch  0x00000002 , 0x000005e3 
+ 00031415  0x00008977 branch  0x00007ab9 , 0x00000034 
+ 00031416  0x00008978 branch  0x00007abf 
+ 00031417  0x0000897b bpatchx  0x000000f0 , 0x0000403e 
+ 00031418  0x0000897c call  0x00007ad4 
+ 00031419  0x0000897d fetch  0x00000001 , 0x000044c0 
+ 00031420  0x0000897e beq  0x00000003 , 0x00007a93 
+ 00031421  0x0000897f beq  0x00000004 , 0x00007aa9 
+ 00031422  0x00008980 rtn 
+ 00031423  0x00008984 call  0x00007ae6 
+ 00031424  0x00008985 fetch  0x00000002 , 0x000005e3 
+ 00031425  0x00008986 increase  0xffffffff , 0x0000003f 
+ 00031426  0x00008987 store  0x00000002 , 0x000005e3 
+ 00031427  0x00008988 arg  0x00000766 , 0x00000006 
+ 00031428  0x00008989 call  0x000076ec 
+ 00031429  0x0000898a rtn  0x00000001 
+ 00031430  0x0000898b branch  0x00007b37 
+ 00031431  0x0000898e bpatchx  0x000000f1 , 0x0000403e 
+ 00031432  0x0000898f setarg  0x00000100 , 0x0000003f 
+ 00031433  0x00008990 store  0x00000002 , 0x000005e3 
+ 00031434  0x00008992 fetch  0x00000002 , 0x000005e3 
+ 00031435  0x00008993 rtn  0x00000034 
+ 00031436  0x00008994 increase  0xffffffff , 0x0000003f 
+ 00031437  0x00008995 store  0x00000002 , 0x000005e3 
+ 00031438  0x00008996 arg  0x00000766 , 0x00000006 
+ 00031439  0x00008997 call  0x000076ec 
+ 00031440  0x00008998 branch  0x00007aca , 0x00000001 
+ 00031441  0x00008999 arg  0x00000646 , 0x00000006 
+ 00031442  0x0000899a arg  0x00000706 , 0x00000005 
+ 00031443  0x0000899b branch  0x00007eb2 
+ 00031444  0x0000899f arg  0x00000746 , 0x00000011 
+ 00031445  0x000089a0 arg  0x00000846 , 0x00000005 
+ 00031446  0x000089a1 call  0x00007ba3 
+ 00031447  0x000089a2 arg  0x00000846 , 0x00000011 
+ 00031448  0x000089a3 arg  0x000007e6 , 0x00000005 
+ 00031449  0x000089a4 call  0x00007c79 
+ 00031450  0x000089a5 arg  0x00000706 , 0x00000011 
+ 00031451  0x000089a6 arg  0x000007e6 , 0x00000012 
+ 00031452  0x000089a7 arg  0x000006a6 , 0x00000005 
+ 00031453  0x000089a8 call  0x00007be1 
+ 00031454  0x000089a9 arg  0x00000846 , 0x00000011 
+ 00031455  0x000089aa arg  0x000007e6 , 0x00000012 
+ 00031456  0x000089ab arg  0x00000826 , 0x00000005 
+ 00031457  0x000089ac call  0x00007be1 
+ 00031458  0x000089ad arg  0x00000726 , 0x00000011 
+ 00031459  0x000089ae arg  0x00000826 , 0x00000012 
+ 00031460  0x000089af arg  0x000006c6 , 0x00000005 
+ 00031461  0x000089b0 branch  0x00007be1 
+ 00031462  0x000089b3 arg  0x00000746 , 0x00000011 
+ 00031463  0x000089b4 arg  0x00000826 , 0x00000005 
+ 00031464  0x000089b5 call  0x00007c79 
+ 00031465  0x000089b6 arg  0x00000826 , 0x00000011 
+ 00031466  0x000089b7 arg  0x00000846 , 0x00000005 
+ 00031467  0x000089b8 call  0x00007c79 
+ 00031468  0x000089ba arg  0x0000093e , 0x00000011 
+ 00031469  0x000089bb arg  0x00000846 , 0x00000012 
+ 00031470  0x000089bc arg  0x00000846 , 0x00000005 
+ 00031471  0x000089bd call  0x00007be1 
+ 00031472  0x000089be arg  0x00000706 , 0x00000011 
+ 00031473  0x000089bf arg  0x00000826 , 0x00000005 
+ 00031474  0x000089c0 call  0x00007c79 
+ 00031475  0x000089c2 arg  0x00000826 , 0x00000006 
+ 00031476  0x000089c3 arg  0x000007e6 , 0x00000005 
+ 00031477  0x000089c4 call  0x00007ebd 
+ 00031478  0x000089c5 arg  0x000007e6 , 0x00000011 
+ 00031479  0x000089c6 call  0x00007c80 
+ 00031480  0x000089c7 arg  0x00000826 , 0x00000011 
+ 00031481  0x000089c8 arg  0x000007e6 , 0x00000012 
+ 00031482  0x000089c9 arg  0x00000826 , 0x00000005 
+ 00031483  0x000089ca call  0x00007c7d 
+ 00031484  0x000089cc arg  0x00000826 , 0x00000011 
+ 00031485  0x000089cd arg  0x00000846 , 0x00000012 
+ 00031486  0x000089ce arg  0x00000826 , 0x00000005 
+ 00031487  0x000089cf call  0x00007c7d 
+ 00031488  0x000089d1 arg  0x00000706 , 0x00000006 
+ 00031489  0x000089d2 arg  0x000007e6 , 0x00000005 
+ 00031490  0x000089d3 call  0x00007ebd 
+ 00031491  0x000089d4 arg  0x00000726 , 0x00000011 
+ 00031492  0x000089d5 arg  0x00000846 , 0x00000005 
+ 00031493  0x000089d6 call  0x00007c79 
+ 00031494  0x000089d7 arg  0x000007e6 , 0x00000011 
+ 00031495  0x000089d8 call  0x00007c80 
+ 00031496  0x000089d9 arg  0x000007e6 , 0x00000011 
+ 00031497  0x000089da call  0x00007c80 
+ 00031498  0x000089db arg  0x000007e6 , 0x00000011 
+ 00031499  0x000089dc arg  0x00000846 , 0x00000012 
+ 00031500  0x000089dd arg  0x000007e6 , 0x00000005 
+ 00031501  0x000089de call  0x00007be1 
+ 00031502  0x000089df arg  0x00000846 , 0x00000011 
+ 00031503  0x000089e0 arg  0x00000806 , 0x00000005 
+ 00031504  0x000089e1 call  0x00007c79 
+ 00031505  0x000089e2 arg  0x00000806 , 0x00000011 
+ 00031506  0x000089e3 call  0x00007c80 
+ 00031507  0x000089e4 arg  0x00000806 , 0x00000011 
+ 00031508  0x000089e5 call  0x00007c80 
+ 00031509  0x000089e6 arg  0x00000806 , 0x00000011 
+ 00031510  0x000089e7 call  0x00007c80 
+ 00031511  0x000089e8 arg  0x00000726 , 0x00000006 
+ 00031512  0x000089e9 arg  0x00000846 , 0x00000005 
+ 00031513  0x000089ea call  0x00007ebd 
+ 00031514  0x000089eb arg  0x00000846 , 0x00000011 
+ 00031515  0x000089ec call  0x00007c80 
+ 00031516  0x000089ed arg  0x00000846 , 0x00000011 
+ 00031517  0x000089ee arg  0x00000746 , 0x00000012 
+ 00031518  0x000089ef arg  0x00000746 , 0x00000005 
+ 00031519  0x000089f0 call  0x00007be1 
+ 00031520  0x000089f3 arg  0x00000826 , 0x00000011 
+ 00031521  0x000089f4 arg  0x00000846 , 0x00000005 
+ 00031522  0x000089f5 call  0x00007c79 
+ 00031523  0x000089f7 arg  0x00000846 , 0x00000011 
+ 00031524  0x000089f8 arg  0x000007e6 , 0x00000012 
+ 00031525  0x000089f9 arg  0x00000846 , 0x00000005 
+ 00031526  0x000089fa call  0x00007c96 
+ 00031527  0x000089fb arg  0x00000846 , 0x00000011 
+ 00031528  0x000089fc arg  0x000007e6 , 0x00000012 
+ 00031529  0x000089fd arg  0x00000706 , 0x00000005 
+ 00031530  0x000089fe call  0x00007c96 
+ 00031531  0x000089ff arg  0x000007e6 , 0x00000011 
+ 00031532  0x00008a00 arg  0x00000706 , 0x00000012 
+ 00031533  0x00008a01 arg  0x00000846 , 0x00000005 
+ 00031534  0x00008a02 call  0x00007c96 
+ 00031535  0x00008a03 arg  0x00000846 , 0x00000011 
+ 00031536  0x00008a04 arg  0x00000826 , 0x00000012 
+ 00031537  0x00008a05 arg  0x00000846 , 0x00000005 
+ 00031538  0x00008a06 call  0x00007be1 
+ 00031539  0x00008a07 arg  0x00000846 , 0x00000011 
+ 00031540  0x00008a08 arg  0x00000806 , 0x00000012 
+ 00031541  0x00008a09 arg  0x00000726 , 0x00000005 
+ 00031542  0x00008a0a branch  0x00007c96 
+ 00031543  0x00008a0e arg  0x00000686 , 0x00000011 
+ 00031544  0x00008a0f arg  0x00000866 , 0x00000005 
+ 00031545  0x00008a10 call  0x00007c79 
+ 00031546  0x00008a11 arg  0x00000706 , 0x00000011 
+ 00031547  0x00008a12 arg  0x00000866 , 0x00000012 
+ 00031548  0x00008a13 arg  0x00000806 , 0x00000005 
+ 00031549  0x00008a14 call  0x00007be1 
+ 00031550  0x00008a17 arg  0x00000686 , 0x00000011 
+ 00031551  0x00008a18 arg  0x00000866 , 0x00000012 
+ 00031552  0x00008a19 arg  0x00000866 , 0x00000005 
+ 00031553  0x00008a1a call  0x00007be1 
+ 00031554  0x00008a1b arg  0x00000726 , 0x00000011 
+ 00031555  0x00008a1c arg  0x00000866 , 0x00000012 
+ 00031556  0x00008a1d arg  0x000007e6 , 0x00000005 
+ 00031557  0x00008a1e call  0x00007be1 
+ 00031558  0x00008a21 arg  0x00000746 , 0x00000011 
+ 00031559  0x00008a22 arg  0x00000866 , 0x00000005 
+ 00031560  0x00008a23 call  0x00007c79 
+ 00031561  0x00008a24 arg  0x00000646 , 0x00000011 
+ 00031562  0x00008a25 arg  0x00000866 , 0x00000012 
+ 00031563  0x00008a26 arg  0x00000826 , 0x00000005 
+ 00031564  0x00008a27 call  0x00007be1 
+ 00031565  0x00008a29 arg  0x00000746 , 0x00000011 
+ 00031566  0x00008a2a arg  0x00000866 , 0x00000012 
+ 00031567  0x00008a2b arg  0x00000866 , 0x00000005 
+ 00031568  0x00008a2c call  0x00007be1 
+ 00031569  0x00008a2d arg  0x00000666 , 0x00000011 
+ 00031570  0x00008a2e arg  0x00000866 , 0x00000012 
+ 00031571  0x00008a2f arg  0x00000846 , 0x00000005 
+ 00031572  0x00008a30 call  0x00007be1 
+ 00031573  0x00008a35 arg  0x00000806 , 0x00000012 
+ 00031574  0x00008a36 arg  0x00000826 , 0x00000011 
+ 00031575  0x00008a37 arg  0x00000866 , 0x00000005 
+ 00031576  0x00008a38 call  0x00007c96 
+ 00031577  0x00008a39 arg  0x00000806 , 0x00000011 
+ 00031578  0x00008a3a arg  0x00000826 , 0x00000012 
+ 00031579  0x00008a3b arg  0x00000806 , 0x00000005 
+ 00031580  0x00008a3c call  0x00007c7d 
+ 00031581  0x00008a3f arg  0x000007e6 , 0x00000012 
+ 00031582  0x00008a40 arg  0x00000846 , 0x00000011 
+ 00031583  0x00008a41 arg  0x00000826 , 0x00000005 
+ 00031584  0x00008a42 call  0x00007c96 
+ 00031585  0x00008a43 arg  0x000007e6 , 0x00000011 
+ 00031586  0x00008a44 arg  0x00000846 , 0x00000012 
+ 00031587  0x00008a45 arg  0x000007e6 , 0x00000005 
+ 00031588  0x00008a46 call  0x00007c7d 
+ 00031589  0x00008a47 arg  0x000007e6 , 0x00000011 
+ 00031590  0x00008a48 arg  0x00000866 , 0x00000012 
+ 00031591  0x00008a49 arg  0x000007e6 , 0x00000005 
+ 00031592  0x00008a4a call  0x00007be1 
+ 00031593  0x00008a4b arg  0x00000746 , 0x00000011 
+ 00031594  0x00008a4c arg  0x00000686 , 0x00000012 
+ 00031595  0x00008a4d arg  0x00000846 , 0x00000005 
+ 00031596  0x00008a4e call  0x00007be1 
+ 00031597  0x00008a4f arg  0x00000846 , 0x00000011 
+ 00031598  0x00008a50 arg  0x00000866 , 0x00000012 
+ 00031599  0x00008a51 arg  0x00000746 , 0x00000005 
+ 00031600  0x00008a52 call  0x00007be1 
+ 00031601  0x00008a54 arg  0x00000866 , 0x00000011 
+ 00031602  0x00008a55 arg  0x00000866 , 0x00000005 
+ 00031603  0x00008a56 call  0x00007c79 
+ 00031604  0x00008a57 arg  0x00000866 , 0x00000011 
+ 00031605  0x00008a58 arg  0x00000806 , 0x00000012 
+ 00031606  0x00008a59 arg  0x00000846 , 0x00000005 
+ 00031607  0x00008a5a call  0x00007be1 
+ 00031608  0x00008a5b arg  0x00000866 , 0x00000011 
+ 00031609  0x00008a5c arg  0x000007e6 , 0x00000012 
+ 00031610  0x00008a5d arg  0x000007e6 , 0x00000005 
+ 00031611  0x00008a5e call  0x00007be1 
+ 00031612  0x00008a5f arg  0x00000826 , 0x00000011 
+ 00031613  0x00008a60 arg  0x00000706 , 0x00000005 
+ 00031614  0x00008a61 call  0x00007c79 
+ 00031615  0x00008a62 arg  0x00000706 , 0x00000011 
+ 00031616  0x00008a63 arg  0x00000846 , 0x00000012 
+ 00031617  0x00008a64 arg  0x00000706 , 0x00000005 
+ 00031618  0x00008a65 call  0x00007c96 
+ 00031619  0x00008a66 arg  0x00000706 , 0x00000006 
+ 00031620  0x00008a67 arg  0x00000866 , 0x00000005 
+ 00031621  0x00008a68 call  0x00007ebd 
+ 00031622  0x00008a69 arg  0x00000866 , 0x00000011 
+ 00031623  0x00008a6a call  0x00007c80 
+ 00031624  0x00008a6b arg  0x00000846 , 0x00000011 
+ 00031625  0x00008a6c arg  0x00000866 , 0x00000012 
+ 00031626  0x00008a6d arg  0x00000846 , 0x00000005 
+ 00031627  0x00008a6e call  0x00007c96 
+ 00031628  0x00008a6f arg  0x00000846 , 0x00000011 
+ 00031629  0x00008a70 arg  0x00000826 , 0x00000012 
+ 00031630  0x00008a71 arg  0x00000826 , 0x00000005 
+ 00031631  0x00008a72 call  0x00007be1 
+ 00031632  0x00008a73 arg  0x00000826 , 0x00000011 
+ 00031633  0x00008a74 arg  0x000007e6 , 0x00000012 
+ 00031634  0x00008a75 arg  0x00000726 , 0x00000005 
+ 00031635  0x00008a76 call  0x00007c96 
+ 00031636  0x00008a77 arg  0x00000726 , 0x00000011 
+ 00031637  0x00008a78 arg  0x0000091e , 0x00000012 
+ 00031638  0x00008a79 arg  0x00000726 , 0x00000005 
+ 00031639  0x00008a7a force  0x00000000 , 0x00000013 
+ 00031640  0x00008a7b fetch  0x00000001 , 0x00000726 
+ 00031641  0x00008a7c isolate1  0x00000000 , 0x0000003f 
+ 00031642  0x00008a7d call  0x00007c7b , 0x00000001 
+ 00031643  0x00008a7e copy  0x00000013 , 0x00000030 
+ 00031644  0x00008a7f arg  0x00000726 , 0x00000011 
+ 00031645  0x00008a80 call  0x00007cab 
+ 00031646  0x00008a81 fetch  0x00000001 , 0x00000745 
+ 00031647  0x00008a82 isolate1  0x00000000 , 0x00000030 
+ 00031648  0x00008a83 setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00031649  0x00008a84 store  0x00000001 , 0x00000745 
+ 00031650  0x00008a85 rtn 
+ 00031651  0x00008a88 copy  0x00000005 , 0x0000000b 
+ 00031652  0x00008a89 arg  0x00000806 , 0x00000005 
+ 00031653  0x00008a8a call  0x00007ed0 
+ 00031654  0x00008a8b force  0x00000000 , 0x0000003f 
+ 00031655  0x00008a8d store  0x00000004 , 0x00000826 
+ 00031656  0x00008a8e jam  0x00000001 , 0x00000806 
+ 00031657  0x00008a8f arg  0x00000786 , 0x00000005 
+ 00031658  0x00008a90 call  0x00007ed2 
+ 00031659  0x00008a91 arg  0x0000091e , 0x00000006 
+ 00031660  0x00008a92 arg  0x000007c6 , 0x00000005 
+ 00031661  0x00008a93 call  0x00007ebd 
+ 00031662  0x00008a94 copy  0x00000011 , 0x00000006 
+ 00031663  0x00008a95 arg  0x000007e6 , 0x00000005 
+ 00031664  0x00008a96 call  0x00007ebd 
+ 00031665  0x00008a9d arg  0x000007e6 , 0x00000006 
+ 00031666  0x00008a9e call  0x00007cb5 
+ 00031667  0x00008a9f branch  0x00007bda , 0x00000034 
+ 00031668  0x00008aa4 arg  0x000007e6 , 0x00000011 
+ 00031669  0x00008aa5 arg  0x00000806 , 0x00000012 
+ 00031670  0x00008aa6 call  0x00007cb8 
+ 00031671  0x00008aa7 arg  0x000007c6 , 0x00000011 
+ 00031672  0x00008aa8 arg  0x00000786 , 0x00000012 
+ 00031673  0x00008aa9 call  0x00007cb8 
+ 00031674  0x00008aab arg  0x000007e6 , 0x00000011 
+ 00031675  0x00008aac arg  0x000007c6 , 0x00000012 
+ 00031676  0x00008aad call  0x00007cb1 
+ 00031677  0x00008aae branch  0x00007bcc , 0x00000002 
+ 00031678  0x00008aaf arg  0x000007c6 , 0x00000011 
+ 00031679  0x00008ab0 arg  0x000007e6 , 0x00000012 
+ 00031680  0x00008ab1 copy  0x00000011 , 0x00000005 
+ 00031681  0x00008ab2 call  0x00007ca9 
+ 00031682  0x00008ab3 arg  0x00000806 , 0x00000011 
+ 00031683  0x00008ab4 arg  0x00000786 , 0x00000012 
+ 00031684  0x00008ab5 copy  0x00000012 , 0x00000005 
+ 00031685  0x00008ab6 call  0x00007c7b 
+ 00031686  0x00008ab7 ifetch  0x00000001 , 0x00000011 
+ 00031687  0x00008ab8 iadd  0x00000013 , 0x00000013 
+ 00031688  0x00008ab9 ifetch  0x00000001 , 0x00000012 
+ 00031689  0x00008aba iadd  0x00000013 , 0x0000003f 
+ 00031690  0x00008abb istore  0x00000001 , 0x00000012 
+ 00031691  0x00008abc branch  0x00007bb1 
+ 00031692  0x00008abe arg  0x000007e6 , 0x00000011 
+ 00031693  0x00008abf arg  0x000007c6 , 0x00000012 
+ 00031694  0x00008ac0 copy  0x00000011 , 0x00000005 
+ 00031695  0x00008ac1 call  0x00007ca9 
+ 00031696  0x00008ac2 arg  0x00000786 , 0x00000011 
+ 00031697  0x00008ac3 arg  0x00000806 , 0x00000012 
+ 00031698  0x00008ac4 copy  0x00000012 , 0x00000005 
+ 00031699  0x00008ac5 call  0x00007c7b 
+ 00031700  0x00008ac6 ifetch  0x00000001 , 0x00000011 
+ 00031701  0x00008ac7 iadd  0x00000013 , 0x00000013 
+ 00031702  0x00008ac8 ifetch  0x00000001 , 0x00000012 
+ 00031703  0x00008ac9 iadd  0x00000013 , 0x0000003f 
+ 00031704  0x00008aca istore  0x00000001 , 0x00000012 
+ 00031705  0x00008acb branch  0x00007bb1 
+ 00031706  0x00008ace arg  0x00000786 , 0x00000011 
+ 00031707  0x00008acf copy  0x0000000b , 0x00000005 
+ 00031708  0x00008ad0 call  0x00007c0a 
+ 00031709  0x00008ad2 arg  0x0000091e , 0x00000011 
+ 00031710  0x00008ad3 copy  0x0000000b , 0x00000012 
+ 00031711  0x00008ad4 copy  0x0000000b , 0x00000005 
+ 00031712  0x00008ad5 branch  0x00007c96 
+ 00031713  0x00008ad9 copy  0x00000005 , 0x0000000b 
+ 00031714  0x00008adb force  0x00000000 , 0x00000038 
+ 00031715  0x00008add arg  0x00000786 , 0x00000005 
+ 00031716  0x00008ade call  0x00007ed2 
+ 00031717  0x00008adf arg  0x00000ad2 , 0x00000005 
+ 00031718  0x00008ae0 call  0x00007ed2 
+ 00031719  0x00008ae4 copy  0x00000011 , 0x00000006 
+ 00031720  0x00008ae6 jam  0x00000000 , 0x00000ad2 
+ 00031721  0x00008ae7 setarg  0x00000000 
+ 00031722  0x00008ae8 call  0x00007c73 
+ 00031723  0x00008ae9 copy  0x00000012 , 0x00000006 
+ 00031724  0x00008aea call  0x00007c77 
+ 00031725  0x00008aed force  0x00000000 , 0x00000007 
+ 00031726  0x00008aee arg  0x00000786 , 0x00000005 
+ 00031727  0x00008af2 arg  0x00000ad2 , 0x00000002 
+ 00031728  0x00008af3 copy  0x00000007 , 0x00000012 
+ 00031729  0x00008af4 lshift2  0x00000012 , 0x0000003f 
+ 00031730  0x00008af6 iadd  0x00000002 , 0x00000012 
+ 00031731  0x00008af7 force  0x00000000 , 0x00000002 
+ 00031732  0x00008af8 force  0x00000000 , 0x00000013 
+ 00031733  0x00008afe ifetch  0x00000004 , 0x00000005 
+ 00031734  0x00008aff iforce  0x00000011 
+ 00031735  0x00008b02 ifetch  0x00000004 , 0x00000012 
+ 00031736  0x00008b03 copy  0x00000013 , 0x00000038 
+ 00031737  0x00008b04 imul32  0x0000002f , 0x0000003f 
+ 00031738  0x00008b05 iadd  0x00000011 , 0x0000003f 
+ 00031739  0x00008b06 iadd  0x00000002 , 0x0000003f 
+ 00031740  0x00008b07 istore  0x00000004 , 0x00000005 
+ 00031741  0x00008b08 rshift32  0x0000003f , 0x00000002 
+ 00031742  0x00008b09 increase  0x00000001 , 0x00000013 
+ 00031743  0x00008b0a compare  0x00000008 , 0x00000013 , 0x000000ff 
+ 00031744  0x00008b0b nbranch  0x00007bf5 , 0x00000001 
+ 00031745  0x00008b0d deposit  0x00000002 
+ 00031746  0x00008b0e istore  0x00000004 , 0x00000005 
+ 00031747  0x00008b0f increase  0xffffffe0 , 0x00000005 
+ 00031748  0x00008b12 increase  0x00000001 , 0x00000007 
+ 00031749  0x00008b13 compare  0x00000008 , 0x00000007 , 0x000000ff 
+ 00031750  0x00008b14 nbranch  0x00007bef , 0x00000001 
+ 00031751  0x00008b15 arg  0x00000786 , 0x00000011 
+ 00031752  0x00008b16 copy  0x0000000b , 0x00000005 
+ 00031753  0x00008b17 branch  0x00007c0a 
+ 00031754  0x00008b1a bpatchx  0x000000f2 , 0x0000403e 
+ 00031755  0x00008b1b copy  0x00000005 , 0x0000000b 
+ 00031756  0x00008b1c copy  0x00000011 , 0x00000030 
+ 00031757  0x00008b1d arg  0x000007c6 , 0x00000012 
+ 00031758  0x00008b1e copy  0x00000012 , 0x00000005 
+ 00031759  0x00008b1f call  0x00007ecd 
+ 00031760  0x00008b20 istore  0x00000008 , 0x00000005 
+ 00031761  0x00008b21 add  0x00000011 , 0x0000002c , 0x00000006 
+ 00031762  0x00008b22 call  0x00007eb9 
+ 00031763  0x00008b23 call  0x00007eb5 
+ 00031764  0x00008b24 copy  0x00000012 , 0x00000011 
+ 00031765  0x00008b25 call  0x00007c80 
+ 00031766  0x00008b26 arg  0x000007c6 , 0x00000012 
+ 00031767  0x00008b27 copy  0x00000030 , 0x00000011 
+ 00031768  0x00008b28 copy  0x0000000b , 0x00000005 
+ 00031769  0x00008b29 call  0x00007c7d 
+ 00031770  0x00008b2b arg  0x000007c6 , 0x00000012 
+ 00031771  0x00008b2c copy  0x00000012 , 0x00000005 
+ 00031772  0x00008b2d call  0x00007ecd 
+ 00031773  0x00008b2e istore  0x00000008 , 0x00000005 
+ 00031774  0x00008b2f add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031775  0x00008b30 call  0x00007ebf 
+ 00031776  0x00008b31 call  0x00007ecd 
+ 00031777  0x00008b32 copy  0x00000012 , 0x00000011 
+ 00031778  0x00008b33 call  0x00007c80 
+ 00031779  0x00008b37 arg  0x000007c6 , 0x00000012 
+ 00031780  0x00008b38 copy  0x0000000b , 0x00000011 
+ 00031781  0x00008b39 copy  0x00000011 , 0x00000005 
+ 00031782  0x00008b3a call  0x00007c7d 
+ 00031783  0x00008b3e arg  0x000007c6 , 0x00000012 
+ 00031784  0x00008b3f copy  0x00000012 , 0x00000005 
+ 00031785  0x00008b40 add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031786  0x00008b41 call  0x00007eb5 
+ 00031787  0x00008b42 call  0x00007ecd 
+ 00031788  0x00008b43 istore  0x00000008 , 0x00000005 
+ 00031789  0x00008b44 add  0x00000030 , 0x00000038 , 0x00000006 
+ 00031790  0x00008b45 call  0x00007eb9 
+ 00031791  0x00008b46 copy  0x0000000b , 0x00000011 
+ 00031792  0x00008b47 copy  0x00000011 , 0x00000005 
+ 00031793  0x00008b48 call  0x00007c7d 
+ 00031794  0x00008b4c arg  0x000007c6 , 0x00000012 
+ 00031795  0x00008b4d copy  0x00000012 , 0x00000005 
+ 00031796  0x00008b4e add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031797  0x00008b4f call  0x00007eb5 
+ 00031798  0x00008b50 add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031799  0x00008b51 call  0x00007eb5 
+ 00031800  0x00008b52 add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031801  0x00008b53 call  0x00007eb6 
+ 00031802  0x00008b54 add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031803  0x00008b55 call  0x00007eb6 
+ 00031804  0x00008b56 copy  0x0000000b , 0x00000011 
+ 00031805  0x00008b57 copy  0x00000011 , 0x00000005 
+ 00031806  0x00008b58 call  0x00007c7d 
+ 00031807  0x00008b5b arg  0x000007c6 , 0x00000012 
+ 00031808  0x00008b5c copy  0x00000012 , 0x00000005 
+ 00031809  0x00008b5d add  0x00000030 , 0x0000002c , 0x00000006 
+ 00031810  0x00008b5e call  0x00007eb5 
+ 00031811  0x00008b5f call  0x00007ecd 
+ 00031812  0x00008b60 istore  0x00000008 , 0x00000005 
+ 00031813  0x00008b61 add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031814  0x00008b62 call  0x00007eb6 
+ 00031815  0x00008b63 add  0x00000030 , 0x00000028 , 0x00000006 
+ 00031816  0x00008b64 call  0x00007eb6 
+ 00031817  0x00008b65 copy  0x0000000b , 0x00000011 
+ 00031818  0x00008b66 copy  0x00000011 , 0x00000005 
+ 00031819  0x00008b67 call  0x00007c96 
+ 00031820  0x00008b6a arg  0x000007c6 , 0x00000012 
+ 00031821  0x00008b6b copy  0x00000012 , 0x00000005 
+ 00031822  0x00008b6c add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031823  0x00008b6d call  0x00007eb9 
+ 00031824  0x00008b6e call  0x00007eb9 
+ 00031825  0x00008b6f force  0x00000000 , 0x0000003f 
+ 00031826  0x00008b70 istore  0x00000008 , 0x00000005 
+ 00031827  0x00008b71 add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031828  0x00008b72 call  0x00007eb6 
+ 00031829  0x00008b73 add  0x00000030 , 0x0000002c , 0x00000006 
+ 00031830  0x00008b74 call  0x00007eb6 
+ 00031831  0x00008b75 copy  0x0000000b , 0x00000011 
+ 00031832  0x00008b76 copy  0x00000011 , 0x00000005 
+ 00031833  0x00008b77 call  0x00007c96 
+ 00031834  0x00008b7a arg  0x000007c6 , 0x00000012 
+ 00031835  0x00008b7b copy  0x00000012 , 0x00000005 
+ 00031836  0x00008b7c add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031837  0x00008b7d call  0x00007eb5 
+ 00031838  0x00008b7e add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031839  0x00008b7f call  0x00007eb5 
+ 00031840  0x00008b80 call  0x00007ecd 
+ 00031841  0x00008b81 add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031842  0x00008b82 call  0x00007eb6 
+ 00031843  0x00008b83 copy  0x0000000b , 0x00000011 
+ 00031844  0x00008b84 copy  0x00000011 , 0x00000005 
+ 00031845  0x00008b85 call  0x00007c96 
+ 00031846  0x00008b88 arg  0x000007c6 , 0x00000012 
+ 00031847  0x00008b89 copy  0x00000012 , 0x00000005 
+ 00031848  0x00008b8a add  0x00000030 , 0x00000038 , 0x00000006 
+ 00031849  0x00008b8b call  0x00007eb9 
+ 00031850  0x00008b8c call  0x00007ecd 
+ 00031851  0x00008b8d add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031852  0x00008b8e call  0x00007eb5 
+ 00031853  0x00008b8f call  0x00007ecd 
+ 00031854  0x00008b90 add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031855  0x00008b91 call  0x00007eb6 
+ 00031856  0x00008b92 copy  0x0000000b , 0x00000011 
+ 00031857  0x00008b93 copy  0x00000011 , 0x00000005 
+ 00031858  0x00008b94 branch  0x00007c96 
+ 00031859  0x00008b98 force  0x00000020 , 0x00000039 
+ 00031860  0x00008b99 arg  0x00000ad2 , 0x00000005 
+ 00031861  0x00008b9a iadd  0x00000005 , 0x00000005 
+ 00031862  0x00008b9b branch  0x00007f01 
+ 00031863  0x00008b9e force  0x00000008 , 0x00000039 
+ 00031864  0x00008b9f branch  0x00007781 
+ 00031865  0x00008ba2 copy  0x00000011 , 0x00000012 
+ 00031866  0x00008ba3 branch  0x00007be1 
+ 00031867  0x00008ba6 force  0x00000008 , 0x00000039 
+ 00031868  0x00008ba7 branch  0x00007712 
+ 00031869  0x00008baa call  0x00007c7b 
+ 00031870  0x00008bab copy  0x00000005 , 0x00000011 
+ 00031871  0x00008bac branch  0x00007c81 
+ 00031872  0x00008baf call  0x00007cae 
+ 00031873  0x00008bb1 isolate1  0x00000000 , 0x00000013 
+ 00031874  0x00008bb2 branch  0x00007c8a , 0x00000001 
+ 00031875  0x00008bb3 arg  0x0000091e , 0x00000012 
+ 00031876  0x00008bb4 copy  0x00000011 , 0x00000013 
+ 00031877  0x00008bb5 increase  0xffffffe0 , 0x00000011 
+ 00031878  0x00008bb6 call  0x00007cb1 
+ 00031879  0x00008bb7 nrtn  0x00000002 
+ 00031880  0x00008bb8 copy  0x00000013 , 0x00000011 
+ 00031881  0x00008bb9 branch  0x00007c92 
+ 00031882  0x00008bbc call  0x00007c92 
+ 00031883  0x00008bbe copy  0x00000011 , 0x00000013 
+ 00031884  0x00008bbf increase  0xffffffe0 , 0x00000011 
+ 00031885  0x00008bc0 arg  0x0000091e , 0x00000012 
+ 00031886  0x00008bc1 call  0x00007cb1 
+ 00031887  0x00008bc2 nrtn  0x00000002 
+ 00031888  0x00008bc3 copy  0x00000013 , 0x00000011 
+ 00031889  0x00008bc4 branch  0x00007c92 
+ 00031890  0x00008bc8 increase  0xffffffe0 , 0x00000011 
+ 00031891  0x00008bc9 arg  0x0000091e , 0x00000012 
+ 00031892  0x00008bca copy  0x00000011 , 0x00000005 
+ 00031893  0x00008bcb branch  0x00007ca9 
+ 00031894  0x00008bd1 call  0x00007ca9 
+ 00031895  0x00008bd3 branch  0x00007ca0 , 0x00000001 
+ 00031896  0x00008bd6 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031897  0x00008bd7 arg  0x0000091e , 0x00000012 
+ 00031898  0x00008bd8 call  0x00007cb1 
+ 00031899  0x00008bd9 nrtn  0x00000002 
+ 00031900  0x00008bda arg  0x0000091e , 0x00000012 
+ 00031901  0x00008bdb add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031902  0x00008bdd copy  0x00000011 , 0x00000005 
+ 00031903  0x00008bde branch  0x00007ca9 
+ 00031904  0x00008be0 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031905  0x00008be1 arg  0x0000091e , 0x00000012 
+ 00031906  0x00008be2 copy  0x00000011 , 0x00000005 
+ 00031907  0x00008be3 call  0x00007c7b 
+ 00031908  0x00008be5 rtn  0x00000001 
+ 00031909  0x00008be6 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031910  0x00008be7 arg  0x0000091e , 0x00000012 
+ 00031911  0x00008be8 copy  0x00000011 , 0x00000005 
+ 00031912  0x00008be9 branch  0x00007c7b 
+ 00031913  0x00008bee force  0x00000008 , 0x00000039 
+ 00031914  0x00008bef branch  0x00007720 
+ 00031915  0x00008bf2 force  0x00000008 , 0x00000039 
+ 00031916  0x00008bf3 increase  0x0000001c , 0x00000011 
+ 00031917  0x00008bf4 branch  0x0000772f 
+ 00031918  0x00008bf7 force  0x00000008 , 0x00000039 
+ 00031919  0x00008bf8 force  0x00000000 , 0x00000013 
+ 00031920  0x00008bf9 branch  0x0000773d 
+ 00031921  0x00008bfc force  0x00000008 , 0x00000039 
+ 00031922  0x00008bfd increase  0x0000001c , 0x00000011 
+ 00031923  0x00008bfe increase  0x0000001c , 0x00000012 
+ 00031924  0x00008bff branch  0x00007707 
+ 00031925  0x00008c03 ifetch  0x00000008 , 0x00000006 
+ 00031926  0x00008c04 nrtn  0x00000034 
+ 00031927  0x00008c05 branch  0x000076f5 
+ 00031928  0x00008c0b copy  0x00000011 , 0x00000030 
+ 00031929  0x00008c0d copy  0x00000030 , 0x00000011 
+ 00031930  0x00008c0e ifetch  0x00000001 , 0x00000011 
+ 00031931  0x00008c0f isolate1  0x00000000 , 0x0000003f 
+ 00031932  0x00008c10 rtn  0x00000001 
+ 00031933  0x00008c11 call  0x00007cab 
+ 00031934  0x00008c12 ifetch  0x00000001 , 0x00000012 
+ 00031935  0x00008c13 isolate0  0x00000000 , 0x0000003f 
+ 00031936  0x00008c14 branch  0x00007cc8 , 0x00000001 
+ 00031937  0x00008c15 arg  0x0000091e , 0x00000011 
+ 00031938  0x00008c16 copy  0x00000012 , 0x00000005 
+ 00031939  0x00008c17 call  0x00007c7b 
+ 00031940  0x00008c18 ifetch  0x00000001 , 0x00000012 
+ 00031941  0x00008c19 iadd  0x00000013 , 0x0000003f 
+ 00031942  0x00008c1a istore  0x00000001 , 0x00000012 
+ 00031943  0x00008c1b increase  0xffffffe0 , 0x00000012 
+ 00031944  0x00008c1d add  0x00000012 , 0x00000020 , 0x00000011 
+ 00031945  0x00008c1e force  0x00000009 , 0x00000039 
+ 00031946  0x00008c1f call  0x0000772f 
+ 00031947  0x00008c20 branch  0x00007cb9 
+ 00031948  0x00008c25 call  0x00002c65 
+ 00031949  0x00008c26 rtn  0x0000002b 
+ 00031950  0x00008c27 call  0x00007cd3 
+ 00031951  0x00008c28 call  0x00007d75 
+ 00031952  0x00008c29 branch  0x00007d08 
+ 00031953  0x00008c2c call  0x00007d29 
+ 00031954  0x00008c2e branch  0x00007d64 
+ 00031955  0x00008c31 fetch  0x00000001 , 0x00004686 
+ 00031956  0x00008c32 rtneq  0x000000ff 
+ 00031957  0x00008c33 iforce  0x00000002 
+ 00031958  0x00008c34 call  0x0000680e 
+ 00031959  0x00008c35 fetcht  0x00000001 , 0x00004686 
+ 00031960  0x00008c36 call  0x00006825 
+ 00031961  0x00008c37 nop  0x00000064 
+ 00031962  0x00008c38 fetcht  0x00000001 , 0x00004686 
+ 00031963  0x00008c39 call  0x000067fb 
+ 00031964  0x00008c3a branch  0x00007cdd 
+ 00031965  0x00008c3f bpatchx  0x000000f3 , 0x0000403e 
+ 00031966  0x00008c40 fetch  0x00000001 , 0x00004686 
+ 00031967  0x00008c41 rtneq  0x000000ff 
+ 00031968  0x00008c42 copy  0x0000003f , 0x00000002 
+ 00031969  0x00008c43 call  0x0000681d 
+ 00031970  0x00008c44 nbranch  0x00007cef , 0x00000001 
+ 00031971  0x00008c47 call  0x00007cf9 
+ 00031972  0x00008c48 fetch  0x00000002 , 0x00004682 
+ 00031973  0x00008c49 set1  0x0000000c 
+ 00031974  0x00008c4a store  0x00000002 , 0x00004682 
+ 00031975  0x00008c4b fetch  0x00000001 , 0x00004679 
+ 00031976  0x00008c4c rtneq  0x00000000 
+ 00031977  0x00008c4d jam  0x00000000 , 0x00004679 
+ 00031978  0x00008c4f fetch  0x00000001 , 0x00004685 
+ 00031979  0x00008c50 store  0x00000001 , 0x00004678 
+ 00031980  0x00008c51 call  0x00007d00 
+ 00031981  0x00008c52 jam  0x0000002c , 0x00000a99 
+ 00031982  0x00008c53 branch  0x00007d86 
+ 00031983  0x00008c55 fetch  0x00000002 , 0x00004682 
+ 00031984  0x00008c56 set0  0x0000000c 
+ 00031985  0x00008c57 store  0x00000002 , 0x00004682 
+ 00031986  0x00008c58 fetch  0x00000001 , 0x00004679 
+ 00031987  0x00008c59 rtneq  0x00000001 
+ 00031988  0x00008c5a jam  0x00000001 , 0x00004679 
+ 00031989  0x00008c5c jam  0x00000000 , 0x00004678 
+ 00031990  0x00008c5d call  0x00007d02 
+ 00031991  0x00008c5e jam  0x0000002d , 0x00000a99 
+ 00031992  0x00008c5f branch  0x00007d86 
+ 00031993  0x00008c62 fetch  0x00000001 , 0x00004678 
+ 00031994  0x00008c63 rtn  0x00000034 
+ 00031995  0x00008c64 increase  0xffffffff , 0x0000003f 
+ 00031996  0x00008c65 store  0x00000001 , 0x00004678 
+ 00031997  0x00008c66 nrtn  0x00000034 
+ 00031998  0x00008c68 jam  0x00000010 , 0x00000a99 
+ 00031999  0x00008c69 branch  0x00007d86 
+ 00032000  0x00008c6c arg  0x00000007 , 0x00000007 
+ 00032001  0x00008c6d branch  0x00002c32 
+ 00032002  0x00008c70 arg  0x00000007 , 0x00000007 
+ 00032003  0x00008c71 branch  0x00002c36 
+ 00032004  0x00008c88 fetch  0x00000002 , 0x0000421b 
+ 00032005  0x00008c89 mul32  0x00000011 , 0x0000000b , 0x00000012 
+ 00032006  0x00008c8a iadd  0x00000012 , 0x00000012 
+ 00032007  0x00008c8b rtn 
+ 00032008  0x00008c8f fetch  0x00000001 , 0x0000421a 
+ 00032009  0x00008c90 rtn  0x00000034 
+ 00032010  0x00008c91 copy  0x0000003f , 0x00000039 
+ 00032011  0x00008c92 fetch  0x00000002 , 0x0000421b 
+ 00032012  0x00008c93 copy  0x0000003f , 0x00000012 
+ 00032013  0x00008c95 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032014  0x00008c96 ifetcht  0x00000001 , 0x00000013 
+ 00032015  0x00008c97 call  0x0000680e 
+ 00032016  0x00008c98 call  0x00007d32 
+ 00032017  0x00008c99 increase  0x0000000b , 0x00000012 
+ 00032018  0x00008c9a loop  0x00007d0d 
+ 00032019  0x00008c9b rtn 
+ 00032020  0x00008ca0 call  0x00007d04 
+ 00032021  0x00008ca1 setarg  0x00000002 
+ 00032022  0x00008ca2 istore  0x00000001 , 0x00000012 
+ 00032023  0x00008ca3 call  0x00007d5e 
+ 00032024  0x00008ca4 branch  0x00007d35 
+ 00032025  0x00008caa call  0x00007d04 
+ 00032026  0x00008cab setarg  0x00000003 
+ 00032027  0x00008cac istore  0x00000001 , 0x00000012 
+ 00032028  0x00008cad call  0x00007d5e 
+ 00032029  0x00008cae branch  0x00007d32 
+ 00032030  0x00008cb3 call  0x00007d04 
+ 00032031  0x00008cb4 setarg  0x00000001 
+ 00032032  0x00008cb5 istore  0x00000001 , 0x00000012 
+ 00032033  0x00008cb6 setarg  0x000000ff 
+ 00032034  0x00008cb7 istore  0x00000001 , 0x00000005 
+ 00032035  0x00008cb8 branch  0x00007d32 
+ 00032036  0x00008cbe call  0x00007d04 
+ 00032037  0x00008cbf arg  0x0000000b , 0x00000039 
+ 00032038  0x00008cc0 copy  0x00000013 , 0x00000006 
+ 00032039  0x00008cc1 copy  0x00000012 , 0x00000005 
+ 00032040  0x00008cc2 branch  0x00007ef4 
+ 00032041  0x00008cc7 fetch  0x00000001 , 0x0000421a 
+ 00032042  0x00008cc8 rtn  0x00000034 
+ 00032043  0x00008cc9 arg  0x00000000 , 0x00000011 
+ 00032044  0x00008ccb call  0x00007d38 
+ 00032045  0x00008ccc increase  0x00000001 , 0x00000011 
+ 00032046  0x00008ccd fetch  0x00000001 , 0x0000421a 
+ 00032047  0x00008cce isub  0x00000011 , 0x0000003e 
+ 00032048  0x00008ccf rtn  0x00000005 
+ 00032049  0x00008cd0 branch  0x00007d2c 
+ 00032050  0x00008cd4 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032051  0x00008cd5 ifetcht  0x00000001 , 0x00000013 
+ 00032052  0x00008cd6 branch  0x00006825 
+ 00032053  0x00008cda add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032054  0x00008cdb ifetcht  0x00000001 , 0x00000013 
+ 00032055  0x00008cdc branch  0x00006829 
+ 00032056  0x00008ce1 add  0x00000011 , 0x0000000b , 0x00000007 
+ 00032057  0x00008ce2 call  0x00007f16 
+ 00032058  0x00008ce3 nrtn  0x00000034 
+ 00032059  0x00008ce5 call  0x00007d04 
+ 00032060  0x00008ce7 ifetch  0x00000001 , 0x00000012 
+ 00032061  0x00008ce9 beq  0x00000002 , 0x00007d35 
+ 00032062  0x00008cea beq  0x00000003 , 0x00007d32 
+ 00032063  0x00008ceb beq  0x00000000 , 0x00007d32 
+ 00032064  0x00008cec beq  0x00000005 , 0x00007d4c 
+ 00032065  0x00008cee call  0x00007d35 
+ 00032066  0x00008cef add  0x00000012 , 0x00000007 , 0x00000013 
+ 00032067  0x00008cf0 call  0x00007e7c 
+ 00032068  0x00008cf1 ifetch  0x00000002 , 0x00000013 
+ 00032069  0x00008cf2 call  0x00007f9c 
+ 00032070  0x00008cf3 call  0x00007e8c 
+ 00032071  0x00008cf4 setarg  0x00000005 
+ 00032072  0x00008cf5 istore  0x00000001 , 0x00000012 
+ 00032073  0x00008cf6 add  0x00000012 , 0x00000003 , 0x00000013 
+ 00032074  0x00008cf7 ifetch  0x00000002 , 0x00000013 
+ 00032075  0x00008cf8 branch  0x00007d5c 
+ 00032076  0x00008cfc call  0x00007d32 
+ 00032077  0x00008cfd add  0x00000012 , 0x00000009 , 0x00000013 
+ 00032078  0x00008cfe call  0x00007e7c 
+ 00032079  0x00008cff ifetch  0x00000002 , 0x00000013 
+ 00032080  0x00008d00 call  0x00007f9c 
+ 00032081  0x00008d01 call  0x00007e8c 
+ 00032082  0x00008d03 add  0x00000012 , 0x00000001 , 0x00000013 
+ 00032083  0x00008d04 ifetch  0x00000001 , 0x00000013 
+ 00032084  0x00008d05 beq  0x000000ff , 0x00007d58 
+ 00032085  0x00008d06 increase  0xffffffff , 0x0000003f 
+ 00032086  0x00008d07 istore  0x00000001 , 0x00000013 
+ 00032087  0x00008d08 branch  0x00007d19 , 0x00000034 
+ 00032088  0x00008d0a setarg  0x00000004 
+ 00032089  0x00008d0b istore  0x00000001 , 0x00000012 
+ 00032090  0x00008d0c add  0x00000012 , 0x00000005 , 0x00000013 
+ 00032091  0x00008d0d ifetch  0x00000002 , 0x00000013 
+ 00032092  0x00008d0f add  0x00000011 , 0x0000000b , 0x00000007 
+ 00032093  0x00008d10 branch  0x00007f08 
+ 00032094  0x00008d13 setarg  0x00000000 
+ 00032095  0x00008d14 branch  0x00007d5c 
+ 00032096  0x00008d1b setarg  0x00001000 
+ 00032097  0x00008d1c lshift16  0x0000003f , 0x0000003f 
+ 00032098  0x00008d1d iadd  0x00000012 , 0x00000012 
+ 00032099  0x00008d1e rtn 
+ 00032100  0x00008d21 bpatchx  0x000000f4 , 0x0000403e 
+ 00032101  0x00008d22 arg  0x00000000 , 0x00000011 
+ 00032102  0x00008d23 fetcht  0x00000004 , 0x0000467a 
+ 00032103  0x00008d24 copy  0x00000022 , 0x00000012 
+ 00032104  0x00008d25 copy  0x00000012 , 0x0000003f 
+ 00032105  0x00008d26 isub  0x00000002 , 0x0000003e 
+ 00032106  0x00008d27 ncall  0x00007d60 , 0x00000002 
+ 00032107  0x00008d2a copy  0x00000012 , 0x0000003f 
+ 00032108  0x00008d2b increase  0x000000a0 , 0x00000002 
+ 00032109  0x00008d2c increase  0x000000a0 , 0x00000002 
+ 00032110  0x00008d2d isub  0x00000002 , 0x0000003e 
+ 00032111  0x00008d2e nbranch  0x00007d78 , 0x00000002 
+ 00032112  0x00008d2f increase  0x00000001 , 0x00000011 
+ 00032113  0x00008d30 and  0x00000011 , 0x0000000f , 0x0000003f 
+ 00032114  0x00008d31 nbranch  0x00007d6b , 0x00000034 
+ 00032115  0x00008d32 arg  0x00000000 , 0x00000011 
+ 00032116  0x00008d33 call  0x00007d7f 
+ 00032117  0x00008d35 copy  0x00000022 , 0x0000003f 
+ 00032118  0x00008d36 store  0x00000004 , 0x0000467a 
+ 00032119  0x00008d37 rtn 
+ 00032120  0x00008d39 bpatchx  0x000000f5 , 0x0000403e 
+ 00032121  0x00008d3a copy  0x00000011 , 0x0000003f 
+ 00032122  0x00008d3b rtn  0x00000034 
+ 00032123  0x00008d3c increase  0xffffff60 , 0x00000002 
+ 00032124  0x00008d3d increase  0xffffff60 , 0x00000002 
+ 00032125  0x00008d3e set0  0x0000001c , 0x00000002 
+ 00032126  0x00008d3f storet  0x00000004 , 0x0000467a 
+ 00032127  0x00008d41 branch  0x0000335f 
+ 00032128  0x00008d49 jam  0x00000001 , 0x00004666 
+ 00032129  0x00008d4b fetch  0x00000001 , 0x00004667 
+ 00032130  0x00008d4c nbranch  0x00007d81 , 0x00000034 
+ 00032131  0x00008d4d rtn 
+ 00032132  0x00008d50 jam  0x00000000 , 0x00004666 
+ 00032133  0x00008d51 rtn 
+ 00032134  0x00008d56 bpatchx  0x000000f6 , 0x0000403e 
+ 00032135  0x00008d57 call  0x00007d80 
+ 00032136  0x00008d58 copy  0x00000011 , 0x0000003f 
+ 00032137  0x00008d59 store  0x00000004 , 0x00000a91 
+ 00032138  0x00008d5a arg  0x00004668 , 0x00000011 
+ 00032139  0x00008d5b call  0x00007fb8 
+ 00032140  0x00008d5c fetch  0x00000004 , 0x00000a91 
+ 00032141  0x00008d5d copy  0x0000003f , 0x00000011 
+ 00032142  0x00008d5e branch  0x00007d84 
+ 00032143  0x00008d61 bpatchx  0x000000f7 , 0x0000403e 
+ 00032144  0x00008d62 call  0x00007d80 
+ 00032145  0x00008d63 copy  0x00000011 , 0x0000003f 
+ 00032146  0x00008d64 store  0x00000004 , 0x00000a91 
+ 00032147  0x00008d65 arg  0x00004670 , 0x00000011 
+ 00032148  0x00008d66 call  0x00007fb8 
+ 00032149  0x00008d67 fetch  0x00000004 , 0x00000a91 
+ 00032150  0x00008d68 copy  0x0000003f , 0x00000011 
+ 00032151  0x00008d69 branch  0x00007d84 
+ 00032152  0x00008d6c setarg  0x00000000 
+ 00032153  0x00008d6d store  0x00000008 , 0x00004670 
+ 00032154  0x00008d6e store  0x00000008 , 0x00004668 
+ 00032155  0x00008d6f rtn 
+ 00032156  0x00008d72 bpatchx  0x000000f8 , 0x0000403f 
+ 00032157  0x00008d73 fetch  0x00000001 , 0x000041ce 
+ 00032158  0x00008d74 nrtn  0x00000034 
+ 00032159  0x00008d75 arg  0x00004670 , 0x00000011 
+ 00032160  0x00008d76 call  0x00007fd0 
+ 00032161  0x00008d77 rtn  0x00000034 
+ 00032162  0x00008d78 jam  0x00000000 , 0x00000a90 
+ 00032163  0x00008d79 call  0x00007da7 
+ 00032164  0x00008d7a fetch  0x00000001 , 0x00000a90 
+ 00032165  0x00008d7b branch  0x00007d9c , 0x00000034 
+ 00032166  0x00008d7c rtn 
+ 00032167  0x00008d7f call  0x00007d80 
+ 00032168  0x00008d80 arg  0x00004670 , 0x00000011 
+ 00032169  0x00008d81 call  0x00007fc4 
+ 00032170  0x00008d82 copy  0x0000003f , 0x00000002 
+ 00032171  0x00008d83 call  0x00007d84 
+ 00032172  0x00008d84 bpatchx  0x000000f9 , 0x0000403f 
+ 00032173  0x00008d85 copy  0x00000002 , 0x0000003f 
+ 00032174  0x00008d86 rtn  0x00000034 
+ 00032175  0x00008d87 beq  0x00000001 , 0x00007ddd 
+ 00032176  0x00008d88 beq  0x00000002 , 0x00007de2 
+ 00032177  0x00008d89 beq  0x00000003 , 0x00007de8 
+ 00032178  0x00008d8a beq  0x00000007 , 0x00007ded 
+ 00032179  0x00008d8b beq  0x00000008 , 0x00007dee 
+ 00032180  0x00008d8c beq  0x00000009 , 0x00007def 
+ 00032181  0x00008d8d beq  0x0000000b , 0x00007df2 
+ 00032182  0x00008d8e beq  0x0000000c , 0x00007df3 
+ 00032183  0x00008d8f beq  0x0000000d , 0x00007df4 
+ 00032184  0x00008d90 beq  0x0000000e , 0x00007dfa 
+ 00032185  0x00008d91 beq  0x0000000f , 0x00007dff 
+ 00032186  0x00008d92 beq  0x00000010 , 0x00007e05 
+ 00032187  0x00008d93 beq  0x00000013 , 0x00007e0f 
+ 00032188  0x00008d94 beq  0x00000014 , 0x00007e11 
+ 00032189  0x00008d95 beq  0x00000015 , 0x00007e13 
+ 00032190  0x00008d96 beq  0x00000016 , 0x00007e15 
+ 00032191  0x00008d97 beq  0x00000017 , 0x00007e18 
+ 00032192  0x00008d98 beq  0x00000018 , 0x00007e1a 
+ 00032193  0x00008d99 beq  0x00000019 , 0x00007e1d 
+ 00032194  0x00008d9a beq  0x0000001b , 0x00007e25 
+ 00032195  0x00008d9b beq  0x0000001e , 0x00007e2f 
+ 00032196  0x00008d9d store  0x00000001 , 0x00000a99 
+ 00032197  0x00008d9e bpatchx  0x000000fa , 0x0000403f 
+ 00032198  0x00008d9f call  0x000062bc 
+ 00032199  0x00008da0 nbranch  0x00007ddb , 0x00000034 
+ 00032200  0x00008da2 fetch  0x00000001 , 0x00000a99 
+ 00032201  0x00008da3 bmark0  0x00000009 , 0x00007dd6 
+ 00032202  0x00008da4 beq  0x00000004 , 0x00007dea 
+ 00032203  0x00008da5 beq  0x00000005 , 0x00004d17 
+ 00032204  0x00008da6 beq  0x00000006 , 0x00004d26 
+ 00032205  0x00008da7 beq  0x0000000a , 0x00007df0 
+ 00032206  0x00008da8 beq  0x00000011 , 0x00007e0a 
+ 00032207  0x00008da9 beq  0x00000012 , 0x00007e0e 
+ 00032208  0x00008daa beq  0x0000001d , 0x00007e26 
+ 00032209  0x00008dab beq  0x0000001f , 0x000067cc 
+ 00032210  0x00008dac beq  0x00000020 , 0x000067d0 
+ 00032211  0x00008dad beq  0x00000021 , 0x00007e31 
+ 00032212  0x00008dae beq  0x00000025 , 0x0000670b 
+ 00032213  0x00008daf rtn 
+ 00032214  0x00008db2 store  0x00000001 , 0x00000a99 
+ 00032215  0x00008db3 call  0x00002252 
+ 00032216  0x00008db4 branch  0x00007ddb , 0x00000005 
+ 00032217  0x00008db5 call  0x0000225a 
+ 00032218  0x00008db6 nrtn  0x00000005 
+ 00032219  0x00008db8 jam  0x00000001 , 0x00000a90 
+ 00032220  0x00008db9 branch  0x00007d8f 
+ 00032221  0x00008dbf fetch  0x00000002 , 0x00004682 
+ 00032222  0x00008dc0 set1  0x00000006 
+ 00032223  0x00008dc1 store  0x00000002 , 0x00004682 
+ 00032224  0x00008dc2 jam  0x00000003 , 0x00004093 
+ 00032225  0x00008dc3 rtn 
+ 00032226  0x00008dc8 jam  0x00000000 , 0x00004680 
+ 00032227  0x00008dc9 jam  0x00000000 , 0x00004093 
+ 00032228  0x00008dca fetch  0x00000002 , 0x00004682 
+ 00032229  0x00008dcb set0  0x00000006 
+ 00032230  0x00008dcc store  0x00000002 , 0x00004682 
+ 00032231  0x00008dcd rtn 
+ 00032232  0x00008dd2 jam  0x00000005 , 0x000041ce 
+ 00032233  0x00008dd3 rtn 
+ 00032234  0x00008dd8 jam  0x00000007 , 0x0000007c 
+ 00032235  0x00008dd9 jam  0x00000013 , 0x000004ca 
+ 00032236  0x00008dda rtn 
+ 00032237  0x00008ddf rtn 
+ 00032238  0x00008de4 rtn 
+ 00032239  0x00008de9 rtn 
+ 00032240  0x00008dee jam  0x00000002 , 0x000004d4 
+ 00032241  0x00008def branch  0x00004d0a 
+ 00032242  0x00008df4 rtn 
+ 00032243  0x00008df9 rtn 
+ 00032244  0x00008dfe jam  0x00000001 , 0x0000436e 
+ 00032245  0x00008dff jam  0x00000000 , 0x00004484 
+ 00032246  0x00008e00 fetch  0x00000002 , 0x00004682 
+ 00032247  0x00008e01 set1  0x0000000b , 0x0000003f 
+ 00032248  0x00008e02 store  0x00000002 , 0x00004682 
+ 00032249  0x00008e03 rtn 
+ 00032250  0x00008e08 fetch  0x00000002 , 0x00004682 
+ 00032251  0x00008e09 set0  0x0000000b , 0x0000003f 
+ 00032252  0x00008e0a store  0x00000002 , 0x00004682 
+ 00032253  0x00008e0b jam  0x00000000 , 0x0000436e 
+ 00032254  0x00008e0c rtn 
+ 00032255  0x00008e11 jam  0x00000001 , 0x0000436e 
+ 00032256  0x00008e12 jam  0x00000001 , 0x00004484 
+ 00032257  0x00008e13 fetch  0x00000002 , 0x00004682 
+ 00032258  0x00008e14 set1  0x0000000b , 0x0000003f 
+ 00032259  0x00008e15 store  0x00000002 , 0x00004682 
+ 00032260  0x00008e16 rtn 
+ 00032261  0x00008e1b fetch  0x00000002 , 0x00004682 
+ 00032262  0x00008e1c set0  0x0000000b , 0x0000003f 
+ 00032263  0x00008e1d store  0x00000002 , 0x00004682 
+ 00032264  0x00008e1e jam  0x00000000 , 0x0000436e 
+ 00032265  0x00008e1f rtn 
+ 00032266  0x00008e24 setarg  0x00000014 
+ 00032267  0x00008e25 store  0x00000002 , 0x0000046d 
+ 00032268  0x00008e26 store  0x00000002 , 0x000044ba 
+ 00032269  0x00008e27 branch  0x00005c92 
+ 00032270  0x00008e2c branch  0x00005abf 
+ 00032271  0x00008e31 arg  0x00000000 , 0x00000011 
+ 00032272  0x00008e32 branch  0x00007d19 
+ 00032273  0x00008e37 arg  0x00000000 , 0x00000011 
+ 00032274  0x00008e38 branch  0x00007d14 
+ 00032275  0x00008e3d arg  0x00000000 , 0x00000011 
+ 00032276  0x00008e3e branch  0x00007d1e 
+ 00032277  0x00008e43 jam  0x00000001 , 0x00004369 
+ 00032278  0x00008e44 jam  0x0000001b , 0x000041ce 
+ 00032279  0x00008e47 rtn 
+ 00032280  0x00008e4c jam  0x00000001 , 0x00004369 
+ 00032281  0x00008e4d rtn 
+ 00032282  0x00008e52 jam  0x00000000 , 0x00004369 
+ 00032283  0x00008e53 jam  0x00000000 , 0x000041ce 
+ 00032284  0x00008e54 rtn 
+ 00032285  0x00008e59 fetch  0x00000002 , 0x000041eb 
+ 00032286  0x00008e5a call  0x00007f9c 
+ 00032287  0x00008e5b fetch  0x00000001 , 0x00004686 
+ 00032288  0x00008e5c beq  0x000000ff , 0x00007e23 
+ 00032289  0x00008e5d copy  0x0000003f , 0x00000002 
+ 00032290  0x00008e5e call  0x000067fb 
+ 00032291  0x00008e60 call  0x00007d98 
+ 00032292  0x00008e61 branch  0x00002b1f 
+ 00032293  0x00008e66 branch  0x00005b02 
+ 00032294  0x00008e6b jam  0x00000034 , 0x0000007c 
+ 00032295  0x00008e6c set1  0x00000003 , 0x00000000 
+ 00032296  0x00008e6d nrtn  0x00000029 
+ 00032297  0x00008e6e jam  0x00000000 , 0x0000455b 
+ 00032298  0x00008e6f jam  0x00000013 , 0x0000007c 
+ 00032299  0x00008e70 fetch  0x00000001 , 0x0000016d 
+ 00032300  0x00008e71 set0  0x00000002 , 0x0000003f 
+ 00032301  0x00008e72 store  0x00000001 , 0x0000016d 
+ 00032302  0x00008e73 rtn 
+ 00032303  0x00008e78 force  0x00000003 , 0x00000007 
+ 00032304  0x00008e79 branch  0x00007f07 
+ 00032305  0x00008e7e call  0x000062f8 
+ 00032306  0x00008e7f jam  0x00000041 , 0x0000007d 
+ 00032307  0x00008e80 branch  0x00005f9d 
+ 00032308  0x00008e84 fetch  0x00000001 , 0x00004682 
+ 00032309  0x00008e85 rtnbit0  0x0000000c 
+ 00032310  0x00008e86 rtnbit0  0x00000007 
+ 00032311  0x00008e87 branch  0x00007e2f 
+ 00032312  0x00008e8d fetch  0x00000002 , 0x00004218 
+ 00032313  0x00008e8e add  0x0000003f , 0x00000002 , 0x00000005 
+ 00032314  0x00008e8f setarg  0x00000000 
+ 00032315  0x00008e90 istore  0x00000003 , 0x00000005 
+ 00032316  0x00008e91 rtn 
+ 00032317  0x00008e96 call  0x00007fe9 
+ 00032318  0x00008e97 call  0x00007e69 
+ 00032319  0x00008e98 rtn  0x00000034 
+ 00032320  0x00008e99 fetch  0x00000002 , 0x00004218 
+ 00032321  0x00008e9a add  0x0000003f , 0x00000002 , 0x00000012 
+ 00032322  0x00008e9b ifetcht  0x00000001 , 0x00000012 
+ 00032323  0x00008e9c increase  0x00000001 , 0x00000002 
+ 00032324  0x00008e9d istoret  0x00000001 , 0x00000012 
+ 00032325  0x00008e9f ifetcht  0x00000001 , 0x0000003f 
+ 00032326  0x00008ea0 copy  0x00000002 , 0x00000039 
+ 00032327  0x00008ea1 add  0x0000003f , 0x00000004 , 0x00000012 
+ 00032328  0x00008ea2 ifetch  0x00000001 , 0x00000012 
+ 00032329  0x00008ea3 imul32  0x00000002 , 0x0000003f 
+ 00032330  0x00008ea4 iadd  0x00000006 , 0x00000005 
+ 00032331  0x00008ea5 copy  0x00000011 , 0x00000006 
+ 00032332  0x00008ea7 call  0x00007f01 
+ 00032333  0x00008ea8 call  0x00007e6d 
+ 00032334  0x00008ea9 pincrease  0xffffffff 
+ 00032335  0x00008eaa ifetcht  0x00000001 , 0x00000012 
+ 00032336  0x00008eab increase  0x00000001 , 0x00000002 
+ 00032337  0x00008eac iand  0x00000002 , 0x00000002 
+ 00032338  0x00008ead istoret  0x00000001 , 0x00000012 
+ 00032339  0x00008eae branch  0x00007fe7 
+ 00032340  0x00008eb4 call  0x00007fe9 
+ 00032341  0x00008eb5 call  0x00007e65 
+ 00032342  0x00008eb6 rtn  0x00000034 
+ 00032343  0x00008eb7 fetch  0x00000002 , 0x00004218 
+ 00032344  0x00008eb8 add  0x0000003f , 0x00000002 , 0x00000012 
+ 00032345  0x00008eb9 ifetcht  0x00000001 , 0x00000012 
+ 00032346  0x00008eba increase  0xffffffff , 0x00000002 
+ 00032347  0x00008ebb istoret  0x00000001 , 0x00000012 
+ 00032348  0x00008ebc ifetcht  0x00000001 , 0x0000003f 
+ 00032349  0x00008ebd copy  0x00000002 , 0x00000039 
+ 00032350  0x00008ebe add  0x0000003f , 0x00000003 , 0x00000012 
+ 00032351  0x00008ebf ifetch  0x00000001 , 0x00000012 
+ 00032352  0x00008ec0 imul32  0x00000002 , 0x0000003f 
+ 00032353  0x00008ec1 iadd  0x00000006 , 0x00000006 
+ 00032354  0x00008ec2 increase  0x00000001 , 0x00000006 
+ 00032355  0x00008ec3 copy  0x00000011 , 0x00000005 
+ 00032356  0x00008ec4 branch  0x00007e4c 
+ 00032357  0x00008ec9 fetch  0x00000002 , 0x00004218 
+ 00032358  0x00008eca add  0x0000003f , 0x00000002 , 0x00000006 
+ 00032359  0x00008ecb ifetch  0x00000001 , 0x00000006 
+ 00032360  0x00008ecc rtn 
+ 00032361  0x00008ed0 call  0x00007e6d 
+ 00032362  0x00008ed1 ifetcht  0x00000001 , 0x00000006 
+ 00032363  0x00008ed2 isub  0x00000002 , 0x0000003f 
+ 00032364  0x00008ed3 rtn 
+ 00032365  0x00008ed7 fetch  0x00000002 , 0x00004218 
+ 00032366  0x00008ed8 add  0x0000003f , 0x00000001 , 0x00000006 
+ 00032367  0x00008ed9 ifetch  0x00000001 , 0x00000006 
+ 00032368  0x00008eda rtn 
+ 00032369  0x00008ee3 sub  0x00000039 , 0x00000000 , 0x0000003e 
+ 00032370  0x00008ee4 rtn  0x00000005 
+ 00032371  0x00008ee6 rshift  0x0000003f , 0x0000003f 
+ 00032372  0x00008ee7 loop  0x00007e73 
+ 00032373  0x00008ee8 rtn 
+ 00032374  0x00008eec force  0x00000001 , 0x0000003f 
+ 00032375  0x00008eed sub  0x00000039 , 0x00000000 , 0x0000003e 
+ 00032376  0x00008eee rtn  0x00000005 
+ 00032377  0x00008ef0 lshift  0x0000003f , 0x0000003f 
+ 00032378  0x00008ef1 loop  0x00007e79 
+ 00032379  0x00008ef2 rtn 
+ 00032380  0x00008ef4 deposit  0x00000005 
+ 00032381  0x00008ef5 store  0x00000002 , 0x00000abb 
+ 00032382  0x00008ef6 storet  0x00000008 , 0x00000aa2 
+ 00032383  0x00008ef7 deposit  0x0000000b 
+ 00032384  0x00008ef8 store  0x00000004 , 0x00000aaa 
+ 00032385  0x00008ef9 call  0x00007e85 
+ 00032386  0x00008efa deposit  0x00000006 
+ 00032387  0x00008efb store  0x00000002 , 0x00000ab9 
+ 00032388  0x00008efc rtn 
+ 00032389  0x00008eff deposit  0x00000011 
+ 00032390  0x00008f00 store  0x00000004 , 0x00000aae 
+ 00032391  0x00008f01 deposit  0x00000012 
+ 00032392  0x00008f02 store  0x00000004 , 0x00000ab2 
+ 00032393  0x00008f03 deposit  0x00000013 
+ 00032394  0x00008f04 store  0x00000003 , 0x00000ab6 
+ 00032395  0x00008f05 rtn 
+ 00032396  0x00008f08 fetcht  0x00000008 , 0x00000aa2 
+ 00032397  0x00008f09 fetch  0x00000004 , 0x00000aaa 
+ 00032398  0x00008f0a iforce  0x0000000b 
+ 00032399  0x00008f0b call  0x00007e95 
+ 00032400  0x00008f0c fetch  0x00000002 , 0x00000abb 
+ 00032401  0x00008f0d iforce  0x00000005 
+ 00032402  0x00008f0e fetch  0x00000002 , 0x00000ab9 
+ 00032403  0x00008f0f iforce  0x00000006 
+ 00032404  0x00008f10 rtn 
+ 00032405  0x00008f13 fetch  0x00000004 , 0x00000aae 
+ 00032406  0x00008f14 iforce  0x00000011 
+ 00032407  0x00008f15 fetch  0x00000004 , 0x00000ab2 
+ 00032408  0x00008f16 iforce  0x00000012 
+ 00032409  0x00008f17 fetch  0x00000003 , 0x00000ab6 
+ 00032410  0x00008f18 iforce  0x00000013 
+ 00032411  0x00008f19 rtn 
+ 00032412  0x00008f1c fetch  0x00000002 , 0x00000abb 
+ 00032413  0x00008f1d copy  0x0000003f , 0x00000005 
+ 00032414  0x00008f1e rtn 
+ 00032415  0x00008f20 fetch  0x00000002 , 0x00000ab9 
+ 00032416  0x00008f21 copy  0x0000003f , 0x00000006 
+ 00032417  0x00008f22 rtn 
+ 00032418  0x00008f24 copy  0x00000005 , 0x0000003f 
+ 00032419  0x00008f25 store  0x00000002 , 0x00000abb 
+ 00032420  0x00008f26 rtn 
+ 00032421  0x00008f28 copy  0x00000006 , 0x0000003f 
+ 00032422  0x00008f29 store  0x00000002 , 0x00000ab9 
+ 00032423  0x00008f2a rtn 
+ 00032424  0x00008f2f copy  0x00000005 , 0x0000003f 
+ 00032425  0x00008f30 store  0x00000002 , 0x00000a97 
+ 00032426  0x00008f31 copy  0x00000006 , 0x0000003f 
+ 00032427  0x00008f32 store  0x00000002 , 0x00000a95 
+ 00032428  0x00008f33 rtn 
+ 00032429  0x00008f35 fetch  0x00000002 , 0x00000a97 
+ 00032430  0x00008f36 copy  0x0000003f , 0x00000005 
+ 00032431  0x00008f37 fetch  0x00000002 , 0x00000a95 
+ 00032432  0x00008f38 copy  0x0000003f , 0x00000006 
+ 00032433  0x00008f39 rtn 
+ 00032434  0x00008f3c call  0x00007ebd 
+ 00032435  0x00008f3e call  0x00007ebd 
+ 00032436  0x00008f3f branch  0x00007ebd 
+ 00032437  0x00008f41 call  0x00007eb9 
+ 00032438  0x00008f43 ifetch  0x00000004 , 0x00000006 
+ 00032439  0x00008f44 istore  0x00000004 , 0x00000005 
+ 00032440  0x00008f45 rtn 
+ 00032441  0x00008f47 ifetch  0x00000008 , 0x00000006 
+ 00032442  0x00008f48 istore  0x00000008 , 0x00000005 
+ 00032443  0x00008f49 rtn 
+ 00032444  0x00008f4c call  0x00007ebf 
+ 00032445  0x00008f4e call  0x00007eb9 
+ 00032446  0x00008f50 call  0x00007eb9 
+ 00032447  0x00008f52 call  0x00007eb9 
+ 00032448  0x00008f53 branch  0x00007eb9 
+ 00032449  0x00008f58 arg  0x0000000a , 0x00000039 
+ 00032450  0x00008f5a nop  0x00002ee0 
+ 00032451  0x00008f5b loop  0x00007ec2 
+ 00032452  0x00008f5c rtn 
+ 00032453  0x00008f5f force  0x00000003 , 0x00000039 
+ 00032454  0x00008f61 force  0x00000000 , 0x0000003f 
+ 00032455  0x00008f63 istore  0x00000008 , 0x00000005 
+ 00032456  0x00008f64 loop  0x00007ec7 
+ 00032457  0x00008f65 rtn 
+ 00032458  0x00008f68 force  0x00000000 , 0x0000003f 
+ 00032459  0x00008f69 istore  0x00000008 , 0x00000005 
+ 00032460  0x00008f6a rtn 
+ 00032461  0x00008f6c force  0x00000000 , 0x0000003f 
+ 00032462  0x00008f6d istore  0x00000004 , 0x00000005 
+ 00032463  0x00008f6e rtn 
+ 00032464  0x00008f71 force  0x00000004 , 0x00000039 
+ 00032465  0x00008f72 branch  0x00007ec6 
+ 00032466  0x00008f74 force  0x00000008 , 0x00000039 
+ 00032467  0x00008f75 branch  0x00007ec6 
+ 00032468  0x00008f78 deposit  0x00000039 
+ 00032469  0x00008f79 rtn  0x00000034 
+ 00032470  0x00008f7a setarg  0x00000000 
+ 00032471  0x00008f7c istore  0x00000001 , 0x00000005 
+ 00032472  0x00008f7d loop  0x00007ed7 
+ 00032473  0x00008f7e rtn 
+ 00032474  0x00008f82 arg  0x00000020 , 0x00000039 
+ 00032475  0x00008f83 arg  0x00000ac2 , 0x00000005 
+ 00032476  0x00008f84 branch  0x00007ed4 
+ 00032477  0x00008f87 ifetch  0x00000004 , 0x00000013 
+ 00032478  0x00008f88 ifetcht  0x00000004 , 0x00000011 
+ 00032479  0x00008f89 ixor  0x00000002 , 0x0000003f 
+ 00032480  0x00008f8a istore  0x00000004 , 0x00000005 
+ 00032481  0x00008f8b increase  0x00000004 , 0x00000011 
+ 00032482  0x00008f8c increase  0x00000004 , 0x00000013 
+ 00032483  0x00008f8d loop  0x00007edd 
+ 00032484  0x00008f8e rtn 
+ 00032485  0x00008f93 bpatchx  0x000000fb , 0x0000403f 
+ 00032486  0x00008f94 copy  0x00000039 , 0x0000003f 
+ 00032487  0x00008f95 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00032488  0x00008f96 rtn  0x00000002 
+ 00032489  0x00008f97 iadd  0x00000011 , 0x00000012 
+ 00032490  0x00008f98 increase  0xffffffff , 0x00000012 
+ 00032491  0x00008f99 rshift  0x00000039 , 0x00000039 
+ 00032492  0x00008f9b ifetcht  0x00000001 , 0x00000011 
+ 00032493  0x00008f9c ifetch  0x00000001 , 0x00000012 
+ 00032494  0x00008f9d istore  0x00000001 , 0x00000011 
+ 00032495  0x00008f9e istoret  0x00000001 , 0x00000012 
+ 00032496  0x00008f9f increase  0xffffffff , 0x00000012 
+ 00032497  0x00008fa0 increase  0x00000001 , 0x00000011 
+ 00032498  0x00008fa1 loop  0x00007eec 
+ 00032499  0x00008fa2 rtn 
+ 00032500  0x00008fa6 deposit  0x00000039 
+ 00032501  0x00008fa7 rtn  0x00000034 
+ 00032502  0x00008fa9 increase  0xfffffff8 , 0x00000039 
+ 00032503  0x00008faa call  0x00007eb9 , 0x00000002 
+ 00032504  0x00008fab rtn  0x00000005 
+ 00032505  0x00008fac branch  0x00007ef6 , 0x00000002 
+ 00032506  0x00008fad increase  0x00000008 , 0x00000039 
+ 00032507  0x00008faf increase  0xfffffffc , 0x00000039 
+ 00032508  0x00008fb0 call  0x00007eb6 , 0x00000002 
+ 00032509  0x00008fb1 rtn  0x00000005 
+ 00032510  0x00008fb2 branch  0x00007efb , 0x00000002 
+ 00032511  0x00008fb3 increase  0x00000004 , 0x00000039 
+ 00032512  0x00008fb4 branch  0x00007f01 
+ 00032513  0x00008fb7 deposit  0x00000039 
+ 00032514  0x00008fb8 rtn  0x00000034 
+ 00032515  0x00008fba ifetch  0x00000001 , 0x00000006 
+ 00032516  0x00008fbb istore  0x00000001 , 0x00000005 
+ 00032517  0x00008fbc loop  0x00007f03 
+ 00032518  0x00008fbd rtn 
+ 00032519  0x00008fc0 setarg  0x00000000 
+ 00032520  0x00008fc2 rshift  0x00000022 , 0x00000002 
+ 00032521  0x00008fc3 storet  0x00000004 , 0x00004094 
+ 00032522  0x00008fc4 arg  0x0000419d , 0x00000005 
+ 00032523  0x00008fc5 iforce  0x00000002 
+ 00032524  0x00008fc6 lshift  0x00000007 , 0x0000003f 
+ 00032525  0x00008fc7 iadd  0x00000005 , 0x00000005 
+ 00032526  0x00008fc8 istoret  0x00000002 , 0x00000005 
+ 00032527  0x00008fc9 bpatchx  0x000000fc , 0x0000403f 
+ 00032528  0x00008fca rtn 
+ 00032529  0x00008fcd arg  0x00000800 , 0x0000000b 
+ 00032530  0x00008fce lshift16  0x0000000b , 0x0000000b 
+ 00032531  0x00008fcf iadd  0x0000000b , 0x0000003f 
+ 00032532  0x00008fd0 rtn 
+ 00032533  0x00008fd4 arg  0x00000000 , 0x00000007 
+ 00032534  0x00008fd6 bpatchx  0x000000fd , 0x0000403f 
+ 00032535  0x00008fd7 fetcht  0x00000004 , 0x00004094 
+ 00032536  0x00008fd8 rshift  0x00000022 , 0x0000003f 
+ 00032537  0x00008fd9 store  0x00000004 , 0x00004094 
+ 00032538  0x00008fda isub  0x00000002 , 0x0000003e 
+ 00032539  0x00008fdb ncall  0x00007f11 , 0x00000002 
+ 00032540  0x00008fdc isub  0x00000002 , 0x0000000b 
+ 00032541  0x00008fdd copy  0x0000000b , 0x00000002 
+ 00032542  0x00008fde arg  0x0000419d , 0x00000006 
+ 00032543  0x00008fdf copy  0x00000006 , 0x00000005 
+ 00032544  0x00008fe0 arg  0x00000010 , 0x00000039 
+ 00032545  0x00008fe2 ifetch  0x00000002 , 0x00000006 
+ 00032546  0x00008fe3 isub  0x00000002 , 0x0000003f 
+ 00032547  0x00008fe4 branch  0x00007f25 , 0x00000002 
+ 00032548  0x00008fe5 force  0x00000000 , 0x0000003f 
+ 00032549  0x00008fe7 istore  0x00000002 , 0x00000005 
+ 00032550  0x00008fe8 loop  0x00007f21 
+ 00032551  0x00008fe9 arg  0x0000419d , 0x00000006 
+ 00032552  0x00008fea lshift  0x00000007 , 0x0000003f 
+ 00032553  0x00008feb iadd  0x00000006 , 0x00000006 
+ 00032554  0x00008fec ifetch  0x00000002 , 0x00000006 
+ 00032555  0x00008fed rtn 
+ 00032556  0x00008ff3 iadd  0x00000002 , 0x00000002 
+ 00032557  0x00008ff4 copy  0x00000002 , 0x00000039 
+ 00032558  0x00008ff5 setarg  0x00000ea6 
+ 00032559  0x00008ff6 isub  0x00000039 , 0x0000003f 
+ 00032560  0x00008ff7 rtn  0x00000002 
+ 00032561  0x00008ff8 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00032562  0x00008ff9 rshift16  0x00000002 , 0x00000002 
+ 00032563  0x00008ffa increase  0x00000001 , 0x00000002 
+ 00032564  0x00008ffb lshift16  0x00000002 , 0x00000002 
+ 00032565  0x00008ffc ior  0x00000002 , 0x00000002 
+ 00032566  0x00008ffd rtn 
+ 00032567  0x00009000 call  0x00007f39 
+ 00032568  0x00009001 branch  0x00007f43 
+ 00032569  0x00009005 disable  0x00000028 
+ 00032570  0x00009006 isub  0x00000002 , 0x0000003f 
+ 00032571  0x00009007 branch  0x00007f3e , 0x00000002 
+ 00032572  0x00009008 enable  0x00000028 
+ 00032573  0x00009009 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00032574  0x0000900b rtnbit0  0x0000000f 
+ 00032575  0x0000900c arg  0xffff0ea6 , 0x00000002 
+ 00032576  0x0000900d iadd  0x00000002 , 0x0000003f 
+ 00032577  0x0000900e set0  0x00000040 , 0x0000003f 
+ 00032578  0x0000900f rtn 
+ 00032579  0x00009012 iforce  0x00000006 
+ 00032580  0x00009013 rshift16  0x0000003f , 0x0000003f 
+ 00032581  0x00009014 arg  0x00000ea6 , 0x00000002 
+ 00032582  0x00009015 imul32  0x00000002 , 0x0000003f 
+ 00032583  0x00009016 iadd  0x00000006 , 0x0000003f 
+ 00032584  0x00009017 rtn 
+ 00032585  0x0000901b lshift8  0x0000003f , 0x0000003f 
+ 00032586  0x0000901c lshift4  0x0000003f , 0x0000003f 
+ 00032587  0x0000901d fetcht  0x00000003 , 0x0000416f 
+ 00032588  0x0000901e idiv  0x00000002 
+ 00032589  0x0000901f call  0x00007f86 
+ 00032590  0x00009020 quotient  0x00000002 
+ 00032591  0x00009021 rtn 
+ 00032592  0x00009025 arg  0x00000ea6 , 0x00000002 
+ 00032593  0x00009026 idiv  0x00000002 
+ 00032594  0x00009027 call  0x00007f86 
+ 00032595  0x00009028 quotient  0x0000003f 
+ 00032596  0x00009029 lshift16  0x0000003f , 0x0000003f 
+ 00032597  0x0000902a remainder  0x00000002 
+ 00032598  0x0000902b ior  0x00000002 , 0x00000002 
+ 00032599  0x0000902c rtn 
+ 00032600  0x00009034 arg  0x00000000 , 0x00000002 
+ 00032601  0x00009036 copy  0x00000002 , 0x00000013 
+ 00032602  0x00009037 ifetch  0x00000001 , 0x00000003 
+ 00032603  0x00009038 call  0x00007f64 
+ 00032604  0x00009039 copy  0x00000013 , 0x00000002 
+ 00032605  0x0000903a call  0x00007f95 
+ 00032606  0x0000903b arg  0x0000000a , 0x00000012 
+ 00032607  0x0000903c imul32  0x00000012 , 0x0000003f 
+ 00032608  0x0000903d iadd  0x00000002 , 0x0000003f 
+ 00032609  0x0000903e copy  0x0000003f , 0x00000002 
+ 00032610  0x0000903f loop  0x00007f59 
+ 00032611  0x00009040 rtn 
+ 00032612  0x00009045 arg  0x0000003a , 0x00000002 
+ 00032613  0x00009046 isub  0x00000002 , 0x0000003e 
+ 00032614  0x00009047 nbranch  0x00007f6d , 0x00000002 
+ 00032615  0x00009048 arg  0x00000061 , 0x00000002 
+ 00032616  0x00009049 isub  0x00000002 , 0x0000003e 
+ 00032617  0x0000904a branch  0x00007f70 , 0x00000002 
+ 00032618  0x0000904b arg  0x00000037 , 0x00000002 
+ 00032619  0x0000904c isub  0x00000002 , 0x0000003f 
+ 00032620  0x0000904d rtn 
+ 00032621  0x0000904f arg  0x00000030 , 0x00000002 
+ 00032622  0x00009050 isub  0x00000002 , 0x0000003f 
+ 00032623  0x00009051 rtn 
+ 00032624  0x00009053 arg  0x00000057 , 0x00000002 
+ 00032625  0x00009054 isub  0x00000002 , 0x0000003f 
+ 00032626  0x00009055 rtn 
+ 00032627  0x00009058 copy  0x00000002 , 0x00000030 
+ 00032628  0x00009059 setarg  0x000001ff 
+ 00032629  0x0000905a force  0x00000000 , 0x00000012 
+ 00032630  0x0000905c rshift3  0x0000003f , 0x00000011 
+ 00032631  0x0000905d rshift  0x00000011 , 0x00000011 
+ 00032632  0x0000905e ixor  0x00000011 , 0x00000011 
+ 00032633  0x0000905f isolate1  0x00000000 , 0x00000011 
+ 00032634  0x00009060 setflag  0x00000001 , 0x00000009 , 0x0000003f 
+ 00032635  0x00009061 rshift  0x00000002 , 0x00000002 
+ 00032636  0x00009062 isolate1  0x00000000 , 0x0000003f 
+ 00032637  0x00009063 setflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00032638  0x00009064 rshift  0x0000003f , 0x0000003f 
+ 00032639  0x00009065 increase  0x00000001 , 0x00000012 
+ 00032640  0x00009066 compare  0x00000000 , 0x00000012 , 0x00000007 
+ 00032641  0x00009067 nbranch  0x00007f76 , 0x00000001 
+ 00032642  0x00009068 istoret  0x00000001 , 0x00000005 
+ 00032643  0x00009069 loop  0x00007f76 
+ 00032644  0x0000906a copy  0x00000030 , 0x00000002 
+ 00032645  0x0000906b rtn 
+ 00032646  0x0000906f rtn  0x00000035 
+ 00032647  0x00009070 branch  0x00007f86 
+ 00032648  0x0000907c ifetch  0x00000001 , 0x00000011 
+ 00032649  0x0000907d ifetcht  0x00000001 , 0x00000012 
+ 00032650  0x0000907e isub  0x00000002 , 0x0000003e 
+ 00032651  0x0000907f nrtn  0x00000005 
+ 00032652  0x00009080 increase  0x00000001 , 0x00000011 
+ 00032653  0x00009081 increase  0x00000001 , 0x00000012 
+ 00032654  0x00009082 loop  0x00007f88 
+ 00032655  0x00009083 force  0x00000000 , 0x0000003e 
+ 00032656  0x00009084 rtn 
+ 00032657  0x00009088 isub  0x00000002 , 0x0000003e 
+ 00032658  0x00009089 nrtn  0x00000002 
+ 00032659  0x0000908a deposit  0x00000002 
+ 00032660  0x0000908b rtn 
+ 00032661  0x0000908e iadd  0x00000002 , 0x0000003f 
+ 00032662  0x0000908f isub  0x00000002 , 0x00000002 
+ 00032663  0x00009090 isub  0x00000002 , 0x0000003f 
+ 00032664  0x00009091 rtn 
+ 00032665  0x00009094 arg  0x00000200 , 0x00000039 
+ 00032666  0x00009095 arg  0x00004000 , 0x00000005 
+ 00032667  0x00009096 branch  0x00007ec6 
+ 00032668  0x0000909a rtn  0x00000034 
+ 00032669  0x0000909b copy  0x0000003f , 0x0000003d 
+ 00032670  0x0000909f hfetch  0x00000002 , 0x0000810e 
+ 00032671  0x000090a0 nbranch  0x00007f9e , 0x00000034 
+ 00032672  0x000090a1 rtn 
+ 00032673  0x000090a4 jam  0x00000001 , 0x00008203 
+ 00032674  0x000090a5 rtn 
+ 00032675  0x000090a8 hstore  0x00000002 , 0x00008205 
+ 00032676  0x000090a9 hfetch  0x00000001 , 0x00008203 
+ 00032677  0x000090aa set1  0x00000004 , 0x0000003f 
+ 00032678  0x000090ab hstore  0x00000001 , 0x00008203 
+ 00032679  0x000090ac rtn 
+ 00032680  0x000090ae hstore  0x00000002 , 0x00008207 
+ 00032681  0x000090af hfetch  0x00000001 , 0x00008203 
+ 00032682  0x000090b0 set1  0x00000006 , 0x0000003f 
+ 00032683  0x000090b1 hstore  0x00000001 , 0x00008203 
+ 00032684  0x000090b2 rtn 
+ 00032685  0x000090b5 hstore  0x00000002 , 0x00008205 
+ 00032686  0x000090b6 jam  0x00000030 , 0x00008203 
+ 00032687  0x000090b7 rtn 
+ 00032688  0x000090bc hfetch  0x00000001 , 0x00008043 
+ 00032689  0x000090bd set0  0x00000004 , 0x0000003f 
+ 00032690  0x000090be hstore  0x00000001 , 0x00008043 
+ 00032691  0x000090bf rtn 
+ 00032692  0x000090c2 hfetch  0x00000002 , 0x0000810e 
+ 00032693  0x000090c3 arg  0x00000200 , 0x00000002 
+ 00032694  0x000090c5 isub  0x00000002 , 0x0000003e 
+ 00032695  0x000090c6 rtn 
+ 00032696  0x000090cd bpatchx  0x000000fe , 0x0000403f 
+ 00032697  0x000090ce ifetcht  0x00000008 , 0x00000011 
+ 00032698  0x000090cf and  0x00000002 , 0x000000ff , 0x0000003f 
+ 00032699  0x000090d0 nbranch  0x00007fbe , 0x00000034 
+ 00032700  0x000090d1 rshift8  0x00000002 , 0x0000003f 
+ 00032701  0x000090d2 istore  0x00000008 , 0x00000011 
+ 00032702  0x000090d4 increase  0x00000007 , 0x00000011 
+ 00032703  0x000090d5 ifetch  0x00000001 , 0x00000011 
+ 00032704  0x000090d6 nbranch  0x00002a8c , 0x00000034 
+ 00032705  0x000090d7 fetch  0x00000001 , 0x00000a99 
+ 00032706  0x000090d8 istore  0x00000001 , 0x00000011 
+ 00032707  0x000090d9 rtn 
+ 00032708  0x000090df bpatchx  0x000000ff , 0x0000403f 
+ 00032709  0x000090e0 arg  0x00000008 , 0x00000039 
+ 00032710  0x000090e1 ifetch  0x00000008 , 0x00000011 
+ 00032711  0x000090e2 rtn  0x00000034 
+ 00032712  0x000090e4 ifetch  0x00000001 , 0x00000011 
+ 00032713  0x000090e5 nbranch  0x00007fcd , 0x00000034 
+ 00032714  0x000090e6 increase  0x00000001 , 0x00000011 
+ 00032715  0x000090e7 loop  0x00007fc8 
+ 00032716  0x000090e8 branch  0x00002a8c 
+ 00032717  0x000090ea arg  0x00000000 , 0x00000002 
+ 00032718  0x000090eb istoret  0x00000001 , 0x00000011 
+ 00032719  0x000090ec rtn 
+ 00032720  0x000090f2 ifetch  0x00000008 , 0x00000011 
+ 00032721  0x000090f3 rtn 
+ 00032722  0x000090f9 ifetch  0x00000001 , 0x00000011 
+ 00032723  0x000090fa rtn 
+ 00032724  0x000090fe ifetch  0x00000002 , 0x00000011 
+ 00032725  0x000090ff rtn 
+ 00032726  0x00009104 arg  0x00000000 , 0x00000002 
+ 00032727  0x00009106 fetch  0x00000001 , 0x00000006 
+ 00032728  0x00009107 loop  0x00007fd7 , 0x00000034 
+ 00032729  0x00009108 increase  0x00000001 , 0x00000002 
+ 00032730  0x00009109 loop  0x00007fd7 
+ 00032731  0x0000910a copy  0x00000002 , 0x0000003f 
+ 00032732  0x0000910b rtn 
+ 00032733  0x0000910e isub  0x00000002 , 0x0000003e 
+ 00032734  0x0000910f nrtn  0x00000002 
+ 00032735  0x00009110 copy  0x00000002 , 0x0000003f 
+ 00032736  0x00009111 rtn 
+ 00032737  0x00009115 force  0xffffffff , 0x0000003e 
+ 00032738  0x00009116 rtn 
+ 00032739  0x00009119 force  0x00000001 , 0x0000003e 
+ 00032740  0x0000911a rtn 
+ 00032741  0x0000911c force  0x00000000 , 0x0000003e 
+ 00032742  0x0000911d rtn 
+ 00032743  0x00009120 enable  0x00000028 
+ 00032744  0x00009121 rtn 
+ 00032745  0x00009124 disable  0x00000028 
+ 00032746  0x00009125 rtn 
+ 00032747  0x00009128 enable  0x0000002c 
+ 00032748  0x00009129 rtn 
+ 00032749  0x0000912c disable  0x0000002c 
+ 00032750  0x0000912d rtn 
+ 00032751  0x00009130 setarg  0x00000001 
+ 00032752  0x00009131 rtn 
+ 00032753  0x00009134 setarg  0x00000000 
+ 00032754  0x00009135 rtn 
+ 00032755  0x00009139 copy  0x00000039 , 0x0000003f 
+ 00032756  0x0000913a rtn  0x00000034 
+ 00032757  0x0000913b copy  0x00000006 , 0x0000003f 
+ 00032758  0x0000913c iadd  0x00000039 , 0x0000003f 
+ 00032759  0x0000913d increase  0xffffffff , 0x0000003f 
+ 00032760  0x0000913e copy  0x0000003f , 0x00000006 
+ 00032761  0x00009140 ifetch  0x00000001 , 0x00000006 
+ 00032762  0x00009141 increase  0xfffffffe , 0x00000006 
+ 00032763  0x00009142 istore  0x00000001 , 0x00000005 
+ 00032764  0x00009143 loop  0x00007ff9 
+ 00032765  0x00009144 rtn 
+ 00065537  0x0000914a beq  0x00000001 , 0x00010005 
+ 00065538  0x0000914b beq  0x00000000 , 0x0001001d 
+ 00065539  0x0000914c beq  0x00000002 , 0x0001002a 
+ 00065540  0x0000914d rtn 
+ 00065541  0x00009150 jam  0x00000000 , 0x00004808 
+ 00065542  0x00009151 jam  0x0000000e , 0x000041e3 
+ 00065543  0x00009152 call  0x000041e7 
+ 00065544  0x00009153 fetch  0x00000002 , 0x00004208 
+ 00065545  0x00009154 bbit1  0x00000007 , 0x000041f5 
+ 00065546  0x00009155 bbit1  0x00000000 , 0x000033a9 
+ 00065547  0x00009156 bbit1  0x00000001 , 0x0001000f 
+ 00065548  0x00009157 bbit1  0x00000002 , 0x00010012 
+ 00065549  0x00009158 bbit1  0x00000003 , 0x00010012 
+ 00065550  0x00009159 branch  0x000042b0 
+ 00065551  0x0000915c bbit1  0x00000005 , 0x00010012 
+ 00065552  0x0000915d bbit1  0x00000003 , 0x00010012 
+ 00065553  0x0000915e branch  0x000042b0 
+ 00065554  0x00009160 fetch  0x00000002 , 0x00004682 
+ 00065555  0x00009161 bbit1  0x0000000c , 0x000042b0 
+ 00065556  0x00009162 call  0x000033a9 
+ 00065557  0x00009163 call  0x0000053b 
+ 00065558  0x00009164 beq  0x00000007 , 0x0001001a 
+ 00065559  0x00009165 fetch  0x00000001 , 0x000046b6 
+ 00065560  0x00009166 branch  0x0001001a , 0x00000034 
+ 00065561  0x00009167 branch  0x000033a7 
+ 00065562  0x0000916a jam  0x00000001 , 0x0000479f 
+ 00065563  0x0000916b jam  0x00000028 , 0x000047a0 
+ 00065564  0x0000916c rtn 
+ 00065565  0x0000916f fetch  0x00000001 , 0x0000000e 
+ 00065566  0x00009170 increase  0x00000001 , 0x0000003f 
+ 00065567  0x00009171 store  0x00000001 , 0x0000000e 
+ 00065568  0x00009172 call  0x00002435 
+ 00065569  0x00009174 set1  0x0000002c , 0x00000000 
+ 00065570  0x00009175 call  0x000022f2 
+ 00065571  0x00009176 branch  0x00010028 , 0x00000018 
+ 00065572  0x00009177 set0  0x0000002c , 0x00000000 
+ 00065573  0x00009178 call  0x00002455 
+ 00065574  0x00009179 nbranch  0x00010021 , 0x00000034 
+ 00065575  0x0000917a branch  0x000020fc 
+ 00065576  0x0000917c set0  0x0000002c , 0x00000000 
+ 00065577  0x0000917d branch  0x0000215f 
+ 00065578  0x00009180 fetch  0x00000002 , 0x00000264 
+ 00065579  0x00009181 copy  0x0000003f , 0x00000006 
+ 00065580  0x00009182 ifetch  0x00000001 , 0x00000006 
+ 00065581  0x00009183 store  0x00000001 , 0x00004b02 
+ 00065582  0x00009184 and  0x0000003f , 0x0000000f , 0x00000002 
+ 00065583  0x00009185 rshift4  0x0000003f , 0x0000003f 
+ 00065584  0x00009186 beq  0x00000007 , 0x00010033 
+ 00065585  0x00009187 beq  0x00000001 , 0x0001003a 
+ 00065586  0x00009188 branch  0x00004d39 
+ 00065587  0x0000918a call  0x00004d53 
+ 00065588  0x0000918b jam  0x00000000 , 0x00004b03 
+ 00065589  0x0000918c fetch  0x00000001 , 0x00004b02 
+ 00065590  0x0000918d isolate1  0x00000000 , 0x0000003f 
+ 00065591  0x0000918e rtn  0x00000001 
+ 00065592  0x0000918f jam  0x00000001 , 0x00004b03 
+ 00065593  0x00009190 rtn 
+ 00065594  0x00009193 copy  0x00000002 , 0x0000003f 
+ 00065595  0x00009194 beq  0x00000005 , 0x00000433 
+ 00065596  0x00009195 branch  0x00004d41 
+ 00131073  0x0000919a beq  0x00000010 , 0x0002000e 
+ 00131074  0x0000919b beq  0x00000011 , 0x0002001b 
+ 00131075  0x0000919c beq  0x00000012 , 0x00020005 
+ 00131076  0x0000919d rtn 
+ 00131077  0x000091a0 jam  0x00000001 , 0x00004b6e 
+ 00131078  0x000091a1 jam  0x00000001 , 0x000047a1 
+ 00131079  0x000091a2 fetch  0x00000002 , 0x000046a8 
+ 00131080  0x000091a3 store  0x00000002 , 0x000046ae 
+ 00131081  0x000091a4 call  0x0000048b 
+ 00131082  0x000091a5 call  0x00003418 
+ 00131083  0x000091a6 arg  0x00004390 , 0x00000006 
+ 00131084  0x000091a7 call  0x00000487 
+ 00131085  0x000091a8 branch  0x00007df4 
+ 00131086  0x000091ab fetch  0x00000001 , 0x00000048 
+ 00131087  0x000091ac beq  0x00000084 , 0x00020012 
+ 00131088  0x000091ad beq  0x00000083 , 0x00020015 
+ 00131089  0x000091ae branch  0x0000603f 
+ 00131090  0x000091b0 call  0x00020018 
+ 00131091  0x000091b1 fetch  0x00000001 , 0x00000048 
+ 00131092  0x000091b2 branch  0x00006099 
+ 00131093  0x000091b4 call  0x00020018 
+ 00131094  0x000091b5 fetch  0x00000001 , 0x00000048 
+ 00131095  0x000091b6 branch  0x0000610d 
+ 00131096  0x000091b8 fetch  0x00000001 , 0x0000465a 
+ 00131097  0x000091b9 branch  0x0000612b , 0x00000034 
+ 00131098  0x000091ba branch  0x00006124 
+ 00131099  0x000091bd force  0x00000002 , 0x0000003f 
+ 00131100  0x000091be call  0x00006298 
+ 00131101  0x000091bf fetch  0x00000001 , 0x00000049 
+ 00131102  0x000091c0 istore  0x00000001 , 0x00000005 
+ 00131103  0x000091c1 store  0x00000001 , 0x00004afc 
+ 00131104  0x000091c2 call  0x000062a7 
+ 00131105  0x000091c3 fetch  0x00000001 , 0x00004afc 
+ 00131106  0x000091c4 beq  0x0000002e , 0x00020024 
+ 00131107  0x000091c5 branch  0x00006051 
+ 00131108  0x000091c8 fetch  0x00000001 , 0x00004aff 
+ 00131109  0x000091c9 rtn  0x00000034 
+ 00131110  0x000091ca jam  0x00000000 , 0x00004aff 
+ 00131111  0x000091cb fetch  0x00000001 , 0x00004b01 
+ 00131112  0x000091cc rtnne  0x00000002 
+ 00131113  0x000091cd jam  0x00000001 , 0x00004b00 
+ 00131114  0x000091ce copy  0x00000022 , 0x0000003f 
+ 00131115  0x000091cf store  0x00000004 , 0x000004e9 
+ 00131116  0x000091d0 rtn 
+ 00196609  0x000091d5 beq  0x00000020 , 0x00030006 
+ 00196610  0x000091d6 beq  0x00000021 , 0x00030018 
+ 00196611  0x000091d7 beq  0x00000022 , 0x00030025 
+ 00196612  0x000091d8 beq  0x00000023 , 0x0003002c 
+ 00196613  0x000091d9 rtn 
+ 00196614  0x000091dc call  0x0003000e 
+ 00196615  0x000091dd branch  0x0000557d 
+ 00196616  0x000091df fetch  0x00000001 , 0x000047c5 
+ 00196617  0x000091e0 store  0x00000001 , 0x00004172 
+ 00196618  0x000091e2 jam  0x00000000 , 0x000047c4 
+ 00196619  0x000091e3 rtn 
+ 00196620  0x000091e5 jam  0x00000001 , 0x000047c4 
+ 00196621  0x000091e6 rtn 
+ 00196622  0x000091e8 fetch  0x00000001 , 0x000043d6 
+ 00196623  0x000091e9 sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00196624  0x000091ea nbranch  0x0003000c , 0x00000002 
+ 00196625  0x000091eb fetch  0x00000001 , 0x000043d8 
+ 00196626  0x000091ec fetcht  0x00000001 , 0x000047c5 
+ 00196627  0x000091ed isub  0x00000002 , 0x0000003e 
+ 00196628  0x000091ee branch  0x00030008 , 0x00000002 
+ 00196629  0x000091ef fetch  0x00000001 , 0x000043d8 
+ 00196630  0x000091f0 store  0x00000001 , 0x00004172 
+ 00196631  0x000091f1 branch  0x0003000a 
+ 00196632  0x000091f4 fetch  0x00000001 , 0x0000043f 
+ 00196633  0x000091f5 rtnbit0  0x00000006 
+ 00196634  0x000091f6 call  0x0003001d 
+ 00196635  0x000091f7 nrtn  0x00000028 
+ 00196636  0x000091f8 branch  0x000055a0 
+ 00196637  0x000091fa enable  0x00000028 
+ 00196638  0x000091fb fetch  0x00000001 , 0x0000045a 
+ 00196639  0x000091fc rshift4  0x0000003f , 0x0000003f 
+ 00196640  0x000091fd rtnne  0x0000000f 
+ 00196641  0x000091fe fetch  0x00000001 , 0x00000460 
+ 00196642  0x000091ff rshift4  0x0000003f , 0x0000003f 
+ 00196643  0x00009200 rtnne  0x00000000 
+ 00196644  0x00009201 branch  0x00007fe9 
+ 00196645  0x00009204 fetch  0x00000001 , 0x000047a1 
+ 00196646  0x00009205 nrtn  0x00000034 
+ 00196647  0x00009206 fetch  0x00000001 , 0x00000478 
+ 00196648  0x00009207 sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00196649  0x00009208 nrtn  0x00000005 
+ 00196650  0x00009209 jam  0x00000000 , 0x000046c6 
+ 00196651  0x0000920a branch  0x00003d60 
+ 00196652  0x0000920d call  0x000033af 
+ 00196653  0x0000920e call  0x000026e9 
+ 00196654  0x0000920f jam  0x00000002 , 0x00000a99 
+ 00196655  0x00009210 call  0x00007d86 
+ 00196656  0x00009211 call  0x00005cf7 
+ 00196657  0x00009212 call  0x00004d6b 
+ 00196658  0x00009213 branch  0x0000246e 
+ 00262145  0x00009218 beq  0x00000030 , 0x00040003 
+ 00262146  0x00009219 rtn 
+ 00262147  0x0000921c call  0x000002cd 
+ 00262148  0x0000921d jam  0x00000000 , 0x00004b6e 
+ 00262149  0x0000921e jam  0x00000001 , 0x00004b6b 
+ 00262150  0x0000921f jam  0x00000001 , 0x00004720 
+ 00262151  0x00009220 jam  0x00000000 , 0x0000479e 
+ 00262152  0x00009222 fetch  0x00000006 , 0x00004b62 
+ 00262153  0x00009223 store  0x00000006 , 0x000044a0 
+ 00262154  0x00009224 call  0x00000357 
+ 00262155  0x00009225 call  0x00003418 
+ 00262156  0x00009226 fetch  0x00000002 , 0x00004687 
+ 00262157  0x00009227 store  0x00000002 , 0x000046ac 
+ 00262158  0x00009228 jam  0x00000006 , 0x0000016d 
+ 00262159  0x00009229 setarg  0x00000000 
+ 00262160  0x0000922a store  0x00000002 , 0x000046b0 
+ 00262161  0x0000922b store  0x00000002 , 0x000046ae 
+ 00262162  0x0000922c call  0x0000048b 
+ 00262163  0x0000922d call  0x000043ca 
+ 00262164  0x0000922f call  0x00000346 
+ 00262165  0x00009230 fetch  0x00000001 , 0x00004210 
+ 00262166  0x00009231 sub  0x0000003f , 0x00000033 , 0x0000003e 
+ 00262167  0x00009232 call  0x0004001e , 0x00000005 
+ 00262168  0x00009234 fetch  0x00000001 , 0x00004b6c 
+ 00262169  0x00009235 ncall  0x0004001e , 0x00000034 
+ 00262170  0x00009237 fetch  0x00000001 , 0x00004092 
+ 00262171  0x00009238 isolate1  0x00000000 , 0x0000003f 
+ 00262172  0x00009239 call  0x00007ddd , 0x00000001 
+ 00262173  0x0000923b rtn 
+ 00262174  0x0000923f fetch  0x00000006 , 0x00004b62 
+ 00262175  0x00009240 store  0x00000006 , 0x000044a0 
+ 00262176  0x00009241 call  0x00000483 
+ 00262177  0x00009242 branch  0x00007df4 
+ 00327681  0x00009247 beq  0x00000040 , 0x00050005 
+ 00327682  0x00009248 beq  0x00000041 , 0x00050019 
+ 00327683  0x00009249 beq  0x00000042 , 0x00050026 
+ 00327684  0x0000924a rtn 
+ 00327685  0x0000924d call  0x00050010 
+ 00327686  0x0000924e branch  0x0000036b , 0x00000028 
+ 00327687  0x0000924f set1  0x00000026 , 0x00000000 
+ 00327688  0x00009250 fetch  0x00000001 , 0x00004d9d 
+ 00327689  0x00009251 set1  0x00000002 , 0x0000003f 
+ 00327690  0x00009252 store  0x00000001 , 0x00004d9d 
+ 00327691  0x00009253 call  0x000001dc 
+ 00327692  0x00009254 call  0x0000015e 
+ 00327693  0x00009255 fetch  0x00000001 , 0x00004241 
+ 00327694  0x00009256 bbit1  0x00000002 , 0x0005001d 
+ 00327695  0x00009257 branch  0x00050022 
+ 00327696  0x0000925a arg  0x00000002 , 0x00000039 
+ 00327697  0x0000925b arg  0x00004c71 , 0x00000006 
+ 00327698  0x0000925c call  0x00007fe7 
+ 00327699  0x0000925d setarg  0x0000ffff 
+ 00327700  0x0000925f ifetcht  0x00000002 , 0x00000006 
+ 00327701  0x00009260 isub  0x00000002 , 0x0000003e 
+ 00327702  0x00009261 ncall  0x00007fe9 , 0x00000005 
+ 00327703  0x00009262 loop  0x00050014 
+ 00327704  0x00009263 rtn 
+ 00327705  0x00009266 set1  0x00000026 , 0x00000000 
+ 00327706  0x00009267 fetch  0x00000001 , 0x00004d9d 
+ 00327707  0x00009268 set1  0x00000001 , 0x0000003f 
+ 00327708  0x00009269 store  0x00000001 , 0x00004d9d 
+ 00327709  0x0000926b call  0x00000458 
+ 00327710  0x0000926c setarg  0x00000708 
+ 00327711  0x0000926d store  0x00000002 , 0x00004bc1 
+ 00327712  0x0000926e jam  0x00000000 , 0x00004d94 
+ 00327713  0x0000926f rtn 
+ 00327714  0x00009271 setarg  0x0000001e 
+ 00327715  0x00009272 store  0x00000002 , 0x00004d95 
+ 00327716  0x00009273 jam  0x00000000 , 0x00004d94 
+ 00327717  0x00009274 rtn 
+ 00327718  0x00009277 fetch  0x00000004 , 0x000046d3 
+ 00327719  0x00009278 rtnbit0  0x00000011 
+ 00327720  0x00009279 rtnbit1  0x00000003 
+ 00327721  0x0000927a rtnmark1  0x00000026 
+ 00327722  0x0000927b call  0x00004482 
+ 00327723  0x0000927c arg  0x00000003 , 0x00000007 
+ 00327724  0x0000927d call  0x000043ce 
+ 00327725  0x0000927e setarg  0x00000000 
+ 00327726  0x0000927f store  0x00000002 , 0x000046ae 
+ 00327727  0x00009280 store  0x00000001 , 0x000046b4 
+ 00327728  0x00009281 store  0x00000002 , 0x00004c76 
+ 00327729  0x00009282 call  0x000042ca 
+ 00327730  0x00009283 branch  0x0000036b 
+ 00393217  0x0000928a beq  0x00000051 , 0x0006000a 
+ 00393218  0x0000928b beq  0x00000052 , 0x00060011 
+ 00393219  0x0000928c beq  0x00000053 , 0x00060021 
+ 00393220  0x0000928e arg  0x00000003 , 0x00000007 
+ 00393221  0x0000928f call  0x000043d2 
+ 00393222  0x00009290 jam  0x00000000 , 0x000046a7 
+ 00393223  0x00009291 call  0x0000405d 
+ 00393224  0x00009292 call  0x000002cd 
+ 00393225  0x00009293 branch  0x00060011 
+ 00393226  0x00009296 jam  0x00000000 , 0x00004d89 
+ 00393227  0x00009297 call  0x000002cd 
+ 00393228  0x00009298 call  0x000001f3 
+ 00393229  0x00009299 call  0x00000346 
+ 00393230  0x0000929a fetch  0x00000001 , 0x00004b76 
+ 00393231  0x0000929b rtnne  0x00000002 
+ 00393232  0x0000929c branch  0x0000340a 
+ 00393233  0x0000929f jam  0x00000000 , 0x00004b42 
+ 00393234  0x000092a0 jam  0x00000000 , 0x00004b77 
+ 00393235  0x000092a1 setarg  0x00000000 
+ 00393236  0x000092a2 store  0x00000003 , 0x00004b68 
+ 00393237  0x000092a3 call  0x000041c6 
+ 00393238  0x000092a6 call  0x0006001e 
+ 00393239  0x000092a7 call  0x000004f8 
+ 00393240  0x000092a8 call  0x00003f8d 
+ 00393241  0x000092a9 fetch  0x00000004 , 0x00004c71 
+ 00393242  0x000092aa store  0x00000004 , 0x0000477b 
+ 00393243  0x000092ab call  0x00004366 
+ 00393244  0x000092ac jam  0x00000002 , 0x00004b76 
+ 00393245  0x000092ad branch  0x00000316 
+ 00393246  0x000092b0 setarg  0x00000000 
+ 00393247  0x000092b1 store  0x00000003 , 0x00004d94 
+ 00393248  0x000092b2 rtn 
+ 00393249  0x000092b5 fetch  0x00000001 , 0x00004d94 
+ 00393250  0x000092b6 beq  0x00000001 , 0x00002dd4 
+ 00393251  0x000092b7 call  0x00060030 
+ 00393252  0x000092b8 call  0x000001aa 
+ 00393253  0x000092b9 nbranch  0x0000015e , 0x00000018 
+ 00393254  0x000092ba nbranch  0x0000015e , 0x0000002f 
+ 00393255  0x000092bb fetch  0x00000001 , 0x00004d9d 
+ 00393256  0x000092bc set0  0x00000002 , 0x0000003f 
+ 00393257  0x000092bd store  0x00000001 , 0x00004d9d 
+ 00393258  0x000092bf jam  0x00000000 , 0x00004b42 
+ 00393259  0x000092c0 call  0x00002f20 
+ 00393260  0x000092c1 call  0x000001a7 
+ 00393261  0x000092c2 branch  0x00000370 
+ 00393262  0x000092c6 fetch  0x00000004 , 0x00004c29 
+ 00393263  0x000092c7 branch  0x000001db 
+ 00393264  0x000092ca jam  0x000000ff , 0x0000119e 
+ 00393265  0x000092cb fetch  0x00000001 , 0x00004c4a 
+ 00393266  0x000092cc store  0x00000001 , 0x0000119f 
+ 00393267  0x000092cd fetch  0x00000004 , 0x00004c80 
+ 00393268  0x000092ce store  0x00000004 , 0x000011a0 
+ 00393269  0x000092cf arg  0x00000006 , 0x00000002 
+ 00393270  0x000092d0 arg  0x0000119e , 0x00000011 
+ 00393271  0x000092d1 call  0x000001f8 
+ 00393272  0x000092d2 branch  0x0000020a 
+ 00458753  0x000092dc fetch  0x00000001 , 0x00004d94 
+ 00458754  0x000092dd beq  0x00000001 , 0x00002dd4 
+ 00458755  0x000092de jam  0x000000ff , 0x0000119e 
+ 00458756  0x000092df fetch  0x00000001 , 0x00004c4a 
+ 00458757  0x000092e0 store  0x00000001 , 0x0000119f 
+ 00458758  0x000092e1 fetch  0x00000004 , 0x00004c80 
+ 00458759  0x000092e2 store  0x00000004 , 0x000011a0 
+ 00458760  0x000092e3 arg  0x00000006 , 0x00000002 
+ 00458761  0x000092e4 arg  0x0000119e , 0x00000011 
+ 00458762  0x000092e5 call  0x000001f8 
+ 00458763  0x000092e6 call  0x0000020a 
+ 00458764  0x000092e7 call  0x000001aa 
+ 00458765  0x000092e8 nbranch  0x00070026 , 0x00000018 
+ 00458766  0x000092e9 nbranch  0x00070026 , 0x0000002f 
+ 00458767  0x000092ea call  0x000001d0 
+ 00458768  0x000092eb fetch  0x00000004 , 0x00004c71 
+ 00458769  0x000092ec fetcht  0x00000004 , 0x00004d8e 
+ 00458770  0x000092ed isub  0x00000002 , 0x0000003e 
+ 00458771  0x000092ee branch  0x00070016 , 0x00000005 
+ 00458772  0x000092ef fetch  0x00000001 , 0x00004c47 
+ 00458773  0x000092f0 rtnne  0x00000008 
+ 00458774  0x000092f5 jam  0x00000000 , 0x00004d9d 
+ 00458775  0x000092f6 call  0x000002cd 
+ 00458776  0x000092f7 fetch  0x00000004 , 0x00004c71 
+ 00458777  0x000092f8 fetcht  0x00000004 , 0x00004c55 
+ 00458778  0x000092f9 isub  0x00000002 , 0x0000003e 
+ 00458779  0x000092fa branch  0x000001e9 , 0x00000005 
+ 00458780  0x000092fb fetch  0x00000004 , 0x00004c71 
+ 00458781  0x000092fc fetcht  0x00000004 , 0x00004c80 
+ 00458782  0x000092fd isub  0x00000002 , 0x0000003e 
+ 00458783  0x000092fe call  0x00070024 , 0x00000005 
+ 00458784  0x000092ff jam  0x00000000 , 0x00004b42 
+ 00458785  0x00009300 call  0x00002f20 
+ 00458786  0x00009301 call  0x000001a7 
+ 00458787  0x00009302 branch  0x00000370 
+ 00458788  0x00009305 fetch  0x00000004 , 0x00004c29 
+ 00458789  0x00009306 branch  0x000001db 
+ 00458790  0x0000930a fetch  0x00000001 , 0x00004d87 
+ 00458791  0x0000930b increase  0x00000001 , 0x0000003f 
+ 00458792  0x0000930c and_into  0x00000003 , 0x0000003f 
+ 00458793  0x0000930d store  0x00000001 , 0x00004d87 
+ 00458794  0x0000930e beq  0x00000000 , 0x0007002d 
+ 00458795  0x0000930f beq  0x00000002 , 0x00070037 
+ 00458796  0x00009310 branch  0x000001d7 
+ 00458797  0x00009313 call  0x000002cd 
+ 00458798  0x00009314 fetch  0x00000004 , 0x00004c80 
+ 00458799  0x00009315 store  0x00000004 , 0x00004c71 
+ 00458800  0x00009316 fetch  0x00000001 , 0x00004d97 
+ 00458801  0x00009317 store  0x00000001 , 0x00004c54 
+ 00458802  0x00009318 call  0x00070035 
+ 00458803  0x00009319 storet  0x00000001 , 0x00004d97 
+ 00458804  0x0000931a rtn 
+ 00458805  0x0000931d call  0x000001dc 
+ 00458806  0x0000931e branch  0x0000015e 
+ 00458807  0x00009321 jam  0x00000020 , 0x000041de 
+ 00458808  0x00009322 fetch  0x00000004 , 0x00004d8e 
+ 00458809  0x00009323 store  0x00000004 , 0x00004c71 
+ 00458810  0x00009324 fetch  0x00000001 , 0x00004d98 
+ 00458811  0x00009325 store  0x00000001 , 0x00004c54 
+ 00458812  0x00009326 call  0x00070035 
+ 00458813  0x00009327 storet  0x00000001 , 0x00004d98 
+ 00458814  0x00009328 rtn 
+ 00524289  0x0000932d beq  0x00000070 , 0x00080004 
+ 00524290  0x0000932e beq  0x00000071 , 0x0008000b 
+ 00524291  0x0000932f rtn 
+ 00524292  0x00009332 setarg  0xffffffff 
+ 00524293  0x00009333 store  0x00000006 , 0x00000040 
+ 00524294  0x00009334 jam  0x00000033 , 0x00000185 
+ 00524295  0x00009335 jam  0x000000ff , 0x00004b75 
+ 00524296  0x00009336 call  0x000042fb 
+ 00524297  0x00009337 jam  0x000000ff , 0x00004721 
+ 00524298  0x00009338 branch  0x00000316 
+ 00524299  0x0000933b fetch  0x00000001 , 0x00004b42 
+ 00524300  0x0000933c rtn  0x00000034 
+ 00524301  0x0000933d fetch  0x00000001 , 0x00004c75 
+ 00524302  0x0000933e rtn  0x00000034 
+ 00524303  0x0000933f fetch  0x00000001 , 0x00004d9c 
+ 00524304  0x00009340 increase  0x00000001 , 0x0000003f 
+ 00524305  0x00009341 and_into  0x00000003 , 0x0000003f 
+ 00524306  0x00009342 store  0x00000001 , 0x00004d9c 
+ 00524307  0x00009343 nrtn  0x00000034 
+ 00524308  0x00009344 jam  0x00000000 , 0x00004d9b 
+ 00524309  0x00009346 fetch  0x00000001 , 0x00004d9b 
+ 00524310  0x00009347 increase  0x00000001 , 0x0000003f 
+ 00524311  0x00009348 store  0x00000001 , 0x00004d9b 
+ 00524312  0x00009349 sub  0x0000003f , 0x00000008 , 0x0000003e 
+ 00524313  0x0000934a nbranch  0x0008001f , 0x00000002 
+ 00524314  0x0000934b call  0x00080025 
+ 00524315  0x0000934c call  0x000001aa 
+ 00524316  0x0000934d nbranch  0x0008002e , 0x00000018 
+ 00524317  0x0000934e nbranch  0x0008002e , 0x0000002f 
+ 00524318  0x0000934f call  0x00000116 
+ 00524319  0x00009351 call  0x000001a7 
+ 00524320  0x00009352 fetch  0x00000001 , 0x00004d9a 
+ 00524321  0x00009353 increase  0x00000001 , 0x0000003f 
+ 00524322  0x00009354 store  0x00000001 , 0x00004d9a 
+ 00524323  0x00009355 beq  0x00000010 , 0x0000010e 
+ 00524324  0x00009356 rtn 
+ 00524325  0x00009359 jam  0x000000ff , 0x0000119e 
+ 00524326  0x0000935a fetch  0x00000001 , 0x00004c4a 
+ 00524327  0x0000935b store  0x00000001 , 0x0000119f 
+ 00524328  0x0000935c fetch  0x00000004 , 0x00004c80 
+ 00524329  0x0000935d store  0x00000004 , 0x000011a0 
+ 00524330  0x0000935e arg  0x00000006 , 0x00000002 
+ 00524331  0x0000935f arg  0x0000119e , 0x00000011 
+ 00524332  0x00009360 call  0x000001f8 
+ 00524333  0x00009361 branch  0x0000020a 
+ 00524334  0x00009364 call  0x0000015e 
+ 00524335  0x00009365 branch  0x00080015 
+ 00589825  0x0000936f call  0x00003e6e 
+ 00589826  0x00009371 fetcht  0x00000001 , 0x00004b45 
+ 00589827  0x00009372 call  0x0000680e 
+ 00589828  0x00009373 call  0x00090013 
+ 00589829  0x00009375 call  0x000063ee 
+ 00589830  0x00009376 call  0x0009002e 
+ 00589831  0x00009377 arg  0x0000001a , 0x00000002 
+ 00589832  0x00009378 call  0x000067fb 
+ 00589833  0x0000937d call  0x00003e54 
+ 00589834  0x0000937e call  0x00000309 
+ 00589835  0x0000937f fetch  0x00000001 , 0x00004720 
+ 00589836  0x00009380 rtneq  0x00000002 
+ 00589837  0x00009381 fetch  0x00000006 , 0x00004b4c 
+ 00589838  0x00009382 fetcht  0x00000006 , 0x00004722 
+ 00589839  0x00009383 isub  0x00000002 , 0x0000003e 
+ 00589840  0x00009384 nbranch  0x00000357 , 0x00000005 
+ 00589841  0x00009385 branch  0x00000359 
+ 00589842  0x00009386 rtn 
+ 00589843  0x00009389 call  0x000074b9 
+ 00589844  0x0000938a arg  0x00008c00 , 0x00000006 
+ 00589845  0x0000938b arg  0x00004876 , 0x00000005 
+ 00589846  0x0000938c arg  0x00000171 , 0x00000039 
+ 00589847  0x0000938d call  0x00007f01 
+ 00589848  0x0000938f setarg  0x000f0209 
+ 00589849  0x00009390 istore  0x00000003 , 0x00000005 
+ 00589850  0x00009391 setarg  0x00120009 
+ 00589851  0x00009392 istore  0x00000003 , 0x00000005 
+ 00589852  0x00009394 setarg  0x00100209 
+ 00589853  0x00009395 istore  0x00000003 , 0x00000005 
+ 00589854  0x00009396 setarg  0x00000009 
+ 00589855  0x00009397 istore  0x00000003 , 0x00000005 
+ 00589856  0x00009398 arg  0x00008d71 , 0x00000006 
+ 00589857  0x00009399 arg  0x00000109 , 0x00000039 
+ 00589858  0x0000939a call  0x00007f01 
+ 00589859  0x0000939c jam  0x00000000 , 0x0000488d 
+ 00589860  0x0000939d jam  0x0000006d , 0x00004885 
+ 00589861  0x0000939e setarg  0x0000401f 
+ 00589862  0x0000939f store  0x00000002 , 0x000049db 
+ 00589863  0x000093a0 setarg  0x00006d04 
+ 00589864  0x000093a1 store  0x00000002 , 0x00004a44 
+ 00589865  0x000093a2 setarg  0x000016b0 
+ 00589866  0x000093a3 store  0x00000002 , 0x00004a4a 
+ 00589867  0x000093a5 setarg  0x00004876 
+ 00589868  0x000093a6 store  0x00000002 , 0x00004575 
+ 00589869  0x000093a7 rtn 
+ 00589870  0x000093ab hfetch  0x00000001 , 0x0000807b 
+ 00589871  0x000093ac set0  0x00000005 , 0x0000003f 
+ 00589872  0x000093ad hstore  0x00000001 , 0x0000807b 
+ 00589873  0x000093b4 arg  0x0000001a , 0x00000002 
+ 00589874  0x000093b5 call  0x0000055c 
+ 00589875  0x000093b6 arg  0x0000001a , 0x00000002 
+ 00589876  0x000093b7 call  0x0000681d 
+ 00589877  0x000093b8 fetcht  0x00000001 , 0x000046f7 
+ 00589878  0x000093b9 set0  0x00000007 , 0x00000002 
+ 00589879  0x000093ba call  0x000067fb 
+ 00589880  0x000093bb fetcht  0x00000001 , 0x000046f7 
+ 00589881  0x000093bc call  0x0000681d 
+ 00589882  0x000093bd jam  0x00000003 , 0x000046f6 
+ 00589883  0x000093be rtn  0x00000001 
+ 00589884  0x000093bf jam  0x00000000 , 0x000046f6 
+ 00589885  0x000093c0 rtn 
+ 00655361  0x000093c6 beq  0x00000090 , 0x000a0004 
+ 00655362  0x000093c7 beq  0x00000091 , 0x000a001e 
+ 00655363  0x000093c8 rtn 
+ 00655364  0x000093cb fetch  0x00000001 , 0x00004c4e 
+ 00655365  0x000093cc beq  0x00000001 , 0x00007fe7 
+ 00655366  0x000093cd fetch  0x00000001 , 0x00004c59 
+ 00655367  0x000093ce beq  0x00000001 , 0x000a000b 
+ 00655368  0x000093cf beq  0x00000002 , 0x000a000e 
+ 00655369  0x000093d0 beq  0x00000003 , 0x000a0011 
+ 00655370  0x000093d1 branch  0x00002a8c 
+ 00655371  0x000093d4 jam  0x00000011 , 0x00004c59 
+ 00655372  0x000093d5 jam  0x000000aa , 0x0000119e 
+ 00655373  0x000093d6 branch  0x000a0013 
+ 00655374  0x000093d8 jam  0x00000012 , 0x00004c59 
+ 00655375  0x000093d9 jam  0x00000055 , 0x0000119e 
+ 00655376  0x000093da branch  0x000a0013 
+ 00655377  0x000093dc jam  0x00000013 , 0x00004c59 
+ 00655378  0x000093dd jam  0x00000022 , 0x0000119e 
+ 00655379  0x000093df fetch  0x00000001 , 0x00004c4a 
+ 00655380  0x000093e0 and_into  0x00000007 , 0x0000003f 
+ 00655381  0x000093e1 store  0x00000001 , 0x0000119f 
+ 00655382  0x000093e2 fetch  0x00000004 , 0x00004c80 
+ 00655383  0x000093e3 store  0x00000004 , 0x000011a0 
+ 00655384  0x000093e5 jam  0x00000000 , 0x000011a4 
+ 00655385  0x000093e6 arg  0x0000119e , 0x00000011 
+ 00655386  0x000093e7 arg  0x00000007 , 0x00000002 
+ 00655387  0x000093e8 call  0x000001f8 
+ 00655388  0x000093e9 call  0x00000173 
+ 00655389  0x000093ea branch  0x00007fe7 
+ 00655390  0x000093ed fetch  0x00000001 , 0x00004c59 
+ 00655391  0x000093ee rtneq  0x000000ff 
+ 00655392  0x000093ef beq  0x00000011 , 0x000a0024 
+ 00655393  0x000093f0 beq  0x00000012 , 0x000a0026 
+ 00655394  0x000093f1 beq  0x00000013 , 0x000a0028 
+ 00655395  0x000093f2 rtn 
+ 00655396  0x000093f5 jam  0x00000002 , 0x00004c59 
+ 00655397  0x000093f6 branch  0x000001a3 
+ 00655398  0x000093f8 jam  0x00000003 , 0x00004c59 
+ 00655399  0x000093f9 branch  0x000001a3 
+ 00655400  0x000093fb jam  0x000000ff , 0x00004c59 
+ 00655401  0x000093fc jam  0x00000039 , 0x00000a99 
+ 00655402  0x000093fd call  0x00007d86 
+ 00655403  0x000093fe fetch  0x00000004 , 0x00004c29 
+ 00655404  0x000093ff call  0x000001db 
+ 00655405  0x00009400 branch  0x000001a3 
+ 00720897  0x00009406 beq  0x000000a0 , 0x000b002b 
+ 00720898  0x00009407 beq  0x000000a1 , 0x000b0006 
+ 00720899  0x00009408 beq  0x000000a2 , 0x000b001b 
+ 00720900  0x00009409 beq  0x000000a3 , 0x000b0014 
+ 00720901  0x0000940a rtn 
+ 00720902  0x0000940d fetch  0x00000002 , 0x00004509 
+ 00720903  0x0000940e rtneq  0x00000000 
+ 00720904  0x0000940f fetch  0x00000001 , 0x00000441 
+ 00720905  0x00009410 rshift2  0x0000003f , 0x0000003f 
+ 00720906  0x00009411 sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00720907  0x00009412 branch  0x000b0012 , 0x00000002 
+ 00720908  0x00009413 setarg  0x00000009 
+ 00720909  0x00009414 store  0x00000002 , 0x00004496 
+ 00720910  0x00009415 store  0x00000002 , 0x00004498 
+ 00720911  0x00009416 call  0x0000042b 
+ 00720912  0x00009417 jam  0x00000001 , 0x000047c4 
+ 00720913  0x00009418 rtn 
+ 00720914  0x0000941b jam  0x00000001 , 0x00004b61 
+ 00720915  0x0000941c branch  0x000005d9 
+ 00720916  0x00009420 fetch  0x00000002 , 0x00004682 
+ 00720917  0x00009421 rtnbit1  0x0000000c 
+ 00720918  0x00009422 rtnbit1  0x00000006 
+ 00720919  0x00009423 rtnbit1  0x0000000b 
+ 00720920  0x00009424 fetch  0x00000004 , 0x000046d3 
+ 00720921  0x00009425 rtnbit1  0x00000005 
+ 00720922  0x00009426 branch  0x000033a7 
+ 00720923  0x00009429 jam  0x00000000 , 0x00004b6f 
+ 00720924  0x0000942a setarg  0x00000007 
+ 00720925  0x0000942b store  0x00000002 , 0x00004496 
+ 00720926  0x0000942c store  0x00000002 , 0x00004498 
+ 00720927  0x0000942d jam  0x00000000 , 0x000047c4 
+ 00720928  0x0000942e jam  0x00000000 , 0x0000479e 
+ 00720929  0x0000942f call  0x000003ac 
+ 00720930  0x00009430 call  0x00005816 
+ 00720931  0x00009431 call  0x000041d9 
+ 00720932  0x00009432 call  0x00000316 
+ 00720933  0x00009433 fetch  0x00000001 , 0x00004b6b 
+ 00720934  0x00009434 rtn  0x00000034 
+ 00720935  0x00009436 fetch  0x00000006 , 0x00004b62 
+ 00720936  0x00009437 store  0x00000006 , 0x000044a0 
+ 00720937  0x00009438 call  0x00000483 
+ 00720938  0x00009439 branch  0x00007df4 
+ 00720939  0x0000943c hfetch  0x00000004 , 0x00008138 
+ 00720940  0x0000943d set1  0x0000001a , 0x0000003f 
+ 00720941  0x0000943e hstore  0x00000004 , 0x0000804c 
+ 00720942  0x0000943f call  0x00002c21 
+ 00720943  0x00009440 call  0x000074bd 
+ 00720944  0x00009441 call  0x00004482 
+ 00720945  0x00009443 call  0x00000316 
+ 00720946  0x00009444 call  0x00003e9f 
+ 00720947  0x00009445 call  0x000000ec 
+ 00720948  0x00009447 call  0x0000034d 
+ 00720949  0x00009448 hfetch  0x00000001 , 0x00008081 
+ 00720950  0x00009449 and  0x0000003f , 0x000000f7 , 0x0000003f 
+ 00720951  0x0000944a hstore  0x00000001 , 0x00008081 
+ 00720952  0x0000944b hfetch  0x00000001 , 0x0000807f 
+ 00720953  0x0000944c set1  0x00000000 , 0x0000003f 
+ 00720954  0x0000944d hstore  0x00000001 , 0x0000807f 
+ 00720955  0x0000944e rtn 
+ 00786433  0x00009453 beq  0x000000b1 , 0x000c0006 
+ 00786434  0x00009454 beq  0x000000b2 , 0x000c000c 
+ 00786435  0x00009455 beq  0x000000b3 , 0x000c0011 
+ 00786436  0x00009456 beq  0x000000b4 , 0x000c0019 
+ 00786437  0x00009457 rtn 
+ 00786438  0x0000945a fetch  0x00000001 , 0x00004808 
+ 00786439  0x0000945b rtneq  0x00000002 
+ 00786440  0x0000945c increase  0x00000001 , 0x0000003f 
+ 00786441  0x0000945d store  0x00000001 , 0x00004808 
+ 00786442  0x0000945e jam  0x00000012 , 0x000041e3 
+ 00786443  0x0000945f branch  0x0000340e 
+ 00786444  0x00009462 fetch  0x00000001 , 0x00004808 
+ 00786445  0x00009463 rtnne  0x00000002 
+ 00786446  0x00009464 jam  0x00000000 , 0x00004808 
+ 00786447  0x00009465 jam  0x0000000e , 0x000041e3 
+ 00786448  0x00009466 branch  0x0000340e 
+ 00786449  0x00009469 fetch  0x00000001 , 0x000047a1 
+ 00786450  0x0000946a beq  0x00000001 , 0x000c0015 
+ 00786451  0x0000946b jam  0x00000014 , 0x000046c6 
+ 00786452  0x0000946c branch  0x000c0017 
+ 00786453  0x0000946e call  0x0000042b 
+ 00786454  0x0000946f jam  0x0000000a , 0x000046c6 
+ 00786455  0x00009471 arg  0x00000001 , 0x00000007 
+ 00786456  0x00009472 branch  0x000041b9 
+ 00786457  0x00009475 jam  0x00000000 , 0x00004aff 
+ 00786458  0x00009476 jam  0x00000000 , 0x00004b01 
+ 00786459  0x00009477 jam  0x00000000 , 0x00004b0a 
+ 00786460  0x00009478 call  0x00000316 
+ 00786461  0x00009479 branch  0x000041d9 
Index: XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.list
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.list	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.list	(working copy)
@@ -803,30936 +803,30933 @@
 0x02b6 001087 branch p_mouse_spi_init ,wake 
 :      001088 p_device_wake_from_power:
 0x02b7 001089 call p_wake_from_power 
-0x02b8 001090 call ice_break 
 :      001098 p_mouse_start:
-0x02b9 001100 fetch 1 ,mem_power_on_flag 
-0x02ba 001101 bbit1 2 ,p_mouse_wakeup_from_hibernate 
-0x02bb 001102 jam latest_mode_null ,mem_mouse_latest_mode 
-0x02bc 001103 branch p_mouse_start_24g_pair 
-:      001105 p_mouse_wakeup_from_hibernate:
-0x02bd 001106 call p_mouse_load_flash_device_info 
-0x02be 001107 fetch 1 ,mem_mouse_latest_mode 
-0x02bf 001108 beq latest_mode_bt ,p_mouse_check_reconn_target 
-0x02c0 001109 beq latest_mode_24g ,p_g24_start_24g_mode 
-0x02c1 001110 jam ble_poweron_reconn_timer ,mem_mouse_poweron_bt_start_reconn_timer 
-0x02c2 001111 rtn 
-:      001113 p_mouse_check_reconn_target:
-0x02c3 001114 jam 1 ,mem_24g_stop_g24_mode 
-0x02c4 001115 call p_mouse_tx_power_init 
-0x02c5 001116 fetch 1 ,mem_xrecord_mode 
-0x02c6 001117 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
-0x02c7 001118 beq rec_4_mode ,p_mouse4_0_check_reconn_target 
-0x02c8 001119 call p_mouse_fast_conn_adv_switch_timer_reinit 
-0x02c9 001120 jam 6 ,mem_connection_options 
-0x02ca 001121 call p_mouse_check_fast_conn_adv_start 
-0x02cb 001122 branch check_51cmd_start_discovery 
-:      001127 p_mouse_tx_power_init:
-0x02cc 001128 fetch 1 ,mem_tx_power_temp 
-0x02cd 001129 store 1 ,mem_tx_power 
-0x02ce 001130 rtn 
-:      001136 p_mouse3_0_check_reconn_target:
-0x02cf 001137 fetch 6 ,mem_hci_plap 
-0x02d0 001138 branch app_bt_start_discovery_short ,blank 
-0x02d1 001139 branch mouse3_0_check_reconn_target + 3 
-:      001141 p_mouse4_0_check_reconn_target:
-0x02d2 001142 jam zcode_12 ,mem_zcode_temp_param0 
-0x02d3 001143 branch p_zcode_entrance 
-:      001151 p_mouse_init_sunt:
-0x02d4 001152 call p_mouse_spi_init 
-0x02d5 001153 call mouse_spi_sdio_gpio_pollup 
-:      001154 p_mouse_init_sensor:
-0x02d6 001155 call mouse_read_sensor_id 
-0x02d7 001156 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-0x02d8 001157 beq p3065_id1 ,p_mouse_p3065_init_param 
-0x02d9 001158 call mouse_twspi_reset 
-0x02da 001159 nop 1000 
-0x02db 001160 branch p_mouse_init_sensor 
-:      001162 p_mouse_init_p32xx_id2_judge:
-0x02dc 001163 call p_mouse_sensor_poweron 
-0x02dd 001164 fetch 1 ,mem_sensor_id2 
-0x02de 001165 beq p_mx8650 ,p_mouse_mx8650_init_param 
-0x02df 001166 beq pka8_id2 ,p_mouse_ka8_init_param 
-0x02e0 001167 beq p8009_id2 ,p_mouse_8009_init_param 
-0x02e1 001168 branch mouse_init_p32xx_id2_judge 
-:      001170 p_mouse_mx8650_init_param:
-0x02e2 001171 jam mx8650 ,mem_config_sensor_type 
-0x02e3 001172 setarg 0x8006 
-0x02e4 001173 call twspi_write 
-0x02e5 001174 call delay_10ms 
-0x02e6 001175 arg mem_sensor_8650_init ,regc 
-:      001176 p_sensor_wr_seq:
-0x02e7 001177 ifetch 2 ,regc 
-0x02e8 001178 arg 0xffff ,temp 
-0x02e9 001179 isub temp ,null 
-0x02ea 001180 rtn zero 
-0x02eb 001181 call twspi_write 
-0x02ec 001182 nop 12000 
-0x02ed 001183 increase 2 ,regc 
-0x02ee 001184 branch p_sensor_wr_seq 
-:      001186 p_mouse_ka8_init_param:
-0x02ef 001187 jam ka8 ,mem_config_sensor_type 
-0x02f0 001188 arg mem_sensor_ka8_init ,regc 
-0x02f1 001189 branch p_sensor_wr_seq 
-:      001191 p_mouse_8009_init_param:
-0x02f2 001192 setarg 0x16 
-0x02f3 001193 call twspi_read 
-0x02f4 001194 sub pdata ,0xbd ,null 
-0x02f5 001195 nbranch p_mouse_init_sensor ,zero 
-0x02f6 001196 setarg 0x19 
-0x02f7 001197 call twspi_read 
-0x02f8 001198 sub pdata ,0x55 ,null 
-0x02f9 001199 nbranch p_mouse_init_sensor ,zero 
-0x02fa 001200 setarg 0x1b 
-0x02fb 001201 call twspi_read 
-0x02fc 001202 sub pdata ,0x1d ,null 
-0x02fd 001203 nbranch p_mouse_init_sensor ,zero 
-0x02fe 001204 jam p8009 ,mem_config_sensor_type 
-0x02ff 001205 arg mem_sensor_8009_init ,regc 
-0x0300 001206 branch p_sensor_wr_seq 
-:      001208 p_mouse_p3065_init_param:
-0x0301 001209 call p_mouse_sensor_poweron 
-0x0302 001210 fetch 1 ,mem_sensor_id2 
-0x0303 001211 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
-0x0304 001212 jam p3065 ,mem_config_sensor_type 
-0x0305 001213 rtn 
-:      001215 p_mouse_setting_config:
-0x0306 001216 jam zcode_80 ,mem_zcode_temp_param0 
-0x0307 001217 branch p_zcode_entrance 
-:      001220 p_flash_ncs_disable:
-0x0308 001221 fetcht 1 ,mem_flash_ncs_gpio 
-0x0309 001222 branch gpio_out_inactive 
-:      001224 p_spid_init_flash:
-0x030a 001225 jam 0x40 ,core_spid_ctrl 
-0x030b 001226 jam 0x0 ,core_spid_delay 
-0x030c 001227 hfetch 1 ,core_gpio_sel1 
-0x030d 001228 set0 0 ,pdata 
-0x030e 001229 set0 1 ,pdata 
-0x030f 001230 set1 3 ,pdata 
-0x0310 001231 set0 4 ,pdata 
-0x0311 001232 hstore 1 ,core_gpio_sel1 
-0x0312 001233 setarg 0 
-0x0313 001234 store 4 ,mem_spid_tbuf 
-0x0314 001235 hfetch 1 ,core_gpio_pd3 
-0x0315 001236 set0 0 ,pdata 
-0x0316 001237 hstore 1 ,core_gpio_pd3 
-0x0317 001238 rtn 
-:      001240 p_mouse_load_flash_info_check:
-0x0318 001241 call p_flash_release_deep_power_down 
-0x0319 001242 call mouse_load_flash_flag 
-0x031a 001243 fetch 2 ,mem_store_flag 
-0x031b 001244 arg eeprom_init_flag ,temp 
-0x031c 001245 isub temp ,null 
-0x031d 001246 branch p_mouse_load_flash_device_info ,zero 
-0x031e 001247 storet 2 ,mem_store_flag 
-0x031f 001248 call mouse_ble_init_address 
-0x0320 001249 fetch 1 ,mem_config_sensor_motion 
-0x0321 001250 store 1 ,mem_mouse_dpi 
-0x0322 001251 fetch 4 ,mem_mouse_24g_addr_init 
-0x0323 001252 store 4 ,mem_mouse_24g_addr 
-0x0324 001253 store 4 ,mem_24g_addr 
-:      001254 p_mouse_store_flash_device_info:
-0x0325 001255 call p_flash_release_deep_power_down 
-0x0326 001256 call p_flash_erase_sector 
-0x0327 001257 call p_mouse_information_flash_parameters 
-0x0328 001258 call p_spid_write_flash 
-0x0329 001259 call p_wait_flash_done 
-:      001261 p_mouse_store_flash_user_data:
-0x032a 001262 call p_spid_init_flash 
-0x032b 001263 arg 7 ,temp 
-0x032c 001264 arg mem_mouse_flash_start_temp ,rega 
-0x032d 001265 arg mouse_user_data_offect ,regb 
-0x032e 001266 fetch 3 ,mem_flash_base 
-0x032f 001267 iadd regb ,pdata 
-0x0330 001268 call p_spid_write_flash 
-0x0331 001269 call p_wait_flash_done 
-0x0332 001270 call p_flash_deep_power_down 
-:      001271 p_mouse_spi_init:
-0x0333 001272 jam 0x76 ,mem_spi_init_clk 
-0x0334 001273 branch mouse_spi_init 
-:      001275 p_flash_erase_sector:
-0x0335 001276 fetch 3 ,mem_flash_base 
-0x0336 001277 store 3 ,mem_spi_write_addr 
-0x0337 001278 call flash_erase_sector + 2 
-:      001279 p_wait_flash_done:
-0x0338 001280 setarg 100000 
-0x0339 001281 call sleep 
-0x033a 001282 call spid_unlock_flash 
-0x033b 001283 setarg mem_spid_rbuf 
-0x033c 001284 hstore 2 ,core_spid_rxaddr 
-0x033d 001285 setarg flash_read_satus 
-0x033e 001286 call spid_read_reg 
-0x033f 001287 bbit1 flash_status_wip ,p_wait_flash_done 
-0x0340 001288 rtn 
-:      001290 p_spid_write_flash:
-0x0341 001291 copy pdata ,regc 
-0x0342 001292 copy rega ,pdata 
-0x0343 001293 increase -4 ,pdata 
-0x0344 001294 copy pdata ,regb 
-0x0345 001295 ifetch 4 ,regb 
-0x0346 001296 store 4 ,mem_write_flash_head_temp 
-0x0347 001297 copy regc ,pdata 
-0x0348 001298 call spid_write_flash 
-0x0349 001299 fetch 4 ,mem_write_flash_head_temp 
-0x034a 001300 istore 4 ,regb 
-0x034b 001301 rtn 
-:      001303 p_mouse_information_flash_parameters:
-0x034c 001304 setarg mem_mouse_information_end 
-0x034d 001305 arg mem_mouse_information_start ,temp 
-0x034e 001306 isub temp ,temp 
-0x034f 001307 fetch 3 ,mem_flash_base 
-0x0350 001308 arg mem_mouse_information_start ,rega 
-0x0351 001309 rtn 
-:      001311 p_mouse_read_flash:
-0x0352 001312 call p_flash_release_deep_power_down 
-0x0353 001313 call p_mouse_information_flash_parameters 
-0x0354 001314 branch spid_read_flash 
-:      001316 p_mouse_load_flash_device_info:
-0x0355 001317 call p_mouse_read_flash 
-0x0356 001318 call p_mouse_load_flash_user_data 
-0x0357 001321 call mouse_select_btdevice 
-0x0358 001322 call mouse_select_reconn_device 
-0x0359 001323 fetch 4 ,mem_mouse_24g_addr 
-0x035a 001324 store 4 ,mem_24g_addr 
-0x035b 001325 rtn 
-:      001327 p_flash_deep_power_down:
-0x035c 001328 jam flash_command_deep_power_down ,mem_temp 
-:      001329 p_spid_write_flash_cmd:
-0x035d 001330 call p_spid_init_flash 
-0x035e 001331 call delay_nop100 
-0x035f 001332 call spid_unlock_flash 
-0x0360 001333 arg mem_write_flash_head_temp ,rega 
-0x0361 001334 fetcht 1 ,mem_temp 
-0x0362 001335 call spid_write_flash_common 
-0x0363 001336 branch delay_nop100 
-:      001338 p_flash_release_deep_power_down:
-0x0364 001339 jam flash_command_release_deep_power_down ,mem_temp 
-0x0365 001340 branch p_spid_write_flash_cmd 
-:      001342 p_mouse_fast_conn_disable:
-0x0366 001343 jam 0x5a ,mem_mouse_fast_conn_flag 
-0x0367 001344 rtn 
-:      001345 p_mouse_fast_conn_le_switch_adv:
-0x0368 001346 jam 1 ,mem_le_switch_adv_timer 
-0x0369 001347 jam 1 ,mem_le_switch_adv_flag 
-:      001348 p_mouse_fast_conn_init:
-0x036a 001349 jam 0xff ,mem_mouse_fast_conn_flag 
-0x036b 001350 fetch 6 ,mem_24g_allpowerful_addr 
-0x036c 001351 store 6 ,mem_le_lap 
-0x036d 001352 rtn 
-:      001355 p_mouse_load_flash_user_data:
-0x036e 001356 call p_flash_release_deep_power_down 
-0x036f 001357 arg 7 ,temp 
-0x0370 001358 arg mem_mouse_flash_start_temp ,rega 
-0x0371 001359 arg mouse_user_data_offect ,regb 
-0x0372 001360 fetch 3 ,mem_flash_base 
-0x0373 001361 iadd regb ,pdata 
-0x0374 001362 branch spid_read_flash 
-:      001392 p_mouse_start_24g_mode:
-0x0375 001395 fetch 1 ,mem_power_on_flag 
-0x0376 001396 bbit1 2 ,p_g24_start_24g_mode 
-:      001397 p_mouse_start_24g_pair:
-0x0377 001398 fetch 4 ,mem_mouse_24g_addr_init 
-0x0378 001399 store 4 ,mem_24g_addr 
-0x0379 001400 call p_mouse_store_flash_device_info 
-:      001401 p_g24_auto_pair_start:
-0x037a 001402 jam zcode_41 ,mem_zcode_temp_param0 
-0x037b 001403 branch p_zcode_entrance 
-:      001405 p_mouse_g24_package_data:
-0x037c 001406 call mouse_g24_package_data 
-0x037d 001407 fetch 2 ,mem_mouse_z 
-0x037e 001408 rtn blank 
-:      001409 p_g24_transmit_by_interrupt_enable:
-0x037f 001410 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
-0x0380 001411 setarg 0 
-0x0381 001412 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0x0382 001413 rtn 
-:      001415 p_mouse_le_txbuff_save:
-0x0383 001416 arg mem_le_tx_buffer0 ,contr 
-0x0384 001417 arg mem_le_tx_buffer0_omemalloc ,contw 
-0x0385 001418 call p_mouse_le_txbuff_copy 
-0x0386 001419 arg mem_le_tx_buffer1 ,contr 
-0x0387 001420 call p_mouse_le_txbuff_copy 
-0x0388 001421 arg mem_le_tx_buffer2 ,contr 
-0x0389 001422 call p_mouse_le_txbuff_copy 
-0x038a 001423 arg mem_le_tx_buffer3 ,contr 
-:      001424 p_mouse_le_txbuff_copy:
-0x038b 001425 arg 27 ,loopcnt 
-0x038c 001426 branch memcpy 
-:      001428 p_mouse_le_txbuff_load:
-0x038d 001429 arg mem_le_tx_buffer0_omemalloc ,contr 
-0x038e 001430 arg mem_le_tx_buffer0 ,contw 
-0x038f 001431 call p_mouse_le_txbuff_copy 
-0x0390 001432 arg mem_le_tx_buffer1 ,contw 
-0x0391 001433 call p_mouse_le_txbuff_copy 
-0x0392 001434 arg mem_le_tx_buffer2 ,contw 
-0x0393 001435 call p_mouse_le_txbuff_copy 
-0x0394 001436 arg mem_le_tx_buffer3 ,contw 
-0x0395 001437 branch p_mouse_le_txbuff_copy 
-:      001440 p_mouse_le_current_mult_update:
-0x0396 001441 jam 0 ,mem_lpm_mult 
-0x0397 001442 jam 30 ,mem_mouse_le_current_mult_timer 
-0x0398 001443 rtn 
-:      001445 p_mouse_data_xy_release:
-0x0399 001446 fetch 1 ,mem_mouse_long_mult_flag 
-0x039a 001447 rtnne 1 
-0x039b 001448 setarg 0 
-0x039c 001449 store 1 ,mem_mouse_long_mult_flag 
-0x039d 001450 store 4 ,mem_mouse_x 
-0x039e 001451 branch p_mouse_init_sensor_reset 
-:      001453 p_mouse_sensor_poweron:
-0x039f 001454 call p_mouse_spi_init 
-0x03a0 001455 arg mem_sensor_poweron_init ,regc 
-0x03a1 001456 call p_sensor_wr_seq 
-:      001457 p_mouse_dpi_config:
-0x03a2 001458 fetch 1 ,mem_mouse_dpi 
-0x03a3 001459 bne 0xff ,p_mouse_seting_dpi 
-:      001460 p_mouse_dpi_config_default:
-0x03a4 001461 fetch 1 ,mem_config_sensor_motion 
-0x03a5 001462 store 1 ,mem_mouse_dpi 
-0x03a6 001463 branch p_mouse_seting_dpi 
-:      001465 p_mouse_le:
-0x03a7 001466 call le_fifo_check_nearly_full 
-0x03a8 001467 nrtn blank 
-0x03a9 001468 fetch 1 ,mem_mouse_fast_conn_flag 
-0x03aa 001469 beq 0xff ,p_mouse_le_next 
-0x03ab 001470 fetch 1 ,mem_le_connect_status_flag 
-0x03ac 001471 and pdata ,0x03 ,pdata 
-0x03ad 001472 rtnne 0x03 
-:      001473 p_mouse_le_next:
-0x03ae 001474 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-0x03af 001475 call p_mouse_clear_sensor_data ,blank 
-0x03b0 001476 fetch mouse_flag_len ,mem_mouse_flag 
-0x03b1 001477 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-0x03b2 001478 call mouse_motion 
-0x03b3 001479 nrtn user 
-0x03b4 001480 call p_mouse_le_current_mult_update 
-0x03b5 001481 call p_mouse_data_xy_release 
-0x03b6 001482 call p_mouse_wheel_trigger 
-:      001483 p_mouse_data_push:
-0x03b7 001484 arg mem_mouse_key ,rega 
-0x03b8 001485 call queue_push 
-0x03b9 001486 call p_mouse_queue_increase ,user 
-0x03ba 001488 rtn 
-:      001490 p_mouse_data_init:
-0x03bb 001491 jam 7 ,mem_mouse_data_queue 
-0x03bc 001492 jam 4 ,mem_mouse_data_queue + 1 
-0x03bd 001493 setarg mem_mouse_data_queue 
-0x03be 001494 store 2 ,mem_queue_ptr 
-0x03bf 001495 branch queue_init 
-:      001497 p_mouse_queue_increase:
-0x03c0 001498 fetch 1 ,mem_mouse_data_queue_num 
-0x03c1 001499 increase 1 ,pdata 
-0x03c2 001500 store 1 ,mem_mouse_data_queue_num 
-0x03c3 001501 rtn 
-:      001503 p_mouse_data_pull:
-0x03c4 001504 arg mem_mouse_key ,rega 
-0x03c5 001505 call queue_pop 
-0x03c6 001506 branch p_mouse_fill_data_le ,user 
-0x03c7 001507 rtn 
-:      001509 p_mouse_fill_data_le:
-0x03c8 001510 call le_clear_md 
-0x03c9 001511 fetch 1 ,mem_mouse_data_queue_num 
-0x03ca 001512 sub pdata ,1 ,null 
-0x03cb 001513 ncall le_set_md ,positive 
-0x03cc 001514 fetch 1 ,mem_mouse_data_queue_num 
-0x03cd 001515 rtn blank 
-0x03ce 001516 increase -1 ,pdata 
-0x03cf 001517 store 1 ,mem_mouse_data_queue_num 
-0x03d0 001518 branch mouse_fill_data_le 
-:      001521 p_mouse_wheel_trigger:
-0x03d1 001522 fetch 2 ,mem_mouse_z 
-0x03d2 001523 rtn blank 
-0x03d3 001524 jam 1 ,mem_mouse_wheel_trigger 
-0x03d4 001525 jam 10 ,mem_mouse_wheel_trigger_timer 
-0x03d5 001526 rtn 
-:      001528 p_mouse_clear_sensor_data:
-0x03d6 001529 jam 1 ,mem_mouse_clear_sensor_data_flag 
-0x03d7 001530 call le_set_config_more_data 
-:      001531 p_mouse_init_sensor_reset:
-0x03d8 001532 jam 1 ,mem_mouse_init_sensor_reset_flag 
-0x03d9 001533 branch p_mouse_init_sunt 
-:      001535 p_mouse_bt:
-0x03da 001536 rtn attempt 
-0x03db 001537 fetch 1 ,mem_app_handshake_flag 
-0x03dc 001538 rtn blank 
-0x03dd 001539 call l2cap_malloc_is_fifo_nearly_full 
-0x03de 001540 nrtn blank 
-0x03df 001541 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-0x03e0 001542 call p_mouse_clear_sensor_data ,blank 
-0x03e1 001543 fetch mouse_flag_len ,mem_mouse_flag 
-0x03e2 001544 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
-0x03e3 001545 bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
-0x03e4 001546 call mouse_motion 
-0x03e5 001547 nrtn user 
-0x03e6 001548 call p_mouse_le_current_mult_update 
-0x03e7 001549 call p_mouse_data_xy_release 
-0x03e8 001550 call p_mouse_wheel_trigger 
-0x03e9 001551 fetch 1 ,mem_mouse_bt_boot_mode 
-0x03ea 001552 beq 1 ,p_mouse_send_data_boot_mode 
-0x03eb 001553 fetch 1 ,mem_mouse_bt_send_first_package_flag 
-0x03ec 001554 rtn blank 
-0x03ed 001555 branch mouse_send_data 
-:      001557 p_mouse_send_data_boot_mode:
-0x03ee 001558 fetch 1 ,mem_mouse_key 
-0x03ef 001559 store 1 ,mem_mouse_bt_boot_data 
-0x03f0 001560 fetch 1 ,mem_mouse_x 
-0x03f1 001561 istore 1 ,contw 
-0x03f2 001562 fetch 1 ,mem_mouse_y 
-0x03f3 001563 istore 1 ,contw 
-0x03f4 001564 fetch 2 ,mem_mouse_z 
-0x03f5 001565 istore 2 ,contw 
-0x03f6 001567 arg 7 ,rega 
-0x03f7 001568 call hid_malloc_tx_buff 
-0x03f8 001569 fetch 2 ,mem_hid_int_remote_cid 
-0x03f9 001570 istore 2 ,contw 
-0x03fa 001571 setarg 0x02a1 
-0x03fb 001572 istore 2 ,contw 
-0x03fc 001573 fetch 5 ,mem_mouse_bt_boot_data 
-0x03fd 001574 istore 5 ,contw 
-0x03fe 001575 rtn 
-:      001578 p_mouse_idle:
-0x03ff 001579 call ui_check_paring_button 
-0x0400 001580 call p_mouse_dpi_check 
-0x0401 001581 branch mouse_wheel_check 
-:      001583 p_mouse_dpi_check:
-0x0402 001584 fetcht 1 ,mem_dpi_button_gpio 
-0x0403 001585 call p_gpio_set_input_pd 
-0x0404 001586 fetcht 1 ,mem_dpi_button_gpio 
-0x0405 001587 call gpio_get_bit 
-0x0406 001588 branch p_mouse_dpi_up ,true 
-0x0407 001589 call p_gpio_set_input_pu 
-:      001590 p_mouse_dpi_down:
-0x0408 001591 fetch 1 ,mem_mouse_dpi_button_state 
-0x0409 001592 rtneq dpi_button_state_down 
-0x040a 001593 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
-0x040b 001594 fetch 1 ,mem_mouse_dpi 
-0x040c 001595 increase 1 ,pdata 
-0x040d 001596 and pdata ,0x03 ,pdata 
-0x040e 001597 store 1 ,mem_mouse_dpi 
-0x040f 001601 branch mouse_seting_dpi 
-:      001602 p_mouse_dpi_up:
-0x0410 001603 call p_gpio_set_input_pu 
-0x0411 001604 branch mouse_dpi_up 
-:      001606 p_mouse_priority_bb_event:
-0x0412 001607 copy regc ,pdata 
-0x0413 001608 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-0x0414 001609 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-0x0415 001610 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
-0x0416 001611 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-0x0417 001612 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-0x0418 001613 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
-0x0419 001614 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
-0x041a 001615 beq bt_evt_switch_not_accept ,app_bt_role_switch 
-0x041b 001616 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
-0x041c 001617 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
-0x041d 001618 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
-0x041e 001619 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
-0x041f 001620 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-0x0420 001621 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-0x0421 001622 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-0x0422 001623 branch mouse_priority_bb_event + 1 
-:      001625 p_mouse_le_bb_event_connected:
-0x0423 001626 call p_mouse_init_sensor_reset 
-0x0424 001627 call mouse_le_bb_event_connected 
-0x0425 001628 setarg 0 
-0x0426 001629 store 3 ,mem_le_switch_adv_flag 
-0x0427 001630 fetch 6 ,mem_mouse_24g_addr_init 
-0x0428 001631 fetcht 6 ,mem_device1_addr 
-0x0429 001632 isub temp ,null 
-0x042a 001633 ncall p_mouse_fast_conn_disable ,zero 
-0x042b 001634 call app_ble_store_reconn_info 
-0x042c 001635 jam latest_mode_bt ,mem_mouse_latest_mode 
-0x042d 001636 fetch 1 ,mem_mouse_le_reconnect_flag 
-0x042e 001637 nbranch p_mouse_le_bb_event_connected_next ,blank 
-0x042f 001638 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
-:      001639 p_mouse_le_bb_event_connected_next:
-0x0430 001640 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
-0x0431 001641 jam 0 ,mem_mouse_le_adv_start 
-0x0432 001642 jam 1 ,mem_mouse_le_bb_connected_flag 
-0x0433 001643 jam 0 ,mem_mouse_le_not_tx_disconn 
-0x0434 001644 jam 0 ,mem_mouse_start_discovery_enable 
-0x0435 001645 call p_g24_check_51cmd_stop_24g 
-0x0436 001646 branch p_mouse_data_init 
-:      001649 p_mouse_le_bb_disconnected:
-0x0437 001650 call p_mouse_sensor_powerdown_check 
-0x0438 001651 jam zcode_a2 ,mem_zcode_temp_param0 
-0x0439 001652 branch p_zcode_entrance 
-:      001654 p_mouse_le_enc_info:
-:      001655 p_app_updata_le_param:
-0x043a 001656 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x043b 001657 branch ui_ipc_send_cmd 
-:      001659 p_mouse_le_ll_start_encryt:
-0x043c 001660 jam zcode_b3 ,mem_zcode_temp_param0 
-0x043d 001661 branch p_zcode_entrance 
-:      001663 p_mouse_le_conn_param_update_rsp_recieved:
-0x043e 001664 jam zcode_a1 ,mem_zcode_temp_param0 
-0x043f 001665 branch p_zcode_entrance 
-:      001668 p_mouse_bb_event_reconn_timeout:
-:      001669 p_mouse_bb_event_reconn_failed:
-0x0440 001670 jam zcode_a3 ,mem_zcode_temp_param0 
-0x0441 001671 branch p_zcode_entrance 
-:      001673 p_mouse_irtual_cable_unplug:
-0x0442 001674 jam zcode_70 ,mem_zcode_temp_param0 
-0x0443 001675 branch p_zcode_entrance 
-:      001677 p_mouse_sniff_not_accept:
-0x0444 001678 jam zcode_b1 ,mem_zcode_temp_param0 
-0x0445 001679 branch p_zcode_entrance 
-:      001681 p_mouse_bb_event_connected:
-0x0446 001682 call p_mouse_store_eeprom_enable 
-0x0447 001683 call p_mouse_init_sensor_reset 
-0x0448 001684 setarg 0 
-0x0449 001685 store 3 ,mem_le_switch_adv_flag 
-0x044a 001686 jam latest_mode_bt ,mem_mouse_latest_mode 
-0x044b 001687 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
-0x044c 001688 jam 0 ,mem_mouse_le_not_tx_disconn 
-0x044d 001689 jam 0 ,mem_mouse_start_discovery_enable 
-0x044e 001690 call p_g24_check_51cmd_stop_24g 
-0x044f 001691 call p_mouse_null_enter_hibernate_disable 
-0x0450 001692 jam 0 ,mem_mouse_send_switch_req_timer 
-0x0451 001693 branch mouse_stop_discovery 
-:      001696 p_mouse_bb_event_disconnected:
-0x0452 001697 call p_mouse_sensor_powerdown_check 
-0x0453 001698 jam zcode_b4 ,mem_zcode_temp_param0 
-0x0454 001699 branch p_zcode_entrance 
-:      001701 p_mouse_enter_sniff_check:
-0x0455 001702 jam zcode_b2 ,mem_zcode_temp_param0 
-0x0456 001703 branch p_zcode_entrance 
-:      001705 p_mouse_24g_pairing_complete:
-0x0457 001706 call p_g24_transmit_by_interrupt_enable 
-0x0458 001707 call p_mouse_init_sensor_reset 
-0x0459 001708 jam zcode_50 ,mem_zcode_temp_param0 
-0x045a 001709 branch p_zcode_entrance 
-:      001711 p_mouse_24g_attempt_fail:
-0x045b 001712 call p_mouse_sensor_powerdown_check 
-0x045c 001713 jam zcode_51 ,mem_zcode_temp_param0 
-0x045d 001714 branch p_zcode_entrance 
-:      001717 p_mouse_24g_attempt_success:
-0x045e 001718 call p_mouse_init_sensor_reset 
-0x045f 001719 jam zcode_52 ,mem_zcode_temp_param0 
-0x0460 001720 branch p_zcode_entrance 
-:      001722 p_mouse_before_hibernate:
-0x0461 001723 call p_mouse_sensor_powerdown_check 
-0x0462 001724 jam zcode_a0 ,mem_zcode_temp_param0 
-0x0463 001725 branch p_zcode_entrance 
-:      001727 p_mouse_sensor_powerdown_check:
-0x0464 001728 fetch 1 ,mem_mouse_init_sensor_reset_flag 
-0x0465 001729 rtn blank 
-0x0466 001730 jam 0 ,mem_mouse_init_sensor_reset_flag 
-:      001731 p_mouse_sensor_powerdown:
-0x0467 001732 call p_mouse_init_sunt 
-0x0468 001733 setarg 0x06 
-0x0469 001734 call twspi_read 
-0x046a 001735 or pdata ,0x08 ,pdata 
-0x046b 001736 lshift8 pdata ,pdata 
-0x046c 001737 add pdata ,0x06 ,pdata 
-0x046d 001738 branch twspi_write 
-:      001741 p_mouse_bb_event_timer:
-0x046e 001742 call p_mouse_le_switch_adv_timer 
-0x046f 001743 call p_mouse_multi_led_blink_timer 
-0x0470 001744 call p_mouse_wheel_trigger_timer 
-0x0471 001745 call p_mouse_null_enter_hibernate_timer 
-0x0472 001746 call p_mouse_bt_discovery_check 
-0x0473 001747 call mouse_check_discovery_timeout_timer 
-0x0474 001749 call p_mouse_g24_long_sleep_param_update_timer 
-0x0475 001750 call p_mouse_g24_stop_mode_timeout_timer 
-0x0476 001751 call p_mouse_check_direct_timeout_timer 
-0x0477 001752 call p_mouse_le_enable_att_list_timer 
-0x0478 001753 call p_le_send_smp_security_request_timer 
-0x0479 001754 call p_mouse_le_current_mult_update_timer 
-0x047a 001755 call p_mouse_send_switch_req_timer 
-0x047b 001756 call mouse_check_hid_handshake_timer 
-0x047c 001757 call p_mouse_bt_check_sniff_req_timeout_timer 
-0x047d 001758 call p_mouse_poweron_bt_start_reconn_timer 
-0x047e 001759 branch mouse_check_no_data_timeout_timer 
-:      001761 p_mouse_poweron_bt_start_reconn_timer:
-0x047f 001762 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
-0x0480 001763 arg p_mouse_check_reconn_target ,regb 
-0x0481 001764 branch timer_single_step 
-:      001781 p_mouse_le_switch_adv_timer:
-0x0482 001782 fetch 1 ,mem_le_switch_adv_flag 
-0x0483 001783 rtn blank 
-0x0484 001784 arg mem_le_switch_adv_timer ,regc 
-0x0485 001785 arg p_mouse_le_switch_adv ,regb 
-0x0486 001786 branch timer_single_step 
-:      001787 p_mouse_le_switch_adv:
-0x0487 001788 jam 1 ,mem_le_switch_adv_timer 
-0x0488 001789 fetch 1 ,mem_le_switch_adv_count 
-0x0489 001790 increase 1 ,pdata 
-0x048a 001791 and_into 1 ,pdata 
-0x048b 001792 store 1 ,mem_le_switch_adv_count 
-0x048c 001793 beq 0 ,p_mouse_check_fast_conn_adv_start1 
-:      001794 p_check_51cmd_adv:
-0x048d 001795 fetch 6 ,mem_le_normal_lap 
-0x048e 001796 store 6 ,mem_le_lap 
-0x048f 001797 call p_mouse_le_adv_data_update 
-0x0490 001798 branch check_51cmd_adv 
-:      001800 p_mouse_le_adv_data_update:
-0x0491 001801 jam 0x1f ,mem_le_adv_data_len 
-0x0492 001802 jam 0x1f ,mem_le_scan_data_len 
-0x0493 001803 call p_mouse_store_eeprom_enable 
-0x0494 001804 arg mem_le_adv_swift_pair ,contr 
-:      001805 p_le_adv_data_update:
-0x0495 001806 arg mem_le_adv_data + 11 ,contw 
-0x0496 001807 arg 19 ,loopcnt 
-0x0497 001808 call memcpy 
-0x0498 001809 branch le_modified_name_adv 
-:      001811 p_mouse_store_eeprom_enable:
-0x0499 001812 arg mouse_store_eeprom_flag ,queue 
-0x049a 001813 branch mouse_enable_function_flag 
-:      001815 p_mouse_check_fast_conn_adv_start:
-:      001816 p_mouse_check_fast_conn_adv_start1:
-0x049b 001817 jam 0 ,mem_le_adv_data_len 
-0x049c 001818 jam 0 ,mem_le_scan_data_len 
-0x049d 001819 arg mouse_store_eeprom_flag ,queue 
-0x049e 001820 call mouse_disable_function_flag 
-0x049f 001821 branch p_mouse_fast_conn_init 
-:      001824 p_mouse_g24_long_sleep_param_update_timer:
-0x04a0 001825 arg mem_24g_long_sleep_param_update_timer ,regc 
-0x04a1 001826 arg p_mouse_g24_long_sleep_normal_param ,regb 
-0x04a2 001827 branch timer_single_step 
-:      001828 p_mouse_g24_long_sleep_normal_param:
-0x04a3 001829 setarg g24_long_sleep_step3 
-0x04a4 001830 store 3 ,mem_24g_enter_hibernate 
-:      001831 p_mouse_long_mult_flag_enable:
-0x04a5 001832 jam 1 ,mem_mouse_long_mult_flag 
-0x04a6 001833 rtn 
-:      001835 p_mouse_g24_stop_mode_timeout_timer:
-0x04a7 001836 arg mem_24g_stop_g24_mode_timeout ,regc 
-0x04a8 001837 arg p_mouse_g24_stop_mode_timeout ,regb 
-0x04a9 001838 branch timer_single_step_2b 
-:      001839 p_mouse_g24_stop_mode_timeout:
-0x04aa 001840 jam 1 ,mem_24g_stop_g24_mode 
-0x04ab 001841 fetch 1 ,mem_le_switch_adv_flag 
-0x04ac 001842 nbranch p_mouse_wait_g24_led_off ,blank 
-0x04ad 001846 rtn 
-:      001848 p_mouse_wait_g24_led_off:
-0x04ae 001849 jam 1 ,mem_24g_stop_g24_mode_timeout 
-0x04af 001850 fetch 1 ,mem_mouse_multi_led_blink_poweron3s_flag 
-0x04b0 001851 nrtn blank 
-0x04b1 001852 jam 0 ,mem_24g_stop_g24_mode_timeout 
-0x04b2 001854 rtn 
-:      001857 p_mouse_send_switch_req_timer:
-0x04b3 001858 arg mem_mouse_send_switch_req_timer ,regc 
-0x04b4 001859 arg host_create_conn_resend ,regb 
-0x04b5 001860 branch timer_single_step 
-:      001862 p_mouse_bt_check_sniff_req_timeout_timer:
-0x04b6 001863 arg mem_mouse_bt_send_first_package_timer ,regc 
-0x04b7 001864 arg p_mouse_bt_send_first_package ,regb 
-0x04b8 001865 branch timer_single_step 
-:      001866 p_mouse_bt_send_first_package:
-0x04b9 001867 jam 1 ,mem_mouse_bt_send_first_package_flag 
-0x04ba 001868 rtn 
-:      001871 p_mouse_check_direct_timeout_timer:
-0x04bb 001872 arg mem_mouse_direct_timer ,regc 
-0x04bc 001873 arg p_mouse_check_direct_timeout ,regb 
-0x04bd 001874 branch timer_single_step_2b 
-:      001875 p_mouse_check_direct_timeout:
-0x04be 001876 jam 1 ,mem_mouse_le_not_tx_disconn 
-0x04bf 001877 call p_mouse_long_button_bt_normal_discovery 
-0x04c0 001878 branch p_mouse_bt_discovery_button_up_init 
-:      001880 p_mouse_le_enable_att_list_timer:
-0x04c1 001881 arg mem_le_start_encrypt_timer ,regc 
-0x04c2 001882 arg mouse_le_write_enable ,regb 
-0x04c3 001883 branch timer_single_step 
-:      001885 p_le_send_smp_security_request_timer:
-0x04c4 001886 fetch 1 ,mem_mouse_le_bb_connected_flag 
-0x04c5 001887 rtn blank 
-0x04c6 001888 arg mem_mouse_send_secutiry_request_timer ,regc 
-0x04c7 001889 arg p_le_pairing_sm_start_check ,regb 
-0x04c8 001890 branch timer_single_step 
-:      001891 p_le_pairing_sm_start_check:
-0x04c9 001892 fetch 1 ,mem_le_send_security_request_flag 
-0x04ca 001893 nrtn blank 
-0x04cb 001894 branch le_pairing_sm_start 
-:      001896 p_mouse_le_current_mult_update_timer:
-0x04cc 001897 arg mem_mouse_le_current_mult_timer ,regc 
-0x04cd 001898 arg p_mouse_le_current_mult_reinit ,regb 
-0x04ce 001899 branch timer_single_step 
-:      001900 p_mouse_le_current_mult_reinit:
-0x04cf 001901 fetch 1 ,mem_lpm_mult_init 
-0x04d0 001902 store 1 ,mem_lpm_mult 
-0x04d1 001903 branch p_mouse_long_mult_flag_enable 
-:      001905 p_mouse_wheel_trigger_timer:
-0x04d2 001906 arg mem_mouse_wheel_trigger_timer ,regc 
-0x04d3 001907 arg p_mouse_wheel_trigger_disable ,regb 
-0x04d4 001908 branch timer_single_step 
-:      001909 p_mouse_wheel_trigger_disable:
-0x04d5 001910 jam 0 ,mem_mouse_wheel_trigger 
-0x04d6 001911 rtn 
-:      001913 p_mouse_bt_discovery_check:
-:      001914 p_mouse_bt_discovery_commbination_key:
-0x04d7 001915 fetch 1 ,mem_mouse_dpi_button_state 
-0x04d8 001916 branch p_mouse_bt_discovery_commbination_key_down ,blank 
-0x04d9 001917 call p_mouse_check_key_gpio 
-0x04da 001918 beq mouse_lmr_button ,p_mouse_bt_discovery_commbination_key_down 
-:      001919 p_mouse_bt_discovery_commbination_key_up:
-0x04db 001920 fetch 1 ,mem_ui_button_timeout 
-0x04dc 001921 store 1 ,mem_combination_ui_button_count 
-0x04dd 001922 fetch 1 ,mem_bt_discovey_button_statue 
-0x04de 001923 rtneq dpi_button_state_up 
-0x04df 001924 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
-:      001925 p_mouse_bt_discovery_button_up_init:
-0x04e0 001926 arg mouse_bt_discovery_button_long_down_flag ,queue 
-0x04e1 001927 call mouse_disable_function_flag 
-0x04e2 001928 branch mouse_bt_discovery_button_down_disable 
-:      001929 p_mouse_bt_discovery_commbination_key_down:
-0x04e3 001930 jam 40 ,mem_mouse_null_enter_hibernate_timer 
-0x04e4 001931 call p_mouse_bt_discovery_timer 
-0x04e5 001932 branch mouse_bt_discovery_commbination_key_down + 1 
-:      001934 p_mouse_bt_discovery_timer:
-0x04e6 001935 arg mem_combination_ui_button_count ,regc 
-0x04e7 001936 arg p_mouse_long_button_bt_discovery ,regb 
-0x04e8 001937 branch timer_single_step 
-:      001938 p_mouse_long_button_bt_discovery:
-0x04e9 001939 fetch 1 ,mem_le_switch_adv_flag 
-0x04ea 001940 nbranch p_mouse_fast_conn_adv_switch_timer_reinit ,blank 
-:      001941 p_mouse_long_button_bt_normal_discovery:
-0x04eb 001942 isolate1 mark_24g ,mark 
-0x04ec 001943 call p_mouse_le_adv_start ,true 
-0x04ed 001944 fetch 1 ,mem_mouse_latest_mode 
-0x04ee 001945 sub pdata ,latest_mode_null ,null 
-0x04ef 001946 call p_mouse_le_adv_start ,zero 
-0x04f0 001948 call p_mouse_le_adv_data_update 
-0x04f1 001949 fetch 2 ,mem_ui_state_map 
-0x04f2 001950 isolate1 ui_state_bt_reconnect ,pdata 
-0x04f3 001951 call mouse_cancel_reconnect ,true 
-0x04f4 001952 arg mouse_bt_discovery_button_long_down_flag ,queue 
-0x04f5 001953 call mouse_enable_function_flag 
-0x04f6 001954 branch mouse_long_button_bt_discovry 
-:      001956 p_mouse_le_adv_start:
-0x04f7 001957 jam 1 ,mem_mouse_le_adv_start 
-0x04f8 001958 rtn 
-:      001960 p_mouse_fast_conn_adv_switch_timer_reinit:
-0x04f9 001961 fetch 2 ,mem_discovery_timeout 
-0x04fa 001962 store 2 ,mem_mouse_discovery_timer 
-0x04fb 001963 rtn 
-:      001965 p_mouse_null_enter_hibernate_timer:
-0x04fc 001966 fetch 1 ,mem_mouse_null_enter_hibernate_flag 
-0x04fd 001967 rtn blank 
-0x04fe 001968 arg mem_mouse_null_enter_hibernate_timer ,regc 
-0x04ff 001969 arg p_mouse_null_enter_hibernate ,regb 
-0x0500 001970 branch timer_single_step 
-:      001971 p_mouse_null_enter_hibernate:
-0x0501 001972 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-0x0502 001973 branch app_enter_hibernate 
-:      001975 p_mouse_null_enter_hibernate_disable:
-0x0503 001976 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-0x0504 001977 jam 0 ,mem_mouse_null_enter_hibernate_timer 
-0x0505 001978 rtn 
-:      002088 p_mouse_multi_led_blink_timer:
-0x0506 002089 fetch 1 ,mem_mouse_discovery_timer 
-0x0507 002090 rtn blank 
-0x0508 002091 bbit1 2 ,p_mouse_multi_led_on 
-0x0509 002092 branch p_mouse_multi_led_off 
-:      002095 p_mouse_multi_led_on:
-0x050a 002096 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x050b 002097 call gpio_config_output 
-0x050c 002098 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x050d 002099 branch gpio_out_inactive 
-:      002101 p_mouse_multi_led_off:
-0x050e 002102 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x050f 002103 call gpio_config_output 
-0x0510 002104 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x0511 002105 branch gpio_out_active 
-:      002108 p_mouse_seting_dpi:
-:      002109 p_mouse_seting_sensor_type:
-:      002117 p_mouse_seting_320x_dpi:
-0x0512 002118 fetch 1 ,mem_mouse_dpi 
-0x0513 002119 sub pdata ,mouse_dpi_level2 ,null 
-0x0514 002120 call p_mouse_320x_dpi_recount ,zero 
-0x0515 002121 fetch 1 ,mem_mouse_dpi 
-0x0516 002122 beq mouse_dpi_level1 ,p_mouse_set_cpi1 
-0x0517 002123 beq mouse_dpi_level4 ,p_mouse_set_cpi4 
-:      002124 p_mouse_set_cpi3:
-0x0518 002125 fetch 1 ,mem_config_sensor_type 
-0x0519 002127 beq p3065_xy ,p_mouse_3065xy_set_cpi3 
-0x051a 002128 beq mx8650 ,p_mouse_3065xy_set_cpi3 
-0x051b 002129 beq ka8 ,p_mouse_ka8_set_cpi3 
-:      002130 p_mouse_320x_set_cpi3:
-0x051c 002131 fetch 1 ,mem_320x_dpi_3 
-:      002132 p_mouse_dpi_store:
-0x051d 002133 store 1 ,mem_mouse_cpi_count 
-0x051e 002134 branch mouse_p3205_dpi + 3 
-:      002135 p_mouse_320x_dpi_recount:
-0x051f 002136 jam mouse_dpi_level3 ,mem_mouse_dpi 
-0x0520 002137 rtn 
-:      002139 p_mouse_set_cpi1:
-0x0521 002140 fetch 1 ,mem_config_sensor_type 
-0x0522 002142 beq p3065_xy ,p_mouse_3065xy_set_cpi1 
-0x0523 002143 beq mx8650 ,p_mouse_3065xy_set_cpi1 
-0x0524 002144 beq ka8 ,p_mouse_ka8_set_cpi1 
-:      002145 p_mouse_320x_set_cpi1:
-0x0525 002146 fetch 1 ,mem_320x_dpi_1 
-0x0526 002147 branch p_mouse_dpi_store 
-:      002149 p_mouse_set_cpi4:
-0x0527 002150 fetch 1 ,mem_config_sensor_type 
-0x0528 002152 beq p3065_xy ,p_mouse_3065xy_set_cpi4 
-0x0529 002153 beq mx8650 ,p_mouse_3065xy_set_cpi4 
-0x052a 002154 beq ka8 ,p_mouse_ka8_set_cpi4 
-:      002155 p_mouse_320x_set_cpi4:
-0x052b 002156 fetch 1 ,mem_320x_dpi_4 
-0x052c 002157 branch p_mouse_dpi_store 
-:      002159 p_mouse_3065xy_set_cpi3:
-0x052d 002160 fetch 1 ,mem_3065xy_dpi_3 
-0x052e 002161 branch p_mouse_dpi_store 
-:      002162 p_mouse_3065xy_set_cpi1:
-0x052f 002163 fetch 1 ,mem_3065xy_dpi_1 
-0x0530 002164 branch p_mouse_dpi_store 
-:      002165 p_mouse_3065xy_set_cpi4:
-0x0531 002166 fetch 1 ,mem_3065xy_dpi_4 
-0x0532 002167 branch p_mouse_dpi_store 
-:      002169 p_mouse_ka8_set_cpi3:
-0x0533 002170 fetch 1 ,mem_320x_dpi_3 
-:      002171 p_mouse_ka8_dpi_store:
-0x0534 002172 increase 2 ,pdata 
-0x0535 002173 branch p_mouse_dpi_store 
-:      002174 p_mouse_ka8_set_cpi1:
-0x0536 002175 fetch 1 ,mem_320x_dpi_1 
-0x0537 002176 branch p_mouse_ka8_dpi_store 
-:      002177 p_mouse_ka8_set_cpi4:
-0x0538 002178 fetch 1 ,mem_320x_dpi_4 
-0x0539 002179 branch p_mouse_ka8_dpi_store 
-:      002182 p_mouse_motion:
-0x053a 002183 disable user 
-0x053b 002184 setarg 0 
-0x053c 002185 store 6 ,mem_mouse_x 
-0x053d 002186 call p_mouse_cheak_sensor_data 
-0x053e 002187 call mouse_zwheel 
-0x053f 002188 call mouse_t_zwheel 
-0x0540 002189 call p_mouse_key 
-0x0541 002190 nbranch p_drawing_optima_init ,user 
-0x0542 002191 call p_drawing_optima 
-0x0543 002192 branch mouse_motion + 9 
-:      002194 p_mouse_key:
-0x0544 002195 call p_mouse_check_key_gpio 
-0x0545 002196 branch mouse_key + 1 
-:      002198 p_mouse_check_key_gpio:
-0x0546 002199 arg 0 ,rega 
-0x0547 002200 call p_mouse_check_lkey_gpio 
-0x0548 002203 call p_mouse_check_skey_gpio 
-0x0549 002204 branch mouse_check_key_gpio_output 
-:      002205 p_mouse_check_skey_gpio:
-0x054a 002208 call p_mouse_check_bk_key_gpio 
-0x054b 002209 branch p_mouse_check_fw_key_gpio 
-:      002211 p_mouse_check_lkey_gpio:
-0x054c 002212 fetcht 1 ,mem_lbutton_gpio 
-0x054d 002213 call p_gpio_set_input_pu 
-0x054e 002214 fetcht 1 ,mem_lbutton_gpio 
-0x054f 002215 call gpio_get_bit 
-0x0550 002216 setflag true ,0 ,rega 
-:      002218 p_mouse_check_rkey_gpio:
-0x0551 002219 fetcht 1 ,mem_rbutton_gpio 
-0x0552 002220 call p_gpio_set_input_pu 
-0x0553 002221 fetcht 1 ,mem_rbutton_gpio 
-0x0554 002222 call gpio_get_bit 
-0x0555 002223 setflag true ,1 ,rega 
-:      002225 p_mouse_check_mkey_gpio:
-0x0556 002226 fetcht 1 ,mem_mbutton_gpio 
-0x0557 002227 call p_gpio_set_input_pu 
-0x0558 002228 fetcht 1 ,mem_mbutton_gpio 
-0x0559 002229 call gpio_get_bit 
-0x055a 002230 setflag true ,2 ,rega 
-0x055b 002231 rtn 
-:      002232 p_mouse_check_bk_key_gpio:
-0x055c 002234 fetcht 1 ,mem_bk_button_gpio 
-0x055d 002235 call p_gpio_set_input_pd 
-0x055e 002236 fetcht 1 ,mem_bk_button_gpio 
-0x055f 002237 call gpio_get_bit 
-0x0560 002238 nsetflag true ,3 ,rega 
-0x0561 002239 branch p_gpio_set_input_pu 
-:      002240 p_mouse_check_fw_key_gpio:
-0x0562 002241 fetcht 1 ,mem_fw_button_gpio 
-0x0563 002242 call p_gpio_set_input_pd 
-0x0564 002243 fetcht 1 ,mem_fw_button_gpio 
-0x0565 002244 call gpio_get_bit 
-0x0566 002245 nsetflag true ,4 ,rega 
-:      002246 p_gpio_set_input_pu:
-0x0567 002247 set1 gpio_active_bit ,temp 
-0x0568 002248 arg core_gpio_pu0 ,contw 
-0x0569 002249 call gpio_set_bit 
-0x056a 002250 set0 gpio_active_bit ,temp 
-0x056b 002251 branch p_gpio_set_input_pd4 
-:      002253 p_gpio_set_input_pd:
-0x056c 002254 set0 gpio_active_bit ,temp 
-0x056d 002255 arg core_gpio_pu0 ,contw 
-0x056e 002256 call gpio_set_bit 
-0x056f 002257 set1 gpio_active_bit ,temp 
-:      002258 p_gpio_set_input_pd4:
-0x0570 002259 arg core_gpio_pd0 ,contw 
-0x0571 002260 branch gpio_set_high_impedance + 4 
-:      002263 p_mouse_cheak_sensor_data:
-0x0572 002264 fetch 1 ,mem_config_sensor_type 
-0x0573 002266 beq p8009 ,p_mouse_p8009_sensor_motion 
-:      002267 p_mouse_p32xx_sensor_motion:
-0x0574 002268 call mouse_clear_sensor_data 
-0x0575 002269 disable user 
-0x0576 002270 branch mouse_p32xx_sensor_motion_2 
-:      002275 p_mouse_p8009_sensor_motion:
-0x0577 002276 call mouse_clear_sensor_data 
-0x0578 002277 disable user 
-:      002281 p_mouse_p32xx_sensor_motion_1:
-0x0579 002282 setarg pan_reg_motion_staus 
-0x057a 002283 call twspi_read 
-0x057b 002284 rtnbit0 7 
-0x057c 002285 setarg pan_reg_opration_state 
-0x057d 002286 call twspi_read 
-0x057e 002287 branch mouse_p32xx_sensor_motion_1 + 3 ,blank 
-0x057f 002288 setarg 0 
-0x0580 002289 store 6 ,mem_mouse_x 
-0x0581 002290 rtn 
-:      002292 p_mouse_bb_event_discovery_btn:
-0x0582 002293 call p_mouse_null_enter_hibernate_disable 
-0x0583 002294 isolate1 mark_24g ,mark 
-0x0584 002295 call p_g24_check_51cmd_stop_24g ,true 
-0x0585 002296 jam 0 ,mem_mouse_send_blank_timer 
-0x0586 002297 fetch 1 ,mem_mouse_le_not_tx_disconn 
-0x0587 002298 call mouse_disconnect ,blank 
-0x0588 002299 setarg 0 
-0x0589 002300 store 2 ,mem_mouse_no_data_timer 
-0x058a 002301 branch mouse_bb_event_discovery_btn + 3 
-:      002303 p_mouse_start_discovery:
-0x058b 002304 jam 0 ,mem_lpm_mode 
-0x058c 002305 jam zcode_30 ,mem_zcode_temp_param0 
-0x058d 002306 branch p_zcode_entrance 
-:      002308 p_mouse_stop_discovery:
-0x058e 002310 call p_mouse_init_sensor_reset 
-0x058f 002311 branch mouse_stop_discovery + 1 
-:      002313 p_le_slave_match:
-0x0590 002314 fetch 1 ,mem_le_md_count 
-0x0591 002315 pincrease 1 
-0x0592 002316 store 1 ,mem_le_md_count 
-0x0593 002317 beq le_md_max_count ,le_slave_cont 
-0x0594 002318 call le_acknowledge 
-0x0595 002319 call le_prepare_tx 
-0x0596 002320 call power_ctrl_start 
-0x0597 002321 branch le_slave_match + 7 
-:      002323 p_le_next_adv_channel:
-0x0598 002324 fetch 1 ,mem_le_ch_mapped 
-0x0599 002325 increase 1 ,pdata 
-0x059a 002326 store 1 ,mem_le_ch_mapped 
-0x059b 002327 rtnne 40 
-0x059c 002328 jam 37 ,mem_le_ch_mapped 
-0x059d 002329 rtn 
-:      002331 p_le_receive_skip:
-0x059e 002332 call save_rssi 
-0x059f 002333 call p_rssi_signal 
-0x05a0 002334 branch le_receive_skip + 2 
-:      002336 p_le_update_param:
-0x05a1 002337 jam zcode_20 ,mem_zcode_temp_param0 
-0x05a2 002338 branch p_zcode_entrance 
-:      002340 p_le_update_channel_map:
-0x05a3 002341 jam zcode_21 ,mem_zcode_temp_param0 
-0x05a4 002342 branch p_zcode_entrance 
-:      002344 p_le_prepare_tx:
-0x05a5 002345 fetch 1 ,mem_le_arq 
-0x05a6 002346 bbit1 wak ,p_le_prepare_tx_wak 
-0x05a7 002347 call power_ctrl_pac_succ_incrs 
-0x05a8 002348 fetch 1 ,mem_empty_count 
-0x05a9 002349 nbranch p_le_send_empyt ,blank 
-0x05aa 002350 fetch 1 ,mem_le_state 
-0x05ab 002351 bbit0 lestate_encryption ,p_le_tx_4 
-0x05ac 002352 fetch 1 ,mem_le_rxbuf + 1 
-0x05ad 002353 branch p_le_tx_4 ,blank 
-0x05ae 002354 branch le_send_empty 
-:      002355 p_le_send_empyt:
-0x05af 002356 fetch 1 ,mem_empty_count 
-0x05b0 002357 increase -1 ,pdata 
-0x05b1 002358 store 1 ,mem_empty_count 
-0x05b2 002359 branch le_send_empty 
-:      002360 p_le_tx_4:
-0x05b3 002361 fetch 1 ,mem_le_pairing_state 
-0x05b4 002362 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
-0x05b5 002363 jam 3 ,mem_empty_count 
-:      002364 p_in_le_tx_4:
-0x05b6 002365 call le_fifo_check_nearly_full 
-0x05b7 002366 call p_mouse_data_pull ,blank 
-0x05b8 002367 branch le_prepare_tx + 4 
-:      002369 p_le_check_tx_retransmit_setmd:
-0x05b9 002370 fetch 1 ,mem_le_connect_status_flag 
-0x05ba 002371 and pdata ,0x03 ,pdata 
-0x05bb 002372 rtnne 0x03 
-0x05bc 002373 fetch 1 ,mem_mouse_data_queue_num 
-0x05bd 002374 rtn blank 
-0x05be 002375 fetch 1 ,mem_le_txlen 
-0x05bf 002376 rtn blank 
-0x05c0 002377 fetch 1 ,mem_le_txheader 
-0x05c1 002378 set1 md ,pdata 
-0x05c2 002379 store 1 ,mem_le_txheader 
-0x05c3 002380 call le_set_md 
-0x05c4 002381 rtn 
-:      002384 p_le_prepare_tx_wak:
-0x05c5 002385 call p_le_check_tx_retransmit_setmd 
-:      002386 p_le_power_ctrl_pac_succ_decrs:
-0x05c6 002387 branch power_ctrl_pac_succ_decrs 
-:      002389 p_mouse_le_reconn_write_enable_timer_reinit:
-0x05c7 002390 fetch 1 ,mem_mouse_le_reconnect_flag 
-0x05c8 002391 rtn blank 
-0x05c9 002392 fetch 1 ,mem_le_connect_status_flag 
-0x05ca 002393 and pdata ,0x03 ,pdata 
-0x05cb 002394 rtneq 0x03 
-0x05cc 002395 jam 2 ,mem_le_start_encrypt_timer 
-0x05cd 002396 rtn 
-:      002398 p_le_parse:
-0x05ce 002399 rtnmark1 mark_old_packet 
-0x05cf 002400 call le_fifo_check_full 
-0x05d0 002401 nrtn blank 
-0x05d1 002402 fetch 1 ,mem_le_rxbuf 
-0x05d2 002403 and pdata ,0x3 ,pdata 
-0x05d3 002404 store 1 ,mem_le_packet_llid 
-0x05d4 002405 ifetch 1 ,contr 
-0x05d5 002406 and pdata ,0x1f ,pdata 
-0x05d6 002407 store 1 ,mem_le_packet_size 
-0x05d7 002408 rtn blank 
-0x05d8 002409 copy contr ,pdata 
-0x05d9 002410 store 2 ,mem_le_payload_ptr 
-0x05da 002411 fetch 1 ,mem_le_packet_llid 
-0x05db 002412 beq llid_le_ll ,p_le_parse_ll 
-0x05dc 002413 branch le_parse_l2cap 
-:      002414 p_le_parse_ll:
-0x05dd 002415 fetch 1 ,mem_le_rxbuf + 2 
-0x05de 002416 beq ll_connection_update_req ,p_le_parse_connection_update_req 
-0x05df 002417 beq ll_channel_map_req ,p_le_parse_channel_map_req 
-0x05e0 002418 branch le_parse_ll + 1 
-:      002419 p_le_parse_connection_update_req:
-0x05e1 002420 call le_parse_connection_update_req 
-0x05e2 002421 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
-0x05e3 002422 rtn blank 
-:      002424 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
-0x05e4 002425 fetch 1 ,mem_le_new_connslavelatency 
-0x05e5 002426 store 1 ,mem_lpm_mult 
-0x05e6 002427 store 1 ,mem_lpm_mult_init 
-0x05e7 002428 rtn 
-:      002429 p_le_parse_channel_map_req:
-0x05e8 002430 ifetch 5 ,contr 
-0x05e9 002431 store 5 ,mem_le_new_map 
-0x05ea 002432 ifetch 2 ,contr 
-0x05eb 002433 store 2 ,mem_le_instant 
-0x05ec 002434 branch le_parse_channel_map_req + 7 
-:      002436 p_le_parse_l2cap:
-0x05ed 002437 ifetch 2 ,contr 
-0x05ee 002438 beq le_l2cap_cid_att ,p_le_parse_att 
-0x05ef 002439 beq le_l2cap_cid_smp ,p_le_parse_smp 
-0x05f0 002440 branch le_parse_l2cap + 11 
-:      002441 p_le_parse_att:
-0x05f1 002442 call store_contr 
-0x05f2 002443 call p_mouse_le_reconn_write_enable_timer_reinit 
-0x05f3 002444 call get_contr 
-0x05f4 002445 ifetch 3 ,contr 
-0x05f5 002446 store 3 ,mem_le_att_opcode 
-0x05f6 002447 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
-0x05f7 002448 rshift8 pdata ,temp 
-0x05f8 002449 sub temp ,0x24 ,null 
-0x05f9 002450 branch p_le_parse_att1 ,positive 
-0x05fa 002451 arg mem_mouse_le_uuid_sup ,temp 
-0x05fb 002452 storet 2 ,mem_ui_le_uuid_table 
-0x05fc 002453 call le_parse_att + 2 
-0x05fd 002454 setarg 0x8e7a 
-0x05fe 002455 store 2 ,mem_ui_le_uuid_table 
-0x05ff 002456 rtn 
-:      002458 p_le_parse_att_read_by_group_type_request:
-0x0600 002459 call le_parse_att_read_by_group_type_request 
-0x0601 002460 call le_fifo_get_last_tx_ptr 
-0x0602 002461 increase 7 ,contr 
-0x0603 002462 ifetch 1 ,contr 
-0x0604 002463 rtnne attop_read_by_group_type_response 
-0x0605 002464 increase 5 ,contr 
-0x0606 002465 ifetch 2 ,contr 
-0x0607 002466 arg uuid_service_hids ,temp 
-0x0608 002467 isub temp ,null 
-0x0609 002468 nrtn zero 
-0x060a 002469 increase -4 ,contr 
-0x060b 002470 setarg 0x2b 
-0x060c 002471 istore 2 ,contr 
-0x060d 002472 rtn 
-:      002474 p_le_parse_att1:
-0x060e 002475 beq attop_read_request ,p_le_parse_att_read_request 
-0x060f 002476 branch le_parse_att + 2 
-:      002477 p_le_parse_att_read_request:
-0x0610 002478 fetcht 2 ,mem_le_att_handle 
-0x0611 002479 fetch 1 ,mem_le_configuration 
-0x0612 002480 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
-:      002481 p_le_send_att_read_response:
-0x0613 002482 fetch 2 ,mem_le_att_handle 
-0x0614 002483 beq 0x13 ,le_send_att_error_response_notfound 
-0x0615 002484 fetcht 2 ,mem_le_att_handle 
-0x0616 002485 branch le_send_att_read_response 
-:      002486 p_le_send_att_read_response_check_auth:
-0x0617 002487 fetch 2 ,mem_le_pairing_handle 
-0x0618 002488 isub temp ,null 
-0x0619 002489 nbranch p_le_send_att_read_response ,zero 
-0x061a 002490 call le_check_encrypt_state 
-0x061b 002491 nbranch p_le_send_att_read_response ,user 
-0x061c 002492 branch le_send_att_read_response_check_auth + 5 
-:      002494 p_le_parse_smp:
-0x061d 002495 ifetch 1 ,contr 
-0x061e 002496 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-0x061f 002497 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-0x0620 002498 branch le_parse_smp + 1 
-:      002499 p_le_parse_smp_pairing_request:
-0x0621 002500 jam 1 ,mem_le_send_security_request_flag 
-0x0622 002501 branch le_parse_smp_pairing_request 
-:      002502 p_le_parse_smp_pairing_failed:
-0x0623 002503 jam zcode_82 ,mem_zcode_temp_param0 
-0x0624 002504 branch p_zcode_entrance 
-:      002506 p_le_adv_not_match:
-0x0625 002507 fetch 1 ,mem_le_ch_mapped 
-0x0626 002508 bne 39 ,le_adv_loop 
-0x0627 002509 call p_le_adv_random_delay 
-0x0628 002510 arg le_adv_interval_timer ,queue 
-0x0629 002511 fetch 2 ,mem_le_adv_interval 
-0x062a 002512 branch timer_init 
-:      002513 p_le_adv_random_delay:
-0x062b 002514 random pdata 
-0x062c 002515 arg 0x1ff ,temp 
-0x062d 002516 iand temp ,pdata 
-0x062e 002517 add pdata ,250 ,pdata 
-0x062f 002518 branch delay 
-:      002520 p_le_lpm_setmult:
-0x0630 002521 disable wake 
-0x0631 002522 branch p_le_lpm_set_mult_attempt ,attempt 
-0x0632 002523 nbranch le_lpm_lost ,match 
-:      002524 p_le_lpm_set_mult_attempt:
-0x0633 002525 call lpm_match 
-0x0634 002526 fetch 2 ,mem_rx_window_sniff 
-0x0635 002527 store 2 ,mem_le_receive_window 
-0x0636 002528 fetch 1 ,mem_le_connect_status_flag 
-0x0637 002529 compare 3 ,pdata ,3 
-0x0638 002530 nbranch lpm_mult_short ,true 
-0x0639 002531 branch le_lpm_set_mult_attempt + 3 
-:      002533 p_le_mouse_bb_event_connect_complete:
-0x063a 002534 jam zcode_22 ,mem_zcode_temp_param0 
-0x063b 002535 branch p_zcode_entrance 
-:      002537 p_twspi_reset:
-0x063c 002538 hfetch 1 ,core_gpio_out3 
-0x063d 002539 and_into 0xfd ,pdata 
-0x063e 002540 hstore 1 ,core_gpio_out3 
-0x063f 002541 hfetcht 1 ,core_gpio_oe3 
-0x0640 002542 or_into 0x2 ,temp 
-0x0641 002543 hstoret 1 ,core_gpio_oe3 
-0x0642 002544 call twspi_disable 
-0x0643 002545 and_into 0xfd ,temp 
-0x0644 002546 nop 13 
-0x0645 002547 call p_twspi_enable 
-0x0646 002548 hstoret 1 ,core_gpio_oe3 
-0x0647 002549 rtn 
-:      002551 p_spid_init:
-0x0648 002552 call spid_init_common 
-:      002553 p_twspi_enable:
-0x0649 002554 hfetch 1 ,core_gpio_sel1 
-0x064a 002555 set1 0 ,pdata 
-0x064b 002556 set0 1 ,pdata 
-0x064c 002557 set0 3 ,pdata 
-0x064d 002558 hstore 1 ,core_gpio_sel1 
-0x064e 002559 rtn 
-:      002562 p_page_wait_fhs_reply_ok:
-0x064f 002563 jam zcode_00 ,mem_zcode_temp_param0 
-0x0650 002564 branch p_zcode_entrance 
-:      002566 p_role_switch_master:
-0x0651 002567 call role_switch_check 
-0x0652 002568 nrtn user 
-:      002569 p_wait_role_switch_anchor:
-0x0653 002570 disable user 
-0x0654 002571 jam param_newconnto ,mem_newconnto_counter 
-0x0655 002572 set0 mark_fhs_already_good ,mark 
-0x0656 002573 set0 mark_role_switch_receive_fhs ,mark 
-:      002574 p_roles_waitfhs_loop:
-0x0657 002575 call rf_setup_time_master_slot 
-0x0658 002576 call master_recv_packet 
-0x0659 002577 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
-0x065a 002578 call new_conn_timeout 
-0x065b 002579 nbranch p_roles_waitfhs_loop ,blank 
-0x065c 002580 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
-0x065d 002581 branch role_switch_fail_master 
-:      002583 p_roles_replyto_fhs:
-0x065e 002584 call rf_setup_time_slave_slot 
-0x065f 002585 arg type_id ,type 
-0x0660 002586 call master_send_packet 
-0x0661 002587 set1 mark_role_switch_receive_fhs ,mark 
-0x0662 002588 set0 mark_fhs_already_good ,mark 
-0x0663 002589 fetch 1 ,mem_amaddr 
-0x0664 002590 iforce am_addr 
-0x0665 002591 jam 2 ,mem_newconnto_counter 
-0x0666 002592 branch p_roles_waitfhs_loop 
-:      002594 p_roles_replyto_fhs1:
-0x0667 002595 fetch 4 ,mem_clke_bt 
-0x0668 002596 pincrease 8 
-0x0669 002597 store 4 ,mem_clke_bt 
-0x066a 002598 branch roles_replyto_fhs + 4 
-:      002600 p_process_dmh:
-0x066b 002601 bmark1 mark_first_packet ,end_of_packet 
-0x066c 002602 branch process_dmh + 1 
-:      002604 p_quit_connection_cont:
-0x066d 002605 jam zcode_23 ,mem_zcode_temp_param0 
-0x066e 002606 branch p_zcode_entrance 
-:      002608 p_prepare_tx:
-0x066f 002609 fetch 1 ,mem_state 
-0x0670 002610 isolate1 state_inconn ,pdata 
-0x0671 002611 call p_bt_power_ctrl ,true 
-0x0672 002612 branch prepare_tx + 1 
-:      002613 p_bt_power_ctrl:
-0x0673 002614 fetch 1 ,mem_arq 
-0x0674 002615 isolate1 wack ,pdata 
-0x0675 002616 call power_ctrl_pac_succ_decrs ,true 
-0x0676 002617 ncall power_ctrl_pac_succ_incrs ,true 
-0x0677 002618 branch power_ctrl_start 
-:      002620 p_slave_conn_recv_packet:
-0x0678 002621 call slave_receive_master_slot 
-0x0679 002622 nbranch shutdown_radio ,sync 
-0x067a 002623 call save_rssi 
-0x067b 002624 call p_rssi_signal 
-0x067c 002625 branch slave_conn_recv_packet + 4 
-:      002627 p_lpm_dispatch:
-0x067d 002628 rtnmark1 mark_24g 
-0x067e 002629 call lpo_calibration 
-0x067f 002630 fetch 3 ,mem_clks_per_lpo 
-0x0680 002631 rtn blank 
-0x0681 002632 fetch 1 ,mem_lpm_mode 
-0x0682 002633 rtn blank 
-0x0683 002634 fetch 1 ,mem_ssp_enable 
-0x0684 002635 branch p_lpm_dispatch_next ,blank 
-0x0685 002636 fetch 1 ,mem_sp_local_key_invalid 
-0x0686 002637 rtn blank 
-:      002638 p_lpm_dispatch_next:
-0x0687 002639 fetch 1 ,mem_le_sc_calc 
-0x0688 002640 nrtn blank 
-0x0689 002641 call lpm_check_wake_lock 
-0x068a 002642 nrtn blank 
-0x068b 002643 fetch 1 ,mem_context 
-0x068c 002644 compare 3 ,pdata ,0x7 
-0x068d 002645 nbranch lpm_dispatch_unconn ,true 
-0x068e 002646 fetch 2 ,mem_context + coffset_tsniff 
-0x068f 002647 arg 0xffff ,temp 
-0x0690 002648 isub temp ,null 
-0x0691 002649 rtn zero 
-0x0692 002650 branch lpm_dispatch_next + 9 
-:      002652 p_lpm_set_mult:
-0x0693 002653 disable wake 
-0x0694 002654 fetch 1 ,mem_state 
-0x0695 002655 rtnbit0 state_insniff 
-0x0696 002656 nbranch lpm_not_match ,match 
-0x0697 002657 call lpm_match 
-0x0698 002658 fetch 2 ,mem_rx_window_sniff 
-0x0699 002659 store 2 ,mem_rx_window 
-0x069a 002660 fetch 1 ,mem_arq 
-0x069b 002661 bbit1 wack ,lpm_mult_short 
-0x069c 002662 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-0x069d 002663 call l2cap_malloc_is_fifo_empty 
-0x069e 002664 nbranch lpm_mult_short ,blank 
-0x069f 002665 call p_lpm_set_attemp_timeout ,blank 
-0x06a0 002666 branch lpm_set_mult + 13 
-:      002667 p_lpm_set_attemp_timeout:
-0x06a1 002668 jam 1 ,mem_current_sniff_attempt 
-0x06a2 002669 jam 0 ,mem_current_sniff_timeout 
-0x06a3 002670 rtn 
-:      002672 p_mouse_bb_disconnected:
-0x06a4 002673 jam zcode_01 ,mem_zcode_temp_param0 
-0x06a5 002674 branch p_zcode_entrance 
-:      002676 p_hid_rx_process:
-0x06a6 002677 jam zcode_02 ,mem_zcode_temp_param0 
-0x06a7 002678 branch p_zcode_entrance 
-:      002680 p_parse_lmp_accepted:
-0x06a8 002681 fetch 1 ,mem_rxbuf + 1 
-0x06a9 002682 store 1 ,mem_lmi_accepted_opcode 
-0x06aa 002683 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
-0x06ab 002684 branch parse_lmp_accepted + 3 
-:      002685 p_parse_lmp_accepted_switch:
-0x06ac 002686 call parse_lmp_accepted_switch 
-0x06ad 002687 jam 1 ,mem_bt_rcvd_switch_req_accept 
-0x06ae 002688 fetch 1 ,mem_bt_send_lmp_setup_complete 
-0x06af 002689 rtn blank 
-0x06b0 002690 jam 2 ,mem_bt_send_lmp_setup_complete 
-0x06b1 002691 rtn 
-:      002693 p_send_lmp:
-0x06b2 002694 disable user 
-0x06b3 002695 call lmo_fifo_process 
-0x06b4 002696 fetch 1 ,mem_lmp_to_send 
-0x06b5 002697 rtn blank 
-0x06b6 002698 bbit1 7 ,p_send_lmp_escape 
-0x06b7 002699 beq lmp_accepted ,p_send_lmp_accepted 
-0x06b8 002700 beq lmp_setup_complete ,p_send_lmp_setup_complete 
-0x06b9 002701 beq lmp_sniff_req ,p_send_lmp_sniff_req 
-0x06ba 002702 branch send_lmp0 
-:      002704 p_send_lmp_escape:
-0x06bb 002705 jam zcode_10 ,mem_zcode_temp_param0 
-0x06bc 002706 branch p_zcode_entrance 
-:      002708 p_send_lmp_accepted:
-0x06bd 002709 jam zcode_11 ,mem_zcode_temp_param0 
-0x06be 002710 branch p_zcode_entrance 
-:      002712 p_send_lmp_setup_complete:
-0x06bf 002713 jam 1 ,mem_bt_send_lmp_setup_complete 
-0x06c0 002714 branch send_lmp_setup_complete 
-:      002716 p_send_lmp_sniff_req:
-0x06c1 002717 jam 4 ,mem_mouse_bt_send_first_package_timer 
-0x06c2 002718 branch send_lmp_sniff_req 
-:      002720 p_process_conn_sm:
-0x06c3 002721 call lmo_fifo_check 
-0x06c4 002722 nrtn blank 
-:      002723 p_process_conn_sm_continue:
-0x06c5 002724 fetch 1 ,mem_conn_sm 
-0x06c6 002725 rtn blank 
-0x06c7 002726 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
-0x06c8 002727 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
-0x06c9 002728 branch process_conn_sm_continue + 2 
-:      002730 p_host_creat_conn_wait_switch:
-0x06ca 002731 fetch 1 ,mem_switch_flag 
-0x06cb 002732 rtneq switch_flag_init 
-0x06cc 002733 beq switch_flag_accept ,p_host_create_conn_switch_accept 
-0x06cd 002734 branch host_creat_conn_wait_switch + 3 
-:      002735 p_host_create_conn_switch_accept:
-0x06ce 002736 rtn master 
-:      002737 p_host_create_conn_auth_pair:
-0x06cf 002739 fetch 1 ,mem_connection_options 
-0x06d0 002740 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
-0x06d1 002741 branch host_create_conn_auth_pair + 1 
-:      002742 p_host_create_conn_auth_pair_true:
-0x06d2 002743 fetch 1 ,mem_bt_send_lmp_setup_complete 
-0x06d3 002744 beq 1 ,host_create_conn_auth_pair_true 
-0x06d4 002746 fetch 1 ,mem_link_key_exists 
-0x06d5 002747 branch host_create_conn_auth_pair_nokey ,blank 
-0x06d6 002748 fetch 1 ,mem_lmp_conn_state 
-0x06d7 002749 rtnbit0 sent_setup_complete 
-0x06d8 002750 rtnbit0 received_setup_complete 
-0x06d9 002751 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-0x06da 002752 rtn blank 
-0x06db 002753 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
-0x06dc 002754 fetch 4 ,mem_aurand_send_delay_time 
-0x06dd 002755 arg 20 ,temp 
-0x06de 002756 iadd temp ,temp 
-0x06df 002757 copy clkn_bt ,pdata 
-0x06e0 002758 isub temp ,null 
-0x06e1 002759 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
-0x06e2 002760 branch host_create_conn_auth 
-:      002762 p_bt_send_max_slot_req_accept_after_switch_wait:
-0x06e3 002763 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-0x06e4 002764 rtn 
-:      002766 p_host_create_conn_send_conn_req:
-0x06e5 002767 jam 20 ,mem_mouse_send_switch_req_timer 
-0x06e6 002768 branch host_create_conn_send_conn_req 
-:      002774 p_check_51cmd_once_continue:
-0x06e7 002775 call lmo_fifo_check 
-0x06e8 002776 nbranch check_51cmd_restore ,blank 
-0x06e9 002777 fetch 1 ,mem_fifo_temp 
-0x06ea 002778 bmark0 mark_context ,check_51cmd_check_idle 
-0x06eb 002779 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
-0x06ec 002780 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
-0x06ed 002781 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-0x06ee 002782 branch check_51cmd_once_continue + 2 
-:      002784 p_flash_store_le_reconn_info:
-0x06ef 002785 jam rec_4_mode ,mem_record_bt_mode 
-0x06f0 002786 fetch 6 ,mem_le_plap 
-0x06f1 002787 branch p_flash_store_reconn_info 
-:      002788 p_flash_store_bd_reconn_info:
-0x06f2 002789 jam rec_3_mode ,mem_record_bt_mode 
-0x06f3 002790 fetch 6 ,mem_plap 
-:      002791 p_flash_store_reconn_info:
-0x06f4 002792 store 6 ,mem_temp_lap 
-:      002793 p_mouse_store_remote_bdaddr:
-0x06f5 002794 fetch mouse_flag_len ,mem_mouse_flag 
-0x06f6 002795 rtnbit0 mouse_store_eeprom_flag 
-0x06f7 002796 arg mouse_store_eeprom_flag ,queue 
-0x06f8 002797 call mouse_disable_function_flag 
-0x06f9 002798 call mouse_check_device_addr 
-:      002799 p_mouse_unplug_clean_bdaddr:
-0x06fa 002800 call mouse_before_store_reconn_info 
-0x06fb 002801 branch p_mouse_store_flash_device_info 
-:      002803 p_check_51cmd_ble_update_connect_param:
-0x06fc 002804 call le_fifo_check_full 
-0x06fd 002805 nrtn blank 
-0x06fe 002806 branch le_l2cap_tx_update_req 
-:      002808 power_ctrl_pac_succ_cnt_init:
-0x06ff 002809 jam 1 ,mem_power_ctrl_level 
-0x0700 002810 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0x0701 002811 rtn 
-:      002812 power_ctrl_pac_succ_incrs:
-0x0702 002813 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0703 002814 increase 1 ,pdata 
-0x0704 002815 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0705 002816 rtn 
-:      002817 power_ctrl_pac_succ_decrs:
-0x0706 002818 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0707 002819 sub pdata ,2 ,null 
-0x0708 002820 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-0x0709 002821 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x070a 002822 rtneq 0 
-0x070b 002823 increase -1 ,pdata 
-0x070c 002824 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0x070d 002825 rtn 
-:      002826 power_ctrl_pac_succ_cnt_reinit:
-0x070e 002827 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-0x070f 002828 rtn 
-:      002830 power_ctrl_start:
-0x0710 002831 fetch 2 ,mem_ui_state_map 
-0x0711 002832 rtnbit1 ui_state_ble_adv 
-0x0712 002833 rtnbit1 ui_state_bt_reconnect 
-0x0713 002834 rtnbit1 ui_state_bt_discovery 
-0x0714 002836 arg mem_rssi_signal_buf ,rega 
-0x0715 002837 call p_rssi_average 
-0x0716 002838 storet 1 ,mem_rssi_avg_received 
-0x0717 002840 setarg rssi_dis_max_24g 
-0x0718 002841 bmark1 mark_24g ,power_ctrl_start_next 
-0x0719 002842 setarg rssi_dis_max_ble 
-:      002843 power_ctrl_start_next:
-0x071a 002844 isub temp ,null 
-0x071b 002845 nbranch power_ctrl_txpower_incrs_force ,positive 
-0x071c 002847 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x071d 002848 sub pdata ,2 ,null 
-0x071e 002849 nbranch power_ctrl_txpower_decrs_check ,positive 
-0x071f 002850 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0720 002851 beq 0 ,power_ctrl_txpower_incrs 
-0x0721 002852 rtn 
-:      002854 power_ctrl_txpower_decrs_check:
-0x0722 002855 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0723 002856 rtnne 50 
-0x0724 002857 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-:      002858 power_ctrl_txpower_decrs:
-0x0725 002859 fetcht 1 ,mem_rssi_avg_received 
-0x0726 002860 setarg rssi_dis_min_24g 
-0x0727 002861 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-0x0728 002862 setarg rssi_dis_min_ble 
-:      002863 power_ctrl_txpower_decrs_next:
-0x0729 002864 isub temp ,null 
-0x072a 002865 nrtn positive 
-0x072b 002866 fetch 1 ,mem_power_ctrl_level 
-0x072c 002867 beq 0 ,power_ctrl_decrs_level0 
-0x072d 002868 increase -1 ,pdata 
-0x072e 002869 store 1 ,mem_power_ctrl_level 
-0x072f 002870 beq 0 ,power_ctrl_decrs_level0 
-:      002871 power_ctrl_decrs_level1:
-:      002872 power_ctrl_incrs_level1:
-0x0730 002873 jam tx_power_0db ,mem_tx_power 
-0x0731 002874 rtn 
-:      002876 power_ctrl_txpower_incrs_force:
-0x0732 002877 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-:      002878 power_ctrl_txpower_incrs:
-0x0733 002879 fetch 1 ,mem_power_ctrl_level 
-0x0734 002880 beq 2 ,power_ctrl_incrs_level2 
-0x0735 002881 increase 1 ,pdata 
-0x0736 002882 store 1 ,mem_power_ctrl_level 
-0x0737 002883 beq 1 ,power_ctrl_incrs_level1 
-:      002884 power_ctrl_incrs_level2:
-0x0738 002885 jam tx_power_5db ,mem_tx_power 
-0x0739 002886 rtn 
-:      002888 power_ctrl_decrs_level0:
-0x073a 002889 jam tx_power_f5db ,mem_tx_power 
-0x073b 002890 rtn 
-:      002893 p_set_freq_tx:
-0x073c 002894 storet 1 ,mem_last_freq 
-0x073d 002895 add temp ,0 ,rega 
-0x073e 002896 call rf_write_freq 
-0x073f 002897 setarg param_pll_setup 
-0x0740 002898 call sleep 
-:      002899 p_rf_tx_enable:
-0x0741 002900 jam 0x1 ,rfen_adc 
-0x0742 002901 jam 0x3c ,rfen_rx 
-0x0743 002902 jam 0xe0 ,rfen_tx 
-0x0744 002903 nop 10 
-0x0745 002904 jam 0x01 ,rfen_mdm 
-0x0746 002905 jam 0x3d ,rfen_mdm 
-0x0747 002906 nop 10 
-0x0748 002907 jam 0xb7 ,rfen_sn 
-0x0749 002908 nop 10 
-0x074a 002909 jam 0x7d ,rfen_mdm 
-0x074b 002910 fetch 1 ,mem_tx_power 
-0x074c 002913 beq tx_power_5db ,p_set_tx_power_5db 
-0x074d 002915 beq tx_power_f5db ,p_set_tx_power_f5db 
-0x074e 002916 beq tx_power_pair ,p_set_tx_power_pair 
-:      002918 p_set_tx_power_0db:
-0x074f 002919 call p_rx_low_sens 
-0x0750 002921 jam 0xd0 ,0x8955 
-0x0751 002922 jam 0xe0 ,0x8956 
-0x0752 002924 jam 0x6c ,0x8958 
-0x0753 002926 branch set_tx_power_0db 
-:      002938 p_set_tx_power_5db:
-0x0754 002939 call p_rx_high_sens 
-0x0755 002941 jam 0xd0 ,0x8955 
-0x0756 002942 jam 0xe0 ,0x8956 
-0x0757 002944 jam 0x3c ,0x8958 
-0x0758 002946 branch set_tx_power_5db 
-:      002958 p_set_tx_power_f5db:
-0x0759 002959 call p_rx_low_sens 
-0x075a 002961 jam 0xd0 ,0x8955 
-0x075b 002962 jam 0xc0 ,0x8956 
-0x075c 002964 jam 0x6c ,0x8958 
-0x075d 002966 branch set_tx_power_f5db 
-:      002968 p_rx_low_sens:
-0x075e 002969 jam 0x5b ,0x894c 
-0x075f 002970 jam 0x96 ,0x894d 
-0x0760 002971 jam 0x2c ,0x894e 
-0x0761 002972 jam 0x46 ,0x894f 
-0x0762 002973 rtn 
-:      002975 p_rx_high_sens:
-0x0763 002976 jam 0xfb ,0x894c 
-0x0764 002977 jam 0xef ,0x894d 
-0x0765 002978 jam 0xec ,0x894e 
-0x0766 002979 jam 0x5e ,0x894f 
-0x0767 002980 rtn 
-:      002982 p_set_tx_power_pair:
-0x0768 002984 jam 0xc2 ,0x8956 
-0x0769 002985 jam 0xd0 ,0x8955 
-0x076a 002986 rtn 
-:      002988 p_shutdown_radio:
-0x076b 002989 force 8 ,radio_ctrl 
-0x076c 002990 branch shutdown_radio + 1 
-:      002992 p_initialize_radio_cont:
-0x076d 002993 call initialize_radio_cont + 1 
-0x076e 002994 jam clksel_dpll ,core_clksel 
-0x076f 002995 rtn 
-:      002998 p_zcode_entrance:
-0x0770 002999 fetcht 1 ,mem_zcode_temp_param0 
-0x0771 003000 rshift4 temp ,temp 
-0x0772 003001 fetch 1 ,mem_zcode_current_number 
-0x0773 003002 isub temp ,null 
-0x0774 003003 branch p_zcode_run ,zero 
-0x0775 003004 storet 1 ,mem_zcode_current_number 
-0x0776 003005 increase 1 ,temp 
-0x0777 003006 setarg zcode_buff_size 
-0x0778 003007 imul32 temp ,temp 
-0x0779 003008 fetch 3 ,mem_xip_flash_offset 
-0x077a 003009 isub temp ,pdata 
-0x077b 003011 fetcht 3 ,mem_flash_start_addr 
-0x077c 003012 iadd temp ,pdata 
-0x077d 003013 increase -5 ,pdata 
-0x077e 003014 store 3 ,mem_flash_address 
-0x077f 003015 call p_flash_release_deep_power_down 
-:      003016 p_zcode_read_loop:
-0x0780 003017 fetch 3 ,mem_flash_address 
-0x0781 003018 arg zcode_buff_size ,temp 
-0x0782 003019 arg mem_zcode_buff ,rega 
-0x0783 003020 call spid_read_flash 
-0x0784 003021 fetch 4 ,mem_zcode_buff 
-0x0785 003022 fetcht 4 ,mem_zcode_head 
-0x0786 003023 isub temp ,null 
-0x0787 003024 nbranch p_zcode_read_loop ,zero 
-0x0788 003025 call p_mouse_spi_init 
-0x0789 003027 setarg mem_zcode_buff 
-0x078a 003028 store 2 ,mem_patch_ptr 
-0x078b 003029 jam zcode_code_size ,mem_patch_len 
-0x078c 003030 call load_ucode 
-0x078d 003031 setarg 0 
-0x078e 003032 store 4 ,mem_patch_ptr 
-:      003033 p_zcode_run:
-0x078f 003034 fetch 1 ,mem_zcode_temp_param0 
-0x0790 003035 branch p_zcode 
-:      003040 p_drawing_optima:
-0x0791 003041 fetch 4 ,mem_mouse_x 
-0x0792 003042 rtn blank 
-0x0793 003043 call p_data_abs_check 
-0x0794 003044 setarg 0x06 
-0x0795 003045 call p_data_greater_than_check 
-0x0796 003046 setarg 0x03 
-0x0797 003047 call p_data_less_than_check 
-0x0798 003048 fetch 1 ,mem_mouse_asm_flag 
-0x0799 003049 beq 1 ,p_drawing_optima_modify 
-:      003050 p_drawing_optima_init:
-0x079a 003051 arg 5 ,loopcnt 
-0x079b 003052 arg mem_mouse_asm_flag ,contw 
-0x079c 003053 branch clear_mem 
-:      003055 p_drawing_optima_modify:
-0x079d 003056 fetch 2 ,mem_mouse_x_pre 
-0x079e 003057 store 2 ,mem_data_pre 
-0x079f 003058 fetch 2 ,mem_mouse_x 
-0x07a0 003059 store 2 ,mem_data_current 
-0x07a1 003060 call p_drawing_optima_data_x 
-0x07a2 003061 fetch 2 ,mem_data_pre 
-0x07a3 003062 store 2 ,mem_mouse_x_pre 
-0x07a4 003063 fetch 2 ,mem_data_current 
-0x07a5 003064 store 2 ,mem_mouse_x 
-0x07a6 003066 fetch 2 ,mem_mouse_y_pre 
-0x07a7 003067 store 2 ,mem_data_pre 
-0x07a8 003068 fetch 2 ,mem_mouse_y 
-0x07a9 003069 store 2 ,mem_data_current 
-0x07aa 003070 call p_drawing_optima_data_y 
-0x07ab 003071 fetch 2 ,mem_data_pre 
-0x07ac 003072 store 2 ,mem_mouse_y_pre 
-0x07ad 003073 fetch 2 ,mem_data_current 
-0x07ae 003074 store 2 ,mem_mouse_y 
-0x07af 003075 rtn 
-:      003077 p_drawing_optima_data_x:
-0x07b0 003078 fetch 2 ,mem_data_pre 
-0x07b1 003079 fetcht 2 ,mem_data_current 
-0x07b2 003080 iadd temp ,pdata 
-0x07b3 003081 fetcht 1 ,mem_mouse_data_xtemp 
-0x07b4 003082 iadd temp ,pdata 
-0x07b5 003083 and pdata ,0x01 ,temp 
-0x07b6 003084 storet 1 ,mem_mouse_data_xtemp 
-0x07b7 003085 branch p_drawing_optima_data 
-:      003087 p_drawing_optima_data_y:
-0x07b8 003088 fetch 2 ,mem_data_pre 
-0x07b9 003089 fetcht 2 ,mem_data_current 
-0x07ba 003090 iadd temp ,pdata 
-0x07bb 003091 fetcht 1 ,mem_mouse_data_ytemp 
-0x07bc 003092 iadd temp ,pdata 
-0x07bd 003093 and pdata ,0x01 ,temp 
-0x07be 003094 storet 1 ,mem_mouse_data_ytemp 
-0x07bf 003095 branch p_drawing_optima_data 
-:      003101 p_drawing_optima_data:
-0x07c0 003102 store 3 ,mem_data_sum 
-0x07c1 003103 isolate1 16 ,pdata 
-0x07c2 003104 branch p_data_sum_overflow ,true 
-0x07c3 003105 fetch 1 ,mem_data_sum + 1 
-0x07c4 003106 beq 0xff ,p_data_sum_n 
-0x07c5 003107 fetch 1 ,mem_data_sum 
-:      003108 p_data_store_pre:
-0x07c6 003109 rshift pdata ,pdata 
-0x07c7 003110 store 2 ,mem_data_pre 
-0x07c8 003111 store 2 ,mem_data_current 
-0x07c9 003112 rtn 
-:      003113 p_data_sum_overflow:
-0x07ca 003114 fetch 1 ,mem_data_sum + 1 
-0x07cb 003115 beq 0 ,p_data_sum_overflow_p 
-0x07cc 003116 fetch 3 ,mem_data_sum 
-0x07cd 003117 branch p_data_store_pre 
-:      003118 p_data_sum_overflow_p:
-0x07ce 003119 jam 0 ,mem_data_sum + 2 
-0x07cf 003120 fetch 1 ,mem_data_sum 
-0x07d0 003121 branch p_data_store_pre 
-:      003123 p_data_sum_n:
-0x07d1 003124 fetch 1 ,mem_data_sum 
-0x07d2 003125 call p_pdata_get_half 
-0x07d3 003126 store 1 ,mem_data_pre 
-0x07d4 003127 store 1 ,mem_data_current 
-0x07d5 003128 branch p_data_zero ,blank 
-0x07d6 003129 setarg 0xff 
-:      003130 p_data_set_direction:
-0x07d7 003131 store 1 ,mem_data_pre + 1 
-0x07d8 003132 store 1 ,mem_data_current + 1 
-0x07d9 003133 rtn 
-:      003134 p_data_zero:
-0x07da 003135 setarg 0 
-0x07db 003136 branch p_data_set_direction 
-:      003138 p_pdata_get_half:
-0x07dc 003139 sub pdata ,0 ,pdata 
-0x07dd 003140 store 1 ,mem_rega 
-0x07de 003141 fetch 1 ,mem_rega 
-0x07df 003142 rshift pdata ,pdata 
-0x07e0 003143 store 1 ,mem_rega 
-0x07e1 003144 fetch 1 ,mem_rega 
-0x07e2 003145 sub pdata ,0 ,pdata 
-0x07e3 003146 rtn 
-:      003150 p_data_greater_than_check:
-0x07e4 003151 isub rega ,null 
-0x07e5 003152 nbranch p_enable_asm ,positive 
-0x07e6 003153 isub regb ,null 
-0x07e7 003154 nbranch p_enable_asm ,positive 
-:      003155 p_disable_asm:
-0x07e8 003156 jam 0 ,mem_mouse_asm_flag 
-0x07e9 003157 rtn 
-:      003158 p_data_less_than_check:
-0x07ea 003159 isub rega ,null 
-0x07eb 003160 nrtn positive 
-0x07ec 003161 isub regb ,null 
-0x07ed 003162 nrtn positive 
-0x07ee 003163 branch p_disable_asm 
-:      003164 p_enable_asm:
-0x07ef 003165 jam 1 ,mem_mouse_asm_flag 
-0x07f0 003166 rtn 
-:      003168 p_data_abs_check:
-0x07f1 003169 fetch 2 ,mem_mouse_x 
-0x07f2 003170 call p_data_abs 
-0x07f3 003171 copy pdata ,rega 
-0x07f4 003172 fetch 2 ,mem_mouse_y 
-0x07f5 003173 call p_data_abs 
-0x07f6 003174 copy pdata ,regb 
-0x07f7 003175 rtn 
-:      003181 p_data_abs:
-0x07f8 003182 store 2 ,mem_data_current 
-0x07f9 003183 fetch 1 ,mem_data_current + 1 
-0x07fa 003184 beq 0xff ,p_data_reversal 
-0x07fb 003185 fetch 1 ,mem_data_current 
-:      003186 p_data_abs_store:
-0x07fc 003187 and_into 0xff ,pdata 
-0x07fd 003189 rtn 
-:      003190 p_data_reversal:
-0x07fe 003191 fetch 2 ,mem_data_current 
-0x07ff 003192 sub pdata ,0 ,pdata 
-0x0800 003193 branch p_data_abs_store 
+0x02b8 001100 fetch 1 ,mem_power_on_flag 
+0x02b9 001101 bbit1 2 ,p_mouse_wakeup_from_hibernate 
+0x02ba 001102 fetch 1 ,mem_mouse_latest_mode 
+0x02bb 001103 beq latest_mode_24g ,p_g24_start_24g_mode 
+0x02bc 001104 jam latest_mode_null ,mem_mouse_latest_mode 
+0x02bd 001105 branch p_mouse_start_24g_pair 
+:      001107 p_mouse_wakeup_from_hibernate:
+0x02be 001108 call p_mouse_load_flash_device_info 
+0x02bf 001109 fetch 1 ,mem_mouse_latest_mode 
+0x02c0 001110 beq latest_mode_bt ,p_mouse_check_reconn_target 
+0x02c1 001111 beq latest_mode_24g ,p_g24_start_24g_mode 
+0x02c2 001112 jam ble_poweron_reconn_timer ,mem_mouse_poweron_bt_start_reconn_timer 
+0x02c3 001113 rtn 
+:      001115 p_mouse_check_reconn_target:
+0x02c4 001116 jam 1 ,mem_24g_stop_g24_mode 
+0x02c5 001117 call p_mouse_tx_power_init 
+0x02c6 001118 fetch 1 ,mem_xrecord_mode 
+0x02c7 001119 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
+0x02c8 001120 beq rec_4_mode ,p_mouse4_0_check_reconn_target 
+0x02c9 001121 call p_mouse_fast_conn_adv_switch_timer_reinit 
+0x02ca 001122 jam 6 ,mem_connection_options 
+0x02cb 001123 call p_mouse_check_fast_conn_adv_start 
+0x02cc 001124 branch check_51cmd_start_discovery 
+:      001129 p_mouse_tx_power_init:
+0x02cd 001130 fetch 1 ,mem_tx_power_temp 
+0x02ce 001131 store 1 ,mem_tx_power 
+0x02cf 001132 rtn 
+:      001138 p_mouse3_0_check_reconn_target:
+0x02d0 001139 fetch 6 ,mem_hci_plap 
+0x02d1 001140 branch app_bt_start_discovery_short ,blank 
+0x02d2 001141 branch mouse3_0_check_reconn_target + 3 
+:      001143 p_mouse4_0_check_reconn_target:
+0x02d3 001144 jam zcode_12 ,mem_zcode_temp_param0 
+0x02d4 001145 branch p_zcode_entrance 
+:      001153 p_mouse_init_sunt:
+0x02d5 001154 call p_mouse_spi_init 
+0x02d6 001155 call mouse_spi_sdio_gpio_pollup 
+:      001156 p_mouse_init_sensor:
+0x02d7 001157 call mouse_read_sensor_id 
+0x02d8 001158 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+0x02d9 001159 beq p3065_id1 ,p_mouse_p3065_init_param 
+0x02da 001160 call mouse_twspi_reset 
+0x02db 001161 nop 1000 
+0x02dc 001162 branch p_mouse_init_sensor 
+:      001164 p_mouse_init_p32xx_id2_judge:
+0x02dd 001165 call p_mouse_sensor_poweron 
+0x02de 001166 fetch 1 ,mem_sensor_id2 
+0x02df 001167 beq p_mx8650 ,p_mouse_mx8650_init_param 
+0x02e0 001168 beq pka8_id2 ,p_mouse_ka8_init_param 
+0x02e1 001170 branch mouse_init_p32xx_id2_judge 
+:      001172 p_mouse_mx8650_init_param:
+0x02e2 001173 jam mx8650 ,mem_config_sensor_type 
+0x02e3 001174 setarg 0x8006 
+0x02e4 001175 call twspi_write 
+0x02e5 001176 call delay_10ms 
+0x02e6 001177 arg mem_sensor_8650_init ,regc 
+:      001178 p_sensor_wr_seq:
+0x02e7 001179 ifetch 2 ,regc 
+0x02e8 001180 arg 0xffff ,temp 
+0x02e9 001181 isub temp ,null 
+0x02ea 001182 rtn zero 
+0x02eb 001183 call twspi_write 
+0x02ec 001184 nop 12000 
+0x02ed 001185 increase 2 ,regc 
+0x02ee 001186 branch p_sensor_wr_seq 
+:      001188 p_mouse_ka8_init_param:
+0x02ef 001189 jam ka8 ,mem_config_sensor_type 
+0x02f0 001190 arg mem_sensor_ka8_init ,regc 
+0x02f1 001191 branch p_sensor_wr_seq 
+:      001210 p_mouse_p3065_init_param:
+0x02f2 001211 call p_mouse_sensor_poweron 
+0x02f3 001212 fetch 1 ,mem_sensor_id2 
+0x02f4 001213 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x02f5 001214 jam p3065 ,mem_config_sensor_type 
+0x02f6 001215 rtn 
+:      001217 p_mouse_setting_config:
+0x02f7 001218 jam zcode_80 ,mem_zcode_temp_param0 
+0x02f8 001219 branch p_zcode_entrance 
+:      001222 p_flash_ncs_disable:
+0x02f9 001223 fetcht 1 ,mem_flash_ncs_gpio 
+0x02fa 001224 branch gpio_out_inactive 
+:      001226 p_spid_init_flash:
+0x02fb 001227 jam 0x40 ,core_spid_ctrl 
+0x02fc 001228 jam 0x0 ,core_spid_delay 
+0x02fd 001229 hfetch 1 ,core_gpio_sel1 
+0x02fe 001230 set0 0 ,pdata 
+0x02ff 001231 set0 1 ,pdata 
+0x0300 001232 set1 3 ,pdata 
+0x0301 001233 set0 4 ,pdata 
+0x0302 001234 hstore 1 ,core_gpio_sel1 
+0x0303 001235 setarg 0 
+0x0304 001236 store 4 ,mem_spid_tbuf 
+0x0305 001237 hfetch 1 ,core_gpio_pd3 
+0x0306 001238 set0 0 ,pdata 
+0x0307 001239 hstore 1 ,core_gpio_pd3 
+0x0308 001240 rtn 
+:      001242 p_mouse_load_flash_info_check:
+0x0309 001243 call p_flash_release_deep_power_down 
+0x030a 001244 call mouse_load_flash_flag 
+0x030b 001245 fetch 2 ,mem_store_flag 
+0x030c 001246 arg eeprom_init_flag ,temp 
+0x030d 001247 isub temp ,null 
+0x030e 001248 branch p_mouse_load_flash_device_info ,zero 
+0x030f 001249 storet 2 ,mem_store_flag 
+0x0310 001250 call mouse_ble_init_address 
+0x0311 001251 fetch 1 ,mem_config_sensor_motion 
+0x0312 001252 store 1 ,mem_mouse_dpi 
+0x0313 001253 fetch 4 ,mem_mouse_24g_addr_init 
+0x0314 001254 store 4 ,mem_mouse_24g_addr 
+0x0315 001255 store 4 ,mem_24g_addr 
+:      001256 p_mouse_store_flash_device_info:
+0x0316 001257 call p_flash_release_deep_power_down 
+0x0317 001258 call p_flash_erase_sector 
+0x0318 001259 call p_mouse_information_flash_parameters 
+0x0319 001260 call p_spid_write_flash 
+0x031a 001261 call p_wait_flash_done 
+:      001263 p_mouse_store_flash_user_data:
+0x031b 001264 call p_spid_init_flash 
+0x031c 001265 arg 7 ,temp 
+0x031d 001266 arg mem_mouse_flash_start_temp ,rega 
+0x031e 001267 arg mouse_user_data_offect ,regb 
+0x031f 001268 fetch 3 ,mem_flash_base 
+0x0320 001269 iadd regb ,pdata 
+0x0321 001270 call p_spid_write_flash 
+0x0322 001271 call p_wait_flash_done 
+0x0323 001272 call p_flash_deep_power_down 
+:      001273 p_mouse_spi_init:
+0x0324 001274 jam 0x76 ,mem_spi_init_clk 
+0x0325 001275 branch mouse_spi_init 
+:      001277 p_flash_erase_sector:
+0x0326 001278 fetch 3 ,mem_flash_base 
+0x0327 001279 store 3 ,mem_spi_write_addr 
+0x0328 001280 call flash_erase_sector + 2 
+:      001281 p_wait_flash_done:
+0x0329 001282 setarg 100000 
+0x032a 001283 call sleep 
+0x032b 001284 call spid_unlock_flash 
+0x032c 001285 setarg mem_spid_rbuf 
+0x032d 001286 hstore 2 ,core_spid_rxaddr 
+0x032e 001287 setarg flash_read_satus 
+0x032f 001288 call spid_read_reg 
+0x0330 001289 bbit1 flash_status_wip ,p_wait_flash_done 
+0x0331 001290 rtn 
+:      001292 p_spid_write_flash:
+0x0332 001293 copy pdata ,regc 
+0x0333 001294 copy rega ,pdata 
+0x0334 001295 increase -4 ,pdata 
+0x0335 001296 copy pdata ,regb 
+0x0336 001297 ifetch 4 ,regb 
+0x0337 001298 store 4 ,mem_write_flash_head_temp 
+0x0338 001299 copy regc ,pdata 
+0x0339 001300 call spid_write_flash 
+0x033a 001301 fetch 4 ,mem_write_flash_head_temp 
+0x033b 001302 istore 4 ,regb 
+0x033c 001303 rtn 
+:      001305 p_mouse_information_flash_parameters:
+0x033d 001306 setarg mem_mouse_information_end 
+0x033e 001307 arg mem_mouse_information_start ,temp 
+0x033f 001308 isub temp ,temp 
+0x0340 001309 fetch 3 ,mem_flash_base 
+0x0341 001310 arg mem_mouse_information_start ,rega 
+0x0342 001311 rtn 
+:      001313 p_mouse_read_flash:
+0x0343 001314 call p_flash_release_deep_power_down 
+0x0344 001315 call p_mouse_information_flash_parameters 
+0x0345 001316 branch spid_read_flash 
+:      001318 p_mouse_load_flash_device_info:
+0x0346 001319 call p_mouse_read_flash 
+0x0347 001320 call p_mouse_load_flash_user_data 
+0x0348 001323 call mouse_select_btdevice 
+0x0349 001324 call mouse_select_reconn_device 
+0x034a 001325 fetch 4 ,mem_mouse_24g_addr 
+0x034b 001326 store 4 ,mem_24g_addr 
+0x034c 001327 rtn 
+:      001329 p_flash_deep_power_down:
+0x034d 001330 jam flash_command_deep_power_down ,mem_temp 
+:      001331 p_spid_write_flash_cmd:
+0x034e 001332 call p_spid_init_flash 
+0x034f 001333 call delay_nop100 
+0x0350 001334 call spid_unlock_flash 
+0x0351 001335 arg mem_write_flash_head_temp ,rega 
+0x0352 001336 fetcht 1 ,mem_temp 
+0x0353 001337 call spid_write_flash_common 
+0x0354 001338 branch delay_nop100 
+:      001340 p_flash_release_deep_power_down:
+0x0355 001341 jam flash_command_release_deep_power_down ,mem_temp 
+0x0356 001342 branch p_spid_write_flash_cmd 
+:      001344 p_mouse_fast_conn_disable:
+0x0357 001345 jam 0x5a ,mem_mouse_fast_conn_flag 
+0x0358 001346 rtn 
+:      001347 p_mouse_fast_conn_le_switch_adv:
+0x0359 001348 jam 1 ,mem_le_switch_adv_timer 
+0x035a 001349 jam 1 ,mem_le_switch_adv_flag 
+:      001350 p_mouse_fast_conn_init:
+0x035b 001351 jam 0xff ,mem_mouse_fast_conn_flag 
+0x035c 001352 fetch 6 ,mem_24g_allpowerful_addr 
+0x035d 001353 store 6 ,mem_le_lap 
+0x035e 001354 rtn 
+:      001357 p_mouse_load_flash_user_data:
+0x035f 001358 call p_flash_release_deep_power_down 
+0x0360 001359 arg 7 ,temp 
+0x0361 001360 arg mem_mouse_flash_start_temp ,rega 
+0x0362 001361 arg mouse_user_data_offect ,regb 
+0x0363 001362 fetch 3 ,mem_flash_base 
+0x0364 001363 iadd regb ,pdata 
+0x0365 001364 branch spid_read_flash 
+:      001394 p_mouse_start_24g_mode:
+0x0366 001397 fetch 1 ,mem_power_on_flag 
+0x0367 001398 bbit1 2 ,p_g24_start_24g_mode 
+:      001399 p_mouse_start_24g_pair:
+0x0368 001400 fetch 4 ,mem_mouse_24g_addr_init 
+0x0369 001401 store 4 ,mem_24g_addr 
+0x036a 001402 call p_mouse_store_flash_device_info 
+:      001403 p_g24_auto_pair_start:
+0x036b 001404 jam zcode_41 ,mem_zcode_temp_param0 
+0x036c 001405 branch p_zcode_entrance 
+:      001407 p_mouse_g24_package_data:
+0x036d 001408 call mouse_g24_package_data 
+0x036e 001409 fetch 2 ,mem_mouse_z 
+0x036f 001410 rtn blank 
+:      001411 p_g24_transmit_by_interrupt_enable:
+0x0370 001412 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+0x0371 001413 setarg 0 
+0x0372 001414 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0x0373 001415 rtn 
+:      001417 p_mouse_le_txbuff_save:
+0x0374 001418 arg mem_le_tx_buffer0 ,contr 
+0x0375 001419 arg mem_le_tx_buffer0_omemalloc ,contw 
+0x0376 001420 call p_mouse_le_txbuff_copy 
+0x0377 001421 arg mem_le_tx_buffer1 ,contr 
+0x0378 001422 call p_mouse_le_txbuff_copy 
+0x0379 001423 arg mem_le_tx_buffer2 ,contr 
+0x037a 001424 call p_mouse_le_txbuff_copy 
+0x037b 001425 arg mem_le_tx_buffer3 ,contr 
+:      001426 p_mouse_le_txbuff_copy:
+0x037c 001427 arg 27 ,loopcnt 
+0x037d 001428 branch memcpy 
+:      001430 p_mouse_le_txbuff_load:
+0x037e 001431 arg mem_le_tx_buffer0_omemalloc ,contr 
+0x037f 001432 arg mem_le_tx_buffer0 ,contw 
+0x0380 001433 call p_mouse_le_txbuff_copy 
+0x0381 001434 arg mem_le_tx_buffer1 ,contw 
+0x0382 001435 call p_mouse_le_txbuff_copy 
+0x0383 001436 arg mem_le_tx_buffer2 ,contw 
+0x0384 001437 call p_mouse_le_txbuff_copy 
+0x0385 001438 arg mem_le_tx_buffer3 ,contw 
+0x0386 001439 branch p_mouse_le_txbuff_copy 
+:      001442 p_mouse_le_current_mult_update:
+0x0387 001443 jam 0 ,mem_lpm_mult 
+0x0388 001444 jam 30 ,mem_mouse_le_current_mult_timer 
+0x0389 001445 rtn 
+:      001447 p_mouse_data_xy_release:
+0x038a 001448 fetch 1 ,mem_mouse_long_mult_flag 
+0x038b 001449 rtnne 1 
+0x038c 001450 setarg 0 
+0x038d 001451 store 1 ,mem_mouse_long_mult_flag 
+0x038e 001452 store 4 ,mem_mouse_x 
+0x038f 001453 branch p_mouse_init_sensor_reset 
+:      001455 p_mouse_sensor_poweron:
+0x0390 001456 call p_mouse_spi_init 
+0x0391 001457 arg mem_sensor_poweron_init ,regc 
+0x0392 001458 call p_sensor_wr_seq 
+:      001459 p_mouse_dpi_config:
+0x0393 001460 fetch 1 ,mem_mouse_dpi 
+0x0394 001461 bne 0xff ,p_mouse_seting_dpi 
+:      001462 p_mouse_dpi_config_default:
+0x0395 001463 fetch 1 ,mem_config_sensor_motion 
+0x0396 001464 store 1 ,mem_mouse_dpi 
+0x0397 001465 branch p_mouse_seting_dpi 
+:      001467 p_mouse_le:
+0x0398 001468 call le_fifo_check_nearly_full 
+0x0399 001469 nrtn blank 
+0x039a 001470 fetch 1 ,mem_mouse_fast_conn_flag 
+0x039b 001471 beq 0xff ,p_mouse_le_next 
+0x039c 001472 fetch 1 ,mem_le_connect_status_flag 
+0x039d 001473 and pdata ,0x03 ,pdata 
+0x039e 001474 rtnne 0x03 
+:      001475 p_mouse_le_next:
+0x039f 001476 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x03a0 001477 call p_mouse_clear_sensor_data ,blank 
+0x03a1 001478 fetch mouse_flag_len ,mem_mouse_flag 
+0x03a2 001479 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x03a3 001480 call mouse_motion 
+0x03a4 001481 nrtn user 
+0x03a5 001482 call p_mouse_le_current_mult_update 
+0x03a6 001483 call p_mouse_data_xy_release 
+0x03a7 001484 call p_mouse_wheel_trigger 
+:      001485 p_mouse_data_push:
+0x03a8 001486 arg mem_mouse_key ,rega 
+0x03a9 001487 call queue_push 
+0x03aa 001488 call p_mouse_queue_increase ,user 
+0x03ab 001490 rtn 
+:      001492 p_mouse_data_init:
+0x03ac 001493 jam 7 ,mem_mouse_data_queue 
+0x03ad 001494 jam 4 ,mem_mouse_data_queue + 1 
+0x03ae 001495 setarg mem_mouse_data_queue 
+0x03af 001496 store 2 ,mem_queue_ptr 
+0x03b0 001497 branch queue_init 
+:      001499 p_mouse_queue_increase:
+0x03b1 001500 fetch 1 ,mem_mouse_data_queue_num 
+0x03b2 001501 increase 1 ,pdata 
+0x03b3 001502 store 1 ,mem_mouse_data_queue_num 
+0x03b4 001503 rtn 
+:      001505 p_mouse_data_pull:
+0x03b5 001506 arg mem_mouse_key ,rega 
+0x03b6 001507 call queue_pop 
+0x03b7 001508 branch p_mouse_fill_data_le ,user 
+0x03b8 001509 rtn 
+:      001511 p_mouse_fill_data_le:
+0x03b9 001512 call le_clear_md 
+0x03ba 001513 fetch 1 ,mem_mouse_data_queue_num 
+0x03bb 001514 sub pdata ,1 ,null 
+0x03bc 001515 ncall le_set_md ,positive 
+0x03bd 001516 fetch 1 ,mem_mouse_data_queue_num 
+0x03be 001517 rtn blank 
+0x03bf 001518 increase -1 ,pdata 
+0x03c0 001519 store 1 ,mem_mouse_data_queue_num 
+0x03c1 001520 branch mouse_fill_data_le 
+:      001523 p_mouse_wheel_trigger:
+0x03c2 001524 fetch 2 ,mem_mouse_z 
+0x03c3 001525 rtn blank 
+0x03c4 001526 jam 1 ,mem_mouse_wheel_trigger 
+0x03c5 001527 jam 10 ,mem_mouse_wheel_trigger_timer 
+0x03c6 001528 rtn 
+:      001530 p_mouse_clear_sensor_data:
+0x03c7 001531 jam 1 ,mem_mouse_clear_sensor_data_flag 
+0x03c8 001532 call le_set_config_more_data 
+:      001533 p_mouse_init_sensor_reset:
+0x03c9 001534 jam 1 ,mem_mouse_init_sensor_reset_flag 
+0x03ca 001535 branch p_mouse_init_sunt 
+:      001537 p_mouse_bt:
+0x03cb 001538 rtn attempt 
+0x03cc 001539 fetch 1 ,mem_app_handshake_flag 
+0x03cd 001540 rtn blank 
+0x03ce 001541 call l2cap_malloc_is_fifo_nearly_full 
+0x03cf 001542 nrtn blank 
+0x03d0 001543 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x03d1 001544 call p_mouse_clear_sensor_data ,blank 
+0x03d2 001545 fetch mouse_flag_len ,mem_mouse_flag 
+0x03d3 001546 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x03d4 001547 bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+0x03d5 001548 call mouse_motion 
+0x03d6 001549 nrtn user 
+0x03d7 001550 call p_mouse_le_current_mult_update 
+0x03d8 001551 call p_mouse_data_xy_release 
+0x03d9 001552 call p_mouse_wheel_trigger 
+0x03da 001553 fetch 1 ,mem_mouse_bt_boot_mode 
+0x03db 001554 beq 1 ,p_mouse_send_data_boot_mode 
+0x03dc 001555 fetch 1 ,mem_mouse_bt_send_first_package_flag 
+0x03dd 001556 rtn blank 
+0x03de 001557 branch mouse_send_data 
+:      001559 p_mouse_send_data_boot_mode:
+0x03df 001560 fetch 1 ,mem_mouse_key 
+0x03e0 001561 store 1 ,mem_mouse_bt_boot_data 
+0x03e1 001562 fetch 1 ,mem_mouse_x 
+0x03e2 001563 istore 1 ,contw 
+0x03e3 001564 fetch 1 ,mem_mouse_y 
+0x03e4 001565 istore 1 ,contw 
+0x03e5 001566 fetch 2 ,mem_mouse_z 
+0x03e6 001567 istore 2 ,contw 
+0x03e7 001569 arg 7 ,rega 
+0x03e8 001570 call hid_malloc_tx_buff 
+0x03e9 001571 fetch 2 ,mem_hid_int_remote_cid 
+0x03ea 001572 istore 2 ,contw 
+0x03eb 001573 setarg 0x02a1 
+0x03ec 001574 istore 2 ,contw 
+0x03ed 001575 fetch 5 ,mem_mouse_bt_boot_data 
+0x03ee 001576 istore 5 ,contw 
+0x03ef 001577 rtn 
+:      001580 p_mouse_idle:
+0x03f0 001581 call ui_check_paring_button 
+0x03f1 001582 call p_mouse_dpi_check 
+0x03f2 001583 branch mouse_wheel_check 
+:      001585 p_mouse_dpi_check:
+0x03f3 001586 fetcht 1 ,mem_dpi_button_gpio 
+0x03f4 001587 call p_gpio_set_input_pd 
+0x03f5 001588 fetcht 1 ,mem_dpi_button_gpio 
+0x03f6 001589 call gpio_get_bit 
+0x03f7 001590 branch p_mouse_dpi_up ,true 
+0x03f8 001591 call p_gpio_set_input_pu 
+:      001592 p_mouse_dpi_down:
+0x03f9 001593 fetch 1 ,mem_mouse_dpi_button_state 
+0x03fa 001594 rtneq dpi_button_state_down 
+0x03fb 001595 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+0x03fc 001596 fetch 1 ,mem_mouse_dpi 
+0x03fd 001597 increase 1 ,pdata 
+0x03fe 001598 and pdata ,0x03 ,pdata 
+0x03ff 001599 store 1 ,mem_mouse_dpi 
+0x0400 001603 branch mouse_seting_dpi 
+:      001604 p_mouse_dpi_up:
+0x0401 001605 call p_gpio_set_input_pu 
+0x0402 001606 branch mouse_dpi_up 
+:      001608 p_mouse_priority_bb_event:
+0x0403 001609 copy regc ,pdata 
+0x0404 001610 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0x0405 001611 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0x0406 001612 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+0x0407 001613 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0x0408 001614 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0x0409 001615 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+0x040a 001616 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+0x040b 001617 beq bt_evt_switch_not_accept ,app_bt_role_switch 
+0x040c 001618 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+0x040d 001619 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+0x040e 001620 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+0x040f 001621 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+0x0410 001622 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0x0411 001623 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0x0412 001624 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0x0413 001625 branch mouse_priority_bb_event + 1 
+:      001627 p_mouse_le_bb_event_connected:
+0x0414 001628 call p_mouse_init_sensor_reset 
+0x0415 001629 call mouse_le_bb_event_connected 
+0x0416 001630 setarg 0 
+0x0417 001631 store 3 ,mem_le_switch_adv_flag 
+0x0418 001632 fetch 6 ,mem_mouse_24g_addr_init 
+0x0419 001633 fetcht 6 ,mem_device1_addr 
+0x041a 001634 isub temp ,null 
+0x041b 001635 ncall p_mouse_fast_conn_disable ,zero 
+0x041c 001636 call app_ble_store_reconn_info 
+0x041d 001637 jam latest_mode_bt ,mem_mouse_latest_mode 
+0x041e 001638 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x041f 001639 nbranch p_mouse_le_bb_event_connected_next ,blank 
+0x0420 001640 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
+:      001641 p_mouse_le_bb_event_connected_next:
+0x0421 001642 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
+0x0422 001643 jam 0 ,mem_mouse_le_adv_start 
+0x0423 001644 jam 1 ,mem_mouse_le_bb_connected_flag 
+0x0424 001645 jam 0 ,mem_mouse_le_not_tx_disconn 
+0x0425 001646 jam 0 ,mem_mouse_start_discovery_enable 
+0x0426 001647 call p_g24_check_51cmd_stop_24g 
+0x0427 001648 branch p_mouse_data_init 
+:      001651 p_mouse_le_bb_disconnected:
+0x0428 001652 call p_mouse_sensor_powerdown_check 
+0x0429 001653 jam zcode_a2 ,mem_zcode_temp_param0 
+0x042a 001654 branch p_zcode_entrance 
+:      001656 p_mouse_le_enc_info:
+:      001657 p_app_updata_le_param:
+0x042b 001658 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x042c 001659 branch ui_ipc_send_cmd 
+:      001661 p_mouse_le_ll_start_encryt:
+0x042d 001662 jam zcode_b3 ,mem_zcode_temp_param0 
+0x042e 001663 branch p_zcode_entrance 
+:      001665 p_mouse_le_conn_param_update_rsp_recieved:
+0x042f 001666 jam zcode_a1 ,mem_zcode_temp_param0 
+0x0430 001667 branch p_zcode_entrance 
+:      001670 p_mouse_bb_event_reconn_timeout:
+:      001671 p_mouse_bb_event_reconn_failed:
+0x0431 001672 jam zcode_a3 ,mem_zcode_temp_param0 
+0x0432 001673 branch p_zcode_entrance 
+:      001675 p_mouse_irtual_cable_unplug:
+0x0433 001676 jam zcode_70 ,mem_zcode_temp_param0 
+0x0434 001677 branch p_zcode_entrance 
+:      001679 p_mouse_sniff_not_accept:
+0x0435 001680 jam zcode_b1 ,mem_zcode_temp_param0 
+0x0436 001681 branch p_zcode_entrance 
+:      001683 p_mouse_bb_event_connected:
+0x0437 001684 call p_mouse_store_eeprom_enable 
+0x0438 001685 call p_mouse_init_sensor_reset 
+0x0439 001686 setarg 0 
+0x043a 001687 store 3 ,mem_le_switch_adv_flag 
+0x043b 001688 jam latest_mode_bt ,mem_mouse_latest_mode 
+0x043c 001689 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
+0x043d 001690 jam 0 ,mem_mouse_le_not_tx_disconn 
+0x043e 001691 jam 0 ,mem_mouse_start_discovery_enable 
+0x043f 001692 call p_g24_check_51cmd_stop_24g 
+0x0440 001693 call p_mouse_null_enter_hibernate_disable 
+0x0441 001694 jam 0 ,mem_mouse_send_switch_req_timer 
+0x0442 001695 branch mouse_stop_discovery 
+:      001698 p_mouse_bb_event_disconnected:
+0x0443 001699 call p_mouse_sensor_powerdown_check 
+0x0444 001700 jam zcode_b4 ,mem_zcode_temp_param0 
+0x0445 001701 branch p_zcode_entrance 
+:      001703 p_mouse_enter_sniff_check:
+0x0446 001704 jam zcode_b2 ,mem_zcode_temp_param0 
+0x0447 001705 branch p_zcode_entrance 
+:      001707 p_mouse_24g_pairing_complete:
+0x0448 001708 call p_g24_transmit_by_interrupt_enable 
+0x0449 001709 call p_mouse_init_sensor_reset 
+0x044a 001710 jam zcode_50 ,mem_zcode_temp_param0 
+0x044b 001711 branch p_zcode_entrance 
+:      001713 p_mouse_24g_attempt_fail:
+0x044c 001714 call p_mouse_sensor_powerdown_check 
+0x044d 001715 jam zcode_51 ,mem_zcode_temp_param0 
+0x044e 001716 branch p_zcode_entrance 
+:      001719 p_mouse_24g_attempt_success:
+0x044f 001720 call p_mouse_init_sensor_reset 
+0x0450 001721 jam zcode_52 ,mem_zcode_temp_param0 
+0x0451 001722 branch p_zcode_entrance 
+:      001724 p_mouse_before_hibernate:
+0x0452 001725 call p_mouse_sensor_powerdown_check 
+0x0453 001726 jam zcode_a0 ,mem_zcode_temp_param0 
+0x0454 001727 branch p_zcode_entrance 
+:      001729 p_mouse_sensor_powerdown_check:
+0x0455 001730 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0x0456 001731 rtn blank 
+0x0457 001732 jam 0 ,mem_mouse_init_sensor_reset_flag 
+:      001733 p_mouse_sensor_powerdown:
+0x0458 001734 call p_mouse_init_sunt 
+0x0459 001735 setarg 0x06 
+0x045a 001736 call twspi_read 
+0x045b 001737 or pdata ,0x08 ,pdata 
+0x045c 001738 lshift8 pdata ,pdata 
+0x045d 001739 add pdata ,0x06 ,pdata 
+0x045e 001740 branch twspi_write 
+:      001743 p_mouse_bb_event_timer:
+0x045f 001744 call p_mouse_le_switch_adv_timer 
+0x0460 001745 call p_mouse_multi_led_blink_timer 
+0x0461 001746 call p_mouse_wheel_trigger_timer 
+0x0462 001747 call p_mouse_null_enter_hibernate_timer 
+0x0463 001748 call p_mouse_bt_discovery_check 
+0x0464 001749 call mouse_check_discovery_timeout_timer 
+0x0465 001751 call p_mouse_g24_long_sleep_param_update_timer 
+0x0466 001752 call p_mouse_g24_stop_mode_timeout_timer 
+0x0467 001753 call p_mouse_g24_stop_pair_mode_timeout_timer 
+0x0468 001754 call p_mouse_check_direct_timeout_timer 
+0x0469 001755 call p_mouse_le_enable_att_list_timer 
+0x046a 001756 call p_le_send_smp_security_request_timer 
+0x046b 001757 call p_mouse_le_current_mult_update_timer 
+0x046c 001758 call p_mouse_send_switch_req_timer 
+0x046d 001759 call mouse_check_hid_handshake_timer 
+0x046e 001760 call p_mouse_bt_check_sniff_req_timeout_timer 
+0x046f 001761 call p_mouse_poweron_bt_start_reconn_timer 
+0x0470 001762 branch mouse_check_no_data_timeout_timer 
+:      001764 p_mouse_poweron_bt_start_reconn_timer:
+0x0471 001765 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
+0x0472 001766 arg p_mouse_check_reconn_target ,regb 
+0x0473 001767 branch timer_single_step 
+:      001784 p_mouse_le_switch_adv_timer:
+0x0474 001785 fetch 1 ,mem_le_switch_adv_flag 
+0x0475 001786 rtn blank 
+0x0476 001787 arg mem_le_switch_adv_timer ,regc 
+0x0477 001788 arg p_mouse_le_switch_adv ,regb 
+0x0478 001789 branch timer_single_step 
+:      001790 p_mouse_le_switch_adv:
+0x0479 001791 jam 1 ,mem_le_switch_adv_timer 
+0x047a 001792 fetch 1 ,mem_le_switch_adv_count 
+0x047b 001793 increase 1 ,pdata 
+0x047c 001794 and_into 1 ,pdata 
+0x047d 001795 store 1 ,mem_le_switch_adv_count 
+0x047e 001796 beq 0 ,p_mouse_check_fast_conn_adv_start1 
+:      001797 p_check_51cmd_adv:
+0x047f 001798 fetch 6 ,mem_le_normal_lap 
+0x0480 001799 store 6 ,mem_le_lap 
+0x0481 001800 call p_mouse_le_adv_data_update 
+0x0482 001801 branch check_51cmd_adv 
+:      001803 p_mouse_le_adv_data_update:
+0x0483 001804 jam 0x1f ,mem_le_adv_data_len 
+0x0484 001805 jam 0x1f ,mem_le_scan_data_len 
+0x0485 001806 call p_mouse_store_eeprom_enable 
+0x0486 001807 arg mem_le_adv_swift_pair ,contr 
+:      001808 p_le_adv_data_update:
+0x0487 001809 arg mem_le_adv_data + 11 ,contw 
+0x0488 001810 arg 19 ,loopcnt 
+0x0489 001811 call memcpy 
+0x048a 001812 branch le_modified_name_adv 
+:      001814 p_mouse_store_eeprom_enable:
+0x048b 001815 arg mouse_store_eeprom_flag ,queue 
+0x048c 001816 branch mouse_enable_function_flag 
+:      001818 p_mouse_check_fast_conn_adv_start:
+:      001819 p_mouse_check_fast_conn_adv_start1:
+0x048d 001820 jam 0 ,mem_le_adv_data_len 
+0x048e 001821 jam 0 ,mem_le_scan_data_len 
+0x048f 001822 arg mouse_store_eeprom_flag ,queue 
+0x0490 001823 call mouse_disable_function_flag 
+0x0491 001824 branch p_mouse_fast_conn_init 
+:      001827 p_mouse_g24_long_sleep_param_update_timer:
+0x0492 001828 arg mem_24g_long_sleep_param_update_timer ,regc 
+0x0493 001829 arg p_mouse_g24_long_sleep_normal_param ,regb 
+0x0494 001830 branch timer_single_step 
+:      001831 p_mouse_g24_long_sleep_normal_param:
+0x0495 001832 setarg g24_long_sleep_step3 
+0x0496 001833 store 3 ,mem_24g_enter_hibernate 
+:      001834 p_mouse_long_mult_flag_enable:
+0x0497 001835 jam 1 ,mem_mouse_long_mult_flag 
+0x0498 001836 rtn 
+:      001838 p_mouse_g24_stop_mode_timeout_timer:
+0x0499 001839 arg mem_24g_stop_g24_mode_timeout ,regc 
+0x049a 001840 arg p_g24_auto_pair_start ,regb 
+0x049b 001841 branch timer_single_step_2b 
+:      001843 p_mouse_g24_stop_pair_mode_timeout_timer:
+0x049c 001844 arg mem_24g_stop_g24_pair_mode_timerout ,regc 
+0x049d 001845 arg p_mouse_g24_stop_mode_timeout ,regb 
+0x049e 001846 branch timer_single_step_2b 
+:      001848 p_mouse_g24_stop_mode_timeout:
+0x049f 001849 jam 1 ,mem_24g_stop_g24_mode 
+0x04a0 001850 fetch 1 ,mem_le_switch_adv_flag 
+0x04a1 001851 nbranch p_mouse_wait_g24_led_off ,blank 
+0x04a2 001855 rtn 
+:      001857 p_mouse_wait_g24_led_off:
+0x04a3 001858 jam 1 ,mem_24g_stop_g24_mode_timeout 
+0x04a4 001859 fetch 1 ,mem_mouse_multi_led_blink_poweron3s_flag 
+0x04a5 001860 nrtn blank 
+0x04a6 001861 jam 0 ,mem_24g_stop_g24_mode_timeout 
+0x04a7 001863 rtn 
+:      001866 p_mouse_send_switch_req_timer:
+0x04a8 001867 arg mem_mouse_send_switch_req_timer ,regc 
+0x04a9 001868 arg host_create_conn_resend ,regb 
+0x04aa 001869 branch timer_single_step 
+:      001871 p_mouse_bt_check_sniff_req_timeout_timer:
+0x04ab 001872 arg mem_mouse_bt_send_first_package_timer ,regc 
+0x04ac 001873 arg p_mouse_bt_send_first_package ,regb 
+0x04ad 001874 branch timer_single_step 
+:      001875 p_mouse_bt_send_first_package:
+0x04ae 001876 jam 1 ,mem_mouse_bt_send_first_package_flag 
+0x04af 001877 rtn 
+:      001880 p_mouse_check_direct_timeout_timer:
+0x04b0 001881 arg mem_mouse_direct_timer ,regc 
+0x04b1 001882 arg p_mouse_check_direct_timeout ,regb 
+0x04b2 001883 branch timer_single_step_2b 
+:      001884 p_mouse_check_direct_timeout:
+0x04b3 001885 jam 1 ,mem_mouse_le_not_tx_disconn 
+0x04b4 001886 call p_mouse_long_button_bt_normal_discovery 
+0x04b5 001887 branch p_mouse_bt_discovery_button_up_init 
+:      001889 p_mouse_le_enable_att_list_timer:
+0x04b6 001890 arg mem_le_start_encrypt_timer ,regc 
+0x04b7 001891 arg mouse_le_write_enable ,regb 
+0x04b8 001892 branch timer_single_step 
+:      001894 p_le_send_smp_security_request_timer:
+0x04b9 001895 fetch 1 ,mem_mouse_le_bb_connected_flag 
+0x04ba 001896 rtn blank 
+0x04bb 001897 arg mem_mouse_send_secutiry_request_timer ,regc 
+0x04bc 001898 arg p_le_pairing_sm_start_check ,regb 
+0x04bd 001899 branch timer_single_step 
+:      001900 p_le_pairing_sm_start_check:
+0x04be 001901 fetch 1 ,mem_le_send_security_request_flag 
+0x04bf 001902 nrtn blank 
+0x04c0 001903 branch le_pairing_sm_start 
+:      001905 p_mouse_le_current_mult_update_timer:
+0x04c1 001906 arg mem_mouse_le_current_mult_timer ,regc 
+0x04c2 001907 arg p_mouse_le_current_mult_reinit ,regb 
+0x04c3 001908 branch timer_single_step 
+:      001909 p_mouse_le_current_mult_reinit:
+0x04c4 001910 fetch 1 ,mem_lpm_mult_init 
+0x04c5 001911 store 1 ,mem_lpm_mult 
+0x04c6 001912 branch p_mouse_long_mult_flag_enable 
+:      001914 p_mouse_wheel_trigger_timer:
+0x04c7 001915 arg mem_mouse_wheel_trigger_timer ,regc 
+0x04c8 001916 arg p_mouse_wheel_trigger_disable ,regb 
+0x04c9 001917 branch timer_single_step 
+:      001918 p_mouse_wheel_trigger_disable:
+0x04ca 001919 jam 0 ,mem_mouse_wheel_trigger 
+0x04cb 001920 rtn 
+:      001922 p_mouse_bt_discovery_check:
+:      001923 p_mouse_bt_discovery_commbination_key:
+0x04cc 001924 fetch 1 ,mem_mouse_dpi_button_state 
+0x04cd 001925 branch p_mouse_bt_discovery_commbination_key_down ,blank 
+0x04ce 001926 call p_mouse_check_key_gpio 
+0x04cf 001927 beq mouse_lmr_button ,p_mouse_bt_discovery_commbination_key_down 
+:      001928 p_mouse_bt_discovery_commbination_key_up:
+0x04d0 001929 fetch 1 ,mem_ui_button_timeout 
+0x04d1 001930 store 1 ,mem_combination_ui_button_count 
+0x04d2 001931 fetch 1 ,mem_bt_discovey_button_statue 
+0x04d3 001932 rtneq dpi_button_state_up 
+0x04d4 001933 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+:      001934 p_mouse_bt_discovery_button_up_init:
+0x04d5 001935 arg mouse_bt_discovery_button_long_down_flag ,queue 
+0x04d6 001936 call mouse_disable_function_flag 
+0x04d7 001937 branch mouse_bt_discovery_button_down_disable 
+:      001938 p_mouse_bt_discovery_commbination_key_down:
+0x04d8 001939 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+0x04d9 001940 call p_mouse_bt_discovery_timer 
+0x04da 001941 branch mouse_bt_discovery_commbination_key_down + 1 
+:      001943 p_mouse_bt_discovery_timer:
+0x04db 001944 arg mem_combination_ui_button_count ,regc 
+0x04dc 001945 arg p_mouse_long_button_bt_discovery ,regb 
+0x04dd 001946 branch timer_single_step 
+:      001947 p_mouse_long_button_bt_discovery:
+0x04de 001948 fetch 1 ,mem_le_switch_adv_flag 
+0x04df 001949 nbranch p_mouse_fast_conn_adv_switch_timer_reinit ,blank 
+:      001950 p_mouse_long_button_bt_normal_discovery:
+0x04e0 001951 isolate1 mark_24g ,mark 
+0x04e1 001952 call p_mouse_le_adv_start ,true 
+0x04e2 001953 fetch 1 ,mem_mouse_latest_mode 
+0x04e3 001954 sub pdata ,latest_mode_null ,null 
+0x04e4 001955 call p_mouse_le_adv_start ,zero 
+0x04e5 001957 call p_mouse_le_adv_data_update 
+0x04e6 001958 fetch 2 ,mem_ui_state_map 
+0x04e7 001959 isolate1 ui_state_bt_reconnect ,pdata 
+0x04e8 001960 call mouse_cancel_reconnect ,true 
+0x04e9 001961 arg mouse_bt_discovery_button_long_down_flag ,queue 
+0x04ea 001962 call mouse_enable_function_flag 
+0x04eb 001963 branch mouse_long_button_bt_discovry 
+:      001965 p_mouse_le_adv_start:
+0x04ec 001966 jam 1 ,mem_mouse_le_adv_start 
+0x04ed 001967 rtn 
+:      001969 p_mouse_fast_conn_adv_switch_timer_reinit:
+0x04ee 001970 fetch 2 ,mem_discovery_timeout 
+0x04ef 001971 store 2 ,mem_mouse_discovery_timer 
+0x04f0 001972 rtn 
+:      001974 p_mouse_null_enter_hibernate_timer:
+0x04f1 001975 fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+0x04f2 001976 rtn blank 
+0x04f3 001977 arg mem_mouse_null_enter_hibernate_timer ,regc 
+0x04f4 001978 arg p_mouse_null_enter_hibernate ,regb 
+0x04f5 001979 branch timer_single_step 
+:      001980 p_mouse_null_enter_hibernate:
+0x04f6 001981 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0x04f7 001982 branch app_enter_hibernate 
+:      001984 p_mouse_null_enter_hibernate_disable:
+0x04f8 001985 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0x04f9 001986 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+0x04fa 001987 rtn 
+:      002097 p_mouse_multi_led_blink_timer:
+0x04fb 002098 fetch 1 ,mem_mouse_discovery_timer 
+0x04fc 002099 rtn blank 
+0x04fd 002100 bbit1 2 ,p_mouse_multi_led_on 
+0x04fe 002101 branch p_mouse_multi_led_off 
+:      002104 p_mouse_multi_led_on:
+0x04ff 002105 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x0500 002106 call gpio_config_output 
+0x0501 002107 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x0502 002108 branch gpio_out_inactive 
+:      002110 p_mouse_multi_led_off:
+0x0503 002111 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x0504 002112 call gpio_config_output 
+0x0505 002113 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x0506 002114 branch gpio_out_active 
+:      002117 p_mouse_seting_dpi:
+:      002118 p_mouse_seting_sensor_type:
+:      002126 p_mouse_seting_320x_dpi:
+0x0507 002127 fetch 1 ,mem_mouse_dpi 
+0x0508 002128 sub pdata ,mouse_dpi_level2 ,null 
+0x0509 002129 call p_mouse_320x_dpi_recount ,zero 
+0x050a 002130 fetch 1 ,mem_mouse_dpi 
+0x050b 002131 beq mouse_dpi_level1 ,p_mouse_set_cpi1 
+0x050c 002132 beq mouse_dpi_level4 ,p_mouse_set_cpi4 
+:      002133 p_mouse_set_cpi3:
+0x050d 002134 fetch 1 ,mem_config_sensor_type 
+0x050e 002136 beq p3065_xy ,p_mouse_3065xy_set_cpi3 
+0x050f 002137 beq mx8650 ,p_mouse_3065xy_set_cpi3 
+0x0510 002138 beq ka8 ,p_mouse_ka8_set_cpi3 
+:      002139 p_mouse_320x_set_cpi3:
+0x0511 002140 fetch 1 ,mem_320x_dpi_3 
+:      002141 p_mouse_dpi_store:
+0x0512 002142 store 1 ,mem_mouse_cpi_count 
+0x0513 002143 branch mouse_p3205_dpi + 3 
+:      002144 p_mouse_320x_dpi_recount:
+0x0514 002145 jam mouse_dpi_level3 ,mem_mouse_dpi 
+0x0515 002146 rtn 
+:      002148 p_mouse_set_cpi1:
+0x0516 002149 fetch 1 ,mem_config_sensor_type 
+0x0517 002151 beq p3065_xy ,p_mouse_3065xy_set_cpi1 
+0x0518 002152 beq mx8650 ,p_mouse_3065xy_set_cpi1 
+0x0519 002153 beq ka8 ,p_mouse_ka8_set_cpi1 
+:      002154 p_mouse_320x_set_cpi1:
+0x051a 002155 fetch 1 ,mem_320x_dpi_1 
+0x051b 002156 branch p_mouse_dpi_store 
+:      002158 p_mouse_set_cpi4:
+0x051c 002159 fetch 1 ,mem_config_sensor_type 
+0x051d 002161 beq p3065_xy ,p_mouse_3065xy_set_cpi4 
+0x051e 002162 beq mx8650 ,p_mouse_3065xy_set_cpi4 
+0x051f 002163 beq ka8 ,p_mouse_ka8_set_cpi4 
+:      002164 p_mouse_320x_set_cpi4:
+0x0520 002165 fetch 1 ,mem_320x_dpi_4 
+0x0521 002166 branch p_mouse_dpi_store 
+:      002168 p_mouse_3065xy_set_cpi3:
+0x0522 002169 fetch 1 ,mem_3065xy_dpi_3 
+0x0523 002170 branch p_mouse_dpi_store 
+:      002171 p_mouse_3065xy_set_cpi1:
+0x0524 002172 fetch 1 ,mem_3065xy_dpi_1 
+0x0525 002173 branch p_mouse_dpi_store 
+:      002174 p_mouse_3065xy_set_cpi4:
+0x0526 002175 fetch 1 ,mem_3065xy_dpi_4 
+0x0527 002176 branch p_mouse_dpi_store 
+:      002178 p_mouse_ka8_set_cpi3:
+0x0528 002179 fetch 1 ,mem_320x_dpi_3 
+:      002180 p_mouse_ka8_dpi_store:
+0x0529 002181 increase 2 ,pdata 
+0x052a 002182 branch p_mouse_dpi_store 
+:      002183 p_mouse_ka8_set_cpi1:
+0x052b 002184 fetch 1 ,mem_320x_dpi_1 
+0x052c 002185 branch p_mouse_ka8_dpi_store 
+:      002186 p_mouse_ka8_set_cpi4:
+0x052d 002187 fetch 1 ,mem_320x_dpi_4 
+0x052e 002188 branch p_mouse_ka8_dpi_store 
+:      002191 p_mouse_motion:
+0x052f 002192 disable user 
+0x0530 002193 setarg 0 
+0x0531 002194 store 6 ,mem_mouse_x 
+0x0532 002195 call p_mouse_cheak_sensor_data 
+0x0533 002196 call mouse_zwheel 
+0x0534 002197 call mouse_t_zwheel 
+0x0535 002198 call p_mouse_key 
+0x0536 002199 nbranch p_drawing_optima_init ,user 
+0x0537 002200 call p_drawing_optima 
+0x0538 002201 branch mouse_motion + 9 
+:      002203 p_mouse_key:
+0x0539 002204 call p_mouse_check_key_gpio 
+0x053a 002205 branch mouse_key + 1 
+:      002207 p_mouse_check_key_gpio:
+0x053b 002208 arg 0 ,rega 
+0x053c 002209 call p_mouse_check_lkey_gpio 
+0x053d 002212 call p_mouse_check_skey_gpio 
+0x053e 002213 branch mouse_check_key_gpio_output 
+:      002214 p_mouse_check_skey_gpio:
+0x053f 002217 call p_mouse_check_bk_key_gpio 
+0x0540 002218 branch p_mouse_check_fw_key_gpio 
+:      002220 p_mouse_check_lkey_gpio:
+0x0541 002221 fetcht 1 ,mem_lbutton_gpio 
+0x0542 002222 call p_gpio_set_input_pu 
+0x0543 002223 fetcht 1 ,mem_lbutton_gpio 
+0x0544 002224 call gpio_get_bit 
+0x0545 002225 setflag true ,0 ,rega 
+:      002227 p_mouse_check_rkey_gpio:
+0x0546 002228 fetcht 1 ,mem_rbutton_gpio 
+0x0547 002229 call p_gpio_set_input_pu 
+0x0548 002230 fetcht 1 ,mem_rbutton_gpio 
+0x0549 002231 call gpio_get_bit 
+0x054a 002232 setflag true ,1 ,rega 
+:      002234 p_mouse_check_mkey_gpio:
+0x054b 002235 fetcht 1 ,mem_mbutton_gpio 
+0x054c 002236 call p_gpio_set_input_pu 
+0x054d 002237 fetcht 1 ,mem_mbutton_gpio 
+0x054e 002238 call gpio_get_bit 
+0x054f 002239 setflag true ,2 ,rega 
+0x0550 002240 rtn 
+:      002241 p_mouse_check_bk_key_gpio:
+0x0551 002243 fetcht 1 ,mem_bk_button_gpio 
+0x0552 002244 call p_gpio_set_input_pd 
+0x0553 002245 fetcht 1 ,mem_bk_button_gpio 
+0x0554 002246 call gpio_get_bit 
+0x0555 002247 nsetflag true ,3 ,rega 
+0x0556 002248 branch p_gpio_set_input_pu 
+:      002249 p_mouse_check_fw_key_gpio:
+0x0557 002250 fetcht 1 ,mem_fw_button_gpio 
+0x0558 002251 call p_gpio_set_input_pd 
+0x0559 002252 fetcht 1 ,mem_fw_button_gpio 
+0x055a 002253 call gpio_get_bit 
+0x055b 002254 nsetflag true ,4 ,rega 
+:      002255 p_gpio_set_input_pu:
+0x055c 002256 set1 gpio_active_bit ,temp 
+0x055d 002257 arg core_gpio_pu0 ,contw 
+0x055e 002258 call gpio_set_bit 
+0x055f 002259 set0 gpio_active_bit ,temp 
+0x0560 002260 branch p_gpio_set_input_pd4 
+:      002262 p_gpio_set_input_pd:
+0x0561 002263 set0 gpio_active_bit ,temp 
+0x0562 002264 arg core_gpio_pu0 ,contw 
+0x0563 002265 call gpio_set_bit 
+0x0564 002266 set1 gpio_active_bit ,temp 
+:      002267 p_gpio_set_input_pd4:
+0x0565 002268 arg core_gpio_pd0 ,contw 
+0x0566 002269 branch gpio_set_high_impedance + 4 
+:      002272 p_mouse_cheak_sensor_data:
+0x0567 002273 fetch 1 ,mem_config_sensor_type 
+0x0568 002275 beq p8009 ,p_mouse_p8009_sensor_motion 
+:      002276 p_mouse_p32xx_sensor_motion:
+0x0569 002277 call mouse_clear_sensor_data 
+0x056a 002278 disable user 
+0x056b 002279 branch mouse_p32xx_sensor_motion_2 
+:      002284 p_mouse_p8009_sensor_motion:
+0x056c 002285 call mouse_clear_sensor_data 
+0x056d 002286 disable user 
+:      002290 p_mouse_p32xx_sensor_motion_1:
+0x056e 002291 setarg pan_reg_motion_staus 
+0x056f 002292 call twspi_read 
+0x0570 002293 rtnbit0 7 
+0x0571 002294 setarg pan_reg_opration_state 
+0x0572 002295 call twspi_read 
+0x0573 002296 branch mouse_p32xx_sensor_motion_1 + 3 ,blank 
+0x0574 002297 setarg 0 
+0x0575 002298 store 6 ,mem_mouse_x 
+0x0576 002299 rtn 
+:      002301 p_mouse_bb_event_discovery_btn:
+0x0577 002302 call p_mouse_null_enter_hibernate_disable 
+0x0578 002303 isolate1 mark_24g ,mark 
+0x0579 002304 call p_g24_check_51cmd_stop_24g ,true 
+0x057a 002305 jam 0 ,mem_mouse_send_blank_timer 
+0x057b 002306 fetch 1 ,mem_mouse_le_not_tx_disconn 
+0x057c 002307 call mouse_disconnect ,blank 
+0x057d 002308 setarg 0 
+0x057e 002309 store 2 ,mem_mouse_no_data_timer 
+0x057f 002310 branch mouse_bb_event_discovery_btn + 3 
+:      002312 p_mouse_start_discovery:
+0x0580 002313 jam 0 ,mem_lpm_mode 
+0x0581 002314 jam zcode_30 ,mem_zcode_temp_param0 
+0x0582 002315 branch p_zcode_entrance 
+:      002317 p_mouse_stop_discovery:
+0x0583 002319 call p_mouse_init_sensor_reset 
+0x0584 002320 branch mouse_stop_discovery + 1 
+:      002322 p_le_slave_match:
+0x0585 002323 fetch 1 ,mem_le_md_count 
+0x0586 002324 pincrease 1 
+0x0587 002325 store 1 ,mem_le_md_count 
+0x0588 002326 beq le_md_max_count ,le_slave_cont 
+0x0589 002327 call le_acknowledge 
+0x058a 002328 call le_prepare_tx 
+0x058b 002329 call power_ctrl_start 
+0x058c 002330 branch le_slave_match + 7 
+:      002332 p_le_next_adv_channel:
+0x058d 002333 fetch 1 ,mem_le_ch_mapped 
+0x058e 002334 increase 1 ,pdata 
+0x058f 002335 store 1 ,mem_le_ch_mapped 
+0x0590 002336 rtnne 40 
+0x0591 002337 jam 37 ,mem_le_ch_mapped 
+0x0592 002338 rtn 
+:      002340 p_le_receive_skip:
+0x0593 002341 call save_rssi 
+0x0594 002342 call p_rssi_signal 
+0x0595 002343 branch le_receive_skip + 2 
+:      002345 p_le_update_param:
+0x0596 002346 jam zcode_20 ,mem_zcode_temp_param0 
+0x0597 002347 branch p_zcode_entrance 
+:      002349 p_le_update_channel_map:
+0x0598 002350 jam zcode_21 ,mem_zcode_temp_param0 
+0x0599 002351 branch p_zcode_entrance 
+:      002353 p_le_prepare_tx:
+0x059a 002354 fetch 1 ,mem_le_arq 
+0x059b 002355 bbit1 wak ,p_le_prepare_tx_wak 
+0x059c 002356 call power_ctrl_pac_succ_incrs 
+0x059d 002357 fetch 1 ,mem_empty_count 
+0x059e 002358 nbranch p_le_send_empyt ,blank 
+0x059f 002359 fetch 1 ,mem_le_state 
+0x05a0 002360 bbit0 lestate_encryption ,p_le_tx_4 
+0x05a1 002361 fetch 1 ,mem_le_rxbuf + 1 
+0x05a2 002362 branch p_le_tx_4 ,blank 
+0x05a3 002363 branch le_send_empty 
+:      002364 p_le_send_empyt:
+0x05a4 002365 fetch 1 ,mem_empty_count 
+0x05a5 002366 increase -1 ,pdata 
+0x05a6 002367 store 1 ,mem_empty_count 
+0x05a7 002368 branch le_send_empty 
+:      002369 p_le_tx_4:
+0x05a8 002370 fetch 1 ,mem_le_pairing_state 
+0x05a9 002371 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+0x05aa 002372 jam 3 ,mem_empty_count 
+:      002373 p_in_le_tx_4:
+0x05ab 002374 call le_fifo_check_nearly_full 
+0x05ac 002375 call p_mouse_data_pull ,blank 
+0x05ad 002376 branch le_prepare_tx + 4 
+:      002378 p_le_check_tx_retransmit_setmd:
+0x05ae 002379 fetch 1 ,mem_le_connect_status_flag 
+0x05af 002380 and pdata ,0x03 ,pdata 
+0x05b0 002381 rtnne 0x03 
+0x05b1 002382 fetch 1 ,mem_mouse_data_queue_num 
+0x05b2 002383 rtn blank 
+0x05b3 002384 fetch 1 ,mem_le_txlen 
+0x05b4 002385 rtn blank 
+0x05b5 002386 fetch 1 ,mem_le_txheader 
+0x05b6 002387 set1 md ,pdata 
+0x05b7 002388 store 1 ,mem_le_txheader 
+0x05b8 002389 call le_set_md 
+0x05b9 002390 rtn 
+:      002393 p_le_prepare_tx_wak:
+0x05ba 002394 call p_le_check_tx_retransmit_setmd 
+:      002395 p_le_power_ctrl_pac_succ_decrs:
+0x05bb 002396 branch power_ctrl_pac_succ_decrs 
+:      002398 p_mouse_le_reconn_write_enable_timer_reinit:
+0x05bc 002399 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x05bd 002400 rtn blank 
+0x05be 002401 fetch 1 ,mem_le_connect_status_flag 
+0x05bf 002402 and pdata ,0x03 ,pdata 
+0x05c0 002403 rtneq 0x03 
+0x05c1 002404 jam 2 ,mem_le_start_encrypt_timer 
+0x05c2 002405 rtn 
+:      002407 p_le_parse:
+0x05c3 002408 rtnmark1 mark_old_packet 
+0x05c4 002409 call le_fifo_check_full 
+0x05c5 002410 nrtn blank 
+0x05c6 002411 fetch 1 ,mem_le_rxbuf 
+0x05c7 002412 and pdata ,0x3 ,pdata 
+0x05c8 002413 store 1 ,mem_le_packet_llid 
+0x05c9 002414 ifetch 1 ,contr 
+0x05ca 002415 and pdata ,0x1f ,pdata 
+0x05cb 002416 store 1 ,mem_le_packet_size 
+0x05cc 002417 rtn blank 
+0x05cd 002418 copy contr ,pdata 
+0x05ce 002419 store 2 ,mem_le_payload_ptr 
+0x05cf 002420 fetch 1 ,mem_le_packet_llid 
+0x05d0 002421 beq llid_le_ll ,p_le_parse_ll 
+0x05d1 002422 branch le_parse_l2cap 
+:      002423 p_le_parse_ll:
+0x05d2 002424 fetch 1 ,mem_le_rxbuf + 2 
+0x05d3 002425 beq ll_connection_update_req ,p_le_parse_connection_update_req 
+0x05d4 002426 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+0x05d5 002427 branch le_parse_ll + 1 
+:      002428 p_le_parse_connection_update_req:
+0x05d6 002429 call le_parse_connection_update_req 
+0x05d7 002430 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
+0x05d8 002431 rtn blank 
+:      002433 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
+0x05d9 002434 fetch 1 ,mem_le_new_connslavelatency 
+0x05da 002435 store 1 ,mem_lpm_mult 
+0x05db 002436 store 1 ,mem_lpm_mult_init 
+0x05dc 002437 rtn 
+:      002438 p_le_parse_channel_map_req:
+0x05dd 002439 ifetch 5 ,contr 
+0x05de 002440 store 5 ,mem_le_new_map 
+0x05df 002441 ifetch 2 ,contr 
+0x05e0 002442 store 2 ,mem_le_instant 
+0x05e1 002443 branch le_parse_channel_map_req + 7 
+:      002445 p_le_parse_l2cap:
+0x05e2 002446 ifetch 2 ,contr 
+0x05e3 002447 beq le_l2cap_cid_att ,p_le_parse_att 
+0x05e4 002448 beq le_l2cap_cid_smp ,p_le_parse_smp 
+0x05e5 002449 branch le_parse_l2cap + 11 
+:      002450 p_le_parse_att:
+0x05e6 002451 call store_contr 
+0x05e7 002452 call p_mouse_le_reconn_write_enable_timer_reinit 
+0x05e8 002453 call get_contr 
+0x05e9 002454 ifetch 3 ,contr 
+0x05ea 002455 store 3 ,mem_le_att_opcode 
+0x05eb 002456 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+0x05ec 002457 rshift8 pdata ,temp 
+0x05ed 002458 sub temp ,0x24 ,null 
+0x05ee 002459 branch p_le_parse_att1 ,positive 
+0x05ef 002460 arg mem_mouse_le_uuid_sup ,temp 
+0x05f0 002461 storet 2 ,mem_ui_le_uuid_table 
+0x05f1 002462 call le_parse_att + 2 
+0x05f2 002463 setarg 0x8e7a 
+0x05f3 002464 store 2 ,mem_ui_le_uuid_table 
+0x05f4 002465 rtn 
+:      002467 p_le_parse_att_read_by_group_type_request:
+0x05f5 002468 call le_parse_att_read_by_group_type_request 
+0x05f6 002469 call le_fifo_get_last_tx_ptr 
+0x05f7 002470 increase 7 ,contr 
+0x05f8 002471 ifetch 1 ,contr 
+0x05f9 002472 rtnne attop_read_by_group_type_response 
+0x05fa 002473 increase 5 ,contr 
+0x05fb 002474 ifetch 2 ,contr 
+0x05fc 002475 arg uuid_service_hids ,temp 
+0x05fd 002476 isub temp ,null 
+0x05fe 002477 nrtn zero 
+0x05ff 002478 increase -4 ,contr 
+0x0600 002479 setarg 0x2b 
+0x0601 002480 istore 2 ,contr 
+0x0602 002481 rtn 
+:      002483 p_le_parse_att1:
+0x0603 002484 beq attop_read_request ,p_le_parse_att_read_request 
+0x0604 002485 branch le_parse_att + 2 
+:      002486 p_le_parse_att_read_request:
+0x0605 002487 fetcht 2 ,mem_le_att_handle 
+0x0606 002488 fetch 1 ,mem_le_configuration 
+0x0607 002489 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+:      002490 p_le_send_att_read_response:
+0x0608 002491 fetch 2 ,mem_le_att_handle 
+0x0609 002492 beq 0x13 ,le_send_att_error_response_notfound 
+0x060a 002493 fetcht 2 ,mem_le_att_handle 
+0x060b 002494 branch le_send_att_read_response 
+:      002495 p_le_send_att_read_response_check_auth:
+0x060c 002496 fetch 2 ,mem_le_pairing_handle 
+0x060d 002497 isub temp ,null 
+0x060e 002498 nbranch p_le_send_att_read_response ,zero 
+0x060f 002499 call le_check_encrypt_state 
+0x0610 002500 nbranch p_le_send_att_read_response ,user 
+0x0611 002501 branch le_send_att_read_response_check_auth + 5 
+:      002503 p_le_parse_smp:
+0x0612 002504 ifetch 1 ,contr 
+0x0613 002505 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0x0614 002506 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0x0615 002507 branch le_parse_smp + 1 
+:      002508 p_le_parse_smp_pairing_request:
+0x0616 002509 jam 1 ,mem_le_send_security_request_flag 
+0x0617 002510 branch le_parse_smp_pairing_request 
+:      002511 p_le_parse_smp_pairing_failed:
+0x0618 002512 jam zcode_82 ,mem_zcode_temp_param0 
+0x0619 002513 branch p_zcode_entrance 
+:      002515 p_le_adv_not_match:
+0x061a 002516 fetch 1 ,mem_le_ch_mapped 
+0x061b 002517 bne 39 ,le_adv_loop 
+0x061c 002518 call p_le_adv_random_delay 
+0x061d 002519 arg le_adv_interval_timer ,queue 
+0x061e 002520 fetch 2 ,mem_le_adv_interval 
+0x061f 002521 branch timer_init 
+:      002522 p_le_adv_random_delay:
+0x0620 002523 random pdata 
+0x0621 002524 arg 0x1ff ,temp 
+0x0622 002525 iand temp ,pdata 
+0x0623 002526 add pdata ,250 ,pdata 
+0x0624 002527 branch delay 
+:      002529 p_le_lpm_setmult:
+0x0625 002530 disable wake 
+0x0626 002531 branch p_le_lpm_set_mult_attempt ,attempt 
+0x0627 002532 nbranch le_lpm_lost ,match 
+:      002533 p_le_lpm_set_mult_attempt:
+0x0628 002534 call lpm_match 
+0x0629 002535 fetch 2 ,mem_rx_window_sniff 
+0x062a 002536 store 2 ,mem_le_receive_window 
+0x062b 002537 fetch 1 ,mem_le_connect_status_flag 
+0x062c 002538 compare 3 ,pdata ,3 
+0x062d 002539 nbranch lpm_mult_short ,true 
+0x062e 002540 branch le_lpm_set_mult_attempt + 3 
+:      002542 p_le_mouse_bb_event_connect_complete:
+0x062f 002543 jam zcode_22 ,mem_zcode_temp_param0 
+0x0630 002544 branch p_zcode_entrance 
+:      002546 p_twspi_reset:
+0x0631 002547 hfetch 1 ,core_gpio_out3 
+0x0632 002548 and_into 0xfd ,pdata 
+0x0633 002549 hstore 1 ,core_gpio_out3 
+0x0634 002550 hfetcht 1 ,core_gpio_oe3 
+0x0635 002551 or_into 0x2 ,temp 
+0x0636 002552 hstoret 1 ,core_gpio_oe3 
+0x0637 002553 call twspi_disable 
+0x0638 002554 and_into 0xfd ,temp 
+0x0639 002555 nop 13 
+0x063a 002556 call p_twspi_enable 
+0x063b 002557 hstoret 1 ,core_gpio_oe3 
+0x063c 002558 rtn 
+:      002560 p_spid_init:
+0x063d 002561 call spid_init_common 
+:      002562 p_twspi_enable:
+0x063e 002563 hfetch 1 ,core_gpio_sel1 
+0x063f 002564 set1 0 ,pdata 
+0x0640 002565 set0 1 ,pdata 
+0x0641 002566 set0 3 ,pdata 
+0x0642 002567 hstore 1 ,core_gpio_sel1 
+0x0643 002568 rtn 
+:      002571 p_page_wait_fhs_reply_ok:
+0x0644 002572 jam zcode_00 ,mem_zcode_temp_param0 
+0x0645 002573 branch p_zcode_entrance 
+:      002575 p_role_switch_master:
+0x0646 002576 call role_switch_check 
+0x0647 002577 nrtn user 
+:      002578 p_wait_role_switch_anchor:
+0x0648 002579 disable user 
+0x0649 002580 jam param_newconnto ,mem_newconnto_counter 
+0x064a 002581 set0 mark_fhs_already_good ,mark 
+0x064b 002582 set0 mark_role_switch_receive_fhs ,mark 
+:      002583 p_roles_waitfhs_loop:
+0x064c 002584 call rf_setup_time_master_slot 
+0x064d 002585 call master_recv_packet 
+0x064e 002586 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+0x064f 002587 call new_conn_timeout 
+0x0650 002588 nbranch p_roles_waitfhs_loop ,blank 
+0x0651 002589 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0x0652 002590 branch role_switch_fail_master 
+:      002592 p_roles_replyto_fhs:
+0x0653 002593 call rf_setup_time_slave_slot 
+0x0654 002594 arg type_id ,type 
+0x0655 002595 call master_send_packet 
+0x0656 002596 set1 mark_role_switch_receive_fhs ,mark 
+0x0657 002597 set0 mark_fhs_already_good ,mark 
+0x0658 002598 fetch 1 ,mem_amaddr 
+0x0659 002599 iforce am_addr 
+0x065a 002600 jam 2 ,mem_newconnto_counter 
+0x065b 002601 branch p_roles_waitfhs_loop 
+:      002603 p_roles_replyto_fhs1:
+0x065c 002604 fetch 4 ,mem_clke_bt 
+0x065d 002605 pincrease 8 
+0x065e 002606 store 4 ,mem_clke_bt 
+0x065f 002607 branch roles_replyto_fhs + 4 
+:      002609 p_process_dmh:
+0x0660 002610 bmark1 mark_first_packet ,end_of_packet 
+0x0661 002611 branch process_dmh + 1 
+:      002613 p_quit_connection_cont:
+0x0662 002614 jam zcode_23 ,mem_zcode_temp_param0 
+0x0663 002615 branch p_zcode_entrance 
+:      002617 p_prepare_tx:
+0x0664 002618 fetch 1 ,mem_state 
+0x0665 002619 isolate1 state_inconn ,pdata 
+0x0666 002620 call p_bt_power_ctrl ,true 
+0x0667 002621 branch prepare_tx + 1 
+:      002622 p_bt_power_ctrl:
+0x0668 002623 fetch 1 ,mem_arq 
+0x0669 002624 isolate1 wack ,pdata 
+0x066a 002625 call power_ctrl_pac_succ_decrs ,true 
+0x066b 002626 ncall power_ctrl_pac_succ_incrs ,true 
+0x066c 002627 branch power_ctrl_start 
+:      002629 p_slave_conn_recv_packet:
+0x066d 002630 call slave_receive_master_slot 
+0x066e 002631 nbranch shutdown_radio ,sync 
+0x066f 002632 call save_rssi 
+0x0670 002633 call p_rssi_signal 
+0x0671 002634 branch slave_conn_recv_packet + 4 
+:      002636 p_lpm_dispatch:
+0x0672 002637 rtnmark1 mark_24g 
+0x0673 002638 call lpo_calibration 
+0x0674 002639 fetch 3 ,mem_clks_per_lpo 
+0x0675 002640 rtn blank 
+0x0676 002641 fetch 1 ,mem_lpm_mode 
+0x0677 002642 rtn blank 
+0x0678 002643 fetch 1 ,mem_ssp_enable 
+0x0679 002644 branch p_lpm_dispatch_next ,blank 
+0x067a 002645 fetch 1 ,mem_sp_local_key_invalid 
+0x067b 002646 rtn blank 
+:      002647 p_lpm_dispatch_next:
+0x067c 002648 fetch 1 ,mem_le_sc_calc 
+0x067d 002649 nrtn blank 
+0x067e 002650 call lpm_check_wake_lock 
+0x067f 002651 nrtn blank 
+0x0680 002652 fetch 1 ,mem_context 
+0x0681 002653 compare 3 ,pdata ,0x7 
+0x0682 002654 nbranch lpm_dispatch_unconn ,true 
+0x0683 002655 fetch 2 ,mem_context + coffset_tsniff 
+0x0684 002656 arg 0xffff ,temp 
+0x0685 002657 isub temp ,null 
+0x0686 002658 rtn zero 
+0x0687 002659 branch lpm_dispatch_next + 9 
+:      002661 p_lpm_set_mult:
+0x0688 002662 disable wake 
+0x0689 002663 fetch 1 ,mem_state 
+0x068a 002664 rtnbit0 state_insniff 
+0x068b 002665 nbranch lpm_not_match ,match 
+0x068c 002666 call lpm_match 
+0x068d 002667 fetch 2 ,mem_rx_window_sniff 
+0x068e 002668 store 2 ,mem_rx_window 
+0x068f 002669 fetch 1 ,mem_arq 
+0x0690 002670 bbit1 wack ,lpm_mult_short 
+0x0691 002671 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x0692 002672 call l2cap_malloc_is_fifo_empty 
+0x0693 002673 nbranch lpm_mult_short ,blank 
+0x0694 002674 call p_lpm_set_attemp_timeout ,blank 
+0x0695 002675 branch lpm_set_mult + 13 
+:      002676 p_lpm_set_attemp_timeout:
+0x0696 002677 jam 1 ,mem_current_sniff_attempt 
+0x0697 002678 jam 0 ,mem_current_sniff_timeout 
+0x0698 002679 rtn 
+:      002681 p_mouse_bb_disconnected:
+0x0699 002682 jam zcode_01 ,mem_zcode_temp_param0 
+0x069a 002683 branch p_zcode_entrance 
+:      002685 p_hid_rx_process:
+0x069b 002686 jam zcode_02 ,mem_zcode_temp_param0 
+0x069c 002687 branch p_zcode_entrance 
+:      002689 p_parse_lmp_accepted:
+0x069d 002690 fetch 1 ,mem_rxbuf + 1 
+0x069e 002691 store 1 ,mem_lmi_accepted_opcode 
+0x069f 002692 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+0x06a0 002693 branch parse_lmp_accepted + 3 
+:      002694 p_parse_lmp_accepted_switch:
+0x06a1 002695 call parse_lmp_accepted_switch 
+0x06a2 002696 jam 1 ,mem_bt_rcvd_switch_req_accept 
+0x06a3 002697 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x06a4 002698 rtn blank 
+0x06a5 002699 jam 2 ,mem_bt_send_lmp_setup_complete 
+0x06a6 002700 rtn 
+:      002702 p_send_lmp:
+0x06a7 002703 disable user 
+0x06a8 002704 call lmo_fifo_process 
+0x06a9 002705 fetch 1 ,mem_lmp_to_send 
+0x06aa 002706 rtn blank 
+0x06ab 002707 bbit1 7 ,p_send_lmp_escape 
+0x06ac 002708 beq lmp_accepted ,p_send_lmp_accepted 
+0x06ad 002709 beq lmp_setup_complete ,p_send_lmp_setup_complete 
+0x06ae 002710 beq lmp_sniff_req ,p_send_lmp_sniff_req 
+0x06af 002711 branch send_lmp0 
+:      002713 p_send_lmp_escape:
+0x06b0 002714 jam zcode_10 ,mem_zcode_temp_param0 
+0x06b1 002715 branch p_zcode_entrance 
+:      002717 p_send_lmp_accepted:
+0x06b2 002718 jam zcode_11 ,mem_zcode_temp_param0 
+0x06b3 002719 branch p_zcode_entrance 
+:      002721 p_send_lmp_setup_complete:
+0x06b4 002722 jam 1 ,mem_bt_send_lmp_setup_complete 
+0x06b5 002723 branch send_lmp_setup_complete 
+:      002725 p_send_lmp_sniff_req:
+0x06b6 002726 jam 4 ,mem_mouse_bt_send_first_package_timer 
+0x06b7 002727 branch send_lmp_sniff_req 
+:      002729 p_process_conn_sm:
+0x06b8 002730 call lmo_fifo_check 
+0x06b9 002731 nrtn blank 
+:      002732 p_process_conn_sm_continue:
+0x06ba 002733 fetch 1 ,mem_conn_sm 
+0x06bb 002734 rtn blank 
+0x06bc 002735 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+0x06bd 002736 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+0x06be 002737 branch process_conn_sm_continue + 2 
+:      002739 p_host_creat_conn_wait_switch:
+0x06bf 002740 fetch 1 ,mem_switch_flag 
+0x06c0 002741 rtneq switch_flag_init 
+0x06c1 002742 beq switch_flag_accept ,p_host_create_conn_switch_accept 
+0x06c2 002743 branch host_creat_conn_wait_switch + 3 
+:      002744 p_host_create_conn_switch_accept:
+0x06c3 002745 rtn master 
+:      002746 p_host_create_conn_auth_pair:
+0x06c4 002748 fetch 1 ,mem_connection_options 
+0x06c5 002749 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+0x06c6 002750 branch host_create_conn_auth_pair + 1 
+:      002751 p_host_create_conn_auth_pair_true:
+0x06c7 002752 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x06c8 002753 beq 1 ,host_create_conn_auth_pair_true 
+0x06c9 002755 fetch 1 ,mem_link_key_exists 
+0x06ca 002756 branch host_create_conn_auth_pair_nokey ,blank 
+0x06cb 002757 fetch 1 ,mem_lmp_conn_state 
+0x06cc 002758 rtnbit0 sent_setup_complete 
+0x06cd 002759 rtnbit0 received_setup_complete 
+0x06ce 002760 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06cf 002761 rtn blank 
+0x06d0 002762 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06d1 002763 fetch 4 ,mem_aurand_send_delay_time 
+0x06d2 002764 arg 20 ,temp 
+0x06d3 002765 iadd temp ,temp 
+0x06d4 002766 copy clkn_bt ,pdata 
+0x06d5 002767 isub temp ,null 
+0x06d6 002768 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+0x06d7 002769 branch host_create_conn_auth 
+:      002771 p_bt_send_max_slot_req_accept_after_switch_wait:
+0x06d8 002772 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06d9 002773 rtn 
+:      002775 p_host_create_conn_send_conn_req:
+0x06da 002776 jam 20 ,mem_mouse_send_switch_req_timer 
+0x06db 002777 branch host_create_conn_send_conn_req 
+:      002783 p_check_51cmd_once_continue:
+0x06dc 002784 call lmo_fifo_check 
+0x06dd 002785 nbranch check_51cmd_restore ,blank 
+0x06de 002786 fetch 1 ,mem_fifo_temp 
+0x06df 002787 bmark0 mark_context ,check_51cmd_check_idle 
+0x06e0 002788 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+0x06e1 002789 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+0x06e2 002790 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0x06e3 002791 branch check_51cmd_once_continue + 2 
+:      002793 p_flash_store_le_reconn_info:
+0x06e4 002794 jam rec_4_mode ,mem_record_bt_mode 
+0x06e5 002795 fetch 6 ,mem_le_plap 
+0x06e6 002796 branch p_flash_store_reconn_info 
+:      002797 p_flash_store_bd_reconn_info:
+0x06e7 002798 jam rec_3_mode ,mem_record_bt_mode 
+0x06e8 002799 fetch 6 ,mem_plap 
+:      002800 p_flash_store_reconn_info:
+0x06e9 002801 store 6 ,mem_temp_lap 
+:      002802 p_mouse_store_remote_bdaddr:
+0x06ea 002803 fetch mouse_flag_len ,mem_mouse_flag 
+0x06eb 002804 rtnbit0 mouse_store_eeprom_flag 
+0x06ec 002805 arg mouse_store_eeprom_flag ,queue 
+0x06ed 002806 call mouse_disable_function_flag 
+0x06ee 002807 call mouse_check_device_addr 
+:      002808 p_mouse_unplug_clean_bdaddr:
+0x06ef 002809 call mouse_before_store_reconn_info 
+0x06f0 002810 branch p_mouse_store_flash_device_info 
+:      002812 p_check_51cmd_ble_update_connect_param:
+0x06f1 002813 call le_fifo_check_full 
+0x06f2 002814 nrtn blank 
+0x06f3 002815 branch le_l2cap_tx_update_req 
+:      002817 power_ctrl_pac_succ_cnt_init:
+0x06f4 002818 jam 1 ,mem_power_ctrl_level 
+0x06f5 002819 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0x06f6 002820 rtn 
+:      002821 power_ctrl_pac_succ_incrs:
+0x06f7 002822 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x06f8 002823 increase 1 ,pdata 
+0x06f9 002824 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x06fa 002825 rtn 
+:      002826 power_ctrl_pac_succ_decrs:
+0x06fb 002827 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x06fc 002828 sub pdata ,2 ,null 
+0x06fd 002829 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0x06fe 002830 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x06ff 002831 rtneq 0 
+0x0700 002832 increase -1 ,pdata 
+0x0701 002833 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0702 002834 rtn 
+:      002835 power_ctrl_pac_succ_cnt_reinit:
+0x0703 002836 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0x0704 002837 rtn 
+:      002839 power_ctrl_start:
+0x0705 002840 fetch 2 ,mem_ui_state_map 
+0x0706 002841 rtnbit1 ui_state_ble_adv 
+0x0707 002842 rtnbit1 ui_state_bt_reconnect 
+0x0708 002843 rtnbit1 ui_state_bt_discovery 
+0x0709 002845 arg mem_rssi_signal_buf ,rega 
+0x070a 002846 call p_rssi_average 
+0x070b 002847 storet 1 ,mem_rssi_avg_received 
+0x070c 002849 setarg rssi_dis_max_24g 
+0x070d 002850 bmark1 mark_24g ,power_ctrl_start_next 
+0x070e 002851 setarg rssi_dis_max_ble 
+:      002852 power_ctrl_start_next:
+0x070f 002853 isub temp ,null 
+0x0710 002854 nbranch power_ctrl_txpower_incrs_force ,positive 
+0x0711 002856 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0712 002857 sub pdata ,2 ,null 
+0x0713 002858 nbranch power_ctrl_txpower_decrs_check ,positive 
+0x0714 002859 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0715 002860 beq 0 ,power_ctrl_txpower_incrs 
+0x0716 002861 rtn 
+:      002863 power_ctrl_txpower_decrs_check:
+0x0717 002864 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0718 002865 rtnne 50 
+0x0719 002866 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      002867 power_ctrl_txpower_decrs:
+0x071a 002868 fetcht 1 ,mem_rssi_avg_received 
+0x071b 002869 setarg rssi_dis_min_24g 
+0x071c 002870 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0x071d 002871 setarg rssi_dis_min_ble 
+:      002872 power_ctrl_txpower_decrs_next:
+0x071e 002873 isub temp ,null 
+0x071f 002874 nrtn positive 
+0x0720 002875 fetch 1 ,mem_power_ctrl_level 
+0x0721 002876 beq 0 ,power_ctrl_decrs_level0 
+0x0722 002877 increase -1 ,pdata 
+0x0723 002878 store 1 ,mem_power_ctrl_level 
+0x0724 002879 beq 0 ,power_ctrl_decrs_level0 
+:      002880 power_ctrl_decrs_level1:
+:      002881 power_ctrl_incrs_level1:
+0x0725 002882 jam tx_power_0db ,mem_tx_power 
+0x0726 002883 rtn 
+:      002885 power_ctrl_txpower_incrs_force:
+0x0727 002886 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      002887 power_ctrl_txpower_incrs:
+0x0728 002888 fetch 1 ,mem_power_ctrl_level 
+0x0729 002889 beq 2 ,power_ctrl_incrs_level2 
+0x072a 002890 increase 1 ,pdata 
+0x072b 002891 store 1 ,mem_power_ctrl_level 
+0x072c 002892 beq 1 ,power_ctrl_incrs_level1 
+:      002893 power_ctrl_incrs_level2:
+0x072d 002894 jam tx_power_5db ,mem_tx_power 
+0x072e 002895 rtn 
+:      002897 power_ctrl_decrs_level0:
+0x072f 002898 jam tx_power_f5db ,mem_tx_power 
+0x0730 002899 rtn 
+:      002902 p_set_freq_tx:
+0x0731 002903 storet 1 ,mem_last_freq 
+0x0732 002904 add temp ,0 ,rega 
+0x0733 002905 call rf_write_freq 
+0x0734 002906 setarg param_pll_setup 
+0x0735 002907 call sleep 
+:      002908 p_rf_tx_enable:
+0x0736 002909 jam 0x1 ,rfen_adc 
+0x0737 002910 jam 0x3c ,rfen_rx 
+0x0738 002911 jam 0xe0 ,rfen_tx 
+0x0739 002912 nop 10 
+0x073a 002913 jam 0x01 ,rfen_mdm 
+0x073b 002914 jam 0x3d ,rfen_mdm 
+0x073c 002915 nop 10 
+0x073d 002916 jam 0xb7 ,rfen_sn 
+0x073e 002917 nop 10 
+0x073f 002918 jam 0x7d ,rfen_mdm 
+0x0740 002919 fetch 1 ,mem_tx_power 
+0x0741 002922 beq tx_power_5db ,p_set_tx_power_5db 
+0x0742 002924 beq tx_power_f5db ,p_set_tx_power_f5db 
+0x0743 002925 beq tx_power_pair ,p_set_tx_power_pair 
+:      002927 p_set_tx_power_0db:
+0x0744 002928 call p_rx_low_sens 
+0x0745 002930 jam 0xd0 ,0x8955 
+0x0746 002931 jam 0xe0 ,0x8956 
+0x0747 002933 jam 0x6c ,0x8958 
+0x0748 002935 branch set_tx_power_0db 
+:      002947 p_set_tx_power_5db:
+0x0749 002948 call p_rx_high_sens 
+0x074a 002950 jam 0xd0 ,0x8955 
+0x074b 002951 jam 0xe0 ,0x8956 
+0x074c 002953 jam 0x3c ,0x8958 
+0x074d 002955 branch set_tx_power_5db 
+:      002967 p_set_tx_power_f5db:
+0x074e 002968 call p_rx_low_sens 
+0x074f 002970 jam 0xd0 ,0x8955 
+0x0750 002971 jam 0xc0 ,0x8956 
+0x0751 002973 jam 0x6c ,0x8958 
+0x0752 002975 branch set_tx_power_f5db 
+:      002977 p_rx_low_sens:
+0x0753 002978 jam 0x5b ,0x894c 
+0x0754 002979 jam 0x96 ,0x894d 
+0x0755 002980 jam 0x2c ,0x894e 
+0x0756 002981 jam 0x46 ,0x894f 
+0x0757 002982 rtn 
+:      002984 p_rx_high_sens:
+0x0758 002985 jam 0xfb ,0x894c 
+0x0759 002986 jam 0xef ,0x894d 
+0x075a 002987 jam 0xec ,0x894e 
+0x075b 002988 jam 0x5e ,0x894f 
+0x075c 002989 rtn 
+:      002991 p_set_tx_power_pair:
+0x075d 002993 jam 0xc2 ,0x8956 
+0x075e 002994 jam 0xd0 ,0x8955 
+0x075f 002995 rtn 
+:      002997 p_shutdown_radio:
+0x0760 002998 force 8 ,radio_ctrl 
+0x0761 002999 branch shutdown_radio + 1 
+:      003001 p_initialize_radio_cont:
+0x0762 003002 call initialize_radio_cont + 1 
+0x0763 003003 jam clksel_dpll ,core_clksel 
+0x0764 003004 rtn 
+:      003007 p_zcode_entrance:
+0x0765 003008 fetcht 1 ,mem_zcode_temp_param0 
+0x0766 003009 rshift4 temp ,temp 
+0x0767 003010 fetch 1 ,mem_zcode_current_number 
+0x0768 003011 isub temp ,null 
+0x0769 003012 branch p_zcode_run ,zero 
+0x076a 003013 storet 1 ,mem_zcode_current_number 
+0x076b 003014 increase 1 ,temp 
+0x076c 003015 setarg zcode_buff_size 
+0x076d 003016 imul32 temp ,temp 
+0x076e 003017 fetch 3 ,mem_xip_flash_offset 
+0x076f 003018 isub temp ,pdata 
+0x0770 003020 fetcht 3 ,mem_flash_start_addr 
+0x0771 003021 iadd temp ,pdata 
+0x0772 003022 increase -5 ,pdata 
+0x0773 003023 store 3 ,mem_flash_address 
+0x0774 003024 call p_flash_release_deep_power_down 
+:      003025 p_zcode_read_loop:
+0x0775 003026 fetch 3 ,mem_flash_address 
+0x0776 003027 arg zcode_buff_size ,temp 
+0x0777 003028 arg mem_zcode_buff ,rega 
+0x0778 003029 call spid_read_flash 
+0x0779 003030 fetch 4 ,mem_zcode_buff 
+0x077a 003031 fetcht 4 ,mem_zcode_head 
+0x077b 003032 isub temp ,null 
+0x077c 003033 nbranch p_zcode_read_loop ,zero 
+0x077d 003034 call p_mouse_spi_init 
+0x077e 003036 setarg mem_zcode_buff 
+0x077f 003037 store 2 ,mem_patch_ptr 
+0x0780 003038 jam zcode_code_size ,mem_patch_len 
+0x0781 003039 call load_ucode 
+0x0782 003040 setarg 0 
+0x0783 003041 store 4 ,mem_patch_ptr 
+:      003042 p_zcode_run:
+0x0784 003043 fetch 1 ,mem_zcode_temp_param0 
+0x0785 003044 branch p_zcode 
+:      003049 p_drawing_optima:
+0x0786 003050 fetch 4 ,mem_mouse_x 
+0x0787 003051 rtn blank 
+0x0788 003052 call p_data_abs_check 
+0x0789 003053 setarg 0x06 
+0x078a 003054 call p_data_greater_than_check 
+0x078b 003055 setarg 0x03 
+0x078c 003056 call p_data_less_than_check 
+0x078d 003057 fetch 1 ,mem_mouse_asm_flag 
+0x078e 003058 beq 1 ,p_drawing_optima_modify 
+:      003059 p_drawing_optima_init:
+0x078f 003060 arg 5 ,loopcnt 
+0x0790 003061 arg mem_mouse_asm_flag ,contw 
+0x0791 003062 branch clear_mem 
+:      003064 p_drawing_optima_modify:
+0x0792 003065 fetch 2 ,mem_mouse_x_pre 
+0x0793 003066 store 2 ,mem_data_pre 
+0x0794 003067 fetch 2 ,mem_mouse_x 
+0x0795 003068 store 2 ,mem_data_current 
+0x0796 003069 call p_drawing_optima_data_x 
+0x0797 003070 fetch 2 ,mem_data_pre 
+0x0798 003071 store 2 ,mem_mouse_x_pre 
+0x0799 003072 fetch 2 ,mem_data_current 
+0x079a 003073 store 2 ,mem_mouse_x 
+0x079b 003075 fetch 2 ,mem_mouse_y_pre 
+0x079c 003076 store 2 ,mem_data_pre 
+0x079d 003077 fetch 2 ,mem_mouse_y 
+0x079e 003078 store 2 ,mem_data_current 
+0x079f 003079 call p_drawing_optima_data_y 
+0x07a0 003080 fetch 2 ,mem_data_pre 
+0x07a1 003081 store 2 ,mem_mouse_y_pre 
+0x07a2 003082 fetch 2 ,mem_data_current 
+0x07a3 003083 store 2 ,mem_mouse_y 
+0x07a4 003084 rtn 
+:      003086 p_drawing_optima_data_x:
+0x07a5 003087 fetch 2 ,mem_data_pre 
+0x07a6 003088 fetcht 2 ,mem_data_current 
+0x07a7 003089 iadd temp ,pdata 
+0x07a8 003090 fetcht 1 ,mem_mouse_data_xtemp 
+0x07a9 003091 iadd temp ,pdata 
+0x07aa 003092 and pdata ,0x01 ,temp 
+0x07ab 003093 storet 1 ,mem_mouse_data_xtemp 
+0x07ac 003094 branch p_drawing_optima_data 
+:      003096 p_drawing_optima_data_y:
+0x07ad 003097 fetch 2 ,mem_data_pre 
+0x07ae 003098 fetcht 2 ,mem_data_current 
+0x07af 003099 iadd temp ,pdata 
+0x07b0 003100 fetcht 1 ,mem_mouse_data_ytemp 
+0x07b1 003101 iadd temp ,pdata 
+0x07b2 003102 and pdata ,0x01 ,temp 
+0x07b3 003103 storet 1 ,mem_mouse_data_ytemp 
+0x07b4 003104 branch p_drawing_optima_data 
+:      003110 p_drawing_optima_data:
+0x07b5 003111 store 3 ,mem_data_sum 
+0x07b6 003112 isolate1 16 ,pdata 
+0x07b7 003113 branch p_data_sum_overflow ,true 
+0x07b8 003114 fetch 1 ,mem_data_sum + 1 
+0x07b9 003115 beq 0xff ,p_data_sum_n 
+0x07ba 003116 fetch 1 ,mem_data_sum 
+:      003117 p_data_store_pre:
+0x07bb 003118 rshift pdata ,pdata 
+0x07bc 003119 store 2 ,mem_data_pre 
+0x07bd 003120 store 2 ,mem_data_current 
+0x07be 003121 rtn 
+:      003122 p_data_sum_overflow:
+0x07bf 003123 fetch 1 ,mem_data_sum + 1 
+0x07c0 003124 beq 0 ,p_data_sum_overflow_p 
+0x07c1 003125 fetch 3 ,mem_data_sum 
+0x07c2 003126 branch p_data_store_pre 
+:      003127 p_data_sum_overflow_p:
+0x07c3 003128 jam 0 ,mem_data_sum + 2 
+0x07c4 003129 fetch 1 ,mem_data_sum 
+0x07c5 003130 branch p_data_store_pre 
+:      003132 p_data_sum_n:
+0x07c6 003133 fetch 1 ,mem_data_sum 
+0x07c7 003134 call p_pdata_get_half 
+0x07c8 003135 store 1 ,mem_data_pre 
+0x07c9 003136 store 1 ,mem_data_current 
+0x07ca 003137 branch p_data_zero ,blank 
+0x07cb 003138 setarg 0xff 
+:      003139 p_data_set_direction:
+0x07cc 003140 store 1 ,mem_data_pre + 1 
+0x07cd 003141 store 1 ,mem_data_current + 1 
+0x07ce 003142 rtn 
+:      003143 p_data_zero:
+0x07cf 003144 setarg 0 
+0x07d0 003145 branch p_data_set_direction 
+:      003147 p_pdata_get_half:
+0x07d1 003148 sub pdata ,0 ,pdata 
+0x07d2 003149 store 1 ,mem_rega 
+0x07d3 003150 fetch 1 ,mem_rega 
+0x07d4 003151 rshift pdata ,pdata 
+0x07d5 003152 store 1 ,mem_rega 
+0x07d6 003153 fetch 1 ,mem_rega 
+0x07d7 003154 sub pdata ,0 ,pdata 
+0x07d8 003155 rtn 
+:      003159 p_data_greater_than_check:
+0x07d9 003160 isub rega ,null 
+0x07da 003161 nbranch p_enable_asm ,positive 
+0x07db 003162 isub regb ,null 
+0x07dc 003163 nbranch p_enable_asm ,positive 
+:      003164 p_disable_asm:
+0x07dd 003165 jam 0 ,mem_mouse_asm_flag 
+0x07de 003166 rtn 
+:      003167 p_data_less_than_check:
+0x07df 003168 isub rega ,null 
+0x07e0 003169 nrtn positive 
+0x07e1 003170 isub regb ,null 
+0x07e2 003171 nrtn positive 
+0x07e3 003172 branch p_disable_asm 
+:      003173 p_enable_asm:
+0x07e4 003174 jam 1 ,mem_mouse_asm_flag 
+0x07e5 003175 rtn 
+:      003177 p_data_abs_check:
+0x07e6 003178 fetch 2 ,mem_mouse_x 
+0x07e7 003179 call p_data_abs 
+0x07e8 003180 copy pdata ,rega 
+0x07e9 003181 fetch 2 ,mem_mouse_y 
+0x07ea 003182 call p_data_abs 
+0x07eb 003183 copy pdata ,regb 
+0x07ec 003184 rtn 
+:      003190 p_data_abs:
+0x07ed 003191 store 2 ,mem_data_current 
+0x07ee 003192 fetch 1 ,mem_data_current + 1 
+0x07ef 003193 beq 0xff ,p_data_reversal 
+0x07f0 003194 fetch 1 ,mem_data_current 
+:      003195 p_data_abs_store:
+0x07f1 003196 and_into 0xff ,pdata 
+0x07f2 003198 rtn 
+:      003199 p_data_reversal:
+0x07f3 003200 fetch 2 ,mem_data_current 
+0x07f4 003201 sub pdata ,0 ,pdata 
+0x07f5 003202 branch p_data_abs_store 
               org 0x2000
-:      003205 start:
-0x2000 003206 call lpmstate 
-:      003208 soft_reset:
-0x2001 003209 bpatch patch00_0 ,mem_patch00 
-0x2002 003210 clear_stack 
-0x2003 003211 call spi_ncs_gpio_init 
-0x2004 003212 call initialize_radio 
-0x2005 003213 call iicd_init_12m 
-0x2006 003214 call init_param 
-0x2007 003215 call l2cap_init 
-0x2008 003216 bpatch patch00_1 ,mem_patch00 
-0x2009 003217 call rfcomm_init 
-0x200a 003218 call init_lmp 
-0x200b 003219 call ui_init 
-0x200c 003220 call app_init 
-0x200d 003221 ncall load_chip_option ,wake 
-0x200e 003222 bpatch patch00_2 ,mem_patch00 
-0x200f 003223 call app_lpm_init ,wake 
-0x2010 003224 call publickey_init 
-0x2011 003225 call lpm_recover_clk ,wake 
-:      003226 main_loop:
-0x2012 003227 bpatch patch00_3 ,mem_patch00 
-0x2013 003228 call sp_calc_sequence 
-0x2014 003229 call sp_calc_sequence_256 
-0x2015 003230 call sp_calc_sequence_256_check 
-0x2016 003231 call le_dispatch 
-0x2017 003232 bpatch patch00_4 ,mem_patch00 
-0x2018 003233 call idle_dispatch 
-0x2019 003234 call app_process_idle 
-0x201a 003235 call inquiry_dispatch 
-0x201b 003236 call inquiry_scan_dispatch 
-0x201c 003237 call page_scan_dispatch 
-0x201d 003238 call connection_dispatch 
-0x201e 003239 call lpm_dispatch 
-0x201f 003240 call g24_dispatch 
-0x2020 003241 branch main_loop 
-:      003243 connection_dispatch:
-0x2021 003244 call connection_incontext 
-0x2022 003245 rtnmark0 mark_context 
-0x2023 003246 set0 mark_context ,mark 
-0x2024 003247 call context_save 
-0x2025 003248 branch le_disable 
-:      003250 connection_incontext:
-0x2026 003251 bpatch patch00_5 ,mem_patch00 
-0x2027 003252 call context_search_insniff 
-0x2028 003253 nbranch connection_nosniff ,zero 
-0x2029 003254 call context_load 
-0x202a 003255 add rega ,coffset_mode ,contr 
-0x202b 003256 ifetch 1 ,contr 
-0x202c 003257 bbit1 mode_le ,le_conn_dispatch 
-0x202d 003258 bbit1 mode_master ,master_dispatch 
-0x202e 003259 branch slave_dispatch 
-:      003260 connection_nosniff:
-0x202f 003261 call context_get_next 
-0x2030 003262 copy loopcnt ,null 
-0x2031 003263 rtn zero 
-0x2032 003264 call context_load 
-0x2033 003265 fetch 1 ,mem_state 
-0x2034 003266 bbit1 state_inpage ,master_page 
-0x2035 003267 fetch 1 ,mem_mode 
-0x2036 003268 bbit1 mode_master ,master_dispatch 
-0x2037 003269 branch slave_dispatch 
-:      003277 idle_dispatch:
-0x2038 003278 fetch 1 ,mem_hci_cmd 
-0x2039 003279 rtn blank 
-0x203a 003280 beq hci_cmd_inquiry ,idle_inquiry 
-0x203b 003281 beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
-0x203c 003282 beq hci_cmd_remote_name_req ,idle_remote_name_req 
-0x203d 003283 beq hci_cmd_create_conn ,idle_create_conn 
-0x203e 003284 beq hci_cmd_le_create_conn ,idle_le_create_conn 
-0x203f 003285 call context_search_conn_handle 
-0x2040 003286 rtn zero 
-0x2041 003287 call context_search_plap 
-0x2042 003288 rtn zero 
-:      003289 idle_exit:
-0x2043 003290 jam 0 ,mem_hci_cmd 
-0x2044 003291 rtn 
-:      003293 idle_le_create_conn:
-0x2045 003294 jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
-0x2046 003295 jam 0 ,mem_hci_cmd 
-0x2047 003296 rtn 
-:      003298 idle_inquiry:
-0x2048 003299 set1 mark_inquiry_on ,mark 
-0x2049 003300 set0 mark_inquiry_trainb ,mark 
-0x204a 003301 jam param_ninquiry ,mem_ninqy_index 
-0x204b 003302 jam 31 ,mem_nfreq_index_inq 
-0x204c 003303 branch idle_exit 
-:      003305 idle_inquiry_cancel:
-0x204d 003306 set0 mark_inquiry_on ,mark 
-0x204e 003307 force 0 ,stop_watch 
-0x204f 003308 branch idle_exit 
-:      003310 idle_remote_name_req:
-0x2050 003311 call context_search_plap 
-0x2051 003312 rtn zero 
-0x2052 003313 force lmp_name_req ,temp 
-0x2053 003314 jam 5 ,mem_nameres_cnt 
-0x2054 003315 branch idle_start_page 
-:      003317 idle_create_conn:
-0x2055 003318 bpatch patch00_6 ,mem_patch00 
-:      003319 idle_create_conn_device:
-0x2056 003320 fetch 6 ,mem_hci_plap 
-0x2057 003321 branch idle_exit ,blank 
-0x2058 003322 jam reconnect_hid ,memui_reconnect_mode 
-0x2059 003324 jam conn_sm_wait_features_res ,mem_conn_sm 
-0x205a 003325 branch idle_create_conn_cont 
-:      003327 idle_create_conn_cont:
-0x205b 003328 force lmp_version_req ,temp 
-:      003329 idle_start_page:
-0x205c 003330 bpatch patch00_7 ,mem_patch00 
-0x205d 003331 fetch 1 ,mem_page_mode 
-0x205e 003332 branch idle_page_mode_r0 ,blank 
-0x205f 003333 lshift3 pdata ,pdata 
-0x2060 003334 lshift4 pdata ,pdata 
-0x2061 003335 increase -1 ,pdata 
-:      003336 idle_page_mode_r0:
-0x2062 003337 store 1 ,mem_npage 
-0x2063 003338 store 1 ,mem_npage_index 
-0x2064 003339 jam 31 ,mem_nfreq_index_page 
-0x2065 003340 set0 mark_page_trainb ,mark 
-0x2066 003341 call context_new 
-0x2067 003342 nbranch idle_page_fail ,zero 
-0x2068 003343 call get_free_amaddr 
-0x2069 003344 store 1 ,mem_amaddr 
-0x206a 003345 storet 1 ,mem_lmo_opcode2 
-0x206b 003346 fetch 6 ,mem_hci_plap 
-0x206c 003347 store 6 ,mem_plap 
-0x206d 003348 bpatch patch01_0 ,mem_patch01 
-0x206e 003349 call timer_reinit 
-0x206f 003350 force 0 ,pdata 
-0x2070 003351 compare lmp_name_req ,temp ,0xff 
-0x2071 003352 nsetflag true ,state_init_seq ,pdata 
-0x2072 003353 set1 state_inpage ,pdata 
-0x2073 003354 store 1 ,mem_state 
-0x2074 003355 jam bt_evt_reconn_started ,mem_fifo_temp 
-0x2075 003356 call ui_ipc_send_event 
-0x2076 003357 force 0 ,pdata 
-0x2077 003358 setflag true ,smap_name_req ,pdata 
-0x2078 003359 store 1 ,mem_state_map 
-0x2079 003360 setarg 0 
-0x207a 003361 set1 mode_master ,pdata 
-0x207b 003362 store 1 ,mem_mode 
-0x207c 003363 enable master 
-0x207d 003364 call context_save 
-0x207e 003365 disable master 
-0x207f 003366 force page_length_timer ,queue 
-0x2080 003367 fetch 2 ,mem_page_to 
-0x2081 003368 call timer_init 
-0x2082 003369 branch idle_exit 
-:      003370 idle_page_fail:
-0x2083 003371 bpatch patch01_1 ,mem_patch01 
-0x2084 003372 fetch 6 ,mem_hci_plap 
-0x2085 003373 store 6 ,mem_plap 
-0x2086 003374 compare lmp_name_req ,temp ,0xff 
-0x2087 003375 branch idle_name_fail ,true 
-0x2088 003376 branch idle_exit 
-:      003377 idle_name_fail:
-0x2089 003378 arg mem_tmp_buffer ,contw 
-0x208a 003379 arg 8 ,loopcnt 
-0x208b 003380 call memset0 
-0x208c 003381 jam bt_evt_reconn_failed ,mem_fifo_temp 
-0x208d 003382 call ui_ipc_send_event 
-0x208e 003383 branch idle_exit 
-:      003390 inquiry_dispatch:
-0x208f 003391 rtnmark0 mark_inquiry_on 
-0x2090 003392 force inquiry_length_timer ,queue 
-0x2091 003393 call timer_check 
-0x2092 003394 nsetflag blank ,mark_inquiry_on ,mark 
-0x2093 003395 nbranch inquiry_start ,blank 
-0x2094 003396 rtn 
-:      003400 inquiry_start:
-0x2095 003401 bpatch patch01_2 ,mem_patch01 
-0x2096 003402 fetcht 2 ,mem_inq_window 
-0x2097 003403 force 4 ,queue 
-0x2098 003404 call sniff_check_window 
-0x2099 003405 rtn user 
-0x209a 003406 call afh_clear 
-0x209b 003407 force 0 ,freq_mode 
-:      003408 inquiry_restart:
-0x209c 003409 rtn timeout 
-0x209d 003410 set0 mark_fhs_already_good ,mark 
-0x209e 003411 set0 mark_fhs_eir ,mark 
-:      003412 inquiry_rx_restart:
-0x209f 003413 add clkn_bt ,1 ,bt_clk 
-0x20a0 003414 isolate1 mark_inquiry_trainb ,mark 
-0x20a1 003415 setflag true ,2 ,freq_mode 
-0x20a2 003416 compare 0x00 ,bt_clk ,0x02 
-0x20a3 003417 nbranch inquiry_receive ,true 
-:      003419 inquiry_transmit:
-0x20a4 003420 bpatch patch01_3 ,mem_patch01 
-0x20a5 003421 fetch 1 ,mem_inquiry_transmit 
-0x20a6 003422 increase 1 ,pdata 
-0x20a7 003423 store 1 ,mem_inquiry_transmit 
-0x20a8 003424 call fetch_giac 
-0x20a9 003425 call tx_radio_freq 
-0x20aa 003426 call fetch_diac 
-0x20ab 003427 call start_transmitter 
-0x20ac 003428 call start_tx_native 
-0x20ad 003429 call send_access_word 
-0x20ae 003430 call end_of_packet 
-0x20af 003431 call inquiry_check_train 
-0x20b0 003432 branch inquiry_restart 
-:      003434 inquiry_check_train:
-0x20b1 003435 bpatch patch01_4 ,mem_patch01 
-0x20b2 003436 fetch 1 ,mem_nfreq_index_inq 
-0x20b3 003437 increase -1 ,pdata 
-0x20b4 003438 store 1 ,mem_nfreq_index_inq 
-0x20b5 003439 rtn positive 
-0x20b6 003440 jam 31 ,mem_nfreq_index_inq 
-0x20b7 003441 fetch 1 ,mem_ninqy_index 
-0x20b8 003442 increase -1 ,pdata 
-0x20b9 003443 store 1 ,mem_ninqy_index 
-0x20ba 003444 rtn positive 
-0x20bb 003445 setflip mark_inquiry_trainb ,mark 
-0x20bc 003446 jam param_ninquiry ,mem_ninqy_index 
-0x20bd 003447 rtn 
-:      003449 inquiry_receive:
-0x20be 003450 bpatch patch01_5 ,mem_patch01 
-0x20bf 003451 call fetch_giac 
-0x20c0 003452 call rx_radio_freq 
-0x20c1 003453 call fetch_diac 
-0x20c2 003454 call start_rx_native 
-0x20c3 003455 call start_receiver 
-0x20c4 003456 call wait_access_clkn_rt 
-0x20c5 003457 branch inquiry_sync ,sync 
-0x20c6 003458 call inquiry_check_train 
-0x20c7 003459 branch inquiry_rx_restart 
-:      003460 inquiry_sync:
-0x20c8 003461 bpatch patch01_6 ,mem_patch01 
-0x20c9 003462 call save_rssi 
-0x20ca 003463 call scan_mode_whiten 
-0x20cb 003464 call receive_packet_whitened 
-0x20cc 003465 set0 mark_rxbuf_inuse ,mark 
-0x20cd 003466 rtnmark0 mark_fhs_already_good 
-:      003467 inquiry_receive_rtn:
-0x20ce 003468 bpatch patch01_7 ,mem_patch01 
-:      003469 inquiry_receive_eir_rtn:
-0x20cf 003470 fetch 1 ,mem_inquiry_rcv 
-0x20d0 003471 increase 1 ,pdata 
-0x20d1 003472 store 1 ,mem_inquiry_rcv 
-0x20d2 003473 rtn 
-:      003481 master_page:
-0x20d3 003482 bpatch patch02_0 ,mem_patch02 
-0x20d4 003483 enable master 
-0x20d5 003484 enable clknt 
-0x20d6 003485 fetch 2 ,mem_page_interval 
-0x20d7 003486 branch master_page_no_interval ,blank 
-0x20d8 003487 force page_interval_timer ,queue 
-0x20d9 003488 call timer_check 
-0x20da 003489 nrtn blank 
-:      003490 master_page_no_interval:
-0x20db 003491 bpatch patch02_1 ,mem_patch02 
-0x20dc 003492 fetcht 2 ,mem_page_window 
-0x20dd 003493 force 40 ,queue 
-0x20de 003494 call sniff_check_window 
-0x20df 003495 branch page_exit ,user 
-0x20e0 003496 force page_length_timer ,queue 
-0x20e1 003497 call timer_check 
-0x20e2 003498 nbranch page_start ,blank 
-0x20e3 003499 fetch 1 ,mem_state_map 
-0x20e4 003500 bbit1 smap_name_req ,master_npage_timeout 
-0x20e5 003501 branch master_page_timeout 
-:      003502 master_npage_timeout:
-0x20e6 003503 arg mem_tmp_buffer ,contw 
-0x20e7 003504 arg 8 ,loopcnt 
-0x20e8 003505 call memset0 
-:      003506 master_page_timeout:
-0x20e9 003507 bpatch patch02_2 ,mem_patch02 
-0x20ea 003508 jam 0 ,mem_state 
-0x20eb 003509 call init_lmp_work 
-0x20ec 003510 jam 0 ,memui_reconnect_mode 
-0x20ed 003511 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
-0x20ee 003512 call ui_ipc_send_event 
-0x20ef 003513 branch page_exit 
-:      003515 page_start:
-0x20f0 003516 bpatch patch02_3 ,mem_patch02 
-0x20f1 003517 force 0 ,timeup 
-0x20f2 003518 until clkn_rt ,meet 
-0x20f3 003519 fetch 1 ,mem_page_clk 
-0x20f4 003520 increase -1 ,pdata 
-0x20f5 003521 ixor clkn_bt ,pdata 
-0x20f6 003522 compare 0 ,pdata ,3 
-0x20f7 003523 nbranch page_start ,true 
-0x20f8 003524 deposit am_addr 
-0x20f9 003525 store 1 ,mem_fhs_am_addr 
-0x20fa 003526 force 0 ,n_tx_slot 
-0x20fb 003527 force 0 ,freq_mode 
-:      003529 page_restart:
-0x20fc 003530 bpatch patch02_4 ,mem_patch02 
-0x20fd 003531 branch page_exit ,timeout 
-0x20fe 003532 call fetch_page_bt_adr 
-0x20ff 003533 arg param_rf_setup ,timeup 
-0x2100 003534 until clkn_rt ,meet 
-:      003535 page_rx_restart:
-0x2101 003536 bpatch patch02_5 ,mem_patch02 
-0x2102 003537 fetch 4 ,mem_page_clk 
-0x2103 003538 iforce bt_clk 
-0x2104 003539 increase 1 ,pdata 
-0x2105 003540 store 4 ,mem_page_clk 
-0x2106 003541 isolate1 mark_page_trainb ,mark 
-0x2107 003542 setflag true ,2 ,freq_mode 
-0x2108 003543 compare 0x00 ,bt_clk ,0x02 
-0x2109 003544 nbranch page_receive ,true 
-0x210a 003545 fetch 1 ,mem_page_transmit 
-0x210b 003546 increase 1 ,pdata 
-0x210c 003547 store 1 ,mem_page_transmit 
-0x210d 003548 call tx_radio_freq 
-0x210e 003549 call start_transmitter 
-0x210f 003550 call start_tx_native 
-0x2110 003551 call send_access_word 
-0x2111 003552 call end_of_packet 
-0x2112 003553 call page_check_train 
-0x2113 003554 branch page_restart 
-:      003555 page_exit:
-0x2114 003556 bpatch patch02_6 ,mem_patch02 
-0x2115 003557 disable master 
-0x2116 003558 fetch 2 ,mem_page_interval 
-0x2117 003559 rtn blank 
-0x2118 003560 force page_interval_timer ,queue 
-0x2119 003561 branch timer_init 
-:      003563 page_check_train:
-0x211a 003564 bpatch patch02_7 ,mem_patch02 
-0x211b 003565 fetch 1 ,mem_nfreq_index_page 
-0x211c 003566 increase -1 ,pdata 
-0x211d 003567 store 1 ,mem_nfreq_index_page 
-0x211e 003568 rtn positive 
-0x211f 003569 jam 31 ,mem_nfreq_index_page 
-0x2120 003570 fetch 1 ,mem_npage_index 
-0x2121 003571 increase -1 ,pdata 
-0x2122 003572 store 1 ,mem_npage_index 
-0x2123 003573 rtn positive 
-0x2124 003574 setflip mark_page_trainb ,mark 
-0x2125 003575 fetch 1 ,mem_npage 
-0x2126 003576 store 1 ,mem_npage_index 
-0x2127 003577 rtn 
-:      003579 page_receive:
-0x2128 003580 bpatch patch03_0 ,mem_patch03 
-0x2129 003581 call rx_radio_freq 
-0x212a 003582 call start_rx_native 
-0x212b 003583 call start_receiver 
-0x212c 003584 call wait_access_clkn_rt 
-0x212d 003585 branch page_sync ,sync 
-0x212e 003586 call page_check_train 
-0x212f 003587 branch page_rx_restart 
-:      003588 page_sync:
-0x2130 003589 call end_of_packet 
-0x2131 003590 fetch 1 ,mem_page_rcv 
-0x2132 003591 increase 1 ,pdata 
-0x2133 003592 store 1 ,mem_page_rcv 
-0x2134 003593 force 0 ,stop_watch 
-0x2135 003594 fetch 4 ,mem_page_clk 
-:      003595 page_send_fhs:
-0x2136 003596 bpatch patch03_1 ,mem_patch03 
-0x2137 003597 call rf_setup_time_master_slot 
-0x2138 003598 call fetch_page_bt_adr 
-0x2139 003599 increase 1 ,n_tx_slot 
-:      003600 page_send_fhs_continue:
-0x213a 003601 and_into 0x1fd ,bt_clk 
-0x213b 003602 and_into 0x1fc ,freq_mode 
-0x213c 003603 call tx_radio_freq 
-0x213d 003604 call start_transmitter 
-0x213e 003605 call start_tx_native 
-0x213f 003606 call send_access_word 
-0x2140 003607 deposit clkn_bt 
-0x2141 003608 store 4 ,mem_clkn_bt 
-0x2142 003609 force 0 ,am_addr 
-0x2143 003610 force type_fhs ,type 
-0x2144 003611 call scan_mode_whiten 
-0x2145 003612 call transmit_packet_whitened 
-:      003613 page_wait_fhs_reply:
-0x2146 003614 bpatch patch03_2 ,mem_patch03 
-0x2147 003615 call rf_setup_time_slave_slot 
-0x2148 003616 or_into 0x02 ,bt_clk 
-0x2149 003617 and_into 0x1fc ,freq_mode 
-0x214a 003618 call rx_radio_freq 
-0x214b 003619 call start_rx_native 
-0x214c 003620 call start_receiver 
-0x214d 003621 call wait_access_clkn_rt 
-0x214e 003622 call end_of_packet ,sync 
-0x214f 003623 branch page_wait_fhs_reply_ok ,sync 
-0x2150 003624 fetch 1 ,mem_fhs_wait_counter 
-0x2151 003625 branch page_restart ,blank 
-0x2152 003626 increase -1 ,pdata 
-0x2153 003627 store 1 ,mem_fhs_wait_counter 
-0x2154 003628 branch page_send_fhs 
-:      003630 page_wait_fhs_reply_ok:
-0x2155 003631 bpatch patch03_3 ,mem_patch03 
-0x2156 003632 fetch 1 ,mem_page_rcv_fhs 
-0x2157 003633 increase 1 ,pdata 
-0x2158 003634 store 1 ,mem_page_rcv_fhs 
-0x2159 003635 call prepare_newconn 
-:      003636 master_newconn_loop:
-0x215a 003637 call master_newconn_once 
-0x215b 003638 branch newconn_poll_responded ,sync 
-0x215c 003639 call new_conn_timeout 
-0x215d 003640 nbranch master_newconn_loop ,blank 
-0x215e 003641 branch page_restart 
-:      003643 newconn_poll_responded:
-0x215f 003644 bpatch patch03_4 ,mem_patch03 
-0x2160 003645 fetch 1 ,mem_state 
-0x2161 003646 set0 state_inpage ,pdata 
-0x2162 003647 store 1 ,mem_state 
-0x2163 003648 call newconn_init 
-0x2164 003649 disable master 
-0x2165 003650 rtn 
-:      003653 master_dispatch:
-0x2166 003654 bpatch patch03_5 ,mem_patch03 
-0x2167 003655 enable master 
-0x2168 003656 enable clknt 
-0x2169 003657 call role_switch_master 
-0x216a 003658 rtn user 
-0x216b 003659 call check_bt_disabled 
-0x216c 003660 call rf_setup_time_master_slot 
-0x216d 003661 add clkn_bt ,1 ,bt_clk 
-0x216e 003662 call fetch_self_bt_adr 
-0x216f 003663 force 0x03 ,freq_mode 
-0x2170 003664 call scheduler_tx_l2cap_pkt 
-0x2171 003665 call prepare_tx 
-0x2172 003666 call tx_radio_freq 
-0x2173 003667 call start_transmitter 
-0x2174 003668 call start_tx_native 
-0x2175 003669 call send_access_word 
-0x2176 003670 call transmit_packet 
-:      003671 master_loop:
-0x2177 003672 bpatch patch03_6 ,mem_patch03 
-0x2178 003673 call parse_lmp 
-0x2179 003674 call master_conn_recv_packet 
-0x217a 003675 nbranch master_notmatch ,match 
-0x217b 003676 call supervision_flush 
-0x217c 003677 call parse_l2cap 
-0x217d 003678 fetch 1 ,mem_master_rcvcnt 
-0x217e 003679 increase 1 ,pdata 
-0x217f 003680 store 1 ,mem_master_rcvcnt 
-:      003681 master_notmatch:
-0x2180 003682 bpatch patch03_7 ,mem_patch03 
-0x2181 003683 call scheduler_process 
-0x2182 003684 call check_master_disconnect 
-0x2183 003685 nrtn master 
-0x2184 003686 call check_attempt 
-0x2185 003687 nbranch master_attempt ,blank 
-:      003688 master_exit:
-0x2186 003689 disable master 
-0x2187 003690 rtn 
-:      003692 master_attempt:
-0x2188 003693 call prepare_tx 
-0x2189 003694 call master_conn_send_packet 
-0x218a 003695 branch master_loop 
-:      003698 check_master_disconnect:
-0x218b 003699 branch check_master_match ,match 
-0x218c 003700 call supervision_update 
-0x218d 003701 branch master_disconnect ,positive 
-:      003702 check_master_match:
-0x218e 003703 call check_disconnect_timeout 
-0x218f 003704 nbranch master_disconnect ,user 
-0x2190 003705 fetch 1 ,mem_state_map 
-0x2191 003706 rtnbit0 smap_name_req 
-0x2192 003707 rtnbit1 smap_name_res 
-0x2193 003708 fetch 1 ,mem_op 
-0x2194 003709 rtnbit1 op_disconn 
-0x2195 003710 call conn_timer_expired 
-0x2196 003711 nrtn blank 
-0x2197 003712 fetch 1 ,mem_nameres_cnt 
-0x2198 003713 increase -1 ,pdata 
-0x2199 003714 store 1 ,mem_nameres_cnt 
-0x219a 003715 nrtn blank 
-0x219b 003716 branch lmp_disconnect 
-:      003718 master_disconnect:
-0x219c 003719 bpatch patch04_0 ,mem_patch04 
-0x219d 003720 call quit_connection 
-0x219e 003721 disable master 
-0x219f 003722 fetch 1 ,mem_state_map 
-0x21a0 003723 bbit1 smap_name_req ,master_name_disconnect 
-0x21a1 003724 rtn 
-:      003726 master_name_disconnect:
-0x21a2 003727 fetch 1 ,mem_state_map 
-0x21a3 003728 rtnbit1 smap_name_res 
-:      003729 master_name_error:
-0x21a4 003730 arg mem_tmp_buffer ,contw 
-0x21a5 003731 arg 8 ,loopcnt 
-0x21a6 003732 branch memset0 
-:      003734 check_disconnect_timeout:
-0x21a7 003735 bpatch patch04_1 ,mem_patch04 
-0x21a8 003736 enable user 
-0x21a9 003737 fetch 1 ,mem_op 
-0x21aa 003738 rtnbit0 op_disconn 
-0x21ab 003739 call conn_timer_expired 
-0x21ac 003740 nrtn blank 
-0x21ad 003741 branch disable_user 
-:      003743 conn_timer_expired:
-0x21ae 003744 fetch 1 ,mem_conn_timer 
-0x21af 003745 increase -1 ,pdata 
-0x21b0 003746 store 1 ,mem_conn_timer 
-0x21b1 003747 rtn 
-:      003749 linkkey_ready:
-0x21b2 003750 bpatch patch04_2 ,mem_patch04 
-0x21b3 003751 fetch 1 ,mem_state 
-0x21b4 003752 bbit1 state_linkkey ,linkkey_set 
-0x21b5 003753 fetch 1 ,mem_pairing_auth 
-0x21b6 003754 branch linkkey_set ,blank 
-0x21b7 003755 jam defalt_pairing_auth ,mem_pairing_auth 
-0x21b8 003756 jam bt_evt_linkkey_generate ,mem_fifo_temp 
-0x21b9 003757 call ui_ipc_send_event 
-0x21ba 003758 branch linkkey_set 
-:      003759 linkkey_set:
-0x21bb 003760 bpatch patch04_3 ,mem_patch04 
-0x21bc 003761 call context_traverse_linkkey 
-0x21bd 003762 fetch 1 ,mem_state 
-0x21be 003763 set1 state_linkkey ,pdata 
-0x21bf 003764 store 1 ,mem_state 
-0x21c0 003765 jam 1 ,mem_link_key_exists 
-0x21c1 003766 fetch 1 ,mem_conn_sm 
-0x21c2 003767 bne conn_sm_pairing ,linkkey_set_continue 
-:      003768 linkkey_set_continue:
-0x21c3 003769 rtn 
-:      003771 generate_linkkey_continue:
-0x21c4 003772 jam pairing_auth ,mem_pairing_auth 
-:      003773 clear_linkstate:
-0x21c5 003774 fetch 1 ,mem_state 
-0x21c6 003775 set0 state_linkkey ,pdata 
-0x21c7 003776 store 1 ,mem_state 
-0x21c8 003777 rtn 
-:      003781 role_switch_check:
-0x21c9 003782 bpatch patch04_4 ,mem_patch04 
-0x21ca 003783 disable user 
-0x21cb 003784 fetch 2 ,mem_tsniff 
-0x21cc 003785 arg 0xffff ,temp 
-0x21cd 003786 isub temp ,null 
-0x21ce 003787 nrtn zero 
-0x21cf 003788 fetch 4 ,mem_sniff_anchor 
-0x21d0 003789 branch role_switch_clkn ,clknt 
-0x21d1 003790 isub clke_bt ,pdata 
-0x21d2 003791 branch role_switch_clke 
-:      003792 role_switch_clkn:
-0x21d3 003793 isub clkn_bt ,pdata 
-:      003794 role_switch_clke:
-0x21d4 003795 sub pdata ,4 ,null 
-0x21d5 003796 nrtn positive 
-0x21d6 003797 force 0 ,pdata 
-0x21d7 003798 store 2 ,mem_tsniff 
-0x21d8 003799 branch enable_user 
-:      003803 role_switch_prepare:
-0x21d9 003804 copy pdata ,temp 
-0x21da 003805 bpatch patch04_5 ,mem_patch04 
-0x21db 003806 storet 4 ,mem_sniff_anchor 
-:      003807 role_switch_prepare0:
-0x21dc 003808 jam switch_flag_accept ,mem_switch_flag 
-0x21dd 003809 setarg 0xffff 
-0x21de 003810 store 2 ,mem_tsniff 
-0x21df 003811 jam 1 ,mem_sniff_attempt 
-0x21e0 003812 rtn 
-:      003815 role_switch_master:
-0x21e1 003816 bpatch patch04_6 ,mem_patch04 
-0x21e2 003817 call role_switch_check 
-0x21e3 003818 nrtn user 
-0x21e4 003819 disable user 
-0x21e5 003820 jam param_newconnto ,mem_newconnto_counter 
-0x21e6 003821 set0 mark_fhs_already_good ,mark 
-:      003822 roles_waitfhs_loop:
-0x21e7 003823 call rf_setup_time_master_slot 
-0x21e8 003824 call master_recv_packet 
-0x21e9 003825 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
-0x21ea 003826 call new_conn_timeout 
-0x21eb 003827 nbranch roles_waitfhs_loop ,blank 
-:      003828 role_switch_fail_master:
-0x21ec 003829 bpatch patch04_7 ,mem_patch04 
-0x21ed 003830 disable user 
-0x21ee 003831 deposit clkn_bt 
-0x21ef 003832 store 4 ,mem_next_btclk 
-0x21f0 003833 enable clknt 
-0x21f1 003834 enable master 
-0x21f2 003835 jam bt_evt_switch_fail_master ,mem_fifo_temp 
-0x21f3 003836 branch ui_ipc_send_event 
-:      003838 roles_replyto_fhs:
-0x21f4 003839 bpatch patch05_0 ,mem_patch05 
-0x21f5 003840 call rf_setup_time_slave_slot 
-0x21f6 003841 arg type_id ,type 
-0x21f7 003842 call master_send_packet 
-0x21f8 003843 disable clknt 
-0x21f9 003844 disable master 
-0x21fa 003845 call apply_switch_clke 
-0x21fb 003846 call prepare_newconn 
-:      003847 roles_newconns_loop:
-0x21fc 003848 bpatch patch05_1 ,mem_patch05 
-0x21fd 003849 call slave_newconn_once 
-0x21fe 003850 branch roles_newconns_responded ,match 
-0x21ff 003851 call new_conn_timeout 
-0x2200 003852 nbranch roles_newconns_loop ,blank 
-0x2201 003853 branch role_switch_fail_master 
-:      003854 roles_newconns_responded:
-0x2202 003855 fetch 1 ,mem_mode 
-0x2203 003856 set0 mode_master ,pdata 
-0x2204 003857 store 1 ,mem_mode 
-0x2205 003858 call supervision_flush 
-0x2206 003859 call calc_clke_offset 
-0x2207 003860 enable user 
-0x2208 003861 jam bt_evt_switch_success_master ,mem_fifo_temp 
-0x2209 003862 branch ui_ipc_send_event 
-:      003867 context_load:
-0x220a 003868 bpatch patch05_2 ,mem_patch05 
-0x220b 003869 set1 mark_context ,mark 
-0x220c 003870 deposit rega 
-0x220d 003871 store 2 ,mem_context_ptr 
-0x220e 003872 force context_size ,loopcnt 
-0x220f 003873 arg mem_le_state ,contw 
-0x2210 003874 add rega ,coffset_mode ,contr 
-0x2211 003875 ifetch 1 ,contr 
-0x2212 003876 copy rega ,contr 
-0x2213 003877 bbit1 mode_le ,memcpy 
-0x2214 003878 arg mem_state ,contw 
-0x2215 003879 call memcpy 
-0x2216 003880 disable attempt 
-0x2217 003881 fetch 1 ,mem_amaddr 
-0x2218 003882 iforce am_addr 
-0x2219 003883 jam 1 ,mem_current_sniff_attempt 
-0x221a 003884 branch context_load_master ,master 
-0x221b 003885 jam 1 ,mem_current_sniff_attempt 
-:      003886 context_load_master:
-0x221c 003887 fetch 1 ,mem_state 
-0x221d 003888 rtnbit0 state_insniff 
-0x221e 003889 fetch 1 ,mem_sniff_attempt 
-0x221f 003890 store 1 ,mem_current_sniff_attempt 
-0x2220 003891 fetch 1 ,mem_sniff_timeout 
-0x2221 003892 store 1 ,mem_current_sniff_timeout 
-0x2222 003893 rtn 
-:      003895 context_save:
-0x2223 003896 bpatch patch05_3 ,mem_patch05 
-0x2224 003897 fetch 2 ,mem_context_ptr 
-0x2225 003898 iforce contw 
-0x2226 003899 force context_size ,loopcnt 
-0x2227 003900 arg mem_le_state ,contr 
-0x2228 003901 branch memcpy ,le 
-0x2229 003902 arg mem_state ,contr 
-0x222a 003903 branch memcpy 
-:      003907 context_get_next:
-0x222b 003908 arg context_num ,loopcnt 
-0x222c 003909 fetcht 1 ,mem_current_context 
-:      003910 context_get_next_loop:
-0x222d 003911 increase 1 ,temp 
-0x222e 003912 compare context_num ,temp ,0xff 
-0x222f 003913 nbranch context_get_next_cont ,true 
-0x2230 003914 arg 0 ,temp 
-:      003915 context_get_next_cont:
-0x2231 003916 storet 1 ,mem_current_context 
-0x2232 003917 mul32 temp ,context_size ,pdata 
-0x2233 003918 arg mem_context ,rega 
-0x2234 003919 iadd rega ,rega 
-0x2235 003920 ifetch 1 ,rega 
-0x2236 003921 bbit1 state_insniff ,context_get_next_sniff 
-0x2237 003922 rtnbit1 state_inconn 
-0x2238 003923 rtnbit1 state_inpage 
-:      003924 context_get_next_sniff:
-0x2239 003925 loop context_get_next_loop 
-0x223a 003926 rtn 
-:      003928 context_new:
-0x223b 003929 bpatch patch05_4 ,mem_patch05 
-0x223c 003930 arg context_search_empty ,regc 
-0x223d 003931 call context_search 
-0x223e 003932 nrtn zero 
-0x223f 003933 deposit rega 
-0x2240 003934 store 2 ,mem_context_ptr 
-0x2241 003935 force 0 ,null 
-0x2242 003936 rtn 
-:      003940 context_check_all_wack:
-0x2243 003941 call check_esco_amaddr 
-0x2244 003942 branch context_check_esco_wack ,true 
-0x2245 003943 fetch 2 ,mem_context_ptr 
-0x2246 003944 add pdata ,coffset_arq ,contw 
-0x2247 003945 fetch 1 ,mem_arq 
-0x2248 003946 istore 1 ,contw 
-0x2249 003947 arg context_check_a_wack ,regc 
-0x224a 003948 branch context_search 
-:      003950 context_check_esco_wack:
-0x224b 003951 fetch 1 ,mem_arq 
-0x224c 003952 isolate1 wack ,pdata 
-0x224d 003953 branch context_esco_wack ,true 
-0x224e 003954 force 1 ,null 
-0x224f 003955 rtn 
-:      003956 context_esco_wack:
-0x2250 003957 force 0 ,null 
-0x2251 003958 rtn 
-:      003961 context_check_idle:
-0x2252 003962 arg context_check_inconn ,regc 
-0x2253 003963 branch context_search 
-:      003965 context_traverse_linkkey:
-0x2254 003966 fetcht 2 ,mem_context_ptr 
-0x2255 003967 arg context_traverse_clearkey ,regc 
-0x2256 003968 branch context_search 
-:      003972 context_search_conn_handle:
-0x2257 003973 fetcht 1 ,mem_hci_conn_handle 
-:      003974 context_search_conn_handle2:
-0x2258 003975 arg context_search_handle ,regc 
-0x2259 003976 branch context_search 
-:      003978 context_search_plap:
-0x225a 003979 bpatch patch05_5 ,mem_patch05 
-0x225b 003980 fetcht 6 ,mem_hci_plap 
-:      003981 context_search_plap2:
-0x225c 003982 arg context_search_lap ,regc 
-0x225d 003983 branch context_search 
-:      003985 context_search_insniff:
-0x225e 003986 arg context_search_sniff ,regc 
-0x225f 003987 branch context_search 
-:      003989 context_search_sniff_window:
-0x2260 003990 arg context_search_window ,regc 
-:      003991 context_search:
-0x2261 003992 bpatch patch05_6 ,mem_patch05 
-0x2262 003993 arg mem_context ,rega 
-0x2263 003994 arg context_num ,loopcnt 
-:      003995 context_search_loop:
-0x2264 003996 ifetch 1 ,rega 
-0x2265 003997 copy regc ,pc 
-:      003998 context_search_next:
-0x2266 003999 increase context_size ,rega 
-0x2267 004000 loop context_search_loop 
-0x2268 004001 force 1 ,null 
-0x2269 004002 rtn 
-:      004004 context_search_empty:
-0x226a 004005 bbit1 state_inconn ,context_search_next 
-0x226b 004006 bbit1 state_inpage ,context_search_next 
-0x226c 004007 force 0 ,null 
-0x226d 004008 rtn 
-:      004010 context_search_lap:
-0x226e 004011 bbit1 state_inpage ,context_search_lap_cont 
-0x226f 004012 bbit0 state_inconn ,context_search_next 
-:      004013 context_search_lap_cont:
-0x2270 004014 add rega ,coffset_plap ,contr 
-0x2271 004015 ifetch 6 ,contr 
-0x2272 004016 isub temp ,null 
-0x2273 004017 rtn zero 
-0x2274 004018 branch context_search_next 
-:      004020 context_search_handle:
-0x2275 004021 bbit0 state_inconn ,context_search_next 
-0x2276 004022 add rega ,coffset_conn_handle ,contr 
-0x2277 004023 ifetch 1 ,contr 
-0x2278 004024 isub temp ,null 
-0x2279 004025 rtn zero 
-0x227a 004026 branch context_search_next 
-:      004028 context_search_sniff:
-0x227b 004029 bbit0 state_insniff ,context_search_next 
-:      004030 context_search_sniff_loop:
-0x227c 004031 call context_get_anchor 
-0x227d 004032 call sign_pdata_temp 
-0x227e 004033 isub temp ,pdata 
-0x227f 004034 increase 1 ,pdata 
-0x2280 004035 branch context_search_sniff_miss ,positive 
-0x2281 004036 copy contr ,regb 
-0x2282 004037 store 9 ,mem_temp 
-0x2283 004038 fetch 1 ,mem_le_sc_calc 
-0x2284 004039 nbranch context_search_sniff_sc ,blank 
-0x2285 004040 fetch 9 ,mem_temp 
-0x2286 004041 copy regb ,contr 
-0x2287 004042 increase 5 ,pdata 
-0x2288 004043 branch context_search_meet1 
-:      004044 context_search_sniff_sc:
-0x2289 004045 fetch 9 ,mem_temp 
-0x228a 004046 copy regb ,contr 
-0x228b 004047 increase 20 ,pdata 
-:      004048 context_search_meet1:
-0x228c 004049 nbranch context_search_next ,positive 
-:      004050 context_search_meet:
-0x228d 004051 copy temp ,bt_clk 
-0x228e 004052 call context_next_anchor 
-0x228f 004053 force 0 ,null 
-0x2290 004054 rtn 
-:      004057 context_search_sniff_miss:
-0x2291 004058 iforce regb 
-0x2292 004059 add rega ,coffset_tsniff ,contr 
-0x2293 004060 ifetch 2 ,contr 
-0x2294 004061 branch context_search_meet ,blank 
-0x2295 004062 call context_next_anchor 
-0x2296 004063 branch context_search_sniff_loop 
-:      004065 sign_pdata_temp:
-0x2297 004066 rshift16 pdata ,timeup 
-0x2298 004067 rshift8 timeup ,timeup 
-0x2299 004068 branch sign_pdata_temp_p0 ,zero 
-0x229a 004069 compare 0xf ,timeup ,0xf 
-0x229b 004070 nrtn true 
-0x229c 004071 rshift16 temp ,timeup 
-0x229d 004072 rshift8 timeup ,timeup 
-0x229e 004073 nrtn zero 
-0x229f 004074 set1 28 ,temp 
-0x22a0 004075 rtn 
-:      004076 sign_pdata_temp_p0:
-0x22a1 004077 rshift16 temp ,timeup 
-0x22a2 004078 rshift8 timeup ,timeup 
-0x22a3 004079 compare 0xf ,timeup ,0xf 
-0x22a4 004080 nrtn true 
-0x22a5 004081 set1 28 ,pdata 
-0x22a6 004082 rtn 
-:      004084 context_check_inconn:
-0x22a7 004085 bbit0 state_inconn ,context_search_next 
-0x22a8 004086 force 0 ,null 
-0x22a9 004087 rtn 
-:      004089 context_check_a_wack:
-0x22aa 004090 bbit0 state_inconn ,context_search_next 
-0x22ab 004091 add rega ,coffset_mode ,contr 
-0x22ac 004092 ifetch 1 ,contr 
-0x22ad 004093 bbit1 mode_le ,context_search_next 
-0x22ae 004094 add rega ,coffset_arq ,contr 
-0x22af 004095 ifetch 1 ,contr 
-0x22b0 004096 bbit0 wack ,context_search_next 
-0x22b1 004097 force 0 ,null 
-0x22b2 004098 rtn 
-:      004100 context_get_anchor:
-0x22b3 004101 add rega ,coffset_mode ,contr 
-0x22b4 004102 ifetcht 1 ,contr 
-0x22b5 004103 deposit clkn_bt 
-0x22b6 004104 isolate1 mode_master ,temp 
-0x22b7 004105 add rega ,coffset_sniff_anchor ,contr 
-0x22b8 004106 ifetcht 4 ,contr 
-0x22b9 004107 rtn true 
-0x22ba 004108 add rega ,coffset_clk_offset ,contr 
-0x22bb 004109 ifetch 6 ,contr 
-0x22bc 004110 call calc_clke2 
-0x22bd 004111 deposit clke_bt 
-0x22be 004112 rtn 
-:      004114 context_next_anchor:
-0x22bf 004115 add rega ,coffset_tsniff ,contr 
-0x22c0 004116 add rega ,coffset_sniff_anchor ,contw 
-0x22c1 004117 ifetch 2 ,contr 
-0x22c2 004118 iadd temp ,timeup 
-0x22c3 004119 deposit timeup 
-0x22c4 004120 istore 4 ,contw 
-0x22c5 004121 branch le_context_nexthop 
-:      004124 context_search_window:
-0x22c6 004125 bbit0 state_insniff ,context_search_next 
-0x22c7 004126 call context_get_anchor 
-0x22c8 004127 iadd stop_watch ,pdata 
-0x22c9 004128 iadd stop_watch ,pdata 
-0x22ca 004129 iadd queue ,pdata 
-0x22cb 004130 isub temp ,null 
-0x22cc 004131 nbranch context_search_next ,positive 
-0x22cd 004132 force 0 ,null 
-0x22ce 004133 rtn 
-:      004135 context_traverse_clearkey:
-0x22cf 004136 bbit0 state_inconn ,context_search_next 
-0x22d0 004137 deposit temp 
-0x22d1 004138 isub rega ,null 
-0x22d2 004139 branch context_search_next ,null 
-0x22d3 004140 add rega ,coffset_mode ,contr 
-0x22d4 004141 ifetch 1 ,contr 
-0x22d5 004142 bbit1 mode_le ,context_search_next 
-0x22d6 004143 ifetch 1 ,rega 
-0x22d7 004144 set0 state_linkkey ,pdata 
-0x22d8 004145 istore 1 ,rega 
-0x22d9 004146 branch context_search_next 
-:      004149 master_conn_send_packet:
-0x22da 004150 bpatch patch05_7 ,mem_patch05 
-0x22db 004151 call rf_setup_time_master_slot 
-:      004152 master_send_packet:
-0x22dc 004153 add clkn_bt ,1 ,bt_clk 
-0x22dd 004154 call fetch_self_bt_adr 
-0x22de 004155 force 0x03 ,freq_mode 
-0x22df 004156 call tx_radio_freq 
-0x22e0 004157 call start_transmitter 
-0x22e1 004158 call start_tx_native 
-0x22e2 004159 call send_access_word 
-0x22e3 004160 branch transmit_packet 
-:      004162 master_conn_recv_packet:
-0x22e4 004163 bpatch patch06_0 ,mem_patch06 
-0x22e5 004164 call rf_setup_time_slave_slot 
-:      004165 master_recv_packet:
-0x22e6 004166 add clkn_bt ,1 ,bt_clk 
-0x22e7 004167 call fetch_self_bt_adr 
-0x22e8 004168 force 0x03 ,freq_mode 
-0x22e9 004169 call rx_radio_freq 
-0x22ea 004170 call init_rx_packet_flags 
-0x22eb 004171 call prep_crypt 
-0x22ec 004172 call start_rx_native 
-0x22ed 004173 call start_receiver 
-:      004174 master_rx_conn_finish_packet:
-0x22ee 004175 call wait_access_clkn_rt 
-0x22ef 004176 nrtn sync 
-0x22f0 004177 call save_rssi 
-0x22f1 004178 branch receive_packet 
-:      004182 master_newconn_once:
-0x22f2 004183 bpatch patch06_1 ,mem_patch06 
-0x22f3 004184 fetch 1 ,mem_fhs_am_addr 
-0x22f4 004185 iforce am_addr 
-0x22f5 004186 force type_poll ,type 
-0x22f6 004187 call master_conn_send_packet 
-0x22f7 004188 branch master_conn_recv_packet 
-:      004199 inquiry_scan_dispatch:
-0x22f8 004200 fetch 1 ,mem_scan_mode 
-0x22f9 004201 rtnbit0 inq_scan_mode 
-0x22fa 004202 force iscan_interval_timer ,queue 
-0x22fb 004203 call timer_check 
-0x22fc 004204 nrtn blank 
-0x22fd 004205 fetcht 2 ,mem_iscan_window 
-0x22fe 004206 force 4 ,queue 
-0x22ff 004207 call sniff_check_window 
-0x2300 004208 rtn user 
-0x2301 004209 call inquiry_scan_start 
-0x2302 004210 force iscan_interval_timer ,queue 
-0x2303 004211 fetch 2 ,mem_iscan_interval 
-0x2304 004212 nbranch timer_init ,sync 
-0x2305 004213 random pdata 
-0x2306 004214 iand mask3ff ,pdata 
-0x2307 004215 branch timer_init 
-:      004218 inquiry_scan_start:
-0x2308 004219 bpatch patch06_2 ,mem_patch06 
-0x2309 004220 jam 0 ,mem_fhs_am_addr 
-0x230a 004221 disable clknt 
-0x230b 004222 disable attempt 
-0x230c 004223 call afh_clear 
-0x230d 004224 and clkn_bt ,0x1fc ,bt_clk 
-0x230e 004225 force 0x01 ,freq_mode 
-0x230f 004226 call fetch_giac 
-0x2310 004227 call rx_radio_freq 
-0x2311 004228 setflip mark_inquiry_state ,mark 
-0x2312 004229 fetch 1 ,mem_inquiryscan_waitcnt 
-0x2313 004230 increase 1 ,pdata 
-0x2314 004231 store 1 ,mem_inquiryscan_waitcnt 
-0x2315 004232 call fetch_diac 
-0x2316 004233 call start_receiver 
-0x2317 004234 call wait_access_forever 
-0x2318 004235 nrtn sync 
-0x2319 004236 bpatch patch06_3 ,mem_patch06 
-0x231a 004237 force 0 ,stop_watch 
-0x231b 004238 call shutdown_radio 
-0x231c 004239 fetch 1 ,mem_inquiryscan_rcvcnt 
-0x231d 004240 increase 1 ,pdata 
-0x231e 004241 store 1 ,mem_inquiryscan_rcvcnt 
-0x231f 004242 call fetch_giac 
-0x2320 004243 call rf_setup_time_slave_slot 
-0x2321 004244 or_into 0x002 ,bt_clk 
-0x2322 004245 force 0x01 ,freq_mode 
-0x2323 004246 call tx_radio_freq 
-0x2324 004247 call fetch_diac 
-0x2325 004248 call start_transmitter 
-0x2326 004249 call start_tx_external 
-0x2327 004250 deposit clkn_bt 
-0x2328 004251 store 4 ,mem_clkn_bt 
-0x2329 004252 call send_access_word 
-0x232a 004253 force type_fhs ,type 
-0x232b 004254 force 0 ,am_addr 
-0x232c 004255 call scan_mode_whiten 
-0x232d 004256 call transmit_packet_whitened 
-0x232e 004257 call send_eir 
-0x232f 004258 and_into 0x1fd ,bt_clk 
-0x2330 004259 increase 1 ,n_tx_slot 
-0x2331 004260 rtn 
-:      004262 send_eir:
-0x2332 004263 bpatch patch06_4 ,mem_patch06 
-0x2333 004264 fetch 1 ,mem_eir_enable 
-0x2334 004265 rtn blank 
-0x2335 004266 arg mem_eir ,contw 
-0x2336 004267 fetch 1 ,mem_local_name_length 
-0x2337 004268 copy pdata ,loopcnt 
-0x2338 004269 increase 1 ,pdata 
-0x2339 004270 istore 1 ,contw 
-0x233a 004271 copy contw ,temp 
-0x233b 004272 increase 1 ,pdata 
-0x233c 004273 store 2 ,mem_tx_len 
-0x233d 004274 copy temp ,contw 
-0x233e 004275 setarg 0x09 
-0x233f 004276 istore 1 ,contw 
-0x2340 004277 arg mem_local_name ,contr 
-0x2341 004278 call memcpy 
-0x2342 004280 arg mem_all_uuid_128bits ,regc 
-0x2343 004281 arg 4 ,loopcnt 
-0x2344 004282 call get_all_uuid 
-0x2345 004283 arg mem_all_uuid_16bits ,regc 
-0x2346 004284 arg 1 ,loopcnt 
-0x2347 004285 call get_all_uuid 
-0x2348 004287 force type_dm3 ,type 
-0x2349 004288 jam 2 ,mem_tx_lch 
-0x234a 004289 setarg mem_eir 
-0x234b 004290 store 2 ,mem_txptr 
-0x234c 004291 call rf_setup_time_slave_slot 
-0x234d 004292 call tx_radio_freq 
-0x234e 004293 call start_transmitter 
-0x234f 004294 call start_tx_external 
-0x2350 004295 call send_access_word 
-0x2351 004296 call scan_mode_whiten 
-0x2352 004297 call transmit_packet_whitened 
-0x2353 004298 rtn 
-:      004301 get_all_uuid:
-0x2354 004302 copy contw ,temp 
-0x2355 004303 copy regc ,contr 
-0x2356 004304 ifetch 1 ,contr 
-0x2357 004305 rtn blank 
-:      004306 lshift_loop:
-0x2358 004307 lshift pdata ,pdata 
-0x2359 004308 loop lshift_loop 
-0x235a 004309 copy pdata ,rega 
-0x235b 004310 increase 2 ,pdata 
-0x235c 004311 copy pdata ,queue 
-0x235d 004312 fetch 2 ,mem_tx_len 
-0x235e 004313 iadd queue ,pdata 
-0x235f 004314 store 2 ,mem_tx_len 
-0x2360 004315 copy temp ,contw 
-0x2361 004316 copy rega ,pdata 
-0x2362 004317 increase 1 ,pdata 
-0x2363 004318 istore 1 ,contw 
-0x2364 004319 copy regc ,contr 
-0x2365 004320 ifetch 1 ,contr 
-0x2366 004321 ifetch 1 ,contr 
-0x2367 004322 istore 1 ,contw 
-0x2368 004323 copy rega ,loopcnt 
-0x2369 004324 branch memcpy 
-:      004330 page_scan_dispatch:
-0x236a 004331 fetch 1 ,mem_scan_mode 
-0x236b 004332 rtnbit0 page_scan_mode 
-0x236c 004333 force pscan_interval_timer ,queue 
-0x236d 004334 call timer_check 
-0x236e 004335 nrtn blank 
-0x236f 004336 fetcht 2 ,mem_pscan_window 
-0x2370 004337 force 40 ,queue 
-0x2371 004338 call sniff_check_window 
-0x2372 004339 rtn user 
-0x2373 004340 force 0 ,am_addr 
-0x2374 004341 jam param_pagerespto ,mem_fhs_wait_counter 
-0x2375 004342 set0 mark_fhs_already_good ,mark 
-0x2376 004343 call page_scan_start 
-0x2377 004344 force pscan_interval_timer ,queue 
-0x2378 004345 fetch 2 ,mem_pscan_interval 
-0x2379 004346 branch timer_init 
-:      004349 page_scan_start:
-0x237a 004350 bpatch patch06_5 ,mem_patch06 
-0x237b 004351 disable clknt 
-0x237c 004352 call afh_clear 
-0x237d 004353 fetch 1 ,mem_pagescan_waitcnt 
-0x237e 004354 increase 1 ,pdata 
-0x237f 004355 store 1 ,mem_pagescan_waitcnt 
-0x2380 004356 force 0 ,n_tx_slot 
-0x2381 004357 call fetch_self_bt_adr 
-0x2382 004358 add clkn_bt ,1 ,bt_clk 
-0x2383 004359 force 0x02 ,freq_mode 
-0x2384 004360 bpatch patch06_6 ,mem_patch06 
-0x2385 004361 call rx_radio_freq 
-0x2386 004362 call start_receiver 
-0x2387 004363 call wait_access_forever 
-0x2388 004364 nrtn sync 
-0x2389 004365 call shutdown_radio 
-0x238a 004366 fetch 1 ,mem_pagescan_rcvcnt 
-0x238b 004367 increase 1 ,pdata 
-0x238c 004368 store 1 ,mem_pagescan_rcvcnt 
-0x238d 004369 force 0 ,stop_watch 
-0x238e 004370 call rf_setup_time_slave_slot 
-0x238f 004371 or_into 0x002 ,bt_clk 
-0x2390 004372 force 0x01 ,freq_mode 
-0x2391 004373 call tx_radio_freq 
-0x2392 004374 call start_transmitter 
-0x2393 004375 call start_tx_external 
-0x2394 004376 call send_access_word 
-0x2395 004377 call end_of_packet 
-0x2396 004378 force 0 ,am_addr 
-0x2397 004379 arg param_rf_setup ,timeup 
-0x2398 004380 until clke_rt ,meet 
-0x2399 004381 or_into 0x03 ,clke_bt 
-0x239a 004382 and_into 0x1fd ,bt_clk 
-:      004383 page_scan_wait_fhs_restart:
-0x239b 004384 bpatch patch06_7 ,mem_patch06 
-0x239c 004385 increase 1 ,n_tx_slot 
-0x239d 004386 call rx_radio_freq 
-0x239e 004387 call start_receiver 
-0x239f 004388 call wait_access_mhalfbnd 
-0x23a0 004389 nbranch page_scan_wait_fhs_again ,sync 
-0x23a1 004390 call scan_mode_whiten 
-0x23a2 004391 call receive_packet_whitened 
-0x23a3 004392 bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
-:      004393 page_scan_wait_fhs_again:
-0x23a4 004394 bpatch patch07_0 ,mem_patch07 
-0x23a5 004395 fetch 1 ,mem_fhs_wait_counter 
-0x23a6 004396 rtn blank 
-0x23a7 004397 increase -1 ,pdata 
-0x23a8 004398 store 1 ,mem_fhs_wait_counter 
-0x23a9 004399 call rf_setup_time_master_slot 
-0x23aa 004400 branch page_scan_wait_fhs_restart 
-:      004403 page_scan_reply_to_fhs:
-0x23ab 004404 bpatch patch07_1 ,mem_patch07 
-0x23ac 004405 set0 1 ,clke_bt 
-0x23ad 004406 set1 0 ,clke_bt 
-0x23ae 004407 fetch 1 ,mem_pagescan_rcvfhscnt 
-0x23af 004408 increase 1 ,pdata 
-0x23b0 004409 store 1 ,mem_pagescan_rcvfhscnt 
-0x23b1 004410 call rf_setup_time_slave_slot 
-0x23b2 004411 or_into 0x02 ,bt_clk 
-0x23b3 004412 call tx_radio_freq 
-0x23b4 004413 call start_transmitter 
-0x23b5 004414 call start_tx_external 
-0x23b6 004415 call send_access_word 
-0x23b7 004416 call end_of_packet 
-:      004417 slave_apply_clke_bt:
-0x23b8 004418 compare 0x03 ,clke_bt ,0x03 
-0x23b9 004419 branch slave_apply_clke_bt_now ,true 
-0x23ba 004420 until null ,mhalfbnd 
-0x23bb 004421 branch slave_apply_clke_bt 
-:      004422 slave_apply_clke_bt_now:
-0x23bc 004423 fetch 4 ,mem_clke_bt 
-0x23bd 004424 or_into 0x03 ,pdata 
-0x23be 004425 icopy clke_bt 
-:      004427 start_slave_connection:
-0x23bf 004428 bpatch patch07_2 ,mem_patch07 
-0x23c0 004429 fetch 6 ,extm_lap 
-0x23c1 004430 store 6 ,mem_plap 
-0x23c2 004431 call prepare_newconn 
-:      004432 slave_newconn_loop:
-0x23c3 004433 call slave_newconn_once 
-0x23c4 004434 branch sconn_successful ,match 
-0x23c5 004435 call new_conn_timeout 
-0x23c6 004436 nbranch slave_newconn_loop ,blank 
-0x23c7 004437 rtn 
-:      004440 sconn_successful:
-0x23c8 004441 bpatch patch07_3 ,mem_patch07 
-0x23c9 004442 call newconn_init 
-0x23ca 004443 call context_new 
-0x23cb 004444 nrtn zero 
-0x23cc 004445 jam 0 ,mem_mode 
-0x23cd 004446 call calc_clke_offset 
-0x23ce 004447 branch context_save 
-:      004452 slave_dispatch:
-0x23cf 004453 bpatch patch07_4 ,mem_patch07 
-0x23d0 004454 call calc_clke 
-0x23d1 004455 call role_switch_slave 
-0x23d2 004456 rtn user 
-:      004457 slave_loop:
-0x23d3 004458 bpatch patch07_5 ,mem_patch07 
-0x23d4 004459 call check_bt_disabled 
-0x23d5 004460 call scheduler_process 
-0x23d6 004461 call slave_conn_recv_packet 
-0x23d7 004462 nbranch slave_notmatch ,match 
-0x23d8 004463 call supervision_flush 
-0x23d9 004464 call scheduler_tx_l2cap_pkt 
-0x23da 004465 call prepare_tx 
-0x23db 004466 call slave_conn_send_packet 
-0x23dc 004467 call parse_l2cap 
-0x23dd 004468 call parse_lmp 
-0x23de 004469 fetch 1 ,mem_slave_rcvcnt 
-0x23df 004470 increase 1 ,pdata 
-0x23e0 004471 store 1 ,mem_slave_rcvcnt 
-0x23e1 004472 call calc_clke_offset 
-:      004473 slave_notmatch:
-0x23e2 004474 bpatch patch07_6 ,mem_patch07 
-0x23e3 004475 call lpm_set_mult 
-0x23e4 004476 call supervision_update 
-0x23e5 004477 branch slave_disconnect ,positive 
-0x23e6 004478 call check_disconnect_timeout 
-0x23e7 004479 nbranch slave_disconnect ,user 
-0x23e8 004480 call check_attempt 
-0x23e9 004481 nbranch slave_loop ,blank 
-0x23ea 004482 rtn 
-:      004484 slave_disconnect:
-0x23eb 004485 bpatch patch07_7 ,mem_patch07 
-0x23ec 004486 jam 0 ,mem_tester_emulate 
-0x23ed 004487 jam 0 ,mem_debug_config 
-0x23ee 004488 call quit_connection 
-0x23ef 004489 set0 mark_testmode ,mark 
-0x23f0 004490 call test_enable_white 
-0x23f1 004491 fetch 1 ,mem_state 
-0x23f2 004492 rtn 
-:      004495 role_switch_slave:
-0x23f3 004496 bpatch patch08_0 ,mem_patch08 
-0x23f4 004497 call role_switch_check 
-0x23f5 004498 nrtn user 
-0x23f6 004499 copy am_addr ,temp 
-0x23f7 004500 call get_free_amaddr 
-0x23f8 004501 store 1 ,mem_fhs_am_addr 
-0x23f9 004502 copy temp ,am_addr 
-0x23fa 004503 jam param_newconnto ,mem_newconnto_counter 
-:      004504 roles_sendfhs_loop:
-0x23fb 004505 bpatch patch08_1 ,mem_patch08 
-0x23fc 004506 call rf_setup_time_master_slot 
-0x23fd 004507 force type_fhs ,type 
-0x23fe 004508 call slave_send_access 
-0x23ff 004509 deposit clkn_bt 
-0x2400 004510 store 4 ,mem_clkn_bt 
-0x2401 004511 call transmit_packet 
-0x2402 004512 call rf_setup_time_slave_slot 
-0x2403 004513 enable user3 
-0x2404 004514 call slave_receive_access 
-0x2405 004515 branch roles_got_fhs_reply ,sync 
-0x2406 004516 call shutdown_radio 
-0x2407 004517 call new_conn_timeout 
-0x2408 004518 nbranch roles_sendfhs_loop ,blank 
-0x2409 004519 rtnmark0 mark_accept_switch 
-0x240a 004520 jam lmp_slot_offset ,mem_lmo_opcode2 
-0x240b 004521 set1 mark_switch_initiated ,mark 
-0x240c 004522 rtn 
-:      004523 roles_got_fhs_reply:
-0x240d 004524 enable clknt 
-0x240e 004525 call prepare_newconn 
-0x240f 004526 call afh_clear 
-:      004527 roles_newconn_loop:
-0x2410 004528 bpatch patch08_2 ,mem_patch08 
-0x2411 004529 call master_newconn_once 
-0x2412 004530 branch roles_newconn_responded ,sync 
-0x2413 004531 call new_conn_timeout 
-0x2414 004532 nbranch roles_newconn_loop ,blank 
-0x2415 004533 disable clknt 
-0x2416 004534 deposit clke_bt 
-0x2417 004535 store 4 ,mem_next_btclk 
-0x2418 004536 rtn 
-:      004537 roles_newconn_responded:
-0x2419 004538 enable master 
-0x241a 004539 bmark0 mark_accept_switch ,roles_newconn_nolmp 
-0x241b 004540 set0 mark_accept_switch ,mark 
-0x241c 004541 jam lmp_accepted ,mem_lmo_opcode2 
-0x241d 004542 jam lmp_host_connection_req ,mem_lmi_opcode2 
-0x241e 004543 call tid_set_reply 
-:      004544 roles_newconn_nolmp:
-0x241f 004545 deposit am_addr 
-0x2420 004546 store 1 ,mem_amaddr 
-0x2421 004547 force 0 ,pdata 
-0x2422 004548 store 6 ,mem_clk_offset 
-0x2423 004549 fetch 1 ,mem_mode 
-0x2424 004550 set1 mode_master ,pdata 
-0x2425 004551 store 1 ,mem_mode 
-0x2426 004552 call supervision_flush 
-0x2427 004553 disable master 
-0x2428 004554 enable user 
-0x2429 004555 rtn 
-:      004559 init_rx_packet_flags:
-0x242a 004560 bpatch patch08_3 ,mem_patch08 
-0x242b 004561 disable match 
-0x242c 004562 set0 mark_loopback ,mark 
-0x242d 004563 set0 mark_am_addr_broadcast ,mark 
-0x242e 004564 set0 mark_longpacket ,mark 
-0x242f 004565 set0 mark_old_packet ,mark 
-0x2430 004566 fetch 1 ,mem_arq 
-0x2431 004567 set0 arqnx ,pdata 
-0x2432 004568 set1 flowx ,pdata 
-0x2433 004569 store 1 ,mem_arq 
-0x2434 004570 rtn 
-:      004572 prepare_newconn:
-0x2435 004573 bpatch patch08_4 ,mem_patch08 
-0x2436 004574 jam param_newconnto ,mem_newconnto_counter 
-0x2437 004575 jam param_newconn_arq ,mem_arq 
-0x2438 004576 fetch 2 ,mem_rx_window_init 
-0x2439 004577 store 2 ,mem_rx_window 
-0x243a 004578 deposit clkn_bt 
-0x243b 004579 store 4 ,mem_next_btclk 
-0x243c 004580 rtn clknt 
-0x243d 004581 deposit clke_bt 
-0x243e 004582 store 4 ,mem_next_btclk 
-0x243f 004583 rtn 
-:      004585 newconn_init:
-0x2440 004586 bpatch patch08_5 ,mem_patch08 
-0x2441 004587 call init_lmp_reinit 
-0x2442 004588 call new_conn_handle 
-0x2443 004589 store 1 ,mem_conn_handle 
-0x2444 004590 setarg 0 
-0x2445 004591 store 2 ,mem_l2cap_rxbuff1_len 
-0x2446 004592 setarg param_supervision_to 
-0x2447 004593 store 2 ,mem_supervision_to 
-0x2448 004594 fetch 1 ,mem_state 
-0x2449 004595 set1 state_inconn ,pdata 
-0x244a 004596 store 1 ,mem_state 
-0x244b 004597 jam 0 ,mem_op 
-0x244c 004598 jam 0 ,mem_state_map 
-0x244d 004599 jam 0 ,mem_lpm_current_mult 
-0x244e 004600 branch supervision_flush 
-:      004603 clear_linkkey:
-0x244f 004604 bpatch patch08_6 ,mem_patch08 
-0x2450 004605 force 0 ,pdata 
-0x2451 004606 store 8 ,mem_link_key 
-0x2452 004607 istore 8 ,contw 
-0x2453 004608 call clear_linkstate 
-0x2454 004609 branch context_traverse_linkkey 
-:      004611 new_conn_timeout:
-0x2455 004612 fetch 1 ,mem_newconnto_counter 
-0x2456 004613 increase -1 ,pdata 
-0x2457 004614 store 1 ,mem_newconnto_counter 
-0x2458 004615 rtn 
-:      004617 new_conn_handle:
-0x2459 004618 fetch 1 ,mem_handle_num 
-0x245a 004619 increase 1 ,pdata 
-0x245b 004620 store 1 ,mem_handle_num 
-0x245c 004621 rtn 
-:      004624 quit_connection:
-0x245d 004625 bpatch patch08_7 ,mem_patch08 
-0x245e 004626 fetch 1 ,mem_hci_cmd 
-0x245f 004627 beq hci_cmd_remote_name_req ,quit_connection_name 
-0x2460 004628 fetch 1 ,mem_lmp_to_send 
-0x2461 004629 bne lmp_name_req ,quit_connection_cont 
-:      004630 quit_connection_name:
-0x2462 004631 call cmd_check_plap 
-0x2463 004632 nbranch quit_connection_cont ,zero 
-0x2464 004633 call master_name_error 
-0x2465 004634 jam 0 ,mem_hci_cmd 
-:      004635 quit_connection_cont:
-0x2466 004636 bpatch patch09_0 ,mem_patch09 
-0x2467 004637 call app_disconn_reason_collect_bt 
-0x2468 004638 call sniff_exit 
-0x2469 004639 jam bt_evt_bb_disconnected ,mem_fifo_temp 
-0x246a 004640 call ui_ipc_send_event 
-0x246b 004641 call init_lmp_work 
-0x246c 004642 call l2cap_init_work 
-0x246d 004643 call sp_initialize 
-0x246e 004644 fetch 1 ,mem_state 
-0x246f 004645 set0 state_inconn 
-0x2470 004646 store 1 ,mem_state 
-0x2471 004647 jam 0 ,memui_reconnect_mode 
-0x2472 004649 fetch 1 ,mem_state_map 
-0x2473 004650 compare 0x0 ,pdata ,0xc0 
-0x2474 004651 branch quit_connection_not_clear_mark ,true 
-0x2475 004652 set0 mark_rxbuf_inuse ,mark 
-:      004653 quit_connection_not_clear_mark:
-0x2476 004654 fetch 1 ,mem_arq 
-0x2477 004655 bbit0 wack ,quit_connection_not_clear_tx 
-:      004656 quit_connection_not_clear_tx:
-0x2478 004657 fetch 1 ,mem_op 
-0x2479 004658 rtnbit0 op_txl2cap 
-0x247a 004659 set0 mark_tx_l2cap ,mark 
-0x247b 004660 rtn 
-:      004662 slave_newconn_once:
-0x247c 004663 bpatch patch09_1 ,mem_patch09 
-0x247d 004664 fetch 1 ,extm_newconn_am_addr 
-0x247e 004665 rtn blank 
-0x247f 004666 icopy am_addr 
-0x2480 004667 call slave_conn_recv_packet 
-0x2481 004668 nrtn match 
-0x2482 004669 force type_null ,type 
-0x2483 004670 call slave_conn_send_packet 
-0x2484 004671 deposit am_addr 
-0x2485 004672 store 1 ,mem_amaddr 
-0x2486 004673 force 0 ,pdata 
-0x2487 004674 store 1 ,extm_newconn_am_addr 
-0x2488 004675 rtn 
-:      004681 prepare_tx:
-0x2489 004682 bpatch patch09_2 ,mem_patch09 
-0x248a 004683 fetch 1 ,mem_state 
-0x248b 004684 bbit0 state_insco ,prepare_tx_not_sco 
-0x248c 004685 force type_hv3 ,type 
-0x248d 004686 bmark0 mark_esco ,prepare_tx_not_esco 
-0x248e 004687 call check_esco_amaddr 
-0x248f 004688 nbranch prepare_tx_not_sco ,true 
-0x2490 004689 branch prepare_tx_not_sco ,attempt 
-0x2491 004690 call set_wait_ack 
-0x2492 004691 setarg 2 
-0x2493 004692 store 2 ,mem_retransmission_cnt 
-0x2494 004693 rtn 
-:      004694 prepare_tx_not_esco:
-0x2495 004695 nrtn attempt 
-:      004696 prepare_tx_not_sco:
-0x2496 004697 bpatch patch09_3 ,mem_patch09 
-0x2497 004698 call context_check_all_wack 
-0x2498 004699 nbranch prepare_tx_no_retransmit ,zero 
-0x2499 004700 fetch 1 ,mem_arq 
-0x249a 004701 bbit0 wack ,prepare_tx_pollnull 
-:      004702 prepare_tx_retransmit:
-0x249b 004703 bmark1 mark_loopback ,prepare_tx_loopback 
-0x249c 004704 fetch 1 ,mem_debug_config 
-0x249d 004705 bbit1 debug_tx_pattern ,prepare_tx_txpat 
-0x249e 004706 fetch 2 ,mem_retransmission_cnt 
-0x249f 004707 increase -1 ,pdata 
-0x24a0 004708 store 2 ,mem_retransmission_cnt 
-0x24a1 004709 branch prepare_tx_nomore_retransmit ,blank 
-0x24a2 004710 fetch 1 ,mem_last_type 
-0x24a3 004711 iforce type 
-0x24a4 004712 rtn 
-:      004714 prepare_tx_nomore_retransmit:
-0x24a5 004715 bpatch patch09_4 ,mem_patch09 
-0x24a6 004716 call clear_got_tx 
-:      004717 prepare_tx_no_retransmit:
-0x24a7 004718 call check_esco_amaddr 
-0x24a8 004719 branch prepare_tx_pollnull ,true 
-0x24a9 004720 call send_lmp 
-0x24aa 004721 branch prepare_tx_sendlmp ,user 
-0x24ab 004722 fetch 1 ,mem_op 
-0x24ac 004723 bbit1 op_txl2cap ,prepare_tx_sendl2cap 
-0x24ad 004724 bmark1 mark_loopback ,prepare_tx_loopback 
-0x24ae 004725 fetch 1 ,mem_debug_config 
-0x24af 004726 bbit1 debug_tx_pattern ,prepare_tx_txpat 
-:      004727 prepare_tx_pollnull:
-0x24b0 004728 force type_poll ,type 
-0x24b1 004729 rtn master 
-0x24b2 004730 force type_null ,type 
-0x24b3 004731 rtn 
-:      004732 prepare_tx_loopback:
-0x24b4 004733 bpatch patch09_5 ,mem_patch09 
-0x24b5 004734 fetch 1 ,mem_rx_type 
-0x24b6 004735 iforce type 
-0x24b7 004736 rtnne 1 
-0x24b8 004737 force type_null ,type 
-0x24b9 004738 rtn 
-:      004739 prepare_tx_txpat:
-0x24ba 004740 fetch 1 ,test_mode_packet_type 
-0x24bb 004741 and pdata ,0xf ,type 
-0x24bc 004742 set1 mark_loopback ,mark 
-0x24bd 004743 rtn 
-:      004744 prepare_tx_sendlmp:
-0x24be 004745 force type_lmp ,type 
-0x24bf 004746 branch set_wait_ack 
-:      004747 prepare_tx_sendl2cap:
-0x24c0 004748 call tx_l2cap_type 
-:      004750 set_wait_ack:
-0x24c1 004751 bpatch patch09_6 ,mem_patch09 
-0x24c2 004752 fetcht 1 ,mem_arq 
-0x24c3 004753 set1 wack ,temp 
-0x24c4 004754 storet 1 ,mem_arq 
-0x24c5 004755 deposit type 
-0x24c6 004756 store 1 ,mem_last_type 
-0x24c7 004757 setarg 0xffff 
-0x24c8 004758 store 2 ,mem_retransmission_cnt 
-0x24c9 004759 rtn 
-:      004761 tx_l2cap_type:
-0x24ca 004762 bpatch patch09_7 ,mem_patch09 
-0x24cb 004763 fetch 1 ,mem_state_map 
-0x24cc 004764 isolate1 smap_edr ,pdata 
-0x24cd 004765 fetch 2 ,mem_tx_len 
-0x24ce 004766 branch tx_l2cap_type_edr ,true 
-0x24cf 004767 force type_dm1 ,type 
-0x24d0 004768 sub pdata ,17 ,null 
-0x24d1 004769 rtn positive 
-0x24d2 004770 force type_dh1 ,type 
-0x24d3 004771 sub pdata ,27 ,null 
-0x24d4 004772 rtn positive 
-0x24d5 004773 force type_dm3 ,type 
-0x24d6 004774 sub pdata ,121 ,null 
-0x24d7 004775 rtn positive 
-0x24d8 004776 force type_dh3 ,type 
-0x24d9 004777 sub pdata ,183 ,null 
-0x24da 004778 rtn positive 
-0x24db 004779 force type_dm5 ,type 
-0x24dc 004780 sub pdata ,224 ,null 
-0x24dd 004781 rtn positive 
-0x24de 004782 force type_dh5 ,type 
-0x24df 004783 rtn 
-:      004784 tx_l2cap_type_edr:
-0x24e0 004785 force type_dm1 ,type 
-0x24e1 004786 sub pdata ,17 ,null 
-0x24e2 004787 rtn positive 
-0x24e3 004788 force type_dh1 ,type 
-0x24e4 004789 sub pdata ,54 ,null 
-0x24e5 004790 rtn positive 
-0x24e6 004791 force type_dm3 ,type 
-0x24e7 004792 arg 367 ,temp 
-0x24e8 004793 isub temp ,null 
-0x24e9 004794 nrtn positive 
-0x24ea 004795 force type_dm5 ,type 
-0x24eb 004796 arg 679 ,temp 
-0x24ec 004797 isub temp ,null 
-0x24ed 004798 nrtn positive 
-0x24ee 004799 force type_dh5 ,type 
-0x24ef 004800 rtn 
-:      004809 slave_receive_master_slot:
-0x24f0 004810 fetch 1 ,mem_state 
-0x24f1 004811 bbit0 state_insniff ,slave_receive_notsniff 
-0x24f2 004812 fetch 2 ,mem_tsniff 
-0x24f3 004813 branch slave_receive_notsniff ,blank 
-0x24f4 004814 nbranch slave_receive_sniff ,attempt 
-:      004815 slave_receive_notsniff:
-0x24f5 004816 call rf_setup_time_master_slot 
-:      004817 slave_receive_access:
-0x24f6 004818 add clke_bt ,1 ,bt_clk 
-:      004819 slave_receive_sniff:
-0x24f7 004820 enable swfine 
-0x24f8 004821 fetch 2 ,mem_rx_window 
-0x24f9 004822 rshift pdata ,pdata 
-0x24fa 004823 arg param_pll_setup ,temp 
-0x24fb 004824 iadd temp ,pdata 
-0x24fc 004825 call ahead_window 
-0x24fd 004826 call fetch_extm_bt_adr 
-0x24fe 004827 force 0x03 ,freq_mode 
-0x24ff 004828 call rx_radio_freq 
-0x2500 004829 call init_rx_packet_flags 
-0x2501 004830 call prep_crypt 
-0x2502 004831 bpatch patch0a_0 ,mem_patch0a 
-0x2503 004832 fetch 2 ,mem_rx_window 
-0x2504 004833 rshift pdata ,pdata 
-0x2505 004834 call ahead_window 
-0x2506 004835 call start_receiver 
-0x2507 004836 enable decode_fec0 
-0x2508 004837 fetch 2 ,mem_rx_window 
-0x2509 004838 arg param_clke_cal ,temp 
-0x250a 004839 iadd temp ,stop_watch 
-0x250b 004840 correlate null ,timeout 
-0x250c 004841 copy clke ,temp 
-0x250d 004842 storet 6 ,mem_sync_clke 
-0x250e 004843 disable decode_fec0 
-0x250f 004844 nrtn sync 
-0x2510 004845 arg param_clke_cal ,clke_rt 
-0x2511 004846 copy bt_clk ,clke_bt 
-0x2512 004847 branch lpm_adjust_clk ,wake 
-0x2513 004848 rtn 
-:      004851 slave_conn_recv_packet:
-0x2514 004852 bpatch patch0a_1 ,mem_patch0a 
-0x2515 004853 call slave_receive_master_slot 
-0x2516 004854 nbranch shutdown_radio ,sync 
-0x2517 004855 call save_rssi 
-0x2518 004856 bmark0 mark_testmode ,receive_packet 
-0x2519 004857 fetch 2 ,mem_tst_pktcnt_sync 
-0x251a 004858 increase 1 ,pdata 
-0x251b 004859 store 2 ,mem_tst_pktcnt_sync 
-:      004860 receive_packet:
-0x251c 004861 rshift bt_clk ,temp 
-0x251d 004862 or temp ,0x40 ,white_init 
-:      004863 receive_packet_whitened:
-0x251e 004864 bpatch patch0a_2 ,mem_patch0a 
-0x251f 004865 enable enable_white 
-0x2520 004866 enable enable_hec 
-0x2521 004867 enable decode_fec1 
-0x2522 004868 parse demod ,bucket ,3 
-0x2523 004869 rshift8 pwindow ,pdata 
-0x2524 004870 store 1 ,mem_temp_am_addr 
-0x2525 004871 parse demod ,bucket ,4 
-0x2526 004872 inject bucket ,7 
-0x2527 004873 copy pwindow ,pdata 
-0x2528 004874 store 1 ,mem_rx_type 
-0x2529 004875 parse demod ,bucket ,3 
-0x252a 004876 rshift8 pwindow ,pdata 
-0x252b 004877 store 1 ,mem_temp_arq 
-0x252c 004878 fetch 1 ,mem_rx_type 
-0x252d 004879 sub pdata ,3 ,null 
-0x252e 004880 branch receive_packet_noedr ,positive 
-0x252f 004881 beq 7 ,receive_packet_noedr 
-0x2530 004882 fetch 1 ,mem_state_map 
-0x2531 004883 isolate1 smap_edr ,pdata 
-0x2532 004884 setflag true ,psk ,radio_ctrl 
-:      004885 receive_packet_noedr:
-0x2533 004886 bpatch patch0a_3 ,mem_patch0a 
-0x2534 004887 parse demod ,bucket ,8 
-0x2535 004888 disable decode_fec1 
-0x2536 004889 disable enable_hec 
-0x2537 004890 branch error_header ,crc_failed 
-0x2538 004891 bmark0 mark_testmode ,receive_packet_amchk 
-0x2539 004892 fetch 2 ,mem_tst_pktcnt_hec 
-0x253a 004893 increase 1 ,pdata 
-0x253b 004894 store 2 ,mem_tst_pktcnt_hec 
-:      004895 receive_packet_amchk:
-0x253c 004896 bpatch patch0a_4 ,mem_patch0a 
-0x253d 004897 fetch 1 ,mem_temp_am_addr 
-0x253e 004898 compare 0 ,pdata ,0x07 
-0x253f 004899 setflag true ,mark_am_addr_broadcast ,mark 
-0x2540 004900 branch am_addr_ok ,true 
-0x2541 004901 icompare 0x07 ,am_addr 
-0x2542 004902 branch am_addr_match ,true 
-0x2543 004903 bmark0 mark_esco ,end_of_packet 
-0x2544 004904 fetcht 1 ,mem_saved_amaddr 
-0x2545 004905 icompare 0x7 ,temp 
-0x2546 004906 nbranch end_of_packet ,true 
-0x2547 004907 fetch 1 ,mem_arq 
-0x2548 004908 set0 arqnx ,pdata 
-0x2549 004909 set1 flowx ,pdata 
-0x254a 004910 store 1 ,mem_arq 
-:      004911 am_addr_match:
-0x254b 004912 enable match 
-:      004913 am_addr_ok:
-0x254c 004914 bpatch patch0a_5 ,mem_patch0a 
-0x254d 004915 fetch 1 ,mem_rx_type 
-0x254e 004916 icopy type 
-0x254f 004917 bmark1 mark_am_addr_broadcast ,arqn_bypass 
-0x2550 004918 fetcht 1 ,mem_temp_arq 
-0x2551 004919 fetch 1 ,mem_arq 
-0x2552 004920 set0 flow ,pdata 
-0x2553 004921 isolate1 flow ,temp 
-0x2554 004922 setflag true ,flow ,pdata 
-0x2555 004923 isolate1 arqn ,temp 
-0x2556 004924 setflag true ,arqn ,pdata 
-0x2557 004925 store 1 ,mem_arq 
-0x2558 004926 isolate0 arqn ,temp 
-0x2559 004927 branch arqn_bypass ,true 
-0x255a 004928 call clear_got_tx 
-:      004929 arqn_bypass:
-0x255b 004930 bpatch patch0a_6 ,mem_patch0a 
-0x255c 004931 arg 0 ,temp 
-0x255d 004932 call reserve_slot 
-0x255e 004933 and type ,0xf ,pdata 
-0x255f 004934 beq type_poll ,process_poll 
-0x2560 004935 beq type_null ,end_of_packet 
-0x2561 004936 beq type_fhs ,process_fhs 
-0x2562 004937 fetcht 1 ,mem_temp_arq 
-0x2563 004938 fetch 1 ,mem_arq 
-0x2564 004939 icompare 0x04 ,temp 
-0x2565 004940 nbranch rx_type_dispatch ,true 
-0x2566 004941 bmark0 mark_am_addr_broadcast ,failed_seqn 
-0x2567 004942 bbit0 bcast1 ,rx_type_dispatch 
-:      004943 failed_seqn:
-0x2568 004944 set1 mark_old_packet ,mark 
-:      004945 rx_type_dispatch:
-0x2569 004946 bpatch patch0a_7 ,mem_patch0a 
-0x256a 004947 deposit type 
-0x256b 004948 beq type_dm1 ,process_dm1 
-0x256c 004949 beq type_dh1 ,process_dh1 
-0x256d 004950 beq type_hv3 ,process_hev 
-0x256e 004951 beq type_3dh1 ,process_3dh1 
-0x256f 004952 arg 4 ,temp 
-0x2570 004953 call reserve_slot 
-0x2571 004954 beq type_dm3 ,process_dm3 
-0x2572 004955 beq type_dh3 ,process_dh3 
-0x2573 004956 arg 8 ,temp 
-0x2574 004957 call reserve_slot 
-0x2575 004958 beq type_dm5 ,process_dm5 
-0x2576 004959 beq type_dh5 ,process_dh5 
-0x2577 004960 rtn 
-:      004963 process_hev:
-0x2578 004964 bpatch patch0b_0 ,mem_patch0b 
-0x2579 004965 enable decode_fec0 
-0x257a 004966 enable enable_crc 
-0x257b 004967 enable encrypt 
-0x257c 004968 arg mem_sco_ibuf ,contw 
-0x257d 004969 force 30 ,loopcnt 
-:      004970 process_hev_loop:
-0x257e 004971 parse demod ,bucket ,8 
-0x257f 004972 rshift3 pwindow ,pdata 
-0x2580 004973 istore 1 ,contw 
-0x2581 004974 loop process_hev_loop 
-0x2582 004975 bmark0 mark_esco ,end_of_packet 
-0x2583 004976 parse demod ,bucket ,16 
-0x2584 004977 nsetflag crc_failed ,mark_esco_rxok ,mark 
-0x2585 004978 branch error_payload ,crc_failed 
-0x2586 004979 branch ack_payload 
-:      004982 process_poll:
-0x2587 004983 branch end_of_packet 
-:      004985 process_dm3:
-:      004986 process_dm5:
-0x2588 004987 set1 mark_longpacket ,mark 
-:      004988 process_dm1:
-0x2589 004989 enable decode_fec2 
-0x258a 004990 branch process_dmh 
-:      004992 process_dh3:
-:      004993 process_dh5:
-0x258b 004994 set1 mark_longpacket ,mark 
-:      004995 process_3dh1:
-0x258c 004996 set1 psk3m ,radio_ctrl 
-:      004997 process_dh1:
-0x258d 004998 enable decode_fec0 
-:      004999 process_dmh:
-0x258e 005000 bpatch patch0b_1 ,mem_patch0b 
-0x258f 005001 bmark1 mark_rxbuf_inuse ,end_of_packet 
-0x2590 005002 isolate0 psk ,radio_ctrl 
-0x2591 005003 branch process_dmh_noedr ,true 
-0x2592 005004 disable enable_white 
-0x2593 005005 enable decode_fec0 
-0x2594 005006 disable decode_fec2 
-0x2595 005007 add clkn_bt ,2 ,timeup 
-0x2596 005008 correlate clkn_bt ,meet 
-0x2597 005009 nbranch error_payload ,sync 
-0x2598 005010 set1 mark_longpacket ,mark 
-0x2599 005011 enable enable_white 
-:      005012 process_dmh_noedr:
-0x259a 005013 bpatch patch0b_2 ,mem_patch0b 
-0x259b 005014 enable encrypt 
-0x259c 005015 enable enable_crc 
-0x259d 005016 parse demod ,bucket ,3 
-0x259e 005017 rshift8 pwindow ,pdata 
-0x259f 005018 store 1 ,mem_lch_code 
-0x25a0 005019 parse demod ,bucket ,5 
-0x25a1 005020 bmark1 mark_longpacket ,process_dmh_long 
-0x25a2 005021 rshift3 pwindow ,loopcnt 
-0x25a3 005022 rshift3 loopcnt ,loopcnt 
-0x25a4 005023 branch process_dmh_common 
-:      005024 process_dmh_long:
-0x25a5 005025 parse demod ,bucket ,5 
-0x25a6 005026 rshift pwindow ,loopcnt 
-0x25a7 005027 parse demod ,bucket ,3 
-:      005028 process_dmh_common:
-0x25a8 005029 bpatch patch0b_3 ,mem_patch0b 
-0x25a9 005030 deposit loopcnt 
-0x25aa 005031 store 2 ,mem_len 
-0x25ab 005032 branch process_dmh_data_end ,blank 
-0x25ac 005033 isub mask3ff ,null 
-0x25ad 005034 branch error_payload ,positive 
-0x25ae 005035 bpatch patch0b_4 ,mem_patch0b 
-0x25af 005036 set0 mark_fhs_eir ,mark 
-0x25b0 005037 fetch 1 ,mem_lch_code 
-0x25b1 005038 and_into 0x03 ,pdata 
-0x25b2 005039 arg mem_rxbuf ,contw 
-0x25b3 005040 beq llid_lmp ,process_lmp 
-0x25b4 005041 bmark1 mark_testmode ,process_dmh_data 
-0x25b5 005043 fetch 1 ,mem_lch_code 
-0x25b6 005044 and_into 0x03 ,pdata 
-0x25b7 005045 beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
-0x25b8 005046 beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
-0x25b9 005047 branch error_payload 
-:      005049 process_lmp:
-0x25ba 005050 fetch 2 ,mem_len 
-0x25bb 005051 sub pdata ,0x70 ,null 
-0x25bc 005052 nbranch error_payload ,positive 
-0x25bd 005053 bmark1 mark_old_packet ,ack_payload 
-0x25be 005054 branch process_dmh_data 
-:      005057 process_dmh_data_l2cap_start_pkt:
-0x25bf 005058 bpatch patch0b_5 ,mem_patch0b 
-0x25c0 005059 bmark1 mark_old_packet ,ack_payload 
-0x25c1 005060 fetch 2 ,mem_len 
-0x25c2 005061 arg 0x2e0 ,temp 
-0x25c3 005062 isub temp ,null 
-0x25c4 005063 branch error_payload ,positive 
-0x25c5 005064 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x25c6 005065 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
-0x25c7 005066 bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
-0x25c8 005067 branch end_of_packet 
-:      005068 process_dmh_data_into_buff1:
-0x25c9 005069 jam 1 ,mem_l2cap_rxbuff_new 
-0x25ca 005070 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x25cb 005071 bne 0 ,end_of_packet 
-0x25cc 005072 arg mem_l2cap_rxbuff1 ,contw 
-0x25cd 005073 branch process_dmh_data 
-:      005074 process_dmh_data_into_buff2:
-0x25ce 005075 jam 2 ,mem_l2cap_rxbuff_new 
-0x25cf 005076 fetch 2 ,mem_l2cap_rxbuff2_len 
-0x25d0 005077 bne 0 ,end_of_packet 
-0x25d1 005078 arg mem_l2cap_rxbuff2 ,contw 
-0x25d2 005079 branch process_dmh_data 
-:      005081 process_dmh_data_l2cap_continue_pkt:
-0x25d3 005082 bpatch patch0b_6 ,mem_patch0b 
-0x25d4 005083 bmark1 mark_old_packet ,ack_payload 
-0x25d5 005084 fetch 2 ,mem_len 
-0x25d6 005085 arg 0x2e0 ,temp 
-0x25d7 005086 isub temp ,null 
-0x25d8 005087 branch error_payload ,positive 
-0x25d9 005088 fetch 1 ,mem_l2cap_rxbuff_new 
-0x25da 005089 beq 1 ,process_dmh_data_l2cap_continue_pkt1 
-0x25db 005090 beq 2 ,process_dmh_data_l2cap_continue_pkt2 
-0x25dc 005091 branch end_of_packet 
-:      005092 process_dmh_data_l2cap_continue_pkt1:
-0x25dd 005093 arg mem_l2cap_rxbuff1 ,contw 
-0x25de 005094 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x25df 005095 iadd contw ,contw 
-0x25e0 005096 branch process_dmh_data 
-:      005097 process_dmh_data_l2cap_continue_pkt2:
-0x25e1 005098 arg mem_l2cap_rxbuff2 ,contw 
-0x25e2 005099 fetch 2 ,mem_l2cap_rxbuff2_len 
-0x25e3 005100 iadd contw ,contw 
-:      005101 process_dmh_data:
-0x25e4 005102 parse demod ,bucket ,8 
-0x25e5 005103 rshift3 pwindow ,pdata 
-0x25e6 005104 istore 1 ,contw 
-0x25e7 005105 loop process_dmh_data 
-:      005106 process_dmh_data_end:
-0x25e8 005107 bpatch patch0b_7 ,mem_patch0b 
-0x25e9 005108 parse demod ,bucket ,16 
-0x25ea 005109 branch error_payload_crc ,crc_failed 
-0x25eb 005110 fetch 1 ,mem_l2cap_flow_ctrl_flag 
-0x25ec 005111 beq l2cap_flow_ctrl_enable ,end_of_packet 
-0x25ed 005112 bmark1 mark_testmode ,process_dmh_cont 
-0x25ee 005113 bmark1 mark_old_packet ,redundant_payload 
-0x25ef 005114 fetch 1 ,mem_lch_code 
-0x25f0 005115 compare 3 ,pdata ,3 
-0x25f1 005116 branch process_dmh_cont ,true 
-0x25f2 005117 fetch 2 ,mem_len 
-0x25f3 005118 branch process_dmh_cont ,blank 
-0x25f4 005119 bpatch patch0c_0 ,mem_patch0c 
-0x25f5 005120 fetch 1 ,mem_l2cap_rxbuff_new 
-0x25f6 005121 beq 1 ,process_l2cap_pass_crc_buff1 
-0x25f7 005122 beq 2 ,process_l2cap_pass_crc_buff2 
-0x25f8 005123 branch assert 
-:      005124 process_l2cap_pass_crc_buff1:
-0x25f9 005125 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x25fa 005126 fetcht 2 ,mem_len 
-0x25fb 005127 iadd temp ,pdata 
-0x25fc 005128 store 2 ,mem_l2cap_rxbuff1_len 
-0x25fd 005129 beq 0 ,assert 
-0x25fe 005130 fetcht 2 ,mem_l2cap_rxbuff1 
-0x25ff 005131 increase 4 ,temp 
-0x2600 005132 isub temp ,null 
-0x2601 005133 call l2cap_buff1_inuse ,zero 
-0x2602 005134 branch process_dmh_cont 
-:      005135 process_l2cap_pass_crc_buff2:
-0x2603 005136 fetch 2 ,mem_l2cap_rxbuff2_len 
-0x2604 005137 fetcht 2 ,mem_len 
-0x2605 005138 iadd temp ,pdata 
-0x2606 005139 store 2 ,mem_l2cap_rxbuff2_len 
-0x2607 005140 beq 0 ,assert 
-0x2608 005141 fetcht 2 ,mem_l2cap_rxbuff2 
-0x2609 005142 add temp ,4 ,temp 
-0x260a 005143 isub temp ,null 
-0x260b 005144 call l2cap_buff2_inuse ,zero 
-0x260c 005145 branch process_dmh_cont 
-:      005146 process_dmh_cont:
-0x260d 005147 bpatch patch0c_1 ,mem_patch0c 
-0x260e 005148 fetcht 1 ,mem_state_map 
-0x260f 005149 fetch 1 ,mem_lch_code 
-0x2610 005150 compare 3 ,pdata ,0x03 
-0x2611 005151 setflag true ,smap_rxlmp ,temp 
-0x2612 005152 nsetflag true ,smap_rxl2cap ,temp 
-0x2613 005153 storet 1 ,mem_state_map 
-0x2614 005154 nbranch process_dmh_cont_rxbuf_not_use ,true 
-0x2615 005155 set1 mark_rxbuf_inuse ,mark 
-:      005156 process_dmh_cont_rxbuf_not_use:
-0x2616 005157 bmark0 mark_testmode ,ack_payload 
-0x2617 005158 isolate1 smap_rxlmp ,temp 
-0x2618 005159 branch ack_payload ,true 
-0x2619 005160 fetch 2 ,mem_tst_pktcnt_crc 
-0x261a 005161 increase 1 ,pdata 
-0x261b 005162 store 2 ,mem_tst_pktcnt_crc 
-0x261c 005163 set1 mark_loopback ,mark 
-0x261d 005164 set0 smap_rxl2cap ,temp 
-0x261e 005165 set0 mark_rxbuf_inuse ,mark 
-0x261f 005166 storet 1 ,mem_state_map 
-:      005167 ack_payload:
-0x2620 005168 bpatch patch0c_2 ,mem_patch0c 
-0x2621 005169 fetcht 1 ,mem_temp_arq 
-0x2622 005170 fetch 1 ,mem_arq 
-0x2623 005171 set1 arqnx ,pdata 
-0x2624 005172 isolate1 seqn ,temp 
-0x2625 005173 setflag true ,seqn ,pdata 
-0x2626 005174 isolate1 mark_am_addr_broadcast ,mark 
-0x2627 005175 setflag true ,bcast1 ,pdata 
-0x2628 005176 store 1 ,mem_arq 
-0x2629 005177 fetch 2 ,mem_len 
-0x262a 005178 nbranch end_of_packet ,blank 
-0x262b 005179 fetch 1 ,mem_state_map 
-0x262c 005180 set0 smap_rxl2cap ,pdata 
-0x262d 005181 store 1 ,mem_state_map 
-0x262e 005182 fetch 1 ,mem_lch_code 
-0x262f 005183 compare 0x01 ,pdata ,0x07 
-0x2630 005185 branch end_of_packet 
-:      005187 error_header:
-0x2631 005188 bpatch patch0c_3 ,mem_patch0c 
-0x2632 005189 disable match 
-0x2633 005190 fetch 2 ,mem_rx_hec_err 
-0x2634 005191 increase 1 ,pdata 
-0x2635 005192 store 2 ,mem_rx_hec_err 
-0x2636 005193 branch end_of_packet 
-:      005194 error_payload_crc:
-0x2637 005195 fetch 2 ,mem_rx_crc_err 
-0x2638 005196 increase 1 ,pdata 
-0x2639 005197 store 2 ,mem_rx_crc_err 
-0x263a 005198 call discard_pkt 
-0x263b 005199 bmark0 mark_testmode ,error_payload 
-0x263c 005200 set1 mark_loopback ,mark 
-:      005201 error_payload:
-0x263d 005202 branch end_of_packet 
-:      005204 discard_pkt:
-0x263e 005205 bpatch patch0c_4 ,mem_patch0c 
-0x263f 005206 fetch 1 ,mem_lch_code 
-0x2640 005207 compare 3 ,pdata ,0x03 
-0x2641 005208 nbranch discard_pkt_l2cap ,true 
-:      005209 discard_pkt_lmp:
-0x2642 005210 fetcht 1 ,mem_state_map 
-0x2643 005211 set0 smap_rxlmp ,temp 
-0x2644 005212 storet 1 ,mem_state_map 
-0x2645 005213 rtn 
-:      005214 discard_pkt_l2cap:
-0x2646 005217 fetcht 1 ,mem_state_map 
-0x2647 005218 set0 smap_rxl2cap ,temp 
-0x2648 005219 storet 1 ,mem_state_map 
-0x2649 005220 branch h4_send_acl_trigger_clear 
-:      005222 redundant_payload:
-0x264a 005223 fetch 1 ,mem_arq 
-0x264b 005224 set1 arqnx ,pdata 
-0x264c 005225 store 1 ,mem_arq 
-:      005226 end_of_packet:
-0x264d 005227 bpatch patch0c_5 ,mem_patch0c 
-0x264e 005228 disable encode_fec0 
-0x264f 005229 disable encode_fec2 
-0x2650 005230 disable decode_fec0 
-0x2651 005231 disable decode_fec2 
-0x2652 005232 disable enable_crc 
-0x2653 005233 disable encrypt 
-0x2654 005234 disable enable_white 
-0x2655 005235 branch shutdown_radio ,is_rx 
-0x2656 005236 until null ,tx_clear 
-0x2657 005237 nop 100 
-0x2658 005238 branch shutdown_radio 
-:      005240 process_fhs:
-0x2659 005241 bpatch patch0c_6 ,mem_patch0c 
-0x265a 005242 enable enable_crc 
-0x265b 005243 enable decode_fec2 
-0x265c 005244 parse demod ,bucket ,72 
-0x265d 005245 isolate1 58 ,pdata 
-0x265e 005246 setflag true ,mark_fhs_eir ,mark 
-0x265f 005247 copy bt_adr ,temp 
-0x2660 005248 ialigned bt_adr 
-0x2661 005249 ialigned fhs0 
-0x2662 005250 pulse recalc 
-0x2663 005251 setsect 2 ,0xfffff 
-0x2664 005252 setsect 3 ,0x0ffff 
-0x2665 005253 nop 32 
-0x2666 005254 iverify fhs_parity 
-0x2667 005255 deposit lap 
-0x2668 005256 store 3 ,extm_lap 
-0x2669 005257 deposit uap 
-0x266a 005258 store 1 ,extm_uap 
-0x266b 005259 copy temp ,bt_adr 
-0x266c 005260 branch fhs_parity_ok ,true 
-0x266d 005261 branch error_payload 
-:      005262 fhs_parity_ok:
-0x266e 005263 bpatch patch0c_7 ,mem_patch0c 
-0x266f 005264 parse demod ,bucket ,72 
-0x2670 005265 ialigned fhs1 
-0x2671 005266 ialigned am_addr 
-0x2672 005267 ialigned nap 
-0x2673 005268 ialigned regb 
-0x2674 005269 force 0 ,pdata 
-0x2675 005270 parse demod ,bucket ,16 
-0x2676 005271 branch error_payload ,crc_failed 
-0x2677 005272 setarg 0x0ffffffc 
-0x2678 005273 iand regb ,pdata 
-0x2679 005274 store 4 ,mem_clke_bt 
-0x267a 005275 deposit fhs_class 
-0x267b 005276 store 3 ,extm_class 
-0x267c 005277 deposit fhs_misc 
-0x267d 005278 store 1 ,extm_fhs_misc 
-0x267e 005279 deposit am_addr 
-0x267f 005280 store 1 ,extm_newconn_am_addr 
-0x2680 005281 deposit nap 
-0x2681 005282 store 2 ,extm_nap 
-0x2682 005283 deposit bt_clk 
-0x2683 005284 inject rxf ,32 
-0x2684 005285 compare type_fhs ,type ,0x0f 
-0x2685 005286 setflag true ,mark_fhs_already_good ,mark 
-0x2686 005287 branch end_of_packet 
-:      005289 clear_got_tx:
-0x2687 005290 bpatch patch0d_0 ,mem_patch0d 
-0x2688 005291 fetch 1 ,mem_arq 
-0x2689 005292 rtnbit0 wack 
-0x268a 005293 set0 wack ,pdata 
-0x268b 005294 setflip seqnx ,pdata 
-0x268c 005295 store 1 ,mem_arq 
-0x268d 005296 fetch 1 ,mem_last_type 
-0x268e 005297 beq type_lmp ,clear_got_txlmp 
-0x268f 005298 rtneq type_hv3 
-0x2690 005299 fetch 1 ,mem_op 
-0x2691 005300 rtnbit0 op_txl2cap ,pdata 
-0x2692 005301 set0 op_txl2cap ,pdata 
-0x2693 005302 set1 op_pkt_comp ,pdata 
-0x2694 005303 store 1 ,mem_op 
-0x2695 005304 set0 mark_tx_l2cap ,mark 
-0x2696 005305 fetch 2 ,mem_l2cap_tx_multi_offset 
-0x2697 005306 nrtn blank 
-0x2698 005307 fetch 1 ,mem_op 
-0x2699 005308 set0 op_pkt_comp ,pdata 
-0x269a 005309 store 1 ,mem_op 
-0x269b 005310 branch l2cap_malloc_free 
-:      005312 clear_got_txlmp:
-0x269c 005313 bpatch patch0d_1 ,mem_patch0d 
-0x269d 005314 fetch 1 ,mem_lmo_header_opcode 
-0x269e 005315 rshift pdata ,pdata 
-0x269f 005316 beq lmp_start_encryption_req ,start_encryption 
-0x26a0 005317 beq lmp_stop_encryption_req ,stop_encryption 
-0x26a1 005318 beq lmp_unsniff_req ,sniff_exit 
-0x26a2 005319 beq lmp_escape ,clear_lmp_escape 
-0x26a3 005320 rtnne lmp_accepted 
-0x26a4 005321 fetch 1 ,mem_lmo_payload 
-0x26a5 005322 beq lmp_sco_link_req ,sco_link_req_by_slave 
-0x26a6 005323 beq lmp_start_encryption_req ,clear_send_setup_complete 
-0x26a7 005324 rtn 
-:      005326 clear_lmp_escape:
-0x26a8 005327 fetch 1 ,mem_lmo_payload 
-0x26a9 005328 set1 7 ,pdata 
-0x26aa 005329 rtn 
-:      005330 clear_send_setup_complete:
-0x26ab 005331 rtn master 
-0x26ac 005332 fetch 1 ,mem_state 
-0x26ad 005333 rtnbit1 state_conn_comp 
-0x26ae 005334 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x26af 005335 rtn 
-:      005338 sco_link_req_by_slave:
-0x26b0 005339 rtn master 
-0x26b1 005340 fetch 1 ,mem_mode 
-0x26b2 005341 isolate1 send_sco_when_slave ,pdata 
-0x26b3 005342 branch clean_mem_mode ,true 
-0x26b4 005344 rtn 
-:      005345 clean_mem_mode:
-0x26b5 005346 set0 send_sco_when_slave ,pdata 
-0x26b6 005347 store 1 ,mem_mode 
-0x26b7 005348 rtn 
-:      005350 start_encryption:
-0x26b8 005351 bpatch patch0d_2 ,mem_patch0d 
-0x26b9 005352 fetch 1 ,mem_state_map 
-0x26ba 005353 set1 smap_encryption ,pdata 
-0x26bb 005354 store 1 ,mem_state_map 
-0x26bc 005355 jam 1 ,core_encrypt 
-0x26bd 005356 fetch 1 ,mem_state 
-0x26be 005357 isolate1 state_conn_comp ,pdata 
-0x26bf 005358 rtn 
-:      005360 stop_encryption:
-0x26c0 005361 bpatch patch0d_3 ,mem_patch0d 
-0x26c1 005362 fetch 1 ,mem_state_map 
-0x26c2 005363 set0 smap_encryption ,pdata 
-0x26c3 005364 store 1 ,mem_state_map 
-0x26c4 005365 jam 0 ,core_encrypt 
-0x26c5 005366 rtn 
-:      005369 sniff_init:
-0x26c6 005370 bpatch patch0d_4 ,mem_patch0d 
-0x26c7 005371 copy clkn_bt ,pdata 
-0x26c8 005372 store 4 ,mem_lpm_delay_after_sniff 
-0x26c9 005373 add clkn_bt ,3 ,rega 
-0x26ca 005374 branch sniff_init_master ,master 
-0x26cb 005375 add clke_bt ,3 ,rega 
-:      005376 sniff_init_master:
-0x26cc 005377 fetcht 2 ,mem_tsniff 
-0x26cd 005378 deposit rega 
-0x26ce 005379 set0 27 ,pdata 
-0x26cf 005380 idiv temp 
-0x26d0 005381 fetch 2 ,mem_dsniff 
-0x26d1 005382 call wait_div_end 
-0x26d2 005383 remainder regc 
-0x26d3 005384 isub regc ,pdata 
-0x26d4 005385 branch sniff_init_nowrap ,positive 
-0x26d5 005386 iadd temp ,pdata 
-:      005387 sniff_init_nowrap:
-0x26d6 005388 iadd rega ,pdata 
-0x26d7 005389 store 4 ,mem_sniff_anchor 
-0x26d8 005390 jam switch_flag_init ,mem_switch_flag 
-0x26d9 005391 fetch 1 ,mem_state 
-0x26da 005392 set1 state_insniff ,pdata 
-0x26db 005393 store 1 ,mem_state 
-0x26dc 005394 fetch 1 ,mem_sniff_attempt 
-0x26dd 005395 store 1 ,mem_current_sniff_attempt 
-0x26de 005396 setarg 0 
-0x26df 005397 store 3 ,mem_sniff_rcv 
-0x26e0 005398 store 3 ,mem_sniff_lost 
-0x26e1 005399 store 1 ,mem_sniff_unint_lost 
-0x26e2 005400 jam bt_evt_enter_sniff ,mem_fifo_temp 
-0x26e3 005401 call ui_ipc_send_event 
-0x26e4 005402 fetch 2 ,mem_rx_window_sniff 
-0x26e5 005403 store 2 ,mem_rx_window 
-0x26e6 005404 nrtn master 
-0x26e7 005405 add am_addr ,-1 ,queue 
-0x26e8 005406 rtn 
-:      005408 sniff_exit:
-0x26e9 005409 bpatch patch0d_5 ,mem_patch0d 
-0x26ea 005410 fetch 1 ,mem_state 
-0x26eb 005411 rtnbit0 state_insniff 
-0x26ec 005412 set0 state_insniff ,pdata 
-0x26ed 005413 store 1 ,mem_state 
-0x26ee 005414 fetch 2 ,mem_rx_window_init 
-0x26ef 005415 store 2 ,mem_rx_window 
-0x26f0 005416 disable wake 
-0x26f1 005417 jam bt_evt_exit_sniff ,mem_fifo_temp 
-0x26f2 005418 branch ui_ipc_send_event 
-:      005421 check_attempt:
-0x26f3 005422 bpatch patch0d_6 ,mem_patch0d 
-0x26f4 005423 enable attempt 
-0x26f5 005424 fetch 1 ,mem_state 
-0x26f6 005425 bbit1 state_insniff ,check_attempt_sniff 
-0x26f7 005426 rtnmark1 mark_testmode 
-0x26f8 005427 fetch 1 ,mem_arq 
-0x26f9 005428 rtnbit1 wack 
-0x26fa 005429 fetch 1 ,mem_lmp_to_send 
-0x26fb 005430 nrtn blank 
-0x26fc 005431 fetch 1 ,mem_op 
-0x26fd 005432 rtnbit1 op_txl2cap 
-:      005433 check_attempt_nomore:
-0x26fe 005434 force 0 ,pdata 
-0x26ff 005435 rtn 
-:      005437 check_attempt_sniff:
-0x2700 005438 bbit0 state_insco ,check_attempt_not_sco 
-0x2701 005439 fetch 1 ,mem_current_sniff_attempt 
-0x2702 005440 beq 2 ,check_attempt_sniff_restore_sco 
-0x2703 005441 fetch 1 ,mem_arq 
-0x2704 005442 bbit1 wack ,check_attempt_notimeout 
-0x2705 005443 bmark0 mark_esco_rxok ,check_attempt_notimeout 
-:      005444 check_attempt_sniff_restore_sco:
-0x2706 005445 nbranch check_attempt_notimeout ,master 
-0x2707 005446 fetch 1 ,mem_lmp_to_send 
-0x2708 005447 nbranch check_attempt_notimeout ,blank 
-:      005448 check_attempt_sco_master:
-0x2709 005449 fetch 1 ,mem_sco_poll 
-0x270a 005450 increase -1 ,pdata 
-0x270b 005451 store 1 ,mem_sco_poll 
-0x270c 005452 nbranch check_attempt_nomore ,blank 
-0x270d 005453 jam param_sco_poll ,mem_sco_poll 
-0x270e 005454 branch check_attempt_notimeout 
-:      005461 check_attempt_not_sco:
-0x270f 005462 fetch 1 ,mem_current_sniff_attempt 
-0x2710 005463 bne 1 ,check_attempt_notimeout 
-0x2711 005464 fetch 1 ,mem_current_sniff_timeout 
-0x2712 005465 branch check_attempt_notimeout ,blank 
-0x2713 005466 increase -1 ,pdata 
-0x2714 005467 store 1 ,mem_current_sniff_timeout 
-0x2715 005468 fetch 1 ,mem_arq 
-0x2716 005469 rtnbit1 wack 
-0x2717 005470 nrtn match 
-:      005471 check_attempt_notimeout:
-0x2718 005472 fetch 1 ,mem_current_sniff_attempt 
-0x2719 005473 increase -1 ,pdata 
-0x271a 005474 store 1 ,mem_current_sniff_attempt 
-0x271b 005475 rtn 
-:      005486 sniff_check_window:
-0x271c 005487 bpatch patch0d_7 ,mem_patch0d 
-0x271d 005488 disable swfine 
-0x271e 005489 copy temp ,stop_watch 
-0x271f 005490 call context_search_sniff_window 
-0x2720 005491 disable user 
-0x2721 005492 nrtn zero 
-0x2722 005493 force 0 ,stop_watch 
-0x2723 005494 enable user 
-0x2724 005495 rtn 
-:      005498 check_esco_amaddr:
-0x2725 005499 fetch 1 ,mem_esco_addr 
-0x2726 005500 icompare 0xff ,am_addr 
-0x2727 005501 rtn 
-:      005504 parse_l2cap:
-0x2728 005505 bpatch patch0e_0 ,mem_patch0e 
-0x2729 005506 set0 mark_rxbuf_inuse ,mark 
-:      005507 parse_l2cap_cont:
-0x272a 005508 jam l2cap_rx_clear ,mem_l2cap_rx_done 
-0x272b 005509 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x272c 005510 rtn blank 
-0x272d 005511 isolate1 l2cap_inuse_buff1 ,pdata 
-0x272e 005512 arg mem_l2cap_rxbuff1 ,contr 
-0x272f 005513 call process_rx_l2cap_pkt ,true 
-0x2730 005514 bpatch patch0e_1 ,mem_patch0e 
-0x2731 005515 fetch 1 ,mem_l2cap_rx_done 
-0x2732 005516 beq l2cap_rx_done ,parse_l2cap_release_buff1 
-0x2733 005518 jam l2cap_rx_clear ,mem_l2cap_rx_done 
-0x2734 005519 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x2735 005520 rtnbit0 l2cap_inuse_buff2 
-0x2736 005521 arg mem_l2cap_rxbuff2 ,contr 
-0x2737 005522 call process_rx_l2cap_pkt 
-0x2738 005523 fetch 1 ,mem_l2cap_rx_done 
-0x2739 005524 beq l2cap_rx_done ,parse_l2cap_release_buff2 
-0x273a 005525 rtn 
-:      005527 parse_l2cap_release_buff1:
-0x273b 005528 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x273c 005529 set0 l2cap_inuse_buff1 ,pdata 
-0x273d 005530 store 1 ,mem_l2cap_rxbuff_inuse 
-0x273e 005531 setarg 0 
-0x273f 005532 store 2 ,mem_l2cap_rxbuff1_len 
-0x2740 005533 rtn 
-:      005534 parse_l2cap_release_buff2:
-0x2741 005535 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x2742 005536 set0 l2cap_inuse_buff2 ,pdata 
-0x2743 005537 store 1 ,mem_l2cap_rxbuff_inuse 
-0x2744 005538 setarg 0 
-0x2745 005539 store 2 ,mem_l2cap_rxbuff2_len 
-0x2746 005540 rtn 
-:      005542 l2cap_buff1_inuse:
-0x2747 005543 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x2748 005544 set1 l2cap_inuse_buff1 ,pdata 
-0x2749 005545 store 1 ,mem_l2cap_rxbuff_inuse 
-0x274a 005546 rtn 
-:      005548 l2cap_buff2_inuse:
-0x274b 005549 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x274c 005550 set1 l2cap_inuse_buff2 ,pdata 
-0x274d 005551 store 1 ,mem_l2cap_rxbuff_inuse 
-0x274e 005552 rtn 
-:      005558 slave_send_access:
-0x274f 005559 bpatch patch0e_2 ,mem_patch0e 
-0x2750 005560 add clke_bt ,1 ,bt_clk 
-0x2751 005561 call fetch_extm_bt_adr 
-0x2752 005562 force 0x03 ,freq_mode 
-0x2753 005563 call tx_radio_freq 
-0x2754 005564 call start_transmitter 
-0x2755 005565 call start_tx_external 
-0x2756 005566 branch send_access_word 
-:      005569 slave_conn_send_packet:
-0x2757 005570 bpatch patch0e_3 ,mem_patch0e 
-0x2758 005571 call rf_setup_time_slave_slot 
-0x2759 005572 deposit clke_bt 
-0x275a 005573 fetcht 4 ,mem_next_btclk 
-0x275b 005574 isub temp ,pdata 
-0x275c 005575 rtnne 1 
-0x275d 005576 compare type_null ,type ,0x1f 
-0x275e 005577 nbranch slave_conn_send_access ,true 
-0x275f 005578 fetch 1 ,mem_rx_type 
-0x2760 005579 rtn blank 
-:      005580 slave_conn_send_access:
-0x2761 005581 call slave_send_access 
-:      005582 transmit_packet:
-0x2762 005583 compare type_id ,type ,0x1f 
-0x2763 005584 branch end_of_packet ,true 
-0x2764 005585 rshift bt_clk ,temp 
-0x2765 005586 or temp ,0x40 ,white_init 
-:      005587 transmit_packet_whitened:
-0x2766 005588 bpatch patch0e_4 ,mem_patch0e 
-0x2767 005589 enable enable_white 
-0x2768 005590 enable enable_hec 
-0x2769 005591 enable encode_fec1 
-0x276a 005592 set0 mark_longpacket ,mark 
-0x276b 005593 deposit am_addr 
-0x276c 005594 inject mod ,3 
-0x276d 005595 deposit type 
-0x276e 005596 inject mod ,4 
-0x276f 005597 fetch 1 ,mem_arq 
-0x2770 005598 inject bucket ,4 
-0x2771 005599 inject mod ,3 
-0x2772 005600 enable enable_parity 
-0x2773 005601 inject mod ,8 
-0x2774 005602 disable encode_fec1 
-0x2775 005603 disable enable_parity 
-0x2776 005604 disable enable_hec 
-0x2777 005605 set0 psk3m ,radio_ctrl 
-0x2778 005606 arg 0 ,temp 
-0x2779 005607 call reserve_slot 
-0x277a 005608 bpatch patch0e_5 ,mem_patch0e 
-0x277b 005609 and type ,0x1f ,pdata 
-0x277c 005610 beq type_lmp ,transmit_lmp 
-0x277d 005611 beq type_null ,end_of_packet 
-0x277e 005612 beq type_poll ,end_of_packet 
-0x277f 005613 beq type_fhs ,transmit_fhs 
-0x2780 005614 beq type_dm1 ,transmit_dm1 
-0x2781 005615 beq type_dh1 ,transmit_dh1 
-0x2782 005616 beq type_hv3 ,transmit_hev 
-0x2783 005617 beq type_3dh1 ,transmit_3dh1 
-0x2784 005618 arg 4 ,temp 
-0x2785 005619 call reserve_slot 
-0x2786 005620 beq type_dm3 ,transmit_dm3 
-0x2787 005621 beq type_dh3 ,transmit_dh3 
-0x2788 005622 arg 8 ,temp 
-0x2789 005623 call reserve_slot 
-0x278a 005624 beq type_dh5 ,transmit_dh5 
-0x278b 005625 branch transmit_dm5 
-:      005628 transmit_hev:
-0x278c 005629 bpatch patch0e_6 ,mem_patch0e 
-0x278d 005630 enable encode_fec0 
-0x278e 005631 enable enable_crc 
-0x278f 005632 enable encrypt 
-0x2790 005633 force 30 ,loopcnt 
-0x2791 005634 arg mem_sco_obuf ,contr 
-:      005635 transmit_ev_loop:
-0x2792 005636 ifetch 1 ,contr 
-0x2793 005637 inject mod ,8 
-0x2794 005638 loop transmit_ev_loop 
-0x2795 005639 bmark1 mark_esco ,transmit_end 
-0x2796 005640 branch end_of_packet 
-:      005642 transmit_fhs:
-0x2797 005643 bpatch patch0e_7 ,mem_patch0e 
-0x2798 005644 fetch 1 ,mem_fhs_am_addr 
-0x2799 005645 icopy am_addr 
-0x279a 005646 fetch 1 ,mem_fhs_misc 
-0x279b 005647 icopy fhs_misc 
-0x279c 005648 fetch 3 ,mem_class 
-0x279d 005649 icopy fhs_class 
-0x279e 005650 fetch 2 ,mem_nap 
-0x279f 005651 icopy nap 
-0x27a0 005652 enable enable_crc 
-0x27a1 005653 enable encode_fec2 
-0x27a2 005654 copy bt_adr ,rega 
-0x27a3 005655 call fetch_self_bt_adr 
-0x27a4 005656 pulse recalc 
-0x27a5 005657 nop 32 
-0x27a6 005658 copy bt_clk ,timeup 
-0x27a7 005659 fetch 4 ,mem_clkn_bt 
-0x27a8 005660 icopy bt_clk 
-0x27a9 005661 preload fhs0 
-0x27aa 005662 set1 58 ,pdata 
-0x27ab 005663 inject mod ,72 
-0x27ac 005664 preload fhs1 
-0x27ad 005665 inject mod ,72 
-0x27ae 005666 copy timeup ,bt_clk 
-0x27af 005667 copy rega ,bt_adr 
-0x27b0 005668 enable enable_parity 
-0x27b1 005669 inject mod ,16 
-0x27b2 005670 disable enable_parity 
-0x27b3 005671 branch end_of_packet 
-:      005673 transmit_lmp:
-0x27b4 005674 bpatch patch0f_0 ,mem_patch0f 
-0x27b5 005675 enable encrypt 
-0x27b6 005676 enable enable_crc 
-0x27b7 005677 enable encode_fec2 
-0x27b8 005678 fetch 1 ,mem_lmo_header_length 
-0x27b9 005679 and pdata ,0x1f8 ,temp 
-0x27ba 005680 arg mem_lmo_header_length ,contr 
-0x27bb 005681 increase 8 ,temp 
-:      005682 transmit_lmp_loop:
-0x27bc 005683 add temp ,-72 ,regc 
-0x27bd 005684 nbranch transmit_lmp_finish ,positive 
-0x27be 005685 ifetch 9 ,contr 
-0x27bf 005686 inject mod ,72 
-0x27c0 005687 copy regc ,temp 
-0x27c1 005688 branch transmit_lmp_loop 
-:      005689 transmit_lmp_finish:
-0x27c2 005690 ifetch 9 ,contr 
-0x27c3 005691 iinject mod ,temp 
-0x27c4 005692 branch transmit_end 
-:      005694 transmit_dm1:
-0x27c5 005695 enable encode_fec2 
-0x27c6 005696 branch transmit_dmh 
-:      005697 transmit_dm3:
-:      005698 transmit_dm5:
-0x27c7 005699 enable encode_fec2 
-0x27c8 005700 set1 mark_longpacket ,mark 
-0x27c9 005701 branch transmit_dmh 
-:      005703 transmit_3dh1:
-0x27ca 005704 set1 psk3m ,radio_ctrl 
-:      005705 transmit_dh1:
-0x27cb 005706 enable encode_fec0 
-0x27cc 005707 branch transmit_dmh 
-:      005709 transmit_dh3:
-:      005710 transmit_dh5:
-0x27cd 005711 set1 psk3m ,radio_ctrl 
-0x27ce 005712 enable encode_fec0 
-0x27cf 005713 set1 mark_longpacket ,mark 
-:      005715 transmit_dmh:
-0x27d0 005716 bpatch patch0f_1 ,mem_patch0f 
-0x27d1 005717 fetch 1 ,mem_state_map 
-0x27d2 005718 bbit0 smap_edr ,transmit_noedr 
-0x27d3 005719 sub type ,3 ,null 
-0x27d4 005720 branch transmit_noedr ,positive 
-0x27d5 005721 disable encrypt 
-0x27d6 005722 disable encode_fec2 
-0x27d7 005723 enable encode_fec0 
-0x27d8 005724 disable enable_white 
-0x27d9 005725 set1 psk ,radio_ctrl 
-0x27da 005726 isolate1 psk3m ,radio_ctrl 
-0x27db 005727 branch transmit_edr3m ,true 
-0x27dc 005728 setarg 0xabeee 
-0x27dd 005729 inject mod ,20 
-0x27de 005730 branch transmit_edr_sync_end 
-:      005731 transmit_edr3m:
-0x27df 005732 setarg 0x5faeba 
-0x27e0 005733 inject mod ,24 
-0x27e1 005734 setarg 0x12 
-0x27e2 005735 inject mod ,6 
-:      005736 transmit_edr_sync_end:
-0x27e3 005737 enable enable_white 
-0x27e4 005738 set1 mark_longpacket ,mark 
-:      005739 transmit_noedr:
-0x27e5 005740 enable encrypt 
-0x27e6 005741 enable enable_crc 
-0x27e7 005742 bmark1 mark_loopback ,transmit_loopback 
-0x27e8 005743 fetch 1 ,mem_tx_lch 
-0x27e9 005744 inject mod ,3 
-0x27ea 005745 fetch 2 ,mem_tx_len 
-0x27eb 005746 iforce loopcnt 
-0x27ec 005747 bmark1 mark_longpacket ,transmit_long 
-0x27ed 005748 inject mod ,5 
-0x27ee 005749 branch transmit_stuff 
-:      005750 transmit_long:
-0x27ef 005751 inject mod ,13 
-:      005752 transmit_stuff:
-0x27f0 005753 deposit loopcnt 
-0x27f1 005754 branch transmit_end ,blank 
-0x27f2 005755 fetch 2 ,mem_txptr 
-0x27f3 005756 iforce contr 
-:      005757 transmit_stuff_loop:
-0x27f4 005758 ifetch 1 ,contr 
-0x27f5 005759 inject mod ,8 
-0x27f6 005760 loop transmit_stuff_loop 
-:      005763 transmit_end:
-0x27f7 005764 enable enable_parity 
-0x27f8 005765 inject mod ,16 
-0x27f9 005766 disable enable_parity 
-0x27fa 005767 call set_wait_ack 
-0x27fb 005768 fetch 1 ,mem_state_map 
-0x27fc 005769 bbit0 smap_edr ,end_of_packet 
-0x27fd 005770 force 0 ,pdata 
-0x27fe 005771 inject mod ,6 
-0x27ff 005772 branch end_of_packet 
-:      005775 transmit_loopback:
-0x2800 005776 bpatch patch0f_2 ,mem_patch0f 
-0x2801 005777 bmark1 mark_longpacket ,transmit_loopback_long 
-:      005778 transmit_loopback_short:
-0x2802 005779 fetch 1 ,mem_lch_code 
-0x2803 005780 inject mod ,3 
-0x2804 005781 fetch 1 ,mem_len 
-0x2805 005782 iforce regc 
-0x2806 005783 inject mod ,5 
-0x2807 005784 branch transmit_loopback_cont 
-:      005785 transmit_loopback_long:
-0x2808 005786 fetch 1 ,mem_lch_code 
-0x2809 005787 inject mod ,3 
-0x280a 005788 fetch 2 ,mem_len 
-0x280b 005789 iforce regc 
-0x280c 005790 inject mod ,13 
-:      005791 transmit_loopback_cont:
-0x280d 005792 arg mem_rxbuf ,contr 
-:      005793 transmit_loopback_loop:
-0x280e 005794 copy regc ,null 
-0x280f 005795 branch transmit_loopback_end ,zero 
-0x2810 005796 ifetch 1 ,contr 
-0x2811 005797 inject mod ,8 
-0x2812 005798 increase -1 ,regc 
-0x2813 005799 branch transmit_loopback_loop 
-:      005800 transmit_loopback_end:
-0x2814 005801 fetch 2 ,mem_tst_pktcnt_dmh 
-0x2815 005802 increase 1 ,pdata 
-0x2816 005803 store 2 ,mem_tst_pktcnt_dmh 
-0x2817 005804 branch transmit_end 
-:      005807 apply_switch_clke:
-0x2818 005808 fetch 4 ,mem_clke_bt 
-0x2819 005809 add pdata ,7 ,rega 
-0x281a 005810 fetch 2 ,mem_slot_offset 
-0x281b 005811 nbranch apply_switch_nozero ,blank 
-0x281c 005812 increase -3 ,rega 
-0x281d 005813 branch apply_switch_wait_loop 
-:      005814 apply_switch_nozero:
-0x281e 005815 mul32 pdata ,12 ,pdata 
-0x281f 005816 hfetcht 2 ,core_halfslot 
-0x2820 005817 increase 1 ,temp 
-:      005818 apply_switch_loop:
-0x2821 005819 isub temp ,pdata 
-0x2822 005820 nbranch apply_switch_bt ,positive 
-0x2823 005821 increase -1 ,rega 
-0x2824 005822 branch apply_switch_loop 
-:      005823 apply_switch_bt:
-0x2825 005824 sub pdata ,0 ,pdata 
-:      005825 apply_switch_wait_loop:
-0x2826 005826 until null ,oneslot 
-0x2827 005827 compare 0 ,clkn_bt ,3 
-0x2828 005828 nbranch apply_switch_wait_loop ,true 
-0x2829 005829 iforce clke_rt 
-0x282a 005830 copy rega ,clke_bt 
-0x282b 005831 iforce clke_rt 
-0x282c 005832 rtn 
-:      005835 calc_slot_offset:
-0x282d 005836 bpatch patch0f_3 ,mem_patch0f 
-0x282e 005837 until null ,halfslot 
-0x282f 005838 deposit clke 
-0x2830 005839 iforce contr 
-0x2831 005840 rshift16 ,pdata ,pdata 
-0x2832 005841 isub clkn_bt ,loopcnt 
-0x2833 005842 and_into 3 ,loopcnt 
-0x2834 005843 nbranch calc_bt_portion ,zero 
-0x2835 005844 force 0 ,pdata 
-0x2836 005845 branch calc_skip_bt 
-:      005846 calc_bt_portion:
-0x2837 005847 arg 3750 ,temp 
-0x2838 005848 force 0 ,pdata 
-:      005849 calc_slot_offset_loop:
-0x2839 005850 iadd temp ,pdata 
-0x283a 005851 loop calc_slot_offset_loop 
-:      005852 calc_skip_bt:
-0x283b 005853 iadd contr ,pdata 
-0x283c 005854 div pdata ,12 
-0x283d 005855 call wait_div_end 
-0x283e 005856 quotient pdata 
-0x283f 005857 store 2 ,mem_slot_offset 
-0x2840 005858 rtn 
-:      005860 calc_clke_offset:
-0x2841 005861 bpatch patch0f_4 ,mem_patch0f 
-0x2842 005862 deposit clke 
-0x2843 005863 copy clkn ,temp 
-0x2844 005864 isub temp ,null 
-0x2845 005865 nsetflag positive ,44 ,pdata 
-0x2846 005866 isub temp ,temp 
-0x2847 005867 setarg 3750 
-0x2848 005868 isolate0 15 ,temp 
-0x2849 005869 branch calc_clke_pos ,true 
-0x284a 005870 setarg -61786 
-0x284b 005871 iadd temp ,temp 
-:      005872 calc_clke_pos:
-0x284c 005873 storet 6 ,mem_le_clk_offset 
-0x284d 005874 rtn le 
-0x284e 005875 storet 6 ,mem_clk_offset 
-0x284f 005876 rtn 
-:      005878 calc_clke:
-0x2850 005879 disable clknt 
-0x2851 005880 fetch 6 ,mem_le_clk_offset 
-0x2852 005881 branch calc_clke2 ,le 
-0x2853 005882 fetch 6 ,mem_clk_offset 
-:      005883 calc_clke2:
-0x2854 005884 iadd clkn ,alarm 
-0x2855 005885 increase 10 ,alarm 
-0x2856 005886 setarg 3750 
-0x2857 005887 isub alarm ,pdata 
-0x2858 005888 isolate0 15 ,pdata 
-0x2859 005889 branch calc_clke_pos_adj ,true 
-0x285a 005890 setarg 0xf15a 
-0x285b 005891 iadd alarm ,alarm 
-:      005892 calc_clke_pos2:
-0x285c 005893 copy alarm ,clke 
-0x285d 005894 rtn 
-:      005895 calc_clke_pos_adj:
-0x285e 005896 force 0 ,null 
-0x285f 005897 branch calc_clke_pos2 
-:      005904 calc_radio_freq:
-0x2860 005905 bpatch patch0f_5 ,mem_patch0f 
-0x2861 005906 call set_sync_on 
-0x2862 005907 copy bt_clk ,pdata 
-0x2863 005908 and_into 0x180 ,pdata 
-0x2864 005909 compare 3 ,freq_mode ,0x07 
-0x2865 005910 nbranch freq_not_connection ,true 
-0x2866 005911 rshift3 pdata ,pdata 
-0x2867 005912 iadd freq_index ,pdata 
-0x2868 005913 branch do_hop_mod_now 
-:      005914 freq_not_connection:
-0x2869 005915 copy freq_index ,pdata 
-:      005916 do_hop_mod_now:
-0x286a 005917 div pdata ,79 
-0x286b 005918 pulse recalc 
-0x286c 005919 call wait_div_end 
-0x286d 005920 remainder rega 
-0x286e 005921 add rega ,-40 ,temp 
-0x286f 005922 branch odd_half ,positive 
-0x2870 005923 lshift rega ,temp 
-0x2871 005924 branch freq_result 
-:      005925 odd_half:
-0x2872 005926 lshift temp ,temp 
-0x2873 005927 increase 1 ,temp 
-:      005928 freq_result:
-0x2874 005929 bpatch patch0f_6 ,mem_patch0f 
-0x2875 005930 fetch 1 ,mem_mode 
-0x2876 005931 bbit0 afh_change ,afh_process_con 
-:      005932 afh_process_0:
-0x2877 005933 fetch 4 ,mem_afh_instant 
-0x2878 005934 isub bt_clk ,null 
-0x2879 005935 branch afh_process_con ,positive 
-0x287a 005936 call afh_clear 
-0x287b 005937 fetch 1 ,mem_afh_new_mod 
-0x287c 005938 rtn blank 
-0x287d 005939 fetch 1 ,mem_mode 
-0x287e 005940 set1 afh_enable ,pdata 
-0x287f 005941 store 1 ,mem_mode 
-0x2880 005942 fetch 5 ,mem_afh_map_new 
-0x2881 005943 store 5 ,mem_afh_map_lo 
-0x2882 005944 ifetch 5 ,contr 
-0x2883 005945 store 5 ,mem_afh_map_hi 
-0x2884 005946 call afh_process_freq_map 
-:      005947 afh_process_con:
-0x2885 005948 fetch 1 ,mem_mode 
-0x2886 005949 rtnbit0 afh_enable 
-0x2887 005950 isolate1 1 ,bt_clk 
-0x2888 005951 branch afh_same_channel ,true 
-0x2889 005952 rshift3 temp ,rega 
-0x288a 005953 and temp ,7 ,queue 
-0x288b 005954 setarg mem_afh_map_lo 
-0x288c 005955 iadd rega ,rega 
-0x288d 005956 ifetch 1 ,rega 
-0x288e 005957 qisolate0 pdata 
-0x288f 005958 branch afh_process_1 ,true 
-0x2890 005959 deposit temp 
-0x2891 005960 branch afh_process_end 
-:      005961 afh_process_1:
-0x2892 005962 fetch 1 ,mem_afh_used 
-0x2893 005963 iforce regb 
-0x2894 005964 deposit bt_clk 
-0x2895 005965 and_into 0x180 ,pdata 
-0x2896 005966 rshift3 pdata ,pdata 
-0x2897 005967 iadd freq_index ,pdata 
-0x2898 005968 idiv regb 
-0x2899 005969 setarg mem_afh_map 
-0x289a 005970 call wait_div_end 
-0x289b 005971 remainder rega 
-0x289c 005972 iadd rega ,contr 
-0x289d 005973 ifetch 1 ,contr 
-:      005974 afh_process_end:
-0x289e 005975 store 1 ,mem_afh_index 
-0x289f 005976 iforce temp 
-0x28a0 005977 rtn 
-:      005979 afh_same_channel:
-0x28a1 005980 fetch 1 ,mem_afh_index 
-0x28a2 005981 iforce temp 
-0x28a3 005982 rtn 
-:      005984 afh_clear:
-0x28a4 005985 fetch 1 ,mem_mode 
-0x28a5 005986 set0 afh_enable ,pdata 
-0x28a6 005987 set0 afh_change ,pdata 
-0x28a7 005988 store 1 ,mem_mode 
-0x28a8 005989 rtn 
-:      005995 afh_process_freq_map:
-0x28a9 005996 bpatch patch0f_7 ,mem_patch0f 
-0x28aa 005997 arg mem_afh_map ,contw 
-0x28ab 005998 force 10 ,loopcnt 
-0x28ac 005999 call memset0 
-0x28ad 006000 arg mem_afh_map ,contw 
-0x28ae 006001 force 0 ,regc 
-0x28af 006002 force 2 ,queue 
-:      006003 process_freq_3:
-0x28b0 006004 fetch 5 ,mem_afh_map_lo 
-0x28b1 006005 iforce temp 
-0x28b2 006006 compare 2 ,queue ,0xff 
-0x28b3 006007 branch process_freq_1 ,true 
-0x28b4 006008 rshift temp ,temp 
-:      006009 process_freq_1:
-0x28b5 006010 isolate0 0 ,temp 
-0x28b6 006011 branch process_freq_0 ,true 
-0x28b7 006012 deposit regc 
-0x28b8 006013 istore 1 ,contw 
-:      006014 process_freq_0:
-0x28b9 006015 rshift2 temp ,temp 
-0x28ba 006016 increase 2 ,regc 
-0x28bb 006017 compare 40 ,regc ,0xfe 
-0x28bc 006018 nbranch process_freq_2 ,true 
-0x28bd 006019 fetch 5 ,mem_afh_map_hi 
-0x28be 006020 iforce temp 
-0x28bf 006021 compare 2 ,queue ,0xff 
-0x28c0 006022 branch process_freq_2 ,true 
-0x28c1 006023 rshift temp ,temp 
-:      006024 process_freq_2:
-0x28c2 006025 sub regc ,78 ,null 
-0x28c3 006026 branch process_freq_1 ,positive 
-0x28c4 006027 force 1 ,regc 
-0x28c5 006028 increase -1 ,queue 
-0x28c6 006029 nbranch process_freq_3 ,zero 
-0x28c7 006030 arg mem_afh_map ,rega 
-0x28c8 006031 deposit contw 
-0x28c9 006032 isub rega ,pdata 
-0x28ca 006033 store 1 ,mem_afh_used 
-0x28cb 006034 rtn 
-:      006036 rx_radio_freq:
-0x28cc 006037 bpatch patch10_0 ,mem_patch10 
-0x28cd 006038 call calc_radio_freq 
-0x28ce 006039 fetch 1 ,mem_debug_config 
-0x28cf 006040 bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
-0x28d0 006041 fetcht 1 ,mem_rx_fixed_freq 
-:      006042 rx_radio_freq_now:
-0x28d1 006043 branch set_freq_rx 
-:      006046 tx_radio_freq:
-0x28d2 006047 bpatch patch10_1 ,mem_patch10 
-0x28d3 006048 call calc_radio_freq 
-0x28d4 006049 fetch 1 ,mem_debug_config 
-0x28d5 006050 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
-0x28d6 006051 fetcht 1 ,mem_tx_fixed_freq 
-:      006052 tx_radio_freq_now:
-0x28d7 006053 branch set_freq_tx 
-:      006056 fetch_giac:
-0x28d8 006057 force 0 ,uap 
-0x28d9 006058 fetch 3 ,mem_glap 
-0x28da 006059 iforce lap 
-0x28db 006060 rtn 
-:      006062 fetch_page_bt_adr:
-0x28dc 006063 bpatch patch10_2 ,mem_patch10 
-0x28dd 006064 fetch 1 ,mem_hci_puap 
-0x28de 006065 icopy uap 
-0x28df 006066 fetch 3 ,mem_hci_plap 
-0x28e0 006067 icopy lap 
-0x28e1 006068 rtn 
-:      006070 fetch_self_bt_adr:
-0x28e2 006071 bpatch patch10_3 ,mem_patch10 
-0x28e3 006072 fetch 2 ,mem_nap 
-0x28e4 006073 icopy nap 
-0x28e5 006074 fetch 1 ,mem_uap 
-0x28e6 006075 icopy uap 
-0x28e7 006076 fetch 3 ,mem_lap 
-0x28e8 006077 icopy lap 
-0x28e9 006078 rtn 
-:      006080 fetch_extm_bt_adr:
-0x28ea 006081 bpatch patch10_4 ,mem_patch10 
-0x28eb 006082 fetch 2 ,mem_pnap 
-0x28ec 006083 icopy nap 
-0x28ed 006084 fetch 1 ,mem_puap 
-0x28ee 006085 icopy uap 
-0x28ef 006086 fetch 3 ,mem_plap 
-0x28f0 006087 icopy lap 
-0x28f1 006088 rtn 
-:      006091 fetch_diac:
-0x28f2 006092 bmark1 mark_all_diac ,fetch_diac_do 
-0x28f3 006093 rtnmark0 mark_inquiry_state 
-0x28f4 006094 rtnmark0 mark_periodical_diac 
-:      006095 fetch_diac_do:
-0x28f5 006096 and_into -256 ,lap 
-0x28f6 006097 pulse recalc 
-0x28f7 006098 nop 32 
-0x28f8 006099 rtn 
-:      006102 shutdown_radio:
-0x28f9 006103 bpatch patch10_5 ,mem_patch10 
-0x28fa 006104 branch shutdown_radio0 ,is_rx 
-0x28fb 006105 jam 0xd4 ,rf_tx_pa_ib 
-0x28fc 006106 nop 4 
-0x28fd 006107 jam 0xd2 ,rf_tx_pa_ib 
-0x28fe 006108 nop 4 
-0x28ff 006109 jam 0xd1 ,rf_tx_pa_ib 
-0x2900 006110 nop 4 
-0x2901 006111 fetch 1 ,mem_tx_power 
-0x2902 006112 beq tx_power_0db ,shutdown_radio_0db 
-0x2903 006113 beq tx_power_3db ,shutdown_radio_3db 
-0x2904 006114 beq tx_power_5db ,shutdown_radio_5db 
-0x2905 006115 beq tx_power_f3db ,shutdown_radio_f3db 
-0x2906 006116 beq tx_power_f5db ,shutdown_radio_f5db 
-0x2907 006117 beq tx_power_pair ,shutdown_radio_pair 
-:      006118 shutdown_radio_5db:
-:      006119 shutdown_radio_0db:
-0x2908 006120 jam 0xd0 ,rf_tx_pa_ib 
-0x2909 006121 jam 0xe0 ,rf_tx_pa_gc 
-:      006122 shutdown_radio0:
-0x290a 006123 force 0 ,radio_ctrl 
-0x290b 006124 disable is_rx 
-0x290c 006125 disable is_tx 
-0x290d 006126 pulse packet_end 
-0x290e 006127 jam 0x0 ,rfen_mdm 
-0x290f 006128 jam 0x0 ,rfen_tx 
-0x2910 006129 jam 0x0 ,rfen_rx 
-0x2911 006130 jam 0 ,rfen_sn 
-0x2912 006131 jam 0x70 ,rfen_msc 
-0x2913 006132 jam 0x0 ,rfen_adc 
-0x2914 006133 rtn 
-:      006135 shutdown_radio_pair:
-:      006136 shutdown_radio_f5db:
-:      006137 shutdown_radio_f3db:
-:      006138 shutdown_radio_3db:
-0x2915 006139 jam 0xd0 ,rf_tx_pa_ib 
-0x2916 006140 jam 0xc0 ,rf_tx_pa_gc 
-0x2917 006141 branch shutdown_radio0 
-:      006143 set_sync_on:
-0x2918 006144 bpatch patch10_6 ,mem_patch10 
-0x2919 006145 jam 0x0 ,rfen_mdm 
-0x291a 006146 jam 0x0 ,rfen_tx 
-0x291b 006147 jam 0x18 ,rfen_rx 
-0x291c 006148 jam 0xa7 ,rfen_sn 
-0x291d 006149 jam 0x7f ,rfen_msc 
-0x291e 006150 rtn 
-:      006152 set_freq_rx:
-0x291f 006153 bpatch patch10_7 ,mem_patch10 
-0x2920 006155 storet 1 ,mem_last_freq 
-0x2921 006156 add temp ,rx_freq_offset ,rega 
-0x2922 006157 jam 0x07 ,rf_balun_ctrim 
-0x2923 006158 branch rf_write_freq 
-:      006159 rf_rx_enable:
-0x2924 006160 bpatch patch11_0 ,mem_patch11 
-0x2925 006161 jam 0xcf ,rfen_tx 
-0x2926 006162 nop 10 
-0x2927 006163 jam 0xff ,rfen_rx 
-0x2928 006164 jam 0xaf ,rfen_sn 
-0x2929 006165 jam 0xff ,rfen_msc 
-0x292a 006166 nop 10 
-0x292b 006167 jam 0xa0 ,rfen_mdm 
-0x292c 006168 rtn 
-:      006170 set_freq_tx_offset:
-0x292d 006171 fetch 1 ,mem_250k_freq_enable 
-0x292e 006172 branch set_freq_tx_2m_offset ,blank 
-:      006173 set_freq_tx_0m_offset:
-0x292f 006174 add temp ,2 ,rega 
-0x2930 006175 rtn 
-:      006176 set_freq_tx_2m_offset:
-0x2931 006177 add temp ,0 ,rega 
-0x2932 006178 rtn 
-:      006180 set_freq_tx:
-0x2933 006181 bpatch patch11_1 ,mem_patch11 
-0x2934 006182 storet 1 ,mem_last_freq 
-0x2935 006183 call set_freq_tx_offset 
-0x2936 006184 call rf_write_freq 
-0x2937 006185 setarg param_pll_setup 
-0x2938 006186 call sleep 
-:      006187 txon:
-0x2939 006188 jam 0x1 ,rfen_adc 
-0x293a 006189 jam 0x3c ,rfen_rx 
-0x293b 006190 jam 0xe0 ,rfen_tx 
-0x293c 006191 jam 0x12 ,rf_balun_ctrim 
-0x293d 006192 nop 10 
-0x293e 006193 jam 0x01 ,rfen_mdm 
-0x293f 006194 jam 0x3d ,rfen_mdm 
-0x2940 006195 nop 10 
-0x2941 006196 jam 0xb7 ,rfen_sn 
-0x2942 006197 nop 10 
-0x2943 006198 jam 0x7f ,rfen_mdm 
-:      006199 txon_power_select:
-0x2944 006200 fetch 1 ,mem_tx_power 
-0x2945 006201 beq tx_power_0db ,set_tx_power_0db 
-0x2946 006202 beq tx_power_3db ,set_tx_power_3db 
-0x2947 006203 beq tx_power_5db ,set_tx_power_5db 
-0x2948 006204 beq tx_power_f3db ,set_tx_power_f3db 
-0x2949 006205 beq tx_power_f5db ,set_tx_power_f5db 
-0x294a 006206 beq tx_power_pair ,set_tx_power_pair 
-:      006207 set_tx_power_0db:
-0x294b 006208 jam 0xf0 ,rf_tx_pa_gc 
-0x294c 006209 call txon_common 
-0x294d 006210 jam 0xd8 ,rf_tx_pa_ib 
-0x294e 006211 rtn 
-:      006213 set_tx_power_3db:
-0x294f 006214 jam 0xdf ,rf_tx_pa_gc 
-0x2950 006215 call txon_common 
-0x2951 006216 jam 0xdf ,rf_tx_pa_ib 
-0x2952 006217 rtn 
-:      006219 set_tx_power_5db:
-0x2953 006220 jam 0xff ,rf_tx_pa_gc 
-0x2954 006221 call txon_common 
-0x2955 006222 jam 0xdf ,rf_tx_pa_ib 
-0x2956 006223 rtn 
-:      006224 set_tx_power_f3db:
-0x2957 006225 jam 0xce ,rf_tx_pa_gc 
-0x2958 006226 call txon_common 
-0x2959 006227 jam 0xd8 ,rf_tx_pa_ib 
-0x295a 006228 rtn 
-:      006230 set_tx_power_f5db:
-0x295b 006231 jam 0xcb ,rf_tx_pa_gc 
-0x295c 006232 call txon_common 
-0x295d 006233 jam 0xd8 ,rf_tx_pa_ib 
-0x295e 006234 rtn 
-:      006236 set_tx_power_pair:
-0x295f 006237 jam 0xd0 ,rf_tx_pa_ib 
-0x2960 006238 jam 0xc0 ,rf_tx_pa_gc 
-0x2961 006239 jam 0x4c ,0x8957 
-0x2962 006240 jam 0x6c ,0x8958 
-0x2963 006241 jam 0x50 ,0x8959 
-0x2964 006242 rtn 
-:      006244 txon_common:
-0x2965 006245 nop 4 
-0x2966 006246 jam 0xd1 ,rf_tx_pa_ib 
-0x2967 006247 nop 4 
-0x2968 006248 jam 0xd2 ,rf_tx_pa_ib 
-0x2969 006249 nop 4 
-0x296a 006250 jam 0xd4 ,rf_tx_pa_ib 
-0x296b 006251 rtn 
-:      006254 initialize_radio:
-0x296c 006255 jam clksel_rc ,core_clksel 
-:      006256 initialize_radio_wait:
-0x296d 006257 fetch 2 ,mem_rf_init_ptr 
-0x296e 006258 bbit0 14 ,initialize_radio_wait 
-0x296f 006259 iforce contr 
-0x2970 006260 arg 0x8900 ,temp 
-:      006261 initialize_radio_loop:
-0x2971 006262 ifetch 1 ,contr 
-0x2972 006263 beq 0xff ,initialize_radio_cont 
-0x2973 006264 ior temp ,contw 
-0x2974 006265 ifetch 1 ,contr 
-0x2975 006266 istore 1 ,contw 
-0x2976 006267 branch initialize_radio_loop 
-:      006268 initialize_radio_cont:
-0x2977 006269 bpatch patch11_2 ,mem_patch11 
-0x2978 006270 call lpm_cal_xtal_startup 
-0x2979 006271 call switchto_dpllclk 
-0x297a 006273 setarg param_dpll_start_delay 
-0x297b 006274 iadd clkn_bt ,pdata 
-0x297c 006275 store 4 ,mem_dpll_clkn 
-0x297d 006276 set1 reset ,radio_ctrl 
-0x297e 006277 force 0 ,radio_ctrl 
-0x297f 006278 ncall do_rccal ,wake 
-0x2980 006279 branch set_rccal 
-:      006282 rf_write_freq:
-0x2981 006283 bpatch patch11_3 ,mem_patch11 
-0x2982 006284 setarg 2400 
-0x2983 006285 iadd rega ,temp 
-0x2984 006286 fetch 1 ,mem_fcomp_mul 
-0x2985 006287 jam 0x04 ,rf_pll_rstn 
-0x2986 006288 imul32 temp ,pdata 
-0x2987 006289 fetcht 1 ,mem_fcomp_div 
-0x2988 006290 idiv temp 
-0x2989 006291 call wait_div_end 
-0x298a 006292 quotient rega 
-0x298b 006293 remainder pdata 
-0x298c 006294 lshift16 pdata ,pdata 
-0x298d 006295 lshift4 pdata ,pdata 
-0x298e 006296 idiv temp 
-0x298f 006297 call wait_div_end 
-0x2990 006298 quotient pdata 
-0x2991 006299 lshift8 pdata ,pdata 
-0x2992 006300 lshift pdata ,pdata 
-0x2993 006301 ior rega ,pdata 
-0x2994 006302 hstore 4 ,rf_pll_intg 
-0x2995 006303 jam 0x44 ,rf_pll_rstn 
-0x2996 006304 jam 0xc4 ,rf_pll_rstn 
-0x2997 006305 rtn 
-:      006308 do_rccal:
-0x2998 006309 bpatch patch11_4 ,mem_patch11 
-0x2999 006310 jam 0x02 ,rfen_adc 
-0x299a 006311 setarg 250000 
-0x299b 006312 call sleep 
-0x299c 006313 jam 0x7f ,rfen_rx 
-0x299d 006314 nop 130 
-0x299e 006315 jam 0x30 ,rf_rccal_ctrl 
-0x299f 006316 jam 0xd0 ,rfen_tx 
-0x29a0 006317 jam 0x70 ,rf_rccal_ctrl 
-0x29a1 006318 jam 0xf0 ,rf_rccal_ctrl 
-0x29a2 006319 force 50 ,loopcnt 
-:      006320 do_rccal_loop:
-0x29a3 006321 hfetch 1 ,rf_rccal_result 
-0x29a4 006322 bbit1 5 ,do_rccal_end 
-0x29a5 006323 loop do_rccal_loop 
-:      006324 do_rccal_end:
-0x29a6 006325 store 1 ,mem_rf_rccal 
-0x29a7 006326 jam 0 ,rfen_tx 
-0x29a8 006327 jam 0 ,rfen_rx 
-0x29a9 006328 jam 0x00 ,rfen_adc 
-0x29aa 006329 rtn 
-:      006331 set_rccal:
-0x29ab 006332 bpatch patch11_5 ,mem_patch11 
-0x29ac 006333 fetch 1 ,mem_rf_rccal 
-0x29ad 006334 set1 5 ,pdata 
-0x29ae 006335 hstore 1 ,rf_rccal_ctrl 
-0x29af 006336 hfetcht 1 ,rf_bpf_ctrim 
-0x29b0 006337 and_into 7 ,temp 
-0x29b1 006338 lshift3 pdata ,pdata 
-0x29b2 006339 ior temp ,pdata 
-0x29b3 006340 hstore 1 ,rf_bpf_ctrim 
-0x29b4 006341 hfetch 1 ,rf_bpf_ib 
-0x29b5 006342 set0 bpf_rccal ,pdata 
-0x29b6 006343 hstore 1 ,rf_bpf_ib 
-0x29b7 006344 hfetch 1 ,rf_adc_rccal 
-0x29b8 006345 set0 adc_rccal ,pdata 
-0x29b9 006346 hstore 1 ,rf_adc_rccal 
-0x29ba 006347 rtn 
-:      006349 save_rssi:
-0x29bb 006350 bpatch patch11_6 ,mem_patch11 
-0x29bc 006351 hfetch 2 ,rf_afc_d2a 
-0x29bd 006352 rshift4 pdata ,pdata 
-0x29be 006353 rshift3 pdata ,pdata 
-0x29bf 006354 sub pdata ,0 ,pdata 
-:      006355 bcd:
-0x29c0 006356 and_into 0xff ,pdata 
-0x29c1 006357 div pdata ,10 
-0x29c2 006358 call wait_div_end 
-0x29c3 006359 quotient pdata 
-0x29c4 006360 lshift4 pdata ,pdata 
-0x29c5 006361 remainder temp 
-0x29c6 006362 ior temp ,pdata 
-0x29c7 006363 store 1 ,mem_rssi 
-0x29c8 006364 rtn 
-:      006367 switchto_dpllclk:
-0x29c9 006368 jam clksel_rc ,core_clksel 
-0x29ca 006369 hfetch 1 ,rf_clkpll_frac + 2 
-0x29cb 006370 set0 4 ,pdata 
-0x29cc 006371 set0 5 ,pdata 
-0x29cd 006372 hstore 1 ,rf_clkpll_frac + 2 
-0x29ce 006373 jam 0x00 ,rfen_ck 
-0x29cf 006374 jam 0x00 ,rfen_msc 
-0x29d0 006375 jam 0x70 ,rfen_msc 
-0x29d1 006376 jam 0xff ,rfen_ck 
-0x29d2 006377 hfetch 1 ,rf_clkpll_frac + 2 
-0x29d3 006378 set1 4 ,pdata 
-0x29d4 006379 set1 5 ,pdata 
-0x29d5 006380 hstore 1 ,rf_clkpll_frac + 2 
-0x29d6 006381 call init_lpm_ctrl 
-0x29d7 006382 hfetch 1 ,rf_clkpll_int 
-0x29d8 006383 set1 7 ,pdata 
-0x29d9 006384 hstore 1 ,rf_clkpll_int 
-0x29da 006385 set0 7 ,pdata 
-0x29db 006386 hstore 1 ,rf_clkpll_int 
-0x29dc 006387 set1 7 ,pdata 
-0x29dd 006388 hstore 1 ,rf_clkpll_int 
-0x29de 006389 jam clksel_dpll ,core_clksel 
-0x29df 006390 nop 1 
-0x29e0 006391 jam clksel_xtal ,core_clksel 
-0x29e1 006392 hfetch 1 ,rf_clkpll_frac + 2 
-0x29e2 006393 and_into 0xcf ,pdata 
-0x29e3 006394 hstore 1 ,rf_clkpll_frac + 2 
-0x29e4 006395 or_into 0x30 ,pdata 
-0x29e5 006396 hstore 1 ,rf_clkpll_frac + 2 
-0x29e6 006397 rtn 
-:      006400 xtal_fast_wake:
-0x29e7 006401 setarg 0xf0f 
-0x29e8 006402 branch lpm_write_config 
-:      006404 init_lpm_ctrl:
-0x29e9 006405 setarg 0x80f 
-0x29ea 006406 branch lpm_write_config 
-:      006410 start_receiver:
-0x29eb 006411 bpatch patch11_7 ,mem_patch11 
-0x29ec 006412 call rf_rx_enable 
-0x29ed 006413 disable is_tx 
-0x29ee 006414 enable is_rx 
-0x29ef 006415 pulse init_encrypt 
-0x29f0 006416 rtn 
-:      006418 prep_crypt:
-0x29f1 006419 bpatch patch12_0 ,mem_patch12 
-0x29f2 006420 fetch 1 ,mem_state_map 
-0x29f3 006421 isolate1 smap_encryption ,pdata 
-0x29f4 006422 setflag true ,0 ,pdata 
-0x29f5 006423 hstore 1 ,core_encrypt 
-0x29f6 006424 arg mem_kc ,contr 
-0x29f7 006425 ifetch 9 ,contr 
-0x29f8 006426 iforce kc_ls 
-0x29f9 006427 ifetch 7 ,contr 
-0x29fa 006428 iforce kc_ms 
-0x29fb 006429 fetch 1 ,mem_key_size 
-0x29fc 006430 add pdata ,-1 ,g1l 
-0x29fd 006431 pulse kc_p_activate 
-0x29fe 006432 rtn 
-:      006434 wait_access_end:
-0x29ff 006435 deposit clke 
-0x2a00 006436 store 6 ,mem_sync_clke 
-0x2a01 006437 disable decode_fec0 
-0x2a02 006438 nbranch shutdown_radio ,sync 
-0x2a03 006439 arg param_clke_cal ,clke_rt 
-0x2a04 006440 increase 1 ,clke_bt 
-0x2a05 006441 and_into 0x1fc ,clke_bt 
-0x2a06 006442 rtn 
-:      006446 wait_access_mhalfbnd:
-0x2a07 006447 enable decode_fec0 
-:      006448 wait_access_mhalfbnd_correlate:
-0x2a08 006449 correlate null ,mhalfbnd 
-0x2a09 006450 branch wait_access_end ,sync 
-0x2a0a 006451 compare 0x02 ,clke_bt ,0x02 
-0x2a0b 006452 nbranch wait_access_mhalfbnd_correlate ,true 
-0x2a0c 006453 branch wait_access_end 
-:      006455 wait_access_clkn_rt:
-0x2a0d 006456 bpatch patch12_1 ,mem_patch12 
-0x2a0e 006457 arg param_conn_access ,timeup 
-0x2a0f 006458 enable decode_fec0 
-0x2a10 006459 correlate clkn_rt ,meet 
-0x2a11 006460 disable decode_fec0 
-0x2a12 006461 nbranch shutdown_radio ,sync 
-0x2a13 006462 rtn 
-:      006464 wait_access_forever:
-0x2a14 006465 bpatch patch12_2 ,mem_patch12 
-0x2a15 006466 enable decode_fec0 
-0x2a16 006467 correlate null ,timeout 
-0x2a17 006468 disable decode_fec0 
-0x2a18 006469 nbranch shutdown_radio ,sync 
-0x2a19 006470 arg param_clke_cal ,clke_rt 
-0x2a1a 006471 and_into 0x1fc ,clke_bt 
-0x2a1b 006472 rtn 
-:      006475 reserve_slot:
-0x2a1c 006476 bpatch patch12_3 ,mem_patch12 
-0x2a1d 006477 iforce rega 
-0x2a1e 006478 deposit bt_clk 
-0x2a1f 006479 iadd temp ,timeup 
-0x2a20 006480 copy timeup ,pdata 
-0x2a21 006481 store 4 ,mem_next_btclk 
-0x2a22 006482 deposit rega 
-0x2a23 006483 rtn 
-:      006486 ahead_window:
-0x2a24 006487 copy pdata ,temp 
-0x2a25 006488 bpatch patch12_4 ,mem_patch12 
-0x2a26 006489 copy temp ,pdata 
-0x2a27 006490 call clk2bt 
-0x2a28 006491 lshift16 bt_clk ,pdata 
-0x2a29 006492 set1 44 ,pdata 
-0x2a2a 006493 call clk_diff 
-0x2a2b 006494 set0 44 ,pdata 
-0x2a2c 006495 call get_clk 
-0x2a2d 006496 call clk_diff 
-0x2a2e 006497 rtn user 
-0x2a2f 006498 call clk2rt 
-0x2a30 006499 iforce stop_watch 
-0x2a31 006500 until null ,timeout 
-0x2a32 006501 rtn 
-:      006504 setup_clk:
-0x2a33 006505 bpatch patch12_5 ,mem_patch12 
-0x2a34 006506 branch setup_clkn ,clknt 
-0x2a35 006507 until clke_rt ,meet 
-:      006508 skip_setup_clke:
-0x2a36 006509 copy clke_bt ,temp 
-0x2a37 006510 branch setup_clknbt 
-:      006511 setup_clkn:
-0x2a38 006512 branch skip_setup_clkn ,attempt 
-0x2a39 006513 until clkn_rt ,meet 
-:      006514 skip_setup_clkn:
-0x2a3a 006515 copy clkn_bt ,temp 
-:      006516 setup_clknbt:
-0x2a3b 006517 branch setup_clk11 ,user 
-0x2a3c 006518 compare 1 ,temp ,3 
-0x2a3d 006519 nbranch setup_clk ,true 
-:      006520 setup_complete:
-0x2a3e 006521 bpatch patch12_6 ,mem_patch12 
-0x2a3f 006522 fetch 1 ,mem_state 
-0x2a40 006523 rtnbit0 state_inconn 
-0x2a41 006524 fetch 4 ,mem_next_btclk 
-0x2a42 006525 isub temp ,pdata 
-0x2a43 006526 nrtn positive 
-0x2a44 006527 sub pdata ,0xff ,null 
-0x2a45 006528 branch setup_clk ,positive 
-0x2a46 006529 rtn 
-:      006530 setup_clk11:
-0x2a47 006531 compare 3 ,temp ,3 
-0x2a48 006532 nbranch setup_clk ,true 
-0x2a49 006533 branch setup_complete 
-:      006535 rf_setup_time:
-0x2a4a 006536 bpatch patch12_7 ,mem_patch12 
-0x2a4b 006537 arg param_rf_setup ,timeup 
-0x2a4c 006538 branch setup_clk 
-:      006540 rf_setup_time_slave_slot:
-0x2a4d 006541 disable user 
-0x2a4e 006542 branch rf_setup_time 
-:      006544 rf_setup_time_master_slot:
-0x2a4f 006545 enable user 
-0x2a50 006546 branch rf_setup_time 
-:      006548 start_transmitter:
-0x2a51 006549 bpatch patch13_0 ,mem_patch13 
-0x2a52 006550 call prep_crypt 
-0x2a53 006551 disable is_rx 
-0x2a54 006552 enable is_tx 
-0x2a55 006553 rtn 
-:      006557 start_tx_native:
-0x2a56 006558 bpatch patch13_1 ,mem_patch13 
-0x2a57 006559 arg param_tx_setup ,timeup 
-0x2a58 006560 until clkn_rt ,meet 
-0x2a59 006561 pulse init_encrypt 
-0x2a5a 006562 rtn 
-:      006564 start_rx_native:
-0x2a5b 006565 bpatch patch13_2 ,mem_patch13 
-0x2a5c 006566 arg param_rx_setup ,timeup 
-0x2a5d 006567 until clkn_rt ,meet 
-0x2a5e 006568 rtn 
-:      006571 start_tx_external:
-0x2a5f 006572 bpatch patch13_3 ,mem_patch13 
-0x2a60 006573 arg param_tx_setup ,timeup 
-0x2a61 006574 until clke_rt ,meet 
-0x2a62 006575 pulse init_encrypt 
-0x2a63 006576 rtn 
-:      006578 send_access_word:
-0x2a64 006579 bpatch patch13_4 ,mem_patch13 
-0x2a65 006580 preload access 
-0x2a66 006581 enable encode_fec0 
-0x2a67 006582 set1 txgfsk ,radio_ctrl 
-0x2a68 006583 inject mod ,72 
-0x2a69 006584 disable encode_fec0 
-0x2a6a 006585 rtn 
-:      006588 scan_mode_whiten:
-0x2a6b 006589 copy xin ,temp 
-0x2a6c 006590 or_into 0x60 ,temp 
-0x2a6d 006591 copy temp ,white_init 
-0x2a6e 006592 rtn 
-:      006597 get_free_amaddr:
-0x2a6f 006598 bpatch patch13_5 ,mem_patch13 
-0x2a70 006599 fetch 1 ,mem_current_amaddr 
-0x2a71 006600 increase 1 ,pdata 
-0x2a72 006601 bne param_esco_addr ,get_free_amaddr_cont 
-0x2a73 006602 force 1 ,pdata 
-:      006603 get_free_amaddr_cont:
-0x2a74 006604 store 1 ,mem_current_amaddr 
-0x2a75 006605 iforce am_addr 
-0x2a76 006606 rtn 
-:      006608 get_clk:
-0x2a77 006609 copy clkn ,temp 
-0x2a78 006610 rtn master 
-0x2a79 006611 copy clke ,temp 
-0x2a7a 006612 rtn 
-:      006614 get_clkbt:
-0x2a7b 006615 deposit clkn_bt 
-0x2a7c 006616 rtn master 
-0x2a7d 006617 deposit clke_bt 
-0x2a7e 006618 rtn 
-:      006621 supervision_update:
-0x2a7f 006622 bpatch patch13_6 ,mem_patch13 
-0x2a80 006623 fetcht 4 ,mem_supervision_timer 
-0x2a81 006624 call get_clkbt 
-0x2a82 006625 isub temp ,timeup 
-0x2a83 006626 deposit timeup 
-0x2a84 006627 fetcht 2 ,mem_supervision_to 
-0x2a85 006628 lshift temp ,temp 
-0x2a86 006629 isub temp ,pdata 
-0x2a87 006630 rtn 
-:      006632 supervision_flush:
-0x2a88 006633 bpatch patch13_7 ,mem_patch13 
-0x2a89 006634 call get_clkbt 
-0x2a8a 006635 store 4 ,mem_supervision_timer 
-0x2a8b 006636 rtn 
-:      006638 assert:
-0x2a8c 006639 bpatch patch14_0 ,mem_patch14 
-0x2a8d 006640 branch assert 
-:      006642 loop:
-0x2a8e 006643 branch loop 
-:      006645 sleep:
-0x2a8f 006646 rtn blank 
-0x2a90 006648 rshift pdata ,pdata 
-0x2a91 006649 increase -3 ,pdata 
-:      006650 sleep_loop:
-0x2a92 006651 increase -1 ,pdata 
-0x2a93 006652 nbranch sleep_loop ,zero 
-0x2a94 006653 force 0 ,pdata 
-0x2a95 006654 rtn 
-:      006658 init_param:
-0x2a96 006660 arg 0x10 ,loopcnt 
-0x2a97 006661 arg 0 ,contw 
-0x2a98 006662 call memset0 
-0x2a99 006663 arg mem_le_state ,contw 
-0x2a9a 006664 arg 10 ,loopcnt 
-0x2a9b 006665 call memset0 
-0x2a9c 006666 jam 0 ,mem_sp_calc 
-0x2a9d 006667 jam 0 ,mem_fifo_temp 
-0x2a9e 006668 jam 0 ,mem_le_testtype 
-0x2a9f 006669 jam 0 ,mem_debug_config 
-0x2aa0 006670 jam 0 ,mem_lmp_conn_state 
-0x2aa1 006671 bpatch patch14_1 ,mem_patch14 
-0x2aa2 006672 jam 0 ,mem_connection_options 
-0x2aa3 006673 jam 0 ,mem_tester_emulate 
-0x2aa4 006674 jam 0 ,mem_tester_cnt 
-0x2aa5 006675 setarg param_glap 
-0x2aa6 006676 store 3 ,mem_glap 
-0x2aa7 006677 setarg param_acl_pktlen 
-0x2aa8 006678 store 2 ,mem_acl_pktlen 
-0x2aa9 006679 jam param_sco_pktlen ,mem_sco_pktlen 
-0x2aaa 006680 jam param_acl_pktcnt ,mem_acl_pktcnt 
-0x2aab 006681 jam param_sco_pktcnt ,mem_sco_pktcnt 
-0x2aac 006682 setarg param_hci_version 
-0x2aad 006683 store 3 ,mem_hci_version 
-0x2aae 006688 jam 0x60 ,mem_fhs_misc 
-0x2aaf 006689 jam param_max_slot ,mem_max_slot 
-0x2ab0 006690 jam 0x02 ,mem_fw_ver 
-0x2ab1 006691 fetch 1 ,mem_ssp_enable 
-0x2ab2 006692 ncall init_memp ,blank 
-0x2ab3 006693 fetch 1 ,mem_le_secure_connect_enable 
-0x2ab4 006694 ncall init_memp_256 ,blank 
-0x2ab5 006695 bpatch patch14_2 ,mem_patch14 
-0x2ab6 006696 rtn wake 
-0x2ab7 006697 setarg 0 
-0x2ab8 006698 store 2 ,mem_tx_len 
-0x2ab9 006699 rshift clkn_bt ,pdata 
-0x2aba 006700 store 4 ,mem_last_clkn 
-0x2abb 006701 rtn 
-:      006708 lpmstate:
-0x2abc 006709 setarg 0xee21 
-0x2abd 006710 hstore 2 ,core_clkoff 
-0x2abe 006711 hfetch 4 ,core_gpio_in 
-0x2abf 006712 store 4 ,mem_saved_gpio_in 
-0x2ac0 006713 hfetch 1 ,core_lpm_ldocnt 
-0x2ac1 006714 store 1 ,mem_wakup_from_power_flag 
-0x2ac2 006715 bbit0 gpio_latch ,loadcode 
-0x2ac3 006716 enable wake 
-0x2ac4 006717 bbit0 cold_wake ,lpmwake 
-0x2ac5 006718 disable wake 
-0x2ac6 006719 deposit auxcnt 
-0x2ac7 006720 nbranch lpmwake ,blank 
-0x2ac8 006721 hfetch 1 ,core_lpm_ctrl + 3 
-0x2ac9 006722 bbit1 reload_code ,lpmwake 
-0x2aca 006723 arg param_hibernate_clks ,temp 
-0x2acb 006724 branch lpm_enter_sleep 
-:      006725 lpmwake:
-0x2acc 006726 hfetch 3 ,core_lpm_xtalcnt 
-0x2acd 006727 hstore 3 ,core_lpm_reg 
-0x2ace 006728 ifetch 1 ,contr 
-0x2acf 006729 or_into isogate_mask ,pdata 
-0x2ad0 006730 istore 1 ,contw 
-0x2ad1 006731 call lpm_write_ctrl2 
-0x2ad2 006732 hfetch 1 ,core_lpm_isogate 
-0x2ad3 006733 set1 enable_retmem ,pdata 
-0x2ad4 006734 hstore 1 ,core_lpm_isogate 
-0x2ad5 006735 call lpm_write_ctrl2 
-0x2ad6 006736 call lpm_load_context ,wake 
-0x2ad7 006737 hfetch 1 ,core_lpm_reg + 2 
-0x2ad8 006738 set0 gpio_latch ,pdata 
-0x2ad9 006739 hstore 1 ,core_lpm_reg + 2 
-0x2ada 006740 call lpm_write_ctrl2 
-0x2adb 006741 nbranch loadcode ,wake 
-0x2adc 006742 rtnmark0 mark_otp_encrypt 
-0x2add 006743 jam lock_otp ,core_misc_ctrl 
-0x2ade 006744 rtn 
-:      006746 lpm_load_context:
-0x2adf 006747 fetch 1 ,mem_saved_spidctrl 
-0x2ae0 006748 hstore 1 ,core_spid_ctrl 
-0x2ae1 006749 fetch 3 ,mem_saved_gsel 
-0x2ae2 006750 hstore 3 ,core_gpio_sel 
-0x2ae3 006751 fetch 4 ,mem_saved_gpio + 4 
-0x2ae4 006752 hstore 4 ,core_gpio_out0 
-0x2ae5 006753 fetch 4 ,mem_saved_gpio 
-0x2ae6 006754 hstore 4 ,core_gpio_oe0 
-0x2ae7 006755 fetch 8 ,mem_saved_gpio + 8 
-0x2ae8 006756 hstore 8 ,core_gpio_pu0 
-0x2ae9 006757 fetch 8 ,mem_saved_mark 
-0x2aea 006758 iforce mark 
-0x2aeb 006759 hfetch 8 ,core_gpio_wakeup_low 
-0x2aec 006760 store 8 ,mem_gpio_wakeup_low 
-0x2aed 006761 call load_ucode 
-0x2aee 006762 rtn 
-:      006764 lpm_save_context:
-0x2aef 006765 deposit mark 
-0x2af0 006766 store 8 ,mem_saved_mark 
-0x2af1 006767 hfetch 8 ,core_gpio_oe0 
-0x2af2 006768 store 8 ,mem_saved_gpio 
-0x2af3 006769 ifetch 8 ,contr 
-0x2af4 006770 istore 8 ,contw 
-0x2af5 006771 hfetch 3 ,core_gpio_sel 
-0x2af6 006772 store 3 ,mem_saved_gsel 
-0x2af7 006773 hfetch 1 ,core_spid_ctrl 
-0x2af8 006774 store 1 ,mem_saved_spidctrl 
-0x2af9 006775 branch lpm_write_gpio_wakeup 
-:      006777 lpo_calibration:
-0x2afa 006778 hfetch 1 ,core_bist_ctrl 
-0x2afb 006779 nbranch lpo_cal_inited ,blank 
-0x2afc 006780 fetch 3 ,mem_clks_per_lpo 
-0x2afd 006781 nrtn blank 
-0x2afe 006782 jam 0xc0 ,core_bist_ctrl 
-0x2aff 006783 jam ccnt_start ,core_misc_ctrl 
-:      006784 lpo_cal_inited:
-0x2b00 006785 hfetch 1 ,core_perf_status 
-0x2b01 006786 rtnbit0 1 
-0x2b02 006787 hfetch 3 ,core_clk_counter 
-0x2b03 006788 store 3 ,mem_clks_per_lpo 
-0x2b04 006789 rtn 
-:      006793 lpm_adjust_clk:
-0x2b05 006794 bpatch patch14_3 ,mem_patch14 
-0x2b06 006795 deposit clke 
-0x2b07 006796 call clk_diff_rt 
-0x2b08 006797 fetcht 4 ,mem_sleep_counter_all 
-0x2b09 006798 sub temp ,0xff ,null 
-0x2b0a 006799 rtn positive 
-0x2b0b 006800 lshift8 pdata ,pdata 
-0x2b0c 006801 lshift4 pdata ,pdata 
-0x2b0d 006802 idiv temp 
-0x2b0e 006803 call wait_div_end 
-0x2b0f 006804 quotient pdata 
-0x2b10 006805 arg param_lpm_adjmax ,temp 
-0x2b11 006806 call ceiling 
-0x2b12 006807 store 1 ,mem_lpm_adjust 
-0x2b13 006808 nbranch lpm_adjust_positive ,user 
-0x2b14 006809 sub pdata ,0 ,pdata 
-:      006810 lpm_adjust_positive:
-0x2b15 006811 fetcht 3 ,mem_clks_per_lpo 
-0x2b16 006812 iadd temp ,pdata 
-0x2b17 006813 store 3 ,mem_clks_per_lpo 
-:      006814 lpm_clear_counter:
-0x2b18 006815 setarg 0 
-0x2b19 006816 store 4 ,mem_sleep_counter_all 
-0x2b1a 006817 rtn 
-:      006821 lpm_doze:
-0x2b1b 006822 fetch 1 ,mem_lpm_config + 2 
-0x2b1c 006823 set1 reload_code ,pdata 
-0x2b1d 006824 store 1 ,mem_lpm_config + 2 
-0x2b1e 006825 branch lpm_hibernate_normal 
-:      006829 lpm_hibernate:
-0x2b1f 006830 arg param_hibernate_clks ,temp 
-0x2b20 006831 fetch 1 ,mem_lpm_config + 1 
-0x2b21 006832 set0 7 ,pdata 
-0x2b22 006833 store 1 ,mem_lpm_config + 1 
-:      006834 lpm_hibernate_normal:
-0x2b23 006835 bpatch patch14_4 ,mem_patch14 
-0x2b24 006836 call lpm_write_gpio_wakeup 
-0x2b25 006837 fetch 1 ,mem_lpm_hibernate_switch 
-0x2b26 006838 store 1 ,mem_lpm_xtalcnt + 4 
-0x2b27 006839 fetch 1 ,mem_lpm_xtalcnt + 2 
-0x2b28 006840 set1 cold_wake ,pdata 
-0x2b29 006841 store 1 ,mem_lpm_xtalcnt + 2 
-:      006844 lpm_sleep:
-0x2b2a 006845 bpatch patch14_5 ,mem_patch14 
-0x2b2b 006846 call xtal_fast_wake 
-0x2b2c 006847 fetch 4 ,mem_sleep_counter_all 
-0x2b2d 006848 iadd temp ,pdata 
-0x2b2e 006849 store 4 ,mem_sleep_counter_all 
-0x2b2f 006850 call lpm_save_context 
-0x2b30 006851 fetch 5 ,mem_lpm_xtalcnt 
-0x2b31 006852 hstore 4 ,core_lpm_reg 
-0x2b32 006853 rshift32 pdata ,rega 
-0x2b33 006854 until null ,lpo_edge 
-0x2b34 006855 deposit clkn 
-0x2b35 006856 store 6 ,mem_sleep_clkn 
-0x2b36 006857 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
-0x2b37 006858 until null ,lpo_edge 
-0x2b38 006859 until null ,lpo_edge 
-0x2b39 006860 deposit rega 
-0x2b3a 006861 hstore 1 ,core_lpm_isogate 
-0x2b3b 006862 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
-:      006863 lpm_enter_sleep:
-0x2b3c 006864 until null ,lpo_edge 
-0x2b3d 006865 until null ,lpo_edge 
-0x2b3e 006866 hstoret 4 ,core_lpm_reg 
-0x2b3f 006867 jam lpmreg_sel_counter ,core_lpm_wr 
-0x2b40 006868 until null ,never 
-:      006873 lpm_recover_clk:
-0x2b41 006874 bpatch patch14_6 ,mem_patch14 
-0x2b42 006875 setarg 0 
-0x2b43 006876 copy auxcnt ,null 
-0x2b44 006877 branch lpm_recover_timeout ,zero 
-0x2b45 006878 hfetch 1 ,core_lpm_xtalcnt 
-0x2b46 006879 hfetcht 1 ,core_lpm_buckcnt 
-0x2b47 006880 isub temp ,null 
-0x2b48 006881 branch lpm_recover_xtal ,positive 
-0x2b49 006882 deposit temp 
-:      006883 lpm_recover_xtal:
-0x2b4a 006884 isub auxcnt ,pdata 
-0x2b4b 006885 increase 1 ,pdata 
-:      006886 lpm_recover_timeout:
-0x2b4c 006887 increase 8 ,pdata 
-0x2b4d 006888 until null ,lpo_edge 
-0x2b4e 006889 iadd lpo_time ,pdata 
-0x2b4f 006890 fetcht 4 ,mem_sleep_counter 
-0x2b50 006891 iadd temp ,pdata 
-0x2b51 006892 fetcht 3 ,mem_clks_per_lpo 
-0x2b52 006893 imul32 temp ,pdata 
-0x2b53 006894 rshift8 pdata ,pdata 
-0x2b54 006895 rshift4 pdata ,pdata 
-0x2b55 006896 increase param_lpm_fix ,pdata 
-0x2b56 006897 arg 3750 ,temp 
-0x2b57 006898 idiv temp 
-0x2b58 006899 call wait_div_end 
-0x2b59 006900 quotient pdata 
-0x2b5a 006901 lshift16 pdata ,pdata 
-0x2b5b 006902 remainder temp 
-0x2b5c 006903 ior temp ,pdata 
-0x2b5d 006904 fetcht 6 ,mem_sleep_clkn 
-0x2b5e 006905 call clk_add 
-0x2b5f 006906 copy temp ,clkn 
-0x2b60 006907 fetch 6 ,mem_context + coffset_clk_offset 
-0x2b61 006908 call calc_clke2 
-0x2b62 006909 deposit clke 
-0x2b63 006910 store 6 ,mem_pdatatemp 
-0x2b64 006911 deposit auxcnt 
-0x2b65 006912 istore 1 ,contw 
-0x2b66 006913 hfetch 1 ,core_gpio_in1 
-0x2b67 006914 or_into 0xf0 ,pdata 
-0x2b68 006915 istore 1 ,contw 
-0x2b69 006916 rtn 
-:      006918 lpm_dispatch:
-0x2b6a 006919 bpatch patch14_7 ,mem_patch14 
-0x2b6b 006920 call lpo_calibration 
-0x2b6c 006921 fetch 3 ,mem_clks_per_lpo 
-0x2b6d 006922 rtn blank 
-0x2b6e 006923 fetch 1 ,mem_lpm_mode 
-0x2b6f 006924 rtn blank 
-0x2b70 006925 fetch 1 ,mem_ssp_enable 
-0x2b71 006926 branch lpm_dispatch_next ,blank 
-0x2b72 006927 fetch 1 ,mem_sp_local_key_invalid 
-0x2b73 006928 rtn blank 
-:      006929 lpm_dispatch_next:
-0x2b74 006930 fetch 1 ,mem_le_sc_calc 
-0x2b75 006931 nrtn blank 
-0x2b76 006932 call lpm_check_wake_lock 
-0x2b77 006933 nrtn blank 
-0x2b78 006934 fetch 1 ,mem_context 
-0x2b79 006935 compare 3 ,pdata ,0x7 
-0x2b7a 006936 nbranch lpm_dispatch_unconn ,true 
-0x2b7b 006937 fetch 2 ,mem_context + coffset_tsniff 
-0x2b7c 006938 rtn blank 
-0x2b7d 006939 rtn wake 
-0x2b7e 006940 bpatch patch15_0 ,mem_patch15 
-:      006941 lpm_dispatch_next2:
-0x2b7f 006942 fetcht 1 ,mem_lpm_current_mult 
-0x2b80 006943 fetch 2 ,mem_context + coffset_tsniff 
-0x2b81 006944 imul32 temp ,pdata 
-0x2b82 006945 rshift4 temp ,temp 
-0x2b83 006946 rshift2 temp ,temp 
-0x2b84 006947 isub temp ,pdata 
-0x2b85 006948 fetcht 4 ,mem_context + coffset_sniff_anchor 
-0x2b86 006949 iadd temp ,pdata 
-0x2b87 006950 fetcht 1 ,mem_lpm_overhead 
-0x2b88 006951 isub temp ,pdata 
-0x2b89 006952 lshift16 pdata ,alarm 
-0x2b8a 006953 bpatch patch15_1 ,mem_patch15 
-0x2b8b 006954 fetch 2 ,mem_context + coffset_rx_window 
-0x2b8c 006955 rshift pdata ,pdata 
-0x2b8d 006956 call clk2bt 
-0x2b8e 006957 deposit alarm 
-0x2b8f 006958 call clk_diff 
-0x2b90 006959 copy clke ,temp 
-0x2b91 006960 call clk_diff_rt 
-0x2b92 006961 rtn user 
-:      006962 lpm_dispatch_sleep:
-0x2b93 006963 call clk2lpo 
-:      006964 lpm_dispatch_lpo:
-0x2b94 006965 bpatch patch15_2 ,mem_patch15 
-0x2b95 006966 fetch 1 ,mem_lpm_xtalcnt 
-0x2b96 006967 isub temp ,null 
-0x2b97 006968 branch lpm_clear_counter ,positive 
-0x2b98 006969 storet 4 ,mem_sleep_counter 
-0x2b99 006970 call app_will_enter_lpm 
-0x2b9a 006971 call l2cap_lpm_save_txbuf 
-0x2b9b 006972 fetcht 4 ,mem_sleep_counter 
-0x2b9c 006973 branch lpm_sleep 
-:      006975 lpm_dispatch_unconn:
-0x2b9d 006976 bpatch patch15_3 ,mem_patch15 
-0x2b9e 006977 fetch 1 ,mem_context 
-0x2b9f 006978 rtnbit1 state_inconn 
-0x2ba0 006979 rtnbit1 state_inpage 
-0x2ba1 006980 fetch 1 ,mem_ssp_enable 
-0x2ba2 006981 branch lpm_unconn_nossp ,blank 
-0x2ba3 006982 fetch 1 ,mem_sp_local_key_invalid 
-0x2ba4 006983 rtn blank 
-:      006984 lpm_unconn_nossp:
-0x2ba5 006985 bpatch patch15_4 ,mem_patch15 
-0x2ba6 006986 fetch 1 ,mem_le_adv_enable 
-0x2ba7 006987 nbranch lpm_unconn_cont ,blank 
-0x2ba8 006988 fetch 1 ,mem_scan_mode 
-0x2ba9 006989 rtn blank 
-:      006990 lpm_unconn_cont:
-0x2baa 006991 fetch 2 ,mem_lpm_interval 
-0x2bab 006992 rtn blank 
-:      006993 lpm_sleep_btclk:
-0x2bac 006994 fetcht 1 ,mem_lpm_overhead 
-0x2bad 006995 isub temp ,pdata 
-0x2bae 006996 arg 7500 ,temp 
-0x2baf 006997 imul32 temp ,pdata 
-0x2bb0 006998 branch lpm_dispatch_sleep 
-:      007000 lpm_set_mult:
-0x2bb1 007001 bpatch patch15_5 ,mem_patch15 
-0x2bb2 007002 disable wake 
-0x2bb3 007003 fetch 1 ,mem_state 
-0x2bb4 007004 rtnbit0 state_insniff 
-0x2bb5 007005 nbranch lpm_not_match ,match 
-0x2bb6 007006 call lpm_match 
-0x2bb7 007007 fetch 2 ,mem_rx_window_sniff 
-0x2bb8 007008 store 2 ,mem_rx_window 
-0x2bb9 007009 fetch 1 ,mem_arq 
-0x2bba 007010 bbit1 wack ,lpm_mult_short 
-0x2bbb 007011 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-0x2bbc 007012 call l2cap_malloc_is_fifo_empty 
-0x2bbd 007013 nbranch lpm_mult_short ,blank 
-0x2bbe 007014 fetch 1 ,mem_classic_bt_flag 
-0x2bbf 007015 bbit1 short_mult_flag ,lpm_mult_short 
-:      007016 lpm_mult_wait_timeout:
-0x2bc0 007017 jam 0 ,mem_lpm_current_mult 
-0x2bc1 007018 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-0x2bc2 007019 fetch 1 ,mem_lpm_mult_cnt 
-0x2bc3 007020 branch lpm_mult_long ,blank 
-0x2bc4 007021 increase -1 ,pdata 
-0x2bc5 007022 store 1 ,mem_lpm_mult_cnt 
-0x2bc6 007023 rtn 
-:      007026 classic_bt_set_mult_short_flag:
-0x2bc7 007027 arg short_mult_flag ,queue 
-0x2bc8 007028 branch classic_bluetooth_set_flag 
-:      007030 classic_bt_clr_mult_short_flag:
-0x2bc9 007031 arg short_mult_flag ,queue 
-0x2bca 007032 branch classic_bluetooth_clr_flag 
-:      007036 lpm_match:
-0x2bcb 007037 jam 0 ,mem_sniff_unint_lost 
-0x2bcc 007038 fetch 3 ,mem_sniff_rcv 
-0x2bcd 007039 increase 1 ,pdata 
-0x2bce 007040 store 3 ,mem_sniff_rcv 
-0x2bcf 007041 rtn 
-:      007043 lpm_not_match:
-0x2bd0 007044 bpatch patch15_6 ,mem_patch15 
-0x2bd1 007045 fetcht 2 ,mem_rx_window_sniff 
-0x2bd2 007046 rshift temp ,temp 
-0x2bd3 007047 fetch 2 ,mem_rx_window 
-0x2bd4 007048 iadd temp ,pdata 
-0x2bd5 007049 store 2 ,mem_rx_window 
-:      007050 lpm_lost:
-0x2bd6 007051 jam 0 ,mem_lpm_current_mult 
-0x2bd7 007052 fetch 3 ,mem_sniff_lost 
-0x2bd8 007053 increase 1 ,pdata 
-0x2bd9 007054 store 3 ,mem_sniff_lost 
-0x2bda 007055 fetch 1 ,mem_sniff_unint_lost 
-0x2bdb 007056 increase 1 ,pdata 
-0x2bdc 007057 store 1 ,mem_sniff_unint_lost 
-0x2bdd 007058 rtn 
-:      007060 lpm_mult_short:
-0x2bde 007061 jam 0 ,mem_lpm_current_mult 
-0x2bdf 007062 fetch 1 ,mem_lpm_mult_timeout 
-0x2be0 007063 store 1 ,mem_lpm_mult_cnt 
-0x2be1 007064 rtn 
-:      007066 lpm_mult_long:
-0x2be2 007067 fetcht 1 ,mem_lpm_mult 
-0x2be3 007068 storet 1 ,mem_lpm_current_mult 
-0x2be4 007069 rtn 
-:      007071 lpm_cal_xtal_startup:
-0x2be5 007072 bpatch patch15_7 ,mem_patch15 
-0x2be6 007073 fetch 1 ,mem_lpm_xtalcnt 
-0x2be7 007074 nrtn blank 
-0x2be8 007075 jam clksel_rc ,core_clksel 
-0x2be9 007076 setarg 0xf0c 
-0x2bea 007077 call lpm_write_config 
-0x2beb 007078 setarg 200000 
-0x2bec 007079 call sleep 
-0x2bed 007080 until null ,lpo_edge 
-0x2bee 007081 copy lpo_time ,alarm 
-0x2bef 007082 call xtal_fast_wake 
-0x2bf0 007083 jam clksel_xtal ,core_clksel 
-0x2bf1 007084 nop 10 
-0x2bf2 007085 until null ,lpo_edge 
-0x2bf3 007086 deposit lpo_time 
-0x2bf4 007087 isub alarm ,pdata 
-0x2bf5 007088 increase 0x30 ,pdata 
-0x2bf6 007089 arg 0xff ,temp 
-0x2bf7 007090 call ceiling 
-0x2bf8 007091 store 1 ,mem_lpm_xtalcnt 
-0x2bf9 007092 nop 30000 
-0x2bfa 007093 nop 30000 
-0x2bfb 007094 nop 30000 
-0x2bfc 007095 rtn 
-:      007097 lpm_cal_xtal_startup_by_snooze:
-0x2bfd 007098 fetch 1 ,mem_lpm_xtalcnt 
-0x2bfe 007099 nrtn blank 
-0x2bff 007100 jam 0xff ,core_xtal_stable_time 
-0x2c00 007101 jam clksel_rc ,core_clksel 
-0x2c01 007102 call xtal_fast_wake 
-0x2c02 007103 setarg 1000 
-0x2c03 007104 iadd lpo_time ,alarm 
-0x2c04 007105 snooze 
-0x2c05 007106 deposit lpo_time 
-0x2c06 007107 nop 12000 
-0x2c07 007108 nop 12000 
-0x2c08 007109 nop 12000 
-0x2c09 007110 nop 12000 
-0x2c0a 007111 nop 12000 
-0x2c0b 007112 nop 12000 
-0x2c0c 007113 nop 12000 
-0x2c0d 007114 nop 12000 
-0x2c0e 007115 nop 12000 
-0x2c0f 007116 isub alarm ,pdata 
-0x2c10 007117 add pdata ,0x30 ,pdata 
-0x2c11 007118 arg 0xff ,temp 
-0x2c12 007119 call ceiling 
-0x2c13 007120 store 1 ,mem_lpm_xtalcnt 
-0x2c14 007121 nop 30000 
-0x2c15 007122 nop 30000 
-0x2c16 007123 nop 30000 
-0x2c17 007124 rtn 
-:      007129 lpm_write_config:
-0x2c18 007130 arg 0xfff ,contw 
-0x2c19 007131 iand contw ,contw 
-0x2c1a 007132 fetch 1 ,mem_lpm_config 
-0x2c1b 007133 and_into 0xf0 ,pdata 
-0x2c1c 007134 lshift8 pdata ,pdata 
-0x2c1d 007135 ior contw ,pdata 
-0x2c1e 007136 hstore 2 ,core_lpm_reg 
-0x2c1f 007137 ifetch 2 ,contr 
-0x2c20 007138 istore 2 ,contw 
-:      007140 lpm_write_ctrl:
-0x2c21 007141 setarg lpmreg_sel_ctrl 
-0x2c22 007142 branch lpm_write 
-:      007144 lpm_write_ctrl2:
-0x2c23 007145 setarg lpmreg_sel_ctrl2 
-:      007146 lpm_write:
-0x2c24 007147 until null ,lpo_edge 
-0x2c25 007148 hstore 1 ,core_lpm_wr 
-0x2c26 007149 until null ,lpo_edge 
-0x2c27 007150 until null ,lpo_edge 
-0x2c28 007151 rtn 
-:      007154 lpm_write_gpio_wakeup:
-0x2c29 007155 bpatch patch16_0 ,mem_patch16 
-0x2c2a 007156 fetch 4 ,mem_gpio_wakeup_low 
-0x2c2b 007157 hstore 4 ,core_lpm_reg 
-0x2c2c 007158 setarg lpmreg_sel_gpiolow 
-0x2c2d 007159 call lpm_write 
-0x2c2e 007160 fetch 4 ,mem_gpio_wakeup_high 
-0x2c2f 007161 hstore 4 ,core_lpm_reg 
-0x2c30 007162 setarg lpmreg_sel_gpiohigh 
-0x2c31 007163 branch lpm_write 
-:      007165 lpm_get_wake_lock:
-0x2c32 007166 fetch 2 ,mem_lpm_wake_lock 
-0x2c33 007167 qset1 pdata 
-0x2c34 007168 store 2 ,mem_lpm_wake_lock 
-0x2c35 007169 rtn 
-:      007171 lpm_put_wake_lock:
-0x2c36 007172 fetch 2 ,mem_lpm_wake_lock 
-0x2c37 007173 qset0 pdata 
-0x2c38 007174 store 2 ,mem_lpm_wake_lock 
-0x2c39 007175 rtn 
-:      007179 lpm_check_wake_lock:
-0x2c3a 007180 bpatch patch16_1 ,mem_patch16 
-0x2c3b 007181 call app_check_wake_lock 
-0x2c3c 007182 fetch 2 ,mem_lpm_wake_lock 
-0x2c3d 007183 copy pdata ,rega 
-0x2c3e 007184 fetch 1 ,mem_state_map 
-0x2c3f 007185 isolate1 smap_rxlmp ,pdata 
-0x2c40 007186 setflag true ,wake_lock_lmp_rx ,rega 
-0x2c41 007187 fetch 1 ,mem_lmo_opcode1 
-0x2c42 007188 fetcht 1 ,mem_lmo_opcode2 
-0x2c43 007189 iadd temp ,pdata 
-0x2c44 007190 fetcht 1 ,mem_lmp_to_send 
-0x2c45 007191 iadd temp ,pdata 
-0x2c46 007192 nsetflag blank ,wake_lock_lmp_tx ,rega 
-0x2c47 007193 fetch 1 ,mem_le_tx_buff_used 
-0x2c48 007194 nsetflag blank ,wake_lock_ble_tx ,rega 
-0x2c49 007195 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x2c4a 007196 fetcht 2 ,mem_l2cap_rxbuff2_len 
-0x2c4b 007197 iadd temp ,pdata 
-0x2c4c 007198 nsetflag blank ,wake_lock_l2cap_rx ,rega 
-0x2c4d 007199 fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
-0x2c4e 007200 nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
-0x2c4f 007201 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
-0x2c50 007202 nsetflag blank ,wake_lock_ipc_c512bt ,rega 
-0x2c51 007203 fetch 1 ,mem_hci_cmd 
-0x2c52 007204 nsetflag blank ,wake_lock_cmd ,rega 
-0x2c53 007205 fetch 1 ,mem_device_option 
-0x2c54 007206 compare dvc_op_module ,pdata ,0xff 
-0x2c55 007207 call lpm_uart_wake_lock ,true 
-0x2c56 007208 setarg -8 
-0x2c57 007209 iand rega ,rega 
-0x2c58 007210 copy rega ,pdata 
-0x2c59 007211 store 2 ,mem_lpm_wake_lock 
-0x2c5a 007212 rtn 
-:      007214 lpm_uart_wake_lock:
-0x2c5b 007215 hfetch 2 ,core_uart_rxitems 
-0x2c5c 007216 nsetflag blank ,wake_lock_uart_rx ,rega 
-0x2c5d 007217 hfetch 2 ,core_uart_txitems 
-0x2c5e 007218 nsetflag blank ,wake_lock_uart_tx ,rega 
-0x2c5f 007219 rtn 
-:      007221 lpm_shut_down:
-0x2c60 007222 hfetch 4 ,core_lpm_ctrl 
-0x2c61 007223 set0 27 ,pdata 
-0x2c62 007224 hstore 4 ,core_lpm_reg 
-0x2c63 007225 call lpm_write_ctrl 
-0x2c64 007226 branch assert 
-:      007228 lpm_disable_exen_output:
-0x2c65 007229 hfetch 4 ,core_lpm_xtalcnt 
-0x2c66 007230 set0 20 ,pdata 
-0x2c67 007231 hstore 4 ,core_lpm_reg 
-0x2c68 007232 branch lpm_write_ctrl2 
-:      007234 check_bt_disabled:
-0x2c69 007235 fetch 2 ,mem_chip_functions 
-0x2c6a 007236 bbit1 bt_disabled ,assert 
-0x2c6b 007237 rtn 
-:      007238 check_ble_disabled:
-0x2c6c 007239 fetch 2 ,mem_chip_functions 
-0x2c6d 007240 bbit1 ble_disabled ,assert 
-0x2c6e 007241 rtn 
-:      007242 check_module_disabled:
-0x2c6f 007243 fetch 2 ,mem_chip_functions 
-0x2c70 007244 bbit1 module_disable ,assert 
-0x2c71 007245 rtn 
-:      007306 g24_dispatch:
-0x2c72 007307 bpatch patch16_2 ,mem_patch16 
-0x2c73 007308 call g24_head_ptr2regc 
-0x2c74 007309 add regc ,offset_24g_mode ,regb 
-0x2c75 007310 ifetch 1 ,regb 
-0x2c76 007312 rtneq disable_24g 
-0x2c77 007313 beq tx_24g ,g24_transmit_process 
-0x2c78 007314 beq rx_24g ,g24_receive_process 
-0x2c79 007315 rtn 
-:      007317 g24_head_ptr2regc:
-0x2c7a 007318 fetcht 2 ,mem_24g_head_ptr 
-0x2c7b 007319 copy temp ,regc 
-0x2c7c 007320 rtn 
-:      007322 g24_receive_process_init:
-0x2c7d 007323 call g24_receive_init 
-0x2c7e 007324 branch g24_mode_switch_init 
-:      007326 g24_receive_process:
-0x2c7f 007327 call g24_mode_switch 
-0x2c80 007328 call g24_dongle_work_mode_auto 
-0x2c81 007329 call g24_dongle_bind_mode_auto 
-0x2c82 007330 branch g24_dongle_search_mode_auto 
-:      007333 g24_pair_init:
-0x2c83 007336 call g24_set0_mem_pid 
-0x2c84 007337 setarg g24_pair_ch 
-0x2c85 007338 call g24_store_mem_ch 
-0x2c86 007339 call g24_store_mem_pair_txpower 
-0x2c87 007342 add regc ,offset_24g_paring_addr ,rega 
-0x2c88 007343 ifetch 4 ,rega 
-0x2c89 007344 branch g24_store_mem_addr 
-:      007346 g24_ch:
-0x2c8a 007347 call g24_head_ptr2regc 
-0x2c8b 007348 add regc ,offset_24g_current_ch_number ,regb 
-0x2c8c 007349 ifetcht 1 ,regb 
-0x2c8d 007351 call g24_ch_temp_incre_size4 
-0x2c8e 007352 add regc ,offset_24g_current_ch_number ,contw 
-0x2c8f 007354 branch g24_contw_istoret_1byte 
-:      007356 g24_ch_temp_incre_size4:
-0x2c90 007357 call g24_ch_calc 
-0x2c91 007358 increase 1 ,temp 
-0x2c92 007359 and_into 3 ,temp 
-0x2c93 007360 rtn 
-:      007362 g24_ch_calc:
-0x2c94 007363 add regc ,offset_24g_addr ,regb 
-0x2c95 007364 ifetch 1 ,regb 
-0x2c96 007366 and_into 0x03 ,pdata 
-0x2c97 007367 mul32 pdata ,4 ,rega 
-0x2c98 007368 add regc ,offset_24g_ch_map1 ,pdata 
-0x2c99 007370 iadd rega ,pdata 
-0x2c9a 007371 iadd temp ,contr 
-0x2c9b 007372 ifetch 1 ,contr 
-0x2c9c 007374 branch g24_store_mem_ch 
-:      007376 g24_set_device_addr:
-0x2c9d 007377 call g24_store_mem_tx_power_temp 
-0x2c9e 007378 call otp_enable_chgpump 
-0x2c9f 007379 setarg 0x7e2 
-0x2ca0 007380 arg mem_temp ,rega 
-0x2ca1 007381 arg 4 ,temp 
-0x2ca2 007382 call otpd_read_data 
-0x2ca3 007383 call otp_disable_chgpump 
-0x2ca4 007384 fetch 4 ,mem_temp 
-0x2ca5 007385 call g24_store_mem_device_addr 
-0x2ca6 007387 nrtn blank 
-0x2ca7 007388 fetch 4 ,mem_lap 
-0x2ca8 007390 branch g24_store_mem_device_addr 
-:      007392 g24_transmit_rf_sta_init:
-0x2ca9 007393 call g24_set1_mem_rf_last_sta 
-0x2caa 007395 setarg 0 
-0x2cab 007396 call g24_store_mem_sync_cnt 
-:      007398 g24_transmit_rf_ctrl_clear:
-0x2cac 007399 call g24_fetch_mem_data_type 
-0x2cad 007401 and_into bits_data ,pdata 
-0x2cae 007403 branch g24_store_mem_data_type 
-:      007405 g24_hop_ch_enable:
-0x2caf 007406 call g24_fetch_mem_data_type 
-0x2cb0 007408 set1 bit_hop ,pdata 
-0x2cb1 007409 call g24_store_mem_data_type 
-0x2cb2 007412 branch g24_store_mem_txpayload 
-:      007414 g24_transmit_hop_pac_fail:
-0x2cb3 007415 call g24_fetch_mem_rf_work_stage 
-0x2cb4 007417 beq 1 ,g24_transmit_hop_pac_fail_wo_hop 
-0x2cb5 007418 beq 2 ,g24_transmit_hop_pac_fail_hop_stage2 
-0x2cb6 007419 rtn 
-:      007421 g24_transmit_hop_pac_fail_wo_hop:
-0x2cb7 007422 call g24_set2_mem_sync_cnt 
-:      007424 g24_transmit_hop_pac_fail_stage1:
-0x2cb8 007425 add regc ,offset_24g_hop_pac_retry ,contw 
-0x2cb9 007426 call g24_mem_set0 
-0x2cba 007428 call g24_store_mem_rf_last_sta 
-0x2cbb 007430 branch g24_transmit_rf_ctrl_clear 
-:      007432 g24_transmit_hop_pac_fail_hop_stage2:
-0x2cbc 007433 call g24_set0_mem_rf_hop_ch 
-0x2cbd 007435 branch g24_transmit_hop_pac_fail_stage1 
-:      007437 g24_transmit_pac_fail_hop_stage3:
-0x2cbe 007438 add regc ,offset_24g_txfail_cnt ,rega 
-0x2cbf 007439 ifetch 1 ,rega 
-0x2cc0 007441 increase 1 ,pdata 
-0x2cc1 007442 add regc ,offset_24g_txfail_cnt ,contw 
-0x2cc2 007443 istore 1 ,contw 
-0x2cc3 007445 beq 0x20 ,g24_tx_attempt_fail 
-0x2cc4 007446 call g24_fetch_mem_rf_hop_ch 
-0x2cc5 007448 beq 1 ,g24_rf_hop_fastly 
-0x2cc6 007449 setarg 1 
-0x2cc7 007450 call g24_store_mem_rf_hop_ch 
-:      007452 g24_rf_hop_attemp_again:
-0x2cc8 007453 call g24_fetch_mem_rf_hop_ch 
-0x2cc9 007455 bne 1 ,g24_transmit_rf_ctrl_clear 
-:      007456 g24_rf_hop_fastly:
-0x2cca 007457 add regc ,offset_24g_hop_fastly_cnt ,rega 
-0x2ccb 007458 ifetch 1 ,rega 
-0x2ccc 007460 increase 1 ,pdata 
-0x2ccd 007461 call g24_store_mem_hop_fastly_cnt 
-0x2cce 007463 beq 4 ,g24_rf_hop_fastly_exit 
-0x2ccf 007464 call g24_ch 
-0x2cd0 007465 call g24_set2_mem_max_retry 
-0x2cd1 007467 branch g24_transmit_packet 
-:      007469 g24_rf_hop_fastly_exit:
-0x2cd2 007470 call g24_set0_mem_hop_fastly_cnt 
-0x2cd3 007472 branch g24_transmit_rf_ctrl_clear 
-:      007474 g24_set0_mem_hop_fastly_cnt:
-0x2cd4 007475 setarg 0 
-:      007476 g24_store_mem_hop_fastly_cnt:
-0x2cd5 007477 add regc ,offset_24g_hop_fastly_cnt ,contw 
-0x2cd6 007478 branch g24_contw_istore_1byte 
-:      007480 g24_transmit_hop_pac_succ_wo_hop:
-0x2cd7 007481 call g24_set2_mem_sync_cnt 
-:      007483 g24_transmit_hop_pac_succ:
-0x2cd8 007484 call g24_set0_mem_rf_hop_ch 
-0x2cd9 007486 call g24_set1_mem_rf_last_sta 
-0x2cda 007488 branch g24_transmit_rf_ctrl_clear 
-:      007490 g24_transmit_succ_rf_config:
-0x2cdb 007491 call g24_fetch_mem_rf_work_stage 
-0x2cdc 007493 beq 3 ,g24_transmit_hop_pac_succ 
-0x2cdd 007494 call g24_fetch_mem_data_type 
-0x2cde 007496 isolate0 bit_hop ,pdata 
-0x2cdf 007497 branch g24_transmit_rf_sta_init ,true 
-0x2ce0 007498 call g24_fetch_mem_rf_work_stage 
-0x2ce1 007500 beq 1 ,g24_transmit_hop_pac_succ_wo_hop 
-0x2ce2 007501 beq 2 ,g24_transmit_hop_pac_succ 
-0x2ce3 007502 rtn 
-:      007504 g24_rf_sta_check:
-0x2ce4 007505 call g24_fetch_mem_pairing_sm 
-0x2ce5 007507 rtnne state_24g_pairing_success 
-0x2ce6 007508 call g24_rf_laststa_synccnt_check 
-0x2ce7 007509 ncall g24_rf_sync_cnt_check ,user2 
-0x2ce8 007510 rtn 
-:      007512 g24_rf_laststa_synccnt_check:
-0x2ce9 007513 disable user2 
-0x2cea 007514 add regc ,offset_24g_rf_last_sta ,rega 
-0x2ceb 007515 ifetch 1 ,rega 
-0x2cec 007517 rtnne 1 
-0x2ced 007518 add regc ,offset_24g_sync_cnt ,rega 
-0x2cee 007519 ifetch 1 ,rega 
-0x2cef 007521 rtnne 0 
-0x2cf0 007522 setarg 1 
-0x2cf1 007523 call g24_store_mem_rf_work_stage 
-0x2cf2 007525 call g24_set4_mem_max_retry 
-0x2cf3 007527 branch enable_user2 
-:      007529 g24_rf_sync_cnt_check:
-0x2cf4 007530 add regc ,offset_24g_sync_cnt ,rega 
-0x2cf5 007531 ifetch 1 ,rega 
-0x2cf6 007533 branch g24_rf_hop_attemp ,blank 
-0x2cf7 007534 increase -1 ,pdata 
-0x2cf8 007535 call g24_store_mem_sync_cnt 
-0x2cf9 007537 setarg 2 
-0x2cfa 007538 call g24_store_mem_rf_work_stage 
-0x2cfb 007540 call g24_ch 
-0x2cfc 007542 branch g24_set4_mem_max_retry 
-:      007544 g24_store_mem_rf_work_stage:
-0x2cfd 007545 add regc ,offset_24g_rf_work_stage ,contw 
-0x2cfe 007546 branch g24_contw_istore_1byte 
-:      007549 g24_rf_hop_attemp:
-0x2cff 007550 setarg 3 
-0x2d00 007551 call g24_store_mem_rf_work_stage 
-0x2d01 007553 call g24_fetch_mem_rf_hop_ch 
-0x2d02 007555 nbranch g24_rf_hop_attemp_again ,blank 
-0x2d03 007556 call g24_ch 
-:      007558 g24_set2_mem_max_retry:
-0x2d04 007559 setarg 2 
-0x2d05 007560 branch g24_store_mem_max_retry 
-:      007562 g24_transmit_process:
-0x2d06 007563 rtnmark0 mark_24g 
-0x2d07 007564 set1 mark_24g_conext ,mark 
-0x2d08 007565 bpatch patch16_3 ,mem_patch16 
-0x2d09 007566 add regc ,offset_24g_tx_without_int ,rega 
-0x2d0a 007567 ifetch 1 ,rega 
-0x2d0b 007569 beq 1 ,g24_transmit_without_int 
-0x2d0c 007570 call g24_timer_check 
-0x2d0d 007571 nbranch g24_transmit_exit ,user 
-0x2d0e 007572 call g24_interval_calibrate 
-:      007573 g24_transmit_without_int:
-0x2d0f 007574 add regc ,offset_24g_tx_without_int ,contw 
-0x2d10 007575 call g24_mem_set0 
-0x2d11 007577 call g24_txdata_prep 
-0x2d12 007578 nbranch g24_enter_lpm ,user 
-0x2d13 007579 call g24_rf_sta_check 
-:      007580 g24_transmit_start:
-0x2d14 007581 call g24_transmit_packet 
-0x2d15 007582 call g24_power_ctrl 
-:      007583 g24_transmit_exit:
-0x2d16 007584 set0 mark_24g_conext ,mark 
-0x2d17 007585 rtn 
-:      007587 g24_timer_timeout:
-0x2d18 007588 rtn zero 
-0x2d19 007589 set1 28 ,pdata 
-0x2d1a 007590 rtn 
-:      007592 g24_interval_calibrate:
-0x2d1b 007593 add regc ,offset_24g_pac_index ,rega 
-0x2d1c 007594 ifetch 1 ,rega 
-0x2d1d 007596 increase 1 ,pdata 
-0x2d1e 007597 add regc ,offset_24g_pac_index ,contw 
-0x2d1f 007598 istore 1 ,contw 
-0x2d20 007600 beq 4 ,g24_interval_max 
-0x2d21 007601 beq 5 ,g24_interval_min 
-0x2d22 007602 rtn 
-:      007603 g24_interval_max:
-0x2d23 007604 add regc ,offset_24g_interval_max ,rega 
-0x2d24 007605 ifetch 1 ,rega 
-:      007607 g24_interval_update:
-0x2d25 007609 add regc ,offset_24g_interval ,contw 
-0x2d26 007610 branch g24_contw_istore_1byte 
-:      007612 g24_interval_min:
-0x2d27 007613 add regc ,offset_24g_pac_index ,contw 
-0x2d28 007614 call g24_mem_set0 
-0x2d29 007616 add regc ,offset_24g_interval_min ,rega 
-0x2d2a 007617 ifetch 1 ,rega 
-0x2d2b 007619 branch g24_interval_update 
-:      007621 g24_txdata_prep:
-0x2d2c 007622 call g24_fetch_mem_pairing_sm 
-0x2d2d 007624 bne state_24g_pairing_success ,g24_pairing_sm 
-0x2d2e 007625 bpatch patch16_4 ,mem_patch16 
-0x2d2f 007626 call g24_package_data 
-0x2d30 007627 nbranch g24_txdata_last_pac ,user 
-0x2d31 007628 call g24_transmit_prep 
-0x2d32 007629 call g24_power_ctrl_pac_incrs 
-:      007630 g24_txdata_enable_tx:
-0x2d33 007632 setarg ensure_on_24g 
-:      007633 g24_store_mem_ensure:
-0x2d34 007634 add regc ,offset_24g_ensure ,contw 
-0x2d35 007635 branch g24_contw_istore_1byte 
-:      007637 g24_txdata_last_pac:
-0x2d36 007638 add regc ,offset_24g_ensure ,rega 
-0x2d37 007639 ifetch 1 ,rega 
-0x2d38 007641 beq ensure_on_24g ,enable_user 
-0x2d39 007642 rtn 
-:      007644 g24_package_data:
-0x2d3a 007646 add regc ,offset_24g_cb_data ,temp 
-0x2d3b 007647 ifetch 2 ,temp 
-0x2d3c 007649 call callback_func 
-0x2d3d 007650 nrtn user 
-0x2d3e 007651 copy rega ,pdata 
-0x2d3f 007652 store 1 ,mem_rega 
-0x2d40 007653 add regc ,offset_24g_abort_pac ,contw 
-0x2d41 007654 call g24_mem_set0 
-0x2d42 007656 call g24_transmit_rf_ctrl_clear 
-0x2d43 007657 store 1 ,mem_24g_common_temp 
-0x2d44 007658 fetch 1 ,mem_rega 
-0x2d45 007659 copy pdata ,rega 
-0x2d46 007660 add rega ,1 ,temp 
-0x2d47 007661 arg mem_24g_common_temp + 1 ,contw 
-0x2d48 007662 copy rega ,loopcnt 
-0x2d49 007663 copy regb ,contr 
-0x2d4a 007664 call memcpy 
-0x2d4b 007665 arg mem_24g_common_temp ,rega 
-:      007666 g24_put_data_in_buff:
-0x2d4c 007667 rtnmark0 mark_24g_conext 
-0x2d4d 007668 add regc ,offset_24g_datalen ,contw 
-0x2d4e 007669 istoret 1 ,contw 
-0x2d4f 007671 copy temp ,loopcnt 
-0x2d50 007672 add regc ,offset_24g_txbuf ,contw 
-0x2d51 007674 copy rega ,contr 
-0x2d52 007675 branch memcpy 
-:      007677 g24_transmit_prep:
-0x2d53 007679 add regc ,offset_24g_datalen ,rega 
-0x2d54 007680 ifetch 1 ,rega 
-0x2d55 007682 increase 2 ,pdata 
-0x2d56 007683 add regc ,offset_24g_txlen ,contw 
-0x2d57 007684 istore 1 ,contw 
-0x2d58 007687 call g24_fetch_mem_data_type 
-0x2d59 007689 call g24_store_mem_txpayload 
-0x2d5a 007692 add regc ,offset_24g_datalen ,rega 
-0x2d5b 007693 ifetch 1 ,rega 
-0x2d5c 007695 lshift3 pdata ,pdata 
-0x2d5d 007696 add regc ,offset_24g_pid ,rega 
-0x2d5e 007697 ifetcht 1 ,rega 
-0x2d5f 007699 and temp ,0x03 ,temp 
-0x2d60 007700 lshift temp ,temp 
-0x2d61 007701 ior temp ,pdata 
-0x2d62 007702 add regc ,offset_24g_no_ack ,rega 
-0x2d63 007703 ifetcht 1 ,rega 
-0x2d64 007705 iadd temp ,pdata 
-0x2d65 007706 istore 1 ,contw 
-0x2d66 007708 add regc ,offset_24g_datalen ,rega 
-0x2d67 007709 ifetch 1 ,rega 
-0x2d68 007711 iforce loopcnt 
-0x2d69 007712 add regc ,offset_24g_txbuf ,contr 
-0x2d6a 007714 branch memcpy 
-:      007716 g24_send_abort_packet:
-0x2d6b 007717 call g24_set1_mem_abort_pac 
-0x2d6c 007719 call g24_set0_mem_rf_hop_ch 
-0x2d6d 007721 call g24_power_ctrl_reinit 
-0x2d6e 007722 call g24_transmit_rf_ctrl_clear 
-0x2d6f 007723 store 1 ,mem_24g_common_temp 
-0x2d70 007724 call g24_put_data_in_buff_pre 
-0x2d71 007725 call g24_fetch_mem_data_type 
-0x2d72 007727 set1 bit_abort ,pdata 
-0x2d73 007728 call g24_store_mem_data_type 
-0x2d74 007730 call g24_transmit_prep 
-0x2d75 007731 call g24_txdata_enable_tx 
-0x2d76 007732 branch g24_transmit_start 
-:      007734 g24_put_data_in_buff_pre:
-0x2d77 007735 store 1 ,mem_24g_common_temp + 1 
-0x2d78 007736 call g24_fetch_mem_device_addr 
-0x2d79 007738 store 4 ,mem_24g_common_temp + 2 
-0x2d7a 007739 arg 6 ,temp 
-0x2d7b 007740 arg mem_24g_common_temp ,rega 
-0x2d7c 007741 branch g24_put_data_in_buff 
-:      007743 g24_enter_lpm:
-0x2d7d 007744 add regc ,offset_24g_abort_pac ,rega 
-0x2d7e 007745 ifetch 1 ,rega 
-0x2d7f 007747 branch g24_send_abort_packet ,blank 
-:      007748 g24_enter_lpm_prepare:
-0x2d80 007750 add regc ,offset_24g_cb_lpm_prepare ,rega 
-0x2d81 007751 ifetch 2 ,rega 
-0x2d82 007753 branch callback_func 
-:      007755 g24_lpm_long_sleep:
-0x2d83 007756 call g24_head_ptr2regc 
-0x2d84 007758 call lpo_calibration 
-0x2d85 007759 fetch 3 ,mem_clks_per_lpo 
-0x2d86 007760 rtn blank 
-0x2d87 007761 add regc ,offset_24g_cb_lpm_before ,temp 
-0x2d88 007762 ifetch 2 ,temp 
-0x2d89 007764 call callback_func 
-0x2d8a 007765 add regc ,offset_24g_enter_hibernate ,temp 
-0x2d8b 007766 ifetch 8 ,temp 
-0x2d8c 007767 call clk2lpo 
-0x2d8d 007768 storet 4 ,mem_sleep_counter 
-0x2d8e 007769 branch lpm_sleep 
-:      007771 g24_transmit_packet:
-0x2d8f 007772 call g24_head_ptr2regc 
-0x2d90 007773 add regc ,offset_24g_retry ,contw 
-0x2d91 007774 call g24_mem_set0 
-:      007776 g24_transmit_loop:
-0x2d92 007777 call g24_transmit_receive_ack 
-0x2d93 007778 nbranch g24_retransmit ,sync 
-0x2d94 007779 nbranch g24_retransmit ,user3 
-0x2d95 007780 call g24_ackpayload_parse 
-0x2d96 007781 call g24_power_ctrl_ack_incrs 
-:      007782 g24_transmit_next_packet:
-0x2d97 007783 call g24_head_ptr2regc 
-0x2d98 007784 add regc ,offset_24g_pid ,rega 
-0x2d99 007785 ifetch 1 ,rega 
-0x2d9a 007787 increase 1 ,pdata 
-0x2d9b 007788 call g24_store_mem_pid 
-0x2d9c 007790 call g24_fetch_mem_pairing_sm 
-0x2d9d 007792 bne state_24g_pairing_success ,g24_paring_mode 
-0x2d9e 007793 call g24_transmit_succ_rf_config 
-:      007794 g24_transmit_abandon:
-0x2d9f 007795 setarg 0 
-0x2da0 007796 add regc ,offset_24g_txfail_cnt ,contw 
-0x2da1 007797 istore 2 ,contw 
-0x2da2 007801 setarg ensure_off_24g 
-0x2da3 007802 branch g24_store_mem_ensure 
-:      007805 g24_transmit_receive_ack:
-0x2da4 007806 disable user3 
-0x2da5 007807 call g24_transmit 
-0x2da6 007808 call g24_head_ptr2regc 
-0x2da7 007809 add regc ,offset_24g_no_ack ,rega 
-0x2da8 007810 ifetch 1 ,rega 
-0x2da9 007812 beq no_ack_24g ,g24_transmit_no_ack 
-0x2daa 007813 call g24_receive_packet 
-0x2dab 007814 branch g24_end_of_packet 
-:      007815 g24_transmit_no_ack:
-0x2dac 007816 call g24_end_of_packet 
-0x2dad 007817 branch g24_transmit_next_packet 
-:      007820 g24_retransmit:
-0x2dae 007821 bpatch patch16_5 ,mem_patch16 
-0x2daf 007822 add regc ,offset_24g_get_ack_fail ,rega 
-0x2db0 007823 ifetch 1 ,rega 
-0x2db1 007825 increase 1 ,pdata 
-0x2db2 007826 add regc ,offset_24g_get_ack_fail ,contw 
-0x2db3 007827 istore 1 ,contw 
-0x2db4 007829 call g24_fetch_mem_pairing_sm 
-0x2db5 007831 bne state_24g_pairing_success ,g24_tx_paring_retry 
-0x2db6 007832 add regc ,offset_24g_retry ,rega 
-0x2db7 007833 ifetcht 1 ,rega 
-0x2db8 007835 increase 1 ,temp 
-0x2db9 007836 add regc ,offset_24g_retry ,contw 
-0x2dba 007837 istoret 1 ,contw 
-0x2dbb 007839 add regc ,offset_24g_max_retry ,rega 
-0x2dbc 007840 ifetch 1 ,rega 
-0x2dbd 007842 isub temp ,pdata 
-0x2dbe 007843 nbranch g24_transmit_loop ,blank 
-0x2dbf 007844 bpatch patch16_6 ,mem_patch16 
-0x2dc0 007845 call g24_fetch_mem_rf_work_stage 
-0x2dc1 007847 beq 3 ,g24_transmit_pac_fail_hop_stage3 
-0x2dc2 007848 add regc ,offset_24g_hop_pac_retry ,rega 
-0x2dc3 007849 ifetch 1 ,rega 
-0x2dc4 007851 increase 1 ,pdata 
-0x2dc5 007852 add regc ,offset_24g_hop_pac_retry ,contw 
-0x2dc6 007853 istore 1 ,contw 
-0x2dc7 007855 beq 2 ,g24_transmit_hop_pac_fail 
-0x2dc8 007856 call g24_hop_ch_enable 
-0x2dc9 007857 setarg 1 
-0x2dca 007858 call g24_store_mem_max_retry 
-0x2dcb 007860 branch g24_transmit_packet 
-:      007862 g24_tx_paring_retry:
-0x2dcc 007863 add regc ,offset_24g_get_ack_fail ,rega 
-0x2dcd 007864 ifetch 1 ,rega 
-0x2dce 007866 rtnne 0xff 
-0x2dcf 007867 add regc ,offset_24g_get_ack_fail ,contw 
-0x2dd0 007868 call g24_mem_set0 
-0x2dd1 007870 branch g24_stop_24g_mode 
-:      007872 g24_tx_attempt_fail:
-0x2dd2 007873 add regc ,offset_24g_txfail_cnt ,contw 
-0x2dd3 007874 call g24_mem_set0 
-:      007876 g24_stop_24g_mode:
-0x2dd4 007877 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
-0x2dd5 007878 branch ui_ipc_send_event 
-:      007880 g24_ackpayload_parse:
-0x2dd6 007881 call g24_read_len_pid_crc 
-0x2dd7 007882 add regc ,offset_24g_rxdata_length ,rega 
-0x2dd8 007883 ifetch 1 ,rega 
-0x2dd9 007885 rtn blank 
-0x2dda 007886 iforce loopcnt 
-0x2ddb 007887 add regc ,offset_24g_rxbuf_add2 ,contr 
-0x2ddc 007889 add regc ,offset_24g_rxpayload ,contw 
-0x2ddd 007891 branch memcpy 
-:      007894 g24_read_len_pid_crc:
-0x2dde 007896 call g24_fetch_mem_rxbuf_add1 
-0x2ddf 007898 rshift3 pdata ,pdata 
-0x2de0 007899 add regc ,offset_24g_rxdata_length ,contw 
-0x2de1 007900 istore 1 ,contw 
-0x2de2 007903 increase 1 ,pdata 
-0x2de3 007904 add regc ,offset_24g_rxbuf_add1 ,contr 
-0x2de4 007906 iadd contr ,contr 
-0x2de5 007907 ifetch 3 ,contr 
-0x2de6 007908 add regc ,offset_24g_sta_crc ,contw 
-0x2de7 007909 istore 3 ,contw 
-0x2de8 007912 call g24_fetch_mem_rxbuf_add1 
-0x2de9 007914 rshift pdata ,pdata 
-0x2dea 007915 and pdata ,0x03 ,pdata 
-0x2deb 007916 add regc ,offset_24g_sta_pid ,contw 
-0x2dec 007917 istore 1 ,contw 
-0x2ded 007919 rtn 
-:      007921 g24_prep:
-0x2dee 007922 disable enable_crc 
-0x2def 007923 disable enable_white 
-0x2df0 007924 setarg 0x555555 
-0x2df1 007925 iforce crc24_init 
-0x2df2 007926 rtn 
-:      007928 g24_set_freq_tx:
-0x2df3 007929 call set_sync_on 
-0x2df4 007930 add regc ,offset_24g_ch ,rega 
-0x2df5 007931 ifetcht 1 ,rega 
-0x2df6 007933 branch set_freq_tx 
-:      007935 g24_transmit:
-0x2df7 007936 call g24_prep 
-0x2df8 007937 call g24_set_freq_tx 
-0x2df9 007938 set1 txgfsk ,radio_ctrl 
-0x2dfa 007939 enable encode_fec0 
-0x2dfb 007940 enable is_tx 
-0x2dfc 007941 disable is_rx 
-0x2dfd 007942 call le_enable 
-0x2dfe 007943 call g24_fetch_mem_addr 
-0x2dff 007945 iforce access 
-0x2e00 007946 inject mod ,32 
-0x2e01 007947 enable enable_crc 
-0x2e02 007948 add regc ,offset_24g_txlen ,rega 
-0x2e03 007949 ifetch 1 ,rega 
-0x2e04 007951 iforce loopcnt 
-0x2e05 007952 add regc ,offset_24g_txpayload ,contr 
-:      007954 g24tr_loop:
-0x2e06 007955 ifetch 1 ,contr 
-0x2e07 007956 inject mod ,8 
-0x2e08 007957 loop g24tr_loop 
-0x2e09 007958 enable enable_parity 
-0x2e0a 007959 inject mod ,24 
-0x2e0b 007960 disable enable_parity 
-0x2e0c 007961 until null ,tx_clear 
-0x2e0d 007962 bpatch patch16_7 ,mem_patch16 
-0x2e0e 007963 nop 100 
-0x2e0f 007964 disable encode_fec0 
-0x2e10 007965 rtn 
-:      007967 g24_receive_packet:
-0x2e11 007968 disable user3 
-0x2e12 007969 force 0 ,radio_ctrl 
-0x2e13 007970 add regc ,offset_24g_ch ,rega 
-0x2e14 007971 ifetcht 1 ,rega 
-0x2e15 007973 call set_freq_rx 
-0x2e16 007974 call rf_rx_enable 
-:      007975 g24_receive_rxon:
-0x2e17 007976 call g24_prep 
-0x2e18 007977 enable decode_fec0 
-0x2e19 007978 enable is_rx 
-0x2e1a 007979 disable is_tx 
-0x2e1b 007980 call le_enable 
-0x2e1c 007981 call g24_fetch_mem_addr 
-0x2e1d 007983 iforce access 
-0x2e1e 007984 enable swfine 
-0x2e1f 007985 add regc ,offset_24g_rx_window ,rega 
-0x2e20 007986 ifetch 2 ,rega 
-0x2e21 007988 iforce stop_watch 
-0x2e22 007989 correlate null ,timeout 
-0x2e23 007990 nbranch g24_sync_timeout ,sync 
-0x2e24 007991 enable enable_crc 
-0x2e25 007992 parse demod ,bucket ,8 
-0x2e26 007993 rshift3 pwindow ,pdata 
-0x2e27 007994 add regc ,offset_24g_rxbuf ,contw 
-0x2e28 007995 istore 1 ,contw 
-0x2e29 007997 add regc ,offset_24g_mode ,rega 
-0x2e2a 007998 ifetch 1 ,rega 
-0x2e2b 008000 beq rx_24g ,g24_receive_skip 
-0x2e2c 008001 bpatch patch17_0 ,mem_patch17 
-0x2e2d 008002 add regc ,offset_24g_rxbuf ,rega 
-0x2e2e 008003 ifetch 1 ,rega 
-0x2e2f 008005 add regc ,offset_24g_data_type ,rega 
-0x2e30 008006 ifetcht 1 ,rega 
-0x2e31 008008 icompare bits_data ,temp 
-0x2e32 008009 nbranch g24_end_of_packet ,true 
-:      008010 g24_receive_skip:
-0x2e33 008011 parse demod ,bucket ,8 
-0x2e34 008012 rshift3 pwindow ,pdata 
-0x2e35 008013 istore 1 ,contw 
-0x2e36 008014 rshift3 pdata ,pdata 
-0x2e37 008015 and pdata ,0x1f ,loopcnt 
-0x2e38 008016 branch g24rx_nopayload ,zero 
-:      008017 g24rx_loop:
-0x2e39 008018 parse demod ,bucket ,8 
-0x2e3a 008019 rshift3 pwindow ,pdata 
-0x2e3b 008020 istore 1 ,contw 
-0x2e3c 008021 loop g24rx_loop 
-:      008022 g24rx_nopayload:
-0x2e3d 008023 parse demod ,bucket ,24 
-0x2e3e 008024 rshift32 pdata ,pdata 
-0x2e3f 008025 rshift16 pdata ,pdata 
-0x2e40 008026 istore 3 ,contw 
-0x2e41 008027 branch g24_end_of_packet ,crc_failed 
-0x2e42 008028 enable user3 
-0x2e43 008029 disable decode_fec0 
-0x2e44 008030 rtn 
-:      008033 g24_end_of_packet:
-0x2e45 008034 disable encode_fec0 
-0x2e46 008035 disable decode_fec0 
-0x2e47 008036 disable enable_crc 
-0x2e48 008037 disable enable_white 
-0x2e49 008038 branch shutdown_radio ,is_rx 
-0x2e4a 008039 until null ,tx_clear 
-0x2e4b 008040 nop 100 
-0x2e4c 008041 branch shutdown_radio 
-:      008043 g24_sync_timeout:
-0x2e4d 008044 call rssi_noise 
-0x2e4e 008045 branch g24_end_of_packet 
-:      008047 rssi_noise:
-0x2e4f 008048 call save_rssi 
-0x2e50 008049 rtn blank 
-0x2e51 008050 add regc ,offset_rssi_noise_index ,rega 
-0x2e52 008051 ifetcht 1 ,rega 
-0x2e53 008053 arg mem_rssi_noise_buffer ,rega 
-0x2e54 008055 call rssi_noise_store 
-0x2e55 008056 add regc ,offset_rssi_noise_index ,contw 
-:      008058 g24_contw_istoret_1byte:
-0x2e56 008059 istoret 1 ,contw 
-0x2e57 008060 rtn 
-:      008062 rssi_noise_store:
-0x2e58 008063 arg rssi_buf_len_noise ,regb 
-0x2e59 008064 branch rssi_store 
-:      008082 rssi_store:
-0x2e5a 008083 copy rega ,pdata 
-0x2e5b 008084 iadd temp ,contw 
-0x2e5c 008085 fetch 1 ,mem_rssi 
-0x2e5d 008086 istore 1 ,contw 
-0x2e5e 008087 increase 1 ,temp 
-0x2e5f 008088 copy regb ,pdata 
-0x2e60 008089 iand_into temp 
-0x2e61 008090 rtn 
-:      008092 rssi_average:
-0x2e62 008093 arg 0 ,temp 
-0x2e63 008094 copy rega ,contr 
-:      008095 rssi_average_loop:
-0x2e64 008096 ifetch 1 ,contr 
-0x2e65 008097 iadd temp ,temp 
-0x2e66 008098 loop rssi_average_loop 
-0x2e67 008099 rshift8 temp ,temp 
-0x2e68 008100 rtn 
-:      008102 g24_power_ctrl_init:
-0x2e69 008103 call g24_head_ptr2regc 
-0x2e6a 008104 call g24_power_ctrl_incrs_level1 
-0x2e6b 008105 setarg 1 
-0x2e6c 008106 call g24_store_mem_power_ctrl_level 
-:      008108 g24_power_ctrl_reinit:
-0x2e6d 008109 setarg 0 
-0x2e6e 008110 call g24_store_mem_power_ctrl_pac 
-0x2e6f 008112 istore 1 ,contw 
-0x2e70 008114 rtn 
-:      008116 g24_power_ctrl_pac_incrs:
-0x2e71 008117 call g24_fetch_mem_power_ctrl_pac 
-0x2e72 008119 increase 1 ,pdata 
-:      008120 g24_store_mem_power_ctrl_pac:
-0x2e73 008122 add regc ,offset_power_ctrl_packet_cnt ,contw 
-0x2e74 008123 branch g24_contw_istore_1byte 
-:      008125 g24_power_ctrl_ack_incrs:
-0x2e75 008128 add regc ,offset_power_ctrl_ack_cnt ,rega 
-0x2e76 008129 ifetch 1 ,rega 
-0x2e77 008130 increase 1 ,pdata 
-0x2e78 008131 add regc ,offset_power_ctrl_ack_cnt ,contw 
-0x2e79 008132 branch g24_contw_istore_1byte 
-:      008134 g24_power_ctrl:
-0x2e7a 008135 bpatch patch17_1 ,mem_patch17 
-0x2e7b 008136 call g24_fetch_mem_power_ctrl_pac 
-0x2e7c 008138 sub pdata ,power_ctrl_max_packet_cnt ,null 
-0x2e7d 008139 rtn positive 
-0x2e7e 008140 add regc ,offset_power_ctrl_ack_cnt ,rega 
-0x2e7f 008141 ifetcht 1 ,rega 
-0x2e80 008143 isub temp ,temp 
-0x2e81 008144 call g24_power_ctrl_reinit 
-0x2e82 008145 setarg offset_power_ctrl_threshold_up 
-0x2e83 008146 iadd regc ,rega 
-0x2e84 008147 ifetch 1 ,rega 
-0x2e85 008149 isub temp ,null 
-0x2e86 008150 nbranch g24_power_ctrl_incrs ,positive 
-0x2e87 008151 setarg offset_power_ctrl_threshold_down 
-0x2e88 008152 iadd regc ,rega 
-0x2e89 008153 ifetch 1 ,rega 
-0x2e8a 008155 isub temp ,null 
-0x2e8b 008156 branch g24_power_ctrl_decrs ,positive 
-0x2e8c 008157 rtn 
-:      008159 g24_power_ctrl_incrs:
-0x2e8d 008160 add regc ,offset_power_ctrl_level ,rega 
-0x2e8e 008161 ifetch 1 ,rega 
-0x2e8f 008163 beq 2 ,g24_power_ctrl_incrs_level2 
-0x2e90 008164 increase 1 ,pdata 
-0x2e91 008165 call g24_store_mem_power_ctrl_level 
-0x2e92 008167 beq 1 ,g24_power_ctrl_incrs_level1 
-:      008168 g24_power_ctrl_incrs_level2:
-0x2e93 008169 setarg power_ctrl_losspac_thresh_up2 
-0x2e94 008170 call g24_store_mem_power_ctrl_threshold_up 
-0x2e95 008172 setarg power_ctrl_losspac_thresh_down2 
-0x2e96 008173 call g24_store_mem_power_ctrl_threshold_down 
-0x2e97 008176 add regc ,offset_power_ctrl_txpwr_level2 ,rega 
-0x2e98 008178 branch g24_ifetch_rega_store_mem_txpower 
-:      008180 g24_power_ctrl_decrs:
-0x2e99 008181 add regc ,offset_power_ctrl_level ,rega 
-0x2e9a 008182 ifetch 1 ,rega 
-0x2e9b 008184 beq 0 ,g24_power_ctrl_decrs_level0 
-0x2e9c 008185 increase -1 ,pdata 
-0x2e9d 008186 call g24_store_mem_power_ctrl_level 
-0x2e9e 008188 beq 0 ,g24_power_ctrl_decrs_level0 
-:      008189 g24_power_ctrl_decrs_level1:
-:      008192 g24_power_ctrl_incrs_level1:
-0x2e9f 008193 setarg power_ctrl_losspac_thresh_up1 
-0x2ea0 008194 call g24_store_mem_power_ctrl_threshold_up 
-0x2ea1 008196 setarg power_ctrl_losspac_thresh_down1 
-0x2ea2 008197 call g24_store_mem_power_ctrl_threshold_down 
-0x2ea3 008200 setarg offset_power_ctrl_txpwr_level1 
-:      008201 g24_iadd_offset_mem_txpower:
-0x2ea4 008202 iadd regc ,rega 
-:      008203 g24_ifetch_rega_store_mem_txpower:
-0x2ea5 008204 ifetch 1 ,rega 
-0x2ea6 008206 branch g24_store_mem_txpower 
-:      008208 g24_power_ctrl_decrs_level0:
-0x2ea7 008211 setarg power_ctrl_losspac_thresh_up0 
-0x2ea8 008212 call g24_store_mem_power_ctrl_threshold_up 
-0x2ea9 008214 setarg power_ctrl_losspac_thresh_down0 
-0x2eaa 008215 call g24_store_mem_power_ctrl_threshold_down 
-0x2eab 008218 setarg offset_power_ctrl_txpwr_level0 
-0x2eac 008220 branch g24_iadd_offset_mem_txpower 
-:      008234 g24_start_pairing_sm1:
-0x2ead 008235 set1 mark_24g ,mark 
-0x2eae 008236 call g24_pair_init 
-:      008237 g24_set_pairing_sm_1:
-0x2eaf 008239 setarg state_24g_pairing_1 
-0x2eb0 008240 branch g24_store_mem_pairing_sm 
-:      008242 g24_pairing_sm:
-0x2eb1 008243 add regc ,offset_24g_ensure ,rega 
-0x2eb2 008244 ifetch 1 ,rega 
-0x2eb3 008246 beq ensure_on_24g ,enable_user 
-0x2eb4 008247 call g24_fetch_mem_pairing_sm 
-0x2eb5 008249 beq state_24g_pairing_1 ,g24_pairing_sm_1 
-0x2eb6 008250 beq state_24g_pairing_2 ,g24_pairing_sm_2 
-0x2eb7 008251 beq state_24g_pairing_3 ,g24_pairing_sm_3 
-0x2eb8 008252 branch assert 
-:      008254 g24_pairing_sm_1:
-0x2eb9 008255 setarg state_24g_pairing_1_waiting_ack 
-0x2eba 008256 call g24_store_mem_pairing_sm 
-0x2ebb 008258 jam 0xaa ,mem_24g_common_temp 
-0x2ebc 008259 branch g24_pairing_sm_common 
-:      008260 g24_pairing_sm_2:
-0x2ebd 008261 setarg state_24g_pairing_2_waiting_ack 
-0x2ebe 008262 call g24_store_mem_pairing_sm 
-0x2ebf 008264 jam 0x55 ,mem_24g_common_temp 
-0x2ec0 008265 branch g24_pairing_sm_common 
-:      008266 g24_pairing_sm_3:
-0x2ec1 008267 setarg state_24g_pairing_3_waiting_ack 
-0x2ec2 008268 call g24_store_mem_pairing_sm 
-0x2ec3 008270 jam 0x22 ,mem_24g_common_temp 
-:      008271 g24_pairing_sm_common:
-0x2ec4 008272 call g24_fetch_mem_data_type 
-0x2ec5 008274 and_into bits_data ,pdata 
-0x2ec6 008275 store 1 ,mem_24g_common_temp + 1 
-0x2ec7 008276 call g24_fetch_mem_device_addr 
-0x2ec8 008278 store 4 ,mem_24g_common_temp + 2 
-:      008279 g24_put_pairing_data_in_buff:
-0x2ec9 008280 jam 0 ,mem_24g_common_temp + 6 
-0x2eca 008281 arg mem_24g_common_temp ,rega 
-0x2ecb 008282 arg 7 ,temp 
-0x2ecc 008283 call g24_put_data_in_buff 
-0x2ecd 008284 call g24_transmit_prep 
-0x2ece 008285 call g24_txdata_enable_tx 
-0x2ecf 008286 branch enable_user 
-:      008288 g24_paring_mode:
-0x2ed0 008289 call g24_fetch_mem_pairing_sm 
-0x2ed1 008291 rtneq state_24g_pairing_success 
-0x2ed2 008292 beq state_24g_pairing_1_waiting_ack ,g24_pairing_sm_1_waiting_ack 
-0x2ed3 008293 beq state_24g_pairing_2_waiting_ack ,g24_pairing_sm_2_waiting_ack 
-0x2ed4 008294 beq state_24g_pairing_3_waiting_ack ,g24_pairing_sm_3_waiting_ack 
-0x2ed5 008295 rtn 
-:      008297 g24_pairing_sm_1_waiting_ack:
-0x2ed6 008298 setarg state_24g_pairing_2 
-0x2ed7 008299 call g24_store_mem_pairing_sm 
-0x2ed8 008301 branch g24_transmit_abandon 
-:      008302 g24_pairing_sm_2_waiting_ack:
-0x2ed9 008303 setarg state_24g_pairing_3 
-0x2eda 008304 call g24_store_mem_pairing_sm 
-0x2edb 008306 branch g24_transmit_abandon 
-:      008307 g24_pairing_sm_3_waiting_ack:
-0x2edc 008308 setarg state_24g_pairing_success 
-0x2edd 008309 call g24_store_mem_pairing_sm 
-0x2ede 008311 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
-0x2edf 008312 call ui_ipc_send_event 
-0x2ee0 008313 add regc ,offset_24g_rxpayload_add2 ,rega 
-0x2ee1 008314 ifetch 4 ,rega 
-0x2ee2 008316 call g24_store_mem_addr 
-0x2ee3 008318 branch g24_transmit_abandon 
-:      008320 g24_auto_pair_start:
-0x2ee4 008321 set0 mark_24g ,mark 
-0x2ee5 008322 call g24_auto_pair_set_device_info 
-0x2ee6 008323 call g24_tx_attemp_data_prep 
-:      008324 g24_auto_pair_restart:
-0x2ee7 008325 call g24_set0_mem_check_dongle_times 
-:      008326 g24_auto_pair_start_loop:
-0x2ee8 008327 nop 2000 
-0x2ee9 008328 call g24_fetch_mem_check_dongle_times 
-0x2eea 008329 beq 0xff ,g24_stop_24g_mode 
-0x2eeb 008330 call g24_transmit_receive_ack 
-0x2eec 008331 nbranch g24_auto_pair_retry ,sync 
-0x2eed 008332 nbranch g24_auto_pair_retry ,user3 
-0x2eee 008333 call g24_ackpayload_parse 
-0x2eef 008334 call g24_head_ptr2regc 
-0x2ef0 008335 add regc ,offset_24g_paring_addr ,rega 
-0x2ef1 008336 ifetcht 4 ,rega 
-0x2ef2 008337 call g24_fetch_mem_addr_isub_temp 
-0x2ef3 008338 branch g24_start_pairing_sm1 ,zero 
-0x2ef4 008339 call g24_head_ptr2regc 
-0x2ef5 008340 add regc ,offset_24g_rxpayload_add2 ,rega 
-0x2ef6 008341 ifetch 4 ,rega 
-0x2ef7 008342 beq 0 ,g24_auto_pair_restart 
-0x2ef8 008343 call g24_store_mem_addr 
-0x2ef9 008344 branch g24_tx_attemp_dongle_succ 
-:      008346 g24_auto_pair_retry:
-0x2efa 008347 call g24_fetch_mem_check_dongle_times 
-0x2efb 008348 increase 1 ,pdata 
-0x2efc 008349 call g24_store_mem_check_dongle_times 
-0x2efd 008351 call g24_fetch_mem_auto_paring_switch 
-0x2efe 008352 increase 1 ,pdata 
-0x2eff 008353 and_into 1 ,pdata 
-0x2f00 008354 call g24_store_mem_auto_paring_switch 
-0x2f01 008355 beq 0 ,g24_auto_pair_device_attemp 
-0x2f02 008356 beq 1 ,g24_auto_pair_pair_attemp 
-0x2f03 008357 rtn 
-:      008359 g24_fetch_mem_auto_paring_switch:
-0x2f04 008360 setarg offset_24g_auto_pair_switch 
-0x2f05 008361 branch g24_set_rega_ifetch_1byte 
-:      008362 g24_store_mem_auto_paring_switch:
-0x2f06 008363 arg offset_24g_auto_pair_switch ,rega 
-0x2f07 008364 branch g24_set_contw_with_regb_store_1byte 
-:      008366 g24_auto_pair_set_device_info:
-0x2f08 008367 call g24_store_mem_tx_power 
-0x2f09 008368 call g24_fetch_mem_device_addr 
-0x2f0a 008369 call g24_store_mem_addr 
-0x2f0b 008370 branch g24_ch 
-:      008372 g24_auto_pair_device_attemp:
-0x2f0c 008373 call g24_auto_pair_set_device_info 
-0x2f0d 008374 branch g24_auto_pair_start_loop 
-:      008376 g24_auto_pair_pair_attemp:
-0x2f0e 008377 call g24_pair_init 
-0x2f0f 008378 branch g24_auto_pair_start_loop 
-:      008381 g24_start_24g_mode:
-0x2f10 008382 set0 mark_24g ,mark 
-0x2f11 008383 call g24_ch 
-0x2f12 008384 call g24_fetch_mem_pairing_sm 
-0x2f13 008386 rtnne state_24g_pairing_success 
-0x2f14 008387 call g24_tx_attemp_data_prep 
-0x2f15 008388 call g24_set0_mem_check_dongle_times 
-:      008390 g24_tx_attemp_dongle_loop:
-0x2f16 008391 nop 2000 
-0x2f17 008392 call g24_fetch_mem_check_dongle_times 
-0x2f18 008394 beq 0xff ,g24_stop_24g_mode 
-0x2f19 008395 call g24_transmit_receive_ack 
-0x2f1a 008396 nbranch g24_attemp_txdata_retry ,sync 
-0x2f1b 008397 nbranch g24_attemp_txdata_retry ,user3 
-:      008398 g24_tx_attemp_dongle_succ:
-0x2f1c 008399 set1 mark_24g ,mark 
-0x2f1d 008400 call g24_set0_mem_check_dongle_times 
-0x2f1e 008401 setarg state_24g_pairing_success 
-0x2f1f 008402 call g24_store_mem_pairing_sm 
-:      008404 g24_app_tx_attempt_success:
-0x2f20 008405 jam bt_evt_24g_attempt_success ,mem_fifo_temp 
-0x2f21 008406 branch ui_ipc_send_event 
-:      008408 g24_tx_attemp_data_prep:
-0x2f22 008409 set1 mark_24g_conext ,mark 
-0x2f23 008410 jam 0xff ,mem_24g_common_temp 
-0x2f24 008411 call g24_fetch_mem_data_type 
-0x2f25 008413 call g24_put_data_in_buff_pre 
-0x2f26 008414 branch g24_transmit_prep 
-:      008416 g24_attemp_txdata_retry:
-0x2f27 008417 call g24_fetch_mem_check_dongle_times 
-0x2f28 008419 increase 1 ,pdata 
-0x2f29 008420 call g24_store_mem_check_dongle_times 
-0x2f2a 008422 call g24_ch 
-0x2f2b 008423 branch g24_tx_attemp_dongle_loop 
-:      008425 g24_check_51cmd_start_24g:
-0x2f2c 008426 call g24_store_mem_tx_power 
-0x2f2d 008429 setarg state_24g_pairing_success 
-0x2f2e 008430 call g24_store_mem_pairing_sm 
-0x2f2f 008432 branch g24_start_24g_mode 
-:      008441 dongle_init:
-0x2f30 008442 bpatch patch17_2 ,mem_patch17 
-0x2f31 008443 call g24_head_ptr2regc 
-0x2f32 008444 setarg dongle_rxdata_type1 
-0x2f33 008445 add regc ,offset_24g_cb_rxdata_type1 ,contw 
-0x2f34 008446 istore 2 ,contw 
-0x2f35 008448 call g24_receive_init 
-0x2f36 008449 call usb_init 
-0x2f37 008450 call g24_fetch_mem_pair_mode 
-0x2f38 008452 bpatch patch17_3 ,mem_patch17 
-0x2f39 008453 beq 0x00 ,dongle_auto_bind 
-0x2f3a 008454 beq 0x01 ,dongle_pc_bind 
-0x2f3b 008455 beq 0x0f ,dongle_all_powerful 
-0x2f3c 008456 branch assert 
-:      008458 g24_receive_init:
-0x2f3d 008459 call g24_store_mem_tx_power_temp 
-0x2f3e 008460 arg 0x80 ,loopcnt 
-0x2f3f 008461 arg mem_rssi_noise_buffer ,contw 
-0x2f40 008462 branch memset0 
-:      008464 dongle_all_powerful:
-0x2f41 008465 call dongle_check_mode 
-:      008466 dongle_all_powerful_loop:
-0x2f42 008467 call g24_dongle_work_mode 
-0x2f43 008468 call usb_isr 
-0x2f44 008469 branch dongle_all_powerful_loop 
-:      008471 dongle_pc_bind:
-0x2f45 008472 bpatch patch17_4 ,mem_patch17 
-0x2f46 008473 call dongle_check_mode 
-:      008474 dongle_pc_bind_loop:
-0x2f47 008475 call g24_dongle_work_mode 
-0x2f48 008476 call g24_dongle_bind_mode 
-0x2f49 008477 call usb_isr 
-0x2f4a 008478 call dongle_usb_dispatch 
-0x2f4b 008479 branch dongle_pc_bind_loop 
-:      008481 dongle_check_mode:
-0x2f4c 008485 call g24_set_work_mem_dongle_work_mode 
-0x2f4d 008486 call g24_set0_mem_dongle_mode_init 
-0x2f4e 008487 branch g24_set0_mem_ackpayload_enable 
-:      008489 g24_dongle_work_mode:
-0x2f4f 008490 call g24_fetch_mem_dongle_work_mode 
-0x2f50 008492 rtnne dongle_work 
-:      008493 g24_dongle_work_mode_start:
-0x2f51 008494 call g24_dongle_work_init 
-0x2f52 008495 call g24_ch_process 
-0x2f53 008496 call g24_receive_packet_start 
-0x2f54 008497 branch g24_blank_data_process 
-:      008499 g24_dongle_work_init:
-0x2f55 008500 call g24_fetch_mem_dongle_mode_init 
-0x2f56 008502 rtnbit1 dongle_work 
-0x2f57 008503 set1 dongle_work ,pdata 
-0x2f58 008504 call g24_store_mem_dongle_mode_init 
-0x2f59 008506 call g24_store_mem_tx_power 
-0x2f5a 008509 call g24_set0_mem_ackpayload_enable 
-0x2f5b 008511 jam 0 ,mem_usb_tx_enable 
-0x2f5c 008512 call g24_set1_mem_abort_pac 
-0x2f5d 008514 call g24_dongle_init 
-:      008515 g24_rx_interrupt_clear:
-0x2f5e 008516 add regc ,offset_24g_rxbuf ,contw 
-0x2f5f 008518 arg 66 ,loopcnt 
-0x2f60 008519 branch clear_mem 
-:      008521 g24_dongle_init:
-0x2f61 008522 call g24_set0_mem_pid 
-0x2f62 008524 call g24_fetch_mem_rx_addr 
-0x2f63 008526 call g24_store_mem_addr 
-0x2f64 008528 branch g24_ch 
-:      008530 g24_ch_process:
-0x2f65 008531 bpatch patch17_5 ,mem_patch17 
-0x2f66 008532 call g24_fetch_mem_abort_pac 
-0x2f67 008534 beq 1 ,g24_noise_rssi 
-0x2f68 008535 call g24_fetch_mem_hop_pac 
-0x2f69 008537 beq 1 ,g24_ch 
-0x2f6a 008538 setarg offset_24g_hop_btclk 
-0x2f6b 008539 iadd regc ,rega 
-0x2f6c 008540 ifetcht 4 ,rega 
-0x2f6d 008542 copy clkn_bt ,pdata 
-0x2f6e 008543 isub temp ,null 
-0x2f6f 008544 ncall g24_timer_timeout ,positive 
-0x2f70 008545 copy pdata ,regb 
-0x2f71 008546 setarg offset_24g_hop_btclk 
-0x2f72 008547 iadd regc ,rega 
-0x2f73 008548 ifetch 4 ,rega 
-0x2f74 008549 copy pdata ,temp 
-0x2f75 008551 setarg offset_24g_hop_interval 
-0x2f76 008552 iadd regc ,rega 
-0x2f77 008553 copy temp ,pdata 
-0x2f78 008554 ifetcht 1 ,rega 
-0x2f79 008556 iadd temp ,temp 
-0x2f7a 008557 copy regb ,pdata 
-0x2f7b 008558 isub temp ,null 
-0x2f7c 008559 nrtn positive 
-0x2f7d 008560 set0 28 ,pdata 
-0x2f7e 008561 setarg offset_24g_hop_btclk 
-0x2f7f 008562 iadd regc ,contw 
-0x2f80 008563 istore 4 ,contw 
-:      008565 g24_ch_update:
-0x2f81 008566 call g24_ch 
-0x2f82 008567 call g24_fetch_mem_rf_laststa 
-0x2f83 008569 increase 1 ,pdata 
-0x2f84 008570 call g24_store_mem_rf_laststa 
-0x2f85 008572 rtnne 2 
-0x2f86 008573 call g24_set0_mem_rf_laststa 
-0x2f87 008577 branch g24_set1_mem_abort_pac 
-:      008579 g24_ch_timer_reinit:
-0x2f88 008580 copy clkn_bt ,pdata 
-0x2f89 008581 arg offset_24g_hop_btclk ,rega 
-0x2f8a 008582 call g24_set_contw_with_temp 
-0x2f8b 008583 istore 4 ,contw 
-0x2f8c 008587 branch g24_set0_mem_rf_laststa 
-:      008589 g24_noise_rssi:
-0x2f8d 008590 arg mem_rssi_noise_buffer ,rega 
-0x2f8e 008591 call g24_noise_rssi_average 
-0x2f8f 008592 add regc ,offset_rssi_noise_avg ,contw 
-0x2f90 008593 istoret 1 ,contw 
-0x2f91 008595 sub temp ,rssi_thresh_noise ,null 
-0x2f92 008596 nrtn positive 
-0x2f93 008597 branch g24_ch 
-:      008599 g24_noise_rssi_average:
-0x2f94 008600 arg rssi_buf_len_noise + 1 ,loopcnt 
-0x2f95 008601 branch rssi_average 
-:      008603 g24_blank_data_process:
-0x2f96 008604 call g24_ms_blank_data 
-0x2f97 008605 call g24_kb_blank_data 
-0x2f98 008606 branch g24_kb_mul_blank_data 
-:      008608 g24_ms_blank_data:
-0x2f99 008609 setarg offset_24g_ms_blank_data_enable 
-0x2f9a 008610 call g24_set_rega_ifetch_1byte 
-0x2f9b 008612 rtn blank 
-0x2f9c 008613 arg timer_ms_blank ,queue 
-0x2f9d 008614 call timer_check 
-0x2f9e 008615 nrtn blank 
-0x2f9f 008616 call g24_set0_mem_ms_blank_data_enable 
-:      008618 g24_ms_blank_data_2usb:
-0x2fa0 008619 setarg ms_report_id 
-0x2fa1 008620 store 1 ,mem_usb_mouse_data 
-0x2fa2 008621 setarg 0 
-0x2fa3 008622 istore 7 ,contw 
-0x2fa4 008623 branch g24_data_type1_usbtx_enable 
-:      008625 g24_kb_blank_data:
-0x2fa5 008626 setarg offset_24g_kb_blank_data_enable 
-0x2fa6 008627 call g24_set_rega_ifetch_1byte 
-0x2fa7 008629 rtn blank 
-0x2fa8 008630 arg timer_kb_blank ,queue 
-0x2fa9 008631 call timer_check 
-0x2faa 008632 nrtn blank 
-0x2fab 008633 call g24_set0_mem_kb_blank_data_enable 
-:      008635 g24_kb_blank_data_2usb:
-0x2fac 008636 arg mem_usb_kb_data ,contw 
-0x2fad 008637 arg 2 ,loopcnt 
-0x2fae 008638 call memset0 
-0x2faf 008639 jam kb_normal_report_id ,mem_usb_kb_data 
-0x2fb0 008640 branch g24_kb_data_into_ep1_fifo 
-:      008642 g24_kb_mul_blank_data:
-0x2fb1 008643 setarg offset_24g_kb_mul_blank_data_enable 
-0x2fb2 008644 call g24_set_rega_ifetch_1byte 
-0x2fb3 008646 rtn blank 
-0x2fb4 008647 arg timer_kb_mul_blank ,queue 
-0x2fb5 008648 call timer_check 
-0x2fb6 008649 nrtn blank 
-0x2fb7 008650 call g24_set0_mem_kb_mul_blank_data_enable 
-:      008652 g24_kb_mul_blank_data_2usb:
-0x2fb8 008653 arg mem_usb_kb_multikey ,contw 
-0x2fb9 008654 arg 2 ,loopcnt 
-0x2fba 008655 call memset0 
-0x2fbb 008656 jam kb_multikey_report_id ,mem_usb_kb_multikey 
-0x2fbc 008657 branch g24_kb_mul_data_into_ep2_fifo 
-:      008659 g24_dongle_bind_mode:
-0x2fbd 008660 call g24_fetch_mem_dongle_work_mode 
-0x2fbe 008662 rtnne dongle_bind 
-0x2fbf 008663 call g24_dongle_bind_init 
-0x2fc0 008664 branch g24_dongle_bind_data_process 
-:      008666 g24_dongle_bind_init:
-0x2fc1 008667 call g24_fetch_mem_dongle_mode_init 
-0x2fc2 008669 rtnbit1 dongle_bind 
-0x2fc3 008670 set1 dongle_bind ,pdata 
-0x2fc4 008671 call g24_store_mem_dongle_mode_init 
-0x2fc5 008673 call g24_set1_mem_ackpayload_enable 
-0x2fc6 008675 call g24_pair_init 
-0x2fc7 008676 setarg 0 
-0x2fc8 008677 arg offset_dongle_ms_bind_step ,rega 
-0x2fc9 008678 call g24_set_contw_with_temp 
-0x2fca 008680 branch g24_contw_istore_3byte 
-:      008682 g24_dongle_bind_data_process:
-0x2fcb 008683 call g24_receive_transmit_ack 
-0x2fcc 008684 nbranch g24_rx_interrupt_clear ,user3 
-0x2fcd 008685 add regc ,offset_24g_rxbuf ,contr 
-0x2fce 008686 setarg offset_24g_rxdata_temp 
-0x2fcf 008687 iadd regc ,contw 
-0x2fd0 008688 arg 8 ,loopcnt 
-0x2fd1 008689 call memcpy 
-0x2fd2 008690 setarg offset_24g_rxdata_temp_add2 
-0x2fd3 008691 call g24_set_rega_ifetch_1byte 
-0x2fd4 008692 beq datatype_bind ,g24_dongle_bind_first_step 
-0x2fd5 008693 beq datatype_config ,g24_dongle_bind_second_step 
-0x2fd6 008694 beq datatype_ok ,g24_dongle_bind_third_step 
-0x2fd7 008695 beq 0xff ,g24_data_attemp 
-0x2fd8 008696 branch g24_rx_interrupt_clear 
-:      008698 g24_dongle_bind_first_step:
-0x2fd9 008699 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x2fda 008700 beq bind_mouse ,g24_dongle_bind_first_step_mouse 
-0x2fdb 008701 beq bind_keyboard ,g24_dongle_bind_first_step_keyboard 
-0x2fdc 008702 rtn 
-:      008703 g24_dongle_bind_first_step_mouse:
-0x2fdd 008704 setarg 1 
-0x2fde 008705 call g24_store_mem_ms_bind_step 
-:      008707 g24_dongle_bind_ms_payload_cfg:
-0x2fdf 008708 setarg datatype_mouse 
-0x2fe0 008709 call g24_store_mem_bind_payload 
-:      008711 g24_dongle_bind_payload_cfg:
-0x2fe1 008712 setarg 0x80 
-0x2fe2 008713 arg offset_24g_bind_payload_add1 ,rega 
-0x2fe3 008714 call g24_set_contw_with_regb_store_1byte 
-0x2fe4 008716 call g24_fetch_mem_rx_addr 
-0x2fe5 008718 arg offset_24g_bind_payload_add2 ,rega 
-0x2fe6 008719 call g24_set_contw_with_temp 
-0x2fe7 008721 branch g24_contw_istore_4byte 
-:      008723 g24_dongle_bind_first_step_keyboard:
-0x2fe8 008724 setarg 1 
-0x2fe9 008725 call g24_store_mem_kb_bind_step 
-:      008727 g24_dongle_bind_kb_payload_cfg:
-0x2fea 008728 setarg datatype_keyboard 
-0x2feb 008729 call g24_store_mem_bind_payload 
-0x2fec 008731 branch g24_dongle_bind_payload_cfg 
-:      008733 g24_dongle_bind_second_step:
-0x2fed 008734 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x2fee 008735 beq bind_mouse ,g24_dongle_bind_second_step_mouse 
-0x2fef 008736 beq bind_keyboard ,g24_dongle_bind_second_step_keyboard 
-0x2ff0 008737 rtn 
-:      008738 g24_dongle_bind_second_step_mouse:
-0x2ff1 008739 call g24_dongle_bind_ms_payload_cfg 
-0x2ff2 008740 setarg offset_dongle_ms_bind_step 
-0x2ff3 008741 call g24_set_rega_ifetch_1byte 
-0x2ff4 008743 beq 1 ,g24_dongle_ms_bind_step_set2 
-0x2ff5 008744 rtn 
-:      008745 g24_dongle_ms_bind_step_set2:
-0x2ff6 008746 setarg 2 
-:      008748 g24_store_mem_ms_bind_step:
-0x2ff7 008749 arg offset_dongle_ms_bind_step ,rega 
-0x2ff8 008750 branch g24_set_contw_with_regb_store_1byte 
-:      008752 g24_dongle_bind_second_step_keyboard:
-0x2ff9 008753 call g24_dongle_bind_kb_payload_cfg 
-0x2ffa 008754 setarg offset_dongle_kb_bind_step 
-0x2ffb 008755 call g24_set_rega_ifetch_1byte 
-0x2ffc 008757 beq 1 ,g24_dongle_kb_bind_step_set2 
-0x2ffd 008758 rtn 
-:      008759 g24_dongle_kb_bind_step_set2:
-0x2ffe 008760 setarg 2 
-:      008762 g24_store_mem_kb_bind_step:
-0x2fff 008763 arg offset_dongle_kb_bind_step ,rega 
-0x3000 008764 branch g24_set_contw_with_regb_store_1byte 
-:      008766 g24_dongle_bind_third_step:
-0x3001 008767 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x3002 008768 beq bind_mouse ,g24_dongle_bind_third_step_mouse 
-0x3003 008769 beq bind_keyboard ,g24_dongle_bind_third_step_keyboard 
-0x3004 008770 rtn 
-:      008771 g24_dongle_bind_third_step_mouse:
-0x3005 008772 setarg offset_dongle_ms_bind_step 
-0x3006 008773 call g24_set_rega_ifetch_1byte 
-0x3007 008775 beq 2 ,g24_dongle_ms_bind_step_success 
-0x3008 008776 rtn 
-:      008777 g24_dongle_ms_bind_step_success:
-0x3009 008778 call g24_fetch_mem_bind_device_status 
-0x300a 008780 or_into 0x01 ,pdata 
-0x300b 008781 call g24_store_mem_bind_device_status 
-:      008783 g24_dongle_bind_exit:
-0x300c 008784 setarg 0 
-0x300d 008785 setarg offset_dongle_ms_bind_step 
-0x300e 008786 iadd regc ,contw 
-0x300f 008787 istore 2 ,contw 
-0x3010 008788 branch g24_rx_interrupt_clear 
-:      008790 g24_dongle_bind_third_step_keyboard:
-0x3011 008791 setarg offset_dongle_kb_bind_step 
-0x3012 008792 call g24_set_rega_ifetch_1byte 
-0x3013 008794 bne 0 ,g24_dongle_kb_bind_step_success 
-0x3014 008795 rtn 
-:      008796 g24_dongle_kb_bind_step_success:
-0x3015 008797 call g24_fetch_mem_bind_device_status 
-0x3016 008799 or_into 0x02 ,pdata 
-0x3017 008800 call g24_store_mem_bind_device_status 
-0x3018 008802 branch g24_dongle_bind_exit 
-:      008805 dongle_usb_dispatch:
-0x3019 008806 fetch 1 ,mem_usb0_get_set_report 
-0x301a 008807 rtn blank 
-0x301b 008808 jam 0 ,mem_usb0_get_set_report 
-0x301c 008809 fetch 2 ,mem_usb_setup_bvalue_temp 
-0x301d 008810 arg pc_set_report ,temp 
-0x301e 008811 isub temp ,null 
-0x301f 008812 nrtn zero 
-0x3020 008814 fetch 1 ,mem_usb0_set_report_data 
-0x3021 008815 rtnne pc_report_id 
-0x3022 008816 fetch 1 ,mem_usb0_set_report_data + 1 
-0x3023 008817 bpatch patch17_6 ,mem_patch17 
-0x3024 008818 beq command_mode ,dongle_dispose_cmd_mode 
-0x3025 008819 beq command_bind ,dongle_dispose_cmd_bind 
-0x3026 008820 beq command_current_project ,dongle_dispose_cmd_current_project 
-0x3027 008821 beq command_current_mode ,dongle_dispose_cmd_current_mode 
-0x3028 008822 beq command_current_fw_version ,dongle_dispose_cmd_current_fw_version 
-0x3029 008823 beq command_user_defined ,dongle_dispose_cmd_user_defined 
-:      008824 usb0_data_ready_report_set0:
-0x302a 008825 jam 0 ,mem_usb0_data_ready_report 
-0x302b 008826 rtn 
-:      008827 dongle_dispose_cmd_bind:
-0x302c 008828 fetch 1 ,mem_usb0_set_report_data + 2 
-0x302d 008829 beq com_bind_get ,dongle_dispose_cmd_get_bind 
-0x302e 008830 beq com_bind_exit ,dongle_dispose_cmd_exit_bind 
-0x302f 008831 beq com_read_mode ,dongle_dispose_cmd_read_mode 
-0x3030 008832 branch usb0_data_ready_report_set0 
-:      008833 dongle_dispose_cmd_get_bind:
-0x3031 008834 call g24_fetch_mem_bind_device_status 
-0x3032 008836 store 1 ,mem_usb0_get_report_data + 1 
-0x3033 008837 branch usb0_data_ready_report_set1 
-:      008838 dongle_dispose_cmd_exit_bind:
-0x3034 008839 call g24_set_work_mem_dongle_work_mode 
-0x3035 008841 call g24_set0_mem_dongle_mode_init 
-0x3036 008843 call g24_fetch_mem_bind_device_status 
-0x3037 008845 store 1 ,mem_usb0_get_report_data + 1 
-0x3038 008846 branch usb0_data_ready_report_set1 
-:      008848 dongle_dispose_cmd_read_mode:
-:      008849 dongle_dispose_in_bind_mode:
-0x3039 008850 jam command_bind ,mem_usb0_get_report_data + 1 
-0x303a 008851 branch usb0_data_ready_report_set1 
-:      008853 dongle_dispose_cmd_mode:
-0x303b 008854 fetch 1 ,mem_usb0_set_report_data + 2 
-0x303c 008855 beq com_mode_bind ,dongle_enter_bind_mode 
-0x303d 008857 branch usb0_data_ready_report_set0 
-:      008858 dongle_enter_bind_mode:
-0x303e 008861 call g24_bind_mode_enable 
-:      008862 usb0_data_ready_report_set1:
-0x303f 008863 jam 1 ,mem_usb0_data_ready_report 
-0x3040 008864 rtn 
-:      008869 dongle_dispose_cmd_current_project:
-0x3041 008870 jam product_id ,mem_usb0_get_report_data + 1 
-0x3042 008871 branch usb0_data_ready_report_set1 
-:      008873 dongle_dispose_cmd_current_mode:
-0x3043 008874 call g24_fetch_mem_dongle_work_mode 
-0x3044 008876 beq dongle_work ,dongle_dispose_in_work_mode 
-0x3045 008877 beq dongle_bind ,dongle_dispose_in_bind_mode 
-0x3046 008879 rtn 
-:      008880 dongle_dispose_in_work_mode:
-0x3047 008881 jam command_mode ,mem_usb0_get_report_data + 1 
-0x3048 008882 branch usb0_data_ready_report_set1 
-:      008887 dongle_dispose_cmd_current_fw_version:
-0x3049 008888 jam fw_version0 ,mem_usb0_get_report_data + 1 
-0x304a 008889 jam fw_version1 ,mem_usb0_get_report_data + 2 
-0x304b 008890 jam fw_version2 ,mem_usb0_get_report_data + 3 
-0x304c 008891 branch usb0_data_ready_report_set1 
-:      008893 dongle_dispose_cmd_user_defined:
-0x304d 008895 call g24_set1_mem_ackpayload_enable 
-0x304e 008896 fetch 1 ,mem_usb0_set_report_data + 2 
-0x304f 008897 increase 2 ,pdata 
-0x3050 008898 copy pdata ,loopcnt 
-0x3051 008899 arg mem_usb0_set_report_data ,contr 
-0x3052 008900 setarg offset_24g_ackpayload 
-0x3053 008901 iadd regc ,contw 
-0x3054 008902 branch memcpy 
-:      008905 dongle_auto_bind:
-0x3055 008906 bpatch patch17_7 ,mem_patch17 
-0x3056 008907 call g24_mode_switch_init 
-:      008908 dongle_auto_bind_loop:
-0x3057 008909 call g24_receive_process 
-0x3058 008910 call usb_isr 
-0x3059 008911 branch dongle_auto_bind_loop 
-:      008913 g24_dongle_work_mode_auto:
-0x305a 008914 call g24_fetch_mem_dongle_work_mode 
-0x305b 008916 rtnne dongle_work 
-0x305c 008917 call g24_dongle_work_mode_start 
-0x305d 008918 branch g24_rx_nodata_process 
-:      008920 g24_dongle_bind_mode_auto:
-0x305e 008921 call g24_fetch_mem_dongle_work_mode 
-0x305f 008923 rtnne dongle_bind 
-0x3060 008924 call g24_dongle_bind_init 
-0x3061 008925 call g24_dongle_bind_data_process 
-0x3062 008926 call g24_fetch_mem_bind_device_status 
-0x3063 008928 rtn blank 
-0x3064 008929 call g24_set0_mem_mode_switch 
-0x3065 008931 call dongle_check_mode 
-0x3066 008932 call g24_enable_nodata_timer 
-:      008933 g24_timer_init:
-0x3067 008934 setarg 0 
-0x3068 008935 add regc ,offset_24g_tx_btclk ,contw 
-0x3069 008937 branch g24_contw_istore_4byte 
-:      008939 g24_timer_check:
-0x306a 008940 call disable_user 
-0x306b 008941 add regc ,offset_24g_tx_btclk ,rega 
-0x306c 008942 ifetcht 4 ,rega 
-0x306d 008944 copy clkn_bt ,pdata 
-0x306e 008945 isub temp ,null 
-0x306f 008946 ncall g24_timer_timeout ,positive 
-0x3070 008947 copy pdata ,regb 
-0x3071 008948 add regc ,offset_24g_tx_btclk ,rega 
-0x3072 008949 ifetch 4 ,rega 
-0x3073 008951 add regc ,offset_24g_interval ,rega 
-0x3074 008952 ifetcht 1 ,rega 
-0x3075 008954 iadd temp ,temp 
-0x3076 008955 copy regb ,pdata 
-0x3077 008956 isub temp ,null 
-0x3078 008957 nrtn positive 
-0x3079 008958 set0 28 ,pdata 
-0x307a 008959 add regc ,offset_24g_tx_btclk ,contw 
-0x307b 008960 istore 4 ,contw 
-0x307c 008962 branch enable_user 
-:      008964 g24_mode_switch_init:
-0x307d 008965 setarg 1 
-0x307e 008966 call g24_store_mem_mode_switch 
-0x307f 008968 call g24_set0_mem_time_slice 
-0x3080 008970 setarg 0xff 
-0x3081 008971 add regc ,offset_24g_interval ,contw 
-0x3082 008972 istore 1 ,contw 
-0x3083 008974 branch g24_timer_init 
-:      008976 g24_mode_switch:
-0x3084 008977 setarg offset_24g_mode_switch 
-0x3085 008978 call g24_set_rega_ifetch_1byte 
-0x3086 008980 rtn blank 
-0x3087 008981 call g24_timer_check 
-0x3088 008982 nrtn user 
-0x3089 008983 call g24_fetch_mem_time_slice 
-0x308a 008985 increase 1 ,pdata 
-0x308b 008986 and_into 1 ,pdata 
-0x308c 008987 call g24_store_mem_time_slice 
-0x308d 008989 beq 0 ,dongle_check_mode 
-0x308e 008990 beq 1 ,g24_bind_mode_enable 
-0x308f 008991 rtn 
-:      008993 g24_bind_mode_enable:
-0x3090 008997 setarg dongle_bind 
-0x3091 008998 call g24_store_mem_dongle_work_mode 
-0x3092 008999 branch g24_set0_mem_dongle_mode_init 
-:      009001 g24_enable_nodata_timer:
-0x3093 009002 setarg 1 
-0x3094 009003 call g24_store_mem_nodata_timer_enable 
-:      009005 g24_enable_nodata_timer_init:
-0x3095 009006 setarg timer_nodata_delay 
-0x3096 009007 arg timer_nodata ,queue 
-0x3097 009008 branch timer_init 
-:      009010 g24_rx_nodata_process:
-0x3098 009011 call g24_fetch_mem_nodata_timer_enable 
-0x3099 009013 rtn blank 
-0x309a 009014 arg timer_nodata ,queue 
-0x309b 009015 call timer_check 
-0x309c 009016 nrtn blank 
-0x309d 009017 call g24_set0_mem_nodata_timer_enable 
-0x309e 009020 setarg dongle_search 
-0x309f 009021 call g24_store_mem_dongle_work_mode 
-0x30a0 009023 call g24_set0_mem_dongle_mode_init 
-0x30a1 009025 branch g24_rx_interrupt_clear 
-:      009027 g24_dongle_search_mode_auto:
-0x30a2 009028 bpatch patch18_0 ,mem_patch18 
-0x30a3 009029 call g24_fetch_mem_dongle_work_mode 
-0x30a4 009031 rtnne dongle_search 
-0x30a5 009032 call g24_dongle_search_mode_init 
-0x30a6 009033 call g24_rx_auto_addr_ch_search 
-0x30a7 009034 call g24_receive_transmit_ack 
-0x30a8 009035 nbranch g24_rx_interrupt_clear ,user3 
-0x30a9 009037 call g24_dongle_search_addr_check 
-0x30aa 009038 call g24_receive_packet_parse ,zero 
-0x30ab 009042 call dongle_check_mode 
-0x30ac 009043 call g24_fetch_mem_dongle_mode_init 
-0x30ad 009045 set1 dongle_work ,pdata 
-0x30ae 009046 call g24_store_mem_dongle_mode_init 
-0x30af 009048 call g24_rx_interrupt_clear 
-0x30b0 009049 call g24_enable_nodata_timer 
-0x30b1 009050 call g24_dongle_search_addr_check 
-0x30b2 009051 branch g24_dg_ch_num_reinit ,zero 
-0x30b3 009052 setarg offset_24g_kb_addr 
-0x30b4 009053 call g24_set_rega_ifetcht_4byte 
-0x30b5 009055 call g24_fetch_mem_addr_isub_temp 
-0x30b6 009056 branch g24_kb_ch_num_reinit ,zero 
-0x30b7 009057 setarg offset_24g_mouse_addr 
-0x30b8 009058 call g24_set_rega_ifetcht_4byte 
-0x30b9 009060 call g24_fetch_mem_addr_isub_temp 
-0x30ba 009061 branch g24_ms_ch_num_reinit ,zero 
-0x30bb 009062 rtn 
-:      009064 g24_dongle_search_addr_check:
-0x30bc 009065 setarg offset_24g_rx_addr 
-0x30bd 009066 call g24_set_rega_ifetcht_4byte 
-:      009068 g24_fetch_mem_addr_isub_temp:
-0x30be 009069 call g24_fetch_mem_addr 
-0x30bf 009071 isub temp ,null 
-0x30c0 009072 rtn 
-:      009074 g24_dg_ch_num_reinit:
-0x30c1 009075 setarg offset_24g_dg_ch_number 
-0x30c2 009076 call g24_set_rega_ifetch_1byte 
-:      009078 g24_current_ch_num_reinit:
-0x30c3 009080 add regc ,offset_24g_current_ch_number ,contw 
-0x30c4 009081 branch g24_contw_istore_1byte 
-:      009083 g24_kb_ch_num_reinit:
-0x30c5 009084 setarg offset_24g_kb_ch_number 
-0x30c6 009085 call g24_set_rega_ifetch_1byte 
-0x30c7 009087 branch g24_current_ch_num_reinit 
-:      009088 g24_ms_ch_num_reinit:
-0x30c8 009089 setarg offset_24g_ms_ch_number 
-0x30c9 009090 call g24_set_rega_ifetch_1byte 
-0x30ca 009092 branch g24_current_ch_num_reinit 
-:      009094 g24_dongle_search_mode_init:
-0x30cb 009095 call g24_fetch_mem_dongle_mode_init 
-0x30cc 009097 rtnbit1 dongle_search 
-0x30cd 009098 set1 dongle_search ,pdata 
-0x30ce 009099 call g24_store_mem_dongle_mode_init 
-0x30cf 009101 call g24_set0_mem_time_slice 
-0x30d0 009103 call g24_set1_mem_ackpayload_enable 
-0x30d1 009105 setarg 0 
-0x30d2 009106 add regc ,offset_rssi_noise_dg_index ,contw 
-0x30d3 009107 istore 3 ,contw 
-0x30d4 009109 arg offset_24g_dg_config_ch_once ,rega 
-0x30d5 009110 call g24_set_contw_with_temp 
-0x30d6 009111 istore 7 ,contw 
-0x30d7 009114 call g24_dongle_search_addr_check 
-0x30d8 009115 nrtn zero 
-0x30d9 009116 add regc ,offset_24g_current_ch_number ,rega 
-0x30da 009117 ifetch 1 ,rega 
-0x30db 009119 arg offset_24g_dg_ch_number ,rega 
-0x30dc 009120 call g24_set_contw_with_regb_store_1byte 
-0x30dd 009122 add regc ,offset_24g_ch ,rega 
-0x30de 009123 ifetch 1 ,rega 
-0x30df 009126 branch g24_store_mem_dg_last_ch 
-:      009128 g24_rx_auto_addr_ch_search:
-0x30e0 009129 bpatch patch18_1 ,mem_patch18 
-0x30e1 009130 call g24_fetch_mem_time_slice 
-0x30e2 009132 increase 1 ,pdata 
-0x30e3 009133 and_into 3 ,pdata 
-0x30e4 009134 call g24_store_mem_time_slice 
-0x30e5 009137 beq 0 ,g24_rx_auto_bind_config_kb 
-0x30e6 009138 beq 1 ,g24_rx_auto_bind_config_dongle 
-0x30e7 009139 beq 2 ,g24_rx_auto_bind_config_mouse 
-0x30e8 009140 beq 3 ,g24_rx_auto_bind_config_dongle 
-0x30e9 009141 rtn 
-:      009143 g24_rx_auto_bind_config_mouse:
-0x30ea 009144 call g24_dongle_bind_ms_payload_cfg 
-0x30eb 009145 setarg offset_24g_mouse_addr 
-0x30ec 009146 call g24_set_rega_ifetch_4byte 
-0x30ed 009148 branch g24_rx_auto_addr_ch_search ,blank 
-0x30ee 009149 call g24_store_mem_addr 
-0x30ef 009151 setarg offset_24g_ms_config_ch_once 
-0x30f0 009152 call g24_set_rega_ifetch_1byte 
-0x30f1 009154 call g24_ms_config_ch_once ,blank 
-0x30f2 009155 setarg offset_24g_ms_last_ch 
-0x30f3 009156 call g24_set_rega_ifetch_1byte 
-0x30f4 009158 call g24_store_mem_ch 
-0x30f5 009160 add regc ,offset_rssi_noise_ms_index ,rega 
-0x30f6 009161 ifetcht 1 ,rega 
-0x30f7 009163 arg mem_rssi_noise_ms_buffer ,rega 
-0x30f8 009164 call rssi_noise_store 
-0x30f9 009165 add regc ,offset_rssi_noise_ms_index ,contw 
-0x30fa 009166 istoret 1 ,contw 
-0x30fb 009168 call g24_noise_rssi_average 
-0x30fc 009169 add regc ,offset_rssi_noise_ms_avg ,contw 
-0x30fd 009170 istoret 1 ,contw 
-0x30fe 009172 sub temp ,rssi_thresh_noise ,null 
-0x30ff 009173 nrtn positive 
-0x3100 009174 setarg offset_24g_ms_ch_number 
-0x3101 009175 call g24_set_rega_ifetcht_1byte 
-0x3102 009177 call g24_ch_temp_incre_size4 
-0x3103 009178 arg offset_24g_ms_ch_number ,rega 
-0x3104 009179 call g24_set_contw_with_regb2 
-0x3105 009180 istoret 1 ,contw 
-:      009182 g24_store_mem_ms_last_ch:
-0x3106 009184 arg offset_24g_ms_last_ch ,rega 
-0x3107 009185 branch g24_set_contw_with_regb_store_1byte 
-:      009187 g24_ms_config_ch_once:
-0x3108 009188 setarg 1 
-0x3109 009189 arg offset_24g_ms_config_ch_once ,rega 
-0x310a 009190 call g24_set_contw_with_regb_store_1byte 
-0x310b 009192 arg 0 ,temp 
-0x310c 009193 call g24_ch_calc 
-0x310d 009196 branch g24_store_mem_ms_last_ch 
-:      009198 g24_rx_auto_bind_config_kb:
-0x310e 009199 call g24_dongle_bind_kb_payload_cfg 
-0x310f 009200 setarg offset_24g_kb_addr 
-0x3110 009201 call g24_set_rega_ifetch_4byte 
-0x3111 009203 branch g24_rx_auto_addr_ch_search ,blank 
-0x3112 009204 call g24_store_mem_addr 
-0x3113 009206 setarg offset_24g_kb_config_ch_once 
-0x3114 009207 call g24_set_rega_ifetch_1byte 
-0x3115 009209 call g24_kb_config_ch_once ,blank 
-0x3116 009210 setarg offset_24g_kb_last_ch 
-0x3117 009211 call g24_set_rega_ifetch_1byte 
-0x3118 009213 call g24_store_mem_ch 
-0x3119 009215 add regc ,offset_rssi_noise_kb_index ,rega 
-0x311a 009216 ifetcht 1 ,rega 
-0x311b 009218 arg mem_rssi_noise_kb_buffer ,rega 
-0x311c 009219 call rssi_noise_store 
-0x311d 009220 add regc ,offset_rssi_noise_kb_index ,contw 
-0x311e 009221 istoret 1 ,contw 
-0x311f 009223 call g24_noise_rssi_average 
-0x3120 009224 add regc ,offset_rssi_noise_kb_avg ,contw 
-0x3121 009225 istoret 1 ,contw 
-0x3122 009227 sub temp ,rssi_thresh_noise ,null 
-0x3123 009228 nrtn positive 
-0x3124 009229 setarg offset_24g_kb_ch_number 
-0x3125 009230 call g24_set_rega_ifetcht_1byte 
-0x3126 009232 call g24_ch_temp_incre_size4 
-0x3127 009233 arg offset_24g_kb_ch_number ,rega 
-0x3128 009234 call g24_set_contw_with_regb2 
-0x3129 009235 istoret 1 ,contw 
-:      009237 g24_store_mem_kb_last_ch:
-0x312a 009239 arg offset_24g_kb_last_ch ,rega 
-0x312b 009240 branch g24_set_contw_with_regb_store_1byte 
-:      009242 g24_kb_config_ch_once:
-0x312c 009243 setarg 1 
-0x312d 009244 arg offset_24g_kb_config_ch_once ,rega 
-0x312e 009245 call g24_set_contw_with_regb_store_1byte 
-0x312f 009247 arg 0 ,temp 
-0x3130 009248 call g24_ch_calc 
-0x3131 009251 branch g24_store_mem_kb_last_ch 
-:      009253 g24_rx_auto_bind_config_dongle:
-0x3132 009254 call g24_dongle_bind_ms_payload_cfg 
-0x3133 009255 call g24_fetch_mem_rx_addr 
-0x3134 009257 call g24_store_mem_addr 
-0x3135 009259 setarg offset_24g_dg_config_ch_once 
-0x3136 009260 call g24_set_rega_ifetch_1byte 
-0x3137 009262 call g24_dg_config_ch_once ,blank 
-0x3138 009263 call g24_dg_store_config_ch 
-0x3139 009264 add regc ,offset_rssi_noise_dg_index ,rega 
-0x313a 009265 ifetcht 1 ,rega 
-0x313b 009267 arg mem_rssi_noise_dg_buffer ,rega 
-0x313c 009268 call rssi_noise_store 
-0x313d 009269 add regc ,offset_rssi_noise_dg_index ,contw 
-0x313e 009270 istoret 1 ,contw 
-0x313f 009272 call g24_noise_rssi_average 
-0x3140 009273 add regc ,offset_rssi_noise_dg_avg ,contw 
-0x3141 009274 istoret 1 ,contw 
-0x3142 009276 sub temp ,rssi_thresh_noise ,null 
-0x3143 009277 nrtn positive 
-0x3144 009278 setarg offset_24g_dg_ch_number 
-0x3145 009279 call g24_set_rega_ifetcht_1byte 
-0x3146 009281 call g24_ch_temp_incre_size4 
-0x3147 009282 arg offset_24g_dg_ch_number ,rega 
-0x3148 009283 call g24_set_contw_with_regb2 
-0x3149 009284 istoret 1 ,contw 
-:      009286 g24_store_mem_dg_last_ch:
-0x314a 009289 arg offset_24g_dg_last_ch ,rega 
-0x314b 009290 branch g24_set_contw_with_regb_store_1byte 
-:      009293 g24_dg_config_ch_once:
-0x314c 009298 setarg 1 
-0x314d 009299 arg offset_24g_dg_config_ch_once ,rega 
-0x314e 009300 call g24_set_contw_with_regb_store_1byte 
-:      009301 g24_dg_store_config_ch:
-0x314f 009302 setarg offset_24g_dg_last_ch 
-0x3150 009303 call g24_set_rega_ifetch_1byte 
-0x3151 009304 branch g24_store_mem_ch 
-:      009307 g24_transmit_ack:
-0x3152 009309 add regc ,offset_24g_rxbuf ,rega 
-0x3153 009310 ifetch 1 ,rega 
-0x3154 009312 call g24_store_mem_data_type 
-0x3155 009315 call g24_read_len_pid_crc 
-0x3156 009317 call g24_fetch_mem_rxbuf_add1 
-0x3157 009319 isolate1 bit_ack_24g ,pdata 
-0x3158 009320 branch g24tx_no_ack ,true 
-:      009321 g24tx_with_ack:
-0x3159 009322 call g24_ackpayload_prep 
-0x315a 009323 call g24_transmit_prep 
-0x315b 009324 call g24_transmit 
-:      009325 g24tx_no_ack:
-0x315c 009326 branch g24_end_of_packet 
-:      009328 g24_ackpayload_prep:
-0x315d 009329 bpatch patch18_2 ,mem_patch18 
-0x315e 009330 add regc ,offset_24g_datalen ,contw 
-0x315f 009331 call g24_mem_set0 
-0x3160 009333 setarg offset_24g_ackpayload_enable 
-0x3161 009334 call g24_set_rega_ifetch_1byte 
-0x3162 009336 rtn blank 
-0x3163 009337 setarg 0x06 
-0x3164 009338 add regc ,offset_24g_datalen ,contw 
-0x3165 009339 istore 1 ,contw 
-0x3166 009341 arg 0x06 ,loopcnt 
-0x3167 009342 setarg offset_24g_bind_payload 
-0x3168 009343 iadd regc ,contr 
-0x3169 009345 add regc ,offset_24g_txbuf ,contw 
-0x316a 009347 branch memcpy 
-:      009350 g24_receive_packet_start:
-0x316b 009351 call g24_receive_transmit_ack 
-0x316c 009352 nbranch g24_rx_interrupt_clear ,user3 
-0x316d 009353 branch g24_receive_packet_parse 
-:      009355 g24_receive_transmit_ack:
-0x316e 009356 call g24_rx_interrupt_clear 
-0x316f 009357 call g24_receive_packet 
-0x3170 009358 nrtn user3 
-0x3171 009359 branch g24_transmit_ack 
-:      009361 g24_receive_packet_parse:
-0x3172 009362 bpatch patch18_3 ,mem_patch18 
-0x3173 009363 call g24_receive_packet_parse_pid_crc 
-0x3174 009364 nbranch g24_rx_interrupt_clear ,user 
-0x3175 009365 add regc ,offset_24g_rxdata_length ,rega 
-0x3176 009366 ifetch 1 ,rega 
-0x3177 009368 branch g24_rx_interrupt_clear ,blank 
-0x3178 009369 increase 2 ,pdata 
-0x3179 009370 iforce loopcnt 
-0x317a 009371 add regc ,offset_24g_rxbuf ,contr 
-0x317b 009373 setarg offset_24g_rxdata_temp 
-0x317c 009374 iadd regc ,contw 
-0x317d 009376 call memcpy 
-0x317e 009377 call g24_set0_mem_mode_switch 
-0x317f 009379 call g24_fetch_mem_pair_mode 
-0x3180 009381 call g24_enable_nodata_timer ,blank 
-0x3181 009382 setarg offset_24g_rxdata_temp_add2 
-0x3182 009383 call g24_set_rega_ifetch_1byte 
-0x3183 009385 beq 0x01 ,g24_data_type1 
-0x3184 009386 beq 0x02 ,g24_data_type2 
-0x3185 009387 beq 0x03 ,g24_data_type3 
-0x3186 009388 beq 0xff ,g24_data_attemp 
-0x3187 009389 branch g24_rx_interrupt_clear 
-:      009391 g24_receive_packet_parse_pid_crc:
-0x3188 009392 call g24_head_ptr2regc 
-0x3189 009393 call disable_user 
-0x318a 009394 add regc ,offset_24g_sta_pid ,rega 
-0x318b 009395 ifetch 1 ,rega 
-0x318c 009397 add regc ,offset_24g_last_pid ,rega 
-0x318d 009398 ifetcht 1 ,rega 
-0x318e 009400 isub temp ,null 
-0x318f 009401 ncall enable_user ,zero 
-0x3190 009402 add regc ,offset_24g_sta_pid ,rega 
-0x3191 009403 ifetch 1 ,rega 
-0x3192 009405 add regc ,offset_24g_last_pid ,contw 
-0x3193 009406 istore 1 ,contw 
-0x3194 009408 add regc ,offset_24g_sta_crc ,rega 
-0x3195 009409 ifetch 3 ,rega 
-0x3196 009411 add regc ,offset_24g_last_crc ,rega 
-0x3197 009412 ifetcht 3 ,rega 
-0x3198 009414 isub temp ,null 
-0x3199 009415 ncall enable_user ,zero 
-0x319a 009416 add regc ,offset_24g_sta_crc ,rega 
-0x319b 009417 ifetch 3 ,rega 
-0x319c 009419 add regc ,offset_24g_last_crc ,contw 
-0x319d 009421 branch g24_contw_istore_3byte 
-:      009423 g24_data_type1:
-0x319e 009424 call g24_ch_timer_reinit 
-0x319f 009425 call g24_fetch_mem_abort_pac 
-0x31a0 009426 store 1 ,mem_temp 
-0x31a1 009428 call g24_fetcht_mem_rxdata_temp 
-0x31a2 009429 fetch 1 ,mem_temp 
-0x31a3 009431 isolate1 bit_abort ,temp 
-0x31a4 009432 setflag true ,0 ,pdata 
-0x31a5 009433 add regc ,offset_24g_abort_pac ,contw 
-0x31a6 009434 istore 1 ,contw 
-0x31a7 009436 beq 1 ,g24_data_attemp_mouse 
-0x31a8 009437 call g24_fetch_mem_hop_pac 
-0x31a9 009439 call g24_fetcht_mem_rxdata_temp 
-0x31aa 009441 isolate1 bit_hop ,temp 
-0x31ab 009442 setflag true ,0 ,pdata 
-0x31ac 009443 call g24_store_mem_hop_pac 
-0x31ad 009445 add regc ,offset_24g_cb_rxdata_type1 ,rega 
-0x31ae 009446 ifetch 2 ,rega 
-0x31af 009448 branch callback_func 
-:      009450 dongle_rxdata_type1:
-0x31b0 009451 setarg ms_report_id 
-0x31b1 009452 store 1 ,mem_usb_mouse_data 
-0x31b2 009453 call g24_fetch_mem_rxdata_temp_add3_7byte 
-0x31b3 009455 istore 7 ,contw 
-0x31b4 009456 call g24_fetch_mem_rxdata_temp_add3_7byte 
-0x31b5 009458 ncall g24_ms_enable_blank_data_forcibly ,blank 
-0x31b6 009459 call g24_fetch_mem_rxdata_temp_add3_7byte 
-0x31b7 009461 call g24_ms_disable_blank_data_forcibly ,blank 
-:      009462 g24_data_type1_usbtx_enable:
-0x31b8 009463 jam usb_ep2_ms ,mem_usb_ep2_data 
-:      009464 g24_data_type1_usbtx_enable_ep2:
-0x31b9 009465 fetch 1 ,mem_usb_tx_enable 
-0x31ba 009466 set1 2 ,pdata 
-0x31bb 009467 store 1 ,mem_usb_tx_enable 
-0x31bc 009468 rtn 
-:      009470 g24_ms_enable_blank_data_forcibly:
-0x31bd 009471 setarg 1 
-0x31be 009472 call g24_store_mem_ms_blank_data_enable 
-:      009474 g24_ms_enable_blank_data_timer:
-0x31bf 009475 setarg timer_ms_blank_delay 
-0x31c0 009476 arg timer_ms_blank ,queue 
-0x31c1 009477 branch timer_init 
-:      009478 g24_ms_disable_blank_data_forcibly:
-0x31c2 009479 call g24_set0_mem_ms_blank_data_enable 
-:      009481 g24_ms_disable_blank_data_timer:
-0x31c3 009482 setarg 0 
-0x31c4 009483 arg timer_ms_blank ,queue 
-0x31c5 009484 branch timer_init 
-:      009486 g24_data_type2:
-0x31c6 009487 call g24_fetcht_mem_rxdata_temp 
-0x31c7 009489 isolate1 bit_abort ,temp 
-0x31c8 009490 branch g24_data_attemp_kbd ,true 
-0x31c9 009491 arg mem_usb_kb_data ,contw 
-0x31ca 009492 call g24_data_type2_reverse_data 
-0x31cb 009493 fetch 8 ,mem_usb_kb_data 
-0x31cc 009494 ncall g24_kb_enable_blank_data_forcibly ,blank 
-0x31cd 009495 fetch 8 ,mem_usb_kb_data 
-0x31ce 009496 call g24_kb_disable_blank_data_forcibly ,blank 
-0x31cf 009497 call g24_head_ptr2regc 
-0x31d0 009498 fetch 8 ,mem_usb_kb_data 
-0x31d1 009499 arg offset_24g_kb_data_sta_data ,rega 
-0x31d2 009500 call g24_set_contw_with_temp 
-0x31d3 009501 istore 8 ,contw 
-0x31d4 009503 setarg offset_24g_kb_data_last_data 
-0x31d5 009504 iadd regc ,rega 
-0x31d6 009505 ifetcht 8 ,rega 
-0x31d7 009507 isub temp ,null 
-0x31d8 009508 ncall g24_kb_data_dispose ,zero 
-0x31d9 009509 setarg offset_24g_kb_data_sta_data 
-0x31da 009510 iadd regc ,rega 
-0x31db 009511 ifetch 8 ,rega 
-0x31dc 009513 arg offset_24g_kb_data_last_data ,rega 
-0x31dd 009514 call g24_set_contw_with_temp 
-0x31de 009515 istore 8 ,contw 
-0x31df 009517 branch g24_rx_interrupt_clear 
-:      009519 g24_data_type2_reverse_data:
-0x31e0 009520 setarg offset_24g_rxdata_temp_add2 
-0x31e1 009521 iadd regc ,contr 
-0x31e2 009523 arg 9 ,loopcnt 
-0x31e3 009524 branch reverse_byte 
-:      009526 g24_kb_enable_blank_data_forcibly:
-0x31e4 009527 setarg 1 
-0x31e5 009528 call g24_store_mem_kb_blank_data_enable 
-:      009530 g24_kb_enable_blank_data_timer:
-0x31e6 009531 setarg timer_kb_blank_delay 
-0x31e7 009532 arg timer_kb_blank ,queue 
-0x31e8 009533 branch timer_init 
-:      009535 g24_kb_disable_blank_data_forcibly:
-0x31e9 009536 call g24_set0_mem_kb_blank_data_enable 
-:      009538 g24_kb_disable_blank_data_timer:
-0x31ea 009539 setarg 0 
-0x31eb 009540 arg timer_kb_blank ,queue 
-0x31ec 009541 branch timer_init 
-:      009543 g24_kb_data_dispose:
-:      009544 g24_kb_data_into_ep1_fifo:
-0x31ed 009545 jam usb_ep1_kb ,mem_usb_ep1_data 
-0x31ee 009546 fetch 1 ,mem_usb_tx_enable 
-0x31ef 009547 set1 1 ,pdata 
-0x31f0 009548 store 1 ,mem_usb_tx_enable 
-0x31f1 009549 rtn 
-:      009551 g24_data_type3:
-0x31f2 009552 arg mem_usb_kb_multikey ,contw 
-0x31f3 009553 call g24_data_type2_reverse_data 
-0x31f4 009554 fetch 2 ,mem_usb_kb_multikey + 1 
-0x31f5 009555 ncall g24_kb_mul_enable_blank_data_forcibly ,blank 
-0x31f6 009556 fetch 2 ,mem_usb_kb_multikey + 1 
-0x31f7 009557 call g24_kb_mul_disable_blank_data_forcibly ,blank 
-0x31f8 009558 call g24_head_ptr2regc 
-0x31f9 009559 fetch 3 ,mem_usb_kb_multikey 
-0x31fa 009560 arg offset_24g_kb_multikey_sta_data ,rega 
-0x31fb 009561 call g24_set_contw_with_temp_store_3byte 
-0x31fc 009563 setarg offset_24g_kb_multikey_last_data 
-0x31fd 009564 iadd regc ,rega 
-0x31fe 009565 ifetcht 3 ,rega 
-0x31ff 009567 isub temp ,null 
-0x3200 009568 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
-0x3201 009569 setarg offset_24g_kb_multikey_sta_data 
-0x3202 009570 iadd regc ,rega 
-0x3203 009571 ifetch 3 ,rega 
-0x3204 009573 arg offset_24g_kb_multikey_last_data ,rega 
-0x3205 009574 call g24_set_contw_with_temp_store_3byte 
-0x3206 009576 branch g24_rx_interrupt_clear 
-:      009578 g24_kb_mul_data_into_ep2_fifo:
-0x3207 009579 jam usb_ep2_multikey ,mem_usb_ep2_data 
-0x3208 009580 branch g24_data_type1_usbtx_enable_ep2 
-:      009582 g24_kb_mul_enable_blank_data_forcibly:
-0x3209 009583 setarg 1 
-0x320a 009584 call g24_store_mem_kb_mul_blank_data_enable 
-:      009586 g24_kb_mul_enable_blank_data_timer:
-0x320b 009587 setarg timer_kb_mul_blank_delay 
-0x320c 009588 arg timer_kb_mul_blank ,queue 
-0x320d 009589 branch timer_init 
-:      009591 g24_kb_mul_disable_blank_data_forcibly:
-0x320e 009592 call g24_set0_mem_kb_mul_blank_data_enable 
-:      009594 g24_kb_mul_disable_blank_data_timer:
-0x320f 009595 setarg 0 
-0x3210 009596 arg timer_kb_mul_blank ,queue 
-0x3211 009597 branch timer_init 
-:      009599 g24_data_attemp:
-0x3212 009600 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x3213 009602 beq datatype_mouse ,g24_data_attemp_mouse 
-0x3214 009603 beq datatype_keyboard ,g24_data_attemp_kbd 
-0x3215 009604 rtn 
-:      009605 g24_data_attemp_mouse:
-0x3216 009606 setarg offset_24g_rxdata_temp_add4 
-0x3217 009607 call g24_set_rega_ifetch_4byte 
-0x3218 009608 arg offset_24g_mouse_addr ,rega 
-0x3219 009609 call g24_set_contw_with_temp 
-0x321a 009612 branch g24_contw_istore_4byte 
-:      009614 g24_data_attemp_kbd:
-0x321b 009615 setarg offset_24g_rxdata_temp_add4 
-0x321c 009616 call g24_set_rega_ifetch_4byte 
-0x321d 009617 arg offset_24g_kb_addr ,rega 
-0x321e 009618 call g24_set_contw_with_temp 
-0x321f 009621 branch g24_contw_istore_4byte 
-:      009623 g24_store_mem_24g_mode:
-0x3220 009624 call g24_head_ptr2regc 
-0x3221 009625 add regc ,offset_24g_mode ,contw 
-0x3222 009626 istore 1 ,contw 
-0x3223 009627 rtn 
-:      009629 g24_fetch_mem_device_addr:
-0x3224 009630 call g24_head_ptr2regc 
-0x3225 009631 add regc ,offset_24g_device_addr ,rega 
-0x3226 009632 branch g24_rega_ifetch_4byte 
-:      009633 g24_store_mem_device_addr:
-0x3227 009634 call g24_head_ptr2regc 
-0x3228 009635 add regc ,offset_24g_device_addr ,contw 
-0x3229 009636 branch g24_contw_istore_4byte 
-:      009638 g24_fetch_mem_addr:
-0x322a 009639 add regc ,offset_24g_addr ,rega 
-0x322b 009640 branch g24_rega_ifetch_4byte 
-:      009641 g24_store_mem_addr:
-0x322c 009642 add regc ,offset_24g_addr ,contw 
-:      009643 g24_contw_istore_4byte:
-0x322d 009644 istore 4 ,contw 
-0x322e 009645 rtn 
-:      009647 g24_store_mem_ch:
-0x322f 009648 add regc ,offset_24g_ch ,contw 
-0x3230 009649 branch g24_contw_istore_1byte 
-:      009651 g24_set0_mem_pid:
-0x3231 009652 setarg 0 
-:      009653 g24_store_mem_pid:
-0x3232 009654 call g24_head_ptr2regc 
-0x3233 009655 add regc ,offset_24g_pid ,contw 
-0x3234 009656 branch g24_contw_istore_1byte 
-:      009658 g24_store_mem_txpayload:
-0x3235 009659 add regc ,offset_24g_txpayload ,contw 
-0x3236 009660 branch g24_contw_istore_1byte 
-:      009662 g24_set4_mem_max_retry:
-0x3237 009663 setarg 4 
-:      009664 g24_store_mem_max_retry:
-0x3238 009665 add regc ,offset_24g_max_retry ,contw 
-0x3239 009666 branch g24_contw_istore_1byte 
-:      009668 g24_fetch_mem_data_type:
-0x323a 009669 add regc ,offset_24g_data_type ,rega 
-0x323b 009670 branch g24_rega_ifetch_1byte 
-:      009671 g24_store_mem_data_type:
-0x323c 009672 add regc ,offset_24g_data_type ,contw 
-0x323d 009673 branch g24_contw_istore_1byte 
-:      009675 g24_set2_mem_sync_cnt:
-0x323e 009676 setarg 2 
-:      009677 g24_store_mem_sync_cnt:
-0x323f 009678 add regc ,offset_24g_sync_cnt ,contw 
-0x3240 009679 branch g24_contw_istore_1byte 
-:      009681 g24_set1_mem_rf_last_sta:
-0x3241 009682 setarg 1 
-:      009683 g24_store_mem_rf_last_sta:
-0x3242 009684 call g24_head_ptr2regc 
-0x3243 009685 add regc ,offset_24g_rf_last_sta ,contw 
-0x3244 009686 branch g24_contw_istore_1byte 
-:      009688 g24_fetch_mem_hop_pac:
-0x3245 009689 call g24_head_ptr2regc 
-0x3246 009690 add regc ,offset_24g_hop_pac ,rega 
-0x3247 009691 branch g24_rega_ifetch_1byte 
-:      009692 g24_set1_mem_hop_pac:
-0x3248 009693 setarg 1 
-:      009694 g24_store_mem_hop_pac:
-0x3249 009695 call g24_head_ptr2regc 
-0x324a 009696 add regc ,offset_24g_hop_pac ,contw 
-0x324b 009697 branch g24_contw_istore_1byte 
-:      009699 g24_fetch_mem_abort_pac:
-0x324c 009700 call g24_head_ptr2regc 
-0x324d 009701 add regc ,offset_24g_abort_pac ,rega 
-0x324e 009702 branch g24_rega_ifetch_1byte 
-:      009703 g24_set1_mem_abort_pac:
-0x324f 009704 setarg 1 
-:      009705 g24_store_mem_abort_pac:
-0x3250 009706 call g24_head_ptr2regc 
-0x3251 009707 add regc ,offset_24g_abort_pac ,contw 
-0x3252 009708 branch g24_contw_istore_1byte 
-:      009710 g24_fetch_mem_pairing_sm:
-0x3253 009711 call g24_head_ptr2regc 
-0x3254 009712 add regc ,offset_24g_pairing_sm ,rega 
-0x3255 009713 branch g24_rega_ifetch_1byte 
-:      009714 g24_store_mem_pairing_sm:
-0x3256 009715 add regc ,offset_24g_pairing_sm ,contw 
-0x3257 009716 branch g24_contw_istore_1byte 
-:      009718 g24_fetch_mem_rf_hop_ch:
-0x3258 009719 add regc ,offset_24g_rf_hop_ch ,rega 
-0x3259 009720 branch g24_rega_ifetch_1byte 
-:      009721 g24_set0_mem_rf_hop_ch:
-0x325a 009722 setarg 0 
-:      009723 g24_store_mem_rf_hop_ch:
-0x325b 009724 add regc ,offset_24g_rf_hop_ch ,contw 
-0x325c 009725 branch g24_contw_istore_1byte 
-:      009727 g24_fetch_mem_rf_work_stage:
-0x325d 009728 add regc ,offset_24g_rf_work_stage ,rega 
-0x325e 009729 branch g24_rega_ifetch_1byte 
-:      009731 g24_fetch_mem_rxbuf_add1:
-0x325f 009732 add regc ,offset_24g_rxbuf_add1 ,rega 
-0x3260 009733 branch g24_rega_ifetch_1byte 
-:      009735 g24_fetch_mem_check_dongle_times:
-0x3261 009736 add regc ,offset_24g_check_dongle_times ,rega 
-0x3262 009737 branch g24_rega_ifetch_1byte 
-:      009738 g24_set0_mem_check_dongle_times:
-0x3263 009739 setarg 0 
-:      009740 g24_store_mem_check_dongle_times:
-0x3264 009741 call g24_head_ptr2regc 
-0x3265 009742 add regc ,offset_24g_check_dongle_times ,contw 
-0x3266 009743 branch g24_contw_istore_1byte 
-:      009745 g24_store_mem_tx_power:
-0x3267 009746 call g24_head_ptr2regc 
-0x3268 009747 add regc ,offset_tx_power_temp ,rega 
-0x3269 009748 ifetch 1 ,rega 
-:      009749 g24_store_mem_txpower:
-0x326a 009750 store 1 ,mem_tx_power 
-0x326b 009751 rtn 
-:      009753 g24_store_mem_tx_power_temp:
-0x326c 009754 call g24_head_ptr2regc 
-0x326d 009755 fetch 1 ,mem_tx_power 
-0x326e 009757 add regc ,offset_tx_power_temp ,contw 
-0x326f 009758 branch g24_contw_istore_1byte 
-:      009760 g24_fetch_mem_power_ctrl_pac:
-0x3270 009761 add regc ,offset_power_ctrl_packet_cnt ,rega 
-0x3271 009762 branch g24_rega_ifetch_1byte 
-:      009764 g24_store_mem_power_ctrl_level:
-0x3272 009765 add regc ,offset_power_ctrl_level ,contw 
-0x3273 009766 branch g24_contw_istore_1byte 
-:      009768 g24_fetcht_mem_rxdata_temp:
-0x3274 009769 setarg offset_24g_rxdata_temp 
-:      009770 g24_set_rega_ifetcht_1byte:
-0x3275 009771 iadd regc ,rega 
-0x3276 009772 ifetcht 1 ,rega 
-0x3277 009773 rtn 
-:      009775 g24_fetch_mem_rf_laststa:
-0x3278 009776 setarg offset_24g_rf_laststa 
-0x3279 009777 branch g24_set_rega_ifetch_1byte 
-:      009778 g24_set0_mem_rf_laststa:
-0x327a 009779 setarg 0 
-:      009780 g24_store_mem_rf_laststa:
-0x327b 009781 arg offset_24g_rf_laststa ,rega 
-0x327c 009782 branch g24_set_contw_with_regb_store_1byte 
-:      009784 g24_fetch_mem_rx_addr:
-0x327d 009785 setarg offset_24g_rx_addr 
-:      009786 g24_set_rega_ifetch_4byte:
-0x327e 009787 call g24_set_rega 
-:      009788 g24_rega_ifetch_4byte:
-0x327f 009789 ifetch 4 ,rega 
-0x3280 009790 rtn 
-:      009792 g24_fetch_mem_time_slice:
-0x3281 009793 setarg offset_24g_time_slice 
-0x3282 009794 branch g24_set_rega_ifetch_1byte 
-:      009795 g24_set0_mem_time_slice:
-0x3283 009796 setarg 0 
-:      009797 g24_store_mem_time_slice:
-0x3284 009798 arg offset_24g_time_slice ,rega 
-0x3285 009799 branch g24_set_contw_with_regb_store_1byte 
-:      009801 g24_set0_mem_mode_switch:
-0x3286 009802 setarg 0 
-:      009803 g24_store_mem_mode_switch:
-0x3287 009804 arg offset_24g_mode_switch ,rega 
-0x3288 009805 branch g24_set_contw_with_regb_store_1byte 
-:      009807 g24_store_mem_bind_payload:
-0x3289 009808 arg offset_24g_bind_payload ,rega 
-0x328a 009809 branch g24_set_contw_with_regb_store_1byte 
-:      009811 g24_fetch_mem_bind_device_status:
-0x328b 009812 setarg offset_dongle_bind_device_status 
-0x328c 009813 branch g24_set_rega_ifetch_1byte 
-:      009814 g24_store_mem_bind_device_status:
-0x328d 009815 arg offset_dongle_bind_device_status ,rega 
-0x328e 009816 branch g24_set_contw_with_regb_store_1byte 
-:      009818 g24_fetch_mem_dongle_work_mode:
-0x328f 009819 setarg offset_dongle_work_mode 
-0x3290 009820 branch g24_set_rega_ifetch_1byte 
-:      009821 g24_set_work_mem_dongle_work_mode:
-0x3291 009822 setarg dongle_work 
-:      009823 g24_store_mem_dongle_work_mode:
-0x3292 009824 arg offset_dongle_work_mode ,rega 
-0x3293 009825 branch g24_set_contw_with_regb_store_1byte 
-:      009827 g24_fetch_mem_dongle_mode_init:
-0x3294 009828 setarg offset_dongle_mode_init 
-0x3295 009829 branch g24_set_rega_ifetch_1byte 
-:      009830 g24_set0_mem_dongle_mode_init:
-0x3296 009831 setarg clear_init 
-:      009832 g24_store_mem_dongle_mode_init:
-0x3297 009833 arg offset_dongle_mode_init ,rega 
-0x3298 009834 branch g24_set_contw_with_regb_store_1byte 
-:      009836 g24_set0_mem_ackpayload_enable:
-0x3299 009837 setarg 0 
-:      009838 g24_store_mem_ackpayload_enable:
-0x329a 009839 arg offset_24g_ackpayload_enable ,rega 
-0x329b 009840 branch g24_set_contw_with_regb_store_1byte 
-:      009841 g24_set1_mem_ackpayload_enable:
-0x329c 009842 setarg 1 
-0x329d 009843 branch g24_store_mem_ackpayload_enable 
-:      009845 g24_fetch_mem_rxdata_temp_add3_7byte:
-0x329e 009846 setarg offset_24g_rxdata_temp_add3 
-0x329f 009847 call g24_set_rega 
-0x32a0 009848 ifetch 7 ,rega 
-0x32a1 009849 rtn 
-:      009851 g24_fetch_mem_nodata_timer_enable:
-0x32a2 009852 setarg offset_24g_nodata_timer_enable 
-0x32a3 009853 branch g24_set_rega_ifetch_1byte 
-:      009854 g24_set0_mem_nodata_timer_enable:
-0x32a4 009855 setarg 0 
-:      009856 g24_store_mem_nodata_timer_enable:
-0x32a5 009857 arg offset_24g_nodata_timer_enable ,rega 
-0x32a6 009858 branch g24_set_contw_with_regb_store_1byte 
-:      009860 g24_set0_mem_ms_blank_data_enable:
-0x32a7 009861 setarg 0 
-:      009862 g24_store_mem_ms_blank_data_enable:
-0x32a8 009863 arg offset_24g_ms_blank_data_enable ,rega 
-0x32a9 009864 branch g24_set_contw_with_regb_store_1byte 
-:      009866 g24_set0_mem_kb_blank_data_enable:
-0x32aa 009867 setarg 0 
-:      009868 g24_store_mem_kb_blank_data_enable:
-0x32ab 009869 arg offset_24g_kb_blank_data_enable ,rega 
-0x32ac 009870 branch g24_set_contw_with_regb_store_1byte 
-:      009872 g24_set0_mem_kb_mul_blank_data_enable:
-0x32ad 009873 setarg 0 
-:      009874 g24_store_mem_kb_mul_blank_data_enable:
-0x32ae 009875 arg offset_24g_kb_mul_blank_data_enable ,rega 
-0x32af 009876 branch g24_set_contw_with_regb_store_1byte 
-:      009878 g24_store_mem_power_ctrl_threshold_up:
-0x32b0 009879 arg offset_power_ctrl_threshold_up ,rega 
-0x32b1 009880 branch g24_set_contw_with_regb_store_1byte 
-:      009882 g24_store_mem_power_ctrl_threshold_down:
-0x32b2 009883 arg offset_power_ctrl_threshold_down ,rega 
-:      009884 g24_set_contw_with_regb_store_1byte:
-0x32b3 009885 call g24_set_contw_with_regb 
-:      009886 g24_contw_istore_1byte:
-0x32b4 009887 istore 1 ,contw 
-0x32b5 009888 rtn 
-:      009890 g24_fetch_mem_pair_mode:
-0x32b6 009891 setarg offset_24g_pair_mode 
-0x32b7 009892 branch g24_set_rega_ifetch_1byte 
-:      009894 g24_store_mem_pair_mode:
-0x32b8 009895 arg offset_24g_pair_mode ,rega 
-0x32b9 009896 branch g24_set_contw_with_regb_store_1byte 
-:      009898 g24_store_mem_pair_txpower:
-0x32ba 009899 setarg offset_24g_pair_txpower 
-0x32bb 009900 call g24_set_rega_ifetch_1byte 
-0x32bc 009901 branch g24_store_mem_txpower 
-:      009903 g24_fetch_mem_rxdata_temp_add3_1byte:
-0x32bd 009904 setarg offset_24g_rxdata_temp_add3 
-0x32be 009905 branch g24_set_rega_ifetch_1byte 
-:      009907 g24_set_contw_with_temp:
-0x32bf 009908 copy pdata ,temp 
-0x32c0 009909 copy rega ,pdata 
-0x32c1 009910 iadd regc ,contw 
-0x32c2 009911 copy temp ,pdata 
-0x32c3 009912 rtn 
-:      009914 g24_set_contw_with_temp_store_3byte:
-0x32c4 009915 call g24_set_contw_with_temp 
-:      009916 g24_contw_istore_3byte:
-0x32c5 009917 istore 3 ,contw 
-0x32c6 009918 rtn 
-:      009920 g24_set_contw_with_regb:
-0x32c7 009921 call g24_head_ptr2regc 
-:      009922 g24_set_contw_with_regb2:
-0x32c8 009923 copy pdata ,regb 
-0x32c9 009924 copy rega ,pdata 
-0x32ca 009925 iadd regc ,contw 
-0x32cb 009926 copy regb ,pdata 
-0x32cc 009927 rtn 
-:      009929 g24_set_rega:
-0x32cd 009930 call g24_head_ptr2regc 
-0x32ce 009931 iadd regc ,rega 
-0x32cf 009932 rtn 
-:      009934 g24_set_rega_ifetch_1byte:
-0x32d0 009935 call g24_set_rega 
-:      009936 g24_rega_ifetch_1byte:
-0x32d1 009937 ifetch 1 ,rega 
-0x32d2 009938 rtn 
-:      009940 g24_set_rega_ifetcht_4byte:
-0x32d3 009941 call g24_set_rega 
-0x32d4 009942 ifetcht 4 ,rega 
-0x32d5 009943 rtn 
-:      009945 g24_mem_set0:
-0x32d6 009946 setarg 0 
-0x32d7 009947 branch g24_contw_istore_1byte 
-:      009951 app_init:
-0x32d8 009952 bpatch patch18_4 ,mem_patch18 
-0x32d9 009953 fetch 1 ,mem_device_option 
-0x32da 009954 branch app_init ,blank 
-0x32db 009956 beq dvc_op_dongle ,dongle_init 
-0x32dc 009957 beq dvc_op_antilost ,antilost_init 
-0x32dd 009958 beq dvc_op_shutter ,shutter_init 
-0x32de 009959 beq dvc_op_module ,module_init 
-0x32df 009960 beq dvc_op_car ,car_init 
-0x32e0 009961 beq dvc_op_remote_car ,remote_car_init 
-0x32e1 009962 bbit1 dvc_op_mouse ,mouse_init 
-0x32e2 009963 rtn 
-:      009965 app_lpm_init:
-0x32e3 009966 bpatch patch18_5 ,mem_patch18 
-0x32e4 009967 jam 0 ,mem_tester_emulate 
-0x32e5 009968 jam 0 ,mem_debug_config 
-0x32e6 009969 jam 0 ,mem_lch_code 
-0x32e7 009970 setarg 0 
-0x32e8 009971 store 5 ,mem_sp_state_start 
-0x32e9 009972 fetch 1 ,mem_device_option 
-0x32ea 009973 branch app_lpm_init ,blank 
-0x32eb 009974 beq dvc_op_module ,module_lpm_init 
-:      009975 app_lpm_init0:
-0x32ec 009976 rtn 
-:      009979 app_process_idle:
-0x32ed 009980 call ui_dispatch 
-0x32ee 009981 call check_51cmd 
-0x32ef 009982 call app_process_bb_event 
-0x32f0 009983 fetch 2 ,mem_cb_idle_process 
-0x32f1 009984 branch callback_func 
-:      009986 app_process_bt:
-0x32f2 009987 fetch 2 ,mem_cb_bt_process 
-0x32f3 009988 branch callback_func 
-:      009990 app_process_ble:
-0x32f4 009991 fetch 2 ,mem_cb_le_process 
-0x32f5 009992 branch callback_func 
-:      009994 app_process_bb_event:
-0x32f6 009995 bpatch patch18_6 ,mem_patch18 
-0x32f7 009997 arg mem_ipc_fifo_bt2c51 ,rega 
-0x32f8 009998 call fifo_out 
-0x32f9 009999 rtn blank 
-0x32fa 010001 copy pdata ,regc 
-0x32fb 010002 call app_event_normal_process 
-0x32fc 010003 branch app_process_bb_event_priority 
-:      010005 app_discard_event:
-0x32fd 010006 arg 0 ,regc 
-0x32fe 010007 rtn 
-:      010012 app_event_normal_process:
-0x32ff 010013 beq bt_evt_bb_connected ,app_evt_bt_conn 
-0x3300 010014 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
-0x3301 010015 beq bt_evt_setup_complete ,app_evt_setup_complete 
-0x3302 010016 beq bt_evt_hid_handshake ,app_evt_hid_handshake 
-0x3303 010017 beq bt_evt_hid_connected ,app_bb_event_hid_connected 
-0x3304 010018 beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
-0x3305 010019 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
-0x3306 010020 beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
-0x3307 010021 beq bt_evt_le_connected ,app_le_event_bb_connected 
-0x3308 010022 beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
-0x3309 010023 beq bt_evt_reconn_started ,app_event_reconn_start 
-0x330a 010024 beq bt_evt_enter_sniff ,app_event_enter_sniff 
-0x330b 010025 beq bt_evt_exit_sniff ,app_event_exit_sniff 
-0x330c 010027 beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
-0x330d 010028 beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
-0x330e 010029 beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
-0x330f 010030 beq bt_evt_switch_success_master ,app_event_switch_success 
-0x3310 010031 rtn 
-:      010034 app_evt_bt_conn:
-0x3311 010035 fetch 2 ,mem_ui_state_map 
-0x3312 010036 set1 ui_state_bt_connected ,pdata 
-0x3313 010037 store 2 ,mem_ui_state_map 
-0x3314 010038 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3315 010039 set0 app_disc_by_button ,pdata 
-0x3316 010040 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3317 010041 rtn 
-:      010043 app_event_switch_success:
-0x3318 010044 jam 0 ,mem_switch_fail_master_count 
-0x3319 010045 rtn 
-:      010047 app_event_switch_fail_master:
-0x331a 010048 fetch 1 ,mem_switch_fail_master_count 
-0x331b 010049 increase 1 ,pdata 
-0x331c 010050 store 1 ,mem_switch_fail_master_count 
-0x331d 010051 sub pdata ,1 ,null 
-0x331e 010052 branch app_bt_role_switch ,positive 
-0x331f 010053 jam 0 ,mem_switch_fail_master_count 
-0x3320 010054 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3321 010055 set1 app_disc_switch_fail ,pdata 
-0x3322 010056 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3323 010057 branch app_bt_disconnect 
-:      010059 app_process_bb_event_priority:
-0x3324 010060 fetch 2 ,mem_cb_bb_event_process 
-0x3325 010061 branch callback_func 
-:      010063 app_check_wake_lock:
-0x3326 010064 fetch 2 ,mem_cb_check_wakelock 
-0x3327 010065 branch callback_func 
-:      010067 app_will_enter_lpm:
-0x3328 010068 fetch 2 ,mem_cb_before_lpm 
-0x3329 010069 branch callback_func 
-:      010071 app_event_linkkey_generate:
-0x332a 010072 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x332b 010073 set1 app_disc_after_pairing ,pdata 
-0x332c 010074 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x332d 010075 branch app_bt_store_reconn_info 
-:      010077 app_event_reconn_start:
-0x332e 010078 fetch 2 ,mem_ui_state_map 
-0x332f 010079 set1 ui_state_bt_reconnect ,pdata 
-0x3330 010080 store 2 ,mem_ui_state_map 
-0x3331 010081 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3332 010082 set1 app_disc_after_reconn ,pdata 
-0x3333 010083 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3334 010084 rtn 
-:      010086 app_evt_setup_complete:
-0x3335 010087 fetch 2 ,mem_ui_state_map 
-0x3336 010088 set1 ui_state_bt_setup_complete ,pdata 
-0x3337 010089 store 2 ,mem_ui_state_map 
-0x3338 010090 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3339 010091 set1 app_disc_after_setup_done ,pdata 
-0x333a 010092 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x333b 010093 rtn 
-:      010095 app_evt_hid_handshake:
-0x333c 010096 fetch 2 ,mem_ui_state_map 
-0x333d 010097 set1 ui_state_bt_hid_handshake ,pdata 
-0x333e 010098 store 2 ,mem_ui_state_map 
-0x333f 010099 rtn 
-:      010101 app_event_enter_sniff:
-0x3340 010102 fetch 2 ,mem_ui_state_map 
-0x3341 010103 set1 ui_state_bt_sniff ,pdata 
-0x3342 010104 store 2 ,mem_ui_state_map 
-0x3343 010105 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3344 010106 set1 app_disc_after_sniff ,pdata 
-0x3345 010107 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3346 010108 rtn 
-:      010110 app_event_exit_sniff:
-0x3347 010111 fetch 2 ,mem_ui_state_map 
-0x3348 010112 set0 ui_state_bt_sniff ,pdata 
-0x3349 010113 store 2 ,mem_ui_state_map 
-0x334a 010114 rtn 
-:      010116 app_le_event_bb_connected:
-0x334b 010117 fetch 2 ,mem_ui_state_map 
-0x334c 010118 set1 ui_state_ble_connected ,pdata 
-0x334d 010119 store 2 ,mem_ui_state_map 
-0x334e 010120 rtn 
-:      010122 app_le_event_bb_disconn:
-0x334f 010123 fetch 2 ,mem_ui_state_map 
-0x3350 010124 set0 ui_state_ble_connected ,pdata 
-0x3351 010125 store 2 ,mem_ui_state_map 
-0x3352 010126 branch app_lpm_mult_disable 
-:      010128 app_bb_event_hid_connected:
-0x3353 010129 fetch 2 ,mem_ui_state_map 
-0x3354 010130 set1 ui_state_bt_hid_conn ,pdata 
-0x3355 010131 store 2 ,mem_ui_state_map 
-0x3356 010132 rtn 
-:      010134 app_evt_button_long_pressed:
-0x3357 010135 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3358 010136 set1 app_disc_by_button ,pdata 
-0x3359 010137 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x335a 010138 rtn 
-:      010140 app_event_ml2cap_conn_refused:
-0x335b 010141 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x335c 010142 set1 app_disc_l2cap_refused ,pdata 
-0x335d 010143 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x335e 010144 branch app_bt_disconnect 
-:      010147 app_evt_timer:
-0x335f 010148 bpatch patch18_7 ,mem_patch18 
-0x3360 010149 store 1 ,mem_app_evt_timer_count 
-:      010150 app_evt_100ms_loop:
-0x3361 010151 fetch 1 ,mem_app_evt_timer_count 
-0x3362 010152 rtn blank 
-0x3363 010153 increase -1 ,pdata 
-0x3364 010154 store 1 ,mem_app_evt_timer_count 
-0x3365 010155 call ui_button_polling 
-0x3366 010156 call app_lpm_wake_auto_lock_timer 
-0x3367 010157 call app_unsniff_delay_timer 
-0x3368 010158 call app_discovery_timer 
-0x3369 010159 call flash_write_spi_sm_timer 
-0x336a 010160 fetch 2 ,mem_cb_event_timer 
-0x336b 010161 call callback_func 
-0x336c 010162 branch app_evt_100ms_loop 
-:      010167 timer_single_step:
-0x336d 010168 ifetch 1 ,regc 
-0x336e 010169 rtn blank 
-0x336f 010170 pincrease -1 
-0x3370 010171 istore 1 ,regc 
-0x3371 010172 nrtn blank 
-0x3372 010173 copy regb ,pdata 
-0x3373 010174 branch callback_func 
-:      010178 timer_single_step_2b:
-0x3374 010179 ifetch 2 ,regc 
-0x3375 010180 rtn blank 
-0x3376 010181 pincrease -1 
-0x3377 010182 istore 2 ,regc 
-0x3378 010183 nrtn blank 
-0x3379 010184 copy regb ,pdata 
-0x337a 010185 branch callback_func 
-:      010187 app_power_timer:
-0x337b 010188 fetcht 2 ,mem_power_param_ptr 
-0x337c 010189 add temp ,power_timer_offset ,regc 
-0x337d 010190 arg app_power_timer_timeout ,regb 
-0x337e 010191 branch timer_single_step 
-:      010193 app_power_timer_timeout:
-0x337f 010194 call app_got_power_state_common 
-0x3380 010195 beq power_starting ,app_enter_power_stanby_state 
-:      010196 app_enter_power_off_state:
-0x3381 010197 branch app_enter_hibernate 
-:      010198 app_enter_power_stanby_state:
-0x3382 010199 setarg power_standby 
-0x3383 010200 istore 1 ,regc 
-0x3384 010201 add temp ,power_standby_cb_offset ,regb 
-:      010202 app_power_cb_common:
-0x3385 010203 ifetch 2 ,regb 
-0x3386 010204 branch callback_func 
-:      010206 app_unsniff_delay_timer:
-0x3387 010207 arg mem_unsniff2sniff_timer_count ,regc 
-0x3388 010208 arg app_unsniff_delay_timeout ,regb 
-0x3389 010209 branch timer_single_step 
-:      010211 app_unsniff_delay_timeout:
-0x338a 010212 call context_check_idle 
-0x338b 010213 branch app_bt_enter_sniff ,zero 
-0x338c 010214 rtn 
-:      010217 app_discovery_timer:
-0x338d 010218 arg mem_discovery_timeout_timer_count ,regc 
-0x338e 010219 arg app_discovery_timeout ,regb 
-0x338f 010220 branch timer_single_step_2b 
-:      010222 app_discovery_timeout:
-0x3390 010223 call app_bt_stop_discovery 
-0x3391 010224 call app_led_off 
-0x3392 010225 fetch 2 ,mem_cb_discovry_timeout 
-0x3393 010226 branch callback_func 
-:      010229 app_bb_event_reconn_failed:
-0x3394 010230 call app_disconn_reason_flag_clear 
-:      010231 app_clear_reconnect_flag:
-0x3395 010232 fetch 2 ,mem_ui_state_map 
-0x3396 010233 set0 ui_state_bt_reconnect ,pdata 
-0x3397 010234 store 2 ,mem_ui_state_map 
-0x3398 010235 rtn 
-:      010237 app_bb_event_bb_disconn:
-0x3399 010238 jam 0 ,mem_unsniff2sniff_timer_count 
-0x339a 010239 fetch 2 ,mem_ui_state_map 
-0x339b 010240 bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
-0x339c 010241 isolate0 ui_state_bt_setup_complete ,pdata 
-0x339d 010242 call app_discard_event ,true 
-:      010243 app_bb_event_bb_reconn_disconn:
-0x339e 010244 bpatch patch19_0 ,mem_patch19 
-0x339f 010245 fetch 2 ,mem_ui_state_map 
-0x33a0 010246 set0 ui_state_bt_connected ,pdata 
-0x33a1 010247 set0 ui_state_bt_setup_complete ,pdata 
-0x33a2 010248 set0 ui_state_bt_hid_conn ,pdata 
-0x33a3 010249 set0 ui_state_bt_hid_handshake ,pdata 
-0x33a4 010250 set0 ui_state_bt_reconnect ,pdata 
-0x33a5 010251 store 2 ,mem_ui_state_map 
-0x33a6 010252 branch app_lpm_mult_disable 
-:      010254 app_bb_hibernate:
-0x33a7 010255 call app_disconn_reason_clear 
-0x33a8 010256 branch app_enter_hibernate 
-:      010259 app_disconn_reason_clear:
-0x33a9 010260 setarg 0 
-0x33aa 010261 store app_disc_rsn_size ,mem_app_disconn_reason 
-0x33ab 010262 rtn 
-:      010263 app_disconn_reason_flag_clear:
-0x33ac 010264 setarg 0 
-0x33ad 010265 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33ae 010266 rtn 
-:      010268 app_disconn_reason_collect_bt:
-0x33af 010269 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b0 010270 store app_disc_rsn_size ,mem_app_disconn_reason 
-0x33b1 010271 setarg 0 
-0x33b2 010272 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b3 010273 rtn 
-:      010275 app_disconn_reason_collect_ble:
-0x33b4 010276 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b5 010277 set1 app_disc_ble ,pdata 
-0x33b6 010278 store app_disc_rsn_size ,mem_app_disconn_reason 
-0x33b7 010279 setarg 0 
-0x33b8 010280 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b9 010281 rtn 
-:      010289 app_check_sniff:
-0x33ba 010290 fetch 1 ,mem_ui_state_map 
-0x33bb 010291 isolate1 ui_state_bt_sniff ,pdata 
-0x33bc 010292 rtn 
-:      010300 app_initflag_store:
-0x33bd 010301 setarg eeprom_init_flag 
-:      010302 app_flag_store:
-0x33be 010303 store 2 ,mem_timeup 
-0x33bf 010304 bpatch patch19_1 ,mem_patch19 
-0x33c0 010305 arg 2 ,temp 
-0x33c1 010306 arg mem_timeup ,rega 
-0x33c2 010307 arg eeprom_module_init_flag ,regb 
-0x33c3 010308 branch iicd_write_eep_data 
-:      010311 app_initflag_check:
-0x33c4 010312 bpatch patch19_2 ,mem_patch19 
-0x33c5 010313 arg 2 ,temp 
-0x33c6 010314 arg mem_pdatatemp ,rega 
-0x33c7 010315 arg eeprom_module_init_flag ,regb 
-0x33c8 010316 call iicd_read_eep_data 
-0x33c9 010317 fetch 2 ,mem_pdatatemp 
-0x33ca 010318 arg eeprom_init_flag ,temp 
-0x33cb 010319 isub temp ,null 
-0x33cc 010320 rtn 
-:      010323 app_start_auto_sniff:
-0x33cd 010324 fetch 1 ,mem_unsniff2sniff_timer 
-0x33ce 010325 store 1 ,mem_unsniff2sniff_timer_count 
-0x33cf 010326 rtn 
-:      010328 app_get_lpm_wake_lock:
-0x33d0 010329 arg wake_lock_app ,queue 
-0x33d1 010330 branch lpm_get_wake_lock 
-:      010332 app_put_lpm_wake_lock:
-0x33d2 010333 arg wake_lock_app ,queue 
-0x33d3 010334 branch lpm_put_wake_lock 
-:      010336 app_lpm_wake_auto_lock:
-0x33d4 010337 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
-0x33d5 010338 branch app_get_lpm_wake_lock 
-:      010340 app_lpm_wake_auto_lock_timer:
-0x33d6 010341 arg mem_wake_up_delay_timer ,regc 
-0x33d7 010342 arg app_put_lpm_wake_lock ,regb 
-0x33d8 010343 branch timer_single_step 
-:      010345 app_l2cap_flow_control_enable:
-0x33d9 010346 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
-0x33da 010347 rtn 
-:      010349 app_l2cap_flow_control_disable:
-0x33db 010350 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
-0x33dc 010351 rtn 
-:      010353 app_bt_set_pincode:
-0x33dd 010354 jam bt_cmd_set_pin_code ,mem_fifo_temp 
-0x33de 010355 branch ui_ipc_send_cmd 
-:      010357 app_bt_role_switch:
-0x33df 010358 jam bt_cmd_role_switch ,mem_fifo_temp 
-0x33e0 010359 branch ui_ipc_send_cmd 
-:      010361 app_bt_start_reconnect:
-0x33e1 010362 bpatch patch19_3 ,mem_patch19 
-0x33e2 010363 fetch 1 ,mem_app_connection_options 
-0x33e3 010364 store 1 ,mem_connection_options 
-0x33e4 010365 jam app_flag_reconnect ,mem_reconnect_flag 
-0x33e5 010366 jam bt_cmd_reconnect ,mem_fifo_temp 
-0x33e6 010367 branch ui_ipc_send_cmd 
-:      010369 app_bt_reconnect_cancel:
-0x33e7 010370 jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
-0x33e8 010371 branch ui_ipc_send_cmd 
-:      010373 app_bt_disconnect:
-0x33e9 010374 jam bt_cmd_disconnect ,mem_fifo_temp 
-0x33ea 010375 branch ui_ipc_send_cmd 
-:      010377 app_bt_start_discovery_short:
-0x33eb 010378 fetch 2 ,mem_discovery_timeout 
-0x33ec 010379 store 2 ,mem_discovery_timeout_timer_count 
-:      010380 app_bt_start_discovery_led_blink:
-0x33ed 010381 call app_led_start_blink 
-:      010382 app_bt_start_discovery:
-0x33ee 010383 jam bt_cmd_start_discovery ,mem_fifo_temp 
-0x33ef 010384 branch ui_ipc_send_cmd 
-:      010386 app_bt_stop_discovery:
-0x33f0 010387 setarg 0 
-0x33f1 010388 store 2 ,mem_discovery_timeout_timer_count 
-0x33f2 010389 jam bt_cmd_stop_discovery ,mem_fifo_temp 
-0x33f3 010390 branch ui_ipc_send_cmd 
-:      010392 app_ble_start_direct_adv:
-0x33f4 010393 jam bt_cmd_start_direct_adv ,mem_fifo_temp 
-0x33f5 010394 branch ui_ipc_send_cmd 
-:      010396 app_ble_stop_direct_adv:
-0x33f6 010397 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
-0x33f7 010398 branch ui_ipc_send_cmd 
-:      010400 app_ble_stop_adv:
-0x33f8 010401 jam bt_cmd_stop_adv ,mem_fifo_temp 
-0x33f9 010402 branch ui_ipc_send_cmd 
-:      010404 app_ble_start_adv:
-0x33fa 010405 jam bt_cmd_start_adv ,mem_fifo_temp 
-0x33fb 010406 branch ui_ipc_send_cmd 
-:      010408 app_ble_start_scan:
-0x33fc 010409 jam bt_cmd_le_start_scan ,mem_fifo_temp 
-0x33fd 010410 branch ui_ipc_send_cmd 
-:      010412 app_ble_stop_scan:
-0x33fe 010413 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
-0x33ff 010414 branch ui_ipc_send_cmd 
-:      010416 app_ble_start_conn:
-0x3400 010417 jam bt_cmd_le_start_conn ,mem_fifo_temp 
-0x3401 010418 branch ui_ipc_send_cmd 
-:      010420 app_ble_disconnect:
-0x3402 010421 jam bt_cmd_le_disconnect ,mem_fifo_temp 
-0x3403 010422 branch ui_ipc_send_cmd 
-:      010424 app_led_start_blink:
-0x3404 010425 jam bt_cmd_led_blink ,mem_fifo_temp 
-0x3405 010426 branch ui_ipc_send_cmd 
-:      010428 app_led_on:
-0x3406 010429 jam bt_cmd_led_on ,mem_fifo_temp 
-0x3407 010430 branch ui_ipc_send_cmd 
-:      010432 app_led_stop_blink:
-:      010433 app_led_off:
-0x3408 010434 jam bt_cmd_led_off ,mem_fifo_temp 
-0x3409 010435 branch ui_ipc_send_cmd 
-:      010437 app_enter_hibernate:
-0x340a 010438 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
-0x340b 010439 branch ui_ipc_send_cmd 
-:      010441 app_bt_sniff_exit:
-0x340c 010442 jam bt_cmd_exit_sniff ,mem_fifo_temp 
-0x340d 010443 branch ui_ipc_send_cmd 
-:      010445 app_bt_enter_sniff:
-0x340e 010446 jam bt_cmd_enter_sniff ,mem_fifo_temp 
-0x340f 010447 branch ui_ipc_send_cmd 
-:      010449 app_ble_store_reconn_info:
-0x3410 010450 jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
-0x3411 010451 branch ui_ipc_send_cmd 
-:      010453 app_bt_store_reconn_info:
-0x3412 010454 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
-0x3413 010455 branch ui_ipc_send_cmd 
-:      010457 app_store_reconn_info:
-0x3414 010458 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
-0x3415 010459 branch ui_ipc_send_cmd 
-:      010461 app_lpm_mult_enable:
-0x3416 010462 set1 mark_lpm_mult_enable ,mark 
-0x3417 010463 rtn 
-:      010465 app_lpm_mult_disable:
-0x3418 010466 set0 mark_lpm_mult_enable ,mark 
-0x3419 010467 rtn 
-:      010487 app_button_long_pressed:
-0x341a 010488 call app_got_power_state_common 
-0x341b 010489 beq power_standby ,app_power_shutting_down 
-:      010490 app_power_starting:
-0x341c 010491 setarg power_starting 
-0x341d 010492 istore 1 ,regc 
-0x341e 010493 add temp ,power_starting_timeout_offset ,rega 
-0x341f 010494 add temp ,power_starting_cb_offset ,regb 
-:      010495 app_power_common:
-0x3420 010496 ifetcht 1 ,rega 
-0x3421 010497 increase 1 ,regc 
-0x3422 010498 istoret 1 ,regc 
-0x3423 010499 branch app_power_cb_common 
-:      010501 app_power_shutting_down:
-0x3424 010502 setarg power_off 
-0x3425 010503 istore 1 ,regc 
-0x3426 010504 fetch 2 ,mem_ui_state_map 
-0x3427 010505 bbit0 ui_state_ble_connected ,app_power_off_end 
-0x3428 010506 call app_ble_disconnect 
-:      010507 app_power_off_end:
-0x3429 010508 fetcht 2 ,mem_power_param_ptr 
-0x342a 010509 add temp ,power_off_timeout_offset ,rega 
-0x342b 010510 add temp ,power_off_cb_offset ,regb 
-0x342c 010511 branch app_power_common 
-:      010513 app_got_power_state_common:
-0x342d 010514 fetcht 2 ,mem_power_param_ptr 
-0x342e 010515 add temp ,power_state_offset ,regc 
-0x342f 010516 ifetch 1 ,regc 
-0x3430 010517 rtn 
-:      010519 app_event_button_up:
-0x3431 010520 call app_got_power_state_common 
-0x3432 010521 bne power_off ,app_power_release 
-0x3433 010522 branch app_enter_hibernate 
-:      010523 app_power_release:
-0x3434 010524 add temp ,ui_butten_up_cb_offset ,regb 
-0x3435 010525 branch app_power_cb_common 
-:      010527 antilost_init:
-0x3436 010528 rtn wake 
-0x3437 010529 jam 0x00 ,core_gpio_sel1 
-0x3438 010530 setarg antilost_le_before_hibernate 
-0x3439 010531 store 2 ,mem_cb_before_hibernate 
-0x343a 010532 setarg keyscan_process_lpm_before 
-0x343b 010533 store 2 ,mem_cb_before_lpm 
-0x343c 010534 setarg antilost_idle_process 
-0x343d 010535 store 2 ,mem_cb_idle_process 
-0x343e 010536 setarg antilost_le_conn_process 
-0x343f 010537 store 2 ,mem_cb_le_process 
-0x3440 010538 setarg antilost_bb_event_process 
-0x3441 010539 store 2 ,mem_cb_bb_event_process 
-0x3442 010540 setarg antilost_le_bb_event_timer 
-0x3443 010541 store 2 ,mem_cb_event_timer 
-0x3444 010542 setarg antilost_le_notification 
-0x3445 010543 store 2 ,mem_cb_ble_transmit 
-0x3446 010544 setarg antilost_lpm_lock_process 
-0x3447 010545 store 2 ,mem_cb_check_wakelock 
-0x3448 010546 setarg antilost_le_receive_data_process 
-0x3449 010547 store 2 ,mem_cb_att_write 
-0x344a 010548 bpatch patch19_4 ,mem_patch19 
-0x344b 010549 call antilost_buzzer_pwm_init 
-0x344c 010550 call keyscan_key_init 
-0x344d 010551 call antilost_adc_init 
-0x344e 010552 call ui_led_init_global 
-0x344f 010553 call ui_button_init 
-0x3450 010554 setarg antilost_key_up_down 
-0x3451 010555 store 2 ,mem_cb_antl_key 
-0x3452 010556 setarg antilost_power_off_cb 
-0x3453 010557 store 2 ,mem_antl_power_off_cb 
-0x3454 010558 setarg antilost_power_starting_cb 
-0x3455 010559 store 2 ,mem_antl_power_starting_cb 
-0x3456 010560 setarg antilost_power_standby_cb 
-0x3457 010561 store 2 ,mem_antl_power_standby_cb 
-0x3458 010562 setarg antilost_led_on_cb 
-0x3459 010563 store 2 ,mem_antl_led_cb_on 
-0x345a 010564 setarg antilost_led_off_cb 
-0x345b 010565 store 2 ,mem_antl_led_cb_off 
-0x345c 010566 setarg antilost_buzzer_on 
-0x345d 010567 store 2 ,mem_antl_buzzer_cb_on 
-0x345e 010568 setarg antilost_buzzer_off 
-0x345f 010569 store 2 ,mem_antl_buzzer_cb_off 
-0x3460 010570 fetch 2 ,mem_ui_state_map 
-0x3461 010571 rtnbit1 ui_state_btn_down 
-0x3462 010572 branch app_enter_hibernate 
-:      010574 antilost_le_before_hibernate:
-0x3463 010575 call antilost_led_buzzer_stop_blink 
-0x3464 010576 branch app_enter_hibernate 
-:      010578 antilost_le_notification:
-0x3465 010579 call le_fifo_check_nearly_full 
-0x3466 010580 nrtn blank 
-0x3467 010581 arg mem_temp_block5 ,rega 
-0x3468 010582 call queue_pop 
-0x3469 010583 nrtn user 
-0x346a 010584 arg mem_temp_block5 ,contr 
-0x346b 010585 branch le_send_notify_from_list 
-:      010587 antilost_power_standby_cb:
-0x346c 010588 fetch 2 ,mem_antl_le_sleep_timeout 
-0x346d 010589 store 2 ,mem_antl_le_sleep_timer 
-0x346e 010590 jam 1 ,mem_antl_key_scan_enable 
-0x346f 010591 branch antilost_fast_adv_start 
-:      010593 antilost_lpm_lock_process:
-0x3470 010594 fetch 1 ,mem_antl_key_state 
-0x3471 010595 beq 1 ,antilost_lpm_ctrl_for_led_buzzer 
-0x3472 010596 fetch 2 ,mem_ui_state_map 
-0x3473 010597 bbit0 ui_state_ble_connected ,antilost_lpm_ctrl_for_led_buzzer 
-0x3474 010598 fetch 1 ,mem_antl_lost_mode 
-0x3475 010599 beq 1 ,app_get_lpm_wake_lock 
-0x3476 010600 fetch 1 ,mem_antl_queue_curr_num 
-0x3477 010601 nbranch app_get_lpm_wake_lock ,blank 
-0x3478 010602 branch app_put_lpm_wake_lock 
-:      010604 antilost_lpm_ctrl_for_led_buzzer:
-0x3479 010605 fetch 1 ,mem_antl_led_state 
-0x347a 010606 fetcht 1 ,mem_antl_buzzer_state 
-0x347b 010607 ior temp ,pdata 
-0x347c 010608 beq 1 ,app_get_lpm_wake_lock 
-0x347d 010609 branch app_put_lpm_wake_lock 
-:      010611 antilost_bb_event_process:
-0x347e 010612 copy regc ,pdata 
-0x347f 010613 beq bt_evt_button_up ,app_event_button_up 
-0x3480 010614 beq bt_evt_button_long_pressed ,app_button_long_pressed 
-0x3481 010615 beq bt_evt_le_connected ,antilost_le_process_conn 
-0x3482 010616 beq bt_evt_le_disconnected ,antilost_le_process_discon 
-0x3483 010617 beq bt_evt_le_parse_conn_papa_update_rsp ,antilost_le_conn_param_update_rsp_recieved 
-0x3484 010618 rtn 
-:      010619 antilost_le_conn_param_update_rsp_recieved:
-0x3485 010620 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x3486 010621 beq ble_signaling_connect_parameter_update_rejected ,antilost_le_conn_param_rejected 
-:      010622 antilost_le_conn_param_accepted:
-0x3487 010623 fetch 2 ,mem_le_new_connslavelatency 
-0x3488 010624 branch antilost_master_nonsupport_latency ,blank 
-:      010625 antilost_le_conn_param_updata_procedure_sucsess:
-0x3489 010626 jam conn_param_updata_procedure_complete ,mem_antl_conn_updata_procedure_state 
-0x348a 010627 jam 60 ,mem_antl_conn_update_timer 
-0x348b 010628 rtn 
-:      010630 antilost_le_conn_param_rejected:
-0x348c 010631 fetch 2 ,mem_le_latency 
-0x348d 010632 branch antilost_conn_param_updata_procedure_faild ,blank 
-:      010633 antilost_conn_param_retransimiting:
-0x348e 010634 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
-0x348f 010635 fetcht 2 ,mem_interval_increment 
-0x3490 010636 fetch 2 ,mem_le_interval_min 
-0x3491 010637 iadd temp ,pdata 
-0x3492 010638 store 2 ,mem_le_interval_min 
-0x3493 010639 copy pdata ,rega 
-0x3494 010640 fetch 2 ,mem_le_interval_max 
-0x3495 010641 iadd temp ,pdata 
-0x3496 010642 store 2 ,mem_le_interval_max 
-0x3497 010643 iadd rega ,pdata 
-0x3498 010644 rshift pdata ,temp 
-0x3499 010645 fetch 2 ,mem_antl_le_unnormal_interval_max 
-0x349a 010646 idiv temp 
-0x349b 010647 call wait_div_end 
-0x349c 010648 quotient pdata 
-0x349d 010649 store 2 ,mem_le_latency 
-0x349e 010650 jam 1 ,mem_antl_send_updata_le_param_timer 
-0x349f 010651 rtn 
-:      010652 antilost_conn_param_updata_procedure_faild:
-0x34a0 010653 jam conn_param_updata_procedure_faild ,mem_antl_conn_updata_procedure_state 
-0x34a1 010654 rtn 
-:      010656 antilost_master_nonsupport_latency:
-0x34a2 010657 jam 0 ,mem_lpm_mult 
-0x34a3 010658 jam 0 ,mem_antl_send_updata_le_param_timer 
-0x34a4 010659 fetch 2 ,mem_le_new_conninterval 
-0x34a5 010660 fetcht 2 ,mem_antl_le_unnormal_interval_min 
-0x34a6 010661 isub temp ,null 
-0x34a7 010662 setflag positive ,0 ,rega 
-0x34a8 010663 fetch 2 ,mem_antl_le_unnormal_interval_max 
-0x34a9 010664 fetcht 2 ,mem_le_new_conninterval 
-0x34aa 010665 isub temp ,pdata 
-0x34ab 010666 setflag positive ,1 ,rega 
-0x34ac 010667 compare 0x03 ,rega ,0x03 
-0x34ad 010668 rtn true 
-0x34ae 010669 fetch 8 ,mem_antl_le_unnormal_interval_min 
-0x34af 010670 store 8 ,mem_le_interval_min 
-0x34b0 010671 jam 1 ,mem_antl_send_updata_le_param_timer 
-0x34b1 010672 rtn 
-:      010675 antilost_le_bb_event_timer:
-0x34b2 010677 call app_power_timer 
-0x34b3 010678 call antilost_double_click_timer 
-0x34b4 010679 call antilost_le_fast_adv_timer 
-0x34b5 010680 call antilost_le_sleep_timer 
-0x34b6 010681 call antilost_app_updata_le_param_timer 
-0x34b7 010682 call antilost_conn_update_timer 
-0x34b8 010683 branch antilost_adc_check_timer 
-:      010686 antilost_double_click_timer:
-0x34b9 010687 arg mem_double_click_timer ,regc 
-0x34ba 010688 arg antilost_double_click_timeout ,regb 
-0x34bb 010689 branch timer_single_step 
-:      010690 antilost_double_click_timeout:
-0x34bc 010691 jam 0 ,mem_butten_click_cnt 
-0x34bd 010692 rtn 
-:      010693 antilost_le_fast_adv_timer:
-0x34be 010694 arg mem_antl_fast_adv_timer ,regc 
-0x34bf 010695 arg antilost_le_fast_adv_timeout ,regb 
-0x34c0 010696 branch timer_single_step_2b 
-:      010697 antilost_le_fast_adv_timeout:
-0x34c1 010698 arg mem_antl_slow_adv_led_style ,regc 
-0x34c2 010699 arg mem_antl_slow_adv_lpm_interval ,regb 
-0x34c3 010700 branch antilost_adv_start_common 
-:      010703 antilost_conn_update_timer:
-0x34c4 010704 arg mem_antl_conn_update_timer ,regc 
-0x34c5 010705 arg antilost_conn_update_timer_time_out ,regb 
-0x34c6 010706 branch timer_single_step 
-:      010708 antilost_conn_update_timer_time_out:
-0x34c7 010709 fetch 2 ,mem_le_latency 
-0x34c8 010710 store 1 ,mem_lpm_mult 
-0x34c9 010711 rtn 
-:      010712 antilost_app_updata_le_param_timer:
-0x34ca 010713 arg mem_antl_send_updata_le_param_timer ,regc 
-0x34cb 010714 arg antilost_app_updata_le_param_timeout ,regb 
-0x34cc 010715 branch timer_single_step 
-:      010716 antilost_app_updata_le_param_timeout:
-0x34cd 010717 fetch 1 ,mem_le_state 
-0x34ce 010718 compare 0 ,pdata ,0x60 
-0x34cf 010719 nbranch antilost_wait_for_updata_param_instant_expire ,true 
-0x34d0 010720 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
-0x34d1 010721 call app_lpm_mult_enable 
-0x34d2 010722 branch le_l2cap_tx_update_req 
-:      010723 antilost_wait_for_updata_param_instant_expire:
-0x34d3 010724 jam 1 ,mem_antl_send_updata_le_param_timer 
-0x34d4 010725 rtn 
-:      010727 antilost_le_sleep_timer:
-0x34d5 010728 arg mem_antl_le_sleep_timer ,regc 
-0x34d6 010729 arg antilost_le_sleep_timer_timeout ,regb 
-0x34d7 010730 branch timer_single_step_2b 
-:      010733 antilost_le_sleep_timer_timeout:
-0x34d8 010734 branch app_button_long_pressed 
-:      010736 antilost_adc_check_timer:
-0x34d9 010739 arg mem_adc_timer ,regc 
-0x34da 010740 arg antilost_adc_check_timer_timeout ,regb 
-0x34db 010741 branch timer_single_step_2b 
-:      010742 antilost_adc_check_timer_timeout:
-0x34dc 010743 fetch 2 ,mem_adc_timeout 
-0x34dd 010744 store 2 ,mem_adc_timer 
-0x34de 010745 branch antilost_battery_process 
-:      010748 antilost_le_process_conn:
-0x34df 010749 fetch 2 ,mem_adc_timeout 
-0x34e0 010750 store 2 ,mem_adc_timer 
-0x34e1 010751 setarg 0 
-0x34e2 010752 store 2 ,mem_antl_fast_adv_timer 
-0x34e3 010753 store 2 ,mem_antl_le_sleep_timer 
-0x34e4 010754 call antilost_alert_off 
-0x34e5 010755 call antilost_led_buzzer_stop_blink 
-0x34e6 010756 jam 0 ,mem_lpm_mult 
-0x34e7 010757 branch app_ble_stop_adv 
-:      010760 antilost_le_process_discon:
-0x34e8 010763 setarg 0 
-0x34e9 010764 store 4 ,mem_adc_timer 
-0x34ea 010765 store 3 ,mem_antl_conn_updata_procedure_state 
-0x34eb 010766 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x34ec 010768 jam 1 ,mem_alarm_config_notfy_cnt 
-0x34ed 010769 fetch 2 ,mem_antl_le_sleep_timeout 
-0x34ee 010770 store 2 ,mem_antl_le_sleep_timer 
-0x34ef 010771 call queue_init 
-0x34f0 010772 fetch 1 ,mem_antl_power_state 
-0x34f1 010773 rtneq power_off 
-0x34f2 010774 call antilost_fast_adv_start 
-0x34f3 010775 branch antilost_on_off_alarm_after_disconn 
-:      010778 antilost_le_conn_process:
-0x34f4 010780 branch antilost_key_process 
-:      010782 antilost_idle_process:
-0x34f5 010784 fetch 1 ,mem_antl_power_state 
-0x34f6 010785 rtnne power_standby 
-0x34f7 010786 branch antilost_key_process 
-:      010791 antilost_power_starting_cb:
-0x34f8 010792 arg mem_antl_power_starting_buzzer_style ,regc 
-0x34f9 010793 call antilost_buzzer_configuration 
-0x34fa 010794 arg mem_antl_power_starting_led_style ,regc 
-:      010795 antilost_power_common:
-0x34fb 010796 branch antilost_led_configuration 
-:      010798 antilost_power_off_cb:
-0x34fc 010799 jam off ,mem_le_adv_enable 
-0x34fd 010800 arg mem_antl_power_off_buzzer_style ,regc 
-0x34fe 010801 call antilost_buzzer_configuration 
-0x34ff 010802 arg mem_antl_power_off_led_style ,regc 
-0x3500 010803 branch antilost_power_common 
-:      010805 antilost_le_receive_data_process:
-0x3501 010806 fetch 1 ,mem_le_att_opcode 
-0x3502 010807 beq attop_write_request ,antilost_le_parse_att_write_request 
-0x3503 010808 rtn 
-:      010809 antilost_le_parse_att_write_request:
-0x3504 010810 fetch 2 ,mem_le_att_handle 
-0x3505 010812 beq new_spec_write_handle ,antilost_cmd_parse_for_application 
-0x3506 010813 beq new_spec_notification_enable_handle ,antilost_notify_alarm_config_first_time 
-0x3507 010814 rtn 
-:      010819 antilost_key_process:
-0x3508 010820 fetch 1 ,mem_antl_key_scan_enable 
-0x3509 010821 rtn blank 
-0x350a 010822 branch keyscan_key_process 
-:      010826 antilost_key_up_down:
-0x350b 010827 copy rega ,pdata 
-0x350c 010828 branch antilost_key_is_up ,blank 
-:      010829 antilost_key_is_down:
-0x350d 010830 copy queue ,pdata 
-0x350e 010831 beq 0 ,antilost_key0_down 
-0x350f 010832 rtn 
-:      010833 antilost_key_is_up:
-0x3510 010834 copy queue ,pdata 
-0x3511 010835 beq 0 ,antilost_key0_up 
-0x3512 010836 rtn 
-:      010838 antilost_key0_down:
-0x3513 010839 jam 1 ,mem_antl_key_state 
-0x3514 010840 arg mem_antl_key_buzzer_style ,regc 
-0x3515 010841 call antilost_buzzer_configuration 
-0x3516 010842 arg mem_antl_key_led_style ,regc 
-0x3517 010843 call antilost_led_configuration 
-0x3518 010844 fetch 2 ,mem_ui_state_map 
-0x3519 010845 bbit0 ui_state_ble_connected ,antilost_butten_down_while_disconn 
-0x351a 010846 branch antilost_butten_down_after_conn 
-:      010848 antilost_key0_up:
-0x351b 010849 jam 0 ,mem_antl_key_state 
-0x351c 010850 branch antilost_double_click_timer_init 
-:      010854 antilost_double_click_timer_init:
-0x351d 010855 fetch 1 ,mem_butten_click_cnt 
-0x351e 010856 rtnne 1 
-0x351f 010857 jam 5 ,mem_double_click_timer 
-0x3520 010858 rtn 
-:      010860 antilost_butten_down_after_conn:
-0x3521 010861 fetch 1 ,mem_butten_click_cnt 
-0x3522 010862 pincrease 1 
-0x3523 010863 store 1 ,mem_butten_click_cnt 
-0x3524 010864 beq 1 ,antilost_click_once 
-0x3525 010865 beq 2 ,antilost_click_twice 
-0x3526 010866 rtn 
-:      010867 antilost_click_once:
-0x3527 010868 call antilost_alert_off 
-0x3528 010869 jam opcode1_butten_click_once ,mem_antl_key0_press + 5 
-0x3529 010870 arg mem_antl_key0_press ,regc 
-0x352a 010871 branch antilost_prepare_data_and_send 
-:      010872 antilost_click_twice:
-0x352b 010873 jam 0 ,mem_butten_click_cnt 
-0x352c 010874 jam opcode2_butten_double_click ,mem_antl_key0_press + 5 
-0x352d 010875 arg mem_antl_key0_press ,regc 
-0x352e 010876 call antilost_prepare_data_and_send 
-0x352f 010877 fetch 1 ,mem_antl_lost_mode 
-0x3530 010878 beq 1 ,antilost_alert_on 
-0x3531 010879 rtn 
-:      010881 antilost_butten_down_while_disconn:
-0x3532 010882 fetch 2 ,mem_antl_le_sleep_timeout 
-0x3533 010883 store 2 ,mem_antl_le_sleep_timer 
-0x3534 010884 call antilost_alert_off 
-0x3535 010885 branch antilost_fast_adv_start 
-:      010888 antilost_cmd_parse_for_application:
-0x3536 010889 bpatch patch19_5 ,mem_patch19 
-0x3537 010890 call le_app_receive_data 
-0x3538 010891 ifetch 1 ,rega 
-0x3539 010892 beq opcode3_antl_start_alram ,antilost_on_of_alram 
-0x353a 010893 beq opcode7_antl_config_alram ,antilost_configuration_for_alram 
-0x353b 010894 rtn 
-:      010896 antilost_on_of_alram:
-0x353c 010897 fetch 1 ,mem_antl_lost_mode 
-0x353d 010898 beq anti_le_alarm_off ,antilost_alert_on 
-0x353e 010899 beq anti_le_alarm_on ,antilost_alert_off 
-0x353f 010900 rtn 
-:      010902 antilost_configuration_for_alram:
-0x3540 010903 ifetch 1 ,regb 
-0x3541 010904 beq 1 ,antilost_set_start_alarm_after_disconn 
-0x3542 010905 beq 0 ,antilost_set_no_alarm_after_disconn 
-0x3543 010906 rtn 
-:      010913 antilost_prepare_data_and_send:
-0x3544 010914 bpatch patch19_6 ,mem_patch19 
-0x3545 010915 fetch 1 ,mem_client_characteristic_configuration_descriptor 
-0x3546 010916 isolate1 notification_enable_bit ,pdata 
-0x3547 010917 nrtn true 
-0x3548 010918 add regc ,6 ,contr 
-0x3549 010919 ifetch 2 ,contr 
-0x354a 010920 byteswap pdata ,pdata 
-0x354b 010921 add pdata ,5 ,loopcnt 
-0x354c 010922 add regc ,3 ,contr 
-0x354d 010923 call calc_check_sum_start 
-0x354e 010924 istore 1 ,contr 
-0x354f 010925 copy regc ,rega 
-0x3550 010926 branch queue_push 
-:      010932 antilost_alert_on:
-0x3551 010933 fetch 1 ,mem_antl_power_state 
-0x3552 010934 rtn blank 
-0x3553 010935 jam 1 ,mem_antl_lost_mode 
-0x3554 010936 arg mem_antl_alert_buzzer_stlye ,regc 
-0x3555 010937 call antilost_buzzer_configuration 
-0x3556 010938 arg mem_antl_alert_led_stlye ,regc 
-0x3557 010939 call antilost_led_configuration 
-0x3558 010940 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
-0x3559 010941 jam 1 ,mem_antl_key0_release + 8 
-0x355a 010942 arg mem_antl_key0_release ,regc 
-0x355b 010943 branch antilost_prepare_data_and_send 
-:      010944 antilost_alert_off:
-0x355c 010945 fetch 1 ,mem_antl_lost_mode 
-0x355d 010946 rtn blank 
-0x355e 010947 jam 0 ,mem_antl_lost_mode 
-0x355f 010948 call antilost_led_buzzer_stop_blink 
-0x3560 010949 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
-0x3561 010950 jam 0 ,mem_antl_key0_release + 8 
-0x3562 010951 arg mem_antl_key0_release ,regc 
-0x3563 010952 branch antilost_prepare_data_and_send 
-:      010954 antilost_set_start_alarm_after_disconn:
-0x3564 010955 jam 1 ,mem_alarm_config 
-0x3565 010956 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
-0x3566 010957 jam 1 ,mem_antl_key0_release + 8 
-0x3567 010958 arg mem_antl_key0_release ,regc 
-0x3568 010959 branch antilost_prepare_data_and_send 
-:      010960 antilost_set_no_alarm_after_disconn:
-0x3569 010961 jam 0 ,mem_alarm_config 
-0x356a 010962 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
-0x356b 010963 jam 0 ,mem_antl_key0_release + 8 
-0x356c 010964 arg mem_antl_key0_release ,regc 
-0x356d 010965 branch antilost_prepare_data_and_send 
-:      010966 antilost_on_off_alarm_after_disconn:
-0x356e 010967 fetch 1 ,mem_alarm_config 
-0x356f 010968 rtn blank 
-0x3570 010969 branch antilost_alert_on 
-:      010971 antilost_notify_alarm_config_first_time:
-0x3571 010972 ifetch 2 ,rega 
-0x3572 010973 store 2 ,mem_client_characteristic_configuration_descriptor 
-0x3573 010974 isolate1 notification_enable_bit ,pdata 
-0x3574 010975 nrtn true 
-0x3575 010976 fetch 1 ,mem_alarm_config_notfy_cnt 
-0x3576 010977 rtn blank 
-0x3577 010978 jam 0 ,mem_alarm_config_notfy_cnt 
-0x3578 010979 fetch 8 ,mem_antl_le_interval_min 
-0x3579 010980 store 8 ,mem_le_interval_min 
-0x357a 010981 jam 2 ,mem_antl_send_updata_le_param_timer 
-0x357b 010982 call antilost_battery_process 
-0x357c 010983 call antilost_battery_calculate_end 
-0x357d 010984 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
-0x357e 010985 fetch 1 ,mem_alarm_config 
-0x357f 010986 store 1 ,mem_antl_key0_release + 8 
-0x3580 010987 arg mem_antl_key0_release ,regc 
-0x3581 010988 branch antilost_prepare_data_and_send 
-:      010992 antilost_buzzer_configuration:
-0x3582 010993 arg 1 ,rega 
-0x3583 010994 branch antilost_configuration_common 
-:      010995 antilost_led_configuration:
-0x3584 010996 arg 0 ,rega 
-:      010997 antilost_configuration_common:
-0x3585 010998 branch antilost_led_buzzer_style_configuration 
-:      011000 antilost_led_buzzer_stop_blink:
-0x3586 011001 arg 0 ,rega 
-0x3587 011002 call ui_led_blink_stop_global 
-0x3588 011003 arg 1 ,rega 
-0x3589 011004 call ui_led_blink_stop_global 
-0x358a 011005 fetch 1 ,mem_buzzer_pwm_conf 
-0x358b 011006 branch pwm_disable 
-:      011008 antilost_led_buzzer_style_configuration:
-0x358c 011009 call calc_curr_struct_prt 
-0x358d 011010 arg 7 ,loopcnt 
-0x358e 011011 branch ui_led_set_style_global + 2 
-:      011015 antilost_fast_adv_start:
-0x358f 011016 arg mem_antl_fast_adv_led_style ,regc 
-0x3590 011017 arg mem_antl_lpm_interval ,regb 
-:      011018 antilost_adv_start_common:
-0x3591 011019 call antilost_adv_interval_lpm_interval_set 
-0x3592 011020 call antilost_led_configuration 
-0x3593 011021 fetch 2 ,mem_antl_fast_adv_timeout 
-0x3594 011022 store 2 ,mem_antl_fast_adv_timer 
-0x3595 011023 branch app_ble_start_adv 
-:      011025 antilost_adv_interval_lpm_interval_set:
-0x3596 011026 ifetch 2 ,regb 
-0x3597 011027 store 2 ,mem_lpm_interval 
-0x3598 011028 ifetch 2 ,contr 
-0x3599 011029 store 2 ,mem_le_adv_interval 
-0x359a 011030 rtn 
-:      011032 antilost_buzzer_pwm_init:
-0x359b 011033 arg 0 ,rega 
-0x359c 011034 call pwm_init 
-0x359d 011035 fetch 6 ,mem_buzzer_pwm_conf 
-0x359e 011036 store 6 ,mem_pdatatemp 
-0x359f 011037 call pwm_out_set 
-0x35a0 011038 fetch 1 ,mem_buzzer_pwm_conf 
-0x35a1 011039 branch pwm_disable 
-:      011041 antilost_led_on_cb:
-0x35a2 011042 jam 1 ,mem_antl_led_state 
-0x35a3 011043 rtn 
-:      011044 antilost_led_off_cb:
-0x35a4 011045 jam 0 ,mem_antl_led_state 
-0x35a5 011046 rtn 
-:      011050 antilost_buzzer_off:
-0x35a6 011051 jam 0 ,mem_antl_buzzer_state 
-0x35a7 011052 fetch 1 ,mem_buzzer_pwm_conf 
-0x35a8 011053 branch pwm_disable 
-:      011055 antilost_buzzer_on:
-0x35a9 011056 jam 1 ,mem_antl_buzzer_state 
-0x35aa 011057 fetch 6 ,mem_buzzer_pwm_conf 
-0x35ab 011058 store 6 ,mem_pdatatemp 
-0x35ac 011059 branch pwm_out_set 
-:      011063 antilost_adc_init:
-0x35ad 011064 jam 0 ,mem_adc_config_flag 
-0x35ae 011065 branch adc_init_data 
-:      011067 antilost_battery_process:
-0x35af 011068 call adc_set_mode 
-0x35b0 011069 call vdd_calculate_by_mode 
-0x35b1 011070 store 2 ,mem_battery_current_voltage 
-0x35b2 011071 arg mem_battery_calculate_set ,rega 
-0x35b3 011072 call adc_bat_percent_lowpower_out 
-0x35b4 011073 store 1 ,mem_voltage_remain_percent 
-0x35b5 011074 beq 0 ,antilost_low_battery 
-0x35b6 011075 sub pdata ,0x64 ,null 
-0x35b7 011076 nbranch antilost_full_battery ,positive 
-0x35b8 011077 store 1 ,mem_antl_key0_release + 8 
-:      011078 antilost_battery_calculate_end:
-0x35b9 011079 jam opcode5_batter_information ,mem_antl_key0_release + 5 
-0x35ba 011080 arg mem_antl_key0_release ,regc 
-0x35bb 011081 branch antilost_prepare_data_and_send 
-:      011082 antilost_full_battery:
-0x35bc 011083 jam 100 ,mem_antl_key0_release + 8 
-0x35bd 011084 branch antilost_battery_calculate_end 
-:      011086 antilost_low_battery:
-0x35be 011087 branch app_button_long_pressed 
-:      011091 car_init:
-0x35bf 011092 rtn wake 
-0x35c0 011093 hfetch 1 ,core_gpio_sel1 
-0x35c1 011094 and_into 0xf0 ,pdata 
-0x35c2 011095 hstore 1 ,core_gpio_sel1 
-0x35c3 011096 setarg car_le_before_hibernate 
-0x35c4 011097 store 2 ,mem_cb_before_hibernate 
-0x35c5 011099 setarg car_le_process_lpm_before 
-0x35c6 011100 store 2 ,mem_cb_before_lpm 
-0x35c7 011102 setarg app_enter_hibernate 
-0x35c8 011103 store 2 ,mem_cb_discovry_timeout 
-0x35c9 011105 setarg car_scale_process_idle 
-0x35ca 011106 store 2 ,mem_cb_idle_process 
-0x35cb 011108 setarg car_scale_process_bb_event 
-0x35cc 011109 store 2 ,mem_cb_bb_event_process 
-0x35cd 011111 setarg app_get_lpm_wake_lock 
-0x35ce 011112 store 2 ,mem_cb_check_wakelock 
-0x35cf 011114 setarg car_le_receive_data 
-0x35d0 011115 store 2 ,mem_cb_att_write 
-0x35d1 011117 setarg car_le_bb_event_timer 
-0x35d2 011118 store 2 ,mem_cb_event_timer 
-0x35d3 011120 call g24_head_ptr2regc 
-0x35d4 011121 setarg car_24g_receive_data 
-0x35d5 011122 add regc ,offset_24g_cb_rxdata_type1 ,contw 
-0x35d6 011123 istore 2 ,contw 
-0x35d7 011125 setarg car_power_off_signal 
-0x35d8 011126 store 2 ,mem_remote_car_power_off_cb 
-0x35d9 011128 setarg car_soft_switch_power_on_signal 
-0x35da 011129 store 2 ,mem_remote_car_power_standby_cb 
-0x35db 011131 bpatch patch19_7 ,mem_patch19 
-0x35dc 011132 call car_init_environment 
-0x35dd 011133 call queue_init 
-0x35de 011134 jam 2 ,mem_lpm_mult 
-0x35df 011135 jam power_on ,mem_car_24g_received_pac 
-0x35e0 011136 fetch 1 ,mem_car_config_soft_switch_enable 
-0x35e1 011137 store 1 ,mem_car_hard_soft_switch 
-0x35e2 011138 beq hard_switch ,car_hard_switch_power_on_signal 
-0x35e3 011139 fetch 1 ,mem_car_config_soft_switch_gpio 
-0x35e4 011140 store 1 ,mem_ui_button_gpio 
-0x35e5 011141 jam off ,mem_le_adv_enable 
-:      011142 car_soft_switch_power_on_init:
-0x35e6 011143 call car_ui_led_init 
-0x35e7 011144 call ui_button_init 
-0x35e8 011145 call ui_button_polling 
-0x35e9 011146 jam power_starting ,mem_car_power_state 
-0x35ea 011147 fetch 2 ,mem_ui_state_map 
-0x35eb 011148 rtnbit1 ui_state_btn_down 
-0x35ec 011149 branch app_enter_hibernate 
-:      011151 car_power_off_signal:
-0x35ed 011152 branch car_ui_led_init 
-:      011154 car_hard_switch_power_on_signal:
-0x35ee 011155 jam power_standby ,mem_car_power_state 
-:      011156 car_soft_switch_power_on_signal:
-0x35ef 011157 jam on ,mem_le_adv_enable 
-0x35f0 011158 call car_ui_led_init 
-0x35f1 011159 arg 0 ,rega 
-0x35f2 011160 call ui_led_blink_start_global 
-0x35f3 011162 setarg fast_adv_interval_value_car 
-0x35f4 011163 call shutter_ble_adv_interval_set 
-:      011164 car_le_modified_name_adv:
-0x35f5 011165 arg mem_le_name + 7 ,contw 
-0x35f6 011166 fetch 1 ,mem_le_lap 
-:      011167 car_name_loop:
-0x35f7 011168 and pdata ,0xF0 ,temp 
-0x35f8 011169 rshift4 temp ,temp 
-0x35f9 011170 call car_hex_to_ascii 
-0x35fa 011171 istoret 1 ,contw 
-0x35fb 011172 and pdata ,0x0F ,temp 
-0x35fc 011173 call car_hex_to_ascii 
-0x35fd 011174 istoret 1 ,contw 
-0x35fe 011175 call le_modified_name_att_list 
-0x35ff 011176 fetcht 1 ,mem_le_name_len 
-0x3600 011177 copy temp ,loopcnt 
-0x3601 011178 arg mem_le_adv_data + 2 ,contw 
-0x3602 011179 arg mem_le_name ,contr 
-0x3603 011180 call memcpy 
-:      011181 car_le_modified_name_scan:
-0x3604 011182 fetcht 1 ,mem_le_name_len 
-0x3605 011183 copy temp ,loopcnt 
-0x3606 011184 arg mem_le_scan_data + 2 ,contw 
-0x3607 011185 arg mem_le_name ,contr 
-0x3608 011186 branch memcpy 
-:      011187 car_hex_to_ascii:
-0x3609 011188 sub temp ,9 ,null 
-0x360a 011189 branch car_hex_num ,positive 
-0x360b 011190 add temp ,55 ,temp 
-0x360c 011191 rtn 
-:      011192 car_hex_num:
-0x360d 011193 add temp ,48 ,temp 
-0x360e 011194 rtn 
-:      011196 car_ui_led_init:
-0x360f 011197 fetch 1 ,mem_car_config_blood_led1_gpio 
-0x3610 011198 bne invalid_pin_num ,car_blood_led_gpio_set 
-:      011199 car_ui_led_init_1:
-0x3611 011200 fetch 1 ,mem_car_config_pairing_led_gpio 
-0x3612 011201 bne invalid_pin_num ,car_pairing_led_gpio_set 
-:      011202 car_ui_led_init_2:
-0x3613 011203 fetch 1 ,mem_car_config_low_voltage_led_gpio 
-0x3614 011204 bne invalid_pin_num ,car_low_voltage_led_gpio_set 
-:      011205 car_ui_led_init_3:
-0x3615 011206 fetch 1 ,mem_car_led_num 
-0x3616 011207 copy pdata ,loopcnt 
-0x3617 011208 setarg mem_car_led_map 
-0x3618 011209 copy pdata ,rega 
-:      011210 car_in_lp1:
-0x3619 011211 copy rega ,contr 
-0x361a 011212 ifetch 1 ,contr 
-0x361b 011213 copy contr ,rega 
-0x361c 011214 beq invalid_pin_num ,car_in_lp1_end 
-0x361d 011215 copy pdata ,temp 
-0x361e 011216 call gpio_config_output 
-:      011217 car_in_lp1_end:
-0x361f 011218 loop car_in_lp1 
-:      011219 car_ui_led_init_end:
-0x3620 011220 rtn 
-:      011221 car_blood_led_gpio_set:
-0x3621 011222 fetch 8 ,mem_car_config_blood_led1_gpio 
-0x3622 011223 store 8 ,mem_car_led_map + 2 
-0x3623 011224 branch car_ui_led_init_1 
-:      011225 car_pairing_led_gpio_set:
-0x3624 011226 store 1 ,mem_car_led_map 
-0x3625 011227 branch car_ui_led_init_2 
-:      011228 car_low_voltage_led_gpio_set:
-0x3626 011229 store 1 ,mem_car_led_map + 1 
-0x3627 011230 branch car_ui_led_init_3 
-:      011233 car_init_environment:
-0x3628 011234 arg 0 ,rega 
-0x3629 011235 call pwm_init 
-0x362a 011236 call car_ir_rx_init 
-0x362b 011237 call g24_receive_process_init 
-0x362c 011238 branch car_init_adc_hvin 
-:      011240 car_init_adc_hvin:
-0x362d 011241 jam 100 ,mem_car_notify_vdd_value_last 
-0x362e 011242 fetch 1 ,mem_car_config_low_voltage_led_gpio 
-0x362f 011243 store 1 ,mem_car_style2_struct_led_gpio 
-0x3630 011244 branch adc_init_data 
-:      011246 car_le_before_hibernate:
-0x3631 011247 call gpio_set_before_lpm_common 
-0x3632 011248 branch keyscan_process_lpm_before 
-:      011250 car_le_process_lpm_before:
-0x3633 011251 branch keyscan_process_lpm_before 
-:      011253 car_key_scan_process:
-0x3634 011256 branch keyscan_key_process 
-:      011258 car_scale_process_idle:
-0x3635 011259 call car_le_send_packet 
-0x3636 011260 call car_ir_receive_process 
-0x3637 011261 call car_g24_status_process 
-0x3638 011262 branch car_key_scan_process 
-:      011264 car_g24_status_process:
-0x3639 011265 fetch 2 ,mem_ui_state_map 
-0x363a 011266 rtnbit1 ui_state_ble_connected 
-0x363b 011267 fetch 1 ,mem_car_24g_received_pac 
-0x363c 011268 beq work_paired ,car_g24_connected_event 
-0x363d 011269 rtn 
-:      011270 car_g24_connected_event:
-0x363e 011271 fetch 1 ,mem_car_24g_status 
-0x363f 011272 rtneq work_paired 
-0x3640 011273 jam work_paired ,mem_car_24g_status 
-0x3641 011274 branch car_g24_connected 
-:      011276 car_le_send_packet:
-0x3642 011277 fetch 2 ,mem_ui_state_map 
-0x3643 011278 rtnbit0 ui_state_ble_connected 
-0x3644 011279 call le_fifo_check_nearly_full 
-0x3645 011280 nrtn blank 
-0x3646 011281 arg mem_car_pop_queue_buff ,rega 
-0x3647 011282 call queue_pop 
-0x3648 011283 nrtn user 
-0x3649 011284 arg mem_car_pop_queue_buff ,contr 
-0x364a 011285 branch le_send_notify_from_list 
-:      011287 car_scale_process_bb_event:
-0x364b 011288 copy regc ,pdata 
-0x364c 011289 beq bt_evt_button_up ,app_event_button_up 
-0x364d 011290 beq bt_evt_button_long_pressed ,app_button_long_pressed 
-0x364e 011291 beq bt_evt_le_connected ,car_scale_event_le_conn 
-0x364f 011292 beq bt_evt_le_disconnected ,car_scale_event_le_discon 
-0x3650 011293 rtn 
-:      011295 car_scale_event_le_conn:
-0x3651 011296 setarg disable_24g 
-0x3652 011297 call g24_store_mem_24g_mode 
-0x3653 011298 branch car_scale_process_conn 
-:      011299 car_g24_connected:
-0x3654 011300 fetch 2 ,mem_car_24g_no_data_timeout_count 
-0x3655 011301 store 2 ,mem_car_24g_no_data_timeout_timer 
-:      011302 car_scale_process_conn:
-0x3656 011303 jam 0x14 ,mem_car_notify_vdd_timer 
-0x3657 011304 jam 0 ,mem_lpm_mode 
-0x3658 011305 call app_ble_stop_adv 
-0x3659 011306 call app_lpm_mult_enable 
-0x365a 011307 fetch 1 ,mem_car_config_pairing_led_conn_status 
-0x365b 011308 beq 0x01 ,car_pairing_led_conn_status_setting 
-:      011309 car_scale_process_conn_next:
-0x365c 011310 arg 0 ,rega 
-0x365d 011311 branch ui_led_on_global 
-:      011312 car_pairing_led_conn_status_setting:
-0x365e 011313 arg 0 ,rega 
-0x365f 011314 branch ui_led_blink_stop_global 
-:      011316 car_scale_event_le_discon:
-0x3660 011317 setarg rx_24g 
-0x3661 011318 call g24_store_mem_24g_mode 
-:      011319 car_g24_disconnect:
-0x3662 011320 setarg 0 
-0x3663 011321 store 5 ,mem_car_led_control 
-0x3664 011322 setarg 4 
-0x3665 011323 call pwm_disable 
-0x3666 011324 setarg 5 
-0x3667 011325 call pwm_disable 
-0x3668 011326 setarg 20 
-0x3669 011327 call pwm_disable 
-0x366a 011328 setarg 21 
-0x366b 011329 call pwm_disable 
-0x366c 011330 setarg 22 
-0x366d 011331 call pwm_disable 
-0x366e 011332 setarg 7 
-0x366f 011333 call pwm_disable 
-0x3670 011334 call queue_init 
-0x3671 011335 jam 10 ,mem_motor1_speed 
-0x3672 011336 jam 10 ,mem_motor2_speed 
-0x3673 011337 jam 10 ,mem_motor3_speed 
-0x3674 011339 jam 2 ,mem_lpm_mult 
-0x3675 011340 arg 0 ,rega 
-0x3676 011341 call ui_led_blink_start_global 
-0x3677 011343 setarg fast_adv_interval_value_car 
-0x3678 011344 call shutter_ble_adv_interval_set 
-0x3679 011345 branch app_ble_start_adv 
-:      011347 car_le_bb_event_timer:
-0x367a 011349 call car_moto1_blank_data_timer 
-0x367b 011350 call car_moto2_blank_data_timer 
-0x367c 011351 call car_moto3_blank_data_timer 
-0x367d 011352 call app_power_timer 
-0x367e 011353 call car_led_control_timer 
-0x367f 011354 call car_notify_vdd_timer 
-0x3680 011355 call car_24g_no_data_timeout_timer 
-0x3681 011356 call car_ir_breakdown_timer 
-0x3682 011357 branch car_attack_shake_timer 
-:      011359 car_ir_breakdown_timer:
-0x3683 011360 arg mem_car_ir_breakdown_check_timer ,regc 
-0x3684 011361 arg car_ir_breakdown_timeout ,regb 
-0x3685 011362 branch timer_single_step 
-:      011363 car_ir_breakdown_timeout:
-0x3686 011364 call car_ir_gpio_get_status 
-0x3687 011365 nrtn true 
-0x3688 011366 jam 1 ,mem_car_ir_breakdown_flag 
-0x3689 011367 rtn 
-:      011369 car_24g_no_data_timeout_timer:
-0x368a 011370 arg mem_car_24g_no_data_timeout_timer ,regc 
-0x368b 011371 arg car_24g_no_data_timer_timeout ,regb 
-0x368c 011372 branch timer_single_step_2b 
-:      011373 car_24g_no_data_timer_timeout:
-0x368d 011374 jam work_search ,mem_car_24g_status 
-0x368e 011375 branch car_g24_disconnect 
-:      011377 car_attack_shake_timer:
-0x368f 011378 arg mem_car_attack_shake_timer ,regc 
-0x3690 011379 arg car_attack_shake ,regb 
-0x3691 011380 branch timer_single_step 
-:      011381 car_attack_shake:
-0x3692 011382 fetch 1 ,mem_car_attack_shake_flag 
-0x3693 011383 branch car_attack_shake_stop ,blank 
-0x3694 011384 jam 2 ,mem_car_attack_shake_timer 
-0x3695 011385 jam 0 ,mem_car_attack_shake_flag 
-0x3696 011386 setarg 0x0a02 
-0x3697 011387 store 2 ,mem_le_receive_payload 
-0x3698 011388 fetch 1 ,mem_car_config_device_select 
-0x3699 011389 beq device_battle_tank ,car_attack_shake_front_battle_tank 
-:      011390 car_attack_shake_front_battle_car:
-0x369a 011391 branch car_motor_control 
-:      011392 car_attack_shake_front_battle_tank:
-0x369b 011393 setarg 0x0a02 
-0x369c 011394 store 2 ,mem_le_receive_payload + 2 
-0x369d 011395 branch car_motor_control 
-:      011396 car_attack_shake_stop:
-0x369e 011397 setarg 0 
-0x369f 011398 store 4 ,mem_le_receive_payload 
-0x36a0 011399 branch car_motor_control 
-:      011401 car_notify_vdd_timer:
-0x36a1 011402 fetch 1 ,mem_car_config_bat_notify_enable 
-0x36a2 011403 rtn blank 
-0x36a3 011404 fetch 2 ,mem_ui_state_map 
-0x36a4 011405 bbit0 ui_state_ble_connected ,car_low_bat_led_off 
-0x36a5 011406 arg mem_car_notify_vdd_timer ,regc 
-0x36a6 011407 arg car_notify_vdd ,regb 
-0x36a7 011408 branch timer_single_step 
-:      011409 car_notify_vdd:
-0x36a8 011410 fetch 1 ,mem_car_notify_vdd_count 
-0x36a9 011411 store 1 ,mem_car_notify_vdd_timer 
-0x36aa 011412 fetch 1 ,mem_car_working_flag 
-0x36ab 011413 nrtn blank 
-:      011414 car_read_hvin:
-0x36ac 011415 call adc_set_mode 
-0x36ad 011416 call vdd_calculate_by_mode 
-0x36ae 011417 store 2 ,mem_vdd_now_vol 
-0x36af 011418 arg mem_vdd_calculate_set ,rega 
-0x36b0 011419 call adc_bat_percent_lowpower_out 
-0x36b1 011420 fetcht 1 ,mem_car_notify_vdd_value_last 
-0x36b2 011421 isub temp ,null 
-0x36b3 011422 branch car_notify_vdd_next2 ,positive 
-0x36b4 011423 store 1 ,mem_car_notify_vdd_value_last 
-0x36b5 011424 copy pdata ,temp 
-:      011425 car_notify_vdd_next2:
-0x36b6 011426 storet 1 ,mem_car_notify_vdd_percent 
-0x36b7 011427 fetch 1 ,mem_car_config_low_voltage_percent 
-0x36b8 011428 isub temp ,null 
-0x36b9 011429 call car_enter_low_bat ,positive 
-0x36ba 011430 storet 1 ,mem_notify_bat_payload 
-0x36bb 011431 arg 6 ,loopcnt 
-0x36bc 011432 arg mem_notify_bat_head ,contr 
-0x36bd 011433 call calc_check_sum_start 
-0x36be 011434 store 1 ,mem_notify_bat_check_sum 
-0x36bf 011435 arg mem_notify_bat_packet ,rega 
-0x36c0 011436 branch queue_push 
-:      011437 car_enter_low_bat:
-0x36c1 011438 fetch 1 ,mem_low_bat_flag 
-0x36c2 011439 nrtn blank 
-0x36c3 011440 jam 1 ,mem_low_bat_flag 
-0x36c4 011441 arg 1 ,rega 
-0x36c5 011442 branch ui_led_blink_start_global 
-:      011443 car_low_bat_led_off:
-0x36c6 011444 arg 1 ,rega 
-0x36c7 011445 branch ui_led_blink_stop_global 
-:      011447 car_led_control_timer:
-0x36c8 011448 arg mem_car_led_control_timer ,regc 
-0x36c9 011449 arg car_led_control ,regb 
-0x36ca 011450 branch timer_single_step 
-:      011451 car_led_control:
-0x36cb 011452 jam 5 ,mem_car_led_control_timer 
-0x36cc 011453 jam 0 ,mem_car_led_no 
-0x36cd 011454 fetch 1 ,mem_car_led_blink_status 
-0x36ce 011455 beq led_on ,car_led_control_blink_off 
-0x36cf 011456 beq led_off ,car_led_control_blink_on 
-:      011457 car_led_control_set:
-0x36d0 011458 arg mem_car_led_control ,contr 
-0x36d1 011459 copy contr ,rega 
-0x36d2 011460 arg 8 ,loopcnt 
-:      011461 car_led_control_timer_next:
-0x36d3 011462 copy rega ,contr 
-0x36d4 011463 ifetch 1 ,contr 
-0x36d5 011464 copy contr ,rega 
-0x36d6 011465 beq led_off ,car_led_control_off 
-0x36d7 011466 beq led_on ,car_led_control_on 
-0x36d8 011467 beq led_blink ,car_led_control_blink 
-:      011468 car_led_control_timer_next_2:
-0x36d9 011469 fetch 1 ,mem_car_led_no 
-0x36da 011470 increase 1 ,pdata 
-0x36db 011471 store 1 ,mem_car_led_no 
-0x36dc 011472 loop car_led_control_timer_next 
-0x36dd 011473 rtn 
-:      011474 car_led_switch:
-0x36de 011475 fetch 1 ,mem_car_led_no 
-0x36df 011476 arg mem_car_config_blood_led_gpio ,regb 
-0x36e0 011477 iadd regb ,regb 
-0x36e1 011478 ifetcht 1 ,regb 
-0x36e2 011479 rtn 
-:      011480 car_led_control_off:
-0x36e3 011481 call car_led_switch 
-0x36e4 011482 call gpio_out_inactive 
-0x36e5 011483 branch car_led_control_timer_next_2 
-:      011484 car_led_control_on:
-0x36e6 011485 call car_led_switch 
-0x36e7 011486 call gpio_out_active 
-0x36e8 011487 branch car_led_control_timer_next_2 
-:      011488 car_led_control_blink:
-0x36e9 011489 fetch 1 ,mem_car_led_blink_status 
-0x36ea 011490 beq led_on ,car_led_control_off 
-0x36eb 011491 branch car_led_control_on 
-:      011492 car_led_control_blink_on:
-0x36ec 011493 jam led_on ,mem_car_led_blink_status 
-0x36ed 011494 branch car_led_control_set 
-:      011495 car_led_control_blink_off:
-0x36ee 011496 jam led_off ,mem_car_led_blink_status 
-0x36ef 011497 branch car_led_control_set 
-:      011501 calc_check_sum_start:
-0x36f0 011502 arg 0 ,rega 
-:      011503 calc_check_sum_loop:
-0x36f1 011504 ifetch 1 ,contr 
-0x36f2 011505 iadd rega ,rega 
-0x36f3 011506 loop calc_check_sum_loop 
-:      011507 calc_check_sum_and:
-0x36f4 011508 and rega ,0xff ,pdata 
-0x36f5 011509 rtn 
-:      011511 car_le_receive_data:
-0x36f6 011512 fetch 1 ,mem_le_att_opcode 
-0x36f7 011513 beq attop_write_request ,car_le_parse_att_write_request 
-0x36f8 011514 rtn 
-:      011515 car_le_parse_att_write_request:
-0x36f9 011516 fetch 2 ,mem_le_att_handle 
-0x36fa 011517 beq att_car_control_handle ,car_control_le_receive 
-0x36fb 011518 rtn 
-:      011530 le_app_receive_data:
-0x36fc 011531 bpatch patch1a_0 ,mem_patch1a 
-0x36fd 011532 ifetch 5 ,rega 
-0x36fe 011533 store 5 ,mem_app_receive_temp 
-0x36ff 011534 fetch 2 ,mem_app_receive_temp 
-0x3700 011535 arg le_receive_packet_head ,temp 
-0x3701 011536 isub temp ,null 
-0x3702 011537 nrtn zero 
-0x3703 011538 fetch 2 ,mem_app_receive_temp + 3 
-0x3704 011539 byteswap pdata ,pdata 
-0x3705 011540 store 2 ,mem_app_receive_temp + 3 
-0x3706 011541 copy pdata ,loopcnt 
-0x3707 011542 increase 5 ,rega 
-0x3708 011543 copy rega ,contr 
-0x3709 011544 arg mem_app_receive_temp + 5 ,contw 
-0x370a 011545 call memcpy 
-0x370b 011546 ifetch 1 ,contr 
-0x370c 011547 store 1 ,mem_app_receive_temp + 15 
-0x370d 011548 arg mem_app_receive_temp + 2 ,rega 
-0x370e 011549 arg mem_app_receive_temp + 5 ,regb 
-0x370f 011550 rtn 
-:      011552 car_control_le_receive:
-0x3710 011553 setarg 0 
-0x3711 011554 store 5 ,mem_le_receive_payload 
-0x3712 011555 store 5 ,mem_le_receive_payload + 5 
-0x3713 011556 call le_app_receive_data 
-0x3714 011557 copy regb ,contr 
-0x3715 011558 arg mem_le_receive_payload ,contw 
-0x3716 011559 arg 10 ,loopcnt 
-0x3717 011560 call memcpy 
-:      011561 car_receive_cmd_select:
-0x3718 011562 bpatch patch1a_1 ,mem_patch1a 
-0x3719 011563 ifetch 1 ,rega 
-0x371a 011564 beq car_cmd_old_car_control ,car_drive_old 
-0x371b 011565 beq car_cmd_old_speed_control ,car_speed_set_old 
-0x371c 011566 beq car_cmd_l_r_motor_control ,car_motor_control 
-0x371d 011567 beq car_cmd_f_b_motor_control ,car_motor_control 
-0x371e 011568 beq car_cmd_ir_control ,car_ir_data_rx_from_app 
-0x371f 011569 beq car_cmd_led_control ,car_led_control_receive 
-0x3720 011570 beq car_cmd_device_info ,car_info_request 
-0x3721 011571 rtn 
-:      011573 car_24g_receive_data:
-0x3722 011574 fetch 2 ,mem_ui_state_map 
-0x3723 011575 rtnbit1 ui_state_ble_connected 
-0x3724 011577 fetch 2 ,mem_car_24g_no_data_timeout_count 
-0x3725 011578 store 2 ,mem_car_24g_no_data_timeout_timer 
-0x3726 011580 jam work_paired ,mem_car_24g_received_pac 
-0x3727 011582 setarg offset_24g_rxdata_temp_add3 
-0x3728 011583 call g24_set_rega 
-0x3729 011584 call car_control_le_receive 
-0x372a 011586 fetch 1 ,mem_app_receive_temp + 2 
-0x372b 011587 beq car_cmd_l_r_motor_control ,car_24g_receive_data_next 
-0x372c 011588 beq car_cmd_f_b_motor_control ,car_24g_receive_data_next 
-0x372d 011589 rtn 
-:      011590 car_24g_receive_data_next:
-0x372e 011591 fetch 1 ,mem_le_receive_payload 
-0x372f 011592 ncall car_moto1_enable_blank_data_timer ,blank 
-0x3730 011593 fetch 1 ,mem_le_receive_payload + 2 
-0x3731 011594 ncall car_moto2_enable_blank_data_timer ,blank 
-0x3732 011595 fetch 1 ,mem_le_receive_payload + 4 
-0x3733 011596 ncall car_moto3_enable_blank_data_timer ,blank 
-0x3734 011597 rtn 
-:      011599 car_moto1_enable_blank_data_timer:
-0x3735 011600 jam 5 ,mem_car_moto1_blank_timer 
-0x3736 011601 rtn 
-:      011602 car_moto2_enable_blank_data_timer:
-0x3737 011603 jam 5 ,mem_car_moto2_blank_timer 
-0x3738 011604 rtn 
-:      011605 car_moto3_enable_blank_data_timer:
-0x3739 011606 jam 5 ,mem_car_moto3_blank_timer 
-0x373a 011607 rtn 
-:      011609 car_moto1_blank_data_timer:
-0x373b 011610 arg mem_car_moto1_blank_timer ,regc 
-0x373c 011611 arg car_moto1_blank_data ,regb 
-0x373d 011612 branch timer_single_step 
-:      011613 car_moto2_blank_data_timer:
-0x373e 011614 arg mem_car_moto2_blank_timer ,regc 
-0x373f 011615 arg car_moto2_blank_data ,regb 
-0x3740 011616 branch timer_single_step 
-:      011617 car_moto3_blank_data_timer:
-0x3741 011618 arg mem_car_moto3_blank_timer ,regc 
-0x3742 011619 arg car_moto3_blank_data ,regb 
-0x3743 011620 branch timer_single_step 
-:      011622 car_moto1_blank_data:
-0x3744 011623 jam 0 ,mem_le_receive_payload 
-0x3745 011624 branch car_motor_control 
-:      011625 car_moto2_blank_data:
-0x3746 011626 jam 0 ,mem_le_receive_payload + 2 
-0x3747 011627 branch car_motor_control 
-:      011628 car_moto3_blank_data:
-0x3748 011629 jam 0 ,mem_le_receive_payload + 4 
-0x3749 011630 branch car_motor_control 
-:      011635 car_drive_old:
-0x374a 011636 call car_left_right_control_old 
-0x374b 011637 branch car_front_back_control_old 
-:      011638 car_left_right_control_old:
-0x374c 011639 fetch 1 ,mem_le_receive_payload 
-0x374d 011640 store 1 ,mem_motor2_status 
-0x374e 011641 branch car_motor2_control 
-:      011642 car_front_back_control_old:
-0x374f 011643 fetch 1 ,mem_motor1_speed 
-0x3750 011644 call car_reset_old_speed 
-0x3751 011645 fetch 1 ,mem_le_receive_payload + 1 
-0x3752 011646 store 1 ,mem_motor1_status 
-0x3753 011647 branch car_motor1_control 
-:      011648 car_reset_old_speed:
-0x3754 011649 beq speed_level_2 ,car_reset_old_speed2 
-0x3755 011650 beq speed_level_3 ,car_reset_old_speed3 
-0x3756 011651 store 1 ,mem_motor1_speed 
-0x3757 011652 rtn 
-:      011653 car_reset_old_speed2:
-0x3758 011654 jam speed_level_5 ,mem_motor1_speed 
-0x3759 011655 rtn 
-:      011656 car_reset_old_speed3:
-0x375a 011657 jam speed_level_10 ,mem_motor1_speed 
-0x375b 011658 rtn 
-:      011659 car_speed_set_old:
-0x375c 011660 fetch 1 ,mem_le_receive_payload 
-0x375d 011661 call car_reset_old_speed 
-0x375e 011662 fetch 1 ,mem_motor1_speed 
-0x375f 011663 call car_motor_speed_duty_setting 
-0x3760 011664 call car_motor_speed_duty_transform 
-0x3761 011665 branch pwm_pwm0_duty_set 
-:      011667 car_motor_control:
-0x3762 011668 fetch 1 ,mem_car_24g_go_die_flag 
-0x3763 011669 nrtn blank 
-0x3764 011670 fetch 6 ,mem_le_receive_payload 
-0x3765 011671 store 6 ,mem_motor1_status 
-0x3766 011672 fetch 1 ,mem_motor1_speed 
-0x3767 011673 fetcht 1 ,mem_motor2_speed 
-0x3768 011674 iand temp ,pdata 
-0x3769 011675 fetcht 1 ,mem_motor3_speed 
-0x376a 011676 iand temp ,pdata 
-0x376b 011677 call car_motor_working_flag ,blank 
-0x376c 011678 bpatch patch1a_2 ,mem_patch1a 
-0x376d 011679 call car_motor1_control 
-0x376e 011680 call car_motor2_control 
-0x376f 011681 branch car_motor3_control 
-:      011682 car_motor1_control:
-0x3770 011683 arg mem_motor1_pwm_set ,regb 
-0x3771 011684 arg mem_motor1_status ,contr 
-0x3772 011685 branch car_motor_status_select 
-:      011686 car_motor2_control:
-0x3773 011687 arg mem_motor2_pwm_set ,regb 
-0x3774 011688 arg mem_motor2_status ,contr 
-0x3775 011689 branch car_motor_status_select 
-:      011690 car_motor3_control:
-0x3776 011691 arg mem_motor3_pwm_set ,regb 
-0x3777 011692 arg mem_motor3_status ,contr 
-0x3778 011693 branch car_motor_status_select 
-:      011694 car_motor_working_flag:
-0x3779 011695 jam 0 ,mem_car_working_flag 
-0x377a 011696 rtn 
-:      011698 car_motor_status_select:
-0x377b 011699 ifetch 1 ,contr 
-0x377c 011700 beq motor_stop ,car_motor_stop 
-0x377d 011701 beq go_front ,car_motor_positive 
-0x377e 011702 beq go_back ,car_motor_negative 
-0x377f 011703 rtn 
-:      011704 car_motor_positive:
-0x3780 011705 jam 0 ,mem_motor_select_p_n 
-0x3781 011706 branch car_motor_negative + 1 
-:      011707 car_motor_negative:
-0x3782 011708 jam 1 ,mem_motor_select_p_n 
-0x3783 011709 ifetch 1 ,contr 
-0x3784 011710 store 1 ,mem_car_motor_speed 
-0x3785 011711 ifetch 8 ,regb 
-0x3786 011712 branch car_motor_work 
-:      011714 car_motor_stop:
-0x3787 011715 ifetch 1 ,regb 
-0x3788 011716 call pwm_disable 
-0x3789 011717 increase 1 ,regb 
-0x378a 011718 ifetch 1 ,regb 
-0x378b 011719 branch pwm_disable 
-:      011720 car_motor_work:
-0x378c 011721 store 8 ,mem_motor_pwm_pin1_set 
-0x378d 011722 jam 1 ,mem_car_working_flag 
-0x378e 011723 fetch 1 ,mem_motor_select_p_n 
-0x378f 011724 beq 0 ,car_motor_select_positive 
-:      011725 car_motor_select_negative:
-0x3790 011726 fetch 1 ,mem_motor_pwm_pin2_set 
-0x3791 011727 store 1 ,mem_motor_pwm_pin_set 
-0x3792 011728 fetch 1 ,mem_motor_pwm_pin1_set 
-:      011729 car_motor_work_next:
-0x3793 011730 call pwm_disable 
-0x3794 011731 fetch 1 ,mem_car_motor_speed 
-0x3795 011732 call car_motor_speed_duty_setting 
-0x3796 011733 store 1 ,mem_motor_pwm_dute_set 
-0x3797 011734 fetch 6 ,mem_motor_pwm_pin_set 
-0x3798 011735 store 6 ,mem_pdatatemp 
-0x3799 011736 branch pwm_out_set 
-:      011737 car_motor_select_positive:
-0x379a 011738 fetch 1 ,mem_motor_pwm_pin1_set 
-0x379b 011739 store 1 ,mem_motor_pwm_pin_set 
-0x379c 011740 fetch 1 ,mem_motor_pwm_pin2_set 
-0x379d 011741 branch car_motor_work_next 
-:      011743 car_motor_speed_duty_setting:
-0x379e 011744 mul32 pdata ,5 ,pdata 
-0x379f 011745 add pdata ,50 ,pdata 
-0x37a0 011746 rtn 
-:      011747 car_motor_speed_duty_transform:
-0x37a1 011748 arg 12000 ,temp 
-0x37a2 011749 imul32 temp ,pdata 
-0x37a3 011750 div pdata ,100 
-0x37a4 011751 call wait_div_end 
-0x37a5 011752 quotient temp 
-0x37a6 011753 copy temp ,rega 
-0x37a7 011754 setarg 12000 
-0x37a8 011755 isub temp ,regb 
-0x37a9 011756 rtn 
-:      011759 car_ir_init:
-0x37aa 011760 hfetch 1 ,core_gpio_sel2 
-0x37ab 011761 set1 2 ,pdata 
-0x37ac 011762 hstore 1 ,core_gpio_sel2 
-0x37ad 011763 setarg 158 
-0x37ae 011764 hstore 2 ,core_pwm_pcnt4 
-0x37af 011765 hstore 2 ,core_pwm_ncnt4 
-0x37b0 011766 rtn 
-:      011768 car_ir_data_rx_from_app:
-0x37b1 011769 fetch 1 ,mem_car_24g_go_die_flag 
-0x37b2 011770 nrtn blank 
-0x37b3 011771 fetch 2 ,mem_le_receive_payload 
-0x37b4 011772 store 2 ,mem_ir_data 
-0x37b5 011773 fetch 1 ,mem_car_24g_status 
-0x37b6 011774 bne work_paired ,car_ir_data_tx 
-0x37b7 011775 fetch 2 ,mem_le_lap 
-0x37b8 011776 store 2 ,mem_ir_data 
-:      011777 car_ir_data_tx:
-0x37b9 011778 bpatch patch1a_3 ,mem_patch1a 
-0x37ba 011779 call car_ir_init 
-0x37bb 011780 call car_ir_enable 
-0x37bc 011781 setarg 48000 
-0x37bd 011782 call sleep 
-0x37be 011783 call car_ir_disable 
-0x37bf 011784 setarg 7200 
-0x37c0 011785 call sleep 
-0x37c1 011786 arg 16 ,loopcnt 
-:      011787 car_ir_send_loop:
-0x37c2 011788 call car_ir_enable 
-0x37c3 011789 fetch 2 ,mem_ir_data 
-0x37c4 011790 bbit1 0 ,car_ir_is_bit1 
-0x37c5 011791 setarg 7200 
-0x37c6 011792 call sleep 
-0x37c7 011793 call car_ir_disable 
-0x37c8 011794 branch car_ir_wait_finish 
-:      011796 car_ir_is_bit1:
-0x37c9 011797 setarg 14400 
-0x37ca 011798 call sleep 
-0x37cb 011799 call car_ir_disable 
-:      011800 car_ir_wait_finish:
-0x37cc 011801 setarg 7200 
-0x37cd 011802 call sleep 
-0x37ce 011803 fetch 2 ,mem_ir_data 
-0x37cf 011804 rshift pdata ,pdata 
-0x37d0 011805 store 2 ,mem_ir_data 
-0x37d1 011806 loop car_ir_send_loop 
-0x37d2 011808 jam 2 ,mem_car_attack_shake_timer 
-0x37d3 011809 jam 1 ,mem_car_attack_shake_flag 
-0x37d4 011810 setarg 0x0a01 
-0x37d5 011811 store 2 ,mem_le_receive_payload 
-0x37d6 011812 fetch 1 ,mem_car_config_device_select 
-0x37d7 011813 beq device_battle_tank ,car_attack_shake_back_battle_tank 
-:      011814 car_attack_shake_back_battle_car:
-0x37d8 011815 branch car_motor_control 
-:      011816 car_attack_shake_back_battle_tank:
-0x37d9 011817 setarg 0x0a01 
-0x37da 011818 store 2 ,mem_le_receive_payload + 2 
-0x37db 011819 branch car_motor_control 
-:      011821 car_ir_enable:
-0x37dc 011822 hfetch 1 ,core_gpio_key2 
-0x37dd 011823 or_into 0x40 ,pdata 
-0x37de 011824 hstore 1 ,core_gpio_key2 
-0x37df 011825 rtn 
-:      011826 car_ir_disable:
-0x37e0 011827 hfetch 1 ,core_gpio_key2 
-0x37e1 011828 and_into 0xbf ,pdata 
-0x37e2 011829 hstore 1 ,core_gpio_key2 
-0x37e3 011830 rtn 
-:      011832 car_ir_rx_init:
-0x37e4 011833 fetch 1 ,mem_car_config_ir_enable 
-0x37e5 011834 rtneq 0x00 
-0x37e6 011835 call lpm_disable_exen_output 
-0x37e7 011836 fetcht 1 ,mem_car_config_ir_rx_gpio 
-0x37e8 011837 storet 1 ,mem_ir_rx_gpio 
-0x37e9 011838 call gpio_config_input 
-0x37ea 011839 call car_ir_gpio_get_status 
-0x37eb 011840 nrtn true 
-0x37ec 011841 jam 1 ,mem_car_ir_breakdown_check_timer 
-0x37ed 011842 rtn 
-:      011844 car_ir_receive_process:
-0x37ee 011845 fetch 1 ,mem_car_config_ir_enable 
-0x37ef 011846 rtneq flag_ir_disable 
-0x37f0 011847 fetch 1 ,mem_car_ir_breakdown_flag 
-0x37f1 011848 nrtn blank 
-0x37f2 011849 fetch 2 ,mem_ui_state_map 
-0x37f3 011850 bbit1 ui_state_ble_connected ,car_ir_receive_process_next 
-0x37f4 011851 fetch 1 ,mem_car_24g_status 
-0x37f5 011852 rtnne work_paired 
-:      011853 car_ir_receive_process_next:
-0x37f6 011854 bpatch patch1a_4 ,mem_patch1a 
-0x37f7 011855 call car_ir_gpio_get_status 
-0x37f8 011856 nrtn true 
-0x37f9 011857 setarg 36000 
-0x37fa 011858 call sleep 
-0x37fb 011859 call car_ir_gpio_get_status 
-0x37fc 011860 nrtn true 
-0x37fd 011861 call car_ir_clk_get 
-:      011862 car_ir_packet_head_wait_end:
-0x37fe 011863 call car_ir_clk_check 
-0x37ff 011864 nrtn positive 
-0x3800 011865 call car_ir_gpio_get_status 
-0x3801 011866 branch car_ir_packet_head_wait_end ,true 
-0x3802 011867 arg 0 ,rega 
-0x3803 011868 arg 16 ,loopcnt 
-0x3804 011869 call car_ir_clk_get 
-:      011870 car_ir_receive_process_loop:
-0x3805 011871 call car_ir_clk_check 
-0x3806 011872 nrtn positive 
-0x3807 011873 call car_ir_gpio_get_status 
-0x3808 011874 nbranch car_ir_receive_process_loop ,true 
-0x3809 011875 setarg 10800 
-0x380a 011876 call sleep 
-0x380b 011877 call car_ir_gpio_get_status 
-0x380c 011878 branch car_ir_get_bit1 ,true 
-:      011879 car_ir_get_bit0:
-0x380d 011880 setarg 0 
-0x380e 011881 rshift rega ,rega 
-0x380f 011882 ior rega ,rega 
-0x3810 011883 loop car_ir_receive_process_loop 
-0x3811 011884 branch car_ir_receive_process_end 
-:      011885 car_ir_get_bit1:
-0x3812 011886 setarg 0x8000 
-0x3813 011887 rshift rega ,rega 
-0x3814 011888 ior rega ,rega 
-0x3815 011889 call car_ir_clk_get 
-:      011890 car_ir_get_bit1_wait_low_end:
-0x3816 011891 call car_ir_clk_check 
-0x3817 011892 nrtn positive 
-0x3818 011893 call car_ir_gpio_get_status 
-0x3819 011894 branch car_ir_get_bit1_wait_low_end ,true 
-0x381a 011895 loop car_ir_receive_process_loop 
-:      011896 car_ir_receive_process_end:
-0x381b 011897 bpatch patch1a_5 ,mem_patch1a 
-0x381c 011898 copy rega ,pdata 
-0x381d 011899 store 2 ,mem_ir_rx_buf 
-0x381e 011900 store 2 ,mem_ir_notify_data + 8 
-0x381f 011901 fetch 1 ,mem_car_24g_status 
-0x3820 011902 beq work_paired ,car_ir_24g_receive_attack 
-:      011903 car_ir_data_notify:
-0x3821 011904 arg 0x07 ,loopcnt 
-0x3822 011905 arg mem_ir_notify_data_head ,contr 
-0x3823 011906 call calc_check_sum_start 
-0x3824 011907 store 1 ,mem_ir_notify_data_check_sum 
-0x3825 011908 arg mem_ir_notify_data ,rega 
-0x3826 011909 branch queue_push 
-:      011911 car_ir_24g_receive_attack:
-0x3827 011912 fetch 1 ,mem_car_24g_ir_receive_attack_count 
-0x3828 011913 increase 1 ,pdata 
-0x3829 011914 store 1 ,mem_car_24g_ir_receive_attack_count 
-0x382a 011915 div pdata ,2 
-0x382b 011916 call wait_div_end 
-0x382c 011917 quotient temp 
-0x382d 011918 remainder pdata 
-0x382e 011919 nbranch car_ir_24g_receive_attack_blink ,blank 
-:      011920 car_ir_24g_receive_attack_off:
-0x382f 011921 fetch 1 ,mem_car_config_led_num 
-0x3830 011922 isub temp ,null 
-0x3831 011923 call car_ir_24g_go_die ,zero 
-0x3832 011924 arg mem_car_led_control ,pdata 
-0x3833 011925 increase -1 ,temp 
-0x3834 011926 iadd temp ,rega 
-0x3835 011927 arg 0 ,pdata 
-0x3836 011928 istore 1 ,rega 
-0x3837 011929 rtn 
-:      011930 car_ir_24g_receive_attack_blink:
-0x3838 011931 arg mem_car_led_control ,pdata 
-0x3839 011932 iadd temp ,rega 
-0x383a 011933 arg 2 ,pdata 
-0x383b 011934 istore 1 ,rega 
-0x383c 011935 rtn 
-:      011936 car_ir_24g_go_die:
-0x383d 011937 jam 1 ,mem_car_24g_go_die_flag 
-0x383e 011938 rtn 
-:      011939 car_ir_clk_get:
-0x383f 011940 copy clkn_bt ,pdata 
-0x3840 011941 store 4 ,mem_ir_receive_clkn 
-0x3841 011942 rtn 
-:      011943 car_ir_clk_check:
-0x3842 011944 copy clkn_bt ,pdata 
-0x3843 011945 fetcht 4 ,mem_ir_receive_clkn 
-0x3844 011946 isub temp ,pdata 
-0x3845 011947 sub pdata ,200 ,null 
-0x3846 011948 rtn 
-:      011950 car_ir_gpio_get_status:
-0x3847 011951 fetcht 1 ,mem_ir_rx_gpio 
-0x3848 011952 branch gpio_get_bit 
-:      011954 car_led_control_receive:
-0x3849 011955 fetch 8 ,mem_le_receive_payload 
-0x384a 011956 store 8 ,mem_car_led_control 
-0x384b 011957 rtn 
-:      011959 car_info_request:
-0x384c 011960 fetch 1 ,mem_car_config_device_select 
-0x384d 011961 store 1 ,mem_car_info_request_payload 
-0x384e 011962 fetch 1 ,mem_car_config_motor_layout 
-0x384f 011963 store 1 ,mem_car_info_request_payload + 1 
-0x3850 011964 fetch 1 ,mem_car_config_ir_enable 
-0x3851 011965 store 1 ,mem_car_info_request_payload + 2 
-0x3852 011966 arg 13 ,loopcnt 
-0x3853 011967 arg mem_car_info_request_head ,contr 
-0x3854 011968 call calc_check_sum_start 
-0x3855 011969 store 1 ,mem_car_info_request_checksum 
-0x3856 011970 arg mem_car_info_request ,rega 
-0x3857 011971 branch queue_push 
-:      011977 light_init:
-0x3858 011978 call clear_eeprom_size_2k 
-0x3859 011979 jam 0x7a ,mem_curr_packet_num 
-0x385a 011980 call light_load_controler_list 
-0x385b 011981 call light_init_crr_cmd_count 
-0x385c 011982 setarg light_pairing_timer 
-0x385d 011983 store 2 ,mem_cb_event_timer 
-0x385e 011984 arg 0 ,rega 
-0x385f 011985 branch pwm_init 
-:      011987 light_pairing_timer:
-0x3860 011988 fetch 2 ,mem_light_pairing_timer 
-0x3861 011989 rtn blank 
-0x3862 011990 increase -1 ,pdata 
-0x3863 011991 store 2 ,mem_light_pairing_timer 
-0x3864 011992 rtnne 0 
-0x3865 011993 jam 0 ,mem_light_pairing_enable 
-0x3866 011994 rtn 
-:      011996 light_init_crr_cmd_count:
-0x3867 011997 bpatch patch1a_6 ,mem_patch1a 
-0x3868 011998 fetch 1 ,mem_light_next_record 
-0x3869 011999 sub pdata ,40 ,null 
-0x386a 012000 rtn positive 
-0x386b 012001 jam 0 ,mem_light_next_record 
-0x386c 012002 rtn 
-:      012004 light_load_controler_list:
-0x386d 012005 arg mem_light_next_record ,rega 
-0x386e 012006 arg 0 ,regb 
-0x386f 012007 arg 81 ,temp 
-0x3870 012008 branch iicd_read_eep_data 
-:      012011 light_find_controler_pairing:
-0x3871 012012 disable user 
-0x3872 012013 fetch 1 ,mem_light_cnum 
-0x3873 012014 copy pdata ,loopcnt 
-0x3874 012016 arg mem_light_clist ,rega 
-0x3875 012017 copy regc ,regb 
-:      012018 light_find_controler_pairing_loop:
-0x3876 012019 bpatch patch1a_7 ,mem_patch1a 
-0x3877 012020 call light_compare_addr_record 
-0x3878 012021 branch enable_user ,zero 
-:      012022 light_find_single_pairing_diff:
-0x3879 012023 increase 4 ,rega 
-0x387a 012024 loop light_find_controler_pairing_loop 
-0x387b 012025 rtn 
-:      012028 light_compare_addr_record:
-0x387c 012029 bpatch patch1b_0 ,mem_patch1b 
-0x387d 012030 ifetch 3 ,rega 
-0x387e 012031 ifetcht 3 ,regb 
-0x387f 012032 isub temp ,null 
-0x3880 012033 rtn 
-:      012035 light_compare_single_record:
-0x3881 012036 bpatch patch1b_1 ,mem_patch1b 
-0x3882 012037 ifetch 3 ,rega 
-0x3883 012038 ifetcht 3 ,regb 
-0x3884 012039 isub temp ,null 
-0x3885 012040 nrtn zero 
-0x3886 012041 ifetch 1 ,contr 
-0x3887 012042 sub pdata ,0 ,null 
-0x3888 012043 rtn zero 
-0x3889 012044 add rega ,3 ,contr 
-0x388a 012045 ifetcht 1 ,contr 
-0x388b 012046 isub temp ,null 
-0x388c 012047 rtn 
-:      012050 light_find_controler_cmd:
-0x388d 012051 bpatch patch1b_2 ,mem_patch1b 
-0x388e 012052 disable user 
-0x388f 012053 fetch 1 ,mem_light_cnum 
-0x3890 012054 copy pdata ,loopcnt 
-0x3891 012056 arg mem_light_clist ,rega 
-0x3892 012057 copy regc ,regb 
-:      012058 light_find_controler_cmd_loop:
-0x3893 012059 call light_compare_single_record 
-0x3894 012060 branch enable_user ,zero 
-0x3895 012061 increase 4 ,rega 
-0x3896 012062 loop light_find_controler_cmd_loop 
-0x3897 012063 rtn 
-:      012066 light_recv_adv:
-0x3898 012067 fetch 1 ,mem_le_scanrsp_rcv 
-0x3899 012068 increase 1 ,pdata 
-0x389a 012069 store 1 ,mem_le_scanrsp_rcv 
-0x389b 012070 arg mem_le_rxbuf + 12 ,regc 
-:      012072 light_anylize_command:
-0x389c 012073 ifetch 2 ,regc 
-0x389d 012074 arg 0x55aa ,temp 
-0x389e 012075 isub temp ,null 
-0x389f 012076 nrtn zero 
-0x38a0 012077 copy contr ,regc 
-0x38a1 012078 ifetcht 3 ,regc 
-0x38a2 012079 setarg 0xffffff 
-0x38a3 012080 isub temp ,null 
-0x38a4 012081 branch light_parse_cmd ,zero 
-0x38a5 012082 call light_find_controler_cmd 
-0x38a6 012083 branch light_parse_cmd ,user 
-0x38a7 012084 rtn 
-:      012086 light_parse_cmd:
-0x38a8 012087 bpatch patch1b_3 ,mem_patch1b 
-0x38a9 012088 increase 4 ,regc 
-0x38aa 012089 ifetch 1 ,regc 
-0x38ab 012090 fetcht 1 ,mem_curr_packet_num 
-0x38ac 012091 isub temp ,null 
-0x38ad 012092 rtn zero 
-0x38ae 012093 store 1 ,mem_curr_packet_num 
-0x38af 012094 fetch 1 ,mem_le_req_rcv 
-0x38b0 012095 increase 1 ,pdata 
-0x38b1 012096 store 1 ,mem_le_req_rcv 
-0x38b2 012098 increase 1 ,regc 
-0x38b3 012099 ifetch 1 ,regc 
-0x38b4 012100 store 1 ,mem_light_crr_cmd_count 
-0x38b5 012101 copy pdata ,loopcnt 
-0x38b6 012102 rtn blank 
-:      012103 light_parse_cmd_loop:
-0x38b7 012104 ifetch 1 ,contr 
-0x38b8 012105 beq light_cmd_pwm0 ,light_parse_cmd_pwm0 
-0x38b9 012106 beq light_cmd_pwm1 ,light_parse_cmd_pwm1 
-0x38ba 012107 beq light_cmd_pwm2 ,light_parse_cmd_pwm2 
-0x38bb 012108 beq light_cmd_pwm3 ,light_parse_cmd_pwm3 
-0x38bc 012109 beq light_cmd_pwm4 ,light_parse_cmd_pwm4 
-0x38bd 012110 beq light_cmd_pwm5 ,light_parse_cmd_pwm5 
-0x38be 012111 beq light_cmd_auto_mode ,light_parse_auto_mode 
-0x38bf 012112 beq light_cmd_pairing ,light_parse_pairing 
-0x38c0 012113 loop light_parse_cmd_loop 
-0x38c1 012114 rtn 
-:      012116 light_parse_cmd_pwm0:
-0x38c2 012117 copy contr ,regc 
-0x38c3 012118 fetch 1 ,mem_light_pwm0 
-0x38c4 012119 store 1 ,mem_pdatatemp 
-0x38c5 012120 arg 0 ,temp 
-:      012121 light_parse_cmd_pwm_common:
-0x38c6 012122 storet 1 ,mem_pdatatemp + 1 
-0x38c7 012123 setarg 10000 
-0x38c8 012124 store 3 ,mem_pdatatemp + 2 
-0x38c9 012125 ifetch 1 ,regc 
-0x38ca 012126 store 1 ,mem_pdatatemp + 5 
-0x38cb 012127 call pwm_out_set 
-0x38cc 012128 and regc ,1 ,contr 
-0x38cd 012129 loop light_parse_cmd_loop 
-0x38ce 012130 rtn 
-:      012131 light_parse_cmd_pwm1:
-0x38cf 012132 copy regc ,contr 
-0x38d0 012133 fetch 1 ,mem_light_pwm1 
-0x38d1 012134 store 1 ,mem_pdatatemp 
-0x38d2 012135 arg 1 ,temp 
-0x38d3 012136 branch light_parse_cmd_pwm_common 
-:      012137 light_parse_cmd_pwm2:
-0x38d4 012138 copy regc ,contr 
-0x38d5 012139 fetch 1 ,mem_light_pwm2 
-0x38d6 012140 store 1 ,mem_pdatatemp 
-0x38d7 012141 arg 2 ,temp 
-0x38d8 012142 branch light_parse_cmd_pwm_common 
-:      012143 light_parse_cmd_pwm3:
-0x38d9 012144 copy regc ,contr 
-0x38da 012145 fetch 1 ,mem_light_pwm3 
-0x38db 012146 store 1 ,mem_pdatatemp 
-0x38dc 012147 arg 3 ,temp 
-0x38dd 012148 branch light_parse_cmd_pwm_common 
-:      012149 light_parse_cmd_pwm4:
-0x38de 012150 copy regc ,contr 
-0x38df 012151 fetch 1 ,mem_light_pwm4 
-0x38e0 012152 store 1 ,mem_pdatatemp 
-0x38e1 012153 arg 4 ,temp 
-0x38e2 012154 branch light_parse_cmd_pwm_common 
-:      012155 light_parse_cmd_pwm5:
-0x38e3 012156 copy regc ,contr 
-0x38e4 012157 fetch 1 ,mem_light_pwm5 
-0x38e5 012158 store 1 ,mem_pdatatemp 
-0x38e6 012159 arg 5 ,temp 
-0x38e7 012160 branch light_parse_cmd_pwm_common 
-:      012162 light_parse_auto_mode:
-0x38e8 012163 ifetch 1 ,contr 
-0x38e9 012164 rtn 
-:      012166 light_parse_pairing:
-0x38ea 012167 copy contr ,regc 
-0x38eb 012168 fetch 1 ,mem_light_pairing_enable 
-0x38ec 012169 bne 1 ,light_parse_pairing_abandon 
-0x38ed 012170 call update_controler_list 
-:      012171 light_parse_pairing_abandon:
-0x38ee 012172 and regc ,4 ,contr 
-0x38ef 012173 rtn 
-:      012174 update_controler_list:
-0x38f0 012175 bpatch patch1b_4 ,mem_patch1b 
-0x38f1 012176 call light_find_controler_pairing 
-0x38f2 012177 branch update_conrtoler_list_found ,user 
-0x38f3 012178 fetch 1 ,mem_light_next_record 
-0x38f4 012179 copy pdata ,temp 
-0x38f5 012180 increase 1 ,pdata 
-0x38f6 012181 store 1 ,mem_light_next_record 
-0x38f7 012182 call light_init_crr_cmd_count 
-0x38f8 012183 lshift2 temp ,temp 
-0x38f9 012184 setarg mem_light_clist 
-0x38fa 012185 iadd temp ,contw 
-0x38fb 012186 ifetch 4 ,regc 
-0x38fc 012187 istore 4 ,contw 
-0x38fd 012188 branch update_conrtoler_store_list 
-:      012189 update_conrtoler_list_found:
-0x38fe 012190 add regc ,3 ,contr 
-0x38ff 012191 ifetch 1 ,contr 
-0x3900 012192 rtn blank 
-0x3901 012193 ifetch 4 ,regc 
-0x3902 012194 istore 4 ,rega 
-:      012195 update_conrtoler_store_list:
-0x3903 012196 arg mem_light_next_record ,rega 
-0x3904 012197 arg 0 ,regb 
-0x3905 012198 arg 81 ,temp 
-0x3906 012199 branch iicd_write_eep_data 
-:      012203 lightc_init:
-0x3907 012207 fetcht 1 ,mem_lightc_led_gpio 
-0x3908 012208 call gpio_out_inactive 
-0x3909 012209 rtn 
-:      012212 lightc_dispatch:
-0x390a 012215 fetcht 1 ,mem_lightc_led_gpio 
-0x390b 012216 call gpio_out_active 
-0x390c 012219 fetcht 1 ,mem_lightc_led_gpio 
-0x390d 012220 call gpio_out_inactive 
-0x390e 012223 call lightc_start_adv 
-0x390f 012225 fetch 1 ,mem_adv_time 
-0x3910 012226 nrtn blank 
-0x3911 012228 call lpm_write_gpio_wakeup 
-0x3912 012229 hfetch 4 ,core_lpm_ctrl 
-0x3913 012230 set0 15 ,pdata 
-0x3914 012231 hstore 4 ,core_lpm_reg 
-0x3915 012232 call lpm_write_ctrl 
-0x3916 012233 arg param_hibernate_clks ,temp 
-0x3917 012234 branch lpm_sleep 
-:      012236 lightc_adv:
-0x3918 012237 fetch 1 ,mem_adv_time 
-0x3919 012238 branch le_adv_loop_tx ,blank 
-0x391a 012239 increase -1 ,pdata 
-0x391b 012240 store 1 ,mem_adv_time 
-0x391c 012241 branch le_adv_loop_tx 
-:      012243 lightc_start_adv:
-0x391d 012244 mul32 pdata ,20 ,pdata 
-0x391e 012245 arg mem_cmd0_string ,contr 
-0x391f 012246 iadd contr ,contr 
-0x3920 012247 ifetch 1 ,contr 
-0x3921 012248 rtn blank 
-0x3922 012249 copy pdata ,rega 
-0x3923 012250 copy rega ,loopcnt 
-0x3924 012251 arg mem_le_adv_data + 2 ,contw 
-0x3925 012252 call memcpy 
-0x3926 012253 copy rega ,pdata 
-0x3927 012254 increase 2 ,pdata 
-0x3928 012255 store 1 ,mem_le_adv_data_len 
-0x3929 012256 rtn 
-:      012263 module_init:
-0x392a 012265 rtn wake 
-0x392b 012266 call le_modified_name 
-0x392c 012267 call adc_init_data 
-0x392d 012268 setarg module_process_idle 
-0x392e 012269 store 2 ,mem_cb_idle_process 
-0x392f 012270 setarg module_bt_conn_process 
-0x3930 012271 store 2 ,mem_cb_bt_process 
-0x3931 012272 setarg module_process_bb_event 
-0x3932 012273 store 2 ,mem_cb_bb_event_process 
-0x3933 012274 setarg module_le_conn_process 
-0x3934 012275 store 2 ,mem_cb_le_process 
-0x3935 012276 setarg module_lpm_lock 
-0x3936 012277 store 2 ,mem_cb_check_wakelock 
-0x3937 012278 setarg module_hci_cmd_transmit_le_notify 
-0x3938 012279 store 2 ,mem_cb_ble_transmit 
-0x3939 012280 setarg module_hci_event_receive_spp_data 
-0x393a 012281 store 2 ,mem_cb_receive_spp_data 
-0x393b 012282 setarg module_le_receive_data 
-0x393c 012283 store 2 ,mem_cb_att_write 
-0x393d 012284 setarg module_bb_event_timer 
-0x393e 012285 store 2 ,mem_cb_event_timer 
-0x393f 012287 call module_spp_clear_last_transmite_clock 
-0x3940 012288 bpatch patch1b_5 ,mem_patch1b 
-0x3941 012289 call module_lpm_uart_init 
-0x3942 012290 call module_gpio_init 
-0x3943 012291 call check_module_disabled 
-0x3944 012292 branch module_hci_event_enter_standby_mode 
-:      012295 module_lpm_uart_init:
-0x3945 012296 fetch 4 ,mem_module_uart_rx_buffer 
-0x3946 012297 hstore 4 ,core_uart_rsaddr 
-0x3947 012299 fetch 4 ,mem_module_uart_tx_buffer 
-0x3948 012300 hstore 4 ,core_uart_tsaddr 
-0x3949 012302 hfetch 1 ,core_gpio_sel1 
-0x394a 012303 or_into 0x04 ,pdata 
-0x394b 012304 and_into 0xfc ,pdata 
-0x394c 012305 hstore 1 ,core_gpio_sel1 
-0x394d 012306 jam 0x00 ,core_uart_ctrl 
-0x394e 012308 fetch 2 ,mem_module_uart_rx_buffer 
-0x394f 012309 hstore 2 ,core_uart_rrptr 
-0x3950 012310 fetch 2 ,mem_module_uart_tx_buffer 
-0x3951 012311 hstore 2 ,core_uart_twptr 
-0x3952 012312 hstore 2 ,core_uart_trptrp 
-0x3953 012314 hfetch 4 ,core_gpio_pu0 
-0x3954 012315 set1 7 ,pdata 
-0x3955 012316 hstore 4 ,core_gpio_pu0 
-0x3956 012318 hfetch 2 ,core_clkoff 
-0x3957 012319 set0 clock_off_uart ,pdata 
-0x3958 012320 hstore 2 ,core_clkoff 
-0x3959 012321 call uart_set_baud_by_mem 
-0x395a 012322 jam uartclk_crystal ,core_uart_clksel 
-0x395b 012323 jam uart_ctrl_h4 ,core_uart_ctrl 
-0x395c 012325 fetch 1 ,mem_module_flag 
-0x395d 012326 isolate1 module_flag_uart_flow_control ,pdata 
-0x395e 012327 hfetcht 1 ,core_uart_ctrl 
-0x395f 012328 setflag true ,4 ,temp 
-0x3960 012329 hstoret 1 ,core_uart_ctrl 
-0x3961 012330 rtn 
-:      012334 module_lpm_init:
-0x3962 012335 call module_spp_clear_last_transmite_clock 
-0x3963 012336 branch module_lpm_uart_init 
-:      012339 module_gpio_init:
-0x3964 012344 fetcht 1 ,mem_module_connect_state_gpio 
-0x3965 012345 call gpio_config_output 
-0x3966 012346 call module_set_conn_pin_low 
-0x3967 012348 fetcht 1 ,mem_module_wake_up_gpio 
-0x3968 012349 branch gpio_config_input 
-:      012351 module_lpm_lock:
-0x3969 012352 fetcht 1 ,mem_module_wake_up_gpio 
-0x396a 012353 call gpio_get_bit 
-0x396b 012354 nbranch app_put_lpm_wake_lock ,true 
-0x396c 012355 branch app_get_lpm_wake_lock 
-:      012358 module_le_conn_process:
-0x396d 012359 rtn 
-:      012361 module_bt_conn_process:
-0x396e 012362 call module_spp_enter_sniff 
-0x396f 012363 branch module_control_air_flow 
-:      012365 module_spp_enter_sniff:
-0x3970 012366 fetch 1 ,mem_ui_state_map 
-0x3971 012367 bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
-0x3972 012368 bpatch patch1b_6 ,mem_patch1b 
-0x3973 012369 setarg 0x3eff 
-0x3974 012370 fetcht 4 ,mem_last_transmite_clock 
-0x3975 012371 iadd temp ,temp 
-0x3976 012372 copy clkn_bt ,pdata 
-0x3977 012373 isub temp ,null 
-0x3978 012374 nrtn positive 
-0x3979 012375 fetch 2 ,mem_ui_state_map 
-0x397a 012376 bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
-0x397b 012377 fetch 1 ,mem_module_flag 
-0x397c 012378 rtnbit1 moudle_task_sniff 
-0x397d 012379 call module_set_sniff_task_flag 
-0x397e 012380 call app_bt_enter_sniff 
-:      012381 module_spp_clear_last_transmite_clock:
-0x397f 012382 copy clkn_bt ,pdata 
-0x3980 012383 store 4 ,mem_last_transmite_clock 
-0x3981 012384 rtn 
-:      012387 module_process_idle:
-0x3982 012388 call module_control_air_flow 
-0x3983 012389 call l2cap_malloc_is_fifo_full 
-0x3984 012390 nrtn blank 
-0x3985 012391 branch module_process 
-:      012394 module_process_bb_event:
-0x3986 012395 copy regc ,pdata 
-0x3987 012396 beq bt_evt_bb_connected ,module_process_bb_conn 
-0x3988 012397 beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
-0x3989 012398 beq bt_evt_reconn_failed ,module_process_reconn_fail 
-0x398a 012399 beq bt_evt_setup_complete ,module_process_setup_complete 
-0x398b 012400 beq bt_evt_spp_connected ,module_process_spp_connected 
-0x398c 012401 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
-0x398d 012402 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
-0x398e 012403 beq bt_evt_enter_sniff ,module_process_enter_sniff 
-0x398f 012404 beq bt_evt_exit_sniff ,module_process_exit_sniff 
-0x3990 012405 beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
-0x3991 012406 beq bt_evt_le_connected ,module_process_le_conn 
-0x3992 012407 beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
-0x3993 012408 beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
-0x3994 012409 beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
-0x3995 012410 beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
-0x3996 012411 beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
-0x3997 012412 beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
-0x3998 012413 beq bt_evt_le_start_enc ,module_hci_event_start_enc 
-0x3999 012414 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
-0x399a 012415 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
-0x399b 012416 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
-0x399c 012417 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
-0x399d 012418 beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
-0x399e 012419 beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
-0x399f 012420 beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
-0x39a0 012421 beq bt_evt_store_nvram ,module_hci_event_store_device 
-0x39a1 012422 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
-0x39a2 012423 rtn 
-:      012426 module_process_bb_event_disconned:
-0x39a3 012427 call module_spp_clear_last_transmite_clock 
-0x39a4 012428 fetch 1 ,mem_flag_pairing_state 
-0x39a5 012429 ncall module_hci_event_bt_pairing_fail ,blank 
-0x39a6 012430 call module_disconn_start 
-0x39a7 012431 fetch 2 ,mem_ui_state_map 
-0x39a8 012432 rtnbit0 ui_state_bt_spp_conn 
-0x39a9 012433 branch module_spp_disconnected 
-:      012435 module_process_spp_connected:
-0x39aa 012436 fetch 2 ,mem_ui_state_map 
-0x39ab 012437 set1 ui_state_bt_spp_conn ,pdata 
-0x39ac 012438 store 2 ,mem_ui_state_map 
-0x39ad 012439 fetch 1 ,mem_module_spp_lpm_mult 
-0x39ae 012440 store 1 ,mem_lpm_mult 
-0x39af 012441 call module_set_conn_pin_low 
-0x39b0 012442 branch module_hci_event_spp_connect 
-:      012444 module_process_spp_disconnected:
-:      012446 module_spp_disconnected:
-0x39b1 012447 fetch 2 ,mem_ui_state_map 
-0x39b2 012448 rtnbit0 ui_state_bt_spp_conn 
-0x39b3 012449 set0 ui_state_bt_spp_conn ,pdata 
-0x39b4 012450 store 2 ,mem_ui_state_map 
-0x39b5 012451 branch module_hci_event_spp_disconnect 
-:      012454 module_process_enter_sniff:
-:      012456 module_sniff_param_check:
-0x39b6 012457 call module_spp_clear_last_transmite_clock 
-0x39b7 012460 fetch 2 ,mem_context + coffset_tsniff 
-0x39b8 012461 rshift pdata ,pdata 
-0x39b9 012462 fetcht 2 ,mem_sniff_param_interval 
-0x39ba 012463 isub temp ,null 
-0x39bb 012464 nbranch module_sniff_param_check_unsniff ,zero 
-0x39bc 012465 branch app_lpm_mult_enable 
-:      012466 module_sniff_param_check_unsniff:
-0x39bd 012467 fetch 1 ,mem_module_flag 
-0x39be 012468 rtnbit1 moudle_task_unsniff 
-0x39bf 012469 hfetch 2 ,core_uart_rxitems 
-0x39c0 012470 ncall module_set_unsniff_task_flag ,blank 
-0x39c1 012471 branch app_bt_sniff_exit 
-:      012473 module_process_exit_sniff:
-0x39c2 012474 call module_clear_sniff_task_flag 
-0x39c3 012475 branch app_lpm_mult_disable 
-:      012477 module_process_setup_complete:
-0x39c4 012478 call module_spp_clear_last_transmite_clock 
-0x39c5 012479 branch module_conn_start 
-:      012481 module_process_bb_even_le_disconn:
-0x39c6 012482 call le_clr_config_more_data 
-0x39c7 012483 call module_disconn_start 
-0x39c8 012484 branch module_hci_event_le_disconnect 
-:      012486 module_process_evt_pincode_req:
-0x39c9 012487 branch app_bt_set_pincode 
-:      012490 module_process_sniff_not_accept:
-0x39ca 012491 branch module_clear_sniff_task_flag 
-:      012494 module_process_unsniff_accept:
-0x39cb 012495 fetch 1 ,mem_module_flag 
-0x39cc 012496 bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
-0x39cd 012497 branch module_clear_unsniff_task_flag 
-:      012500 module_process_unsniff_not_accept:
-0x39ce 012501 branch module_clear_unsniff_task_flag 
-:      012504 module_process_le_conn:
-0x39cf 012505 call le_send_att_exchange_mtu_requset 
-0x39d0 012506 call module_conn_start 
-0x39d1 012507 fetch 1 ,mem_module_le_lpm_mult 
-0x39d2 012508 store 1 ,mem_lpm_mult 
-0x39d3 012509 branch module_hci_event_le_connect 
-:      012512 module_process_bb_conn:
-0x39d4 012513 jam 0 ,mem_flag_mode_ssp_pin 
-0x39d5 012514 call module_clear_sniff_task_flag 
-0x39d6 012515 branch module_clear_unsniff_task_flag 
-:      012517 module_process_page_time_out:
-:      012518 module_process_reconn_fail:
-:      012519 module_disconn_start:
-0x39d7 012520 call module_start_adv_discovery_by_command 
-0x39d8 012521 branch module_set_conn_pin_high 
-:      012524 module_process_ble_ltk_lost:
-0x39d9 012525 call le_send_reject_ind 
-0x39da 012526 branch le_send_smp_security_request 
-:      012529 module_set_conn_pin_high:
-0x39db 012530 fetcht 1 ,mem_module_connect_state_gpio 
-0x39dc 012531 branch gpio_out_active 
-:      012533 module_conn_start:
-0x39dd 012534 call module_stop_adv_discovery 
-0x39de 012535 branch module_set_conn_pin_low 
-:      012537 module_stop_adv_discovery:
-0x39df 012538 fetch 1 ,mem_module_state 
-0x39e0 012539 isolate1 moudle_state_bt_bit ,pdata 
-0x39e1 012540 call app_bt_stop_discovery ,true 
-0x39e2 012541 fetch 1 ,mem_module_state 
-0x39e3 012542 isolate1 moudle_state_ble_bit ,pdata 
-0x39e4 012543 call app_ble_stop_adv ,true 
-0x39e5 012544 rtn 
-:      012545 module_set_conn_pin_low:
-0x39e6 012546 fetcht 1 ,mem_module_connect_state_gpio 
-0x39e7 012547 branch gpio_out_inactive 
-:      012549 module_process_with_credit:
-0x39e8 012550 fetch 1 ,mem_credit_flag 
-0x39e9 012551 rtneq credit_disable 
-0x39ea 012552 branch rfcomm_send_uih_without_payload 
-:      012554 module_process:
-0x39eb 012555 hfetch 1 ,core_uart_status 
-0x39ec 012556 bbit1 uart_status_rx_fifo_empty ,module_process_with_credit 
-0x39ed 012557 call uartd_prepare_rx 
-0x39ee 012558 ifetch 1 ,contru 
-0x39ef 012559 bne 0x01 ,module_hci_in_excp 
-0x39f0 012560 hfetch 2 ,core_uart_rxitems 
-0x39f1 012561 sub pdata ,2 ,null 
-0x39f2 012562 rtn positive 
-0x39f3 012563 ifetch 1 ,contru 
-0x39f4 012564 store 1 ,mem_module_uart_opcode 
-0x39f5 012565 ifetcht 1 ,contru 
-0x39f6 012566 copy contru ,rega 
-0x39f7 012567 storet 1 ,mem_module_uart_len 
-0x39f8 012568 add temp ,3 ,temp 
-0x39f9 012569 hfetch 2 ,core_uart_rxitems 
-0x39fa 012570 isub temp ,temp 
-0x39fb 012571 nrtn positive 
-0x39fc 012572 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x39fd 012573 call module_hci_cmd_control 
-0x39fe 012574 fetch 1 ,mem_module_temp_nl_discard_packet 
-0x39ff 012575 rtneq hci_not_discard_packet 
-0x3a00 012576 branch module_hci_dicard_packet 
-:      012578 module_hci_in_excp:
-0x3a01 012579 call delay_10ms 
-0x3a02 012580 call module_hci_event_invalid_packet 
-0x3a03 012581 branch module_hci_release_except 
-:      012584 module_hci_release_except:
-0x3a04 012585 bpatch patch1b_7 ,mem_patch1b 
-0x3a05 012586 hfetch 2 ,core_uart_rxitems 
-0x3a06 012587 rtn blank 
-0x3a07 012588 call uartd_prepare_rx 
-0x3a08 012589 ifetch 1 ,contru 
-0x3a09 012590 sub pdata ,0x01 ,null 
-0x3a0a 012591 ncall module_hci_dicard_bytes ,zero 
-0x3a0b 012592 nbranch module_hci_release_except ,zero 
-0x3a0c 012593 ifetch 1 ,contru 
-0x3a0d 012594 rtneq hci_cmd_spp_data_req 
-0x3a0e 012595 rtneq hci_cmd_set_credit_given 
-0x3a0f 012596 increase -1 ,contru 
-0x3a10 012597 call module_hci_dicard_bytes 
-0x3a11 012598 branch module_hci_release_except 
-:      012600 module_hci_dicard_packet:
-0x3a12 012601 call uartd_prepare_rx 
-0x3a13 012602 increase 2 ,contru 
-0x3a14 012603 ifetch 1 ,contru 
-0x3a15 012604 iadd contru ,contru 
-:      012605 module_hci_dicard_bytes:
-0x3a16 012606 branch uartd_rxdone 
-:      012609 module_hci_cmd_control:
-0x3a17 012610 bpatch patch1c_0 ,mem_patch1c 
-0x3a18 012611 fetch 1 ,mem_module_uart_opcode 
-0x3a19 012612 beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
-0x3a1a 012613 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
-0x3a1b 012614 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
-0x3a1c 012615 beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
-0x3a1d 012616 beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
-0x3a1e 012617 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
-0x3a1f 012618 beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
-0x3a20 012619 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
-0x3a21 012620 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
-0x3a22 012621 beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
-0x3a23 012622 beq hci_cmd_set_uartcontrol_req ,module_hci_cmd_set_uart_control_mode 
-0x3a24 012623 beq hci_cmd_set_uart_baud_req ,module_hci_cmd_set_uart_baud 
-0x3a25 012624 beq hci_cmd_version_req ,module_hci_cmd_version_request 
-0x3a26 012625 beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
-0x3a27 012626 beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
-0x3a28 012627 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
-0x3a29 012628 beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
-0x3a2a 012629 beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
-0x3a2b 012630 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
-0x3a2c 012631 beq hci_cmd_power_req ,module_hci_cmd_power_request 
-0x3a2d 012632 beq hci_cmd_power_set ,module_hci_cmd_power_set 
-0x3a2e 012633 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
-0x3a2f 012634 beq hci_cmd_set_gpio ,module_hci_cmd_set_gpio 
-0x3a30 012635 beq hci_cmd_read_gpio ,module_hci_cmd_read_gpio 
-0x3a31 012636 beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
-0x3a32 012637 beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
-0x3a33 012638 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
-0x3a34 012639 beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
-0x3a35 012640 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
-0x3a36 012641 beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
-0x3a37 012642 beq hci_cmd_set_wake_gpio ,module_hci_cmd_set_wake_gpio 
-0x3a38 012643 beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
-0x3a39 012644 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
-0x3a3a 012645 beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
-0x3a3b 012646 beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
-0x3a3c 012647 beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
-0x3a3d 012648 beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
-0x3a3e 012649 branch module_hci_event_receive_invalid_cmd 
-:      012654 module_hci_cmd_set_bt_addr:
-0x3a3f 012655 fetch 1 ,mem_module_uart_len 
-0x3a40 012656 bne 6 ,module_hci_event_receive_invalid_cmd 
-0x3a41 012657 ifetch 6 ,contru 
-0x3a42 012658 store 6 ,mem_lap 
-0x3a43 012659 branch module_hci_event_receive_valid_cmd 
-:      012662 module_hci_cmd_set_le_addr:
-0x3a44 012663 fetch 1 ,mem_module_uart_len 
-0x3a45 012664 bne 6 ,module_hci_event_receive_invalid_cmd 
-0x3a46 012665 ifetch 6 ,contru 
-0x3a47 012666 store 6 ,mem_le_lap 
-0x3a48 012667 branch module_hci_event_receive_valid_cmd 
-:      012671 module_hci_cmd_set_visibility:
-0x3a49 012672 fetch 1 ,mem_module_uart_len 
-0x3a4a 012673 bne 1 ,module_hci_event_receive_invalid_cmd 
-0x3a4b 012674 copy rega ,contru 
-0x3a4c 012675 call module_hci_event_receive_valid_cmd 
-0x3a4d 012676 ifetcht 1 ,contru 
-0x3a4e 012677 storet 1 ,mem_module_bluetooth_stauts_by_command 
-0x3a4f 012678 fetch 2 ,mem_ui_state_map 
-0x3a50 012679 rtnbit1 ui_state_ble_connected 
-0x3a51 012680 rtnbit1 ui_state_bt_connected 
-:      012681 module_start_adv_discovery_by_command:
-0x3a52 012682 fetch 1 ,mem_module_state 
-0x3a53 012683 isolate1 moudle_state_bt_bit ,pdata 
-0x3a54 012684 nbranch moudle_start_adv_by_command ,true 
-0x3a55 012685 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
-0x3a56 012686 and temp ,0x03 ,pdata 
-0x3a57 012687 store 1 ,mem_scan_mode 
-:      012688 moudle_start_adv_by_command:
-0x3a58 012689 fetch 1 ,mem_module_state 
-0x3a59 012690 isolate1 moudle_state_ble_bit ,pdata 
-0x3a5a 012691 nrtn true 
-0x3a5b 012692 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
-0x3a5c 012693 isolate1 2 ,temp 
-0x3a5d 012694 branch app_ble_start_adv ,true 
-0x3a5e 012695 branch app_ble_stop_adv 
-:      012699 module_hci_cmd_set_bt_name:
-0x3a5f 012700 fetch 1 ,mem_module_uart_len 
-0x3a60 012701 sub pdata ,67 ,null 
-0x3a61 012702 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3a62 012703 store 1 ,mem_local_name_length 
-0x3a63 012704 arg 8 ,loopcnt 
-0x3a64 012705 call memset0 
-0x3a65 012706 fetch 1 ,mem_module_uart_len 
-0x3a66 012707 copy pdata ,loopcnt 
-0x3a67 012708 copy rega ,contru 
-0x3a68 012709 arg mem_local_name ,contw 
-0x3a69 012710 call uart_copy_rx_bytes_fast 
-0x3a6a 012711 branch module_hci_event_receive_valid_cmd 
-:      012715 module_hci_cmd_set_le_name:
-0x3a6b 012716 fetch 1 ,mem_module_uart_len 
-0x3a6c 012717 sub pdata ,29 ,null 
-0x3a6d 012718 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3a6e 012719 store 1 ,mem_le_name_len 
-0x3a6f 012720 copy pdata ,loopcnt 
-0x3a70 012721 copy rega ,contru 
-0x3a71 012722 arg mem_le_name ,contw 
-0x3a72 012723 call uart_copy_rx_bytes_fast 
-0x3a73 012724 call le_modified_name 
-0x3a74 012725 branch module_hci_event_receive_valid_cmd 
-:      012729 module_hci_cmd_receive_spp_data:
-0x3a75 012730 fetch 1 ,mem_ui_state_map 
-0x3a76 012731 bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
-0x3a77 012732 call app_check_sniff 
-0x3a78 012733 branch module_hci_cmd_spp_exit_sniff ,true 
-0x3a79 012734 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a7a 012736 call module_spp_clear_last_transmite_clock 
-0x3a7b 012737 fetch 1 ,mem_remote_credits 
-0x3a7c 012738 rtn blank 
-0x3a7d 012739 fetch 2 ,mem_nl_rx_len_all 
-0x3a7e 012740 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
-0x3a7f 012741 fetch 1 ,mem_module_uart_len 
-0x3a80 012742 store 2 ,mem_nl_rx_len_all 
-0x3a81 012744 copy rega ,contru 
-0x3a82 012747 copy contru ,pdata 
-0x3a83 012748 store 2 ,mem_nl_rx_data_src 
-:      012749 module_hci_cmd_pass_init_ng_rx_len_all:
-0x3a84 012750 call module_hci_cmd_get_current_packet_len_and_remain_len 
-0x3a85 012751 branch spp_tx_rfcomm_packet 
-:      012753 module_hci_cmd_spp_exit_sniff:
-0x3a86 012754 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a87 012755 branch module_exit_sniff 
-:      012757 module_hci_cmd_get_current_packet_len_and_remain_len:
-0x3a88 012758 call module_hci_cmd_get_current_patcket_len 
-0x3a89 012759 fetch 2 ,mem_nl_rx_len_all 
-0x3a8a 012760 fetcht 2 ,mem_current_packet_length 
-0x3a8b 012761 isub temp ,pdata 
-0x3a8c 012762 store 2 ,mem_nl_rx_len_all 
-0x3a8d 012763 rtn 
-:      012765 module_hci_cmd_get_current_patcket_len:
-0x3a8e 012766 fetch 2 ,mem_nl_rx_len_all 
-0x3a8f 012767 arg dm_refcom_buff_len ,temp 
-0x3a90 012768 call not_greater_than 
-0x3a91 012769 fetcht 2 ,mem_rfcomm_max_frame_size 
-0x3a92 012770 call not_greater_than 
-0x3a93 012771 fetcht 2 ,mem_pn_max_frame_size 
-0x3a94 012772 call not_greater_than 
-0x3a95 012773 store 2 ,mem_current_packet_length 
-0x3a96 012774 rtn 
-:      012776 module_hci_command_tx_spp_tx_complete:
-0x3a97 012777 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a98 012778 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
-0x3a99 012779 branch module_hci_event_receive_valid_cmd 
-:      012783 module_hci_cmd_receive_le_data:
-0x3a9a 012784 fetch 2 ,mem_ui_state_map 
-0x3a9b 012785 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
-0x3a9c 012786 call module_check_ble_encrypt_state 
-0x3a9d 012787 branch module_hci_event_receive_invalid_cmd ,user 
-0x3a9e 012788 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a9f 012789 fetch 1 ,mem_module_flag 
-0x3aa0 012790 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
-0x3aa1 012791 fetch 1 ,mem_module_hci_notify_len 
-0x3aa2 012792 nrtn blank 
-0x3aa3 012793 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3aa4 012794 ifetch 2 ,contru 
-0x3aa5 012795 store 2 ,mem_module_hci_notify_handle 
-0x3aa6 012796 copy contru ,pdata 
-0x3aa7 012797 store 2 ,mem_module_hci_nofiy_addr 
-0x3aa8 012798 fetch 1 ,mem_module_uart_len 
-0x3aa9 012799 pincrease -2 
-0x3aaa 012800 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3aab 012801 branch module_hci_event_receive_invalid_cmd ,zero 
-0x3aac 012802 store 1 ,mem_module_hci_notify_len 
-0x3aad 012803 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3aae 012804 call le_set_config_more_data 
-0x3aaf 012805 call module_hci_cmd_transmit_le_notify 
-0x3ab0 012806 call module_hci_cmd_transmit_le_notify 
-0x3ab1 012807 call module_hci_cmd_transmit_le_notify 
-0x3ab2 012808 fetch 1 ,mem_module_flag 
-0x3ab3 012809 rtnbit0 module_flag_ble_data_finish 
-:      012810 module_hci_cmd_receive_le_data_finish:
-0x3ab4 012811 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3ab5 012812 call module_clear_le_tx_data_flag 
-0x3ab6 012813 branch module_hci_event_receive_valid_cmd 
-:      012815 module_hci_cmd_transmit_le_notify:
-0x3ab7 012816 fetch 1 ,mem_module_hci_notify_len 
-0x3ab8 012817 rtn blank 
-0x3ab9 012818 call le_fifo_check_nearly_full 
-0x3aba 012819 nrtn blank 
-0x3abb 012820 call module_get_le_remote_mtu 
-0x3abc 012821 bpatch patch1c_1 ,mem_patch1c 
-0x3abd 012822 add temp ,-3 ,pdata 
-0x3abe 012823 fetcht 1 ,mem_module_hci_notify_len 
-0x3abf 012824 call not_greater_than 
-0x3ac0 012825 copy pdata ,rega 
-0x3ac1 012826 copy temp ,pdata 
-0x3ac2 012827 isub rega ,pdata 
-0x3ac3 012828 store 1 ,mem_module_hci_notify_len 
-0x3ac4 012829 fetcht 2 ,mem_module_hci_notify_handle 
-0x3ac5 012830 call le_att_malloc_tx_notify 
-0x3ac6 012831 fetch 2 ,mem_module_hci_nofiy_addr 
-0x3ac7 012832 copy pdata ,contru 
-0x3ac8 012833 copy rega ,loopcnt 
-0x3ac9 012834 call uart_copy_rx_bytes_fast 
-0x3aca 012835 copy contru ,pdata 
-0x3acb 012836 store 2 ,mem_module_hci_nofiy_addr 
-0x3acc 012837 fetch 1 ,mem_module_hci_notify_len 
-0x3acd 012838 nrtn blank 
-0x3ace 012839 branch module_set_le_tx_data_flag 
-:      012843 module_get_le_remote_mtu:
-0x3acf 012844 arg 0x17 ,temp 
-0x3ad0 012845 fetch 1 ,mem_module_flag 
-0x3ad1 012846 rtnbit1 module_flag_ble_send_mtu23 
-0x3ad2 012847 fetcht 2 ,mem_le_remote_mtu 
-0x3ad3 012848 rtn 
-:      012850 module_check_ble_encrypt_state:
-0x3ad4 012851 fetch 1 ,mem_module_flag 
-0x3ad5 012852 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
-0x3ad6 012853 branch disable_user 
-:      012857 module_hci_cmd_inquire_status:
-0x3ad7 012858 branch module_hci_event_status_res 
-:      012862 module_hci_cmd_set_pairing_mode:
-0x3ad8 012863 copy rega ,contru 
-0x3ad9 012864 ifetch 1 ,contru 
-0x3ada 012865 beq pairing_pincode ,module_hci_pairing_pincode_mode 
-0x3adb 012866 beq pairing_justwork ,module_hci_pairing_just_work_mode 
-0x3adc 012867 beq pairing_passkey ,module_hci_pairing_passkey 
-0x3add 012868 beq pairing_confirm ,module_hci_pairing_numeric_comparison 
-0x3ade 012869 branch module_hci_event_receive_invalid_cmd 
-:      012870 module_hci_pairing_pincode_mode:
-0x3adf 012871 call ssp_disable 
-0x3ae0 012872 jam 0 ,mem_ssp_enable 
-0x3ae1 012873 branch module_hci_event_receive_valid_cmd 
-:      012874 module_hci_pairing_just_work_mode:
-0x3ae2 012875 setarg ssp_mode_just_work_io_cap_data 
-:      012876 module_hci_sspairing_mode:
-0x3ae3 012877 store 3 ,mem_sp_iocap_local 
-0x3ae4 012878 store 1 ,mem_ssp_mode_flag 
-0x3ae5 012879 call ssp_enable 
-0x3ae6 012880 jam 1 ,mem_ssp_enable 
-0x3ae7 012881 branch module_hci_event_receive_valid_cmd 
-:      012882 module_hci_pairing_passkey:
-0x3ae8 012883 setarg ssp_mode_passkey_io_cap_data 
-0x3ae9 012884 branch module_hci_sspairing_mode 
-:      012886 module_hci_pairing_numeric_comparison:
-0x3aea 012887 setarg ssp_mode_ssp_pin_io_cap_data 
-0x3aeb 012888 branch module_hci_sspairing_mode 
-:      012891 module_hci_cmd_set_pincode:
-0x3aec 012892 fetch 1 ,mem_module_uart_len 
-0x3aed 012893 sub pdata ,16 ,null 
-0x3aee 012894 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3aef 012895 store 1 ,mem_pin_length 
-0x3af0 012896 copy pdata ,loopcnt 
-0x3af1 012897 arg mem_pin ,contw 
-0x3af2 012898 call uart_copy_rx_bytes 
-0x3af3 012899 branch module_hci_event_receive_valid_cmd 
-:      012903 module_hci_cmd_set_uart_control_mode:
-0x3af4 012904 copy rega ,contru 
-0x3af5 012905 ifetch 1 ,contru 
-0x3af6 012906 hfetcht 1 ,core_uart_ctrl 
-0x3af7 012907 nsetflag blank ,4 ,temp 
-0x3af8 012908 hstoret 1 ,core_uart_ctrl 
-0x3af9 012909 branch module_hci_event_receive_valid_cmd 
-:      012913 module_hci_cmd_set_uart_baud:
-0x3afa 012914 fetch 1 ,mem_module_uart_len 
-0x3afb 012915 copy pdata ,loopcnt 
-0x3afc 012916 copy rega ,contru 
-0x3afd 012917 call string2dec_from_uart 
-0x3afe 012918 setarg uart_clk_24 
-0x3aff 012919 idiv temp 
-0x3b00 012920 call wait_div_end 
-0x3b01 012921 quotient pdata 
-:      012922 module_hci_cmd_set_uart_baud_ok:
-0x3b02 012923 store uart_baud_len ,mem_baud 
-0x3b03 012924 call module_hci_event_receive_valid_cmd 
-0x3b04 012925 call wait_uarttx 
-0x3b05 012926 branch uart_set_baud_by_mem 
-:      012930 module_hci_cmd_version_request:
-0x3b06 012931 arg 2 ,rega 
-0x3b07 012932 arg mem_soft_version_num ,regb 
-0x3b08 012933 arg 0 ,temp 
-0x3b09 012934 branch module_hci_event_set_cmd 
-:      012935 module_hci_event_set_cmd_send_response:
-0x3b0a 012936 store 2 ,mem_event_cmd_response_content 
-0x3b0b 012937 arg mem_event_cmd_response_content ,regb 
-0x3b0c 012938 arg 0 ,temp 
-0x3b0d 012939 branch module_hci_event_set_cmd 
-:      012943 module_hci_cmd_bt_disconnect:
-0x3b0e 012944 fetch 2 ,mem_ui_state_map 
-0x3b0f 012945 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
-:      012946 module_hci_cmd_bt_disconnect_doing:
-0x3b10 012947 call module_hci_event_receive_valid_cmd 
-0x3b11 012948 branch app_bt_disconnect 
-:      012952 module_hci_cmd_ble_disconnect:
-0x3b12 012953 fetch 2 ,mem_ui_state_map 
-0x3b13 012954 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
-:      012955 module_hci_cmd_ble_disconnect_doing:
-0x3b14 012956 call module_hci_event_receive_valid_cmd 
-0x3b15 012957 branch app_ble_disconnect 
-:      012963 module_hci_cmd_set_nvram:
-0x3b16 012964 fetch 1 ,mem_module_uart_len 
-0x3b17 012965 copy pdata ,loopcnt 
-0x3b18 012966 copy rega ,contru 
-0x3b19 012967 fetch 2 ,mem_nv_data_ptr 
-0x3b1a 012968 icopy contw 
-0x3b1b 012969 call uart_copy_rx_bytes_fast 
-0x3b1c 012970 branch module_hci_event_receive_valid_cmd 
-:      012974 module_hci_cmd_confirm_gkey:
-0x3b1d 012975 fetch 1 ,mem_ui_state_map 
-0x3b1e 012976 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
-0x3b1f 012977 ifetch 1 ,contru 
-0x3b20 012978 fetcht 1 ,mem_flag_mode_ssp_pin 
-0x3b21 012979 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
-0x3b22 012980 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
-0x3b23 012981 storet 1 ,mem_flag_mode_ssp_pin 
-0x3b24 012983 call module_hci_event_receive_valid_cmd 
-0x3b25 012985 fetch 1 ,mem_flag_mode_ssp_pin 
-0x3b26 012986 bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
-0x3b27 012987 rtn 
-:      012989 dhkey_not_accept:
-0x3b28 012990 jam 0 ,mem_flag_mode_ssp_pin 
-0x3b29 012991 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
-0x3b2a 012992 branch ui_ipc_send_cmd 
-:      012995 module_hci_cmd_spp_number_comparison_result_is1:
-0x3b2b 012996 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
-0x3b2c 012997 branch dhkey_not_accept 
-:      013001 module_hci_cmd_set_credit_given:
-0x3b2d 013002 fetch 1 ,mem_ui_state_map 
-0x3b2e 013003 rtnbit0 ui_state_bt_spp_conn 
-0x3b2f 013004 fetch 1 ,mem_credit_flag 
-0x3b30 013005 rtneq credit_disable 
-0x3b31 013006 ifetch 1 ,contru 
-0x3b32 013007 fetcht 1 ,mem_credit_given 
-0x3b33 013008 iadd temp ,temp 
-0x3b34 013009 storet 1 ,mem_credit_given 
-0x3b35 013010 rtn 
-:      013014 module_hci_cmd_auto_adv:
-0x3b36 013015 arg 0x40 ,loopcnt 
-0x3b37 013016 arg mem_le_adv_data_len ,contw 
-0x3b38 013017 call clear_mem 
-0x3b39 013018 setarg 0 
-0x3b3a 013019 store 1 ,mem_regb 
-0x3b3b 013020 copy rega ,contru 
-:      013021 module_hci_cmd_auto_adv_loop:
-0x3b3c 013022 copy contru ,pdata 
-0x3b3d 013023 store 2 ,mem_regc 
-0x3b3e 013024 call module_hci_cmd_auto_adv_adv_analys 
-0x3b3f 013026 fetch 1 ,mem_regb 
-0x3b40 013027 fetcht 1 ,mem_temp 
-0x3b41 013028 increase 1 ,temp 
-0x3b42 013029 iadd temp ,pdata 
-0x3b43 013030 store 1 ,mem_regb 
-0x3b44 013032 sub pdata ,31 ,null 
-0x3b45 013033 nbranch module_hci_cmd_auto_adv_store_scan ,positive 
-:      013034 module_hci_cmd_auto_adv_store_adv:
-0x3b46 013035 fetcht 1 ,mem_le_adv_data_len 
-0x3b47 013036 setarg mem_le_adv_data 
-0x3b48 013037 iadd temp ,pdata 
-0x3b49 013038 store 2 ,mem_contw 
-0x3b4a 013039 fetcht 1 ,mem_temp 
-0x3b4b 013040 increase 1 ,temp 
-0x3b4c 013041 fetch 1 ,mem_le_adv_data_len 
-0x3b4d 013042 iadd temp ,pdata 
-0x3b4e 013043 store 1 ,mem_le_adv_data_len 
-0x3b4f 013044 branch module_hci_cmd_auto_adv_store_common 
-:      013045 module_hci_cmd_auto_adv_store_scan:
-0x3b50 013046 fetcht 1 ,mem_le_scan_data_len 
-0x3b51 013047 setarg mem_le_scan_data 
-0x3b52 013048 iadd temp ,pdata 
-0x3b53 013049 store 2 ,mem_contw 
-0x3b54 013050 fetcht 1 ,mem_temp 
-0x3b55 013051 increase 1 ,temp 
-0x3b56 013052 fetch 1 ,mem_le_scan_data_len 
-0x3b57 013053 iadd temp ,pdata 
-0x3b58 013054 store 1 ,mem_le_scan_data_len 
-:      013055 module_hci_cmd_auto_adv_store_common:
-0x3b59 013056 fetch 2 ,mem_contw 
-0x3b5a 013057 copy pdata ,contw 
-0x3b5b 013058 fetch 2 ,mem_regc 
-0x3b5c 013059 copy pdata ,contru 
-0x3b5d 013061 copy temp ,loopcnt 
-0x3b5e 013062 call uart_copy_rx_bytes_fast 
-0x3b5f 013064 fetch 1 ,mem_module_uart_len 
-0x3b60 013065 fetcht 1 ,mem_regb 
-0x3b61 013066 isub temp ,null 
-0x3b62 013067 nbranch module_hci_cmd_auto_adv_loop ,zero 
-0x3b63 013068 branch module_hci_event_receive_valid_cmd 
-:      013071 module_hci_cmd_auto_adv_adv_analys:
-0x3b64 013072 ifetch 1 ,contru 
-0x3b65 013073 store 1 ,mem_temp 
-0x3b66 013074 ifetch 1 ,contru 
-0x3b67 013075 store 1 ,mem_rega 
-0x3b68 013076 rtn 
-:      013080 module_hci_cmd_power_request:
-0x3b69 013081 arg 0 ,temp 
-0x3b6a 013082 arg 2 ,rega 
-0x3b6b 013083 fetch 2 ,mem_module_vdd_quotient 
-0x3b6c 013084 store 2 ,mem_event_cmd_response_content 
-0x3b6d 013085 arg mem_event_cmd_response_content ,regb 
-0x3b6e 013086 branch module_hci_event_set_cmd 
-:      013090 module_hci_cmd_power_set:
-0x3b6f 013091 fetch 1 ,mem_module_uart_len 
-0x3b70 013092 bne 1 ,module_hci_event_receive_invalid_cmd 
-0x3b71 013093 ifetch 1 ,contru 
-0x3b72 013094 store 1 ,mem_module_read_vdd_flag 
-0x3b73 013095 setarg 0x00 
-0x3b74 013096 store 2 ,mem_module_vdd_quotient 
-0x3b75 013097 branch module_hci_event_receive_valid_cmd 
-:      013101 module_hci_cmd_passkey_entry:
-0x3b76 013102 ifetch 4 ,contru 
-0x3b77 013103 store 4 ,mem_pin 
-0x3b78 013104 jam 4 ,mem_pin_length 
-0x3b79 013105 jam 0 ,mem_authentication_passkey_times 
-0x3b7a 013106 call module_hci_event_receive_valid_cmd 
-0x3b7b 013107 branch authentication_passkey 
-:      013111 module_hci_cmd_set_gpio:
-0x3b7c 013112 fetch 1 ,mem_module_uart_len 
-0x3b7d 013113 bne 3 ,module_hci_event_receive_invalid_cmd 
-0x3b7e 013114 ifetch 1 ,contru 
-0x3b7f 013115 beq hci_cmd_config_gpio_input ,module_set_gpio_input 
-0x3b80 013116 beq hci_cmd_config_gpio_output ,module_set_gpio_output 
-0x3b81 013117 branch module_hci_event_receive_invalid_cmd 
-:      013119 module_set_gpio_input:
-0x3b82 013120 ifetcht 1 ,contru 
-0x3b83 013121 ifetch 1 ,contru 
-0x3b84 013122 beq gpio_input_high_impedance ,module_set_gpio_high_impedance 
-0x3b85 013123 nsetflag blank ,7 ,temp 
-0x3b86 013124 call gpio_config_input 
-0x3b87 013125 branch module_hci_event_receive_valid_cmd 
-:      013127 module_set_gpio_high_impedance:
-0x3b88 013128 call gpio_set_high_impedance 
-0x3b89 013129 branch module_hci_event_receive_valid_cmd 
-:      013131 module_set_gpio_output:
-0x3b8a 013132 ifetcht 1 ,contru 
-0x3b8b 013133 call gpio_config_output0 
-0x3b8c 013134 ifetch 1 ,contru 
-0x3b8d 013135 isolate1 0 ,pdata 
-0x3b8e 013136 call gpio_out_flag 
-0x3b8f 013137 branch module_hci_event_receive_valid_cmd 
-:      013141 module_hci_cmd_read_gpio:
-0x3b90 013142 fetch 1 ,mem_module_uart_len 
-0x3b91 013143 bne 1 ,module_hci_event_receive_invalid_cmd 
-0x3b92 013144 ifetcht 1 ,contru 
-0x3b93 013145 call gpio_get_bit 
-0x3b94 013146 setarg 0x0 
-0x3b95 013147 nsetflag true ,0 ,pdata 
-0x3b96 013148 arg 1 ,rega 
-0x3b97 013149 branch module_hci_event_set_cmd_send_response 
-:      013153 module_hci_cmd_le_set_pairing_mode:
-0x3b98 013154 copy rega ,contru 
-0x3b99 013155 ifetch 1 ,contru 
-0x3b9a 013156 copy pdata ,temp 
-0x3b9b 013157 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
-0x3b9c 013158 beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
-0x3b9d 013159 beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
-0x3b9e 013160 store 1 ,mem_le_pairing_mode 
-0x3b9f 013161 beq le_pairing_mode_none ,module_le_set_no_pairing 
-0x3ba0 013162 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
-0x3ba1 013163 beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
-0x3ba2 013164 branch module_hci_event_receive_invalid_cmd 
-:      013166 module_le_set_pairing_mode_secure_justwork:
-0x3ba3 013167 fetch 1 ,mem_le_secure_connect_enable 
-0x3ba4 013168 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3ba5 013169 storet 1 ,mem_le_pairing_mode 
-0x3ba6 013170 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x3ba7 013171 branch module_le_set_noinputnooutput 
-:      013172 module_le_set_pairing_mode_secure_numeric:
-0x3ba8 013173 fetch 1 ,mem_le_secure_connect_enable 
-0x3ba9 013174 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3baa 013175 storet 1 ,mem_le_pairing_mode 
-0x3bab 013176 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x3bac 013177 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
-0x3bad 013178 branch module_hci_event_receive_valid_cmd 
-:      013179 module_le_set_pairing_mode_secure_passkey:
-0x3bae 013180 fetch 1 ,mem_le_secure_connect_enable 
-0x3baf 013181 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3bb0 013182 storet 1 ,mem_le_pairing_mode 
-0x3bb1 013183 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x3bb2 013184 branch module_le_set_displayonly 
-:      013185 module_le_set_no_pairing:
-0x3bb3 013186 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
-:      013187 module_le_set_noinputnooutput:
-0x3bb4 013188 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
-0x3bb5 013189 branch module_hci_event_receive_valid_cmd 
-:      013190 module_le_set_pairing_mode_lagacy_just_work:
-0x3bb6 013191 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-0x3bb7 013192 branch module_le_set_noinputnooutput 
-:      013193 module_le_set_pairing_mode_lagacy_passkey:
-0x3bb8 013194 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-:      013195 module_le_set_displayonly:
-0x3bb9 013196 jam flag_iocap_displayonly ,mem_le_pres_iocap 
-0x3bba 013197 branch module_hci_event_receive_valid_cmd 
-:      013201 module_hci_cmd_le_set_adv_data:
-0x3bbb 013202 fetch 1 ,mem_module_uart_len 
-0x3bbc 013203 sub pdata ,31 ,null 
-0x3bbd 013204 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3bbe 013205 store 1 ,mem_le_adv_data_len 
-0x3bbf 013206 copy pdata ,loopcnt 
-0x3bc0 013207 copy rega ,contru 
-0x3bc1 013208 arg mem_le_adv_data ,contw 
-0x3bc2 013209 call uart_copy_rx_bytes_fast 
-0x3bc3 013210 branch module_hci_event_receive_valid_cmd 
-:      013214 module_hci_cmd_le_set_scan_data:
-0x3bc4 013215 fetch 1 ,mem_module_uart_len 
-0x3bc5 013216 sub pdata ,31 ,null 
-0x3bc6 013217 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3bc7 013218 store 1 ,mem_le_scan_data_len 
-0x3bc8 013219 copy pdata ,loopcnt 
-0x3bc9 013220 copy rega ,contru 
-0x3bca 013221 arg mem_le_scan_data ,contw 
-0x3bcb 013222 call uart_copy_rx_bytes_fast 
-0x3bcc 013223 branch module_hci_event_receive_valid_cmd 
-:      013227 module_hci_cmd_le_send_conn_update_req:
-0x3bcd 013228 fetch 2 ,mem_ui_state_map 
-0x3bce 013229 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
-0x3bcf 013230 fetch 1 ,mem_module_uart_len 
-0x3bd0 013231 bne 0x08 ,module_hci_event_receive_invalid_cmd 
-0x3bd1 013232 copy rega ,contru 
-0x3bd2 013233 ifetch 8 ,contru 
-0x3bd3 013234 store 8 ,mem_le_interval_min 
-0x3bd4 013235 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x3bd5 013236 call ui_ipc_send_cmd 
-0x3bd6 013237 branch module_hci_event_receive_valid_cmd 
-:      013241 module_hci_cmd_set_le_adv_parameter:
-0x3bd7 013242 ifetch 2 ,contru 
-0x3bd8 013243 store 2 ,mem_le_adv_interval 
-0x3bd9 013244 branch module_hci_event_receive_valid_cmd 
-:      013248 module_hci_cmd_le_start_pairing:
-0x3bda 013249 fetch 1 ,mem_le_pairing_mode 
-0x3bdb 013250 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3bdc 013251 fetch 1 ,mem_le_pairing_state 
-0x3bdd 013252 bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
-0x3bde 013253 fetch 1 ,mem_le_enc_state 
-0x3bdf 013254 bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
-0x3be0 013255 call check_51cmd_le_smp_sec_req 
-0x3be1 013256 branch module_hci_event_receive_valid_cmd 
-:      013260 module_hci_cmd_set_wake_gpio:
-0x3be2 013261 fetch 1 ,mem_module_uart_len 
-0x3be3 013262 bne 5 ,module_hci_event_receive_invalid_cmd 
-0x3be4 013263 ifetch 1 ,contru 
-0x3be5 013264 store 1 ,mem_module_mcu_wake_pin 
-0x3be6 013265 ifetch 4 ,contru 
-0x3be7 013266 store 4 ,mem_module_mcu_wake_delay_us 
-0x3be8 013267 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3be9 013268 call gpio_config_output 
-0x3bea 013269 call module_set_mcu_wake_pin_low 
-0x3beb 013270 branch module_hci_event_receive_valid_cmd 
-:      013274 module_hci_cmd_set_tx_power:
-0x3bec 013275 fetch 1 ,mem_module_uart_len 
-0x3bed 013276 bne 0x01 ,module_hci_event_receive_invalid_cmd 
-0x3bee 013277 ifetch 1 ,contru 
-0x3bef 013278 store 1 ,mem_tx_power 
-0x3bf0 013279 branch module_hci_event_receive_valid_cmd 
-:      013283 module_hci_cmd_le_confirm_gkey:
-0x3bf1 013284 ifetch 1 ,contru 
-0x3bf2 013285 beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
-0x3bf3 013286 fetch 1 ,mem_le_secure_connect_state 
-0x3bf4 013287 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
-0x3bf5 013288 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
-0x3bf6 013289 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
-0x3bf7 013290 branch module_hci_event_receive_invalid_cmd 
-:      013291 module_hci_cmd_le_confirm_gkey_ok:
-0x3bf8 013292 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
-0x3bf9 013293 branch module_hci_event_receive_valid_cmd 
-:      013295 module_hci_cmd_le_confirm_gkey_fail:
-0x3bfa 013296 call le_send_pairing_confirm_value_failed 
-0x3bfb 013297 branch module_hci_event_receive_valid_cmd 
-:      013301 module_hci_cmd_set_reject_justwork_flag:
-0x3bfc 013302 fetch 1 ,mem_module_uart_len 
-0x3bfd 013303 bne 0x01 ,module_hci_event_receive_invalid_cmd 
-0x3bfe 013304 call module_hci_event_receive_valid_cmd 
-0x3bff 013305 ifetch 1 ,contru 
-0x3c00 013306 branch classic_bt_clr_reject_justwork_flag ,blank 
-0x3c01 013307 branch classic_bt_set_reject_justwork_flag 
-:      013311 module_hci_cmd_reset_chip:
-0x3c02 013312 call module_hci_event_receive_valid_cmd 
-0x3c03 013313 call wait_uarttx 
-0x3c04 013314 jam 0x01 ,core_reset 
-0x3c05 013315 branch loop 
-:      013319 module_hci_cmd_le_set_fixed_passkey:
-0x3c06 013320 fetch 1 ,mem_module_uart_len 
-0x3c07 013321 beq 0 ,module_hci_event_receive_invalid_cmd 
-0x3c08 013322 ifetch 1 ,contru 
-0x3c09 013323 branch module_hci_cmd_le_set_random_passkey ,blank 
-0x3c0a 013324 fetch 1 ,mem_module_uart_len 
-0x3c0b 013325 bne 5 ,module_hci_event_receive_invalid_cmd 
-0x3c0c 013326 ifetch 4 ,contru 
-0x3c0d 013327 arg 1000000 ,temp 
-0x3c0e 013328 isub temp ,null 
-0x3c0f 013329 branch module_hci_event_receive_invalid_cmd ,positive 
-0x3c10 013330 store 4 ,mem_le_tk 
-0x3c11 013331 call le_set_config_fixed_tk 
-0x3c12 013332 branch module_hci_event_receive_valid_cmd 
-:      013334 module_hci_cmd_le_set_random_passkey:
-0x3c13 013335 call le_clr_config_fixed_tk 
-0x3c14 013336 branch module_hci_event_receive_valid_cmd 
-:      013340 module_hci_test_cmde_close_lpm:
-0x3c15 013341 jam 0 ,mem_lpm_mode 
-0x3c16 013342 branch module_hci_event_receive_valid_cmd 
-:      013347 module_hci_event_receive_invalid_cmd:
-0x3c17 013348 arg 1 ,temp 
-0x3c18 013349 arg 0 ,rega 
-0x3c19 013350 branch module_hci_event_set_cmd 
-:      013353 module_hci_event_receive_valid_cmd:
-0x3c1a 013354 arg 0 ,temp 
-0x3c1b 013355 arg 0 ,rega 
-0x3c1c 013356 branch module_hci_event_set_cmd 
-:      013360 module_hci_event_spp_connect:
-0x3c1d 013361 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
-0x3c1e 013362 branch module_hci_event_enter_standby_mode_len0 
-:      013366 module_hci_event_le_connect:
-0x3c1f 013367 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
-0x3c20 013368 branch module_hci_event_enter_standby_mode_len0 
-:      013372 module_hci_event_spp_disconnect:
-0x3c21 013373 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
-0x3c22 013374 branch module_hci_event_enter_standby_mode_len0 
-:      013378 module_hci_event_le_disconnect:
-0x3c23 013379 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
-0x3c24 013380 branch module_hci_event_enter_standby_mode_len0 
-:      013388 module_hci_event_set_cmd:
-0x3c25 013389 fetch 1 ,mem_module_uart_opcode 
-0x3c26 013390 copy pdata ,regc 
-0x3c27 013391 jam hci_event_cmd_res ,mem_module_uart_opcode 
-0x3c28 013392 setarg 2 
-0x3c29 013393 iadd rega ,pdata 
-0x3c2a 013394 call module_hci_prepare_tx 
-0x3c2b 013395 copy regc ,pdata 
-0x3c2c 013396 istore 1 ,contwu 
-0x3c2d 013397 istoret 1 ,contwu 
-0x3c2e 013398 copy rega ,loopcnt 
-0x3c2f 013399 copy regb ,contr 
-0x3c30 013400 call uart_copy_tx_bytes 
-0x3c31 013401 branch uartd_send 
-:      013405 module_hci_event_receive_spp_data:
-0x3c32 013407 call module_spp_clear_last_transmite_clock 
-0x3c33 013408 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
-0x3c34 013409 fetch 1 ,mem_current_length 
-0x3c35 013410 rtn blank 
-0x3c36 013411 call module_hci_prepare_tx 
-0x3c37 013412 fetch 1 ,mem_current_length 
-0x3c38 013413 copy pdata ,loopcnt 
-0x3c39 013414 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x3c3a 013415 copy pdata ,contr 
-0x3c3b 013416 call uart_copy_tx_bytes_fast 
-0x3c3c 013417 branch uartd_send 
-:      013421 module_hci_event_receive_le_data:
-0x3c3d 013422 jam hci_event_le_data_rep ,mem_module_uart_opcode 
-0x3c3e 013423 fetch 1 ,mem_module_le_rx_data_len 
-0x3c3f 013424 icopy loopcnt 
-0x3c40 013425 increase 2 ,pdata 
-0x3c41 013426 call module_hci_prepare_tx 
-0x3c42 013427 fetch 2 ,mem_module_le_rx_data_handle 
-0x3c43 013428 istore 2 ,contwu 
-0x3c44 013429 fetch 2 ,mem_module_le_rx_data_address 
-0x3c45 013430 icopy contr 
-0x3c46 013431 call uart_copy_tx_bytes_fast 
-0x3c47 013432 branch uartd_send 
-:      013436 module_hci_event_enter_standby_mode:
-0x3c48 013437 jam hci_event_standby_rep ,mem_module_uart_opcode 
-:      013438 module_hci_event_enter_standby_mode_len0:
-0x3c49 013439 setarg 0 
-0x3c4a 013440 call module_hci_prepare_tx 
-0x3c4b 013441 branch uartd_send 
-:      013445 module_hci_event_status_res:
-0x3c4c 013446 jam hci_event_status_res ,mem_module_uart_opcode 
-0x3c4d 013447 setarg 1 
-0x3c4e 013448 call module_hci_prepare_tx 
-0x3c4f 013450 call module_hci_read_bt_status 
-0x3c50 013452 fetch 2 ,mem_ui_state_map 
-0x3c51 013453 arg ui_state_bt_hid_conn ,queue 
-0x3c52 013454 qisolate1 pdata 
-0x3c53 013455 setflag true ,3 ,temp 
-0x3c54 013457 arg ui_state_ble_connected ,queue 
-0x3c55 013458 qisolate1 pdata 
-0x3c56 013459 setflag true ,5 ,temp 
-0x3c57 013461 fetch 1 ,mem_ui_state_map 
-0x3c58 013462 arg ui_state_bt_spp_conn ,queue 
-0x3c59 013463 qisolate1 pdata 
-0x3c5a 013464 setflag true ,4 ,temp 
-0x3c5b 013466 istoret 1 ,contwu 
-0x3c5c 013467 branch uartd_send 
-:      013471 module_hci_read_bt_status:
-0x3c5d 013472 arg 0 ,temp 
-0x3c5e 013473 fetch 1 ,mem_scan_mode 
-0x3c5f 013474 arg inq_scan_mode ,queue 
-0x3c60 013475 qisolate1 pdata 
-0x3c61 013476 setflag true ,0 ,temp 
-0x3c62 013477 arg page_scan_mode ,queue 
-0x3c63 013478 qisolate1 pdata 
-0x3c64 013479 setflag true ,1 ,temp 
-0x3c65 013481 fetch 1 ,mem_le_adv_enable 
-0x3c66 013482 arg 0 ,queue 
-0x3c67 013483 qisolate1 pdata 
-0x3c68 013484 setflag true ,2 ,temp 
-0x3c69 013485 rtn 
-:      013489 module_hci_event_store_device:
-0x3c6a 013490 jam hci_event_nvram_rep ,mem_module_uart_opcode 
-0x3c6b 013491 fetch 1 ,mem_nv_data_number 
-0x3c6c 013492 mul32 pdata ,34 ,pdata 
-0x3c6d 013493 icopy loopcnt 
-0x3c6e 013494 call module_hci_prepare_tx 
-0x3c6f 013495 fetch 2 ,mem_nv_data_ptr 
-0x3c70 013496 icopy contr 
-0x3c71 013497 call uart_copy_tx_bytes_fast 
-0x3c72 013498 branch uartd_send 
-:      013502 module_hci_event_gkey_generate:
-0x3c73 013503 jam hci_event_gkey ,mem_module_uart_opcode 
-0x3c74 013504 setarg 4 
-0x3c75 013505 call module_hci_prepare_tx 
-0x3c76 013506 fetch 4 ,mem_gkey 
-0x3c77 013507 istore 4 ,contwu 
-0x3c78 013508 branch uartd_send 
-:      013512 module_hci_event_invalid_packet:
-0x3c79 013513 jam hci_event_invalid_packet ,mem_module_uart_opcode 
-0x3c7a 013514 hfetch 2 ,core_uart_rxitems 
-0x3c7b 013515 arg 0xff ,temp 
-0x3c7c 013516 call not_greater_than 
-0x3c7d 013517 copy pdata ,loopcnt 
-0x3c7e 013518 call module_hci_prepare_tx 
-0x3c7f 013519 call uartd_prepare_rx 
-0x3c80 013520 call uart_copy_rx2tx 
-0x3c81 013521 branch uartd_send 
-:      013525 module_hci_event_passkey_entry_mode:
-0x3c82 013526 jam hci_event_get_passkey ,mem_module_uart_opcode 
-0x3c83 013527 branch module_hci_event_enter_standby_mode_len0 
-:      013531 module_hci_event_le_tk:
-0x3c84 013532 jam hci_event_le_tk ,mem_module_uart_opcode 
-0x3c85 013533 setarg 4 
-0x3c86 013534 call module_hci_prepare_tx 
-0x3c87 013535 fetch 4 ,mem_le_tk 
-0x3c88 013536 istore 4 ,contwu 
-0x3c89 013537 branch uartd_send 
-:      013541 module_hci_event_le_pairing_fail:
-0x3c8a 013542 arg flag_ble_pairing_fail ,rega 
-0x3c8b 013543 branch module_hci_event_pairing_completed 
-:      013545 module_hci_event_le_pairing_success:
-0x3c8c 013546 arg flag_ble_pairing_success ,rega 
-0x3c8d 013547 branch module_hci_event_pairing_completed 
-:      013549 module_hci_event_bt_pairing_fail:
-0x3c8e 013550 arg flag_bt_pairing_fail ,rega 
-0x3c8f 013551 branch module_hci_event_pairing_completed 
-:      013553 module_hci_event_bt_pairing_success:
-0x3c90 013554 arg flag_bt_pairing_success ,rega 
-:      013556 module_hci_event_pairing_completed:
-0x3c91 013557 jam 0 ,mem_flag_mode_ssp_pin 
-0x3c92 013558 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
-0x3c93 013559 setarg 2 
-0x3c94 013560 call module_hci_prepare_tx 
-0x3c95 013561 copy rega ,pdata 
-0x3c96 013562 istore 2 ,contwu 
-0x3c97 013563 branch uartd_send 
-:      013567 module_hci_event_pause_enc:
-0x3c98 013568 arg flag_event_pause_enc ,regc 
-0x3c99 013569 branch module_hci_event_enc 
-:      013571 module_hci_event_start_enc:
-0x3c9a 013572 arg flag_event_start_enc ,regc 
-:      013574 module_hci_event_enc:
-0x3c9b 013575 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
-0x3c9c 013576 setarg 1 
-0x3c9d 013577 call module_hci_prepare_tx 
-0x3c9e 013578 copy regc ,pdata 
-0x3c9f 013579 istore 1 ,contwu 
-0x3ca0 013580 branch uartd_send 
-:      013584 module_hci_event_le_gkey:
-0x3ca1 013585 jam hci_event_le_gkey ,mem_module_uart_opcode 
-0x3ca2 013586 setarg 4 
-0x3ca3 013587 call module_hci_prepare_tx 
-0x3ca4 013588 fetch 4 ,mem_gkey 
-0x3ca5 013589 istore 4 ,contwu 
-0x3ca6 013590 branch uartd_send 
-:      013601 module_hci_prepare_tx:
-0x3ca7 013602 jam 0x02 ,mem_module_uart_cmd 
-0x3ca8 013603 store 1 ,mem_module_uart_len 
-0x3ca9 013604 storet 8 ,mem_temp 
-0x3caa 013605 bpatch patch1c_2 ,mem_patch1c 
-0x3cab 013606 call module_set_mcu_wake_pin_high_delay 
-0x3cac 013607 fetcht 8 ,mem_temp 
-0x3cad 013608 call uartd_prepare_tx 
-0x3cae 013609 fetch 3 ,mem_module_uart_cmd 
-0x3caf 013610 istore 3 ,contwu 
-0x3cb0 013611 rtn 
-:      013614 module_set_mcu_wake_pin_high_delay:
-0x3cb1 013615 call module_check_mcu_wake_pin_high 
-0x3cb2 013616 rtn true 
-:      013617 module_set_mcu_wake_pin_h_delay:
-0x3cb3 013618 call module_set_mcu_wake_pin_high 
-0x3cb4 013619 fetch 4 ,mem_module_mcu_wake_delay_us 
-0x3cb5 013620 rshift2 pdata ,pdata 
-0x3cb6 013621 rtn blank 
-0x3cb7 013622 branch delay 
-:      013624 module_set_mcu_wake_pin_high:
-0x3cb8 013626 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3cb9 013627 branch gpio_out_active 
-:      013629 module_check_mcu_wake_pin_high:
-0x3cba 013630 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3cbb 013631 branch gpio_check_active 
-:      013633 module_set_mcu_wake_pin_low:
-0x3cbc 013634 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3cbd 013635 branch gpio_out_inactive 
-:      013638 delay:
-0x3cbe 013639 increase -1 ,pdata 
-0x3cbf 013640 nop 38 
-0x3cc0 013641 nbranch delay ,blank 
-0x3cc1 013642 rtn 
-:      013651 module_le_receive_data:
-0x3cc2 013652 call module_check_ble_encrypt_state 
-0x3cc3 013653 rtn user 
-0x3cc4 013654 copy rega ,pdata 
-0x3cc5 013655 store 2 ,mem_module_le_rx_data_address 
-0x3cc6 013656 copy regb ,pdata 
-0x3cc7 013657 store 1 ,mem_module_le_rx_data_len 
-0x3cc8 013658 fetch 2 ,mem_le_att_handle 
-0x3cc9 013659 fetcht 2 ,mem_module_data_write_handle 
-0x3cca 013660 isub temp ,null 
-0x3ccb 013661 branch module_le_receive_data_ok ,zero 
-0x3ccc 013662 fetcht 2 ,mem_module_data_write_handle2 
-0x3ccd 013663 isub temp ,null 
-0x3cce 013664 nrtn zero 
-:      013665 module_le_receive_data_ok:
-0x3ccf 013666 store 2 ,mem_module_le_rx_data_handle 
-0x3cd0 013667 branch module_hci_event_receive_le_data 
-:      013672 module_exit_sniff:
-0x3cd1 013673 fetch 1 ,mem_module_flag 
-0x3cd2 013674 rtnbit1 moudle_task_unsniff 
-0x3cd3 013675 call module_set_unsniff_task_flag 
-0x3cd4 013676 branch app_bt_sniff_exit 
-:      013679 module_set_lpm_mult_2:
-0x3cd5 013680 jam 2 ,mem_lpm_mult 
-0x3cd6 013681 rtn 
-:      013685 module_bb_event_timer:
-0x3cd7 013686 branch module_read_vdd_timer 
-:      013688 module_read_vdd_timer:
-0x3cd8 013689 fetch 1 ,mem_module_read_vdd_flag 
-0x3cd9 013690 rtn blank 
-0x3cda 013691 fetch 1 ,mem_module_read_vdd_count 
-0x3cdb 013692 rtn blank 
-0x3cdc 013693 increase -1 ,pdata 
-0x3cdd 013694 store 1 ,mem_module_read_vdd_count 
-0x3cde 013695 nrtn blank 
-0x3cdf 013696 jam flag_module_read_vdd_count ,mem_module_read_vdd_count 
-0x3ce0 013697 call adc_set_mode 
-0x3ce1 013698 call vdd_calculate_by_mode 
-0x3ce2 013699 div pdata ,0x64 
-0x3ce3 013700 call wait_div_end 
-0x3ce4 013701 quotient pdata 
-0x3ce5 013702 remainder temp 
-0x3ce6 013703 store 1 ,mem_module_vdd_quotient 
-0x3ce7 013704 storet 1 ,mem_module_vdd_remainder 
-0x3ce8 013705 rtn 
-:      013708 module_control_air_flow:
-0x3ce9 013709 call check_uart_tx_buff 
-0x3cea 013710 branch app_l2cap_flow_control_enable ,positive 
-0x3ceb 013711 branch app_l2cap_flow_control_disable 
-:      013715 module_set_sniff_task_flag:
-0x3cec 013716 arg moudle_task_sniff ,queue 
-0x3ced 013717 branch module_set_state 
-:      013719 module_clear_sniff_task_flag:
-0x3cee 013720 arg moudle_task_sniff ,queue 
-0x3cef 013721 branch module_clr_state 
-:      013723 module_set_unsniff_task_flag:
-0x3cf0 013724 arg moudle_task_unsniff ,queue 
-0x3cf1 013725 branch module_set_state 
-:      013727 module_clear_unsniff_task_flag:
-0x3cf2 013728 arg moudle_task_unsniff ,queue 
-0x3cf3 013729 branch module_clr_state 
-:      013731 module_set_le_tx_data_flag:
-0x3cf4 013732 arg module_flag_ble_data_finish ,queue 
-0x3cf5 013733 branch module_set_state 
-:      013735 module_clear_le_tx_data_flag:
-0x3cf6 013736 arg module_flag_ble_data_finish ,queue 
-0x3cf7 013737 branch module_clr_state 
-:      013739 module_clr_state:
-0x3cf8 013740 fetch 1 ,mem_module_flag 
-0x3cf9 013741 qset0 pdata 
-0x3cfa 013742 store 1 ,mem_module_flag 
-0x3cfb 013743 rtn 
-:      013745 module_set_state:
-0x3cfc 013746 fetch 1 ,mem_module_flag 
-0x3cfd 013747 qset1 pdata 
-0x3cfe 013748 store 1 ,mem_module_flag 
-0x3cff 013749 rtn 
-:      013759 mouse_init:
-0x3d00 013760 call mouse_setting_config 
-0x3d01 013761 call spi_ncs_enable 
-0x3d02 013762 call mouse_init_sunt 
-0x3d03 013763 call mouse_dpi_config 
-0x3d04 013764 call spi_ncs_disable 
-0x3d05 013765 rtn wake 
-0x3d06 013766 call mouse_cheak_enable_usb 
-0x3d07 013767 call mouse_cb_fuction 
-0x3d08 013770 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d09 013771 rtnbit1 mouse_enable_usb 
-0x3d0a 013772 call mouse_wakeup_from_power 
-0x3d0b 013773 rtnmark1 mark_24g 
-0x3d0c 013774 fetch 2 ,mem_ui_state_map 
-0x3d0d 013775 bbit1 ui_state_btn_down ,mouse_start_discovery 
-0x3d0e 013776 branch mouse_check_reconn_target 
-:      013779 mouse_delay_4s:
-0x3d0f 013780 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d10 013781 rtnbit0 mouse_enable_init_delay 
-0x3d11 013782 arg 20 ,loopcnt 
-:      013783 mouse_delay_20ms:
-0x3d12 013784 setarg 200000 
-0x3d13 013785 call sleep 
-0x3d14 013786 loop delay_10ms 
-0x3d15 013787 rtn 
-:      013790 mouse_cheak_enable_usb:
-0x3d16 013791 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d17 013792 rtnbit0 mouse_enable_usb 
-0x3d18 013793 branch usb_init 
-:      013796 mouse_cb_fuction:
-0x3d19 013797 setarg mouse_le 
-0x3d1a 013798 store 2 ,mem_cb_le_process 
-0x3d1b 013799 setarg mouse_send_process 
-0x3d1c 013800 store 2 ,mem_cb_bt_process 
-0x3d1d 013801 setarg mouse_process_lpm_before 
-0x3d1e 013802 store 2 ,mem_cb_before_lpm 
-0x3d1f 013803 setarg mouse_priority_bb_event 
-0x3d20 013804 store 2 ,mem_cb_bb_event_process 
-0x3d21 013805 setarg mouse_idle 
-0x3d22 013806 store 2 ,mem_cb_idle_process 
-0x3d23 013807 setarg mouse_before_hibernate 
-0x3d24 013808 store 2 ,mem_cb_before_hibernate 
-0x3d25 013809 setarg le_mouse_bb_event_connect_complete 
-0x3d26 013810 store 2 ,mem_cb_att_write 
-0x3d27 013812 call g24_head_ptr2regc 
-0x3d28 013813 setarg mouse_g24_package_data 
-0x3d29 013814 add regc ,offset_24g_cb_data ,contw 
-0x3d2a 013815 istore 2 ,contw 
-0x3d2b 013816 setarg mouse_g24_enter_lpm 
-0x3d2c 013817 add regc ,offset_24g_cb_lpm_prepare ,contw 
-0x3d2d 013818 istore 2 ,contw 
-0x3d2e 013819 setarg mouse_lpm_before_common 
-0x3d2f 013820 add regc ,offset_24g_cb_lpm_before ,contw 
-0x3d30 013821 istore 2 ,contw 
-0x3d31 013823 setarg mouse_bb_event_timer 
-0x3d32 013824 store 2 ,mem_cb_event_timer 
-0x3d33 013825 setarg mouse_spi_write_flash_cb 
-0x3d34 013826 store 2 ,mem_cb_spi_flash_write_complate 
-0x3d35 013827 rtn 
-:      013828 mouse_spi_write_flash_cb:
-:      013829 mouse_spi_init:
-0x3d36 013830 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d37 013831 bbit0 mouse_enable_spi2 ,spid_init 
-0x3d38 013832 branch spid_init2 
-:      013834 mouse_setting_config:
-0x3d39 013835 rtn wake 
-0x3d3a 013836 call g24_set_device_addr 
-0x3d3b 013837 call mouse_gpio_init 
-0x3d3c 013838 call mouse_param_init 
-0x3d3d 013839 call mouse_adc_init 
-0x3d3e 013840 call le_set_config_fixed_ltk 
-0x3d3f 013841 call le_set_justwork 
-0x3d40 013842 call le_set_fixed_ltk 
-0x3d41 013843 call le_set_config_read_authentication 
-0x3d42 013844 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d43 013845 bbit1 mouse_enable_eeprom ,mouse_init_iic 
-0x3d44 013846 bbit1 mouse_enable_flash ,mouse_load_flash_info_cheak 
-0x3d45 013847 rtn 
-:      013849 mouse_init_iic:
-0x3d46 013850 call iic_init_390k 
-0x3d47 013851 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d48 013852 isolate1 mouse_enable_2k_eeprom ,pdata 
-0x3d49 013853 ncall clear_eeprom_size_2k ,true 
-0x3d4a 013854 call mouse_load_eeprom_dpi 
-0x3d4b 013855 call mouse_init_environment 
-0x3d4c 013856 call mouse_set_24g_addr_eeprom 
-0x3d4d 013857 branch iicd_read_eep_data 
-:      013859 mouse_wakeup_from_power:
-0x3d4e 013860 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d4f 013861 bbit0 mouse_enable_wakeup_from_power ,mouse_wakeup_no_from_power 
-0x3d50 013862 fetch 1 ,mem_wakup_from_power_flag 
-0x3d51 013863 isolate0 gpio_latch ,pdata 
-0x3d52 013864 nrtn true 
-:      013865 mouse_wakeup_no_from_power:
-0x3d53 013866 fetch 1 ,mem_reconn_times_init 
-0x3d54 013867 store 1 ,mem_reconn_times 
-0x3d55 013868 fetch 1 ,mem_config_function_enable 
-0x3d56 013869 rtnbit1 enable_select_device_by_switch 
-:      013870 mouse_start_24g_mode:
-0x3d57 013871 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d58 013872 rtnbit0 mouse_enable_24g 
-0x3d59 013873 bbit1 mouse_enable_auto_24g_paring ,g24_auto_pair_start 
-0x3d5a 013874 branch g24_check_51cmd_start_24g 
-:      013875 le_mouse_bb_event_connect_complete:
-0x3d5b 013876 fetch 1 ,mem_le_att_handle 
-0x3d5c 013877 sub pdata ,26 ,pdata 
-0x3d5d 013878 nrtn zero 
-0x3d5e 013879 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x3d5f 013880 call ui_ipc_send_cmd 
-:      013881 mouse_le_write_enable:
-0x3d60 013882 arg write_req_enable_flag ,queue 
-0x3d61 013883 branch mouse_le_enable_connect_flag 
-:      013885 mouse_dpi_up:
-0x3d62 013886 fetch 1 ,mem_mouse_dpi_button_state 
-0x3d63 013887 rtneq dpi_button_state_up 
-0x3d64 013888 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
-0x3d65 013889 rtn 
-:      013890 mouse_dpi_config:
-0x3d66 013891 fetch 1 ,mem_config_sensor_motion 
-0x3d67 013892 and pdata ,0x0f ,pdata 
-0x3d68 013893 store 1 ,mem_mouse_dpi 
-0x3d69 013894 branch mouse_seting_dpi + 2 
-:      013897 mouse_dpi_cheak:
-0x3d6a 013898 fetcht 1 ,mem_dpi_button_gpio 
-0x3d6b 013899 call gpio_get_bit 
-0x3d6c 013900 nbranch mouse_dpi_up ,true 
-:      013901 mouse_dpi_down:
-0x3d6d 013902 fetch 1 ,mem_mouse_dpi_button_state 
-0x3d6e 013903 rtneq dpi_button_state_down 
-0x3d6f 013904 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
-:      013905 mouse_dpi_down_setting:
-0x3d70 013906 fetch 1 ,mem_mouse_dpi 
-0x3d71 013907 increase 1 ,pdata 
-0x3d72 013908 and pdata ,0x03 ,pdata 
-0x3d73 013909 store 1 ,mem_mouse_dpi 
-0x3d74 013910 call mouse_seting_dpi 
-0x3d75 013911 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d76 013912 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
-0x3d77 013913 bbit1 mouse_enable_flash ,mouse_before_store_flash_cpi 
-0x3d78 013914 rtn 
-:      013915 mouse_before_store_flash_cpi:
-0x3d79 013916 arg mouse_spi2_clk_gpio ,temp 
-0x3d7a 013917 call gpio_config_output 
-0x3d7b 013918 arg mouse_spi2_sdio_gpio ,temp 
-0x3d7c 013919 call gpio_config_output 
-0x3d7d 013920 branch mouse_store_flash_device_info 
-:      013922 mouse_seting_dpi:
-0x3d7e 013923 bpatch patch1c_3 ,mem_patch1c 
-0x3d7f 013924 call mosue_dpi_led_blink_init 
-0x3d80 013925 fetch 1 ,mem_config_sensor_type 
-0x3d81 013926 beq p3610 ,mouse_seting_3610_dpi 
-0x3d82 013927 beq p3212 ,mouse_seting_3212_dpi 
-0x3d83 013928 fetch 1 ,mem_mouse_dpi 
-0x3d84 013929 beq mouse_dpi_level1 ,mouse_set_cpi1 
-0x3d85 013930 beq mouse_dpi_level2 ,mouse_set_cpi2 
-0x3d86 013931 beq mouse_dpi_level3 ,mouse_set_cpi3 
-0x3d87 013932 beq mouse_dpi_level4 ,mouse_set_cpi4 
-:      013933 mouse_set_cpi2:
-0x3d88 013934 fetch 1 ,mem_320x_dpi_2 
-0x3d89 013935 branch mouse_p3205_dpi 
-:      013936 mouse_set_cpi1:
-0x3d8a 013937 fetch 1 ,mem_320x_dpi_1 
-0x3d8b 013938 branch mouse_p3205_dpi 
-:      013939 mouse_set_cpi3:
-0x3d8c 013940 fetch 1 ,mem_320x_dpi_3 
-0x3d8d 013941 branch mouse_p3205_dpi 
-:      013942 mouse_set_cpi4:
-0x3d8e 013943 fetch 1 ,mem_320x_dpi_4 
-0x3d8f 013944 branch mouse_p3205_dpi 
-:      013945 moue_seting_cpi_count:
-0x3d90 013946 fetch 1 ,mem_config_sensor_type 
-0x3d91 013947 rtneq p3065_xy 
-0x3d92 013948 fetch 1 ,mem_mouse_cpi_count 
-0x3d93 013949 increase 1 ,pdata 
-0x3d94 013950 store 1 ,mem_mouse_cpi_count 
-0x3d95 013951 rtn 
-:      013953 mouse_seting_3212_dpi:
-0x3d96 013954 fetch 1 ,mem_mouse_dpi 
-0x3d97 013955 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
-0x3d98 013956 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
-0x3d99 013957 beq mouse_dpi_level3 ,mouse_set_p3212_cpi3 
-0x3d9a 013958 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
-:      013959 mouse_set_p3212_cpi2:
-0x3d9b 013960 fetch 1 ,mem_3212_dpi_2 
-0x3d9c 013961 branch mouse_p3212_dpi 
-:      013962 mouse_set_p3212_cpi1:
-0x3d9d 013963 fetch 1 ,mem_3212_dpi_1 
-0x3d9e 013964 branch mouse_p3212_dpi 
-:      013965 mouse_set_p3212_cpi3:
-0x3d9f 013966 fetch 1 ,mem_3212_dpi_3 
-0x3da0 013967 branch mouse_p3212_dpi 
-:      013968 mouse_set_p3212_cpi4:
-0x3da1 013969 fetch 1 ,mem_3212_dpi_4 
-:      013970 mouse_p3212_dpi:
-0x3da2 013971 store 1 ,mem_mouse_cpi_count 
-0x3da3 013972 lshift8 pdata ,pdata 
-0x3da4 013973 copy pdata ,rega 
-0x3da5 013974 add pdata ,mouse_p3212_dpi_xaddress ,pdata 
-0x3da6 013975 call twspi_write 
-0x3da7 013976 copy rega ,pdata 
-0x3da8 013977 add pdata ,mouse_p3212_dpi_yaddress ,pdata 
-0x3da9 013978 branch twspi_write 
-:      013980 mouse_seting_3610_dpi:
-0x3daa 013981 fetch 1 ,mem_mouse_dpi 
-0x3dab 013982 beq mouse_dpi_level1 ,mouse_set_p3610_cpi1 
-0x3dac 013983 beq mouse_dpi_level2 ,mouse_set_p3610_cpi2 
-0x3dad 013984 beq mouse_dpi_level3 ,mouse_set_p3610_cpi3 
-0x3dae 013985 beq mouse_dpi_level4 ,mouse_set_p3610_cpi4 
-:      013986 mouse_set_p3610_cpi2:
-0x3daf 013987 fetch 1 ,mem_3610_dpi_2 
-0x3db0 013988 branch mouse_p3610_dpi 
-:      013989 mouse_set_p3610_cpi1:
-0x3db1 013990 fetch 1 ,mem_3610_dpi_1 
-0x3db2 013991 branch mouse_p3610_dpi 
-:      013992 mouse_set_p3610_cpi3:
-0x3db3 013993 fetch 1 ,mem_3610_dpi_3 
-0x3db4 013994 branch mouse_p3610_dpi 
-:      013995 mouse_set_p3610_cpi4:
-0x3db5 013996 fetch 1 ,mem_3610_dpi_4 
-:      013997 mouse_p3610_dpi:
-0x3db6 013998 store 1 ,mem_mouse_cpi_count 
-0x3db7 013999 call mouse_spi_sdio_gpio_pollup 
-0x3db8 014000 fetch 1 ,mem_mouse_cpi_count 
-:      014001 mouse_reset_p3610_dpi:
-0x3db9 014002 add pdata ,0x80 ,pdata 
-0x3dba 014003 lshift8 pdata ,pdata 
-0x3dbb 014004 add pdata ,mouse_p3610_dpi_address ,pdata 
-0x3dbc 014005 copy pdata ,rega 
-0x3dbd 014006 branch mouse_set_sensor_reg 
-:      014008 mouse_p3205_dpi:
-0x3dbe 014009 store 1 ,mem_mouse_cpi_count 
-0x3dbf 014010 call moue_seting_cpi_count 
-0x3dc0 014011 fetch 1 ,mem_mouse_cpi_count 
-0x3dc1 014012 setarg mouse_dpi_address 
-0x3dc2 014013 call twspi_read 
-0x3dc3 014014 and pdata ,0xf8 ,temp 
-0x3dc4 014015 fetch 1 ,mem_mouse_cpi_count 
-0x3dc5 014016 iadd temp ,pdata 
-0x3dc6 014017 lshift8 pdata ,pdata 
-0x3dc7 014018 add pdata ,mouse_dpi_address ,pdata 
-0x3dc8 014019 branch twspi_write 
-:      014022 mouse_init_environment:
-0x3dc9 014023 call app_initflag_check 
-0x3dca 014024 branch mouse_eeprom_load_recon_info ,zero 
-0x3dcb 014025 call mouse_ble_init_address 
-0x3dcc 014026 call mouse_store_eeprom_device_info 
-0x3dcd 014027 branch app_initflag_store 
-:      014030 mouse_24g_pairing_button:
-0x3dce 014031 fetch 2 ,mem_24g_pairing_timer_count 
-0x3dcf 014032 rtn blank 
-0x3dd0 014033 fetch mouse_flag_len ,mem_mouse_flag 
-0x3dd1 014034 rtnbit0 mouse_enable_24g 
-0x3dd2 014035 rtnbit1 mosue_24g_pairing_flag 
-0x3dd3 014036 rtnmark1 mark_24g 
-0x3dd4 014037 call mouse_check_key_gpio 
-0x3dd5 014038 rtnne mouse_lmr_button 
-0x3dd6 014039 call mouse_devce_led_off 
-0x3dd7 014040 arg mosue_24g_pairing_flag ,queue 
-0x3dd8 014041 call mouse_enable_function_flag 
-0x3dd9 014042 setarg 0 
-0x3dda 014043 store 2 ,mem_mouse_direct_timer 
-0x3ddb 014044 store 1 ,mem_mouse_send_blank_timer 
-0x3ddc 014045 call g24_set0_mem_check_dongle_times 
-0x3ddd 014047 fetch 2 ,mem_ui_state_map 
-0x3dde 014048 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
-0x3ddf 014049 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x3de0 014050 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x3de1 014051 call mouse_stop_discovery 
-0x3de2 014052 branch g24_start_pairing_sm1 
-:      014055 mouse_idle:
-0x3de3 014056 call mouse_24g_pairing_button 
-0x3de4 014057 call ui_check_paring_button 
-0x3de5 014058 call mouse_dpi_cheak 
-0x3de6 014059 call mouse_usb_isr 
-0x3de7 014060 call mouse_wheel_check 
-0x3de8 014061 branch mouse_usb_mode 
-:      014062 mouse_usb_isr:
-0x3de9 014063 fetch mouse_flag_len ,mem_mouse_flag 
-0x3dea 014064 rtnbit0 mouse_enable_usb 
-0x3deb 014065 call usb_isr 
-0x3dec 014066 branch usb_offline_state 
-:      014068 mouse_cheak_usb:
-0x3ded 014069 hfetch 1 ,core_usb_addr 
-0x3dee 014070 bbit0 7 ,mouse_usb_no_exsit 
-0x3def 014071 bbit1 7 ,mouse_usb_exsit 
-0x3df0 014072 rtn 
-:      014073 mouse_usb_no_exsit:
-0x3df1 014074 fetch 1 ,mem_usb_addr 
-0x3df2 014075 rtnbit0 7 
-0x3df3 014076 branch soft_reset_chip 
-:      014077 mouse_usb_exsit:
-0x3df4 014078 fetch 1 ,mem_usb_addr 
-0x3df5 014079 rtnbit1 7 
-0x3df6 014080 branch mouse_stop_bluetooth_mode 
-:      014082 mouse_usb_mode:
-0x3df7 014083 call mouse_cheak_usb 
-0x3df8 014084 hfetch 1 ,core_usb_addr 
-0x3df9 014085 store 1 ,mem_usb_addr 
-0x3dfa 014086 rtnbit0 7 
-0x3dfb 014087 call mouse_clkn_check 
-0x3dfc 014088 fetch 4 ,mem_btclk_sensor 
-0x3dfd 014089 fetcht 1 ,mem_wire_usb_interval 
-0x3dfe 014090 iadd temp ,temp 
-0x3dff 014091 copy clkn_bt ,pdata 
-0x3e00 014092 isub temp ,null 
-0x3e01 014093 nrtn positive 
-0x3e02 014094 store 4 ,mem_btclk_sensor 
-0x3e03 014095 call mouse_motion 
-0x3e04 014096 nrtn user 
-0x3e05 014097 jam 4 ,mem_usb_tx_enable 
-0x3e06 014098 branch mouse_wired_to_usb 
-:      014100 mouse_clkn_check:
-0x3e07 014101 fetcht 4 ,mem_btclk_sensor 
-0x3e08 014102 copy clkn_bt ,pdata 
-0x3e09 014103 isub temp ,null 
-0x3e0a 014104 ncall mouse_clkn_timeout ,positive 
-0x3e0b 014105 rtn 
-:      014106 mouse_clkn_timeout:
-0x3e0c 014107 setarg 0 
-0x3e0d 014108 store 4 ,mem_btclk_sensor 
-0x3e0e 014109 rtn 
-:      014113 mouse_wired_to_usb:
-0x3e0f 014114 fetch 1 ,mem_usb_tx_enable 
-0x3e10 014115 rtnbit0 2 
-0x3e11 014116 branch mouse_data_push 
-:      014117 mouse_data_push:
-0x3e12 014118 hfetch 1 ,core_usb_addr 
-0x3e13 014119 rtnbit0 7 
-0x3e14 014120 jam usb_ep2_ms ,mem_usb_ep2_data 
-0x3e15 014121 setarg ms_report_id 
-0x3e16 014122 store 1 ,mem_usb_mouse_data 
-0x3e17 014123 fetch 7 ,mem_mouse_key 
-0x3e18 014124 istore 7 ,contw 
-0x3e19 014125 rtn 
-:      014128 mouse_enable_clock_qdecoder:
-0x3e1a 014129 hfetch 2 ,core_clkoff 
-0x3e1b 014130 set0 clock_off_qdecoder ,pdata 
-0x3e1c 014131 hstore 2 ,core_clkoff 
-0x3e1d 014132 rtn 
-:      014134 mouse_param_init:
-0x3e1e 014135 setarg 0x8c00 
-0x3e1f 014136 store 2 ,mem_ui_uuid_table 
-0x3e20 014137 setarg 0x8e7a 
-0x3e21 014138 store 2 ,mem_ui_le_uuid_table 
-0x3e22 014139 setarg 0x2402 
-0x3e23 014140 store 2 ,mem_fcomp_mul 
-0x3e24 014141 setarg 0x2580 
-0x3e25 014142 store 3 ,mem_class 
-0x3e26 014143 jam 3 ,mem_lpm_mult_timeout 
-0x3e27 014144 jam 8 ,mem_lpm_overhead 
-0x3e28 014145 jam dpi_button_state_up ,mem_select_device_button_statue 
-0x3e29 014146 setarg 0x0200 
-0x3e2a 014147 store 2 ,mem_lpm_interval 
-0x3e2b 014148 jam 0x17 ,mem_le_local_mtu 
-0x3e2c 014149 jam 0x17 ,mem_le_remote_mtu 
-0x3e2d 014151 setarg 0x0a77 
-0x3e2e 014152 store 2 ,mem_spi_init_clk 
-0x3e2f 014168 setsect 0 ,0x306 
-0x3e30 014169 setsect 1 ,0x4440 
-0x3e31 014170 setsect 2 ,0x10000 
-0x3e32 014171 setsect 3 ,0x4408 
-0x3e33 014172 store 9 ,mem_all_uuid_16bits 
-0x3e34 014173 setsect 0 ,0x1224 
-0x3e35 014174 setsect 1 ,0x4000 
-0x3e36 014175 setsect 2 ,0x0 
-0x3e37 014176 istore 5 ,contw 
-0x3e38 014178 setsect 0 ,0x3ffff 
-0x3e39 014179 setsect 1 ,0x2fe23 
-0x3e3a 014180 setsect 2 ,0x199d9 
-0x3e3b 014181 setsect 3 ,0x20d 
-0x3e3c 014182 store 8 ,mem_features 
-0x3e3d 014184 setarg 0x012c 
-0x3e3e 014185 store 2 ,mem_24g_pairing_timer_count 
-0x3e3f 014186 call le_modified_name 
-0x3e40 014187 fetch mouse_flag_len ,mem_mouse_flag 
-0x3e41 014188 rtnbit0 mouse_enable_gpio_control_adc_sensor 
-0x3e42 014189 call mouse_sensor_set_angle 
-0x3e43 014190 branch mouse_select_adc 
-:      014192 mouse_sensor_set_angle:
-0x3e44 014193 fetcht 1 ,mem_select_sensor_angle_gpio 
-0x3e45 014194 call gpio_config_input 
-0x3e46 014195 fetcht 1 ,mem_select_sensor_angle_gpio 
-0x3e47 014196 call gpio_get_bit 
-0x3e48 014197 jam mouse_3clk_angle ,mem_config_sensor_angle 
-0x3e49 014198 rtn true 
-0x3e4a 014199 jam mouse_12clk_angle ,mem_config_sensor_angle 
-0x3e4b 014200 rtn 
-:      014202 mouse_select_adc:
-0x3e4c 014203 fetcht 1 ,mem_select_adc_gpio 
-0x3e4d 014204 call gpio_config_input 
-0x3e4e 014205 fetcht 1 ,mem_select_adc_gpio 
-0x3e4f 014206 call gpio_get_bit 
-0x3e50 014207 jam adc_config_vinlpm ,mem_adc_config_flag 
-0x3e51 014208 rtn true 
-0x3e52 014209 jam adc_config_gpio ,mem_adc_config_flag 
-0x3e53 014210 rtn 
-:      014213 mouse_adc_init:
-0x3e54 014214 fetch 1 ,mem_adc_config_flag 
-0x3e55 014215 beq adc_config_vinlpm ,mouse_adc_init_data_vinlpm 
-0x3e56 014216 beq adc_config_hvin ,mouse_adc_init_data_hvin 
-0x3e57 014217 beq adc_config_gpio ,mouse_adc_init_data_io 
-0x3e58 014218 branch mouse_adc_init_data_vinlpm 
-:      014220 mouse_adc_init_data_vinlpm:
-0x3e59 014221 fetcht 2 ,mem_2v_adc_vinlpm_data 
-0x3e5a 014222 fetch 2 ,mem_3v_adc_vinlpm_data 
-0x3e5b 014223 isub temp ,pdata 
-0x3e5c 014224 mul32 pdata ,20 ,pdata 
-0x3e5d 014225 div pdata ,100 
-0x3e5e 014226 call wait_div_end 
-0x3e5f 014227 quotient pdata 
-0x3e60 014228 store 2 ,mem_adc_reference_voltage 
-0x3e61 014229 rtn 
-:      014230 mouse_adc_init_data_hvin:
-0x3e62 014231 fetcht 2 ,mem_1v_adc_hvin_data 
-0x3e63 014232 fetch 2 ,mem_5v_adc_hvin_data 
-0x3e64 014233 isub temp ,pdata 
-0x3e65 014234 mul32 pdata ,230 ,pdata 
-0x3e66 014235 div pdata ,400 
-0x3e67 014236 call wait_div_end 
-0x3e68 014237 quotient pdata 
-0x3e69 014238 store 2 ,mem_adc_reference_voltage 
-0x3e6a 014239 rtn 
-:      014240 mouse_adc_init_data_io:
-0x3e6b 014241 fetch 2 ,mem_1v_adc_io_data 
-0x3e6c 014242 store 2 ,mem_adc_reference_voltage 
-0x3e6d 014243 rtn 
-:      014244 mouse_gpio_init:
-0x3e6e 014245 fetcht 1 ,mem_eeprom_wp_gpio 
-0x3e6f 014246 call gpio_config_output 
-0x3e70 014247 call usb_offline_check_init 
-0x3e71 014248 fetcht 1 ,mem_lbutton_gpio 
-0x3e72 014249 call gpio_config_input 
-0x3e73 014250 fetcht 1 ,mem_rbutton_gpio 
-0x3e74 014251 call gpio_config_input 
-0x3e75 014252 fetcht 1 ,mem_mbutton_gpio 
-0x3e76 014253 call gpio_config_input 
-0x3e77 014254 fetcht 1 ,mem_sensor_data_gpio 
-0x3e78 014255 call gpio_config_input 
-0x3e79 014257 fetcht 1 ,mem_sensor_reset_gpio 
-0x3e7a 014258 call gpio_config_output 
-0x3e7b 014260 fetcht 1 ,mem_whee_a_data_gpio 
-0x3e7c 014261 call gpio_config_input 
-0x3e7d 014263 fetcht 1 ,mem_whee_b_data_gpio 
-0x3e7e 014264 call gpio_config_input 
-0x3e7f 014266 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3e80 014267 call gpio_config_input 
-0x3e81 014268 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3e82 014269 call gpio_config_input 
-0x3e83 014271 fetcht 1 ,mem_bk_button_gpio 
-0x3e84 014272 call gpio_config_input 
-0x3e85 014273 fetcht 1 ,mem_fw_button_gpio 
-0x3e86 014274 call gpio_config_input 
-0x3e87 014276 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
-0x3e88 014277 call gpio_config_output 
-0x3e89 014279 fetcht 1 ,mem_config_device1_led_gpio 
-0x3e8a 014280 call gpio_config_output 
-0x3e8b 014282 fetcht 1 ,mem_config_device2_led_gpio 
-0x3e8c 014283 call gpio_config_output 
-0x3e8d 014285 fetcht 1 ,mem_config_device3_led_gpio 
-0x3e8e 014286 call gpio_config_output 
-0x3e8f 014288 fetcht 1 ,mem_dpi_led_gpio 
-0x3e90 014289 call gpio_config_output 
-0x3e91 014291 fetcht 1 ,mem_config_select_device_button_gpio 
-0x3e92 014292 call gpio_config_input 
-0x3e93 014294 fetcht 1 ,mem_config_bt_button_gpio 
-0x3e94 014295 call gpio_config_input 
-0x3e95 014297 fetcht 1 ,mem_dpi_button_gpio 
-0x3e96 014298 branch gpio_config_input 
-:      014300 mouse_wheel_gpio_set_wake:
-0x3e97 014301 fetcht 1 ,mem_whee_a_data_gpio 
-0x3e98 014302 call gpio_set_wake_by_current_state 
-0x3e99 014303 fetcht 1 ,mem_whee_b_data_gpio 
-0x3e9a 014304 call gpio_set_wake_by_current_state 
-0x3e9b 014305 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3e9c 014306 call gpio_set_wake_by_current_state 
-0x3e9d 014307 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3e9e 014308 branch gpio_set_wake_by_current_state 
-:      014310 mouse_before_hibernate_wheel_gpio_set:
-0x3e9f 014311 fetcht 1 ,mem_whee_a_data_gpio 
-0x3ea0 014312 call mouse_gpio_set_pupd_by_input 
-0x3ea1 014313 fetcht 1 ,mem_whee_b_data_gpio 
-0x3ea2 014314 call mouse_gpio_set_pupd_by_input 
-0x3ea3 014315 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3ea4 014316 call mouse_gpio_set_pupd_by_input 
-0x3ea5 014317 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3ea6 014318 branch mouse_gpio_set_pupd_by_input 
-:      014320 mouse_gpio_set_pupd_by_input:
-0x3ea7 014321 sub temp ,ui_button_gpio_disable ,null 
-0x3ea8 014322 rtn zero 
-0x3ea9 014323 and temp ,0x7f ,queue 
-0x3eaa 014324 hfetch 4 ,core_gpio_in 
-0x3eab 014325 qisolate1 pdata 
-0x3eac 014326 hfetch 4 ,core_gpio_pu0 
-0x3ead 014327 qsetflag true ,pdata 
-0x3eae 014328 hstore 4 ,core_gpio_pu0 
-0x3eaf 014329 hfetch 4 ,core_gpio_pd0 
-0x3eb0 014330 nqsetflag true ,pdata 
-0x3eb1 014331 hstore 4 ,core_gpio_pd0 
-0x3eb2 014332 rtn 
-:      014334 mouse_before_hibernate:
-0x3eb3 014335 enable user 
-0x3eb4 014336 hfetch 4 ,0x8138 
-0x3eb5 014337 setflag user ,26 ,pdata 
-0x3eb6 014338 hstore 4 ,core_lpm_reg 
-0x3eb7 014339 call lpm_write_ctrl 
-0x3eb8 014340 call mouse_devce_led_off 
-0x3eb9 014341 call mouse_before_hibernate_wheel_gpio_set 
-0x3eba 014343 branch mouse_lpm_before_common 
-:      014347 mouse_process_lpm_before:
-0x3ebb 014348 call mouse_lpm_before_common 
-0x3ebc 014349 fetch 1 ,mem_lpm_current_mult 
-0x3ebd 014350 nrtn blank 
-0x3ebe 014351 branch gpio_clr_wake 
-:      014353 mouse_lpm_before_common:
-0x3ebf 014354 call mouse_wheel_check 
-0x3ec0 014355 arg mouse_spi1_clk_gpio ,temp 
-0x3ec1 014356 fetch mouse_flag_len ,mem_mouse_flag 
-0x3ec2 014357 isolate1 mouse_enable_spi2 ,pdata 
-0x3ec3 014358 call mouse_spi_clk_gpio ,true 
-0x3ec4 014359 call gpio_config_output 
-0x3ec5 014360 call twspi_disable 
-0x3ec6 014364 fetcht 1 ,mem_lbutton_gpio 
-0x3ec7 014365 call gpio_set_wake_by_current_state 
-0x3ec8 014366 fetcht 1 ,mem_rbutton_gpio 
-0x3ec9 014367 call gpio_set_wake_by_current_state 
-0x3eca 014368 fetcht 1 ,mem_mbutton_gpio 
-0x3ecb 014369 call gpio_set_wake_by_current_state 
-0x3ecc 014371 fetcht 1 ,mem_bk_button_gpio 
-0x3ecd 014372 call gpio_set_wake_by_current_state 
-0x3ece 014373 fetcht 1 ,mem_fw_button_gpio 
-0x3ecf 014374 call gpio_set_wake_by_current_state 
-0x3ed0 014375 fetcht 1 ,mem_dpi_button_gpio 
-0x3ed1 014376 call gpio_set_wake_by_current_state 
-0x3ed2 014377 fetcht 1 ,mem_config_select_device_button_gpio 
-0x3ed3 014378 call gpio_set_wake_by_current_state 
-0x3ed4 014379 fetcht 1 ,mem_whee_a_data_gpio 
-0x3ed5 014380 call gpio_set_wake_by_current_state 
-0x3ed6 014381 fetcht 1 ,mem_whee_b_data_gpio 
-0x3ed7 014382 call gpio_set_wake_by_current_state 
-0x3ed8 014383 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3ed9 014384 call gpio_set_wake_by_current_state 
-0x3eda 014385 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3edb 014386 call gpio_set_wake_by_current_state 
-0x3edc 014387 fetcht 1 ,mem_sensor_data_gpio 
-0x3edd 014388 branch gpio_set_wake 
-:      014392 mouse_spi_clk_gpio:
-0x3ede 014393 arg mouse_spi2_clk_gpio ,temp 
-0x3edf 014394 rtn 
-:      014396 mouse_wheel_check:
-0x3ee0 014397 bpatch patch1c_4 ,mem_patch1c 
-0x3ee1 014398 call mouse_t_wheel_scan 
-0x3ee2 014399 call mouse_wheel_scan 
-0x3ee3 014400 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3ee4 014401 fetcht 1 ,mem_wheel_tb_old_pinlevel 
-0x3ee5 014402 store 1 ,mem_wheel_tb_old_pinlevel 
-0x3ee6 014403 isub temp ,null 
-0x3ee7 014404 nbranch app_lpm_wake_auto_lock ,zero 
-0x3ee8 014405 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3ee9 014406 fetcht 1 ,mem_mwheel_b_old_pinlevel 
-0x3eea 014407 store 1 ,mem_mwheel_b_old_pinlevel 
-0x3eeb 014408 isub temp ,null 
-0x3eec 014409 nbranch app_lpm_wake_auto_lock ,zero 
-0x3eed 014410 rtn 
-:      014411 mouse_t_wheel_scan:
-0x3eee 014412 fetch 1 ,mem_whee_ta_data_gpio 
-0x3eef 014413 rtneq gpio_disable 
-0x3ef0 014414 arg 0 ,rega 
-0x3ef1 014415 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3ef2 014416 call gpio_get_bit 
-0x3ef3 014417 setflag true ,0 ,rega 
-0x3ef4 014418 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3ef5 014419 call gpio_get_bit 
-0x3ef6 014420 setflag true ,1 ,rega 
-0x3ef7 014421 copy rega ,pdata 
-0x3ef8 014422 store 1 ,mem_wheel_tb_new_pinlevel 
-0x3ef9 014423 beq 0x01 ,mouse_t_wheel_scan_judge1 
-0x3efa 014424 beq 0x02 ,mouse_t_wheel_scan_judge2 
-0x3efb 014425 fetch 1 ,mem_wheel_tog 
-0x3efc 014426 bbit1 7 ,mouse_t_wheel_scan_judge3 
-0x3efd 014427 rtn 
-:      014429 mouse_t_wheel_scan_judge1:
-0x3efe 014430 fetch 1 ,mem_wheel_tb_old_pinlevel 
-0x3eff 014431 beq 0 ,mouse_t_wheel_scan_judge11 
-0x3f00 014432 beq 3 ,mouse_t_wheel_scan_judge12 
-0x3f01 014433 rtn 
-:      014434 mouse_t_wheel_scan_judge2:
-0x3f02 014435 fetch 1 ,mem_wheel_tb_old_pinlevel 
-0x3f03 014436 beq 0 ,mouse_t_wheel_scan_judge21 
-0x3f04 014437 beq 3 ,mouse_t_wheel_scan_judge22 
-0x3f05 014438 rtn 
-:      014439 mouse_t_wheel_scan_judge11:
-0x3f06 014440 jam 0x82 ,mem_wheel_tog 
-0x3f07 014441 rtn 
-:      014442 mouse_t_wheel_scan_judge12:
-0x3f08 014443 jam 0x81 ,mem_wheel_tog 
-0x3f09 014444 rtn 
-:      014445 mouse_t_wheel_scan_judge21:
-0x3f0a 014446 jam 0x80 ,mem_wheel_tog 
-0x3f0b 014447 rtn 
-:      014448 mouse_t_wheel_scan_judge22:
-0x3f0c 014449 jam 0x83 ,mem_wheel_tog 
-0x3f0d 014450 rtn 
-:      014451 mouse_t_wheel_scan_judge3:
-0x3f0e 014452 fetch 1 ,mem_wheel_tog 
-0x3f0f 014453 set0 7 ,pdata 
-0x3f10 014454 store 1 ,mem_wheel_tog 
-0x3f11 014455 beq 0 ,mouse_t_wheel_scan_judge30 
-0x3f12 014456 beq 1 ,mouse_t_wheel_scan_judge31 
-0x3f13 014457 beq 2 ,mouse_t_wheel_scan_judge32 
-0x3f14 014458 beq 3 ,mouse_t_wheel_scan_judge33 
-0x3f15 014459 rtn 
-:      014460 mouse_t_wheel_scan_judge30:
-0x3f16 014461 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f17 014462 beq 3 ,mouse_wheel_t_forward 
-0x3f18 014463 rtn 
-:      014464 mouse_t_wheel_scan_judge31:
-0x3f19 014465 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f1a 014466 beq 0 ,mouse_wheel_t_forward 
-0x3f1b 014467 rtn 
-:      014468 mouse_t_wheel_scan_judge32:
-0x3f1c 014469 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f1d 014470 beq 3 ,mouse_wheel_t_back 
-0x3f1e 014471 rtn 
-:      014472 mouse_t_wheel_scan_judge33:
-0x3f1f 014473 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f20 014474 beq 0 ,mouse_wheel_t_back 
-0x3f21 014475 rtn 
-:      014476 mouse_wheel_t_forward:
-0x3f22 014477 fetch 1 ,mem_mouse_tz_data_count1 
-0x3f23 014478 increase 1 ,pdata 
-0x3f24 014479 store 1 ,mem_mouse_tz_data_count1 
-0x3f25 014480 sub pdata ,1 ,null 
-0x3f26 014481 rtn positive 
-0x3f27 014482 jam 0 ,mem_mouse_tz_data_count1 
-0x3f28 014483 fetch 1 ,mem_mouse_tz_data 
-0x3f29 014484 increase 1 ,pdata 
-0x3f2a 014485 store 1 ,mem_mouse_tz_data 
-0x3f2b 014486 rtn 
-:      014487 mouse_wheel_t_back:
-0x3f2c 014488 fetch 1 ,mem_mouse_tz_data_count 
-0x3f2d 014489 increase 1 ,pdata 
-0x3f2e 014490 store 1 ,mem_mouse_tz_data_count 
-0x3f2f 014491 sub pdata ,1 ,null 
-0x3f30 014492 rtn positive 
-0x3f31 014493 jam 0 ,mem_mouse_tz_data_count 
-0x3f32 014494 fetch 1 ,mem_mouse_tz_data 
-0x3f33 014495 increase -1 ,pdata 
-0x3f34 014496 store 1 ,mem_mouse_tz_data 
-0x3f35 014497 rtn 
-:      014500 mouse_wheel_scan:
-0x3f36 014501 fetch 1 ,mem_whee_a_data_gpio 
-0x3f37 014502 rtneq gpio_disable 
-0x3f38 014503 arg 0 ,rega 
-0x3f39 014504 fetcht 1 ,mem_whee_a_data_gpio 
-0x3f3a 014505 call gpio_get_bit 
-0x3f3b 014506 setflag true ,0 ,rega 
-0x3f3c 014507 fetcht 1 ,mem_whee_b_data_gpio 
-0x3f3d 014508 call gpio_get_bit 
-0x3f3e 014509 setflag true ,1 ,rega 
-0x3f3f 014510 copy rega ,pdata 
-0x3f40 014511 store 1 ,mem_mwheel_b_new_pinlevel 
-0x3f41 014512 beq 0x01 ,mouse_wheel_scan_judge1 
-0x3f42 014513 beq 0x02 ,mouse_wheel_scan_judge2 
-0x3f43 014514 fetch 1 ,mem_mwheel_tog 
-0x3f44 014515 bbit1 7 ,mouse_wheel_scan_judge3 
-0x3f45 014516 rtn 
-:      014518 mouse_wheel_scan_judge1:
-0x3f46 014519 fetch 1 ,mem_mwheel_b_old_pinlevel 
-0x3f47 014520 beq 0 ,mouse_wheel_scan_judge11 
-0x3f48 014521 beq 3 ,mouse_wheel_scan_judge12 
-0x3f49 014522 rtn 
-:      014523 mouse_wheel_scan_judge2:
-0x3f4a 014524 fetch 1 ,mem_mwheel_b_old_pinlevel 
-0x3f4b 014525 beq 0 ,mouse_wheel_scan_judge21 
-0x3f4c 014526 beq 3 ,mouse_wheel_scan_judge22 
-0x3f4d 014527 rtn 
-:      014528 mouse_wheel_scan_judge11:
-0x3f4e 014529 jam 0x82 ,mem_mwheel_tog 
-0x3f4f 014530 rtn 
-:      014531 mouse_wheel_scan_judge12:
-0x3f50 014532 jam 0x81 ,mem_mwheel_tog 
-0x3f51 014533 rtn 
-:      014534 mouse_wheel_scan_judge21:
-0x3f52 014535 jam 0x80 ,mem_mwheel_tog 
-0x3f53 014536 rtn 
-:      014537 mouse_wheel_scan_judge22:
-0x3f54 014538 jam 0x83 ,mem_mwheel_tog 
-0x3f55 014539 rtn 
-:      014540 mouse_wheel_scan_judge3:
-0x3f56 014541 fetch 1 ,mem_mwheel_tog 
-0x3f57 014542 set0 7 ,pdata 
-0x3f58 014543 store 1 ,mem_mwheel_tog 
-0x3f59 014544 beq 0 ,mouse_wheel_scan_judge30 
-0x3f5a 014545 beq 1 ,mouse_wheel_scan_judge31 
-0x3f5b 014546 beq 2 ,mouse_wheel_scan_judge32 
-0x3f5c 014547 beq 3 ,mouse_wheel_scan_judge33 
-0x3f5d 014548 rtn 
-:      014549 mouse_wheel_scan_judge30:
-0x3f5e 014550 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f5f 014551 beq 3 ,mouse_wheel_forward 
-0x3f60 014552 rtn 
-:      014553 mouse_wheel_scan_judge31:
-0x3f61 014554 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f62 014555 beq 0 ,mouse_wheel_forward 
-0x3f63 014556 rtn 
-:      014557 mouse_wheel_scan_judge32:
-0x3f64 014558 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f65 014559 beq 3 ,mouse_wheel_back 
-0x3f66 014560 rtn 
-:      014561 mouse_wheel_scan_judge33:
-0x3f67 014562 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f68 014563 beq 0 ,mouse_wheel_back 
-0x3f69 014564 rtn 
-:      014565 mouse_wheel_forward:
-0x3f6a 014566 jam 0 ,mem_mouse_z_data_count1 
-0x3f6b 014567 fetch 1 ,mem_mouse_z_data 
-0x3f6c 014568 increase 1 ,pdata 
-0x3f6d 014569 store 1 ,mem_mouse_z_data 
-0x3f6e 014570 rtn 
-:      014571 mouse_wheel_back:
-0x3f6f 014572 jam 0 ,mem_mouse_z_data_count 
-0x3f70 014573 fetch 1 ,mem_mouse_z_data 
-0x3f71 014574 increase -1 ,pdata 
-0x3f72 014575 store 1 ,mem_mouse_z_data 
-0x3f73 014576 rtn 
-:      014579 mouse_hid_connected:
-0x3f74 014580 setarg hid_handshake_timeout 
-0x3f75 014581 store 1 ,mem_hid_handshake_timer_count 
-0x3f76 014582 rtn 
-:      014584 mouse_send_process:
-0x3f77 014585 fetch 1 ,mem_app_handshake_flag 
-0x3f78 014586 rtn blank 
-0x3f79 014587 call l2cap_malloc_is_fifo_nearly_full 
-0x3f7a 014588 nrtn blank 
-0x3f7b 014589 fetch mouse_flag_len ,mem_mouse_flag 
-0x3f7c 014590 bbit1 mosue_24g_pairing_flag ,mouse_send_empty_data 
-0x3f7d 014591 bbit1 mouse_select_device_flag ,mouse_send_empty_data 
-0x3f7e 014592 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
-0x3f7f 014593 call mouse_motion 
-0x3f80 014594 nrtn user 
-:      014595 mouse_send_data:
-0x3f81 014596 arg 9 ,rega 
-0x3f82 014597 call hid_malloc_tx_buff 
-0x3f83 014598 fetch 2 ,mem_hid_int_remote_cid 
-0x3f84 014599 istore 2 ,contw 
-0x3f85 014600 setarg 0x02a1 
-0x3f86 014601 istore 2 ,contw 
-0x3f87 014602 fetch 7 ,mem_mouse_key 
-0x3f88 014603 istore 7 ,contw 
-0x3f89 014604 rtn 
-:      014607 mouse_send_empty_data:
-0x3f8a 014608 setarg 0 
-0x3f8b 014609 store 7 ,mem_mouse_key 
-0x3f8c 014610 branch mouse_send_data 
-:      014613 mouse_no_data_timer_init:
-0x3f8d 014614 fetch 2 ,mem_mouse_no_data_timeout 
-0x3f8e 014615 store 2 ,mem_mouse_no_data_timer 
-0x3f8f 014616 rtn 
-:      014619 mouse_fill_data_le:
-0x3f90 014620 bpatch patch1c_5 ,mem_patch1c 
-0x3f91 014621 arg 7 ,rega 
-0x3f92 014622 fetcht 2 ,mem_le_notify_handle 
-0x3f93 014623 call le_att_malloc_tx_notify 
-0x3f94 014624 fetch 7 ,mem_mouse_key 
-0x3f95 014625 istore 7 ,contw 
-0x3f96 014626 rtn 
-:      014628 mouse_motion:
-0x3f97 014629 bpatch patch1c_6 ,mem_patch1c 
-0x3f98 014630 disable user 
-0x3f99 014631 setarg 0 
-0x3f9a 014632 store 6 ,mem_mouse_x 
-0x3f9b 014633 call mouse_cheak_sensor_data 
-0x3f9c 014634 call mouse_zwheel 
-0x3f9d 014635 call mouse_t_zwheel 
-0x3f9e 014636 call mouse_key 
-0x3f9f 014637 nrtn user 
-0x3fa0 014638 call mouse_no_data_timer_init 
-0x3fa1 014639 arg mouse_statue_up_flag ,queue 
-0x3fa2 014640 branch mouse_enable_function_flag 
-:      014642 motion_6clk_direction_dispose:
-0x3fa3 014643 fetch 2 ,mem_mouse_x 
-0x3fa4 014644 sub pdata ,0 ,pdata 
-0x3fa5 014645 store 2 ,mem_mouse_x 
-0x3fa6 014646 branch enable_user 
-:      014647 motion_12clk_direction_dispose:
-0x3fa7 014648 fetch 2 ,mem_mouse_y 
-0x3fa8 014649 sub pdata ,0 ,pdata 
-0x3fa9 014650 store 2 ,mem_mouse_y 
-0x3faa 014651 branch enable_user 
-:      014652 motion_9clk_direction_dispose:
-0x3fab 014653 fetch 2 ,mem_mouse_y 
-0x3fac 014654 sub pdata ,0 ,pdata 
-0x3fad 014655 store 2 ,mem_mouse_y 
-0x3fae 014656 fetch 2 ,mem_mouse_x 
-0x3faf 014657 sub pdata ,0 ,pdata 
-0x3fb0 014658 store 2 ,mem_mouse_x 
-0x3fb1 014659 call mouse_sensor_data_swap_places 
-0x3fb2 014660 branch enable_user 
-:      014661 motion_3clk_direction_dispose:
-0x3fb3 014662 call mouse_sensor_data_swap_places 
-0x3fb4 014663 branch enable_user 
-:      014664 mouse_cheak_sensor_data:
-0x3fb5 014665 fetch 1 ,mem_spi_write_flash_sm 
-0x3fb6 014666 rtnne flash_sm_no_buys 
-0x3fb7 014667 fetch 1 ,mem_config_sensor_type 
-0x3fb8 014668 beq p3205 ,mouse_p32xx_sensor_motion 
-0x3fb9 014669 beq p3065 ,mouse_p32xx_sensor_motion 
-0x3fba 014670 beq ka8 ,mouse_p32xx_sensor_motion 
-0x3fbb 014671 beq p3204 ,mouse_p32xx_sensor_motion 
-0x3fbc 014672 beq p3212 ,mouse_p3212_sensor_motion 
-0x3fbd 014673 beq p3610 ,mouse_p3610_sensor_motion 
-0x3fbe 014674 beq p3065_xy ,mouse_p32xx_sensor_motion 
-0x3fbf 014675 branch mouse_p32xx_sensor_motion 
-:      014677 mouse_clear_sensor_data:
-0x3fc0 014678 fetch 1 ,mem_mouse_move_flag 
-0x3fc1 014679 call mouse_read_sensor_common ,blank 
-0x3fc2 014680 jam 1 ,mem_mouse_move_flag 
-0x3fc3 014681 rtn 
-:      014684 mouse_p3212_sensor_motion:
-0x3fc4 014685 call mouse_clear_sensor_data 
-0x3fc5 014686 fetcht 1 ,mem_sensor_data_gpio 
-0x3fc6 014687 call gpio_get_bit 
-0x3fc7 014688 nrtn true 
-:      014689 mouse_p3212_sensor_motion_1:
-0x3fc8 014690 setarg pan_reg_pid_l 
-0x3fc9 014691 call twspi_read 
-0x3fca 014692 bne p32xx_id1 ,mouse_twspi_reset 
-0x3fcb 014693 setarg pan_reg_motion_staus 
-0x3fcc 014694 call twspi_read 
-0x3fcd 014695 rtnbit0 7 
-0x3fce 014696 call mouse_read_sensor_common 
-0x3fcf 014697 call mouse_read_3212sensor_xy_high 
-0x3fd0 014698 store 1 ,mem_mouse_xy_h 
-0x3fd1 014699 rshift4 pdata ,pdata 
-0x3fd2 014700 call extsign_bit3 
-0x3fd3 014701 store 1 ,mem_mouse_x + 1 
-0x3fd4 014702 fetch 1 ,mem_mouse_xy_h 
-0x3fd5 014703 and pdata ,0x0f ,pdata 
-0x3fd6 014704 call extsign_bit3 
-0x3fd7 014705 store 1 ,mem_mouse_y + 1 
-0x3fd8 014706 fetch 1 ,mem_config_sensor_angle 
-0x3fd9 014707 beq mouse_6clk_angle ,motion_6clk_direction_dispose 
-0x3fda 014708 beq mouse_9clk_angle ,motion_9clk_direction_dispose 
-0x3fdb 014709 beq mouse_12clk_angle ,motion_12clk_direction_dispose 
-0x3fdc 014710 beq mouse_3clk_angle ,motion_3clk_direction_dispose 
-0x3fdd 014711 rtn 
-:      014713 mouse_read_3212sensor_xy_high:
-0x3fde 014714 setarg 0x12 
-0x3fdf 014715 branch twspi_read 
-:      014717 mouse_p3065_judge:
-0x3fe0 014718 beq p3065_id1 ,mouse_p32xx_sensor_motion_1 
-0x3fe1 014719 branch mouse_twspi_reset 
-:      014721 mouse_p32xx_sensor_motion:
-0x3fe2 014722 call mouse_clear_sensor_data 
-0x3fe3 014723 disable user 
-0x3fe4 014724 fetcht 1 ,mem_sensor_data_gpio 
-0x3fe5 014725 call gpio_get_bit 
-0x3fe6 014726 nrtn true 
-:      014727 mouse_p32xx_sensor_motion_2:
-0x3fe7 014728 setarg pan_reg_pid_l 
-0x3fe8 014729 call twspi_read 
-0x3fe9 014730 bne p32xx_id1 ,mouse_p3065_judge 
-:      014731 mouse_p32xx_sensor_motion_1:
-0x3fea 014732 setarg pan_reg_motion_staus 
-0x3feb 014733 call twspi_read 
-0x3fec 014734 rtnbit0 7 
-0x3fed 014735 call mouse_read_sensor_common 
-0x3fee 014736 fetch 1 ,mem_mouse_x 
-0x3fef 014737 call extsign 
-0x3ff0 014738 store 2 ,mem_mouse_x 
-0x3ff1 014739 fetch 1 ,mem_mouse_y 
-0x3ff2 014740 call extsign 
-0x3ff3 014741 store 2 ,mem_mouse_y 
-0x3ff4 014742 fetch 1 ,mem_config_sensor_angle 
-0x3ff5 014743 beq mouse_6clk_angle ,motion32xx_6clk_direction_selection 
-0x3ff6 014744 beq mouse_9clk_angle ,motion32xx_9clk_direction_selection 
-0x3ff7 014745 beq mouse_12clk_angle ,motion32xx_12clk_direction_selection 
-0x3ff8 014746 beq mouse_3clk_angle ,motion32xx_3clk_direction_selection 
-0x3ff9 014747 rtn 
-:      014749 motion32xx_6clk_direction_selection:
-0x3ffa 014750 call motion_6clk_direction_dispose 
-0x3ffb 014751 branch mouse_sensor_sdio_low 
-:      014752 motion32xx_9clk_direction_selection:
-0x3ffc 014753 call motion_9clk_direction_dispose 
-0x3ffd 014754 branch mouse_sensor_sdio_low 
-:      014755 motion32xx_12clk_direction_selection:
-0x3ffe 014756 call motion_12clk_direction_dispose 
-0x3fff 014757 branch mouse_sensor_sdio_low 
-:      014758 motion32xx_3clk_direction_selection:
-0x4000 014759 call motion_3clk_direction_dispose 
-0x4001 014760 branch mouse_sensor_sdio_low 
-:      014762 mouse_sensor_data_swap_places:
-0x4002 014763 fetch 2 ,mem_mouse_y 
-0x4003 014764 fetcht 2 ,mem_mouse_x 
-0x4004 014765 store 2 ,mem_mouse_x 
-0x4005 014766 storet 2 ,mem_mouse_y 
-0x4006 014767 rtn 
-:      014769 mouse_p3610sensor_read:
-0x4007 014770 call spi_ncs_enable 
-0x4008 014771 nop 100 
-0x4009 014772 copy regb ,pdata 
-0x400a 014773 call twspi_read 
-0x400b 014774 copy pdata ,regb 
-0x400c 014775 call spi_ncs_disable 
-0x400d 014776 nop 100 
-0x400e 014777 copy regb ,pdata 
-0x400f 014778 rtn 
-:      014779 mouse_p3610_sensor_motion:
-0x4010 014780 disable user 
-0x4011 014781 fetcht 1 ,mem_sensor_data_gpio 
-0x4012 014782 call gpio_get_bit 
-0x4013 014783 nrtn true 
-0x4014 014784 arg pan_reg_motion_staus ,regb 
-0x4015 014785 call mouse_p3610sensor_read 
-0x4016 014786 rtnbit0 7 
-0x4017 014787 arg pan_reg_pid_l ,regb 
-0x4018 014788 call mouse_p3610sensor_read 
-0x4019 014789 store 1 ,mem_sensor_id1 
-0x401a 014790 bne p3610_id1 ,mouse_init_3610sensor_reset 
-0x401b 014791 fetch 1 ,mem_mouse_move_flag 
-0x401c 014792 call mouse_read_sensor3610_data ,blank 
-0x401d 014793 jam 1 ,mem_mouse_move_flag 
-0x401e 014794 call mouse_read_sensor3610_data 
-0x401f 014795 fetch 1 ,mem_mouse_xy_h 
-0x4020 014796 rshift4 pdata ,pdata 
-0x4021 014797 call extsign_bit3 
-0x4022 014798 store 1 ,mem_mouse_x + 1 
-0x4023 014799 fetch 1 ,mem_mouse_xy_h 
-0x4024 014800 and pdata ,0x0f ,pdata 
-0x4025 014801 call extsign_bit3 
-0x4026 014802 store 1 ,mem_mouse_y + 1 
-0x4027 014803 fetch 1 ,mem_config_sensor_angle 
-0x4028 014804 beq 0 ,motion3610_6clk_direction_selection 
-0x4029 014805 beq 1 ,motion3610_9clk_direction_selection 
-0x402a 014806 beq 2 ,motion3610_12clk_direction_selection 
-0x402b 014807 beq 3 ,motion3610_3clk_direction_selection 
-0x402c 014808 rtn 
-:      014810 mouse_3610_smart_select:
-0x402d 014811 fetch 1 ,mem_sensor_smart_flag 
-0x402e 014812 beq p3610_smart_enable ,mouse_3610_smart_disable 
-0x402f 014813 beq p3610_smart_disable ,mouse_3610_smart_enable 
-0x4030 014814 rtn 
-:      014817 motion3610_6clk_direction_selection:
-0x4031 014818 call motion_6clk_direction_dispose 
-0x4032 014819 branch mouse_3610_smart_select 
-:      014821 motion3610_12clk_direction_selection:
-0x4033 014822 call motion_12clk_direction_dispose 
-0x4034 014823 branch mouse_3610_smart_select 
-:      014825 motion3610_9clk_direction_selection:
-0x4035 014826 call motion_9clk_direction_dispose 
-0x4036 014827 branch mouse_3610_smart_select 
-:      014829 motion3610_3clk_direction_selection:
-0x4037 014830 call motion_3clk_direction_dispose 
-0x4038 014831 branch mouse_3610_smart_select 
-:      014833 mouse_read_sensor3610_data:
-0x4039 014834 call spi_ncs_enable 
-0x403a 014835 call mouse_read_sensor_common 
-0x403b 014836 arg 5 ,pdata 
-0x403c 014837 call twspi_read 
-0x403d 014838 store 1 ,mem_mouse_xy_h 
-0x403e 014839 arg 7 ,pdata 
-0x403f 014840 call twspi_read 
-0x4040 014841 store 1 ,mem_sensor_shutter_hi 
-0x4041 014842 arg 8 ,pdata 
-0x4042 014843 call twspi_read 
-0x4043 014844 store 1 ,mem_sensor_shutter_lo 
-0x4044 014845 branch spi_ncs_disable 
-:      014848 mouse_3610_smart_enable:
-0x4045 014849 fetch 1 ,mem_sensor_shutter_hi 
-0x4046 014850 rtnne 0 
-0x4047 014851 fetch 1 ,mem_sensor_shutter_lo 
-0x4048 014852 sub pdata ,45 ,null 
-0x4049 014853 rtn positive 
-0x404a 014854 jam p3610_smart_enable ,mem_sensor_smart_flag 
-0x404b 014855 setarg 0xba41 
-0x404c 014856 call sensor_write 
-0x404d 014857 setarg 0x0032 
-0x404e 014858 call sensor_write 
-0x404f 014859 setarg 0xb541 
-0x4050 014860 branch sensor_write 
-:      014861 mouse_3610_smart_disable:
-0x4051 014862 fetch 1 ,mem_sensor_shutter_hi 
-0x4052 014863 rtnne 0 
-0x4053 014864 fetch 1 ,mem_sensor_shutter_lo 
-0x4054 014865 sub pdata ,45 ,null 
-0x4055 014866 nrtn positive 
-0x4056 014867 jam p3610_smart_disable ,mem_sensor_smart_flag 
-0x4057 014868 setarg 0xba41 
-0x4058 014869 call sensor_write 
-0x4059 014870 setarg 0x8032 
-0x405a 014871 call sensor_write 
-0x405b 014872 setarg 0xb541 
-0x405c 014873 branch sensor_write 
-:      014877 mouse_read_sensor_common:
-0x405d 014878 arg pan_reg_delta_x ,pdata 
-0x405e 014879 call twspi_read 
-0x405f 014880 store 2 ,mem_mouse_x 
-0x4060 014881 arg pan_reg_delta_y ,pdata 
-0x4061 014882 call twspi_read 
-0x4062 014883 store 2 ,mem_mouse_y 
-0x4063 014884 rtn 
-:      014886 mouse_set_qdecoder_x:
-0x4064 014887 arg mouse_default_xa_gpio ,temp 
-0x4065 014888 call gpio_config_input 
-0x4066 014889 arg mouse_default_xa_gpio ,temp 
-0x4067 014890 call gpio_get_bit 
-0x4068 014891 rtn true 
-0x4069 014892 hfetch 1 ,core_qdec_cntx 
-0x406a 014893 set1 4 ,pdata 
-0x406b 014894 hstore 1 ,core_qdec_cntx 
-0x406c 014895 rtn 
-:      014897 mouse_hardware_zwheel:
-0x406d 014898 fetcht 1 ,mem_mouse_z_data 
-0x406e 014899 hfetch 1 ,core_qdec_cntx 
-0x406f 014900 iadd temp ,pdata 
-0x4070 014901 rtn blank 
-0x4071 014902 store 1 ,mem_mouse_z 
-0x4072 014903 jam 0 ,mem_mouse_z_data 
-0x4073 014904 branch enable_user 
-:      014905 mouse_hardware_zwheel_beforelpm:
-0x4074 014906 fetcht 1 ,mem_mouse_z_data 
-0x4075 014907 hfetch 1 ,core_qdec_cntx 
-0x4076 014908 iadd temp ,pdata 
-0x4077 014909 store 1 ,mem_mouse_z_data 
-0x4078 014910 rtn 
-:      014911 mouse_zwheel:
-0x4079 014912 fetch 1 ,mem_mouse_z_data 
-0x407a 014913 rtn blank 
-0x407b 014914 store 1 ,mem_mouse_z 
-0x407c 014915 jam 0 ,mem_mouse_z_data 
-0x407d 014916 branch enable_user 
-:      014918 mouse_t_zwheel:
-0x407e 014919 fetch 1 ,mem_mouse_tz_data 
-0x407f 014920 rtn blank 
-0x4080 014921 store 1 ,mem_mouse_tz 
-0x4081 014922 jam 0 ,mem_mouse_tz_data 
-0x4082 014923 branch enable_user 
-:      014925 mouse_check_key_gpio:
-0x4083 014926 arg 0 ,rega 
-0x4084 014927 fetcht 1 ,mem_lbutton_gpio 
-0x4085 014928 call gpio_get_bit 
-0x4086 014929 setflag true ,0 ,rega 
-0x4087 014930 fetcht 1 ,mem_rbutton_gpio 
-0x4088 014931 call gpio_get_bit 
-0x4089 014932 setflag true ,1 ,rega 
-0x408a 014933 fetcht 1 ,mem_mbutton_gpio 
-0x408b 014934 call gpio_get_bit 
-0x408c 014935 setflag true ,2 ,rega 
-0x408d 014936 call mouse_check_s_key_gpio 
-:      014937 mouse_check_key_gpio_output:
-0x408e 014938 copy rega ,pdata 
-0x408f 014939 rtn 
-:      014940 mouse_check_s_key_gpio:
-0x4090 014941 fetch 1 ,mem_bk_button_gpio 
-0x4091 014942 rtneq gpio_disable 
-0x4092 014943 fetcht 1 ,mem_bk_button_gpio 
-0x4093 014944 call gpio_get_bit 
-0x4094 014945 setflag true ,3 ,rega 
-0x4095 014946 fetcht 1 ,mem_fw_button_gpio 
-0x4096 014947 call gpio_get_bit 
-0x4097 014948 setflag true ,4 ,rega 
-0x4098 014949 rtn 
-:      014951 mouse_key:
-0x4099 014952 call mouse_check_key_gpio 
-0x409a 014953 call mouse_set_mult 
-0x409b 014954 call mouse_24g_key 
-0x409c 014955 copy rega ,pdata 
-0x409d 014956 fetcht 1 ,mem_mouse_key 
-0x409e 014957 store 1 ,mem_mouse_key 
-0x409f 014958 ixor temp ,pdata 
-0x40a0 014959 sub pdata ,0 ,null 
-0x40a1 014960 rtn zero 
-0x40a2 014961 branch enable_user 
-:      014963 mouse_24g_key:
-0x40a3 014964 rtnmark0 mark_24g 
-0x40a4 014965 copy rega ,pdata 
-0x40a5 014966 rtn blank 
-0x40a6 014967 store 1 ,mem_mouse_key 
-0x40a7 014968 branch enable_user 
-:      014971 mouse_set_mult:
-0x40a8 014972 fetch 2 ,mem_ui_state_map 
-0x40a9 014973 bbit1 ui_state_ble_connected ,mouse_set_ble_mult 
-0x40aa 014974 fetch 2 ,mem_ui_state_map 
-0x40ab 014975 bbit1 ui_state_bt_connected ,mouse_set_bt_mult 
-0x40ac 014976 rtn 
-:      014977 mouse_set_ble_mult:
-0x40ad 014978 copy rega ,pdata 
-0x40ae 014979 nbranch le_set_config_short_mult ,blank 
-0x40af 014980 branch le_clr_config_short_mult 
-:      014981 mouse_set_bt_mult:
-0x40b0 014982 copy rega ,pdata 
-0x40b1 014983 nbranch classic_bt_set_mult_short_flag ,blank 
-0x40b2 014984 branch classic_bt_clr_mult_short_flag 
-:      014987 mouse_sensor_sdio_low:
-0x40b3 014988 bpatch patch1c_7 ,mem_patch1c 
-0x40b4 014989 arg mouse_spi1_sdio_gpio ,temp 
-0x40b5 014990 fetch mouse_flag_len ,mem_mouse_flag 
-0x40b6 014991 isolate1 mouse_enable_spi2 ,pdata 
-0x40b7 014992 call mouse_sensor_sdio_low2 ,true 
-0x40b8 014993 call gpio_get_bit 
-0x40b9 014994 rtn true 
-0x40ba 014995 setarg 0x0a 
-0x40bb 014996 call twspi_read 
-0x40bc 014997 nop 1000 
-0x40bd 014998 branch mouse_sensor_sdio_low 
-:      014999 mouse_sensor_sdio_low2:
-0x40be 015000 arg mouse_spi2_sdio_gpio ,temp 
-0x40bf 015001 rtn 
-:      015003 mouse_spi_sdio_gpio_pollup:
-0x40c0 015004 fetch mouse_flag_len ,mem_mouse_flag 
-0x40c1 015005 bbit1 mouse_enable_spi2 ,mouse_spi2_sdio_gpio_pollup 
-:      015006 mouse_spi1_sdio_gpio_pollup:
-0x40c2 015007 arg mouse_spi1_sdio_gpio ,temp 
-0x40c3 015008 branch gpio_config_input_without_wake 
-:      015009 mouse_spi2_sdio_gpio_pollup:
-0x40c4 015010 arg mouse_spi2_sdio_gpio ,temp 
-0x40c5 015011 branch gpio_config_input_without_wake 
-:      015014 mouse_init_sunt:
-0x40c6 015015 call mouse_spi_init 
-0x40c7 015016 rtn wake 
-0x40c8 015017 call mouse_spi_sdio_gpio_pollup 
-0x40c9 015018 fetch 1 ,mem_config_sensor_type 
-0x40ca 015019 beq p3610 ,mouse_init_3610sensor 
-:      015020 mouse_init_sensor:
-0x40cb 015021 call mouse_read_sensor_id 
-0x40cc 015022 beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
-0x40cd 015023 beq p3065_id1 ,mouse_p3065_init_param 
-0x40ce 015024 call mouse_twspi_reset 
-0x40cf 015025 nop 1000 
-0x40d0 015026 branch mouse_init_sensor 
-:      015027 mouse_twspi_reset:
-0x40d1 015028 bpatch patch1d_0 ,mem_patch1d 
-0x40d2 015029 fetch mouse_flag_len ,mem_mouse_flag 
-0x40d3 015030 bbit1 mouse_enable_spi2 ,twspi_reset2 
-0x40d4 015031 branch twspi_reset 
-:      015033 mouse_init_3610sensor:
-0x40d5 015034 call mouse_read_sensor_id 
-0x40d6 015035 beq p3610_id1 ,mouse_init_p3610 
-0x40d7 015036 call mouse_init_3610sensor_reset 
-0x40d8 015037 branch mouse_init_3610sensor 
-:      015039 mouse_read_sensor_id:
-0x40d9 015040 setarg pan_reg_pid_h 
-0x40da 015041 call twspi_read 
-0x40db 015042 store 1 ,mem_sensor_id2 
-0x40dc 015043 setarg pan_reg_pid_l 
-0x40dd 015044 call twspi_read 
-0x40de 015045 store 1 ,mem_sensor_id1 
-0x40df 015046 rtn 
-:      015047 mouse_init_p32xx_id2_judge:
-0x40e0 015048 fetch 1 ,mem_sensor_id2 
-0x40e1 015049 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
-0x40e2 015050 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
-0x40e3 015051 beq p3212_id2 ,mouse_3212_init_param 
-0x40e4 015052 beq pka8_id2 ,mouse_ka8_init_param 
-0x40e5 015053 rtn 
-:      015054 mouse_ka8_init_param:
-0x40e6 015055 jam ka8 ,mem_config_sensor_type 
-0x40e7 015056 rtn 
-:      015057 mouse_p3065xy_init_param:
-0x40e8 015058 jam p3065_xy ,mem_config_sensor_type 
-0x40e9 015059 rtn 
-:      015060 mouse_p3065_init_param:
-0x40ea 015061 fetch 1 ,mem_sensor_id2 
-0x40eb 015062 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
-0x40ec 015063 jam p3065 ,mem_config_sensor_type 
-0x40ed 015064 rtn 
-:      015065 mouse_3212_init_param:
-0x40ee 015066 jam p3212 ,mem_config_sensor_type 
-0x40ef 015067 call mouse_sensor_disable_wp 
-0x40f0 015068 setarg 0x3426 
-0x40f1 015069 call twspi_write 
-0x40f2 015070 setarg 0x0419 
-0x40f3 015071 call twspi_write 
-:      015072 mouse_sensor_enable_wp:
-0x40f4 015073 setarg 0x0009 
-0x40f5 015074 branch twspi_write 
-:      015075 mouse_sensor_disable_wp:
-0x40f6 015076 setarg 0x5a09 
-0x40f7 015077 branch twspi_write 
-:      015079 mouse_3204_3l_init_param:
-0x40f8 015080 jam p3204 ,mem_config_sensor_type 
-0x40f9 015081 call mouse_sensor_disable_wp 
-0x40fa 015082 setarg 0x0f0d 
-0x40fb 015083 call twspi_write 
-0x40fc 015084 setarg 0xe31d 
-0x40fd 015085 call twspi_write 
-0x40fe 015086 setarg 0xd27d 
-0x40ff 015087 call twspi_write 
-0x4100 015088 call mouse_32xx_init_param 
-0x4101 015089 branch mouse_32xx_init_param_1 
-:      015091 mouse_32xx_init_param:
-0x4102 015092 setarg 0x351b 
-0x4103 015093 call twspi_write 
-0x4104 015094 setarg 0xb428 
-0x4105 015095 call twspi_write 
-0x4106 015096 setarg 0x4629 
-0x4107 015097 call twspi_write 
-0x4108 015098 setarg 0x962a 
-0x4109 015099 call twspi_write 
-0x410a 015100 setarg 0x8c2b 
-0x410b 015101 call twspi_write 
-0x410c 015102 setarg 0x6e2c 
-0x410d 015103 call twspi_write 
-0x410e 015104 setarg 0x642d 
-0x410f 015105 call twspi_write 
-0x4110 015106 setarg 0x5f38 
-0x4111 015107 call twspi_write 
-0x4112 015108 setarg 0x0f39 
-0x4113 015109 call twspi_write 
-0x4114 015110 setarg 0x323a 
-0x4115 015111 call twspi_write 
-0x4116 015112 setarg 0x473b 
-0x4117 015113 call twspi_write 
-0x4118 015114 setarg 0x1042 
-0x4119 015115 branch twspi_write 
-:      015116 mouse_32xx_init_param_1:
-0x411a 015117 setarg 0x2e54 
-0x411b 015118 call twspi_write 
-0x411c 015119 setarg 0xf255 
-0x411d 015120 call twspi_write 
-0x411e 015121 setarg 0xf461 
-0x411f 015122 call twspi_write 
-0x4120 015123 setarg 0x7063 
-0x4121 015124 call twspi_write 
-0x4122 015125 setarg 0x5275 
-0x4123 015126 call twspi_write 
-0x4124 015127 setarg 0x4176 
-0x4125 015128 call twspi_write 
-0x4126 015129 setarg 0xed77 
-0x4127 015130 call twspi_write 
-0x4128 015131 setarg 0x2378 
-0x4129 015132 call twspi_write 
-0x412a 015133 setarg 0x4679 
-0x412b 015134 call twspi_write 
-0x412c 015135 setarg 0xe57a 
-0x412d 015136 call twspi_write 
-0x412e 015137 setarg 0x487c 
-0x412f 015138 call twspi_write 
-0x4130 015139 setarg 0x777e 
-0x4131 015140 call twspi_write 
-0x4132 015141 setarg 0x017f 
-0x4133 015142 call twspi_write 
-0x4134 015143 setarg 0x000b 
-0x4135 015144 call twspi_write 
-0x4136 015145 setarg 0x007f 
-0x4137 015146 call twspi_write 
-0x4138 015147 branch mouse_sensor_enable_wp 
-:      015150 mouse_3205_3t_init_param:
-0x4139 015151 jam p3205 ,mem_config_sensor_type 
-0x413a 015152 call mouse_sensor_disable_wp 
-0x413b 015153 setarg 0x100d 
-0x413c 015154 call twspi_write 
-0x413d 015155 setarg 0xed1d 
-0x413e 015156 call twspi_write 
-0x413f 015157 setarg 0x807d 
-0x4140 015158 call twspi_write 
-0x4141 015159 call mouse_32xx_init_param 
-0x4142 015160 setarg 0x0943 
-0x4143 015161 call twspi_write 
-0x4144 015162 branch mouse_32xx_init_param_1 
-:      015165 mouse_init_3610sensor_reset:
-0x4145 015166 fetcht 1 ,mem_sensor_reset_gpio 
-0x4146 015167 call gpio_out_active 
-0x4147 015168 call delay_10ms 
-0x4148 015169 fetcht 1 ,mem_sensor_reset_gpio 
-0x4149 015170 call gpio_out_inactive 
-0x414a 015171 branch delay_10ms 
-:      015173 mouse_init_p3610:
-0x414b 015174 jam p3610 ,mem_config_sensor_type 
-0x414c 015175 setarg 0xba41 
-0x414d 015176 call sensor_write 
-0x414e 015177 setarg 0x0d11 
-0x414f 015178 call sensor_write 
-0x4150 015179 setarg 0x041b 
-0x4151 015180 call sensor_write 
-0x4152 015181 setarg 0x041c 
-0x4153 015182 call sensor_write 
-0x4154 015183 setarg 0x0f1d 
-0x4155 015184 call sensor_write 
-0x4156 015185 setarg 0x0032 
-0x4157 015186 call sensor_write 
-0x4158 015187 setarg 0xb541 
-0x4159 015188 branch sensor_write 
-:      015192 mouse_set_sensor_reg:
-0x415a 015193 setarg 0xba41 
-0x415b 015194 call sensor_write 
-0x415c 015195 nop 4000 
-0x415d 015196 setarg 0xff7f 
-0x415e 015197 call sensor_write 
-0x415f 015198 copy rega ,pdata 
-0x4160 015199 call sensor_write 
-0x4161 015200 setarg 0x007f 
-0x4162 015201 call sensor_write 
-0x4163 015202 setarg 0xb541 
-0x4164 015203 branch sensor_write 
-:      015205 extsign:
-0x4165 015206 rtnbit0 7 
-0x4166 015207 arg 0xff00 ,temp 
-0x4167 015208 ior temp ,pdata 
-0x4168 015209 rtn 
-:      015211 extsign_bit3:
-0x4169 015212 rtnbit0 3 
-0x416a 015213 arg 0xf0 ,temp 
-0x416b 015214 ior temp ,pdata 
-0x416c 015215 rtn 
-:      015218 mouse_le:
-0x416d 015219 call le_fifo_check_nearly_full 
-0x416e 015220 nrtn blank 
-0x416f 015221 fetch 1 ,mem_le_connect_status_flag 
-0x4170 015222 and pdata ,0x03 ,pdata 
-0x4171 015223 rtnne 0x03 
-0x4172 015224 fetch mouse_flag_len ,mem_mouse_flag 
-0x4173 015225 bbit1 mosue_24g_pairing_flag ,mouse_le_send_empty_packet 
-0x4174 015226 bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
-0x4175 015227 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-0x4176 015228 call mouse_motion 
-0x4177 015229 nrtn user 
-0x4178 015230 branch mouse_fill_data_le 
-:      015232 mouse_le_send_empty_packet:
-0x4179 015233 setarg 0 
-0x417a 015234 store 7 ,mem_mouse_key 
-0x417b 015235 branch mouse_fill_data_le 
-:      015237 mouse_priority_bb_event:
-0x417c 015238 copy regc ,pdata 
-0x417d 015239 beq bt_evt_le_connected ,mouse_le_bb_event_connected 
-0x417e 015240 beq bt_evt_bb_connected ,mouse_stop_discovery 
-0x417f 015241 beq bt_evt_le_disconnected ,mouse_bb_disconnected 
-0x4180 015242 beq bt_evt_bb_disconnected ,mouse_bb_disconnected 
-0x4181 015243 beq bt_evt_setup_complete ,mouse_bt_event_setup_complete 
-0x4182 015244 beq bt_evt_button_long_pressed ,mouse_bb_event_discovery_btn 
-0x4183 015245 beq bt_evt_hid_handshake ,mouse_bt_hid_handshake 
-0x4184 015246 beq bt_evt_hid_connected ,mouse_bt_hid_connected 
-0x4185 015247 beq bt_evt_reconn_failed ,mouse_bb_event_reconn_failed 
-0x4186 015248 beq bt_evt_reconn_page_timeout ,mouse_bb_event_reconn_timeout 
-0x4187 015249 beq bt_evt_pincode_req ,mouse_bb_event_pincode 
-0x4188 015250 beq bt_evt_remote_unsniff ,app_start_auto_sniff 
-0x4189 015251 beq bt_evt_le_pairing_success ,mouse_le_pairing_success 
-0x418a 015252 beq bt_evt_le_start_enc ,mouse_le_ll_start_encryt 
-0x418b 015253 beq bt_evt_le_pairing_complete ,mouse_le_pairing_complete 
-0x418c 015254 beq bt_evt_virtual_cable_unplug ,mouse_irtual_cable_unplug 
-0x418d 015255 beq bt_evt_24g_pairing_complete ,mouse_24g_pairing_complete 
-0x418e 015256 beq bt_evt_24g_attempt_fail ,mouse_24g_attempt_fail 
-0x418f 015257 beq bt_evt_24g_attempt_success ,mouse_24g_attempt_success 
-0x4190 015258 rtn 
-:      015261 mouse_le_pairing_complete:
-0x4191 015262 branch app_ble_store_reconn_info 
-:      015264 mouse_24g_attempt_fail:
-0x4192 015265 jam 1 ,mem_mouse_24g_enter_lpm_enable 
-0x4193 015266 fetch 1 ,mem_reconn_times 
-0x4194 015267 nbranch mouse_polling_device ,blank 
-0x4195 015268 fetch 1 ,mem_device_flag 
-0x4196 015269 fetcht 1 ,mem_24g_device_number 
-0x4197 015270 isub temp ,null 
-0x4198 015271 branch app_enter_hibernate ,zero 
-0x4199 015272 rtn 
-:      015273 mouse_24g_attempt_success:
-0x419a 015274 jam 1 ,mem_mouse_24g_enter_lpm_enable 
-0x419b 015275 rtn 
-:      015276 mouse_24g_pairing_complete:
-0x419c 015277 jam 1 ,mem_mouse_24g_enter_lpm_enable 
-0x419d 015278 arg mosue_24g_pairing_flag ,queue 
-0x419e 015279 call mouse_disable_function_flag 
-0x419f 015280 setarg 0 
-0x41a0 015281 store 2 ,mem_24g_pairing_timer_count 
-0x41a1 015282 jam 0 ,mem_mouse_move_flag 
-0x41a2 015284 fetch 1 ,mem_config_sensor_type 
-0x41a3 015285 sub pdata ,p3610 ,null 
-0x41a4 015286 call mouse_read_sensor3610_data ,zero 
-0x41a5 015287 ncall mouse_read_sensor_common ,zero 
-0x41a6 015289 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
-0x41a7 015290 bbit1 mouse_enable_flash ,mouse_store_flash_24g_address 
-0x41a8 015291 call mouse_set_24g_addr_eeprom 
-0x41a9 015292 branch iicd_write_protect_eep_data 
-:      015294 mouse_set_24g_addr_eeprom:
-0x41aa 015295 call g24_head_ptr2regc 
-0x41ab 015296 add regc ,offset_24g_addr ,rega 
-0x41ac 015297 arg mouse_g24_addr_eeprom_offect ,regb 
-0x41ad 015298 arg 4 ,temp 
-0x41ae 015299 rtn 
-:      015301 mouse_store_flash_24g_address:
-0x41af 015302 call g24_head_ptr2regc 
-0x41b0 015303 add regc ,offset_24g_addr ,regb 
-0x41b1 015304 ifetch 1 ,regb 
-0x41b2 015305 store 1 ,mem_mouse_24g_addr 
-0x41b3 015306 branch mouse_store_flash_device_info 
-:      015309 mouse_le_pairing_success:
-0x41b4 015310 arg ll_pairing_success_flag ,queue 
-0x41b5 015311 branch mouse_le_enable_connect_flag 
-:      015312 mouse_le_ll_start_encryt:
-0x41b6 015313 jam 2 ,mem_le_start_encrypt_timer 
-0x41b7 015314 arg ll_start_enc_flag ,queue 
-0x41b8 015315 branch mouse_le_enable_connect_flag 
-:      015318 mouse_le_enable_connect_flag:
-0x41b9 015319 fetch 1 ,mem_le_connect_status_flag 
-0x41ba 015320 qset1 pdata 
-0x41bb 015321 store 1 ,mem_le_connect_status_flag 
-0x41bc 015322 rtn 
-:      015324 mouse_le_disable_connect_flag:
-0x41bd 015325 fetch 1 ,mem_le_connect_status_flag 
-0x41be 015326 qset0 pdata 
-0x41bf 015327 store 1 ,mem_le_connect_status_flag 
-0x41c0 015328 rtn 
-:      015329 mouse_le_clean_connect_flag:
-0x41c1 015330 jam 0 ,mem_le_connect_status_flag 
-0x41c2 015331 rtn 
-:      015333 mouse_le_bb_event_connected:
-0x41c3 015334 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x41c4 015335 set0 app_disc_by_button ,pdata 
-0x41c5 015336 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x41c6 015337 setarg 0 
-0x41c7 015338 store 2 ,mem_mouse_direct_timer 
-0x41c8 015339 call mouse_no_data_timer_init 
-0x41c9 015340 branch mouse_stop_discovery 
-:      015342 mouse_bb_event_pincode:
-0x41ca 015343 call pincode_reinit 
-0x41cb 015344 branch app_bt_set_pincode 
-:      015345 mouse_bb_event_reconn_timeout:
-:      015346 mouse_bb_event_reconn_failed:
-0x41cc 015347 fetch 1 ,mem_reconn_times 
-0x41cd 015348 nbranch mouse_polling_device ,blank 
-0x41ce 015349 fetch 2 ,mem_ui_state_map 
-0x41cf 015350 bbit1 ui_state_btn_down ,mouse_start_discovery 
-0x41d0 015351 fetch mouse_flag_len ,mem_mouse_flag 
-0x41d1 015352 bbit1 mouse_select_device_flag ,mouse_soft_reset 
-0x41d2 015353 bbit1 mouse_bt_discovery_button_down_flag ,mouse_start_discovery 
-0x41d3 015354 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
-0x41d4 015355 branch app_bb_hibernate 
-:      015358 mouse_bt_hid_connected:
-0x41d5 015359 branch mouse_hid_connected 
-:      015361 mouse_bt_event_setup_complete:
-0x41d6 015362 rtn 
-:      015364 mouse_soft_reset:
-0x41d7 015365 call mouse_select_device_enable 
-0x41d8 015366 branch soft_reset_chip 
-:      015368 mouse_bb_disconnected:
-0x41d9 015369 bpatch patch1d_1 ,mem_patch1d 
-0x41da 015370 call mouse_bb_discon_clear_stack 
-0x41db 015371 fetch mouse_flag_len ,mem_mouse_flag 
-0x41dc 015372 bbit1 mouse_select_device_flag ,mouse_soft_reset 
-0x41dd 015373 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
-0x41de 015374 fetch 1 ,mem_reconn_times 
-0x41df 015375 nbranch mouse_polling_device ,blank 
-0x41e0 015376 fetch app_disc_rsn_size ,mem_app_disconn_reason 
-0x41e1 015377 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
-0x41e2 015378 bbit1 app_disc_by_button ,app_disconn_reason_clear 
-0x41e3 015379 bbit1 app_disc_after_pairing ,mouse_event_light_state_pairing 
-0x41e4 015380 bbit1 app_disc_after_reconn ,mouse_event_light_state_hibernate 
-0x41e5 015381 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
-0x41e6 015382 branch mouse_start_discovery 
-:      015383 mouse_bb_discon_clear_stack:
-0x41e7 015384 setarg 0 
-0x41e8 015385 store 8 ,mem_wheel_tb_old_pinlevel 
-0x41e9 015386 istore 4 ,contw 
-0x41ea 015387 jam 0 ,mem_mouse_send_blank_timer 
-0x41eb 015388 jam 0 ,mem_mouse_move_flag 
-0x41ec 015389 jam app_handshake_null ,mem_app_handshake_flag 
-0x41ed 015390 jam 0 ,mem_ltk_exists 
-0x41ee 015391 rtn 
-:      015393 mouse_event_light_state_pairing:
-0x41ef 015394 bbit1 app_disc_after_handshake ,mouse_event_light_state_hibernate 
-0x41f0 015395 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
-0x41f1 015396 branch mouse_start_discovery 
-:      015397 mouse_event_light_state_hibernate:
-0x41f2 015398 fetch 2 ,mem_ui_state_map 
-0x41f3 015399 bbit1 ui_state_btn_down ,mouse_start_discovery 
-0x41f4 015400 branch app_bb_hibernate 
-:      015402 mouse4_0_event_bb_disconn:
-0x41f5 015403 call mouse_le_clean_connect_flag 
-0x41f6 015404 fetch app_disc_rsn_size ,mem_app_disconn_reason 
-0x41f7 015405 bbit1 app_disc_by_button ,app_disconn_reason_clear 
-0x41f8 015406 branch app_bb_hibernate 
-:      015408 mouse_bb_event_timer:
-0x41f9 015409 call mouse_adc_read 
-0x41fa 015410 call mouse_24g_delay_timer 
-0x41fb 015411 call mouse_ban_24g_pairing_timer 
-0x41fc 015412 call mouse_dpi_led_blink_delay_timer 
-0x41fd 015413 call mouse_statue_up_timer 
-0x41fe 015415 call mouse_statue_cheak_timer 
-0x41ff 015416 call mouse_select_device 
-0x4200 015417 call mouse_bt_discovery_cheak 
-0x4201 015418 call mouse_low_voltage_led_timer 
-0x4202 015419 call mouse_sensor_led_contrl_timer 
-0x4203 015420 call mouse_check_hid_handshake_timer 
-0x4204 015421 call mouse_check_discovery_timeout_timer 
-0x4205 015422 call mouse_check_direct_timeout_timer 
-0x4206 015423 call mouse_check_no_data_timeout_timer 
-0x4207 015424 call mouse_check_mouse_state_timer 
-0x4208 015425 branch mouse_le_enable_att_list_timer 
-:      015429 mouse_sensor_led_contrl_timer:
-0x4209 015430 fetch 1 ,mem_mouse_sensor_timer_count 
-0x420a 015431 rtn blank 
-0x420b 015432 increase -1 ,pdata 
-0x420c 015433 store 1 ,mem_mouse_sensor_timer_count 
-0x420d 015434 nrtn blank 
-0x420e 015435 branch mouse_sensor_led_contrl 
-:      015436 mouse_sensor_led_contrl:
-0x420f 015437 fetch 1 ,mem_sensor_led_style 
-0x4210 015438 rtneq ui_led_state_blink_stop 
-0x4211 015439 beq ui_led_state_blink_darking ,mouse_sensor_led_blink_state_darking 
-:      015440 mouse_sensor_led_blink_state_lighting:
-0x4212 015441 call mouse_sensor_led_on 
-0x4213 015442 jam ui_led_state_blink_darking ,mem_sensor_led_style 
-0x4214 015443 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
-0x4215 015444 rtn 
-:      015445 mouse_sensor_led_blink_state_darking:
-0x4216 015446 call mouse_sensor_led_off 
-0x4217 015447 jam ui_led_state_blink_lighting ,mem_sensor_led_style 
-0x4218 015448 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
-0x4219 015449 rtn 
-:      015451 mouse_sensor_led_blink_stop:
-:      015452 mouse_sensor_reset:
-0x421a 015453 setarg 0x8006 
-0x421b 015454 call twspi_write 
-0x421c 015455 nop 1000 
-0x421d 015456 jam 0x00 ,mem_mouse_sensor_timer_count 
-0x421e 015457 jam ui_led_state_blink_stop ,mem_sensor_led_style 
-0x421f 015458 branch mouse_init_p32xx_id2_judge 
-:      015460 mouse_p3212sensor_led_on:
-0x4220 015461 setarg 0xa006 
-0x4221 015462 call twspi_write 
-0x4222 015463 setarg 0xa005 
-0x4223 015464 branch twspi_write 
-:      015465 mouse_sensor_led_on_global:
-0x4224 015466 jam 0 ,mem_mouse_sensor_timer_count 
-:      015467 mouse_sensor_led_on:
-0x4225 015468 fetch 1 ,mem_config_sensor_type 
-0x4226 015469 beq p3212 ,mouse_p3212sensor_led_on 
-0x4227 015470 setarg 0x0106 
-0x4228 015471 call twspi_write 
-0x4229 015472 setarg 0xa105 
-0x422a 015473 branch twspi_write 
-:      015475 mouse_sensor_led_off_global:
-0x422b 015476 jam 0 ,mem_mouse_sensor_timer_count 
-:      015477 mouse_sensor_led_off:
-0x422c 015478 setarg 0x0906 
-0x422d 015479 branch twspi_write 
-:      015480 mouse_sensor_start_blink:
-0x422e 015481 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
-0x422f 015482 jam ui_led_state_blink_start ,mem_sensor_led_style 
-0x4230 015483 rtn 
-:      015485 mouse_check_hid_handshake_timer:
-0x4231 015486 arg mem_hid_handshake_timer_count ,regc 
-0x4232 015487 arg mouse_bt_hid_handshake ,regb 
-0x4233 015488 branch timer_single_step 
-:      015490 mouse_check_discovery_timeout_timer:
-0x4234 015491 arg mem_mouse_discovery_timer ,regc 
-0x4235 015492 arg mouse_check_discovery_timeout ,regb 
-0x4236 015493 branch timer_single_step_2b 
-:      015495 mouse_check_direct_timeout_timer:
-0x4237 015496 arg mem_mouse_direct_timer ,regc 
-0x4238 015497 arg mouse_check_direct_timeout ,regb 
-0x4239 015498 branch timer_single_step_2b 
-:      015500 mouse_check_no_data_timeout_timer:
-0x423a 015501 arg mem_mouse_no_data_timer ,regc 
-0x423b 015502 arg mouse_check_no_data_timeout ,regb 
-0x423c 015503 branch timer_single_step_2b 
-:      015505 mouse_check_mouse_state_timer:
-0x423d 015506 arg mem_mouse_statue_led_timer ,regc 
-0x423e 015507 arg mouse_statue_led_off ,regb 
-0x423f 015508 branch timer_single_step 
-:      015512 mouse_le_enable_att_list_timer:
-0x4240 015513 arg mem_le_start_encrypt_timer ,regc 
-0x4241 015514 arg mouse_le_enable_att_list ,regb 
-0x4242 015515 branch timer_single_step 
-:      015517 mouse_24g_delay_timer:
-0x4243 015518 arg mem_24g_enter_lpm_timer ,regc 
-0x4244 015519 arg mouse_24g_delay ,regb 
-0x4245 015520 branch timer_single_step 
-:      015522 mouse_ban_24g_pairing_timer:
-0x4246 015523 arg mem_24g_pairing_timer_count ,regc 
-0x4247 015524 arg mouse_ban_24g_pairing ,regb 
-0x4248 015525 branch timer_single_step_2b 
-:      015526 mouse_ban_24g_pairing:
-:      015527 mouse_24g_delay:
-0x4249 015528 rtn 
-:      015531 mosue_dpi_led_blink_init:
-0x424a 015532 fetch mouse_flag_len ,mem_mouse_flag 
-0x424b 015533 rtnbit0 mouse_enable_dpi_led_blink 
-0x424c 015534 jam 10 ,mem_mouse_dpi_led_delay_count 
-0x424d 015535 fetch 1 ,mem_dpi_led_gpio 
-0x424e 015536 store 1 ,mem_mouse_struct_led_gpio 
-0x424f 015537 rtn 
-:      015540 mouse_dpi_led_blink_delay_timer:
-0x4250 015541 arg mem_mouse_dpi_led_delay_count ,regc 
-0x4251 015542 arg mouse_dpi_led_setting ,regb 
-0x4252 015543 branch timer_single_step 
-:      015544 mouse_dpi_led_setting:
-0x4253 015545 fetch 1 ,mem_dpi_led_gpio 
-0x4254 015546 store 1 ,mem_mouse_struct_led_gpio 
-0x4255 015547 setarg led_dpi_blink 
-0x4256 015548 store 2 ,mem_mouse_on_time 
-0x4257 015549 store 2 ,mem_mouse_off_time 
-0x4258 015550 arg 0 ,rega 
-0x4259 015551 fetcht 1 ,mem_mouse_dpi 
-0x425a 015552 increase 1 ,temp 
-0x425b 015553 storet 1 ,mem_mouse_blink_count 
-0x425c 015554 jam ui_led_state_blink_start ,mem_mouse_led_type 
-0x425d 015555 rtn 
-:      015557 mouse_le_enable_att_list:
-0x425e 015558 fetch 1 ,mem_le_connect_status_flag 
-0x425f 015559 rtnbit1 ll_pairing_success_flag 
-0x4260 015560 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x4261 015561 call ui_ipc_send_cmd 
-0x4262 015562 arg write_req_enable_flag ,queue 
-0x4263 015563 branch mouse_le_enable_connect_flag 
-:      015566 mouse_check_discovery_timeout:
-0x4264 015567 call mouse_stop_discovery 
-0x4265 015568 branch app_enter_hibernate 
-:      015570 mouse_check_direct_timeout:
-0x4266 015571 call app_ble_stop_direct_adv 
-0x4267 015572 fetch 1 ,mem_reconn_times 
-0x4268 015573 nbranch mouse_polling_device ,blank 
-0x4269 015574 branch app_enter_hibernate 
-:      015576 mouse_check_no_data_timeout:
-0x426a 015577 bmark1 mark_24g ,check_51cmd_hibernate 
-0x426b 015578 branch mouse_disconnect 
-:      015582 mouse_bb_event_discovery_btn:
-0x426c 015583 bpatch patch1d_2 ,mem_patch1d 
-0x426d 015584 jam 0 ,mem_mouse_send_blank_timer 
-0x426e 015585 call mouse_disconnect 
-0x426f 015586 call mouse_le_clean_connect_flag 
-0x4270 015587 branch mouse_start_discovery 
-:      015591 mouse3_0_check_reconn_target:
-0x4271 015592 fetch 6 ,mem_hci_plap 
-0x4272 015593 branch app_bt_start_discovery_short ,blank 
-0x4273 015594 call mouse_reconn_setting_led_gpio 
-0x4274 015595 jam 0x17 ,mem_connection_options 
-0x4275 015596 fetch 1 ,mem_ssp_enable 
-0x4276 015597 nbranch app_bt_start_reconnect ,blank 
-0x4277 015598 jam 0x04 ,mem_connection_options 
-0x4278 015599 branch app_bt_start_reconnect 
-:      015601 mouse4_0_check_reconn_target:
-0x4279 015602 fetch 2 ,mem_mouse_direct_timeout 
-0x427a 015603 store 2 ,mem_mouse_direct_timer 
-0x427b 015604 call mouse_reconn_setting_led_gpio 
-0x427c 015605 call app_lpm_mult_disable 
-0x427d 015606 branch check_51cmd_adv 
-:      015608 mouse_reconn_setting_led_gpio:
-0x427e 015609 setarg led_reconnect_blink 
-0x427f 015610 store 2 ,mem_mouse_on_time 
-0x4280 015611 store 2 ,mem_mouse_off_time 
-0x4281 015612 branch mouse_setting_led_gpio_comman 
-:      015614 mouse_discover_setting_led_gpio:
-0x4282 015615 setarg led_discovery_blink 
-0x4283 015616 store 2 ,mem_mouse_on_time 
-0x4284 015617 store 2 ,mem_mouse_off_time 
-:      015618 mouse_setting_led_gpio_comman:
-0x4285 015619 fetch 1 ,mem_device_flag 
-0x4286 015620 beq mode_bt_device1 ,mouse_device_led1 
-0x4287 015621 beq mode_bt_device2 ,mouse_device_led2 
-0x4288 015622 beq mode_bt_device3 ,mouse_device_led3 
-0x4289 015623 rtn 
-:      015624 mouse_device_led1:
-0x428a 015625 fetch 1 ,mem_config_device1_led_gpio 
-0x428b 015626 branch mouse_led_blink 
-:      015627 mouse_device_led2:
-0x428c 015628 fetch 1 ,mem_config_device2_led_gpio 
-0x428d 015629 branch mouse_led_blink 
-:      015630 mouse_device_led3:
-0x428e 015631 fetch 1 ,mem_config_device3_led_gpio 
-:      015632 mouse_led_blink:
-0x428f 015633 store 1 ,mem_temp 
-0x4290 015634 call mouse_devce_led_off 
-0x4291 015635 fetch 1 ,mem_temp 
-0x4292 015636 store 1 ,mem_mouse_struct_led_gpio 
-0x4293 015637 arg 0 ,rega 
-0x4294 015638 jam ui_led_state_blink_start ,mem_mouse_led_type 
-0x4295 015639 branch ui_led_blink_start_global 
-:      015641 mouse_led_off:
-0x4296 015642 arg 0 ,rega 
-0x4297 015643 branch ui_led_off_global 
-:      015644 mouse_led_on:
-0x4298 015645 arg 0 ,rega 
-0x4299 015646 branch ui_led_on_global 
-:      015648 mouse4_0_bb_event_discovery_btn:
-0x429a 015649 branch mouse_le_clean_connect_flag 
-:      015651 mouse_bt_hid_handshake:
-0x429b 015652 jam app_handshake_done ,mem_app_handshake_flag 
-0x429c 015653 call app_lpm_mult_enable 
-0x429d 015654 call app_bt_store_reconn_info 
-0x429e 015655 setarg 0 
-0x429f 015656 store 2 ,mem_discovery_timeout_timer_count 
-0x42a0 015657 store 1 ,mem_hid_handshake_timer_count 
-0x42a1 015658 branch app_bt_enter_sniff 
-:      015660 mouse_check_reconn_target:
-0x42a2 015661 call mouse_cheak_select_device_by_switch 
-0x42a3 015662 fetch 1 ,mem_device_flag 
-0x42a4 015663 fetcht 1 ,mem_24g_device_number 
-0x42a5 015664 isub temp ,null 
-0x42a6 015665 branch mouse_connect_24g_mode ,zero 
-0x42a7 015666 fetch 1 ,mem_xrecord_mode 
-0x42a8 015667 beq rec_3_mode ,mouse3_0_check_reconn_target 
-0x42a9 015668 beq rec_4_mode ,mouse4_0_check_reconn_target 
-0x42aa 015669 branch mouse_start_discovery 
-:      015670 mouse_connect_24g_mode:
-0x42ab 015671 call mouse_start_24g_mode 
-0x42ac 015672 rtnmark1 mark_24g 
-0x42ad 015673 fetch 1 ,mem_reconn_times 
-0x42ae 015674 nbranch mouse_polling_device ,blank 
-0x42af 015675 rtn 
-:      015677 mouse_start_discovery:
-0x42b0 015678 bpatch patch1d_3 ,mem_patch1d 
-0x42b1 015679 fetch 2 ,mem_ui_state_map 
-0x42b2 015680 bbit1 ui_state_ble_adv ,mouse_start_discovery_norandom 
-0x42b3 015681 fetch mouse_flag_len ,mem_mouse_flag 
-0x42b4 015682 bbit0 mouse_enable_ble_random_addre ,mouse_start_discovery_norandom 
-0x42b5 015683 random pdata 
-0x42b6 015684 store 1 ,mem_le_lap + 1 
-:      015685 mouse_start_discovery_norandom:
-0x42b7 015686 call app_lpm_mult_disable 
-0x42b8 015687 fetch 2 ,mem_discovery_timeout 
-0x42b9 015688 store 2 ,mem_mouse_discovery_timer 
-0x42ba 015689 jam 6 ,mem_connection_options 
-0x42bb 015690 setarg 0 
-0x42bc 015691 store 2 ,mem_mouse_no_data_timer 
-0x42bd 015692 store 2 ,mem_mouse_direct_timer 
-0x42be 015693 arg mouse_store_eeprom_flag ,queue 
-0x42bf 015694 call mouse_enable_function_flag 
-0x42c0 015695 call mouse_bt_discovery_button_down_disable 
-0x42c1 015696 fetch 1 ,mem_device_option 
-0x42c2 015697 isolate1 mode_4_mouse ,pdata 
-0x42c3 015698 call check_51cmd_adv ,true 
-0x42c4 015699 fetch 1 ,mem_device_option 
-0x42c5 015700 isolate1 mode_3_mouse ,pdata 
-0x42c6 015701 call check_51cmd_start_discovery ,true 
-0x42c7 015702 fetch mouse_flag_len ,mem_mouse_flag 
-0x42c8 015703 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_start_blink 
-0x42c9 015704 branch mouse_discover_setting_led_gpio 
-:      015706 mouse_stop_discovery:
-0x42ca 015707 bpatch patch1d_4 ,mem_patch1d 
-0x42cb 015708 fetch 1 ,mem_device_option 
-0x42cc 015709 isolate1 mode_4_mouse ,pdata 
-0x42cd 015710 call mouse_stop_le_adv ,true 
-0x42ce 015711 fetch 1 ,mem_device_option 
-0x42cf 015712 isolate1 mode_3_mouse ,pdata 
-0x42d0 015713 call mouse_stop_bt3_discovery ,true 
-0x42d1 015714 fetch mouse_flag_len ,mem_mouse_flag 
-0x42d2 015715 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_led_blink_stop 
-0x42d3 015716 branch mouse_devce_led_off 
-:      015717 mouse_stop_le_adv:
-0x42d4 015718 setarg 0 
-0x42d5 015719 store 2 ,mem_mouse_direct_timer 
-0x42d6 015720 branch check_51cmd_stop_adv 
-:      015721 mouse_stop_bt3_discovery:
-0x42d7 015722 setarg 0 
-0x42d8 015723 store 2 ,mem_mouse_discovery_timer 
-0x42d9 015724 branch check_51cmd_stop_discovery 
-:      015730 mouse_store_remote_bdaddr:
-0x42da 015731 fetch mouse_flag_len ,mem_mouse_flag 
-0x42db 015732 rtnbit0 mouse_store_eeprom_flag 
-0x42dc 015733 arg mouse_store_eeprom_flag ,queue 
-0x42dd 015734 call mouse_disable_function_flag 
-0x42de 015735 call mouse_check_device_addr 
-:      015736 mouse_unplug_clean_bdaddr:
-0x42df 015737 call mouse_before_store_reconn_info 
-0x42e0 015738 fetch mouse_flag_len ,mem_mouse_flag 
-0x42e1 015739 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
-0x42e2 015740 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
-0x42e3 015741 rtn 
-:      015742 mouse_store_eeprom_device_info:
-0x42e4 015743 arg 88 ,temp 
-0x42e5 015744 arg mem_device_flag ,rega 
-0x42e6 015745 arg mouse_info_eeprom_offect ,regb 
-0x42e7 015746 branch iicd_write_protect_eep_data 
-:      015748 mouse_check_device_addr:
-0x42e8 015749 fetch 1 ,mem_record_bt_mode 
-0x42e9 015750 beq rec_4_mode ,mouse_check_le_device_addr 
-0x42ea 015751 beq rec_3_mode ,mouse_check_bt_device_addr 
-0x42eb 015752 rtn 
-:      015753 mouse_check_le_device_addr:
-0x42ec 015754 store 1 ,mem_device_addr_temp 
-0x42ed 015755 fetch 6 ,mem_le_plap 
-0x42ee 015756 branch mouse_check_bt_device_addr_common 
-:      015757 mouse_check_bt_device_addr:
-0x42ef 015758 store 1 ,mem_device_addr_temp 
-0x42f0 015759 fetch 6 ,mem_plap 
-:      015760 mouse_check_bt_device_addr_common:
-0x42f1 015761 store 6 ,mem_device_addr_temp + 1 
-0x42f2 015762 fetch 7 ,mem_device_addr_temp 
-0x42f3 015763 arg mem_device1_type ,contr 
-0x42f4 015764 arg 3 ,loopcnt 
-:      015765 mouse_check_device_addr_end:
-0x42f5 015766 ifetcht 7 ,contr 
-0x42f6 015767 isub temp ,null 
-0x42f7 015768 branch mouse_clean_addr ,zero 
-0x42f8 015769 increase 22 ,contr 
-0x42f9 015770 loop mouse_check_device_addr_end 
-0x42fa 015771 rtn 
-:      015772 mouse_before_store_reconn_info:
-0x42fb 015773 arg mem_device1_type ,rega 
-0x42fc 015774 fetch 1 ,mem_device_flag 
-0x42fd 015775 increase -1 ,pdata 
-0x42fe 015776 mul32 pdata ,29 ,pdata 
-0x42ff 015777 iadd rega ,rega 
-0x4300 015778 fetch 1 ,mem_record_bt_mode 
-0x4301 015779 istore 1 ,rega 
-0x4302 015780 beq rec_4_mode ,mouse_store_le_device 
-0x4303 015781 beq rec_3_mode ,mouse_store_bt_device 
-0x4304 015782 rtn 
-:      015784 mouse_store_le_device:
-0x4305 015785 fetch 6 ,mem_le_plap 
-0x4306 015786 istore 6 ,contw 
-0x4307 015787 arg mem_le_ltk ,contr 
-0x4308 015788 call memcpy16 
-0x4309 015789 fetch 6 ,mem_le_lap 
-0x430a 015790 istore 6 ,contw 
-0x430b 015791 rtn 
-:      015792 mouse_store_bt_device:
-0x430c 015793 fetch 6 ,mem_plap 
-0x430d 015794 istore 6 ,contw 
-0x430e 015795 arg mem_link_key ,contr 
-0x430f 015796 branch memcpy16 
-:      015798 mouse_clean_addr:
-0x4310 015799 increase -6 ,contr 
-0x4311 015800 copy contr ,contw 
-0x4312 015801 fetcht 6 ,mem_device_addr_temp + 1 
-0x4313 015802 increase 3 ,temp 
-0x4314 015803 istoret 6 ,contw 
-0x4315 015804 rtn 
-:      015808 mouse_eeprom_load_recon_info:
-0x4316 015809 arg 88 ,temp 
-0x4317 015810 arg mem_device_flag ,rega 
-0x4318 015811 arg mouse_info_eeprom_offect ,regb 
-0x4319 015812 call iicd_read_eep_data 
-:      015813 mouse_select_reconn_device:
-0x431a 015814 arg mem_device1_type ,rega 
-0x431b 015815 fetch 1 ,mem_device_flag 
-0x431c 015816 fetcht 1 ,mem_24g_device_number 
-0x431d 015817 isub temp ,null 
-0x431e 015818 rtn zero 
-0x431f 015819 increase -1 ,pdata 
-0x4320 015820 mul32 pdata ,29 ,pdata 
-0x4321 015821 iadd rega ,rega 
-0x4322 015822 ifetch 1 ,rega 
-0x4323 015823 store 1 ,mem_xrecord_mode 
-0x4324 015824 beq rec_3_mode ,mouse_load_bt_device 
-0x4325 015825 beq rec_4_mode ,mouse_load_le_device 
-0x4326 015826 rtn 
-:      015828 mouse_load_bt_device:
-0x4327 015829 ifetch 6 ,contr 
-:      015830 mouse_load_bt_device_end:
-0x4328 015831 store 6 ,mem_hci_plap 
-0x4329 015832 arg mem_link_key ,contw 
-0x432a 015833 call memcpy16 
-0x432b 015834 branch check_link_key_load 
-:      015836 mouse_load_le_device:
-0x432c 015837 ifetch 6 ,contr 
-:      015838 mouse_load_le_device_end:
-0x432d 015839 store 6 ,mem_hci_plap 
-0x432e 015840 arg mem_le_ltk ,contw 
-0x432f 015841 call memcpy16 
-0x4330 015842 ifetch 6 ,contr 
-0x4331 015843 store 6 ,mem_le_lap 
-0x4332 015844 rtn 
-:      015847 mouse_select_device:
-0x4333 015848 fetch 1 ,mem_config_function_enable 
-0x4334 015849 bbit1 enable_select_device_by_gpio_button ,mouse_select_device_by_button 
-0x4335 015850 bbit1 enable_select_device_by_switch ,mouse_select_device_by_switch 
-0x4336 015851 branch mouse_select_device_by_combination_key 
-:      015853 mouse_select_device_by_combination_key:
-0x4337 015854 call mouse_check_key_gpio 
-0x4338 015855 beq mouse_rm_button ,mouse_select_device_commbination_key_down 
-:      015856 mouse_select_device_commbination_key_up:
-0x4339 015857 jam 30 ,mem_combination_select_device_count 
-0x433a 015858 fetch 1 ,mem_select_device_button_statue 
-0x433b 015859 rtneq dpi_button_state_up 
-0x433c 015860 jam dpi_button_state_up ,mem_select_device_button_statue 
-0x433d 015861 rtn 
-:      015863 mouse_select_device_commbination_key_down:
-0x433e 015864 call mouse_combination_select_device_timer 
-0x433f 015865 fetch 1 ,mem_select_device_button_statue 
-0x4340 015866 rtneq dpi_button_state_down 
-0x4341 015867 jam dpi_button_state_down ,mem_select_device_button_statue 
-0x4342 015868 branch mouse_select_device_enable 
-:      015870 mouse_combination_select_device_timer:
-0x4343 015871 fetch 1 ,mem_combination_select_device_count 
-0x4344 015872 rtn blank 
-0x4345 015873 pincrease -1 
-0x4346 015874 store 1 ,mem_combination_select_device_count 
-0x4347 015875 nrtn blank 
-0x4348 015876 branch mouse_ready_reconnection_by_button 
-:      015878 mouse_select_device_by_button:
-0x4349 015879 fetch 1 ,mem_config_select_device_button_gpio 
-0x434a 015880 rtneq gpio_disable 
-0x434b 015881 fetcht 1 ,mem_config_select_device_button_gpio 
-0x434c 015882 call gpio_get_bit 
-0x434d 015883 branch mouse_select_device_button_down ,true 
-:      015884 mouse_select_device_button_up:
-0x434e 015885 fetch 1 ,mem_select_device_button_statue 
-0x434f 015886 rtneq dpi_button_state_up 
-0x4350 015887 jam dpi_button_state_up ,mem_select_device_button_statue 
-0x4351 015888 fetch mouse_flag_len ,mem_mouse_flag 
-0x4352 015889 rtnbit1 mouse_long_bt_button_flag 
-0x4353 015890 branch mouse_ready_reconnection_by_button 
-:      015892 mouse_select_device_button_down:
-0x4354 015893 fetch 1 ,mem_select_device_button_statue 
-0x4355 015894 rtneq dpi_button_state_down 
-0x4356 015895 jam dpi_button_state_down ,mem_select_device_button_statue 
-0x4357 015896 arg mouse_long_bt_button_flag ,queue 
-0x4358 015897 branch mouse_disable_function_flag 
-:      015901 mouse_select_device_by_switch:
-0x4359 015902 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
-0x435a 015903 rtnbit0 enable_select_device_by_switch 
-0x435b 015904 fetch 1 ,mem_device_flag 
-0x435c 015905 beq mode_bt_device1 ,mouse_select1_device 
-0x435d 015906 beq mode_24g_device ,mouse_select2_device 
-0x435e 015907 rtn 
-:      015908 mouse_cheak_select_device_by_switch:
-0x435f 015909 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
-0x4360 015910 rtnbit0 enable_select_device_by_switch 
-0x4361 015911 fetcht 1 ,mem_config_select_device_button_gpio 
-0x4362 015912 call gpio_get_bit 
-0x4363 015913 branch mouse_cheak_select_24gdevice ,true 
-:      015914 mouse_select_btdevice:
-0x4364 015915 jam mode_bt_device1 ,mem_device_flag 
-0x4365 015916 rtn 
-:      015917 mouse_cheak_select_24gdevice:
-0x4366 015918 fetch 1 ,mem_24g_device_number 
-0x4367 015919 store 1 ,mem_device_flag 
-0x4368 015920 rtn 
-:      015921 mouse_select1_device:
-0x4369 015922 fetcht 1 ,mem_config_select_device_button_gpio 
-0x436a 015923 nbranch mouse_ready_reconnection_by_button ,true 
-0x436b 015924 rtn 
-:      015925 mouse_select2_device:
-0x436c 015926 fetcht 1 ,mem_config_select_device_button_gpio 
-0x436d 015927 call gpio_get_bit 
-0x436e 015928 branch mouse_select_device_button_down ,true 
-0x436f 015929 rtn 
-:      015934 mouse_ready_reconnection_by_button:
-0x4370 015935 fetcht 1 ,mem_device_flag 
-0x4371 015936 increase 1 ,temp 
-0x4372 015937 fetch 1 ,mem_device_number 
-0x4373 015938 isub temp ,null 
-0x4374 015939 ncall mouse_select_device_count_clean ,positive 
-0x4375 015940 storet 1 ,mem_device_flag 
-0x4376 015941 jam 0 ,mem_link_key_exists 
-0x4377 015942 call mouse_store_device_number2eeprom 
-0x4378 015943 call mouse_select_device_enable 
-0x4379 015945 branch mouse_set_reconnection 
-:      015947 mouse_store_device_number2eeprom:
-0x437a 015948 arg 1 ,temp 
-0x437b 015949 arg mem_device_flag ,rega 
-0x437c 015950 arg 0 ,regb 
-0x437d 015951 branch iicd_write_eep_data 
-:      015953 mouse_set_reconnection:
-0x437e 015954 call mouse_stop_bluetooth_mode 
-0x437f 015955 call mouse_select_device_disable 
-0x4380 015956 branch mouse_soft_reset 
-:      015957 mouse_stop_bluetooth_mode:
-0x4381 015958 fetch 2 ,mem_ui_state_map 
-0x4382 015959 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
-0x4383 015960 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x4384 015961 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x4385 015962 branch mouse_stop_discovery 
-:      015964 mouse_disconnect:
-0x4386 015965 bpatch patch1d_5 ,mem_patch1d 
-0x4387 015966 setarg 0 
-0x4388 015967 store 2 ,mem_mouse_no_data_timer 
-0x4389 015968 fetch 2 ,mem_ui_state_map 
-0x438a 015969 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x438b 015970 fetch 2 ,mem_ui_state_map 
-0x438c 015971 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x438d 015972 rtn 
-:      015974 mouse_irtual_cable_unplug:
-0x438e 015975 setarg 0x01 
-0x438f 015976 store 6 ,mem_plap 
-0x4390 015977 jam rec_3_mode ,mem_record_bt_mode 
-0x4391 015978 branch mouse_unplug_clean_bdaddr 
-:      015981 mouse_cancel_reconnect:
-0x4392 015982 call mouse_bt_cannel_reconn_enable 
-0x4393 015983 branch check_51cmd_bb_reconn_cancel 
-:      015985 mouse_bt_discovery_by_button:
-0x4394 015986 fetch 1 ,mem_config_bt_button_gpio 
-0x4395 015987 rtneq gpio_disable 
-0x4396 015988 fetcht 1 ,mem_config_bt_button_gpio 
-0x4397 015989 call gpio_get_bit 
-0x4398 015990 branch mouse_bt_discovery_button_down ,true 
-:      015991 mouse_bt_discovery_button_up:
-0x4399 015992 fetch 1 ,mem_ui_button_timeout 
-0x439a 015993 store 1 ,mem_combination_ui_button_count 
-0x439b 015994 fetch 1 ,mem_bt_discovey_button_statue 
-0x439c 015995 rtneq dpi_button_state_up 
-0x439d 015996 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
-0x439e 015997 branch mouse_bt_discovery_button_down_disable 
-:      015998 mouse_bt_discovery_button_down:
-0x439f 015999 call mouse_bt_discovry_timer 
-0x43a0 016000 fetch 1 ,mem_bt_discovey_button_statue 
-0x43a1 016001 rtneq dpi_button_state_down 
-0x43a2 016002 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
-0x43a3 016003 call check_51cmd_bb_reconn_cancel 
-0x43a4 016004 branch mouse_bt_discovery_button_down_enable 
-:      016007 mouse_bt_discovery_cheak:
-0x43a5 016008 fetch 1 ,mem_config_function_enable 
-0x43a6 016009 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
-:      016010 mouse_bt_discovery_commbination_key:
-0x43a7 016011 call mouse_check_key_gpio 
-0x43a8 016012 beq mouse_lmr_button ,mouse_bt_discovery_commbination_key_down 
-:      016013 mouse_bt_discovery_commbination_key_up:
-0x43a9 016014 fetch 1 ,mem_ui_button_timeout 
-0x43aa 016015 store 1 ,mem_combination_ui_button_count 
-0x43ab 016016 fetch 1 ,mem_bt_discovey_button_statue 
-0x43ac 016017 rtneq dpi_button_state_up 
-0x43ad 016018 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
-0x43ae 016019 branch mouse_bt_discovery_button_down_disable 
-:      016022 mouse_bt_discovery_commbination_key_down:
-0x43af 016023 call mouse_bt_discovry_timer 
-0x43b0 016024 fetch 1 ,mem_bt_discovey_button_statue 
-0x43b1 016025 rtneq dpi_button_state_down 
-0x43b2 016026 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
-0x43b3 016027 call check_51cmd_bb_reconn_cancel 
-0x43b4 016028 branch mouse_bt_discovery_button_down_enable 
-:      016030 mouse_bt_discovry_timer:
-0x43b5 016031 arg mem_combination_ui_button_count ,regc 
-0x43b6 016032 arg mouse_long_button_bt_discovry ,regb 
-0x43b7 016033 branch timer_single_step 
-:      016035 mouse_long_button_bt_discovry:
-0x43b8 016036 arg mouse_long_bt_button_flag ,queue 
-0x43b9 016037 call mouse_enable_function_flag 
-0x43ba 016038 call app_evt_button_long_pressed 
-0x43bb 016039 branch mouse_bb_event_discovery_btn 
-:      016042 mouse_cpi_enable:
-0x43bc 016043 arg mouse_cpi_flag ,queue 
-0x43bd 016044 branch mouse_enable_function_flag 
-:      016045 mouse_cpi_disable:
-0x43be 016046 arg mouse_cpi_flag ,queue 
-0x43bf 016047 branch mouse_disable_function_flag 
-:      016048 mouse_select_device_enable:
-0x43c0 016049 arg mouse_select_device_flag ,queue 
-0x43c1 016050 branch mouse_enable_function_flag 
-:      016051 mouse_select_device_disable:
-0x43c2 016052 arg mouse_select_device_flag ,queue 
-0x43c3 016053 branch mouse_disable_function_flag 
-:      016054 mouse_bt_cannel_reconn_enable:
-0x43c4 016055 arg mouse_bt_cannel_reconn_flag ,queue 
-0x43c5 016056 branch mouse_enable_function_flag 
-:      016057 mouse_bt_cannel_reconn_disable:
-0x43c6 016058 arg mouse_bt_cannel_reconn_flag ,queue 
-0x43c7 016059 branch mouse_disable_function_flag 
-:      016060 mouse_bt_discovery_button_down_enable:
-0x43c8 016061 arg mouse_bt_discovery_button_down_flag ,queue 
-0x43c9 016062 branch mouse_enable_function_flag 
-:      016063 mouse_bt_discovery_button_down_disable:
-0x43ca 016064 arg mouse_bt_discovery_button_down_flag ,queue 
-0x43cb 016065 branch mouse_disable_function_flag 
-:      016069 mouse_select_device_count_clean:
-0x43cc 016070 arg 1 ,temp 
-0x43cd 016071 rtn 
-:      016073 mouse_enable_function_flag:
-0x43ce 016074 fetch mouse_flag_len ,mem_mouse_flag 
-0x43cf 016075 qset1 pdata 
-0x43d0 016076 store mouse_flag_len ,mem_mouse_flag 
-0x43d1 016077 rtn 
-:      016079 mouse_disable_function_flag:
-0x43d2 016080 fetch mouse_flag_len ,mem_mouse_flag 
-0x43d3 016081 qset0 pdata 
-0x43d4 016082 store mouse_flag_len ,mem_mouse_flag 
-0x43d5 016083 rtn 
-:      016085 mouse_adc_read:
-0x43d6 016086 fetch mouse_flag_len ,mem_mouse_flag 
-0x43d7 016087 rtnbit0 mouse_enable_adc 
-0x43d8 016088 fetch 1 ,mem_adc_read_timer 
-0x43d9 016089 increase 1 ,pdata 
-0x43da 016090 store 1 ,mem_adc_read_timer 
-0x43db 016091 sub pdata ,10 ,null 
-0x43dc 016092 rtn positive 
-0x43dd 016093 jam 0 ,mem_adc_read_timer 
-0x43de 016094 call adc_set_mode 
-0x43df 016095 call vdd_calculate_by_mode 
-0x43e0 016096 store 2 ,mem_mouse_vdd_now_vol 
-0x43e1 016097 arg mem_mouse_vdd_calculate_set ,rega 
-0x43e2 016098 call adc_bat_percent_lowpower_out 
-0x43e3 016099 fetch 1 ,mem_adc_power_flag 
-0x43e4 016100 bbit1 1 ,mouse_power_down 
-0x43e5 016101 bbit0 0 ,mouse_adc_no_low_voltage 
-0x43e6 016102 branch mouse_adc_low_voltage 
-:      016103 mouse_adc_low_voltage:
-0x43e7 016104 arg mouse_low_voltage_flag ,queue 
-0x43e8 016105 branch mouse_enable_function_flag 
-:      016106 mouse_adc_no_low_voltage:
-0x43e9 016107 arg mouse_low_voltage_flag ,queue 
-0x43ea 016108 branch mouse_disable_function_flag 
-:      016110 mouse_low_voltage_led_timer:
-0x43eb 016111 fetch mouse_flag_len ,mem_mouse_flag 
-0x43ec 016112 rtnbit0 mouse_low_voltage_flag 
-0x43ed 016113 fetch 1 ,mem_config_low_voltage_alarm_gpio 
-0x43ee 016114 store 1 ,mem_mouse_struct_led_gpio 
-0x43ef 016115 fetch 1 ,mem_adc_low_volatage_led_timer_count 
-0x43f0 016116 pincrease 1 
-0x43f1 016117 store 1 ,mem_adc_low_volatage_led_timer_count 
-0x43f2 016118 sub pdata ,20 ,null 
-0x43f3 016119 ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
-0x43f4 016120 beq 2 ,mouse_low_voltage_led_on 
-0x43f5 016121 beq 4 ,mouse_low_voltage_led_off 
-0x43f6 016122 beq 6 ,mouse_low_voltage_led_on 
-0x43f7 016123 beq 8 ,mouse_low_voltage_led_off 
-0x43f8 016124 rtn 
-:      016125 mouse_adc_low_volatage_led_timer_count_clean:
-0x43f9 016126 jam 1 ,mem_adc_low_volatage_led_timer_count 
-0x43fa 016127 branch mouse_low_voltage_led_off 
-:      016128 mouse_low_voltage_led_on:
-0x43fb 016129 arg 0 ,rega 
-0x43fc 016130 jam ui_led_state_lighting ,mem_mouse_led_type 
-0x43fd 016131 branch ui_led_on_global 
-:      016132 mouse_low_voltage_led_off:
-0x43fe 016133 arg 0 ,rega 
-0x43ff 016134 jam ui_led_state_lighting ,mem_mouse_led_type 
-0x4400 016135 branch ui_led_off_global 
-:      016137 mouse_g24_package_data:
-0x4401 016138 call mouse_motion 
-0x4402 016139 nrtn user 
-0x4403 016140 arg 7 ,rega 
-0x4404 016141 arg mem_mouse_key ,regb 
-0x4405 016142 rtn 
-:      016144 mouse_g24_enter_lpm:
-0x4406 016145 fetch 1 ,mem_mouse_24g_enter_lpm_enable 
-0x4407 016146 rtn blank 
-0x4408 016148 fetcht 1 ,mem_dpi_button_gpio 
-0x4409 016149 call gpio_get_bit 
-0x440a 016150 call mouse_24g_dpi_delay_init ,true 
-0x440b 016151 fetch 1 ,mem_24g_enter_lpm_timer 
-0x440c 016152 nrtn blank 
-0x440d 016153 call mouse_check_key_gpio 
-0x440e 016154 nrtn blank 
-0x440f 016155 branch g24_lpm_long_sleep 
-:      016157 mouse_24g_dpi_delay_init:
-0x4410 016158 fetch 1 ,mem_dpi_button_gpio 
-0x4411 016159 rtneq ui_button_gpio_disable 
-0x4412 016160 jam 10 ,mem_24g_enter_lpm_timer 
-0x4413 016161 rtn 
-:      016164 mouse_load_flash_info_cheak:
-0x4414 016165 call mouse_load_flash_flag 
-0x4415 016166 fetch 2 ,mem_store_flag 
-0x4416 016167 arg eeprom_init_flag ,temp 
-0x4417 016168 isub temp ,null 
-0x4418 016169 branch mouse_load_flash_device_info ,zero 
-0x4419 016170 storet 2 ,mem_store_flag 
-0x441a 016171 call mouse_ble_init_address 
-0x441b 016172 branch mouse_store_flash_device_info 
-:      016173 mouse_ble_init_address:
-0x441c 016174 fetch 6 ,mem_le_lap 
-0x441d 016175 store 6 ,mem_device1_locall_addr 
-0x441e 016176 add pdata ,0x0100 ,pdata 
-0x441f 016177 store 6 ,mem_device2_locall_addr 
-0x4420 016178 add pdata ,0x0100 ,pdata 
-0x4421 016179 store 6 ,mem_device3_locall_addr 
-0x4422 016180 rtn 
-:      016183 mouse_load_flash_flag:
-0x4423 016184 setarg mem_store_flag 
-0x4424 016185 arg mem_mouse_information_start ,temp 
-0x4425 016186 isub temp ,temp 
-0x4426 016187 fetch 3 ,mem_flash_base 
-0x4427 016188 iadd temp ,pdata 
-0x4428 016189 arg 2 ,temp 
-0x4429 016190 arg mem_store_flag ,rega 
-0x442a 016191 branch spid_read_flash 
-:      016194 mouse_load_flash_device_info:
-0x442b 016195 setarg mem_mouse_information_end 
-0x442c 016196 arg mem_mouse_information_start ,temp 
-0x442d 016197 isub temp ,temp 
-0x442e 016198 fetch 3 ,mem_flash_base 
-0x442f 016199 arg mem_mouse_information_start ,rega 
-0x4430 016200 call spid_read_flash 
-0x4431 016201 call mouse_select_reconn_device 
-0x4432 016202 fetch 4 ,mem_mouse_24g_addr 
-0x4433 016203 call g24_head_ptr2regc 
-0x4434 016204 branch g24_store_mem_addr 
-:      016206 mouse_store_flash_device_info:
-0x4435 016207 setarg mem_mouse_information_end 
-0x4436 016208 arg mem_mouse_information_start ,temp 
-0x4437 016209 isub temp ,temp 
-0x4438 016210 arg mem_mouse_information_start ,rega 
-0x4439 016211 fetch 3 ,mem_flash_base 
-0x443a 016212 branch flash_write 
-:      016214 mouse_store_eerpom_dpi:
-0x443b 016215 arg 1 ,temp 
-0x443c 016216 arg mem_mouse_dpi ,rega 
-0x443d 016217 arg mouse_dpi_eeprom_offect ,regb 
-0x443e 016218 branch iicd_write_protect_eep_data 
-:      016220 mouse_load_eeprom_dpi:
-0x443f 016221 arg 1 ,temp 
-0x4440 016222 arg mem_mouse_dpi ,rega 
-0x4441 016223 arg mouse_dpi_eeprom_offect ,regb 
-0x4442 016224 branch iicd_read_eep_data 
-:      016226 mouse_statue_cheak_timer:
-0x4443 016227 rtnmark1 mark_24g 
-0x4444 016228 fetch mouse_flag_len ,mem_mouse_flag 
-0x4445 016229 rtnbit0 mouse_enable_statue_up 
-0x4446 016230 fetch 1 ,mem_mouse_1step_up_count 
-0x4447 016231 pincrease 1 
-0x4448 016232 and pdata ,0x07 ,pdata 
-0x4449 016233 store 1 ,mem_mouse_1step_up_count 
-0x444a 016234 rtnne 0x07 
-0x444b 016235 fetch 2 ,mem_ui_state_map 
-0x444c 016236 bbit1 ui_state_bt_connected ,mouse_check_statue_up 
-0x444d 016237 bbit1 ui_state_ble_connected ,mouse_check_statue_up 
-0x444e 016238 rtn 
-:      016243 mouse_check_statue_up:
-0x444f 016244 bpatch patch1d_6 ,mem_patch1d 
-0x4450 016245 fetch 1 ,mem_mouse_2step_up_count 
-0x4451 016246 nrtn blank 
-0x4452 016247 fetch mouse_flag_len ,mem_mouse_flag 
-0x4453 016248 rtnbit0 mouse_statue_up_flag 
-0x4454 016249 fetch 1 ,mem_sensor_squal_reg 
-0x4455 016250 call sensor_read 
-0x4456 016251 store 1 ,mem_sensor_iqc 
-0x4457 016252 sub pdata ,0x10 ,null 
-0x4458 016253 branch mouse_statue_up_timer_init ,positive 
-0x4459 016254 jam 0 ,mem_mouse_2step_up_count 
-0x445a 016255 rtn 
-:      016257 mouse_statue_up_timer_init:
-0x445b 016258 jam 30 ,mem_mouse_2step_up_count 
-0x445c 016259 rtn 
-:      016260 mouse_statue_up_timer:
-0x445d 016261 arg mem_mouse_2step_up_count ,regc 
-0x445e 016262 arg mouse_statue_up ,regb 
-0x445f 016263 branch timer_single_step 
-:      016265 mouse_statue_up:
-0x4460 016266 fetch 1 ,mem_sensor_squal_reg 
-0x4461 016267 call twspi_read 
-0x4462 016268 sub pdata ,0x10 ,null 
-0x4463 016269 nrtn positive 
-0x4464 016270 fetch mouse_flag_len ,mem_mouse_flag 
-0x4465 016271 rtnbit0 mouse_statue_up_flag 
-0x4466 016272 arg mouse_statue_up_flag ,queue 
-0x4467 016273 call mouse_disable_function_flag 
-0x4468 016274 jam 0 ,mem_lpm_mult 
-0x4469 016275 jam 30 ,mem_mouse_statue_led_timer 
-0x446a 016276 call mouse_devce_led_off 
-0x446b 016277 fetch mouse_flag_len ,mem_mouse_flag 
-0x446c 016278 bbit1 mouse_enable_statue_up_three_led ,mouse_three_device_statue_up 
-:      016279 mouse_two_device_statue_up:
-0x446d 016280 fetch 1 ,mem_device_flag 
-0x446e 016281 beq mode_bt_device1 ,mouse_device1_led_on 
-0x446f 016282 beq mode_bt_device2 ,mouse_device_blink_led_init 
-0x4470 016283 rtn 
-:      016284 mouse_three_device_statue_up:
-0x4471 016285 fetch 1 ,mem_device_flag 
-0x4472 016286 beq mode_bt_device1 ,mouse_device1_led_on 
-0x4473 016287 beq mode_bt_device2 ,mouse_device2_led_on 
-0x4474 016288 beq mode_bt_device3 ,mouse_device3_led_on 
-0x4475 016289 rtn 
-:      016291 mouse_device_blink_led_init:
-0x4476 016292 fetch 1 ,mem_config_device1_led_gpio 
-0x4477 016293 branch mouse_led_blink 
-:      016297 mouse_statue_led_off:
-0x4478 016298 jam 0x20 ,mem_lpm_mult 
-0x4479 016299 branch mouse_devce_led_off 
-:      016303 mouse_devce1_led_off:
-0x447a 016304 fetch 1 ,mem_config_device1_led_gpio 
-0x447b 016305 rtneq gpio_disable 
-0x447c 016306 store 1 ,mem_mouse_struct_led_gpio 
-0x447d 016307 branch mouse_led_off 
-:      016309 mouse_devce2_led_off:
-0x447e 016310 fetch 1 ,mem_config_device2_led_gpio 
-0x447f 016311 rtneq gpio_disable 
-0x4480 016312 store 1 ,mem_mouse_struct_led_gpio 
-0x4481 016313 branch mouse_led_off 
-:      016315 mouse_devce_led_off:
-0x4482 016316 call mouse_led_off 
-0x4483 016317 call mouse_devce1_led_off 
-0x4484 016318 call mouse_devce2_led_off 
-:      016319 mouse_devce3_led_off:
-0x4485 016320 fetch 1 ,mem_config_device3_led_gpio 
-0x4486 016321 rtneq gpio_disable 
-0x4487 016322 store 1 ,mem_mouse_struct_led_gpio 
-0x4488 016323 branch mouse_led_off 
-:      016325 mouse_device1_led_on:
-0x4489 016326 fetch 1 ,mem_config_device1_led_gpio 
-0x448a 016327 store 1 ,mem_mouse_struct_led_gpio 
-0x448b 016328 branch mouse_led_on 
-:      016329 mouse_device2_led_on:
-0x448c 016330 fetch 1 ,mem_config_device2_led_gpio 
-0x448d 016331 store 1 ,mem_mouse_struct_led_gpio 
-0x448e 016332 branch mouse_led_on 
-:      016333 mouse_device3_led_on:
-0x448f 016334 fetch 1 ,mem_config_device3_led_gpio 
-0x4490 016335 store 1 ,mem_mouse_struct_led_gpio 
-0x4491 016336 branch mouse_led_on 
-:      016340 mouse_polling_device:
-0x4492 016341 bpatch patch1d_7 ,mem_patch1d 
-0x4493 016342 fetch 1 ,mem_reconn_times 
-0x4494 016343 increase -1 ,pdata 
-0x4495 016344 store 1 ,mem_reconn_times 
-0x4496 016345 fetcht 1 ,mem_device_flag 
-0x4497 016346 increase 1 ,temp 
-0x4498 016347 fetch 1 ,mem_device_number 
-0x4499 016348 isub temp ,null 
-0x449a 016349 ncall mouse_select_device_count_clean ,positive 
-0x449b 016350 storet 1 ,mem_device_flag 
-0x449c 016351 jam 0 ,mem_link_key_exists 
-0x449d 016352 call mouse_store_device_number2eeprom 
-0x449e 016353 call mouse_before_store_reconn_info 
-0x449f 016354 branch mouse_check_reconn_target 
-:      016356 mouse_power_down:
-0x44a0 016357 call mouse_devce_led_off 
-0x44a1 016358 setarg 0 
-0x44a2 016359 store 8 ,mem_gpio_wakeup_low 
-0x44a3 016360 branch lpm_hibernate 
-:      016371 remote_car_init:
-0x44a4 016372 rtn wake 
-0x44a5 016373 hfetch 1 ,core_gpio_sel1 
-0x44a6 016374 and_into 0xf0 ,pdata 
-0x44a7 016375 hstore 1 ,core_gpio_sel1 
-0x44a8 016376 call keyscan_key_init 
-0x44a9 016377 setarg remote_car_le_before_hibernate 
-0x44aa 016378 store 2 ,mem_cb_before_hibernate 
-0x44ab 016380 setarg remote_car_process_lpm_before 
-0x44ac 016381 store 2 ,mem_cb_before_lpm 
-0x44ad 016383 setarg remote_car_scale_process_idle 
-0x44ae 016384 store 2 ,mem_cb_idle_process 
-0x44af 016386 setarg remote_car_scale_process_bb_event 
-0x44b0 016387 store 2 ,mem_cb_bb_event_process 
-0x44b1 016389 setarg app_get_lpm_wake_lock 
-0x44b2 016390 store 2 ,mem_cb_check_wakelock 
-0x44b3 016392 call g24_head_ptr2regc 
-0x44b4 016393 setarg remote_car_g24_package_data 
-0x44b5 016394 add regc ,offset_24g_cb_data ,contw 
-0x44b6 016395 istore 2 ,contw 
-0x44b7 016397 setarg remote_car_g24_enter_lpm 
-0x44b8 016398 add regc ,offset_24g_cb_lpm_prepare ,contw 
-0x44b9 016399 istore 2 ,contw 
-0x44ba 016401 setarg remote_car_process_lpm_before 
-0x44bb 016402 add regc ,offset_24g_cb_lpm_before ,contw 
-0x44bc 016403 istore 2 ,contw 
-0x44bd 016405 setarg remote_car_event_timer 
-0x44be 016406 store 2 ,mem_cb_event_timer 
-0x44bf 016408 setarg remote_car_power_off_signal 
-0x44c0 016409 store 2 ,mem_remote_car_power_off_cb 
-0x44c1 016411 setarg remote_car_soft_switch_power_on_signal 
-0x44c2 016412 store 2 ,mem_remote_car_power_standby_cb 
-0x44c3 016414 setarg remote_car_send_key_data 
-0x44c4 016415 store 2 ,mem_cb_remote_car_keyscan 
-0x44c5 016417 bpatch patch1e_0 ,mem_patch1e 
-0x44c6 016418 call remote_car_init_environment 
-0x44c7 016419 call queue_init 
-0x44c8 016420 jam 2 ,mem_lpm_mult 
-0x44c9 016421 fetch 1 ,mem_remote_car_config_soft_switch_enable 
-0x44ca 016422 store 1 ,mem_remote_car_hard_soft_switch 
-0x44cb 016423 beq hard_switch ,remote_car_hard_switch_power_on_signal 
-0x44cc 016424 fetch 1 ,mem_remote_car_config_soft_switch_gpio 
-0x44cd 016425 store 1 ,mem_ui_button_gpio 
-:      016426 remote_car_soft_switch_power_on_init:
-0x44ce 016427 call remote_car_ui_led_init 
-0x44cf 016428 call ui_button_init 
-0x44d0 016429 call ui_button_polling 
-0x44d1 016430 jam power_starting ,mem_remote_car_power_state 
-0x44d2 016431 fetch 2 ,mem_ui_state_map 
-0x44d3 016432 rtnbit1 ui_state_btn_down 
-0x44d4 016433 branch app_enter_hibernate 
-:      016437 remote_car_hard_switch_power_on_signal:
-0x44d5 016438 jam power_standby ,mem_remote_car_power_state 
-:      016439 remote_car_soft_switch_power_on_signal:
-0x44d6 016440 call remote_car_ui_led_init 
-0x44d7 016442 arg 0 ,rega 
-0x44d8 016443 call ui_led_blink_start_global 
-:      016444 remote_car_connect_24g_mode:
-0x44d9 016445 branch g24_auto_pair_start 
-:      016447 remote_car_power_off_signal:
-0x44da 016448 branch remote_car_ui_led_init 
-:      016450 remote_car_ui_led_init:
-0x44db 016451 bpatch patch1e_1 ,mem_patch1e 
-0x44dc 016452 fetch 1 ,mem_remote_car_config_connect_led_gpio 
-0x44dd 016453 bne invalid_pin_num ,remote_car_pairing_led_gpio_set 
-:      016454 remote_car_ui_led_init_1:
-0x44de 016455 fetcht 1 ,mem_remote_car_led_map 
-0x44df 016456 branch gpio_config_output 
-:      016457 remote_car_pairing_led_gpio_set:
-0x44e0 016458 store 1 ,mem_remote_car_led_map 
-0x44e1 016459 branch remote_car_ui_led_init_1 
-:      016462 remote_car_init_environment:
-0x44e2 016463 call g24_set_device_addr 
-0x44e3 016464 fetch 2 ,mem_remote_car_no_data_timeout 
-0x44e4 016465 store 2 ,mem_remote_car_no_data_timer 
-0x44e5 016466 branch remote_car_get_adc_default_data 
-:      016468 remote_car_le_before_hibernate:
-:      016473 remote_car_in_enter_hibernate:
-0x44e6 016474 call gpio_set_before_lpm_common 
-0x44e7 016475 call remote_car_process_lpm_before 
-0x44e8 016476 branch app_enter_hibernate 
-:      016478 remote_car_process_lpm_before:
-0x44e9 016479 branch keyscan_process_lpm_before 
-:      016481 remote_car_g24_enter_lpm:
-0x44ea 016482 fetch 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x44eb 016483 rtn blank 
-0x44ec 016485 branch g24_lpm_long_sleep 
-:      016487 remote_car_process_auto_pair_exit:
-0x44ed 016488 rtn 
-:      016490 remote_car_key_scan_process:
-0x44ee 016491 branch keyscan_key_process 
-:      016493 remote_car_scale_process_idle:
-0x44ef 016494 call remote_car_rocker_process 
-0x44f0 016495 call remote_car_24g_status_process 
-0x44f1 016496 branch remote_car_key_scan_process 
-:      016498 remote_car_scale_process_bb_event:
-0x44f2 016499 copy regc ,pdata 
-0x44f3 016500 beq bt_evt_button_up ,app_event_button_up 
-0x44f4 016501 beq bt_evt_button_long_pressed ,app_button_long_pressed 
-0x44f5 016502 beq bt_evt_24g_pairing_complete ,remote_car_24g_pairing_complete 
-0x44f6 016503 beq bt_evt_24g_attempt_success ,remote_car_24g_attempt_success 
-0x44f7 016504 beq bt_evt_24g_attempt_fail ,remote_car_24g_attempt_fail 
-0x44f8 016505 rtn 
-:      016507 remote_car_24g_attempt_fail:
-0x44f9 016508 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x44fa 016509 rtn 
-:      016511 remote_car_24g_pairing_complete:
-0x44fb 016512 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x44fc 016513 jam work_paired ,mem_remote_car_24g_auto_work_step 
-0x44fd 016514 jam work_paired ,mem_remote_car_24g_pair_success_flag 
-0x44fe 016515 rtn 
-:      016517 remote_car_24g_attempt_success:
-0x44ff 016518 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x4500 016519 jam work_paired ,mem_remote_car_24g_auto_work_step 
-0x4501 016520 jam work_paired ,mem_remote_car_24g_pair_success_flag 
-0x4502 016521 rtn 
-:      016523 remote_car_24g_status_process:
-0x4503 016524 fetch 1 ,mem_remote_car_24g_auto_work_step 
-0x4504 016525 rtneq power_on 
-0x4505 016526 fetch 1 ,mem_remote_car_24g_status 
-0x4506 016527 rtneq work_paired 
-0x4507 016528 jam work_paired ,mem_remote_car_24g_status 
-:      016529 remote_car_scale_process_paired:
-0x4508 016530 arg 0 ,rega 
-0x4509 016531 branch ui_led_off_global 
-:      016532 remote_car_scale_process_shutdown:
-0x450a 016533 arg 0 ,rega 
-0x450b 016534 call ui_led_off_global 
-0x450c 016535 call remote_car_ui_led_init 
-0x450d 016536 branch app_enter_hibernate 
-:      016538 remote_car_event_timer:
-0x450e 016539 call app_power_timer 
-0x450f 016540 branch remote_car_no_data_timer 
-:      016542 remote_car_no_data_timer:
-0x4510 016543 fetch 1 ,mem_remote_car_config_timeout_shutdown_enable 
-0x4511 016544 rtn blank 
-0x4512 016545 arg mem_remote_car_no_data_timer ,regc 
-0x4513 016546 arg remote_car_scale_process_shutdown ,regb 
-0x4514 016547 branch timer_single_step_2b 
-:      016550 remote_car_get_adc_default_data:
-0x4515 016551 call remote_car_rocker_get_x 
-0x4516 016552 storet 2 ,mem_current_vdd_value_default_mid_x 
-0x4517 016553 call remote_car_rocker_get_y 
-0x4518 016554 storet 2 ,mem_current_vdd_value_default_mid_y 
-0x4519 016555 rtn 
-:      016556 remote_car_rocker_data_get:
-:      016557 remote_car_rocker_get_x:
-0x451a 016558 fetch 2 ,mem_current_vdd_value_default_mid_x 
-0x451b 016559 store 2 ,mem_current_vdd_value_default_mid_temp 
-0x451c 016560 call remote_car_get_adc_from_gpio6 
-0x451d 016561 call remote_car_rocker_get_value 
-0x451e 016562 store 1 ,mem_rocker_status 
-:      016563 remote_car_rocker_get_y:
-0x451f 016564 fetch 2 ,mem_current_vdd_value_default_mid_y 
-0x4520 016565 store 2 ,mem_current_vdd_value_default_mid_temp 
-0x4521 016566 call remote_car_get_adc_from_gpio7 
-0x4522 016567 call remote_car_rocker_get_value 
-0x4523 016568 store 1 ,mem_rocker_status + 1 
-0x4524 016569 rtn 
-:      016570 remote_car_rocker_get_value:
-0x4525 016571 fetch 2 ,mem_current_vdd_default_range 
-0x4526 016572 copy pdata ,rega 
-0x4527 016573 fetch 2 ,mem_current_vdd_value_default_mid_temp 
-0x4528 016574 call remote_car_rocker_mid_value_adjust 
-0x4529 016575 fetch 1 ,mem_rocker_work_status 
-0x452a 016576 nbranch remote_car_rocker_translate_key ,blank 
-0x452b 016577 nrtn positive 
-0x452c 016578 fetcht 2 ,mem_current_vdd_value_default_mid_temp 
-0x452d 016579 rtn 
-:      016580 remote_car_rocker_mid_value_adjust:
-0x452e 016581 isub temp ,pdata 
-0x452f 016582 branch remote_car_rocker_mid_adjust_positive ,positive 
-0x4530 016583 sub pdata ,0 ,pdata 
-0x4531 016584 jam 1 ,mem_rocker_negative_flag 
-0x4532 016585 isub rega ,null 
-0x4533 016586 rtn 
-:      016587 remote_car_rocker_mid_adjust_positive:
-0x4534 016588 jam 0 ,mem_rocker_negative_flag 
-0x4535 016589 isub rega ,null 
-0x4536 016590 rtn 
-:      016591 remote_car_rocker_translate_key:
-0x4537 016592 nbranch remote_car_rocker_middle_key ,positive 
-0x4538 016593 fetch 1 ,mem_rocker_negative_flag 
-0x4539 016594 nbranch remote_car_rocker_negative_key ,blank 
-:      016595 remote_car_rocker_positive_key:
-0x453a 016596 setarg rocker_positive_key 
-0x453b 016597 rtn 
-:      016598 remote_car_rocker_negative_key:
-0x453c 016599 setarg rocker_negative_key 
-0x453d 016600 rtn 
-:      016601 remote_car_rocker_middle_key:
-0x453e 016602 setarg rocker_middle_key 
-0x453f 016603 rtn 
-:      016604 remote_car_get_adc_from_gpio6:
-0x4540 016605 jam 0x33 ,mem_adc_channel 
-0x4541 016606 branch adc_set_mode 
-:      016607 remote_car_get_adc_from_gpio7:
-0x4542 016608 jam 0x34 ,mem_adc_channel 
-0x4543 016609 branch adc_set_mode 
-:      016612 remote_car_rocker_process:
-0x4544 016613 fetch 1 ,mem_remote_car_config_check_way 
-0x4545 016614 rtnne car_remote_check_rocker 
-:      016615 remote_car_read_rocker_check_start:
-0x4546 016616 bpatch patch1e_2 ,mem_patch1e 
-0x4547 016617 jam 1 ,mem_rocker_work_status 
-0x4548 016618 call remote_car_rocker_data_get 
-0x4549 016619 fetch 2 ,mem_rocker_status 
-0x454a 016620 fetcht 2 ,mem_rocker_last_status 
-0x454b 016621 isub temp ,null 
-0x454c 016622 rtn zero 
-0x454d 016623 store 2 ,mem_rocker_last_status 
-0x454e 016624 call remote_car_rocker_x_to_key 
-0x454f 016625 branch remote_car_rocker_y_to_key 
-:      016627 remote_car_rocker_x_to_key:
-0x4550 016628 fetch 1 ,mem_rocker_x_status 
-0x4551 016629 branch rocker_to_queue_set_0 ,blank 
-0x4552 016630 increase -1 ,pdata 
-0x4553 016631 branch remote_car_rocker_to_key 
-:      016632 remote_car_rocker_y_to_key:
-0x4554 016633 fetch 1 ,mem_rocker_y_status 
-0x4555 016634 branch rocker_to_queue_set_2 ,blank 
-0x4556 016635 increase 1 ,pdata 
-:      016636 remote_car_rocker_to_key:
-0x4557 016637 copy pdata ,queue 
-0x4558 016638 arg 1 ,rega 
-0x4559 016639 branch remote_car_send_key_data 
-:      016641 rocker_to_queue_set_0:
-0x455a 016642 arg 0 ,queue 
-0x455b 016643 arg 0 ,rega 
-0x455c 016644 branch remote_car_send_key_data 
-:      016645 rocker_to_queue_set_2:
-0x455d 016646 arg 2 ,queue 
-0x455e 016647 arg 0 ,rega 
-0x455f 016648 branch remote_car_send_key_data 
-:      016650 remote_car_send_key_data:
-0x4560 016651 copy rega ,pdata 
-0x4561 016652 store 1 ,mem_remote_key_status 
-0x4562 016653 fetch 1 ,mem_remote_car_24g_auto_work_step 
-0x4563 016654 beq power_on ,g24_auto_pair_start 
-0x4564 016655 fetch 2 ,mem_remote_car_no_data_timeout 
-0x4565 016656 store 2 ,mem_remote_car_no_data_timer 
-0x4566 016657 fetch 1 ,mem_remote_key_status 
-0x4567 016658 branch remote_car_key_is_release ,blank 
-:      016659 remote_car_key_is_press:
-0x4568 016660 bpatch patch1e_3 ,mem_patch1e 
-0x4569 016661 arg 0 ,rega 
-0x456a 016662 call ui_led_on_global 
-:      016663 remote_car_attack_key_press:
-0x456b 016664 copy queue ,pdata 
-0x456c 016665 beq 4 ,remote_car_send_attack_key4_press 
-0x456d 016666 beq 5 ,remote_car_send_attack_key5_press 
-0x456e 016667 beq 6 ,remote_car_send_fire_key6_press 
-:      016670 remote_car_motor_key_press:
-0x456f 016671 call remote_car_device_layout_select 
-0x4570 016672 beq control_f_b_ten ,remote_car_single_motor_key_is_press 
-0x4571 016673 beq control_l_r_ten ,remote_car_double_motor_key_press 
-0x4572 016674 beq control_l_r_lr ,remote_car_single_motor_key_is_press 
-0x4573 016675 rtn 
-:      016677 remote_car_single_motor_key_is_press:
-0x4574 016678 copy queue ,pdata 
-0x4575 016679 beq 0 ,remote_car_send_motor1_key0_press 
-0x4576 016680 beq 1 ,remote_car_send_motor1_key1_press 
-0x4577 016681 beq 2 ,remote_car_send_motor2_key2_press 
-0x4578 016682 beq 3 ,remote_car_send_motor2_key3_press 
-0x4579 016683 rtn 
-:      016685 remote_car_double_motor_key_press:
-0x457a 016686 copy queue ,pdata 
-0x457b 016687 beq 0 ,remote_car_send_double_motor_key0_press 
-0x457c 016688 beq 1 ,remote_car_send_double_motor_key1_press 
-0x457d 016689 beq 2 ,remote_car_send_double_motor_key2_press 
-0x457e 016690 beq 3 ,remote_car_send_double_motor_key3_press 
-0x457f 016691 rtn 
-:      016693 remote_car_key_is_release:
-0x4580 016694 bpatch patch1e_4 ,mem_patch1e 
-0x4581 016695 arg 0 ,rega 
-0x4582 016696 call ui_led_off_global 
-:      016697 remote_car_attack_key_release:
-0x4583 016698 copy queue ,pdata 
-0x4584 016699 beq 4 ,remote_car_send_attack_key4_rel 
-0x4585 016700 beq 5 ,remote_car_send_attack_key5_rel 
-:      016703 remote_car_motor_key_release:
-0x4586 016704 call remote_car_device_layout_select 
-0x4587 016705 beq control_f_b_ten ,remote_car_single_motor_key_rel 
-0x4588 016706 beq control_l_r_ten ,remote_car_double_motor_key_rel 
-0x4589 016707 beq control_l_r_lr ,remote_car_single_motor_key_rel 
-0x458a 016708 rtn 
-:      016710 remote_car_device_layout_select:
-0x458b 016711 fetch 1 ,mem_remote_car_config_layout 
-0x458c 016712 fetcht 1 ,mem_remote_car_config_key_map 
-0x458d 016713 ior temp ,pdata 
-0x458e 016714 rtn 
-:      016717 remote_car_send_motor1_key0_press:
-0x458f 016718 jam motor_positive ,mem_remote_car_24g_motor1_payload 
-0x4590 016719 branch remote_car_send_key 
-:      016720 remote_car_send_motor1_key1_press:
-0x4591 016721 jam motor_negative ,mem_remote_car_24g_motor1_payload 
-0x4592 016722 branch remote_car_send_key 
-:      016723 remote_car_send_motor2_key2_press:
-0x4593 016724 jam motor_positive ,mem_remote_car_24g_motor2_payload 
-0x4594 016725 branch remote_car_send_key 
-:      016726 remote_car_send_motor2_key3_press:
-0x4595 016727 jam motor_negative ,mem_remote_car_24g_motor2_payload 
-0x4596 016728 branch remote_car_send_key 
-:      016731 remote_car_send_double_motor_key0_press:
-0x4597 016732 jam motor_positive ,mem_remote_car_24g_motor1_payload 
-0x4598 016733 jam motor_positive ,mem_remote_car_24g_motor2_payload 
-0x4599 016734 branch remote_car_send_key 
-:      016735 remote_car_send_double_motor_key1_press:
-0x459a 016736 jam motor_negative ,mem_remote_car_24g_motor1_payload 
-0x459b 016737 jam motor_negative ,mem_remote_car_24g_motor2_payload 
-0x459c 016738 branch remote_car_send_key 
-:      016739 remote_car_send_double_motor_key2_press:
-0x459d 016740 jam motor_negative ,mem_remote_car_24g_motor1_payload 
-0x459e 016741 jam motor_positive ,mem_remote_car_24g_motor2_payload 
-0x459f 016742 branch remote_car_send_key 
-:      016743 remote_car_send_double_motor_key3_press:
-0x45a0 016744 jam motor_positive ,mem_remote_car_24g_motor1_payload 
-0x45a1 016745 jam motor_negative ,mem_remote_car_24g_motor2_payload 
-0x45a2 016746 branch remote_car_send_key 
-:      016749 remote_car_send_attack_key4_press:
-0x45a3 016750 jam motor_positive ,mem_remote_car_24g_motor3_payload 
-0x45a4 016751 branch remote_car_send_key 
-:      016752 remote_car_send_attack_key5_press:
-0x45a5 016753 jam motor_negative ,mem_remote_car_24g_motor3_payload 
-0x45a6 016754 branch remote_car_send_key 
-:      016756 remote_car_send_fire_key6_press:
-0x45a7 016757 jam 0x01 ,mem_remote_car_24g_fire_send_payload 
-0x45a8 016758 branch remote_car_send_attack 
-:      016760 remote_car_single_motor_key_rel:
-0x45a9 016761 copy queue ,pdata 
-0x45aa 016762 beq 0 ,remote_car_send_motor1_key0_rel 
-0x45ab 016763 beq 1 ,remote_car_send_motor1_key1_rel 
-0x45ac 016764 beq 2 ,remote_car_send_motor2_key2_rel 
-0x45ad 016765 beq 3 ,remote_car_send_motor2_key3_rel 
-0x45ae 016766 rtn 
-:      016768 remote_car_double_motor_key_rel:
-0x45af 016769 copy queue ,pdata 
-0x45b0 016770 beq 0 ,remote_car_send_double_motor_key0_rel 
-0x45b1 016771 beq 1 ,remote_car_send_double_motor_key1_rel 
-0x45b2 016772 beq 2 ,remote_car_send_double_motor_key2_rel 
-0x45b3 016773 beq 3 ,remote_car_send_double_motor_key3_rel 
-0x45b4 016774 rtn 
-:      016776 remote_car_send_motor1_key0_rel:
-:      016777 remote_car_send_motor1_key1_rel:
-0x45b5 016778 jam motor_stop ,mem_remote_car_24g_motor1_payload 
-0x45b6 016779 branch remote_car_send_key 
-:      016780 remote_car_send_motor2_key2_rel:
-:      016781 remote_car_send_motor2_key3_rel:
-0x45b7 016782 jam motor_stop ,mem_remote_car_24g_motor2_payload 
-0x45b8 016783 branch remote_car_send_key 
-:      016785 remote_car_send_double_motor_key0_rel:
-:      016786 remote_car_send_double_motor_key1_rel:
-:      016787 remote_car_send_double_motor_key2_rel:
-:      016788 remote_car_send_double_motor_key3_rel:
-0x45b9 016789 jam motor_stop ,mem_remote_car_24g_motor1_payload 
-0x45ba 016790 jam motor_stop ,mem_remote_car_24g_motor2_payload 
-0x45bb 016791 branch remote_car_send_key 
-:      016793 remote_car_send_attack_key4_rel:
-:      016794 remote_car_send_attack_key5_rel:
-0x45bc 016795 jam motor_stop ,mem_remote_car_24g_motor3_payload 
-0x45bd 016796 branch remote_car_send_key 
-:      016798 remote_car_send_key:
-0x45be 016799 arg mem_remote_car_24g_motor_packet ,rega 
-0x45bf 016800 branch queue_push 
-:      016801 remote_car_send_attack:
-0x45c0 016802 arg mem_remote_car_24g_fire_packet ,rega 
-0x45c1 016803 branch queue_push 
-:      016805 remote_car_g24_package_data:
-0x45c2 016806 fetch 1 ,mem_remote_car_24g_pair_success_flag 
-0x45c3 016807 beq work_paired ,remote_car_g24_send_empty 
-0x45c4 016808 arg mem_remote_car_24g_tx_temp ,rega 
-0x45c5 016809 call queue_pop 
-0x45c6 016810 nbranch remote_car_moto_data ,user 
-:      016811 remote_car_g24_package_data_continue:
-0x45c7 016812 arg mem_remote_car_24g_tx_temp ,contr 
-0x45c8 016813 ifetch 1 ,contr 
-0x45c9 016814 copy pdata ,rega 
-0x45ca 016815 arg mem_remote_car_24g_tx_temp + 1 ,regb 
-0x45cb 016818 rtn 
-:      016820 remote_car_g24_send_empty:
-0x45cc 016821 jam 0 ,mem_remote_car_24g_pair_success_flag 
-0x45cd 016822 enable user 
-0x45ce 016823 arg 1 ,rega 
-0x45cf 016824 arg mem_remote_car_empty_packet ,regb 
-0x45d0 016825 rtn 
-:      016827 remote_car_moto_data:
-0x45d1 016828 fetch 1 ,mem_remote_car_24g_tx_temp + 3 
-0x45d2 016829 beq car_cmd_l_r_motor_control ,remote_car_moto_data_next 
-0x45d3 016830 beq car_cmd_f_b_motor_control ,remote_car_moto_data_next 
-0x45d4 016831 rtn 
-:      016832 remote_car_moto_data_next:
-0x45d5 016833 fetch 1 ,mem_remote_car_24g_tx_temp + 6 
-0x45d6 016834 nbranch remote_car_moto_data_enable_user ,blank 
-0x45d7 016835 fetch 1 ,mem_remote_car_24g_tx_temp + 8 
-0x45d8 016836 nbranch remote_car_moto_data_enable_user ,blank 
-0x45d9 016837 fetch 1 ,mem_remote_car_24g_tx_temp + 10 
-0x45da 016838 nbranch remote_car_moto_data_enable_user ,blank 
-0x45db 016839 rtn 
-:      016840 remote_car_moto_data_enable_user:
-0x45dc 016841 enable user 
-0x45dd 016842 branch remote_car_g24_package_data_continue 
-:      016850 shutter_init:
-0x45de 016851 rtn wake 
-0x45df 016852 hfetch 1 ,core_gpio_sel1 
-0x45e0 016853 and_into 0xfc ,pdata 
-0x45e1 016854 hstore 1 ,core_gpio_sel1 
-0x45e2 016855 setarg shutter_le_before_hibernate 
-0x45e3 016856 store 2 ,mem_cb_before_hibernate 
-0x45e4 016858 setarg shutter_process_lpm_before 
-0x45e5 016859 store 2 ,mem_cb_before_lpm 
-0x45e6 016861 setarg app_enter_hibernate 
-0x45e7 016862 store 2 ,mem_cb_discovry_timeout 
-0x45e8 016864 setarg shutter_process_idle 
-0x45e9 016865 store 2 ,mem_cb_idle_process 
-0x45ea 016867 setarg shutter_process_bb_event 
-0x45eb 016868 store 2 ,mem_cb_bb_event_process 
-0x45ec 016870 setarg shutter_le_scale_lpm_lock 
-0x45ed 016871 store 2 ,mem_cb_check_wakelock 
-0x45ee 016873 setarg ble_shutter_receive_data 
-0x45ef 016874 store 2 ,mem_cb_att_write 
-0x45f0 016876 setarg shutter_le_bb_event_timer 
-0x45f1 016877 store 2 ,mem_cb_event_timer 
-0x45f2 016879 setarg shutter_key_change 
-0x45f3 016880 store 2 ,mem_cb_shutter_keycan 
-0x45f4 016882 setarg shutter_soft_swtich_power_on 
-0x45f5 016883 store 2 ,mem_shutter_soft_switch_poweron_callback_function 
-0x45f6 016884 setarg shutter_soft_swtich_power_off 
-0x45f7 016885 store 2 ,mem_shutter_soft_switch_poweroff_callback_function 
-0x45f8 016887 call le_modified_name 
-0x45f9 016888 call shutter_load_bluetooth_config_by_user_config 
-0x45fa 016889 call shutter_init_bluetooth_config 
-0x45fb 016890 call shutter_init_param 
-0x45fc 016891 call keyscan_key_init 
-0x45fd 016892 call shutter_load_buffer_config_form_datarom 
-0x45fe 016893 call queue_init 
-0x45ff 016894 call ui_led_init_global 
-0x4600 016895 call shutter_load_bluetooth_config 
-0x4601 016896 call shutter_load_bluetooth_config_by_eeprom 
-0x4602 016898 bpatch patch1e_5 ,mem_patch1e 
-0x4603 016899 call classic_shutter_load_reconn_info 
-0x4604 016900 fetch 1 ,mem_shutter_hard_soft_switch_case 
-0x4605 016901 beq hard_switch ,shutter_hart_swtich_power_on 
-0x4606 016902 fetch 1 ,mem_shutter_soft_switch_button_gpio 
-0x4607 016903 store 1 ,mem_ui_button_gpio 
-0x4608 016904 branch ui_soft_swtich_init 
-:      016907 shutter_hart_swtich_power_on:
-0x4609 016908 jam ui_button_gpio_disable ,mem_ui_button_gpio 
-0x460a 016909 jam ss_state_power_on ,mem_shutter_soft_switch_power_state 
-0x460b 016910 branch shutter_start_reconnect 
-:      016914 shutter_le_scale_lpm_lock:
-0x460c 016915 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x460d 016916 beq ss_state_power_off ,app_get_lpm_wake_lock 
-0x460e 016917 call l2cap_malloc_get_full_map 
-0x460f 016918 fetch 1 ,mem_used_map 
-0x4610 016919 nbranch app_get_lpm_wake_lock ,blank 
-0x4611 016920 branch app_put_lpm_wake_lock 
-:      016924 shutter_process_bb_event:
-0x4612 016925 copy regc ,pdata 
-0x4613 016927 beq bt_evt_bb_connected ,classic_shutter_process_baseband_connect 
-0x4614 016928 beq bt_evt_bb_disconnected ,classic_shutter_process_baseband_disconnect 
-0x4615 016929 beq bt_evt_reconn_failed ,classic_shutter_process_reconnect_failed 
-0x4616 016930 beq bt_evt_setup_complete ,classic_shutter_process_setup_complete 
-0x4617 016931 beq bt_evt_hid_connected ,classic_shutter_process_hid_connect 
-0x4618 016932 beq bt_evt_hid_disconnected ,classic_shutter_process_hid_disconnect 
-0x4619 016933 beq bt_evt_hid_handshake ,classic_shutter_process_hid_handshake 
-0x461a 016934 beq bt_evt_reconn_page_timeout ,classic_shutter_process_reconnect_page_timeout 
-0x461b 016935 beq bt_evt_virtual_cable_unplug ,classic_shutter_process_virtual_cable_unplug 
-0x461c 016936 beq bt_evt_remote_unsniff ,classic_shutter_process_remote_unsniff 
-0x461d 016937 beq bt_evt_store_nvram ,classic_shutter_process_store_reconnect_information 
-0x461e 016939 beq bt_evt_le_connected ,ble_shutter_process_baseband_connect 
-0x461f 016940 beq bt_evt_le_disconnected ,ble_shutter_process_baseband_disconnect 
-0x4620 016941 beq bt_evt_le_reconnect_complete ,ble_shutter_process_reconnect_complete 
-0x4621 016942 beq bt_evt_le_parse_conn_papa_update_rsp ,ble_shutter_process_parse_connect_parameter_update_response 
-0x4622 016944 beq bt_evt_button_long_pressed ,shutter_process_soft_swtich_button_long_press 
-0x4623 016945 beq bt_evt_button_down ,shutter_process_soft_swtich_button_down 
-0x4624 016946 beq bt_evt_button_up ,shutter_process_soft_swtich_button_up 
-0x4625 016947 rtn 
-:      016952 classic_shutter_process_baseband_connect:
-0x4626 016953 jam 0 ,mem_classic_shutter_hid_disconn_count 
-0x4627 016954 jam 0 ,mem_classic_shutter_cable_unplug_conut 
-0x4628 016955 rtn 
-:      016958 classic_shutter_process_baseband_disconnect:
-0x4629 016959 call classic_shutter_disconnect_clear_flag 
-0x462a 016960 branch classic_shutter_process_reconnect_failed 
-:      016962 classic_shutter_disconnect_clear_flag:
-0x462b 016963 jam app_handshake_null ,mem_app_handshake_flag 
-0x462c 016964 jam 0 ,mem_hid_handshake_timer_count 
-0x462d 016965 jam 0 ,mem_unsniff2sniff_timer_count 
-0x462e 016966 jam 0 ,mem_classic_shutter_cable_unplug_conut 
-0x462f 016967 jam 0 ,mem_classic_shutter_hid_disconn_count 
-0x4630 016968 branch queue_init 
-:      016971 classic_shutter_process_reconnect_failed:
-0x4631 016972 call app_disconn_reason_clear 
-0x4632 016973 branch shutter_start_bluetooth_discovery 
-:      016976 classic_shutter_process_setup_complete:
-0x4633 016977 call shutter_stop_bluetooth_discovery 
-0x4634 016978 branch app_led_stop_blink 
-:      016981 classic_shutter_process_hid_connect:
-0x4635 016982 setarg hid_handshake_timeout 
-0x4636 016983 store 1 ,mem_hid_handshake_timer_count 
-0x4637 016984 rtn 
-:      016987 classic_shutter_process_hid_disconnect:
-0x4638 016988 jam 0 ,mem_classic_shutter_cable_unplug_conut 
-0x4639 016989 setarg flag_shutter_hid_disconn_timeout 
-0x463a 016990 store 1 ,mem_classic_shutter_hid_disconn_count 
-0x463b 016991 rtn 
-:      016994 classic_shutter_process_hid_handshake:
-0x463c 016995 fetch 1 ,mem_app_handshake_flag 
-0x463d 016996 rtneq app_handshake_done 
-0x463e 016997 jam app_handshake_done ,mem_app_handshake_flag 
-0x463f 016998 call app_lpm_mult_enable 
-0x4640 016999 call app_store_reconn_info 
-0x4641 017000 call shutter_stop_bluetooth_discovery 
-0x4642 017001 call app_led_off 
-0x4643 017002 branch app_bt_enter_sniff 
-:      017005 classic_shutter_process_reconnect_page_timeout:
-0x4644 017006 branch classic_shutter_process_reconnect_failed 
-:      017009 classic_shutter_process_virtual_cable_unplug:
-0x4645 017010 setarg flag_shutter_cable_unplug_timeout 
-0x4646 017011 store 1 ,mem_classic_shutter_cable_unplug_conut 
-0x4647 017012 rtn 
-:      017015 classic_shutter_process_remote_unsniff:
-0x4648 017016 branch app_start_auto_sniff 
-:      017020 classic_shutter_process_store_reconnect_information:
-0x4649 017021 arg nvram_eeprom_offset ,regb 
-0x464a 017022 fetch 1 ,mem_nv_data_number 
-0x464b 017023 mul32 pdata ,34 ,temp 
-0x464c 017024 fetch 2 ,mem_nv_data_ptr 
-0x464d 017025 copy pdata ,rega 
-0x464e 017026 branch iicd_write_eep_data 
-:      017028 classic_shutter_load_reconn_info:
-0x464f 017029 arg nvram_eeprom_offset ,regb 
-0x4650 017030 fetch 1 ,mem_shutter_bluetooth_type 
-0x4651 017031 rtnbit0 classic_shutter 
-0x4652 017032 fetch 1 ,mem_nv_data_number 
-0x4653 017033 rtn blank 
-0x4654 017034 mul32 pdata ,34 ,temp 
-0x4655 017035 fetch 2 ,mem_nv_data_ptr 
-0x4656 017036 copy pdata ,rega 
-0x4657 017037 branch iicd_read_eep_data 
-:      017041 ble_shutter_process_baseband_connect:
-0x4658 017042 call shutter_stop_bluetooth_discovery 
-0x4659 017043 setarg 0 
-0x465a 017044 store 2 ,mem_ble_shutter_reconn_timer 
-0x465b 017045 branch app_led_off 
-:      017048 ble_shutter_process_baseband_disconnect:
-0x465c 017049 call queue_init 
-0x465d 017050 jam 0 ,mem_ble_shutter_enable_notify 
-0x465e 017051 branch shutter_start_reconnect 
-:      017054 ble_shutter_process_reconnect_complete:
-0x465f 017055 call queue_init 
-0x4660 017056 jam 1 ,mem_ble_shutter_enable_notify 
-0x4661 017057 fetch 8 ,mem_ble_shutter_interval_min 
-0x4662 017058 store 8 ,mem_le_interval_min 
-0x4663 017059 call app_lpm_mult_enable 
-0x4664 017060 branch le_l2cap_tx_update_req 
-:      017063 ble_shutter_process_parse_connect_parameter_update_response:
-0x4665 017064 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x4666 017065 rtneq ble_signaling_connect_parameter_update_accepted 
-0x4667 017066 fetch 8 ,mem_ble_shutter_interval_min_new 
-0x4668 017067 rtn blank 
-0x4669 017068 store 8 ,mem_le_interval_min 
-0x466a 017069 branch le_l2cap_tx_update_req 
-:      017073 shutter_process_soft_swtich_button_long_press:
-0x466b 017074 branch ui_soft_switch_botton_long_press 
-:      017076 shutter_process_soft_swtich_button_down:
-0x466c 017077 fetch 1 ,mem_shutter_hard_soft_switch_case 
-0x466d 017078 rtneq hard_switch 
-0x466e 017079 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x466f 017080 rtnne ss_state_power_on 
-0x4670 017081 call shutter_store_currenct_led_state 
-0x4671 017082 branch app_led_on 
-:      017084 shutter_store_currenct_led_state:
-0x4672 017085 jam 1 ,mem_shutter_soft_swtich_botton_down 
-0x4673 017086 arg 11 ,loopcnt 
-0x4674 017087 arg mem_shutter_soft_swtich_led_struct_temp ,contw 
-0x4675 017088 arg mem_shutter_led_struct_app_led ,contr 
-0x4676 017089 branch memcpy 
-:      017091 shutter_process_soft_swtich_button_up:
-0x4677 017092 fetch 1 ,mem_shutter_hard_soft_switch_case 
-0x4678 017093 rtneq hard_switch 
-0x4679 017094 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x467a 017095 beq ss_state_power_on ,shutter_load_currenct_led_state 
-0x467b 017096 branch ui_soft_switch_botton_up 
-:      017098 shutter_load_currenct_led_state:
-0x467c 017099 fetch 1 ,mem_shutter_soft_swtich_botton_down 
-0x467d 017100 rtnne 1 
-0x467e 017101 jam 0 ,mem_shutter_soft_swtich_botton_down 
-0x467f 017102 fetch 2 ,mem_ui_state_map 
-0x4680 017103 bbit1 ui_state_bt_connected ,app_led_off 
-0x4681 017104 bbit1 ui_state_ble_connected ,app_led_off 
-0x4682 017105 arg 11 ,loopcnt 
-0x4683 017106 arg mem_shutter_soft_swtich_led_struct_temp ,contr 
-0x4684 017107 arg mem_shutter_led_struct_app_led ,contw 
-0x4685 017108 branch memcpy 
-:      017113 shutter_le_bb_event_timer:
-0x4686 017115 call shutter_check_sleep_timer 
-0x4687 017118 call shutter_check_power_off_timer 
-0x4688 017121 call classic_shutter_check_unplug_timer 
-0x4689 017122 call classic_shutter_hid_handshake_timer 
-0x468a 017123 call classic_shutter_hid_disconn_timer 
-0x468b 017126 branch ble_shutter_reconn_timer 
-:      017130 shutter_check_sleep_timer:
-0x468c 017131 arg mem_shutter_sleep_timer ,regc 
-0x468d 017132 arg shutter_sleep_timeout ,regb 
-0x468e 017133 branch timer_single_step_2b 
-:      017134 shutter_sleep_timeout:
-0x468f 017135 jam ss_state_power_off ,mem_shutter_soft_switch_power_state 
-0x4690 017136 call app_led_off 
-0x4691 017137 call shutter_disconnect_current_connection 
-0x4692 017138 branch shutter_wait_power_off 
-:      017141 shutter_check_power_off_timer:
-0x4693 017142 arg mem_shutter_power_off_timer ,regc 
-0x4694 017143 arg shutter_check_power_off_timeout ,regb 
-0x4695 017144 branch timer_single_step 
-:      017146 shutter_check_power_off_timeout:
-0x4696 017147 fetch 2 ,mem_ui_state_map 
-0x4697 017148 bbit1 ui_state_ble_connected ,shutter_wait_power_off 
-0x4698 017149 bbit1 ui_state_bt_connected ,shutter_wait_power_off 
-0x4699 017150 fetch 1 ,mem_shutter_led_struct_app_led_type 
-0x469a 017151 beq ui_led_state_blink_start ,shutter_wait_power_off 
-0x469b 017152 beq ui_led_state_blink_lighting ,shutter_wait_power_off 
-0x469c 017153 beq ui_led_state_blink_darking ,shutter_wait_power_off 
-0x469d 017154 branch app_enter_hibernate 
-:      017158 classic_shutter_check_unplug_timer:
-0x469e 017159 arg mem_classic_shutter_cable_unplug_conut ,regc 
-0x469f 017160 arg classic_shutter_unplug_timeout ,regb 
-0x46a0 017161 branch timer_single_step 
-:      017163 classic_shutter_unplug_timeout:
-0x46a1 017164 fetch 1 ,mem_control_tasks 
-0x46a2 017165 set1 l2cap_disconnect_interrupt ,pdata 
-0x46a3 017166 set1 l2cap_disconnect_control ,pdata 
-0x46a4 017167 store 1 ,mem_control_tasks 
-0x46a5 017168 rtn 
-:      017170 classic_shutter_hid_handshake_timer:
-0x46a6 017171 arg mem_hid_handshake_timer_count ,regc 
-0x46a7 017172 arg classic_shutter_process_hid_handshake ,regb 
-0x46a8 017173 branch timer_single_step 
-:      017175 classic_shutter_hid_disconn_timer:
-0x46a9 017176 arg mem_classic_shutter_hid_disconn_count ,regc 
-0x46aa 017177 arg app_bt_disconnect ,regb 
-0x46ab 017178 branch timer_single_step 
-:      017183 ble_shutter_reconn_timer:
-0x46ac 017184 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x46ad 017185 rtnne ss_state_power_on 
-0x46ae 017186 arg mem_ble_shutter_reconn_timer ,regc 
-0x46af 017187 arg shutter_start_bluetooth_discovery ,regb 
-0x46b0 017188 branch timer_single_step_2b 
-:      017191 shutter_process_idle:
-0x46b1 017192 call shutter_send_data_to_master 
-0x46b2 017193 branch keyscan_key_process 
-:      017196 shutter_process_lpm_before:
-0x46b3 017197 branch keyscan_process_lpm_before 
-:      017199 shutter_le_before_hibernate:
-0x46b4 017200 call gpio_set_before_lpm_common 
-0x46b5 017201 branch shutter_process_lpm_before 
-:      017207 shutter_stop_bluetooth_discovery:
-0x46b6 017208 fetch 1 ,mem_shutter_bluetooth_type 
-0x46b7 017209 bbit1 classic_shutter ,classic_shutter_stop_bluetooth_discovery 
-0x46b8 017210 bbit1 ble_shutter ,ble_shutter_stop_bluetooth_discovery 
-0x46b9 017211 rtn 
-:      017213 ble_shutter_stop_bluetooth_discovery:
-0x46ba 017214 fetch 2 ,mem_ble_shutter_connect_timeout 
-0x46bb 017215 store 2 ,mem_shutter_sleep_timeout 
-0x46bc 017216 store 2 ,mem_shutter_sleep_timer 
-0x46bd 017217 branch app_ble_stop_adv 
-:      017219 classic_shutter_stop_bluetooth_discovery:
-0x46be 017220 fetch 2 ,mem_classic_shutter_connect_timeout 
-0x46bf 017221 store 2 ,mem_shutter_sleep_timeout 
-0x46c0 017222 store 2 ,mem_shutter_sleep_timer 
-0x46c1 017223 branch app_bt_stop_discovery 
-:      017225 shutter_start_bluetooth_discovery:
-0x46c2 017226 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x46c3 017227 rtnne ss_state_power_on 
-0x46c4 017228 fetch 1 ,mem_shutter_bluetooth_type 
-0x46c5 017229 bbit1 classic_shutter ,classic_shutter_start_discovery 
-0x46c6 017230 bbit1 ble_shutter ,ble_shutter_start_discovery 
-0x46c7 017231 rtn 
-:      017233 classic_shutter_start_discovery:
-0x46c8 017234 fetch 2 ,mem_classic_shutter_discovery_timeout ,
-0x46c9 017235 store 2 ,mem_shutter_sleep_timeout 
-0x46ca 017236 store 2 ,mem_shutter_sleep_timer 
-0x46cb 017237 branch app_bt_start_discovery_short 
-:      017239 ble_shutter_start_discovery:
-0x46cc 017240 fetch 2 ,mem_ui_state_map 
-0x46cd 017241 rtnbit1 ui_state_ble_connected 
-0x46ce 017242 fetch 2 ,mem_ble_shutter_discovery_timeout 
-0x46cf 017243 store 2 ,mem_shutter_sleep_timeout 
-0x46d0 017244 store 2 ,mem_shutter_sleep_timer 
-0x46d1 017245 fetch 2 ,mem_ble_shutter_discovery_adv_interval 
-0x46d2 017246 call shutter_ble_adv_interval_set 
-0x46d3 017247 call app_led_start_blink 
-0x46d4 017248 fetch 4 ,mem_ble_shutter_discovery_blink_on_time 
-0x46d5 017249 store 4 ,mem_shutter_led_struct_app_led_on_time 
-0x46d6 017250 fetch 2 ,mem_ui_state_map 
-0x46d7 017251 rtnbit1 ui_state_ble_adv 
-0x46d8 017252 branch app_ble_start_adv 
-:      017255 shutter_start_reconnect:
-0x46d9 017256 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x46da 017257 rtnne ss_state_power_on 
-0x46db 017258 fetch 1 ,mem_shutter_bluetooth_type 
-0x46dc 017259 bbit1 classic_shutter ,classic_shutter_start_reconnect 
-0x46dd 017260 bbit1 ble_shutter ,ble_shutter_start_reconnect 
-0x46de 017261 rtn 
-:      017263 classic_shutter_start_reconnect:
-0x46df 017264 call app_check_reconn_target 
-0x46e0 017265 branch shutter_start_bluetooth_discovery ,blank 
-0x46e1 017266 call app_led_on 
-0x46e2 017267 call app_bt_stop_discovery 
-0x46e3 017268 branch app_bt_start_reconnect 
-:      017270 ble_shutter_start_reconnect:
-0x46e4 017271 fetch 2 ,mem_ble_shutter_reconn_timer 
-0x46e5 017272 fetcht 2 ,mem_ble_shutter_reconn_timeout 
-0x46e6 017273 storet 2 ,mem_ble_shutter_reconn_timer 
-0x46e7 017274 nrtn blank 
-0x46e8 017275 fetch 2 ,mem_ble_shutter_reconn_dav_interval 
-0x46e9 017276 call shutter_ble_adv_interval_set 
-0x46ea 017277 call app_led_start_blink 
-0x46eb 017278 fetch 4 ,mem_ble_shutter_reconn_blink_on_time 
-0x46ec 017279 store 4 ,mem_shutter_led_struct_app_led_on_time 
-0x46ed 017280 fetch 2 ,mem_ui_state_map 
-0x46ee 017281 rtnbit1 ui_state_ble_adv 
-0x46ef 017282 branch app_ble_start_adv 
-:      017285 shutter_ble_adv_interval_set:
-0x46f0 017286 store 2 ,mem_lpm_interval 
-0x46f1 017287 increase -4 ,pdata 
-0x46f2 017288 store 2 ,mem_le_adv_interval 
-0x46f3 017289 rtn 
-:      017292 shutter_disconnect_current_connection:
-0x46f4 017293 fetch 2 ,mem_ui_state_map 
-0x46f5 017294 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x46f6 017295 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x46f7 017296 branch shutter_stop_bluetooth_discovery 
-:      017300 app_check_reconn_target:
-0x46f8 017301 fetch 1 ,mem_nv_data_number 
-0x46f9 017302 copy pdata ,loopcnt 
-0x46fa 017303 fetch 2 ,mem_nv_data_ptr 
-0x46fb 017304 copy pdata ,rega 
-:      017305 app_check_reconn_target_loop:
-0x46fc 017306 ifetch 2 ,rega 
-0x46fd 017307 beq 0 ,found_reconn_device 
-0x46fe 017308 increase nv_data_len ,rega 
-0x46ff 017309 loop app_check_reconn_target_loop 
-0x4700 017310 branch enable_blank 
-:      017312 found_reconn_device:
-0x4701 017313 ifetch 6 ,contr 
-0x4702 017314 store 6 ,mem_hci_plap 
-0x4703 017315 increase 10 ,contr 
-0x4704 017316 arg mem_link_key ,contw 
-0x4705 017317 call memcpy16 
-0x4706 017318 call check_link_key_load 
-0x4707 017319 branch disable_blank 
-:      017325 shutter_check_data_enable:
-0x4708 017326 call disable_user 
-0x4709 017327 fetch 2 ,mem_ui_state_map 
-0x470a 017328 bbit1 ui_state_bt_connected ,shutter_check_bt_data_enable 
-0x470b 017329 bbit1 ui_state_ble_connected ,shutter_check_ble_data_enable 
-0x470c 017330 rtn 
-:      017332 shutter_check_bt_data_enable:
-0x470d 017333 fetch 1 ,mem_hid_interrupt_state 
-0x470e 017334 rtnne 0x3f 
-0x470f 017335 branch enable_user 
-:      017337 shutter_check_ble_data_enable:
-0x4710 017338 fetch 1 ,mem_ble_shutter_enable_notify 
-0x4711 017339 rtn blank 
-0x4712 017340 branch enable_user 
-:      017345 shutter_check_bluetooth_conn:
-0x4713 017346 call disable_user 
-0x4714 017347 fetch 2 ,mem_ui_state_map 
-0x4715 017348 rtnbit1 ui_state_bt_connected 
-0x4716 017349 rtnbit1 ui_state_ble_connected 
-0x4717 017350 branch enable_user 
-:      017354 shutter_change_bluetooth_status_bt_disconn:
-0x4718 017355 fetch 1 ,mem_shutter_bluetooth_type 
-0x4719 017356 bbit1 classic_shutter ,classic_shutter_change_bluetooth_status_bt_disconn 
-0x471a 017357 bbit1 ble_shutter ,ble_shutter_change_bluetooth_status_bt_disconn 
-0x471b 017358 rtn 
-:      017360 classic_shutter_change_bluetooth_status_bt_disconn:
-0x471c 017361 fetch 1 ,mem_scan_mode 
-0x471d 017362 rtnne 0x03 
-0x471e 017363 branch shutter_start_reconnect 
-:      017365 ble_shutter_change_bluetooth_status_bt_disconn:
-0x471f 017366 branch shutter_start_reconnect 
-:      017369 shutter_check_send_data:
-0x4720 017370 disable user2 
-0x4721 017371 fetch 2 ,mem_shutter_sleep_timeout 
-0x4722 017372 store 2 ,mem_shutter_sleep_timer 
-0x4723 017374 call shutter_check_bluetooth_conn 
-0x4724 017375 branch shutter_change_bluetooth_status_bt_disconn ,user 
-0x4725 017377 call shutter_check_data_enable 
-0x4726 017378 nrtn user 
-0x4727 017379 enable user2 
-0x4728 017380 rtn 
-:      017384 shutter_key_change:
-0x4729 017385 call shutter_check_send_data 
-0x472a 017386 nrtn user2 
-0x472b 017387 deposit rega 
-0x472c 017388 branch shutter_key_release ,blank 
-:      017389 shutter_key_press:
-0x472d 017390 call app_led_on 
-0x472e 017391 arg mem_key0_press ,regc 
-0x472f 017392 branch push_queue_press_or_release 
-:      017394 shutter_key_release:
-0x4730 017395 call app_led_off 
-0x4731 017396 arg mem_key0_release ,regc 
-:      017398 push_queue_press_or_release:
-0x4732 017399 arg max_queue_num ,pdata 
-0x4733 017400 imul32 queue ,pdata 
-0x4734 017401 iadd regc ,regc 
-:      017404 push_buffer_in_queue:
-0x4735 017405 ifetch 1 ,regc 
-0x4736 017406 rtn blank 
-0x4737 017407 call queue_push_one_byte 
-0x4738 017408 increase 1 ,regc 
-0x4739 017409 branch push_buffer_in_queue 
-:      017412 shutter_send_data_to_master:
-0x473a 017413 fetch 2 ,mem_ui_state_map 
-0x473b 017414 bbit1 ui_state_ble_connected ,pop_queue_to_ble_data 
-0x473c 017415 bbit1 ui_state_bt_connected ,pop_queue_to_classic_data 
-0x473d 017416 rtn 
-:      017418 pop_queue_to_ble_data:
-0x473e 017419 call le_fifo_check_nearly_full 
-0x473f 017420 nrtn blank 
-0x4740 017421 call queue_pop_one_byte 
-0x4741 017422 nrtn user 
-0x4742 017423 pincrease -1 
-0x4743 017424 mul32 pdata ,shutter_ble_data_buffer ,pdata 
-0x4744 017425 arg mem_ble_data_buffer1 ,temp 
-0x4745 017426 iadd temp ,contr 
-:      017427 le_send_notify_from_list:
-0x4746 017428 ifetch 1 ,contr 
-0x4747 017429 copy pdata ,rega 
-0x4748 017430 ifetcht 2 ,contr 
-0x4749 017431 call store_contr 
-0x474a 017432 call le_att_malloc_tx_notify 
-0x474b 017433 copy rega ,loopcnt 
-0x474c 017434 call get_contr 
-0x474d 017435 branch memcpy 
-:      017438 pop_queue_to_classic_data:
-0x474e 017439 call l2cap_malloc_is_fifo_nearly_full 
-0x474f 017440 nrtn blank 
-0x4750 017441 call queue_pop_one_byte 
-0x4751 017442 nrtn user 
-0x4752 017443 pincrease -1 
-0x4753 017444 mul32 pdata ,shutter_classic_data_buffer ,pdata 
-0x4754 017445 arg mem_classic_data_buffer1 ,temp 
-0x4755 017446 iadd temp ,contr 
-0x4756 017447 ifetch 5 ,contr 
-0x4757 017448 store 5 ,mem_classic_data_buffer 
-:      017449 classic_send_hid_data:
-0x4758 017450 fetch 1 ,mem_classic_data_buffer 
-0x4759 017451 copy pdata ,rega 
-0x475a 017452 call hid_malloc_tx_buff 
-0x475b 017453 fetch 2 ,mem_hid_int_remote_cid 
-0x475c 017454 istore 2 ,contw 
-0x475d 017455 setarg 0xa1 
-0x475e 017456 istore 1 ,contw 
-0x475f 017457 fetch 4 ,mem_classic_data_buffer + 1 
-0x4760 017458 istore 9 ,contw 
-0x4761 017459 rtn 
-:      017463 queue_push_one_byte:
-0x4762 017464 store 1 ,mem_pdatatemp 
-0x4763 017465 arg mem_pdatatemp ,rega 
-0x4764 017466 branch queue_push 
-:      017468 queue_pop_one_byte:
-0x4765 017469 arg mem_pdatatemp ,rega 
-0x4766 017470 call queue_pop 
-0x4767 017471 nrtn user 
-0x4768 017472 fetch 1 ,mem_pdatatemp 
-0x4769 017473 rtn 
-:      017476 ble_shutter_receive_data:
-0x476a 017477 fetch 2 ,mem_le_att_handle 
-0x476b 017478 beq gatt_keyboard_write_handle ,ble_shutter_process_reconnect_complete 
-0x476c 017479 rtn 
-:      017481 shutter_init_param:
-0x476d 017482 setarg 0x02 
-0x476e 017483 store 1 ,mem_shutter_power_off_timeout 
-0x476f 017485 setarg 0x00200008 
-0x4770 017486 store 4 ,mem_ble_shutter_interval_min 
-0x4771 017487 setarg 0x012c0005 
-0x4772 017488 istore 4 ,contw 
-0x4773 017491 jam 0x17 ,mem_le_local_mtu 
-0x4774 017494 setarg 0x1b 
-0x4775 017495 store 2 ,mem_le_pairing_handle 
-0x4776 017496 call le_set_config_fixed_ltk 
-0x4777 017497 call le_set_fixed_ltk 
-0x4778 017498 call le_set_justwork 
-0x4779 017499 branch le_set_config_read_authentication 
-:      017502 shutter_load_buffer_config_form_datarom:
-0x477a 017504 arg ble_key_value_list_size ,loopcnt 
-0x477b 017505 arg mem_ble_data_buffer1 ,contw 
-0x477c 017506 arg ble_shutter_key_value_list ,contr 
-0x477d 017507 call memcpy_fast 
-0x477e 017508 arg bt_key_value_list_size ,loopcnt 
-0x477f 017509 arg mem_classic_data_buffer1 ,contw 
-0x4780 017510 arg classic_shutter_key_value_list ,contr 
-0x4781 017511 branch memcpy_fast 
-:      017514 shutter_load_ble_gatt_form_datarom:
-0x4782 017515 arg ble_gatt_list_size ,loopcnt 
-0x4783 017516 arg ble_shutter_gatt_list ,contr 
-0x4784 017517 branch memcpy_fast 
-:      017520 shutter_load_bt_sdp_form_datarom:
-0x4785 017521 arg bt_sdp_list_size ,loopcnt 
-0x4786 017522 arg classic_shutter_sdp_list ,contr 
-0x4787 017523 branch memcpy_fast 
-:      017527 shutter_init_bluetooth_config:
-0x4788 017528 call shutter_check_load_config_flag 
-0x4789 017529 nrtn user 
-0x478a 017530 fetch 1 ,mem_shutter_config_select_gpio1 
-0x478b 017531 call shutter_init_bluetooth_config_gpio_input 
-0x478c 017532 fetch 1 ,mem_shutter_config_select_gpio2 
-0x478d 017533 call shutter_init_bluetooth_config_gpio_input 
-0x478e 017534 fetch 1 ,mem_shutter_config_select_gpio3 
-0x478f 017535 branch shutter_init_bluetooth_config_gpio_input 
-:      017537 shutter_init_bluetooth_config_gpio_input:
-0x4790 017538 rtn blank 
-0x4791 017539 or pdata ,0x80 ,temp 
-0x4792 017540 branch gpio_config_input_nowake 
-:      017543 shutter_load_bluetooth_config:
-0x4793 017544 call shutter_check_load_config_flag 
-0x4794 017545 nrtn user 
-0x4795 017546 call shutter_load_bluetooth_config_label 
-0x4796 017547 branch shutter_load_bluetooth_config_by_otp 
-:      017549 shutter_load_bluetooth_config_label:
-0x4797 017550 arg 0 ,rega 
-0x4798 017551 fetch 1 ,mem_shutter_config_select_gpio1 
-0x4799 017552 call shutter_load_bluetooth_config_read_gpio_input 
-0x479a 017553 nsetflag blank ,0 ,rega 
-0x479b 017554 fetch 1 ,mem_shutter_config_select_gpio2 
-0x479c 017555 call shutter_load_bluetooth_config_read_gpio_input 
-0x479d 017556 nsetflag blank ,1 ,rega 
-0x479e 017557 fetch 1 ,mem_shutter_config_select_gpio3 
-0x479f 017558 call shutter_load_bluetooth_config_read_gpio_input 
-0x47a0 017559 nsetflag blank ,2 ,rega 
-0x47a1 017560 copy rega ,pdata 
-0x47a2 017561 store 1 ,mem_shutter_config_label 
-0x47a3 017562 fetch 1 ,mem_shutter_config_size 
-0x47a4 017563 imul32 rega ,pdata 
-0x47a5 017564 fetcht 2 ,mem_shutter_config_otp_base_address 
-0x47a6 017565 iadd temp ,pdata 
-0x47a7 017566 store 2 ,mem_shutter_config_otp_addr 
-0x47a8 017567 rtn 
-:      017569 shutter_load_bluetooth_config_read_gpio_input:
-0x47a9 017570 rtn blank 
-0x47aa 017571 or pdata ,0x80 ,temp 
-0x47ab 017572 call gpio_get_bit 
-0x47ac 017573 nbranch enable_blank ,true 
-0x47ad 017574 branch disable_blank 
-:      017577 shutter_check_load_config_flag:
-0x47ae 017578 call disable_user 
-0x47af 017579 fetch 1 ,mem_shutter_config_user_size 
-0x47b0 017580 nrtn blank 
-0x47b1 017581 fetch 1 ,mem_shutter_config_enable 
-0x47b2 017582 rtn blank 
-0x47b3 017583 branch enable_user 
-:      017586 shutter_load_bluetooth_config_by_otp:
-0x47b4 017587 call otp_enable_chgpump 
-0x47b5 017588 fetch 2 ,mem_shutter_config_otp_addr 
-0x47b6 017589 arg mem_shutter_config_data_temp ,rega 
-0x47b7 017590 fetcht 1 ,mem_shutter_config_size 
-0x47b8 017591 call otpd_read_data 
-0x47b9 017592 call otp_disable_chgpump 
-:      017593 shutter_load_bluetooth_config_store_name:
-0x47ba 017594 fetch 1 ,mem_shutter_config_data_temp 
-0x47bb 017595 copy pdata ,loopcnt 
-0x47bc 017596 store 1 ,mem_le_name_len 
-0x47bd 017597 call memcpy_fast 
-0x47be 017598 fetch 1 ,mem_shutter_config_data_temp 
-0x47bf 017599 copy pdata ,loopcnt 
-0x47c0 017600 store 1 ,mem_local_name_length 
-0x47c1 017601 call memcpy_fast 
-0x47c2 017602 ifetch 1 ,contr 
-0x47c3 017603 store 1 ,mem_shutter_key_num 
-0x47c4 017604 ifetch 1 ,contr 
-0x47c5 017605 store 1 ,mem_shutter_hard_soft_switch_case 
-0x47c6 017606 rtn 
-:      017609 shutter_load_bluetooth_config_by_eeprom:
-0x47c7 017610 fetch 1 ,mem_shutter_bluetooth_type 
-0x47c8 017611 rtnbit0 classic_shutter 
-0x47c9 017612 arg 3 ,temp 
-0x47ca 017613 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
-0x47cb 017614 copy pdata ,regb 
-0x47cc 017615 arg mem_shutter_config_eeprom_start_flag ,rega 
-0x47cd 017616 call iicd_read_eep_data 
-0x47ce 017617 fetcht 2 ,mem_shutter_config_eeprom_start_flag 
-0x47cf 017618 setarg shutter_eeprom_config_crc 
-0x47d0 017619 isub temp ,null 
-0x47d1 017620 nrtn zero 
-0x47d2 017621 fetch 1 ,mem_shutter_config_user_size 
-0x47d3 017622 rtn blank 
-0x47d4 017623 copy pdata ,temp 
-0x47d5 017624 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
-0x47d6 017625 add pdata ,3 ,regb 
-0x47d7 017626 arg mem_shutter_config_data_temp ,rega 
-0x47d8 017627 call iicd_read_eep_data 
-0x47d9 017628 branch shutter_store_config 
-:      017630 shutter_load_bluetooth_config_by_user_config:
-0x47da 017631 fetch 2 ,mem_shutter_config_user_otp_address 
-0x47db 017632 rtn blank 
-0x47dc 017633 call otp_enable_chgpump 
-0x47dd 017634 arg 1 ,temp 
-0x47de 017635 arg mem_shutter_config_user_size ,rega 
-0x47df 017636 call otpd_read_data 
-0x47e0 017638 fetch 1 ,mem_shutter_config_user_size 
-0x47e1 017639 rtn blank 
-0x47e2 017641 fetch 2 ,mem_shutter_config_user_otp_address 
-0x47e3 017642 pincrease 1 
-0x47e4 017643 arg mem_shutter_config_data_temp ,rega 
-0x47e5 017644 fetcht 1 ,mem_shutter_config_user_size 
-0x47e6 017645 call otpd_read_data 
-0x47e7 017646 call otp_disable_chgpump 
-:      017647 shutter_store_config:
-0x47e8 017648 call shutter_load_bluetooth_config_store_name 
-:      017649 shutter_load_bluetooth_config_custom:
-0x47e9 017650 ifetch 2 ,contr 
-0x47ea 017651 rtn blank 
-0x47eb 017652 copy pdata ,contw 
-0x47ec 017653 ifetcht 1 ,contr 
-0x47ed 017654 copy temp ,loopcnt 
-0x47ee 017655 call memcpy 
-0x47ef 017656 branch shutter_load_bluetooth_config_custom 
-:      017660 shutter_random_mac_addr:
-0x47f0 017661 fetch 1 ,mem_shutter_bluetooth_type 
-0x47f1 017662 rtnbit0 classic_shutter 
-0x47f2 017663 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
-0x47f3 017664 copy pdata ,regb 
-0x47f4 017665 arg 4 ,temp 
-0x47f5 017666 arg mem_shutter_random_mac_data_temp ,rega 
-0x47f6 017667 call iicd_read_eep_data 
-0x47f7 017668 fetch 1 ,mem_shutter_random_mac_data_temp 
-0x47f8 017669 bne 1 ,shutter_write_random_mac_addr_to_eeprom 
-:      017670 shutter_write_random_mac_addr_to_eeprom:
-0x47f9 017671 setarg 1 
-0x47fa 017672 store 1 ,mem_shutter_random_mac_data_temp 
-0x47fb 017673 force 3 ,loopcnt 
-0x47fc 017674 call generate_random_loop 
-0x47fd 017675 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
-0x47fe 017676 copy pdata ,regb 
-0x47ff 017677 arg 4 ,temp 
-0x4800 017678 arg mem_shutter_random_mac_data_temp ,rega 
-0x4801 017679 call iicd_write_eep_data 
-:      017680 shutter_write_random_mac_addr:
-0x4802 017681 fetch 3 ,mem_shutter_random_mac_data_temp + 1 
-0x4803 017682 store 3 ,mem_lap 
-0x4804 017683 store 3 ,mem_le_lap 
-0x4805 017684 rtn 
-:      017687 shutter_soft_swtich_power_on:
-0x4806 017688 branch shutter_start_reconnect 
-:      017691 shutter_soft_swtich_power_off:
-0x4807 017692 arg 0 ,rega 
-0x4808 017693 arg mem_shutter_power_off_led_style ,regc 
-0x4809 017694 call ui_led_set_style_global 
-0x480a 017695 call shutter_disconnect_current_connection 
-:      017696 shutter_wait_power_off:
-0x480b 017697 fetch 1 ,mem_shutter_power_off_timeout 
-0x480c 017698 store 1 ,mem_shutter_power_off_timer 
-0x480d 017699 rtn 
-:      017703 ui_soft_swtich_init:
-0x480e 017704 setarg ss_state_power_up 
-0x480f 017705 call ui_soft_swtich_init_power_on_time 
-0x4810 017706 jam ui_button_state_up ,mem_ui_button_last_state 
-0x4811 017707 call ui_button_init 
-0x4812 017708 call ui_button_polling 
-0x4813 017709 fetch 2 ,mem_ui_state_map 
-0x4814 017710 rtnbit1 ui_state_btn_down 
-0x4815 017711 branch app_enter_hibernate 
-:      017713 ui_soft_swtich_init_power_on_time:
-0x4816 017714 fetcht 2 ,mem_power_param_ptr 
-0x4817 017715 istore 1 ,temp 
-0x4818 017716 ifetch 1 ,contw 
-0x4819 017717 store 1 ,mem_ui_button_timeout 
-0x481a 017718 rtn 
-:      017721 ui_soft_switch_botton_up:
-0x481b 017722 fetch 2 ,mem_power_param_ptr 
-0x481c 017723 ifetch 1 ,pdata 
-0x481d 017724 rtnne ss_state_power_up 
-0x481e 017725 branch app_enter_hibernate 
-:      017728 ui_soft_switch_botton_long_press:
-0x481f 017729 fetcht 2 ,mem_power_param_ptr 
-0x4820 017730 ifetch 1 ,temp 
-0x4821 017731 beq ss_state_power_on ,ui_soft_switch_power_off 
-:      017732 ui_soft_switch_power_on:
-0x4822 017733 setarg ss_state_power_on 
-0x4823 017734 fetcht 2 ,mem_power_param_ptr 
-0x4824 017735 istore 1 ,temp 
-0x4825 017736 add temp ,ss_power_off_time ,contr 
-0x4826 017737 ifetch 1 ,contr 
-0x4827 017738 istore 1 ,mem_ui_button_timeout 
-0x4828 017739 ifetch 2 ,contr 
-0x4829 017740 branch callback_func 
-:      017742 ui_soft_switch_power_off:
-0x482a 017743 setarg ss_state_power_off 
-0x482b 017744 call ui_soft_swtich_init_power_on_time 
-0x482c 017745 add temp ,ss_power_off_cb ,contr 
-0x482d 017746 ifetch 2 ,contr 
-0x482e 017747 branch app_enter_hibernate ,blank 
-0x482f 017748 branch callback_func 
-:      017754 shutter_byteswap:
-0x4830 017755 store 6 ,mem_tmp_buffer 
-0x4831 017756 fetch 1 ,mem_tmp_buffer 
-0x4832 017757 store 1 ,mem_tmp_buffer + 11 
-0x4833 017758 ifetch 1 ,contr 
-0x4834 017759 store 1 ,mem_tmp_buffer + 10 
-0x4835 017760 ifetch 1 ,contr 
-0x4836 017761 store 1 ,mem_tmp_buffer + 9 
-0x4837 017762 ifetch 1 ,contr 
-0x4838 017763 store 1 ,mem_tmp_buffer + 8 
-0x4839 017764 ifetch 1 ,contr 
-0x483a 017765 store 1 ,mem_tmp_buffer + 7 
-0x483b 017766 ifetch 1 ,contr 
-0x483c 017767 store 1 ,mem_tmp_buffer + 6 
-0x483d 017768 fetch 6 ,mem_tmp_buffer + 6 
-0x483e 017769 rtn 
-:      017771 shutter_random_addr_by_otp:
-0x483f 017772 call load_adc_init 
-0x4840 017773 fetch 1 ,mem_1v_adc_io_data 
-0x4841 017774 store 1 ,mem_le_lap 
-0x4842 017775 fetch 1 ,mem_5v_adc_hvin_data 
-0x4843 017776 istore 1 ,contw 
-0x4844 017777 fetch 1 ,mem_3v_adc_vinlpm_data 
-0x4845 017778 istore 1 ,contw 
-0x4846 017779 fetch 3 ,mem_le_lap 
-0x4847 017780 store 3 ,mem_lap 
-0x4848 017781 rtn 
-:      017793 sim_iic_read_eep_data:
-0x4849 017794 fetch 2 ,mem_eeprom_base 
-0x484a 017795 iadd regb ,pdata 
-0x484b 017796 byteswap pdata ,pdata 
-0x484c 017797 store 2 ,mem_addr_mi 
-0x484d 017798 copy temp ,regb 
-0x484e 017800 call sim_iic_start 
-0x484f 017801 setarg 0xa0 
-0x4850 017802 call sim_iic_send_byte 
-0x4851 017803 fetch 1 ,mem_addr_mi 
-0x4852 017804 call sim_iic_send_byte 
-0x4853 017805 bmark1 mark_eeprom_size ,sim_iic_read_eep_data_2k 
-0x4854 017806 fetch 1 ,mem_addr_mi + 1 
-0x4855 017807 call sim_iic_send_byte 
-:      017808 sim_iic_read_eep_data_2k:
-0x4856 017809 call sim_iic_stop 
-0x4857 017811 call sim_iic_start 
-0x4858 017812 setarg 0xa1 
-0x4859 017813 call sim_iic_send_byte 
-:      017815 sim_iic_read_eep_data_loop:
-0x485a 017816 call sim_iic_read_byte 
-0x485b 017817 istore 1 ,rega 
-0x485c 017818 increase 1 ,rega 
-0x485d 017819 increase -1 ,regb 
-0x485e 017820 nbranch sim_iic_read_eep_data_loop ,zero 
-0x485f 017821 branch sim_iic_stop 
-:      017832 sim_iic_write_eep_data:
-0x4860 017833 byteswap regb ,pdata 
-0x4861 017834 store 2 ,mem_addr_mi 
-0x4862 017835 copy temp ,regb 
-0x4863 017837 call sim_iic_start 
-0x4864 017838 setarg 0xa0 
-0x4865 017839 call sim_iic_send_byte 
-0x4866 017841 fetch 1 ,mem_addr_mi 
-0x4867 017842 call sim_iic_send_byte 
-0x4868 017843 bmark1 mark_eeprom_size ,sim_iic_write_eep_data_loop 
-0x4869 017844 fetch 1 ,mem_addr_mi + 1 
-0x486a 017845 call sim_iic_send_byte 
-:      017846 sim_iic_write_eep_data_loop:
-0x486b 017847 ifetch 1 ,rega 
-0x486c 017848 call sim_iic_send_byte 
-0x486d 017849 increase 1 ,rega 
-0x486e 017850 increase -1 ,regb 
-0x486f 017851 nbranch sim_iic_write_eep_data_loop ,zero 
-0x4870 017852 branch sim_iic_stop 
-:      017856 sim_iic_wait_ack:
-0x4871 017857 arg 10 ,loopcnt 
-0x4872 017858 call sim_iic_release_sda 
-0x4873 017859 call sim_iic_scl_output_high 
-0x4874 017860 call sim_iic_delay 
-:      017861 sim_iic_wait_ack_loop:
-0x4875 017862 call sim_iic_read_sda_level 
-0x4876 017863 branch sim_iic_scl_output_low ,blank 
-0x4877 017864 loop sim_iic_wait_ack_loop 
-0x4878 017865 branch sim_iic_scl_output_low 
-:      017869 sim_iic_ack_slave:
-0x4879 017870 call sim_iic_scl_output_low 
-0x487a 017871 call sim_iic_sda_output_low 
-0x487b 017872 call sim_iic_delay 
-0x487c 017873 call sim_iic_scl_output_high 
-0x487d 017874 call sim_iic_delay 
-0x487e 017875 branch sim_iic_scl_output_low 
-:      017880 sim_iic_read_byte:
-0x487f 017881 arg 8 ,loopcnt 
-0x4880 017882 arg 0 ,regc 
-0x4881 017883 call sim_iic_release_sda 
-:      017884 sim_iic_read_byte_loop:
-0x4882 017885 call sim_iic_scl_output_high 
-0x4883 017886 call sim_iic_delay 
-0x4884 017887 lshift regc ,regc 
-0x4885 017888 call sim_iic_read_sda_level 
-0x4886 017889 iadd regc ,regc 
-0x4887 017890 call sim_iic_delay 
-0x4888 017891 call sim_iic_scl_output_low 
-0x4889 017892 loop sim_iic_read_byte_loop 
-0x488a 017893 call sim_iic_ack_slave 
-0x488b 017894 copy regc ,pdata 
-0x488c 017895 rtn 
-:      017899 sim_iic_send_byte:
-0x488d 017900 arg 8 ,loopcnt 
-0x488e 017901 copy pdata ,regc 
-0x488f 017902 call sim_iic_scl_output_low 
-:      017903 sim_iic_send_byte_loop:
-0x4890 017904 isolate1 7 ,regc 
-0x4891 017905 call sim_iic_sda_output_high ,true 
-0x4892 017906 ncall sim_iic_sda_output_low ,true 
-0x4893 017907 lshift regc ,regc 
-0x4894 017908 call sim_iic_delay 
-0x4895 017909 call sim_iic_scl_output_high 
-0x4896 017910 call sim_iic_delay 
-0x4897 017911 call sim_iic_scl_output_low 
-0x4898 017912 call sim_iic_delay 
-0x4899 017913 loop sim_iic_send_byte_loop 
-0x489a 017914 branch sim_iic_wait_ack 
-:      017918 sim_iic_start:
-0x489b 017919 call sim_iic_sda_output_high 
-0x489c 017920 call sim_iic_scl_output_high 
-0x489d 017921 call sim_iic_delay 
-0x489e 017922 call sim_iic_sda_output_low 
-0x489f 017923 call sim_iic_delay 
-0x48a0 017924 branch sim_iic_scl_output_low 
-:      017928 sim_iic_stop:
-0x48a1 017929 call sim_iic_sda_output_low 
-0x48a2 017930 call sim_iic_scl_output_high 
-0x48a3 017931 call sim_iic_delay 
-0x48a4 017932 call sim_iic_sda_output_high 
-0x48a5 017933 branch sim_iic_delay 
-:      017937 sim_iic_scl_output_high:
-0x48a6 017938 enable user 
-0x48a7 017939 fetch 1 ,sim_iic_scl_gpio_num 
-0x48a8 017940 branch sim_iic_config_gpio 
-:      017943 sim_iic_scl_output_low:
-0x48a9 017944 disable user 
-0x48aa 017945 fetch 1 ,sim_iic_scl_gpio_num 
-0x48ab 017946 branch sim_iic_config_gpio 
-:      017949 sim_iic_sda_output_high:
-0x48ac 017950 enable user 
-0x48ad 017951 fetch 1 ,sim_iic_sda_gpio_num 
-0x48ae 017952 branch sim_iic_config_gpio 
-:      017955 sim_iic_sda_output_low:
-0x48af 017956 disable user 
-0x48b0 017957 fetch 1 ,sim_iic_sda_gpio_num 
-0x48b1 017958 branch sim_iic_config_gpio 
-:      017963 sim_iic_config_gpio:
-0x48b2 017964 and pdata ,0x07 ,queue 
-0x48b3 017965 rshift3 pdata ,pdata 
-0x48b4 017966 arg core_gpio_oe0 ,temp 
-0x48b5 017967 iadd temp ,temp 
-0x48b6 017968 ifetch 1 ,temp 
-0x48b7 017969 qset1 pdata 
-0x48b8 017970 istore 1 ,temp 
-0x48b9 017971 increase 4 ,temp 
-0x48ba 017972 ifetch 1 ,temp 
-0x48bb 017973 qsetflag user ,pdata 
-0x48bc 017974 istore 1 ,temp 
-0x48bd 017975 rtn 
-:      017978 sim_iic_release_sda:
-0x48be 017979 fetch 1 ,sim_iic_sda_gpio_num 
-0x48bf 017980 and pdata ,0x07 ,queue 
-0x48c0 017981 rshift3 pdata ,pdata 
-0x48c1 017982 arg core_gpio_oe0 ,temp 
-0x48c2 017983 iadd temp ,temp 
-0x48c3 017984 ifetch 1 ,temp 
-0x48c4 017985 qset0 pdata 
-0x48c5 017986 istore 1 ,temp 
-0x48c6 017987 rtn 
-:      017992 sim_iic_read_sda_level:
-0x48c7 017993 nop 4 
-0x48c8 017994 fetch 1 ,sim_iic_sda_gpio_num 
-0x48c9 017995 and pdata ,0x07 ,queue 
-0x48ca 017996 rshift3 pdata ,pdata 
-0x48cb 017997 arg core_gpio_in ,temp 
-0x48cc 017998 iadd temp ,temp 
-0x48cd 017999 setarg 0 
-0x48ce 018000 ifetcht 1 ,temp 
-0x48cf 018001 qisolate1 temp 
-0x48d0 018002 setflag true ,0 ,pdata 
-0x48d1 018003 rtn 
-:      018006 sim_iic_delay:
-0x48d2 018008 rtn 
-:      018014 usb_isr:
-0x48d3 018015 bpatch patch1e_6 ,mem_patch1e 
-0x48d4 018016 hfetch 1 ,core_usb_status 
-0x48d5 018017 isolate1 7 ,pdata 
-0x48d6 018018 call usb_init ,true 
-0x48d7 018019 call usb_nak_state_judge 
-0x48d8 018020 hfetch 1 ,core_usb_status 
-0x48d9 018021 store 1 ,mem_usb_status 
-0x48da 018022 hfetch 1 ,core_usb_fifo_empty 
-0x48db 018023 store 1 ,mem_usb_fifo_empty 
-0x48dc 018024 hstore 1 ,core_usb_fifo_empty 
-0x48dd 018025 pinvert 
-0x48de 018026 fetcht 1 ,mem_usb_tx_wait 
-0x48df 018027 iand temp ,pdata 
-0x48e0 018028 store 1 ,mem_usb_tx_wait 
-0x48e1 018029 jam 0xe0 ,core_usb_status 
-0x48e2 018030 fetch 1 ,mem_usb_fifo_empty 
-0x48e3 018031 compare 0x1 ,pdata ,0x1 
-0x48e4 018032 call usb0_fifo_empty ,true 
-0x48e5 018033 fetch 1 ,mem_usb_status 
-0x48e6 018034 compare 0x1 ,pdata ,0x1 
-0x48e7 018035 call usb_status1 ,true 
-0x48e8 018036 call usb_tx 
-0x48e9 018037 branch usb_nak_state 
-:      018039 usb_init:
-0x48ea 018040 bpatch patch1e_7 ,mem_patch1e 
-0x48eb 018041 call usb_init_param 
-0x48ec 018042 jam 0x00 ,core_usb_config 
-0x48ed 018043 nop 10000 
-0x48ee 018044 jam 0xc0 ,core_usb_trig 
-0x48ef 018045 hfetch 2 ,core_clkoff 
-0x48f0 018046 set0 clock_off_usb ,pdata 
-0x48f1 018047 hstore 2 ,core_clkoff 
-0x48f2 018048 jam 0x3c ,core_usb_config 
-0x48f3 018049 jam 0xff ,core_usb_status 
-0x48f4 018050 jam 0xff ,core_usb_fifo_empty 
-0x48f5 018051 jam 0 ,core_usb_addr 
-0x48f6 018052 jam dev_default ,mem_usb0_state 
-0x48f7 018053 setarg mem_usb_clear_mem_end 
-0x48f8 018054 arg mem_usb_clear_mem_start ,contw 
-0x48f9 018055 isub contw ,loopcnt 
-0x48fa 018056 branch clear_mem 
-:      018058 usb_offline_check_init:
-0x48fb 018059 fetcht 1 ,mem_usb_offline_check_gpio 
-0x48fc 018060 branch gpio_config_input 
-:      018061 usb_offline_state:
-0x48fd 018062 fetch 1 ,mem_usb_device_enumeration_endflag 
-0x48fe 018063 rtn blank 
-0x48ff 018064 fetcht 1 ,mem_usb_offline_check_gpio 
-0x4900 018065 call gpio_get_bit 
-0x4901 018066 branch usb_init ,true 
-0x4902 018067 rtn 
-:      018070 usb_nak_state:
-0x4903 018071 arg timer_nak ,queue 
-0x4904 018072 call timer_check 
-0x4905 018073 nrtn blank 
-0x4906 018074 fetch 1 ,mem_usb_wakestate_onetime_flag 
-0x4907 018075 nrtn blank 
-0x4908 018076 fetch 1 ,mem_usb_device_enumeration_endflag 
-0x4909 018077 ncall usb_mac_wakeup_judge ,blank 
-0x490a 018078 rtn 
-:      018080 usb_mem_devicedesc_init:
-0x490b 018081 arg mem_devicedesc ,contw 
-0x490c 018082 setsect 0 ,0x11212 
-0x490d 018083 setsect 1 ,0x8000 
-0x490e 018084 setsect 2 ,0x0 
-0x490f 018085 setsect 3 ,0x10000 
-0x4910 018086 istore 9 ,contw 
-0x4911 018087 setsect 0 ,0x22412 
-0x4912 018088 setsect 1 ,0x8604 
-0x4913 018089 setsect 2 ,0x1000 
-0x4914 018090 setsect 3 ,0x8 
-0x4915 018091 istore 9 ,contw 
-0x4916 018092 setsect 0 ,0x1 
-0x4917 018093 istore 1 ,contw 
-0x4918 018094 rtn 
-:      018096 usb_init_param:
-0x4919 018097 jam 2 ,mem_usb0_state 
-0x491a 018098 setarg 0x0 
-0x491b 018099 store 1 ,mem_remain 
-0x491c 018100 store 2 ,mem_usb_zero_packet 
-0x491d 018101 pincrease 1 
-0x491e 018102 store 2 ,mem_usb_ones_packet 
-0x491f 018103 pincrease 1 
-0x4920 018104 store 2 ,mem_usb_two_packet 
-0x4921 018105 setarg hid_kbdata_addr 
-0x4922 018106 store 2 ,mem_hidreportdesc_kb 
-0x4923 018107 setarg hid_msdata_addr 
-0x4924 018108 store 2 ,mem_hidreportdesc_m 
-0x4925 018109 arg mem_confdesc ,contw 
-0x4926 018110 arg hid_confdata_addr ,contr 
-0x4927 018111 call memcpy64 
-0x4928 018112 fetch 1 ,mem_usb_tx_interval 
-0x4929 018113 ncall usb_tx_interval_config ,blank 
-0x492a 018114 branch usb_mem_devicedesc_init 
-:      018116 usb_tx_interval_config:
-0x492b 018117 store 1 ,mem_confdesc + 34 
-0x492c 018118 store 1 ,mem_confdesc + 59 
-0x492d 018119 rtn 
-:      018120 usb_nak_state_judge:
-0x492e 018121 hfetch 1 ,core_usb_status 
-0x492f 018122 bbit1 usb_status_nak ,usb_nak_state_timer_init 
-0x4930 018123 rtn 
-:      018125 usb_nak_state_timer_init:
-0x4931 018126 call usb0_attached_state_judge 
-0x4932 018127 call timer_reinit 
-0x4933 018128 setarg timer_nak_delay 
-0x4934 018129 arg timer_nak ,queue 
-0x4935 018130 branch timer_init 
-:      018132 usb0_attached_state_judge:
-0x4936 018133 fetch 1 ,mem_usb_state 
-0x4937 018134 bne usb_connected ,usb_clear_halt_dispose 
-0x4938 018135 jam 0 ,mem_usb_wakestate_onetime_flag 
-0x4939 018136 jam 0 ,mem_usb_mac_wakeup_trig 
-0x493a 018137 rtn 
-:      018138 usb_clear_halt_dispose:
-0x493b 018139 fetch 1 ,mem_usb_clear_halt 
-0x493c 018140 rtn blank 
-0x493d 018141 jam 0 ,mem_usb_clear_halt 
-0x493e 018142 jam usb_connected ,mem_usb_state 
-0x493f 018143 jam 1 ,mem_usb_device_enumeration_endflag 
-0x4940 018144 rtn 
-:      018146 usb0_fifo_empty:
-0x4941 018147 jam 0x1 ,core_usb_fifo_empty 
-0x4942 018148 branch usb0_tx 
-:      018150 usb_rx_no_data:
-0x4943 018151 fetch 1 ,mem_usb_status 
-0x4944 018152 bbit1 usb_status_setup ,usb_class_type 
-0x4945 018153 rtn 
-:      018155 usb_rx_read:
-0x4946 018156 hfetch 1 ,core_usb_ep 
-0x4947 018157 istore 1 ,contw 
-0x4948 018158 loop usb_rx_read 
-0x4949 018159 rtn 
-:      018161 usb_status1:
-0x494a 018162 bpatch patch1f_0 ,mem_patch1f 
-0x494b 018163 jam 0x11 ,core_usb_status 
-0x494c 018164 hfetch 1 ,core_usb_ep_len 
-0x494d 018165 store 1 ,mem_usb_read_len 
-0x494e 018166 copy pdata ,loopcnt 
-0x494f 018167 branch usb_rx_no_data ,blank 
-0x4950 018168 arg mem_usb_setup ,contw 
-0x4951 018169 call usb_rx_read 
-0x4952 018170 fetch 1 ,mem_usb_read_len 
-0x4953 018171 sub pdata ,7 ,null 
-0x4954 018172 rtn positive 
-:      018173 usb_class_type:
-0x4955 018174 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4956 018175 and_into 0x80 ,pdata 
-0x4957 018176 beq in_device ,usb_in_device 
-0x4958 018177 beq out_device ,usb_out_device 
-0x4959 018178 branch assert 
-:      018180 usb_in_device:
-0x495a 018181 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x495b 018182 rshift4 pdata ,pdata 
-0x495c 018183 rshift pdata ,pdata 
-0x495d 018184 and_into 0x03 ,pdata 
-0x495e 018185 beq standard_req ,usb_in_standard_req 
-0x495f 018186 beq class_req ,usb_in_class_req 
-0x4960 018187 beq manufacturer_req ,usb_in_manufacturer_req 
-0x4961 018188 branch assert 
-:      018190 usb_out_device:
-0x4962 018191 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4963 018192 rshift4 pdata ,pdata 
-0x4964 018193 rshift pdata ,pdata 
-0x4965 018194 and_into 0x03 ,pdata 
-0x4966 018195 beq standard_req ,usb_out_standard_req 
-0x4967 018196 beq class_req ,usb_out_class_req 
-0x4968 018197 beq manufacturer_req ,usb_out_manufacturer_req 
-0x4969 018198 branch assert 
-:      018200 usb_in_standard_req:
-0x496a 018201 fetch 1 ,mem_usb_setup_brequest 
-0x496b 018202 beq get_configuration ,usb0_request_get_configuration 
-0x496c 018203 beq get_descriptor ,usb0_request_get_descriptor 
-0x496d 018204 beq get_interface ,usb0_request_get_interface 
-0x496e 018205 beq get_status ,usb0_request_get_status 
-0x496f 018206 branch usb0_force_stall 
-:      018208 usb_in_class_req:
-0x4970 018209 fetch 1 ,mem_usb_setup_brequest 
-0x4971 018210 beq get_idle ,usb_get_idle 
-0x4972 018211 beq get_report ,usb_get_report 
-0x4973 018212 beq get_protocol ,usb_get_protocol_req 
-0x4974 018213 branch usb0_force_stall 
-:      018215 usb_in_manufacturer_req:
-0x4975 018216 branch usb0_force_stall 
-:      018218 usb_out_standard_req:
-0x4976 018219 fetch 1 ,mem_usb_setup_brequest 
-0x4977 018220 beq clear_feature ,usb0_request_clear_feature 
-0x4978 018221 beq set_feature ,usb0_request_set_feature 
-0x4979 018222 beq set_address ,usb0_request_set_address 
-0x497a 018223 beq set_configuration ,usb0_request_set_configuration 
-0x497b 018224 beq set_interface ,usb0_request_set_interface 
-0x497c 018225 beq set_descriptor ,usb0_force_stall 
-0x497d 018226 branch usb0_force_stall 
-:      018228 usb_out_class_req:
-0x497e 018229 fetch 1 ,mem_usb_setup_brequest 
-0x497f 018230 beq set_idle ,usb_set_idle 
-0x4980 018231 beq set_report ,usb_set_report 
-0x4981 018232 beq set_protocol ,usb_set_protocol_req 
-0x4982 018233 branch usb0_force_stall 
-:      018235 usb_out_manufacturer_req:
-0x4983 018236 branch usb0_force_stall 
-:      018238 usb0_force_stall:
-0x4984 018239 hfetch 1 ,core_usb_stall 
-0x4985 018240 set1 0 ,pdata 
-0x4986 018241 hstore 1 ,core_usb_stall 
-0x4987 018242 branch usb0_reply_zerolen 
-:      018244 usb0_reply_zerolen:
-0x4988 018245 jam 0x40 ,core_usb_clear 
-0x4989 018246 rtn 
-:      018248 usb0_request_get_configuration:
-0x498a 018249 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x498b 018250 bne in_device ,usb0_force_stall 
-0x498c 018251 fetch 1 ,mem_usb_setup_windex 
-0x498d 018252 bne 0 ,usb0_force_stall 
-0x498e 018253 fetch 1 ,mem_usb_setup_windex + 1 
-0x498f 018254 bne 0 ,usb0_force_stall 
-0x4990 018255 fetch 1 ,mem_usb_setup_blength 
-0x4991 018256 bne 1 ,usb0_force_stall 
-0x4992 018257 fetch 1 ,mem_usb_setup_blengthh 
-0x4993 018258 bne 0 ,usb0_force_stall 
-0x4994 018259 fetch 1 ,mem_usb_setup_bvalue 
-0x4995 018260 bne 0 ,usb0_force_stall 
-0x4996 018261 fetch 1 ,mem_usb_setup_bvalue + 1 
-0x4997 018262 bne 0 ,usb0_force_stall 
-0x4998 018263 fetch 1 ,mem_usb0_state 
-0x4999 018264 beq dev_configured ,usb0_request_get_cfg_dev_cfg 
-0x499a 018265 beq dev_address ,usb0_request_get_cfg_dev_addr 
-0x499b 018266 branch usb0_force_stall 
-:      018268 usb0_request_get_cfg_dev_cfg:
-0x499c 018269 arg 1 ,regb 
-0x499d 018270 branch usb_send_ones_packet 
-:      018272 usb0_request_get_cfg_dev_addr:
-0x499e 018273 arg 1 ,regb 
-0x499f 018274 branch usb_send_zero_packet 
-:      018276 usb0_request_get_descriptor:
-0x49a0 018277 bpatch patch1f_1 ,mem_patch1f 
-0x49a1 018278 set0 mark_isstr ,mark 
-0x49a2 018279 fetch 1 ,mem_usb_setup_bvalueh 
-0x49a3 018280 beq dsc_device ,dsc_device_info 
-0x49a4 018281 beq dsc_config ,dsc_config_info 
-0x49a5 018282 beq dsc_string ,dsc_string_info 
-0x49a6 018283 beq dsc_hid ,dsc_hid_info 
-0x49a7 018284 beq dsc_hid_report ,dsc_hid_report_info 
-0x49a8 018285 branch usb0_force_stall 
-:      018287 dsc_hid_info:
-0x49a9 018288 jam 0 ,mem_usb_get_protocol_flag 
-0x49aa 018289 fetch 1 ,mem_usb_setup_windex 
-0x49ab 018290 beq 0 ,dsc_hid_info_interface0 
-0x49ac 018291 beq 1 ,dsc_hid_info_interface1 
-0x49ad 018292 branch usb0_force_stall 
-:      018294 dsc_hid_info_interface0:
-0x49ae 018295 arg mem_confdesc + 19 ,rega 
-0x49af 018296 ifetch 1 ,rega 
-0x49b0 018297 iforce regb 
-0x49b1 018298 branch usb0_respond 
-:      018300 dsc_hid_info_interface1:
-0x49b2 018301 arg mem_confdesc + 44 ,rega 
-0x49b3 018302 ifetch 1 ,rega 
-0x49b4 018303 iforce regb 
-0x49b5 018304 branch usb0_respond 
-:      018306 dsc_device_info:
-0x49b6 018310 fetch 1 ,mem_usb_set_high_addr_flag 
-0x49b7 018311 ncall usb_set_high_addr ,blank 
-0x49b8 018312 setarg mem_devicedesc 
-0x49b9 018313 fetcht 1 ,mem_devicedesc 
-:      018314 dsc_info_set_data_len:
-0x49ba 018315 store 2 ,mem_dsc_info_data_pointer 
-0x49bb 018316 storet 1 ,mem_dsc_info_len 
-0x49bc 018317 fetch 1 ,mem_usb_setup_blength 
-0x49bd 018318 isub temp ,null 
-0x49be 018319 nbranch dsc_info_set_current_data_len ,positive 
-:      018320 dsc_info_set_initial_data_len:
-0x49bf 018321 fetch 1 ,mem_dsc_info_len 
-:      018322 dsc_info_set_data_size_completed:
-0x49c0 018323 iforce regb 
-0x49c1 018324 fetch 2 ,mem_dsc_info_data_pointer 
-0x49c2 018325 add pdata ,1 ,pdata 
-0x49c3 018326 iforce rega 
-0x49c4 018327 branch usb0_respond 
-:      018328 dsc_info_set_current_data_len:
-0x49c5 018329 fetch 1 ,mem_usb_setup_blength 
-0x49c6 018330 branch dsc_info_set_data_size_completed 
-:      018332 usb_set_high_addr:
-0x49c7 018333 hfetch 1 ,core_usb_addr 
-0x49c8 018334 ncall usb0_set_addr ,blank 
-0x49c9 018335 jam 0 ,mem_usb_set_high_addr_flag 
-0x49ca 018336 rtn 
-:      018337 usb0_set_addr:
-0x49cb 018338 hfetch 1 ,core_usb_addr 
-0x49cc 018339 set1 7 ,pdata 
-0x49cd 018340 hstore 1 ,core_usb_addr 
-0x49ce 018341 rtn 
-:      018343 dsc_config_info:
-0x49cf 018344 setarg mem_confdesc 
-0x49d0 018345 fetcht 1 ,mem_confdesc 
-0x49d1 018346 branch dsc_info_set_data_len 
-:      018348 dsc_string_info:
-0x49d2 018349 fetch 1 ,mem_usb_setup_bvalue 
-0x49d3 018350 sub pdata ,3 ,null 
-0x49d4 018351 nbranch usb0_force_stall ,positive 
-0x49d5 018352 fetch 1 ,mem_usb_setup_bvalue 
-0x49d6 018353 arg mem_string0 ,rega 
-0x49d7 018354 beq 0 ,usb0_respond_length 
-0x49d8 018355 set1 mark_isstr ,mark 
-0x49d9 018356 arg mem_string1 ,rega 
-0x49da 018357 beq 1 ,usb0_respond_length 
-0x49db 018358 arg mem_string2 ,rega 
-0x49dc 018359 beq 2 ,usb0_respond_length 
-0x49dd 018360 arg mem_string3 ,rega 
-0x49de 018361 beq 3 ,usb0_respond_length 
-0x49df 018362 rtn 
-:      018364 dsc_hid_report_info:
-0x49e0 018365 fetch 2 ,mem_usb_setup_windex 
-0x49e1 018366 beq 1 ,dsc_hid_report_info0 
-0x49e2 018367 fetch 2 ,mem_hidreportdesc_kb 
-0x49e3 018368 copy pdata ,rega 
-0x49e4 018370 branch usb0_respond_length 
-:      018371 dsc_hid_report_info0:
-0x49e5 018372 jam 1 ,mem_usb_device_enumeration_endflag 
-0x49e6 018373 jam usb_got_report_req ,mem_usb_state 
-0x49e7 018374 fetch 2 ,mem_hidreportdesc_m 
-0x49e8 018375 copy pdata ,rega 
-0x49e9 018377 branch usb0_respond_length 
-:      018380 usb0_request_get_interface:
-0x49ea 018381 fetch 1 ,mem_usb0_state 
-0x49eb 018382 bne dev_configured ,usb0_force_stall 
-0x49ec 018383 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x49ed 018384 bne in_interface ,usb0_force_stall 
-0x49ee 018385 fetch 1 ,mem_usb_setup_bvalue 
-0x49ef 018386 bne 0 ,usb0_force_stall 
-0x49f0 018387 fetch 1 ,mem_usb_setup_bvalueh 
-0x49f1 018388 bne 0 ,usb0_force_stall 
-0x49f2 018389 fetch 1 ,mem_usb_setup_blength 
-0x49f3 018390 bne 1 ,usb0_force_stall 
-0x49f4 018391 fetch 1 ,mem_usb_setup_blengthh 
-0x49f5 018392 bne 0 ,usb0_force_stall 
-0x49f6 018393 fetch 1 ,mem_usb_setup_windex 
-0x49f7 018394 bne 0 ,usb0_force_stall 
-0x49f8 018395 fetch 1 ,mem_usb_setup_windex + 1 
-0x49f9 018396 bne 0 ,usb0_force_stall 
-0x49fa 018397 arg 1 ,regb 
-0x49fb 018398 branch usb_send_zero_packet 
-:      018401 usb0_request_get_status:
-0x49fc 018402 fetch 1 ,mem_usb0_state 
-0x49fd 018403 beq dev_default ,usb0_force_stall 
-0x49fe 018404 fetch 1 ,mem_usb_setup_bvalue 
-0x49ff 018405 bne 0 ,usb0_force_stall 
-0x4a00 018406 fetch 1 ,mem_usb_setup_bvalueh 
-0x4a01 018407 bne 0 ,usb0_force_stall 
-0x4a02 018408 fetch 1 ,mem_usb_setup_blength 
-0x4a03 018409 bne 2 ,usb0_force_stall 
-0x4a04 018410 fetch 1 ,mem_usb_setup_blengthh 
-0x4a05 018411 bne 0 ,usb0_force_stall 
-0x4a06 018412 fetch 1 ,mem_usb_setup_windex + 1 
-0x4a07 018413 bne 0 ,usb0_force_stall 
-0x4a08 018414 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4a09 018415 beq in_device ,usb0_get_status_in_device 
-0x4a0a 018416 beq in_interface ,usb0_get_status_in_interface 
-0x4a0b 018417 beq in_endpoint ,usb0_get_status_in_endpoint 
-0x4a0c 018418 branch usb0_force_stall 
-:      018420 usb0_get_status_in_device:
-0x4a0d 018421 fetch 1 ,mem_usb_setup_windex 
-0x4a0e 018422 bne 0 ,usb0_force_stall 
-0x4a0f 018423 arg 2 ,regb 
-0x4a10 018424 fetch 1 ,mem_usb_remote_wakeup 
-0x4a11 018425 beq 0x01 ,usb_send_two_packet 
-:      018427 usb_send_zero_packet:
-0x4a12 018428 arg mem_usb_zero_packet ,rega 
-0x4a13 018429 branch usb0_respond 
-:      018430 usb_send_ones_packet:
-0x4a14 018431 arg mem_usb_ones_packet ,rega 
-0x4a15 018432 branch usb0_respond 
-:      018433 usb_send_two_packet:
-0x4a16 018434 arg mem_usb_two_packet ,rega 
-0x4a17 018435 branch usb0_respond 
-:      018437 usb0_get_status_in_interface:
-0x4a18 018438 fetch 1 ,mem_usb0_state 
-0x4a19 018439 bne dev_configured ,usb0_force_stall 
-0x4a1a 018440 arg 2 ,regb 
-0x4a1b 018441 branch usb_send_zero_packet 
-:      018443 usb0_get_status_in_endpoint:
-0x4a1c 018444 fetch 1 ,mem_usb0_state 
-0x4a1d 018445 bne dev_configured ,usb0_force_stall 
-0x4a1e 018446 fetch 1 ,mem_usb_setup_windex 
-0x4a1f 018447 beq in_ep1 ,usb0_get_status_in_ep_in_ep1 
-0x4a20 018448 beq in_ep2 ,usb0_get_status_in_ep_in_ep2 
-0x4a21 018449 beq in_ep3 ,usb0_get_status_in_ep_in_ep3 
-0x4a22 018450 and_into 0x7f ,pdata 
-0x4a23 018451 beq 0x00 ,usb0_get_status_in_ep_in_ep0 
-0x4a24 018452 branch usb0_force_stall 
-:      018454 usb0_get_status_in_ep_in_ep0:
-0x4a25 018455 fetch 1 ,mem_usb_ep0_stall_status 
-:      018456 usb0_get_status_in_ep_in_ack:
-0x4a26 018457 arg 2 ,regb 
-0x4a27 018458 beq 1 ,usb_send_ones_packet 
-0x4a28 018459 branch usb_send_zero_packet 
-:      018460 usb0_get_status_in_ep_in_ep1:
-0x4a29 018461 fetch 1 ,mem_usb_ep1_stall_status 
-0x4a2a 018462 branch usb0_get_status_in_ep_in_ack 
-:      018463 usb0_get_status_in_ep_in_ep2:
-0x4a2b 018464 fetch 1 ,mem_usb_ep2_stall_status 
-0x4a2c 018465 branch usb0_get_status_in_ep_in_ack 
-:      018466 usb0_get_status_in_ep_in_ep3:
-0x4a2d 018467 fetch 1 ,mem_usb_ep3_stall_status 
-0x4a2e 018468 branch usb0_get_status_in_ep_in_ack 
-:      018470 usb_get_idle:
-0x4a2f 018471 jam 1 ,mem_usb_idle_flag 
-0x4a30 018472 arg mem_usb_idle_rate ,rega 
-0x4a31 018473 arg 1 ,regb 
-0x4a32 018474 branch usb0_respond 
-:      018476 usb_get_report:
-0x4a33 018477 fetch 2 ,mem_usb_setup_bvalue 
-0x4a34 018478 arg pc_get_report ,temp 
-0x4a35 018479 isub temp ,null 
-0x4a36 018480 nbranch usb0_force_stall ,zero 
-0x4a37 018481 set0 mark_isstr ,mark 
-:      018482 usb_get_report_dispose:
-0x4a38 018483 fetch 1 ,mem_usb0_data_ready_report 
-0x4a39 018484 nbranch usb_get_report_data_success ,blank 
-0x4a3a 018485 jam pc_get_nondata ,mem_usb0_get_report_data 
-:      018486 usb_get_report_send_data:
-0x4a3b 018487 fetch 1 ,mem_usb_setup_blength 
-0x4a3c 018488 iforce regb 
-0x4a3d 018489 arg mem_usb0_get_report_data ,rega 
-0x4a3e 018490 call usb0_respond 
-:      018491 usb_get_report_data_release:
-0x4a3f 018492 arg mem_usb0_get_report_data ,contw 
-0x4a40 018493 arg 8 ,loopcnt 
-0x4a41 018494 branch memset0 
-:      018495 usb_get_report_data_success:
-0x4a42 018496 jam 0 ,mem_usb0_data_ready_report 
-0x4a43 018497 jam pc_get_data ,mem_usb0_get_report_data 
-0x4a44 018498 branch usb_get_report_send_data 
-:      018500 usb_get_protocol_req:
-0x4a45 018501 fetch 1 ,mem_usb_setup_blength 
-0x4a46 018502 bne 1 ,usb0_force_stall 
-0x4a47 018503 jam 1 ,mem_usb_get_protocol_flag 
-0x4a48 018504 arg 1 ,regb 
-0x4a49 018505 fetch 1 ,mem_usb_set_protocol_value 
-0x4a4a 018506 beq 0 ,usb_get_report_protocol 
-0x4a4b 018507 beq 1 ,usb_get_boot_protocol 
-0x4a4c 018508 branch usb_send_zero_packet 
-:      018509 usb_get_report_protocol:
-0x4a4d 018510 branch usb_send_ones_packet 
-:      018511 usb_get_boot_protocol:
-0x4a4e 018512 branch usb_send_zero_packet 
-:      018517 usb0_request_clear_feature:
-0x4a4f 018518 fetch 1 ,mem_usb0_state 
-0x4a50 018519 bne dev_configured ,usb0_force_stall 
-0x4a51 018520 fetch 1 ,mem_usb_setup_blength 
-0x4a52 018521 bne 0 ,usb0_force_stall 
-0x4a53 018522 fetch 1 ,mem_usb_setup_blengthh 
-0x4a54 018523 bne 0 ,usb0_force_stall 
-0x4a55 018524 fetch 1 ,mem_usb_setup_bvalueh 
-0x4a56 018525 bne 0 ,usb0_force_stall 
-0x4a57 018526 fetch 1 ,mem_usb_setup_windex + 1 
-0x4a58 018527 bne 0 ,usb0_force_stall 
-0x4a59 018528 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4a5a 018529 beq out_device ,usb0_request_clear_feature_out_device 
-0x4a5b 018530 beq out_interface ,usb0_request_clear_feature_out_interface 
-0x4a5c 018531 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
-0x4a5d 018532 branch usb0_force_stall 
-:      018534 usb0_request_clear_feature_out_device:
-0x4a5e 018535 fetch 1 ,mem_usb_setup_bvalue 
-0x4a5f 018536 bne device_remote_wakeup ,usb0_force_stall 
-0x4a60 018537 hfetch 1 ,core_usb_config 
-0x4a61 018538 set0 7 ,pdata 
-0x4a62 018539 hstore 1 ,core_usb_config 
-0x4a63 018540 jam 0 ,mem_usb_remote_wakeup 
-0x4a64 018541 jam 1 ,mem_usb_clear_remote_wakeup 
-0x4a65 018542 branch usb0_reply_zerolen 
-:      018544 usb0_request_clear_feature_out_interface:
-0x4a66 018545 branch usb0_force_stall 
-:      018547 usb0_request_clear_feature_out_endpoint:
-0x4a67 018548 fetch 1 ,mem_usb_setup_bvalue 
-0x4a68 018549 bne endpoint_halt ,usb0_force_stall 
-0x4a69 018550 fetch 1 ,mem_usb_setup_windex 
-0x4a6a 018551 beq in_ep1 ,usb0_force_stall_ep1_in_off 
-0x4a6b 018552 beq in_ep2 ,usb0_force_stall_ep2_in_off 
-0x4a6c 018553 beq in_ep3 ,usb0_force_stall_ep3_in_off 
-0x4a6d 018554 and_into 0x7f ,pdata 
-0x4a6e 018555 beq 0x00 ,usb0_force_stall_ep0_in_off 
-0x4a6f 018556 branch usb0_force_stall 
-:      018558 usb0_force_stall_ep0_in_off:
-0x4a70 018559 jam 0 ,mem_usb_ep0_stall_status 
-0x4a71 018560 branch usb0_reply_zerolen 
-:      018561 usb0_force_stall_ep1_in_off:
-0x4a72 018562 jam 0 ,mem_usb_ep1_stall_status 
-:      018563 usb0_force_stall_ep1_in_off_reply:
-0x4a73 018564 jam 1 ,mem_usb_clear_halt 
-0x4a74 018565 branch usb0_reply_zerolen 
-:      018566 usb0_force_stall_ep2_in_off:
-0x4a75 018567 jam 0 ,mem_usb_ep2_stall_status 
-0x4a76 018568 branch usb0_force_stall_ep1_in_off_reply 
-:      018569 usb0_force_stall_ep3_in_off:
-0x4a77 018570 jam 0 ,mem_usb_ep3_stall_status 
-0x4a78 018571 branch usb0_force_stall_ep1_in_off_reply 
-:      018574 usb0_request_set_feature:
-0x4a79 018575 fetch 1 ,mem_usb_setup_blength 
-0x4a7a 018576 bne 0 ,usb0_force_stall 
-0x4a7b 018577 fetch 1 ,mem_usb_setup_blengthh 
-0x4a7c 018578 bne 0 ,usb0_force_stall 
-0x4a7d 018579 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4a7e 018580 beq out_device ,usb0_request_set_feature_out_device 
-0x4a7f 018581 beq out_interface ,usb0_request_set_feature_out_interface 
-0x4a80 018582 beq out_endpoint ,usb0_request_set_feature_out_endpoint 
-0x4a81 018583 branch usb0_force_stall 
-:      018585 usb0_request_set_feature_out_device:
-0x4a82 018586 fetch 1 ,mem_usb_setup_bvalue 
-0x4a83 018587 bne device_remote_wakeup ,usb0_force_stall 
-0x4a84 018588 hfetch 1 ,core_usb_config 
-0x4a85 018589 set1 7 ,pdata 
-0x4a86 018590 hstore 1 ,core_usb_config 
-0x4a87 018591 jam 1 ,mem_usb_remote_wakeup 
-0x4a88 018592 jam usb_sleep ,mem_usb_state 
-0x4a89 018593 jam 0 ,mem_usb_tx_win_enable 
-0x4a8a 018594 call usb0_reply_zerolen 
-:      018595 usb_wakeup_timer_reinit:
-0x4a8b 018596 call timer_reinit 
-0x4a8c 018597 setarg timer_wakeup_delay 
-0x4a8d 018598 arg timer_wakeup ,queue 
-0x4a8e 018599 branch timer_init 
-:      018601 usb0_request_set_feature_out_interface:
-0x4a8f 018602 branch usb0_force_stall 
-:      018604 usb0_request_set_feature_out_endpoint:
-0x4a90 018605 fetch 1 ,mem_usb_setup_bvalue 
-0x4a91 018606 bne endpoint_halt ,usb0_force_stall 
-0x4a92 018607 fetch 1 ,mem_usb_setup_bvalueh 
-0x4a93 018608 bne 0 ,usb0_force_stall 
-0x4a94 018609 fetch 1 ,mem_usb_setup_windex 
-0x4a95 018610 beq in_ep1 ,usb0_force_stall_ep1_in_on 
-0x4a96 018611 beq in_ep2 ,usb0_force_stall_ep2_in_on 
-0x4a97 018612 beq in_ep3 ,usb0_force_stall_ep3_in_on 
-0x4a98 018613 and_into 0x7f ,pdata 
-0x4a99 018614 beq 0x00 ,usb0_force_stall_ep0_in_on 
-0x4a9a 018615 branch usb0_force_stall 
-:      018617 usb0_force_stall_ep0_in_on:
-0x4a9b 018618 jam 1 ,mem_usb_ep0_stall_status 
-0x4a9c 018619 branch usb0_reply_zerolen 
-:      018620 usb0_force_stall_ep1_in_on:
-0x4a9d 018621 jam 1 ,mem_usb_ep1_stall_status 
-0x4a9e 018622 branch usb0_reply_zerolen 
-:      018623 usb0_force_stall_ep2_in_on:
-0x4a9f 018624 jam 1 ,mem_usb_ep2_stall_status 
-0x4aa0 018625 branch usb0_reply_zerolen 
-:      018626 usb0_force_stall_ep3_in_on:
-0x4aa1 018627 jam 1 ,mem_usb_ep3_stall_status 
-0x4aa2 018628 branch usb0_reply_zerolen 
-:      018631 usb0_request_set_address:
-0x4aa3 018632 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4aa4 018633 bne out_device ,usb0_force_stall 
-0x4aa5 018634 fetch 1 ,mem_usb_setup_windex 
-0x4aa6 018635 bne 0 ,usb0_force_stall 
-0x4aa7 018636 fetch 1 ,mem_usb_setup_windex + 1 
-0x4aa8 018637 bne 0 ,usb0_force_stall 
-0x4aa9 018638 fetch 1 ,mem_usb_setup_blength 
-0x4aaa 018639 bne 0 ,usb0_force_stall 
-0x4aab 018640 fetch 1 ,mem_usb_setup_blengthh 
-0x4aac 018641 bne 0 ,usb0_force_stall 
-0x4aad 018642 fetch 1 ,mem_usb_setup_bvalueh 
-0x4aae 018643 bne 0 ,usb0_force_stall 
-0x4aaf 018644 fetch 1 ,mem_usb_setup_bvalue 
-0x4ab0 018645 and_into 0x80 ,pdata 
-0x4ab1 018646 bne 0 ,usb0_force_stall 
-0x4ab2 018647 fetch 1 ,mem_usb_setup_bvalue 
-0x4ab3 018648 bne 0 ,usb_usb0_state_set_dev_addr 
-:      018649 usb_usb0_state_set_dev_default:
-0x4ab4 018650 jam dev_default ,mem_usb0_state 
-:      018651 usb0_request_set_wait_address:
-0x4ab5 018652 fetch 1 ,mem_usb_setup_bvalue 
-0x4ab6 018653 hstore 1 ,core_usb_addr 
-0x4ab7 018654 call usb0_reply_zerolen 
-0x4ab8 018655 jam 1 ,mem_usb_set_high_addr_flag 
-0x4ab9 018656 rtn 
-:      018657 usb_usb0_state_set_dev_addr:
-0x4aba 018658 jam dev_address ,mem_usb0_state 
-0x4abb 018659 branch usb0_request_set_wait_address 
-:      018662 usb0_request_set_configuration:
-0x4abc 018663 fetch 1 ,mem_usb0_state 
-0x4abd 018664 beq dev_default ,usb0_force_stall 
-0x4abe 018665 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4abf 018666 bne out_device ,usb0_force_stall 
-0x4ac0 018667 fetch 1 ,mem_usb_setup_windex 
-0x4ac1 018668 bne 0 ,usb0_force_stall 
-0x4ac2 018669 fetch 1 ,mem_usb_setup_windex + 1 
-0x4ac3 018670 bne 0 ,usb0_force_stall 
-0x4ac4 018671 fetch 1 ,mem_usb_setup_blength 
-0x4ac5 018672 bne 0 ,usb0_force_stall 
-0x4ac6 018673 fetch 1 ,mem_usb_setup_blengthh 
-0x4ac7 018674 bne 0 ,usb0_force_stall 
-0x4ac8 018675 fetch 1 ,mem_usb_setup_bvalue + 1 
-0x4ac9 018676 bne 0 ,usb0_force_stall 
-0x4aca 018677 fetch 1 ,mem_usb_setup_bvalue 
-0x4acb 018678 sub pdata ,usb_max_num_cfg ,null 
-0x4acc 018679 nbranch usb0_force_stall ,positive 
-0x4acd 018680 fetch 1 ,mem_usb0_state 
-0x4ace 018681 beq dev_address ,usb0_request_set_cfg_addr_state 
-0x4acf 018682 beq dev_configured ,usb0_request_set_cfg_cfg_state 
-0x4ad0 018683 branch usb0_force_stall 
-:      018685 usb0_request_set_cfg_addr_state:
-:      018686 usb0_request_set_cfg_cfg_state:
-0x4ad1 018687 fetch 1 ,mem_usb_setup_bvalue 
-0x4ad2 018688 beq 0 ,usb0_request_set_cfg_stay_addr_state 
-0x4ad3 018689 jam dev_configured ,mem_usb0_state 
-0x4ad4 018690 branch usb0_reply_zerolen 
-:      018691 usb0_request_set_cfg_stay_addr_state:
-0x4ad5 018692 jam dev_address ,mem_usb0_state 
-0x4ad6 018693 branch usb0_reply_zerolen 
-:      018696 usb0_request_set_interface:
-0x4ad7 018697 fetch 1 ,mem_usb0_state 
-0x4ad8 018698 bne dev_configured ,usb0_force_stall 
-0x4ad9 018699 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4ada 018700 bne out_interface ,usb0_force_stall 
-0x4adb 018701 fetch 1 ,mem_usb_setup_bvalue 
-0x4adc 018702 bne 0 ,usb0_force_stall 
-0x4add 018703 fetch 1 ,mem_usb_setup_bvalueh 
-0x4ade 018704 bne 0 ,usb0_force_stall 
-0x4adf 018705 fetch 1 ,mem_usb_setup_blength 
-0x4ae0 018706 bne 0 ,usb0_force_stall 
-0x4ae1 018707 fetch 1 ,mem_usb_setup_blengthh 
-0x4ae2 018708 bne 0 ,usb0_force_stall 
-0x4ae3 018709 fetch 1 ,mem_usb_setup_windex 
-0x4ae4 018710 bne 0 ,usb0_force_stall 
-0x4ae5 018711 fetch 1 ,mem_usb_setup_windex + 1 
-0x4ae6 018712 bne 0 ,usb0_force_stall 
-0x4ae7 018713 branch usb0_reply_zerolen 
-:      018716 usb_set_idle:
-0x4ae8 018717 jam 1 ,mem_usb_idle_flag 
-0x4ae9 018718 fetch 1 ,mem_usb_setup_bvalueh 
-0x4aea 018719 store 1 ,mem_usb_idle_rate 
-0x4aeb 018720 fetch 1 ,mem_usb_setup_windex 
-0x4aec 018721 sub pdata ,1 ,null 
-0x4aed 018722 call usb_clear_remote_wakeup_set0 ,zero 
-0x4aee 018723 fetch 1 ,mem_usb_state 
-0x4aef 018724 bne usb_resume ,usb0_reply_zerolen 
-0x4af0 018725 jam usb_connected ,mem_usb_state 
-0x4af1 018726 call usb0_reply_zerolen 
-0x4af2 018727 nop 30000 
-0x4af3 018728 nop 30000 
-0x4af4 018729 rtn 
-:      018730 usb_clear_remote_wakeup_set0:
-0x4af5 018731 jam 1 ,mem_usb_device_enumeration_endflag 
-0x4af6 018732 jam 0 ,mem_usb_clear_remote_wakeup 
-0x4af7 018733 jam usb_resume ,mem_usb_state 
-0x4af8 018734 rtn 
-:      018737 usb_set_report:
-0x4af9 018738 jam 1 ,mem_usb0_get_set_report 
-0x4afa 018739 call usb_set_report_resume_judge 
-0x4afb 018740 fetch 2 ,mem_usb_setup_bvalue 
-0x4afc 018741 store 2 ,mem_usb_setup_bvalue_temp 
-0x4afd 018742 fetch 1 ,mem_usb_setup_blength 
-0x4afe 018743 iforce loopcnt 
-0x4aff 018744 arg mem_usb0_setup ,contr 
-0x4b00 018745 arg mem_usb0_set_report_data ,contw 
-0x4b01 018746 call memcpy 
-0x4b02 018747 branch usb0_reply_zerolen 
-:      018749 usb_set_report_resume_judge:
-0x4b03 018750 fetch 2 ,mem_usb_setup_bvalue 
-0x4b04 018751 arg pc_set_report_bvalue ,temp 
-0x4b05 018752 isub temp ,null 
-0x4b06 018753 nrtn zero 
-0x4b07 018754 fetch 2 ,mem_usb_setup_windex 
-0x4b08 018755 arg pc_set_report_windex ,temp 
-0x4b09 018756 isub temp ,null 
-0x4b0a 018757 nrtn zero 
-0x4b0b 018758 fetch 2 ,mem_usb_setup_blength 
-0x4b0c 018759 arg pc_set_report_blength ,temp 
-0x4b0d 018760 isub temp ,null 
-0x4b0e 018761 nrtn zero 
-0x4b0f 018762 jam 1 ,mem_usb_tx_win_enable 
-0x4b10 018763 rtn 
-:      018766 usb_set_protocol_req:
-0x4b11 018767 fetch 1 ,mem_usb_setup_blength 
-0x4b12 018768 bne 0 ,usb0_force_stall 
-0x4b13 018769 fetch 1 ,mem_usb_setup_bvalue 
-0x4b14 018770 beq boot_protocol ,usb_set_boot_protocol 
-0x4b15 018771 beq report_protocol ,usb_set_report_protocol 
-0x4b16 018772 branch usb0_force_stall 
-:      018773 usb_set_boot_protocol:
-0x4b17 018774 jam 0 ,mem_usb_set_protocol_status 
-0x4b18 018775 jam 1 ,mem_usb_set_protocol_value 
-0x4b19 018776 branch usb0_reply_zerolen 
-:      018777 usb_set_report_protocol:
-0x4b1a 018778 jam 1 ,mem_usb_tx_mac_enable 
-0x4b1b 018779 jam 1 ,mem_usb_set_protocol_status 
-0x4b1c 018780 jam 0 ,mem_usb_set_protocol_value 
-0x4b1d 018781 branch usb0_reply_zerolen 
-:      018784 usb0_respond_length:
-0x4b1e 018785 ifetch 1 ,rega 
-0x4b1f 018786 iforce regb 
-0x4b20 018787 increase 1 ,rega 
-:      018789 usb0_respond:
-0x4b21 018790 bpatch patch1f_2 ,mem_patch1f 
-0x4b22 018791 bmark0 mark_isstr ,usb0_respond0 
-0x4b23 018792 add regb ,1 ,pdata 
-0x4b24 018793 lshift pdata ,pdata 
-0x4b25 018794 hstore 1 ,core_usb_dfifo0 
-0x4b26 018795 jam 3 ,core_usb_dfifo0 
-0x4b27 018796 fetch 1 ,mem_usb_setup_blength 
-0x4b28 018797 increase -2 ,pdata 
-0x4b29 018798 rshift pdata ,pdata 
-0x4b2a 018799 store 1 ,mem_usb_setup_blength 
-0x4b2b 018800 beq 0 ,usb_no_respond_data 
-:      018801 usb0_respond0:
-0x4b2c 018802 fetch 2 ,mem_usb_setup_blength 
-0x4b2d 018803 isub regb ,null 
-0x4b2e 018804 branch usb0_respond1 ,positive 
-0x4b2f 018805 copy pdata ,regb 
-:      018806 usb0_respond1:
-0x4b30 018807 deposit rega 
-0x4b31 018808 store 2 ,mem_bufptr 
-0x4b32 018809 deposit regb 
-0x4b33 018810 store 1 ,mem_remain 
-0x4b34 018811 branch usb0_tx 
-:      018813 usb_no_respond_data:
-0x4b35 018814 arg 0 ,queue 
-0x4b36 018815 branch usb_trig 
-:      018818 usb0_tx:
-0x4b37 018819 bpatch patch1f_3 ,mem_patch1f 
-0x4b38 018820 fetch 1 ,mem_remain 
-0x4b39 018821 rtn blank 
-0x4b3a 018822 copy pdata ,loopcnt 
-0x4b3b 018823 sub pdata ,ep0_packet_size ,null 
-0x4b3c 018824 branch usb0_tx_info ,positive 
-0x4b3d 018825 arg ep0_packet_size ,loopcnt 
-:      018826 usb0_tx_info:
-0x4b3e 018827 fetch 1 ,mem_remain 
-0x4b3f 018828 isub loopcnt ,pdata 
-0x4b40 018829 store 1 ,mem_remain 
-0x4b41 018830 fetch 2 ,mem_bufptr 
-0x4b42 018831 copy pdata ,contr 
-:      018832 usb0_tx0:
-0x4b43 018833 ifetch 1 ,contr 
-0x4b44 018834 hstore 1 ,core_usb_dfifo0 
-0x4b45 018835 bmark0 mark_isstr ,usb0_tx1 
-0x4b46 018836 jam 0 ,core_usb_dfifo0 
-:      018837 usb0_tx1:
-0x4b47 018838 loop usb0_tx0 
-0x4b48 018839 copy contr ,pdata 
-0x4b49 018840 store 2 ,mem_bufptr 
-0x4b4a 018841 arg 0 ,queue 
-0x4b4b 018842 call usb_trig 
-0x4b4c 018843 fetch 1 ,mem_remain 
-0x4b4d 018844 nrtn blank 
-0x4b4e 018845 fetch 1 ,mem_usb_state 
-0x4b4f 018846 rtnne usb_got_report_req 
-0x4b50 018847 jam usb_connected ,mem_usb_state 
-0x4b51 018848 rtn 
-:      018851 usb_tx_ep1:
-0x4b52 018852 arg core_usb_dfifo1 ,rega 
-0x4b53 018853 arg 1 ,queue 
-:      018854 usb_tx_loop:
-0x4b54 018855 ifetch 1 ,contr 
-0x4b55 018856 istore 1 ,rega 
-0x4b56 018857 loop usb_tx_loop 
-:      018858 usb_trig:
-0x4b57 018859 setarg 0 
-0x4b58 018860 qset1 pdata 
-0x4b59 018861 hstore 1 ,core_usb_trig 
-0x4b5a 018862 fetcht 1 ,mem_usb_tx_wait 
-0x4b5b 018863 ior temp ,pdata 
-0x4b5c 018864 store 1 ,mem_usb_tx_wait 
-0x4b5d 018865 rtn 
-:      018867 usb_tx_ep2:
-0x4b5e 018868 arg 2 ,queue 
-0x4b5f 018869 arg core_usb_dfifo2 ,rega 
-0x4b60 018870 branch usb_tx_loop 
-:      018872 usb_tx:
-0x4b61 018873 bpatch patch1f_4 ,mem_patch1f 
-0x4b62 018874 fetch 1 ,mem_usb_tx_enable 
-0x4b63 018875 rtn blank 
-0x4b64 018876 fetch 1 ,mem_usb_tx_wait 
-0x4b65 018877 nbranch usb_inwake_state_tx_dispose ,blank 
-0x4b66 018878 fetch 1 ,mem_usb_device_enumeration_endflag 
-0x4b67 018879 branch usb_tx_fifo_release ,blank 
-0x4b68 018880 fetch 1 ,mem_usb_state 
-0x4b69 018881 beq usb_sleep ,usb_windows_wakeup 
-0x4b6a 018882 bne usb_connected ,usb_tx_fifo_release 
-0x4b6b 018883 fetch 1 ,mem_usb_clear_remote_wakeup 
-0x4b6c 018884 nbranch usb_tx_fifo_release ,blank 
-0x4b6d 018885 call usb_tx_data_ep1 
-0x4b6e 018886 branch usb_tx_data_ep2 
-:      018888 usb_tx_data_ep1:
-0x4b6f 018889 fetch 1 ,mem_usb_tx_enable 
-0x4b70 018890 rtnbit0 1 
-0x4b71 018891 fetch 1 ,mem_usb_tx_wait 
-0x4b72 018892 rtnbit1 1 
-0x4b73 018893 fetch 1 ,mem_usb_tx_enable 
-0x4b74 018894 set0 1 ,pdata 
-0x4b75 018895 store 1 ,mem_usb_tx_enable 
-0x4b76 018896 fetch 1 ,mem_usb_ep1_data 
-0x4b77 018897 rtn blank 
-0x4b78 018898 beq usb_ep1_kb ,usb_tx_kb_normal_data 
-0x4b79 018899 branch assert 
-:      018901 usb_tx_data_ep2:
-0x4b7a 018902 fetch 1 ,mem_usb_tx_enable 
-0x4b7b 018903 rtnbit0 2 
-0x4b7c 018904 fetch 1 ,mem_usb_tx_wait 
-0x4b7d 018905 rtnbit1 2 
-0x4b7e 018906 fetch 1 ,mem_usb_tx_enable 
-0x4b7f 018907 set0 2 ,pdata 
-0x4b80 018908 store 1 ,mem_usb_tx_enable 
-0x4b81 018909 fetch 1 ,mem_usb_ep2_data 
-0x4b82 018910 rtn blank 
-0x4b83 018911 beq usb_ep2_ms ,usb_tx_ms_data 
-0x4b84 018912 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
-0x4b85 018913 branch assert 
-:      018915 usb_tx_fifo_release:
-0x4b86 018917 arg mem_usb_mouse_data ,contw 
-0x4b87 018918 arg 6 ,loopcnt 
-0x4b88 018919 branch memset0 
-:      018921 usb_tx_ms_data:
-0x4b89 018922 fetch 1 ,mem_usb_idle_flag 
-0x4b8a 018923 fetcht 1 ,mem_usb_get_protocol_flag 
-0x4b8b 018924 iand temp ,pdata 
-0x4b8c 018925 branch usb_tx_ms_data_normal_mode ,blank 
-0x4b8d 018926 fetcht 1 ,mem_usb_set_protocol_status 
-0x4b8e 018927 iadd temp ,pdata 
-0x4b8f 018928 beq mac_boot_mode ,usb_tx_ms_data_mac_boot_mode 
-0x4b90 018929 branch usb_tx_ms_data_normal_mode 
-:      018931 usb_tx_ms_data_mac_boot_mode:
-0x4b91 018932 jam 0 ,mem_usb_ep2_data 
-:      018933 usb_tx_ms_data_mac_boot_regroup:
-0x4b92 018934 fetch 1 ,mem_usb_mouse_data + 1 
-0x4b93 018935 beq r_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
-0x4b94 018936 beq lr_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
-0x4b95 018937 fetch 1 ,mem_usb_mouse_data + 1 
-0x4b96 018938 store 1 ,mem_usb_mouse_data 
-0x4b97 018939 fetch 1 ,mem_usb_mouse_data + 2 
-0x4b98 018940 istore 1 ,contw 
-0x4b99 018941 fetch 1 ,mem_usb_mouse_data + 4 
-0x4b9a 018942 istore 1 ,contw 
-0x4b9b 018943 fetch 1 ,mem_usb_mouse_data + 6 
-0x4b9c 018944 istore 1 ,contw 
-0x4b9d 018945 arg 4 ,loopcnt 
-0x4b9e 018946 arg mem_usb_mouse_data ,contr 
-0x4b9f 018947 branch usb_tx_ep2 
-:      018949 usb_tx_ms_data_normal_mode:
-0x4ba0 018950 jam 0 ,mem_usb_ep2_data 
-:      018951 usb_tx_mac_boot_ms_regroup_r_or_lrkey:
-0x4ba1 018952 arg 8 ,loopcnt 
-0x4ba2 018953 arg mem_usb_mouse_data ,contr 
-0x4ba3 018954 branch usb_tx_ep2 
-:      018956 usb_tx_kb_multikey_data:
-0x4ba4 018957 jam 0 ,mem_usb_ep2_data 
-0x4ba5 018958 arg 3 ,loopcnt 
-0x4ba6 018959 arg mem_usb_kb_multikey ,contr 
-0x4ba7 018960 branch usb_tx_ep2 
-:      018962 usb_tx_kb_normal_data:
-0x4ba8 018963 jam 0 ,mem_usb_ep1_data 
-0x4ba9 018964 arg 8 ,loopcnt 
-0x4baa 018965 arg mem_usb_kb_data ,contr 
-0x4bab 018966 branch usb_tx_ep1 
-:      018968 usb_inwake_state_tx_dispose:
-0x4bac 018969 fetch 1 ,mem_usb_state 
-0x4bad 018970 beq usb_sleep ,usb_clear_tx_wait 
-0x4bae 018971 beq usb_connected ,usb_mac_wakeup_trig 
-0x4baf 018972 rtn 
-:      018973 usb_clear_tx_wait:
-0x4bb0 018974 jam 0 ,mem_usb_tx_wait 
-0x4bb1 018975 rtn 
-:      018976 usb_mac_wakeup_trig:
-0x4bb2 018977 hfetch 1 ,core_usb_config 
-0x4bb3 018978 set1 7 ,pdata 
-0x4bb4 018979 hstore 1 ,core_usb_config 
-0x4bb5 018980 jam 1 ,mem_usb_mac_wakeup_trig 
-0x4bb6 018981 rtn 
-:      018983 usb_mac_wakeup_judge:
-0x4bb7 018984 fetch 1 ,mem_usb_state 
-0x4bb8 018985 rtneq usb_sleep 
-0x4bb9 018986 beq usb_connected ,usb_mac_wakeup 
-0x4bba 018987 rtn 
-:      018988 usb_mac_wakeup:
-0x4bbb 018989 fetch 1 ,mem_usb_mac_wakeup_trig 
-0x4bbc 018990 rtn blank 
-0x4bbd 018991 jam 1 ,mem_usb_wakestate_onetime_flag 
-0x4bbe 018992 branch usb_wakeup 
-:      018994 usb_windows_wakeup:
-0x4bbf 018995 arg timer_wakeup ,queue 
-0x4bc0 018996 call timer_check 
-0x4bc1 018997 nrtn blank 
-:      018998 usb_wakeup:
-0x4bc2 018999 hfetch 1 ,core_usb_config 
-0x4bc3 019000 rtnbit0 7 
-0x4bc4 019001 jam 0xfc ,core_usb_config 
-0x4bc5 019002 nop 30000 
-0x4bc6 019003 jam 0x3c ,core_usb_config 
-0x4bc7 019004 rtn 
-:      019011 hci_rx_h4:
-0x4bc8 019012 bpatch patch1f_5 ,mem_patch1f 
-0x4bc9 019013 fetch 1 ,mem_hci_cmd 
-0x4bca 019014 nrtn blank 
-:      019015 hci_rx_h4_1:
-0x4bcb 019016 call hci_h4_parse_packet 
-0x4bcc 019017 ncall h4_rx_discard_packet ,user 
-0x4bcd 019018 rtn 
-:      019020 hci_h4_parse_packet:
-0x4bce 019021 bpatch patch1f_6 ,mem_patch1f 
-0x4bcf 019022 copy contru ,rega 
-0x4bd0 019023 arg 4 ,temp 
-0x4bd1 019024 ifetch 1 ,contru 
-0x4bd2 019025 beq hci_h4_type_cmd ,hci_h4_parse_packet_wait_len 
-0x4bd3 019026 increase 1 ,temp 
-0x4bd4 019027 beq hci_h4_type_acl ,hci_h4_parse_packet_wait_len 
-0x4bd5 019028 copy contru ,pdata 
-0x4bd6 019029 hstore 2 ,core_uart_rrptr 
-0x4bd7 019030 rtn 
-:      019031 hci_h4_parse_packet_wait_len:
-0x4bd8 019032 hfetch 2 ,core_uart_rxitems 
-0x4bd9 019033 isub temp ,null 
-0x4bda 019034 nbranch hci_h4_parse_packet_wait_len ,positive 
-0x4bdb 019036 disable user 
-0x4bdc 019037 copy rega ,contru 
-0x4bdd 019038 call h4_get_rx_payload_len 
-0x4bde 019039 iadd temp ,temp 
-:      019040 hci_h4_parse_packet_wait:
-0x4bdf 019041 hfetch 2 ,core_uart_rxitems 
-0x4be0 019042 isub temp ,null 
-0x4be1 019043 nbranch hci_h4_parse_packet_wait ,positive 
-0x4be2 019044 copy rega ,contru 
-0x4be3 019045 ifetch 1 ,contru 
-0x4be4 019046 beq hci_h4_type_cmd ,process_hci_cmd 
-0x4be5 019047 branch assert 
-:      019049 h4_rx_discard_packet:
-0x4be6 019050 bpatch patch1f_7 ,mem_patch1f 
-0x4be7 019051 hfetch 2 ,core_uart_rrptr 
-0x4be8 019052 iforce contru 
-0x4be9 019053 call h4_get_rx_payload_len 
-0x4bea 019054 iadd contru ,contru 
-0x4beb 019055 deposit contru 
-0x4bec 019056 hstore 2 ,core_uart_rrptr 
-0x4bed 019057 rtn 
-:      019062 h4_get_rx_payload_len:
-0x4bee 019063 ifetch 1 ,contru 
-0x4bef 019064 increase 2 ,contru 
-0x4bf0 019065 beq hci_h4_type_acl ,h4_get_rx_payload_len_acl 
-0x4bf1 019066 ifetch 1 ,contru 
-0x4bf2 019067 rtn 
-:      019068 h4_get_rx_payload_len_acl:
-0x4bf3 019069 ifetch 2 ,contru 
-0x4bf4 019070 rtn 
-:      019072 h4_get_tx_ptr:
-0x4bf5 019073 hfetch 2 ,core_uart_twptr 
-0x4bf6 019074 increase -5 ,contwu 
-0x4bf7 019075 iadd contwu ,contwu 
-0x4bf8 019076 rtn 
-:      019078 h4_send_packet_event:
-0x4bf9 019079 arg hci_h4_type_event ,temp 
-0x4bfa 019080 branch h4_send_packet 
-:      019081 h4_send_packet_acl:
-0x4bfb 019082 arg hci_h4_type_acl ,temp 
-:      019083 h4_send_packet:
-0x4bfc 019084 bpatchx patch20_0 ,mem_patch20 
-0x4bfd 019085 increase 1 ,loopcnt 
-0x4bfe 019086 hfetch 2 ,core_uart_twptr 
-0x4bff 019087 copy pdata ,contwu 
-0x4c00 019088 copy loopcnt ,pdata 
-0x4c01 019089 istoret 1 ,contwu 
-0x4c02 019090 increase -1 ,pdata 
-0x4c03 019091 iadd contwu ,contwu 
-0x4c04 019092 copy contwu ,pdata 
-0x4c05 019093 store 2 ,mem_hci_acl_tx_trigger_wptr 
-0x4c06 019094 copy temp ,pdata 
-0x4c07 019095 rtneq hci_h4_type_acl 
-0x4c08 019096 fetch 2 ,mem_hci_acl_tx_trigger_wptr 
-0x4c09 019097 hstore 2 ,core_uart_twptr 
-0x4c0a 019098 branch h4_send_acl_trigger_clear 
-:      019101 h4_send_acl_trigger_clear:
-0x4c0b 019102 setarg 0 
-0x4c0c 019103 store 2 ,mem_hci_acl_tx_trigger_wptr 
-0x4c0d 019104 rtn 
-:      019111 hci_init:
-0x4c0e 019112 rtn wake 
-0x4c0f 019113 setarg hci_idle_dispatch 
-0x4c10 019114 store 2 ,mem_cb_idle_process 
-0x4c11 019116 setarg uart_baud_115200 
-0x4c12 019117 store uart_baud_len ,mem_baud 
-:      019118 hci_lpm_init:
-0x4c13 019119 setarg mem_h5rx_buf 
-0x4c14 019120 hstore 2 ,core_uart_rsaddr 
-0x4c15 019121 setarg mem_h5rx_buf_end 
-0x4c16 019122 hstore 2 ,core_uart_readdr 
-0x4c17 019123 setarg mem_h5tx_buf 
-0x4c18 019124 hstore 2 ,core_uart_tsaddr 
-0x4c19 019125 call hci_sel_init 
-:      019126 hci_reinit:
-0x4c1a 019127 jam 0x0 ,core_uart_ctrl 
-0x4c1b 019128 setarg mem_h5tx_buf 
-0x4c1c 019129 hstore 2 ,core_uart_twptr 
-0x4c1d 019130 hstore 2 ,core_uart_trptrp 
-0x4c1e 019131 setarg mem_h5rx_buf 
-0x4c1f 019132 hstore 2 ,core_uart_rrptr 
-0x4c20 019133 store 2 ,mem_h5rx_rptr 
-:      019134 hci_init_common:
-0x4c21 019135 hfetch 2 ,core_clkoff 
-0x4c22 019136 set0 clock_off_uart ,pdata 
-0x4c23 019137 hstore 2 ,core_clkoff 
-0x4c24 019138 call uart_set_baud_by_mem 
-0x4c25 019139 jam uartclk_dpll ,core_uart_clksel 
-0x4c26 019140 jam uart_ctrl_h4 ,core_uart_ctrl 
-0x4c27 019141 rtn 
-:      019143 hci_sel_init:
-0x4c28 019144 setarg mem_h5tx_buf_end 
-0x4c29 019145 hstore 2 ,core_uart_teaddr 
-0x4c2a 019146 hfetch 1 ,core_gpio_sel1 
-0x4c2b 019147 or_into 0x07 ,pdata 
-0x4c2c 019148 hstore 1 ,core_gpio_sel1 
-0x4c2d 019149 rtn 
-:      019152 hci_rx_packet:
-0x4c2e 019153 bpatchx patch20_1 ,mem_patch20 
-0x4c2f 019154 hfetch 1 ,core_uart_status 
-0x4c30 019155 iforce regb 
-0x4c31 019156 bbit0 uart_status_rx_fifo_empty ,hci_rx_packet_cont 
-0x4c32 019157 hfetch 2 ,core_uart_rxitems 
-0x4c33 019158 iforce regc 
-0x4c34 019159 arg 0x44f ,temp 
-0x4c35 019160 isub temp ,null 
-0x4c36 019161 nrtn zero 
-:      019162 hci_rx_packet_cont:
-0x4c37 019163 hfetch 2 ,core_uart_rrptr 
-0x4c38 019164 iforce contru 
-0x4c39 019165 branch hci_rx_h4 
-:      019167 uart_send_byte:
-0x4c3a 019168 hfetcht 1 ,core_uart_status 
-0x4c3b 019169 isolate1 6 ,temp 
-0x4c3c 019170 branch uart_send_byte ,true 
-0x4c3d 019171 hstore 1 ,core_uart_txd 
-0x4c3e 019172 rtn 
-:      019174 process_hci_cmd:
-0x4c3f 019175 bpatchx patch20_2 ,mem_patch20 
-0x4c40 019176 fetch 1 ,mem_hci_cmd 
-0x4c41 019177 branch process_hci_cmd_cont ,blank 
-0x4c42 019178 enable user 
-0x4c43 019179 rtn 
-:      019180 process_hci_cmd_cont:
-0x4c44 019181 ifetch 2 ,contru 
-0x4c45 019182 iforce alarm 
-0x4c46 019183 iforce queue 
-0x4c47 019184 ifetch 1 ,contru 
-0x4c48 019185 iforce temp 
-0x4c49 019186 rshift2 alarm ,pdata 
-0x4c4a 019187 rshift8 pdata ,pdata 
-0x4c4b 019188 beq hci_ogf_vendor_specific ,phci_grp_vendor_specific 
-0x4c4c 019189 rtn 
-:      019192 phci_grp_vendor_specific:
-0x4c4d 019193 bpatchx patch20_3 ,mem_patch20 
-0x4c4e 019194 deposit queue 
-0x4c4f 019195 beq hci_vendor_cmd_reset ,hci_normal_reply 
-0x4c50 019196 beq hci_vendor_cmd_chipid ,phci_grp_vendor_chipid 
-0x4c51 019197 beq hci_vendor_cmd_baud ,phci_grp_vendor_baud 
-0x4c52 019198 beq hci_vendor_cmd_patch ,phci_grp_vendor_patch 
-0x4c53 019199 beq hci_vendor_cmd_patch_done ,phci_grp_vendor_done 
-0x4c54 019200 beq hci_vendor_cmd_echo ,hci_normal_reply 
-0x4c55 019201 beq hci_vendor_cmd_bdaddr ,phci_grp_vendor_bdaddr 
-0x4c56 019202 beq hci_vendor_cmd_enter_lpm ,phci_grp_vendor_enter_lpm 
-0x4c57 019204 beq hci_vendor_cmd_mem ,phci_grp_vendor_mem 
-0x4c58 019205 beq hci_vendor_cmd_eep ,phci_grp_vendor_eep 
-0x4c59 019206 beq hci_vendor_cmd_patch_sec_init ,phci_grp_vendor_patch_sec_init 
-0x4c5a 019207 beq hci_vendor_cmd_patch_sec ,phci_grp_vendor_patch_sec 
-0x4c5b 019208 branch hci_normal_reply 
-:      019210 phci_grp_vendor_enter_lpm:
-0x4c5c 019211 call hci_normal_reply 
-0x4c5d 019212 call wait_uarttx 
-0x4c5e 019213 call gpio_pu_uart_tx 
-:      019214 hci_enter_lpm:
-0x4c5f 019215 call app_put_lpm_wake_lock 
-0x4c60 019216 call app_l2cap_flow_control_enable 
-0x4c61 019217 branch gpio_rx_config_input_with_pu 
-:      019219 hci_exit_lpm:
-0x4c62 019220 jam hci_rx_ready ,mem_hci_lt_rx_state 
-0x4c63 019221 call app_get_lpm_wake_lock 
-0x4c64 019222 call hci_lpm_init 
-0x4c65 019223 branch app_l2cap_flow_control_disable 
-:      019225 phci_grp_vendor_chipid:
-0x4c66 019226 call hci_get_cmd_complete_ptr 
-0x4c67 019227 hfetch 2 ,core_chipid 
-0x4c68 019228 istore 2 ,contwu 
-0x4c69 019229 force 6 ,loopcnt 
-0x4c6a 019230 branch hci_command_complete 
-:      019232 phci_grp_vendor_baud:
-0x4c6b 019233 ifetch 2 ,contru 
-0x4c6c 019234 store 2 ,mem_baud 
-0x4c6d 019235 hstore 2 ,core_uart_baud 
-0x4c6e 019236 rtn 
-:      019239 phci_grp_vendor_patch_common:
-0x4c6f 019241 ifetch 1 ,contru 
-0x4c70 019242 copy pdata ,temp 
-0x4c71 019243 hstore 1 ,core_ucode_low 
-0x4c72 019244 ifetch 1 ,contru 
-0x4c73 019245 iadd temp ,temp 
-0x4c74 019246 set1 7 ,pdata 
-0x4c75 019247 hstore 1 ,core_ucode_ctrl 
-0x4c76 019248 ifetch 1 ,contru 
-0x4c77 019249 iadd temp ,temp 
-0x4c78 019250 copy pdata ,loopcnt 
-0x4c79 019251 rtn 
-:      019253 phci_grp_vendor_patch:
-0x4c7a 019254 bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
-0x4c7b 019255 call phci_grp_vendor_patch_common 
-:      019256 phci_grp_vendor_patch_loop:
-0x4c7c 019257 ifetch 1 ,contru 
-0x4c7d 019258 hstore 1 ,core_ucode_data 
-0x4c7e 019259 iadd temp ,temp 
-0x4c7f 019260 loop phci_grp_vendor_patch_loop 
-:      019261 phci_grp_vendor_patch_check_sum:
-0x4c80 019262 and temp ,0xff ,temp 
-0x4c81 019263 ifetch 1 ,contru 
-0x4c82 019264 isub temp ,null 
-0x4c83 019265 nbranch phci_grp_vendor_patch_bad ,zero 
-0x4c84 019266 branch hci_normal_reply 
-:      019269 phci_grp_vendor_patch_sec:
-0x4c85 019270 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
-0x4c86 019271 call phci_grp_vendor_patch_common 
-0x4c87 019272 store 8 ,mem_pdatatemp 
-:      019273 phci_grp_vendor_patch_sec_loop:
-0x4c88 019274 call do_aes_cbc 
-0x4c89 019275 arg 16 ,loopcnt 
-0x4c8a 019276 arg mem_temp_block0 ,contw 
-0x4c8b 019277 call load_uart_sum_loop 
-0x4c8c 019278 storet 8 ,mem_temp 
-0x4c8d 019279 arg mem_temp_block2 ,contw 
-0x4c8e 019280 call store_aes_result 
-0x4c8f 019281 arg mem_temp_block2 ,rega 
-0x4c90 019282 arg mem_temp_block0 ,regb 
-0x4c91 019283 arg mem_temp_block3 ,contw 
-0x4c92 019284 call xor16 
-0x4c93 019285 arg 16 ,loopcnt 
-0x4c94 019286 arg mem_temp_block3 ,contr 
-0x4c95 019287 call load_ucode_only_loop 
-0x4c96 019288 fetcht 8 ,mem_temp 
-0x4c97 019289 fetch 8 ,mem_pdatatemp 
-0x4c98 019290 increase -16 ,pdata 
-0x4c99 019291 store 8 ,mem_pdatatemp 
-0x4c9a 019292 nbranch phci_grp_vendor_patch_sec_loop ,blank 
-0x4c9b 019293 branch phci_grp_vendor_patch_check_sum 
-:      019295 load_ucode_only_loop:
-0x4c9c 019296 ifetch 1 ,contr 
-0x4c9d 019297 hstore 1 ,core_ucode_data 
-0x4c9e 019298 loop load_ucode_only_loop 
-0x4c9f 019299 rtn 
-:      019301 load_uart_sum_loop:
-0x4ca0 019302 ifetch 1 ,contru 
-0x4ca1 019303 istore 1 ,contw 
-0x4ca2 019304 iadd temp ,temp 
-0x4ca3 019305 loop load_uart_sum_loop 
-0x4ca4 019306 rtn 
-:      019308 phci_grp_vendor_patch_sec_init:
-0x4ca5 019309 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
-0x4ca6 019310 arg 0 ,temp 
-0x4ca7 019311 arg 16 ,loopcnt 
-0x4ca8 019312 arg mem_temp_block0 ,contw 
-0x4ca9 019313 call load_uart_sum_loop 
-0x4caa 019314 hfetch 1 ,core_gpio_key2 
-0x4cab 019315 and_into 0xfd ,pdata 
-0x4cac 019316 hstore 1 ,core_gpio_key2 
-0x4cad 019317 arg mem_temp_block0 ,contr 
-0x4cae 019318 arg 16 ,loopcnt 
-0x4caf 019319 call aes_load_data 
-0x4cb0 019320 call aes_init 
-0x4cb1 019321 call aes_clear_data 
-0x4cb2 019322 branch phci_grp_vendor_patch_check_sum 
-:      019325 phci_grp_vendor_done:
-0x4cb3 019326 arg 0x20 ,loopcnt 
-0x4cb4 019327 arg mem_patch00 ,contw 
-0x4cb5 019328 arg 0 ,temp 
-:      019329 phci_grp_vendor_done_loop:
-0x4cb6 019330 ifetch 1 ,contru 
-0x4cb7 019331 istore 1 ,contw 
-0x4cb8 019332 iadd temp ,temp 
-0x4cb9 019333 loop phci_grp_vendor_done_loop 
-0x4cba 019334 and temp ,0xff ,temp 
-0x4cbb 019335 ifetch 1 ,contru 
-0x4cbc 019336 isub temp ,null 
-0x4cbd 019337 nbranch phci_grp_vendor_patch_bad ,zero 
-0x4cbe 019338 jam 0 ,core_ucode_ctrl 
-0x4cbf 019339 call hci_normal_reply 
-0x4cc0 019340 call h4_rx_discard_packet 
-0x4cc1 019341 call clear_key_buf 
-0x4cc2 019342 call wait_uarttx 
-0x4cc3 019343 branch soft_reset 
-:      019345 phci_grp_vendor_patch_bad:
-0x4cc4 019346 jam 0 ,core_ucode_ctrl 
-0x4cc5 019347 branch start 
-:      019349 phci_grp_vendor_bdaddr:
-0x4cc6 019350 ifetch 6 ,contru 
-0x4cc7 019351 store 6 ,mem_lap 
-0x4cc8 019352 branch hci_normal_reply 
-:      019355 phci_grp_vendor_mem:
-0x4cc9 019356 ifetch 1 ,contru 
-0x4cca 019357 store 1 ,mem_hci_curr_len 
-0x4ccb 019358 copy pdata ,loopcnt 
-0x4ccc 019359 ifetch 2 ,contru 
-0x4ccd 019360 store 2 ,mem_hci_curr_target 
-0x4cce 019361 copy pdata ,contw 
-0x4ccf 019362 call uart_copy_rx_bytes 
-0x4cd0 019363 branch hci_normal_reply 
-:      019366 phci_grp_vendor_eep:
-0x4cd1 019367 ifetch 1 ,contru 
-0x4cd2 019368 store 1 ,mem_hci_curr_len 
-0x4cd3 019369 copy pdata ,loopcnt 
-0x4cd4 019370 ifetch 2 ,contru 
-0x4cd5 019371 store 2 ,mem_hci_curr_target 
-0x4cd6 019372 arg mem_l2cap_rxbuff1 ,contw 
-0x4cd7 019373 call uart_copy_rx_bytes 
-0x4cd8 019374 fetcht 1 ,mem_hci_curr_len 
-0x4cd9 019375 arg mem_l2cap_rxbuff1 ,rega 
-0x4cda 019376 fetch 2 ,mem_hci_curr_target 
-0x4cdb 019377 branch iicd_write_ota_data 
-:      019382 hci_normal_reply:
-0x4cdc 019383 force 4 ,loopcnt 
-:      019384 hci_command_complete:
-0x4cdd 019385 call hci_get_payload_ptr 
-0x4cde 019386 force 0x1 ,pdata 
-0x4cdf 019387 istore 1 ,contwu 
-0x4ce0 019388 deposit alarm 
-0x4ce1 019389 istore 3 ,contwu 
-0x4ce2 019390 force hci_event_command_complete ,queue 
-:      019391 hci_send_event:
-0x4ce3 019392 bpatchx patch20_4 ,mem_patch20 
-0x4ce4 019393 call hci_get_packet_ptr 
-0x4ce5 019394 deposit queue 
-0x4ce6 019395 istore 1 ,contwu 
-0x4ce7 019396 deposit loopcnt 
-0x4ce8 019397 istore 1 ,contwu 
-:      019398 hci_send_event_raw:
-0x4ce9 019399 force 5 ,queue 
-0x4cea 019400 increase 2 ,loopcnt 
-:      019401 hci_send_packet:
-0x4ceb 019402 branch h4_send_packet_event 
-:      019404 hci_send_commu_ready_event:
-0x4cec 019405 force hci_event_vendor_specific ,queue 
-0x4ced 019406 call hci_get_payload_ptr 
-0x4cee 019407 setarg hci_vendor_event_commu_ready 
-0x4cef 019408 istore 1 ,contwu 
-0x4cf0 019409 force 1 ,loopcnt 
-0x4cf1 019410 branch hci_send_event 
-:      019412 hci_get_cmd_complete_ptr:
-0x4cf2 019413 force 12 ,contwu 
-0x4cf3 019414 branch hci_get_tx_ptr 
-:      019416 hci_get_payload_ptr:
-0x4cf4 019417 force 8 ,contwu 
-0x4cf5 019418 branch hci_get_tx_ptr 
-:      019420 hci_get_packet_ptr:
-0x4cf6 019421 force 6 ,contwu 
-:      019422 hci_get_tx_ptr:
-0x4cf7 019423 branch h4_get_tx_ptr 
-:      019427 calc_tx_crc16:
-0x4cf8 019428 pulse crc16 
-0x4cf9 019429 enable enable_crc 
-:      019430 crcloop:
-0x4cfa 019431 ifetch 1 ,contwu 
-0x4cfb 019432 inject bucket ,8 
-0x4cfc 019433 loop crcloop 
-0x4cfd 019434 enable enable_parity 
-0x4cfe 019435 inject bucket ,16 
-0x4cff 019436 disable enable_parity 
-0x4d00 019437 disable enable_crc 
-0x4d01 019438 disable crc16 
-0x4d02 019439 byteswap pdata ,pdata 
-0x4d03 019440 rtn 
-:      019444 cmd_exit:
-0x4d04 019445 jam 0 ,mem_hci_cmd 
-0x4d05 019446 rtn 
-:      019447 cmd_check_plap:
-0x4d06 019448 fetch 6 ,mem_hci_plap 
-0x4d07 019449 fetcht 6 ,mem_plap 
-0x4d08 019450 isub temp ,null 
-0x4d09 019451 rtn 
-:      019456 cmd_pair:
-0x4d0a 019457 fetch 1 ,mem_op 
-0x4d0b 019458 bbit1 op_inrand_req ,cmd_pair_passive 
-0x4d0c 019459 call tid_initiate 
-0x4d0d 019460 jam lmp_in_rand ,mem_lmo_opcode2 
-0x4d0e 019461 branch cmd_exit 
-:      019462 cmd_pair_passive:
-0x4d0f 019463 set0 op_inrand_req ,pdata 
-0x4d10 019464 store 1 ,mem_op 
-0x4d11 019465 call lmp_accept_inrand 
-0x4d12 019466 setarg 0 
-0x4d13 019467 setflag master ,smap_lmptid ,pdata 
-0x4d14 019468 store 1 ,mem_lmo_tid2 
-0x4d15 019469 branch cmd_exit 
-0x4d16 019470 rtn 
-:      019471 cmd_in_sniff:
-0x4d17 019472 jam lmp_sniff_req ,mem_lmo_opcode2 
-0x4d18 019473 arg mem_sniff_payload ,contw 
-0x4d19 019474 setarg 0 
-0x4d1a 019475 isolate1 27 ,clke_bt 
-0x4d1b 019476 setflag true ,1 ,pdata 
-0x4d1c 019477 istore 1 ,contw 
-0x4d1d 019478 setarg 0 
-0x4d1e 019479 istore 2 ,contw 
-0x4d1f 019480 fetch 2 ,mem_sniff_param_interval 
-0x4d20 019481 istore 2 ,contw 
-0x4d21 019482 fetch 1 ,mem_sniff_param_attempt 
-0x4d22 019483 istore 2 ,contw 
-0x4d23 019484 fetch 1 ,mem_sniff_param_timeout 
-0x4d24 019485 istore 2 ,contw 
-0x4d25 019486 branch cmd_exit 
-:      019488 cmd_exit_sniff:
-0x4d26 019489 jam lmp_unsniff_req ,mem_lmo_opcode2 
-0x4d27 019490 branch cmd_exit 
-:      019492 hci_idle_dispatch:
-0x4d28 019493 call gpio_check_uart_state 
-0x4d29 019494 rtn true 
-0x4d2a 019495 arg uart_wakeup_rx ,temp 
-0x4d2b 019496 call gpio_get_bit 
-0x4d2c 019497 nbranch uart_wake_up ,true 
-0x4d2d 019498 jam hci_rx_wake ,mem_hci_lt_rx_state 
-0x4d2e 019499 rtn 
-:      019500 uart_wake_up:
-0x4d2f 019501 fetch 1 ,mem_hci_lt_rx_state 
-0x4d30 019502 rtnne hci_rx_wake 
-0x4d31 019503 call hci_exit_lpm 
-0x4d32 019504 branch hci_send_commu_ready_event 
-:      019518 hid_rx_process:
-0x4d33 019519 bpatchx patch20_5 ,mem_patch20 
-0x4d34 019520 fetch 2 ,mem_l2cap_payload_ptr 
-0x4d35 019521 copy pdata ,contr 
-0x4d36 019522 ifetch 1 ,contr 
-0x4d37 019523 and pdata ,0x0f ,temp 
-0x4d38 019524 rshift4 pdata ,pdata 
-0x4d39 019525 beq hid_type_set_idle ,hid_rx_process_handshake 
-0x4d3a 019526 beq hid_type_set_protocol ,hid_rx_process_handshake 
-0x4d3b 019527 beq hid_type_data ,hid_rx_process_data 
-0x4d3c 019528 beq hid_type_set_report ,hid_rx_process_set_report 
-0x4d3d 019529 beq hid_type_control ,hid_rx_process_hid_control 
-0x4d3e 019530 rtn 
-:      019532 hid_rx_process_hid_control:
-0x4d3f 019533 copy temp ,pdata 
-0x4d40 019534 beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
-0x4d41 019535 beq hid_control_p_suspend ,hid_rx_process_suspend 
-0x4d42 019536 rtn 
-:      019538 hid_rx_process_virtual_cable_unplug:
-0x4d43 019539 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
-0x4d44 019540 call ui_ipc_send_event 
-0x4d45 019541 fetch 1 ,mem_device_option 
-0x4d46 019542 rtnbit0 dvc_op_mouse 
-0x4d47 019543 copy temp ,pdata 
-0x4d48 019544 beq hid_control_p_virtualcableunplug ,mouse_irtual_cable_unplug 
-0x4d49 019545 rtn 
-:      019546 hid_rx_process_suspend:
-0x4d4a 019547 rtn 
-:      019549 hid_rx_process_set_report:
-0x4d4b 019550 call hid_rx_process_data 
-0x4d4c 019551 arg 0x01 ,rega 
-0x4d4d 019552 call hid_malloc_tx_buff 
-0x4d4e 019553 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4d4f 019554 istore 2 ,contw 
-0x4d50 019555 setarg 0x00 
-0x4d51 019556 istore 1 ,contw 
-0x4d52 019557 rtn 
-:      019559 hid_rx_process_handshake:
-0x4d53 019560 arg 1 ,rega 
-0x4d54 019561 call hid_malloc_tx_buff 
-0x4d55 019562 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4d56 019563 istore 2 ,contw 
-0x4d57 019564 setarg 0 
-0x4d58 019565 istore 1 ,contw 
-0x4d59 019566 jam 1 ,mem_ui_data_txbuff_length 
-0x4d5a 019567 fetch 1 ,mem_hid_control_state 
-0x4d5b 019568 set1 l2cap_channel_hid_handshake_done 
-0x4d5c 019569 store 1 ,mem_hid_control_state 
-0x4d5d 019570 jam bt_evt_hid_handshake ,mem_fifo_temp 
-0x4d5e 019571 branch ui_ipc_send_event 
-:      019573 hid_rx_process_data:
-0x4d5f 019574 ifetch 1 ,contr 
-0x4d60 019575 beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
-0x4d61 019576 rtn 
-:      019578 hid_rx_process_data_hid_kb:
-0x4d62 019579 rtn 
-:      019582 hid_malloc_tx_buff:
-0x4d63 019583 call l2cap_malloc 
-0x4d64 019584 copy rega ,temp 
-0x4d65 019585 storet 1 ,mem_ui_data_txbuff_length 
-0x4d66 019586 copy pdata ,contw 
-0x4d67 019587 copy rega ,pdata 
-0x4d68 019588 istore 2 ,contw 
-0x4d69 019589 rtn 
-:      019606 l2cap_init:
-0x4d6a 019607 branch l2cap_init_wake ,wake 
-:      019608 l2cap_init_work:
-0x4d6b 019609 setarg mem_l2cap_xmem_end 
-0x4d6c 019610 arg mem_l2cap_xmem_start ,contw 
-0x4d6d 019611 isub contw ,loopcnt 
-0x4d6e 019612 call clear_mem 
-:      019613 l2cap_init_wake:
-0x4d6f 019614 bpatchx patch20_6 ,mem_patch20 
-0x4d70 019615 setarg mem_sdp_mem_end 
-0x4d71 019616 arg mem_sdp_mem_start ,contw 
-0x4d72 019617 isub contw ,loopcnt 
-0x4d73 019618 call clear_mem 
-0x4d74 019619 setarg mem_l2cap_mem_end 
-0x4d75 019620 arg mem_l2cap_mem_start ,contw 
-0x4d76 019621 isub contw ,loopcnt 
-0x4d77 019622 call clear_mem 
-0x4d78 019623 branch l2cap_lpm_load_txbuf 
-:      019625 process_rx_l2cap_pkt:
-0x4d79 019626 bpatchx patch20_7 ,mem_patch20 
-0x4d7a 019627 copy contr ,temp 
-0x4d7b 019630 copy temp ,contr 
-0x4d7c 019631 ifetch 2 ,contr 
-0x4d7d 019632 store 2 ,mem_l2cap_rx_pkt_length 
-0x4d7e 019633 ifetch 2 ,contr 
-0x4d7f 019634 store 2 ,mem_l2cap_rx_cid 
-0x4d80 019635 deposit contr 
-0x4d81 019636 store 2 ,mem_l2cap_payload_ptr 
-0x4d82 019637 fetch 1 ,memui_reconnect_mode 
-0x4d83 019638 beq no_reconnection ,l2cap_rx_multiplexing 
-0x4d84 019639 branch ml2cap_rx_multiplexing 
-:      019641 l2cap_rx_multiplexing:
-0x4d85 019642 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x4d86 019643 branch l2cap_rx_reset_state ,blank 
-0x4d87 019644 bpatchx patch21_0 ,mem_patch21 
-0x4d88 019645 fetch 1 ,mem_l2cap_rx_cid 
-0x4d89 019646 beq l2cap_signal_channel ,l2cap_call_proc_signal 
-:      019647 l2cap_rx_multiplexing0:
-0x4d8a 019648 beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
-0x4d8b 019649 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
-0x4d8c 019650 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
-0x4d8d 019651 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
-0x4d8e 019652 branch l2cap_rx_reset_state 
-:      019654 l2cap_check_map:
-0x4d8f 019657 bpatchx patch21_1 ,mem_patch21 
-0x4d90 019658 call l2cap_malloc_get_full_map 
-0x4d91 019659 fetch 1 ,mem_used_map 
-0x4d92 019660 beq 0 ,set_pdata_0 
-0x4d93 019661 beq 1 ,set_pdata_0 
-0x4d94 019662 beq 2 ,set_pdata_0 
-0x4d95 019663 beq 3 ,set_pdata_0 
-0x4d96 019664 beq 0x81 ,set_pdata_0 
-0x4d97 019665 beq 0xc0 ,set_pdata_0 
-0x4d98 019666 beq 0x80 ,set_pdata_0 
-0x4d99 019667 beq 0x40 ,set_pdata_0 
-0x4d9a 019668 rtn 
-:      019670 set_pdata_0:
-0x4d9b 019671 setarg 0 
-0x4d9c 019672 rtn 
-:      019675 l2cap_call_proc_signal:
-0x4d9d 019676 call l2cap_check_map 
-0x4d9e 019677 nrtn blank 
-:      019678 l2cap_call_proc_signal0:
-0x4d9f 019679 call l2cap_malloc_signal_channel 
-0x4da0 019680 call l2cap_process_signal_pkt 
-0x4da1 019681 fetcht 2 ,mem_l2cap_signal_tx_length 
-0x4da2 019682 branch l2cap_call_proc_no_reply ,blank 
-0x4da3 019683 call l2cap_get_signal_tx_buff 
-0x4da4 019684 fetch 2 ,mem_l2cap_signal_tx_length 
-0x4da5 019685 istore 2 ,contw 
-0x4da6 019686 force l2cap_signal_channel ,pdata 
-0x4da7 019687 istore 2 ,contw 
-0x4da8 019688 branch l2cap_rx_reset_state 
-:      019690 l2cap_call_proc_sigal_pending:
-0x4da9 019691 fetch 1 ,mem_l2cap_pending_item 
-0x4daa 019692 rtn blank 
-0x4dab 019693 copy pdata ,rega 
-0x4dac 019694 bpatchx patch21_2 ,mem_patch21 
-0x4dad 019695 fetch 4 ,mem_l2cap_sdpres_delay_time 
-0x4dae 019696 arg 0x100 ,temp 
-0x4daf 019697 iadd temp ,temp 
-0x4db0 019698 copy clkn_bt ,pdata 
-0x4db1 019699 isub temp ,null 
-0x4db2 019700 nrtn positive 
-0x4db3 019701 jam 0 ,mem_l2cap_pending_item 
-0x4db4 019702 copy rega ,pdata 
-0x4db5 019703 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
-0x4db6 019704 branch assert 
-:      019705 l2cap_sdp_conn_succ:
-0x4db7 019706 arg 0 ,debug 
-0x4db8 019707 call l2cap_malloc_signal_channel 
-0x4db9 019708 call restore_l2cap_req_param 
-0x4dba 019709 call l2cap_get_signal_tx_payload 
-0x4dbb 019710 call save_cont_pointers 
-0x4dbc 019711 call send_connection_sdp_res 
-0x4dbd 019712 call l2cap_get_signal_tx_buff 
-0x4dbe 019714 setarg 0x000c 
-0x4dbf 019715 istore 2 ,contw 
-0x4dc0 019716 force l2cap_signal_channel ,pdata 
-0x4dc1 019717 istore 2 ,contw 
-0x4dc2 019718 branch l2cap_rx_reset_state 
-:      019722 l2cap_reset_sdp_map:
-0x4dc3 019723 bpatchx patch21_3 ,mem_patch21 
-0x4dc4 019724 fetch 2 ,mem_sdp_tx_pkt_length 
-0x4dc5 019725 increase 4 ,pdata 
-0x4dc6 019726 rshift4 pdata ,pdata 
-0x4dc7 019727 rshift3 pdata ,pdata 
-0x4dc8 019728 add pdata ,1 ,temp 
-0x4dc9 019729 arg mem_tx_fifo3 ,contr 
-0x4dca 019730 ifetch 3 ,contr 
-0x4dcb 019731 rtn blank 
-0x4dcc 019732 store 3 ,mem_tx_fifo_map_temp 
-0x4dcd 019733 fetch 1 ,mem_tx_fifo_map_temp 
-0x4dce 019734 copy pdata ,rega 
-0x4dcf 019735 call check_l2cap_map 
-0x4dd0 019736 copy regb ,pdata 
-0x4dd1 019737 store 1 ,mem_tx_fifo3 
-0x4dd2 019738 rtn 
-:      019740 check_l2cap_map:
-0x4dd3 019741 arg 0 ,queue 
-0x4dd4 019742 arg 0 ,regb 
-:      019744 check_l2cap_map_loop:
-0x4dd5 019745 sub queue ,7 ,null 
-0x4dd6 019746 nrtn positive 
-0x4dd7 019747 qisolate1 rega 
-0x4dd8 019748 branch check_l2cap_map_used ,true 
-0x4dd9 019749 branch check_l2cap_map_used2 
-:      019751 check_l2cap_map_used:
-0x4dda 019752 copy temp ,pdata 
-0x4ddb 019753 branch check_l2cap_map_used2 ,blank 
-0x4ddc 019754 qset1 regb 
-0x4ddd 019755 increase -1 ,temp 
-:      019757 check_l2cap_map_used2:
-0x4dde 019758 increase 1 ,queue 
-0x4ddf 019759 branch check_l2cap_map_loop 
-:      019761 l2cap_call_proc_sdp:
-0x4de0 019762 call l2cap_malloc_is_fifo_empty 
-0x4de1 019763 nrtn blank 
-0x4de2 019764 call l2cap_check_map 
-0x4de3 019765 nrtn blank 
-0x4de4 019766 call l2cap_malloc_sdp_channel 
-0x4de5 019767 call sdp_process 
-0x4de6 019768 call l2cap_reset_sdp_map 
-0x4de7 019769 branch l2cap_call_proc_sdp_common 
-:      019772 ml2cap_call_proc_sdp:
-0x4de8 019773 call l2cap_malloc_is_fifo_empty 
-0x4de9 019774 nrtn blank 
-0x4dea 019775 call l2cap_malloc_sdp_channel 
-0x4deb 019776 call sdp_process 
-:      019777 l2cap_call_proc_sdp_common:
-0x4dec 019778 call l2cap_get_sdp_tx_buff 
-0x4ded 019779 fetch 2 ,mem_sdp_tx_pkt_length 
-0x4dee 019780 branch l2cap_call_proc_no_reply ,blank 
-0x4def 019781 istore 2 ,contw 
-0x4df0 019782 fetch 2 ,mem_sdp_remote_cid 
-0x4df1 019783 istore 2 ,contw 
-0x4df2 019784 branch l2cap_rx_reset_state 
-:      019786 l2cap_call_proc_hid:
-0x4df3 019787 call hid_rx_process 
-0x4df4 019788 branch l2cap_rx_reset_state 
-:      019790 l2cap_call_proc_rfcomm:
-0x4df5 019791 bpatchx patch21_4 ,mem_patch21 
-0x4df6 019792 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
-0x4df7 019793 call rfcomm_rx_process 
-0x4df8 019794 fetch 1 ,mem_rfcomm_malloc_fail_flag 
-0x4df9 019795 rtneq rfcomm_malloc_fail 
-0x4dfa 019796 branch l2cap_rx_reset_state 
-:      019797 l2cap_call_proc_no_reply:
-0x4dfb 019798 call l2cap_malloc_discard 
-:      019800 l2cap_rx_reset_state:
-0x4dfc 019801 setarg 0 
-0x4dfd 019802 store 2 ,mem_l2cap_rx_pkt_length 
-0x4dfe 019803 store 2 ,mem_l2cap_rx_cid 
-0x4dff 019804 jam l2cap_rx_done ,mem_l2cap_rx_done 
-0x4e00 019805 rtn 
-:      019807 l2cap_process_signal_pkt:
-0x4e01 019808 bpatchx patch21_5 ,mem_patch21 
-0x4e02 019809 call l2cap_get_signal_tx_payload 
-0x4e03 019810 force 0 ,regb 
-0x4e04 019811 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x4e05 019812 copy pdata ,regc 
-0x4e06 019813 fetch 2 ,mem_l2cap_payload_ptr 
-0x4e07 019814 iforce contr 
-:      019815 l2cap_process_signal_pkt_loop:
-0x4e08 019816 call l2cap_process_one_signal 
-0x4e09 019817 deposit regc 
-0x4e0a 019818 increase -4 ,regc 
-0x4e0b 019819 increase -4 ,pdata 
-0x4e0c 019820 nbranch l2cap_process_signal_pkt_loop ,blank 
-0x4e0d 019821 copy regb ,pdata 
-0x4e0e 019822 store 2 ,mem_l2cap_signal_tx_length 
-0x4e0f 019823 rtn 
-:      019825 l2cap_process_one_signal:
-0x4e10 019826 bpatchx patch21_6 ,mem_patch21 
-0x4e11 019827 ifetch 1 ,contr 
-0x4e12 019828 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
-0x4e13 019829 beq signal_connect_req ,l2cap_proc_signal_connect_req 
-0x4e14 019830 beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
-0x4e15 019831 beq signal_config_req ,l2cap_proc_signal_config_req 
-0x4e16 019832 beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
-0x4e17 019833 beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
-0x4e18 019834 beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
-0x4e19 019835 beq signal_echo_req ,l2cap_proc_signal_echo_req 
-0x4e1a 019836 beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
-0x4e1b 019837 beq signal_info_req ,l2cap_proc_signal_info_req 
-0x4e1c 019838 beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
-0x4e1d 019839 call l2cap_reject_command 
-:      019840 l2cap_process_one_signal_rtn:
-0x4e1e 019841 rtn 
-:      019843 l2cap_proc_signal_info_req:
-0x4e1f 019844 ifetch 1 ,contr 
-0x4e20 019845 copy pdata ,queue 
-0x4e21 019846 ifetch 2 ,contr 
-0x4e22 019847 copy pdata ,rega 
-0x4e23 019848 copy regc ,pdata 
-0x4e24 019849 isub rega ,regc 
-0x4e25 019850 setarg signal_info_rsp 
-0x4e26 019851 istore 1 ,contw 
-0x4e27 019852 copy queue ,pdata 
-0x4e28 019853 istore 1 ,contw 
-0x4e29 019854 ifetch 2 ,contr 
-:      019855 l2cap_proc_signal_info_req_reply:
-0x4e2a 019856 beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
-0x4e2b 019857 beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
-0x4e2c 019858 rtn 
-:      019859 l2cap_proc_signal_info_req_ext:
-0x4e2d 019860 setarg 0x020008 
-0x4e2e 019861 istore 6 ,contw 
-0x4e2f 019862 setarg 0x0280 
-0x4e30 019863 istore 4 ,contw 
-0x4e31 019864 force 12 ,pdata 
-0x4e32 019865 branch l2cap_proc_signal_info_req_common 
-:      019866 l2cap_proc_signal_info_req_fix:
-0x4e33 019867 setarg 0x3000c 
-0x4e34 019868 istore 6 ,contw 
-0x4e35 019869 setarg 0x0006 
-0x4e36 019870 istore 8 ,contw 
-0x4e37 019871 force 16 ,pdata 
-:      019872 l2cap_proc_signal_info_req_common:
-0x4e38 019873 iadd regb ,regb 
-0x4e39 019874 branch l2cap_process_one_signal_rtn 
-:      019876 ml2cap_proc_signal_info_req:
-0x4e3a 019877 ifetch 1 ,contr 
-0x4e3b 019878 copy pdata ,queue 
-0x4e3c 019879 ifetch 2 ,contr 
-0x4e3d 019880 copy pdata ,rega 
-0x4e3e 019881 ifetch 2 ,contr 
-0x4e3f 019882 store 2 ,mem_temp 
-0x4e40 019883 copy regc ,pdata 
-0x4e41 019884 isub rega ,regc 
-0x4e42 019885 call l2cap_get_signal_tx_payload 
-0x4e43 019886 setarg signal_info_rsp 
-0x4e44 019887 istore 1 ,contw 
-0x4e45 019888 copy queue ,pdata 
-0x4e46 019889 istore 1 ,contw 
-0x4e47 019890 fetch 2 ,mem_temp 
-0x4e48 019891 branch l2cap_proc_signal_info_req_reply 
-:      019895 l2cap_proc_signal_cmd_reject:
-0x4e49 019896 ifetch 1 ,contr 
-0x4e4a 019897 copy pdata ,queue 
-0x4e4b 019898 ifetch 2 ,contr 
-0x4e4c 019899 copy pdata ,rega 
-0x4e4d 019900 iadd contr ,contr 
-0x4e4e 019901 copy regc ,pdata 
-0x4e4f 019902 isub rega ,regc 
-:      019903 l2cap_proc_signal_cmd_reject_rtn:
-0x4e50 019904 branch l2cap_process_one_signal_rtn 
-:      019906 l2cap_proc_signal_connect_req:
-0x4e51 019907 call save_cont_pointers 
-0x4e52 019910 call load_cont_pointers 
-0x4e53 019911 arg 0 ,debug 
-0x4e54 019912 ifetch 1 ,contr 
-0x4e55 019913 copy pdata ,queue 
-0x4e56 019914 ifetch 2 ,contr 
-0x4e57 019915 copy pdata ,rega 
-0x4e58 019916 ifetch 2 ,contr 
-0x4e59 019917 copy pdata ,temp 
-0x4e5a 019918 ifetch 2 ,contr 
-0x4e5b 019919 copy pdata ,timeup 
-0x4e5c 019920 bpatchx patch21_7 ,mem_patch21 
-0x4e5d 019921 copy temp ,pdata 
-0x4e5e 019922 beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
-0x4e5f 019923 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
-0x4e60 019924 beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
-0x4e61 019925 beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
-0x4e62 019926 call l2cap_reject_command 
-0x4e63 019927 branch l2cap_proc_signal_connect_req_rtn 
-:      019929 l2cap_proc_signal_connect_req_sdp:
-0x4e64 019930 call save_cont_pointers 
-0x4e65 019931 arg l2cap_sdp_channel ,temp 
-0x4e66 019932 fetch 2 ,mem_sdp_remote_cid 
-0x4e67 019933 nbranch already_connected ,blank 
-0x4e68 019934 copy timeup ,pdata 
-0x4e69 019935 store 2 ,mem_sdp_remote_cid 
-0x4e6a 019936 copy clkn_bt ,pdata 
-0x4e6b 019937 store 4 ,mem_l2cap_sdpres_delay_time 
-0x4e6c 019938 call store_l2cap_req_param 
-0x4e6d 019939 branch send_connection_pending 
-:      019941 store_l2cap_req_param:
-0x4e6e 019942 storet 2 ,mem_psm 
-0x4e6f 019943 deposit timeup 
-0x4e70 019944 store 2 ,mem_scid 
-0x4e71 019945 deposit rega 
-0x4e72 019946 store 2 ,mem_cmd_length 
-0x4e73 019947 deposit regb 
-0x4e74 019948 store 2 ,mem_tt2 
-0x4e75 019949 deposit regc 
-0x4e76 019950 store 2 ,mem_tt3 
-0x4e77 019951 deposit queue 
-0x4e78 019952 store 2 ,mem_id 
-0x4e79 019953 rtn 
-:      019955 restore_l2cap_req_param:
-0x4e7a 019956 fetcht 2 ,mem_psm 
-0x4e7b 019957 fetch 2 ,mem_scid 
-0x4e7c 019958 copy pdata ,timeup 
-0x4e7d 019959 fetch 2 ,mem_cmd_length 
-0x4e7e 019960 copy pdata ,rega 
-0x4e7f 019961 fetch 2 ,mem_tt2 
-0x4e80 019962 copy pdata ,regb 
-0x4e81 019963 fetch 2 ,mem_tt3 
-0x4e82 019964 copy pdata ,regc 
-0x4e83 019965 fetch 2 ,mem_id 
-0x4e84 019966 copy pdata ,queue 
-0x4e85 019967 rtn 
-:      019969 l2cap_proc_signal_connect_req_rfcomm:
-0x4e86 019970 call save_cont_pointers 
-0x4e87 019971 setarg l2cap_rfcomm_channel 
-0x4e88 019972 arg l2cap_rfcomm_channel ,temp 
-0x4e89 019973 fetch 2 ,mem_rfcomm_remote_cid 
-0x4e8a 019974 nbranch already_connected ,blank 
-0x4e8b 019975 copy timeup ,pdata 
-0x4e8c 019976 store 2 ,mem_rfcomm_remote_cid 
-0x4e8d 019977 fetch 1 ,mem_rfcomm_state 
-0x4e8e 019978 set1 l2cap_channel_state_conn_req ,pdata 
-0x4e8f 019979 set1 l2cap_channel_state_conn_res ,pdata 
-0x4e90 019980 store 1 ,mem_rfcomm_state 
-0x4e91 019981 branch send_connection_res 
-:      019982 l2cap_proc_signal_connect_req_hid_ctrl:
-0x4e92 019983 call save_cont_pointers 
-0x4e93 019984 arg l2cap_hid_control_channel ,temp 
-0x4e94 019985 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4e95 019986 nbranch already_connected ,blank 
-0x4e96 019987 copy timeup ,pdata 
-0x4e97 019988 store 2 ,mem_hid_ctrl_remote_cid 
-0x4e98 019989 fetch 1 ,mem_hid_control_state 
-0x4e99 019990 set1 l2cap_channel_state_conn_req ,pdata 
-0x4e9a 019991 set1 l2cap_channel_state_conn_res ,pdata 
-0x4e9b 019992 store 1 ,mem_hid_control_state 
-0x4e9c 019993 branch send_connection_res 
-:      019994 l2cap_proc_signal_connect_req_hid_int:
-0x4e9d 019995 call save_cont_pointers 
-0x4e9e 019996 deposit clke 
-0x4e9f 019997 arg l2cap_hid_interrupt_channel ,temp 
-0x4ea0 019998 fetch 2 ,mem_hid_int_remote_cid 
-0x4ea1 019999 nbranch already_connected ,blank 
-0x4ea2 020000 copy timeup ,pdata 
-0x4ea3 020001 store 2 ,mem_hid_int_remote_cid 
-0x4ea4 020002 fetch 1 ,mem_hid_interrupt_state 
-0x4ea5 020003 set1 l2cap_channel_state_conn_req ,pdata 
-0x4ea6 020004 set1 l2cap_channel_state_conn_res ,pdata 
-0x4ea7 020005 store 1 ,mem_hid_interrupt_state 
-0x4ea8 020006 branch send_connection_res 
-:      020008 send_connection_pending:
-0x4ea9 020009 setarg l2cap_connect_pending 
-0x4eaa 020010 store 2 ,meml2cap_t1 
-0x4eab 020011 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
-0x4eac 020012 branch send_connection_res0 
-:      020013 send_connection_sdp_res:
-0x4ead 020014 fetch 1 ,mem_sdp_state 
-0x4eae 020015 set1 l2cap_channel_state_conn_req ,pdata 
-0x4eaf 020016 set1 l2cap_channel_state_conn_res ,pdata 
-0x4eb0 020017 store 1 ,mem_sdp_state 
-:      020018 send_connection_res:
-0x4eb1 020019 setarg l2cap_connect_successful 
-0x4eb2 020020 store 2 ,meml2cap_t1 
-:      020021 send_connection_res0:
-0x4eb3 020022 bpatchx patch22_0 ,mem_patch22 
-0x4eb4 020023 call load_cont_pointers 
-0x4eb5 020024 setarg signal_connect_rsp 
-0x4eb6 020025 istore 1 ,contw 
-0x4eb7 020026 copy queue ,pdata 
-0x4eb8 020027 istore 1 ,contw 
-0x4eb9 020028 setarg 0x0008 
-0x4eba 020029 istore 2 ,contw 
-0x4ebb 020030 copy temp ,pdata 
-0x4ebc 020031 istore 2 ,contw 
-0x4ebd 020032 copy timeup ,pdata 
-0x4ebe 020033 istore 2 ,contw 
-0x4ebf 020034 fetch 2 ,meml2cap_t1 
-0x4ec0 020035 beq l2cap_connect_pending ,connect_pending 
-0x4ec1 020036 isolate0 0 ,debug 
-0x4ec2 020037 branch connect_suc ,true 
-0x4ec3 020038 setarg l2cap_connect_refused_no_resources 
-:      020039 connect_suc:
-0x4ec4 020040 istore 2 ,contw 
-0x4ec5 020041 force 0x0000 ,pdata 
-0x4ec6 020042 istore 2 ,contw 
-0x4ec7 020043 setarg 12 
-0x4ec8 020044 branch connect_req_update_byte_counts 
-:      020045 connect_pending:
-0x4ec9 020046 istore 2 ,contw 
-0x4eca 020047 force 0x0002 ,pdata 
-0x4ecb 020048 istore 2 ,contw 
-0x4ecc 020049 setarg 12 
-0x4ecd 020050 branch connect_req_update_byte_counts 
-:      020052 already_connected:
-0x4ece 020053 set1 0 ,debug 
-0x4ecf 020054 branch send_connection_res 
-:      020055 connect_req_update_byte_counts:
-0x4ed0 020056 iadd regb ,regb 
-0x4ed1 020057 copy regc ,pdata 
-0x4ed2 020058 isub rega ,regc 
-0x4ed3 020059 branch l2cap_proc_signal_connect_req_rtn 
-:      020060 l2cap_proc_signal_connect_req_rtn:
-0x4ed4 020061 branch l2cap_process_one_signal_rtn 
-:      020063 l2cap_proc_signal_connect_rsp:
-0x4ed5 020064 ifetch 1 ,contr 
-0x4ed6 020065 copy pdata ,queue 
-0x4ed7 020066 ifetch 2 ,contr 
-0x4ed8 020067 copy pdata ,rega 
-0x4ed9 020068 copy regc ,pdata 
-0x4eda 020069 isub rega ,regc 
-0x4edb 020070 ifetch 2 ,contr 
-0x4edc 020071 copy pdata ,timeup 
-0x4edd 020072 ifetch 2 ,contr 
-0x4ede 020073 copy pdata ,temp 
-0x4edf 020074 bpatchx patch22_1 ,mem_patch22 
-0x4ee0 020075 setarg l2cap_sdp_channel 
-0x4ee1 020076 isub temp ,null 
-0x4ee2 020077 branch l2cap_proc_signal_connect_rsp_sdp ,zero 
-0x4ee3 020078 setarg l2cap_rfcomm_channel 
-0x4ee4 020079 isub temp ,null 
-0x4ee5 020080 branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
-0x4ee6 020081 setarg l2cap_hid_control_channel 
-0x4ee7 020082 isub temp ,null 
-0x4ee8 020083 branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
-0x4ee9 020084 setarg l2cap_hid_interrupt_channel 
-0x4eea 020085 isub temp ,null 
-0x4eeb 020086 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
-0x4eec 020087 rtn 
-:      020089 l2cap_proc_signal_connect_rsp_sdp:
-0x4eed 020090 copy timeup ,pdata 
-0x4eee 020091 store 2 ,mem_sdp_remote_cid 
-0x4eef 020092 fetch 1 ,mem_sdp_state 
-0x4ef0 020093 set1 l2cap_channel_state_conn_res ,pdata 
-0x4ef1 020094 store 1 ,mem_sdp_state 
-0x4ef2 020095 branch l2cap_process_one_signal_rtn 
-:      020096 l2cap_proc_signal_connect_rsp_rfcomm:
-0x4ef3 020097 copy timeup ,pdata 
-0x4ef4 020098 store 2 ,mem_rfcomm_remote_cid 
-0x4ef5 020099 fetch 1 ,mem_rfcomm_state 
-0x4ef6 020100 set1 l2cap_channel_state_conn_res ,pdata 
-0x4ef7 020101 store 1 ,mem_rfcomm_state 
-0x4ef8 020102 rtn 
-:      020103 l2cap_proc_signal_connect_rsp_hid_int:
-0x4ef9 020104 copy timeup ,pdata 
-0x4efa 020105 store 2 ,mem_hid_ctrl_remote_cid 
-0x4efb 020106 fetch 1 ,mem_hid_interrupt_state 
-0x4efc 020107 set1 l2cap_channel_state_conn_res ,pdata 
-0x4efd 020108 store 1 ,mem_hid_interrupt_state 
-0x4efe 020109 rtn 
-:      020110 l2cap_proc_signal_connect_rsp_hid_ctrl:
-0x4eff 020111 copy timeup ,pdata 
-0x4f00 020112 store 2 ,mem_hid_int_remote_cid 
-0x4f01 020113 fetch 1 ,mem_hid_control_state 
-0x4f02 020114 set1 l2cap_channel_state_conn_res ,pdata 
-0x4f03 020115 store 1 ,mem_hid_control_state 
-0x4f04 020116 rtn 
-:      020118 l2cap_proc_signal_config_req:
-0x4f05 020119 ifetch 1 ,contr 
-0x4f06 020120 copy pdata ,queue 
-0x4f07 020121 ifetch 2 ,contr 
-0x4f08 020122 copy pdata ,rega 
-0x4f09 020123 copy regc ,pdata 
-0x4f0a 020124 isub rega ,regc 
-0x4f0b 020125 ifetch 2 ,contr 
-0x4f0c 020126 copy pdata ,temp 
-0x4f0d 020127 copy temp ,rega 
-0x4f0e 020128 bpatchx patch22_2 ,mem_patch22 
-0x4f0f 020129 setarg l2cap_sdp_channel 
-0x4f10 020130 isub temp ,null 
-0x4f11 020131 branch l2cap_proc_signal_config_req_sdp ,zero 
-0x4f12 020132 setarg l2cap_rfcomm_channel 
-0x4f13 020133 isub temp ,null 
-0x4f14 020134 branch l2cap_proc_signal_config_req_rfcomm ,zero 
-0x4f15 020135 setarg l2cap_hid_control_channel 
-0x4f16 020136 isub temp ,null 
-0x4f17 020137 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
-0x4f18 020138 setarg l2cap_hid_interrupt_channel 
-0x4f19 020139 isub temp ,null 
-0x4f1a 020140 branch l2cap_proc_signal_config_req_hid_int ,zero 
-0x4f1b 020141 branch l2cap_reject_command 
-:      020143 l2cap_proc_signal_config_req_sdp:
-0x4f1c 020144 copy contw ,timeup 
-0x4f1d 020145 fetch 1 ,mem_sdp_state 
-0x4f1e 020146 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f1f 020147 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f20 020149 store 1 ,mem_sdp_state 
-0x4f21 020150 copy timeup ,contw 
-0x4f22 020151 arg l2cap_sdp_channel ,timeup 
-0x4f23 020152 fetch 2 ,mem_sdp_remote_cid 
-0x4f24 020153 copy pdata ,temp 
-0x4f25 020154 branch l2cap_send_config_rsp 
-:      020155 l2cap_proc_signal_config_req_hid_ctrl:
-0x4f26 020156 copy contw ,timeup 
-0x4f27 020157 fetch 1 ,mem_hid_control_state 
-0x4f28 020158 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f29 020159 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f2a 020161 store 1 ,mem_hid_control_state 
-0x4f2b 020162 copy timeup ,contw 
-0x4f2c 020163 arg l2cap_hid_control_channel ,timeup 
-0x4f2d 020164 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4f2e 020165 copy pdata ,temp 
-0x4f2f 020166 branch l2cap_send_config_rsp 
-:      020167 l2cap_proc_signal_config_req_hid_int:
-0x4f30 020168 copy contw ,timeup 
-0x4f31 020169 fetch 1 ,mem_hid_interrupt_state 
-0x4f32 020170 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f33 020171 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f34 020173 store 1 ,mem_hid_interrupt_state 
-0x4f35 020174 copy timeup ,contw 
-0x4f36 020175 arg l2cap_hid_interrupt_channel ,timeup 
-0x4f37 020176 fetch 2 ,mem_hid_int_remote_cid 
-0x4f38 020177 copy pdata ,temp 
-0x4f39 020178 branch l2cap_send_config_rsp 
-:      020179 l2cap_proc_signal_config_req_rfcomm:
-0x4f3a 020180 copy contw ,timeup 
-0x4f3b 020181 fetch 1 ,mem_rfcomm_state 
-0x4f3c 020182 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f3d 020183 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f3e 020185 store 1 ,mem_rfcomm_state 
-0x4f3f 020187 copy timeup ,contw 
-0x4f40 020188 arg l2cap_rfcomm_channel ,timeup 
-0x4f41 020189 fetch 2 ,mem_rfcomm_remote_cid 
-0x4f42 020190 copy pdata ,temp 
-:      020191 l2cap_send_config_rsp:
-0x4f43 020192 bpatchx patch22_3 ,mem_patch22 
-0x4f44 020193 setarg signal_config_rsp 
-0x4f45 020194 istore 1 ,contw 
-0x4f46 020195 copy queue ,pdata 
-0x4f47 020196 istore 1 ,contw 
-0x4f48 020197 setarg 0x0006 
-0x4f49 020198 istore 2 ,contw 
-0x4f4a 020199 copy temp ,pdata 
-0x4f4b 020200 istore 2 ,contw 
-0x4f4c 020201 force 0x00 ,pdata 
-0x4f4d 020202 istore 2 ,contw 
-0x4f4e 020203 force l2cap_config_success ,pdata 
-0x4f4f 020204 istore 2 ,contw 
-0x4f50 020205 force 10 ,pdata 
-0x4f51 020206 iadd regb ,regb 
-0x4f52 020208 storet 2 ,mem_config_req_dest_cid 
-0x4f53 020209 copy queue ,pdata 
-0x4f54 020210 store 1 ,mem_config_identifier 
-0x4f55 020211 force l2cap_sdp_channel ,pdata 
-0x4f56 020212 icompare 0xff ,timeup 
-0x4f57 020213 branch l2cap_send_config_rsp_is_sdp ,true 
-0x4f58 020214 increase 1 ,pdata 
-:      020215 l2cap_send_config_rsp_is_sdp:
-0x4f59 020217 rtn 
-:      020218 l2cap_check_channel_state:
-0x4f5a 020219 disable user 
-0x4f5b 020220 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x4f5c 020221 rtnbit0 l2cap_channel_state_conn_req ,pdata 
-0x4f5d 020222 rtnbit0 l2cap_channel_state_conn_res ,pdata 
-0x4f5e 020223 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x4f5f 020224 copy contr ,contw 
-0x4f60 020225 increase -1 ,contw 
-0x4f61 020226 istore 1 ,contw 
-0x4f62 020227 enable user 
-0x4f63 020228 rtn 
-:      020229 l2cap_send_config_req:
-:      020230 l2cap_send_config_req_sdp:
-0x4f64 020231 fetch 1 ,mem_sdp_state 
-0x4f65 020232 call l2cap_check_channel_state 
-0x4f66 020233 nbranch l2cap_send_config_req_rfcomm ,user 
-0x4f67 020234 jam l2cap_sdp_channel ,mem_send_config_req 
-0x4f68 020235 fetch 2 ,mem_sdp_remote_cid 
-0x4f69 020236 store 2 ,mem_config_req_dest_cid 
-0x4f6a 020237 branch l2cap_generate_config_req 
-:      020238 l2cap_send_config_req_rfcomm:
-0x4f6b 020239 fetch 1 ,mem_rfcomm_state 
-0x4f6c 020240 call l2cap_check_channel_state 
-0x4f6d 020241 nbranch l2cap_send_config_req_hid_ctrl ,user 
-0x4f6e 020242 jam l2cap_rfcomm_channel ,mem_send_config_req 
-0x4f6f 020243 fetch 2 ,mem_rfcomm_remote_cid 
-0x4f70 020244 store 2 ,mem_config_req_dest_cid 
-0x4f71 020245 branch l2cap_generate_config_req 
-:      020246 l2cap_send_config_req_hid_ctrl:
-0x4f72 020247 fetch 1 ,mem_hid_control_state 
-0x4f73 020248 call l2cap_check_channel_state 
-0x4f74 020249 nbranch l2cap_send_config_req_hid_int ,user 
-0x4f75 020250 jam l2cap_hid_control_channel ,mem_send_config_req 
-0x4f76 020251 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4f77 020252 store 2 ,mem_config_req_dest_cid 
-0x4f78 020253 branch l2cap_generate_config_req 
-:      020254 l2cap_send_config_req_hid_int:
-0x4f79 020255 fetch 1 ,mem_hid_interrupt_state 
-0x4f7a 020256 call l2cap_check_channel_state 
-0x4f7b 020257 nrtn user 
-0x4f7c 020258 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
-0x4f7d 020259 fetch 2 ,mem_hid_int_remote_cid 
-0x4f7e 020260 store 2 ,mem_config_req_dest_cid 
-:      020263 l2cap_generate_config_req:
-0x4f7f 020264 bpatchx patch22_4 ,mem_patch22 
-0x4f80 020265 call l2cap_get_req_id 
-0x4f81 020266 call l2cap_malloc_signal_channel 
-0x4f82 020267 force 0 ,regb 
-0x4f83 020268 call l2cap_get_signal_tx_payload 
-0x4f84 020269 force signal_config_req ,pdata 
-0x4f85 020270 istore 1 ,contw 
-0x4f86 020271 fetch 1 ,mem_ml2cap_comm_id 
-0x4f87 020272 istore 1 ,contw 
-0x4f88 020273 setarg 0x0008 
-0x4f89 020274 istore 2 ,contw 
-0x4f8a 020275 fetch 2 ,mem_config_req_dest_cid 
-0x4f8b 020276 istore 2 ,contw 
-0x4f8c 020277 setarg 0x0000 
-0x4f8d 020278 istore 2 ,contw 
-0x4f8e 020279 force 1 ,pdata 
-0x4f8f 020280 istore 1 ,contw 
-0x4f90 020281 force 2 ,pdata 
-0x4f91 020282 istore 1 ,contw 
-0x4f92 020283 fetch 1 ,mem_send_config_req 
-0x4f93 020284 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
-0x4f94 020285 setarg l2cap_config_mtu_sdp 
-0x4f95 020286 istore 2 ,contw 
-0x4f96 020287 branch l2cap_generate_config_req_done 
-:      020288 l2cap_generate_config_req_rfcomm:
-0x4f97 020289 setarg l2cap_config_mtu_rfcomm 
-0x4f98 020290 istore 2 ,contw 
-:      020291 l2cap_generate_config_req_done:
-0x4f99 020292 arg 0x0c ,temp 
-0x4f9a 020293 storet 2 ,mem_l2cap_signal_tx_length 
-0x4f9b 020294 call l2cap_get_signal_tx_buff 
-0x4f9c 020295 fetch 2 ,mem_l2cap_signal_tx_length 
-0x4f9d 020296 istore 2 ,contw 
-0x4f9e 020297 force l2cap_signal_channel ,pdata 
-0x4f9f 020298 istore 2 ,contw 
-0x4fa0 020299 jam 0 ,mem_send_config_req 
-:      020300 l2cap_proc_signal_config_req_rtn:
-0x4fa1 020301 branch l2cap_process_one_signal_rtn 
-:      020303 l2cap_proc_signal_config_rsp:
-0x4fa2 020304 increase 1 ,contr 
-0x4fa3 020305 ifetch 2 ,contr 
-0x4fa4 020306 copy pdata ,rega 
-0x4fa5 020307 copy regc ,pdata 
-0x4fa6 020308 isub rega ,regc 
-0x4fa7 020309 ifetch 2 ,contr 
-0x4fa8 020310 copy pdata ,rega 
-0x4fa9 020311 bpatchx patch22_5 ,mem_patch22 
-0x4faa 020312 setarg l2cap_sdp_channel 
-0x4fab 020313 isub rega ,null 
-0x4fac 020314 branch l2cap_proc_signal_config_rsp_sdp ,zero 
-0x4fad 020315 setarg l2cap_rfcomm_channel 
-0x4fae 020316 isub rega ,null 
-0x4faf 020317 branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
-0x4fb0 020318 setarg l2cap_hid_control_channel 
-0x4fb1 020319 isub rega ,null 
-0x4fb2 020320 branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
-0x4fb3 020321 setarg l2cap_hid_interrupt_channel 
-0x4fb4 020322 isub rega ,null 
-0x4fb5 020323 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
-0x4fb6 020324 increase 2 ,contr 
-0x4fb7 020325 ifetch 2 ,contr 
-0x4fb8 020326 iforce null 
-0x4fb9 020327 branch l2cap_process_one_signal_rtn 
-:      020328 l2cap_proc_signal_config_rsp_sdp:
-0x4fba 020329 fetch 1 ,mem_sdp_state 
-0x4fbb 020330 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fbc 020331 store 1 ,mem_sdp_state 
-0x4fbd 020332 branch l2cap_process_one_signal_rtn 
-:      020333 l2cap_proc_signal_config_rsp_rfcomm:
-0x4fbe 020334 fetch 1 ,mem_rfcomm_state 
-0x4fbf 020335 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fc0 020336 store 1 ,mem_rfcomm_state 
-0x4fc1 020337 branch l2cap_process_one_signal_rtn 
-:      020338 l2cap_proc_signal_config_rsp_hid_ctrl:
-0x4fc2 020339 fetch 1 ,mem_hid_control_state 
-0x4fc3 020340 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fc4 020341 store 1 ,mem_hid_control_state 
-0x4fc5 020342 branch l2cap_process_one_signal_rtn 
-:      020343 l2cap_proc_signal_config_rsp_hid_int:
-0x4fc6 020344 fetch 1 ,mem_hid_interrupt_state 
-0x4fc7 020345 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fc8 020346 store 1 ,mem_hid_interrupt_state 
-0x4fc9 020347 jam bt_evt_hid_connected ,mem_fifo_temp 
-0x4fca 020348 branch ui_ipc_send_event 
-:      020352 l2cap_proc_signal_disconnect_req:
-0x4fcb 020353 ifetch 1 ,contr 
-0x4fcc 020354 copy pdata ,queue 
-0x4fcd 020355 ifetch 2 ,contr 
-0x4fce 020356 copy pdata ,rega 
-0x4fcf 020357 copy regc ,pdata 
-0x4fd0 020358 isub rega ,regc 
-0x4fd1 020359 ifetch 2 ,contr 
-0x4fd2 020360 copy pdata ,rega 
-0x4fd3 020361 ifetch 2 ,contr 
-0x4fd4 020362 copy pdata ,timeup 
-0x4fd5 020363 copy rega ,temp 
-0x4fd6 020364 call save_cont_pointers 
-0x4fd7 020365 bpatchx patch22_6 ,mem_patch22 
-0x4fd8 020366 setarg l2cap_sdp_channel 
-0x4fd9 020367 isub temp ,null 
-0x4fda 020368 branch l2cap_proc_signal_disconnect_req_sdp ,zero 
-0x4fdb 020369 setarg l2cap_rfcomm_channel 
-0x4fdc 020370 isub temp ,null 
-0x4fdd 020371 branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
-0x4fde 020372 setarg l2cap_hid_control_channel 
-0x4fdf 020373 isub temp ,null 
-0x4fe0 020374 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
-0x4fe1 020375 setarg l2cap_hid_interrupt_channel 
-0x4fe2 020376 isub temp ,null 
-0x4fe3 020377 branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
-0x4fe4 020378 call l2cap_reject_command 
-0x4fe5 020379 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020380 l2cap_proc_signal_disconnect_req_hid_ctrl:
-0x4fe6 020381 copy timeup ,temp 
-0x4fe7 020382 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4fe8 020383 isub temp ,null 
-0x4fe9 020384 branch l2cap_disconnect_hid_control_now ,zero 
-0x4fea 020385 call l2cap_reject_command 
-0x4feb 020386 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020387 l2cap_proc_signal_disconnect_req_hid_int:
-0x4fec 020388 copy timeup ,temp 
-0x4fed 020389 fetch 2 ,mem_hid_int_remote_cid 
-0x4fee 020390 isub temp ,null 
-0x4fef 020391 branch l2cap_disconnect_hid_interrupt_now ,zero 
-0x4ff0 020392 call l2cap_reject_command 
-0x4ff1 020393 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020395 l2cap_proc_signal_disconnect_req_sdp:
-0x4ff2 020396 copy timeup ,temp 
-0x4ff3 020397 fetch 2 ,mem_sdp_remote_cid 
-0x4ff4 020398 isub temp ,null 
-0x4ff5 020399 branch l2cap_disconnect_sdp_now ,zero 
-0x4ff6 020400 call l2cap_reject_command 
-0x4ff7 020401 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020402 l2cap_disconnect_hid_control_now:
-0x4ff8 020403 call l2cap_reset_hid_ctrl_state 
-0x4ff9 020404 branch l2cap_send_disconnect_rsp_pkt 
-:      020405 l2cap_disconnect_hid_interrupt_now:
-0x4ffa 020406 call l2cap_reset_hid_int_state 
-0x4ffb 020407 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4ffc 020408 branch l2cap_send_disconnect_rsp_pkt ,blank 
-0x4ffd 020416 branch l2cap_send_disconnect_rsp_pkt 
-:      020418 l2cap_disconnect_sdp_now:
-0x4ffe 020419 call l2cap_reset_sdp_channel_state 
-0x4fff 020420 fetch 1 ,mem_upper_sm_ss 
-0x5000 020421 nbranch l2cap_send_disconnect_rsp_pkt ,blank 
-0x5001 020424 branch l2cap_send_disconnect_rsp_pkt 
-:      020425 l2cap_proc_signal_disconnect_req_rfcomm:
-0x5002 020426 copy timeup ,temp 
-0x5003 020427 fetch 2 ,mem_rfcomm_remote_cid 
-0x5004 020428 isub temp ,null 
-0x5005 020429 branch l2cap_disconnect_rfcomm_now ,zero 
-0x5006 020430 call l2cap_reject_command 
-0x5007 020431 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020432 l2cap_disconnect_rfcomm_now:
-0x5008 020433 call l2cap_reset_rfcomm_channel_state 
-0x5009 020434 branch l2cap_send_disconnect_rsp_pkt 
-:      020435 l2cap_send_disconnect_rsp_pkt:
-0x500a 020436 call load_cont_pointers 
-0x500b 020437 setarg signal_disconnect_rsp 
-0x500c 020438 istore 1 ,contw 
-0x500d 020439 copy queue ,pdata 
-0x500e 020440 istore 1 ,contw 
-0x500f 020441 setarg 0x0004 
-0x5010 020442 istore 2 ,contw 
-0x5011 020443 copy rega ,pdata 
-0x5012 020444 istore 2 ,contw 
-0x5013 020445 copy timeup ,pdata 
-0x5014 020446 istore 2 ,contw 
-0x5015 020447 force 8 ,pdata 
-0x5016 020448 branch l2cap_proc_signal_disconnect_req_rtn 
-:      020449 l2cap_proc_signal_disconnect_req_err_rtn:
-0x5017 020450 call load_cont_pointers 
-0x5018 020451 branch l2cap_proc_signal_disconnect_req_rtn 
-:      020452 l2cap_proc_signal_disconnect_req_rtn:
-0x5019 020453 iadd regb ,regb 
-0x501a 020454 branch l2cap_process_one_signal_rtn 
-:      020455 l2cap_proc_signal_disconnect_rsp:
-0x501b 020456 ifetch 1 ,contr 
-0x501c 020457 copy pdata ,queue 
-0x501d 020458 ifetch 2 ,contr 
-0x501e 020459 copy pdata ,rega 
-0x501f 020460 copy regc ,pdata 
-0x5020 020461 isub rega ,regc 
-0x5021 020462 ifetch 2 ,contr 
-0x5022 020463 copy pdata ,timeup 
-0x5023 020464 ifetch 2 ,contr 
-0x5024 020465 copy pdata ,temp 
-0x5025 020466 call save_cont_pointers 
-0x5026 020467 bpatchx patch22_7 ,mem_patch22 
-0x5027 020468 setarg l2cap_sdp_channel 
-0x5028 020469 isub temp ,null 
-0x5029 020470 branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
-0x502a 020471 setarg l2cap_rfcomm_channel 
-0x502b 020472 isub temp ,null 
-0x502c 020473 branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
-0x502d 020474 setarg l2cap_hid_control_channel 
-0x502e 020475 isub temp ,null 
-0x502f 020476 branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
-0x5030 020477 setarg l2cap_hid_interrupt_channel 
-0x5031 020478 isub temp ,null 
-0x5032 020479 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
-0x5033 020480 call l2cap_reject_command 
-0x5034 020481 branch l2cap_proc_signal_disconnect_rsp_err_rtn 
-:      020482 l2cap_proc_signal_disconnect_rsp_sdp:
-0x5035 020483 copy temp ,rega 
-0x5036 020484 copy timeup ,temp 
-0x5037 020485 fetch 2 ,mem_sdp_remote_cid 
-0x5038 020486 isub temp ,null 
-0x5039 020487 call l2cap_reset_sdp_channel_state ,zero 
-0x503a 020488 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020489 l2cap_proc_signal_disconnect_rsp_rfcomm:
-0x503b 020490 copy temp ,rega 
-0x503c 020491 copy timeup ,temp 
-0x503d 020492 fetch 2 ,mem_rfcomm_remote_cid 
-0x503e 020493 isub temp ,null 
-0x503f 020494 call l2cap_reset_rfcomm_channel_state ,zero 
-0x5040 020495 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020496 l2cap_proc_signal_disconnect_rsp_hid_ctrl:
-0x5041 020497 copy temp ,rega 
-0x5042 020498 copy timeup ,temp 
-0x5043 020499 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x5044 020500 isub temp ,null 
-0x5045 020501 call l2cap_reset_hid_ctrl_state ,zero 
-0x5046 020502 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020503 l2cap_proc_signal_disconnect_rsp_hid_int:
-0x5047 020504 copy temp ,rega 
-0x5048 020505 copy timeup ,temp 
-0x5049 020506 fetch 2 ,mem_hid_int_remote_cid 
-0x504a 020507 isub temp ,null 
-0x504b 020508 call l2cap_reset_hid_int_state ,zero 
-0x504c 020509 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020510 l2cap_proc_signal_disconnect_rsp_rtn:
-0x504d 020511 call load_cont_pointers 
-0x504e 020512 branch l2cap_process_one_signal_rtn 
-:      020513 l2cap_proc_signal_disconnect_rsp_err_rtn:
-0x504f 020514 branch l2cap_process_one_signal_rtn 
-:      020517 l2cap_proc_signal_echo_req:
-0x5050 020518 ifetch 1 ,contr 
-0x5051 020519 copy pdata ,queue 
-0x5052 020520 ifetch 2 ,contr 
-0x5053 020521 copy pdata ,rega 
-0x5054 020522 iadd contr ,contr 
-0x5055 020523 setarg 9 
-0x5056 020524 istore 1 ,contw 
-0x5057 020525 copy queue ,pdata 
-0x5058 020526 istore 1 ,contw 
-0x5059 020527 force 0x0000 ,pdata 
-0x505a 020528 istore 2 ,contw 
-0x505b 020529 force 4 ,pdata 
-0x505c 020530 iadd regb ,regb 
-0x505d 020531 copy regc ,pdata 
-0x505e 020532 isub rega ,regc 
-0x505f 020533 branch l2cap_process_one_signal_rtn 
-:      020534 l2cap_proc_signal_echo_rsp:
-0x5060 020535 branch l2cap_process_one_signal_rtn 
-:      020537 l2cap_proc_signal_info_rsp:
-0x5061 020538 branch l2cap_process_one_signal_rtn 
-:      020539 l2cap_reject_command:
-0x5062 020540 force 0 ,regb 
-0x5063 020541 call l2cap_get_signal_tx_payload 
-0x5064 020542 setarg signal_cmd_reject 
-0x5065 020543 istore 1 ,contw 
-0x5066 020544 copy queue ,pdata 
-0x5067 020545 istore 1 ,contw 
-0x5068 020546 setarg 2 
-0x5069 020547 istore 2 ,contw 
-0x506a 020548 setarg cmd_not_understood 
-0x506b 020549 istore 2 ,contw 
-0x506c 020550 increase 6 ,regb 
-0x506d 020551 arg 4 ,regc 
-0x506e 020552 branch l2cap_process_one_signal_rtn 
-:      020556 l2cap_reset_rfcomm_channel_state:
-0x506f 020557 setarg 0 
-0x5070 020558 store 2 ,mem_rfcomm_tx_pkt_length 
-0x5071 020559 store 2 ,mem_rfcomm_remote_cid 
-0x5072 020560 jam 0 ,mem_rfcomm_state 
-0x5073 020561 rtn 
-:      020562 l2cap_reset_sdp_channel_state:
-0x5074 020563 setarg 0 
-0x5075 020564 store 2 ,mem_sdp_tx_pkt_length 
-0x5076 020565 store 2 ,mem_sdp_remote_cid 
-0x5077 020566 jam 0 ,mem_sdp_state 
-0x5078 020567 rtn 
-:      020568 l2cap_reset_hid_ctrl_state:
-0x5079 020569 setarg 0 
-0x507a 020570 store 2 ,mem_hid_ctrl_remote_cid 
-0x507b 020571 jam 0 ,mem_hid_control_state 
-0x507c 020572 fetch 1 ,mem_hid_interrupt_state 
-0x507d 020573 beq 0 ,l2cap_reset_hid_disconnected 
-0x507e 020574 rtn 
-:      020576 l2cap_reset_hid_int_state:
-0x507f 020577 setarg 0 
-0x5080 020578 store 2 ,mem_hid_int_remote_cid 
-0x5081 020579 jam 0 ,mem_hid_interrupt_state 
-0x5082 020580 fetch 1 ,mem_hid_control_state 
-0x5083 020581 beq 0 ,l2cap_reset_hid_disconnected 
-0x5084 020582 rtn 
-:      020584 l2cap_reset_hid_disconnected:
-0x5085 020585 jam bt_evt_hid_disconnected ,mem_fifo_temp 
-0x5086 020586 branch ui_ipc_send_event 
-:      020588 l2cap_disconnect_interrupt_req:
-0x5087 020589 fetch 1 ,mem_control_tasks 
-0x5088 020590 set0 l2cap_disconnect_interrupt ,pdata 
-0x5089 020591 store 1 ,mem_control_tasks 
-0x508a 020592 fetch 2 ,mem_hid_int_remote_cid 
-0x508b 020593 rtn blank 
-0x508c 020594 call l2cap_malloc_signal_channel 
-0x508d 020595 fetch 2 ,mem_hid_int_remote_cid 
-0x508e 020596 copy pdata ,rega 
-0x508f 020597 force l2cap_hid_interrupt_channel ,regb 
-0x5090 020598 branch l2cap_generate_disconnect_req 
-:      020599 l2cap_disconnect_control_req:
-0x5091 020600 fetch 1 ,mem_control_tasks 
-0x5092 020601 set0 l2cap_disconnect_control ,pdata 
-0x5093 020602 store 1 ,mem_control_tasks 
-0x5094 020603 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x5095 020604 rtn blank 
-0x5096 020605 call l2cap_malloc_signal_channel 
-0x5097 020606 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x5098 020607 copy pdata ,rega 
-0x5099 020608 force l2cap_hid_control_channel ,regb 
-:      020609 l2cap_generate_disconnect_req:
-0x509a 020610 call l2cap_get_req_id 
-0x509b 020611 call l2cap_get_signal_tx_payload 
-0x509c 020612 force signal_disconnect_req ,pdata 
-0x509d 020613 istore 1 ,contw 
-0x509e 020614 fetch 1 ,mem_ml2cap_comm_id 
-0x509f 020615 istore 1 ,contw 
-0x50a0 020616 setarg 0x0004 
-0x50a1 020617 istore 2 ,contw 
-0x50a2 020618 copy rega ,pdata 
-0x50a3 020619 istore 2 ,contw 
-0x50a4 020620 copy regb ,pdata 
-0x50a5 020621 istore 2 ,contw 
-0x50a6 020622 force 0x08 ,temp 
-0x50a7 020623 branch ml2cap_send_signal 
-:      020625 ml2cap_send_signal_connect_req:
-0x50a8 020626 bpatchx patch23_0 ,mem_patch23 
-0x50a9 020627 call l2cap_get_req_id 
-0x50aa 020628 call l2cap_get_signal_tx_payload 
-0x50ab 020629 setarg signal_connect_req 
-0x50ac 020630 istore 1 ,contw 
-0x50ad 020631 fetch 1 ,mem_ml2cap_comm_id 
-0x50ae 020632 istore 1 ,contw 
-0x50af 020633 setarg 0x0004 
-0x50b0 020634 istore 2 ,contw 
-0x50b1 020635 copy temp ,pdata 
-0x50b2 020636 istore 2 ,contw 
-0x50b3 020637 copy timeup ,pdata 
-0x50b4 020638 istore 2 ,contw 
-0x50b5 020639 arg 8 ,temp 
-0x50b6 020640 branch ml2cap_send_signal 
-:      020641 ml2cap_send_signal_config_req:
-0x50b7 020642 bpatchx patch23_1 ,mem_patch23 
-0x50b8 020643 call l2cap_get_req_id 
-0x50b9 020644 call l2cap_get_signal_tx_payload 
-0x50ba 020645 setarg signal_config_req 
-0x50bb 020646 istore 1 ,contw 
-0x50bc 020647 fetch 1 ,mem_ml2cap_comm_id 
-0x50bd 020648 istore 1 ,contw 
-0x50be 020649 setarg 0x0008 
-0x50bf 020650 istore 2 ,contw 
-0x50c0 020652 copy temp ,pdata 
-0x50c1 020654 istore 2 ,contw 
-0x50c2 020655 setarg 0x0000 
-0x50c3 020656 istore 2 ,contw 
-0x50c4 020657 setarg 0x01 
-0x50c5 020658 istore 1 ,contw 
-0x50c6 020659 setarg 0x02 
-0x50c7 020660 istore 1 ,contw 
-0x50c8 020661 setarg l2cap_config_mtu_rfcomm 
-0x50c9 020662 istore 2 ,contw 
-0x50ca 020663 arg 0xc ,temp 
-0x50cb 020664 branch ml2cap_send_signal 
-:      020665 ml2cap_send_signal_disconn_req:
-0x50cc 020666 bpatchx patch23_2 ,mem_patch23 
-0x50cd 020667 call l2cap_get_req_id 
-0x50ce 020668 call l2cap_get_signal_tx_payload 
-0x50cf 020669 setarg signal_disconnect_req 
-0x50d0 020670 istore 1 ,contw 
-0x50d1 020671 fetch 1 ,mem_ml2cap_comm_id 
-0x50d2 020672 increase 1 ,pdata 
-0x50d3 020673 copy contw ,rega 
-0x50d4 020674 store 1 ,mem_ml2cap_comm_id 
-0x50d5 020675 copy rega ,contw 
-0x50d6 020676 istore 1 ,contw 
-0x50d7 020677 setarg 0x0004 
-0x50d8 020678 istore 2 ,contw 
-0x50d9 020679 copy temp ,pdata 
-0x50da 020680 istore 2 ,contw 
-0x50db 020681 copy timeup ,pdata 
-0x50dc 020682 istore 2 ,contw 
-0x50dd 020683 arg 0x8 ,temp 
-:      020686 ml2cap_send_signal:
-0x50de 020687 storet 2 ,mem_l2cap_signal_tx_length 
-0x50df 020688 copy temp ,pdata 
-0x50e0 020689 branch l2cap_malloc_discard ,blank 
-0x50e1 020690 call l2cap_get_signal_tx_buff 
-0x50e2 020691 fetch 2 ,mem_l2cap_signal_tx_length 
-0x50e3 020692 istore 2 ,contw 
-0x50e4 020693 force l2cap_signal_channel ,pdata 
-0x50e5 020694 istore 2 ,contw 
-0x50e6 020695 rtn 
-:      020697 msdp_send_req_done:
-0x50e7 020698 fetch 2 ,mem_sdp_tx_pkt_length 
-0x50e8 020699 branch assert ,blank 
-0x50e9 020700 call l2cap_get_sdp_tx_buff 
-0x50ea 020701 fetch 2 ,mem_sdp_tx_pkt_length 
-0x50eb 020702 istore 2 ,contw 
-0x50ec 020703 fetch 2 ,mem_sdp_remote_cid 
-0x50ed 020704 istore 2 ,contw 
-0x50ee 020705 rtn 
-:      020706 ml2cap_rx_multiplexing:
-0x50ef 020707 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x50f0 020708 branch l2cap_rx_reset_state ,blank 
-0x50f1 020709 bpatchx patch23_3 ,mem_patch23 
-0x50f2 020710 fetch 1 ,mem_l2cap_rx_cid 
-0x50f3 020711 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
-0x50f4 020712 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
-0x50f5 020713 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
-0x50f6 020714 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
-0x50f7 020715 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
-0x50f8 020716 branch l2cap_rx_reset_state 
-:      020718 ml2cap_call_proc_signal:
-0x50f9 020719 bpatchx patch23_4 ,mem_patch23 
-0x50fa 020720 call l2cap_malloc_signal_channel 
-0x50fb 020721 force 0 ,regb 
-0x50fc 020722 call l2cap_get_signal_tx_payload 
-0x50fd 020723 copy pdata ,contw 
-0x50fe 020724 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x50ff 020725 copy pdata ,regc 
-0x5100 020726 fetch 2 ,mem_l2cap_payload_ptr 
-0x5101 020727 iforce contr 
-:      020728 ml2cap_proc_one_comm_loop:
-0x5102 020729 call ml2cap_proc_one_comm 
-0x5103 020730 increase -4 ,regc 
-0x5104 020731 nbranch ml2cap_proc_one_comm_loop ,zero 
-0x5105 020732 copy regb ,temp 
-0x5106 020733 call ml2cap_send_signal 
-0x5107 020734 branch l2cap_rx_reset_state 
-:      020736 ml2cap_proc_one_comm:
-0x5108 020737 ifetch 1 ,contr 
-0x5109 020738 beq signal_connect_req ,ml2cap_proc_signal_connect_req 
-0x510a 020739 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
-0x510b 020740 beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
-0x510c 020741 beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
-0x510d 020742 beq signal_config_req ,ml2cap_proc_signal_config_req 
-0x510e 020743 beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
-0x510f 020744 beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
-0x5110 020745 beq signal_echo_req ,l2cap_proc_signal_echo_req 
-0x5111 020746 beq signal_info_req ,ml2cap_proc_signal_info_req 
-0x5112 020747 branch ml2cap_proc_send_reject 
-:      020749 ml2cap_proc_signal_connect_req:
-0x5113 020750 call save_cont_pointers 
-0x5114 020752 call load_cont_pointers 
-0x5115 020753 branch l2cap_proc_signal_connect_req 
-:      020754 ml2cap_proc_signal_cmd_reject:
-0x5116 020755 ifetch 1 ,contr 
-0x5117 020756 copy pdata ,queue 
-0x5118 020757 ifetch 2 ,contr 
-0x5119 020758 copy pdata ,rega 
-0x511a 020759 copy regc ,pdata 
-0x511b 020760 isub rega ,regc 
-:      020761 mvptr:
-0x511c 020762 ifetch 1 ,contr 
-0x511d 020763 increase -1 ,rega 
-0x511e 020764 nbranch mvptr ,zero 
-0x511f 020765 rtn 
-:      020766 ml2cap_proc_signal_connect_rsp:
-0x5120 020767 ifetch 1 ,contr 
-0x5121 020768 copy pdata ,queue 
-0x5122 020769 ifetch 2 ,contr 
-0x5123 020770 copy pdata ,rega 
-0x5124 020771 ifetch 2 ,contr 
-0x5125 020772 copy pdata ,timeup 
-0x5126 020773 ifetch 2 ,contr 
-0x5127 020774 copy pdata ,temp 
-0x5128 020775 ifetch 2 ,contr 
-0x5129 020776 sub pdata ,0 ,null 
-0x512a 020777 branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
-0x512b 020778 beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
-0x512c 020779 beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
-0x512d 020780 branch ml2cap_proc_signal_connect_rsp_mnosucc 
-:      020781 ml2cap_proc_signal_connect_refused_result:
-0x512e 020782 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
-0x512f 020783 call ui_ipc_send_event 
-:      020784 ml2cap_proc_signal_connect_rsp_mnosucc:
-0x5130 020785 ifetch 2 ,contr 
-0x5131 020786 branch mnosucc 
-:      020787 ml2cap_proc_signal_connect_rsp_sucessful:
-0x5132 020788 call save_cont_pointers 
-0x5133 020792 bpatchx patch23_5 ,mem_patch23 
-0x5134 020793 setarg l2cap_sdp_channel 
-0x5135 020794 isub temp ,null 
-0x5136 020795 branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
-0x5137 020796 setarg l2cap_rfcomm_channel 
-0x5138 020797 isub temp ,null 
-0x5139 020798 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
-0x513a 020799 setarg l2cap_hid_interrupt_channel 
-0x513b 020800 isub temp ,null 
-0x513c 020801 branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
-0x513d 020802 setarg l2cap_hid_control_channel 
-0x513e 020803 isub temp ,null 
-0x513f 020804 branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
-0x5140 020805 branch mnosucc 
-:      020806 ml2cap_proc_signal_connect_rsp_sdp:
-0x5141 020807 copy timeup ,pdata 
-0x5142 020808 store 2 ,mem_sdp_remote_cid 
-0x5143 020809 fetch 1 ,mem_sdp_state 
-0x5144 020810 set1 l2cap_channel_state_conn_res 
-0x5145 020811 store 1 ,mem_sdp_state 
-0x5146 020812 branch mnosucc1 
-:      020813 ml2cap_proc_signal_connect_rsp_rfcomm:
-0x5147 020814 copy timeup ,pdata 
-0x5148 020815 store 2 ,mem_rfcomm_remote_cid 
-0x5149 020816 fetch 1 ,mem_rfcomm_state 
-0x514a 020817 set1 l2cap_channel_state_conn_res 
-0x514b 020818 store 1 ,mem_rfcomm_state 
-0x514c 020819 branch mnosucc1 
-:      020820 ml2cap_proc_signal_connect_rsp_hid_ctrl:
-0x514d 020821 copy timeup ,pdata 
-0x514e 020822 store 2 ,mem_hid_ctrl_remote_cid 
-0x514f 020823 fetch 1 ,mem_hid_control_state 
-0x5150 020824 set1 l2cap_channel_state_conn_res 
-0x5151 020825 store 1 ,mem_hid_control_state 
-0x5152 020826 branch mnosucc1 
-:      020827 ml2cap_proc_signal_connect_rsp_hid_int:
-0x5153 020828 copy timeup ,pdata 
-0x5154 020829 store 2 ,mem_hid_int_remote_cid 
-0x5155 020830 fetch 1 ,mem_hid_interrupt_state 
-0x5156 020831 set1 l2cap_channel_state_conn_res 
-0x5157 020832 store 1 ,mem_hid_interrupt_state 
-:      020835 mnosucc1:
-0x5158 020836 call load_cont_pointers 
-:      020837 mnosucc:
-0x5159 020838 copy regc ,pdata 
-0x515a 020839 isub rega ,regc 
-0x515b 020840 rtn 
-:      020842 ml2cap_proc_signal_config_rsp:
-0x515c 020843 ifetch 1 ,contr 
-0x515d 020844 copy pdata ,queue 
-0x515e 020845 ifetch 2 ,contr 
-0x515f 020846 copy pdata ,rega 
-0x5160 020847 copy regc ,pdata 
-0x5161 020848 isub rega ,regc 
-0x5162 020849 ifetch 2 ,contr 
-0x5163 020850 copy pdata ,timeup 
-0x5164 020851 ifetch 2 ,contr 
-0x5165 020852 ifetch 2 ,contr 
-0x5166 020853 nbranch mcrsdone1 ,blank 
-0x5167 020854 call save_cont_pointers 
-0x5168 020858 copy timeup ,temp 
-0x5169 020859 bpatchx patch23_6 ,mem_patch23 
-0x516a 020860 setarg l2cap_sdp_channel 
-0x516b 020861 isub temp ,null 
-0x516c 020862 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
-0x516d 020863 setarg l2cap_rfcomm_channel 
-0x516e 020864 isub temp ,null 
-0x516f 020865 branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
-0x5170 020866 setarg l2cap_hid_control_channel 
-0x5171 020867 isub temp ,null 
-0x5172 020868 branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
-0x5173 020869 setarg l2cap_hid_interrupt_channel 
-0x5174 020870 isub temp ,null 
-0x5175 020871 branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
-:      020872 ml2cap_proc_signal_config_rsp_sdp:
-0x5176 020873 fetch 1 ,mem_sdp_state 
-0x5177 020874 set1 l2cap_channel_state_rcv_cfg_res 
-0x5178 020875 store 1 ,mem_sdp_state 
-0x5179 020876 rtn 
-:      020877 ml2cap_proc_signal_config_rsp_rfcomm:
-0x517a 020878 fetch 1 ,mem_rfcomm_state 
-0x517b 020879 set1 l2cap_channel_state_rcv_cfg_res 
-0x517c 020880 store 1 ,mem_rfcomm_state 
-0x517d 020881 rtn 
-:      020882 ml2cap_proc_signal_config_rsp_hid_ctrl:
-0x517e 020883 fetch 1 ,mem_hid_control_state 
-0x517f 020884 set1 l2cap_channel_state_rcv_cfg_res 
-0x5180 020885 store 1 ,mem_hid_control_state 
-0x5181 020886 rtn 
-:      020887 ml2cap_proc_signal_config_rsp_hid_int:
-0x5182 020888 fetch 1 ,mem_hid_interrupt_state 
-0x5183 020889 set1 l2cap_channel_state_rcv_cfg_res 
-0x5184 020890 store 1 ,mem_hid_interrupt_state 
-0x5185 020891 jam bt_evt_hid_connected ,mem_fifo_temp 
-0x5186 020892 branch ui_ipc_send_event 
-:      020895 mcfrsdone:
-0x5187 020896 call load_cont_pointers 
-:      020897 mcrsdone1:
-0x5188 020898 increase -6 ,rega 
-:      020899 mloop2:
-0x5189 020900 branch mcrsdone ,zero 
-0x518a 020901 increase 1 ,contr 
-0x518b 020902 increase -1 ,rega 
-0x518c 020903 branch mloop2 
-:      020904 mcrsdone:
-0x518d 020905 rtn 
-:      020906 ml2cap_proc_signal_config_req:
-0x518e 020907 ifetch 1 ,contr 
-0x518f 020908 copy pdata ,queue 
-0x5190 020909 ifetch 2 ,contr 
-0x5191 020910 copy pdata ,rega 
-0x5192 020911 copy regc ,pdata 
-0x5193 020912 isub rega ,regc 
-0x5194 020913 ifetch 2 ,contr 
-0x5195 020914 increase 2 ,contr 
-0x5196 020915 copy pdata ,temp 
-0x5197 020916 setarg signal_config_rsp 
-0x5198 020917 istore 1 ,contw 
-0x5199 020918 copy queue ,pdata 
-0x519a 020919 istore 1 ,contw 
-0x519b 020920 increase 2 ,rega 
-0x519c 020921 copy rega ,pdata 
-0x519d 020922 istore 2 ,contw 
-0x519e 020923 call save_cont_pointers 
-0x519f 020924 bpatchx patch23_7 ,mem_patch23 
-0x51a0 020925 setarg l2cap_sdp_channel 
-0x51a1 020926 isub temp ,null 
-0x51a2 020927 branch ml2cap_proc_signal_config_req_sdp ,zero 
-0x51a3 020928 setarg l2cap_rfcomm_channel 
-0x51a4 020929 isub temp ,null 
-0x51a5 020930 branch ml2cap_proc_signal_config_req_rfcomm ,zero 
-0x51a6 020931 setarg l2cap_hid_control_channel 
-0x51a7 020932 isub temp ,null 
-0x51a8 020933 branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
-0x51a9 020934 setarg l2cap_hid_interrupt_channel 
-0x51aa 020935 isub temp ,null 
-0x51ab 020936 branch ml2cap_proc_signal_config_req_hid_int ,zero 
-0x51ac 020937 branch mcfgrq_done 
-:      020938 ml2cap_proc_signal_config_req_sdp:
-0x51ad 020939 fetch 1 ,mem_sdp_state 
-0x51ae 020940 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51af 020941 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51b0 020942 store 1 ,mem_sdp_state 
-0x51b1 020943 bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
-0x51b2 020944 fetcht 1 ,mem_control_tasks 
-0x51b3 020945 set1 l2cap_init_config_req ,temp 
-0x51b4 020946 storet 1 ,mem_control_tasks 
-0x51b5 020947 copy queue ,pdata 
-0x51b6 020948 increase 1 ,pdata 
-0x51b7 020949 store 1 ,mem_config_identifier 
-0x51b8 020950 fetch 1 ,mem_sdp_state 
-0x51b9 020951 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x51ba 020952 store 1 ,mem_sdp_state 
-:      020953 ml2cap_proc_signal_config_req_sdp_nsndreq:
-0x51bb 020954 fetch 2 ,mem_sdp_remote_cid 
-0x51bc 020955 store 2 ,mem_config_req_dest_cid 
-0x51bd 020956 branch mcfgrq_done 
-:      020957 ml2cap_proc_signal_config_req_rfcomm:
-0x51be 020958 fetch 1 ,mem_rfcomm_state 
-0x51bf 020959 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51c0 020960 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51c1 020961 store 1 ,mem_rfcomm_state 
-0x51c2 020962 fetch 2 ,mem_rfcomm_remote_cid 
-0x51c3 020963 branch mcfgrq_done 
-:      020964 ml2cap_proc_signal_config_req_hid_ctrl:
-0x51c4 020965 fetch 1 ,mem_hid_control_state 
-0x51c5 020966 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51c6 020967 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51c7 020968 store 1 ,mem_hid_control_state 
-0x51c8 020969 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x51c9 020970 branch mcfgrq_done 
-:      020971 ml2cap_proc_signal_config_req_hid_int:
-0x51ca 020972 fetch 1 ,mem_hid_interrupt_state 
-0x51cb 020973 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51cc 020974 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51cd 020975 store 1 ,mem_hid_interrupt_state 
-0x51ce 020976 fetch 2 ,mem_hid_int_remote_cid 
-:      020979 mcfgrq_done:
-0x51cf 020980 copy pdata ,timeup 
-0x51d0 020981 call load_cont_pointers 
-0x51d1 020983 copy timeup ,pdata 
-0x51d2 020985 istore 2 ,contw 
-0x51d3 020986 force 0x0000 ,pdata 
-0x51d4 020987 istore 2 ,contw 
-0x51d5 020988 force 0x0000 ,pdata 
-0x51d6 020989 istore 2 ,contw 
-0x51d7 020990 force 10 ,pdata 
-0x51d8 020991 iadd regb ,regb 
-0x51d9 020992 increase -6 ,rega 
-:      020993 mloop1:
-0x51da 020994 branch mcrqdone ,zero 
-0x51db 020995 ifetch 1 ,contr 
-0x51dc 020996 istore 1 ,contw 
-0x51dd 020997 increase 1 ,regb 
-0x51de 020998 increase -1 ,rega 
-0x51df 020999 branch mloop1 
-:      021000 mcrqdone:
-0x51e0 021001 rtn 
-:      021002 ml2cap_proc_signal_disconn_req:
-0x51e1 021003 ifetch 1 ,contr 
-0x51e2 021004 copy pdata ,queue 
-0x51e3 021005 ifetch 2 ,contr 
-0x51e4 021006 copy pdata ,rega 
-0x51e5 021007 copy regc ,pdata 
-0x51e6 021008 isub rega ,regc 
-0x51e7 021010 ifetch 2 ,contr 
-0x51e8 021011 copy pdata ,rega 
-0x51e9 021012 ifetch 2 ,contr 
-0x51ea 021013 copy pdata ,timeup 
-0x51eb 021014 call save_cont_pointers 
-0x51ec 021015 bpatchx patch24_0 ,mem_patch24 
-0x51ed 021016 setarg l2cap_sdp_channel 
-0x51ee 021017 copy rega ,temp 
-0x51ef 021018 isub temp ,null 
-0x51f0 021019 branch ml2cap_proc_signal_disconn_sdp ,zero 
-0x51f1 021020 setarg l2cap_hid_control_channel 
-0x51f2 021021 copy rega ,temp 
-0x51f3 021022 isub temp ,null 
-0x51f4 021023 branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
-0x51f5 021024 setarg l2cap_hid_interrupt_channel 
-0x51f6 021025 copy rega ,temp 
-0x51f7 021026 isub temp ,null 
-0x51f8 021027 branch ml2cap_proc_signal_disconn_hid_int ,zero 
-0x51f9 021028 branch mclsrfc 
-:      021029 ml2cap_proc_signal_disconn_sdp:
-0x51fa 021030 setarg 0x0000 
-0x51fb 021031 store 2 ,mem_sdp_tx_pkt_length 
-0x51fc 021032 store 2 ,mem_sdp_remote_cid 
-0x51fd 021033 store 1 ,mem_sdp_state 
-0x51fe 021034 branch mclssdp 
-:      021035 ml2cap_proc_signal_disconn_hid_ctrl:
-0x51ff 021036 call l2cap_reset_hid_ctrl_state 
-0x5200 021037 branch mclssdp 
-:      021038 ml2cap_proc_signal_disconn_hid_int:
-0x5201 021039 call l2cap_reset_hid_int_state 
-0x5202 021045 branch mclssdp 
-:      021046 mclsrfc:
-0x5203 021047 setarg 0x0000 
-0x5204 021048 store 2 ,mem_rfcomm_tx_pkt_length 
-:      021049 mclssdp:
-0x5205 021050 call load_cont_pointers 
-0x5206 021051 setarg signal_disconnect_rsp 
-0x5207 021052 istore 1 ,contw 
-0x5208 021053 copy queue ,pdata 
-0x5209 021054 istore 1 ,contw 
-0x520a 021055 setarg 0x0004 
-0x520b 021056 istore 2 ,contw 
-0x520c 021057 copy rega ,pdata 
-0x520d 021058 istore 2 ,contw 
-0x520e 021059 copy timeup ,pdata 
-0x520f 021060 istore 2 ,contw 
-0x5210 021061 force 8 ,pdata 
-0x5211 021062 iadd regb ,regb 
-0x5212 021063 rtn 
-:      021065 ml2cap_proc_signal_disconn_rsp:
-0x5213 021066 ifetch 1 ,contr 
-0x5214 021067 copy pdata ,queue 
-0x5215 021068 ifetch 2 ,contr 
-0x5216 021069 copy pdata ,rega 
-0x5217 021070 ifetch 2 ,contr 
-0x5218 021071 copy pdata ,timeup 
-0x5219 021072 ifetch 2 ,contr 
-0x521a 021073 copy pdata ,temp 
-0x521b 021074 call save_cont_pointers 
-0x521c 021075 bpatchx patch24_1 ,mem_patch24 
-0x521d 021076 fetch 1 ,mem_ml2cap_comm_id 
-0x521e 021077 icompare 0xff ,queue 
-0x521f 021078 nbranch mdisdone ,true 
-0x5220 021079 setarg l2cap_sdp_channel 
-0x5221 021080 isub temp ,null 
-0x5222 021081 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
-0x5223 021082 setarg l2cap_rfcomm_channel 
-0x5224 021083 isub temp ,null 
-0x5225 021084 branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
-0x5226 021085 branch mdisdone 
-:      021086 ml2cap_proc_signal_disconn_rsp_sdp:
-0x5227 021087 jam 0 ,mem_sdp_remote_cid 
-0x5228 021088 jam 0 ,mem_sdp_state 
-0x5229 021089 branch mdisdone 
-:      021090 ml2cap_proc_signal_disconn_rsp_rfcomm:
-:      021093 mdisdone:
-0x522a 021094 call load_cont_pointers 
-0x522b 021095 copy regc ,pdata 
-0x522c 021096 isub rega ,regc 
-0x522d 021097 rtn 
-:      021099 ml2cap_proc_send_reject:
-0x522e 021100 setarg signal_cmd_reject 
-0x522f 021101 istore 1 ,contw 
-0x5230 021102 ifetch 1 ,contr 
-0x5231 021103 istore 1 ,contw 
-0x5232 021104 setarg 0x0002 
-0x5233 021105 istore 2 ,contw 
-0x5234 021106 setarg 0x0000 
-0x5235 021107 istore 2 ,contw 
-0x5236 021108 setarg 0x0006 
-0x5237 021109 iadd regb ,regb 
-0x5238 021110 force 4 ,regc 
-0x5239 021111 rtn 
-:      021114 l2cap_get_req_id:
-0x523a 021115 fetch 1 ,mem_ml2cap_comm_id 
-0x523b 021116 increase 1 ,pdata 
-0x523c 021117 bne 0 ,l2cap_get_req_id_ok 
-0x523d 021118 increase 1 ,pdata 
-:      021119 l2cap_get_req_id_ok:
-0x523e 021120 store 1 ,mem_ml2cap_comm_id 
-0x523f 021121 rtn 
-:      021131 l2cap_malloc:
-0x5240 021132 bpatchx patch24_2 ,mem_patch24 
-0x5241 021133 arg 0 ,regb 
-0x5242 021134 call l2cap_malloc_is_fifo_full 
-0x5243 021135 nbranch assert ,blank 
-0x5244 021136 call l2cap_malloc_get_full_map 
-0x5245 021137 arg mem_tx_buff0 ,regb 
-0x5246 021138 arg 0 ,queue 
-:      021139 l2cap_malloc_loop:
-0x5247 021140 fetcht 1 ,mem_used_map 
-0x5248 021141 qisolate1 temp 
-0x5249 021142 branch l2cap_malloc_next ,true 
-0x524a 021143 call l2cap_malloc_enough 
-0x524b 021144 sub timeup ,0 ,null 
-0x524c 021145 branch l2cap_malloc_next ,positive 
-0x524d 021146 call l2cap_malloc_into_fifo 
-0x524e 021147 branch l2cap_malloc_rtn 
-:      021148 l2cap_malloc_next:
-0x524f 021149 increase 128 ,regb 
-0x5250 021150 increase 1 ,queue 
-0x5251 021151 setarg 8 
-0x5252 021152 isub queue ,null 
-0x5253 021153 branch l2cap_malloc_loop ,positive 
-0x5254 021154 arg 0 ,regb 
-:      021155 l2cap_malloc_rtn:
-0x5255 021156 copy regb ,pdata 
-0x5256 021157 branch assert ,blank 
-0x5257 021158 rtn 
-:      021166 l2cap_malloc_fifo_out:
-0x5258 021167 bpatchx patch24_3 ,mem_patch24 
-0x5259 021168 call l2cap_malloc_fifo_get_first_ptr 
-0x525a 021169 increase 1 ,contr 
-0x525b 021170 ifetch 2 ,contr 
-0x525c 021171 rtn 
-:      021177 l2cap_malloc_free:
-0x525d 021178 bpatchx patch24_4 ,mem_patch24 
-0x525e 021179 call l2cap_malloc_fifo_get_first_ptr 
-0x525f 021180 copy contr ,contw 
-0x5260 021181 copy contr ,temp 
-0x5261 021182 setarg 0 
-0x5262 021183 istore 3 ,contw 
-0x5263 021184 rtn 
-:      021189 l2cap_malloc_discard:
-0x5264 021190 bpatchx patch24_5 ,mem_patch24 
-0x5265 021191 call l2cap_malloc_is_fifo_empty 
-0x5266 021192 branch assert ,blank 
-0x5267 021193 fetch 3 ,mem_tx_fifo2 
-0x5268 021194 store 3 ,mem_tx_fifo3 
-0x5269 021195 fetch 3 ,mem_tx_fifo1 
-0x526a 021196 store 3 ,mem_tx_fifo2 
-0x526b 021197 fetch 3 ,mem_tx_fifo0 
-0x526c 021198 store 3 ,mem_tx_fifo1 
-0x526d 021199 rtn 
-:      021205 l2cap_malloc_is_fifo_full:
-0x526e 021206 bpatchx patch24_6 ,mem_patch24 
-0x526f 021207 fetch 3 ,mem_tx_fifo0 
-0x5270 021208 rtn 
-:      021214 l2cap_malloc_is_fifo_nearly_full:
-0x5271 021215 bpatchx patch24_7 ,mem_patch24 
-0x5272 021216 fetch 3 ,mem_tx_fifo1 
-0x5273 021217 rtn 
-:      021223 l2cap_malloc_is_fifo_empty:
-0x5274 021224 bpatchx patch25_0 ,mem_patch25 
-0x5275 021225 fetch 3 ,mem_tx_fifo3 
-0x5276 021226 rtn 
-:      021231 l2cap_malloc_fifo_get_first_ptr:
-0x5277 021232 call l2cap_malloc_is_fifo_empty 
-0x5278 021233 branch assert ,blank 
-0x5279 021234 arg mem_tx_fifo0 ,contr 
-:      021235 l2cap_malloc_free_loop:
-0x527a 021236 ifetch 3 ,contr 
-0x527b 021237 branch l2cap_malloc_free_loop ,blank 
-0x527c 021238 increase -3 ,contr 
-0x527d 021239 rtn 
-:      021246 l2cap_malloc_get_full_map:
-0x527e 021247 bpatchx patch25_1 ,mem_patch25 
-0x527f 021248 arg 4 ,loopcnt 
-0x5280 021249 arg mem_tx_fifo0_map ,contr 
-0x5281 021250 arg 0 ,temp 
-:      021251 l2cap_malloc_get_full_map_loop:
-0x5282 021252 ifetch 3 ,contr 
-0x5283 021253 and pdata ,0xff ,pdata 
-0x5284 021254 ior temp ,temp 
-0x5285 021255 loop l2cap_malloc_get_full_map_loop 
-0x5286 021256 storet 1 ,mem_used_map 
-0x5287 021257 rtn 
-:      021265 l2cap_malloc_into_fifo:
-0x5288 021266 bpatchx patch25_2 ,mem_patch25 
-0x5289 021267 call l2cap_malloc_is_fifo_full 
-0x528a 021268 nbranch assert ,blank 
-0x528b 021269 call l2cap_malloc_is_fifo_empty 
-0x528c 021270 branch l2cap_malloc_into_fifo_no_push ,blank 
-0x528d 021271 fetch 3 ,mem_tx_fifo1 
-0x528e 021272 store 3 ,mem_tx_fifo0 
-0x528f 021273 ifetch 3 ,contr 
-0x5290 021274 istore 3 ,contw 
-0x5291 021275 ifetch 3 ,contr 
-0x5292 021276 istore 3 ,contw 
-0x5293 021277 setarg 0 
-0x5294 021278 istore 3 ,contw 
-:      021279 l2cap_malloc_into_fifo_no_push:
-0x5295 021280 arg 0 ,temp 
-0x5296 021281 copy timeup ,pdata 
-0x5297 021282 iadd queue ,pdata 
-:      021283 l2cap_malloc_into_fifo_loop:
-0x5298 021284 qset1 temp 
-0x5299 021285 increase 1 ,queue 
-0x529a 021286 isub queue ,null 
-0x529b 021287 nbranch l2cap_malloc_into_fifo_loop ,zero 
-0x529c 021289 lshift8 regb ,pdata 
-0x529d 021290 ior temp ,pdata 
-0x529e 021291 store 3 ,mem_tx_fifo3 
-0x529f 021292 rtn 
-:      021302 l2cap_malloc_enough:
-0x52a0 021303 bpatchx patch25_3 ,mem_patch25 
-0x52a1 021304 call l2cap_malloc_get_full_map 
-0x52a2 021305 copy queue ,regc 
-0x52a3 021306 arg 0 ,temp 
-0x52a4 021307 arg 0 ,timeup 
-:      021309 l2cap_malloc_enough_loop:
-0x52a5 021310 copy queue ,pdata 
-0x52a6 021311 beq 8 ,l2cap_malloc_enough_end 
-0x52a7 021312 fetch 1 ,mem_used_map 
-0x52a8 021313 qisolate1 pdata 
-0x52a9 021314 branch l2cap_malloc_enough_end ,true 
-0x52aa 021315 increase 128 ,temp 
-0x52ab 021316 increase 1 ,queue 
-0x52ac 021317 copy rega ,pdata 
-0x52ad 021318 isub temp ,null 
-0x52ae 021319 branch l2cap_malloc_enough_end ,zero 
-0x52af 021320 branch l2cap_malloc_enough_loop ,positive 
-:      021321 l2cap_malloc_enough_end:
-0x52b0 021322 copy temp ,pdata 
-0x52b1 021323 isub rega ,null 
-0x52b2 021324 nbranch l2cap_malloc_enough_rtn ,positive 
-0x52b3 021325 copy queue ,pdata 
-0x52b4 021326 copy regc ,temp 
-0x52b5 021327 isub temp ,timeup 
-:      021328 l2cap_malloc_enough_rtn:
-0x52b6 021329 copy regc ,queue 
-0x52b7 021330 rtn 
-:      021333 l2cap_malloc_signal_channel:
-0x52b8 021334 bpatchx patch25_4 ,mem_patch25 
-0x52b9 021335 arg l2cap_signal_malloc_size ,rega 
-0x52ba 021336 call l2cap_malloc 
-0x52bb 021337 store 2 ,mem_l2cap_signal_tx_buff_ptr 
-0x52bc 021338 increase 4 ,pdata 
-0x52bd 021339 store 2 ,mem_l2cap_signal_tx_payload_ptr 
-0x52be 021340 setarg 0 
-0x52bf 021341 store 2 ,mem_l2cap_signal_tx_length 
-0x52c0 021342 rtn 
-:      021344 l2cap_get_signal_tx_buff:
-0x52c1 021345 fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
-0x52c2 021346 branch l2cap_util_pdata_to_contw 
-:      021348 l2cap_get_signal_tx_payload:
-0x52c3 021349 fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
-0x52c4 021350 branch l2cap_util_pdata_to_contw 
-:      021353 l2cap_malloc_sdp_channel:
-0x52c5 021354 bpatchx patch25_5 ,mem_patch25 
-0x52c6 021355 arg sdp_malloc_size ,rega 
-0x52c7 021356 call l2cap_malloc 
-0x52c8 021357 store 2 ,mem_sdp_tx_buff_ptr 
-0x52c9 021358 increase 4 ,pdata 
-0x52ca 021359 store 2 ,mem_sdp_tx_payload_ptr 
-0x52cb 021360 setarg 0 
-0x52cc 021361 store 2 ,mem_sdp_tx_pkt_length 
-0x52cd 021362 rtn 
-:      021364 l2cap_get_sdp_tx_buff:
-0x52ce 021365 fetch 2 ,mem_sdp_tx_buff_ptr 
-0x52cf 021366 branch l2cap_util_pdata_to_contw 
-:      021368 l2cap_get_sdp_tx_payload:
-0x52d0 021369 fetch 2 ,mem_sdp_tx_payload_ptr 
-0x52d1 021370 branch l2cap_util_pdata_to_contw 
-:      021373 l2cap_malloc_rfcomm_channel:
-0x52d2 021374 bpatchx patch25_6 ,mem_patch25 
-0x52d3 021375 call push_stack 
-0x52d4 021376 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
-0x52d5 021377 call l2cap_malloc_is_fifo_full 
-0x52d6 021378 nrtn blank 
-0x52d7 021379 arg rfcomm_malloc_size ,rega 
-0x52d8 021380 call l2cap_malloc 
-0x52d9 021381 store 2 ,mem_rfcomm_tx_buff_ptr 
-0x52da 021382 increase 4 ,pdata 
-0x52db 021383 store 2 ,mem_rfcomm_tx_payload_ptr 
-0x52dc 021384 setarg 0 
-0x52dd 021385 store 2 ,mem_rfcomm_tx_pkt_length 
-0x52de 021386 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
-0x52df 021387 branch pop_stack 
-:      021389 l2cap_get_rfcomm_tx_buff:
-0x52e0 021390 fetch 2 ,mem_rfcomm_tx_buff_ptr 
-0x52e1 021391 branch l2cap_util_pdata_to_contw 
-:      021393 l2cap_util_pdata_to_contw:
-0x52e2 021394 branch assert ,blank 
-0x52e3 021395 copy pdata ,contw 
-0x52e4 021396 rtn 
-:      021399 l2cap_lpm_save_calc_len:
-0x52e5 021400 bpatchx patch25_7 ,mem_patch25 
-0x52e6 021401 arg 0 ,regb 
-0x52e7 021402 arg mem_tx_fifo0_map ,rega 
-0x52e8 021403 increase -2 ,rega 
-:      021404 l2cap_lpm_save_calc_len_loop:
-0x52e9 021405 increase 2 ,rega 
-0x52ea 021406 setarg mem_tx_fifo_end 
-0x52eb 021407 isub rega ,null 
-0x52ec 021408 branch l2cap_lpm_save_calc_len_end ,zero 
-0x52ed 021409 ifetch 1 ,rega 
-0x52ee 021410 increase 1 ,rega 
-0x52ef 021411 branch l2cap_lpm_save_calc_len_loop ,blank 
-0x52f0 021412 ifetcht 2 ,rega 
-0x52f1 021413 ifetch 2 ,temp 
-0x52f2 021414 iadd regb ,regb 
-0x52f3 021415 increase 4 ,regb 
-0x52f4 021416 branch l2cap_lpm_save_calc_len_loop 
-:      021417 l2cap_lpm_save_calc_len_end:
-0x52f5 021418 copy regb ,pdata 
-0x52f6 021419 rtn 
-:      021422 l2cap_lpm_get_wake_lock:
-0x52f7 021423 arg wake_lock_l2cap_tx ,queue 
-0x52f8 021424 branch lpm_get_wake_lock 
-:      021426 l2cap_lpm_put_wake_lock:
-0x52f9 021427 arg wake_lock_l2cap_tx ,queue 
-0x52fa 021428 branch lpm_put_wake_lock 
-:      021430 l2cap_lpm_save_txbuf:
-0x52fb 021431 bpatchx patch26_0 ,mem_patch26 
-0x52fc 021432 call l2cap_malloc_get_full_map 
-0x52fd 021433 fetch 1 ,mem_used_map 
-0x52fe 021434 rtn blank 
-0x52ff 021435 call l2cap_lpm_save_calc_len 
-0x5300 021436 arg l2cap_lpm_txbuf_len ,temp 
-0x5301 021437 isub temp ,null 
-0x5302 021438 branch l2cap_lpm_get_wake_lock ,positive 
-0x5303 021439 call l2cap_lpm_put_wake_lock 
-0x5304 021440 arg mem_l2cap_lpm_txbuf ,contw 
-0x5305 021441 arg mem_tx_fifo0 ,rega 
-:      021442 l2cap_lpm_save_txbuf_loop:
-0x5306 021443 setarg mem_tx_fifo_end 
-0x5307 021444 isub rega ,null 
-0x5308 021445 rtn zero 
-0x5309 021446 ifetch 1 ,rega 
-0x530a 021447 increase 1 ,rega 
-0x530b 021448 nbranch l2cap_lpm_save_txbuf_nempty ,blank 
-0x530c 021449 istore 2 ,contw 
-0x530d 021450 increase 2 ,rega 
-0x530e 021451 branch l2cap_lpm_save_txbuf_loop 
-:      021452 l2cap_lpm_save_txbuf_nempty:
-0x530f 021453 ifetch 2 ,rega 
-0x5310 021454 increase 2 ,rega 
-0x5311 021455 copy pdata ,contr 
-0x5312 021456 ifetch 2 ,contr 
-0x5313 021457 istore 2 ,contw 
-0x5314 021458 copy pdata ,loopcnt 
-0x5315 021459 increase 2 ,loopcnt 
-0x5316 021460 call memcpy 
-0x5317 021461 branch l2cap_lpm_save_txbuf_loop 
-:      021463 l2cap_lpm_load_txbuf:
-0x5318 021464 bpatchx patch26_1 ,mem_patch26 
-0x5319 021465 call l2cap_malloc_get_full_map 
-0x531a 021466 fetch 1 ,mem_used_map 
-0x531b 021467 rtn blank 
-0x531c 021468 arg mem_tx_fifo0_ptr ,rega 
-0x531d 021469 increase -3 ,rega 
-0x531e 021470 arg mem_l2cap_lpm_txbuf ,contr 
-:      021471 l2cap_lpm_load_txbuf_loop:
-0x531f 021472 increase 3 ,rega 
-0x5320 021473 setarg mem_tx_fifo_end + 1 
-0x5321 021474 isub rega ,null 
-0x5322 021475 rtn zero 
-0x5323 021476 ifetch 2 ,contr 
-0x5324 021477 branch l2cap_lpm_load_txbuf_loop ,blank 
-0x5325 021478 increase 4 ,pdata 
-0x5326 021479 copy pdata ,loopcnt 
-0x5327 021480 copy contr ,regb 
-0x5328 021481 ifetch 2 ,rega 
-0x5329 021482 copy pdata ,contw 
-0x532a 021483 copy regb ,contr 
-0x532b 021484 increase -2 ,contr 
-0x532c 021485 call memcpy 
-0x532d 021486 branch l2cap_lpm_load_txbuf_loop 
-:      021496 le_init_conn:
-0x532e 021497 bpatchx patch26_2 ,mem_patch26 
-0x532f 021498 disable wake 
-0x5330 021499 jam 1 ,mem_le_conn_handle 
-0x5331 021500 jam 3 ,mem_le_state 
-0x5332 021501 jam 1 ,mem_le_arq 
-0x5333 021502 setarg -1 
-0x5334 021503 store 2 ,mem_le_event_count 
-0x5335 021504 force 0 ,pdata 
-0x5336 021505 store 1 ,mem_le_ch 
-0x5337 021506 store 1 ,mem_le_op 
-0x5338 021507 store 3 ,mem_sniff_rcv 
-0x5339 021508 store 3 ,mem_sniff_lost 
-0x533a 021509 store 5 ,mem_le_pcnt_tx 
-0x533b 021510 set1 39 ,pdata 
-0x533c 021511 store 5 ,mem_le_pcnt_rx 
-0x533d 021512 jam 1 ,mem_le_txheader 
-0x533e 021513 jam 0 ,mem_le_txlen 
-0x533f 021514 branch le_supervision_flush 
-:      021516 le_init_master:
-0x5340 021517 bpatchx patch26_3 ,mem_patch26 
-0x5341 021518 enable master 
-0x5342 021519 jam lemode_master ,mem_le_mode 
-0x5343 021520 jam 1 ,mem_le_att_handle 
-0x5344 021521 jam 1 ,mem_le_search_handle_start 
-0x5345 021522 setarg 0xffff 
-0x5346 021523 store 2 ,mem_le_search_handle_end 
-0x5347 021524 force 0 ,pdata 
-0x5348 021525 store 5 ,mem_le_pcnt_rx 
-0x5349 021526 set1 39 ,pdata 
-0x534a 021527 store 5 ,mem_le_pcnt_tx 
-0x534b 021528 branch le_init_conn 
-:      021531 le_init_slave:
-0x534c 021532 bpatchx patch26_4 ,mem_patch26 
-0x534d 021533 disable master 
-0x534e 021534 setarg 0x17 
-0x534f 021535 store 2 ,mem_le_remote_mtu 
-0x5350 021536 jam lemode_slave ,mem_le_mode 
-0x5351 021537 jam 0 ,mem_le_adv_enable 
-0x5352 021538 jam 0 ,mem_lpm_current_mult 
-0x5353 021539 jam flag_le_pairing_null ,mem_le_pairing_state 
-0x5354 021540 jam flag_le_enc_null ,mem_le_enc_state 
-0x5355 021541 fetch 2 ,mem_le_superto 
-0x5356 021542 store 2 ,mem_le_init_superto 
-0x5357 021543 fetch 2 ,mem_le_tsniff 
-0x5358 021544 mul32 pdata ,5 ,pdata 
-0x5359 021545 rshift4 pdata ,pdata 
-0x535a 021546 store 2 ,mem_le_superto 
-0x535b 021547 branch le_init_conn 
-:      021553 le_dispatch:
-0x535c 021554 call le_enable 
-0x535d 021555 call le_scan 
-0x535e 021556 call le_adv 
-0x535f 021557 branch le_disable 
-:      021559 le_conn_dispatch:
-0x5360 021560 bpatchx patch26_5 ,mem_patch26 
-0x5361 021561 call le_enable 
-0x5362 021562 call app_process_ble 
-0x5363 021563 fetch 1 ,mem_le_mode 
-0x5364 021564 beq lemode_master ,le_master_dispatch 
-0x5365 021565 branch le_slave_dispatch 
-:      021571 le_master_dispatch:
-0x5366 021572 bpatchx patch26_6 ,mem_patch26 
-0x5367 021573 enable master 
-0x5368 021574 call le_supervision_update 
-0x5369 021575 branch le_master_disconn ,positive 
-0x536a 021576 call check_ble_disabled 
-0x536b 021577 call le_setup 
-0x536c 021578 call le_prepare_tx 
-0x536d 021579 disable match 
-0x536e 021580 call le_transmit_receive_sifs 
-0x536f 021581 nrtn match 
-0x5370 021582 bpatchx patch26_7 ,mem_patch26 
-0x5371 021583 fetch 1 ,mem_le_conn_rcv 
-0x5372 021584 increase 1 ,pdata 
-0x5373 021585 store 1 ,mem_le_conn_rcv 
-0x5374 021586 call le_acknowledge 
-0x5375 021587 disable master 
-0x5376 021588 rtn 
-:      021590 le_master_disconn:
-0x5377 021591 call le_disconnect 
-0x5378 021592 disable master 
-0x5379 021593 rtn 
-:      021598 le_slave_dispatch:
-0x537a 021599 bpatchx patch27_0 ,mem_patch27 
-0x537b 021600 jam 0 ,mem_le_md_count 
-0x537c 021601 call sp_calc_sequence_256 
-0x537d 021602 call le_secure_connect_sm 
-0x537e 021603 disable attempt 
-0x537f 021604 call le_supervision_update 
-0x5380 021605 branch le_slave_disconn ,positive 
-0x5381 021606 call check_ble_disabled 
-0x5382 021607 call le_setup 
-0x5383 021608 call le_receive_slave 
-0x5384 021609 nbranch le_slave_unsync ,sync 
-0x5385 021610 call le_got_first_packet 
-0x5386 021611 branch le_slave_match ,match 
-0x5387 021612 branch le_slave_cont 
-:      021615 le_slave_match:
-0x5388 021616 bpatchx patch27_1 ,mem_patch27 
-0x5389 021617 fetch 1 ,mem_le_md_count 
-0x538a 021618 pincrease 1 
-0x538b 021619 store 1 ,mem_le_md_count 
-0x538c 021620 beq le_md_max_count ,le_slave_cont 
-0x538d 021621 call le_acknowledge 
-0x538e 021622 call le_prepare_tx 
-0x538f 021623 call le_transmit_norx 
-0x5390 021624 call le_parse 
-0x5391 021625 fetch 2 ,mem_cb_ble_transmit 
-0x5392 021626 call callback_func 
-0x5393 021627 call le_check_md 
-0x5394 021628 branch le_slave_more_data ,user 
-:      021629 le_slave_cont:
-0x5395 021630 bpatchx patch27_2 ,mem_patch27 
-0x5396 021631 call le_pairing_sm 
-0x5397 021632 call le_check_paring_time 
-0x5398 021633 call check_51cmd 
-0x5399 021634 fetch 1 ,mem_le_op 
-0x539a 021635 bbit1 op_disconn ,le_slave_disconn 
-:      021636 le_slave_unsync:
-0x539b 021637 bpatchx patch27_3 ,mem_patch27 
-0x539c 021638 call le_lpm_set_mult 
-0x539d 021639 call le_update_channel_map 
-0x539e 021640 call le_update_param 
-0x539f 021641 branch calc_clke_offset 
-:      021644 le_check_md:
-0x53a0 021645 disable user 
-0x53a1 021646 bmark1 mark_ble_rx_md ,enable_user 
-0x53a2 021647 bmark1 mark_ble_tx_md ,enable_user 
-0x53a3 021648 rtn 
-:      021651 le_slave_more_data:
-0x53a4 021652 bpatchx patch27_4 ,mem_patch27 
-0x53a5 021653 enable attempt 
-0x53a6 021654 call le_transmit_receive_sifs_notx 
-0x53a7 021655 branch le_slave_match ,match 
-0x53a8 021656 branch le_slave_cont 
-:      021658 le_slave_disconn:
-:      021661 le_disconnect:
-0x53a9 021662 bpatchx patch27_5 ,mem_patch27 
-0x53aa 021663 call le_clear_connection_info 
-0x53ab 021664 call app_disconn_reason_collect_ble 
-0x53ac 021665 call sp_initialize_256 
-0x53ad 021666 jam bt_evt_le_disconnected ,mem_fifo_temp 
-0x53ae 021667 branch ui_ipc_send_event 
-:      021669 le_clear_connection_info:
-0x53af 021670 setarg 0 
-0x53b0 021671 store 9 ,mem_le_tx_buff_used 
-0x53b1 021672 jam 0 ,mem_le_conn_handle 
-0x53b2 021673 jam lemode_idle ,mem_le_mode 
-0x53b3 021674 jam 0 ,mem_le_state 
-0x53b4 021675 jam flag_le_enc_null ,mem_le_enc_state 
-0x53b5 021676 jam flag_le_pairing_null ,mem_le_pairing_state 
-0x53b6 021677 rtn 
-:      021679 le_got_first_packet:
-0x53b7 021680 bpatchx patch27_6 ,mem_patch27 
-0x53b8 021681 fetch 1 ,mem_le_conn_rcv 
-0x53b9 021682 increase 1 ,pdata 
-0x53ba 021683 store 1 ,mem_le_conn_rcv 
-0x53bb 021684 fetch 1 ,mem_le_state 
-0x53bc 021685 rtnbit1 lestate_got_first_packet 
-0x53bd 021686 set1 lestate_got_first_packet 
-0x53be 021687 store 1 ,mem_le_state 
-0x53bf 021688 fetch 2 ,mem_le_init_superto 
-0x53c0 021689 store 2 ,mem_le_superto 
-0x53c1 021690 setarg 0 
-0x53c2 021691 store 4 ,mem_le_transmit_window 
-0x53c3 021692 rtn 
-:      021695 le_enable:
-0x53c4 021696 bpatchx patch27_7 ,mem_patch27 
-0x53c5 021697 jam 0x36 ,rf_adc_goff 
-0x53c6 021698 jam 0x5f ,rf_agc_nsat 
-0x53c7 021699 enable le 
-0x53c8 021700 jam 7 ,rfen_ulp 
-0x53c9 021701 call check_ble_disabled 
-0x53ca 021702 fetch 1 ,mem_250k_freq_enable 
-0x53cb 021703 rtn blank 
-0x53cc 021704 jam 0xb8 ,rf_iq_gain 
-0x53cd 021705 rtn 
-:      021707 le_disable:
-0x53ce 021708 bpatchx patch28_0 ,mem_patch28 
-0x53cf 021709 jam 0x2e ,rf_adc_goff 
-0x53d0 021710 jam 0xff ,rf_agc_nsat 
-0x53d1 021711 disable le 
-0x53d2 021712 jam 3 ,rfen_ulp 
-0x53d3 021713 arg 0 ,stop_watch 
-0x53d4 021714 rtn 
-:      021716 le_prep:
-0x53d5 021717 disable enable_crc 
-0x53d6 021718 disable enable_white 
-0x53d7 021719 fetch 3 ,mem_le_crcinit 
-0x53d8 021720 iforce crc24_init 
-0x53d9 021721 fetch 1 ,mem_le_ch_mapped 
-0x53da 021722 reverse pdata ,temp 
-0x53db 021723 set1 1 ,temp 
-0x53dc 021724 rshift temp ,white_init 
-0x53dd 021725 rtn 
-:      021728 lerx_setfreq:
-0x53de 021729 call le_setfreq 
-0x53df 021730 call set_freq_rx 
-0x53e0 021731 setarg param_pll_setup 
-0x53e1 021732 call sleep 
-0x53e2 021733 branch rf_rx_enable 
-:      021735 letx_setfreq:
-0x53e3 021736 branch txon ,match 
-:      021737 letx_setfreq0:
-0x53e4 021738 call le_setfreq 
-0x53e5 021739 branch set_freq_tx 
-:      021740 le_setfreq:
-0x53e6 021741 bpatchx patch28_1 ,mem_patch28 
-0x53e7 021742 call set_sync_on 
-0x53e8 021743 fetch 1 ,mem_le_testtype 
-0x53e9 021744 nbranch le_ctf_test ,blank 
-0x53ea 021745 fetch 1 ,mem_le_ch_mapped 
-0x53eb 021746 sub pdata ,36 ,null 
-0x53ec 021747 branch le_ctf_normal ,positive 
-0x53ed 021748 force 0 ,temp 
-0x53ee 021749 rtneq 37 
-0x53ef 021750 force 24 ,temp 
-0x53f0 021751 rtneq 38 
-0x53f1 021752 force 78 ,temp 
-0x53f2 021753 rtn 
-:      021755 le_ctf_normal:
-0x53f3 021756 sub pdata ,10 ,null 
-0x53f4 021757 branch le_ctf_low ,positive 
-0x53f5 021758 increase 1 ,pdata 
-:      021760 le_ctf_low:
-0x53f6 021761 lshift pdata ,pdata 
-0x53f7 021762 add pdata ,2 ,temp 
-0x53f8 021763 rtn 
-:      021765 le_ctf_test:
-0x53f9 021766 fetch 1 ,mem_le_ch_mapped 
-0x53fa 021767 lshift pdata ,temp 
-0x53fb 021768 rtn 
-:      021770 le_sca_map:
-0x53fc 021771 arg 500 ,temp 
-0x53fd 021772 rtn blank 
-0x53fe 021773 arg 250 ,temp 
-0x53ff 021774 rtneq 1 
-0x5400 021775 arg 150 ,temp 
-0x5401 021776 rtneq 2 
-0x5402 021777 arg 100 ,temp 
-0x5403 021778 rtneq 3 
-0x5404 021779 arg 75 ,temp 
-0x5405 021780 rtneq 4 
-0x5406 021781 arg 50 ,temp 
-0x5407 021782 rtneq 5 
-0x5408 021783 arg 40 ,temp 
-0x5409 021784 rtneq 6 
-0x540a 021785 arg 20 ,temp 
-0x540b 021786 rtn 
-:      021790 le_adv_access:
-0x540c 021791 setarg 0x8e89be 
-0x540d 021792 lshift8 pdata ,pdata 
-0x540e 021793 or_into 0xd6 ,pdata 
-0x540f 021794 iforce access 
-0x5410 021795 setarg 0x555555 
-0x5411 021796 store 3 ,mem_le_crcinit 
-0x5412 021797 rtn 
-:      021799 le_setup:
-0x5413 021800 bpatchx patch28_2 ,mem_patch28 
-0x5414 021801 enable swfine 
-0x5415 021802 fetch 4 ,mem_le_access 
-0x5416 021803 iforce access 
-0x5417 021804 call le_map_channel 
-0x5418 021805 setarg 0x200 
-0x5419 021806 branch le_setup_master ,master 
-0x541a 021807 fetch 2 ,mem_le_receive_window 
-0x541b 021808 rshift pdata ,pdata 
-:      021809 le_setup_master:
-0x541c 021810 arg param_pll_setup ,temp 
-0x541d 021811 iadd temp ,pdata 
-0x541e 021812 call ahead_window 
-0x541f 021813 deposit clke 
-0x5420 021814 store 6 ,mem_le_rxon_ts 
-0x5421 021815 rtn 
-:      021817 le_next_adv_channel:
-0x5422 021818 bpatchx patch28_3 ,mem_patch28 
-0x5423 021819 fetch 1 ,mem_le_ch_mapped 
-0x5424 021820 beq 37 ,le_next_adv_channel_curr_channel_37 
-0x5425 021821 beq 38 ,le_next_adv_channel_curr_channel_38 
-0x5426 021822 beq 39 ,le_next_adv_channel_curr_channel_39 
-0x5427 021823 branch le_next_adv_channel_curr_channel_39 
-:      021825 le_next_adv_channel_curr_channel_37:
-0x5428 021826 fetcht 1 ,mem_le_adv_channel_map 
-0x5429 021827 isolate1 bit_adv_channel_map_38 ,temp 
-0x542a 021828 branch set_le_next_adv_channel_38 ,true 
-0x542b 021829 isolate1 bit_adv_channel_map_39 ,temp 
-0x542c 021830 branch set_le_next_adv_channel_39 ,true 
-0x542d 021831 branch set_le_next_adv_channel_37 
-:      021834 le_next_adv_channel_curr_channel_38:
-0x542e 021835 fetcht 1 ,mem_le_adv_channel_map 
-0x542f 021836 isolate1 bit_adv_channel_map_39 ,temp 
-0x5430 021837 branch set_le_next_adv_channel_39 ,true 
-0x5431 021838 isolate1 bit_adv_channel_map_37 ,temp 
-0x5432 021839 branch set_le_next_adv_channel_37 ,true 
-0x5433 021840 branch set_le_next_adv_channel_38 
-:      021843 le_next_adv_channel_curr_channel_39:
-0x5434 021844 fetcht 1 ,mem_le_adv_channel_map 
-0x5435 021845 isolate1 bit_adv_channel_map_37 ,temp 
-0x5436 021846 branch set_le_next_adv_channel_37 ,true 
-0x5437 021847 isolate1 bit_adv_channel_map_38 ,temp 
-0x5438 021848 branch set_le_next_adv_channel_38 ,true 
-0x5439 021849 branch set_le_next_adv_channel_39 
-:      021853 set_le_next_adv_channel_37:
-0x543a 021854 jam 37 ,mem_le_ch_mapped 
-0x543b 021855 fetch 1 ,mem_le_adv_channel_map_temp 
-0x543c 021856 set1 bit_adv_channel_map_37 ,pdata 
-0x543d 021857 store 1 ,mem_le_adv_channel_map_temp 
-0x543e 021858 rtn 
-:      021860 set_le_next_adv_channel_38:
-0x543f 021861 jam 38 ,mem_le_ch_mapped 
-0x5440 021862 fetch 1 ,mem_le_adv_channel_map_temp 
-0x5441 021863 set1 bit_adv_channel_map_38 ,pdata 
-0x5442 021864 store 1 ,mem_le_adv_channel_map_temp 
-0x5443 021865 rtn 
-:      021867 set_le_next_adv_channel_39:
-0x5444 021868 jam 39 ,mem_le_ch_mapped 
-0x5445 021869 fetch 1 ,mem_le_adv_channel_map_temp 
-0x5446 021870 set1 bit_adv_channel_map_39 ,pdata 
-0x5447 021871 store 1 ,mem_le_adv_channel_map_temp 
-0x5448 021872 rtn 
-:      021876 le_context_nexthop:
-0x5449 021877 bpatchx patch28_4 ,mem_patch28 
-0x544a 021878 add rega ,coffset_mode ,contr 
-0x544b 021879 ifetch 1 ,contr 
-0x544c 021880 rtnbit0 mode_le 
-0x544d 021881 add rega ,coffset_le_event_cnt ,contw 
-0x544e 021882 ifetch 2 ,contw 
-0x544f 021883 increase 1 ,pdata 
-0x5450 021884 istore 2 ,contw 
-0x5451 021885 add rega ,coffset_le_hop ,contr 
-0x5452 021886 ifetch 1 ,contr 
-0x5453 021887 add rega ,coffset_le_ch ,contw 
-0x5454 021888 ifetcht 1 ,contw 
-0x5455 021889 iadd temp ,pdata 
-0x5456 021890 sub pdata ,36 ,null 
-0x5457 021891 branch le_nexthop_nowrap ,positive 
-0x5458 021892 increase -37 ,pdata 
-:      021893 le_nexthop_nowrap:
-0x5459 021894 istore 1 ,contw 
-0x545a 021895 rtn 
-:      021898 le_calc_channel_map:
-0x545b 021899 bpatchx patch28_5 ,mem_patch28 
-0x545c 021900 fetch 5 ,mem_le_channel_map 
-0x545d 021901 force 0 ,temp 
-0x545e 021902 force 37 ,loopcnt 
-:      021903 le_count_channels_loop:
-0x545f 021904 bbit0 0 ,le_count_channels_notused 
-0x5460 021905 increase 1 ,temp 
-:      021906 le_count_channels_notused:
-0x5461 021907 rshift pdata ,pdata 
-0x5462 021908 loop le_count_channels_loop 
-0x5463 021909 add temp ,-1 ,pdata 
-0x5464 021910 store 1 ,mem_le_channels 
-0x5465 021911 rtn 
-:      021913 le_map_channel:
-0x5466 021914 bpatchx patch28_6 ,mem_patch28 
-0x5467 021915 fetch 1 ,mem_le_ch 
-0x5468 021916 iforce queue 
-0x5469 021917 fetcht 5 ,mem_le_channel_map 
-0x546a 021918 qisolate1 temp 
-0x546b 021919 branch le_map_channel_end ,true 
-:      021920 le_map_channel_next:
-0x546c 021921 bpatchx patch28_7 ,mem_patch28 
-0x546d 021922 fetch 1 ,mem_le_channels 
-0x546e 021923 isub queue ,pdata 
-0x546f 021924 branch le_map_channel_cont ,positive 
-0x5470 021925 sub pdata ,-1 ,queue 
-0x5471 021926 branch le_map_channel_next 
-:      021927 le_map_channel_cont:
-0x5472 021928 copy queue ,loopcnt 
-0x5473 021929 force 0 ,queue 
-:      021930 le_map_channel_loop:
-0x5474 021931 qisolate1 temp 
-0x5475 021932 branch le_map_channel_skip ,true 
-0x5476 021933 increase 1 ,loopcnt 
-:      021934 le_map_channel_skip:
-0x5477 021935 deposit loopcnt 
-0x5478 021936 branch le_map_channel_end ,blank 
-0x5479 021937 increase 1 ,queue 
-0x547a 021938 increase -1 ,loopcnt 
-0x547b 021939 branch le_map_channel_loop 
-:      021940 le_map_channel_end:
-0x547c 021941 deposit queue 
-0x547d 021942 store 1 ,mem_le_ch_mapped 
-0x547e 021943 rtn 
-:      021946 le_wait_tx:
-0x547f 021947 branch le_wait_master ,master 
-0x5480 021948 until null ,timeout 
-0x5481 021949 rtn 
-:      021951 le_wait_master:
-0x5482 021952 arg 0xea0 ,timeup 
-0x5483 021953 until clkn_rt ,meet 
-0x5484 021954 rtn 
-:      021956 le_receive_adv:
-0x5485 021957 disable swfine 
-0x5486 021958 fetch 2 ,mem_le_scan_window 
-0x5487 021959 copy pdata ,timeup 
-0x5488 021960 branch le_receive_packet 
-:      021963 le_receive_slave:
-0x5489 021964 bpatchx patch29_0 ,mem_patch29 
-0x548a 021965 enable swfine 
-0x548b 021966 fetch 2 ,mem_le_receive_window 
-0x548c 021967 fetcht 4 ,mem_le_transmit_window 
-0x548d 021968 iadd temp ,timeup 
-:      021969 le_receive_packet:
-0x548e 021970 call lerx_setfreq 
-:      021971 le_receive_rxon:
-0x548f 021972 bpatchx patch29_1 ,mem_patch29 
-0x5490 021973 call le_prep 
-0x5491 021974 disable match 
-0x5492 021975 enable decode_fec0 
-0x5493 021976 enable is_rx 
-0x5494 021977 disable is_tx 
-0x5495 021978 copy timeup ,stop_watch 
-0x5496 021979 correlate null ,timeout 
-0x5497 021980 branch le_receive_on_attempt ,attempt 
-0x5498 021981 copy clke ,temp 
-0x5499 021982 storet 6 ,mem_sync_clke 
-:      021983 le_receive_on_attempt:
-0x549a 021984 nbranch end_of_packet ,sync 
-0x549b 021985 branch le_receive_skip ,attempt 
-0x549c 021986 arg param_clke_cal_le ,clke_rt 
-0x549d 021987 copy bt_clk ,clke_bt 
-0x549e 021988 fetch 1 ,mem_le_state 
-0x549f 021989 bbit0 lestate_got_first_packet ,le_receive_skip 
-0x54a0 021990 call lpm_adjust_clk ,wake 
-:      021991 le_receive_skip:
-0x54a1 021992 bpatchx patch29_2 ,mem_patch29 
-0x54a2 021993 call save_rssi 
-0x54a3 021994 enable enable_white 
-0x54a4 021995 enable enable_crc 
-0x54a5 021996 parse demod ,bucket ,8 
-0x54a6 021997 rshift3 pwindow ,pdata 
-0x54a7 021998 store 1 ,mem_le_rxbuf 
-0x54a8 021999 parse demod ,bucket ,8 
-0x54a9 022000 rshift3 pwindow ,pdata 
-0x54aa 022001 istore 1 ,contw 
-0x54ab 022002 and pdata ,0x3f ,loopcnt 
-0x54ac 022003 branch lerx_nopayload ,zero 
-:      022005 lerx_loop:
-0x54ad 022006 parse demod ,bucket ,8 
-0x54ae 022007 rshift3 pwindow ,pdata 
-0x54af 022008 istore 1 ,contw 
-0x54b0 022009 loop lerx_loop 
-:      022011 lerx_nopayload:
-0x54b1 022012 bpatchx patch29_3 ,mem_patch29 
-0x54b2 022013 parse demod ,bucket ,24 
-0x54b3 022014 enable swfine 
-0x54b4 022015 arg param_sifs ,stop_watch 
-0x54b5 022016 rshift32 pdata ,pdata 
-0x54b6 022017 rshift16 pdata ,pdata 
-0x54b7 022018 istore 3 ,contw 
-0x54b8 022019 branch end_of_packet ,crc_failed 
-0x54b9 022020 enable match 
-0x54ba 022021 fetch 1 ,mem_last_freq 
-0x54bb 022022 add pdata ,0 ,rega 
-0x54bc 022023 call rf_write_freq 
-0x54bd 022024 disable decode_fec0 
-0x54be 022025 branch set_sync_on 
-:      022027 le_transmit_receive_sifs:
-0x54bf 022028 bpatchx patch29_4 ,mem_patch29 
-0x54c0 022029 call le_transmit 
-:      022030 le_transmit_receive_sifs_notx:
-0x54c1 022031 fetcht 1 ,mem_last_freq 
-0x54c2 022032 call set_freq_rx 
-0x54c3 022033 call rf_rx_enable 
-0x54c4 022034 enable swfine 
-0x54c5 022035 arg 5500 ,timeup 
-0x54c6 022036 branch le_receive_rxon 
-:      022038 le_transmit_norx:
-0x54c7 022039 call le_transmit 
-0x54c8 022040 branch end_of_packet 
-:      022042 le_transmit:
-0x54c9 022043 bpatchx patch29_5 ,mem_patch29 
-0x54ca 022044 call le_prep 
-0x54cb 022045 call letx_setfreq 
-0x54cc 022046 branch le_transmit0 
-:      022048 le_transmit0:
-0x54cd 022049 set1 txgfsk ,radio_ctrl 
-0x54ce 022050 enable encode_fec0 
-0x54cf 022051 enable is_tx 
-0x54d0 022052 disable is_rx 
-0x54d1 022053 call le_wait_tx 
-0x54d2 022054 rshift16 access ,pdata 
-0x54d3 022055 rshift8 pdata ,pdata 
-0x54d4 022056 rshift4 pdata ,pdata 
-0x54d5 022057 inject mod ,40 
-0x54d6 022058 enable enable_white 
-0x54d7 022059 enable enable_crc 
-0x54d8 022060 bpatchx patch29_6 ,mem_patch29 
-0x54d9 022061 fetch 1 ,mem_le_txheader 
-0x54da 022062 inject mod ,8 
-0x54db 022063 ifetch 1 ,contr 
-0x54dc 022064 and pdata ,0x3f ,loopcnt 
-0x54dd 022065 inject mod ,8 
-0x54de 022066 branch letr_nopayload ,zero 
-:      022067 letr_loop:
-0x54df 022068 ifetch 1 ,contr 
-0x54e0 022069 inject mod ,8 
-0x54e1 022070 loop letr_loop 
-:      022072 letr_nopayload:
-0x54e2 022073 enable enable_parity 
-0x54e3 022074 inject mod ,24 
-0x54e4 022075 disable enable_parity 
-0x54e5 022076 until null ,tx_clear 
-0x54e6 022077 nop 100 
-0x54e7 022078 disable encode_fec0 
-0x54e8 022079 rtn 
-:      022081 le_send_adv_ind:
-0x54e9 022082 bpatchx patch29_7 ,mem_patch29 
-0x54ea 022083 fetch 1 ,mem_le_adv_type 
-0x54eb 022084 beq adv_direct_ind ,le_send_adv_direct_ind 
-0x54ec 022085 fetch 1 ,mem_le_adv_own_addr_type 
-0x54ed 022086 lshift4 pdata ,pdata 
-0x54ee 022087 lshift2 pdata ,pdata 
-0x54ef 022088 store 1 ,mem_le_txheader 
-0x54f0 022089 fetcht 1 ,mem_le_adv_data_len 
-0x54f1 022090 add temp ,6 ,pdata 
-0x54f2 022091 store 1 ,mem_le_txlen 
-0x54f3 022092 fetch 6 ,mem_le_lap 
-0x54f4 022093 store 6 ,mem_le_txpayload 
-0x54f5 022094 copy temp ,loopcnt 
-0x54f6 022095 arg mem_le_adv_data ,contr 
-0x54f7 022096 call memcpy_fast 
-0x54f8 022097 branch le_send_adv_transmit 
-:      022098 le_send_adv_direct_ind:
-0x54f9 022099 fetch 1 ,mem_le_adv_direct_addr_type 
-0x54fa 022100 lshift4 pdata ,pdata 
-0x54fb 022101 lshift2 pdata ,pdata 
-0x54fc 022102 increase 1 ,pdata 
-0x54fd 022103 store 1 ,mem_le_txheader 
-0x54fe 022104 setarg 12 
-0x54ff 022105 store 1 ,mem_le_txlen 
-0x5500 022106 fetch 6 ,mem_le_lap 
-0x5501 022107 store 6 ,mem_le_txpayload 
-0x5502 022108 fetch 6 ,mem_hci_plap 
-0x5503 022109 istore 6 ,contw 
-:      022110 le_send_adv_transmit:
-0x5504 022111 bpatchx patch2a_0 ,mem_patch2a 
-0x5505 022112 fetch 1 ,mem_le_adv_transmit 
-0x5506 022113 increase 1 ,pdata 
-0x5507 022114 store 1 ,mem_le_adv_transmit 
-0x5508 022115 arg 1800 ,stop_watch 
-0x5509 022116 disable match 
-0x550a 022117 branch le_transmit_receive_sifs 
-:      022119 le_send_scan_request:
-0x550b 022120 bpatchx patch2a_1 ,mem_patch2a 
-0x550c 022121 fetch 1 ,mem_le_scan_type 
-0x550d 022122 rtnne le_scan_type_active 
-0x550e 022123 fetch 1 ,mem_le_adv_transmit 
-0x550f 022124 increase 1 ,pdata 
-0x5510 022125 store 1 ,mem_le_adv_transmit 
-0x5511 022126 arg 0x0c03 ,temp 
-0x5512 022127 fetch 1 ,mem_le_scan_own_addr_type 
-0x5513 022128 nsetflag blank ,le_sender_addr_bit ,temp 
-0x5514 022129 copy rega ,pdata 
-0x5515 022130 nsetflag blank ,le_receiver_addr_bit ,temp 
-0x5516 022131 storet 2 ,mem_le_txheader 
-0x5517 022132 fetch 6 ,mem_le_lap 
-0x5518 022133 istore 6 ,contw 
-0x5519 022134 fetch 6 ,mem_le_plap 
-0x551a 022135 istore 6 ,contw 
-0x551b 022136 branch le_transmit_receive_sifs 
-:      022139 le_send_scan_response:
-0x551c 022140 bpatchx patch2a_2 ,mem_patch2a 
-0x551d 022141 arg scan_rsp ,temp 
-0x551e 022142 fetch 1 ,mem_le_adv_own_addr_type 
-0x551f 022143 nsetflag blank ,le_sender_addr_bit ,temp 
-0x5520 022144 storet 1 ,mem_le_txheader 
-0x5521 022145 fetcht 1 ,mem_le_scan_data_len 
-0x5522 022146 add temp ,6 ,pdata 
-0x5523 022147 store 1 ,mem_le_txlen 
-0x5524 022148 fetch 6 ,mem_le_lap 
-0x5525 022149 store 6 ,mem_le_txpayload 
-0x5526 022150 arg mem_le_scan_data ,contr 
-0x5527 022151 copy temp ,loopcnt 
-0x5528 022152 call memcpy_fast 
-0x5529 022153 call le_transmit_norx 
-0x552a 022154 branch le_adv_not_match 
-:      022156 le_connect_request:
-0x552b 022157 bpatchx patch2a_3 ,mem_patch2a 
-0x552c 022158 force -1 ,pdata 
-0x552d 022159 setsect 2 ,1 
-0x552e 022160 store 5 ,mem_le_channel_map 
-0x552f 022161 call le_calc_channel_map 
-0x5530 022162 force 4 ,loopcnt 
-0x5531 022163 arg mem_le_access ,contw 
-0x5532 022164 call generate_random_loop 
-0x5533 022165 fetch 2 ,mem_le_timeout 
-0x5534 022166 store 2 ,mem_le_superto 
-:      022167 le_con_req_hop_retry:
-0x5535 022168 random pdata 
-0x5536 022169 and_into 0xf ,pdata 
-0x5537 022170 sub pdata ,4 ,null 
-0x5538 022171 branch le_con_req_hop_retry ,positive 
-0x5539 022172 store 1 ,mem_le_hop 
-0x553a 022173 store 1 ,mem_tmp1 
-0x553b 022174 bpatchx patch2a_4 ,mem_patch2a 
-0x553c 022175 fetcht 2 ,mem_le_conn_interval 
-0x553d 022176 storet 2 ,mem_le_tsniff 
-0x553e 022177 copy temp ,regc 
-0x553f 022178 add clkn_bt ,7 ,pdata 
-0x5540 022179 idiv regc 
-0x5541 022180 call wait_div_end 
-0x5542 022181 remainder rega 
-0x5543 022182 isub rega ,pdata 
-0x5544 022183 iadd regc ,pdata 
-0x5545 022184 fetcht 2 ,mem_le_dsniff 
-0x5546 022185 iadd temp ,pdata 
-0x5547 022186 store 4 ,mem_le_anchor 
-0x5548 022187 isub clkn_bt ,rega 
-0x5549 022188 increase -6 ,rega 
-0x554a 022189 arg 0x2205 ,regb 
-0x554b 022190 fetch 1 ,mem_le_conn_own_addr_type 
-0x554c 022191 nsetflag blank ,le_sender_addr_bit ,regb 
-0x554d 022192 fetch 1 ,mem_le_conn_peer_addr_type 
-0x554e 022193 nsetflag blank ,le_receiver_addr_bit ,regb 
-0x554f 022194 copy regb ,pdata 
-0x5550 022195 store 2 ,mem_le_txheader 
-0x5551 022196 fetch 6 ,mem_le_lap 
-0x5552 022197 istore 6 ,contw 
-0x5553 022198 fetch 6 ,mem_le_plap 
-0x5554 022199 istore 6 ,contw 
-0x5555 022200 fetch 4 ,mem_le_access 
-0x5556 022201 istore 4 ,contw 
-0x5557 022202 random pdata 
-0x5558 022203 istore 2 ,contw 
-0x5559 022204 random pdata 
-0x555a 022205 istore 1 ,contw 
-0x555b 022206 force 2 ,pdata 
-0x555c 022207 istore 1 ,contw 
-0x555d 022208 rshift2 rega ,pdata 
-0x555e 022209 istore 2 ,contw 
-0x555f 022210 rshift2 regc ,pdata 
-0x5560 022211 istore 2 ,contw 
-0x5561 022212 bpatchx patch2a_5 ,mem_patch2a 
-0x5562 022213 setarg 0 
-0x5563 022214 istore 2 ,contw 
-0x5564 022215 fetch 2 ,mem_le_timeout 
-0x5565 022216 istore 2 ,contw 
-0x5566 022217 fetch 5 ,mem_le_channel_map 
-0x5567 022218 istore 5 ,contw 
-0x5568 022219 fetch 1 ,mem_le_hop 
-0x5569 022220 arg param_le_sca ,temp 
-0x556a 022221 ior temp ,pdata 
-0x556b 022222 istore 1 ,contw 
-0x556c 022223 call le_transmit_norx 
-0x556d 022224 setarg mem_le_txheader 
-0x556e 022225 add pdata ,18 ,contr 
-0x556f 022226 ifetch 3 ,contr 
-0x5570 022227 store 3 ,mem_le_crcinit 
-0x5571 022228 rtn 
-:      022230 le_init_adv:
-0x5572 022231 bpatchx patch2a_6 ,mem_patch2a 
-0x5573 022232 disable master 
-0x5574 022233 branch le_adv_access 
-:      022237 le_update_param:
-0x5575 022238 fetch 1 ,mem_le_state 
-0x5576 022239 rtnbit0 lestate_update_param 
-0x5577 022240 fetch 2 ,mem_le_event_count 
-0x5578 022241 fetcht 2 ,mem_le_instant 
-0x5579 022242 isub temp ,pdata 
-0x557a 022243 nrtn positive 
-0x557b 022244 store 2 ,mem_pdatatemp 
-0x557c 022245 bpatchx patch2a_7 ,mem_patch2a 
-0x557d 022246 fetch 1 ,mem_le_state 
-0x557e 022247 set0 lestate_update_param ,pdata 
-0x557f 022248 set0 lestate_got_first_packet ,pdata 
-0x5580 022249 store 1 ,mem_le_state 
-0x5581 022250 fetch 4 ,mem_le_anchor 
-0x5582 022251 fetcht 2 ,mem_le_tsniff 
-0x5583 022252 storet 2 ,mem_temp 
-0x5584 022253 isub temp ,rega 
-0x5585 022254 bpatchx patch2b_0 ,mem_patch2b 
-0x5586 022255 fetch 1 ,mem_le_new_param 
-0x5587 022256 store 1 ,mem_le_window_size 
-0x5588 022257 ifetcht 2 ,contr 
-0x5589 022258 ifetch 2 ,contr 
-0x558a 022259 lshift2 pdata ,pdata 
-0x558b 022260 store 2 ,mem_le_tsniff 
-0x558c 022261 lshift2 temp ,temp 
-0x558d 022262 iadd temp ,pdata 
-0x558e 022263 ifetcht 4 ,contr 
-0x558f 022264 storet 4 ,mem_le_slave_latency 
-0x5590 022265 iadd rega ,pdata 
-0x5591 022266 copy pdata ,regab 
-0x5592 022267 fetch 2 ,mem_le_tsniff 
-0x5593 022268 fetcht 2 ,mem_temp 
-0x5594 022269 isub temp ,pdata 
-0x5595 022270 fetcht 2 ,mem_pdatatemp 
-0x5596 022271 imul32 temp ,pdata 
-0x5597 022272 iadd regab ,pdata 
-0x5598 022273 store 4 ,mem_le_anchor 
-0x5599 022274 call le_receive_window_size 
-0x559a 022275 fetch 2 ,mem_le_superto 
-0x559b 022276 store 2 ,mem_le_init_superto 
-0x559c 022277 rtn 
-:      022280 le_update_channel_map:
-0x559d 022281 bpatchx patch2b_1 ,mem_patch2b 
-0x559e 022282 fetch 1 ,mem_le_state 
-0x559f 022283 rtnbit0 lestate_update_map 
-0x55a0 022284 fetch 2 ,mem_le_event_count 
-0x55a1 022285 fetcht 2 ,mem_le_instant 
-0x55a2 022286 isub temp ,pdata 
-0x55a3 022287 nrtn positive 
-0x55a4 022288 fetch 1 ,mem_le_state 
-0x55a5 022289 set0 lestate_update_map ,pdata 
-0x55a6 022290 store 1 ,mem_le_state 
-0x55a7 022291 fetch 5 ,mem_le_new_map 
-0x55a8 022292 store 5 ,mem_le_channel_map 
-0x55a9 022293 branch le_calc_channel_map 
-:      022296 le_acknowledge:
-0x55aa 022297 bpatchx patch2b_2 ,mem_patch2b 
-0x55ab 022298 call le_supervision_flush 
-0x55ac 022299 call le_check_wak 
-0x55ad 022300 fetch 1 ,mem_le_rxbuf 
-0x55ae 022301 isolate1 md ,pdata 
-0x55af 022302 setflag true ,mark_ble_rx_md ,mark 
-0x55b0 022303 rshift pdata ,pdata 
-0x55b1 022304 ixor temp ,pdata 
-0x55b2 022305 isolate1 nesn ,pdata 
-0x55b3 022306 setflag true ,mark_old_packet ,mark 
-0x55b4 022307 rtnmark1 mark_old_packet 
-0x55b5 022308 fetch 1 ,mem_le_rxbuf + 1 
-0x55b6 022309 branch le_ack_unenc ,blank 
-0x55b7 022310 fetch 1 ,mem_le_state 
-0x55b8 022311 bbit0 lestate_encryption ,le_ack_unenc 
-0x55b9 022312 call load_sk 
-0x55ba 022313 call le_decrypt 
-0x55bb 022314 nrtn blank 
-:      022315 le_ack_unenc:
-0x55bc 022316 fetcht 1 ,mem_le_arq 
-0x55bd 022317 setflip nesn ,temp 
-0x55be 022318 storet 1 ,mem_le_arq 
-0x55bf 022319 rtn 
-:      022322 le_check_wak:
-0x55c0 022323 bpatchx patch2b_3 ,mem_patch2b 
-0x55c1 022324 fetcht 1 ,mem_le_arq 
-0x55c2 022325 isolate0 wak ,temp 
-0x55c3 022326 rtn true 
-0x55c4 022327 fetch 1 ,mem_le_rxbuf 
-0x55c5 022328 lshift pdata ,pdata 
-0x55c6 022329 ixor temp ,pdata 
-0x55c7 022330 rtnbit0 sn 
-0x55c8 022331 set0 wak ,temp 
-0x55c9 022332 setflip sn ,temp 
-0x55ca 022333 storet 1 ,mem_le_arq 
-0x55cb 022334 compare 3 ,temp ,3 
-0x55cc 022335 nrtn true 
-0x55cd 022336 fetch 1 ,mem_le_txpayload 
-0x55ce 022337 beq ll_start_enc_req ,le_set_enc 
-0x55cf 022338 fetch 1 ,mem_le_enc_state 
-0x55d0 022339 beq flag_le_enc_pause ,le_clear_enc 
-0x55d1 022340 rtn 
-:      022343 le_set_enc:
-0x55d2 022344 fetch 1 ,mem_le_state 
-0x55d3 022345 set1 lestate_encryption ,pdata 
-0x55d4 022346 store 1 ,mem_le_state 
-0x55d5 022347 rtn 
-:      022349 le_clear_enc:
-0x55d6 022350 bpatchx patch2b_4 ,mem_patch2b 
-0x55d7 022351 jam flag_le_enc_null ,mem_le_enc_state 
-0x55d8 022352 arg 0 ,pdata 
-0x55d9 022353 store 4 ,mem_le_last_mic 
-0x55da 022354 store 5 ,mem_le_pcnt_tx 
-0x55db 022355 set1 39 ,pdata 
-0x55dc 022356 store 5 ,mem_le_pcnt_rx 
-0x55dd 022357 fetch 1 ,mem_le_state 
-0x55de 022358 set0 lestate_encryption ,pdata 
-0x55df 022359 store 1 ,mem_le_state 
-0x55e0 022360 rtn 
-:      022363 le_wait_adv:
-0x55e1 022364 bpatchx patch2b_5 ,mem_patch2b 
-0x55e2 022365 call le_next_adv_channel 
-0x55e3 022366 call le_receive_adv 
-0x55e4 022367 fetch 1 ,mem_le_adv_waitcnt 
-0x55e5 022368 increase 1 ,pdata 
-0x55e6 022369 store 1 ,mem_le_adv_waitcnt 
-0x55e7 022370 rtn 
-:      022373 le_scan:
-0x55e8 022374 bpatchx patch2b_6 ,mem_patch2b 
-0x55e9 022375 fetch 1 ,mem_le_scan_enable 
-0x55ea 022376 rtnne le_scan_enable 
-0x55eb 022377 arg le_scan_interval_timer ,queue 
-0x55ec 022378 call timer_check 
-0x55ed 022379 nrtn blank 
-0x55ee 022380 fetch 2 ,mem_le_scan_interval 
-0x55ef 022381 fetcht 2 ,mem_le_scan_window 
-0x55f0 022382 isub temp ,pdata 
-0x55f1 022383 arg le_scan_interval_timer ,queue 
-0x55f2 022384 call timer_init 
-0x55f3 022385 disable master 
-0x55f4 022386 call le_init_adv 
-0x55f5 022387 call le_wait_adv 
-0x55f6 022388 nrtn match 
-0x55f7 022389 bpatchx patch2b_7 ,mem_patch2b 
-0x55f8 022390 fetch 6 ,mem_le_rxbuf + 2 
-0x55f9 022391 store 6 ,mem_le_plap 
-0x55fa 022394 fetch 1 ,mem_le_adv_rcv 
-0x55fb 022395 increase 1 ,pdata 
-0x55fc 022396 store 1 ,mem_le_adv_rcv 
-0x55fd 022397 call le_create_conn 
-0x55fe 022398 rtn master 
-0x55ff 022399 call le_send_scan_request 
-0x5600 022400 nrtn match 
-0x5601 022401 bpatchx patch2c_0 ,mem_patch2c 
-0x5602 022402 fetch 1 ,mem_le_scanrsp_rcv 
-0x5603 022403 increase 1 ,pdata 
-0x5604 022404 store 1 ,mem_le_scanrsp_rcv 
-0x5605 022405 fetch 9 ,mem_le_rxbuf + 8 
-0x5606 022406 store 9 ,mem_tmp_buffer 
-0x5607 022407 rtn 
-:      022409 le_create_conn:
-0x5608 022410 bpatchx patch2c_1 ,mem_patch2c 
-0x5609 022411 fetch 1 ,mem_cmd_le_create_conn 
-0x560a 022412 rtnne hci_cmd_le_create_conn 
-0x560b 022413 fetch 6 ,mem_le_plap 
-0x560c 022414 fetcht 6 ,mem_le_conn_peer_addr 
-0x560d 022415 isub temp ,null 
-0x560e 022416 nrtn zero 
-0x560f 022417 call context_new 
-0x5610 022418 nrtn zero 
-0x5611 022419 call le_connect_request 
-0x5612 022420 call le_init_master 
-0x5613 022421 bpatchx patch2c_2 ,mem_patch2c 
-0x5614 022422 jam 0 ,mem_hci_cmd 
-0x5615 022423 jam 0 ,mem_le_peer_sca 
-0x5616 022424 jam 0 ,mem_le_scan_enable 
-0x5617 022425 jam 0 ,mem_cmd_le_create_conn 
-0x5618 022426 branch context_save 
-:      022428 le_scan_check_sender_addr_type:
-0x5619 022429 arg 1 ,rega 
-0x561a 022430 fetch 1 ,mem_le_rxbuf 
-0x561b 022431 rtnbit1 le_sender_addr_bit 
-0x561c 022432 arg 0 ,rega 
-0x561d 022433 rtn 
-:      022437 le_prepare_tx:
-0x561e 022438 bpatchx patch2c_3 ,mem_patch2c 
-0x561f 022439 fetch 1 ,mem_le_arq 
-0x5620 022440 rtnbit1 wak 
-0x5621 022441 call le_check_tx_md 
-0x5622 022442 call le_fifo_get_first_tx_ptr 
-0x5623 022443 branch le_send_empty ,blank 
-0x5624 022444 ifetch 1 ,contr 
-0x5625 022445 ifetcht 1 ,contr 
-0x5626 022446 copy temp ,rega 
-0x5627 022447 isub rega ,pdata 
-0x5628 022448 arg le_max_paket_len ,temp 
-0x5629 022449 call not_greater_than 
-0x562a 022450 copy pdata ,temp 
-0x562b 022451 ifetch 1 ,contr 
-0x562c 022452 copy pdata ,type 
-0x562d 022453 copy rega ,pdata 
-0x562e 022454 iadd contr ,contr 
-0x562f 022455 arg mem_le_txpayload ,contw 
-0x5630 022456 copy temp ,loopcnt 
-0x5631 022457 call memcpy 
-0x5632 022458 call le_update_tx_type 
-0x5633 022459 call le_send_packet 
-0x5634 022461 call le_fifo_get_first_tx_ptr 
-0x5635 022462 ifetch 1 ,contr 
-0x5636 022463 copy pdata ,rega 
-0x5637 022464 copy contr ,regc 
-0x5638 022465 ifetcht 1 ,contr 
-0x5639 022466 copy temp ,regb 
-0x563a 022467 isub regb ,pdata 
-0x563b 022468 arg le_max_paket_len ,temp 
-0x563c 022469 call not_greater_than 
-0x563d 022470 iadd regb ,pdata 
-0x563e 022471 istore 1 ,regc 
-0x563f 022472 isub rega ,null 
-0x5640 022473 nrtn zero 
-0x5641 022474 branch le_fifo_release_first_node 
-:      022477 le_check_tx_md:
-0x5642 022478 call le_check_continue 
-0x5643 022479 rtnmark1 mark_ble_tx_md 
-0x5644 022480 fetch 1 ,mem_le_configuration 
-0x5645 022481 bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
-0x5646 022482 call le_fifo_get_second_tx_ptr 
-0x5647 022483 branch le_clear_md ,blank 
-0x5648 022484 branch le_set_md 
-:      022487 le_check_continue:
-0x5649 022488 call le_fifo_get_first_tx_ptr 
-0x564a 022489 branch le_clear_md ,blank 
-0x564b 022490 ifetch 1 ,contr 
-0x564c 022491 ifetcht 1 ,contr 
-0x564d 022492 isub temp ,pdata 
-0x564e 022493 sub pdata ,le_max_paket_len ,null 
-0x564f 022494 branch le_clear_md ,positive 
-:      022495 le_set_md:
-0x5650 022496 set1 mark_ble_tx_md ,mark 
-0x5651 022497 rtn 
-:      022499 le_clear_md:
-0x5652 022500 set0 mark_ble_tx_md ,mark 
-0x5653 022501 rtn 
-:      022503 le_update_tx_type:
-0x5654 022504 copy rega ,pdata 
-0x5655 022505 rtn blank 
-0x5656 022506 arg llid_continue ,type 
-0x5657 022507 rtn 
-:      022510 le_att_check_notification_enable:
-0x5658 022511 bpatchx patch2c_4 ,mem_patch2c 
-0x5659 022512 increase 1 ,temp 
-0x565a 022513 call le_att_get_handle_ptr 
-0x565b 022514 increase -2 ,contr 
-0x565c 022515 ifetch 2 ,contr 
-0x565d 022516 arg client_charactertic_configuration ,temp 
-0x565e 022517 isub temp ,null 
-0x565f 022518 nrtn zero 
-0x5660 022519 increase 1 ,contr 
-0x5661 022520 copy contr ,rega 
-0x5662 022521 ifetch 1 ,contr 
-0x5663 022522 rtn 
-:      022525 le_send_empty:
-0x5664 022526 force 0 ,temp 
-0x5665 022527 force 1 ,type 
-:      022529 le_send_packet:
-0x5666 022530 bpatchx patch2c_5 ,mem_patch2c 
-0x5667 022531 storet 1 ,mem_le_txlen 
-0x5668 022532 fetcht 1 ,mem_le_arq 
-0x5669 022533 set1 wak ,temp 
-0x566a 022534 and temp ,0xfc ,pdata 
-0x566b 022535 ior type ,pdata 
-0x566c 022536 store 1 ,mem_le_arq 
-0x566d 022537 and_into 0x1f ,pdata 
-0x566e 022538 isolate1 mark_ble_tx_md ,mark 
-0x566f 022539 setflag true ,md ,pdata 
-0x5670 022540 store 1 ,mem_le_txheader 
-0x5671 022542 fetch 1 ,mem_le_txheader 
-0x5672 022543 compare 1 ,type ,3 
-0x5673 022544 nbranch le_send_no_txlen ,true 
-0x5674 022545 fetch 1 ,mem_le_txlen 
-0x5675 022546 rtn blank 
-:      022547 le_send_no_txlen:
-0x5676 022548 fetch 1 ,mem_le_state 
-0x5677 022549 rtnbit0 lestate_encryption 
-0x5678 022550 call load_sk 
-0x5679 022551 branch le_encrypt 
-:      022554 get_lpm_wake_ble_rx_lock:
-0x567a 022555 arg wake_lock_ble_rx ,queue 
-0x567b 022556 branch lpm_get_wake_lock 
-:      022558 put_lpm_wake_ble_rx_lock:
-0x567c 022559 arg wake_lock_ble_rx ,queue 
-0x567d 022560 branch lpm_put_wake_lock 
-:      022563 le_parse:
-0x567e 022564 bpatchx patch2c_6 ,mem_patch2c 
-0x567f 022565 rtnmark1 mark_old_packet 
-0x5680 022566 call le_fifo_check_full 
-0x5681 022567 nrtn blank 
-0x5682 022568 fetch 1 ,mem_le_rxbuf 
-0x5683 022569 and pdata ,0x3 ,pdata 
-0x5684 022570 store 1 ,mem_le_packet_llid 
-0x5685 022571 ifetch 1 ,contr 
-0x5686 022572 and pdata ,0x1f ,pdata 
-0x5687 022573 store 1 ,mem_le_packet_size 
-0x5688 022574 rtn blank 
-0x5689 022575 copy contr ,pdata 
-0x568a 022576 store 2 ,mem_le_payload_ptr 
-0x568b 022577 fetch 1 ,mem_le_packet_llid 
-0x568c 022578 beq llid_le_ll ,le_parse_ll 
-:      022579 le_parse_l2cap:
-0x568d 022580 call le_check_l2cap_complete 
-0x568e 022581 nbranch get_lpm_wake_ble_rx_lock ,user 
-0x568f 022582 call put_lpm_wake_ble_rx_lock 
-0x5690 022583 fetch 2 ,mem_le_payload_ptr 
-0x5691 022584 copy pdata ,contr 
-0x5692 022585 ifetch 2 ,contr 
-0x5693 022586 store 2 ,mem_le_l2cap_size 
-0x5694 022587 bpatchx patch2c_7 ,mem_patch2c 
-0x5695 022588 ifetch 2 ,contr 
-0x5696 022589 beq le_l2cap_cid_att ,le_parse_att 
-0x5697 022590 beq le_l2cap_cid_smp ,le_parse_smp 
-0x5698 022591 beq le_l2cap_cid_signal ,le_parse_signaling 
-0x5699 022592 rtn 
-:      022595 le_check_l2cap_complete:
-0x569a 022596 fetch 1 ,mem_le_packet_llid 
-0x569b 022597 beq llid_start ,le_check_l2cap_llid_start 
-0x569c 022598 beq llid_continue ,le_check_l2cap_llid_continue 
-0x569d 022599 rtn 
-:      022604 le_check_l2cap_cid_legal:
-0x569e 022605 call enable_user 
-0x569f 022606 arg le_l2cap_cid_att ,temp 
-0x56a0 022607 isub pdata ,null 
-0x56a1 022608 rtn zero 
-0x56a2 022609 arg le_l2cap_cid_signal ,temp 
-0x56a3 022610 isub pdata ,null 
-0x56a4 022611 rtn zero 
-0x56a5 022612 arg le_l2cap_cid_smp ,temp 
-0x56a6 022613 isub pdata ,null 
-0x56a7 022614 rtn zero 
-0x56a8 022615 branch disable_user 
-:      022618 le_check_l2cap_llid_start:
-0x56a9 022619 fetch 2 ,mem_le_payload_ptr 
-0x56aa 022620 copy pdata ,contr 
-0x56ab 022621 ifetch 2 ,contr 
-0x56ac 022622 store 2 ,mem_le_l2cap_size 
-0x56ad 022623 ifetch 2 ,contr 
-0x56ae 022624 call le_check_l2cap_cid_legal 
-0x56af 022625 nrtn user 
-0x56b0 022626 fetcht 1 ,mem_le_packet_size 
-0x56b1 022627 storet 1 ,mem_le_packet_len_recved 
-0x56b2 022628 fetch 2 ,mem_le_l2cap_size 
-0x56b3 022629 increase 4 ,pdata 
-0x56b4 022630 isub temp ,null 
-0x56b5 022631 branch enable_user ,zero 
-0x56b6 022632 fetch 1 ,mem_le_packet_size 
-0x56b7 022633 copy pdata ,loopcnt 
-0x56b8 022634 arg mem_le_l2capbuf ,contw 
-0x56b9 022635 fetch 2 ,mem_le_payload_ptr 
-0x56ba 022636 copy pdata ,contr 
-0x56bb 022637 call memcpy 
-0x56bc 022638 branch disable_user 
-:      022643 le_check_l2cap_continue_legal:
-0x56bd 022644 call enable_user 
-0x56be 022645 fetch 1 ,mem_le_packet_len_recved 
-0x56bf 022646 nrtn blank 
-0x56c0 022647 branch disable_user 
-:      022649 le_check_l2cap_llid_continue:
-0x56c1 022650 call le_check_l2cap_continue_legal 
-0x56c2 022651 nrtn user 
-0x56c3 022652 fetch 1 ,mem_le_packet_len_recved 
-0x56c4 022653 arg mem_le_l2capbuf ,contw 
-0x56c5 022654 iadd contw ,rega 
-0x56c6 022655 fetcht 1 ,mem_le_packet_size 
-0x56c7 022656 iadd temp ,pdata 
-0x56c8 022657 store 1 ,mem_le_packet_len_recved 
-0x56c9 022658 fetch 1 ,mem_le_packet_size 
-0x56ca 022659 copy pdata ,loopcnt 
-0x56cb 022660 copy rega ,contw 
-0x56cc 022661 fetch 2 ,mem_le_payload_ptr 
-0x56cd 022662 copy pdata ,contr 
-0x56ce 022663 call memcpy_fast 
-0x56cf 022664 setarg mem_le_l2capbuf 
-0x56d0 022665 store 2 ,mem_le_payload_ptr 
-0x56d1 022666 fetch 2 ,mem_le_l2cap_size 
-0x56d2 022667 increase 4 ,pdata 
-0x56d3 022668 fetcht 1 ,mem_le_packet_len_recved 
-0x56d4 022669 isub temp ,null 
-0x56d5 022670 branch enable_user ,zero 
-0x56d6 022671 branch disable_user 
-:      022677 le_get_search_att_type:
-0x56d7 022678 call store_contr 
-0x56d8 022679 arg mem_le_search_att_type_length ,contw 
-:      022680 le_get_search_common:
-0x56d9 022681 fetch 2 ,mem_le_l2cap_size 
-0x56da 022682 increase -5 ,pdata 
-:      022683 le_get_search_common2:
-0x56db 022684 istore 1 ,contw 
-0x56dc 022685 copy pdata ,loopcnt 
-0x56dd 022686 call get_contr 
-0x56de 022687 branch memcpy_fast 
-:      022689 le_get_search_att_uuid:
-0x56df 022690 call store_contr 
-0x56e0 022691 arg mem_le_search_uuid_length ,contw 
-0x56e1 022692 branch le_get_search_common 
-:      022696 le_writeatt_cb:
-0x56e2 022697 fetch 2 ,mem_cb_att_write 
-0x56e3 022698 branch callback_func 
-:      022700 le_supervision_update:
-0x56e4 022701 fetcht 4 ,mem_le_supervision_timer 
-0x56e5 022702 call get_clkbt 
-0x56e6 022703 isub temp ,timeup 
-0x56e7 022704 deposit timeup 
-0x56e8 022705 fetcht 2 ,mem_le_superto 
-0x56e9 022706 lshift4 temp ,temp 
-0x56ea 022707 lshift temp ,temp 
-0x56eb 022708 isub temp ,pdata 
-0x56ec 022709 rtn 
-:      022711 le_supervision_flush:
-0x56ed 022712 call get_clkbt 
-0x56ee 022713 store 4 ,mem_le_supervision_timer 
-0x56ef 022714 rtn 
-:      022717 le_adv:
-0x56f0 022718 jam 36 ,mem_le_ch_mapped 
-0x56f1 022719 jam 0 ,mem_le_adv_channel_map_temp 
-:      022720 le_adv_loop:
-0x56f2 022721 bpatchx patch2d_0 ,mem_patch2d 
-0x56f3 022722 fetch 1 ,mem_le_adv_enable 
-0x56f4 022723 rtn blank 
-0x56f5 022724 arg le_adv_interval_timer ,queue 
-0x56f6 022725 call timer_check 
-0x56f7 022726 nrtn blank 
-0x56f8 022727 bpatchx patch2d_1 ,mem_patch2d 
-:      022728 le_adv_loop_tx:
-0x56f9 022729 disable master 
-0x56fa 022730 enable swfine 
-0x56fb 022731 call le_init_adv 
-0x56fc 022732 call le_next_adv_channel 
-0x56fd 022733 call le_send_adv_ind 
-0x56fe 022734 nbranch le_adv_not_match ,match 
-0x56ff 022735 fetch 1 ,mem_le_req_rcv 
-0x5700 022736 increase 1 ,pdata 
-0x5701 022737 store 1 ,mem_le_req_rcv 
-0x5702 022738 fetch 1 ,mem_le_rxbuf 
-0x5703 022739 and pdata ,0x0f ,pdata 
-0x5704 022740 beq scan_req ,le_send_scan_response 
-0x5705 022741 beq connect_req ,le_parse_connect_req 
-:      022742 le_adv_not_match:
-0x5706 022743 bpatchx patch2d_2 ,mem_patch2d 
-0x5707 022744 random pdata 
-0x5708 022745 arg 0x1ff ,temp 
-0x5709 022746 iand temp ,pdata 
-0x570a 022747 add pdata ,250 ,pdata 
-0x570b 022748 call delay 
-0x570c 022749 fetch 1 ,mem_le_adv_channel_map_temp 
-0x570d 022750 fetcht 1 ,mem_le_adv_channel_map 
-0x570e 022751 isub temp ,null 
-0x570f 022752 nbranch le_adv_loop ,zero 
-0x5710 022753 arg le_adv_interval_timer ,queue 
-0x5711 022754 fetch 2 ,mem_le_adv_interval 
-0x5712 022755 branch timer_init 
-:      022758 le_receive_window_size:
-0x5713 022759 bpatchx patch2d_3 ,mem_patch2d 
-0x5714 022760 fetch 1 ,mem_le_peer_sca 
-0x5715 022761 call le_sca_map 
-0x5716 022762 fetch 2 ,mem_le_tsniff 
-0x5717 022763 imul32 temp ,pdata 
-0x5718 022764 arg 375 ,temp 
-0x5719 022765 imul32 temp ,pdata 
-0x571a 022766 arg 100000 ,temp 
-0x571b 022767 idiv temp 
-0x571c 022768 fetch 1 ,mem_le_window_size 
-0x571d 022769 arg 20000 ,temp 
-0x571e 022770 imul32 temp ,pdata 
-0x571f 022771 iadd temp ,pdata 
-0x5720 022772 store 4 ,mem_le_transmit_window 
-0x5721 022773 bpatchx patch2d_4 ,mem_patch2d 
-0x5722 022774 fetch 2 ,mem_rx_window_sniff 
-0x5723 022775 call wait_div_end 
-0x5724 022776 quotient temp 
-0x5725 022777 iadd temp ,pdata 
-0x5726 022778 store 2 ,mem_le_receive_window 
-0x5727 022779 rtn 
-:      022781 le_parse_connect_req:
-0x5728 022782 bpatchx patch2d_5 ,mem_patch2d 
-0x5729 022783 fetch 6 ,mem_le_rxbuf + 8 
-0x572a 022784 fetcht 6 ,mem_le_lap 
-0x572b 022785 isub temp ,null 
-0x572c 022786 nrtn zero 
-0x572d 022787 call le_scan_check_sender_addr_type 
-0x572e 022788 copy rega ,pdata 
-0x572f 022789 store 1 ,mem_le_conn_peer_addr_type 
-0x5730 022790 fetch 7 ,mem_le_rxbuf + 21 
-0x5731 022791 store 7 ,mem_tmp_buffer 
-0x5732 022792 ifetch 8 ,contr 
-0x5733 022793 istore 8 ,contw 
-0x5734 022794 fetch 6 ,mem_le_rxbuf + 2 
-0x5735 022795 store 6 ,mem_le_plap 
-0x5736 022796 increase 6 ,contr 
-0x5737 022797 ifetch 8 ,contr 
-0x5738 022798 store 8 ,mem_le_access 
-0x5739 022799 ifetcht 2 ,contr 
-0x573a 022800 bpatchx patch2d_6 ,mem_patch2d 
-0x573b 022801 lshift2 temp ,temp 
-0x573c 022802 ifetch 2 ,contr 
-0x573d 022803 lshift2 pdata ,pdata 
-0x573e 022804 store 2 ,mem_le_tsniff 
-0x573f 022805 store 4 ,mem_le_anchor 
-0x5740 022806 isub temp ,pdata 
-0x5741 022807 add pdata ,-2 ,clke_bt 
-0x5742 022808 ifetch 9 ,contr 
-0x5743 022809 store 9 ,mem_le_slave_latency 
-0x5744 022810 bpatchx patch2d_7 ,mem_patch2d 
-0x5745 022811 ifetch 1 ,contr 
-0x5746 022812 rshift4 pdata ,temp 
-0x5747 022813 rshift temp ,temp 
-0x5748 022814 storet 1 ,mem_le_peer_sca 
-0x5749 022815 and_into 0x1f ,pdata 
-0x574a 022816 store 1 ,mem_le_hop 
-0x574b 022817 call le_receive_window_size 
-0x574c 022818 call le_calc_channel_map 
-0x574d 022819 call le_init_slave 
-0x574e 022820 call context_new 
-0x574f 022821 nrtn zero 
-0x5750 022822 bpatchx patch2e_0 ,mem_patch2e 
-0x5751 022823 call calc_clke_offset 
-0x5752 022824 call le_l2cap_reset_signaling_identifier 
-0x5753 022825 jam bt_evt_le_connected ,mem_fifo_temp 
-0x5754 022826 call ui_ipc_send_event 
-0x5755 022827 branch context_save 
-:      022830 le_init_attlist_search:
-0x5756 022831 bpatchx patch2e_1 ,mem_patch2e 
-0x5757 022832 fetch 2 ,mem_le_search_handle_start 
-0x5758 022833 iforce regb 
-0x5759 022834 fetch 2 ,mem_le_search_handle_end 
-0x575a 022835 iforce regc 
-0x575b 022836 fetch 2 ,mem_ui_le_uuid_table 
-0x575c 022837 iforce contr 
-0x575d 022838 enable user 
-0x575e 022839 rtn 
-:      022842 le_att_handle_inrange:
-0x575f 022843 ifetch 2 ,contr 
-0x5760 022844 rtn blank 
-0x5761 022845 isub regb ,null 
-0x5762 022846 nrtn positive 
-0x5763 022847 isub regc ,null 
-0x5764 022848 rtn zero 
-0x5765 022849 branch le_att_handle_blank ,positive 
-0x5766 022850 force 1 ,null 
-0x5767 022851 rtn 
-:      022852 le_att_handle_blank:
-0x5768 022853 force 0 ,pdata 
-0x5769 022854 rtn 
-:      022858 le_att_get_handle_ptr:
-0x576a 022859 call le_att_get_handle_ptr2 
-0x576b 022860 branch le_att_get_handle_ptr_found ,zero 
-0x576c 022861 rtn 
-:      022863 le_att_get_handle_ptr2:
-0x576d 022864 bpatchx patch2e_2 ,mem_patch2e 
-0x576e 022865 fetch 2 ,mem_ui_le_uuid_table 
-0x576f 022866 iforce contr 
-:      022867 le_att_get_handle_loop1:
-0x5770 022868 ifetch 2 ,contr 
-0x5771 022869 rtn blank 
-0x5772 022870 isub temp ,null 
-0x5773 022871 rtn zero 
-0x5774 022872 ifetch 1 ,contr 
-0x5775 022873 iadd contr ,contr 
-0x5776 022874 ifetch 1 ,contr 
-0x5777 022875 iadd contr ,contr 
-0x5778 022876 branch le_att_get_handle_loop1 
-:      022877 le_att_get_handle_ptr_found:
-0x5779 022878 ifetch 1 ,contr 
-0x577a 022879 iadd contr ,contr 
-0x577b 022880 rtn 
-:      022884 le_att_get_short_uuid_ptr:
-0x577c 022885 bpatchx patch2e_3 ,mem_patch2e 
-0x577d 022886 fetch 2 ,mem_ui_le_uuid_table 
-0x577e 022887 iforce contr 
-:      022888 le_att_get_short_uuid_loop:
-0x577f 022889 ifetch 2 ,contr 
-0x5780 022890 rtn blank 
-0x5781 022891 ifetch 1 ,contr 
-0x5782 022892 iadd contr ,contr 
-0x5783 022893 increase -2 ,contr 
-0x5784 022894 ifetch 2 ,contr 
-0x5785 022895 isub temp ,null 
-0x5786 022896 rtn zero 
-0x5787 022897 ifetch 1 ,contr 
-0x5788 022898 iadd contr ,contr 
-0x5789 022899 branch le_att_get_short_uuid_loop 
-:      022903 le_att_get_handle_info_from_ptr:
-0x578a 022904 fetch 2 ,mem_le_cur_attlist_start_ptr 
-0x578b 022905 branch le_att_get_handle_info_fast 
-:      022907 le_att_get_handle_info:
-0x578c 022908 bpatchx patch2e_4 ,mem_patch2e 
-0x578d 022909 fetch 2 ,mem_ui_le_uuid_table 
-:      022910 le_att_get_handle_info_fast:
-0x578e 022911 iforce contr 
-0x578f 022912 copy temp ,rega 
-:      022913 le_att_get_handle_loop:
-0x5790 022914 ifetch 2 ,contr 
-0x5791 022915 branch le_att_unfind_handle ,blank 
-0x5792 022916 isub rega ,null 
-0x5793 022917 branch le_att_finded_handle ,zero 
-0x5794 022918 ifetch 1 ,contr 
-0x5795 022919 iadd contr ,contr 
-0x5796 022920 ifetch 1 ,contr 
-0x5797 022921 iadd contr ,contr 
-0x5798 022922 branch le_att_get_handle_loop 
-:      022923 le_att_unfind_handle:
-0x5799 022924 branch disable_blank 
-:      022926 le_att_finded_handle:
-0x579a 022927 ifetch 1 ,contr 
-0x579b 022928 store 1 ,mem_le_cur_uuid_length 
-0x579c 022929 copy pdata ,loopcnt 
-0x579d 022930 arg mem_le_cur_uuid ,contw 
-0x579e 022931 call memcpy_fast 
-0x579f 022932 ifetch 1 ,contr 
-0x57a0 022933 store 1 ,mem_le_curr_att_len 
-0x57a1 022934 call store_contr 
-0x57a2 022935 branch enable_blank 
-:      022938 le_modified_name:
-0x57a3 022939 bpatchx patch2e_5 ,mem_patch2e 
-0x57a4 022940 call le_modified_name_att_list 
-0x57a5 022941 branch le_modified_name_adv 
-:      022943 le_modified_name_att_list:
-0x57a6 022944 arg uuid_chrctr_device_name ,temp 
-0x57a7 022945 call le_att_get_short_uuid_ptr 
-0x57a8 022946 rtn blank 
-0x57a9 022947 ifetch 1 ,contr 
-0x57aa 022948 copy contr ,contw 
-0x57ab 022949 fetcht 1 ,mem_le_name_len 
-0x57ac 022950 copy temp ,loopcnt 
-0x57ad 022951 isub temp ,null 
-0x57ae 022952 nbranch le_name_length_longer_than_att ,positive 
-0x57af 022953 isub temp ,temp 
-0x57b0 022954 arg mem_le_name ,contr 
-0x57b1 022955 call memcpy 
-0x57b2 022956 copy temp ,loopcnt 
-0x57b3 022957 ncall memcpy_empty ,zero 
-0x57b4 022958 rtn 
-:      022959 le_name_length_longer_than_att:
-0x57b5 022960 copy pdata ,loopcnt 
-0x57b6 022961 arg mem_le_name ,contr 
-0x57b7 022962 branch memcpy_fast 
-:      022965 le_modified_name_adv:
-0x57b8 022966 arg mem_le_adv_data_len + 32 ,regc 
-0x57b9 022967 arg mem_le_adv_data ,rega 
-0x57ba 022968 call le_modified_name_adv_and_scan 
-0x57bb 022969 setarg 0 
-0x57bc 022970 setflag user ,0 ,pdata 
-0x57bd 022971 store 1 ,mem_pdatatemp 
-0x57be 022972 arg mem_le_scan_data_len + 32 ,regc 
-0x57bf 022973 arg mem_le_scan_data ,rega 
-0x57c0 022974 call le_modified_name_adv_and_scan 
-0x57c1 022975 rtn user 
-0x57c2 022976 fetch 1 ,mem_pdatatemp 
-0x57c3 022977 branch assert ,blank 
-0x57c4 022978 rtn 
-:      022981 le_modified_name_adv_and_scan:
-0x57c5 022982 bpatchx patch2e_6 ,mem_patch2e 
-0x57c6 022983 call enable_user 
-0x57c7 022984 call clear_temp_block 
-0x57c8 022985 arg 0 ,regb 
-0x57c9 022986 arg mem_le_data_temp ,contw 
-0x57ca 022987 call le_modified_name_adv_loop 
-0x57cb 022988 fetch 1 ,mem_le_name_len 
-0x57cc 022989 add pdata ,1 ,temp 
-0x57cd 022990 iadd regb ,rega 
-0x57ce 022991 increase 2 ,rega 
-0x57cf 022992 sub rega ,0x1f ,null 
-0x57d0 022993 nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
-0x57d1 022994 istoret 1 ,contw 
-0x57d2 022995 arg gap_adtype_local_name_complete ,temp 
-0x57d3 022996 istoret 1 ,contw 
-0x57d4 022997 iforce loopcnt 
-0x57d5 022998 call memcpy_fast 
-0x57d6 022999 copy rega ,regb 
-:      023000 le_modified_name_adv_and_scan_store_data:
-0x57d7 023001 deposit regb 
-0x57d8 023002 store 1 ,mem_le_data_len_temp 
-0x57d9 023003 arg mem_le_data_len_temp ,contr 
-0x57da 023004 setarg -32 
-0x57db 023005 iadd regc ,contw 
-0x57dc 023006 branch memcpy32 
-:      023008 le_modified_name_adv_and_scan_name_overflow:
-0x57dd 023009 call disable_user 
-0x57de 023010 branch le_modified_name_adv_and_scan_store_data 
-:      023012 le_modified_name_adv_loop:
-0x57df 023013 ifetch 1 ,rega 
-0x57e0 023014 rtn blank 
-0x57e1 023015 pincrease 1 
-0x57e2 023016 ifetcht 1 ,contr 
-0x57e3 023017 sub temp ,gap_adtype_local_name_complete ,null 
-0x57e4 023018 branch le_modified_name_adv_found_name ,zero 
-0x57e5 023019 iadd regb ,regb 
-0x57e6 023020 copy rega ,contr 
-0x57e7 023021 iforce loopcnt 
-0x57e8 023022 call memcpy_fast 
-0x57e9 023023 copy contr ,rega 
-:      023024 le_modified_name_adv_loop2:
-0x57ea 023025 deposit rega 
-0x57eb 023026 isub regc ,null 
-0x57ec 023027 rtn positive 
-0x57ed 023028 branch le_modified_name_adv_loop 
-:      023030 le_modified_name_adv_found_name:
-0x57ee 023031 iadd rega ,rega 
-0x57ef 023032 branch le_modified_name_adv_loop2 
-:      023035 memcpy_empty:
-0x57f0 023036 setarg space 
-0x57f1 023037 istore 1 ,contw 
-0x57f2 023038 loop memcpy_empty 
-0x57f3 023039 rtn 
-:      023042 le_lpm_set_mult:
-0x57f4 023043 bpatchx patch2e_7 ,mem_patch2e 
-0x57f5 023044 disable wake 
-0x57f6 023045 branch le_lpm_set_mult_attempt ,attempt 
-0x57f7 023046 nbranch le_lpm_lost ,match 
-:      023047 le_lpm_set_mult_attempt:
-0x57f8 023048 call lpm_match 
-0x57f9 023049 fetch 2 ,mem_rx_window_sniff 
-0x57fa 023050 store 2 ,mem_le_receive_window 
-0x57fb 023052 nbranch lpm_mult_short ,match 
-0x57fc 023053 bmark1 mark_old_packet ,lpm_mult_short 
-0x57fd 023055 fetch 1 ,mem_le_packet_size 
-0x57fe 023056 nbranch lpm_mult_short ,blank 
-0x57ff 023057 fetch 1 ,mem_le_txlen 
-0x5800 023058 nbranch lpm_mult_short ,blank 
-0x5801 023060 fetch 1 ,mem_le_configuration 
-0x5802 023061 bbit1 bit_ble_short_mult ,lpm_mult_short 
-0x5803 023063 fetch 1 ,mem_le_state 
-0x5804 023064 bbit1 lestate_update_param ,lpm_mult_short 
-0x5805 023065 branch lpm_mult_wait_timeout 
-:      023067 le_lpm_lost:
-0x5806 023068 fetcht 2 ,mem_rx_window_sniff 
-0x5807 023069 rshift temp ,temp 
-0x5808 023070 fetch 2 ,mem_le_receive_window 
-0x5809 023071 iadd temp ,pdata 
-0x580a 023072 store 2 ,mem_le_receive_window 
-0x580b 023073 branch lpm_lost 
-:      023076 le_set_config_fixed_tk:
-0x580c 023077 arg bit_ble_passkey_fixed_key ,queue 
-0x580d 023078 branch le_set_config 
-:      023080 le_clr_config_fixed_tk:
-0x580e 023081 arg bit_ble_passkey_fixed_key ,queue 
-0x580f 023082 branch le_clr_config 
-:      023084 le_set_config_fixed_ltk:
-0x5810 023085 arg bit_ble_pairing_fixed_ltk ,queue 
-0x5811 023086 branch le_set_config 
-:      023088 le_clr_config_fixed_ltk:
-0x5812 023089 arg bit_ble_pairing_fixed_ltk ,queue 
-0x5813 023090 branch le_clr_config 
-:      023092 le_set_config_more_data:
-0x5814 023093 arg bit_ble_transmit_packet_by_md ,queue 
-0x5815 023094 branch le_set_config 
-:      023096 le_clr_config_more_data:
-0x5816 023097 arg bit_ble_transmit_packet_by_md ,queue 
-0x5817 023098 branch le_clr_config 
-:      023100 le_set_config_read_authentication:
-0x5818 023101 arg bit_ble_read_auth ,queue 
-0x5819 023102 branch le_set_config 
-:      023104 le_clr_config_read_authentication:
-0x581a 023105 arg bit_ble_read_auth ,queue 
-0x581b 023106 branch le_clr_config 
-:      023108 le_set_config_write_authentication:
-0x581c 023109 arg bit_ble_write_auth ,queue 
-0x581d 023110 branch le_set_config 
-:      023112 le_clr_config_write_authentication:
-0x581e 023113 arg bit_ble_write_auth ,queue 
-0x581f 023114 branch le_clr_config 
-:      023116 le_set_config_short_mult:
-0x5820 023117 arg bit_ble_short_mult ,queue 
-0x5821 023118 branch le_set_config 
-:      023120 le_clr_config_short_mult:
-0x5822 023121 arg bit_ble_short_mult ,queue 
-0x5823 023122 branch le_clr_config 
-:      023125 le_set_config:
-0x5824 023126 fetch 1 ,mem_le_configuration 
-0x5825 023127 qset1 pdata 
-0x5826 023128 store 1 ,mem_le_configuration 
-0x5827 023129 rtn 
-:      023131 le_clr_config:
-0x5828 023132 fetch 1 ,mem_le_configuration 
-0x5829 023133 qset0 pdata 
-0x582a 023134 store 1 ,mem_le_configuration 
-0x582b 023135 rtn 
-:      023137 le_set_fixed_ltk:
-0x582c 023138 setarg 0x112233 
-0x582d 023139 store 3 ,mem_le_fixed_ltk 
-0x582e 023140 setarg 0x445566 
-0x582f 023141 istore 3 ,contw 
-0x5830 023142 setarg 0x778899 
-0x5831 023143 istore 3 ,contw 
-0x5832 023144 setarg 0x001122 
-0x5833 023145 istore 3 ,contw 
-0x5834 023146 setarg 0x334455 
-0x5835 023147 istore 3 ,contw 
-0x5836 023148 setarg 0x66 
-0x5837 023149 istore 1 ,contw 
-0x5838 023150 rtn 
-:      023153 le_set_justwork:
-0x5839 023154 setarg 0x01000302 
-0x583a 023155 store 4 ,mem_le_pres 
-0x583b 023156 setarg 0x010010 
-0x583c 023157 store 3 ,mem_le_pres_max_keysize 
-0x583d 023158 jam 1 ,mem_le_pairing_mode 
-0x583e 023159 rtn 
-:      023163 le_fifo_malloc_tx_empty:
-0x583f 023164 arg 0 ,rega 
-0x5840 023165 arg llid_empty ,type 
-0x5841 023166 branch le_fifo_malloc_tx 
-:      023170 le_fifo_malloc_tx_ll:
-0x5842 023171 arg llid_le_ll ,type 
-0x5843 023172 call le_fifo_malloc_tx 
-0x5844 023173 copy regb ,pdata 
-0x5845 023174 istore 1 ,contw 
-0x5846 023175 rtn 
-:      023179 le_fifo_malloc_tx_l2cap:
-0x5847 023180 force llid_l2cap_start ,type 
-0x5848 023181 increase 4 ,rega 
-0x5849 023182 call le_fifo_malloc_tx 
-0x584a 023183 increase -4 ,rega 
-0x584b 023184 copy rega ,pdata 
-0x584c 023185 istore 2 ,contw 
-0x584d 023186 copy regb ,pdata 
-0x584e 023187 istore 2 ,contw 
-0x584f 023188 rtn 
-:      023192 le_fifo_malloc_tx:
-0x5850 023193 sub rega ,240 ,null 
-0x5851 023194 nbranch assert ,positive 
-0x5852 023195 fetch 1 ,mem_le_tx_buff_used 
-0x5853 023196 arg 1 ,temp 
-0x5854 023197 arg le_tx_buff_count ,loopcnt 
-:      023198 le_fifo_malloc_tx_loop:
-0x5855 023199 iand temp ,null 
-0x5856 023200 branch le_fifo_malloc_tx_got_empty ,zero 
-0x5857 023201 lshift temp ,temp 
-0x5858 023202 loop le_fifo_malloc_tx_loop 
-0x5859 023203 branch assert 
-:      023204 le_fifo_malloc_tx_got_empty:
-0x585a 023205 ixor temp ,pdata 
-0x585b 023206 store 1 ,mem_le_tx_buff_used 
-0x585c 023207 sub loopcnt ,le_tx_buff_count ,pdata 
-0x585d 023208 lshift4 pdata ,pdata 
-0x585e 023209 lshift4 pdata ,pdata 
-0x585f 023210 arg mem_le_tx_buffer0 ,temp 
-0x5860 023211 iadd temp ,temp 
-:      023212 le_fifo_tx_find_empty_ptr:
-0x5861 023213 arg 0 ,loopcnt 
-0x5862 023214 arg mem_le_tx_ptr0 ,contr 
-:      023215 le_fifo_tx_find_empty_ptr_loop:
-0x5863 023216 ifetch 2 ,contr 
-0x5864 023217 branch le_fifo_tx_found_empty_ptr ,blank 
-0x5865 023218 copy loopcnt ,pdata 
-0x5866 023219 increase 1 ,loopcnt 
-0x5867 023220 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
-0x5868 023221 branch assert 
-:      023224 le_fifo_tx_found_empty_ptr:
-0x5869 023225 increase -2 ,contr 
-0x586a 023226 istoret 2 ,contr 
-0x586b 023227 copy temp ,contw 
-0x586c 023228 copy rega ,pdata 
-0x586d 023229 istore 1 ,contw 
-0x586e 023230 setarg 0 
-0x586f 023231 istore 1 ,contw 
-0x5870 023232 copy type ,pdata 
-0x5871 023233 istore 1 ,contw 
-0x5872 023234 rtn 
-:      023238 le_fifo_get_first_tx_ptr:
-0x5873 023239 fetch 2 ,mem_le_tx_ptr0 
-0x5874 023240 copy pdata ,contr 
-0x5875 023241 rtn 
-:      023243 le_fifo_get_second_tx_ptr:
-0x5876 023244 fetch 2 ,mem_le_tx_ptr1 
-0x5877 023245 copy pdata ,contr 
-0x5878 023246 rtn 
-:      023248 le_fifo_get_last_tx_ptr:
-0x5879 023249 call le_fifo_get_last_tx_ptr0 
-0x587a 023250 copy pdata ,contr 
-0x587b 023251 rtn 
-:      023252 le_fifo_get_last_tx_ptr0:
-0x587c 023253 fetch 2 ,mem_le_tx_ptr3 
-0x587d 023254 nrtn blank 
-0x587e 023255 fetch 2 ,mem_le_tx_ptr2 
-0x587f 023256 nrtn blank 
-0x5880 023257 fetch 2 ,mem_le_tx_ptr1 
-0x5881 023258 nrtn blank 
-0x5882 023259 fetch 2 ,mem_le_tx_ptr0 
-0x5883 023260 rtn 
-:      023262 le_fifo_get_first_l2cap_ptr:
-0x5884 023263 call le_fifo_get_first_tx_ptr 
-0x5885 023264 increase 3 ,contr 
-0x5886 023265 rtn 
-:      023267 le_fifo_get_first_att_ptr:
-0x5887 023268 call le_fifo_get_first_tx_ptr 
-0x5888 023269 increase 7 ,contr 
-0x5889 023270 rtn 
-:      023272 le_fifo_get_last_att_ptr:
-0x588a 023273 call le_fifo_get_last_tx_ptr 
-0x588b 023274 increase 7 ,contr 
-0x588c 023275 rtn 
-:      023277 le_fifo_get_last_l2cap_ptr:
-0x588d 023278 call le_fifo_get_last_tx_ptr 
-0x588e 023279 increase 3 ,contr 
-0x588f 023280 rtn 
-:      023284 le_fifo_check_full:
-0x5890 023285 fetch 2 ,mem_le_tx_ptr3 
-0x5891 023286 rtn 
-:      023289 le_fifo_check_nearly_full:
-0x5892 023290 fetch 2 ,mem_le_tx_ptr2 
-0x5893 023291 rtn 
-:      023294 le_fifo_check_empty:
-0x5894 023295 fetch 2 ,mem_le_tx_ptr0 
-0x5895 023296 rtn 
-:      023299 le_fifo_release_first_node:
-0x5896 023300 fetch 2 ,mem_le_tx_ptr0 
-0x5897 023301 arg mem_le_tx_buffer0 ,temp 
-0x5898 023302 isub temp ,pdata 
-0x5899 023303 rshift4 pdata ,pdata 
-0x589a 023304 rshift4 pdata ,queue 
-0x589b 023305 fetch 1 ,mem_le_tx_buff_used 
-0x589c 023306 qset0 pdata 
-0x589d 023307 store 1 ,mem_le_tx_buff_used 
-0x589e 023308 arg 0 ,loopcnt 
-:      023309 le_fifo_release_first_node_loop:
-0x589f 023310 lshift loopcnt ,pdata 
-0x58a0 023311 arg mem_le_tx_ptr1 ,temp 
-0x58a1 023312 iadd temp ,temp 
-0x58a2 023313 ifetch 2 ,temp 
-0x58a3 023314 increase -2 ,temp 
-0x58a4 023315 istore 2 ,temp 
-0x58a5 023316 copy loopcnt ,pdata 
-0x58a6 023317 increase 1 ,loopcnt 
-0x58a7 023318 bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
-0x58a8 023319 setarg 0 
-0x58a9 023320 istore 2 ,temp 
-0x58aa 023321 rtn 
-:      023327 le_parse_att:
-0x58ab 023328 ifetch 3 ,contr 
-0x58ac 023329 store 3 ,mem_le_att_opcode 
-0x58ad 023330 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
-0x58ae 023331 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
-0x58af 023332 beq attop_find_information_request ,le_parse_att_find_information_request 
-0x58b0 023333 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
-0x58b1 023334 beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
-0x58b2 023335 beq attop_read_request ,le_parse_att_read_request 
-0x58b3 023336 beq attop_read_blob_request ,le_parse_att_read_blob_request 
-0x58b4 023337 beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
-0x58b5 023338 beq attop_write_request ,le_parse_att_write_request 
-0x58b6 023339 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
-0x58b7 023340 beq attop_execute_write_request ,le_parse_att_execute_write_request 
-0x58b8 023341 beq attop_write_command ,le_parse_att_write_command 
-0x58b9 023342 rtn 
-:      023345 le_send_att_exchange_mtu_requset:
-0x58ba 023346 force 3 ,rega 
-0x58bb 023347 call le_fifo_malloc_tx_l2cap_gatt 
-0x58bc 023348 setarg attop_exchange_mtu_request 
-0x58bd 023349 istore 1 ,contw 
-0x58be 023350 fetch 2 ,mem_le_local_mtu 
-0x58bf 023351 istore 2 ,contw 
-0x58c0 023352 rtn 
-:      023355 le_parse_att_exchange_mtu_request:
-0x58c1 023356 call le_parse_att_exchange_mtu_response 
-:      023357 le_send_att_exchange_mtu_response:
-0x58c2 023358 force 3 ,rega 
-0x58c3 023359 call le_fifo_malloc_tx_l2cap_gatt 
-0x58c4 023360 setarg attop_exchange_mtu_response 
-0x58c5 023361 istore 1 ,contw 
-0x58c6 023362 fetch 2 ,mem_le_local_mtu 
-0x58c7 023363 istore 2 ,contw 
-0x58c8 023364 rtn 
-:      023366 le_parse_att_exchange_mtu_response:
-0x58c9 023367 rshift8 pdata ,pdata 
-0x58ca 023368 store 2 ,mem_le_remote_mtu 
-0x58cb 023369 rtn 
-:      023371 le_parse_att_find_information_request:
-0x58cc 023372 call le_get_search_handle_start_end_common 
-0x58cd 023373 call enable_user 
-0x58ce 023374 branch le_send_att_find_information_response 
-:      023376 le_send_att_find_information_response:
-0x58cf 023377 arg 3 ,timeup 
-0x58d0 023378 call le_init_attlist_search 
-:      023379 le_send_att_find_information_res_loop:
-0x58d1 023380 call le_att_handle_inrange 
-0x58d2 023381 branch le_send_att_find_information_res_end ,blank 
-0x58d3 023382 nbranch le_send_att_find_information_res_next ,positive 
-0x58d4 023383 increase -2 ,contr 
-0x58d5 023384 call store_contr 
-0x58d6 023385 call get_contw 
-0x58d7 023386 nbranch le_send_att_find_information_res_store_info ,user 
-0x58d8 023387 call push_stack_rega_b_c 
-0x58d9 023388 call disable_user 
-0x58da 023389 force 20 ,rega 
-0x58db 023390 call le_fifo_malloc_tx_l2cap_gatt 
-0x58dc 023391 call pop_stack_rega_b_c 
-0x58dd 023392 setarg attop_find_information_response 
-0x58de 023393 istore 1 ,contw 
-0x58df 023394 setarg uuid_size_16bit 
-0x58e0 023395 istore 1 ,contw 
-:      023396 le_send_att_find_information_res_store_info:
-0x58e1 023397 call get_contr 
-0x58e2 023398 ifetch 2 ,contr 
-0x58e3 023399 istore 2 ,contw 
-0x58e4 023400 ifetch 1 ,contr 
-0x58e5 023401 copy pdata ,loopcnt 
-0x58e6 023402 call memcpy 
-0x58e7 023403 call store_contw 
-0x58e8 023404 increase -1 ,timeup 
-0x58e9 023405 branch le_send_att_find_information_res_end ,zero 
-:      023406 le_send_att_find_information_res_cont:
-0x58ea 023407 ifetch 1 ,contr 
-0x58eb 023408 iadd contr ,contr 
-0x58ec 023409 branch le_send_att_find_information_res_loop 
-:      023410 le_send_att_find_information_res_next:
-0x58ed 023411 ifetch 1 ,contr 
-0x58ee 023412 iadd contr ,contr 
-0x58ef 023413 branch le_send_att_find_information_res_cont 
-:      023414 le_send_att_find_information_res_end:
-0x58f0 023415 branch le_send_att_error_response_notfound ,user 
-0x58f1 023416 branch le_send_auto_len_by_mem 
-:      023419 le_parse_att_find_by_type_value_request:
-0x58f2 023420 call le_get_search_handle_start_end_common 
-0x58f3 023421 ifetch 2 ,contr 
-0x58f4 023422 store 2 ,mem_le_search_uuid 
-0x58f5 023423 call store_contr 
-0x58f6 023424 arg mem_le_search_att_type_length ,contw 
-0x58f7 023425 fetch 2 ,mem_le_l2cap_size 
-0x58f8 023426 increase -7 ,pdata 
-0x58f9 023427 call le_get_search_common2 
-0x58fa 023428 branch le_send_att_find_by_type_value_response 
-:      023431 le_start_end_handle_check_1:
-0x58fb 023432 disable user 
-0x58fc 023433 fetcht 2 ,mem_le_search_handle_start 
-0x58fd 023434 fetch 2 ,mem_le_search_handle_end 
-0x58fe 023435 isub temp ,null 
-0x58ff 023436 nbranch le_start_end_handle_check_1_fail ,positive 
-0x5900 023437 deposit temp 
-0x5901 023438 rtnne 0 
-:      023439 le_start_end_handle_check_1_fail:
-0x5902 023440 enable user 
-0x5903 023441 jam att_err_invalid_handle ,mem_le_err_code 
-0x5904 023442 branch le_send_att_error_response 
-:      023445 le_send_att_find_by_type_value_response:
-0x5905 023446 call le_start_end_handle_check_1 
-0x5906 023447 rtn user 
-0x5907 023448 fetcht 2 ,mem_le_search_uuid 
-0x5908 023449 setarg uuid_gatt_primary_service 
-0x5909 023450 isub temp ,null 
-0x590a 023451 branch le_send_att_find_by_type_value_res_primary ,zero 
-0x590b 023452 branch le_send_att_error_response_notfound 
-:      023455 le_send_att_find_by_type_value_res_primary:
-0x590c 023456 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
-0x590d 023457 fetcht 2 ,mem_le_search_handle_start 
-0x590e 023458 storet 2 ,mem_temp 
-0x590f 023459 call le_att_get_handle_info 
-0x5910 023460 nbranch le_send_att_error_response_notfound ,blank 
-:      023461 le_send_att_find_primary_search_loop:
-0x5911 023462 fetcht 2 ,mem_temp 
-0x5912 023463 call le_att_get_handle_info 
-0x5913 023464 nbranch le_send_att_error_response_notfound2 ,blank 
-0x5914 023465 copy contr ,rega 
-0x5915 023466 fetch 1 ,mem_le_curr_att_len 
-0x5916 023467 copy pdata ,loopcnt 
-0x5917 023468 fetcht 1 ,mem_le_search_att_type_length 
-0x5918 023469 isub temp ,null 
-0x5919 023470 nbranch le_send_att_find_primary_search_loop1 ,zero 
-0x591a 023471 arg mem_le_search_att_type ,regb 
-0x591b 023472 call string_compare 
-0x591c 023474 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
-0x591d 023476 fetch 2 ,mem_le_cur_uuid 
-0x591e 023477 fetcht 2 ,mem_le_search_uuid 
-0x591f 023478 isub temp ,null 
-0x5920 023479 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
-:      023480 le_send_att_find_primary_search_loop1:
-0x5921 023481 fetch 2 ,mem_temp 
-0x5922 023482 increase 1 ,pdata 
-0x5923 023483 store 2 ,mem_temp 
-0x5924 023484 branch le_send_att_find_primary_search_loop 
-:      023486 le_send_att_error_response_notfound2:
-0x5925 023487 fetch 1 ,mem_le_search_res 
-0x5926 023488 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
-0x5927 023489 branch le_send_att_error_response_notfound 
-:      023492 le_send_att_find_primary_search_end_start_handle_found:
-0x5928 023493 fetch 2 ,mem_le_cur_uuid 
-0x5929 023494 fetcht 2 ,mem_le_search_uuid 
-0x592a 023495 isub temp ,null 
-0x592b 023496 nbranch le_send_att_find_primary_search_loop1 ,zero 
-0x592c 023497 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
-0x592d 023499 fetcht 2 ,mem_temp 
-0x592e 023500 storet 2 ,mem_le_cur_handle_start 
-0x592f 023501 branch le_send_att_find_primary_search_loop1 
-:      023503 le_send_att_find_primary_search_end_ending_handle_found:
-0x5930 023504 fetch 1 ,mem_le_search_res 
-0x5931 023505 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
-0x5932 023506 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
-0x5933 023507 fetcht 2 ,mem_temp 
-0x5934 023508 increase -1 ,temp 
-0x5935 023509 storet 2 ,mem_le_cur_handle_end 
-:      023511 le_send_att_find_primary_search_end:
-0x5936 023512 arg 5 ,rega 
-0x5937 023513 call le_fifo_malloc_tx_l2cap_gatt 
-0x5938 023514 setarg attop_find_by_type_value_response 
-0x5939 023515 istore 1 ,contw 
-0x593a 023516 fetch 2 ,mem_le_cur_handle_start 
-0x593b 023517 istore 2 ,contw 
-0x593c 023518 fetch 2 ,mem_le_cur_handle_end 
-0x593d 023519 istore 2 ,contw 
-0x593e 023520 rtn 
-:      023524 le_parse_att_read_by_type_request:
-0x593f 023525 call le_get_search_handle_start_end_common 
-0x5940 023526 call le_get_search_att_uuid 
-0x5941 023527 branch le_send_att_read_by_type_response 
-:      023529 le_send_att_read_by_type_response:
-0x5942 023530 fetcht 2 ,mem_le_search_handle_start 
-0x5943 023531 storet 2 ,mem_temp 
-0x5944 023532 call le_init_attlist_search 
-0x5945 023533 call le_att_get_handle_ptr2 
-0x5946 023534 increase -2 ,contr 
-0x5947 023535 copy contr ,pdata 
-0x5948 023536 store 2 ,mem_le_cur_attlist_start_ptr 
-0x5949 023538 fetcht 2 ,mem_le_search_uuid 
-0x594a 023539 setarg uuid_chrctr_device_name 
-0x594b 023540 isub temp ,null 
-0x594c 023541 branch le_send_att_read_by_type_res_device_name ,zero 
-0x594d 023542 setarg uuid_gatt_characteristic 
-0x594e 023543 isub temp ,null 
-0x594f 023544 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
-0x5950 023545 arg 2 ,timeup 
-:      023546 le_send_att_read_by_type_response_loop:
-0x5951 023547 call le_att_check_handle_end 
-0x5952 023548 nbranch le_send_att_read_by_type_response_end ,positive 
-0x5953 023549 fetcht 2 ,mem_temp 
-0x5954 023550 call le_att_get_handle_info_from_ptr 
-0x5955 023551 beq 1 ,le_send_att_read_by_type_response_end 
-0x5956 023552 call le_att_same_uuid 
-0x5957 023553 nbranch le_send_att_read_by_type_response_next_handle ,zero 
-0x5958 023554 nbranch le_send_att_read_by_type_res_found_next ,user 
-0x5959 023555 disable user 
-0x595a 023556 arg 20 ,rega 
-0x595b 023557 call le_fifo_malloc_tx_l2cap_gatt 
-0x595c 023558 setarg attop_read_by_type_response 
-0x595d 023559 istore 1 ,contw 
-0x595e 023560 copy contw ,alarm 
-0x595f 023561 increase 1 ,contw 
-0x5960 023563 call le_send_att_read_by_type_write_properties 
-0x5961 023564 call le_att_next_handle 
-0x5962 023565 call le_att_get_handle_info_from_ptr 
-0x5963 023566 call le_send_att_read_by_type_write_uuid 
-0x5964 023567 fetch 1 ,mem_le_cur_uuid_length 
-0x5965 023568 increase 5 ,pdata 
-0x5966 023569 istore 1 ,alarm 
-0x5967 023570 fetch 1 ,mem_le_cur_uuid_length 
-0x5968 023571 beq 16 ,le_send_att_read_by_type_response_end 
-0x5969 023572 increase -1 ,timeup 
-0x596a 023573 branch le_send_att_read_by_type_response_end ,zero 
-:      023574 le_send_att_read_by_type_response_next_handle:
-0x596b 023575 call le_att_next_handle 
-0x596c 023576 branch le_send_att_read_by_type_response_loop 
-:      023577 le_send_att_read_by_type_response_end:
-0x596d 023578 branch le_send_att_error_response_notfound ,user 
-0x596e 023579 branch le_send_auto_len_by_mem 
-:      023581 le_send_att_read_by_type_res_found_next:
-0x596f 023582 call le_store_att_record 
-0x5970 023583 call le_att_next_handle 
-0x5971 023584 call le_att_get_handle_info_from_ptr 
-0x5972 023585 fetch 1 ,mem_le_cur_uuid_length 
-0x5973 023586 beq 16 ,le_send_att_read_by_type_response_end 
-0x5974 023588 call get_contw 
-0x5975 023589 fetch 2 ,mem_temp 
-0x5976 023590 increase -1 ,pdata 
-0x5977 023591 istore 2 ,contw 
-0x5978 023592 call le_write_att_record_common 
-0x5979 023593 call le_send_att_read_by_type_write_uuid 
-0x597a 023594 increase -1 ,timeup 
-0x597b 023595 branch le_send_att_read_by_type_response_end ,zero 
-0x597c 023596 branch le_send_att_read_by_type_response_next_handle 
-:      023599 le_send_att_read_by_type_write_properties:
-0x597d 023600 fetch 2 ,mem_temp 
-0x597e 023601 istore 2 ,contw 
-0x597f 023603 fetch 1 ,mem_le_curr_att_len 
-0x5980 023604 copy pdata ,loopcnt 
-0x5981 023605 call get_contr 
-0x5982 023606 call memcpy_fast 
-0x5983 023607 branch store_contw 
-:      023608 le_send_att_read_by_type_write_uuid:
-0x5984 023609 call get_contw 
-0x5985 023610 fetch 2 ,mem_temp 
-0x5986 023611 istore 2 ,contw 
-0x5987 023612 call store_contw 
-0x5988 023613 fetch 1 ,mem_le_cur_uuid_length 
-0x5989 023614 copy pdata ,loopcnt 
-0x598a 023615 call get_contw 
-0x598b 023616 call get_contr 
-0x598c 023617 isub loopcnt ,contr 
-0x598d 023618 increase -1 ,contr 
-0x598e 023619 call memcpy_fast 
-0x598f 023620 branch store_contw 
-:      023624 le_send_att_read_by_type_res_not_characteristic:
-0x5990 023625 fetcht 2 ,mem_le_search_handle_start 
-0x5991 023626 storet 2 ,mem_temp 
-:      023627 le_send_att_read_by_type_res_not_char_loop:
-0x5992 023628 call le_att_check_handle_end 
-0x5993 023629 nbranch le_send_att_error_response_notfound ,positive 
-0x5994 023630 call le_att_get_handle_info_from_ptr 
-0x5995 023631 beq 1 ,le_send_att_error_response_notfound 
-0x5996 023632 call le_att_same_uuid 
-0x5997 023633 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
-:      023635 le_send_att_read_by_type_res_not_char_common:
-0x5998 023636 arg 20 ,rega 
-0x5999 023637 call le_fifo_malloc_tx_l2cap_gatt 
-0x599a 023638 setarg attop_read_by_type_response 
-0x599b 023639 istore 1 ,contw 
-0x599c 023640 fetch 1 ,mem_le_curr_att_len 
-0x599d 023641 copy pdata ,loopcnt 
-0x599e 023642 increase 2 ,pdata 
-0x599f 023643 istore 1 ,contw 
-0x59a0 023644 fetch 2 ,mem_temp 
-0x59a1 023645 istore 2 ,contw 
-0x59a2 023646 call get_contr 
-0x59a3 023647 call memcpy_fast 
-0x59a4 023648 call store_contw 
-0x59a5 023649 branch le_send_auto_len_by_mem 
-:      023651 le_send_att_read_by_type_res_not_char_next:
-0x59a6 023652 call le_att_next_handle 
-0x59a7 023653 branch le_send_att_read_by_type_res_not_char_loop 
-:      023656 le_send_att_read_by_type_res_device_name:
-0x59a8 023657 arg uuid_chrctr_device_name ,temp 
-0x59a9 023658 call le_att_get_short_uuid_ptr 
-0x59aa 023659 rtn blank 
-0x59ab 023660 increase -5 ,contr 
-0x59ac 023661 ifetch 2 ,contr 
-0x59ad 023662 store 2 ,mem_temp 
-0x59ae 023663 arg 20 ,rega 
-0x59af 023664 call le_fifo_malloc_tx_l2cap_gatt 
-0x59b0 023665 setarg attop_read_by_type_response 
-0x59b1 023666 istore 1 ,contw 
-0x59b2 023667 fetch 1 ,mem_le_name_len 
-0x59b3 023668 copy pdata ,loopcnt 
-0x59b4 023669 increase 2 ,pdata 
-0x59b5 023670 istore 1 ,contw 
-0x59b6 023671 fetch 2 ,mem_temp 
-0x59b7 023672 istore 2 ,contw 
-0x59b8 023673 arg mem_le_name ,contr 
-0x59b9 023674 call memcpy_fast 
-0x59ba 023675 call store_contw 
-0x59bb 023676 branch le_send_auto_len_by_mem 
-:      023680 le_parse_att_read_request:
-0x59bc 023681 fetcht 2 ,mem_le_att_handle 
-0x59bd 023682 fetch 1 ,mem_le_configuration 
-0x59be 023683 bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
-:      023685 le_send_att_read_response:
-0x59bf 023686 call le_att_get_handle_ptr 
-0x59c0 023687 branch le_send_att_error_response_notfound ,blank 
-0x59c1 023688 increase -2 ,contr 
-0x59c2 023689 ifetch 2 ,contr 
-0x59c3 023690 arg uuid_chrctr_device_name ,temp 
-0x59c4 023691 isub temp ,null 
-0x59c5 023692 branch le_send_device_name ,zero 
-0x59c6 023693 ifetch 1 ,contr 
-0x59c7 023694 sub pdata ,22 ,null 
-0x59c8 023695 branch le_send_att_read_response_less ,positive 
-0x59c9 023696 force 22 ,pdata 
-:      023697 le_send_att_read_response_less:
-0x59ca 023698 copy pdata ,regc 
-0x59cb 023699 call store_contr 
-0x59cc 023700 add regc ,1 ,rega 
-0x59cd 023701 call le_fifo_malloc_tx_l2cap_gatt 
-0x59ce 023702 setarg attop_read_response 
-0x59cf 023703 istore 1 ,contw 
-0x59d0 023704 copy regc ,loopcnt 
-0x59d1 023705 call get_contr 
-0x59d2 023706 branch memcpy 
-:      023708 le_send_device_name:
-0x59d3 023709 call store_contr 
-0x59d4 023710 fetch 1 ,mem_le_name_len 
-0x59d5 023711 add pdata ,1 ,rega 
-0x59d6 023712 call le_fifo_malloc_tx_l2cap_gatt 
-0x59d7 023713 setarg attop_read_response 
-0x59d8 023714 istore 1 ,contw 
-0x59d9 023715 fetch 1 ,mem_le_name_len 
-0x59da 023716 copy pdata ,loopcnt 
-0x59db 023717 arg mem_le_name ,contr 
-0x59dc 023718 branch memcpy 
-:      023721 le_send_att_read_response_check_auth:
-0x59dd 023722 fetch 2 ,mem_le_pairing_handle 
-0x59de 023723 isub temp ,null 
-0x59df 023724 nbranch le_send_att_read_response ,zero 
-0x59e0 023726 call le_check_encrypt_state 
-0x59e1 023727 nbranch le_send_att_read_response ,user 
-0x59e2 023728 jam att_err_insufficient_authentication ,mem_le_err_code 
-0x59e3 023729 branch le_send_att_error_response 
-:      023732 le_parse_att_read_blob_request:
-0x59e4 023733 ifetch 2 ,contr 
-0x59e5 023734 store 2 ,mem_le_att_offset 
-:      023735 le_send_att_read_blob_response:
-0x59e6 023736 arg 20 ,rega 
-0x59e7 023737 call le_fifo_malloc_tx_l2cap_gatt 
-0x59e8 023738 setarg attop_read_blob_response 
-0x59e9 023739 istore 1 ,contw 
-0x59ea 023740 fetch 2 ,mem_le_att_offset 
-0x59eb 023741 iforce rega 
-0x59ec 023742 fetcht 2 ,mem_le_att_handle 
-0x59ed 023743 call le_att_get_handle_ptr 
-0x59ee 023744 branch le_send_att_error_response_notfound ,blank 
-0x59ef 023745 ifetch 1 ,contr 
-0x59f0 023746 isub rega ,loopcnt 
-0x59f1 023747 nbranch le_send_att_error_response_notfound ,positive 
-0x59f2 023748 sub loopcnt ,22 ,null 
-0x59f3 023749 branch le_send_att_read_blob_response_less ,positive 
-0x59f4 023750 force 22 ,loopcnt 
-:      023751 le_send_att_read_blob_response_less:
-0x59f5 023752 deposit rega 
-0x59f6 023753 iadd contr ,contr 
-0x59f7 023754 call memcpy_fast 
-0x59f8 023755 call store_contw 
-0x59f9 023756 branch le_send_auto_len_by_mem 
-:      023759 le_parse_att_read_by_group_type_request:
-0x59fa 023760 call le_get_search_handle_start_end_common 
-0x59fb 023761 call le_get_search_att_type 
-0x59fc 023762 branch le_send_att_read_by_group_type_response 
-:      023767 le_send_att_read_by_group_type_response:
-0x59fd 023768 arg 2 ,timeup 
-0x59fe 023769 fetcht 2 ,mem_le_search_handle_start 
-0x59ff 023773 storet 2 ,mem_temp 
-0x5a00 023774 call le_init_attlist_search 
-0x5a01 023775 call le_att_get_handle_ptr2 
-0x5a02 023776 increase -2 ,contr 
-0x5a03 023777 copy contr ,pdata 
-0x5a04 023778 store 2 ,mem_le_cur_attlist_start_ptr 
-:      023779 le_send_att_read_by_group_type_response_loop:
-0x5a05 023780 call le_att_check_handle_end 
-0x5a06 023781 nbranch le_send_att_read_by_group_type_end0 ,positive 
-0x5a07 023782 fetcht 2 ,mem_temp 
-0x5a08 023783 call le_att_get_handle_info_from_ptr 
-0x5a09 023784 beq 1 ,le_send_att_read_by_group_type_end1 
-0x5a0a 023786 call le_att_same_type 
-0x5a0b 023787 nbranch le_send_att_read_by_group_type_next_handle ,zero 
-0x5a0c 023788 copy timeup ,pdata 
-0x5a0d 023789 beq 0 ,le_send_att_read_by_group_type_end1 
-0x5a0e 023790 nbranch le_send_att_read_by_group_type_store_write_record ,user 
-0x5a0f 023791 disable user 
-0x5a10 023793 arg 20 ,rega 
-0x5a11 023794 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a12 023795 setarg attop_read_by_group_type_response 
-0x5a13 023796 istore 1 ,contw 
-0x5a14 023797 fetch 1 ,mem_le_curr_att_len 
-0x5a15 023798 increase 4 ,pdata 
-0x5a16 023799 istore 1 ,contw 
-0x5a17 023800 call store_contw 
-0x5a18 023801 branch le_send_att_read_by_group_type_store_record 
-:      023802 le_send_att_read_by_group_type_store_write_record:
-0x5a19 023803 fetch 1 ,mem_le_curr_att_len 
-0x5a1a 023804 beq 16 ,le_send_att_read_by_group_type_end1 
-0x5a1b 023805 fetch 2 ,mem_temp 
-0x5a1c 023806 increase -1 ,pdata 
-0x5a1d 023807 store 2 ,mem_le_cur_handle_end 
-0x5a1e 023808 call le_write_att_record 
-:      023809 le_send_att_read_by_group_type_store_record:
-0x5a1f 023810 fetch 2 ,mem_temp 
-0x5a20 023811 store 2 ,mem_le_cur_handle_start 
-0x5a21 023812 call le_store_att_record 
-0x5a22 023813 increase -1 ,timeup 
-:      023815 le_send_att_read_by_group_type_next_handle:
-0x5a23 023816 call le_att_next_handle 
-0x5a24 023817 branch le_send_att_read_by_group_type_response_loop 
-:      023819 le_send_att_read_by_group_type_end0:
-0x5a25 023820 fetch 2 ,mem_temp 
-0x5a26 023821 store 2 ,mem_le_cur_handle_end 
-0x5a27 023822 branch le_send_att_read_by_group_type_end_common 
-:      023823 le_send_att_read_by_group_type_end1:
-0x5a28 023824 fetch 2 ,mem_temp 
-0x5a29 023825 increase -1 ,pdata 
-0x5a2a 023826 store 2 ,mem_le_cur_handle_end 
-0x5a2b 023827 branch le_send_att_read_by_group_type_end_common 
-:      023828 le_send_att_read_by_group_type_end_common:
-0x5a2c 023829 branch le_send_att_error_response_notfound ,user 
-0x5a2d 023830 call le_write_att_record 
-0x5a2e 023831 branch le_send_auto_len_by_mem 
-:      023836 le_parse_att_write_request:
-0x5a2f 023837 copy contr ,rega 
-0x5a30 023838 fetch 2 ,mem_le_l2cap_size 
-0x5a31 023839 add pdata ,-3 ,regb 
-0x5a32 023840 call le_writeatt_cb 
-:      023841 le_send_att_write_response_check_auth:
-0x5a33 023842 fetch 1 ,mem_le_configuration 
-0x5a34 023843 bbit0 bit_ble_write_auth ,le_send_att_write_response 
-0x5a35 023845 fetcht 2 ,mem_le_att_handle 
-0x5a36 023846 fetch 2 ,mem_le_pairing_handle 
-0x5a37 023847 isub temp ,null 
-0x5a38 023848 nbranch le_send_att_write_response ,zero 
-0x5a39 023849 call le_check_encrypt_state 
-0x5a3a 023850 nbranch le_send_att_write_response ,user 
-0x5a3b 023851 jam att_err_insufficient_authentication ,mem_le_err_code 
-0x5a3c 023852 branch le_send_att_error_response 
-:      023854 le_send_att_write_response:
-0x5a3d 023855 force 1 ,rega 
-0x5a3e 023856 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a3f 023857 setarg attop_write_response 
-0x5a40 023858 istore 1 ,contw 
-0x5a41 023859 rtn 
-:      023861 le_check_encrypt_state:
-0x5a42 023862 call disable_user 
-0x5a43 023863 fetch 1 ,mem_le_pairing_mode 
-0x5a44 023864 rtneq le_pairing_mode_none 
-0x5a45 023865 fetch 1 ,mem_context 
-0x5a46 023866 rtnbit1 lestate_encryption 
-0x5a47 023867 branch enable_user 
-:      023870 le_parse_att_prepare_write_request:
-0x5a48 023871 add contr ,2 ,rega 
-0x5a49 023872 fetch 2 ,mem_le_l2cap_size 
-0x5a4a 023873 add pdata ,-5 ,regb 
-0x5a4b 023874 call le_writeatt_cb 
-0x5a4c 023875 branch le_send_att_prepare_write_response 
-:      023878 le_send_att_prepare_write_response:
-0x5a4d 023879 fetch 2 ,mem_le_l2cap_size 
-0x5a4e 023880 copy pdata ,rega 
-0x5a4f 023881 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a50 023882 setarg attop_prepare_write_response 
-0x5a51 023883 istore 1 ,contw 
-0x5a52 023884 fetch 2 ,mem_le_att_handle 
-0x5a53 023885 istore 2 ,contw 
-0x5a54 023886 fetch 2 ,mem_le_l2cap_size 
-0x5a55 023887 add pdata ,-5 ,loopcnt 
-0x5a56 023888 fetch 2 ,mem_le_payload_ptr 
-0x5a57 023889 add pdata ,7 ,contr 
-0x5a58 023890 ifetch 2 ,contr 
-0x5a59 023891 istore 2 ,contw 
-0x5a5a 023892 branch memcpy_fast 
-:      023896 le_parse_att_execute_write_request:
-:      023898 le_send_att_execute_write_response:
-0x5a5b 023899 force 1 ,rega 
-0x5a5c 023900 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a5d 023901 setarg attop_execute_write_response 
-0x5a5e 023902 istore 1 ,contw 
-0x5a5f 023903 rtn 
-:      023907 le_parse_att_write_command:
-0x5a60 023908 copy contr ,rega 
-0x5a61 023909 fetch 2 ,mem_le_l2cap_size 
-0x5a62 023910 add pdata ,-3 ,regb 
-0x5a63 023911 branch le_writeatt_cb 
-:      023916 le_att_malloc_tx_notify:
-0x5a64 023917 copy temp ,regc 
-0x5a65 023918 increase 3 ,rega 
-0x5a66 023919 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a67 023920 increase -3 ,rega 
-0x5a68 023921 setarg attop_handle_value_notification 
-0x5a69 023922 istore 1 ,contw 
-0x5a6a 023923 copy regc ,temp 
-0x5a6b 023924 istoret 2 ,contw 
-0x5a6c 023925 rtn 
-:      023928 le_att_malloc_tx_indication:
-0x5a6d 023929 copy temp ,regc 
-0x5a6e 023930 increase 3 ,rega 
-0x5a6f 023931 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a70 023932 increase -3 ,rega 
-0x5a71 023933 setarg attop_handle_value_indication 
-0x5a72 023934 istore 1 ,contw 
-0x5a73 023935 copy regc ,temp 
-0x5a74 023936 istoret 2 ,contw 
-0x5a75 023937 rtn 
-:      023942 le_send_att_error_response_notfound:
-0x5a76 023943 jam att_err_attribute_not_found ,mem_le_err_code 
-:      023944 le_send_att_error_response:
-0x5a77 023945 force 5 ,rega 
-0x5a78 023946 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a79 023947 setarg attop_error_response 
-0x5a7a 023948 istore 1 ,contw 
-0x5a7b 023949 fetch 1 ,mem_le_att_opcode 
-0x5a7c 023950 istore 1 ,contw 
-0x5a7d 023951 fetch 2 ,mem_le_att_handle 
-0x5a7e 023952 istore 2 ,contw 
-0x5a7f 023953 fetch 1 ,mem_le_err_code 
-0x5a80 023954 istore 1 ,contw 
-0x5a81 023955 rtn 
-:      023958 le_fifo_malloc_tx_l2cap_gatt:
-0x5a82 023959 force le_l2cap_cid_att ,regb 
-0x5a83 023960 branch le_fifo_malloc_tx_l2cap 
-:      023963 le_att_next_handle:
-0x5a84 023964 fetcht 2 ,mem_temp 
-0x5a85 023965 increase 1 ,temp 
-0x5a86 023966 storet 2 ,mem_temp 
-0x5a87 023967 rtn 
-:      023969 le_att_check_handle_end:
-0x5a88 023970 fetcht 2 ,mem_temp 
-0x5a89 023971 fetch 2 ,mem_le_search_handle_end 
-0x5a8a 023972 isub temp ,null 
-0x5a8b 023973 rtn 
-:      023976 le_att_same_type:
-0x5a8c 023977 fetcht 1 ,mem_le_search_att_type_length 
-0x5a8d 023978 arg mem_le_search_att_type ,rega 
-:      023979 le_att_check_same_common:
-0x5a8e 023980 fetch 1 ,mem_le_cur_uuid_length 
-0x5a8f 023981 copy pdata ,loopcnt 
-0x5a90 023982 isub temp ,null 
-0x5a91 023983 nrtn zero 
-0x5a92 023984 arg mem_le_cur_uuid ,regb 
-0x5a93 023985 branch string_compare 
-:      023987 le_att_same_uuid:
-0x5a94 023988 fetcht 1 ,mem_le_search_uuid_length 
-0x5a95 023989 arg mem_le_search_uuid ,rega 
-0x5a96 023990 branch le_att_check_same_common 
-:      023993 le_store_att_record:
-0x5a97 023994 fetch 1 ,mem_le_curr_att_len 
-0x5a98 023995 store 1 ,mem_tmp_buffer 
-0x5a99 023996 copy pdata ,loopcnt 
-0x5a9a 023997 call get_contr 
-0x5a9b 023998 branch memcpy_fast 
-:      024001 le_write_att_record:
-0x5a9c 024002 call get_contw 
-0x5a9d 024003 fetch 2 ,mem_le_cur_handle_start 
-0x5a9e 024004 istore 2 ,contw 
-0x5a9f 024005 fetch 2 ,mem_le_cur_handle_end 
-0x5aa0 024006 istore 2 ,contw 
-:      024007 le_write_att_record_common:
-0x5aa1 024008 fetch 1 ,mem_tmp_buffer 
-0x5aa2 024009 copy pdata ,loopcnt 
-0x5aa3 024010 call memcpy_fast 
-0x5aa4 024011 branch store_contw 
-:      024015 le_send_auto_len_by_mem:
-0x5aa5 024016 call get_contw 
-0x5aa6 024017 call le_fifo_get_last_att_ptr 
-0x5aa7 024018 copy contw ,pdata 
-0x5aa8 024019 isub contr ,rega 
-0x5aa9 024020 call le_fifo_get_last_l2cap_ptr 
-0x5aaa 024021 copy rega ,pdata 
-0x5aab 024022 istore 2 ,contr 
-0x5aac 024023 increase 4 ,rega 
-0x5aad 024024 call le_fifo_get_last_tx_ptr 
-0x5aae 024025 copy rega ,pdata 
-0x5aaf 024026 istore 1 ,contr 
-0x5ab0 024027 rtn 
-:      024030 le_get_search_handle_start_end_common:
-0x5ab1 024031 rshift8 pdata ,pdata 
-0x5ab2 024032 store 2 ,mem_le_search_handle_start 
-0x5ab3 024033 ifetch 2 ,contr 
-0x5ab4 024034 store 2 ,mem_le_search_handle_end 
-0x5ab5 024035 rtn 
-:      024040 le_parse_signaling:
-0x5ab6 024041 ifetch 1 ,contr 
-0x5ab7 024042 ifetcht 1 ,contr 
-0x5ab8 024043 ifetcht 2 ,contr 
-0x5ab9 024044 beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
-0x5aba 024045 rtn 
-:      024046 le_l2cap_parse_conn_parameter_update_rsp:
-0x5abb 024047 ifetch 2 ,contr 
-0x5abc 024048 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x5abd 024049 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
-0x5abe 024050 branch ui_ipc_send_event 
-:      024056 le_l2cap_tx_update_req:
-0x5abf 024057 arg 0x0c ,rega 
-0x5ac0 024058 arg l2cap_connection_parameter_update_request ,regc 
-0x5ac1 024059 call le_fifo_malloc_tx_l2cap_signaling 
-0x5ac2 024060 setarg 0x08 
-0x5ac3 024061 istore 2 ,contw 
-0x5ac4 024062 fetch 8 ,mem_le_interval_min 
-0x5ac5 024063 istore 8 ,contw 
-0x5ac6 024064 rtn 
-:      024068 le_fifo_malloc_tx_l2cap_signaling:
-0x5ac7 024069 call le_l2cap_update_signaling_identifier 
-0x5ac8 024070 arg le_l2cap_cid_signal ,regb 
-0x5ac9 024071 call le_fifo_malloc_tx_l2cap 
-0x5aca 024072 copy regc ,pdata 
-0x5acb 024073 istore 1 ,contw 
-0x5acc 024074 fetch 1 ,mem_le_signaling_identifier 
-0x5acd 024075 istore 1 ,contw 
-0x5ace 024076 rtn 
-:      024079 le_l2cap_update_signaling_identifier:
-0x5acf 024080 fetch 1 ,mem_le_signaling_identifier 
-0x5ad0 024082 pincrease 1 
-0x5ad1 024083 store 1 ,mem_le_signaling_identifier 
-0x5ad2 024084 rtnne 0 
-:      024086 le_l2cap_reset_signaling_identifier:
-0x5ad3 024087 jam 1 ,mem_le_signaling_identifier 
-0x5ad4 024088 rtn 
-:      024093 le_pairing_mode_init:
-0x5ad5 024094 fetch 1 ,mem_le_pairing_mode 
-0x5ad6 024095 beq le_pairing_mode_none ,le_set_no_pairing 
-0x5ad7 024096 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
-0x5ad8 024097 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
-0x5ad9 024098 beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
-0x5ada 024099 beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
-0x5adb 024100 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
-0x5adc 024101 rtn 
-:      024103 le_set_pairing_mode_secure_justwork:
-0x5add 024104 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x5ade 024105 branch le_set_noinputnooutput 
-:      024106 le_set_pairing_mode_secure_numeric:
-0x5adf 024107 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x5ae0 024108 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
-0x5ae1 024109 rtn 
-:      024110 le_set_pairing_mode_secure_passkey:
-0x5ae2 024111 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x5ae3 024112 branch le_set_displayonly 
-:      024113 le_set_no_pairing:
-0x5ae4 024114 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
-:      024115 le_set_noinputnooutput:
-0x5ae5 024116 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
-0x5ae6 024117 rtn 
-:      024118 le_set_pairing_mode_lagacy_just_work:
-0x5ae7 024119 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-0x5ae8 024120 branch le_set_noinputnooutput 
-:      024121 le_set_pairing_mode_lagacy_passkey:
-0x5ae9 024122 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-:      024123 le_set_displayonly:
-0x5aea 024124 jam flag_iocap_displayonly ,mem_le_pres_iocap 
-0x5aeb 024125 rtn 
-:      024128 le_secure_connection_enable:
-0x5aec 024129 fetch 1 ,mem_le_pres_auth 
-0x5aed 024130 set1 le_auth_secure_connection_pairing_bit ,pdata 
-0x5aee 024131 store 1 ,mem_le_pres_auth 
-0x5aef 024132 rtn 
-:      024133 le_secure_connection_disable:
-0x5af0 024134 fetch 1 ,mem_le_pres_auth 
-0x5af1 024135 set0 le_auth_secure_connection_pairing_bit ,pdata 
-0x5af2 024136 store 1 ,mem_le_pres_auth 
-0x5af3 024137 rtn 
-:      024139 le_parse_smp:
-0x5af4 024140 ifetch 1 ,contr 
-0x5af5 024141 beq smp_pairing_request ,le_parse_smp_pairing_request 
-0x5af6 024143 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
-0x5af7 024144 beq smp_pairing_random ,le_parse_smp_pairing_random 
-0x5af8 024145 beq smp_pairing_failed ,le_parse_smp_pairing_failed 
-0x5af9 024146 beq smp_encryption_information ,le_parse_smp_encryption_information 
-0x5afa 024147 beq smp_master_identification ,le_parse_smp_master_identification 
-0x5afb 024148 beq smp_identity_information ,le_parse_smp_identity_information 
-0x5afc 024149 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
-0x5afd 024150 beq smp_signing_information ,le_parse_smp_signing_information 
-0x5afe 024151 beq smp_security_request ,le_parse_smp_security_request 
-0x5aff 024152 beq smp_pairing_public_key ,le_parse_smp_public_key 
-0x5b00 024153 beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
-0x5b01 024154 rtn 
-:      024158 le_send_smp_security_request:
-0x5b02 024159 force 2 ,rega 
-0x5b03 024160 call le_fifo_malloc_tx_l2cap_smp 
-0x5b04 024161 setarg smp_security_request 
-0x5b05 024162 istore 1 ,contw 
-0x5b06 024163 fetch 1 ,mem_le_pres_auth 
-0x5b07 024164 istore 1 ,contw 
-0x5b08 024165 rtn 
-:      024167 le_parse_smp_pairing_request:
-0x5b09 024168 store 1 ,mem_le_preq 
-0x5b0a 024169 ifetch 6 ,contr 
-0x5b0b 024170 istore 6 ,contw 
-0x5b0c 024171 fetch 1 ,mem_le_pairing_mode 
-0x5b0d 024172 beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
-0x5b0e 024173 call le_send_smp_pairing_response 
-0x5b0f 024174 call le_check_master_support_secure_connect 
-0x5b10 024175 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
-0x5b11 024176 fetch 1 ,mem_le_preq_iocap 
-0x5b12 024177 beq flag_iocap_displayonly ,le_set_tk_0 
-0x5b13 024178 beq flag_iocap_displayyesno ,le_set_tk_0 
-0x5b14 024179 beq flag_iocap_noinputnooutput ,le_set_tk_0 
-0x5b15 024180 fetch 1 ,mem_le_pairing_mode 
-0x5b16 024181 beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
-0x5b17 024182 rtneq le_pairing_mode_secure_connect_passkey 
-:      024183 le_set_tk_0:
-0x5b18 024184 arg 0 ,pdata 
-0x5b19 024185 store 4 ,mem_le_tk 
-0x5b1a 024186 rtn 
-:      024188 le_parse_smp_pairing_req_passkey:
-0x5b1b 024189 fetch 1 ,mem_le_configuration 
-0x5b1c 024190 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
-:      024191 le_genernate_tk:
-0x5b1d 024192 arg mem_le_tk ,rega 
-0x5b1e 024193 copy rega ,contw 
-0x5b1f 024194 arg 3 ,loopcnt 
-0x5b20 024195 call generate_random_loop 
-0x5b21 024196 fetch 2 ,mem_le_tk + 2 
-0x5b22 024197 and_into 0x7 ,pdata 
-0x5b23 024198 store 2 ,mem_le_tk + 2 
-:      024199 le_parse_smp_pairing_req_fixed_passkey:
-0x5b24 024200 jam bt_evt_le_tk_generate ,mem_fifo_temp 
-0x5b25 024201 branch ui_ipc_send_event 
-:      024203 le_check_master_support_secure_connect:
-0x5b26 024204 fetch 1 ,mem_le_preq_auth 
-0x5b27 024205 rtnbit1 le_auth_secure_connection_pairing_bit 
-0x5b28 024206 fetch 1 ,mem_le_pairing_mode 
-0x5b29 024207 rtnbit0 le_pairing_mode_secure_connect_bit 
-0x5b2a 024208 branch app_ble_disconnect 
-:      024210 le_send_smp_pairing_response:
-0x5b2b 024211 force 7 ,rega 
-0x5b2c 024212 call le_fifo_malloc_tx_l2cap_smp 
-0x5b2d 024213 fetch 7 ,mem_le_pres 
-0x5b2e 024214 istore 7 ,contw 
-0x5b2f 024215 rtn 
-:      024218 le_parse_smp_pairing_confirm:
-0x5b30 024219 copy contr ,rega 
-0x5b31 024220 fetch 1 ,mem_le_pairing_mode 
-0x5b32 024221 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
-0x5b33 024222 copy rega ,contr 
-0x5b34 024223 arg mem_le_rconfirm ,contw 
-0x5b35 024224 call memcpy16 
-0x5b36 024225 branch le_send_smp_pairing_confirm 
-:      024226 le_parse_smp_pairing_confirm_secure_passkey:
-0x5b37 024227 copy rega ,contr 
-0x5b38 024228 arg mem_le_rconfirm ,contw 
-0x5b39 024229 call memcpy16 
-0x5b3a 024230 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5b3b 024231 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
-0x5b3c 024232 rtn 
-:      024235 le_send_smp_pairing_confirm:
-0x5b3d 024236 fetch 1 ,mem_le_pairing_mode 
-0x5b3e 024237 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
-0x5b3f 024238 call generate_confirm 
-0x5b40 024239 force 17 ,rega 
-0x5b41 024240 call le_fifo_malloc_tx_l2cap_smp 
-0x5b42 024241 setarg smp_pairing_confirm 
-0x5b43 024242 istore 1 ,contw 
-0x5b44 024243 branch store_aes_result 
-:      024246 le_send_smp_pairing_confirm_sc:
-0x5b45 024247 arg mem_le_srand ,contw 
-0x5b46 024248 call generate_random 
-0x5b47 024249 call function_f4_cb 
-0x5b48 024250 force 17 ,rega 
-0x5b49 024251 call le_fifo_malloc_tx_l2cap_smp 
-0x5b4a 024252 setarg smp_pairing_confirm 
-0x5b4b 024253 istore 1 ,contw 
-0x5b4c 024254 branch load_inverse_result 
-:      024258 le_parse_smp_pairing_random:
-0x5b4d 024259 copy contr ,rega 
-0x5b4e 024260 fetch 1 ,mem_le_pairing_mode 
-0x5b4f 024261 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
-0x5b50 024262 copy rega ,contr 
-0x5b51 024263 call authenticate_rconfirm 
-0x5b52 024264 branch le_parse_smp_pairing_random_success ,zero 
-:      024265 le_send_pairing_confirm_value_failed:
-0x5b53 024266 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
-:      024267 le_send_pairing_failed:
-0x5b54 024268 force 2 ,rega 
-0x5b55 024269 call le_fifo_malloc_tx_l2cap_smp 
-0x5b56 024270 setarg smp_pairing_failed 
-0x5b57 024271 istore 1 ,contw 
-0x5b58 024272 fetch 1 ,mem_le_ll_pairing_fail_reason 
-0x5b59 024273 istore 1 ,contw 
-:      024274 le_parse_smp_pairing_failed:
-0x5b5a 024275 force smp_pairing_timer ,queue 
-0x5b5b 024276 call timer_stop 
-0x5b5c 024277 jam flag_le_pairing_null ,mem_le_pairing_state 
-0x5b5d 024278 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
-0x5b5e 024279 branch ui_ipc_send_event 
-:      024281 le_smp_pairing_fail_reason_not_support_pairing:
-0x5b5f 024282 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
-0x5b60 024283 branch le_send_pairing_failed 
-:      024286 le_parse_smp_pairing_random_sc:
-0x5b61 024287 arg mem_le_mrand ,contw 
-0x5b62 024288 copy rega ,contr 
-0x5b63 024289 call memcpy16 
-0x5b64 024290 fetch 1 ,mem_le_pairing_mode 
-0x5b65 024291 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
-0x5b66 024292 call function_g2 
-0x5b67 024295 call le_send_smp_pairing_random 
-0x5b68 024296 fetch 1 ,mem_le_pairing_mode 
-0x5b69 024297 rtnne le_pairing_mode_secure_connect_numeric 
-0x5b6a 024298 jam bt_evt_le_gkey_generate ,mem_fifo_temp 
-0x5b6b 024299 branch ui_ipc_send_event 
-:      024301 le_parse_smp_pairing_random_sc_passkey:
-0x5b6c 024302 call function_f4_ca 
-0x5b6d 024303 arg mem_aes_cmac_temp ,contw 
-0x5b6e 024304 call load_inverse_result 
-0x5b6f 024305 arg mem_aes_cmac_temp ,rega 
-0x5b70 024306 arg mem_le_rconfirm ,regb 
-0x5b71 024307 arg 16 ,loopcnt 
-0x5b72 024308 call string_compare 
-0x5b73 024309 nbranch le_send_pairing_confirm_value_failed ,zero 
-0x5b74 024310 branch le_send_smp_pairing_random 
-:      024312 le_parse_smp_pairing_random_success:
-0x5b75 024313 call generate_stk 
-0x5b76 024314 jam bt_evt_le_pairing_success ,mem_fifo_temp 
-0x5b77 024315 call ui_ipc_send_event 
-0x5b78 024316 jam 1 ,mem_ltk_exists 
-0x5b79 024317 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
-:      024319 le_send_smp_pairing_random:
-0x5b7a 024320 force 17 ,rega 
-0x5b7b 024321 call le_fifo_malloc_tx_l2cap_smp 
-0x5b7c 024322 setarg smp_pairing_random 
-0x5b7d 024323 istore 1 ,contw 
-0x5b7e 024324 arg mem_le_srand ,contr 
-0x5b7f 024325 branch memcpy16 
-:      024327 le_parse_smp_encryption_information:
-0x5b80 024328 arg mem_le_peer_ltk ,contw 
-0x5b81 024329 branch memcpy16 
-:      024331 le_send_smp_encryption_information:
-0x5b82 024332 force 17 ,rega 
-0x5b83 024333 call le_fifo_malloc_tx_l2cap_smp 
-0x5b84 024334 setarg smp_encryption_information 
-0x5b85 024335 istore 1 ,contw 
-0x5b86 024336 fetch 1 ,mem_le_configuration 
-0x5b87 024337 bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
-0x5b88 024338 arg mem_le_ltk ,contr 
-0x5b89 024339 branch memcpy16 
-:      024341 le_send_fixed_ltk:
-0x5b8a 024342 arg mem_le_fixed_ltk ,contr 
-0x5b8b 024343 branch memcpy16 
-:      024346 le_send_smp_master_identification:
-0x5b8c 024347 arg mem_le_ediv ,contw 
-0x5b8d 024348 force 10 ,loopcnt 
-0x5b8e 024349 call generate_random_loop 
-0x5b8f 024350 force 11 ,rega 
-0x5b90 024351 call le_fifo_malloc_tx_l2cap_smp 
-0x5b91 024352 setarg smp_master_identification 
-0x5b92 024353 istore 1 ,contw 
-0x5b93 024354 fetch 2 ,mem_le_ediv 
-0x5b94 024355 istore 2 ,contw 
-0x5b95 024356 fetch 8 ,mem_le_rand 
-0x5b96 024357 istore 8 ,contw 
-0x5b97 024358 rtn 
-:      024360 le_send_smp_identity_information:
-0x5b98 024361 force 17 ,rega 
-0x5b99 024362 call le_fifo_malloc_tx_l2cap_smp 
-0x5b9a 024363 setarg smp_identity_information 
-0x5b9b 024364 istore 1 ,contw 
-0x5b9c 024365 setarg 0 
-0x5b9d 024366 istore 8 ,contw 
-0x5b9e 024367 istore 8 ,contw 
-0x5b9f 024368 rtn 
-:      024371 le_send_smp_identity_address_information:
-0x5ba0 024372 force 8 ,rega 
-0x5ba1 024373 call le_fifo_malloc_tx_l2cap_smp 
-0x5ba2 024374 setarg smp_identity_address_information 
-0x5ba3 024375 istore 1 ,contw 
-0x5ba4 024376 fetch 1 ,mem_le_conn_own_addr_type 
-0x5ba5 024377 istore 1 ,contw 
-0x5ba6 024378 fetch 6 ,mem_le_lap 
-0x5ba7 024379 istore 6 ,contw 
-0x5ba8 024380 rtn 
-:      024383 le_send_pairing_fail_unspecified_reason:
-0x5ba9 024384 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
-0x5baa 024385 branch le_send_pairing_failed 
-:      024387 le_check_init_key_distribution:
-0x5bab 024388 fetch 1 ,mem_le_pres_init_key_distribution 
-0x5bac 024389 fetcht 1 ,mem_le_pres_init_key_distribution 
-0x5bad 024390 iand temp ,pdata 
-0x5bae 024391 rtn 
-:      024393 le_parse_smp_identity_information:
-0x5baf 024394 arg mem_le_irk ,contw 
-0x5bb0 024395 call memcpy16 
-0x5bb1 024396 call le_check_init_key_distribution 
-0x5bb2 024397 isolate0 le_initator_irk_bit ,pdata 
-0x5bb3 024398 branch le_send_pairing_fail_unspecified_reason ,true 
-0x5bb4 024399 fetch 1 ,mem_device_option 
-0x5bb5 024400 rtnne dvc_op_module 
-0x5bb6 024401 call le_check_master_addr_type 
-0x5bb7 024402 nrtn user 
-0x5bb8 024403 branch app_ble_store_reconn_info 
-:      024406 le_check_master_addr_type:
-0x5bb9 024407 call disable_user 
-0x5bba 024408 fetch 1 ,mem_le_conn_peer_addr_type 
-0x5bbb 024409 rtneq master_public_addr 
-0x5bbc 024410 fetch 1 ,mem_le_plap + 5 
-0x5bbd 024411 compare 0xc0 ,pdata ,0xc0 
-0x5bbe 024412 rtn true 
-0x5bbf 024413 branch enable_user 
-:      024415 le_parse_smp_identity_address_information:
-0x5bc0 024416 call le_check_init_key_distribution 
-0x5bc1 024417 isolate0 le_initator_irk_bit ,pdata 
-0x5bc2 024418 branch le_send_pairing_fail_unspecified_reason ,true 
-0x5bc3 024419 rtn 
-:      024421 le_parse_smp_master_identification:
-:      024422 le_parse_smp_signing_information:
-:      024423 le_parse_smp_security_request:
-0x5bc4 024424 rtn 
-:      024426 le_parse_smp_public_key:
-0x5bc5 024427 arg mem_le_pubkey_remote_x_256 ,contw 
-0x5bc6 024428 call memcpy64 
-0x5bc7 024429 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5bc8 024430 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
-0x5bc9 024431 rtn 
-:      024433 le_parse_smp_dhkey_check:
-0x5bca 024434 arg mem_sp_confirm_remote ,contw 
-0x5bcb 024435 call memcpy16 
-0x5bcc 024436 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
-0x5bcd 024437 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5bce 024438 rtn 
-:      024440 le_send_smp_pairing_public_key:
-0x5bcf 024441 force 65 ,rega 
-0x5bd0 024442 call le_fifo_malloc_tx_l2cap_smp 
-0x5bd1 024443 setarg smp_pairing_public_key 
-0x5bd2 024444 istore 1 ,contw 
-0x5bd3 024445 arg mem_le_pubkey_local_x_256 ,contr 
-0x5bd4 024446 branch memcpy64 
-:      024448 le_send_smp_pairing_dhkey_check:
-0x5bd5 024449 call function_f6_eb 
-0x5bd6 024450 force 17 ,rega 
-0x5bd7 024451 call le_fifo_malloc_tx_l2cap_smp 
-0x5bd8 024452 setarg smp_pairing_dhkey_check 
-0x5bd9 024453 istore 1 ,contw 
-0x5bda 024454 branch load_inverse_result 
-:      024457 le_check_paring_time:
-0x5bdb 024458 fetch 1 ,mem_le_pairing_state 
-0x5bdc 024459 rtneq flag_le_pairing_end 
-0x5bdd 024460 arg flag_le_pairing_rcv_pairing_req ,temp 
-0x5bde 024461 isub temp ,null 
-0x5bdf 024462 nrtn positive 
-0x5be0 024463 arg smp_pairing_timer ,queue 
-0x5be1 024464 call timer_check 
-0x5be2 024465 nrtn blank 
-0x5be3 024466 branch le_send_pairing_fail_unspecified_reason 
-:      024468 le_pairing_sm:
-0x5be4 024469 bpatchx patch2f_0 ,mem_patch2f 
-0x5be5 024470 fetch 1 ,mem_le_pairing_state 
-0x5be6 024471 beq flag_le_pairing_null ,le_pairing_sm_null 
-0x5be7 024472 beq flag_le_pairing_start ,le_pairing_sm_start 
-0x5be8 024473 beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
-0x5be9 024474 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
-0x5bea 024475 beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
-0x5beb 024476 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
-0x5bec 024477 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
-0x5bed 024478 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
-0x5bee 024479 rtn 
-:      024481 le_pairing_sm_null:
-:      024482 le_pairing_sm_send_sec_req:
-0x5bef 024483 fetch 1 ,mem_le_enc_state 
-0x5bf0 024484 rtnne flag_le_send_start_enc_rsp 
-0x5bf1 024485 jam flag_le_enc_end ,mem_le_enc_state 
-0x5bf2 024486 jam flag_le_pairing_end ,mem_le_pairing_state 
-0x5bf3 024487 jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
-0x5bf4 024488 branch ui_ipc_send_event 
-:      024491 le_pairing_sm_start:
-0x5bf5 024492 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
-0x5bf6 024493 branch le_send_smp_security_request 
-:      024495 le_pairing_sm_rcv_pairing_req:
-0x5bf7 024496 jam flag_le_pairing_auth ,mem_le_pairing_state 
-0x5bf8 024497 setarg timer_smp_pairing_timeout 
-0x5bf9 024498 arg smp_pairing_timer ,queue 
-0x5bfa 024499 branch timer_init 
-:      024501 le_pairing_sm_after_auth:
-0x5bfb 024502 fetch 1 ,mem_le_enc_state 
-0x5bfc 024503 beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
-0x5bfd 024504 rtn 
-:      024506 le_pairing_sm_after_auth_start_enc:
-0x5bfe 024507 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
-0x5bff 024508 jam bt_evt_le_enc_info ,mem_fifo_temp 
-0x5c00 024509 call ui_ipc_send_event 
-0x5c01 024510 call le_send_smp_encryption_information 
-0x5c02 024511 fetch 1 ,mem_device_option 
-0x5c03 024512 rtnne dvc_op_module 
-0x5c04 024513 call le_check_master_addr_type 
-0x5c05 024514 rtn user 
-0x5c06 024515 branch app_ble_store_reconn_info 
-:      024518 le_pairng_sm_send_enc_information:
-0x5c07 024519 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
-0x5c08 024520 branch le_send_smp_master_identification 
-:      024522 le_pairng_sm_send_master_indentification:
-0x5c09 024523 fetch 1 ,mem_le_preq_resp_key_distribution 
-0x5c0a 024524 fetcht 1 ,mem_le_pres_resp_key_distribution 
-0x5c0b 024525 iand temp ,pdata 
-0x5c0c 024526 isolate0 le_initator_irk_bit ,pdata 
-0x5c0d 024527 branch le_parse_start_enc_rsp_after_auth_end ,true 
-0x5c0e 024528 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
-0x5c0f 024529 branch le_send_smp_identity_information 
-:      024531 le_pairng_sm_send_indentity_information:
-0x5c10 024532 call le_send_smp_identity_address_information 
-0x5c11 024533 branch le_parse_start_enc_rsp_after_auth_end 
-:      024536 le_parse_start_enc_rsp_after_auth_end:
-0x5c12 024537 force smp_pairing_timer ,queue 
-0x5c13 024538 call timer_stop 
-0x5c14 024539 jam flag_le_enc_end ,mem_le_enc_state 
-0x5c15 024540 jam flag_le_pairing_end ,mem_le_pairing_state 
-0x5c16 024541 jam bt_evt_le_pairing_complete ,mem_fifo_temp 
-0x5c17 024542 branch ui_ipc_send_event 
-:      024546 le_secure_connect_sm:
-0x5c18 024547 bpatchx patch2f_1 ,mem_patch2f 
-0x5c19 024548 fetch 1 ,mem_le_pairing_mode 
-0x5c1a 024549 rtnbit0 le_pairing_mode_secure_connect_bit 
-0x5c1b 024550 fetch 1 ,mem_le_secure_connect_flag 
-0x5c1c 024551 rtnne le_sp_flag_commit_256 
-0x5c1d 024552 jam sp_flag_standby ,mem_le_secure_connect_flag 
-0x5c1e 024553 fetch 1 ,mem_le_secure_connect_state 
-0x5c1f 024554 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
-0x5c20 024555 beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
-0x5c21 024556 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
-0x5c22 024557 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
-0x5c23 024558 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
-0x5c24 024559 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
-0x5c25 024560 rtn 
-:      024563 le_sc_sm_passkey_wait_confirm:
-0x5c26 024564 fetch 1 ,mem_authentication_passkey_times 
-0x5c27 024565 copy pdata ,queue 
-0x5c28 024566 increase 1 ,pdata 
-0x5c29 024567 store 1 ,mem_authentication_passkey_times 
-0x5c2a 024568 fetch 4 ,mem_le_tk 
-0x5c2b 024569 qisolate1 pdata 
-0x5c2c 024570 setarg 0x80 
-0x5c2d 024571 setflag true ,0 ,pdata 
-0x5c2e 024572 store 1 ,mem_passkey_1bit 
-0x5c2f 024573 branch le_sc_sm_ready_send_pairing_confirm 
-:      024575 le_sc_sm_wait_confirm_gkey:
-0x5c30 024576 fetch 1 ,mem_le_sc_confirm_gkey_flag 
-0x5c31 024577 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
-0x5c32 024578 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
-0x5c33 024579 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c34 024580 rtn 
-:      024582 le_sc_confirm_gkey_ok:
-0x5c35 024583 jam bt_evt_le_pairing_success ,mem_fifo_temp 
-0x5c36 024584 call ui_ipc_send_event 
-0x5c37 024585 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
-0x5c38 024586 branch le_send_smp_pairing_dhkey_check 
-:      024588 le_sc_sm_receive_dhkey:
-0x5c39 024589 fetch 1 ,mem_sp_dhkey_invalid 
-0x5c3a 024590 beq sp_key_valid_256 ,le_dhkey_ready 
-0x5c3b 024591 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c3c 024592 rtn 
-:      024594 le_dhkey_ready:
-0x5c3d 024595 call function_f5 
-0x5c3e 024599 fetch 1 ,mem_le_pairing_mode 
-0x5c3f 024600 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
-0x5c40 024601 call le_set_tk_0 
-:      024602 le_dhkey_ready_common:
-0x5c41 024603 call function_f6_ea 
-0x5c42 024604 arg mem_aes_cmac_temp ,rega 
-0x5c43 024605 arg mem_sp_confirm_remote ,regb 
-0x5c44 024606 arg 16 ,loopcnt 
-0x5c45 024607 call string_compare 
-0x5c46 024608 branch le_dhkey_check_ok ,zero 
-:      024609 le_dhkey_check_fail:
-0x5c47 024610 jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
-0x5c48 024611 branch le_send_pairing_failed 
-:      024614 le_dhkey_check_ok:
-0x5c49 024615 call sp_calc_check_publickey_256 
-0x5c4a 024616 nbranch le_dhkey_check_fail ,zero 
-0x5c4b 024617 jam 1 ,mem_ltk_exists 
-0x5c4c 024618 fetch 1 ,mem_le_pairing_mode 
-0x5c4d 024619 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
-0x5c4e 024620 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
-0x5c4f 024621 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c50 024622 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
-0x5c51 024623 rtn 
-:      024625 le_sc_sm_send_public_key:
-0x5c52 024626 fetch 1 ,mem_le_pairing_mode 
-0x5c53 024627 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
-0x5c54 024628 jam 0 ,mem_passkey_1bit 
-:      024629 le_sc_sm_ready_send_pairing_confirm:
-0x5c55 024630 branch le_send_smp_pairing_confirm 
-:      024632 le_sc_sm_send_public_key_passkey:
-0x5c56 024636 jam 0 ,mem_authentication_passkey_times 
-0x5c57 024637 branch le_parse_smp_pairing_req_passkey 
-:      024640 le_sc_sm_receive_public_key:
-0x5c58 024641 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c59 024642 fetch 1 ,mem_le_sc_local_key_invalid 
-0x5c5a 024643 beq sp_key_valid_256 ,le_public_key_ready 
-0x5c5b 024645 rtn 
-:      024647 le_public_key_ready:
-0x5c5c 024648 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
-0x5c5d 024649 jam sp_key_invalid ,mem_sp_dhkey_invalid 
-0x5c5e 024650 branch sp_dhkey_calc_256 
-:      024652 le_sc_sm_wait_send_public_key:
-0x5c5f 024653 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c60 024654 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
-0x5c61 024655 branch le_send_smp_pairing_public_key 
-:      024659 le_fifo_malloc_tx_l2cap_smp:
-0x5c62 024660 force le_l2cap_cid_smp ,regb 
-0x5c63 024661 branch le_fifo_malloc_tx_l2cap 
-:      024665 le_parse_ll:
-0x5c64 024666 fetch 1 ,mem_le_rxbuf + 2 
-0x5c65 024667 beq ll_connection_update_req ,le_parse_connection_update_req 
-0x5c66 024668 beq ll_channel_map_req ,le_parse_channel_map_req 
-0x5c67 024669 beq ll_terminate_ind ,le_parse_terminate_ind 
-0x5c68 024670 beq ll_enc_req ,le_parse_enc_req 
-0x5c69 024671 beq ll_enc_rsp ,le_parse_enc_rsp 
-0x5c6a 024672 beq ll_start_enc_req ,le_parse_start_enc_req 
-0x5c6b 024673 beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
-0x5c6c 024674 beq ll_unknown_rsp ,le_parse_unknown_rsp 
-0x5c6d 024675 beq ll_feature_req ,le_parse_feature_req 
-0x5c6e 024676 beq ll_feature_rsp ,le_parse_feature_rsp 
-0x5c6f 024677 beq ll_pause_enc_req ,le_parse_pause_enc_req 
-0x5c70 024678 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
-0x5c71 024679 beq ll_version_ind ,le_parse_version_ind 
-0x5c72 024680 beq ll_reject_ind ,le_parse_reject_ind 
-0x5c73 024681 beq ll_ping_req ,le_parse_ping_req 
-0x5c74 024682 beq ll_ping_rsp ,le_parse_ping_rsp 
-0x5c75 024683 arg 2 ,rega 
-0x5c76 024684 arg ll_unknown_rsp ,regb 
-0x5c77 024685 call le_fifo_malloc_tx_ll 
-0x5c78 024686 fetch 1 ,mem_le_rxbuf + 2 
-0x5c79 024687 istore 1 ,contw 
-0x5c7a 024688 rtn 
-:      024691 le_parse_connection_update_req:
-0x5c7b 024692 ifetch 9 ,contr 
-0x5c7c 024693 store 9 ,mem_le_new_param 
-0x5c7d 024694 ifetch 2 ,contr 
-0x5c7e 024695 store 2 ,mem_le_instant 
-0x5c7f 024696 fetch 1 ,mem_le_state 
-0x5c80 024697 set1 lestate_update_param ,pdata 
-0x5c81 024698 store 1 ,mem_le_state 
-0x5c82 024699 rtn 
-:      024701 le_parse_channel_map_req:
-0x5c83 024702 ifetch 5 ,contr 
-0x5c84 024703 store 5 ,mem_le_new_map 
-0x5c85 024704 ifetch 2 ,contr 
-0x5c86 024705 store 2 ,mem_le_instant 
-0x5c87 024706 fetcht 2 ,mem_le_event_count 
-0x5c88 024707 isub temp ,null 
-0x5c89 024708 nbranch le_parse_terminate_ind ,positive 
-0x5c8a 024709 fetch 1 ,mem_le_state 
-0x5c8b 024710 set1 lestate_update_map ,pdata 
-0x5c8c 024711 store 1 ,mem_le_state 
-0x5c8d 024712 rtn 
-:      024715 le_parse_terminate_ind:
-0x5c8e 024716 setarg 20 
-0x5c8f 024717 store 2 ,mem_le_superto 
-0x5c90 024718 store 2 ,mem_le_init_superto 
-0x5c91 024719 rtn 
-:      024721 le_send_terminate_ind_user_terminated:
-0x5c92 024722 arg error_remote_user_terminated_connection ,regc 
-:      024725 le_send_terminate_ind:
-0x5c93 024726 arg 2 ,rega 
-0x5c94 024727 arg ll_terminate_ind ,regb 
-0x5c95 024728 call le_fifo_malloc_tx_ll 
-0x5c96 024729 copy regc ,pdata 
-0x5c97 024730 istore 1 ,contw 
-0x5c98 024731 rtn 
-:      024733 le_parse_feature_req:
-:      024735 le_send_feature_rsp:
-0x5c99 024736 arg 9 ,rega 
-0x5c9a 024737 arg ll_feature_rsp ,regb 
-0x5c9b 024738 call le_fifo_malloc_tx_ll 
-0x5c9c 024739 setarg param_le_features 
-0x5c9d 024740 istore 8 ,contw 
-0x5c9e 024741 rtn 
-:      024744 le_parse_version_ind:
-0x5c9f 024745 rtn master 
-:      024746 le_send_version_ind:
-0x5ca0 024747 arg 6 ,rega 
-0x5ca1 024748 arg ll_version_ind ,regb 
-0x5ca2 024749 call le_fifo_malloc_tx_ll 
-0x5ca3 024750 fetch 5 ,mem_lmp_version 
-0x5ca4 024751 istore 5 ,contw 
-0x5ca5 024752 rtn 
-:      024755 le_parse_ping_req:
-0x5ca6 024756 arg ll_ping_rsp ,regb 
-0x5ca7 024757 branch le_send_ll_one_lenth 
-:      024760 le_send_ll_one_lenth:
-0x5ca8 024761 arg 1 ,rega 
-0x5ca9 024762 branch le_fifo_malloc_tx_ll 
-:      024765 le_parse_enc_req:
-0x5caa 024766 ifetch 8 ,contr 
-0x5cab 024767 store 8 ,mem_le_rand 
-0x5cac 024768 ifetch 2 ,contr 
-0x5cad 024769 store 2 ,mem_le_ediv 
-0x5cae 024770 ifetch 8 ,contr 
-0x5caf 024771 store 8 ,mem_le_skdm 
-0x5cb0 024772 ifetch 4 ,contr 
-0x5cb1 024773 store 4 ,mem_le_ivm 
-0x5cb2 024774 call le_send_enc_rsp 
-0x5cb3 024775 bpatchx patch2f_2 ,mem_patch2f 
-0x5cb4 024776 fetch 1 ,mem_le_pairing_state 
-0x5cb5 024777 beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
-0x5cb6 024778 fetch 1 ,mem_le_configuration 
-0x5cb7 024779 bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
-0x5cb8 024780 fetch 1 ,mem_nv_data_number 
-0x5cb9 024781 ncall load_device_list_mode_4 ,blank 
-0x5cba 024782 fetch 1 ,mem_ltk_exists 
-0x5cbb 024783 beq 0 ,le_ltk_lost 
-:      024784 le_parse_enc_req_after_auth:
-0x5cbc 024785 jam flag_le_rcv_enc_start ,mem_le_enc_state 
-0x5cbd 024786 call le_send_start_enc_req 
-0x5cbe 024787 branch generate_sk 
-:      024789 le_parse_enc_req_fixed_ltk:
-0x5cbf 024790 jam 1 ,mem_ltk_exists 
-0x5cc0 024791 arg mem_le_fixed_ltk ,contr 
-0x5cc1 024792 arg mem_le_ltk ,contw 
-0x5cc2 024793 call memcpy16 
-0x5cc3 024794 branch le_parse_enc_req_after_auth 
-:      024797 le_ltk_lost:
-0x5cc4 024798 bpatchx patch2f_3 ,mem_patch2f 
-0x5cc5 024799 jam flag_le_enc_null ,mem_le_enc_state 
-0x5cc6 024800 jam flag_le_enc_null ,mem_le_pairing_state 
-0x5cc7 024801 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
-0x5cc8 024802 branch ui_ipc_send_event 
-:      024804 le_send_reject_ind:
-0x5cc9 024805 arg 2 ,rega 
-0x5cca 024806 arg ll_reject_ind ,regb 
-0x5ccb 024807 call le_fifo_malloc_tx_ll 
-0x5ccc 024808 setarg le_err_pin_or_key_missing 
-0x5ccd 024809 istore 1 ,contw 
-0x5cce 024810 rtn 
-:      024812 le_send_enc_rsp:
-0x5ccf 024813 arg mem_le_skds ,contw 
-0x5cd0 024814 force 8 ,loopcnt 
-0x5cd1 024815 call generate_random_loop 
-0x5cd2 024816 arg mem_le_ivs ,contw 
-0x5cd3 024817 force 4 ,loopcnt 
-0x5cd4 024818 call generate_random_loop 
-0x5cd5 024819 arg 13 ,rega 
-0x5cd6 024820 arg ll_enc_rsp ,regb 
-0x5cd7 024821 call le_fifo_malloc_tx_ll 
-0x5cd8 024822 fetch 8 ,mem_le_skds 
-0x5cd9 024823 istore 8 ,contw 
-0x5cda 024824 fetch 4 ,mem_le_ivs 
-0x5cdb 024825 istore 4 ,contw 
-0x5cdc 024826 rtn 
-:      024828 le_send_start_enc_req:
-0x5cdd 024829 arg ll_start_enc_req ,regb 
-0x5cde 024830 branch le_send_ll_one_lenth 
-:      024832 le_send_start_enc_rsp:
-0x5cdf 024833 arg ll_start_enc_rsp ,regb 
-0x5ce0 024834 branch le_send_ll_one_lenth 
-:      024837 le_parse_enc_rsp:
-0x5ce1 024838 ifetch 8 ,contr 
-0x5ce2 024839 store 8 ,mem_le_skds 
-0x5ce3 024840 ifetch 4 ,contr 
-0x5ce4 024841 store 4 ,mem_le_ivs 
-0x5ce5 024842 branch generate_sk 
-:      024844 le_parse_start_enc_req:
-0x5ce6 024845 fetch 1 ,mem_le_state 
-0x5ce7 024846 set1 lestate_encryption ,pdata 
-0x5ce8 024847 store 1 ,mem_le_state 
-0x5ce9 024848 rtn 
-:      024850 le_parse_start_enc_rsp:
-0x5cea 024851 rtn master 
-0x5ceb 024852 jam bt_evt_le_start_enc ,mem_fifo_temp 
-0x5cec 024853 call ui_ipc_send_event 
-0x5ced 024854 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
-0x5cee 024855 branch le_send_start_enc_rsp 
-:      024857 le_parse_pause_enc_req:
-0x5cef 024858 jam flag_le_enc_pause ,mem_le_enc_state 
-0x5cf0 024859 call le_send_pause_enc_rsp 
-0x5cf1 024860 jam bt_evt_le_pause_enc ,mem_fifo_temp 
-0x5cf2 024861 branch ui_ipc_send_event 
-:      024863 le_send_pause_enc_rsp:
-0x5cf3 024864 arg ll_pause_enc_rsp ,regb 
-0x5cf4 024865 branch le_send_ll_one_lenth 
-:      024868 le_parse_feature_rsp:
-:      024869 le_parse_unknown_rsp:
-:      024870 le_parse_pause_enc_rsp:
-:      024871 le_parse_reject_ind:
-:      024872 le_parse_ping_rsp:
-0x5cf5 024873 rtn 
-:      024880 init_lmp:
-0x5cf6 024881 rtn wake 
-:      024882 init_lmp_work:
-0x5cf7 024883 bpatchx patch2f_4 ,mem_patch2f 
-0x5cf8 024884 setarg 0 
-0x5cf9 024885 store 1 ,mem_lmp_to_send 
-0x5cfa 024886 store 1 ,mem_conn_sm 
-0x5cfb 024887 store 1 ,mem_lmo_opcode1 
-0x5cfc 024888 store 1 ,mem_lmo_opcode2 
-0x5cfd 024889 store 1 ,mem_esco_addr 
-0x5cfe 024890 store 1 ,mem_auth_enable 
-0x5cff 024891 store 1 ,mem_connection_options 
-0x5d00 024892 store 1 ,mem_pairing_auth 
-0x5d01 024893 jam switch_flag_init ,mem_switch_flag 
-0x5d02 024894 jam 0 ,mem_switch_fail_master_count 
-0x5d03 024895 jam null_encryp ,mem_wait_encryption 
-:      024896 init_lmp_reinit:
-0x5d04 024897 jam 0 ,mem_pairing_auth 
-0x5d05 024898 jam 0 ,mem_sp_localsm 
-0x5d06 024899 jam 0 ,mem_lmp_conn_state 
-:      024901 parse_rx_done:
-0x5d07 024902 rtn 
-:      024904 parse_lmp:
-0x5d08 024905 bpatchx patch2f_5 ,mem_patch2f 
-0x5d09 024906 call setlocalsm_master ,master 
-0x5d0a 024907 ncall setlocalsm_slave ,master 
-0x5d0b 024908 call lmo_fifo_check 
-0x5d0c 024909 nrtn blank 
-0x5d0d 024910 fetch 1 ,mem_state_map 
-0x5d0e 024911 rtnbit0 smap_rxlmp 
-0x5d0f 024912 set0 smap_rxlmp ,pdata 
-0x5d10 024913 set0 mark_rxbuf_inuse ,mark 
-0x5d11 024914 store 1 ,mem_state_map 
-0x5d12 024915 fetch 1 ,mem_rxbuf 
-0x5d13 024916 fetcht 1 ,mem_state_map 
-0x5d14 024917 isolate1 smap_lmptidinit ,pdata 
-0x5d15 024918 setflag true ,smap_lmptid ,temp 
-0x5d16 024919 storet 1 ,mem_state_map 
-0x5d17 024920 and_into 0x2 ,temp 
-0x5d18 024921 storet 1 ,mem_lmo_tid2 
-0x5d19 024922 fetcht 1 ,mem_state_map 
-0x5d1a 024923 rshift pdata ,pdata 
-0x5d1b 024924 store 1 ,mem_lmi_opcode2 
-0x5d1c 024925 bpatchx patch2f_6 ,mem_patch2f 
-0x5d1d 024926 fetch 1 ,mem_lmi_opcode2 
-0x5d1e 024927 beq lmp_escape ,parse_lmp_escape 
-0x5d1f 024928 beq lmp_accepted ,parse_lmp_accepted 
-0x5d20 024929 beq lmp_not_accepted ,parse_lmp_not_accepted 
-0x5d21 024930 beq lmp_set_afh ,parse_lmp_set_afh 
-0x5d22 024931 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
-0x5d23 024932 beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
-0x5d24 024933 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
-0x5d25 024934 beq lmp_auto_rate ,parse_lmp_auto_rate 
-0x5d26 024935 beq lmp_test_control ,parse_lmp_test_control 
-0x5d27 024936 beq lmp_test_activate ,parse_lmp_test_activate 
-0x5d28 024937 beq lmp_setup_complete ,parse_lmp_setup_complete 
-0x5d29 024938 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
-0x5d2a 024939 beq lmp_features_req ,parse_lmp_features_req 
-0x5d2b 024940 beq lmp_host_connection_req ,parse_lmp_conn_req 
-0x5d2c 024941 beq lmp_version_req ,parse_lmp_version_req 
-0x5d2d 024942 beq lmp_version_res ,parse_lmp_version_res 
-0x5d2e 024943 beq lmp_detach ,parse_lmp_detach 
-0x5d2f 024944 beq lmp_max_slot ,parse_lmp_max_slot 
-0x5d30 024945 beq lmp_max_slot_req ,parse_lmp_max_slot_req 
-0x5d31 024946 beq lmp_name_req ,parse_lmp_name_req 
-0x5d32 024947 beq lmp_name_res ,parse_lmp_name_res 
-0x5d33 024948 beq lmp_features_res ,parse_lmp_features_res 
-0x5d34 024949 beq lmp_comb_key ,parse_lmp_comb_key 
-0x5d35 024950 beq lmp_au_rand ,parse_lmp_au_rand 
-0x5d36 024951 beq lmp_in_rand ,parse_lmp_in_rand 
-0x5d37 024952 beq lmp_sres ,parse_lmp_sres 
-0x5d38 024953 beq lmp_incr_power_req ,parse_lmp_incr_power 
-0x5d39 024954 beq lmp_decr_power_req ,parse_lmp_decr_power 
-0x5d3a 024955 beq lmp_max_power ,parse_lmp_max_power 
-0x5d3b 024956 beq lmp_min_power ,parse_lmp_min_power 
-0x5d3c 024957 beq lmp_page_mode_req ,parse_lmp_page_mode_req 
-0x5d3d 024958 beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
-0x5d3e 024959 beq lmp_preferred_rate ,parse_lmp_preferred_rate 
-0x5d3f 024960 beq lmp_slot_offset ,parse_lmp_slot_offset 
-0x5d40 024961 beq lmp_sniff_req ,parse_lmp_sniff_req 
-0x5d41 024962 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
-0x5d42 024963 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
-0x5d43 024964 beq lmp_switch_req ,parse_lmp_switch_req 
-0x5d44 024965 beq lmp_temp_rand ,parse_lmp_temp_rand 
-0x5d45 024966 beq lmp_temp_key ,parse_lmp_temp_key 
-0x5d46 024967 beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
-0x5d47 024968 beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
-0x5d48 024969 beq lmp_unit_key ,parse_lmp_unit_key 
-0x5d49 024970 beq lmp_unsniff_req ,parse_lmp_unsniff_req 
-0x5d4a 024971 beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
-0x5d4b 024972 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
-0x5d4c 024973 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
-0x5d4d 024974 beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
-0x5d4e 024975 beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
-0x5d4f 024976 beq lmp_dhkey_check ,parse_dhkey_check 
-0x5d50 024977 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
-0x5d51 024978 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
-:      024981 reject_unknown_packet:
-0x5d52 024982 jam unknown_lmp_pdu ,mem_lmo_reason2 
-:      024983 reject_lmp_packet:
-0x5d53 024984 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5d54 024985 rtn 
-:      024987 parse_lmp_clkoffset_req:
-0x5d55 024988 jam lmp_clkoffset_res ,mem_lmo_opcode2 
-0x5d56 024989 rtn 
-:      024991 parse_enc_key_size_mask_req:
-0x5d57 024992 jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
-0x5d58 024993 rtn 
-:      024995 parse_lmp_set_afh:
-0x5d59 024996 fetch 4 ,mem_rxbuf + 1 
-0x5d5a 024997 lshift pdata ,pdata 
-0x5d5b 024998 store 4 ,mem_afh_instant 
-0x5d5c 024999 fetch 1 ,mem_rxbuf + 5 
-0x5d5d 025000 store 1 ,mem_afh_new_mod 
-0x5d5e 025001 fetch 5 ,mem_rxbuf + 6 
-0x5d5f 025002 store 5 ,mem_afh_map_new 
-0x5d60 025003 fetch 5 ,mem_rxbuf + 11 
-0x5d61 025004 istore 5 ,contw 
-0x5d62 025005 fetch 1 ,mem_mode 
-0x5d63 025006 set1 afh_change ,pdata 
-0x5d64 025007 store 1 ,mem_mode 
-0x5d65 025008 rtn 
-:      025009 parse_lmp_escape:
-0x5d66 025010 bpatchx patch2f_7 ,mem_patch2f 
-0x5d67 025011 fetch 1 ,mem_rxbuf + 1 
-0x5d68 025012 set1 7 ,pdata 
-0x5d69 025013 store 1 ,mem_lmi_opcode2 
-0x5d6a 025014 beq lmp_ext_accepted ,parse_lmpext_accepted 
-0x5d6b 025015 beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
-0x5d6c 025016 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
-0x5d6d 025017 beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
-0x5d6e 025018 beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
-0x5d6f 025019 beq lmp_ext_features_req ,parse_lmpext_features_req 
-0x5d70 025020 beq lmp_ext_features_res ,parse_lmpext_features_res 
-0x5d71 025021 beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
-0x5d72 025022 beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
-0x5d73 025023 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
-0x5d74 025024 beq lmp_io_cap_req ,parse_lmpext_iocap_req 
-0x5d75 025025 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
-0x5d76 025026 rtneq lmp_ext_features_res 
-:      025029 reject_unknown_ext_packet:
-0x5d77 025030 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
-0x5d78 025031 jam unknown_lmp_pdu ,mem_lmo_reason2 
-0x5d79 025033 rtn 
-:      025034 parse_lmpext_chn_classification_req:
-0x5d7a 025035 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
-0x5d7b 025036 jam not_support_chn_classification ,mem_lmo_reason2 
-0x5d7c 025037 rtn 
-:      025039 parse_lmpext_iocap_req:
-0x5d7d 025040 call iocap_lmpext_load 
-0x5d7e 025041 jam lmp_io_cap_res ,mem_lmo_opcode2 
-0x5d7f 025042 rtn 
-:      025044 parse_lmpext_iocap_res:
-0x5d80 025045 call iocap_lmpext_load 
-0x5d81 025046 branch iocap_lmpext_common 
-:      025048 iocap_lmpext_load:
-0x5d82 025049 arg mem_sp_iocap_remote ,contw 
-0x5d83 025050 fetch 3 ,mem_rxbuf + 2 
-0x5d84 025051 istore 3 ,contw 
-0x5d85 025052 rtn 
-:      025054 iocap_lmpext_common:
-0x5d86 025055 branch master_set_mem_master_sp_flag ,true 
-0x5d87 025056 rtn 
-:      025057 parse_lmpext_accepted:
-0x5d88 025058 fetch 1 ,mem_rxbuf + 3 
-0x5d89 025059 set1 7 ,pdata 
-0x5d8a 025060 store 1 ,mem_lmi_accepted_opcode 
-0x5d8b 025061 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
-0x5d8c 025062 rtn 
-:      025065 parse_lmpext_not_accepted:
-0x5d8d 025066 fetch 1 ,mem_rxbuf + 3 
-0x5d8e 025067 set1 7 ,pdata 
-0x5d8f 025068 store 1 ,mem_lmi_accepted_opcode 
-0x5d90 025069 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
-0x5d91 025070 rtn 
-:      025072 parse_lmpext_accepted_ptt:
-0x5d92 025073 fetch 1 ,mem_ptt 
-0x5d93 025074 fetcht 1 ,mem_state_map 
-0x5d94 025075 nsetflag blank ,smap_edr ,temp 
-0x5d95 025076 storet 1 ,mem_state_map 
-:      025077 parse_lmpext_not_accepted_ptt:
-0x5d96 025078 fetch 1 ,mem_state 
-0x5d97 025079 rtnbit0 state_init_seq 
-0x5d98 025080 set0 state_init_seq ,pdata 
-0x5d99 025081 store 1 ,mem_state 
-0x5d9a 025082 fetch 1 ,mem_auth_enable 
-0x5d9b 025083 nrtn blank 
-0x5d9c 025084 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x5d9d 025085 rtn 
-:      025087 parse_lmpext_pause_encrypt:
-0x5d9e 025088 nbranch parse_lmpext_pause_encrypt_slave ,master 
-0x5d9f 025089 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
-0x5da0 025090 branch tid_reply 
-:      025092 parse_lmpext_pause_encrypt_slave:
-0x5da1 025093 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
-0x5da2 025094 rtn 
-:      025096 parse_lmpext_resume_encrypt:
-0x5da3 025099 call tid_reply 
-0x5da4 025100 branch lmp_start_encryption 
-:      025102 parse_lmpext_features_req:
-0x5da5 025103 jam lmp_ext_features_res ,mem_lmo_opcode2 
-0x5da6 025104 rtn 
-:      025106 parse_lmpext_features_res:
-0x5da7 025107 fetcht 1 ,mem_rxbuf + 4 
-0x5da8 025108 and temp ,0x1 ,temp 
-0x5da9 025109 storet 1 ,mem_remote_sppcap 
-0x5daa 025110 fetch 1 ,mem_hci_cmd 
-0x5dab 025111 bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
-0x5dac 025112 jam 0 ,mem_hci_cmd 
-:      025113 parse_lmpext_features_res_not_hci:
-0x5dad 025114 fetch 1 ,mem_conn_sm 
-0x5dae 025115 rtnne conn_sm_wait_features_ext 
-0x5daf 025116 jam conn_sm_send_conn_req ,mem_conn_sm 
-0x5db0 025117 branch process_conn_sm 
-:      025119 parse_lmp_accepted:
-0x5db1 025120 bpatchx patch30_0 ,mem_patch30 
-0x5db2 025121 fetch 1 ,mem_rxbuf + 1 
-0x5db3 025122 store 1 ,mem_lmi_accepted_opcode 
-0x5db4 025123 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
-0x5db5 025124 beq lmp_in_rand ,parse_lmp_accepted_inrand 
-0x5db6 025125 beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
-0x5db7 025126 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
-0x5db8 025127 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
-0x5db9 025128 beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
-0x5dba 025129 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
-0x5dbb 025130 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
-0x5dbc 025131 beq lmp_switch_req ,parse_lmp_accepted_switch 
-0x5dbd 025133 beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
-0x5dbe 025134 beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
-0x5dbf 025135 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
-0x5dc0 025136 beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
-0x5dc1 025137 rtn 
-:      025139 parse_lmp_not_accepted:
-0x5dc2 025140 bpatchx patch30_1 ,mem_patch30 
-0x5dc3 025141 fetch 1 ,mem_rxbuf + 1 
-0x5dc4 025142 store 1 ,mem_lmi_accepted_opcode 
-0x5dc5 025143 beq lmp_name_req ,parse_lmp_not_accepted_name_req 
-0x5dc6 025144 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
-0x5dc7 025145 beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
-0x5dc8 025146 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
-0x5dc9 025147 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
-0x5dca 025149 beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
-0x5dcb 025150 beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
-0x5dcc 025151 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
-0x5dcd 025152 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
-0x5dce 025153 rtn 
-:      025155 parse_lmp_accepted_switch:
-0x5dcf 025156 jam bt_evt_switch_accept ,mem_fifo_temp 
-0x5dd0 025157 call ui_ipc_send_event 
-0x5dd1 025158 branch role_switch_prepare0 
-:      025159 parse_lmp_not_accepted_switch:
-0x5dd2 025160 jam bt_evt_switch_not_accept ,mem_fifo_temp 
-0x5dd3 025161 call ui_ipc_send_event 
-0x5dd4 025162 jam switch_flag_not_accept ,mem_switch_flag 
-0x5dd5 025163 setarg timer_switch_waite 
-0x5dd6 025164 arg switch_wait_timer ,queue 
-0x5dd7 025165 branch timer_init 
-:      025168 parse_lmp_accepted_hostconn:
-0x5dd8 025171 fetch 1 ,mem_lmp_conn_state 
-0x5dd9 025172 set1 received_conn_req ,pdata 
-0x5dda 025173 store 1 ,mem_lmp_conn_state 
-0x5ddb 025174 jam bt_evt_bb_connected ,mem_fifo_temp 
-0x5ddc 025175 call ui_ipc_send_event 
-0x5ddd 025176 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
-:      025178 parse_lmp_accepted_hostconn_ctn:
-0x5dde 025180 fetch 1 ,mem_conn_sm 
-0x5ddf 025181 bne conn_sm_wait_conn_accept ,parse_rx_done 
-0x5de0 025184 jam conn_sm_auth_pair ,mem_conn_sm 
-0x5de1 025185 rtn 
-:      025193 parse_lmp_not_accepted_hostconn:
-0x5de2 025194 jam acl_connection_already_exists ,mem_disconn_reason_send 
-0x5de3 025195 jam lmp_detach ,mem_lmo_opcode2 
-0x5de4 025197 jam conn_sm_standby ,mem_conn_sm 
-0x5de5 025199 branch parse_rx_done ,true 
-0x5de6 025200 rtn 
-:      025202 parse_lmp_accepted_inrand:
-0x5de7 025203 fetch 1 ,mem_link_key_exists 
-0x5de8 025204 nrtn blank 
-0x5de9 025205 call clear_linkkey 
-0x5dea 025206 call lmp_generate_key 
-0x5deb 025207 rtn master 
-0x5dec 025208 set1 mark_slave_in_rand_accepted ,mark 
-0x5ded 025209 rtn 
-:      025211 parse_lmp_accepted_enc_mode:
-0x5dee 025212 nrtn master 
-0x5def 025213 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
-0x5df0 025214 fetch 1 ,mem_state_map 
-0x5df1 025215 rtnbit0 smap_encryption 
-0x5df2 025216 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
-0x5df3 025217 rtn 
-:      025219 parse_lmp_accepted_enc_keysize:
-0x5df4 025220 branch lmp_start_encryption 
-:      025222 parse_lmp_accepted_start_enc:
-0x5df5 025223 call send_create_conn_start_l2cap_timer_sm 
-0x5df6 025224 fetch 1 ,mem_state 
-0x5df7 025225 rtnbit1 state_conn_comp 
-0x5df8 025226 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x5df9 025227 fetch 1 ,mem_conn_sm 
-0x5dfa 025228 rtnne conn_sm_encrypt_wait 
-0x5dfb 025229 jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
-0x5dfc 025230 rtn 
-:      025232 parse_lmp_accepted_stop_enc:
-0x5dfd 025240 rtn 
-:      025242 parse_lmp_not_accepted_aurand:
-:      025243 parse_lmp_not_accepted_aurand_send_detach:
-0x5dfe 025244 jam lmp_detach ,mem_lmo_opcode2 
-0x5dff 025245 jam other_end_terminated ,mem_disconn_reason_send 
-0x5e00 025246 rtn 
-:      025248 parse_lmp_not_accepted_inrand:
-0x5e01 025249 fetch 1 ,mem_rxbuf + 2 
-0x5e02 025250 beq key_missing ,parse_lmp_inrand_key_missing 
-0x5e03 025251 rtnne pairing_not_allowed 
-0x5e04 025252 jam pairing_not_allowed ,mem_disconn_reason_send 
-0x5e05 025253 jam lmp_detach ,mem_lmo_opcode2 
-0x5e06 025254 rtn 
-:      025255 parse_lmp_inrand_key_missing:
-0x5e07 025256 jam key_missing ,mem_disconn_reason_send 
-0x5e08 025257 jam lmp_detach ,mem_lmo_opcode2 
-0x5e09 025258 rtn 
-:      025260 parse_lmp_not_accepted_name_req:
-0x5e0a 025261 rtn 
-:      025263 parse_lmp_not_accepted_simple_pairing_number:
-0x5e0b 025264 jam sp_stat_null ,mem_sp_state 
-0x5e0c 025265 jam lmp_detach ,mem_lmo_opcode2 
-0x5e0d 025266 branch parse_rx_done 
-:      025268 parse_lmp_not_accepted_dhkey_check:
-0x5e0e 025269 jam sp_stat_null ,mem_sp_state 
-0x5e0f 025270 jam lmp_detach ,mem_lmo_opcode2 
-0x5e10 025271 branch parse_rx_done 
-:      025272 parse_lmp_not_accepted_unsniff_req:
-0x5e11 025273 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
-0x5e12 025274 branch ui_ipc_send_event 
-:      025276 parse_lmp_accepted_unsniff_req:
-0x5e13 025277 jam bt_evt_unsniff_accept ,mem_fifo_temp 
-0x5e14 025278 call ui_ipc_send_event 
-0x5e15 025279 branch sniff_exit 
-:      025281 parse_lmp_accepted_sniff_req:
-0x5e16 025282 jam bt_evt_sniff_accept ,mem_fifo_temp 
-0x5e17 025283 call ui_ipc_send_event 
-0x5e18 025284 setarg 0 
-0x5e19 025285 store 2 ,mem_dsniff 
-0x5e1a 025286 fetch 2 ,mem_sniff_param_interval 
-0x5e1b 025287 lshift pdata ,pdata 
-0x5e1c 025288 store 2 ,mem_tsniff 
-0x5e1d 025289 fetch 1 ,mem_sniff_param_attempt 
-0x5e1e 025290 store 1 ,mem_sniff_attempt 
-0x5e1f 025291 fetch 1 ,mem_sniff_param_timeout 
-0x5e20 025292 store 1 ,mem_sniff_timeout 
-0x5e21 025293 branch sniff_init 
-:      025295 parse_lmp_not_acdcept_sniff_req:
-0x5e22 025296 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
-0x5e23 025297 branch ui_ipc_send_event 
-:      025299 parse_lmp_crypt_key:
-0x5e24 025300 fetcht 1 ,mem_rxbuf + 1 
-0x5e25 025301 storet 1 ,mem_key_size 
-0x5e26 025302 branch accept_lmp_msg 
-:      025304 parse_lmp_setup_complete:
-0x5e27 025305 fetch 1 ,mem_lmp_conn_state 
-0x5e28 025306 set1 received_setup_complete ,pdata 
-0x5e29 025307 store 1 ,mem_lmp_conn_state 
-0x5e2a 025308 rtnbit1 sent_setup_complete 
-0x5e2b 025309 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x5e2c 025310 branch parse_rx_done 
-:      025312 parse_lmp_max_slot:
-0x5e2d 025315 rtn 
-:      025317 parse_lmp_max_slot_req:
-0x5e2e 025318 fetch 1 ,mem_max_slot 
-0x5e2f 025319 fetcht 1 ,mem_rxbuf + 1 
-0x5e30 025320 isub temp ,null 
-0x5e31 025322 branch accept_lmp_msg ,positive 
-0x5e32 025323 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5e33 025324 jam unspecified_error ,mem_lmo_reason2 
-0x5e34 025325 jam lmp_max_slot_req ,mem_lmi_opcode2 
-0x5e35 025326 rtn 
-:      025328 parse_lmp_detach:
-0x5e36 025329 call prepare_disconnect 
-0x5e37 025330 branch accept_lmp_msg 
-:      025332 accept_lmp_msg:
-0x5e38 025333 jam lmp_accepted ,mem_lmo_opcode2 
-0x5e39 025334 rtn 
-:      025336 parse_lmp_incr_power:
-0x5e3a 025337 jam lmp_max_power ,mem_lmo_opcode2 
-0x5e3b 025338 rtn 
-:      025340 parse_lmp_decr_power:
-0x5e3c 025341 jam lmp_min_power ,mem_lmo_opcode2 
-0x5e3d 025342 rtn 
-:      025344 parse_lmp_version_res:
-0x5e3e 025345 fetch 1 ,mem_conn_sm 
-0x5e3f 025346 rtneq conn_sm_wait_version 
-0x5e40 025348 jam conn_sm_send_features ,mem_conn_sm 
-0x5e41 025350 rtn 
-:      025353 parse_lmp_auto_rate:
-0x5e42 025354 rtn 
-:      025356 parse_lmp_in_rand:
-0x5e43 025357 call lmp_copy_rand 
-0x5e44 025358 jam pincode_state_wait_pincode ,mem_pincode_state 
-0x5e45 025359 jam bt_evt_pincode_req ,mem_fifo_temp 
-0x5e46 025360 call ui_ipc_send_event 
-0x5e47 025362 call tid_check 
-0x5e48 025363 nbranch lmp_accept_inrand ,true 
-0x5e49 025365 nbranch parse_lmp_inrand_res ,master 
-0x5e4a 025366 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5e4b 025367 jam lmp_in_rand ,mem_lmi_opcode2 
-0x5e4c 025368 jam transaction_collision ,mem_lmo_reason2 
-0x5e4d 025369 rtn 
-:      025370 parse_lmp_inrand_res:
-0x5e4e 025371 fetch 1 ,mem_op 
-0x5e4f 025372 set1 op_inrand_req ,pdata 
-0x5e50 025373 store 1 ,mem_op 
-0x5e51 025374 rtn 
-:      025377 pop_tid_follow:
-0x5e52 025378 fetcht 1 ,mem_state_map 
-0x5e53 025379 nsetflag blank ,smap_lmptid ,temp 
-0x5e54 025380 storet 1 ,mem_state_map 
-0x5e55 025381 rtn 
-:      025384 push_tid_follow:
-0x5e56 025385 fetch 1 ,mem_lmo_tid2 
-0x5e57 025386 rshift pdata ,pdata 
-0x5e58 025387 and_into 1 ,pdata 
-0x5e59 025388 rtn 
-:      025390 parse_lmp_au_rand_moudle:
-0x5e5a 025391 fetch 1 ,mem_nv_data_number 
-0x5e5b 025392 rtn blank 
-0x5e5c 025393 fetch 1 ,mem_pairing_auth 
-0x5e5d 025394 call load_device_list ,blank 
-0x5e5e 025395 rtn 
-:      025397 parse_lmp_au_rand:
-0x5e5f 025398 call parse_lmp_au_rand_moudle 
-0x5e60 025399 call push_tid_follow 
-0x5e61 025400 store 1 ,mem_sres_tid 
-0x5e62 025401 call lmp_copy_rand 
-0x5e63 025402 jam lmp_sres ,mem_lmo_opcode2 
-0x5e64 025403 fetch 1 ,mem_link_key_exists 
-0x5e65 025404 nrtn blank 
-0x5e66 025405 fetch 1 ,mem_state 
-0x5e67 025406 rtnbit1 state_combkey 
-0x5e68 025407 jam key_missing ,mem_lmo_reason2 
-0x5e69 025408 branch reject_lmp_packet 
-:      025410 parse_lmp_sres:
-0x5e6a 025411 arg mem_plap ,rega 
-0x5e6b 025412 call function_e1 
-0x5e6c 025413 fetch 4 ,mem_rxbuf + 1 
-0x5e6d 025414 fetcht 4 ,mem_input_store 
-0x5e6e 025415 isub temp ,null 
-0x5e6f 025416 branch authentication_ok ,zero 
-0x5e70 025417 jam lmp_detach ,mem_lmo_opcode2 
-0x5e71 025418 jam authentication_failure_error ,mem_disconn_reason_send 
-0x5e72 025419 rtn 
-:      025420 authentication_ok:
-0x5e73 025421 call authentication_ok_common 
-0x5e74 025422 fetch 1 ,mem_ssp_enable 
-0x5e75 025423 branch pairing_success ,blank 
-0x5e76 025424 rtn 
-:      025427 authentication_ok_common:
-0x5e77 025428 call copy_aco 
-0x5e78 025429 call linkkey_ready 
-0x5e79 025430 fetch 1 ,mem_op 
-0x5e7a 025431 isolate1 op_auth_req ,pdata 
-0x5e7b 025432 set0 op_auth_req ,pdata 
-0x5e7c 025433 store 1 ,mem_op 
-0x5e7d 025434 fetch 1 ,mem_conn_sm 
-0x5e7e 025435 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
-0x5e7f 025436 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
-0x5e80 025437 rtn 
-:      025438 authentication_ok_conn_sm:
-0x5e81 025439 fetch 1 ,mem_pairing_auth 
-0x5e82 025440 rtnne defalt_pairing_auth 
-0x5e83 025441 fetch 1 ,mem_state_map 
-0x5e84 025442 rtnbit1 smap_encryption 
-0x5e85 025443 branch host_create_conn_encrypt 
-:      025445 parse_lmp_comb_key:
-0x5e86 025446 arg mem_rxbuf + 1 ,rega 
-0x5e87 025447 arg mem_kinit ,regb 
-0x5e88 025448 arg mem_random_number ,contw 
-0x5e89 025449 call xor16 
-0x5e8a 025450 arg mem_plap ,rega 
-0x5e8b 025451 call generate_linkkey 
-0x5e8c 025452 jam lmp_au_rand ,mem_lmo_opcode2 
-0x5e8d 025453 fetch 1 ,mem_state 
-0x5e8e 025454 bbit0 state_combkey ,lmp_generate_key 
-0x5e8f 025455 rtn 
-:      025457 parse_lmp_name_res:
-0x5e90 025458 fetch 2 ,mem_len 
-0x5e91 025459 add pdata ,-3 ,loopcnt 
-0x5e92 025460 fetcht 1 ,mem_rxbuf + 1 
-0x5e93 025461 setarg mem_tmp_buffer 
-0x5e94 025462 iadd temp ,contw 
-0x5e95 025463 arg mem_rxbuf + 3 ,contr 
-0x5e96 025464 call memcpy 
-0x5e97 025465 fetcht 1 ,mem_name_offset 
-0x5e98 025466 fetch 1 ,mem_rxbuf + 2 
-0x5e99 025467 isub temp ,pdata 
-0x5e9a 025468 sub pdata ,14 ,null 
-0x5e9b 025469 branch parse_lmp_name_res_end ,positive 
-0x5e9c 025470 add temp ,14 ,pdata 
-0x5e9d 025471 store 1 ,mem_name_offset 
-0x5e9e 025472 jam lmp_name_req ,mem_lmo_opcode2 
-0x5e9f 025473 rtn 
-:      025474 parse_lmp_name_res_end:
-0x5ea0 025475 fetch 1 ,mem_state_map 
-0x5ea1 025476 set1 smap_name_res ,pdata 
-0x5ea2 025477 store 1 ,mem_state_map 
-0x5ea3 025478 bbit1 smap_name_req ,lmp_disconnect 
-0x5ea4 025479 rtn 
-:      025480 parse_lmp_name_req:
-0x5ea5 025481 fetch 1 ,mem_rxbuf + 1 
-0x5ea6 025482 store 1 ,mem_lmi_opcode2 
-0x5ea7 025483 jam lmp_name_res ,mem_lmo_opcode2 
-0x5ea8 025484 rtn 
-:      025486 parse_lmp_conn_req:
-0x5ea9 025487 branch accept_lmp_msg 
-:      025489 parse_lmp_timing_accuracy_req:
-0x5eaa 025490 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
-0x5eab 025491 rtn 
-:      025493 parse_lmp_features_req:
-0x5eac 025494 jam lmp_features_res ,mem_lmo_opcode2 
-0x5ead 025495 rtn 
-:      025497 parse_lmp_version_req:
-0x5eae 025498 jam lmp_version_res ,mem_lmo_opcode2 
-0x5eaf 025499 rtn 
-:      025501 parse_lmp_supervision_timeout:
-0x5eb0 025504 rtn 
-:      025508 parse_lmp_sniff_subrating_req:
-0x5eb1 025509 fetch 2 ,mem_tsniff 
-0x5eb2 025510 iforce temp 
-0x5eb3 025511 fetch 1 ,mem_rxbuf + 2 
-0x5eb4 025512 store 1 ,mem_subsniff_rate 
-0x5eb5 025513 imul32 temp ,temp 
-0x5eb6 025514 fetch 2 ,mem_rxbuf + 3 
-0x5eb7 025515 lshift pdata ,pdata 
-0x5eb8 025516 store 2 ,mem_subsniff_tcmax 
-0x5eb9 025517 fetch 4 ,mem_rxbuf + 5 
-0x5eba 025518 lshift pdata ,pdata 
-0x5ebb 025519 store 4 ,mem_subsniff_instant 
-0x5ebc 025521 deposit temp 
-0x5ebd 025522 store 2 ,mem_subsniff_tsniff 
-0x5ebe 025523 rtn 
-:      025524 parse_lmpext_packet_type_table_req:
-0x5ebf 025525 fetcht 1 ,mem_ptt 
-0x5ec0 025526 fetch 1 ,mem_rxbuf + 2 
-0x5ec1 025527 ixor temp ,null 
-0x5ec2 025528 nbranch reject_unknown_ext_packet ,zero 
-0x5ec3 025529 isolate1 0 ,pdata 
-0x5ec4 025530 fetch 1 ,mem_state_map 
-0x5ec5 025531 setflag true ,smap_edr ,pdata 
-0x5ec6 025532 store 1 ,mem_state_map 
-0x5ec7 025533 jam lmp_ext_accepted ,mem_lmo_opcode2 
-0x5ec8 025534 jam lmp_packet_type_table_req ,mem_lmi_opcode2 
-0x5ec9 025535 rtn 
-:      025538 parse_lmp_sniff_subrating_res:
-:      025539 parse_lmp_preferred_rate:
-:      025540 parse_lmp_max_power:
-:      025541 parse_lmp_min_power:
-0x5eca 025542 rtn 
-:      025543 parse_lmp_page_mode_req:
-0x5ecb 025545 branch accept_lmp_msg 
-:      025546 parse_lmp_page_scan_mode_req:
-0x5ecc 025549 branch accept_lmp_msg 
-:      025553 parse_lmp_slot_offset:
-0x5ecd 025554 fetch 2 ,mem_rxbuf + 1 
-0x5ece 025555 store 2 ,mem_slot_offset 
-0x5ecf 025556 rtn 
-:      025558 parse_lmp_sniff_req_check_sniff_para:
-0x5ed0 025559 fetch 2 ,mem_rxbuf + 4 
-0x5ed1 025560 fetcht 1 ,mem_lpm_mult 
-0x5ed2 025561 imul32 temp ,pdata 
-0x5ed3 025562 arg 0x640 ,temp 
-0x5ed4 025563 isub temp ,null 
-0x5ed5 025565 rtn 
-:      025567 parse_lmp_sniff_req:
-0x5ed6 025568 fetch 2 ,mem_rxbuf + 6 
-0x5ed7 025569 branch lmp_reject_sniff ,blank 
-0x5ed8 025570 call parse_lmp_sniff_req_check_sniff_para 
-0x5ed9 025571 branch lmp_reject_sniff ,positive 
-0x5eda 025572 fetch 1 ,mem_device_option 
-0x5edb 025573 sub pdata ,dvc_op_module ,null 
-0x5edc 025574 call module_set_lpm_mult_2 ,zero 
-0x5edd 025575 fetch 1 ,mem_state 
-0x5ede 025576 bbit1 state_insniff ,lmp_reject_sniff 
-0x5edf 025577 fetch 2 ,mem_rxbuf + 2 
-0x5ee0 025578 lshift pdata ,pdata 
-0x5ee1 025579 store 2 ,mem_dsniff 
-0x5ee2 025580 fetch 2 ,mem_rxbuf + 4 
-0x5ee3 025581 lshift pdata ,pdata 
-0x5ee4 025582 store 2 ,mem_tsniff 
-0x5ee5 025583 fetch 2 ,mem_rxbuf + 6 
-0x5ee6 025584 store 1 ,mem_sniff_attempt 
-0x5ee7 025585 iforce temp 
-0x5ee8 025586 fetch 2 ,mem_rxbuf + 8 
-0x5ee9 025587 store 1 ,mem_sniff_timeout 
-0x5eea 025588 isub temp ,null 
-0x5eeb 025589 nbranch set_big_value_to_attempt ,positive 
-0x5eec 025590 store 1 ,mem_sniff_attempt 
-:      025591 set_big_value_to_attempt:
-0x5eed 025593 jam lmp_accepted ,mem_lmo_opcode2 
-0x5eee 025594 jam lmp_sniff_req ,mem_lmi_opcode2 
-0x5eef 025595 rtn 
-:      025597 lmp_reject_sniff:
-0x5ef0 025598 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5ef1 025599 branch reject_lmp_packet 
-:      025601 parse_lmp_start_encryption_req:
-0x5ef2 025602 call accept_lmp_msg 
-0x5ef3 025603 call lmp_copy_rand 
-0x5ef4 025604 call function_e3 
-0x5ef5 025605 branch start_encryption 
-:      025607 parse_lmp_stop_encryption_req:
-0x5ef6 025608 call accept_lmp_msg 
-0x5ef7 025609 branch stop_encryption 
-:      025612 parse_lmp_switch_req:
-0x5ef8 025613 fetch 4 ,mem_rxbuf + 1 
-0x5ef9 025614 lshift pdata ,pdata 
-0x5efa 025616 branch parse_lmp_switch_accept ,master 
-0x5efb 025617 fetcht 1 ,mem_link_key_exists 
-0x5efc 025618 nbranch parse_lmp_switch_req_clear_mark ,blank 
-:      025619 parse_lmp_switch_req_not_accept:
-0x5efd 025620 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5efe 025621 jam lmp_switch_req ,mem_lmi_opcode2 
-0x5eff 025622 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f00 025623 rtn 
-:      025624 parse_lmp_switch_req_clear_mark:
-0x5f01 025625 jam lmp_slot_offset ,mem_lmo_opcode2 
-0x5f02 025626 jam 0 ,mem_conn_sm 
-0x5f03 025627 branch role_switch_prepare 
-:      025629 parse_lmp_switch_accept:
-0x5f04 025630 call role_switch_prepare 
-0x5f05 025631 set1 mark_reconn_recieve_switch ,mark 
-0x5f06 025632 fetch 1 ,mem_connection_options 
-0x5f07 025633 set0 connection_switch ,pdata 
-0x5f08 025634 store 1 ,mem_connection_options 
-0x5f09 025635 branch accept_lmp_msg 
-:      025639 parse_lmp_temp_rand:
-:      025640 parse_lmp_temp_key:
-:      025641 parse_lmp_timing_accuracy_res:
-:      025642 parse_lmp_unit_key:
-:      025643 parse_lmp_use_semi_permanend_key:
-0x5f0a 025644 rtn 
-:      025647 parse_lmp_unsniff_req:
-0x5f0b 025648 jam lmp_accepted ,mem_lmo_opcode2 
-0x5f0c 025649 jam lmp_unsniff_req ,mem_lmi_opcode2 
-0x5f0d 025650 jam bt_evt_remote_unsniff ,mem_fifo_temp 
-0x5f0e 025651 call ui_ipc_send_event 
-0x5f0f 025652 branch sniff_exit 
-:      025654 parse_lmp_encapsulated_header:
-0x5f10 025655 fetch 1 ,mem_rxbuf + 1 
-0x5f11 025656 bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
-0x5f12 025657 fetch 1 ,mem_rxbuf + 2 
-0x5f13 025658 bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
-0x5f14 025659 fetch 1 ,mem_rxbuf + 3 
-0x5f15 025660 bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
-0x5f16 025661 call check_localsm 
-0x5f17 025662 branch parse_lmp_encapsulated_header_master ,true 
-0x5f18 025663 jam sp_stat_key_recv ,mem_sp_state 
-:      025664 parse_lmp_encapsulated_header_master:
-0x5f19 025665 jam lmp_accepted ,mem_lmo_opcode2 
-0x5f1a 025666 jam lmp_encapsulated_header ,mem_lmi_opcode2 
-0x5f1b 025667 branch parse_rx_done 
-:      025669 parse_lmp_encapsulated_header_reject:
-0x5f1c 025670 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f1d 025671 branch reject_lmp_packet 
-:      025673 parse_lmp_accepted_encapsulated_header:
-0x5f1e 025676 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
-0x5f1f 025678 rtn 
-:      025679 parse_lmp_accepted_simple_pairing_number:
-0x5f20 025680 fetch 1 ,mem_ssp_mode_flag 
-0x5f21 025681 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
-0x5f22 025682 beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
-:      025683 parse_lmp_accepted_simple_pairing_number_common:
-0x5f23 025684 call check_localsm 
-0x5f24 025685 rtn true 
-0x5f25 025686 jam sp_stat_confirm_recv ,mem_sp_state 
-0x5f26 025687 rtn 
-:      025689 parse_lmp_accepted_simple_pairing_number_ssp_pin:
-0x5f27 025690 call g_noninit_number_confirm 
-0x5f28 025691 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
-0x5f29 025692 call ui_ipc_send_event 
-0x5f2a 025693 branch parse_lmp_accepted_simple_pairing_number_common 
-:      025696 parse_lmp_accepted_simple_pairing_number_passkey:
-0x5f2b 025697 call check_localsm 
-0x5f2c 025698 rtn true 
-0x5f2d 025699 fetch 1 ,mem_authentication_passkey_times 
-0x5f2e 025700 beq 19 ,authentication_passkey_end 
-0x5f2f 025701 increase 1 ,pdata 
-0x5f30 025702 store 1 ,mem_authentication_passkey_times 
-:      025705 authentication_passkey:
-0x5f31 025706 jam sp_flag_commit ,mem_sp_flag 
-0x5f32 025707 jam sp_stat_commit_calc ,mem_sp_state 
-0x5f33 025708 fetch 1 ,mem_authentication_passkey_times 
-0x5f34 025709 copy pdata ,queue 
-0x5f35 025710 fetch 6 ,mem_pin 
-0x5f36 025711 qisolate1 pdata 
-0x5f37 025712 setarg 0x80 
-0x5f38 025713 setflag true ,0 ,pdata 
-0x5f39 025714 store 1 ,mem_passkey_1bit 
-0x5f3a 025715 rtn 
-:      025717 authentication_passkey_end:
-0x5f3b 025718 jam sp_stat_confirm_recv ,mem_sp_state 
-0x5f3c 025719 rtn 
-:      025721 parse_lmp_accepted_dhkey_check:
-0x5f3d 025722 call parse_lmp_accepted_dhkey_check_common 
-:      025723 pairing_success:
-0x5f3e 025724 fetch 1 ,mem_flag_pairing_state 
-0x5f3f 025725 rtn blank 
-0x5f40 025726 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
-0x5f41 025727 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
-0x5f42 025728 branch ui_ipc_send_event 
-:      025731 parse_lmp_accepted_dhkey_check_common:
-0x5f43 025733 call check_localsm 
-0x5f44 025734 ncall g_noninit ,true 
-0x5f45 025735 call g_init ,true 
-0x5f46 025736 call check_localsm 
-0x5f47 025737 rtn true 
-0x5f48 025738 jam sp_stat_link_key_calc ,mem_sp_state 
-0x5f49 025739 jam sp_flag_commit ,mem_sp_flag 
-0x5f4a 025740 rtn 
-:      025742 parse_simple_pairing_confirm:
-0x5f4b 025743 arg mem_sp_confirm_remote ,contw 
-0x5f4c 025744 arg mem_rxbuf + 1 ,contr 
-0x5f4d 025745 call memcpy16 
-0x5f4e 025746 fetch 1 ,mem_ssp_mode_flag 
-0x5f4f 025747 rtneq ssp_mode_passkey_entry_flag 
-0x5f50 025748 branch master_set_mem_master_sp_flag 
-:      025750 parse_lmp_encapsulated_payload:
-0x5f51 025751 fetch 1 ,mem_master_sp_state 
-0x5f52 025752 beq sp_stat_random_send ,parse_encapsulated_payload_master 
-0x5f53 025753 fetch 1 ,mem_sp_state 
-0x5f54 025754 bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
-:      025755 parse_encapsulated_payload_master:
-0x5f55 025756 fetch 1 ,mem_sp_remote_key_recv_count 
-0x5f56 025757 sub pdata ,0x20 ,contw 
-0x5f57 025758 nbranch parse_lmp_encapsulated_payload_reject ,positive 
-0x5f58 025759 arg mem_sp_pubkey_remote ,contw 
-0x5f59 025760 iadd contw ,contw 
-0x5f5a 025761 fetch 8 ,mem_rxbuf + 1 
-0x5f5b 025762 istore 8 ,contw 
-0x5f5c 025763 fetch 8 ,mem_rxbuf + 9 
-0x5f5d 025764 istore 8 ,contw 
-0x5f5e 025765 fetch 1 ,mem_sp_remote_key_recv_count 
-0x5f5f 025766 increase 16 ,pdata 
-0x5f60 025767 store 1 ,mem_sp_remote_key_recv_count 
-0x5f61 025768 bne encapsulated_len_p192 ,accept_lmp_msg 
-:      025769 parse_lmp_encapsulated_payload_completed:
-0x5f62 025770 call check_localsm 
-0x5f63 025771 branch accept_lmp_msg ,true 
-0x5f64 025772 jam sp_key_valid ,mem_sp_remote_key_invalid 
-0x5f65 025773 jam sp_stat_key_generate ,mem_sp_state 
-0x5f66 025774 jam sp_flag_commit ,mem_sp_flag 
-0x5f67 025775 branch accept_lmp_msg 
-:      025776 parse_lmp_encapsulated_payload_reject:
-0x5f68 025777 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f69 025778 branch reject_lmp_packet 
-:      025779 parse_lmp_accepted_encapsulated_payload:
-0x5f6a 025780 fetch 1 ,mem_sp_local_key_send_count 
-0x5f6b 025781 beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
-0x5f6c 025782 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
-0x5f6d 025783 branch parse_rx_done 
-:      025785 parse_lmp_encapsulated_payload_all_accepted:
-0x5f6e 025786 call check_localsm 
-0x5f6f 025787 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
-0x5f70 025788 fetch 1 ,mem_ssp_mode_flag 
-0x5f71 025789 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
-0x5f72 025790 jam sp_flag_commit ,mem_sp_flag 
-0x5f73 025791 jam sp_stat_commit_calc ,mem_sp_state 
-0x5f74 025792 branch parse_rx_done 
-:      025794 parse_lmp_encapsulated_payload_all_accepted_get_passkey:
-0x5f75 025795 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
-0x5f76 025796 branch ui_ipc_send_event 
-:      025799 parse_lmp_encapsulated_payload_all_accepted_master:
-0x5f77 025801 branch parse_rx_done 
-:      025803 parse_lmp_simple_pairing_number:
-0x5f78 025804 fetch 1 ,mem_master_sp_state 
-0x5f79 025805 beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
-0x5f7a 025806 fetch 1 ,mem_sp_state 
-0x5f7b 025807 bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
-:      025808 parse_lmp_simple_pairing_number_master:
-0x5f7c 025809 arg mem_sp_random_remote ,contw 
-0x5f7d 025810 fetch 8 ,mem_rxbuf + 1 
-0x5f7e 025811 istore 8 ,contw 
-0x5f7f 025812 fetch 8 ,mem_rxbuf + 9 
-0x5f80 025813 istore 8 ,contw 
-0x5f81 025814 call check_localsm 
-0x5f82 025815 branch parse_lmp_simple_pairing_number_master0 ,true 
-0x5f83 025816 jam sp_stat_random_send ,mem_sp_state 
-0x5f84 025817 jam sp_flag_commit ,mem_sp_flag 
-0x5f85 025818 branch accept_lmp_msg 
-:      025819 parse_lmp_simple_pairing_number_master0:
-0x5f86 025820 jam sp_stat_commit_calc ,mem_master_sp_state 
-0x5f87 025821 branch master_set_mem_master_sp_flag 
-:      025824 parse_lmp_simple_pairing_number_reject:
-0x5f88 025825 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f89 025826 branch reject_lmp_packet 
-:      025828 parse_dhkey_check:
-0x5f8a 025829 fetch 1 ,mem_master_sp_state 
-0x5f8b 025830 beq sp_stat_confirm_send ,parse_dhkey_check_master 
-0x5f8c 025831 fetch 1 ,mem_sp_state 
-0x5f8d 025832 bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
-:      025833 parse_dhkey_check_master:
-0x5f8e 025834 arg mem_sp_check_result ,contw 
-0x5f8f 025835 arg mem_rxbuf + 1 ,contr 
-0x5f90 025836 call memcpy16 
-0x5f91 025837 call check_localsm 
-0x5f92 025838 branch parse_dhkey_check_master0 ,true 
-0x5f93 025839 fetch 1 ,mem_ssp_mode_flag 
-0x5f94 025840 beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
-:      025841 number_comparison_successed:
-0x5f95 025842 jam 0 ,mem_flag_mode_ssp_pin 
-0x5f96 025843 jam sp_stat_confirm_check ,mem_sp_state 
-0x5f97 025844 jam sp_flag_commit ,mem_sp_flag 
-0x5f98 025845 jam lmp_dhkey_check ,mem_lmi_opcode2 
-0x5f99 025846 branch parse_rx_done 
-:      025848 parse_dhkey_check_master0:
-0x5f9a 025849 jam sp_stat_confirm_check ,mem_master_sp_state 
-0x5f9b 025850 jam sp_flag_commit ,mem_master_sp_flag 
-0x5f9c 025851 branch parse_rx_done 
-:      025852 parse_lmp_dhkey_check_reject:
-0x5f9d 025853 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f9e 025854 branch reject_lmp_packet 
-:      025856 number_comparison_mode:
-0x5f9f 025857 fetch 1 ,mem_flag_mode_ssp_pin 
-0x5fa0 025858 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
-0x5fa1 025859 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
-0x5fa2 025860 store 1 ,mem_flag_mode_ssp_pin 
-0x5fa3 025861 rtn 
-:      025863 comparison_result:
-0x5fa4 025864 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
-0x5fa5 025865 jam 0 ,mem_flag_mode_ssp_pin 
-0x5fa6 025866 branch parse_lmp_dhkey_check_reject 
-:      025869 parse_lmp_clkoffset_res:
-0x5fa7 025870 branch parse_rx_done 
-:      025872 parse_lmp_encryption_mode_req:
-0x5fa8 025873 fetch 1 ,mem_connection_options 
-0x5fa9 025874 set0 connection_encrypt 
-0x5faa 025875 store 1 ,mem_connection_options 
-0x5fab 025876 call accept_lmp_msg 
-0x5fac 025877 nrtn master 
-0x5fad 025878 fetch 1 ,mem_rxbuf + 1 
-0x5fae 025879 fetcht 1 ,mem_op 
-0x5faf 025880 setflag blank ,op_stop_enc ,temp 
-0x5fb0 025881 nsetflag blank ,op_start_enc ,temp 
-0x5fb1 025882 storet 1 ,mem_op 
-0x5fb2 025883 rtn 
-:      025885 parse_lmp_features_res:
-0x5fb3 025886 fetcht 8 ,mem_rxbuf + 1 
-:      025887 parse_lmp_features_res_not_hci:
-0x5fb4 025888 fetch 1 ,mem_conn_sm 
-0x5fb5 025889 rtnne conn_sm_wait_features_res 
-0x5fb6 025891 fetch 1 ,mem_connection_options 
-0x5fb7 025892 bbit0 connection_feature_ext ,parse_lmp_send_conn 
-0x5fb8 025894 jam conn_sm_send_features_ext ,mem_conn_sm 
-0x5fb9 025895 rtn 
-:      025896 parse_lmp_send_conn:
-0x5fba 025897 jam conn_sm_send_conn_req ,mem_conn_sm 
-0x5fbb 025898 rtn 
-:      025899 parse_lmp_test_activate:
-0x5fbc 025900 fetch 1 ,mem_debug_config 
-0x5fbd 025901 store 1 ,mem_test_mode_old_debug_config 
-0x5fbe 025902 jam lmp_accepted ,mem_lmo_opcode2 
-0x5fbf 025903 jam lmp_test_activate ,mem_lmi_opcode2 
-0x5fc0 025904 rtn 
-:      025905 parse_lmp_test_control:
-0x5fc1 025908 jam lmp_accepted ,mem_lmo_opcode2 
-0x5fc2 025909 jam lmp_test_control ,mem_lmi_opcode2 
-0x5fc3 025910 force 9 ,loopcnt 
-0x5fc4 025911 arg mem_rxbuf + 1 ,contr 
-0x5fc5 025912 arg mem_temp_payload ,contw 
-:      025913 parse_lmp_test_xor:
-0x5fc6 025914 ifetch 1 ,contr 
-0x5fc7 025915 xor_into 0x55 ,pdata 
-0x5fc8 025916 istore 1 ,contw 
-0x5fc9 025917 loop parse_lmp_test_xor 
-0x5fca 025918 fetch 1 ,test_mode_scenario 
-0x5fcb 025919 fetcht 1 ,mem_tester_emulate 
-0x5fcc 025920 set0 tester_no_whitening ,temp 
-0x5fcd 025921 set0 tester_pattern_test ,temp 
-0x5fce 025922 beq exit_test_mode ,parse_lmp_test_control_exit 
-0x5fcf 025923 beq pause_test_mode ,parse_lmp_test_control_pause 
-0x5fd0 025924 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
-0x5fd1 025925 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
-0x5fd2 025926 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
-0x5fd3 025927 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
-0x5fd4 025928 beq zero_pattern ,parse_lmp_test_control_pattern 
-0x5fd5 025929 beq one_pattern ,parse_lmp_test_control_pattern 
-0x5fd6 025930 beq alt_pattern ,parse_lmp_test_control_pattern 
-0x5fd7 025931 beq alt2_pattern ,parse_lmp_test_control_pattern 
-0x5fd8 025932 beq pseudorandom ,parse_lmp_test_control_pattern 
-0x5fd9 025933 rtn 
-:      025934 parse_lmp_test_control_exit:
-0x5fda 025936 fetch 1 ,mem_tester_emulate 
-0x5fdb 025937 set1 tester_exit ,pdata 
-0x5fdc 025938 set1 tester_change ,pdata 
-0x5fdd 025939 store 1 ,mem_tester_emulate 
-0x5fde 025940 rtn 
-:      025941 parse_lmp_test_control_pattern:
-0x5fdf 025942 set1 tester_pattern_test ,temp 
-0x5fe0 025943 jam 5 ,mem_lch_code 
-0x5fe1 025944 fetch 2 ,test_mode_data_length 
-0x5fe2 025945 iforce loopcnt 
-0x5fe3 025946 store 2 ,mem_len 
-0x5fe4 025947 arg mem_rxbuf ,contw 
-0x5fe5 025948 call pn9 
-:      025949 parse_lmp_test_control_loopback_nowhite:
-0x5fe6 025950 set1 tester_no_whitening ,temp 
-:      025951 parse_lmp_test_control_loopback:
-0x5fe7 025952 set1 tester_change ,temp 
-0x5fe8 025953 force 0 ,pdata 
-0x5fe9 025954 store 1 ,mem_slave_rcvcnt 
-0x5fea 025955 store 2 ,mem_tst_pktcnt_crc 
-0x5feb 025956 store 2 ,mem_tst_pktcnt_dmh 
-0x5fec 025957 store 2 ,mem_tst_pktcnt_hec 
-0x5fed 025958 store 2 ,mem_tst_pktcnt_sync 
-0x5fee 025959 fetch 1 ,test_mode_hopping_mode 
-0x5fef 025960 compare fixed_freq ,pdata ,0xff 
-0x5ff0 025961 setflag true ,tester_fixed_freq ,temp 
-0x5ff1 025962 storet 1 ,mem_tester_emulate 
-0x5ff2 025963 rtn 
-:      025965 parse_lmp_test_control_pause:
-0x5ff3 025966 set0 mark_testmode ,mark 
-0x5ff4 025967 jam 0 ,mem_tester_emulate 
-0x5ff5 025968 fetch 1 ,mem_debug_config 
-0x5ff6 025969 set0 debug_tx_pattern ,pdata 
-0x5ff7 025970 store 1 ,mem_debug_config 
-0x5ff8 025971 rtn 
-:      025977 lmp_copy_rand:
-0x5ff9 025978 arg mem_rxbuf + 1 ,contr 
-0x5ffa 025979 arg mem_random_number ,contw 
-0x5ffb 025980 branch memcpy16 
-:      025982 lmp_generate_key:
-0x5ffc 025983 jam lmp_comb_key ,mem_lmo_opcode2 
-0x5ffd 025984 rtn 
-:      025986 lmp_start_encryption:
-0x5ffe 025987 nrtn master 
-0x5fff 025988 jam lmp_start_encryption_req ,mem_lmo_opcode2 
-0x6000 025989 rtn 
-:      025991 lmp_accept_inrand:
-0x6001 025992 arg mem_lap ,rega 
-0x6002 025993 call generate_kinit 
-0x6003 025994 jam lmp_accepted ,mem_lmo_opcode2 
-0x6004 025995 jam lmp_in_rand ,mem_lmi_opcode2 
-0x6005 025996 rtn 
-:      025998 lmp_disconnect:
-0x6006 025999 jam 10 ,mem_conn_timer 
-0x6007 026000 jam lmp_detach ,mem_lmo_opcode2 
-0x6008 026001 jam local_host ,mem_disconn_reason_send 
-0x6009 026002 rtn 
-:      026008 send_lmp:
-0x600a 026009 bpatchx patch30_2 ,mem_patch30 
-0x600b 026010 disable user 
-0x600c 026011 call lmo_fifo_process 
-0x600d 026012 fetch 1 ,mem_lmp_to_send 
-0x600e 026013 rtn blank 
-0x600f 026018 bbit1 7 ,send_lmp_escape 
-:      026019 send_lmp0:
-0x6010 026020 beq lmp_name_req ,send_lmp_name_req 
-0x6011 026021 beq lmp_name_res ,send_lmp_name_res 
-0x6012 026022 beq lmp_accepted ,send_lmp_accepted 
-0x6013 026023 beq lmp_not_accepted ,send_lmp_not_accepted 
-0x6014 026024 beq lmp_features_req ,send_lmp_features_req 
-0x6015 026025 beq lmp_features_res ,send_lmp_features_res 
-0x6016 026026 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
-0x6017 026027 beq lmp_version_req ,send_lmp_version_req 
-0x6018 026028 beq lmp_version_res ,send_lmp_version_res 
-0x6019 026029 beq lmp_setup_complete ,send_lmp_setup_complete 
-0x601a 026030 beq lmp_supervision_timeout ,send_lmp_superto 
-0x601b 026031 beq lmp_host_connection_req ,send_lmp_no_payload 
-0x601c 026032 beq lmp_in_rand ,send_lmp_inrand 
-0x601d 026033 beq lmp_comb_key ,send_lmp_comb_key 
-0x601e 026034 beq lmp_au_rand ,send_lmp_aurand 
-0x601f 026035 beq lmp_sres ,send_lmp_sres 
-0x6020 026036 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
-0x6021 026037 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
-0x6022 026038 beq lmp_start_encryption_req ,send_lmp_start_encryption 
-0x6023 026039 beq lmp_detach ,send_lmp_detach 
-0x6024 026040 beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
-0x6025 026041 beq lmp_unit_key ,send_lmp_unit_key 
-0x6026 026043 beq lmp_incr_power_req ,send_lmp_inc_power 
-0x6027 026044 beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
-0x6028 026045 beq lmp_max_power ,send_lmp_nopayload_reply 
-0x6029 026046 beq lmp_max_slot ,send_lmp_max_slot 
-0x602a 026047 beq lmp_max_slot_req ,send_lmp_max_slot_req 
-0x602b 026048 beq lmp_min_power ,send_lmp_nopayload_reply 
-0x602c 026049 beq lmp_slot_offset ,send_lmp_slot_offset 
-0x602d 026050 beq lmp_switch_req ,send_lmp_switch_req 
-0x602e 026051 beq lmp_sniff_req ,send_lmp_sniff_req 
-0x602f 026052 beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
-0x6030 026053 beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
-0x6031 026054 beq lmp_unsniff_req ,send_lmp_unsniff_req 
-0x6032 026055 beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
-0x6033 026056 beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
-0x6034 026057 beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
-0x6035 026058 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
-0x6036 026059 beq lmp_dhkey_check ,send_lmp_dhkey_check 
-0x6037 026060 beq lmp_auto_rate ,send_lmp_auto_rate 
-0x6038 026061 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
-0x6039 026063 beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
-0x603a 026064 beq lmp_quality_of_service ,send_lmp_quality_of_service 
-0x603b 026065 beq lmp_test_activate ,send_lmp_test_activate 
-0x603c 026066 beq lmp_test_control ,send_lmp_test_control 
-:      026067 send_lmp_error:
-0x603d 026068 branch assert 
-0x603e 026069 rtn 
-:      026070 send_lmp_escape:
-0x603f 026071 beq lmp_ext_accepted ,send_lmpext_accepted 
-0x6040 026072 beq lmp_ext_features_res ,send_lmpext_features_res 
-0x6041 026073 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
-0x6042 026074 beq lmp_ext_features_req ,send_lmpext_features_req 
-0x6043 026075 beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
-0x6044 026076 beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
-0x6045 026077 beq lmp_io_cap_req ,send_lmp_io_cap_req 
-0x6046 026078 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
-0x6047 026079 beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
-0x6048 026080 beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
-0x6049 026081 branch assert 
-:      026087 send_lmp_accepted:
-0x604a 026088 force 2 ,pdata 
-0x604b 026089 call msg_send_lmp 
-0x604c 026090 fetch 1 ,mem_lmi_opcode 
-0x604d 026091 istore 1 ,contw 
-0x604e 026092 call send_lmp_follow 
-0x604f 026093 bpatchx patch30_3 ,mem_patch30 
-0x6050 026094 fetch 1 ,mem_lmi_opcode 
-0x6051 026095 beq lmp_in_rand ,send_lmp_accepted_inrand 
-0x6052 026096 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
-0x6053 026097 beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
-0x6054 026098 beq lmp_sniff_req ,send_lmp_accept_sniff_req 
-0x6055 026099 beq lmp_host_connection_req ,send_lmp_accepted_connection 
-0x6056 026100 beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
-0x6057 026101 beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
-0x6058 026102 rtn 
-:      026104 send_create_conn_start_l2cap_timer_sm:
-0x6059 026105 fetch 1 ,mem_conn_sm 
-0x605a 026106 rtn blank 
-0x605b 026107 jam conn_sm_wait_done ,mem_conn_sm 
-0x605c 026108 setarg timer_enpt_waite 
-0x605d 026109 arg enpt_delay_timer ,queue 
-0x605e 026110 branch timer_init 
-:      026112 send_lmp_accept_sniff_req:
-0x605f 026113 branch sniff_init 
-:      026114 send_lmp_not_accepted:
-0x6060 026115 force 3 ,pdata 
-0x6061 026116 call msg_send_lmp 
-0x6062 026117 fetch 1 ,mem_lmi_opcode 
-0x6063 026118 beq lmp_au_rand ,send_not_accept_aurand 
-0x6064 026119 istore 1 ,contw 
-0x6065 026120 fetch 1 ,mem_lmo_reason 
-0x6066 026121 istore 1 ,contw 
-0x6067 026122 branch send_lmp_follow 
-:      026124 send_not_accept_aurand:
-0x6068 026125 istore 1 ,contw 
-0x6069 026126 fetch 1 ,mem_lmo_reason 
-0x606a 026127 istore 1 ,contw 
-0x606b 026128 arg mem_sres_tid ,temp 
-0x606c 026129 branch special_tid_store 
-:      026131 send_lmpext_accepted:
-0x606d 026132 force 4 ,queue 
-0x606e 026133 call send_lmpext 
-0x606f 026134 setarg lmp_escape 
-0x6070 026135 istore 1 ,contw 
-0x6071 026136 fetch 1 ,mem_lmi_opcode 
-0x6072 026137 set0 7 ,pdata 
-0x6073 026138 istore 1 ,contw 
-0x6074 026139 fetch 1 ,mem_lmi_opcode 
-0x6075 026140 branch send_lmp_follow 
-:      026142 send_lmpext_not_accepted:
-0x6076 026143 force 5 ,queue 
-0x6077 026144 call send_lmpext 
-0x6078 026145 setarg lmp_escape 
-0x6079 026146 istore 1 ,contw 
-0x607a 026147 fetch 1 ,mem_lmi_opcode 
-0x607b 026148 set0 7 ,pdata 
-0x607c 026149 istore 1 ,contw 
-0x607d 026150 fetch 1 ,mem_lmo_reason 
-0x607e 026151 istore 1 ,contw 
-0x607f 026152 branch send_lmp_follow 
-:      026155 send_lmp_accepted_inrand:
-0x6080 026156 call clear_linkkey 
-0x6081 026157 call tid_check 
-0x6082 026158 rtn true 
-0x6083 026159 branch lmp_generate_key 
-:      026161 send_lmp_accepted_enc_mode:
-0x6084 026162 fetch 1 ,mem_op 
-0x6085 026163 bbit1 op_start_enc ,send_lmp_accepted_enc_start 
-0x6086 026164 rtnbit0 op_stop_enc 
-0x6087 026165 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
-0x6088 026166 set0 op_stop_enc ,pdata 
-0x6089 026167 call tid_reply 
-0x608a 026168 branch send_lmp_accepted_enc_exit 
-:      026169 send_lmp_accepted_enc_start:
-0x608b 026170 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
-0x608c 026171 set0 op_start_enc ,pdata 
-:      026172 send_lmp_accepted_enc_exit:
-0x608d 026173 store 1 ,mem_op 
-0x608e 026174 rtn 
-:      026176 send_lmp_accepted_enc_key:
-0x608f 026177 call check_localsm 
-0x6090 026178 branch lmp_start_encryption ,true 
-0x6091 026179 rtn 
-:      026181 send_lmp_accepted_connection:
-0x6092 026182 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
-0x6093 026184 fetch 1 ,mem_lmp_conn_state 
-0x6094 026185 set1 received_conn_req ,pdata 
-0x6095 026186 store 1 ,mem_lmp_conn_state 
-0x6096 026187 jam bt_evt_bb_connected ,mem_fifo_temp 
-0x6097 026188 branch ui_ipc_send_event 
-:      026191 send_lmp_accept_dhkey_check:
-0x6098 026192 rtn 
-:      026196 send_lmpext_features_res:
-0x6099 026197 force 12 ,queue 
-0x609a 026198 call send_lmpext 
-0x609b 026199 setarg 0x01 
-0x609c 026200 istore 1 ,contw 
-0x609d 026201 fetch 2 ,mem_lmpext_ssp_enable 
-0x609e 026202 istore 2 ,contw 
-0x609f 026203 setarg 0 
-0x60a0 026204 istore 3 ,contw 
-0x60a1 026205 setarg 0x00 
-0x60a2 026206 istore 4 ,contw 
-0x60a3 026207 branch send_lmp_reply 
-:      026208 send_lmpext_io_cap_res:
-0x60a4 026209 force 5 ,queue 
-0x60a5 026210 call send_lmpext 
-0x60a6 026211 fetch 3 ,mem_sp_iocap_local 
-0x60a7 026212 istore 3 ,contw 
-0x60a8 026213 call send_lmp_reply 
-0x60a9 026214 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
-0x60aa 026215 fetch 1 ,mem_sp_iocap_local 
-0x60ab 026216 beq display_yesno ,responder_iocap_display_yesno 
-0x60ac 026217 beq keyboard_only ,responder_iocap_keyboard_only 
-0x60ad 026218 beq no_input_no_output ,responder_iocap_no_input_no_output 
-0x60ae 026219 rtn 
-:      026221 responder_iocap_keyboard_only:
-0x60af 026222 fetch 1 ,mem_sp_iocap_remote 
-0x60b0 026223 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
-0x60b1 026224 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
-0x60b2 026225 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
-0x60b3 026226 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
-0x60b4 026227 rtn 
-:      026230 responder_iocap_display_yesno:
-0x60b5 026231 fetch 1 ,mem_sp_iocap_remote 
-0x60b6 026232 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
-0x60b7 026233 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
-0x60b8 026234 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
-0x60b9 026235 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
-0x60ba 026236 rtn 
-:      026239 responder_iocap_no_input_no_output:
-0x60bb 026240 fetch 1 ,mem_sp_iocap_remote 
-0x60bc 026241 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
-0x60bd 026242 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
-0x60be 026243 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
-0x60bf 026244 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
-0x60c0 026245 rtn 
-:      026247 responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
-:      026248 responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
-:      026249 responder_iocap_display_yesno_initiator_iocap_display_only:
-:      026250 responder_iocap_no_input_no_output_initiator_iocap_display_only:
-:      026251 responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
-:      026252 responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
-:      026253 responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
-:      026254 set_ssp_mode_justwork:
-0x60c1 026255 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
-0x60c2 026256 fetch 1 ,mem_classic_bt_flag 
-0x60c3 026257 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
-0x60c4 026258 rtn 
-:      026260 responder_iocap_display_yesno_initiator_iocap_display_yesno:
-:      026261 set_ssp_mode_numeric_comparison:
-0x60c5 026262 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
-0x60c6 026263 rtn 
-:      026265 responder_iocap_keyboard_only_initiator_iocap_display_yesno:
-:      026266 responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
-:      026267 responder_iocap_keyboard_only_initiator_iocap_display_only:
-:      026268 responder_iocap_display_yesno_initiator_iocap_keyboard_only:
-:      026269 set_ssp_mode_passkey:
-0x60c7 026270 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
-0x60c8 026271 rtn 
-:      026274 classic_bt_set_reject_justwork_flag:
-0x60c9 026275 arg flag_ssp_reject_justwork ,queue 
-0x60ca 026276 branch classic_bluetooth_set_flag 
-:      026278 classic_bt_clr_reject_justwork_flag:
-0x60cb 026279 arg flag_ssp_reject_justwork ,queue 
-0x60cc 026280 branch classic_bluetooth_clr_flag 
-:      026282 classic_bluetooth_set_flag:
-0x60cd 026283 fetch 1 ,mem_classic_bt_flag 
-0x60ce 026284 qset1 pdata 
-0x60cf 026285 store 1 ,mem_classic_bt_flag 
-0x60d0 026286 rtn 
-:      026288 classic_bluetooth_clr_flag:
-0x60d1 026289 fetch 1 ,mem_classic_bt_flag 
-0x60d2 026290 qset0 pdata 
-0x60d3 026291 store 1 ,mem_classic_bt_flag 
-0x60d4 026292 rtn 
-:      026295 send_lmp_io_cap_req:
-0x60d5 026296 force 5 ,queue 
-0x60d6 026297 call send_lmpext 
-0x60d7 026298 fetch 3 ,mem_sp_iocap_local 
-0x60d8 026299 istore 3 ,contw 
-0x60d9 026300 branch send_lmp_request 
-:      026303 send_lmpext_sniff_subrating_req:
-0x60da 026305 rtn 
-:      026306 send_lmpext_sniff_subrating_res:
-0x60db 026307 force 9 ,queue 
-0x60dc 026308 call send_lmpext 
-0x60dd 026309 fetch 1 ,mem_subsniff_rate 
-0x60de 026310 istore 1 ,contw 
-0x60df 026311 fetch 2 ,mem_subsniff_tcmax 
-0x60e0 026312 istore 2 ,contw 
-0x60e1 026313 fetch 4 ,mem_subsniff_instant 
-0x60e2 026314 istore 4 ,contw 
-0x60e3 026315 branch send_lmp_reply 
-:      026317 send_lmp_name_res:
-0x60e4 026318 force 17 ,pdata 
-0x60e5 026319 call msg_send_lmp 
-0x60e6 026320 fetch 1 ,mem_lmi_opcode 
-0x60e7 026321 copy pdata ,temp 
-0x60e8 026322 beq 0x00 ,send_lmp_name_res_offset_ok 
-0x60e9 026323 beq 0x0e ,send_lmp_name_res_offset_ok 
-0x60ea 026324 beq 0x1c ,send_lmp_name_res_offset_ok 
-0x60eb 026325 rtn 
-:      026326 send_lmp_name_res_offset_ok:
-0x60ec 026327 istore 1 ,contw 
-0x60ed 026328 fetch 1 ,mem_local_name_length 
-0x60ee 026329 istore 1 ,contw 
-0x60ef 026330 arg 14 ,loopcnt 
-0x60f0 026331 setarg mem_local_name 
-0x60f1 026332 iadd temp ,contr 
-0x60f2 026333 call memcpy 
-0x60f3 026334 branch send_lmp_reply 
-:      026337 send_lmp_timing_accuracy_res:
-0x60f4 026338 force 3 ,pdata 
-0x60f5 026339 call msg_send_lmp 
-0x60f6 026340 setarg 0x0114 
-0x60f7 026341 istore 2 ,contw 
-0x60f8 026342 branch send_lmp_reply 
-:      026344 send_lmp_clkoffset_res:
-0x60f9 026346 force 3 ,pdata 
-0x60fa 026347 call msg_send_lmp 
-0x60fb 026348 fetch 4 ,mem_clke_bt 
-0x60fc 026349 isub clkn_bt ,pdata 
-0x60fd 026350 branch send_lmp_clkoffset_res_master ,master 
-0x60fe 026351 sub pdata ,0 ,pdata 
-:      026352 send_lmp_clkoffset_res_master:
-0x60ff 026354 rshift2 pdata ,pdata 
-0x6100 026355 set0 15 ,pdata 
-0x6101 026356 istore 2 ,contw 
-0x6102 026357 branch send_lmp_reply 
-:      026359 send_lmp_version_res:
-0x6103 026360 force 6 ,pdata 
-0x6104 026361 call msg_send_lmp 
-0x6105 026362 fetch 5 ,mem_lmp_version 
-0x6106 026363 istore 5 ,contw 
-0x6107 026364 branch send_lmp_reply 
-:      026366 send_lmp_features_res:
-0x6108 026367 force 9 ,pdata 
-0x6109 026368 call msg_send_lmp 
-0x610a 026369 fetch 8 ,mem_features 
-0x610b 026370 istore 8 ,contw 
-0x610c 026371 branch send_lmp_reply 
-:      026378 send_lmpext_features_req:
-0x610d 026379 force 12 ,queue 
-0x610e 026380 call send_lmpext 
-0x610f 026381 setarg 0x01 
-0x6110 026382 istore 1 ,contw 
-0x6111 026383 fetch 2 ,mem_lmpext_ssp_enable 
-0x6112 026384 istore 2 ,contw 
-0x6113 026385 setarg 0 
-0x6114 026386 istore 3 ,contw 
-0x6115 026387 setarg 0x00 
-0x6116 026388 istore 4 ,contw 
-0x6117 026389 branch send_lmp_request 
-:      026391 send_lmpext_packet_type_table_req:
-0x6118 026392 force 3 ,queue 
-0x6119 026393 call send_lmpext 
-0x611a 026394 fetch 1 ,mem_ptt 
-0x611b 026395 istore 1 ,contw 
-0x611c 026396 disable user 
-0x611d 026397 call send_lmp_request 
-0x611e 026398 nrtn user 
-0x611f 026399 nrtn master 
-0x6120 026400 fetch 1 ,mem_afh_cfg 
-0x6121 026401 rtnbit0 afh_cfg_on 
-0x6122 026402 call afh_init 
-0x6123 026403 branch afh_open_all_channels 
-:      026406 ssp_enable:
-0x6124 026407 bpatchx patch30_4 ,mem_patch30 
-0x6125 026408 fetch 1 ,mem_features + 6 
-0x6126 026409 set1 param_featrue_ssp ,pdata 
-0x6127 026410 store 1 ,mem_features + 6 
-0x6128 026411 setarg param_lmpext_ssp_enable 
-0x6129 026412 store 2 ,mem_lmpext_ssp_enable 
-0x612a 026413 rtn 
-:      026415 ssp_disable:
-0x612b 026416 bpatchx patch30_5 ,mem_patch30 
-0x612c 026417 fetch 1 ,mem_features + 6 
-0x612d 026418 set0 param_featrue_ssp ,pdata 
-0x612e 026419 store 1 ,mem_features + 6 
-0x612f 026420 setarg 0 
-0x6130 026421 store 2 ,mem_lmpext_ssp_enable 
-0x6131 026422 rtn 
-:      026424 afh_init:
-0x6132 026425 jam 0x3 ,mem_afh_cfg 
-0x6133 026426 setarg 0 
-0x6134 026427 store 4 ,mem_afh_timer 
-0x6135 026428 arg mem_afh_map_lo ,contw 
-0x6136 026429 call afh_reset_map 
-0x6137 026430 arg mem_afh_map_new ,contw 
-0x6138 026431 call afh_reset_map 
-0x6139 026432 arg mem_afh_classify_channel_map ,contw 
-0x613a 026433 call afh_reset_map 
-0x613b 026434 branch afh_clear_error_counter 
-:      026435 afh_open_all_channels:
-0x613c 026436 arg mem_afh_map_new ,contw 
-0x613d 026437 call afh_reset_map 
-0x613e 026438 call afh_clear_error_counter 
-0x613f 026439 branch afh_set_send_flag 
-:      026442 afh_reset_map:
-0x6140 026443 setarg 0xffffff 
-0x6141 026444 istore 3 ,contw 
-0x6142 026445 istore 3 ,contw 
-0x6143 026446 istore 3 ,contw 
-0x6144 026447 setarg 0x7f 
-0x6145 026448 istore 1 ,contw 
-0x6146 026449 rtn 
-:      026450 afh_clear_error_counter:
-0x6147 026451 setarg 0 
-0x6148 026452 store 2 ,mem_afh_error_total 
-0x6149 026453 rtn 
-:      026454 afh_set_send_flag:
-0x614a 026455 fetch 1 ,mem_afh_cfg 
-0x614b 026456 set1 send_lmp_set_afh ,pdata 
-0x614c 026457 store 1 ,mem_afh_cfg 
-0x614d 026458 rtn 
-:      026461 send_lmpext_pause_encryption_req:
-0x614e 026462 force 2 ,queue 
-0x614f 026463 call send_lmpext 
-0x6150 026464 nbranch send_lmp_reply ,master 
-0x6151 026466 branch send_lmp_request 
-:      026470 send_lmp_detach:
-0x6152 026471 force 2 ,pdata 
-0x6153 026472 call msg_send_lmp 
-0x6154 026473 fetch 1 ,mem_disconn_reason_send 
-0x6155 026474 istore 1 ,contw 
-0x6156 026475 call send_lmp_request 
-:      026476 prepare_disconnect:
-0x6157 026477 fetch 1 ,mem_op 
-0x6158 026478 set1 op_disconn ,pdata 
-0x6159 026479 store 1 ,mem_op 
-0x615a 026480 jam 50 ,mem_conn_timer 
-0x615b 026481 rtn 
-:      026484 send_lmp_no_payload:
-0x615c 026485 force 1 ,pdata 
-0x615d 026486 call msg_send_lmp 
-0x615e 026487 branch send_lmp_request 
-:      026488 send_lmp_nopayload_reply:
-0x615f 026489 force 1 ,pdata 
-0x6160 026490 call msg_send_lmp 
-0x6161 026491 branch send_lmp_reply 
-:      026494 send_lmp_encryption_mode_req:
-0x6162 026495 force 2 ,pdata 
-0x6163 026496 call msg_send_lmp 
-0x6164 026497 fetch 1 ,mem_state_map 
-0x6165 026498 isolate0 smap_encryption ,pdata 
-0x6166 026499 setflag true ,0 ,pdata 
-0x6167 026500 and_into 1 ,pdata 
-0x6168 026501 istore 1 ,contw 
-0x6169 026502 branch send_lmp_request 
-:      026505 send_lmp_superto:
-0x616a 026506 force 3 ,pdata 
-0x616b 026507 call msg_send_lmp 
-0x616c 026508 fetch 2 ,mem_supervision_to 
-0x616d 026509 istore 2 ,contw 
-0x616e 026510 branch send_lmp_request 
-:      026512 send_lmp_name_req:
-0x616f 026513 jam 250 ,mem_conn_timer 
-0x6170 026514 force 2 ,pdata 
-0x6171 026515 call msg_send_lmp 
-0x6172 026516 fetch 1 ,mem_name_offset 
-0x6173 026517 istore 1 ,contw 
-0x6174 026518 branch send_lmp_request 
-:      026520 send_lmp_test_control:
-0x6175 026521 force 10 ,pdata 
-0x6176 026522 call msg_send_lmp 
-0x6177 026523 arg mem_temp_payload ,contr 
-0x6178 026524 force 9 ,loopcnt 
-:      026525 send_lmp_test_control_loop:
-0x6179 026526 ifetch 1 ,contr 
-0x617a 026527 xor_into 0x55 ,pdata 
-0x617b 026528 istore 1 ,contw 
-0x617c 026529 loop send_lmp_test_control_loop 
-0x617d 026530 branch send_lmp_request 
-:      026532 send_lmp_quality_of_service_req:
-0x617e 026533 branch send_lmp_request 
-:      026534 send_lmp_unit_key:
-0x617f 026535 branch send_lmp_request 
-:      026537 send_lmp_slot_offset:
-0x6180 026538 rtn master 
-0x6181 026539 call calc_slot_offset 
-0x6182 026540 force 9 ,pdata 
-0x6183 026541 call msg_send_lmp 
-0x6184 026542 fetch 2 ,mem_slot_offset 
-0x6185 026543 istore 2 ,contw 
-0x6186 026544 fetch 3 ,mem_lap 
-0x6187 026545 istore 3 ,contw 
-0x6188 026546 fetch 1 ,mem_uap 
-0x6189 026547 istore 1 ,contw 
-0x618a 026548 fetch 2 ,mem_nap 
-0x618b 026549 istore 2 ,contw 
-0x618c 026550 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
-0x618d 026551 set0 mark_switch_initiated ,mark 
-0x618e 026552 call send_lmp_request 
-0x618f 026553 jam lmp_switch_req ,mem_lmo_opcode2 
-0x6190 026554 rtn 
-:      026555 send_lmp_slot_offset_reply:
-0x6191 026556 call send_lmp_reply 
-0x6192 026557 jam lmp_accepted ,mem_lmo_opcode2 
-0x6193 026558 jam lmp_switch_req ,mem_lmi_opcode2 
-0x6194 026559 rtn 
-:      026561 send_lmp_switch_req:
-0x6195 026562 arg 0x200 ,temp 
-0x6196 026563 branch switch_on_native ,master 
-0x6197 026564 deposit clke_bt 
-0x6198 026565 branch switch_slack 
-:      026566 switch_on_native:
-0x6199 026567 deposit clkn_bt 
-:      026568 switch_slack:
-0x619a 026569 deposit bt_clk 
-0x619b 026570 iadd temp ,pdata 
-0x619c 026571 and_into 0x1fc ,pdata 
-0x619d 026572 store 4 ,mem_sniff_anchor 
-0x619e 026573 force 5 ,pdata 
-0x619f 026574 call msg_send_lmp 
-0x61a0 026575 fetch 4 ,mem_sniff_anchor 
-0x61a1 026576 rshift pdata ,pdata 
-0x61a2 026577 istore 4 ,contw 
-0x61a3 026578 branch send_lmp_request 
-:      026580 send_lmp_sniff_req:
-0x61a4 026581 force 10 ,pdata 
-0x61a5 026582 call msg_send_lmp 
-0x61a6 026583 arg mem_sniff_payload ,contr 
-0x61a7 026584 ifetch 9 ,contr 
-0x61a8 026585 istore 9 ,contw 
-0x61a9 026586 branch send_lmp_request 
-:      026589 send_lmp_timing_accuracy_req:
-0x61aa 026591 force 3 ,pdata 
-0x61ab 026592 call msg_send_lmp 
-0x61ac 026593 setarg 0x0114 
-0x61ad 026594 istore 2 ,contw 
-0x61ae 026595 branch send_lmp_request 
-:      026597 send_lmp_unsniff_req:
-0x61af 026599 force 1 ,pdata 
-0x61b0 026600 call msg_send_lmp 
-0x61b1 026609 branch send_lmp_request 
-:      026612 send_lmp_max_slot:
-0x61b2 026613 force 2 ,pdata 
-0x61b3 026614 call msg_send_lmp 
-0x61b4 026615 fetch 1 ,mem_max_slot 
-0x61b5 026616 istore 1 ,contw 
-0x61b6 026617 branch send_lmp_request 
-:      026620 send_lmp_max_slot_req:
-0x61b7 026621 force 2 ,pdata 
-0x61b8 026622 call msg_send_lmp 
-0x61b9 026623 setarg 0x05 
-0x61ba 026624 istore 1 ,contw 
-0x61bb 026625 branch send_lmp_request 
-:      026628 send_lmp_inc_power:
-0x61bc 026629 force 2 ,pdata 
-0x61bd 026630 call msg_send_lmp 
-0x61be 026631 setarg 0x00 
-0x61bf 026632 istore 1 ,contw 
-0x61c0 026633 branch send_lmp_request 
-:      026636 send_lmp_setup_complete_by_module:
-0x61c1 026637 jam lmp_max_slot_req ,mem_lmo_opcode2 
-0x61c2 026638 rtn 
-:      026639 send_lmp_setup_complete:
-0x61c3 026640 fetch 1 ,mem_device_option 
-0x61c4 026641 sub pdata ,dvc_op_module ,null 
-0x61c5 026642 call send_lmp_setup_complete_by_module ,zero 
-0x61c6 026643 fetch 1 ,mem_state 
-0x61c7 026644 set1 state_conn_comp ,pdata 
-0x61c8 026645 store 1 ,mem_state 
-0x61c9 026646 copy clkn_bt ,pdata 
-0x61ca 026647 store 4 ,mem_aurand_send_delay_time 
-0x61cb 026648 fetch 1 ,mem_lmp_conn_state 
-0x61cc 026649 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
-0x61cd 026650 set1 sent_setup_complete ,pdata 
-0x61ce 026651 store 1 ,mem_lmp_conn_state 
-0x61cf 026652 jam bt_evt_setup_complete ,mem_fifo_temp 
-0x61d0 026653 call ui_ipc_send_event 
-0x61d1 026654 force 1 ,pdata 
-0x61d2 026655 call msg_send_lmp 
-0x61d3 026656 branch send_lmp_request 
-:      026657 send_lmp_setup_complete_has_sent:
-0x61d4 026658 jam 0 ,mem_lmp_to_send 
-0x61d5 026659 rtn 
-:      026661 send_lmp_version_req:
-0x61d6 026662 force 6 ,pdata 
-0x61d7 026663 call msg_send_lmp 
-0x61d8 026664 fetch 5 ,mem_lmp_version 
-0x61d9 026665 istore 5 ,contw 
-0x61da 026666 branch send_lmp_request 
-:      026668 send_lmp_features_req:
-0x61db 026669 force 9 ,pdata 
-0x61dc 026670 call msg_send_lmp 
-0x61dd 026671 fetch 8 ,mem_features 
-0x61de 026672 istore 8 ,contw 
-0x61df 026673 branch send_lmp_request 
-:      026675 sp_master_send_io_cap_get:
-0x61e0 026676 jam sp_flag_commit ,mem_master_sp_flag 
-0x61e1 026677 fetch 1 ,mem_sp_local_key_invalid 
-0x61e2 026678 rtnne sp_key_valid 
-0x61e3 026679 jam sp_master_stat_start_done ,mem_master_sp_state 
-0x61e4 026680 rtn 
-:      026682 sp_master_send_io_cap_send:
-0x61e5 026683 call tid_initiate 
-0x61e6 026684 jam lmp_io_cap_req ,mem_lmo_opcode2 
-0x61e7 026685 jam sp_stat_key_send ,mem_master_sp_state 
-0x61e8 026686 rtn 
-:      026689 sp_master_send_lmp_encapsulated_header:
-0x61e9 026690 call tid_initiate 
-0x61ea 026691 jam lmp_encapsulated_header ,mem_lmo_opcode2 
-0x61eb 026692 jam sp_stat_random_send ,mem_master_sp_state 
-0x61ec 026693 rtn 
-:      026695 sp_master_commitment_compare:
-0x61ed 026696 arg mem_sp_calc_result_high ,rega 
-0x61ee 026697 arg mem_sp_confirm_remote ,regb 
-0x61ef 026698 arg 16 ,loopcnt 
-0x61f0 026699 call string_compare 
-0x61f1 026700 branch sp_master_commitment_compare_success ,zero 
-0x61f2 026701 jam sp_stat_null ,mem_master_sp_state 
-0x61f3 026702 call master_clear_mem_master_sp_flag 
-0x61f4 026703 jam pdu_not_allowed ,mem_lmo_reason2 
-0x61f5 026704 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
-0x61f6 026705 branch reject_lmp_packet 
-:      026706 sp_master_commitment_compare_success:
-0x61f7 026707 jam sp_stat_confirm_calc ,mem_master_sp_state 
-0x61f8 026708 call master_set_mem_master_sp_flag 
-0x61f9 026709 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
-0x61fa 026710 branch accept_lmp_msg 
-:      026714 sp_master_send_lmp_simple_pairing_number:
-0x61fb 026715 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
-0x61fc 026716 rtn 
-:      026720 sp_send_lmp_encapsulated_header:
-0x61fd 026723 jam lmp_encapsulated_header ,mem_lmo_opcode2 
-0x61fe 026725 rtn 
-:      026731 send_lmp_encapsulated_header:
-0x61ff 026732 jam 0 ,mem_sp_local_key_send_count 
-0x6200 026733 force 4 ,pdata 
-0x6201 026734 call msg_send_lmp 
-0x6202 026735 force encapsulated_major_type_p192 ,pdata 
-0x6203 026736 istore 1 ,contw 
-0x6204 026737 force encapsulated_minor_type_p192 ,pdata 
-0x6205 026738 istore 1 ,contw 
-0x6206 026739 force encapsulated_len_p192 ,pdata 
-0x6207 026740 istore 1 ,contw 
-0x6208 026741 call check_localsm 
-0x6209 026742 branch send_lmp_request ,true 
-0x620a 026743 branch send_lmp_reply 
-:      026745 send_lmp_encapsulated_payload:
-0x620b 026747 force 17 ,pdata 
-0x620c 026748 call msg_send_lmp 
-0x620d 026749 fetch 1 ,mem_sp_local_key_send_count 
-0x620e 026750 arg mem_sp_pubkey_local ,contr 
-0x620f 026751 iadd contr ,contr 
-0x6210 026752 ifetch 8 ,contr 
-0x6211 026753 istore 8 ,contw 
-0x6212 026754 ifetch 8 ,contr 
-0x6213 026755 istore 8 ,contw 
-0x6214 026756 fetch 1 ,mem_sp_local_key_send_count 
-0x6215 026757 increase 16 ,pdata 
-0x6216 026758 store 1 ,mem_sp_local_key_send_count 
-0x6217 026759 call check_localsm 
-0x6218 026760 branch send_lmp_request ,true 
-0x6219 026761 branch send_lmp_reply 
-:      026764 sp_send_lmp_simple_pairing_comfirm:
-0x621a 026765 jam sp_stat_random_recv ,mem_sp_state 
-0x621b 026766 jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
-0x621c 026767 rtn 
-:      026768 send_lmp_simple_pairing_comfirm:
-0x621d 026771 force 17 ,pdata 
-0x621e 026772 call msg_send_lmp 
-0x621f 026773 arg mem_sp_calc_result_high ,contr 
-0x6220 026774 ifetch 8 ,contr 
-0x6221 026775 istore 8 ,contw 
-0x6222 026776 ifetch 8 ,contr 
-0x6223 026777 istore 8 ,contw 
-0x6224 026778 branch send_lmp_reply 
-:      026780 sp_send_lmp_simple_pairing_number:
-0x6225 026781 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
-0x6226 026782 rtn 
-:      026784 send_lmp_simple_pairing_number:
-0x6227 026786 call check_localsm 
-0x6228 026787 call sp_local_random_key_generator ,true 
-0x6229 026788 force 17 ,pdata 
-0x622a 026789 call msg_send_lmp 
-0x622b 026790 arg mem_sp_random_local ,contr 
-0x622c 026791 ifetch 8 ,contr 
-0x622d 026792 istore 8 ,contw 
-0x622e 026793 ifetch 8 ,contr 
-0x622f 026794 istore 8 ,contw 
-0x6230 026795 call check_localsm 
-0x6231 026796 nbranch send_lmp_reply ,true 
-0x6232 026797 branch send_lmp_request ,true 
-:      026799 master_sp_sm_end:
-0x6233 026801 jam sp_stat_done ,mem_master_sp_state 
-:      026802 sp_aurand_send:
-0x6234 026803 call tid_initiate 
-0x6235 026804 jam lmp_au_rand ,mem_lmo_opcode2 
-0x6236 026805 call check_localsm_master 
-0x6237 026806 branch sp_master_key_prarm_push ,true 
-0x6238 026807 branch sp_link_key_prarm_push 
-:      026808 master_sp_send_lmp_dhkey_check:
-0x6239 026809 call tid_reply 
-:      026810 sp_send_lmp_dhkey_check:
-0x623a 026811 jam lmp_dhkey_check ,mem_lmo_opcode2 
-0x623b 026812 rtn 
-:      026813 send_lmp_dhkey_check:
-0x623c 026815 force 17 ,pdata 
-0x623d 026816 call msg_send_lmp 
-0x623e 026817 arg mem_sp_calc_result_high ,contr 
-0x623f 026818 ifetch 8 ,contr 
-0x6240 026819 istore 8 ,contw 
-0x6241 026820 ifetch 8 ,contr 
-0x6242 026821 istore 8 ,contw 
-0x6243 026822 call check_localsm 
-0x6244 026823 nbranch send_lmp_reply ,true 
-0x6245 026824 branch send_lmp_request ,true 
-:      026826 send_lmp_enc_key_size_mask_res:
-0x6246 026827 force 3 ,pdata 
-0x6247 026828 call msg_send_lmp 
-0x6248 026829 setarg 0xfffe 
-0x6249 026830 istore 2 ,contw 
-0x624a 026831 branch send_lmp_reply 
-:      026833 send_lmp_auto_rate:
-0x624b 026834 branch send_lmp_request 
-:      026835 send_lmp_clkoffset_req:
-0x624c 026836 branch send_lmp_request 
-:      026837 send_lmp_quality_of_service:
-0x624d 026838 branch send_lmp_request 
-:      026839 send_lmp_test_activate:
-0x624e 026840 branch send_lmp_request 
-:      026845 send_lmp_comb_key:
-0x624f 026846 call generate_random_number 
-0x6250 026847 arg mem_lap ,rega 
-0x6251 026848 call generate_linkkey 
-0x6252 026849 force 17 ,pdata 
-0x6253 026850 call msg_send_lmp 
-0x6254 026851 arg mem_kinit ,rega 
-0x6255 026852 arg mem_random_number ,regb 
-0x6256 026853 call xor16 
-0x6257 026854 nbranch send_lmp_follow ,master 
-0x6258 026855 branch send_lmp_tid 
-:      026857 send_lmp_inrand:
-0x6259 026858 call generate_random_number 
-0x625a 026859 arg mem_plap ,rega 
-0x625b 026860 call generate_kinit 
-:      026861 send_lmp_rand:
-0x625c 026862 force 17 ,pdata 
-0x625d 026863 call msg_send_lmp 
-0x625e 026864 arg mem_random_number ,contr 
-0x625f 026865 call memcpy16 
-0x6260 026866 fetch 1 ,mem_conn_sm 
-0x6261 026867 beq conn_sm_auth_wait ,send_lmp_request 
-0x6262 026868 beq conn_sm_pairing_wait ,send_lmp_request 
-0x6263 026869 branch send_lmp_tid 
-:      026871 send_lmp_aurand:
-0x6264 026872 fetch 1 ,mem_pairing_auth 
-0x6265 026873 branch send_lmp_aurand_notpairing ,blank 
-0x6266 026874 call check_localsm 
-0x6267 026875 call tid_initiate ,true 
-0x6268 026876 ncall tid_reply ,true 
-0x6269 026877 branch send_lmp_aurand_common 
-:      026878 send_lmp_aurand_notpairing:
-0x626a 026879 call tid_initiate 
-:      026880 send_lmp_aurand_common:
-0x626b 026881 call generate_random_number 
-0x626c 026882 branch send_lmp_rand 
-:      026884 send_lmp_sres:
-0x626d 026885 arg mem_lap ,rega 
-0x626e 026886 call function_e1 
-0x626f 026887 force 5 ,pdata 
-0x6270 026888 call msg_send_lmp 
-0x6271 026889 fetch 4 ,mem_input_store 
-0x6272 026890 istore 4 ,contw 
-0x6273 026891 arg mem_sres_tid ,temp 
-0x6274 026892 call special_tid_store 
-0x6275 026893 call copy_aco 
-0x6276 026894 call check_localsm 
-0x6277 026895 branch send_lmp_sres_master ,true 
-0x6278 026896 jam done_encryp ,mem_wait_encryption 
-0x6279 026897 fetch 1 ,mem_pairing_auth 
-0x627a 026898 rtn blank 
-0x627b 026899 jam lmp_au_rand ,mem_lmo_opcode2 
-:      026900 send_lmp_sres_master:
-0x627c 026901 fetch 1 ,mem_link_key_exists 
-0x627d 026902 rtn blank 
-:      026903 send_lmp_sres_startenc:
-0x627e 026904 call check_localsm 
-0x627f 026905 nbranch send_lmp_sres_startenc_slave ,true 
-0x6280 026906 fetch 1 ,mem_auth_enable 
-0x6281 026907 rtn blank 
-0x6282 026908 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
-0x6283 026909 rtn 
-:      026910 send_lmp_sres_startenc_slave:
-0x6284 026911 rtnmark0 mark_slave_in_rand_accepted 
-0x6285 026912 set0 mark_slave_in_rand_accepted ,mark 
-0x6286 026913 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
-0x6287 026914 rtn 
-:      026918 send_lmp_start_encryption:
-0x6288 026919 call generate_random_number 
-0x6289 026920 call function_e3 
-0x628a 026921 force 17 ,pdata 
-0x628b 026922 call msg_send_lmp 
-0x628c 026923 arg mem_random_number ,contr 
-0x628d 026924 call memcpy16 
-0x628e 026925 branch send_lmp_tid 
-:      026927 send_lmp_stop_encryption_req:
-0x628f 026928 force 1 ,pdata 
-0x6290 026929 call msg_send_lmp 
-0x6291 026930 branch send_lmp_tid 
-:      026932 send_lmp_encryption_key_size_req:
-0x6292 026933 force 2 ,pdata 
-0x6293 026934 call msg_send_lmp 
-0x6294 026935 force 16 ,pdata 
-0x6295 026936 istore 1 ,contw 
-0x6296 026937 store 1 ,mem_key_size 
-0x6297 026938 branch send_lmp_tid 
-:      026940 msg_send_lmp:
-0x6298 026942 lshift3 pdata ,pdata 
-0x6299 026943 or_into 0x07 ,pdata 
-0x629a 026944 store 1 ,mem_lmo_header_length 
-0x629b 026945 arg 17 ,loopcnt 
-0x629c 026946 arg mem_lmo_payload ,contw 
-0x629d 026947 call clear_mem 
-0x629e 026948 arg mem_lmo_payload ,contw 
-0x629f 026949 rtn 
-:      026951 send_lmpext:
-0x62a0 026952 and pdata ,0x7f ,rega 
-0x62a1 026953 jam lmp_escape ,mem_lmp_to_send 
-0x62a2 026954 deposit queue 
-0x62a3 026955 call msg_send_lmp 
-0x62a4 026956 deposit rega 
-0x62a5 026957 istore 1 ,contw 
-0x62a6 026958 rtn 
-:      026960 send_lmp_follow:
-0x62a7 026961 fetch 1 ,mem_lmp_to_send 
-0x62a8 026962 lshift pdata ,pdata 
-0x62a9 026963 fetcht 1 ,mem_state_map 
-0x62aa 026964 isolate1 smap_lmptid ,temp 
-0x62ab 026965 setflag true ,0 ,pdata 
-0x62ac 026966 branch send_lmp_exit 
-:      026969 send_lmp_tid:
-0x62ad 026970 fetcht 1 ,mem_state_map 
-0x62ae 026971 and_into 1 ,temp 
-0x62af 026972 branch send_lmp_end 
-:      026974 send_lmp_reply:
-0x62b0 026975 force 0 ,temp 
-0x62b1 026976 branch send_lmp_end 
-:      026978 send_lmp_request:
-0x62b2 026979 force 1 ,temp 
-:      026980 send_lmp_end:
-0x62b3 026981 fetch 1 ,mem_lmp_to_send 
-0x62b4 026982 lshift pdata ,pdata 
-0x62b5 026983 setflag master ,0 ,pdata 
-0x62b6 026984 ixor temp ,pdata 
-:      026985 send_lmp_exit:
-0x62b7 026986 store 1 ,mem_lmo_header_opcode 
-0x62b8 026987 jam 0 ,mem_lmp_to_send 
-0x62b9 026988 call lmo_fifo_process_lmo0empty 
-0x62ba 026989 enable user 
-0x62bb 026990 rtn 
-:      026993 lmo_fifo_check:
-0x62bc 026994 fetch 1 ,mem_lmo_opcode2 
-0x62bd 026995 rtn blank 
-0x62be 026996 call lmo_fifo_process 
-0x62bf 026997 fetch 1 ,mem_lmo_opcode2 
-0x62c0 026998 rtn 
-:      027000 lmo_fifo_process:
-0x62c1 027001 bpatchx patch30_6 ,mem_patch30 
-0x62c2 027002 fetch 1 ,mem_lmp_to_send 
-0x62c3 027003 branch lmo_fifo_process_lmo0empty ,blank 
-0x62c4 027004 fetch 1 ,mem_lmo_opcode1 
-0x62c5 027005 nrtn blank 
-0x62c6 027006 branch lmo_fifo_process_lmo2to1 
-:      027007 lmo_fifo_process_lmo0empty:
-0x62c7 027008 fetch 1 ,mem_lmo_opcode1 
-0x62c8 027009 branch lmo_fifo_process_lmo1_empty ,blank 
-0x62c9 027010 fetch 3 ,mem_lmo_opcode1 
-0x62ca 027011 store 3 ,mem_lmp_to_send 
-0x62cb 027012 fetcht 1 ,mem_lmo_tid1 
-0x62cc 027013 fetch 1 ,mem_state_map 
-0x62cd 027014 set0 smap_lmptid ,pdata 
-0x62ce 027015 ior temp ,pdata 
-0x62cf 027016 store 1 ,mem_state_map 
-0x62d0 027017 jam 0 ,mem_lmo_opcode1 
-:      027018 lmo_fifo_process_lmo2to1:
-0x62d1 027019 fetch 1 ,mem_lmo_opcode2 
-0x62d2 027020 rtn blank 
-0x62d3 027021 fetch 4 ,mem_lmo_opcode2 
-0x62d4 027022 store 4 ,mem_lmo_opcode1 
-0x62d5 027023 jam 0 ,mem_lmo_opcode2 
-0x62d6 027024 rtn 
-:      027025 lmo_fifo_process_lmo1_empty:
-0x62d7 027026 fetch 1 ,mem_lmo_opcode2 
-0x62d8 027027 rtn blank 
-0x62d9 027028 fetch 3 ,mem_lmo_opcode2 
-0x62da 027029 store 3 ,mem_lmp_to_send 
-0x62db 027030 fetcht 1 ,mem_lmo_tid2 
-0x62dc 027031 fetch 1 ,mem_state_map 
-0x62dd 027032 set0 smap_lmptid ,pdata 
-0x62de 027033 ior temp ,pdata 
-0x62df 027034 store 1 ,mem_state_map 
-0x62e0 027035 jam 0 ,mem_lmo_opcode2 
-0x62e1 027036 rtn 
-:      027039 special_tid_store:
-0x62e2 027040 bpatchx patch30_7 ,mem_patch30 
-0x62e3 027041 fetch 1 ,mem_state_map 
-0x62e4 027042 copy pdata ,regc 
-0x62e5 027043 ifetch 1 ,temp 
-0x62e6 027044 call pop_tid_follow 
-0x62e7 027045 call send_lmp_follow 
-0x62e8 027046 copy regc ,pdata 
-0x62e9 027047 store 1 ,mem_state_map 
-0x62ea 027048 rtn 
-:      027050 tid_reply:
-0x62eb 027051 fetcht 1 ,mem_state_map 
-0x62ec 027052 set0 smap_lmptidinit ,temp 
-0x62ed 027053 storet 1 ,mem_state_map 
-0x62ee 027054 rtn 
-:      027056 tid_initiate:
-0x62ef 027057 fetcht 1 ,mem_state_map 
-0x62f0 027058 set1 smap_lmptidinit ,temp 
-0x62f1 027059 storet 1 ,mem_state_map 
-0x62f2 027060 rtn 
-:      027063 tid_check:
-0x62f3 027064 nsetflag master ,smap_lmptid ,pdata 
-0x62f4 027065 fetcht 1 ,mem_state_map 
-0x62f5 027066 ixor temp ,pdata 
-0x62f6 027067 isolate1 smap_lmptid ,pdata 
-0x62f7 027068 rtn 
-:      027071 tid_set_reply:
-0x62f8 027072 fetch 1 ,mem_state_map 
-0x62f9 027073 setflag master ,smap_lmptid ,pdata 
-0x62fa 027074 store 1 ,mem_state_map 
-0x62fb 027075 rtn 
-:      027078 check_localsm:
-0x62fc 027079 fetch 1 ,mem_sp_localsm 
-0x62fd 027080 compare local_statemachine ,pdata ,0x7f 
-0x62fe 027081 rtn 
-:      027082 setlocalsm_master:
-0x62ff 027083 fetch 1 ,mem_sp_localsm 
-0x6300 027084 set1 7 ,pdata 
-0x6301 027085 store 1 ,mem_sp_localsm 
-0x6302 027086 rtn 
-:      027087 setlocalsm_slave:
-0x6303 027088 fetch 1 ,mem_sp_localsm 
-0x6304 027089 set0 7 ,pdata 
-0x6305 027090 store 1 ,mem_sp_localsm 
-0x6306 027091 rtn 
-:      027092 check_localsm_master:
-0x6307 027093 fetch 1 ,mem_sp_localsm 
-0x6308 027094 isolate1 7 ,pdata 
-0x6309 027095 store 1 ,mem_sp_localsm 
-0x630a 027096 rtn 
-:      027098 generate_random_number:
-0x630b 027100 arg mem_random_number ,contw 
-:      027101 generate_random:
-0x630c 027102 force 16 ,loopcnt 
-:      027103 generate_random_another:
-:      027104 generate_random_loop:
-0x630d 027105 random pdata 
-0x630e 027106 istore 1 ,contw 
-0x630f 027107 loop generate_random_another 
-0x6310 027108 rtn 
-:      027110 generate_linkkey:
-0x6311 027111 call function_e21 
-0x6312 027112 arg mem_link_key ,rega 
-0x6313 027113 arg mem_input_store ,regb 
-0x6314 027114 ifetch 8 ,rega 
-0x6315 027115 fetcht 1 ,mem_state 
-0x6316 027116 nsetflag blank ,state_combkey ,temp 
-0x6317 027117 storet 1 ,mem_state 
-0x6318 027118 copy rega ,contw 
-0x6319 027119 call xor16 
-0x631a 027120 branch generate_linkkey_continue 
-:      027126 process_conn_sm:
-0x631b 027128 bpatchx patch31_0 ,mem_patch31 
-0x631c 027130 call lmo_fifo_check 
-0x631d 027131 nrtn blank 
-:      027132 process_conn_sm_continue:
-0x631e 027133 fetch 1 ,mem_conn_sm 
-0x631f 027134 rtn blank 
-0x6320 027138 beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
-0x6321 027139 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
-0x6322 027140 beq conn_sm_send_features ,host_create_conn_send_features 
-0x6323 027141 beq conn_sm_wait_features_res ,host_create_conn_waiting 
-0x6324 027142 beq conn_sm_send_switch ,host_create_conn_send_switch 
-0x6325 027143 beq conn_sm_auth_pair ,host_create_conn_auth_pair 
-0x6326 027144 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
-0x6327 027145 beq conn_sm_encrypt ,host_create_conn_encrypt 
-0x6328 027146 beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
-0x6329 027147 beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
-0x632a 027148 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
-0x632b 027149 beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
-0x632c 027150 beq conn_sm_detach_delay ,host_create_conn_master_detach 
-0x632d 027151 beq conn_sm_send_version ,host_create_conn_send_version 
-0x632e 027152 beq conn_sm_wait_version ,host_create_conn_waiting 
-0x632f 027153 beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
-0x6330 027154 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
-0x6331 027155 beq conn_sm_wait_features_ext ,host_create_conn_waiting 
-0x6332 027156 beq conn_sm_pairing ,host_create_conn_pairing 
-0x6333 027157 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
-0x6334 027158 beq conn_sm_auth ,host_create_conn_auth 
-0x6335 027159 beq conn_sm_auth_wait ,host_create_conn_auth_wait 
-0x6336 027160 beq conn_sm_done ,host_create_conn_done 
-0x6337 027161 beq conn_sm_wait_done ,host_create_conn_done_wait 
-0x6338 027162 jam conn_sm_standby ,mem_conn_sm 
-0x6339 027164 rtn 
-:      027165 host_create_conn_done:
-0x633a 027166 fetch 1 ,mem_lmp_conn_state 
-0x633b 027167 rtnbit0 received_setup_complete 
-0x633c 027168 rtnbit0 sent_setup_complete 
-0x633d 027169 jam conn_sm_standby ,mem_conn_sm 
-0x633e 027170 call host_conn_judge_encrypt 
-0x633f 027171 branch scheduler_start_upper_sm 
-:      027173 host_conn_judge_encrypt:
-0x6340 027174 fetch 1 ,mem_connection_options 
-0x6341 027175 rtnbit0 connection_encrypt 
-0x6342 027176 jam conn_sm_encrypt_wait ,mem_conn_sm 
-0x6343 027177 rtn 
-:      027179 host_create_conn_done_wait:
-0x6344 027180 arg enpt_delay_timer ,queue 
-0x6345 027181 call timer_check 
-0x6346 027182 nrtn blank 
-0x6347 027183 jam conn_sm_done ,mem_conn_sm 
-0x6348 027184 rtn 
-:      027186 host_create_conn_auth:
-0x6349 027187 fetch 1 ,mem_connection_options 
-0x634a 027188 set0 connection_auth ,pdata 
-0x634b 027189 store 1 ,mem_connection_options 
-0x634c 027190 jam conn_sm_auth_wait ,mem_conn_sm 
-0x634d 027191 jam lmp_au_rand ,mem_lmo_opcode2 
-0x634e 027192 rtn 
-:      027193 host_create_conn_auth_wait:
-0x634f 027194 rtn 
-:      027195 host_create_conn_pairing:
-0x6350 027196 fetch 1 ,mem_pincode_state 
-0x6351 027197 rtnne pincode_state_pincode_ready 
-0x6352 027198 call host_auth 
-0x6353 027199 jam conn_sm_pairing_wait ,mem_conn_sm 
-0x6354 027200 rtn 
-:      027202 host_create_conn_pairing_wait:
-0x6355 027203 rtn 
-:      027204 host_creat_conn_send_feat_ext:
-0x6356 027205 jam conn_sm_wait_features_ext ,mem_conn_sm 
-0x6357 027206 jam lmp_ext_features_req ,mem_lmo_opcode2 
-0x6358 027207 rtn 
-:      027208 host_create_conn_send_version:
-0x6359 027209 jam conn_sm_wait_version ,mem_conn_sm 
-0x635a 027210 jam lmp_version_req ,mem_lmo_opcode2 
-0x635b 027211 rtn 
-:      027213 host_creat_conn_wait_switch:
-0x635c 027214 fetch 1 ,mem_switch_flag 
-0x635d 027215 rtneq switch_flag_init 
-0x635e 027216 beq switch_flag_accept ,host_create_conn_switch_accept 
-0x635f 027217 arg switch_wait_timer ,queue 
-0x6360 027218 call timer_check 
-0x6361 027219 nrtn blank 
-0x6362 027220 jam switch_flag_init ,mem_switch_flag 
-0x6363 027221 branch host_create_conn_switch 
-:      027222 host_create_conn_switch_accept:
-0x6364 027223 rtn master 
-0x6365 027224 branch host_create_conn_auth_pair 
-:      027226 host_create_conn_send_features:
-0x6366 027227 jam conn_sm_wait_features_res ,mem_conn_sm 
-0x6367 027228 jam lmp_features_req ,mem_lmo_opcode2 
-0x6368 027229 rtn 
-:      027230 host_create_conn_send_switch:
-0x6369 027231 jam lmp_switch_req ,mem_lmo_opcode2 
-0x636a 027232 set1 mark_switch_initiated ,mark 
-0x636b 027233 jam conn_sm_wait_conn_accept ,mem_conn_sm 
-0x636c 027234 setarg 0x1ff 
-0x636d 027235 store 2 ,mem_soft_timer 
-0x636e 027236 rtn 
-:      027237 host_create_conn_send_conn_req:
-0x636f 027238 jam conn_sm_wait_conn_accept ,mem_conn_sm 
-0x6370 027239 jam 0xff ,mem_soft_timer 
-0x6371 027240 set0 mark_reconn_recieve_switch ,mark 
-0x6372 027241 jam lmp_host_connection_req ,mem_lmo_opcode2 
-0x6373 027242 branch init_lmp_reinit 
-:      027243 host_create_conn_wait_accept:
-0x6374 027244 rtnmark1 mark_reconn_recieve_switch 
-0x6375 027245 fetch 2 ,mem_soft_timer 
-0x6376 027246 sub pdata ,1 ,pdata 
-0x6377 027247 branch host_create_conn_resend ,zero 
-0x6378 027248 store 2 ,mem_soft_timer 
-0x6379 027249 rtn 
-:      027250 host_create_conn_resend:
-0x637a 027251 jam conn_sm_send_switch ,mem_conn_sm 
-0x637b 027252 rtn 
-:      027253 host_create_conn_waiting:
-0x637c 027255 rtn 
-:      027257 host_create_conn_switch:
-0x637d 027258 fetch 1 ,mem_lmp_conn_state 
-0x637e 027259 rtnbit0 sent_setup_complete 
-0x637f 027260 rtnbit0 received_setup_complete 
-0x6380 027261 fetch 1 ,mem_connection_options 
-0x6381 027262 set0 connection_switch ,pdata 
-0x6382 027263 store 1 ,mem_connection_options 
-0x6383 027264 jam lmp_switch_req ,mem_lmo_opcode2 
-0x6384 027265 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
-0x6385 027266 rtn 
-:      027268 host_create_conn_send_setup_complete:
-0x6386 027269 jam conn_sm_wait_setup_complete ,mem_conn_sm 
-0x6387 027270 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x6388 027271 rtn 
-:      027273 host_create_conn_wait_setup_complete:
-0x6389 027274 fetch 1 ,mem_lmp_conn_state 
-0x638a 027275 rtnbit0 received_setup_complete 
-0x638b 027276 jam conn_sm_standby ,mem_conn_sm 
-0x638c 027278 rtn 
-:      027279 host_create_conn_wait_setup_complete_rtn:
-0x638d 027280 jam conn_sm_auth_pair ,mem_conn_sm 
-0x638e 027281 rtn 
-:      027283 host_create_conn_master_detach:
-0x638f 027284 fetch 1 ,mem_soft_timer 
-0x6390 027285 increase -1 ,pdata 
-0x6391 027286 branch host_create_conn_send_detach ,blank 
-0x6392 027287 store 1 ,mem_soft_timer 
-0x6393 027288 rtn 
-:      027289 host_create_conn_send_detach:
-0x6394 027290 jam lmp_detach ,mem_lmo_opcode2 
-0x6395 027291 jam local_host ,mem_disconn_reason_send 
-0x6396 027292 jam 0 ,mem_conn_sm 
-0x6397 027293 rtn 
-:      027294 host_create_conn_auth_pair:
-0x6398 027296 fetch 1 ,mem_connection_options 
-0x6399 027297 bbit1 connection_switch ,host_create_conn_switch 
-0x639a 027298 bbit1 connection_auth ,host_create_conn_auth_pair_true 
-:      027299 host_create_conn_sm_done:
-0x639b 027300 jam conn_sm_done ,mem_conn_sm 
-0x639c 027301 rtn 
-:      027302 host_create_conn_auth_pair_true:
-0x639d 027303 fetch 1 ,mem_link_key_exists 
-0x639e 027304 branch host_create_conn_auth_pair_nokey ,blank 
-0x639f 027305 fetch 1 ,mem_lmp_conn_state 
-0x63a0 027306 rtnbit0 sent_setup_complete 
-0x63a1 027307 rtnbit0 received_setup_complete 
-0x63a2 027308 fetch 4 ,mem_aurand_send_delay_time 
-0x63a3 027309 arg 100 ,temp 
-0x63a4 027310 iadd temp ,temp 
-0x63a5 027311 copy clkn_bt ,pdata 
-0x63a6 027312 isub temp ,null 
-0x63a7 027313 nrtn positive 
-0x63a8 027314 branch host_create_conn_auth 
-:      027318 host_create_conn_auth_pair_nokey:
-0x63a9 027319 jam conn_sm_pairing ,mem_conn_sm 
-0x63aa 027320 jam 4 ,mem_pin_length 
-0x63ab 027321 setarg 0x3030 
-0x63ac 027322 store 2 ,mem_pin 
-0x63ad 027323 istore 2 ,contw 
-0x63ae 027324 jam pincode_state_pincode_ready ,mem_pincode_state 
-0x63af 027325 branch host_create_conn_pairing 
-:      027327 host_create_conn_auth_pair_wait:
-0x63b0 027328 rtn 
-:      027329 host_create_conn_encrypt:
-0x63b1 027330 fetch 1 ,mem_connection_options 
-0x63b2 027331 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
-0x63b3 027332 jam conn_sm_done ,mem_conn_sm 
-0x63b4 027333 rtn 
-:      027335 host_create_conn_encrypt_start:
-0x63b5 027336 fetch 1 ,mem_connection_options 
-0x63b6 027337 set0 connection_encrypt ,pdata 
-0x63b7 027338 store 1 ,mem_connection_options 
-0x63b8 027339 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
-0x63b9 027340 rtn 
-:      027342 host_create_conn_encrypt_wait:
-0x63ba 027343 fetch 1 ,mem_wait_encryption 
-0x63bb 027344 rtn blank 
-0x63bc 027345 jam conn_sm_standby ,mem_conn_sm 
-0x63bd 027346 branch host_create_conn_encrypt_start 
-:      027348 host_create_conn_encrypt_wait_clear:
-0x63be 027349 jam conn_sm_send_setup_complete ,mem_conn_sm 
-0x63bf 027350 rtn 
-:      027352 host_auth:
-0x63c0 027353 fetch 1 ,mem_op 
-0x63c1 027354 bbit1 op_inrand_req ,remote_auth 
-0x63c2 027355 call tid_initiate 
-0x63c3 027356 jam lmp_in_rand ,mem_lmo_opcode2 
-0x63c4 027357 branch cmd_exit 
-:      027358 remote_auth:
-0x63c5 027359 fetch 1 ,mem_op 
-0x63c6 027360 set0 op_inrand_req ,pdata 
-0x63c7 027361 store 1 ,mem_op 
-0x63c8 027362 call lmp_accept_inrand 
-0x63c9 027363 call tid_set_reply 
-0x63ca 027364 branch cmd_exit 
-:      027366 pincode_reinit:
-0x63cb 027367 setarg 4 
-0x63cc 027368 store 1 ,mem_pin_length 
-0x63cd 027369 setarg 0x3030 
-0x63ce 027370 istore 2 ,contw 
-0x63cf 027371 istore 2 ,contw 
-0x63d0 027372 rtn 
-:      027378 twspi_reset:
-0x63d1 027379 bpatchx patch31_4 ,mem_patch31 
-0x63d2 027380 hfetch 1 ,core_gpio_oe3 
-0x63d3 027381 arg 0x06 ,temp 
-0x63d4 027382 ior temp ,pdata 
-0x63d5 027383 hstore 1 ,core_gpio_oe3 
-0x63d6 027384 hfetch 1 ,core_gpio_out3 
-0x63d7 027385 ior temp ,pdata 
-0x63d8 027386 hstore 1 ,core_gpio_out3 
-0x63d9 027387 call twspi_disable 
-0x63da 027388 hfetch 1 ,core_gpio_out3 
-0x63db 027389 set0 1 ,pdata 
-0x63dc 027390 set0 2 ,pdata 
-0x63dd 027391 hstore 1 ,core_gpio_out3 
-0x63de 027392 nop 30 
-0x63df 027393 branch twspi_enable 
-:      027395 twspi_reset2:
-0x63e0 027396 hfetch 1 ,core_gpio_oe3 
-0x63e1 027397 arg 0xc0 ,temp 
-0x63e2 027398 ior temp ,pdata 
-0x63e3 027399 hstore 1 ,core_gpio_oe3 
-0x63e4 027400 hfetch 1 ,core_gpio_out3 
-0x63e5 027401 ior temp ,pdata 
-0x63e6 027402 hstore 1 ,core_gpio_out3 
-0x63e7 027403 call twspi_disable 
-0x63e8 027404 hfetch 1 ,core_gpio_out3 
-0x63e9 027405 set0 6 ,pdata 
-0x63ea 027406 set0 7 ,pdata 
-0x63eb 027407 hstore 1 ,core_gpio_out3 
-0x63ec 027408 nop 30 
-0x63ed 027409 branch twspi_enable2 
-:      027411 twspi_disable:
-0x63ee 027412 hfetch 1 ,core_gpio_sel1 
-0x63ef 027413 and pdata ,0xfc ,pdata 
-0x63f0 027414 hstore 1 ,core_gpio_sel1 
-0x63f1 027415 rtn 
-:      027416 twspi_enable:
-0x63f2 027417 hfetch 1 ,core_gpio_sel1 
-0x63f3 027418 or pdata ,0x01 ,pdata 
-0x63f4 027419 hstore 1 ,core_gpio_sel1 
-0x63f5 027420 rtn 
-:      027421 twspi_enable2:
-0x63f6 027422 hfetch 1 ,core_gpio_sel1 
-0x63f7 027423 or pdata ,0x03 ,pdata 
-0x63f8 027424 set0 4 ,pdata 
-0x63f9 027425 hstore 1 ,core_gpio_sel1 
-0x63fa 027426 rtn 
-:      027430 sensor_read:
-0x63fb 027431 copy pdata ,regb 
-0x63fc 027432 call spi_ncs_enable 
-0x63fd 027433 nop 100 
-0x63fe 027434 copy regb ,pdata 
-0x63ff 027435 call twspi_read 
-0x6400 027436 copy pdata ,regb 
-0x6401 027437 call spi_ncs_disable 
-0x6402 027438 nop 100 
-0x6403 027439 copy regb ,pdata 
-0x6404 027440 rtn 
-:      027442 sensor_write:
-0x6405 027443 copy pdata ,regb 
-0x6406 027444 call spi_ncs_enable 
-0x6407 027445 nop 100 
-0x6408 027446 copy regb ,pdata 
-0x6409 027447 call twspi_write 
-0x640a 027448 call spi_ncs_disable 
-0x640b 027449 nop 100 
-0x640c 027450 rtn 
-:      027453 spi_ncs_gpio_init:
-0x640d 027454 fetcht 1 ,mem_spi_ncs_gpio 
-0x640e 027455 branch gpio_config_output 
-:      027458 spi_ncs_enable:
-0x640f 027459 fetcht 1 ,mem_spi_ncs_gpio 
-0x6410 027460 branch gpio_out_active 
-:      027463 spi_ncs_disable:
-0x6411 027464 fetcht 1 ,mem_spi_ncs_gpio 
-0x6412 027465 branch gpio_out_inactive 
-:      027468 twspi_write:
-0x6413 027469 branch spid_write_reg 
-:      027471 twspi_read:
-0x6414 027472 branch spid_read_reg 
-:      027479 read_function_aes:
-0x6415 027480 nbranch read_function ,user 
-0x6416 027481 hfetch 1 ,core_gpio_key2 
-0x6417 027482 or_into 0x2 ,pdata 
-0x6418 027483 hstore 1 ,core_gpio_key2 
-:      027484 read_function:
-0x6419 027485 copy temp ,null 
-0x641a 027486 branch read_fuction_zero ,zero 
-0x641b 027487 copy regc ,pc 
-:      027488 read_fuction_zero:
-0x641c 027489 isolate0 0 ,null 
-0x641d 027490 branch set_ucode_status 
-:      027493 get_block_header:
-0x641e 027494 force 4 ,temp 
-:      027495 get_block_header0:
-0x641f 027496 arg mem_ucode_buf ,rega 
-0x6420 027497 hfetch 1 ,core_gpio_key2 
-0x6421 027498 and_into 0xfd ,pdata 
-0x6422 027499 hstore 1 ,core_gpio_key2 
-0x6423 027500 call read_function 
-0x6424 027501 arg 0x55aa ,rega 
-0x6425 027502 fetch 2 ,mem_ucode_buf 
-0x6426 027503 ifetcht 2 ,contr 
-0x6427 027504 isub rega ,null 
-0x6428 027505 rtn 
-:      027507 read_first_block:
-0x6429 027508 arg 2 ,temp 
-0x642a 027509 arg mem_ucode_ptr ,rega 
-0x642b 027510 call read_function 
-0x642c 027511 fetch 2 ,mem_ucode_ptr 
-0x642d 027512 store 2 ,mem_addr_mi 
-0x642e 027513 call get_iv ,user 
-0x642f 027514 rtn 
-:      027516 get_iv:
-0x6430 027517 arg 16 ,temp 
-0x6431 027518 arg mem_ucode_keybuf ,rega 
-0x6432 027519 hfetch 1 ,core_gpio_key2 
-0x6433 027520 and_into 0xfd ,pdata 
-0x6434 027521 hstore 1 ,core_gpio_key2 
-0x6435 027522 call read_function 
-0x6436 027523 arg mem_ucode_keybuf ,contr 
-0x6437 027524 arg 16 ,loopcnt 
-0x6438 027525 call aes_load_data 
-0x6439 027526 call aes_init 
-0x643a 027527 call aes_clear_data 
-0x643b 027528 branch do_aes_cbc 
-:      027530 load_storage:
-0x643c 027531 disable match 
-0x643d 027532 call get_block_header 
-0x643e 027533 nrtn zero 
-0x643f 027534 enable match 
-0x6440 027535 jam 0x80 ,core_ucode_ctrl 
-0x6441 027536 jam 0 ,core_ucode_hi 
-0x6442 027537 jam 0 ,core_ucode_low 
-0x6443 027538 arg core_ucode_data ,rega 
-0x6444 027539 call read_function_aes 
-0x6445 027540 jam 0x0 ,core_ucode_ctrl 
-:      027541 load_storage_loop:
-0x6446 027542 arg 6 ,temp 
-0x6447 027543 call get_block_header0 
-0x6448 027544 nrtn zero 
-0x6449 027545 ifetch 2 ,contr 
-0x644a 027546 iforce rega 
-0x644b 027547 call read_function 
-0x644c 027548 branch load_storage_loop 
-:      027552 reload_eeprom:
-0x644d 027553 call clean_mem 
-0x644e 027554 setarg 0x1000 
-0x644f 027555 store 2 ,mem_addr_mi 
-0x6450 027556 arg iicd_read_eep ,regc 
-0x6451 027557 arg 2 ,loopcnt 
-:      027558 reload_eeprom_loop:
-0x6452 027559 call get_block_header 
-0x6453 027560 nrtn zero 
-0x6454 027561 fetch 2 ,mem_addr_mi 
-0x6455 027562 byteswap pdata ,pdata 
-0x6456 027563 iadd temp ,pdata 
-0x6457 027564 byteswap pdata ,pdata 
-0x6458 027565 store 2 ,mem_addr_mi 
-0x6459 027566 loop reload_eeprom_loop 
-0x645a 027567 branch load_storage_loop 
-:      027569 loadcode:
-0x645b 027570 call clean_mem 
-0x645c 027571 disable user 
-0x645d 027572 call otp_enable_chgpump 
-0x645e 027573 setarg otp_ucode_flag 
-0x645f 027574 arg mem_otp_ucode_flag ,rega 
-0x6460 027575 arg 2 ,temp 
-0x6461 027576 call otpd_read_data 
-0x6462 027577 fetch 2 ,mem_otp_ucode_flag 
-0x6463 027578 bbit0 otp_uflag_aes ,loadcode_otp 
-0x6464 027579 jam 0x25 ,core_clkoff 
-0x6465 027580 setarg otp_ucode_aeskey 
-0x6466 027581 arg mem_ucode_keybuf ,rega 
-0x6467 027582 arg 16 ,temp 
-0x6468 027583 call otpd_read_data 
-0x6469 027584 jam lock_otp ,core_misc_ctrl 
-0x646a 027585 set1 mark_otp_encrypt ,mark 
-0x646b 027586 arg mem_ucode_keybuf ,contr 
-0x646c 027587 call load_key 
-0x646d 027588 enable user 
-:      027589 loadcode_otp:
-0x646e 027590 jam 0 ,mem_loadcode_times 
-:      027591 loadcode_otp_2:
-0x646f 027592 call loadcode_check_times 
-0x6470 027593 fetch 2 ,mem_otp_ucode_flag 
-0x6471 027594 byteswap pdata ,pdata 
-0x6472 027595 arg 0x7ff ,temp 
-0x6473 027596 iand temp ,pdata 
-0x6474 027597 branch loadcode_iic ,zero 
-0x6475 027598 call otp_set_addr 
-0x6476 027599 arg otpd_read_code ,regc 
-0x6477 027600 call get_iv ,user 
-0x6478 027601 call load_storage 
-0x6479 027602 fetch 1 ,mem_ucode_status 
-0x647a 027603 bbit0 0 ,loadcode_otp_2 
-:      027605 loadcode_iic:
-0x647b 027606 call otp_disable_chgpump 
-0x647c 027607 jam 0 ,mem_loadcode_times 
-:      027608 loadcode_iic_2:
-0x647d 027609 call loadcode_check_times 
-0x647e 027610 call clear_eeprom_size_2k 
-0x647f 027611 fetch 1 ,mem_otp_ucode_flag 
-0x6480 027612 bbit1 otp_uflag_skip_eep ,loadcode_spi 
-0x6481 027613 call loadcode_iic_by_eeprom 
-0x6482 027614 nbranch loadcode_iic_eeprom_2k ,match 
-0x6483 027615 fetch 1 ,mem_ucode_status 
-0x6484 027616 bbit0 0 ,loadcode_iic_2 
-0x6485 027617 branch loadcode_hci 
-:      027618 loadcode_iic_eeprom_2k:
-0x6486 027619 call set_eeprom_size_2k 
-0x6487 027620 fetch 1 ,mem_otp_ucode_flag 
-0x6488 027621 bbit1 otp_uflag_skip_eep ,loadcode_spi 
-0x6489 027622 call loadcode_iic_by_eeprom 
-0x648a 027623 nbranch loadcode_spi ,match 
-0x648b 027624 fetch 1 ,mem_ucode_status 
-0x648c 027625 bbit0 0 ,loadcode_iic_2 
-0x648d 027626 branch loadcode_hci 
-:      027628 loadcode_spi:
-0x648e 027629 jam 0 ,mem_loadcode_times 
-:      027630 loadcode_spi_2:
-0x648f 027631 call loadcode_check_times 
-0x6490 027632 fetch 1 ,mem_otp_ucode_flag 
-0x6491 027633 bbit1 otp_uflag_skip_flash ,loadcode_hci 
-0x6492 027634 setarg 0x0 
-0x6493 027635 store 3 ,mem_addr_hi 
-0x6494 027636 call spid_init_flash 
-0x6495 027637 arg spid_load_flash ,regc 
-0x6496 027638 call read_first_block 
-0x6497 027639 call load_storage 
-0x6498 027640 nbranch loadcode_hci ,match 
-0x6499 027641 fetch 1 ,mem_ucode_status 
-0x649a 027642 bbit0 0 ,loadcode_spi_2 
-:      027644 loadcode_hci:
-0x649b 027645 bmark1 mark_otp_encrypt ,loadcode_hci_enc 
-0x649c 027646 call clear_key_buf 
-:      027647 loadcode_hci_enc:
-0x649d 027648 fetch 1 ,mem_otp_ucode_flag 
-0x649e 027649 bbit0 otp_uflag_hci ,clear_key_buf 
-0x649f 027650 jam 0x21 ,core_clkoff 
-0x64a0 027651 call hci_init 
-:      027652 loadcode_hci_loop:
-0x64a1 027653 call hci_rx_packet 
-0x64a2 027654 branch loadcode_hci_loop 
-:      027656 clear_key_buf:
-0x64a3 027657 setarg 0 
-0x64a4 027658 store 8 ,mem_ucode_keybuf 
-0x64a5 027659 store 8 ,mem_ucode_keybuf + 8 
-0x64a6 027660 force regidx_key ,regext_index 
-0x64a7 027661 call aes_clear 
-0x64a8 027662 jam 0x21 ,core_clkoff 
-0x64a9 027663 rtn 
-:      027666 loadcode_iic_by_eeprom:
-0x64aa 027667 setarg 0x0 
-0x64ab 027668 store 2 ,mem_addr_mi 
-0x64ac 027669 arg iicd_read_eep ,regc 
-0x64ad 027670 call iicd_init_12m 
-0x64ae 027671 call read_first_block 
-0x64af 027672 branch load_storage 
-:      027675 loadcode_check_times:
-0x64b0 027676 fetch 1 ,mem_loadcode_times 
-0x64b1 027677 increase 1 ,pdata 
-0x64b2 027678 sub pdata ,3 ,null 
-0x64b3 027679 nbranch loadcode_error ,positive 
-0x64b4 027680 store 1 ,mem_loadcode_times 
-0x64b5 027681 rtn 
-:      027683 loadcode_error:
-0x64b6 027684 call clear_key_buf 
-0x64b7 027685 call ice_break 
-0x64b8 027686 rtn 
-:      027690 set_ucode_status:
-0x64b9 027691 fetch 1 ,mem_ucode_status 
-0x64ba 027692 lshift pdata ,pdata 
-0x64bb 027693 setflag true ,0 ,pdata 
-0x64bc 027694 isolate0 15 ,rega 
-0x64bd 027695 rtn true 
-0x64be 027696 store 1 ,mem_ucode_status 
-0x64bf 027697 rtn 
-:      027700 decrypt_code:
-0x64c0 027701 hfetch 1 ,core_gpio_key2 
-0x64c1 027702 rtnbit0 1 
-0x64c2 027703 branch decrypt_code_skip 
-:      027704 decrypt_code_loop:
-0x64c3 027705 hfetch 1 ,core_dma_status 
-0x64c4 027706 qisolate1 pdata 
-0x64c5 027707 rtn true 
-:      027708 decrypt_code_skip:
-0x64c6 027709 hfetch 1 ,core_misc_status 
-0x64c7 027710 bbit0 1 ,decrypt_code_loop 
-0x64c8 027711 call do_aes_cbc 
-0x64c9 027712 branch decrypt_code_loop 
-:      027716 load_ucode:
-0x64ca 027717 fetch 2 ,mem_patch_ptr 
-0x64cb 027718 rtn blank 
-0x64cc 027719 jam 0x80 ,core_ucode_ctrl 
-0x64cd 027720 jam 0 ,core_ucode_hi 
-0x64ce 027721 jam 0 ,core_ucode_low 
-0x64cf 027722 fetcht 2 ,mem_patch_len 
-0x64d0 027723 lshift2 temp ,loopcnt 
-0x64d1 027724 iforce contr 
-:      027725 load_ucode_loop:
-0x64d2 027726 ifetch 1 ,contr 
-0x64d3 027727 hstore 1 ,core_ucode_data 
-0x64d4 027728 loop load_ucode_loop 
-0x64d5 027729 jam 0x0 ,core_ucode_ctrl 
-0x64d6 027730 rtn 
-:      027735 spid_init:
-0x64d7 027736 bpatchx patch31_5 ,mem_patch31 
-0x64d8 027737 call spid_init_common 
-0x64d9 027738 branch twspi_enable 
-:      027740 spid_init2:
-0x64da 027741 call spid_init_common 
-0x64db 027742 call twspi_disable 
-0x64dc 027743 branch twspi_enable2 
-:      027745 spid_init_common:
-0x64dd 027746 fetch 1 ,mem_spi_init_clk 
-0x64de 027747 hstore 1 ,core_spid_ctrl 
-0x64df 027748 fetch 1 ,mem_spi_init_delay_time 
-0x64e0 027749 hstore 1 ,core_spid_delay 
-0x64e1 027750 setarg mem_spid_tbuf 
-0x64e2 027751 hstore 2 ,core_spid_txaddr 
-0x64e3 027752 setarg mem_spid_rbuf 
-0x64e4 027753 hstore 2 ,core_spid_rxaddr 
-0x64e5 027754 branch twspi_disable 
-:      027756 spid_reset:
-0x64e6 027757 hfetch 1 ,core_spid_ctrl 
-0x64e7 027758 set1 7 ,pdata 
-0x64e8 027759 hstore 1 ,core_spid_ctrl 
-0x64e9 027760 set0 7 ,pdata 
-0x64ea 027761 hstore 1 ,core_spid_ctrl 
-0x64eb 027762 rtn 
-:      027766 spid_write_reg:
-0x64ec 027767 set1 7 ,pdata 
-0x64ed 027768 store 2 ,mem_spid_tbuf 
-0x64ee 027769 bpatchx patch31_6 ,mem_patch31 
-0x64ef 027770 jam 2 ,core_spid_txlen 
-0x64f0 027771 jam 0 ,core_spid_rxlen 
-0x64f1 027772 jam spid_start ,core_misc_ctrl 
-0x64f2 027773 branch wait_spid_done 
-:      027776 spid_read_reg:
-0x64f3 027777 force 1 ,temp 
-:      027779 spid_read_regs:
-0x64f4 027781 store 1 ,mem_spid_tbuf 
-0x64f5 027782 bpatchx patch31_7 ,mem_patch31 
-0x64f6 027783 jam 1 ,core_spid_txlen 
-0x64f7 027784 hstoret 2 ,core_spid_rxlen 
-0x64f8 027785 jam spid_start ,core_misc_ctrl 
-0x64f9 027786 call wait_spid_done 
-0x64fa 027787 fetch 1 ,mem_spid_rbuf 
-0x64fb 027788 rtn 
-:      027790 wait_spid_done:
-0x64fc 027791 fetch 2 ,mem_afh_error_total 
-0x64fd 027792 increase 1 ,pdata 
-0x64fe 027793 store 2 ,mem_afh_error_total 
-0x64ff 027794 hfetch 1 ,core_dma_status 
-0x6500 027795 bbit0 spid_done ,wait_spid_done 
-0x6501 027796 rtn 
-:      027798 spid_init_flash:
-0x6502 027799 jam 0x40 ,core_spid_ctrl 
-0x6503 027800 jam 0x0 ,core_spid_delay 
-0x6504 027801 hfetch 1 ,core_gpio_sel1 
-0x6505 027802 set0 0 ,pdata 
-0x6506 027803 set1 1 ,pdata 
-0x6507 027804 hstore 1 ,core_gpio_sel1 
-0x6508 027805 setarg 0 
-0x6509 027806 store 4 ,mem_spid_tbuf 
-0x650a 027807 rtn 
-:      027810 spid_unlock_flash:
-0x650b 027811 setarg 0 
-0x650c 027812 hstore 2 ,core_spid_rxlen 
-0x650d 027813 setarg 1 
-0x650e 027814 hstore 2 ,core_spid_txlen 
-0x650f 027815 setarg mem_spid_tbuf 
-0x6510 027816 hstore 2 ,core_spid_txaddr 
-0x6511 027817 jam 6 ,mem_spid_tbuf 
-0x6512 027818 jam spid_start ,core_misc_ctrl 
-0x6513 027819 branch wait_spid_done 
-:      027834 flash_write:
-0x6514 027835 disable user 
-0x6515 027836 copy pdata ,regb 
-0x6516 027837 fetch 1 ,mem_spi_write_flash_sm 
-0x6517 027838 rtnne flash_sm_no_buys 
-0x6518 027839 enable user 
-0x6519 027840 copy regb ,pdata 
-0x651a 027841 branch flash_write_start 
-:      027844 flash_write_spi_sm_timer:
-0x651b 027845 fetch 1 ,mem_spi_write_flash_sm 
-0x651c 027846 beq flash_sm_start ,flash_write_start 
-0x651d 027847 beq flash_sm_erase_sector ,flash_erase_sector 
-0x651e 027848 beq flash_sm_wait_erase_sector ,flash_wait_erase_sector 
-0x651f 027849 beq flash_sm_write_data ,flash_write_data 
-0x6520 027850 beq flash_sm_wait_write_data ,flash_wait_write_data 
-0x6521 027851 rtn 
-:      027853 flash_write_start:
-0x6522 027854 store 3 ,mem_spi_write_addr 
-0x6523 027855 copy rega ,pdata 
-0x6524 027856 store 2 ,mem_spi_write_ptr 
-0x6525 027857 storet 2 ,mem_spi_write_len 
-0x6526 027858 jam flash_sm_erase_sector ,mem_spi_write_flash_sm 
-0x6527 027859 branch spid_init_flash 
-:      027860 flash_erase_sector:
-0x6528 027861 call spid_init_flash 
-0x6529 027862 jam flash_sm_wait_erase_sector ,mem_spi_write_flash_sm 
-0x652a 027863 call spid_unlock_flash 
-0x652b 027864 arg mem_spid_tbuf ,rega 
-0x652c 027865 fetch 3 ,mem_spi_write_addr 
-0x652d 027866 jam 4 ,core_spid_txlen 
-0x652e 027867 arg flash_command_sector_erase ,temp 
-0x652f 027868 branch spid_write_flash_common 
-:      027870 flash_wait_erase_sector:
-0x6530 027871 call spid_init_flash 
-0x6531 027872 call spid_unlock_flash 
-0x6532 027873 setarg flash_read_satus 
-0x6533 027874 call spid_read_reg 
-0x6534 027875 rtnbit1 flash_status_wip 
-0x6535 027876 jam flash_sm_write_data ,mem_spi_write_flash_sm 
-0x6536 027877 rtn 
-:      027878 flash_write_data:
-0x6537 027879 call spid_init_flash 
-0x6538 027880 jam flash_sm_wait_write_data ,mem_spi_write_flash_sm 
-0x6539 027881 call spid_unlock_flash 
-0x653a 027882 call flash_data_preserve 
-0x653b 027883 call spid_write_flash 
-0x653c 027884 branch flash_data_recover 
-:      027885 flash_wait_write_data:
-0x653d 027886 call spid_init_flash 
-0x653e 027887 call spid_unlock_flash 
-0x653f 027888 setarg flash_read_satus 
-0x6540 027889 call spid_read_reg 
-0x6541 027890 rtnbit1 flash_status_wip 
-0x6542 027891 jam flash_sm_no_buys ,mem_spi_write_flash_sm 
-0x6543 027892 fetch 2 ,mem_cb_spi_flash_write_complate 
-0x6544 027893 branch callback_func 
-:      027894 flash_data_recover:
-0x6545 027895 fetch 4 ,mem_temp 
-0x6546 027896 fetcht 2 ,mem_spi_write_ptr 
-0x6547 027897 increase -4 ,temp 
-0x6548 027898 istore 4 ,temp 
-0x6549 027899 rtn 
-:      027900 flash_data_preserve:
-0x654a 027901 fetcht 2 ,mem_spi_write_ptr 
-0x654b 027902 copy temp ,rega 
-0x654c 027903 increase -4 ,temp 
-0x654d 027904 ifetch 4 ,temp 
-0x654e 027905 store 4 ,mem_temp 
-0x654f 027906 fetcht 2 ,mem_spi_write_len 
-0x6550 027907 fetch 3 ,mem_spi_write_addr 
-0x6551 027908 rtn 
-:      027912 spid_write_flash:
-0x6552 027913 increase 4 ,temp 
-0x6553 027914 hstoret 2 ,core_spid_txlen 
-0x6554 027915 arg flash_command_write_data ,temp 
-0x6555 027916 increase -4 ,rega 
-:      027917 spid_write_flash_common:
-0x6556 027919 istoret 1 ,rega 
-0x6557 027920 rshift16 pdata ,temp 
-0x6558 027921 istoret 1 ,contw 
-0x6559 027922 rshift8 pdata ,temp 
-0x655a 027923 istoret 1 ,contw 
-0x655b 027924 istore 1 ,contw 
-0x655c 027925 deposit rega 
-0x655d 027926 hstore 2 ,core_spid_txaddr 
-0x655e 027927 setarg 0 
-0x655f 027928 hstore 2 ,core_spid_rxlen 
-0x6560 027929 jam spid_start ,core_misc_ctrl 
-0x6561 027930 branch wait_spid_done 
-:      027934 spid_read_flash:
-0x6562 027935 hstoret 2 ,core_spid_rxlen 
-0x6563 027936 rshift16 pdata ,temp 
-0x6564 027937 storet 1 ,mem_addr_hi 
-0x6565 027938 rshift8 pdata ,temp 
-0x6566 027939 storet 1 ,mem_addr_mi 
-0x6567 027940 store 1 ,mem_addr_lo 
-0x6568 027941 setarg 4 
-0x6569 027942 hstore 2 ,core_spid_txlen 
-0x656a 027943 jam flash_command_read_data ,mem_spid_tbuf 
-0x656b 027944 setarg mem_spid_tbuf 
-0x656c 027945 hstore 2 ,core_spid_txaddr 
-0x656d 027946 deposit rega 
-0x656e 027947 hstore 2 ,core_spid_rxaddr 
-0x656f 027948 hfetch 1 ,core_spid_ctrl 
-0x6570 027949 isolate0 15 ,rega 
-0x6571 027950 setflag true ,6 ,pdata 
-0x6572 027951 hstore 1 ,core_spid_ctrl 
-0x6573 027952 jam spid_start ,core_misc_ctrl 
-:      027953 spi_read_flash_wait:
-0x6574 027954 hfetch 1 ,core_dma_status 
-0x6575 027955 bbit1 7 ,spi_read_flash_wait 
-0x6576 027956 arg spid_done ,queue 
-0x6577 027957 branch wait_spid_done 
-:      027961 spid_load_flash:
-0x6578 027962 hstoret 2 ,core_spid_rxlen 
-0x6579 027963 setarg 4 
-0x657a 027964 hstore 2 ,core_spid_txlen 
-0x657b 027965 jam 3 ,mem_spid_tbuf 
-0x657c 027966 setarg mem_spid_tbuf 
-0x657d 027967 hstore 2 ,core_spid_txaddr 
-0x657e 027968 deposit rega 
-0x657f 027969 hstore 2 ,core_spid_rxaddr 
-0x6580 027970 hfetch 1 ,core_spid_ctrl 
-0x6581 027971 isolate0 15 ,rega 
-0x6582 027972 setflag true ,6 ,pdata 
-0x6583 027973 hstore 1 ,core_spid_ctrl 
-0x6584 027974 jam spid_start ,core_misc_ctrl 
-:      027975 spi_load_flash_wait:
-0x6585 027976 hfetch 1 ,core_dma_status 
-0x6586 027977 bbit1 7 ,spi_load_flash_wait 
-0x6587 027978 arg spid_done ,queue 
-0x6588 027979 call decrypt_code 
-0x6589 027980 call wait_spid_done 
-0x658a 027981 isolate1 spid_crcok ,pdata 
-0x658b 027982 call set_ucode_status 
-0x658c 027983 fetch 1 ,mem_addr_hi 
-0x658d 027984 lshift16 pdata ,regb 
-0x658e 027985 fetch 1 ,mem_addr_mi 
-0x658f 027986 lshift8 pdata ,pdata 
-0x6590 027987 ior regb ,regb 
-0x6591 027988 fetch 1 ,mem_addr_lo 
-0x6592 027989 ior regb ,pdata 
-0x6593 027990 iadd temp ,pdata 
-0x6594 027991 store 1 ,mem_addr_lo 
-0x6595 027992 rshift8 pdata ,pdata 
-0x6596 027993 store 1 ,mem_addr_mi 
-0x6597 027994 rshift8 pdata ,pdata 
-0x6598 027995 store 1 ,mem_addr_hi 
-0x6599 027996 rtn 
-:      028001 soft_reset_chip:
-0x659a 028002 jam 1 ,core_reset 
-0x659b 028003 rtn 
-:      028009 iic_init_390k:
-0x659c 028010 jam 12 ,core_iicd_scl_low 
-0x659d 028011 jam 13 ,core_iicd_scl_high 
-0x659e 028012 jam 13 ,core_iicd_start_setup 
-0x659f 028013 jam 13 ,core_iicd_start_hold 
-0x65a0 028014 jam 13 ,core_iicd_stop_setup 
-0x65a1 028015 jam 12 ,core_iicd_data_setup 
-0x65a2 028016 branch iicd_init_gpio 
-:      028019 iicd_init_12m:
-0x65a3 028020 jam 5 ,core_iicd_scl_low 
-0x65a4 028021 jam 7 ,core_iicd_scl_high 
-0x65a5 028022 jam 7 ,core_iicd_start_setup 
-0x65a6 028023 jam 7 ,core_iicd_start_hold 
-0x65a7 028024 jam 7 ,core_iicd_stop_setup 
-0x65a8 028025 jam 5 ,core_iicd_data_setup 
-:      028026 iicd_init_gpio:
-0x65a9 028027 hfetch 1 ,core_gpio_pu3 
-0x65aa 028028 or_into 0xc0 ,pdata 
-0x65ab 028029 hstore 1 ,core_gpio_pu3 
-0x65ac 028030 hfetch 1 ,core_gpio_sel1 
-0x65ad 028031 or_into 0x10 ,pdata 
-0x65ae 028032 hstore 1 ,core_gpio_sel1 
-0x65af 028033 rtn 
-:      028037 wait_iicd_done:
-0x65b0 028038 hfetch 1 ,core_dma_status 
-0x65b1 028039 bbit0 iicd_done ,wait_iicd_done 
-0x65b2 028040 rtn 
-:      028048 iicd_read_data:
-0x65b3 028049 hstore 2 ,core_iicd_txlen 
-0x65b4 028050 deposit rega 
-0x65b5 028051 hstore 2 ,core_iicd_txaddr 
-0x65b6 028052 deposit regb 
-0x65b7 028053 hstore 2 ,core_iicd_rxaddr 
-0x65b8 028054 deposit temp 
-0x65b9 028055 hstore 2 ,core_iicd_rxlen 
-0x65ba 028056 arg 1 ,temp 
-0x65bb 028057 nsetflag blank ,1 ,temp 
-0x65bc 028058 hstore 1 ,core_iicd_ctrl 
-0x65bd 028059 jam iicd_start ,core_misc_ctrl 
-0x65be 028060 branch wait_iicd_done 
-:      028063 set_eeprom_size_2k:
-0x65bf 028064 set1 mark_eeprom_size ,mark 
-0x65c0 028065 jam 0x08 ,mem_eeprom_block_size 
-0x65c1 028066 rtn 
-:      028068 clear_eeprom_size_2k:
-0x65c2 028069 set0 mark_eeprom_size ,mark 
-0x65c3 028070 jam 0x20 ,mem_eeprom_block_size 
-0x65c4 028071 rtn 
-:      028074 iicd_read_eep_data_size_2k:
-0x65c5 028075 fetch 1 ,mem_eeprom_base 
-0x65c6 028076 iadd regb ,pdata 
-0x65c7 028077 store 1 ,mem_addr_mi 
-0x65c8 028078 branch iicd_read_eep_size_2k 
-:      028080 iicd_read_eep_size_2k_lcadcode:
-0x65c9 028081 fetch 2 ,mem_addr_mi 
-0x65ca 028082 byteswap pdata ,pdata 
-0x65cb 028083 store 1 ,mem_addr_mi 
-:      028088 iicd_read_eep_size_2k:
-0x65cc 028089 setarg 3 
-0x65cd 028090 hstore 2 ,core_iicd_txlen 
-0x65ce 028091 jam 0xa0 ,mem_iicd_tbuf 
-0x65cf 028092 jam 0xa1 ,mem_iicd_tbuf + 2 
-0x65d0 028093 branch iicd_read_eep_common 
-:      028099 iicd_write_protect_eep_data:
-0x65d1 028100 storet 2 ,mem_temp 
-0x65d2 028101 call iicd_eeprom_write_enable 
-0x65d3 028102 fetcht 2 ,mem_temp 
-0x65d4 028103 call iicd_write_eep_data 
-0x65d5 028104 branch iicd_eeprom_write_disable 
-:      028106 iicd_eeprom_write_enable:
-0x65d6 028107 fetch 1 ,mem_eeprom_wp_gpio 
-0x65d7 028108 rtneq gpio_disable 
-0x65d8 028109 bbit0 6 ,iicd_wp_gpio_output_low 
-0x65d9 028110 setarg 150000 
-0x65da 028111 call sleep 
-:      028112 iicd_wp_gpio_output_low:
-0x65db 028113 fetcht 1 ,mem_eeprom_wp_gpio 
-0x65dc 028114 branch gpio_out_active 
-:      028116 iicd_eeprom_write_disable:
-0x65dd 028117 fetcht 1 ,mem_eeprom_wp_gpio 
-0x65de 028118 branch gpio_out_inactive 
-:      028123 iicd_read_eep_data:
-0x65df 028124 bpatchx patch32_0 ,mem_patch32 
-0x65e0 028125 bmark1 mark_eeprom_size ,iicd_read_eep_data_size_2k 
-0x65e1 028126 fetch 2 ,mem_eeprom_base 
-0x65e2 028127 iadd regb ,pdata 
-0x65e3 028128 byteswap pdata ,pdata 
-0x65e4 028129 store 2 ,mem_addr_mi 
-:      028132 iicd_read_eep:
-0x65e5 028133 bpatchx patch32_1 ,mem_patch32 
-0x65e6 028134 bmark1 mark_eeprom_size ,iicd_read_eep_size_2k_lcadcode 
-0x65e7 028135 setarg 4 
-0x65e8 028136 hstore 2 ,core_iicd_txlen 
-0x65e9 028137 jam 0xa0 ,mem_iicd_tbuf 
-0x65ea 028138 jam 0xa1 ,mem_iicd_tbuf + 3 
-:      028139 iicd_read_eep_common:
-0x65eb 028140 setarg mem_iicd_tbuf 
-0x65ec 028141 hstore 2 ,core_iicd_txaddr 
-0x65ed 028142 hstoret 2 ,core_iicd_rxlen 
-0x65ee 028143 deposit rega 
-0x65ef 028144 hstore 2 ,core_iicd_rxaddr 
-0x65f0 028145 setarg 2 
-0x65f1 028146 isolate0 15 ,rega 
-0x65f2 028147 setflag true ,0 ,pdata 
-0x65f3 028148 hstore 1 ,core_iicd_ctrl 
-0x65f4 028149 jam iicd_start ,core_misc_ctrl 
-0x65f5 028150 arg iicd_done ,queue 
-0x65f6 028151 call decrypt_code 
-0x65f7 028152 call wait_iicd_done 
-0x65f8 028153 isolate1 iicd_crcok ,pdata 
-0x65f9 028154 call set_ucode_status 
-0x65fa 028155 bmark1 mark_eeprom_size ,iicd_read_eep_load_code_size_2k 
-0x65fb 028156 fetch 2 ,mem_addr_mi 
-0x65fc 028157 byteswap pdata ,pdata 
-0x65fd 028158 iadd temp ,pdata 
-0x65fe 028159 byteswap pdata ,pdata 
-0x65ff 028160 store 2 ,mem_addr_mi 
-0x6600 028161 rtn 
-:      028163 iicd_read_eep_load_code_size_2k:
-0x6601 028164 fetch 1 ,mem_addr_mi 
-0x6602 028165 iadd temp ,pdata 
-0x6603 028166 byteswap pdata ,pdata 
-0x6604 028167 store 2 ,mem_addr_mi 
-0x6605 028168 rtn 
-:      028174 iicd_write_eep_data:
-0x6606 028175 fetch 2 ,mem_eeprom_base 
-0x6607 028176 iadd regb ,pdata 
-:      028179 iicd_write_ota_data:
-0x6608 028180 store 2 ,mem_pdatatemp 
-0x6609 028181 bpatchx patch32_2 ,mem_patch32 
-0x660a 028182 storet 2 ,mem_temp 
-0x660b 028183 copy rega ,pdata 
-0x660c 028184 store 2 ,mem_contr 
-:      028185 iicd_write_eep_loop:
-0x660d 028186 call iicd_eep_transparency 
-0x660e 028188 fetcht 2 ,mem_regb 
-0x660f 028189 fetch 2 ,mem_contr 
-0x6610 028190 copy pdata ,rega 
-0x6611 028191 fetch 2 ,mem_pdatatemp 
-0x6612 028193 call iicd_write_eep 
-0x6613 028195 fetch 2 ,mem_regb 
-0x6614 028196 fetcht 2 ,mem_contr 
-0x6615 028197 iadd temp ,temp 
-0x6616 028198 storet 2 ,mem_contr 
-0x6617 028199 fetcht 2 ,mem_pdatatemp 
-0x6618 028200 iadd temp ,temp 
-0x6619 028201 storet 2 ,mem_pdatatemp 
-0x661a 028202 fetch 2 ,mem_temp 
-0x661b 028203 nbranch iicd_write_eep_loop ,blank 
-0x661c 028204 rtn 
-:      028212 iicd_eep_transparency:
-0x661d 028213 bpatchx patch32_3 ,mem_patch32 
-0x661e 028214 fetch 1 ,mem_eeprom_block_size 
-0x661f 028215 increase -1 ,pdata 
-0x6620 028216 fetcht 2 ,mem_pdatatemp 
-0x6621 028217 ior temp ,pdata 
-0x6622 028218 increase 1 ,pdata 
-0x6623 028219 store 3 ,mem_regc 
-0x6624 028221 fetch 2 ,mem_temp 
-0x6625 028222 iadd temp ,pdata 
-0x6626 028224 fetcht 3 ,mem_regc 
-0x6627 028225 isub temp ,pdata 
-0x6628 028226 nbranch iicd_eep_deal_short_packet ,positive 
-0x6629 028227 store 2 ,mem_temp 
-0x662a 028228 fetch 3 ,mem_regc 
-0x662b 028229 fetcht 2 ,mem_pdatatemp 
-0x662c 028230 isub temp ,pdata 
-0x662d 028231 store 2 ,mem_regb 
-0x662e 028232 rtn 
-:      028233 iicd_eep_deal_short_packet:
-0x662f 028234 fetch 2 ,mem_temp 
-0x6630 028235 store 2 ,mem_regb 
-0x6631 028236 setarg 0 
-0x6632 028237 store 2 ,mem_temp 
-0x6633 028238 rtn 
-:      028240 iicd_write_eep_size_2k:
-0x6634 028241 increase 2 ,temp 
-0x6635 028242 hstoret 2 ,core_iicd_txlen 
-0x6636 028243 increase -2 ,rega 
-0x6637 028244 ifetcht 3 ,rega 
-0x6638 028245 copy temp ,regb 
-0x6639 028246 arg 0xa0 ,temp 
-0x663a 028247 istoret 1 ,rega 
-0x663b 028249 istore 1 ,contw 
-0x663c 028250 branch iicd_write_eep_common 
-:      028253 iicd_write_eep:
-0x663d 028254 copy pdata ,regb 
-0x663e 028255 bpatchx patch32_4 ,mem_patch32 
-0x663f 028256 bmark1 mark_eeprom_size ,iicd_write_eep_size_2k 
-0x6640 028257 copy regb ,pdata 
-0x6641 028258 increase 3 ,temp 
-0x6642 028259 hstoret 2 ,core_iicd_txlen 
-0x6643 028260 increase -3 ,rega 
-0x6644 028261 ifetcht 3 ,rega 
-0x6645 028262 copy temp ,regb 
-0x6646 028263 arg 0xa0 ,temp 
-0x6647 028264 istoret 1 ,rega 
-0x6648 028265 byteswap pdata ,pdata 
-0x6649 028266 istore 2 ,contw 
-:      028267 iicd_write_eep_common:
-0x664a 028268 deposit rega 
-0x664b 028269 hstore 2 ,core_iicd_txaddr 
-0x664c 028270 setarg 0 
-0x664d 028271 hstore 2 ,core_iicd_rxlen 
-0x664e 028272 jam 1 ,core_iicd_ctrl 
-0x664f 028273 jam iicd_start ,core_misc_ctrl 
-0x6650 028274 call wait_iicd_done 
-0x6651 028275 copy regb ,pdata 
-0x6652 028276 istore 3 ,rega 
-:      028278 iic_check_eeprom_standby:
-0x6653 028279 bpatchx patch32_5 ,mem_patch32 
-0x6654 028280 jam 0 ,mem_iicd_tbuf + 3 
-:      028281 iic_check_eeprom_standby_wait:
-0x6655 028282 setarg 1 
-0x6656 028283 hstore 2 ,core_iicd_txlen 
-0x6657 028284 jam 0xa0 ,mem_iicd_tbuf 
-0x6658 028285 setarg mem_iicd_tbuf 
-0x6659 028286 hstore 2 ,core_iicd_txaddr 
-0x665a 028287 setarg 0 
-0x665b 028288 hstore 2 ,core_iicd_rxlen 
-0x665c 028289 hstore 2 ,core_iicd_rxaddr 
-0x665d 028290 setarg 3 
-0x665e 028291 hstore 1 ,core_iicd_ctrl 
-0x665f 028292 jam iicd_start ,core_misc_ctrl 
-0x6660 028293 call wait_iicd_done 
-0x6661 028294 hfetch 1 ,core_dma_status 
-0x6662 028295 rtnbit0 iicd_ack 
-0x6663 028296 nop 1500 
-0x6664 028297 fetch 1 ,mem_iicd_tbuf + 3 
-0x6665 028298 increase 1 ,pdata 
-0x6666 028299 store 1 ,mem_iicd_tbuf + 3 
-0x6667 028300 sub pdata ,40 ,null 
-0x6668 028301 nrtn positive 
-0x6669 028302 branch iic_check_eeprom_standby_wait 
-:      028306 otp_enable_chgpump:
-0x666a 028307 jam 0x70 ,rfen_chgpump 
-0x666b 028308 nop param_chgpump_delay 
-0x666c 028309 rtn 
-:      028311 otp_disable_chgpump:
-0x666d 028312 jam 0x30 ,rfen_chgpump 
-0x666e 028313 rtn 
-:      028315 otp_set_addr:
-0x666f 028316 lshift3 pdata ,pdata 
-0x6670 028317 hstore 2 ,core_otp_addr 
-0x6671 028318 jam 0 ,core_otpd_ctrl 
-0x6672 028319 rtn 
-:      028322 otp_write:
-0x6673 028323 call otp_set_addr 
-0x6674 028324 call otp_ce 
-:      028325 otp_program:
-0x6675 028326 ifetcht 1 ,rega 
-0x6676 028327 increase 1 ,rega 
-0x6677 028328 force 0 ,queue 
-:      028329 otp_program_bit:
-0x6678 028330 qisolate0 temp 
-0x6679 028331 branch otp_skip_0 ,true 
-0x667a 028332 hfetch 1 ,core_otp_din 
-0x667b 028333 set1 6 ,pdata 
-0x667c 028334 set1 7 ,pdata 
-0x667d 028335 hstore 1 ,core_otp_din 
-0x667e 028336 jam 0x02 ,core_otp_ctrl 
-0x667f 028337 jam 0x82 ,core_otp_ctrl 
-0x6680 028338 set0 7 ,pdata 
-0x6681 028339 hstore 1 ,core_otp_din 
-0x6682 028340 jam 0x8a ,core_otp_ctrl 
-0x6683 028341 nop 11 
-0x6684 028342 jam 0xca ,core_otp_ctrl 
-0x6685 028343 nop 33 
-0x6686 028344 jam 0x4a ,core_otp_ctrl 
-0x6687 028345 nop 44 
-0x6688 028346 jam 0xca ,core_otp_ctrl 
-0x6689 028347 nop 22 
-0x668a 028348 jam 0x8a ,core_otp_ctrl 
-0x668b 028349 nop 33 
-0x668c 028350 jam 0x82 ,core_otp_ctrl 
-0x668d 028351 nop 1 
-0x668e 028352 jam 0x92 ,core_otp_ctrl 
-0x668f 028353 nop 10 
-0x6690 028354 jam 0xb2 ,core_otp_ctrl 
-0x6691 028355 hfetch 1 ,core_otp_rdata 
-0x6692 028356 jam 0x92 ,core_otp_ctrl 
-0x6693 028357 nop 1 
-0x6694 028358 jam 0x82 ,core_otp_ctrl 
-0x6695 028359 qisolate0 pdata 
-0x6696 028360 branch otp_program_bit ,true 
-:      028361 otp_skip_0:
-0x6697 028362 hfetch 2 ,core_otp_addr 
-0x6698 028363 increase 1 ,pdata 
-0x6699 028364 hstore 2 ,core_otp_addr 
-0x669a 028365 increase 1 ,queue 
-0x669b 028366 compare 8 ,queue ,0xf 
-0x669c 028367 nbranch otp_program_bit ,true 
-0x669d 028368 loop otp_program 
-0x669e 028369 jam 0x83 ,core_otp_ctrl 
-0x669f 028370 rtn 
-:      028372 otp_ce:
-0x66a0 028373 jam 0x82 ,core_otp_ctrl 
-0x66a1 028374 nop 12 
-0x66a2 028375 jam 0x80 ,core_otp_ctrl 
-0x66a3 028376 jam 0x82 ,core_otp_ctrl 
-0x66a4 028377 nop 150 
-0x66a5 028378 rtn 
-:      028381 otpd_read_init:
-0x66a6 028382 call otp_ce 
-0x66a7 028383 jam 0xa2 ,core_otp_ctrl 
-0x66a8 028384 deposit rega 
-0x66a9 028385 hstore 2 ,core_otpd_addr 
-0x66aa 028386 set1 11 ,temp 
-0x66ab 028387 isolate0 15 ,pdata 
-0x66ac 028388 setflag true ,15 ,temp 
-0x66ad 028389 hstoret 2 ,core_otpd_len 
-0x66ae 028390 jam otpd_start ,core_misc_ctrl 
-0x66af 028391 rtn 
-:      028393 otpd_wait_end:
-0x66b0 028394 hfetch 1 ,core_dma_status 
-0x66b1 028395 bbit0 otpd_done ,otpd_wait_end 
-0x66b2 028396 rtn 
-:      028399 otpd_read_data:
-0x66b3 028400 call otp_set_addr 
-0x66b4 028401 call otpd_read_init 
-0x66b5 028402 call otpd_wait_end 
-0x66b6 028403 jam 0x83 ,core_otp_ctrl 
-0x66b7 028404 rtn 
-:      028409 otpd_read_code:
-0x66b8 028410 hfetch 2 ,core_current_otp_addr 
-0x66b9 028411 hstore 2 ,core_otp_addr 
-0x66ba 028412 call otpd_read_init 
-0x66bb 028413 arg otpd_done ,queue 
-0x66bc 028414 call decrypt_code 
-0x66bd 028415 call otpd_wait_end 
-0x66be 028416 isolate1 otpd_crcok ,pdata 
-0x66bf 028417 call set_ucode_status 
-0x66c0 028418 jam 0x83 ,core_otp_ctrl 
-0x66c1 028419 rtn 
-:      028422 uartd_prepare_tx:
-0x66c2 028423 hfetch 2 ,core_uart_twptr 
-0x66c3 028424 iforce contwu 
-0x66c4 028425 rtn 
-:      028427 uartd_send:
-0x66c5 028428 deposit contwu 
-0x66c6 028429 hstore 2 ,core_uart_twptr 
-0x66c7 028430 rtn 
-:      028432 uartd_rxdone:
-0x66c8 028433 deposit contru 
-0x66c9 028434 hstore 2 ,core_uart_rrptr 
-0x66ca 028435 rtn 
-:      028437 uartd_prepare_rx:
-0x66cb 028438 hfetch 2 ,core_uart_rrptr 
-0x66cc 028439 copy pdata ,contru 
-0x66cd 028440 rtn 
-:      028442 uart_set_baud_by_mem:
-0x66ce 028443 fetch uart_baud_len ,mem_baud 
-0x66cf 028444 hstore uart_baud_len ,core_uart_baud 
-0x66d0 028445 rtn 
-:      028447 uart_copy_tx_bytes_fast:
-0x66d1 028448 deposit loopcnt 
-0x66d2 028449 rtn blank 
-:      028450 uart_copy_tx_bytes_fast_loop:
-0x66d3 028451 increase -8 ,loopcnt 
-0x66d4 028452 call uart_tx_8_bytes ,positive 
-0x66d5 028453 rtn zero 
-0x66d6 028454 branch uart_copy_tx_bytes_fast_loop ,positive 
-0x66d7 028455 increase 8 ,loopcnt 
-:      028456 uart_copy_tx_bytes_fast_loop_four:
-0x66d8 028457 increase -4 ,loopcnt 
-0x66d9 028458 call uart_tx_4_bytes ,positive 
-0x66da 028459 rtn zero 
-0x66db 028460 branch uart_copy_tx_bytes_fast_loop_four ,positive 
-0x66dc 028461 increase 4 ,loopcnt 
-0x66dd 028462 branch uart_copy_tx_bytes 
-:      028464 uart_tx_8_bytes:
-0x66de 028465 ifetch 8 ,contr 
-0x66df 028466 istore 8 ,contwu 
-0x66e0 028467 rtn 
-:      028469 uart_tx_4_bytes:
-0x66e1 028470 ifetch 4 ,contr 
-0x66e2 028471 istore 4 ,contwu 
-0x66e3 028472 rtn 
-:      028474 uart_copy_tx_bytes:
-0x66e4 028475 deposit loopcnt 
-0x66e5 028476 rtn blank 
-:      028477 uart_copy_tx_bytes_loop:
-0x66e6 028478 ifetch 1 ,contr 
-0x66e7 028479 istore 1 ,contwu 
-0x66e8 028480 loop uart_copy_tx_bytes_loop 
-0x66e9 028481 rtn 
-:      028483 uart_copy_rx_bytes_fast:
-0x66ea 028484 deposit loopcnt 
-0x66eb 028485 rtn blank 
-:      028486 uart_copy_rx_bytes_fast_loop:
-0x66ec 028487 increase -8 ,loopcnt 
-0x66ed 028488 call uart_rx_8_bytes ,positive 
-0x66ee 028489 rtn zero 
-0x66ef 028490 branch uart_copy_rx_bytes_fast_loop ,positive 
-0x66f0 028491 increase 8 ,loopcnt 
-:      028492 uart_copy_rx_bytes_fast_loop_four:
-0x66f1 028493 increase -4 ,loopcnt 
-0x66f2 028494 call uart_rx_4_bytes ,positive 
-0x66f3 028495 rtn zero 
-0x66f4 028496 branch uart_copy_rx_bytes_fast_loop_four ,positive 
-0x66f5 028497 increase 4 ,loopcnt 
-0x66f6 028498 branch uart_copy_rx_bytes 
-:      028500 uart_rx_8_bytes:
-0x66f7 028501 ifetch 8 ,contru 
-0x66f8 028502 istore 8 ,contw 
-0x66f9 028503 rtn 
-:      028505 uart_rx_4_bytes:
-0x66fa 028506 ifetch 4 ,contru 
-0x66fb 028507 istore 4 ,contw 
-0x66fc 028508 rtn 
-:      028511 uart_copy_rx_bytes:
-0x66fd 028512 deposit loopcnt 
-0x66fe 028513 rtn blank 
-:      028514 uart_copy_rx_bytes_loop:
-0x66ff 028515 ifetch 1 ,contru 
-0x6700 028516 istore 1 ,contw 
-0x6701 028517 loop uart_copy_rx_bytes_loop 
-0x6702 028518 rtn 
-:      028521 uart_copy_rx2tx:
-0x6703 028522 deposit loopcnt 
-0x6704 028523 rtn blank 
-:      028524 uart_copy_rx2tx_loop:
-0x6705 028525 ifetch 1 ,contru 
-0x6706 028526 istore 1 ,contwu 
-0x6707 028527 loop uart_copy_rx2tx_loop 
-0x6708 028528 rtn 
-:      028533 app_store_nvram_event:
-0x6709 028534 jam bt_evt_store_nvram ,mem_fifo_temp 
-0x670a 028535 branch ui_ipc_send_event 
-:      028537 check_51cmd_store_reconn_info:
-:      028538 check_51cmd_update_device_record:
-0x670b 028539 bpatchx patch32_6 ,mem_patch32 
-0x670c 028540 fetch 1 ,mem_nv_data_number 
-0x670d 028541 rtn blank 
-0x670e 028542 call check_nvram 
-0x670f 028543 call init_device_list ,zero 
-0x6710 028544 call nvram_find_addr_from_bd_list 
-:      028545 write_device_record:
-0x6711 028546 fetch 1 ,mem_nv_data_number 
-0x6712 028547 icopy regc 
-0x6713 028548 fetcht 2 ,mem_nv_data_ptr 
-0x6714 028549 storet 2 ,mem_list_item_ptr 
-:      028550 write_device_loop_find:
-0x6715 028551 copy regc ,pdata 
-0x6716 028552 branch app_store_nvram_event ,blank 
-0x6717 028553 increase -1 ,regc 
-0x6718 028554 copy temp ,rega 
-0x6719 028555 ifetch 1 ,rega 
-0x671a 028556 fetcht 1 ,mem_select_list_item 
-0x671b 028557 isub temp ,null 
-0x671c 028558 call set_index_finded_device ,zero 
-0x671d 028559 branch write_device_loop_find0 ,positive 
-0x671e 028560 ifetch 1 ,rega 
-0x671f 028561 increase 1 ,pdata 
-0x6720 028562 istore 1 ,rega 
-:      028563 write_device_loop_find0:
-0x6721 028564 fetcht 2 ,mem_list_item_ptr 
-0x6722 028565 increase nv_data_len ,temp 
-0x6723 028566 storet 2 ,mem_list_item_ptr 
-0x6724 028567 branch write_device_loop_find 
-:      028569 set_index_finded_device:
-0x6725 028570 setarg 0 
-0x6726 028571 istore 1 ,rega 
-0x6727 028572 fetch 1 ,mem_temp_reconn_record 
-0x6728 028573 istore 1 ,contw 
-0x6729 028574 bne rec_3_mode ,set_index_finded_device_ble_mode 
-0x672a 028575 arg mem_link_key ,regb 
-:      028576 set_index_find_device_master_addr:
-0x672b 028577 ifetch 6 ,contr 
-0x672c 028578 istore 8 ,contw 
-0x672d 028579 setarg 0 
-0x672e 028580 istore 8 ,contw 
-0x672f 028581 copy regb ,contr 
-:      028582 store_rec_data_common:
-0x6730 028583 call memcpy16 
-0x6731 028584 force 1 ,null 
-0x6732 028585 rtn 
-:      028587 set_index_finded_device_ble_mode:
-0x6733 028588 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
-0x6734 028589 beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
-0x6735 028590 arg mem_le_ltk ,regb 
-0x6736 028591 branch set_index_find_device_master_addr 
-:      028593 set_index_finded_device_irk:
-0x6737 028594 arg mem_le_irk ,contr 
-0x6738 028595 call memcpy16 
-:      028596 store_ble_rec_data_common:
-0x6739 028597 arg mem_le_ltk ,contr 
-0x673a 028598 branch store_rec_data_common 
-:      028600 set_index_finded_device_ediv:
-0x673b 028601 arg mem_le_rand ,contr 
-0x673c 028602 call memcpy16 
-0x673d 028603 branch store_ble_rec_data_common 
-:      028606 nvram_find_addr_from_bd_list:
-0x673e 028607 call disable_user 
-0x673f 028608 fetch 1 ,mem_nv_data_number 
-0x6740 028609 rtn blank 
-0x6741 028610 fetch 2 ,mem_ui_state_map 
-0x6742 028611 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
-:      028612 find_addr_from_bd_list_ble_mode:
-0x6743 028613 bpatchx patch32_7 ,mem_patch32 
-0x6744 028614 fetch 1 ,mem_le_conn_peer_addr_type 
-0x6745 028615 beq master_public_addr ,find_addr_from_bd_list_static_addr 
-0x6746 028616 fetch 1 ,mem_le_plap + 5 
-0x6747 028617 compare 0xc0 ,pdata ,0xc0 
-0x6748 028618 branch find_addr_from_bd_list_static_addr ,true 
-0x6749 028619 compare 0x40 ,pdata ,0xc0 
-0x674a 028620 branch find_addr_from_bd_list_random_addr ,true 
-0x674b 028621 compare 0x00 ,pdata ,0xc0 
-0x674c 028622 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
-:      028623 find_addr_from_bd_list_static_addr:
-0x674d 028624 jam rec_4_mode_static_address ,mem_temp_reconn_record 
-0x674e 028625 fetch 6 ,mem_le_plap 
-0x674f 028626 branch find_addr_from_bd_list_common 
-:      028628 find_addr_from_bd_list_random_non_resolvable_private_address:
-0x6750 028629 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
-0x6751 028630 branch find_addr_from_bd_list_common 
-:      028633 find_addr_from_bd_list_random_addr:
-0x6752 028634 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
-0x6753 028635 branch find_addr_from_bd_list_common 
-:      028638 find_addr_from_bd_list_spp_mode:
-0x6754 028639 bpatchx patch33_0 ,mem_patch33 
-0x6755 028640 jam rec_3_mode ,mem_temp_reconn_record 
-0x6756 028641 fetch 6 ,mem_plap 
-:      028642 find_addr_from_bd_list_common:
-0x6757 028643 store 6 ,mem_temp_reconn_record + 1 
-0x6758 028644 fetch 2 ,mem_nv_data_ptr 
-0x6759 028645 ifetcht 1 ,pdata 
-0x675a 028646 pincrease 1 
-0x675b 028647 store 2 ,mem_list_item_ptr 
-0x675c 028648 storet 1 ,mem_select_list_item 
-0x675d 028649 fetch 1 ,mem_nv_data_number 
-0x675e 028650 icopy regc 
-:      028651 nvram_find_addr_from_list:
-0x675f 028652 fetch 2 ,mem_list_item_ptr 
-0x6760 028653 copy pdata ,rega 
-0x6761 028654 call nvram_find_addr_from_list_compare 
-0x6762 028655 rtn user 
-0x6763 028656 fetcht 2 ,mem_list_item_ptr 
-0x6764 028657 increase nv_data_len ,temp 
-0x6765 028658 storet 2 ,mem_list_item_ptr 
-0x6766 028659 increase -1 ,temp 
-0x6767 028660 ifetch 1 ,temp 
-0x6768 028661 store 1 ,mem_select_list_item 
-0x6769 028662 increase -1 ,regc 
-0x676a 028663 nbranch nvram_find_addr_from_list ,zero 
-0x676b 028664 fetch 1 ,mem_nv_data_number 
-0x676c 028665 pincrease decreased_one 
-0x676d 028666 store 1 ,mem_select_list_item 
-0x676e 028667 rtn 
-:      028668 nvram_find_addr_from_list_compare:
-0x676f 028669 fetch 1 ,mem_temp_reconn_record 
-0x6770 028670 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
-:      028671 find_master_addr_from_list_compare:
-0x6771 028672 arg mem_temp_reconn_record ,regb 
-0x6772 028673 arg 7 ,loopcnt 
-0x6773 028674 call string_compare 
-0x6774 028675 branch enable_user ,zero 
-0x6775 028676 rtn 
-:      028678 find_addr_from_list_compare_ble_mode:
-0x6776 028679 beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
-0x6777 028680 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
-0x6778 028681 branch find_master_addr_from_list_compare 
-:      028683 find_irk_form_list_compare:
-0x6779 028684 ifetcht 1 ,rega 
-0x677a 028685 isub temp ,null 
-0x677b 028686 nrtn zero 
-0x677c 028687 arg mem_le_prand ,contw 
-0x677d 028688 arg 16 ,loopcnt 
-0x677e 028689 call clear_mem 
-0x677f 028690 fetch 3 ,mem_le_plap + 3 
-0x6780 028691 store 3 ,mem_le_prand 
-0x6781 028692 call genernate_master_macaddress 
-0x6782 028693 fetch 2 ,mem_le_aes_128 + 13 
-0x6783 028694 byteswap pdata ,pdata 
-0x6784 028695 lshift8 pdata ,temp 
-0x6785 028696 ifetch 1 ,contr 
-0x6786 028697 iadd temp ,pdata 
-0x6787 028698 fetcht 3 ,mem_le_plap 
-0x6788 028699 isub temp ,null 
-0x6789 028700 branch enable_user ,zero 
-0x678a 028701 rtn 
-:      028704 genernate_master_macaddress:
-0x678b 028705 arg mem_le_prand ,contr 
-0x678c 028706 call load_data128 
-0x678d 028708 ifetch 1 ,rega 
-0x678e 028709 call load_regext 
-0x678f 028710 force 0x38 ,aes_ctrl 
-0x6790 028711 force 0x0 ,aes_ctrl 
-0x6791 028712 call wait_aes 
-0x6792 028713 arg mem_le_aes_128 ,contw 
-0x6793 028714 branch store_aes_result 
-:      028716 find_ediv_form_list_compare:
-0x6794 028717 ifetcht 1 ,rega 
-0x6795 028718 isub temp ,null 
-0x6796 028719 nrtn zero 
-0x6797 028720 copy contr ,rega 
-0x6798 028721 add contr ,8 ,regc 
-0x6799 028722 arg mem_le_rand ,regb 
-0x679a 028723 arg 8 ,loopcnt 
-0x679b 028724 call string_compare 
-0x679c 028725 branch enable_user ,zero 
-0x679d 028726 copy regc ,rega 
-0x679e 028727 arg mem_le_irk ,regb 
-0x679f 028728 arg 8 ,loopcnt 
-0x67a0 028729 call string_compare 
-0x67a1 028730 branch enable_user ,zero 
-0x67a2 028731 rtn 
-:      028733 check_nvram:
-0x67a3 028734 fetch 2 ,mem_nv_data_ptr 
-0x67a4 028735 ifetcht 1 ,pdata 
-0x67a5 028736 pincrease nv_data_len 
-0x67a6 028737 ifetch 1 ,pdata 
-0x67a7 028738 isub temp ,null 
-0x67a8 028739 rtn 
-:      028741 init_device_list:
-0x67a9 028742 fetch 1 ,mem_nv_data_number 
-0x67aa 028743 icopy loopcnt 
-0x67ab 028744 fetcht 2 ,mem_nv_data_ptr 
-0x67ac 028745 setarg 0 
-:      028746 init_device_list_loop:
-0x67ad 028747 istore 1 ,temp 
-0x67ae 028748 increase nv_data_len ,temp 
-0x67af 028749 pincrease 1 
-0x67b0 028750 loop init_device_list_loop 
-0x67b1 028751 rtn 
-:      028753 load_device_list:
-0x67b2 028754 bpatchx patch33_1 ,mem_patch33 
-0x67b3 028755 call nvram_find_addr_from_bd_list 
-0x67b4 028756 fetch 1 ,mem_state 
-0x67b5 028757 setflag user ,state_combkey ,pdata 
-0x67b6 028758 store 1 ,mem_state 
-0x67b7 028759 nbranch clear_key_exists ,user 
-0x67b8 028760 add rega ,10 ,contr 
-0x67b9 028762 arg mem_link_key ,contw 
-0x67ba 028763 call memcpy16 
-0x67bb 028764 branch check_link_key_load 
-:      028765 clear_key_exists:
-0x67bc 028766 jam 0 ,mem_link_key_exists 
-0x67bd 028767 rtn 
-:      028769 load_device_list_mode_4:
-0x67be 028770 fetch 9 ,mem_le_ediv 
-0x67bf 028771 branch clear_ltk_exists ,blank 
-0x67c0 028772 call nvram_find_addr_from_bd_list 
-0x67c1 028773 nbranch clear_ltk_exists ,user 
-0x67c2 028774 fetch 2 ,mem_list_item_ptr 
-0x67c3 028775 add pdata ,1 ,contr 
-0x67c4 028776 arg mem_le_irk ,contw 
-0x67c5 028777 call memcpy16 
-0x67c6 028778 arg mem_le_ltk ,contw 
-0x67c7 028779 call memcpy16 
-0x67c8 028780 jam 1 ,mem_ltk_exists 
-0x67c9 028781 rtn 
-:      028783 clear_ltk_exists:
-0x67ca 028784 jam 0 ,mem_ltk_exists 
-0x67cb 028785 rtn 
-:      028788 eeprom_store_le_reconn_info:
-0x67cc 028789 fetch 6 ,mem_le_plap 
-0x67cd 028790 store 6 ,mem_temp_lap 
-0x67ce 028791 jam rec_4_mode ,mem_record_bt_mode 
-0x67cf 028792 branch eeprom_store_reconn_info 
-:      028793 eeprom_store_bd_reconn_info:
-0x67d0 028794 fetch 6 ,mem_plap 
-0x67d1 028795 store 6 ,mem_temp_lap 
-0x67d2 028796 jam rec_3_mode ,mem_record_bt_mode 
-:      028797 eeprom_store_reconn_info:
-0x67d3 028798 fetch 1 ,mem_device_option 
-0x67d4 028799 beq dvc_op_module ,check_51cmd_update_device_record 
-0x67d5 028800 bbit1 dvc_op_mouse ,mouse_store_remote_bdaddr 
-0x67d6 028801 rtn 
-:      028804 check_link_key_load:
-0x67d7 028805 fetch 8 ,mem_link_key 
-0x67d8 028806 fetcht 8 ,mem_link_key + 8 
-0x67d9 028807 ior temp ,pdata 
-0x67da 028808 rtn blank 
-0x67db 028809 jam 1 ,mem_link_key_exists 
-0x67dc 028810 rtn 
-:      028817 gpio_set_wake_by_current_state:
-0x67dd 028818 bpatchx patch33_2 ,mem_patch33 
-0x67de 028819 set1 7 ,temp 
-0x67df 028820 call gpio_get_bit 
-0x67e0 028821 nsetflag true ,7 ,temp 
-:      028826 gpio_set_wake:
-0x67e1 028827 bpatchx patch33_3 ,mem_patch33 
-0x67e2 028828 sub temp ,ui_button_gpio_disable ,null 
-0x67e3 028829 rtn zero 
-0x67e4 028830 isolate0 7 ,temp 
-0x67e5 028831 and temp ,0x1f ,queue 
-0x67e6 028832 fetch 4 ,mem_gpio_wakeup_low 
-0x67e7 028833 qsetflag true ,pdata 
-0x67e8 028834 store 4 ,mem_gpio_wakeup_low 
-0x67e9 028835 fetch 4 ,mem_gpio_wakeup_high 
-0x67ea 028836 nqsetflag true ,pdata 
-0x67eb 028837 store 4 ,mem_gpio_wakeup_high 
-0x67ec 028838 rtn 
-:      028841 gpio_clr_wake:
-0x67ed 028842 bpatchx patch33_4 ,mem_patch33 
-0x67ee 028843 sub temp ,ui_button_gpio_disable ,null 
-0x67ef 028844 rtn zero 
-0x67f0 028845 isolate0 7 ,temp 
-0x67f1 028846 and temp ,0x1f ,queue 
-0x67f2 028847 fetch 4 ,mem_gpio_wakeup_low 
-0x67f3 028848 qset0 pdata 
-0x67f4 028849 store 4 ,mem_gpio_wakeup_low 
-0x67f5 028850 fetch 4 ,mem_gpio_wakeup_high 
-0x67f6 028851 qset0 pdata 
-0x67f7 028852 store 4 ,mem_gpio_wakeup_high 
-0x67f8 028853 rtn 
-:      028856 gpio_config_input_nowake:
-0x67f9 028857 call gpio_clr_wake 
-0x67fa 028858 branch gpio_config_input_without_wake 
-:      028861 gpio_config_input:
-0x67fb 028862 sub temp ,ui_button_gpio_disable ,null 
-0x67fc 028863 rtn zero 
-0x67fd 028864 ncall gpio_set_wake ,wake 
-:      028866 gpio_config_input_without_wake:
-0x67fe 028867 arg core_gpio_pd0 ,contw 
-0x67ff 028868 call gpio_set_bit 
-0x6800 028869 setflip gpio_active_bit ,temp 
-0x6801 028870 arg core_gpio_pu0 ,contw 
-0x6802 028871 call gpio_set_bit 
-0x6803 028872 set0 gpio_active_bit ,temp 
-0x6804 028873 arg core_gpio_oe0 ,contw 
-0x6805 028874 branch gpio_set_bit 
-:      028877 gpio_set_high_impedance:
-0x6806 028878 arg core_gpio_pd0 ,contw 
-0x6807 028879 call gpio_set_bit 
-0x6808 028880 set0 gpio_active_bit ,temp 
-0x6809 028881 arg core_gpio_pu0 ,contw 
-0x680a 028882 call gpio_set_bit 
-0x680b 028883 set0 gpio_active_bit ,temp 
-0x680c 028884 arg core_gpio_oe0 ,contw 
-0x680d 028885 branch gpio_set_bit 
-:      028889 gpio_config_output:
-0x680e 028890 sub temp ,ui_button_gpio_disable ,null 
-0x680f 028891 rtn zero 
-0x6810 028892 setflip gpio_active_bit ,temp 
-0x6811 028893 call gpio_out 
-:      028894 gpio_config_output0:
-0x6812 028895 set1 gpio_active_bit ,temp 
-0x6813 028896 arg core_gpio_oe0 ,contw 
-0x6814 028897 branch gpio_set_bit 
-:      028899 gpio_common:
-0x6815 028900 and temp ,0x07 ,queue 
-0x6816 028901 rshift3 temp ,pdata 
-0x6817 028902 and_into 3 ,pdata 
-0x6818 028903 iadd contw ,contw 
-0x6819 028904 ifetch 1 ,contw 
-0x681a 028905 rtn 
-:      028907 gpio_check_active:
-0x681b 028908 arg core_gpio_out0 ,contw 
-0x681c 028909 branch get_bit_common 
-:      028913 gpio_get_bit:
-0x681d 028914 arg core_gpio_in ,contw 
-:      028915 get_bit_common:
-0x681e 028916 call gpio_common 
-0x681f 028917 isolate1 gpio_active_bit ,temp 
-0x6820 028918 branch gpio_get_bit_reverse ,true 
-0x6821 028919 qisolate0 pdata 
-0x6822 028920 rtn 
-:      028921 gpio_get_bit_reverse:
-0x6823 028922 qisolate1 pdata 
-0x6824 028923 rtn 
-:      028925 gpio_out_inactive:
-0x6825 028926 sub temp ,ui_button_gpio_disable ,null 
-0x6826 028927 rtn zero 
-0x6827 028928 isolate1 7 ,null 
-0x6828 028929 branch gpio_out_flag 
-:      028931 gpio_out_active:
-0x6829 028932 sub temp ,ui_button_gpio_disable ,null 
-0x682a 028933 rtn zero 
-0x682b 028934 isolate0 7 ,null 
-:      028937 gpio_out_flag:
-0x682c 028938 setarg 0 
-0x682d 028939 nsetflag true ,gpio_active_bit ,pdata 
-0x682e 028940 ixor temp ,temp 
-:      028943 gpio_out:
-0x682f 028944 arg core_gpio_out0 ,contw 
-:      028947 gpio_set_bit:
-0x6830 028948 call gpio_common 
-0x6831 028949 isolate1 gpio_active_bit ,temp 
-0x6832 028950 qsetflag true ,pdata 
-0x6833 028951 istore 1 ,contw 
-0x6834 028952 rtn 
-:      028954 gpio_set_before_lpm_common:
-0x6835 028955 arg -1 ,rega 
-0x6836 028956 hfetch 1 ,core_gpio_sel1 
-0x6837 028957 compare 0x02 ,pdata ,0x03 
-0x6838 028958 call neglact4_from_23_pin ,true 
-0x6839 028960 compare 0x01 ,pdata ,0x03 
-0x683a 028961 call neglact2_form_25_pin ,true 
-0x683b 028963 compare 0x03 ,pdata ,0x03 
-0x683c 028964 call neglact2_form_25_pin ,true 
-0x683d 028966 isolate1 2 ,pdata 
-0x683e 028967 call neglect2_from_6_pin ,true 
-0x683f 028969 isolate1 3 ,pdata 
-0x6840 028970 call neglect4_from_9_pin ,true 
-0x6841 028972 isolate1 4 ,pdata 
-0x6842 028973 call neglact2_form_30_pin ,true 
-0x6843 028975 isolate1 6 ,pdata 
-0x6844 028976 nsetflag true ,04 ,rega 
-0x6845 028978 isolate1 7 ,pdata 
-0x6846 028979 nsetflag true ,05 ,rega 
-0x6847 028981 hfetch 1 ,core_gpio_sel2 
-0x6848 028982 isolate1 0 ,pdata 
-0x6849 028983 nsetflag true ,27 ,rega 
-0x684a 028984 isolate1 1 ,pdata 
-0x684b 028985 nsetflag true ,28 ,rega 
-0x684c 028986 isolate1 2 ,pdata 
-0x684d 028987 nsetflag true ,03 ,rega 
-0x684e 028988 isolate1 3 ,pdata 
-0x684f 028989 nsetflag true ,08 ,rega 
-0x6850 028990 isolate1 4 ,pdata 
-0x6851 028991 nsetflag true ,20 ,rega 
-0x6852 028992 isolate1 5 ,pdata 
-0x6853 028993 nsetflag true ,21 ,rega 
-0x6854 028994 isolate1 6 ,pdata 
-0x6855 028995 nsetflag true ,22 ,rega 
-0x6856 028996 isolate1 7 ,pdata 
-0x6857 028997 nsetflag true ,23 ,rega 
-0x6858 028999 hfetch 1 ,core_gpio_sel 
-0x6859 029000 isolate1 0 ,pdata 
-0x685a 029001 nsetflag true ,05 ,rega 
-0x685b 029002 isolate1 1 ,pdata 
-0x685c 029003 nsetflag true ,06 ,rega 
-0x685d 029004 isolate1 2 ,pdata 
-0x685e 029005 nsetflag true ,07 ,rega 
-0x685f 029006 isolate1 3 ,pdata 
-0x6860 029007 nsetflag true ,18 ,rega 
-0x6861 029008 isolate1 4 ,pdata 
-0x6862 029009 nsetflag true ,19 ,rega 
-0x6863 029010 isolate1 5 ,pdata 
-0x6864 029011 nsetflag true ,20 ,rega 
-0x6865 029012 isolate1 6 ,pdata 
-0x6866 029013 nsetflag true ,21 ,rega 
-0x6867 029014 isolate1 7 ,pdata 
-0x6868 029015 nsetflag true ,22 ,rega 
-0x6869 029017 hfetch 1 ,core_uart_ctrl 
-0x686a 029018 isolate1 4 ,pdata 
-0x686b 029019 call neglact2_form_2_pin ,true 
-0x686c 029020 bpatchx patch33_5 ,mem_patch33 
-0x686d 029022 hfetch 4 ,core_gpio_pu0 
-0x686e 029023 hfetcht 4 ,core_gpio_pd0 
-0x686f 029024 ior temp ,pdata 
-0x6870 029025 invert pdata ,pdata 
-0x6871 029026 iand rega ,pdata 
-0x6872 029028 hstore 4 ,core_gpio_oe0 
-0x6873 029029 rtn 
-:      029032 neglect2_from_6_pin:
-0x6874 029033 arg 6 ,queue 
-0x6875 029034 branch neglect_2_pin 
-:      029035 neglect4_from_9_pin:
-0x6876 029036 arg 9 ,queue 
-0x6877 029037 branch neglact_4_pin 
-:      029038 neglact4_from_23_pin:
-0x6878 029039 arg 23 ,queue 
-0x6879 029040 branch neglact_4_pin 
-:      029041 neglact2_form_25_pin:
-0x687a 029042 arg 25 ,queue 
-0x687b 029043 branch neglect_2_pin 
-:      029044 neglact2_form_30_pin:
-0x687c 029045 arg 30 ,queue 
-0x687d 029046 branch neglect_2_pin 
-:      029047 neglact2_form_2_pin:
-0x687e 029048 arg 2 ,queue 
-0x687f 029049 branch neglect_2_pin 
-:      029050 neglact_1_pin:
-0x6880 029051 arg 1 ,loopcnt 
-0x6881 029052 branch neglect_pin_loop 
-:      029053 neglact_4_pin:
-0x6882 029054 arg 4 ,loopcnt 
-0x6883 029055 branch neglect_pin_loop 
-:      029056 neglect_2_pin:
-0x6884 029057 arg 2 ,loopcnt 
-:      029058 neglect_pin_loop:
-0x6885 029059 qset0 rega 
-0x6886 029060 increase 1 ,queue 
-0x6887 029061 loop neglect_pin_loop 
-0x6888 029062 rtn 
-:      029070 gpio_cfg_uart_tx_output:
-0x6889 029071 call gpio_uart2gpio 
-0x688a 029072 arg uart_wakeup_tx ,temp 
-0x688b 029073 branch gpio_config_output 
-:      029075 gpio_pu_uart_tx:
-0x688c 029076 call gpio_cfg_uart_tx_output 
-0x688d 029077 arg uart_wakeup_tx ,temp 
-0x688e 029078 branch gpio_out_inactive 
-:      029082 gpio_rx_config_input_with_pu:
-0x688f 029083 call gpio_uart2gpio 
-0x6890 029084 hfetch 1 ,core_gpio_pu0 
-0x6891 029085 set1 uart_wakeup_rx ,pdata 
-0x6892 029086 hstore 1 ,core_gpio_pu0 
-0x6893 029087 arg uart_wakeup_rx ,temp 
-0x6894 029088 branch gpio_config_input 
-:      029090 gpio_uart2gpio:
-0x6895 029091 hfetch 1 ,core_gpio_sel1 
-0x6896 029092 and_into 0xfb ,pdata 
-0x6897 029093 hstore 1 ,core_gpio_sel1 
-0x6898 029094 rtn 
-:      029096 gpio_check_uart_state:
-0x6899 029097 hfetch 1 ,core_gpio_sel1 
-0x689a 029098 isolate1 2 ,pdata 
-0x689b 029099 rtn 
-:      029101 load_chip_option:
-0x689c 029102 call otp_enable_chgpump 
-0x689d 029103 setarg otp_chip_functions 
-0x689e 029104 arg mem_chip_functions ,rega 
-0x689f 029105 arg 0x02 ,temp 
-0x68a0 029106 call otpd_read_data 
-0x68a1 029107 branch otp_disable_chgpump 
-:      029110 load_adc_init:
-0x68a2 029111 call otp_enable_chgpump 
-0x68a3 029112 setarg otp_adc_io_0_5v_addr 
-0x68a4 029113 arg mem_0_5_adc_io_data ,rega 
-0x68a5 029114 arg 14 ,temp 
-0x68a6 029115 call otpd_read_data 
-0x68a7 029116 branch otp_disable_chgpump 
-:      029120 adc_init_data:
-0x68a8 029121 bpatchx patch33_6 ,mem_patch33 
-0x68a9 029123 call load_adc_init 
-0x68aa 029125 fetch 1 ,mem_adc_config_flag 
-0x68ab 029126 beq adc_config_vinlpm ,adc_init_data_vinlpm 
-0x68ac 029127 beq adc_config_hvin ,adc_init_data_hvin 
-0x68ad 029128 beq adc_config_gpio ,adc_init_data_io 
-0x68ae 029129 rtn 
-:      029131 adc_init_data_vinlpm:
-0x68af 029132 fetcht 2 ,mem_otp_adc_flag 
-0x68b0 029133 setarg otp_adc_flag 
-0x68b1 029134 isub temp ,null 
-0x68b2 029135 branch adc_check_data_vinlpm ,zero 
-0x68b3 029136 setarg 0x4dfa 
-0x68b4 029137 store 2 ,mem_3v_adc_vinlpm_data 
-0x68b5 029138 setarg 0x4894 
-0x68b6 029139 store 2 ,mem_2v_adc_vinlpm_data 
-0x68b7 029140 branch set_vdd_reference_voltage_1v 
-:      029142 adc_check_data_vinlpm:
-0x68b8 029143 fetch 2 ,mem_3v_adc_vinlpm_data 
-0x68b9 029144 nbranch adc_check_2v_vinlpm ,blank 
-0x68ba 029145 setarg 0x4dfa 
-0x68bb 029146 store 2 ,mem_3v_adc_vinlpm_data 
-:      029147 adc_check_2v_vinlpm:
-0x68bc 029148 fetch 2 ,mem_2v_adc_vinlpm_data 
-0x68bd 029149 nbranch set_vdd_reference_voltage_1v ,blank 
-0x68be 029150 setarg 0x4894 
-0x68bf 029151 store 2 ,mem_2v_adc_vinlpm_data 
-:      029152 set_vdd_reference_voltage_1v:
-0x68c0 029153 setarg 100 
-0x68c1 029154 store 2 ,mem_reference_voltage 
-0x68c2 029155 rtn 
-:      029157 adc_init_data_hvin:
-0x68c3 029158 fetcht 2 ,mem_otp_adc_flag 
-0x68c4 029159 setarg otp_adc_flag 
-0x68c5 029160 isub temp ,null 
-0x68c6 029161 branch adc_check_data_hvin ,zero 
-0x68c7 029162 setarg 0x5932 
-0x68c8 029163 store 2 ,mem_5v_adc_hvin_data 
-0x68c9 029164 setarg 0x4323 
-0x68ca 029165 store 2 ,mem_1v_adc_hvin_data 
-0x68cb 029166 branch set_vdd_reference_voltage_4v 
-:      029168 adc_check_data_hvin:
-0x68cc 029169 fetch 2 ,mem_5v_adc_hvin_data 
-0x68cd 029170 nbranch adc_check_1v_hvin ,blank 
-0x68ce 029171 setarg 0x5932 
-0x68cf 029172 store 2 ,mem_5v_adc_hvin_data 
-:      029173 adc_check_1v_hvin:
-0x68d0 029174 fetch 2 ,mem_1v_adc_hvin_data 
-0x68d1 029175 nbranch set_vdd_reference_voltage_4v ,blank 
-0x68d2 029176 setarg 0x4323 
-0x68d3 029177 store 2 ,mem_1v_adc_hvin_data 
-:      029178 set_vdd_reference_voltage_4v:
-0x68d4 029179 setarg 400 
-0x68d5 029180 store 2 ,mem_reference_voltage 
-0x68d6 029181 rtn 
-:      029183 adc_init_data_io:
-0x68d7 029184 fetcht 2 ,mem_otp_adc_flag 
-0x68d8 029185 setarg otp_adc_flag 
-0x68d9 029186 isub temp ,null 
-0x68da 029187 branch adc_check_data_io ,zero 
-0x68db 029188 setarg 0x6946 
-0x68dc 029189 store 2 ,mem_1v_adc_io_data 
-0x68dd 029190 setarg 0x5377 
-0x68de 029191 store 2 ,mem_0_5_adc_io_data 
-0x68df 029192 branch set_vdd_reference_voltage_0_5v 
-:      029194 adc_check_data_io:
-0x68e0 029195 fetch 2 ,mem_1v_adc_io_data 
-0x68e1 029196 nbranch adc_check_0_5v_io ,blank 
-0x68e2 029197 setarg 0x6946 
-0x68e3 029198 store 2 ,mem_1v_adc_io_data 
-:      029199 adc_check_0_5v_io:
-0x68e4 029200 fetch 2 ,mem_0_5_adc_io_data 
-0x68e5 029201 nbranch set_vdd_reference_voltage_0_5v ,blank 
-0x68e6 029202 setarg 0x5377 
-0x68e7 029203 store 2 ,mem_0_5_adc_io_data 
-:      029204 set_vdd_reference_voltage_0_5v:
-0x68e8 029205 setarg 50 
-0x68e9 029206 store 2 ,mem_reference_voltage 
-0x68ea 029207 rtn 
-:      029210 adc_set_mode:
-0x68eb 029211 fetch 1 ,mem_adc_config_flag 
-0x68ec 029212 beq adc_config_vinlpm ,adc_check_vinlpm 
-0x68ed 029213 beq adc_config_hvin ,adc_check_hvin 
-0x68ee 029214 beq adc_config_gpio ,adc_check_gpio 
-0x68ef 029215 rtn 
-:      029216 adc_check_vinlpm:
-0x68f0 029217 jam 0xbf ,rf_adc_mode 
-0x68f1 029218 branch read_adc 
-:      029219 adc_check_hvin:
-0x68f2 029220 jam 0xaf ,rf_adc_mode 
-0x68f3 029221 branch read_adc 
-:      029222 adc_check_gpio:
-0x68f4 029223 jam 0x8f ,rf_adc_mode 
-0x68f5 029224 fetch 1 ,mem_adc_channel 
-0x68f6 029225 hstore 1 ,rf_adc_ch 
-0x68f7 029226 branch read_adc 
-:      029227 read_adc:
-0x68f8 029228 bpatchx patch33_7 ,mem_patch33 
-0x68f9 029229 hfetch 1 ,core_uart_baud + 1 
-0x68fa 029230 set1 7 ,pdata 
-0x68fb 029231 hstore 1 ,core_uart_baud + 1 
-0x68fc 029232 hfetch 1 ,rf_adc_ch 
-0x68fd 029233 or_into 0x30 ,pdata 
-0x68fe 029234 hstore 1 ,rf_adc_ch 
-0x68ff 029235 jam 0x7c ,rfen_adc 
-0x6900 029236 jam 0xaa ,rf_adc_gc 
-0x6901 029237 nop 5000 
-0x6902 029238 hfetcht 2 ,core_adc_sum 
-0x6903 029239 hfetch 1 ,core_uart_baud + 1 
-0x6904 029240 set0 7 ,pdata 
-0x6905 029241 hstore 1 ,core_uart_baud + 1 
-0x6906 029242 storet 2 ,mem_adc_current_value 
-0x6907 029243 rtn 
-:      029245 vdd_calculate_by_mode:
-0x6908 029246 bpatchx patch34_0 ,mem_patch34 
-0x6909 029247 fetch 1 ,mem_adc_config_flag 
-0x690a 029248 beq adc_config_vinlpm ,vdd_calculate_vinlpm 
-0x690b 029249 beq adc_config_hvin ,vdd_calculate_hvin 
-0x690c 029250 beq adc_config_gpio ,vdd_calculate_io 
-0x690d 029251 rtn 
-:      029253 vdd_calculate_vinlpm:
-0x690e 029254 fetch 2 ,mem_3v_adc_vinlpm_data 
-0x690f 029255 fetcht 2 ,mem_2v_adc_vinlpm_data 
-0x6910 029256 arg 200 ,regc 
-0x6911 029257 branch vdd_calculate 
-:      029259 vdd_calculate_hvin:
-0x6912 029260 fetch 2 ,mem_5v_adc_hvin_data 
-0x6913 029261 fetcht 2 ,mem_1v_adc_hvin_data 
-0x6914 029262 arg 100 ,regc 
-0x6915 029263 branch vdd_calculate 
-:      029265 vdd_calculate_io:
-0x6916 029266 fetch 2 ,mem_1v_adc_io_data 
-0x6917 029267 fetcht 2 ,mem_0_5_adc_io_data 
-0x6918 029268 arg 50 ,regc 
-0x6919 029269 branch vdd_calculate 
-:      029271 vdd_calculate:
-0x691a 029272 isub temp ,rega 
-0x691b 029273 fetch 2 ,mem_adc_current_value 
-0x691c 029274 isub temp ,pdata 
-0x691d 029275 nbranch vdd_calculate1 ,positive 
-0x691e 029276 fetcht 2 ,mem_reference_voltage 
-0x691f 029277 imul32 temp ,regb 
-0x6920 029278 copy regc ,pdata 
-0x6921 029279 imul32 rega ,pdata 
-0x6922 029280 iadd regb ,pdata 
-:      029281 vdd_calculate2:
-0x6923 029282 idiv rega 
-0x6924 029283 call wait_div_end 
-0x6925 029284 quotient pdata 
-0x6926 029285 rtn 
-:      029287 vdd_calculate1:
-0x6927 029288 copy temp ,pdata 
-0x6928 029289 fetcht 2 ,mem_adc_current_value 
-0x6929 029290 isub temp ,pdata 
-0x692a 029291 fetcht 2 ,mem_reference_voltage 
-0x692b 029292 imul32 temp ,regb 
-0x692c 029293 copy regc ,pdata 
-0x692d 029294 imul32 rega ,pdata 
-0x692e 029295 isub regb ,pdata 
-0x692f 029296 branch vdd_calculate2 
-:      029307 adc_bat_percent_lowpower_out:
-0x6930 029308 ifetch 8 ,rega 
-0x6931 029309 store 8 ,mem_pdatatemp 
-0x6932 029310 fetch 2 ,mem_pdatatemp 
-0x6933 029311 fetcht 2 ,mem_pdatatemp + 2 
-0x6934 029312 isub temp ,rega 
-0x6935 029313 fetch 2 ,mem_pdatatemp + 6 
-0x6936 029314 isub temp ,regb 
-0x6937 029315 fetcht 2 ,mem_pdatatemp + 4 
-0x6938 029316 isub temp ,null 
-0x6939 029317 ncall adc_set_low_power_flag ,positive 
-0x693a 029318 mul32 regb ,100 ,pdata 
-0x693b 029319 idiv rega 
-0x693c 029320 call wait_div_end 
-0x693d 029321 quotient pdata 
-0x693e 029322 call adc_set_no_power_flag ,blank 
-0x693f 029323 rtn 
-:      029324 adc_set_low_power_flag:
-0x6940 029325 fetch 1 ,mem_adc_power_flag 
-0x6941 029326 set1 0 ,pdata 
-0x6942 029327 store 1 ,mem_adc_power_flag 
-0x6943 029328 rtn 
-:      029329 adc_set_no_power_flag:
-0x6944 029330 fetcht 1 ,mem_adc_power_flag 
-0x6945 029331 set1 1 ,temp 
-0x6946 029332 storet 1 ,mem_adc_power_flag 
-0x6947 029333 rtn 
-:      029338 keyscan_key_init:
-0x6948 029339 fetch 2 ,mem_key_num_ptr 
-0x6949 029340 ifetch 1 ,pdata 
-:      029341 keyscan_key_init_next:
-0x694a 029342 rtn blank 
-0x694b 029343 copy pdata ,loopcnt 
-0x694c 029345 fetch 2 ,mem_keyscan_ptr 
-0x694d 029346 increase 3 ,pdata 
-0x694e 029347 copy pdata ,rega 
-:      029348 keyscan_key_init_lp1:
-0x694f 029349 ifetcht 1 ,rega 
-0x6950 029350 call gpio_config_input 
-0x6951 029351 increase key_conf_struct_len ,rega 
-0x6952 029352 loop keyscan_key_init_lp1 
-:      029353 keyscan_key_init_end:
-0x6953 029354 rtn 
-:      029356 keyscan_scan_key:
-0x6954 029357 fetch 2 ,mem_keyscan_ptr 
-0x6955 029358 increase 3 ,pdata 
-0x6956 029359 copy pdata ,rega 
-0x6957 029361 force 0 ,regb 
-0x6958 029362 jam 0 ,mem_key_value_temp 
-:      029363 keyscan_scan_key_lp1:
-0x6959 029364 ifetcht 1 ,rega 
-0x695a 029365 call gpio_get_bit 
-0x695b 029366 bpatchx patch34_1 ,mem_patch34 
-0x695c 029367 fetch 2 ,mem_key_value_temp 
-0x695d 029368 copy regb ,queue 
-0x695e 029369 qsetflag true ,pdata 
-0x695f 029370 store 2 ,mem_key_value_temp 
-0x6960 029371 increase key_conf_struct_len ,rega 
-0x6961 029372 increase 1 ,regb 
-0x6962 029373 fetch 2 ,mem_key_num_ptr 
-0x6963 029374 ifetch 1 ,pdata 
-:      029375 keyscan_scan_key_lp1_next:
-0x6964 029376 ixor regb ,null 
-0x6965 029377 nbranch keyscan_scan_key_lp1 ,zero 
-0x6966 029378 fetch 2 ,mem_key_value_temp 
-0x6967 029379 fetcht 2 ,mem_key_value 
-0x6968 029380 ixor temp ,null 
-0x6969 029381 rtn zero 
-0x696a 029382 enable user 
-0x696b 029383 rtn 
-:      029385 keyscan_process_lpm_before:
-0x696c 029386 fetch 2 ,mem_key_num_ptr 
-0x696d 029387 ifetch 1 ,pdata 
-:      029388 keyscan_process_lpm_before_next:
-0x696e 029389 rtn blank 
-0x696f 029390 copy pdata ,loopcnt 
-0x6970 029391 fetch 2 ,mem_keyscan_ptr 
-0x6971 029392 increase 3 ,pdata 
-0x6972 029393 copy pdata ,rega 
-:      029394 keyscan_process_lpm_before_lp1:
-0x6973 029395 ifetcht 1 ,rega 
-0x6974 029396 call gpio_set_wake_by_current_state 
-0x6975 029397 increase key_conf_struct_len ,rega 
-0x6976 029398 loop keyscan_process_lpm_before_lp1 
-:      029399 keyscan_process_lpm_before_end:
-0x6977 029400 rtn 
-:      029402 keyscan_key_process:
-0x6978 029403 arg key_scan_timer ,queue 
-0x6979 029404 call timer_check 
-0x697a 029405 nrtn blank 
-0x697b 029406 setarg 0x20 
-0x697c 029407 arg key_scan_timer ,queue 
-0x697d 029408 call timer_init 
-0x697e 029409 disable user 
-0x697f 029410 call keyscan_process_lpm_before 
-0x6980 029411 bpatchx patch34_2 ,mem_patch34 
-0x6981 029412 fetch 2 ,mem_key_num_ptr 
-0x6982 029413 ifetch 1 ,pdata 
-:      029414 keyscan_key_process_next:
-0x6983 029415 rtn blank 
-0x6984 029416 call keyscan_scan_key 
-0x6985 029417 nbranch lpm_button_clean_wake_lock ,user 
-0x6986 029418 call lpm_button_get_wake_lock 
-0x6987 029419 disable user 
-0x6988 029420 fetch 2 ,mem_key_value_temp 
-0x6989 029421 store 2 ,mem_key_value_temp4 
-0x698a 029422 jam 0 ,mem_key_value_temp6 
-0x698b 029423 force 0 ,queue 
-:      029424 keyscan_key_lp1:
-0x698c 029425 fetch 2 ,mem_key_value 
-0x698d 029426 rshift pdata ,temp 
-0x698e 029427 storet 2 ,mem_key_value 
-0x698f 029428 and pdata ,0x01 ,pdata 
-0x6990 029429 fetcht 2 ,mem_key_value_temp4 
-0x6991 029430 and temp ,0x01 ,rega 
-0x6992 029431 rshift temp ,temp 
-0x6993 029432 storet 2 ,mem_key_value_temp4 
-0x6994 029433 ixor rega ,null 
-0x6995 029434 ncall keyscan_send_key_data ,zero 
-0x6996 029435 fetch 2 ,mem_key_num_ptr 
-0x6997 029436 ifetch 1 ,pdata 
-:      029437 keyscan_key_lp1_next:
-0x6998 029438 fetcht 1 ,mem_key_value_temp6 
-0x6999 029439 increase 1 ,temp 
-0x699a 029440 storet 1 ,mem_key_value_temp6 
-0x699b 029441 copy temp ,queue 
-0x699c 029442 ixor queue ,null 
-0x699d 029443 nbranch keyscan_key_lp1 ,zero 
-0x699e 029444 fetch 2 ,mem_key_value_temp 
-0x699f 029445 store 2 ,mem_key_value 
-0x69a0 029446 rtn 
-:      029447 keyscan_send_key_data:
-0x69a1 029448 bpatchx patch34_3 ,mem_patch34 
-0x69a2 029449 fetch 2 ,mem_keyscan_ptr 
-0x69a3 029450 increase 1 ,pdata 
-0x69a4 029451 ifetch 2 ,pdata 
-0x69a5 029452 branch callback_func 
-:      029463 pwm_init:
-0x69a6 029464 hfetch 1 ,core_clksel 
-0x69a7 029465 ior rega ,pdata 
-0x69a8 029466 hstore 1 ,core_clksel 
-0x69a9 029467 hfetch 2 ,core_clkoff 
-0x69aa 029468 set0 clock_off_pwm ,pdata 
-0x69ab 029469 hstore 2 ,core_clkoff 
-:      029470 delay_nop100:
-0x69ac 029471 nop 100 
-0x69ad 029472 rtn 
-:      029483 pwm_out_set:
-0x69ae 029484 fetcht 3 ,mem_pdatatemp + 2 
-0x69af 029485 setarg pwm_12mhz 
-0x69b0 029486 idiv temp 
-0x69b1 029487 call wait_div_end 
-0x69b2 029488 quotient temp 
-0x69b3 029489 fetch 1 ,mem_pdatatemp + 5 
-0x69b4 029490 imul32 temp ,pdata 
-0x69b5 029491 div pdata ,100 
-0x69b6 029492 call wait_div_end 
-0x69b7 029493 quotient rega 
-0x69b8 029494 copy temp ,pdata 
-0x69b9 029495 isub rega ,regb 
-0x69ba 029496 fetch 1 ,mem_pdatatemp + 1 
-0x69bb 029497 call pwm_duty_cycle_set 
-0x69bc 029498 fetch 1 ,mem_pdatatemp 
-0x69bd 029499 branch pwm_enable 
-:      029502 pwm_duty_cycle_set:
-0x69be 029503 beq 0 ,pwm_pwm0_duty_set 
-0x69bf 029504 beq 1 ,pwm_pwm1_duty_set 
-0x69c0 029505 beq 2 ,pwm_pwm2_duty_set 
-0x69c1 029506 beq 3 ,pwm_pwm3_duty_set 
-0x69c2 029507 beq 4 ,pwm_pwm4_duty_set 
-0x69c3 029508 beq 5 ,pwm_pwm5_duty_set 
-:      029509 pwm_pwm0_duty_set:
-0x69c4 029510 arg core_pwm_pcnt0 ,contw 
-0x69c5 029511 branch pwm_set_pncnt 
-:      029512 pwm_pwm1_duty_set:
-0x69c6 029513 arg core_pwm_pcnt1 ,contw 
-0x69c7 029514 branch pwm_set_pncnt 
-:      029515 pwm_pwm2_duty_set:
-0x69c8 029516 arg core_pwm_pcnt2 ,contw 
-0x69c9 029517 branch pwm_set_pncnt 
-:      029518 pwm_pwm3_duty_set:
-0x69ca 029519 arg core_pwm_pcnt3 ,contw 
-0x69cb 029520 branch pwm_set_pncnt 
-:      029521 pwm_pwm4_duty_set:
-0x69cc 029522 arg core_pwm_pcnt4 ,contw 
-0x69cd 029523 branch pwm_set_pncnt 
-:      029524 pwm_pwm5_duty_set:
-0x69ce 029525 arg core_pwm_pcnt5 ,contw 
-0x69cf 029526 branch pwm_set_pncnt 
-:      029527 pwm_set_pncnt:
-0x69d0 029528 copy rega ,pdata 
-0x69d1 029529 istore 2 ,contw 
-0x69d2 029530 copy regb ,pdata 
-0x69d3 029531 istore 2 ,contw 
-0x69d4 029532 rtn 
-:      029536 pwm_enable:
-0x69d5 029537 enable user 
-0x69d6 029538 branch pwm_gpio_set 
-:      029539 pwm_disable:
-0x69d7 029540 disable user 
-:      029541 pwm_gpio_set:
-0x69d8 029542 beq 4 ,pwm_gpio4_set 
-0x69d9 029543 beq 5 ,pwm_gpio5_set 
-0x69da 029544 beq 27 ,pwm_gpio27_set 
-0x69db 029545 beq 28 ,pwm_gpio28_set 
-0x69dc 029546 beq 3 ,pwm_gpio3_set 
-0x69dd 029547 beq 8 ,pwm_gpio8_set 
-0x69de 029548 beq 20 ,pwm_gpio20_set 
-0x69df 029549 beq 21 ,pwm_gpio21_set 
-0x69e0 029550 beq 22 ,pwm_gpio22_set 
-0x69e1 029551 beq 23 ,pwm_gpio23_set 
-0x69e2 029552 rtn 
-:      029555 pwm_gpio4_set:
-0x69e3 029556 arg 6 ,queue 
-0x69e4 029557 branch pwm_one_set_select 
-:      029558 pwm_gpio5_set:
-0x69e5 029559 arg 7 ,queue 
-0x69e6 029560 branch pwm_one_set_select 
-:      029561 pwm_gpio27_set:
-0x69e7 029562 arg 8 ,queue 
-0x69e8 029563 branch pwm_one_set_select 
-:      029564 pwm_gpio28_set:
-0x69e9 029565 arg 9 ,queue 
-0x69ea 029566 branch pwm_one_set_select 
-:      029567 pwm_gpio3_set:
-0x69eb 029568 arg 10 ,queue 
-0x69ec 029569 branch pwm_one_set_select 
-:      029570 pwm_gpio8_set:
-0x69ed 029571 arg 11 ,queue 
-0x69ee 029572 branch pwm_one_set_select 
-:      029573 pwm_gpio20_set:
-0x69ef 029574 arg 12 ,queue 
-0x69f0 029575 branch pwm_tw0_set_select 
-:      029576 pwm_gpio21_set:
-0x69f1 029577 arg 13 ,queue 
-0x69f2 029578 branch pwm_tw0_set_select 
-:      029579 pwm_gpio22_set:
-0x69f3 029580 arg 14 ,queue 
-0x69f4 029581 branch pwm_tw0_set_select 
-:      029582 pwm_gpio23_set:
-0x69f5 029583 arg 15 ,queue 
-0x69f6 029584 branch pwm_tw0_set_select 
-:      029586 pwm_set_select:
-0x69f7 029587 hfetch 2 ,core_gpio_sel1 
-0x69f8 029588 qsetflag user ,pdata 
-0x69f9 029589 hstore 2 ,core_gpio_sel1 
-0x69fa 029590 copy rega ,queue 
-0x69fb 029591 hfetch 1 ,core_gpio_key2 
-0x69fc 029592 qsetflag user ,pdata 
-0x69fd 029593 hstore 1 ,core_gpio_key2 
-0x69fe 029594 rtn 
-:      029596 pwm_one_set_select:
-0x69ff 029597 add queue ,-4 ,rega 
-0x6a00 029598 branch pwm_set_select 
-:      029600 pwm_tw0_set_select:
-0x6a01 029601 add queue ,-10 ,rega 
-0x6a02 029602 branch pwm_set_select 
-:      029607 rfcomm_init:
-0x6a03 029608 rtn wake 
-0x6a04 029609 jam 0 ,mem_rfcomm_send_more_pkt 
-0x6a05 029610 jam bits9600 ,memremoterpnbitrate 
-0x6a06 029611 jam databits8 ,memremoteprndatabits 
-0x6a07 029612 jam 0x11 ,memremoteprnxon 
-0x6a08 029613 jam 0x13 ,memremoteprnxoff 
-0x6a09 029614 setarg 0 
-0x6a0a 029615 store 3 ,memremoteprnstopbit 
-0x6a0b 029616 store 1 ,mem_spp_state 
-0x6a0c 029617 jam 0 ,memui_reconnect_mode 
-:      029619 rfcomm_init_spp:
-0x6a0d 029620 bpatchx patch34_4 ,mem_patch34 
-0x6a0e 029621 setarg 0 
-0x6a0f 029622 store 1 ,mem_spp_state 
-0x6a10 029623 store 1 ,mem_remote_spp_channel 
-0x6a11 029624 store 1 ,mem_pn_dlci 
-0x6a12 029625 fetch 1 ,mem_credit_flag 
-0x6a13 029626 beq credit_enable ,rfcomm_init_spp_with_credit 
-0x6a14 029627 jam 0x50 ,mem_credit_given 
-0x6a15 029628 rtn 
-:      029630 rfcomm_init_spp_with_credit:
-0x6a16 029631 jam 0x00 ,mem_credit_given 
-0x6a17 029632 rtn 
-:      029634 set_cr_bit:
-0x6a18 029635 or_into 0x02 ,temp 
-0x6a19 029636 rtn 
-:      029648 rfcomm_calculate_fcs_sabm:
-0x6a1a 029649 copy temp ,pdata 
-0x6a1b 029650 reverse pdata ,pdata 
-0x6a1c 029651 store 1 ,memfcstemp3 
-0x6a1d 029652 force ini_tx_sabm ,pdata 
-0x6a1e 029653 reverse pdata ,pdata 
-0x6a1f 029654 store 1 ,memfcstemp2 
-0x6a20 029655 force 0x01 ,pdata 
-0x6a21 029656 reverse pdata ,pdata 
-0x6a22 029657 store 1 ,memfcstemp1 
-0x6a23 029658 call caculate_fcs 
-0x6a24 029659 copy temp ,pdata 
-0x6a25 029660 rtn 
-:      029661 rfcomm_calculate_fcs_ua:
-0x6a26 029662 reverse pdata ,pdata 
-0x6a27 029663 store 1 ,memfcstemp3 
-0x6a28 029664 force rsp_tx_ua ,pdata 
-0x6a29 029665 reverse pdata ,pdata 
-0x6a2a 029666 store 1 ,memfcstemp2 
-0x6a2b 029667 force 0x01 ,pdata 
-0x6a2c 029668 reverse pdata ,pdata 
-0x6a2d 029669 store 1 ,memfcstemp1 
-0x6a2e 029670 branch caculate_fcs 
-:      029672 rfcomm_calculate_fcs_dlci0:
-0x6a2f 029673 fetch 1 ,mem_rfcomm_initiator 
-0x6a30 029674 branch rfcomm_calculate_fcs_dlci0_res ,blank 
-0x6a31 029675 setarg 0x70 
-0x6a32 029676 rtn 
-:      029677 rfcomm_calculate_fcs_dlci0_res:
-0x6a33 029678 setarg 0xaa 
-0x6a34 029679 rtn 
-:      029681 rfcomm_save_fcs_uih:
-0x6a35 029682 reverse pdata ,pdata 
-0x6a36 029683 store 1 ,memfcstemp3 
-0x6a37 029684 force rsp_rx_uih ,pdata 
-0x6a38 029685 call caculate_uihdata_fcs 
-0x6a39 029686 fetcht 2 ,mem_contw_temp 
-0x6a3a 029687 copy temp ,contw 
-0x6a3b 029688 istore 1 ,contw 
-0x6a3c 029689 copy contw ,temp 
-0x6a3d 029690 storet 2 ,mem_contw_temp 
-0x6a3e 029691 force rsp_rx_uih_wdata ,pdata 
-0x6a3f 029692 call caculate_uihdata_fcs 
-0x6a40 029693 fetcht 2 ,mem_contw_temp 
-0x6a41 029694 copy temp ,contw 
-0x6a42 029695 istore 1 ,contw 
-0x6a43 029696 rtn 
-:      029705 caculate_uihdata_fcs:
-0x6a44 029706 reverse pdata ,pdata 
-0x6a45 029707 store 1 ,memfcstemp2 
-0x6a46 029708 fetch 2 ,memfcstemp2 
-0x6a47 029709 lshift8 pdata ,pdata 
-0x6a48 029710 store 3 ,mem_mod2div_temp 
-0x6a49 029711 arg 0x107 ,rega 
-0x6a4a 029712 arg 0xf ,regb 
-0x6a4b 029713 call mod2div 
-0x6a4c 029714 xor_into 0xd7 ,pdata 
-0x6a4d 029715 invert pdata ,pdata 
-0x6a4e 029716 reverse pdata ,pdata 
-0x6a4f 029717 rtn 
-:      029727 caculate_fcs:
-0x6a50 029728 fetch 3 ,memfcstemp1 
-0x6a51 029729 store 3 ,mem_mod2div_temp 
-0x6a52 029730 arg 0x107 ,rega 
-0x6a53 029731 arg 0xf ,regb 
-0x6a54 029732 call mod2div 
-0x6a55 029733 lshift8 pdata ,pdata 
-0x6a56 029734 arg 0x7 ,regb 
-0x6a57 029735 call mod2div 
-0x6a58 029736 xor_into 0x2b ,pdata 
-0x6a59 029737 invert pdata ,pdata 
-0x6a5a 029738 reverse pdata ,pdata 
-0x6a5b 029739 copy pdata ,temp 
-0x6a5c 029740 rtn 
-:      029742 mod2div:
-0x6a5d 029743 arg 0 ,regc 
-0x6a5e 029744 copy regb ,loopcnt 
-0x6a5f 029745 call right_shift_n 
-0x6a60 029746 icopy temp 
-:      029747 mod2div_loop:
-0x6a61 029752 copy temp ,pdata 
-0x6a62 029753 lshift regc ,regc 
-0x6a63 029754 bbit0 8 ,mod2div_not_enough_reduction 
-0x6a64 029755 ixor rega ,temp 
-0x6a65 029756 increase 1 ,regc 
-:      029757 mod2div_not_enough_reduction:
-0x6a66 029758 lshift temp ,temp 
-0x6a67 029759 fetch 3 ,mem_mod2div_temp 
-0x6a68 029760 increase -1 ,regb 
-0x6a69 029761 compare 0xff ,regb ,0xff 
-0x6a6a 029762 branch mod2div_end ,true 
-0x6a6b 029763 copy regb ,loopcnt 
-0x6a6c 029764 call right_shift_n 
-0x6a6d 029765 isolate1 0 ,pdata 
-0x6a6e 029766 setflag true ,0 ,temp 
-0x6a6f 029767 branch mod2div_loop 
-:      029768 mod2div_end:
-0x6a70 029770 rshift temp ,pdata 
-0x6a71 029771 rtn 
-:      029773 get_rfcomm_snd_adss:
-0x6a72 029774 fetcht 1 ,mem_pn_dlci 
-:      029775 dlci_to_address_cmd:
-0x6a73 029777 lshift2 temp ,temp 
-0x6a74 029778 set1 rfcomm_address_ext_len ,temp 
-0x6a75 029779 fetch 1 ,mem_rfcomm_initiator 
-0x6a76 029780 ncall set_cr_bit ,blank 
-0x6a77 029781 storet 1 ,mem_rfcomm_send_adss 
-0x6a78 029782 rtn 
-:      029784 channel_to_dlci:
-0x6a79 029786 lshift temp ,temp 
-0x6a7a 029787 fetch 1 ,mem_rfcomm_initiator 
-0x6a7b 029788 setflag blank ,0 ,temp 
-0x6a7c 029790 rtn 
-:      029791 rfcomm_rx_process_dlci0_sabm:
-0x6a7d 029792 fetcht 1 ,mem_current_channel 
-0x6a7e 029793 jam 0xd7 ,mem_current_fcs 
-0x6a7f 029794 call rfcomm_send_ua 
-0x6a80 029795 fetch 1 ,mem_rfcomm_state 
-0x6a81 029796 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
-0x6a82 029797 set1 l2cap_channel_rfcomm_only_ua ,pdata 
-0x6a83 029798 store 1 ,mem_rfcomm_state 
-0x6a84 029799 jam 0 ,mem_rfcomm_initiator 
-0x6a85 029800 branch rfcomm_rx_process_end 
-:      029801 rfcomm_rx_process_dlci0_ua:
-0x6a86 029802 fetch 1 ,mem_rfcomm_state 
-0x6a87 029803 set1 l2cap_channel_rfcomm_only_ua ,pdata 
-0x6a88 029804 store 1 ,mem_rfcomm_state 
-0x6a89 029805 branch rfcomm_rx_process_end 
-:      029808 rfcomm_rx_process:
-0x6a8a 029809 bpatchx patch34_5 ,mem_patch34 
-0x6a8b 029810 fetch 1 ,memui_reconnect_mode 
-0x6a8c 029811 beq no_reconnection ,rfcomm_rx_process_remote_page 
-0x6a8d 029812 branch rfcomm_rx_process_reconn 
-:      029814 rfcomm_rx_process_remote_page:
-0x6a8e 029815 fetch 2 ,mem_l2cap_payload_ptr 
-0x6a8f 029816 copy pdata ,contr 
-0x6a90 029817 call get_rfcomm_head_struct 
-0x6a91 029818 fetch 1 ,mem_current_channel 
-0x6a92 029819 beq 0 ,parse_dlci0_rp 
-0x6a93 029820 branch parse_uih_rp 
-:      029821 parse_dlci0_rp:
-0x6a94 029822 bpatchx patch34_6 ,mem_patch34 
-0x6a95 029823 fetch 1 ,mem_current_frame_type 
-0x6a96 029824 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
-0x6a97 029825 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
-0x6a98 029826 beq rfcomm_frame_type_uih ,parse_dlci0_rp_uih 
-0x6a99 029827 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
-0x6a9a 029828 rtn 
-:      029831 parse_dlci0_rp_uih:
-0x6a9b 029832 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x6a9c 029833 copy pdata ,contr 
-0x6a9d 029834 call get_rfcomm_uih_head_struct 
-0x6a9e 029835 fetch 1 ,mem_uih_cmd_type 
-0x6a9f 029836 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
-0x6aa0 029837 beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
-0x6aa1 029838 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
-0x6aa2 029839 beq uih_modem_status_res ,parse_dlci0_rp_uih_ms_res 
-0x6aa3 029840 beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
-0x6aa4 029841 branch rfcomm_rx_process_end 
-:      029843 parse_dlci0_rp_uih_pn_cmd:
-0x6aa5 029844 call parse_dlci0_rp_uih_pn_res_common 
-0x6aa6 029846 branch parse_dlci0_rp_uih_pn_cmd_spp 
-:      029848 parse_dlci0_rp_uih_pn_cmd_spp:
-0x6aa7 029849 fetch 1 ,mem_spp_state 
-0x6aa8 029850 set1 rfcomm_channel_state_pn_cmd ,pdata 
-0x6aa9 029851 set1 rfcomm_channel_state_pn_res ,pdata 
-0x6aaa 029852 store 1 ,mem_spp_state 
-0x6aab 029853 call rfcomm_send_param_neg_res 
-0x6aac 029854 branch rfcomm_rx_process_end 
-:      029856 parse_dlci0_rp_uih_pn_res:
-0x6aad 029857 call parse_dlci0_rp_uih_pn_res_common 
-0x6aae 029858 branch rfcomm_rx_process_end 
-:      029860 parse_dlci0_rp_uih_pn_res_common:
-0x6aaf 029861 call get_param_payload_ptr 
-0x6ab0 029862 branch get_rfcomm_prarmer_negotiation 
-:      029864 get_rfcomm_param_modem_status:
-0x6ab1 029865 call get_param_payload_ptr 
-0x6ab2 029866 ifetch 1 ,contr 
-0x6ab3 029867 rshift3 pdata ,pdata 
-0x6ab4 029868 store 1 ,mem_ms_channel 
-0x6ab5 029869 ifetch 1 ,contr 
-0x6ab6 029870 store 1 ,mem_ms_param 
-0x6ab7 029871 rtn 
-:      029874 get_rfcomm_head_struct:
-0x6ab8 029875 ifetch 1 ,contr 
-0x6ab9 029876 store 1 ,mem_current_adss 
-0x6aba 029877 rshift3 pdata ,pdata 
-0x6abb 029878 store 1 ,mem_current_channel 
-0x6abc 029879 ifetch 1 ,contr 
-0x6abd 029880 store 1 ,mem_current_frame_type 
-:      029881 get_rfcomm_current_length:
-0x6abe 029882 call get_rfcomm_length_common 
-0x6abf 029883 storet 2 ,mem_current_length 
-0x6ac0 029884 copy contr ,pdata 
-0x6ac1 029885 store 2 ,mem_rfcomm_uih_payload_ptr 
-0x6ac2 029886 rtn 
-:      029888 get_rfcomm_uih_head_struct:
-0x6ac3 029889 ifetch 1 ,contr 
-0x6ac4 029890 rshift pdata ,pdata 
-0x6ac5 029891 store 1 ,mem_uih_cmd_type 
-0x6ac6 029892 call get_rfcomm_length_common 
-0x6ac7 029893 storet 2 ,mem_uih_length 
-0x6ac8 029894 copy contr ,pdata 
-0x6ac9 029895 store 2 ,mem_param_payload_ptr 
-0x6aca 029896 rtn 
-:      029899 get_param_payload_ptr:
-0x6acb 029900 fetch 2 ,mem_param_payload_ptr 
-0x6acc 029901 copy pdata ,contr 
-0x6acd 029902 rtn 
-:      029904 get_rfcomm_length_common:
-0x6ace 029905 ifetch 1 ,contr 
-0x6acf 029906 copy pdata ,temp 
-0x6ad0 029907 rshift temp ,temp 
-0x6ad1 029908 rtnbit1 0 
-0x6ad2 029909 ifetch 1 ,contr 
-0x6ad3 029910 lshift3 pdata ,pdata 
-0x6ad4 029911 lshift4 pdata ,pdata 
-0x6ad5 029912 iadd temp ,temp 
-0x6ad6 029913 rtn 
-:      029915 get_rfcomm_prarmer_negotiation:
-0x6ad7 029916 ifetch 1 ,contr 
-0x6ad8 029917 store 1 ,mem_pn_dlci 
-0x6ad9 029918 ifetch 1 ,contr 
-0x6ada 029919 store 1 ,mem_pn_credit_flow_type_info 
-0x6adb 029920 ifetch 1 ,contr 
-0x6adc 029921 store 1 ,mem_pn_priority 
-0x6add 029922 ifetch 1 ,contr 
-0x6ade 029923 store 1 ,mem_pn_acknowledg_timer 
-0x6adf 029924 ifetch 2 ,contr 
-0x6ae0 029925 store 2 ,mem_pn_max_frame_size 
-0x6ae1 029926 ifetch 1 ,contr 
-0x6ae2 029927 store 1 ,mem_pn_max_retrans 
-0x6ae3 029928 ifetch 1 ,contr 
-0x6ae4 029929 store 1 ,mem_remote_credits 
-0x6ae5 029930 rtn 
-:      029933 parse_dlci0_rp_uih_ms_cmd:
-0x6ae6 029934 call get_rfcomm_param_modem_status 
-0x6ae7 029936 branch parse_dlci0_rp_uih_ms_cmd_spp 
-:      029938 parse_dlci0_rp_uih_ms_cmd_spp:
-0x6ae8 029939 fetch 1 ,mem_spp_state 
-0x6ae9 029940 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
-0x6aea 029941 set1 rfcomm_channel_state_snd_ms_res ,pdata 
-0x6aeb 029942 store 1 ,mem_spp_state 
-0x6aec 029943 fetcht 1 ,mem_pn_dlci 
-0x6aed 029944 lshift2 temp ,temp 
-0x6aee 029945 or_into 3 ,temp 
-0x6aef 029946 call rfcomm_send_modem_status_res 
-0x6af0 029947 jam more_pkt_msc_cmd_spp ,mem_rfcomm_send_more_pkt 
-0x6af1 029948 branch rfcomm_rx_process_end 
-:      029950 parse_dlci0_rp_uih_ms_res:
-0x6af2 029951 jam bt_evt_spp_connected ,mem_fifo_temp 
-0x6af3 029952 call ui_ipc_send_event 
-0x6af4 029953 call get_rfcomm_param_modem_status 
-0x6af5 029954 fetch 1 ,mem_ms_channel 
-0x6af6 029955 sub pdata ,1 ,null 
-0x6af7 029956 branch parse_dlci0_rp_uih_ms_res_spp ,zero 
-0x6af8 029957 branch assert 
-:      029958 parse_dlci0_rp_uih_ms_res_spp:
-0x6af9 029959 fetch 1 ,mem_spp_state 
-0x6afa 029960 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
-0x6afb 029961 store 1 ,mem_spp_state 
-0x6afc 029962 branch rfcomm_rx_process_end 
-:      029964 parse_dlci0_rp_uih_cmd_port:
-0x6afd 029965 call get_param_payload_ptr 
-0x6afe 029966 ifetch 1 ,contr 
-0x6aff 029967 store 1 ,mem_rpn_dlci 
-0x6b00 029968 call l2cap_malloc_rfcomm_channel 
-0x6b01 029969 call l2cap_get_rfcomm_tx_buff 
-0x6b02 029970 setarg 0x000e 
-0x6b03 029971 istore 2 ,contw 
-0x6b04 029972 fetch 2 ,mem_rfcomm_remote_cid 
-0x6b05 029973 istore 2 ,contw 
-0x6b06 029974 fetch 1 ,mem_rfcomm_initiator 
-0x6b07 029976 lshift pdata ,pdata 
-0x6b08 029977 set1 0 ,pdata 
-0x6b09 029978 istore 1 ,contw 
-0x6b0a 029979 bpatchx patch34_7 ,mem_patch34 
-0x6b0b 029980 setarg 0x15ef 
-0x6b0c 029981 istore 2 ,contw 
-0x6b0d 029982 setarg 0x1191 
-0x6b0e 029983 istore 2 ,contw 
-0x6b0f 029986 fetch 1 ,mem_rpn_dlci 
-0x6b10 029987 istore 1 ,contw 
-0x6b11 029988 setarg 0x000007 
-0x6b12 029989 istore 5 ,contw 
-0x6b13 029992 setarg 0x01 
-0x6b14 029993 istore 2 ,contw 
-0x6b15 029996 call rfcomm_calculate_fcs_dlci0 
-0x6b16 029997 istore 1 ,contw 
-0x6b17 029998 rtn 
-:      030002 parse_uih_rp:
-0x6b18 030003 branch parse_uih_rp_spp 
-:      030005 parse_uih_rp_spp:
-0x6b19 030006 bpatchx patch35_0 ,mem_patch35 
-0x6b1a 030007 fetch 1 ,mem_current_frame_type 
-0x6b1b 030008 beq rfcomm_frame_type_ua ,parse_uih_rp_spp_ua 
-0x6b1c 030009 beq rfcomm_frame_type_sabm ,parse_uih_rp_spp_sabm 
-0x6b1d 030010 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
-0x6b1e 030011 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
-0x6b1f 030012 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn 
-0x6b20 030013 rtn 
-:      030014 parse_uih_rp_spp_ua:
-0x6b21 030015 fetch 1 ,mem_spp_state 
-0x6b22 030016 set1 rfcomm_channel_state_ua ,pdata 
-0x6b23 030017 store 1 ,mem_spp_state 
-0x6b24 030018 branch rfcomm_rx_process_end 
-:      030019 parse_uih_rp_spp_sabm:
-0x6b25 030020 fetch 1 ,mem_spp_state 
-0x6b26 030021 set1 rfcomm_channel_state_ua ,pdata 
-0x6b27 030022 set1 rfcomm_channel_state_sabm ,pdata 
-0x6b28 030023 store 1 ,mem_spp_state 
-0x6b29 030024 fetch 1 ,mem_current_adss 
-0x6b2a 030025 call rfcomm_calculate_fcs_ua 
-0x6b2b 030026 store 1 ,mem_current_fcs 
-0x6b2c 030027 call rfcomm_send_ua 
-0x6b2d 030028 fetch 1 ,mem_current_adss 
-0x6b2e 030029 rshift2 pdata ,pdata 
-0x6b2f 030030 store 1 ,mem_pn_dlci 
-0x6b30 030031 lshift2 pdata ,pdata 
-0x6b31 030032 set0 rfcomm_address_cr ,pdata 
-0x6b32 030033 set1 rfcomm_address_ext_len ,pdata 
-0x6b33 030034 arg mem_hiufcs_spp ,temp 
-0x6b34 030035 storet 2 ,mem_contw_temp 
-0x6b35 030036 call rfcomm_save_fcs_uih 
-0x6b36 030037 branch rfcomm_rx_process_end 
-:      030039 parse_uih_spp_uih_credits:
-0x6b37 030040 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x6b38 030041 copy pdata ,contr 
-0x6b39 030042 increase 1 ,pdata 
-0x6b3a 030043 store 2 ,mem_rfcomm_uih_payload_ptr 
-0x6b3b 030044 ifetch 1 ,contr 
-0x6b3c 030045 fetcht 1 ,mem_remote_credits 
-0x6b3d 030046 iadd temp ,pdata 
-0x6b3e 030047 store 1 ,mem_remote_credits 
-:      030048 parse_uih_spp_uih:
-0x6b3f 030049 call rfcomm_increase_credit_given 
-:      030050 parse_uih_spp_uih_cont:
-0x6b40 030051 call get_rfcomm_snd_adss 
-0x6b41 030052 call rfcomm_send_uih_without_payload 
-0x6b42 030053 call spp_process_rx_data 
-0x6b43 030054 branch rfcomm_rx_process_end 
-:      030056 parse_uih_rp_spp_disconn_send_event:
-0x6b44 030057 jam bt_evt_spp_disconnected ,mem_fifo_temp 
-0x6b45 030058 call ui_ipc_send_event 
-:      030059 parse_uih_rp_spp_disconn:
-0x6b46 030060 call rfcomm_init_spp 
-0x6b47 030061 fetch 1 ,mem_current_adss 
-0x6b48 030062 call rfcomm_calculate_fcs_ua 
-0x6b49 030063 store 1 ,mem_current_fcs 
-0x6b4a 030064 call rfcomm_send_ua 
-0x6b4b 030065 branch rfcomm_rx_process_end 
-:      030070 rfcomm_rx_process_reconn:
-0x6b4c 030071 fetch 2 ,mem_l2cap_payload_ptr 
-0x6b4d 030072 copy pdata ,contr 
-0x6b4e 030073 call get_rfcomm_head_struct 
-0x6b4f 030074 fetch 1 ,mem_current_channel 
-0x6b50 030075 beq 0 ,parse_dlci0_reconn 
-0x6b51 030076 branch parse_uih_reconn 
-:      030078 parse_dlci0_reconn:
-0x6b52 030079 bpatchx patch35_1 ,mem_patch35 
-0x6b53 030080 fetch 1 ,mem_current_frame_type 
-0x6b54 030081 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
-0x6b55 030082 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
-0x6b56 030083 beq rfcomm_frame_type_uih ,parse_dlci0_reconn_uih 
-0x6b57 030084 branch rfcomm_rx_process_end 
-:      030085 parse_dlci0_reconn_uih:
-0x6b58 030086 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x6b59 030087 copy pdata ,contr 
-0x6b5a 030088 call get_rfcomm_uih_head_struct 
-0x6b5b 030089 fetch 1 ,mem_uih_cmd_type 
-0x6b5c 030090 beq uih_param_neg_cmd ,parse_dlci0_reconn_uih_pn_cmd 
-0x6b5d 030091 beq uih_param_neg_res ,parse_dlci0_reconn_uih_pn_cmd 
-0x6b5e 030092 beq uih_modem_status_cmd ,parse_dlci0_reconn_uih_ms_cmd 
-0x6b5f 030093 beq uih_modem_status_res ,parse_dlci0_reconn_uih_ms_res 
-0x6b60 030094 branch rfcomm_rx_process_end 
-:      030096 parse_dlci0_reconn_uih_pn_cmd:
-0x6b61 030097 call parse_dlci0_rp_uih_pn_res_common 
-0x6b62 030098 fetch 1 ,mem_pn_dlci 
-0x6b63 030099 rshift pdata ,pdata 
-0x6b64 030100 fetcht 1 ,mem_remote_spp_channel 
-0x6b65 030101 isub temp ,null 
-0x6b66 030102 branch parse_dlci0_reconn_uih_pn_cmd_spp ,zero 
-0x6b67 030103 branch assert 
-:      030104 parse_dlci0_reconn_uih_pn_cmd_spp:
-0x6b68 030105 fetch 1 ,mem_spp_state 
-0x6b69 030106 set1 rfcomm_channel_state_pn_res ,pdata 
-0x6b6a 030107 store 1 ,mem_spp_state 
-0x6b6b 030108 branch rfcomm_rx_process_end 
-:      030110 parse_dlci0_reconn_uih_ms_cmd:
-0x6b6c 030111 call get_rfcomm_param_modem_status 
-0x6b6d 030112 fetch 1 ,mem_ms_channel 
-0x6b6e 030113 fetcht 1 ,mem_remote_spp_channel 
-0x6b6f 030114 isub temp ,null 
-0x6b70 030115 branch parse_dlci0_reconn_uih_ms_cmd_spp ,zero 
-0x6b71 030116 branch assert 
-0x6b72 030117 branch rfcomm_rx_process_end 
-:      030118 parse_dlci0_reconn_uih_ms_cmd_spp:
-0x6b73 030119 fetch 1 ,mem_spp_state 
-0x6b74 030120 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
-0x6b75 030121 set1 rfcomm_channel_state_snd_ms_res ,pdata 
-0x6b76 030122 store 1 ,mem_spp_state 
-0x6b77 030123 fetcht 1 ,mem_pn_dlci 
-0x6b78 030124 lshift2 temp ,temp 
-0x6b79 030125 or_into 3 ,temp 
-0x6b7a 030126 call rfcomm_send_modem_status_res 
-0x6b7b 030127 branch rfcomm_rx_process_end 
-:      030129 parse_dlci0_reconn_uih_ms_res:
-0x6b7c 030130 call get_rfcomm_param_modem_status 
-0x6b7d 030131 fetch 1 ,mem_ms_channel 
-0x6b7e 030132 fetcht 1 ,mem_remote_spp_channel 
-0x6b7f 030133 isub temp ,null 
-0x6b80 030134 branch parse_dlci0_reconn_uih_ms_res_spp ,zero 
-0x6b81 030135 branch assert 
-:      030136 parse_dlci0_reconn_uih_ms_res_spp:
-0x6b82 030137 fetch 1 ,mem_spp_state 
-0x6b83 030138 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
-0x6b84 030139 store 1 ,mem_spp_state 
-0x6b85 030140 branch rfcomm_rx_process_end 
-:      030142 parse_uih_reconn:
-0x6b86 030143 fetch 1 ,mem_current_channel 
-0x6b87 030144 fetcht 1 ,mem_remote_spp_channel 
-0x6b88 030145 isub temp ,null 
-0x6b89 030146 branch parse_uih_reconn_spp ,zero 
-0x6b8a 030147 branch assert 
-0x6b8b 030148 branch rfcomm_rx_process_end 
-:      030150 parse_uih_reconn_spp:
-0x6b8c 030151 fetch 1 ,mem_current_frame_type 
-0x6b8d 030152 beq rfcomm_frame_type_ua ,parse_uih_reconn_spp_ua 
-0x6b8e 030153 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
-0x6b8f 030154 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
-0x6b90 030155 beq rfcomm_frame_type_disconn ,parse_uih_reconn_spp_disconn 
-:      030156 parse_uih_reconn_spp_ua:
-0x6b91 030157 fetch 1 ,mem_spp_state 
-0x6b92 030158 set1 rfcomm_channel_state_ua ,pdata 
-0x6b93 030159 store 1 ,mem_spp_state 
-0x6b94 030160 branch rfcomm_rx_process_end 
-:      030161 parse_uih_reconn_spp_sabm:
-0x6b95 030162 branch parse_uih_reconn_spp_sabm 
-:      030163 parse_uih_reconn_spp_disconn:
-0x6b96 030164 branch parse_uih_rp_spp_disconn 
-:      030165 rfcomm_rx_process_end:
-0x6b97 030166 rtn 
-:      030168 rfcomm_send_more_pkt:
-0x6b98 030169 fetch 1 ,mem_rfcomm_send_more_pkt 
-0x6b99 030170 rtn blank 
-0x6b9a 030171 beq more_pkt_msc_cmd_spp ,rfcomm_send_more_pkt_msc_cmd_spp 
-0x6b9b 030172 branch assert 
-:      030174 rfcomm_send_more_pkt_msc_cmd_spp:
-0x6b9c 030175 jam 0 ,mem_rfcomm_send_more_pkt 
-0x6b9d 030176 call l2cap_malloc_rfcomm_channel 
-0x6b9e 030177 arg spp_slave_channel ,temp 
-0x6b9f 030178 fetcht 1 ,mem_pn_dlci 
-0x6ba0 030179 lshift2 temp ,temp 
-:      030180 rfcomm_send_more_pkt_msc_cmd_spp0:
-0x6ba1 030181 or_into 0x03 ,temp 
-0x6ba2 030182 arg 0xaa ,rega 
-0x6ba3 030183 call rfcomm_send_modem_status_cmd 
-0x6ba4 030184 call l2cap_get_rfcomm_tx_buff 
-0x6ba5 030185 copy contw ,contr 
-0x6ba6 030186 ifetch 2 ,contr 
-0x6ba7 030187 branch assert ,blank 
-0x6ba8 030188 rtn 
-:      030190 rfcomm_send_sabm:
-0x6ba9 030191 call l2cap_get_rfcomm_tx_buff 
-0x6baa 030192 setarg 0x0004 
-0x6bab 030193 istore 2 ,contw 
-0x6bac 030194 fetch 2 ,mem_rfcomm_remote_cid 
-0x6bad 030195 istore 2 ,contw 
-0x6bae 030196 fetch 1 ,mem_current_adss 
-0x6baf 030197 istore 1 ,contw 
-0x6bb0 030198 bpatchx patch35_2 ,mem_patch35 
-0x6bb1 030199 setarg 0x013f 
-0x6bb2 030200 istore 2 ,contw 
-0x6bb3 030201 fetch 1 ,mem_current_fcs 
-0x6bb4 030202 istore 1 ,contw 
-0x6bb5 030203 rtn 
-:      030204 rfcomm_send_ua:
-0x6bb6 030205 call l2cap_malloc_rfcomm_channel 
-0x6bb7 030206 call l2cap_get_rfcomm_tx_buff 
-0x6bb8 030207 setarg 0x0004 
-0x6bb9 030208 istore 2 ,contw 
-0x6bba 030209 fetch 2 ,mem_rfcomm_remote_cid 
-0x6bbb 030210 istore 2 ,contw 
-0x6bbc 030211 fetch 1 ,mem_current_adss 
-0x6bbd 030212 istore 1 ,contw 
-0x6bbe 030213 bpatchx patch35_3 ,mem_patch35 
-0x6bbf 030214 setarg 0x0173 
-0x6bc0 030215 istore 2 ,contw 
-0x6bc1 030216 fetch 1 ,mem_current_fcs 
-0x6bc2 030217 istore 1 ,contw 
-0x6bc3 030218 rtn 
-:      030219 rfcomm_send_param_neg_cmd:
-0x6bc4 030220 call l2cap_get_rfcomm_tx_buff 
-0x6bc5 030221 setarg 0x000e 
-0x6bc6 030222 istore 2 ,contw 
-0x6bc7 030223 fetch 2 ,mem_rfcomm_remote_cid 
-0x6bc8 030224 istore 2 ,contw 
-0x6bc9 030225 fetch 1 ,mem_rfcomm_initiator 
-0x6bca 030226 lshift pdata ,pdata 
-0x6bcb 030227 set1 0 ,pdata 
-0x6bcc 030228 istore 1 ,contw 
-0x6bcd 030229 bpatchx patch35_4 ,mem_patch35 
-0x6bce 030230 setarg 0x15ef 
-0x6bcf 030231 istore 2 ,contw 
-0x6bd0 030232 setarg 0x1183 
-0x6bd1 030233 istore 2 ,contw 
-0x6bd2 030234 copy temp ,pdata 
-0x6bd3 030235 istore 1 ,contw 
-0x6bd4 030236 setarg 0x0000f0 
-0x6bd5 030237 istore 3 ,contw 
-0x6bd6 030238 setarg rfcomm_max_frame_size 
-0x6bd7 030239 istore 2 ,contw 
-0x6bd8 030240 setarg 0 
-0x6bd9 030241 istore 1 ,contw 
-0x6bda 030242 setarg 0x01 
-0x6bdb 030243 istore 1 ,contw 
-0x6bdc 030244 call rfcomm_calculate_fcs_dlci0 
-0x6bdd 030245 istore 1 ,contw 
-0x6bde 030246 jam 0x10 ,mem_credit_given 
-0x6bdf 030247 rtn 
-:      030248 rfcomm_send_param_neg_res:
-0x6be0 030249 call l2cap_malloc_rfcomm_channel 
-0x6be1 030250 call l2cap_get_rfcomm_tx_buff 
-0x6be2 030251 setarg 0x000e 
-0x6be3 030252 istore 2 ,contw 
-0x6be4 030253 fetch 2 ,mem_rfcomm_remote_cid 
-0x6be5 030254 istore 2 ,contw 
-0x6be6 030255 fetch 1 ,mem_rfcomm_initiator 
-0x6be7 030256 lshift pdata ,pdata 
-0x6be8 030257 set1 0 ,pdata 
-0x6be9 030258 istore 1 ,contw 
-0x6bea 030259 bpatchx patch35_5 ,mem_patch35 
-0x6beb 030260 setarg 0x15ef 
-0x6bec 030261 istore 2 ,contw 
-0x6bed 030262 setarg 0x1181 
-0x6bee 030263 istore 2 ,contw 
-0x6bef 030264 fetch 1 ,mem_pn_dlci 
-0x6bf0 030265 istore 1 ,contw 
-0x6bf1 030266 setarg 0x0000e0 
-0x6bf2 030267 istore 3 ,contw 
-0x6bf3 030268 fetch 2 ,mem_rfcomm_max_frame_size 
-0x6bf4 030269 istore 2 ,contw 
-0x6bf5 030270 setarg 0x00 
-0x6bf6 030271 istore 1 ,contw 
-0x6bf7 030272 fetch 1 ,mem_rfcomm_credit_init_data 
-0x6bf8 030273 istore 1 ,contw 
-0x6bf9 030274 call rfcomm_calculate_fcs_dlci0 
-0x6bfa 030275 istore 1 ,contw 
-0x6bfb 030276 rtn 
-:      030277 rfcomm_send_modem_status_cmd:
-0x6bfc 030278 call l2cap_get_rfcomm_tx_buff 
-0x6bfd 030279 setarg 0x0008 
-0x6bfe 030280 istore 2 ,contw 
-0x6bff 030281 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c00 030282 istore 2 ,contw 
-0x6c01 030283 fetch 1 ,mem_rfcomm_initiator 
-0x6c02 030284 lshift pdata ,pdata 
-0x6c03 030285 set1 0 ,pdata 
-0x6c04 030286 istore 1 ,contw 
-0x6c05 030287 bpatchx patch35_6 ,mem_patch35 
-0x6c06 030288 setarg 0x09ef 
-0x6c07 030289 istore 2 ,contw 
-0x6c08 030290 setarg 0x05e3 
-0x6c09 030291 istore 2 ,contw 
-0x6c0a 030292 copy temp ,pdata 
-0x6c0b 030293 istore 1 ,contw 
-0x6c0c 030294 setarg 0x8d 
-0x6c0d 030295 istore 1 ,contw 
-0x6c0e 030296 call rfcomm_calculate_fcs_dlci0 
-0x6c0f 030297 istore 1 ,contw 
-0x6c10 030298 rtn 
-:      030300 rfcomm_send_modem_status_res:
-0x6c11 030301 call l2cap_malloc_rfcomm_channel 
-0x6c12 030302 call l2cap_get_rfcomm_tx_buff 
-0x6c13 030303 setarg 0x0008 
-0x6c14 030304 istore 2 ,contw 
-0x6c15 030305 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c16 030306 istore 2 ,contw 
-0x6c17 030307 copy temp ,timeup 
-0x6c18 030308 fetch 1 ,mem_rfcomm_initiator 
-0x6c19 030309 lshift pdata ,pdata 
-0x6c1a 030310 set1 0 ,pdata 
-0x6c1b 030311 istore 1 ,contw 
-0x6c1c 030312 bpatchx patch35_7 ,mem_patch35 
-0x6c1d 030313 setarg 0x09ef 
-0x6c1e 030314 istore 2 ,contw 
-0x6c1f 030315 setarg 0x05e1 
-0x6c20 030316 istore 2 ,contw 
-0x6c21 030317 copy timeup ,pdata 
-0x6c22 030318 istore 1 ,contw 
-0x6c23 030319 setarg 0x8d 
-0x6c24 030320 istore 1 ,contw 
-0x6c25 030321 call rfcomm_calculate_fcs_dlci0 
-0x6c26 030322 istore 1 ,contw 
-0x6c27 030323 rtn 
-:      030325 rfcomm_send_uih_without_payload:
-0x6c28 030326 bpatchx patch36_0 ,mem_patch36 
-0x6c29 030327 fetch 1 ,mem_credit_given 
-0x6c2a 030328 rtn blank 
-0x6c2b 030329 hfetch 2 ,core_uart_rxitems 
-0x6c2c 030330 nrtn blank 
-0x6c2d 030331 copy rega ,pdata 
-0x6c2e 030332 store 1 ,mem_pdatatemp + 1 
-0x6c2f 030333 storet 1 ,mem_pdatatemp 
-0x6c30 030334 call l2cap_malloc_is_fifo_full 
-0x6c31 030335 nrtn blank 
-0x6c32 030336 call l2cap_malloc_rfcomm_channel 
-0x6c33 030337 call l2cap_get_rfcomm_tx_buff 
-0x6c34 030338 setarg 0x05 
-0x6c35 030339 istore 2 ,contw 
-0x6c36 030340 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c37 030341 istore 2 ,contw 
-0x6c38 030342 fetch 1 ,mem_rfcomm_send_adss 
-0x6c39 030343 istore 1 ,contw 
-0x6c3a 030344 setarg 0x01ff 
-0x6c3b 030345 istore 2 ,contw 
-0x6c3c 030346 fetch 1 ,mem_credit_given 
-0x6c3d 030347 istore 1 ,contw 
-0x6c3e 030348 fetch 1 ,mem_hiufcs_spp_wcredits 
-0x6c3f 030349 istore 1 ,contw 
-0x6c40 030350 jam 0 ,mem_credit_given 
-0x6c41 030351 rtn 
-:      030353 rfcomm_increase_credit_given:
-0x6c42 030354 bpatchx patch36_1 ,mem_patch36 
-0x6c43 030355 fetch 1 ,mem_credit_flag 
-0x6c44 030356 rtneq credit_enable 
-0x6c45 030357 fetch 2 ,mem_current_length 
-0x6c46 030358 rtn blank 
-0x6c47 030359 fetch 1 ,mem_credit_given 
-0x6c48 030360 increase 1 ,pdata 
-0x6c49 030361 store 1 ,mem_credit_given 
-0x6c4a 030362 rtn 
-:      030364 spp_process_rx_data:
-0x6c4b 030365 fetch 2 ,mem_cb_receive_spp_data 
-0x6c4c 030366 branch callback_func 
-:      030368 spp_tx_rfcomm_packet:
-0x6c4d 030369 bpatchx patch36_2 ,mem_patch36 
-0x6c4e 030371 fetch 1 ,mem_remote_credits 
-0x6c4f 030372 rtn blank 
-0x6c50 030373 increase -1 ,pdata 
-0x6c51 030374 store 1 ,mem_remote_credits 
-0x6c52 030375 fetch 2 ,mem_pn_max_frame_size 
-0x6c53 030376 fetcht 2 ,mem_current_packet_length 
-0x6c54 030377 isub temp ,null 
-0x6c55 030378 branch ssp_tx_rfcomm_from_uart ,positive 
-0x6c56 030379 store 2 ,mem_current_packet_length 
-:      030380 ssp_tx_rfcomm_from_uart:
-0x6c57 030381 fetch 1 ,mem_credit_given 
-0x6c58 030382 branch ssp_tx_rfcomm_from_uart_without_credit ,blank 
-0x6c59 030383 jam 1 ,mem_rfcomm_send_offset 
-0x6c5a 030384 fetch 1 ,mem_hiufcs_spp_wcredits 
-0x6c5b 030385 store 1 ,mem_rfcomm_send_fcs 
-0x6c5c 030386 setarg rsp_rx_uih_wdata 
-0x6c5d 030387 store 1 ,mem_rfcomm_send_frame_type 
-0x6c5e 030388 branch ssp_tx_rfcomm_from_uart_common 
-:      030389 ssp_tx_rfcomm_from_uart_without_credit:
-0x6c5f 030390 jam 0 ,mem_rfcomm_send_offset 
-0x6c60 030391 fetch 1 ,mem_hiufcs_spp 
-0x6c61 030392 store 1 ,mem_rfcomm_send_fcs 
-0x6c62 030393 setarg rsp_tx_uih 
-0x6c63 030394 store 1 ,mem_rfcomm_send_frame_type 
-:      030395 ssp_tx_rfcomm_from_uart_common:
-0x6c64 030396 bpatchx patch36_3 ,mem_patch36 
-0x6c65 030397 fetch 2 ,mem_current_packet_length 
-0x6c66 030398 sub pdata ,127 ,null 
-0x6c67 030399 branch ssp_tx_rfcomm_from_uart_common0 ,positive 
-0x6c68 030400 fetch 1 ,mem_rfcomm_send_offset 
-0x6c69 030401 increase 1 ,pdata 
-0x6c6a 030402 store 1 ,mem_rfcomm_send_offset 
-:      030403 ssp_tx_rfcomm_from_uart_common0:
-0x6c6b 030404 call get_rfcomm_snd_adss 
-0x6c6c 030405 fetch 2 ,mem_current_packet_length 
-0x6c6d 030406 increase 8 ,pdata 
-0x6c6e 030407 fetcht 1 ,mem_rfcomm_send_offset 
-0x6c6f 030408 iadd temp ,rega 
-0x6c70 030410 call l2cap_malloc 
-0x6c71 030411 store 2 ,mem_rfcomm_tx_buff_ptr 
-0x6c72 030412 increase 4 ,pdata 
-0x6c73 030413 store 2 ,mem_rfcomm_tx_payload_ptr 
-0x6c74 030414 copy pdata ,contw 
-0x6c75 030415 fetch 1 ,mem_rfcomm_send_adss 
-0x6c76 030416 istore 1 ,contw 
-0x6c77 030417 fetch 1 ,mem_rfcomm_send_frame_type 
-0x6c78 030418 istore 1 ,contw 
-0x6c79 030419 call ssp_tx_write_length 
-0x6c7a 030420 call ssp_tx_write_given_credit 
-0x6c7b 030421 bpatchx patch36_4 ,mem_patch36 
-0x6c7c 030422 fetch 2 ,mem_nl_rx_data_src 
-0x6c7d 030423 copy pdata ,contru 
-0x6c7e 030424 fetch 2 ,mem_current_packet_length 
-0x6c7f 030425 copy pdata ,loopcnt 
-0x6c80 030426 call uart_copy_rx_bytes_fast 
-0x6c81 030427 copy contw ,temp 
-0x6c82 030428 copy contru ,pdata 
-0x6c83 030429 store 2 ,mem_nl_rx_data_src 
-0x6c84 030430 copy temp ,contw 
-0x6c85 030431 fetch 1 ,mem_rfcomm_send_fcs 
-0x6c86 030432 istore 1 ,contw 
-0x6c87 030433 fetch 2 ,mem_rfcomm_tx_buff_ptr 
-0x6c88 030434 copy pdata ,contw 
-0x6c89 030435 fetch 2 ,mem_current_packet_length 
-0x6c8a 030436 fetcht 1 ,mem_rfcomm_send_offset 
-0x6c8b 030437 iadd temp ,pdata 
-0x6c8c 030438 increase 4 ,pdata 
-0x6c8d 030439 istore 2 ,contw 
-0x6c8e 030440 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c8f 030441 istore 2 ,contw 
-0x6c90 030442 jam 0 ,mem_credit_given 
-0x6c91 030443 fetch 2 ,mem_nl_rx_len_all 
-0x6c92 030444 beq 0 ,module_hci_command_tx_spp_tx_complete 
-0x6c93 030445 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x6c94 030446 rtn 
-:      030448 ssp_tx_write_length:
-0x6c95 030449 bpatchx patch36_5 ,mem_patch36 
-0x6c96 030450 fetch 2 ,mem_current_packet_length 
-0x6c97 030451 sub pdata ,0x7f ,null 
-0x6c98 030452 nbranch ssp_tx_write_long_packet ,positive 
-0x6c99 030453 lshift pdata ,pdata 
-0x6c9a 030454 set1 0 ,pdata 
-0x6c9b 030455 istore 1 ,contw 
-0x6c9c 030456 rtn 
-:      030457 ssp_tx_write_long_packet:
-0x6c9d 030458 fetch 2 ,mem_current_packet_length 
-0x6c9e 030459 rshift3 pdata ,pdata 
-0x6c9f 030460 rshift4 pdata ,temp 
-0x6ca0 030461 and_into 0x7f ,pdata 
-0x6ca1 030462 lshift pdata ,pdata 
-0x6ca2 030463 set0 0 ,pdata 
-0x6ca3 030464 istore 1 ,contw 
-0x6ca4 030465 istoret 1 ,contw 
-0x6ca5 030466 rtn 
-:      030467 ssp_tx_write_given_credit:
-0x6ca6 030468 fetch 1 ,mem_credit_given 
-0x6ca7 030469 rtn blank 
-0x6ca8 030470 istore 1 ,contw 
-0x6ca9 030471 rtn 
-:      030476 scheduler_process:
-0x6caa 030477 bpatchx patch36_6 ,mem_patch36 
-0x6cab 030478 call check_51cmd 
-0x6cac 030479 call app_process_bb_event 
-0x6cad 030480 call process_conn_sm 
-0x6cae 030482 bpatchx patch36_7 ,mem_patch36 
-0x6caf 030483 call sp_calc_sequence 
-0x6cb0 030484 call simple_pairing_sequence 
-0x6cb1 030485 call master_simple_paring_sequence 
-0x6cb2 030488 call l2cap_malloc_is_fifo_full 
-0x6cb3 030489 nrtn blank 
-0x6cb4 030491 call l2cap_call_proc_sigal_pending 
-0x6cb5 030492 call l2cap_malloc_is_fifo_full 
-0x6cb6 030493 nrtn blank 
-0x6cb7 030494 bpatchx patch37_0 ,mem_patch37 
-0x6cb8 030496 call process_upper_sm 
-0x6cb9 030497 call l2cap_send_config_req 
-0x6cba 030498 call rfcomm_send_more_pkt 
-:      030499 scheduler_process0:
-0x6cbb 030500 call scheduler_tx_disconnect_hid 
-0x6cbc 030501 bpatchx patch37_1 ,mem_patch37 
-0x6cbd 030504 branch app_process_bt 
-:      030506 scheduler_tx_disconnect_hid:
-0x6cbe 030507 fetch 1 ,mem_control_tasks 
-0x6cbf 030508 bbit1 l2cap_disconnect_interrupt ,l2cap_disconnect_interrupt_req 
-0x6cc0 030509 bbit1 l2cap_disconnect_control ,l2cap_disconnect_control_req 
-0x6cc1 030510 rtn 
-:      030512 scheduler_tx_l2cap_pkt:
-0x6cc2 030513 bpatchx patch37_2 ,mem_patch37 
-0x6cc3 030514 call l2cap_malloc_is_fifo_empty 
-0x6cc4 030515 rtn blank 
-0x6cc5 030516 fetch 1 ,mem_op 
-0x6cc6 030517 rtnbit1 op_txl2cap 
-0x6cc7 030518 call l2cap_malloc_fifo_out 
-0x6cc8 030519 store 2 ,mem_txptr 
-0x6cc9 030520 copy pdata ,contr 
-0x6cca 030521 ifetch 2 ,contr 
-0x6ccb 030522 increase 4 ,pdata 
-0x6ccc 030523 store 2 ,mem_tx_len 
-0x6ccd 030524 jam 6 ,mem_tx_lch 
-0x6cce 030525 bpatchx patch37_3 ,mem_patch37 
-0x6ccf 030526 fetch 2 ,mem_l2cap_tx_multi_offset 
-0x6cd0 030527 branch scheduler_tx_l2cap_start_pkt ,blank 
-0x6cd1 030528 fetch 1 ,mem_op 
-0x6cd2 030529 rtnbit0 op_pkt_comp 
-0x6cd3 030530 set0 op_pkt_comp ,pdata 
-0x6cd4 030531 store 1 ,mem_op 
-0x6cd5 030532 jam 5 ,mem_tx_lch 
-0x6cd6 030533 fetcht 2 ,mem_l2cap_tx_multi_offset 
-0x6cd7 030534 fetch 2 ,mem_txptr 
-0x6cd8 030535 iadd temp ,pdata 
-0x6cd9 030536 store 2 ,mem_txptr 
-0x6cda 030537 fetch 2 ,mem_tx_len 
-0x6cdb 030538 isub temp ,pdata 
-0x6cdc 030539 store 2 ,mem_tx_len 
-:      030540 scheduler_tx_l2cap_start_pkt:
-0x6cdd 030541 bpatchx patch37_4 ,mem_patch37 
-0x6cde 030542 fetch 2 ,mem_tx_len 
-0x6cdf 030543 branch assert ,blank 
-0x6ce0 030544 arg l2cap_max_pkt_len ,temp 
-0x6ce1 030545 isub temp ,pdata 
-0x6ce2 030546 nbranch scheduler_tx_l2cap_last_pkt ,positive 
-0x6ce3 030547 bpatchx patch37_5 ,mem_patch37 
-0x6ce4 030548 storet 2 ,mem_tx_len 
-0x6ce5 030549 fetch 2 ,mem_l2cap_tx_multi_offset 
-0x6ce6 030550 iadd temp ,pdata 
-0x6ce7 030551 store 2 ,mem_l2cap_tx_multi_offset 
-0x6ce8 030552 branch scheduler_tx_l2cap_pkt_end 
-:      030553 scheduler_tx_l2cap_last_pkt:
-0x6ce9 030554 setarg 0 
-0x6cea 030555 store 2 ,mem_l2cap_tx_multi_offset 
-:      030556 scheduler_tx_l2cap_pkt_end:
-0x6ceb 030557 fetch 1 ,mem_op 
-0x6cec 030558 set1 op_txl2cap ,pdata 
-0x6ced 030559 store 1 ,mem_op 
-0x6cee 030560 rtn 
-:      030562 scheduler_start_upper_sm:
-0x6cef 030563 fetch 1 ,mem_ui_profile_supported 
-0x6cf0 030564 bbit1 support_hid ,scheduler_start_upper_sm_hid 
-0x6cf1 030565 jam uppersm_reconn_sdp_conn ,mem_upper_sm_reconn 
-0x6cf2 030566 rtn 
-:      030567 scheduler_start_upper_sm_hid:
-0x6cf3 030568 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
-0x6cf4 030569 rtn 
-:      030571 process_upper_sm:
-0x6cf5 030572 fetch 1 ,memui_reconnect_mode 
-0x6cf6 030573 nbranch process_upper_sm_reconn ,blank 
-:      030574 process_upper_sm_remote_page:
-0x6cf7 030575 fetch 1 ,mem_upper_sm_remote_page 
-0x6cf8 030577 rtn blank 
-0x6cf9 030579 jam 0 ,mem_upper_sm_remote_page 
-:      030580 process_upper_sm_rp_wait:
-0x6cfa 030581 rtn 
-:      030584 process_upper_sm_reconn:
-0x6cfb 030585 bpatchx patch37_6 ,mem_patch37 
-0x6cfc 030586 fetch 1 ,mem_upper_sm_reconn 
-0x6cfd 030587 rtn blank 
-0x6cfe 030588 beq uppersm_reconn_sdp_conn ,process_upper_sm_reconn_sdp_conn 
-0x6cff 030589 beq uppersm_reconn_sdp_conn_wait ,process_upper_sm_reconn_sdp_conn_wait 
-0x6d00 030590 beq uppersm_reconn_sdp_cfg ,process_upper_sm_reconn_sdp_cfg 
-0x6d01 030591 beq uppersm_reconn_sdp_cfg_wait ,process_upper_sm_reconn_sdp_cfg_wait 
-0x6d02 030592 beq uppersm_reconn_ss_spp ,process_upper_sm_reconn_ss_spp 
-0x6d03 030593 beq uppersm_reconn_ss_spp_wait ,process_upper_sm_reconn_ss_spp_wait 
-0x6d04 030594 beq uppersm_reconn_sdp_disconn ,process_upper_sm_reconn_sdp_disconn 
-0x6d05 030595 beq uppersm_reconn_sdp_disconn_wait ,process_upper_sm_reconn_sdp_disconn_wait 
-0x6d06 030596 beq uppersm_reconn_hid_ctrl_conn ,process_upper_sm_reconn_hid_ctrl_conn 
-0x6d07 030597 beq uppersm_reconn_hid_ctrl_conn_wait ,process_upper_sm_reconn_hid_ctrl_conn_wait 
-0x6d08 030598 beq uppersm_reconn_hid_ctrl_cfg ,process_upper_sm_reconn_hid_ctrl_cfg 
-0x6d09 030599 beq uppersm_reconn_hid_ctrl_cfg_wait ,process_upper_sm_reconn_hid_ctrl_cfg_wait 
-0x6d0a 030600 beq uppersm_reconn_hid_int_conn ,process_upper_sm_reconn_hid_int_conn 
-0x6d0b 030601 beq uppersm_reconn_hid_int_conn_wait ,process_upper_sm_reconn_hid_int_conn_wait 
-0x6d0c 030602 beq uppersm_reconn_hid_int_cfg ,process_upper_sm_reconn_hid_int_cfg 
-0x6d0d 030603 beq uppersm_reconn_hid_int_cfg_wait ,process_upper_sm_reconn_hid_int_cfg_wait 
-0x6d0e 030604 beq uppersm_reconn_rfcomm_conn ,process_upper_sm_reconn_rfcomm_conn 
-0x6d0f 030605 beq uppersm_reconn_rfcomm_conn_wait ,process_upper_sm_reconn_rfcomm_conn_wait 
-0x6d10 030606 beq uppersm_reconn_rfcomm_cfg ,process_upper_sm_reconn_rfcomm_cfg 
-0x6d11 030607 beq uppersm_reconn_rfcomm_cfg_wait ,process_upper_sm_reconn_rfcomm_cfg_wait 
-0x6d12 030608 beq uppersm_reconn_rfcomm_sabm ,process_upper_sm_reconn_rfcomm_sabm 
-0x6d13 030609 beq uppersm_reconn_rfcomm_sabm_wait ,process_upper_sm_reconn_rfcomm_sabm_wait 
-0x6d14 030610 beq uppersm_reconn_spp_cmd_pn ,process_upper_sm_reconn_spp_cmd_pn 
-0x6d15 030611 beq uppersm_reconn_spp_cmd_pn_wait ,process_upper_sm_reconn_spp_cmd_pn_wait 
-0x6d16 030612 beq uppersm_reconn_spp_sabm ,process_upper_sm_reconn_spp_sabm 
-0x6d17 030613 beq uppersm_reconn_spp_sabm_wait ,process_upper_sm_reconn_spp_sabm_wait 
-0x6d18 030614 beq uppersm_reconn_spp_cmd_ms ,process_upper_sm_reconn_spp_cmd_ms 
-0x6d19 030615 beq uppersm_reconn_spp_cmd_ms_wait ,process_upper_sm_reconn_spp_cmd_ms_wait 
-:      030616 process_upper_sm_reconn_wait:
-0x6d1a 030617 rtn 
-:      030618 process_upper_sm_reconn_sdp_conn:
-0x6d1b 030619 call upper_sm_send_sdp_conn 
-0x6d1c 030620 jam uppersm_reconn_sdp_conn_wait ,mem_upper_sm_reconn 
-0x6d1d 030621 fetch 1 ,mem_sdp_state 
-0x6d1e 030622 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d1f 030623 store 1 ,mem_sdp_state 
-0x6d20 030624 rtn 
-:      030625 process_upper_sm_reconn_sdp_cfg:
-0x6d21 030626 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
-0x6d22 030627 fetch 1 ,mem_sdp_state 
-0x6d23 030628 rtnbit1 l2cap_channel_state_snd_cfg_req 
-0x6d24 030629 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
-0x6d25 030630 call upper_sm_send_sdp_cfg 
-0x6d26 030631 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
-0x6d27 030632 fetch 1 ,mem_sdp_state 
-0x6d28 030633 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d29 030634 store 1 ,mem_sdp_state 
-0x6d2a 030635 rtn 
-:      030636 process_upper_sm_reconn_ss_spp:
-0x6d2b 030637 call l2cap_malloc_is_fifo_empty 
-0x6d2c 030638 nrtn blank 
-0x6d2d 030639 call upper_sm_send_ss_spp 
-0x6d2e 030640 jam uppersm_reconn_ss_spp_wait ,mem_upper_sm_reconn 
-0x6d2f 030641 rtn 
-:      030642 process_upper_sm_reconn_sdp_disconn:
-0x6d30 030643 call upper_sm_send_sdp_disconn 
-0x6d31 030644 jam uppersm_reconn_sdp_disconn_wait ,mem_upper_sm_reconn 
-0x6d32 030645 rtn 
-:      030646 process_upper_sm_reconn_hid_ctrl_conn:
-0x6d33 030647 call upper_sm_send_hid_ctrl_conn 
-0x6d34 030648 jam uppersm_reconn_hid_ctrl_conn_wait ,mem_upper_sm_reconn 
-0x6d35 030649 fetch 1 ,mem_hid_control_state 
-0x6d36 030650 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d37 030651 store 1 ,mem_hid_control_state 
-0x6d38 030652 rtn 
-:      030653 process_upper_sm_reconn_hid_ctrl_cfg:
-0x6d39 030654 call upper_sm_send_hid_ctrl_cfg 
-0x6d3a 030655 jam uppersm_reconn_hid_ctrl_cfg_wait ,mem_upper_sm_reconn 
-0x6d3b 030656 fetch 1 ,mem_hid_control_state 
-0x6d3c 030657 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d3d 030658 store 1 ,mem_hid_control_state 
-0x6d3e 030659 rtn 
-:      030660 process_upper_sm_reconn_hid_int_conn:
-0x6d3f 030661 call upper_sm_send_hid_int_conn 
-0x6d40 030662 jam uppersm_reconn_hid_int_conn_wait ,mem_upper_sm_reconn 
-0x6d41 030663 fetch 1 ,mem_hid_interrupt_state 
-0x6d42 030664 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d43 030665 store 1 ,mem_hid_interrupt_state 
-0x6d44 030666 rtn 
-:      030667 process_upper_sm_reconn_hid_int_cfg:
-0x6d45 030668 call upper_sm_send_hid_int_cfg 
-0x6d46 030669 jam uppersm_reconn_hid_int_cfg_wait ,mem_upper_sm_reconn 
-0x6d47 030670 fetch 1 ,mem_hid_interrupt_state 
-0x6d48 030671 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d49 030672 store 1 ,mem_hid_interrupt_state 
-0x6d4a 030673 rtn 
-:      030674 process_upper_sm_reconn_rfcomm_conn:
-0x6d4b 030675 call upper_sm_send_rfcomm_conn 
-0x6d4c 030676 jam uppersm_reconn_rfcomm_conn_wait ,mem_upper_sm_reconn 
-0x6d4d 030677 fetch 1 ,mem_rfcomm_state 
-0x6d4e 030678 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d4f 030679 store 1 ,mem_rfcomm_state 
-0x6d50 030680 rtn 
-:      030681 process_upper_sm_reconn_rfcomm_cfg:
-0x6d51 030682 call upper_sm_send_rfcomm_cfg 
-0x6d52 030683 jam uppersm_reconn_rfcomm_cfg_wait ,mem_upper_sm_reconn 
-0x6d53 030684 fetch 1 ,mem_rfcomm_state 
-0x6d54 030685 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d55 030686 store 1 ,mem_rfcomm_state 
-0x6d56 030687 rtn 
-:      030688 process_upper_sm_reconn_rfcomm_sabm:
-0x6d57 030689 call upper_sm_send_rfcomm_sabm 
-0x6d58 030690 jam uppersm_reconn_rfcomm_sabm_wait ,mem_upper_sm_reconn 
-0x6d59 030691 fetch 1 ,mem_rfcomm_state 
-0x6d5a 030692 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
-0x6d5b 030693 store 1 ,mem_rfcomm_state 
-0x6d5c 030694 rtn 
-:      030695 process_upper_sm_reconn_spp_cmd_pn:
-0x6d5d 030696 call upper_sm_send_spp_cmd_pn 
-0x6d5e 030697 fetch 1 ,mem_spp_state 
-0x6d5f 030698 set1 rfcomm_channel_state_pn_cmd 
-0x6d60 030699 store 1 ,mem_spp_state 
-0x6d61 030700 jam uppersm_reconn_spp_cmd_pn_wait ,mem_upper_sm_reconn 
-0x6d62 030701 rtn 
-:      030702 process_upper_sm_reconn_spp_sabm:
-0x6d63 030703 call upper_sm_send_spp_sabm 
-0x6d64 030704 fetch 1 ,mem_spp_state 
-0x6d65 030705 set1 rfcomm_channel_state_sabm 
-0x6d66 030706 store 1 ,mem_spp_state 
-0x6d67 030707 jam uppersm_reconn_spp_sabm_wait ,mem_upper_sm_reconn 
-0x6d68 030708 fetch 1 ,mem_remote_spp_channel 
-0x6d69 030709 lshift3 pdata ,pdata 
-0x6d6a 030710 or_into 3 ,pdata 
-0x6d6b 030711 arg mem_hiufcs_spp ,temp 
-0x6d6c 030712 storet 2 ,mem_contw_temp 
-0x6d6d 030713 branch rfcomm_save_fcs_uih 
-:      030714 process_upper_sm_reconn_spp_cmd_ms:
-0x6d6e 030715 call upper_sm_send_spp_cmd_ms 
-0x6d6f 030716 fetch 1 ,mem_spp_state 
-0x6d70 030717 set1 rfcomm_channel_state_snd_ms_cmd 
-0x6d71 030718 store 1 ,mem_spp_state 
-0x6d72 030719 jam uppersm_reconn_spp_cmd_ms_wait ,mem_upper_sm_reconn 
-0x6d73 030720 rtn 
-:      030722 process_upper_sm_reconn_sdp_conn_wait:
-0x6d74 030723 fetch 1 ,mem_sdp_state 
-0x6d75 030724 rtnbit0 l2cap_channel_state_conn_res 
-0x6d76 030725 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
-0x6d77 030726 branch process_upper_sm_reconn 
-:      030727 process_upper_sm_reconn_sdp_cfg_wait:
-0x6d78 030728 fetch 1 ,mem_sdp_state 
-0x6d79 030729 rtnne l2cap_channel_setup_complete 
-0x6d7a 030730 jam uppersm_reconn_ss_spp ,mem_upper_sm_reconn 
-:      030731 process_upper_sm_reconn_ss_spp_wait:
-0x6d7b 030732 fetch 1 ,mem_message_to_uppersm 
-0x6d7c 030733 rtnne recieve_ss_reasult_hf 
-0x6d7d 030734 jam 0 ,mem_message_to_uppersm 
-0x6d7e 030735 jam uppersm_reconn_sdp_disconn ,mem_upper_sm_reconn 
-0x6d7f 030736 branch process_upper_sm_reconn 
-:      030737 process_upper_sm_reconn_sdp_disconn_wait:
-0x6d80 030738 fetch 1 ,mem_sdp_state 
-0x6d81 030739 nrtn blank 
-0x6d82 030740 fetch 1 ,mem_ui_profile_supported 
-0x6d83 030741 bbit1 support_hid ,process_upper_sm_reconn_setup_hid 
-0x6d84 030742 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
-0x6d85 030743 branch process_upper_sm_reconn_termination 
-:      030744 process_upper_sm_reconn_hid_ctrl_conn_wait:
-0x6d86 030745 fetch 1 ,mem_hid_control_state 
-0x6d87 030746 rtnbit0 l2cap_channel_state_conn_res 
-0x6d88 030747 jam uppersm_reconn_hid_ctrl_cfg ,mem_upper_sm_reconn 
-0x6d89 030748 branch process_upper_sm_reconn 
-:      030749 process_upper_sm_reconn_hid_ctrl_cfg_wait:
-0x6d8a 030750 fetch 1 ,mem_hid_control_state 
-0x6d8b 030751 rtnne l2cap_channel_setup_complete 
-0x6d8c 030752 jam uppersm_reconn_hid_int_conn ,mem_upper_sm_reconn 
-0x6d8d 030753 branch process_upper_sm_reconn 
-:      030754 process_upper_sm_reconn_hid_int_conn_wait:
-0x6d8e 030755 fetch 1 ,mem_hid_interrupt_state 
-0x6d8f 030756 rtnbit0 l2cap_channel_state_conn_res 
-0x6d90 030757 jam uppersm_reconn_hid_int_cfg ,mem_upper_sm_reconn 
-0x6d91 030758 branch process_upper_sm_reconn 
-:      030759 process_upper_sm_reconn_hid_int_cfg_wait:
-0x6d92 030760 fetch 1 ,mem_hid_interrupt_state 
-0x6d93 030761 rtnne l2cap_channel_setup_complete 
-0x6d94 030762 fetch 1 ,mem_ui_profile_supported 
-0x6d95 030763 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
-0x6d96 030764 branch process_upper_sm_reconn_termination 
-:      030765 process_upper_sm_reconn_rfcomm_conn_wait:
-0x6d97 030766 fetch 1 ,mem_rfcomm_state 
-0x6d98 030767 rtnbit0 l2cap_channel_state_conn_res 
-0x6d99 030768 jam uppersm_reconn_rfcomm_cfg ,mem_upper_sm_reconn 
-0x6d9a 030769 branch process_upper_sm_reconn 
-:      030770 process_upper_sm_reconn_rfcomm_cfg_wait:
-0x6d9b 030771 fetch 1 ,mem_rfcomm_state 
-0x6d9c 030772 rtnne l2cap_channel_setup_complete 
-0x6d9d 030773 jam uppersm_reconn_rfcomm_sabm ,mem_upper_sm_reconn 
-0x6d9e 030774 branch process_upper_sm_reconn 
-:      030775 process_upper_sm_reconn_rfcomm_sabm_wait:
-0x6d9f 030776 fetch 1 ,mem_rfcomm_state 
-0x6da0 030777 rtnne l2cap_channel_rfcomm_dlci0_opened 
-0x6da1 030778 fetch 1 ,mem_ui_profile_supported 
-0x6da2 030779 bbit1 support_spp ,process_upper_sm_reconn_setup_spp 
-0x6da3 030780 branch process_upper_sm_reconn_termination 
-:      030781 process_upper_sm_reconn_spp_cmd_pn_wait:
-0x6da4 030782 fetch 1 ,mem_spp_state 
-0x6da5 030783 rtnbit0 rfcomm_channel_state_pn_res 
-0x6da6 030784 jam uppersm_reconn_spp_sabm ,mem_upper_sm_reconn 
-0x6da7 030785 branch process_upper_sm_reconn 
-:      030786 process_upper_sm_reconn_spp_sabm_wait:
-0x6da8 030787 fetch 1 ,mem_spp_state 
-0x6da9 030788 rtnbit0 rfcomm_channel_state_ua 
-0x6daa 030789 jam uppersm_reconn_spp_cmd_ms ,mem_upper_sm_reconn 
-0x6dab 030790 branch process_upper_sm_reconn 
-:      030791 process_upper_sm_reconn_spp_cmd_ms_wait:
-0x6dac 030792 fetch 1 ,mem_spp_state 
-0x6dad 030793 rtnne rfcomm_channel_setup_complete 
-0x6dae 030794 branch process_upper_sm_reconn_termination 
-:      030796 process_upper_sm_reconn_setup_hid:
-0x6daf 030797 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
-0x6db0 030798 branch process_upper_sm_reconn 
-:      030800 process_upper_sm_reconn_setup_rfcomm:
-0x6db1 030801 jam uppersm_reconn_rfcomm_conn ,mem_upper_sm_reconn 
-0x6db2 030802 branch process_upper_sm_reconn 
-:      030803 process_upper_sm_reconn_setup_spp:
-0x6db3 030804 jam uppersm_reconn_spp_cmd_pn ,mem_upper_sm_reconn 
-0x6db4 030805 branch process_upper_sm_reconn 
-:      030809 process_upper_sm_reconn_termination:
-0x6db5 030810 jam 0 ,mem_upper_sm_reconn 
-0x6db6 030811 rtn 
-:      030812 upper_sm_send_sdp_conn:
-0x6db7 030813 bpatchx patch37_7 ,mem_patch37 
-0x6db8 030814 call l2cap_malloc_signal_channel 
-0x6db9 030815 setarg psm_sdp 
-0x6dba 030816 copy pdata ,temp 
-0x6dbb 030817 setarg l2cap_sdp_channel 
-0x6dbc 030818 copy pdata ,timeup 
-0x6dbd 030819 branch ml2cap_send_signal_connect_req 
-:      030821 upper_sm_send_sdp_cfg:
-0x6dbe 030822 bpatchx patch38_0 ,mem_patch38 
-0x6dbf 030823 call l2cap_malloc_signal_channel 
-0x6dc0 030824 fetch 2 ,mem_sdp_remote_cid 
-0x6dc1 030825 copy pdata ,temp 
-0x6dc2 030826 branch ml2cap_send_signal_config_req 
-:      030828 upper_sm_send_sdp_disconn:
-0x6dc3 030829 bpatchx patch38_1 ,mem_patch38 
-0x6dc4 030830 call l2cap_malloc_signal_channel 
-0x6dc5 030831 fetch 2 ,mem_sdp_remote_cid 
-0x6dc6 030832 copy pdata ,temp 
-0x6dc7 030833 arg l2cap_sdp_channel ,timeup 
-0x6dc8 030834 call ml2cap_send_signal_disconn_req 
-0x6dc9 030835 fetch 1 ,mem_sdp_state 
-0x6dca 030836 set0 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x6dcb 030837 store 1 ,mem_sdp_state 
-0x6dcc 030838 rtn 
-:      030840 upper_sm_send_ss_spp:
-0x6dcd 030841 bpatchx patch38_2 ,mem_patch38 
-0x6dce 030842 call l2cap_malloc_sdp_channel 
-0x6dcf 030843 call sdp_send_spp_request 
-0x6dd0 030844 branch msdp_send_req_done 
-:      030846 upper_sm_send_rfcomm_conn:
-0x6dd1 030847 bpatchx patch38_3 ,mem_patch38 
-0x6dd2 030848 call l2cap_malloc_signal_channel 
-0x6dd3 030849 setarg psm_rfcomm 
-0x6dd4 030850 copy pdata ,temp 
-0x6dd5 030851 setarg l2cap_rfcomm_channel 
-0x6dd6 030852 copy pdata ,timeup 
-0x6dd7 030853 branch ml2cap_send_signal_connect_req 
-:      030855 upper_sm_send_rfcomm_cfg:
-0x6dd8 030856 bpatchx patch38_4 ,mem_patch38 
-0x6dd9 030857 call l2cap_malloc_signal_channel 
-0x6dda 030858 fetch 2 ,mem_rfcomm_remote_cid 
-0x6ddb 030859 copy pdata ,temp 
-0x6ddc 030860 branch ml2cap_send_signal_config_req 
-:      030862 upper_sm_send_hid_ctrl_conn:
-0x6ddd 030863 bpatchx patch38_5 ,mem_patch38 
-0x6dde 030864 call l2cap_malloc_signal_channel 
-0x6ddf 030865 setarg psm_hid_control 
-0x6de0 030866 copy pdata ,temp 
-0x6de1 030867 setarg l2cap_hid_control_channel 
-0x6de2 030868 copy pdata ,timeup 
-0x6de3 030869 branch ml2cap_send_signal_connect_req 
-:      030871 upper_sm_send_hid_ctrl_cfg:
-0x6de4 030872 bpatchx patch38_6 ,mem_patch38 
-0x6de5 030873 call l2cap_malloc_signal_channel 
-0x6de6 030874 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x6de7 030875 copy pdata ,temp 
-0x6de8 030876 branch ml2cap_send_signal_config_req 
-:      030878 upper_sm_send_hid_int_conn:
-0x6de9 030879 bpatchx patch38_7 ,mem_patch38 
-0x6dea 030880 call l2cap_malloc_signal_channel 
-0x6deb 030881 setarg psm_hid_interrupt 
-0x6dec 030882 copy pdata ,temp 
-0x6ded 030883 setarg l2cap_hid_interrupt_channel 
-0x6dee 030884 copy pdata ,timeup 
-0x6def 030885 branch ml2cap_send_signal_connect_req 
-:      030887 upper_sm_send_hid_int_cfg:
-0x6df0 030888 bpatchx patch39_0 ,mem_patch39 
-0x6df1 030889 call l2cap_malloc_signal_channel 
-0x6df2 030890 fetch 2 ,mem_hid_int_remote_cid 
-0x6df3 030891 copy pdata ,temp 
-0x6df4 030892 branch ml2cap_send_signal_config_req 
-:      030894 upper_sm_send_rfcomm_sabm:
-0x6df5 030895 bpatchx patch39_1 ,mem_patch39 
-0x6df6 030896 call l2cap_malloc_rfcomm_channel 
-0x6df7 030898 jam 3 ,mem_current_adss 
-0x6df8 030899 jam 0x1c ,mem_current_fcs 
-0x6df9 030900 call rfcomm_send_sabm 
-0x6dfa 030901 jam 1 ,mem_rfcomm_initiator 
-0x6dfb 030902 rtn 
-:      030904 upper_sm_send_spp_cmd_pn:
-0x6dfc 030905 bpatchx patch39_2 ,mem_patch39 
-0x6dfd 030906 call l2cap_malloc_rfcomm_channel 
-0x6dfe 030907 fetcht 1 ,mem_remote_spp_channel 
-0x6dff 030908 call channel_to_dlci 
-0x6e00 030909 storet 1 ,mem_pn_dlci 
-0x6e01 030910 branch rfcomm_send_param_neg_cmd 
-:      030912 upper_sm_send_spp_sabm:
-0x6e02 030913 bpatchx patch39_3 ,mem_patch39 
-0x6e03 030914 call l2cap_malloc_rfcomm_channel 
-0x6e04 030915 fetcht 1 ,mem_pn_dlci 
-0x6e05 030916 call dlci_to_address_cmd 
-0x6e06 030917 call rfcomm_calculate_fcs_sabm 
-0x6e07 030918 store 1 ,mem_current_fcs 
-0x6e08 030919 fetcht 1 ,mem_pn_dlci 
-0x6e09 030920 call dlci_to_address_cmd 
-0x6e0a 030921 storet 1 ,mem_current_adss 
-0x6e0b 030922 branch rfcomm_send_sabm 
-:      030924 upper_sm_send_spp_cmd_ms:
-0x6e0c 030925 bpatchx patch39_4 ,mem_patch39 
-0x6e0d 030926 call l2cap_malloc_rfcomm_channel 
-0x6e0e 030927 fetcht 1 ,mem_pn_dlci 
-0x6e0f 030928 call dlci_to_address_cmd 
-0x6e10 030929 branch rfcomm_send_modem_status_cmd 
-:      030942 sdp_process:
-0x6e11 030943 bpatchx patch39_5 ,mem_patch39 
-0x6e12 030944 fetch 2 ,mem_l2cap_payload_ptr 
-0x6e13 030945 iforce contr 
-0x6e14 030948 ifetch 1 ,contr 
-0x6e15 030949 copy pdata ,regb 
-0x6e16 030950 store 1 ,mem_sdp_pduid 
-0x6e17 030951 ifetch 2 ,contr 
-0x6e18 030952 store 2 ,mem_sdp_transactionid 
-0x6e19 030953 ifetch 1 ,contr 
-0x6e1a 030954 lshift8 pdata ,timeup 
-0x6e1b 030955 ifetch 1 ,contr 
-0x6e1c 030956 iadd timeup ,timeup 
-0x6e1d 030957 bpatchx patch39_6 ,mem_patch39 
-0x6e1e 030958 copy contr ,temp 
-0x6e1f 030959 arg 4 ,loopcnt 
-0x6e20 030960 arg mem_sdp_handle_list ,contw 
-0x6e21 030961 call memset0 
-0x6e22 030962 copy temp ,contr 
-0x6e23 030963 deposit regb 
-0x6e24 030964 beq sdp_error_res ,sdp_process_error_res 
-0x6e25 030965 beq sdp_search_req ,sdp_process_ss_req 
-0x6e26 030966 beq sdp_search_res ,sdp_process_ss_res 
-0x6e27 030967 beq sdp_attribute_req ,sdp_process_sa_req 
-0x6e28 030968 beq sdp_attribute_res ,sdp_process_sa_res 
-0x6e29 030969 beq sdp_searchattrib_req ,sdp_process_ssa_req 
-0x6e2a 030970 beq sdp_searchattrib_res ,sdp_process_ssa_res 
-0x6e2b 030971 branch sdp_insufficient_resource 
-:      030982 sdp_process_ss_req:
-0x6e2c 030983 bpatchx patch39_7 ,mem_patch39 
-0x6e2d 030984 call ask_serviceclassid 
-0x6e2e 030985 compare 1 ,temp ,0xff 
-0x6e2f 030986 branch ss_empty_rsp ,true 
-0x6e30 030987 compare 0xff ,temp ,0xff 
-0x6e31 030988 branch sdp_invalid_request_syntax ,true 
-0x6e32 030990 ifetch 2 ,contr 
-0x6e33 030991 store 2 ,mem_sdp_record_maxcnt 
-0x6e34 030992 increase -2 ,timeup 
-0x6e35 030994 increase -1 ,timeup 
-0x6e36 030995 nbranch sdp_invalid_pdu_size ,zero 
-0x6e37 030996 arg mem_sdp_uuid_search_ptr ,timeup 
-0x6e38 030997 ifetch 2 ,timeup 
-0x6e39 030998 rtn blank 
-0x6e3a 030999 call search_all_uuid 
-0x6e3b 031000 call l2cap_get_sdp_tx_payload 
-0x6e3c 031001 force 3 ,pdata 
-0x6e3d 031002 istore 1 ,contw 
-0x6e3e 031003 fetch 2 ,mem_sdp_transactionid 
-0x6e3f 031004 istore 2 ,contw 
-0x6e40 031005 lshift2 queue ,pdata 
-0x6e41 031006 add pdata ,5 ,pdata 
-0x6e42 031007 add pdata ,5 ,regc 
-0x6e43 031008 byteswap pdata ,pdata 
-0x6e44 031009 istore 2 ,contw 
-0x6e45 031010 deposit queue 
-0x6e46 031011 byteswap pdata ,pdata 
-0x6e47 031012 istore 2 ,contw 
-0x6e48 031013 istore 2 ,contw 
-0x6e49 031014 arg mem_sdp_handle_list ,contr 
-0x6e4a 031015 copy queue ,loopcnt 
-0x6e4b 031016 branch ss_req_blank ,zero 
-:      031017 ss_req_loop:
-0x6e4c 031018 ifetch 4 ,contr 
-0x6e4d 031019 istore 4 ,contw 
-0x6e4e 031020 loop ss_req_loop 
-:      031021 ss_req_blank:
-0x6e4f 031022 force 0 ,pdata 
-0x6e50 031023 istore 1 ,contw 
-0x6e51 031024 deposit regc 
-0x6e52 031025 store 2 ,mem_sdp_tx_pkt_length 
-0x6e53 031027 rtn 
-:      031038 sdp_process_sa_req:
-0x6e54 031039 bpatchx patch3a_0 ,mem_patch3a 
-0x6e55 031040 ifetch 4 ,contr 
-0x6e56 031041 store 4 ,mem_sdp_record_handle 
-0x6e57 031042 increase -4 ,timeup 
-0x6e58 031043 call sdp_store_maxbyte 
-0x6e59 031044 store 2 ,mem_sdp_attribute_maxbyte 
-0x6e5a 031045 increase -2 ,timeup 
-0x6e5b 031046 call dataelementtype6 
-0x6e5c 031047 branch sdp_invalid_request_syntax ,zero 
-0x6e5d 031048 compare 5 ,rega ,0xff 
-0x6e5e 031050 branch sa_judge_wholerange ,true 
-:      031051 sa_isnot_wholerange:
-0x6e5f 031052 arg mem_sdp_attrib_list ,contw 
-0x6e60 031053 force 0 ,queue 
-0x6e61 031054 branch sa_req_loop 
-:      031055 sa_judge_wholerange:
-0x6e62 031056 ifetch 1 ,contr 
-0x6e63 031057 bne sdp_attribute_range ,sdp_invalid_request_syntax 
-0x6e64 031058 ifetch 2 ,contr 
-0x6e65 031059 nbranch sa_judge_wholerange_false1 ,blank 
-0x6e66 031060 ifetch 1 ,contr 
-0x6e67 031061 bne 0xff ,sa_judge_wholerange_false2 
-0x6e68 031062 ifetch 1 ,contr 
-0x6e69 031063 bne 0xff ,sa_judge_wholerange_false3 
-0x6e6a 031064 branch sa_req_all 
-:      031065 sa_judge_wholerange_false3:
-0x6e6b 031066 increase -5 ,contr 
-0x6e6c 031067 branch sa_isnot_wholerange 
-:      031068 sa_judge_wholerange_false2:
-0x6e6d 031069 increase -4 ,contr 
-0x6e6e 031070 branch sa_isnot_wholerange 
-:      031071 sa_judge_wholerange_false1:
-0x6e6f 031072 increase -3 ,contr 
-0x6e70 031073 branch sa_isnot_wholerange 
-:      031074 sa_req_loop:
-0x6e71 031075 ifetch 1 ,contr 
-0x6e72 031076 beq sdp_attribute_id ,sa_req_one_id 
-0x6e73 031077 beq sdp_attribute_range ,sa_req_range 
-:      031078 sa_req_range:
-0x6e74 031079 ifetch 2 ,contr 
-0x6e75 031080 istore 2 ,contw 
-0x6e76 031081 increase 1 ,queue 
-0x6e77 031082 byteswap pdata ,regb 
-0x6e78 031083 ifetch 2 ,contr 
-0x6e79 031084 byteswap pdata ,pdata 
-:      031085 sa_req_range_id_increase:
-0x6e7a 031086 increase 1 ,regb 
-0x6e7b 031087 isub regb ,null 
-0x6e7c 031088 nbranch sa_req_range_id_finish ,positive 
-0x6e7d 031089 copy pdata ,regc 
-0x6e7e 031090 byteswap regb ,pdata 
-0x6e7f 031091 istore 2 ,contw 
-0x6e80 031092 increase 1 ,queue 
-0x6e81 031093 copy regc ,pdata 
-0x6e82 031094 branch sa_req_range_id_increase 
-:      031095 sa_req_range_id_finish:
-0x6e83 031096 increase -5 ,timeup 
-0x6e84 031097 increase -5 ,rega 
-0x6e85 031098 branch sa_req_check_next_id 
-:      031099 sa_req_one_id:
-0x6e86 031100 ifetch 2 ,contr 
-0x6e87 031101 istore 2 ,contw 
-0x6e88 031102 increase 1 ,queue 
-0x6e89 031103 increase -3 ,timeup 
-0x6e8a 031104 increase -3 ,rega 
-:      031105 sa_req_check_next_id:
-0x6e8b 031106 nbranch sdp_invalid_request_syntax ,positive 
-0x6e8c 031107 nbranch sa_req_loop ,zero 
-0x6e8d 031108 increase -1 ,timeup 
-0x6e8e 031109 nbranch sdp_invalid_request_syntax ,zero 
-0x6e8f 031111 call l2cap_get_sdp_tx_payload 
-0x6e90 031112 increase 10 ,contw 
-0x6e91 031113 arg mem_sdp_attrib_list ,rega 
-:      031114 sa_req_handle_attributelist_next:
-0x6e92 031115 copy queue ,pdata 
-0x6e93 031116 branch sa_req_handle_attributelist_end ,blank 
-0x6e94 031117 ifetch 2 ,rega 
-0x6e95 031118 branch sa_req_handle_attributelist_end ,blank 
-0x6e96 031119 iforce regb 
-0x6e97 031120 fetch 4 ,mem_sdp_record_handle 
-0x6e98 031121 iforce temp 
-0x6e99 031122 call search_handle_attrib 
-0x6e9a 031123 copy contr ,pdata 
-0x6e9b 031124 branch sa_req_handle_attributelist_notfound ,blank 
-0x6e9c 031125 increase -3 ,contr 
-0x6e9d 031126 ifetch 3 ,contr 
-0x6e9e 031127 istore 3 ,contw 
-0x6e9f 031128 call sdp_data_len 
-0x6ea0 031129 iforce loopcnt 
-0x6ea1 031130 call memcpy 
-:      031131 sa_req_handle_attributelist_notfound:
-0x6ea2 031132 increase 2 ,rega 
-0x6ea3 031133 increase -1 ,queue 
-0x6ea4 031134 branch sa_req_handle_attributelist_next 
-:      031136 sa_req_handle_attributelist_end:
-0x6ea5 031137 arg sdp_attribute_res ,rega 
-0x6ea6 031138 call ssa_req_range_lastfreg_common 
-0x6ea7 031139 fetch 2 ,mem_sdp_tx_pkt_length 
-0x6ea8 031140 beq 11 ,sa_empty_rsp 
-0x6ea9 031141 branch ssa_req_range_attrbutes_length_no_continue 
-:      031144 sdp_store_continue_common:
-0x6eaa 031145 ifetch 1 ,contr 
-0x6eab 031146 beq 0 ,sdp_store_continue_0byte 
-0x6eac 031147 beq 1 ,sdp_store_continue_1byte 
-0x6ead 031148 beq 2 ,sdp_store_continue_2byte 
-:      031149 sdp_store_continue_0byte:
-0x6eae 031150 increase -1 ,timeup 
-0x6eaf 031151 branch sdp_store_continue_end 
-:      031152 sdp_store_continue_1byte:
-0x6eb0 031153 ifetch 1 ,contr 
-0x6eb1 031154 increase -2 ,timeup 
-0x6eb2 031155 branch sdp_store_continue_end 
-:      031156 sdp_store_continue_2byte:
-0x6eb3 031157 ifetch 2 ,contr 
-0x6eb4 031158 byteswap pdata ,pdata 
-0x6eb5 031159 increase -3 ,timeup 
-:      031160 sdp_store_continue_end:
-0x6eb6 031161 store 2 ,mem_sdp_continue_byte 
-0x6eb7 031162 rtn 
-:      031164 sa_req_all:
-0x6eb8 031165 increase -5 ,timeup 
-0x6eb9 031166 call sdp_store_continue_common 
-0x6eba 031167 nbranch sdp_invalid_pdu_size ,zero 
-0x6ebb 031168 fetcht 4 ,mem_sdp_record_handle 
-0x6ebc 031169 call search_handle 
-0x6ebd 031170 nbranch sdp_invalid_service_record_handle ,zero 
-0x6ebe 031171 copy contr ,rega 
-0x6ebf 031172 call l2cap_get_sdp_tx_payload 
-0x6ec0 031173 copy rega ,contr 
-0x6ec1 031174 increase 3 ,contw 
-0x6ec2 031175 copy contr ,timeup 
-0x6ec3 031176 call sdp_get_data 
-0x6ec4 031177 copy pdata ,rega 
-0x6ec5 031179 fetch 2 ,mem_sdp_continue_byte 
-0x6ec6 031180 copy pdata ,regb 
-0x6ec7 031181 copy rega ,pdata 
-0x6ec8 031182 isub regb ,regb 
-0x6ec9 031183 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6eca 031184 isub regb ,null 
-0x6ecb 031185 nbranch sa_req_all_fragment_sdp ,positive 
-0x6ecc 031187 disable user 
-0x6ecd 031188 fetch 2 ,mem_sdp_continue_byte 
-0x6ece 031189 branch sa_req_all_fisrt_fragment ,blank 
-0x6ecf 031190 iadd timeup ,contr 
-0x6ed0 031191 increase 3 ,regb 
-0x6ed1 031192 copy regb ,loopcnt 
-0x6ed2 031193 copy loopcnt ,pdata 
-0x6ed3 031194 increase 3 ,pdata 
-0x6ed4 031195 byteswap pdata ,pdata 
-0x6ed5 031196 istore 2 ,contw 
-0x6ed6 031197 copy loopcnt ,pdata 
-0x6ed7 031198 byteswap pdata ,pdata 
-0x6ed8 031199 istore 2 ,contw 
-0x6ed9 031200 branch sa_req_all_answer_attributelist_full_loop 
-:      031201 sa_req_all_fisrt_fragment:
-0x6eda 031202 add rega ,6 ,loopcnt 
-0x6edb 031203 branch sa_req_all_parlength_continue_byte ,user 
-0x6edc 031204 byteswap loopcnt ,pdata 
-0x6edd 031205 branch sa_req_all_parlength_continue_byte_end 
-:      031206 sa_req_all_parlength_continue_byte:
-0x6ede 031207 copy loopcnt ,pdata 
-0x6edf 031208 increase 2 ,pdata 
-0x6ee0 031209 byteswap pdata ,pdata 
-:      031210 sa_req_all_parlength_continue_byte_end:
-0x6ee1 031211 istore 2 ,contw 
-0x6ee2 031212 increase -3 ,loopcnt 
-0x6ee3 031213 byteswap loopcnt ,pdata 
-0x6ee4 031214 istore 2 ,contw 
-0x6ee5 031215 copy timeup ,contr 
-0x6ee6 031216 branch sa_req_all_answer_attributelist_full_loop 
-:      031217 sa_req_all_fragment_sdp:
-0x6ee7 031218 enable user 
-0x6ee8 031220 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6ee9 031221 copy pdata ,rega 
-0x6eea 031222 copy rega ,loopcnt 
-0x6eeb 031223 fetch 2 ,mem_sdp_continue_byte 
-0x6eec 031224 branch sa_req_all_fisrt_fragment ,blank 
-0x6eed 031225 iadd timeup ,contr 
-0x6eee 031226 copy rega ,pdata 
-0x6eef 031227 increase 5 ,pdata 
-0x6ef0 031228 byteswap pdata ,pdata 
-0x6ef1 031229 istore 2 ,contw 
-0x6ef2 031230 copy rega ,pdata 
-0x6ef3 031231 byteswap pdata ,pdata 
-0x6ef4 031232 istore 2 ,contw 
-:      031233 sa_req_all_answer_attributelist_full_loop:
-0x6ef5 031234 call memcpy 
-0x6ef6 031235 nbranch sa_req_all_last_frag_continue ,user 
-0x6ef7 031236 force 2 ,pdata 
-0x6ef8 031237 istore 1 ,contw 
-0x6ef9 031238 copy contr ,pdata 
-0x6efa 031239 isub timeup ,pdata 
-0x6efb 031240 byteswap pdata ,pdata 
-0x6efc 031241 istore 2 ,contw 
-0x6efd 031242 branch sa_req_all_frag_end 
-:      031243 sa_req_all_last_frag_continue:
-0x6efe 031244 force 0 ,pdata 
-0x6eff 031245 istore 1 ,contw 
-:      031246 sa_req_all_frag_end:
-0x6f00 031247 arg sdp_attribute_res ,rega 
-0x6f01 031248 branch ssa_req_range_common 
-:      031259 sdp_process_ssa_req:
-0x6f02 031260 bpatchx patch3a_1 ,mem_patch3a 
-0x6f03 031261 call ask_serviceclassid 
-0x6f04 031262 compare 0xff ,temp ,0xff 
-0x6f05 031263 branch sdp_invalid_request_syntax ,true 
-0x6f06 031264 call sdp_store_maxbyte 
-0x6f07 031265 store 2 ,mem_sdp_attribute_maxbyte 
-0x6f08 031266 increase -2 ,timeup 
-0x6f09 031267 call dataelementtype6 
-0x6f0a 031268 arg mem_sdp_attrib_list ,contw 
-0x6f0b 031269 force 0 ,queue 
-:      031270 ssa_req_loop:
-0x6f0c 031271 ifetch 1 ,contr 
-0x6f0d 031272 beq sdp_attribute_range ,ssa_req_range 
-0x6f0e 031273 ifetch 2 ,contr 
-0x6f0f 031274 istore 2 ,contw 
-0x6f10 031275 increase 1 ,queue 
-0x6f11 031276 increase -3 ,timeup 
-0x6f12 031277 increase -3 ,rega 
-0x6f13 031278 nbranch sdp_invalid_request_syntax ,positive 
-0x6f14 031279 nbranch ssa_req_loop ,zero 
-0x6f15 031280 increase -1 ,timeup 
-0x6f16 031281 nbranch sdp_invalid_request_syntax ,zero 
-0x6f17 031282 call l2cap_get_sdp_tx_payload 
-0x6f18 031283 increase 13 ,contw 
-0x6f19 031284 fetch 2 ,mem_sdp_uuid_search_ptr 
-0x6f1a 031285 iforce regc 
-0x6f1b 031286 arg mem_sdp_attrib_list ,rega 
-:      031287 ssa_req_attributelist_next:
-0x6f1c 031288 ifetch 2 ,rega 
-0x6f1d 031289 branch ssa_req_attributelist_end ,blank 
-0x6f1e 031290 iforce regb 
-0x6f1f 031291 call search_attrib 
-0x6f20 031292 branch ssa_req_attributelist_notfound ,blank 
-0x6f21 031293 increase -3 ,contr 
-0x6f22 031294 ifetch 3 ,contr 
-0x6f23 031295 istore 3 ,contw 
-0x6f24 031296 call sdp_data_len 
-0x6f25 031297 iforce loopcnt 
-0x6f26 031298 call memcpy 
-:      031299 ssa_req_attributelist_notfound:
-0x6f27 031300 increase 2 ,rega 
-0x6f28 031301 branch ssa_req_attributelist_next 
-:      031303 ssa_req_attributelist_end:
-0x6f29 031304 call ssa_req_range_lastfreg 
-0x6f2a 031305 fetch 2 ,mem_sdp_tx_pkt_length 
-0x6f2b 031306 beq 14 ,ssa_empty_rsp 
-0x6f2c 031307 call ssa_req_range_attrbutes_length_no_continue 
-0x6f2d 031308 branch ssa_req_range_attrbutes_length_no_continue 
-:      031311 sdp_store_maxbyte:
-0x6f2e 031312 ifetch 2 ,contr 
-0x6f2f 031313 byteswap pdata ,pdata 
-0x6f30 031314 increase -3 ,pdata 
-0x6f31 031315 arg 200 ,temp 
-0x6f32 031316 isub temp ,null 
-0x6f33 031317 nrtn positive 
-0x6f34 031318 setarg 200 
-0x6f35 031319 rtn 
-:      031322 ssa_req_range:
-0x6f36 031323 increase 4 ,contr 
-0x6f37 031324 increase -5 ,timeup 
-0x6f38 031325 increase -5 ,rega 
-0x6f39 031326 nbranch sdp_invalid_request_syntax ,zero 
-0x6f3a 031327 call sdp_store_continue_common 
-0x6f3b 031328 nbranch sdp_invalid_pdu_size ,zero 
-0x6f3c 031329 arg mem_sdp_uuid_search_ptr ,timeup 
-0x6f3d 031330 call search_all_uuid 
-0x6f3e 031331 deposit queue 
-0x6f3f 031332 branch ssa_empty_rsp ,blank 
-0x6f40 031333 store 1 ,mem_handle_humber 
-0x6f41 031335 copy regb ,pdata 
-0x6f42 031336 store 2 ,mem_sdp_all_length 
-0x6f43 031337 arg 0 ,queue 
-0x6f44 031338 arg 0 ,rega 
-0x6f45 031339 call l2cap_get_sdp_tx_payload 
-0x6f46 031340 increase 10 ,contw 
-:      031341 ssa_req_range_find_handle:
-0x6f47 031342 call ssa_req_range_get_length 
-0x6f48 031343 nbranch assert ,user 
-0x6f49 031344 copy contr ,timeup 
-0x6f4a 031345 copy pdata ,regc 
-0x6f4b 031346 iadd rega ,rega 
-0x6f4c 031349 fetch 2 ,mem_sdp_continue_byte 
-0x6f4d 031350 copy pdata ,regb 
-0x6f4e 031351 branch ssa_req_range_first_freg ,blank 
-:      031352 ssa_req_range_later_freg_with_continue:
-0x6f4f 031353 copy rega ,pdata 
-0x6f50 031354 isub regb ,regb 
-0x6f51 031355 branch ssa_req_range_next_handle ,zero 
-0x6f52 031356 nbranch ssa_req_range_next_handle ,positive 
-0x6f53 031357 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6f54 031358 isub regb ,null 
-0x6f55 031359 branch ssa_req_range_maxbyte_with_continue ,zero 
-0x6f56 031360 nbranch ssa_req_range_maxbyte_with_continue ,positive 
-:      031363 ssa_req_range_send_not_maxbyte:
-0x6f57 031364 copy regb ,loopcnt 
-0x6f58 031365 call ssa_req_range_maxbyte_with_continue_cpy 
-0x6f59 031366 fetch 1 ,mem_handle_humber 
-0x6f5a 031367 increase 1 ,queue 
-0x6f5b 031368 isub queue ,null 
-0x6f5c 031369 branch ssa_req_range_lastfreg ,zero 
-0x6f5d 031370 branch ssa_req_range_freg_with_continue 
-:      031372 ssa_req_range_maxbyte_with_continue:
-0x6f5e 031373 copy pdata ,loopcnt 
-0x6f5f 031374 call ssa_req_range_maxbyte_with_continue_cpy 
-0x6f60 031375 branch ssa_req_range_freg_with_continue 
-:      031377 ssa_req_range_maxbyte_with_continue_cpy:
-0x6f61 031378 increase -3 ,contw 
-0x6f62 031379 copy loopcnt ,temp 
-0x6f63 031380 copy regc ,pdata 
-0x6f64 031381 isub regb ,pdata 
-0x6f65 031382 iadd timeup ,contr 
-0x6f66 031383 branch memcpy 
-:      031385 ssa_req_range_next_handle:
-0x6f67 031386 fetch 1 ,mem_handle_humber 
-0x6f68 031387 increase 1 ,queue 
-0x6f69 031388 isub queue ,null 
-0x6f6a 031389 rtn zero 
-0x6f6b 031390 branch ssa_req_range_find_handle 
-:      031392 ssa_req_range_get_length:
-0x6f6c 031393 call disable_user 
-0x6f6d 031394 arg mem_sdp_handle_list ,contr 
-0x6f6e 031395 lshift2 queue ,pdata 
-0x6f6f 031396 iadd contr ,contr 
-0x6f70 031397 ifetcht 4 ,contr 
-0x6f71 031398 call search_handle 
-0x6f72 031399 nrtn zero 
-0x6f73 031400 call sdp_data_len 
-0x6f74 031401 branch enable_user 
-:      031403 ssa_req_range_first_freg:
-0x6f75 031404 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6f76 031405 isub rega ,null 
-0x6f77 031406 nbranch ssa_req_range_firstfreg_maxbyte_with_continue ,positive 
-0x6f78 031407 copy rega ,loopcnt 
-0x6f79 031408 copy loopcnt ,temp 
-0x6f7a 031409 copy timeup ,contr 
-0x6f7b 031410 call memcpy 
-0x6f7c 031411 fetch 2 ,mem_sdp_all_length 
-0x6f7d 031412 isub rega ,null 
-0x6f7e 031413 branch ssa_req_range_freg_no_continue ,zero 
-:      031414 ssa_req_range_firstfreg_not_maxbyte_with_continue:
-0x6f7f 031415 call ssa_req_range_freg_with_continue 
-0x6f80 031416 branch ssa_req_range_attrbutes_length 
-:      031418 ssa_req_range_freg_no_continue:
-0x6f81 031419 call ssa_req_range_lastfreg 
-0x6f82 031420 branch ssa_req_range_attrbutes_length 
-:      031422 ssa_req_range_lastfreg:
-0x6f83 031423 arg sdp_searchattrib_res ,rega 
-:      031424 ssa_req_range_lastfreg_common:
-0x6f84 031425 force 0 ,pdata 
-0x6f85 031426 istore 1 ,contw 
-0x6f86 031427 call ssa_req_range_common 
-0x6f87 031428 fetcht 2 ,mem_sdp_tx_pkt_length 
-0x6f88 031429 increase -5 ,temp 
-0x6f89 031430 byteswap temp ,pdata 
-0x6f8a 031431 istore 2 ,contw 
-0x6f8b 031432 increase -3 ,temp 
-0x6f8c 031433 byteswap temp ,pdata 
-0x6f8d 031434 istore 2 ,contw 
-0x6f8e 031435 rtn 
-:      031437 ssa_req_range_firstfreg_maxbyte_with_continue:
-0x6f8f 031438 copy pdata ,loopcnt 
-0x6f90 031439 copy loopcnt ,temp 
-0x6f91 031440 copy timeup ,contr 
-0x6f92 031441 call memcpy 
-0x6f93 031442 call ssa_req_range_freg_with_continue 
-:      031443 ssa_req_range_attrbutes_length:
-0x6f94 031444 setarg 0x36 
-0x6f95 031445 istore 1 ,contw 
-0x6f96 031446 fetch 2 ,mem_sdp_all_length 
-0x6f97 031447 byteswap pdata ,pdata 
-0x6f98 031448 istore 2 ,contw 
-0x6f99 031449 rtn 
-:      031451 ssa_req_range_attrbutes_length_no_continue:
-0x6f9a 031452 setarg 0x36 
-0x6f9b 031453 istore 1 ,contw 
-0x6f9c 031454 increase -3 ,temp 
-0x6f9d 031455 byteswap temp ,pdata 
-0x6f9e 031456 istore 2 ,contw 
-0x6f9f 031457 rtn 
-:      031459 ssa_req_range_freg_with_continue:
-0x6fa0 031460 arg sdp_searchattrib_res ,rega 
-0x6fa1 031461 setarg 2 
-0x6fa2 031462 istore 1 ,contw 
-0x6fa3 031463 fetch 2 ,mem_sdp_continue_byte 
-0x6fa4 031464 iadd temp ,temp 
-0x6fa5 031465 byteswap temp ,pdata 
-0x6fa6 031466 istore 2 ,contw 
-0x6fa7 031467 call ssa_req_range_common 
-0x6fa8 031468 fetcht 2 ,mem_sdp_tx_pkt_length 
-0x6fa9 031469 increase -5 ,temp 
-0x6faa 031470 byteswap temp ,pdata 
-0x6fab 031471 istore 2 ,contw 
-0x6fac 031472 increase -5 ,temp 
-0x6fad 031473 byteswap temp ,pdata 
-0x6fae 031474 istore 2 ,contw 
-0x6faf 031475 rtn 
-:      031477 ssa_req_range_common:
-0x6fb0 031478 fetch 2 ,mem_sdp_tx_payload_ptr 
-0x6fb1 031479 isub contw ,pdata 
-0x6fb2 031480 sub pdata ,0 ,pdata 
-0x6fb3 031481 store 2 ,mem_sdp_tx_pkt_length 
-0x6fb4 031482 call l2cap_get_sdp_tx_payload 
-0x6fb5 031483 copy rega ,pdata 
-0x6fb6 031484 istore 1 ,contw 
-0x6fb7 031485 fetch 2 ,mem_sdp_transactionid 
-0x6fb8 031486 istore 2 ,contw 
-0x6fb9 031487 rtn 
-:      031500 sdp_process_ssa_res:
-:      031501 sdp_process_ss_res:
-:      031502 sdp_process_sa_res:
-:      031503 sdp_process_error_res:
-0x6fba 031504 rtn 
-:      031537 sdp_invalid_service_record_handle:
-0x6fbb 031538 setarg 0x0200 
-0x6fbc 031539 store 2 ,mem_sdp_error_code 
-0x6fbd 031540 branch sdp_error_response 
-:      031541 sdp_invalid_pdu_size:
-0x6fbe 031542 setarg 0x0400 
-0x6fbf 031543 store 2 ,mem_sdp_error_code 
-0x6fc0 031544 branch sdp_error_response 
-:      031545 sdp_insufficient_resource:
-0x6fc1 031546 setarg 0x0600 
-0x6fc2 031547 store 2 ,mem_sdp_error_code 
-0x6fc3 031548 branch sdp_error_response 
-:      031549 sdp_invalid_request_syntax:
-0x6fc4 031550 setarg 0x0300 
-0x6fc5 031551 store 2 ,mem_sdp_error_code 
-:      031552 sdp_error_response:
-0x6fc6 031553 call l2cap_get_sdp_tx_payload 
-0x6fc7 031554 istore 1 ,contw 
-0x6fc8 031555 fetch 2 ,mem_sdp_transactionid 
-0x6fc9 031556 istore 2 ,contw 
-0x6fca 031557 setarg 0x0200 
-0x6fcb 031558 istore 2 ,contw 
-0x6fcc 031559 fetch 2 ,mem_sdp_error_code 
-0x6fcd 031560 istore 2 ,contw 
-0x6fce 031561 jam 7 ,mem_sdp_tx_pkt_length 
-0x6fcf 031562 rtn 
-:      031567 ask_serviceclassid:
-0x6fd0 031568 arg 0 ,regb 
-0x6fd1 031569 force 0 ,temp 
-0x6fd2 031570 arg mem_sdp_uuid_search_ptr ,contw 
-0x6fd3 031571 call dataelementtype6 
-0x6fd4 031572 branch asksrv_error ,zero 
-:      031573 classidloop:
-0x6fd5 031574 increase 1 ,regb 
-0x6fd6 031575 ifetch 1 ,contr 
-0x6fd7 031576 increase -1 ,rega 
-0x6fd8 031577 increase -1 ,timeup 
-0x6fd9 031578 compare 0x18 ,pdata ,0xf8 
-0x6fda 031579 nbranch asksrv_error ,true 
-0x6fdb 031580 compare 0x04 ,pdata ,0x07 
-0x6fdc 031581 nbranch cmp032 ,true 
-0x6fdd 031582 force 1 ,temp 
-:      031583 skip2bytes:
-0x6fde 031584 ifetch 1 ,contr 
-0x6fdf 031585 increase -1 ,rega 
-0x6fe0 031586 increase -1 ,timeup 
-0x6fe1 031587 bne 0x00 ,frstbwrong 
-0x6fe2 031588 ifetch 1 ,contr 
-0x6fe3 031589 increase -1 ,rega 
-0x6fe4 031590 increase -1 ,timeup 
-0x6fe5 031591 beq 0x00 ,cmpuuid 
-0x6fe6 031592 branch scndbwrong 
-:      031593 frstbwrong:
-0x6fe7 031594 increase 1 ,contr 
-0x6fe8 031595 increase -1 ,rega 
-0x6fe9 031596 increase -1 ,timeup 
-:      031597 scndbwrong:
-0x6fea 031598 increase 2 ,contr 
-0x6feb 031599 increase -2 ,rega 
-0x6fec 031600 increase -2 ,timeup 
-0x6fed 031601 compare 0x00 ,temp ,0xff 
-0x6fee 031602 branch loopornot ,true 
-0x6fef 031603 increase 12 ,contr 
-0x6ff0 031604 increase -12 ,rega 
-0x6ff1 031605 increase -12 ,timeup 
-0x6ff2 031606 branch loopornot 
-:      031607 cmp032:
-0x6ff3 031608 compare 0x02 ,pdata ,0x07 
-0x6ff4 031609 nbranch cmp016 ,true 
-0x6ff5 031610 branch skip2bytes 
-:      031611 cmp016:
-0x6ff6 031612 compare 0x01 ,pdata ,0x07 
-0x6ff7 031613 nbranch asksrv_error ,true 
-:      031614 cmpuuid:
-0x6ff8 031615 increase -2 ,rega 
-0x6ff9 031616 increase -2 ,timeup 
-0x6ffa 031617 ifetch 2 ,contr 
-0x6ffb 031618 sub regb ,4 ,null 
-0x6ffc 031619 branch uuidsize ,zero 
-0x6ffd 031620 istore 2 ,contw 
-:      031621 uuidsize:
-0x6ffe 031622 compare 0x00 ,temp ,0xff 
-0x6fff 031623 branch loopornot ,true 
-0x7000 031624 copy contr ,temp 
-0x7001 031625 ifetch 1 ,contr 
-0x7002 031626 bne 0x00 ,wrong12b 
-0x7003 031627 ifetch 1 ,contr 
-0x7004 031628 bne 0x00 ,wrong12b 
-0x7005 031629 ifetch 1 ,contr 
-0x7006 031630 bne 0x10 ,wrong12b 
-0x7007 031631 ifetch 1 ,contr 
-0x7008 031632 bne 0x00 ,wrong12b 
-0x7009 031633 ifetch 1 ,contr 
-0x700a 031634 bne 0x80 ,wrong12b 
-0x700b 031635 ifetch 1 ,contr 
-0x700c 031636 bne 0x00 ,wrong12b 
-0x700d 031637 ifetch 1 ,contr 
-0x700e 031638 bne 0x00 ,wrong12b 
-0x700f 031639 ifetch 1 ,contr 
-0x7010 031640 bne 0x80 ,wrong12b 
-0x7011 031641 ifetch 1 ,contr 
-0x7012 031642 bne 0x5f ,wrong12b 
-0x7013 031643 ifetch 1 ,contr 
-0x7014 031644 bne 0x9b ,wrong12b 
-0x7015 031645 ifetch 1 ,contr 
-0x7016 031646 bne 0x34 ,wrong12b 
-0x7017 031647 ifetch 1 ,contr 
-0x7018 031648 beq 0xfb ,chck12dn 
-:      031649 wrong12b:
-0x7019 031650 copy temp ,contr 
-:      031651 wrong12b1:
-0x701a 031652 increase 12 ,contr 
-0x701b 031653 force 0x00 ,queue 
-0x701c 031654 force 0x00 ,temp 
-0x701d 031655 branch chck12dn 
-:      031657 chck12dn:
-0x701e 031658 increase -12 ,timeup 
-0x701f 031659 increase -12 ,rega 
-:      031660 loopornot:
-0x7020 031661 force 0x00 ,temp 
-0x7021 031662 compare 0x00 ,rega ,0xff 
-0x7022 031663 nbranch classidloop ,true 
-0x7023 031664 force 0 ,pdata 
-0x7024 031665 istore 2 ,contw 
-0x7025 031666 rtn 
-:      031667 asksrv_error:
-0x7026 031668 arg 0xff ,temp 
-0x7027 031669 rtn 
-:      031679 dataelementtype6:
-0x7028 031680 bpatchx patch3a_4 ,mem_patch3a 
-0x7029 031681 ifetch 1 ,contr 
-0x702a 031682 increase -1 ,timeup 
-0x702b 031683 compare 0x30 ,pdata ,0xf8 
-0x702c 031684 nbranch dsize_error ,true 
-0x702d 031685 compare 0x07 ,pdata ,0x07 
-0x702e 031686 branch dsize32 ,true 
-0x702f 031687 compare 0x06 ,pdata ,0x07 
-0x7030 031688 branch dsize16 ,true 
-0x7031 031689 compare 0x05 ,pdata ,0x07 
-0x7032 031690 nbranch dsize_error ,true 
-0x7033 031692 ifetch 1 ,contr 
-0x7034 031693 copy pdata ,rega 
-0x7035 031694 increase -1 ,timeup 
-0x7036 031695 branch dsize 
-:      031696 dsize32:
-0x7037 031697 increase 2 ,contr 
-0x7038 031698 increase -2 ,timeup 
-:      031699 dsize16:
-0x7039 031700 ifetch 2 ,contr 
-0x703a 031701 byteswap pdata ,rega 
-0x703b 031702 increase -2 ,timeup 
-:      031703 dsize:
-0x703c 031704 force 0x01 ,pdata 
-0x703d 031705 rtn 
-:      031706 dsize_error:
-0x703e 031707 force 0x00 ,pdata 
-0x703f 031708 rtn 
-:      031718 ss_empty_rsp:
-0x7040 031719 setarg sdp_search_res 
-0x7041 031720 store 1 ,mem_sdp_pduid 
-0x7042 031721 branch empty_response 
-:      031722 sa_empty_rsp:
-0x7043 031723 setarg sdp_attribute_res 
-0x7044 031724 store 1 ,mem_sdp_pduid 
-0x7045 031725 branch empty_response 
-:      031726 ssa_empty_rsp:
-0x7046 031727 setarg sdp_searchattrib_res 
-0x7047 031728 store 1 ,mem_sdp_pduid 
-:      031729 empty_response:
-0x7048 031730 call l2cap_get_sdp_tx_payload 
-0x7049 031733 fetch 1 ,mem_sdp_pduid 
-0x704a 031734 copy pdata ,regb 
-0x704b 031735 istore 1 ,contw 
-0x704c 031736 fetch 2 ,mem_sdp_transactionid 
-0x704d 031737 istore 2 ,contw 
-0x704e 031738 setarg 0x0500 
-0x704f 031739 istore 2 ,contw 
-0x7050 031740 compare sdp_attribute_res ,regb ,0xff 
-0x7051 031741 branch fullsearch ,true 
-0x7052 031742 compare sdp_searchattrib_res ,regb ,0xff 
-0x7053 031743 branch fullsearch ,true 
-0x7054 031744 setarg 0x000000 
-0x7055 031745 istore 5 ,contw 
-0x7056 031746 branch outempty 
-:      031748 fullsearch:
-0x7057 031749 setarg 0x350200 
-0x7058 031750 istore 5 ,contw 
-:      031751 outempty:
-0x7059 031752 jam 10 ,mem_sdp_tx_pkt_length 
-0x705a 031753 rtn 
-:      031756 sdp_data_len:
-0x705b 031757 call store_contw 
-0x705c 031758 call store_contr 
-0x705d 031759 call sdp_get_data 
-0x705e 031760 call get_contw 
-0x705f 031761 call get_contr 
-0x7060 031762 copy temp ,pdata 
-0x7061 031763 rtn 
-:      031766 sdp_get_data:
-0x7062 031767 ifetch 1 ,contr 
-0x7063 031768 and pdata ,0x7 ,loopcnt 
-0x7064 031769 rshift3 pdata ,pdata 
-0x7065 031770 bne 0 ,sdp_get_data_type_not0 
-:      031771 sdp_get_data_type0:
-0x7066 031772 force 1 ,pdata 
-0x7067 031773 force 1 ,temp 
-0x7068 031774 rtn 
-:      031776 sdp_get_data_type_not0_sizeindex01234:
-0x7069 031777 call left_shift_n 
-0x706a 031778 add pdata ,1 ,temp 
-0x706b 031779 rtn 
-:      031780 sdp_get_data_type_not0:
-0x706c 031781 deposit loopcnt 
-0x706d 031782 sub pdata ,4 ,null 
-0x706e 031783 branch sdp_get_data_type_not0_sizeindex01234 ,positive 
-0x706f 031784 beq 5 ,sdp_get_data_type_not0_sizeindex5 
-0x7070 031785 beq 6 ,sdp_get_data_type_not0_sizeindex6 
-0x7071 031786 beq 7 ,sdp_get_data_type_not0_sizeindex7 
-0x7072 031787 rtn 
-:      031789 sdp_get_data_type_not0_sizeindex5:
-0x7073 031790 ifetch 1 ,contr 
-0x7074 031791 add pdata ,2 ,temp 
-0x7075 031792 rtn 
-:      031793 sdp_get_data_type_not0_sizeindex6:
-0x7076 031794 ifetch 2 ,contr 
-0x7077 031795 byteswap pdata ,pdata 
-0x7078 031796 add pdata ,3 ,temp 
-0x7079 031797 rtn 
-:      031798 sdp_get_data_type_not0_sizeindex7:
-0x707a 031799 ifetch 2 ,contr 
-0x707b 031800 byteswap pdata ,pdata 
-0x707c 031801 ifetcht 2 ,contr 
-0x707d 031802 byteswap temp ,temp 
-0x707e 031803 lshift16 temp ,temp 
-0x707f 031804 iadd temp ,pdata 
-0x7080 031805 add pdata ,5 ,temp 
-0x7081 031806 rtn 
-:      031812 search_all_uuid:
-0x7082 031813 bpatchx patch3a_5 ,mem_patch3a 
-0x7083 031814 force 0 ,queue 
-0x7084 031815 arg 0 ,regb 
-0x7085 031816 arg mem_sdp_handle_list ,contw 
-:      031817 search_all_uuid_llop:
-0x7086 031818 ifetch 2 ,timeup 
-0x7087 031819 rtn blank 
-0x7088 031820 call search_uuid 
-0x7089 031821 copy queue ,pdata 
-0x708a 031822 rtneq sdp_max_handle_number 
-0x708b 031823 increase 2 ,timeup 
-0x708c 031824 branch search_all_uuid_llop 
-:      031826 search_uuid:
-0x708d 031828 iforce regc 
-0x708e 031830 fetch 2 ,mem_ui_uuid_table 
-0x708f 031831 iforce contr 
-:      031832 search_uuid_next:
-0x7090 031833 copy queue ,pdata 
-0x7091 031834 rtneq sdp_max_handle_number 
-0x7092 031835 disable user 
-0x7093 031836 ifetch 1 ,contr 
-0x7094 031837 rtn blank 
-0x7095 031838 iforce loopcnt 
-:      031839 search_uuid_loop:
-0x7096 031840 ifetch 2 ,contr 
-0x7097 031841 isub regc ,null 
-0x7098 031842 nbranch search_uuid_not_found ,zero 
-0x7099 031843 enable user 
-:      031844 search_uuid_not_found:
-0x709a 031845 loop search_uuid_loop 
-0x709b 031846 ifetcht 4 ,contr 
-0x709c 031847 copy contr ,rega 
-0x709d 031848 nbranch search_uuid_nomatch ,user 
-0x709e 031849 arg mem_sdp_handle_list ,contr 
-0x709f 031850 arg sdp_max_handle_number ,loopcnt 
-:      031851 search_uuid_check_same_handle:
-0x70a0 031852 ifetch 4 ,contr 
-0x70a1 031853 branch search_uuid_store_handle ,blank 
-0x70a2 031854 isub temp ,null 
-0x70a3 031855 branch search_uuid_nomatch ,zero 
-0x70a4 031856 loop search_uuid_check_same_handle 
-0x70a5 031857 rtn 
-:      031858 search_uuid_store_handle:
-0x70a6 031859 istoret 4 ,contw 
-0x70a7 031860 increase 1 ,queue 
-0x70a8 031861 copy rega ,contr 
-0x70a9 031862 call sdp_data_len 
-0x70aa 031863 iadd regb ,regb 
-0x70ab 031864 iadd contr ,contr 
-0x70ac 031865 branch search_uuid_next 
-:      031866 search_uuid_nomatch:
-0x70ad 031867 copy rega ,contr 
-0x70ae 031868 call sdp_get_data 
-0x70af 031869 iadd contr ,contr 
-0x70b0 031870 branch search_uuid_next 
-:      031876 search_handle:
-0x70b1 031877 bpatchx patch3a_6 ,mem_patch3a 
-0x70b2 031878 fetch 2 ,mem_ui_uuid_table 
-0x70b3 031879 iforce contr 
-:      031880 search_handle_loop:
-0x70b4 031881 ifetch 1 ,contr 
-0x70b5 031882 branch disable_zero ,blank 
-0x70b6 031883 lshift pdata ,pdata 
-0x70b7 031884 iadd contr ,contr 
-0x70b8 031885 ifetch 4 ,contr 
-0x70b9 031886 isub temp ,null 
-0x70ba 031887 rtn zero 
-0x70bb 031888 deposit contw 
-0x70bc 031889 store 2 ,mem_contw 
-0x70bd 031890 storet 8 ,mem_temp 
-0x70be 031891 call sdp_get_data 
-0x70bf 031892 iadd contr ,contr 
-0x70c0 031893 copy contr ,pdata 
-0x70c1 031894 fetcht 2 ,mem_contw 
-0x70c2 031895 copy temp ,contw 
-0x70c3 031896 fetcht 8 ,mem_temp 
-0x70c4 031897 copy pdata ,contr 
-0x70c5 031898 branch search_handle_loop 
-:      031904 search_attrib:
-0x70c6 031905 bpatchx patch3a_7 ,mem_patch3a 
-0x70c7 031906 fetch 2 ,mem_ui_uuid_table 
-0x70c8 031907 iforce contr 
-:      031908 search_attrib_next:
-0x70c9 031909 ifetch 1 ,contr 
-0x70ca 031910 branch search_attrib_end ,blank 
-0x70cb 031911 iforce loopcnt 
-:      031912 search_attrib_loop:
-0x70cc 031913 ifetch 2 ,contr 
-0x70cd 031914 isub regc ,null 
-0x70ce 031915 branch search_attrib_found_uuid ,zero 
-0x70cf 031916 loop search_attrib_loop 
-0x70d0 031917 increase 4 ,contr 
-0x70d1 031918 call sdp_get_data 
-0x70d2 031919 iadd contr ,contr 
-0x70d3 031920 branch search_attrib_next 
-:      031921 search_attrib_found_uuid:
-0x70d4 031922 increase -1 ,loopcnt 
-0x70d5 031923 lshift loopcnt ,pdata 
-0x70d6 031924 iadd contr ,contr 
-0x70d7 031925 increase 4 ,contr 
-0x70d8 031926 call sdp_get_data 
-0x70d9 031927 iadd contr ,timeup 
-:      031928 search_attrib_loop_attribs:
-0x70da 031929 increase 1 ,contr 
-0x70db 031930 ifetch 2 ,contr 
-0x70dc 031931 isub regb ,null 
-0x70dd 031935 branch disable_blank ,zero 
-0x70de 031936 call sdp_data_len 
-0x70df 031937 iadd contr ,contr 
-0x70e0 031938 deposit timeup 
-0x70e1 031939 isub contr ,null 
-0x70e2 031940 branch search_attrib_end ,zero 
-0x70e3 031941 branch search_attrib_loop_attribs 
-:      031942 search_attrib_end:
-0x70e4 031943 force 0 ,contr 
-0x70e5 031944 force 0 ,pdata 
-0x70e6 031945 rtn 
-:      031951 search_handle_attrib:
-0x70e7 031952 bpatchx patch3b_0 ,mem_patch3b 
-0x70e8 031953 fetch 2 ,mem_ui_uuid_table 
-0x70e9 031954 iforce contr 
-:      031955 search_handle_attrib_next:
-0x70ea 031956 ifetch 1 ,contr 
-0x70eb 031957 branch search_handle_attrib_end ,blank 
-0x70ec 031958 lshift pdata ,pdata 
-0x70ed 031959 iadd contr ,contr 
-0x70ee 031960 ifetch 4 ,contr 
-0x70ef 031961 isub temp ,null 
-0x70f0 031962 branch search_handl_attrib_found_handle ,zero 
-0x70f1 031963 call sdp_get_data 
-0x70f2 031964 iadd contr ,contr 
-0x70f3 031965 branch search_handle_attrib_next 
-:      031966 search_handl_attrib_found_handle:
-0x70f4 031967 call sdp_get_data 
-0x70f5 031968 iadd contr ,timeup 
-:      031969 search_handle_attrib_loop_attribs:
-0x70f6 031970 increase 1 ,contr 
-0x70f7 031971 ifetch 2 ,contr 
-0x70f8 031972 isub regb ,null 
-0x70f9 031973 rtn zero 
-0x70fa 031974 call sdp_data_len 
-0x70fb 031975 iadd contr ,contr 
-0x70fc 031976 deposit timeup 
-0x70fd 031977 isub contr ,null 
-0x70fe 031978 branch search_handle_attrib_end ,zero 
-0x70ff 031979 branch search_handle_attrib_loop_attribs 
-:      031980 search_handle_attrib_end:
-0x7100 031981 force 0 ,contr 
-0x7101 031982 rtn 
-:      031986 search_rfcomm_cn:
-0x7102 031987 arg 0x0400 ,regb 
-0x7103 031988 call search_handl_attrib_found_handle 
-0x7104 031989 arg 0x0300 ,regb 
-0x7105 031990 call search_uuid_in_data 
-0x7106 031991 nrtn user 
-0x7107 031992 sub rega ,3 ,null 
-0x7108 031993 branch disable_user ,positive 
-0x7109 031994 ifetch 1 ,contr 
-0x710a 031995 bne 0x08 ,disable_user 
-0x710b 031996 ifetch 1 ,contr 
-0x710c 031997 rtn 
-:      032002 search_uuid_in_data:
-0x710d 032003 bpatchx patch3b_1 ,mem_patch3b 
-0x710e 032004 call sdp_get_data 
-0x710f 032005 copy pdata ,rega 
-:      032006 search_uuid_in_data_loop:
-0x7110 032007 ifetch 1 ,contr 
-0x7111 032008 and pdata ,0x7 ,loopcnt 
-0x7112 032009 rshift3 pdata ,pdata 
-0x7113 032010 sub pdata ,3 ,null 
-0x7114 032011 branch search_uuid_in_data_found_uuid ,zero 
-0x7115 032012 copy loopcnt ,pdata 
-0x7116 032013 beq 5 ,search_uuid_in_data_found_element_index5 
-0x7117 032014 beq 6 ,search_uuid_in_data_found_element_index6 
-0x7118 032015 beq 7 ,search_uuid_in_data_found_element_index7 
-0x7119 032016 increase -1 ,contr 
-0x711a 032017 call sdp_get_data 
-0x711b 032018 iadd contr ,contr 
-0x711c 032019 copy rega ,pdata 
-0x711d 032020 isub temp ,rega 
-0x711e 032021 branch disable_user ,zero 
-0x711f 032022 branch search_uuid_in_data_loop 
-:      032024 search_uuid_in_data_found_element_index5:
-0x7120 032025 increase -2 ,rega 
-0x7121 032026 increase 1 ,contr 
-0x7122 032027 branch search_uuid_in_data_loop 
-:      032028 search_uuid_in_data_found_element_index6:
-0x7123 032029 increase -3 ,rega 
-0x7124 032030 increase 2 ,contr 
-0x7125 032031 branch search_uuid_in_data_loop 
-:      032032 search_uuid_in_data_found_element_index7:
-0x7126 032033 increase -5 ,rega 
-0x7127 032034 increase 4 ,contr 
-0x7128 032035 branch search_uuid_in_data_loop 
-:      032037 search_uuid_in_data_found_uuid:
-0x7129 032038 increase -1 ,rega 
-0x712a 032039 copy loopcnt ,pdata 
-0x712b 032040 beq 1 ,search_uuid_in_data_type_uuid_16 
-0x712c 032041 beq 2 ,search_uuid_in_data_type_uuid_32 
-0x712d 032042 beq 4 ,search_uuid_in_data_type_uuid_128 
-0x712e 032043 branch disable_user 
-:      032044 search_uuid_in_data_type_uuid_128:
-0x712f 032045 increase -12 ,rega 
-:      032046 search_uuid_in_data_type_uuid_32:
-0x7130 032047 ifetch 2 ,contr 
-0x7131 032048 increase -2 ,rega 
-:      032049 search_uuid_in_data_type_uuid_16:
-0x7132 032050 ifetch 2 ,contr 
-0x7133 032051 isub regb ,null 
-0x7134 032052 branch enable_user ,zero 
-0x7135 032053 increase -2 ,rega 
-0x7136 032054 branch disable_user ,zero 
-0x7137 032055 branch search_uuid_in_data_loop 
-:      032114 sdp_send_spp_request:
-0x7138 032115 call l2cap_get_sdp_tx_payload 
-0x7139 032116 copy pdata ,contw 
-0x713a 032117 setarg 6 
-0x713b 032118 istore 1 ,contw 
-0x713c 032119 setarg sdp_tid_spp 
-0x713d 032120 istore 2 ,contw 
-0x713e 032121 setarg 0x0f00 
-0x713f 032122 istore 2 ,contw 
-0x7140 032123 setarg 0x1a0535 
-0x7141 032124 istore 3 ,contw 
-0x7142 032125 setarg 0x0111 
-0x7143 032126 lshift16 pdata ,pdata 
-0x7144 032127 istore 4 ,contw 
-0x7145 032128 setarg 0x2600 
-0x7146 032129 istore 2 ,contw 
-0x7147 032130 setarg 0x0335 
-0x7148 032131 istore 2 ,contw 
-0x7149 032132 setarg 0x0009 
-0x714a 032133 istore 2 ,contw 
-0x714b 032134 setarg 0x0004 
-0x714c 032135 istore 2 ,contw 
-0x714d 032136 jam 0x14 ,mem_sdp_tx_pkt_length 
-0x714e 032137 rtn 
-:      032141 function_g2:
-0x714f 032142 bpatchx patch3b_2 ,mem_patch3b 
-0x7150 032143 jam 80 ,mem_aes_cmac_data_length 
-0x7151 032144 arg memdat ,contw 
-0x7152 032145 arg mem_le_srand ,contr 
-0x7153 032146 call memcpy16 
-0x7154 032147 arg mem_le_pubkey_local_x_256 ,contr 
-0x7155 032148 call memcpy32 
-0x7156 032149 arg mem_le_pubkey_remote_x_256 ,contr 
-0x7157 032150 call memcpy32 
-0x7158 032151 call inverse_memdat 
-0x7159 032152 arg mem_le_mrand ,contr 
-0x715a 032153 call store_inverse_k 
-0x715b 032154 call function_aes_cmac 
-0x715c 032156 arg mem_aes_cmac_temp ,contw 
-0x715d 032157 call load_inverse_result 
-0x715e 032158 setarg 1000000 
-0x715f 032159 copy pdata ,rega 
-0x7160 032160 fetch 4 ,mem_aes_cmac_temp 
-0x7161 032161 idiv rega 
-0x7162 032162 call wait_div_end 
-0x7163 032163 remainder pdata 
-0x7164 032164 store 4 ,mem_gkey 
-0x7165 032166 rtn 
-:      032168 function_f6_eb:
-0x7166 032169 jam 65 ,mem_aes_cmac_data_length 
-0x7167 032170 arg memdat ,contw 
-0x7168 032171 call store_addr_common_a 
-0x7169 032172 call store_addr_common_b 
-0x716a 032173 fetch 3 ,mem_le_pres + 1 
-0x716b 032174 istore 3 ,contw 
-0x716c 032177 call get_r 
-0x716d 032179 arg mem_le_mrand ,contr 
-0x716e 032180 call memcpy16 
-0x716f 032181 arg mem_le_srand ,contr 
-0x7170 032182 call memcpy16 
-0x7171 032183 call inverse_memdat 
-0x7172 032184 arg mem_le_mackey ,contr 
-0x7173 032185 arg mem_aes_cmac_k ,contw 
-0x7174 032186 call memcpy16 
-0x7175 032188 branch function_aes_cmac 
-:      032192 get_r:
-0x7176 032193 fetch 4 ,mem_le_tk 
-0x7177 032194 istore 4 ,contw 
-0x7178 032195 call memset0_4 
-0x7179 032196 branch memset0_8 
-:      032198 function_f6_ea:
-0x717a 032199 bpatchx patch3b_3 ,mem_patch3b 
-0x717b 032200 jam 65 ,mem_aes_cmac_data_length 
-0x717c 032201 arg memdat ,contw 
-0x717d 032202 call store_addr_common_b 
-0x717e 032203 call store_addr_common_a 
-0x717f 032204 fetch 3 ,mem_le_preq + 1 
-0x7180 032205 istore 3 ,contw 
-0x7181 032208 call get_r 
-0x7182 032209 arg mem_le_srand ,contr 
-0x7183 032210 call memcpy16 
-0x7184 032211 arg mem_le_mrand ,contr 
-0x7185 032212 call memcpy16 
-0x7186 032213 call inverse_memdat 
-0x7187 032214 arg mem_le_mackey ,contr 
-0x7188 032215 arg mem_aes_cmac_k ,contw 
-0x7189 032216 call memcpy16 
-0x718a 032218 call function_aes_cmac 
-0x718b 032219 arg mem_aes_cmac_temp ,contw 
-0x718c 032220 branch load_inverse_result 
-:      032222 function_f5:
-0x718d 032223 jam 32 ,mem_aes_cmac_data_length 
-0x718e 032224 arg mem_le_dhkey_256 ,contr 
-0x718f 032225 arg memdat ,contw 
-0x7190 032226 call memcpy32 
-0x7191 032227 call inverse_memdat 
-0x7192 032228 arg mem_le_slat ,contr 
-0x7193 032229 call store_inverse_k 
-0x7194 032230 call function_aes_cmac 
-0x7195 032231 arg mem_aes_cmac_k ,contw 
-0x7196 032232 call store_aes_result 
-0x7197 032233 arg 1 ,temp 
-0x7198 032234 call function_f5_common 
-0x7199 032235 arg mem_le_ltk ,contw 
-0x719a 032236 call load_inverse_result 
-0x719b 032237 arg 0 ,temp 
-0x719c 032238 call function_f5_common 
-0x719d 032239 arg mem_le_mackey ,contw 
-0x719e 032241 branch store_aes_result 
-:      032244 function_f5_common:
-0x719f 032245 bpatchx patch3b_4 ,mem_patch3b 
-0x71a0 032246 jam 53 ,mem_aes_cmac_data_length 
-0x71a1 032247 setarg 0x100 
-0x71a2 032248 store 2 ,memdat 
-0x71a3 032249 call store_addr_common_b 
-0x71a4 032250 call store_addr_common_a 
-0x71a5 032251 arg mem_le_srand ,contr 
-0x71a6 032252 call memcpy16 
-0x71a7 032253 arg mem_le_mrand ,contr 
-0x71a8 032254 call memcpy16 
-0x71a9 032256 setarg 0x6c65 
-0x71aa 032257 istore 2 ,contw 
-0x71ab 032258 setarg 0x6274 
-0x71ac 032259 istore 2 ,contw 
-0x71ad 032260 istoret 1 ,contw 
-0x71ae 032261 call inverse_memdat 
-0x71af 032262 branch function_aes_cmac 
-:      032264 store_addr_common_b:
-0x71b0 032265 fetch 6 ,mem_le_lap 
-0x71b1 032266 istore 6 ,contw 
-0x71b2 032267 fetch 1 ,mem_le_conn_own_addr_type 
-0x71b3 032268 istore 1 ,contw 
-0x71b4 032269 rtn 
-:      032271 store_addr_common_a:
-0x71b5 032272 fetch 6 ,mem_le_plap 
-0x71b6 032273 istore 6 ,contw 
-0x71b7 032278 fetch 1 ,mem_le_conn_peer_addr_type 
-0x71b8 032279 istore 1 ,contw 
-0x71b9 032280 rtn 
-:      032282 function_f4_ca:
-0x71ba 032283 jam 65 ,mem_aes_cmac_data_length 
-0x71bb 032284 fetch 1 ,mem_passkey_1bit 
-0x71bc 032285 store 1 ,memdat 
-0x71bd 032286 arg mem_le_pubkey_local_x_256 ,contr 
-0x71be 032287 call memcpy32 
-0x71bf 032288 arg mem_le_pubkey_remote_x_256 ,contr 
-0x71c0 032289 call memcpy32 
-0x71c1 032290 call inverse_memdat 
-0x71c2 032291 arg mem_le_mrand ,contr 
-0x71c3 032292 call store_inverse_k 
-0x71c4 032293 branch function_aes_cmac 
-:      032296 function_f4_cb:
-0x71c5 032297 jam 65 ,mem_aes_cmac_data_length 
-0x71c6 032298 fetch 1 ,mem_passkey_1bit 
-0x71c7 032299 store 1 ,memdat 
-0x71c8 032300 arg mem_le_pubkey_remote_x_256 ,contr 
-0x71c9 032301 call memcpy32 
-0x71ca 032302 arg mem_le_pubkey_local_x_256 ,contr 
-0x71cb 032303 call memcpy32 
-0x71cc 032304 call inverse_memdat 
-0x71cd 032305 arg mem_le_srand ,contr 
-0x71ce 032306 call store_inverse_k 
-0x71cf 032307 branch function_aes_cmac 
-:      032309 function_aes_cmac:
-0x71d0 032310 bpatchx patch3b_5 ,mem_patch3b 
-0x71d1 032311 call function_aes_cmac_generate_subkey 
-0x71d2 032315 fetch 1 ,mem_aes_cmac_data_length 
-0x71d3 032316 copy pdata ,temp 
-:      032317 function_ceil16:
-0x71d4 032318 increase 15 ,pdata 
-0x71d5 032319 rshift4 pdata ,pdata 
-0x71d6 032320 copy pdata ,regb 
-0x71d7 032321 branch function_aes_cmac_set_flag_0_balnk ,blank 
-0x71d8 032322 and temp ,0x0f ,pdata 
-0x71d9 032323 nbranch function_aes_cmac_set_flag_0 ,blank 
-0x71da 032325 arg mem_aes_cmac_k1 ,regc 
-0x71db 032326 arg memdat ,pdata 
-0x71dc 032327 increase -16 ,pdata 
-0x71dd 032330 iadd temp ,rega 
-0x71de 032331 arg mem_aes_cmac_m_last ,contw 
-0x71df 032332 arg 4 ,loopcnt 
-0x71e0 032333 call xor_loop 
-0x71e1 032337 branch function_aes_cmac_aes 
-:      032339 function_aes_cmac_set_flag_0_balnk:
-0x71e2 032340 arg 1 ,regb 
-0x71e3 032341 arg 0 ,rega 
-0x71e4 032343 branch function_aes_cmac_set_flag_0_common 
-:      032346 function_aes_cmac_set_flag_0:
-0x71e5 032348 and temp ,0x0f ,rega 
-:      032349 function_aes_cmac_set_flag_0_common:
-0x71e6 032350 arg memdat ,pdata 
-0x71e7 032351 iadd temp ,pdata 
-0x71e8 032352 isub rega ,contr 
-0x71e9 032354 arg mem_aes_cmac_temp ,contw 
-0x71ea 032355 call function_aes_cmac_padding 
-0x71eb 032357 arg mem_aes_cmac_k2 ,regc 
-0x71ec 032358 arg mem_aes_cmac_temp ,rega 
-0x71ed 032359 arg mem_aes_cmac_m_last ,contw 
-0x71ee 032360 arg 4 ,loopcnt 
-0x71ef 032361 call xor_loop 
-:      032368 function_aes_cmac_aes:
-0x71f0 032373 call aes_clear_data 
-0x71f1 032374 call aes_init 
-0x71f2 032377 arg memdat ,contr 
-:      032378 function_aes_cmac_aes_loop:
-0x71f3 032380 increase -1 ,regb 
-0x71f4 032381 deposit regb 
-0x71f5 032382 branch function_aes_cmac_aes_loop_end ,blank 
-0x71f6 032383 call load_data128 
-0x71f7 032384 call do_aes_cbc 
-0x71f8 032385 branch function_aes_cmac_aes_loop 
-:      032387 function_aes_cmac_aes_loop_end:
-0x71f9 032388 arg mem_aes_cmac_temp ,contw 
-0x71fa 032389 call store_aes_result 
-0x71fb 032390 arg mem_aes_cmac_m_last ,contr 
-0x71fc 032391 call load_data128 
-0x71fd 032392 call aes_init 
-0x71fe 032393 arg mem_aes_cmac_temp ,contr 
-0x71ff 032394 call load_data128 
-0x7200 032395 branch do_aes_cbc 
-:      032399 load_inverse_result:
-0x7201 032401 copy contw ,rega 
-0x7202 032402 call store_aes_result 
-0x7203 032404 arg 16 ,loopcnt 
-0x7204 032405 branch inverse_data 
-:      032407 store_inverse_k:
-0x7205 032408 arg mem_aes_cmac_k ,contw 
-0x7206 032409 call memcpy16 
-:      032410 inverse_k:
-0x7207 032411 arg 16 ,loopcnt 
-0x7208 032412 arg mem_aes_cmac_k ,rega 
-0x7209 032413 branch inverse_data 
-:      032415 inverse_memdat:
-0x720a 032416 fetch 1 ,mem_aes_cmac_data_length 
-0x720b 032417 copy pdata ,loopcnt 
-0x720c 032418 arg memdat ,rega 
-0x720d 032419 branch inverse_data 
-:      032421 bn_lshift_0_inverse:
-0x720e 032422 ifetch 1 ,rega 
-0x720f 032423 lshift pdata ,pdata 
-0x7210 032424 isolate1 0 ,regc 
-0x7211 032425 setflag true ,0 ,pdata 
-0x7212 032426 isolate1 8 ,pdata 
-0x7213 032427 setflag true ,0 ,regc 
-0x7214 032428 istore 1 ,rega 
-0x7215 032429 increase -1 ,rega 
-0x7216 032430 loop bn_lshift_0_inverse 
-0x7217 032431 rtn 
-:      032433 function_aes_cmac_k1_inverse:
-0x7218 032434 arg mem_aes_cmac_k1 ,rega 
-:      032435 function_aes_cmac_inverse_common:
-0x7219 032436 increase 15 ,rega 
-0x721a 032437 force 16 ,loopcnt 
-0x721b 032438 force 0 ,regc 
-0x721c 032439 branch bn_lshift_0_inverse 
-:      032441 function_aes_cmac_k2_inverse:
-0x721d 032442 arg mem_aes_cmac_k2 ,rega 
-0x721e 032443 branch function_aes_cmac_inverse_common 
-:      032446 function_aes_cmac_generate_subkey:
-0x721f 032447 arg mem_aes_cmac_k ,contr 
-0x7220 032448 call load_key 
-0x7221 032451 force regidx_xor ,regext_index 
-0x7222 032452 call aes_clear 
-0x7223 032453 call aes_clear_data 
-0x7224 032454 call do_aes_ocb 
-0x7225 032459 arg mem_aes_cmac_k1 ,contw 
-0x7226 032460 call store_aes_result 
-:      032461 function_aes_cmac_k1:
-0x7227 032462 bpatchx patch3b_6 ,mem_patch3b 
-0x7228 032463 fetch 1 ,mem_aes_cmac_k1 
-0x7229 032464 isolate1 7 ,pdata 
-0x722a 032465 nbranch function_aes_cmac_k1_0 ,true 
-0x722b 032466 call function_aes_cmac_k1_inverse 
-0x722c 032469 arg mem_aes_cmac_k1 ,regc 
-0x722d 032471 arg mem_aes_cmac_k1 ,contw 
-0x722e 032474 call function_aes_cmac_xor_rb 
-0x722f 032475 branch function_aes_cmac_k2 
-:      032476 function_aes_cmac_k1_0:
-0x7230 032477 call function_aes_cmac_k1_inverse 
-:      032478 function_aes_cmac_k2:
-0x7231 032480 arg mem_aes_cmac_k1 ,contr 
-0x7232 032481 arg mem_aes_cmac_k2 ,contw 
-0x7233 032482 call memcpy16 
-0x7234 032483 fetch 1 ,mem_aes_cmac_k2 
-0x7235 032484 isolate1 7 ,pdata 
-0x7236 032485 nbranch function_aes_cmac_k2_inverse ,true 
-0x7237 032486 call function_aes_cmac_k2_inverse 
-0x7238 032488 arg mem_aes_cmac_k2 ,regc 
-0x7239 032490 arg mem_aes_cmac_k2 ,contw 
-:      032496 function_aes_cmac_xor_rb:
-0x723a 032497 arg 3 ,loopcnt 
-:      032498 function_aes_cmac_xor_rb_loop:
-0x723b 032499 arg 0 ,temp 
-0x723c 032500 call function_aes_cmac_xor_loop_common 
-0x723d 032501 increase 4 ,regc 
-0x723e 032502 loop function_aes_cmac_xor_rb_loop 
-0x723f 032503 arg 0x8700 ,temp 
-0x7240 032504 lshift16 temp ,temp 
-:      032505 function_aes_cmac_xor_loop_common:
-0x7241 032506 ifetch 4 ,regc 
-0x7242 032507 ixor temp ,pdata 
-0x7243 032508 istore 4 ,contw 
-0x7244 032509 rtn 
-:      032515 function_aes_cmac_padding:
-0x7245 032516 bpatchx patch3b_7 ,mem_patch3b 
-0x7246 032517 arg 16 ,loopcnt 
-0x7247 032518 arg 0 ,pdata 
-:      032519 function_aes_cmac_padding_loop:
-0x7248 032520 isub rega ,null 
-0x7249 032521 branch function_aes_cmac_padding_beq_length ,zero 
-0x724a 032522 branch function_aes_cmac_padding_big_length ,positive 
-0x724b 032523 ifetcht 1 ,contr 
-0x724c 032524 istoret 1 ,contw 
-:      032525 function_aes_cmac_padding_loop2:
-0x724d 032526 increase 1 ,pdata 
-0x724e 032527 loop function_aes_cmac_padding_loop 
-0x724f 032528 rtn 
-:      032529 function_aes_cmac_padding_beq_length:
-0x7250 032530 arg 0x80 ,temp 
-:      032531 function_aes_cmac_padding_common:
-0x7251 032532 istoret 1 ,contw 
-0x7252 032533 branch function_aes_cmac_padding_loop2 
-:      032535 function_aes_cmac_padding_big_length:
-0x7253 032536 arg 0 ,temp 
-0x7254 032537 branch function_aes_cmac_padding_common 
-:      032540 generate_kinit:
-0x7255 032541 call function_e22 
-0x7256 032542 arg mem_input_store ,contr 
-0x7257 032543 arg mem_kinit ,contw 
-0x7258 032544 branch memcpy16 
-:      032547 function_e21:
-0x7259 032548 disable user 
-0x725a 032549 call function_expand 
-0x725b 032550 arg mem_random_number ,contr 
-0x725c 032551 arg mem_x ,contw 
-0x725d 032552 force 15 ,loopcnt 
-0x725e 032553 call memcpy 
-0x725f 032554 ifetch 1 ,contr 
-0x7260 032555 xor_into 6 ,pdata 
-0x7261 032556 istore 1 ,contw 
-0x7262 032557 setarg mem_y 
-0x7263 032558 store 2 ,memp_ar_input 
-0x7264 032559 setarg mem_x 
-0x7265 032560 store 2 ,memp_ar_key 
-0x7266 032561 set1 mark_ar2 ,mark 
-0x7267 032562 branch function_ar 
-:      032566 function_e22:
-0x7268 032567 fetcht 1 ,mem_pin_length 
-0x7269 032568 force 16 ,regb 
-0x726a 032569 add temp ,6 ,regc 
-0x726b 032570 sub regc ,16 ,null 
-0x726c 032571 branch function_e22_pin_init ,positive 
-0x726d 032572 force 16 ,regc 
-:      032573 function_e22_pin_init:
-0x726e 032574 arg mem_x ,contw 
-:      032575 function_e22_genx_pin:
-0x726f 032576 arg mem_pin ,contr 
-0x7270 032577 copy temp ,loopcnt 
-0x7271 032578 disable user 
-:      032579 function_e22_genx_loop:
-0x7272 032580 ifetch 1 ,contr 
-0x7273 032581 istore 1 ,contw 
-0x7274 032582 increase -1 ,regb 
-0x7275 032583 branch function_e22_genx_end ,zero 
-0x7276 032584 loop function_e22_genx_loop 
-0x7277 032585 branch function_e22_genx_pin ,user 
-0x7278 032586 enable user 
-0x7279 032587 force 6 ,loopcnt 
-0x727a 032588 copy rega ,contr 
-0x727b 032589 branch function_e22_genx_loop 
-:      032590 function_e22_genx_end:
-0x727c 032591 arg mem_random_number ,contr 
-0x727d 032592 arg mem_y ,contw 
-0x727e 032593 call memcpy16 
-0x727f 032594 fetch 1 ,mem_y15 
-0x7280 032595 ixor regc ,pdata 
-0x7281 032596 store 1 ,mem_y15 
-0x7282 032597 setarg mem_y 
-0x7283 032598 store 2 ,memp_ar_input 
-0x7284 032599 setarg mem_x 
-0x7285 032600 store 2 ,memp_ar_key 
-0x7286 032601 set1 mark_ar2 ,mark 
-0x7287 032602 branch function_ar 
-:      032607 function_e1:
-0x7288 032608 disable user 
-0x7289 032609 call function_expand 
-0x728a 032610 branch function_hash 
-:      032612 function_e3:
-0x728b 032613 arg mem_aco ,rega 
-0x728c 032614 enable user 
-0x728d 032615 call function_expand 
-0x728e 032616 call function_hash 
-0x728f 032617 arg mem_input_store ,contr 
-0x7290 032618 arg mem_kc ,contw 
-0x7291 032619 branch memcpy16 
-:      032622 function_hash:
-0x7292 032623 setarg mem_random_number 
-0x7293 032624 store 2 ,memp_ar_input 
-0x7294 032625 setarg mem_link_key 
-0x7295 032626 store 2 ,memp_ar_key 
-0x7296 032627 set0 mark_ar2 ,mark 
-0x7297 032628 call function_ar 
-0x7298 032629 arg mem_input_store ,rega 
-0x7299 032630 arg mem_random_number ,regb 
-0x729a 032631 arg mem_x ,contw 
-0x729b 032632 call xor16 
-0x729c 032633 arg mem_x ,rega 
-0x729d 032634 arg mem_y ,regb 
-0x729e 032635 copy regb ,contw 
-0x729f 032636 enable user 
-0x72a0 032637 call add16 
-0x72a1 032638 call key_offset 
-0x72a2 032639 setarg mem_y 
-0x72a3 032640 store 2 ,memp_ar_input 
-0x72a4 032641 setarg mem_x 
-0x72a5 032642 store 2 ,memp_ar_key 
-0x72a6 032643 set1 mark_ar2 ,mark 
-0x72a7 032644 branch function_ar 
-:      032648 function_ar:
-0x72a8 032649 jam 0 ,mem_ar_hround 
-0x72a9 032650 fetch 2 ,memp_ar_key 
-0x72aa 032651 iforce contr 
-0x72ab 032652 arg mem_key_store ,contw 
-0x72ac 032653 call memcpy16 
-0x72ad 032654 fetch 2 ,memp_ar_input 
-0x72ae 032655 iforce contr 
-0x72af 032656 arg mem_input_store ,contw 
-0x72b0 032657 call memcpy16 
-:      032659 function_ar_loop:
-0x72b1 032660 call key_scheduling 
-0x72b2 032661 disable user 
-0x72b3 032662 bmark0 mark_ar2 ,function_ar_original 
-0x72b4 032663 fetch 1 ,mem_ar_hround 
-0x72b5 032664 bne 4 ,function_ar_original 
-0x72b6 032665 fetch 2 ,memp_ar_input 
-0x72b7 032666 iforce regb 
-0x72b8 032667 call xor_mod32_ar2 
-:      032668 function_ar_original:
-0x72b9 032669 call xor_mod32 
-0x72ba 032670 call el_boxes 
-0x72bb 032671 fetch 1 ,mem_ar_hround 
-0x72bc 032672 increase 1 ,pdata 
-0x72bd 032673 store 1 ,mem_ar_hround 
-0x72be 032675 call key_scheduling 
-0x72bf 032676 enable user 
-0x72c0 032677 call xor_mod32 
-0x72c1 032678 call pht 
-0x72c2 032679 call permute 
-0x72c3 032680 call pht 
-0x72c4 032681 call permute 
-0x72c5 032682 call pht 
-0x72c6 032683 call permute 
-0x72c7 032684 call pht 
-0x72c8 032685 fetch 1 ,mem_ar_hround 
-0x72c9 032686 increase 1 ,pdata 
-0x72ca 032687 store 1 ,mem_ar_hround 
-0x72cb 032688 bne 16 ,function_ar_loop 
-0x72cc 032689 call key_scheduling 
-0x72cd 032690 disable user 
-0x72ce 032691 branch xor_mod32 
-:      032695 key_scheduling:
-0x72cf 032696 fetch 1 ,mem_ar_hround 
-0x72d0 032697 arg mem_key_store ,contr 
-0x72d1 032698 branch key_sched_zero ,blank 
-0x72d2 032699 iforce regb 
-0x72d3 032700 force 17 ,loopcnt 
-0x72d4 032701 copy contr ,contw 
-:      032702 key_rotateloop:
-0x72d5 032703 ifetch 1 ,contr 
-0x72d6 032704 lshift3 pdata ,temp 
-0x72d7 032705 rshift2 pdata ,pdata 
-0x72d8 032706 rshift3 pdata ,pdata 
-0x72d9 032707 ior temp ,pdata 
-0x72da 032708 istore 1 ,contw 
-0x72db 032709 loop key_rotateloop 
-0x72dc 032710 setarg mem_key_store 
-0x72dd 032711 iadd regb ,contr 
-0x72de 032712 force 16 ,loopcnt 
-0x72df 032713 arg mem_round_key ,contw 
-:      032714 key_select_octet_loop:
-0x72e0 032715 ifetch 1 ,contr 
-0x72e1 032716 istore 1 ,contw 
-0x72e2 032717 compare mem_key_store_end ,contr ,0xff 
-0x72e3 032718 nbranch key_select_octet_nwrap ,true 
-0x72e4 032719 increase -17 ,contr 
-:      032720 key_select_octet_nwrap:
-0x72e5 032721 loop key_select_octet_loop 
-0x72e6 032722 force 0 ,rega 
-0x72e7 032723 add regb ,-1 ,regc 
-0x72e8 032724 lshift2 regc ,regc 
-0x72e9 032725 lshift2 regc ,regc 
-0x72ea 032726 call enable_authrom 
-0x72eb 032727 setarg mem_b_box 
-0x72ec 032728 iadd regc ,regc 
-0x72ed 032729 arg mem_round_key ,contw 
-0x72ee 032730 force 16 ,loopcnt 
-:      032731 bias_round_key_loop:
-0x72ef 032732 ifetcht 1 ,regc 
-0x72f0 032733 ifetch 1 ,contw 
-0x72f1 032734 iadd temp ,pdata 
-0x72f2 032735 istore 1 ,contw 
-0x72f3 032736 increase 1 ,regc 
-0x72f4 032737 loop bias_round_key_loop 
-0x72f5 032738 branch disable_authrom 
-:      032740 key_sched_zero:
-0x72f6 032741 force 16 ,loopcnt 
-0x72f7 032742 force 0 ,temp 
-:      032743 create_byte_16_loop:
-0x72f8 032744 ifetch 1 ,contr 
-0x72f9 032745 ixor temp ,temp 
-0x72fa 032746 loop create_byte_16_loop 
-0x72fb 032747 deposit temp 
-0x72fc 032748 istore 1 ,contr 
-0x72fd 032749 arg mem_key_store ,contr 
-0x72fe 032750 arg mem_round_key ,contw 
-0x72ff 032751 branch memcpy16 
-:      032753 xor_mod32:
-0x7300 032754 arg mem_round_key ,regb 
-:      032755 xor_mod32_ar2:
-0x7301 032756 force 16 ,loopcnt 
-0x7302 032757 arg mem_input_store ,rega 
-0x7303 032758 copy rega ,contw 
-:      032759 xor_mod32_loop:
-0x7304 032760 ifetcht 1 ,rega 
-0x7305 032761 ifetch 1 ,regb 
-0x7306 032762 ixor temp ,alarm 
-0x7307 032763 and loopcnt ,3 ,regc 
-0x7308 032764 nbranch xor_mod32_invert ,user 
-0x7309 032765 xor_into 3 ,regc 
-:      032766 xor_mod32_invert:
-0x730a 032767 sub regc ,1 ,regc 
-0x730b 032768 branch xor_even ,positive 
-0x730c 032769 iadd temp ,alarm 
-:      032770 xor_even:
-0x730d 032771 deposit alarm 
-0x730e 032772 istore 1 ,contw 
-0x730f 032773 increase 1 ,rega 
-0x7310 032774 increase 1 ,regb 
-0x7311 032775 loop xor_mod32_loop 
-0x7312 032776 rtn 
-:      032778 el_boxes:
-0x7313 032779 call enable_authrom 
-0x7314 032780 force 16 ,loopcnt 
-0x7315 032781 arg mem_input_store ,rega 
-:      032782 el_box_loop:
-0x7316 032783 ifetch 1 ,rega 
-0x7317 032784 arg mem_e_box ,contr 
-0x7318 032785 and loopcnt ,3 ,regc 
-0x7319 032786 sub regc ,1 ,null 
-0x731a 032787 branch e_boxes ,positive 
-0x731b 032788 arg mem_l_box ,contr 
-:      032789 e_boxes:
-0x731c 032790 iadd contr ,contr 
-0x731d 032791 ifetch 1 ,contr 
-0x731e 032792 istore 1 ,rega 
-0x731f 032793 increase 1 ,rega 
-0x7320 032794 loop el_box_loop 
-0x7321 032795 branch disable_authrom 
-:      032797 pht:
-0x7322 032798 force 8 ,loopcnt 
-0x7323 032799 arg mem_input_store ,contr 
-0x7324 032800 copy contr ,contw 
-:      032801 pht_loop:
-0x7325 032802 ifetch 1 ,contr 
-0x7326 032803 iforce rega 
-0x7327 032804 ifetch 1 ,contr 
-0x7328 032805 iforce regb 
-0x7329 032806 lshift rega ,pdata 
-0x732a 032807 iadd regb ,pdata 
-0x732b 032808 istore 1 ,contw 
-0x732c 032809 deposit rega 
-0x732d 032810 iadd regb ,pdata 
-0x732e 032811 istore 1 ,contw 
-0x732f 032812 loop pht_loop 
-0x7330 032813 rtn 
-:      032816 permute:
-0x7331 032817 setarg 0x8ae42c 
-0x7332 032818 iforce temp 
-0x7333 032819 force 7 ,loopcnt 
-0x7334 032820 call permute_exchange 
-0x7335 032821 setarg 0xd751b 
-0x7336 032822 iforce temp 
-0x7337 032823 force 5 ,loopcnt 
-0x7338 032824 call permute_exchange 
-0x7339 032825 fetch 1 ,mem_input_store + 15 
-0x733a 032826 iforce rega 
-0x733b 032827 fetch 1 ,mem_input_store + 3 
-0x733c 032828 store 1 ,mem_input_store + 15 
-0x733d 032829 deposit rega 
-0x733e 032830 store 1 ,mem_input_store + 3 
-0x733f 032831 rtn 
-:      032833 permute_exchange:
-0x7340 032834 and temp ,0xf ,regb 
-:      032835 permute_loop:
-0x7341 032836 and temp ,0xf ,pdata 
-0x7342 032837 arg mem_input_store ,contw 
-0x7343 032838 iadd contw ,contw 
-0x7344 032839 ifetch 1 ,contw 
-0x7345 032840 iforce regc 
-0x7346 032841 deposit rega 
-0x7347 032842 istore 1 ,contw 
-0x7348 032843 copy regc ,rega 
-0x7349 032844 rshift4 temp ,temp 
-0x734a 032845 loop permute_loop 
-0x734b 032846 setarg mem_input_store 
-0x734c 032847 iadd regb ,contw 
-0x734d 032848 deposit rega 
-0x734e 032849 istore 1 ,contw 
-0x734f 032850 rtn 
-:      032852 add16:
-0x7350 032853 enable user 
-0x7351 032854 branch xor_add16 
-:      032856 xor16:
-0x7352 032857 disable user 
-:      032858 xor_add16:
-0x7353 032859 force 16 ,loopcnt 
-:      032860 xoradd_loop:
-0x7354 032861 ifetcht 1 ,rega 
-0x7355 032862 ifetch 1 ,regb 
-0x7356 032863 branch xoradd_add ,user 
-0x7357 032864 ixor temp ,pdata 
-0x7358 032865 branch xoradd_store 
-:      032866 xoradd_add:
-0x7359 032867 iadd temp ,pdata 
-:      032868 xoradd_store:
-0x735a 032869 istore 1 ,contw 
-0x735b 032870 increase 1 ,rega 
-0x735c 032871 increase 1 ,regb 
-0x735d 032872 loop xoradd_loop 
-0x735e 032873 rtn 
-:      032876 function_expand:
-0x735f 032877 arg mem_y ,contw 
-0x7360 032878 ifetch 6 ,rega 
-0x7361 032879 istore 6 ,contw 
-0x7362 032880 branch expand_12 ,user 
-0x7363 032881 ifetch 6 ,rega 
-0x7364 032882 branch expand_cont 
-:      032883 expand_12:
-0x7365 032884 ifetch 6 ,contr 
-:      032885 expand_cont:
-0x7366 032886 istore 6 ,contw 
-0x7367 032887 ifetch 4 ,rega 
-0x7368 032888 istore 4 ,contw 
-0x7369 032889 rtn 
-:      032891 key_offset:
-0x736a 032892 arg mem_link_key ,contr 
-0x736b 032893 arg mem_x ,contw 
-0x736c 032894 arg 0 ,temp 
-0x736d 032895 setarg 0x8395a7 
-0x736e 032896 call concatenate_temp24 
-0x736f 032897 setarg 0xb3c1df 
-0x7370 032898 call concatenate_temp24 
-0x7371 032899 setarg 0xe5e9 
-0x7372 032900 call concatenate_temp16 
-0x7373 032901 copy temp ,regab 
-0x7374 032902 disable user 
-0x7375 032903 call key_addxor 
-0x7376 032904 copy regab ,temp 
-0x7377 032905 enable user 
-0x7378 032906 branch key_addxor 
-:      032908 key_addxor:
-0x7379 032909 force 8 ,loopcnt 
-:      032910 key_addxor_loop:
-0x737a 032911 ifetch 1 ,contr 
-0x737b 032912 compare 1 ,loopcnt ,1 
-0x737c 032913 branch key_high ,user 
-0x737d 032914 branch key_xor ,true 
-:      032915 key_add:
-0x737e 032916 iadd temp ,pdata 
-0x737f 032917 branch key_store 
-:      032918 key_high:
-0x7380 032919 branch key_add ,true 
-:      032920 key_xor:
-0x7381 032921 ixor temp ,pdata 
-:      032922 key_store:
-0x7382 032923 istore 1 ,contw 
-0x7383 032924 rshift8 temp ,temp 
-0x7384 032925 loop key_addxor_loop 
-0x7385 032926 rtn 
-:      032928 copy_aco:
-0x7386 032929 fetch 6 ,mem_input_store + 4 
-0x7387 032930 store 6 ,mem_aco 
-0x7388 032931 ifetch 6 ,contr 
-0x7389 032932 istore 6 ,contw 
-0x738a 032933 rtn 
-:      032935 concatenate_temp24:
-0x738b 032936 lshift8 temp ,temp 
-:      032937 concatenate_temp16:
-0x738c 032938 lshift16 temp ,temp 
-0x738d 032939 ior temp ,temp 
-0x738e 032940 rtn 
-:      032944 loop1:
-0x738f 032945 branch loop1 
-:      032949 generate_stk:
-0x7390 032950 bpatchx patch3c_0 ,mem_patch3c 
-0x7391 032951 call function_s1 
-0x7392 032952 arg mem_le_ltk ,contw 
-0x7393 032953 branch store_aes_result 
-:      032956 authenticate_rconfirm:
-0x7394 032957 arg mem_le_srand ,contw 
-0x7395 032958 branch authenticate_mconfirm ,master 
-0x7396 032959 arg mem_le_mrand ,contw 
-:      032960 authenticate_mconfirm:
-0x7397 032961 copy contr ,rega 
-0x7398 032962 call memcpy16 
-0x7399 032963 call function_c1 
-0x739a 032964 arg mem_le_rconfirm ,contr 
-0x739b 032965 branch compare_res 
-:      032967 generate_confirm:
-0x739c 032968 arg mem_le_mrand ,rega 
-0x739d 032969 branch generate_mrand ,master 
-0x739e 032970 arg mem_le_srand ,rega 
-:      032971 generate_mrand:
-0x739f 032972 copy rega ,contw 
-0x73a0 032973 call generate_random 
-0x73a1 032974 branch function_c1 
-:      032976 generate_sk:
-0x73a2 032977 arg mem_le_skdm ,contr 
-0x73a3 032978 call load_data128 
-0x73a4 032979 arg mem_le_ltk ,contr 
-0x73a5 032980 call load_regext 
-0x73a6 032981 force 0x38 ,aes_ctrl 
-0x73a7 032982 force 0x0 ,aes_ctrl 
-0x73a8 032983 call wait_aes 
-0x73a9 032984 arg mem_le_sk ,contw 
-0x73aa 032985 branch store_aes_result 
-:      032988 first_block_counter:
-0x73ab 032989 force 0x49 ,pdata 
-0x73ac 032990 branch first_block 
-:      032991 first_block_data:
-0x73ad 032992 force 1 ,pdata 
-:      032993 first_block:
-0x73ae 032994 force regidx_data ,regext_index 
-0x73af 032995 lshift8 temp ,regext 
-0x73b0 032996 ior regext ,regext 
-0x73b1 032997 increase 1 ,regext_index 
-0x73b2 032998 rshift8 temp ,regext 
-0x73b3 032999 rshift16 regext ,regext 
-0x73b4 033000 fetch 2 ,mem_le_ivm 
-0x73b5 033001 lshift16 ,pdata ,pdata 
-0x73b6 033002 ior regext ,regext 
-0x73b7 033003 increase 1 ,regext_index 
-0x73b8 033004 ifetch 4 ,contr 
-0x73b9 033005 iforce regext 
-0x73ba 033006 increase 1 ,regext_index 
-0x73bb 033007 ifetch 2 ,contr 
-0x73bc 033008 byteswap rega ,regext 
-0x73bd 033009 lshift16 regext ,regext 
-0x73be 033010 ior regext ,regext 
-0x73bf 033011 increase 1 ,regext_index 
-0x73c0 033012 rtn 
-:      033016 generate_mic:
-0x73c1 033017 add regc ,1 ,contr 
-0x73c2 033018 ifetch 1 ,contr 
-0x73c3 033019 iforce rega 
-0x73c4 033020 call first_block_counter 
-0x73c5 033021 call do_aes_ocb 
-0x73c6 033023 force regidx_data ,regext_index 
-0x73c7 033024 ifetch 1 ,regc 
-0x73c8 033025 and_into 0x3 ,pdata 
-0x73c9 033026 lshift16 pdata ,regext 
-0x73ca 033027 set1 8 ,regext 
-0x73cb 033028 call clear_hidata 
-0x73cc 033029 call do_aes_cbc 
-0x73cd 033031 copy rega ,loopcnt 
-0x73ce 033032 add regc ,2 ,contr 
-0x73cf 033033 call padding_data 
-:      033034 generate_mic_loop:
-0x73d0 033035 call aes_load_data 
-0x73d1 033036 call do_aes_cbc 
-0x73d2 033037 deposit loopcnt 
-0x73d3 033038 branch generate_mic_end ,blank 
-0x73d4 033039 branch generate_mic_loop 
-:      033040 generate_mic_end:
-0x73d5 033041 force regidx_result ,regext_index 
-0x73d6 033042 deposit regext 
-0x73d7 033043 store 4 ,mem_le_mic 
-0x73d8 033044 rtn 
-:      033046 aes_crypt_data:
-0x73d9 033047 increase 1 ,rega 
-0x73da 033048 call first_block_data 
-0x73db 033049 copy regc ,contr 
-0x73dc 033050 call aes_load_xor 
-0x73dd 033051 call do_aes_ctr 
-0x73de 033052 call store_enc_data 
-0x73df 033053 increase 16 ,regc 
-0x73e0 033054 increase -16 ,regb 
-0x73e1 033055 branch aes_crypt_data ,positive 
-0x73e2 033056 rtn 
-:      033058 le_encrypt:
-0x73e3 033059 bpatchx patch3c_1 ,mem_patch3c 
-0x73e4 033060 arg mem_le_txheader ,regc 
-0x73e5 033061 fetcht 5 ,mem_le_pcnt_tx 
-0x73e6 033062 call generate_mic 
-0x73e7 033063 force regidx_xor ,regext_index 
-0x73e8 033064 iforce regext 
-0x73e9 033065 force 0 ,rega 
-0x73ea 033066 call first_block_data 
-0x73eb 033067 call do_aes_ctr 
-0x73ec 033068 arg mem_le_txpayload ,regc 
-0x73ed 033069 fetch 1 ,mem_le_txlen 
-0x73ee 033070 add pdata ,-1 ,regb 
-0x73ef 033071 iadd regc ,contw 
-0x73f0 033072 force regidx_result ,regext_index 
-0x73f1 033073 deposit regext 
-0x73f2 033074 istore 4 ,contw 
-0x73f3 033075 call aes_crypt_data 
-0x73f4 033076 fetch 1 ,mem_le_txlen 
-0x73f5 033077 increase 4 ,pdata 
-0x73f6 033078 store 1 ,mem_le_txlen 
-0x73f7 033079 fetcht 5 ,mem_le_pcnt_tx 
-0x73f8 033080 increase 1 ,temp 
-0x73f9 033081 storet 5 ,mem_le_pcnt_tx 
-0x73fa 033082 rtn 
-:      033084 le_decrypt:
-0x73fb 033085 bpatchx patch3c_2 ,mem_patch3c 
-0x73fc 033086 fetch 1 ,mem_le_rxbuf + 1 
-0x73fd 033087 sub pdata ,20 ,null 
-0x73fe 033088 branch le_dec_cont ,positive 
-:      033089 le_dec_cont:
-0x73ff 033090 arg mem_le_rxbuf + 2 ,regc 
-0x7400 033091 add pdata ,-1 ,regb 
-0x7401 033092 increase -4 ,pdata 
-0x7402 033093 store 1 ,mem_le_rxbuf + 1 
-0x7403 033094 iadd regc ,contr 
-0x7404 033095 ifetch 4 ,contr 
-0x7405 033096 force regidx_xor ,regext_index 
-0x7406 033097 iforce regext 
-0x7407 033098 force 0 ,rega 
-0x7408 033099 fetcht 5 ,mem_le_pcnt_rx 
-0x7409 033100 call first_block_data 
-0x740a 033101 call do_aes_ctr 
-0x740b 033102 force regidx_result ,regext_index 
-0x740c 033103 deposit regext 
-0x740d 033104 store 4 ,mem_le_peer_mic 
-0x740e 033105 call aes_crypt_data 
-0x740f 033106 arg mem_le_rxbuf ,regc 
-0x7410 033107 call generate_mic 
-0x7411 033108 fetcht 4 ,mem_le_peer_mic 
-0x7412 033109 isub temp ,pdata 
-0x7413 033110 nrtn blank 
-0x7414 033111 fetch 4 ,mem_le_last_mic 
-0x7415 033112 isub temp ,pdata 
-0x7416 033113 rtn blank 
-0x7417 033114 storet 4 ,mem_le_last_mic 
-0x7418 033115 fetch 5 ,mem_le_pcnt_rx 
-0x7419 033116 increase 1 ,pdata 
-0x741a 033117 store 5 ,mem_le_pcnt_rx 
-0x741b 033118 force 0 ,pdata 
-0x741c 033119 rtn 
-:      033121 wait_aes:
-0x741d 033122 nbranch wait_aes ,aes_ready 
-0x741e 033123 rtn 
-:      033125 do_aes_ocb:
-0x741f 033126 force 0x30 ,aes_ctrl 
-0x7420 033127 force 0x0 ,aes_ctrl 
-0x7421 033128 branch wait_aes 
-:      033130 do_aes_cbc:
-0x7422 033131 force 0x32 ,aes_ctrl 
-0x7423 033132 force 0x2 ,aes_ctrl 
-0x7424 033133 branch wait_aes 
-:      033135 do_aes_ctr:
-0x7425 033136 force 0x34 ,aes_ctrl 
-0x7426 033137 force 0x4 ,aes_ctrl 
-0x7427 033138 branch wait_aes 
-:      033141 aes_init:
-0x7428 033142 force 1 ,aes_ctrl 
-0x7429 033143 force 0 ,aes_ctrl 
-0x742a 033144 rtn 
-:      033145 function_s1:
-0x742b 033146 force regidx_data ,regext_index 
-0x742c 033147 fetch 4 ,mem_le_mrand 
-0x742d 033148 iforce regext 
-0x742e 033149 increase 1 ,regext_index 
-0x742f 033150 ifetch 4 ,contr 
-0x7430 033151 iforce regext 
-0x7431 033152 increase 1 ,regext_index 
-0x7432 033153 fetch 4 ,mem_le_srand 
-0x7433 033154 iforce regext 
-0x7434 033155 increase 1 ,regext_index 
-0x7435 033156 ifetch 4 ,contr 
-0x7436 033157 iforce regext 
-0x7437 033158 increase 1 ,regext_index 
-0x7438 033159 call aes_clear 
-0x7439 033160 increase -4 ,regext_index 
-0x743a 033161 fetch 4 ,mem_le_tk 
-0x743b 033162 copy pdata ,regext 
-0x743c 033163 increase 4 ,regext_index 
-0x743d 033164 force 0x38 ,aes_ctrl 
-0x743e 033165 force 0x8 ,aes_ctrl 
-0x743f 033166 branch wait_aes 
-:      033169 function_c1:
-0x7440 033170 bpatchx patch3c_3 ,mem_patch3c 
-0x7441 033171 fetch 6 ,mem_le_lap 
-0x7442 033172 fetcht 6 ,mem_le_plap 
-0x7443 033173 branch function_c1_master ,master 
-0x7444 033174 fetch 6 ,mem_le_plap 
-0x7445 033175 fetcht 6 ,mem_le_lap 
-:      033176 function_c1_master:
-0x7446 033177 force regidx_xor ,regext_index 
-0x7447 033178 copy temp ,regext 
-0x7448 033179 increase 1 ,regext_index 
-0x7449 033180 rshift32 temp ,regext 
-0x744a 033181 lshift16 pdata ,pdata 
-0x744b 033182 ior regext ,regext 
-0x744c 033183 increase 1 ,regext_index 
-0x744d 033184 rshift32 pdata ,regext 
-0x744e 033185 increase 1 ,regext_index 
-0x744f 033186 force 0 ,regext 
-0x7450 033187 force 0 ,pdata 
-0x7451 033188 fetch 1 ,mem_le_conn_peer_addr_type 
-0x7452 033189 fetcht 1 ,mem_le_adv_own_addr_type 
-0x7453 033190 nbranch function_c1_irat ,master 
-0x7454 033192 fetch 1 ,mem_le_conn_own_addr_type 
-0x7455 033193 fetcht 1 ,mem_le_conn_peer_addr_type 
-:      033194 function_c1_irat:
-0x7456 033195 store 1 ,mem_le_iat 
-0x7457 033196 storet 1 ,mem_le_rat 
-0x7458 033197 force regidx_data ,regext_index 
-0x7459 033198 arg mem_le_iat ,regb 
-0x745a 033199 force 4 ,loopcnt 
-:      033200 function_c1_loop1:
-0x745b 033201 ifetch 4 ,rega 
-0x745c 033202 ifetcht 4 ,regb 
-0x745d 033203 ixor temp ,regext 
-0x745e 033204 increase 1 ,regext_index 
-0x745f 033205 increase 4 ,rega 
-0x7460 033206 increase 4 ,regb 
-0x7461 033207 loop function_c1_loop1 
-0x7462 033208 call aes_clear 
-0x7463 033209 increase -4 ,regext_index 
-0x7464 033210 fetch 4 ,mem_le_tk 
-0x7465 033211 copy pdata ,regext 
-0x7466 033212 increase 4 ,regext_index 
-0x7467 033213 force 0x38 ,aes_ctrl 
-0x7468 033214 force 0xc ,aes_ctrl 
-0x7469 033215 call wait_aes 
-0x746a 033217 call aes_clear_data 
-0x746b 033218 force 0x3a ,aes_ctrl 
-0x746c 033219 force 0x8 ,aes_ctrl 
-0x746d 033220 branch wait_aes 
-:      033222 padding_data:
-0x746e 033223 compare 0 ,loopcnt ,3 
-0x746f 033224 rtn true 
-0x7470 033225 deposit contr 
-0x7471 033226 iadd loopcnt ,contw 
-0x7472 033227 force 0 ,pdata 
-:      033228 padding_loop:
-0x7473 033229 istore 1 ,contw 
-0x7474 033230 increase 1 ,loopcnt 
-0x7475 033231 compare 0 ,loopcnt ,3 
-0x7476 033232 rtn true 
-0x7477 033233 branch padding_loop 
-:      033235 aes_load_data:
-0x7478 033236 force regidx_data ,regext_index 
-:      033237 load_data_loop:
-0x7479 033238 deposit loopcnt 
-0x747a 033239 branch load_data_padding ,blank 
-0x747b 033240 ifetch 4 ,contr 
-0x747c 033241 increase -4 ,loopcnt 
-:      033242 load_data_padding:
-0x747d 033243 iforce regext 
-0x747e 033244 increase 1 ,regext_index 
-0x747f 033245 compare regidx_key ,regext_index ,0xf 
-0x7480 033246 rtn true 
-0x7481 033247 branch load_data_loop 
-:      033249 aes_load_xor:
-0x7482 033250 force regidx_xor ,regext_index 
-0x7483 033251 branch load_regext 
-:      033252 load_key:
-0x7484 033253 force regidx_key ,regext_index 
-0x7485 033254 branch load_regext 
-:      033255 load_data128:
-0x7486 033256 force regidx_data ,regext_index 
-:      033257 load_regext:
-0x7487 033258 force 4 ,loopcnt 
-:      033259 load_regext_loop:
-0x7488 033260 ifetch 4 ,contr 
-0x7489 033261 iforce regext 
-0x748a 033262 increase 1 ,regext_index 
-0x748b 033263 loop load_regext_loop 
-0x748c 033264 rtn 
-:      033266 load_sk:
-0x748d 033267 arg mem_le_sk ,contr 
-0x748e 033268 branch load_key 
-:      033270 clear_hidata:
-0x748f 033271 force 4 ,loopcnt 
-0x7490 033272 branch clear_data_rest 
-:      033274 aes_clear_data:
-0x7491 033275 force regidx_data ,regext_index 
-:      033276 aes_clear:
-0x7492 033277 force 4 ,loopcnt 
-:      033278 clear_loop:
-0x7493 033279 force 0 ,regext 
-:      033280 clear_data_rest:
-0x7494 033281 increase 1 ,regext_index 
-0x7495 033282 loop clear_loop 
-0x7496 033283 rtn 
-:      033285 store_aes_result:
-0x7497 033286 force regidx_result ,regext_index 
-0x7498 033287 force 4 ,loopcnt 
-:      033288 send_aes_result_loop:
-0x7499 033289 deposit regext 
-0x749a 033290 istore 4 ,contw 
-0x749b 033291 increase 1 ,regext_index 
-0x749c 033292 loop send_aes_result_loop 
-0x749d 033293 rtn 
-:      033295 store_enc_data:
-0x749e 033296 force regidx_result ,regext_index 
-0x749f 033297 copy regc ,contw 
-0x74a0 033298 add regb ,1 ,loopcnt 
-0x74a1 033299 sub loopcnt ,15 ,null 
-0x74a2 033300 branch store_enc_loop ,positive 
-0x74a3 033301 force 16 ,loopcnt 
-:      033302 store_enc_loop:
-0x74a4 033303 deposit regext 
-0x74a5 033304 sub loopcnt ,3 ,null 
-0x74a6 033305 branch store_enc_byte ,positive 
-0x74a7 033306 istore 4 ,contw 
-0x74a8 033307 increase -4 ,loopcnt 
-0x74a9 033308 rtn zero 
-0x74aa 033309 increase 1 ,regext_index 
-0x74ab 033310 branch store_enc_loop 
-:      033311 store_enc_byte:
-0x74ac 033312 istore 1 ,contw 
-0x74ad 033313 rshift8 pdata ,pdata 
-0x74ae 033314 loop store_enc_byte 
-0x74af 033315 rtn 
-:      033318 compare_res:
-0x74b0 033319 force regidx_result ,regext_index 
-0x74b1 033320 force 4 ,loopcnt 
-:      033321 compare_res_loop:
-0x74b2 033322 ifetch 4 ,contr 
-0x74b3 033323 isub regext ,null 
-0x74b4 033324 nrtn zero 
-0x74b5 033325 increase 1 ,regext_index 
-0x74b6 033326 loop compare_res_loop 
-0x74b7 033327 force 0 ,null 
-0x74b8 033328 rtn 
-:      033330 enable_authrom:
-0x74b9 033331 hfetch 1 ,core_clkoff 
-0x74ba 033332 set0 clock_off_auth_rom ,pdata 
-0x74bb 033333 hstore 1 ,core_clkoff 
-0x74bc 033334 rtn 
-:      033336 disable_authrom:
-0x74bd 033337 hfetch 1 ,core_clkoff 
-0x74be 033338 set1 clock_off_auth_rom ,pdata 
-0x74bf 033339 hstore 1 ,core_clkoff 
-0x74c0 033340 rtn 
-:      033342 init_memp:
-0x74c1 033343 arg mem_p ,contw 
-0x74c2 033344 setsect 0 ,0x3ffff 
-0x74c3 033345 setsect 1 ,0x3ffff 
-0x74c4 033346 setsect 2 ,0x3ffff 
-0x74c5 033347 setsect 3 ,0x3fbff 
-0x74c6 033348 istore 9 ,contw 
-0x74c7 033349 setsect 0 ,0x3ffff 
-0x74c8 033350 setsect 1 ,0x3ffff 
-0x74c9 033351 setsect 2 ,0x3ffff 
-0x74ca 033352 setsect 3 ,0x3ffff 
-0x74cb 033353 istore 9 ,contw 
-0x74cc 033354 setsect 0 ,0x3ffff 
-0x74cd 033355 setsect 1 ,0x3ffff 
-0x74ce 033356 setsect 2 ,0x3cfff 
-0x74cf 033357 setsect 3 ,0x3ffff 
-0x74d0 033358 istore 9 ,contw 
-0x74d1 033359 setsect 0 ,0x3ffff 
-0x74d2 033360 setsect 1 ,0x3ffff 
-0x74d3 033361 setsect 2 ,0x3ffef 
-0x74d4 033362 setsect 3 ,0x3ffff 
-0x74d5 033363 istore 9 ,contw 
-0x74d6 033364 setsect 0 ,0x3ffff 
-0x74d7 033365 setsect 1 ,0x3ffff 
-0x74d8 033366 setsect 2 ,0x3ffff 
-0x74d9 033367 setsect 3 ,0x3ffff 
-0x74da 033368 istore 9 ,contw 
-0x74db 033369 setsect 0 ,0x3ffff 
-0x74dc 033370 setsect 1 ,0x26c7f 
-0x74dd 033371 setsect 2 ,0x146b 
-0x74de 033372 setsect 3 ,0x37bb3 
-0x74df 033373 istore 9 ,contw 
-0x74e0 033374 setsect 0 ,0x1feb8 
-0x74e1 033375 setsect 1 ,0x10c12 
-0x74e2 033376 setsect 2 ,0x2b722 
-0x74e3 033377 setsect 3 ,0x29fa6 
-0x74e4 033378 istore 9 ,contw 
-0x74e5 033379 setsect 0 ,0xe70f 
-0x74e6 033380 setsect 1 ,0x16720 
-0x74e7 033381 setsect 2 ,0x519e 
-0x74e8 033382 setsect 3 ,0x19084 
-0x74e9 033383 istore 9 ,contw 
-0x74ea 033384 setsect 0 ,0x31012 
-0x74eb 033385 setsect 1 ,0x360bf 
-0x74ec 033386 setsect 2 ,0x3f0af 
-0x74ed 033387 setsect 3 ,0x3d3 
-0x74ee 033388 istore 9 ,contw 
-0x74ef 033389 setsect 0 ,0x3a188 
-0x74f0 033390 setsect 1 ,0x3ad0 
-0x74f1 033391 setsect 2 ,0x3cbf2 
-0x74f2 033392 setsect 3 ,0x243d9 
-0x74f3 033393 istore 9 ,contw 
-0x74f4 033394 setsect 0 ,0x2b030 
-0x74f5 033395 setsect 1 ,0x36a03 
-0x74f6 033396 setsect 2 ,0x11188 
-0x74f7 033397 setsect 3 ,0x1e520 
-0x74f8 033398 istore 9 ,contw 
-0x74f9 033399 setsect 0 ,0x3a11e 
-0x74fa 033400 setsect 1 ,0xfe5d 
-0x74fb 033401 setsect 2 ,0xdd57 
-0x74fc 033402 setsect 3 ,0x1ac93 
-0x74fd 033403 istore 9 ,contw 
-0x74fe 033404 setsect 0 ,0x11ed 
-0x74ff 033405 setsect 1 ,0x218c4 
-0x7500 033406 setsect 2 ,0x8da7 
-0x7501 033407 setsect 3 ,0x257ff 
-0x7502 033408 istore 9 ,contw 
-0x7503 033409 setsect 0 ,0x3192b 
-0x7504 033410 setsect 1 ,0x34641 
-0x7505 033411 setsect 2 ,0x1be0c 
-0x7506 033412 setsect 3 ,0x366ad 
-0x7507 033413 istore 9 ,contw 
-0x7508 033414 setsect 0 ,0x1f83 
-0x7509 033415 setsect 1 ,0x15a23 
-0x750a 033416 setsect 2 ,0x3f9b0 
-0x750b 033417 setsect 3 ,0x3949 
-0x750c 033418 istore 9 ,contw 
-0x750d 033419 setsect 0 ,0x13a51 
-0x750e 033420 setsect 1 ,0x153fd 
-0x750f 033421 setsect 2 ,0x3372a 
-0x7510 033422 setsect 3 ,0xf1bb 
-0x7511 033423 istore 9 ,contw 
-0x7512 033424 setsect 0 ,0x3ae85 
-0x7513 033425 setsect 1 ,0x1eed9 
-0x7514 033426 setsect 2 ,0x9e66 
-0x7515 033427 setsect 3 ,0x1a8 
-0x7516 033428 istore 8 ,contw 
-0x7517 033429 rtn 
-:      033433 init_memp_256:
-0x7518 033434 arg mem_p_256 ,contw 
-0x7519 033435 setsect 0 ,0x3ffff 
-0x751a 033436 setsect 1 ,0x3ffff 
-0x751b 033437 setsect 2 ,0x3ffff 
-0x751c 033438 setsect 3 ,0x3ffff 
-0x751d 033439 istore 9 ,contw 
-0x751e 033440 setsect 0 ,0x3ffff 
-0x751f 033441 setsect 1 ,0x3f 
-0x7520 033442 setsect 2 ,0x0 
-0x7521 033443 setsect 3 ,0x0 
-0x7522 033444 istore 9 ,contw 
-0x7523 033445 setsect 0 ,0x0 
-0x7524 033446 setsect 1 ,0x0 
-0x7525 033447 setsect 2 ,0x1000 
-0x7526 033448 setsect 3 ,0x0 
-0x7527 033449 istore 9 ,contw 
-0x7528 033450 setsect 0 ,0x3ff00 
-0x7529 033451 setsect 1 ,0x3ffff 
-0x752a 033452 setsect 2 ,0x3ffcf 
-0x752b 033453 setsect 3 ,0x3ffff 
-0x752c 033454 istore 9 ,contw 
-0x752d 033455 setsect 0 ,0x3ffff 
-0x752e 033456 setsect 1 ,0x3ffff 
-0x752f 033457 setsect 2 ,0x3ffff 
-0x7530 033458 setsect 3 ,0x3ff 
-0x7531 033459 istore 9 ,contw 
-0x7532 033460 setsect 0 ,0x0 
-0x7533 033461 setsect 1 ,0x0 
-0x7534 033462 setsect 2 ,0x0 
-0x7535 033463 setsect 3 ,0x0 
-0x7536 033464 istore 9 ,contw 
-0x7537 033465 setsect 0 ,0x10000 
-0x7538 033466 setsect 1 ,0x0 
-0x7539 033467 setsect 2 ,0x3f000 
-0x753a 033468 setsect 3 ,0x3ffff 
-0x753b 033469 istore 9 ,contw 
-0x753c 033470 setsect 0 ,0x296ff 
-0x753d 033471 setsect 1 ,0x22630 
-0x753e 033472 setsect 2 ,0x3945d 
-0x753f 033473 setsect 3 ,0x3d284 
-0x7540 033474 istore 9 ,contw 
-0x7541 033475 setsect 0 ,0x333a0 
-0x7542 033476 setsect 1 ,0x4b7a 
-0x7543 033477 setsect 2 ,0x37d8 
-0x7544 033478 setsect 3 ,0x3c9dc 
-0x7545 033479 istore 9 ,contw 
-0x7546 033480 setsect 0 ,0x3a440 
-0x7547 033481 setsect 1 ,0x1b958 
-0x7548 033482 setsect 2 ,0x38bce 
-0x7549 033483 setsect 3 ,0x1091f 
-0x754a 033484 istore 9 ,contw 
-0x754b 033485 setsect 0 ,0x2e12c 
-0x754c 033486 setsect 1 ,0x1f47c 
-0x754d 033487 setsect 2 ,0x356b1 
-0x754e 033488 setsect 3 ,0x2fd47 
-0x754f 033489 istore 9 ,contw 
-0x7550 033490 setsect 0 ,0x6837 
-0x7551 033491 setsect 1 ,0x2ed90 
-0x7552 033492 setsect 2 ,0x1ecec 
-0x7553 033493 setsect 3 ,0x1acc5 
-0x7554 033494 istore 9 ,contw 
-0x7555 033495 setsect 0 ,0x23357 
-0x7556 033496 setsect 1 ,0x18af3 
-0x7557 033497 setsect 2 ,0xf9e1 
-0x7558 033498 setsect 3 ,0x129f0 
-0x7559 033499 istore 9 ,contw 
-0x755a 033500 setsect 0 ,0x2e7eb 
-0x755b 033501 setsect 1 ,0x3e6e3 
-0x755c 033502 setsect 2 ,0x3e1a7 
-0x755d 033503 setsect 3 ,0x10b8b 
-0x755e 033504 istore 9 ,contw 
-0x755f 033505 setsect 0 ,0x24fe3 
-0x7560 033506 setsect 1 ,0x20ef 
-0x7561 033507 setsect 2 ,0x1b5a6 
-0x7562 033508 setsect 3 ,0xdc2f 
-0x7563 033509 istore 9 ,contw 
-0x7564 033510 setsect 0 ,0x13860 
-0x7565 033511 setsect 1 ,0x2bd69 
-0x7566 033512 setsect 2 ,0x391a 
-0x7567 033513 setsect 3 ,0x1b222 
-0x7568 033514 istore 9 ,contw 
-0x7569 033515 rtn 
-:      033518 publickey_init:
-0x756a 033519 fetch 1 ,mem_ssp_enable 
-0x756b 033520 nbranch sp_initialize ,blank 
-0x756c 033521 branch sp_initialize_256 
-:      033523 sp_calc_sequence_256_check:
-0x756d 033524 bpatchx patch3c_4 ,mem_patch3c 
-0x756e 033525 fetch 1 ,mem_ssp_enable 
-0x756f 033526 rtn blank 
-0x7570 033527 fetch 1 ,mem_sp_local_key_invalid 
-0x7571 033528 rtnne sp_key_valid 
-0x7572 033529 fetch 1 ,mem_le_secure_connect_enable 
-0x7573 033530 rtn blank 
-0x7574 033531 fetch 1 ,mem_le_sc_local_key_invalid 
-0x7575 033532 rtneq sp_key_valid_256 
-0x7576 033533 fetch 2 ,mem_ui_state_map 
-0x7577 033534 bbit1 ui_state_bt_connected ,stop_publickey_calc_256 
-0x7578 033535 fetch 1 ,mem_le_sc_calc 
-0x7579 033536 beq sp_calc_standby ,sp_initialize_256 
-0x757a 033537 rtn 
-:      033538 stop_publickey_calc_256:
-0x757b 033539 jam sp_calc_standby ,mem_le_sc_calc 
-0x757c 033540 rtn 
-:      033543 sp_initialize:
-0x757d 033544 bpatchx patch3c_5 ,mem_patch3c 
-0x757e 033545 fetch 1 ,mem_ssp_enable 
-0x757f 033546 branch ssp_disable ,blank 
-0x7580 033547 call ssp_enable 
-0x7581 033548 call sp_clear_flags 
-0x7582 033549 branch sp_pubkey_calc 
-:      033551 sp_clear_flags:
-0x7583 033552 setarg 0 
-0x7584 033553 store 8 ,mem_sp_state_start 
-0x7585 033554 store 4 ,mem_sp_flag_start 
-0x7586 033555 store 7 ,mem_sp_iocap_remote 
-0x7587 033556 rtn 
-:      033558 sp_generate_local_key:
-0x7588 033559 jam sp_flag_commit ,mem_sp_flag 
-0x7589 033560 branch sp_generate_local_key0 
-:      033561 sp_master_generate_local_key:
-0x758a 033562 fetch 1 ,mem_sp_local_key_invalid 
-0x758b 033563 beq sp_key_valid ,sp_dhkey_calc 
-0x758c 033564 branch assert 
-:      033565 sp_generate_local_key0:
-0x758d 033566 fetch 1 ,mem_sp_local_key_invalid 
-0x758e 033567 beq sp_key_valid ,sp_start_send_pubkey 
-0x758f 033568 branch sp_pubkey_calc 
-:      033570 sp_start_send_pubkey:
-0x7590 033571 call sp_dhkey_calc 
-0x7591 033572 fetch 1 ,mem_master_sp_state 
-0x7592 033573 nrtn blank 
-0x7593 033574 jam sp_stat_key_send ,mem_sp_state 
-0x7594 033575 rtn 
-:      033578 sp_calc_check_publickey_256:
-0x7595 033579 call sp_calc_b256 
-0x7596 033580 arg mem_le_pubkey_remote_y_256 ,rega 
-0x7597 033581 arg mem_t7_256 ,contw 
-0x7598 033582 call bn_sqrmod_256 
-0x7599 033583 arg mem_le_pubkey_remote_x_256 ,rega 
-0x759a 033584 arg mem_t2_256 ,contw 
-0x759b 033585 call bn_sqrmod_256 
-0x759c 033586 arg mem_t2_256 ,rega 
-0x759d 033587 arg mem_le_pubkey_remote_x_256 ,regb 
-0x759e 033588 arg mem_t2_256 ,contw 
-0x759f 033589 call bn_mulmod_256 
-0x75a0 033590 arg mem_a_256 ,rega 
-0x75a1 033591 arg mem_le_pubkey_remote_x_256 ,regb 
-0x75a2 033592 arg mem_t3_256 ,contw 
-0x75a3 033593 call bn_mulmod_256 
-0x75a4 033594 arg mem_t3_256 ,rega 
-0x75a5 033595 arg mem_t2_256 ,regb 
-0x75a6 033596 arg mem_t2_256 ,contw 
-0x75a7 033597 call bn_addmod_256 
-0x75a8 033598 arg mem_t0_256 ,rega 
-0x75a9 033599 arg mem_t2_256 ,regb 
-0x75aa 033600 arg mem_t0_256 ,contw 
-0x75ab 033601 call bn_addmod_256 
-0x75ac 033602 arg 32 ,loopcnt 
-0x75ad 033603 arg mem_t7_256 ,rega 
-0x75ae 033604 arg mem_t0_256 ,regb 
-0x75af 033605 branch string_compare 
-:      033607 sp_calc_b256:
-0x75b0 033608 arg mem_gy_256 ,rega 
-0x75b1 033609 arg mem_t0_256 ,contw 
-0x75b2 033610 call bn_sqrmod_256 
-0x75b3 033611 arg mem_gx_256 ,rega 
-0x75b4 033612 arg mem_t2_256 ,contw 
-0x75b5 033613 call bn_sqrmod_256 
-0x75b6 033614 arg mem_t2_256 ,rega 
-0x75b7 033615 arg mem_gx_256 ,regb 
-0x75b8 033616 arg mem_t2_256 ,contw 
-0x75b9 033617 call bn_mulmod_256 
-0x75ba 033618 arg mem_a_256 ,rega 
-0x75bb 033619 arg mem_gx_256 ,regb 
-0x75bc 033620 arg mem_t3_256 ,contw 
-0x75bd 033621 call bn_mulmod_256 
-0x75be 033622 arg mem_t3_256 ,rega 
-0x75bf 033623 arg mem_t2_256 ,regb 
-0x75c0 033624 arg mem_t2_256 ,contw 
-0x75c1 033625 call bn_addmod_256 
-0x75c2 033626 arg mem_t0_256 ,rega 
-0x75c3 033627 arg mem_t2_256 ,regb 
-0x75c4 033628 arg mem_t0_256 ,contw 
-0x75c5 033629 branch bn_submod_256 
-:      033631 sp_calc_check_publickey:
-0x75c6 033632 call sp_calc_b 
-0x75c7 033633 arg mem_sp_pubkey_remote_y ,rega 
-0x75c8 033634 arg mem_t7_256 ,contw 
-0x75c9 033635 call bn_sqrmod 
-0x75ca 033636 arg mem_sp_pubkey_remote_x ,rega 
-0x75cb 033637 arg mem_t2_256 ,contw 
-0x75cc 033638 call bn_sqrmod 
-0x75cd 033639 arg mem_t2_256 ,rega 
-0x75ce 033640 arg mem_sp_pubkey_remote_x ,regb 
-0x75cf 033641 arg mem_t2_256 ,contw 
-0x75d0 033642 call bn_mulmod 
-0x75d1 033643 arg mem_a ,rega 
-0x75d2 033644 arg mem_sp_pubkey_remote_x ,regb 
-0x75d3 033645 arg mem_t3_256 ,contw 
-0x75d4 033646 call bn_mulmod 
-0x75d5 033647 arg mem_t3_256 ,rega 
-0x75d6 033648 arg mem_t2_256 ,regb 
-0x75d7 033649 arg mem_t2_256 ,contw 
-0x75d8 033650 call bn_addmod 
-0x75d9 033651 arg mem_t0_256 ,rega 
-0x75da 033652 arg mem_t2_256 ,regb 
-0x75db 033653 arg mem_t0_256 ,contw 
-0x75dc 033654 call bn_addmod 
-0x75dd 033655 arg 24 ,loopcnt 
-0x75de 033656 arg mem_t7_256 ,rega 
-0x75df 033657 arg mem_t0_256 ,regb 
-0x75e0 033658 branch string_compare 
-:      033660 sp_calc_b:
-0x75e1 033661 arg mem_gy ,rega 
-0x75e2 033662 arg mem_t0_256 ,contw 
-0x75e3 033663 call bn_sqrmod 
-0x75e4 033664 arg mem_gx ,rega 
-0x75e5 033665 arg mem_t2_256 ,contw 
-0x75e6 033666 call bn_sqrmod 
-0x75e7 033667 arg mem_t2_256 ,rega 
-0x75e8 033668 arg mem_gx ,regb 
-0x75e9 033669 arg mem_t2_256 ,contw 
-0x75ea 033670 call bn_mulmod 
-0x75eb 033671 arg mem_a ,rega 
-0x75ec 033672 arg mem_gx ,regb 
-0x75ed 033673 arg mem_t3_256 ,contw 
-0x75ee 033674 call bn_mulmod 
-0x75ef 033675 arg mem_t3_256 ,rega 
-0x75f0 033676 arg mem_t2_256 ,regb 
-0x75f1 033677 arg mem_t2_256 ,contw 
-0x75f2 033678 call bn_addmod 
-0x75f3 033679 arg mem_t0_256 ,rega 
-0x75f4 033680 arg mem_t2_256 ,regb 
-0x75f5 033681 arg mem_t0_256 ,contw 
-0x75f6 033682 branch bn_submod 
-:      033685 sp_calculate_commitment:
-0x75f7 033686 fetch 1 ,mem_sp_calc 
-0x75f8 033687 bne sp_calc_standby ,sp_calculate_commitment_wait_dhkey_calc 
-0x75f9 033688 call sp_local_random_key_generator 
-0x75fa 033689 arg mem_sp_prarm_stack ,contw 
-0x75fb 033690 setarg mem_sp_random_local_end 
-0x75fc 033691 istore 2 ,contw 
-0x75fd 033692 setarg mem_sp_pubkey_local_x_end 
-0x75fe 033693 istore 2 ,contw 
-0x75ff 033694 setarg mem_sp_pubkey_remote_x_end 
-0x7600 033695 istore 2 ,contw 
-0x7601 033696 branch sp_calculate_commitment0 
-:      033697 master_sp_calculate_commitment:
-0x7602 033698 arg mem_sp_prarm_stack ,contw 
-0x7603 033699 setarg mem_sp_random_remote_end 
-0x7604 033700 istore 2 ,contw 
-0x7605 033701 setarg mem_sp_pubkey_remote_x_end 
-0x7606 033702 istore 2 ,contw 
-0x7607 033703 setarg mem_sp_pubkey_local_x_end 
-0x7608 033704 istore 2 ,contw 
-:      033705 sp_calculate_commitment0:
-0x7609 033706 call function_f1 
-0x760a 033707 fetch 1 ,mem_master_sp_state 
-0x760b 033708 beq sp_stat_commit_calc ,master_sp_calculate_commitment0 
-0x760c 033709 jam sp_flag_commit ,mem_sp_flag 
-0x760d 033710 jam sp_stat_commit_send ,mem_sp_state 
-0x760e 033711 rtn 
-:      033712 master_sp_calculate_commitment0:
-0x760f 033713 jam sp_stat_commitment_compare ,mem_master_sp_state 
-0x7610 033714 call sp_master_generate_local_key 
-0x7611 033715 branch master_set_mem_master_sp_flag 
-:      033717 sp_local_random_key_generator:
-0x7612 033718 arg mem_sp_random_local ,contw 
-0x7613 033719 force 8 ,queue 
-0x7614 033720 branch random_generator 
-:      033722 sp_calculate_commitment_wait_dhkey_calc:
-0x7615 033723 jam sp_flag_commit ,mem_sp_flag 
-0x7616 033724 rtn 
-:      033726 sp_confirm_check:
-0x7617 033728 bpatchx patch3c_6 ,mem_patch3c 
-0x7618 033729 arg mem_addr_value ,contw 
-0x7619 033730 fetch 6 ,mem_lap 
-0x761a 033731 istore 6 ,contw 
-0x761b 033732 fetch 6 ,mem_plap 
-0x761c 033733 istore 6 ,contw 
-0x761d 033734 fetch 3 ,mem_sp_iocap_remote 
-0x761e 033735 istore 3 ,contw 
-0x761f 033737 call function_f3a 
-0x7620 033739 arg mem_sp_calc_result_high ,rega 
-0x7621 033740 arg mem_sp_check_result ,regb 
-0x7622 033741 force 4 ,queue 
-0x7623 033742 call compare4 
-0x7624 033743 nbranch sp_confirm_check_failed ,true 
-0x7625 033745 call sp_confirm_check_success 
-0x7626 033746 jam lmp_dhkey_check ,mem_lmi_opcode2 
-0x7627 033747 branch tid_set_reply 
-:      033749 sp_confirm_check_success:
-0x7628 033750 fetch 1 ,mem_master_sp_state 
-0x7629 033751 beq sp_stat_confirm_check ,sp_confirm_check_success_master 
-0x762a 033752 jam sp_stat_confirm_calc ,mem_sp_state 
-0x762b 033753 jam sp_flag_commit ,mem_sp_flag 
-0x762c 033754 jam lmp_accepted ,mem_lmo_opcode2 
-0x762d 033755 rtn 
-:      033756 sp_confirm_check_success_master:
-0x762e 033757 jam lmp_accepted ,mem_lmo_opcode2 
-0x762f 033758 jam sp_state_end ,mem_master_sp_state 
-0x7630 033759 branch master_set_mem_master_sp_flag 
-:      033762 sp_confirm_check_failed:
-0x7631 033763 fetch 1 ,mem_master_sp_state 
-0x7632 033764 beq sp_stat_confirm_check ,sp_confirm_check_failed_master 
-0x7633 033765 jam sp_stat_null ,mem_sp_state 
-0x7634 033766 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x7635 033768 jam authentication_failure_error ,mem_lmo_reason2 
-0x7636 033769 rtn 
-:      033770 sp_confirm_check_failed_master:
-0x7637 033771 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x7638 033772 jam sp_stat_null ,mem_master_sp_state 
-0x7639 033773 rtn 
-:      033775 sp_confirm_calc:
-0x763a 033776 fetch 1 ,mem_sp_dh_ready 
-0x763b 033777 beq sp_flag_commit ,sp_confirm_calc_ready 
-0x763c 033778 jam sp_stat_confirm_calc ,mem_master_sp_state 
-0x763d 033779 branch master_set_mem_master_sp_flag 
-:      033780 sp_confirm_calc_ready:
-0x763e 033781 arg mem_addr_value ,contw 
-0x763f 033782 fetch 6 ,mem_plap 
-0x7640 033783 istore 6 ,contw 
-0x7641 033784 fetch 6 ,mem_lap 
-0x7642 033785 istore 6 ,contw 
-0x7643 033786 fetch 3 ,mem_sp_iocap_local 
-0x7644 033787 istore 3 ,contw 
-0x7645 033789 call function_f3b 
-0x7646 033790 fetch 1 ,mem_master_sp_state 
-0x7647 033791 beq sp_stat_confirm_calc ,sp_confirm_calc_master 
-0x7648 033792 jam sp_stat_confirm_send ,mem_sp_state 
-0x7649 033793 jam sp_flag_commit ,mem_sp_flag 
-0x764a 033794 rtn 
-:      033795 sp_confirm_calc_master:
-0x764b 033796 jam sp_stat_confirm_send ,mem_master_sp_state 
-0x764c 033797 jam sp_flag_commit ,mem_master_sp_flag 
-0x764d 033798 rtn 
-:      033800 sp_master_key_prarm_push:
-0x764e 033801 arg mem_sp_prarm_stack ,contw 
-0x764f 033802 fetch 6 ,mem_plap 
-0x7650 033803 istore 6 ,contw 
-0x7651 033804 fetch 6 ,mem_lap 
-0x7652 033805 istore 6 ,contw 
-0x7653 033806 setarg mem_sp_random_local_end 
-0x7654 033807 istore 2 ,contw 
-0x7655 033808 setarg mem_sp_random_remote_end 
-0x7656 033809 istore 2 ,contw 
-0x7657 033810 branch sp_link_key_calc 
-:      033811 sp_link_key_prarm_push:
-0x7658 033812 jam sp_stat_done ,mem_sp_state 
-0x7659 033813 arg mem_sp_prarm_stack ,contw 
-0x765a 033814 fetch 6 ,mem_lap 
-0x765b 033815 istore 6 ,contw 
-0x765c 033816 fetch 6 ,mem_plap 
-0x765d 033817 istore 6 ,contw 
-0x765e 033818 setarg mem_sp_random_remote_end 
-0x765f 033819 istore 2 ,contw 
-0x7660 033820 setarg mem_sp_random_local_end 
-0x7661 033821 istore 2 ,contw 
-:      033822 sp_link_key_calc:
-0x7662 033824 arg mem_addr_value ,contw 
-0x7663 033825 fetch 6 ,mem_sp_prarm_stack 
-0x7664 033826 istore 6 ,contw 
-0x7665 033827 fetch 6 ,mem_sp_prarm_stack + 6 
-0x7666 033828 istore 6 ,contw 
-0x7667 033830 call function_f2 
-0x7668 033833 jam 1 ,mem_link_key_exists 
-0x7669 033834 arg mem_link_key ,contw 
-0x766a 033835 arg mem_sp_calc_result_high ,contr 
-0x766b 033836 call memcpy16 
-0x766c 033837 branch generate_linkkey_continue 
-:      033840 sp_pubkey_calc:
-0x766d 033841 bpatchx patch3c_7 ,mem_patch3c 
-0x766e 033842 fetch 1 ,mem_sp_local_key_invalid 
-0x766f 033843 rtnne sp_key_invalid 
-0x7670 033844 fetch 1 ,mem_sp_calc 
-0x7671 033845 rtnne sp_calc_standby 
-0x7672 033846 arg mem_sp_private_key ,contw 
-0x7673 033847 force 11 ,queue 
-0x7674 033848 call random_generator 
-0x7675 033849 random pdata 
-0x7676 033850 rshift pdata ,pdata 
-0x7677 033851 istore 2 ,contw 
-0x7678 033853 arg mem_k ,contw 
-0x7679 033854 arg mem_sp_private_key ,contr 
-0x767a 033855 call memcpy24 
-0x767b 033857 arg mem_ax ,contw 
-0x767c 033858 arg mem_gx ,contr 
-0x767d 033859 call memcpy48 
-0x767e 033861 arg mem_az ,contw 
-0x767f 033862 call bn_zero 
-0x7680 033863 jam 1 ,mem_az 
-0x7681 033865 call eckp_calc_init 
-0x7682 033866 jam sp_calc_pubkey ,mem_sp_calc 
-0x7683 033867 rtn 
-:      033869 sp_pubkey_generated:
-0x7684 033870 arg mem_sp_pubkey_local ,contw 
-0x7685 033871 arg mem_bx ,contr 
-0x7686 033872 call memcpy48 
-0x7687 033873 jam sp_key_valid ,mem_sp_local_key_invalid 
-0x7688 033874 jam sp_calc_standby ,mem_sp_calc 
-0x7689 033875 rtn 
-:      033877 sp_dhkey_calc:
-0x768a 033878 bpatchx patch3d_0 ,mem_patch3d 
-0x768b 033879 fetch 1 ,mem_sp_dhkey_invalid 
-0x768c 033880 rtnne sp_key_invalid 
-0x768d 033881 fetch 1 ,mem_sp_calc 
-0x768e 033882 rtnne sp_calc_standby 
-0x768f 033884 arg mem_k ,contw 
-0x7690 033885 arg mem_sp_private_key ,contr 
-0x7691 033886 call memcpy24 
-0x7692 033888 arg mem_ax ,contw 
-0x7693 033889 arg mem_sp_pubkey_remote ,contr 
-0x7694 033890 call memcpy48 
-0x7695 033892 arg mem_az ,contw 
-0x7696 033893 call bn_zero 
-0x7697 033894 jam 1 ,mem_az 
-0x7698 033896 call eckp_calc_init 
-0x7699 033897 jam sp_calc_dhkey ,mem_sp_calc 
-0x769a 033898 rtn 
-:      033900 sp_dhkey_generated:
-0x769b 033901 jam sp_flag_commit ,mem_sp_dh_ready 
-0x769c 033902 arg mem_sp_dhkey ,contw 
-0x769d 033903 arg mem_bx ,contr 
-0x769e 033904 call memcpy24 
-0x769f 033905 jam sp_key_valid ,mem_sp_dhkey_invalid 
-0x76a0 033906 jam sp_calc_standby ,mem_sp_calc 
-0x76a1 033907 rtn 
-:      033909 random_generator:
-0x76a2 033910 increase -1 ,queue 
-0x76a3 033911 nrtn positive 
-0x76a4 033912 random pdata 
-0x76a5 033913 istore 2 ,contw 
-0x76a6 033914 branch random_generator 
-:      033915 compare4:
-0x76a7 033916 increase -1 ,queue 
-0x76a8 033917 nbranch compare4_success ,positive 
-0x76a9 033918 ifetch 4 ,rega 
-0x76aa 033919 copy pdata ,temp 
-0x76ab 033920 ifetch 4 ,regb 
-0x76ac 033921 iflip temp ,pdata 
-0x76ad 033922 nbranch compare4_failed ,zero 
-0x76ae 033923 increase 4 ,rega 
-0x76af 033924 increase 4 ,regb 
-0x76b0 033925 branch compare4 
-:      033926 compare4_failed:
-0x76b1 033927 disable true 
-0x76b2 033928 rtn 
-:      033929 compare4_success:
-0x76b3 033930 enable true 
-0x76b4 033931 rtn 
-:      033938 simple_pairing_sequence:
-0x76b5 033939 bpatchx patch3d_1 ,mem_patch3d 
-0x76b6 033940 fetch 1 ,mem_sp_flag 
-0x76b7 033941 rtn blank 
-0x76b8 033942 call lmo_fifo_check 
-0x76b9 033943 nrtn blank 
-0x76ba 033944 jam sp_flag_standby ,mem_sp_flag 
-0x76bb 033945 fetch 1 ,mem_sp_state 
-0x76bc 033946 beq sp_stat_key_send ,sp_send_lmp_encapsulated_header 
-0x76bd 033947 beq sp_stat_commit_send ,sp_send_lmp_simple_pairing_comfirm 
-0x76be 033948 beq sp_stat_random_send ,sp_send_lmp_simple_pairing_number 
-0x76bf 033949 beq sp_stat_confirm_send ,sp_send_lmp_dhkey_check 
-0x76c0 033950 beq sp_stat_key_generate ,sp_generate_local_key 
-0x76c1 033951 beq sp_stat_commit_calc ,sp_calculate_commitment 
-0x76c2 033952 beq sp_stat_confirm_check ,sp_confirm_check 
-0x76c3 033953 beq sp_stat_confirm_calc ,sp_confirm_calc 
-0x76c4 033954 beq sp_stat_link_key_calc ,sp_link_key_prarm_push 
-0x76c5 033956 rtn 
-:      033958 master_simple_paring_sequence:
-0x76c6 033959 bpatchx patch3d_2 ,mem_patch3d 
-0x76c7 033960 fetch 1 ,mem_master_sp_flag 
-0x76c8 033961 rtn blank 
-0x76c9 033962 call lmo_fifo_check 
-0x76ca 033963 nrtn blank 
-0x76cb 033964 jam sp_flag_standby ,mem_master_sp_flag 
-0x76cc 033965 fetch 1 ,mem_master_sp_state 
-0x76cd 033966 beq sp_master_stat_start_skip ,sp_master_send_io_cap_get 
-0x76ce 033967 beq sp_master_stat_start_done ,sp_master_send_io_cap_send 
-0x76cf 033968 beq sp_stat_key_send ,sp_master_send_lmp_encapsulated_header 
-0x76d0 033969 beq sp_stat_commit_calc ,master_sp_calculate_commitment 
-0x76d1 033970 beq sp_stat_commitment_compare ,sp_master_commitment_compare 
-0x76d2 033971 beq sp_stat_random_send ,sp_master_send_lmp_simple_pairing_number 
-0x76d3 033972 beq sp_stat_confirm_calc ,sp_confirm_calc 
-0x76d4 033973 beq sp_stat_confirm_send ,master_sp_send_lmp_dhkey_check 
-0x76d5 033974 beq sp_stat_confirm_check ,sp_confirm_check 
-0x76d6 033975 beq sp_state_end ,master_sp_sm_end 
-0x76d7 033976 rtn 
-:      033978 master_set_mem_master_sp_flag:
-0x76d8 033979 jam sp_flag_commit ,mem_master_sp_flag 
-0x76d9 033980 rtn 
-:      033982 master_clear_mem_master_sp_flag:
-0x76da 033983 jam sp_flag_standby ,mem_master_sp_flag 
-0x76db 033984 rtn 
-:      033985 sp_calc_sequence:
-0x76dc 033986 bpatchx patch3d_3 ,mem_patch3d 
-0x76dd 033987 fetch 1 ,mem_ssp_enable 
-0x76de 033988 rtn blank 
-0x76df 033989 fetch 1 ,mem_sp_calc 
-0x76e0 033990 rtn blank 
-0x76e1 033991 increase 0x80 ,pdata 
-0x76e2 033992 store 1 ,mem_sp_calc 
-0x76e3 033993 rtnbit1 7 
-0x76e4 033994 fetch 1 ,mem_ec_loopc 
-0x76e5 033995 branch sp_calc_sequence_done ,blank 
-0x76e6 033996 branch eckp_calc 
-:      033998 sp_calc_sequence_done:
-0x76e7 033999 call ecunmapz 
-0x76e8 034000 fetch 1 ,mem_sp_calc 
-0x76e9 034001 beq sp_calc_pubkey ,sp_pubkey_generated 
-0x76ea 034002 beq sp_calc_dhkey ,sp_dhkey_generated 
-0x76eb 034003 rtn 
-:      034006 bn_testbit:
-0x76ec 034007 and pdata ,7 ,queue 
-0x76ed 034008 rshift3 pdata ,pdata 
-0x76ee 034009 iadd contr ,contr 
-0x76ef 034010 ifetch 1 ,contr 
-0x76f0 034011 qisolate0 pdata 
-0x76f1 034012 rtn 
-:      034015 ec_copy:
-0x76f2 034016 call memcpy24 
-0x76f3 034017 call memcpy24 
-0x76f4 034018 branch memcpy24 
-:      034021 bn_eq_zero:
-0x76f5 034022 ifetch 8 ,contr 
-0x76f6 034023 nrtn blank 
-0x76f7 034024 ifetch 8 ,contr 
-0x76f8 034025 nrtn blank 
-0x76f9 034026 ifetch 8 ,contr 
-0x76fa 034027 rtn 
-:      034032 bn_eq_0:
-0x76fb 034033 ifetch 4 ,rega 
-0x76fc 034034 iforce temp 
-0x76fd 034035 ifetch 4 ,regb 
-0x76fe 034036 isub temp ,null 
-0x76ff 034037 nrtn zero 
-0x7700 034038 increase 4 ,rega 
-0x7701 034039 increase 4 ,regb 
-0x7702 034040 loop bn_eq_0 
-0x7703 034041 rtn 
-:      034044 bn_bigeq:
-0x7704 034045 force 6 ,loopcnt 
-0x7705 034046 increase 20 ,rega 
-0x7706 034047 increase 20 ,regb 
-:      034048 bn_bigeq_0:
-0x7707 034049 ifetch 4 ,regb 
-0x7708 034050 iforce temp 
-0x7709 034051 ifetch 4 ,rega 
-0x770a 034052 isub temp ,pdata 
-0x770b 034053 nrtn positive 
-0x770c 034054 nrtn blank 
-0x770d 034055 increase -4 ,rega 
-0x770e 034056 increase -4 ,regb 
-0x770f 034057 loop bn_bigeq_0 
-0x7710 034058 rtn 
-:      034060 bn_add:
-0x7711 034061 force 6 ,loopcnt 
-0x7712 034062 force 0 ,regc 
-:      034063 bn_add_0:
-0x7713 034064 ifetch 4 ,rega 
-0x7714 034065 iforce temp 
-0x7715 034066 ifetch 4 ,regb 
-0x7716 034067 iadd temp ,pdata 
-0x7717 034068 iadd regc ,pdata 
-0x7718 034069 istore 4 ,contw 
-0x7719 034070 isolate1 32 ,pdata 
-0x771a 034071 setflag true ,0 ,regc 
-0x771b 034072 increase 4 ,rega 
-0x771c 034073 increase 4 ,regb 
-0x771d 034074 loop bn_add_0 
-0x771e 034075 rtn 
-:      034077 bn_sub:
-0x771f 034078 force 6 ,loopcnt 
-0x7720 034079 force 0 ,regc 
-:      034080 bn_sub_0:
-0x7721 034081 ifetch 4 ,regb 
-0x7722 034082 iforce temp 
-0x7723 034083 ifetch 4 ,rega 
-0x7724 034084 isub temp ,pdata 
-0x7725 034085 isub regc ,pdata 
-0x7726 034086 istore 4 ,contw 
-0x7727 034087 isolate1 32 ,pdata 
-0x7728 034088 setflag true ,0 ,regc 
-0x7729 034089 increase 4 ,rega 
-0x772a 034090 increase 4 ,regb 
-0x772b 034091 loop bn_sub_0 
-0x772c 034092 rtn 
-:      034094 bn_rshift6:
-0x772d 034095 force 6 ,loopcnt 
-0x772e 034096 increase 20 ,rega 
-:      034097 bn_rshift:
-0x772f 034098 force 0 ,regc 
-:      034099 bn_rshift_0:
-0x7730 034100 ifetch 4 ,rega 
-0x7731 034101 isolate1 0 ,pdata 
-0x7732 034102 setflag true ,1 ,regc 
-0x7733 034103 rshift pdata ,pdata 
-0x7734 034104 isolate1 0 ,regc 
-0x7735 034105 setflag true ,31 ,pdata 
-0x7736 034106 istore 4 ,rega 
-0x7737 034107 increase -4 ,rega 
-0x7738 034108 rshift regc ,regc 
-0x7739 034109 loop bn_rshift_0 
-0x773a 034110 rtn 
-:      034112 bn_lshift:
-0x773b 034113 force 6 ,loopcnt 
-0x773c 034114 force 0 ,regc 
-:      034115 bn_lshift_0:
-0x773d 034116 ifetch 4 ,rega 
-0x773e 034117 isolate1 31 ,pdata 
-0x773f 034118 setflag true ,1 ,regc 
-0x7740 034119 lshift pdata ,pdata 
-0x7741 034120 isolate1 0 ,regc 
-0x7742 034121 setflag true ,0 ,pdata 
-0x7743 034122 istore 4 ,rega 
-0x7744 034123 increase 4 ,rega 
-0x7745 034124 rshift regc ,regc 
-0x7746 034125 loop bn_lshift_0 
-0x7747 034126 rtn 
-:      034128 bn_lshiftmod:
-0x7748 034129 call bn_lshift 
-:      034130 bn_lshiftmod_ismod:
-0x7749 034131 isolate1 0 ,regc 
-0x774a 034132 branch bn_lshiftmod_0 ,true 
-0x774b 034133 arg mem_p ,regb 
-0x774c 034134 copy rega ,regc 
-0x774d 034135 increase -24 ,rega 
-0x774e 034136 call bn_bigeq 
-0x774f 034137 nrtn positive 
-0x7750 034138 copy regc ,rega 
-:      034139 bn_lshiftmod_0:
-0x7751 034140 increase -24 ,rega 
-0x7752 034141 arg mem_p ,regb 
-0x7753 034142 copy rega ,contw 
-0x7754 034143 branch bn_sub 
-:      034146 bn_addmod:
-0x7755 034147 call bn_add 
-0x7756 034148 copy contw ,rega 
-0x7757 034149 branch bn_lshiftmod_ismod 
-:      034151 bn_submod:
-0x7758 034152 call bn_sub 
-0x7759 034153 isolate0 0 ,regc 
-0x775a 034154 rtn true 
-0x775b 034155 arg mem_p ,regb 
-0x775c 034156 add contw ,-24 ,rega 
-0x775d 034157 copy rega ,contw 
-0x775e 034158 branch bn_add 
-:      034161 bn_p192mod:
-0x775f 034162 copy contw ,timeup 
-0x7760 034163 copy rega ,alarm 
-0x7761 034164 arg mem_tmp2 ,regb 
-0x7762 034165 copy regb ,contw 
-0x7763 034166 add rega ,24 ,contr 
-0x7764 034167 ifetch 8 ,contr 
-0x7765 034168 istore 8 ,contw 
-0x7766 034169 istore 8 ,contw 
-0x7767 034170 force 0 ,pdata 
-0x7768 034171 istore 8 ,contw 
-0x7769 034172 copy timeup ,contw 
-0x776a 034173 call bn_addmod 
-0x776b 034174 arg mem_tmp2 ,regb 
-0x776c 034175 copy regb ,contw 
-0x776d 034176 force 0 ,pdata 
-0x776e 034177 istore 8 ,contw 
-0x776f 034178 add alarm ,32 ,contr 
-0x7770 034179 ifetch 8 ,contr 
-0x7771 034180 istore 8 ,contw 
-0x7772 034181 istore 8 ,contw 
-0x7773 034182 copy timeup ,rega 
-0x7774 034183 copy rega ,contw 
-0x7775 034184 call bn_addmod 
-0x7776 034185 arg mem_tmp2 ,regb 
-0x7777 034186 copy regb ,contw 
-0x7778 034187 add alarm ,40 ,contr 
-0x7779 034188 ifetch 8 ,contr 
-0x777a 034189 istore 8 ,contw 
-0x777b 034190 istore 8 ,contw 
-0x777c 034191 istore 8 ,contw 
-0x777d 034192 copy timeup ,rega 
-0x777e 034193 copy rega ,contw 
-0x777f 034194 branch bn_addmod 
-:      034197 bn_load:
-0x7780 034198 force 6 ,loopcnt 
-:      034199 bn_load_0:
-0x7781 034200 ifetch 4 ,contr 
-0x7782 034201 iforce regext 
-0x7783 034202 increase 1 ,regext_index 
-0x7784 034203 loop bn_load_0 
-0x7785 034204 rtn 
-:      034208 bn_mulmod:
-0x7786 034209 copy contw ,timeup 
-0x7787 034210 arg mem_tmp1 ,contw 
-0x7788 034211 call bn_zero 
-0x7789 034212 arg mem_tmp1 ,contw 
-0x778a 034213 copy rega ,contr 
-0x778b 034214 force 0 ,regext_index 
-0x778c 034215 call bn_load 
-0x778d 034216 copy regb ,contr 
-0x778e 034217 call bn_load 
-0x778f 034218 force 0 ,regb 
-:      034219 bn_mulmod_1:
-0x7790 034220 force 0 ,temp 
-0x7791 034221 force 6 ,regc 
-:      034222 bn_mulmod_0:
-0x7792 034223 ifetch 4 ,contw 
-0x7793 034224 iforce rega 
-0x7794 034225 copy regb ,regext_index 
-0x7795 034226 deposit regext 
-0x7796 034227 copy regc ,regext_index 
-0x7797 034228 imul32 regext ,pdata 
-0x7798 034229 iadd rega ,pdata 
-0x7799 034230 iadd temp ,pdata 
-0x779a 034231 istore 4 ,contw 
-0x779b 034232 rshift32 pdata ,temp 
-0x779c 034233 increase 1 ,regc 
-0x779d 034234 compare 12 ,regc ,0xff 
-0x779e 034235 nbranch bn_mulmod_0 ,true 
-0x779f 034236 deposit temp 
-0x77a0 034237 istore 4 ,contw 
-0x77a1 034238 increase -24 ,contw 
-0x77a2 034239 increase 1 ,regb 
-0x77a3 034240 compare 6 ,regb ,0xff 
-0x77a4 034241 nbranch bn_mulmod_1 ,true 
-0x77a5 034242 arg mem_tmp1 ,rega 
-0x77a6 034243 copy timeup ,contw 
-0x77a7 034244 branch bn_p192mod 
-:      034247 bn_sqrmod:
-0x77a8 034248 copy rega ,regb 
-0x77a9 034249 branch bn_mulmod 
-:      034251 bn_rshifteven:
-0x77aa 034252 copy rega ,alarm 
-:      034253 bn_rshifteven_1:
-0x77ab 034254 copy alarm ,rega 
-0x77ac 034255 ifetch 1 ,rega 
-0x77ad 034256 isolate1 0 ,pdata 
-0x77ae 034257 rtn true 
-0x77af 034258 call bn_rshift6 
-0x77b0 034259 ifetch 1 ,regb 
-0x77b1 034260 isolate0 0 ,pdata 
-0x77b2 034261 branch bn_rshifteven_0 ,true 
-0x77b3 034262 arg mem_p ,rega 
-0x77b4 034263 copy regb ,contw 
-0x77b5 034264 call bn_add 
-0x77b6 034265 ifetch 1 ,regb 
-0x77b7 034266 iadd regc ,pdata 
-0x77b8 034267 istore 1 ,regb 
-0x77b9 034268 increase -24 ,regb 
-:      034269 bn_rshifteven_0:
-0x77ba 034270 add regb ,24 ,rega 
-0x77bb 034271 force 7 ,loopcnt 
-0x77bc 034272 call bn_rshift 
-0x77bd 034273 branch bn_rshifteven_1 
-:      034276 bn_invmod:
-0x77be 034277 copy contw ,timeup 
-0x77bf 034278 arg mem_tmp0 ,contw 
-0x77c0 034279 call bn_zero 
-0x77c1 034280 force 0 ,pdata 
-0x77c2 034281 store 4 ,mem_tmp5 
-0x77c3 034282 store 4 ,mem_t2 
-0x77c4 034283 jam 1 ,mem_tmp0 
-0x77c5 034284 arg mem_tmp1 ,contw 
-0x77c6 034285 call bn_zero 
-0x77c7 034286 arg mem_p ,contr 
-0x77c8 034287 arg mem_tmp2 ,contw 
-0x77c9 034288 call memcpy24 
-0x77ca 034289 copy rega ,contr 
-0x77cb 034290 arg mem_tmp3 ,contw 
-0x77cc 034291 call memcpy24 
-:      034292 bn_invmod_2:
-0x77cd 034293 arg mem_tmp3 ,contr 
-0x77ce 034294 call bn_eq_zero 
-0x77cf 034295 branch bn_invmod_0 ,blank 
-0x77d0 034296 arg mem_tmp3 ,rega 
-0x77d1 034297 arg mem_tmp0 ,regb 
-0x77d2 034298 call bn_rshifteven 
-0x77d3 034300 arg mem_tmp2 ,rega 
-0x77d4 034301 arg mem_tmp1 ,regb 
-0x77d5 034302 call bn_rshifteven 
-0x77d6 034303 arg mem_tmp3 ,rega 
-0x77d7 034304 arg mem_tmp2 ,regb 
-0x77d8 034305 call bn_bigeq 
-0x77d9 034306 branch bn_invmod_1 ,positive 
-0x77da 034307 arg mem_tmp2 ,rega 
-0x77db 034308 arg mem_tmp3 ,regb 
-0x77dc 034309 copy rega ,contw 
-0x77dd 034310 call bn_sub 
-0x77de 034311 arg mem_tmp0 ,rega 
-0x77df 034312 arg mem_tmp1 ,regb 
-0x77e0 034313 copy regb ,contw 
-0x77e1 034314 call bn_add 
-0x77e2 034315 ifetch 1 ,rega 
-0x77e3 034316 iadd regc ,regc 
-0x77e4 034317 ifetch 1 ,regb 
-0x77e5 034318 iadd regc ,pdata 
-0x77e6 034319 istore 1 ,regb 
-0x77e7 034320 branch bn_invmod_2 
-:      034321 bn_invmod_1:
-0x77e8 034322 arg mem_tmp3 ,rega 
-0x77e9 034323 arg mem_tmp2 ,regb 
-0x77ea 034324 copy rega ,contw 
-0x77eb 034325 call bn_sub 
-0x77ec 034326 arg mem_tmp1 ,rega 
-0x77ed 034327 arg mem_tmp0 ,regb 
-0x77ee 034328 copy regb ,contw 
-0x77ef 034329 call bn_add 
-0x77f0 034330 ifetch 1 ,rega 
-0x77f1 034331 iadd regc ,regc 
-0x77f2 034332 ifetch 1 ,regb 
-0x77f3 034333 iadd regc ,pdata 
-0x77f4 034334 istore 1 ,regb 
-0x77f5 034335 branch bn_invmod_2 
-:      034336 bn_invmod_0:
-0x77f6 034337 arg mem_tmp0 ,contw 
-0x77f7 034338 call bn_zero 
-0x77f8 034339 fetch 1 ,mem_tmp5 
-0x77f9 034340 store 1 ,mem_tmp0 
-0x77fa 034341 store 1 ,mem_tmp0a 
-0x77fb 034342 arg mem_tmp0 ,rega 
-0x77fc 034343 arg mem_tmp1 ,regb 
-0x77fd 034344 copy regb ,contw 
-0x77fe 034345 call bn_addmod 
-0x77ff 034346 arg mem_p ,rega 
-0x7800 034347 arg mem_tmp1 ,regb 
-0x7801 034348 copy timeup ,contw 
-0x7802 034349 branch bn_submod 
-:      034354 ecdbl:
-0x7803 034355 arg mem_cz ,rega 
-0x7804 034356 arg mem_t2 ,contw 
-0x7805 034357 call bn_sqrmod 
-0x7806 034358 arg mem_t2 ,rega 
-0x7807 034359 arg mem_t3 ,contw 
-0x7808 034360 call bn_sqrmod 
-0x7809 034361 arg mem_a ,rega 
-0x780a 034362 arg mem_t3 ,regb 
-0x780b 034363 arg mem_t3 ,contw 
-0x780c 034364 call bn_mulmod 
-0x780d 034365 arg mem_cx ,rega 
-0x780e 034366 arg mem_t2 ,contw 
-0x780f 034367 call bn_sqrmod 
-0x7810 034368 arg mem_t2 ,contr 
-0x7811 034369 arg mem_t1 ,contw 
-0x7812 034370 call memcpy24 
-0x7813 034371 arg mem_t1 ,rega 
-0x7814 034372 call bn_lshiftmod 
-0x7815 034373 arg mem_t2 ,rega 
-0x7816 034374 arg mem_t1 ,regb 
-0x7817 034375 arg mem_t2 ,contw 
-0x7818 034376 call bn_addmod 
-0x7819 034377 arg mem_t2 ,rega 
-0x781a 034378 arg mem_t3 ,regb 
-0x781b 034379 arg mem_t2 ,contw 
-0x781c 034380 call bn_addmod 
-0x781d 034381 arg mem_cx ,contr 
-0x781e 034382 arg mem_t1 ,contw 
-0x781f 034383 call memcpy24 
-0x7820 034384 arg mem_cy ,rega 
-0x7821 034385 arg mem_t3 ,contw 
-0x7822 034386 call bn_sqrmod 
-0x7823 034387 arg mem_t1 ,rega 
-0x7824 034388 call bn_lshiftmod 
-0x7825 034389 arg mem_t1 ,rega 
-0x7826 034390 call bn_lshiftmod 
-0x7827 034391 arg mem_t1 ,rega 
-0x7828 034392 arg mem_t3 ,regb 
-0x7829 034393 arg mem_t1 ,contw 
-0x782a 034394 call bn_mulmod 
-0x782b 034395 arg mem_t3 ,rega 
-0x782c 034396 arg mem_t0 ,contw 
-0x782d 034397 call bn_sqrmod 
-0x782e 034398 arg mem_t0 ,rega 
-0x782f 034399 call bn_lshiftmod 
-0x7830 034400 arg mem_t0 ,rega 
-0x7831 034401 call bn_lshiftmod 
-0x7832 034402 arg mem_t0 ,rega 
-0x7833 034403 call bn_lshiftmod 
-0x7834 034404 arg mem_cy ,contr 
-0x7835 034405 arg mem_t3 ,contw 
-0x7836 034406 call memcpy24 
-0x7837 034407 arg mem_t3 ,rega 
-0x7838 034408 call bn_lshiftmod 
-0x7839 034409 arg mem_t3 ,rega 
-0x783a 034410 arg mem_cz ,regb 
-0x783b 034411 arg mem_cz ,contw 
-0x783c 034412 call bn_mulmod 
-0x783d 034413 arg mem_t2 ,rega 
-0x783e 034414 arg mem_t3 ,contw 
-0x783f 034415 call bn_sqrmod 
-0x7840 034416 arg mem_t3 ,rega 
-0x7841 034417 arg mem_t1 ,regb 
-0x7842 034418 arg mem_t3 ,contw 
-0x7843 034419 call bn_submod 
-0x7844 034420 arg mem_t3 ,rega 
-0x7845 034421 arg mem_t1 ,regb 
-0x7846 034422 arg mem_cx ,contw 
-0x7847 034423 call bn_submod 
-0x7848 034424 arg mem_t1 ,rega 
-0x7849 034425 arg mem_cx ,regb 
-0x784a 034426 arg mem_t3 ,contw 
-0x784b 034427 call bn_submod 
-0x784c 034428 arg mem_t3 ,rega 
-0x784d 034429 arg mem_t2 ,regb 
-0x784e 034430 arg mem_t3 ,contw 
-0x784f 034431 call bn_mulmod 
-0x7850 034432 arg mem_t3 ,rega 
-0x7851 034433 arg mem_t0 ,regb 
-0x7852 034434 arg mem_cy ,contw 
-0x7853 034435 branch bn_submod 
-:      034439 ecadd:
-0x7854 034440 arg mem_az ,rega 
-0x7855 034441 arg mem_t7 ,contw 
-0x7856 034442 call bn_sqrmod 
-0x7857 034443 arg mem_cx ,rega 
-0x7858 034444 arg mem_t7 ,regb 
-0x7859 034445 arg mem_t0 ,contw 
-0x785a 034446 call bn_mulmod 
-0x785b 034447 arg mem_az ,rega 
-0x785c 034448 arg mem_t7 ,regb 
-0x785d 034449 arg mem_t7 ,contw 
-0x785e 034450 call bn_mulmod 
-0x785f 034451 arg mem_cy ,rega 
-0x7860 034452 arg mem_t7 ,regb 
-0x7861 034453 arg mem_t1 ,contw 
-0x7862 034454 call bn_mulmod 
-0x7863 034455 arg mem_cz ,rega 
-0x7864 034456 arg mem_t7 ,contw 
-0x7865 034457 call bn_sqrmod 
-0x7866 034458 arg mem_ax ,rega 
-0x7867 034459 arg mem_t7 ,regb 
-0x7868 034460 arg mem_t2 ,contw 
-0x7869 034461 call bn_mulmod 
-0x786a 034462 arg mem_cz ,rega 
-0x786b 034463 arg mem_t7 ,regb 
-0x786c 034464 arg mem_t7 ,contw 
-0x786d 034465 call bn_mulmod 
-0x786e 034466 arg mem_ay ,rega 
-0x786f 034467 arg mem_t7 ,regb 
-0x7870 034468 arg mem_t3 ,contw 
-0x7871 034469 call bn_mulmod 
-0x7872 034470 arg mem_t0 ,rega 
-0x7873 034471 arg mem_t2 ,regb 
-0x7874 034472 arg mem_t7 ,contw 
-0x7875 034473 call bn_submod 
-0x7876 034474 arg mem_t0 ,rega 
-0x7877 034475 arg mem_t2 ,regb 
-0x7878 034476 arg mem_t0 ,contw 
-0x7879 034477 call bn_addmod 
-0x787a 034478 arg mem_t1 ,rega 
-0x787b 034479 arg mem_t3 ,regb 
-0x787c 034480 arg mem_t2 ,contw 
-0x787d 034481 call bn_submod 
-0x787e 034482 arg mem_t1 ,rega 
-0x787f 034483 arg mem_t3 ,regb 
-0x7880 034484 arg mem_t1 ,contw 
-0x7881 034485 call bn_addmod 
-0x7882 034486 arg mem_t1 ,rega 
-0x7883 034487 arg mem_t7 ,regb 
-0x7884 034488 arg mem_t1 ,contw 
-0x7885 034489 call bn_mulmod 
-0x7886 034490 arg mem_cz ,rega 
-0x7887 034491 arg mem_az ,regb 
-0x7888 034492 arg mem_t3 ,contw 
-0x7889 034493 call bn_mulmod 
-0x788a 034494 arg mem_t3 ,rega 
-0x788b 034495 arg mem_t7 ,regb 
-0x788c 034496 arg mem_cz ,contw 
-0x788d 034497 call bn_mulmod 
-0x788e 034498 arg mem_t7 ,rega 
-0x788f 034499 arg mem_t7 ,contw 
-0x7890 034500 call bn_sqrmod 
-0x7891 034501 arg mem_t7 ,rega 
-0x7892 034502 arg mem_t0 ,regb 
-0x7893 034503 arg mem_t3 ,contw 
-0x7894 034504 call bn_mulmod 
-0x7895 034505 arg mem_t7 ,rega 
-0x7896 034506 arg mem_t1 ,regb 
-0x7897 034507 arg mem_t1 ,contw 
-0x7898 034508 call bn_mulmod 
-0x7899 034509 arg mem_t2 ,rega 
-0x789a 034510 arg mem_cx ,contw 
-0x789b 034511 call bn_sqrmod 
-0x789c 034512 arg mem_cx ,rega 
-0x789d 034513 arg mem_t3 ,regb 
-0x789e 034514 arg mem_cx ,contw 
-0x789f 034515 call bn_submod 
-0x78a0 034516 arg mem_cx ,contr 
-0x78a1 034517 arg mem_t7 ,contw 
-0x78a2 034518 call memcpy24 
-0x78a3 034519 arg mem_t7 ,rega 
-0x78a4 034520 call bn_lshiftmod 
-0x78a5 034521 arg mem_t3 ,rega 
-0x78a6 034522 arg mem_t7 ,regb 
-0x78a7 034523 arg mem_t3 ,contw 
-0x78a8 034524 call bn_submod 
-0x78a9 034525 arg mem_t3 ,rega 
-0x78aa 034526 arg mem_t2 ,regb 
-0x78ab 034527 arg mem_t2 ,contw 
-0x78ac 034528 call bn_mulmod 
-0x78ad 034529 arg mem_t2 ,rega 
-0x78ae 034530 arg mem_t1 ,regb 
-0x78af 034531 arg mem_cy ,contw 
-0x78b0 034532 call bn_submod 
-0x78b1 034533 arg mem_cy ,rega 
-0x78b2 034534 arg mem_p ,regb 
-0x78b3 034535 arg mem_cy ,contw 
-0x78b4 034536 force 0 ,regc 
-0x78b5 034537 fetch 1 ,mem_cy 
-0x78b6 034538 isolate1 0 ,pdata 
-0x78b7 034539 call bn_add ,true 
-0x78b8 034540 copy regc ,alarm 
-0x78b9 034541 arg mem_cy ,rega 
-0x78ba 034542 call bn_rshift6 
-0x78bb 034543 fetch 1 ,mem_cy5 
-0x78bc 034544 isolate1 0 ,alarm 
-0x78bd 034545 setflag true ,7 ,pdata 
-0x78be 034546 store 1 ,mem_cy5 
-0x78bf 034547 rtn 
-:      034551 eckp_0:
-0x78c0 034552 fetch 1 ,mem_ec_loopc 
-0x78c1 034553 increase -1 ,pdata 
-0x78c2 034554 nrtn positive 
-0x78c3 034555 store 1 ,mem_ec_loopc 
-0x78c4 034556 fetch 1 ,mem_ec_infinite 
-0x78c5 034557 call ecdbl ,blank 
-0x78c6 034558 fetch 1 ,mem_ec_loopc 
-0x78c7 034559 arg mem_k ,contr 
-0x78c8 034560 call bn_testbit 
-0x78c9 034561 branch eckp_0 ,true 
-0x78ca 034562 fetch 1 ,mem_ec_infinite 
-0x78cb 034563 nbranch eckp_1 ,blank 
-0x78cc 034564 call ecadd 
-0x78cd 034565 branch eckp_0 
-:      034566 eckp_1:
-0x78ce 034567 jam 0 ,mem_ec_infinite 
-0x78cf 034568 arg mem_ax ,contr 
-0x78d0 034569 arg mem_cx ,contw 
-0x78d1 034570 call ec_copy 
-0x78d2 034571 branch eckp_0 
-:      034574 ecunmapz:
-0x78d3 034575 arg mem_cz ,rega 
-0x78d4 034576 arg mem_t3 ,contw 
-0x78d5 034577 call bn_invmod 
-0x78d6 034578 arg mem_t3 ,rega 
-0x78d7 034579 arg mem_t1 ,contw 
-0x78d8 034580 call bn_sqrmod 
-0x78d9 034581 arg mem_cx ,rega 
-0x78da 034582 arg mem_t1 ,regb 
-0x78db 034583 arg mem_bx ,contw 
-0x78dc 034584 call bn_mulmod 
-0x78dd 034585 arg mem_t3 ,rega 
-0x78de 034586 arg mem_t1 ,regb 
-0x78df 034587 arg mem_t2 ,contw 
-0x78e0 034588 call bn_mulmod 
-0x78e1 034589 arg mem_cy ,rega 
-0x78e2 034590 arg mem_t2 ,regb 
-0x78e3 034591 arg mem_by ,contw 
-0x78e4 034592 branch bn_mulmod 
-:      034596 sha_endian_swap2:
-0x78e5 034597 ifetch 4 ,contr 
-0x78e6 034598 force 4 ,rega 
-0x78e7 034599 increase 3 ,contw 
-:      034600 sha_endian_loop:
-0x78e8 034601 istore 1 ,contw 
-0x78e9 034602 rshift8 pdata ,pdata 
-0x78ea 034603 increase -2 ,contw 
-0x78eb 034604 increase -1 ,rega 
-0x78ec 034605 nbranch sha_endian_loop ,zero 
-0x78ed 034606 increase 5 ,contw 
-0x78ee 034607 loop sha_endian_swap2 
-0x78ef 034608 rtn 
-:      034611 sha_getw:
-0x78f0 034612 lshift2 queue ,pdata 
-0x78f1 034613 iadd timeup ,contr 
-0x78f2 034614 ifetch 4 ,contr 
-0x78f3 034615 rtn 
-:      034617 sha_r:
-0x78f4 034618 force 16 ,alarm 
-0x78f5 034619 arg memdat ,timeup 
-:      034620 sha_r_loop:
-0x78f6 034621 add alarm ,-7 ,queue 
-0x78f7 034622 call sha_getw 
-0x78f8 034623 iforce temp 
-0x78f9 034624 add alarm ,-16 ,queue 
-0x78fa 034625 call sha_getw 
-0x78fb 034626 iadd temp ,temp 
-0x78fc 034627 add alarm ,-2 ,queue 
-0x78fd 034628 call sha_getw 
-0x78fe 034629 shasx pdata ,1 ,pdata 
-0x78ff 034630 iadd temp ,temp 
-0x7900 034631 add alarm ,-15 ,queue 
-0x7901 034632 call sha_getw 
-0x7902 034633 shasx pdata ,0 ,pdata 
-0x7903 034634 iadd temp ,temp 
-0x7904 034635 lshift2 alarm ,pdata 
-0x7905 034636 iadd timeup ,contw 
-0x7906 034637 istoret 4 ,contw 
-0x7907 034638 increase 1 ,alarm 
-0x7908 034639 compare 64 ,alarm ,0xff 
-0x7909 034640 nbranch sha_r_loop ,true 
-0x790a 034641 rtn 
-:      034644 sha_init:
-0x790b 034645 arg memh0 ,contr 
-0x790c 034646 force 7 ,regext_index 
-:      034647 sha_init_0:
-0x790d 034648 ifetch 4 ,contr 
-0x790e 034649 iforce regext 
-0x790f 034650 increase -1 ,regext_index 
-0x7910 034651 branch sha_init_0 ,positive 
-0x7911 034652 rtn 
-:      034654 sha:
-0x7912 034655 bpatchx patch3d_4 ,mem_patch3d 
-0x7913 034656 call sha_r 
-0x7914 034657 arg memahbak ,contw 
-0x7915 034658 force 0 ,regext_index 
-:      034659 sha_0:
-0x7916 034660 deposit regext 
-0x7917 034661 istore 4 ,contw 
-0x7918 034662 increase 1 ,regext_index 
-0x7919 034663 compare 8 ,regext_index ,0xff 
-0x791a 034664 nbranch sha_0 ,true 
-0x791b 034665 call enable_authrom 
-0x791c 034666 arg memk ,timeup 
-0x791d 034667 arg memdat ,alarm 
-0x791e 034668 force 64 ,loopcnt 
-:      034669 sha_loop:
-0x791f 034670 ifetcht 4 ,alarm 
-0x7920 034671 ifetch 4 ,timeup 
-0x7921 034672 increase 4 ,timeup 
-0x7922 034673 increase 4 ,alarm 
-0x7923 034674 iadd temp ,pdata 
-0x7924 034675 force 7 ,regext_index 
-0x7925 034676 iadd regext ,temp 
-0x7926 034677 force 4 ,regext_index 
-0x7927 034678 shasx regext ,3 ,pdata 
-0x7928 034679 iadd temp ,temp 
-0x7929 034680 force 5 ,regext_index 
-0x792a 034681 deposit regext 
-0x792b 034682 force 6 ,regext_index 
-0x792c 034683 ixor regext ,pdata 
-0x792d 034684 force 4 ,regext_index 
-0x792e 034685 iand regext ,pdata 
-0x792f 034686 force 6 ,regext_index 
-0x7930 034687 ixor regext ,pdata 
-0x7931 034688 iadd temp ,temp 
-0x7932 034689 force 7 ,regext_index 
-0x7933 034690 copy temp ,regext 
-0x7934 034691 force 3 ,regext_index 
-0x7935 034692 deposit regext 
-0x7936 034693 iadd temp ,regext 
-0x7937 034694 force 0 ,regext_index 
-0x7938 034695 deposit regext 
-0x7939 034696 force 1 ,regext_index 
-0x793a 034697 iand regext ,temp 
-0x793b 034698 ior regext ,pdata 
-0x793c 034699 force 2 ,regext_index 
-0x793d 034700 iand regext ,pdata 
-0x793e 034701 ior temp ,temp 
-0x793f 034702 force 0 ,regext_index 
-0x7940 034703 shasx regext ,2 ,pdata 
-0x7941 034704 iadd temp ,pdata 
-0x7942 034705 force 7 ,regext_index 
-0x7943 034706 iadd regext ,regext 
-0x7944 034707 regexrot 
-0x7945 034708 loop sha_loop 
-0x7946 034709 arg memahbak ,contr 
-0x7947 034710 force 0 ,regext_index 
-:      034711 sha_1:
-0x7948 034712 ifetch 4 ,contr 
-0x7949 034713 iadd regext ,regext 
-0x794a 034714 increase 1 ,regext_index 
-0x794b 034715 compare 8 ,regext_index ,0xff 
-0x794c 034716 nbranch sha_1 ,true 
-0x794d 034717 branch disable_authrom 
-:      034720 sha_result:
-0x794e 034721 arg memresult ,contw 
-0x794f 034722 force 7 ,regext_index 
-:      034723 sha_regext_save:
-0x7950 034724 deposit regext 
-0x7951 034725 istore 4 ,contw 
-0x7952 034726 increase -1 ,regext_index 
-0x7953 034727 branch sha_regext_save ,positive 
-0x7954 034728 rtn 
-:      034730 pad_xor:
-0x7955 034732 arg memdat ,contw 
-0x7956 034733 increase -4 ,contr 
-0x7957 034734 sub loopcnt ,16 ,rega 
-:      034735 pad_xor_0:
-0x7958 034736 ifetch 4 ,contr 
-0x7959 034737 ixor temp ,pdata 
-0x795a 034738 istore 4 ,contw 
-0x795b 034739 increase -8 ,contr 
-0x795c 034740 loop pad_xor_0 
-0x795d 034741 copy rega ,loopcnt 
-0x795e 034742 deposit temp 
-:      034743 pad_xor_1:
-0x795f 034744 istore 4 ,contw 
-0x7960 034745 loop pad_xor_1 
-0x7961 034746 rtn 
-:      034748 g_noninit_number_confirm:
-0x7962 034749 call g_noninit0 
-0x7963 034750 call sha_result 
-0x7964 034751 branch g_common0 
-:      034753 g_noninit:
-0x7965 034754 call g_noninit0 
-0x7966 034755 branch g_common0 
-:      034757 g_noninit0:
-0x7967 034758 arg mem_sp_pubkey_remote_x_end ,contr 
-0x7968 034759 arg memdat ,contw 
-0x7969 034760 force 6 ,loopcnt 
-0x796a 034761 call memcpy_dword_swap 
-0x796b 034762 arg mem_sp_pubkey_local_x_end ,contr 
-0x796c 034763 force 6 ,loopcnt 
-0x796d 034764 call memcpy_dword_swap 
-0x796e 034765 arg mem_sp_random_remote_end ,contr 
-0x796f 034766 call memcpy_dword_swap4 
-0x7970 034767 call sha_init 
-0x7971 034768 call sha 
-0x7972 034769 arg mem_sp_random_local_end ,contr 
-0x7973 034770 arg memdat ,contw 
-0x7974 034771 branch g_common 
-:      034773 g_init:
-0x7975 034774 arg mem_sp_pubkey_local_x_end ,contr 
-0x7976 034775 arg memdat ,contw 
-0x7977 034776 force 6 ,loopcnt 
-0x7978 034777 call memcpy_dword_swap 
-0x7979 034778 arg mem_sp_pubkey_remote_x_end ,contr 
-0x797a 034779 force 6 ,loopcnt 
-0x797b 034780 call memcpy_dword_swap 
-0x797c 034781 arg mem_sp_random_local_end ,contr 
-0x797d 034782 call memcpy_dword_swap4 
-0x797e 034783 call sha_init 
-0x797f 034784 call sha 
-0x7980 034785 arg mem_sp_random_remote_end ,contr 
-0x7981 034786 arg memdat ,contw 
-0x7982 034787 call g_common 
-0x7983 034788 branch g_common0 
-:      034790 g_common:
-0x7984 034791 call memcpy_dword_swap4 
-0x7985 034792 setarg 0x800000 
-0x7986 034793 lshift8 pdata ,pdata 
-0x7987 034794 istore 4 ,contw 
-0x7988 034795 force 5 ,loopcnt 
-0x7989 034796 call memset0 
-0x798a 034797 setarg 640 
-0x798b 034798 istore 4 ,contw 
-0x798c 034799 branch sha 
-:      034800 g_common0:
-0x798d 034801 fetch 4 ,memresult 
-0x798e 034803 arg 1000 ,rega 
-0x798f 034804 idiv rega 
-0x7990 034805 call wait_div_end 
-0x7991 034806 remainder pdata 
-0x7992 034807 store 4 ,mem_gkey 
-0x7993 034808 quotient pdata 
-0x7994 034809 arg 1000 ,rega 
-0x7995 034810 idiv rega 
-0x7996 034811 call wait_div_end 
-0x7997 034812 remainder pdata 
-0x7998 034813 arg 1000 ,rega 
-0x7999 034814 imul32 rega ,pdata 
-0x799a 034815 fetcht 4 ,mem_gkey 
-0x799b 034816 iadd temp ,pdata 
-0x799c 034817 store 4 ,mem_gkey 
-0x799d 034818 rtn 
-:      034820 function_f1_no_key:
-0x799e 034821 jam 0 ,mem_passkey_1bit 
-0x799f 034822 branch function_f1_common 
-:      034824 function_f1:
-0x79a0 034825 fetch 1 ,mem_ssp_mode_flag 
-0x79a1 034826 bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
-:      034827 function_f1_common:
-0x79a2 034828 bpatchx patch3d_5 ,mem_patch3d 
-0x79a3 034829 setarg 0x363636 
-0x79a4 034830 lshift8 pdata ,temp 
-0x79a5 034831 or_into 0x36 ,temp 
-0x79a6 034832 fetch 2 ,mem_sp_prarm_stack 
-0x79a7 034833 copy pdata ,contr 
-0x79a8 034834 force 4 ,loopcnt 
-0x79a9 034835 call pad_xor 
-0x79aa 034836 call sha_init 
-0x79ab 034837 call sha 
-0x79ac 034838 fetch 2 ,mem_sp_prarm_stack + 2 
-0x79ad 034839 copy pdata ,contr 
-0x79ae 034840 arg memdat ,contw 
-0x79af 034841 force 6 ,loopcnt 
-0x79b0 034842 call memcpy_dword_swap 
-0x79b1 034843 fetch 2 ,mem_sp_prarm_stack + 4 
-0x79b2 034844 copy pdata ,contr 
-0x79b3 034845 force 6 ,loopcnt 
-0x79b4 034846 call memcpy_dword_swap 
-0x79b5 034847 setarg 0x800000 
-0x79b6 034848 istore 3 ,contw 
-0x79b7 034850 fetch 1 ,mem_passkey_1bit 
-0x79b8 034852 istore 1 ,contw 
-0x79b9 034853 force 0 ,pdata 
-0x79ba 034854 istore 8 ,contw 
-0x79bb 034855 setarg 0x0388 
-0x79bc 034856 istore 4 ,contw 
-0x79bd 034857 call sha 
-0x79be 034858 call sha_result 
-0x79bf 034859 arg memresult ,contr 
-0x79c0 034860 arg memahsave ,contw 
-0x79c1 034861 call memcpy32 
-0x79c2 034863 setarg 0x5c5c5c 
-0x79c3 034864 lshift8 pdata ,temp 
-0x79c4 034865 or_into 0x5c ,temp 
-0x79c5 034866 fetch 2 ,mem_sp_prarm_stack 
-0x79c6 034867 copy pdata ,contr 
-0x79c7 034868 force 4 ,loopcnt 
-0x79c8 034869 call pad_xor 
-0x79c9 034870 call sha_init 
-0x79ca 034871 call sha 
-0x79cb 034872 arg memahsave_end ,contr 
-0x79cc 034873 arg memdat ,contw 
-0x79cd 034874 force 8 ,loopcnt 
-0x79ce 034875 call memcpy_dword_swap 
-0x79cf 034876 setarg 0x800000 
-0x79d0 034877 lshift8 pdata ,pdata 
-0x79d1 034878 istore 4 ,contw 
-0x79d2 034879 call bn_zero 
-0x79d3 034880 setarg 0x0300 
-0x79d4 034881 istore 4 ,contw 
-0x79d5 034882 call sha 
-0x79d6 034883 branch sha_result 
-:      034886 function_f2:
-0x79d7 034887 setarg 0x363636 
-0x79d8 034888 lshift8 pdata ,temp 
-0x79d9 034889 or_into 0x36 ,temp 
-0x79da 034890 arg mem_sp_dhkey_end ,contr 
-0x79db 034891 force 6 ,loopcnt 
-0x79dc 034892 call pad_xor 
-0x79dd 034893 call sha_init 
-0x79de 034894 call sha 
-0x79df 034895 fetch 2 ,mem_sp_prarm_stack + 12 
-0x79e0 034896 copy pdata ,contr 
-0x79e1 034897 arg memdat ,contw 
-0x79e2 034898 call memcpy_dword_swap4 
-0x79e3 034899 fetch 2 ,mem_sp_prarm_stack + 14 
-0x79e4 034900 copy pdata ,contr 
-0x79e5 034901 call memcpy_dword_swap4 
-0x79e6 034903 setarg 0x62746c 
-0x79e7 034904 lshift8 pdata ,pdata 
-0x79e8 034905 or_into 0x6b ,pdata 
-0x79e9 034906 istore 4 ,contw 
-0x79ea 034907 arg mem_addr_value_end ,contr 
-0x79eb 034908 force 3 ,loopcnt 
-0x79ec 034909 call memcpy_dword_swap 
-0x79ed 034911 setarg 0x800000 
-0x79ee 034912 lshift8 pdata ,pdata 
-0x79ef 034913 istore 4 ,contw 
-0x79f0 034914 force 0 ,pdata 
-0x79f1 034915 istore 8 ,contw 
-0x79f2 034916 setarg 0x0380 
-0x79f3 034917 istore 4 ,contw 
-0x79f4 034918 call sha 
-0x79f5 034920 call sha_result 
-0x79f6 034921 arg memresult ,contr 
-0x79f7 034922 arg memahsave ,contw 
-0x79f8 034923 call memcpy32 
-0x79f9 034925 setarg 0x5c5c5c 
-0x79fa 034926 lshift8 pdata ,temp 
-0x79fb 034927 or_into 0x5c ,temp 
-0x79fc 034928 arg mem_sp_dhkey_end ,contr 
-0x79fd 034929 force 6 ,loopcnt 
-0x79fe 034930 call pad_xor 
-0x79ff 034931 call sha_init 
-0x7a00 034932 call sha 
-0x7a01 034933 arg memahsave_end ,contr 
-0x7a02 034934 arg memdat ,contw 
-0x7a03 034935 force 8 ,loopcnt 
-0x7a04 034936 call memcpy_dword_swap 
-0x7a05 034937 setarg 0x800000 
-0x7a06 034938 lshift8 pdata ,pdata 
-0x7a07 034939 istore 4 ,contw 
-0x7a08 034940 call bn_zero 
-0x7a09 034941 setarg 0x0300 
-0x7a0a 034942 istore 4 ,contw 
-0x7a0b 034943 call sha 
-0x7a0c 034944 branch sha_result 
-:      034947 function_f3a:
-0x7a0d 034948 fetch 1 ,mem_ssp_mode_flag 
-0x7a0e 034949 bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
-:      034950 function_f3a_common:
-0x7a0f 034951 bpatchx patch3d_6 ,mem_patch3d 
-0x7a10 034952 setarg 0x363636 
-0x7a11 034953 lshift8 pdata ,temp 
-0x7a12 034954 or_into 0x36 ,temp 
-0x7a13 034955 arg mem_sp_dhkey_end ,contr 
-0x7a14 034956 force 6 ,loopcnt 
-0x7a15 034957 call pad_xor 
-0x7a16 034958 call sha_init 
-0x7a17 034959 call sha 
-0x7a18 034960 arg mem_sp_random_remote_end ,contr 
-0x7a19 034961 arg memdat ,contw 
-0x7a1a 034962 call memcpy_dword_swap4 
-0x7a1b 034963 arg mem_sp_random_local_end ,contr 
-0x7a1c 034964 call memcpy_dword_swap4 
-0x7a1d 034965 branch function_f3_common 
-:      034967 function_f3a_no_pin:
-0x7a1e 034968 setarg 0 
-0x7a1f 034969 store 4 ,mem_pin 
-0x7a20 034970 branch function_f3a_common 
-:      034972 function_f3b_no_pin:
-0x7a21 034973 setarg 0 
-0x7a22 034974 store 4 ,mem_pin 
-0x7a23 034975 branch function_f3b_common 
-:      034978 function_f3b:
-0x7a24 034979 fetch 1 ,mem_ssp_mode_flag 
-0x7a25 034980 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
-:      034981 function_f3b_common:
-0x7a26 034982 setarg 0x363636 
-0x7a27 034983 lshift8 pdata ,temp 
-0x7a28 034984 or_into 0x36 ,temp 
-0x7a29 034985 arg mem_sp_dhkey_end ,contr 
-0x7a2a 034986 force 6 ,loopcnt 
-0x7a2b 034987 call pad_xor 
-0x7a2c 034988 call sha_init 
-0x7a2d 034989 call sha 
-0x7a2e 034991 arg mem_sp_random_local_end ,contr 
-0x7a2f 034992 arg memdat ,contw 
-0x7a30 034993 call memcpy_dword_swap4 
-0x7a31 034994 arg mem_sp_random_remote_end ,contr 
-0x7a32 034995 call memcpy_dword_swap4 
-:      034996 function_f3_common:
-0x7a33 034997 setarg 0x0 
-0x7a34 034998 istore 8 ,contw 
-0x7a35 034999 istore 4 ,contw 
-0x7a36 035000 fetch 4 ,mem_pin 
-0x7a37 035001 istore 4 ,contw 
-0x7a38 035003 copy contw ,temp 
-0x7a39 035004 jam 0x80 ,mem_addr_padding 
-0x7a3a 035005 copy temp ,contw 
-0x7a3b 035006 arg mem_addr_iocap_end ,contr 
-0x7a3c 035007 call memcpy_dword_swap4 
-0x7a3d 035009 call sha 
-0x7a3e 035011 arg memdat ,contw 
-0x7a3f 035012 force 7 ,loopcnt 
-0x7a40 035013 call memset0 
-0x7a41 035014 istore 4 ,contw 
-0x7a42 035015 setarg 0x03F8 
-0x7a43 035016 istore 4 ,contw 
-0x7a44 035017 call sha 
-0x7a45 035018 call sha_result 
-0x7a46 035020 arg memresult ,contr 
-0x7a47 035021 arg memahsave ,contw 
-0x7a48 035022 call memcpy32 
-0x7a49 035024 setarg 0x5c5c5c 
-0x7a4a 035025 lshift8 pdata ,temp 
-0x7a4b 035026 or_into 0x5c ,temp 
-0x7a4c 035027 arg mem_sp_dhkey_end ,contr 
-0x7a4d 035028 force 6 ,loopcnt 
-0x7a4e 035029 call pad_xor 
-0x7a4f 035030 call sha_init 
-0x7a50 035031 call sha 
-0x7a51 035032 arg memahsave_end ,contr 
-0x7a52 035033 arg memdat ,contw 
-0x7a53 035034 force 8 ,loopcnt 
-0x7a54 035035 call memcpy_dword_swap 
-0x7a55 035036 setarg 0x800000 
-0x7a56 035037 lshift8 pdata ,pdata 
-0x7a57 035038 istore 4 ,contw 
-0x7a58 035039 call bn_zero 
-0x7a59 035040 setarg 0x0300 
-0x7a5a 035041 istore 4 ,contw 
-0x7a5b 035042 call sha 
-0x7a5c 035043 branch sha_result 
-:      035050 eckp_calc_init:
-0x7a5d 035051 jam 192 ,mem_ec_loopc 
-:      035052 eckp_calc_init_1:
-0x7a5e 035053 fetch 1 ,mem_ec_loopc 
-0x7a5f 035054 rtn blank 
-0x7a60 035055 increase -1 ,pdata 
-0x7a61 035056 store 1 ,mem_ec_loopc 
-0x7a62 035057 arg mem_k ,contr 
-0x7a63 035058 call bn_testbit 
-0x7a64 035059 branch eckp_calc_init_1 ,true 
-0x7a65 035060 arg mem_ax ,contr 
-0x7a66 035061 arg mem_cx ,contw 
-0x7a67 035062 branch ec_copy 
-:      035064 eckp_calc:
-0x7a68 035065 call ecdbl 
-0x7a69 035066 fetch 1 ,mem_ec_loopc 
-0x7a6a 035067 increase -1 ,pdata 
-0x7a6b 035068 store 1 ,mem_ec_loopc 
-0x7a6c 035069 arg mem_k ,contr 
-0x7a6d 035070 call bn_testbit 
-0x7a6e 035071 rtn true 
-0x7a6f 035072 branch ecadd 
-:      035074 memcpy_dword_swap4:
-0x7a70 035075 force 4 ,loopcnt 
-:      035076 memcpy_dword_swap:
-0x7a71 035077 increase -4 ,contr 
-:      035078 memcpy_dword_swap_loop:
-0x7a72 035079 ifetch 4 ,contr 
-0x7a73 035080 istore 4 ,contw 
-0x7a74 035081 increase -8 ,contr 
-0x7a75 035082 loop memcpy_dword_swap_loop 
-0x7a76 035083 rtn 
-:      035088 sp_initialize_256:
-0x7a77 035089 bpatchx patch3d_7 ,mem_patch3d 
-0x7a78 035090 fetch 1 ,mem_le_secure_connect_enable 
-0x7a79 035091 branch le_secure_connection_disable ,blank 
-0x7a7a 035092 call le_secure_connection_enable 
-0x7a7b 035093 call sp_clear_flags 
-0x7a7c 035095 branch sp_pubkey_calc_256 
-:      035100 sp_pubkey_calc_256:
-0x7a7d 035101 fetch 1 ,mem_le_sc_local_key_invalid 
-0x7a7e 035102 rtnne sp_key_invalid 
-0x7a7f 035103 fetch 1 ,mem_le_sc_calc 
-0x7a80 035104 rtnne sp_calc_standby 
-0x7a81 035106 arg mem_le_private_key_256 ,contw 
-0x7a82 035107 force 15 ,queue 
-0x7a83 035108 call random_generator 
-0x7a84 035109 random pdata 
-0x7a85 035110 rshift pdata ,pdata 
-0x7a86 035111 istore 2 ,contw 
-0x7a87 035113 arg mem_k_256 ,contw 
-0x7a88 035114 arg mem_le_private_key_256 ,contr 
-0x7a89 035115 call memcpy32 
-0x7a8a 035117 arg mem_ax_256 ,contw 
-0x7a8b 035118 arg mem_gx_256 ,contr 
-0x7a8c 035119 call memcpy64 
-0x7a8d 035121 arg mem_az_256 ,contw 
-0x7a8e 035122 call clear_mem_256 
-0x7a8f 035123 jam 1 ,mem_az_256 
-0x7a90 035125 call eckp_calc_init_256 
-0x7a91 035126 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
-0x7a92 035127 rtn 
-:      035129 sp_pubkey_generated_256:
-0x7a93 035130 arg mem_le_pubkey_local_x_256 ,contw 
-0x7a94 035131 arg mem_bx_256 ,contr 
-0x7a95 035132 call memcpy64 
-0x7a96 035133 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
-0x7a97 035134 jam sp_calc_standby ,mem_le_sc_calc 
-0x7a98 035135 rtn 
-:      035139 sp_dhkey_calc_256:
-0x7a99 035140 fetch 1 ,mem_sp_dhkey_invalid 
-0x7a9a 035141 rtnne sp_key_invalid 
-0x7a9b 035142 fetch 1 ,mem_le_sc_calc 
-0x7a9c 035143 rtnne sp_calc_standby 
-0x7a9d 035145 arg mem_k_256 ,contw 
-0x7a9e 035146 arg mem_le_private_key_256 ,contr 
-0x7a9f 035147 call memcpy32 
-0x7aa0 035149 arg mem_ax_256 ,contw 
-0x7aa1 035150 arg mem_le_pubkey_remote_x_256 ,contr 
-0x7aa2 035151 call memcpy64 
-0x7aa3 035153 arg mem_az_256 ,contw 
-0x7aa4 035154 call clear_mem_256 
-0x7aa5 035155 jam 1 ,mem_az_256 
-0x7aa6 035157 call eckp_calc_init_256 
-0x7aa7 035158 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
-0x7aa8 035159 rtn 
-:      035162 sp_dhkey_generated_256:
-0x7aa9 035164 arg mem_le_dhkey_256 ,contw 
-0x7aaa 035165 arg mem_bx_256 ,contr 
-0x7aab 035166 call memcpy32 
-0x7aac 035167 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
-0x7aad 035168 jam sp_calc_standby ,mem_le_sc_calc 
-0x7aae 035169 rtn 
-:      035173 sp_calc_sequence_256:
-0x7aaf 035174 fetch 1 ,mem_le_secure_connect_enable 
-0x7ab0 035175 rtn blank 
-0x7ab1 035176 fetch 1 ,mem_le_sc_calc 
-0x7ab2 035177 rtn blank 
-0x7ab3 035178 increase 0x80 ,pdata 
-0x7ab4 035179 store 1 ,mem_le_sc_calc 
-0x7ab5 035180 rtnbit1 7 
-0x7ab6 035181 fetch 2 ,mem_ec_loopc 
-0x7ab7 035182 branch sp_calc_sequence_done_256 ,blank 
-0x7ab8 035183 branch eckp_calc_256 
-:      035185 sp_calc_sequence_done_256:
-0x7ab9 035186 bpatchx patch3e_0 ,mem_patch3e 
-0x7aba 035187 call ecunmapz_256 
-0x7abb 035188 fetch 1 ,mem_le_sc_calc 
-0x7abc 035189 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
-0x7abd 035190 beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
-0x7abe 035191 rtn 
-:      035194 eckp_calc_256:
-0x7abf 035195 call ecdbl_256 
-0x7ac0 035196 fetch 2 ,mem_ec_loopc 
-0x7ac1 035197 increase -1 ,pdata 
-0x7ac2 035198 store 2 ,mem_ec_loopc 
-0x7ac3 035199 arg mem_k_256 ,contr 
-0x7ac4 035200 call bn_testbit 
-0x7ac5 035201 rtn true 
-0x7ac6 035202 branch ecadd_256 
-:      035204 eckp_calc_init_256:
-0x7ac7 035205 bpatchx patch3e_1 ,mem_patch3e 
-0x7ac8 035206 setarg 256 ,pdata 
-0x7ac9 035207 store 2 ,mem_ec_loopc 
-:      035208 eckp_calc_init_256_1:
-0x7aca 035209 fetch 2 ,mem_ec_loopc 
-0x7acb 035210 rtn blank 
-0x7acc 035211 increase -1 ,pdata 
-0x7acd 035212 store 2 ,mem_ec_loopc 
-0x7ace 035213 arg mem_k_256 ,contr 
-0x7acf 035214 call bn_testbit 
-0x7ad0 035215 branch eckp_calc_init_256_1 ,true 
-0x7ad1 035216 arg mem_ax_256 ,contr 
-0x7ad2 035217 arg mem_cx_256 ,contw 
-0x7ad3 035218 branch memcpy96 
-:      035221 ecunmapz_256:
-0x7ad4 035222 arg mem_cz_256 ,rega 
-0x7ad5 035223 arg mem_t3_256 ,contw 
-0x7ad6 035224 call bn_invmod_256 
-0x7ad7 035225 arg mem_t3_256 ,rega 
-0x7ad8 035226 arg mem_t1_256 ,contw 
-0x7ad9 035227 call bn_sqrmod_256 
-0x7ada 035228 arg mem_cx_256 ,rega 
-0x7adb 035229 arg mem_t1_256 ,regb 
-0x7adc 035230 arg mem_bx_256 ,contw 
-0x7add 035231 call bn_mulmod_256 
-0x7ade 035232 arg mem_t3_256 ,rega 
-0x7adf 035233 arg mem_t1_256 ,regb 
-0x7ae0 035234 arg mem_t2_256 ,contw 
-0x7ae1 035235 call bn_mulmod_256 
-0x7ae2 035236 arg mem_cy_256 ,rega 
-0x7ae3 035237 arg mem_t2_256 ,regb 
-0x7ae4 035238 arg mem_by_256 ,contw 
-0x7ae5 035239 branch bn_mulmod_256 
-:      035241 ecdbl_256:
-0x7ae6 035242 arg mem_cz_256 ,rega 
-0x7ae7 035243 arg mem_t2_256 ,contw 
-0x7ae8 035244 call bn_sqrmod_256 
-0x7ae9 035245 arg mem_t2_256 ,rega 
-0x7aea 035246 arg mem_t3_256 ,contw 
-0x7aeb 035247 call bn_sqrmod_256 
-0x7aec 035249 arg mem_a_256 ,rega 
-0x7aed 035250 arg mem_t3_256 ,regb 
-0x7aee 035251 arg mem_t3_256 ,contw 
-0x7aef 035252 call bn_mulmod_256 
-0x7af0 035253 arg mem_cx_256 ,rega 
-0x7af1 035254 arg mem_t2_256 ,contw 
-0x7af2 035255 call bn_sqrmod_256 
-0x7af3 035257 arg mem_t2_256 ,contr 
-0x7af4 035258 arg mem_t1_256 ,contw 
-0x7af5 035259 call memcpy32 
-0x7af6 035260 arg mem_t1_256 ,rega 
-0x7af7 035261 call bn_lshiftmod_256 
-0x7af8 035262 arg mem_t2_256 ,rega 
-0x7af9 035263 arg mem_t1_256 ,regb 
-0x7afa 035264 arg mem_t2_256 ,contw 
-0x7afb 035265 call bn_addmod_256 
-0x7afc 035267 arg mem_t2_256 ,rega 
-0x7afd 035268 arg mem_t3_256 ,regb 
-0x7afe 035269 arg mem_t2_256 ,contw 
-0x7aff 035270 call bn_addmod_256 
-0x7b00 035272 arg mem_cx_256 ,contr 
-0x7b01 035273 arg mem_t1_256 ,contw 
-0x7b02 035274 call memcpy32 
-0x7b03 035275 arg mem_cy_256 ,rega 
-0x7b04 035276 arg mem_t3_256 ,contw 
-0x7b05 035277 call bn_sqrmod_256 
-0x7b06 035278 arg mem_t1_256 ,rega 
-0x7b07 035279 call bn_lshiftmod_256 
-0x7b08 035280 arg mem_t1_256 ,rega 
-0x7b09 035281 call bn_lshiftmod_256 
-0x7b0a 035282 arg mem_t1_256 ,rega 
-0x7b0b 035283 arg mem_t3_256 ,regb 
-0x7b0c 035284 arg mem_t1_256 ,contw 
-0x7b0d 035285 call bn_mulmod_256 
-0x7b0e 035286 arg mem_t3_256 ,rega 
-0x7b0f 035287 arg mem_t0_256 ,contw 
-0x7b10 035288 call bn_sqrmod_256 
-0x7b11 035289 arg mem_t0_256 ,rega 
-0x7b12 035290 call bn_lshiftmod_256 
-0x7b13 035291 arg mem_t0_256 ,rega 
-0x7b14 035292 call bn_lshiftmod_256 
-0x7b15 035293 arg mem_t0_256 ,rega 
-0x7b16 035294 call bn_lshiftmod_256 
-0x7b17 035295 arg mem_cy_256 ,contr 
-0x7b18 035296 arg mem_t3_256 ,contw 
-0x7b19 035297 call memcpy32 
-0x7b1a 035298 arg mem_t3_256 ,rega 
-0x7b1b 035299 call bn_lshiftmod_256 
-0x7b1c 035300 arg mem_t3_256 ,rega 
-0x7b1d 035301 arg mem_cz_256 ,regb 
-0x7b1e 035302 arg mem_cz_256 ,contw 
-0x7b1f 035303 call bn_mulmod_256 
-0x7b20 035306 arg mem_t2_256 ,rega 
-0x7b21 035307 arg mem_t3_256 ,contw 
-0x7b22 035308 call bn_sqrmod_256 
-0x7b23 035310 arg mem_t3_256 ,rega 
-0x7b24 035311 arg mem_t1_256 ,regb 
-0x7b25 035312 arg mem_t3_256 ,contw 
-0x7b26 035313 call bn_submod_256 
-0x7b27 035314 arg mem_t3_256 ,rega 
-0x7b28 035315 arg mem_t1_256 ,regb 
-0x7b29 035316 arg mem_cx_256 ,contw 
-0x7b2a 035317 call bn_submod_256 
-0x7b2b 035318 arg mem_t1_256 ,rega 
-0x7b2c 035319 arg mem_cx_256 ,regb 
-0x7b2d 035320 arg mem_t3_256 ,contw 
-0x7b2e 035321 call bn_submod_256 
-0x7b2f 035322 arg mem_t3_256 ,rega 
-0x7b30 035323 arg mem_t2_256 ,regb 
-0x7b31 035324 arg mem_t3_256 ,contw 
-0x7b32 035325 call bn_mulmod_256 
-0x7b33 035326 arg mem_t3_256 ,rega 
-0x7b34 035327 arg mem_t0_256 ,regb 
-0x7b35 035328 arg mem_cy_256 ,contw 
-0x7b36 035329 branch bn_submod_256 
-:      035331 ecadd_256:
-0x7b37 035333 arg mem_az_256 ,rega 
-0x7b38 035334 arg mem_t7_256 ,contw 
-0x7b39 035335 call bn_sqrmod_256 
-0x7b3a 035336 arg mem_cx_256 ,rega 
-0x7b3b 035337 arg mem_t7_256 ,regb 
-0x7b3c 035338 arg mem_t0_256 ,contw 
-0x7b3d 035339 call bn_mulmod_256 
-0x7b3e 035342 arg mem_az_256 ,rega 
-0x7b3f 035343 arg mem_t7_256 ,regb 
-0x7b40 035344 arg mem_t7_256 ,contw 
-0x7b41 035345 call bn_mulmod_256 
-0x7b42 035346 arg mem_cy_256 ,rega 
-0x7b43 035347 arg mem_t7_256 ,regb 
-0x7b44 035348 arg mem_t1_256 ,contw 
-0x7b45 035349 call bn_mulmod_256 
-0x7b46 035352 arg mem_cz_256 ,rega 
-0x7b47 035353 arg mem_t7_256 ,contw 
-0x7b48 035354 call bn_sqrmod_256 
-0x7b49 035355 arg mem_ax_256 ,rega 
-0x7b4a 035356 arg mem_t7_256 ,regb 
-0x7b4b 035357 arg mem_t2_256 ,contw 
-0x7b4c 035358 call bn_mulmod_256 
-0x7b4d 035360 arg mem_cz_256 ,rega 
-0x7b4e 035361 arg mem_t7_256 ,regb 
-0x7b4f 035362 arg mem_t7_256 ,contw 
-0x7b50 035363 call bn_mulmod_256 
-0x7b51 035364 arg mem_ay_256 ,rega 
-0x7b52 035365 arg mem_t7_256 ,regb 
-0x7b53 035366 arg mem_t3_256 ,contw 
-0x7b54 035367 call bn_mulmod_256 
-0x7b55 035372 arg mem_t0_256 ,regb 
-0x7b56 035373 arg mem_t2_256 ,rega 
-0x7b57 035374 arg mem_t7_256 ,contw 
-0x7b58 035375 call bn_submod_256 
-0x7b59 035376 arg mem_t0_256 ,rega 
-0x7b5a 035377 arg mem_t2_256 ,regb 
-0x7b5b 035378 arg mem_t0_256 ,contw 
-0x7b5c 035379 call bn_addmod_256 
-0x7b5d 035382 arg mem_t1_256 ,regb 
-0x7b5e 035383 arg mem_t3_256 ,rega 
-0x7b5f 035384 arg mem_t2_256 ,contw 
-0x7b60 035385 call bn_submod_256 
-0x7b61 035386 arg mem_t1_256 ,rega 
-0x7b62 035387 arg mem_t3_256 ,regb 
-0x7b63 035388 arg mem_t1_256 ,contw 
-0x7b64 035389 call bn_addmod_256 
-0x7b65 035390 arg mem_t1_256 ,rega 
-0x7b66 035391 arg mem_t7_256 ,regb 
-0x7b67 035392 arg mem_t1_256 ,contw 
-0x7b68 035393 call bn_mulmod_256 
-0x7b69 035394 arg mem_cz_256 ,rega 
-0x7b6a 035395 arg mem_az_256 ,regb 
-0x7b6b 035396 arg mem_t3_256 ,contw 
-0x7b6c 035397 call bn_mulmod_256 
-0x7b6d 035398 arg mem_t3_256 ,rega 
-0x7b6e 035399 arg mem_t7_256 ,regb 
-0x7b6f 035400 arg mem_cz_256 ,contw 
-0x7b70 035401 call bn_mulmod_256 
-0x7b71 035403 arg mem_t7_256 ,rega 
-0x7b72 035404 arg mem_t7_256 ,contw 
-0x7b73 035405 call bn_sqrmod_256 
-0x7b74 035406 arg mem_t7_256 ,rega 
-0x7b75 035407 arg mem_t0_256 ,regb 
-0x7b76 035408 arg mem_t3_256 ,contw 
-0x7b77 035409 call bn_mulmod_256 
-0x7b78 035410 arg mem_t7_256 ,rega 
-0x7b79 035411 arg mem_t1_256 ,regb 
-0x7b7a 035412 arg mem_t1_256 ,contw 
-0x7b7b 035413 call bn_mulmod_256 
-0x7b7c 035414 arg mem_t2_256 ,rega 
-0x7b7d 035415 arg mem_cx_256 ,contw 
-0x7b7e 035416 call bn_sqrmod_256 
-0x7b7f 035417 arg mem_cx_256 ,rega 
-0x7b80 035418 arg mem_t3_256 ,regb 
-0x7b81 035419 arg mem_cx_256 ,contw 
-0x7b82 035420 call bn_submod_256 
-0x7b83 035421 arg mem_cx_256 ,contr 
-0x7b84 035422 arg mem_t7_256 ,contw 
-0x7b85 035423 call memcpy32 
-0x7b86 035424 arg mem_t7_256 ,rega 
-0x7b87 035425 call bn_lshiftmod_256 
-0x7b88 035426 arg mem_t3_256 ,rega 
-0x7b89 035427 arg mem_t7_256 ,regb 
-0x7b8a 035428 arg mem_t3_256 ,contw 
-0x7b8b 035429 call bn_submod_256 
-0x7b8c 035430 arg mem_t3_256 ,rega 
-0x7b8d 035431 arg mem_t2_256 ,regb 
-0x7b8e 035432 arg mem_t2_256 ,contw 
-0x7b8f 035433 call bn_mulmod_256 
-0x7b90 035434 arg mem_t2_256 ,rega 
-0x7b91 035435 arg mem_t1_256 ,regb 
-0x7b92 035436 arg mem_cy_256 ,contw 
-0x7b93 035437 call bn_submod_256 
-0x7b94 035438 arg mem_cy_256 ,rega 
-0x7b95 035439 arg mem_p_256 ,regb 
-0x7b96 035440 arg mem_cy_256 ,contw 
-0x7b97 035441 force 0 ,regc 
-0x7b98 035442 fetch 1 ,mem_cy_256 
-0x7b99 035443 isolate1 0 ,pdata 
-0x7b9a 035444 call bn_add_256 ,true 
-0x7b9b 035445 copy regc ,alarm 
-0x7b9c 035446 arg mem_cy_256 ,rega 
-0x7b9d 035447 call bn_rshift_256 
-0x7b9e 035448 fetch 1 ,mem_cy5_256 
-0x7b9f 035449 isolate1 0 ,alarm 
-0x7ba0 035450 setflag true ,7 ,pdata 
-0x7ba1 035451 store 1 ,mem_cy5_256 
-0x7ba2 035452 rtn 
-:      035454 bn_invmod_256:
-0x7ba3 035455 copy contw ,timeup 
-0x7ba4 035456 arg mem_tmp0_256 ,contw 
-0x7ba5 035457 call clear_mem_256 
-0x7ba6 035458 force 0 ,pdata 
-0x7ba7 035460 store 4 ,mem_t2_256 
-0x7ba8 035461 jam 1 ,mem_tmp0_256 
-0x7ba9 035462 arg mem_tmp1_256 ,contw 
-0x7baa 035463 call clear_mem_512 
-0x7bab 035464 arg mem_p_256 ,contr 
-0x7bac 035465 arg mem_tmp2_256 ,contw 
-0x7bad 035466 call memcpy32 
-0x7bae 035467 copy rega ,contr 
-0x7baf 035468 arg mem_tmp3_256 ,contw 
-0x7bb0 035469 call memcpy32 
-:      035475 bn_invmod_256_2:
-0x7bb1 035476 arg mem_tmp3_256 ,contr 
-0x7bb2 035477 call bn_eq_zero_256 
-0x7bb3 035478 branch bn_invmod_256_0 ,blank 
-0x7bb4 035483 arg mem_tmp3_256 ,rega 
-0x7bb5 035484 arg mem_tmp0_256 ,regb 
-0x7bb6 035485 call bn_rshifteven_256 
-0x7bb7 035486 arg mem_tmp2_256 ,rega 
-0x7bb8 035487 arg mem_tmp1_256 ,regb 
-0x7bb9 035488 call bn_rshifteven_256 
-0x7bba 035490 arg mem_tmp3_256 ,rega 
-0x7bbb 035491 arg mem_tmp2_256 ,regb 
-0x7bbc 035492 call bn_bigeq_256 
-0x7bbd 035493 branch bn_invmod_256_1 ,positive 
-0x7bbe 035494 arg mem_tmp2_256 ,rega 
-0x7bbf 035495 arg mem_tmp3_256 ,regb 
-0x7bc0 035496 copy rega ,contw 
-0x7bc1 035497 call bn_sub_256 
-0x7bc2 035498 arg mem_tmp0_256 ,rega 
-0x7bc3 035499 arg mem_tmp1_256 ,regb 
-0x7bc4 035500 copy regb ,contw 
-0x7bc5 035501 call bn_add_256 
-0x7bc6 035502 ifetch 1 ,rega 
-0x7bc7 035503 iadd regc ,regc 
-0x7bc8 035504 ifetch 1 ,regb 
-0x7bc9 035505 iadd regc ,pdata 
-0x7bca 035506 istore 1 ,regb 
-0x7bcb 035507 branch bn_invmod_256_2 
-:      035508 bn_invmod_256_1:
-0x7bcc 035509 arg mem_tmp3_256 ,rega 
-0x7bcd 035510 arg mem_tmp2_256 ,regb 
-0x7bce 035511 copy rega ,contw 
-0x7bcf 035512 call bn_sub_256 
-0x7bd0 035513 arg mem_tmp1_256 ,rega 
-0x7bd1 035514 arg mem_tmp0_256 ,regb 
-0x7bd2 035515 copy regb ,contw 
-0x7bd3 035516 call bn_add_256 
-0x7bd4 035517 ifetch 1 ,rega 
-0x7bd5 035518 iadd regc ,regc 
-0x7bd6 035519 ifetch 1 ,regb 
-0x7bd7 035520 iadd regc ,pdata 
-0x7bd8 035521 istore 1 ,regb 
-0x7bd9 035522 branch bn_invmod_256_2 
-:      035523 bn_invmod_256_0:
-0x7bda 035525 arg mem_tmp1_256 ,rega 
-0x7bdb 035526 copy timeup ,contw 
-0x7bdc 035527 call bn_p256mod 
-0x7bdd 035529 arg mem_p_256 ,rega 
-0x7bde 035530 copy timeup ,regb 
-0x7bdf 035531 copy timeup ,contw 
-0x7be0 035532 branch bn_submod_256 
-:      035535 bn_mulmod_256:
-0x7be1 035536 copy contw ,timeup 
-0x7be2 035538 force 0 ,regext_index 
-0x7be3 035540 arg mem_tmp1_256 ,contw 
-0x7be4 035541 call clear_mem_512 
-0x7be5 035542 arg mem_regext ,contw 
-0x7be6 035543 call clear_mem_512 
-0x7be7 035547 copy rega ,contr 
-0x7be8 035549 jam 0 ,mem_regext 
-0x7be9 035550 setarg 0 
-0x7bea 035551 call bn_load_mem 
-0x7beb 035552 copy regb ,contr 
-0x7bec 035553 call bn_load_256 
-0x7bed 035556 force 0 ,queue 
-0x7bee 035557 arg mem_tmp1_256 ,contw 
-:      035558 bn_mulmod_256_1:
-0x7bef 035561 arg mem_regext ,temp 
-0x7bf0 035562 copy queue ,regb 
-0x7bf1 035563 lshift2 regb ,pdata 
-0x7bf2 035565 iadd temp ,regb 
-0x7bf3 035566 force 0 ,temp 
-0x7bf4 035567 force 0 ,regc 
-:      035568 bn_mulmod_256_0:
-0x7bf5 035573 ifetch 4 ,contw 
-0x7bf6 035574 iforce rega 
-0x7bf7 035577 ifetch 4 ,regb 
-0x7bf8 035578 copy regc ,regext_index 
-0x7bf9 035579 imul32 regext ,pdata 
-0x7bfa 035580 iadd rega ,pdata 
-0x7bfb 035581 iadd temp ,pdata 
-0x7bfc 035582 istore 4 ,contw 
-0x7bfd 035583 rshift32 pdata ,temp 
-0x7bfe 035584 increase 1 ,regc 
-0x7bff 035585 compare 8 ,regc ,0xff 
-0x7c00 035586 nbranch bn_mulmod_256_0 ,true 
-0x7c01 035588 deposit temp 
-0x7c02 035589 istore 4 ,contw 
-0x7c03 035590 increase -32 ,contw 
-0x7c04 035593 increase 1 ,queue 
-0x7c05 035594 compare 8 ,queue ,0xff 
-0x7c06 035595 nbranch bn_mulmod_256_1 ,true 
-0x7c07 035596 arg mem_tmp1_256 ,rega 
-0x7c08 035597 copy timeup ,contw 
-0x7c09 035598 branch bn_p256mod 
-:      035600 bn_p256mod:
-0x7c0a 035601 bpatchx patch3e_2 ,mem_patch3e 
-0x7c0b 035602 copy contw ,timeup 
-0x7c0c 035603 copy rega ,alarm 
-0x7c0d 035604 arg mem_tmp2_256 ,regb 
-0x7c0e 035605 copy regb ,contw 
-0x7c0f 035606 call memset0_4 
-0x7c10 035607 istore 8 ,contw 
-0x7c11 035608 add rega ,44 ,contr 
-0x7c12 035609 call memcpy8 
-0x7c13 035610 call memcpy12 
-0x7c14 035611 copy regb ,rega 
-0x7c15 035612 call bn_lshiftmod_256 
-0x7c16 035613 arg mem_tmp2_256 ,regb 
-0x7c17 035614 copy alarm ,rega 
-0x7c18 035615 copy timeup ,contw 
-0x7c19 035616 call bn_addmod_256 
-0x7c1a 035618 arg mem_tmp2_256 ,regb 
-0x7c1b 035619 copy regb ,contw 
-0x7c1c 035620 call memset0_4 
-0x7c1d 035621 istore 8 ,contw 
-0x7c1e 035622 add alarm ,48 ,contr 
-0x7c1f 035623 call memcpy16 
-0x7c20 035624 call memset0_4 
-0x7c21 035625 copy regb ,rega 
-0x7c22 035626 call bn_lshiftmod_256 
-0x7c23 035630 arg mem_tmp2_256 ,regb 
-0x7c24 035631 copy timeup ,rega 
-0x7c25 035632 copy rega ,contw 
-0x7c26 035633 call bn_addmod_256 
-0x7c27 035637 arg mem_tmp2_256 ,regb 
-0x7c28 035638 copy regb ,contw 
-0x7c29 035639 add alarm ,32 ,contr 
-0x7c2a 035640 call memcpy12 
-0x7c2b 035641 call memset0_4 
-0x7c2c 035642 istore 8 ,contw 
-0x7c2d 035643 add alarm ,56 ,contr 
-0x7c2e 035644 call memcpy8 
-0x7c2f 035645 copy timeup ,rega 
-0x7c30 035646 copy rega ,contw 
-0x7c31 035647 call bn_addmod_256 
-0x7c32 035651 arg mem_tmp2_256 ,regb 
-0x7c33 035652 copy regb ,contw 
-0x7c34 035653 add alarm ,36 ,contr 
-0x7c35 035654 call memcpy12 
-0x7c36 035655 add alarm ,52 ,contr 
-0x7c37 035656 call memcpy12 
-0x7c38 035657 add alarm ,52 ,contr 
-0x7c39 035658 call memcpy4 
-0x7c3a 035659 add alarm ,32 ,contr 
-0x7c3b 035660 call memcpy4 
-0x7c3c 035661 copy timeup ,rega 
-0x7c3d 035662 copy rega ,contw 
-0x7c3e 035663 call bn_addmod_256 
-0x7c3f 035666 arg mem_tmp2_256 ,regb 
-0x7c40 035667 copy regb ,contw 
-0x7c41 035668 add alarm ,44 ,contr 
-0x7c42 035669 call memcpy12 
-0x7c43 035670 call memset0_4 
-0x7c44 035671 istore 8 ,contw 
-0x7c45 035672 add alarm ,32 ,contr 
-0x7c46 035673 call memcpy4 
-0x7c47 035674 add alarm ,40 ,contr 
-0x7c48 035675 call memcpy4 
-0x7c49 035676 copy timeup ,rega 
-0x7c4a 035677 copy rega ,contw 
-0x7c4b 035678 call bn_submod_256 
-0x7c4c 035681 arg mem_tmp2_256 ,regb 
-0x7c4d 035682 copy regb ,contw 
-0x7c4e 035683 add alarm ,48 ,contr 
-0x7c4f 035684 call memcpy8 
-0x7c50 035685 call memcpy8 
-0x7c51 035686 force 0 ,pdata 
-0x7c52 035687 istore 8 ,contw 
-0x7c53 035688 add alarm ,36 ,contr 
-0x7c54 035689 call memcpy4 
-0x7c55 035690 add alarm ,44 ,contr 
-0x7c56 035691 call memcpy4 
-0x7c57 035692 copy timeup ,rega 
-0x7c58 035693 copy rega ,contw 
-0x7c59 035694 call bn_submod_256 
-0x7c5a 035697 arg mem_tmp2_256 ,regb 
-0x7c5b 035698 copy regb ,contw 
-0x7c5c 035699 add alarm ,52 ,contr 
-0x7c5d 035700 call memcpy12 
-0x7c5e 035701 add alarm ,32 ,contr 
-0x7c5f 035702 call memcpy12 
-0x7c60 035703 call memset0_4 
-0x7c61 035704 add alarm ,48 ,contr 
-0x7c62 035705 call memcpy4 
-0x7c63 035706 copy timeup ,rega 
-0x7c64 035707 copy rega ,contw 
-0x7c65 035708 call bn_submod_256 
-0x7c66 035711 arg mem_tmp2_256 ,regb 
-0x7c67 035712 copy regb ,contw 
-0x7c68 035713 add alarm ,56 ,contr 
-0x7c69 035714 call memcpy8 
-0x7c6a 035715 call memset0_4 
-0x7c6b 035716 add alarm ,36 ,contr 
-0x7c6c 035717 call memcpy12 
-0x7c6d 035718 call memset0_4 
-0x7c6e 035719 add alarm ,52 ,contr 
-0x7c6f 035720 call memcpy4 
-0x7c70 035721 copy timeup ,rega 
-0x7c71 035722 copy rega ,contw 
-0x7c72 035723 branch bn_submod_256 
-:      035726 bn_load_mem:
-0x7c73 035727 force 32 ,loopcnt 
-0x7c74 035728 arg mem_regext ,contw 
-0x7c75 035729 iadd contw ,contw 
-0x7c76 035730 branch memcpy 
-:      035732 bn_load_256:
-0x7c77 035733 force 8 ,loopcnt 
-0x7c78 035734 branch bn_load_0 
-:      035736 bn_sqrmod_256:
-0x7c79 035737 copy rega ,regb 
-0x7c7a 035738 branch bn_mulmod_256 
-:      035740 bn_add_256:
-0x7c7b 035741 force 8 ,loopcnt 
-0x7c7c 035742 branch bn_add + 1 
-:      035744 bn_addmod_256:
-0x7c7d 035745 call bn_add_256 
-0x7c7e 035746 copy contw ,rega 
-0x7c7f 035747 branch bn_lshiftmod_ismod_256 
-:      035749 bn_lshiftmod_256:
-0x7c80 035750 call bn_lshift_256 
-:      035751 bn_lshiftmod_ismod_256:
-0x7c81 035752 isolate1 0 ,regc 
-0x7c82 035753 branch bn_lshiftmod_p_256 ,true 
-0x7c83 035754 arg mem_p_256 ,regb 
-0x7c84 035755 copy rega ,regc 
-0x7c85 035756 increase -32 ,rega 
-0x7c86 035757 call bn_bigeq_256 
-0x7c87 035758 nrtn positive 
-0x7c88 035759 copy regc ,rega 
-0x7c89 035760 branch sub_p2_256 
-:      035762 bn_lshiftmod_p_256:
-0x7c8a 035763 call sub_p2_256 
-0x7c8b 035765 copy rega ,regc 
-0x7c8c 035766 increase -32 ,rega 
-0x7c8d 035767 arg mem_p_256 ,regb 
-0x7c8e 035768 call bn_bigeq_256 
-0x7c8f 035769 nrtn positive 
-0x7c90 035770 copy regc ,rega 
-0x7c91 035771 branch sub_p2_256 
-:      035774 sub_p2_256:
-0x7c92 035775 increase -32 ,rega 
-0x7c93 035776 arg mem_p_256 ,regb 
-0x7c94 035777 copy rega ,contw 
-0x7c95 035778 branch bn_sub_256 
-:      035783 bn_submod_256:
-0x7c96 035784 call bn_sub_256 
-0x7c97 035786 branch bn_submod_256_np ,true 
-0x7c98 035789 add contw ,-32 ,rega 
-0x7c99 035790 arg mem_p_256 ,regb 
-0x7c9a 035791 call bn_bigeq_256 
-0x7c9b 035792 nrtn positive 
-0x7c9c 035793 arg mem_p_256 ,regb 
-0x7c9d 035794 add contw ,-32 ,rega 
-0x7c9e 035796 copy rega ,contw 
-0x7c9f 035797 branch bn_sub_256 
-:      035798 bn_submod_256_np:
-0x7ca0 035799 add contw ,-32 ,rega 
-0x7ca1 035800 arg mem_p_256 ,regb 
-0x7ca2 035801 copy rega ,contw 
-0x7ca3 035802 call bn_add_256 
-0x7ca4 035804 rtn true 
-0x7ca5 035805 add contw ,-32 ,rega 
-0x7ca6 035806 arg mem_p_256 ,regb 
-0x7ca7 035807 copy rega ,contw 
-0x7ca8 035808 branch bn_add_256 
-:      035812 bn_sub_256:
-0x7ca9 035813 force 8 ,loopcnt 
-0x7caa 035814 branch bn_sub + 1 
-:      035816 bn_rshift_256:
-0x7cab 035817 force 8 ,loopcnt 
-0x7cac 035818 increase 28 ,rega 
-0x7cad 035819 branch bn_rshift 
-:      035821 bn_lshift_256:
-0x7cae 035822 force 8 ,loopcnt 
-0x7caf 035823 force 0 ,regc 
-0x7cb0 035824 branch bn_lshift_0 
-:      035826 bn_bigeq_256:
-0x7cb1 035827 force 8 ,loopcnt 
-0x7cb2 035828 increase 28 ,rega 
-0x7cb3 035829 increase 28 ,regb 
-0x7cb4 035830 branch bn_bigeq_0 
-:      035833 bn_eq_zero_256:
-0x7cb5 035834 ifetch 8 ,contr 
-0x7cb6 035835 nrtn blank 
-0x7cb7 035836 branch bn_eq_zero 
-:      035841 bn_rshifteven_256:
-0x7cb8 035842 copy rega ,alarm 
-:      035843 bn_rshifteven_256_1:
-0x7cb9 035844 copy alarm ,rega 
-0x7cba 035845 ifetch 1 ,rega 
-0x7cbb 035846 isolate1 0 ,pdata 
-0x7cbc 035847 rtn true 
-0x7cbd 035848 call bn_rshift_256 
-0x7cbe 035849 ifetch 1 ,regb 
-0x7cbf 035850 isolate0 0 ,pdata 
-0x7cc0 035851 branch bn_rshifteven_256_0 ,true 
-0x7cc1 035852 arg mem_p_256 ,rega 
-0x7cc2 035853 copy regb ,contw 
-0x7cc3 035854 call bn_add_256 
-0x7cc4 035855 ifetch 1 ,regb 
-0x7cc5 035856 iadd regc ,pdata 
-0x7cc6 035857 istore 1 ,regb 
-0x7cc7 035858 increase -32 ,regb 
-:      035859 bn_rshifteven_256_0:
-0x7cc8 035860 add regb ,32 ,rega 
-0x7cc9 035861 force 9 ,loopcnt 
-0x7cca 035862 call bn_rshift 
-0x7ccb 035863 branch bn_rshifteven_256_1 
-:      035867 ui_init:
-0x7ccc 035868 call lpm_disable_exen_output 
-0x7ccd 035869 rtn wake 
-0x7cce 035870 call ui_button_init 
-0x7ccf 035871 call ui_timer_init 
-0x7cd0 035872 branch ui_led_init_global 
-:      035874 ui_dispatch:
-0x7cd1 035875 call ui_led_dispatch 
-0x7cd2 035877 branch ui_timer_check 
-:      035879 ui_button_init:
-0x7cd3 035880 fetch 1 ,mem_ui_button_gpio 
-0x7cd4 035881 rtneq ui_button_gpio_disable 
-0x7cd5 035882 iforce temp 
-0x7cd6 035883 call gpio_config_output 
-0x7cd7 035884 fetcht 1 ,mem_ui_button_gpio 
-0x7cd8 035885 call gpio_out_inactive 
-0x7cd9 035886 nop 100 
-0x7cda 035887 fetcht 1 ,mem_ui_button_gpio 
-0x7cdb 035888 call gpio_config_input 
-0x7cdc 035889 branch ui_button_polling 
-:      035893 ui_button_polling:
-0x7cdd 035894 bpatchx patch3e_3 ,mem_patch3e 
-0x7cde 035895 fetch 1 ,mem_ui_button_gpio 
-0x7cdf 035896 rtneq ui_button_gpio_disable 
-0x7ce0 035897 copy pdata ,temp 
-0x7ce1 035898 call gpio_get_bit 
-0x7ce2 035899 nbranch ui_button_up ,true 
-:      035901 ui_button_down:
-0x7ce3 035902 call ui_button_check_long_press 
-0x7ce4 035903 fetch 2 ,mem_ui_state_map 
-0x7ce5 035904 set1 ui_state_btn_down 
-0x7ce6 035905 store 2 ,mem_ui_state_map 
-0x7ce7 035906 fetch 1 ,mem_ui_button_last_state 
-0x7ce8 035907 rtneq ui_button_state_down 
-0x7ce9 035908 jam ui_button_state_down ,mem_ui_button_last_state 
-0x7cea 035910 fetch 1 ,mem_ui_button_timeout 
-0x7ceb 035911 store 1 ,mem_ui_button_timer 
-0x7cec 035912 call lpm_button_get_wake_lock 
-0x7ced 035913 jam bt_evt_button_down ,mem_fifo_temp 
-0x7cee 035914 branch ui_ipc_send_event 
-:      035915 ui_button_up:
-0x7cef 035916 fetch 2 ,mem_ui_state_map 
-0x7cf0 035917 set0 ui_state_btn_down 
-0x7cf1 035918 store 2 ,mem_ui_state_map 
-0x7cf2 035919 fetch 1 ,mem_ui_button_last_state 
-0x7cf3 035920 rtneq ui_button_state_up 
-0x7cf4 035921 jam ui_button_state_up ,mem_ui_button_last_state 
-0x7cf5 035923 jam 0 ,mem_ui_button_timer 
-0x7cf6 035924 call lpm_button_clean_wake_lock 
-0x7cf7 035925 jam bt_evt_button_up ,mem_fifo_temp 
-0x7cf8 035926 branch ui_ipc_send_event 
-:      035928 ui_button_check_long_press:
-0x7cf9 035929 fetch 1 ,mem_ui_button_timer 
-0x7cfa 035930 rtn blank 
-0x7cfb 035931 increase -1 ,pdata 
-0x7cfc 035932 store 1 ,mem_ui_button_timer 
-0x7cfd 035933 nrtn blank 
-0x7cfe 035935 jam bt_evt_button_long_pressed ,mem_fifo_temp 
-0x7cff 035936 branch ui_ipc_send_event 
-:      035938 lpm_button_get_wake_lock:
-0x7d00 035939 arg wake_lock_button ,queue 
-0x7d01 035940 branch lpm_get_wake_lock 
-:      035942 lpm_button_clean_wake_lock:
-0x7d02 035943 arg wake_lock_button ,queue 
-0x7d03 035944 branch lpm_put_wake_lock 
-:      035966 calc_curr_struct_prt:
-0x7d04 035967 fetch 2 ,mem_ui_led_struct_ptr 
-0x7d05 035968 mul32 rega ,led_offset_length ,regb 
-0x7d06 035969 iadd regb ,regb 
-0x7d07 035970 rtn 
-:      035973 ui_led_init_global:
-0x7d08 035974 fetch 1 ,mem_ui_led_struct_num 
-0x7d09 035975 rtn blank 
-0x7d0a 035976 copy pdata ,loopcnt 
-0x7d0b 035977 fetch 2 ,mem_ui_led_struct_ptr 
-0x7d0c 035978 copy pdata ,regb 
-:      035979 ui_led_init_loop:
-0x7d0d 035980 add regb ,led_offset_led_gpio ,regc 
-0x7d0e 035981 ifetcht 1 ,regc 
-0x7d0f 035982 call gpio_config_output 
-0x7d10 035983 call ui_led_off_static 
-0x7d11 035984 increase led_offset_length ,regb 
-0x7d12 035985 loop ui_led_init_loop 
-0x7d13 035986 rtn 
-:      035990 ui_led_on_global:
-0x7d14 035991 call calc_curr_struct_prt 
-0x7d15 035992 setarg ui_led_state_lighting 
-0x7d16 035993 istore 1 ,regb 
-0x7d17 035994 call ui_led_stop_timer 
-0x7d18 035995 branch ui_led_on_static 
-:      035999 ui_led_blink_stop_global:
-:      036000 ui_led_off_global:
-0x7d19 036001 call calc_curr_struct_prt 
-0x7d1a 036002 setarg ui_led_state_darking 
-0x7d1b 036003 istore 1 ,regb 
-0x7d1c 036004 call ui_led_stop_timer 
-0x7d1d 036005 branch ui_led_off_static 
-:      036009 ui_led_blink_start_global:
-0x7d1e 036010 call calc_curr_struct_prt 
-0x7d1f 036011 setarg ui_led_state_blink_start 
-0x7d20 036012 istore 1 ,regb 
-0x7d21 036013 setarg led_infinite_flash_num 
-0x7d22 036014 istore 1 ,contw 
-0x7d23 036015 branch ui_led_off_static 
-:      036020 ui_led_set_style_global:
-0x7d24 036021 call calc_curr_struct_prt 
-0x7d25 036022 arg led_offset_length ,loopcnt 
-0x7d26 036023 copy regc ,contr 
-0x7d27 036024 copy regb ,contw 
-0x7d28 036025 branch memcpy_fast 
-:      036029 ui_led_dispatch:
-0x7d29 036030 fetch 1 ,mem_ui_led_struct_num 
-0x7d2a 036031 rtn blank 
-0x7d2b 036032 arg 0 ,rega 
-:      036033 ui_led_blink_polling:
-0x7d2c 036034 call ui_led_change_style_by_type 
-0x7d2d 036035 increase 1 ,rega 
-0x7d2e 036036 fetch 1 ,mem_ui_led_struct_num 
-0x7d2f 036037 isub rega ,null 
-0x7d30 036038 rtn zero 
-0x7d31 036039 branch ui_led_blink_polling 
-:      036042 ui_led_off_static:
-0x7d32 036043 add regb ,led_offset_led_gpio ,regc 
-0x7d33 036044 ifetcht 1 ,regc 
-0x7d34 036045 branch gpio_out_inactive 
-:      036048 ui_led_on_static:
-0x7d35 036049 add regb ,led_offset_led_gpio ,regc 
-0x7d36 036050 ifetcht 1 ,regc 
-0x7d37 036051 branch gpio_out_active 
-:      036055 ui_led_change_style_by_type:
-0x7d38 036056 add rega ,ui_led_blink ,queue 
-0x7d39 036057 call timer_check 
-0x7d3a 036058 nrtn blank 
-0x7d3b 036060 call calc_curr_struct_prt 
-0x7d3c 036062 ifetch 1 ,regb 
-0x7d3d 036064 beq ui_led_state_lighting ,ui_led_on_static 
-0x7d3e 036065 beq ui_led_state_darking ,ui_led_off_static 
-0x7d3f 036066 beq ui_led_state_blink_stop ,ui_led_off_static 
-0x7d40 036067 beq ui_led_state_blink_darking ,ui_led_blink_state_darking 
-:      036068 ui_led_blink_state_lighting:
-0x7d41 036069 call ui_led_on_static 
-0x7d42 036070 add regb ,led_offset_cb_ledon ,regc 
-0x7d43 036071 call push_stack 
-0x7d44 036072 ifetch 2 ,regc 
-0x7d45 036073 call callback_func 
-0x7d46 036074 call pop_stack 
-0x7d47 036075 setarg ui_led_state_blink_darking 
-0x7d48 036076 istore 1 ,regb 
-0x7d49 036077 add regb ,led_offset_on_time ,regc 
-0x7d4a 036078 ifetch 2 ,regc 
-0x7d4b 036079 branch ui_led_blink_timer_start 
-:      036082 ui_led_blink_state_darking:
-0x7d4c 036083 call ui_led_off_static 
-0x7d4d 036084 add regb ,led_offset_cb_ledoff ,regc 
-0x7d4e 036085 call push_stack 
-0x7d4f 036086 ifetch 2 ,regc 
-0x7d50 036087 call callback_func 
-0x7d51 036088 call pop_stack 
-0x7d52 036090 add regb ,led_offset_blink_count ,regc 
-0x7d53 036091 ifetch 1 ,regc 
-0x7d54 036092 beq led_infinite_flash_num ,ui_led_blink_infinite 
-0x7d55 036093 increase -1 ,pdata 
-0x7d56 036094 istore 1 ,regc 
-0x7d57 036095 branch ui_led_blink_stop_global ,blank 
-:      036096 ui_led_blink_infinite:
-0x7d58 036097 setarg ui_led_state_blink_lighting 
-0x7d59 036098 istore 1 ,regb 
-0x7d5a 036099 add regb ,led_offset_off_time ,regc 
-0x7d5b 036100 ifetch 2 ,regc 
-:      036101 ui_led_blink_timer_start:
-0x7d5c 036102 add rega ,ui_led_blink ,queue 
-0x7d5d 036103 branch timer_init 
-:      036105 ui_led_stop_timer:
-0x7d5e 036106 setarg 0 
-0x7d5f 036107 branch ui_led_blink_timer_start 
-:      036113 ui_timer_timeout:
-0x7d60 036114 setarg 0x1000 
-0x7d61 036115 lshift16 pdata ,pdata 
-0x7d62 036116 iadd regb ,regb 
-0x7d63 036117 rtn 
-:      036119 ui_timer_check:
-0x7d64 036120 bpatchx patch3e_4 ,mem_patch3e 
-0x7d65 036121 arg 0 ,rega 
-0x7d66 036122 fetcht 4 ,mem_ui_timer_last_btclk 
-0x7d67 036123 copy clkn_bt ,regb 
-0x7d68 036124 copy regb ,pdata 
-0x7d69 036125 isub temp ,null 
-0x7d6a 036126 ncall ui_timer_timeout ,positive 
-:      036128 ui_timer_check_loop:
-0x7d6b 036129 copy regb ,pdata 
-0x7d6c 036130 increase 160 ,temp 
-0x7d6d 036131 increase 160 ,temp 
-0x7d6e 036132 isub temp ,null 
-0x7d6f 036133 nbranch ui_timer_check_end ,positive 
-0x7d70 036134 increase 1 ,rega 
-0x7d71 036135 and rega ,0x0f ,pdata 
-0x7d72 036136 nbranch ui_timer_check_loop ,blank 
-0x7d73 036137 arg 0 ,rega 
-0x7d74 036138 call ui_timer_check_send_evt 
-:      036139 ui_timer_init:
-0x7d75 036140 copy clkn_bt ,pdata 
-0x7d76 036141 store 4 ,mem_ui_timer_last_btclk 
-0x7d77 036142 rtn 
-:      036143 ui_timer_check_end:
-0x7d78 036144 bpatchx patch3e_5 ,mem_patch3e 
-0x7d79 036145 copy rega ,pdata 
-0x7d7a 036146 rtn blank 
-0x7d7b 036147 increase -160 ,temp 
-0x7d7c 036148 increase -160 ,temp 
-0x7d7d 036149 set0 28 ,temp 
-0x7d7e 036150 storet 4 ,mem_ui_timer_last_btclk 
-:      036151 ui_timer_check_send_evt:
-0x7d7f 036152 branch app_evt_timer 
-:      036159 ui_ipc_get_lock:
-0x7d80 036160 jam 1 ,mem_ipc_lock_bt 
-:      036161 ui_ipc_get_lock_wait:
-0x7d81 036162 fetch 1 ,mem_ipc_lock_c51 
-0x7d82 036163 nbranch ui_ipc_get_lock_wait ,blank 
-0x7d83 036164 rtn 
-:      036166 ui_ipc_put_lock:
-0x7d84 036167 jam 0 ,mem_ipc_lock_bt 
-0x7d85 036168 rtn 
-:      036172 ui_ipc_send_event:
-0x7d86 036173 bpatchx patch3e_6 ,mem_patch3e 
-0x7d87 036174 call ui_ipc_get_lock 
-0x7d88 036175 copy rega ,pdata 
-0x7d89 036176 store 4 ,mem_ipc_rega_temp 
-0x7d8a 036177 arg mem_ipc_fifo_bt2c51 ,rega 
-0x7d8b 036178 call fifo_in 
-0x7d8c 036179 fetch 4 ,mem_ipc_rega_temp 
-0x7d8d 036180 copy pdata ,rega 
-0x7d8e 036181 branch ui_ipc_put_lock 
-:      036183 ui_ipc_send_cmd:
-0x7d8f 036184 bpatchx patch3e_7 ,mem_patch3e 
-0x7d90 036185 call ui_ipc_get_lock 
-0x7d91 036186 copy rega ,pdata 
-0x7d92 036187 store 4 ,mem_ipc_rega_temp 
-0x7d93 036188 arg mem_ipc_fifo_c512bt ,rega 
-0x7d94 036189 call fifo_in 
-0x7d95 036190 fetch 4 ,mem_ipc_rega_temp 
-0x7d96 036191 copy pdata ,rega 
-0x7d97 036192 branch ui_ipc_put_lock 
-:      036194 ui_ipc_clean_all_fifo:
-0x7d98 036195 setarg 0 
-0x7d99 036196 store util_fifo_len ,mem_ipc_fifo_c512bt 
-0x7d9a 036197 store util_fifo_len ,mem_ipc_fifo_bt2c51 
-0x7d9b 036198 rtn 
-:      036200 check_51cmd:
-0x7d9c 036201 bpatchx patch3f_0 ,mem_patch3f 
-0x7d9d 036202 fetch 1 ,mem_hci_cmd 
-0x7d9e 036203 nrtn blank 
-0x7d9f 036204 arg mem_ipc_fifo_c512bt ,rega 
-0x7da0 036205 call fifo_is_empty 
-0x7da1 036206 rtn blank 
-0x7da2 036207 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
-0x7da3 036208 call check_51cmd_once 
-0x7da4 036209 fetch 1 ,mem_ipc_skip_continue_proc 
-0x7da5 036210 branch check_51cmd ,blank 
-0x7da6 036211 rtn 
-:      036213 check_51cmd_once:
-0x7da7 036214 call ui_ipc_get_lock 
-0x7da8 036215 arg mem_ipc_fifo_c512bt ,rega 
-0x7da9 036216 call fifo_out 
-0x7daa 036217 copy pdata ,temp 
-0x7dab 036218 call ui_ipc_put_lock 
-0x7dac 036219 bpatchx patch3f_1 ,mem_patch3f 
-0x7dad 036220 copy temp ,pdata 
-0x7dae 036221 rtn blank 
-0x7daf 036222 beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
-0x7db0 036223 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
-0x7db1 036224 beq bt_cmd_reconnect ,check_51cmd_reconnect 
-0x7db2 036225 beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
-0x7db3 036226 beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
-0x7db4 036227 beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
-0x7db5 036228 beq bt_cmd_start_inquiry ,check_51cmd_inq 
-0x7db6 036229 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
-0x7db7 036230 beq bt_cmd_start_adv ,check_51cmd_adv 
-0x7db8 036231 beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
-0x7db9 036232 beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
-0x7dba 036233 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
-0x7dbb 036234 beq bt_cmd_led_off ,check_51cmd_led_off 
-0x7dbc 036235 beq bt_cmd_led_on ,check_51cmd_led_on 
-0x7dbd 036236 beq bt_cmd_led_blink ,check_51cmd_led_start_blink 
-0x7dbe 036237 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
-0x7dbf 036238 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
-0x7dc0 036239 beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
-0x7dc1 036240 beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
-0x7dc2 036241 beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
-0x7dc3 036242 beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
-0x7dc4 036244 store 1 ,mem_fifo_temp 
-0x7dc5 036245 bpatchx patch3f_2 ,mem_patch3f 
-0x7dc6 036246 call lmo_fifo_check 
-0x7dc7 036247 nbranch check_51cmd_restore ,blank 
-:      036248 check_51cmd_once_continue:
-0x7dc8 036249 fetch 1 ,mem_fifo_temp 
-0x7dc9 036250 bmark0 mark_context ,check_51cmd_check_idle 
-0x7dca 036251 beq bt_cmd_disconnect ,check_51cmd_disconnect 
-0x7dcb 036252 beq bt_cmd_enter_sniff ,cmd_in_sniff 
-0x7dcc 036253 beq bt_cmd_exit_sniff ,cmd_exit_sniff 
-0x7dcd 036254 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
-0x7dce 036255 beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
-0x7dcf 036256 beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
-0x7dd0 036257 beq bt_cmd_role_switch ,check_51cmd_role_switch 
-0x7dd1 036258 beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
-0x7dd2 036259 beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
-0x7dd3 036260 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
-0x7dd4 036261 beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
-0x7dd5 036262 rtn 
-:      036264 check_51cmd_check_idle:
-0x7dd6 036265 store 1 ,mem_fifo_temp 
-0x7dd7 036266 call context_check_idle 
-0x7dd8 036267 branch check_51cmd_restore ,zero 
-0x7dd9 036268 call context_search_plap 
-0x7dda 036269 nrtn zero 
-:      036270 check_51cmd_restore:
-0x7ddb 036271 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
-0x7ddc 036272 branch ui_ipc_send_cmd 
-:      036277 check_51cmd_start_discovery:
-0x7ddd 036278 fetch 2 ,mem_ui_state_map 
-0x7dde 036279 set1 ui_state_bt_discovery 
-0x7ddf 036280 store 2 ,mem_ui_state_map 
-0x7de0 036281 jam 3 ,mem_scan_mode 
-0x7de1 036282 rtn 
-:      036286 check_51cmd_stop_discovery:
-0x7de2 036287 jam 0 ,mem_hid_handshake_timer_count 
-0x7de3 036288 jam 0 ,mem_scan_mode 
-0x7de4 036289 fetch 2 ,mem_ui_state_map 
-0x7de5 036290 set0 ui_state_bt_discovery 
-0x7de6 036291 store 2 ,mem_ui_state_map 
-0x7de7 036292 rtn 
-:      036296 check_51cmd_reconnect:
-0x7de8 036297 jam hci_cmd_create_conn ,mem_hci_cmd 
-0x7de9 036298 rtn 
-:      036302 check_51cmd_disconnect:
-0x7dea 036303 jam lmp_detach ,mem_lmo_opcode2 
-0x7deb 036304 jam other_end_terminated ,mem_disconn_reason_send 
-0x7dec 036305 rtn 
-:      036309 check_51cmd_enter_sniff_subrating:
-0x7ded 036310 rtn 
-:      036314 check_51cmd_exit_sniff_subrating:
-0x7dee 036315 rtn 
-:      036319 check_51cmd_sniff_test:
-0x7def 036320 rtn 
-:      036324 check_51cmd_pincode:
-0x7df0 036325 jam pincode_state_pincode_ready ,mem_pincode_state 
-0x7df1 036326 branch cmd_pair 
-:      036330 check_51cmd_inq:
-0x7df2 036331 rtn 
-:      036335 check_51cmd_stop_inq:
-0x7df3 036336 rtn 
-:      036340 check_51cmd_adv:
-0x7df4 036341 jam on ,mem_le_adv_enable 
-0x7df5 036342 jam adv_ind ,mem_le_adv_type 
-0x7df6 036343 fetch 2 ,mem_ui_state_map 
-0x7df7 036344 set1 ui_state_ble_adv ,pdata 
-0x7df8 036345 store 2 ,mem_ui_state_map 
-0x7df9 036346 rtn 
-:      036350 check_51cmd_stop_adv:
-0x7dfa 036351 fetch 2 ,mem_ui_state_map 
-0x7dfb 036352 set0 ui_state_ble_adv ,pdata 
-0x7dfc 036353 store 2 ,mem_ui_state_map 
-0x7dfd 036354 jam off ,mem_le_adv_enable 
-0x7dfe 036355 rtn 
-:      036359 check_51cmd_direct_adv:
-0x7dff 036360 jam on ,mem_le_adv_enable 
-0x7e00 036361 jam adv_direct_ind ,mem_le_adv_type 
-0x7e01 036362 fetch 2 ,mem_ui_state_map 
-0x7e02 036363 set1 ui_state_ble_adv ,pdata 
-0x7e03 036364 store 2 ,mem_ui_state_map 
-0x7e04 036365 rtn 
-:      036369 check_51cmd_stop_direct_adv:
-0x7e05 036370 fetch 2 ,mem_ui_state_map 
-0x7e06 036371 set0 ui_state_ble_adv ,pdata 
-0x7e07 036372 store 2 ,mem_ui_state_map 
-0x7e08 036373 jam off ,mem_le_adv_enable 
-0x7e09 036374 rtn 
-:      036378 check_51cmd_le_disconnect:
-0x7e0a 036379 setarg 20 
-0x7e0b 036380 store 2 ,mem_le_superto 
-0x7e0c 036381 store 2 ,mem_le_init_superto 
-0x7e0d 036382 branch le_send_terminate_ind_user_terminated 
-:      036386 check_51cmd_ble_update_connect_param:
-0x7e0e 036387 branch le_l2cap_tx_update_req 
-:      036391 check_51cmd_led_off:
-0x7e0f 036392 arg 0 ,rega 
-0x7e10 036393 branch ui_led_off_global 
-:      036397 check_51cmd_led_on:
-0x7e11 036398 arg 0 ,rega 
-0x7e12 036399 branch ui_led_on_global 
-:      036403 check_51cmd_led_start_blink:
-0x7e13 036404 arg 0 ,rega 
-0x7e14 036405 branch ui_led_blink_start_global 
-:      036409 check_51cmd_le_start_con:
-0x7e15 036410 jam on ,mem_le_scan_enable 
-0x7e16 036411 jam hci_cmd_le_create_conn ,mem_hci_cmd 
-0x7e17 036414 rtn 
-:      036418 check_51cmd_start_scan:
-0x7e18 036419 jam on ,mem_le_scan_enable 
-0x7e19 036420 rtn 
-:      036424 check_51cmd_stop_scan:
-0x7e1a 036425 jam off ,mem_le_scan_enable 
-0x7e1b 036426 jam 0 ,mem_hci_cmd 
-0x7e1c 036427 rtn 
-:      036431 check_51cmd_hibernate:
-0x7e1d 036432 fetch 2 ,mem_cb_before_hibernate 
-0x7e1e 036433 call callback_func 
-0x7e1f 036434 fetch 1 ,mem_ui_button_gpio 
-0x7e20 036435 beq ui_button_gpio_disable ,check_51cmd_hibernate_btn_disabled 
-0x7e21 036436 copy pdata ,temp 
-0x7e22 036437 call gpio_config_input 
-:      036438 check_51cmd_hibernate_btn_disabled:
-0x7e23 036439 call ui_ipc_clean_all_fifo 
-0x7e24 036440 branch lpm_hibernate 
-:      036444 check_51cmd_le_smp_sec_req:
-0x7e25 036445 branch le_send_smp_security_request 
-:      036449 check_51cmd_role_switch:
-0x7e26 036450 jam lmp_slot_offset ,mem_lmo_opcode2 
-0x7e27 036451 set1 mark_switch_initiated ,mark 
-0x7e28 036452 nrtn master 
-0x7e29 036453 jam switch_flag_init ,mem_switch_flag 
-0x7e2a 036454 jam lmp_switch_req ,mem_lmo_opcode2 
-0x7e2b 036455 fetch 1 ,mem_connection_options 
-0x7e2c 036456 set0 connection_switch ,pdata 
-0x7e2d 036457 store 1 ,mem_connection_options 
-0x7e2e 036458 rtn 
-:      036462 check_51cmd_bb_reconn_cancel:
-0x7e2f 036463 force page_length_timer ,queue 
-0x7e30 036464 branch timer_stop 
-:      036468 check_51cmd_dhkey_not_accept:
-0x7e31 036469 call tid_set_reply 
-0x7e32 036470 jam lmp_dhkey_check ,mem_lmi_opcode2 
-0x7e33 036471 branch parse_lmp_dhkey_check_reject 
-:      036474 ui_check_paring_button:
-0x7e34 036475 fetch 1 ,mem_ui_state_map 
-0x7e35 036476 rtnbit0 ui_state_btn_down 
-0x7e36 036477 rtnbit0 ui_state_bt_reconnect 
-0x7e37 036478 branch check_51cmd_bb_reconn_cancel 
-:      036483 queue_init:
-0x7e38 036484 fetch 2 ,mem_queue_ptr 
-0x7e39 036485 add pdata ,queue_offset_curr_num ,contw 
-0x7e3a 036486 setarg 0 
-0x7e3b 036487 istore 3 ,contw 
-0x7e3c 036488 rtn 
-:      036492 queue_push:
-0x7e3d 036493 call disable_user 
-0x7e3e 036494 call queue_full 
-0x7e3f 036495 rtn blank 
-0x7e40 036496 fetch 2 ,mem_queue_ptr 
-0x7e41 036497 add pdata ,queue_offset_curr_num ,regb 
-0x7e42 036498 ifetcht 1 ,regb 
-0x7e43 036499 increase 1 ,temp 
-0x7e44 036500 istoret 1 ,regb 
-0x7e45 036502 ifetcht 1 ,pdata 
-0x7e46 036503 copy temp ,loopcnt 
-0x7e47 036504 add pdata ,queue_offset_write_ptr ,regb 
-0x7e48 036505 ifetch 1 ,regb 
-0x7e49 036506 imul32 temp ,pdata 
-0x7e4a 036507 iadd contr ,contw 
-0x7e4b 036508 copy rega ,contr 
-:      036509 calc_queue_next_ptr:
-0x7e4c 036510 call memcpy 
-0x7e4d 036511 call queue_get_size 
-0x7e4e 036512 pincrease -1 
-0x7e4f 036513 ifetcht 1 ,regb 
-0x7e50 036514 increase 1 ,temp 
-0x7e51 036515 iand temp ,temp 
-0x7e52 036516 istoret 1 ,regb 
-0x7e53 036517 branch enable_user 
-:      036522 queue_pop:
-0x7e54 036523 call disable_user 
-0x7e55 036524 call queue_empty 
-0x7e56 036525 rtn blank 
-0x7e57 036526 fetch 2 ,mem_queue_ptr 
-0x7e58 036527 add pdata ,queue_offset_curr_num ,regb 
-0x7e59 036528 ifetcht 1 ,regb 
-0x7e5a 036529 increase -1 ,temp 
-0x7e5b 036530 istoret 1 ,regb 
-0x7e5c 036531 ifetcht 1 ,pdata 
-0x7e5d 036532 copy temp ,loopcnt 
-0x7e5e 036533 add pdata ,queue_offset_read_ptr ,regb 
-0x7e5f 036534 ifetch 1 ,regb 
-0x7e60 036535 imul32 temp ,pdata 
-0x7e61 036536 iadd contr ,contr 
-0x7e62 036537 increase 1 ,contr 
-0x7e63 036538 copy rega ,contw 
-0x7e64 036539 branch calc_queue_next_ptr 
-:      036543 queue_empty:
-0x7e65 036544 fetch 2 ,mem_queue_ptr 
-0x7e66 036545 add pdata ,queue_offset_curr_num ,contr 
-0x7e67 036546 ifetch 1 ,contr 
-0x7e68 036547 rtn 
-:      036550 queue_full:
-0x7e69 036551 call queue_get_size 
-0x7e6a 036552 ifetcht 1 ,contr 
-0x7e6b 036553 isub temp ,pdata 
-0x7e6c 036554 rtn 
-:      036557 queue_get_size:
-0x7e6d 036558 fetch 2 ,mem_queue_ptr 
-0x7e6e 036559 add pdata ,queue_offset_length ,contr 
-0x7e6f 036560 ifetch 1 ,contr 
-0x7e70 036561 rtn 
-:      036569 right_shift_n:
-0x7e71 036570 sub loopcnt ,0 ,null 
-0x7e72 036571 rtn zero 
-:      036572 right_shift_n_loop:
-0x7e73 036573 rshift pdata ,pdata 
-0x7e74 036574 loop right_shift_n_loop 
-0x7e75 036575 rtn 
-:      036578 left_shift_n:
-0x7e76 036579 force 1 ,pdata 
-0x7e77 036580 sub loopcnt ,0 ,null 
-0x7e78 036581 rtn zero 
-:      036582 left_shift_n_loop:
-0x7e79 036583 lshift pdata ,pdata 
-0x7e7a 036584 loop left_shift_n_loop 
-0x7e7b 036585 rtn 
-:      036586 push_stack:
-0x7e7c 036587 deposit contw 
-0x7e7d 036588 store 2 ,mem_contw 
-0x7e7e 036589 storet 8 ,mem_temp 
-0x7e7f 036590 deposit timeup 
-0x7e80 036591 store 4 ,mem_timeup 
-0x7e81 036592 call push_stack_rega_b_c 
-0x7e82 036593 deposit contr 
-0x7e83 036594 store 2 ,mem_contr 
-0x7e84 036595 rtn 
-:      036597 push_stack_rega_b_c:
-0x7e85 036598 deposit rega 
-0x7e86 036599 store 4 ,mem_rega 
-0x7e87 036600 deposit regb 
-0x7e88 036601 store 4 ,mem_regb 
-0x7e89 036602 deposit regc 
-0x7e8a 036603 store 3 ,mem_regc 
-0x7e8b 036604 rtn 
-:      036606 pop_stack:
-0x7e8c 036607 fetcht 8 ,mem_temp 
-0x7e8d 036608 fetch 4 ,mem_timeup 
-0x7e8e 036609 iforce timeup 
-0x7e8f 036610 call pop_stack_rega_b_c 
-0x7e90 036611 fetch 2 ,mem_contw 
-0x7e91 036612 iforce contw 
-0x7e92 036613 fetch 2 ,mem_contr 
-0x7e93 036614 iforce contr 
-0x7e94 036615 rtn 
-:      036617 pop_stack_rega_b_c:
-0x7e95 036618 fetch 4 ,mem_rega 
-0x7e96 036619 iforce rega 
-0x7e97 036620 fetch 4 ,mem_regb 
-0x7e98 036621 iforce regb 
-0x7e99 036622 fetch 3 ,mem_regc 
-0x7e9a 036623 iforce regc 
-0x7e9b 036624 rtn 
-:      036626 get_contw:
-0x7e9c 036627 fetch 2 ,mem_contw 
-0x7e9d 036628 copy pdata ,contw 
-0x7e9e 036629 rtn 
-:      036630 get_contr:
-0x7e9f 036631 fetch 2 ,mem_contr 
-0x7ea0 036632 copy pdata ,contr 
-0x7ea1 036633 rtn 
-:      036634 store_contw:
-0x7ea2 036635 copy contw ,pdata 
-0x7ea3 036636 store 2 ,mem_contw 
-0x7ea4 036637 rtn 
-:      036638 store_contr:
-0x7ea5 036639 copy contr ,pdata 
-0x7ea6 036640 store 2 ,mem_contr 
-0x7ea7 036641 rtn 
-:      036645 save_cont_pointers:
-0x7ea8 036646 copy contw ,pdata 
-0x7ea9 036647 store 2 ,mem_hold_contw 
-0x7eaa 036648 copy contr ,pdata 
-0x7eab 036649 store 2 ,mem_hold_contr 
-0x7eac 036650 rtn 
-:      036651 load_cont_pointers:
-0x7ead 036652 fetch 2 ,mem_hold_contw 
-0x7eae 036653 copy pdata ,contw 
-0x7eaf 036654 fetch 2 ,mem_hold_contr 
-0x7eb0 036655 copy pdata ,contr 
-0x7eb1 036656 rtn 
-:      036658 memcpy96:
-0x7eb2 036659 call memcpy32 
-:      036660 memcpy64:
-0x7eb3 036661 call memcpy32 
-0x7eb4 036662 branch memcpy32 
-:      036663 memcpy12:
-0x7eb5 036664 call memcpy8 
-:      036665 memcpy4:
-0x7eb6 036666 ifetch 4 ,contr 
-0x7eb7 036667 istore 4 ,contw 
-0x7eb8 036668 rtn 
-:      036669 memcpy8:
-0x7eb9 036670 ifetch 8 ,contr 
-0x7eba 036671 istore 8 ,contw 
-0x7ebb 036672 rtn 
-:      036674 memcpy48:
-0x7ebc 036675 call memcpy16 
-:      036676 memcpy32:
-0x7ebd 036677 call memcpy8 
-:      036678 memcpy24:
-0x7ebe 036679 call memcpy8 
-:      036680 memcpy16:
-0x7ebf 036681 call memcpy8 
-0x7ec0 036682 branch memcpy8 
-:      036686 delay_10ms:
-0x7ec1 036687 arg 10 ,loopcnt 
-:      036688 delay_ms_wait:
-0x7ec2 036689 nop 12000 
-0x7ec3 036690 loop delay_ms_wait 
-0x7ec4 036691 rtn 
-:      036693 bn_zero:
-0x7ec5 036694 force 3 ,loopcnt 
-:      036695 memset0:
-0x7ec6 036696 force 0 ,pdata 
-:      036697 memset8:
-0x7ec7 036698 istore 8 ,contw 
-0x7ec8 036699 loop memset8 
-0x7ec9 036700 rtn 
-:      036702 memset0_8:
-0x7eca 036703 force 0 ,pdata 
-0x7ecb 036704 istore 8 ,contw 
-0x7ecc 036705 rtn 
-:      036706 memset0_4:
-0x7ecd 036707 force 0 ,pdata 
-0x7ece 036708 istore 4 ,contw 
-0x7ecf 036709 rtn 
-:      036711 clear_mem_256:
-0x7ed0 036712 force 4 ,loopcnt 
-0x7ed1 036713 branch memset0 
-:      036714 clear_mem_512:
-0x7ed2 036715 force 8 ,loopcnt 
-0x7ed3 036716 branch memset0 
-:      036718 clear_mem:
-0x7ed4 036719 deposit loopcnt 
-0x7ed5 036720 rtn blank 
-0x7ed6 036721 setarg 0 
-:      036722 clear_mem_loop:
-0x7ed7 036723 istore 1 ,contw 
-0x7ed8 036724 loop clear_mem_loop 
-0x7ed9 036725 rtn 
-:      036728 clear_temp_block:
-0x7eda 036729 arg 32 ,loopcnt 
-0x7edb 036730 arg mem_temp_block0 ,contw 
-0x7edc 036731 branch clear_mem 
-:      036733 xor_loop:
-0x7edd 036734 ifetch 4 ,regc 
-0x7ede 036735 ifetcht 4 ,rega 
-0x7edf 036736 ixor temp ,pdata 
-0x7ee0 036737 istore 4 ,contw 
-0x7ee1 036738 increase 4 ,rega 
-0x7ee2 036739 increase 4 ,regc 
-0x7ee3 036740 loop xor_loop 
-0x7ee4 036741 rtn 
-:      036745 inverse_data:
-0x7ee5 036746 bpatchx patch3f_3 ,mem_patch3f 
-0x7ee6 036747 copy loopcnt ,pdata 
-0x7ee7 036748 sub pdata ,1 ,null 
-0x7ee8 036749 rtn positive 
-0x7ee9 036750 iadd rega ,regb 
-0x7eea 036751 increase -1 ,regb 
-0x7eeb 036752 rshift loopcnt ,loopcnt 
-:      036753 inverse_loop:
-0x7eec 036754 ifetcht 1 ,rega 
-0x7eed 036755 ifetch 1 ,regb 
-0x7eee 036756 istore 1 ,rega 
-0x7eef 036757 istoret 1 ,regb 
-0x7ef0 036758 increase -1 ,regb 
-0x7ef1 036759 increase 1 ,rega 
-0x7ef2 036760 loop inverse_loop 
-0x7ef3 036761 rtn 
-:      036764 memcpy_fast:
-0x7ef4 036765 deposit loopcnt 
-0x7ef5 036766 rtn blank 
-:      036767 memcpy_fast_loop:
-0x7ef6 036768 increase -8 ,loopcnt 
-0x7ef7 036769 call memcpy8 ,positive 
-0x7ef8 036770 rtn zero 
-0x7ef9 036771 branch memcpy_fast_loop ,positive 
-0x7efa 036772 increase 8 ,loopcnt 
-:      036773 memcpy_fast_loop_four:
-0x7efb 036774 increase -4 ,loopcnt 
-0x7efc 036775 call memcpy4 ,positive 
-0x7efd 036776 rtn zero 
-0x7efe 036777 branch memcpy_fast_loop_four ,positive 
-0x7eff 036778 increase 4 ,loopcnt 
-0x7f00 036779 branch memcpy 
-:      036781 memcpy:
-0x7f01 036782 deposit loopcnt 
-0x7f02 036783 rtn blank 
-:      036784 memcpy_loop:
-0x7f03 036785 ifetch 1 ,contr 
-0x7f04 036786 istore 1 ,contw 
-0x7f05 036787 loop memcpy_loop 
-0x7f06 036788 rtn 
-:      036790 timer_stop:
-0x7f07 036791 setarg 0 
-:      036792 timer_init:
-0x7f08 036793 rshift clkn_bt ,temp 
-0x7f09 036794 storet 4 ,mem_last_clkn 
-0x7f0a 036795 arg mem_timers ,contw 
-0x7f0b 036796 iforce temp 
-0x7f0c 036797 lshift queue ,pdata 
-0x7f0d 036798 iadd contw ,contw 
-0x7f0e 036799 istoret 2 ,contw 
-0x7f0f 036800 bpatchx patch3f_4 ,mem_patch3f 
-0x7f10 036801 rtn 
-:      036803 timer_check_timeout:
-0x7f11 036804 arg 0x800 ,timeup 
-0x7f12 036805 lshift16 timeup ,timeup 
-0x7f13 036806 iadd timeup ,pdata 
-0x7f14 036807 rtn 
-:      036810 timer_reinit:
-0x7f15 036811 arg 0 ,queue 
-:      036812 timer_check:
-0x7f16 036813 bpatchx patch3f_5 ,mem_patch3f 
-0x7f17 036814 fetcht 4 ,mem_last_clkn 
-0x7f18 036815 rshift clkn_bt ,pdata 
-0x7f19 036816 store 4 ,mem_last_clkn 
-0x7f1a 036817 isub temp ,null 
-0x7f1b 036818 ncall timer_check_timeout ,positive 
-0x7f1c 036819 isub temp ,timeup 
-0x7f1d 036820 copy timeup ,temp 
-0x7f1e 036821 arg mem_timers ,contr 
-0x7f1f 036822 copy contr ,contw 
-0x7f20 036823 arg 16 ,loopcnt 
-:      036824 timer_loop:
-0x7f21 036825 ifetch 2 ,contr 
-0x7f22 036826 isub temp ,pdata 
-0x7f23 036827 branch timer_counting ,positive 
-0x7f24 036828 force 0 ,pdata 
-:      036829 timer_counting:
-0x7f25 036830 istore 2 ,contw 
-0x7f26 036831 loop timer_loop 
-0x7f27 036832 arg mem_timers ,contr 
-0x7f28 036833 lshift queue ,pdata 
-0x7f29 036834 iadd contr ,contr 
-0x7f2a 036835 ifetch 2 ,contr 
-0x7f2b 036836 rtn 
-:      036841 clk_add:
-0x7f2c 036842 iadd temp ,temp 
-0x7f2d 036843 copy temp ,loopcnt 
-0x7f2e 036844 setarg 3750 
-0x7f2f 036845 isub loopcnt ,pdata 
-0x7f30 036846 rtn positive 
-0x7f31 036847 sub pdata ,0 ,pdata 
-0x7f32 036848 rshift16 temp ,temp 
-0x7f33 036849 increase 1 ,temp 
-0x7f34 036850 lshift16 temp ,temp 
-0x7f35 036851 ior temp ,temp 
-0x7f36 036852 rtn 
-:      036854 clk_diff_rt:
-0x7f37 036855 call clk_diff 
-0x7f38 036856 branch clk2rt 
-:      036859 clk_diff:
-0x7f39 036860 disable user 
-0x7f3a 036861 isub temp ,pdata 
-0x7f3b 036862 branch clk_diff_pos ,positive 
-0x7f3c 036863 enable user 
-0x7f3d 036864 sub pdata ,0 ,pdata 
-:      036865 clk_diff_pos:
-0x7f3e 036866 rtnbit0 15 
-0x7f3f 036867 arg -61786 ,temp 
-0x7f40 036868 iadd temp ,pdata 
-0x7f41 036869 set0 64 ,pdata 
-0x7f42 036870 rtn 
-:      036872 clk2rt:
-0x7f43 036873 iforce contr 
-0x7f44 036874 rshift16 pdata ,pdata 
-0x7f45 036875 arg 3750 ,temp 
-0x7f46 036876 imul32 temp ,pdata 
-0x7f47 036877 iadd contr ,pdata 
-0x7f48 036878 rtn 
-:      036881 clk2lpo:
-0x7f49 036882 lshift8 pdata ,pdata 
-0x7f4a 036883 lshift4 pdata ,pdata 
-0x7f4b 036884 fetcht 3 ,mem_clks_per_lpo 
-0x7f4c 036885 idiv temp 
-0x7f4d 036886 call wait_div_end 
-0x7f4e 036887 quotient temp 
-0x7f4f 036888 rtn 
-:      036891 clk2bt:
-0x7f50 036892 arg 3750 ,temp 
-0x7f51 036893 idiv temp 
-0x7f52 036894 call wait_div_end 
-0x7f53 036895 quotient pdata 
-0x7f54 036896 lshift16 pdata ,pdata 
-0x7f55 036897 remainder temp 
-0x7f56 036898 ior temp ,temp 
-0x7f57 036899 rtn 
-:      036906 string2dec_from_uart:
-0x7f58 036907 arg 0 ,temp 
-:      036908 string2dec_from_uart_done:
-0x7f59 036909 copy temp ,regc 
-0x7f5a 036910 ifetch 1 ,contru 
-0x7f5b 036911 call uchar2dialog 
-0x7f5c 036912 copy regc ,temp 
-0x7f5d 036913 call swap 
-0x7f5e 036914 arg 10 ,regb 
-0x7f5f 036915 imul32 regb ,pdata 
-0x7f60 036916 iadd temp ,pdata 
-0x7f61 036917 copy pdata ,temp 
-0x7f62 036918 loop string2dec_from_uart_done 
-0x7f63 036919 rtn 
-:      036923 uchar2dialog:
-0x7f64 036924 arg 0x3a ,temp 
-0x7f65 036925 isub temp ,null 
-0x7f66 036926 nbranch uchar2dialog_number ,positive 
-0x7f67 036927 arg 0x61 ,temp 
-0x7f68 036928 isub temp ,null 
-0x7f69 036929 branch uchar2dialog_a2f ,positive 
-0x7f6a 036930 arg 0x37 ,temp 
-0x7f6b 036931 isub temp ,pdata 
-0x7f6c 036932 rtn 
-:      036933 uchar2dialog_number:
-0x7f6d 036934 arg 0x30 ,temp 
-0x7f6e 036935 isub temp ,pdata 
-0x7f6f 036936 rtn 
-:      036937 uchar2dialog_a2f:
-0x7f70 036938 arg 0x57 ,temp 
-0x7f71 036939 isub temp ,pdata 
-0x7f72 036940 rtn 
-:      036942 pn9:
-0x7f73 036943 copy temp ,alarm 
-0x7f74 036944 setarg 0x1ff 
-0x7f75 036945 force 0 ,regb 
-:      036946 pn9_loop:
-0x7f76 036947 rshift3 pdata ,rega 
-0x7f77 036948 rshift rega ,rega 
-0x7f78 036949 ixor rega ,rega 
-0x7f79 036950 isolate1 0 ,rega 
-0x7f7a 036951 setflag true ,9 ,pdata 
-0x7f7b 036952 rshift temp ,temp 
-0x7f7c 036953 isolate1 0 ,pdata 
-0x7f7d 036954 setflag true ,7 ,temp 
-0x7f7e 036955 rshift pdata ,pdata 
-0x7f7f 036956 increase 1 ,regb 
-0x7f80 036957 compare 0 ,regb ,0x7 
-0x7f81 036958 nbranch pn9_loop ,true 
-0x7f82 036959 istoret 1 ,contw 
-0x7f83 036960 loop pn9_loop 
-0x7f84 036961 copy alarm ,temp 
-0x7f85 036962 rtn 
-:      036965 wait_div_end:
-0x7f86 036966 rtn modone 
-0x7f87 036967 branch wait_div_end 
-:      036977 compare_loop:
-:      036978 string_compare:
-0x7f88 036979 ifetch 1 ,rega 
-0x7f89 036980 ifetcht 1 ,regb 
-0x7f8a 036981 isub temp ,null 
-0x7f8b 036982 nrtn zero 
-0x7f8c 036983 increase 1 ,rega 
-0x7f8d 036984 increase 1 ,regb 
-0x7f8e 036985 loop string_compare 
-0x7f8f 036986 force 0 ,null 
-0x7f90 036987 rtn 
-:      036990 ceiling:
-0x7f91 036991 isub temp ,null 
-0x7f92 036992 nrtn positive 
-0x7f93 036993 deposit temp 
-0x7f94 036994 rtn 
-:      036996 swap:
-0x7f95 036997 iadd temp ,pdata 
-0x7f96 036998 isub temp ,temp 
-0x7f97 036999 isub temp ,pdata 
-0x7f98 037000 rtn 
-:      037002 clean_mem:
-0x7f99 037003 arg 0x200 ,loopcnt 
-0x7f9a 037004 arg 0x4000 ,contw 
-0x7f9b 037005 branch memset0 
-:      037008 callback_func:
-0x7f9c 037009 rtn blank 
-0x7f9d 037010 copy pdata ,pc 
-:      037013 wait_uarttx:
-0x7f9e 037014 hfetch 2 ,core_uart_txitems 
-0x7f9f 037015 nbranch wait_uarttx ,blank 
-0x7fa0 037016 rtn 
-:      037018 ice_break:
-0x7fa1 037019 jam 0x1 ,core_ice_ctrl 
-0x7fa2 037020 rtn 
-:      037022 ice_setbp:
-0x7fa3 037023 hstore 2 ,core_ice_break0 
-0x7fa4 037024 hfetch 1 ,core_ice_ctrl 
-0x7fa5 037025 set1 4 ,pdata 
-0x7fa6 037026 hstore 1 ,core_ice_ctrl 
-0x7fa7 037027 rtn 
-:      037028 ice_setbp2:
-0x7fa8 037029 hstore 2 ,core_ice_break1 
-0x7fa9 037030 hfetch 1 ,core_ice_ctrl 
-0x7faa 037031 set1 6 ,pdata 
-0x7fab 037032 hstore 1 ,core_ice_ctrl 
-0x7fac 037033 rtn 
-:      037035 ice_set_write_bp:
-0x7fad 037036 hstore 2 ,core_ice_break0 
-0x7fae 037037 jam 0x30 ,core_ice_ctrl 
-0x7faf 037038 rtn 
-:      037042 test_enable_white:
-0x7fb0 037043 hfetch 1 ,core_config 
-0x7fb1 037044 set0 whiteoff_bit ,pdata 
-0x7fb2 037045 hstore 1 ,core_config 
-0x7fb3 037046 rtn 
-:      037048 check_uart_tx_buff:
-0x7fb4 037049 hfetch 2 ,core_uart_txitems 
-0x7fb5 037050 arg uart_air_control_threshold ,temp 
-:      037051 pdata_sub_temp:
-0x7fb6 037052 isub temp ,null 
-0x7fb7 037053 rtn 
-:      037059 fifo_in:
-0x7fb8 037060 bpatchx patch3f_6 ,mem_patch3f 
-0x7fb9 037061 ifetcht util_fifo_len ,rega 
-0x7fba 037062 and temp ,0xff ,pdata 
-0x7fbb 037063 nbranch fifo_in_push ,blank 
-0x7fbc 037064 rshift8 temp ,pdata 
-0x7fbd 037065 istore util_fifo_len ,rega 
-:      037066 fifo_in_push:
-0x7fbe 037067 increase util_fifo_len + util_fifo_offset ,rega 
-0x7fbf 037068 ifetch 1 ,rega 
-0x7fc0 037069 nbranch assert ,blank 
-0x7fc1 037070 fetch 1 ,mem_fifo_temp 
-0x7fc2 037071 istore 1 ,rega 
-0x7fc3 037072 rtn 
-:      037077 fifo_out:
-0x7fc4 037078 bpatchx patch3f_7 ,mem_patch3f 
-0x7fc5 037079 arg util_fifo_len ,loopcnt 
-0x7fc6 037080 ifetch util_fifo_len ,rega 
-0x7fc7 037081 rtn blank 
-:      037082 fifo_out_loop:
-0x7fc8 037083 ifetch 1 ,rega 
-0x7fc9 037084 nbranch fifo_out_end ,blank 
-0x7fca 037085 increase 1 ,rega 
-0x7fcb 037086 loop fifo_out_loop 
-0x7fcc 037087 branch assert 
-:      037088 fifo_out_end:
-0x7fcd 037089 arg 0 ,temp 
-0x7fce 037090 istoret 1 ,rega 
-0x7fcf 037091 rtn 
-:      037096 fifo_is_empty:
-0x7fd0 037097 ifetch util_fifo_len ,rega 
-0x7fd1 037098 rtn 
-:      037103 fifo_is_full:
-0x7fd2 037104 ifetch 1 ,rega 
-0x7fd3 037105 rtn 
-:      037108 fifo_is_near_full:
-0x7fd4 037109 ifetch 2 ,rega 
-0x7fd5 037110 rtn 
-:      037114 fifo_content_count:
-0x7fd6 037115 arg 0 ,temp 
-:      037116 fifo_content_count_loop:
-0x7fd7 037117 fetch 1 ,contr 
-0x7fd8 037118 loop fifo_content_count_loop ,blank 
-0x7fd9 037119 increase 1 ,temp 
-0x7fda 037120 loop fifo_content_count_loop 
-0x7fdb 037121 copy temp ,pdata 
-0x7fdc 037122 rtn 
-:      037124 not_greater_than:
-0x7fdd 037125 isub temp ,null 
-0x7fde 037126 nrtn positive 
-0x7fdf 037127 copy temp ,pdata 
-0x7fe0 037128 rtn 
-:      037131 disable_positive:
-0x7fe1 037132 force -1 ,null 
-0x7fe2 037133 rtn 
-:      037134 enable_positive:
-:      037135 disable_zero:
-0x7fe3 037136 force 1 ,null 
-0x7fe4 037137 rtn 
-:      037138 enable_zero:
-0x7fe5 037139 force 0 ,null 
-0x7fe6 037140 rtn 
-:      037142 enable_user:
-0x7fe7 037143 enable user 
-0x7fe8 037144 rtn 
-:      037146 disable_user:
-0x7fe9 037147 disable user 
-0x7fea 037148 rtn 
-:      037150 enable_user2:
-0x7feb 037151 enable user2 
-0x7fec 037152 rtn 
-:      037154 disable_user2:
-0x7fed 037155 disable user2 
-0x7fee 037156 rtn 
-:      037158 disable_blank:
-0x7fef 037159 setarg 1 
-0x7ff0 037160 rtn 
-:      037162 enable_blank:
-0x7ff1 037163 setarg 0 
-0x7ff2 037164 rtn 
-:      037167 reverse_byte:
-0x7ff3 037168 copy loopcnt ,pdata 
-0x7ff4 037169 rtn blank 
-0x7ff5 037170 copy contr ,pdata 
-0x7ff6 037171 iadd loopcnt ,pdata 
-0x7ff7 037172 increase -1 ,pdata 
-0x7ff8 037173 copy pdata ,contr 
-:      037174 reverse_loop:
-0x7ff9 037175 ifetch 1 ,contr 
-0x7ffa 037176 increase -2 ,contr 
-0x7ffb 037177 istore 1 ,contw 
-0x7ffc 037178 loop reverse_loop 
-0x7ffd 037179 rtn 
+:      003214 start:
+0x2000 003215 call lpmstate 
+:      003217 soft_reset:
+0x2001 003218 bpatch patch00_0 ,mem_patch00 
+0x2002 003219 clear_stack 
+0x2003 003220 call spi_ncs_gpio_init 
+0x2004 003221 call initialize_radio 
+0x2005 003222 call iicd_init_12m 
+0x2006 003223 call init_param 
+0x2007 003224 call l2cap_init 
+0x2008 003225 bpatch patch00_1 ,mem_patch00 
+0x2009 003226 call rfcomm_init 
+0x200a 003227 call init_lmp 
+0x200b 003228 call ui_init 
+0x200c 003229 call app_init 
+0x200d 003230 ncall load_chip_option ,wake 
+0x200e 003231 bpatch patch00_2 ,mem_patch00 
+0x200f 003232 call app_lpm_init ,wake 
+0x2010 003233 call publickey_init 
+0x2011 003234 call lpm_recover_clk ,wake 
+:      003235 main_loop:
+0x2012 003236 bpatch patch00_3 ,mem_patch00 
+0x2013 003237 call sp_calc_sequence 
+0x2014 003238 call sp_calc_sequence_256 
+0x2015 003239 call sp_calc_sequence_256_check 
+0x2016 003240 call le_dispatch 
+0x2017 003241 bpatch patch00_4 ,mem_patch00 
+0x2018 003242 call idle_dispatch 
+0x2019 003243 call app_process_idle 
+0x201a 003244 call inquiry_dispatch 
+0x201b 003245 call inquiry_scan_dispatch 
+0x201c 003246 call page_scan_dispatch 
+0x201d 003247 call connection_dispatch 
+0x201e 003248 call lpm_dispatch 
+0x201f 003249 call g24_dispatch 
+0x2020 003250 branch main_loop 
+:      003252 connection_dispatch:
+0x2021 003253 call connection_incontext 
+0x2022 003254 rtnmark0 mark_context 
+0x2023 003255 set0 mark_context ,mark 
+0x2024 003256 call context_save 
+0x2025 003257 branch le_disable 
+:      003259 connection_incontext:
+0x2026 003260 bpatch patch00_5 ,mem_patch00 
+0x2027 003261 call context_search_insniff 
+0x2028 003262 nbranch connection_nosniff ,zero 
+0x2029 003263 call context_load 
+0x202a 003264 add rega ,coffset_mode ,contr 
+0x202b 003265 ifetch 1 ,contr 
+0x202c 003266 bbit1 mode_le ,le_conn_dispatch 
+0x202d 003267 bbit1 mode_master ,master_dispatch 
+0x202e 003268 branch slave_dispatch 
+:      003269 connection_nosniff:
+0x202f 003270 call context_get_next 
+0x2030 003271 copy loopcnt ,null 
+0x2031 003272 rtn zero 
+0x2032 003273 call context_load 
+0x2033 003274 fetch 1 ,mem_state 
+0x2034 003275 bbit1 state_inpage ,master_page 
+0x2035 003276 fetch 1 ,mem_mode 
+0x2036 003277 bbit1 mode_master ,master_dispatch 
+0x2037 003278 branch slave_dispatch 
+:      003286 idle_dispatch:
+0x2038 003287 fetch 1 ,mem_hci_cmd 
+0x2039 003288 rtn blank 
+0x203a 003289 beq hci_cmd_inquiry ,idle_inquiry 
+0x203b 003290 beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
+0x203c 003291 beq hci_cmd_remote_name_req ,idle_remote_name_req 
+0x203d 003292 beq hci_cmd_create_conn ,idle_create_conn 
+0x203e 003293 beq hci_cmd_le_create_conn ,idle_le_create_conn 
+0x203f 003294 call context_search_conn_handle 
+0x2040 003295 rtn zero 
+0x2041 003296 call context_search_plap 
+0x2042 003297 rtn zero 
+:      003298 idle_exit:
+0x2043 003299 jam 0 ,mem_hci_cmd 
+0x2044 003300 rtn 
+:      003302 idle_le_create_conn:
+0x2045 003303 jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
+0x2046 003304 jam 0 ,mem_hci_cmd 
+0x2047 003305 rtn 
+:      003307 idle_inquiry:
+0x2048 003308 set1 mark_inquiry_on ,mark 
+0x2049 003309 set0 mark_inquiry_trainb ,mark 
+0x204a 003310 jam param_ninquiry ,mem_ninqy_index 
+0x204b 003311 jam 31 ,mem_nfreq_index_inq 
+0x204c 003312 branch idle_exit 
+:      003314 idle_inquiry_cancel:
+0x204d 003315 set0 mark_inquiry_on ,mark 
+0x204e 003316 force 0 ,stop_watch 
+0x204f 003317 branch idle_exit 
+:      003319 idle_remote_name_req:
+0x2050 003320 call context_search_plap 
+0x2051 003321 rtn zero 
+0x2052 003322 force lmp_name_req ,temp 
+0x2053 003323 jam 5 ,mem_nameres_cnt 
+0x2054 003324 branch idle_start_page 
+:      003326 idle_create_conn:
+0x2055 003327 bpatch patch00_6 ,mem_patch00 
+:      003328 idle_create_conn_device:
+0x2056 003329 fetch 6 ,mem_hci_plap 
+0x2057 003330 branch idle_exit ,blank 
+0x2058 003331 jam reconnect_hid ,memui_reconnect_mode 
+0x2059 003333 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x205a 003334 branch idle_create_conn_cont 
+:      003336 idle_create_conn_cont:
+0x205b 003337 force lmp_version_req ,temp 
+:      003338 idle_start_page:
+0x205c 003339 bpatch patch00_7 ,mem_patch00 
+0x205d 003340 fetch 1 ,mem_page_mode 
+0x205e 003341 branch idle_page_mode_r0 ,blank 
+0x205f 003342 lshift3 pdata ,pdata 
+0x2060 003343 lshift4 pdata ,pdata 
+0x2061 003344 increase -1 ,pdata 
+:      003345 idle_page_mode_r0:
+0x2062 003346 store 1 ,mem_npage 
+0x2063 003347 store 1 ,mem_npage_index 
+0x2064 003348 jam 31 ,mem_nfreq_index_page 
+0x2065 003349 set0 mark_page_trainb ,mark 
+0x2066 003350 call context_new 
+0x2067 003351 nbranch idle_page_fail ,zero 
+0x2068 003352 call get_free_amaddr 
+0x2069 003353 store 1 ,mem_amaddr 
+0x206a 003354 storet 1 ,mem_lmo_opcode2 
+0x206b 003355 fetch 6 ,mem_hci_plap 
+0x206c 003356 store 6 ,mem_plap 
+0x206d 003357 bpatch patch01_0 ,mem_patch01 
+0x206e 003358 call timer_reinit 
+0x206f 003359 force 0 ,pdata 
+0x2070 003360 compare lmp_name_req ,temp ,0xff 
+0x2071 003361 nsetflag true ,state_init_seq ,pdata 
+0x2072 003362 set1 state_inpage ,pdata 
+0x2073 003363 store 1 ,mem_state 
+0x2074 003364 jam bt_evt_reconn_started ,mem_fifo_temp 
+0x2075 003365 call ui_ipc_send_event 
+0x2076 003366 force 0 ,pdata 
+0x2077 003367 setflag true ,smap_name_req ,pdata 
+0x2078 003368 store 1 ,mem_state_map 
+0x2079 003369 setarg 0 
+0x207a 003370 set1 mode_master ,pdata 
+0x207b 003371 store 1 ,mem_mode 
+0x207c 003372 enable master 
+0x207d 003373 call context_save 
+0x207e 003374 disable master 
+0x207f 003375 force page_length_timer ,queue 
+0x2080 003376 fetch 2 ,mem_page_to 
+0x2081 003377 call timer_init 
+0x2082 003378 branch idle_exit 
+:      003379 idle_page_fail:
+0x2083 003380 bpatch patch01_1 ,mem_patch01 
+0x2084 003381 fetch 6 ,mem_hci_plap 
+0x2085 003382 store 6 ,mem_plap 
+0x2086 003383 compare lmp_name_req ,temp ,0xff 
+0x2087 003384 branch idle_name_fail ,true 
+0x2088 003385 branch idle_exit 
+:      003386 idle_name_fail:
+0x2089 003387 arg mem_tmp_buffer ,contw 
+0x208a 003388 arg 8 ,loopcnt 
+0x208b 003389 call memset0 
+0x208c 003390 jam bt_evt_reconn_failed ,mem_fifo_temp 
+0x208d 003391 call ui_ipc_send_event 
+0x208e 003392 branch idle_exit 
+:      003399 inquiry_dispatch:
+0x208f 003400 rtnmark0 mark_inquiry_on 
+0x2090 003401 force inquiry_length_timer ,queue 
+0x2091 003402 call timer_check 
+0x2092 003403 nsetflag blank ,mark_inquiry_on ,mark 
+0x2093 003404 nbranch inquiry_start ,blank 
+0x2094 003405 rtn 
+:      003409 inquiry_start:
+0x2095 003410 bpatch patch01_2 ,mem_patch01 
+0x2096 003411 fetcht 2 ,mem_inq_window 
+0x2097 003412 force 4 ,queue 
+0x2098 003413 call sniff_check_window 
+0x2099 003414 rtn user 
+0x209a 003415 call afh_clear 
+0x209b 003416 force 0 ,freq_mode 
+:      003417 inquiry_restart:
+0x209c 003418 rtn timeout 
+0x209d 003419 set0 mark_fhs_already_good ,mark 
+0x209e 003420 set0 mark_fhs_eir ,mark 
+:      003421 inquiry_rx_restart:
+0x209f 003422 add clkn_bt ,1 ,bt_clk 
+0x20a0 003423 isolate1 mark_inquiry_trainb ,mark 
+0x20a1 003424 setflag true ,2 ,freq_mode 
+0x20a2 003425 compare 0x00 ,bt_clk ,0x02 
+0x20a3 003426 nbranch inquiry_receive ,true 
+:      003428 inquiry_transmit:
+0x20a4 003429 bpatch patch01_3 ,mem_patch01 
+0x20a5 003430 fetch 1 ,mem_inquiry_transmit 
+0x20a6 003431 increase 1 ,pdata 
+0x20a7 003432 store 1 ,mem_inquiry_transmit 
+0x20a8 003433 call fetch_giac 
+0x20a9 003434 call tx_radio_freq 
+0x20aa 003435 call fetch_diac 
+0x20ab 003436 call start_transmitter 
+0x20ac 003437 call start_tx_native 
+0x20ad 003438 call send_access_word 
+0x20ae 003439 call end_of_packet 
+0x20af 003440 call inquiry_check_train 
+0x20b0 003441 branch inquiry_restart 
+:      003443 inquiry_check_train:
+0x20b1 003444 bpatch patch01_4 ,mem_patch01 
+0x20b2 003445 fetch 1 ,mem_nfreq_index_inq 
+0x20b3 003446 increase -1 ,pdata 
+0x20b4 003447 store 1 ,mem_nfreq_index_inq 
+0x20b5 003448 rtn positive 
+0x20b6 003449 jam 31 ,mem_nfreq_index_inq 
+0x20b7 003450 fetch 1 ,mem_ninqy_index 
+0x20b8 003451 increase -1 ,pdata 
+0x20b9 003452 store 1 ,mem_ninqy_index 
+0x20ba 003453 rtn positive 
+0x20bb 003454 setflip mark_inquiry_trainb ,mark 
+0x20bc 003455 jam param_ninquiry ,mem_ninqy_index 
+0x20bd 003456 rtn 
+:      003458 inquiry_receive:
+0x20be 003459 bpatch patch01_5 ,mem_patch01 
+0x20bf 003460 call fetch_giac 
+0x20c0 003461 call rx_radio_freq 
+0x20c1 003462 call fetch_diac 
+0x20c2 003463 call start_rx_native 
+0x20c3 003464 call start_receiver 
+0x20c4 003465 call wait_access_clkn_rt 
+0x20c5 003466 branch inquiry_sync ,sync 
+0x20c6 003467 call inquiry_check_train 
+0x20c7 003468 branch inquiry_rx_restart 
+:      003469 inquiry_sync:
+0x20c8 003470 bpatch patch01_6 ,mem_patch01 
+0x20c9 003471 call save_rssi 
+0x20ca 003472 call scan_mode_whiten 
+0x20cb 003473 call receive_packet_whitened 
+0x20cc 003474 set0 mark_rxbuf_inuse ,mark 
+0x20cd 003475 rtnmark0 mark_fhs_already_good 
+:      003476 inquiry_receive_rtn:
+0x20ce 003477 bpatch patch01_7 ,mem_patch01 
+:      003478 inquiry_receive_eir_rtn:
+0x20cf 003479 fetch 1 ,mem_inquiry_rcv 
+0x20d0 003480 increase 1 ,pdata 
+0x20d1 003481 store 1 ,mem_inquiry_rcv 
+0x20d2 003482 rtn 
+:      003490 master_page:
+0x20d3 003491 bpatch patch02_0 ,mem_patch02 
+0x20d4 003492 enable master 
+0x20d5 003493 enable clknt 
+0x20d6 003494 fetch 2 ,mem_page_interval 
+0x20d7 003495 branch master_page_no_interval ,blank 
+0x20d8 003496 force page_interval_timer ,queue 
+0x20d9 003497 call timer_check 
+0x20da 003498 nrtn blank 
+:      003499 master_page_no_interval:
+0x20db 003500 bpatch patch02_1 ,mem_patch02 
+0x20dc 003501 fetcht 2 ,mem_page_window 
+0x20dd 003502 force 40 ,queue 
+0x20de 003503 call sniff_check_window 
+0x20df 003504 branch page_exit ,user 
+0x20e0 003505 force page_length_timer ,queue 
+0x20e1 003506 call timer_check 
+0x20e2 003507 nbranch page_start ,blank 
+0x20e3 003508 fetch 1 ,mem_state_map 
+0x20e4 003509 bbit1 smap_name_req ,master_npage_timeout 
+0x20e5 003510 branch master_page_timeout 
+:      003511 master_npage_timeout:
+0x20e6 003512 arg mem_tmp_buffer ,contw 
+0x20e7 003513 arg 8 ,loopcnt 
+0x20e8 003514 call memset0 
+:      003515 master_page_timeout:
+0x20e9 003516 bpatch patch02_2 ,mem_patch02 
+0x20ea 003517 jam 0 ,mem_state 
+0x20eb 003518 call init_lmp_work 
+0x20ec 003519 jam 0 ,memui_reconnect_mode 
+0x20ed 003520 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
+0x20ee 003521 call ui_ipc_send_event 
+0x20ef 003522 branch page_exit 
+:      003524 page_start:
+0x20f0 003525 bpatch patch02_3 ,mem_patch02 
+0x20f1 003526 force 0 ,timeup 
+0x20f2 003527 until clkn_rt ,meet 
+0x20f3 003528 fetch 1 ,mem_page_clk 
+0x20f4 003529 increase -1 ,pdata 
+0x20f5 003530 ixor clkn_bt ,pdata 
+0x20f6 003531 compare 0 ,pdata ,3 
+0x20f7 003532 nbranch page_start ,true 
+0x20f8 003533 deposit am_addr 
+0x20f9 003534 store 1 ,mem_fhs_am_addr 
+0x20fa 003535 force 0 ,n_tx_slot 
+0x20fb 003536 force 0 ,freq_mode 
+:      003538 page_restart:
+0x20fc 003539 bpatch patch02_4 ,mem_patch02 
+0x20fd 003540 branch page_exit ,timeout 
+0x20fe 003541 call fetch_page_bt_adr 
+0x20ff 003542 arg param_rf_setup ,timeup 
+0x2100 003543 until clkn_rt ,meet 
+:      003544 page_rx_restart:
+0x2101 003545 bpatch patch02_5 ,mem_patch02 
+0x2102 003546 fetch 4 ,mem_page_clk 
+0x2103 003547 iforce bt_clk 
+0x2104 003548 increase 1 ,pdata 
+0x2105 003549 store 4 ,mem_page_clk 
+0x2106 003550 isolate1 mark_page_trainb ,mark 
+0x2107 003551 setflag true ,2 ,freq_mode 
+0x2108 003552 compare 0x00 ,bt_clk ,0x02 
+0x2109 003553 nbranch page_receive ,true 
+0x210a 003554 fetch 1 ,mem_page_transmit 
+0x210b 003555 increase 1 ,pdata 
+0x210c 003556 store 1 ,mem_page_transmit 
+0x210d 003557 call tx_radio_freq 
+0x210e 003558 call start_transmitter 
+0x210f 003559 call start_tx_native 
+0x2110 003560 call send_access_word 
+0x2111 003561 call end_of_packet 
+0x2112 003562 call page_check_train 
+0x2113 003563 branch page_restart 
+:      003564 page_exit:
+0x2114 003565 bpatch patch02_6 ,mem_patch02 
+0x2115 003566 disable master 
+0x2116 003567 fetch 2 ,mem_page_interval 
+0x2117 003568 rtn blank 
+0x2118 003569 force page_interval_timer ,queue 
+0x2119 003570 branch timer_init 
+:      003572 page_check_train:
+0x211a 003573 bpatch patch02_7 ,mem_patch02 
+0x211b 003574 fetch 1 ,mem_nfreq_index_page 
+0x211c 003575 increase -1 ,pdata 
+0x211d 003576 store 1 ,mem_nfreq_index_page 
+0x211e 003577 rtn positive 
+0x211f 003578 jam 31 ,mem_nfreq_index_page 
+0x2120 003579 fetch 1 ,mem_npage_index 
+0x2121 003580 increase -1 ,pdata 
+0x2122 003581 store 1 ,mem_npage_index 
+0x2123 003582 rtn positive 
+0x2124 003583 setflip mark_page_trainb ,mark 
+0x2125 003584 fetch 1 ,mem_npage 
+0x2126 003585 store 1 ,mem_npage_index 
+0x2127 003586 rtn 
+:      003588 page_receive:
+0x2128 003589 bpatch patch03_0 ,mem_patch03 
+0x2129 003590 call rx_radio_freq 
+0x212a 003591 call start_rx_native 
+0x212b 003592 call start_receiver 
+0x212c 003593 call wait_access_clkn_rt 
+0x212d 003594 branch page_sync ,sync 
+0x212e 003595 call page_check_train 
+0x212f 003596 branch page_rx_restart 
+:      003597 page_sync:
+0x2130 003598 call end_of_packet 
+0x2131 003599 fetch 1 ,mem_page_rcv 
+0x2132 003600 increase 1 ,pdata 
+0x2133 003601 store 1 ,mem_page_rcv 
+0x2134 003602 force 0 ,stop_watch 
+0x2135 003603 fetch 4 ,mem_page_clk 
+:      003604 page_send_fhs:
+0x2136 003605 bpatch patch03_1 ,mem_patch03 
+0x2137 003606 call rf_setup_time_master_slot 
+0x2138 003607 call fetch_page_bt_adr 
+0x2139 003608 increase 1 ,n_tx_slot 
+:      003609 page_send_fhs_continue:
+0x213a 003610 and_into 0x1fd ,bt_clk 
+0x213b 003611 and_into 0x1fc ,freq_mode 
+0x213c 003612 call tx_radio_freq 
+0x213d 003613 call start_transmitter 
+0x213e 003614 call start_tx_native 
+0x213f 003615 call send_access_word 
+0x2140 003616 deposit clkn_bt 
+0x2141 003617 store 4 ,mem_clkn_bt 
+0x2142 003618 force 0 ,am_addr 
+0x2143 003619 force type_fhs ,type 
+0x2144 003620 call scan_mode_whiten 
+0x2145 003621 call transmit_packet_whitened 
+:      003622 page_wait_fhs_reply:
+0x2146 003623 bpatch patch03_2 ,mem_patch03 
+0x2147 003624 call rf_setup_time_slave_slot 
+0x2148 003625 or_into 0x02 ,bt_clk 
+0x2149 003626 and_into 0x1fc ,freq_mode 
+0x214a 003627 call rx_radio_freq 
+0x214b 003628 call start_rx_native 
+0x214c 003629 call start_receiver 
+0x214d 003630 call wait_access_clkn_rt 
+0x214e 003631 call end_of_packet ,sync 
+0x214f 003632 branch page_wait_fhs_reply_ok ,sync 
+0x2150 003633 fetch 1 ,mem_fhs_wait_counter 
+0x2151 003634 branch page_restart ,blank 
+0x2152 003635 increase -1 ,pdata 
+0x2153 003636 store 1 ,mem_fhs_wait_counter 
+0x2154 003637 branch page_send_fhs 
+:      003639 page_wait_fhs_reply_ok:
+0x2155 003640 bpatch patch03_3 ,mem_patch03 
+0x2156 003641 fetch 1 ,mem_page_rcv_fhs 
+0x2157 003642 increase 1 ,pdata 
+0x2158 003643 store 1 ,mem_page_rcv_fhs 
+0x2159 003644 call prepare_newconn 
+:      003645 master_newconn_loop:
+0x215a 003646 call master_newconn_once 
+0x215b 003647 branch newconn_poll_responded ,sync 
+0x215c 003648 call new_conn_timeout 
+0x215d 003649 nbranch master_newconn_loop ,blank 
+0x215e 003650 branch page_restart 
+:      003652 newconn_poll_responded:
+0x215f 003653 bpatch patch03_4 ,mem_patch03 
+0x2160 003654 fetch 1 ,mem_state 
+0x2161 003655 set0 state_inpage ,pdata 
+0x2162 003656 store 1 ,mem_state 
+0x2163 003657 call newconn_init 
+0x2164 003658 disable master 
+0x2165 003659 rtn 
+:      003662 master_dispatch:
+0x2166 003663 bpatch patch03_5 ,mem_patch03 
+0x2167 003664 enable master 
+0x2168 003665 enable clknt 
+0x2169 003666 call role_switch_master 
+0x216a 003667 rtn user 
+0x216b 003668 call check_bt_disabled 
+0x216c 003669 call rf_setup_time_master_slot 
+0x216d 003670 add clkn_bt ,1 ,bt_clk 
+0x216e 003671 call fetch_self_bt_adr 
+0x216f 003672 force 0x03 ,freq_mode 
+0x2170 003673 call scheduler_tx_l2cap_pkt 
+0x2171 003674 call prepare_tx 
+0x2172 003675 call tx_radio_freq 
+0x2173 003676 call start_transmitter 
+0x2174 003677 call start_tx_native 
+0x2175 003678 call send_access_word 
+0x2176 003679 call transmit_packet 
+:      003680 master_loop:
+0x2177 003681 bpatch patch03_6 ,mem_patch03 
+0x2178 003682 call parse_lmp 
+0x2179 003683 call master_conn_recv_packet 
+0x217a 003684 nbranch master_notmatch ,match 
+0x217b 003685 call supervision_flush 
+0x217c 003686 call parse_l2cap 
+0x217d 003687 fetch 1 ,mem_master_rcvcnt 
+0x217e 003688 increase 1 ,pdata 
+0x217f 003689 store 1 ,mem_master_rcvcnt 
+:      003690 master_notmatch:
+0x2180 003691 bpatch patch03_7 ,mem_patch03 
+0x2181 003692 call scheduler_process 
+0x2182 003693 call check_master_disconnect 
+0x2183 003694 nrtn master 
+0x2184 003695 call check_attempt 
+0x2185 003696 nbranch master_attempt ,blank 
+:      003697 master_exit:
+0x2186 003698 disable master 
+0x2187 003699 rtn 
+:      003701 master_attempt:
+0x2188 003702 call prepare_tx 
+0x2189 003703 call master_conn_send_packet 
+0x218a 003704 branch master_loop 
+:      003707 check_master_disconnect:
+0x218b 003708 branch check_master_match ,match 
+0x218c 003709 call supervision_update 
+0x218d 003710 branch master_disconnect ,positive 
+:      003711 check_master_match:
+0x218e 003712 call check_disconnect_timeout 
+0x218f 003713 nbranch master_disconnect ,user 
+0x2190 003714 fetch 1 ,mem_state_map 
+0x2191 003715 rtnbit0 smap_name_req 
+0x2192 003716 rtnbit1 smap_name_res 
+0x2193 003717 fetch 1 ,mem_op 
+0x2194 003718 rtnbit1 op_disconn 
+0x2195 003719 call conn_timer_expired 
+0x2196 003720 nrtn blank 
+0x2197 003721 fetch 1 ,mem_nameres_cnt 
+0x2198 003722 increase -1 ,pdata 
+0x2199 003723 store 1 ,mem_nameres_cnt 
+0x219a 003724 nrtn blank 
+0x219b 003725 branch lmp_disconnect 
+:      003727 master_disconnect:
+0x219c 003728 bpatch patch04_0 ,mem_patch04 
+0x219d 003729 call quit_connection 
+0x219e 003730 disable master 
+0x219f 003731 fetch 1 ,mem_state_map 
+0x21a0 003732 bbit1 smap_name_req ,master_name_disconnect 
+0x21a1 003733 rtn 
+:      003735 master_name_disconnect:
+0x21a2 003736 fetch 1 ,mem_state_map 
+0x21a3 003737 rtnbit1 smap_name_res 
+:      003738 master_name_error:
+0x21a4 003739 arg mem_tmp_buffer ,contw 
+0x21a5 003740 arg 8 ,loopcnt 
+0x21a6 003741 branch memset0 
+:      003743 check_disconnect_timeout:
+0x21a7 003744 bpatch patch04_1 ,mem_patch04 
+0x21a8 003745 enable user 
+0x21a9 003746 fetch 1 ,mem_op 
+0x21aa 003747 rtnbit0 op_disconn 
+0x21ab 003748 call conn_timer_expired 
+0x21ac 003749 nrtn blank 
+0x21ad 003750 branch disable_user 
+:      003752 conn_timer_expired:
+0x21ae 003753 fetch 1 ,mem_conn_timer 
+0x21af 003754 increase -1 ,pdata 
+0x21b0 003755 store 1 ,mem_conn_timer 
+0x21b1 003756 rtn 
+:      003758 linkkey_ready:
+0x21b2 003759 bpatch patch04_2 ,mem_patch04 
+0x21b3 003760 fetch 1 ,mem_state 
+0x21b4 003761 bbit1 state_linkkey ,linkkey_set 
+0x21b5 003762 fetch 1 ,mem_pairing_auth 
+0x21b6 003763 branch linkkey_set ,blank 
+0x21b7 003764 jam defalt_pairing_auth ,mem_pairing_auth 
+0x21b8 003765 jam bt_evt_linkkey_generate ,mem_fifo_temp 
+0x21b9 003766 call ui_ipc_send_event 
+0x21ba 003767 branch linkkey_set 
+:      003768 linkkey_set:
+0x21bb 003769 bpatch patch04_3 ,mem_patch04 
+0x21bc 003770 call context_traverse_linkkey 
+0x21bd 003771 fetch 1 ,mem_state 
+0x21be 003772 set1 state_linkkey ,pdata 
+0x21bf 003773 store 1 ,mem_state 
+0x21c0 003774 jam 1 ,mem_link_key_exists 
+0x21c1 003775 fetch 1 ,mem_conn_sm 
+0x21c2 003776 bne conn_sm_pairing ,linkkey_set_continue 
+:      003777 linkkey_set_continue:
+0x21c3 003778 rtn 
+:      003780 generate_linkkey_continue:
+0x21c4 003781 jam pairing_auth ,mem_pairing_auth 
+:      003782 clear_linkstate:
+0x21c5 003783 fetch 1 ,mem_state 
+0x21c6 003784 set0 state_linkkey ,pdata 
+0x21c7 003785 store 1 ,mem_state 
+0x21c8 003786 rtn 
+:      003790 role_switch_check:
+0x21c9 003791 bpatch patch04_4 ,mem_patch04 
+0x21ca 003792 disable user 
+0x21cb 003793 fetch 2 ,mem_tsniff 
+0x21cc 003794 arg 0xffff ,temp 
+0x21cd 003795 isub temp ,null 
+0x21ce 003796 nrtn zero 
+0x21cf 003797 fetch 4 ,mem_sniff_anchor 
+0x21d0 003798 branch role_switch_clkn ,clknt 
+0x21d1 003799 isub clke_bt ,pdata 
+0x21d2 003800 branch role_switch_clke 
+:      003801 role_switch_clkn:
+0x21d3 003802 isub clkn_bt ,pdata 
+:      003803 role_switch_clke:
+0x21d4 003804 sub pdata ,4 ,null 
+0x21d5 003805 nrtn positive 
+0x21d6 003806 force 0 ,pdata 
+0x21d7 003807 store 2 ,mem_tsniff 
+0x21d8 003808 branch enable_user 
+:      003812 role_switch_prepare:
+0x21d9 003813 copy pdata ,temp 
+0x21da 003814 bpatch patch04_5 ,mem_patch04 
+0x21db 003815 storet 4 ,mem_sniff_anchor 
+:      003816 role_switch_prepare0:
+0x21dc 003817 jam switch_flag_accept ,mem_switch_flag 
+0x21dd 003818 setarg 0xffff 
+0x21de 003819 store 2 ,mem_tsniff 
+0x21df 003820 jam 1 ,mem_sniff_attempt 
+0x21e0 003821 rtn 
+:      003824 role_switch_master:
+0x21e1 003825 bpatch patch04_6 ,mem_patch04 
+0x21e2 003826 call role_switch_check 
+0x21e3 003827 nrtn user 
+0x21e4 003828 disable user 
+0x21e5 003829 jam param_newconnto ,mem_newconnto_counter 
+0x21e6 003830 set0 mark_fhs_already_good ,mark 
+:      003831 roles_waitfhs_loop:
+0x21e7 003832 call rf_setup_time_master_slot 
+0x21e8 003833 call master_recv_packet 
+0x21e9 003834 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
+0x21ea 003835 call new_conn_timeout 
+0x21eb 003836 nbranch roles_waitfhs_loop ,blank 
+:      003837 role_switch_fail_master:
+0x21ec 003838 bpatch patch04_7 ,mem_patch04 
+0x21ed 003839 disable user 
+0x21ee 003840 deposit clkn_bt 
+0x21ef 003841 store 4 ,mem_next_btclk 
+0x21f0 003842 enable clknt 
+0x21f1 003843 enable master 
+0x21f2 003844 jam bt_evt_switch_fail_master ,mem_fifo_temp 
+0x21f3 003845 branch ui_ipc_send_event 
+:      003847 roles_replyto_fhs:
+0x21f4 003848 bpatch patch05_0 ,mem_patch05 
+0x21f5 003849 call rf_setup_time_slave_slot 
+0x21f6 003850 arg type_id ,type 
+0x21f7 003851 call master_send_packet 
+0x21f8 003852 disable clknt 
+0x21f9 003853 disable master 
+0x21fa 003854 call apply_switch_clke 
+0x21fb 003855 call prepare_newconn 
+:      003856 roles_newconns_loop:
+0x21fc 003857 bpatch patch05_1 ,mem_patch05 
+0x21fd 003858 call slave_newconn_once 
+0x21fe 003859 branch roles_newconns_responded ,match 
+0x21ff 003860 call new_conn_timeout 
+0x2200 003861 nbranch roles_newconns_loop ,blank 
+0x2201 003862 branch role_switch_fail_master 
+:      003863 roles_newconns_responded:
+0x2202 003864 fetch 1 ,mem_mode 
+0x2203 003865 set0 mode_master ,pdata 
+0x2204 003866 store 1 ,mem_mode 
+0x2205 003867 call supervision_flush 
+0x2206 003868 call calc_clke_offset 
+0x2207 003869 enable user 
+0x2208 003870 jam bt_evt_switch_success_master ,mem_fifo_temp 
+0x2209 003871 branch ui_ipc_send_event 
+:      003876 context_load:
+0x220a 003877 bpatch patch05_2 ,mem_patch05 
+0x220b 003878 set1 mark_context ,mark 
+0x220c 003879 deposit rega 
+0x220d 003880 store 2 ,mem_context_ptr 
+0x220e 003881 force context_size ,loopcnt 
+0x220f 003882 arg mem_le_state ,contw 
+0x2210 003883 add rega ,coffset_mode ,contr 
+0x2211 003884 ifetch 1 ,contr 
+0x2212 003885 copy rega ,contr 
+0x2213 003886 bbit1 mode_le ,memcpy 
+0x2214 003887 arg mem_state ,contw 
+0x2215 003888 call memcpy 
+0x2216 003889 disable attempt 
+0x2217 003890 fetch 1 ,mem_amaddr 
+0x2218 003891 iforce am_addr 
+0x2219 003892 jam 1 ,mem_current_sniff_attempt 
+0x221a 003893 branch context_load_master ,master 
+0x221b 003894 jam 1 ,mem_current_sniff_attempt 
+:      003895 context_load_master:
+0x221c 003896 fetch 1 ,mem_state 
+0x221d 003897 rtnbit0 state_insniff 
+0x221e 003898 fetch 1 ,mem_sniff_attempt 
+0x221f 003899 store 1 ,mem_current_sniff_attempt 
+0x2220 003900 fetch 1 ,mem_sniff_timeout 
+0x2221 003901 store 1 ,mem_current_sniff_timeout 
+0x2222 003902 rtn 
+:      003904 context_save:
+0x2223 003905 bpatch patch05_3 ,mem_patch05 
+0x2224 003906 fetch 2 ,mem_context_ptr 
+0x2225 003907 iforce contw 
+0x2226 003908 force context_size ,loopcnt 
+0x2227 003909 arg mem_le_state ,contr 
+0x2228 003910 branch memcpy ,le 
+0x2229 003911 arg mem_state ,contr 
+0x222a 003912 branch memcpy 
+:      003916 context_get_next:
+0x222b 003917 arg context_num ,loopcnt 
+0x222c 003918 fetcht 1 ,mem_current_context 
+:      003919 context_get_next_loop:
+0x222d 003920 increase 1 ,temp 
+0x222e 003921 compare context_num ,temp ,0xff 
+0x222f 003922 nbranch context_get_next_cont ,true 
+0x2230 003923 arg 0 ,temp 
+:      003924 context_get_next_cont:
+0x2231 003925 storet 1 ,mem_current_context 
+0x2232 003926 mul32 temp ,context_size ,pdata 
+0x2233 003927 arg mem_context ,rega 
+0x2234 003928 iadd rega ,rega 
+0x2235 003929 ifetch 1 ,rega 
+0x2236 003930 bbit1 state_insniff ,context_get_next_sniff 
+0x2237 003931 rtnbit1 state_inconn 
+0x2238 003932 rtnbit1 state_inpage 
+:      003933 context_get_next_sniff:
+0x2239 003934 loop context_get_next_loop 
+0x223a 003935 rtn 
+:      003937 context_new:
+0x223b 003938 bpatch patch05_4 ,mem_patch05 
+0x223c 003939 arg context_search_empty ,regc 
+0x223d 003940 call context_search 
+0x223e 003941 nrtn zero 
+0x223f 003942 deposit rega 
+0x2240 003943 store 2 ,mem_context_ptr 
+0x2241 003944 force 0 ,null 
+0x2242 003945 rtn 
+:      003949 context_check_all_wack:
+0x2243 003950 call check_esco_amaddr 
+0x2244 003951 branch context_check_esco_wack ,true 
+0x2245 003952 fetch 2 ,mem_context_ptr 
+0x2246 003953 add pdata ,coffset_arq ,contw 
+0x2247 003954 fetch 1 ,mem_arq 
+0x2248 003955 istore 1 ,contw 
+0x2249 003956 arg context_check_a_wack ,regc 
+0x224a 003957 branch context_search 
+:      003959 context_check_esco_wack:
+0x224b 003960 fetch 1 ,mem_arq 
+0x224c 003961 isolate1 wack ,pdata 
+0x224d 003962 branch context_esco_wack ,true 
+0x224e 003963 force 1 ,null 
+0x224f 003964 rtn 
+:      003965 context_esco_wack:
+0x2250 003966 force 0 ,null 
+0x2251 003967 rtn 
+:      003970 context_check_idle:
+0x2252 003971 arg context_check_inconn ,regc 
+0x2253 003972 branch context_search 
+:      003974 context_traverse_linkkey:
+0x2254 003975 fetcht 2 ,mem_context_ptr 
+0x2255 003976 arg context_traverse_clearkey ,regc 
+0x2256 003977 branch context_search 
+:      003981 context_search_conn_handle:
+0x2257 003982 fetcht 1 ,mem_hci_conn_handle 
+:      003983 context_search_conn_handle2:
+0x2258 003984 arg context_search_handle ,regc 
+0x2259 003985 branch context_search 
+:      003987 context_search_plap:
+0x225a 003988 bpatch patch05_5 ,mem_patch05 
+0x225b 003989 fetcht 6 ,mem_hci_plap 
+:      003990 context_search_plap2:
+0x225c 003991 arg context_search_lap ,regc 
+0x225d 003992 branch context_search 
+:      003994 context_search_insniff:
+0x225e 003995 arg context_search_sniff ,regc 
+0x225f 003996 branch context_search 
+:      003998 context_search_sniff_window:
+0x2260 003999 arg context_search_window ,regc 
+:      004000 context_search:
+0x2261 004001 bpatch patch05_6 ,mem_patch05 
+0x2262 004002 arg mem_context ,rega 
+0x2263 004003 arg context_num ,loopcnt 
+:      004004 context_search_loop:
+0x2264 004005 ifetch 1 ,rega 
+0x2265 004006 copy regc ,pc 
+:      004007 context_search_next:
+0x2266 004008 increase context_size ,rega 
+0x2267 004009 loop context_search_loop 
+0x2268 004010 force 1 ,null 
+0x2269 004011 rtn 
+:      004013 context_search_empty:
+0x226a 004014 bbit1 state_inconn ,context_search_next 
+0x226b 004015 bbit1 state_inpage ,context_search_next 
+0x226c 004016 force 0 ,null 
+0x226d 004017 rtn 
+:      004019 context_search_lap:
+0x226e 004020 bbit1 state_inpage ,context_search_lap_cont 
+0x226f 004021 bbit0 state_inconn ,context_search_next 
+:      004022 context_search_lap_cont:
+0x2270 004023 add rega ,coffset_plap ,contr 
+0x2271 004024 ifetch 6 ,contr 
+0x2272 004025 isub temp ,null 
+0x2273 004026 rtn zero 
+0x2274 004027 branch context_search_next 
+:      004029 context_search_handle:
+0x2275 004030 bbit0 state_inconn ,context_search_next 
+0x2276 004031 add rega ,coffset_conn_handle ,contr 
+0x2277 004032 ifetch 1 ,contr 
+0x2278 004033 isub temp ,null 
+0x2279 004034 rtn zero 
+0x227a 004035 branch context_search_next 
+:      004037 context_search_sniff:
+0x227b 004038 bbit0 state_insniff ,context_search_next 
+:      004039 context_search_sniff_loop:
+0x227c 004040 call context_get_anchor 
+0x227d 004041 call sign_pdata_temp 
+0x227e 004042 isub temp ,pdata 
+0x227f 004043 increase 1 ,pdata 
+0x2280 004044 branch context_search_sniff_miss ,positive 
+0x2281 004045 copy contr ,regb 
+0x2282 004046 store 9 ,mem_temp 
+0x2283 004047 fetch 1 ,mem_le_sc_calc 
+0x2284 004048 nbranch context_search_sniff_sc ,blank 
+0x2285 004049 fetch 9 ,mem_temp 
+0x2286 004050 copy regb ,contr 
+0x2287 004051 increase 5 ,pdata 
+0x2288 004052 branch context_search_meet1 
+:      004053 context_search_sniff_sc:
+0x2289 004054 fetch 9 ,mem_temp 
+0x228a 004055 copy regb ,contr 
+0x228b 004056 increase 20 ,pdata 
+:      004057 context_search_meet1:
+0x228c 004058 nbranch context_search_next ,positive 
+:      004059 context_search_meet:
+0x228d 004060 copy temp ,bt_clk 
+0x228e 004061 call context_next_anchor 
+0x228f 004062 force 0 ,null 
+0x2290 004063 rtn 
+:      004066 context_search_sniff_miss:
+0x2291 004067 iforce regb 
+0x2292 004068 add rega ,coffset_tsniff ,contr 
+0x2293 004069 ifetch 2 ,contr 
+0x2294 004070 branch context_search_meet ,blank 
+0x2295 004071 call context_next_anchor 
+0x2296 004072 branch context_search_sniff_loop 
+:      004074 sign_pdata_temp:
+0x2297 004075 rshift16 pdata ,timeup 
+0x2298 004076 rshift8 timeup ,timeup 
+0x2299 004077 branch sign_pdata_temp_p0 ,zero 
+0x229a 004078 compare 0xf ,timeup ,0xf 
+0x229b 004079 nrtn true 
+0x229c 004080 rshift16 temp ,timeup 
+0x229d 004081 rshift8 timeup ,timeup 
+0x229e 004082 nrtn zero 
+0x229f 004083 set1 28 ,temp 
+0x22a0 004084 rtn 
+:      004085 sign_pdata_temp_p0:
+0x22a1 004086 rshift16 temp ,timeup 
+0x22a2 004087 rshift8 timeup ,timeup 
+0x22a3 004088 compare 0xf ,timeup ,0xf 
+0x22a4 004089 nrtn true 
+0x22a5 004090 set1 28 ,pdata 
+0x22a6 004091 rtn 
+:      004093 context_check_inconn:
+0x22a7 004094 bbit0 state_inconn ,context_search_next 
+0x22a8 004095 force 0 ,null 
+0x22a9 004096 rtn 
+:      004098 context_check_a_wack:
+0x22aa 004099 bbit0 state_inconn ,context_search_next 
+0x22ab 004100 add rega ,coffset_mode ,contr 
+0x22ac 004101 ifetch 1 ,contr 
+0x22ad 004102 bbit1 mode_le ,context_search_next 
+0x22ae 004103 add rega ,coffset_arq ,contr 
+0x22af 004104 ifetch 1 ,contr 
+0x22b0 004105 bbit0 wack ,context_search_next 
+0x22b1 004106 force 0 ,null 
+0x22b2 004107 rtn 
+:      004109 context_get_anchor:
+0x22b3 004110 add rega ,coffset_mode ,contr 
+0x22b4 004111 ifetcht 1 ,contr 
+0x22b5 004112 deposit clkn_bt 
+0x22b6 004113 isolate1 mode_master ,temp 
+0x22b7 004114 add rega ,coffset_sniff_anchor ,contr 
+0x22b8 004115 ifetcht 4 ,contr 
+0x22b9 004116 rtn true 
+0x22ba 004117 add rega ,coffset_clk_offset ,contr 
+0x22bb 004118 ifetch 6 ,contr 
+0x22bc 004119 call calc_clke2 
+0x22bd 004120 deposit clke_bt 
+0x22be 004121 rtn 
+:      004123 context_next_anchor:
+0x22bf 004124 add rega ,coffset_tsniff ,contr 
+0x22c0 004125 add rega ,coffset_sniff_anchor ,contw 
+0x22c1 004126 ifetch 2 ,contr 
+0x22c2 004127 iadd temp ,timeup 
+0x22c3 004128 deposit timeup 
+0x22c4 004129 istore 4 ,contw 
+0x22c5 004130 branch le_context_nexthop 
+:      004133 context_search_window:
+0x22c6 004134 bbit0 state_insniff ,context_search_next 
+0x22c7 004135 call context_get_anchor 
+0x22c8 004136 iadd stop_watch ,pdata 
+0x22c9 004137 iadd stop_watch ,pdata 
+0x22ca 004138 iadd queue ,pdata 
+0x22cb 004139 isub temp ,null 
+0x22cc 004140 nbranch context_search_next ,positive 
+0x22cd 004141 force 0 ,null 
+0x22ce 004142 rtn 
+:      004144 context_traverse_clearkey:
+0x22cf 004145 bbit0 state_inconn ,context_search_next 
+0x22d0 004146 deposit temp 
+0x22d1 004147 isub rega ,null 
+0x22d2 004148 branch context_search_next ,null 
+0x22d3 004149 add rega ,coffset_mode ,contr 
+0x22d4 004150 ifetch 1 ,contr 
+0x22d5 004151 bbit1 mode_le ,context_search_next 
+0x22d6 004152 ifetch 1 ,rega 
+0x22d7 004153 set0 state_linkkey ,pdata 
+0x22d8 004154 istore 1 ,rega 
+0x22d9 004155 branch context_search_next 
+:      004158 master_conn_send_packet:
+0x22da 004159 bpatch patch05_7 ,mem_patch05 
+0x22db 004160 call rf_setup_time_master_slot 
+:      004161 master_send_packet:
+0x22dc 004162 add clkn_bt ,1 ,bt_clk 
+0x22dd 004163 call fetch_self_bt_adr 
+0x22de 004164 force 0x03 ,freq_mode 
+0x22df 004165 call tx_radio_freq 
+0x22e0 004166 call start_transmitter 
+0x22e1 004167 call start_tx_native 
+0x22e2 004168 call send_access_word 
+0x22e3 004169 branch transmit_packet 
+:      004171 master_conn_recv_packet:
+0x22e4 004172 bpatch patch06_0 ,mem_patch06 
+0x22e5 004173 call rf_setup_time_slave_slot 
+:      004174 master_recv_packet:
+0x22e6 004175 add clkn_bt ,1 ,bt_clk 
+0x22e7 004176 call fetch_self_bt_adr 
+0x22e8 004177 force 0x03 ,freq_mode 
+0x22e9 004178 call rx_radio_freq 
+0x22ea 004179 call init_rx_packet_flags 
+0x22eb 004180 call prep_crypt 
+0x22ec 004181 call start_rx_native 
+0x22ed 004182 call start_receiver 
+:      004183 master_rx_conn_finish_packet:
+0x22ee 004184 call wait_access_clkn_rt 
+0x22ef 004185 nrtn sync 
+0x22f0 004186 call save_rssi 
+0x22f1 004187 branch receive_packet 
+:      004191 master_newconn_once:
+0x22f2 004192 bpatch patch06_1 ,mem_patch06 
+0x22f3 004193 fetch 1 ,mem_fhs_am_addr 
+0x22f4 004194 iforce am_addr 
+0x22f5 004195 force type_poll ,type 
+0x22f6 004196 call master_conn_send_packet 
+0x22f7 004197 branch master_conn_recv_packet 
+:      004208 inquiry_scan_dispatch:
+0x22f8 004209 fetch 1 ,mem_scan_mode 
+0x22f9 004210 rtnbit0 inq_scan_mode 
+0x22fa 004211 force iscan_interval_timer ,queue 
+0x22fb 004212 call timer_check 
+0x22fc 004213 nrtn blank 
+0x22fd 004214 fetcht 2 ,mem_iscan_window 
+0x22fe 004215 force 4 ,queue 
+0x22ff 004216 call sniff_check_window 
+0x2300 004217 rtn user 
+0x2301 004218 call inquiry_scan_start 
+0x2302 004219 force iscan_interval_timer ,queue 
+0x2303 004220 fetch 2 ,mem_iscan_interval 
+0x2304 004221 nbranch timer_init ,sync 
+0x2305 004222 random pdata 
+0x2306 004223 iand mask3ff ,pdata 
+0x2307 004224 branch timer_init 
+:      004227 inquiry_scan_start:
+0x2308 004228 bpatch patch06_2 ,mem_patch06 
+0x2309 004229 jam 0 ,mem_fhs_am_addr 
+0x230a 004230 disable clknt 
+0x230b 004231 disable attempt 
+0x230c 004232 call afh_clear 
+0x230d 004233 and clkn_bt ,0x1fc ,bt_clk 
+0x230e 004234 force 0x01 ,freq_mode 
+0x230f 004235 call fetch_giac 
+0x2310 004236 call rx_radio_freq 
+0x2311 004237 setflip mark_inquiry_state ,mark 
+0x2312 004238 fetch 1 ,mem_inquiryscan_waitcnt 
+0x2313 004239 increase 1 ,pdata 
+0x2314 004240 store 1 ,mem_inquiryscan_waitcnt 
+0x2315 004241 call fetch_diac 
+0x2316 004242 call start_receiver 
+0x2317 004243 call wait_access_forever 
+0x2318 004244 nrtn sync 
+0x2319 004245 bpatch patch06_3 ,mem_patch06 
+0x231a 004246 force 0 ,stop_watch 
+0x231b 004247 call shutdown_radio 
+0x231c 004248 fetch 1 ,mem_inquiryscan_rcvcnt 
+0x231d 004249 increase 1 ,pdata 
+0x231e 004250 store 1 ,mem_inquiryscan_rcvcnt 
+0x231f 004251 call fetch_giac 
+0x2320 004252 call rf_setup_time_slave_slot 
+0x2321 004253 or_into 0x002 ,bt_clk 
+0x2322 004254 force 0x01 ,freq_mode 
+0x2323 004255 call tx_radio_freq 
+0x2324 004256 call fetch_diac 
+0x2325 004257 call start_transmitter 
+0x2326 004258 call start_tx_external 
+0x2327 004259 deposit clkn_bt 
+0x2328 004260 store 4 ,mem_clkn_bt 
+0x2329 004261 call send_access_word 
+0x232a 004262 force type_fhs ,type 
+0x232b 004263 force 0 ,am_addr 
+0x232c 004264 call scan_mode_whiten 
+0x232d 004265 call transmit_packet_whitened 
+0x232e 004266 call send_eir 
+0x232f 004267 and_into 0x1fd ,bt_clk 
+0x2330 004268 increase 1 ,n_tx_slot 
+0x2331 004269 rtn 
+:      004271 send_eir:
+0x2332 004272 bpatch patch06_4 ,mem_patch06 
+0x2333 004273 fetch 1 ,mem_eir_enable 
+0x2334 004274 rtn blank 
+0x2335 004275 arg mem_eir ,contw 
+0x2336 004276 fetch 1 ,mem_local_name_length 
+0x2337 004277 copy pdata ,loopcnt 
+0x2338 004278 increase 1 ,pdata 
+0x2339 004279 istore 1 ,contw 
+0x233a 004280 copy contw ,temp 
+0x233b 004281 increase 1 ,pdata 
+0x233c 004282 store 2 ,mem_tx_len 
+0x233d 004283 copy temp ,contw 
+0x233e 004284 setarg 0x09 
+0x233f 004285 istore 1 ,contw 
+0x2340 004286 arg mem_local_name ,contr 
+0x2341 004287 call memcpy 
+0x2342 004289 arg mem_all_uuid_128bits ,regc 
+0x2343 004290 arg 4 ,loopcnt 
+0x2344 004291 call get_all_uuid 
+0x2345 004292 arg mem_all_uuid_16bits ,regc 
+0x2346 004293 arg 1 ,loopcnt 
+0x2347 004294 call get_all_uuid 
+0x2348 004296 force type_dm3 ,type 
+0x2349 004297 jam 2 ,mem_tx_lch 
+0x234a 004298 setarg mem_eir 
+0x234b 004299 store 2 ,mem_txptr 
+0x234c 004300 call rf_setup_time_slave_slot 
+0x234d 004301 call tx_radio_freq 
+0x234e 004302 call start_transmitter 
+0x234f 004303 call start_tx_external 
+0x2350 004304 call send_access_word 
+0x2351 004305 call scan_mode_whiten 
+0x2352 004306 call transmit_packet_whitened 
+0x2353 004307 rtn 
+:      004310 get_all_uuid:
+0x2354 004311 copy contw ,temp 
+0x2355 004312 copy regc ,contr 
+0x2356 004313 ifetch 1 ,contr 
+0x2357 004314 rtn blank 
+:      004315 lshift_loop:
+0x2358 004316 lshift pdata ,pdata 
+0x2359 004317 loop lshift_loop 
+0x235a 004318 copy pdata ,rega 
+0x235b 004319 increase 2 ,pdata 
+0x235c 004320 copy pdata ,queue 
+0x235d 004321 fetch 2 ,mem_tx_len 
+0x235e 004322 iadd queue ,pdata 
+0x235f 004323 store 2 ,mem_tx_len 
+0x2360 004324 copy temp ,contw 
+0x2361 004325 copy rega ,pdata 
+0x2362 004326 increase 1 ,pdata 
+0x2363 004327 istore 1 ,contw 
+0x2364 004328 copy regc ,contr 
+0x2365 004329 ifetch 1 ,contr 
+0x2366 004330 ifetch 1 ,contr 
+0x2367 004331 istore 1 ,contw 
+0x2368 004332 copy rega ,loopcnt 
+0x2369 004333 branch memcpy 
+:      004339 page_scan_dispatch:
+0x236a 004340 fetch 1 ,mem_scan_mode 
+0x236b 004341 rtnbit0 page_scan_mode 
+0x236c 004342 force pscan_interval_timer ,queue 
+0x236d 004343 call timer_check 
+0x236e 004344 nrtn blank 
+0x236f 004345 fetcht 2 ,mem_pscan_window 
+0x2370 004346 force 40 ,queue 
+0x2371 004347 call sniff_check_window 
+0x2372 004348 rtn user 
+0x2373 004349 force 0 ,am_addr 
+0x2374 004350 jam param_pagerespto ,mem_fhs_wait_counter 
+0x2375 004351 set0 mark_fhs_already_good ,mark 
+0x2376 004352 call page_scan_start 
+0x2377 004353 force pscan_interval_timer ,queue 
+0x2378 004354 fetch 2 ,mem_pscan_interval 
+0x2379 004355 branch timer_init 
+:      004358 page_scan_start:
+0x237a 004359 bpatch patch06_5 ,mem_patch06 
+0x237b 004360 disable clknt 
+0x237c 004361 call afh_clear 
+0x237d 004362 fetch 1 ,mem_pagescan_waitcnt 
+0x237e 004363 increase 1 ,pdata 
+0x237f 004364 store 1 ,mem_pagescan_waitcnt 
+0x2380 004365 force 0 ,n_tx_slot 
+0x2381 004366 call fetch_self_bt_adr 
+0x2382 004367 add clkn_bt ,1 ,bt_clk 
+0x2383 004368 force 0x02 ,freq_mode 
+0x2384 004369 bpatch patch06_6 ,mem_patch06 
+0x2385 004370 call rx_radio_freq 
+0x2386 004371 call start_receiver 
+0x2387 004372 call wait_access_forever 
+0x2388 004373 nrtn sync 
+0x2389 004374 call shutdown_radio 
+0x238a 004375 fetch 1 ,mem_pagescan_rcvcnt 
+0x238b 004376 increase 1 ,pdata 
+0x238c 004377 store 1 ,mem_pagescan_rcvcnt 
+0x238d 004378 force 0 ,stop_watch 
+0x238e 004379 call rf_setup_time_slave_slot 
+0x238f 004380 or_into 0x002 ,bt_clk 
+0x2390 004381 force 0x01 ,freq_mode 
+0x2391 004382 call tx_radio_freq 
+0x2392 004383 call start_transmitter 
+0x2393 004384 call start_tx_external 
+0x2394 004385 call send_access_word 
+0x2395 004386 call end_of_packet 
+0x2396 004387 force 0 ,am_addr 
+0x2397 004388 arg param_rf_setup ,timeup 
+0x2398 004389 until clke_rt ,meet 
+0x2399 004390 or_into 0x03 ,clke_bt 
+0x239a 004391 and_into 0x1fd ,bt_clk 
+:      004392 page_scan_wait_fhs_restart:
+0x239b 004393 bpatch patch06_7 ,mem_patch06 
+0x239c 004394 increase 1 ,n_tx_slot 
+0x239d 004395 call rx_radio_freq 
+0x239e 004396 call start_receiver 
+0x239f 004397 call wait_access_mhalfbnd 
+0x23a0 004398 nbranch page_scan_wait_fhs_again ,sync 
+0x23a1 004399 call scan_mode_whiten 
+0x23a2 004400 call receive_packet_whitened 
+0x23a3 004401 bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
+:      004402 page_scan_wait_fhs_again:
+0x23a4 004403 bpatch patch07_0 ,mem_patch07 
+0x23a5 004404 fetch 1 ,mem_fhs_wait_counter 
+0x23a6 004405 rtn blank 
+0x23a7 004406 increase -1 ,pdata 
+0x23a8 004407 store 1 ,mem_fhs_wait_counter 
+0x23a9 004408 call rf_setup_time_master_slot 
+0x23aa 004409 branch page_scan_wait_fhs_restart 
+:      004412 page_scan_reply_to_fhs:
+0x23ab 004413 bpatch patch07_1 ,mem_patch07 
+0x23ac 004414 set0 1 ,clke_bt 
+0x23ad 004415 set1 0 ,clke_bt 
+0x23ae 004416 fetch 1 ,mem_pagescan_rcvfhscnt 
+0x23af 004417 increase 1 ,pdata 
+0x23b0 004418 store 1 ,mem_pagescan_rcvfhscnt 
+0x23b1 004419 call rf_setup_time_slave_slot 
+0x23b2 004420 or_into 0x02 ,bt_clk 
+0x23b3 004421 call tx_radio_freq 
+0x23b4 004422 call start_transmitter 
+0x23b5 004423 call start_tx_external 
+0x23b6 004424 call send_access_word 
+0x23b7 004425 call end_of_packet 
+:      004426 slave_apply_clke_bt:
+0x23b8 004427 compare 0x03 ,clke_bt ,0x03 
+0x23b9 004428 branch slave_apply_clke_bt_now ,true 
+0x23ba 004429 until null ,mhalfbnd 
+0x23bb 004430 branch slave_apply_clke_bt 
+:      004431 slave_apply_clke_bt_now:
+0x23bc 004432 fetch 4 ,mem_clke_bt 
+0x23bd 004433 or_into 0x03 ,pdata 
+0x23be 004434 icopy clke_bt 
+:      004436 start_slave_connection:
+0x23bf 004437 bpatch patch07_2 ,mem_patch07 
+0x23c0 004438 fetch 6 ,extm_lap 
+0x23c1 004439 store 6 ,mem_plap 
+0x23c2 004440 call prepare_newconn 
+:      004441 slave_newconn_loop:
+0x23c3 004442 call slave_newconn_once 
+0x23c4 004443 branch sconn_successful ,match 
+0x23c5 004444 call new_conn_timeout 
+0x23c6 004445 nbranch slave_newconn_loop ,blank 
+0x23c7 004446 rtn 
+:      004449 sconn_successful:
+0x23c8 004450 bpatch patch07_3 ,mem_patch07 
+0x23c9 004451 call newconn_init 
+0x23ca 004452 call context_new 
+0x23cb 004453 nrtn zero 
+0x23cc 004454 jam 0 ,mem_mode 
+0x23cd 004455 call calc_clke_offset 
+0x23ce 004456 branch context_save 
+:      004461 slave_dispatch:
+0x23cf 004462 bpatch patch07_4 ,mem_patch07 
+0x23d0 004463 call calc_clke 
+0x23d1 004464 call role_switch_slave 
+0x23d2 004465 rtn user 
+:      004466 slave_loop:
+0x23d3 004467 bpatch patch07_5 ,mem_patch07 
+0x23d4 004468 call check_bt_disabled 
+0x23d5 004469 call scheduler_process 
+0x23d6 004470 call slave_conn_recv_packet 
+0x23d7 004471 nbranch slave_notmatch ,match 
+0x23d8 004472 call supervision_flush 
+0x23d9 004473 call scheduler_tx_l2cap_pkt 
+0x23da 004474 call prepare_tx 
+0x23db 004475 call slave_conn_send_packet 
+0x23dc 004476 call parse_l2cap 
+0x23dd 004477 call parse_lmp 
+0x23de 004478 fetch 1 ,mem_slave_rcvcnt 
+0x23df 004479 increase 1 ,pdata 
+0x23e0 004480 store 1 ,mem_slave_rcvcnt 
+0x23e1 004481 call calc_clke_offset 
+:      004482 slave_notmatch:
+0x23e2 004483 bpatch patch07_6 ,mem_patch07 
+0x23e3 004484 call lpm_set_mult 
+0x23e4 004485 call supervision_update 
+0x23e5 004486 branch slave_disconnect ,positive 
+0x23e6 004487 call check_disconnect_timeout 
+0x23e7 004488 nbranch slave_disconnect ,user 
+0x23e8 004489 call check_attempt 
+0x23e9 004490 nbranch slave_loop ,blank 
+0x23ea 004491 rtn 
+:      004493 slave_disconnect:
+0x23eb 004494 bpatch patch07_7 ,mem_patch07 
+0x23ec 004495 jam 0 ,mem_tester_emulate 
+0x23ed 004496 jam 0 ,mem_debug_config 
+0x23ee 004497 call quit_connection 
+0x23ef 004498 set0 mark_testmode ,mark 
+0x23f0 004499 call test_enable_white 
+0x23f1 004500 fetch 1 ,mem_state 
+0x23f2 004501 rtn 
+:      004504 role_switch_slave:
+0x23f3 004505 bpatch patch08_0 ,mem_patch08 
+0x23f4 004506 call role_switch_check 
+0x23f5 004507 nrtn user 
+0x23f6 004508 copy am_addr ,temp 
+0x23f7 004509 call get_free_amaddr 
+0x23f8 004510 store 1 ,mem_fhs_am_addr 
+0x23f9 004511 copy temp ,am_addr 
+0x23fa 004512 jam param_newconnto ,mem_newconnto_counter 
+:      004513 roles_sendfhs_loop:
+0x23fb 004514 bpatch patch08_1 ,mem_patch08 
+0x23fc 004515 call rf_setup_time_master_slot 
+0x23fd 004516 force type_fhs ,type 
+0x23fe 004517 call slave_send_access 
+0x23ff 004518 deposit clkn_bt 
+0x2400 004519 store 4 ,mem_clkn_bt 
+0x2401 004520 call transmit_packet 
+0x2402 004521 call rf_setup_time_slave_slot 
+0x2403 004522 enable user3 
+0x2404 004523 call slave_receive_access 
+0x2405 004524 branch roles_got_fhs_reply ,sync 
+0x2406 004525 call shutdown_radio 
+0x2407 004526 call new_conn_timeout 
+0x2408 004527 nbranch roles_sendfhs_loop ,blank 
+0x2409 004528 rtnmark0 mark_accept_switch 
+0x240a 004529 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x240b 004530 set1 mark_switch_initiated ,mark 
+0x240c 004531 rtn 
+:      004532 roles_got_fhs_reply:
+0x240d 004533 enable clknt 
+0x240e 004534 call prepare_newconn 
+0x240f 004535 call afh_clear 
+:      004536 roles_newconn_loop:
+0x2410 004537 bpatch patch08_2 ,mem_patch08 
+0x2411 004538 call master_newconn_once 
+0x2412 004539 branch roles_newconn_responded ,sync 
+0x2413 004540 call new_conn_timeout 
+0x2414 004541 nbranch roles_newconn_loop ,blank 
+0x2415 004542 disable clknt 
+0x2416 004543 deposit clke_bt 
+0x2417 004544 store 4 ,mem_next_btclk 
+0x2418 004545 rtn 
+:      004546 roles_newconn_responded:
+0x2419 004547 enable master 
+0x241a 004548 bmark0 mark_accept_switch ,roles_newconn_nolmp 
+0x241b 004549 set0 mark_accept_switch ,mark 
+0x241c 004550 jam lmp_accepted ,mem_lmo_opcode2 
+0x241d 004551 jam lmp_host_connection_req ,mem_lmi_opcode2 
+0x241e 004552 call tid_set_reply 
+:      004553 roles_newconn_nolmp:
+0x241f 004554 deposit am_addr 
+0x2420 004555 store 1 ,mem_amaddr 
+0x2421 004556 force 0 ,pdata 
+0x2422 004557 store 6 ,mem_clk_offset 
+0x2423 004558 fetch 1 ,mem_mode 
+0x2424 004559 set1 mode_master ,pdata 
+0x2425 004560 store 1 ,mem_mode 
+0x2426 004561 call supervision_flush 
+0x2427 004562 disable master 
+0x2428 004563 enable user 
+0x2429 004564 rtn 
+:      004568 init_rx_packet_flags:
+0x242a 004569 bpatch patch08_3 ,mem_patch08 
+0x242b 004570 disable match 
+0x242c 004571 set0 mark_loopback ,mark 
+0x242d 004572 set0 mark_am_addr_broadcast ,mark 
+0x242e 004573 set0 mark_longpacket ,mark 
+0x242f 004574 set0 mark_old_packet ,mark 
+0x2430 004575 fetch 1 ,mem_arq 
+0x2431 004576 set0 arqnx ,pdata 
+0x2432 004577 set1 flowx ,pdata 
+0x2433 004578 store 1 ,mem_arq 
+0x2434 004579 rtn 
+:      004581 prepare_newconn:
+0x2435 004582 bpatch patch08_4 ,mem_patch08 
+0x2436 004583 jam param_newconnto ,mem_newconnto_counter 
+0x2437 004584 jam param_newconn_arq ,mem_arq 
+0x2438 004585 fetch 2 ,mem_rx_window_init 
+0x2439 004586 store 2 ,mem_rx_window 
+0x243a 004587 deposit clkn_bt 
+0x243b 004588 store 4 ,mem_next_btclk 
+0x243c 004589 rtn clknt 
+0x243d 004590 deposit clke_bt 
+0x243e 004591 store 4 ,mem_next_btclk 
+0x243f 004592 rtn 
+:      004594 newconn_init:
+0x2440 004595 bpatch patch08_5 ,mem_patch08 
+0x2441 004596 call init_lmp_reinit 
+0x2442 004597 call new_conn_handle 
+0x2443 004598 store 1 ,mem_conn_handle 
+0x2444 004599 setarg 0 
+0x2445 004600 store 2 ,mem_l2cap_rxbuff1_len 
+0x2446 004601 setarg param_supervision_to 
+0x2447 004602 store 2 ,mem_supervision_to 
+0x2448 004603 fetch 1 ,mem_state 
+0x2449 004604 set1 state_inconn ,pdata 
+0x244a 004605 store 1 ,mem_state 
+0x244b 004606 jam 0 ,mem_op 
+0x244c 004607 jam 0 ,mem_state_map 
+0x244d 004608 jam 0 ,mem_lpm_current_mult 
+0x244e 004609 branch supervision_flush 
+:      004612 clear_linkkey:
+0x244f 004613 bpatch patch08_6 ,mem_patch08 
+0x2450 004614 force 0 ,pdata 
+0x2451 004615 store 8 ,mem_link_key 
+0x2452 004616 istore 8 ,contw 
+0x2453 004617 call clear_linkstate 
+0x2454 004618 branch context_traverse_linkkey 
+:      004620 new_conn_timeout:
+0x2455 004621 fetch 1 ,mem_newconnto_counter 
+0x2456 004622 increase -1 ,pdata 
+0x2457 004623 store 1 ,mem_newconnto_counter 
+0x2458 004624 rtn 
+:      004626 new_conn_handle:
+0x2459 004627 fetch 1 ,mem_handle_num 
+0x245a 004628 increase 1 ,pdata 
+0x245b 004629 store 1 ,mem_handle_num 
+0x245c 004630 rtn 
+:      004633 quit_connection:
+0x245d 004634 bpatch patch08_7 ,mem_patch08 
+0x245e 004635 fetch 1 ,mem_hci_cmd 
+0x245f 004636 beq hci_cmd_remote_name_req ,quit_connection_name 
+0x2460 004637 fetch 1 ,mem_lmp_to_send 
+0x2461 004638 bne lmp_name_req ,quit_connection_cont 
+:      004639 quit_connection_name:
+0x2462 004640 call cmd_check_plap 
+0x2463 004641 nbranch quit_connection_cont ,zero 
+0x2464 004642 call master_name_error 
+0x2465 004643 jam 0 ,mem_hci_cmd 
+:      004644 quit_connection_cont:
+0x2466 004645 bpatch patch09_0 ,mem_patch09 
+0x2467 004646 call app_disconn_reason_collect_bt 
+0x2468 004647 call sniff_exit 
+0x2469 004648 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0x246a 004649 call ui_ipc_send_event 
+0x246b 004650 call init_lmp_work 
+0x246c 004651 call l2cap_init_work 
+0x246d 004652 call sp_initialize 
+0x246e 004653 fetch 1 ,mem_state 
+0x246f 004654 set0 state_inconn 
+0x2470 004655 store 1 ,mem_state 
+0x2471 004656 jam 0 ,memui_reconnect_mode 
+0x2472 004658 fetch 1 ,mem_state_map 
+0x2473 004659 compare 0x0 ,pdata ,0xc0 
+0x2474 004660 branch quit_connection_not_clear_mark ,true 
+0x2475 004661 set0 mark_rxbuf_inuse ,mark 
+:      004662 quit_connection_not_clear_mark:
+0x2476 004663 fetch 1 ,mem_arq 
+0x2477 004664 bbit0 wack ,quit_connection_not_clear_tx 
+:      004665 quit_connection_not_clear_tx:
+0x2478 004666 fetch 1 ,mem_op 
+0x2479 004667 rtnbit0 op_txl2cap 
+0x247a 004668 set0 mark_tx_l2cap ,mark 
+0x247b 004669 rtn 
+:      004671 slave_newconn_once:
+0x247c 004672 bpatch patch09_1 ,mem_patch09 
+0x247d 004673 fetch 1 ,extm_newconn_am_addr 
+0x247e 004674 rtn blank 
+0x247f 004675 icopy am_addr 
+0x2480 004676 call slave_conn_recv_packet 
+0x2481 004677 nrtn match 
+0x2482 004678 force type_null ,type 
+0x2483 004679 call slave_conn_send_packet 
+0x2484 004680 deposit am_addr 
+0x2485 004681 store 1 ,mem_amaddr 
+0x2486 004682 force 0 ,pdata 
+0x2487 004683 store 1 ,extm_newconn_am_addr 
+0x2488 004684 rtn 
+:      004690 prepare_tx:
+0x2489 004691 bpatch patch09_2 ,mem_patch09 
+0x248a 004692 fetch 1 ,mem_state 
+0x248b 004693 bbit0 state_insco ,prepare_tx_not_sco 
+0x248c 004694 force type_hv3 ,type 
+0x248d 004695 bmark0 mark_esco ,prepare_tx_not_esco 
+0x248e 004696 call check_esco_amaddr 
+0x248f 004697 nbranch prepare_tx_not_sco ,true 
+0x2490 004698 branch prepare_tx_not_sco ,attempt 
+0x2491 004699 call set_wait_ack 
+0x2492 004700 setarg 2 
+0x2493 004701 store 2 ,mem_retransmission_cnt 
+0x2494 004702 rtn 
+:      004703 prepare_tx_not_esco:
+0x2495 004704 nrtn attempt 
+:      004705 prepare_tx_not_sco:
+0x2496 004706 bpatch patch09_3 ,mem_patch09 
+0x2497 004707 call context_check_all_wack 
+0x2498 004708 nbranch prepare_tx_no_retransmit ,zero 
+0x2499 004709 fetch 1 ,mem_arq 
+0x249a 004710 bbit0 wack ,prepare_tx_pollnull 
+:      004711 prepare_tx_retransmit:
+0x249b 004712 bmark1 mark_loopback ,prepare_tx_loopback 
+0x249c 004713 fetch 1 ,mem_debug_config 
+0x249d 004714 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+0x249e 004715 fetch 2 ,mem_retransmission_cnt 
+0x249f 004716 increase -1 ,pdata 
+0x24a0 004717 store 2 ,mem_retransmission_cnt 
+0x24a1 004718 branch prepare_tx_nomore_retransmit ,blank 
+0x24a2 004719 fetch 1 ,mem_last_type 
+0x24a3 004720 iforce type 
+0x24a4 004721 rtn 
+:      004723 prepare_tx_nomore_retransmit:
+0x24a5 004724 bpatch patch09_4 ,mem_patch09 
+0x24a6 004725 call clear_got_tx 
+:      004726 prepare_tx_no_retransmit:
+0x24a7 004727 call check_esco_amaddr 
+0x24a8 004728 branch prepare_tx_pollnull ,true 
+0x24a9 004729 call send_lmp 
+0x24aa 004730 branch prepare_tx_sendlmp ,user 
+0x24ab 004731 fetch 1 ,mem_op 
+0x24ac 004732 bbit1 op_txl2cap ,prepare_tx_sendl2cap 
+0x24ad 004733 bmark1 mark_loopback ,prepare_tx_loopback 
+0x24ae 004734 fetch 1 ,mem_debug_config 
+0x24af 004735 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+:      004736 prepare_tx_pollnull:
+0x24b0 004737 force type_poll ,type 
+0x24b1 004738 rtn master 
+0x24b2 004739 force type_null ,type 
+0x24b3 004740 rtn 
+:      004741 prepare_tx_loopback:
+0x24b4 004742 bpatch patch09_5 ,mem_patch09 
+0x24b5 004743 fetch 1 ,mem_rx_type 
+0x24b6 004744 iforce type 
+0x24b7 004745 rtnne 1 
+0x24b8 004746 force type_null ,type 
+0x24b9 004747 rtn 
+:      004748 prepare_tx_txpat:
+0x24ba 004749 fetch 1 ,test_mode_packet_type 
+0x24bb 004750 and pdata ,0xf ,type 
+0x24bc 004751 set1 mark_loopback ,mark 
+0x24bd 004752 rtn 
+:      004753 prepare_tx_sendlmp:
+0x24be 004754 force type_lmp ,type 
+0x24bf 004755 branch set_wait_ack 
+:      004756 prepare_tx_sendl2cap:
+0x24c0 004757 call tx_l2cap_type 
+:      004759 set_wait_ack:
+0x24c1 004760 bpatch patch09_6 ,mem_patch09 
+0x24c2 004761 fetcht 1 ,mem_arq 
+0x24c3 004762 set1 wack ,temp 
+0x24c4 004763 storet 1 ,mem_arq 
+0x24c5 004764 deposit type 
+0x24c6 004765 store 1 ,mem_last_type 
+0x24c7 004766 setarg 0xffff 
+0x24c8 004767 store 2 ,mem_retransmission_cnt 
+0x24c9 004768 rtn 
+:      004770 tx_l2cap_type:
+0x24ca 004771 bpatch patch09_7 ,mem_patch09 
+0x24cb 004772 fetch 1 ,mem_state_map 
+0x24cc 004773 isolate1 smap_edr ,pdata 
+0x24cd 004774 fetch 2 ,mem_tx_len 
+0x24ce 004775 branch tx_l2cap_type_edr ,true 
+0x24cf 004776 force type_dm1 ,type 
+0x24d0 004777 sub pdata ,17 ,null 
+0x24d1 004778 rtn positive 
+0x24d2 004779 force type_dh1 ,type 
+0x24d3 004780 sub pdata ,27 ,null 
+0x24d4 004781 rtn positive 
+0x24d5 004782 force type_dm3 ,type 
+0x24d6 004783 sub pdata ,121 ,null 
+0x24d7 004784 rtn positive 
+0x24d8 004785 force type_dh3 ,type 
+0x24d9 004786 sub pdata ,183 ,null 
+0x24da 004787 rtn positive 
+0x24db 004788 force type_dm5 ,type 
+0x24dc 004789 sub pdata ,224 ,null 
+0x24dd 004790 rtn positive 
+0x24de 004791 force type_dh5 ,type 
+0x24df 004792 rtn 
+:      004793 tx_l2cap_type_edr:
+0x24e0 004794 force type_dm1 ,type 
+0x24e1 004795 sub pdata ,17 ,null 
+0x24e2 004796 rtn positive 
+0x24e3 004797 force type_dh1 ,type 
+0x24e4 004798 sub pdata ,54 ,null 
+0x24e5 004799 rtn positive 
+0x24e6 004800 force type_dm3 ,type 
+0x24e7 004801 arg 367 ,temp 
+0x24e8 004802 isub temp ,null 
+0x24e9 004803 nrtn positive 
+0x24ea 004804 force type_dm5 ,type 
+0x24eb 004805 arg 679 ,temp 
+0x24ec 004806 isub temp ,null 
+0x24ed 004807 nrtn positive 
+0x24ee 004808 force type_dh5 ,type 
+0x24ef 004809 rtn 
+:      004818 slave_receive_master_slot:
+0x24f0 004819 fetch 1 ,mem_state 
+0x24f1 004820 bbit0 state_insniff ,slave_receive_notsniff 
+0x24f2 004821 fetch 2 ,mem_tsniff 
+0x24f3 004822 branch slave_receive_notsniff ,blank 
+0x24f4 004823 nbranch slave_receive_sniff ,attempt 
+:      004824 slave_receive_notsniff:
+0x24f5 004825 call rf_setup_time_master_slot 
+:      004826 slave_receive_access:
+0x24f6 004827 add clke_bt ,1 ,bt_clk 
+:      004828 slave_receive_sniff:
+0x24f7 004829 enable swfine 
+0x24f8 004830 fetch 2 ,mem_rx_window 
+0x24f9 004831 rshift pdata ,pdata 
+0x24fa 004832 arg param_pll_setup ,temp 
+0x24fb 004833 iadd temp ,pdata 
+0x24fc 004834 call ahead_window 
+0x24fd 004835 call fetch_extm_bt_adr 
+0x24fe 004836 force 0x03 ,freq_mode 
+0x24ff 004837 call rx_radio_freq 
+0x2500 004838 call init_rx_packet_flags 
+0x2501 004839 call prep_crypt 
+0x2502 004840 bpatch patch0a_0 ,mem_patch0a 
+0x2503 004841 fetch 2 ,mem_rx_window 
+0x2504 004842 rshift pdata ,pdata 
+0x2505 004843 call ahead_window 
+0x2506 004844 call start_receiver 
+0x2507 004845 enable decode_fec0 
+0x2508 004846 fetch 2 ,mem_rx_window 
+0x2509 004847 arg param_clke_cal ,temp 
+0x250a 004848 iadd temp ,stop_watch 
+0x250b 004849 correlate null ,timeout 
+0x250c 004850 copy clke ,temp 
+0x250d 004851 storet 6 ,mem_sync_clke 
+0x250e 004852 disable decode_fec0 
+0x250f 004853 nrtn sync 
+0x2510 004854 arg param_clke_cal ,clke_rt 
+0x2511 004855 copy bt_clk ,clke_bt 
+0x2512 004856 branch lpm_adjust_clk ,wake 
+0x2513 004857 rtn 
+:      004860 slave_conn_recv_packet:
+0x2514 004861 bpatch patch0a_1 ,mem_patch0a 
+0x2515 004862 call slave_receive_master_slot 
+0x2516 004863 nbranch shutdown_radio ,sync 
+0x2517 004864 call save_rssi 
+0x2518 004865 bmark0 mark_testmode ,receive_packet 
+0x2519 004866 fetch 2 ,mem_tst_pktcnt_sync 
+0x251a 004867 increase 1 ,pdata 
+0x251b 004868 store 2 ,mem_tst_pktcnt_sync 
+:      004869 receive_packet:
+0x251c 004870 rshift bt_clk ,temp 
+0x251d 004871 or temp ,0x40 ,white_init 
+:      004872 receive_packet_whitened:
+0x251e 004873 bpatch patch0a_2 ,mem_patch0a 
+0x251f 004874 enable enable_white 
+0x2520 004875 enable enable_hec 
+0x2521 004876 enable decode_fec1 
+0x2522 004877 parse demod ,bucket ,3 
+0x2523 004878 rshift8 pwindow ,pdata 
+0x2524 004879 store 1 ,mem_temp_am_addr 
+0x2525 004880 parse demod ,bucket ,4 
+0x2526 004881 inject bucket ,7 
+0x2527 004882 copy pwindow ,pdata 
+0x2528 004883 store 1 ,mem_rx_type 
+0x2529 004884 parse demod ,bucket ,3 
+0x252a 004885 rshift8 pwindow ,pdata 
+0x252b 004886 store 1 ,mem_temp_arq 
+0x252c 004887 fetch 1 ,mem_rx_type 
+0x252d 004888 sub pdata ,3 ,null 
+0x252e 004889 branch receive_packet_noedr ,positive 
+0x252f 004890 beq 7 ,receive_packet_noedr 
+0x2530 004891 fetch 1 ,mem_state_map 
+0x2531 004892 isolate1 smap_edr ,pdata 
+0x2532 004893 setflag true ,psk ,radio_ctrl 
+:      004894 receive_packet_noedr:
+0x2533 004895 bpatch patch0a_3 ,mem_patch0a 
+0x2534 004896 parse demod ,bucket ,8 
+0x2535 004897 disable decode_fec1 
+0x2536 004898 disable enable_hec 
+0x2537 004899 branch error_header ,crc_failed 
+0x2538 004900 bmark0 mark_testmode ,receive_packet_amchk 
+0x2539 004901 fetch 2 ,mem_tst_pktcnt_hec 
+0x253a 004902 increase 1 ,pdata 
+0x253b 004903 store 2 ,mem_tst_pktcnt_hec 
+:      004904 receive_packet_amchk:
+0x253c 004905 bpatch patch0a_4 ,mem_patch0a 
+0x253d 004906 fetch 1 ,mem_temp_am_addr 
+0x253e 004907 compare 0 ,pdata ,0x07 
+0x253f 004908 setflag true ,mark_am_addr_broadcast ,mark 
+0x2540 004909 branch am_addr_ok ,true 
+0x2541 004910 icompare 0x07 ,am_addr 
+0x2542 004911 branch am_addr_match ,true 
+0x2543 004912 bmark0 mark_esco ,end_of_packet 
+0x2544 004913 fetcht 1 ,mem_saved_amaddr 
+0x2545 004914 icompare 0x7 ,temp 
+0x2546 004915 nbranch end_of_packet ,true 
+0x2547 004916 fetch 1 ,mem_arq 
+0x2548 004917 set0 arqnx ,pdata 
+0x2549 004918 set1 flowx ,pdata 
+0x254a 004919 store 1 ,mem_arq 
+:      004920 am_addr_match:
+0x254b 004921 enable match 
+:      004922 am_addr_ok:
+0x254c 004923 bpatch patch0a_5 ,mem_patch0a 
+0x254d 004924 fetch 1 ,mem_rx_type 
+0x254e 004925 icopy type 
+0x254f 004926 bmark1 mark_am_addr_broadcast ,arqn_bypass 
+0x2550 004927 fetcht 1 ,mem_temp_arq 
+0x2551 004928 fetch 1 ,mem_arq 
+0x2552 004929 set0 flow ,pdata 
+0x2553 004930 isolate1 flow ,temp 
+0x2554 004931 setflag true ,flow ,pdata 
+0x2555 004932 isolate1 arqn ,temp 
+0x2556 004933 setflag true ,arqn ,pdata 
+0x2557 004934 store 1 ,mem_arq 
+0x2558 004935 isolate0 arqn ,temp 
+0x2559 004936 branch arqn_bypass ,true 
+0x255a 004937 call clear_got_tx 
+:      004938 arqn_bypass:
+0x255b 004939 bpatch patch0a_6 ,mem_patch0a 
+0x255c 004940 arg 0 ,temp 
+0x255d 004941 call reserve_slot 
+0x255e 004942 and type ,0xf ,pdata 
+0x255f 004943 beq type_poll ,process_poll 
+0x2560 004944 beq type_null ,end_of_packet 
+0x2561 004945 beq type_fhs ,process_fhs 
+0x2562 004946 fetcht 1 ,mem_temp_arq 
+0x2563 004947 fetch 1 ,mem_arq 
+0x2564 004948 icompare 0x04 ,temp 
+0x2565 004949 nbranch rx_type_dispatch ,true 
+0x2566 004950 bmark0 mark_am_addr_broadcast ,failed_seqn 
+0x2567 004951 bbit0 bcast1 ,rx_type_dispatch 
+:      004952 failed_seqn:
+0x2568 004953 set1 mark_old_packet ,mark 
+:      004954 rx_type_dispatch:
+0x2569 004955 bpatch patch0a_7 ,mem_patch0a 
+0x256a 004956 deposit type 
+0x256b 004957 beq type_dm1 ,process_dm1 
+0x256c 004958 beq type_dh1 ,process_dh1 
+0x256d 004959 beq type_hv3 ,process_hev 
+0x256e 004960 beq type_3dh1 ,process_3dh1 
+0x256f 004961 arg 4 ,temp 
+0x2570 004962 call reserve_slot 
+0x2571 004963 beq type_dm3 ,process_dm3 
+0x2572 004964 beq type_dh3 ,process_dh3 
+0x2573 004965 arg 8 ,temp 
+0x2574 004966 call reserve_slot 
+0x2575 004967 beq type_dm5 ,process_dm5 
+0x2576 004968 beq type_dh5 ,process_dh5 
+0x2577 004969 rtn 
+:      004972 process_hev:
+0x2578 004973 bpatch patch0b_0 ,mem_patch0b 
+0x2579 004974 enable decode_fec0 
+0x257a 004975 enable enable_crc 
+0x257b 004976 enable encrypt 
+0x257c 004977 arg mem_sco_ibuf ,contw 
+0x257d 004978 force 30 ,loopcnt 
+:      004979 process_hev_loop:
+0x257e 004980 parse demod ,bucket ,8 
+0x257f 004981 rshift3 pwindow ,pdata 
+0x2580 004982 istore 1 ,contw 
+0x2581 004983 loop process_hev_loop 
+0x2582 004984 bmark0 mark_esco ,end_of_packet 
+0x2583 004985 parse demod ,bucket ,16 
+0x2584 004986 nsetflag crc_failed ,mark_esco_rxok ,mark 
+0x2585 004987 branch error_payload ,crc_failed 
+0x2586 004988 branch ack_payload 
+:      004991 process_poll:
+0x2587 004992 branch end_of_packet 
+:      004994 process_dm3:
+:      004995 process_dm5:
+0x2588 004996 set1 mark_longpacket ,mark 
+:      004997 process_dm1:
+0x2589 004998 enable decode_fec2 
+0x258a 004999 branch process_dmh 
+:      005001 process_dh3:
+:      005002 process_dh5:
+0x258b 005003 set1 mark_longpacket ,mark 
+:      005004 process_3dh1:
+0x258c 005005 set1 psk3m ,radio_ctrl 
+:      005006 process_dh1:
+0x258d 005007 enable decode_fec0 
+:      005008 process_dmh:
+0x258e 005009 bpatch patch0b_1 ,mem_patch0b 
+0x258f 005010 bmark1 mark_rxbuf_inuse ,end_of_packet 
+0x2590 005011 isolate0 psk ,radio_ctrl 
+0x2591 005012 branch process_dmh_noedr ,true 
+0x2592 005013 disable enable_white 
+0x2593 005014 enable decode_fec0 
+0x2594 005015 disable decode_fec2 
+0x2595 005016 add clkn_bt ,2 ,timeup 
+0x2596 005017 correlate clkn_bt ,meet 
+0x2597 005018 nbranch error_payload ,sync 
+0x2598 005019 set1 mark_longpacket ,mark 
+0x2599 005020 enable enable_white 
+:      005021 process_dmh_noedr:
+0x259a 005022 bpatch patch0b_2 ,mem_patch0b 
+0x259b 005023 enable encrypt 
+0x259c 005024 enable enable_crc 
+0x259d 005025 parse demod ,bucket ,3 
+0x259e 005026 rshift8 pwindow ,pdata 
+0x259f 005027 store 1 ,mem_lch_code 
+0x25a0 005028 parse demod ,bucket ,5 
+0x25a1 005029 bmark1 mark_longpacket ,process_dmh_long 
+0x25a2 005030 rshift3 pwindow ,loopcnt 
+0x25a3 005031 rshift3 loopcnt ,loopcnt 
+0x25a4 005032 branch process_dmh_common 
+:      005033 process_dmh_long:
+0x25a5 005034 parse demod ,bucket ,5 
+0x25a6 005035 rshift pwindow ,loopcnt 
+0x25a7 005036 parse demod ,bucket ,3 
+:      005037 process_dmh_common:
+0x25a8 005038 bpatch patch0b_3 ,mem_patch0b 
+0x25a9 005039 deposit loopcnt 
+0x25aa 005040 store 2 ,mem_len 
+0x25ab 005041 branch process_dmh_data_end ,blank 
+0x25ac 005042 isub mask3ff ,null 
+0x25ad 005043 branch error_payload ,positive 
+0x25ae 005044 bpatch patch0b_4 ,mem_patch0b 
+0x25af 005045 set0 mark_fhs_eir ,mark 
+0x25b0 005046 fetch 1 ,mem_lch_code 
+0x25b1 005047 and_into 0x03 ,pdata 
+0x25b2 005048 arg mem_rxbuf ,contw 
+0x25b3 005049 beq llid_lmp ,process_lmp 
+0x25b4 005050 bmark1 mark_testmode ,process_dmh_data 
+0x25b5 005052 fetch 1 ,mem_lch_code 
+0x25b6 005053 and_into 0x03 ,pdata 
+0x25b7 005054 beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
+0x25b8 005055 beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
+0x25b9 005056 branch error_payload 
+:      005058 process_lmp:
+0x25ba 005059 fetch 2 ,mem_len 
+0x25bb 005060 sub pdata ,0x70 ,null 
+0x25bc 005061 nbranch error_payload ,positive 
+0x25bd 005062 bmark1 mark_old_packet ,ack_payload 
+0x25be 005063 branch process_dmh_data 
+:      005066 process_dmh_data_l2cap_start_pkt:
+0x25bf 005067 bpatch patch0b_5 ,mem_patch0b 
+0x25c0 005068 bmark1 mark_old_packet ,ack_payload 
+0x25c1 005069 fetch 2 ,mem_len 
+0x25c2 005070 arg 0x2e0 ,temp 
+0x25c3 005071 isub temp ,null 
+0x25c4 005072 branch error_payload ,positive 
+0x25c5 005073 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x25c6 005074 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
+0x25c7 005075 bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
+0x25c8 005076 branch end_of_packet 
+:      005077 process_dmh_data_into_buff1:
+0x25c9 005078 jam 1 ,mem_l2cap_rxbuff_new 
+0x25ca 005079 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25cb 005080 bne 0 ,end_of_packet 
+0x25cc 005081 arg mem_l2cap_rxbuff1 ,contw 
+0x25cd 005082 branch process_dmh_data 
+:      005083 process_dmh_data_into_buff2:
+0x25ce 005084 jam 2 ,mem_l2cap_rxbuff_new 
+0x25cf 005085 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25d0 005086 bne 0 ,end_of_packet 
+0x25d1 005087 arg mem_l2cap_rxbuff2 ,contw 
+0x25d2 005088 branch process_dmh_data 
+:      005090 process_dmh_data_l2cap_continue_pkt:
+0x25d3 005091 bpatch patch0b_6 ,mem_patch0b 
+0x25d4 005092 bmark1 mark_old_packet ,ack_payload 
+0x25d5 005093 fetch 2 ,mem_len 
+0x25d6 005094 arg 0x2e0 ,temp 
+0x25d7 005095 isub temp ,null 
+0x25d8 005096 branch error_payload ,positive 
+0x25d9 005097 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25da 005098 beq 1 ,process_dmh_data_l2cap_continue_pkt1 
+0x25db 005099 beq 2 ,process_dmh_data_l2cap_continue_pkt2 
+0x25dc 005100 branch end_of_packet 
+:      005101 process_dmh_data_l2cap_continue_pkt1:
+0x25dd 005102 arg mem_l2cap_rxbuff1 ,contw 
+0x25de 005103 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25df 005104 iadd contw ,contw 
+0x25e0 005105 branch process_dmh_data 
+:      005106 process_dmh_data_l2cap_continue_pkt2:
+0x25e1 005107 arg mem_l2cap_rxbuff2 ,contw 
+0x25e2 005108 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25e3 005109 iadd contw ,contw 
+:      005110 process_dmh_data:
+0x25e4 005111 parse demod ,bucket ,8 
+0x25e5 005112 rshift3 pwindow ,pdata 
+0x25e6 005113 istore 1 ,contw 
+0x25e7 005114 loop process_dmh_data 
+:      005115 process_dmh_data_end:
+0x25e8 005116 bpatch patch0b_7 ,mem_patch0b 
+0x25e9 005117 parse demod ,bucket ,16 
+0x25ea 005118 branch error_payload_crc ,crc_failed 
+0x25eb 005119 fetch 1 ,mem_l2cap_flow_ctrl_flag 
+0x25ec 005120 beq l2cap_flow_ctrl_enable ,end_of_packet 
+0x25ed 005121 bmark1 mark_testmode ,process_dmh_cont 
+0x25ee 005122 bmark1 mark_old_packet ,redundant_payload 
+0x25ef 005123 fetch 1 ,mem_lch_code 
+0x25f0 005124 compare 3 ,pdata ,3 
+0x25f1 005125 branch process_dmh_cont ,true 
+0x25f2 005126 fetch 2 ,mem_len 
+0x25f3 005127 branch process_dmh_cont ,blank 
+0x25f4 005128 bpatch patch0c_0 ,mem_patch0c 
+0x25f5 005129 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25f6 005130 beq 1 ,process_l2cap_pass_crc_buff1 
+0x25f7 005131 beq 2 ,process_l2cap_pass_crc_buff2 
+0x25f8 005132 branch assert 
+:      005133 process_l2cap_pass_crc_buff1:
+0x25f9 005134 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25fa 005135 fetcht 2 ,mem_len 
+0x25fb 005136 iadd temp ,pdata 
+0x25fc 005137 store 2 ,mem_l2cap_rxbuff1_len 
+0x25fd 005138 beq 0 ,assert 
+0x25fe 005139 fetcht 2 ,mem_l2cap_rxbuff1 
+0x25ff 005140 increase 4 ,temp 
+0x2600 005141 isub temp ,null 
+0x2601 005142 call l2cap_buff1_inuse ,zero 
+0x2602 005143 branch process_dmh_cont 
+:      005144 process_l2cap_pass_crc_buff2:
+0x2603 005145 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x2604 005146 fetcht 2 ,mem_len 
+0x2605 005147 iadd temp ,pdata 
+0x2606 005148 store 2 ,mem_l2cap_rxbuff2_len 
+0x2607 005149 beq 0 ,assert 
+0x2608 005150 fetcht 2 ,mem_l2cap_rxbuff2 
+0x2609 005151 add temp ,4 ,temp 
+0x260a 005152 isub temp ,null 
+0x260b 005153 call l2cap_buff2_inuse ,zero 
+0x260c 005154 branch process_dmh_cont 
+:      005155 process_dmh_cont:
+0x260d 005156 bpatch patch0c_1 ,mem_patch0c 
+0x260e 005157 fetcht 1 ,mem_state_map 
+0x260f 005158 fetch 1 ,mem_lch_code 
+0x2610 005159 compare 3 ,pdata ,0x03 
+0x2611 005160 setflag true ,smap_rxlmp ,temp 
+0x2612 005161 nsetflag true ,smap_rxl2cap ,temp 
+0x2613 005162 storet 1 ,mem_state_map 
+0x2614 005163 nbranch process_dmh_cont_rxbuf_not_use ,true 
+0x2615 005164 set1 mark_rxbuf_inuse ,mark 
+:      005165 process_dmh_cont_rxbuf_not_use:
+0x2616 005166 bmark0 mark_testmode ,ack_payload 
+0x2617 005167 isolate1 smap_rxlmp ,temp 
+0x2618 005168 branch ack_payload ,true 
+0x2619 005169 fetch 2 ,mem_tst_pktcnt_crc 
+0x261a 005170 increase 1 ,pdata 
+0x261b 005171 store 2 ,mem_tst_pktcnt_crc 
+0x261c 005172 set1 mark_loopback ,mark 
+0x261d 005173 set0 smap_rxl2cap ,temp 
+0x261e 005174 set0 mark_rxbuf_inuse ,mark 
+0x261f 005175 storet 1 ,mem_state_map 
+:      005176 ack_payload:
+0x2620 005177 bpatch patch0c_2 ,mem_patch0c 
+0x2621 005178 fetcht 1 ,mem_temp_arq 
+0x2622 005179 fetch 1 ,mem_arq 
+0x2623 005180 set1 arqnx ,pdata 
+0x2624 005181 isolate1 seqn ,temp 
+0x2625 005182 setflag true ,seqn ,pdata 
+0x2626 005183 isolate1 mark_am_addr_broadcast ,mark 
+0x2627 005184 setflag true ,bcast1 ,pdata 
+0x2628 005185 store 1 ,mem_arq 
+0x2629 005186 fetch 2 ,mem_len 
+0x262a 005187 nbranch end_of_packet ,blank 
+0x262b 005188 fetch 1 ,mem_state_map 
+0x262c 005189 set0 smap_rxl2cap ,pdata 
+0x262d 005190 store 1 ,mem_state_map 
+0x262e 005191 fetch 1 ,mem_lch_code 
+0x262f 005192 compare 0x01 ,pdata ,0x07 
+0x2630 005194 branch end_of_packet 
+:      005196 error_header:
+0x2631 005197 bpatch patch0c_3 ,mem_patch0c 
+0x2632 005198 disable match 
+0x2633 005199 fetch 2 ,mem_rx_hec_err 
+0x2634 005200 increase 1 ,pdata 
+0x2635 005201 store 2 ,mem_rx_hec_err 
+0x2636 005202 branch end_of_packet 
+:      005203 error_payload_crc:
+0x2637 005204 fetch 2 ,mem_rx_crc_err 
+0x2638 005205 increase 1 ,pdata 
+0x2639 005206 store 2 ,mem_rx_crc_err 
+0x263a 005207 call discard_pkt 
+0x263b 005208 bmark0 mark_testmode ,error_payload 
+0x263c 005209 set1 mark_loopback ,mark 
+:      005210 error_payload:
+0x263d 005211 branch end_of_packet 
+:      005213 discard_pkt:
+0x263e 005214 bpatch patch0c_4 ,mem_patch0c 
+0x263f 005215 fetch 1 ,mem_lch_code 
+0x2640 005216 compare 3 ,pdata ,0x03 
+0x2641 005217 nbranch discard_pkt_l2cap ,true 
+:      005218 discard_pkt_lmp:
+0x2642 005219 fetcht 1 ,mem_state_map 
+0x2643 005220 set0 smap_rxlmp ,temp 
+0x2644 005221 storet 1 ,mem_state_map 
+0x2645 005222 rtn 
+:      005223 discard_pkt_l2cap:
+0x2646 005226 fetcht 1 ,mem_state_map 
+0x2647 005227 set0 smap_rxl2cap ,temp 
+0x2648 005228 storet 1 ,mem_state_map 
+0x2649 005229 branch h4_send_acl_trigger_clear 
+:      005231 redundant_payload:
+0x264a 005232 fetch 1 ,mem_arq 
+0x264b 005233 set1 arqnx ,pdata 
+0x264c 005234 store 1 ,mem_arq 
+:      005235 end_of_packet:
+0x264d 005236 bpatch patch0c_5 ,mem_patch0c 
+0x264e 005237 disable encode_fec0 
+0x264f 005238 disable encode_fec2 
+0x2650 005239 disable decode_fec0 
+0x2651 005240 disable decode_fec2 
+0x2652 005241 disable enable_crc 
+0x2653 005242 disable encrypt 
+0x2654 005243 disable enable_white 
+0x2655 005244 branch shutdown_radio ,is_rx 
+0x2656 005245 until null ,tx_clear 
+0x2657 005246 nop 100 
+0x2658 005247 branch shutdown_radio 
+:      005249 process_fhs:
+0x2659 005250 bpatch patch0c_6 ,mem_patch0c 
+0x265a 005251 enable enable_crc 
+0x265b 005252 enable decode_fec2 
+0x265c 005253 parse demod ,bucket ,72 
+0x265d 005254 isolate1 58 ,pdata 
+0x265e 005255 setflag true ,mark_fhs_eir ,mark 
+0x265f 005256 copy bt_adr ,temp 
+0x2660 005257 ialigned bt_adr 
+0x2661 005258 ialigned fhs0 
+0x2662 005259 pulse recalc 
+0x2663 005260 setsect 2 ,0xfffff 
+0x2664 005261 setsect 3 ,0x0ffff 
+0x2665 005262 nop 32 
+0x2666 005263 iverify fhs_parity 
+0x2667 005264 deposit lap 
+0x2668 005265 store 3 ,extm_lap 
+0x2669 005266 deposit uap 
+0x266a 005267 store 1 ,extm_uap 
+0x266b 005268 copy temp ,bt_adr 
+0x266c 005269 branch fhs_parity_ok ,true 
+0x266d 005270 branch error_payload 
+:      005271 fhs_parity_ok:
+0x266e 005272 bpatch patch0c_7 ,mem_patch0c 
+0x266f 005273 parse demod ,bucket ,72 
+0x2670 005274 ialigned fhs1 
+0x2671 005275 ialigned am_addr 
+0x2672 005276 ialigned nap 
+0x2673 005277 ialigned regb 
+0x2674 005278 force 0 ,pdata 
+0x2675 005279 parse demod ,bucket ,16 
+0x2676 005280 branch error_payload ,crc_failed 
+0x2677 005281 setarg 0x0ffffffc 
+0x2678 005282 iand regb ,pdata 
+0x2679 005283 store 4 ,mem_clke_bt 
+0x267a 005284 deposit fhs_class 
+0x267b 005285 store 3 ,extm_class 
+0x267c 005286 deposit fhs_misc 
+0x267d 005287 store 1 ,extm_fhs_misc 
+0x267e 005288 deposit am_addr 
+0x267f 005289 store 1 ,extm_newconn_am_addr 
+0x2680 005290 deposit nap 
+0x2681 005291 store 2 ,extm_nap 
+0x2682 005292 deposit bt_clk 
+0x2683 005293 inject rxf ,32 
+0x2684 005294 compare type_fhs ,type ,0x0f 
+0x2685 005295 setflag true ,mark_fhs_already_good ,mark 
+0x2686 005296 branch end_of_packet 
+:      005298 clear_got_tx:
+0x2687 005299 bpatch patch0d_0 ,mem_patch0d 
+0x2688 005300 fetch 1 ,mem_arq 
+0x2689 005301 rtnbit0 wack 
+0x268a 005302 set0 wack ,pdata 
+0x268b 005303 setflip seqnx ,pdata 
+0x268c 005304 store 1 ,mem_arq 
+0x268d 005305 fetch 1 ,mem_last_type 
+0x268e 005306 beq type_lmp ,clear_got_txlmp 
+0x268f 005307 rtneq type_hv3 
+0x2690 005308 fetch 1 ,mem_op 
+0x2691 005309 rtnbit0 op_txl2cap ,pdata 
+0x2692 005310 set0 op_txl2cap ,pdata 
+0x2693 005311 set1 op_pkt_comp ,pdata 
+0x2694 005312 store 1 ,mem_op 
+0x2695 005313 set0 mark_tx_l2cap ,mark 
+0x2696 005314 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x2697 005315 nrtn blank 
+0x2698 005316 fetch 1 ,mem_op 
+0x2699 005317 set0 op_pkt_comp ,pdata 
+0x269a 005318 store 1 ,mem_op 
+0x269b 005319 branch l2cap_malloc_free 
+:      005321 clear_got_txlmp:
+0x269c 005322 bpatch patch0d_1 ,mem_patch0d 
+0x269d 005323 fetch 1 ,mem_lmo_header_opcode 
+0x269e 005324 rshift pdata ,pdata 
+0x269f 005325 beq lmp_start_encryption_req ,start_encryption 
+0x26a0 005326 beq lmp_stop_encryption_req ,stop_encryption 
+0x26a1 005327 beq lmp_unsniff_req ,sniff_exit 
+0x26a2 005328 beq lmp_escape ,clear_lmp_escape 
+0x26a3 005329 rtnne lmp_accepted 
+0x26a4 005330 fetch 1 ,mem_lmo_payload 
+0x26a5 005331 beq lmp_sco_link_req ,sco_link_req_by_slave 
+0x26a6 005332 beq lmp_start_encryption_req ,clear_send_setup_complete 
+0x26a7 005333 rtn 
+:      005335 clear_lmp_escape:
+0x26a8 005336 fetch 1 ,mem_lmo_payload 
+0x26a9 005337 set1 7 ,pdata 
+0x26aa 005338 rtn 
+:      005339 clear_send_setup_complete:
+0x26ab 005340 rtn master 
+0x26ac 005341 fetch 1 ,mem_state 
+0x26ad 005342 rtnbit1 state_conn_comp 
+0x26ae 005343 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x26af 005344 rtn 
+:      005347 sco_link_req_by_slave:
+0x26b0 005348 rtn master 
+0x26b1 005349 fetch 1 ,mem_mode 
+0x26b2 005350 isolate1 send_sco_when_slave ,pdata 
+0x26b3 005351 branch clean_mem_mode ,true 
+0x26b4 005353 rtn 
+:      005354 clean_mem_mode:
+0x26b5 005355 set0 send_sco_when_slave ,pdata 
+0x26b6 005356 store 1 ,mem_mode 
+0x26b7 005357 rtn 
+:      005359 start_encryption:
+0x26b8 005360 bpatch patch0d_2 ,mem_patch0d 
+0x26b9 005361 fetch 1 ,mem_state_map 
+0x26ba 005362 set1 smap_encryption ,pdata 
+0x26bb 005363 store 1 ,mem_state_map 
+0x26bc 005364 jam 1 ,core_encrypt 
+0x26bd 005365 fetch 1 ,mem_state 
+0x26be 005366 isolate1 state_conn_comp ,pdata 
+0x26bf 005367 rtn 
+:      005369 stop_encryption:
+0x26c0 005370 bpatch patch0d_3 ,mem_patch0d 
+0x26c1 005371 fetch 1 ,mem_state_map 
+0x26c2 005372 set0 smap_encryption ,pdata 
+0x26c3 005373 store 1 ,mem_state_map 
+0x26c4 005374 jam 0 ,core_encrypt 
+0x26c5 005375 rtn 
+:      005378 sniff_init:
+0x26c6 005379 bpatch patch0d_4 ,mem_patch0d 
+0x26c7 005380 copy clkn_bt ,pdata 
+0x26c8 005381 store 4 ,mem_lpm_delay_after_sniff 
+0x26c9 005382 add clkn_bt ,3 ,rega 
+0x26ca 005383 branch sniff_init_master ,master 
+0x26cb 005384 add clke_bt ,3 ,rega 
+:      005385 sniff_init_master:
+0x26cc 005386 fetcht 2 ,mem_tsniff 
+0x26cd 005387 deposit rega 
+0x26ce 005388 set0 27 ,pdata 
+0x26cf 005389 idiv temp 
+0x26d0 005390 fetch 2 ,mem_dsniff 
+0x26d1 005391 call wait_div_end 
+0x26d2 005392 remainder regc 
+0x26d3 005393 isub regc ,pdata 
+0x26d4 005394 branch sniff_init_nowrap ,positive 
+0x26d5 005395 iadd temp ,pdata 
+:      005396 sniff_init_nowrap:
+0x26d6 005397 iadd rega ,pdata 
+0x26d7 005398 store 4 ,mem_sniff_anchor 
+0x26d8 005399 jam switch_flag_init ,mem_switch_flag 
+0x26d9 005400 fetch 1 ,mem_state 
+0x26da 005401 set1 state_insniff ,pdata 
+0x26db 005402 store 1 ,mem_state 
+0x26dc 005403 fetch 1 ,mem_sniff_attempt 
+0x26dd 005404 store 1 ,mem_current_sniff_attempt 
+0x26de 005405 setarg 0 
+0x26df 005406 store 3 ,mem_sniff_rcv 
+0x26e0 005407 store 3 ,mem_sniff_lost 
+0x26e1 005408 store 1 ,mem_sniff_unint_lost 
+0x26e2 005409 jam bt_evt_enter_sniff ,mem_fifo_temp 
+0x26e3 005410 call ui_ipc_send_event 
+0x26e4 005411 fetch 2 ,mem_rx_window_sniff 
+0x26e5 005412 store 2 ,mem_rx_window 
+0x26e6 005413 nrtn master 
+0x26e7 005414 add am_addr ,-1 ,queue 
+0x26e8 005415 rtn 
+:      005417 sniff_exit:
+0x26e9 005418 bpatch patch0d_5 ,mem_patch0d 
+0x26ea 005419 fetch 1 ,mem_state 
+0x26eb 005420 rtnbit0 state_insniff 
+0x26ec 005421 set0 state_insniff ,pdata 
+0x26ed 005422 store 1 ,mem_state 
+0x26ee 005423 fetch 2 ,mem_rx_window_init 
+0x26ef 005424 store 2 ,mem_rx_window 
+0x26f0 005425 disable wake 
+0x26f1 005426 jam bt_evt_exit_sniff ,mem_fifo_temp 
+0x26f2 005427 branch ui_ipc_send_event 
+:      005430 check_attempt:
+0x26f3 005431 bpatch patch0d_6 ,mem_patch0d 
+0x26f4 005432 enable attempt 
+0x26f5 005433 fetch 1 ,mem_state 
+0x26f6 005434 bbit1 state_insniff ,check_attempt_sniff 
+0x26f7 005435 rtnmark1 mark_testmode 
+0x26f8 005436 fetch 1 ,mem_arq 
+0x26f9 005437 rtnbit1 wack 
+0x26fa 005438 fetch 1 ,mem_lmp_to_send 
+0x26fb 005439 nrtn blank 
+0x26fc 005440 fetch 1 ,mem_op 
+0x26fd 005441 rtnbit1 op_txl2cap 
+:      005442 check_attempt_nomore:
+0x26fe 005443 force 0 ,pdata 
+0x26ff 005444 rtn 
+:      005446 check_attempt_sniff:
+0x2700 005447 bbit0 state_insco ,check_attempt_not_sco 
+0x2701 005448 fetch 1 ,mem_current_sniff_attempt 
+0x2702 005449 beq 2 ,check_attempt_sniff_restore_sco 
+0x2703 005450 fetch 1 ,mem_arq 
+0x2704 005451 bbit1 wack ,check_attempt_notimeout 
+0x2705 005452 bmark0 mark_esco_rxok ,check_attempt_notimeout 
+:      005453 check_attempt_sniff_restore_sco:
+0x2706 005454 nbranch check_attempt_notimeout ,master 
+0x2707 005455 fetch 1 ,mem_lmp_to_send 
+0x2708 005456 nbranch check_attempt_notimeout ,blank 
+:      005457 check_attempt_sco_master:
+0x2709 005458 fetch 1 ,mem_sco_poll 
+0x270a 005459 increase -1 ,pdata 
+0x270b 005460 store 1 ,mem_sco_poll 
+0x270c 005461 nbranch check_attempt_nomore ,blank 
+0x270d 005462 jam param_sco_poll ,mem_sco_poll 
+0x270e 005463 branch check_attempt_notimeout 
+:      005470 check_attempt_not_sco:
+0x270f 005471 fetch 1 ,mem_current_sniff_attempt 
+0x2710 005472 bne 1 ,check_attempt_notimeout 
+0x2711 005473 fetch 1 ,mem_current_sniff_timeout 
+0x2712 005474 branch check_attempt_notimeout ,blank 
+0x2713 005475 increase -1 ,pdata 
+0x2714 005476 store 1 ,mem_current_sniff_timeout 
+0x2715 005477 fetch 1 ,mem_arq 
+0x2716 005478 rtnbit1 wack 
+0x2717 005479 nrtn match 
+:      005480 check_attempt_notimeout:
+0x2718 005481 fetch 1 ,mem_current_sniff_attempt 
+0x2719 005482 increase -1 ,pdata 
+0x271a 005483 store 1 ,mem_current_sniff_attempt 
+0x271b 005484 rtn 
+:      005495 sniff_check_window:
+0x271c 005496 bpatch patch0d_7 ,mem_patch0d 
+0x271d 005497 disable swfine 
+0x271e 005498 copy temp ,stop_watch 
+0x271f 005499 call context_search_sniff_window 
+0x2720 005500 disable user 
+0x2721 005501 nrtn zero 
+0x2722 005502 force 0 ,stop_watch 
+0x2723 005503 enable user 
+0x2724 005504 rtn 
+:      005507 check_esco_amaddr:
+0x2725 005508 fetch 1 ,mem_esco_addr 
+0x2726 005509 icompare 0xff ,am_addr 
+0x2727 005510 rtn 
+:      005513 parse_l2cap:
+0x2728 005514 bpatch patch0e_0 ,mem_patch0e 
+0x2729 005515 set0 mark_rxbuf_inuse ,mark 
+:      005516 parse_l2cap_cont:
+0x272a 005517 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x272b 005518 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x272c 005519 rtn blank 
+0x272d 005520 isolate1 l2cap_inuse_buff1 ,pdata 
+0x272e 005521 arg mem_l2cap_rxbuff1 ,contr 
+0x272f 005522 call process_rx_l2cap_pkt ,true 
+0x2730 005523 bpatch patch0e_1 ,mem_patch0e 
+0x2731 005524 fetch 1 ,mem_l2cap_rx_done 
+0x2732 005525 beq l2cap_rx_done ,parse_l2cap_release_buff1 
+0x2733 005527 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x2734 005528 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2735 005529 rtnbit0 l2cap_inuse_buff2 
+0x2736 005530 arg mem_l2cap_rxbuff2 ,contr 
+0x2737 005531 call process_rx_l2cap_pkt 
+0x2738 005532 fetch 1 ,mem_l2cap_rx_done 
+0x2739 005533 beq l2cap_rx_done ,parse_l2cap_release_buff2 
+0x273a 005534 rtn 
+:      005536 parse_l2cap_release_buff1:
+0x273b 005537 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x273c 005538 set0 l2cap_inuse_buff1 ,pdata 
+0x273d 005539 store 1 ,mem_l2cap_rxbuff_inuse 
+0x273e 005540 setarg 0 
+0x273f 005541 store 2 ,mem_l2cap_rxbuff1_len 
+0x2740 005542 rtn 
+:      005543 parse_l2cap_release_buff2:
+0x2741 005544 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2742 005545 set0 l2cap_inuse_buff2 ,pdata 
+0x2743 005546 store 1 ,mem_l2cap_rxbuff_inuse 
+0x2744 005547 setarg 0 
+0x2745 005548 store 2 ,mem_l2cap_rxbuff2_len 
+0x2746 005549 rtn 
+:      005551 l2cap_buff1_inuse:
+0x2747 005552 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2748 005553 set1 l2cap_inuse_buff1 ,pdata 
+0x2749 005554 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274a 005555 rtn 
+:      005557 l2cap_buff2_inuse:
+0x274b 005558 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x274c 005559 set1 l2cap_inuse_buff2 ,pdata 
+0x274d 005560 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274e 005561 rtn 
+:      005567 slave_send_access:
+0x274f 005568 bpatch patch0e_2 ,mem_patch0e 
+0x2750 005569 add clke_bt ,1 ,bt_clk 
+0x2751 005570 call fetch_extm_bt_adr 
+0x2752 005571 force 0x03 ,freq_mode 
+0x2753 005572 call tx_radio_freq 
+0x2754 005573 call start_transmitter 
+0x2755 005574 call start_tx_external 
+0x2756 005575 branch send_access_word 
+:      005578 slave_conn_send_packet:
+0x2757 005579 bpatch patch0e_3 ,mem_patch0e 
+0x2758 005580 call rf_setup_time_slave_slot 
+0x2759 005581 deposit clke_bt 
+0x275a 005582 fetcht 4 ,mem_next_btclk 
+0x275b 005583 isub temp ,pdata 
+0x275c 005584 rtnne 1 
+0x275d 005585 compare type_null ,type ,0x1f 
+0x275e 005586 nbranch slave_conn_send_access ,true 
+0x275f 005587 fetch 1 ,mem_rx_type 
+0x2760 005588 rtn blank 
+:      005589 slave_conn_send_access:
+0x2761 005590 call slave_send_access 
+:      005591 transmit_packet:
+0x2762 005592 compare type_id ,type ,0x1f 
+0x2763 005593 branch end_of_packet ,true 
+0x2764 005594 rshift bt_clk ,temp 
+0x2765 005595 or temp ,0x40 ,white_init 
+:      005596 transmit_packet_whitened:
+0x2766 005597 bpatch patch0e_4 ,mem_patch0e 
+0x2767 005598 enable enable_white 
+0x2768 005599 enable enable_hec 
+0x2769 005600 enable encode_fec1 
+0x276a 005601 set0 mark_longpacket ,mark 
+0x276b 005602 deposit am_addr 
+0x276c 005603 inject mod ,3 
+0x276d 005604 deposit type 
+0x276e 005605 inject mod ,4 
+0x276f 005606 fetch 1 ,mem_arq 
+0x2770 005607 inject bucket ,4 
+0x2771 005608 inject mod ,3 
+0x2772 005609 enable enable_parity 
+0x2773 005610 inject mod ,8 
+0x2774 005611 disable encode_fec1 
+0x2775 005612 disable enable_parity 
+0x2776 005613 disable enable_hec 
+0x2777 005614 set0 psk3m ,radio_ctrl 
+0x2778 005615 arg 0 ,temp 
+0x2779 005616 call reserve_slot 
+0x277a 005617 bpatch patch0e_5 ,mem_patch0e 
+0x277b 005618 and type ,0x1f ,pdata 
+0x277c 005619 beq type_lmp ,transmit_lmp 
+0x277d 005620 beq type_null ,end_of_packet 
+0x277e 005621 beq type_poll ,end_of_packet 
+0x277f 005622 beq type_fhs ,transmit_fhs 
+0x2780 005623 beq type_dm1 ,transmit_dm1 
+0x2781 005624 beq type_dh1 ,transmit_dh1 
+0x2782 005625 beq type_hv3 ,transmit_hev 
+0x2783 005626 beq type_3dh1 ,transmit_3dh1 
+0x2784 005627 arg 4 ,temp 
+0x2785 005628 call reserve_slot 
+0x2786 005629 beq type_dm3 ,transmit_dm3 
+0x2787 005630 beq type_dh3 ,transmit_dh3 
+0x2788 005631 arg 8 ,temp 
+0x2789 005632 call reserve_slot 
+0x278a 005633 beq type_dh5 ,transmit_dh5 
+0x278b 005634 branch transmit_dm5 
+:      005637 transmit_hev:
+0x278c 005638 bpatch patch0e_6 ,mem_patch0e 
+0x278d 005639 enable encode_fec0 
+0x278e 005640 enable enable_crc 
+0x278f 005641 enable encrypt 
+0x2790 005642 force 30 ,loopcnt 
+0x2791 005643 arg mem_sco_obuf ,contr 
+:      005644 transmit_ev_loop:
+0x2792 005645 ifetch 1 ,contr 
+0x2793 005646 inject mod ,8 
+0x2794 005647 loop transmit_ev_loop 
+0x2795 005648 bmark1 mark_esco ,transmit_end 
+0x2796 005649 branch end_of_packet 
+:      005651 transmit_fhs:
+0x2797 005652 bpatch patch0e_7 ,mem_patch0e 
+0x2798 005653 fetch 1 ,mem_fhs_am_addr 
+0x2799 005654 icopy am_addr 
+0x279a 005655 fetch 1 ,mem_fhs_misc 
+0x279b 005656 icopy fhs_misc 
+0x279c 005657 fetch 3 ,mem_class 
+0x279d 005658 icopy fhs_class 
+0x279e 005659 fetch 2 ,mem_nap 
+0x279f 005660 icopy nap 
+0x27a0 005661 enable enable_crc 
+0x27a1 005662 enable encode_fec2 
+0x27a2 005663 copy bt_adr ,rega 
+0x27a3 005664 call fetch_self_bt_adr 
+0x27a4 005665 pulse recalc 
+0x27a5 005666 nop 32 
+0x27a6 005667 copy bt_clk ,timeup 
+0x27a7 005668 fetch 4 ,mem_clkn_bt 
+0x27a8 005669 icopy bt_clk 
+0x27a9 005670 preload fhs0 
+0x27aa 005671 set1 58 ,pdata 
+0x27ab 005672 inject mod ,72 
+0x27ac 005673 preload fhs1 
+0x27ad 005674 inject mod ,72 
+0x27ae 005675 copy timeup ,bt_clk 
+0x27af 005676 copy rega ,bt_adr 
+0x27b0 005677 enable enable_parity 
+0x27b1 005678 inject mod ,16 
+0x27b2 005679 disable enable_parity 
+0x27b3 005680 branch end_of_packet 
+:      005682 transmit_lmp:
+0x27b4 005683 bpatch patch0f_0 ,mem_patch0f 
+0x27b5 005684 enable encrypt 
+0x27b6 005685 enable enable_crc 
+0x27b7 005686 enable encode_fec2 
+0x27b8 005687 fetch 1 ,mem_lmo_header_length 
+0x27b9 005688 and pdata ,0x1f8 ,temp 
+0x27ba 005689 arg mem_lmo_header_length ,contr 
+0x27bb 005690 increase 8 ,temp 
+:      005691 transmit_lmp_loop:
+0x27bc 005692 add temp ,-72 ,regc 
+0x27bd 005693 nbranch transmit_lmp_finish ,positive 
+0x27be 005694 ifetch 9 ,contr 
+0x27bf 005695 inject mod ,72 
+0x27c0 005696 copy regc ,temp 
+0x27c1 005697 branch transmit_lmp_loop 
+:      005698 transmit_lmp_finish:
+0x27c2 005699 ifetch 9 ,contr 
+0x27c3 005700 iinject mod ,temp 
+0x27c4 005701 branch transmit_end 
+:      005703 transmit_dm1:
+0x27c5 005704 enable encode_fec2 
+0x27c6 005705 branch transmit_dmh 
+:      005706 transmit_dm3:
+:      005707 transmit_dm5:
+0x27c7 005708 enable encode_fec2 
+0x27c8 005709 set1 mark_longpacket ,mark 
+0x27c9 005710 branch transmit_dmh 
+:      005712 transmit_3dh1:
+0x27ca 005713 set1 psk3m ,radio_ctrl 
+:      005714 transmit_dh1:
+0x27cb 005715 enable encode_fec0 
+0x27cc 005716 branch transmit_dmh 
+:      005718 transmit_dh3:
+:      005719 transmit_dh5:
+0x27cd 005720 set1 psk3m ,radio_ctrl 
+0x27ce 005721 enable encode_fec0 
+0x27cf 005722 set1 mark_longpacket ,mark 
+:      005724 transmit_dmh:
+0x27d0 005725 bpatch patch0f_1 ,mem_patch0f 
+0x27d1 005726 fetch 1 ,mem_state_map 
+0x27d2 005727 bbit0 smap_edr ,transmit_noedr 
+0x27d3 005728 sub type ,3 ,null 
+0x27d4 005729 branch transmit_noedr ,positive 
+0x27d5 005730 disable encrypt 
+0x27d6 005731 disable encode_fec2 
+0x27d7 005732 enable encode_fec0 
+0x27d8 005733 disable enable_white 
+0x27d9 005734 set1 psk ,radio_ctrl 
+0x27da 005735 isolate1 psk3m ,radio_ctrl 
+0x27db 005736 branch transmit_edr3m ,true 
+0x27dc 005737 setarg 0xabeee 
+0x27dd 005738 inject mod ,20 
+0x27de 005739 branch transmit_edr_sync_end 
+:      005740 transmit_edr3m:
+0x27df 005741 setarg 0x5faeba 
+0x27e0 005742 inject mod ,24 
+0x27e1 005743 setarg 0x12 
+0x27e2 005744 inject mod ,6 
+:      005745 transmit_edr_sync_end:
+0x27e3 005746 enable enable_white 
+0x27e4 005747 set1 mark_longpacket ,mark 
+:      005748 transmit_noedr:
+0x27e5 005749 enable encrypt 
+0x27e6 005750 enable enable_crc 
+0x27e7 005751 bmark1 mark_loopback ,transmit_loopback 
+0x27e8 005752 fetch 1 ,mem_tx_lch 
+0x27e9 005753 inject mod ,3 
+0x27ea 005754 fetch 2 ,mem_tx_len 
+0x27eb 005755 iforce loopcnt 
+0x27ec 005756 bmark1 mark_longpacket ,transmit_long 
+0x27ed 005757 inject mod ,5 
+0x27ee 005758 branch transmit_stuff 
+:      005759 transmit_long:
+0x27ef 005760 inject mod ,13 
+:      005761 transmit_stuff:
+0x27f0 005762 deposit loopcnt 
+0x27f1 005763 branch transmit_end ,blank 
+0x27f2 005764 fetch 2 ,mem_txptr 
+0x27f3 005765 iforce contr 
+:      005766 transmit_stuff_loop:
+0x27f4 005767 ifetch 1 ,contr 
+0x27f5 005768 inject mod ,8 
+0x27f6 005769 loop transmit_stuff_loop 
+:      005772 transmit_end:
+0x27f7 005773 enable enable_parity 
+0x27f8 005774 inject mod ,16 
+0x27f9 005775 disable enable_parity 
+0x27fa 005776 call set_wait_ack 
+0x27fb 005777 fetch 1 ,mem_state_map 
+0x27fc 005778 bbit0 smap_edr ,end_of_packet 
+0x27fd 005779 force 0 ,pdata 
+0x27fe 005780 inject mod ,6 
+0x27ff 005781 branch end_of_packet 
+:      005784 transmit_loopback:
+0x2800 005785 bpatch patch0f_2 ,mem_patch0f 
+0x2801 005786 bmark1 mark_longpacket ,transmit_loopback_long 
+:      005787 transmit_loopback_short:
+0x2802 005788 fetch 1 ,mem_lch_code 
+0x2803 005789 inject mod ,3 
+0x2804 005790 fetch 1 ,mem_len 
+0x2805 005791 iforce regc 
+0x2806 005792 inject mod ,5 
+0x2807 005793 branch transmit_loopback_cont 
+:      005794 transmit_loopback_long:
+0x2808 005795 fetch 1 ,mem_lch_code 
+0x2809 005796 inject mod ,3 
+0x280a 005797 fetch 2 ,mem_len 
+0x280b 005798 iforce regc 
+0x280c 005799 inject mod ,13 
+:      005800 transmit_loopback_cont:
+0x280d 005801 arg mem_rxbuf ,contr 
+:      005802 transmit_loopback_loop:
+0x280e 005803 copy regc ,null 
+0x280f 005804 branch transmit_loopback_end ,zero 
+0x2810 005805 ifetch 1 ,contr 
+0x2811 005806 inject mod ,8 
+0x2812 005807 increase -1 ,regc 
+0x2813 005808 branch transmit_loopback_loop 
+:      005809 transmit_loopback_end:
+0x2814 005810 fetch 2 ,mem_tst_pktcnt_dmh 
+0x2815 005811 increase 1 ,pdata 
+0x2816 005812 store 2 ,mem_tst_pktcnt_dmh 
+0x2817 005813 branch transmit_end 
+:      005816 apply_switch_clke:
+0x2818 005817 fetch 4 ,mem_clke_bt 
+0x2819 005818 add pdata ,7 ,rega 
+0x281a 005819 fetch 2 ,mem_slot_offset 
+0x281b 005820 nbranch apply_switch_nozero ,blank 
+0x281c 005821 increase -3 ,rega 
+0x281d 005822 branch apply_switch_wait_loop 
+:      005823 apply_switch_nozero:
+0x281e 005824 mul32 pdata ,12 ,pdata 
+0x281f 005825 hfetcht 2 ,core_halfslot 
+0x2820 005826 increase 1 ,temp 
+:      005827 apply_switch_loop:
+0x2821 005828 isub temp ,pdata 
+0x2822 005829 nbranch apply_switch_bt ,positive 
+0x2823 005830 increase -1 ,rega 
+0x2824 005831 branch apply_switch_loop 
+:      005832 apply_switch_bt:
+0x2825 005833 sub pdata ,0 ,pdata 
+:      005834 apply_switch_wait_loop:
+0x2826 005835 until null ,oneslot 
+0x2827 005836 compare 0 ,clkn_bt ,3 
+0x2828 005837 nbranch apply_switch_wait_loop ,true 
+0x2829 005838 iforce clke_rt 
+0x282a 005839 copy rega ,clke_bt 
+0x282b 005840 iforce clke_rt 
+0x282c 005841 rtn 
+:      005844 calc_slot_offset:
+0x282d 005845 bpatch patch0f_3 ,mem_patch0f 
+0x282e 005846 until null ,halfslot 
+0x282f 005847 deposit clke 
+0x2830 005848 iforce contr 
+0x2831 005849 rshift16 ,pdata ,pdata 
+0x2832 005850 isub clkn_bt ,loopcnt 
+0x2833 005851 and_into 3 ,loopcnt 
+0x2834 005852 nbranch calc_bt_portion ,zero 
+0x2835 005853 force 0 ,pdata 
+0x2836 005854 branch calc_skip_bt 
+:      005855 calc_bt_portion:
+0x2837 005856 arg 3750 ,temp 
+0x2838 005857 force 0 ,pdata 
+:      005858 calc_slot_offset_loop:
+0x2839 005859 iadd temp ,pdata 
+0x283a 005860 loop calc_slot_offset_loop 
+:      005861 calc_skip_bt:
+0x283b 005862 iadd contr ,pdata 
+0x283c 005863 div pdata ,12 
+0x283d 005864 call wait_div_end 
+0x283e 005865 quotient pdata 
+0x283f 005866 store 2 ,mem_slot_offset 
+0x2840 005867 rtn 
+:      005869 calc_clke_offset:
+0x2841 005870 bpatch patch0f_4 ,mem_patch0f 
+0x2842 005871 deposit clke 
+0x2843 005872 copy clkn ,temp 
+0x2844 005873 isub temp ,null 
+0x2845 005874 nsetflag positive ,44 ,pdata 
+0x2846 005875 isub temp ,temp 
+0x2847 005876 setarg 3750 
+0x2848 005877 isolate0 15 ,temp 
+0x2849 005878 branch calc_clke_pos ,true 
+0x284a 005879 setarg -61786 
+0x284b 005880 iadd temp ,temp 
+:      005881 calc_clke_pos:
+0x284c 005882 storet 6 ,mem_le_clk_offset 
+0x284d 005883 rtn le 
+0x284e 005884 storet 6 ,mem_clk_offset 
+0x284f 005885 rtn 
+:      005887 calc_clke:
+0x2850 005888 disable clknt 
+0x2851 005889 fetch 6 ,mem_le_clk_offset 
+0x2852 005890 branch calc_clke2 ,le 
+0x2853 005891 fetch 6 ,mem_clk_offset 
+:      005892 calc_clke2:
+0x2854 005893 iadd clkn ,alarm 
+0x2855 005894 increase 10 ,alarm 
+0x2856 005895 setarg 3750 
+0x2857 005896 isub alarm ,pdata 
+0x2858 005897 isolate0 15 ,pdata 
+0x2859 005898 branch calc_clke_pos_adj ,true 
+0x285a 005899 setarg 0xf15a 
+0x285b 005900 iadd alarm ,alarm 
+:      005901 calc_clke_pos2:
+0x285c 005902 copy alarm ,clke 
+0x285d 005903 rtn 
+:      005904 calc_clke_pos_adj:
+0x285e 005905 force 0 ,null 
+0x285f 005906 branch calc_clke_pos2 
+:      005913 calc_radio_freq:
+0x2860 005914 bpatch patch0f_5 ,mem_patch0f 
+0x2861 005915 call set_sync_on 
+0x2862 005916 copy bt_clk ,pdata 
+0x2863 005917 and_into 0x180 ,pdata 
+0x2864 005918 compare 3 ,freq_mode ,0x07 
+0x2865 005919 nbranch freq_not_connection ,true 
+0x2866 005920 rshift3 pdata ,pdata 
+0x2867 005921 iadd freq_index ,pdata 
+0x2868 005922 branch do_hop_mod_now 
+:      005923 freq_not_connection:
+0x2869 005924 copy freq_index ,pdata 
+:      005925 do_hop_mod_now:
+0x286a 005926 div pdata ,79 
+0x286b 005927 pulse recalc 
+0x286c 005928 call wait_div_end 
+0x286d 005929 remainder rega 
+0x286e 005930 add rega ,-40 ,temp 
+0x286f 005931 branch odd_half ,positive 
+0x2870 005932 lshift rega ,temp 
+0x2871 005933 branch freq_result 
+:      005934 odd_half:
+0x2872 005935 lshift temp ,temp 
+0x2873 005936 increase 1 ,temp 
+:      005937 freq_result:
+0x2874 005938 bpatch patch0f_6 ,mem_patch0f 
+0x2875 005939 fetch 1 ,mem_mode 
+0x2876 005940 bbit0 afh_change ,afh_process_con 
+:      005941 afh_process_0:
+0x2877 005942 fetch 4 ,mem_afh_instant 
+0x2878 005943 isub bt_clk ,null 
+0x2879 005944 branch afh_process_con ,positive 
+0x287a 005945 call afh_clear 
+0x287b 005946 fetch 1 ,mem_afh_new_mod 
+0x287c 005947 rtn blank 
+0x287d 005948 fetch 1 ,mem_mode 
+0x287e 005949 set1 afh_enable ,pdata 
+0x287f 005950 store 1 ,mem_mode 
+0x2880 005951 fetch 5 ,mem_afh_map_new 
+0x2881 005952 store 5 ,mem_afh_map_lo 
+0x2882 005953 ifetch 5 ,contr 
+0x2883 005954 store 5 ,mem_afh_map_hi 
+0x2884 005955 call afh_process_freq_map 
+:      005956 afh_process_con:
+0x2885 005957 fetch 1 ,mem_mode 
+0x2886 005958 rtnbit0 afh_enable 
+0x2887 005959 isolate1 1 ,bt_clk 
+0x2888 005960 branch afh_same_channel ,true 
+0x2889 005961 rshift3 temp ,rega 
+0x288a 005962 and temp ,7 ,queue 
+0x288b 005963 setarg mem_afh_map_lo 
+0x288c 005964 iadd rega ,rega 
+0x288d 005965 ifetch 1 ,rega 
+0x288e 005966 qisolate0 pdata 
+0x288f 005967 branch afh_process_1 ,true 
+0x2890 005968 deposit temp 
+0x2891 005969 branch afh_process_end 
+:      005970 afh_process_1:
+0x2892 005971 fetch 1 ,mem_afh_used 
+0x2893 005972 iforce regb 
+0x2894 005973 deposit bt_clk 
+0x2895 005974 and_into 0x180 ,pdata 
+0x2896 005975 rshift3 pdata ,pdata 
+0x2897 005976 iadd freq_index ,pdata 
+0x2898 005977 idiv regb 
+0x2899 005978 setarg mem_afh_map 
+0x289a 005979 call wait_div_end 
+0x289b 005980 remainder rega 
+0x289c 005981 iadd rega ,contr 
+0x289d 005982 ifetch 1 ,contr 
+:      005983 afh_process_end:
+0x289e 005984 store 1 ,mem_afh_index 
+0x289f 005985 iforce temp 
+0x28a0 005986 rtn 
+:      005988 afh_same_channel:
+0x28a1 005989 fetch 1 ,mem_afh_index 
+0x28a2 005990 iforce temp 
+0x28a3 005991 rtn 
+:      005993 afh_clear:
+0x28a4 005994 fetch 1 ,mem_mode 
+0x28a5 005995 set0 afh_enable ,pdata 
+0x28a6 005996 set0 afh_change ,pdata 
+0x28a7 005997 store 1 ,mem_mode 
+0x28a8 005998 rtn 
+:      006004 afh_process_freq_map:
+0x28a9 006005 bpatch patch0f_7 ,mem_patch0f 
+0x28aa 006006 arg mem_afh_map ,contw 
+0x28ab 006007 force 10 ,loopcnt 
+0x28ac 006008 call memset0 
+0x28ad 006009 arg mem_afh_map ,contw 
+0x28ae 006010 force 0 ,regc 
+0x28af 006011 force 2 ,queue 
+:      006012 process_freq_3:
+0x28b0 006013 fetch 5 ,mem_afh_map_lo 
+0x28b1 006014 iforce temp 
+0x28b2 006015 compare 2 ,queue ,0xff 
+0x28b3 006016 branch process_freq_1 ,true 
+0x28b4 006017 rshift temp ,temp 
+:      006018 process_freq_1:
+0x28b5 006019 isolate0 0 ,temp 
+0x28b6 006020 branch process_freq_0 ,true 
+0x28b7 006021 deposit regc 
+0x28b8 006022 istore 1 ,contw 
+:      006023 process_freq_0:
+0x28b9 006024 rshift2 temp ,temp 
+0x28ba 006025 increase 2 ,regc 
+0x28bb 006026 compare 40 ,regc ,0xfe 
+0x28bc 006027 nbranch process_freq_2 ,true 
+0x28bd 006028 fetch 5 ,mem_afh_map_hi 
+0x28be 006029 iforce temp 
+0x28bf 006030 compare 2 ,queue ,0xff 
+0x28c0 006031 branch process_freq_2 ,true 
+0x28c1 006032 rshift temp ,temp 
+:      006033 process_freq_2:
+0x28c2 006034 sub regc ,78 ,null 
+0x28c3 006035 branch process_freq_1 ,positive 
+0x28c4 006036 force 1 ,regc 
+0x28c5 006037 increase -1 ,queue 
+0x28c6 006038 nbranch process_freq_3 ,zero 
+0x28c7 006039 arg mem_afh_map ,rega 
+0x28c8 006040 deposit contw 
+0x28c9 006041 isub rega ,pdata 
+0x28ca 006042 store 1 ,mem_afh_used 
+0x28cb 006043 rtn 
+:      006045 rx_radio_freq:
+0x28cc 006046 bpatch patch10_0 ,mem_patch10 
+0x28cd 006047 call calc_radio_freq 
+0x28ce 006048 fetch 1 ,mem_debug_config 
+0x28cf 006049 bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
+0x28d0 006050 fetcht 1 ,mem_rx_fixed_freq 
+:      006051 rx_radio_freq_now:
+0x28d1 006052 branch set_freq_rx 
+:      006055 tx_radio_freq:
+0x28d2 006056 bpatch patch10_1 ,mem_patch10 
+0x28d3 006057 call calc_radio_freq 
+0x28d4 006058 fetch 1 ,mem_debug_config 
+0x28d5 006059 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
+0x28d6 006060 fetcht 1 ,mem_tx_fixed_freq 
+:      006061 tx_radio_freq_now:
+0x28d7 006062 branch set_freq_tx 
+:      006065 fetch_giac:
+0x28d8 006066 force 0 ,uap 
+0x28d9 006067 fetch 3 ,mem_glap 
+0x28da 006068 iforce lap 
+0x28db 006069 rtn 
+:      006071 fetch_page_bt_adr:
+0x28dc 006072 bpatch patch10_2 ,mem_patch10 
+0x28dd 006073 fetch 1 ,mem_hci_puap 
+0x28de 006074 icopy uap 
+0x28df 006075 fetch 3 ,mem_hci_plap 
+0x28e0 006076 icopy lap 
+0x28e1 006077 rtn 
+:      006079 fetch_self_bt_adr:
+0x28e2 006080 bpatch patch10_3 ,mem_patch10 
+0x28e3 006081 fetch 2 ,mem_nap 
+0x28e4 006082 icopy nap 
+0x28e5 006083 fetch 1 ,mem_uap 
+0x28e6 006084 icopy uap 
+0x28e7 006085 fetch 3 ,mem_lap 
+0x28e8 006086 icopy lap 
+0x28e9 006087 rtn 
+:      006089 fetch_extm_bt_adr:
+0x28ea 006090 bpatch patch10_4 ,mem_patch10 
+0x28eb 006091 fetch 2 ,mem_pnap 
+0x28ec 006092 icopy nap 
+0x28ed 006093 fetch 1 ,mem_puap 
+0x28ee 006094 icopy uap 
+0x28ef 006095 fetch 3 ,mem_plap 
+0x28f0 006096 icopy lap 
+0x28f1 006097 rtn 
+:      006100 fetch_diac:
+0x28f2 006101 bmark1 mark_all_diac ,fetch_diac_do 
+0x28f3 006102 rtnmark0 mark_inquiry_state 
+0x28f4 006103 rtnmark0 mark_periodical_diac 
+:      006104 fetch_diac_do:
+0x28f5 006105 and_into -256 ,lap 
+0x28f6 006106 pulse recalc 
+0x28f7 006107 nop 32 
+0x28f8 006108 rtn 
+:      006111 shutdown_radio:
+0x28f9 006112 bpatch patch10_5 ,mem_patch10 
+0x28fa 006113 branch shutdown_radio0 ,is_rx 
+0x28fb 006114 jam 0xd4 ,rf_tx_pa_ib 
+0x28fc 006115 nop 4 
+0x28fd 006116 jam 0xd2 ,rf_tx_pa_ib 
+0x28fe 006117 nop 4 
+0x28ff 006118 jam 0xd1 ,rf_tx_pa_ib 
+0x2900 006119 nop 4 
+0x2901 006120 fetch 1 ,mem_tx_power 
+0x2902 006121 beq tx_power_0db ,shutdown_radio_0db 
+0x2903 006122 beq tx_power_3db ,shutdown_radio_3db 
+0x2904 006123 beq tx_power_5db ,shutdown_radio_5db 
+0x2905 006124 beq tx_power_f3db ,shutdown_radio_f3db 
+0x2906 006125 beq tx_power_f5db ,shutdown_radio_f5db 
+0x2907 006126 beq tx_power_pair ,shutdown_radio_pair 
+:      006127 shutdown_radio_5db:
+:      006128 shutdown_radio_0db:
+0x2908 006129 jam 0xd0 ,rf_tx_pa_ib 
+0x2909 006130 jam 0xe0 ,rf_tx_pa_gc 
+:      006131 shutdown_radio0:
+0x290a 006132 force 0 ,radio_ctrl 
+0x290b 006133 disable is_rx 
+0x290c 006134 disable is_tx 
+0x290d 006135 pulse packet_end 
+0x290e 006136 jam 0x0 ,rfen_mdm 
+0x290f 006137 jam 0x0 ,rfen_tx 
+0x2910 006138 jam 0x0 ,rfen_rx 
+0x2911 006139 jam 0 ,rfen_sn 
+0x2912 006140 jam 0x70 ,rfen_msc 
+0x2913 006141 jam 0x0 ,rfen_adc 
+0x2914 006142 rtn 
+:      006144 shutdown_radio_pair:
+:      006145 shutdown_radio_f5db:
+:      006146 shutdown_radio_f3db:
+:      006147 shutdown_radio_3db:
+0x2915 006148 jam 0xd0 ,rf_tx_pa_ib 
+0x2916 006149 jam 0xc0 ,rf_tx_pa_gc 
+0x2917 006150 branch shutdown_radio0 
+:      006152 set_sync_on:
+0x2918 006153 bpatch patch10_6 ,mem_patch10 
+0x2919 006154 jam 0x0 ,rfen_mdm 
+0x291a 006155 jam 0x0 ,rfen_tx 
+0x291b 006156 jam 0x18 ,rfen_rx 
+0x291c 006157 jam 0xa7 ,rfen_sn 
+0x291d 006158 jam 0x7f ,rfen_msc 
+0x291e 006159 rtn 
+:      006161 set_freq_rx:
+0x291f 006162 bpatch patch10_7 ,mem_patch10 
+0x2920 006164 storet 1 ,mem_last_freq 
+0x2921 006165 add temp ,rx_freq_offset ,rega 
+0x2922 006166 jam 0x07 ,rf_balun_ctrim 
+0x2923 006167 branch rf_write_freq 
+:      006168 rf_rx_enable:
+0x2924 006169 bpatch patch11_0 ,mem_patch11 
+0x2925 006170 jam 0xcf ,rfen_tx 
+0x2926 006171 nop 10 
+0x2927 006172 jam 0xff ,rfen_rx 
+0x2928 006173 jam 0xaf ,rfen_sn 
+0x2929 006174 jam 0xff ,rfen_msc 
+0x292a 006175 nop 10 
+0x292b 006176 jam 0xa0 ,rfen_mdm 
+0x292c 006177 rtn 
+:      006179 set_freq_tx_offset:
+0x292d 006180 fetch 1 ,mem_250k_freq_enable 
+0x292e 006181 branch set_freq_tx_2m_offset ,blank 
+:      006182 set_freq_tx_0m_offset:
+0x292f 006183 add temp ,2 ,rega 
+0x2930 006184 rtn 
+:      006185 set_freq_tx_2m_offset:
+0x2931 006186 add temp ,0 ,rega 
+0x2932 006187 rtn 
+:      006189 set_freq_tx:
+0x2933 006190 bpatch patch11_1 ,mem_patch11 
+0x2934 006191 storet 1 ,mem_last_freq 
+0x2935 006192 call set_freq_tx_offset 
+0x2936 006193 call rf_write_freq 
+0x2937 006194 setarg param_pll_setup 
+0x2938 006195 call sleep 
+:      006196 txon:
+0x2939 006197 jam 0x1 ,rfen_adc 
+0x293a 006198 jam 0x3c ,rfen_rx 
+0x293b 006199 jam 0xe0 ,rfen_tx 
+0x293c 006200 jam 0x12 ,rf_balun_ctrim 
+0x293d 006201 nop 10 
+0x293e 006202 jam 0x01 ,rfen_mdm 
+0x293f 006203 jam 0x3d ,rfen_mdm 
+0x2940 006204 nop 10 
+0x2941 006205 jam 0xb7 ,rfen_sn 
+0x2942 006206 nop 10 
+0x2943 006207 jam 0x7f ,rfen_mdm 
+:      006208 txon_power_select:
+0x2944 006209 fetch 1 ,mem_tx_power 
+0x2945 006210 beq tx_power_0db ,set_tx_power_0db 
+0x2946 006211 beq tx_power_3db ,set_tx_power_3db 
+0x2947 006212 beq tx_power_5db ,set_tx_power_5db 
+0x2948 006213 beq tx_power_f3db ,set_tx_power_f3db 
+0x2949 006214 beq tx_power_f5db ,set_tx_power_f5db 
+0x294a 006215 beq tx_power_pair ,set_tx_power_pair 
+:      006216 set_tx_power_0db:
+0x294b 006217 jam 0xf0 ,rf_tx_pa_gc 
+0x294c 006218 call txon_common 
+0x294d 006219 jam 0xd8 ,rf_tx_pa_ib 
+0x294e 006220 rtn 
+:      006222 set_tx_power_3db:
+0x294f 006223 jam 0xdf ,rf_tx_pa_gc 
+0x2950 006224 call txon_common 
+0x2951 006225 jam 0xdf ,rf_tx_pa_ib 
+0x2952 006226 rtn 
+:      006228 set_tx_power_5db:
+0x2953 006229 jam 0xff ,rf_tx_pa_gc 
+0x2954 006230 call txon_common 
+0x2955 006231 jam 0xdf ,rf_tx_pa_ib 
+0x2956 006232 rtn 
+:      006233 set_tx_power_f3db:
+0x2957 006234 jam 0xce ,rf_tx_pa_gc 
+0x2958 006235 call txon_common 
+0x2959 006236 jam 0xd8 ,rf_tx_pa_ib 
+0x295a 006237 rtn 
+:      006239 set_tx_power_f5db:
+0x295b 006240 jam 0xcb ,rf_tx_pa_gc 
+0x295c 006241 call txon_common 
+0x295d 006242 jam 0xd8 ,rf_tx_pa_ib 
+0x295e 006243 rtn 
+:      006245 set_tx_power_pair:
+0x295f 006246 jam 0xd0 ,rf_tx_pa_ib 
+0x2960 006247 jam 0xc0 ,rf_tx_pa_gc 
+0x2961 006248 jam 0x4c ,0x8957 
+0x2962 006249 jam 0x6c ,0x8958 
+0x2963 006250 jam 0x50 ,0x8959 
+0x2964 006251 rtn 
+:      006253 txon_common:
+0x2965 006254 nop 4 
+0x2966 006255 jam 0xd1 ,rf_tx_pa_ib 
+0x2967 006256 nop 4 
+0x2968 006257 jam 0xd2 ,rf_tx_pa_ib 
+0x2969 006258 nop 4 
+0x296a 006259 jam 0xd4 ,rf_tx_pa_ib 
+0x296b 006260 rtn 
+:      006263 initialize_radio:
+0x296c 006264 jam clksel_rc ,core_clksel 
+:      006265 initialize_radio_wait:
+0x296d 006266 fetch 2 ,mem_rf_init_ptr 
+0x296e 006267 bbit0 14 ,initialize_radio_wait 
+0x296f 006268 iforce contr 
+0x2970 006269 arg 0x8900 ,temp 
+:      006270 initialize_radio_loop:
+0x2971 006271 ifetch 1 ,contr 
+0x2972 006272 beq 0xff ,initialize_radio_cont 
+0x2973 006273 ior temp ,contw 
+0x2974 006274 ifetch 1 ,contr 
+0x2975 006275 istore 1 ,contw 
+0x2976 006276 branch initialize_radio_loop 
+:      006277 initialize_radio_cont:
+0x2977 006278 bpatch patch11_2 ,mem_patch11 
+0x2978 006279 call lpm_cal_xtal_startup 
+0x2979 006280 call switchto_dpllclk 
+0x297a 006282 setarg param_dpll_start_delay 
+0x297b 006283 iadd clkn_bt ,pdata 
+0x297c 006284 store 4 ,mem_dpll_clkn 
+0x297d 006285 set1 reset ,radio_ctrl 
+0x297e 006286 force 0 ,radio_ctrl 
+0x297f 006287 ncall do_rccal ,wake 
+0x2980 006288 branch set_rccal 
+:      006291 rf_write_freq:
+0x2981 006292 bpatch patch11_3 ,mem_patch11 
+0x2982 006293 setarg 2400 
+0x2983 006294 iadd rega ,temp 
+0x2984 006295 fetch 1 ,mem_fcomp_mul 
+0x2985 006296 jam 0x04 ,rf_pll_rstn 
+0x2986 006297 imul32 temp ,pdata 
+0x2987 006298 fetcht 1 ,mem_fcomp_div 
+0x2988 006299 idiv temp 
+0x2989 006300 call wait_div_end 
+0x298a 006301 quotient rega 
+0x298b 006302 remainder pdata 
+0x298c 006303 lshift16 pdata ,pdata 
+0x298d 006304 lshift4 pdata ,pdata 
+0x298e 006305 idiv temp 
+0x298f 006306 call wait_div_end 
+0x2990 006307 quotient pdata 
+0x2991 006308 lshift8 pdata ,pdata 
+0x2992 006309 lshift pdata ,pdata 
+0x2993 006310 ior rega ,pdata 
+0x2994 006311 hstore 4 ,rf_pll_intg 
+0x2995 006312 jam 0x44 ,rf_pll_rstn 
+0x2996 006313 jam 0xc4 ,rf_pll_rstn 
+0x2997 006314 rtn 
+:      006317 do_rccal:
+0x2998 006318 bpatch patch11_4 ,mem_patch11 
+0x2999 006319 jam 0x02 ,rfen_adc 
+0x299a 006320 setarg 250000 
+0x299b 006321 call sleep 
+0x299c 006322 jam 0x7f ,rfen_rx 
+0x299d 006323 nop 130 
+0x299e 006324 jam 0x30 ,rf_rccal_ctrl 
+0x299f 006325 jam 0xd0 ,rfen_tx 
+0x29a0 006326 jam 0x70 ,rf_rccal_ctrl 
+0x29a1 006327 jam 0xf0 ,rf_rccal_ctrl 
+0x29a2 006328 force 50 ,loopcnt 
+:      006329 do_rccal_loop:
+0x29a3 006330 hfetch 1 ,rf_rccal_result 
+0x29a4 006331 bbit1 5 ,do_rccal_end 
+0x29a5 006332 loop do_rccal_loop 
+:      006333 do_rccal_end:
+0x29a6 006334 store 1 ,mem_rf_rccal 
+0x29a7 006335 jam 0 ,rfen_tx 
+0x29a8 006336 jam 0 ,rfen_rx 
+0x29a9 006337 jam 0x00 ,rfen_adc 
+0x29aa 006338 rtn 
+:      006340 set_rccal:
+0x29ab 006341 bpatch patch11_5 ,mem_patch11 
+0x29ac 006342 fetch 1 ,mem_rf_rccal 
+0x29ad 006343 set1 5 ,pdata 
+0x29ae 006344 hstore 1 ,rf_rccal_ctrl 
+0x29af 006345 hfetcht 1 ,rf_bpf_ctrim 
+0x29b0 006346 and_into 7 ,temp 
+0x29b1 006347 lshift3 pdata ,pdata 
+0x29b2 006348 ior temp ,pdata 
+0x29b3 006349 hstore 1 ,rf_bpf_ctrim 
+0x29b4 006350 hfetch 1 ,rf_bpf_ib 
+0x29b5 006351 set0 bpf_rccal ,pdata 
+0x29b6 006352 hstore 1 ,rf_bpf_ib 
+0x29b7 006353 hfetch 1 ,rf_adc_rccal 
+0x29b8 006354 set0 adc_rccal ,pdata 
+0x29b9 006355 hstore 1 ,rf_adc_rccal 
+0x29ba 006356 rtn 
+:      006358 save_rssi:
+0x29bb 006359 bpatch patch11_6 ,mem_patch11 
+0x29bc 006360 hfetch 2 ,rf_afc_d2a 
+0x29bd 006361 rshift4 pdata ,pdata 
+0x29be 006362 rshift3 pdata ,pdata 
+0x29bf 006363 sub pdata ,0 ,pdata 
+:      006364 bcd:
+0x29c0 006365 and_into 0xff ,pdata 
+0x29c1 006366 div pdata ,10 
+0x29c2 006367 call wait_div_end 
+0x29c3 006368 quotient pdata 
+0x29c4 006369 lshift4 pdata ,pdata 
+0x29c5 006370 remainder temp 
+0x29c6 006371 ior temp ,pdata 
+0x29c7 006372 store 1 ,mem_rssi 
+0x29c8 006373 rtn 
+:      006376 switchto_dpllclk:
+0x29c9 006377 jam clksel_rc ,core_clksel 
+0x29ca 006378 hfetch 1 ,rf_clkpll_frac + 2 
+0x29cb 006379 set0 4 ,pdata 
+0x29cc 006380 set0 5 ,pdata 
+0x29cd 006381 hstore 1 ,rf_clkpll_frac + 2 
+0x29ce 006382 jam 0x00 ,rfen_ck 
+0x29cf 006383 jam 0x00 ,rfen_msc 
+0x29d0 006384 jam 0x70 ,rfen_msc 
+0x29d1 006385 jam 0xff ,rfen_ck 
+0x29d2 006386 hfetch 1 ,rf_clkpll_frac + 2 
+0x29d3 006387 set1 4 ,pdata 
+0x29d4 006388 set1 5 ,pdata 
+0x29d5 006389 hstore 1 ,rf_clkpll_frac + 2 
+0x29d6 006390 call init_lpm_ctrl 
+0x29d7 006391 hfetch 1 ,rf_clkpll_int 
+0x29d8 006392 set1 7 ,pdata 
+0x29d9 006393 hstore 1 ,rf_clkpll_int 
+0x29da 006394 set0 7 ,pdata 
+0x29db 006395 hstore 1 ,rf_clkpll_int 
+0x29dc 006396 set1 7 ,pdata 
+0x29dd 006397 hstore 1 ,rf_clkpll_int 
+0x29de 006398 jam clksel_dpll ,core_clksel 
+0x29df 006399 nop 1 
+0x29e0 006400 jam clksel_xtal ,core_clksel 
+0x29e1 006401 hfetch 1 ,rf_clkpll_frac + 2 
+0x29e2 006402 and_into 0xcf ,pdata 
+0x29e3 006403 hstore 1 ,rf_clkpll_frac + 2 
+0x29e4 006404 or_into 0x30 ,pdata 
+0x29e5 006405 hstore 1 ,rf_clkpll_frac + 2 
+0x29e6 006406 rtn 
+:      006409 xtal_fast_wake:
+0x29e7 006410 setarg 0xf0f 
+0x29e8 006411 branch lpm_write_config 
+:      006413 init_lpm_ctrl:
+0x29e9 006414 setarg 0x80f 
+0x29ea 006415 branch lpm_write_config 
+:      006419 start_receiver:
+0x29eb 006420 bpatch patch11_7 ,mem_patch11 
+0x29ec 006421 call rf_rx_enable 
+0x29ed 006422 disable is_tx 
+0x29ee 006423 enable is_rx 
+0x29ef 006424 pulse init_encrypt 
+0x29f0 006425 rtn 
+:      006427 prep_crypt:
+0x29f1 006428 bpatch patch12_0 ,mem_patch12 
+0x29f2 006429 fetch 1 ,mem_state_map 
+0x29f3 006430 isolate1 smap_encryption ,pdata 
+0x29f4 006431 setflag true ,0 ,pdata 
+0x29f5 006432 hstore 1 ,core_encrypt 
+0x29f6 006433 arg mem_kc ,contr 
+0x29f7 006434 ifetch 9 ,contr 
+0x29f8 006435 iforce kc_ls 
+0x29f9 006436 ifetch 7 ,contr 
+0x29fa 006437 iforce kc_ms 
+0x29fb 006438 fetch 1 ,mem_key_size 
+0x29fc 006439 add pdata ,-1 ,g1l 
+0x29fd 006440 pulse kc_p_activate 
+0x29fe 006441 rtn 
+:      006443 wait_access_end:
+0x29ff 006444 deposit clke 
+0x2a00 006445 store 6 ,mem_sync_clke 
+0x2a01 006446 disable decode_fec0 
+0x2a02 006447 nbranch shutdown_radio ,sync 
+0x2a03 006448 arg param_clke_cal ,clke_rt 
+0x2a04 006449 increase 1 ,clke_bt 
+0x2a05 006450 and_into 0x1fc ,clke_bt 
+0x2a06 006451 rtn 
+:      006455 wait_access_mhalfbnd:
+0x2a07 006456 enable decode_fec0 
+:      006457 wait_access_mhalfbnd_correlate:
+0x2a08 006458 correlate null ,mhalfbnd 
+0x2a09 006459 branch wait_access_end ,sync 
+0x2a0a 006460 compare 0x02 ,clke_bt ,0x02 
+0x2a0b 006461 nbranch wait_access_mhalfbnd_correlate ,true 
+0x2a0c 006462 branch wait_access_end 
+:      006464 wait_access_clkn_rt:
+0x2a0d 006465 bpatch patch12_1 ,mem_patch12 
+0x2a0e 006466 arg param_conn_access ,timeup 
+0x2a0f 006467 enable decode_fec0 
+0x2a10 006468 correlate clkn_rt ,meet 
+0x2a11 006469 disable decode_fec0 
+0x2a12 006470 nbranch shutdown_radio ,sync 
+0x2a13 006471 rtn 
+:      006473 wait_access_forever:
+0x2a14 006474 bpatch patch12_2 ,mem_patch12 
+0x2a15 006475 enable decode_fec0 
+0x2a16 006476 correlate null ,timeout 
+0x2a17 006477 disable decode_fec0 
+0x2a18 006478 nbranch shutdown_radio ,sync 
+0x2a19 006479 arg param_clke_cal ,clke_rt 
+0x2a1a 006480 and_into 0x1fc ,clke_bt 
+0x2a1b 006481 rtn 
+:      006484 reserve_slot:
+0x2a1c 006485 bpatch patch12_3 ,mem_patch12 
+0x2a1d 006486 iforce rega 
+0x2a1e 006487 deposit bt_clk 
+0x2a1f 006488 iadd temp ,timeup 
+0x2a20 006489 copy timeup ,pdata 
+0x2a21 006490 store 4 ,mem_next_btclk 
+0x2a22 006491 deposit rega 
+0x2a23 006492 rtn 
+:      006495 ahead_window:
+0x2a24 006496 copy pdata ,temp 
+0x2a25 006497 bpatch patch12_4 ,mem_patch12 
+0x2a26 006498 copy temp ,pdata 
+0x2a27 006499 call clk2bt 
+0x2a28 006500 lshift16 bt_clk ,pdata 
+0x2a29 006501 set1 44 ,pdata 
+0x2a2a 006502 call clk_diff 
+0x2a2b 006503 set0 44 ,pdata 
+0x2a2c 006504 call get_clk 
+0x2a2d 006505 call clk_diff 
+0x2a2e 006506 rtn user 
+0x2a2f 006507 call clk2rt 
+0x2a30 006508 iforce stop_watch 
+0x2a31 006509 until null ,timeout 
+0x2a32 006510 rtn 
+:      006513 setup_clk:
+0x2a33 006514 bpatch patch12_5 ,mem_patch12 
+0x2a34 006515 branch setup_clkn ,clknt 
+0x2a35 006516 until clke_rt ,meet 
+:      006517 skip_setup_clke:
+0x2a36 006518 copy clke_bt ,temp 
+0x2a37 006519 branch setup_clknbt 
+:      006520 setup_clkn:
+0x2a38 006521 branch skip_setup_clkn ,attempt 
+0x2a39 006522 until clkn_rt ,meet 
+:      006523 skip_setup_clkn:
+0x2a3a 006524 copy clkn_bt ,temp 
+:      006525 setup_clknbt:
+0x2a3b 006526 branch setup_clk11 ,user 
+0x2a3c 006527 compare 1 ,temp ,3 
+0x2a3d 006528 nbranch setup_clk ,true 
+:      006529 setup_complete:
+0x2a3e 006530 bpatch patch12_6 ,mem_patch12 
+0x2a3f 006531 fetch 1 ,mem_state 
+0x2a40 006532 rtnbit0 state_inconn 
+0x2a41 006533 fetch 4 ,mem_next_btclk 
+0x2a42 006534 isub temp ,pdata 
+0x2a43 006535 nrtn positive 
+0x2a44 006536 sub pdata ,0xff ,null 
+0x2a45 006537 branch setup_clk ,positive 
+0x2a46 006538 rtn 
+:      006539 setup_clk11:
+0x2a47 006540 compare 3 ,temp ,3 
+0x2a48 006541 nbranch setup_clk ,true 
+0x2a49 006542 branch setup_complete 
+:      006544 rf_setup_time:
+0x2a4a 006545 bpatch patch12_7 ,mem_patch12 
+0x2a4b 006546 arg param_rf_setup ,timeup 
+0x2a4c 006547 branch setup_clk 
+:      006549 rf_setup_time_slave_slot:
+0x2a4d 006550 disable user 
+0x2a4e 006551 branch rf_setup_time 
+:      006553 rf_setup_time_master_slot:
+0x2a4f 006554 enable user 
+0x2a50 006555 branch rf_setup_time 
+:      006557 start_transmitter:
+0x2a51 006558 bpatch patch13_0 ,mem_patch13 
+0x2a52 006559 call prep_crypt 
+0x2a53 006560 disable is_rx 
+0x2a54 006561 enable is_tx 
+0x2a55 006562 rtn 
+:      006566 start_tx_native:
+0x2a56 006567 bpatch patch13_1 ,mem_patch13 
+0x2a57 006568 arg param_tx_setup ,timeup 
+0x2a58 006569 until clkn_rt ,meet 
+0x2a59 006570 pulse init_encrypt 
+0x2a5a 006571 rtn 
+:      006573 start_rx_native:
+0x2a5b 006574 bpatch patch13_2 ,mem_patch13 
+0x2a5c 006575 arg param_rx_setup ,timeup 
+0x2a5d 006576 until clkn_rt ,meet 
+0x2a5e 006577 rtn 
+:      006580 start_tx_external:
+0x2a5f 006581 bpatch patch13_3 ,mem_patch13 
+0x2a60 006582 arg param_tx_setup ,timeup 
+0x2a61 006583 until clke_rt ,meet 
+0x2a62 006584 pulse init_encrypt 
+0x2a63 006585 rtn 
+:      006587 send_access_word:
+0x2a64 006588 bpatch patch13_4 ,mem_patch13 
+0x2a65 006589 preload access 
+0x2a66 006590 enable encode_fec0 
+0x2a67 006591 set1 txgfsk ,radio_ctrl 
+0x2a68 006592 inject mod ,72 
+0x2a69 006593 disable encode_fec0 
+0x2a6a 006594 rtn 
+:      006597 scan_mode_whiten:
+0x2a6b 006598 copy xin ,temp 
+0x2a6c 006599 or_into 0x60 ,temp 
+0x2a6d 006600 copy temp ,white_init 
+0x2a6e 006601 rtn 
+:      006606 get_free_amaddr:
+0x2a6f 006607 bpatch patch13_5 ,mem_patch13 
+0x2a70 006608 fetch 1 ,mem_current_amaddr 
+0x2a71 006609 increase 1 ,pdata 
+0x2a72 006610 bne param_esco_addr ,get_free_amaddr_cont 
+0x2a73 006611 force 1 ,pdata 
+:      006612 get_free_amaddr_cont:
+0x2a74 006613 store 1 ,mem_current_amaddr 
+0x2a75 006614 iforce am_addr 
+0x2a76 006615 rtn 
+:      006617 get_clk:
+0x2a77 006618 copy clkn ,temp 
+0x2a78 006619 rtn master 
+0x2a79 006620 copy clke ,temp 
+0x2a7a 006621 rtn 
+:      006623 get_clkbt:
+0x2a7b 006624 deposit clkn_bt 
+0x2a7c 006625 rtn master 
+0x2a7d 006626 deposit clke_bt 
+0x2a7e 006627 rtn 
+:      006630 supervision_update:
+0x2a7f 006631 bpatch patch13_6 ,mem_patch13 
+0x2a80 006632 fetcht 4 ,mem_supervision_timer 
+0x2a81 006633 call get_clkbt 
+0x2a82 006634 isub temp ,timeup 
+0x2a83 006635 deposit timeup 
+0x2a84 006636 fetcht 2 ,mem_supervision_to 
+0x2a85 006637 lshift temp ,temp 
+0x2a86 006638 isub temp ,pdata 
+0x2a87 006639 rtn 
+:      006641 supervision_flush:
+0x2a88 006642 bpatch patch13_7 ,mem_patch13 
+0x2a89 006643 call get_clkbt 
+0x2a8a 006644 store 4 ,mem_supervision_timer 
+0x2a8b 006645 rtn 
+:      006647 assert:
+0x2a8c 006648 bpatch patch14_0 ,mem_patch14 
+0x2a8d 006649 branch assert 
+:      006651 loop:
+0x2a8e 006652 branch loop 
+:      006654 sleep:
+0x2a8f 006655 rtn blank 
+0x2a90 006657 rshift pdata ,pdata 
+0x2a91 006658 increase -3 ,pdata 
+:      006659 sleep_loop:
+0x2a92 006660 increase -1 ,pdata 
+0x2a93 006661 nbranch sleep_loop ,zero 
+0x2a94 006662 force 0 ,pdata 
+0x2a95 006663 rtn 
+:      006667 init_param:
+0x2a96 006669 arg 0x10 ,loopcnt 
+0x2a97 006670 arg 0 ,contw 
+0x2a98 006671 call memset0 
+0x2a99 006672 arg mem_le_state ,contw 
+0x2a9a 006673 arg 10 ,loopcnt 
+0x2a9b 006674 call memset0 
+0x2a9c 006675 jam 0 ,mem_sp_calc 
+0x2a9d 006676 jam 0 ,mem_fifo_temp 
+0x2a9e 006677 jam 0 ,mem_le_testtype 
+0x2a9f 006678 jam 0 ,mem_debug_config 
+0x2aa0 006679 jam 0 ,mem_lmp_conn_state 
+0x2aa1 006680 bpatch patch14_1 ,mem_patch14 
+0x2aa2 006681 jam 0 ,mem_connection_options 
+0x2aa3 006682 jam 0 ,mem_tester_emulate 
+0x2aa4 006683 jam 0 ,mem_tester_cnt 
+0x2aa5 006684 setarg param_glap 
+0x2aa6 006685 store 3 ,mem_glap 
+0x2aa7 006686 setarg param_acl_pktlen 
+0x2aa8 006687 store 2 ,mem_acl_pktlen 
+0x2aa9 006688 jam param_sco_pktlen ,mem_sco_pktlen 
+0x2aaa 006689 jam param_acl_pktcnt ,mem_acl_pktcnt 
+0x2aab 006690 jam param_sco_pktcnt ,mem_sco_pktcnt 
+0x2aac 006691 setarg param_hci_version 
+0x2aad 006692 store 3 ,mem_hci_version 
+0x2aae 006697 jam 0x60 ,mem_fhs_misc 
+0x2aaf 006698 jam param_max_slot ,mem_max_slot 
+0x2ab0 006699 jam 0x02 ,mem_fw_ver 
+0x2ab1 006700 fetch 1 ,mem_ssp_enable 
+0x2ab2 006701 ncall init_memp ,blank 
+0x2ab3 006702 fetch 1 ,mem_le_secure_connect_enable 
+0x2ab4 006703 ncall init_memp_256 ,blank 
+0x2ab5 006704 bpatch patch14_2 ,mem_patch14 
+0x2ab6 006705 rtn wake 
+0x2ab7 006706 setarg 0 
+0x2ab8 006707 store 2 ,mem_tx_len 
+0x2ab9 006708 rshift clkn_bt ,pdata 
+0x2aba 006709 store 4 ,mem_last_clkn 
+0x2abb 006710 rtn 
+:      006717 lpmstate:
+0x2abc 006718 setarg 0xee21 
+0x2abd 006719 hstore 2 ,core_clkoff 
+0x2abe 006720 hfetch 4 ,core_gpio_in 
+0x2abf 006721 store 4 ,mem_saved_gpio_in 
+0x2ac0 006722 hfetch 1 ,core_lpm_ldocnt 
+0x2ac1 006723 store 1 ,mem_wakup_from_power_flag 
+0x2ac2 006724 bbit0 gpio_latch ,loadcode 
+0x2ac3 006725 enable wake 
+0x2ac4 006726 bbit0 cold_wake ,lpmwake 
+0x2ac5 006727 disable wake 
+0x2ac6 006728 deposit auxcnt 
+0x2ac7 006729 nbranch lpmwake ,blank 
+0x2ac8 006730 hfetch 1 ,core_lpm_ctrl + 3 
+0x2ac9 006731 bbit1 reload_code ,lpmwake 
+0x2aca 006732 arg param_hibernate_clks ,temp 
+0x2acb 006733 branch lpm_enter_sleep 
+:      006734 lpmwake:
+0x2acc 006735 hfetch 3 ,core_lpm_xtalcnt 
+0x2acd 006736 hstore 3 ,core_lpm_reg 
+0x2ace 006737 ifetch 1 ,contr 
+0x2acf 006738 or_into isogate_mask ,pdata 
+0x2ad0 006739 istore 1 ,contw 
+0x2ad1 006740 call lpm_write_ctrl2 
+0x2ad2 006741 hfetch 1 ,core_lpm_isogate 
+0x2ad3 006742 set1 enable_retmem ,pdata 
+0x2ad4 006743 hstore 1 ,core_lpm_isogate 
+0x2ad5 006744 call lpm_write_ctrl2 
+0x2ad6 006745 call lpm_load_context ,wake 
+0x2ad7 006746 hfetch 1 ,core_lpm_reg + 2 
+0x2ad8 006747 set0 gpio_latch ,pdata 
+0x2ad9 006748 hstore 1 ,core_lpm_reg + 2 
+0x2ada 006749 call lpm_write_ctrl2 
+0x2adb 006750 nbranch loadcode ,wake 
+0x2adc 006751 rtnmark0 mark_otp_encrypt 
+0x2add 006752 jam lock_otp ,core_misc_ctrl 
+0x2ade 006753 rtn 
+:      006755 lpm_load_context:
+0x2adf 006756 fetch 1 ,mem_saved_spidctrl 
+0x2ae0 006757 hstore 1 ,core_spid_ctrl 
+0x2ae1 006758 fetch 3 ,mem_saved_gsel 
+0x2ae2 006759 hstore 3 ,core_gpio_sel 
+0x2ae3 006760 fetch 4 ,mem_saved_gpio + 4 
+0x2ae4 006761 hstore 4 ,core_gpio_out0 
+0x2ae5 006762 fetch 4 ,mem_saved_gpio 
+0x2ae6 006763 hstore 4 ,core_gpio_oe0 
+0x2ae7 006764 fetch 8 ,mem_saved_gpio + 8 
+0x2ae8 006765 hstore 8 ,core_gpio_pu0 
+0x2ae9 006766 fetch 8 ,mem_saved_mark 
+0x2aea 006767 iforce mark 
+0x2aeb 006768 hfetch 8 ,core_gpio_wakeup_low 
+0x2aec 006769 store 8 ,mem_gpio_wakeup_low 
+0x2aed 006770 call load_ucode 
+0x2aee 006771 rtn 
+:      006773 lpm_save_context:
+0x2aef 006774 deposit mark 
+0x2af0 006775 store 8 ,mem_saved_mark 
+0x2af1 006776 hfetch 8 ,core_gpio_oe0 
+0x2af2 006777 store 8 ,mem_saved_gpio 
+0x2af3 006778 ifetch 8 ,contr 
+0x2af4 006779 istore 8 ,contw 
+0x2af5 006780 hfetch 3 ,core_gpio_sel 
+0x2af6 006781 store 3 ,mem_saved_gsel 
+0x2af7 006782 hfetch 1 ,core_spid_ctrl 
+0x2af8 006783 store 1 ,mem_saved_spidctrl 
+0x2af9 006784 branch lpm_write_gpio_wakeup 
+:      006786 lpo_calibration:
+0x2afa 006787 hfetch 1 ,core_bist_ctrl 
+0x2afb 006788 nbranch lpo_cal_inited ,blank 
+0x2afc 006789 fetch 3 ,mem_clks_per_lpo 
+0x2afd 006790 nrtn blank 
+0x2afe 006791 jam 0xc0 ,core_bist_ctrl 
+0x2aff 006792 jam ccnt_start ,core_misc_ctrl 
+:      006793 lpo_cal_inited:
+0x2b00 006794 hfetch 1 ,core_perf_status 
+0x2b01 006795 rtnbit0 1 
+0x2b02 006796 hfetch 3 ,core_clk_counter 
+0x2b03 006797 store 3 ,mem_clks_per_lpo 
+0x2b04 006798 rtn 
+:      006802 lpm_adjust_clk:
+0x2b05 006803 bpatch patch14_3 ,mem_patch14 
+0x2b06 006804 deposit clke 
+0x2b07 006805 call clk_diff_rt 
+0x2b08 006806 fetcht 4 ,mem_sleep_counter_all 
+0x2b09 006807 sub temp ,0xff ,null 
+0x2b0a 006808 rtn positive 
+0x2b0b 006809 lshift8 pdata ,pdata 
+0x2b0c 006810 lshift4 pdata ,pdata 
+0x2b0d 006811 idiv temp 
+0x2b0e 006812 call wait_div_end 
+0x2b0f 006813 quotient pdata 
+0x2b10 006814 arg param_lpm_adjmax ,temp 
+0x2b11 006815 call ceiling 
+0x2b12 006816 store 1 ,mem_lpm_adjust 
+0x2b13 006817 nbranch lpm_adjust_positive ,user 
+0x2b14 006818 sub pdata ,0 ,pdata 
+:      006819 lpm_adjust_positive:
+0x2b15 006820 fetcht 3 ,mem_clks_per_lpo 
+0x2b16 006821 iadd temp ,pdata 
+0x2b17 006822 store 3 ,mem_clks_per_lpo 
+:      006823 lpm_clear_counter:
+0x2b18 006824 setarg 0 
+0x2b19 006825 store 4 ,mem_sleep_counter_all 
+0x2b1a 006826 rtn 
+:      006830 lpm_doze:
+0x2b1b 006831 fetch 1 ,mem_lpm_config + 2 
+0x2b1c 006832 set1 reload_code ,pdata 
+0x2b1d 006833 store 1 ,mem_lpm_config + 2 
+0x2b1e 006834 branch lpm_hibernate_normal 
+:      006838 lpm_hibernate:
+0x2b1f 006839 arg param_hibernate_clks ,temp 
+0x2b20 006840 fetch 1 ,mem_lpm_config + 1 
+0x2b21 006841 set0 7 ,pdata 
+0x2b22 006842 store 1 ,mem_lpm_config + 1 
+:      006843 lpm_hibernate_normal:
+0x2b23 006844 bpatch patch14_4 ,mem_patch14 
+0x2b24 006845 call lpm_write_gpio_wakeup 
+0x2b25 006846 fetch 1 ,mem_lpm_hibernate_switch 
+0x2b26 006847 store 1 ,mem_lpm_xtalcnt + 4 
+0x2b27 006848 fetch 1 ,mem_lpm_xtalcnt + 2 
+0x2b28 006849 set1 cold_wake ,pdata 
+0x2b29 006850 store 1 ,mem_lpm_xtalcnt + 2 
+:      006853 lpm_sleep:
+0x2b2a 006854 bpatch patch14_5 ,mem_patch14 
+0x2b2b 006855 call xtal_fast_wake 
+0x2b2c 006856 fetch 4 ,mem_sleep_counter_all 
+0x2b2d 006857 iadd temp ,pdata 
+0x2b2e 006858 store 4 ,mem_sleep_counter_all 
+0x2b2f 006859 call lpm_save_context 
+0x2b30 006860 fetch 5 ,mem_lpm_xtalcnt 
+0x2b31 006861 hstore 4 ,core_lpm_reg 
+0x2b32 006862 rshift32 pdata ,rega 
+0x2b33 006863 until null ,lpo_edge 
+0x2b34 006864 deposit clkn 
+0x2b35 006865 store 6 ,mem_sleep_clkn 
+0x2b36 006866 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+0x2b37 006867 until null ,lpo_edge 
+0x2b38 006868 until null ,lpo_edge 
+0x2b39 006869 deposit rega 
+0x2b3a 006870 hstore 1 ,core_lpm_isogate 
+0x2b3b 006871 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+:      006872 lpm_enter_sleep:
+0x2b3c 006873 until null ,lpo_edge 
+0x2b3d 006874 until null ,lpo_edge 
+0x2b3e 006875 hstoret 4 ,core_lpm_reg 
+0x2b3f 006876 jam lpmreg_sel_counter ,core_lpm_wr 
+0x2b40 006877 until null ,never 
+:      006882 lpm_recover_clk:
+0x2b41 006883 bpatch patch14_6 ,mem_patch14 
+0x2b42 006884 setarg 0 
+0x2b43 006885 copy auxcnt ,null 
+0x2b44 006886 branch lpm_recover_timeout ,zero 
+0x2b45 006887 hfetch 1 ,core_lpm_xtalcnt 
+0x2b46 006888 hfetcht 1 ,core_lpm_buckcnt 
+0x2b47 006889 isub temp ,null 
+0x2b48 006890 branch lpm_recover_xtal ,positive 
+0x2b49 006891 deposit temp 
+:      006892 lpm_recover_xtal:
+0x2b4a 006893 isub auxcnt ,pdata 
+0x2b4b 006894 increase 1 ,pdata 
+:      006895 lpm_recover_timeout:
+0x2b4c 006896 increase 8 ,pdata 
+0x2b4d 006897 until null ,lpo_edge 
+0x2b4e 006898 iadd lpo_time ,pdata 
+0x2b4f 006899 fetcht 4 ,mem_sleep_counter 
+0x2b50 006900 iadd temp ,pdata 
+0x2b51 006901 fetcht 3 ,mem_clks_per_lpo 
+0x2b52 006902 imul32 temp ,pdata 
+0x2b53 006903 rshift8 pdata ,pdata 
+0x2b54 006904 rshift4 pdata ,pdata 
+0x2b55 006905 increase param_lpm_fix ,pdata 
+0x2b56 006906 arg 3750 ,temp 
+0x2b57 006907 idiv temp 
+0x2b58 006908 call wait_div_end 
+0x2b59 006909 quotient pdata 
+0x2b5a 006910 lshift16 pdata ,pdata 
+0x2b5b 006911 remainder temp 
+0x2b5c 006912 ior temp ,pdata 
+0x2b5d 006913 fetcht 6 ,mem_sleep_clkn 
+0x2b5e 006914 call clk_add 
+0x2b5f 006915 copy temp ,clkn 
+0x2b60 006916 fetch 6 ,mem_context + coffset_clk_offset 
+0x2b61 006917 call calc_clke2 
+0x2b62 006918 deposit clke 
+0x2b63 006919 store 6 ,mem_pdatatemp 
+0x2b64 006920 deposit auxcnt 
+0x2b65 006921 istore 1 ,contw 
+0x2b66 006922 hfetch 1 ,core_gpio_in1 
+0x2b67 006923 or_into 0xf0 ,pdata 
+0x2b68 006924 istore 1 ,contw 
+0x2b69 006925 rtn 
+:      006927 lpm_dispatch:
+0x2b6a 006928 bpatch patch14_7 ,mem_patch14 
+0x2b6b 006929 call lpo_calibration 
+0x2b6c 006930 fetch 3 ,mem_clks_per_lpo 
+0x2b6d 006931 rtn blank 
+0x2b6e 006932 fetch 1 ,mem_lpm_mode 
+0x2b6f 006933 rtn blank 
+0x2b70 006934 fetch 1 ,mem_ssp_enable 
+0x2b71 006935 branch lpm_dispatch_next ,blank 
+0x2b72 006936 fetch 1 ,mem_sp_local_key_invalid 
+0x2b73 006937 rtn blank 
+:      006938 lpm_dispatch_next:
+0x2b74 006939 fetch 1 ,mem_le_sc_calc 
+0x2b75 006940 nrtn blank 
+0x2b76 006941 call lpm_check_wake_lock 
+0x2b77 006942 nrtn blank 
+0x2b78 006943 fetch 1 ,mem_context 
+0x2b79 006944 compare 3 ,pdata ,0x7 
+0x2b7a 006945 nbranch lpm_dispatch_unconn ,true 
+0x2b7b 006946 fetch 2 ,mem_context + coffset_tsniff 
+0x2b7c 006947 rtn blank 
+0x2b7d 006948 rtn wake 
+0x2b7e 006949 bpatch patch15_0 ,mem_patch15 
+:      006950 lpm_dispatch_next2:
+0x2b7f 006951 fetcht 1 ,mem_lpm_current_mult 
+0x2b80 006952 fetch 2 ,mem_context + coffset_tsniff 
+0x2b81 006953 imul32 temp ,pdata 
+0x2b82 006954 rshift4 temp ,temp 
+0x2b83 006955 rshift2 temp ,temp 
+0x2b84 006956 isub temp ,pdata 
+0x2b85 006957 fetcht 4 ,mem_context + coffset_sniff_anchor 
+0x2b86 006958 iadd temp ,pdata 
+0x2b87 006959 fetcht 1 ,mem_lpm_overhead 
+0x2b88 006960 isub temp ,pdata 
+0x2b89 006961 lshift16 pdata ,alarm 
+0x2b8a 006962 bpatch patch15_1 ,mem_patch15 
+0x2b8b 006963 fetch 2 ,mem_context + coffset_rx_window 
+0x2b8c 006964 rshift pdata ,pdata 
+0x2b8d 006965 call clk2bt 
+0x2b8e 006966 deposit alarm 
+0x2b8f 006967 call clk_diff 
+0x2b90 006968 copy clke ,temp 
+0x2b91 006969 call clk_diff_rt 
+0x2b92 006970 rtn user 
+:      006971 lpm_dispatch_sleep:
+0x2b93 006972 call clk2lpo 
+:      006973 lpm_dispatch_lpo:
+0x2b94 006974 bpatch patch15_2 ,mem_patch15 
+0x2b95 006975 fetch 1 ,mem_lpm_xtalcnt 
+0x2b96 006976 isub temp ,null 
+0x2b97 006977 branch lpm_clear_counter ,positive 
+0x2b98 006978 storet 4 ,mem_sleep_counter 
+0x2b99 006979 call app_will_enter_lpm 
+0x2b9a 006980 call l2cap_lpm_save_txbuf 
+0x2b9b 006981 fetcht 4 ,mem_sleep_counter 
+0x2b9c 006982 branch lpm_sleep 
+:      006984 lpm_dispatch_unconn:
+0x2b9d 006985 bpatch patch15_3 ,mem_patch15 
+0x2b9e 006986 fetch 1 ,mem_context 
+0x2b9f 006987 rtnbit1 state_inconn 
+0x2ba0 006988 rtnbit1 state_inpage 
+0x2ba1 006989 fetch 1 ,mem_ssp_enable 
+0x2ba2 006990 branch lpm_unconn_nossp ,blank 
+0x2ba3 006991 fetch 1 ,mem_sp_local_key_invalid 
+0x2ba4 006992 rtn blank 
+:      006993 lpm_unconn_nossp:
+0x2ba5 006994 bpatch patch15_4 ,mem_patch15 
+0x2ba6 006995 fetch 1 ,mem_le_adv_enable 
+0x2ba7 006996 nbranch lpm_unconn_cont ,blank 
+0x2ba8 006997 fetch 1 ,mem_scan_mode 
+0x2ba9 006998 rtn blank 
+:      006999 lpm_unconn_cont:
+0x2baa 007000 fetch 2 ,mem_lpm_interval 
+0x2bab 007001 rtn blank 
+:      007002 lpm_sleep_btclk:
+0x2bac 007003 fetcht 1 ,mem_lpm_overhead 
+0x2bad 007004 isub temp ,pdata 
+0x2bae 007005 arg 7500 ,temp 
+0x2baf 007006 imul32 temp ,pdata 
+0x2bb0 007007 branch lpm_dispatch_sleep 
+:      007009 lpm_set_mult:
+0x2bb1 007010 bpatch patch15_5 ,mem_patch15 
+0x2bb2 007011 disable wake 
+0x2bb3 007012 fetch 1 ,mem_state 
+0x2bb4 007013 rtnbit0 state_insniff 
+0x2bb5 007014 nbranch lpm_not_match ,match 
+0x2bb6 007015 call lpm_match 
+0x2bb7 007016 fetch 2 ,mem_rx_window_sniff 
+0x2bb8 007017 store 2 ,mem_rx_window 
+0x2bb9 007018 fetch 1 ,mem_arq 
+0x2bba 007019 bbit1 wack ,lpm_mult_short 
+0x2bbb 007020 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bbc 007021 call l2cap_malloc_is_fifo_empty 
+0x2bbd 007022 nbranch lpm_mult_short ,blank 
+0x2bbe 007023 fetch 1 ,mem_classic_bt_flag 
+0x2bbf 007024 bbit1 short_mult_flag ,lpm_mult_short 
+:      007025 lpm_mult_wait_timeout:
+0x2bc0 007026 jam 0 ,mem_lpm_current_mult 
+0x2bc1 007027 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bc2 007028 fetch 1 ,mem_lpm_mult_cnt 
+0x2bc3 007029 branch lpm_mult_long ,blank 
+0x2bc4 007030 increase -1 ,pdata 
+0x2bc5 007031 store 1 ,mem_lpm_mult_cnt 
+0x2bc6 007032 rtn 
+:      007035 classic_bt_set_mult_short_flag:
+0x2bc7 007036 arg short_mult_flag ,queue 
+0x2bc8 007037 branch classic_bluetooth_set_flag 
+:      007039 classic_bt_clr_mult_short_flag:
+0x2bc9 007040 arg short_mult_flag ,queue 
+0x2bca 007041 branch classic_bluetooth_clr_flag 
+:      007045 lpm_match:
+0x2bcb 007046 jam 0 ,mem_sniff_unint_lost 
+0x2bcc 007047 fetch 3 ,mem_sniff_rcv 
+0x2bcd 007048 increase 1 ,pdata 
+0x2bce 007049 store 3 ,mem_sniff_rcv 
+0x2bcf 007050 rtn 
+:      007052 lpm_not_match:
+0x2bd0 007053 bpatch patch15_6 ,mem_patch15 
+0x2bd1 007054 fetcht 2 ,mem_rx_window_sniff 
+0x2bd2 007055 rshift temp ,temp 
+0x2bd3 007056 fetch 2 ,mem_rx_window 
+0x2bd4 007057 iadd temp ,pdata 
+0x2bd5 007058 store 2 ,mem_rx_window 
+:      007059 lpm_lost:
+0x2bd6 007060 jam 0 ,mem_lpm_current_mult 
+0x2bd7 007061 fetch 3 ,mem_sniff_lost 
+0x2bd8 007062 increase 1 ,pdata 
+0x2bd9 007063 store 3 ,mem_sniff_lost 
+0x2bda 007064 fetch 1 ,mem_sniff_unint_lost 
+0x2bdb 007065 increase 1 ,pdata 
+0x2bdc 007066 store 1 ,mem_sniff_unint_lost 
+0x2bdd 007067 rtn 
+:      007069 lpm_mult_short:
+0x2bde 007070 jam 0 ,mem_lpm_current_mult 
+0x2bdf 007071 fetch 1 ,mem_lpm_mult_timeout 
+0x2be0 007072 store 1 ,mem_lpm_mult_cnt 
+0x2be1 007073 rtn 
+:      007075 lpm_mult_long:
+0x2be2 007076 fetcht 1 ,mem_lpm_mult 
+0x2be3 007077 storet 1 ,mem_lpm_current_mult 
+0x2be4 007078 rtn 
+:      007080 lpm_cal_xtal_startup:
+0x2be5 007081 bpatch patch15_7 ,mem_patch15 
+0x2be6 007082 fetch 1 ,mem_lpm_xtalcnt 
+0x2be7 007083 nrtn blank 
+0x2be8 007084 jam clksel_rc ,core_clksel 
+0x2be9 007085 setarg 0xf0c 
+0x2bea 007086 call lpm_write_config 
+0x2beb 007087 setarg 200000 
+0x2bec 007088 call sleep 
+0x2bed 007089 until null ,lpo_edge 
+0x2bee 007090 copy lpo_time ,alarm 
+0x2bef 007091 call xtal_fast_wake 
+0x2bf0 007092 jam clksel_xtal ,core_clksel 
+0x2bf1 007093 nop 10 
+0x2bf2 007094 until null ,lpo_edge 
+0x2bf3 007095 deposit lpo_time 
+0x2bf4 007096 isub alarm ,pdata 
+0x2bf5 007097 increase 0x30 ,pdata 
+0x2bf6 007098 arg 0xff ,temp 
+0x2bf7 007099 call ceiling 
+0x2bf8 007100 store 1 ,mem_lpm_xtalcnt 
+0x2bf9 007101 nop 30000 
+0x2bfa 007102 nop 30000 
+0x2bfb 007103 nop 30000 
+0x2bfc 007104 rtn 
+:      007106 lpm_cal_xtal_startup_by_snooze:
+0x2bfd 007107 fetch 1 ,mem_lpm_xtalcnt 
+0x2bfe 007108 nrtn blank 
+0x2bff 007109 jam 0xff ,core_xtal_stable_time 
+0x2c00 007110 jam clksel_rc ,core_clksel 
+0x2c01 007111 call xtal_fast_wake 
+0x2c02 007112 setarg 1000 
+0x2c03 007113 iadd lpo_time ,alarm 
+0x2c04 007114 snooze 
+0x2c05 007115 deposit lpo_time 
+0x2c06 007116 nop 12000 
+0x2c07 007117 nop 12000 
+0x2c08 007118 nop 12000 
+0x2c09 007119 nop 12000 
+0x2c0a 007120 nop 12000 
+0x2c0b 007121 nop 12000 
+0x2c0c 007122 nop 12000 
+0x2c0d 007123 nop 12000 
+0x2c0e 007124 nop 12000 
+0x2c0f 007125 isub alarm ,pdata 
+0x2c10 007126 add pdata ,0x30 ,pdata 
+0x2c11 007127 arg 0xff ,temp 
+0x2c12 007128 call ceiling 
+0x2c13 007129 store 1 ,mem_lpm_xtalcnt 
+0x2c14 007130 nop 30000 
+0x2c15 007131 nop 30000 
+0x2c16 007132 nop 30000 
+0x2c17 007133 rtn 
+:      007138 lpm_write_config:
+0x2c18 007139 arg 0xfff ,contw 
+0x2c19 007140 iand contw ,contw 
+0x2c1a 007141 fetch 1 ,mem_lpm_config 
+0x2c1b 007142 and_into 0xf0 ,pdata 
+0x2c1c 007143 lshift8 pdata ,pdata 
+0x2c1d 007144 ior contw ,pdata 
+0x2c1e 007145 hstore 2 ,core_lpm_reg 
+0x2c1f 007146 ifetch 2 ,contr 
+0x2c20 007147 istore 2 ,contw 
+:      007149 lpm_write_ctrl:
+0x2c21 007150 setarg lpmreg_sel_ctrl 
+0x2c22 007151 branch lpm_write 
+:      007153 lpm_write_ctrl2:
+0x2c23 007154 setarg lpmreg_sel_ctrl2 
+:      007155 lpm_write:
+0x2c24 007156 until null ,lpo_edge 
+0x2c25 007157 hstore 1 ,core_lpm_wr 
+0x2c26 007158 until null ,lpo_edge 
+0x2c27 007159 until null ,lpo_edge 
+0x2c28 007160 rtn 
+:      007163 lpm_write_gpio_wakeup:
+0x2c29 007164 bpatch patch16_0 ,mem_patch16 
+0x2c2a 007165 fetch 4 ,mem_gpio_wakeup_low 
+0x2c2b 007166 hstore 4 ,core_lpm_reg 
+0x2c2c 007167 setarg lpmreg_sel_gpiolow 
+0x2c2d 007168 call lpm_write 
+0x2c2e 007169 fetch 4 ,mem_gpio_wakeup_high 
+0x2c2f 007170 hstore 4 ,core_lpm_reg 
+0x2c30 007171 setarg lpmreg_sel_gpiohigh 
+0x2c31 007172 branch lpm_write 
+:      007174 lpm_get_wake_lock:
+0x2c32 007175 fetch 2 ,mem_lpm_wake_lock 
+0x2c33 007176 qset1 pdata 
+0x2c34 007177 store 2 ,mem_lpm_wake_lock 
+0x2c35 007178 rtn 
+:      007180 lpm_put_wake_lock:
+0x2c36 007181 fetch 2 ,mem_lpm_wake_lock 
+0x2c37 007182 qset0 pdata 
+0x2c38 007183 store 2 ,mem_lpm_wake_lock 
+0x2c39 007184 rtn 
+:      007188 lpm_check_wake_lock:
+0x2c3a 007189 bpatch patch16_1 ,mem_patch16 
+0x2c3b 007190 call app_check_wake_lock 
+0x2c3c 007191 fetch 2 ,mem_lpm_wake_lock 
+0x2c3d 007192 copy pdata ,rega 
+0x2c3e 007193 fetch 1 ,mem_state_map 
+0x2c3f 007194 isolate1 smap_rxlmp ,pdata 
+0x2c40 007195 setflag true ,wake_lock_lmp_rx ,rega 
+0x2c41 007196 fetch 1 ,mem_lmo_opcode1 
+0x2c42 007197 fetcht 1 ,mem_lmo_opcode2 
+0x2c43 007198 iadd temp ,pdata 
+0x2c44 007199 fetcht 1 ,mem_lmp_to_send 
+0x2c45 007200 iadd temp ,pdata 
+0x2c46 007201 nsetflag blank ,wake_lock_lmp_tx ,rega 
+0x2c47 007202 fetch 1 ,mem_le_tx_buff_used 
+0x2c48 007203 nsetflag blank ,wake_lock_ble_tx ,rega 
+0x2c49 007204 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x2c4a 007205 fetcht 2 ,mem_l2cap_rxbuff2_len 
+0x2c4b 007206 iadd temp ,pdata 
+0x2c4c 007207 nsetflag blank ,wake_lock_l2cap_rx ,rega 
+0x2c4d 007208 fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
+0x2c4e 007209 nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
+0x2c4f 007210 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
+0x2c50 007211 nsetflag blank ,wake_lock_ipc_c512bt ,rega 
+0x2c51 007212 fetch 1 ,mem_hci_cmd 
+0x2c52 007213 nsetflag blank ,wake_lock_cmd ,rega 
+0x2c53 007214 fetch 1 ,mem_device_option 
+0x2c54 007215 compare dvc_op_module ,pdata ,0xff 
+0x2c55 007216 call lpm_uart_wake_lock ,true 
+0x2c56 007217 setarg -8 
+0x2c57 007218 iand rega ,rega 
+0x2c58 007219 copy rega ,pdata 
+0x2c59 007220 store 2 ,mem_lpm_wake_lock 
+0x2c5a 007221 rtn 
+:      007223 lpm_uart_wake_lock:
+0x2c5b 007224 hfetch 2 ,core_uart_rxitems 
+0x2c5c 007225 nsetflag blank ,wake_lock_uart_rx ,rega 
+0x2c5d 007226 hfetch 2 ,core_uart_txitems 
+0x2c5e 007227 nsetflag blank ,wake_lock_uart_tx ,rega 
+0x2c5f 007228 rtn 
+:      007230 lpm_shut_down:
+0x2c60 007231 hfetch 4 ,core_lpm_ctrl 
+0x2c61 007232 set0 27 ,pdata 
+0x2c62 007233 hstore 4 ,core_lpm_reg 
+0x2c63 007234 call lpm_write_ctrl 
+0x2c64 007235 branch assert 
+:      007237 lpm_disable_exen_output:
+0x2c65 007238 hfetch 4 ,core_lpm_xtalcnt 
+0x2c66 007239 set0 20 ,pdata 
+0x2c67 007240 hstore 4 ,core_lpm_reg 
+0x2c68 007241 branch lpm_write_ctrl2 
+:      007243 check_bt_disabled:
+0x2c69 007244 fetch 2 ,mem_chip_functions 
+0x2c6a 007245 bbit1 bt_disabled ,assert 
+0x2c6b 007246 rtn 
+:      007247 check_ble_disabled:
+0x2c6c 007248 fetch 2 ,mem_chip_functions 
+0x2c6d 007249 bbit1 ble_disabled ,assert 
+0x2c6e 007250 rtn 
+:      007251 check_module_disabled:
+0x2c6f 007252 fetch 2 ,mem_chip_functions 
+0x2c70 007253 bbit1 module_disable ,assert 
+0x2c71 007254 rtn 
+:      007315 g24_dispatch:
+0x2c72 007316 bpatch patch16_2 ,mem_patch16 
+0x2c73 007317 call g24_head_ptr2regc 
+0x2c74 007318 add regc ,offset_24g_mode ,regb 
+0x2c75 007319 ifetch 1 ,regb 
+0x2c76 007321 rtneq disable_24g 
+0x2c77 007322 beq tx_24g ,g24_transmit_process 
+0x2c78 007323 beq rx_24g ,g24_receive_process 
+0x2c79 007324 rtn 
+:      007326 g24_head_ptr2regc:
+0x2c7a 007327 fetcht 2 ,mem_24g_head_ptr 
+0x2c7b 007328 copy temp ,regc 
+0x2c7c 007329 rtn 
+:      007331 g24_receive_process_init:
+0x2c7d 007332 call g24_receive_init 
+0x2c7e 007333 branch g24_mode_switch_init 
+:      007335 g24_receive_process:
+0x2c7f 007336 call g24_mode_switch 
+0x2c80 007337 call g24_dongle_work_mode_auto 
+0x2c81 007338 call g24_dongle_bind_mode_auto 
+0x2c82 007339 branch g24_dongle_search_mode_auto 
+:      007342 g24_pair_init:
+0x2c83 007345 call g24_set0_mem_pid 
+0x2c84 007346 setarg g24_pair_ch 
+0x2c85 007347 call g24_store_mem_ch 
+0x2c86 007348 call g24_store_mem_pair_txpower 
+0x2c87 007351 add regc ,offset_24g_paring_addr ,rega 
+0x2c88 007352 ifetch 4 ,rega 
+0x2c89 007353 branch g24_store_mem_addr 
+:      007355 g24_ch:
+0x2c8a 007356 call g24_head_ptr2regc 
+0x2c8b 007357 add regc ,offset_24g_current_ch_number ,regb 
+0x2c8c 007358 ifetcht 1 ,regb 
+0x2c8d 007360 call g24_ch_temp_incre_size4 
+0x2c8e 007361 add regc ,offset_24g_current_ch_number ,contw 
+0x2c8f 007363 branch g24_contw_istoret_1byte 
+:      007365 g24_ch_temp_incre_size4:
+0x2c90 007366 call g24_ch_calc 
+0x2c91 007367 increase 1 ,temp 
+0x2c92 007368 and_into 3 ,temp 
+0x2c93 007369 rtn 
+:      007371 g24_ch_calc:
+0x2c94 007372 add regc ,offset_24g_addr ,regb 
+0x2c95 007373 ifetch 1 ,regb 
+0x2c96 007375 and_into 0x03 ,pdata 
+0x2c97 007376 mul32 pdata ,4 ,rega 
+0x2c98 007377 add regc ,offset_24g_ch_map1 ,pdata 
+0x2c99 007379 iadd rega ,pdata 
+0x2c9a 007380 iadd temp ,contr 
+0x2c9b 007381 ifetch 1 ,contr 
+0x2c9c 007383 branch g24_store_mem_ch 
+:      007385 g24_set_device_addr:
+0x2c9d 007386 call g24_store_mem_tx_power_temp 
+0x2c9e 007387 call otp_enable_chgpump 
+0x2c9f 007388 setarg 0x7e2 
+0x2ca0 007389 arg mem_temp ,rega 
+0x2ca1 007390 arg 4 ,temp 
+0x2ca2 007391 call otpd_read_data 
+0x2ca3 007392 call otp_disable_chgpump 
+0x2ca4 007393 fetch 4 ,mem_temp 
+0x2ca5 007394 call g24_store_mem_device_addr 
+0x2ca6 007396 nrtn blank 
+0x2ca7 007397 fetch 4 ,mem_lap 
+0x2ca8 007399 branch g24_store_mem_device_addr 
+:      007401 g24_transmit_rf_sta_init:
+0x2ca9 007402 call g24_set1_mem_rf_last_sta 
+0x2caa 007404 setarg 0 
+0x2cab 007405 call g24_store_mem_sync_cnt 
+:      007407 g24_transmit_rf_ctrl_clear:
+0x2cac 007408 call g24_fetch_mem_data_type 
+0x2cad 007410 and_into bits_data ,pdata 
+0x2cae 007412 branch g24_store_mem_data_type 
+:      007414 g24_hop_ch_enable:
+0x2caf 007415 call g24_fetch_mem_data_type 
+0x2cb0 007417 set1 bit_hop ,pdata 
+0x2cb1 007418 call g24_store_mem_data_type 
+0x2cb2 007421 branch g24_store_mem_txpayload 
+:      007423 g24_transmit_hop_pac_fail:
+0x2cb3 007424 call g24_fetch_mem_rf_work_stage 
+0x2cb4 007426 beq 1 ,g24_transmit_hop_pac_fail_wo_hop 
+0x2cb5 007427 beq 2 ,g24_transmit_hop_pac_fail_hop_stage2 
+0x2cb6 007428 rtn 
+:      007430 g24_transmit_hop_pac_fail_wo_hop:
+0x2cb7 007431 call g24_set2_mem_sync_cnt 
+:      007433 g24_transmit_hop_pac_fail_stage1:
+0x2cb8 007434 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2cb9 007435 call g24_mem_set0 
+0x2cba 007437 call g24_store_mem_rf_last_sta 
+0x2cbb 007439 branch g24_transmit_rf_ctrl_clear 
+:      007441 g24_transmit_hop_pac_fail_hop_stage2:
+0x2cbc 007442 call g24_set0_mem_rf_hop_ch 
+0x2cbd 007444 branch g24_transmit_hop_pac_fail_stage1 
+:      007446 g24_transmit_pac_fail_hop_stage3:
+0x2cbe 007447 add regc ,offset_24g_txfail_cnt ,rega 
+0x2cbf 007448 ifetch 1 ,rega 
+0x2cc0 007450 increase 1 ,pdata 
+0x2cc1 007451 add regc ,offset_24g_txfail_cnt ,contw 
+0x2cc2 007452 istore 1 ,contw 
+0x2cc3 007454 beq 0x20 ,g24_tx_attempt_fail 
+0x2cc4 007455 call g24_fetch_mem_rf_hop_ch 
+0x2cc5 007457 beq 1 ,g24_rf_hop_fastly 
+0x2cc6 007458 setarg 1 
+0x2cc7 007459 call g24_store_mem_rf_hop_ch 
+:      007461 g24_rf_hop_attemp_again:
+0x2cc8 007462 call g24_fetch_mem_rf_hop_ch 
+0x2cc9 007464 bne 1 ,g24_transmit_rf_ctrl_clear 
+:      007465 g24_rf_hop_fastly:
+0x2cca 007466 add regc ,offset_24g_hop_fastly_cnt ,rega 
+0x2ccb 007467 ifetch 1 ,rega 
+0x2ccc 007469 increase 1 ,pdata 
+0x2ccd 007470 call g24_store_mem_hop_fastly_cnt 
+0x2cce 007472 beq 4 ,g24_rf_hop_fastly_exit 
+0x2ccf 007473 call g24_ch 
+0x2cd0 007474 call g24_set2_mem_max_retry 
+0x2cd1 007476 branch g24_transmit_packet 
+:      007478 g24_rf_hop_fastly_exit:
+0x2cd2 007479 call g24_set0_mem_hop_fastly_cnt 
+0x2cd3 007481 branch g24_transmit_rf_ctrl_clear 
+:      007483 g24_set0_mem_hop_fastly_cnt:
+0x2cd4 007484 setarg 0 
+:      007485 g24_store_mem_hop_fastly_cnt:
+0x2cd5 007486 add regc ,offset_24g_hop_fastly_cnt ,contw 
+0x2cd6 007487 branch g24_contw_istore_1byte 
+:      007489 g24_transmit_hop_pac_succ_wo_hop:
+0x2cd7 007490 call g24_set2_mem_sync_cnt 
+:      007492 g24_transmit_hop_pac_succ:
+0x2cd8 007493 call g24_set0_mem_rf_hop_ch 
+0x2cd9 007495 call g24_set1_mem_rf_last_sta 
+0x2cda 007497 branch g24_transmit_rf_ctrl_clear 
+:      007499 g24_transmit_succ_rf_config:
+0x2cdb 007500 call g24_fetch_mem_rf_work_stage 
+0x2cdc 007502 beq 3 ,g24_transmit_hop_pac_succ 
+0x2cdd 007503 call g24_fetch_mem_data_type 
+0x2cde 007505 isolate0 bit_hop ,pdata 
+0x2cdf 007506 branch g24_transmit_rf_sta_init ,true 
+0x2ce0 007507 call g24_fetch_mem_rf_work_stage 
+0x2ce1 007509 beq 1 ,g24_transmit_hop_pac_succ_wo_hop 
+0x2ce2 007510 beq 2 ,g24_transmit_hop_pac_succ 
+0x2ce3 007511 rtn 
+:      007513 g24_rf_sta_check:
+0x2ce4 007514 call g24_fetch_mem_pairing_sm 
+0x2ce5 007516 rtnne state_24g_pairing_success 
+0x2ce6 007517 call g24_rf_laststa_synccnt_check 
+0x2ce7 007518 ncall g24_rf_sync_cnt_check ,user2 
+0x2ce8 007519 rtn 
+:      007521 g24_rf_laststa_synccnt_check:
+0x2ce9 007522 disable user2 
+0x2cea 007523 add regc ,offset_24g_rf_last_sta ,rega 
+0x2ceb 007524 ifetch 1 ,rega 
+0x2cec 007526 rtnne 1 
+0x2ced 007527 add regc ,offset_24g_sync_cnt ,rega 
+0x2cee 007528 ifetch 1 ,rega 
+0x2cef 007530 rtnne 0 
+0x2cf0 007531 setarg 1 
+0x2cf1 007532 call g24_store_mem_rf_work_stage 
+0x2cf2 007534 call g24_set4_mem_max_retry 
+0x2cf3 007536 branch enable_user2 
+:      007538 g24_rf_sync_cnt_check:
+0x2cf4 007539 add regc ,offset_24g_sync_cnt ,rega 
+0x2cf5 007540 ifetch 1 ,rega 
+0x2cf6 007542 branch g24_rf_hop_attemp ,blank 
+0x2cf7 007543 increase -1 ,pdata 
+0x2cf8 007544 call g24_store_mem_sync_cnt 
+0x2cf9 007546 setarg 2 
+0x2cfa 007547 call g24_store_mem_rf_work_stage 
+0x2cfb 007549 call g24_ch 
+0x2cfc 007551 branch g24_set4_mem_max_retry 
+:      007553 g24_store_mem_rf_work_stage:
+0x2cfd 007554 add regc ,offset_24g_rf_work_stage ,contw 
+0x2cfe 007555 branch g24_contw_istore_1byte 
+:      007558 g24_rf_hop_attemp:
+0x2cff 007559 setarg 3 
+0x2d00 007560 call g24_store_mem_rf_work_stage 
+0x2d01 007562 call g24_fetch_mem_rf_hop_ch 
+0x2d02 007564 nbranch g24_rf_hop_attemp_again ,blank 
+0x2d03 007565 call g24_ch 
+:      007567 g24_set2_mem_max_retry:
+0x2d04 007568 setarg 2 
+0x2d05 007569 branch g24_store_mem_max_retry 
+:      007571 g24_transmit_process:
+0x2d06 007572 rtnmark0 mark_24g 
+0x2d07 007573 set1 mark_24g_conext ,mark 
+0x2d08 007574 bpatch patch16_3 ,mem_patch16 
+0x2d09 007575 add regc ,offset_24g_tx_without_int ,rega 
+0x2d0a 007576 ifetch 1 ,rega 
+0x2d0b 007578 beq 1 ,g24_transmit_without_int 
+0x2d0c 007579 call g24_timer_check 
+0x2d0d 007580 nbranch g24_transmit_exit ,user 
+0x2d0e 007581 call g24_interval_calibrate 
+:      007582 g24_transmit_without_int:
+0x2d0f 007583 add regc ,offset_24g_tx_without_int ,contw 
+0x2d10 007584 call g24_mem_set0 
+0x2d11 007586 call g24_txdata_prep 
+0x2d12 007587 nbranch g24_enter_lpm ,user 
+0x2d13 007588 call g24_rf_sta_check 
+:      007589 g24_transmit_start:
+0x2d14 007590 call g24_transmit_packet 
+0x2d15 007591 call g24_power_ctrl 
+:      007592 g24_transmit_exit:
+0x2d16 007593 set0 mark_24g_conext ,mark 
+0x2d17 007594 rtn 
+:      007596 g24_timer_timeout:
+0x2d18 007597 rtn zero 
+0x2d19 007598 set1 28 ,pdata 
+0x2d1a 007599 rtn 
+:      007601 g24_interval_calibrate:
+0x2d1b 007602 add regc ,offset_24g_pac_index ,rega 
+0x2d1c 007603 ifetch 1 ,rega 
+0x2d1d 007605 increase 1 ,pdata 
+0x2d1e 007606 add regc ,offset_24g_pac_index ,contw 
+0x2d1f 007607 istore 1 ,contw 
+0x2d20 007609 beq 4 ,g24_interval_max 
+0x2d21 007610 beq 5 ,g24_interval_min 
+0x2d22 007611 rtn 
+:      007612 g24_interval_max:
+0x2d23 007613 add regc ,offset_24g_interval_max ,rega 
+0x2d24 007614 ifetch 1 ,rega 
+:      007616 g24_interval_update:
+0x2d25 007618 add regc ,offset_24g_interval ,contw 
+0x2d26 007619 branch g24_contw_istore_1byte 
+:      007621 g24_interval_min:
+0x2d27 007622 add regc ,offset_24g_pac_index ,contw 
+0x2d28 007623 call g24_mem_set0 
+0x2d29 007625 add regc ,offset_24g_interval_min ,rega 
+0x2d2a 007626 ifetch 1 ,rega 
+0x2d2b 007628 branch g24_interval_update 
+:      007630 g24_txdata_prep:
+0x2d2c 007631 call g24_fetch_mem_pairing_sm 
+0x2d2d 007633 bne state_24g_pairing_success ,g24_pairing_sm 
+0x2d2e 007634 bpatch patch16_4 ,mem_patch16 
+0x2d2f 007635 call g24_package_data 
+0x2d30 007636 nbranch g24_txdata_last_pac ,user 
+0x2d31 007637 call g24_transmit_prep 
+0x2d32 007638 call g24_power_ctrl_pac_incrs 
+:      007639 g24_txdata_enable_tx:
+0x2d33 007641 setarg ensure_on_24g 
+:      007642 g24_store_mem_ensure:
+0x2d34 007643 add regc ,offset_24g_ensure ,contw 
+0x2d35 007644 branch g24_contw_istore_1byte 
+:      007646 g24_txdata_last_pac:
+0x2d36 007647 add regc ,offset_24g_ensure ,rega 
+0x2d37 007648 ifetch 1 ,rega 
+0x2d38 007650 beq ensure_on_24g ,enable_user 
+0x2d39 007651 rtn 
+:      007653 g24_package_data:
+0x2d3a 007655 add regc ,offset_24g_cb_data ,temp 
+0x2d3b 007656 ifetch 2 ,temp 
+0x2d3c 007658 call callback_func 
+0x2d3d 007659 nrtn user 
+0x2d3e 007660 copy rega ,pdata 
+0x2d3f 007661 store 1 ,mem_rega 
+0x2d40 007662 add regc ,offset_24g_abort_pac ,contw 
+0x2d41 007663 call g24_mem_set0 
+0x2d42 007665 call g24_transmit_rf_ctrl_clear 
+0x2d43 007666 store 1 ,mem_24g_common_temp 
+0x2d44 007667 fetch 1 ,mem_rega 
+0x2d45 007668 copy pdata ,rega 
+0x2d46 007669 add rega ,1 ,temp 
+0x2d47 007670 arg mem_24g_common_temp + 1 ,contw 
+0x2d48 007671 copy rega ,loopcnt 
+0x2d49 007672 copy regb ,contr 
+0x2d4a 007673 call memcpy 
+0x2d4b 007674 arg mem_24g_common_temp ,rega 
+:      007675 g24_put_data_in_buff:
+0x2d4c 007676 rtnmark0 mark_24g_conext 
+0x2d4d 007677 add regc ,offset_24g_datalen ,contw 
+0x2d4e 007678 istoret 1 ,contw 
+0x2d4f 007680 copy temp ,loopcnt 
+0x2d50 007681 add regc ,offset_24g_txbuf ,contw 
+0x2d51 007683 copy rega ,contr 
+0x2d52 007684 branch memcpy 
+:      007686 g24_transmit_prep:
+0x2d53 007688 add regc ,offset_24g_datalen ,rega 
+0x2d54 007689 ifetch 1 ,rega 
+0x2d55 007691 increase 2 ,pdata 
+0x2d56 007692 add regc ,offset_24g_txlen ,contw 
+0x2d57 007693 istore 1 ,contw 
+0x2d58 007696 call g24_fetch_mem_data_type 
+0x2d59 007698 call g24_store_mem_txpayload 
+0x2d5a 007701 add regc ,offset_24g_datalen ,rega 
+0x2d5b 007702 ifetch 1 ,rega 
+0x2d5c 007704 lshift3 pdata ,pdata 
+0x2d5d 007705 add regc ,offset_24g_pid ,rega 
+0x2d5e 007706 ifetcht 1 ,rega 
+0x2d5f 007708 and temp ,0x03 ,temp 
+0x2d60 007709 lshift temp ,temp 
+0x2d61 007710 ior temp ,pdata 
+0x2d62 007711 add regc ,offset_24g_no_ack ,rega 
+0x2d63 007712 ifetcht 1 ,rega 
+0x2d64 007714 iadd temp ,pdata 
+0x2d65 007715 istore 1 ,contw 
+0x2d66 007717 add regc ,offset_24g_datalen ,rega 
+0x2d67 007718 ifetch 1 ,rega 
+0x2d68 007720 iforce loopcnt 
+0x2d69 007721 add regc ,offset_24g_txbuf ,contr 
+0x2d6a 007723 branch memcpy 
+:      007725 g24_send_abort_packet:
+0x2d6b 007726 call g24_set1_mem_abort_pac 
+0x2d6c 007728 call g24_set0_mem_rf_hop_ch 
+0x2d6d 007730 call g24_power_ctrl_reinit 
+0x2d6e 007731 call g24_transmit_rf_ctrl_clear 
+0x2d6f 007732 store 1 ,mem_24g_common_temp 
+0x2d70 007733 call g24_put_data_in_buff_pre 
+0x2d71 007734 call g24_fetch_mem_data_type 
+0x2d72 007736 set1 bit_abort ,pdata 
+0x2d73 007737 call g24_store_mem_data_type 
+0x2d74 007739 call g24_transmit_prep 
+0x2d75 007740 call g24_txdata_enable_tx 
+0x2d76 007741 branch g24_transmit_start 
+:      007743 g24_put_data_in_buff_pre:
+0x2d77 007744 store 1 ,mem_24g_common_temp + 1 
+0x2d78 007745 call g24_fetch_mem_device_addr 
+0x2d79 007747 store 4 ,mem_24g_common_temp + 2 
+0x2d7a 007748 arg 6 ,temp 
+0x2d7b 007749 arg mem_24g_common_temp ,rega 
+0x2d7c 007750 branch g24_put_data_in_buff 
+:      007752 g24_enter_lpm:
+0x2d7d 007753 add regc ,offset_24g_abort_pac ,rega 
+0x2d7e 007754 ifetch 1 ,rega 
+0x2d7f 007756 branch g24_send_abort_packet ,blank 
+:      007757 g24_enter_lpm_prepare:
+0x2d80 007759 add regc ,offset_24g_cb_lpm_prepare ,rega 
+0x2d81 007760 ifetch 2 ,rega 
+0x2d82 007762 branch callback_func 
+:      007764 g24_lpm_long_sleep:
+0x2d83 007765 call g24_head_ptr2regc 
+0x2d84 007767 call lpo_calibration 
+0x2d85 007768 fetch 3 ,mem_clks_per_lpo 
+0x2d86 007769 rtn blank 
+0x2d87 007770 add regc ,offset_24g_cb_lpm_before ,temp 
+0x2d88 007771 ifetch 2 ,temp 
+0x2d89 007773 call callback_func 
+0x2d8a 007774 add regc ,offset_24g_enter_hibernate ,temp 
+0x2d8b 007775 ifetch 8 ,temp 
+0x2d8c 007776 call clk2lpo 
+0x2d8d 007777 storet 4 ,mem_sleep_counter 
+0x2d8e 007778 branch lpm_sleep 
+:      007780 g24_transmit_packet:
+0x2d8f 007781 call g24_head_ptr2regc 
+0x2d90 007782 add regc ,offset_24g_retry ,contw 
+0x2d91 007783 call g24_mem_set0 
+:      007785 g24_transmit_loop:
+0x2d92 007786 call g24_transmit_receive_ack 
+0x2d93 007787 nbranch g24_retransmit ,sync 
+0x2d94 007788 nbranch g24_retransmit ,user3 
+0x2d95 007789 call g24_ackpayload_parse 
+0x2d96 007790 call g24_power_ctrl_ack_incrs 
+:      007791 g24_transmit_next_packet:
+0x2d97 007792 call g24_head_ptr2regc 
+0x2d98 007793 add regc ,offset_24g_pid ,rega 
+0x2d99 007794 ifetch 1 ,rega 
+0x2d9a 007796 increase 1 ,pdata 
+0x2d9b 007797 call g24_store_mem_pid 
+0x2d9c 007799 call g24_fetch_mem_pairing_sm 
+0x2d9d 007801 bne state_24g_pairing_success ,g24_paring_mode 
+0x2d9e 007802 call g24_transmit_succ_rf_config 
+:      007803 g24_transmit_abandon:
+0x2d9f 007804 setarg 0 
+0x2da0 007805 add regc ,offset_24g_txfail_cnt ,contw 
+0x2da1 007806 istore 2 ,contw 
+0x2da2 007810 setarg ensure_off_24g 
+0x2da3 007811 branch g24_store_mem_ensure 
+:      007814 g24_transmit_receive_ack:
+0x2da4 007815 disable user3 
+0x2da5 007816 call g24_transmit 
+0x2da6 007817 call g24_head_ptr2regc 
+0x2da7 007818 add regc ,offset_24g_no_ack ,rega 
+0x2da8 007819 ifetch 1 ,rega 
+0x2da9 007821 beq no_ack_24g ,g24_transmit_no_ack 
+0x2daa 007822 call g24_receive_packet 
+0x2dab 007823 branch g24_end_of_packet 
+:      007824 g24_transmit_no_ack:
+0x2dac 007825 call g24_end_of_packet 
+0x2dad 007826 branch g24_transmit_next_packet 
+:      007829 g24_retransmit:
+0x2dae 007830 bpatch patch16_5 ,mem_patch16 
+0x2daf 007831 add regc ,offset_24g_get_ack_fail ,rega 
+0x2db0 007832 ifetch 1 ,rega 
+0x2db1 007834 increase 1 ,pdata 
+0x2db2 007835 add regc ,offset_24g_get_ack_fail ,contw 
+0x2db3 007836 istore 1 ,contw 
+0x2db4 007838 call g24_fetch_mem_pairing_sm 
+0x2db5 007840 bne state_24g_pairing_success ,g24_tx_paring_retry 
+0x2db6 007841 add regc ,offset_24g_retry ,rega 
+0x2db7 007842 ifetcht 1 ,rega 
+0x2db8 007844 increase 1 ,temp 
+0x2db9 007845 add regc ,offset_24g_retry ,contw 
+0x2dba 007846 istoret 1 ,contw 
+0x2dbb 007848 add regc ,offset_24g_max_retry ,rega 
+0x2dbc 007849 ifetch 1 ,rega 
+0x2dbd 007851 isub temp ,pdata 
+0x2dbe 007852 nbranch g24_transmit_loop ,blank 
+0x2dbf 007853 bpatch patch16_6 ,mem_patch16 
+0x2dc0 007854 call g24_fetch_mem_rf_work_stage 
+0x2dc1 007856 beq 3 ,g24_transmit_pac_fail_hop_stage3 
+0x2dc2 007857 add regc ,offset_24g_hop_pac_retry ,rega 
+0x2dc3 007858 ifetch 1 ,rega 
+0x2dc4 007860 increase 1 ,pdata 
+0x2dc5 007861 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2dc6 007862 istore 1 ,contw 
+0x2dc7 007864 beq 2 ,g24_transmit_hop_pac_fail 
+0x2dc8 007865 call g24_hop_ch_enable 
+0x2dc9 007866 setarg 1 
+0x2dca 007867 call g24_store_mem_max_retry 
+0x2dcb 007869 branch g24_transmit_packet 
+:      007871 g24_tx_paring_retry:
+0x2dcc 007872 add regc ,offset_24g_get_ack_fail ,rega 
+0x2dcd 007873 ifetch 1 ,rega 
+0x2dce 007875 rtnne 0xff 
+0x2dcf 007876 add regc ,offset_24g_get_ack_fail ,contw 
+0x2dd0 007877 call g24_mem_set0 
+0x2dd1 007879 branch g24_stop_24g_mode 
+:      007881 g24_tx_attempt_fail:
+0x2dd2 007882 add regc ,offset_24g_txfail_cnt ,contw 
+0x2dd3 007883 call g24_mem_set0 
+:      007885 g24_stop_24g_mode:
+0x2dd4 007886 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+0x2dd5 007887 branch ui_ipc_send_event 
+:      007889 g24_ackpayload_parse:
+0x2dd6 007890 call g24_read_len_pid_crc 
+0x2dd7 007891 add regc ,offset_24g_rxdata_length ,rega 
+0x2dd8 007892 ifetch 1 ,rega 
+0x2dd9 007894 rtn blank 
+0x2dda 007895 iforce loopcnt 
+0x2ddb 007896 add regc ,offset_24g_rxbuf_add2 ,contr 
+0x2ddc 007898 add regc ,offset_24g_rxpayload ,contw 
+0x2ddd 007900 branch memcpy 
+:      007903 g24_read_len_pid_crc:
+0x2dde 007905 call g24_fetch_mem_rxbuf_add1 
+0x2ddf 007907 rshift3 pdata ,pdata 
+0x2de0 007908 add regc ,offset_24g_rxdata_length ,contw 
+0x2de1 007909 istore 1 ,contw 
+0x2de2 007912 increase 1 ,pdata 
+0x2de3 007913 add regc ,offset_24g_rxbuf_add1 ,contr 
+0x2de4 007915 iadd contr ,contr 
+0x2de5 007916 ifetch 3 ,contr 
+0x2de6 007917 add regc ,offset_24g_sta_crc ,contw 
+0x2de7 007918 istore 3 ,contw 
+0x2de8 007921 call g24_fetch_mem_rxbuf_add1 
+0x2de9 007923 rshift pdata ,pdata 
+0x2dea 007924 and pdata ,0x03 ,pdata 
+0x2deb 007925 add regc ,offset_24g_sta_pid ,contw 
+0x2dec 007926 istore 1 ,contw 
+0x2ded 007928 rtn 
+:      007930 g24_prep:
+0x2dee 007931 disable enable_crc 
+0x2def 007932 disable enable_white 
+0x2df0 007933 setarg 0x555555 
+0x2df1 007934 iforce crc24_init 
+0x2df2 007935 rtn 
+:      007937 g24_set_freq_tx:
+0x2df3 007938 call set_sync_on 
+0x2df4 007939 add regc ,offset_24g_ch ,rega 
+0x2df5 007940 ifetcht 1 ,rega 
+0x2df6 007942 branch set_freq_tx 
+:      007944 g24_transmit:
+0x2df7 007945 call g24_prep 
+0x2df8 007946 call g24_set_freq_tx 
+0x2df9 007947 set1 txgfsk ,radio_ctrl 
+0x2dfa 007948 enable encode_fec0 
+0x2dfb 007949 enable is_tx 
+0x2dfc 007950 disable is_rx 
+0x2dfd 007951 call le_enable 
+0x2dfe 007952 call g24_fetch_mem_addr 
+0x2dff 007954 iforce access 
+0x2e00 007955 inject mod ,32 
+0x2e01 007956 enable enable_crc 
+0x2e02 007957 add regc ,offset_24g_txlen ,rega 
+0x2e03 007958 ifetch 1 ,rega 
+0x2e04 007960 iforce loopcnt 
+0x2e05 007961 add regc ,offset_24g_txpayload ,contr 
+:      007963 g24tr_loop:
+0x2e06 007964 ifetch 1 ,contr 
+0x2e07 007965 inject mod ,8 
+0x2e08 007966 loop g24tr_loop 
+0x2e09 007967 enable enable_parity 
+0x2e0a 007968 inject mod ,24 
+0x2e0b 007969 disable enable_parity 
+0x2e0c 007970 until null ,tx_clear 
+0x2e0d 007971 bpatch patch16_7 ,mem_patch16 
+0x2e0e 007972 nop 100 
+0x2e0f 007973 disable encode_fec0 
+0x2e10 007974 rtn 
+:      007976 g24_receive_packet:
+0x2e11 007977 disable user3 
+0x2e12 007978 force 0 ,radio_ctrl 
+0x2e13 007979 add regc ,offset_24g_ch ,rega 
+0x2e14 007980 ifetcht 1 ,rega 
+0x2e15 007982 call set_freq_rx 
+0x2e16 007983 call rf_rx_enable 
+:      007984 g24_receive_rxon:
+0x2e17 007985 call g24_prep 
+0x2e18 007986 enable decode_fec0 
+0x2e19 007987 enable is_rx 
+0x2e1a 007988 disable is_tx 
+0x2e1b 007989 call le_enable 
+0x2e1c 007990 call g24_fetch_mem_addr 
+0x2e1d 007992 iforce access 
+0x2e1e 007993 enable swfine 
+0x2e1f 007994 add regc ,offset_24g_rx_window ,rega 
+0x2e20 007995 ifetch 2 ,rega 
+0x2e21 007997 iforce stop_watch 
+0x2e22 007998 correlate null ,timeout 
+0x2e23 007999 nbranch g24_sync_timeout ,sync 
+0x2e24 008000 enable enable_crc 
+0x2e25 008001 parse demod ,bucket ,8 
+0x2e26 008002 rshift3 pwindow ,pdata 
+0x2e27 008003 add regc ,offset_24g_rxbuf ,contw 
+0x2e28 008004 istore 1 ,contw 
+0x2e29 008006 add regc ,offset_24g_mode ,rega 
+0x2e2a 008007 ifetch 1 ,rega 
+0x2e2b 008009 beq rx_24g ,g24_receive_skip 
+0x2e2c 008010 bpatch patch17_0 ,mem_patch17 
+0x2e2d 008011 add regc ,offset_24g_rxbuf ,rega 
+0x2e2e 008012 ifetch 1 ,rega 
+0x2e2f 008014 add regc ,offset_24g_data_type ,rega 
+0x2e30 008015 ifetcht 1 ,rega 
+0x2e31 008017 icompare bits_data ,temp 
+0x2e32 008018 nbranch g24_end_of_packet ,true 
+:      008019 g24_receive_skip:
+0x2e33 008020 parse demod ,bucket ,8 
+0x2e34 008021 rshift3 pwindow ,pdata 
+0x2e35 008022 istore 1 ,contw 
+0x2e36 008023 rshift3 pdata ,pdata 
+0x2e37 008024 and pdata ,0x1f ,loopcnt 
+0x2e38 008025 branch g24rx_nopayload ,zero 
+:      008026 g24rx_loop:
+0x2e39 008027 parse demod ,bucket ,8 
+0x2e3a 008028 rshift3 pwindow ,pdata 
+0x2e3b 008029 istore 1 ,contw 
+0x2e3c 008030 loop g24rx_loop 
+:      008031 g24rx_nopayload:
+0x2e3d 008032 parse demod ,bucket ,24 
+0x2e3e 008033 rshift32 pdata ,pdata 
+0x2e3f 008034 rshift16 pdata ,pdata 
+0x2e40 008035 istore 3 ,contw 
+0x2e41 008036 branch g24_end_of_packet ,crc_failed 
+0x2e42 008037 enable user3 
+0x2e43 008038 disable decode_fec0 
+0x2e44 008039 rtn 
+:      008042 g24_end_of_packet:
+0x2e45 008043 disable encode_fec0 
+0x2e46 008044 disable decode_fec0 
+0x2e47 008045 disable enable_crc 
+0x2e48 008046 disable enable_white 
+0x2e49 008047 branch shutdown_radio ,is_rx 
+0x2e4a 008048 until null ,tx_clear 
+0x2e4b 008049 nop 100 
+0x2e4c 008050 branch shutdown_radio 
+:      008052 g24_sync_timeout:
+0x2e4d 008053 call rssi_noise 
+0x2e4e 008054 branch g24_end_of_packet 
+:      008056 rssi_noise:
+0x2e4f 008057 call save_rssi 
+0x2e50 008058 rtn blank 
+0x2e51 008059 add regc ,offset_rssi_noise_index ,rega 
+0x2e52 008060 ifetcht 1 ,rega 
+0x2e53 008062 arg mem_rssi_noise_buffer ,rega 
+0x2e54 008064 call rssi_noise_store 
+0x2e55 008065 add regc ,offset_rssi_noise_index ,contw 
+:      008067 g24_contw_istoret_1byte:
+0x2e56 008068 istoret 1 ,contw 
+0x2e57 008069 rtn 
+:      008071 rssi_noise_store:
+0x2e58 008072 arg rssi_buf_len_noise ,regb 
+0x2e59 008073 branch rssi_store 
+:      008091 rssi_store:
+0x2e5a 008092 copy rega ,pdata 
+0x2e5b 008093 iadd temp ,contw 
+0x2e5c 008094 fetch 1 ,mem_rssi 
+0x2e5d 008095 istore 1 ,contw 
+0x2e5e 008096 increase 1 ,temp 
+0x2e5f 008097 copy regb ,pdata 
+0x2e60 008098 iand_into temp 
+0x2e61 008099 rtn 
+:      008101 rssi_average:
+0x2e62 008102 arg 0 ,temp 
+0x2e63 008103 copy rega ,contr 
+:      008104 rssi_average_loop:
+0x2e64 008105 ifetch 1 ,contr 
+0x2e65 008106 iadd temp ,temp 
+0x2e66 008107 loop rssi_average_loop 
+0x2e67 008108 rshift8 temp ,temp 
+0x2e68 008109 rtn 
+:      008111 g24_power_ctrl_init:
+0x2e69 008112 call g24_head_ptr2regc 
+0x2e6a 008113 call g24_power_ctrl_incrs_level1 
+0x2e6b 008114 setarg 1 
+0x2e6c 008115 call g24_store_mem_power_ctrl_level 
+:      008117 g24_power_ctrl_reinit:
+0x2e6d 008118 setarg 0 
+0x2e6e 008119 call g24_store_mem_power_ctrl_pac 
+0x2e6f 008121 istore 1 ,contw 
+0x2e70 008123 rtn 
+:      008125 g24_power_ctrl_pac_incrs:
+0x2e71 008126 call g24_fetch_mem_power_ctrl_pac 
+0x2e72 008128 increase 1 ,pdata 
+:      008129 g24_store_mem_power_ctrl_pac:
+0x2e73 008131 add regc ,offset_power_ctrl_packet_cnt ,contw 
+0x2e74 008132 branch g24_contw_istore_1byte 
+:      008134 g24_power_ctrl_ack_incrs:
+0x2e75 008137 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e76 008138 ifetch 1 ,rega 
+0x2e77 008139 increase 1 ,pdata 
+0x2e78 008140 add regc ,offset_power_ctrl_ack_cnt ,contw 
+0x2e79 008141 branch g24_contw_istore_1byte 
+:      008143 g24_power_ctrl:
+0x2e7a 008144 bpatch patch17_1 ,mem_patch17 
+0x2e7b 008145 call g24_fetch_mem_power_ctrl_pac 
+0x2e7c 008147 sub pdata ,power_ctrl_max_packet_cnt ,null 
+0x2e7d 008148 rtn positive 
+0x2e7e 008149 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e7f 008150 ifetcht 1 ,rega 
+0x2e80 008152 isub temp ,temp 
+0x2e81 008153 call g24_power_ctrl_reinit 
+0x2e82 008154 setarg offset_power_ctrl_threshold_up 
+0x2e83 008155 iadd regc ,rega 
+0x2e84 008156 ifetch 1 ,rega 
+0x2e85 008158 isub temp ,null 
+0x2e86 008159 nbranch g24_power_ctrl_incrs ,positive 
+0x2e87 008160 setarg offset_power_ctrl_threshold_down 
+0x2e88 008161 iadd regc ,rega 
+0x2e89 008162 ifetch 1 ,rega 
+0x2e8a 008164 isub temp ,null 
+0x2e8b 008165 branch g24_power_ctrl_decrs ,positive 
+0x2e8c 008166 rtn 
+:      008168 g24_power_ctrl_incrs:
+0x2e8d 008169 add regc ,offset_power_ctrl_level ,rega 
+0x2e8e 008170 ifetch 1 ,rega 
+0x2e8f 008172 beq 2 ,g24_power_ctrl_incrs_level2 
+0x2e90 008173 increase 1 ,pdata 
+0x2e91 008174 call g24_store_mem_power_ctrl_level 
+0x2e92 008176 beq 1 ,g24_power_ctrl_incrs_level1 
+:      008177 g24_power_ctrl_incrs_level2:
+0x2e93 008178 setarg power_ctrl_losspac_thresh_up2 
+0x2e94 008179 call g24_store_mem_power_ctrl_threshold_up 
+0x2e95 008181 setarg power_ctrl_losspac_thresh_down2 
+0x2e96 008182 call g24_store_mem_power_ctrl_threshold_down 
+0x2e97 008185 add regc ,offset_power_ctrl_txpwr_level2 ,rega 
+0x2e98 008187 branch g24_ifetch_rega_store_mem_txpower 
+:      008189 g24_power_ctrl_decrs:
+0x2e99 008190 add regc ,offset_power_ctrl_level ,rega 
+0x2e9a 008191 ifetch 1 ,rega 
+0x2e9b 008193 beq 0 ,g24_power_ctrl_decrs_level0 
+0x2e9c 008194 increase -1 ,pdata 
+0x2e9d 008195 call g24_store_mem_power_ctrl_level 
+0x2e9e 008197 beq 0 ,g24_power_ctrl_decrs_level0 
+:      008198 g24_power_ctrl_decrs_level1:
+:      008201 g24_power_ctrl_incrs_level1:
+0x2e9f 008202 setarg power_ctrl_losspac_thresh_up1 
+0x2ea0 008203 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea1 008205 setarg power_ctrl_losspac_thresh_down1 
+0x2ea2 008206 call g24_store_mem_power_ctrl_threshold_down 
+0x2ea3 008209 setarg offset_power_ctrl_txpwr_level1 
+:      008210 g24_iadd_offset_mem_txpower:
+0x2ea4 008211 iadd regc ,rega 
+:      008212 g24_ifetch_rega_store_mem_txpower:
+0x2ea5 008213 ifetch 1 ,rega 
+0x2ea6 008215 branch g24_store_mem_txpower 
+:      008217 g24_power_ctrl_decrs_level0:
+0x2ea7 008220 setarg power_ctrl_losspac_thresh_up0 
+0x2ea8 008221 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea9 008223 setarg power_ctrl_losspac_thresh_down0 
+0x2eaa 008224 call g24_store_mem_power_ctrl_threshold_down 
+0x2eab 008227 setarg offset_power_ctrl_txpwr_level0 
+0x2eac 008229 branch g24_iadd_offset_mem_txpower 
+:      008243 g24_start_pairing_sm1:
+0x2ead 008244 set1 mark_24g ,mark 
+0x2eae 008245 call g24_pair_init 
+:      008246 g24_set_pairing_sm_1:
+0x2eaf 008248 setarg state_24g_pairing_1 
+0x2eb0 008249 branch g24_store_mem_pairing_sm 
+:      008251 g24_pairing_sm:
+0x2eb1 008252 add regc ,offset_24g_ensure ,rega 
+0x2eb2 008253 ifetch 1 ,rega 
+0x2eb3 008255 beq ensure_on_24g ,enable_user 
+0x2eb4 008256 call g24_fetch_mem_pairing_sm 
+0x2eb5 008258 beq state_24g_pairing_1 ,g24_pairing_sm_1 
+0x2eb6 008259 beq state_24g_pairing_2 ,g24_pairing_sm_2 
+0x2eb7 008260 beq state_24g_pairing_3 ,g24_pairing_sm_3 
+0x2eb8 008261 branch assert 
+:      008263 g24_pairing_sm_1:
+0x2eb9 008264 setarg state_24g_pairing_1_waiting_ack 
+0x2eba 008265 call g24_store_mem_pairing_sm 
+0x2ebb 008267 jam 0xaa ,mem_24g_common_temp 
+0x2ebc 008268 branch g24_pairing_sm_common 
+:      008269 g24_pairing_sm_2:
+0x2ebd 008270 setarg state_24g_pairing_2_waiting_ack 
+0x2ebe 008271 call g24_store_mem_pairing_sm 
+0x2ebf 008273 jam 0x55 ,mem_24g_common_temp 
+0x2ec0 008274 branch g24_pairing_sm_common 
+:      008275 g24_pairing_sm_3:
+0x2ec1 008276 setarg state_24g_pairing_3_waiting_ack 
+0x2ec2 008277 call g24_store_mem_pairing_sm 
+0x2ec3 008279 jam 0x22 ,mem_24g_common_temp 
+:      008280 g24_pairing_sm_common:
+0x2ec4 008281 call g24_fetch_mem_data_type 
+0x2ec5 008283 and_into bits_data ,pdata 
+0x2ec6 008284 store 1 ,mem_24g_common_temp + 1 
+0x2ec7 008285 call g24_fetch_mem_device_addr 
+0x2ec8 008287 store 4 ,mem_24g_common_temp + 2 
+:      008288 g24_put_pairing_data_in_buff:
+0x2ec9 008289 jam 0 ,mem_24g_common_temp + 6 
+0x2eca 008290 arg mem_24g_common_temp ,rega 
+0x2ecb 008291 arg 7 ,temp 
+0x2ecc 008292 call g24_put_data_in_buff 
+0x2ecd 008293 call g24_transmit_prep 
+0x2ece 008294 call g24_txdata_enable_tx 
+0x2ecf 008295 branch enable_user 
+:      008297 g24_paring_mode:
+0x2ed0 008298 call g24_fetch_mem_pairing_sm 
+0x2ed1 008300 rtneq state_24g_pairing_success 
+0x2ed2 008301 beq state_24g_pairing_1_waiting_ack ,g24_pairing_sm_1_waiting_ack 
+0x2ed3 008302 beq state_24g_pairing_2_waiting_ack ,g24_pairing_sm_2_waiting_ack 
+0x2ed4 008303 beq state_24g_pairing_3_waiting_ack ,g24_pairing_sm_3_waiting_ack 
+0x2ed5 008304 rtn 
+:      008306 g24_pairing_sm_1_waiting_ack:
+0x2ed6 008307 setarg state_24g_pairing_2 
+0x2ed7 008308 call g24_store_mem_pairing_sm 
+0x2ed8 008310 branch g24_transmit_abandon 
+:      008311 g24_pairing_sm_2_waiting_ack:
+0x2ed9 008312 setarg state_24g_pairing_3 
+0x2eda 008313 call g24_store_mem_pairing_sm 
+0x2edb 008315 branch g24_transmit_abandon 
+:      008316 g24_pairing_sm_3_waiting_ack:
+0x2edc 008317 setarg state_24g_pairing_success 
+0x2edd 008318 call g24_store_mem_pairing_sm 
+0x2ede 008320 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
+0x2edf 008321 call ui_ipc_send_event 
+0x2ee0 008322 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ee1 008323 ifetch 4 ,rega 
+0x2ee2 008325 call g24_store_mem_addr 
+0x2ee3 008327 branch g24_transmit_abandon 
+:      008329 g24_auto_pair_start:
+0x2ee4 008330 set0 mark_24g ,mark 
+0x2ee5 008331 call g24_auto_pair_set_device_info 
+0x2ee6 008332 call g24_tx_attemp_data_prep 
+:      008333 g24_auto_pair_restart:
+0x2ee7 008334 call g24_set0_mem_check_dongle_times 
+:      008335 g24_auto_pair_start_loop:
+0x2ee8 008336 nop 2000 
+0x2ee9 008337 call g24_fetch_mem_check_dongle_times 
+0x2eea 008338 beq 0xff ,g24_stop_24g_mode 
+0x2eeb 008339 call g24_transmit_receive_ack 
+0x2eec 008340 nbranch g24_auto_pair_retry ,sync 
+0x2eed 008341 nbranch g24_auto_pair_retry ,user3 
+0x2eee 008342 call g24_ackpayload_parse 
+0x2eef 008343 call g24_head_ptr2regc 
+0x2ef0 008344 add regc ,offset_24g_paring_addr ,rega 
+0x2ef1 008345 ifetcht 4 ,rega 
+0x2ef2 008346 call g24_fetch_mem_addr_isub_temp 
+0x2ef3 008347 branch g24_start_pairing_sm1 ,zero 
+0x2ef4 008348 call g24_head_ptr2regc 
+0x2ef5 008349 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ef6 008350 ifetch 4 ,rega 
+0x2ef7 008351 beq 0 ,g24_auto_pair_restart 
+0x2ef8 008352 call g24_store_mem_addr 
+0x2ef9 008353 branch g24_tx_attemp_dongle_succ 
+:      008355 g24_auto_pair_retry:
+0x2efa 008356 call g24_fetch_mem_check_dongle_times 
+0x2efb 008357 increase 1 ,pdata 
+0x2efc 008358 call g24_store_mem_check_dongle_times 
+0x2efd 008360 call g24_fetch_mem_auto_paring_switch 
+0x2efe 008361 increase 1 ,pdata 
+0x2eff 008362 and_into 1 ,pdata 
+0x2f00 008363 call g24_store_mem_auto_paring_switch 
+0x2f01 008364 beq 0 ,g24_auto_pair_device_attemp 
+0x2f02 008365 beq 1 ,g24_auto_pair_pair_attemp 
+0x2f03 008366 rtn 
+:      008368 g24_fetch_mem_auto_paring_switch:
+0x2f04 008369 setarg offset_24g_auto_pair_switch 
+0x2f05 008370 branch g24_set_rega_ifetch_1byte 
+:      008371 g24_store_mem_auto_paring_switch:
+0x2f06 008372 arg offset_24g_auto_pair_switch ,rega 
+0x2f07 008373 branch g24_set_contw_with_regb_store_1byte 
+:      008375 g24_auto_pair_set_device_info:
+0x2f08 008376 call g24_store_mem_tx_power 
+0x2f09 008377 call g24_fetch_mem_device_addr 
+0x2f0a 008378 call g24_store_mem_addr 
+0x2f0b 008379 branch g24_ch 
+:      008381 g24_auto_pair_device_attemp:
+0x2f0c 008382 call g24_auto_pair_set_device_info 
+0x2f0d 008383 branch g24_auto_pair_start_loop 
+:      008385 g24_auto_pair_pair_attemp:
+0x2f0e 008386 call g24_pair_init 
+0x2f0f 008387 branch g24_auto_pair_start_loop 
+:      008390 g24_start_24g_mode:
+0x2f10 008391 set0 mark_24g ,mark 
+0x2f11 008392 call g24_ch 
+0x2f12 008393 call g24_fetch_mem_pairing_sm 
+0x2f13 008395 rtnne state_24g_pairing_success 
+0x2f14 008396 call g24_tx_attemp_data_prep 
+0x2f15 008397 call g24_set0_mem_check_dongle_times 
+:      008399 g24_tx_attemp_dongle_loop:
+0x2f16 008400 nop 2000 
+0x2f17 008401 call g24_fetch_mem_check_dongle_times 
+0x2f18 008403 beq 0xff ,g24_stop_24g_mode 
+0x2f19 008404 call g24_transmit_receive_ack 
+0x2f1a 008405 nbranch g24_attemp_txdata_retry ,sync 
+0x2f1b 008406 nbranch g24_attemp_txdata_retry ,user3 
+:      008407 g24_tx_attemp_dongle_succ:
+0x2f1c 008408 set1 mark_24g ,mark 
+0x2f1d 008409 call g24_set0_mem_check_dongle_times 
+0x2f1e 008410 setarg state_24g_pairing_success 
+0x2f1f 008411 call g24_store_mem_pairing_sm 
+:      008413 g24_app_tx_attempt_success:
+0x2f20 008414 jam bt_evt_24g_attempt_success ,mem_fifo_temp 
+0x2f21 008415 branch ui_ipc_send_event 
+:      008417 g24_tx_attemp_data_prep:
+0x2f22 008418 set1 mark_24g_conext ,mark 
+0x2f23 008419 jam 0xff ,mem_24g_common_temp 
+0x2f24 008420 call g24_fetch_mem_data_type 
+0x2f25 008422 call g24_put_data_in_buff_pre 
+0x2f26 008423 branch g24_transmit_prep 
+:      008425 g24_attemp_txdata_retry:
+0x2f27 008426 call g24_fetch_mem_check_dongle_times 
+0x2f28 008428 increase 1 ,pdata 
+0x2f29 008429 call g24_store_mem_check_dongle_times 
+0x2f2a 008431 call g24_ch 
+0x2f2b 008432 branch g24_tx_attemp_dongle_loop 
+:      008434 g24_check_51cmd_start_24g:
+0x2f2c 008435 call g24_store_mem_tx_power 
+0x2f2d 008438 setarg state_24g_pairing_success 
+0x2f2e 008439 call g24_store_mem_pairing_sm 
+0x2f2f 008441 branch g24_start_24g_mode 
+:      008450 dongle_init:
+0x2f30 008451 bpatch patch17_2 ,mem_patch17 
+0x2f31 008452 call g24_head_ptr2regc 
+0x2f32 008453 setarg dongle_rxdata_type1 
+0x2f33 008454 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x2f34 008455 istore 2 ,contw 
+0x2f35 008457 call g24_receive_init 
+0x2f36 008458 call usb_init 
+0x2f37 008459 call g24_fetch_mem_pair_mode 
+0x2f38 008461 bpatch patch17_3 ,mem_patch17 
+0x2f39 008462 beq 0x00 ,dongle_auto_bind 
+0x2f3a 008463 beq 0x01 ,dongle_pc_bind 
+0x2f3b 008464 beq 0x0f ,dongle_all_powerful 
+0x2f3c 008465 branch assert 
+:      008467 g24_receive_init:
+0x2f3d 008468 call g24_store_mem_tx_power_temp 
+0x2f3e 008469 arg 0x80 ,loopcnt 
+0x2f3f 008470 arg mem_rssi_noise_buffer ,contw 
+0x2f40 008471 branch memset0 
+:      008473 dongle_all_powerful:
+0x2f41 008474 call dongle_check_mode 
+:      008475 dongle_all_powerful_loop:
+0x2f42 008476 call g24_dongle_work_mode 
+0x2f43 008477 call usb_isr 
+0x2f44 008478 branch dongle_all_powerful_loop 
+:      008480 dongle_pc_bind:
+0x2f45 008481 bpatch patch17_4 ,mem_patch17 
+0x2f46 008482 call dongle_check_mode 
+:      008483 dongle_pc_bind_loop:
+0x2f47 008484 call g24_dongle_work_mode 
+0x2f48 008485 call g24_dongle_bind_mode 
+0x2f49 008486 call usb_isr 
+0x2f4a 008487 call dongle_usb_dispatch 
+0x2f4b 008488 branch dongle_pc_bind_loop 
+:      008490 dongle_check_mode:
+0x2f4c 008494 call g24_set_work_mem_dongle_work_mode 
+0x2f4d 008495 call g24_set0_mem_dongle_mode_init 
+0x2f4e 008496 branch g24_set0_mem_ackpayload_enable 
+:      008498 g24_dongle_work_mode:
+0x2f4f 008499 call g24_fetch_mem_dongle_work_mode 
+0x2f50 008501 rtnne dongle_work 
+:      008502 g24_dongle_work_mode_start:
+0x2f51 008503 call g24_dongle_work_init 
+0x2f52 008504 call g24_ch_process 
+0x2f53 008505 call g24_receive_packet_start 
+0x2f54 008506 branch g24_blank_data_process 
+:      008508 g24_dongle_work_init:
+0x2f55 008509 call g24_fetch_mem_dongle_mode_init 
+0x2f56 008511 rtnbit1 dongle_work 
+0x2f57 008512 set1 dongle_work ,pdata 
+0x2f58 008513 call g24_store_mem_dongle_mode_init 
+0x2f59 008515 call g24_store_mem_tx_power 
+0x2f5a 008518 call g24_set0_mem_ackpayload_enable 
+0x2f5b 008520 jam 0 ,mem_usb_tx_enable 
+0x2f5c 008521 call g24_set1_mem_abort_pac 
+0x2f5d 008523 call g24_dongle_init 
+:      008524 g24_rx_interrupt_clear:
+0x2f5e 008525 add regc ,offset_24g_rxbuf ,contw 
+0x2f5f 008527 arg 66 ,loopcnt 
+0x2f60 008528 branch clear_mem 
+:      008530 g24_dongle_init:
+0x2f61 008531 call g24_set0_mem_pid 
+0x2f62 008533 call g24_fetch_mem_rx_addr 
+0x2f63 008535 call g24_store_mem_addr 
+0x2f64 008537 branch g24_ch 
+:      008539 g24_ch_process:
+0x2f65 008540 bpatch patch17_5 ,mem_patch17 
+0x2f66 008541 call g24_fetch_mem_abort_pac 
+0x2f67 008543 beq 1 ,g24_noise_rssi 
+0x2f68 008544 call g24_fetch_mem_hop_pac 
+0x2f69 008546 beq 1 ,g24_ch 
+0x2f6a 008547 setarg offset_24g_hop_btclk 
+0x2f6b 008548 iadd regc ,rega 
+0x2f6c 008549 ifetcht 4 ,rega 
+0x2f6d 008551 copy clkn_bt ,pdata 
+0x2f6e 008552 isub temp ,null 
+0x2f6f 008553 ncall g24_timer_timeout ,positive 
+0x2f70 008554 copy pdata ,regb 
+0x2f71 008555 setarg offset_24g_hop_btclk 
+0x2f72 008556 iadd regc ,rega 
+0x2f73 008557 ifetch 4 ,rega 
+0x2f74 008558 copy pdata ,temp 
+0x2f75 008560 setarg offset_24g_hop_interval 
+0x2f76 008561 iadd regc ,rega 
+0x2f77 008562 copy temp ,pdata 
+0x2f78 008563 ifetcht 1 ,rega 
+0x2f79 008565 iadd temp ,temp 
+0x2f7a 008566 copy regb ,pdata 
+0x2f7b 008567 isub temp ,null 
+0x2f7c 008568 nrtn positive 
+0x2f7d 008569 set0 28 ,pdata 
+0x2f7e 008570 setarg offset_24g_hop_btclk 
+0x2f7f 008571 iadd regc ,contw 
+0x2f80 008572 istore 4 ,contw 
+:      008574 g24_ch_update:
+0x2f81 008575 call g24_ch 
+0x2f82 008576 call g24_fetch_mem_rf_laststa 
+0x2f83 008578 increase 1 ,pdata 
+0x2f84 008579 call g24_store_mem_rf_laststa 
+0x2f85 008581 rtnne 2 
+0x2f86 008582 call g24_set0_mem_rf_laststa 
+0x2f87 008586 branch g24_set1_mem_abort_pac 
+:      008588 g24_ch_timer_reinit:
+0x2f88 008589 copy clkn_bt ,pdata 
+0x2f89 008590 arg offset_24g_hop_btclk ,rega 
+0x2f8a 008591 call g24_set_contw_with_temp 
+0x2f8b 008592 istore 4 ,contw 
+0x2f8c 008596 branch g24_set0_mem_rf_laststa 
+:      008598 g24_noise_rssi:
+0x2f8d 008599 arg mem_rssi_noise_buffer ,rega 
+0x2f8e 008600 call g24_noise_rssi_average 
+0x2f8f 008601 add regc ,offset_rssi_noise_avg ,contw 
+0x2f90 008602 istoret 1 ,contw 
+0x2f91 008604 sub temp ,rssi_thresh_noise ,null 
+0x2f92 008605 nrtn positive 
+0x2f93 008606 branch g24_ch 
+:      008608 g24_noise_rssi_average:
+0x2f94 008609 arg rssi_buf_len_noise + 1 ,loopcnt 
+0x2f95 008610 branch rssi_average 
+:      008612 g24_blank_data_process:
+0x2f96 008613 call g24_ms_blank_data 
+0x2f97 008614 call g24_kb_blank_data 
+0x2f98 008615 branch g24_kb_mul_blank_data 
+:      008617 g24_ms_blank_data:
+0x2f99 008618 setarg offset_24g_ms_blank_data_enable 
+0x2f9a 008619 call g24_set_rega_ifetch_1byte 
+0x2f9b 008621 rtn blank 
+0x2f9c 008622 arg timer_ms_blank ,queue 
+0x2f9d 008623 call timer_check 
+0x2f9e 008624 nrtn blank 
+0x2f9f 008625 call g24_set0_mem_ms_blank_data_enable 
+:      008627 g24_ms_blank_data_2usb:
+0x2fa0 008628 setarg ms_report_id 
+0x2fa1 008629 store 1 ,mem_usb_mouse_data 
+0x2fa2 008630 setarg 0 
+0x2fa3 008631 istore 7 ,contw 
+0x2fa4 008632 branch g24_data_type1_usbtx_enable 
+:      008634 g24_kb_blank_data:
+0x2fa5 008635 setarg offset_24g_kb_blank_data_enable 
+0x2fa6 008636 call g24_set_rega_ifetch_1byte 
+0x2fa7 008638 rtn blank 
+0x2fa8 008639 arg timer_kb_blank ,queue 
+0x2fa9 008640 call timer_check 
+0x2faa 008641 nrtn blank 
+0x2fab 008642 call g24_set0_mem_kb_blank_data_enable 
+:      008644 g24_kb_blank_data_2usb:
+0x2fac 008645 arg mem_usb_kb_data ,contw 
+0x2fad 008646 arg 2 ,loopcnt 
+0x2fae 008647 call memset0 
+0x2faf 008648 jam kb_normal_report_id ,mem_usb_kb_data 
+0x2fb0 008649 branch g24_kb_data_into_ep1_fifo 
+:      008651 g24_kb_mul_blank_data:
+0x2fb1 008652 setarg offset_24g_kb_mul_blank_data_enable 
+0x2fb2 008653 call g24_set_rega_ifetch_1byte 
+0x2fb3 008655 rtn blank 
+0x2fb4 008656 arg timer_kb_mul_blank ,queue 
+0x2fb5 008657 call timer_check 
+0x2fb6 008658 nrtn blank 
+0x2fb7 008659 call g24_set0_mem_kb_mul_blank_data_enable 
+:      008661 g24_kb_mul_blank_data_2usb:
+0x2fb8 008662 arg mem_usb_kb_multikey ,contw 
+0x2fb9 008663 arg 2 ,loopcnt 
+0x2fba 008664 call memset0 
+0x2fbb 008665 jam kb_multikey_report_id ,mem_usb_kb_multikey 
+0x2fbc 008666 branch g24_kb_mul_data_into_ep2_fifo 
+:      008668 g24_dongle_bind_mode:
+0x2fbd 008669 call g24_fetch_mem_dongle_work_mode 
+0x2fbe 008671 rtnne dongle_bind 
+0x2fbf 008672 call g24_dongle_bind_init 
+0x2fc0 008673 branch g24_dongle_bind_data_process 
+:      008675 g24_dongle_bind_init:
+0x2fc1 008676 call g24_fetch_mem_dongle_mode_init 
+0x2fc2 008678 rtnbit1 dongle_bind 
+0x2fc3 008679 set1 dongle_bind ,pdata 
+0x2fc4 008680 call g24_store_mem_dongle_mode_init 
+0x2fc5 008682 call g24_set1_mem_ackpayload_enable 
+0x2fc6 008684 call g24_pair_init 
+0x2fc7 008685 setarg 0 
+0x2fc8 008686 arg offset_dongle_ms_bind_step ,rega 
+0x2fc9 008687 call g24_set_contw_with_temp 
+0x2fca 008689 branch g24_contw_istore_3byte 
+:      008691 g24_dongle_bind_data_process:
+0x2fcb 008692 call g24_receive_transmit_ack 
+0x2fcc 008693 nbranch g24_rx_interrupt_clear ,user3 
+0x2fcd 008694 add regc ,offset_24g_rxbuf ,contr 
+0x2fce 008695 setarg offset_24g_rxdata_temp 
+0x2fcf 008696 iadd regc ,contw 
+0x2fd0 008697 arg 8 ,loopcnt 
+0x2fd1 008698 call memcpy 
+0x2fd2 008699 setarg offset_24g_rxdata_temp_add2 
+0x2fd3 008700 call g24_set_rega_ifetch_1byte 
+0x2fd4 008701 beq datatype_bind ,g24_dongle_bind_first_step 
+0x2fd5 008702 beq datatype_config ,g24_dongle_bind_second_step 
+0x2fd6 008703 beq datatype_ok ,g24_dongle_bind_third_step 
+0x2fd7 008704 beq 0xff ,g24_data_attemp 
+0x2fd8 008705 branch g24_rx_interrupt_clear 
+:      008707 g24_dongle_bind_first_step:
+0x2fd9 008708 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fda 008709 beq bind_mouse ,g24_dongle_bind_first_step_mouse 
+0x2fdb 008710 beq bind_keyboard ,g24_dongle_bind_first_step_keyboard 
+0x2fdc 008711 rtn 
+:      008712 g24_dongle_bind_first_step_mouse:
+0x2fdd 008713 setarg 1 
+0x2fde 008714 call g24_store_mem_ms_bind_step 
+:      008716 g24_dongle_bind_ms_payload_cfg:
+0x2fdf 008717 setarg datatype_mouse 
+0x2fe0 008718 call g24_store_mem_bind_payload 
+:      008720 g24_dongle_bind_payload_cfg:
+0x2fe1 008721 setarg 0x80 
+0x2fe2 008722 arg offset_24g_bind_payload_add1 ,rega 
+0x2fe3 008723 call g24_set_contw_with_regb_store_1byte 
+0x2fe4 008725 call g24_fetch_mem_rx_addr 
+0x2fe5 008727 arg offset_24g_bind_payload_add2 ,rega 
+0x2fe6 008728 call g24_set_contw_with_temp 
+0x2fe7 008730 branch g24_contw_istore_4byte 
+:      008732 g24_dongle_bind_first_step_keyboard:
+0x2fe8 008733 setarg 1 
+0x2fe9 008734 call g24_store_mem_kb_bind_step 
+:      008736 g24_dongle_bind_kb_payload_cfg:
+0x2fea 008737 setarg datatype_keyboard 
+0x2feb 008738 call g24_store_mem_bind_payload 
+0x2fec 008740 branch g24_dongle_bind_payload_cfg 
+:      008742 g24_dongle_bind_second_step:
+0x2fed 008743 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fee 008744 beq bind_mouse ,g24_dongle_bind_second_step_mouse 
+0x2fef 008745 beq bind_keyboard ,g24_dongle_bind_second_step_keyboard 
+0x2ff0 008746 rtn 
+:      008747 g24_dongle_bind_second_step_mouse:
+0x2ff1 008748 call g24_dongle_bind_ms_payload_cfg 
+0x2ff2 008749 setarg offset_dongle_ms_bind_step 
+0x2ff3 008750 call g24_set_rega_ifetch_1byte 
+0x2ff4 008752 beq 1 ,g24_dongle_ms_bind_step_set2 
+0x2ff5 008753 rtn 
+:      008754 g24_dongle_ms_bind_step_set2:
+0x2ff6 008755 setarg 2 
+:      008757 g24_store_mem_ms_bind_step:
+0x2ff7 008758 arg offset_dongle_ms_bind_step ,rega 
+0x2ff8 008759 branch g24_set_contw_with_regb_store_1byte 
+:      008761 g24_dongle_bind_second_step_keyboard:
+0x2ff9 008762 call g24_dongle_bind_kb_payload_cfg 
+0x2ffa 008763 setarg offset_dongle_kb_bind_step 
+0x2ffb 008764 call g24_set_rega_ifetch_1byte 
+0x2ffc 008766 beq 1 ,g24_dongle_kb_bind_step_set2 
+0x2ffd 008767 rtn 
+:      008768 g24_dongle_kb_bind_step_set2:
+0x2ffe 008769 setarg 2 
+:      008771 g24_store_mem_kb_bind_step:
+0x2fff 008772 arg offset_dongle_kb_bind_step ,rega 
+0x3000 008773 branch g24_set_contw_with_regb_store_1byte 
+:      008775 g24_dongle_bind_third_step:
+0x3001 008776 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3002 008777 beq bind_mouse ,g24_dongle_bind_third_step_mouse 
+0x3003 008778 beq bind_keyboard ,g24_dongle_bind_third_step_keyboard 
+0x3004 008779 rtn 
+:      008780 g24_dongle_bind_third_step_mouse:
+0x3005 008781 setarg offset_dongle_ms_bind_step 
+0x3006 008782 call g24_set_rega_ifetch_1byte 
+0x3007 008784 beq 2 ,g24_dongle_ms_bind_step_success 
+0x3008 008785 rtn 
+:      008786 g24_dongle_ms_bind_step_success:
+0x3009 008787 call g24_fetch_mem_bind_device_status 
+0x300a 008789 or_into 0x01 ,pdata 
+0x300b 008790 call g24_store_mem_bind_device_status 
+:      008792 g24_dongle_bind_exit:
+0x300c 008793 setarg 0 
+0x300d 008794 setarg offset_dongle_ms_bind_step 
+0x300e 008795 iadd regc ,contw 
+0x300f 008796 istore 2 ,contw 
+0x3010 008797 branch g24_rx_interrupt_clear 
+:      008799 g24_dongle_bind_third_step_keyboard:
+0x3011 008800 setarg offset_dongle_kb_bind_step 
+0x3012 008801 call g24_set_rega_ifetch_1byte 
+0x3013 008803 bne 0 ,g24_dongle_kb_bind_step_success 
+0x3014 008804 rtn 
+:      008805 g24_dongle_kb_bind_step_success:
+0x3015 008806 call g24_fetch_mem_bind_device_status 
+0x3016 008808 or_into 0x02 ,pdata 
+0x3017 008809 call g24_store_mem_bind_device_status 
+0x3018 008811 branch g24_dongle_bind_exit 
+:      008814 dongle_usb_dispatch:
+0x3019 008815 fetch 1 ,mem_usb0_get_set_report 
+0x301a 008816 rtn blank 
+0x301b 008817 jam 0 ,mem_usb0_get_set_report 
+0x301c 008818 fetch 2 ,mem_usb_setup_bvalue_temp 
+0x301d 008819 arg pc_set_report ,temp 
+0x301e 008820 isub temp ,null 
+0x301f 008821 nrtn zero 
+0x3020 008823 fetch 1 ,mem_usb0_set_report_data 
+0x3021 008824 rtnne pc_report_id 
+0x3022 008825 fetch 1 ,mem_usb0_set_report_data + 1 
+0x3023 008826 bpatch patch17_6 ,mem_patch17 
+0x3024 008827 beq command_mode ,dongle_dispose_cmd_mode 
+0x3025 008828 beq command_bind ,dongle_dispose_cmd_bind 
+0x3026 008829 beq command_current_project ,dongle_dispose_cmd_current_project 
+0x3027 008830 beq command_current_mode ,dongle_dispose_cmd_current_mode 
+0x3028 008831 beq command_current_fw_version ,dongle_dispose_cmd_current_fw_version 
+0x3029 008832 beq command_user_defined ,dongle_dispose_cmd_user_defined 
+:      008833 usb0_data_ready_report_set0:
+0x302a 008834 jam 0 ,mem_usb0_data_ready_report 
+0x302b 008835 rtn 
+:      008836 dongle_dispose_cmd_bind:
+0x302c 008837 fetch 1 ,mem_usb0_set_report_data + 2 
+0x302d 008838 beq com_bind_get ,dongle_dispose_cmd_get_bind 
+0x302e 008839 beq com_bind_exit ,dongle_dispose_cmd_exit_bind 
+0x302f 008840 beq com_read_mode ,dongle_dispose_cmd_read_mode 
+0x3030 008841 branch usb0_data_ready_report_set0 
+:      008842 dongle_dispose_cmd_get_bind:
+0x3031 008843 call g24_fetch_mem_bind_device_status 
+0x3032 008845 store 1 ,mem_usb0_get_report_data + 1 
+0x3033 008846 branch usb0_data_ready_report_set1 
+:      008847 dongle_dispose_cmd_exit_bind:
+0x3034 008848 call g24_set_work_mem_dongle_work_mode 
+0x3035 008850 call g24_set0_mem_dongle_mode_init 
+0x3036 008852 call g24_fetch_mem_bind_device_status 
+0x3037 008854 store 1 ,mem_usb0_get_report_data + 1 
+0x3038 008855 branch usb0_data_ready_report_set1 
+:      008857 dongle_dispose_cmd_read_mode:
+:      008858 dongle_dispose_in_bind_mode:
+0x3039 008859 jam command_bind ,mem_usb0_get_report_data + 1 
+0x303a 008860 branch usb0_data_ready_report_set1 
+:      008862 dongle_dispose_cmd_mode:
+0x303b 008863 fetch 1 ,mem_usb0_set_report_data + 2 
+0x303c 008864 beq com_mode_bind ,dongle_enter_bind_mode 
+0x303d 008866 branch usb0_data_ready_report_set0 
+:      008867 dongle_enter_bind_mode:
+0x303e 008870 call g24_bind_mode_enable 
+:      008871 usb0_data_ready_report_set1:
+0x303f 008872 jam 1 ,mem_usb0_data_ready_report 
+0x3040 008873 rtn 
+:      008878 dongle_dispose_cmd_current_project:
+0x3041 008879 jam product_id ,mem_usb0_get_report_data + 1 
+0x3042 008880 branch usb0_data_ready_report_set1 
+:      008882 dongle_dispose_cmd_current_mode:
+0x3043 008883 call g24_fetch_mem_dongle_work_mode 
+0x3044 008885 beq dongle_work ,dongle_dispose_in_work_mode 
+0x3045 008886 beq dongle_bind ,dongle_dispose_in_bind_mode 
+0x3046 008888 rtn 
+:      008889 dongle_dispose_in_work_mode:
+0x3047 008890 jam command_mode ,mem_usb0_get_report_data + 1 
+0x3048 008891 branch usb0_data_ready_report_set1 
+:      008896 dongle_dispose_cmd_current_fw_version:
+0x3049 008897 jam fw_version0 ,mem_usb0_get_report_data + 1 
+0x304a 008898 jam fw_version1 ,mem_usb0_get_report_data + 2 
+0x304b 008899 jam fw_version2 ,mem_usb0_get_report_data + 3 
+0x304c 008900 branch usb0_data_ready_report_set1 
+:      008902 dongle_dispose_cmd_user_defined:
+0x304d 008904 call g24_set1_mem_ackpayload_enable 
+0x304e 008905 fetch 1 ,mem_usb0_set_report_data + 2 
+0x304f 008906 increase 2 ,pdata 
+0x3050 008907 copy pdata ,loopcnt 
+0x3051 008908 arg mem_usb0_set_report_data ,contr 
+0x3052 008909 setarg offset_24g_ackpayload 
+0x3053 008910 iadd regc ,contw 
+0x3054 008911 branch memcpy 
+:      008914 dongle_auto_bind:
+0x3055 008915 bpatch patch17_7 ,mem_patch17 
+0x3056 008916 call g24_mode_switch_init 
+:      008917 dongle_auto_bind_loop:
+0x3057 008918 call g24_receive_process 
+0x3058 008919 call usb_isr 
+0x3059 008920 branch dongle_auto_bind_loop 
+:      008922 g24_dongle_work_mode_auto:
+0x305a 008923 call g24_fetch_mem_dongle_work_mode 
+0x305b 008925 rtnne dongle_work 
+0x305c 008926 call g24_dongle_work_mode_start 
+0x305d 008927 branch g24_rx_nodata_process 
+:      008929 g24_dongle_bind_mode_auto:
+0x305e 008930 call g24_fetch_mem_dongle_work_mode 
+0x305f 008932 rtnne dongle_bind 
+0x3060 008933 call g24_dongle_bind_init 
+0x3061 008934 call g24_dongle_bind_data_process 
+0x3062 008935 call g24_fetch_mem_bind_device_status 
+0x3063 008937 rtn blank 
+0x3064 008938 call g24_set0_mem_mode_switch 
+0x3065 008940 call dongle_check_mode 
+0x3066 008941 call g24_enable_nodata_timer 
+:      008942 g24_timer_init:
+0x3067 008943 setarg 0 
+0x3068 008944 add regc ,offset_24g_tx_btclk ,contw 
+0x3069 008946 branch g24_contw_istore_4byte 
+:      008948 g24_timer_check:
+0x306a 008949 call disable_user 
+0x306b 008950 add regc ,offset_24g_tx_btclk ,rega 
+0x306c 008951 ifetcht 4 ,rega 
+0x306d 008953 copy clkn_bt ,pdata 
+0x306e 008954 isub temp ,null 
+0x306f 008955 ncall g24_timer_timeout ,positive 
+0x3070 008956 copy pdata ,regb 
+0x3071 008957 add regc ,offset_24g_tx_btclk ,rega 
+0x3072 008958 ifetch 4 ,rega 
+0x3073 008960 add regc ,offset_24g_interval ,rega 
+0x3074 008961 ifetcht 1 ,rega 
+0x3075 008963 iadd temp ,temp 
+0x3076 008964 copy regb ,pdata 
+0x3077 008965 isub temp ,null 
+0x3078 008966 nrtn positive 
+0x3079 008967 set0 28 ,pdata 
+0x307a 008968 add regc ,offset_24g_tx_btclk ,contw 
+0x307b 008969 istore 4 ,contw 
+0x307c 008971 branch enable_user 
+:      008973 g24_mode_switch_init:
+0x307d 008974 setarg 1 
+0x307e 008975 call g24_store_mem_mode_switch 
+0x307f 008977 call g24_set0_mem_time_slice 
+0x3080 008979 setarg 0xff 
+0x3081 008980 add regc ,offset_24g_interval ,contw 
+0x3082 008981 istore 1 ,contw 
+0x3083 008983 branch g24_timer_init 
+:      008985 g24_mode_switch:
+0x3084 008986 setarg offset_24g_mode_switch 
+0x3085 008987 call g24_set_rega_ifetch_1byte 
+0x3086 008989 rtn blank 
+0x3087 008990 call g24_timer_check 
+0x3088 008991 nrtn user 
+0x3089 008992 call g24_fetch_mem_time_slice 
+0x308a 008994 increase 1 ,pdata 
+0x308b 008995 and_into 1 ,pdata 
+0x308c 008996 call g24_store_mem_time_slice 
+0x308d 008998 beq 0 ,dongle_check_mode 
+0x308e 008999 beq 1 ,g24_bind_mode_enable 
+0x308f 009000 rtn 
+:      009002 g24_bind_mode_enable:
+0x3090 009006 setarg dongle_bind 
+0x3091 009007 call g24_store_mem_dongle_work_mode 
+0x3092 009008 branch g24_set0_mem_dongle_mode_init 
+:      009010 g24_enable_nodata_timer:
+0x3093 009011 setarg 1 
+0x3094 009012 call g24_store_mem_nodata_timer_enable 
+:      009014 g24_enable_nodata_timer_init:
+0x3095 009015 setarg timer_nodata_delay 
+0x3096 009016 arg timer_nodata ,queue 
+0x3097 009017 branch timer_init 
+:      009019 g24_rx_nodata_process:
+0x3098 009020 call g24_fetch_mem_nodata_timer_enable 
+0x3099 009022 rtn blank 
+0x309a 009023 arg timer_nodata ,queue 
+0x309b 009024 call timer_check 
+0x309c 009025 nrtn blank 
+0x309d 009026 call g24_set0_mem_nodata_timer_enable 
+0x309e 009029 setarg dongle_search 
+0x309f 009030 call g24_store_mem_dongle_work_mode 
+0x30a0 009032 call g24_set0_mem_dongle_mode_init 
+0x30a1 009034 branch g24_rx_interrupt_clear 
+:      009036 g24_dongle_search_mode_auto:
+0x30a2 009037 bpatch patch18_0 ,mem_patch18 
+0x30a3 009038 call g24_fetch_mem_dongle_work_mode 
+0x30a4 009040 rtnne dongle_search 
+0x30a5 009041 call g24_dongle_search_mode_init 
+0x30a6 009042 call g24_rx_auto_addr_ch_search 
+0x30a7 009043 call g24_receive_transmit_ack 
+0x30a8 009044 nbranch g24_rx_interrupt_clear ,user3 
+0x30a9 009046 call g24_dongle_search_addr_check 
+0x30aa 009047 call g24_receive_packet_parse ,zero 
+0x30ab 009051 call dongle_check_mode 
+0x30ac 009052 call g24_fetch_mem_dongle_mode_init 
+0x30ad 009054 set1 dongle_work ,pdata 
+0x30ae 009055 call g24_store_mem_dongle_mode_init 
+0x30af 009057 call g24_rx_interrupt_clear 
+0x30b0 009058 call g24_enable_nodata_timer 
+0x30b1 009059 call g24_dongle_search_addr_check 
+0x30b2 009060 branch g24_dg_ch_num_reinit ,zero 
+0x30b3 009061 setarg offset_24g_kb_addr 
+0x30b4 009062 call g24_set_rega_ifetcht_4byte 
+0x30b5 009064 call g24_fetch_mem_addr_isub_temp 
+0x30b6 009065 branch g24_kb_ch_num_reinit ,zero 
+0x30b7 009066 setarg offset_24g_mouse_addr 
+0x30b8 009067 call g24_set_rega_ifetcht_4byte 
+0x30b9 009069 call g24_fetch_mem_addr_isub_temp 
+0x30ba 009070 branch g24_ms_ch_num_reinit ,zero 
+0x30bb 009071 rtn 
+:      009073 g24_dongle_search_addr_check:
+0x30bc 009074 setarg offset_24g_rx_addr 
+0x30bd 009075 call g24_set_rega_ifetcht_4byte 
+:      009077 g24_fetch_mem_addr_isub_temp:
+0x30be 009078 call g24_fetch_mem_addr 
+0x30bf 009080 isub temp ,null 
+0x30c0 009081 rtn 
+:      009083 g24_dg_ch_num_reinit:
+0x30c1 009084 setarg offset_24g_dg_ch_number 
+0x30c2 009085 call g24_set_rega_ifetch_1byte 
+:      009087 g24_current_ch_num_reinit:
+0x30c3 009089 add regc ,offset_24g_current_ch_number ,contw 
+0x30c4 009090 branch g24_contw_istore_1byte 
+:      009092 g24_kb_ch_num_reinit:
+0x30c5 009093 setarg offset_24g_kb_ch_number 
+0x30c6 009094 call g24_set_rega_ifetch_1byte 
+0x30c7 009096 branch g24_current_ch_num_reinit 
+:      009097 g24_ms_ch_num_reinit:
+0x30c8 009098 setarg offset_24g_ms_ch_number 
+0x30c9 009099 call g24_set_rega_ifetch_1byte 
+0x30ca 009101 branch g24_current_ch_num_reinit 
+:      009103 g24_dongle_search_mode_init:
+0x30cb 009104 call g24_fetch_mem_dongle_mode_init 
+0x30cc 009106 rtnbit1 dongle_search 
+0x30cd 009107 set1 dongle_search ,pdata 
+0x30ce 009108 call g24_store_mem_dongle_mode_init 
+0x30cf 009110 call g24_set0_mem_time_slice 
+0x30d0 009112 call g24_set1_mem_ackpayload_enable 
+0x30d1 009114 setarg 0 
+0x30d2 009115 add regc ,offset_rssi_noise_dg_index ,contw 
+0x30d3 009116 istore 3 ,contw 
+0x30d4 009118 arg offset_24g_dg_config_ch_once ,rega 
+0x30d5 009119 call g24_set_contw_with_temp 
+0x30d6 009120 istore 7 ,contw 
+0x30d7 009123 call g24_dongle_search_addr_check 
+0x30d8 009124 nrtn zero 
+0x30d9 009125 add regc ,offset_24g_current_ch_number ,rega 
+0x30da 009126 ifetch 1 ,rega 
+0x30db 009128 arg offset_24g_dg_ch_number ,rega 
+0x30dc 009129 call g24_set_contw_with_regb_store_1byte 
+0x30dd 009131 add regc ,offset_24g_ch ,rega 
+0x30de 009132 ifetch 1 ,rega 
+0x30df 009135 branch g24_store_mem_dg_last_ch 
+:      009137 g24_rx_auto_addr_ch_search:
+0x30e0 009138 bpatch patch18_1 ,mem_patch18 
+0x30e1 009139 call g24_fetch_mem_time_slice 
+0x30e2 009141 increase 1 ,pdata 
+0x30e3 009142 and_into 3 ,pdata 
+0x30e4 009143 call g24_store_mem_time_slice 
+0x30e5 009146 beq 0 ,g24_rx_auto_bind_config_kb 
+0x30e6 009147 beq 1 ,g24_rx_auto_bind_config_dongle 
+0x30e7 009148 beq 2 ,g24_rx_auto_bind_config_mouse 
+0x30e8 009149 beq 3 ,g24_rx_auto_bind_config_dongle 
+0x30e9 009150 rtn 
+:      009152 g24_rx_auto_bind_config_mouse:
+0x30ea 009153 call g24_dongle_bind_ms_payload_cfg 
+0x30eb 009154 setarg offset_24g_mouse_addr 
+0x30ec 009155 call g24_set_rega_ifetch_4byte 
+0x30ed 009157 branch g24_rx_auto_addr_ch_search ,blank 
+0x30ee 009158 call g24_store_mem_addr 
+0x30ef 009160 setarg offset_24g_ms_config_ch_once 
+0x30f0 009161 call g24_set_rega_ifetch_1byte 
+0x30f1 009163 call g24_ms_config_ch_once ,blank 
+0x30f2 009164 setarg offset_24g_ms_last_ch 
+0x30f3 009165 call g24_set_rega_ifetch_1byte 
+0x30f4 009167 call g24_store_mem_ch 
+0x30f5 009169 add regc ,offset_rssi_noise_ms_index ,rega 
+0x30f6 009170 ifetcht 1 ,rega 
+0x30f7 009172 arg mem_rssi_noise_ms_buffer ,rega 
+0x30f8 009173 call rssi_noise_store 
+0x30f9 009174 add regc ,offset_rssi_noise_ms_index ,contw 
+0x30fa 009175 istoret 1 ,contw 
+0x30fb 009177 call g24_noise_rssi_average 
+0x30fc 009178 add regc ,offset_rssi_noise_ms_avg ,contw 
+0x30fd 009179 istoret 1 ,contw 
+0x30fe 009181 sub temp ,rssi_thresh_noise ,null 
+0x30ff 009182 nrtn positive 
+0x3100 009183 setarg offset_24g_ms_ch_number 
+0x3101 009184 call g24_set_rega_ifetcht_1byte 
+0x3102 009186 call g24_ch_temp_incre_size4 
+0x3103 009187 arg offset_24g_ms_ch_number ,rega 
+0x3104 009188 call g24_set_contw_with_regb2 
+0x3105 009189 istoret 1 ,contw 
+:      009191 g24_store_mem_ms_last_ch:
+0x3106 009193 arg offset_24g_ms_last_ch ,rega 
+0x3107 009194 branch g24_set_contw_with_regb_store_1byte 
+:      009196 g24_ms_config_ch_once:
+0x3108 009197 setarg 1 
+0x3109 009198 arg offset_24g_ms_config_ch_once ,rega 
+0x310a 009199 call g24_set_contw_with_regb_store_1byte 
+0x310b 009201 arg 0 ,temp 
+0x310c 009202 call g24_ch_calc 
+0x310d 009205 branch g24_store_mem_ms_last_ch 
+:      009207 g24_rx_auto_bind_config_kb:
+0x310e 009208 call g24_dongle_bind_kb_payload_cfg 
+0x310f 009209 setarg offset_24g_kb_addr 
+0x3110 009210 call g24_set_rega_ifetch_4byte 
+0x3111 009212 branch g24_rx_auto_addr_ch_search ,blank 
+0x3112 009213 call g24_store_mem_addr 
+0x3113 009215 setarg offset_24g_kb_config_ch_once 
+0x3114 009216 call g24_set_rega_ifetch_1byte 
+0x3115 009218 call g24_kb_config_ch_once ,blank 
+0x3116 009219 setarg offset_24g_kb_last_ch 
+0x3117 009220 call g24_set_rega_ifetch_1byte 
+0x3118 009222 call g24_store_mem_ch 
+0x3119 009224 add regc ,offset_rssi_noise_kb_index ,rega 
+0x311a 009225 ifetcht 1 ,rega 
+0x311b 009227 arg mem_rssi_noise_kb_buffer ,rega 
+0x311c 009228 call rssi_noise_store 
+0x311d 009229 add regc ,offset_rssi_noise_kb_index ,contw 
+0x311e 009230 istoret 1 ,contw 
+0x311f 009232 call g24_noise_rssi_average 
+0x3120 009233 add regc ,offset_rssi_noise_kb_avg ,contw 
+0x3121 009234 istoret 1 ,contw 
+0x3122 009236 sub temp ,rssi_thresh_noise ,null 
+0x3123 009237 nrtn positive 
+0x3124 009238 setarg offset_24g_kb_ch_number 
+0x3125 009239 call g24_set_rega_ifetcht_1byte 
+0x3126 009241 call g24_ch_temp_incre_size4 
+0x3127 009242 arg offset_24g_kb_ch_number ,rega 
+0x3128 009243 call g24_set_contw_with_regb2 
+0x3129 009244 istoret 1 ,contw 
+:      009246 g24_store_mem_kb_last_ch:
+0x312a 009248 arg offset_24g_kb_last_ch ,rega 
+0x312b 009249 branch g24_set_contw_with_regb_store_1byte 
+:      009251 g24_kb_config_ch_once:
+0x312c 009252 setarg 1 
+0x312d 009253 arg offset_24g_kb_config_ch_once ,rega 
+0x312e 009254 call g24_set_contw_with_regb_store_1byte 
+0x312f 009256 arg 0 ,temp 
+0x3130 009257 call g24_ch_calc 
+0x3131 009260 branch g24_store_mem_kb_last_ch 
+:      009262 g24_rx_auto_bind_config_dongle:
+0x3132 009263 call g24_dongle_bind_ms_payload_cfg 
+0x3133 009264 call g24_fetch_mem_rx_addr 
+0x3134 009266 call g24_store_mem_addr 
+0x3135 009268 setarg offset_24g_dg_config_ch_once 
+0x3136 009269 call g24_set_rega_ifetch_1byte 
+0x3137 009271 call g24_dg_config_ch_once ,blank 
+0x3138 009272 call g24_dg_store_config_ch 
+0x3139 009273 add regc ,offset_rssi_noise_dg_index ,rega 
+0x313a 009274 ifetcht 1 ,rega 
+0x313b 009276 arg mem_rssi_noise_dg_buffer ,rega 
+0x313c 009277 call rssi_noise_store 
+0x313d 009278 add regc ,offset_rssi_noise_dg_index ,contw 
+0x313e 009279 istoret 1 ,contw 
+0x313f 009281 call g24_noise_rssi_average 
+0x3140 009282 add regc ,offset_rssi_noise_dg_avg ,contw 
+0x3141 009283 istoret 1 ,contw 
+0x3142 009285 sub temp ,rssi_thresh_noise ,null 
+0x3143 009286 nrtn positive 
+0x3144 009287 setarg offset_24g_dg_ch_number 
+0x3145 009288 call g24_set_rega_ifetcht_1byte 
+0x3146 009290 call g24_ch_temp_incre_size4 
+0x3147 009291 arg offset_24g_dg_ch_number ,rega 
+0x3148 009292 call g24_set_contw_with_regb2 
+0x3149 009293 istoret 1 ,contw 
+:      009295 g24_store_mem_dg_last_ch:
+0x314a 009298 arg offset_24g_dg_last_ch ,rega 
+0x314b 009299 branch g24_set_contw_with_regb_store_1byte 
+:      009302 g24_dg_config_ch_once:
+0x314c 009307 setarg 1 
+0x314d 009308 arg offset_24g_dg_config_ch_once ,rega 
+0x314e 009309 call g24_set_contw_with_regb_store_1byte 
+:      009310 g24_dg_store_config_ch:
+0x314f 009311 setarg offset_24g_dg_last_ch 
+0x3150 009312 call g24_set_rega_ifetch_1byte 
+0x3151 009313 branch g24_store_mem_ch 
+:      009316 g24_transmit_ack:
+0x3152 009318 add regc ,offset_24g_rxbuf ,rega 
+0x3153 009319 ifetch 1 ,rega 
+0x3154 009321 call g24_store_mem_data_type 
+0x3155 009324 call g24_read_len_pid_crc 
+0x3156 009326 call g24_fetch_mem_rxbuf_add1 
+0x3157 009328 isolate1 bit_ack_24g ,pdata 
+0x3158 009329 branch g24tx_no_ack ,true 
+:      009330 g24tx_with_ack:
+0x3159 009331 call g24_ackpayload_prep 
+0x315a 009332 call g24_transmit_prep 
+0x315b 009333 call g24_transmit 
+:      009334 g24tx_no_ack:
+0x315c 009335 branch g24_end_of_packet 
+:      009337 g24_ackpayload_prep:
+0x315d 009338 bpatch patch18_2 ,mem_patch18 
+0x315e 009339 add regc ,offset_24g_datalen ,contw 
+0x315f 009340 call g24_mem_set0 
+0x3160 009342 setarg offset_24g_ackpayload_enable 
+0x3161 009343 call g24_set_rega_ifetch_1byte 
+0x3162 009345 rtn blank 
+0x3163 009346 setarg 0x06 
+0x3164 009347 add regc ,offset_24g_datalen ,contw 
+0x3165 009348 istore 1 ,contw 
+0x3166 009350 arg 0x06 ,loopcnt 
+0x3167 009351 setarg offset_24g_bind_payload 
+0x3168 009352 iadd regc ,contr 
+0x3169 009354 add regc ,offset_24g_txbuf ,contw 
+0x316a 009356 branch memcpy 
+:      009359 g24_receive_packet_start:
+0x316b 009360 call g24_receive_transmit_ack 
+0x316c 009361 nbranch g24_rx_interrupt_clear ,user3 
+0x316d 009362 branch g24_receive_packet_parse 
+:      009364 g24_receive_transmit_ack:
+0x316e 009365 call g24_rx_interrupt_clear 
+0x316f 009366 call g24_receive_packet 
+0x3170 009367 nrtn user3 
+0x3171 009368 branch g24_transmit_ack 
+:      009370 g24_receive_packet_parse:
+0x3172 009371 bpatch patch18_3 ,mem_patch18 
+0x3173 009372 call g24_receive_packet_parse_pid_crc 
+0x3174 009373 nbranch g24_rx_interrupt_clear ,user 
+0x3175 009374 add regc ,offset_24g_rxdata_length ,rega 
+0x3176 009375 ifetch 1 ,rega 
+0x3177 009377 branch g24_rx_interrupt_clear ,blank 
+0x3178 009378 increase 2 ,pdata 
+0x3179 009379 iforce loopcnt 
+0x317a 009380 add regc ,offset_24g_rxbuf ,contr 
+0x317b 009382 setarg offset_24g_rxdata_temp 
+0x317c 009383 iadd regc ,contw 
+0x317d 009385 call memcpy 
+0x317e 009386 call g24_set0_mem_mode_switch 
+0x317f 009388 call g24_fetch_mem_pair_mode 
+0x3180 009390 call g24_enable_nodata_timer ,blank 
+0x3181 009391 setarg offset_24g_rxdata_temp_add2 
+0x3182 009392 call g24_set_rega_ifetch_1byte 
+0x3183 009394 beq 0x01 ,g24_data_type1 
+0x3184 009395 beq 0x02 ,g24_data_type2 
+0x3185 009396 beq 0x03 ,g24_data_type3 
+0x3186 009397 beq 0xff ,g24_data_attemp 
+0x3187 009398 branch g24_rx_interrupt_clear 
+:      009400 g24_receive_packet_parse_pid_crc:
+0x3188 009401 call g24_head_ptr2regc 
+0x3189 009402 call disable_user 
+0x318a 009403 add regc ,offset_24g_sta_pid ,rega 
+0x318b 009404 ifetch 1 ,rega 
+0x318c 009406 add regc ,offset_24g_last_pid ,rega 
+0x318d 009407 ifetcht 1 ,rega 
+0x318e 009409 isub temp ,null 
+0x318f 009410 ncall enable_user ,zero 
+0x3190 009411 add regc ,offset_24g_sta_pid ,rega 
+0x3191 009412 ifetch 1 ,rega 
+0x3192 009414 add regc ,offset_24g_last_pid ,contw 
+0x3193 009415 istore 1 ,contw 
+0x3194 009417 add regc ,offset_24g_sta_crc ,rega 
+0x3195 009418 ifetch 3 ,rega 
+0x3196 009420 add regc ,offset_24g_last_crc ,rega 
+0x3197 009421 ifetcht 3 ,rega 
+0x3198 009423 isub temp ,null 
+0x3199 009424 ncall enable_user ,zero 
+0x319a 009425 add regc ,offset_24g_sta_crc ,rega 
+0x319b 009426 ifetch 3 ,rega 
+0x319c 009428 add regc ,offset_24g_last_crc ,contw 
+0x319d 009430 branch g24_contw_istore_3byte 
+:      009432 g24_data_type1:
+0x319e 009433 call g24_ch_timer_reinit 
+0x319f 009434 call g24_fetch_mem_abort_pac 
+0x31a0 009435 store 1 ,mem_temp 
+0x31a1 009437 call g24_fetcht_mem_rxdata_temp 
+0x31a2 009438 fetch 1 ,mem_temp 
+0x31a3 009440 isolate1 bit_abort ,temp 
+0x31a4 009441 setflag true ,0 ,pdata 
+0x31a5 009442 add regc ,offset_24g_abort_pac ,contw 
+0x31a6 009443 istore 1 ,contw 
+0x31a7 009445 beq 1 ,g24_data_attemp_mouse 
+0x31a8 009446 call g24_fetch_mem_hop_pac 
+0x31a9 009448 call g24_fetcht_mem_rxdata_temp 
+0x31aa 009450 isolate1 bit_hop ,temp 
+0x31ab 009451 setflag true ,0 ,pdata 
+0x31ac 009452 call g24_store_mem_hop_pac 
+0x31ad 009454 add regc ,offset_24g_cb_rxdata_type1 ,rega 
+0x31ae 009455 ifetch 2 ,rega 
+0x31af 009457 branch callback_func 
+:      009459 dongle_rxdata_type1:
+0x31b0 009460 setarg ms_report_id 
+0x31b1 009461 store 1 ,mem_usb_mouse_data 
+0x31b2 009462 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b3 009464 istore 7 ,contw 
+0x31b4 009465 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b5 009467 ncall g24_ms_enable_blank_data_forcibly ,blank 
+0x31b6 009468 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b7 009470 call g24_ms_disable_blank_data_forcibly ,blank 
+:      009471 g24_data_type1_usbtx_enable:
+0x31b8 009472 jam usb_ep2_ms ,mem_usb_ep2_data 
+:      009473 g24_data_type1_usbtx_enable_ep2:
+0x31b9 009474 fetch 1 ,mem_usb_tx_enable 
+0x31ba 009475 set1 2 ,pdata 
+0x31bb 009476 store 1 ,mem_usb_tx_enable 
+0x31bc 009477 rtn 
+:      009479 g24_ms_enable_blank_data_forcibly:
+0x31bd 009480 setarg 1 
+0x31be 009481 call g24_store_mem_ms_blank_data_enable 
+:      009483 g24_ms_enable_blank_data_timer:
+0x31bf 009484 setarg timer_ms_blank_delay 
+0x31c0 009485 arg timer_ms_blank ,queue 
+0x31c1 009486 branch timer_init 
+:      009487 g24_ms_disable_blank_data_forcibly:
+0x31c2 009488 call g24_set0_mem_ms_blank_data_enable 
+:      009490 g24_ms_disable_blank_data_timer:
+0x31c3 009491 setarg 0 
+0x31c4 009492 arg timer_ms_blank ,queue 
+0x31c5 009493 branch timer_init 
+:      009495 g24_data_type2:
+0x31c6 009496 call g24_fetcht_mem_rxdata_temp 
+0x31c7 009498 isolate1 bit_abort ,temp 
+0x31c8 009499 branch g24_data_attemp_kbd ,true 
+0x31c9 009500 arg mem_usb_kb_data ,contw 
+0x31ca 009501 call g24_data_type2_reverse_data 
+0x31cb 009502 fetch 8 ,mem_usb_kb_data 
+0x31cc 009503 ncall g24_kb_enable_blank_data_forcibly ,blank 
+0x31cd 009504 fetch 8 ,mem_usb_kb_data 
+0x31ce 009505 call g24_kb_disable_blank_data_forcibly ,blank 
+0x31cf 009506 call g24_head_ptr2regc 
+0x31d0 009507 fetch 8 ,mem_usb_kb_data 
+0x31d1 009508 arg offset_24g_kb_data_sta_data ,rega 
+0x31d2 009509 call g24_set_contw_with_temp 
+0x31d3 009510 istore 8 ,contw 
+0x31d4 009512 setarg offset_24g_kb_data_last_data 
+0x31d5 009513 iadd regc ,rega 
+0x31d6 009514 ifetcht 8 ,rega 
+0x31d7 009516 isub temp ,null 
+0x31d8 009517 ncall g24_kb_data_dispose ,zero 
+0x31d9 009518 setarg offset_24g_kb_data_sta_data 
+0x31da 009519 iadd regc ,rega 
+0x31db 009520 ifetch 8 ,rega 
+0x31dc 009522 arg offset_24g_kb_data_last_data ,rega 
+0x31dd 009523 call g24_set_contw_with_temp 
+0x31de 009524 istore 8 ,contw 
+0x31df 009526 branch g24_rx_interrupt_clear 
+:      009528 g24_data_type2_reverse_data:
+0x31e0 009529 setarg offset_24g_rxdata_temp_add2 
+0x31e1 009530 iadd regc ,contr 
+0x31e2 009532 arg 9 ,loopcnt 
+0x31e3 009533 branch reverse_byte 
+:      009535 g24_kb_enable_blank_data_forcibly:
+0x31e4 009536 setarg 1 
+0x31e5 009537 call g24_store_mem_kb_blank_data_enable 
+:      009539 g24_kb_enable_blank_data_timer:
+0x31e6 009540 setarg timer_kb_blank_delay 
+0x31e7 009541 arg timer_kb_blank ,queue 
+0x31e8 009542 branch timer_init 
+:      009544 g24_kb_disable_blank_data_forcibly:
+0x31e9 009545 call g24_set0_mem_kb_blank_data_enable 
+:      009547 g24_kb_disable_blank_data_timer:
+0x31ea 009548 setarg 0 
+0x31eb 009549 arg timer_kb_blank ,queue 
+0x31ec 009550 branch timer_init 
+:      009552 g24_kb_data_dispose:
+:      009553 g24_kb_data_into_ep1_fifo:
+0x31ed 009554 jam usb_ep1_kb ,mem_usb_ep1_data 
+0x31ee 009555 fetch 1 ,mem_usb_tx_enable 
+0x31ef 009556 set1 1 ,pdata 
+0x31f0 009557 store 1 ,mem_usb_tx_enable 
+0x31f1 009558 rtn 
+:      009560 g24_data_type3:
+0x31f2 009561 arg mem_usb_kb_multikey ,contw 
+0x31f3 009562 call g24_data_type2_reverse_data 
+0x31f4 009563 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f5 009564 ncall g24_kb_mul_enable_blank_data_forcibly ,blank 
+0x31f6 009565 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f7 009566 call g24_kb_mul_disable_blank_data_forcibly ,blank 
+0x31f8 009567 call g24_head_ptr2regc 
+0x31f9 009568 fetch 3 ,mem_usb_kb_multikey 
+0x31fa 009569 arg offset_24g_kb_multikey_sta_data ,rega 
+0x31fb 009570 call g24_set_contw_with_temp_store_3byte 
+0x31fc 009572 setarg offset_24g_kb_multikey_last_data 
+0x31fd 009573 iadd regc ,rega 
+0x31fe 009574 ifetcht 3 ,rega 
+0x31ff 009576 isub temp ,null 
+0x3200 009577 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
+0x3201 009578 setarg offset_24g_kb_multikey_sta_data 
+0x3202 009579 iadd regc ,rega 
+0x3203 009580 ifetch 3 ,rega 
+0x3204 009582 arg offset_24g_kb_multikey_last_data ,rega 
+0x3205 009583 call g24_set_contw_with_temp_store_3byte 
+0x3206 009585 branch g24_rx_interrupt_clear 
+:      009587 g24_kb_mul_data_into_ep2_fifo:
+0x3207 009588 jam usb_ep2_multikey ,mem_usb_ep2_data 
+0x3208 009589 branch g24_data_type1_usbtx_enable_ep2 
+:      009591 g24_kb_mul_enable_blank_data_forcibly:
+0x3209 009592 setarg 1 
+0x320a 009593 call g24_store_mem_kb_mul_blank_data_enable 
+:      009595 g24_kb_mul_enable_blank_data_timer:
+0x320b 009596 setarg timer_kb_mul_blank_delay 
+0x320c 009597 arg timer_kb_mul_blank ,queue 
+0x320d 009598 branch timer_init 
+:      009600 g24_kb_mul_disable_blank_data_forcibly:
+0x320e 009601 call g24_set0_mem_kb_mul_blank_data_enable 
+:      009603 g24_kb_mul_disable_blank_data_timer:
+0x320f 009604 setarg 0 
+0x3210 009605 arg timer_kb_mul_blank ,queue 
+0x3211 009606 branch timer_init 
+:      009608 g24_data_attemp:
+0x3212 009609 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3213 009611 beq datatype_mouse ,g24_data_attemp_mouse 
+0x3214 009612 beq datatype_keyboard ,g24_data_attemp_kbd 
+0x3215 009613 rtn 
+:      009614 g24_data_attemp_mouse:
+0x3216 009615 setarg offset_24g_rxdata_temp_add4 
+0x3217 009616 call g24_set_rega_ifetch_4byte 
+0x3218 009617 arg offset_24g_mouse_addr ,rega 
+0x3219 009618 call g24_set_contw_with_temp 
+0x321a 009621 branch g24_contw_istore_4byte 
+:      009623 g24_data_attemp_kbd:
+0x321b 009624 setarg offset_24g_rxdata_temp_add4 
+0x321c 009625 call g24_set_rega_ifetch_4byte 
+0x321d 009626 arg offset_24g_kb_addr ,rega 
+0x321e 009627 call g24_set_contw_with_temp 
+0x321f 009630 branch g24_contw_istore_4byte 
+:      009632 g24_store_mem_24g_mode:
+0x3220 009633 call g24_head_ptr2regc 
+0x3221 009634 add regc ,offset_24g_mode ,contw 
+0x3222 009635 istore 1 ,contw 
+0x3223 009636 rtn 
+:      009638 g24_fetch_mem_device_addr:
+0x3224 009639 call g24_head_ptr2regc 
+0x3225 009640 add regc ,offset_24g_device_addr ,rega 
+0x3226 009641 branch g24_rega_ifetch_4byte 
+:      009642 g24_store_mem_device_addr:
+0x3227 009643 call g24_head_ptr2regc 
+0x3228 009644 add regc ,offset_24g_device_addr ,contw 
+0x3229 009645 branch g24_contw_istore_4byte 
+:      009647 g24_fetch_mem_addr:
+0x322a 009648 add regc ,offset_24g_addr ,rega 
+0x322b 009649 branch g24_rega_ifetch_4byte 
+:      009650 g24_store_mem_addr:
+0x322c 009651 add regc ,offset_24g_addr ,contw 
+:      009652 g24_contw_istore_4byte:
+0x322d 009653 istore 4 ,contw 
+0x322e 009654 rtn 
+:      009656 g24_store_mem_ch:
+0x322f 009657 add regc ,offset_24g_ch ,contw 
+0x3230 009658 branch g24_contw_istore_1byte 
+:      009660 g24_set0_mem_pid:
+0x3231 009661 setarg 0 
+:      009662 g24_store_mem_pid:
+0x3232 009663 call g24_head_ptr2regc 
+0x3233 009664 add regc ,offset_24g_pid ,contw 
+0x3234 009665 branch g24_contw_istore_1byte 
+:      009667 g24_store_mem_txpayload:
+0x3235 009668 add regc ,offset_24g_txpayload ,contw 
+0x3236 009669 branch g24_contw_istore_1byte 
+:      009671 g24_set4_mem_max_retry:
+0x3237 009672 setarg 4 
+:      009673 g24_store_mem_max_retry:
+0x3238 009674 add regc ,offset_24g_max_retry ,contw 
+0x3239 009675 branch g24_contw_istore_1byte 
+:      009677 g24_fetch_mem_data_type:
+0x323a 009678 add regc ,offset_24g_data_type ,rega 
+0x323b 009679 branch g24_rega_ifetch_1byte 
+:      009680 g24_store_mem_data_type:
+0x323c 009681 add regc ,offset_24g_data_type ,contw 
+0x323d 009682 branch g24_contw_istore_1byte 
+:      009684 g24_set2_mem_sync_cnt:
+0x323e 009685 setarg 2 
+:      009686 g24_store_mem_sync_cnt:
+0x323f 009687 add regc ,offset_24g_sync_cnt ,contw 
+0x3240 009688 branch g24_contw_istore_1byte 
+:      009690 g24_set1_mem_rf_last_sta:
+0x3241 009691 setarg 1 
+:      009692 g24_store_mem_rf_last_sta:
+0x3242 009693 call g24_head_ptr2regc 
+0x3243 009694 add regc ,offset_24g_rf_last_sta ,contw 
+0x3244 009695 branch g24_contw_istore_1byte 
+:      009697 g24_fetch_mem_hop_pac:
+0x3245 009698 call g24_head_ptr2regc 
+0x3246 009699 add regc ,offset_24g_hop_pac ,rega 
+0x3247 009700 branch g24_rega_ifetch_1byte 
+:      009701 g24_set1_mem_hop_pac:
+0x3248 009702 setarg 1 
+:      009703 g24_store_mem_hop_pac:
+0x3249 009704 call g24_head_ptr2regc 
+0x324a 009705 add regc ,offset_24g_hop_pac ,contw 
+0x324b 009706 branch g24_contw_istore_1byte 
+:      009708 g24_fetch_mem_abort_pac:
+0x324c 009709 call g24_head_ptr2regc 
+0x324d 009710 add regc ,offset_24g_abort_pac ,rega 
+0x324e 009711 branch g24_rega_ifetch_1byte 
+:      009712 g24_set1_mem_abort_pac:
+0x324f 009713 setarg 1 
+:      009714 g24_store_mem_abort_pac:
+0x3250 009715 call g24_head_ptr2regc 
+0x3251 009716 add regc ,offset_24g_abort_pac ,contw 
+0x3252 009717 branch g24_contw_istore_1byte 
+:      009719 g24_fetch_mem_pairing_sm:
+0x3253 009720 call g24_head_ptr2regc 
+0x3254 009721 add regc ,offset_24g_pairing_sm ,rega 
+0x3255 009722 branch g24_rega_ifetch_1byte 
+:      009723 g24_store_mem_pairing_sm:
+0x3256 009724 add regc ,offset_24g_pairing_sm ,contw 
+0x3257 009725 branch g24_contw_istore_1byte 
+:      009727 g24_fetch_mem_rf_hop_ch:
+0x3258 009728 add regc ,offset_24g_rf_hop_ch ,rega 
+0x3259 009729 branch g24_rega_ifetch_1byte 
+:      009730 g24_set0_mem_rf_hop_ch:
+0x325a 009731 setarg 0 
+:      009732 g24_store_mem_rf_hop_ch:
+0x325b 009733 add regc ,offset_24g_rf_hop_ch ,contw 
+0x325c 009734 branch g24_contw_istore_1byte 
+:      009736 g24_fetch_mem_rf_work_stage:
+0x325d 009737 add regc ,offset_24g_rf_work_stage ,rega 
+0x325e 009738 branch g24_rega_ifetch_1byte 
+:      009740 g24_fetch_mem_rxbuf_add1:
+0x325f 009741 add regc ,offset_24g_rxbuf_add1 ,rega 
+0x3260 009742 branch g24_rega_ifetch_1byte 
+:      009744 g24_fetch_mem_check_dongle_times:
+0x3261 009745 add regc ,offset_24g_check_dongle_times ,rega 
+0x3262 009746 branch g24_rega_ifetch_1byte 
+:      009747 g24_set0_mem_check_dongle_times:
+0x3263 009748 setarg 0 
+:      009749 g24_store_mem_check_dongle_times:
+0x3264 009750 call g24_head_ptr2regc 
+0x3265 009751 add regc ,offset_24g_check_dongle_times ,contw 
+0x3266 009752 branch g24_contw_istore_1byte 
+:      009754 g24_store_mem_tx_power:
+0x3267 009755 call g24_head_ptr2regc 
+0x3268 009756 add regc ,offset_tx_power_temp ,rega 
+0x3269 009757 ifetch 1 ,rega 
+:      009758 g24_store_mem_txpower:
+0x326a 009759 store 1 ,mem_tx_power 
+0x326b 009760 rtn 
+:      009762 g24_store_mem_tx_power_temp:
+0x326c 009763 call g24_head_ptr2regc 
+0x326d 009764 fetch 1 ,mem_tx_power 
+0x326e 009766 add regc ,offset_tx_power_temp ,contw 
+0x326f 009767 branch g24_contw_istore_1byte 
+:      009769 g24_fetch_mem_power_ctrl_pac:
+0x3270 009770 add regc ,offset_power_ctrl_packet_cnt ,rega 
+0x3271 009771 branch g24_rega_ifetch_1byte 
+:      009773 g24_store_mem_power_ctrl_level:
+0x3272 009774 add regc ,offset_power_ctrl_level ,contw 
+0x3273 009775 branch g24_contw_istore_1byte 
+:      009777 g24_fetcht_mem_rxdata_temp:
+0x3274 009778 setarg offset_24g_rxdata_temp 
+:      009779 g24_set_rega_ifetcht_1byte:
+0x3275 009780 iadd regc ,rega 
+0x3276 009781 ifetcht 1 ,rega 
+0x3277 009782 rtn 
+:      009784 g24_fetch_mem_rf_laststa:
+0x3278 009785 setarg offset_24g_rf_laststa 
+0x3279 009786 branch g24_set_rega_ifetch_1byte 
+:      009787 g24_set0_mem_rf_laststa:
+0x327a 009788 setarg 0 
+:      009789 g24_store_mem_rf_laststa:
+0x327b 009790 arg offset_24g_rf_laststa ,rega 
+0x327c 009791 branch g24_set_contw_with_regb_store_1byte 
+:      009793 g24_fetch_mem_rx_addr:
+0x327d 009794 setarg offset_24g_rx_addr 
+:      009795 g24_set_rega_ifetch_4byte:
+0x327e 009796 call g24_set_rega 
+:      009797 g24_rega_ifetch_4byte:
+0x327f 009798 ifetch 4 ,rega 
+0x3280 009799 rtn 
+:      009801 g24_fetch_mem_time_slice:
+0x3281 009802 setarg offset_24g_time_slice 
+0x3282 009803 branch g24_set_rega_ifetch_1byte 
+:      009804 g24_set0_mem_time_slice:
+0x3283 009805 setarg 0 
+:      009806 g24_store_mem_time_slice:
+0x3284 009807 arg offset_24g_time_slice ,rega 
+0x3285 009808 branch g24_set_contw_with_regb_store_1byte 
+:      009810 g24_set0_mem_mode_switch:
+0x3286 009811 setarg 0 
+:      009812 g24_store_mem_mode_switch:
+0x3287 009813 arg offset_24g_mode_switch ,rega 
+0x3288 009814 branch g24_set_contw_with_regb_store_1byte 
+:      009816 g24_store_mem_bind_payload:
+0x3289 009817 arg offset_24g_bind_payload ,rega 
+0x328a 009818 branch g24_set_contw_with_regb_store_1byte 
+:      009820 g24_fetch_mem_bind_device_status:
+0x328b 009821 setarg offset_dongle_bind_device_status 
+0x328c 009822 branch g24_set_rega_ifetch_1byte 
+:      009823 g24_store_mem_bind_device_status:
+0x328d 009824 arg offset_dongle_bind_device_status ,rega 
+0x328e 009825 branch g24_set_contw_with_regb_store_1byte 
+:      009827 g24_fetch_mem_dongle_work_mode:
+0x328f 009828 setarg offset_dongle_work_mode 
+0x3290 009829 branch g24_set_rega_ifetch_1byte 
+:      009830 g24_set_work_mem_dongle_work_mode:
+0x3291 009831 setarg dongle_work 
+:      009832 g24_store_mem_dongle_work_mode:
+0x3292 009833 arg offset_dongle_work_mode ,rega 
+0x3293 009834 branch g24_set_contw_with_regb_store_1byte 
+:      009836 g24_fetch_mem_dongle_mode_init:
+0x3294 009837 setarg offset_dongle_mode_init 
+0x3295 009838 branch g24_set_rega_ifetch_1byte 
+:      009839 g24_set0_mem_dongle_mode_init:
+0x3296 009840 setarg clear_init 
+:      009841 g24_store_mem_dongle_mode_init:
+0x3297 009842 arg offset_dongle_mode_init ,rega 
+0x3298 009843 branch g24_set_contw_with_regb_store_1byte 
+:      009845 g24_set0_mem_ackpayload_enable:
+0x3299 009846 setarg 0 
+:      009847 g24_store_mem_ackpayload_enable:
+0x329a 009848 arg offset_24g_ackpayload_enable ,rega 
+0x329b 009849 branch g24_set_contw_with_regb_store_1byte 
+:      009850 g24_set1_mem_ackpayload_enable:
+0x329c 009851 setarg 1 
+0x329d 009852 branch g24_store_mem_ackpayload_enable 
+:      009854 g24_fetch_mem_rxdata_temp_add3_7byte:
+0x329e 009855 setarg offset_24g_rxdata_temp_add3 
+0x329f 009856 call g24_set_rega 
+0x32a0 009857 ifetch 7 ,rega 
+0x32a1 009858 rtn 
+:      009860 g24_fetch_mem_nodata_timer_enable:
+0x32a2 009861 setarg offset_24g_nodata_timer_enable 
+0x32a3 009862 branch g24_set_rega_ifetch_1byte 
+:      009863 g24_set0_mem_nodata_timer_enable:
+0x32a4 009864 setarg 0 
+:      009865 g24_store_mem_nodata_timer_enable:
+0x32a5 009866 arg offset_24g_nodata_timer_enable ,rega 
+0x32a6 009867 branch g24_set_contw_with_regb_store_1byte 
+:      009869 g24_set0_mem_ms_blank_data_enable:
+0x32a7 009870 setarg 0 
+:      009871 g24_store_mem_ms_blank_data_enable:
+0x32a8 009872 arg offset_24g_ms_blank_data_enable ,rega 
+0x32a9 009873 branch g24_set_contw_with_regb_store_1byte 
+:      009875 g24_set0_mem_kb_blank_data_enable:
+0x32aa 009876 setarg 0 
+:      009877 g24_store_mem_kb_blank_data_enable:
+0x32ab 009878 arg offset_24g_kb_blank_data_enable ,rega 
+0x32ac 009879 branch g24_set_contw_with_regb_store_1byte 
+:      009881 g24_set0_mem_kb_mul_blank_data_enable:
+0x32ad 009882 setarg 0 
+:      009883 g24_store_mem_kb_mul_blank_data_enable:
+0x32ae 009884 arg offset_24g_kb_mul_blank_data_enable ,rega 
+0x32af 009885 branch g24_set_contw_with_regb_store_1byte 
+:      009887 g24_store_mem_power_ctrl_threshold_up:
+0x32b0 009888 arg offset_power_ctrl_threshold_up ,rega 
+0x32b1 009889 branch g24_set_contw_with_regb_store_1byte 
+:      009891 g24_store_mem_power_ctrl_threshold_down:
+0x32b2 009892 arg offset_power_ctrl_threshold_down ,rega 
+:      009893 g24_set_contw_with_regb_store_1byte:
+0x32b3 009894 call g24_set_contw_with_regb 
+:      009895 g24_contw_istore_1byte:
+0x32b4 009896 istore 1 ,contw 
+0x32b5 009897 rtn 
+:      009899 g24_fetch_mem_pair_mode:
+0x32b6 009900 setarg offset_24g_pair_mode 
+0x32b7 009901 branch g24_set_rega_ifetch_1byte 
+:      009903 g24_store_mem_pair_mode:
+0x32b8 009904 arg offset_24g_pair_mode ,rega 
+0x32b9 009905 branch g24_set_contw_with_regb_store_1byte 
+:      009907 g24_store_mem_pair_txpower:
+0x32ba 009908 setarg offset_24g_pair_txpower 
+0x32bb 009909 call g24_set_rega_ifetch_1byte 
+0x32bc 009910 branch g24_store_mem_txpower 
+:      009912 g24_fetch_mem_rxdata_temp_add3_1byte:
+0x32bd 009913 setarg offset_24g_rxdata_temp_add3 
+0x32be 009914 branch g24_set_rega_ifetch_1byte 
+:      009916 g24_set_contw_with_temp:
+0x32bf 009917 copy pdata ,temp 
+0x32c0 009918 copy rega ,pdata 
+0x32c1 009919 iadd regc ,contw 
+0x32c2 009920 copy temp ,pdata 
+0x32c3 009921 rtn 
+:      009923 g24_set_contw_with_temp_store_3byte:
+0x32c4 009924 call g24_set_contw_with_temp 
+:      009925 g24_contw_istore_3byte:
+0x32c5 009926 istore 3 ,contw 
+0x32c6 009927 rtn 
+:      009929 g24_set_contw_with_regb:
+0x32c7 009930 call g24_head_ptr2regc 
+:      009931 g24_set_contw_with_regb2:
+0x32c8 009932 copy pdata ,regb 
+0x32c9 009933 copy rega ,pdata 
+0x32ca 009934 iadd regc ,contw 
+0x32cb 009935 copy regb ,pdata 
+0x32cc 009936 rtn 
+:      009938 g24_set_rega:
+0x32cd 009939 call g24_head_ptr2regc 
+0x32ce 009940 iadd regc ,rega 
+0x32cf 009941 rtn 
+:      009943 g24_set_rega_ifetch_1byte:
+0x32d0 009944 call g24_set_rega 
+:      009945 g24_rega_ifetch_1byte:
+0x32d1 009946 ifetch 1 ,rega 
+0x32d2 009947 rtn 
+:      009949 g24_set_rega_ifetcht_4byte:
+0x32d3 009950 call g24_set_rega 
+0x32d4 009951 ifetcht 4 ,rega 
+0x32d5 009952 rtn 
+:      009954 g24_mem_set0:
+0x32d6 009955 setarg 0 
+0x32d7 009956 branch g24_contw_istore_1byte 
+:      009960 app_init:
+0x32d8 009961 bpatch patch18_4 ,mem_patch18 
+0x32d9 009962 fetch 1 ,mem_device_option 
+0x32da 009963 branch app_init ,blank 
+0x32db 009965 beq dvc_op_dongle ,dongle_init 
+0x32dc 009966 beq dvc_op_antilost ,antilost_init 
+0x32dd 009967 beq dvc_op_shutter ,shutter_init 
+0x32de 009968 beq dvc_op_module ,module_init 
+0x32df 009969 beq dvc_op_car ,car_init 
+0x32e0 009970 beq dvc_op_remote_car ,remote_car_init 
+0x32e1 009971 bbit1 dvc_op_mouse ,mouse_init 
+0x32e2 009972 rtn 
+:      009974 app_lpm_init:
+0x32e3 009975 bpatch patch18_5 ,mem_patch18 
+0x32e4 009976 jam 0 ,mem_tester_emulate 
+0x32e5 009977 jam 0 ,mem_debug_config 
+0x32e6 009978 jam 0 ,mem_lch_code 
+0x32e7 009979 setarg 0 
+0x32e8 009980 store 5 ,mem_sp_state_start 
+0x32e9 009981 fetch 1 ,mem_device_option 
+0x32ea 009982 branch app_lpm_init ,blank 
+0x32eb 009983 beq dvc_op_module ,module_lpm_init 
+:      009984 app_lpm_init0:
+0x32ec 009985 rtn 
+:      009988 app_process_idle:
+0x32ed 009989 call ui_dispatch 
+0x32ee 009990 call check_51cmd 
+0x32ef 009991 call app_process_bb_event 
+0x32f0 009992 fetch 2 ,mem_cb_idle_process 
+0x32f1 009993 branch callback_func 
+:      009995 app_process_bt:
+0x32f2 009996 fetch 2 ,mem_cb_bt_process 
+0x32f3 009997 branch callback_func 
+:      009999 app_process_ble:
+0x32f4 010000 fetch 2 ,mem_cb_le_process 
+0x32f5 010001 branch callback_func 
+:      010003 app_process_bb_event:
+0x32f6 010004 bpatch patch18_6 ,mem_patch18 
+0x32f7 010006 arg mem_ipc_fifo_bt2c51 ,rega 
+0x32f8 010007 call fifo_out 
+0x32f9 010008 rtn blank 
+0x32fa 010010 copy pdata ,regc 
+0x32fb 010011 call app_event_normal_process 
+0x32fc 010012 branch app_process_bb_event_priority 
+:      010014 app_discard_event:
+0x32fd 010015 arg 0 ,regc 
+0x32fe 010016 rtn 
+:      010021 app_event_normal_process:
+0x32ff 010022 beq bt_evt_bb_connected ,app_evt_bt_conn 
+0x3300 010023 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
+0x3301 010024 beq bt_evt_setup_complete ,app_evt_setup_complete 
+0x3302 010025 beq bt_evt_hid_handshake ,app_evt_hid_handshake 
+0x3303 010026 beq bt_evt_hid_connected ,app_bb_event_hid_connected 
+0x3304 010027 beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
+0x3305 010028 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
+0x3306 010029 beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
+0x3307 010030 beq bt_evt_le_connected ,app_le_event_bb_connected 
+0x3308 010031 beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
+0x3309 010032 beq bt_evt_reconn_started ,app_event_reconn_start 
+0x330a 010033 beq bt_evt_enter_sniff ,app_event_enter_sniff 
+0x330b 010034 beq bt_evt_exit_sniff ,app_event_exit_sniff 
+0x330c 010036 beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
+0x330d 010037 beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
+0x330e 010038 beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
+0x330f 010039 beq bt_evt_switch_success_master ,app_event_switch_success 
+0x3310 010040 rtn 
+:      010043 app_evt_bt_conn:
+0x3311 010044 fetch 2 ,mem_ui_state_map 
+0x3312 010045 set1 ui_state_bt_connected ,pdata 
+0x3313 010046 store 2 ,mem_ui_state_map 
+0x3314 010047 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3315 010048 set0 app_disc_by_button ,pdata 
+0x3316 010049 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3317 010050 rtn 
+:      010052 app_event_switch_success:
+0x3318 010053 jam 0 ,mem_switch_fail_master_count 
+0x3319 010054 rtn 
+:      010056 app_event_switch_fail_master:
+0x331a 010057 fetch 1 ,mem_switch_fail_master_count 
+0x331b 010058 increase 1 ,pdata 
+0x331c 010059 store 1 ,mem_switch_fail_master_count 
+0x331d 010060 sub pdata ,1 ,null 
+0x331e 010061 branch app_bt_role_switch ,positive 
+0x331f 010062 jam 0 ,mem_switch_fail_master_count 
+0x3320 010063 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3321 010064 set1 app_disc_switch_fail ,pdata 
+0x3322 010065 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3323 010066 branch app_bt_disconnect 
+:      010068 app_process_bb_event_priority:
+0x3324 010069 fetch 2 ,mem_cb_bb_event_process 
+0x3325 010070 branch callback_func 
+:      010072 app_check_wake_lock:
+0x3326 010073 fetch 2 ,mem_cb_check_wakelock 
+0x3327 010074 branch callback_func 
+:      010076 app_will_enter_lpm:
+0x3328 010077 fetch 2 ,mem_cb_before_lpm 
+0x3329 010078 branch callback_func 
+:      010080 app_event_linkkey_generate:
+0x332a 010081 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332b 010082 set1 app_disc_after_pairing ,pdata 
+0x332c 010083 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332d 010084 branch app_bt_store_reconn_info 
+:      010086 app_event_reconn_start:
+0x332e 010087 fetch 2 ,mem_ui_state_map 
+0x332f 010088 set1 ui_state_bt_reconnect ,pdata 
+0x3330 010089 store 2 ,mem_ui_state_map 
+0x3331 010090 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3332 010091 set1 app_disc_after_reconn ,pdata 
+0x3333 010092 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3334 010093 rtn 
+:      010095 app_evt_setup_complete:
+0x3335 010096 fetch 2 ,mem_ui_state_map 
+0x3336 010097 set1 ui_state_bt_setup_complete ,pdata 
+0x3337 010098 store 2 ,mem_ui_state_map 
+0x3338 010099 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3339 010100 set1 app_disc_after_setup_done ,pdata 
+0x333a 010101 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x333b 010102 rtn 
+:      010104 app_evt_hid_handshake:
+0x333c 010105 fetch 2 ,mem_ui_state_map 
+0x333d 010106 set1 ui_state_bt_hid_handshake ,pdata 
+0x333e 010107 store 2 ,mem_ui_state_map 
+0x333f 010108 rtn 
+:      010110 app_event_enter_sniff:
+0x3340 010111 fetch 2 ,mem_ui_state_map 
+0x3341 010112 set1 ui_state_bt_sniff ,pdata 
+0x3342 010113 store 2 ,mem_ui_state_map 
+0x3343 010114 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3344 010115 set1 app_disc_after_sniff ,pdata 
+0x3345 010116 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3346 010117 rtn 
+:      010119 app_event_exit_sniff:
+0x3347 010120 fetch 2 ,mem_ui_state_map 
+0x3348 010121 set0 ui_state_bt_sniff ,pdata 
+0x3349 010122 store 2 ,mem_ui_state_map 
+0x334a 010123 rtn 
+:      010125 app_le_event_bb_connected:
+0x334b 010126 fetch 2 ,mem_ui_state_map 
+0x334c 010127 set1 ui_state_ble_connected ,pdata 
+0x334d 010128 store 2 ,mem_ui_state_map 
+0x334e 010129 rtn 
+:      010131 app_le_event_bb_disconn:
+0x334f 010132 fetch 2 ,mem_ui_state_map 
+0x3350 010133 set0 ui_state_ble_connected ,pdata 
+0x3351 010134 store 2 ,mem_ui_state_map 
+0x3352 010135 branch app_lpm_mult_disable 
+:      010137 app_bb_event_hid_connected:
+0x3353 010138 fetch 2 ,mem_ui_state_map 
+0x3354 010139 set1 ui_state_bt_hid_conn ,pdata 
+0x3355 010140 store 2 ,mem_ui_state_map 
+0x3356 010141 rtn 
+:      010143 app_evt_button_long_pressed:
+0x3357 010144 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3358 010145 set1 app_disc_by_button ,pdata 
+0x3359 010146 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335a 010147 rtn 
+:      010149 app_event_ml2cap_conn_refused:
+0x335b 010150 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335c 010151 set1 app_disc_l2cap_refused ,pdata 
+0x335d 010152 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335e 010153 branch app_bt_disconnect 
+:      010156 app_evt_timer:
+0x335f 010157 bpatch patch18_7 ,mem_patch18 
+0x3360 010158 store 1 ,mem_app_evt_timer_count 
+:      010159 app_evt_100ms_loop:
+0x3361 010160 fetch 1 ,mem_app_evt_timer_count 
+0x3362 010161 rtn blank 
+0x3363 010162 increase -1 ,pdata 
+0x3364 010163 store 1 ,mem_app_evt_timer_count 
+0x3365 010164 call ui_button_polling 
+0x3366 010165 call app_lpm_wake_auto_lock_timer 
+0x3367 010166 call app_unsniff_delay_timer 
+0x3368 010167 call app_discovery_timer 
+0x3369 010168 call flash_write_spi_sm_timer 
+0x336a 010169 fetch 2 ,mem_cb_event_timer 
+0x336b 010170 call callback_func 
+0x336c 010171 branch app_evt_100ms_loop 
+:      010176 timer_single_step:
+0x336d 010177 ifetch 1 ,regc 
+0x336e 010178 rtn blank 
+0x336f 010179 pincrease -1 
+0x3370 010180 istore 1 ,regc 
+0x3371 010181 nrtn blank 
+0x3372 010182 copy regb ,pdata 
+0x3373 010183 branch callback_func 
+:      010187 timer_single_step_2b:
+0x3374 010188 ifetch 2 ,regc 
+0x3375 010189 rtn blank 
+0x3376 010190 pincrease -1 
+0x3377 010191 istore 2 ,regc 
+0x3378 010192 nrtn blank 
+0x3379 010193 copy regb ,pdata 
+0x337a 010194 branch callback_func 
+:      010196 app_power_timer:
+0x337b 010197 fetcht 2 ,mem_power_param_ptr 
+0x337c 010198 add temp ,power_timer_offset ,regc 
+0x337d 010199 arg app_power_timer_timeout ,regb 
+0x337e 010200 branch timer_single_step 
+:      010202 app_power_timer_timeout:
+0x337f 010203 call app_got_power_state_common 
+0x3380 010204 beq power_starting ,app_enter_power_stanby_state 
+:      010205 app_enter_power_off_state:
+0x3381 010206 branch app_enter_hibernate 
+:      010207 app_enter_power_stanby_state:
+0x3382 010208 setarg power_standby 
+0x3383 010209 istore 1 ,regc 
+0x3384 010210 add temp ,power_standby_cb_offset ,regb 
+:      010211 app_power_cb_common:
+0x3385 010212 ifetch 2 ,regb 
+0x3386 010213 branch callback_func 
+:      010215 app_unsniff_delay_timer:
+0x3387 010216 arg mem_unsniff2sniff_timer_count ,regc 
+0x3388 010217 arg app_unsniff_delay_timeout ,regb 
+0x3389 010218 branch timer_single_step 
+:      010220 app_unsniff_delay_timeout:
+0x338a 010221 call context_check_idle 
+0x338b 010222 branch app_bt_enter_sniff ,zero 
+0x338c 010223 rtn 
+:      010226 app_discovery_timer:
+0x338d 010227 arg mem_discovery_timeout_timer_count ,regc 
+0x338e 010228 arg app_discovery_timeout ,regb 
+0x338f 010229 branch timer_single_step_2b 
+:      010231 app_discovery_timeout:
+0x3390 010232 call app_bt_stop_discovery 
+0x3391 010233 call app_led_off 
+0x3392 010234 fetch 2 ,mem_cb_discovry_timeout 
+0x3393 010235 branch callback_func 
+:      010238 app_bb_event_reconn_failed:
+0x3394 010239 call app_disconn_reason_flag_clear 
+:      010240 app_clear_reconnect_flag:
+0x3395 010241 fetch 2 ,mem_ui_state_map 
+0x3396 010242 set0 ui_state_bt_reconnect ,pdata 
+0x3397 010243 store 2 ,mem_ui_state_map 
+0x3398 010244 rtn 
+:      010246 app_bb_event_bb_disconn:
+0x3399 010247 jam 0 ,mem_unsniff2sniff_timer_count 
+0x339a 010248 fetch 2 ,mem_ui_state_map 
+0x339b 010249 bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
+0x339c 010250 isolate0 ui_state_bt_setup_complete ,pdata 
+0x339d 010251 call app_discard_event ,true 
+:      010252 app_bb_event_bb_reconn_disconn:
+0x339e 010253 bpatch patch19_0 ,mem_patch19 
+0x339f 010254 fetch 2 ,mem_ui_state_map 
+0x33a0 010255 set0 ui_state_bt_connected ,pdata 
+0x33a1 010256 set0 ui_state_bt_setup_complete ,pdata 
+0x33a2 010257 set0 ui_state_bt_hid_conn ,pdata 
+0x33a3 010258 set0 ui_state_bt_hid_handshake ,pdata 
+0x33a4 010259 set0 ui_state_bt_reconnect ,pdata 
+0x33a5 010260 store 2 ,mem_ui_state_map 
+0x33a6 010261 branch app_lpm_mult_disable 
+:      010263 app_bb_hibernate:
+0x33a7 010264 call app_disconn_reason_clear 
+0x33a8 010265 branch app_enter_hibernate 
+:      010268 app_disconn_reason_clear:
+0x33a9 010269 setarg 0 
+0x33aa 010270 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33ab 010271 rtn 
+:      010272 app_disconn_reason_flag_clear:
+0x33ac 010273 setarg 0 
+0x33ad 010274 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33ae 010275 rtn 
+:      010277 app_disconn_reason_collect_bt:
+0x33af 010278 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b0 010279 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b1 010280 setarg 0 
+0x33b2 010281 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b3 010282 rtn 
+:      010284 app_disconn_reason_collect_ble:
+0x33b4 010285 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b5 010286 set1 app_disc_ble ,pdata 
+0x33b6 010287 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b7 010288 setarg 0 
+0x33b8 010289 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b9 010290 rtn 
+:      010298 app_check_sniff:
+0x33ba 010299 fetch 1 ,mem_ui_state_map 
+0x33bb 010300 isolate1 ui_state_bt_sniff ,pdata 
+0x33bc 010301 rtn 
+:      010309 app_initflag_store:
+0x33bd 010310 setarg eeprom_init_flag 
+:      010311 app_flag_store:
+0x33be 010312 store 2 ,mem_timeup 
+0x33bf 010313 bpatch patch19_1 ,mem_patch19 
+0x33c0 010314 arg 2 ,temp 
+0x33c1 010315 arg mem_timeup ,rega 
+0x33c2 010316 arg eeprom_module_init_flag ,regb 
+0x33c3 010317 branch iicd_write_eep_data 
+:      010320 app_initflag_check:
+0x33c4 010321 bpatch patch19_2 ,mem_patch19 
+0x33c5 010322 arg 2 ,temp 
+0x33c6 010323 arg mem_pdatatemp ,rega 
+0x33c7 010324 arg eeprom_module_init_flag ,regb 
+0x33c8 010325 call iicd_read_eep_data 
+0x33c9 010326 fetch 2 ,mem_pdatatemp 
+0x33ca 010327 arg eeprom_init_flag ,temp 
+0x33cb 010328 isub temp ,null 
+0x33cc 010329 rtn 
+:      010332 app_start_auto_sniff:
+0x33cd 010333 fetch 1 ,mem_unsniff2sniff_timer 
+0x33ce 010334 store 1 ,mem_unsniff2sniff_timer_count 
+0x33cf 010335 rtn 
+:      010337 app_get_lpm_wake_lock:
+0x33d0 010338 arg wake_lock_app ,queue 
+0x33d1 010339 branch lpm_get_wake_lock 
+:      010341 app_put_lpm_wake_lock:
+0x33d2 010342 arg wake_lock_app ,queue 
+0x33d3 010343 branch lpm_put_wake_lock 
+:      010345 app_lpm_wake_auto_lock:
+0x33d4 010346 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
+0x33d5 010347 branch app_get_lpm_wake_lock 
+:      010349 app_lpm_wake_auto_lock_timer:
+0x33d6 010350 arg mem_wake_up_delay_timer ,regc 
+0x33d7 010351 arg app_put_lpm_wake_lock ,regb 
+0x33d8 010352 branch timer_single_step 
+:      010354 app_l2cap_flow_control_enable:
+0x33d9 010355 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
+0x33da 010356 rtn 
+:      010358 app_l2cap_flow_control_disable:
+0x33db 010359 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
+0x33dc 010360 rtn 
+:      010362 app_bt_set_pincode:
+0x33dd 010363 jam bt_cmd_set_pin_code ,mem_fifo_temp 
+0x33de 010364 branch ui_ipc_send_cmd 
+:      010366 app_bt_role_switch:
+0x33df 010367 jam bt_cmd_role_switch ,mem_fifo_temp 
+0x33e0 010368 branch ui_ipc_send_cmd 
+:      010370 app_bt_start_reconnect:
+0x33e1 010371 bpatch patch19_3 ,mem_patch19 
+0x33e2 010372 fetch 1 ,mem_app_connection_options 
+0x33e3 010373 store 1 ,mem_connection_options 
+0x33e4 010374 jam app_flag_reconnect ,mem_reconnect_flag 
+0x33e5 010375 jam bt_cmd_reconnect ,mem_fifo_temp 
+0x33e6 010376 branch ui_ipc_send_cmd 
+:      010378 app_bt_reconnect_cancel:
+0x33e7 010379 jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
+0x33e8 010380 branch ui_ipc_send_cmd 
+:      010382 app_bt_disconnect:
+0x33e9 010383 jam bt_cmd_disconnect ,mem_fifo_temp 
+0x33ea 010384 branch ui_ipc_send_cmd 
+:      010386 app_bt_start_discovery_short:
+0x33eb 010387 fetch 2 ,mem_discovery_timeout 
+0x33ec 010388 store 2 ,mem_discovery_timeout_timer_count 
+:      010389 app_bt_start_discovery_led_blink:
+0x33ed 010390 call app_led_start_blink 
+:      010391 app_bt_start_discovery:
+0x33ee 010392 jam bt_cmd_start_discovery ,mem_fifo_temp 
+0x33ef 010393 branch ui_ipc_send_cmd 
+:      010395 app_bt_stop_discovery:
+0x33f0 010396 setarg 0 
+0x33f1 010397 store 2 ,mem_discovery_timeout_timer_count 
+0x33f2 010398 jam bt_cmd_stop_discovery ,mem_fifo_temp 
+0x33f3 010399 branch ui_ipc_send_cmd 
+:      010401 app_ble_start_direct_adv:
+0x33f4 010402 jam bt_cmd_start_direct_adv ,mem_fifo_temp 
+0x33f5 010403 branch ui_ipc_send_cmd 
+:      010405 app_ble_stop_direct_adv:
+0x33f6 010406 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
+0x33f7 010407 branch ui_ipc_send_cmd 
+:      010409 app_ble_stop_adv:
+0x33f8 010410 jam bt_cmd_stop_adv ,mem_fifo_temp 
+0x33f9 010411 branch ui_ipc_send_cmd 
+:      010413 app_ble_start_adv:
+0x33fa 010414 jam bt_cmd_start_adv ,mem_fifo_temp 
+0x33fb 010415 branch ui_ipc_send_cmd 
+:      010417 app_ble_start_scan:
+0x33fc 010418 jam bt_cmd_le_start_scan ,mem_fifo_temp 
+0x33fd 010419 branch ui_ipc_send_cmd 
+:      010421 app_ble_stop_scan:
+0x33fe 010422 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
+0x33ff 010423 branch ui_ipc_send_cmd 
+:      010425 app_ble_start_conn:
+0x3400 010426 jam bt_cmd_le_start_conn ,mem_fifo_temp 
+0x3401 010427 branch ui_ipc_send_cmd 
+:      010429 app_ble_disconnect:
+0x3402 010430 jam bt_cmd_le_disconnect ,mem_fifo_temp 
+0x3403 010431 branch ui_ipc_send_cmd 
+:      010433 app_led_start_blink:
+0x3404 010434 jam bt_cmd_led_blink ,mem_fifo_temp 
+0x3405 010435 branch ui_ipc_send_cmd 
+:      010437 app_led_on:
+0x3406 010438 jam bt_cmd_led_on ,mem_fifo_temp 
+0x3407 010439 branch ui_ipc_send_cmd 
+:      010441 app_led_stop_blink:
+:      010442 app_led_off:
+0x3408 010443 jam bt_cmd_led_off ,mem_fifo_temp 
+0x3409 010444 branch ui_ipc_send_cmd 
+:      010446 app_enter_hibernate:
+0x340a 010447 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
+0x340b 010448 branch ui_ipc_send_cmd 
+:      010450 app_bt_sniff_exit:
+0x340c 010451 jam bt_cmd_exit_sniff ,mem_fifo_temp 
+0x340d 010452 branch ui_ipc_send_cmd 
+:      010454 app_bt_enter_sniff:
+0x340e 010455 jam bt_cmd_enter_sniff ,mem_fifo_temp 
+0x340f 010456 branch ui_ipc_send_cmd 
+:      010458 app_ble_store_reconn_info:
+0x3410 010459 jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
+0x3411 010460 branch ui_ipc_send_cmd 
+:      010462 app_bt_store_reconn_info:
+0x3412 010463 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
+0x3413 010464 branch ui_ipc_send_cmd 
+:      010466 app_store_reconn_info:
+0x3414 010467 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
+0x3415 010468 branch ui_ipc_send_cmd 
+:      010470 app_lpm_mult_enable:
+0x3416 010471 set1 mark_lpm_mult_enable ,mark 
+0x3417 010472 rtn 
+:      010474 app_lpm_mult_disable:
+0x3418 010475 set0 mark_lpm_mult_enable ,mark 
+0x3419 010476 rtn 
+:      010496 app_button_long_pressed:
+0x341a 010497 call app_got_power_state_common 
+0x341b 010498 beq power_standby ,app_power_shutting_down 
+:      010499 app_power_starting:
+0x341c 010500 setarg power_starting 
+0x341d 010501 istore 1 ,regc 
+0x341e 010502 add temp ,power_starting_timeout_offset ,rega 
+0x341f 010503 add temp ,power_starting_cb_offset ,regb 
+:      010504 app_power_common:
+0x3420 010505 ifetcht 1 ,rega 
+0x3421 010506 increase 1 ,regc 
+0x3422 010507 istoret 1 ,regc 
+0x3423 010508 branch app_power_cb_common 
+:      010510 app_power_shutting_down:
+0x3424 010511 setarg power_off 
+0x3425 010512 istore 1 ,regc 
+0x3426 010513 fetch 2 ,mem_ui_state_map 
+0x3427 010514 bbit0 ui_state_ble_connected ,app_power_off_end 
+0x3428 010515 call app_ble_disconnect 
+:      010516 app_power_off_end:
+0x3429 010517 fetcht 2 ,mem_power_param_ptr 
+0x342a 010518 add temp ,power_off_timeout_offset ,rega 
+0x342b 010519 add temp ,power_off_cb_offset ,regb 
+0x342c 010520 branch app_power_common 
+:      010522 app_got_power_state_common:
+0x342d 010523 fetcht 2 ,mem_power_param_ptr 
+0x342e 010524 add temp ,power_state_offset ,regc 
+0x342f 010525 ifetch 1 ,regc 
+0x3430 010526 rtn 
+:      010528 app_event_button_up:
+0x3431 010529 call app_got_power_state_common 
+0x3432 010530 bne power_off ,app_power_release 
+0x3433 010531 branch app_enter_hibernate 
+:      010532 app_power_release:
+0x3434 010533 add temp ,ui_butten_up_cb_offset ,regb 
+0x3435 010534 branch app_power_cb_common 
+:      010536 antilost_init:
+0x3436 010537 rtn wake 
+0x3437 010538 jam 0x00 ,core_gpio_sel1 
+0x3438 010539 setarg antilost_le_before_hibernate 
+0x3439 010540 store 2 ,mem_cb_before_hibernate 
+0x343a 010541 setarg keyscan_process_lpm_before 
+0x343b 010542 store 2 ,mem_cb_before_lpm 
+0x343c 010543 setarg antilost_idle_process 
+0x343d 010544 store 2 ,mem_cb_idle_process 
+0x343e 010545 setarg antilost_le_conn_process 
+0x343f 010546 store 2 ,mem_cb_le_process 
+0x3440 010547 setarg antilost_bb_event_process 
+0x3441 010548 store 2 ,mem_cb_bb_event_process 
+0x3442 010549 setarg antilost_le_bb_event_timer 
+0x3443 010550 store 2 ,mem_cb_event_timer 
+0x3444 010551 setarg antilost_le_notification 
+0x3445 010552 store 2 ,mem_cb_ble_transmit 
+0x3446 010553 setarg antilost_lpm_lock_process 
+0x3447 010554 store 2 ,mem_cb_check_wakelock 
+0x3448 010555 setarg antilost_le_receive_data_process 
+0x3449 010556 store 2 ,mem_cb_att_write 
+0x344a 010557 bpatch patch19_4 ,mem_patch19 
+0x344b 010558 call antilost_buzzer_pwm_init 
+0x344c 010559 call keyscan_key_init 
+0x344d 010560 call antilost_adc_init 
+0x344e 010561 call ui_led_init_global 
+0x344f 010562 call ui_button_init 
+0x3450 010563 setarg antilost_key_up_down 
+0x3451 010564 store 2 ,mem_cb_antl_key 
+0x3452 010565 setarg antilost_power_off_cb 
+0x3453 010566 store 2 ,mem_antl_power_off_cb 
+0x3454 010567 setarg antilost_power_starting_cb 
+0x3455 010568 store 2 ,mem_antl_power_starting_cb 
+0x3456 010569 setarg antilost_power_standby_cb 
+0x3457 010570 store 2 ,mem_antl_power_standby_cb 
+0x3458 010571 setarg antilost_led_on_cb 
+0x3459 010572 store 2 ,mem_antl_led_cb_on 
+0x345a 010573 setarg antilost_led_off_cb 
+0x345b 010574 store 2 ,mem_antl_led_cb_off 
+0x345c 010575 setarg antilost_buzzer_on 
+0x345d 010576 store 2 ,mem_antl_buzzer_cb_on 
+0x345e 010577 setarg antilost_buzzer_off 
+0x345f 010578 store 2 ,mem_antl_buzzer_cb_off 
+0x3460 010579 fetch 2 ,mem_ui_state_map 
+0x3461 010580 rtnbit1 ui_state_btn_down 
+0x3462 010581 branch app_enter_hibernate 
+:      010583 antilost_le_before_hibernate:
+0x3463 010584 call antilost_led_buzzer_stop_blink 
+0x3464 010585 branch app_enter_hibernate 
+:      010587 antilost_le_notification:
+0x3465 010588 call le_fifo_check_nearly_full 
+0x3466 010589 nrtn blank 
+0x3467 010590 arg mem_temp_block5 ,rega 
+0x3468 010591 call queue_pop 
+0x3469 010592 nrtn user 
+0x346a 010593 arg mem_temp_block5 ,contr 
+0x346b 010594 branch le_send_notify_from_list 
+:      010596 antilost_power_standby_cb:
+0x346c 010597 fetch 2 ,mem_antl_le_sleep_timeout 
+0x346d 010598 store 2 ,mem_antl_le_sleep_timer 
+0x346e 010599 jam 1 ,mem_antl_key_scan_enable 
+0x346f 010600 branch antilost_fast_adv_start 
+:      010602 antilost_lpm_lock_process:
+0x3470 010603 fetch 1 ,mem_antl_key_state 
+0x3471 010604 beq 1 ,antilost_lpm_ctrl_for_led_buzzer 
+0x3472 010605 fetch 2 ,mem_ui_state_map 
+0x3473 010606 bbit0 ui_state_ble_connected ,antilost_lpm_ctrl_for_led_buzzer 
+0x3474 010607 fetch 1 ,mem_antl_lost_mode 
+0x3475 010608 beq 1 ,app_get_lpm_wake_lock 
+0x3476 010609 fetch 1 ,mem_antl_queue_curr_num 
+0x3477 010610 nbranch app_get_lpm_wake_lock ,blank 
+0x3478 010611 branch app_put_lpm_wake_lock 
+:      010613 antilost_lpm_ctrl_for_led_buzzer:
+0x3479 010614 fetch 1 ,mem_antl_led_state 
+0x347a 010615 fetcht 1 ,mem_antl_buzzer_state 
+0x347b 010616 ior temp ,pdata 
+0x347c 010617 beq 1 ,app_get_lpm_wake_lock 
+0x347d 010618 branch app_put_lpm_wake_lock 
+:      010620 antilost_bb_event_process:
+0x347e 010621 copy regc ,pdata 
+0x347f 010622 beq bt_evt_button_up ,app_event_button_up 
+0x3480 010623 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x3481 010624 beq bt_evt_le_connected ,antilost_le_process_conn 
+0x3482 010625 beq bt_evt_le_disconnected ,antilost_le_process_discon 
+0x3483 010626 beq bt_evt_le_parse_conn_papa_update_rsp ,antilost_le_conn_param_update_rsp_recieved 
+0x3484 010627 rtn 
+:      010628 antilost_le_conn_param_update_rsp_recieved:
+0x3485 010629 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x3486 010630 beq ble_signaling_connect_parameter_update_rejected ,antilost_le_conn_param_rejected 
+:      010631 antilost_le_conn_param_accepted:
+0x3487 010632 fetch 2 ,mem_le_new_connslavelatency 
+0x3488 010633 branch antilost_master_nonsupport_latency ,blank 
+:      010634 antilost_le_conn_param_updata_procedure_sucsess:
+0x3489 010635 jam conn_param_updata_procedure_complete ,mem_antl_conn_updata_procedure_state 
+0x348a 010636 jam 60 ,mem_antl_conn_update_timer 
+0x348b 010637 rtn 
+:      010639 antilost_le_conn_param_rejected:
+0x348c 010640 fetch 2 ,mem_le_latency 
+0x348d 010641 branch antilost_conn_param_updata_procedure_faild ,blank 
+:      010642 antilost_conn_param_retransimiting:
+0x348e 010643 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x348f 010644 fetcht 2 ,mem_interval_increment 
+0x3490 010645 fetch 2 ,mem_le_interval_min 
+0x3491 010646 iadd temp ,pdata 
+0x3492 010647 store 2 ,mem_le_interval_min 
+0x3493 010648 copy pdata ,rega 
+0x3494 010649 fetch 2 ,mem_le_interval_max 
+0x3495 010650 iadd temp ,pdata 
+0x3496 010651 store 2 ,mem_le_interval_max 
+0x3497 010652 iadd rega ,pdata 
+0x3498 010653 rshift pdata ,temp 
+0x3499 010654 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x349a 010655 idiv temp 
+0x349b 010656 call wait_div_end 
+0x349c 010657 quotient pdata 
+0x349d 010658 store 2 ,mem_le_latency 
+0x349e 010659 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x349f 010660 rtn 
+:      010661 antilost_conn_param_updata_procedure_faild:
+0x34a0 010662 jam conn_param_updata_procedure_faild ,mem_antl_conn_updata_procedure_state 
+0x34a1 010663 rtn 
+:      010665 antilost_master_nonsupport_latency:
+0x34a2 010666 jam 0 ,mem_lpm_mult 
+0x34a3 010667 jam 0 ,mem_antl_send_updata_le_param_timer 
+0x34a4 010668 fetch 2 ,mem_le_new_conninterval 
+0x34a5 010669 fetcht 2 ,mem_antl_le_unnormal_interval_min 
+0x34a6 010670 isub temp ,null 
+0x34a7 010671 setflag positive ,0 ,rega 
+0x34a8 010672 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x34a9 010673 fetcht 2 ,mem_le_new_conninterval 
+0x34aa 010674 isub temp ,pdata 
+0x34ab 010675 setflag positive ,1 ,rega 
+0x34ac 010676 compare 0x03 ,rega ,0x03 
+0x34ad 010677 rtn true 
+0x34ae 010678 fetch 8 ,mem_antl_le_unnormal_interval_min 
+0x34af 010679 store 8 ,mem_le_interval_min 
+0x34b0 010680 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34b1 010681 rtn 
+:      010684 antilost_le_bb_event_timer:
+0x34b2 010686 call app_power_timer 
+0x34b3 010687 call antilost_double_click_timer 
+0x34b4 010688 call antilost_le_fast_adv_timer 
+0x34b5 010689 call antilost_le_sleep_timer 
+0x34b6 010690 call antilost_app_updata_le_param_timer 
+0x34b7 010691 call antilost_conn_update_timer 
+0x34b8 010692 branch antilost_adc_check_timer 
+:      010695 antilost_double_click_timer:
+0x34b9 010696 arg mem_double_click_timer ,regc 
+0x34ba 010697 arg antilost_double_click_timeout ,regb 
+0x34bb 010698 branch timer_single_step 
+:      010699 antilost_double_click_timeout:
+0x34bc 010700 jam 0 ,mem_butten_click_cnt 
+0x34bd 010701 rtn 
+:      010702 antilost_le_fast_adv_timer:
+0x34be 010703 arg mem_antl_fast_adv_timer ,regc 
+0x34bf 010704 arg antilost_le_fast_adv_timeout ,regb 
+0x34c0 010705 branch timer_single_step_2b 
+:      010706 antilost_le_fast_adv_timeout:
+0x34c1 010707 arg mem_antl_slow_adv_led_style ,regc 
+0x34c2 010708 arg mem_antl_slow_adv_lpm_interval ,regb 
+0x34c3 010709 branch antilost_adv_start_common 
+:      010712 antilost_conn_update_timer:
+0x34c4 010713 arg mem_antl_conn_update_timer ,regc 
+0x34c5 010714 arg antilost_conn_update_timer_time_out ,regb 
+0x34c6 010715 branch timer_single_step 
+:      010717 antilost_conn_update_timer_time_out:
+0x34c7 010718 fetch 2 ,mem_le_latency 
+0x34c8 010719 store 1 ,mem_lpm_mult 
+0x34c9 010720 rtn 
+:      010721 antilost_app_updata_le_param_timer:
+0x34ca 010722 arg mem_antl_send_updata_le_param_timer ,regc 
+0x34cb 010723 arg antilost_app_updata_le_param_timeout ,regb 
+0x34cc 010724 branch timer_single_step 
+:      010725 antilost_app_updata_le_param_timeout:
+0x34cd 010726 fetch 1 ,mem_le_state 
+0x34ce 010727 compare 0 ,pdata ,0x60 
+0x34cf 010728 nbranch antilost_wait_for_updata_param_instant_expire ,true 
+0x34d0 010729 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x34d1 010730 call app_lpm_mult_enable 
+0x34d2 010731 branch le_l2cap_tx_update_req 
+:      010732 antilost_wait_for_updata_param_instant_expire:
+0x34d3 010733 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34d4 010734 rtn 
+:      010736 antilost_le_sleep_timer:
+0x34d5 010737 arg mem_antl_le_sleep_timer ,regc 
+0x34d6 010738 arg antilost_le_sleep_timer_timeout ,regb 
+0x34d7 010739 branch timer_single_step_2b 
+:      010742 antilost_le_sleep_timer_timeout:
+0x34d8 010743 branch app_button_long_pressed 
+:      010745 antilost_adc_check_timer:
+0x34d9 010748 arg mem_adc_timer ,regc 
+0x34da 010749 arg antilost_adc_check_timer_timeout ,regb 
+0x34db 010750 branch timer_single_step_2b 
+:      010751 antilost_adc_check_timer_timeout:
+0x34dc 010752 fetch 2 ,mem_adc_timeout 
+0x34dd 010753 store 2 ,mem_adc_timer 
+0x34de 010754 branch antilost_battery_process 
+:      010757 antilost_le_process_conn:
+0x34df 010758 fetch 2 ,mem_adc_timeout 
+0x34e0 010759 store 2 ,mem_adc_timer 
+0x34e1 010760 setarg 0 
+0x34e2 010761 store 2 ,mem_antl_fast_adv_timer 
+0x34e3 010762 store 2 ,mem_antl_le_sleep_timer 
+0x34e4 010763 call antilost_alert_off 
+0x34e5 010764 call antilost_led_buzzer_stop_blink 
+0x34e6 010765 jam 0 ,mem_lpm_mult 
+0x34e7 010766 branch app_ble_stop_adv 
+:      010769 antilost_le_process_discon:
+0x34e8 010772 setarg 0 
+0x34e9 010773 store 4 ,mem_adc_timer 
+0x34ea 010774 store 3 ,mem_antl_conn_updata_procedure_state 
+0x34eb 010775 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x34ec 010777 jam 1 ,mem_alarm_config_notfy_cnt 
+0x34ed 010778 fetch 2 ,mem_antl_le_sleep_timeout 
+0x34ee 010779 store 2 ,mem_antl_le_sleep_timer 
+0x34ef 010780 call queue_init 
+0x34f0 010781 fetch 1 ,mem_antl_power_state 
+0x34f1 010782 rtneq power_off 
+0x34f2 010783 call antilost_fast_adv_start 
+0x34f3 010784 branch antilost_on_off_alarm_after_disconn 
+:      010787 antilost_le_conn_process:
+0x34f4 010789 branch antilost_key_process 
+:      010791 antilost_idle_process:
+0x34f5 010793 fetch 1 ,mem_antl_power_state 
+0x34f6 010794 rtnne power_standby 
+0x34f7 010795 branch antilost_key_process 
+:      010800 antilost_power_starting_cb:
+0x34f8 010801 arg mem_antl_power_starting_buzzer_style ,regc 
+0x34f9 010802 call antilost_buzzer_configuration 
+0x34fa 010803 arg mem_antl_power_starting_led_style ,regc 
+:      010804 antilost_power_common:
+0x34fb 010805 branch antilost_led_configuration 
+:      010807 antilost_power_off_cb:
+0x34fc 010808 jam off ,mem_le_adv_enable 
+0x34fd 010809 arg mem_antl_power_off_buzzer_style ,regc 
+0x34fe 010810 call antilost_buzzer_configuration 
+0x34ff 010811 arg mem_antl_power_off_led_style ,regc 
+0x3500 010812 branch antilost_power_common 
+:      010814 antilost_le_receive_data_process:
+0x3501 010815 fetch 1 ,mem_le_att_opcode 
+0x3502 010816 beq attop_write_request ,antilost_le_parse_att_write_request 
+0x3503 010817 rtn 
+:      010818 antilost_le_parse_att_write_request:
+0x3504 010819 fetch 2 ,mem_le_att_handle 
+0x3505 010821 beq new_spec_write_handle ,antilost_cmd_parse_for_application 
+0x3506 010822 beq new_spec_notification_enable_handle ,antilost_notify_alarm_config_first_time 
+0x3507 010823 rtn 
+:      010828 antilost_key_process:
+0x3508 010829 fetch 1 ,mem_antl_key_scan_enable 
+0x3509 010830 rtn blank 
+0x350a 010831 branch keyscan_key_process 
+:      010835 antilost_key_up_down:
+0x350b 010836 copy rega ,pdata 
+0x350c 010837 branch antilost_key_is_up ,blank 
+:      010838 antilost_key_is_down:
+0x350d 010839 copy queue ,pdata 
+0x350e 010840 beq 0 ,antilost_key0_down 
+0x350f 010841 rtn 
+:      010842 antilost_key_is_up:
+0x3510 010843 copy queue ,pdata 
+0x3511 010844 beq 0 ,antilost_key0_up 
+0x3512 010845 rtn 
+:      010847 antilost_key0_down:
+0x3513 010848 jam 1 ,mem_antl_key_state 
+0x3514 010849 arg mem_antl_key_buzzer_style ,regc 
+0x3515 010850 call antilost_buzzer_configuration 
+0x3516 010851 arg mem_antl_key_led_style ,regc 
+0x3517 010852 call antilost_led_configuration 
+0x3518 010853 fetch 2 ,mem_ui_state_map 
+0x3519 010854 bbit0 ui_state_ble_connected ,antilost_butten_down_while_disconn 
+0x351a 010855 branch antilost_butten_down_after_conn 
+:      010857 antilost_key0_up:
+0x351b 010858 jam 0 ,mem_antl_key_state 
+0x351c 010859 branch antilost_double_click_timer_init 
+:      010863 antilost_double_click_timer_init:
+0x351d 010864 fetch 1 ,mem_butten_click_cnt 
+0x351e 010865 rtnne 1 
+0x351f 010866 jam 5 ,mem_double_click_timer 
+0x3520 010867 rtn 
+:      010869 antilost_butten_down_after_conn:
+0x3521 010870 fetch 1 ,mem_butten_click_cnt 
+0x3522 010871 pincrease 1 
+0x3523 010872 store 1 ,mem_butten_click_cnt 
+0x3524 010873 beq 1 ,antilost_click_once 
+0x3525 010874 beq 2 ,antilost_click_twice 
+0x3526 010875 rtn 
+:      010876 antilost_click_once:
+0x3527 010877 call antilost_alert_off 
+0x3528 010878 jam opcode1_butten_click_once ,mem_antl_key0_press + 5 
+0x3529 010879 arg mem_antl_key0_press ,regc 
+0x352a 010880 branch antilost_prepare_data_and_send 
+:      010881 antilost_click_twice:
+0x352b 010882 jam 0 ,mem_butten_click_cnt 
+0x352c 010883 jam opcode2_butten_double_click ,mem_antl_key0_press + 5 
+0x352d 010884 arg mem_antl_key0_press ,regc 
+0x352e 010885 call antilost_prepare_data_and_send 
+0x352f 010886 fetch 1 ,mem_antl_lost_mode 
+0x3530 010887 beq 1 ,antilost_alert_on 
+0x3531 010888 rtn 
+:      010890 antilost_butten_down_while_disconn:
+0x3532 010891 fetch 2 ,mem_antl_le_sleep_timeout 
+0x3533 010892 store 2 ,mem_antl_le_sleep_timer 
+0x3534 010893 call antilost_alert_off 
+0x3535 010894 branch antilost_fast_adv_start 
+:      010897 antilost_cmd_parse_for_application:
+0x3536 010898 bpatch patch19_5 ,mem_patch19 
+0x3537 010899 call le_app_receive_data 
+0x3538 010900 ifetch 1 ,rega 
+0x3539 010901 beq opcode3_antl_start_alram ,antilost_on_of_alram 
+0x353a 010902 beq opcode7_antl_config_alram ,antilost_configuration_for_alram 
+0x353b 010903 rtn 
+:      010905 antilost_on_of_alram:
+0x353c 010906 fetch 1 ,mem_antl_lost_mode 
+0x353d 010907 beq anti_le_alarm_off ,antilost_alert_on 
+0x353e 010908 beq anti_le_alarm_on ,antilost_alert_off 
+0x353f 010909 rtn 
+:      010911 antilost_configuration_for_alram:
+0x3540 010912 ifetch 1 ,regb 
+0x3541 010913 beq 1 ,antilost_set_start_alarm_after_disconn 
+0x3542 010914 beq 0 ,antilost_set_no_alarm_after_disconn 
+0x3543 010915 rtn 
+:      010922 antilost_prepare_data_and_send:
+0x3544 010923 bpatch patch19_6 ,mem_patch19 
+0x3545 010924 fetch 1 ,mem_client_characteristic_configuration_descriptor 
+0x3546 010925 isolate1 notification_enable_bit ,pdata 
+0x3547 010926 nrtn true 
+0x3548 010927 add regc ,6 ,contr 
+0x3549 010928 ifetch 2 ,contr 
+0x354a 010929 byteswap pdata ,pdata 
+0x354b 010930 add pdata ,5 ,loopcnt 
+0x354c 010931 add regc ,3 ,contr 
+0x354d 010932 call calc_check_sum_start 
+0x354e 010933 istore 1 ,contr 
+0x354f 010934 copy regc ,rega 
+0x3550 010935 branch queue_push 
+:      010941 antilost_alert_on:
+0x3551 010942 fetch 1 ,mem_antl_power_state 
+0x3552 010943 rtn blank 
+0x3553 010944 jam 1 ,mem_antl_lost_mode 
+0x3554 010945 arg mem_antl_alert_buzzer_stlye ,regc 
+0x3555 010946 call antilost_buzzer_configuration 
+0x3556 010947 arg mem_antl_alert_led_stlye ,regc 
+0x3557 010948 call antilost_led_configuration 
+0x3558 010949 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3559 010950 jam 1 ,mem_antl_key0_release + 8 
+0x355a 010951 arg mem_antl_key0_release ,regc 
+0x355b 010952 branch antilost_prepare_data_and_send 
+:      010953 antilost_alert_off:
+0x355c 010954 fetch 1 ,mem_antl_lost_mode 
+0x355d 010955 rtn blank 
+0x355e 010956 jam 0 ,mem_antl_lost_mode 
+0x355f 010957 call antilost_led_buzzer_stop_blink 
+0x3560 010958 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3561 010959 jam 0 ,mem_antl_key0_release + 8 
+0x3562 010960 arg mem_antl_key0_release ,regc 
+0x3563 010961 branch antilost_prepare_data_and_send 
+:      010963 antilost_set_start_alarm_after_disconn:
+0x3564 010964 jam 1 ,mem_alarm_config 
+0x3565 010965 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x3566 010966 jam 1 ,mem_antl_key0_release + 8 
+0x3567 010967 arg mem_antl_key0_release ,regc 
+0x3568 010968 branch antilost_prepare_data_and_send 
+:      010969 antilost_set_no_alarm_after_disconn:
+0x3569 010970 jam 0 ,mem_alarm_config 
+0x356a 010971 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x356b 010972 jam 0 ,mem_antl_key0_release + 8 
+0x356c 010973 arg mem_antl_key0_release ,regc 
+0x356d 010974 branch antilost_prepare_data_and_send 
+:      010975 antilost_on_off_alarm_after_disconn:
+0x356e 010976 fetch 1 ,mem_alarm_config 
+0x356f 010977 rtn blank 
+0x3570 010978 branch antilost_alert_on 
+:      010980 antilost_notify_alarm_config_first_time:
+0x3571 010981 ifetch 2 ,rega 
+0x3572 010982 store 2 ,mem_client_characteristic_configuration_descriptor 
+0x3573 010983 isolate1 notification_enable_bit ,pdata 
+0x3574 010984 nrtn true 
+0x3575 010985 fetch 1 ,mem_alarm_config_notfy_cnt 
+0x3576 010986 rtn blank 
+0x3577 010987 jam 0 ,mem_alarm_config_notfy_cnt 
+0x3578 010988 fetch 8 ,mem_antl_le_interval_min 
+0x3579 010989 store 8 ,mem_le_interval_min 
+0x357a 010990 jam 2 ,mem_antl_send_updata_le_param_timer 
+0x357b 010991 call antilost_battery_process 
+0x357c 010992 call antilost_battery_calculate_end 
+0x357d 010993 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x357e 010994 fetch 1 ,mem_alarm_config 
+0x357f 010995 store 1 ,mem_antl_key0_release + 8 
+0x3580 010996 arg mem_antl_key0_release ,regc 
+0x3581 010997 branch antilost_prepare_data_and_send 
+:      011001 antilost_buzzer_configuration:
+0x3582 011002 arg 1 ,rega 
+0x3583 011003 branch antilost_configuration_common 
+:      011004 antilost_led_configuration:
+0x3584 011005 arg 0 ,rega 
+:      011006 antilost_configuration_common:
+0x3585 011007 branch antilost_led_buzzer_style_configuration 
+:      011009 antilost_led_buzzer_stop_blink:
+0x3586 011010 arg 0 ,rega 
+0x3587 011011 call ui_led_blink_stop_global 
+0x3588 011012 arg 1 ,rega 
+0x3589 011013 call ui_led_blink_stop_global 
+0x358a 011014 fetch 1 ,mem_buzzer_pwm_conf 
+0x358b 011015 branch pwm_disable 
+:      011017 antilost_led_buzzer_style_configuration:
+0x358c 011018 call calc_curr_struct_prt 
+0x358d 011019 arg 7 ,loopcnt 
+0x358e 011020 branch ui_led_set_style_global + 2 
+:      011024 antilost_fast_adv_start:
+0x358f 011025 arg mem_antl_fast_adv_led_style ,regc 
+0x3590 011026 arg mem_antl_lpm_interval ,regb 
+:      011027 antilost_adv_start_common:
+0x3591 011028 call antilost_adv_interval_lpm_interval_set 
+0x3592 011029 call antilost_led_configuration 
+0x3593 011030 fetch 2 ,mem_antl_fast_adv_timeout 
+0x3594 011031 store 2 ,mem_antl_fast_adv_timer 
+0x3595 011032 branch app_ble_start_adv 
+:      011034 antilost_adv_interval_lpm_interval_set:
+0x3596 011035 ifetch 2 ,regb 
+0x3597 011036 store 2 ,mem_lpm_interval 
+0x3598 011037 ifetch 2 ,contr 
+0x3599 011038 store 2 ,mem_le_adv_interval 
+0x359a 011039 rtn 
+:      011041 antilost_buzzer_pwm_init:
+0x359b 011042 arg 0 ,rega 
+0x359c 011043 call pwm_init 
+0x359d 011044 fetch 6 ,mem_buzzer_pwm_conf 
+0x359e 011045 store 6 ,mem_pdatatemp 
+0x359f 011046 call pwm_out_set 
+0x35a0 011047 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a1 011048 branch pwm_disable 
+:      011050 antilost_led_on_cb:
+0x35a2 011051 jam 1 ,mem_antl_led_state 
+0x35a3 011052 rtn 
+:      011053 antilost_led_off_cb:
+0x35a4 011054 jam 0 ,mem_antl_led_state 
+0x35a5 011055 rtn 
+:      011059 antilost_buzzer_off:
+0x35a6 011060 jam 0 ,mem_antl_buzzer_state 
+0x35a7 011061 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a8 011062 branch pwm_disable 
+:      011064 antilost_buzzer_on:
+0x35a9 011065 jam 1 ,mem_antl_buzzer_state 
+0x35aa 011066 fetch 6 ,mem_buzzer_pwm_conf 
+0x35ab 011067 store 6 ,mem_pdatatemp 
+0x35ac 011068 branch pwm_out_set 
+:      011072 antilost_adc_init:
+0x35ad 011073 jam 0 ,mem_adc_config_flag 
+0x35ae 011074 branch adc_init_data 
+:      011076 antilost_battery_process:
+0x35af 011077 call adc_set_mode 
+0x35b0 011078 call vdd_calculate_by_mode 
+0x35b1 011079 store 2 ,mem_battery_current_voltage 
+0x35b2 011080 arg mem_battery_calculate_set ,rega 
+0x35b3 011081 call adc_bat_percent_lowpower_out 
+0x35b4 011082 store 1 ,mem_voltage_remain_percent 
+0x35b5 011083 beq 0 ,antilost_low_battery 
+0x35b6 011084 sub pdata ,0x64 ,null 
+0x35b7 011085 nbranch antilost_full_battery ,positive 
+0x35b8 011086 store 1 ,mem_antl_key0_release + 8 
+:      011087 antilost_battery_calculate_end:
+0x35b9 011088 jam opcode5_batter_information ,mem_antl_key0_release + 5 
+0x35ba 011089 arg mem_antl_key0_release ,regc 
+0x35bb 011090 branch antilost_prepare_data_and_send 
+:      011091 antilost_full_battery:
+0x35bc 011092 jam 100 ,mem_antl_key0_release + 8 
+0x35bd 011093 branch antilost_battery_calculate_end 
+:      011095 antilost_low_battery:
+0x35be 011096 branch app_button_long_pressed 
+:      011100 car_init:
+0x35bf 011101 rtn wake 
+0x35c0 011102 hfetch 1 ,core_gpio_sel1 
+0x35c1 011103 and_into 0xf0 ,pdata 
+0x35c2 011104 hstore 1 ,core_gpio_sel1 
+0x35c3 011105 setarg car_le_before_hibernate 
+0x35c4 011106 store 2 ,mem_cb_before_hibernate 
+0x35c5 011108 setarg car_le_process_lpm_before 
+0x35c6 011109 store 2 ,mem_cb_before_lpm 
+0x35c7 011111 setarg app_enter_hibernate 
+0x35c8 011112 store 2 ,mem_cb_discovry_timeout 
+0x35c9 011114 setarg car_scale_process_idle 
+0x35ca 011115 store 2 ,mem_cb_idle_process 
+0x35cb 011117 setarg car_scale_process_bb_event 
+0x35cc 011118 store 2 ,mem_cb_bb_event_process 
+0x35cd 011120 setarg app_get_lpm_wake_lock 
+0x35ce 011121 store 2 ,mem_cb_check_wakelock 
+0x35cf 011123 setarg car_le_receive_data 
+0x35d0 011124 store 2 ,mem_cb_att_write 
+0x35d1 011126 setarg car_le_bb_event_timer 
+0x35d2 011127 store 2 ,mem_cb_event_timer 
+0x35d3 011129 call g24_head_ptr2regc 
+0x35d4 011130 setarg car_24g_receive_data 
+0x35d5 011131 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x35d6 011132 istore 2 ,contw 
+0x35d7 011134 setarg car_power_off_signal 
+0x35d8 011135 store 2 ,mem_remote_car_power_off_cb 
+0x35d9 011137 setarg car_soft_switch_power_on_signal 
+0x35da 011138 store 2 ,mem_remote_car_power_standby_cb 
+0x35db 011140 bpatch patch19_7 ,mem_patch19 
+0x35dc 011141 call car_init_environment 
+0x35dd 011142 call queue_init 
+0x35de 011143 jam 2 ,mem_lpm_mult 
+0x35df 011144 jam power_on ,mem_car_24g_received_pac 
+0x35e0 011145 fetch 1 ,mem_car_config_soft_switch_enable 
+0x35e1 011146 store 1 ,mem_car_hard_soft_switch 
+0x35e2 011147 beq hard_switch ,car_hard_switch_power_on_signal 
+0x35e3 011148 fetch 1 ,mem_car_config_soft_switch_gpio 
+0x35e4 011149 store 1 ,mem_ui_button_gpio 
+0x35e5 011150 jam off ,mem_le_adv_enable 
+:      011151 car_soft_switch_power_on_init:
+0x35e6 011152 call car_ui_led_init 
+0x35e7 011153 call ui_button_init 
+0x35e8 011154 call ui_button_polling 
+0x35e9 011155 jam power_starting ,mem_car_power_state 
+0x35ea 011156 fetch 2 ,mem_ui_state_map 
+0x35eb 011157 rtnbit1 ui_state_btn_down 
+0x35ec 011158 branch app_enter_hibernate 
+:      011160 car_power_off_signal:
+0x35ed 011161 branch car_ui_led_init 
+:      011163 car_hard_switch_power_on_signal:
+0x35ee 011164 jam power_standby ,mem_car_power_state 
+:      011165 car_soft_switch_power_on_signal:
+0x35ef 011166 jam on ,mem_le_adv_enable 
+0x35f0 011167 call car_ui_led_init 
+0x35f1 011168 arg 0 ,rega 
+0x35f2 011169 call ui_led_blink_start_global 
+0x35f3 011171 setarg fast_adv_interval_value_car 
+0x35f4 011172 call shutter_ble_adv_interval_set 
+:      011173 car_le_modified_name_adv:
+0x35f5 011174 arg mem_le_name + 7 ,contw 
+0x35f6 011175 fetch 1 ,mem_le_lap 
+:      011176 car_name_loop:
+0x35f7 011177 and pdata ,0xF0 ,temp 
+0x35f8 011178 rshift4 temp ,temp 
+0x35f9 011179 call car_hex_to_ascii 
+0x35fa 011180 istoret 1 ,contw 
+0x35fb 011181 and pdata ,0x0F ,temp 
+0x35fc 011182 call car_hex_to_ascii 
+0x35fd 011183 istoret 1 ,contw 
+0x35fe 011184 call le_modified_name_att_list 
+0x35ff 011185 fetcht 1 ,mem_le_name_len 
+0x3600 011186 copy temp ,loopcnt 
+0x3601 011187 arg mem_le_adv_data + 2 ,contw 
+0x3602 011188 arg mem_le_name ,contr 
+0x3603 011189 call memcpy 
+:      011190 car_le_modified_name_scan:
+0x3604 011191 fetcht 1 ,mem_le_name_len 
+0x3605 011192 copy temp ,loopcnt 
+0x3606 011193 arg mem_le_scan_data + 2 ,contw 
+0x3607 011194 arg mem_le_name ,contr 
+0x3608 011195 branch memcpy 
+:      011196 car_hex_to_ascii:
+0x3609 011197 sub temp ,9 ,null 
+0x360a 011198 branch car_hex_num ,positive 
+0x360b 011199 add temp ,55 ,temp 
+0x360c 011200 rtn 
+:      011201 car_hex_num:
+0x360d 011202 add temp ,48 ,temp 
+0x360e 011203 rtn 
+:      011205 car_ui_led_init:
+0x360f 011206 fetch 1 ,mem_car_config_blood_led1_gpio 
+0x3610 011207 bne invalid_pin_num ,car_blood_led_gpio_set 
+:      011208 car_ui_led_init_1:
+0x3611 011209 fetch 1 ,mem_car_config_pairing_led_gpio 
+0x3612 011210 bne invalid_pin_num ,car_pairing_led_gpio_set 
+:      011211 car_ui_led_init_2:
+0x3613 011212 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x3614 011213 bne invalid_pin_num ,car_low_voltage_led_gpio_set 
+:      011214 car_ui_led_init_3:
+0x3615 011215 fetch 1 ,mem_car_led_num 
+0x3616 011216 copy pdata ,loopcnt 
+0x3617 011217 setarg mem_car_led_map 
+0x3618 011218 copy pdata ,rega 
+:      011219 car_in_lp1:
+0x3619 011220 copy rega ,contr 
+0x361a 011221 ifetch 1 ,contr 
+0x361b 011222 copy contr ,rega 
+0x361c 011223 beq invalid_pin_num ,car_in_lp1_end 
+0x361d 011224 copy pdata ,temp 
+0x361e 011225 call gpio_config_output 
+:      011226 car_in_lp1_end:
+0x361f 011227 loop car_in_lp1 
+:      011228 car_ui_led_init_end:
+0x3620 011229 rtn 
+:      011230 car_blood_led_gpio_set:
+0x3621 011231 fetch 8 ,mem_car_config_blood_led1_gpio 
+0x3622 011232 store 8 ,mem_car_led_map + 2 
+0x3623 011233 branch car_ui_led_init_1 
+:      011234 car_pairing_led_gpio_set:
+0x3624 011235 store 1 ,mem_car_led_map 
+0x3625 011236 branch car_ui_led_init_2 
+:      011237 car_low_voltage_led_gpio_set:
+0x3626 011238 store 1 ,mem_car_led_map + 1 
+0x3627 011239 branch car_ui_led_init_3 
+:      011242 car_init_environment:
+0x3628 011243 arg 0 ,rega 
+0x3629 011244 call pwm_init 
+0x362a 011245 call car_ir_rx_init 
+0x362b 011246 call g24_receive_process_init 
+0x362c 011247 branch car_init_adc_hvin 
+:      011249 car_init_adc_hvin:
+0x362d 011250 jam 100 ,mem_car_notify_vdd_value_last 
+0x362e 011251 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x362f 011252 store 1 ,mem_car_style2_struct_led_gpio 
+0x3630 011253 branch adc_init_data 
+:      011255 car_le_before_hibernate:
+0x3631 011256 call gpio_set_before_lpm_common 
+0x3632 011257 branch keyscan_process_lpm_before 
+:      011259 car_le_process_lpm_before:
+0x3633 011260 branch keyscan_process_lpm_before 
+:      011262 car_key_scan_process:
+0x3634 011265 branch keyscan_key_process 
+:      011267 car_scale_process_idle:
+0x3635 011268 call car_le_send_packet 
+0x3636 011269 call car_ir_receive_process 
+0x3637 011270 call car_g24_status_process 
+0x3638 011271 branch car_key_scan_process 
+:      011273 car_g24_status_process:
+0x3639 011274 fetch 2 ,mem_ui_state_map 
+0x363a 011275 rtnbit1 ui_state_ble_connected 
+0x363b 011276 fetch 1 ,mem_car_24g_received_pac 
+0x363c 011277 beq work_paired ,car_g24_connected_event 
+0x363d 011278 rtn 
+:      011279 car_g24_connected_event:
+0x363e 011280 fetch 1 ,mem_car_24g_status 
+0x363f 011281 rtneq work_paired 
+0x3640 011282 jam work_paired ,mem_car_24g_status 
+0x3641 011283 branch car_g24_connected 
+:      011285 car_le_send_packet:
+0x3642 011286 fetch 2 ,mem_ui_state_map 
+0x3643 011287 rtnbit0 ui_state_ble_connected 
+0x3644 011288 call le_fifo_check_nearly_full 
+0x3645 011289 nrtn blank 
+0x3646 011290 arg mem_car_pop_queue_buff ,rega 
+0x3647 011291 call queue_pop 
+0x3648 011292 nrtn user 
+0x3649 011293 arg mem_car_pop_queue_buff ,contr 
+0x364a 011294 branch le_send_notify_from_list 
+:      011296 car_scale_process_bb_event:
+0x364b 011297 copy regc ,pdata 
+0x364c 011298 beq bt_evt_button_up ,app_event_button_up 
+0x364d 011299 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x364e 011300 beq bt_evt_le_connected ,car_scale_event_le_conn 
+0x364f 011301 beq bt_evt_le_disconnected ,car_scale_event_le_discon 
+0x3650 011302 rtn 
+:      011304 car_scale_event_le_conn:
+0x3651 011305 setarg disable_24g 
+0x3652 011306 call g24_store_mem_24g_mode 
+0x3653 011307 branch car_scale_process_conn 
+:      011308 car_g24_connected:
+0x3654 011309 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3655 011310 store 2 ,mem_car_24g_no_data_timeout_timer 
+:      011311 car_scale_process_conn:
+0x3656 011312 jam 0x14 ,mem_car_notify_vdd_timer 
+0x3657 011313 jam 0 ,mem_lpm_mode 
+0x3658 011314 call app_ble_stop_adv 
+0x3659 011315 call app_lpm_mult_enable 
+0x365a 011316 fetch 1 ,mem_car_config_pairing_led_conn_status 
+0x365b 011317 beq 0x01 ,car_pairing_led_conn_status_setting 
+:      011318 car_scale_process_conn_next:
+0x365c 011319 arg 0 ,rega 
+0x365d 011320 branch ui_led_on_global 
+:      011321 car_pairing_led_conn_status_setting:
+0x365e 011322 arg 0 ,rega 
+0x365f 011323 branch ui_led_blink_stop_global 
+:      011325 car_scale_event_le_discon:
+0x3660 011326 setarg rx_24g 
+0x3661 011327 call g24_store_mem_24g_mode 
+:      011328 car_g24_disconnect:
+0x3662 011329 setarg 0 
+0x3663 011330 store 5 ,mem_car_led_control 
+0x3664 011331 setarg 4 
+0x3665 011332 call pwm_disable 
+0x3666 011333 setarg 5 
+0x3667 011334 call pwm_disable 
+0x3668 011335 setarg 20 
+0x3669 011336 call pwm_disable 
+0x366a 011337 setarg 21 
+0x366b 011338 call pwm_disable 
+0x366c 011339 setarg 22 
+0x366d 011340 call pwm_disable 
+0x366e 011341 setarg 7 
+0x366f 011342 call pwm_disable 
+0x3670 011343 call queue_init 
+0x3671 011344 jam 10 ,mem_motor1_speed 
+0x3672 011345 jam 10 ,mem_motor2_speed 
+0x3673 011346 jam 10 ,mem_motor3_speed 
+0x3674 011348 jam 2 ,mem_lpm_mult 
+0x3675 011349 arg 0 ,rega 
+0x3676 011350 call ui_led_blink_start_global 
+0x3677 011352 setarg fast_adv_interval_value_car 
+0x3678 011353 call shutter_ble_adv_interval_set 
+0x3679 011354 branch app_ble_start_adv 
+:      011356 car_le_bb_event_timer:
+0x367a 011358 call car_moto1_blank_data_timer 
+0x367b 011359 call car_moto2_blank_data_timer 
+0x367c 011360 call car_moto3_blank_data_timer 
+0x367d 011361 call app_power_timer 
+0x367e 011362 call car_led_control_timer 
+0x367f 011363 call car_notify_vdd_timer 
+0x3680 011364 call car_24g_no_data_timeout_timer 
+0x3681 011365 call car_ir_breakdown_timer 
+0x3682 011366 branch car_attack_shake_timer 
+:      011368 car_ir_breakdown_timer:
+0x3683 011369 arg mem_car_ir_breakdown_check_timer ,regc 
+0x3684 011370 arg car_ir_breakdown_timeout ,regb 
+0x3685 011371 branch timer_single_step 
+:      011372 car_ir_breakdown_timeout:
+0x3686 011373 call car_ir_gpio_get_status 
+0x3687 011374 nrtn true 
+0x3688 011375 jam 1 ,mem_car_ir_breakdown_flag 
+0x3689 011376 rtn 
+:      011378 car_24g_no_data_timeout_timer:
+0x368a 011379 arg mem_car_24g_no_data_timeout_timer ,regc 
+0x368b 011380 arg car_24g_no_data_timer_timeout ,regb 
+0x368c 011381 branch timer_single_step_2b 
+:      011382 car_24g_no_data_timer_timeout:
+0x368d 011383 jam work_search ,mem_car_24g_status 
+0x368e 011384 branch car_g24_disconnect 
+:      011386 car_attack_shake_timer:
+0x368f 011387 arg mem_car_attack_shake_timer ,regc 
+0x3690 011388 arg car_attack_shake ,regb 
+0x3691 011389 branch timer_single_step 
+:      011390 car_attack_shake:
+0x3692 011391 fetch 1 ,mem_car_attack_shake_flag 
+0x3693 011392 branch car_attack_shake_stop ,blank 
+0x3694 011393 jam 2 ,mem_car_attack_shake_timer 
+0x3695 011394 jam 0 ,mem_car_attack_shake_flag 
+0x3696 011395 setarg 0x0a02 
+0x3697 011396 store 2 ,mem_le_receive_payload 
+0x3698 011397 fetch 1 ,mem_car_config_device_select 
+0x3699 011398 beq device_battle_tank ,car_attack_shake_front_battle_tank 
+:      011399 car_attack_shake_front_battle_car:
+0x369a 011400 branch car_motor_control 
+:      011401 car_attack_shake_front_battle_tank:
+0x369b 011402 setarg 0x0a02 
+0x369c 011403 store 2 ,mem_le_receive_payload + 2 
+0x369d 011404 branch car_motor_control 
+:      011405 car_attack_shake_stop:
+0x369e 011406 setarg 0 
+0x369f 011407 store 4 ,mem_le_receive_payload 
+0x36a0 011408 branch car_motor_control 
+:      011410 car_notify_vdd_timer:
+0x36a1 011411 fetch 1 ,mem_car_config_bat_notify_enable 
+0x36a2 011412 rtn blank 
+0x36a3 011413 fetch 2 ,mem_ui_state_map 
+0x36a4 011414 bbit0 ui_state_ble_connected ,car_low_bat_led_off 
+0x36a5 011415 arg mem_car_notify_vdd_timer ,regc 
+0x36a6 011416 arg car_notify_vdd ,regb 
+0x36a7 011417 branch timer_single_step 
+:      011418 car_notify_vdd:
+0x36a8 011419 fetch 1 ,mem_car_notify_vdd_count 
+0x36a9 011420 store 1 ,mem_car_notify_vdd_timer 
+0x36aa 011421 fetch 1 ,mem_car_working_flag 
+0x36ab 011422 nrtn blank 
+:      011423 car_read_hvin:
+0x36ac 011424 call adc_set_mode 
+0x36ad 011425 call vdd_calculate_by_mode 
+0x36ae 011426 store 2 ,mem_vdd_now_vol 
+0x36af 011427 arg mem_vdd_calculate_set ,rega 
+0x36b0 011428 call adc_bat_percent_lowpower_out 
+0x36b1 011429 fetcht 1 ,mem_car_notify_vdd_value_last 
+0x36b2 011430 isub temp ,null 
+0x36b3 011431 branch car_notify_vdd_next2 ,positive 
+0x36b4 011432 store 1 ,mem_car_notify_vdd_value_last 
+0x36b5 011433 copy pdata ,temp 
+:      011434 car_notify_vdd_next2:
+0x36b6 011435 storet 1 ,mem_car_notify_vdd_percent 
+0x36b7 011436 fetch 1 ,mem_car_config_low_voltage_percent 
+0x36b8 011437 isub temp ,null 
+0x36b9 011438 call car_enter_low_bat ,positive 
+0x36ba 011439 storet 1 ,mem_notify_bat_payload 
+0x36bb 011440 arg 6 ,loopcnt 
+0x36bc 011441 arg mem_notify_bat_head ,contr 
+0x36bd 011442 call calc_check_sum_start 
+0x36be 011443 store 1 ,mem_notify_bat_check_sum 
+0x36bf 011444 arg mem_notify_bat_packet ,rega 
+0x36c0 011445 branch queue_push 
+:      011446 car_enter_low_bat:
+0x36c1 011447 fetch 1 ,mem_low_bat_flag 
+0x36c2 011448 nrtn blank 
+0x36c3 011449 jam 1 ,mem_low_bat_flag 
+0x36c4 011450 arg 1 ,rega 
+0x36c5 011451 branch ui_led_blink_start_global 
+:      011452 car_low_bat_led_off:
+0x36c6 011453 arg 1 ,rega 
+0x36c7 011454 branch ui_led_blink_stop_global 
+:      011456 car_led_control_timer:
+0x36c8 011457 arg mem_car_led_control_timer ,regc 
+0x36c9 011458 arg car_led_control ,regb 
+0x36ca 011459 branch timer_single_step 
+:      011460 car_led_control:
+0x36cb 011461 jam 5 ,mem_car_led_control_timer 
+0x36cc 011462 jam 0 ,mem_car_led_no 
+0x36cd 011463 fetch 1 ,mem_car_led_blink_status 
+0x36ce 011464 beq led_on ,car_led_control_blink_off 
+0x36cf 011465 beq led_off ,car_led_control_blink_on 
+:      011466 car_led_control_set:
+0x36d0 011467 arg mem_car_led_control ,contr 
+0x36d1 011468 copy contr ,rega 
+0x36d2 011469 arg 8 ,loopcnt 
+:      011470 car_led_control_timer_next:
+0x36d3 011471 copy rega ,contr 
+0x36d4 011472 ifetch 1 ,contr 
+0x36d5 011473 copy contr ,rega 
+0x36d6 011474 beq led_off ,car_led_control_off 
+0x36d7 011475 beq led_on ,car_led_control_on 
+0x36d8 011476 beq led_blink ,car_led_control_blink 
+:      011477 car_led_control_timer_next_2:
+0x36d9 011478 fetch 1 ,mem_car_led_no 
+0x36da 011479 increase 1 ,pdata 
+0x36db 011480 store 1 ,mem_car_led_no 
+0x36dc 011481 loop car_led_control_timer_next 
+0x36dd 011482 rtn 
+:      011483 car_led_switch:
+0x36de 011484 fetch 1 ,mem_car_led_no 
+0x36df 011485 arg mem_car_config_blood_led_gpio ,regb 
+0x36e0 011486 iadd regb ,regb 
+0x36e1 011487 ifetcht 1 ,regb 
+0x36e2 011488 rtn 
+:      011489 car_led_control_off:
+0x36e3 011490 call car_led_switch 
+0x36e4 011491 call gpio_out_inactive 
+0x36e5 011492 branch car_led_control_timer_next_2 
+:      011493 car_led_control_on:
+0x36e6 011494 call car_led_switch 
+0x36e7 011495 call gpio_out_active 
+0x36e8 011496 branch car_led_control_timer_next_2 
+:      011497 car_led_control_blink:
+0x36e9 011498 fetch 1 ,mem_car_led_blink_status 
+0x36ea 011499 beq led_on ,car_led_control_off 
+0x36eb 011500 branch car_led_control_on 
+:      011501 car_led_control_blink_on:
+0x36ec 011502 jam led_on ,mem_car_led_blink_status 
+0x36ed 011503 branch car_led_control_set 
+:      011504 car_led_control_blink_off:
+0x36ee 011505 jam led_off ,mem_car_led_blink_status 
+0x36ef 011506 branch car_led_control_set 
+:      011510 calc_check_sum_start:
+0x36f0 011511 arg 0 ,rega 
+:      011512 calc_check_sum_loop:
+0x36f1 011513 ifetch 1 ,contr 
+0x36f2 011514 iadd rega ,rega 
+0x36f3 011515 loop calc_check_sum_loop 
+:      011516 calc_check_sum_and:
+0x36f4 011517 and rega ,0xff ,pdata 
+0x36f5 011518 rtn 
+:      011520 car_le_receive_data:
+0x36f6 011521 fetch 1 ,mem_le_att_opcode 
+0x36f7 011522 beq attop_write_request ,car_le_parse_att_write_request 
+0x36f8 011523 rtn 
+:      011524 car_le_parse_att_write_request:
+0x36f9 011525 fetch 2 ,mem_le_att_handle 
+0x36fa 011526 beq att_car_control_handle ,car_control_le_receive 
+0x36fb 011527 rtn 
+:      011539 le_app_receive_data:
+0x36fc 011540 bpatch patch1a_0 ,mem_patch1a 
+0x36fd 011541 ifetch 5 ,rega 
+0x36fe 011542 store 5 ,mem_app_receive_temp 
+0x36ff 011543 fetch 2 ,mem_app_receive_temp 
+0x3700 011544 arg le_receive_packet_head ,temp 
+0x3701 011545 isub temp ,null 
+0x3702 011546 nrtn zero 
+0x3703 011547 fetch 2 ,mem_app_receive_temp + 3 
+0x3704 011548 byteswap pdata ,pdata 
+0x3705 011549 store 2 ,mem_app_receive_temp + 3 
+0x3706 011550 copy pdata ,loopcnt 
+0x3707 011551 increase 5 ,rega 
+0x3708 011552 copy rega ,contr 
+0x3709 011553 arg mem_app_receive_temp + 5 ,contw 
+0x370a 011554 call memcpy 
+0x370b 011555 ifetch 1 ,contr 
+0x370c 011556 store 1 ,mem_app_receive_temp + 15 
+0x370d 011557 arg mem_app_receive_temp + 2 ,rega 
+0x370e 011558 arg mem_app_receive_temp + 5 ,regb 
+0x370f 011559 rtn 
+:      011561 car_control_le_receive:
+0x3710 011562 setarg 0 
+0x3711 011563 store 5 ,mem_le_receive_payload 
+0x3712 011564 store 5 ,mem_le_receive_payload + 5 
+0x3713 011565 call le_app_receive_data 
+0x3714 011566 copy regb ,contr 
+0x3715 011567 arg mem_le_receive_payload ,contw 
+0x3716 011568 arg 10 ,loopcnt 
+0x3717 011569 call memcpy 
+:      011570 car_receive_cmd_select:
+0x3718 011571 bpatch patch1a_1 ,mem_patch1a 
+0x3719 011572 ifetch 1 ,rega 
+0x371a 011573 beq car_cmd_old_car_control ,car_drive_old 
+0x371b 011574 beq car_cmd_old_speed_control ,car_speed_set_old 
+0x371c 011575 beq car_cmd_l_r_motor_control ,car_motor_control 
+0x371d 011576 beq car_cmd_f_b_motor_control ,car_motor_control 
+0x371e 011577 beq car_cmd_ir_control ,car_ir_data_rx_from_app 
+0x371f 011578 beq car_cmd_led_control ,car_led_control_receive 
+0x3720 011579 beq car_cmd_device_info ,car_info_request 
+0x3721 011580 rtn 
+:      011582 car_24g_receive_data:
+0x3722 011583 fetch 2 ,mem_ui_state_map 
+0x3723 011584 rtnbit1 ui_state_ble_connected 
+0x3724 011586 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3725 011587 store 2 ,mem_car_24g_no_data_timeout_timer 
+0x3726 011589 jam work_paired ,mem_car_24g_received_pac 
+0x3727 011591 setarg offset_24g_rxdata_temp_add3 
+0x3728 011592 call g24_set_rega 
+0x3729 011593 call car_control_le_receive 
+0x372a 011595 fetch 1 ,mem_app_receive_temp + 2 
+0x372b 011596 beq car_cmd_l_r_motor_control ,car_24g_receive_data_next 
+0x372c 011597 beq car_cmd_f_b_motor_control ,car_24g_receive_data_next 
+0x372d 011598 rtn 
+:      011599 car_24g_receive_data_next:
+0x372e 011600 fetch 1 ,mem_le_receive_payload 
+0x372f 011601 ncall car_moto1_enable_blank_data_timer ,blank 
+0x3730 011602 fetch 1 ,mem_le_receive_payload + 2 
+0x3731 011603 ncall car_moto2_enable_blank_data_timer ,blank 
+0x3732 011604 fetch 1 ,mem_le_receive_payload + 4 
+0x3733 011605 ncall car_moto3_enable_blank_data_timer ,blank 
+0x3734 011606 rtn 
+:      011608 car_moto1_enable_blank_data_timer:
+0x3735 011609 jam 5 ,mem_car_moto1_blank_timer 
+0x3736 011610 rtn 
+:      011611 car_moto2_enable_blank_data_timer:
+0x3737 011612 jam 5 ,mem_car_moto2_blank_timer 
+0x3738 011613 rtn 
+:      011614 car_moto3_enable_blank_data_timer:
+0x3739 011615 jam 5 ,mem_car_moto3_blank_timer 
+0x373a 011616 rtn 
+:      011618 car_moto1_blank_data_timer:
+0x373b 011619 arg mem_car_moto1_blank_timer ,regc 
+0x373c 011620 arg car_moto1_blank_data ,regb 
+0x373d 011621 branch timer_single_step 
+:      011622 car_moto2_blank_data_timer:
+0x373e 011623 arg mem_car_moto2_blank_timer ,regc 
+0x373f 011624 arg car_moto2_blank_data ,regb 
+0x3740 011625 branch timer_single_step 
+:      011626 car_moto3_blank_data_timer:
+0x3741 011627 arg mem_car_moto3_blank_timer ,regc 
+0x3742 011628 arg car_moto3_blank_data ,regb 
+0x3743 011629 branch timer_single_step 
+:      011631 car_moto1_blank_data:
+0x3744 011632 jam 0 ,mem_le_receive_payload 
+0x3745 011633 branch car_motor_control 
+:      011634 car_moto2_blank_data:
+0x3746 011635 jam 0 ,mem_le_receive_payload + 2 
+0x3747 011636 branch car_motor_control 
+:      011637 car_moto3_blank_data:
+0x3748 011638 jam 0 ,mem_le_receive_payload + 4 
+0x3749 011639 branch car_motor_control 
+:      011644 car_drive_old:
+0x374a 011645 call car_left_right_control_old 
+0x374b 011646 branch car_front_back_control_old 
+:      011647 car_left_right_control_old:
+0x374c 011648 fetch 1 ,mem_le_receive_payload 
+0x374d 011649 store 1 ,mem_motor2_status 
+0x374e 011650 branch car_motor2_control 
+:      011651 car_front_back_control_old:
+0x374f 011652 fetch 1 ,mem_motor1_speed 
+0x3750 011653 call car_reset_old_speed 
+0x3751 011654 fetch 1 ,mem_le_receive_payload + 1 
+0x3752 011655 store 1 ,mem_motor1_status 
+0x3753 011656 branch car_motor1_control 
+:      011657 car_reset_old_speed:
+0x3754 011658 beq speed_level_2 ,car_reset_old_speed2 
+0x3755 011659 beq speed_level_3 ,car_reset_old_speed3 
+0x3756 011660 store 1 ,mem_motor1_speed 
+0x3757 011661 rtn 
+:      011662 car_reset_old_speed2:
+0x3758 011663 jam speed_level_5 ,mem_motor1_speed 
+0x3759 011664 rtn 
+:      011665 car_reset_old_speed3:
+0x375a 011666 jam speed_level_10 ,mem_motor1_speed 
+0x375b 011667 rtn 
+:      011668 car_speed_set_old:
+0x375c 011669 fetch 1 ,mem_le_receive_payload 
+0x375d 011670 call car_reset_old_speed 
+0x375e 011671 fetch 1 ,mem_motor1_speed 
+0x375f 011672 call car_motor_speed_duty_setting 
+0x3760 011673 call car_motor_speed_duty_transform 
+0x3761 011674 branch pwm_pwm0_duty_set 
+:      011676 car_motor_control:
+0x3762 011677 fetch 1 ,mem_car_24g_go_die_flag 
+0x3763 011678 nrtn blank 
+0x3764 011679 fetch 6 ,mem_le_receive_payload 
+0x3765 011680 store 6 ,mem_motor1_status 
+0x3766 011681 fetch 1 ,mem_motor1_speed 
+0x3767 011682 fetcht 1 ,mem_motor2_speed 
+0x3768 011683 iand temp ,pdata 
+0x3769 011684 fetcht 1 ,mem_motor3_speed 
+0x376a 011685 iand temp ,pdata 
+0x376b 011686 call car_motor_working_flag ,blank 
+0x376c 011687 bpatch patch1a_2 ,mem_patch1a 
+0x376d 011688 call car_motor1_control 
+0x376e 011689 call car_motor2_control 
+0x376f 011690 branch car_motor3_control 
+:      011691 car_motor1_control:
+0x3770 011692 arg mem_motor1_pwm_set ,regb 
+0x3771 011693 arg mem_motor1_status ,contr 
+0x3772 011694 branch car_motor_status_select 
+:      011695 car_motor2_control:
+0x3773 011696 arg mem_motor2_pwm_set ,regb 
+0x3774 011697 arg mem_motor2_status ,contr 
+0x3775 011698 branch car_motor_status_select 
+:      011699 car_motor3_control:
+0x3776 011700 arg mem_motor3_pwm_set ,regb 
+0x3777 011701 arg mem_motor3_status ,contr 
+0x3778 011702 branch car_motor_status_select 
+:      011703 car_motor_working_flag:
+0x3779 011704 jam 0 ,mem_car_working_flag 
+0x377a 011705 rtn 
+:      011707 car_motor_status_select:
+0x377b 011708 ifetch 1 ,contr 
+0x377c 011709 beq motor_stop ,car_motor_stop 
+0x377d 011710 beq go_front ,car_motor_positive 
+0x377e 011711 beq go_back ,car_motor_negative 
+0x377f 011712 rtn 
+:      011713 car_motor_positive:
+0x3780 011714 jam 0 ,mem_motor_select_p_n 
+0x3781 011715 branch car_motor_negative + 1 
+:      011716 car_motor_negative:
+0x3782 011717 jam 1 ,mem_motor_select_p_n 
+0x3783 011718 ifetch 1 ,contr 
+0x3784 011719 store 1 ,mem_car_motor_speed 
+0x3785 011720 ifetch 8 ,regb 
+0x3786 011721 branch car_motor_work 
+:      011723 car_motor_stop:
+0x3787 011724 ifetch 1 ,regb 
+0x3788 011725 call pwm_disable 
+0x3789 011726 increase 1 ,regb 
+0x378a 011727 ifetch 1 ,regb 
+0x378b 011728 branch pwm_disable 
+:      011729 car_motor_work:
+0x378c 011730 store 8 ,mem_motor_pwm_pin1_set 
+0x378d 011731 jam 1 ,mem_car_working_flag 
+0x378e 011732 fetch 1 ,mem_motor_select_p_n 
+0x378f 011733 beq 0 ,car_motor_select_positive 
+:      011734 car_motor_select_negative:
+0x3790 011735 fetch 1 ,mem_motor_pwm_pin2_set 
+0x3791 011736 store 1 ,mem_motor_pwm_pin_set 
+0x3792 011737 fetch 1 ,mem_motor_pwm_pin1_set 
+:      011738 car_motor_work_next:
+0x3793 011739 call pwm_disable 
+0x3794 011740 fetch 1 ,mem_car_motor_speed 
+0x3795 011741 call car_motor_speed_duty_setting 
+0x3796 011742 store 1 ,mem_motor_pwm_dute_set 
+0x3797 011743 fetch 6 ,mem_motor_pwm_pin_set 
+0x3798 011744 store 6 ,mem_pdatatemp 
+0x3799 011745 branch pwm_out_set 
+:      011746 car_motor_select_positive:
+0x379a 011747 fetch 1 ,mem_motor_pwm_pin1_set 
+0x379b 011748 store 1 ,mem_motor_pwm_pin_set 
+0x379c 011749 fetch 1 ,mem_motor_pwm_pin2_set 
+0x379d 011750 branch car_motor_work_next 
+:      011752 car_motor_speed_duty_setting:
+0x379e 011753 mul32 pdata ,5 ,pdata 
+0x379f 011754 add pdata ,50 ,pdata 
+0x37a0 011755 rtn 
+:      011756 car_motor_speed_duty_transform:
+0x37a1 011757 arg 12000 ,temp 
+0x37a2 011758 imul32 temp ,pdata 
+0x37a3 011759 div pdata ,100 
+0x37a4 011760 call wait_div_end 
+0x37a5 011761 quotient temp 
+0x37a6 011762 copy temp ,rega 
+0x37a7 011763 setarg 12000 
+0x37a8 011764 isub temp ,regb 
+0x37a9 011765 rtn 
+:      011768 car_ir_init:
+0x37aa 011769 hfetch 1 ,core_gpio_sel2 
+0x37ab 011770 set1 2 ,pdata 
+0x37ac 011771 hstore 1 ,core_gpio_sel2 
+0x37ad 011772 setarg 158 
+0x37ae 011773 hstore 2 ,core_pwm_pcnt4 
+0x37af 011774 hstore 2 ,core_pwm_ncnt4 
+0x37b0 011775 rtn 
+:      011777 car_ir_data_rx_from_app:
+0x37b1 011778 fetch 1 ,mem_car_24g_go_die_flag 
+0x37b2 011779 nrtn blank 
+0x37b3 011780 fetch 2 ,mem_le_receive_payload 
+0x37b4 011781 store 2 ,mem_ir_data 
+0x37b5 011782 fetch 1 ,mem_car_24g_status 
+0x37b6 011783 bne work_paired ,car_ir_data_tx 
+0x37b7 011784 fetch 2 ,mem_le_lap 
+0x37b8 011785 store 2 ,mem_ir_data 
+:      011786 car_ir_data_tx:
+0x37b9 011787 bpatch patch1a_3 ,mem_patch1a 
+0x37ba 011788 call car_ir_init 
+0x37bb 011789 call car_ir_enable 
+0x37bc 011790 setarg 48000 
+0x37bd 011791 call sleep 
+0x37be 011792 call car_ir_disable 
+0x37bf 011793 setarg 7200 
+0x37c0 011794 call sleep 
+0x37c1 011795 arg 16 ,loopcnt 
+:      011796 car_ir_send_loop:
+0x37c2 011797 call car_ir_enable 
+0x37c3 011798 fetch 2 ,mem_ir_data 
+0x37c4 011799 bbit1 0 ,car_ir_is_bit1 
+0x37c5 011800 setarg 7200 
+0x37c6 011801 call sleep 
+0x37c7 011802 call car_ir_disable 
+0x37c8 011803 branch car_ir_wait_finish 
+:      011805 car_ir_is_bit1:
+0x37c9 011806 setarg 14400 
+0x37ca 011807 call sleep 
+0x37cb 011808 call car_ir_disable 
+:      011809 car_ir_wait_finish:
+0x37cc 011810 setarg 7200 
+0x37cd 011811 call sleep 
+0x37ce 011812 fetch 2 ,mem_ir_data 
+0x37cf 011813 rshift pdata ,pdata 
+0x37d0 011814 store 2 ,mem_ir_data 
+0x37d1 011815 loop car_ir_send_loop 
+0x37d2 011817 jam 2 ,mem_car_attack_shake_timer 
+0x37d3 011818 jam 1 ,mem_car_attack_shake_flag 
+0x37d4 011819 setarg 0x0a01 
+0x37d5 011820 store 2 ,mem_le_receive_payload 
+0x37d6 011821 fetch 1 ,mem_car_config_device_select 
+0x37d7 011822 beq device_battle_tank ,car_attack_shake_back_battle_tank 
+:      011823 car_attack_shake_back_battle_car:
+0x37d8 011824 branch car_motor_control 
+:      011825 car_attack_shake_back_battle_tank:
+0x37d9 011826 setarg 0x0a01 
+0x37da 011827 store 2 ,mem_le_receive_payload + 2 
+0x37db 011828 branch car_motor_control 
+:      011830 car_ir_enable:
+0x37dc 011831 hfetch 1 ,core_gpio_key2 
+0x37dd 011832 or_into 0x40 ,pdata 
+0x37de 011833 hstore 1 ,core_gpio_key2 
+0x37df 011834 rtn 
+:      011835 car_ir_disable:
+0x37e0 011836 hfetch 1 ,core_gpio_key2 
+0x37e1 011837 and_into 0xbf ,pdata 
+0x37e2 011838 hstore 1 ,core_gpio_key2 
+0x37e3 011839 rtn 
+:      011841 car_ir_rx_init:
+0x37e4 011842 fetch 1 ,mem_car_config_ir_enable 
+0x37e5 011843 rtneq 0x00 
+0x37e6 011844 call lpm_disable_exen_output 
+0x37e7 011845 fetcht 1 ,mem_car_config_ir_rx_gpio 
+0x37e8 011846 storet 1 ,mem_ir_rx_gpio 
+0x37e9 011847 call gpio_config_input 
+0x37ea 011848 call car_ir_gpio_get_status 
+0x37eb 011849 nrtn true 
+0x37ec 011850 jam 1 ,mem_car_ir_breakdown_check_timer 
+0x37ed 011851 rtn 
+:      011853 car_ir_receive_process:
+0x37ee 011854 fetch 1 ,mem_car_config_ir_enable 
+0x37ef 011855 rtneq flag_ir_disable 
+0x37f0 011856 fetch 1 ,mem_car_ir_breakdown_flag 
+0x37f1 011857 nrtn blank 
+0x37f2 011858 fetch 2 ,mem_ui_state_map 
+0x37f3 011859 bbit1 ui_state_ble_connected ,car_ir_receive_process_next 
+0x37f4 011860 fetch 1 ,mem_car_24g_status 
+0x37f5 011861 rtnne work_paired 
+:      011862 car_ir_receive_process_next:
+0x37f6 011863 bpatch patch1a_4 ,mem_patch1a 
+0x37f7 011864 call car_ir_gpio_get_status 
+0x37f8 011865 nrtn true 
+0x37f9 011866 setarg 36000 
+0x37fa 011867 call sleep 
+0x37fb 011868 call car_ir_gpio_get_status 
+0x37fc 011869 nrtn true 
+0x37fd 011870 call car_ir_clk_get 
+:      011871 car_ir_packet_head_wait_end:
+0x37fe 011872 call car_ir_clk_check 
+0x37ff 011873 nrtn positive 
+0x3800 011874 call car_ir_gpio_get_status 
+0x3801 011875 branch car_ir_packet_head_wait_end ,true 
+0x3802 011876 arg 0 ,rega 
+0x3803 011877 arg 16 ,loopcnt 
+0x3804 011878 call car_ir_clk_get 
+:      011879 car_ir_receive_process_loop:
+0x3805 011880 call car_ir_clk_check 
+0x3806 011881 nrtn positive 
+0x3807 011882 call car_ir_gpio_get_status 
+0x3808 011883 nbranch car_ir_receive_process_loop ,true 
+0x3809 011884 setarg 10800 
+0x380a 011885 call sleep 
+0x380b 011886 call car_ir_gpio_get_status 
+0x380c 011887 branch car_ir_get_bit1 ,true 
+:      011888 car_ir_get_bit0:
+0x380d 011889 setarg 0 
+0x380e 011890 rshift rega ,rega 
+0x380f 011891 ior rega ,rega 
+0x3810 011892 loop car_ir_receive_process_loop 
+0x3811 011893 branch car_ir_receive_process_end 
+:      011894 car_ir_get_bit1:
+0x3812 011895 setarg 0x8000 
+0x3813 011896 rshift rega ,rega 
+0x3814 011897 ior rega ,rega 
+0x3815 011898 call car_ir_clk_get 
+:      011899 car_ir_get_bit1_wait_low_end:
+0x3816 011900 call car_ir_clk_check 
+0x3817 011901 nrtn positive 
+0x3818 011902 call car_ir_gpio_get_status 
+0x3819 011903 branch car_ir_get_bit1_wait_low_end ,true 
+0x381a 011904 loop car_ir_receive_process_loop 
+:      011905 car_ir_receive_process_end:
+0x381b 011906 bpatch patch1a_5 ,mem_patch1a 
+0x381c 011907 copy rega ,pdata 
+0x381d 011908 store 2 ,mem_ir_rx_buf 
+0x381e 011909 store 2 ,mem_ir_notify_data + 8 
+0x381f 011910 fetch 1 ,mem_car_24g_status 
+0x3820 011911 beq work_paired ,car_ir_24g_receive_attack 
+:      011912 car_ir_data_notify:
+0x3821 011913 arg 0x07 ,loopcnt 
+0x3822 011914 arg mem_ir_notify_data_head ,contr 
+0x3823 011915 call calc_check_sum_start 
+0x3824 011916 store 1 ,mem_ir_notify_data_check_sum 
+0x3825 011917 arg mem_ir_notify_data ,rega 
+0x3826 011918 branch queue_push 
+:      011920 car_ir_24g_receive_attack:
+0x3827 011921 fetch 1 ,mem_car_24g_ir_receive_attack_count 
+0x3828 011922 increase 1 ,pdata 
+0x3829 011923 store 1 ,mem_car_24g_ir_receive_attack_count 
+0x382a 011924 div pdata ,2 
+0x382b 011925 call wait_div_end 
+0x382c 011926 quotient temp 
+0x382d 011927 remainder pdata 
+0x382e 011928 nbranch car_ir_24g_receive_attack_blink ,blank 
+:      011929 car_ir_24g_receive_attack_off:
+0x382f 011930 fetch 1 ,mem_car_config_led_num 
+0x3830 011931 isub temp ,null 
+0x3831 011932 call car_ir_24g_go_die ,zero 
+0x3832 011933 arg mem_car_led_control ,pdata 
+0x3833 011934 increase -1 ,temp 
+0x3834 011935 iadd temp ,rega 
+0x3835 011936 arg 0 ,pdata 
+0x3836 011937 istore 1 ,rega 
+0x3837 011938 rtn 
+:      011939 car_ir_24g_receive_attack_blink:
+0x3838 011940 arg mem_car_led_control ,pdata 
+0x3839 011941 iadd temp ,rega 
+0x383a 011942 arg 2 ,pdata 
+0x383b 011943 istore 1 ,rega 
+0x383c 011944 rtn 
+:      011945 car_ir_24g_go_die:
+0x383d 011946 jam 1 ,mem_car_24g_go_die_flag 
+0x383e 011947 rtn 
+:      011948 car_ir_clk_get:
+0x383f 011949 copy clkn_bt ,pdata 
+0x3840 011950 store 4 ,mem_ir_receive_clkn 
+0x3841 011951 rtn 
+:      011952 car_ir_clk_check:
+0x3842 011953 copy clkn_bt ,pdata 
+0x3843 011954 fetcht 4 ,mem_ir_receive_clkn 
+0x3844 011955 isub temp ,pdata 
+0x3845 011956 sub pdata ,200 ,null 
+0x3846 011957 rtn 
+:      011959 car_ir_gpio_get_status:
+0x3847 011960 fetcht 1 ,mem_ir_rx_gpio 
+0x3848 011961 branch gpio_get_bit 
+:      011963 car_led_control_receive:
+0x3849 011964 fetch 8 ,mem_le_receive_payload 
+0x384a 011965 store 8 ,mem_car_led_control 
+0x384b 011966 rtn 
+:      011968 car_info_request:
+0x384c 011969 fetch 1 ,mem_car_config_device_select 
+0x384d 011970 store 1 ,mem_car_info_request_payload 
+0x384e 011971 fetch 1 ,mem_car_config_motor_layout 
+0x384f 011972 store 1 ,mem_car_info_request_payload + 1 
+0x3850 011973 fetch 1 ,mem_car_config_ir_enable 
+0x3851 011974 store 1 ,mem_car_info_request_payload + 2 
+0x3852 011975 arg 13 ,loopcnt 
+0x3853 011976 arg mem_car_info_request_head ,contr 
+0x3854 011977 call calc_check_sum_start 
+0x3855 011978 store 1 ,mem_car_info_request_checksum 
+0x3856 011979 arg mem_car_info_request ,rega 
+0x3857 011980 branch queue_push 
+:      011986 light_init:
+0x3858 011987 call clear_eeprom_size_2k 
+0x3859 011988 jam 0x7a ,mem_curr_packet_num 
+0x385a 011989 call light_load_controler_list 
+0x385b 011990 call light_init_crr_cmd_count 
+0x385c 011991 setarg light_pairing_timer 
+0x385d 011992 store 2 ,mem_cb_event_timer 
+0x385e 011993 arg 0 ,rega 
+0x385f 011994 branch pwm_init 
+:      011996 light_pairing_timer:
+0x3860 011997 fetch 2 ,mem_light_pairing_timer 
+0x3861 011998 rtn blank 
+0x3862 011999 increase -1 ,pdata 
+0x3863 012000 store 2 ,mem_light_pairing_timer 
+0x3864 012001 rtnne 0 
+0x3865 012002 jam 0 ,mem_light_pairing_enable 
+0x3866 012003 rtn 
+:      012005 light_init_crr_cmd_count:
+0x3867 012006 bpatch patch1a_6 ,mem_patch1a 
+0x3868 012007 fetch 1 ,mem_light_next_record 
+0x3869 012008 sub pdata ,40 ,null 
+0x386a 012009 rtn positive 
+0x386b 012010 jam 0 ,mem_light_next_record 
+0x386c 012011 rtn 
+:      012013 light_load_controler_list:
+0x386d 012014 arg mem_light_next_record ,rega 
+0x386e 012015 arg 0 ,regb 
+0x386f 012016 arg 81 ,temp 
+0x3870 012017 branch iicd_read_eep_data 
+:      012020 light_find_controler_pairing:
+0x3871 012021 disable user 
+0x3872 012022 fetch 1 ,mem_light_cnum 
+0x3873 012023 copy pdata ,loopcnt 
+0x3874 012025 arg mem_light_clist ,rega 
+0x3875 012026 copy regc ,regb 
+:      012027 light_find_controler_pairing_loop:
+0x3876 012028 bpatch patch1a_7 ,mem_patch1a 
+0x3877 012029 call light_compare_addr_record 
+0x3878 012030 branch enable_user ,zero 
+:      012031 light_find_single_pairing_diff:
+0x3879 012032 increase 4 ,rega 
+0x387a 012033 loop light_find_controler_pairing_loop 
+0x387b 012034 rtn 
+:      012037 light_compare_addr_record:
+0x387c 012038 bpatch patch1b_0 ,mem_patch1b 
+0x387d 012039 ifetch 3 ,rega 
+0x387e 012040 ifetcht 3 ,regb 
+0x387f 012041 isub temp ,null 
+0x3880 012042 rtn 
+:      012044 light_compare_single_record:
+0x3881 012045 bpatch patch1b_1 ,mem_patch1b 
+0x3882 012046 ifetch 3 ,rega 
+0x3883 012047 ifetcht 3 ,regb 
+0x3884 012048 isub temp ,null 
+0x3885 012049 nrtn zero 
+0x3886 012050 ifetch 1 ,contr 
+0x3887 012051 sub pdata ,0 ,null 
+0x3888 012052 rtn zero 
+0x3889 012053 add rega ,3 ,contr 
+0x388a 012054 ifetcht 1 ,contr 
+0x388b 012055 isub temp ,null 
+0x388c 012056 rtn 
+:      012059 light_find_controler_cmd:
+0x388d 012060 bpatch patch1b_2 ,mem_patch1b 
+0x388e 012061 disable user 
+0x388f 012062 fetch 1 ,mem_light_cnum 
+0x3890 012063 copy pdata ,loopcnt 
+0x3891 012065 arg mem_light_clist ,rega 
+0x3892 012066 copy regc ,regb 
+:      012067 light_find_controler_cmd_loop:
+0x3893 012068 call light_compare_single_record 
+0x3894 012069 branch enable_user ,zero 
+0x3895 012070 increase 4 ,rega 
+0x3896 012071 loop light_find_controler_cmd_loop 
+0x3897 012072 rtn 
+:      012075 light_recv_adv:
+0x3898 012076 fetch 1 ,mem_le_scanrsp_rcv 
+0x3899 012077 increase 1 ,pdata 
+0x389a 012078 store 1 ,mem_le_scanrsp_rcv 
+0x389b 012079 arg mem_le_rxbuf + 12 ,regc 
+:      012081 light_anylize_command:
+0x389c 012082 ifetch 2 ,regc 
+0x389d 012083 arg 0x55aa ,temp 
+0x389e 012084 isub temp ,null 
+0x389f 012085 nrtn zero 
+0x38a0 012086 copy contr ,regc 
+0x38a1 012087 ifetcht 3 ,regc 
+0x38a2 012088 setarg 0xffffff 
+0x38a3 012089 isub temp ,null 
+0x38a4 012090 branch light_parse_cmd ,zero 
+0x38a5 012091 call light_find_controler_cmd 
+0x38a6 012092 branch light_parse_cmd ,user 
+0x38a7 012093 rtn 
+:      012095 light_parse_cmd:
+0x38a8 012096 bpatch patch1b_3 ,mem_patch1b 
+0x38a9 012097 increase 4 ,regc 
+0x38aa 012098 ifetch 1 ,regc 
+0x38ab 012099 fetcht 1 ,mem_curr_packet_num 
+0x38ac 012100 isub temp ,null 
+0x38ad 012101 rtn zero 
+0x38ae 012102 store 1 ,mem_curr_packet_num 
+0x38af 012103 fetch 1 ,mem_le_req_rcv 
+0x38b0 012104 increase 1 ,pdata 
+0x38b1 012105 store 1 ,mem_le_req_rcv 
+0x38b2 012107 increase 1 ,regc 
+0x38b3 012108 ifetch 1 ,regc 
+0x38b4 012109 store 1 ,mem_light_crr_cmd_count 
+0x38b5 012110 copy pdata ,loopcnt 
+0x38b6 012111 rtn blank 
+:      012112 light_parse_cmd_loop:
+0x38b7 012113 ifetch 1 ,contr 
+0x38b8 012114 beq light_cmd_pwm0 ,light_parse_cmd_pwm0 
+0x38b9 012115 beq light_cmd_pwm1 ,light_parse_cmd_pwm1 
+0x38ba 012116 beq light_cmd_pwm2 ,light_parse_cmd_pwm2 
+0x38bb 012117 beq light_cmd_pwm3 ,light_parse_cmd_pwm3 
+0x38bc 012118 beq light_cmd_pwm4 ,light_parse_cmd_pwm4 
+0x38bd 012119 beq light_cmd_pwm5 ,light_parse_cmd_pwm5 
+0x38be 012120 beq light_cmd_auto_mode ,light_parse_auto_mode 
+0x38bf 012121 beq light_cmd_pairing ,light_parse_pairing 
+0x38c0 012122 loop light_parse_cmd_loop 
+0x38c1 012123 rtn 
+:      012125 light_parse_cmd_pwm0:
+0x38c2 012126 copy contr ,regc 
+0x38c3 012127 fetch 1 ,mem_light_pwm0 
+0x38c4 012128 store 1 ,mem_pdatatemp 
+0x38c5 012129 arg 0 ,temp 
+:      012130 light_parse_cmd_pwm_common:
+0x38c6 012131 storet 1 ,mem_pdatatemp + 1 
+0x38c7 012132 setarg 10000 
+0x38c8 012133 store 3 ,mem_pdatatemp + 2 
+0x38c9 012134 ifetch 1 ,regc 
+0x38ca 012135 store 1 ,mem_pdatatemp + 5 
+0x38cb 012136 call pwm_out_set 
+0x38cc 012137 and regc ,1 ,contr 
+0x38cd 012138 loop light_parse_cmd_loop 
+0x38ce 012139 rtn 
+:      012140 light_parse_cmd_pwm1:
+0x38cf 012141 copy regc ,contr 
+0x38d0 012142 fetch 1 ,mem_light_pwm1 
+0x38d1 012143 store 1 ,mem_pdatatemp 
+0x38d2 012144 arg 1 ,temp 
+0x38d3 012145 branch light_parse_cmd_pwm_common 
+:      012146 light_parse_cmd_pwm2:
+0x38d4 012147 copy regc ,contr 
+0x38d5 012148 fetch 1 ,mem_light_pwm2 
+0x38d6 012149 store 1 ,mem_pdatatemp 
+0x38d7 012150 arg 2 ,temp 
+0x38d8 012151 branch light_parse_cmd_pwm_common 
+:      012152 light_parse_cmd_pwm3:
+0x38d9 012153 copy regc ,contr 
+0x38da 012154 fetch 1 ,mem_light_pwm3 
+0x38db 012155 store 1 ,mem_pdatatemp 
+0x38dc 012156 arg 3 ,temp 
+0x38dd 012157 branch light_parse_cmd_pwm_common 
+:      012158 light_parse_cmd_pwm4:
+0x38de 012159 copy regc ,contr 
+0x38df 012160 fetch 1 ,mem_light_pwm4 
+0x38e0 012161 store 1 ,mem_pdatatemp 
+0x38e1 012162 arg 4 ,temp 
+0x38e2 012163 branch light_parse_cmd_pwm_common 
+:      012164 light_parse_cmd_pwm5:
+0x38e3 012165 copy regc ,contr 
+0x38e4 012166 fetch 1 ,mem_light_pwm5 
+0x38e5 012167 store 1 ,mem_pdatatemp 
+0x38e6 012168 arg 5 ,temp 
+0x38e7 012169 branch light_parse_cmd_pwm_common 
+:      012171 light_parse_auto_mode:
+0x38e8 012172 ifetch 1 ,contr 
+0x38e9 012173 rtn 
+:      012175 light_parse_pairing:
+0x38ea 012176 copy contr ,regc 
+0x38eb 012177 fetch 1 ,mem_light_pairing_enable 
+0x38ec 012178 bne 1 ,light_parse_pairing_abandon 
+0x38ed 012179 call update_controler_list 
+:      012180 light_parse_pairing_abandon:
+0x38ee 012181 and regc ,4 ,contr 
+0x38ef 012182 rtn 
+:      012183 update_controler_list:
+0x38f0 012184 bpatch patch1b_4 ,mem_patch1b 
+0x38f1 012185 call light_find_controler_pairing 
+0x38f2 012186 branch update_conrtoler_list_found ,user 
+0x38f3 012187 fetch 1 ,mem_light_next_record 
+0x38f4 012188 copy pdata ,temp 
+0x38f5 012189 increase 1 ,pdata 
+0x38f6 012190 store 1 ,mem_light_next_record 
+0x38f7 012191 call light_init_crr_cmd_count 
+0x38f8 012192 lshift2 temp ,temp 
+0x38f9 012193 setarg mem_light_clist 
+0x38fa 012194 iadd temp ,contw 
+0x38fb 012195 ifetch 4 ,regc 
+0x38fc 012196 istore 4 ,contw 
+0x38fd 012197 branch update_conrtoler_store_list 
+:      012198 update_conrtoler_list_found:
+0x38fe 012199 add regc ,3 ,contr 
+0x38ff 012200 ifetch 1 ,contr 
+0x3900 012201 rtn blank 
+0x3901 012202 ifetch 4 ,regc 
+0x3902 012203 istore 4 ,rega 
+:      012204 update_conrtoler_store_list:
+0x3903 012205 arg mem_light_next_record ,rega 
+0x3904 012206 arg 0 ,regb 
+0x3905 012207 arg 81 ,temp 
+0x3906 012208 branch iicd_write_eep_data 
+:      012212 lightc_init:
+0x3907 012216 fetcht 1 ,mem_lightc_led_gpio 
+0x3908 012217 call gpio_out_inactive 
+0x3909 012218 rtn 
+:      012221 lightc_dispatch:
+0x390a 012224 fetcht 1 ,mem_lightc_led_gpio 
+0x390b 012225 call gpio_out_active 
+0x390c 012228 fetcht 1 ,mem_lightc_led_gpio 
+0x390d 012229 call gpio_out_inactive 
+0x390e 012232 call lightc_start_adv 
+0x390f 012234 fetch 1 ,mem_adv_time 
+0x3910 012235 nrtn blank 
+0x3911 012237 call lpm_write_gpio_wakeup 
+0x3912 012238 hfetch 4 ,core_lpm_ctrl 
+0x3913 012239 set0 15 ,pdata 
+0x3914 012240 hstore 4 ,core_lpm_reg 
+0x3915 012241 call lpm_write_ctrl 
+0x3916 012242 arg param_hibernate_clks ,temp 
+0x3917 012243 branch lpm_sleep 
+:      012245 lightc_adv:
+0x3918 012246 fetch 1 ,mem_adv_time 
+0x3919 012247 branch le_adv_loop_tx ,blank 
+0x391a 012248 increase -1 ,pdata 
+0x391b 012249 store 1 ,mem_adv_time 
+0x391c 012250 branch le_adv_loop_tx 
+:      012252 lightc_start_adv:
+0x391d 012253 mul32 pdata ,20 ,pdata 
+0x391e 012254 arg mem_cmd0_string ,contr 
+0x391f 012255 iadd contr ,contr 
+0x3920 012256 ifetch 1 ,contr 
+0x3921 012257 rtn blank 
+0x3922 012258 copy pdata ,rega 
+0x3923 012259 copy rega ,loopcnt 
+0x3924 012260 arg mem_le_adv_data + 2 ,contw 
+0x3925 012261 call memcpy 
+0x3926 012262 copy rega ,pdata 
+0x3927 012263 increase 2 ,pdata 
+0x3928 012264 store 1 ,mem_le_adv_data_len 
+0x3929 012265 rtn 
+:      012272 module_init:
+0x392a 012274 rtn wake 
+0x392b 012275 call le_modified_name 
+0x392c 012276 call adc_init_data 
+0x392d 012277 setarg module_process_idle 
+0x392e 012278 store 2 ,mem_cb_idle_process 
+0x392f 012279 setarg module_bt_conn_process 
+0x3930 012280 store 2 ,mem_cb_bt_process 
+0x3931 012281 setarg module_process_bb_event 
+0x3932 012282 store 2 ,mem_cb_bb_event_process 
+0x3933 012283 setarg module_le_conn_process 
+0x3934 012284 store 2 ,mem_cb_le_process 
+0x3935 012285 setarg module_lpm_lock 
+0x3936 012286 store 2 ,mem_cb_check_wakelock 
+0x3937 012287 setarg module_hci_cmd_transmit_le_notify 
+0x3938 012288 store 2 ,mem_cb_ble_transmit 
+0x3939 012289 setarg module_hci_event_receive_spp_data 
+0x393a 012290 store 2 ,mem_cb_receive_spp_data 
+0x393b 012291 setarg module_le_receive_data 
+0x393c 012292 store 2 ,mem_cb_att_write 
+0x393d 012293 setarg module_bb_event_timer 
+0x393e 012294 store 2 ,mem_cb_event_timer 
+0x393f 012296 call module_spp_clear_last_transmite_clock 
+0x3940 012297 bpatch patch1b_5 ,mem_patch1b 
+0x3941 012298 call module_lpm_uart_init 
+0x3942 012299 call module_gpio_init 
+0x3943 012300 call check_module_disabled 
+0x3944 012301 branch module_hci_event_enter_standby_mode 
+:      012304 module_lpm_uart_init:
+0x3945 012305 fetch 4 ,mem_module_uart_rx_buffer 
+0x3946 012306 hstore 4 ,core_uart_rsaddr 
+0x3947 012308 fetch 4 ,mem_module_uart_tx_buffer 
+0x3948 012309 hstore 4 ,core_uart_tsaddr 
+0x3949 012311 hfetch 1 ,core_gpio_sel1 
+0x394a 012312 or_into 0x04 ,pdata 
+0x394b 012313 and_into 0xfc ,pdata 
+0x394c 012314 hstore 1 ,core_gpio_sel1 
+0x394d 012315 jam 0x00 ,core_uart_ctrl 
+0x394e 012317 fetch 2 ,mem_module_uart_rx_buffer 
+0x394f 012318 hstore 2 ,core_uart_rrptr 
+0x3950 012319 fetch 2 ,mem_module_uart_tx_buffer 
+0x3951 012320 hstore 2 ,core_uart_twptr 
+0x3952 012321 hstore 2 ,core_uart_trptrp 
+0x3953 012323 hfetch 4 ,core_gpio_pu0 
+0x3954 012324 set1 7 ,pdata 
+0x3955 012325 hstore 4 ,core_gpio_pu0 
+0x3956 012327 hfetch 2 ,core_clkoff 
+0x3957 012328 set0 clock_off_uart ,pdata 
+0x3958 012329 hstore 2 ,core_clkoff 
+0x3959 012330 call uart_set_baud_by_mem 
+0x395a 012331 jam uartclk_crystal ,core_uart_clksel 
+0x395b 012332 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x395c 012334 fetch 1 ,mem_module_flag 
+0x395d 012335 isolate1 module_flag_uart_flow_control ,pdata 
+0x395e 012336 hfetcht 1 ,core_uart_ctrl 
+0x395f 012337 setflag true ,4 ,temp 
+0x3960 012338 hstoret 1 ,core_uart_ctrl 
+0x3961 012339 rtn 
+:      012343 module_lpm_init:
+0x3962 012344 call module_spp_clear_last_transmite_clock 
+0x3963 012345 branch module_lpm_uart_init 
+:      012348 module_gpio_init:
+0x3964 012353 fetcht 1 ,mem_module_connect_state_gpio 
+0x3965 012354 call gpio_config_output 
+0x3966 012355 call module_set_conn_pin_low 
+0x3967 012357 fetcht 1 ,mem_module_wake_up_gpio 
+0x3968 012358 branch gpio_config_input 
+:      012360 module_lpm_lock:
+0x3969 012361 fetcht 1 ,mem_module_wake_up_gpio 
+0x396a 012362 call gpio_get_bit 
+0x396b 012363 nbranch app_put_lpm_wake_lock ,true 
+0x396c 012364 branch app_get_lpm_wake_lock 
+:      012367 module_le_conn_process:
+0x396d 012368 rtn 
+:      012370 module_bt_conn_process:
+0x396e 012371 call module_spp_enter_sniff 
+0x396f 012372 branch module_control_air_flow 
+:      012374 module_spp_enter_sniff:
+0x3970 012375 fetch 1 ,mem_ui_state_map 
+0x3971 012376 bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
+0x3972 012377 bpatch patch1b_6 ,mem_patch1b 
+0x3973 012378 setarg 0x3eff 
+0x3974 012379 fetcht 4 ,mem_last_transmite_clock 
+0x3975 012380 iadd temp ,temp 
+0x3976 012381 copy clkn_bt ,pdata 
+0x3977 012382 isub temp ,null 
+0x3978 012383 nrtn positive 
+0x3979 012384 fetch 2 ,mem_ui_state_map 
+0x397a 012385 bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
+0x397b 012386 fetch 1 ,mem_module_flag 
+0x397c 012387 rtnbit1 moudle_task_sniff 
+0x397d 012388 call module_set_sniff_task_flag 
+0x397e 012389 call app_bt_enter_sniff 
+:      012390 module_spp_clear_last_transmite_clock:
+0x397f 012391 copy clkn_bt ,pdata 
+0x3980 012392 store 4 ,mem_last_transmite_clock 
+0x3981 012393 rtn 
+:      012396 module_process_idle:
+0x3982 012397 call module_control_air_flow 
+0x3983 012398 call l2cap_malloc_is_fifo_full 
+0x3984 012399 nrtn blank 
+0x3985 012400 branch module_process 
+:      012403 module_process_bb_event:
+0x3986 012404 copy regc ,pdata 
+0x3987 012405 beq bt_evt_bb_connected ,module_process_bb_conn 
+0x3988 012406 beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
+0x3989 012407 beq bt_evt_reconn_failed ,module_process_reconn_fail 
+0x398a 012408 beq bt_evt_setup_complete ,module_process_setup_complete 
+0x398b 012409 beq bt_evt_spp_connected ,module_process_spp_connected 
+0x398c 012410 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
+0x398d 012411 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
+0x398e 012412 beq bt_evt_enter_sniff ,module_process_enter_sniff 
+0x398f 012413 beq bt_evt_exit_sniff ,module_process_exit_sniff 
+0x3990 012414 beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
+0x3991 012415 beq bt_evt_le_connected ,module_process_le_conn 
+0x3992 012416 beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
+0x3993 012417 beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
+0x3994 012418 beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
+0x3995 012419 beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
+0x3996 012420 beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
+0x3997 012421 beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
+0x3998 012422 beq bt_evt_le_start_enc ,module_hci_event_start_enc 
+0x3999 012423 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
+0x399a 012424 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
+0x399b 012425 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
+0x399c 012426 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
+0x399d 012427 beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
+0x399e 012428 beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
+0x399f 012429 beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
+0x39a0 012430 beq bt_evt_store_nvram ,module_hci_event_store_device 
+0x39a1 012431 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
+0x39a2 012432 rtn 
+:      012435 module_process_bb_event_disconned:
+0x39a3 012436 call module_spp_clear_last_transmite_clock 
+0x39a4 012437 fetch 1 ,mem_flag_pairing_state 
+0x39a5 012438 ncall module_hci_event_bt_pairing_fail ,blank 
+0x39a6 012439 call module_disconn_start 
+0x39a7 012440 fetch 2 ,mem_ui_state_map 
+0x39a8 012441 rtnbit0 ui_state_bt_spp_conn 
+0x39a9 012442 branch module_spp_disconnected 
+:      012444 module_process_spp_connected:
+0x39aa 012445 fetch 2 ,mem_ui_state_map 
+0x39ab 012446 set1 ui_state_bt_spp_conn ,pdata 
+0x39ac 012447 store 2 ,mem_ui_state_map 
+0x39ad 012448 fetch 1 ,mem_module_spp_lpm_mult 
+0x39ae 012449 store 1 ,mem_lpm_mult 
+0x39af 012450 call module_set_conn_pin_low 
+0x39b0 012451 branch module_hci_event_spp_connect 
+:      012453 module_process_spp_disconnected:
+:      012455 module_spp_disconnected:
+0x39b1 012456 fetch 2 ,mem_ui_state_map 
+0x39b2 012457 rtnbit0 ui_state_bt_spp_conn 
+0x39b3 012458 set0 ui_state_bt_spp_conn ,pdata 
+0x39b4 012459 store 2 ,mem_ui_state_map 
+0x39b5 012460 branch module_hci_event_spp_disconnect 
+:      012463 module_process_enter_sniff:
+:      012465 module_sniff_param_check:
+0x39b6 012466 call module_spp_clear_last_transmite_clock 
+0x39b7 012469 fetch 2 ,mem_context + coffset_tsniff 
+0x39b8 012470 rshift pdata ,pdata 
+0x39b9 012471 fetcht 2 ,mem_sniff_param_interval 
+0x39ba 012472 isub temp ,null 
+0x39bb 012473 nbranch module_sniff_param_check_unsniff ,zero 
+0x39bc 012474 branch app_lpm_mult_enable 
+:      012475 module_sniff_param_check_unsniff:
+0x39bd 012476 fetch 1 ,mem_module_flag 
+0x39be 012477 rtnbit1 moudle_task_unsniff 
+0x39bf 012478 hfetch 2 ,core_uart_rxitems 
+0x39c0 012479 ncall module_set_unsniff_task_flag ,blank 
+0x39c1 012480 branch app_bt_sniff_exit 
+:      012482 module_process_exit_sniff:
+0x39c2 012483 call module_clear_sniff_task_flag 
+0x39c3 012484 branch app_lpm_mult_disable 
+:      012486 module_process_setup_complete:
+0x39c4 012487 call module_spp_clear_last_transmite_clock 
+0x39c5 012488 branch module_conn_start 
+:      012490 module_process_bb_even_le_disconn:
+0x39c6 012491 call le_clr_config_more_data 
+0x39c7 012492 call module_disconn_start 
+0x39c8 012493 branch module_hci_event_le_disconnect 
+:      012495 module_process_evt_pincode_req:
+0x39c9 012496 branch app_bt_set_pincode 
+:      012499 module_process_sniff_not_accept:
+0x39ca 012500 branch module_clear_sniff_task_flag 
+:      012503 module_process_unsniff_accept:
+0x39cb 012504 fetch 1 ,mem_module_flag 
+0x39cc 012505 bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
+0x39cd 012506 branch module_clear_unsniff_task_flag 
+:      012509 module_process_unsniff_not_accept:
+0x39ce 012510 branch module_clear_unsniff_task_flag 
+:      012513 module_process_le_conn:
+0x39cf 012514 call le_send_att_exchange_mtu_requset 
+0x39d0 012515 call module_conn_start 
+0x39d1 012516 fetch 1 ,mem_module_le_lpm_mult 
+0x39d2 012517 store 1 ,mem_lpm_mult 
+0x39d3 012518 branch module_hci_event_le_connect 
+:      012521 module_process_bb_conn:
+0x39d4 012522 jam 0 ,mem_flag_mode_ssp_pin 
+0x39d5 012523 call module_clear_sniff_task_flag 
+0x39d6 012524 branch module_clear_unsniff_task_flag 
+:      012526 module_process_page_time_out:
+:      012527 module_process_reconn_fail:
+:      012528 module_disconn_start:
+0x39d7 012529 call module_start_adv_discovery_by_command 
+0x39d8 012530 branch module_set_conn_pin_high 
+:      012533 module_process_ble_ltk_lost:
+0x39d9 012534 call le_send_reject_ind 
+0x39da 012535 branch le_send_smp_security_request 
+:      012538 module_set_conn_pin_high:
+0x39db 012539 fetcht 1 ,mem_module_connect_state_gpio 
+0x39dc 012540 branch gpio_out_active 
+:      012542 module_conn_start:
+0x39dd 012543 call module_stop_adv_discovery 
+0x39de 012544 branch module_set_conn_pin_low 
+:      012546 module_stop_adv_discovery:
+0x39df 012547 fetch 1 ,mem_module_state 
+0x39e0 012548 isolate1 moudle_state_bt_bit ,pdata 
+0x39e1 012549 call app_bt_stop_discovery ,true 
+0x39e2 012550 fetch 1 ,mem_module_state 
+0x39e3 012551 isolate1 moudle_state_ble_bit ,pdata 
+0x39e4 012552 call app_ble_stop_adv ,true 
+0x39e5 012553 rtn 
+:      012554 module_set_conn_pin_low:
+0x39e6 012555 fetcht 1 ,mem_module_connect_state_gpio 
+0x39e7 012556 branch gpio_out_inactive 
+:      012558 module_process_with_credit:
+0x39e8 012559 fetch 1 ,mem_credit_flag 
+0x39e9 012560 rtneq credit_disable 
+0x39ea 012561 branch rfcomm_send_uih_without_payload 
+:      012563 module_process:
+0x39eb 012564 hfetch 1 ,core_uart_status 
+0x39ec 012565 bbit1 uart_status_rx_fifo_empty ,module_process_with_credit 
+0x39ed 012566 call uartd_prepare_rx 
+0x39ee 012567 ifetch 1 ,contru 
+0x39ef 012568 bne 0x01 ,module_hci_in_excp 
+0x39f0 012569 hfetch 2 ,core_uart_rxitems 
+0x39f1 012570 sub pdata ,2 ,null 
+0x39f2 012571 rtn positive 
+0x39f3 012572 ifetch 1 ,contru 
+0x39f4 012573 store 1 ,mem_module_uart_opcode 
+0x39f5 012574 ifetcht 1 ,contru 
+0x39f6 012575 copy contru ,rega 
+0x39f7 012576 storet 1 ,mem_module_uart_len 
+0x39f8 012577 add temp ,3 ,temp 
+0x39f9 012578 hfetch 2 ,core_uart_rxitems 
+0x39fa 012579 isub temp ,temp 
+0x39fb 012580 nrtn positive 
+0x39fc 012581 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x39fd 012582 call module_hci_cmd_control 
+0x39fe 012583 fetch 1 ,mem_module_temp_nl_discard_packet 
+0x39ff 012584 rtneq hci_not_discard_packet 
+0x3a00 012585 branch module_hci_dicard_packet 
+:      012587 module_hci_in_excp:
+0x3a01 012588 call delay_10ms 
+0x3a02 012589 call module_hci_event_invalid_packet 
+0x3a03 012590 branch module_hci_release_except 
+:      012593 module_hci_release_except:
+0x3a04 012594 bpatch patch1b_7 ,mem_patch1b 
+0x3a05 012595 hfetch 2 ,core_uart_rxitems 
+0x3a06 012596 rtn blank 
+0x3a07 012597 call uartd_prepare_rx 
+0x3a08 012598 ifetch 1 ,contru 
+0x3a09 012599 sub pdata ,0x01 ,null 
+0x3a0a 012600 ncall module_hci_dicard_bytes ,zero 
+0x3a0b 012601 nbranch module_hci_release_except ,zero 
+0x3a0c 012602 ifetch 1 ,contru 
+0x3a0d 012603 rtneq hci_cmd_spp_data_req 
+0x3a0e 012604 rtneq hci_cmd_set_credit_given 
+0x3a0f 012605 increase -1 ,contru 
+0x3a10 012606 call module_hci_dicard_bytes 
+0x3a11 012607 branch module_hci_release_except 
+:      012609 module_hci_dicard_packet:
+0x3a12 012610 call uartd_prepare_rx 
+0x3a13 012611 increase 2 ,contru 
+0x3a14 012612 ifetch 1 ,contru 
+0x3a15 012613 iadd contru ,contru 
+:      012614 module_hci_dicard_bytes:
+0x3a16 012615 branch uartd_rxdone 
+:      012618 module_hci_cmd_control:
+0x3a17 012619 bpatch patch1c_0 ,mem_patch1c 
+0x3a18 012620 fetch 1 ,mem_module_uart_opcode 
+0x3a19 012621 beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
+0x3a1a 012622 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
+0x3a1b 012623 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
+0x3a1c 012624 beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
+0x3a1d 012625 beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
+0x3a1e 012626 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
+0x3a1f 012627 beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
+0x3a20 012628 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
+0x3a21 012629 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
+0x3a22 012630 beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
+0x3a23 012631 beq hci_cmd_set_uartcontrol_req ,module_hci_cmd_set_uart_control_mode 
+0x3a24 012632 beq hci_cmd_set_uart_baud_req ,module_hci_cmd_set_uart_baud 
+0x3a25 012633 beq hci_cmd_version_req ,module_hci_cmd_version_request 
+0x3a26 012634 beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
+0x3a27 012635 beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
+0x3a28 012636 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
+0x3a29 012637 beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
+0x3a2a 012638 beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
+0x3a2b 012639 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
+0x3a2c 012640 beq hci_cmd_power_req ,module_hci_cmd_power_request 
+0x3a2d 012641 beq hci_cmd_power_set ,module_hci_cmd_power_set 
+0x3a2e 012642 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
+0x3a2f 012643 beq hci_cmd_set_gpio ,module_hci_cmd_set_gpio 
+0x3a30 012644 beq hci_cmd_read_gpio ,module_hci_cmd_read_gpio 
+0x3a31 012645 beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
+0x3a32 012646 beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
+0x3a33 012647 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
+0x3a34 012648 beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
+0x3a35 012649 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
+0x3a36 012650 beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
+0x3a37 012651 beq hci_cmd_set_wake_gpio ,module_hci_cmd_set_wake_gpio 
+0x3a38 012652 beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
+0x3a39 012653 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
+0x3a3a 012654 beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
+0x3a3b 012655 beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
+0x3a3c 012656 beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
+0x3a3d 012657 beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
+0x3a3e 012658 branch module_hci_event_receive_invalid_cmd 
+:      012663 module_hci_cmd_set_bt_addr:
+0x3a3f 012664 fetch 1 ,mem_module_uart_len 
+0x3a40 012665 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a41 012666 ifetch 6 ,contru 
+0x3a42 012667 store 6 ,mem_lap 
+0x3a43 012668 branch module_hci_event_receive_valid_cmd 
+:      012671 module_hci_cmd_set_le_addr:
+0x3a44 012672 fetch 1 ,mem_module_uart_len 
+0x3a45 012673 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a46 012674 ifetch 6 ,contru 
+0x3a47 012675 store 6 ,mem_le_lap 
+0x3a48 012676 branch module_hci_event_receive_valid_cmd 
+:      012680 module_hci_cmd_set_visibility:
+0x3a49 012681 fetch 1 ,mem_module_uart_len 
+0x3a4a 012682 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3a4b 012683 copy rega ,contru 
+0x3a4c 012684 call module_hci_event_receive_valid_cmd 
+0x3a4d 012685 ifetcht 1 ,contru 
+0x3a4e 012686 storet 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a4f 012687 fetch 2 ,mem_ui_state_map 
+0x3a50 012688 rtnbit1 ui_state_ble_connected 
+0x3a51 012689 rtnbit1 ui_state_bt_connected 
+:      012690 module_start_adv_discovery_by_command:
+0x3a52 012691 fetch 1 ,mem_module_state 
+0x3a53 012692 isolate1 moudle_state_bt_bit ,pdata 
+0x3a54 012693 nbranch moudle_start_adv_by_command ,true 
+0x3a55 012694 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a56 012695 and temp ,0x03 ,pdata 
+0x3a57 012696 store 1 ,mem_scan_mode 
+:      012697 moudle_start_adv_by_command:
+0x3a58 012698 fetch 1 ,mem_module_state 
+0x3a59 012699 isolate1 moudle_state_ble_bit ,pdata 
+0x3a5a 012700 nrtn true 
+0x3a5b 012701 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a5c 012702 isolate1 2 ,temp 
+0x3a5d 012703 branch app_ble_start_adv ,true 
+0x3a5e 012704 branch app_ble_stop_adv 
+:      012708 module_hci_cmd_set_bt_name:
+0x3a5f 012709 fetch 1 ,mem_module_uart_len 
+0x3a60 012710 sub pdata ,67 ,null 
+0x3a61 012711 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a62 012712 store 1 ,mem_local_name_length 
+0x3a63 012713 arg 8 ,loopcnt 
+0x3a64 012714 call memset0 
+0x3a65 012715 fetch 1 ,mem_module_uart_len 
+0x3a66 012716 copy pdata ,loopcnt 
+0x3a67 012717 copy rega ,contru 
+0x3a68 012718 arg mem_local_name ,contw 
+0x3a69 012719 call uart_copy_rx_bytes_fast 
+0x3a6a 012720 branch module_hci_event_receive_valid_cmd 
+:      012724 module_hci_cmd_set_le_name:
+0x3a6b 012725 fetch 1 ,mem_module_uart_len 
+0x3a6c 012726 sub pdata ,29 ,null 
+0x3a6d 012727 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a6e 012728 store 1 ,mem_le_name_len 
+0x3a6f 012729 copy pdata ,loopcnt 
+0x3a70 012730 copy rega ,contru 
+0x3a71 012731 arg mem_le_name ,contw 
+0x3a72 012732 call uart_copy_rx_bytes_fast 
+0x3a73 012733 call le_modified_name 
+0x3a74 012734 branch module_hci_event_receive_valid_cmd 
+:      012738 module_hci_cmd_receive_spp_data:
+0x3a75 012739 fetch 1 ,mem_ui_state_map 
+0x3a76 012740 bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
+0x3a77 012741 call app_check_sniff 
+0x3a78 012742 branch module_hci_cmd_spp_exit_sniff ,true 
+0x3a79 012743 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a7a 012745 call module_spp_clear_last_transmite_clock 
+0x3a7b 012746 fetch 1 ,mem_remote_credits 
+0x3a7c 012747 rtn blank 
+0x3a7d 012748 fetch 2 ,mem_nl_rx_len_all 
+0x3a7e 012749 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
+0x3a7f 012750 fetch 1 ,mem_module_uart_len 
+0x3a80 012751 store 2 ,mem_nl_rx_len_all 
+0x3a81 012753 copy rega ,contru 
+0x3a82 012756 copy contru ,pdata 
+0x3a83 012757 store 2 ,mem_nl_rx_data_src 
+:      012758 module_hci_cmd_pass_init_ng_rx_len_all:
+0x3a84 012759 call module_hci_cmd_get_current_packet_len_and_remain_len 
+0x3a85 012760 branch spp_tx_rfcomm_packet 
+:      012762 module_hci_cmd_spp_exit_sniff:
+0x3a86 012763 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a87 012764 branch module_exit_sniff 
+:      012766 module_hci_cmd_get_current_packet_len_and_remain_len:
+0x3a88 012767 call module_hci_cmd_get_current_patcket_len 
+0x3a89 012768 fetch 2 ,mem_nl_rx_len_all 
+0x3a8a 012769 fetcht 2 ,mem_current_packet_length 
+0x3a8b 012770 isub temp ,pdata 
+0x3a8c 012771 store 2 ,mem_nl_rx_len_all 
+0x3a8d 012772 rtn 
+:      012774 module_hci_cmd_get_current_patcket_len:
+0x3a8e 012775 fetch 2 ,mem_nl_rx_len_all 
+0x3a8f 012776 arg dm_refcom_buff_len ,temp 
+0x3a90 012777 call not_greater_than 
+0x3a91 012778 fetcht 2 ,mem_rfcomm_max_frame_size 
+0x3a92 012779 call not_greater_than 
+0x3a93 012780 fetcht 2 ,mem_pn_max_frame_size 
+0x3a94 012781 call not_greater_than 
+0x3a95 012782 store 2 ,mem_current_packet_length 
+0x3a96 012783 rtn 
+:      012785 module_hci_command_tx_spp_tx_complete:
+0x3a97 012786 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a98 012787 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
+0x3a99 012788 branch module_hci_event_receive_valid_cmd 
+:      012792 module_hci_cmd_receive_le_data:
+0x3a9a 012793 fetch 2 ,mem_ui_state_map 
+0x3a9b 012794 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3a9c 012795 call module_check_ble_encrypt_state 
+0x3a9d 012796 branch module_hci_event_receive_invalid_cmd ,user 
+0x3a9e 012797 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a9f 012798 fetch 1 ,mem_module_flag 
+0x3aa0 012799 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
+0x3aa1 012800 fetch 1 ,mem_module_hci_notify_len 
+0x3aa2 012801 nrtn blank 
+0x3aa3 012802 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aa4 012803 ifetch 2 ,contru 
+0x3aa5 012804 store 2 ,mem_module_hci_notify_handle 
+0x3aa6 012805 copy contru ,pdata 
+0x3aa7 012806 store 2 ,mem_module_hci_nofiy_addr 
+0x3aa8 012807 fetch 1 ,mem_module_uart_len 
+0x3aa9 012808 pincrease -2 
+0x3aaa 012809 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aab 012810 branch module_hci_event_receive_invalid_cmd ,zero 
+0x3aac 012811 store 1 ,mem_module_hci_notify_len 
+0x3aad 012812 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aae 012813 call le_set_config_more_data 
+0x3aaf 012814 call module_hci_cmd_transmit_le_notify 
+0x3ab0 012815 call module_hci_cmd_transmit_le_notify 
+0x3ab1 012816 call module_hci_cmd_transmit_le_notify 
+0x3ab2 012817 fetch 1 ,mem_module_flag 
+0x3ab3 012818 rtnbit0 module_flag_ble_data_finish 
+:      012819 module_hci_cmd_receive_le_data_finish:
+0x3ab4 012820 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3ab5 012821 call module_clear_le_tx_data_flag 
+0x3ab6 012822 branch module_hci_event_receive_valid_cmd 
+:      012824 module_hci_cmd_transmit_le_notify:
+0x3ab7 012825 fetch 1 ,mem_module_hci_notify_len 
+0x3ab8 012826 rtn blank 
+0x3ab9 012827 call le_fifo_check_nearly_full 
+0x3aba 012828 nrtn blank 
+0x3abb 012829 call module_get_le_remote_mtu 
+0x3abc 012830 bpatch patch1c_1 ,mem_patch1c 
+0x3abd 012831 add temp ,-3 ,pdata 
+0x3abe 012832 fetcht 1 ,mem_module_hci_notify_len 
+0x3abf 012833 call not_greater_than 
+0x3ac0 012834 copy pdata ,rega 
+0x3ac1 012835 copy temp ,pdata 
+0x3ac2 012836 isub rega ,pdata 
+0x3ac3 012837 store 1 ,mem_module_hci_notify_len 
+0x3ac4 012838 fetcht 2 ,mem_module_hci_notify_handle 
+0x3ac5 012839 call le_att_malloc_tx_notify 
+0x3ac6 012840 fetch 2 ,mem_module_hci_nofiy_addr 
+0x3ac7 012841 copy pdata ,contru 
+0x3ac8 012842 copy rega ,loopcnt 
+0x3ac9 012843 call uart_copy_rx_bytes_fast 
+0x3aca 012844 copy contru ,pdata 
+0x3acb 012845 store 2 ,mem_module_hci_nofiy_addr 
+0x3acc 012846 fetch 1 ,mem_module_hci_notify_len 
+0x3acd 012847 nrtn blank 
+0x3ace 012848 branch module_set_le_tx_data_flag 
+:      012852 module_get_le_remote_mtu:
+0x3acf 012853 arg 0x17 ,temp 
+0x3ad0 012854 fetch 1 ,mem_module_flag 
+0x3ad1 012855 rtnbit1 module_flag_ble_send_mtu23 
+0x3ad2 012856 fetcht 2 ,mem_le_remote_mtu 
+0x3ad3 012857 rtn 
+:      012859 module_check_ble_encrypt_state:
+0x3ad4 012860 fetch 1 ,mem_module_flag 
+0x3ad5 012861 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
+0x3ad6 012862 branch disable_user 
+:      012866 module_hci_cmd_inquire_status:
+0x3ad7 012867 branch module_hci_event_status_res 
+:      012871 module_hci_cmd_set_pairing_mode:
+0x3ad8 012872 copy rega ,contru 
+0x3ad9 012873 ifetch 1 ,contru 
+0x3ada 012874 beq pairing_pincode ,module_hci_pairing_pincode_mode 
+0x3adb 012875 beq pairing_justwork ,module_hci_pairing_just_work_mode 
+0x3adc 012876 beq pairing_passkey ,module_hci_pairing_passkey 
+0x3add 012877 beq pairing_confirm ,module_hci_pairing_numeric_comparison 
+0x3ade 012878 branch module_hci_event_receive_invalid_cmd 
+:      012879 module_hci_pairing_pincode_mode:
+0x3adf 012880 call ssp_disable 
+0x3ae0 012881 jam 0 ,mem_ssp_enable 
+0x3ae1 012882 branch module_hci_event_receive_valid_cmd 
+:      012883 module_hci_pairing_just_work_mode:
+0x3ae2 012884 setarg ssp_mode_just_work_io_cap_data 
+:      012885 module_hci_sspairing_mode:
+0x3ae3 012886 store 3 ,mem_sp_iocap_local 
+0x3ae4 012887 store 1 ,mem_ssp_mode_flag 
+0x3ae5 012888 call ssp_enable 
+0x3ae6 012889 jam 1 ,mem_ssp_enable 
+0x3ae7 012890 branch module_hci_event_receive_valid_cmd 
+:      012891 module_hci_pairing_passkey:
+0x3ae8 012892 setarg ssp_mode_passkey_io_cap_data 
+0x3ae9 012893 branch module_hci_sspairing_mode 
+:      012895 module_hci_pairing_numeric_comparison:
+0x3aea 012896 setarg ssp_mode_ssp_pin_io_cap_data 
+0x3aeb 012897 branch module_hci_sspairing_mode 
+:      012900 module_hci_cmd_set_pincode:
+0x3aec 012901 fetch 1 ,mem_module_uart_len 
+0x3aed 012902 sub pdata ,16 ,null 
+0x3aee 012903 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aef 012904 store 1 ,mem_pin_length 
+0x3af0 012905 copy pdata ,loopcnt 
+0x3af1 012906 arg mem_pin ,contw 
+0x3af2 012907 call uart_copy_rx_bytes 
+0x3af3 012908 branch module_hci_event_receive_valid_cmd 
+:      012912 module_hci_cmd_set_uart_control_mode:
+0x3af4 012913 copy rega ,contru 
+0x3af5 012914 ifetch 1 ,contru 
+0x3af6 012915 hfetcht 1 ,core_uart_ctrl 
+0x3af7 012916 nsetflag blank ,4 ,temp 
+0x3af8 012917 hstoret 1 ,core_uart_ctrl 
+0x3af9 012918 branch module_hci_event_receive_valid_cmd 
+:      012922 module_hci_cmd_set_uart_baud:
+0x3afa 012923 fetch 1 ,mem_module_uart_len 
+0x3afb 012924 copy pdata ,loopcnt 
+0x3afc 012925 copy rega ,contru 
+0x3afd 012926 call string2dec_from_uart 
+0x3afe 012927 setarg uart_clk_24 
+0x3aff 012928 idiv temp 
+0x3b00 012929 call wait_div_end 
+0x3b01 012930 quotient pdata 
+:      012931 module_hci_cmd_set_uart_baud_ok:
+0x3b02 012932 store uart_baud_len ,mem_baud 
+0x3b03 012933 call module_hci_event_receive_valid_cmd 
+0x3b04 012934 call wait_uarttx 
+0x3b05 012935 branch uart_set_baud_by_mem 
+:      012939 module_hci_cmd_version_request:
+0x3b06 012940 arg 2 ,rega 
+0x3b07 012941 arg mem_soft_version_num ,regb 
+0x3b08 012942 arg 0 ,temp 
+0x3b09 012943 branch module_hci_event_set_cmd 
+:      012944 module_hci_event_set_cmd_send_response:
+0x3b0a 012945 store 2 ,mem_event_cmd_response_content 
+0x3b0b 012946 arg mem_event_cmd_response_content ,regb 
+0x3b0c 012947 arg 0 ,temp 
+0x3b0d 012948 branch module_hci_event_set_cmd 
+:      012952 module_hci_cmd_bt_disconnect:
+0x3b0e 012953 fetch 2 ,mem_ui_state_map 
+0x3b0f 012954 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+:      012955 module_hci_cmd_bt_disconnect_doing:
+0x3b10 012956 call module_hci_event_receive_valid_cmd 
+0x3b11 012957 branch app_bt_disconnect 
+:      012961 module_hci_cmd_ble_disconnect:
+0x3b12 012962 fetch 2 ,mem_ui_state_map 
+0x3b13 012963 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+:      012964 module_hci_cmd_ble_disconnect_doing:
+0x3b14 012965 call module_hci_event_receive_valid_cmd 
+0x3b15 012966 branch app_ble_disconnect 
+:      012972 module_hci_cmd_set_nvram:
+0x3b16 012973 fetch 1 ,mem_module_uart_len 
+0x3b17 012974 copy pdata ,loopcnt 
+0x3b18 012975 copy rega ,contru 
+0x3b19 012976 fetch 2 ,mem_nv_data_ptr 
+0x3b1a 012977 icopy contw 
+0x3b1b 012978 call uart_copy_rx_bytes_fast 
+0x3b1c 012979 branch module_hci_event_receive_valid_cmd 
+:      012983 module_hci_cmd_confirm_gkey:
+0x3b1d 012984 fetch 1 ,mem_ui_state_map 
+0x3b1e 012985 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+0x3b1f 012986 ifetch 1 ,contru 
+0x3b20 012987 fetcht 1 ,mem_flag_mode_ssp_pin 
+0x3b21 012988 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
+0x3b22 012989 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
+0x3b23 012990 storet 1 ,mem_flag_mode_ssp_pin 
+0x3b24 012992 call module_hci_event_receive_valid_cmd 
+0x3b25 012994 fetch 1 ,mem_flag_mode_ssp_pin 
+0x3b26 012995 bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
+0x3b27 012996 rtn 
+:      012998 dhkey_not_accept:
+0x3b28 012999 jam 0 ,mem_flag_mode_ssp_pin 
+0x3b29 013000 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
+0x3b2a 013001 branch ui_ipc_send_cmd 
+:      013004 module_hci_cmd_spp_number_comparison_result_is1:
+0x3b2b 013005 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x3b2c 013006 branch dhkey_not_accept 
+:      013010 module_hci_cmd_set_credit_given:
+0x3b2d 013011 fetch 1 ,mem_ui_state_map 
+0x3b2e 013012 rtnbit0 ui_state_bt_spp_conn 
+0x3b2f 013013 fetch 1 ,mem_credit_flag 
+0x3b30 013014 rtneq credit_disable 
+0x3b31 013015 ifetch 1 ,contru 
+0x3b32 013016 fetcht 1 ,mem_credit_given 
+0x3b33 013017 iadd temp ,temp 
+0x3b34 013018 storet 1 ,mem_credit_given 
+0x3b35 013019 rtn 
+:      013023 module_hci_cmd_auto_adv:
+0x3b36 013024 arg 0x40 ,loopcnt 
+0x3b37 013025 arg mem_le_adv_data_len ,contw 
+0x3b38 013026 call clear_mem 
+0x3b39 013027 setarg 0 
+0x3b3a 013028 store 1 ,mem_regb 
+0x3b3b 013029 copy rega ,contru 
+:      013030 module_hci_cmd_auto_adv_loop:
+0x3b3c 013031 copy contru ,pdata 
+0x3b3d 013032 store 2 ,mem_regc 
+0x3b3e 013033 call module_hci_cmd_auto_adv_adv_analys 
+0x3b3f 013035 fetch 1 ,mem_regb 
+0x3b40 013036 fetcht 1 ,mem_temp 
+0x3b41 013037 increase 1 ,temp 
+0x3b42 013038 iadd temp ,pdata 
+0x3b43 013039 store 1 ,mem_regb 
+0x3b44 013041 sub pdata ,31 ,null 
+0x3b45 013042 nbranch module_hci_cmd_auto_adv_store_scan ,positive 
+:      013043 module_hci_cmd_auto_adv_store_adv:
+0x3b46 013044 fetcht 1 ,mem_le_adv_data_len 
+0x3b47 013045 setarg mem_le_adv_data 
+0x3b48 013046 iadd temp ,pdata 
+0x3b49 013047 store 2 ,mem_contw 
+0x3b4a 013048 fetcht 1 ,mem_temp 
+0x3b4b 013049 increase 1 ,temp 
+0x3b4c 013050 fetch 1 ,mem_le_adv_data_len 
+0x3b4d 013051 iadd temp ,pdata 
+0x3b4e 013052 store 1 ,mem_le_adv_data_len 
+0x3b4f 013053 branch module_hci_cmd_auto_adv_store_common 
+:      013054 module_hci_cmd_auto_adv_store_scan:
+0x3b50 013055 fetcht 1 ,mem_le_scan_data_len 
+0x3b51 013056 setarg mem_le_scan_data 
+0x3b52 013057 iadd temp ,pdata 
+0x3b53 013058 store 2 ,mem_contw 
+0x3b54 013059 fetcht 1 ,mem_temp 
+0x3b55 013060 increase 1 ,temp 
+0x3b56 013061 fetch 1 ,mem_le_scan_data_len 
+0x3b57 013062 iadd temp ,pdata 
+0x3b58 013063 store 1 ,mem_le_scan_data_len 
+:      013064 module_hci_cmd_auto_adv_store_common:
+0x3b59 013065 fetch 2 ,mem_contw 
+0x3b5a 013066 copy pdata ,contw 
+0x3b5b 013067 fetch 2 ,mem_regc 
+0x3b5c 013068 copy pdata ,contru 
+0x3b5d 013070 copy temp ,loopcnt 
+0x3b5e 013071 call uart_copy_rx_bytes_fast 
+0x3b5f 013073 fetch 1 ,mem_module_uart_len 
+0x3b60 013074 fetcht 1 ,mem_regb 
+0x3b61 013075 isub temp ,null 
+0x3b62 013076 nbranch module_hci_cmd_auto_adv_loop ,zero 
+0x3b63 013077 branch module_hci_event_receive_valid_cmd 
+:      013080 module_hci_cmd_auto_adv_adv_analys:
+0x3b64 013081 ifetch 1 ,contru 
+0x3b65 013082 store 1 ,mem_temp 
+0x3b66 013083 ifetch 1 ,contru 
+0x3b67 013084 store 1 ,mem_rega 
+0x3b68 013085 rtn 
+:      013089 module_hci_cmd_power_request:
+0x3b69 013090 arg 0 ,temp 
+0x3b6a 013091 arg 2 ,rega 
+0x3b6b 013092 fetch 2 ,mem_module_vdd_quotient 
+0x3b6c 013093 store 2 ,mem_event_cmd_response_content 
+0x3b6d 013094 arg mem_event_cmd_response_content ,regb 
+0x3b6e 013095 branch module_hci_event_set_cmd 
+:      013099 module_hci_cmd_power_set:
+0x3b6f 013100 fetch 1 ,mem_module_uart_len 
+0x3b70 013101 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b71 013102 ifetch 1 ,contru 
+0x3b72 013103 store 1 ,mem_module_read_vdd_flag 
+0x3b73 013104 setarg 0x00 
+0x3b74 013105 store 2 ,mem_module_vdd_quotient 
+0x3b75 013106 branch module_hci_event_receive_valid_cmd 
+:      013110 module_hci_cmd_passkey_entry:
+0x3b76 013111 ifetch 4 ,contru 
+0x3b77 013112 store 4 ,mem_pin 
+0x3b78 013113 jam 4 ,mem_pin_length 
+0x3b79 013114 jam 0 ,mem_authentication_passkey_times 
+0x3b7a 013115 call module_hci_event_receive_valid_cmd 
+0x3b7b 013116 branch authentication_passkey 
+:      013120 module_hci_cmd_set_gpio:
+0x3b7c 013121 fetch 1 ,mem_module_uart_len 
+0x3b7d 013122 bne 3 ,module_hci_event_receive_invalid_cmd 
+0x3b7e 013123 ifetch 1 ,contru 
+0x3b7f 013124 beq hci_cmd_config_gpio_input ,module_set_gpio_input 
+0x3b80 013125 beq hci_cmd_config_gpio_output ,module_set_gpio_output 
+0x3b81 013126 branch module_hci_event_receive_invalid_cmd 
+:      013128 module_set_gpio_input:
+0x3b82 013129 ifetcht 1 ,contru 
+0x3b83 013130 ifetch 1 ,contru 
+0x3b84 013131 beq gpio_input_high_impedance ,module_set_gpio_high_impedance 
+0x3b85 013132 nsetflag blank ,7 ,temp 
+0x3b86 013133 call gpio_config_input 
+0x3b87 013134 branch module_hci_event_receive_valid_cmd 
+:      013136 module_set_gpio_high_impedance:
+0x3b88 013137 call gpio_set_high_impedance 
+0x3b89 013138 branch module_hci_event_receive_valid_cmd 
+:      013140 module_set_gpio_output:
+0x3b8a 013141 ifetcht 1 ,contru 
+0x3b8b 013142 call gpio_config_output0 
+0x3b8c 013143 ifetch 1 ,contru 
+0x3b8d 013144 isolate1 0 ,pdata 
+0x3b8e 013145 call gpio_out_flag 
+0x3b8f 013146 branch module_hci_event_receive_valid_cmd 
+:      013150 module_hci_cmd_read_gpio:
+0x3b90 013151 fetch 1 ,mem_module_uart_len 
+0x3b91 013152 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b92 013153 ifetcht 1 ,contru 
+0x3b93 013154 call gpio_get_bit 
+0x3b94 013155 setarg 0x0 
+0x3b95 013156 nsetflag true ,0 ,pdata 
+0x3b96 013157 arg 1 ,rega 
+0x3b97 013158 branch module_hci_event_set_cmd_send_response 
+:      013162 module_hci_cmd_le_set_pairing_mode:
+0x3b98 013163 copy rega ,contru 
+0x3b99 013164 ifetch 1 ,contru 
+0x3b9a 013165 copy pdata ,temp 
+0x3b9b 013166 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
+0x3b9c 013167 beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
+0x3b9d 013168 beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
+0x3b9e 013169 store 1 ,mem_le_pairing_mode 
+0x3b9f 013170 beq le_pairing_mode_none ,module_le_set_no_pairing 
+0x3ba0 013171 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
+0x3ba1 013172 beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
+0x3ba2 013173 branch module_hci_event_receive_invalid_cmd 
+:      013175 module_le_set_pairing_mode_secure_justwork:
+0x3ba3 013176 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba4 013177 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3ba5 013178 storet 1 ,mem_le_pairing_mode 
+0x3ba6 013179 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3ba7 013180 branch module_le_set_noinputnooutput 
+:      013181 module_le_set_pairing_mode_secure_numeric:
+0x3ba8 013182 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba9 013183 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3baa 013184 storet 1 ,mem_le_pairing_mode 
+0x3bab 013185 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bac 013186 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x3bad 013187 branch module_hci_event_receive_valid_cmd 
+:      013188 module_le_set_pairing_mode_secure_passkey:
+0x3bae 013189 fetch 1 ,mem_le_secure_connect_enable 
+0x3baf 013190 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bb0 013191 storet 1 ,mem_le_pairing_mode 
+0x3bb1 013192 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bb2 013193 branch module_le_set_displayonly 
+:      013194 module_le_set_no_pairing:
+0x3bb3 013195 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      013196 module_le_set_noinputnooutput:
+0x3bb4 013197 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x3bb5 013198 branch module_hci_event_receive_valid_cmd 
+:      013199 module_le_set_pairing_mode_lagacy_just_work:
+0x3bb6 013200 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x3bb7 013201 branch module_le_set_noinputnooutput 
+:      013202 module_le_set_pairing_mode_lagacy_passkey:
+0x3bb8 013203 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      013204 module_le_set_displayonly:
+0x3bb9 013205 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x3bba 013206 branch module_hci_event_receive_valid_cmd 
+:      013210 module_hci_cmd_le_set_adv_data:
+0x3bbb 013211 fetch 1 ,mem_module_uart_len 
+0x3bbc 013212 sub pdata ,31 ,null 
+0x3bbd 013213 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bbe 013214 store 1 ,mem_le_adv_data_len 
+0x3bbf 013215 copy pdata ,loopcnt 
+0x3bc0 013216 copy rega ,contru 
+0x3bc1 013217 arg mem_le_adv_data ,contw 
+0x3bc2 013218 call uart_copy_rx_bytes_fast 
+0x3bc3 013219 branch module_hci_event_receive_valid_cmd 
+:      013223 module_hci_cmd_le_set_scan_data:
+0x3bc4 013224 fetch 1 ,mem_module_uart_len 
+0x3bc5 013225 sub pdata ,31 ,null 
+0x3bc6 013226 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bc7 013227 store 1 ,mem_le_scan_data_len 
+0x3bc8 013228 copy pdata ,loopcnt 
+0x3bc9 013229 copy rega ,contru 
+0x3bca 013230 arg mem_le_scan_data ,contw 
+0x3bcb 013231 call uart_copy_rx_bytes_fast 
+0x3bcc 013232 branch module_hci_event_receive_valid_cmd 
+:      013236 module_hci_cmd_le_send_conn_update_req:
+0x3bcd 013237 fetch 2 ,mem_ui_state_map 
+0x3bce 013238 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3bcf 013239 fetch 1 ,mem_module_uart_len 
+0x3bd0 013240 bne 0x08 ,module_hci_event_receive_invalid_cmd 
+0x3bd1 013241 copy rega ,contru 
+0x3bd2 013242 ifetch 8 ,contru 
+0x3bd3 013243 store 8 ,mem_le_interval_min 
+0x3bd4 013244 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3bd5 013245 call ui_ipc_send_cmd 
+0x3bd6 013246 branch module_hci_event_receive_valid_cmd 
+:      013250 module_hci_cmd_set_le_adv_parameter:
+0x3bd7 013251 ifetch 2 ,contru 
+0x3bd8 013252 store 2 ,mem_le_adv_interval 
+0x3bd9 013253 branch module_hci_event_receive_valid_cmd 
+:      013257 module_hci_cmd_le_start_pairing:
+0x3bda 013258 fetch 1 ,mem_le_pairing_mode 
+0x3bdb 013259 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bdc 013260 fetch 1 ,mem_le_pairing_state 
+0x3bdd 013261 bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
+0x3bde 013262 fetch 1 ,mem_le_enc_state 
+0x3bdf 013263 bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
+0x3be0 013264 call check_51cmd_le_smp_sec_req 
+0x3be1 013265 branch module_hci_event_receive_valid_cmd 
+:      013269 module_hci_cmd_set_wake_gpio:
+0x3be2 013270 fetch 1 ,mem_module_uart_len 
+0x3be3 013271 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3be4 013272 ifetch 1 ,contru 
+0x3be5 013273 store 1 ,mem_module_mcu_wake_pin 
+0x3be6 013274 ifetch 4 ,contru 
+0x3be7 013275 store 4 ,mem_module_mcu_wake_delay_us 
+0x3be8 013276 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3be9 013277 call gpio_config_output 
+0x3bea 013278 call module_set_mcu_wake_pin_low 
+0x3beb 013279 branch module_hci_event_receive_valid_cmd 
+:      013283 module_hci_cmd_set_tx_power:
+0x3bec 013284 fetch 1 ,mem_module_uart_len 
+0x3bed 013285 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bee 013286 ifetch 1 ,contru 
+0x3bef 013287 store 1 ,mem_tx_power 
+0x3bf0 013288 branch module_hci_event_receive_valid_cmd 
+:      013292 module_hci_cmd_le_confirm_gkey:
+0x3bf1 013293 ifetch 1 ,contru 
+0x3bf2 013294 beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
+0x3bf3 013295 fetch 1 ,mem_le_secure_connect_state 
+0x3bf4 013296 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf5 013297 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf6 013298 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf7 013299 branch module_hci_event_receive_invalid_cmd 
+:      013300 module_hci_cmd_le_confirm_gkey_ok:
+0x3bf8 013301 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
+0x3bf9 013302 branch module_hci_event_receive_valid_cmd 
+:      013304 module_hci_cmd_le_confirm_gkey_fail:
+0x3bfa 013305 call le_send_pairing_confirm_value_failed 
+0x3bfb 013306 branch module_hci_event_receive_valid_cmd 
+:      013310 module_hci_cmd_set_reject_justwork_flag:
+0x3bfc 013311 fetch 1 ,mem_module_uart_len 
+0x3bfd 013312 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bfe 013313 call module_hci_event_receive_valid_cmd 
+0x3bff 013314 ifetch 1 ,contru 
+0x3c00 013315 branch classic_bt_clr_reject_justwork_flag ,blank 
+0x3c01 013316 branch classic_bt_set_reject_justwork_flag 
+:      013320 module_hci_cmd_reset_chip:
+0x3c02 013321 call module_hci_event_receive_valid_cmd 
+0x3c03 013322 call wait_uarttx 
+0x3c04 013323 jam 0x01 ,core_reset 
+0x3c05 013324 branch loop 
+:      013328 module_hci_cmd_le_set_fixed_passkey:
+0x3c06 013329 fetch 1 ,mem_module_uart_len 
+0x3c07 013330 beq 0 ,module_hci_event_receive_invalid_cmd 
+0x3c08 013331 ifetch 1 ,contru 
+0x3c09 013332 branch module_hci_cmd_le_set_random_passkey ,blank 
+0x3c0a 013333 fetch 1 ,mem_module_uart_len 
+0x3c0b 013334 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3c0c 013335 ifetch 4 ,contru 
+0x3c0d 013336 arg 1000000 ,temp 
+0x3c0e 013337 isub temp ,null 
+0x3c0f 013338 branch module_hci_event_receive_invalid_cmd ,positive 
+0x3c10 013339 store 4 ,mem_le_tk 
+0x3c11 013340 call le_set_config_fixed_tk 
+0x3c12 013341 branch module_hci_event_receive_valid_cmd 
+:      013343 module_hci_cmd_le_set_random_passkey:
+0x3c13 013344 call le_clr_config_fixed_tk 
+0x3c14 013345 branch module_hci_event_receive_valid_cmd 
+:      013349 module_hci_test_cmde_close_lpm:
+0x3c15 013350 jam 0 ,mem_lpm_mode 
+0x3c16 013351 branch module_hci_event_receive_valid_cmd 
+:      013356 module_hci_event_receive_invalid_cmd:
+0x3c17 013357 arg 1 ,temp 
+0x3c18 013358 arg 0 ,rega 
+0x3c19 013359 branch module_hci_event_set_cmd 
+:      013362 module_hci_event_receive_valid_cmd:
+0x3c1a 013363 arg 0 ,temp 
+0x3c1b 013364 arg 0 ,rega 
+0x3c1c 013365 branch module_hci_event_set_cmd 
+:      013369 module_hci_event_spp_connect:
+0x3c1d 013370 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
+0x3c1e 013371 branch module_hci_event_enter_standby_mode_len0 
+:      013375 module_hci_event_le_connect:
+0x3c1f 013376 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
+0x3c20 013377 branch module_hci_event_enter_standby_mode_len0 
+:      013381 module_hci_event_spp_disconnect:
+0x3c21 013382 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
+0x3c22 013383 branch module_hci_event_enter_standby_mode_len0 
+:      013387 module_hci_event_le_disconnect:
+0x3c23 013388 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
+0x3c24 013389 branch module_hci_event_enter_standby_mode_len0 
+:      013397 module_hci_event_set_cmd:
+0x3c25 013398 fetch 1 ,mem_module_uart_opcode 
+0x3c26 013399 copy pdata ,regc 
+0x3c27 013400 jam hci_event_cmd_res ,mem_module_uart_opcode 
+0x3c28 013401 setarg 2 
+0x3c29 013402 iadd rega ,pdata 
+0x3c2a 013403 call module_hci_prepare_tx 
+0x3c2b 013404 copy regc ,pdata 
+0x3c2c 013405 istore 1 ,contwu 
+0x3c2d 013406 istoret 1 ,contwu 
+0x3c2e 013407 copy rega ,loopcnt 
+0x3c2f 013408 copy regb ,contr 
+0x3c30 013409 call uart_copy_tx_bytes 
+0x3c31 013410 branch uartd_send 
+:      013414 module_hci_event_receive_spp_data:
+0x3c32 013416 call module_spp_clear_last_transmite_clock 
+0x3c33 013417 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
+0x3c34 013418 fetch 1 ,mem_current_length 
+0x3c35 013419 rtn blank 
+0x3c36 013420 call module_hci_prepare_tx 
+0x3c37 013421 fetch 1 ,mem_current_length 
+0x3c38 013422 copy pdata ,loopcnt 
+0x3c39 013423 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x3c3a 013424 copy pdata ,contr 
+0x3c3b 013425 call uart_copy_tx_bytes_fast 
+0x3c3c 013426 branch uartd_send 
+:      013430 module_hci_event_receive_le_data:
+0x3c3d 013431 jam hci_event_le_data_rep ,mem_module_uart_opcode 
+0x3c3e 013432 fetch 1 ,mem_module_le_rx_data_len 
+0x3c3f 013433 icopy loopcnt 
+0x3c40 013434 increase 2 ,pdata 
+0x3c41 013435 call module_hci_prepare_tx 
+0x3c42 013436 fetch 2 ,mem_module_le_rx_data_handle 
+0x3c43 013437 istore 2 ,contwu 
+0x3c44 013438 fetch 2 ,mem_module_le_rx_data_address 
+0x3c45 013439 icopy contr 
+0x3c46 013440 call uart_copy_tx_bytes_fast 
+0x3c47 013441 branch uartd_send 
+:      013445 module_hci_event_enter_standby_mode:
+0x3c48 013446 jam hci_event_standby_rep ,mem_module_uart_opcode 
+:      013447 module_hci_event_enter_standby_mode_len0:
+0x3c49 013448 setarg 0 
+0x3c4a 013449 call module_hci_prepare_tx 
+0x3c4b 013450 branch uartd_send 
+:      013454 module_hci_event_status_res:
+0x3c4c 013455 jam hci_event_status_res ,mem_module_uart_opcode 
+0x3c4d 013456 setarg 1 
+0x3c4e 013457 call module_hci_prepare_tx 
+0x3c4f 013459 call module_hci_read_bt_status 
+0x3c50 013461 fetch 2 ,mem_ui_state_map 
+0x3c51 013462 arg ui_state_bt_hid_conn ,queue 
+0x3c52 013463 qisolate1 pdata 
+0x3c53 013464 setflag true ,3 ,temp 
+0x3c54 013466 arg ui_state_ble_connected ,queue 
+0x3c55 013467 qisolate1 pdata 
+0x3c56 013468 setflag true ,5 ,temp 
+0x3c57 013470 fetch 1 ,mem_ui_state_map 
+0x3c58 013471 arg ui_state_bt_spp_conn ,queue 
+0x3c59 013472 qisolate1 pdata 
+0x3c5a 013473 setflag true ,4 ,temp 
+0x3c5b 013475 istoret 1 ,contwu 
+0x3c5c 013476 branch uartd_send 
+:      013480 module_hci_read_bt_status:
+0x3c5d 013481 arg 0 ,temp 
+0x3c5e 013482 fetch 1 ,mem_scan_mode 
+0x3c5f 013483 arg inq_scan_mode ,queue 
+0x3c60 013484 qisolate1 pdata 
+0x3c61 013485 setflag true ,0 ,temp 
+0x3c62 013486 arg page_scan_mode ,queue 
+0x3c63 013487 qisolate1 pdata 
+0x3c64 013488 setflag true ,1 ,temp 
+0x3c65 013490 fetch 1 ,mem_le_adv_enable 
+0x3c66 013491 arg 0 ,queue 
+0x3c67 013492 qisolate1 pdata 
+0x3c68 013493 setflag true ,2 ,temp 
+0x3c69 013494 rtn 
+:      013498 module_hci_event_store_device:
+0x3c6a 013499 jam hci_event_nvram_rep ,mem_module_uart_opcode 
+0x3c6b 013500 fetch 1 ,mem_nv_data_number 
+0x3c6c 013501 mul32 pdata ,34 ,pdata 
+0x3c6d 013502 icopy loopcnt 
+0x3c6e 013503 call module_hci_prepare_tx 
+0x3c6f 013504 fetch 2 ,mem_nv_data_ptr 
+0x3c70 013505 icopy contr 
+0x3c71 013506 call uart_copy_tx_bytes_fast 
+0x3c72 013507 branch uartd_send 
+:      013511 module_hci_event_gkey_generate:
+0x3c73 013512 jam hci_event_gkey ,mem_module_uart_opcode 
+0x3c74 013513 setarg 4 
+0x3c75 013514 call module_hci_prepare_tx 
+0x3c76 013515 fetch 4 ,mem_gkey 
+0x3c77 013516 istore 4 ,contwu 
+0x3c78 013517 branch uartd_send 
+:      013521 module_hci_event_invalid_packet:
+0x3c79 013522 jam hci_event_invalid_packet ,mem_module_uart_opcode 
+0x3c7a 013523 hfetch 2 ,core_uart_rxitems 
+0x3c7b 013524 arg 0xff ,temp 
+0x3c7c 013525 call not_greater_than 
+0x3c7d 013526 copy pdata ,loopcnt 
+0x3c7e 013527 call module_hci_prepare_tx 
+0x3c7f 013528 call uartd_prepare_rx 
+0x3c80 013529 call uart_copy_rx2tx 
+0x3c81 013530 branch uartd_send 
+:      013534 module_hci_event_passkey_entry_mode:
+0x3c82 013535 jam hci_event_get_passkey ,mem_module_uart_opcode 
+0x3c83 013536 branch module_hci_event_enter_standby_mode_len0 
+:      013540 module_hci_event_le_tk:
+0x3c84 013541 jam hci_event_le_tk ,mem_module_uart_opcode 
+0x3c85 013542 setarg 4 
+0x3c86 013543 call module_hci_prepare_tx 
+0x3c87 013544 fetch 4 ,mem_le_tk 
+0x3c88 013545 istore 4 ,contwu 
+0x3c89 013546 branch uartd_send 
+:      013550 module_hci_event_le_pairing_fail:
+0x3c8a 013551 arg flag_ble_pairing_fail ,rega 
+0x3c8b 013552 branch module_hci_event_pairing_completed 
+:      013554 module_hci_event_le_pairing_success:
+0x3c8c 013555 arg flag_ble_pairing_success ,rega 
+0x3c8d 013556 branch module_hci_event_pairing_completed 
+:      013558 module_hci_event_bt_pairing_fail:
+0x3c8e 013559 arg flag_bt_pairing_fail ,rega 
+0x3c8f 013560 branch module_hci_event_pairing_completed 
+:      013562 module_hci_event_bt_pairing_success:
+0x3c90 013563 arg flag_bt_pairing_success ,rega 
+:      013565 module_hci_event_pairing_completed:
+0x3c91 013566 jam 0 ,mem_flag_mode_ssp_pin 
+0x3c92 013567 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
+0x3c93 013568 setarg 2 
+0x3c94 013569 call module_hci_prepare_tx 
+0x3c95 013570 copy rega ,pdata 
+0x3c96 013571 istore 2 ,contwu 
+0x3c97 013572 branch uartd_send 
+:      013576 module_hci_event_pause_enc:
+0x3c98 013577 arg flag_event_pause_enc ,regc 
+0x3c99 013578 branch module_hci_event_enc 
+:      013580 module_hci_event_start_enc:
+0x3c9a 013581 arg flag_event_start_enc ,regc 
+:      013583 module_hci_event_enc:
+0x3c9b 013584 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
+0x3c9c 013585 setarg 1 
+0x3c9d 013586 call module_hci_prepare_tx 
+0x3c9e 013587 copy regc ,pdata 
+0x3c9f 013588 istore 1 ,contwu 
+0x3ca0 013589 branch uartd_send 
+:      013593 module_hci_event_le_gkey:
+0x3ca1 013594 jam hci_event_le_gkey ,mem_module_uart_opcode 
+0x3ca2 013595 setarg 4 
+0x3ca3 013596 call module_hci_prepare_tx 
+0x3ca4 013597 fetch 4 ,mem_gkey 
+0x3ca5 013598 istore 4 ,contwu 
+0x3ca6 013599 branch uartd_send 
+:      013610 module_hci_prepare_tx:
+0x3ca7 013611 jam 0x02 ,mem_module_uart_cmd 
+0x3ca8 013612 store 1 ,mem_module_uart_len 
+0x3ca9 013613 storet 8 ,mem_temp 
+0x3caa 013614 bpatch patch1c_2 ,mem_patch1c 
+0x3cab 013615 call module_set_mcu_wake_pin_high_delay 
+0x3cac 013616 fetcht 8 ,mem_temp 
+0x3cad 013617 call uartd_prepare_tx 
+0x3cae 013618 fetch 3 ,mem_module_uart_cmd 
+0x3caf 013619 istore 3 ,contwu 
+0x3cb0 013620 rtn 
+:      013623 module_set_mcu_wake_pin_high_delay:
+0x3cb1 013624 call module_check_mcu_wake_pin_high 
+0x3cb2 013625 rtn true 
+:      013626 module_set_mcu_wake_pin_h_delay:
+0x3cb3 013627 call module_set_mcu_wake_pin_high 
+0x3cb4 013628 fetch 4 ,mem_module_mcu_wake_delay_us 
+0x3cb5 013629 rshift2 pdata ,pdata 
+0x3cb6 013630 rtn blank 
+0x3cb7 013631 branch delay 
+:      013633 module_set_mcu_wake_pin_high:
+0x3cb8 013635 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cb9 013636 branch gpio_out_active 
+:      013638 module_check_mcu_wake_pin_high:
+0x3cba 013639 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbb 013640 branch gpio_check_active 
+:      013642 module_set_mcu_wake_pin_low:
+0x3cbc 013643 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbd 013644 branch gpio_out_inactive 
+:      013647 delay:
+0x3cbe 013648 increase -1 ,pdata 
+0x3cbf 013649 nop 38 
+0x3cc0 013650 nbranch delay ,blank 
+0x3cc1 013651 rtn 
+:      013660 module_le_receive_data:
+0x3cc2 013661 call module_check_ble_encrypt_state 
+0x3cc3 013662 rtn user 
+0x3cc4 013663 copy rega ,pdata 
+0x3cc5 013664 store 2 ,mem_module_le_rx_data_address 
+0x3cc6 013665 copy regb ,pdata 
+0x3cc7 013666 store 1 ,mem_module_le_rx_data_len 
+0x3cc8 013667 fetch 2 ,mem_le_att_handle 
+0x3cc9 013668 fetcht 2 ,mem_module_data_write_handle 
+0x3cca 013669 isub temp ,null 
+0x3ccb 013670 branch module_le_receive_data_ok ,zero 
+0x3ccc 013671 fetcht 2 ,mem_module_data_write_handle2 
+0x3ccd 013672 isub temp ,null 
+0x3cce 013673 nrtn zero 
+:      013674 module_le_receive_data_ok:
+0x3ccf 013675 store 2 ,mem_module_le_rx_data_handle 
+0x3cd0 013676 branch module_hci_event_receive_le_data 
+:      013681 module_exit_sniff:
+0x3cd1 013682 fetch 1 ,mem_module_flag 
+0x3cd2 013683 rtnbit1 moudle_task_unsniff 
+0x3cd3 013684 call module_set_unsniff_task_flag 
+0x3cd4 013685 branch app_bt_sniff_exit 
+:      013688 module_set_lpm_mult_2:
+0x3cd5 013689 jam 2 ,mem_lpm_mult 
+0x3cd6 013690 rtn 
+:      013694 module_bb_event_timer:
+0x3cd7 013695 branch module_read_vdd_timer 
+:      013697 module_read_vdd_timer:
+0x3cd8 013698 fetch 1 ,mem_module_read_vdd_flag 
+0x3cd9 013699 rtn blank 
+0x3cda 013700 fetch 1 ,mem_module_read_vdd_count 
+0x3cdb 013701 rtn blank 
+0x3cdc 013702 increase -1 ,pdata 
+0x3cdd 013703 store 1 ,mem_module_read_vdd_count 
+0x3cde 013704 nrtn blank 
+0x3cdf 013705 jam flag_module_read_vdd_count ,mem_module_read_vdd_count 
+0x3ce0 013706 call adc_set_mode 
+0x3ce1 013707 call vdd_calculate_by_mode 
+0x3ce2 013708 div pdata ,0x64 
+0x3ce3 013709 call wait_div_end 
+0x3ce4 013710 quotient pdata 
+0x3ce5 013711 remainder temp 
+0x3ce6 013712 store 1 ,mem_module_vdd_quotient 
+0x3ce7 013713 storet 1 ,mem_module_vdd_remainder 
+0x3ce8 013714 rtn 
+:      013717 module_control_air_flow:
+0x3ce9 013718 call check_uart_tx_buff 
+0x3cea 013719 branch app_l2cap_flow_control_enable ,positive 
+0x3ceb 013720 branch app_l2cap_flow_control_disable 
+:      013724 module_set_sniff_task_flag:
+0x3cec 013725 arg moudle_task_sniff ,queue 
+0x3ced 013726 branch module_set_state 
+:      013728 module_clear_sniff_task_flag:
+0x3cee 013729 arg moudle_task_sniff ,queue 
+0x3cef 013730 branch module_clr_state 
+:      013732 module_set_unsniff_task_flag:
+0x3cf0 013733 arg moudle_task_unsniff ,queue 
+0x3cf1 013734 branch module_set_state 
+:      013736 module_clear_unsniff_task_flag:
+0x3cf2 013737 arg moudle_task_unsniff ,queue 
+0x3cf3 013738 branch module_clr_state 
+:      013740 module_set_le_tx_data_flag:
+0x3cf4 013741 arg module_flag_ble_data_finish ,queue 
+0x3cf5 013742 branch module_set_state 
+:      013744 module_clear_le_tx_data_flag:
+0x3cf6 013745 arg module_flag_ble_data_finish ,queue 
+0x3cf7 013746 branch module_clr_state 
+:      013748 module_clr_state:
+0x3cf8 013749 fetch 1 ,mem_module_flag 
+0x3cf9 013750 qset0 pdata 
+0x3cfa 013751 store 1 ,mem_module_flag 
+0x3cfb 013752 rtn 
+:      013754 module_set_state:
+0x3cfc 013755 fetch 1 ,mem_module_flag 
+0x3cfd 013756 qset1 pdata 
+0x3cfe 013757 store 1 ,mem_module_flag 
+0x3cff 013758 rtn 
+:      013768 mouse_init:
+0x3d00 013769 call mouse_setting_config 
+0x3d01 013770 call spi_ncs_enable 
+0x3d02 013771 call mouse_init_sunt 
+0x3d03 013772 call mouse_dpi_config 
+0x3d04 013773 call spi_ncs_disable 
+0x3d05 013774 rtn wake 
+0x3d06 013775 call mouse_cheak_enable_usb 
+0x3d07 013776 call mouse_cb_fuction 
+0x3d08 013779 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d09 013780 rtnbit1 mouse_enable_usb 
+0x3d0a 013781 call mouse_wakeup_from_power 
+0x3d0b 013782 rtnmark1 mark_24g 
+0x3d0c 013783 fetch 2 ,mem_ui_state_map 
+0x3d0d 013784 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x3d0e 013785 branch mouse_check_reconn_target 
+:      013788 mouse_delay_4s:
+0x3d0f 013789 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d10 013790 rtnbit0 mouse_enable_init_delay 
+0x3d11 013791 arg 20 ,loopcnt 
+:      013792 mouse_delay_20ms:
+0x3d12 013793 setarg 200000 
+0x3d13 013794 call sleep 
+0x3d14 013795 loop delay_10ms 
+0x3d15 013796 rtn 
+:      013799 mouse_cheak_enable_usb:
+0x3d16 013800 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d17 013801 rtnbit0 mouse_enable_usb 
+0x3d18 013802 branch usb_init 
+:      013805 mouse_cb_fuction:
+0x3d19 013806 setarg mouse_le 
+0x3d1a 013807 store 2 ,mem_cb_le_process 
+0x3d1b 013808 setarg mouse_send_process 
+0x3d1c 013809 store 2 ,mem_cb_bt_process 
+0x3d1d 013810 setarg mouse_process_lpm_before 
+0x3d1e 013811 store 2 ,mem_cb_before_lpm 
+0x3d1f 013812 setarg mouse_priority_bb_event 
+0x3d20 013813 store 2 ,mem_cb_bb_event_process 
+0x3d21 013814 setarg mouse_idle 
+0x3d22 013815 store 2 ,mem_cb_idle_process 
+0x3d23 013816 setarg mouse_before_hibernate 
+0x3d24 013817 store 2 ,mem_cb_before_hibernate 
+0x3d25 013818 setarg le_mouse_bb_event_connect_complete 
+0x3d26 013819 store 2 ,mem_cb_att_write 
+0x3d27 013821 call g24_head_ptr2regc 
+0x3d28 013822 setarg mouse_g24_package_data 
+0x3d29 013823 add regc ,offset_24g_cb_data ,contw 
+0x3d2a 013824 istore 2 ,contw 
+0x3d2b 013825 setarg mouse_g24_enter_lpm 
+0x3d2c 013826 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x3d2d 013827 istore 2 ,contw 
+0x3d2e 013828 setarg mouse_lpm_before_common 
+0x3d2f 013829 add regc ,offset_24g_cb_lpm_before ,contw 
+0x3d30 013830 istore 2 ,contw 
+0x3d31 013832 setarg mouse_bb_event_timer 
+0x3d32 013833 store 2 ,mem_cb_event_timer 
+0x3d33 013834 setarg mouse_spi_write_flash_cb 
+0x3d34 013835 store 2 ,mem_cb_spi_flash_write_complate 
+0x3d35 013836 rtn 
+:      013837 mouse_spi_write_flash_cb:
+:      013838 mouse_spi_init:
+0x3d36 013839 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d37 013840 bbit0 mouse_enable_spi2 ,spid_init 
+0x3d38 013841 branch spid_init2 
+:      013843 mouse_setting_config:
+0x3d39 013844 rtn wake 
+0x3d3a 013845 call g24_set_device_addr 
+0x3d3b 013846 call mouse_gpio_init 
+0x3d3c 013847 call mouse_param_init 
+0x3d3d 013848 call mouse_adc_init 
+0x3d3e 013849 call le_set_config_fixed_ltk 
+0x3d3f 013850 call le_set_justwork 
+0x3d40 013851 call le_set_fixed_ltk 
+0x3d41 013852 call le_set_config_read_authentication 
+0x3d42 013853 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d43 013854 bbit1 mouse_enable_eeprom ,mouse_init_iic 
+0x3d44 013855 bbit1 mouse_enable_flash ,mouse_load_flash_info_cheak 
+0x3d45 013856 rtn 
+:      013858 mouse_init_iic:
+0x3d46 013859 call iic_init_390k 
+0x3d47 013860 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d48 013861 isolate1 mouse_enable_2k_eeprom ,pdata 
+0x3d49 013862 ncall clear_eeprom_size_2k ,true 
+0x3d4a 013863 call mouse_load_eeprom_dpi 
+0x3d4b 013864 call mouse_init_environment 
+0x3d4c 013865 call mouse_set_24g_addr_eeprom 
+0x3d4d 013866 branch iicd_read_eep_data 
+:      013868 mouse_wakeup_from_power:
+0x3d4e 013869 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d4f 013870 bbit0 mouse_enable_wakeup_from_power ,mouse_wakeup_no_from_power 
+0x3d50 013871 fetch 1 ,mem_wakup_from_power_flag 
+0x3d51 013872 isolate0 gpio_latch ,pdata 
+0x3d52 013873 nrtn true 
+:      013874 mouse_wakeup_no_from_power:
+0x3d53 013875 fetch 1 ,mem_reconn_times_init 
+0x3d54 013876 store 1 ,mem_reconn_times 
+0x3d55 013877 fetch 1 ,mem_config_function_enable 
+0x3d56 013878 rtnbit1 enable_select_device_by_switch 
+:      013879 mouse_start_24g_mode:
+0x3d57 013880 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d58 013881 rtnbit0 mouse_enable_24g 
+0x3d59 013882 bbit1 mouse_enable_auto_24g_paring ,g24_auto_pair_start 
+0x3d5a 013883 branch g24_check_51cmd_start_24g 
+:      013884 le_mouse_bb_event_connect_complete:
+0x3d5b 013885 fetch 1 ,mem_le_att_handle 
+0x3d5c 013886 sub pdata ,26 ,pdata 
+0x3d5d 013887 nrtn zero 
+0x3d5e 013888 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3d5f 013889 call ui_ipc_send_cmd 
+:      013890 mouse_le_write_enable:
+0x3d60 013891 arg write_req_enable_flag ,queue 
+0x3d61 013892 branch mouse_le_enable_connect_flag 
+:      013894 mouse_dpi_up:
+0x3d62 013895 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d63 013896 rtneq dpi_button_state_up 
+0x3d64 013897 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
+0x3d65 013898 rtn 
+:      013899 mouse_dpi_config:
+0x3d66 013900 fetch 1 ,mem_config_sensor_motion 
+0x3d67 013901 and pdata ,0x0f ,pdata 
+0x3d68 013902 store 1 ,mem_mouse_dpi 
+0x3d69 013903 branch mouse_seting_dpi + 2 
+:      013906 mouse_dpi_cheak:
+0x3d6a 013907 fetcht 1 ,mem_dpi_button_gpio 
+0x3d6b 013908 call gpio_get_bit 
+0x3d6c 013909 nbranch mouse_dpi_up ,true 
+:      013910 mouse_dpi_down:
+0x3d6d 013911 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d6e 013912 rtneq dpi_button_state_down 
+0x3d6f 013913 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+:      013914 mouse_dpi_down_setting:
+0x3d70 013915 fetch 1 ,mem_mouse_dpi 
+0x3d71 013916 increase 1 ,pdata 
+0x3d72 013917 and pdata ,0x03 ,pdata 
+0x3d73 013918 store 1 ,mem_mouse_dpi 
+0x3d74 013919 call mouse_seting_dpi 
+0x3d75 013920 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d76 013921 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+0x3d77 013922 bbit1 mouse_enable_flash ,mouse_before_store_flash_cpi 
+0x3d78 013923 rtn 
+:      013924 mouse_before_store_flash_cpi:
+0x3d79 013925 arg mouse_spi2_clk_gpio ,temp 
+0x3d7a 013926 call gpio_config_output 
+0x3d7b 013927 arg mouse_spi2_sdio_gpio ,temp 
+0x3d7c 013928 call gpio_config_output 
+0x3d7d 013929 branch mouse_store_flash_device_info 
+:      013931 mouse_seting_dpi:
+0x3d7e 013932 bpatch patch1c_3 ,mem_patch1c 
+0x3d7f 013933 call mosue_dpi_led_blink_init 
+0x3d80 013934 fetch 1 ,mem_config_sensor_type 
+0x3d81 013935 beq p3610 ,mouse_seting_3610_dpi 
+0x3d82 013936 beq p3212 ,mouse_seting_3212_dpi 
+0x3d83 013937 fetch 1 ,mem_mouse_dpi 
+0x3d84 013938 beq mouse_dpi_level1 ,mouse_set_cpi1 
+0x3d85 013939 beq mouse_dpi_level2 ,mouse_set_cpi2 
+0x3d86 013940 beq mouse_dpi_level3 ,mouse_set_cpi3 
+0x3d87 013941 beq mouse_dpi_level4 ,mouse_set_cpi4 
+:      013942 mouse_set_cpi2:
+0x3d88 013943 fetch 1 ,mem_320x_dpi_2 
+0x3d89 013944 branch mouse_p3205_dpi 
+:      013945 mouse_set_cpi1:
+0x3d8a 013946 fetch 1 ,mem_320x_dpi_1 
+0x3d8b 013947 branch mouse_p3205_dpi 
+:      013948 mouse_set_cpi3:
+0x3d8c 013949 fetch 1 ,mem_320x_dpi_3 
+0x3d8d 013950 branch mouse_p3205_dpi 
+:      013951 mouse_set_cpi4:
+0x3d8e 013952 fetch 1 ,mem_320x_dpi_4 
+0x3d8f 013953 branch mouse_p3205_dpi 
+:      013954 moue_seting_cpi_count:
+0x3d90 013955 fetch 1 ,mem_config_sensor_type 
+0x3d91 013956 rtneq p3065_xy 
+0x3d92 013957 fetch 1 ,mem_mouse_cpi_count 
+0x3d93 013958 increase 1 ,pdata 
+0x3d94 013959 store 1 ,mem_mouse_cpi_count 
+0x3d95 013960 rtn 
+:      013962 mouse_seting_3212_dpi:
+0x3d96 013963 fetch 1 ,mem_mouse_dpi 
+0x3d97 013964 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
+0x3d98 013965 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
+0x3d99 013966 beq mouse_dpi_level3 ,mouse_set_p3212_cpi3 
+0x3d9a 013967 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
+:      013968 mouse_set_p3212_cpi2:
+0x3d9b 013969 fetch 1 ,mem_3212_dpi_2 
+0x3d9c 013970 branch mouse_p3212_dpi 
+:      013971 mouse_set_p3212_cpi1:
+0x3d9d 013972 fetch 1 ,mem_3212_dpi_1 
+0x3d9e 013973 branch mouse_p3212_dpi 
+:      013974 mouse_set_p3212_cpi3:
+0x3d9f 013975 fetch 1 ,mem_3212_dpi_3 
+0x3da0 013976 branch mouse_p3212_dpi 
+:      013977 mouse_set_p3212_cpi4:
+0x3da1 013978 fetch 1 ,mem_3212_dpi_4 
+:      013979 mouse_p3212_dpi:
+0x3da2 013980 store 1 ,mem_mouse_cpi_count 
+0x3da3 013981 lshift8 pdata ,pdata 
+0x3da4 013982 copy pdata ,rega 
+0x3da5 013983 add pdata ,mouse_p3212_dpi_xaddress ,pdata 
+0x3da6 013984 call twspi_write 
+0x3da7 013985 copy rega ,pdata 
+0x3da8 013986 add pdata ,mouse_p3212_dpi_yaddress ,pdata 
+0x3da9 013987 branch twspi_write 
+:      013989 mouse_seting_3610_dpi:
+0x3daa 013990 fetch 1 ,mem_mouse_dpi 
+0x3dab 013991 beq mouse_dpi_level1 ,mouse_set_p3610_cpi1 
+0x3dac 013992 beq mouse_dpi_level2 ,mouse_set_p3610_cpi2 
+0x3dad 013993 beq mouse_dpi_level3 ,mouse_set_p3610_cpi3 
+0x3dae 013994 beq mouse_dpi_level4 ,mouse_set_p3610_cpi4 
+:      013995 mouse_set_p3610_cpi2:
+0x3daf 013996 fetch 1 ,mem_3610_dpi_2 
+0x3db0 013997 branch mouse_p3610_dpi 
+:      013998 mouse_set_p3610_cpi1:
+0x3db1 013999 fetch 1 ,mem_3610_dpi_1 
+0x3db2 014000 branch mouse_p3610_dpi 
+:      014001 mouse_set_p3610_cpi3:
+0x3db3 014002 fetch 1 ,mem_3610_dpi_3 
+0x3db4 014003 branch mouse_p3610_dpi 
+:      014004 mouse_set_p3610_cpi4:
+0x3db5 014005 fetch 1 ,mem_3610_dpi_4 
+:      014006 mouse_p3610_dpi:
+0x3db6 014007 store 1 ,mem_mouse_cpi_count 
+0x3db7 014008 call mouse_spi_sdio_gpio_pollup 
+0x3db8 014009 fetch 1 ,mem_mouse_cpi_count 
+:      014010 mouse_reset_p3610_dpi:
+0x3db9 014011 add pdata ,0x80 ,pdata 
+0x3dba 014012 lshift8 pdata ,pdata 
+0x3dbb 014013 add pdata ,mouse_p3610_dpi_address ,pdata 
+0x3dbc 014014 copy pdata ,rega 
+0x3dbd 014015 branch mouse_set_sensor_reg 
+:      014017 mouse_p3205_dpi:
+0x3dbe 014018 store 1 ,mem_mouse_cpi_count 
+0x3dbf 014019 call moue_seting_cpi_count 
+0x3dc0 014020 fetch 1 ,mem_mouse_cpi_count 
+0x3dc1 014021 setarg mouse_dpi_address 
+0x3dc2 014022 call twspi_read 
+0x3dc3 014023 and pdata ,0xf8 ,temp 
+0x3dc4 014024 fetch 1 ,mem_mouse_cpi_count 
+0x3dc5 014025 iadd temp ,pdata 
+0x3dc6 014026 lshift8 pdata ,pdata 
+0x3dc7 014027 add pdata ,mouse_dpi_address ,pdata 
+0x3dc8 014028 branch twspi_write 
+:      014031 mouse_init_environment:
+0x3dc9 014032 call app_initflag_check 
+0x3dca 014033 branch mouse_eeprom_load_recon_info ,zero 
+0x3dcb 014034 call mouse_ble_init_address 
+0x3dcc 014035 call mouse_store_eeprom_device_info 
+0x3dcd 014036 branch app_initflag_store 
+:      014039 mouse_24g_pairing_button:
+0x3dce 014040 fetch 2 ,mem_24g_pairing_timer_count 
+0x3dcf 014041 rtn blank 
+0x3dd0 014042 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dd1 014043 rtnbit0 mouse_enable_24g 
+0x3dd2 014044 rtnbit1 mosue_24g_pairing_flag 
+0x3dd3 014045 rtnmark1 mark_24g 
+0x3dd4 014046 call mouse_check_key_gpio 
+0x3dd5 014047 rtnne mouse_lmr_button 
+0x3dd6 014048 call mouse_devce_led_off 
+0x3dd7 014049 arg mosue_24g_pairing_flag ,queue 
+0x3dd8 014050 call mouse_enable_function_flag 
+0x3dd9 014051 setarg 0 
+0x3dda 014052 store 2 ,mem_mouse_direct_timer 
+0x3ddb 014053 store 1 ,mem_mouse_send_blank_timer 
+0x3ddc 014054 call g24_set0_mem_check_dongle_times 
+0x3ddd 014056 fetch 2 ,mem_ui_state_map 
+0x3dde 014057 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x3ddf 014058 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x3de0 014059 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x3de1 014060 call mouse_stop_discovery 
+0x3de2 014061 branch g24_start_pairing_sm1 
+:      014064 mouse_idle:
+0x3de3 014065 call mouse_24g_pairing_button 
+0x3de4 014066 call ui_check_paring_button 
+0x3de5 014067 call mouse_dpi_cheak 
+0x3de6 014068 call mouse_usb_isr 
+0x3de7 014069 call mouse_wheel_check 
+0x3de8 014070 branch mouse_usb_mode 
+:      014071 mouse_usb_isr:
+0x3de9 014072 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dea 014073 rtnbit0 mouse_enable_usb 
+0x3deb 014074 call usb_isr 
+0x3dec 014075 branch usb_offline_state 
+:      014077 mouse_cheak_usb:
+0x3ded 014078 hfetch 1 ,core_usb_addr 
+0x3dee 014079 bbit0 7 ,mouse_usb_no_exsit 
+0x3def 014080 bbit1 7 ,mouse_usb_exsit 
+0x3df0 014081 rtn 
+:      014082 mouse_usb_no_exsit:
+0x3df1 014083 fetch 1 ,mem_usb_addr 
+0x3df2 014084 rtnbit0 7 
+0x3df3 014085 branch soft_reset_chip 
+:      014086 mouse_usb_exsit:
+0x3df4 014087 fetch 1 ,mem_usb_addr 
+0x3df5 014088 rtnbit1 7 
+0x3df6 014089 branch mouse_stop_bluetooth_mode 
+:      014091 mouse_usb_mode:
+0x3df7 014092 call mouse_cheak_usb 
+0x3df8 014093 hfetch 1 ,core_usb_addr 
+0x3df9 014094 store 1 ,mem_usb_addr 
+0x3dfa 014095 rtnbit0 7 
+0x3dfb 014096 call mouse_clkn_check 
+0x3dfc 014097 fetch 4 ,mem_btclk_sensor 
+0x3dfd 014098 fetcht 1 ,mem_wire_usb_interval 
+0x3dfe 014099 iadd temp ,temp 
+0x3dff 014100 copy clkn_bt ,pdata 
+0x3e00 014101 isub temp ,null 
+0x3e01 014102 nrtn positive 
+0x3e02 014103 store 4 ,mem_btclk_sensor 
+0x3e03 014104 call mouse_motion 
+0x3e04 014105 nrtn user 
+0x3e05 014106 jam 4 ,mem_usb_tx_enable 
+0x3e06 014107 branch mouse_wired_to_usb 
+:      014109 mouse_clkn_check:
+0x3e07 014110 fetcht 4 ,mem_btclk_sensor 
+0x3e08 014111 copy clkn_bt ,pdata 
+0x3e09 014112 isub temp ,null 
+0x3e0a 014113 ncall mouse_clkn_timeout ,positive 
+0x3e0b 014114 rtn 
+:      014115 mouse_clkn_timeout:
+0x3e0c 014116 setarg 0 
+0x3e0d 014117 store 4 ,mem_btclk_sensor 
+0x3e0e 014118 rtn 
+:      014122 mouse_wired_to_usb:
+0x3e0f 014123 fetch 1 ,mem_usb_tx_enable 
+0x3e10 014124 rtnbit0 2 
+0x3e11 014125 branch mouse_data_push 
+:      014126 mouse_data_push:
+0x3e12 014127 hfetch 1 ,core_usb_addr 
+0x3e13 014128 rtnbit0 7 
+0x3e14 014129 jam usb_ep2_ms ,mem_usb_ep2_data 
+0x3e15 014130 setarg ms_report_id 
+0x3e16 014131 store 1 ,mem_usb_mouse_data 
+0x3e17 014132 fetch 7 ,mem_mouse_key 
+0x3e18 014133 istore 7 ,contw 
+0x3e19 014134 rtn 
+:      014137 mouse_enable_clock_qdecoder:
+0x3e1a 014138 hfetch 2 ,core_clkoff 
+0x3e1b 014139 set0 clock_off_qdecoder ,pdata 
+0x3e1c 014140 hstore 2 ,core_clkoff 
+0x3e1d 014141 rtn 
+:      014143 mouse_param_init:
+0x3e1e 014144 setarg 0x8c00 
+0x3e1f 014145 store 2 ,mem_ui_uuid_table 
+0x3e20 014146 setarg 0x8e7a 
+0x3e21 014147 store 2 ,mem_ui_le_uuid_table 
+0x3e22 014148 setarg 0x2402 
+0x3e23 014149 store 2 ,mem_fcomp_mul 
+0x3e24 014150 setarg 0x2580 
+0x3e25 014151 store 3 ,mem_class 
+0x3e26 014152 jam 3 ,mem_lpm_mult_timeout 
+0x3e27 014153 jam 8 ,mem_lpm_overhead 
+0x3e28 014154 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x3e29 014155 setarg 0x0200 
+0x3e2a 014156 store 2 ,mem_lpm_interval 
+0x3e2b 014157 jam 0x17 ,mem_le_local_mtu 
+0x3e2c 014158 jam 0x17 ,mem_le_remote_mtu 
+0x3e2d 014160 setarg 0x0a77 
+0x3e2e 014161 store 2 ,mem_spi_init_clk 
+0x3e2f 014177 setsect 0 ,0x306 
+0x3e30 014178 setsect 1 ,0x4440 
+0x3e31 014179 setsect 2 ,0x10000 
+0x3e32 014180 setsect 3 ,0x4408 
+0x3e33 014181 store 9 ,mem_all_uuid_16bits 
+0x3e34 014182 setsect 0 ,0x1224 
+0x3e35 014183 setsect 1 ,0x4000 
+0x3e36 014184 setsect 2 ,0x0 
+0x3e37 014185 istore 5 ,contw 
+0x3e38 014187 setsect 0 ,0x3ffff 
+0x3e39 014188 setsect 1 ,0x2fe23 
+0x3e3a 014189 setsect 2 ,0x199d9 
+0x3e3b 014190 setsect 3 ,0x20d 
+0x3e3c 014191 store 8 ,mem_features 
+0x3e3d 014193 setarg 0x012c 
+0x3e3e 014194 store 2 ,mem_24g_pairing_timer_count 
+0x3e3f 014195 call le_modified_name 
+0x3e40 014196 fetch mouse_flag_len ,mem_mouse_flag 
+0x3e41 014197 rtnbit0 mouse_enable_gpio_control_adc_sensor 
+0x3e42 014198 call mouse_sensor_set_angle 
+0x3e43 014199 branch mouse_select_adc 
+:      014201 mouse_sensor_set_angle:
+0x3e44 014202 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e45 014203 call gpio_config_input 
+0x3e46 014204 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e47 014205 call gpio_get_bit 
+0x3e48 014206 jam mouse_3clk_angle ,mem_config_sensor_angle 
+0x3e49 014207 rtn true 
+0x3e4a 014208 jam mouse_12clk_angle ,mem_config_sensor_angle 
+0x3e4b 014209 rtn 
+:      014211 mouse_select_adc:
+0x3e4c 014212 fetcht 1 ,mem_select_adc_gpio 
+0x3e4d 014213 call gpio_config_input 
+0x3e4e 014214 fetcht 1 ,mem_select_adc_gpio 
+0x3e4f 014215 call gpio_get_bit 
+0x3e50 014216 jam adc_config_vinlpm ,mem_adc_config_flag 
+0x3e51 014217 rtn true 
+0x3e52 014218 jam adc_config_gpio ,mem_adc_config_flag 
+0x3e53 014219 rtn 
+:      014222 mouse_adc_init:
+0x3e54 014223 fetch 1 ,mem_adc_config_flag 
+0x3e55 014224 beq adc_config_vinlpm ,mouse_adc_init_data_vinlpm 
+0x3e56 014225 beq adc_config_hvin ,mouse_adc_init_data_hvin 
+0x3e57 014226 beq adc_config_gpio ,mouse_adc_init_data_io 
+0x3e58 014227 branch mouse_adc_init_data_vinlpm 
+:      014229 mouse_adc_init_data_vinlpm:
+0x3e59 014230 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x3e5a 014231 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x3e5b 014232 isub temp ,pdata 
+0x3e5c 014233 mul32 pdata ,20 ,pdata 
+0x3e5d 014234 div pdata ,100 
+0x3e5e 014235 call wait_div_end 
+0x3e5f 014236 quotient pdata 
+0x3e60 014237 store 2 ,mem_adc_reference_voltage 
+0x3e61 014238 rtn 
+:      014239 mouse_adc_init_data_hvin:
+0x3e62 014240 fetcht 2 ,mem_1v_adc_hvin_data 
+0x3e63 014241 fetch 2 ,mem_5v_adc_hvin_data 
+0x3e64 014242 isub temp ,pdata 
+0x3e65 014243 mul32 pdata ,230 ,pdata 
+0x3e66 014244 div pdata ,400 
+0x3e67 014245 call wait_div_end 
+0x3e68 014246 quotient pdata 
+0x3e69 014247 store 2 ,mem_adc_reference_voltage 
+0x3e6a 014248 rtn 
+:      014249 mouse_adc_init_data_io:
+0x3e6b 014250 fetch 2 ,mem_1v_adc_io_data 
+0x3e6c 014251 store 2 ,mem_adc_reference_voltage 
+0x3e6d 014252 rtn 
+:      014253 mouse_gpio_init:
+0x3e6e 014254 fetcht 1 ,mem_eeprom_wp_gpio 
+0x3e6f 014255 call gpio_config_output 
+0x3e70 014256 call usb_offline_check_init 
+0x3e71 014257 fetcht 1 ,mem_lbutton_gpio 
+0x3e72 014258 call gpio_config_input 
+0x3e73 014259 fetcht 1 ,mem_rbutton_gpio 
+0x3e74 014260 call gpio_config_input 
+0x3e75 014261 fetcht 1 ,mem_mbutton_gpio 
+0x3e76 014262 call gpio_config_input 
+0x3e77 014263 fetcht 1 ,mem_sensor_data_gpio 
+0x3e78 014264 call gpio_config_input 
+0x3e79 014266 fetcht 1 ,mem_sensor_reset_gpio 
+0x3e7a 014267 call gpio_config_output 
+0x3e7b 014269 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e7c 014270 call gpio_config_input 
+0x3e7d 014272 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e7e 014273 call gpio_config_input 
+0x3e7f 014275 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e80 014276 call gpio_config_input 
+0x3e81 014277 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e82 014278 call gpio_config_input 
+0x3e83 014280 fetcht 1 ,mem_bk_button_gpio 
+0x3e84 014281 call gpio_config_input 
+0x3e85 014282 fetcht 1 ,mem_fw_button_gpio 
+0x3e86 014283 call gpio_config_input 
+0x3e87 014285 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
+0x3e88 014286 call gpio_config_output 
+0x3e89 014288 fetcht 1 ,mem_config_device1_led_gpio 
+0x3e8a 014289 call gpio_config_output 
+0x3e8b 014291 fetcht 1 ,mem_config_device2_led_gpio 
+0x3e8c 014292 call gpio_config_output 
+0x3e8d 014294 fetcht 1 ,mem_config_device3_led_gpio 
+0x3e8e 014295 call gpio_config_output 
+0x3e8f 014297 fetcht 1 ,mem_dpi_led_gpio 
+0x3e90 014298 call gpio_config_output 
+0x3e91 014300 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3e92 014301 call gpio_config_input 
+0x3e93 014303 fetcht 1 ,mem_config_bt_button_gpio 
+0x3e94 014304 call gpio_config_input 
+0x3e95 014306 fetcht 1 ,mem_dpi_button_gpio 
+0x3e96 014307 branch gpio_config_input 
+:      014309 mouse_wheel_gpio_set_wake:
+0x3e97 014310 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e98 014311 call gpio_set_wake_by_current_state 
+0x3e99 014312 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e9a 014313 call gpio_set_wake_by_current_state 
+0x3e9b 014314 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e9c 014315 call gpio_set_wake_by_current_state 
+0x3e9d 014316 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e9e 014317 branch gpio_set_wake_by_current_state 
+:      014319 mouse_before_hibernate_wheel_gpio_set:
+0x3e9f 014320 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ea0 014321 call mouse_gpio_set_pupd_by_input 
+0x3ea1 014322 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ea2 014323 call mouse_gpio_set_pupd_by_input 
+0x3ea3 014324 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ea4 014325 call mouse_gpio_set_pupd_by_input 
+0x3ea5 014326 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ea6 014327 branch mouse_gpio_set_pupd_by_input 
+:      014329 mouse_gpio_set_pupd_by_input:
+0x3ea7 014330 sub temp ,ui_button_gpio_disable ,null 
+0x3ea8 014331 rtn zero 
+0x3ea9 014332 and temp ,0x7f ,queue 
+0x3eaa 014333 hfetch 4 ,core_gpio_in 
+0x3eab 014334 qisolate1 pdata 
+0x3eac 014335 hfetch 4 ,core_gpio_pu0 
+0x3ead 014336 qsetflag true ,pdata 
+0x3eae 014337 hstore 4 ,core_gpio_pu0 
+0x3eaf 014338 hfetch 4 ,core_gpio_pd0 
+0x3eb0 014339 nqsetflag true ,pdata 
+0x3eb1 014340 hstore 4 ,core_gpio_pd0 
+0x3eb2 014341 rtn 
+:      014343 mouse_before_hibernate:
+0x3eb3 014344 enable user 
+0x3eb4 014345 hfetch 4 ,0x8138 
+0x3eb5 014346 setflag user ,26 ,pdata 
+0x3eb6 014347 hstore 4 ,core_lpm_reg 
+0x3eb7 014348 call lpm_write_ctrl 
+0x3eb8 014349 call mouse_devce_led_off 
+0x3eb9 014350 call mouse_before_hibernate_wheel_gpio_set 
+0x3eba 014352 branch mouse_lpm_before_common 
+:      014356 mouse_process_lpm_before:
+0x3ebb 014357 call mouse_lpm_before_common 
+0x3ebc 014358 fetch 1 ,mem_lpm_current_mult 
+0x3ebd 014359 nrtn blank 
+0x3ebe 014360 branch gpio_clr_wake 
+:      014362 mouse_lpm_before_common:
+0x3ebf 014363 call mouse_wheel_check 
+0x3ec0 014364 arg mouse_spi1_clk_gpio ,temp 
+0x3ec1 014365 fetch mouse_flag_len ,mem_mouse_flag 
+0x3ec2 014366 isolate1 mouse_enable_spi2 ,pdata 
+0x3ec3 014367 call mouse_spi_clk_gpio ,true 
+0x3ec4 014368 call gpio_config_output 
+0x3ec5 014369 call twspi_disable 
+0x3ec6 014373 fetcht 1 ,mem_lbutton_gpio 
+0x3ec7 014374 call gpio_set_wake_by_current_state 
+0x3ec8 014375 fetcht 1 ,mem_rbutton_gpio 
+0x3ec9 014376 call gpio_set_wake_by_current_state 
+0x3eca 014377 fetcht 1 ,mem_mbutton_gpio 
+0x3ecb 014378 call gpio_set_wake_by_current_state 
+0x3ecc 014380 fetcht 1 ,mem_bk_button_gpio 
+0x3ecd 014381 call gpio_set_wake_by_current_state 
+0x3ece 014382 fetcht 1 ,mem_fw_button_gpio 
+0x3ecf 014383 call gpio_set_wake_by_current_state 
+0x3ed0 014384 fetcht 1 ,mem_dpi_button_gpio 
+0x3ed1 014385 call gpio_set_wake_by_current_state 
+0x3ed2 014386 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3ed3 014387 call gpio_set_wake_by_current_state 
+0x3ed4 014388 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ed5 014389 call gpio_set_wake_by_current_state 
+0x3ed6 014390 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ed7 014391 call gpio_set_wake_by_current_state 
+0x3ed8 014392 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ed9 014393 call gpio_set_wake_by_current_state 
+0x3eda 014394 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3edb 014395 call gpio_set_wake_by_current_state 
+0x3edc 014396 fetcht 1 ,mem_sensor_data_gpio 
+0x3edd 014397 branch gpio_set_wake 
+:      014401 mouse_spi_clk_gpio:
+0x3ede 014402 arg mouse_spi2_clk_gpio ,temp 
+0x3edf 014403 rtn 
+:      014405 mouse_wheel_check:
+0x3ee0 014406 bpatch patch1c_4 ,mem_patch1c 
+0x3ee1 014407 call mouse_t_wheel_scan 
+0x3ee2 014408 call mouse_wheel_scan 
+0x3ee3 014409 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3ee4 014410 fetcht 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee5 014411 store 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee6 014412 isub temp ,null 
+0x3ee7 014413 nbranch app_lpm_wake_auto_lock ,zero 
+0x3ee8 014414 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3ee9 014415 fetcht 1 ,mem_mwheel_b_old_pinlevel 
+0x3eea 014416 store 1 ,mem_mwheel_b_old_pinlevel 
+0x3eeb 014417 isub temp ,null 
+0x3eec 014418 nbranch app_lpm_wake_auto_lock ,zero 
+0x3eed 014419 rtn 
+:      014420 mouse_t_wheel_scan:
+0x3eee 014421 fetch 1 ,mem_whee_ta_data_gpio 
+0x3eef 014422 rtneq gpio_disable 
+0x3ef0 014423 arg 0 ,rega 
+0x3ef1 014424 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ef2 014425 call gpio_get_bit 
+0x3ef3 014426 setflag true ,0 ,rega 
+0x3ef4 014427 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ef5 014428 call gpio_get_bit 
+0x3ef6 014429 setflag true ,1 ,rega 
+0x3ef7 014430 copy rega ,pdata 
+0x3ef8 014431 store 1 ,mem_wheel_tb_new_pinlevel 
+0x3ef9 014432 beq 0x01 ,mouse_t_wheel_scan_judge1 
+0x3efa 014433 beq 0x02 ,mouse_t_wheel_scan_judge2 
+0x3efb 014434 fetch 1 ,mem_wheel_tog 
+0x3efc 014435 bbit1 7 ,mouse_t_wheel_scan_judge3 
+0x3efd 014436 rtn 
+:      014438 mouse_t_wheel_scan_judge1:
+0x3efe 014439 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3eff 014440 beq 0 ,mouse_t_wheel_scan_judge11 
+0x3f00 014441 beq 3 ,mouse_t_wheel_scan_judge12 
+0x3f01 014442 rtn 
+:      014443 mouse_t_wheel_scan_judge2:
+0x3f02 014444 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3f03 014445 beq 0 ,mouse_t_wheel_scan_judge21 
+0x3f04 014446 beq 3 ,mouse_t_wheel_scan_judge22 
+0x3f05 014447 rtn 
+:      014448 mouse_t_wheel_scan_judge11:
+0x3f06 014449 jam 0x82 ,mem_wheel_tog 
+0x3f07 014450 rtn 
+:      014451 mouse_t_wheel_scan_judge12:
+0x3f08 014452 jam 0x81 ,mem_wheel_tog 
+0x3f09 014453 rtn 
+:      014454 mouse_t_wheel_scan_judge21:
+0x3f0a 014455 jam 0x80 ,mem_wheel_tog 
+0x3f0b 014456 rtn 
+:      014457 mouse_t_wheel_scan_judge22:
+0x3f0c 014458 jam 0x83 ,mem_wheel_tog 
+0x3f0d 014459 rtn 
+:      014460 mouse_t_wheel_scan_judge3:
+0x3f0e 014461 fetch 1 ,mem_wheel_tog 
+0x3f0f 014462 set0 7 ,pdata 
+0x3f10 014463 store 1 ,mem_wheel_tog 
+0x3f11 014464 beq 0 ,mouse_t_wheel_scan_judge30 
+0x3f12 014465 beq 1 ,mouse_t_wheel_scan_judge31 
+0x3f13 014466 beq 2 ,mouse_t_wheel_scan_judge32 
+0x3f14 014467 beq 3 ,mouse_t_wheel_scan_judge33 
+0x3f15 014468 rtn 
+:      014469 mouse_t_wheel_scan_judge30:
+0x3f16 014470 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f17 014471 beq 3 ,mouse_wheel_t_forward 
+0x3f18 014472 rtn 
+:      014473 mouse_t_wheel_scan_judge31:
+0x3f19 014474 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1a 014475 beq 0 ,mouse_wheel_t_forward 
+0x3f1b 014476 rtn 
+:      014477 mouse_t_wheel_scan_judge32:
+0x3f1c 014478 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1d 014479 beq 3 ,mouse_wheel_t_back 
+0x3f1e 014480 rtn 
+:      014481 mouse_t_wheel_scan_judge33:
+0x3f1f 014482 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f20 014483 beq 0 ,mouse_wheel_t_back 
+0x3f21 014484 rtn 
+:      014485 mouse_wheel_t_forward:
+0x3f22 014486 fetch 1 ,mem_mouse_tz_data_count1 
+0x3f23 014487 increase 1 ,pdata 
+0x3f24 014488 store 1 ,mem_mouse_tz_data_count1 
+0x3f25 014489 sub pdata ,1 ,null 
+0x3f26 014490 rtn positive 
+0x3f27 014491 jam 0 ,mem_mouse_tz_data_count1 
+0x3f28 014492 fetch 1 ,mem_mouse_tz_data 
+0x3f29 014493 increase 1 ,pdata 
+0x3f2a 014494 store 1 ,mem_mouse_tz_data 
+0x3f2b 014495 rtn 
+:      014496 mouse_wheel_t_back:
+0x3f2c 014497 fetch 1 ,mem_mouse_tz_data_count 
+0x3f2d 014498 increase 1 ,pdata 
+0x3f2e 014499 store 1 ,mem_mouse_tz_data_count 
+0x3f2f 014500 sub pdata ,1 ,null 
+0x3f30 014501 rtn positive 
+0x3f31 014502 jam 0 ,mem_mouse_tz_data_count 
+0x3f32 014503 fetch 1 ,mem_mouse_tz_data 
+0x3f33 014504 increase -1 ,pdata 
+0x3f34 014505 store 1 ,mem_mouse_tz_data 
+0x3f35 014506 rtn 
+:      014509 mouse_wheel_scan:
+0x3f36 014510 fetch 1 ,mem_whee_a_data_gpio 
+0x3f37 014511 rtneq gpio_disable 
+0x3f38 014512 arg 0 ,rega 
+0x3f39 014513 fetcht 1 ,mem_whee_a_data_gpio 
+0x3f3a 014514 call gpio_get_bit 
+0x3f3b 014515 setflag true ,0 ,rega 
+0x3f3c 014516 fetcht 1 ,mem_whee_b_data_gpio 
+0x3f3d 014517 call gpio_get_bit 
+0x3f3e 014518 setflag true ,1 ,rega 
+0x3f3f 014519 copy rega ,pdata 
+0x3f40 014520 store 1 ,mem_mwheel_b_new_pinlevel 
+0x3f41 014521 beq 0x01 ,mouse_wheel_scan_judge1 
+0x3f42 014522 beq 0x02 ,mouse_wheel_scan_judge2 
+0x3f43 014523 fetch 1 ,mem_mwheel_tog 
+0x3f44 014524 bbit1 7 ,mouse_wheel_scan_judge3 
+0x3f45 014525 rtn 
+:      014527 mouse_wheel_scan_judge1:
+0x3f46 014528 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f47 014529 beq 0 ,mouse_wheel_scan_judge11 
+0x3f48 014530 beq 3 ,mouse_wheel_scan_judge12 
+0x3f49 014531 rtn 
+:      014532 mouse_wheel_scan_judge2:
+0x3f4a 014533 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f4b 014534 beq 0 ,mouse_wheel_scan_judge21 
+0x3f4c 014535 beq 3 ,mouse_wheel_scan_judge22 
+0x3f4d 014536 rtn 
+:      014537 mouse_wheel_scan_judge11:
+0x3f4e 014538 jam 0x82 ,mem_mwheel_tog 
+0x3f4f 014539 rtn 
+:      014540 mouse_wheel_scan_judge12:
+0x3f50 014541 jam 0x81 ,mem_mwheel_tog 
+0x3f51 014542 rtn 
+:      014543 mouse_wheel_scan_judge21:
+0x3f52 014544 jam 0x80 ,mem_mwheel_tog 
+0x3f53 014545 rtn 
+:      014546 mouse_wheel_scan_judge22:
+0x3f54 014547 jam 0x83 ,mem_mwheel_tog 
+0x3f55 014548 rtn 
+:      014549 mouse_wheel_scan_judge3:
+0x3f56 014550 fetch 1 ,mem_mwheel_tog 
+0x3f57 014551 set0 7 ,pdata 
+0x3f58 014552 store 1 ,mem_mwheel_tog 
+0x3f59 014553 beq 0 ,mouse_wheel_scan_judge30 
+0x3f5a 014554 beq 1 ,mouse_wheel_scan_judge31 
+0x3f5b 014555 beq 2 ,mouse_wheel_scan_judge32 
+0x3f5c 014556 beq 3 ,mouse_wheel_scan_judge33 
+0x3f5d 014557 rtn 
+:      014558 mouse_wheel_scan_judge30:
+0x3f5e 014559 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f5f 014560 beq 3 ,mouse_wheel_forward 
+0x3f60 014561 rtn 
+:      014562 mouse_wheel_scan_judge31:
+0x3f61 014563 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f62 014564 beq 0 ,mouse_wheel_forward 
+0x3f63 014565 rtn 
+:      014566 mouse_wheel_scan_judge32:
+0x3f64 014567 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f65 014568 beq 3 ,mouse_wheel_back 
+0x3f66 014569 rtn 
+:      014570 mouse_wheel_scan_judge33:
+0x3f67 014571 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f68 014572 beq 0 ,mouse_wheel_back 
+0x3f69 014573 rtn 
+:      014574 mouse_wheel_forward:
+0x3f6a 014575 jam 0 ,mem_mouse_z_data_count1 
+0x3f6b 014576 fetch 1 ,mem_mouse_z_data 
+0x3f6c 014577 increase 1 ,pdata 
+0x3f6d 014578 store 1 ,mem_mouse_z_data 
+0x3f6e 014579 rtn 
+:      014580 mouse_wheel_back:
+0x3f6f 014581 jam 0 ,mem_mouse_z_data_count 
+0x3f70 014582 fetch 1 ,mem_mouse_z_data 
+0x3f71 014583 increase -1 ,pdata 
+0x3f72 014584 store 1 ,mem_mouse_z_data 
+0x3f73 014585 rtn 
+:      014588 mouse_hid_connected:
+0x3f74 014589 setarg hid_handshake_timeout 
+0x3f75 014590 store 1 ,mem_hid_handshake_timer_count 
+0x3f76 014591 rtn 
+:      014593 mouse_send_process:
+0x3f77 014594 fetch 1 ,mem_app_handshake_flag 
+0x3f78 014595 rtn blank 
+0x3f79 014596 call l2cap_malloc_is_fifo_nearly_full 
+0x3f7a 014597 nrtn blank 
+0x3f7b 014598 fetch mouse_flag_len ,mem_mouse_flag 
+0x3f7c 014599 bbit1 mosue_24g_pairing_flag ,mouse_send_empty_data 
+0x3f7d 014600 bbit1 mouse_select_device_flag ,mouse_send_empty_data 
+0x3f7e 014601 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x3f7f 014602 call mouse_motion 
+0x3f80 014603 nrtn user 
+:      014604 mouse_send_data:
+0x3f81 014605 arg 9 ,rega 
+0x3f82 014606 call hid_malloc_tx_buff 
+0x3f83 014607 fetch 2 ,mem_hid_int_remote_cid 
+0x3f84 014608 istore 2 ,contw 
+0x3f85 014609 setarg 0x02a1 
+0x3f86 014610 istore 2 ,contw 
+0x3f87 014611 fetch 7 ,mem_mouse_key 
+0x3f88 014612 istore 7 ,contw 
+0x3f89 014613 rtn 
+:      014616 mouse_send_empty_data:
+0x3f8a 014617 setarg 0 
+0x3f8b 014618 store 7 ,mem_mouse_key 
+0x3f8c 014619 branch mouse_send_data 
+:      014622 mouse_no_data_timer_init:
+0x3f8d 014623 fetch 2 ,mem_mouse_no_data_timeout 
+0x3f8e 014624 store 2 ,mem_mouse_no_data_timer 
+0x3f8f 014625 rtn 
+:      014628 mouse_fill_data_le:
+0x3f90 014629 bpatch patch1c_5 ,mem_patch1c 
+0x3f91 014630 arg 7 ,rega 
+0x3f92 014631 fetcht 2 ,mem_le_notify_handle 
+0x3f93 014632 call le_att_malloc_tx_notify 
+0x3f94 014633 fetch 7 ,mem_mouse_key 
+0x3f95 014634 istore 7 ,contw 
+0x3f96 014635 rtn 
+:      014637 mouse_motion:
+0x3f97 014638 bpatch patch1c_6 ,mem_patch1c 
+0x3f98 014639 disable user 
+0x3f99 014640 setarg 0 
+0x3f9a 014641 store 6 ,mem_mouse_x 
+0x3f9b 014642 call mouse_cheak_sensor_data 
+0x3f9c 014643 call mouse_zwheel 
+0x3f9d 014644 call mouse_t_zwheel 
+0x3f9e 014645 call mouse_key 
+0x3f9f 014646 nrtn user 
+0x3fa0 014647 call mouse_no_data_timer_init 
+0x3fa1 014648 arg mouse_statue_up_flag ,queue 
+0x3fa2 014649 branch mouse_enable_function_flag 
+:      014651 motion_6clk_direction_dispose:
+0x3fa3 014652 fetch 2 ,mem_mouse_x 
+0x3fa4 014653 sub pdata ,0 ,pdata 
+0x3fa5 014654 store 2 ,mem_mouse_x 
+0x3fa6 014655 branch enable_user 
+:      014656 motion_12clk_direction_dispose:
+0x3fa7 014657 fetch 2 ,mem_mouse_y 
+0x3fa8 014658 sub pdata ,0 ,pdata 
+0x3fa9 014659 store 2 ,mem_mouse_y 
+0x3faa 014660 branch enable_user 
+:      014661 motion_9clk_direction_dispose:
+0x3fab 014662 fetch 2 ,mem_mouse_y 
+0x3fac 014663 sub pdata ,0 ,pdata 
+0x3fad 014664 store 2 ,mem_mouse_y 
+0x3fae 014665 fetch 2 ,mem_mouse_x 
+0x3faf 014666 sub pdata ,0 ,pdata 
+0x3fb0 014667 store 2 ,mem_mouse_x 
+0x3fb1 014668 call mouse_sensor_data_swap_places 
+0x3fb2 014669 branch enable_user 
+:      014670 motion_3clk_direction_dispose:
+0x3fb3 014671 call mouse_sensor_data_swap_places 
+0x3fb4 014672 branch enable_user 
+:      014673 mouse_cheak_sensor_data:
+0x3fb5 014674 fetch 1 ,mem_spi_write_flash_sm 
+0x3fb6 014675 rtnne flash_sm_no_buys 
+0x3fb7 014676 fetch 1 ,mem_config_sensor_type 
+0x3fb8 014677 beq p3205 ,mouse_p32xx_sensor_motion 
+0x3fb9 014678 beq p3065 ,mouse_p32xx_sensor_motion 
+0x3fba 014679 beq ka8 ,mouse_p32xx_sensor_motion 
+0x3fbb 014680 beq p3204 ,mouse_p32xx_sensor_motion 
+0x3fbc 014681 beq p3212 ,mouse_p3212_sensor_motion 
+0x3fbd 014682 beq p3610 ,mouse_p3610_sensor_motion 
+0x3fbe 014683 beq p3065_xy ,mouse_p32xx_sensor_motion 
+0x3fbf 014684 branch mouse_p32xx_sensor_motion 
+:      014686 mouse_clear_sensor_data:
+0x3fc0 014687 fetch 1 ,mem_mouse_move_flag 
+0x3fc1 014688 call mouse_read_sensor_common ,blank 
+0x3fc2 014689 jam 1 ,mem_mouse_move_flag 
+0x3fc3 014690 rtn 
+:      014693 mouse_p3212_sensor_motion:
+0x3fc4 014694 call mouse_clear_sensor_data 
+0x3fc5 014695 fetcht 1 ,mem_sensor_data_gpio 
+0x3fc6 014696 call gpio_get_bit 
+0x3fc7 014697 nrtn true 
+:      014698 mouse_p3212_sensor_motion_1:
+0x3fc8 014699 setarg pan_reg_pid_l 
+0x3fc9 014700 call twspi_read 
+0x3fca 014701 bne p32xx_id1 ,mouse_twspi_reset 
+0x3fcb 014702 setarg pan_reg_motion_staus 
+0x3fcc 014703 call twspi_read 
+0x3fcd 014704 rtnbit0 7 
+0x3fce 014705 call mouse_read_sensor_common 
+0x3fcf 014706 call mouse_read_3212sensor_xy_high 
+0x3fd0 014707 store 1 ,mem_mouse_xy_h 
+0x3fd1 014708 rshift4 pdata ,pdata 
+0x3fd2 014709 call extsign_bit3 
+0x3fd3 014710 store 1 ,mem_mouse_x + 1 
+0x3fd4 014711 fetch 1 ,mem_mouse_xy_h 
+0x3fd5 014712 and pdata ,0x0f ,pdata 
+0x3fd6 014713 call extsign_bit3 
+0x3fd7 014714 store 1 ,mem_mouse_y + 1 
+0x3fd8 014715 fetch 1 ,mem_config_sensor_angle 
+0x3fd9 014716 beq mouse_6clk_angle ,motion_6clk_direction_dispose 
+0x3fda 014717 beq mouse_9clk_angle ,motion_9clk_direction_dispose 
+0x3fdb 014718 beq mouse_12clk_angle ,motion_12clk_direction_dispose 
+0x3fdc 014719 beq mouse_3clk_angle ,motion_3clk_direction_dispose 
+0x3fdd 014720 rtn 
+:      014722 mouse_read_3212sensor_xy_high:
+0x3fde 014723 setarg 0x12 
+0x3fdf 014724 branch twspi_read 
+:      014726 mouse_p3065_judge:
+0x3fe0 014727 beq p3065_id1 ,mouse_p32xx_sensor_motion_1 
+0x3fe1 014728 branch mouse_twspi_reset 
+:      014730 mouse_p32xx_sensor_motion:
+0x3fe2 014731 call mouse_clear_sensor_data 
+0x3fe3 014732 disable user 
+0x3fe4 014733 fetcht 1 ,mem_sensor_data_gpio 
+0x3fe5 014734 call gpio_get_bit 
+0x3fe6 014735 nrtn true 
+:      014736 mouse_p32xx_sensor_motion_2:
+0x3fe7 014737 setarg pan_reg_pid_l 
+0x3fe8 014738 call twspi_read 
+0x3fe9 014739 bne p32xx_id1 ,mouse_p3065_judge 
+:      014740 mouse_p32xx_sensor_motion_1:
+0x3fea 014741 setarg pan_reg_motion_staus 
+0x3feb 014742 call twspi_read 
+0x3fec 014743 rtnbit0 7 
+0x3fed 014744 call mouse_read_sensor_common 
+0x3fee 014745 fetch 1 ,mem_mouse_x 
+0x3fef 014746 call extsign 
+0x3ff0 014747 store 2 ,mem_mouse_x 
+0x3ff1 014748 fetch 1 ,mem_mouse_y 
+0x3ff2 014749 call extsign 
+0x3ff3 014750 store 2 ,mem_mouse_y 
+0x3ff4 014751 fetch 1 ,mem_config_sensor_angle 
+0x3ff5 014752 beq mouse_6clk_angle ,motion32xx_6clk_direction_selection 
+0x3ff6 014753 beq mouse_9clk_angle ,motion32xx_9clk_direction_selection 
+0x3ff7 014754 beq mouse_12clk_angle ,motion32xx_12clk_direction_selection 
+0x3ff8 014755 beq mouse_3clk_angle ,motion32xx_3clk_direction_selection 
+0x3ff9 014756 rtn 
+:      014758 motion32xx_6clk_direction_selection:
+0x3ffa 014759 call motion_6clk_direction_dispose 
+0x3ffb 014760 branch mouse_sensor_sdio_low 
+:      014761 motion32xx_9clk_direction_selection:
+0x3ffc 014762 call motion_9clk_direction_dispose 
+0x3ffd 014763 branch mouse_sensor_sdio_low 
+:      014764 motion32xx_12clk_direction_selection:
+0x3ffe 014765 call motion_12clk_direction_dispose 
+0x3fff 014766 branch mouse_sensor_sdio_low 
+:      014767 motion32xx_3clk_direction_selection:
+0x4000 014768 call motion_3clk_direction_dispose 
+0x4001 014769 branch mouse_sensor_sdio_low 
+:      014771 mouse_sensor_data_swap_places:
+0x4002 014772 fetch 2 ,mem_mouse_y 
+0x4003 014773 fetcht 2 ,mem_mouse_x 
+0x4004 014774 store 2 ,mem_mouse_x 
+0x4005 014775 storet 2 ,mem_mouse_y 
+0x4006 014776 rtn 
+:      014778 mouse_p3610sensor_read:
+0x4007 014779 call spi_ncs_enable 
+0x4008 014780 nop 100 
+0x4009 014781 copy regb ,pdata 
+0x400a 014782 call twspi_read 
+0x400b 014783 copy pdata ,regb 
+0x400c 014784 call spi_ncs_disable 
+0x400d 014785 nop 100 
+0x400e 014786 copy regb ,pdata 
+0x400f 014787 rtn 
+:      014788 mouse_p3610_sensor_motion:
+0x4010 014789 disable user 
+0x4011 014790 fetcht 1 ,mem_sensor_data_gpio 
+0x4012 014791 call gpio_get_bit 
+0x4013 014792 nrtn true 
+0x4014 014793 arg pan_reg_motion_staus ,regb 
+0x4015 014794 call mouse_p3610sensor_read 
+0x4016 014795 rtnbit0 7 
+0x4017 014796 arg pan_reg_pid_l ,regb 
+0x4018 014797 call mouse_p3610sensor_read 
+0x4019 014798 store 1 ,mem_sensor_id1 
+0x401a 014799 bne p3610_id1 ,mouse_init_3610sensor_reset 
+0x401b 014800 fetch 1 ,mem_mouse_move_flag 
+0x401c 014801 call mouse_read_sensor3610_data ,blank 
+0x401d 014802 jam 1 ,mem_mouse_move_flag 
+0x401e 014803 call mouse_read_sensor3610_data 
+0x401f 014804 fetch 1 ,mem_mouse_xy_h 
+0x4020 014805 rshift4 pdata ,pdata 
+0x4021 014806 call extsign_bit3 
+0x4022 014807 store 1 ,mem_mouse_x + 1 
+0x4023 014808 fetch 1 ,mem_mouse_xy_h 
+0x4024 014809 and pdata ,0x0f ,pdata 
+0x4025 014810 call extsign_bit3 
+0x4026 014811 store 1 ,mem_mouse_y + 1 
+0x4027 014812 fetch 1 ,mem_config_sensor_angle 
+0x4028 014813 beq 0 ,motion3610_6clk_direction_selection 
+0x4029 014814 beq 1 ,motion3610_9clk_direction_selection 
+0x402a 014815 beq 2 ,motion3610_12clk_direction_selection 
+0x402b 014816 beq 3 ,motion3610_3clk_direction_selection 
+0x402c 014817 rtn 
+:      014819 mouse_3610_smart_select:
+0x402d 014820 fetch 1 ,mem_sensor_smart_flag 
+0x402e 014821 beq p3610_smart_enable ,mouse_3610_smart_disable 
+0x402f 014822 beq p3610_smart_disable ,mouse_3610_smart_enable 
+0x4030 014823 rtn 
+:      014826 motion3610_6clk_direction_selection:
+0x4031 014827 call motion_6clk_direction_dispose 
+0x4032 014828 branch mouse_3610_smart_select 
+:      014830 motion3610_12clk_direction_selection:
+0x4033 014831 call motion_12clk_direction_dispose 
+0x4034 014832 branch mouse_3610_smart_select 
+:      014834 motion3610_9clk_direction_selection:
+0x4035 014835 call motion_9clk_direction_dispose 
+0x4036 014836 branch mouse_3610_smart_select 
+:      014838 motion3610_3clk_direction_selection:
+0x4037 014839 call motion_3clk_direction_dispose 
+0x4038 014840 branch mouse_3610_smart_select 
+:      014842 mouse_read_sensor3610_data:
+0x4039 014843 call spi_ncs_enable 
+0x403a 014844 call mouse_read_sensor_common 
+0x403b 014845 arg 5 ,pdata 
+0x403c 014846 call twspi_read 
+0x403d 014847 store 1 ,mem_mouse_xy_h 
+0x403e 014848 arg 7 ,pdata 
+0x403f 014849 call twspi_read 
+0x4040 014850 store 1 ,mem_sensor_shutter_hi 
+0x4041 014851 arg 8 ,pdata 
+0x4042 014852 call twspi_read 
+0x4043 014853 store 1 ,mem_sensor_shutter_lo 
+0x4044 014854 branch spi_ncs_disable 
+:      014857 mouse_3610_smart_enable:
+0x4045 014858 fetch 1 ,mem_sensor_shutter_hi 
+0x4046 014859 rtnne 0 
+0x4047 014860 fetch 1 ,mem_sensor_shutter_lo 
+0x4048 014861 sub pdata ,45 ,null 
+0x4049 014862 rtn positive 
+0x404a 014863 jam p3610_smart_enable ,mem_sensor_smart_flag 
+0x404b 014864 setarg 0xba41 
+0x404c 014865 call sensor_write 
+0x404d 014866 setarg 0x0032 
+0x404e 014867 call sensor_write 
+0x404f 014868 setarg 0xb541 
+0x4050 014869 branch sensor_write 
+:      014870 mouse_3610_smart_disable:
+0x4051 014871 fetch 1 ,mem_sensor_shutter_hi 
+0x4052 014872 rtnne 0 
+0x4053 014873 fetch 1 ,mem_sensor_shutter_lo 
+0x4054 014874 sub pdata ,45 ,null 
+0x4055 014875 nrtn positive 
+0x4056 014876 jam p3610_smart_disable ,mem_sensor_smart_flag 
+0x4057 014877 setarg 0xba41 
+0x4058 014878 call sensor_write 
+0x4059 014879 setarg 0x8032 
+0x405a 014880 call sensor_write 
+0x405b 014881 setarg 0xb541 
+0x405c 014882 branch sensor_write 
+:      014886 mouse_read_sensor_common:
+0x405d 014887 arg pan_reg_delta_x ,pdata 
+0x405e 014888 call twspi_read 
+0x405f 014889 store 2 ,mem_mouse_x 
+0x4060 014890 arg pan_reg_delta_y ,pdata 
+0x4061 014891 call twspi_read 
+0x4062 014892 store 2 ,mem_mouse_y 
+0x4063 014893 rtn 
+:      014895 mouse_set_qdecoder_x:
+0x4064 014896 arg mouse_default_xa_gpio ,temp 
+0x4065 014897 call gpio_config_input 
+0x4066 014898 arg mouse_default_xa_gpio ,temp 
+0x4067 014899 call gpio_get_bit 
+0x4068 014900 rtn true 
+0x4069 014901 hfetch 1 ,core_qdec_cntx 
+0x406a 014902 set1 4 ,pdata 
+0x406b 014903 hstore 1 ,core_qdec_cntx 
+0x406c 014904 rtn 
+:      014906 mouse_hardware_zwheel:
+0x406d 014907 fetcht 1 ,mem_mouse_z_data 
+0x406e 014908 hfetch 1 ,core_qdec_cntx 
+0x406f 014909 iadd temp ,pdata 
+0x4070 014910 rtn blank 
+0x4071 014911 store 1 ,mem_mouse_z 
+0x4072 014912 jam 0 ,mem_mouse_z_data 
+0x4073 014913 branch enable_user 
+:      014914 mouse_hardware_zwheel_beforelpm:
+0x4074 014915 fetcht 1 ,mem_mouse_z_data 
+0x4075 014916 hfetch 1 ,core_qdec_cntx 
+0x4076 014917 iadd temp ,pdata 
+0x4077 014918 store 1 ,mem_mouse_z_data 
+0x4078 014919 rtn 
+:      014920 mouse_zwheel:
+0x4079 014921 fetch 1 ,mem_mouse_z_data 
+0x407a 014922 rtn blank 
+0x407b 014923 store 1 ,mem_mouse_z 
+0x407c 014924 jam 0 ,mem_mouse_z_data 
+0x407d 014925 branch enable_user 
+:      014927 mouse_t_zwheel:
+0x407e 014928 fetch 1 ,mem_mouse_tz_data 
+0x407f 014929 rtn blank 
+0x4080 014930 store 1 ,mem_mouse_tz 
+0x4081 014931 jam 0 ,mem_mouse_tz_data 
+0x4082 014932 branch enable_user 
+:      014934 mouse_check_key_gpio:
+0x4083 014935 arg 0 ,rega 
+0x4084 014936 fetcht 1 ,mem_lbutton_gpio 
+0x4085 014937 call gpio_get_bit 
+0x4086 014938 setflag true ,0 ,rega 
+0x4087 014939 fetcht 1 ,mem_rbutton_gpio 
+0x4088 014940 call gpio_get_bit 
+0x4089 014941 setflag true ,1 ,rega 
+0x408a 014942 fetcht 1 ,mem_mbutton_gpio 
+0x408b 014943 call gpio_get_bit 
+0x408c 014944 setflag true ,2 ,rega 
+0x408d 014945 call mouse_check_s_key_gpio 
+:      014946 mouse_check_key_gpio_output:
+0x408e 014947 copy rega ,pdata 
+0x408f 014948 rtn 
+:      014949 mouse_check_s_key_gpio:
+0x4090 014950 fetch 1 ,mem_bk_button_gpio 
+0x4091 014951 rtneq gpio_disable 
+0x4092 014952 fetcht 1 ,mem_bk_button_gpio 
+0x4093 014953 call gpio_get_bit 
+0x4094 014954 setflag true ,3 ,rega 
+0x4095 014955 fetcht 1 ,mem_fw_button_gpio 
+0x4096 014956 call gpio_get_bit 
+0x4097 014957 setflag true ,4 ,rega 
+0x4098 014958 rtn 
+:      014960 mouse_key:
+0x4099 014961 call mouse_check_key_gpio 
+0x409a 014962 call mouse_set_mult 
+0x409b 014963 call mouse_24g_key 
+0x409c 014964 copy rega ,pdata 
+0x409d 014965 fetcht 1 ,mem_mouse_key 
+0x409e 014966 store 1 ,mem_mouse_key 
+0x409f 014967 ixor temp ,pdata 
+0x40a0 014968 sub pdata ,0 ,null 
+0x40a1 014969 rtn zero 
+0x40a2 014970 branch enable_user 
+:      014972 mouse_24g_key:
+0x40a3 014973 rtnmark0 mark_24g 
+0x40a4 014974 copy rega ,pdata 
+0x40a5 014975 rtn blank 
+0x40a6 014976 store 1 ,mem_mouse_key 
+0x40a7 014977 branch enable_user 
+:      014980 mouse_set_mult:
+0x40a8 014981 fetch 2 ,mem_ui_state_map 
+0x40a9 014982 bbit1 ui_state_ble_connected ,mouse_set_ble_mult 
+0x40aa 014983 fetch 2 ,mem_ui_state_map 
+0x40ab 014984 bbit1 ui_state_bt_connected ,mouse_set_bt_mult 
+0x40ac 014985 rtn 
+:      014986 mouse_set_ble_mult:
+0x40ad 014987 copy rega ,pdata 
+0x40ae 014988 nbranch le_set_config_short_mult ,blank 
+0x40af 014989 branch le_clr_config_short_mult 
+:      014990 mouse_set_bt_mult:
+0x40b0 014991 copy rega ,pdata 
+0x40b1 014992 nbranch classic_bt_set_mult_short_flag ,blank 
+0x40b2 014993 branch classic_bt_clr_mult_short_flag 
+:      014996 mouse_sensor_sdio_low:
+0x40b3 014997 bpatch patch1c_7 ,mem_patch1c 
+0x40b4 014998 arg mouse_spi1_sdio_gpio ,temp 
+0x40b5 014999 fetch mouse_flag_len ,mem_mouse_flag 
+0x40b6 015000 isolate1 mouse_enable_spi2 ,pdata 
+0x40b7 015001 call mouse_sensor_sdio_low2 ,true 
+0x40b8 015002 call gpio_get_bit 
+0x40b9 015003 rtn true 
+0x40ba 015004 setarg 0x0a 
+0x40bb 015005 call twspi_read 
+0x40bc 015006 nop 1000 
+0x40bd 015007 branch mouse_sensor_sdio_low 
+:      015008 mouse_sensor_sdio_low2:
+0x40be 015009 arg mouse_spi2_sdio_gpio ,temp 
+0x40bf 015010 rtn 
+:      015012 mouse_spi_sdio_gpio_pollup:
+0x40c0 015013 fetch mouse_flag_len ,mem_mouse_flag 
+0x40c1 015014 bbit1 mouse_enable_spi2 ,mouse_spi2_sdio_gpio_pollup 
+:      015015 mouse_spi1_sdio_gpio_pollup:
+0x40c2 015016 arg mouse_spi1_sdio_gpio ,temp 
+0x40c3 015017 branch gpio_config_input_without_wake 
+:      015018 mouse_spi2_sdio_gpio_pollup:
+0x40c4 015019 arg mouse_spi2_sdio_gpio ,temp 
+0x40c5 015020 branch gpio_config_input_without_wake 
+:      015023 mouse_init_sunt:
+0x40c6 015024 call mouse_spi_init 
+0x40c7 015025 rtn wake 
+0x40c8 015026 call mouse_spi_sdio_gpio_pollup 
+0x40c9 015027 fetch 1 ,mem_config_sensor_type 
+0x40ca 015028 beq p3610 ,mouse_init_3610sensor 
+:      015029 mouse_init_sensor:
+0x40cb 015030 call mouse_read_sensor_id 
+0x40cc 015031 beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
+0x40cd 015032 beq p3065_id1 ,mouse_p3065_init_param 
+0x40ce 015033 call mouse_twspi_reset 
+0x40cf 015034 nop 1000 
+0x40d0 015035 branch mouse_init_sensor 
+:      015036 mouse_twspi_reset:
+0x40d1 015037 bpatch patch1d_0 ,mem_patch1d 
+0x40d2 015038 fetch mouse_flag_len ,mem_mouse_flag 
+0x40d3 015039 bbit1 mouse_enable_spi2 ,twspi_reset2 
+0x40d4 015040 branch twspi_reset 
+:      015042 mouse_init_3610sensor:
+0x40d5 015043 call mouse_read_sensor_id 
+0x40d6 015044 beq p3610_id1 ,mouse_init_p3610 
+0x40d7 015045 call mouse_init_3610sensor_reset 
+0x40d8 015046 branch mouse_init_3610sensor 
+:      015048 mouse_read_sensor_id:
+0x40d9 015049 setarg pan_reg_pid_h 
+0x40da 015050 call twspi_read 
+0x40db 015051 store 1 ,mem_sensor_id2 
+0x40dc 015052 setarg pan_reg_pid_l 
+0x40dd 015053 call twspi_read 
+0x40de 015054 store 1 ,mem_sensor_id1 
+0x40df 015055 rtn 
+:      015056 mouse_init_p32xx_id2_judge:
+0x40e0 015057 fetch 1 ,mem_sensor_id2 
+0x40e1 015058 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
+0x40e2 015059 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
+0x40e3 015060 beq p3212_id2 ,mouse_3212_init_param 
+0x40e4 015061 beq pka8_id2 ,mouse_ka8_init_param 
+0x40e5 015062 rtn 
+:      015063 mouse_ka8_init_param:
+0x40e6 015064 jam ka8 ,mem_config_sensor_type 
+0x40e7 015065 rtn 
+:      015066 mouse_p3065xy_init_param:
+0x40e8 015067 jam p3065_xy ,mem_config_sensor_type 
+0x40e9 015068 rtn 
+:      015069 mouse_p3065_init_param:
+0x40ea 015070 fetch 1 ,mem_sensor_id2 
+0x40eb 015071 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x40ec 015072 jam p3065 ,mem_config_sensor_type 
+0x40ed 015073 rtn 
+:      015074 mouse_3212_init_param:
+0x40ee 015075 jam p3212 ,mem_config_sensor_type 
+0x40ef 015076 call mouse_sensor_disable_wp 
+0x40f0 015077 setarg 0x3426 
+0x40f1 015078 call twspi_write 
+0x40f2 015079 setarg 0x0419 
+0x40f3 015080 call twspi_write 
+:      015081 mouse_sensor_enable_wp:
+0x40f4 015082 setarg 0x0009 
+0x40f5 015083 branch twspi_write 
+:      015084 mouse_sensor_disable_wp:
+0x40f6 015085 setarg 0x5a09 
+0x40f7 015086 branch twspi_write 
+:      015088 mouse_3204_3l_init_param:
+0x40f8 015089 jam p3204 ,mem_config_sensor_type 
+0x40f9 015090 call mouse_sensor_disable_wp 
+0x40fa 015091 setarg 0x0f0d 
+0x40fb 015092 call twspi_write 
+0x40fc 015093 setarg 0xe31d 
+0x40fd 015094 call twspi_write 
+0x40fe 015095 setarg 0xd27d 
+0x40ff 015096 call twspi_write 
+0x4100 015097 call mouse_32xx_init_param 
+0x4101 015098 branch mouse_32xx_init_param_1 
+:      015100 mouse_32xx_init_param:
+0x4102 015101 setarg 0x351b 
+0x4103 015102 call twspi_write 
+0x4104 015103 setarg 0xb428 
+0x4105 015104 call twspi_write 
+0x4106 015105 setarg 0x4629 
+0x4107 015106 call twspi_write 
+0x4108 015107 setarg 0x962a 
+0x4109 015108 call twspi_write 
+0x410a 015109 setarg 0x8c2b 
+0x410b 015110 call twspi_write 
+0x410c 015111 setarg 0x6e2c 
+0x410d 015112 call twspi_write 
+0x410e 015113 setarg 0x642d 
+0x410f 015114 call twspi_write 
+0x4110 015115 setarg 0x5f38 
+0x4111 015116 call twspi_write 
+0x4112 015117 setarg 0x0f39 
+0x4113 015118 call twspi_write 
+0x4114 015119 setarg 0x323a 
+0x4115 015120 call twspi_write 
+0x4116 015121 setarg 0x473b 
+0x4117 015122 call twspi_write 
+0x4118 015123 setarg 0x1042 
+0x4119 015124 branch twspi_write 
+:      015125 mouse_32xx_init_param_1:
+0x411a 015126 setarg 0x2e54 
+0x411b 015127 call twspi_write 
+0x411c 015128 setarg 0xf255 
+0x411d 015129 call twspi_write 
+0x411e 015130 setarg 0xf461 
+0x411f 015131 call twspi_write 
+0x4120 015132 setarg 0x7063 
+0x4121 015133 call twspi_write 
+0x4122 015134 setarg 0x5275 
+0x4123 015135 call twspi_write 
+0x4124 015136 setarg 0x4176 
+0x4125 015137 call twspi_write 
+0x4126 015138 setarg 0xed77 
+0x4127 015139 call twspi_write 
+0x4128 015140 setarg 0x2378 
+0x4129 015141 call twspi_write 
+0x412a 015142 setarg 0x4679 
+0x412b 015143 call twspi_write 
+0x412c 015144 setarg 0xe57a 
+0x412d 015145 call twspi_write 
+0x412e 015146 setarg 0x487c 
+0x412f 015147 call twspi_write 
+0x4130 015148 setarg 0x777e 
+0x4131 015149 call twspi_write 
+0x4132 015150 setarg 0x017f 
+0x4133 015151 call twspi_write 
+0x4134 015152 setarg 0x000b 
+0x4135 015153 call twspi_write 
+0x4136 015154 setarg 0x007f 
+0x4137 015155 call twspi_write 
+0x4138 015156 branch mouse_sensor_enable_wp 
+:      015159 mouse_3205_3t_init_param:
+0x4139 015160 jam p3205 ,mem_config_sensor_type 
+0x413a 015161 call mouse_sensor_disable_wp 
+0x413b 015162 setarg 0x100d 
+0x413c 015163 call twspi_write 
+0x413d 015164 setarg 0xed1d 
+0x413e 015165 call twspi_write 
+0x413f 015166 setarg 0x807d 
+0x4140 015167 call twspi_write 
+0x4141 015168 call mouse_32xx_init_param 
+0x4142 015169 setarg 0x0943 
+0x4143 015170 call twspi_write 
+0x4144 015171 branch mouse_32xx_init_param_1 
+:      015174 mouse_init_3610sensor_reset:
+0x4145 015175 fetcht 1 ,mem_sensor_reset_gpio 
+0x4146 015176 call gpio_out_active 
+0x4147 015177 call delay_10ms 
+0x4148 015178 fetcht 1 ,mem_sensor_reset_gpio 
+0x4149 015179 call gpio_out_inactive 
+0x414a 015180 branch delay_10ms 
+:      015182 mouse_init_p3610:
+0x414b 015183 jam p3610 ,mem_config_sensor_type 
+0x414c 015184 setarg 0xba41 
+0x414d 015185 call sensor_write 
+0x414e 015186 setarg 0x0d11 
+0x414f 015187 call sensor_write 
+0x4150 015188 setarg 0x041b 
+0x4151 015189 call sensor_write 
+0x4152 015190 setarg 0x041c 
+0x4153 015191 call sensor_write 
+0x4154 015192 setarg 0x0f1d 
+0x4155 015193 call sensor_write 
+0x4156 015194 setarg 0x0032 
+0x4157 015195 call sensor_write 
+0x4158 015196 setarg 0xb541 
+0x4159 015197 branch sensor_write 
+:      015201 mouse_set_sensor_reg:
+0x415a 015202 setarg 0xba41 
+0x415b 015203 call sensor_write 
+0x415c 015204 nop 4000 
+0x415d 015205 setarg 0xff7f 
+0x415e 015206 call sensor_write 
+0x415f 015207 copy rega ,pdata 
+0x4160 015208 call sensor_write 
+0x4161 015209 setarg 0x007f 
+0x4162 015210 call sensor_write 
+0x4163 015211 setarg 0xb541 
+0x4164 015212 branch sensor_write 
+:      015214 extsign:
+0x4165 015215 rtnbit0 7 
+0x4166 015216 arg 0xff00 ,temp 
+0x4167 015217 ior temp ,pdata 
+0x4168 015218 rtn 
+:      015220 extsign_bit3:
+0x4169 015221 rtnbit0 3 
+0x416a 015222 arg 0xf0 ,temp 
+0x416b 015223 ior temp ,pdata 
+0x416c 015224 rtn 
+:      015227 mouse_le:
+0x416d 015228 call le_fifo_check_nearly_full 
+0x416e 015229 nrtn blank 
+0x416f 015230 fetch 1 ,mem_le_connect_status_flag 
+0x4170 015231 and pdata ,0x03 ,pdata 
+0x4171 015232 rtnne 0x03 
+0x4172 015233 fetch mouse_flag_len ,mem_mouse_flag 
+0x4173 015234 bbit1 mosue_24g_pairing_flag ,mouse_le_send_empty_packet 
+0x4174 015235 bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+0x4175 015236 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x4176 015237 call mouse_motion 
+0x4177 015238 nrtn user 
+0x4178 015239 branch mouse_fill_data_le 
+:      015241 mouse_le_send_empty_packet:
+0x4179 015242 setarg 0 
+0x417a 015243 store 7 ,mem_mouse_key 
+0x417b 015244 branch mouse_fill_data_le 
+:      015246 mouse_priority_bb_event:
+0x417c 015247 copy regc ,pdata 
+0x417d 015248 beq bt_evt_le_connected ,mouse_le_bb_event_connected 
+0x417e 015249 beq bt_evt_bb_connected ,mouse_stop_discovery 
+0x417f 015250 beq bt_evt_le_disconnected ,mouse_bb_disconnected 
+0x4180 015251 beq bt_evt_bb_disconnected ,mouse_bb_disconnected 
+0x4181 015252 beq bt_evt_setup_complete ,mouse_bt_event_setup_complete 
+0x4182 015253 beq bt_evt_button_long_pressed ,mouse_bb_event_discovery_btn 
+0x4183 015254 beq bt_evt_hid_handshake ,mouse_bt_hid_handshake 
+0x4184 015255 beq bt_evt_hid_connected ,mouse_bt_hid_connected 
+0x4185 015256 beq bt_evt_reconn_failed ,mouse_bb_event_reconn_failed 
+0x4186 015257 beq bt_evt_reconn_page_timeout ,mouse_bb_event_reconn_timeout 
+0x4187 015258 beq bt_evt_pincode_req ,mouse_bb_event_pincode 
+0x4188 015259 beq bt_evt_remote_unsniff ,app_start_auto_sniff 
+0x4189 015260 beq bt_evt_le_pairing_success ,mouse_le_pairing_success 
+0x418a 015261 beq bt_evt_le_start_enc ,mouse_le_ll_start_encryt 
+0x418b 015262 beq bt_evt_le_pairing_complete ,mouse_le_pairing_complete 
+0x418c 015263 beq bt_evt_virtual_cable_unplug ,mouse_irtual_cable_unplug 
+0x418d 015264 beq bt_evt_24g_pairing_complete ,mouse_24g_pairing_complete 
+0x418e 015265 beq bt_evt_24g_attempt_fail ,mouse_24g_attempt_fail 
+0x418f 015266 beq bt_evt_24g_attempt_success ,mouse_24g_attempt_success 
+0x4190 015267 rtn 
+:      015270 mouse_le_pairing_complete:
+0x4191 015271 branch app_ble_store_reconn_info 
+:      015273 mouse_24g_attempt_fail:
+0x4192 015274 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4193 015275 fetch 1 ,mem_reconn_times 
+0x4194 015276 nbranch mouse_polling_device ,blank 
+0x4195 015277 fetch 1 ,mem_device_flag 
+0x4196 015278 fetcht 1 ,mem_24g_device_number 
+0x4197 015279 isub temp ,null 
+0x4198 015280 branch app_enter_hibernate ,zero 
+0x4199 015281 rtn 
+:      015282 mouse_24g_attempt_success:
+0x419a 015283 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419b 015284 rtn 
+:      015285 mouse_24g_pairing_complete:
+0x419c 015286 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419d 015287 arg mosue_24g_pairing_flag ,queue 
+0x419e 015288 call mouse_disable_function_flag 
+0x419f 015289 setarg 0 
+0x41a0 015290 store 2 ,mem_24g_pairing_timer_count 
+0x41a1 015291 jam 0 ,mem_mouse_move_flag 
+0x41a2 015293 fetch 1 ,mem_config_sensor_type 
+0x41a3 015294 sub pdata ,p3610 ,null 
+0x41a4 015295 call mouse_read_sensor3610_data ,zero 
+0x41a5 015296 ncall mouse_read_sensor_common ,zero 
+0x41a6 015298 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x41a7 015299 bbit1 mouse_enable_flash ,mouse_store_flash_24g_address 
+0x41a8 015300 call mouse_set_24g_addr_eeprom 
+0x41a9 015301 branch iicd_write_protect_eep_data 
+:      015303 mouse_set_24g_addr_eeprom:
+0x41aa 015304 call g24_head_ptr2regc 
+0x41ab 015305 add regc ,offset_24g_addr ,rega 
+0x41ac 015306 arg mouse_g24_addr_eeprom_offect ,regb 
+0x41ad 015307 arg 4 ,temp 
+0x41ae 015308 rtn 
+:      015310 mouse_store_flash_24g_address:
+0x41af 015311 call g24_head_ptr2regc 
+0x41b0 015312 add regc ,offset_24g_addr ,regb 
+0x41b1 015313 ifetch 1 ,regb 
+0x41b2 015314 store 1 ,mem_mouse_24g_addr 
+0x41b3 015315 branch mouse_store_flash_device_info 
+:      015318 mouse_le_pairing_success:
+0x41b4 015319 arg ll_pairing_success_flag ,queue 
+0x41b5 015320 branch mouse_le_enable_connect_flag 
+:      015321 mouse_le_ll_start_encryt:
+0x41b6 015322 jam 2 ,mem_le_start_encrypt_timer 
+0x41b7 015323 arg ll_start_enc_flag ,queue 
+0x41b8 015324 branch mouse_le_enable_connect_flag 
+:      015327 mouse_le_enable_connect_flag:
+0x41b9 015328 fetch 1 ,mem_le_connect_status_flag 
+0x41ba 015329 qset1 pdata 
+0x41bb 015330 store 1 ,mem_le_connect_status_flag 
+0x41bc 015331 rtn 
+:      015333 mouse_le_disable_connect_flag:
+0x41bd 015334 fetch 1 ,mem_le_connect_status_flag 
+0x41be 015335 qset0 pdata 
+0x41bf 015336 store 1 ,mem_le_connect_status_flag 
+0x41c0 015337 rtn 
+:      015338 mouse_le_clean_connect_flag:
+0x41c1 015339 jam 0 ,mem_le_connect_status_flag 
+0x41c2 015340 rtn 
+:      015342 mouse_le_bb_event_connected:
+0x41c3 015343 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c4 015344 set0 app_disc_by_button ,pdata 
+0x41c5 015345 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c6 015346 setarg 0 
+0x41c7 015347 store 2 ,mem_mouse_direct_timer 
+0x41c8 015348 call mouse_no_data_timer_init 
+0x41c9 015349 branch mouse_stop_discovery 
+:      015351 mouse_bb_event_pincode:
+0x41ca 015352 call pincode_reinit 
+0x41cb 015353 branch app_bt_set_pincode 
+:      015354 mouse_bb_event_reconn_timeout:
+:      015355 mouse_bb_event_reconn_failed:
+0x41cc 015356 fetch 1 ,mem_reconn_times 
+0x41cd 015357 nbranch mouse_polling_device ,blank 
+0x41ce 015358 fetch 2 ,mem_ui_state_map 
+0x41cf 015359 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41d0 015360 fetch mouse_flag_len ,mem_mouse_flag 
+0x41d1 015361 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41d2 015362 bbit1 mouse_bt_discovery_button_down_flag ,mouse_start_discovery 
+0x41d3 015363 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41d4 015364 branch app_bb_hibernate 
+:      015367 mouse_bt_hid_connected:
+0x41d5 015368 branch mouse_hid_connected 
+:      015370 mouse_bt_event_setup_complete:
+0x41d6 015371 rtn 
+:      015373 mouse_soft_reset:
+0x41d7 015374 call mouse_select_device_enable 
+0x41d8 015375 branch soft_reset_chip 
+:      015377 mouse_bb_disconnected:
+0x41d9 015378 bpatch patch1d_1 ,mem_patch1d 
+0x41da 015379 call mouse_bb_discon_clear_stack 
+0x41db 015380 fetch mouse_flag_len ,mem_mouse_flag 
+0x41dc 015381 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41dd 015382 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41de 015383 fetch 1 ,mem_reconn_times 
+0x41df 015384 nbranch mouse_polling_device ,blank 
+0x41e0 015385 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41e1 015386 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
+0x41e2 015387 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41e3 015388 bbit1 app_disc_after_pairing ,mouse_event_light_state_pairing 
+0x41e4 015389 bbit1 app_disc_after_reconn ,mouse_event_light_state_hibernate 
+0x41e5 015390 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41e6 015391 branch mouse_start_discovery 
+:      015392 mouse_bb_discon_clear_stack:
+0x41e7 015393 setarg 0 
+0x41e8 015394 store 8 ,mem_wheel_tb_old_pinlevel 
+0x41e9 015395 istore 4 ,contw 
+0x41ea 015396 jam 0 ,mem_mouse_send_blank_timer 
+0x41eb 015397 jam 0 ,mem_mouse_move_flag 
+0x41ec 015398 jam app_handshake_null ,mem_app_handshake_flag 
+0x41ed 015399 jam 0 ,mem_ltk_exists 
+0x41ee 015400 rtn 
+:      015402 mouse_event_light_state_pairing:
+0x41ef 015403 bbit1 app_disc_after_handshake ,mouse_event_light_state_hibernate 
+0x41f0 015404 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41f1 015405 branch mouse_start_discovery 
+:      015406 mouse_event_light_state_hibernate:
+0x41f2 015407 fetch 2 ,mem_ui_state_map 
+0x41f3 015408 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41f4 015409 branch app_bb_hibernate 
+:      015411 mouse4_0_event_bb_disconn:
+0x41f5 015412 call mouse_le_clean_connect_flag 
+0x41f6 015413 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41f7 015414 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41f8 015415 branch app_bb_hibernate 
+:      015417 mouse_bb_event_timer:
+0x41f9 015418 call mouse_adc_read 
+0x41fa 015419 call mouse_24g_delay_timer 
+0x41fb 015420 call mouse_ban_24g_pairing_timer 
+0x41fc 015421 call mouse_dpi_led_blink_delay_timer 
+0x41fd 015422 call mouse_statue_up_timer 
+0x41fe 015424 call mouse_statue_cheak_timer 
+0x41ff 015425 call mouse_select_device 
+0x4200 015426 call mouse_bt_discovery_cheak 
+0x4201 015427 call mouse_low_voltage_led_timer 
+0x4202 015428 call mouse_sensor_led_contrl_timer 
+0x4203 015429 call mouse_check_hid_handshake_timer 
+0x4204 015430 call mouse_check_discovery_timeout_timer 
+0x4205 015431 call mouse_check_direct_timeout_timer 
+0x4206 015432 call mouse_check_no_data_timeout_timer 
+0x4207 015433 call mouse_check_mouse_state_timer 
+0x4208 015434 branch mouse_le_enable_att_list_timer 
+:      015438 mouse_sensor_led_contrl_timer:
+0x4209 015439 fetch 1 ,mem_mouse_sensor_timer_count 
+0x420a 015440 rtn blank 
+0x420b 015441 increase -1 ,pdata 
+0x420c 015442 store 1 ,mem_mouse_sensor_timer_count 
+0x420d 015443 nrtn blank 
+0x420e 015444 branch mouse_sensor_led_contrl 
+:      015445 mouse_sensor_led_contrl:
+0x420f 015446 fetch 1 ,mem_sensor_led_style 
+0x4210 015447 rtneq ui_led_state_blink_stop 
+0x4211 015448 beq ui_led_state_blink_darking ,mouse_sensor_led_blink_state_darking 
+:      015449 mouse_sensor_led_blink_state_lighting:
+0x4212 015450 call mouse_sensor_led_on 
+0x4213 015451 jam ui_led_state_blink_darking ,mem_sensor_led_style 
+0x4214 015452 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4215 015453 rtn 
+:      015454 mouse_sensor_led_blink_state_darking:
+0x4216 015455 call mouse_sensor_led_off 
+0x4217 015456 jam ui_led_state_blink_lighting ,mem_sensor_led_style 
+0x4218 015457 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4219 015458 rtn 
+:      015460 mouse_sensor_led_blink_stop:
+:      015461 mouse_sensor_reset:
+0x421a 015462 setarg 0x8006 
+0x421b 015463 call twspi_write 
+0x421c 015464 nop 1000 
+0x421d 015465 jam 0x00 ,mem_mouse_sensor_timer_count 
+0x421e 015466 jam ui_led_state_blink_stop ,mem_sensor_led_style 
+0x421f 015467 branch mouse_init_p32xx_id2_judge 
+:      015469 mouse_p3212sensor_led_on:
+0x4220 015470 setarg 0xa006 
+0x4221 015471 call twspi_write 
+0x4222 015472 setarg 0xa005 
+0x4223 015473 branch twspi_write 
+:      015474 mouse_sensor_led_on_global:
+0x4224 015475 jam 0 ,mem_mouse_sensor_timer_count 
+:      015476 mouse_sensor_led_on:
+0x4225 015477 fetch 1 ,mem_config_sensor_type 
+0x4226 015478 beq p3212 ,mouse_p3212sensor_led_on 
+0x4227 015479 setarg 0x0106 
+0x4228 015480 call twspi_write 
+0x4229 015481 setarg 0xa105 
+0x422a 015482 branch twspi_write 
+:      015484 mouse_sensor_led_off_global:
+0x422b 015485 jam 0 ,mem_mouse_sensor_timer_count 
+:      015486 mouse_sensor_led_off:
+0x422c 015487 setarg 0x0906 
+0x422d 015488 branch twspi_write 
+:      015489 mouse_sensor_start_blink:
+0x422e 015490 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x422f 015491 jam ui_led_state_blink_start ,mem_sensor_led_style 
+0x4230 015492 rtn 
+:      015494 mouse_check_hid_handshake_timer:
+0x4231 015495 arg mem_hid_handshake_timer_count ,regc 
+0x4232 015496 arg mouse_bt_hid_handshake ,regb 
+0x4233 015497 branch timer_single_step 
+:      015499 mouse_check_discovery_timeout_timer:
+0x4234 015500 arg mem_mouse_discovery_timer ,regc 
+0x4235 015501 arg mouse_check_discovery_timeout ,regb 
+0x4236 015502 branch timer_single_step_2b 
+:      015504 mouse_check_direct_timeout_timer:
+0x4237 015505 arg mem_mouse_direct_timer ,regc 
+0x4238 015506 arg mouse_check_direct_timeout ,regb 
+0x4239 015507 branch timer_single_step_2b 
+:      015509 mouse_check_no_data_timeout_timer:
+0x423a 015510 arg mem_mouse_no_data_timer ,regc 
+0x423b 015511 arg mouse_check_no_data_timeout ,regb 
+0x423c 015512 branch timer_single_step_2b 
+:      015514 mouse_check_mouse_state_timer:
+0x423d 015515 arg mem_mouse_statue_led_timer ,regc 
+0x423e 015516 arg mouse_statue_led_off ,regb 
+0x423f 015517 branch timer_single_step 
+:      015521 mouse_le_enable_att_list_timer:
+0x4240 015522 arg mem_le_start_encrypt_timer ,regc 
+0x4241 015523 arg mouse_le_enable_att_list ,regb 
+0x4242 015524 branch timer_single_step 
+:      015526 mouse_24g_delay_timer:
+0x4243 015527 arg mem_24g_enter_lpm_timer ,regc 
+0x4244 015528 arg mouse_24g_delay ,regb 
+0x4245 015529 branch timer_single_step 
+:      015531 mouse_ban_24g_pairing_timer:
+0x4246 015532 arg mem_24g_pairing_timer_count ,regc 
+0x4247 015533 arg mouse_ban_24g_pairing ,regb 
+0x4248 015534 branch timer_single_step_2b 
+:      015535 mouse_ban_24g_pairing:
+:      015536 mouse_24g_delay:
+0x4249 015537 rtn 
+:      015540 mosue_dpi_led_blink_init:
+0x424a 015541 fetch mouse_flag_len ,mem_mouse_flag 
+0x424b 015542 rtnbit0 mouse_enable_dpi_led_blink 
+0x424c 015543 jam 10 ,mem_mouse_dpi_led_delay_count 
+0x424d 015544 fetch 1 ,mem_dpi_led_gpio 
+0x424e 015545 store 1 ,mem_mouse_struct_led_gpio 
+0x424f 015546 rtn 
+:      015549 mouse_dpi_led_blink_delay_timer:
+0x4250 015550 arg mem_mouse_dpi_led_delay_count ,regc 
+0x4251 015551 arg mouse_dpi_led_setting ,regb 
+0x4252 015552 branch timer_single_step 
+:      015553 mouse_dpi_led_setting:
+0x4253 015554 fetch 1 ,mem_dpi_led_gpio 
+0x4254 015555 store 1 ,mem_mouse_struct_led_gpio 
+0x4255 015556 setarg led_dpi_blink 
+0x4256 015557 store 2 ,mem_mouse_on_time 
+0x4257 015558 store 2 ,mem_mouse_off_time 
+0x4258 015559 arg 0 ,rega 
+0x4259 015560 fetcht 1 ,mem_mouse_dpi 
+0x425a 015561 increase 1 ,temp 
+0x425b 015562 storet 1 ,mem_mouse_blink_count 
+0x425c 015563 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x425d 015564 rtn 
+:      015566 mouse_le_enable_att_list:
+0x425e 015567 fetch 1 ,mem_le_connect_status_flag 
+0x425f 015568 rtnbit1 ll_pairing_success_flag 
+0x4260 015569 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x4261 015570 call ui_ipc_send_cmd 
+0x4262 015571 arg write_req_enable_flag ,queue 
+0x4263 015572 branch mouse_le_enable_connect_flag 
+:      015575 mouse_check_discovery_timeout:
+0x4264 015576 call mouse_stop_discovery 
+0x4265 015577 branch app_enter_hibernate 
+:      015579 mouse_check_direct_timeout:
+0x4266 015580 call app_ble_stop_direct_adv 
+0x4267 015581 fetch 1 ,mem_reconn_times 
+0x4268 015582 nbranch mouse_polling_device ,blank 
+0x4269 015583 branch app_enter_hibernate 
+:      015585 mouse_check_no_data_timeout:
+0x426a 015586 bmark1 mark_24g ,check_51cmd_hibernate 
+0x426b 015587 branch mouse_disconnect 
+:      015591 mouse_bb_event_discovery_btn:
+0x426c 015592 bpatch patch1d_2 ,mem_patch1d 
+0x426d 015593 jam 0 ,mem_mouse_send_blank_timer 
+0x426e 015594 call mouse_disconnect 
+0x426f 015595 call mouse_le_clean_connect_flag 
+0x4270 015596 branch mouse_start_discovery 
+:      015600 mouse3_0_check_reconn_target:
+0x4271 015601 fetch 6 ,mem_hci_plap 
+0x4272 015602 branch app_bt_start_discovery_short ,blank 
+0x4273 015603 call mouse_reconn_setting_led_gpio 
+0x4274 015604 jam 0x17 ,mem_connection_options 
+0x4275 015605 fetch 1 ,mem_ssp_enable 
+0x4276 015606 nbranch app_bt_start_reconnect ,blank 
+0x4277 015607 jam 0x04 ,mem_connection_options 
+0x4278 015608 branch app_bt_start_reconnect 
+:      015610 mouse4_0_check_reconn_target:
+0x4279 015611 fetch 2 ,mem_mouse_direct_timeout 
+0x427a 015612 store 2 ,mem_mouse_direct_timer 
+0x427b 015613 call mouse_reconn_setting_led_gpio 
+0x427c 015614 call app_lpm_mult_disable 
+0x427d 015615 branch check_51cmd_adv 
+:      015617 mouse_reconn_setting_led_gpio:
+0x427e 015618 setarg led_reconnect_blink 
+0x427f 015619 store 2 ,mem_mouse_on_time 
+0x4280 015620 store 2 ,mem_mouse_off_time 
+0x4281 015621 branch mouse_setting_led_gpio_comman 
+:      015623 mouse_discover_setting_led_gpio:
+0x4282 015624 setarg led_discovery_blink 
+0x4283 015625 store 2 ,mem_mouse_on_time 
+0x4284 015626 store 2 ,mem_mouse_off_time 
+:      015627 mouse_setting_led_gpio_comman:
+0x4285 015628 fetch 1 ,mem_device_flag 
+0x4286 015629 beq mode_bt_device1 ,mouse_device_led1 
+0x4287 015630 beq mode_bt_device2 ,mouse_device_led2 
+0x4288 015631 beq mode_bt_device3 ,mouse_device_led3 
+0x4289 015632 rtn 
+:      015633 mouse_device_led1:
+0x428a 015634 fetch 1 ,mem_config_device1_led_gpio 
+0x428b 015635 branch mouse_led_blink 
+:      015636 mouse_device_led2:
+0x428c 015637 fetch 1 ,mem_config_device2_led_gpio 
+0x428d 015638 branch mouse_led_blink 
+:      015639 mouse_device_led3:
+0x428e 015640 fetch 1 ,mem_config_device3_led_gpio 
+:      015641 mouse_led_blink:
+0x428f 015642 store 1 ,mem_temp 
+0x4290 015643 call mouse_devce_led_off 
+0x4291 015644 fetch 1 ,mem_temp 
+0x4292 015645 store 1 ,mem_mouse_struct_led_gpio 
+0x4293 015646 arg 0 ,rega 
+0x4294 015647 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x4295 015648 branch ui_led_blink_start_global 
+:      015650 mouse_led_off:
+0x4296 015651 arg 0 ,rega 
+0x4297 015652 branch ui_led_off_global 
+:      015653 mouse_led_on:
+0x4298 015654 arg 0 ,rega 
+0x4299 015655 branch ui_led_on_global 
+:      015657 mouse4_0_bb_event_discovery_btn:
+0x429a 015658 branch mouse_le_clean_connect_flag 
+:      015660 mouse_bt_hid_handshake:
+0x429b 015661 jam app_handshake_done ,mem_app_handshake_flag 
+0x429c 015662 call app_lpm_mult_enable 
+0x429d 015663 call app_bt_store_reconn_info 
+0x429e 015664 setarg 0 
+0x429f 015665 store 2 ,mem_discovery_timeout_timer_count 
+0x42a0 015666 store 1 ,mem_hid_handshake_timer_count 
+0x42a1 015667 branch app_bt_enter_sniff 
+:      015669 mouse_check_reconn_target:
+0x42a2 015670 call mouse_cheak_select_device_by_switch 
+0x42a3 015671 fetch 1 ,mem_device_flag 
+0x42a4 015672 fetcht 1 ,mem_24g_device_number 
+0x42a5 015673 isub temp ,null 
+0x42a6 015674 branch mouse_connect_24g_mode ,zero 
+0x42a7 015675 fetch 1 ,mem_xrecord_mode 
+0x42a8 015676 beq rec_3_mode ,mouse3_0_check_reconn_target 
+0x42a9 015677 beq rec_4_mode ,mouse4_0_check_reconn_target 
+0x42aa 015678 branch mouse_start_discovery 
+:      015679 mouse_connect_24g_mode:
+0x42ab 015680 call mouse_start_24g_mode 
+0x42ac 015681 rtnmark1 mark_24g 
+0x42ad 015682 fetch 1 ,mem_reconn_times 
+0x42ae 015683 nbranch mouse_polling_device ,blank 
+0x42af 015684 rtn 
+:      015686 mouse_start_discovery:
+0x42b0 015687 bpatch patch1d_3 ,mem_patch1d 
+0x42b1 015688 fetch 2 ,mem_ui_state_map 
+0x42b2 015689 bbit1 ui_state_ble_adv ,mouse_start_discovery_norandom 
+0x42b3 015690 fetch mouse_flag_len ,mem_mouse_flag 
+0x42b4 015691 bbit0 mouse_enable_ble_random_addre ,mouse_start_discovery_norandom 
+0x42b5 015692 random pdata 
+0x42b6 015693 store 1 ,mem_le_lap + 1 
+:      015694 mouse_start_discovery_norandom:
+0x42b7 015695 call app_lpm_mult_disable 
+0x42b8 015696 fetch 2 ,mem_discovery_timeout 
+0x42b9 015697 store 2 ,mem_mouse_discovery_timer 
+0x42ba 015698 jam 6 ,mem_connection_options 
+0x42bb 015699 setarg 0 
+0x42bc 015700 store 2 ,mem_mouse_no_data_timer 
+0x42bd 015701 store 2 ,mem_mouse_direct_timer 
+0x42be 015702 arg mouse_store_eeprom_flag ,queue 
+0x42bf 015703 call mouse_enable_function_flag 
+0x42c0 015704 call mouse_bt_discovery_button_down_disable 
+0x42c1 015705 fetch 1 ,mem_device_option 
+0x42c2 015706 isolate1 mode_4_mouse ,pdata 
+0x42c3 015707 call check_51cmd_adv ,true 
+0x42c4 015708 fetch 1 ,mem_device_option 
+0x42c5 015709 isolate1 mode_3_mouse ,pdata 
+0x42c6 015710 call check_51cmd_start_discovery ,true 
+0x42c7 015711 fetch mouse_flag_len ,mem_mouse_flag 
+0x42c8 015712 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_start_blink 
+0x42c9 015713 branch mouse_discover_setting_led_gpio 
+:      015715 mouse_stop_discovery:
+0x42ca 015716 bpatch patch1d_4 ,mem_patch1d 
+0x42cb 015717 fetch 1 ,mem_device_option 
+0x42cc 015718 isolate1 mode_4_mouse ,pdata 
+0x42cd 015719 call mouse_stop_le_adv ,true 
+0x42ce 015720 fetch 1 ,mem_device_option 
+0x42cf 015721 isolate1 mode_3_mouse ,pdata 
+0x42d0 015722 call mouse_stop_bt3_discovery ,true 
+0x42d1 015723 fetch mouse_flag_len ,mem_mouse_flag 
+0x42d2 015724 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_led_blink_stop 
+0x42d3 015725 branch mouse_devce_led_off 
+:      015726 mouse_stop_le_adv:
+0x42d4 015727 setarg 0 
+0x42d5 015728 store 2 ,mem_mouse_direct_timer 
+0x42d6 015729 branch check_51cmd_stop_adv 
+:      015730 mouse_stop_bt3_discovery:
+0x42d7 015731 setarg 0 
+0x42d8 015732 store 2 ,mem_mouse_discovery_timer 
+0x42d9 015733 branch check_51cmd_stop_discovery 
+:      015739 mouse_store_remote_bdaddr:
+0x42da 015740 fetch mouse_flag_len ,mem_mouse_flag 
+0x42db 015741 rtnbit0 mouse_store_eeprom_flag 
+0x42dc 015742 arg mouse_store_eeprom_flag ,queue 
+0x42dd 015743 call mouse_disable_function_flag 
+0x42de 015744 call mouse_check_device_addr 
+:      015745 mouse_unplug_clean_bdaddr:
+0x42df 015746 call mouse_before_store_reconn_info 
+0x42e0 015747 fetch mouse_flag_len ,mem_mouse_flag 
+0x42e1 015748 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
+0x42e2 015749 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+0x42e3 015750 rtn 
+:      015751 mouse_store_eeprom_device_info:
+0x42e4 015752 arg 88 ,temp 
+0x42e5 015753 arg mem_device_flag ,rega 
+0x42e6 015754 arg mouse_info_eeprom_offect ,regb 
+0x42e7 015755 branch iicd_write_protect_eep_data 
+:      015757 mouse_check_device_addr:
+0x42e8 015758 fetch 1 ,mem_record_bt_mode 
+0x42e9 015759 beq rec_4_mode ,mouse_check_le_device_addr 
+0x42ea 015760 beq rec_3_mode ,mouse_check_bt_device_addr 
+0x42eb 015761 rtn 
+:      015762 mouse_check_le_device_addr:
+0x42ec 015763 store 1 ,mem_device_addr_temp 
+0x42ed 015764 fetch 6 ,mem_le_plap 
+0x42ee 015765 branch mouse_check_bt_device_addr_common 
+:      015766 mouse_check_bt_device_addr:
+0x42ef 015767 store 1 ,mem_device_addr_temp 
+0x42f0 015768 fetch 6 ,mem_plap 
+:      015769 mouse_check_bt_device_addr_common:
+0x42f1 015770 store 6 ,mem_device_addr_temp + 1 
+0x42f2 015771 fetch 7 ,mem_device_addr_temp 
+0x42f3 015772 arg mem_device1_type ,contr 
+0x42f4 015773 arg 3 ,loopcnt 
+:      015774 mouse_check_device_addr_end:
+0x42f5 015775 ifetcht 7 ,contr 
+0x42f6 015776 isub temp ,null 
+0x42f7 015777 branch mouse_clean_addr ,zero 
+0x42f8 015778 increase 22 ,contr 
+0x42f9 015779 loop mouse_check_device_addr_end 
+0x42fa 015780 rtn 
+:      015781 mouse_before_store_reconn_info:
+0x42fb 015782 arg mem_device1_type ,rega 
+0x42fc 015783 fetch 1 ,mem_device_flag 
+0x42fd 015784 increase -1 ,pdata 
+0x42fe 015785 mul32 pdata ,29 ,pdata 
+0x42ff 015786 iadd rega ,rega 
+0x4300 015787 fetch 1 ,mem_record_bt_mode 
+0x4301 015788 istore 1 ,rega 
+0x4302 015789 beq rec_4_mode ,mouse_store_le_device 
+0x4303 015790 beq rec_3_mode ,mouse_store_bt_device 
+0x4304 015791 rtn 
+:      015793 mouse_store_le_device:
+0x4305 015794 fetch 6 ,mem_le_plap 
+0x4306 015795 istore 6 ,contw 
+0x4307 015796 arg mem_le_ltk ,contr 
+0x4308 015797 call memcpy16 
+0x4309 015798 fetch 6 ,mem_le_lap 
+0x430a 015799 istore 6 ,contw 
+0x430b 015800 rtn 
+:      015801 mouse_store_bt_device:
+0x430c 015802 fetch 6 ,mem_plap 
+0x430d 015803 istore 6 ,contw 
+0x430e 015804 arg mem_link_key ,contr 
+0x430f 015805 branch memcpy16 
+:      015807 mouse_clean_addr:
+0x4310 015808 increase -6 ,contr 
+0x4311 015809 copy contr ,contw 
+0x4312 015810 fetcht 6 ,mem_device_addr_temp + 1 
+0x4313 015811 increase 3 ,temp 
+0x4314 015812 istoret 6 ,contw 
+0x4315 015813 rtn 
+:      015817 mouse_eeprom_load_recon_info:
+0x4316 015818 arg 88 ,temp 
+0x4317 015819 arg mem_device_flag ,rega 
+0x4318 015820 arg mouse_info_eeprom_offect ,regb 
+0x4319 015821 call iicd_read_eep_data 
+:      015822 mouse_select_reconn_device:
+0x431a 015823 arg mem_device1_type ,rega 
+0x431b 015824 fetch 1 ,mem_device_flag 
+0x431c 015825 fetcht 1 ,mem_24g_device_number 
+0x431d 015826 isub temp ,null 
+0x431e 015827 rtn zero 
+0x431f 015828 increase -1 ,pdata 
+0x4320 015829 mul32 pdata ,29 ,pdata 
+0x4321 015830 iadd rega ,rega 
+0x4322 015831 ifetch 1 ,rega 
+0x4323 015832 store 1 ,mem_xrecord_mode 
+0x4324 015833 beq rec_3_mode ,mouse_load_bt_device 
+0x4325 015834 beq rec_4_mode ,mouse_load_le_device 
+0x4326 015835 rtn 
+:      015837 mouse_load_bt_device:
+0x4327 015838 ifetch 6 ,contr 
+:      015839 mouse_load_bt_device_end:
+0x4328 015840 store 6 ,mem_hci_plap 
+0x4329 015841 arg mem_link_key ,contw 
+0x432a 015842 call memcpy16 
+0x432b 015843 branch check_link_key_load 
+:      015845 mouse_load_le_device:
+0x432c 015846 ifetch 6 ,contr 
+:      015847 mouse_load_le_device_end:
+0x432d 015848 store 6 ,mem_hci_plap 
+0x432e 015849 arg mem_le_ltk ,contw 
+0x432f 015850 call memcpy16 
+0x4330 015851 ifetch 6 ,contr 
+0x4331 015852 store 6 ,mem_le_lap 
+0x4332 015853 rtn 
+:      015856 mouse_select_device:
+0x4333 015857 fetch 1 ,mem_config_function_enable 
+0x4334 015858 bbit1 enable_select_device_by_gpio_button ,mouse_select_device_by_button 
+0x4335 015859 bbit1 enable_select_device_by_switch ,mouse_select_device_by_switch 
+0x4336 015860 branch mouse_select_device_by_combination_key 
+:      015862 mouse_select_device_by_combination_key:
+0x4337 015863 call mouse_check_key_gpio 
+0x4338 015864 beq mouse_rm_button ,mouse_select_device_commbination_key_down 
+:      015865 mouse_select_device_commbination_key_up:
+0x4339 015866 jam 30 ,mem_combination_select_device_count 
+0x433a 015867 fetch 1 ,mem_select_device_button_statue 
+0x433b 015868 rtneq dpi_button_state_up 
+0x433c 015869 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x433d 015870 rtn 
+:      015872 mouse_select_device_commbination_key_down:
+0x433e 015873 call mouse_combination_select_device_timer 
+0x433f 015874 fetch 1 ,mem_select_device_button_statue 
+0x4340 015875 rtneq dpi_button_state_down 
+0x4341 015876 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4342 015877 branch mouse_select_device_enable 
+:      015879 mouse_combination_select_device_timer:
+0x4343 015880 fetch 1 ,mem_combination_select_device_count 
+0x4344 015881 rtn blank 
+0x4345 015882 pincrease -1 
+0x4346 015883 store 1 ,mem_combination_select_device_count 
+0x4347 015884 nrtn blank 
+0x4348 015885 branch mouse_ready_reconnection_by_button 
+:      015887 mouse_select_device_by_button:
+0x4349 015888 fetch 1 ,mem_config_select_device_button_gpio 
+0x434a 015889 rtneq gpio_disable 
+0x434b 015890 fetcht 1 ,mem_config_select_device_button_gpio 
+0x434c 015891 call gpio_get_bit 
+0x434d 015892 branch mouse_select_device_button_down ,true 
+:      015893 mouse_select_device_button_up:
+0x434e 015894 fetch 1 ,mem_select_device_button_statue 
+0x434f 015895 rtneq dpi_button_state_up 
+0x4350 015896 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x4351 015897 fetch mouse_flag_len ,mem_mouse_flag 
+0x4352 015898 rtnbit1 mouse_long_bt_button_flag 
+0x4353 015899 branch mouse_ready_reconnection_by_button 
+:      015901 mouse_select_device_button_down:
+0x4354 015902 fetch 1 ,mem_select_device_button_statue 
+0x4355 015903 rtneq dpi_button_state_down 
+0x4356 015904 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4357 015905 arg mouse_long_bt_button_flag ,queue 
+0x4358 015906 branch mouse_disable_function_flag 
+:      015910 mouse_select_device_by_switch:
+0x4359 015911 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x435a 015912 rtnbit0 enable_select_device_by_switch 
+0x435b 015913 fetch 1 ,mem_device_flag 
+0x435c 015914 beq mode_bt_device1 ,mouse_select1_device 
+0x435d 015915 beq mode_24g_device ,mouse_select2_device 
+0x435e 015916 rtn 
+:      015917 mouse_cheak_select_device_by_switch:
+0x435f 015918 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x4360 015919 rtnbit0 enable_select_device_by_switch 
+0x4361 015920 fetcht 1 ,mem_config_select_device_button_gpio 
+0x4362 015921 call gpio_get_bit 
+0x4363 015922 branch mouse_cheak_select_24gdevice ,true 
+:      015923 mouse_select_btdevice:
+0x4364 015924 jam mode_bt_device1 ,mem_device_flag 
+0x4365 015925 rtn 
+:      015926 mouse_cheak_select_24gdevice:
+0x4366 015927 fetch 1 ,mem_24g_device_number 
+0x4367 015928 store 1 ,mem_device_flag 
+0x4368 015929 rtn 
+:      015930 mouse_select1_device:
+0x4369 015931 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436a 015932 nbranch mouse_ready_reconnection_by_button ,true 
+0x436b 015933 rtn 
+:      015934 mouse_select2_device:
+0x436c 015935 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436d 015936 call gpio_get_bit 
+0x436e 015937 branch mouse_select_device_button_down ,true 
+0x436f 015938 rtn 
+:      015943 mouse_ready_reconnection_by_button:
+0x4370 015944 fetcht 1 ,mem_device_flag 
+0x4371 015945 increase 1 ,temp 
+0x4372 015946 fetch 1 ,mem_device_number 
+0x4373 015947 isub temp ,null 
+0x4374 015948 ncall mouse_select_device_count_clean ,positive 
+0x4375 015949 storet 1 ,mem_device_flag 
+0x4376 015950 jam 0 ,mem_link_key_exists 
+0x4377 015951 call mouse_store_device_number2eeprom 
+0x4378 015952 call mouse_select_device_enable 
+0x4379 015954 branch mouse_set_reconnection 
+:      015956 mouse_store_device_number2eeprom:
+0x437a 015957 arg 1 ,temp 
+0x437b 015958 arg mem_device_flag ,rega 
+0x437c 015959 arg 0 ,regb 
+0x437d 015960 branch iicd_write_eep_data 
+:      015962 mouse_set_reconnection:
+0x437e 015963 call mouse_stop_bluetooth_mode 
+0x437f 015964 call mouse_select_device_disable 
+0x4380 015965 branch mouse_soft_reset 
+:      015966 mouse_stop_bluetooth_mode:
+0x4381 015967 fetch 2 ,mem_ui_state_map 
+0x4382 015968 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x4383 015969 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x4384 015970 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x4385 015971 branch mouse_stop_discovery 
+:      015973 mouse_disconnect:
+0x4386 015974 bpatch patch1d_5 ,mem_patch1d 
+0x4387 015975 setarg 0 
+0x4388 015976 store 2 ,mem_mouse_no_data_timer 
+0x4389 015977 fetch 2 ,mem_ui_state_map 
+0x438a 015978 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x438b 015979 fetch 2 ,mem_ui_state_map 
+0x438c 015980 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x438d 015981 rtn 
+:      015983 mouse_irtual_cable_unplug:
+0x438e 015984 setarg 0x01 
+0x438f 015985 store 6 ,mem_plap 
+0x4390 015986 jam rec_3_mode ,mem_record_bt_mode 
+0x4391 015987 branch mouse_unplug_clean_bdaddr 
+:      015990 mouse_cancel_reconnect:
+0x4392 015991 call mouse_bt_cannel_reconn_enable 
+0x4393 015992 branch check_51cmd_bb_reconn_cancel 
+:      015994 mouse_bt_discovery_by_button:
+0x4394 015995 fetch 1 ,mem_config_bt_button_gpio 
+0x4395 015996 rtneq gpio_disable 
+0x4396 015997 fetcht 1 ,mem_config_bt_button_gpio 
+0x4397 015998 call gpio_get_bit 
+0x4398 015999 branch mouse_bt_discovery_button_down ,true 
+:      016000 mouse_bt_discovery_button_up:
+0x4399 016001 fetch 1 ,mem_ui_button_timeout 
+0x439a 016002 store 1 ,mem_combination_ui_button_count 
+0x439b 016003 fetch 1 ,mem_bt_discovey_button_statue 
+0x439c 016004 rtneq dpi_button_state_up 
+0x439d 016005 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x439e 016006 branch mouse_bt_discovery_button_down_disable 
+:      016007 mouse_bt_discovery_button_down:
+0x439f 016008 call mouse_bt_discovry_timer 
+0x43a0 016009 fetch 1 ,mem_bt_discovey_button_statue 
+0x43a1 016010 rtneq dpi_button_state_down 
+0x43a2 016011 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43a3 016012 call check_51cmd_bb_reconn_cancel 
+0x43a4 016013 branch mouse_bt_discovery_button_down_enable 
+:      016016 mouse_bt_discovery_cheak:
+0x43a5 016017 fetch 1 ,mem_config_function_enable 
+0x43a6 016018 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
+:      016019 mouse_bt_discovery_commbination_key:
+0x43a7 016020 call mouse_check_key_gpio 
+0x43a8 016021 beq mouse_lmr_button ,mouse_bt_discovery_commbination_key_down 
+:      016022 mouse_bt_discovery_commbination_key_up:
+0x43a9 016023 fetch 1 ,mem_ui_button_timeout 
+0x43aa 016024 store 1 ,mem_combination_ui_button_count 
+0x43ab 016025 fetch 1 ,mem_bt_discovey_button_statue 
+0x43ac 016026 rtneq dpi_button_state_up 
+0x43ad 016027 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x43ae 016028 branch mouse_bt_discovery_button_down_disable 
+:      016031 mouse_bt_discovery_commbination_key_down:
+0x43af 016032 call mouse_bt_discovry_timer 
+0x43b0 016033 fetch 1 ,mem_bt_discovey_button_statue 
+0x43b1 016034 rtneq dpi_button_state_down 
+0x43b2 016035 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43b3 016036 call check_51cmd_bb_reconn_cancel 
+0x43b4 016037 branch mouse_bt_discovery_button_down_enable 
+:      016039 mouse_bt_discovry_timer:
+0x43b5 016040 arg mem_combination_ui_button_count ,regc 
+0x43b6 016041 arg mouse_long_button_bt_discovry ,regb 
+0x43b7 016042 branch timer_single_step 
+:      016044 mouse_long_button_bt_discovry:
+0x43b8 016045 arg mouse_long_bt_button_flag ,queue 
+0x43b9 016046 call mouse_enable_function_flag 
+0x43ba 016047 call app_evt_button_long_pressed 
+0x43bb 016048 branch mouse_bb_event_discovery_btn 
+:      016051 mouse_cpi_enable:
+0x43bc 016052 arg mouse_cpi_flag ,queue 
+0x43bd 016053 branch mouse_enable_function_flag 
+:      016054 mouse_cpi_disable:
+0x43be 016055 arg mouse_cpi_flag ,queue 
+0x43bf 016056 branch mouse_disable_function_flag 
+:      016057 mouse_select_device_enable:
+0x43c0 016058 arg mouse_select_device_flag ,queue 
+0x43c1 016059 branch mouse_enable_function_flag 
+:      016060 mouse_select_device_disable:
+0x43c2 016061 arg mouse_select_device_flag ,queue 
+0x43c3 016062 branch mouse_disable_function_flag 
+:      016063 mouse_bt_cannel_reconn_enable:
+0x43c4 016064 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c5 016065 branch mouse_enable_function_flag 
+:      016066 mouse_bt_cannel_reconn_disable:
+0x43c6 016067 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c7 016068 branch mouse_disable_function_flag 
+:      016069 mouse_bt_discovery_button_down_enable:
+0x43c8 016070 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43c9 016071 branch mouse_enable_function_flag 
+:      016072 mouse_bt_discovery_button_down_disable:
+0x43ca 016073 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43cb 016074 branch mouse_disable_function_flag 
+:      016078 mouse_select_device_count_clean:
+0x43cc 016079 arg 1 ,temp 
+0x43cd 016080 rtn 
+:      016082 mouse_enable_function_flag:
+0x43ce 016083 fetch mouse_flag_len ,mem_mouse_flag 
+0x43cf 016084 qset1 pdata 
+0x43d0 016085 store mouse_flag_len ,mem_mouse_flag 
+0x43d1 016086 rtn 
+:      016088 mouse_disable_function_flag:
+0x43d2 016089 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d3 016090 qset0 pdata 
+0x43d4 016091 store mouse_flag_len ,mem_mouse_flag 
+0x43d5 016092 rtn 
+:      016094 mouse_adc_read:
+0x43d6 016095 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d7 016096 rtnbit0 mouse_enable_adc 
+0x43d8 016097 fetch 1 ,mem_adc_read_timer 
+0x43d9 016098 increase 1 ,pdata 
+0x43da 016099 store 1 ,mem_adc_read_timer 
+0x43db 016100 sub pdata ,10 ,null 
+0x43dc 016101 rtn positive 
+0x43dd 016102 jam 0 ,mem_adc_read_timer 
+0x43de 016103 call adc_set_mode 
+0x43df 016104 call vdd_calculate_by_mode 
+0x43e0 016105 store 2 ,mem_mouse_vdd_now_vol 
+0x43e1 016106 arg mem_mouse_vdd_calculate_set ,rega 
+0x43e2 016107 call adc_bat_percent_lowpower_out 
+0x43e3 016108 fetch 1 ,mem_adc_power_flag 
+0x43e4 016109 bbit1 1 ,mouse_power_down 
+0x43e5 016110 bbit0 0 ,mouse_adc_no_low_voltage 
+0x43e6 016111 branch mouse_adc_low_voltage 
+:      016112 mouse_adc_low_voltage:
+0x43e7 016113 arg mouse_low_voltage_flag ,queue 
+0x43e8 016114 branch mouse_enable_function_flag 
+:      016115 mouse_adc_no_low_voltage:
+0x43e9 016116 arg mouse_low_voltage_flag ,queue 
+0x43ea 016117 branch mouse_disable_function_flag 
+:      016119 mouse_low_voltage_led_timer:
+0x43eb 016120 fetch mouse_flag_len ,mem_mouse_flag 
+0x43ec 016121 rtnbit0 mouse_low_voltage_flag 
+0x43ed 016122 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x43ee 016123 store 1 ,mem_mouse_struct_led_gpio 
+0x43ef 016124 fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f0 016125 pincrease 1 
+0x43f1 016126 store 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f2 016127 sub pdata ,20 ,null 
+0x43f3 016128 ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0x43f4 016129 beq 2 ,mouse_low_voltage_led_on 
+0x43f5 016130 beq 4 ,mouse_low_voltage_led_off 
+0x43f6 016131 beq 6 ,mouse_low_voltage_led_on 
+0x43f7 016132 beq 8 ,mouse_low_voltage_led_off 
+0x43f8 016133 rtn 
+:      016134 mouse_adc_low_volatage_led_timer_count_clean:
+0x43f9 016135 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0x43fa 016136 branch mouse_low_voltage_led_off 
+:      016137 mouse_low_voltage_led_on:
+0x43fb 016138 arg 0 ,rega 
+0x43fc 016139 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x43fd 016140 branch ui_led_on_global 
+:      016141 mouse_low_voltage_led_off:
+0x43fe 016142 arg 0 ,rega 
+0x43ff 016143 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x4400 016144 branch ui_led_off_global 
+:      016146 mouse_g24_package_data:
+0x4401 016147 call mouse_motion 
+0x4402 016148 nrtn user 
+0x4403 016149 arg 7 ,rega 
+0x4404 016150 arg mem_mouse_key ,regb 
+0x4405 016151 rtn 
+:      016153 mouse_g24_enter_lpm:
+0x4406 016154 fetch 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4407 016155 rtn blank 
+0x4408 016157 fetcht 1 ,mem_dpi_button_gpio 
+0x4409 016158 call gpio_get_bit 
+0x440a 016159 call mouse_24g_dpi_delay_init ,true 
+0x440b 016160 fetch 1 ,mem_24g_enter_lpm_timer 
+0x440c 016161 nrtn blank 
+0x440d 016162 call mouse_check_key_gpio 
+0x440e 016163 nrtn blank 
+0x440f 016164 branch g24_lpm_long_sleep 
+:      016166 mouse_24g_dpi_delay_init:
+0x4410 016167 fetch 1 ,mem_dpi_button_gpio 
+0x4411 016168 rtneq ui_button_gpio_disable 
+0x4412 016169 jam 10 ,mem_24g_enter_lpm_timer 
+0x4413 016170 rtn 
+:      016173 mouse_load_flash_info_cheak:
+0x4414 016174 call mouse_load_flash_flag 
+0x4415 016175 fetch 2 ,mem_store_flag 
+0x4416 016176 arg eeprom_init_flag ,temp 
+0x4417 016177 isub temp ,null 
+0x4418 016178 branch mouse_load_flash_device_info ,zero 
+0x4419 016179 storet 2 ,mem_store_flag 
+0x441a 016180 call mouse_ble_init_address 
+0x441b 016181 branch mouse_store_flash_device_info 
+:      016182 mouse_ble_init_address:
+0x441c 016183 fetch 6 ,mem_le_lap 
+0x441d 016184 store 6 ,mem_device1_locall_addr 
+0x441e 016185 add pdata ,0x0100 ,pdata 
+0x441f 016186 store 6 ,mem_device2_locall_addr 
+0x4420 016187 add pdata ,0x0100 ,pdata 
+0x4421 016188 store 6 ,mem_device3_locall_addr 
+0x4422 016189 rtn 
+:      016192 mouse_load_flash_flag:
+0x4423 016193 setarg mem_store_flag 
+0x4424 016194 arg mem_mouse_information_start ,temp 
+0x4425 016195 isub temp ,temp 
+0x4426 016196 fetch 3 ,mem_flash_base 
+0x4427 016197 iadd temp ,pdata 
+0x4428 016198 arg 2 ,temp 
+0x4429 016199 arg mem_store_flag ,rega 
+0x442a 016200 branch spid_read_flash 
+:      016203 mouse_load_flash_device_info:
+0x442b 016204 setarg mem_mouse_information_end 
+0x442c 016205 arg mem_mouse_information_start ,temp 
+0x442d 016206 isub temp ,temp 
+0x442e 016207 fetch 3 ,mem_flash_base 
+0x442f 016208 arg mem_mouse_information_start ,rega 
+0x4430 016209 call spid_read_flash 
+0x4431 016210 call mouse_select_reconn_device 
+0x4432 016211 fetch 4 ,mem_mouse_24g_addr 
+0x4433 016212 call g24_head_ptr2regc 
+0x4434 016213 branch g24_store_mem_addr 
+:      016215 mouse_store_flash_device_info:
+0x4435 016216 setarg mem_mouse_information_end 
+0x4436 016217 arg mem_mouse_information_start ,temp 
+0x4437 016218 isub temp ,temp 
+0x4438 016219 arg mem_mouse_information_start ,rega 
+0x4439 016220 fetch 3 ,mem_flash_base 
+0x443a 016221 branch flash_write 
+:      016223 mouse_store_eerpom_dpi:
+0x443b 016224 arg 1 ,temp 
+0x443c 016225 arg mem_mouse_dpi ,rega 
+0x443d 016226 arg mouse_dpi_eeprom_offect ,regb 
+0x443e 016227 branch iicd_write_protect_eep_data 
+:      016229 mouse_load_eeprom_dpi:
+0x443f 016230 arg 1 ,temp 
+0x4440 016231 arg mem_mouse_dpi ,rega 
+0x4441 016232 arg mouse_dpi_eeprom_offect ,regb 
+0x4442 016233 branch iicd_read_eep_data 
+:      016235 mouse_statue_cheak_timer:
+0x4443 016236 rtnmark1 mark_24g 
+0x4444 016237 fetch mouse_flag_len ,mem_mouse_flag 
+0x4445 016238 rtnbit0 mouse_enable_statue_up 
+0x4446 016239 fetch 1 ,mem_mouse_1step_up_count 
+0x4447 016240 pincrease 1 
+0x4448 016241 and pdata ,0x07 ,pdata 
+0x4449 016242 store 1 ,mem_mouse_1step_up_count 
+0x444a 016243 rtnne 0x07 
+0x444b 016244 fetch 2 ,mem_ui_state_map 
+0x444c 016245 bbit1 ui_state_bt_connected ,mouse_check_statue_up 
+0x444d 016246 bbit1 ui_state_ble_connected ,mouse_check_statue_up 
+0x444e 016247 rtn 
+:      016252 mouse_check_statue_up:
+0x444f 016253 bpatch patch1d_6 ,mem_patch1d 
+0x4450 016254 fetch 1 ,mem_mouse_2step_up_count 
+0x4451 016255 nrtn blank 
+0x4452 016256 fetch mouse_flag_len ,mem_mouse_flag 
+0x4453 016257 rtnbit0 mouse_statue_up_flag 
+0x4454 016258 fetch 1 ,mem_sensor_squal_reg 
+0x4455 016259 call sensor_read 
+0x4456 016260 store 1 ,mem_sensor_iqc 
+0x4457 016261 sub pdata ,0x10 ,null 
+0x4458 016262 branch mouse_statue_up_timer_init ,positive 
+0x4459 016263 jam 0 ,mem_mouse_2step_up_count 
+0x445a 016264 rtn 
+:      016266 mouse_statue_up_timer_init:
+0x445b 016267 jam 30 ,mem_mouse_2step_up_count 
+0x445c 016268 rtn 
+:      016269 mouse_statue_up_timer:
+0x445d 016270 arg mem_mouse_2step_up_count ,regc 
+0x445e 016271 arg mouse_statue_up ,regb 
+0x445f 016272 branch timer_single_step 
+:      016274 mouse_statue_up:
+0x4460 016275 fetch 1 ,mem_sensor_squal_reg 
+0x4461 016276 call twspi_read 
+0x4462 016277 sub pdata ,0x10 ,null 
+0x4463 016278 nrtn positive 
+0x4464 016279 fetch mouse_flag_len ,mem_mouse_flag 
+0x4465 016280 rtnbit0 mouse_statue_up_flag 
+0x4466 016281 arg mouse_statue_up_flag ,queue 
+0x4467 016282 call mouse_disable_function_flag 
+0x4468 016283 jam 0 ,mem_lpm_mult 
+0x4469 016284 jam 30 ,mem_mouse_statue_led_timer 
+0x446a 016285 call mouse_devce_led_off 
+0x446b 016286 fetch mouse_flag_len ,mem_mouse_flag 
+0x446c 016287 bbit1 mouse_enable_statue_up_three_led ,mouse_three_device_statue_up 
+:      016288 mouse_two_device_statue_up:
+0x446d 016289 fetch 1 ,mem_device_flag 
+0x446e 016290 beq mode_bt_device1 ,mouse_device1_led_on 
+0x446f 016291 beq mode_bt_device2 ,mouse_device_blink_led_init 
+0x4470 016292 rtn 
+:      016293 mouse_three_device_statue_up:
+0x4471 016294 fetch 1 ,mem_device_flag 
+0x4472 016295 beq mode_bt_device1 ,mouse_device1_led_on 
+0x4473 016296 beq mode_bt_device2 ,mouse_device2_led_on 
+0x4474 016297 beq mode_bt_device3 ,mouse_device3_led_on 
+0x4475 016298 rtn 
+:      016300 mouse_device_blink_led_init:
+0x4476 016301 fetch 1 ,mem_config_device1_led_gpio 
+0x4477 016302 branch mouse_led_blink 
+:      016306 mouse_statue_led_off:
+0x4478 016307 jam 0x20 ,mem_lpm_mult 
+0x4479 016308 branch mouse_devce_led_off 
+:      016312 mouse_devce1_led_off:
+0x447a 016313 fetch 1 ,mem_config_device1_led_gpio 
+0x447b 016314 rtneq gpio_disable 
+0x447c 016315 store 1 ,mem_mouse_struct_led_gpio 
+0x447d 016316 branch mouse_led_off 
+:      016318 mouse_devce2_led_off:
+0x447e 016319 fetch 1 ,mem_config_device2_led_gpio 
+0x447f 016320 rtneq gpio_disable 
+0x4480 016321 store 1 ,mem_mouse_struct_led_gpio 
+0x4481 016322 branch mouse_led_off 
+:      016324 mouse_devce_led_off:
+0x4482 016325 call mouse_led_off 
+0x4483 016326 call mouse_devce1_led_off 
+0x4484 016327 call mouse_devce2_led_off 
+:      016328 mouse_devce3_led_off:
+0x4485 016329 fetch 1 ,mem_config_device3_led_gpio 
+0x4486 016330 rtneq gpio_disable 
+0x4487 016331 store 1 ,mem_mouse_struct_led_gpio 
+0x4488 016332 branch mouse_led_off 
+:      016334 mouse_device1_led_on:
+0x4489 016335 fetch 1 ,mem_config_device1_led_gpio 
+0x448a 016336 store 1 ,mem_mouse_struct_led_gpio 
+0x448b 016337 branch mouse_led_on 
+:      016338 mouse_device2_led_on:
+0x448c 016339 fetch 1 ,mem_config_device2_led_gpio 
+0x448d 016340 store 1 ,mem_mouse_struct_led_gpio 
+0x448e 016341 branch mouse_led_on 
+:      016342 mouse_device3_led_on:
+0x448f 016343 fetch 1 ,mem_config_device3_led_gpio 
+0x4490 016344 store 1 ,mem_mouse_struct_led_gpio 
+0x4491 016345 branch mouse_led_on 
+:      016349 mouse_polling_device:
+0x4492 016350 bpatch patch1d_7 ,mem_patch1d 
+0x4493 016351 fetch 1 ,mem_reconn_times 
+0x4494 016352 increase -1 ,pdata 
+0x4495 016353 store 1 ,mem_reconn_times 
+0x4496 016354 fetcht 1 ,mem_device_flag 
+0x4497 016355 increase 1 ,temp 
+0x4498 016356 fetch 1 ,mem_device_number 
+0x4499 016357 isub temp ,null 
+0x449a 016358 ncall mouse_select_device_count_clean ,positive 
+0x449b 016359 storet 1 ,mem_device_flag 
+0x449c 016360 jam 0 ,mem_link_key_exists 
+0x449d 016361 call mouse_store_device_number2eeprom 
+0x449e 016362 call mouse_before_store_reconn_info 
+0x449f 016363 branch mouse_check_reconn_target 
+:      016365 mouse_power_down:
+0x44a0 016366 call mouse_devce_led_off 
+0x44a1 016367 setarg 0 
+0x44a2 016368 store 8 ,mem_gpio_wakeup_low 
+0x44a3 016369 branch lpm_hibernate 
+:      016380 remote_car_init:
+0x44a4 016381 rtn wake 
+0x44a5 016382 hfetch 1 ,core_gpio_sel1 
+0x44a6 016383 and_into 0xf0 ,pdata 
+0x44a7 016384 hstore 1 ,core_gpio_sel1 
+0x44a8 016385 call keyscan_key_init 
+0x44a9 016386 setarg remote_car_le_before_hibernate 
+0x44aa 016387 store 2 ,mem_cb_before_hibernate 
+0x44ab 016389 setarg remote_car_process_lpm_before 
+0x44ac 016390 store 2 ,mem_cb_before_lpm 
+0x44ad 016392 setarg remote_car_scale_process_idle 
+0x44ae 016393 store 2 ,mem_cb_idle_process 
+0x44af 016395 setarg remote_car_scale_process_bb_event 
+0x44b0 016396 store 2 ,mem_cb_bb_event_process 
+0x44b1 016398 setarg app_get_lpm_wake_lock 
+0x44b2 016399 store 2 ,mem_cb_check_wakelock 
+0x44b3 016401 call g24_head_ptr2regc 
+0x44b4 016402 setarg remote_car_g24_package_data 
+0x44b5 016403 add regc ,offset_24g_cb_data ,contw 
+0x44b6 016404 istore 2 ,contw 
+0x44b7 016406 setarg remote_car_g24_enter_lpm 
+0x44b8 016407 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x44b9 016408 istore 2 ,contw 
+0x44ba 016410 setarg remote_car_process_lpm_before 
+0x44bb 016411 add regc ,offset_24g_cb_lpm_before ,contw 
+0x44bc 016412 istore 2 ,contw 
+0x44bd 016414 setarg remote_car_event_timer 
+0x44be 016415 store 2 ,mem_cb_event_timer 
+0x44bf 016417 setarg remote_car_power_off_signal 
+0x44c0 016418 store 2 ,mem_remote_car_power_off_cb 
+0x44c1 016420 setarg remote_car_soft_switch_power_on_signal 
+0x44c2 016421 store 2 ,mem_remote_car_power_standby_cb 
+0x44c3 016423 setarg remote_car_send_key_data 
+0x44c4 016424 store 2 ,mem_cb_remote_car_keyscan 
+0x44c5 016426 bpatch patch1e_0 ,mem_patch1e 
+0x44c6 016427 call remote_car_init_environment 
+0x44c7 016428 call queue_init 
+0x44c8 016429 jam 2 ,mem_lpm_mult 
+0x44c9 016430 fetch 1 ,mem_remote_car_config_soft_switch_enable 
+0x44ca 016431 store 1 ,mem_remote_car_hard_soft_switch 
+0x44cb 016432 beq hard_switch ,remote_car_hard_switch_power_on_signal 
+0x44cc 016433 fetch 1 ,mem_remote_car_config_soft_switch_gpio 
+0x44cd 016434 store 1 ,mem_ui_button_gpio 
+:      016435 remote_car_soft_switch_power_on_init:
+0x44ce 016436 call remote_car_ui_led_init 
+0x44cf 016437 call ui_button_init 
+0x44d0 016438 call ui_button_polling 
+0x44d1 016439 jam power_starting ,mem_remote_car_power_state 
+0x44d2 016440 fetch 2 ,mem_ui_state_map 
+0x44d3 016441 rtnbit1 ui_state_btn_down 
+0x44d4 016442 branch app_enter_hibernate 
+:      016446 remote_car_hard_switch_power_on_signal:
+0x44d5 016447 jam power_standby ,mem_remote_car_power_state 
+:      016448 remote_car_soft_switch_power_on_signal:
+0x44d6 016449 call remote_car_ui_led_init 
+0x44d7 016451 arg 0 ,rega 
+0x44d8 016452 call ui_led_blink_start_global 
+:      016453 remote_car_connect_24g_mode:
+0x44d9 016454 branch g24_auto_pair_start 
+:      016456 remote_car_power_off_signal:
+0x44da 016457 branch remote_car_ui_led_init 
+:      016459 remote_car_ui_led_init:
+0x44db 016460 bpatch patch1e_1 ,mem_patch1e 
+0x44dc 016461 fetch 1 ,mem_remote_car_config_connect_led_gpio 
+0x44dd 016462 bne invalid_pin_num ,remote_car_pairing_led_gpio_set 
+:      016463 remote_car_ui_led_init_1:
+0x44de 016464 fetcht 1 ,mem_remote_car_led_map 
+0x44df 016465 branch gpio_config_output 
+:      016466 remote_car_pairing_led_gpio_set:
+0x44e0 016467 store 1 ,mem_remote_car_led_map 
+0x44e1 016468 branch remote_car_ui_led_init_1 
+:      016471 remote_car_init_environment:
+0x44e2 016472 call g24_set_device_addr 
+0x44e3 016473 fetch 2 ,mem_remote_car_no_data_timeout 
+0x44e4 016474 store 2 ,mem_remote_car_no_data_timer 
+0x44e5 016475 branch remote_car_get_adc_default_data 
+:      016477 remote_car_le_before_hibernate:
+:      016482 remote_car_in_enter_hibernate:
+0x44e6 016483 call gpio_set_before_lpm_common 
+0x44e7 016484 call remote_car_process_lpm_before 
+0x44e8 016485 branch app_enter_hibernate 
+:      016487 remote_car_process_lpm_before:
+0x44e9 016488 branch keyscan_process_lpm_before 
+:      016490 remote_car_g24_enter_lpm:
+0x44ea 016491 fetch 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44eb 016492 rtn blank 
+0x44ec 016494 branch g24_lpm_long_sleep 
+:      016496 remote_car_process_auto_pair_exit:
+0x44ed 016497 rtn 
+:      016499 remote_car_key_scan_process:
+0x44ee 016500 branch keyscan_key_process 
+:      016502 remote_car_scale_process_idle:
+0x44ef 016503 call remote_car_rocker_process 
+0x44f0 016504 call remote_car_24g_status_process 
+0x44f1 016505 branch remote_car_key_scan_process 
+:      016507 remote_car_scale_process_bb_event:
+0x44f2 016508 copy regc ,pdata 
+0x44f3 016509 beq bt_evt_button_up ,app_event_button_up 
+0x44f4 016510 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x44f5 016511 beq bt_evt_24g_pairing_complete ,remote_car_24g_pairing_complete 
+0x44f6 016512 beq bt_evt_24g_attempt_success ,remote_car_24g_attempt_success 
+0x44f7 016513 beq bt_evt_24g_attempt_fail ,remote_car_24g_attempt_fail 
+0x44f8 016514 rtn 
+:      016516 remote_car_24g_attempt_fail:
+0x44f9 016517 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fa 016518 rtn 
+:      016520 remote_car_24g_pairing_complete:
+0x44fb 016521 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fc 016522 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x44fd 016523 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x44fe 016524 rtn 
+:      016526 remote_car_24g_attempt_success:
+0x44ff 016527 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x4500 016528 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x4501 016529 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x4502 016530 rtn 
+:      016532 remote_car_24g_status_process:
+0x4503 016533 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4504 016534 rtneq power_on 
+0x4505 016535 fetch 1 ,mem_remote_car_24g_status 
+0x4506 016536 rtneq work_paired 
+0x4507 016537 jam work_paired ,mem_remote_car_24g_status 
+:      016538 remote_car_scale_process_paired:
+0x4508 016539 arg 0 ,rega 
+0x4509 016540 branch ui_led_off_global 
+:      016541 remote_car_scale_process_shutdown:
+0x450a 016542 arg 0 ,rega 
+0x450b 016543 call ui_led_off_global 
+0x450c 016544 call remote_car_ui_led_init 
+0x450d 016545 branch app_enter_hibernate 
+:      016547 remote_car_event_timer:
+0x450e 016548 call app_power_timer 
+0x450f 016549 branch remote_car_no_data_timer 
+:      016551 remote_car_no_data_timer:
+0x4510 016552 fetch 1 ,mem_remote_car_config_timeout_shutdown_enable 
+0x4511 016553 rtn blank 
+0x4512 016554 arg mem_remote_car_no_data_timer ,regc 
+0x4513 016555 arg remote_car_scale_process_shutdown ,regb 
+0x4514 016556 branch timer_single_step_2b 
+:      016559 remote_car_get_adc_default_data:
+0x4515 016560 call remote_car_rocker_get_x 
+0x4516 016561 storet 2 ,mem_current_vdd_value_default_mid_x 
+0x4517 016562 call remote_car_rocker_get_y 
+0x4518 016563 storet 2 ,mem_current_vdd_value_default_mid_y 
+0x4519 016564 rtn 
+:      016565 remote_car_rocker_data_get:
+:      016566 remote_car_rocker_get_x:
+0x451a 016567 fetch 2 ,mem_current_vdd_value_default_mid_x 
+0x451b 016568 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x451c 016569 call remote_car_get_adc_from_gpio6 
+0x451d 016570 call remote_car_rocker_get_value 
+0x451e 016571 store 1 ,mem_rocker_status 
+:      016572 remote_car_rocker_get_y:
+0x451f 016573 fetch 2 ,mem_current_vdd_value_default_mid_y 
+0x4520 016574 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x4521 016575 call remote_car_get_adc_from_gpio7 
+0x4522 016576 call remote_car_rocker_get_value 
+0x4523 016577 store 1 ,mem_rocker_status + 1 
+0x4524 016578 rtn 
+:      016579 remote_car_rocker_get_value:
+0x4525 016580 fetch 2 ,mem_current_vdd_default_range 
+0x4526 016581 copy pdata ,rega 
+0x4527 016582 fetch 2 ,mem_current_vdd_value_default_mid_temp 
+0x4528 016583 call remote_car_rocker_mid_value_adjust 
+0x4529 016584 fetch 1 ,mem_rocker_work_status 
+0x452a 016585 nbranch remote_car_rocker_translate_key ,blank 
+0x452b 016586 nrtn positive 
+0x452c 016587 fetcht 2 ,mem_current_vdd_value_default_mid_temp 
+0x452d 016588 rtn 
+:      016589 remote_car_rocker_mid_value_adjust:
+0x452e 016590 isub temp ,pdata 
+0x452f 016591 branch remote_car_rocker_mid_adjust_positive ,positive 
+0x4530 016592 sub pdata ,0 ,pdata 
+0x4531 016593 jam 1 ,mem_rocker_negative_flag 
+0x4532 016594 isub rega ,null 
+0x4533 016595 rtn 
+:      016596 remote_car_rocker_mid_adjust_positive:
+0x4534 016597 jam 0 ,mem_rocker_negative_flag 
+0x4535 016598 isub rega ,null 
+0x4536 016599 rtn 
+:      016600 remote_car_rocker_translate_key:
+0x4537 016601 nbranch remote_car_rocker_middle_key ,positive 
+0x4538 016602 fetch 1 ,mem_rocker_negative_flag 
+0x4539 016603 nbranch remote_car_rocker_negative_key ,blank 
+:      016604 remote_car_rocker_positive_key:
+0x453a 016605 setarg rocker_positive_key 
+0x453b 016606 rtn 
+:      016607 remote_car_rocker_negative_key:
+0x453c 016608 setarg rocker_negative_key 
+0x453d 016609 rtn 
+:      016610 remote_car_rocker_middle_key:
+0x453e 016611 setarg rocker_middle_key 
+0x453f 016612 rtn 
+:      016613 remote_car_get_adc_from_gpio6:
+0x4540 016614 jam 0x33 ,mem_adc_channel 
+0x4541 016615 branch adc_set_mode 
+:      016616 remote_car_get_adc_from_gpio7:
+0x4542 016617 jam 0x34 ,mem_adc_channel 
+0x4543 016618 branch adc_set_mode 
+:      016621 remote_car_rocker_process:
+0x4544 016622 fetch 1 ,mem_remote_car_config_check_way 
+0x4545 016623 rtnne car_remote_check_rocker 
+:      016624 remote_car_read_rocker_check_start:
+0x4546 016625 bpatch patch1e_2 ,mem_patch1e 
+0x4547 016626 jam 1 ,mem_rocker_work_status 
+0x4548 016627 call remote_car_rocker_data_get 
+0x4549 016628 fetch 2 ,mem_rocker_status 
+0x454a 016629 fetcht 2 ,mem_rocker_last_status 
+0x454b 016630 isub temp ,null 
+0x454c 016631 rtn zero 
+0x454d 016632 store 2 ,mem_rocker_last_status 
+0x454e 016633 call remote_car_rocker_x_to_key 
+0x454f 016634 branch remote_car_rocker_y_to_key 
+:      016636 remote_car_rocker_x_to_key:
+0x4550 016637 fetch 1 ,mem_rocker_x_status 
+0x4551 016638 branch rocker_to_queue_set_0 ,blank 
+0x4552 016639 increase -1 ,pdata 
+0x4553 016640 branch remote_car_rocker_to_key 
+:      016641 remote_car_rocker_y_to_key:
+0x4554 016642 fetch 1 ,mem_rocker_y_status 
+0x4555 016643 branch rocker_to_queue_set_2 ,blank 
+0x4556 016644 increase 1 ,pdata 
+:      016645 remote_car_rocker_to_key:
+0x4557 016646 copy pdata ,queue 
+0x4558 016647 arg 1 ,rega 
+0x4559 016648 branch remote_car_send_key_data 
+:      016650 rocker_to_queue_set_0:
+0x455a 016651 arg 0 ,queue 
+0x455b 016652 arg 0 ,rega 
+0x455c 016653 branch remote_car_send_key_data 
+:      016654 rocker_to_queue_set_2:
+0x455d 016655 arg 2 ,queue 
+0x455e 016656 arg 0 ,rega 
+0x455f 016657 branch remote_car_send_key_data 
+:      016659 remote_car_send_key_data:
+0x4560 016660 copy rega ,pdata 
+0x4561 016661 store 1 ,mem_remote_key_status 
+0x4562 016662 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4563 016663 beq power_on ,g24_auto_pair_start 
+0x4564 016664 fetch 2 ,mem_remote_car_no_data_timeout 
+0x4565 016665 store 2 ,mem_remote_car_no_data_timer 
+0x4566 016666 fetch 1 ,mem_remote_key_status 
+0x4567 016667 branch remote_car_key_is_release ,blank 
+:      016668 remote_car_key_is_press:
+0x4568 016669 bpatch patch1e_3 ,mem_patch1e 
+0x4569 016670 arg 0 ,rega 
+0x456a 016671 call ui_led_on_global 
+:      016672 remote_car_attack_key_press:
+0x456b 016673 copy queue ,pdata 
+0x456c 016674 beq 4 ,remote_car_send_attack_key4_press 
+0x456d 016675 beq 5 ,remote_car_send_attack_key5_press 
+0x456e 016676 beq 6 ,remote_car_send_fire_key6_press 
+:      016679 remote_car_motor_key_press:
+0x456f 016680 call remote_car_device_layout_select 
+0x4570 016681 beq control_f_b_ten ,remote_car_single_motor_key_is_press 
+0x4571 016682 beq control_l_r_ten ,remote_car_double_motor_key_press 
+0x4572 016683 beq control_l_r_lr ,remote_car_single_motor_key_is_press 
+0x4573 016684 rtn 
+:      016686 remote_car_single_motor_key_is_press:
+0x4574 016687 copy queue ,pdata 
+0x4575 016688 beq 0 ,remote_car_send_motor1_key0_press 
+0x4576 016689 beq 1 ,remote_car_send_motor1_key1_press 
+0x4577 016690 beq 2 ,remote_car_send_motor2_key2_press 
+0x4578 016691 beq 3 ,remote_car_send_motor2_key3_press 
+0x4579 016692 rtn 
+:      016694 remote_car_double_motor_key_press:
+0x457a 016695 copy queue ,pdata 
+0x457b 016696 beq 0 ,remote_car_send_double_motor_key0_press 
+0x457c 016697 beq 1 ,remote_car_send_double_motor_key1_press 
+0x457d 016698 beq 2 ,remote_car_send_double_motor_key2_press 
+0x457e 016699 beq 3 ,remote_car_send_double_motor_key3_press 
+0x457f 016700 rtn 
+:      016702 remote_car_key_is_release:
+0x4580 016703 bpatch patch1e_4 ,mem_patch1e 
+0x4581 016704 arg 0 ,rega 
+0x4582 016705 call ui_led_off_global 
+:      016706 remote_car_attack_key_release:
+0x4583 016707 copy queue ,pdata 
+0x4584 016708 beq 4 ,remote_car_send_attack_key4_rel 
+0x4585 016709 beq 5 ,remote_car_send_attack_key5_rel 
+:      016712 remote_car_motor_key_release:
+0x4586 016713 call remote_car_device_layout_select 
+0x4587 016714 beq control_f_b_ten ,remote_car_single_motor_key_rel 
+0x4588 016715 beq control_l_r_ten ,remote_car_double_motor_key_rel 
+0x4589 016716 beq control_l_r_lr ,remote_car_single_motor_key_rel 
+0x458a 016717 rtn 
+:      016719 remote_car_device_layout_select:
+0x458b 016720 fetch 1 ,mem_remote_car_config_layout 
+0x458c 016721 fetcht 1 ,mem_remote_car_config_key_map 
+0x458d 016722 ior temp ,pdata 
+0x458e 016723 rtn 
+:      016726 remote_car_send_motor1_key0_press:
+0x458f 016727 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4590 016728 branch remote_car_send_key 
+:      016729 remote_car_send_motor1_key1_press:
+0x4591 016730 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x4592 016731 branch remote_car_send_key 
+:      016732 remote_car_send_motor2_key2_press:
+0x4593 016733 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4594 016734 branch remote_car_send_key 
+:      016735 remote_car_send_motor2_key3_press:
+0x4595 016736 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x4596 016737 branch remote_car_send_key 
+:      016740 remote_car_send_double_motor_key0_press:
+0x4597 016741 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4598 016742 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4599 016743 branch remote_car_send_key 
+:      016744 remote_car_send_double_motor_key1_press:
+0x459a 016745 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459b 016746 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x459c 016747 branch remote_car_send_key 
+:      016748 remote_car_send_double_motor_key2_press:
+0x459d 016749 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459e 016750 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x459f 016751 branch remote_car_send_key 
+:      016752 remote_car_send_double_motor_key3_press:
+0x45a0 016753 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x45a1 016754 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x45a2 016755 branch remote_car_send_key 
+:      016758 remote_car_send_attack_key4_press:
+0x45a3 016759 jam motor_positive ,mem_remote_car_24g_motor3_payload 
+0x45a4 016760 branch remote_car_send_key 
+:      016761 remote_car_send_attack_key5_press:
+0x45a5 016762 jam motor_negative ,mem_remote_car_24g_motor3_payload 
+0x45a6 016763 branch remote_car_send_key 
+:      016765 remote_car_send_fire_key6_press:
+0x45a7 016766 jam 0x01 ,mem_remote_car_24g_fire_send_payload 
+0x45a8 016767 branch remote_car_send_attack 
+:      016769 remote_car_single_motor_key_rel:
+0x45a9 016770 copy queue ,pdata 
+0x45aa 016771 beq 0 ,remote_car_send_motor1_key0_rel 
+0x45ab 016772 beq 1 ,remote_car_send_motor1_key1_rel 
+0x45ac 016773 beq 2 ,remote_car_send_motor2_key2_rel 
+0x45ad 016774 beq 3 ,remote_car_send_motor2_key3_rel 
+0x45ae 016775 rtn 
+:      016777 remote_car_double_motor_key_rel:
+0x45af 016778 copy queue ,pdata 
+0x45b0 016779 beq 0 ,remote_car_send_double_motor_key0_rel 
+0x45b1 016780 beq 1 ,remote_car_send_double_motor_key1_rel 
+0x45b2 016781 beq 2 ,remote_car_send_double_motor_key2_rel 
+0x45b3 016782 beq 3 ,remote_car_send_double_motor_key3_rel 
+0x45b4 016783 rtn 
+:      016785 remote_car_send_motor1_key0_rel:
+:      016786 remote_car_send_motor1_key1_rel:
+0x45b5 016787 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45b6 016788 branch remote_car_send_key 
+:      016789 remote_car_send_motor2_key2_rel:
+:      016790 remote_car_send_motor2_key3_rel:
+0x45b7 016791 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45b8 016792 branch remote_car_send_key 
+:      016794 remote_car_send_double_motor_key0_rel:
+:      016795 remote_car_send_double_motor_key1_rel:
+:      016796 remote_car_send_double_motor_key2_rel:
+:      016797 remote_car_send_double_motor_key3_rel:
+0x45b9 016798 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45ba 016799 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45bb 016800 branch remote_car_send_key 
+:      016802 remote_car_send_attack_key4_rel:
+:      016803 remote_car_send_attack_key5_rel:
+0x45bc 016804 jam motor_stop ,mem_remote_car_24g_motor3_payload 
+0x45bd 016805 branch remote_car_send_key 
+:      016807 remote_car_send_key:
+0x45be 016808 arg mem_remote_car_24g_motor_packet ,rega 
+0x45bf 016809 branch queue_push 
+:      016810 remote_car_send_attack:
+0x45c0 016811 arg mem_remote_car_24g_fire_packet ,rega 
+0x45c1 016812 branch queue_push 
+:      016814 remote_car_g24_package_data:
+0x45c2 016815 fetch 1 ,mem_remote_car_24g_pair_success_flag 
+0x45c3 016816 beq work_paired ,remote_car_g24_send_empty 
+0x45c4 016817 arg mem_remote_car_24g_tx_temp ,rega 
+0x45c5 016818 call queue_pop 
+0x45c6 016819 nbranch remote_car_moto_data ,user 
+:      016820 remote_car_g24_package_data_continue:
+0x45c7 016821 arg mem_remote_car_24g_tx_temp ,contr 
+0x45c8 016822 ifetch 1 ,contr 
+0x45c9 016823 copy pdata ,rega 
+0x45ca 016824 arg mem_remote_car_24g_tx_temp + 1 ,regb 
+0x45cb 016827 rtn 
+:      016829 remote_car_g24_send_empty:
+0x45cc 016830 jam 0 ,mem_remote_car_24g_pair_success_flag 
+0x45cd 016831 enable user 
+0x45ce 016832 arg 1 ,rega 
+0x45cf 016833 arg mem_remote_car_empty_packet ,regb 
+0x45d0 016834 rtn 
+:      016836 remote_car_moto_data:
+0x45d1 016837 fetch 1 ,mem_remote_car_24g_tx_temp + 3 
+0x45d2 016838 beq car_cmd_l_r_motor_control ,remote_car_moto_data_next 
+0x45d3 016839 beq car_cmd_f_b_motor_control ,remote_car_moto_data_next 
+0x45d4 016840 rtn 
+:      016841 remote_car_moto_data_next:
+0x45d5 016842 fetch 1 ,mem_remote_car_24g_tx_temp + 6 
+0x45d6 016843 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d7 016844 fetch 1 ,mem_remote_car_24g_tx_temp + 8 
+0x45d8 016845 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d9 016846 fetch 1 ,mem_remote_car_24g_tx_temp + 10 
+0x45da 016847 nbranch remote_car_moto_data_enable_user ,blank 
+0x45db 016848 rtn 
+:      016849 remote_car_moto_data_enable_user:
+0x45dc 016850 enable user 
+0x45dd 016851 branch remote_car_g24_package_data_continue 
+:      016859 shutter_init:
+0x45de 016860 rtn wake 
+0x45df 016861 hfetch 1 ,core_gpio_sel1 
+0x45e0 016862 and_into 0xfc ,pdata 
+0x45e1 016863 hstore 1 ,core_gpio_sel1 
+0x45e2 016864 setarg shutter_le_before_hibernate 
+0x45e3 016865 store 2 ,mem_cb_before_hibernate 
+0x45e4 016867 setarg shutter_process_lpm_before 
+0x45e5 016868 store 2 ,mem_cb_before_lpm 
+0x45e6 016870 setarg app_enter_hibernate 
+0x45e7 016871 store 2 ,mem_cb_discovry_timeout 
+0x45e8 016873 setarg shutter_process_idle 
+0x45e9 016874 store 2 ,mem_cb_idle_process 
+0x45ea 016876 setarg shutter_process_bb_event 
+0x45eb 016877 store 2 ,mem_cb_bb_event_process 
+0x45ec 016879 setarg shutter_le_scale_lpm_lock 
+0x45ed 016880 store 2 ,mem_cb_check_wakelock 
+0x45ee 016882 setarg ble_shutter_receive_data 
+0x45ef 016883 store 2 ,mem_cb_att_write 
+0x45f0 016885 setarg shutter_le_bb_event_timer 
+0x45f1 016886 store 2 ,mem_cb_event_timer 
+0x45f2 016888 setarg shutter_key_change 
+0x45f3 016889 store 2 ,mem_cb_shutter_keycan 
+0x45f4 016891 setarg shutter_soft_swtich_power_on 
+0x45f5 016892 store 2 ,mem_shutter_soft_switch_poweron_callback_function 
+0x45f6 016893 setarg shutter_soft_swtich_power_off 
+0x45f7 016894 store 2 ,mem_shutter_soft_switch_poweroff_callback_function 
+0x45f8 016896 call le_modified_name 
+0x45f9 016897 call shutter_load_bluetooth_config_by_user_config 
+0x45fa 016898 call shutter_init_bluetooth_config 
+0x45fb 016899 call shutter_init_param 
+0x45fc 016900 call keyscan_key_init 
+0x45fd 016901 call shutter_load_buffer_config_form_datarom 
+0x45fe 016902 call queue_init 
+0x45ff 016903 call ui_led_init_global 
+0x4600 016904 call shutter_load_bluetooth_config 
+0x4601 016905 call shutter_load_bluetooth_config_by_eeprom 
+0x4602 016907 bpatch patch1e_5 ,mem_patch1e 
+0x4603 016908 call classic_shutter_load_reconn_info 
+0x4604 016909 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4605 016910 beq hard_switch ,shutter_hart_swtich_power_on 
+0x4606 016911 fetch 1 ,mem_shutter_soft_switch_button_gpio 
+0x4607 016912 store 1 ,mem_ui_button_gpio 
+0x4608 016913 branch ui_soft_swtich_init 
+:      016916 shutter_hart_swtich_power_on:
+0x4609 016917 jam ui_button_gpio_disable ,mem_ui_button_gpio 
+0x460a 016918 jam ss_state_power_on ,mem_shutter_soft_switch_power_state 
+0x460b 016919 branch shutter_start_reconnect 
+:      016923 shutter_le_scale_lpm_lock:
+0x460c 016924 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x460d 016925 beq ss_state_power_off ,app_get_lpm_wake_lock 
+0x460e 016926 call l2cap_malloc_get_full_map 
+0x460f 016927 fetch 1 ,mem_used_map 
+0x4610 016928 nbranch app_get_lpm_wake_lock ,blank 
+0x4611 016929 branch app_put_lpm_wake_lock 
+:      016933 shutter_process_bb_event:
+0x4612 016934 copy regc ,pdata 
+0x4613 016936 beq bt_evt_bb_connected ,classic_shutter_process_baseband_connect 
+0x4614 016937 beq bt_evt_bb_disconnected ,classic_shutter_process_baseband_disconnect 
+0x4615 016938 beq bt_evt_reconn_failed ,classic_shutter_process_reconnect_failed 
+0x4616 016939 beq bt_evt_setup_complete ,classic_shutter_process_setup_complete 
+0x4617 016940 beq bt_evt_hid_connected ,classic_shutter_process_hid_connect 
+0x4618 016941 beq bt_evt_hid_disconnected ,classic_shutter_process_hid_disconnect 
+0x4619 016942 beq bt_evt_hid_handshake ,classic_shutter_process_hid_handshake 
+0x461a 016943 beq bt_evt_reconn_page_timeout ,classic_shutter_process_reconnect_page_timeout 
+0x461b 016944 beq bt_evt_virtual_cable_unplug ,classic_shutter_process_virtual_cable_unplug 
+0x461c 016945 beq bt_evt_remote_unsniff ,classic_shutter_process_remote_unsniff 
+0x461d 016946 beq bt_evt_store_nvram ,classic_shutter_process_store_reconnect_information 
+0x461e 016948 beq bt_evt_le_connected ,ble_shutter_process_baseband_connect 
+0x461f 016949 beq bt_evt_le_disconnected ,ble_shutter_process_baseband_disconnect 
+0x4620 016950 beq bt_evt_le_reconnect_complete ,ble_shutter_process_reconnect_complete 
+0x4621 016951 beq bt_evt_le_parse_conn_papa_update_rsp ,ble_shutter_process_parse_connect_parameter_update_response 
+0x4622 016953 beq bt_evt_button_long_pressed ,shutter_process_soft_swtich_button_long_press 
+0x4623 016954 beq bt_evt_button_down ,shutter_process_soft_swtich_button_down 
+0x4624 016955 beq bt_evt_button_up ,shutter_process_soft_swtich_button_up 
+0x4625 016956 rtn 
+:      016961 classic_shutter_process_baseband_connect:
+0x4626 016962 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4627 016963 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4628 016964 rtn 
+:      016967 classic_shutter_process_baseband_disconnect:
+0x4629 016968 call classic_shutter_disconnect_clear_flag 
+0x462a 016969 branch classic_shutter_process_reconnect_failed 
+:      016971 classic_shutter_disconnect_clear_flag:
+0x462b 016972 jam app_handshake_null ,mem_app_handshake_flag 
+0x462c 016973 jam 0 ,mem_hid_handshake_timer_count 
+0x462d 016974 jam 0 ,mem_unsniff2sniff_timer_count 
+0x462e 016975 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x462f 016976 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4630 016977 branch queue_init 
+:      016980 classic_shutter_process_reconnect_failed:
+0x4631 016981 call app_disconn_reason_clear 
+0x4632 016982 branch shutter_start_bluetooth_discovery 
+:      016985 classic_shutter_process_setup_complete:
+0x4633 016986 call shutter_stop_bluetooth_discovery 
+0x4634 016987 branch app_led_stop_blink 
+:      016990 classic_shutter_process_hid_connect:
+0x4635 016991 setarg hid_handshake_timeout 
+0x4636 016992 store 1 ,mem_hid_handshake_timer_count 
+0x4637 016993 rtn 
+:      016996 classic_shutter_process_hid_disconnect:
+0x4638 016997 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4639 016998 setarg flag_shutter_hid_disconn_timeout 
+0x463a 016999 store 1 ,mem_classic_shutter_hid_disconn_count 
+0x463b 017000 rtn 
+:      017003 classic_shutter_process_hid_handshake:
+0x463c 017004 fetch 1 ,mem_app_handshake_flag 
+0x463d 017005 rtneq app_handshake_done 
+0x463e 017006 jam app_handshake_done ,mem_app_handshake_flag 
+0x463f 017007 call app_lpm_mult_enable 
+0x4640 017008 call app_store_reconn_info 
+0x4641 017009 call shutter_stop_bluetooth_discovery 
+0x4642 017010 call app_led_off 
+0x4643 017011 branch app_bt_enter_sniff 
+:      017014 classic_shutter_process_reconnect_page_timeout:
+0x4644 017015 branch classic_shutter_process_reconnect_failed 
+:      017018 classic_shutter_process_virtual_cable_unplug:
+0x4645 017019 setarg flag_shutter_cable_unplug_timeout 
+0x4646 017020 store 1 ,mem_classic_shutter_cable_unplug_conut 
+0x4647 017021 rtn 
+:      017024 classic_shutter_process_remote_unsniff:
+0x4648 017025 branch app_start_auto_sniff 
+:      017029 classic_shutter_process_store_reconnect_information:
+0x4649 017030 arg nvram_eeprom_offset ,regb 
+0x464a 017031 fetch 1 ,mem_nv_data_number 
+0x464b 017032 mul32 pdata ,34 ,temp 
+0x464c 017033 fetch 2 ,mem_nv_data_ptr 
+0x464d 017034 copy pdata ,rega 
+0x464e 017035 branch iicd_write_eep_data 
+:      017037 classic_shutter_load_reconn_info:
+0x464f 017038 arg nvram_eeprom_offset ,regb 
+0x4650 017039 fetch 1 ,mem_shutter_bluetooth_type 
+0x4651 017040 rtnbit0 classic_shutter 
+0x4652 017041 fetch 1 ,mem_nv_data_number 
+0x4653 017042 rtn blank 
+0x4654 017043 mul32 pdata ,34 ,temp 
+0x4655 017044 fetch 2 ,mem_nv_data_ptr 
+0x4656 017045 copy pdata ,rega 
+0x4657 017046 branch iicd_read_eep_data 
+:      017050 ble_shutter_process_baseband_connect:
+0x4658 017051 call shutter_stop_bluetooth_discovery 
+0x4659 017052 setarg 0 
+0x465a 017053 store 2 ,mem_ble_shutter_reconn_timer 
+0x465b 017054 branch app_led_off 
+:      017057 ble_shutter_process_baseband_disconnect:
+0x465c 017058 call queue_init 
+0x465d 017059 jam 0 ,mem_ble_shutter_enable_notify 
+0x465e 017060 branch shutter_start_reconnect 
+:      017063 ble_shutter_process_reconnect_complete:
+0x465f 017064 call queue_init 
+0x4660 017065 jam 1 ,mem_ble_shutter_enable_notify 
+0x4661 017066 fetch 8 ,mem_ble_shutter_interval_min 
+0x4662 017067 store 8 ,mem_le_interval_min 
+0x4663 017068 call app_lpm_mult_enable 
+0x4664 017069 branch le_l2cap_tx_update_req 
+:      017072 ble_shutter_process_parse_connect_parameter_update_response:
+0x4665 017073 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x4666 017074 rtneq ble_signaling_connect_parameter_update_accepted 
+0x4667 017075 fetch 8 ,mem_ble_shutter_interval_min_new 
+0x4668 017076 rtn blank 
+0x4669 017077 store 8 ,mem_le_interval_min 
+0x466a 017078 branch le_l2cap_tx_update_req 
+:      017082 shutter_process_soft_swtich_button_long_press:
+0x466b 017083 branch ui_soft_switch_botton_long_press 
+:      017085 shutter_process_soft_swtich_button_down:
+0x466c 017086 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x466d 017087 rtneq hard_switch 
+0x466e 017088 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x466f 017089 rtnne ss_state_power_on 
+0x4670 017090 call shutter_store_currenct_led_state 
+0x4671 017091 branch app_led_on 
+:      017093 shutter_store_currenct_led_state:
+0x4672 017094 jam 1 ,mem_shutter_soft_swtich_botton_down 
+0x4673 017095 arg 11 ,loopcnt 
+0x4674 017096 arg mem_shutter_soft_swtich_led_struct_temp ,contw 
+0x4675 017097 arg mem_shutter_led_struct_app_led ,contr 
+0x4676 017098 branch memcpy 
+:      017100 shutter_process_soft_swtich_button_up:
+0x4677 017101 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4678 017102 rtneq hard_switch 
+0x4679 017103 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x467a 017104 beq ss_state_power_on ,shutter_load_currenct_led_state 
+0x467b 017105 branch ui_soft_switch_botton_up 
+:      017107 shutter_load_currenct_led_state:
+0x467c 017108 fetch 1 ,mem_shutter_soft_swtich_botton_down 
+0x467d 017109 rtnne 1 
+0x467e 017110 jam 0 ,mem_shutter_soft_swtich_botton_down 
+0x467f 017111 fetch 2 ,mem_ui_state_map 
+0x4680 017112 bbit1 ui_state_bt_connected ,app_led_off 
+0x4681 017113 bbit1 ui_state_ble_connected ,app_led_off 
+0x4682 017114 arg 11 ,loopcnt 
+0x4683 017115 arg mem_shutter_soft_swtich_led_struct_temp ,contr 
+0x4684 017116 arg mem_shutter_led_struct_app_led ,contw 
+0x4685 017117 branch memcpy 
+:      017122 shutter_le_bb_event_timer:
+0x4686 017124 call shutter_check_sleep_timer 
+0x4687 017127 call shutter_check_power_off_timer 
+0x4688 017130 call classic_shutter_check_unplug_timer 
+0x4689 017131 call classic_shutter_hid_handshake_timer 
+0x468a 017132 call classic_shutter_hid_disconn_timer 
+0x468b 017135 branch ble_shutter_reconn_timer 
+:      017139 shutter_check_sleep_timer:
+0x468c 017140 arg mem_shutter_sleep_timer ,regc 
+0x468d 017141 arg shutter_sleep_timeout ,regb 
+0x468e 017142 branch timer_single_step_2b 
+:      017143 shutter_sleep_timeout:
+0x468f 017144 jam ss_state_power_off ,mem_shutter_soft_switch_power_state 
+0x4690 017145 call app_led_off 
+0x4691 017146 call shutter_disconnect_current_connection 
+0x4692 017147 branch shutter_wait_power_off 
+:      017150 shutter_check_power_off_timer:
+0x4693 017151 arg mem_shutter_power_off_timer ,regc 
+0x4694 017152 arg shutter_check_power_off_timeout ,regb 
+0x4695 017153 branch timer_single_step 
+:      017155 shutter_check_power_off_timeout:
+0x4696 017156 fetch 2 ,mem_ui_state_map 
+0x4697 017157 bbit1 ui_state_ble_connected ,shutter_wait_power_off 
+0x4698 017158 bbit1 ui_state_bt_connected ,shutter_wait_power_off 
+0x4699 017159 fetch 1 ,mem_shutter_led_struct_app_led_type 
+0x469a 017160 beq ui_led_state_blink_start ,shutter_wait_power_off 
+0x469b 017161 beq ui_led_state_blink_lighting ,shutter_wait_power_off 
+0x469c 017162 beq ui_led_state_blink_darking ,shutter_wait_power_off 
+0x469d 017163 branch app_enter_hibernate 
+:      017167 classic_shutter_check_unplug_timer:
+0x469e 017168 arg mem_classic_shutter_cable_unplug_conut ,regc 
+0x469f 017169 arg classic_shutter_unplug_timeout ,regb 
+0x46a0 017170 branch timer_single_step 
+:      017172 classic_shutter_unplug_timeout:
+0x46a1 017173 fetch 1 ,mem_control_tasks 
+0x46a2 017174 set1 l2cap_disconnect_interrupt ,pdata 
+0x46a3 017175 set1 l2cap_disconnect_control ,pdata 
+0x46a4 017176 store 1 ,mem_control_tasks 
+0x46a5 017177 rtn 
+:      017179 classic_shutter_hid_handshake_timer:
+0x46a6 017180 arg mem_hid_handshake_timer_count ,regc 
+0x46a7 017181 arg classic_shutter_process_hid_handshake ,regb 
+0x46a8 017182 branch timer_single_step 
+:      017184 classic_shutter_hid_disconn_timer:
+0x46a9 017185 arg mem_classic_shutter_hid_disconn_count ,regc 
+0x46aa 017186 arg app_bt_disconnect ,regb 
+0x46ab 017187 branch timer_single_step 
+:      017192 ble_shutter_reconn_timer:
+0x46ac 017193 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46ad 017194 rtnne ss_state_power_on 
+0x46ae 017195 arg mem_ble_shutter_reconn_timer ,regc 
+0x46af 017196 arg shutter_start_bluetooth_discovery ,regb 
+0x46b0 017197 branch timer_single_step_2b 
+:      017200 shutter_process_idle:
+0x46b1 017201 call shutter_send_data_to_master 
+0x46b2 017202 branch keyscan_key_process 
+:      017205 shutter_process_lpm_before:
+0x46b3 017206 branch keyscan_process_lpm_before 
+:      017208 shutter_le_before_hibernate:
+0x46b4 017209 call gpio_set_before_lpm_common 
+0x46b5 017210 branch shutter_process_lpm_before 
+:      017216 shutter_stop_bluetooth_discovery:
+0x46b6 017217 fetch 1 ,mem_shutter_bluetooth_type 
+0x46b7 017218 bbit1 classic_shutter ,classic_shutter_stop_bluetooth_discovery 
+0x46b8 017219 bbit1 ble_shutter ,ble_shutter_stop_bluetooth_discovery 
+0x46b9 017220 rtn 
+:      017222 ble_shutter_stop_bluetooth_discovery:
+0x46ba 017223 fetch 2 ,mem_ble_shutter_connect_timeout 
+0x46bb 017224 store 2 ,mem_shutter_sleep_timeout 
+0x46bc 017225 store 2 ,mem_shutter_sleep_timer 
+0x46bd 017226 branch app_ble_stop_adv 
+:      017228 classic_shutter_stop_bluetooth_discovery:
+0x46be 017229 fetch 2 ,mem_classic_shutter_connect_timeout 
+0x46bf 017230 store 2 ,mem_shutter_sleep_timeout 
+0x46c0 017231 store 2 ,mem_shutter_sleep_timer 
+0x46c1 017232 branch app_bt_stop_discovery 
+:      017234 shutter_start_bluetooth_discovery:
+0x46c2 017235 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46c3 017236 rtnne ss_state_power_on 
+0x46c4 017237 fetch 1 ,mem_shutter_bluetooth_type 
+0x46c5 017238 bbit1 classic_shutter ,classic_shutter_start_discovery 
+0x46c6 017239 bbit1 ble_shutter ,ble_shutter_start_discovery 
+0x46c7 017240 rtn 
+:      017242 classic_shutter_start_discovery:
+0x46c8 017243 fetch 2 ,mem_classic_shutter_discovery_timeout ,
+0x46c9 017244 store 2 ,mem_shutter_sleep_timeout 
+0x46ca 017245 store 2 ,mem_shutter_sleep_timer 
+0x46cb 017246 branch app_bt_start_discovery_short 
+:      017248 ble_shutter_start_discovery:
+0x46cc 017249 fetch 2 ,mem_ui_state_map 
+0x46cd 017250 rtnbit1 ui_state_ble_connected 
+0x46ce 017251 fetch 2 ,mem_ble_shutter_discovery_timeout 
+0x46cf 017252 store 2 ,mem_shutter_sleep_timeout 
+0x46d0 017253 store 2 ,mem_shutter_sleep_timer 
+0x46d1 017254 fetch 2 ,mem_ble_shutter_discovery_adv_interval 
+0x46d2 017255 call shutter_ble_adv_interval_set 
+0x46d3 017256 call app_led_start_blink 
+0x46d4 017257 fetch 4 ,mem_ble_shutter_discovery_blink_on_time 
+0x46d5 017258 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46d6 017259 fetch 2 ,mem_ui_state_map 
+0x46d7 017260 rtnbit1 ui_state_ble_adv 
+0x46d8 017261 branch app_ble_start_adv 
+:      017264 shutter_start_reconnect:
+0x46d9 017265 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46da 017266 rtnne ss_state_power_on 
+0x46db 017267 fetch 1 ,mem_shutter_bluetooth_type 
+0x46dc 017268 bbit1 classic_shutter ,classic_shutter_start_reconnect 
+0x46dd 017269 bbit1 ble_shutter ,ble_shutter_start_reconnect 
+0x46de 017270 rtn 
+:      017272 classic_shutter_start_reconnect:
+0x46df 017273 call app_check_reconn_target 
+0x46e0 017274 branch shutter_start_bluetooth_discovery ,blank 
+0x46e1 017275 call app_led_on 
+0x46e2 017276 call app_bt_stop_discovery 
+0x46e3 017277 branch app_bt_start_reconnect 
+:      017279 ble_shutter_start_reconnect:
+0x46e4 017280 fetch 2 ,mem_ble_shutter_reconn_timer 
+0x46e5 017281 fetcht 2 ,mem_ble_shutter_reconn_timeout 
+0x46e6 017282 storet 2 ,mem_ble_shutter_reconn_timer 
+0x46e7 017283 nrtn blank 
+0x46e8 017284 fetch 2 ,mem_ble_shutter_reconn_dav_interval 
+0x46e9 017285 call shutter_ble_adv_interval_set 
+0x46ea 017286 call app_led_start_blink 
+0x46eb 017287 fetch 4 ,mem_ble_shutter_reconn_blink_on_time 
+0x46ec 017288 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46ed 017289 fetch 2 ,mem_ui_state_map 
+0x46ee 017290 rtnbit1 ui_state_ble_adv 
+0x46ef 017291 branch app_ble_start_adv 
+:      017294 shutter_ble_adv_interval_set:
+0x46f0 017295 store 2 ,mem_lpm_interval 
+0x46f1 017296 increase -4 ,pdata 
+0x46f2 017297 store 2 ,mem_le_adv_interval 
+0x46f3 017298 rtn 
+:      017301 shutter_disconnect_current_connection:
+0x46f4 017302 fetch 2 ,mem_ui_state_map 
+0x46f5 017303 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x46f6 017304 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x46f7 017305 branch shutter_stop_bluetooth_discovery 
+:      017309 app_check_reconn_target:
+0x46f8 017310 fetch 1 ,mem_nv_data_number 
+0x46f9 017311 copy pdata ,loopcnt 
+0x46fa 017312 fetch 2 ,mem_nv_data_ptr 
+0x46fb 017313 copy pdata ,rega 
+:      017314 app_check_reconn_target_loop:
+0x46fc 017315 ifetch 2 ,rega 
+0x46fd 017316 beq 0 ,found_reconn_device 
+0x46fe 017317 increase nv_data_len ,rega 
+0x46ff 017318 loop app_check_reconn_target_loop 
+0x4700 017319 branch enable_blank 
+:      017321 found_reconn_device:
+0x4701 017322 ifetch 6 ,contr 
+0x4702 017323 store 6 ,mem_hci_plap 
+0x4703 017324 increase 10 ,contr 
+0x4704 017325 arg mem_link_key ,contw 
+0x4705 017326 call memcpy16 
+0x4706 017327 call check_link_key_load 
+0x4707 017328 branch disable_blank 
+:      017334 shutter_check_data_enable:
+0x4708 017335 call disable_user 
+0x4709 017336 fetch 2 ,mem_ui_state_map 
+0x470a 017337 bbit1 ui_state_bt_connected ,shutter_check_bt_data_enable 
+0x470b 017338 bbit1 ui_state_ble_connected ,shutter_check_ble_data_enable 
+0x470c 017339 rtn 
+:      017341 shutter_check_bt_data_enable:
+0x470d 017342 fetch 1 ,mem_hid_interrupt_state 
+0x470e 017343 rtnne 0x3f 
+0x470f 017344 branch enable_user 
+:      017346 shutter_check_ble_data_enable:
+0x4710 017347 fetch 1 ,mem_ble_shutter_enable_notify 
+0x4711 017348 rtn blank 
+0x4712 017349 branch enable_user 
+:      017354 shutter_check_bluetooth_conn:
+0x4713 017355 call disable_user 
+0x4714 017356 fetch 2 ,mem_ui_state_map 
+0x4715 017357 rtnbit1 ui_state_bt_connected 
+0x4716 017358 rtnbit1 ui_state_ble_connected 
+0x4717 017359 branch enable_user 
+:      017363 shutter_change_bluetooth_status_bt_disconn:
+0x4718 017364 fetch 1 ,mem_shutter_bluetooth_type 
+0x4719 017365 bbit1 classic_shutter ,classic_shutter_change_bluetooth_status_bt_disconn 
+0x471a 017366 bbit1 ble_shutter ,ble_shutter_change_bluetooth_status_bt_disconn 
+0x471b 017367 rtn 
+:      017369 classic_shutter_change_bluetooth_status_bt_disconn:
+0x471c 017370 fetch 1 ,mem_scan_mode 
+0x471d 017371 rtnne 0x03 
+0x471e 017372 branch shutter_start_reconnect 
+:      017374 ble_shutter_change_bluetooth_status_bt_disconn:
+0x471f 017375 branch shutter_start_reconnect 
+:      017378 shutter_check_send_data:
+0x4720 017379 disable user2 
+0x4721 017380 fetch 2 ,mem_shutter_sleep_timeout 
+0x4722 017381 store 2 ,mem_shutter_sleep_timer 
+0x4723 017383 call shutter_check_bluetooth_conn 
+0x4724 017384 branch shutter_change_bluetooth_status_bt_disconn ,user 
+0x4725 017386 call shutter_check_data_enable 
+0x4726 017387 nrtn user 
+0x4727 017388 enable user2 
+0x4728 017389 rtn 
+:      017393 shutter_key_change:
+0x4729 017394 call shutter_check_send_data 
+0x472a 017395 nrtn user2 
+0x472b 017396 deposit rega 
+0x472c 017397 branch shutter_key_release ,blank 
+:      017398 shutter_key_press:
+0x472d 017399 call app_led_on 
+0x472e 017400 arg mem_key0_press ,regc 
+0x472f 017401 branch push_queue_press_or_release 
+:      017403 shutter_key_release:
+0x4730 017404 call app_led_off 
+0x4731 017405 arg mem_key0_release ,regc 
+:      017407 push_queue_press_or_release:
+0x4732 017408 arg max_queue_num ,pdata 
+0x4733 017409 imul32 queue ,pdata 
+0x4734 017410 iadd regc ,regc 
+:      017413 push_buffer_in_queue:
+0x4735 017414 ifetch 1 ,regc 
+0x4736 017415 rtn blank 
+0x4737 017416 call queue_push_one_byte 
+0x4738 017417 increase 1 ,regc 
+0x4739 017418 branch push_buffer_in_queue 
+:      017421 shutter_send_data_to_master:
+0x473a 017422 fetch 2 ,mem_ui_state_map 
+0x473b 017423 bbit1 ui_state_ble_connected ,pop_queue_to_ble_data 
+0x473c 017424 bbit1 ui_state_bt_connected ,pop_queue_to_classic_data 
+0x473d 017425 rtn 
+:      017427 pop_queue_to_ble_data:
+0x473e 017428 call le_fifo_check_nearly_full 
+0x473f 017429 nrtn blank 
+0x4740 017430 call queue_pop_one_byte 
+0x4741 017431 nrtn user 
+0x4742 017432 pincrease -1 
+0x4743 017433 mul32 pdata ,shutter_ble_data_buffer ,pdata 
+0x4744 017434 arg mem_ble_data_buffer1 ,temp 
+0x4745 017435 iadd temp ,contr 
+:      017436 le_send_notify_from_list:
+0x4746 017437 ifetch 1 ,contr 
+0x4747 017438 copy pdata ,rega 
+0x4748 017439 ifetcht 2 ,contr 
+0x4749 017440 call store_contr 
+0x474a 017441 call le_att_malloc_tx_notify 
+0x474b 017442 copy rega ,loopcnt 
+0x474c 017443 call get_contr 
+0x474d 017444 branch memcpy 
+:      017447 pop_queue_to_classic_data:
+0x474e 017448 call l2cap_malloc_is_fifo_nearly_full 
+0x474f 017449 nrtn blank 
+0x4750 017450 call queue_pop_one_byte 
+0x4751 017451 nrtn user 
+0x4752 017452 pincrease -1 
+0x4753 017453 mul32 pdata ,shutter_classic_data_buffer ,pdata 
+0x4754 017454 arg mem_classic_data_buffer1 ,temp 
+0x4755 017455 iadd temp ,contr 
+0x4756 017456 ifetch 5 ,contr 
+0x4757 017457 store 5 ,mem_classic_data_buffer 
+:      017458 classic_send_hid_data:
+0x4758 017459 fetch 1 ,mem_classic_data_buffer 
+0x4759 017460 copy pdata ,rega 
+0x475a 017461 call hid_malloc_tx_buff 
+0x475b 017462 fetch 2 ,mem_hid_int_remote_cid 
+0x475c 017463 istore 2 ,contw 
+0x475d 017464 setarg 0xa1 
+0x475e 017465 istore 1 ,contw 
+0x475f 017466 fetch 4 ,mem_classic_data_buffer + 1 
+0x4760 017467 istore 9 ,contw 
+0x4761 017468 rtn 
+:      017472 queue_push_one_byte:
+0x4762 017473 store 1 ,mem_pdatatemp 
+0x4763 017474 arg mem_pdatatemp ,rega 
+0x4764 017475 branch queue_push 
+:      017477 queue_pop_one_byte:
+0x4765 017478 arg mem_pdatatemp ,rega 
+0x4766 017479 call queue_pop 
+0x4767 017480 nrtn user 
+0x4768 017481 fetch 1 ,mem_pdatatemp 
+0x4769 017482 rtn 
+:      017485 ble_shutter_receive_data:
+0x476a 017486 fetch 2 ,mem_le_att_handle 
+0x476b 017487 beq gatt_keyboard_write_handle ,ble_shutter_process_reconnect_complete 
+0x476c 017488 rtn 
+:      017490 shutter_init_param:
+0x476d 017491 setarg 0x02 
+0x476e 017492 store 1 ,mem_shutter_power_off_timeout 
+0x476f 017494 setarg 0x00200008 
+0x4770 017495 store 4 ,mem_ble_shutter_interval_min 
+0x4771 017496 setarg 0x012c0005 
+0x4772 017497 istore 4 ,contw 
+0x4773 017500 jam 0x17 ,mem_le_local_mtu 
+0x4774 017503 setarg 0x1b 
+0x4775 017504 store 2 ,mem_le_pairing_handle 
+0x4776 017505 call le_set_config_fixed_ltk 
+0x4777 017506 call le_set_fixed_ltk 
+0x4778 017507 call le_set_justwork 
+0x4779 017508 branch le_set_config_read_authentication 
+:      017511 shutter_load_buffer_config_form_datarom:
+0x477a 017513 arg ble_key_value_list_size ,loopcnt 
+0x477b 017514 arg mem_ble_data_buffer1 ,contw 
+0x477c 017515 arg ble_shutter_key_value_list ,contr 
+0x477d 017516 call memcpy_fast 
+0x477e 017517 arg bt_key_value_list_size ,loopcnt 
+0x477f 017518 arg mem_classic_data_buffer1 ,contw 
+0x4780 017519 arg classic_shutter_key_value_list ,contr 
+0x4781 017520 branch memcpy_fast 
+:      017523 shutter_load_ble_gatt_form_datarom:
+0x4782 017524 arg ble_gatt_list_size ,loopcnt 
+0x4783 017525 arg ble_shutter_gatt_list ,contr 
+0x4784 017526 branch memcpy_fast 
+:      017529 shutter_load_bt_sdp_form_datarom:
+0x4785 017530 arg bt_sdp_list_size ,loopcnt 
+0x4786 017531 arg classic_shutter_sdp_list ,contr 
+0x4787 017532 branch memcpy_fast 
+:      017536 shutter_init_bluetooth_config:
+0x4788 017537 call shutter_check_load_config_flag 
+0x4789 017538 nrtn user 
+0x478a 017539 fetch 1 ,mem_shutter_config_select_gpio1 
+0x478b 017540 call shutter_init_bluetooth_config_gpio_input 
+0x478c 017541 fetch 1 ,mem_shutter_config_select_gpio2 
+0x478d 017542 call shutter_init_bluetooth_config_gpio_input 
+0x478e 017543 fetch 1 ,mem_shutter_config_select_gpio3 
+0x478f 017544 branch shutter_init_bluetooth_config_gpio_input 
+:      017546 shutter_init_bluetooth_config_gpio_input:
+0x4790 017547 rtn blank 
+0x4791 017548 or pdata ,0x80 ,temp 
+0x4792 017549 branch gpio_config_input_nowake 
+:      017552 shutter_load_bluetooth_config:
+0x4793 017553 call shutter_check_load_config_flag 
+0x4794 017554 nrtn user 
+0x4795 017555 call shutter_load_bluetooth_config_label 
+0x4796 017556 branch shutter_load_bluetooth_config_by_otp 
+:      017558 shutter_load_bluetooth_config_label:
+0x4797 017559 arg 0 ,rega 
+0x4798 017560 fetch 1 ,mem_shutter_config_select_gpio1 
+0x4799 017561 call shutter_load_bluetooth_config_read_gpio_input 
+0x479a 017562 nsetflag blank ,0 ,rega 
+0x479b 017563 fetch 1 ,mem_shutter_config_select_gpio2 
+0x479c 017564 call shutter_load_bluetooth_config_read_gpio_input 
+0x479d 017565 nsetflag blank ,1 ,rega 
+0x479e 017566 fetch 1 ,mem_shutter_config_select_gpio3 
+0x479f 017567 call shutter_load_bluetooth_config_read_gpio_input 
+0x47a0 017568 nsetflag blank ,2 ,rega 
+0x47a1 017569 copy rega ,pdata 
+0x47a2 017570 store 1 ,mem_shutter_config_label 
+0x47a3 017571 fetch 1 ,mem_shutter_config_size 
+0x47a4 017572 imul32 rega ,pdata 
+0x47a5 017573 fetcht 2 ,mem_shutter_config_otp_base_address 
+0x47a6 017574 iadd temp ,pdata 
+0x47a7 017575 store 2 ,mem_shutter_config_otp_addr 
+0x47a8 017576 rtn 
+:      017578 shutter_load_bluetooth_config_read_gpio_input:
+0x47a9 017579 rtn blank 
+0x47aa 017580 or pdata ,0x80 ,temp 
+0x47ab 017581 call gpio_get_bit 
+0x47ac 017582 nbranch enable_blank ,true 
+0x47ad 017583 branch disable_blank 
+:      017586 shutter_check_load_config_flag:
+0x47ae 017587 call disable_user 
+0x47af 017588 fetch 1 ,mem_shutter_config_user_size 
+0x47b0 017589 nrtn blank 
+0x47b1 017590 fetch 1 ,mem_shutter_config_enable 
+0x47b2 017591 rtn blank 
+0x47b3 017592 branch enable_user 
+:      017595 shutter_load_bluetooth_config_by_otp:
+0x47b4 017596 call otp_enable_chgpump 
+0x47b5 017597 fetch 2 ,mem_shutter_config_otp_addr 
+0x47b6 017598 arg mem_shutter_config_data_temp ,rega 
+0x47b7 017599 fetcht 1 ,mem_shutter_config_size 
+0x47b8 017600 call otpd_read_data 
+0x47b9 017601 call otp_disable_chgpump 
+:      017602 shutter_load_bluetooth_config_store_name:
+0x47ba 017603 fetch 1 ,mem_shutter_config_data_temp 
+0x47bb 017604 copy pdata ,loopcnt 
+0x47bc 017605 store 1 ,mem_le_name_len 
+0x47bd 017606 call memcpy_fast 
+0x47be 017607 fetch 1 ,mem_shutter_config_data_temp 
+0x47bf 017608 copy pdata ,loopcnt 
+0x47c0 017609 store 1 ,mem_local_name_length 
+0x47c1 017610 call memcpy_fast 
+0x47c2 017611 ifetch 1 ,contr 
+0x47c3 017612 store 1 ,mem_shutter_key_num 
+0x47c4 017613 ifetch 1 ,contr 
+0x47c5 017614 store 1 ,mem_shutter_hard_soft_switch_case 
+0x47c6 017615 rtn 
+:      017618 shutter_load_bluetooth_config_by_eeprom:
+0x47c7 017619 fetch 1 ,mem_shutter_bluetooth_type 
+0x47c8 017620 rtnbit0 classic_shutter 
+0x47c9 017621 arg 3 ,temp 
+0x47ca 017622 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47cb 017623 copy pdata ,regb 
+0x47cc 017624 arg mem_shutter_config_eeprom_start_flag ,rega 
+0x47cd 017625 call iicd_read_eep_data 
+0x47ce 017626 fetcht 2 ,mem_shutter_config_eeprom_start_flag 
+0x47cf 017627 setarg shutter_eeprom_config_crc 
+0x47d0 017628 isub temp ,null 
+0x47d1 017629 nrtn zero 
+0x47d2 017630 fetch 1 ,mem_shutter_config_user_size 
+0x47d3 017631 rtn blank 
+0x47d4 017632 copy pdata ,temp 
+0x47d5 017633 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47d6 017634 add pdata ,3 ,regb 
+0x47d7 017635 arg mem_shutter_config_data_temp ,rega 
+0x47d8 017636 call iicd_read_eep_data 
+0x47d9 017637 branch shutter_store_config 
+:      017639 shutter_load_bluetooth_config_by_user_config:
+0x47da 017640 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47db 017641 rtn blank 
+0x47dc 017642 call otp_enable_chgpump 
+0x47dd 017643 arg 1 ,temp 
+0x47de 017644 arg mem_shutter_config_user_size ,rega 
+0x47df 017645 call otpd_read_data 
+0x47e0 017647 fetch 1 ,mem_shutter_config_user_size 
+0x47e1 017648 rtn blank 
+0x47e2 017650 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47e3 017651 pincrease 1 
+0x47e4 017652 arg mem_shutter_config_data_temp ,rega 
+0x47e5 017653 fetcht 1 ,mem_shutter_config_user_size 
+0x47e6 017654 call otpd_read_data 
+0x47e7 017655 call otp_disable_chgpump 
+:      017656 shutter_store_config:
+0x47e8 017657 call shutter_load_bluetooth_config_store_name 
+:      017658 shutter_load_bluetooth_config_custom:
+0x47e9 017659 ifetch 2 ,contr 
+0x47ea 017660 rtn blank 
+0x47eb 017661 copy pdata ,contw 
+0x47ec 017662 ifetcht 1 ,contr 
+0x47ed 017663 copy temp ,loopcnt 
+0x47ee 017664 call memcpy 
+0x47ef 017665 branch shutter_load_bluetooth_config_custom 
+:      017669 shutter_random_mac_addr:
+0x47f0 017670 fetch 1 ,mem_shutter_bluetooth_type 
+0x47f1 017671 rtnbit0 classic_shutter 
+0x47f2 017672 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47f3 017673 copy pdata ,regb 
+0x47f4 017674 arg 4 ,temp 
+0x47f5 017675 arg mem_shutter_random_mac_data_temp ,rega 
+0x47f6 017676 call iicd_read_eep_data 
+0x47f7 017677 fetch 1 ,mem_shutter_random_mac_data_temp 
+0x47f8 017678 bne 1 ,shutter_write_random_mac_addr_to_eeprom 
+:      017679 shutter_write_random_mac_addr_to_eeprom:
+0x47f9 017680 setarg 1 
+0x47fa 017681 store 1 ,mem_shutter_random_mac_data_temp 
+0x47fb 017682 force 3 ,loopcnt 
+0x47fc 017683 call generate_random_loop 
+0x47fd 017684 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47fe 017685 copy pdata ,regb 
+0x47ff 017686 arg 4 ,temp 
+0x4800 017687 arg mem_shutter_random_mac_data_temp ,rega 
+0x4801 017688 call iicd_write_eep_data 
+:      017689 shutter_write_random_mac_addr:
+0x4802 017690 fetch 3 ,mem_shutter_random_mac_data_temp + 1 
+0x4803 017691 store 3 ,mem_lap 
+0x4804 017692 store 3 ,mem_le_lap 
+0x4805 017693 rtn 
+:      017696 shutter_soft_swtich_power_on:
+0x4806 017697 branch shutter_start_reconnect 
+:      017700 shutter_soft_swtich_power_off:
+0x4807 017701 arg 0 ,rega 
+0x4808 017702 arg mem_shutter_power_off_led_style ,regc 
+0x4809 017703 call ui_led_set_style_global 
+0x480a 017704 call shutter_disconnect_current_connection 
+:      017705 shutter_wait_power_off:
+0x480b 017706 fetch 1 ,mem_shutter_power_off_timeout 
+0x480c 017707 store 1 ,mem_shutter_power_off_timer 
+0x480d 017708 rtn 
+:      017712 ui_soft_swtich_init:
+0x480e 017713 setarg ss_state_power_up 
+0x480f 017714 call ui_soft_swtich_init_power_on_time 
+0x4810 017715 jam ui_button_state_up ,mem_ui_button_last_state 
+0x4811 017716 call ui_button_init 
+0x4812 017717 call ui_button_polling 
+0x4813 017718 fetch 2 ,mem_ui_state_map 
+0x4814 017719 rtnbit1 ui_state_btn_down 
+0x4815 017720 branch app_enter_hibernate 
+:      017722 ui_soft_swtich_init_power_on_time:
+0x4816 017723 fetcht 2 ,mem_power_param_ptr 
+0x4817 017724 istore 1 ,temp 
+0x4818 017725 ifetch 1 ,contw 
+0x4819 017726 store 1 ,mem_ui_button_timeout 
+0x481a 017727 rtn 
+:      017730 ui_soft_switch_botton_up:
+0x481b 017731 fetch 2 ,mem_power_param_ptr 
+0x481c 017732 ifetch 1 ,pdata 
+0x481d 017733 rtnne ss_state_power_up 
+0x481e 017734 branch app_enter_hibernate 
+:      017737 ui_soft_switch_botton_long_press:
+0x481f 017738 fetcht 2 ,mem_power_param_ptr 
+0x4820 017739 ifetch 1 ,temp 
+0x4821 017740 beq ss_state_power_on ,ui_soft_switch_power_off 
+:      017741 ui_soft_switch_power_on:
+0x4822 017742 setarg ss_state_power_on 
+0x4823 017743 fetcht 2 ,mem_power_param_ptr 
+0x4824 017744 istore 1 ,temp 
+0x4825 017745 add temp ,ss_power_off_time ,contr 
+0x4826 017746 ifetch 1 ,contr 
+0x4827 017747 istore 1 ,mem_ui_button_timeout 
+0x4828 017748 ifetch 2 ,contr 
+0x4829 017749 branch callback_func 
+:      017751 ui_soft_switch_power_off:
+0x482a 017752 setarg ss_state_power_off 
+0x482b 017753 call ui_soft_swtich_init_power_on_time 
+0x482c 017754 add temp ,ss_power_off_cb ,contr 
+0x482d 017755 ifetch 2 ,contr 
+0x482e 017756 branch app_enter_hibernate ,blank 
+0x482f 017757 branch callback_func 
+:      017763 shutter_byteswap:
+0x4830 017764 store 6 ,mem_tmp_buffer 
+0x4831 017765 fetch 1 ,mem_tmp_buffer 
+0x4832 017766 store 1 ,mem_tmp_buffer + 11 
+0x4833 017767 ifetch 1 ,contr 
+0x4834 017768 store 1 ,mem_tmp_buffer + 10 
+0x4835 017769 ifetch 1 ,contr 
+0x4836 017770 store 1 ,mem_tmp_buffer + 9 
+0x4837 017771 ifetch 1 ,contr 
+0x4838 017772 store 1 ,mem_tmp_buffer + 8 
+0x4839 017773 ifetch 1 ,contr 
+0x483a 017774 store 1 ,mem_tmp_buffer + 7 
+0x483b 017775 ifetch 1 ,contr 
+0x483c 017776 store 1 ,mem_tmp_buffer + 6 
+0x483d 017777 fetch 6 ,mem_tmp_buffer + 6 
+0x483e 017778 rtn 
+:      017780 shutter_random_addr_by_otp:
+0x483f 017781 call load_adc_init 
+0x4840 017782 fetch 1 ,mem_1v_adc_io_data 
+0x4841 017783 store 1 ,mem_le_lap 
+0x4842 017784 fetch 1 ,mem_5v_adc_hvin_data 
+0x4843 017785 istore 1 ,contw 
+0x4844 017786 fetch 1 ,mem_3v_adc_vinlpm_data 
+0x4845 017787 istore 1 ,contw 
+0x4846 017788 fetch 3 ,mem_le_lap 
+0x4847 017789 store 3 ,mem_lap 
+0x4848 017790 rtn 
+:      017802 sim_iic_read_eep_data:
+0x4849 017803 fetch 2 ,mem_eeprom_base 
+0x484a 017804 iadd regb ,pdata 
+0x484b 017805 byteswap pdata ,pdata 
+0x484c 017806 store 2 ,mem_addr_mi 
+0x484d 017807 copy temp ,regb 
+0x484e 017809 call sim_iic_start 
+0x484f 017810 setarg 0xa0 
+0x4850 017811 call sim_iic_send_byte 
+0x4851 017812 fetch 1 ,mem_addr_mi 
+0x4852 017813 call sim_iic_send_byte 
+0x4853 017814 bmark1 mark_eeprom_size ,sim_iic_read_eep_data_2k 
+0x4854 017815 fetch 1 ,mem_addr_mi + 1 
+0x4855 017816 call sim_iic_send_byte 
+:      017817 sim_iic_read_eep_data_2k:
+0x4856 017818 call sim_iic_stop 
+0x4857 017820 call sim_iic_start 
+0x4858 017821 setarg 0xa1 
+0x4859 017822 call sim_iic_send_byte 
+:      017824 sim_iic_read_eep_data_loop:
+0x485a 017825 call sim_iic_read_byte 
+0x485b 017826 istore 1 ,rega 
+0x485c 017827 increase 1 ,rega 
+0x485d 017828 increase -1 ,regb 
+0x485e 017829 nbranch sim_iic_read_eep_data_loop ,zero 
+0x485f 017830 branch sim_iic_stop 
+:      017841 sim_iic_write_eep_data:
+0x4860 017842 byteswap regb ,pdata 
+0x4861 017843 store 2 ,mem_addr_mi 
+0x4862 017844 copy temp ,regb 
+0x4863 017846 call sim_iic_start 
+0x4864 017847 setarg 0xa0 
+0x4865 017848 call sim_iic_send_byte 
+0x4866 017850 fetch 1 ,mem_addr_mi 
+0x4867 017851 call sim_iic_send_byte 
+0x4868 017852 bmark1 mark_eeprom_size ,sim_iic_write_eep_data_loop 
+0x4869 017853 fetch 1 ,mem_addr_mi + 1 
+0x486a 017854 call sim_iic_send_byte 
+:      017855 sim_iic_write_eep_data_loop:
+0x486b 017856 ifetch 1 ,rega 
+0x486c 017857 call sim_iic_send_byte 
+0x486d 017858 increase 1 ,rega 
+0x486e 017859 increase -1 ,regb 
+0x486f 017860 nbranch sim_iic_write_eep_data_loop ,zero 
+0x4870 017861 branch sim_iic_stop 
+:      017865 sim_iic_wait_ack:
+0x4871 017866 arg 10 ,loopcnt 
+0x4872 017867 call sim_iic_release_sda 
+0x4873 017868 call sim_iic_scl_output_high 
+0x4874 017869 call sim_iic_delay 
+:      017870 sim_iic_wait_ack_loop:
+0x4875 017871 call sim_iic_read_sda_level 
+0x4876 017872 branch sim_iic_scl_output_low ,blank 
+0x4877 017873 loop sim_iic_wait_ack_loop 
+0x4878 017874 branch sim_iic_scl_output_low 
+:      017878 sim_iic_ack_slave:
+0x4879 017879 call sim_iic_scl_output_low 
+0x487a 017880 call sim_iic_sda_output_low 
+0x487b 017881 call sim_iic_delay 
+0x487c 017882 call sim_iic_scl_output_high 
+0x487d 017883 call sim_iic_delay 
+0x487e 017884 branch sim_iic_scl_output_low 
+:      017889 sim_iic_read_byte:
+0x487f 017890 arg 8 ,loopcnt 
+0x4880 017891 arg 0 ,regc 
+0x4881 017892 call sim_iic_release_sda 
+:      017893 sim_iic_read_byte_loop:
+0x4882 017894 call sim_iic_scl_output_high 
+0x4883 017895 call sim_iic_delay 
+0x4884 017896 lshift regc ,regc 
+0x4885 017897 call sim_iic_read_sda_level 
+0x4886 017898 iadd regc ,regc 
+0x4887 017899 call sim_iic_delay 
+0x4888 017900 call sim_iic_scl_output_low 
+0x4889 017901 loop sim_iic_read_byte_loop 
+0x488a 017902 call sim_iic_ack_slave 
+0x488b 017903 copy regc ,pdata 
+0x488c 017904 rtn 
+:      017908 sim_iic_send_byte:
+0x488d 017909 arg 8 ,loopcnt 
+0x488e 017910 copy pdata ,regc 
+0x488f 017911 call sim_iic_scl_output_low 
+:      017912 sim_iic_send_byte_loop:
+0x4890 017913 isolate1 7 ,regc 
+0x4891 017914 call sim_iic_sda_output_high ,true 
+0x4892 017915 ncall sim_iic_sda_output_low ,true 
+0x4893 017916 lshift regc ,regc 
+0x4894 017917 call sim_iic_delay 
+0x4895 017918 call sim_iic_scl_output_high 
+0x4896 017919 call sim_iic_delay 
+0x4897 017920 call sim_iic_scl_output_low 
+0x4898 017921 call sim_iic_delay 
+0x4899 017922 loop sim_iic_send_byte_loop 
+0x489a 017923 branch sim_iic_wait_ack 
+:      017927 sim_iic_start:
+0x489b 017928 call sim_iic_sda_output_high 
+0x489c 017929 call sim_iic_scl_output_high 
+0x489d 017930 call sim_iic_delay 
+0x489e 017931 call sim_iic_sda_output_low 
+0x489f 017932 call sim_iic_delay 
+0x48a0 017933 branch sim_iic_scl_output_low 
+:      017937 sim_iic_stop:
+0x48a1 017938 call sim_iic_sda_output_low 
+0x48a2 017939 call sim_iic_scl_output_high 
+0x48a3 017940 call sim_iic_delay 
+0x48a4 017941 call sim_iic_sda_output_high 
+0x48a5 017942 branch sim_iic_delay 
+:      017946 sim_iic_scl_output_high:
+0x48a6 017947 enable user 
+0x48a7 017948 fetch 1 ,sim_iic_scl_gpio_num 
+0x48a8 017949 branch sim_iic_config_gpio 
+:      017952 sim_iic_scl_output_low:
+0x48a9 017953 disable user 
+0x48aa 017954 fetch 1 ,sim_iic_scl_gpio_num 
+0x48ab 017955 branch sim_iic_config_gpio 
+:      017958 sim_iic_sda_output_high:
+0x48ac 017959 enable user 
+0x48ad 017960 fetch 1 ,sim_iic_sda_gpio_num 
+0x48ae 017961 branch sim_iic_config_gpio 
+:      017964 sim_iic_sda_output_low:
+0x48af 017965 disable user 
+0x48b0 017966 fetch 1 ,sim_iic_sda_gpio_num 
+0x48b1 017967 branch sim_iic_config_gpio 
+:      017972 sim_iic_config_gpio:
+0x48b2 017973 and pdata ,0x07 ,queue 
+0x48b3 017974 rshift3 pdata ,pdata 
+0x48b4 017975 arg core_gpio_oe0 ,temp 
+0x48b5 017976 iadd temp ,temp 
+0x48b6 017977 ifetch 1 ,temp 
+0x48b7 017978 qset1 pdata 
+0x48b8 017979 istore 1 ,temp 
+0x48b9 017980 increase 4 ,temp 
+0x48ba 017981 ifetch 1 ,temp 
+0x48bb 017982 qsetflag user ,pdata 
+0x48bc 017983 istore 1 ,temp 
+0x48bd 017984 rtn 
+:      017987 sim_iic_release_sda:
+0x48be 017988 fetch 1 ,sim_iic_sda_gpio_num 
+0x48bf 017989 and pdata ,0x07 ,queue 
+0x48c0 017990 rshift3 pdata ,pdata 
+0x48c1 017991 arg core_gpio_oe0 ,temp 
+0x48c2 017992 iadd temp ,temp 
+0x48c3 017993 ifetch 1 ,temp 
+0x48c4 017994 qset0 pdata 
+0x48c5 017995 istore 1 ,temp 
+0x48c6 017996 rtn 
+:      018001 sim_iic_read_sda_level:
+0x48c7 018002 nop 4 
+0x48c8 018003 fetch 1 ,sim_iic_sda_gpio_num 
+0x48c9 018004 and pdata ,0x07 ,queue 
+0x48ca 018005 rshift3 pdata ,pdata 
+0x48cb 018006 arg core_gpio_in ,temp 
+0x48cc 018007 iadd temp ,temp 
+0x48cd 018008 setarg 0 
+0x48ce 018009 ifetcht 1 ,temp 
+0x48cf 018010 qisolate1 temp 
+0x48d0 018011 setflag true ,0 ,pdata 
+0x48d1 018012 rtn 
+:      018015 sim_iic_delay:
+0x48d2 018017 rtn 
+:      018023 usb_isr:
+0x48d3 018024 bpatch patch1e_6 ,mem_patch1e 
+0x48d4 018025 hfetch 1 ,core_usb_status 
+0x48d5 018026 isolate1 7 ,pdata 
+0x48d6 018027 call usb_init ,true 
+0x48d7 018028 call usb_nak_state_judge 
+0x48d8 018029 hfetch 1 ,core_usb_status 
+0x48d9 018030 store 1 ,mem_usb_status 
+0x48da 018031 hfetch 1 ,core_usb_fifo_empty 
+0x48db 018032 store 1 ,mem_usb_fifo_empty 
+0x48dc 018033 hstore 1 ,core_usb_fifo_empty 
+0x48dd 018034 pinvert 
+0x48de 018035 fetcht 1 ,mem_usb_tx_wait 
+0x48df 018036 iand temp ,pdata 
+0x48e0 018037 store 1 ,mem_usb_tx_wait 
+0x48e1 018038 jam 0xe0 ,core_usb_status 
+0x48e2 018039 fetch 1 ,mem_usb_fifo_empty 
+0x48e3 018040 compare 0x1 ,pdata ,0x1 
+0x48e4 018041 call usb0_fifo_empty ,true 
+0x48e5 018042 fetch 1 ,mem_usb_status 
+0x48e6 018043 compare 0x1 ,pdata ,0x1 
+0x48e7 018044 call usb_status1 ,true 
+0x48e8 018045 call usb_tx 
+0x48e9 018046 branch usb_nak_state 
+:      018048 usb_init:
+0x48ea 018049 bpatch patch1e_7 ,mem_patch1e 
+0x48eb 018050 call usb_init_param 
+0x48ec 018051 jam 0x00 ,core_usb_config 
+0x48ed 018052 nop 10000 
+0x48ee 018053 jam 0xc0 ,core_usb_trig 
+0x48ef 018054 hfetch 2 ,core_clkoff 
+0x48f0 018055 set0 clock_off_usb ,pdata 
+0x48f1 018056 hstore 2 ,core_clkoff 
+0x48f2 018057 jam 0x3c ,core_usb_config 
+0x48f3 018058 jam 0xff ,core_usb_status 
+0x48f4 018059 jam 0xff ,core_usb_fifo_empty 
+0x48f5 018060 jam 0 ,core_usb_addr 
+0x48f6 018061 jam dev_default ,mem_usb0_state 
+0x48f7 018062 setarg mem_usb_clear_mem_end 
+0x48f8 018063 arg mem_usb_clear_mem_start ,contw 
+0x48f9 018064 isub contw ,loopcnt 
+0x48fa 018065 branch clear_mem 
+:      018067 usb_offline_check_init:
+0x48fb 018068 fetcht 1 ,mem_usb_offline_check_gpio 
+0x48fc 018069 branch gpio_config_input 
+:      018070 usb_offline_state:
+0x48fd 018071 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x48fe 018072 rtn blank 
+0x48ff 018073 fetcht 1 ,mem_usb_offline_check_gpio 
+0x4900 018074 call gpio_get_bit 
+0x4901 018075 branch usb_init ,true 
+0x4902 018076 rtn 
+:      018079 usb_nak_state:
+0x4903 018080 arg timer_nak ,queue 
+0x4904 018081 call timer_check 
+0x4905 018082 nrtn blank 
+0x4906 018083 fetch 1 ,mem_usb_wakestate_onetime_flag 
+0x4907 018084 nrtn blank 
+0x4908 018085 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4909 018086 ncall usb_mac_wakeup_judge ,blank 
+0x490a 018087 rtn 
+:      018089 usb_mem_devicedesc_init:
+0x490b 018090 arg mem_devicedesc ,contw 
+0x490c 018091 setsect 0 ,0x11212 
+0x490d 018092 setsect 1 ,0x8000 
+0x490e 018093 setsect 2 ,0x0 
+0x490f 018094 setsect 3 ,0x10000 
+0x4910 018095 istore 9 ,contw 
+0x4911 018096 setsect 0 ,0x22412 
+0x4912 018097 setsect 1 ,0x8604 
+0x4913 018098 setsect 2 ,0x1000 
+0x4914 018099 setsect 3 ,0x8 
+0x4915 018100 istore 9 ,contw 
+0x4916 018101 setsect 0 ,0x1 
+0x4917 018102 istore 1 ,contw 
+0x4918 018103 rtn 
+:      018105 usb_init_param:
+0x4919 018106 jam 2 ,mem_usb0_state 
+0x491a 018107 setarg 0x0 
+0x491b 018108 store 1 ,mem_remain 
+0x491c 018109 store 2 ,mem_usb_zero_packet 
+0x491d 018110 pincrease 1 
+0x491e 018111 store 2 ,mem_usb_ones_packet 
+0x491f 018112 pincrease 1 
+0x4920 018113 store 2 ,mem_usb_two_packet 
+0x4921 018114 setarg hid_kbdata_addr 
+0x4922 018115 store 2 ,mem_hidreportdesc_kb 
+0x4923 018116 setarg hid_msdata_addr 
+0x4924 018117 store 2 ,mem_hidreportdesc_m 
+0x4925 018118 arg mem_confdesc ,contw 
+0x4926 018119 arg hid_confdata_addr ,contr 
+0x4927 018120 call memcpy64 
+0x4928 018121 fetch 1 ,mem_usb_tx_interval 
+0x4929 018122 ncall usb_tx_interval_config ,blank 
+0x492a 018123 branch usb_mem_devicedesc_init 
+:      018125 usb_tx_interval_config:
+0x492b 018126 store 1 ,mem_confdesc + 34 
+0x492c 018127 store 1 ,mem_confdesc + 59 
+0x492d 018128 rtn 
+:      018129 usb_nak_state_judge:
+0x492e 018130 hfetch 1 ,core_usb_status 
+0x492f 018131 bbit1 usb_status_nak ,usb_nak_state_timer_init 
+0x4930 018132 rtn 
+:      018134 usb_nak_state_timer_init:
+0x4931 018135 call usb0_attached_state_judge 
+0x4932 018136 call timer_reinit 
+0x4933 018137 setarg timer_nak_delay 
+0x4934 018138 arg timer_nak ,queue 
+0x4935 018139 branch timer_init 
+:      018141 usb0_attached_state_judge:
+0x4936 018142 fetch 1 ,mem_usb_state 
+0x4937 018143 bne usb_connected ,usb_clear_halt_dispose 
+0x4938 018144 jam 0 ,mem_usb_wakestate_onetime_flag 
+0x4939 018145 jam 0 ,mem_usb_mac_wakeup_trig 
+0x493a 018146 rtn 
+:      018147 usb_clear_halt_dispose:
+0x493b 018148 fetch 1 ,mem_usb_clear_halt 
+0x493c 018149 rtn blank 
+0x493d 018150 jam 0 ,mem_usb_clear_halt 
+0x493e 018151 jam usb_connected ,mem_usb_state 
+0x493f 018152 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4940 018153 rtn 
+:      018155 usb0_fifo_empty:
+0x4941 018156 jam 0x1 ,core_usb_fifo_empty 
+0x4942 018157 branch usb0_tx 
+:      018159 usb_rx_no_data:
+0x4943 018160 fetch 1 ,mem_usb_status 
+0x4944 018161 bbit1 usb_status_setup ,usb_class_type 
+0x4945 018162 rtn 
+:      018164 usb_rx_read:
+0x4946 018165 hfetch 1 ,core_usb_ep 
+0x4947 018166 istore 1 ,contw 
+0x4948 018167 loop usb_rx_read 
+0x4949 018168 rtn 
+:      018170 usb_status1:
+0x494a 018171 bpatch patch1f_0 ,mem_patch1f 
+0x494b 018172 jam 0x11 ,core_usb_status 
+0x494c 018173 hfetch 1 ,core_usb_ep_len 
+0x494d 018174 store 1 ,mem_usb_read_len 
+0x494e 018175 copy pdata ,loopcnt 
+0x494f 018176 branch usb_rx_no_data ,blank 
+0x4950 018177 arg mem_usb_setup ,contw 
+0x4951 018178 call usb_rx_read 
+0x4952 018179 fetch 1 ,mem_usb_read_len 
+0x4953 018180 sub pdata ,7 ,null 
+0x4954 018181 rtn positive 
+:      018182 usb_class_type:
+0x4955 018183 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4956 018184 and_into 0x80 ,pdata 
+0x4957 018185 beq in_device ,usb_in_device 
+0x4958 018186 beq out_device ,usb_out_device 
+0x4959 018187 branch assert 
+:      018189 usb_in_device:
+0x495a 018190 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x495b 018191 rshift4 pdata ,pdata 
+0x495c 018192 rshift pdata ,pdata 
+0x495d 018193 and_into 0x03 ,pdata 
+0x495e 018194 beq standard_req ,usb_in_standard_req 
+0x495f 018195 beq class_req ,usb_in_class_req 
+0x4960 018196 beq manufacturer_req ,usb_in_manufacturer_req 
+0x4961 018197 branch assert 
+:      018199 usb_out_device:
+0x4962 018200 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4963 018201 rshift4 pdata ,pdata 
+0x4964 018202 rshift pdata ,pdata 
+0x4965 018203 and_into 0x03 ,pdata 
+0x4966 018204 beq standard_req ,usb_out_standard_req 
+0x4967 018205 beq class_req ,usb_out_class_req 
+0x4968 018206 beq manufacturer_req ,usb_out_manufacturer_req 
+0x4969 018207 branch assert 
+:      018209 usb_in_standard_req:
+0x496a 018210 fetch 1 ,mem_usb_setup_brequest 
+0x496b 018211 beq get_configuration ,usb0_request_get_configuration 
+0x496c 018212 beq get_descriptor ,usb0_request_get_descriptor 
+0x496d 018213 beq get_interface ,usb0_request_get_interface 
+0x496e 018214 beq get_status ,usb0_request_get_status 
+0x496f 018215 branch usb0_force_stall 
+:      018217 usb_in_class_req:
+0x4970 018218 fetch 1 ,mem_usb_setup_brequest 
+0x4971 018219 beq get_idle ,usb_get_idle 
+0x4972 018220 beq get_report ,usb_get_report 
+0x4973 018221 beq get_protocol ,usb_get_protocol_req 
+0x4974 018222 branch usb0_force_stall 
+:      018224 usb_in_manufacturer_req:
+0x4975 018225 branch usb0_force_stall 
+:      018227 usb_out_standard_req:
+0x4976 018228 fetch 1 ,mem_usb_setup_brequest 
+0x4977 018229 beq clear_feature ,usb0_request_clear_feature 
+0x4978 018230 beq set_feature ,usb0_request_set_feature 
+0x4979 018231 beq set_address ,usb0_request_set_address 
+0x497a 018232 beq set_configuration ,usb0_request_set_configuration 
+0x497b 018233 beq set_interface ,usb0_request_set_interface 
+0x497c 018234 beq set_descriptor ,usb0_force_stall 
+0x497d 018235 branch usb0_force_stall 
+:      018237 usb_out_class_req:
+0x497e 018238 fetch 1 ,mem_usb_setup_brequest 
+0x497f 018239 beq set_idle ,usb_set_idle 
+0x4980 018240 beq set_report ,usb_set_report 
+0x4981 018241 beq set_protocol ,usb_set_protocol_req 
+0x4982 018242 branch usb0_force_stall 
+:      018244 usb_out_manufacturer_req:
+0x4983 018245 branch usb0_force_stall 
+:      018247 usb0_force_stall:
+0x4984 018248 hfetch 1 ,core_usb_stall 
+0x4985 018249 set1 0 ,pdata 
+0x4986 018250 hstore 1 ,core_usb_stall 
+0x4987 018251 branch usb0_reply_zerolen 
+:      018253 usb0_reply_zerolen:
+0x4988 018254 jam 0x40 ,core_usb_clear 
+0x4989 018255 rtn 
+:      018257 usb0_request_get_configuration:
+0x498a 018258 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x498b 018259 bne in_device ,usb0_force_stall 
+0x498c 018260 fetch 1 ,mem_usb_setup_windex 
+0x498d 018261 bne 0 ,usb0_force_stall 
+0x498e 018262 fetch 1 ,mem_usb_setup_windex + 1 
+0x498f 018263 bne 0 ,usb0_force_stall 
+0x4990 018264 fetch 1 ,mem_usb_setup_blength 
+0x4991 018265 bne 1 ,usb0_force_stall 
+0x4992 018266 fetch 1 ,mem_usb_setup_blengthh 
+0x4993 018267 bne 0 ,usb0_force_stall 
+0x4994 018268 fetch 1 ,mem_usb_setup_bvalue 
+0x4995 018269 bne 0 ,usb0_force_stall 
+0x4996 018270 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4997 018271 bne 0 ,usb0_force_stall 
+0x4998 018272 fetch 1 ,mem_usb0_state 
+0x4999 018273 beq dev_configured ,usb0_request_get_cfg_dev_cfg 
+0x499a 018274 beq dev_address ,usb0_request_get_cfg_dev_addr 
+0x499b 018275 branch usb0_force_stall 
+:      018277 usb0_request_get_cfg_dev_cfg:
+0x499c 018278 arg 1 ,regb 
+0x499d 018279 branch usb_send_ones_packet 
+:      018281 usb0_request_get_cfg_dev_addr:
+0x499e 018282 arg 1 ,regb 
+0x499f 018283 branch usb_send_zero_packet 
+:      018285 usb0_request_get_descriptor:
+0x49a0 018286 bpatch patch1f_1 ,mem_patch1f 
+0x49a1 018287 set0 mark_isstr ,mark 
+0x49a2 018288 fetch 1 ,mem_usb_setup_bvalueh 
+0x49a3 018289 beq dsc_device ,dsc_device_info 
+0x49a4 018290 beq dsc_config ,dsc_config_info 
+0x49a5 018291 beq dsc_string ,dsc_string_info 
+0x49a6 018292 beq dsc_hid ,dsc_hid_info 
+0x49a7 018293 beq dsc_hid_report ,dsc_hid_report_info 
+0x49a8 018294 branch usb0_force_stall 
+:      018296 dsc_hid_info:
+0x49a9 018297 jam 0 ,mem_usb_get_protocol_flag 
+0x49aa 018298 fetch 1 ,mem_usb_setup_windex 
+0x49ab 018299 beq 0 ,dsc_hid_info_interface0 
+0x49ac 018300 beq 1 ,dsc_hid_info_interface1 
+0x49ad 018301 branch usb0_force_stall 
+:      018303 dsc_hid_info_interface0:
+0x49ae 018304 arg mem_confdesc + 19 ,rega 
+0x49af 018305 ifetch 1 ,rega 
+0x49b0 018306 iforce regb 
+0x49b1 018307 branch usb0_respond 
+:      018309 dsc_hid_info_interface1:
+0x49b2 018310 arg mem_confdesc + 44 ,rega 
+0x49b3 018311 ifetch 1 ,rega 
+0x49b4 018312 iforce regb 
+0x49b5 018313 branch usb0_respond 
+:      018315 dsc_device_info:
+0x49b6 018319 fetch 1 ,mem_usb_set_high_addr_flag 
+0x49b7 018320 ncall usb_set_high_addr ,blank 
+0x49b8 018321 setarg mem_devicedesc 
+0x49b9 018322 fetcht 1 ,mem_devicedesc 
+:      018323 dsc_info_set_data_len:
+0x49ba 018324 store 2 ,mem_dsc_info_data_pointer 
+0x49bb 018325 storet 1 ,mem_dsc_info_len 
+0x49bc 018326 fetch 1 ,mem_usb_setup_blength 
+0x49bd 018327 isub temp ,null 
+0x49be 018328 nbranch dsc_info_set_current_data_len ,positive 
+:      018329 dsc_info_set_initial_data_len:
+0x49bf 018330 fetch 1 ,mem_dsc_info_len 
+:      018331 dsc_info_set_data_size_completed:
+0x49c0 018332 iforce regb 
+0x49c1 018333 fetch 2 ,mem_dsc_info_data_pointer 
+0x49c2 018334 add pdata ,1 ,pdata 
+0x49c3 018335 iforce rega 
+0x49c4 018336 branch usb0_respond 
+:      018337 dsc_info_set_current_data_len:
+0x49c5 018338 fetch 1 ,mem_usb_setup_blength 
+0x49c6 018339 branch dsc_info_set_data_size_completed 
+:      018341 usb_set_high_addr:
+0x49c7 018342 hfetch 1 ,core_usb_addr 
+0x49c8 018343 ncall usb0_set_addr ,blank 
+0x49c9 018344 jam 0 ,mem_usb_set_high_addr_flag 
+0x49ca 018345 rtn 
+:      018346 usb0_set_addr:
+0x49cb 018347 hfetch 1 ,core_usb_addr 
+0x49cc 018348 set1 7 ,pdata 
+0x49cd 018349 hstore 1 ,core_usb_addr 
+0x49ce 018350 rtn 
+:      018352 dsc_config_info:
+0x49cf 018353 setarg mem_confdesc 
+0x49d0 018354 fetcht 1 ,mem_confdesc 
+0x49d1 018355 branch dsc_info_set_data_len 
+:      018357 dsc_string_info:
+0x49d2 018358 fetch 1 ,mem_usb_setup_bvalue 
+0x49d3 018359 sub pdata ,3 ,null 
+0x49d4 018360 nbranch usb0_force_stall ,positive 
+0x49d5 018361 fetch 1 ,mem_usb_setup_bvalue 
+0x49d6 018362 arg mem_string0 ,rega 
+0x49d7 018363 beq 0 ,usb0_respond_length 
+0x49d8 018364 set1 mark_isstr ,mark 
+0x49d9 018365 arg mem_string1 ,rega 
+0x49da 018366 beq 1 ,usb0_respond_length 
+0x49db 018367 arg mem_string2 ,rega 
+0x49dc 018368 beq 2 ,usb0_respond_length 
+0x49dd 018369 arg mem_string3 ,rega 
+0x49de 018370 beq 3 ,usb0_respond_length 
+0x49df 018371 rtn 
+:      018373 dsc_hid_report_info:
+0x49e0 018374 fetch 2 ,mem_usb_setup_windex 
+0x49e1 018375 beq 1 ,dsc_hid_report_info0 
+0x49e2 018376 fetch 2 ,mem_hidreportdesc_kb 
+0x49e3 018377 copy pdata ,rega 
+0x49e4 018379 branch usb0_respond_length 
+:      018380 dsc_hid_report_info0:
+0x49e5 018381 jam 1 ,mem_usb_device_enumeration_endflag 
+0x49e6 018382 jam usb_got_report_req ,mem_usb_state 
+0x49e7 018383 fetch 2 ,mem_hidreportdesc_m 
+0x49e8 018384 copy pdata ,rega 
+0x49e9 018386 branch usb0_respond_length 
+:      018389 usb0_request_get_interface:
+0x49ea 018390 fetch 1 ,mem_usb0_state 
+0x49eb 018391 bne dev_configured ,usb0_force_stall 
+0x49ec 018392 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x49ed 018393 bne in_interface ,usb0_force_stall 
+0x49ee 018394 fetch 1 ,mem_usb_setup_bvalue 
+0x49ef 018395 bne 0 ,usb0_force_stall 
+0x49f0 018396 fetch 1 ,mem_usb_setup_bvalueh 
+0x49f1 018397 bne 0 ,usb0_force_stall 
+0x49f2 018398 fetch 1 ,mem_usb_setup_blength 
+0x49f3 018399 bne 1 ,usb0_force_stall 
+0x49f4 018400 fetch 1 ,mem_usb_setup_blengthh 
+0x49f5 018401 bne 0 ,usb0_force_stall 
+0x49f6 018402 fetch 1 ,mem_usb_setup_windex 
+0x49f7 018403 bne 0 ,usb0_force_stall 
+0x49f8 018404 fetch 1 ,mem_usb_setup_windex + 1 
+0x49f9 018405 bne 0 ,usb0_force_stall 
+0x49fa 018406 arg 1 ,regb 
+0x49fb 018407 branch usb_send_zero_packet 
+:      018410 usb0_request_get_status:
+0x49fc 018411 fetch 1 ,mem_usb0_state 
+0x49fd 018412 beq dev_default ,usb0_force_stall 
+0x49fe 018413 fetch 1 ,mem_usb_setup_bvalue 
+0x49ff 018414 bne 0 ,usb0_force_stall 
+0x4a00 018415 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a01 018416 bne 0 ,usb0_force_stall 
+0x4a02 018417 fetch 1 ,mem_usb_setup_blength 
+0x4a03 018418 bne 2 ,usb0_force_stall 
+0x4a04 018419 fetch 1 ,mem_usb_setup_blengthh 
+0x4a05 018420 bne 0 ,usb0_force_stall 
+0x4a06 018421 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a07 018422 bne 0 ,usb0_force_stall 
+0x4a08 018423 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a09 018424 beq in_device ,usb0_get_status_in_device 
+0x4a0a 018425 beq in_interface ,usb0_get_status_in_interface 
+0x4a0b 018426 beq in_endpoint ,usb0_get_status_in_endpoint 
+0x4a0c 018427 branch usb0_force_stall 
+:      018429 usb0_get_status_in_device:
+0x4a0d 018430 fetch 1 ,mem_usb_setup_windex 
+0x4a0e 018431 bne 0 ,usb0_force_stall 
+0x4a0f 018432 arg 2 ,regb 
+0x4a10 018433 fetch 1 ,mem_usb_remote_wakeup 
+0x4a11 018434 beq 0x01 ,usb_send_two_packet 
+:      018436 usb_send_zero_packet:
+0x4a12 018437 arg mem_usb_zero_packet ,rega 
+0x4a13 018438 branch usb0_respond 
+:      018439 usb_send_ones_packet:
+0x4a14 018440 arg mem_usb_ones_packet ,rega 
+0x4a15 018441 branch usb0_respond 
+:      018442 usb_send_two_packet:
+0x4a16 018443 arg mem_usb_two_packet ,rega 
+0x4a17 018444 branch usb0_respond 
+:      018446 usb0_get_status_in_interface:
+0x4a18 018447 fetch 1 ,mem_usb0_state 
+0x4a19 018448 bne dev_configured ,usb0_force_stall 
+0x4a1a 018449 arg 2 ,regb 
+0x4a1b 018450 branch usb_send_zero_packet 
+:      018452 usb0_get_status_in_endpoint:
+0x4a1c 018453 fetch 1 ,mem_usb0_state 
+0x4a1d 018454 bne dev_configured ,usb0_force_stall 
+0x4a1e 018455 fetch 1 ,mem_usb_setup_windex 
+0x4a1f 018456 beq in_ep1 ,usb0_get_status_in_ep_in_ep1 
+0x4a20 018457 beq in_ep2 ,usb0_get_status_in_ep_in_ep2 
+0x4a21 018458 beq in_ep3 ,usb0_get_status_in_ep_in_ep3 
+0x4a22 018459 and_into 0x7f ,pdata 
+0x4a23 018460 beq 0x00 ,usb0_get_status_in_ep_in_ep0 
+0x4a24 018461 branch usb0_force_stall 
+:      018463 usb0_get_status_in_ep_in_ep0:
+0x4a25 018464 fetch 1 ,mem_usb_ep0_stall_status 
+:      018465 usb0_get_status_in_ep_in_ack:
+0x4a26 018466 arg 2 ,regb 
+0x4a27 018467 beq 1 ,usb_send_ones_packet 
+0x4a28 018468 branch usb_send_zero_packet 
+:      018469 usb0_get_status_in_ep_in_ep1:
+0x4a29 018470 fetch 1 ,mem_usb_ep1_stall_status 
+0x4a2a 018471 branch usb0_get_status_in_ep_in_ack 
+:      018472 usb0_get_status_in_ep_in_ep2:
+0x4a2b 018473 fetch 1 ,mem_usb_ep2_stall_status 
+0x4a2c 018474 branch usb0_get_status_in_ep_in_ack 
+:      018475 usb0_get_status_in_ep_in_ep3:
+0x4a2d 018476 fetch 1 ,mem_usb_ep3_stall_status 
+0x4a2e 018477 branch usb0_get_status_in_ep_in_ack 
+:      018479 usb_get_idle:
+0x4a2f 018480 jam 1 ,mem_usb_idle_flag 
+0x4a30 018481 arg mem_usb_idle_rate ,rega 
+0x4a31 018482 arg 1 ,regb 
+0x4a32 018483 branch usb0_respond 
+:      018485 usb_get_report:
+0x4a33 018486 fetch 2 ,mem_usb_setup_bvalue 
+0x4a34 018487 arg pc_get_report ,temp 
+0x4a35 018488 isub temp ,null 
+0x4a36 018489 nbranch usb0_force_stall ,zero 
+0x4a37 018490 set0 mark_isstr ,mark 
+:      018491 usb_get_report_dispose:
+0x4a38 018492 fetch 1 ,mem_usb0_data_ready_report 
+0x4a39 018493 nbranch usb_get_report_data_success ,blank 
+0x4a3a 018494 jam pc_get_nondata ,mem_usb0_get_report_data 
+:      018495 usb_get_report_send_data:
+0x4a3b 018496 fetch 1 ,mem_usb_setup_blength 
+0x4a3c 018497 iforce regb 
+0x4a3d 018498 arg mem_usb0_get_report_data ,rega 
+0x4a3e 018499 call usb0_respond 
+:      018500 usb_get_report_data_release:
+0x4a3f 018501 arg mem_usb0_get_report_data ,contw 
+0x4a40 018502 arg 8 ,loopcnt 
+0x4a41 018503 branch memset0 
+:      018504 usb_get_report_data_success:
+0x4a42 018505 jam 0 ,mem_usb0_data_ready_report 
+0x4a43 018506 jam pc_get_data ,mem_usb0_get_report_data 
+0x4a44 018507 branch usb_get_report_send_data 
+:      018509 usb_get_protocol_req:
+0x4a45 018510 fetch 1 ,mem_usb_setup_blength 
+0x4a46 018511 bne 1 ,usb0_force_stall 
+0x4a47 018512 jam 1 ,mem_usb_get_protocol_flag 
+0x4a48 018513 arg 1 ,regb 
+0x4a49 018514 fetch 1 ,mem_usb_set_protocol_value 
+0x4a4a 018515 beq 0 ,usb_get_report_protocol 
+0x4a4b 018516 beq 1 ,usb_get_boot_protocol 
+0x4a4c 018517 branch usb_send_zero_packet 
+:      018518 usb_get_report_protocol:
+0x4a4d 018519 branch usb_send_ones_packet 
+:      018520 usb_get_boot_protocol:
+0x4a4e 018521 branch usb_send_zero_packet 
+:      018526 usb0_request_clear_feature:
+0x4a4f 018527 fetch 1 ,mem_usb0_state 
+0x4a50 018528 bne dev_configured ,usb0_force_stall 
+0x4a51 018529 fetch 1 ,mem_usb_setup_blength 
+0x4a52 018530 bne 0 ,usb0_force_stall 
+0x4a53 018531 fetch 1 ,mem_usb_setup_blengthh 
+0x4a54 018532 bne 0 ,usb0_force_stall 
+0x4a55 018533 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a56 018534 bne 0 ,usb0_force_stall 
+0x4a57 018535 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a58 018536 bne 0 ,usb0_force_stall 
+0x4a59 018537 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a5a 018538 beq out_device ,usb0_request_clear_feature_out_device 
+0x4a5b 018539 beq out_interface ,usb0_request_clear_feature_out_interface 
+0x4a5c 018540 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
+0x4a5d 018541 branch usb0_force_stall 
+:      018543 usb0_request_clear_feature_out_device:
+0x4a5e 018544 fetch 1 ,mem_usb_setup_bvalue 
+0x4a5f 018545 bne device_remote_wakeup ,usb0_force_stall 
+0x4a60 018546 hfetch 1 ,core_usb_config 
+0x4a61 018547 set0 7 ,pdata 
+0x4a62 018548 hstore 1 ,core_usb_config 
+0x4a63 018549 jam 0 ,mem_usb_remote_wakeup 
+0x4a64 018550 jam 1 ,mem_usb_clear_remote_wakeup 
+0x4a65 018551 branch usb0_reply_zerolen 
+:      018553 usb0_request_clear_feature_out_interface:
+0x4a66 018554 branch usb0_force_stall 
+:      018556 usb0_request_clear_feature_out_endpoint:
+0x4a67 018557 fetch 1 ,mem_usb_setup_bvalue 
+0x4a68 018558 bne endpoint_halt ,usb0_force_stall 
+0x4a69 018559 fetch 1 ,mem_usb_setup_windex 
+0x4a6a 018560 beq in_ep1 ,usb0_force_stall_ep1_in_off 
+0x4a6b 018561 beq in_ep2 ,usb0_force_stall_ep2_in_off 
+0x4a6c 018562 beq in_ep3 ,usb0_force_stall_ep3_in_off 
+0x4a6d 018563 and_into 0x7f ,pdata 
+0x4a6e 018564 beq 0x00 ,usb0_force_stall_ep0_in_off 
+0x4a6f 018565 branch usb0_force_stall 
+:      018567 usb0_force_stall_ep0_in_off:
+0x4a70 018568 jam 0 ,mem_usb_ep0_stall_status 
+0x4a71 018569 branch usb0_reply_zerolen 
+:      018570 usb0_force_stall_ep1_in_off:
+0x4a72 018571 jam 0 ,mem_usb_ep1_stall_status 
+:      018572 usb0_force_stall_ep1_in_off_reply:
+0x4a73 018573 jam 1 ,mem_usb_clear_halt 
+0x4a74 018574 branch usb0_reply_zerolen 
+:      018575 usb0_force_stall_ep2_in_off:
+0x4a75 018576 jam 0 ,mem_usb_ep2_stall_status 
+0x4a76 018577 branch usb0_force_stall_ep1_in_off_reply 
+:      018578 usb0_force_stall_ep3_in_off:
+0x4a77 018579 jam 0 ,mem_usb_ep3_stall_status 
+0x4a78 018580 branch usb0_force_stall_ep1_in_off_reply 
+:      018583 usb0_request_set_feature:
+0x4a79 018584 fetch 1 ,mem_usb_setup_blength 
+0x4a7a 018585 bne 0 ,usb0_force_stall 
+0x4a7b 018586 fetch 1 ,mem_usb_setup_blengthh 
+0x4a7c 018587 bne 0 ,usb0_force_stall 
+0x4a7d 018588 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a7e 018589 beq out_device ,usb0_request_set_feature_out_device 
+0x4a7f 018590 beq out_interface ,usb0_request_set_feature_out_interface 
+0x4a80 018591 beq out_endpoint ,usb0_request_set_feature_out_endpoint 
+0x4a81 018592 branch usb0_force_stall 
+:      018594 usb0_request_set_feature_out_device:
+0x4a82 018595 fetch 1 ,mem_usb_setup_bvalue 
+0x4a83 018596 bne device_remote_wakeup ,usb0_force_stall 
+0x4a84 018597 hfetch 1 ,core_usb_config 
+0x4a85 018598 set1 7 ,pdata 
+0x4a86 018599 hstore 1 ,core_usb_config 
+0x4a87 018600 jam 1 ,mem_usb_remote_wakeup 
+0x4a88 018601 jam usb_sleep ,mem_usb_state 
+0x4a89 018602 jam 0 ,mem_usb_tx_win_enable 
+0x4a8a 018603 call usb0_reply_zerolen 
+:      018604 usb_wakeup_timer_reinit:
+0x4a8b 018605 call timer_reinit 
+0x4a8c 018606 setarg timer_wakeup_delay 
+0x4a8d 018607 arg timer_wakeup ,queue 
+0x4a8e 018608 branch timer_init 
+:      018610 usb0_request_set_feature_out_interface:
+0x4a8f 018611 branch usb0_force_stall 
+:      018613 usb0_request_set_feature_out_endpoint:
+0x4a90 018614 fetch 1 ,mem_usb_setup_bvalue 
+0x4a91 018615 bne endpoint_halt ,usb0_force_stall 
+0x4a92 018616 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a93 018617 bne 0 ,usb0_force_stall 
+0x4a94 018618 fetch 1 ,mem_usb_setup_windex 
+0x4a95 018619 beq in_ep1 ,usb0_force_stall_ep1_in_on 
+0x4a96 018620 beq in_ep2 ,usb0_force_stall_ep2_in_on 
+0x4a97 018621 beq in_ep3 ,usb0_force_stall_ep3_in_on 
+0x4a98 018622 and_into 0x7f ,pdata 
+0x4a99 018623 beq 0x00 ,usb0_force_stall_ep0_in_on 
+0x4a9a 018624 branch usb0_force_stall 
+:      018626 usb0_force_stall_ep0_in_on:
+0x4a9b 018627 jam 1 ,mem_usb_ep0_stall_status 
+0x4a9c 018628 branch usb0_reply_zerolen 
+:      018629 usb0_force_stall_ep1_in_on:
+0x4a9d 018630 jam 1 ,mem_usb_ep1_stall_status 
+0x4a9e 018631 branch usb0_reply_zerolen 
+:      018632 usb0_force_stall_ep2_in_on:
+0x4a9f 018633 jam 1 ,mem_usb_ep2_stall_status 
+0x4aa0 018634 branch usb0_reply_zerolen 
+:      018635 usb0_force_stall_ep3_in_on:
+0x4aa1 018636 jam 1 ,mem_usb_ep3_stall_status 
+0x4aa2 018637 branch usb0_reply_zerolen 
+:      018640 usb0_request_set_address:
+0x4aa3 018641 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4aa4 018642 bne out_device ,usb0_force_stall 
+0x4aa5 018643 fetch 1 ,mem_usb_setup_windex 
+0x4aa6 018644 bne 0 ,usb0_force_stall 
+0x4aa7 018645 fetch 1 ,mem_usb_setup_windex + 1 
+0x4aa8 018646 bne 0 ,usb0_force_stall 
+0x4aa9 018647 fetch 1 ,mem_usb_setup_blength 
+0x4aaa 018648 bne 0 ,usb0_force_stall 
+0x4aab 018649 fetch 1 ,mem_usb_setup_blengthh 
+0x4aac 018650 bne 0 ,usb0_force_stall 
+0x4aad 018651 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aae 018652 bne 0 ,usb0_force_stall 
+0x4aaf 018653 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab0 018654 and_into 0x80 ,pdata 
+0x4ab1 018655 bne 0 ,usb0_force_stall 
+0x4ab2 018656 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab3 018657 bne 0 ,usb_usb0_state_set_dev_addr 
+:      018658 usb_usb0_state_set_dev_default:
+0x4ab4 018659 jam dev_default ,mem_usb0_state 
+:      018660 usb0_request_set_wait_address:
+0x4ab5 018661 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab6 018662 hstore 1 ,core_usb_addr 
+0x4ab7 018663 call usb0_reply_zerolen 
+0x4ab8 018664 jam 1 ,mem_usb_set_high_addr_flag 
+0x4ab9 018665 rtn 
+:      018666 usb_usb0_state_set_dev_addr:
+0x4aba 018667 jam dev_address ,mem_usb0_state 
+0x4abb 018668 branch usb0_request_set_wait_address 
+:      018671 usb0_request_set_configuration:
+0x4abc 018672 fetch 1 ,mem_usb0_state 
+0x4abd 018673 beq dev_default ,usb0_force_stall 
+0x4abe 018674 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4abf 018675 bne out_device ,usb0_force_stall 
+0x4ac0 018676 fetch 1 ,mem_usb_setup_windex 
+0x4ac1 018677 bne 0 ,usb0_force_stall 
+0x4ac2 018678 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ac3 018679 bne 0 ,usb0_force_stall 
+0x4ac4 018680 fetch 1 ,mem_usb_setup_blength 
+0x4ac5 018681 bne 0 ,usb0_force_stall 
+0x4ac6 018682 fetch 1 ,mem_usb_setup_blengthh 
+0x4ac7 018683 bne 0 ,usb0_force_stall 
+0x4ac8 018684 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4ac9 018685 bne 0 ,usb0_force_stall 
+0x4aca 018686 fetch 1 ,mem_usb_setup_bvalue 
+0x4acb 018687 sub pdata ,usb_max_num_cfg ,null 
+0x4acc 018688 nbranch usb0_force_stall ,positive 
+0x4acd 018689 fetch 1 ,mem_usb0_state 
+0x4ace 018690 beq dev_address ,usb0_request_set_cfg_addr_state 
+0x4acf 018691 beq dev_configured ,usb0_request_set_cfg_cfg_state 
+0x4ad0 018692 branch usb0_force_stall 
+:      018694 usb0_request_set_cfg_addr_state:
+:      018695 usb0_request_set_cfg_cfg_state:
+0x4ad1 018696 fetch 1 ,mem_usb_setup_bvalue 
+0x4ad2 018697 beq 0 ,usb0_request_set_cfg_stay_addr_state 
+0x4ad3 018698 jam dev_configured ,mem_usb0_state 
+0x4ad4 018699 branch usb0_reply_zerolen 
+:      018700 usb0_request_set_cfg_stay_addr_state:
+0x4ad5 018701 jam dev_address ,mem_usb0_state 
+0x4ad6 018702 branch usb0_reply_zerolen 
+:      018705 usb0_request_set_interface:
+0x4ad7 018706 fetch 1 ,mem_usb0_state 
+0x4ad8 018707 bne dev_configured ,usb0_force_stall 
+0x4ad9 018708 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4ada 018709 bne out_interface ,usb0_force_stall 
+0x4adb 018710 fetch 1 ,mem_usb_setup_bvalue 
+0x4adc 018711 bne 0 ,usb0_force_stall 
+0x4add 018712 fetch 1 ,mem_usb_setup_bvalueh 
+0x4ade 018713 bne 0 ,usb0_force_stall 
+0x4adf 018714 fetch 1 ,mem_usb_setup_blength 
+0x4ae0 018715 bne 0 ,usb0_force_stall 
+0x4ae1 018716 fetch 1 ,mem_usb_setup_blengthh 
+0x4ae2 018717 bne 0 ,usb0_force_stall 
+0x4ae3 018718 fetch 1 ,mem_usb_setup_windex 
+0x4ae4 018719 bne 0 ,usb0_force_stall 
+0x4ae5 018720 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ae6 018721 bne 0 ,usb0_force_stall 
+0x4ae7 018722 branch usb0_reply_zerolen 
+:      018725 usb_set_idle:
+0x4ae8 018726 jam 1 ,mem_usb_idle_flag 
+0x4ae9 018727 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aea 018728 store 1 ,mem_usb_idle_rate 
+0x4aeb 018729 fetch 1 ,mem_usb_setup_windex 
+0x4aec 018730 sub pdata ,1 ,null 
+0x4aed 018731 call usb_clear_remote_wakeup_set0 ,zero 
+0x4aee 018732 fetch 1 ,mem_usb_state 
+0x4aef 018733 bne usb_resume ,usb0_reply_zerolen 
+0x4af0 018734 jam usb_connected ,mem_usb_state 
+0x4af1 018735 call usb0_reply_zerolen 
+0x4af2 018736 nop 30000 
+0x4af3 018737 nop 30000 
+0x4af4 018738 rtn 
+:      018739 usb_clear_remote_wakeup_set0:
+0x4af5 018740 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4af6 018741 jam 0 ,mem_usb_clear_remote_wakeup 
+0x4af7 018742 jam usb_resume ,mem_usb_state 
+0x4af8 018743 rtn 
+:      018746 usb_set_report:
+0x4af9 018747 jam 1 ,mem_usb0_get_set_report 
+0x4afa 018748 call usb_set_report_resume_judge 
+0x4afb 018749 fetch 2 ,mem_usb_setup_bvalue 
+0x4afc 018750 store 2 ,mem_usb_setup_bvalue_temp 
+0x4afd 018751 fetch 1 ,mem_usb_setup_blength 
+0x4afe 018752 iforce loopcnt 
+0x4aff 018753 arg mem_usb0_setup ,contr 
+0x4b00 018754 arg mem_usb0_set_report_data ,contw 
+0x4b01 018755 call memcpy 
+0x4b02 018756 branch usb0_reply_zerolen 
+:      018758 usb_set_report_resume_judge:
+0x4b03 018759 fetch 2 ,mem_usb_setup_bvalue 
+0x4b04 018760 arg pc_set_report_bvalue ,temp 
+0x4b05 018761 isub temp ,null 
+0x4b06 018762 nrtn zero 
+0x4b07 018763 fetch 2 ,mem_usb_setup_windex 
+0x4b08 018764 arg pc_set_report_windex ,temp 
+0x4b09 018765 isub temp ,null 
+0x4b0a 018766 nrtn zero 
+0x4b0b 018767 fetch 2 ,mem_usb_setup_blength 
+0x4b0c 018768 arg pc_set_report_blength ,temp 
+0x4b0d 018769 isub temp ,null 
+0x4b0e 018770 nrtn zero 
+0x4b0f 018771 jam 1 ,mem_usb_tx_win_enable 
+0x4b10 018772 rtn 
+:      018775 usb_set_protocol_req:
+0x4b11 018776 fetch 1 ,mem_usb_setup_blength 
+0x4b12 018777 bne 0 ,usb0_force_stall 
+0x4b13 018778 fetch 1 ,mem_usb_setup_bvalue 
+0x4b14 018779 beq boot_protocol ,usb_set_boot_protocol 
+0x4b15 018780 beq report_protocol ,usb_set_report_protocol 
+0x4b16 018781 branch usb0_force_stall 
+:      018782 usb_set_boot_protocol:
+0x4b17 018783 jam 0 ,mem_usb_set_protocol_status 
+0x4b18 018784 jam 1 ,mem_usb_set_protocol_value 
+0x4b19 018785 branch usb0_reply_zerolen 
+:      018786 usb_set_report_protocol:
+0x4b1a 018787 jam 1 ,mem_usb_tx_mac_enable 
+0x4b1b 018788 jam 1 ,mem_usb_set_protocol_status 
+0x4b1c 018789 jam 0 ,mem_usb_set_protocol_value 
+0x4b1d 018790 branch usb0_reply_zerolen 
+:      018793 usb0_respond_length:
+0x4b1e 018794 ifetch 1 ,rega 
+0x4b1f 018795 iforce regb 
+0x4b20 018796 increase 1 ,rega 
+:      018798 usb0_respond:
+0x4b21 018799 bpatch patch1f_2 ,mem_patch1f 
+0x4b22 018800 bmark0 mark_isstr ,usb0_respond0 
+0x4b23 018801 add regb ,1 ,pdata 
+0x4b24 018802 lshift pdata ,pdata 
+0x4b25 018803 hstore 1 ,core_usb_dfifo0 
+0x4b26 018804 jam 3 ,core_usb_dfifo0 
+0x4b27 018805 fetch 1 ,mem_usb_setup_blength 
+0x4b28 018806 increase -2 ,pdata 
+0x4b29 018807 rshift pdata ,pdata 
+0x4b2a 018808 store 1 ,mem_usb_setup_blength 
+0x4b2b 018809 beq 0 ,usb_no_respond_data 
+:      018810 usb0_respond0:
+0x4b2c 018811 fetch 2 ,mem_usb_setup_blength 
+0x4b2d 018812 isub regb ,null 
+0x4b2e 018813 branch usb0_respond1 ,positive 
+0x4b2f 018814 copy pdata ,regb 
+:      018815 usb0_respond1:
+0x4b30 018816 deposit rega 
+0x4b31 018817 store 2 ,mem_bufptr 
+0x4b32 018818 deposit regb 
+0x4b33 018819 store 1 ,mem_remain 
+0x4b34 018820 branch usb0_tx 
+:      018822 usb_no_respond_data:
+0x4b35 018823 arg 0 ,queue 
+0x4b36 018824 branch usb_trig 
+:      018827 usb0_tx:
+0x4b37 018828 bpatch patch1f_3 ,mem_patch1f 
+0x4b38 018829 fetch 1 ,mem_remain 
+0x4b39 018830 rtn blank 
+0x4b3a 018831 copy pdata ,loopcnt 
+0x4b3b 018832 sub pdata ,ep0_packet_size ,null 
+0x4b3c 018833 branch usb0_tx_info ,positive 
+0x4b3d 018834 arg ep0_packet_size ,loopcnt 
+:      018835 usb0_tx_info:
+0x4b3e 018836 fetch 1 ,mem_remain 
+0x4b3f 018837 isub loopcnt ,pdata 
+0x4b40 018838 store 1 ,mem_remain 
+0x4b41 018839 fetch 2 ,mem_bufptr 
+0x4b42 018840 copy pdata ,contr 
+:      018841 usb0_tx0:
+0x4b43 018842 ifetch 1 ,contr 
+0x4b44 018843 hstore 1 ,core_usb_dfifo0 
+0x4b45 018844 bmark0 mark_isstr ,usb0_tx1 
+0x4b46 018845 jam 0 ,core_usb_dfifo0 
+:      018846 usb0_tx1:
+0x4b47 018847 loop usb0_tx0 
+0x4b48 018848 copy contr ,pdata 
+0x4b49 018849 store 2 ,mem_bufptr 
+0x4b4a 018850 arg 0 ,queue 
+0x4b4b 018851 call usb_trig 
+0x4b4c 018852 fetch 1 ,mem_remain 
+0x4b4d 018853 nrtn blank 
+0x4b4e 018854 fetch 1 ,mem_usb_state 
+0x4b4f 018855 rtnne usb_got_report_req 
+0x4b50 018856 jam usb_connected ,mem_usb_state 
+0x4b51 018857 rtn 
+:      018860 usb_tx_ep1:
+0x4b52 018861 arg core_usb_dfifo1 ,rega 
+0x4b53 018862 arg 1 ,queue 
+:      018863 usb_tx_loop:
+0x4b54 018864 ifetch 1 ,contr 
+0x4b55 018865 istore 1 ,rega 
+0x4b56 018866 loop usb_tx_loop 
+:      018867 usb_trig:
+0x4b57 018868 setarg 0 
+0x4b58 018869 qset1 pdata 
+0x4b59 018870 hstore 1 ,core_usb_trig 
+0x4b5a 018871 fetcht 1 ,mem_usb_tx_wait 
+0x4b5b 018872 ior temp ,pdata 
+0x4b5c 018873 store 1 ,mem_usb_tx_wait 
+0x4b5d 018874 rtn 
+:      018876 usb_tx_ep2:
+0x4b5e 018877 arg 2 ,queue 
+0x4b5f 018878 arg core_usb_dfifo2 ,rega 
+0x4b60 018879 branch usb_tx_loop 
+:      018881 usb_tx:
+0x4b61 018882 bpatch patch1f_4 ,mem_patch1f 
+0x4b62 018883 fetch 1 ,mem_usb_tx_enable 
+0x4b63 018884 rtn blank 
+0x4b64 018885 fetch 1 ,mem_usb_tx_wait 
+0x4b65 018886 nbranch usb_inwake_state_tx_dispose ,blank 
+0x4b66 018887 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4b67 018888 branch usb_tx_fifo_release ,blank 
+0x4b68 018889 fetch 1 ,mem_usb_state 
+0x4b69 018890 beq usb_sleep ,usb_windows_wakeup 
+0x4b6a 018891 bne usb_connected ,usb_tx_fifo_release 
+0x4b6b 018892 fetch 1 ,mem_usb_clear_remote_wakeup 
+0x4b6c 018893 nbranch usb_tx_fifo_release ,blank 
+0x4b6d 018894 call usb_tx_data_ep1 
+0x4b6e 018895 branch usb_tx_data_ep2 
+:      018897 usb_tx_data_ep1:
+0x4b6f 018898 fetch 1 ,mem_usb_tx_enable 
+0x4b70 018899 rtnbit0 1 
+0x4b71 018900 fetch 1 ,mem_usb_tx_wait 
+0x4b72 018901 rtnbit1 1 
+0x4b73 018902 fetch 1 ,mem_usb_tx_enable 
+0x4b74 018903 set0 1 ,pdata 
+0x4b75 018904 store 1 ,mem_usb_tx_enable 
+0x4b76 018905 fetch 1 ,mem_usb_ep1_data 
+0x4b77 018906 rtn blank 
+0x4b78 018907 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+0x4b79 018908 branch assert 
+:      018910 usb_tx_data_ep2:
+0x4b7a 018911 fetch 1 ,mem_usb_tx_enable 
+0x4b7b 018912 rtnbit0 2 
+0x4b7c 018913 fetch 1 ,mem_usb_tx_wait 
+0x4b7d 018914 rtnbit1 2 
+0x4b7e 018915 fetch 1 ,mem_usb_tx_enable 
+0x4b7f 018916 set0 2 ,pdata 
+0x4b80 018917 store 1 ,mem_usb_tx_enable 
+0x4b81 018918 fetch 1 ,mem_usb_ep2_data 
+0x4b82 018919 rtn blank 
+0x4b83 018920 beq usb_ep2_ms ,usb_tx_ms_data 
+0x4b84 018921 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
+0x4b85 018922 branch assert 
+:      018924 usb_tx_fifo_release:
+0x4b86 018926 arg mem_usb_mouse_data ,contw 
+0x4b87 018927 arg 6 ,loopcnt 
+0x4b88 018928 branch memset0 
+:      018930 usb_tx_ms_data:
+0x4b89 018931 fetch 1 ,mem_usb_idle_flag 
+0x4b8a 018932 fetcht 1 ,mem_usb_get_protocol_flag 
+0x4b8b 018933 iand temp ,pdata 
+0x4b8c 018934 branch usb_tx_ms_data_normal_mode ,blank 
+0x4b8d 018935 fetcht 1 ,mem_usb_set_protocol_status 
+0x4b8e 018936 iadd temp ,pdata 
+0x4b8f 018937 beq mac_boot_mode ,usb_tx_ms_data_mac_boot_mode 
+0x4b90 018938 branch usb_tx_ms_data_normal_mode 
+:      018940 usb_tx_ms_data_mac_boot_mode:
+0x4b91 018941 jam 0 ,mem_usb_ep2_data 
+:      018942 usb_tx_ms_data_mac_boot_regroup:
+0x4b92 018943 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b93 018944 beq r_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b94 018945 beq lr_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b95 018946 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b96 018947 store 1 ,mem_usb_mouse_data 
+0x4b97 018948 fetch 1 ,mem_usb_mouse_data + 2 
+0x4b98 018949 istore 1 ,contw 
+0x4b99 018950 fetch 1 ,mem_usb_mouse_data + 4 
+0x4b9a 018951 istore 1 ,contw 
+0x4b9b 018952 fetch 1 ,mem_usb_mouse_data + 6 
+0x4b9c 018953 istore 1 ,contw 
+0x4b9d 018954 arg 4 ,loopcnt 
+0x4b9e 018955 arg mem_usb_mouse_data ,contr 
+0x4b9f 018956 branch usb_tx_ep2 
+:      018958 usb_tx_ms_data_normal_mode:
+0x4ba0 018959 jam 0 ,mem_usb_ep2_data 
+:      018960 usb_tx_mac_boot_ms_regroup_r_or_lrkey:
+0x4ba1 018961 arg 8 ,loopcnt 
+0x4ba2 018962 arg mem_usb_mouse_data ,contr 
+0x4ba3 018963 branch usb_tx_ep2 
+:      018965 usb_tx_kb_multikey_data:
+0x4ba4 018966 jam 0 ,mem_usb_ep2_data 
+0x4ba5 018967 arg 3 ,loopcnt 
+0x4ba6 018968 arg mem_usb_kb_multikey ,contr 
+0x4ba7 018969 branch usb_tx_ep2 
+:      018971 usb_tx_kb_normal_data:
+0x4ba8 018972 jam 0 ,mem_usb_ep1_data 
+0x4ba9 018973 arg 8 ,loopcnt 
+0x4baa 018974 arg mem_usb_kb_data ,contr 
+0x4bab 018975 branch usb_tx_ep1 
+:      018977 usb_inwake_state_tx_dispose:
+0x4bac 018978 fetch 1 ,mem_usb_state 
+0x4bad 018979 beq usb_sleep ,usb_clear_tx_wait 
+0x4bae 018980 beq usb_connected ,usb_mac_wakeup_trig 
+0x4baf 018981 rtn 
+:      018982 usb_clear_tx_wait:
+0x4bb0 018983 jam 0 ,mem_usb_tx_wait 
+0x4bb1 018984 rtn 
+:      018985 usb_mac_wakeup_trig:
+0x4bb2 018986 hfetch 1 ,core_usb_config 
+0x4bb3 018987 set1 7 ,pdata 
+0x4bb4 018988 hstore 1 ,core_usb_config 
+0x4bb5 018989 jam 1 ,mem_usb_mac_wakeup_trig 
+0x4bb6 018990 rtn 
+:      018992 usb_mac_wakeup_judge:
+0x4bb7 018993 fetch 1 ,mem_usb_state 
+0x4bb8 018994 rtneq usb_sleep 
+0x4bb9 018995 beq usb_connected ,usb_mac_wakeup 
+0x4bba 018996 rtn 
+:      018997 usb_mac_wakeup:
+0x4bbb 018998 fetch 1 ,mem_usb_mac_wakeup_trig 
+0x4bbc 018999 rtn blank 
+0x4bbd 019000 jam 1 ,mem_usb_wakestate_onetime_flag 
+0x4bbe 019001 branch usb_wakeup 
+:      019003 usb_windows_wakeup:
+0x4bbf 019004 arg timer_wakeup ,queue 
+0x4bc0 019005 call timer_check 
+0x4bc1 019006 nrtn blank 
+:      019007 usb_wakeup:
+0x4bc2 019008 hfetch 1 ,core_usb_config 
+0x4bc3 019009 rtnbit0 7 
+0x4bc4 019010 jam 0xfc ,core_usb_config 
+0x4bc5 019011 nop 30000 
+0x4bc6 019012 jam 0x3c ,core_usb_config 
+0x4bc7 019013 rtn 
+:      019020 hci_rx_h4:
+0x4bc8 019021 bpatch patch1f_5 ,mem_patch1f 
+0x4bc9 019022 fetch 1 ,mem_hci_cmd 
+0x4bca 019023 nrtn blank 
+:      019024 hci_rx_h4_1:
+0x4bcb 019025 call hci_h4_parse_packet 
+0x4bcc 019026 ncall h4_rx_discard_packet ,user 
+0x4bcd 019027 rtn 
+:      019029 hci_h4_parse_packet:
+0x4bce 019030 bpatch patch1f_6 ,mem_patch1f 
+0x4bcf 019031 copy contru ,rega 
+0x4bd0 019032 arg 4 ,temp 
+0x4bd1 019033 ifetch 1 ,contru 
+0x4bd2 019034 beq hci_h4_type_cmd ,hci_h4_parse_packet_wait_len 
+0x4bd3 019035 increase 1 ,temp 
+0x4bd4 019036 beq hci_h4_type_acl ,hci_h4_parse_packet_wait_len 
+0x4bd5 019037 copy contru ,pdata 
+0x4bd6 019038 hstore 2 ,core_uart_rrptr 
+0x4bd7 019039 rtn 
+:      019040 hci_h4_parse_packet_wait_len:
+0x4bd8 019041 hfetch 2 ,core_uart_rxitems 
+0x4bd9 019042 isub temp ,null 
+0x4bda 019043 nbranch hci_h4_parse_packet_wait_len ,positive 
+0x4bdb 019045 disable user 
+0x4bdc 019046 copy rega ,contru 
+0x4bdd 019047 call h4_get_rx_payload_len 
+0x4bde 019048 iadd temp ,temp 
+:      019049 hci_h4_parse_packet_wait:
+0x4bdf 019050 hfetch 2 ,core_uart_rxitems 
+0x4be0 019051 isub temp ,null 
+0x4be1 019052 nbranch hci_h4_parse_packet_wait ,positive 
+0x4be2 019053 copy rega ,contru 
+0x4be3 019054 ifetch 1 ,contru 
+0x4be4 019055 beq hci_h4_type_cmd ,process_hci_cmd 
+0x4be5 019056 branch assert 
+:      019058 h4_rx_discard_packet:
+0x4be6 019059 bpatch patch1f_7 ,mem_patch1f 
+0x4be7 019060 hfetch 2 ,core_uart_rrptr 
+0x4be8 019061 iforce contru 
+0x4be9 019062 call h4_get_rx_payload_len 
+0x4bea 019063 iadd contru ,contru 
+0x4beb 019064 deposit contru 
+0x4bec 019065 hstore 2 ,core_uart_rrptr 
+0x4bed 019066 rtn 
+:      019071 h4_get_rx_payload_len:
+0x4bee 019072 ifetch 1 ,contru 
+0x4bef 019073 increase 2 ,contru 
+0x4bf0 019074 beq hci_h4_type_acl ,h4_get_rx_payload_len_acl 
+0x4bf1 019075 ifetch 1 ,contru 
+0x4bf2 019076 rtn 
+:      019077 h4_get_rx_payload_len_acl:
+0x4bf3 019078 ifetch 2 ,contru 
+0x4bf4 019079 rtn 
+:      019081 h4_get_tx_ptr:
+0x4bf5 019082 hfetch 2 ,core_uart_twptr 
+0x4bf6 019083 increase -5 ,contwu 
+0x4bf7 019084 iadd contwu ,contwu 
+0x4bf8 019085 rtn 
+:      019087 h4_send_packet_event:
+0x4bf9 019088 arg hci_h4_type_event ,temp 
+0x4bfa 019089 branch h4_send_packet 
+:      019090 h4_send_packet_acl:
+0x4bfb 019091 arg hci_h4_type_acl ,temp 
+:      019092 h4_send_packet:
+0x4bfc 019093 bpatchx patch20_0 ,mem_patch20 
+0x4bfd 019094 increase 1 ,loopcnt 
+0x4bfe 019095 hfetch 2 ,core_uart_twptr 
+0x4bff 019096 copy pdata ,contwu 
+0x4c00 019097 copy loopcnt ,pdata 
+0x4c01 019098 istoret 1 ,contwu 
+0x4c02 019099 increase -1 ,pdata 
+0x4c03 019100 iadd contwu ,contwu 
+0x4c04 019101 copy contwu ,pdata 
+0x4c05 019102 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c06 019103 copy temp ,pdata 
+0x4c07 019104 rtneq hci_h4_type_acl 
+0x4c08 019105 fetch 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c09 019106 hstore 2 ,core_uart_twptr 
+0x4c0a 019107 branch h4_send_acl_trigger_clear 
+:      019110 h4_send_acl_trigger_clear:
+0x4c0b 019111 setarg 0 
+0x4c0c 019112 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c0d 019113 rtn 
+:      019120 hci_init:
+0x4c0e 019121 rtn wake 
+0x4c0f 019122 setarg hci_idle_dispatch 
+0x4c10 019123 store 2 ,mem_cb_idle_process 
+0x4c11 019125 setarg uart_baud_115200 
+0x4c12 019126 store uart_baud_len ,mem_baud 
+:      019127 hci_lpm_init:
+0x4c13 019128 setarg mem_h5rx_buf 
+0x4c14 019129 hstore 2 ,core_uart_rsaddr 
+0x4c15 019130 setarg mem_h5rx_buf_end 
+0x4c16 019131 hstore 2 ,core_uart_readdr 
+0x4c17 019132 setarg mem_h5tx_buf 
+0x4c18 019133 hstore 2 ,core_uart_tsaddr 
+0x4c19 019134 call hci_sel_init 
+:      019135 hci_reinit:
+0x4c1a 019136 jam 0x0 ,core_uart_ctrl 
+0x4c1b 019137 setarg mem_h5tx_buf 
+0x4c1c 019138 hstore 2 ,core_uart_twptr 
+0x4c1d 019139 hstore 2 ,core_uart_trptrp 
+0x4c1e 019140 setarg mem_h5rx_buf 
+0x4c1f 019141 hstore 2 ,core_uart_rrptr 
+0x4c20 019142 store 2 ,mem_h5rx_rptr 
+:      019143 hci_init_common:
+0x4c21 019144 hfetch 2 ,core_clkoff 
+0x4c22 019145 set0 clock_off_uart ,pdata 
+0x4c23 019146 hstore 2 ,core_clkoff 
+0x4c24 019147 call uart_set_baud_by_mem 
+0x4c25 019148 jam uartclk_dpll ,core_uart_clksel 
+0x4c26 019149 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x4c27 019150 rtn 
+:      019152 hci_sel_init:
+0x4c28 019153 setarg mem_h5tx_buf_end 
+0x4c29 019154 hstore 2 ,core_uart_teaddr 
+0x4c2a 019155 hfetch 1 ,core_gpio_sel1 
+0x4c2b 019156 or_into 0x07 ,pdata 
+0x4c2c 019157 hstore 1 ,core_gpio_sel1 
+0x4c2d 019158 rtn 
+:      019161 hci_rx_packet:
+0x4c2e 019162 bpatchx patch20_1 ,mem_patch20 
+0x4c2f 019163 hfetch 1 ,core_uart_status 
+0x4c30 019164 iforce regb 
+0x4c31 019165 bbit0 uart_status_rx_fifo_empty ,hci_rx_packet_cont 
+0x4c32 019166 hfetch 2 ,core_uart_rxitems 
+0x4c33 019167 iforce regc 
+0x4c34 019168 arg 0x44f ,temp 
+0x4c35 019169 isub temp ,null 
+0x4c36 019170 nrtn zero 
+:      019171 hci_rx_packet_cont:
+0x4c37 019172 hfetch 2 ,core_uart_rrptr 
+0x4c38 019173 iforce contru 
+0x4c39 019174 branch hci_rx_h4 
+:      019176 uart_send_byte:
+0x4c3a 019177 hfetcht 1 ,core_uart_status 
+0x4c3b 019178 isolate1 6 ,temp 
+0x4c3c 019179 branch uart_send_byte ,true 
+0x4c3d 019180 hstore 1 ,core_uart_txd 
+0x4c3e 019181 rtn 
+:      019183 process_hci_cmd:
+0x4c3f 019184 bpatchx patch20_2 ,mem_patch20 
+0x4c40 019185 fetch 1 ,mem_hci_cmd 
+0x4c41 019186 branch process_hci_cmd_cont ,blank 
+0x4c42 019187 enable user 
+0x4c43 019188 rtn 
+:      019189 process_hci_cmd_cont:
+0x4c44 019190 ifetch 2 ,contru 
+0x4c45 019191 iforce alarm 
+0x4c46 019192 iforce queue 
+0x4c47 019193 ifetch 1 ,contru 
+0x4c48 019194 iforce temp 
+0x4c49 019195 rshift2 alarm ,pdata 
+0x4c4a 019196 rshift8 pdata ,pdata 
+0x4c4b 019197 beq hci_ogf_vendor_specific ,phci_grp_vendor_specific 
+0x4c4c 019198 rtn 
+:      019201 phci_grp_vendor_specific:
+0x4c4d 019202 bpatchx patch20_3 ,mem_patch20 
+0x4c4e 019203 deposit queue 
+0x4c4f 019204 beq hci_vendor_cmd_reset ,hci_normal_reply 
+0x4c50 019205 beq hci_vendor_cmd_chipid ,phci_grp_vendor_chipid 
+0x4c51 019206 beq hci_vendor_cmd_baud ,phci_grp_vendor_baud 
+0x4c52 019207 beq hci_vendor_cmd_patch ,phci_grp_vendor_patch 
+0x4c53 019208 beq hci_vendor_cmd_patch_done ,phci_grp_vendor_done 
+0x4c54 019209 beq hci_vendor_cmd_echo ,hci_normal_reply 
+0x4c55 019210 beq hci_vendor_cmd_bdaddr ,phci_grp_vendor_bdaddr 
+0x4c56 019211 beq hci_vendor_cmd_enter_lpm ,phci_grp_vendor_enter_lpm 
+0x4c57 019213 beq hci_vendor_cmd_mem ,phci_grp_vendor_mem 
+0x4c58 019214 beq hci_vendor_cmd_eep ,phci_grp_vendor_eep 
+0x4c59 019215 beq hci_vendor_cmd_patch_sec_init ,phci_grp_vendor_patch_sec_init 
+0x4c5a 019216 beq hci_vendor_cmd_patch_sec ,phci_grp_vendor_patch_sec 
+0x4c5b 019217 branch hci_normal_reply 
+:      019219 phci_grp_vendor_enter_lpm:
+0x4c5c 019220 call hci_normal_reply 
+0x4c5d 019221 call wait_uarttx 
+0x4c5e 019222 call gpio_pu_uart_tx 
+:      019223 hci_enter_lpm:
+0x4c5f 019224 call app_put_lpm_wake_lock 
+0x4c60 019225 call app_l2cap_flow_control_enable 
+0x4c61 019226 branch gpio_rx_config_input_with_pu 
+:      019228 hci_exit_lpm:
+0x4c62 019229 jam hci_rx_ready ,mem_hci_lt_rx_state 
+0x4c63 019230 call app_get_lpm_wake_lock 
+0x4c64 019231 call hci_lpm_init 
+0x4c65 019232 branch app_l2cap_flow_control_disable 
+:      019234 phci_grp_vendor_chipid:
+0x4c66 019235 call hci_get_cmd_complete_ptr 
+0x4c67 019236 hfetch 2 ,core_chipid 
+0x4c68 019237 istore 2 ,contwu 
+0x4c69 019238 force 6 ,loopcnt 
+0x4c6a 019239 branch hci_command_complete 
+:      019241 phci_grp_vendor_baud:
+0x4c6b 019242 ifetch 2 ,contru 
+0x4c6c 019243 store 2 ,mem_baud 
+0x4c6d 019244 hstore 2 ,core_uart_baud 
+0x4c6e 019245 rtn 
+:      019248 phci_grp_vendor_patch_common:
+0x4c6f 019250 ifetch 1 ,contru 
+0x4c70 019251 copy pdata ,temp 
+0x4c71 019252 hstore 1 ,core_ucode_low 
+0x4c72 019253 ifetch 1 ,contru 
+0x4c73 019254 iadd temp ,temp 
+0x4c74 019255 set1 7 ,pdata 
+0x4c75 019256 hstore 1 ,core_ucode_ctrl 
+0x4c76 019257 ifetch 1 ,contru 
+0x4c77 019258 iadd temp ,temp 
+0x4c78 019259 copy pdata ,loopcnt 
+0x4c79 019260 rtn 
+:      019262 phci_grp_vendor_patch:
+0x4c7a 019263 bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c7b 019264 call phci_grp_vendor_patch_common 
+:      019265 phci_grp_vendor_patch_loop:
+0x4c7c 019266 ifetch 1 ,contru 
+0x4c7d 019267 hstore 1 ,core_ucode_data 
+0x4c7e 019268 iadd temp ,temp 
+0x4c7f 019269 loop phci_grp_vendor_patch_loop 
+:      019270 phci_grp_vendor_patch_check_sum:
+0x4c80 019271 and temp ,0xff ,temp 
+0x4c81 019272 ifetch 1 ,contru 
+0x4c82 019273 isub temp ,null 
+0x4c83 019274 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4c84 019275 branch hci_normal_reply 
+:      019278 phci_grp_vendor_patch_sec:
+0x4c85 019279 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c86 019280 call phci_grp_vendor_patch_common 
+0x4c87 019281 store 8 ,mem_pdatatemp 
+:      019282 phci_grp_vendor_patch_sec_loop:
+0x4c88 019283 call do_aes_cbc 
+0x4c89 019284 arg 16 ,loopcnt 
+0x4c8a 019285 arg mem_temp_block0 ,contw 
+0x4c8b 019286 call load_uart_sum_loop 
+0x4c8c 019287 storet 8 ,mem_temp 
+0x4c8d 019288 arg mem_temp_block2 ,contw 
+0x4c8e 019289 call store_aes_result 
+0x4c8f 019290 arg mem_temp_block2 ,rega 
+0x4c90 019291 arg mem_temp_block0 ,regb 
+0x4c91 019292 arg mem_temp_block3 ,contw 
+0x4c92 019293 call xor16 
+0x4c93 019294 arg 16 ,loopcnt 
+0x4c94 019295 arg mem_temp_block3 ,contr 
+0x4c95 019296 call load_ucode_only_loop 
+0x4c96 019297 fetcht 8 ,mem_temp 
+0x4c97 019298 fetch 8 ,mem_pdatatemp 
+0x4c98 019299 increase -16 ,pdata 
+0x4c99 019300 store 8 ,mem_pdatatemp 
+0x4c9a 019301 nbranch phci_grp_vendor_patch_sec_loop ,blank 
+0x4c9b 019302 branch phci_grp_vendor_patch_check_sum 
+:      019304 load_ucode_only_loop:
+0x4c9c 019305 ifetch 1 ,contr 
+0x4c9d 019306 hstore 1 ,core_ucode_data 
+0x4c9e 019307 loop load_ucode_only_loop 
+0x4c9f 019308 rtn 
+:      019310 load_uart_sum_loop:
+0x4ca0 019311 ifetch 1 ,contru 
+0x4ca1 019312 istore 1 ,contw 
+0x4ca2 019313 iadd temp ,temp 
+0x4ca3 019314 loop load_uart_sum_loop 
+0x4ca4 019315 rtn 
+:      019317 phci_grp_vendor_patch_sec_init:
+0x4ca5 019318 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4ca6 019319 arg 0 ,temp 
+0x4ca7 019320 arg 16 ,loopcnt 
+0x4ca8 019321 arg mem_temp_block0 ,contw 
+0x4ca9 019322 call load_uart_sum_loop 
+0x4caa 019323 hfetch 1 ,core_gpio_key2 
+0x4cab 019324 and_into 0xfd ,pdata 
+0x4cac 019325 hstore 1 ,core_gpio_key2 
+0x4cad 019326 arg mem_temp_block0 ,contr 
+0x4cae 019327 arg 16 ,loopcnt 
+0x4caf 019328 call aes_load_data 
+0x4cb0 019329 call aes_init 
+0x4cb1 019330 call aes_clear_data 
+0x4cb2 019331 branch phci_grp_vendor_patch_check_sum 
+:      019334 phci_grp_vendor_done:
+0x4cb3 019335 arg 0x20 ,loopcnt 
+0x4cb4 019336 arg mem_patch00 ,contw 
+0x4cb5 019337 arg 0 ,temp 
+:      019338 phci_grp_vendor_done_loop:
+0x4cb6 019339 ifetch 1 ,contru 
+0x4cb7 019340 istore 1 ,contw 
+0x4cb8 019341 iadd temp ,temp 
+0x4cb9 019342 loop phci_grp_vendor_done_loop 
+0x4cba 019343 and temp ,0xff ,temp 
+0x4cbb 019344 ifetch 1 ,contru 
+0x4cbc 019345 isub temp ,null 
+0x4cbd 019346 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4cbe 019347 jam 0 ,core_ucode_ctrl 
+0x4cbf 019348 call hci_normal_reply 
+0x4cc0 019349 call h4_rx_discard_packet 
+0x4cc1 019350 call clear_key_buf 
+0x4cc2 019351 call wait_uarttx 
+0x4cc3 019352 branch soft_reset 
+:      019354 phci_grp_vendor_patch_bad:
+0x4cc4 019355 jam 0 ,core_ucode_ctrl 
+0x4cc5 019356 branch start 
+:      019358 phci_grp_vendor_bdaddr:
+0x4cc6 019359 ifetch 6 ,contru 
+0x4cc7 019360 store 6 ,mem_lap 
+0x4cc8 019361 branch hci_normal_reply 
+:      019364 phci_grp_vendor_mem:
+0x4cc9 019365 ifetch 1 ,contru 
+0x4cca 019366 store 1 ,mem_hci_curr_len 
+0x4ccb 019367 copy pdata ,loopcnt 
+0x4ccc 019368 ifetch 2 ,contru 
+0x4ccd 019369 store 2 ,mem_hci_curr_target 
+0x4cce 019370 copy pdata ,contw 
+0x4ccf 019371 call uart_copy_rx_bytes 
+0x4cd0 019372 branch hci_normal_reply 
+:      019375 phci_grp_vendor_eep:
+0x4cd1 019376 ifetch 1 ,contru 
+0x4cd2 019377 store 1 ,mem_hci_curr_len 
+0x4cd3 019378 copy pdata ,loopcnt 
+0x4cd4 019379 ifetch 2 ,contru 
+0x4cd5 019380 store 2 ,mem_hci_curr_target 
+0x4cd6 019381 arg mem_l2cap_rxbuff1 ,contw 
+0x4cd7 019382 call uart_copy_rx_bytes 
+0x4cd8 019383 fetcht 1 ,mem_hci_curr_len 
+0x4cd9 019384 arg mem_l2cap_rxbuff1 ,rega 
+0x4cda 019385 fetch 2 ,mem_hci_curr_target 
+0x4cdb 019386 branch iicd_write_ota_data 
+:      019391 hci_normal_reply:
+0x4cdc 019392 force 4 ,loopcnt 
+:      019393 hci_command_complete:
+0x4cdd 019394 call hci_get_payload_ptr 
+0x4cde 019395 force 0x1 ,pdata 
+0x4cdf 019396 istore 1 ,contwu 
+0x4ce0 019397 deposit alarm 
+0x4ce1 019398 istore 3 ,contwu 
+0x4ce2 019399 force hci_event_command_complete ,queue 
+:      019400 hci_send_event:
+0x4ce3 019401 bpatchx patch20_4 ,mem_patch20 
+0x4ce4 019402 call hci_get_packet_ptr 
+0x4ce5 019403 deposit queue 
+0x4ce6 019404 istore 1 ,contwu 
+0x4ce7 019405 deposit loopcnt 
+0x4ce8 019406 istore 1 ,contwu 
+:      019407 hci_send_event_raw:
+0x4ce9 019408 force 5 ,queue 
+0x4cea 019409 increase 2 ,loopcnt 
+:      019410 hci_send_packet:
+0x4ceb 019411 branch h4_send_packet_event 
+:      019413 hci_send_commu_ready_event:
+0x4cec 019414 force hci_event_vendor_specific ,queue 
+0x4ced 019415 call hci_get_payload_ptr 
+0x4cee 019416 setarg hci_vendor_event_commu_ready 
+0x4cef 019417 istore 1 ,contwu 
+0x4cf0 019418 force 1 ,loopcnt 
+0x4cf1 019419 branch hci_send_event 
+:      019421 hci_get_cmd_complete_ptr:
+0x4cf2 019422 force 12 ,contwu 
+0x4cf3 019423 branch hci_get_tx_ptr 
+:      019425 hci_get_payload_ptr:
+0x4cf4 019426 force 8 ,contwu 
+0x4cf5 019427 branch hci_get_tx_ptr 
+:      019429 hci_get_packet_ptr:
+0x4cf6 019430 force 6 ,contwu 
+:      019431 hci_get_tx_ptr:
+0x4cf7 019432 branch h4_get_tx_ptr 
+:      019436 calc_tx_crc16:
+0x4cf8 019437 pulse crc16 
+0x4cf9 019438 enable enable_crc 
+:      019439 crcloop:
+0x4cfa 019440 ifetch 1 ,contwu 
+0x4cfb 019441 inject bucket ,8 
+0x4cfc 019442 loop crcloop 
+0x4cfd 019443 enable enable_parity 
+0x4cfe 019444 inject bucket ,16 
+0x4cff 019445 disable enable_parity 
+0x4d00 019446 disable enable_crc 
+0x4d01 019447 disable crc16 
+0x4d02 019448 byteswap pdata ,pdata 
+0x4d03 019449 rtn 
+:      019453 cmd_exit:
+0x4d04 019454 jam 0 ,mem_hci_cmd 
+0x4d05 019455 rtn 
+:      019456 cmd_check_plap:
+0x4d06 019457 fetch 6 ,mem_hci_plap 
+0x4d07 019458 fetcht 6 ,mem_plap 
+0x4d08 019459 isub temp ,null 
+0x4d09 019460 rtn 
+:      019465 cmd_pair:
+0x4d0a 019466 fetch 1 ,mem_op 
+0x4d0b 019467 bbit1 op_inrand_req ,cmd_pair_passive 
+0x4d0c 019468 call tid_initiate 
+0x4d0d 019469 jam lmp_in_rand ,mem_lmo_opcode2 
+0x4d0e 019470 branch cmd_exit 
+:      019471 cmd_pair_passive:
+0x4d0f 019472 set0 op_inrand_req ,pdata 
+0x4d10 019473 store 1 ,mem_op 
+0x4d11 019474 call lmp_accept_inrand 
+0x4d12 019475 setarg 0 
+0x4d13 019476 setflag master ,smap_lmptid ,pdata 
+0x4d14 019477 store 1 ,mem_lmo_tid2 
+0x4d15 019478 branch cmd_exit 
+0x4d16 019479 rtn 
+:      019480 cmd_in_sniff:
+0x4d17 019481 jam lmp_sniff_req ,mem_lmo_opcode2 
+0x4d18 019482 arg mem_sniff_payload ,contw 
+0x4d19 019483 setarg 0 
+0x4d1a 019484 isolate1 27 ,clke_bt 
+0x4d1b 019485 setflag true ,1 ,pdata 
+0x4d1c 019486 istore 1 ,contw 
+0x4d1d 019487 setarg 0 
+0x4d1e 019488 istore 2 ,contw 
+0x4d1f 019489 fetch 2 ,mem_sniff_param_interval 
+0x4d20 019490 istore 2 ,contw 
+0x4d21 019491 fetch 1 ,mem_sniff_param_attempt 
+0x4d22 019492 istore 2 ,contw 
+0x4d23 019493 fetch 1 ,mem_sniff_param_timeout 
+0x4d24 019494 istore 2 ,contw 
+0x4d25 019495 branch cmd_exit 
+:      019497 cmd_exit_sniff:
+0x4d26 019498 jam lmp_unsniff_req ,mem_lmo_opcode2 
+0x4d27 019499 branch cmd_exit 
+:      019501 hci_idle_dispatch:
+0x4d28 019502 call gpio_check_uart_state 
+0x4d29 019503 rtn true 
+0x4d2a 019504 arg uart_wakeup_rx ,temp 
+0x4d2b 019505 call gpio_get_bit 
+0x4d2c 019506 nbranch uart_wake_up ,true 
+0x4d2d 019507 jam hci_rx_wake ,mem_hci_lt_rx_state 
+0x4d2e 019508 rtn 
+:      019509 uart_wake_up:
+0x4d2f 019510 fetch 1 ,mem_hci_lt_rx_state 
+0x4d30 019511 rtnne hci_rx_wake 
+0x4d31 019512 call hci_exit_lpm 
+0x4d32 019513 branch hci_send_commu_ready_event 
+:      019527 hid_rx_process:
+0x4d33 019528 bpatchx patch20_5 ,mem_patch20 
+0x4d34 019529 fetch 2 ,mem_l2cap_payload_ptr 
+0x4d35 019530 copy pdata ,contr 
+0x4d36 019531 ifetch 1 ,contr 
+0x4d37 019532 and pdata ,0x0f ,temp 
+0x4d38 019533 rshift4 pdata ,pdata 
+0x4d39 019534 beq hid_type_set_idle ,hid_rx_process_handshake 
+0x4d3a 019535 beq hid_type_set_protocol ,hid_rx_process_handshake 
+0x4d3b 019536 beq hid_type_data ,hid_rx_process_data 
+0x4d3c 019537 beq hid_type_set_report ,hid_rx_process_set_report 
+0x4d3d 019538 beq hid_type_control ,hid_rx_process_hid_control 
+0x4d3e 019539 rtn 
+:      019541 hid_rx_process_hid_control:
+0x4d3f 019542 copy temp ,pdata 
+0x4d40 019543 beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
+0x4d41 019544 beq hid_control_p_suspend ,hid_rx_process_suspend 
+0x4d42 019545 rtn 
+:      019547 hid_rx_process_virtual_cable_unplug:
+0x4d43 019548 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
+0x4d44 019549 call ui_ipc_send_event 
+0x4d45 019550 fetch 1 ,mem_device_option 
+0x4d46 019551 rtnbit0 dvc_op_mouse 
+0x4d47 019552 copy temp ,pdata 
+0x4d48 019553 beq hid_control_p_virtualcableunplug ,mouse_irtual_cable_unplug 
+0x4d49 019554 rtn 
+:      019555 hid_rx_process_suspend:
+0x4d4a 019556 rtn 
+:      019558 hid_rx_process_set_report:
+0x4d4b 019559 call hid_rx_process_data 
+0x4d4c 019560 arg 0x01 ,rega 
+0x4d4d 019561 call hid_malloc_tx_buff 
+0x4d4e 019562 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d4f 019563 istore 2 ,contw 
+0x4d50 019564 setarg 0x00 
+0x4d51 019565 istore 1 ,contw 
+0x4d52 019566 rtn 
+:      019568 hid_rx_process_handshake:
+0x4d53 019569 arg 1 ,rega 
+0x4d54 019570 call hid_malloc_tx_buff 
+0x4d55 019571 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d56 019572 istore 2 ,contw 
+0x4d57 019573 setarg 0 
+0x4d58 019574 istore 1 ,contw 
+0x4d59 019575 jam 1 ,mem_ui_data_txbuff_length 
+0x4d5a 019576 fetch 1 ,mem_hid_control_state 
+0x4d5b 019577 set1 l2cap_channel_hid_handshake_done 
+0x4d5c 019578 store 1 ,mem_hid_control_state 
+0x4d5d 019579 jam bt_evt_hid_handshake ,mem_fifo_temp 
+0x4d5e 019580 branch ui_ipc_send_event 
+:      019582 hid_rx_process_data:
+0x4d5f 019583 ifetch 1 ,contr 
+0x4d60 019584 beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
+0x4d61 019585 rtn 
+:      019587 hid_rx_process_data_hid_kb:
+0x4d62 019588 rtn 
+:      019591 hid_malloc_tx_buff:
+0x4d63 019592 call l2cap_malloc 
+0x4d64 019593 copy rega ,temp 
+0x4d65 019594 storet 1 ,mem_ui_data_txbuff_length 
+0x4d66 019595 copy pdata ,contw 
+0x4d67 019596 copy rega ,pdata 
+0x4d68 019597 istore 2 ,contw 
+0x4d69 019598 rtn 
+:      019615 l2cap_init:
+0x4d6a 019616 branch l2cap_init_wake ,wake 
+:      019617 l2cap_init_work:
+0x4d6b 019618 setarg mem_l2cap_xmem_end 
+0x4d6c 019619 arg mem_l2cap_xmem_start ,contw 
+0x4d6d 019620 isub contw ,loopcnt 
+0x4d6e 019621 call clear_mem 
+:      019622 l2cap_init_wake:
+0x4d6f 019623 bpatchx patch20_6 ,mem_patch20 
+0x4d70 019624 setarg mem_sdp_mem_end 
+0x4d71 019625 arg mem_sdp_mem_start ,contw 
+0x4d72 019626 isub contw ,loopcnt 
+0x4d73 019627 call clear_mem 
+0x4d74 019628 setarg mem_l2cap_mem_end 
+0x4d75 019629 arg mem_l2cap_mem_start ,contw 
+0x4d76 019630 isub contw ,loopcnt 
+0x4d77 019631 call clear_mem 
+0x4d78 019632 branch l2cap_lpm_load_txbuf 
+:      019634 process_rx_l2cap_pkt:
+0x4d79 019635 bpatchx patch20_7 ,mem_patch20 
+0x4d7a 019636 copy contr ,temp 
+0x4d7b 019639 copy temp ,contr 
+0x4d7c 019640 ifetch 2 ,contr 
+0x4d7d 019641 store 2 ,mem_l2cap_rx_pkt_length 
+0x4d7e 019642 ifetch 2 ,contr 
+0x4d7f 019643 store 2 ,mem_l2cap_rx_cid 
+0x4d80 019644 deposit contr 
+0x4d81 019645 store 2 ,mem_l2cap_payload_ptr 
+0x4d82 019646 fetch 1 ,memui_reconnect_mode 
+0x4d83 019647 beq no_reconnection ,l2cap_rx_multiplexing 
+0x4d84 019648 branch ml2cap_rx_multiplexing 
+:      019650 l2cap_rx_multiplexing:
+0x4d85 019651 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4d86 019652 branch l2cap_rx_reset_state ,blank 
+0x4d87 019653 bpatchx patch21_0 ,mem_patch21 
+0x4d88 019654 fetch 1 ,mem_l2cap_rx_cid 
+0x4d89 019655 beq l2cap_signal_channel ,l2cap_call_proc_signal 
+:      019656 l2cap_rx_multiplexing0:
+0x4d8a 019657 beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
+0x4d8b 019658 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x4d8c 019659 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x4d8d 019660 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x4d8e 019661 branch l2cap_rx_reset_state 
+:      019663 l2cap_check_map:
+0x4d8f 019666 bpatchx patch21_1 ,mem_patch21 
+0x4d90 019667 call l2cap_malloc_get_full_map 
+0x4d91 019668 fetch 1 ,mem_used_map 
+0x4d92 019669 beq 0 ,set_pdata_0 
+0x4d93 019670 beq 1 ,set_pdata_0 
+0x4d94 019671 beq 2 ,set_pdata_0 
+0x4d95 019672 beq 3 ,set_pdata_0 
+0x4d96 019673 beq 0x81 ,set_pdata_0 
+0x4d97 019674 beq 0xc0 ,set_pdata_0 
+0x4d98 019675 beq 0x80 ,set_pdata_0 
+0x4d99 019676 beq 0x40 ,set_pdata_0 
+0x4d9a 019677 rtn 
+:      019679 set_pdata_0:
+0x4d9b 019680 setarg 0 
+0x4d9c 019681 rtn 
+:      019684 l2cap_call_proc_signal:
+0x4d9d 019685 call l2cap_check_map 
+0x4d9e 019686 nrtn blank 
+:      019687 l2cap_call_proc_signal0:
+0x4d9f 019688 call l2cap_malloc_signal_channel 
+0x4da0 019689 call l2cap_process_signal_pkt 
+0x4da1 019690 fetcht 2 ,mem_l2cap_signal_tx_length 
+0x4da2 019691 branch l2cap_call_proc_no_reply ,blank 
+0x4da3 019692 call l2cap_get_signal_tx_buff 
+0x4da4 019693 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4da5 019694 istore 2 ,contw 
+0x4da6 019695 force l2cap_signal_channel ,pdata 
+0x4da7 019696 istore 2 ,contw 
+0x4da8 019697 branch l2cap_rx_reset_state 
+:      019699 l2cap_call_proc_sigal_pending:
+0x4da9 019700 fetch 1 ,mem_l2cap_pending_item 
+0x4daa 019701 rtn blank 
+0x4dab 019702 copy pdata ,rega 
+0x4dac 019703 bpatchx patch21_2 ,mem_patch21 
+0x4dad 019704 fetch 4 ,mem_l2cap_sdpres_delay_time 
+0x4dae 019705 arg 0x100 ,temp 
+0x4daf 019706 iadd temp ,temp 
+0x4db0 019707 copy clkn_bt ,pdata 
+0x4db1 019708 isub temp ,null 
+0x4db2 019709 nrtn positive 
+0x4db3 019710 jam 0 ,mem_l2cap_pending_item 
+0x4db4 019711 copy rega ,pdata 
+0x4db5 019712 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
+0x4db6 019713 branch assert 
+:      019714 l2cap_sdp_conn_succ:
+0x4db7 019715 arg 0 ,debug 
+0x4db8 019716 call l2cap_malloc_signal_channel 
+0x4db9 019717 call restore_l2cap_req_param 
+0x4dba 019718 call l2cap_get_signal_tx_payload 
+0x4dbb 019719 call save_cont_pointers 
+0x4dbc 019720 call send_connection_sdp_res 
+0x4dbd 019721 call l2cap_get_signal_tx_buff 
+0x4dbe 019723 setarg 0x000c 
+0x4dbf 019724 istore 2 ,contw 
+0x4dc0 019725 force l2cap_signal_channel ,pdata 
+0x4dc1 019726 istore 2 ,contw 
+0x4dc2 019727 branch l2cap_rx_reset_state 
+:      019731 l2cap_reset_sdp_map:
+0x4dc3 019732 bpatchx patch21_3 ,mem_patch21 
+0x4dc4 019733 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dc5 019734 increase 4 ,pdata 
+0x4dc6 019735 rshift4 pdata ,pdata 
+0x4dc7 019736 rshift3 pdata ,pdata 
+0x4dc8 019737 add pdata ,1 ,temp 
+0x4dc9 019738 arg mem_tx_fifo3 ,contr 
+0x4dca 019739 ifetch 3 ,contr 
+0x4dcb 019740 rtn blank 
+0x4dcc 019741 store 3 ,mem_tx_fifo_map_temp 
+0x4dcd 019742 fetch 1 ,mem_tx_fifo_map_temp 
+0x4dce 019743 copy pdata ,rega 
+0x4dcf 019744 call check_l2cap_map 
+0x4dd0 019745 copy regb ,pdata 
+0x4dd1 019746 store 1 ,mem_tx_fifo3 
+0x4dd2 019747 rtn 
+:      019749 check_l2cap_map:
+0x4dd3 019750 arg 0 ,queue 
+0x4dd4 019751 arg 0 ,regb 
+:      019753 check_l2cap_map_loop:
+0x4dd5 019754 sub queue ,7 ,null 
+0x4dd6 019755 nrtn positive 
+0x4dd7 019756 qisolate1 rega 
+0x4dd8 019757 branch check_l2cap_map_used ,true 
+0x4dd9 019758 branch check_l2cap_map_used2 
+:      019760 check_l2cap_map_used:
+0x4dda 019761 copy temp ,pdata 
+0x4ddb 019762 branch check_l2cap_map_used2 ,blank 
+0x4ddc 019763 qset1 regb 
+0x4ddd 019764 increase -1 ,temp 
+:      019766 check_l2cap_map_used2:
+0x4dde 019767 increase 1 ,queue 
+0x4ddf 019768 branch check_l2cap_map_loop 
+:      019770 l2cap_call_proc_sdp:
+0x4de0 019771 call l2cap_malloc_is_fifo_empty 
+0x4de1 019772 nrtn blank 
+0x4de2 019773 call l2cap_check_map 
+0x4de3 019774 nrtn blank 
+0x4de4 019775 call l2cap_malloc_sdp_channel 
+0x4de5 019776 call sdp_process 
+0x4de6 019777 call l2cap_reset_sdp_map 
+0x4de7 019778 branch l2cap_call_proc_sdp_common 
+:      019781 ml2cap_call_proc_sdp:
+0x4de8 019782 call l2cap_malloc_is_fifo_empty 
+0x4de9 019783 nrtn blank 
+0x4dea 019784 call l2cap_malloc_sdp_channel 
+0x4deb 019785 call sdp_process 
+:      019786 l2cap_call_proc_sdp_common:
+0x4dec 019787 call l2cap_get_sdp_tx_buff 
+0x4ded 019788 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dee 019789 branch l2cap_call_proc_no_reply ,blank 
+0x4def 019790 istore 2 ,contw 
+0x4df0 019791 fetch 2 ,mem_sdp_remote_cid 
+0x4df1 019792 istore 2 ,contw 
+0x4df2 019793 branch l2cap_rx_reset_state 
+:      019795 l2cap_call_proc_hid:
+0x4df3 019796 call hid_rx_process 
+0x4df4 019797 branch l2cap_rx_reset_state 
+:      019799 l2cap_call_proc_rfcomm:
+0x4df5 019800 bpatchx patch21_4 ,mem_patch21 
+0x4df6 019801 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x4df7 019802 call rfcomm_rx_process 
+0x4df8 019803 fetch 1 ,mem_rfcomm_malloc_fail_flag 
+0x4df9 019804 rtneq rfcomm_malloc_fail 
+0x4dfa 019805 branch l2cap_rx_reset_state 
+:      019806 l2cap_call_proc_no_reply:
+0x4dfb 019807 call l2cap_malloc_discard 
+:      019809 l2cap_rx_reset_state:
+0x4dfc 019810 setarg 0 
+0x4dfd 019811 store 2 ,mem_l2cap_rx_pkt_length 
+0x4dfe 019812 store 2 ,mem_l2cap_rx_cid 
+0x4dff 019813 jam l2cap_rx_done ,mem_l2cap_rx_done 
+0x4e00 019814 rtn 
+:      019816 l2cap_process_signal_pkt:
+0x4e01 019817 bpatchx patch21_5 ,mem_patch21 
+0x4e02 019818 call l2cap_get_signal_tx_payload 
+0x4e03 019819 force 0 ,regb 
+0x4e04 019820 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4e05 019821 copy pdata ,regc 
+0x4e06 019822 fetch 2 ,mem_l2cap_payload_ptr 
+0x4e07 019823 iforce contr 
+:      019824 l2cap_process_signal_pkt_loop:
+0x4e08 019825 call l2cap_process_one_signal 
+0x4e09 019826 deposit regc 
+0x4e0a 019827 increase -4 ,regc 
+0x4e0b 019828 increase -4 ,pdata 
+0x4e0c 019829 nbranch l2cap_process_signal_pkt_loop ,blank 
+0x4e0d 019830 copy regb ,pdata 
+0x4e0e 019831 store 2 ,mem_l2cap_signal_tx_length 
+0x4e0f 019832 rtn 
+:      019834 l2cap_process_one_signal:
+0x4e10 019835 bpatchx patch21_6 ,mem_patch21 
+0x4e11 019836 ifetch 1 ,contr 
+0x4e12 019837 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
+0x4e13 019838 beq signal_connect_req ,l2cap_proc_signal_connect_req 
+0x4e14 019839 beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
+0x4e15 019840 beq signal_config_req ,l2cap_proc_signal_config_req 
+0x4e16 019841 beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
+0x4e17 019842 beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
+0x4e18 019843 beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
+0x4e19 019844 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x4e1a 019845 beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
+0x4e1b 019846 beq signal_info_req ,l2cap_proc_signal_info_req 
+0x4e1c 019847 beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
+0x4e1d 019848 call l2cap_reject_command 
+:      019849 l2cap_process_one_signal_rtn:
+0x4e1e 019850 rtn 
+:      019852 l2cap_proc_signal_info_req:
+0x4e1f 019853 ifetch 1 ,contr 
+0x4e20 019854 copy pdata ,queue 
+0x4e21 019855 ifetch 2 ,contr 
+0x4e22 019856 copy pdata ,rega 
+0x4e23 019857 copy regc ,pdata 
+0x4e24 019858 isub rega ,regc 
+0x4e25 019859 setarg signal_info_rsp 
+0x4e26 019860 istore 1 ,contw 
+0x4e27 019861 copy queue ,pdata 
+0x4e28 019862 istore 1 ,contw 
+0x4e29 019863 ifetch 2 ,contr 
+:      019864 l2cap_proc_signal_info_req_reply:
+0x4e2a 019865 beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
+0x4e2b 019866 beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
+0x4e2c 019867 rtn 
+:      019868 l2cap_proc_signal_info_req_ext:
+0x4e2d 019869 setarg 0x020008 
+0x4e2e 019870 istore 6 ,contw 
+0x4e2f 019871 setarg 0x0280 
+0x4e30 019872 istore 4 ,contw 
+0x4e31 019873 force 12 ,pdata 
+0x4e32 019874 branch l2cap_proc_signal_info_req_common 
+:      019875 l2cap_proc_signal_info_req_fix:
+0x4e33 019876 setarg 0x3000c 
+0x4e34 019877 istore 6 ,contw 
+0x4e35 019878 setarg 0x0006 
+0x4e36 019879 istore 8 ,contw 
+0x4e37 019880 force 16 ,pdata 
+:      019881 l2cap_proc_signal_info_req_common:
+0x4e38 019882 iadd regb ,regb 
+0x4e39 019883 branch l2cap_process_one_signal_rtn 
+:      019885 ml2cap_proc_signal_info_req:
+0x4e3a 019886 ifetch 1 ,contr 
+0x4e3b 019887 copy pdata ,queue 
+0x4e3c 019888 ifetch 2 ,contr 
+0x4e3d 019889 copy pdata ,rega 
+0x4e3e 019890 ifetch 2 ,contr 
+0x4e3f 019891 store 2 ,mem_temp 
+0x4e40 019892 copy regc ,pdata 
+0x4e41 019893 isub rega ,regc 
+0x4e42 019894 call l2cap_get_signal_tx_payload 
+0x4e43 019895 setarg signal_info_rsp 
+0x4e44 019896 istore 1 ,contw 
+0x4e45 019897 copy queue ,pdata 
+0x4e46 019898 istore 1 ,contw 
+0x4e47 019899 fetch 2 ,mem_temp 
+0x4e48 019900 branch l2cap_proc_signal_info_req_reply 
+:      019904 l2cap_proc_signal_cmd_reject:
+0x4e49 019905 ifetch 1 ,contr 
+0x4e4a 019906 copy pdata ,queue 
+0x4e4b 019907 ifetch 2 ,contr 
+0x4e4c 019908 copy pdata ,rega 
+0x4e4d 019909 iadd contr ,contr 
+0x4e4e 019910 copy regc ,pdata 
+0x4e4f 019911 isub rega ,regc 
+:      019912 l2cap_proc_signal_cmd_reject_rtn:
+0x4e50 019913 branch l2cap_process_one_signal_rtn 
+:      019915 l2cap_proc_signal_connect_req:
+0x4e51 019916 call save_cont_pointers 
+0x4e52 019919 call load_cont_pointers 
+0x4e53 019920 arg 0 ,debug 
+0x4e54 019921 ifetch 1 ,contr 
+0x4e55 019922 copy pdata ,queue 
+0x4e56 019923 ifetch 2 ,contr 
+0x4e57 019924 copy pdata ,rega 
+0x4e58 019925 ifetch 2 ,contr 
+0x4e59 019926 copy pdata ,temp 
+0x4e5a 019927 ifetch 2 ,contr 
+0x4e5b 019928 copy pdata ,timeup 
+0x4e5c 019929 bpatchx patch21_7 ,mem_patch21 
+0x4e5d 019930 copy temp ,pdata 
+0x4e5e 019931 beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
+0x4e5f 019932 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
+0x4e60 019933 beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
+0x4e61 019934 beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
+0x4e62 019935 call l2cap_reject_command 
+0x4e63 019936 branch l2cap_proc_signal_connect_req_rtn 
+:      019938 l2cap_proc_signal_connect_req_sdp:
+0x4e64 019939 call save_cont_pointers 
+0x4e65 019940 arg l2cap_sdp_channel ,temp 
+0x4e66 019941 fetch 2 ,mem_sdp_remote_cid 
+0x4e67 019942 nbranch already_connected ,blank 
+0x4e68 019943 copy timeup ,pdata 
+0x4e69 019944 store 2 ,mem_sdp_remote_cid 
+0x4e6a 019945 copy clkn_bt ,pdata 
+0x4e6b 019946 store 4 ,mem_l2cap_sdpres_delay_time 
+0x4e6c 019947 call store_l2cap_req_param 
+0x4e6d 019948 branch send_connection_pending 
+:      019950 store_l2cap_req_param:
+0x4e6e 019951 storet 2 ,mem_psm 
+0x4e6f 019952 deposit timeup 
+0x4e70 019953 store 2 ,mem_scid 
+0x4e71 019954 deposit rega 
+0x4e72 019955 store 2 ,mem_cmd_length 
+0x4e73 019956 deposit regb 
+0x4e74 019957 store 2 ,mem_tt2 
+0x4e75 019958 deposit regc 
+0x4e76 019959 store 2 ,mem_tt3 
+0x4e77 019960 deposit queue 
+0x4e78 019961 store 2 ,mem_id 
+0x4e79 019962 rtn 
+:      019964 restore_l2cap_req_param:
+0x4e7a 019965 fetcht 2 ,mem_psm 
+0x4e7b 019966 fetch 2 ,mem_scid 
+0x4e7c 019967 copy pdata ,timeup 
+0x4e7d 019968 fetch 2 ,mem_cmd_length 
+0x4e7e 019969 copy pdata ,rega 
+0x4e7f 019970 fetch 2 ,mem_tt2 
+0x4e80 019971 copy pdata ,regb 
+0x4e81 019972 fetch 2 ,mem_tt3 
+0x4e82 019973 copy pdata ,regc 
+0x4e83 019974 fetch 2 ,mem_id 
+0x4e84 019975 copy pdata ,queue 
+0x4e85 019976 rtn 
+:      019978 l2cap_proc_signal_connect_req_rfcomm:
+0x4e86 019979 call save_cont_pointers 
+0x4e87 019980 setarg l2cap_rfcomm_channel 
+0x4e88 019981 arg l2cap_rfcomm_channel ,temp 
+0x4e89 019982 fetch 2 ,mem_rfcomm_remote_cid 
+0x4e8a 019983 nbranch already_connected ,blank 
+0x4e8b 019984 copy timeup ,pdata 
+0x4e8c 019985 store 2 ,mem_rfcomm_remote_cid 
+0x4e8d 019986 fetch 1 ,mem_rfcomm_state 
+0x4e8e 019987 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e8f 019988 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e90 019989 store 1 ,mem_rfcomm_state 
+0x4e91 019990 branch send_connection_res 
+:      019991 l2cap_proc_signal_connect_req_hid_ctrl:
+0x4e92 019992 call save_cont_pointers 
+0x4e93 019993 arg l2cap_hid_control_channel ,temp 
+0x4e94 019994 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4e95 019995 nbranch already_connected ,blank 
+0x4e96 019996 copy timeup ,pdata 
+0x4e97 019997 store 2 ,mem_hid_ctrl_remote_cid 
+0x4e98 019998 fetch 1 ,mem_hid_control_state 
+0x4e99 019999 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e9a 020000 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e9b 020001 store 1 ,mem_hid_control_state 
+0x4e9c 020002 branch send_connection_res 
+:      020003 l2cap_proc_signal_connect_req_hid_int:
+0x4e9d 020004 call save_cont_pointers 
+0x4e9e 020005 deposit clke 
+0x4e9f 020006 arg l2cap_hid_interrupt_channel ,temp 
+0x4ea0 020007 fetch 2 ,mem_hid_int_remote_cid 
+0x4ea1 020008 nbranch already_connected ,blank 
+0x4ea2 020009 copy timeup ,pdata 
+0x4ea3 020010 store 2 ,mem_hid_int_remote_cid 
+0x4ea4 020011 fetch 1 ,mem_hid_interrupt_state 
+0x4ea5 020012 set1 l2cap_channel_state_conn_req ,pdata 
+0x4ea6 020013 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ea7 020014 store 1 ,mem_hid_interrupt_state 
+0x4ea8 020015 branch send_connection_res 
+:      020017 send_connection_pending:
+0x4ea9 020018 setarg l2cap_connect_pending 
+0x4eaa 020019 store 2 ,meml2cap_t1 
+0x4eab 020020 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
+0x4eac 020021 branch send_connection_res0 
+:      020022 send_connection_sdp_res:
+0x4ead 020023 fetch 1 ,mem_sdp_state 
+0x4eae 020024 set1 l2cap_channel_state_conn_req ,pdata 
+0x4eaf 020025 set1 l2cap_channel_state_conn_res ,pdata 
+0x4eb0 020026 store 1 ,mem_sdp_state 
+:      020027 send_connection_res:
+0x4eb1 020028 setarg l2cap_connect_successful 
+0x4eb2 020029 store 2 ,meml2cap_t1 
+:      020030 send_connection_res0:
+0x4eb3 020031 bpatchx patch22_0 ,mem_patch22 
+0x4eb4 020032 call load_cont_pointers 
+0x4eb5 020033 setarg signal_connect_rsp 
+0x4eb6 020034 istore 1 ,contw 
+0x4eb7 020035 copy queue ,pdata 
+0x4eb8 020036 istore 1 ,contw 
+0x4eb9 020037 setarg 0x0008 
+0x4eba 020038 istore 2 ,contw 
+0x4ebb 020039 copy temp ,pdata 
+0x4ebc 020040 istore 2 ,contw 
+0x4ebd 020041 copy timeup ,pdata 
+0x4ebe 020042 istore 2 ,contw 
+0x4ebf 020043 fetch 2 ,meml2cap_t1 
+0x4ec0 020044 beq l2cap_connect_pending ,connect_pending 
+0x4ec1 020045 isolate0 0 ,debug 
+0x4ec2 020046 branch connect_suc ,true 
+0x4ec3 020047 setarg l2cap_connect_refused_no_resources 
+:      020048 connect_suc:
+0x4ec4 020049 istore 2 ,contw 
+0x4ec5 020050 force 0x0000 ,pdata 
+0x4ec6 020051 istore 2 ,contw 
+0x4ec7 020052 setarg 12 
+0x4ec8 020053 branch connect_req_update_byte_counts 
+:      020054 connect_pending:
+0x4ec9 020055 istore 2 ,contw 
+0x4eca 020056 force 0x0002 ,pdata 
+0x4ecb 020057 istore 2 ,contw 
+0x4ecc 020058 setarg 12 
+0x4ecd 020059 branch connect_req_update_byte_counts 
+:      020061 already_connected:
+0x4ece 020062 set1 0 ,debug 
+0x4ecf 020063 branch send_connection_res 
+:      020064 connect_req_update_byte_counts:
+0x4ed0 020065 iadd regb ,regb 
+0x4ed1 020066 copy regc ,pdata 
+0x4ed2 020067 isub rega ,regc 
+0x4ed3 020068 branch l2cap_proc_signal_connect_req_rtn 
+:      020069 l2cap_proc_signal_connect_req_rtn:
+0x4ed4 020070 branch l2cap_process_one_signal_rtn 
+:      020072 l2cap_proc_signal_connect_rsp:
+0x4ed5 020073 ifetch 1 ,contr 
+0x4ed6 020074 copy pdata ,queue 
+0x4ed7 020075 ifetch 2 ,contr 
+0x4ed8 020076 copy pdata ,rega 
+0x4ed9 020077 copy regc ,pdata 
+0x4eda 020078 isub rega ,regc 
+0x4edb 020079 ifetch 2 ,contr 
+0x4edc 020080 copy pdata ,timeup 
+0x4edd 020081 ifetch 2 ,contr 
+0x4ede 020082 copy pdata ,temp 
+0x4edf 020083 bpatchx patch22_1 ,mem_patch22 
+0x4ee0 020084 setarg l2cap_sdp_channel 
+0x4ee1 020085 isub temp ,null 
+0x4ee2 020086 branch l2cap_proc_signal_connect_rsp_sdp ,zero 
+0x4ee3 020087 setarg l2cap_rfcomm_channel 
+0x4ee4 020088 isub temp ,null 
+0x4ee5 020089 branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x4ee6 020090 setarg l2cap_hid_control_channel 
+0x4ee7 020091 isub temp ,null 
+0x4ee8 020092 branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x4ee9 020093 setarg l2cap_hid_interrupt_channel 
+0x4eea 020094 isub temp ,null 
+0x4eeb 020095 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x4eec 020096 rtn 
+:      020098 l2cap_proc_signal_connect_rsp_sdp:
+0x4eed 020099 copy timeup ,pdata 
+0x4eee 020100 store 2 ,mem_sdp_remote_cid 
+0x4eef 020101 fetch 1 ,mem_sdp_state 
+0x4ef0 020102 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef1 020103 store 1 ,mem_sdp_state 
+0x4ef2 020104 branch l2cap_process_one_signal_rtn 
+:      020105 l2cap_proc_signal_connect_rsp_rfcomm:
+0x4ef3 020106 copy timeup ,pdata 
+0x4ef4 020107 store 2 ,mem_rfcomm_remote_cid 
+0x4ef5 020108 fetch 1 ,mem_rfcomm_state 
+0x4ef6 020109 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef7 020110 store 1 ,mem_rfcomm_state 
+0x4ef8 020111 rtn 
+:      020112 l2cap_proc_signal_connect_rsp_hid_int:
+0x4ef9 020113 copy timeup ,pdata 
+0x4efa 020114 store 2 ,mem_hid_ctrl_remote_cid 
+0x4efb 020115 fetch 1 ,mem_hid_interrupt_state 
+0x4efc 020116 set1 l2cap_channel_state_conn_res ,pdata 
+0x4efd 020117 store 1 ,mem_hid_interrupt_state 
+0x4efe 020118 rtn 
+:      020119 l2cap_proc_signal_connect_rsp_hid_ctrl:
+0x4eff 020120 copy timeup ,pdata 
+0x4f00 020121 store 2 ,mem_hid_int_remote_cid 
+0x4f01 020122 fetch 1 ,mem_hid_control_state 
+0x4f02 020123 set1 l2cap_channel_state_conn_res ,pdata 
+0x4f03 020124 store 1 ,mem_hid_control_state 
+0x4f04 020125 rtn 
+:      020127 l2cap_proc_signal_config_req:
+0x4f05 020128 ifetch 1 ,contr 
+0x4f06 020129 copy pdata ,queue 
+0x4f07 020130 ifetch 2 ,contr 
+0x4f08 020131 copy pdata ,rega 
+0x4f09 020132 copy regc ,pdata 
+0x4f0a 020133 isub rega ,regc 
+0x4f0b 020134 ifetch 2 ,contr 
+0x4f0c 020135 copy pdata ,temp 
+0x4f0d 020136 copy temp ,rega 
+0x4f0e 020137 bpatchx patch22_2 ,mem_patch22 
+0x4f0f 020138 setarg l2cap_sdp_channel 
+0x4f10 020139 isub temp ,null 
+0x4f11 020140 branch l2cap_proc_signal_config_req_sdp ,zero 
+0x4f12 020141 setarg l2cap_rfcomm_channel 
+0x4f13 020142 isub temp ,null 
+0x4f14 020143 branch l2cap_proc_signal_config_req_rfcomm ,zero 
+0x4f15 020144 setarg l2cap_hid_control_channel 
+0x4f16 020145 isub temp ,null 
+0x4f17 020146 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x4f18 020147 setarg l2cap_hid_interrupt_channel 
+0x4f19 020148 isub temp ,null 
+0x4f1a 020149 branch l2cap_proc_signal_config_req_hid_int ,zero 
+0x4f1b 020150 branch l2cap_reject_command 
+:      020152 l2cap_proc_signal_config_req_sdp:
+0x4f1c 020153 copy contw ,timeup 
+0x4f1d 020154 fetch 1 ,mem_sdp_state 
+0x4f1e 020155 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f1f 020156 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f20 020158 store 1 ,mem_sdp_state 
+0x4f21 020159 copy timeup ,contw 
+0x4f22 020160 arg l2cap_sdp_channel ,timeup 
+0x4f23 020161 fetch 2 ,mem_sdp_remote_cid 
+0x4f24 020162 copy pdata ,temp 
+0x4f25 020163 branch l2cap_send_config_rsp 
+:      020164 l2cap_proc_signal_config_req_hid_ctrl:
+0x4f26 020165 copy contw ,timeup 
+0x4f27 020166 fetch 1 ,mem_hid_control_state 
+0x4f28 020167 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f29 020168 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f2a 020170 store 1 ,mem_hid_control_state 
+0x4f2b 020171 copy timeup ,contw 
+0x4f2c 020172 arg l2cap_hid_control_channel ,timeup 
+0x4f2d 020173 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f2e 020174 copy pdata ,temp 
+0x4f2f 020175 branch l2cap_send_config_rsp 
+:      020176 l2cap_proc_signal_config_req_hid_int:
+0x4f30 020177 copy contw ,timeup 
+0x4f31 020178 fetch 1 ,mem_hid_interrupt_state 
+0x4f32 020179 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f33 020180 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f34 020182 store 1 ,mem_hid_interrupt_state 
+0x4f35 020183 copy timeup ,contw 
+0x4f36 020184 arg l2cap_hid_interrupt_channel ,timeup 
+0x4f37 020185 fetch 2 ,mem_hid_int_remote_cid 
+0x4f38 020186 copy pdata ,temp 
+0x4f39 020187 branch l2cap_send_config_rsp 
+:      020188 l2cap_proc_signal_config_req_rfcomm:
+0x4f3a 020189 copy contw ,timeup 
+0x4f3b 020190 fetch 1 ,mem_rfcomm_state 
+0x4f3c 020191 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f3d 020192 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f3e 020194 store 1 ,mem_rfcomm_state 
+0x4f3f 020196 copy timeup ,contw 
+0x4f40 020197 arg l2cap_rfcomm_channel ,timeup 
+0x4f41 020198 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f42 020199 copy pdata ,temp 
+:      020200 l2cap_send_config_rsp:
+0x4f43 020201 bpatchx patch22_3 ,mem_patch22 
+0x4f44 020202 setarg signal_config_rsp 
+0x4f45 020203 istore 1 ,contw 
+0x4f46 020204 copy queue ,pdata 
+0x4f47 020205 istore 1 ,contw 
+0x4f48 020206 setarg 0x0006 
+0x4f49 020207 istore 2 ,contw 
+0x4f4a 020208 copy temp ,pdata 
+0x4f4b 020209 istore 2 ,contw 
+0x4f4c 020210 force 0x00 ,pdata 
+0x4f4d 020211 istore 2 ,contw 
+0x4f4e 020212 force l2cap_config_success ,pdata 
+0x4f4f 020213 istore 2 ,contw 
+0x4f50 020214 force 10 ,pdata 
+0x4f51 020215 iadd regb ,regb 
+0x4f52 020217 storet 2 ,mem_config_req_dest_cid 
+0x4f53 020218 copy queue ,pdata 
+0x4f54 020219 store 1 ,mem_config_identifier 
+0x4f55 020220 force l2cap_sdp_channel ,pdata 
+0x4f56 020221 icompare 0xff ,timeup 
+0x4f57 020222 branch l2cap_send_config_rsp_is_sdp ,true 
+0x4f58 020223 increase 1 ,pdata 
+:      020224 l2cap_send_config_rsp_is_sdp:
+0x4f59 020226 rtn 
+:      020227 l2cap_check_channel_state:
+0x4f5a 020228 disable user 
+0x4f5b 020229 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5c 020230 rtnbit0 l2cap_channel_state_conn_req ,pdata 
+0x4f5d 020231 rtnbit0 l2cap_channel_state_conn_res ,pdata 
+0x4f5e 020232 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5f 020233 copy contr ,contw 
+0x4f60 020234 increase -1 ,contw 
+0x4f61 020235 istore 1 ,contw 
+0x4f62 020236 enable user 
+0x4f63 020237 rtn 
+:      020238 l2cap_send_config_req:
+:      020239 l2cap_send_config_req_sdp:
+0x4f64 020240 fetch 1 ,mem_sdp_state 
+0x4f65 020241 call l2cap_check_channel_state 
+0x4f66 020242 nbranch l2cap_send_config_req_rfcomm ,user 
+0x4f67 020243 jam l2cap_sdp_channel ,mem_send_config_req 
+0x4f68 020244 fetch 2 ,mem_sdp_remote_cid 
+0x4f69 020245 store 2 ,mem_config_req_dest_cid 
+0x4f6a 020246 branch l2cap_generate_config_req 
+:      020247 l2cap_send_config_req_rfcomm:
+0x4f6b 020248 fetch 1 ,mem_rfcomm_state 
+0x4f6c 020249 call l2cap_check_channel_state 
+0x4f6d 020250 nbranch l2cap_send_config_req_hid_ctrl ,user 
+0x4f6e 020251 jam l2cap_rfcomm_channel ,mem_send_config_req 
+0x4f6f 020252 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f70 020253 store 2 ,mem_config_req_dest_cid 
+0x4f71 020254 branch l2cap_generate_config_req 
+:      020255 l2cap_send_config_req_hid_ctrl:
+0x4f72 020256 fetch 1 ,mem_hid_control_state 
+0x4f73 020257 call l2cap_check_channel_state 
+0x4f74 020258 nbranch l2cap_send_config_req_hid_int ,user 
+0x4f75 020259 jam l2cap_hid_control_channel ,mem_send_config_req 
+0x4f76 020260 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f77 020261 store 2 ,mem_config_req_dest_cid 
+0x4f78 020262 branch l2cap_generate_config_req 
+:      020263 l2cap_send_config_req_hid_int:
+0x4f79 020264 fetch 1 ,mem_hid_interrupt_state 
+0x4f7a 020265 call l2cap_check_channel_state 
+0x4f7b 020266 nrtn user 
+0x4f7c 020267 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
+0x4f7d 020268 fetch 2 ,mem_hid_int_remote_cid 
+0x4f7e 020269 store 2 ,mem_config_req_dest_cid 
+:      020272 l2cap_generate_config_req:
+0x4f7f 020273 bpatchx patch22_4 ,mem_patch22 
+0x4f80 020274 call l2cap_get_req_id 
+0x4f81 020275 call l2cap_malloc_signal_channel 
+0x4f82 020276 force 0 ,regb 
+0x4f83 020277 call l2cap_get_signal_tx_payload 
+0x4f84 020278 force signal_config_req ,pdata 
+0x4f85 020279 istore 1 ,contw 
+0x4f86 020280 fetch 1 ,mem_ml2cap_comm_id 
+0x4f87 020281 istore 1 ,contw 
+0x4f88 020282 setarg 0x0008 
+0x4f89 020283 istore 2 ,contw 
+0x4f8a 020284 fetch 2 ,mem_config_req_dest_cid 
+0x4f8b 020285 istore 2 ,contw 
+0x4f8c 020286 setarg 0x0000 
+0x4f8d 020287 istore 2 ,contw 
+0x4f8e 020288 force 1 ,pdata 
+0x4f8f 020289 istore 1 ,contw 
+0x4f90 020290 force 2 ,pdata 
+0x4f91 020291 istore 1 ,contw 
+0x4f92 020292 fetch 1 ,mem_send_config_req 
+0x4f93 020293 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
+0x4f94 020294 setarg l2cap_config_mtu_sdp 
+0x4f95 020295 istore 2 ,contw 
+0x4f96 020296 branch l2cap_generate_config_req_done 
+:      020297 l2cap_generate_config_req_rfcomm:
+0x4f97 020298 setarg l2cap_config_mtu_rfcomm 
+0x4f98 020299 istore 2 ,contw 
+:      020300 l2cap_generate_config_req_done:
+0x4f99 020301 arg 0x0c ,temp 
+0x4f9a 020302 storet 2 ,mem_l2cap_signal_tx_length 
+0x4f9b 020303 call l2cap_get_signal_tx_buff 
+0x4f9c 020304 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4f9d 020305 istore 2 ,contw 
+0x4f9e 020306 force l2cap_signal_channel ,pdata 
+0x4f9f 020307 istore 2 ,contw 
+0x4fa0 020308 jam 0 ,mem_send_config_req 
+:      020309 l2cap_proc_signal_config_req_rtn:
+0x4fa1 020310 branch l2cap_process_one_signal_rtn 
+:      020312 l2cap_proc_signal_config_rsp:
+0x4fa2 020313 increase 1 ,contr 
+0x4fa3 020314 ifetch 2 ,contr 
+0x4fa4 020315 copy pdata ,rega 
+0x4fa5 020316 copy regc ,pdata 
+0x4fa6 020317 isub rega ,regc 
+0x4fa7 020318 ifetch 2 ,contr 
+0x4fa8 020319 copy pdata ,rega 
+0x4fa9 020320 bpatchx patch22_5 ,mem_patch22 
+0x4faa 020321 setarg l2cap_sdp_channel 
+0x4fab 020322 isub rega ,null 
+0x4fac 020323 branch l2cap_proc_signal_config_rsp_sdp ,zero 
+0x4fad 020324 setarg l2cap_rfcomm_channel 
+0x4fae 020325 isub rega ,null 
+0x4faf 020326 branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x4fb0 020327 setarg l2cap_hid_control_channel 
+0x4fb1 020328 isub rega ,null 
+0x4fb2 020329 branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x4fb3 020330 setarg l2cap_hid_interrupt_channel 
+0x4fb4 020331 isub rega ,null 
+0x4fb5 020332 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
+0x4fb6 020333 increase 2 ,contr 
+0x4fb7 020334 ifetch 2 ,contr 
+0x4fb8 020335 iforce null 
+0x4fb9 020336 branch l2cap_process_one_signal_rtn 
+:      020337 l2cap_proc_signal_config_rsp_sdp:
+0x4fba 020338 fetch 1 ,mem_sdp_state 
+0x4fbb 020339 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fbc 020340 store 1 ,mem_sdp_state 
+0x4fbd 020341 branch l2cap_process_one_signal_rtn 
+:      020342 l2cap_proc_signal_config_rsp_rfcomm:
+0x4fbe 020343 fetch 1 ,mem_rfcomm_state 
+0x4fbf 020344 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc0 020345 store 1 ,mem_rfcomm_state 
+0x4fc1 020346 branch l2cap_process_one_signal_rtn 
+:      020347 l2cap_proc_signal_config_rsp_hid_ctrl:
+0x4fc2 020348 fetch 1 ,mem_hid_control_state 
+0x4fc3 020349 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc4 020350 store 1 ,mem_hid_control_state 
+0x4fc5 020351 branch l2cap_process_one_signal_rtn 
+:      020352 l2cap_proc_signal_config_rsp_hid_int:
+0x4fc6 020353 fetch 1 ,mem_hid_interrupt_state 
+0x4fc7 020354 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc8 020355 store 1 ,mem_hid_interrupt_state 
+0x4fc9 020356 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x4fca 020357 branch ui_ipc_send_event 
+:      020361 l2cap_proc_signal_disconnect_req:
+0x4fcb 020362 ifetch 1 ,contr 
+0x4fcc 020363 copy pdata ,queue 
+0x4fcd 020364 ifetch 2 ,contr 
+0x4fce 020365 copy pdata ,rega 
+0x4fcf 020366 copy regc ,pdata 
+0x4fd0 020367 isub rega ,regc 
+0x4fd1 020368 ifetch 2 ,contr 
+0x4fd2 020369 copy pdata ,rega 
+0x4fd3 020370 ifetch 2 ,contr 
+0x4fd4 020371 copy pdata ,timeup 
+0x4fd5 020372 copy rega ,temp 
+0x4fd6 020373 call save_cont_pointers 
+0x4fd7 020374 bpatchx patch22_6 ,mem_patch22 
+0x4fd8 020375 setarg l2cap_sdp_channel 
+0x4fd9 020376 isub temp ,null 
+0x4fda 020377 branch l2cap_proc_signal_disconnect_req_sdp ,zero 
+0x4fdb 020378 setarg l2cap_rfcomm_channel 
+0x4fdc 020379 isub temp ,null 
+0x4fdd 020380 branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
+0x4fde 020381 setarg l2cap_hid_control_channel 
+0x4fdf 020382 isub temp ,null 
+0x4fe0 020383 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
+0x4fe1 020384 setarg l2cap_hid_interrupt_channel 
+0x4fe2 020385 isub temp ,null 
+0x4fe3 020386 branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
+0x4fe4 020387 call l2cap_reject_command 
+0x4fe5 020388 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020389 l2cap_proc_signal_disconnect_req_hid_ctrl:
+0x4fe6 020390 copy timeup ,temp 
+0x4fe7 020391 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4fe8 020392 isub temp ,null 
+0x4fe9 020393 branch l2cap_disconnect_hid_control_now ,zero 
+0x4fea 020394 call l2cap_reject_command 
+0x4feb 020395 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020396 l2cap_proc_signal_disconnect_req_hid_int:
+0x4fec 020397 copy timeup ,temp 
+0x4fed 020398 fetch 2 ,mem_hid_int_remote_cid 
+0x4fee 020399 isub temp ,null 
+0x4fef 020400 branch l2cap_disconnect_hid_interrupt_now ,zero 
+0x4ff0 020401 call l2cap_reject_command 
+0x4ff1 020402 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020404 l2cap_proc_signal_disconnect_req_sdp:
+0x4ff2 020405 copy timeup ,temp 
+0x4ff3 020406 fetch 2 ,mem_sdp_remote_cid 
+0x4ff4 020407 isub temp ,null 
+0x4ff5 020408 branch l2cap_disconnect_sdp_now ,zero 
+0x4ff6 020409 call l2cap_reject_command 
+0x4ff7 020410 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020411 l2cap_disconnect_hid_control_now:
+0x4ff8 020412 call l2cap_reset_hid_ctrl_state 
+0x4ff9 020413 branch l2cap_send_disconnect_rsp_pkt 
+:      020414 l2cap_disconnect_hid_interrupt_now:
+0x4ffa 020415 call l2cap_reset_hid_int_state 
+0x4ffb 020416 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4ffc 020417 branch l2cap_send_disconnect_rsp_pkt ,blank 
+0x4ffd 020425 branch l2cap_send_disconnect_rsp_pkt 
+:      020427 l2cap_disconnect_sdp_now:
+0x4ffe 020428 call l2cap_reset_sdp_channel_state 
+0x4fff 020429 fetch 1 ,mem_upper_sm_ss 
+0x5000 020430 nbranch l2cap_send_disconnect_rsp_pkt ,blank 
+0x5001 020433 branch l2cap_send_disconnect_rsp_pkt 
+:      020434 l2cap_proc_signal_disconnect_req_rfcomm:
+0x5002 020435 copy timeup ,temp 
+0x5003 020436 fetch 2 ,mem_rfcomm_remote_cid 
+0x5004 020437 isub temp ,null 
+0x5005 020438 branch l2cap_disconnect_rfcomm_now ,zero 
+0x5006 020439 call l2cap_reject_command 
+0x5007 020440 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020441 l2cap_disconnect_rfcomm_now:
+0x5008 020442 call l2cap_reset_rfcomm_channel_state 
+0x5009 020443 branch l2cap_send_disconnect_rsp_pkt 
+:      020444 l2cap_send_disconnect_rsp_pkt:
+0x500a 020445 call load_cont_pointers 
+0x500b 020446 setarg signal_disconnect_rsp 
+0x500c 020447 istore 1 ,contw 
+0x500d 020448 copy queue ,pdata 
+0x500e 020449 istore 1 ,contw 
+0x500f 020450 setarg 0x0004 
+0x5010 020451 istore 2 ,contw 
+0x5011 020452 copy rega ,pdata 
+0x5012 020453 istore 2 ,contw 
+0x5013 020454 copy timeup ,pdata 
+0x5014 020455 istore 2 ,contw 
+0x5015 020456 force 8 ,pdata 
+0x5016 020457 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020458 l2cap_proc_signal_disconnect_req_err_rtn:
+0x5017 020459 call load_cont_pointers 
+0x5018 020460 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020461 l2cap_proc_signal_disconnect_req_rtn:
+0x5019 020462 iadd regb ,regb 
+0x501a 020463 branch l2cap_process_one_signal_rtn 
+:      020464 l2cap_proc_signal_disconnect_rsp:
+0x501b 020465 ifetch 1 ,contr 
+0x501c 020466 copy pdata ,queue 
+0x501d 020467 ifetch 2 ,contr 
+0x501e 020468 copy pdata ,rega 
+0x501f 020469 copy regc ,pdata 
+0x5020 020470 isub rega ,regc 
+0x5021 020471 ifetch 2 ,contr 
+0x5022 020472 copy pdata ,timeup 
+0x5023 020473 ifetch 2 ,contr 
+0x5024 020474 copy pdata ,temp 
+0x5025 020475 call save_cont_pointers 
+0x5026 020476 bpatchx patch22_7 ,mem_patch22 
+0x5027 020477 setarg l2cap_sdp_channel 
+0x5028 020478 isub temp ,null 
+0x5029 020479 branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
+0x502a 020480 setarg l2cap_rfcomm_channel 
+0x502b 020481 isub temp ,null 
+0x502c 020482 branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
+0x502d 020483 setarg l2cap_hid_control_channel 
+0x502e 020484 isub temp ,null 
+0x502f 020485 branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
+0x5030 020486 setarg l2cap_hid_interrupt_channel 
+0x5031 020487 isub temp ,null 
+0x5032 020488 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
+0x5033 020489 call l2cap_reject_command 
+0x5034 020490 branch l2cap_proc_signal_disconnect_rsp_err_rtn 
+:      020491 l2cap_proc_signal_disconnect_rsp_sdp:
+0x5035 020492 copy temp ,rega 
+0x5036 020493 copy timeup ,temp 
+0x5037 020494 fetch 2 ,mem_sdp_remote_cid 
+0x5038 020495 isub temp ,null 
+0x5039 020496 call l2cap_reset_sdp_channel_state ,zero 
+0x503a 020497 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020498 l2cap_proc_signal_disconnect_rsp_rfcomm:
+0x503b 020499 copy temp ,rega 
+0x503c 020500 copy timeup ,temp 
+0x503d 020501 fetch 2 ,mem_rfcomm_remote_cid 
+0x503e 020502 isub temp ,null 
+0x503f 020503 call l2cap_reset_rfcomm_channel_state ,zero 
+0x5040 020504 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020505 l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+0x5041 020506 copy temp ,rega 
+0x5042 020507 copy timeup ,temp 
+0x5043 020508 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5044 020509 isub temp ,null 
+0x5045 020510 call l2cap_reset_hid_ctrl_state ,zero 
+0x5046 020511 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020512 l2cap_proc_signal_disconnect_rsp_hid_int:
+0x5047 020513 copy temp ,rega 
+0x5048 020514 copy timeup ,temp 
+0x5049 020515 fetch 2 ,mem_hid_int_remote_cid 
+0x504a 020516 isub temp ,null 
+0x504b 020517 call l2cap_reset_hid_int_state ,zero 
+0x504c 020518 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020519 l2cap_proc_signal_disconnect_rsp_rtn:
+0x504d 020520 call load_cont_pointers 
+0x504e 020521 branch l2cap_process_one_signal_rtn 
+:      020522 l2cap_proc_signal_disconnect_rsp_err_rtn:
+0x504f 020523 branch l2cap_process_one_signal_rtn 
+:      020526 l2cap_proc_signal_echo_req:
+0x5050 020527 ifetch 1 ,contr 
+0x5051 020528 copy pdata ,queue 
+0x5052 020529 ifetch 2 ,contr 
+0x5053 020530 copy pdata ,rega 
+0x5054 020531 iadd contr ,contr 
+0x5055 020532 setarg 9 
+0x5056 020533 istore 1 ,contw 
+0x5057 020534 copy queue ,pdata 
+0x5058 020535 istore 1 ,contw 
+0x5059 020536 force 0x0000 ,pdata 
+0x505a 020537 istore 2 ,contw 
+0x505b 020538 force 4 ,pdata 
+0x505c 020539 iadd regb ,regb 
+0x505d 020540 copy regc ,pdata 
+0x505e 020541 isub rega ,regc 
+0x505f 020542 branch l2cap_process_one_signal_rtn 
+:      020543 l2cap_proc_signal_echo_rsp:
+0x5060 020544 branch l2cap_process_one_signal_rtn 
+:      020546 l2cap_proc_signal_info_rsp:
+0x5061 020547 branch l2cap_process_one_signal_rtn 
+:      020548 l2cap_reject_command:
+0x5062 020549 force 0 ,regb 
+0x5063 020550 call l2cap_get_signal_tx_payload 
+0x5064 020551 setarg signal_cmd_reject 
+0x5065 020552 istore 1 ,contw 
+0x5066 020553 copy queue ,pdata 
+0x5067 020554 istore 1 ,contw 
+0x5068 020555 setarg 2 
+0x5069 020556 istore 2 ,contw 
+0x506a 020557 setarg cmd_not_understood 
+0x506b 020558 istore 2 ,contw 
+0x506c 020559 increase 6 ,regb 
+0x506d 020560 arg 4 ,regc 
+0x506e 020561 branch l2cap_process_one_signal_rtn 
+:      020565 l2cap_reset_rfcomm_channel_state:
+0x506f 020566 setarg 0 
+0x5070 020567 store 2 ,mem_rfcomm_tx_pkt_length 
+0x5071 020568 store 2 ,mem_rfcomm_remote_cid 
+0x5072 020569 jam 0 ,mem_rfcomm_state 
+0x5073 020570 rtn 
+:      020571 l2cap_reset_sdp_channel_state:
+0x5074 020572 setarg 0 
+0x5075 020573 store 2 ,mem_sdp_tx_pkt_length 
+0x5076 020574 store 2 ,mem_sdp_remote_cid 
+0x5077 020575 jam 0 ,mem_sdp_state 
+0x5078 020576 rtn 
+:      020577 l2cap_reset_hid_ctrl_state:
+0x5079 020578 setarg 0 
+0x507a 020579 store 2 ,mem_hid_ctrl_remote_cid 
+0x507b 020580 jam 0 ,mem_hid_control_state 
+0x507c 020581 fetch 1 ,mem_hid_interrupt_state 
+0x507d 020582 beq 0 ,l2cap_reset_hid_disconnected 
+0x507e 020583 rtn 
+:      020585 l2cap_reset_hid_int_state:
+0x507f 020586 setarg 0 
+0x5080 020587 store 2 ,mem_hid_int_remote_cid 
+0x5081 020588 jam 0 ,mem_hid_interrupt_state 
+0x5082 020589 fetch 1 ,mem_hid_control_state 
+0x5083 020590 beq 0 ,l2cap_reset_hid_disconnected 
+0x5084 020591 rtn 
+:      020593 l2cap_reset_hid_disconnected:
+0x5085 020594 jam bt_evt_hid_disconnected ,mem_fifo_temp 
+0x5086 020595 branch ui_ipc_send_event 
+:      020597 l2cap_disconnect_interrupt_req:
+0x5087 020598 fetch 1 ,mem_control_tasks 
+0x5088 020599 set0 l2cap_disconnect_interrupt ,pdata 
+0x5089 020600 store 1 ,mem_control_tasks 
+0x508a 020601 fetch 2 ,mem_hid_int_remote_cid 
+0x508b 020602 rtn blank 
+0x508c 020603 call l2cap_malloc_signal_channel 
+0x508d 020604 fetch 2 ,mem_hid_int_remote_cid 
+0x508e 020605 copy pdata ,rega 
+0x508f 020606 force l2cap_hid_interrupt_channel ,regb 
+0x5090 020607 branch l2cap_generate_disconnect_req 
+:      020608 l2cap_disconnect_control_req:
+0x5091 020609 fetch 1 ,mem_control_tasks 
+0x5092 020610 set0 l2cap_disconnect_control ,pdata 
+0x5093 020611 store 1 ,mem_control_tasks 
+0x5094 020612 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5095 020613 rtn blank 
+0x5096 020614 call l2cap_malloc_signal_channel 
+0x5097 020615 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5098 020616 copy pdata ,rega 
+0x5099 020617 force l2cap_hid_control_channel ,regb 
+:      020618 l2cap_generate_disconnect_req:
+0x509a 020619 call l2cap_get_req_id 
+0x509b 020620 call l2cap_get_signal_tx_payload 
+0x509c 020621 force signal_disconnect_req ,pdata 
+0x509d 020622 istore 1 ,contw 
+0x509e 020623 fetch 1 ,mem_ml2cap_comm_id 
+0x509f 020624 istore 1 ,contw 
+0x50a0 020625 setarg 0x0004 
+0x50a1 020626 istore 2 ,contw 
+0x50a2 020627 copy rega ,pdata 
+0x50a3 020628 istore 2 ,contw 
+0x50a4 020629 copy regb ,pdata 
+0x50a5 020630 istore 2 ,contw 
+0x50a6 020631 force 0x08 ,temp 
+0x50a7 020632 branch ml2cap_send_signal 
+:      020634 ml2cap_send_signal_connect_req:
+0x50a8 020635 bpatchx patch23_0 ,mem_patch23 
+0x50a9 020636 call l2cap_get_req_id 
+0x50aa 020637 call l2cap_get_signal_tx_payload 
+0x50ab 020638 setarg signal_connect_req 
+0x50ac 020639 istore 1 ,contw 
+0x50ad 020640 fetch 1 ,mem_ml2cap_comm_id 
+0x50ae 020641 istore 1 ,contw 
+0x50af 020642 setarg 0x0004 
+0x50b0 020643 istore 2 ,contw 
+0x50b1 020644 copy temp ,pdata 
+0x50b2 020645 istore 2 ,contw 
+0x50b3 020646 copy timeup ,pdata 
+0x50b4 020647 istore 2 ,contw 
+0x50b5 020648 arg 8 ,temp 
+0x50b6 020649 branch ml2cap_send_signal 
+:      020650 ml2cap_send_signal_config_req:
+0x50b7 020651 bpatchx patch23_1 ,mem_patch23 
+0x50b8 020652 call l2cap_get_req_id 
+0x50b9 020653 call l2cap_get_signal_tx_payload 
+0x50ba 020654 setarg signal_config_req 
+0x50bb 020655 istore 1 ,contw 
+0x50bc 020656 fetch 1 ,mem_ml2cap_comm_id 
+0x50bd 020657 istore 1 ,contw 
+0x50be 020658 setarg 0x0008 
+0x50bf 020659 istore 2 ,contw 
+0x50c0 020661 copy temp ,pdata 
+0x50c1 020663 istore 2 ,contw 
+0x50c2 020664 setarg 0x0000 
+0x50c3 020665 istore 2 ,contw 
+0x50c4 020666 setarg 0x01 
+0x50c5 020667 istore 1 ,contw 
+0x50c6 020668 setarg 0x02 
+0x50c7 020669 istore 1 ,contw 
+0x50c8 020670 setarg l2cap_config_mtu_rfcomm 
+0x50c9 020671 istore 2 ,contw 
+0x50ca 020672 arg 0xc ,temp 
+0x50cb 020673 branch ml2cap_send_signal 
+:      020674 ml2cap_send_signal_disconn_req:
+0x50cc 020675 bpatchx patch23_2 ,mem_patch23 
+0x50cd 020676 call l2cap_get_req_id 
+0x50ce 020677 call l2cap_get_signal_tx_payload 
+0x50cf 020678 setarg signal_disconnect_req 
+0x50d0 020679 istore 1 ,contw 
+0x50d1 020680 fetch 1 ,mem_ml2cap_comm_id 
+0x50d2 020681 increase 1 ,pdata 
+0x50d3 020682 copy contw ,rega 
+0x50d4 020683 store 1 ,mem_ml2cap_comm_id 
+0x50d5 020684 copy rega ,contw 
+0x50d6 020685 istore 1 ,contw 
+0x50d7 020686 setarg 0x0004 
+0x50d8 020687 istore 2 ,contw 
+0x50d9 020688 copy temp ,pdata 
+0x50da 020689 istore 2 ,contw 
+0x50db 020690 copy timeup ,pdata 
+0x50dc 020691 istore 2 ,contw 
+0x50dd 020692 arg 0x8 ,temp 
+:      020695 ml2cap_send_signal:
+0x50de 020696 storet 2 ,mem_l2cap_signal_tx_length 
+0x50df 020697 copy temp ,pdata 
+0x50e0 020698 branch l2cap_malloc_discard ,blank 
+0x50e1 020699 call l2cap_get_signal_tx_buff 
+0x50e2 020700 fetch 2 ,mem_l2cap_signal_tx_length 
+0x50e3 020701 istore 2 ,contw 
+0x50e4 020702 force l2cap_signal_channel ,pdata 
+0x50e5 020703 istore 2 ,contw 
+0x50e6 020704 rtn 
+:      020706 msdp_send_req_done:
+0x50e7 020707 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50e8 020708 branch assert ,blank 
+0x50e9 020709 call l2cap_get_sdp_tx_buff 
+0x50ea 020710 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50eb 020711 istore 2 ,contw 
+0x50ec 020712 fetch 2 ,mem_sdp_remote_cid 
+0x50ed 020713 istore 2 ,contw 
+0x50ee 020714 rtn 
+:      020715 ml2cap_rx_multiplexing:
+0x50ef 020716 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50f0 020717 branch l2cap_rx_reset_state ,blank 
+0x50f1 020718 bpatchx patch23_3 ,mem_patch23 
+0x50f2 020719 fetch 1 ,mem_l2cap_rx_cid 
+0x50f3 020720 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
+0x50f4 020721 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
+0x50f5 020722 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x50f6 020723 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x50f7 020724 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x50f8 020725 branch l2cap_rx_reset_state 
+:      020727 ml2cap_call_proc_signal:
+0x50f9 020728 bpatchx patch23_4 ,mem_patch23 
+0x50fa 020729 call l2cap_malloc_signal_channel 
+0x50fb 020730 force 0 ,regb 
+0x50fc 020731 call l2cap_get_signal_tx_payload 
+0x50fd 020732 copy pdata ,contw 
+0x50fe 020733 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50ff 020734 copy pdata ,regc 
+0x5100 020735 fetch 2 ,mem_l2cap_payload_ptr 
+0x5101 020736 iforce contr 
+:      020737 ml2cap_proc_one_comm_loop:
+0x5102 020738 call ml2cap_proc_one_comm 
+0x5103 020739 increase -4 ,regc 
+0x5104 020740 nbranch ml2cap_proc_one_comm_loop ,zero 
+0x5105 020741 copy regb ,temp 
+0x5106 020742 call ml2cap_send_signal 
+0x5107 020743 branch l2cap_rx_reset_state 
+:      020745 ml2cap_proc_one_comm:
+0x5108 020746 ifetch 1 ,contr 
+0x5109 020747 beq signal_connect_req ,ml2cap_proc_signal_connect_req 
+0x510a 020748 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
+0x510b 020749 beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
+0x510c 020750 beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
+0x510d 020751 beq signal_config_req ,ml2cap_proc_signal_config_req 
+0x510e 020752 beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
+0x510f 020753 beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
+0x5110 020754 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x5111 020755 beq signal_info_req ,ml2cap_proc_signal_info_req 
+0x5112 020756 branch ml2cap_proc_send_reject 
+:      020758 ml2cap_proc_signal_connect_req:
+0x5113 020759 call save_cont_pointers 
+0x5114 020761 call load_cont_pointers 
+0x5115 020762 branch l2cap_proc_signal_connect_req 
+:      020763 ml2cap_proc_signal_cmd_reject:
+0x5116 020764 ifetch 1 ,contr 
+0x5117 020765 copy pdata ,queue 
+0x5118 020766 ifetch 2 ,contr 
+0x5119 020767 copy pdata ,rega 
+0x511a 020768 copy regc ,pdata 
+0x511b 020769 isub rega ,regc 
+:      020770 mvptr:
+0x511c 020771 ifetch 1 ,contr 
+0x511d 020772 increase -1 ,rega 
+0x511e 020773 nbranch mvptr ,zero 
+0x511f 020774 rtn 
+:      020775 ml2cap_proc_signal_connect_rsp:
+0x5120 020776 ifetch 1 ,contr 
+0x5121 020777 copy pdata ,queue 
+0x5122 020778 ifetch 2 ,contr 
+0x5123 020779 copy pdata ,rega 
+0x5124 020780 ifetch 2 ,contr 
+0x5125 020781 copy pdata ,timeup 
+0x5126 020782 ifetch 2 ,contr 
+0x5127 020783 copy pdata ,temp 
+0x5128 020784 ifetch 2 ,contr 
+0x5129 020785 sub pdata ,0 ,null 
+0x512a 020786 branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
+0x512b 020787 beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
+0x512c 020788 beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
+0x512d 020789 branch ml2cap_proc_signal_connect_rsp_mnosucc 
+:      020790 ml2cap_proc_signal_connect_refused_result:
+0x512e 020791 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
+0x512f 020792 call ui_ipc_send_event 
+:      020793 ml2cap_proc_signal_connect_rsp_mnosucc:
+0x5130 020794 ifetch 2 ,contr 
+0x5131 020795 branch mnosucc 
+:      020796 ml2cap_proc_signal_connect_rsp_sucessful:
+0x5132 020797 call save_cont_pointers 
+0x5133 020801 bpatchx patch23_5 ,mem_patch23 
+0x5134 020802 setarg l2cap_sdp_channel 
+0x5135 020803 isub temp ,null 
+0x5136 020804 branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
+0x5137 020805 setarg l2cap_rfcomm_channel 
+0x5138 020806 isub temp ,null 
+0x5139 020807 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x513a 020808 setarg l2cap_hid_interrupt_channel 
+0x513b 020809 isub temp ,null 
+0x513c 020810 branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x513d 020811 setarg l2cap_hid_control_channel 
+0x513e 020812 isub temp ,null 
+0x513f 020813 branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x5140 020814 branch mnosucc 
+:      020815 ml2cap_proc_signal_connect_rsp_sdp:
+0x5141 020816 copy timeup ,pdata 
+0x5142 020817 store 2 ,mem_sdp_remote_cid 
+0x5143 020818 fetch 1 ,mem_sdp_state 
+0x5144 020819 set1 l2cap_channel_state_conn_res 
+0x5145 020820 store 1 ,mem_sdp_state 
+0x5146 020821 branch mnosucc1 
+:      020822 ml2cap_proc_signal_connect_rsp_rfcomm:
+0x5147 020823 copy timeup ,pdata 
+0x5148 020824 store 2 ,mem_rfcomm_remote_cid 
+0x5149 020825 fetch 1 ,mem_rfcomm_state 
+0x514a 020826 set1 l2cap_channel_state_conn_res 
+0x514b 020827 store 1 ,mem_rfcomm_state 
+0x514c 020828 branch mnosucc1 
+:      020829 ml2cap_proc_signal_connect_rsp_hid_ctrl:
+0x514d 020830 copy timeup ,pdata 
+0x514e 020831 store 2 ,mem_hid_ctrl_remote_cid 
+0x514f 020832 fetch 1 ,mem_hid_control_state 
+0x5150 020833 set1 l2cap_channel_state_conn_res 
+0x5151 020834 store 1 ,mem_hid_control_state 
+0x5152 020835 branch mnosucc1 
+:      020836 ml2cap_proc_signal_connect_rsp_hid_int:
+0x5153 020837 copy timeup ,pdata 
+0x5154 020838 store 2 ,mem_hid_int_remote_cid 
+0x5155 020839 fetch 1 ,mem_hid_interrupt_state 
+0x5156 020840 set1 l2cap_channel_state_conn_res 
+0x5157 020841 store 1 ,mem_hid_interrupt_state 
+:      020844 mnosucc1:
+0x5158 020845 call load_cont_pointers 
+:      020846 mnosucc:
+0x5159 020847 copy regc ,pdata 
+0x515a 020848 isub rega ,regc 
+0x515b 020849 rtn 
+:      020851 ml2cap_proc_signal_config_rsp:
+0x515c 020852 ifetch 1 ,contr 
+0x515d 020853 copy pdata ,queue 
+0x515e 020854 ifetch 2 ,contr 
+0x515f 020855 copy pdata ,rega 
+0x5160 020856 copy regc ,pdata 
+0x5161 020857 isub rega ,regc 
+0x5162 020858 ifetch 2 ,contr 
+0x5163 020859 copy pdata ,timeup 
+0x5164 020860 ifetch 2 ,contr 
+0x5165 020861 ifetch 2 ,contr 
+0x5166 020862 nbranch mcrsdone1 ,blank 
+0x5167 020863 call save_cont_pointers 
+0x5168 020867 copy timeup ,temp 
+0x5169 020868 bpatchx patch23_6 ,mem_patch23 
+0x516a 020869 setarg l2cap_sdp_channel 
+0x516b 020870 isub temp ,null 
+0x516c 020871 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
+0x516d 020872 setarg l2cap_rfcomm_channel 
+0x516e 020873 isub temp ,null 
+0x516f 020874 branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x5170 020875 setarg l2cap_hid_control_channel 
+0x5171 020876 isub temp ,null 
+0x5172 020877 branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x5173 020878 setarg l2cap_hid_interrupt_channel 
+0x5174 020879 isub temp ,null 
+0x5175 020880 branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
+:      020881 ml2cap_proc_signal_config_rsp_sdp:
+0x5176 020882 fetch 1 ,mem_sdp_state 
+0x5177 020883 set1 l2cap_channel_state_rcv_cfg_res 
+0x5178 020884 store 1 ,mem_sdp_state 
+0x5179 020885 rtn 
+:      020886 ml2cap_proc_signal_config_rsp_rfcomm:
+0x517a 020887 fetch 1 ,mem_rfcomm_state 
+0x517b 020888 set1 l2cap_channel_state_rcv_cfg_res 
+0x517c 020889 store 1 ,mem_rfcomm_state 
+0x517d 020890 rtn 
+:      020891 ml2cap_proc_signal_config_rsp_hid_ctrl:
+0x517e 020892 fetch 1 ,mem_hid_control_state 
+0x517f 020893 set1 l2cap_channel_state_rcv_cfg_res 
+0x5180 020894 store 1 ,mem_hid_control_state 
+0x5181 020895 rtn 
+:      020896 ml2cap_proc_signal_config_rsp_hid_int:
+0x5182 020897 fetch 1 ,mem_hid_interrupt_state 
+0x5183 020898 set1 l2cap_channel_state_rcv_cfg_res 
+0x5184 020899 store 1 ,mem_hid_interrupt_state 
+0x5185 020900 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x5186 020901 branch ui_ipc_send_event 
+:      020904 mcfrsdone:
+0x5187 020905 call load_cont_pointers 
+:      020906 mcrsdone1:
+0x5188 020907 increase -6 ,rega 
+:      020908 mloop2:
+0x5189 020909 branch mcrsdone ,zero 
+0x518a 020910 increase 1 ,contr 
+0x518b 020911 increase -1 ,rega 
+0x518c 020912 branch mloop2 
+:      020913 mcrsdone:
+0x518d 020914 rtn 
+:      020915 ml2cap_proc_signal_config_req:
+0x518e 020916 ifetch 1 ,contr 
+0x518f 020917 copy pdata ,queue 
+0x5190 020918 ifetch 2 ,contr 
+0x5191 020919 copy pdata ,rega 
+0x5192 020920 copy regc ,pdata 
+0x5193 020921 isub rega ,regc 
+0x5194 020922 ifetch 2 ,contr 
+0x5195 020923 increase 2 ,contr 
+0x5196 020924 copy pdata ,temp 
+0x5197 020925 setarg signal_config_rsp 
+0x5198 020926 istore 1 ,contw 
+0x5199 020927 copy queue ,pdata 
+0x519a 020928 istore 1 ,contw 
+0x519b 020929 increase 2 ,rega 
+0x519c 020930 copy rega ,pdata 
+0x519d 020931 istore 2 ,contw 
+0x519e 020932 call save_cont_pointers 
+0x519f 020933 bpatchx patch23_7 ,mem_patch23 
+0x51a0 020934 setarg l2cap_sdp_channel 
+0x51a1 020935 isub temp ,null 
+0x51a2 020936 branch ml2cap_proc_signal_config_req_sdp ,zero 
+0x51a3 020937 setarg l2cap_rfcomm_channel 
+0x51a4 020938 isub temp ,null 
+0x51a5 020939 branch ml2cap_proc_signal_config_req_rfcomm ,zero 
+0x51a6 020940 setarg l2cap_hid_control_channel 
+0x51a7 020941 isub temp ,null 
+0x51a8 020942 branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x51a9 020943 setarg l2cap_hid_interrupt_channel 
+0x51aa 020944 isub temp ,null 
+0x51ab 020945 branch ml2cap_proc_signal_config_req_hid_int ,zero 
+0x51ac 020946 branch mcfgrq_done 
+:      020947 ml2cap_proc_signal_config_req_sdp:
+0x51ad 020948 fetch 1 ,mem_sdp_state 
+0x51ae 020949 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51af 020950 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51b0 020951 store 1 ,mem_sdp_state 
+0x51b1 020952 bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
+0x51b2 020953 fetcht 1 ,mem_control_tasks 
+0x51b3 020954 set1 l2cap_init_config_req ,temp 
+0x51b4 020955 storet 1 ,mem_control_tasks 
+0x51b5 020956 copy queue ,pdata 
+0x51b6 020957 increase 1 ,pdata 
+0x51b7 020958 store 1 ,mem_config_identifier 
+0x51b8 020959 fetch 1 ,mem_sdp_state 
+0x51b9 020960 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x51ba 020961 store 1 ,mem_sdp_state 
+:      020962 ml2cap_proc_signal_config_req_sdp_nsndreq:
+0x51bb 020963 fetch 2 ,mem_sdp_remote_cid 
+0x51bc 020964 store 2 ,mem_config_req_dest_cid 
+0x51bd 020965 branch mcfgrq_done 
+:      020966 ml2cap_proc_signal_config_req_rfcomm:
+0x51be 020967 fetch 1 ,mem_rfcomm_state 
+0x51bf 020968 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c0 020969 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c1 020970 store 1 ,mem_rfcomm_state 
+0x51c2 020971 fetch 2 ,mem_rfcomm_remote_cid 
+0x51c3 020972 branch mcfgrq_done 
+:      020973 ml2cap_proc_signal_config_req_hid_ctrl:
+0x51c4 020974 fetch 1 ,mem_hid_control_state 
+0x51c5 020975 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c6 020976 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c7 020977 store 1 ,mem_hid_control_state 
+0x51c8 020978 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x51c9 020979 branch mcfgrq_done 
+:      020980 ml2cap_proc_signal_config_req_hid_int:
+0x51ca 020981 fetch 1 ,mem_hid_interrupt_state 
+0x51cb 020982 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51cc 020983 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51cd 020984 store 1 ,mem_hid_interrupt_state 
+0x51ce 020985 fetch 2 ,mem_hid_int_remote_cid 
+:      020988 mcfgrq_done:
+0x51cf 020989 copy pdata ,timeup 
+0x51d0 020990 call load_cont_pointers 
+0x51d1 020992 copy timeup ,pdata 
+0x51d2 020994 istore 2 ,contw 
+0x51d3 020995 force 0x0000 ,pdata 
+0x51d4 020996 istore 2 ,contw 
+0x51d5 020997 force 0x0000 ,pdata 
+0x51d6 020998 istore 2 ,contw 
+0x51d7 020999 force 10 ,pdata 
+0x51d8 021000 iadd regb ,regb 
+0x51d9 021001 increase -6 ,rega 
+:      021002 mloop1:
+0x51da 021003 branch mcrqdone ,zero 
+0x51db 021004 ifetch 1 ,contr 
+0x51dc 021005 istore 1 ,contw 
+0x51dd 021006 increase 1 ,regb 
+0x51de 021007 increase -1 ,rega 
+0x51df 021008 branch mloop1 
+:      021009 mcrqdone:
+0x51e0 021010 rtn 
+:      021011 ml2cap_proc_signal_disconn_req:
+0x51e1 021012 ifetch 1 ,contr 
+0x51e2 021013 copy pdata ,queue 
+0x51e3 021014 ifetch 2 ,contr 
+0x51e4 021015 copy pdata ,rega 
+0x51e5 021016 copy regc ,pdata 
+0x51e6 021017 isub rega ,regc 
+0x51e7 021019 ifetch 2 ,contr 
+0x51e8 021020 copy pdata ,rega 
+0x51e9 021021 ifetch 2 ,contr 
+0x51ea 021022 copy pdata ,timeup 
+0x51eb 021023 call save_cont_pointers 
+0x51ec 021024 bpatchx patch24_0 ,mem_patch24 
+0x51ed 021025 setarg l2cap_sdp_channel 
+0x51ee 021026 copy rega ,temp 
+0x51ef 021027 isub temp ,null 
+0x51f0 021028 branch ml2cap_proc_signal_disconn_sdp ,zero 
+0x51f1 021029 setarg l2cap_hid_control_channel 
+0x51f2 021030 copy rega ,temp 
+0x51f3 021031 isub temp ,null 
+0x51f4 021032 branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
+0x51f5 021033 setarg l2cap_hid_interrupt_channel 
+0x51f6 021034 copy rega ,temp 
+0x51f7 021035 isub temp ,null 
+0x51f8 021036 branch ml2cap_proc_signal_disconn_hid_int ,zero 
+0x51f9 021037 branch mclsrfc 
+:      021038 ml2cap_proc_signal_disconn_sdp:
+0x51fa 021039 setarg 0x0000 
+0x51fb 021040 store 2 ,mem_sdp_tx_pkt_length 
+0x51fc 021041 store 2 ,mem_sdp_remote_cid 
+0x51fd 021042 store 1 ,mem_sdp_state 
+0x51fe 021043 branch mclssdp 
+:      021044 ml2cap_proc_signal_disconn_hid_ctrl:
+0x51ff 021045 call l2cap_reset_hid_ctrl_state 
+0x5200 021046 branch mclssdp 
+:      021047 ml2cap_proc_signal_disconn_hid_int:
+0x5201 021048 call l2cap_reset_hid_int_state 
+0x5202 021054 branch mclssdp 
+:      021055 mclsrfc:
+0x5203 021056 setarg 0x0000 
+0x5204 021057 store 2 ,mem_rfcomm_tx_pkt_length 
+:      021058 mclssdp:
+0x5205 021059 call load_cont_pointers 
+0x5206 021060 setarg signal_disconnect_rsp 
+0x5207 021061 istore 1 ,contw 
+0x5208 021062 copy queue ,pdata 
+0x5209 021063 istore 1 ,contw 
+0x520a 021064 setarg 0x0004 
+0x520b 021065 istore 2 ,contw 
+0x520c 021066 copy rega ,pdata 
+0x520d 021067 istore 2 ,contw 
+0x520e 021068 copy timeup ,pdata 
+0x520f 021069 istore 2 ,contw 
+0x5210 021070 force 8 ,pdata 
+0x5211 021071 iadd regb ,regb 
+0x5212 021072 rtn 
+:      021074 ml2cap_proc_signal_disconn_rsp:
+0x5213 021075 ifetch 1 ,contr 
+0x5214 021076 copy pdata ,queue 
+0x5215 021077 ifetch 2 ,contr 
+0x5216 021078 copy pdata ,rega 
+0x5217 021079 ifetch 2 ,contr 
+0x5218 021080 copy pdata ,timeup 
+0x5219 021081 ifetch 2 ,contr 
+0x521a 021082 copy pdata ,temp 
+0x521b 021083 call save_cont_pointers 
+0x521c 021084 bpatchx patch24_1 ,mem_patch24 
+0x521d 021085 fetch 1 ,mem_ml2cap_comm_id 
+0x521e 021086 icompare 0xff ,queue 
+0x521f 021087 nbranch mdisdone ,true 
+0x5220 021088 setarg l2cap_sdp_channel 
+0x5221 021089 isub temp ,null 
+0x5222 021090 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
+0x5223 021091 setarg l2cap_rfcomm_channel 
+0x5224 021092 isub temp ,null 
+0x5225 021093 branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
+0x5226 021094 branch mdisdone 
+:      021095 ml2cap_proc_signal_disconn_rsp_sdp:
+0x5227 021096 jam 0 ,mem_sdp_remote_cid 
+0x5228 021097 jam 0 ,mem_sdp_state 
+0x5229 021098 branch mdisdone 
+:      021099 ml2cap_proc_signal_disconn_rsp_rfcomm:
+:      021102 mdisdone:
+0x522a 021103 call load_cont_pointers 
+0x522b 021104 copy regc ,pdata 
+0x522c 021105 isub rega ,regc 
+0x522d 021106 rtn 
+:      021108 ml2cap_proc_send_reject:
+0x522e 021109 setarg signal_cmd_reject 
+0x522f 021110 istore 1 ,contw 
+0x5230 021111 ifetch 1 ,contr 
+0x5231 021112 istore 1 ,contw 
+0x5232 021113 setarg 0x0002 
+0x5233 021114 istore 2 ,contw 
+0x5234 021115 setarg 0x0000 
+0x5235 021116 istore 2 ,contw 
+0x5236 021117 setarg 0x0006 
+0x5237 021118 iadd regb ,regb 
+0x5238 021119 force 4 ,regc 
+0x5239 021120 rtn 
+:      021123 l2cap_get_req_id:
+0x523a 021124 fetch 1 ,mem_ml2cap_comm_id 
+0x523b 021125 increase 1 ,pdata 
+0x523c 021126 bne 0 ,l2cap_get_req_id_ok 
+0x523d 021127 increase 1 ,pdata 
+:      021128 l2cap_get_req_id_ok:
+0x523e 021129 store 1 ,mem_ml2cap_comm_id 
+0x523f 021130 rtn 
+:      021140 l2cap_malloc:
+0x5240 021141 bpatchx patch24_2 ,mem_patch24 
+0x5241 021142 arg 0 ,regb 
+0x5242 021143 call l2cap_malloc_is_fifo_full 
+0x5243 021144 nbranch assert ,blank 
+0x5244 021145 call l2cap_malloc_get_full_map 
+0x5245 021146 arg mem_tx_buff0 ,regb 
+0x5246 021147 arg 0 ,queue 
+:      021148 l2cap_malloc_loop:
+0x5247 021149 fetcht 1 ,mem_used_map 
+0x5248 021150 qisolate1 temp 
+0x5249 021151 branch l2cap_malloc_next ,true 
+0x524a 021152 call l2cap_malloc_enough 
+0x524b 021153 sub timeup ,0 ,null 
+0x524c 021154 branch l2cap_malloc_next ,positive 
+0x524d 021155 call l2cap_malloc_into_fifo 
+0x524e 021156 branch l2cap_malloc_rtn 
+:      021157 l2cap_malloc_next:
+0x524f 021158 increase 128 ,regb 
+0x5250 021159 increase 1 ,queue 
+0x5251 021160 setarg 8 
+0x5252 021161 isub queue ,null 
+0x5253 021162 branch l2cap_malloc_loop ,positive 
+0x5254 021163 arg 0 ,regb 
+:      021164 l2cap_malloc_rtn:
+0x5255 021165 copy regb ,pdata 
+0x5256 021166 branch assert ,blank 
+0x5257 021167 rtn 
+:      021175 l2cap_malloc_fifo_out:
+0x5258 021176 bpatchx patch24_3 ,mem_patch24 
+0x5259 021177 call l2cap_malloc_fifo_get_first_ptr 
+0x525a 021178 increase 1 ,contr 
+0x525b 021179 ifetch 2 ,contr 
+0x525c 021180 rtn 
+:      021186 l2cap_malloc_free:
+0x525d 021187 bpatchx patch24_4 ,mem_patch24 
+0x525e 021188 call l2cap_malloc_fifo_get_first_ptr 
+0x525f 021189 copy contr ,contw 
+0x5260 021190 copy contr ,temp 
+0x5261 021191 setarg 0 
+0x5262 021192 istore 3 ,contw 
+0x5263 021193 rtn 
+:      021198 l2cap_malloc_discard:
+0x5264 021199 bpatchx patch24_5 ,mem_patch24 
+0x5265 021200 call l2cap_malloc_is_fifo_empty 
+0x5266 021201 branch assert ,blank 
+0x5267 021202 fetch 3 ,mem_tx_fifo2 
+0x5268 021203 store 3 ,mem_tx_fifo3 
+0x5269 021204 fetch 3 ,mem_tx_fifo1 
+0x526a 021205 store 3 ,mem_tx_fifo2 
+0x526b 021206 fetch 3 ,mem_tx_fifo0 
+0x526c 021207 store 3 ,mem_tx_fifo1 
+0x526d 021208 rtn 
+:      021214 l2cap_malloc_is_fifo_full:
+0x526e 021215 bpatchx patch24_6 ,mem_patch24 
+0x526f 021216 fetch 3 ,mem_tx_fifo0 
+0x5270 021217 rtn 
+:      021223 l2cap_malloc_is_fifo_nearly_full:
+0x5271 021224 bpatchx patch24_7 ,mem_patch24 
+0x5272 021225 fetch 3 ,mem_tx_fifo1 
+0x5273 021226 rtn 
+:      021232 l2cap_malloc_is_fifo_empty:
+0x5274 021233 bpatchx patch25_0 ,mem_patch25 
+0x5275 021234 fetch 3 ,mem_tx_fifo3 
+0x5276 021235 rtn 
+:      021240 l2cap_malloc_fifo_get_first_ptr:
+0x5277 021241 call l2cap_malloc_is_fifo_empty 
+0x5278 021242 branch assert ,blank 
+0x5279 021243 arg mem_tx_fifo0 ,contr 
+:      021244 l2cap_malloc_free_loop:
+0x527a 021245 ifetch 3 ,contr 
+0x527b 021246 branch l2cap_malloc_free_loop ,blank 
+0x527c 021247 increase -3 ,contr 
+0x527d 021248 rtn 
+:      021255 l2cap_malloc_get_full_map:
+0x527e 021256 bpatchx patch25_1 ,mem_patch25 
+0x527f 021257 arg 4 ,loopcnt 
+0x5280 021258 arg mem_tx_fifo0_map ,contr 
+0x5281 021259 arg 0 ,temp 
+:      021260 l2cap_malloc_get_full_map_loop:
+0x5282 021261 ifetch 3 ,contr 
+0x5283 021262 and pdata ,0xff ,pdata 
+0x5284 021263 ior temp ,temp 
+0x5285 021264 loop l2cap_malloc_get_full_map_loop 
+0x5286 021265 storet 1 ,mem_used_map 
+0x5287 021266 rtn 
+:      021274 l2cap_malloc_into_fifo:
+0x5288 021275 bpatchx patch25_2 ,mem_patch25 
+0x5289 021276 call l2cap_malloc_is_fifo_full 
+0x528a 021277 nbranch assert ,blank 
+0x528b 021278 call l2cap_malloc_is_fifo_empty 
+0x528c 021279 branch l2cap_malloc_into_fifo_no_push ,blank 
+0x528d 021280 fetch 3 ,mem_tx_fifo1 
+0x528e 021281 store 3 ,mem_tx_fifo0 
+0x528f 021282 ifetch 3 ,contr 
+0x5290 021283 istore 3 ,contw 
+0x5291 021284 ifetch 3 ,contr 
+0x5292 021285 istore 3 ,contw 
+0x5293 021286 setarg 0 
+0x5294 021287 istore 3 ,contw 
+:      021288 l2cap_malloc_into_fifo_no_push:
+0x5295 021289 arg 0 ,temp 
+0x5296 021290 copy timeup ,pdata 
+0x5297 021291 iadd queue ,pdata 
+:      021292 l2cap_malloc_into_fifo_loop:
+0x5298 021293 qset1 temp 
+0x5299 021294 increase 1 ,queue 
+0x529a 021295 isub queue ,null 
+0x529b 021296 nbranch l2cap_malloc_into_fifo_loop ,zero 
+0x529c 021298 lshift8 regb ,pdata 
+0x529d 021299 ior temp ,pdata 
+0x529e 021300 store 3 ,mem_tx_fifo3 
+0x529f 021301 rtn 
+:      021311 l2cap_malloc_enough:
+0x52a0 021312 bpatchx patch25_3 ,mem_patch25 
+0x52a1 021313 call l2cap_malloc_get_full_map 
+0x52a2 021314 copy queue ,regc 
+0x52a3 021315 arg 0 ,temp 
+0x52a4 021316 arg 0 ,timeup 
+:      021318 l2cap_malloc_enough_loop:
+0x52a5 021319 copy queue ,pdata 
+0x52a6 021320 beq 8 ,l2cap_malloc_enough_end 
+0x52a7 021321 fetch 1 ,mem_used_map 
+0x52a8 021322 qisolate1 pdata 
+0x52a9 021323 branch l2cap_malloc_enough_end ,true 
+0x52aa 021324 increase 128 ,temp 
+0x52ab 021325 increase 1 ,queue 
+0x52ac 021326 copy rega ,pdata 
+0x52ad 021327 isub temp ,null 
+0x52ae 021328 branch l2cap_malloc_enough_end ,zero 
+0x52af 021329 branch l2cap_malloc_enough_loop ,positive 
+:      021330 l2cap_malloc_enough_end:
+0x52b0 021331 copy temp ,pdata 
+0x52b1 021332 isub rega ,null 
+0x52b2 021333 nbranch l2cap_malloc_enough_rtn ,positive 
+0x52b3 021334 copy queue ,pdata 
+0x52b4 021335 copy regc ,temp 
+0x52b5 021336 isub temp ,timeup 
+:      021337 l2cap_malloc_enough_rtn:
+0x52b6 021338 copy regc ,queue 
+0x52b7 021339 rtn 
+:      021342 l2cap_malloc_signal_channel:
+0x52b8 021343 bpatchx patch25_4 ,mem_patch25 
+0x52b9 021344 arg l2cap_signal_malloc_size ,rega 
+0x52ba 021345 call l2cap_malloc 
+0x52bb 021346 store 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52bc 021347 increase 4 ,pdata 
+0x52bd 021348 store 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52be 021349 setarg 0 
+0x52bf 021350 store 2 ,mem_l2cap_signal_tx_length 
+0x52c0 021351 rtn 
+:      021353 l2cap_get_signal_tx_buff:
+0x52c1 021354 fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52c2 021355 branch l2cap_util_pdata_to_contw 
+:      021357 l2cap_get_signal_tx_payload:
+0x52c3 021358 fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52c4 021359 branch l2cap_util_pdata_to_contw 
+:      021362 l2cap_malloc_sdp_channel:
+0x52c5 021363 bpatchx patch25_5 ,mem_patch25 
+0x52c6 021364 arg sdp_malloc_size ,rega 
+0x52c7 021365 call l2cap_malloc 
+0x52c8 021366 store 2 ,mem_sdp_tx_buff_ptr 
+0x52c9 021367 increase 4 ,pdata 
+0x52ca 021368 store 2 ,mem_sdp_tx_payload_ptr 
+0x52cb 021369 setarg 0 
+0x52cc 021370 store 2 ,mem_sdp_tx_pkt_length 
+0x52cd 021371 rtn 
+:      021373 l2cap_get_sdp_tx_buff:
+0x52ce 021374 fetch 2 ,mem_sdp_tx_buff_ptr 
+0x52cf 021375 branch l2cap_util_pdata_to_contw 
+:      021377 l2cap_get_sdp_tx_payload:
+0x52d0 021378 fetch 2 ,mem_sdp_tx_payload_ptr 
+0x52d1 021379 branch l2cap_util_pdata_to_contw 
+:      021382 l2cap_malloc_rfcomm_channel:
+0x52d2 021383 bpatchx patch25_6 ,mem_patch25 
+0x52d3 021384 call push_stack 
+0x52d4 021385 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
+0x52d5 021386 call l2cap_malloc_is_fifo_full 
+0x52d6 021387 nrtn blank 
+0x52d7 021388 arg rfcomm_malloc_size ,rega 
+0x52d8 021389 call l2cap_malloc 
+0x52d9 021390 store 2 ,mem_rfcomm_tx_buff_ptr 
+0x52da 021391 increase 4 ,pdata 
+0x52db 021392 store 2 ,mem_rfcomm_tx_payload_ptr 
+0x52dc 021393 setarg 0 
+0x52dd 021394 store 2 ,mem_rfcomm_tx_pkt_length 
+0x52de 021395 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x52df 021396 branch pop_stack 
+:      021398 l2cap_get_rfcomm_tx_buff:
+0x52e0 021399 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+0x52e1 021400 branch l2cap_util_pdata_to_contw 
+:      021402 l2cap_util_pdata_to_contw:
+0x52e2 021403 branch assert ,blank 
+0x52e3 021404 copy pdata ,contw 
+0x52e4 021405 rtn 
+:      021408 l2cap_lpm_save_calc_len:
+0x52e5 021409 bpatchx patch25_7 ,mem_patch25 
+0x52e6 021410 arg 0 ,regb 
+0x52e7 021411 arg mem_tx_fifo0_map ,rega 
+0x52e8 021412 increase -2 ,rega 
+:      021413 l2cap_lpm_save_calc_len_loop:
+0x52e9 021414 increase 2 ,rega 
+0x52ea 021415 setarg mem_tx_fifo_end 
+0x52eb 021416 isub rega ,null 
+0x52ec 021417 branch l2cap_lpm_save_calc_len_end ,zero 
+0x52ed 021418 ifetch 1 ,rega 
+0x52ee 021419 increase 1 ,rega 
+0x52ef 021420 branch l2cap_lpm_save_calc_len_loop ,blank 
+0x52f0 021421 ifetcht 2 ,rega 
+0x52f1 021422 ifetch 2 ,temp 
+0x52f2 021423 iadd regb ,regb 
+0x52f3 021424 increase 4 ,regb 
+0x52f4 021425 branch l2cap_lpm_save_calc_len_loop 
+:      021426 l2cap_lpm_save_calc_len_end:
+0x52f5 021427 copy regb ,pdata 
+0x52f6 021428 rtn 
+:      021431 l2cap_lpm_get_wake_lock:
+0x52f7 021432 arg wake_lock_l2cap_tx ,queue 
+0x52f8 021433 branch lpm_get_wake_lock 
+:      021435 l2cap_lpm_put_wake_lock:
+0x52f9 021436 arg wake_lock_l2cap_tx ,queue 
+0x52fa 021437 branch lpm_put_wake_lock 
+:      021439 l2cap_lpm_save_txbuf:
+0x52fb 021440 bpatchx patch26_0 ,mem_patch26 
+0x52fc 021441 call l2cap_malloc_get_full_map 
+0x52fd 021442 fetch 1 ,mem_used_map 
+0x52fe 021443 rtn blank 
+0x52ff 021444 call l2cap_lpm_save_calc_len 
+0x5300 021445 arg l2cap_lpm_txbuf_len ,temp 
+0x5301 021446 isub temp ,null 
+0x5302 021447 branch l2cap_lpm_get_wake_lock ,positive 
+0x5303 021448 call l2cap_lpm_put_wake_lock 
+0x5304 021449 arg mem_l2cap_lpm_txbuf ,contw 
+0x5305 021450 arg mem_tx_fifo0 ,rega 
+:      021451 l2cap_lpm_save_txbuf_loop:
+0x5306 021452 setarg mem_tx_fifo_end 
+0x5307 021453 isub rega ,null 
+0x5308 021454 rtn zero 
+0x5309 021455 ifetch 1 ,rega 
+0x530a 021456 increase 1 ,rega 
+0x530b 021457 nbranch l2cap_lpm_save_txbuf_nempty ,blank 
+0x530c 021458 istore 2 ,contw 
+0x530d 021459 increase 2 ,rega 
+0x530e 021460 branch l2cap_lpm_save_txbuf_loop 
+:      021461 l2cap_lpm_save_txbuf_nempty:
+0x530f 021462 ifetch 2 ,rega 
+0x5310 021463 increase 2 ,rega 
+0x5311 021464 copy pdata ,contr 
+0x5312 021465 ifetch 2 ,contr 
+0x5313 021466 istore 2 ,contw 
+0x5314 021467 copy pdata ,loopcnt 
+0x5315 021468 increase 2 ,loopcnt 
+0x5316 021469 call memcpy 
+0x5317 021470 branch l2cap_lpm_save_txbuf_loop 
+:      021472 l2cap_lpm_load_txbuf:
+0x5318 021473 bpatchx patch26_1 ,mem_patch26 
+0x5319 021474 call l2cap_malloc_get_full_map 
+0x531a 021475 fetch 1 ,mem_used_map 
+0x531b 021476 rtn blank 
+0x531c 021477 arg mem_tx_fifo0_ptr ,rega 
+0x531d 021478 increase -3 ,rega 
+0x531e 021479 arg mem_l2cap_lpm_txbuf ,contr 
+:      021480 l2cap_lpm_load_txbuf_loop:
+0x531f 021481 increase 3 ,rega 
+0x5320 021482 setarg mem_tx_fifo_end + 1 
+0x5321 021483 isub rega ,null 
+0x5322 021484 rtn zero 
+0x5323 021485 ifetch 2 ,contr 
+0x5324 021486 branch l2cap_lpm_load_txbuf_loop ,blank 
+0x5325 021487 increase 4 ,pdata 
+0x5326 021488 copy pdata ,loopcnt 
+0x5327 021489 copy contr ,regb 
+0x5328 021490 ifetch 2 ,rega 
+0x5329 021491 copy pdata ,contw 
+0x532a 021492 copy regb ,contr 
+0x532b 021493 increase -2 ,contr 
+0x532c 021494 call memcpy 
+0x532d 021495 branch l2cap_lpm_load_txbuf_loop 
+:      021505 le_init_conn:
+0x532e 021506 bpatchx patch26_2 ,mem_patch26 
+0x532f 021507 disable wake 
+0x5330 021508 jam 1 ,mem_le_conn_handle 
+0x5331 021509 jam 3 ,mem_le_state 
+0x5332 021510 jam 1 ,mem_le_arq 
+0x5333 021511 setarg -1 
+0x5334 021512 store 2 ,mem_le_event_count 
+0x5335 021513 force 0 ,pdata 
+0x5336 021514 store 1 ,mem_le_ch 
+0x5337 021515 store 1 ,mem_le_op 
+0x5338 021516 store 3 ,mem_sniff_rcv 
+0x5339 021517 store 3 ,mem_sniff_lost 
+0x533a 021518 store 5 ,mem_le_pcnt_tx 
+0x533b 021519 set1 39 ,pdata 
+0x533c 021520 store 5 ,mem_le_pcnt_rx 
+0x533d 021521 jam 1 ,mem_le_txheader 
+0x533e 021522 jam 0 ,mem_le_txlen 
+0x533f 021523 branch le_supervision_flush 
+:      021525 le_init_master:
+0x5340 021526 bpatchx patch26_3 ,mem_patch26 
+0x5341 021527 enable master 
+0x5342 021528 jam lemode_master ,mem_le_mode 
+0x5343 021529 jam 1 ,mem_le_att_handle 
+0x5344 021530 jam 1 ,mem_le_search_handle_start 
+0x5345 021531 setarg 0xffff 
+0x5346 021532 store 2 ,mem_le_search_handle_end 
+0x5347 021533 force 0 ,pdata 
+0x5348 021534 store 5 ,mem_le_pcnt_rx 
+0x5349 021535 set1 39 ,pdata 
+0x534a 021536 store 5 ,mem_le_pcnt_tx 
+0x534b 021537 branch le_init_conn 
+:      021540 le_init_slave:
+0x534c 021541 bpatchx patch26_4 ,mem_patch26 
+0x534d 021542 disable master 
+0x534e 021543 setarg 0x17 
+0x534f 021544 store 2 ,mem_le_remote_mtu 
+0x5350 021545 jam lemode_slave ,mem_le_mode 
+0x5351 021546 jam 0 ,mem_le_adv_enable 
+0x5352 021547 jam 0 ,mem_lpm_current_mult 
+0x5353 021548 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5354 021549 jam flag_le_enc_null ,mem_le_enc_state 
+0x5355 021550 fetch 2 ,mem_le_superto 
+0x5356 021551 store 2 ,mem_le_init_superto 
+0x5357 021552 fetch 2 ,mem_le_tsniff 
+0x5358 021553 mul32 pdata ,5 ,pdata 
+0x5359 021554 rshift4 pdata ,pdata 
+0x535a 021555 store 2 ,mem_le_superto 
+0x535b 021556 branch le_init_conn 
+:      021562 le_dispatch:
+0x535c 021563 call le_enable 
+0x535d 021564 call le_scan 
+0x535e 021565 call le_adv 
+0x535f 021566 branch le_disable 
+:      021568 le_conn_dispatch:
+0x5360 021569 bpatchx patch26_5 ,mem_patch26 
+0x5361 021570 call le_enable 
+0x5362 021571 call app_process_ble 
+0x5363 021572 fetch 1 ,mem_le_mode 
+0x5364 021573 beq lemode_master ,le_master_dispatch 
+0x5365 021574 branch le_slave_dispatch 
+:      021580 le_master_dispatch:
+0x5366 021581 bpatchx patch26_6 ,mem_patch26 
+0x5367 021582 enable master 
+0x5368 021583 call le_supervision_update 
+0x5369 021584 branch le_master_disconn ,positive 
+0x536a 021585 call check_ble_disabled 
+0x536b 021586 call le_setup 
+0x536c 021587 call le_prepare_tx 
+0x536d 021588 disable match 
+0x536e 021589 call le_transmit_receive_sifs 
+0x536f 021590 nrtn match 
+0x5370 021591 bpatchx patch26_7 ,mem_patch26 
+0x5371 021592 fetch 1 ,mem_le_conn_rcv 
+0x5372 021593 increase 1 ,pdata 
+0x5373 021594 store 1 ,mem_le_conn_rcv 
+0x5374 021595 call le_acknowledge 
+0x5375 021596 disable master 
+0x5376 021597 rtn 
+:      021599 le_master_disconn:
+0x5377 021600 call le_disconnect 
+0x5378 021601 disable master 
+0x5379 021602 rtn 
+:      021607 le_slave_dispatch:
+0x537a 021608 bpatchx patch27_0 ,mem_patch27 
+0x537b 021609 jam 0 ,mem_le_md_count 
+0x537c 021610 call sp_calc_sequence_256 
+0x537d 021611 call le_secure_connect_sm 
+0x537e 021612 disable attempt 
+0x537f 021613 call le_supervision_update 
+0x5380 021614 branch le_slave_disconn ,positive 
+0x5381 021615 call check_ble_disabled 
+0x5382 021616 call le_setup 
+0x5383 021617 call le_receive_slave 
+0x5384 021618 nbranch le_slave_unsync ,sync 
+0x5385 021619 call le_got_first_packet 
+0x5386 021620 branch le_slave_match ,match 
+0x5387 021621 branch le_slave_cont 
+:      021624 le_slave_match:
+0x5388 021625 bpatchx patch27_1 ,mem_patch27 
+0x5389 021626 fetch 1 ,mem_le_md_count 
+0x538a 021627 pincrease 1 
+0x538b 021628 store 1 ,mem_le_md_count 
+0x538c 021629 beq le_md_max_count ,le_slave_cont 
+0x538d 021630 call le_acknowledge 
+0x538e 021631 call le_prepare_tx 
+0x538f 021632 call le_transmit_norx 
+0x5390 021633 call le_parse 
+0x5391 021634 fetch 2 ,mem_cb_ble_transmit 
+0x5392 021635 call callback_func 
+0x5393 021636 call le_check_md 
+0x5394 021637 branch le_slave_more_data ,user 
+:      021638 le_slave_cont:
+0x5395 021639 bpatchx patch27_2 ,mem_patch27 
+0x5396 021640 call le_pairing_sm 
+0x5397 021641 call le_check_paring_time 
+0x5398 021642 call check_51cmd 
+0x5399 021643 fetch 1 ,mem_le_op 
+0x539a 021644 bbit1 op_disconn ,le_slave_disconn 
+:      021645 le_slave_unsync:
+0x539b 021646 bpatchx patch27_3 ,mem_patch27 
+0x539c 021647 call le_lpm_set_mult 
+0x539d 021648 call le_update_channel_map 
+0x539e 021649 call le_update_param 
+0x539f 021650 branch calc_clke_offset 
+:      021653 le_check_md:
+0x53a0 021654 disable user 
+0x53a1 021655 bmark1 mark_ble_rx_md ,enable_user 
+0x53a2 021656 bmark1 mark_ble_tx_md ,enable_user 
+0x53a3 021657 rtn 
+:      021660 le_slave_more_data:
+0x53a4 021661 bpatchx patch27_4 ,mem_patch27 
+0x53a5 021662 enable attempt 
+0x53a6 021663 call le_transmit_receive_sifs_notx 
+0x53a7 021664 branch le_slave_match ,match 
+0x53a8 021665 branch le_slave_cont 
+:      021667 le_slave_disconn:
+:      021670 le_disconnect:
+0x53a9 021671 bpatchx patch27_5 ,mem_patch27 
+0x53aa 021672 call le_clear_connection_info 
+0x53ab 021673 call app_disconn_reason_collect_ble 
+0x53ac 021674 call sp_initialize_256 
+0x53ad 021675 jam bt_evt_le_disconnected ,mem_fifo_temp 
+0x53ae 021676 branch ui_ipc_send_event 
+:      021678 le_clear_connection_info:
+0x53af 021679 setarg 0 
+0x53b0 021680 store 9 ,mem_le_tx_buff_used 
+0x53b1 021681 jam 0 ,mem_le_conn_handle 
+0x53b2 021682 jam lemode_idle ,mem_le_mode 
+0x53b3 021683 jam 0 ,mem_le_state 
+0x53b4 021684 jam flag_le_enc_null ,mem_le_enc_state 
+0x53b5 021685 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x53b6 021686 rtn 
+:      021688 le_got_first_packet:
+0x53b7 021689 bpatchx patch27_6 ,mem_patch27 
+0x53b8 021690 fetch 1 ,mem_le_conn_rcv 
+0x53b9 021691 increase 1 ,pdata 
+0x53ba 021692 store 1 ,mem_le_conn_rcv 
+0x53bb 021693 fetch 1 ,mem_le_state 
+0x53bc 021694 rtnbit1 lestate_got_first_packet 
+0x53bd 021695 set1 lestate_got_first_packet 
+0x53be 021696 store 1 ,mem_le_state 
+0x53bf 021697 fetch 2 ,mem_le_init_superto 
+0x53c0 021698 store 2 ,mem_le_superto 
+0x53c1 021699 setarg 0 
+0x53c2 021700 store 4 ,mem_le_transmit_window 
+0x53c3 021701 rtn 
+:      021704 le_enable:
+0x53c4 021705 bpatchx patch27_7 ,mem_patch27 
+0x53c5 021706 jam 0x36 ,rf_adc_goff 
+0x53c6 021707 jam 0x5f ,rf_agc_nsat 
+0x53c7 021708 enable le 
+0x53c8 021709 jam 7 ,rfen_ulp 
+0x53c9 021710 call check_ble_disabled 
+0x53ca 021711 fetch 1 ,mem_250k_freq_enable 
+0x53cb 021712 rtn blank 
+0x53cc 021713 jam 0xb8 ,rf_iq_gain 
+0x53cd 021714 rtn 
+:      021716 le_disable:
+0x53ce 021717 bpatchx patch28_0 ,mem_patch28 
+0x53cf 021718 jam 0x2e ,rf_adc_goff 
+0x53d0 021719 jam 0xff ,rf_agc_nsat 
+0x53d1 021720 disable le 
+0x53d2 021721 jam 3 ,rfen_ulp 
+0x53d3 021722 arg 0 ,stop_watch 
+0x53d4 021723 rtn 
+:      021725 le_prep:
+0x53d5 021726 disable enable_crc 
+0x53d6 021727 disable enable_white 
+0x53d7 021728 fetch 3 ,mem_le_crcinit 
+0x53d8 021729 iforce crc24_init 
+0x53d9 021730 fetch 1 ,mem_le_ch_mapped 
+0x53da 021731 reverse pdata ,temp 
+0x53db 021732 set1 1 ,temp 
+0x53dc 021733 rshift temp ,white_init 
+0x53dd 021734 rtn 
+:      021737 lerx_setfreq:
+0x53de 021738 call le_setfreq 
+0x53df 021739 call set_freq_rx 
+0x53e0 021740 setarg param_pll_setup 
+0x53e1 021741 call sleep 
+0x53e2 021742 branch rf_rx_enable 
+:      021744 letx_setfreq:
+0x53e3 021745 branch txon ,match 
+:      021746 letx_setfreq0:
+0x53e4 021747 call le_setfreq 
+0x53e5 021748 branch set_freq_tx 
+:      021749 le_setfreq:
+0x53e6 021750 bpatchx patch28_1 ,mem_patch28 
+0x53e7 021751 call set_sync_on 
+0x53e8 021752 fetch 1 ,mem_le_testtype 
+0x53e9 021753 nbranch le_ctf_test ,blank 
+0x53ea 021754 fetch 1 ,mem_le_ch_mapped 
+0x53eb 021755 sub pdata ,36 ,null 
+0x53ec 021756 branch le_ctf_normal ,positive 
+0x53ed 021757 force 0 ,temp 
+0x53ee 021758 rtneq 37 
+0x53ef 021759 force 24 ,temp 
+0x53f0 021760 rtneq 38 
+0x53f1 021761 force 78 ,temp 
+0x53f2 021762 rtn 
+:      021764 le_ctf_normal:
+0x53f3 021765 sub pdata ,10 ,null 
+0x53f4 021766 branch le_ctf_low ,positive 
+0x53f5 021767 increase 1 ,pdata 
+:      021769 le_ctf_low:
+0x53f6 021770 lshift pdata ,pdata 
+0x53f7 021771 add pdata ,2 ,temp 
+0x53f8 021772 rtn 
+:      021774 le_ctf_test:
+0x53f9 021775 fetch 1 ,mem_le_ch_mapped 
+0x53fa 021776 lshift pdata ,temp 
+0x53fb 021777 rtn 
+:      021779 le_sca_map:
+0x53fc 021780 arg 500 ,temp 
+0x53fd 021781 rtn blank 
+0x53fe 021782 arg 250 ,temp 
+0x53ff 021783 rtneq 1 
+0x5400 021784 arg 150 ,temp 
+0x5401 021785 rtneq 2 
+0x5402 021786 arg 100 ,temp 
+0x5403 021787 rtneq 3 
+0x5404 021788 arg 75 ,temp 
+0x5405 021789 rtneq 4 
+0x5406 021790 arg 50 ,temp 
+0x5407 021791 rtneq 5 
+0x5408 021792 arg 40 ,temp 
+0x5409 021793 rtneq 6 
+0x540a 021794 arg 20 ,temp 
+0x540b 021795 rtn 
+:      021799 le_adv_access:
+0x540c 021800 setarg 0x8e89be 
+0x540d 021801 lshift8 pdata ,pdata 
+0x540e 021802 or_into 0xd6 ,pdata 
+0x540f 021803 iforce access 
+0x5410 021804 setarg 0x555555 
+0x5411 021805 store 3 ,mem_le_crcinit 
+0x5412 021806 rtn 
+:      021808 le_setup:
+0x5413 021809 bpatchx patch28_2 ,mem_patch28 
+0x5414 021810 enable swfine 
+0x5415 021811 fetch 4 ,mem_le_access 
+0x5416 021812 iforce access 
+0x5417 021813 call le_map_channel 
+0x5418 021814 setarg 0x200 
+0x5419 021815 branch le_setup_master ,master 
+0x541a 021816 fetch 2 ,mem_le_receive_window 
+0x541b 021817 rshift pdata ,pdata 
+:      021818 le_setup_master:
+0x541c 021819 arg param_pll_setup ,temp 
+0x541d 021820 iadd temp ,pdata 
+0x541e 021821 call ahead_window 
+0x541f 021822 deposit clke 
+0x5420 021823 store 6 ,mem_le_rxon_ts 
+0x5421 021824 rtn 
+:      021826 le_next_adv_channel:
+0x5422 021827 bpatchx patch28_3 ,mem_patch28 
+0x5423 021828 fetch 1 ,mem_le_ch_mapped 
+0x5424 021829 beq 37 ,le_next_adv_channel_curr_channel_37 
+0x5425 021830 beq 38 ,le_next_adv_channel_curr_channel_38 
+0x5426 021831 beq 39 ,le_next_adv_channel_curr_channel_39 
+0x5427 021832 branch le_next_adv_channel_curr_channel_39 
+:      021834 le_next_adv_channel_curr_channel_37:
+0x5428 021835 fetcht 1 ,mem_le_adv_channel_map 
+0x5429 021836 isolate1 bit_adv_channel_map_38 ,temp 
+0x542a 021837 branch set_le_next_adv_channel_38 ,true 
+0x542b 021838 isolate1 bit_adv_channel_map_39 ,temp 
+0x542c 021839 branch set_le_next_adv_channel_39 ,true 
+0x542d 021840 branch set_le_next_adv_channel_37 
+:      021843 le_next_adv_channel_curr_channel_38:
+0x542e 021844 fetcht 1 ,mem_le_adv_channel_map 
+0x542f 021845 isolate1 bit_adv_channel_map_39 ,temp 
+0x5430 021846 branch set_le_next_adv_channel_39 ,true 
+0x5431 021847 isolate1 bit_adv_channel_map_37 ,temp 
+0x5432 021848 branch set_le_next_adv_channel_37 ,true 
+0x5433 021849 branch set_le_next_adv_channel_38 
+:      021852 le_next_adv_channel_curr_channel_39:
+0x5434 021853 fetcht 1 ,mem_le_adv_channel_map 
+0x5435 021854 isolate1 bit_adv_channel_map_37 ,temp 
+0x5436 021855 branch set_le_next_adv_channel_37 ,true 
+0x5437 021856 isolate1 bit_adv_channel_map_38 ,temp 
+0x5438 021857 branch set_le_next_adv_channel_38 ,true 
+0x5439 021858 branch set_le_next_adv_channel_39 
+:      021862 set_le_next_adv_channel_37:
+0x543a 021863 jam 37 ,mem_le_ch_mapped 
+0x543b 021864 fetch 1 ,mem_le_adv_channel_map_temp 
+0x543c 021865 set1 bit_adv_channel_map_37 ,pdata 
+0x543d 021866 store 1 ,mem_le_adv_channel_map_temp 
+0x543e 021867 rtn 
+:      021869 set_le_next_adv_channel_38:
+0x543f 021870 jam 38 ,mem_le_ch_mapped 
+0x5440 021871 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5441 021872 set1 bit_adv_channel_map_38 ,pdata 
+0x5442 021873 store 1 ,mem_le_adv_channel_map_temp 
+0x5443 021874 rtn 
+:      021876 set_le_next_adv_channel_39:
+0x5444 021877 jam 39 ,mem_le_ch_mapped 
+0x5445 021878 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5446 021879 set1 bit_adv_channel_map_39 ,pdata 
+0x5447 021880 store 1 ,mem_le_adv_channel_map_temp 
+0x5448 021881 rtn 
+:      021885 le_context_nexthop:
+0x5449 021886 bpatchx patch28_4 ,mem_patch28 
+0x544a 021887 add rega ,coffset_mode ,contr 
+0x544b 021888 ifetch 1 ,contr 
+0x544c 021889 rtnbit0 mode_le 
+0x544d 021890 add rega ,coffset_le_event_cnt ,contw 
+0x544e 021891 ifetch 2 ,contw 
+0x544f 021892 increase 1 ,pdata 
+0x5450 021893 istore 2 ,contw 
+0x5451 021894 add rega ,coffset_le_hop ,contr 
+0x5452 021895 ifetch 1 ,contr 
+0x5453 021896 add rega ,coffset_le_ch ,contw 
+0x5454 021897 ifetcht 1 ,contw 
+0x5455 021898 iadd temp ,pdata 
+0x5456 021899 sub pdata ,36 ,null 
+0x5457 021900 branch le_nexthop_nowrap ,positive 
+0x5458 021901 increase -37 ,pdata 
+:      021902 le_nexthop_nowrap:
+0x5459 021903 istore 1 ,contw 
+0x545a 021904 rtn 
+:      021907 le_calc_channel_map:
+0x545b 021908 bpatchx patch28_5 ,mem_patch28 
+0x545c 021909 fetch 5 ,mem_le_channel_map 
+0x545d 021910 force 0 ,temp 
+0x545e 021911 force 37 ,loopcnt 
+:      021912 le_count_channels_loop:
+0x545f 021913 bbit0 0 ,le_count_channels_notused 
+0x5460 021914 increase 1 ,temp 
+:      021915 le_count_channels_notused:
+0x5461 021916 rshift pdata ,pdata 
+0x5462 021917 loop le_count_channels_loop 
+0x5463 021918 add temp ,-1 ,pdata 
+0x5464 021919 store 1 ,mem_le_channels 
+0x5465 021920 rtn 
+:      021922 le_map_channel:
+0x5466 021923 bpatchx patch28_6 ,mem_patch28 
+0x5467 021924 fetch 1 ,mem_le_ch 
+0x5468 021925 iforce queue 
+0x5469 021926 fetcht 5 ,mem_le_channel_map 
+0x546a 021927 qisolate1 temp 
+0x546b 021928 branch le_map_channel_end ,true 
+:      021929 le_map_channel_next:
+0x546c 021930 bpatchx patch28_7 ,mem_patch28 
+0x546d 021931 fetch 1 ,mem_le_channels 
+0x546e 021932 isub queue ,pdata 
+0x546f 021933 branch le_map_channel_cont ,positive 
+0x5470 021934 sub pdata ,-1 ,queue 
+0x5471 021935 branch le_map_channel_next 
+:      021936 le_map_channel_cont:
+0x5472 021937 copy queue ,loopcnt 
+0x5473 021938 force 0 ,queue 
+:      021939 le_map_channel_loop:
+0x5474 021940 qisolate1 temp 
+0x5475 021941 branch le_map_channel_skip ,true 
+0x5476 021942 increase 1 ,loopcnt 
+:      021943 le_map_channel_skip:
+0x5477 021944 deposit loopcnt 
+0x5478 021945 branch le_map_channel_end ,blank 
+0x5479 021946 increase 1 ,queue 
+0x547a 021947 increase -1 ,loopcnt 
+0x547b 021948 branch le_map_channel_loop 
+:      021949 le_map_channel_end:
+0x547c 021950 deposit queue 
+0x547d 021951 store 1 ,mem_le_ch_mapped 
+0x547e 021952 rtn 
+:      021955 le_wait_tx:
+0x547f 021956 branch le_wait_master ,master 
+0x5480 021957 until null ,timeout 
+0x5481 021958 rtn 
+:      021960 le_wait_master:
+0x5482 021961 arg 0xea0 ,timeup 
+0x5483 021962 until clkn_rt ,meet 
+0x5484 021963 rtn 
+:      021965 le_receive_adv:
+0x5485 021966 disable swfine 
+0x5486 021967 fetch 2 ,mem_le_scan_window 
+0x5487 021968 copy pdata ,timeup 
+0x5488 021969 branch le_receive_packet 
+:      021972 le_receive_slave:
+0x5489 021973 bpatchx patch29_0 ,mem_patch29 
+0x548a 021974 enable swfine 
+0x548b 021975 fetch 2 ,mem_le_receive_window 
+0x548c 021976 fetcht 4 ,mem_le_transmit_window 
+0x548d 021977 iadd temp ,timeup 
+:      021978 le_receive_packet:
+0x548e 021979 call lerx_setfreq 
+:      021980 le_receive_rxon:
+0x548f 021981 bpatchx patch29_1 ,mem_patch29 
+0x5490 021982 call le_prep 
+0x5491 021983 disable match 
+0x5492 021984 enable decode_fec0 
+0x5493 021985 enable is_rx 
+0x5494 021986 disable is_tx 
+0x5495 021987 copy timeup ,stop_watch 
+0x5496 021988 correlate null ,timeout 
+0x5497 021989 branch le_receive_on_attempt ,attempt 
+0x5498 021990 copy clke ,temp 
+0x5499 021991 storet 6 ,mem_sync_clke 
+:      021992 le_receive_on_attempt:
+0x549a 021993 nbranch end_of_packet ,sync 
+0x549b 021994 branch le_receive_skip ,attempt 
+0x549c 021995 arg param_clke_cal_le ,clke_rt 
+0x549d 021996 copy bt_clk ,clke_bt 
+0x549e 021997 fetch 1 ,mem_le_state 
+0x549f 021998 bbit0 lestate_got_first_packet ,le_receive_skip 
+0x54a0 021999 call lpm_adjust_clk ,wake 
+:      022000 le_receive_skip:
+0x54a1 022001 bpatchx patch29_2 ,mem_patch29 
+0x54a2 022002 call save_rssi 
+0x54a3 022003 enable enable_white 
+0x54a4 022004 enable enable_crc 
+0x54a5 022005 parse demod ,bucket ,8 
+0x54a6 022006 rshift3 pwindow ,pdata 
+0x54a7 022007 store 1 ,mem_le_rxbuf 
+0x54a8 022008 parse demod ,bucket ,8 
+0x54a9 022009 rshift3 pwindow ,pdata 
+0x54aa 022010 istore 1 ,contw 
+0x54ab 022011 and pdata ,0x3f ,loopcnt 
+0x54ac 022012 branch lerx_nopayload ,zero 
+:      022014 lerx_loop:
+0x54ad 022015 parse demod ,bucket ,8 
+0x54ae 022016 rshift3 pwindow ,pdata 
+0x54af 022017 istore 1 ,contw 
+0x54b0 022018 loop lerx_loop 
+:      022020 lerx_nopayload:
+0x54b1 022021 bpatchx patch29_3 ,mem_patch29 
+0x54b2 022022 parse demod ,bucket ,24 
+0x54b3 022023 enable swfine 
+0x54b4 022024 arg param_sifs ,stop_watch 
+0x54b5 022025 rshift32 pdata ,pdata 
+0x54b6 022026 rshift16 pdata ,pdata 
+0x54b7 022027 istore 3 ,contw 
+0x54b8 022028 branch end_of_packet ,crc_failed 
+0x54b9 022029 enable match 
+0x54ba 022030 fetch 1 ,mem_last_freq 
+0x54bb 022031 add pdata ,0 ,rega 
+0x54bc 022032 call rf_write_freq 
+0x54bd 022033 disable decode_fec0 
+0x54be 022034 branch set_sync_on 
+:      022036 le_transmit_receive_sifs:
+0x54bf 022037 bpatchx patch29_4 ,mem_patch29 
+0x54c0 022038 call le_transmit 
+:      022039 le_transmit_receive_sifs_notx:
+0x54c1 022040 fetcht 1 ,mem_last_freq 
+0x54c2 022041 call set_freq_rx 
+0x54c3 022042 call rf_rx_enable 
+0x54c4 022043 enable swfine 
+0x54c5 022044 arg 5500 ,timeup 
+0x54c6 022045 branch le_receive_rxon 
+:      022047 le_transmit_norx:
+0x54c7 022048 call le_transmit 
+0x54c8 022049 branch end_of_packet 
+:      022051 le_transmit:
+0x54c9 022052 bpatchx patch29_5 ,mem_patch29 
+0x54ca 022053 call le_prep 
+0x54cb 022054 call letx_setfreq 
+0x54cc 022055 branch le_transmit0 
+:      022057 le_transmit0:
+0x54cd 022058 set1 txgfsk ,radio_ctrl 
+0x54ce 022059 enable encode_fec0 
+0x54cf 022060 enable is_tx 
+0x54d0 022061 disable is_rx 
+0x54d1 022062 call le_wait_tx 
+0x54d2 022063 rshift16 access ,pdata 
+0x54d3 022064 rshift8 pdata ,pdata 
+0x54d4 022065 rshift4 pdata ,pdata 
+0x54d5 022066 inject mod ,40 
+0x54d6 022067 enable enable_white 
+0x54d7 022068 enable enable_crc 
+0x54d8 022069 bpatchx patch29_6 ,mem_patch29 
+0x54d9 022070 fetch 1 ,mem_le_txheader 
+0x54da 022071 inject mod ,8 
+0x54db 022072 ifetch 1 ,contr 
+0x54dc 022073 and pdata ,0x3f ,loopcnt 
+0x54dd 022074 inject mod ,8 
+0x54de 022075 branch letr_nopayload ,zero 
+:      022076 letr_loop:
+0x54df 022077 ifetch 1 ,contr 
+0x54e0 022078 inject mod ,8 
+0x54e1 022079 loop letr_loop 
+:      022081 letr_nopayload:
+0x54e2 022082 enable enable_parity 
+0x54e3 022083 inject mod ,24 
+0x54e4 022084 disable enable_parity 
+0x54e5 022085 until null ,tx_clear 
+0x54e6 022086 nop 100 
+0x54e7 022087 disable encode_fec0 
+0x54e8 022088 rtn 
+:      022090 le_send_adv_ind:
+0x54e9 022091 bpatchx patch29_7 ,mem_patch29 
+0x54ea 022092 fetch 1 ,mem_le_adv_type 
+0x54eb 022093 beq adv_direct_ind ,le_send_adv_direct_ind 
+0x54ec 022094 fetch 1 ,mem_le_adv_own_addr_type 
+0x54ed 022095 lshift4 pdata ,pdata 
+0x54ee 022096 lshift2 pdata ,pdata 
+0x54ef 022097 store 1 ,mem_le_txheader 
+0x54f0 022098 fetcht 1 ,mem_le_adv_data_len 
+0x54f1 022099 add temp ,6 ,pdata 
+0x54f2 022100 store 1 ,mem_le_txlen 
+0x54f3 022101 fetch 6 ,mem_le_lap 
+0x54f4 022102 store 6 ,mem_le_txpayload 
+0x54f5 022103 copy temp ,loopcnt 
+0x54f6 022104 arg mem_le_adv_data ,contr 
+0x54f7 022105 call memcpy_fast 
+0x54f8 022106 branch le_send_adv_transmit 
+:      022107 le_send_adv_direct_ind:
+0x54f9 022108 fetch 1 ,mem_le_adv_direct_addr_type 
+0x54fa 022109 lshift4 pdata ,pdata 
+0x54fb 022110 lshift2 pdata ,pdata 
+0x54fc 022111 increase 1 ,pdata 
+0x54fd 022112 store 1 ,mem_le_txheader 
+0x54fe 022113 setarg 12 
+0x54ff 022114 store 1 ,mem_le_txlen 
+0x5500 022115 fetch 6 ,mem_le_lap 
+0x5501 022116 store 6 ,mem_le_txpayload 
+0x5502 022117 fetch 6 ,mem_hci_plap 
+0x5503 022118 istore 6 ,contw 
+:      022119 le_send_adv_transmit:
+0x5504 022120 bpatchx patch2a_0 ,mem_patch2a 
+0x5505 022121 fetch 1 ,mem_le_adv_transmit 
+0x5506 022122 increase 1 ,pdata 
+0x5507 022123 store 1 ,mem_le_adv_transmit 
+0x5508 022124 arg 1800 ,stop_watch 
+0x5509 022125 disable match 
+0x550a 022126 branch le_transmit_receive_sifs 
+:      022128 le_send_scan_request:
+0x550b 022129 bpatchx patch2a_1 ,mem_patch2a 
+0x550c 022130 fetch 1 ,mem_le_scan_type 
+0x550d 022131 rtnne le_scan_type_active 
+0x550e 022132 fetch 1 ,mem_le_adv_transmit 
+0x550f 022133 increase 1 ,pdata 
+0x5510 022134 store 1 ,mem_le_adv_transmit 
+0x5511 022135 arg 0x0c03 ,temp 
+0x5512 022136 fetch 1 ,mem_le_scan_own_addr_type 
+0x5513 022137 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5514 022138 copy rega ,pdata 
+0x5515 022139 nsetflag blank ,le_receiver_addr_bit ,temp 
+0x5516 022140 storet 2 ,mem_le_txheader 
+0x5517 022141 fetch 6 ,mem_le_lap 
+0x5518 022142 istore 6 ,contw 
+0x5519 022143 fetch 6 ,mem_le_plap 
+0x551a 022144 istore 6 ,contw 
+0x551b 022145 branch le_transmit_receive_sifs 
+:      022148 le_send_scan_response:
+0x551c 022149 bpatchx patch2a_2 ,mem_patch2a 
+0x551d 022150 arg scan_rsp ,temp 
+0x551e 022151 fetch 1 ,mem_le_adv_own_addr_type 
+0x551f 022152 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5520 022153 storet 1 ,mem_le_txheader 
+0x5521 022154 fetcht 1 ,mem_le_scan_data_len 
+0x5522 022155 add temp ,6 ,pdata 
+0x5523 022156 store 1 ,mem_le_txlen 
+0x5524 022157 fetch 6 ,mem_le_lap 
+0x5525 022158 store 6 ,mem_le_txpayload 
+0x5526 022159 arg mem_le_scan_data ,contr 
+0x5527 022160 copy temp ,loopcnt 
+0x5528 022161 call memcpy_fast 
+0x5529 022162 call le_transmit_norx 
+0x552a 022163 branch le_adv_not_match 
+:      022165 le_connect_request:
+0x552b 022166 bpatchx patch2a_3 ,mem_patch2a 
+0x552c 022167 force -1 ,pdata 
+0x552d 022168 setsect 2 ,1 
+0x552e 022169 store 5 ,mem_le_channel_map 
+0x552f 022170 call le_calc_channel_map 
+0x5530 022171 force 4 ,loopcnt 
+0x5531 022172 arg mem_le_access ,contw 
+0x5532 022173 call generate_random_loop 
+0x5533 022174 fetch 2 ,mem_le_timeout 
+0x5534 022175 store 2 ,mem_le_superto 
+:      022176 le_con_req_hop_retry:
+0x5535 022177 random pdata 
+0x5536 022178 and_into 0xf ,pdata 
+0x5537 022179 sub pdata ,4 ,null 
+0x5538 022180 branch le_con_req_hop_retry ,positive 
+0x5539 022181 store 1 ,mem_le_hop 
+0x553a 022182 store 1 ,mem_tmp1 
+0x553b 022183 bpatchx patch2a_4 ,mem_patch2a 
+0x553c 022184 fetcht 2 ,mem_le_conn_interval 
+0x553d 022185 storet 2 ,mem_le_tsniff 
+0x553e 022186 copy temp ,regc 
+0x553f 022187 add clkn_bt ,7 ,pdata 
+0x5540 022188 idiv regc 
+0x5541 022189 call wait_div_end 
+0x5542 022190 remainder rega 
+0x5543 022191 isub rega ,pdata 
+0x5544 022192 iadd regc ,pdata 
+0x5545 022193 fetcht 2 ,mem_le_dsniff 
+0x5546 022194 iadd temp ,pdata 
+0x5547 022195 store 4 ,mem_le_anchor 
+0x5548 022196 isub clkn_bt ,rega 
+0x5549 022197 increase -6 ,rega 
+0x554a 022198 arg 0x2205 ,regb 
+0x554b 022199 fetch 1 ,mem_le_conn_own_addr_type 
+0x554c 022200 nsetflag blank ,le_sender_addr_bit ,regb 
+0x554d 022201 fetch 1 ,mem_le_conn_peer_addr_type 
+0x554e 022202 nsetflag blank ,le_receiver_addr_bit ,regb 
+0x554f 022203 copy regb ,pdata 
+0x5550 022204 store 2 ,mem_le_txheader 
+0x5551 022205 fetch 6 ,mem_le_lap 
+0x5552 022206 istore 6 ,contw 
+0x5553 022207 fetch 6 ,mem_le_plap 
+0x5554 022208 istore 6 ,contw 
+0x5555 022209 fetch 4 ,mem_le_access 
+0x5556 022210 istore 4 ,contw 
+0x5557 022211 random pdata 
+0x5558 022212 istore 2 ,contw 
+0x5559 022213 random pdata 
+0x555a 022214 istore 1 ,contw 
+0x555b 022215 force 2 ,pdata 
+0x555c 022216 istore 1 ,contw 
+0x555d 022217 rshift2 rega ,pdata 
+0x555e 022218 istore 2 ,contw 
+0x555f 022219 rshift2 regc ,pdata 
+0x5560 022220 istore 2 ,contw 
+0x5561 022221 bpatchx patch2a_5 ,mem_patch2a 
+0x5562 022222 setarg 0 
+0x5563 022223 istore 2 ,contw 
+0x5564 022224 fetch 2 ,mem_le_timeout 
+0x5565 022225 istore 2 ,contw 
+0x5566 022226 fetch 5 ,mem_le_channel_map 
+0x5567 022227 istore 5 ,contw 
+0x5568 022228 fetch 1 ,mem_le_hop 
+0x5569 022229 arg param_le_sca ,temp 
+0x556a 022230 ior temp ,pdata 
+0x556b 022231 istore 1 ,contw 
+0x556c 022232 call le_transmit_norx 
+0x556d 022233 setarg mem_le_txheader 
+0x556e 022234 add pdata ,18 ,contr 
+0x556f 022235 ifetch 3 ,contr 
+0x5570 022236 store 3 ,mem_le_crcinit 
+0x5571 022237 rtn 
+:      022239 le_init_adv:
+0x5572 022240 bpatchx patch2a_6 ,mem_patch2a 
+0x5573 022241 disable master 
+0x5574 022242 branch le_adv_access 
+:      022246 le_update_param:
+0x5575 022247 fetch 1 ,mem_le_state 
+0x5576 022248 rtnbit0 lestate_update_param 
+0x5577 022249 fetch 2 ,mem_le_event_count 
+0x5578 022250 fetcht 2 ,mem_le_instant 
+0x5579 022251 isub temp ,pdata 
+0x557a 022252 nrtn positive 
+0x557b 022253 store 2 ,mem_pdatatemp 
+0x557c 022254 bpatchx patch2a_7 ,mem_patch2a 
+0x557d 022255 fetch 1 ,mem_le_state 
+0x557e 022256 set0 lestate_update_param ,pdata 
+0x557f 022257 set0 lestate_got_first_packet ,pdata 
+0x5580 022258 store 1 ,mem_le_state 
+0x5581 022259 fetch 4 ,mem_le_anchor 
+0x5582 022260 fetcht 2 ,mem_le_tsniff 
+0x5583 022261 storet 2 ,mem_temp 
+0x5584 022262 isub temp ,rega 
+0x5585 022263 bpatchx patch2b_0 ,mem_patch2b 
+0x5586 022264 fetch 1 ,mem_le_new_param 
+0x5587 022265 store 1 ,mem_le_window_size 
+0x5588 022266 ifetcht 2 ,contr 
+0x5589 022267 ifetch 2 ,contr 
+0x558a 022268 lshift2 pdata ,pdata 
+0x558b 022269 store 2 ,mem_le_tsniff 
+0x558c 022270 lshift2 temp ,temp 
+0x558d 022271 iadd temp ,pdata 
+0x558e 022272 ifetcht 4 ,contr 
+0x558f 022273 storet 4 ,mem_le_slave_latency 
+0x5590 022274 iadd rega ,pdata 
+0x5591 022275 copy pdata ,regab 
+0x5592 022276 fetch 2 ,mem_le_tsniff 
+0x5593 022277 fetcht 2 ,mem_temp 
+0x5594 022278 isub temp ,pdata 
+0x5595 022279 fetcht 2 ,mem_pdatatemp 
+0x5596 022280 imul32 temp ,pdata 
+0x5597 022281 iadd regab ,pdata 
+0x5598 022282 store 4 ,mem_le_anchor 
+0x5599 022283 call le_receive_window_size 
+0x559a 022284 fetch 2 ,mem_le_superto 
+0x559b 022285 store 2 ,mem_le_init_superto 
+0x559c 022286 rtn 
+:      022289 le_update_channel_map:
+0x559d 022290 bpatchx patch2b_1 ,mem_patch2b 
+0x559e 022291 fetch 1 ,mem_le_state 
+0x559f 022292 rtnbit0 lestate_update_map 
+0x55a0 022293 fetch 2 ,mem_le_event_count 
+0x55a1 022294 fetcht 2 ,mem_le_instant 
+0x55a2 022295 isub temp ,pdata 
+0x55a3 022296 nrtn positive 
+0x55a4 022297 fetch 1 ,mem_le_state 
+0x55a5 022298 set0 lestate_update_map ,pdata 
+0x55a6 022299 store 1 ,mem_le_state 
+0x55a7 022300 fetch 5 ,mem_le_new_map 
+0x55a8 022301 store 5 ,mem_le_channel_map 
+0x55a9 022302 branch le_calc_channel_map 
+:      022305 le_acknowledge:
+0x55aa 022306 bpatchx patch2b_2 ,mem_patch2b 
+0x55ab 022307 call le_supervision_flush 
+0x55ac 022308 call le_check_wak 
+0x55ad 022309 fetch 1 ,mem_le_rxbuf 
+0x55ae 022310 isolate1 md ,pdata 
+0x55af 022311 setflag true ,mark_ble_rx_md ,mark 
+0x55b0 022312 rshift pdata ,pdata 
+0x55b1 022313 ixor temp ,pdata 
+0x55b2 022314 isolate1 nesn ,pdata 
+0x55b3 022315 setflag true ,mark_old_packet ,mark 
+0x55b4 022316 rtnmark1 mark_old_packet 
+0x55b5 022317 fetch 1 ,mem_le_rxbuf + 1 
+0x55b6 022318 branch le_ack_unenc ,blank 
+0x55b7 022319 fetch 1 ,mem_le_state 
+0x55b8 022320 bbit0 lestate_encryption ,le_ack_unenc 
+0x55b9 022321 call load_sk 
+0x55ba 022322 call le_decrypt 
+0x55bb 022323 nrtn blank 
+:      022324 le_ack_unenc:
+0x55bc 022325 fetcht 1 ,mem_le_arq 
+0x55bd 022326 setflip nesn ,temp 
+0x55be 022327 storet 1 ,mem_le_arq 
+0x55bf 022328 rtn 
+:      022331 le_check_wak:
+0x55c0 022332 bpatchx patch2b_3 ,mem_patch2b 
+0x55c1 022333 fetcht 1 ,mem_le_arq 
+0x55c2 022334 isolate0 wak ,temp 
+0x55c3 022335 rtn true 
+0x55c4 022336 fetch 1 ,mem_le_rxbuf 
+0x55c5 022337 lshift pdata ,pdata 
+0x55c6 022338 ixor temp ,pdata 
+0x55c7 022339 rtnbit0 sn 
+0x55c8 022340 set0 wak ,temp 
+0x55c9 022341 setflip sn ,temp 
+0x55ca 022342 storet 1 ,mem_le_arq 
+0x55cb 022343 compare 3 ,temp ,3 
+0x55cc 022344 nrtn true 
+0x55cd 022345 fetch 1 ,mem_le_txpayload 
+0x55ce 022346 beq ll_start_enc_req ,le_set_enc 
+0x55cf 022347 fetch 1 ,mem_le_enc_state 
+0x55d0 022348 beq flag_le_enc_pause ,le_clear_enc 
+0x55d1 022349 rtn 
+:      022352 le_set_enc:
+0x55d2 022353 fetch 1 ,mem_le_state 
+0x55d3 022354 set1 lestate_encryption ,pdata 
+0x55d4 022355 store 1 ,mem_le_state 
+0x55d5 022356 rtn 
+:      022358 le_clear_enc:
+0x55d6 022359 bpatchx patch2b_4 ,mem_patch2b 
+0x55d7 022360 jam flag_le_enc_null ,mem_le_enc_state 
+0x55d8 022361 arg 0 ,pdata 
+0x55d9 022362 store 4 ,mem_le_last_mic 
+0x55da 022363 store 5 ,mem_le_pcnt_tx 
+0x55db 022364 set1 39 ,pdata 
+0x55dc 022365 store 5 ,mem_le_pcnt_rx 
+0x55dd 022366 fetch 1 ,mem_le_state 
+0x55de 022367 set0 lestate_encryption ,pdata 
+0x55df 022368 store 1 ,mem_le_state 
+0x55e0 022369 rtn 
+:      022372 le_wait_adv:
+0x55e1 022373 bpatchx patch2b_5 ,mem_patch2b 
+0x55e2 022374 call le_next_adv_channel 
+0x55e3 022375 call le_receive_adv 
+0x55e4 022376 fetch 1 ,mem_le_adv_waitcnt 
+0x55e5 022377 increase 1 ,pdata 
+0x55e6 022378 store 1 ,mem_le_adv_waitcnt 
+0x55e7 022379 rtn 
+:      022382 le_scan:
+0x55e8 022383 bpatchx patch2b_6 ,mem_patch2b 
+0x55e9 022384 fetch 1 ,mem_le_scan_enable 
+0x55ea 022385 rtnne le_scan_enable 
+0x55eb 022386 arg le_scan_interval_timer ,queue 
+0x55ec 022387 call timer_check 
+0x55ed 022388 nrtn blank 
+0x55ee 022389 fetch 2 ,mem_le_scan_interval 
+0x55ef 022390 fetcht 2 ,mem_le_scan_window 
+0x55f0 022391 isub temp ,pdata 
+0x55f1 022392 arg le_scan_interval_timer ,queue 
+0x55f2 022393 call timer_init 
+0x55f3 022394 disable master 
+0x55f4 022395 call le_init_adv 
+0x55f5 022396 call le_wait_adv 
+0x55f6 022397 nrtn match 
+0x55f7 022398 bpatchx patch2b_7 ,mem_patch2b 
+0x55f8 022399 fetch 6 ,mem_le_rxbuf + 2 
+0x55f9 022400 store 6 ,mem_le_plap 
+0x55fa 022403 fetch 1 ,mem_le_adv_rcv 
+0x55fb 022404 increase 1 ,pdata 
+0x55fc 022405 store 1 ,mem_le_adv_rcv 
+0x55fd 022406 call le_create_conn 
+0x55fe 022407 rtn master 
+0x55ff 022408 call le_send_scan_request 
+0x5600 022409 nrtn match 
+0x5601 022410 bpatchx patch2c_0 ,mem_patch2c 
+0x5602 022411 fetch 1 ,mem_le_scanrsp_rcv 
+0x5603 022412 increase 1 ,pdata 
+0x5604 022413 store 1 ,mem_le_scanrsp_rcv 
+0x5605 022414 fetch 9 ,mem_le_rxbuf + 8 
+0x5606 022415 store 9 ,mem_tmp_buffer 
+0x5607 022416 rtn 
+:      022418 le_create_conn:
+0x5608 022419 bpatchx patch2c_1 ,mem_patch2c 
+0x5609 022420 fetch 1 ,mem_cmd_le_create_conn 
+0x560a 022421 rtnne hci_cmd_le_create_conn 
+0x560b 022422 fetch 6 ,mem_le_plap 
+0x560c 022423 fetcht 6 ,mem_le_conn_peer_addr 
+0x560d 022424 isub temp ,null 
+0x560e 022425 nrtn zero 
+0x560f 022426 call context_new 
+0x5610 022427 nrtn zero 
+0x5611 022428 call le_connect_request 
+0x5612 022429 call le_init_master 
+0x5613 022430 bpatchx patch2c_2 ,mem_patch2c 
+0x5614 022431 jam 0 ,mem_hci_cmd 
+0x5615 022432 jam 0 ,mem_le_peer_sca 
+0x5616 022433 jam 0 ,mem_le_scan_enable 
+0x5617 022434 jam 0 ,mem_cmd_le_create_conn 
+0x5618 022435 branch context_save 
+:      022437 le_scan_check_sender_addr_type:
+0x5619 022438 arg 1 ,rega 
+0x561a 022439 fetch 1 ,mem_le_rxbuf 
+0x561b 022440 rtnbit1 le_sender_addr_bit 
+0x561c 022441 arg 0 ,rega 
+0x561d 022442 rtn 
+:      022446 le_prepare_tx:
+0x561e 022447 bpatchx patch2c_3 ,mem_patch2c 
+0x561f 022448 fetch 1 ,mem_le_arq 
+0x5620 022449 rtnbit1 wak 
+0x5621 022450 call le_check_tx_md 
+0x5622 022451 call le_fifo_get_first_tx_ptr 
+0x5623 022452 branch le_send_empty ,blank 
+0x5624 022453 ifetch 1 ,contr 
+0x5625 022454 ifetcht 1 ,contr 
+0x5626 022455 copy temp ,rega 
+0x5627 022456 isub rega ,pdata 
+0x5628 022457 arg le_max_paket_len ,temp 
+0x5629 022458 call not_greater_than 
+0x562a 022459 copy pdata ,temp 
+0x562b 022460 ifetch 1 ,contr 
+0x562c 022461 copy pdata ,type 
+0x562d 022462 copy rega ,pdata 
+0x562e 022463 iadd contr ,contr 
+0x562f 022464 arg mem_le_txpayload ,contw 
+0x5630 022465 copy temp ,loopcnt 
+0x5631 022466 call memcpy 
+0x5632 022467 call le_update_tx_type 
+0x5633 022468 call le_send_packet 
+0x5634 022470 call le_fifo_get_first_tx_ptr 
+0x5635 022471 ifetch 1 ,contr 
+0x5636 022472 copy pdata ,rega 
+0x5637 022473 copy contr ,regc 
+0x5638 022474 ifetcht 1 ,contr 
+0x5639 022475 copy temp ,regb 
+0x563a 022476 isub regb ,pdata 
+0x563b 022477 arg le_max_paket_len ,temp 
+0x563c 022478 call not_greater_than 
+0x563d 022479 iadd regb ,pdata 
+0x563e 022480 istore 1 ,regc 
+0x563f 022481 isub rega ,null 
+0x5640 022482 nrtn zero 
+0x5641 022483 branch le_fifo_release_first_node 
+:      022486 le_check_tx_md:
+0x5642 022487 call le_check_continue 
+0x5643 022488 rtnmark1 mark_ble_tx_md 
+0x5644 022489 fetch 1 ,mem_le_configuration 
+0x5645 022490 bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
+0x5646 022491 call le_fifo_get_second_tx_ptr 
+0x5647 022492 branch le_clear_md ,blank 
+0x5648 022493 branch le_set_md 
+:      022496 le_check_continue:
+0x5649 022497 call le_fifo_get_first_tx_ptr 
+0x564a 022498 branch le_clear_md ,blank 
+0x564b 022499 ifetch 1 ,contr 
+0x564c 022500 ifetcht 1 ,contr 
+0x564d 022501 isub temp ,pdata 
+0x564e 022502 sub pdata ,le_max_paket_len ,null 
+0x564f 022503 branch le_clear_md ,positive 
+:      022504 le_set_md:
+0x5650 022505 set1 mark_ble_tx_md ,mark 
+0x5651 022506 rtn 
+:      022508 le_clear_md:
+0x5652 022509 set0 mark_ble_tx_md ,mark 
+0x5653 022510 rtn 
+:      022512 le_update_tx_type:
+0x5654 022513 copy rega ,pdata 
+0x5655 022514 rtn blank 
+0x5656 022515 arg llid_continue ,type 
+0x5657 022516 rtn 
+:      022519 le_att_check_notification_enable:
+0x5658 022520 bpatchx patch2c_4 ,mem_patch2c 
+0x5659 022521 increase 1 ,temp 
+0x565a 022522 call le_att_get_handle_ptr 
+0x565b 022523 increase -2 ,contr 
+0x565c 022524 ifetch 2 ,contr 
+0x565d 022525 arg client_charactertic_configuration ,temp 
+0x565e 022526 isub temp ,null 
+0x565f 022527 nrtn zero 
+0x5660 022528 increase 1 ,contr 
+0x5661 022529 copy contr ,rega 
+0x5662 022530 ifetch 1 ,contr 
+0x5663 022531 rtn 
+:      022534 le_send_empty:
+0x5664 022535 force 0 ,temp 
+0x5665 022536 force 1 ,type 
+:      022538 le_send_packet:
+0x5666 022539 bpatchx patch2c_5 ,mem_patch2c 
+0x5667 022540 storet 1 ,mem_le_txlen 
+0x5668 022541 fetcht 1 ,mem_le_arq 
+0x5669 022542 set1 wak ,temp 
+0x566a 022543 and temp ,0xfc ,pdata 
+0x566b 022544 ior type ,pdata 
+0x566c 022545 store 1 ,mem_le_arq 
+0x566d 022546 and_into 0x1f ,pdata 
+0x566e 022547 isolate1 mark_ble_tx_md ,mark 
+0x566f 022548 setflag true ,md ,pdata 
+0x5670 022549 store 1 ,mem_le_txheader 
+0x5671 022551 fetch 1 ,mem_le_txheader 
+0x5672 022552 compare 1 ,type ,3 
+0x5673 022553 nbranch le_send_no_txlen ,true 
+0x5674 022554 fetch 1 ,mem_le_txlen 
+0x5675 022555 rtn blank 
+:      022556 le_send_no_txlen:
+0x5676 022557 fetch 1 ,mem_le_state 
+0x5677 022558 rtnbit0 lestate_encryption 
+0x5678 022559 call load_sk 
+0x5679 022560 branch le_encrypt 
+:      022563 get_lpm_wake_ble_rx_lock:
+0x567a 022564 arg wake_lock_ble_rx ,queue 
+0x567b 022565 branch lpm_get_wake_lock 
+:      022567 put_lpm_wake_ble_rx_lock:
+0x567c 022568 arg wake_lock_ble_rx ,queue 
+0x567d 022569 branch lpm_put_wake_lock 
+:      022572 le_parse:
+0x567e 022573 bpatchx patch2c_6 ,mem_patch2c 
+0x567f 022574 rtnmark1 mark_old_packet 
+0x5680 022575 call le_fifo_check_full 
+0x5681 022576 nrtn blank 
+0x5682 022577 fetch 1 ,mem_le_rxbuf 
+0x5683 022578 and pdata ,0x3 ,pdata 
+0x5684 022579 store 1 ,mem_le_packet_llid 
+0x5685 022580 ifetch 1 ,contr 
+0x5686 022581 and pdata ,0x1f ,pdata 
+0x5687 022582 store 1 ,mem_le_packet_size 
+0x5688 022583 rtn blank 
+0x5689 022584 copy contr ,pdata 
+0x568a 022585 store 2 ,mem_le_payload_ptr 
+0x568b 022586 fetch 1 ,mem_le_packet_llid 
+0x568c 022587 beq llid_le_ll ,le_parse_ll 
+:      022588 le_parse_l2cap:
+0x568d 022589 call le_check_l2cap_complete 
+0x568e 022590 nbranch get_lpm_wake_ble_rx_lock ,user 
+0x568f 022591 call put_lpm_wake_ble_rx_lock 
+0x5690 022592 fetch 2 ,mem_le_payload_ptr 
+0x5691 022593 copy pdata ,contr 
+0x5692 022594 ifetch 2 ,contr 
+0x5693 022595 store 2 ,mem_le_l2cap_size 
+0x5694 022596 bpatchx patch2c_7 ,mem_patch2c 
+0x5695 022597 ifetch 2 ,contr 
+0x5696 022598 beq le_l2cap_cid_att ,le_parse_att 
+0x5697 022599 beq le_l2cap_cid_smp ,le_parse_smp 
+0x5698 022600 beq le_l2cap_cid_signal ,le_parse_signaling 
+0x5699 022601 rtn 
+:      022604 le_check_l2cap_complete:
+0x569a 022605 fetch 1 ,mem_le_packet_llid 
+0x569b 022606 beq llid_start ,le_check_l2cap_llid_start 
+0x569c 022607 beq llid_continue ,le_check_l2cap_llid_continue 
+0x569d 022608 rtn 
+:      022613 le_check_l2cap_cid_legal:
+0x569e 022614 call enable_user 
+0x569f 022615 arg le_l2cap_cid_att ,temp 
+0x56a0 022616 isub pdata ,null 
+0x56a1 022617 rtn zero 
+0x56a2 022618 arg le_l2cap_cid_signal ,temp 
+0x56a3 022619 isub pdata ,null 
+0x56a4 022620 rtn zero 
+0x56a5 022621 arg le_l2cap_cid_smp ,temp 
+0x56a6 022622 isub pdata ,null 
+0x56a7 022623 rtn zero 
+0x56a8 022624 branch disable_user 
+:      022627 le_check_l2cap_llid_start:
+0x56a9 022628 fetch 2 ,mem_le_payload_ptr 
+0x56aa 022629 copy pdata ,contr 
+0x56ab 022630 ifetch 2 ,contr 
+0x56ac 022631 store 2 ,mem_le_l2cap_size 
+0x56ad 022632 ifetch 2 ,contr 
+0x56ae 022633 call le_check_l2cap_cid_legal 
+0x56af 022634 nrtn user 
+0x56b0 022635 fetcht 1 ,mem_le_packet_size 
+0x56b1 022636 storet 1 ,mem_le_packet_len_recved 
+0x56b2 022637 fetch 2 ,mem_le_l2cap_size 
+0x56b3 022638 increase 4 ,pdata 
+0x56b4 022639 isub temp ,null 
+0x56b5 022640 branch enable_user ,zero 
+0x56b6 022641 fetch 1 ,mem_le_packet_size 
+0x56b7 022642 copy pdata ,loopcnt 
+0x56b8 022643 arg mem_le_l2capbuf ,contw 
+0x56b9 022644 fetch 2 ,mem_le_payload_ptr 
+0x56ba 022645 copy pdata ,contr 
+0x56bb 022646 call memcpy 
+0x56bc 022647 branch disable_user 
+:      022652 le_check_l2cap_continue_legal:
+0x56bd 022653 call enable_user 
+0x56be 022654 fetch 1 ,mem_le_packet_len_recved 
+0x56bf 022655 nrtn blank 
+0x56c0 022656 branch disable_user 
+:      022658 le_check_l2cap_llid_continue:
+0x56c1 022659 call le_check_l2cap_continue_legal 
+0x56c2 022660 nrtn user 
+0x56c3 022661 fetch 1 ,mem_le_packet_len_recved 
+0x56c4 022662 arg mem_le_l2capbuf ,contw 
+0x56c5 022663 iadd contw ,rega 
+0x56c6 022664 fetcht 1 ,mem_le_packet_size 
+0x56c7 022665 iadd temp ,pdata 
+0x56c8 022666 store 1 ,mem_le_packet_len_recved 
+0x56c9 022667 fetch 1 ,mem_le_packet_size 
+0x56ca 022668 copy pdata ,loopcnt 
+0x56cb 022669 copy rega ,contw 
+0x56cc 022670 fetch 2 ,mem_le_payload_ptr 
+0x56cd 022671 copy pdata ,contr 
+0x56ce 022672 call memcpy_fast 
+0x56cf 022673 setarg mem_le_l2capbuf 
+0x56d0 022674 store 2 ,mem_le_payload_ptr 
+0x56d1 022675 fetch 2 ,mem_le_l2cap_size 
+0x56d2 022676 increase 4 ,pdata 
+0x56d3 022677 fetcht 1 ,mem_le_packet_len_recved 
+0x56d4 022678 isub temp ,null 
+0x56d5 022679 branch enable_user ,zero 
+0x56d6 022680 branch disable_user 
+:      022686 le_get_search_att_type:
+0x56d7 022687 call store_contr 
+0x56d8 022688 arg mem_le_search_att_type_length ,contw 
+:      022689 le_get_search_common:
+0x56d9 022690 fetch 2 ,mem_le_l2cap_size 
+0x56da 022691 increase -5 ,pdata 
+:      022692 le_get_search_common2:
+0x56db 022693 istore 1 ,contw 
+0x56dc 022694 copy pdata ,loopcnt 
+0x56dd 022695 call get_contr 
+0x56de 022696 branch memcpy_fast 
+:      022698 le_get_search_att_uuid:
+0x56df 022699 call store_contr 
+0x56e0 022700 arg mem_le_search_uuid_length ,contw 
+0x56e1 022701 branch le_get_search_common 
+:      022705 le_writeatt_cb:
+0x56e2 022706 fetch 2 ,mem_cb_att_write 
+0x56e3 022707 branch callback_func 
+:      022709 le_supervision_update:
+0x56e4 022710 fetcht 4 ,mem_le_supervision_timer 
+0x56e5 022711 call get_clkbt 
+0x56e6 022712 isub temp ,timeup 
+0x56e7 022713 deposit timeup 
+0x56e8 022714 fetcht 2 ,mem_le_superto 
+0x56e9 022715 lshift4 temp ,temp 
+0x56ea 022716 lshift temp ,temp 
+0x56eb 022717 isub temp ,pdata 
+0x56ec 022718 rtn 
+:      022720 le_supervision_flush:
+0x56ed 022721 call get_clkbt 
+0x56ee 022722 store 4 ,mem_le_supervision_timer 
+0x56ef 022723 rtn 
+:      022726 le_adv:
+0x56f0 022727 jam 36 ,mem_le_ch_mapped 
+0x56f1 022728 jam 0 ,mem_le_adv_channel_map_temp 
+:      022729 le_adv_loop:
+0x56f2 022730 bpatchx patch2d_0 ,mem_patch2d 
+0x56f3 022731 fetch 1 ,mem_le_adv_enable 
+0x56f4 022732 rtn blank 
+0x56f5 022733 arg le_adv_interval_timer ,queue 
+0x56f6 022734 call timer_check 
+0x56f7 022735 nrtn blank 
+0x56f8 022736 bpatchx patch2d_1 ,mem_patch2d 
+:      022737 le_adv_loop_tx:
+0x56f9 022738 disable master 
+0x56fa 022739 enable swfine 
+0x56fb 022740 call le_init_adv 
+0x56fc 022741 call le_next_adv_channel 
+0x56fd 022742 call le_send_adv_ind 
+0x56fe 022743 nbranch le_adv_not_match ,match 
+0x56ff 022744 fetch 1 ,mem_le_req_rcv 
+0x5700 022745 increase 1 ,pdata 
+0x5701 022746 store 1 ,mem_le_req_rcv 
+0x5702 022747 fetch 1 ,mem_le_rxbuf 
+0x5703 022748 and pdata ,0x0f ,pdata 
+0x5704 022749 beq scan_req ,le_send_scan_response 
+0x5705 022750 beq connect_req ,le_parse_connect_req 
+:      022751 le_adv_not_match:
+0x5706 022752 bpatchx patch2d_2 ,mem_patch2d 
+0x5707 022753 random pdata 
+0x5708 022754 arg 0x1ff ,temp 
+0x5709 022755 iand temp ,pdata 
+0x570a 022756 add pdata ,250 ,pdata 
+0x570b 022757 call delay 
+0x570c 022758 fetch 1 ,mem_le_adv_channel_map_temp 
+0x570d 022759 fetcht 1 ,mem_le_adv_channel_map 
+0x570e 022760 isub temp ,null 
+0x570f 022761 nbranch le_adv_loop ,zero 
+0x5710 022762 arg le_adv_interval_timer ,queue 
+0x5711 022763 fetch 2 ,mem_le_adv_interval 
+0x5712 022764 branch timer_init 
+:      022767 le_receive_window_size:
+0x5713 022768 bpatchx patch2d_3 ,mem_patch2d 
+0x5714 022769 fetch 1 ,mem_le_peer_sca 
+0x5715 022770 call le_sca_map 
+0x5716 022771 fetch 2 ,mem_le_tsniff 
+0x5717 022772 imul32 temp ,pdata 
+0x5718 022773 arg 375 ,temp 
+0x5719 022774 imul32 temp ,pdata 
+0x571a 022775 arg 100000 ,temp 
+0x571b 022776 idiv temp 
+0x571c 022777 fetch 1 ,mem_le_window_size 
+0x571d 022778 arg 20000 ,temp 
+0x571e 022779 imul32 temp ,pdata 
+0x571f 022780 iadd temp ,pdata 
+0x5720 022781 store 4 ,mem_le_transmit_window 
+0x5721 022782 bpatchx patch2d_4 ,mem_patch2d 
+0x5722 022783 fetch 2 ,mem_rx_window_sniff 
+0x5723 022784 call wait_div_end 
+0x5724 022785 quotient temp 
+0x5725 022786 iadd temp ,pdata 
+0x5726 022787 store 2 ,mem_le_receive_window 
+0x5727 022788 rtn 
+:      022790 le_parse_connect_req:
+0x5728 022791 bpatchx patch2d_5 ,mem_patch2d 
+0x5729 022792 fetch 6 ,mem_le_rxbuf + 8 
+0x572a 022793 fetcht 6 ,mem_le_lap 
+0x572b 022794 isub temp ,null 
+0x572c 022795 nrtn zero 
+0x572d 022796 call le_scan_check_sender_addr_type 
+0x572e 022797 copy rega ,pdata 
+0x572f 022798 store 1 ,mem_le_conn_peer_addr_type 
+0x5730 022799 fetch 7 ,mem_le_rxbuf + 21 
+0x5731 022800 store 7 ,mem_tmp_buffer 
+0x5732 022801 ifetch 8 ,contr 
+0x5733 022802 istore 8 ,contw 
+0x5734 022803 fetch 6 ,mem_le_rxbuf + 2 
+0x5735 022804 store 6 ,mem_le_plap 
+0x5736 022805 increase 6 ,contr 
+0x5737 022806 ifetch 8 ,contr 
+0x5738 022807 store 8 ,mem_le_access 
+0x5739 022808 ifetcht 2 ,contr 
+0x573a 022809 bpatchx patch2d_6 ,mem_patch2d 
+0x573b 022810 lshift2 temp ,temp 
+0x573c 022811 ifetch 2 ,contr 
+0x573d 022812 lshift2 pdata ,pdata 
+0x573e 022813 store 2 ,mem_le_tsniff 
+0x573f 022814 store 4 ,mem_le_anchor 
+0x5740 022815 isub temp ,pdata 
+0x5741 022816 add pdata ,-2 ,clke_bt 
+0x5742 022817 ifetch 9 ,contr 
+0x5743 022818 store 9 ,mem_le_slave_latency 
+0x5744 022819 bpatchx patch2d_7 ,mem_patch2d 
+0x5745 022820 ifetch 1 ,contr 
+0x5746 022821 rshift4 pdata ,temp 
+0x5747 022822 rshift temp ,temp 
+0x5748 022823 storet 1 ,mem_le_peer_sca 
+0x5749 022824 and_into 0x1f ,pdata 
+0x574a 022825 store 1 ,mem_le_hop 
+0x574b 022826 call le_receive_window_size 
+0x574c 022827 call le_calc_channel_map 
+0x574d 022828 call le_init_slave 
+0x574e 022829 call context_new 
+0x574f 022830 nrtn zero 
+0x5750 022831 bpatchx patch2e_0 ,mem_patch2e 
+0x5751 022832 call calc_clke_offset 
+0x5752 022833 call le_l2cap_reset_signaling_identifier 
+0x5753 022834 jam bt_evt_le_connected ,mem_fifo_temp 
+0x5754 022835 call ui_ipc_send_event 
+0x5755 022836 branch context_save 
+:      022839 le_init_attlist_search:
+0x5756 022840 bpatchx patch2e_1 ,mem_patch2e 
+0x5757 022841 fetch 2 ,mem_le_search_handle_start 
+0x5758 022842 iforce regb 
+0x5759 022843 fetch 2 ,mem_le_search_handle_end 
+0x575a 022844 iforce regc 
+0x575b 022845 fetch 2 ,mem_ui_le_uuid_table 
+0x575c 022846 iforce contr 
+0x575d 022847 enable user 
+0x575e 022848 rtn 
+:      022851 le_att_handle_inrange:
+0x575f 022852 ifetch 2 ,contr 
+0x5760 022853 rtn blank 
+0x5761 022854 isub regb ,null 
+0x5762 022855 nrtn positive 
+0x5763 022856 isub regc ,null 
+0x5764 022857 rtn zero 
+0x5765 022858 branch le_att_handle_blank ,positive 
+0x5766 022859 force 1 ,null 
+0x5767 022860 rtn 
+:      022861 le_att_handle_blank:
+0x5768 022862 force 0 ,pdata 
+0x5769 022863 rtn 
+:      022867 le_att_get_handle_ptr:
+0x576a 022868 call le_att_get_handle_ptr2 
+0x576b 022869 branch le_att_get_handle_ptr_found ,zero 
+0x576c 022870 rtn 
+:      022872 le_att_get_handle_ptr2:
+0x576d 022873 bpatchx patch2e_2 ,mem_patch2e 
+0x576e 022874 fetch 2 ,mem_ui_le_uuid_table 
+0x576f 022875 iforce contr 
+:      022876 le_att_get_handle_loop1:
+0x5770 022877 ifetch 2 ,contr 
+0x5771 022878 rtn blank 
+0x5772 022879 isub temp ,null 
+0x5773 022880 rtn zero 
+0x5774 022881 ifetch 1 ,contr 
+0x5775 022882 iadd contr ,contr 
+0x5776 022883 ifetch 1 ,contr 
+0x5777 022884 iadd contr ,contr 
+0x5778 022885 branch le_att_get_handle_loop1 
+:      022886 le_att_get_handle_ptr_found:
+0x5779 022887 ifetch 1 ,contr 
+0x577a 022888 iadd contr ,contr 
+0x577b 022889 rtn 
+:      022893 le_att_get_short_uuid_ptr:
+0x577c 022894 bpatchx patch2e_3 ,mem_patch2e 
+0x577d 022895 fetch 2 ,mem_ui_le_uuid_table 
+0x577e 022896 iforce contr 
+:      022897 le_att_get_short_uuid_loop:
+0x577f 022898 ifetch 2 ,contr 
+0x5780 022899 rtn blank 
+0x5781 022900 ifetch 1 ,contr 
+0x5782 022901 iadd contr ,contr 
+0x5783 022902 increase -2 ,contr 
+0x5784 022903 ifetch 2 ,contr 
+0x5785 022904 isub temp ,null 
+0x5786 022905 rtn zero 
+0x5787 022906 ifetch 1 ,contr 
+0x5788 022907 iadd contr ,contr 
+0x5789 022908 branch le_att_get_short_uuid_loop 
+:      022912 le_att_get_handle_info_from_ptr:
+0x578a 022913 fetch 2 ,mem_le_cur_attlist_start_ptr 
+0x578b 022914 branch le_att_get_handle_info_fast 
+:      022916 le_att_get_handle_info:
+0x578c 022917 bpatchx patch2e_4 ,mem_patch2e 
+0x578d 022918 fetch 2 ,mem_ui_le_uuid_table 
+:      022919 le_att_get_handle_info_fast:
+0x578e 022920 iforce contr 
+0x578f 022921 copy temp ,rega 
+:      022922 le_att_get_handle_loop:
+0x5790 022923 ifetch 2 ,contr 
+0x5791 022924 branch le_att_unfind_handle ,blank 
+0x5792 022925 isub rega ,null 
+0x5793 022926 branch le_att_finded_handle ,zero 
+0x5794 022927 ifetch 1 ,contr 
+0x5795 022928 iadd contr ,contr 
+0x5796 022929 ifetch 1 ,contr 
+0x5797 022930 iadd contr ,contr 
+0x5798 022931 branch le_att_get_handle_loop 
+:      022932 le_att_unfind_handle:
+0x5799 022933 branch disable_blank 
+:      022935 le_att_finded_handle:
+0x579a 022936 ifetch 1 ,contr 
+0x579b 022937 store 1 ,mem_le_cur_uuid_length 
+0x579c 022938 copy pdata ,loopcnt 
+0x579d 022939 arg mem_le_cur_uuid ,contw 
+0x579e 022940 call memcpy_fast 
+0x579f 022941 ifetch 1 ,contr 
+0x57a0 022942 store 1 ,mem_le_curr_att_len 
+0x57a1 022943 call store_contr 
+0x57a2 022944 branch enable_blank 
+:      022947 le_modified_name:
+0x57a3 022948 bpatchx patch2e_5 ,mem_patch2e 
+0x57a4 022949 call le_modified_name_att_list 
+0x57a5 022950 branch le_modified_name_adv 
+:      022952 le_modified_name_att_list:
+0x57a6 022953 arg uuid_chrctr_device_name ,temp 
+0x57a7 022954 call le_att_get_short_uuid_ptr 
+0x57a8 022955 rtn blank 
+0x57a9 022956 ifetch 1 ,contr 
+0x57aa 022957 copy contr ,contw 
+0x57ab 022958 fetcht 1 ,mem_le_name_len 
+0x57ac 022959 copy temp ,loopcnt 
+0x57ad 022960 isub temp ,null 
+0x57ae 022961 nbranch le_name_length_longer_than_att ,positive 
+0x57af 022962 isub temp ,temp 
+0x57b0 022963 arg mem_le_name ,contr 
+0x57b1 022964 call memcpy 
+0x57b2 022965 copy temp ,loopcnt 
+0x57b3 022966 ncall memcpy_empty ,zero 
+0x57b4 022967 rtn 
+:      022968 le_name_length_longer_than_att:
+0x57b5 022969 copy pdata ,loopcnt 
+0x57b6 022970 arg mem_le_name ,contr 
+0x57b7 022971 branch memcpy_fast 
+:      022974 le_modified_name_adv:
+0x57b8 022975 arg mem_le_adv_data_len + 32 ,regc 
+0x57b9 022976 arg mem_le_adv_data ,rega 
+0x57ba 022977 call le_modified_name_adv_and_scan 
+0x57bb 022978 setarg 0 
+0x57bc 022979 setflag user ,0 ,pdata 
+0x57bd 022980 store 1 ,mem_pdatatemp 
+0x57be 022981 arg mem_le_scan_data_len + 32 ,regc 
+0x57bf 022982 arg mem_le_scan_data ,rega 
+0x57c0 022983 call le_modified_name_adv_and_scan 
+0x57c1 022984 rtn user 
+0x57c2 022985 fetch 1 ,mem_pdatatemp 
+0x57c3 022986 branch assert ,blank 
+0x57c4 022987 rtn 
+:      022990 le_modified_name_adv_and_scan:
+0x57c5 022991 bpatchx patch2e_6 ,mem_patch2e 
+0x57c6 022992 call enable_user 
+0x57c7 022993 call clear_temp_block 
+0x57c8 022994 arg 0 ,regb 
+0x57c9 022995 arg mem_le_data_temp ,contw 
+0x57ca 022996 call le_modified_name_adv_loop 
+0x57cb 022997 fetch 1 ,mem_le_name_len 
+0x57cc 022998 add pdata ,1 ,temp 
+0x57cd 022999 iadd regb ,rega 
+0x57ce 023000 increase 2 ,rega 
+0x57cf 023001 sub rega ,0x1f ,null 
+0x57d0 023002 nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
+0x57d1 023003 istoret 1 ,contw 
+0x57d2 023004 arg gap_adtype_local_name_complete ,temp 
+0x57d3 023005 istoret 1 ,contw 
+0x57d4 023006 iforce loopcnt 
+0x57d5 023007 call memcpy_fast 
+0x57d6 023008 copy rega ,regb 
+:      023009 le_modified_name_adv_and_scan_store_data:
+0x57d7 023010 deposit regb 
+0x57d8 023011 store 1 ,mem_le_data_len_temp 
+0x57d9 023012 arg mem_le_data_len_temp ,contr 
+0x57da 023013 setarg -32 
+0x57db 023014 iadd regc ,contw 
+0x57dc 023015 branch memcpy32 
+:      023017 le_modified_name_adv_and_scan_name_overflow:
+0x57dd 023018 call disable_user 
+0x57de 023019 branch le_modified_name_adv_and_scan_store_data 
+:      023021 le_modified_name_adv_loop:
+0x57df 023022 ifetch 1 ,rega 
+0x57e0 023023 rtn blank 
+0x57e1 023024 pincrease 1 
+0x57e2 023025 ifetcht 1 ,contr 
+0x57e3 023026 sub temp ,gap_adtype_local_name_complete ,null 
+0x57e4 023027 branch le_modified_name_adv_found_name ,zero 
+0x57e5 023028 iadd regb ,regb 
+0x57e6 023029 copy rega ,contr 
+0x57e7 023030 iforce loopcnt 
+0x57e8 023031 call memcpy_fast 
+0x57e9 023032 copy contr ,rega 
+:      023033 le_modified_name_adv_loop2:
+0x57ea 023034 deposit rega 
+0x57eb 023035 isub regc ,null 
+0x57ec 023036 rtn positive 
+0x57ed 023037 branch le_modified_name_adv_loop 
+:      023039 le_modified_name_adv_found_name:
+0x57ee 023040 iadd rega ,rega 
+0x57ef 023041 branch le_modified_name_adv_loop2 
+:      023044 memcpy_empty:
+0x57f0 023045 setarg space 
+0x57f1 023046 istore 1 ,contw 
+0x57f2 023047 loop memcpy_empty 
+0x57f3 023048 rtn 
+:      023051 le_lpm_set_mult:
+0x57f4 023052 bpatchx patch2e_7 ,mem_patch2e 
+0x57f5 023053 disable wake 
+0x57f6 023054 branch le_lpm_set_mult_attempt ,attempt 
+0x57f7 023055 nbranch le_lpm_lost ,match 
+:      023056 le_lpm_set_mult_attempt:
+0x57f8 023057 call lpm_match 
+0x57f9 023058 fetch 2 ,mem_rx_window_sniff 
+0x57fa 023059 store 2 ,mem_le_receive_window 
+0x57fb 023061 nbranch lpm_mult_short ,match 
+0x57fc 023062 bmark1 mark_old_packet ,lpm_mult_short 
+0x57fd 023064 fetch 1 ,mem_le_packet_size 
+0x57fe 023065 nbranch lpm_mult_short ,blank 
+0x57ff 023066 fetch 1 ,mem_le_txlen 
+0x5800 023067 nbranch lpm_mult_short ,blank 
+0x5801 023069 fetch 1 ,mem_le_configuration 
+0x5802 023070 bbit1 bit_ble_short_mult ,lpm_mult_short 
+0x5803 023072 fetch 1 ,mem_le_state 
+0x5804 023073 bbit1 lestate_update_param ,lpm_mult_short 
+0x5805 023074 branch lpm_mult_wait_timeout 
+:      023076 le_lpm_lost:
+0x5806 023077 fetcht 2 ,mem_rx_window_sniff 
+0x5807 023078 rshift temp ,temp 
+0x5808 023079 fetch 2 ,mem_le_receive_window 
+0x5809 023080 iadd temp ,pdata 
+0x580a 023081 store 2 ,mem_le_receive_window 
+0x580b 023082 branch lpm_lost 
+:      023085 le_set_config_fixed_tk:
+0x580c 023086 arg bit_ble_passkey_fixed_key ,queue 
+0x580d 023087 branch le_set_config 
+:      023089 le_clr_config_fixed_tk:
+0x580e 023090 arg bit_ble_passkey_fixed_key ,queue 
+0x580f 023091 branch le_clr_config 
+:      023093 le_set_config_fixed_ltk:
+0x5810 023094 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5811 023095 branch le_set_config 
+:      023097 le_clr_config_fixed_ltk:
+0x5812 023098 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5813 023099 branch le_clr_config 
+:      023101 le_set_config_more_data:
+0x5814 023102 arg bit_ble_transmit_packet_by_md ,queue 
+0x5815 023103 branch le_set_config 
+:      023105 le_clr_config_more_data:
+0x5816 023106 arg bit_ble_transmit_packet_by_md ,queue 
+0x5817 023107 branch le_clr_config 
+:      023109 le_set_config_read_authentication:
+0x5818 023110 arg bit_ble_read_auth ,queue 
+0x5819 023111 branch le_set_config 
+:      023113 le_clr_config_read_authentication:
+0x581a 023114 arg bit_ble_read_auth ,queue 
+0x581b 023115 branch le_clr_config 
+:      023117 le_set_config_write_authentication:
+0x581c 023118 arg bit_ble_write_auth ,queue 
+0x581d 023119 branch le_set_config 
+:      023121 le_clr_config_write_authentication:
+0x581e 023122 arg bit_ble_write_auth ,queue 
+0x581f 023123 branch le_clr_config 
+:      023125 le_set_config_short_mult:
+0x5820 023126 arg bit_ble_short_mult ,queue 
+0x5821 023127 branch le_set_config 
+:      023129 le_clr_config_short_mult:
+0x5822 023130 arg bit_ble_short_mult ,queue 
+0x5823 023131 branch le_clr_config 
+:      023134 le_set_config:
+0x5824 023135 fetch 1 ,mem_le_configuration 
+0x5825 023136 qset1 pdata 
+0x5826 023137 store 1 ,mem_le_configuration 
+0x5827 023138 rtn 
+:      023140 le_clr_config:
+0x5828 023141 fetch 1 ,mem_le_configuration 
+0x5829 023142 qset0 pdata 
+0x582a 023143 store 1 ,mem_le_configuration 
+0x582b 023144 rtn 
+:      023146 le_set_fixed_ltk:
+0x582c 023147 setarg 0x112233 
+0x582d 023148 store 3 ,mem_le_fixed_ltk 
+0x582e 023149 setarg 0x445566 
+0x582f 023150 istore 3 ,contw 
+0x5830 023151 setarg 0x778899 
+0x5831 023152 istore 3 ,contw 
+0x5832 023153 setarg 0x001122 
+0x5833 023154 istore 3 ,contw 
+0x5834 023155 setarg 0x334455 
+0x5835 023156 istore 3 ,contw 
+0x5836 023157 setarg 0x66 
+0x5837 023158 istore 1 ,contw 
+0x5838 023159 rtn 
+:      023162 le_set_justwork:
+0x5839 023163 setarg 0x01000302 
+0x583a 023164 store 4 ,mem_le_pres 
+0x583b 023165 setarg 0x010010 
+0x583c 023166 store 3 ,mem_le_pres_max_keysize 
+0x583d 023167 jam 1 ,mem_le_pairing_mode 
+0x583e 023168 rtn 
+:      023172 le_fifo_malloc_tx_empty:
+0x583f 023173 arg 0 ,rega 
+0x5840 023174 arg llid_empty ,type 
+0x5841 023175 branch le_fifo_malloc_tx 
+:      023179 le_fifo_malloc_tx_ll:
+0x5842 023180 arg llid_le_ll ,type 
+0x5843 023181 call le_fifo_malloc_tx 
+0x5844 023182 copy regb ,pdata 
+0x5845 023183 istore 1 ,contw 
+0x5846 023184 rtn 
+:      023188 le_fifo_malloc_tx_l2cap:
+0x5847 023189 force llid_l2cap_start ,type 
+0x5848 023190 increase 4 ,rega 
+0x5849 023191 call le_fifo_malloc_tx 
+0x584a 023192 increase -4 ,rega 
+0x584b 023193 copy rega ,pdata 
+0x584c 023194 istore 2 ,contw 
+0x584d 023195 copy regb ,pdata 
+0x584e 023196 istore 2 ,contw 
+0x584f 023197 rtn 
+:      023201 le_fifo_malloc_tx:
+0x5850 023202 sub rega ,240 ,null 
+0x5851 023203 nbranch assert ,positive 
+0x5852 023204 fetch 1 ,mem_le_tx_buff_used 
+0x5853 023205 arg 1 ,temp 
+0x5854 023206 arg le_tx_buff_count ,loopcnt 
+:      023207 le_fifo_malloc_tx_loop:
+0x5855 023208 iand temp ,null 
+0x5856 023209 branch le_fifo_malloc_tx_got_empty ,zero 
+0x5857 023210 lshift temp ,temp 
+0x5858 023211 loop le_fifo_malloc_tx_loop 
+0x5859 023212 branch assert 
+:      023213 le_fifo_malloc_tx_got_empty:
+0x585a 023214 ixor temp ,pdata 
+0x585b 023215 store 1 ,mem_le_tx_buff_used 
+0x585c 023216 sub loopcnt ,le_tx_buff_count ,pdata 
+0x585d 023217 lshift4 pdata ,pdata 
+0x585e 023218 lshift4 pdata ,pdata 
+0x585f 023219 arg mem_le_tx_buffer0 ,temp 
+0x5860 023220 iadd temp ,temp 
+:      023221 le_fifo_tx_find_empty_ptr:
+0x5861 023222 arg 0 ,loopcnt 
+0x5862 023223 arg mem_le_tx_ptr0 ,contr 
+:      023224 le_fifo_tx_find_empty_ptr_loop:
+0x5863 023225 ifetch 2 ,contr 
+0x5864 023226 branch le_fifo_tx_found_empty_ptr ,blank 
+0x5865 023227 copy loopcnt ,pdata 
+0x5866 023228 increase 1 ,loopcnt 
+0x5867 023229 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
+0x5868 023230 branch assert 
+:      023233 le_fifo_tx_found_empty_ptr:
+0x5869 023234 increase -2 ,contr 
+0x586a 023235 istoret 2 ,contr 
+0x586b 023236 copy temp ,contw 
+0x586c 023237 copy rega ,pdata 
+0x586d 023238 istore 1 ,contw 
+0x586e 023239 setarg 0 
+0x586f 023240 istore 1 ,contw 
+0x5870 023241 copy type ,pdata 
+0x5871 023242 istore 1 ,contw 
+0x5872 023243 rtn 
+:      023247 le_fifo_get_first_tx_ptr:
+0x5873 023248 fetch 2 ,mem_le_tx_ptr0 
+0x5874 023249 copy pdata ,contr 
+0x5875 023250 rtn 
+:      023252 le_fifo_get_second_tx_ptr:
+0x5876 023253 fetch 2 ,mem_le_tx_ptr1 
+0x5877 023254 copy pdata ,contr 
+0x5878 023255 rtn 
+:      023257 le_fifo_get_last_tx_ptr:
+0x5879 023258 call le_fifo_get_last_tx_ptr0 
+0x587a 023259 copy pdata ,contr 
+0x587b 023260 rtn 
+:      023261 le_fifo_get_last_tx_ptr0:
+0x587c 023262 fetch 2 ,mem_le_tx_ptr3 
+0x587d 023263 nrtn blank 
+0x587e 023264 fetch 2 ,mem_le_tx_ptr2 
+0x587f 023265 nrtn blank 
+0x5880 023266 fetch 2 ,mem_le_tx_ptr1 
+0x5881 023267 nrtn blank 
+0x5882 023268 fetch 2 ,mem_le_tx_ptr0 
+0x5883 023269 rtn 
+:      023271 le_fifo_get_first_l2cap_ptr:
+0x5884 023272 call le_fifo_get_first_tx_ptr 
+0x5885 023273 increase 3 ,contr 
+0x5886 023274 rtn 
+:      023276 le_fifo_get_first_att_ptr:
+0x5887 023277 call le_fifo_get_first_tx_ptr 
+0x5888 023278 increase 7 ,contr 
+0x5889 023279 rtn 
+:      023281 le_fifo_get_last_att_ptr:
+0x588a 023282 call le_fifo_get_last_tx_ptr 
+0x588b 023283 increase 7 ,contr 
+0x588c 023284 rtn 
+:      023286 le_fifo_get_last_l2cap_ptr:
+0x588d 023287 call le_fifo_get_last_tx_ptr 
+0x588e 023288 increase 3 ,contr 
+0x588f 023289 rtn 
+:      023293 le_fifo_check_full:
+0x5890 023294 fetch 2 ,mem_le_tx_ptr3 
+0x5891 023295 rtn 
+:      023298 le_fifo_check_nearly_full:
+0x5892 023299 fetch 2 ,mem_le_tx_ptr2 
+0x5893 023300 rtn 
+:      023303 le_fifo_check_empty:
+0x5894 023304 fetch 2 ,mem_le_tx_ptr0 
+0x5895 023305 rtn 
+:      023308 le_fifo_release_first_node:
+0x5896 023309 fetch 2 ,mem_le_tx_ptr0 
+0x5897 023310 arg mem_le_tx_buffer0 ,temp 
+0x5898 023311 isub temp ,pdata 
+0x5899 023312 rshift4 pdata ,pdata 
+0x589a 023313 rshift4 pdata ,queue 
+0x589b 023314 fetch 1 ,mem_le_tx_buff_used 
+0x589c 023315 qset0 pdata 
+0x589d 023316 store 1 ,mem_le_tx_buff_used 
+0x589e 023317 arg 0 ,loopcnt 
+:      023318 le_fifo_release_first_node_loop:
+0x589f 023319 lshift loopcnt ,pdata 
+0x58a0 023320 arg mem_le_tx_ptr1 ,temp 
+0x58a1 023321 iadd temp ,temp 
+0x58a2 023322 ifetch 2 ,temp 
+0x58a3 023323 increase -2 ,temp 
+0x58a4 023324 istore 2 ,temp 
+0x58a5 023325 copy loopcnt ,pdata 
+0x58a6 023326 increase 1 ,loopcnt 
+0x58a7 023327 bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
+0x58a8 023328 setarg 0 
+0x58a9 023329 istore 2 ,temp 
+0x58aa 023330 rtn 
+:      023336 le_parse_att:
+0x58ab 023337 ifetch 3 ,contr 
+0x58ac 023338 store 3 ,mem_le_att_opcode 
+0x58ad 023339 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
+0x58ae 023340 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
+0x58af 023341 beq attop_find_information_request ,le_parse_att_find_information_request 
+0x58b0 023342 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
+0x58b1 023343 beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
+0x58b2 023344 beq attop_read_request ,le_parse_att_read_request 
+0x58b3 023345 beq attop_read_blob_request ,le_parse_att_read_blob_request 
+0x58b4 023346 beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
+0x58b5 023347 beq attop_write_request ,le_parse_att_write_request 
+0x58b6 023348 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
+0x58b7 023349 beq attop_execute_write_request ,le_parse_att_execute_write_request 
+0x58b8 023350 beq attop_write_command ,le_parse_att_write_command 
+0x58b9 023351 rtn 
+:      023354 le_send_att_exchange_mtu_requset:
+0x58ba 023355 force 3 ,rega 
+0x58bb 023356 call le_fifo_malloc_tx_l2cap_gatt 
+0x58bc 023357 setarg attop_exchange_mtu_request 
+0x58bd 023358 istore 1 ,contw 
+0x58be 023359 fetch 2 ,mem_le_local_mtu 
+0x58bf 023360 istore 2 ,contw 
+0x58c0 023361 rtn 
+:      023364 le_parse_att_exchange_mtu_request:
+0x58c1 023365 call le_parse_att_exchange_mtu_response 
+:      023366 le_send_att_exchange_mtu_response:
+0x58c2 023367 force 3 ,rega 
+0x58c3 023368 call le_fifo_malloc_tx_l2cap_gatt 
+0x58c4 023369 setarg attop_exchange_mtu_response 
+0x58c5 023370 istore 1 ,contw 
+0x58c6 023371 fetch 2 ,mem_le_local_mtu 
+0x58c7 023372 istore 2 ,contw 
+0x58c8 023373 rtn 
+:      023375 le_parse_att_exchange_mtu_response:
+0x58c9 023376 rshift8 pdata ,pdata 
+0x58ca 023377 store 2 ,mem_le_remote_mtu 
+0x58cb 023378 rtn 
+:      023380 le_parse_att_find_information_request:
+0x58cc 023381 call le_get_search_handle_start_end_common 
+0x58cd 023382 call enable_user 
+0x58ce 023383 branch le_send_att_find_information_response 
+:      023385 le_send_att_find_information_response:
+0x58cf 023386 arg 3 ,timeup 
+0x58d0 023387 call le_init_attlist_search 
+:      023388 le_send_att_find_information_res_loop:
+0x58d1 023389 call le_att_handle_inrange 
+0x58d2 023390 branch le_send_att_find_information_res_end ,blank 
+0x58d3 023391 nbranch le_send_att_find_information_res_next ,positive 
+0x58d4 023392 increase -2 ,contr 
+0x58d5 023393 call store_contr 
+0x58d6 023394 call get_contw 
+0x58d7 023395 nbranch le_send_att_find_information_res_store_info ,user 
+0x58d8 023396 call push_stack_rega_b_c 
+0x58d9 023397 call disable_user 
+0x58da 023398 force 20 ,rega 
+0x58db 023399 call le_fifo_malloc_tx_l2cap_gatt 
+0x58dc 023400 call pop_stack_rega_b_c 
+0x58dd 023401 setarg attop_find_information_response 
+0x58de 023402 istore 1 ,contw 
+0x58df 023403 setarg uuid_size_16bit 
+0x58e0 023404 istore 1 ,contw 
+:      023405 le_send_att_find_information_res_store_info:
+0x58e1 023406 call get_contr 
+0x58e2 023407 ifetch 2 ,contr 
+0x58e3 023408 istore 2 ,contw 
+0x58e4 023409 ifetch 1 ,contr 
+0x58e5 023410 copy pdata ,loopcnt 
+0x58e6 023411 call memcpy 
+0x58e7 023412 call store_contw 
+0x58e8 023413 increase -1 ,timeup 
+0x58e9 023414 branch le_send_att_find_information_res_end ,zero 
+:      023415 le_send_att_find_information_res_cont:
+0x58ea 023416 ifetch 1 ,contr 
+0x58eb 023417 iadd contr ,contr 
+0x58ec 023418 branch le_send_att_find_information_res_loop 
+:      023419 le_send_att_find_information_res_next:
+0x58ed 023420 ifetch 1 ,contr 
+0x58ee 023421 iadd contr ,contr 
+0x58ef 023422 branch le_send_att_find_information_res_cont 
+:      023423 le_send_att_find_information_res_end:
+0x58f0 023424 branch le_send_att_error_response_notfound ,user 
+0x58f1 023425 branch le_send_auto_len_by_mem 
+:      023428 le_parse_att_find_by_type_value_request:
+0x58f2 023429 call le_get_search_handle_start_end_common 
+0x58f3 023430 ifetch 2 ,contr 
+0x58f4 023431 store 2 ,mem_le_search_uuid 
+0x58f5 023432 call store_contr 
+0x58f6 023433 arg mem_le_search_att_type_length ,contw 
+0x58f7 023434 fetch 2 ,mem_le_l2cap_size 
+0x58f8 023435 increase -7 ,pdata 
+0x58f9 023436 call le_get_search_common2 
+0x58fa 023437 branch le_send_att_find_by_type_value_response 
+:      023440 le_start_end_handle_check_1:
+0x58fb 023441 disable user 
+0x58fc 023442 fetcht 2 ,mem_le_search_handle_start 
+0x58fd 023443 fetch 2 ,mem_le_search_handle_end 
+0x58fe 023444 isub temp ,null 
+0x58ff 023445 nbranch le_start_end_handle_check_1_fail ,positive 
+0x5900 023446 deposit temp 
+0x5901 023447 rtnne 0 
+:      023448 le_start_end_handle_check_1_fail:
+0x5902 023449 enable user 
+0x5903 023450 jam att_err_invalid_handle ,mem_le_err_code 
+0x5904 023451 branch le_send_att_error_response 
+:      023454 le_send_att_find_by_type_value_response:
+0x5905 023455 call le_start_end_handle_check_1 
+0x5906 023456 rtn user 
+0x5907 023457 fetcht 2 ,mem_le_search_uuid 
+0x5908 023458 setarg uuid_gatt_primary_service 
+0x5909 023459 isub temp ,null 
+0x590a 023460 branch le_send_att_find_by_type_value_res_primary ,zero 
+0x590b 023461 branch le_send_att_error_response_notfound 
+:      023464 le_send_att_find_by_type_value_res_primary:
+0x590c 023465 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
+0x590d 023466 fetcht 2 ,mem_le_search_handle_start 
+0x590e 023467 storet 2 ,mem_temp 
+0x590f 023468 call le_att_get_handle_info 
+0x5910 023469 nbranch le_send_att_error_response_notfound ,blank 
+:      023470 le_send_att_find_primary_search_loop:
+0x5911 023471 fetcht 2 ,mem_temp 
+0x5912 023472 call le_att_get_handle_info 
+0x5913 023473 nbranch le_send_att_error_response_notfound2 ,blank 
+0x5914 023474 copy contr ,rega 
+0x5915 023475 fetch 1 ,mem_le_curr_att_len 
+0x5916 023476 copy pdata ,loopcnt 
+0x5917 023477 fetcht 1 ,mem_le_search_att_type_length 
+0x5918 023478 isub temp ,null 
+0x5919 023479 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x591a 023480 arg mem_le_search_att_type ,regb 
+0x591b 023481 call string_compare 
+0x591c 023483 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
+0x591d 023485 fetch 2 ,mem_le_cur_uuid 
+0x591e 023486 fetcht 2 ,mem_le_search_uuid 
+0x591f 023487 isub temp ,null 
+0x5920 023488 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
+:      023489 le_send_att_find_primary_search_loop1:
+0x5921 023490 fetch 2 ,mem_temp 
+0x5922 023491 increase 1 ,pdata 
+0x5923 023492 store 2 ,mem_temp 
+0x5924 023493 branch le_send_att_find_primary_search_loop 
+:      023495 le_send_att_error_response_notfound2:
+0x5925 023496 fetch 1 ,mem_le_search_res 
+0x5926 023497 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
+0x5927 023498 branch le_send_att_error_response_notfound 
+:      023501 le_send_att_find_primary_search_end_start_handle_found:
+0x5928 023502 fetch 2 ,mem_le_cur_uuid 
+0x5929 023503 fetcht 2 ,mem_le_search_uuid 
+0x592a 023504 isub temp ,null 
+0x592b 023505 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x592c 023506 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
+0x592d 023508 fetcht 2 ,mem_temp 
+0x592e 023509 storet 2 ,mem_le_cur_handle_start 
+0x592f 023510 branch le_send_att_find_primary_search_loop1 
+:      023512 le_send_att_find_primary_search_end_ending_handle_found:
+0x5930 023513 fetch 1 ,mem_le_search_res 
+0x5931 023514 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
+0x5932 023515 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
+0x5933 023516 fetcht 2 ,mem_temp 
+0x5934 023517 increase -1 ,temp 
+0x5935 023518 storet 2 ,mem_le_cur_handle_end 
+:      023520 le_send_att_find_primary_search_end:
+0x5936 023521 arg 5 ,rega 
+0x5937 023522 call le_fifo_malloc_tx_l2cap_gatt 
+0x5938 023523 setarg attop_find_by_type_value_response 
+0x5939 023524 istore 1 ,contw 
+0x593a 023525 fetch 2 ,mem_le_cur_handle_start 
+0x593b 023526 istore 2 ,contw 
+0x593c 023527 fetch 2 ,mem_le_cur_handle_end 
+0x593d 023528 istore 2 ,contw 
+0x593e 023529 rtn 
+:      023533 le_parse_att_read_by_type_request:
+0x593f 023534 call le_get_search_handle_start_end_common 
+0x5940 023535 call le_get_search_att_uuid 
+0x5941 023536 branch le_send_att_read_by_type_response 
+:      023538 le_send_att_read_by_type_response:
+0x5942 023539 fetcht 2 ,mem_le_search_handle_start 
+0x5943 023540 storet 2 ,mem_temp 
+0x5944 023541 call le_init_attlist_search 
+0x5945 023542 call le_att_get_handle_ptr2 
+0x5946 023543 increase -2 ,contr 
+0x5947 023544 copy contr ,pdata 
+0x5948 023545 store 2 ,mem_le_cur_attlist_start_ptr 
+0x5949 023547 fetcht 2 ,mem_le_search_uuid 
+0x594a 023548 setarg uuid_chrctr_device_name 
+0x594b 023549 isub temp ,null 
+0x594c 023550 branch le_send_att_read_by_type_res_device_name ,zero 
+0x594d 023551 setarg uuid_gatt_characteristic 
+0x594e 023552 isub temp ,null 
+0x594f 023553 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
+0x5950 023554 arg 2 ,timeup 
+:      023555 le_send_att_read_by_type_response_loop:
+0x5951 023556 call le_att_check_handle_end 
+0x5952 023557 nbranch le_send_att_read_by_type_response_end ,positive 
+0x5953 023558 fetcht 2 ,mem_temp 
+0x5954 023559 call le_att_get_handle_info_from_ptr 
+0x5955 023560 beq 1 ,le_send_att_read_by_type_response_end 
+0x5956 023561 call le_att_same_uuid 
+0x5957 023562 nbranch le_send_att_read_by_type_response_next_handle ,zero 
+0x5958 023563 nbranch le_send_att_read_by_type_res_found_next ,user 
+0x5959 023564 disable user 
+0x595a 023565 arg 20 ,rega 
+0x595b 023566 call le_fifo_malloc_tx_l2cap_gatt 
+0x595c 023567 setarg attop_read_by_type_response 
+0x595d 023568 istore 1 ,contw 
+0x595e 023569 copy contw ,alarm 
+0x595f 023570 increase 1 ,contw 
+0x5960 023572 call le_send_att_read_by_type_write_properties 
+0x5961 023573 call le_att_next_handle 
+0x5962 023574 call le_att_get_handle_info_from_ptr 
+0x5963 023575 call le_send_att_read_by_type_write_uuid 
+0x5964 023576 fetch 1 ,mem_le_cur_uuid_length 
+0x5965 023577 increase 5 ,pdata 
+0x5966 023578 istore 1 ,alarm 
+0x5967 023579 fetch 1 ,mem_le_cur_uuid_length 
+0x5968 023580 beq 16 ,le_send_att_read_by_type_response_end 
+0x5969 023581 increase -1 ,timeup 
+0x596a 023582 branch le_send_att_read_by_type_response_end ,zero 
+:      023583 le_send_att_read_by_type_response_next_handle:
+0x596b 023584 call le_att_next_handle 
+0x596c 023585 branch le_send_att_read_by_type_response_loop 
+:      023586 le_send_att_read_by_type_response_end:
+0x596d 023587 branch le_send_att_error_response_notfound ,user 
+0x596e 023588 branch le_send_auto_len_by_mem 
+:      023590 le_send_att_read_by_type_res_found_next:
+0x596f 023591 call le_store_att_record 
+0x5970 023592 call le_att_next_handle 
+0x5971 023593 call le_att_get_handle_info_from_ptr 
+0x5972 023594 fetch 1 ,mem_le_cur_uuid_length 
+0x5973 023595 beq 16 ,le_send_att_read_by_type_response_end 
+0x5974 023597 call get_contw 
+0x5975 023598 fetch 2 ,mem_temp 
+0x5976 023599 increase -1 ,pdata 
+0x5977 023600 istore 2 ,contw 
+0x5978 023601 call le_write_att_record_common 
+0x5979 023602 call le_send_att_read_by_type_write_uuid 
+0x597a 023603 increase -1 ,timeup 
+0x597b 023604 branch le_send_att_read_by_type_response_end ,zero 
+0x597c 023605 branch le_send_att_read_by_type_response_next_handle 
+:      023608 le_send_att_read_by_type_write_properties:
+0x597d 023609 fetch 2 ,mem_temp 
+0x597e 023610 istore 2 ,contw 
+0x597f 023612 fetch 1 ,mem_le_curr_att_len 
+0x5980 023613 copy pdata ,loopcnt 
+0x5981 023614 call get_contr 
+0x5982 023615 call memcpy_fast 
+0x5983 023616 branch store_contw 
+:      023617 le_send_att_read_by_type_write_uuid:
+0x5984 023618 call get_contw 
+0x5985 023619 fetch 2 ,mem_temp 
+0x5986 023620 istore 2 ,contw 
+0x5987 023621 call store_contw 
+0x5988 023622 fetch 1 ,mem_le_cur_uuid_length 
+0x5989 023623 copy pdata ,loopcnt 
+0x598a 023624 call get_contw 
+0x598b 023625 call get_contr 
+0x598c 023626 isub loopcnt ,contr 
+0x598d 023627 increase -1 ,contr 
+0x598e 023628 call memcpy_fast 
+0x598f 023629 branch store_contw 
+:      023633 le_send_att_read_by_type_res_not_characteristic:
+0x5990 023634 fetcht 2 ,mem_le_search_handle_start 
+0x5991 023635 storet 2 ,mem_temp 
+:      023636 le_send_att_read_by_type_res_not_char_loop:
+0x5992 023637 call le_att_check_handle_end 
+0x5993 023638 nbranch le_send_att_error_response_notfound ,positive 
+0x5994 023639 call le_att_get_handle_info_from_ptr 
+0x5995 023640 beq 1 ,le_send_att_error_response_notfound 
+0x5996 023641 call le_att_same_uuid 
+0x5997 023642 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
+:      023644 le_send_att_read_by_type_res_not_char_common:
+0x5998 023645 arg 20 ,rega 
+0x5999 023646 call le_fifo_malloc_tx_l2cap_gatt 
+0x599a 023647 setarg attop_read_by_type_response 
+0x599b 023648 istore 1 ,contw 
+0x599c 023649 fetch 1 ,mem_le_curr_att_len 
+0x599d 023650 copy pdata ,loopcnt 
+0x599e 023651 increase 2 ,pdata 
+0x599f 023652 istore 1 ,contw 
+0x59a0 023653 fetch 2 ,mem_temp 
+0x59a1 023654 istore 2 ,contw 
+0x59a2 023655 call get_contr 
+0x59a3 023656 call memcpy_fast 
+0x59a4 023657 call store_contw 
+0x59a5 023658 branch le_send_auto_len_by_mem 
+:      023660 le_send_att_read_by_type_res_not_char_next:
+0x59a6 023661 call le_att_next_handle 
+0x59a7 023662 branch le_send_att_read_by_type_res_not_char_loop 
+:      023665 le_send_att_read_by_type_res_device_name:
+0x59a8 023666 arg uuid_chrctr_device_name ,temp 
+0x59a9 023667 call le_att_get_short_uuid_ptr 
+0x59aa 023668 rtn blank 
+0x59ab 023669 increase -5 ,contr 
+0x59ac 023670 ifetch 2 ,contr 
+0x59ad 023671 store 2 ,mem_temp 
+0x59ae 023672 arg 20 ,rega 
+0x59af 023673 call le_fifo_malloc_tx_l2cap_gatt 
+0x59b0 023674 setarg attop_read_by_type_response 
+0x59b1 023675 istore 1 ,contw 
+0x59b2 023676 fetch 1 ,mem_le_name_len 
+0x59b3 023677 copy pdata ,loopcnt 
+0x59b4 023678 increase 2 ,pdata 
+0x59b5 023679 istore 1 ,contw 
+0x59b6 023680 fetch 2 ,mem_temp 
+0x59b7 023681 istore 2 ,contw 
+0x59b8 023682 arg mem_le_name ,contr 
+0x59b9 023683 call memcpy_fast 
+0x59ba 023684 call store_contw 
+0x59bb 023685 branch le_send_auto_len_by_mem 
+:      023689 le_parse_att_read_request:
+0x59bc 023690 fetcht 2 ,mem_le_att_handle 
+0x59bd 023691 fetch 1 ,mem_le_configuration 
+0x59be 023692 bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
+:      023694 le_send_att_read_response:
+0x59bf 023695 call le_att_get_handle_ptr 
+0x59c0 023696 branch le_send_att_error_response_notfound ,blank 
+0x59c1 023697 increase -2 ,contr 
+0x59c2 023698 ifetch 2 ,contr 
+0x59c3 023699 arg uuid_chrctr_device_name ,temp 
+0x59c4 023700 isub temp ,null 
+0x59c5 023701 branch le_send_device_name ,zero 
+0x59c6 023702 ifetch 1 ,contr 
+0x59c7 023703 sub pdata ,22 ,null 
+0x59c8 023704 branch le_send_att_read_response_less ,positive 
+0x59c9 023705 force 22 ,pdata 
+:      023706 le_send_att_read_response_less:
+0x59ca 023707 copy pdata ,regc 
+0x59cb 023708 call store_contr 
+0x59cc 023709 add regc ,1 ,rega 
+0x59cd 023710 call le_fifo_malloc_tx_l2cap_gatt 
+0x59ce 023711 setarg attop_read_response 
+0x59cf 023712 istore 1 ,contw 
+0x59d0 023713 copy regc ,loopcnt 
+0x59d1 023714 call get_contr 
+0x59d2 023715 branch memcpy 
+:      023717 le_send_device_name:
+0x59d3 023718 call store_contr 
+0x59d4 023719 fetch 1 ,mem_le_name_len 
+0x59d5 023720 add pdata ,1 ,rega 
+0x59d6 023721 call le_fifo_malloc_tx_l2cap_gatt 
+0x59d7 023722 setarg attop_read_response 
+0x59d8 023723 istore 1 ,contw 
+0x59d9 023724 fetch 1 ,mem_le_name_len 
+0x59da 023725 copy pdata ,loopcnt 
+0x59db 023726 arg mem_le_name ,contr 
+0x59dc 023727 branch memcpy 
+:      023730 le_send_att_read_response_check_auth:
+0x59dd 023731 fetch 2 ,mem_le_pairing_handle 
+0x59de 023732 isub temp ,null 
+0x59df 023733 nbranch le_send_att_read_response ,zero 
+0x59e0 023735 call le_check_encrypt_state 
+0x59e1 023736 nbranch le_send_att_read_response ,user 
+0x59e2 023737 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x59e3 023738 branch le_send_att_error_response 
+:      023741 le_parse_att_read_blob_request:
+0x59e4 023742 ifetch 2 ,contr 
+0x59e5 023743 store 2 ,mem_le_att_offset 
+:      023744 le_send_att_read_blob_response:
+0x59e6 023745 arg 20 ,rega 
+0x59e7 023746 call le_fifo_malloc_tx_l2cap_gatt 
+0x59e8 023747 setarg attop_read_blob_response 
+0x59e9 023748 istore 1 ,contw 
+0x59ea 023749 fetch 2 ,mem_le_att_offset 
+0x59eb 023750 iforce rega 
+0x59ec 023751 fetcht 2 ,mem_le_att_handle 
+0x59ed 023752 call le_att_get_handle_ptr 
+0x59ee 023753 branch le_send_att_error_response_notfound ,blank 
+0x59ef 023754 ifetch 1 ,contr 
+0x59f0 023755 isub rega ,loopcnt 
+0x59f1 023756 nbranch le_send_att_error_response_notfound ,positive 
+0x59f2 023757 sub loopcnt ,22 ,null 
+0x59f3 023758 branch le_send_att_read_blob_response_less ,positive 
+0x59f4 023759 force 22 ,loopcnt 
+:      023760 le_send_att_read_blob_response_less:
+0x59f5 023761 deposit rega 
+0x59f6 023762 iadd contr ,contr 
+0x59f7 023763 call memcpy_fast 
+0x59f8 023764 call store_contw 
+0x59f9 023765 branch le_send_auto_len_by_mem 
+:      023768 le_parse_att_read_by_group_type_request:
+0x59fa 023769 call le_get_search_handle_start_end_common 
+0x59fb 023770 call le_get_search_att_type 
+0x59fc 023771 branch le_send_att_read_by_group_type_response 
+:      023776 le_send_att_read_by_group_type_response:
+0x59fd 023777 arg 2 ,timeup 
+0x59fe 023778 fetcht 2 ,mem_le_search_handle_start 
+0x59ff 023782 storet 2 ,mem_temp 
+0x5a00 023783 call le_init_attlist_search 
+0x5a01 023784 call le_att_get_handle_ptr2 
+0x5a02 023785 increase -2 ,contr 
+0x5a03 023786 copy contr ,pdata 
+0x5a04 023787 store 2 ,mem_le_cur_attlist_start_ptr 
+:      023788 le_send_att_read_by_group_type_response_loop:
+0x5a05 023789 call le_att_check_handle_end 
+0x5a06 023790 nbranch le_send_att_read_by_group_type_end0 ,positive 
+0x5a07 023791 fetcht 2 ,mem_temp 
+0x5a08 023792 call le_att_get_handle_info_from_ptr 
+0x5a09 023793 beq 1 ,le_send_att_read_by_group_type_end1 
+0x5a0a 023795 call le_att_same_type 
+0x5a0b 023796 nbranch le_send_att_read_by_group_type_next_handle ,zero 
+0x5a0c 023797 copy timeup ,pdata 
+0x5a0d 023798 beq 0 ,le_send_att_read_by_group_type_end1 
+0x5a0e 023799 nbranch le_send_att_read_by_group_type_store_write_record ,user 
+0x5a0f 023800 disable user 
+0x5a10 023802 arg 20 ,rega 
+0x5a11 023803 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a12 023804 setarg attop_read_by_group_type_response 
+0x5a13 023805 istore 1 ,contw 
+0x5a14 023806 fetch 1 ,mem_le_curr_att_len 
+0x5a15 023807 increase 4 ,pdata 
+0x5a16 023808 istore 1 ,contw 
+0x5a17 023809 call store_contw 
+0x5a18 023810 branch le_send_att_read_by_group_type_store_record 
+:      023811 le_send_att_read_by_group_type_store_write_record:
+0x5a19 023812 fetch 1 ,mem_le_curr_att_len 
+0x5a1a 023813 beq 16 ,le_send_att_read_by_group_type_end1 
+0x5a1b 023814 fetch 2 ,mem_temp 
+0x5a1c 023815 increase -1 ,pdata 
+0x5a1d 023816 store 2 ,mem_le_cur_handle_end 
+0x5a1e 023817 call le_write_att_record 
+:      023818 le_send_att_read_by_group_type_store_record:
+0x5a1f 023819 fetch 2 ,mem_temp 
+0x5a20 023820 store 2 ,mem_le_cur_handle_start 
+0x5a21 023821 call le_store_att_record 
+0x5a22 023822 increase -1 ,timeup 
+:      023824 le_send_att_read_by_group_type_next_handle:
+0x5a23 023825 call le_att_next_handle 
+0x5a24 023826 branch le_send_att_read_by_group_type_response_loop 
+:      023828 le_send_att_read_by_group_type_end0:
+0x5a25 023829 fetch 2 ,mem_temp 
+0x5a26 023830 store 2 ,mem_le_cur_handle_end 
+0x5a27 023831 branch le_send_att_read_by_group_type_end_common 
+:      023832 le_send_att_read_by_group_type_end1:
+0x5a28 023833 fetch 2 ,mem_temp 
+0x5a29 023834 increase -1 ,pdata 
+0x5a2a 023835 store 2 ,mem_le_cur_handle_end 
+0x5a2b 023836 branch le_send_att_read_by_group_type_end_common 
+:      023837 le_send_att_read_by_group_type_end_common:
+0x5a2c 023838 branch le_send_att_error_response_notfound ,user 
+0x5a2d 023839 call le_write_att_record 
+0x5a2e 023840 branch le_send_auto_len_by_mem 
+:      023845 le_parse_att_write_request:
+0x5a2f 023846 copy contr ,rega 
+0x5a30 023847 fetch 2 ,mem_le_l2cap_size 
+0x5a31 023848 add pdata ,-3 ,regb 
+0x5a32 023849 call le_writeatt_cb 
+:      023850 le_send_att_write_response_check_auth:
+0x5a33 023851 fetch 1 ,mem_le_configuration 
+0x5a34 023852 bbit0 bit_ble_write_auth ,le_send_att_write_response 
+0x5a35 023854 fetcht 2 ,mem_le_att_handle 
+0x5a36 023855 fetch 2 ,mem_le_pairing_handle 
+0x5a37 023856 isub temp ,null 
+0x5a38 023857 nbranch le_send_att_write_response ,zero 
+0x5a39 023858 call le_check_encrypt_state 
+0x5a3a 023859 nbranch le_send_att_write_response ,user 
+0x5a3b 023860 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x5a3c 023861 branch le_send_att_error_response 
+:      023863 le_send_att_write_response:
+0x5a3d 023864 force 1 ,rega 
+0x5a3e 023865 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a3f 023866 setarg attop_write_response 
+0x5a40 023867 istore 1 ,contw 
+0x5a41 023868 rtn 
+:      023870 le_check_encrypt_state:
+0x5a42 023871 call disable_user 
+0x5a43 023872 fetch 1 ,mem_le_pairing_mode 
+0x5a44 023873 rtneq le_pairing_mode_none 
+0x5a45 023874 fetch 1 ,mem_context 
+0x5a46 023875 rtnbit1 lestate_encryption 
+0x5a47 023876 branch enable_user 
+:      023879 le_parse_att_prepare_write_request:
+0x5a48 023880 add contr ,2 ,rega 
+0x5a49 023881 fetch 2 ,mem_le_l2cap_size 
+0x5a4a 023882 add pdata ,-5 ,regb 
+0x5a4b 023883 call le_writeatt_cb 
+0x5a4c 023884 branch le_send_att_prepare_write_response 
+:      023887 le_send_att_prepare_write_response:
+0x5a4d 023888 fetch 2 ,mem_le_l2cap_size 
+0x5a4e 023889 copy pdata ,rega 
+0x5a4f 023890 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a50 023891 setarg attop_prepare_write_response 
+0x5a51 023892 istore 1 ,contw 
+0x5a52 023893 fetch 2 ,mem_le_att_handle 
+0x5a53 023894 istore 2 ,contw 
+0x5a54 023895 fetch 2 ,mem_le_l2cap_size 
+0x5a55 023896 add pdata ,-5 ,loopcnt 
+0x5a56 023897 fetch 2 ,mem_le_payload_ptr 
+0x5a57 023898 add pdata ,7 ,contr 
+0x5a58 023899 ifetch 2 ,contr 
+0x5a59 023900 istore 2 ,contw 
+0x5a5a 023901 branch memcpy_fast 
+:      023905 le_parse_att_execute_write_request:
+:      023907 le_send_att_execute_write_response:
+0x5a5b 023908 force 1 ,rega 
+0x5a5c 023909 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a5d 023910 setarg attop_execute_write_response 
+0x5a5e 023911 istore 1 ,contw 
+0x5a5f 023912 rtn 
+:      023916 le_parse_att_write_command:
+0x5a60 023917 copy contr ,rega 
+0x5a61 023918 fetch 2 ,mem_le_l2cap_size 
+0x5a62 023919 add pdata ,-3 ,regb 
+0x5a63 023920 branch le_writeatt_cb 
+:      023925 le_att_malloc_tx_notify:
+0x5a64 023926 copy temp ,regc 
+0x5a65 023927 increase 3 ,rega 
+0x5a66 023928 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a67 023929 increase -3 ,rega 
+0x5a68 023930 setarg attop_handle_value_notification 
+0x5a69 023931 istore 1 ,contw 
+0x5a6a 023932 copy regc ,temp 
+0x5a6b 023933 istoret 2 ,contw 
+0x5a6c 023934 rtn 
+:      023937 le_att_malloc_tx_indication:
+0x5a6d 023938 copy temp ,regc 
+0x5a6e 023939 increase 3 ,rega 
+0x5a6f 023940 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a70 023941 increase -3 ,rega 
+0x5a71 023942 setarg attop_handle_value_indication 
+0x5a72 023943 istore 1 ,contw 
+0x5a73 023944 copy regc ,temp 
+0x5a74 023945 istoret 2 ,contw 
+0x5a75 023946 rtn 
+:      023951 le_send_att_error_response_notfound:
+0x5a76 023952 jam att_err_attribute_not_found ,mem_le_err_code 
+:      023953 le_send_att_error_response:
+0x5a77 023954 force 5 ,rega 
+0x5a78 023955 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a79 023956 setarg attop_error_response 
+0x5a7a 023957 istore 1 ,contw 
+0x5a7b 023958 fetch 1 ,mem_le_att_opcode 
+0x5a7c 023959 istore 1 ,contw 
+0x5a7d 023960 fetch 2 ,mem_le_att_handle 
+0x5a7e 023961 istore 2 ,contw 
+0x5a7f 023962 fetch 1 ,mem_le_err_code 
+0x5a80 023963 istore 1 ,contw 
+0x5a81 023964 rtn 
+:      023967 le_fifo_malloc_tx_l2cap_gatt:
+0x5a82 023968 force le_l2cap_cid_att ,regb 
+0x5a83 023969 branch le_fifo_malloc_tx_l2cap 
+:      023972 le_att_next_handle:
+0x5a84 023973 fetcht 2 ,mem_temp 
+0x5a85 023974 increase 1 ,temp 
+0x5a86 023975 storet 2 ,mem_temp 
+0x5a87 023976 rtn 
+:      023978 le_att_check_handle_end:
+0x5a88 023979 fetcht 2 ,mem_temp 
+0x5a89 023980 fetch 2 ,mem_le_search_handle_end 
+0x5a8a 023981 isub temp ,null 
+0x5a8b 023982 rtn 
+:      023985 le_att_same_type:
+0x5a8c 023986 fetcht 1 ,mem_le_search_att_type_length 
+0x5a8d 023987 arg mem_le_search_att_type ,rega 
+:      023988 le_att_check_same_common:
+0x5a8e 023989 fetch 1 ,mem_le_cur_uuid_length 
+0x5a8f 023990 copy pdata ,loopcnt 
+0x5a90 023991 isub temp ,null 
+0x5a91 023992 nrtn zero 
+0x5a92 023993 arg mem_le_cur_uuid ,regb 
+0x5a93 023994 branch string_compare 
+:      023996 le_att_same_uuid:
+0x5a94 023997 fetcht 1 ,mem_le_search_uuid_length 
+0x5a95 023998 arg mem_le_search_uuid ,rega 
+0x5a96 023999 branch le_att_check_same_common 
+:      024002 le_store_att_record:
+0x5a97 024003 fetch 1 ,mem_le_curr_att_len 
+0x5a98 024004 store 1 ,mem_tmp_buffer 
+0x5a99 024005 copy pdata ,loopcnt 
+0x5a9a 024006 call get_contr 
+0x5a9b 024007 branch memcpy_fast 
+:      024010 le_write_att_record:
+0x5a9c 024011 call get_contw 
+0x5a9d 024012 fetch 2 ,mem_le_cur_handle_start 
+0x5a9e 024013 istore 2 ,contw 
+0x5a9f 024014 fetch 2 ,mem_le_cur_handle_end 
+0x5aa0 024015 istore 2 ,contw 
+:      024016 le_write_att_record_common:
+0x5aa1 024017 fetch 1 ,mem_tmp_buffer 
+0x5aa2 024018 copy pdata ,loopcnt 
+0x5aa3 024019 call memcpy_fast 
+0x5aa4 024020 branch store_contw 
+:      024024 le_send_auto_len_by_mem:
+0x5aa5 024025 call get_contw 
+0x5aa6 024026 call le_fifo_get_last_att_ptr 
+0x5aa7 024027 copy contw ,pdata 
+0x5aa8 024028 isub contr ,rega 
+0x5aa9 024029 call le_fifo_get_last_l2cap_ptr 
+0x5aaa 024030 copy rega ,pdata 
+0x5aab 024031 istore 2 ,contr 
+0x5aac 024032 increase 4 ,rega 
+0x5aad 024033 call le_fifo_get_last_tx_ptr 
+0x5aae 024034 copy rega ,pdata 
+0x5aaf 024035 istore 1 ,contr 
+0x5ab0 024036 rtn 
+:      024039 le_get_search_handle_start_end_common:
+0x5ab1 024040 rshift8 pdata ,pdata 
+0x5ab2 024041 store 2 ,mem_le_search_handle_start 
+0x5ab3 024042 ifetch 2 ,contr 
+0x5ab4 024043 store 2 ,mem_le_search_handle_end 
+0x5ab5 024044 rtn 
+:      024049 le_parse_signaling:
+0x5ab6 024050 ifetch 1 ,contr 
+0x5ab7 024051 ifetcht 1 ,contr 
+0x5ab8 024052 ifetcht 2 ,contr 
+0x5ab9 024053 beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
+0x5aba 024054 rtn 
+:      024055 le_l2cap_parse_conn_parameter_update_rsp:
+0x5abb 024056 ifetch 2 ,contr 
+0x5abc 024057 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x5abd 024058 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
+0x5abe 024059 branch ui_ipc_send_event 
+:      024065 le_l2cap_tx_update_req:
+0x5abf 024066 arg 0x0c ,rega 
+0x5ac0 024067 arg l2cap_connection_parameter_update_request ,regc 
+0x5ac1 024068 call le_fifo_malloc_tx_l2cap_signaling 
+0x5ac2 024069 setarg 0x08 
+0x5ac3 024070 istore 2 ,contw 
+0x5ac4 024071 fetch 8 ,mem_le_interval_min 
+0x5ac5 024072 istore 8 ,contw 
+0x5ac6 024073 rtn 
+:      024077 le_fifo_malloc_tx_l2cap_signaling:
+0x5ac7 024078 call le_l2cap_update_signaling_identifier 
+0x5ac8 024079 arg le_l2cap_cid_signal ,regb 
+0x5ac9 024080 call le_fifo_malloc_tx_l2cap 
+0x5aca 024081 copy regc ,pdata 
+0x5acb 024082 istore 1 ,contw 
+0x5acc 024083 fetch 1 ,mem_le_signaling_identifier 
+0x5acd 024084 istore 1 ,contw 
+0x5ace 024085 rtn 
+:      024088 le_l2cap_update_signaling_identifier:
+0x5acf 024089 fetch 1 ,mem_le_signaling_identifier 
+0x5ad0 024091 pincrease 1 
+0x5ad1 024092 store 1 ,mem_le_signaling_identifier 
+0x5ad2 024093 rtnne 0 
+:      024095 le_l2cap_reset_signaling_identifier:
+0x5ad3 024096 jam 1 ,mem_le_signaling_identifier 
+0x5ad4 024097 rtn 
+:      024102 le_pairing_mode_init:
+0x5ad5 024103 fetch 1 ,mem_le_pairing_mode 
+0x5ad6 024104 beq le_pairing_mode_none ,le_set_no_pairing 
+0x5ad7 024105 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
+0x5ad8 024106 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
+0x5ad9 024107 beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
+0x5ada 024108 beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
+0x5adb 024109 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
+0x5adc 024110 rtn 
+:      024112 le_set_pairing_mode_secure_justwork:
+0x5add 024113 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ade 024114 branch le_set_noinputnooutput 
+:      024115 le_set_pairing_mode_secure_numeric:
+0x5adf 024116 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae0 024117 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x5ae1 024118 rtn 
+:      024119 le_set_pairing_mode_secure_passkey:
+0x5ae2 024120 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae3 024121 branch le_set_displayonly 
+:      024122 le_set_no_pairing:
+0x5ae4 024123 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      024124 le_set_noinputnooutput:
+0x5ae5 024125 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x5ae6 024126 rtn 
+:      024127 le_set_pairing_mode_lagacy_just_work:
+0x5ae7 024128 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x5ae8 024129 branch le_set_noinputnooutput 
+:      024130 le_set_pairing_mode_lagacy_passkey:
+0x5ae9 024131 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      024132 le_set_displayonly:
+0x5aea 024133 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x5aeb 024134 rtn 
+:      024137 le_secure_connection_enable:
+0x5aec 024138 fetch 1 ,mem_le_pres_auth 
+0x5aed 024139 set1 le_auth_secure_connection_pairing_bit ,pdata 
+0x5aee 024140 store 1 ,mem_le_pres_auth 
+0x5aef 024141 rtn 
+:      024142 le_secure_connection_disable:
+0x5af0 024143 fetch 1 ,mem_le_pres_auth 
+0x5af1 024144 set0 le_auth_secure_connection_pairing_bit ,pdata 
+0x5af2 024145 store 1 ,mem_le_pres_auth 
+0x5af3 024146 rtn 
+:      024148 le_parse_smp:
+0x5af4 024149 ifetch 1 ,contr 
+0x5af5 024150 beq smp_pairing_request ,le_parse_smp_pairing_request 
+0x5af6 024152 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
+0x5af7 024153 beq smp_pairing_random ,le_parse_smp_pairing_random 
+0x5af8 024154 beq smp_pairing_failed ,le_parse_smp_pairing_failed 
+0x5af9 024155 beq smp_encryption_information ,le_parse_smp_encryption_information 
+0x5afa 024156 beq smp_master_identification ,le_parse_smp_master_identification 
+0x5afb 024157 beq smp_identity_information ,le_parse_smp_identity_information 
+0x5afc 024158 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
+0x5afd 024159 beq smp_signing_information ,le_parse_smp_signing_information 
+0x5afe 024160 beq smp_security_request ,le_parse_smp_security_request 
+0x5aff 024161 beq smp_pairing_public_key ,le_parse_smp_public_key 
+0x5b00 024162 beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
+0x5b01 024163 rtn 
+:      024167 le_send_smp_security_request:
+0x5b02 024168 force 2 ,rega 
+0x5b03 024169 call le_fifo_malloc_tx_l2cap_smp 
+0x5b04 024170 setarg smp_security_request 
+0x5b05 024171 istore 1 ,contw 
+0x5b06 024172 fetch 1 ,mem_le_pres_auth 
+0x5b07 024173 istore 1 ,contw 
+0x5b08 024174 rtn 
+:      024176 le_parse_smp_pairing_request:
+0x5b09 024177 store 1 ,mem_le_preq 
+0x5b0a 024178 ifetch 6 ,contr 
+0x5b0b 024179 istore 6 ,contw 
+0x5b0c 024180 fetch 1 ,mem_le_pairing_mode 
+0x5b0d 024181 beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
+0x5b0e 024182 call le_send_smp_pairing_response 
+0x5b0f 024183 call le_check_master_support_secure_connect 
+0x5b10 024184 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
+0x5b11 024185 fetch 1 ,mem_le_preq_iocap 
+0x5b12 024186 beq flag_iocap_displayonly ,le_set_tk_0 
+0x5b13 024187 beq flag_iocap_displayyesno ,le_set_tk_0 
+0x5b14 024188 beq flag_iocap_noinputnooutput ,le_set_tk_0 
+0x5b15 024189 fetch 1 ,mem_le_pairing_mode 
+0x5b16 024190 beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
+0x5b17 024191 rtneq le_pairing_mode_secure_connect_passkey 
+:      024192 le_set_tk_0:
+0x5b18 024193 arg 0 ,pdata 
+0x5b19 024194 store 4 ,mem_le_tk 
+0x5b1a 024195 rtn 
+:      024197 le_parse_smp_pairing_req_passkey:
+0x5b1b 024198 fetch 1 ,mem_le_configuration 
+0x5b1c 024199 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
+:      024200 le_genernate_tk:
+0x5b1d 024201 arg mem_le_tk ,rega 
+0x5b1e 024202 copy rega ,contw 
+0x5b1f 024203 arg 3 ,loopcnt 
+0x5b20 024204 call generate_random_loop 
+0x5b21 024205 fetch 2 ,mem_le_tk + 2 
+0x5b22 024206 and_into 0x7 ,pdata 
+0x5b23 024207 store 2 ,mem_le_tk + 2 
+:      024208 le_parse_smp_pairing_req_fixed_passkey:
+0x5b24 024209 jam bt_evt_le_tk_generate ,mem_fifo_temp 
+0x5b25 024210 branch ui_ipc_send_event 
+:      024212 le_check_master_support_secure_connect:
+0x5b26 024213 fetch 1 ,mem_le_preq_auth 
+0x5b27 024214 rtnbit1 le_auth_secure_connection_pairing_bit 
+0x5b28 024215 fetch 1 ,mem_le_pairing_mode 
+0x5b29 024216 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5b2a 024217 branch app_ble_disconnect 
+:      024219 le_send_smp_pairing_response:
+0x5b2b 024220 force 7 ,rega 
+0x5b2c 024221 call le_fifo_malloc_tx_l2cap_smp 
+0x5b2d 024222 fetch 7 ,mem_le_pres 
+0x5b2e 024223 istore 7 ,contw 
+0x5b2f 024224 rtn 
+:      024227 le_parse_smp_pairing_confirm:
+0x5b30 024228 copy contr ,rega 
+0x5b31 024229 fetch 1 ,mem_le_pairing_mode 
+0x5b32 024230 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
+0x5b33 024231 copy rega ,contr 
+0x5b34 024232 arg mem_le_rconfirm ,contw 
+0x5b35 024233 call memcpy16 
+0x5b36 024234 branch le_send_smp_pairing_confirm 
+:      024235 le_parse_smp_pairing_confirm_secure_passkey:
+0x5b37 024236 copy rega ,contr 
+0x5b38 024237 arg mem_le_rconfirm ,contw 
+0x5b39 024238 call memcpy16 
+0x5b3a 024239 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5b3b 024240 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
+0x5b3c 024241 rtn 
+:      024244 le_send_smp_pairing_confirm:
+0x5b3d 024245 fetch 1 ,mem_le_pairing_mode 
+0x5b3e 024246 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
+0x5b3f 024247 call generate_confirm 
+0x5b40 024248 force 17 ,rega 
+0x5b41 024249 call le_fifo_malloc_tx_l2cap_smp 
+0x5b42 024250 setarg smp_pairing_confirm 
+0x5b43 024251 istore 1 ,contw 
+0x5b44 024252 branch store_aes_result 
+:      024255 le_send_smp_pairing_confirm_sc:
+0x5b45 024256 arg mem_le_srand ,contw 
+0x5b46 024257 call generate_random 
+0x5b47 024258 call function_f4_cb 
+0x5b48 024259 force 17 ,rega 
+0x5b49 024260 call le_fifo_malloc_tx_l2cap_smp 
+0x5b4a 024261 setarg smp_pairing_confirm 
+0x5b4b 024262 istore 1 ,contw 
+0x5b4c 024263 branch load_inverse_result 
+:      024267 le_parse_smp_pairing_random:
+0x5b4d 024268 copy contr ,rega 
+0x5b4e 024269 fetch 1 ,mem_le_pairing_mode 
+0x5b4f 024270 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
+0x5b50 024271 copy rega ,contr 
+0x5b51 024272 call authenticate_rconfirm 
+0x5b52 024273 branch le_parse_smp_pairing_random_success ,zero 
+:      024274 le_send_pairing_confirm_value_failed:
+0x5b53 024275 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
+:      024276 le_send_pairing_failed:
+0x5b54 024277 force 2 ,rega 
+0x5b55 024278 call le_fifo_malloc_tx_l2cap_smp 
+0x5b56 024279 setarg smp_pairing_failed 
+0x5b57 024280 istore 1 ,contw 
+0x5b58 024281 fetch 1 ,mem_le_ll_pairing_fail_reason 
+0x5b59 024282 istore 1 ,contw 
+:      024283 le_parse_smp_pairing_failed:
+0x5b5a 024284 force smp_pairing_timer ,queue 
+0x5b5b 024285 call timer_stop 
+0x5b5c 024286 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5b5d 024287 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
+0x5b5e 024288 branch ui_ipc_send_event 
+:      024290 le_smp_pairing_fail_reason_not_support_pairing:
+0x5b5f 024291 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
+0x5b60 024292 branch le_send_pairing_failed 
+:      024295 le_parse_smp_pairing_random_sc:
+0x5b61 024296 arg mem_le_mrand ,contw 
+0x5b62 024297 copy rega ,contr 
+0x5b63 024298 call memcpy16 
+0x5b64 024299 fetch 1 ,mem_le_pairing_mode 
+0x5b65 024300 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
+0x5b66 024301 call function_g2 
+0x5b67 024304 call le_send_smp_pairing_random 
+0x5b68 024305 fetch 1 ,mem_le_pairing_mode 
+0x5b69 024306 rtnne le_pairing_mode_secure_connect_numeric 
+0x5b6a 024307 jam bt_evt_le_gkey_generate ,mem_fifo_temp 
+0x5b6b 024308 branch ui_ipc_send_event 
+:      024310 le_parse_smp_pairing_random_sc_passkey:
+0x5b6c 024311 call function_f4_ca 
+0x5b6d 024312 arg mem_aes_cmac_temp ,contw 
+0x5b6e 024313 call load_inverse_result 
+0x5b6f 024314 arg mem_aes_cmac_temp ,rega 
+0x5b70 024315 arg mem_le_rconfirm ,regb 
+0x5b71 024316 arg 16 ,loopcnt 
+0x5b72 024317 call string_compare 
+0x5b73 024318 nbranch le_send_pairing_confirm_value_failed ,zero 
+0x5b74 024319 branch le_send_smp_pairing_random 
+:      024321 le_parse_smp_pairing_random_success:
+0x5b75 024322 call generate_stk 
+0x5b76 024323 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5b77 024324 call ui_ipc_send_event 
+0x5b78 024325 jam 1 ,mem_ltk_exists 
+0x5b79 024326 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+:      024328 le_send_smp_pairing_random:
+0x5b7a 024329 force 17 ,rega 
+0x5b7b 024330 call le_fifo_malloc_tx_l2cap_smp 
+0x5b7c 024331 setarg smp_pairing_random 
+0x5b7d 024332 istore 1 ,contw 
+0x5b7e 024333 arg mem_le_srand ,contr 
+0x5b7f 024334 branch memcpy16 
+:      024336 le_parse_smp_encryption_information:
+0x5b80 024337 arg mem_le_peer_ltk ,contw 
+0x5b81 024338 branch memcpy16 
+:      024340 le_send_smp_encryption_information:
+0x5b82 024341 force 17 ,rega 
+0x5b83 024342 call le_fifo_malloc_tx_l2cap_smp 
+0x5b84 024343 setarg smp_encryption_information 
+0x5b85 024344 istore 1 ,contw 
+0x5b86 024345 fetch 1 ,mem_le_configuration 
+0x5b87 024346 bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
+0x5b88 024347 arg mem_le_ltk ,contr 
+0x5b89 024348 branch memcpy16 
+:      024350 le_send_fixed_ltk:
+0x5b8a 024351 arg mem_le_fixed_ltk ,contr 
+0x5b8b 024352 branch memcpy16 
+:      024355 le_send_smp_master_identification:
+0x5b8c 024356 arg mem_le_ediv ,contw 
+0x5b8d 024357 force 10 ,loopcnt 
+0x5b8e 024358 call generate_random_loop 
+0x5b8f 024359 force 11 ,rega 
+0x5b90 024360 call le_fifo_malloc_tx_l2cap_smp 
+0x5b91 024361 setarg smp_master_identification 
+0x5b92 024362 istore 1 ,contw 
+0x5b93 024363 fetch 2 ,mem_le_ediv 
+0x5b94 024364 istore 2 ,contw 
+0x5b95 024365 fetch 8 ,mem_le_rand 
+0x5b96 024366 istore 8 ,contw 
+0x5b97 024367 rtn 
+:      024369 le_send_smp_identity_information:
+0x5b98 024370 force 17 ,rega 
+0x5b99 024371 call le_fifo_malloc_tx_l2cap_smp 
+0x5b9a 024372 setarg smp_identity_information 
+0x5b9b 024373 istore 1 ,contw 
+0x5b9c 024374 setarg 0 
+0x5b9d 024375 istore 8 ,contw 
+0x5b9e 024376 istore 8 ,contw 
+0x5b9f 024377 rtn 
+:      024380 le_send_smp_identity_address_information:
+0x5ba0 024381 force 8 ,rega 
+0x5ba1 024382 call le_fifo_malloc_tx_l2cap_smp 
+0x5ba2 024383 setarg smp_identity_address_information 
+0x5ba3 024384 istore 1 ,contw 
+0x5ba4 024385 fetch 1 ,mem_le_conn_own_addr_type 
+0x5ba5 024386 istore 1 ,contw 
+0x5ba6 024387 fetch 6 ,mem_le_lap 
+0x5ba7 024388 istore 6 ,contw 
+0x5ba8 024389 rtn 
+:      024392 le_send_pairing_fail_unspecified_reason:
+0x5ba9 024393 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
+0x5baa 024394 branch le_send_pairing_failed 
+:      024396 le_check_init_key_distribution:
+0x5bab 024397 fetch 1 ,mem_le_pres_init_key_distribution 
+0x5bac 024398 fetcht 1 ,mem_le_pres_init_key_distribution 
+0x5bad 024399 iand temp ,pdata 
+0x5bae 024400 rtn 
+:      024402 le_parse_smp_identity_information:
+0x5baf 024403 arg mem_le_irk ,contw 
+0x5bb0 024404 call memcpy16 
+0x5bb1 024405 call le_check_init_key_distribution 
+0x5bb2 024406 isolate0 le_initator_irk_bit ,pdata 
+0x5bb3 024407 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bb4 024408 fetch 1 ,mem_device_option 
+0x5bb5 024409 rtnne dvc_op_module 
+0x5bb6 024410 call le_check_master_addr_type 
+0x5bb7 024411 nrtn user 
+0x5bb8 024412 branch app_ble_store_reconn_info 
+:      024415 le_check_master_addr_type:
+0x5bb9 024416 call disable_user 
+0x5bba 024417 fetch 1 ,mem_le_conn_peer_addr_type 
+0x5bbb 024418 rtneq master_public_addr 
+0x5bbc 024419 fetch 1 ,mem_le_plap + 5 
+0x5bbd 024420 compare 0xc0 ,pdata ,0xc0 
+0x5bbe 024421 rtn true 
+0x5bbf 024422 branch enable_user 
+:      024424 le_parse_smp_identity_address_information:
+0x5bc0 024425 call le_check_init_key_distribution 
+0x5bc1 024426 isolate0 le_initator_irk_bit ,pdata 
+0x5bc2 024427 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bc3 024428 rtn 
+:      024430 le_parse_smp_master_identification:
+:      024431 le_parse_smp_signing_information:
+:      024432 le_parse_smp_security_request:
+0x5bc4 024433 rtn 
+:      024435 le_parse_smp_public_key:
+0x5bc5 024436 arg mem_le_pubkey_remote_x_256 ,contw 
+0x5bc6 024437 call memcpy64 
+0x5bc7 024438 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bc8 024439 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
+0x5bc9 024440 rtn 
+:      024442 le_parse_smp_dhkey_check:
+0x5bca 024443 arg mem_sp_confirm_remote ,contw 
+0x5bcb 024444 call memcpy16 
+0x5bcc 024445 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
+0x5bcd 024446 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bce 024447 rtn 
+:      024449 le_send_smp_pairing_public_key:
+0x5bcf 024450 force 65 ,rega 
+0x5bd0 024451 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd1 024452 setarg smp_pairing_public_key 
+0x5bd2 024453 istore 1 ,contw 
+0x5bd3 024454 arg mem_le_pubkey_local_x_256 ,contr 
+0x5bd4 024455 branch memcpy64 
+:      024457 le_send_smp_pairing_dhkey_check:
+0x5bd5 024458 call function_f6_eb 
+0x5bd6 024459 force 17 ,rega 
+0x5bd7 024460 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd8 024461 setarg smp_pairing_dhkey_check 
+0x5bd9 024462 istore 1 ,contw 
+0x5bda 024463 branch load_inverse_result 
+:      024466 le_check_paring_time:
+0x5bdb 024467 fetch 1 ,mem_le_pairing_state 
+0x5bdc 024468 rtneq flag_le_pairing_end 
+0x5bdd 024469 arg flag_le_pairing_rcv_pairing_req ,temp 
+0x5bde 024470 isub temp ,null 
+0x5bdf 024471 nrtn positive 
+0x5be0 024472 arg smp_pairing_timer ,queue 
+0x5be1 024473 call timer_check 
+0x5be2 024474 nrtn blank 
+0x5be3 024475 branch le_send_pairing_fail_unspecified_reason 
+:      024477 le_pairing_sm:
+0x5be4 024478 bpatchx patch2f_0 ,mem_patch2f 
+0x5be5 024479 fetch 1 ,mem_le_pairing_state 
+0x5be6 024480 beq flag_le_pairing_null ,le_pairing_sm_null 
+0x5be7 024481 beq flag_le_pairing_start ,le_pairing_sm_start 
+0x5be8 024482 beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
+0x5be9 024483 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
+0x5bea 024484 beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
+0x5beb 024485 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
+0x5bec 024486 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
+0x5bed 024487 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
+0x5bee 024488 rtn 
+:      024490 le_pairing_sm_null:
+:      024491 le_pairing_sm_send_sec_req:
+0x5bef 024492 fetch 1 ,mem_le_enc_state 
+0x5bf0 024493 rtnne flag_le_send_start_enc_rsp 
+0x5bf1 024494 jam flag_le_enc_end ,mem_le_enc_state 
+0x5bf2 024495 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5bf3 024496 jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
+0x5bf4 024497 branch ui_ipc_send_event 
+:      024500 le_pairing_sm_start:
+0x5bf5 024501 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
+0x5bf6 024502 branch le_send_smp_security_request 
+:      024504 le_pairing_sm_rcv_pairing_req:
+0x5bf7 024505 jam flag_le_pairing_auth ,mem_le_pairing_state 
+0x5bf8 024506 setarg timer_smp_pairing_timeout 
+0x5bf9 024507 arg smp_pairing_timer ,queue 
+0x5bfa 024508 branch timer_init 
+:      024510 le_pairing_sm_after_auth:
+0x5bfb 024511 fetch 1 ,mem_le_enc_state 
+0x5bfc 024512 beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
+0x5bfd 024513 rtn 
+:      024515 le_pairing_sm_after_auth_start_enc:
+0x5bfe 024516 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
+0x5bff 024517 jam bt_evt_le_enc_info ,mem_fifo_temp 
+0x5c00 024518 call ui_ipc_send_event 
+0x5c01 024519 call le_send_smp_encryption_information 
+0x5c02 024520 fetch 1 ,mem_device_option 
+0x5c03 024521 rtnne dvc_op_module 
+0x5c04 024522 call le_check_master_addr_type 
+0x5c05 024523 rtn user 
+0x5c06 024524 branch app_ble_store_reconn_info 
+:      024527 le_pairng_sm_send_enc_information:
+0x5c07 024528 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
+0x5c08 024529 branch le_send_smp_master_identification 
+:      024531 le_pairng_sm_send_master_indentification:
+0x5c09 024532 fetch 1 ,mem_le_preq_resp_key_distribution 
+0x5c0a 024533 fetcht 1 ,mem_le_pres_resp_key_distribution 
+0x5c0b 024534 iand temp ,pdata 
+0x5c0c 024535 isolate0 le_initator_irk_bit ,pdata 
+0x5c0d 024536 branch le_parse_start_enc_rsp_after_auth_end ,true 
+0x5c0e 024537 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
+0x5c0f 024538 branch le_send_smp_identity_information 
+:      024540 le_pairng_sm_send_indentity_information:
+0x5c10 024541 call le_send_smp_identity_address_information 
+0x5c11 024542 branch le_parse_start_enc_rsp_after_auth_end 
+:      024545 le_parse_start_enc_rsp_after_auth_end:
+0x5c12 024546 force smp_pairing_timer ,queue 
+0x5c13 024547 call timer_stop 
+0x5c14 024548 jam flag_le_enc_end ,mem_le_enc_state 
+0x5c15 024549 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5c16 024550 jam bt_evt_le_pairing_complete ,mem_fifo_temp 
+0x5c17 024551 branch ui_ipc_send_event 
+:      024555 le_secure_connect_sm:
+0x5c18 024556 bpatchx patch2f_1 ,mem_patch2f 
+0x5c19 024557 fetch 1 ,mem_le_pairing_mode 
+0x5c1a 024558 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5c1b 024559 fetch 1 ,mem_le_secure_connect_flag 
+0x5c1c 024560 rtnne le_sp_flag_commit_256 
+0x5c1d 024561 jam sp_flag_standby ,mem_le_secure_connect_flag 
+0x5c1e 024562 fetch 1 ,mem_le_secure_connect_state 
+0x5c1f 024563 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
+0x5c20 024564 beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
+0x5c21 024565 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
+0x5c22 024566 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
+0x5c23 024567 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
+0x5c24 024568 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
+0x5c25 024569 rtn 
+:      024572 le_sc_sm_passkey_wait_confirm:
+0x5c26 024573 fetch 1 ,mem_authentication_passkey_times 
+0x5c27 024574 copy pdata ,queue 
+0x5c28 024575 increase 1 ,pdata 
+0x5c29 024576 store 1 ,mem_authentication_passkey_times 
+0x5c2a 024577 fetch 4 ,mem_le_tk 
+0x5c2b 024578 qisolate1 pdata 
+0x5c2c 024579 setarg 0x80 
+0x5c2d 024580 setflag true ,0 ,pdata 
+0x5c2e 024581 store 1 ,mem_passkey_1bit 
+0x5c2f 024582 branch le_sc_sm_ready_send_pairing_confirm 
+:      024584 le_sc_sm_wait_confirm_gkey:
+0x5c30 024585 fetch 1 ,mem_le_sc_confirm_gkey_flag 
+0x5c31 024586 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
+0x5c32 024587 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
+0x5c33 024588 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c34 024589 rtn 
+:      024591 le_sc_confirm_gkey_ok:
+0x5c35 024592 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5c36 024593 call ui_ipc_send_event 
+0x5c37 024594 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+0x5c38 024595 branch le_send_smp_pairing_dhkey_check 
+:      024597 le_sc_sm_receive_dhkey:
+0x5c39 024598 fetch 1 ,mem_sp_dhkey_invalid 
+0x5c3a 024599 beq sp_key_valid_256 ,le_dhkey_ready 
+0x5c3b 024600 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c3c 024601 rtn 
+:      024603 le_dhkey_ready:
+0x5c3d 024604 call function_f5 
+0x5c3e 024608 fetch 1 ,mem_le_pairing_mode 
+0x5c3f 024609 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
+0x5c40 024610 call le_set_tk_0 
+:      024611 le_dhkey_ready_common:
+0x5c41 024612 call function_f6_ea 
+0x5c42 024613 arg mem_aes_cmac_temp ,rega 
+0x5c43 024614 arg mem_sp_confirm_remote ,regb 
+0x5c44 024615 arg 16 ,loopcnt 
+0x5c45 024616 call string_compare 
+0x5c46 024617 branch le_dhkey_check_ok ,zero 
+:      024618 le_dhkey_check_fail:
+0x5c47 024619 jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
+0x5c48 024620 branch le_send_pairing_failed 
+:      024623 le_dhkey_check_ok:
+0x5c49 024624 call sp_calc_check_publickey_256 
+0x5c4a 024625 nbranch le_dhkey_check_fail ,zero 
+0x5c4b 024626 jam 1 ,mem_ltk_exists 
+0x5c4c 024627 fetch 1 ,mem_le_pairing_mode 
+0x5c4d 024628 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
+0x5c4e 024629 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
+0x5c4f 024630 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c50 024631 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
+0x5c51 024632 rtn 
+:      024634 le_sc_sm_send_public_key:
+0x5c52 024635 fetch 1 ,mem_le_pairing_mode 
+0x5c53 024636 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
+0x5c54 024637 jam 0 ,mem_passkey_1bit 
+:      024638 le_sc_sm_ready_send_pairing_confirm:
+0x5c55 024639 branch le_send_smp_pairing_confirm 
+:      024641 le_sc_sm_send_public_key_passkey:
+0x5c56 024645 jam 0 ,mem_authentication_passkey_times 
+0x5c57 024646 branch le_parse_smp_pairing_req_passkey 
+:      024649 le_sc_sm_receive_public_key:
+0x5c58 024650 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c59 024651 fetch 1 ,mem_le_sc_local_key_invalid 
+0x5c5a 024652 beq sp_key_valid_256 ,le_public_key_ready 
+0x5c5b 024654 rtn 
+:      024656 le_public_key_ready:
+0x5c5c 024657 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
+0x5c5d 024658 jam sp_key_invalid ,mem_sp_dhkey_invalid 
+0x5c5e 024659 branch sp_dhkey_calc_256 
+:      024661 le_sc_sm_wait_send_public_key:
+0x5c5f 024662 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c60 024663 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
+0x5c61 024664 branch le_send_smp_pairing_public_key 
+:      024668 le_fifo_malloc_tx_l2cap_smp:
+0x5c62 024669 force le_l2cap_cid_smp ,regb 
+0x5c63 024670 branch le_fifo_malloc_tx_l2cap 
+:      024674 le_parse_ll:
+0x5c64 024675 fetch 1 ,mem_le_rxbuf + 2 
+0x5c65 024676 beq ll_connection_update_req ,le_parse_connection_update_req 
+0x5c66 024677 beq ll_channel_map_req ,le_parse_channel_map_req 
+0x5c67 024678 beq ll_terminate_ind ,le_parse_terminate_ind 
+0x5c68 024679 beq ll_enc_req ,le_parse_enc_req 
+0x5c69 024680 beq ll_enc_rsp ,le_parse_enc_rsp 
+0x5c6a 024681 beq ll_start_enc_req ,le_parse_start_enc_req 
+0x5c6b 024682 beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
+0x5c6c 024683 beq ll_unknown_rsp ,le_parse_unknown_rsp 
+0x5c6d 024684 beq ll_feature_req ,le_parse_feature_req 
+0x5c6e 024685 beq ll_feature_rsp ,le_parse_feature_rsp 
+0x5c6f 024686 beq ll_pause_enc_req ,le_parse_pause_enc_req 
+0x5c70 024687 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
+0x5c71 024688 beq ll_version_ind ,le_parse_version_ind 
+0x5c72 024689 beq ll_reject_ind ,le_parse_reject_ind 
+0x5c73 024690 beq ll_ping_req ,le_parse_ping_req 
+0x5c74 024691 beq ll_ping_rsp ,le_parse_ping_rsp 
+0x5c75 024692 arg 2 ,rega 
+0x5c76 024693 arg ll_unknown_rsp ,regb 
+0x5c77 024694 call le_fifo_malloc_tx_ll 
+0x5c78 024695 fetch 1 ,mem_le_rxbuf + 2 
+0x5c79 024696 istore 1 ,contw 
+0x5c7a 024697 rtn 
+:      024700 le_parse_connection_update_req:
+0x5c7b 024701 ifetch 9 ,contr 
+0x5c7c 024702 store 9 ,mem_le_new_param 
+0x5c7d 024703 ifetch 2 ,contr 
+0x5c7e 024704 store 2 ,mem_le_instant 
+0x5c7f 024705 fetch 1 ,mem_le_state 
+0x5c80 024706 set1 lestate_update_param ,pdata 
+0x5c81 024707 store 1 ,mem_le_state 
+0x5c82 024708 rtn 
+:      024710 le_parse_channel_map_req:
+0x5c83 024711 ifetch 5 ,contr 
+0x5c84 024712 store 5 ,mem_le_new_map 
+0x5c85 024713 ifetch 2 ,contr 
+0x5c86 024714 store 2 ,mem_le_instant 
+0x5c87 024715 fetcht 2 ,mem_le_event_count 
+0x5c88 024716 isub temp ,null 
+0x5c89 024717 nbranch le_parse_terminate_ind ,positive 
+0x5c8a 024718 fetch 1 ,mem_le_state 
+0x5c8b 024719 set1 lestate_update_map ,pdata 
+0x5c8c 024720 store 1 ,mem_le_state 
+0x5c8d 024721 rtn 
+:      024724 le_parse_terminate_ind:
+0x5c8e 024725 setarg 20 
+0x5c8f 024726 store 2 ,mem_le_superto 
+0x5c90 024727 store 2 ,mem_le_init_superto 
+0x5c91 024728 rtn 
+:      024730 le_send_terminate_ind_user_terminated:
+0x5c92 024731 arg error_remote_user_terminated_connection ,regc 
+:      024734 le_send_terminate_ind:
+0x5c93 024735 arg 2 ,rega 
+0x5c94 024736 arg ll_terminate_ind ,regb 
+0x5c95 024737 call le_fifo_malloc_tx_ll 
+0x5c96 024738 copy regc ,pdata 
+0x5c97 024739 istore 1 ,contw 
+0x5c98 024740 rtn 
+:      024742 le_parse_feature_req:
+:      024744 le_send_feature_rsp:
+0x5c99 024745 arg 9 ,rega 
+0x5c9a 024746 arg ll_feature_rsp ,regb 
+0x5c9b 024747 call le_fifo_malloc_tx_ll 
+0x5c9c 024748 setarg param_le_features 
+0x5c9d 024749 istore 8 ,contw 
+0x5c9e 024750 rtn 
+:      024753 le_parse_version_ind:
+0x5c9f 024754 rtn master 
+:      024755 le_send_version_ind:
+0x5ca0 024756 arg 6 ,rega 
+0x5ca1 024757 arg ll_version_ind ,regb 
+0x5ca2 024758 call le_fifo_malloc_tx_ll 
+0x5ca3 024759 fetch 5 ,mem_lmp_version 
+0x5ca4 024760 istore 5 ,contw 
+0x5ca5 024761 rtn 
+:      024764 le_parse_ping_req:
+0x5ca6 024765 arg ll_ping_rsp ,regb 
+0x5ca7 024766 branch le_send_ll_one_lenth 
+:      024769 le_send_ll_one_lenth:
+0x5ca8 024770 arg 1 ,rega 
+0x5ca9 024771 branch le_fifo_malloc_tx_ll 
+:      024774 le_parse_enc_req:
+0x5caa 024775 ifetch 8 ,contr 
+0x5cab 024776 store 8 ,mem_le_rand 
+0x5cac 024777 ifetch 2 ,contr 
+0x5cad 024778 store 2 ,mem_le_ediv 
+0x5cae 024779 ifetch 8 ,contr 
+0x5caf 024780 store 8 ,mem_le_skdm 
+0x5cb0 024781 ifetch 4 ,contr 
+0x5cb1 024782 store 4 ,mem_le_ivm 
+0x5cb2 024783 call le_send_enc_rsp 
+0x5cb3 024784 bpatchx patch2f_2 ,mem_patch2f 
+0x5cb4 024785 fetch 1 ,mem_le_pairing_state 
+0x5cb5 024786 beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
+0x5cb6 024787 fetch 1 ,mem_le_configuration 
+0x5cb7 024788 bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
+0x5cb8 024789 fetch 1 ,mem_nv_data_number 
+0x5cb9 024790 ncall load_device_list_mode_4 ,blank 
+0x5cba 024791 fetch 1 ,mem_ltk_exists 
+0x5cbb 024792 beq 0 ,le_ltk_lost 
+:      024793 le_parse_enc_req_after_auth:
+0x5cbc 024794 jam flag_le_rcv_enc_start ,mem_le_enc_state 
+0x5cbd 024795 call le_send_start_enc_req 
+0x5cbe 024796 branch generate_sk 
+:      024798 le_parse_enc_req_fixed_ltk:
+0x5cbf 024799 jam 1 ,mem_ltk_exists 
+0x5cc0 024800 arg mem_le_fixed_ltk ,contr 
+0x5cc1 024801 arg mem_le_ltk ,contw 
+0x5cc2 024802 call memcpy16 
+0x5cc3 024803 branch le_parse_enc_req_after_auth 
+:      024806 le_ltk_lost:
+0x5cc4 024807 bpatchx patch2f_3 ,mem_patch2f 
+0x5cc5 024808 jam flag_le_enc_null ,mem_le_enc_state 
+0x5cc6 024809 jam flag_le_enc_null ,mem_le_pairing_state 
+0x5cc7 024810 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
+0x5cc8 024811 branch ui_ipc_send_event 
+:      024813 le_send_reject_ind:
+0x5cc9 024814 arg 2 ,rega 
+0x5cca 024815 arg ll_reject_ind ,regb 
+0x5ccb 024816 call le_fifo_malloc_tx_ll 
+0x5ccc 024817 setarg le_err_pin_or_key_missing 
+0x5ccd 024818 istore 1 ,contw 
+0x5cce 024819 rtn 
+:      024821 le_send_enc_rsp:
+0x5ccf 024822 arg mem_le_skds ,contw 
+0x5cd0 024823 force 8 ,loopcnt 
+0x5cd1 024824 call generate_random_loop 
+0x5cd2 024825 arg mem_le_ivs ,contw 
+0x5cd3 024826 force 4 ,loopcnt 
+0x5cd4 024827 call generate_random_loop 
+0x5cd5 024828 arg 13 ,rega 
+0x5cd6 024829 arg ll_enc_rsp ,regb 
+0x5cd7 024830 call le_fifo_malloc_tx_ll 
+0x5cd8 024831 fetch 8 ,mem_le_skds 
+0x5cd9 024832 istore 8 ,contw 
+0x5cda 024833 fetch 4 ,mem_le_ivs 
+0x5cdb 024834 istore 4 ,contw 
+0x5cdc 024835 rtn 
+:      024837 le_send_start_enc_req:
+0x5cdd 024838 arg ll_start_enc_req ,regb 
+0x5cde 024839 branch le_send_ll_one_lenth 
+:      024841 le_send_start_enc_rsp:
+0x5cdf 024842 arg ll_start_enc_rsp ,regb 
+0x5ce0 024843 branch le_send_ll_one_lenth 
+:      024846 le_parse_enc_rsp:
+0x5ce1 024847 ifetch 8 ,contr 
+0x5ce2 024848 store 8 ,mem_le_skds 
+0x5ce3 024849 ifetch 4 ,contr 
+0x5ce4 024850 store 4 ,mem_le_ivs 
+0x5ce5 024851 branch generate_sk 
+:      024853 le_parse_start_enc_req:
+0x5ce6 024854 fetch 1 ,mem_le_state 
+0x5ce7 024855 set1 lestate_encryption ,pdata 
+0x5ce8 024856 store 1 ,mem_le_state 
+0x5ce9 024857 rtn 
+:      024859 le_parse_start_enc_rsp:
+0x5cea 024860 rtn master 
+0x5ceb 024861 jam bt_evt_le_start_enc ,mem_fifo_temp 
+0x5cec 024862 call ui_ipc_send_event 
+0x5ced 024863 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
+0x5cee 024864 branch le_send_start_enc_rsp 
+:      024866 le_parse_pause_enc_req:
+0x5cef 024867 jam flag_le_enc_pause ,mem_le_enc_state 
+0x5cf0 024868 call le_send_pause_enc_rsp 
+0x5cf1 024869 jam bt_evt_le_pause_enc ,mem_fifo_temp 
+0x5cf2 024870 branch ui_ipc_send_event 
+:      024872 le_send_pause_enc_rsp:
+0x5cf3 024873 arg ll_pause_enc_rsp ,regb 
+0x5cf4 024874 branch le_send_ll_one_lenth 
+:      024877 le_parse_feature_rsp:
+:      024878 le_parse_unknown_rsp:
+:      024879 le_parse_pause_enc_rsp:
+:      024880 le_parse_reject_ind:
+:      024881 le_parse_ping_rsp:
+0x5cf5 024882 rtn 
+:      024889 init_lmp:
+0x5cf6 024890 rtn wake 
+:      024891 init_lmp_work:
+0x5cf7 024892 bpatchx patch2f_4 ,mem_patch2f 
+0x5cf8 024893 setarg 0 
+0x5cf9 024894 store 1 ,mem_lmp_to_send 
+0x5cfa 024895 store 1 ,mem_conn_sm 
+0x5cfb 024896 store 1 ,mem_lmo_opcode1 
+0x5cfc 024897 store 1 ,mem_lmo_opcode2 
+0x5cfd 024898 store 1 ,mem_esco_addr 
+0x5cfe 024899 store 1 ,mem_auth_enable 
+0x5cff 024900 store 1 ,mem_connection_options 
+0x5d00 024901 store 1 ,mem_pairing_auth 
+0x5d01 024902 jam switch_flag_init ,mem_switch_flag 
+0x5d02 024903 jam 0 ,mem_switch_fail_master_count 
+0x5d03 024904 jam null_encryp ,mem_wait_encryption 
+:      024905 init_lmp_reinit:
+0x5d04 024906 jam 0 ,mem_pairing_auth 
+0x5d05 024907 jam 0 ,mem_sp_localsm 
+0x5d06 024908 jam 0 ,mem_lmp_conn_state 
+:      024910 parse_rx_done:
+0x5d07 024911 rtn 
+:      024913 parse_lmp:
+0x5d08 024914 bpatchx patch2f_5 ,mem_patch2f 
+0x5d09 024915 call setlocalsm_master ,master 
+0x5d0a 024916 ncall setlocalsm_slave ,master 
+0x5d0b 024917 call lmo_fifo_check 
+0x5d0c 024918 nrtn blank 
+0x5d0d 024919 fetch 1 ,mem_state_map 
+0x5d0e 024920 rtnbit0 smap_rxlmp 
+0x5d0f 024921 set0 smap_rxlmp ,pdata 
+0x5d10 024922 set0 mark_rxbuf_inuse ,mark 
+0x5d11 024923 store 1 ,mem_state_map 
+0x5d12 024924 fetch 1 ,mem_rxbuf 
+0x5d13 024925 fetcht 1 ,mem_state_map 
+0x5d14 024926 isolate1 smap_lmptidinit ,pdata 
+0x5d15 024927 setflag true ,smap_lmptid ,temp 
+0x5d16 024928 storet 1 ,mem_state_map 
+0x5d17 024929 and_into 0x2 ,temp 
+0x5d18 024930 storet 1 ,mem_lmo_tid2 
+0x5d19 024931 fetcht 1 ,mem_state_map 
+0x5d1a 024932 rshift pdata ,pdata 
+0x5d1b 024933 store 1 ,mem_lmi_opcode2 
+0x5d1c 024934 bpatchx patch2f_6 ,mem_patch2f 
+0x5d1d 024935 fetch 1 ,mem_lmi_opcode2 
+0x5d1e 024936 beq lmp_escape ,parse_lmp_escape 
+0x5d1f 024937 beq lmp_accepted ,parse_lmp_accepted 
+0x5d20 024938 beq lmp_not_accepted ,parse_lmp_not_accepted 
+0x5d21 024939 beq lmp_set_afh ,parse_lmp_set_afh 
+0x5d22 024940 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
+0x5d23 024941 beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
+0x5d24 024942 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
+0x5d25 024943 beq lmp_auto_rate ,parse_lmp_auto_rate 
+0x5d26 024944 beq lmp_test_control ,parse_lmp_test_control 
+0x5d27 024945 beq lmp_test_activate ,parse_lmp_test_activate 
+0x5d28 024946 beq lmp_setup_complete ,parse_lmp_setup_complete 
+0x5d29 024947 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
+0x5d2a 024948 beq lmp_features_req ,parse_lmp_features_req 
+0x5d2b 024949 beq lmp_host_connection_req ,parse_lmp_conn_req 
+0x5d2c 024950 beq lmp_version_req ,parse_lmp_version_req 
+0x5d2d 024951 beq lmp_version_res ,parse_lmp_version_res 
+0x5d2e 024952 beq lmp_detach ,parse_lmp_detach 
+0x5d2f 024953 beq lmp_max_slot ,parse_lmp_max_slot 
+0x5d30 024954 beq lmp_max_slot_req ,parse_lmp_max_slot_req 
+0x5d31 024955 beq lmp_name_req ,parse_lmp_name_req 
+0x5d32 024956 beq lmp_name_res ,parse_lmp_name_res 
+0x5d33 024957 beq lmp_features_res ,parse_lmp_features_res 
+0x5d34 024958 beq lmp_comb_key ,parse_lmp_comb_key 
+0x5d35 024959 beq lmp_au_rand ,parse_lmp_au_rand 
+0x5d36 024960 beq lmp_in_rand ,parse_lmp_in_rand 
+0x5d37 024961 beq lmp_sres ,parse_lmp_sres 
+0x5d38 024962 beq lmp_incr_power_req ,parse_lmp_incr_power 
+0x5d39 024963 beq lmp_decr_power_req ,parse_lmp_decr_power 
+0x5d3a 024964 beq lmp_max_power ,parse_lmp_max_power 
+0x5d3b 024965 beq lmp_min_power ,parse_lmp_min_power 
+0x5d3c 024966 beq lmp_page_mode_req ,parse_lmp_page_mode_req 
+0x5d3d 024967 beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
+0x5d3e 024968 beq lmp_preferred_rate ,parse_lmp_preferred_rate 
+0x5d3f 024969 beq lmp_slot_offset ,parse_lmp_slot_offset 
+0x5d40 024970 beq lmp_sniff_req ,parse_lmp_sniff_req 
+0x5d41 024971 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
+0x5d42 024972 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
+0x5d43 024973 beq lmp_switch_req ,parse_lmp_switch_req 
+0x5d44 024974 beq lmp_temp_rand ,parse_lmp_temp_rand 
+0x5d45 024975 beq lmp_temp_key ,parse_lmp_temp_key 
+0x5d46 024976 beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
+0x5d47 024977 beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
+0x5d48 024978 beq lmp_unit_key ,parse_lmp_unit_key 
+0x5d49 024979 beq lmp_unsniff_req ,parse_lmp_unsniff_req 
+0x5d4a 024980 beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
+0x5d4b 024981 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
+0x5d4c 024982 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
+0x5d4d 024983 beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
+0x5d4e 024984 beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
+0x5d4f 024985 beq lmp_dhkey_check ,parse_dhkey_check 
+0x5d50 024986 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
+0x5d51 024987 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
+:      024990 reject_unknown_packet:
+0x5d52 024991 jam unknown_lmp_pdu ,mem_lmo_reason2 
+:      024992 reject_lmp_packet:
+0x5d53 024993 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5d54 024994 rtn 
+:      024996 parse_lmp_clkoffset_req:
+0x5d55 024997 jam lmp_clkoffset_res ,mem_lmo_opcode2 
+0x5d56 024998 rtn 
+:      025000 parse_enc_key_size_mask_req:
+0x5d57 025001 jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
+0x5d58 025002 rtn 
+:      025004 parse_lmp_set_afh:
+0x5d59 025005 fetch 4 ,mem_rxbuf + 1 
+0x5d5a 025006 lshift pdata ,pdata 
+0x5d5b 025007 store 4 ,mem_afh_instant 
+0x5d5c 025008 fetch 1 ,mem_rxbuf + 5 
+0x5d5d 025009 store 1 ,mem_afh_new_mod 
+0x5d5e 025010 fetch 5 ,mem_rxbuf + 6 
+0x5d5f 025011 store 5 ,mem_afh_map_new 
+0x5d60 025012 fetch 5 ,mem_rxbuf + 11 
+0x5d61 025013 istore 5 ,contw 
+0x5d62 025014 fetch 1 ,mem_mode 
+0x5d63 025015 set1 afh_change ,pdata 
+0x5d64 025016 store 1 ,mem_mode 
+0x5d65 025017 rtn 
+:      025018 parse_lmp_escape:
+0x5d66 025019 bpatchx patch2f_7 ,mem_patch2f 
+0x5d67 025020 fetch 1 ,mem_rxbuf + 1 
+0x5d68 025021 set1 7 ,pdata 
+0x5d69 025022 store 1 ,mem_lmi_opcode2 
+0x5d6a 025023 beq lmp_ext_accepted ,parse_lmpext_accepted 
+0x5d6b 025024 beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
+0x5d6c 025025 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
+0x5d6d 025026 beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
+0x5d6e 025027 beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
+0x5d6f 025028 beq lmp_ext_features_req ,parse_lmpext_features_req 
+0x5d70 025029 beq lmp_ext_features_res ,parse_lmpext_features_res 
+0x5d71 025030 beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
+0x5d72 025031 beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
+0x5d73 025032 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
+0x5d74 025033 beq lmp_io_cap_req ,parse_lmpext_iocap_req 
+0x5d75 025034 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
+0x5d76 025035 rtneq lmp_ext_features_res 
+:      025038 reject_unknown_ext_packet:
+0x5d77 025039 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d78 025040 jam unknown_lmp_pdu ,mem_lmo_reason2 
+0x5d79 025042 rtn 
+:      025043 parse_lmpext_chn_classification_req:
+0x5d7a 025044 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d7b 025045 jam not_support_chn_classification ,mem_lmo_reason2 
+0x5d7c 025046 rtn 
+:      025048 parse_lmpext_iocap_req:
+0x5d7d 025049 call iocap_lmpext_load 
+0x5d7e 025050 jam lmp_io_cap_res ,mem_lmo_opcode2 
+0x5d7f 025051 rtn 
+:      025053 parse_lmpext_iocap_res:
+0x5d80 025054 call iocap_lmpext_load 
+0x5d81 025055 branch iocap_lmpext_common 
+:      025057 iocap_lmpext_load:
+0x5d82 025058 arg mem_sp_iocap_remote ,contw 
+0x5d83 025059 fetch 3 ,mem_rxbuf + 2 
+0x5d84 025060 istore 3 ,contw 
+0x5d85 025061 rtn 
+:      025063 iocap_lmpext_common:
+0x5d86 025064 branch master_set_mem_master_sp_flag ,true 
+0x5d87 025065 rtn 
+:      025066 parse_lmpext_accepted:
+0x5d88 025067 fetch 1 ,mem_rxbuf + 3 
+0x5d89 025068 set1 7 ,pdata 
+0x5d8a 025069 store 1 ,mem_lmi_accepted_opcode 
+0x5d8b 025070 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
+0x5d8c 025071 rtn 
+:      025074 parse_lmpext_not_accepted:
+0x5d8d 025075 fetch 1 ,mem_rxbuf + 3 
+0x5d8e 025076 set1 7 ,pdata 
+0x5d8f 025077 store 1 ,mem_lmi_accepted_opcode 
+0x5d90 025078 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
+0x5d91 025079 rtn 
+:      025081 parse_lmpext_accepted_ptt:
+0x5d92 025082 fetch 1 ,mem_ptt 
+0x5d93 025083 fetcht 1 ,mem_state_map 
+0x5d94 025084 nsetflag blank ,smap_edr ,temp 
+0x5d95 025085 storet 1 ,mem_state_map 
+:      025086 parse_lmpext_not_accepted_ptt:
+0x5d96 025087 fetch 1 ,mem_state 
+0x5d97 025088 rtnbit0 state_init_seq 
+0x5d98 025089 set0 state_init_seq ,pdata 
+0x5d99 025090 store 1 ,mem_state 
+0x5d9a 025091 fetch 1 ,mem_auth_enable 
+0x5d9b 025092 nrtn blank 
+0x5d9c 025093 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5d9d 025094 rtn 
+:      025096 parse_lmpext_pause_encrypt:
+0x5d9e 025097 nbranch parse_lmpext_pause_encrypt_slave ,master 
+0x5d9f 025098 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5da0 025099 branch tid_reply 
+:      025101 parse_lmpext_pause_encrypt_slave:
+0x5da1 025102 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
+0x5da2 025103 rtn 
+:      025105 parse_lmpext_resume_encrypt:
+0x5da3 025108 call tid_reply 
+0x5da4 025109 branch lmp_start_encryption 
+:      025111 parse_lmpext_features_req:
+0x5da5 025112 jam lmp_ext_features_res ,mem_lmo_opcode2 
+0x5da6 025113 rtn 
+:      025115 parse_lmpext_features_res:
+0x5da7 025116 fetcht 1 ,mem_rxbuf + 4 
+0x5da8 025117 and temp ,0x1 ,temp 
+0x5da9 025118 storet 1 ,mem_remote_sppcap 
+0x5daa 025119 fetch 1 ,mem_hci_cmd 
+0x5dab 025120 bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
+0x5dac 025121 jam 0 ,mem_hci_cmd 
+:      025122 parse_lmpext_features_res_not_hci:
+0x5dad 025123 fetch 1 ,mem_conn_sm 
+0x5dae 025124 rtnne conn_sm_wait_features_ext 
+0x5daf 025125 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5db0 025126 branch process_conn_sm 
+:      025128 parse_lmp_accepted:
+0x5db1 025129 bpatchx patch30_0 ,mem_patch30 
+0x5db2 025130 fetch 1 ,mem_rxbuf + 1 
+0x5db3 025131 store 1 ,mem_lmi_accepted_opcode 
+0x5db4 025132 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
+0x5db5 025133 beq lmp_in_rand ,parse_lmp_accepted_inrand 
+0x5db6 025134 beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
+0x5db7 025135 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
+0x5db8 025136 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
+0x5db9 025137 beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
+0x5dba 025138 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
+0x5dbb 025139 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
+0x5dbc 025140 beq lmp_switch_req ,parse_lmp_accepted_switch 
+0x5dbd 025142 beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
+0x5dbe 025143 beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
+0x5dbf 025144 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
+0x5dc0 025145 beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
+0x5dc1 025146 rtn 
+:      025148 parse_lmp_not_accepted:
+0x5dc2 025149 bpatchx patch30_1 ,mem_patch30 
+0x5dc3 025150 fetch 1 ,mem_rxbuf + 1 
+0x5dc4 025151 store 1 ,mem_lmi_accepted_opcode 
+0x5dc5 025152 beq lmp_name_req ,parse_lmp_not_accepted_name_req 
+0x5dc6 025153 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
+0x5dc7 025154 beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
+0x5dc8 025155 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
+0x5dc9 025156 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
+0x5dca 025158 beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
+0x5dcb 025159 beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
+0x5dcc 025160 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
+0x5dcd 025161 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
+0x5dce 025162 rtn 
+:      025164 parse_lmp_accepted_switch:
+0x5dcf 025165 jam bt_evt_switch_accept ,mem_fifo_temp 
+0x5dd0 025166 call ui_ipc_send_event 
+0x5dd1 025167 branch role_switch_prepare0 
+:      025168 parse_lmp_not_accepted_switch:
+0x5dd2 025169 jam bt_evt_switch_not_accept ,mem_fifo_temp 
+0x5dd3 025170 call ui_ipc_send_event 
+0x5dd4 025171 jam switch_flag_not_accept ,mem_switch_flag 
+0x5dd5 025172 setarg timer_switch_waite 
+0x5dd6 025173 arg switch_wait_timer ,queue 
+0x5dd7 025174 branch timer_init 
+:      025177 parse_lmp_accepted_hostconn:
+0x5dd8 025180 fetch 1 ,mem_lmp_conn_state 
+0x5dd9 025181 set1 received_conn_req ,pdata 
+0x5dda 025182 store 1 ,mem_lmp_conn_state 
+0x5ddb 025183 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x5ddc 025184 call ui_ipc_send_event 
+0x5ddd 025185 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+:      025187 parse_lmp_accepted_hostconn_ctn:
+0x5dde 025189 fetch 1 ,mem_conn_sm 
+0x5ddf 025190 bne conn_sm_wait_conn_accept ,parse_rx_done 
+0x5de0 025193 jam conn_sm_auth_pair ,mem_conn_sm 
+0x5de1 025194 rtn 
+:      025202 parse_lmp_not_accepted_hostconn:
+0x5de2 025203 jam acl_connection_already_exists ,mem_disconn_reason_send 
+0x5de3 025204 jam lmp_detach ,mem_lmo_opcode2 
+0x5de4 025206 jam conn_sm_standby ,mem_conn_sm 
+0x5de5 025208 branch parse_rx_done ,true 
+0x5de6 025209 rtn 
+:      025211 parse_lmp_accepted_inrand:
+0x5de7 025212 fetch 1 ,mem_link_key_exists 
+0x5de8 025213 nrtn blank 
+0x5de9 025214 call clear_linkkey 
+0x5dea 025215 call lmp_generate_key 
+0x5deb 025216 rtn master 
+0x5dec 025217 set1 mark_slave_in_rand_accepted ,mark 
+0x5ded 025218 rtn 
+:      025220 parse_lmp_accepted_enc_mode:
+0x5dee 025221 nrtn master 
+0x5def 025222 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x5df0 025223 fetch 1 ,mem_state_map 
+0x5df1 025224 rtnbit0 smap_encryption 
+0x5df2 025225 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5df3 025226 rtn 
+:      025228 parse_lmp_accepted_enc_keysize:
+0x5df4 025229 branch lmp_start_encryption 
+:      025231 parse_lmp_accepted_start_enc:
+0x5df5 025232 call send_create_conn_start_l2cap_timer_sm 
+0x5df6 025233 fetch 1 ,mem_state 
+0x5df7 025234 rtnbit1 state_conn_comp 
+0x5df8 025235 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5df9 025236 fetch 1 ,mem_conn_sm 
+0x5dfa 025237 rtnne conn_sm_encrypt_wait 
+0x5dfb 025238 jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
+0x5dfc 025239 rtn 
+:      025241 parse_lmp_accepted_stop_enc:
+0x5dfd 025249 rtn 
+:      025251 parse_lmp_not_accepted_aurand:
+:      025252 parse_lmp_not_accepted_aurand_send_detach:
+0x5dfe 025253 jam lmp_detach ,mem_lmo_opcode2 
+0x5dff 025254 jam other_end_terminated ,mem_disconn_reason_send 
+0x5e00 025255 rtn 
+:      025257 parse_lmp_not_accepted_inrand:
+0x5e01 025258 fetch 1 ,mem_rxbuf + 2 
+0x5e02 025259 beq key_missing ,parse_lmp_inrand_key_missing 
+0x5e03 025260 rtnne pairing_not_allowed 
+0x5e04 025261 jam pairing_not_allowed ,mem_disconn_reason_send 
+0x5e05 025262 jam lmp_detach ,mem_lmo_opcode2 
+0x5e06 025263 rtn 
+:      025264 parse_lmp_inrand_key_missing:
+0x5e07 025265 jam key_missing ,mem_disconn_reason_send 
+0x5e08 025266 jam lmp_detach ,mem_lmo_opcode2 
+0x5e09 025267 rtn 
+:      025269 parse_lmp_not_accepted_name_req:
+0x5e0a 025270 rtn 
+:      025272 parse_lmp_not_accepted_simple_pairing_number:
+0x5e0b 025273 jam sp_stat_null ,mem_sp_state 
+0x5e0c 025274 jam lmp_detach ,mem_lmo_opcode2 
+0x5e0d 025275 branch parse_rx_done 
+:      025277 parse_lmp_not_accepted_dhkey_check:
+0x5e0e 025278 jam sp_stat_null ,mem_sp_state 
+0x5e0f 025279 jam lmp_detach ,mem_lmo_opcode2 
+0x5e10 025280 branch parse_rx_done 
+:      025281 parse_lmp_not_accepted_unsniff_req:
+0x5e11 025282 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
+0x5e12 025283 branch ui_ipc_send_event 
+:      025285 parse_lmp_accepted_unsniff_req:
+0x5e13 025286 jam bt_evt_unsniff_accept ,mem_fifo_temp 
+0x5e14 025287 call ui_ipc_send_event 
+0x5e15 025288 branch sniff_exit 
+:      025290 parse_lmp_accepted_sniff_req:
+0x5e16 025291 jam bt_evt_sniff_accept ,mem_fifo_temp 
+0x5e17 025292 call ui_ipc_send_event 
+0x5e18 025293 setarg 0 
+0x5e19 025294 store 2 ,mem_dsniff 
+0x5e1a 025295 fetch 2 ,mem_sniff_param_interval 
+0x5e1b 025296 lshift pdata ,pdata 
+0x5e1c 025297 store 2 ,mem_tsniff 
+0x5e1d 025298 fetch 1 ,mem_sniff_param_attempt 
+0x5e1e 025299 store 1 ,mem_sniff_attempt 
+0x5e1f 025300 fetch 1 ,mem_sniff_param_timeout 
+0x5e20 025301 store 1 ,mem_sniff_timeout 
+0x5e21 025302 branch sniff_init 
+:      025304 parse_lmp_not_acdcept_sniff_req:
+0x5e22 025305 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
+0x5e23 025306 branch ui_ipc_send_event 
+:      025308 parse_lmp_crypt_key:
+0x5e24 025309 fetcht 1 ,mem_rxbuf + 1 
+0x5e25 025310 storet 1 ,mem_key_size 
+0x5e26 025311 branch accept_lmp_msg 
+:      025313 parse_lmp_setup_complete:
+0x5e27 025314 fetch 1 ,mem_lmp_conn_state 
+0x5e28 025315 set1 received_setup_complete ,pdata 
+0x5e29 025316 store 1 ,mem_lmp_conn_state 
+0x5e2a 025317 rtnbit1 sent_setup_complete 
+0x5e2b 025318 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5e2c 025319 branch parse_rx_done 
+:      025321 parse_lmp_max_slot:
+0x5e2d 025324 rtn 
+:      025326 parse_lmp_max_slot_req:
+0x5e2e 025327 fetch 1 ,mem_max_slot 
+0x5e2f 025328 fetcht 1 ,mem_rxbuf + 1 
+0x5e30 025329 isub temp ,null 
+0x5e31 025331 branch accept_lmp_msg ,positive 
+0x5e32 025332 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e33 025333 jam unspecified_error ,mem_lmo_reason2 
+0x5e34 025334 jam lmp_max_slot_req ,mem_lmi_opcode2 
+0x5e35 025335 rtn 
+:      025337 parse_lmp_detach:
+0x5e36 025338 call prepare_disconnect 
+0x5e37 025339 branch accept_lmp_msg 
+:      025341 accept_lmp_msg:
+0x5e38 025342 jam lmp_accepted ,mem_lmo_opcode2 
+0x5e39 025343 rtn 
+:      025345 parse_lmp_incr_power:
+0x5e3a 025346 jam lmp_max_power ,mem_lmo_opcode2 
+0x5e3b 025347 rtn 
+:      025349 parse_lmp_decr_power:
+0x5e3c 025350 jam lmp_min_power ,mem_lmo_opcode2 
+0x5e3d 025351 rtn 
+:      025353 parse_lmp_version_res:
+0x5e3e 025354 fetch 1 ,mem_conn_sm 
+0x5e3f 025355 rtneq conn_sm_wait_version 
+0x5e40 025357 jam conn_sm_send_features ,mem_conn_sm 
+0x5e41 025359 rtn 
+:      025362 parse_lmp_auto_rate:
+0x5e42 025363 rtn 
+:      025365 parse_lmp_in_rand:
+0x5e43 025366 call lmp_copy_rand 
+0x5e44 025367 jam pincode_state_wait_pincode ,mem_pincode_state 
+0x5e45 025368 jam bt_evt_pincode_req ,mem_fifo_temp 
+0x5e46 025369 call ui_ipc_send_event 
+0x5e47 025371 call tid_check 
+0x5e48 025372 nbranch lmp_accept_inrand ,true 
+0x5e49 025374 nbranch parse_lmp_inrand_res ,master 
+0x5e4a 025375 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e4b 025376 jam lmp_in_rand ,mem_lmi_opcode2 
+0x5e4c 025377 jam transaction_collision ,mem_lmo_reason2 
+0x5e4d 025378 rtn 
+:      025379 parse_lmp_inrand_res:
+0x5e4e 025380 fetch 1 ,mem_op 
+0x5e4f 025381 set1 op_inrand_req ,pdata 
+0x5e50 025382 store 1 ,mem_op 
+0x5e51 025383 rtn 
+:      025386 pop_tid_follow:
+0x5e52 025387 fetcht 1 ,mem_state_map 
+0x5e53 025388 nsetflag blank ,smap_lmptid ,temp 
+0x5e54 025389 storet 1 ,mem_state_map 
+0x5e55 025390 rtn 
+:      025393 push_tid_follow:
+0x5e56 025394 fetch 1 ,mem_lmo_tid2 
+0x5e57 025395 rshift pdata ,pdata 
+0x5e58 025396 and_into 1 ,pdata 
+0x5e59 025397 rtn 
+:      025399 parse_lmp_au_rand_moudle:
+0x5e5a 025400 fetch 1 ,mem_nv_data_number 
+0x5e5b 025401 rtn blank 
+0x5e5c 025402 fetch 1 ,mem_pairing_auth 
+0x5e5d 025403 call load_device_list ,blank 
+0x5e5e 025404 rtn 
+:      025406 parse_lmp_au_rand:
+0x5e5f 025407 call parse_lmp_au_rand_moudle 
+0x5e60 025408 call push_tid_follow 
+0x5e61 025409 store 1 ,mem_sres_tid 
+0x5e62 025410 call lmp_copy_rand 
+0x5e63 025411 jam lmp_sres ,mem_lmo_opcode2 
+0x5e64 025412 fetch 1 ,mem_link_key_exists 
+0x5e65 025413 nrtn blank 
+0x5e66 025414 fetch 1 ,mem_state 
+0x5e67 025415 rtnbit1 state_combkey 
+0x5e68 025416 jam key_missing ,mem_lmo_reason2 
+0x5e69 025417 branch reject_lmp_packet 
+:      025419 parse_lmp_sres:
+0x5e6a 025420 arg mem_plap ,rega 
+0x5e6b 025421 call function_e1 
+0x5e6c 025422 fetch 4 ,mem_rxbuf + 1 
+0x5e6d 025423 fetcht 4 ,mem_input_store 
+0x5e6e 025424 isub temp ,null 
+0x5e6f 025425 branch authentication_ok ,zero 
+0x5e70 025426 jam lmp_detach ,mem_lmo_opcode2 
+0x5e71 025427 jam authentication_failure_error ,mem_disconn_reason_send 
+0x5e72 025428 rtn 
+:      025429 authentication_ok:
+0x5e73 025430 call authentication_ok_common 
+0x5e74 025431 fetch 1 ,mem_ssp_enable 
+0x5e75 025432 branch pairing_success ,blank 
+0x5e76 025433 rtn 
+:      025436 authentication_ok_common:
+0x5e77 025437 call copy_aco 
+0x5e78 025438 call linkkey_ready 
+0x5e79 025439 fetch 1 ,mem_op 
+0x5e7a 025440 isolate1 op_auth_req ,pdata 
+0x5e7b 025441 set0 op_auth_req ,pdata 
+0x5e7c 025442 store 1 ,mem_op 
+0x5e7d 025443 fetch 1 ,mem_conn_sm 
+0x5e7e 025444 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
+0x5e7f 025445 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
+0x5e80 025446 rtn 
+:      025447 authentication_ok_conn_sm:
+0x5e81 025448 fetch 1 ,mem_pairing_auth 
+0x5e82 025449 rtnne defalt_pairing_auth 
+0x5e83 025450 fetch 1 ,mem_state_map 
+0x5e84 025451 rtnbit1 smap_encryption 
+0x5e85 025452 branch host_create_conn_encrypt 
+:      025454 parse_lmp_comb_key:
+0x5e86 025455 arg mem_rxbuf + 1 ,rega 
+0x5e87 025456 arg mem_kinit ,regb 
+0x5e88 025457 arg mem_random_number ,contw 
+0x5e89 025458 call xor16 
+0x5e8a 025459 arg mem_plap ,rega 
+0x5e8b 025460 call generate_linkkey 
+0x5e8c 025461 jam lmp_au_rand ,mem_lmo_opcode2 
+0x5e8d 025462 fetch 1 ,mem_state 
+0x5e8e 025463 bbit0 state_combkey ,lmp_generate_key 
+0x5e8f 025464 rtn 
+:      025466 parse_lmp_name_res:
+0x5e90 025467 fetch 2 ,mem_len 
+0x5e91 025468 add pdata ,-3 ,loopcnt 
+0x5e92 025469 fetcht 1 ,mem_rxbuf + 1 
+0x5e93 025470 setarg mem_tmp_buffer 
+0x5e94 025471 iadd temp ,contw 
+0x5e95 025472 arg mem_rxbuf + 3 ,contr 
+0x5e96 025473 call memcpy 
+0x5e97 025474 fetcht 1 ,mem_name_offset 
+0x5e98 025475 fetch 1 ,mem_rxbuf + 2 
+0x5e99 025476 isub temp ,pdata 
+0x5e9a 025477 sub pdata ,14 ,null 
+0x5e9b 025478 branch parse_lmp_name_res_end ,positive 
+0x5e9c 025479 add temp ,14 ,pdata 
+0x5e9d 025480 store 1 ,mem_name_offset 
+0x5e9e 025481 jam lmp_name_req ,mem_lmo_opcode2 
+0x5e9f 025482 rtn 
+:      025483 parse_lmp_name_res_end:
+0x5ea0 025484 fetch 1 ,mem_state_map 
+0x5ea1 025485 set1 smap_name_res ,pdata 
+0x5ea2 025486 store 1 ,mem_state_map 
+0x5ea3 025487 bbit1 smap_name_req ,lmp_disconnect 
+0x5ea4 025488 rtn 
+:      025489 parse_lmp_name_req:
+0x5ea5 025490 fetch 1 ,mem_rxbuf + 1 
+0x5ea6 025491 store 1 ,mem_lmi_opcode2 
+0x5ea7 025492 jam lmp_name_res ,mem_lmo_opcode2 
+0x5ea8 025493 rtn 
+:      025495 parse_lmp_conn_req:
+0x5ea9 025496 branch accept_lmp_msg 
+:      025498 parse_lmp_timing_accuracy_req:
+0x5eaa 025499 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
+0x5eab 025500 rtn 
+:      025502 parse_lmp_features_req:
+0x5eac 025503 jam lmp_features_res ,mem_lmo_opcode2 
+0x5ead 025504 rtn 
+:      025506 parse_lmp_version_req:
+0x5eae 025507 jam lmp_version_res ,mem_lmo_opcode2 
+0x5eaf 025508 rtn 
+:      025510 parse_lmp_supervision_timeout:
+0x5eb0 025513 rtn 
+:      025517 parse_lmp_sniff_subrating_req:
+0x5eb1 025518 fetch 2 ,mem_tsniff 
+0x5eb2 025519 iforce temp 
+0x5eb3 025520 fetch 1 ,mem_rxbuf + 2 
+0x5eb4 025521 store 1 ,mem_subsniff_rate 
+0x5eb5 025522 imul32 temp ,temp 
+0x5eb6 025523 fetch 2 ,mem_rxbuf + 3 
+0x5eb7 025524 lshift pdata ,pdata 
+0x5eb8 025525 store 2 ,mem_subsniff_tcmax 
+0x5eb9 025526 fetch 4 ,mem_rxbuf + 5 
+0x5eba 025527 lshift pdata ,pdata 
+0x5ebb 025528 store 4 ,mem_subsniff_instant 
+0x5ebc 025530 deposit temp 
+0x5ebd 025531 store 2 ,mem_subsniff_tsniff 
+0x5ebe 025532 rtn 
+:      025533 parse_lmpext_packet_type_table_req:
+0x5ebf 025534 fetcht 1 ,mem_ptt 
+0x5ec0 025535 fetch 1 ,mem_rxbuf + 2 
+0x5ec1 025536 ixor temp ,null 
+0x5ec2 025537 nbranch reject_unknown_ext_packet ,zero 
+0x5ec3 025538 isolate1 0 ,pdata 
+0x5ec4 025539 fetch 1 ,mem_state_map 
+0x5ec5 025540 setflag true ,smap_edr ,pdata 
+0x5ec6 025541 store 1 ,mem_state_map 
+0x5ec7 025542 jam lmp_ext_accepted ,mem_lmo_opcode2 
+0x5ec8 025543 jam lmp_packet_type_table_req ,mem_lmi_opcode2 
+0x5ec9 025544 rtn 
+:      025547 parse_lmp_sniff_subrating_res:
+:      025548 parse_lmp_preferred_rate:
+:      025549 parse_lmp_max_power:
+:      025550 parse_lmp_min_power:
+0x5eca 025551 rtn 
+:      025552 parse_lmp_page_mode_req:
+0x5ecb 025554 branch accept_lmp_msg 
+:      025555 parse_lmp_page_scan_mode_req:
+0x5ecc 025558 branch accept_lmp_msg 
+:      025562 parse_lmp_slot_offset:
+0x5ecd 025563 fetch 2 ,mem_rxbuf + 1 
+0x5ece 025564 store 2 ,mem_slot_offset 
+0x5ecf 025565 rtn 
+:      025567 parse_lmp_sniff_req_check_sniff_para:
+0x5ed0 025568 fetch 2 ,mem_rxbuf + 4 
+0x5ed1 025569 fetcht 1 ,mem_lpm_mult 
+0x5ed2 025570 imul32 temp ,pdata 
+0x5ed3 025571 arg 0x640 ,temp 
+0x5ed4 025572 isub temp ,null 
+0x5ed5 025574 rtn 
+:      025576 parse_lmp_sniff_req:
+0x5ed6 025577 fetch 2 ,mem_rxbuf + 6 
+0x5ed7 025578 branch lmp_reject_sniff ,blank 
+0x5ed8 025579 call parse_lmp_sniff_req_check_sniff_para 
+0x5ed9 025580 branch lmp_reject_sniff ,positive 
+0x5eda 025581 fetch 1 ,mem_device_option 
+0x5edb 025582 sub pdata ,dvc_op_module ,null 
+0x5edc 025583 call module_set_lpm_mult_2 ,zero 
+0x5edd 025584 fetch 1 ,mem_state 
+0x5ede 025585 bbit1 state_insniff ,lmp_reject_sniff 
+0x5edf 025586 fetch 2 ,mem_rxbuf + 2 
+0x5ee0 025587 lshift pdata ,pdata 
+0x5ee1 025588 store 2 ,mem_dsniff 
+0x5ee2 025589 fetch 2 ,mem_rxbuf + 4 
+0x5ee3 025590 lshift pdata ,pdata 
+0x5ee4 025591 store 2 ,mem_tsniff 
+0x5ee5 025592 fetch 2 ,mem_rxbuf + 6 
+0x5ee6 025593 store 1 ,mem_sniff_attempt 
+0x5ee7 025594 iforce temp 
+0x5ee8 025595 fetch 2 ,mem_rxbuf + 8 
+0x5ee9 025596 store 1 ,mem_sniff_timeout 
+0x5eea 025597 isub temp ,null 
+0x5eeb 025598 nbranch set_big_value_to_attempt ,positive 
+0x5eec 025599 store 1 ,mem_sniff_attempt 
+:      025600 set_big_value_to_attempt:
+0x5eed 025602 jam lmp_accepted ,mem_lmo_opcode2 
+0x5eee 025603 jam lmp_sniff_req ,mem_lmi_opcode2 
+0x5eef 025604 rtn 
+:      025606 lmp_reject_sniff:
+0x5ef0 025607 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5ef1 025608 branch reject_lmp_packet 
+:      025610 parse_lmp_start_encryption_req:
+0x5ef2 025611 call accept_lmp_msg 
+0x5ef3 025612 call lmp_copy_rand 
+0x5ef4 025613 call function_e3 
+0x5ef5 025614 branch start_encryption 
+:      025616 parse_lmp_stop_encryption_req:
+0x5ef6 025617 call accept_lmp_msg 
+0x5ef7 025618 branch stop_encryption 
+:      025621 parse_lmp_switch_req:
+0x5ef8 025622 fetch 4 ,mem_rxbuf + 1 
+0x5ef9 025623 lshift pdata ,pdata 
+0x5efa 025625 branch parse_lmp_switch_accept ,master 
+0x5efb 025626 fetcht 1 ,mem_link_key_exists 
+0x5efc 025627 nbranch parse_lmp_switch_req_clear_mark ,blank 
+:      025628 parse_lmp_switch_req_not_accept:
+0x5efd 025629 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5efe 025630 jam lmp_switch_req ,mem_lmi_opcode2 
+0x5eff 025631 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f00 025632 rtn 
+:      025633 parse_lmp_switch_req_clear_mark:
+0x5f01 025634 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x5f02 025635 jam 0 ,mem_conn_sm 
+0x5f03 025636 branch role_switch_prepare 
+:      025638 parse_lmp_switch_accept:
+0x5f04 025639 call role_switch_prepare 
+0x5f05 025640 set1 mark_reconn_recieve_switch ,mark 
+0x5f06 025641 fetch 1 ,mem_connection_options 
+0x5f07 025642 set0 connection_switch ,pdata 
+0x5f08 025643 store 1 ,mem_connection_options 
+0x5f09 025644 branch accept_lmp_msg 
+:      025648 parse_lmp_temp_rand:
+:      025649 parse_lmp_temp_key:
+:      025650 parse_lmp_timing_accuracy_res:
+:      025651 parse_lmp_unit_key:
+:      025652 parse_lmp_use_semi_permanend_key:
+0x5f0a 025653 rtn 
+:      025656 parse_lmp_unsniff_req:
+0x5f0b 025657 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f0c 025658 jam lmp_unsniff_req ,mem_lmi_opcode2 
+0x5f0d 025659 jam bt_evt_remote_unsniff ,mem_fifo_temp 
+0x5f0e 025660 call ui_ipc_send_event 
+0x5f0f 025661 branch sniff_exit 
+:      025663 parse_lmp_encapsulated_header:
+0x5f10 025664 fetch 1 ,mem_rxbuf + 1 
+0x5f11 025665 bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f12 025666 fetch 1 ,mem_rxbuf + 2 
+0x5f13 025667 bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f14 025668 fetch 1 ,mem_rxbuf + 3 
+0x5f15 025669 bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f16 025670 call check_localsm 
+0x5f17 025671 branch parse_lmp_encapsulated_header_master ,true 
+0x5f18 025672 jam sp_stat_key_recv ,mem_sp_state 
+:      025673 parse_lmp_encapsulated_header_master:
+0x5f19 025674 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f1a 025675 jam lmp_encapsulated_header ,mem_lmi_opcode2 
+0x5f1b 025676 branch parse_rx_done 
+:      025678 parse_lmp_encapsulated_header_reject:
+0x5f1c 025679 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f1d 025680 branch reject_lmp_packet 
+:      025682 parse_lmp_accepted_encapsulated_header:
+0x5f1e 025685 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f1f 025687 rtn 
+:      025688 parse_lmp_accepted_simple_pairing_number:
+0x5f20 025689 fetch 1 ,mem_ssp_mode_flag 
+0x5f21 025690 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
+0x5f22 025691 beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
+:      025692 parse_lmp_accepted_simple_pairing_number_common:
+0x5f23 025693 call check_localsm 
+0x5f24 025694 rtn true 
+0x5f25 025695 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f26 025696 rtn 
+:      025698 parse_lmp_accepted_simple_pairing_number_ssp_pin:
+0x5f27 025699 call g_noninit_number_confirm 
+0x5f28 025700 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
+0x5f29 025701 call ui_ipc_send_event 
+0x5f2a 025702 branch parse_lmp_accepted_simple_pairing_number_common 
+:      025705 parse_lmp_accepted_simple_pairing_number_passkey:
+0x5f2b 025706 call check_localsm 
+0x5f2c 025707 rtn true 
+0x5f2d 025708 fetch 1 ,mem_authentication_passkey_times 
+0x5f2e 025709 beq 19 ,authentication_passkey_end 
+0x5f2f 025710 increase 1 ,pdata 
+0x5f30 025711 store 1 ,mem_authentication_passkey_times 
+:      025714 authentication_passkey:
+0x5f31 025715 jam sp_flag_commit ,mem_sp_flag 
+0x5f32 025716 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f33 025717 fetch 1 ,mem_authentication_passkey_times 
+0x5f34 025718 copy pdata ,queue 
+0x5f35 025719 fetch 6 ,mem_pin 
+0x5f36 025720 qisolate1 pdata 
+0x5f37 025721 setarg 0x80 
+0x5f38 025722 setflag true ,0 ,pdata 
+0x5f39 025723 store 1 ,mem_passkey_1bit 
+0x5f3a 025724 rtn 
+:      025726 authentication_passkey_end:
+0x5f3b 025727 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f3c 025728 rtn 
+:      025730 parse_lmp_accepted_dhkey_check:
+0x5f3d 025731 call parse_lmp_accepted_dhkey_check_common 
+:      025732 pairing_success:
+0x5f3e 025733 fetch 1 ,mem_flag_pairing_state 
+0x5f3f 025734 rtn blank 
+0x5f40 025735 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
+0x5f41 025736 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
+0x5f42 025737 branch ui_ipc_send_event 
+:      025740 parse_lmp_accepted_dhkey_check_common:
+0x5f43 025742 call check_localsm 
+0x5f44 025743 ncall g_noninit ,true 
+0x5f45 025744 call g_init ,true 
+0x5f46 025745 call check_localsm 
+0x5f47 025746 rtn true 
+0x5f48 025747 jam sp_stat_link_key_calc ,mem_sp_state 
+0x5f49 025748 jam sp_flag_commit ,mem_sp_flag 
+0x5f4a 025749 rtn 
+:      025751 parse_simple_pairing_confirm:
+0x5f4b 025752 arg mem_sp_confirm_remote ,contw 
+0x5f4c 025753 arg mem_rxbuf + 1 ,contr 
+0x5f4d 025754 call memcpy16 
+0x5f4e 025755 fetch 1 ,mem_ssp_mode_flag 
+0x5f4f 025756 rtneq ssp_mode_passkey_entry_flag 
+0x5f50 025757 branch master_set_mem_master_sp_flag 
+:      025759 parse_lmp_encapsulated_payload:
+0x5f51 025760 fetch 1 ,mem_master_sp_state 
+0x5f52 025761 beq sp_stat_random_send ,parse_encapsulated_payload_master 
+0x5f53 025762 fetch 1 ,mem_sp_state 
+0x5f54 025763 bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
+:      025764 parse_encapsulated_payload_master:
+0x5f55 025765 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f56 025766 sub pdata ,0x20 ,contw 
+0x5f57 025767 nbranch parse_lmp_encapsulated_payload_reject ,positive 
+0x5f58 025768 arg mem_sp_pubkey_remote ,contw 
+0x5f59 025769 iadd contw ,contw 
+0x5f5a 025770 fetch 8 ,mem_rxbuf + 1 
+0x5f5b 025771 istore 8 ,contw 
+0x5f5c 025772 fetch 8 ,mem_rxbuf + 9 
+0x5f5d 025773 istore 8 ,contw 
+0x5f5e 025774 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f5f 025775 increase 16 ,pdata 
+0x5f60 025776 store 1 ,mem_sp_remote_key_recv_count 
+0x5f61 025777 bne encapsulated_len_p192 ,accept_lmp_msg 
+:      025778 parse_lmp_encapsulated_payload_completed:
+0x5f62 025779 call check_localsm 
+0x5f63 025780 branch accept_lmp_msg ,true 
+0x5f64 025781 jam sp_key_valid ,mem_sp_remote_key_invalid 
+0x5f65 025782 jam sp_stat_key_generate ,mem_sp_state 
+0x5f66 025783 jam sp_flag_commit ,mem_sp_flag 
+0x5f67 025784 branch accept_lmp_msg 
+:      025785 parse_lmp_encapsulated_payload_reject:
+0x5f68 025786 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f69 025787 branch reject_lmp_packet 
+:      025788 parse_lmp_accepted_encapsulated_payload:
+0x5f6a 025789 fetch 1 ,mem_sp_local_key_send_count 
+0x5f6b 025790 beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
+0x5f6c 025791 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f6d 025792 branch parse_rx_done 
+:      025794 parse_lmp_encapsulated_payload_all_accepted:
+0x5f6e 025795 call check_localsm 
+0x5f6f 025796 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
+0x5f70 025797 fetch 1 ,mem_ssp_mode_flag 
+0x5f71 025798 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
+0x5f72 025799 jam sp_flag_commit ,mem_sp_flag 
+0x5f73 025800 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f74 025801 branch parse_rx_done 
+:      025803 parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+0x5f75 025804 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
+0x5f76 025805 branch ui_ipc_send_event 
+:      025808 parse_lmp_encapsulated_payload_all_accepted_master:
+0x5f77 025810 branch parse_rx_done 
+:      025812 parse_lmp_simple_pairing_number:
+0x5f78 025813 fetch 1 ,mem_master_sp_state 
+0x5f79 025814 beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
+0x5f7a 025815 fetch 1 ,mem_sp_state 
+0x5f7b 025816 bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
+:      025817 parse_lmp_simple_pairing_number_master:
+0x5f7c 025818 arg mem_sp_random_remote ,contw 
+0x5f7d 025819 fetch 8 ,mem_rxbuf + 1 
+0x5f7e 025820 istore 8 ,contw 
+0x5f7f 025821 fetch 8 ,mem_rxbuf + 9 
+0x5f80 025822 istore 8 ,contw 
+0x5f81 025823 call check_localsm 
+0x5f82 025824 branch parse_lmp_simple_pairing_number_master0 ,true 
+0x5f83 025825 jam sp_stat_random_send ,mem_sp_state 
+0x5f84 025826 jam sp_flag_commit ,mem_sp_flag 
+0x5f85 025827 branch accept_lmp_msg 
+:      025828 parse_lmp_simple_pairing_number_master0:
+0x5f86 025829 jam sp_stat_commit_calc ,mem_master_sp_state 
+0x5f87 025830 branch master_set_mem_master_sp_flag 
+:      025833 parse_lmp_simple_pairing_number_reject:
+0x5f88 025834 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f89 025835 branch reject_lmp_packet 
+:      025837 parse_dhkey_check:
+0x5f8a 025838 fetch 1 ,mem_master_sp_state 
+0x5f8b 025839 beq sp_stat_confirm_send ,parse_dhkey_check_master 
+0x5f8c 025840 fetch 1 ,mem_sp_state 
+0x5f8d 025841 bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
+:      025842 parse_dhkey_check_master:
+0x5f8e 025843 arg mem_sp_check_result ,contw 
+0x5f8f 025844 arg mem_rxbuf + 1 ,contr 
+0x5f90 025845 call memcpy16 
+0x5f91 025846 call check_localsm 
+0x5f92 025847 branch parse_dhkey_check_master0 ,true 
+0x5f93 025848 fetch 1 ,mem_ssp_mode_flag 
+0x5f94 025849 beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
+:      025850 number_comparison_successed:
+0x5f95 025851 jam 0 ,mem_flag_mode_ssp_pin 
+0x5f96 025852 jam sp_stat_confirm_check ,mem_sp_state 
+0x5f97 025853 jam sp_flag_commit ,mem_sp_flag 
+0x5f98 025854 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x5f99 025855 branch parse_rx_done 
+:      025857 parse_dhkey_check_master0:
+0x5f9a 025858 jam sp_stat_confirm_check ,mem_master_sp_state 
+0x5f9b 025859 jam sp_flag_commit ,mem_master_sp_flag 
+0x5f9c 025860 branch parse_rx_done 
+:      025861 parse_lmp_dhkey_check_reject:
+0x5f9d 025862 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f9e 025863 branch reject_lmp_packet 
+:      025865 number_comparison_mode:
+0x5f9f 025866 fetch 1 ,mem_flag_mode_ssp_pin 
+0x5fa0 025867 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
+0x5fa1 025868 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
+0x5fa2 025869 store 1 ,mem_flag_mode_ssp_pin 
+0x5fa3 025870 rtn 
+:      025872 comparison_result:
+0x5fa4 025873 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x5fa5 025874 jam 0 ,mem_flag_mode_ssp_pin 
+0x5fa6 025875 branch parse_lmp_dhkey_check_reject 
+:      025878 parse_lmp_clkoffset_res:
+0x5fa7 025879 branch parse_rx_done 
+:      025881 parse_lmp_encryption_mode_req:
+0x5fa8 025882 fetch 1 ,mem_connection_options 
+0x5fa9 025883 set0 connection_encrypt 
+0x5faa 025884 store 1 ,mem_connection_options 
+0x5fab 025885 call accept_lmp_msg 
+0x5fac 025886 nrtn master 
+0x5fad 025887 fetch 1 ,mem_rxbuf + 1 
+0x5fae 025888 fetcht 1 ,mem_op 
+0x5faf 025889 setflag blank ,op_stop_enc ,temp 
+0x5fb0 025890 nsetflag blank ,op_start_enc ,temp 
+0x5fb1 025891 storet 1 ,mem_op 
+0x5fb2 025892 rtn 
+:      025894 parse_lmp_features_res:
+0x5fb3 025895 fetcht 8 ,mem_rxbuf + 1 
+:      025896 parse_lmp_features_res_not_hci:
+0x5fb4 025897 fetch 1 ,mem_conn_sm 
+0x5fb5 025898 rtnne conn_sm_wait_features_res 
+0x5fb6 025900 fetch 1 ,mem_connection_options 
+0x5fb7 025901 bbit0 connection_feature_ext ,parse_lmp_send_conn 
+0x5fb8 025903 jam conn_sm_send_features_ext ,mem_conn_sm 
+0x5fb9 025904 rtn 
+:      025905 parse_lmp_send_conn:
+0x5fba 025906 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5fbb 025907 rtn 
+:      025908 parse_lmp_test_activate:
+0x5fbc 025909 fetch 1 ,mem_debug_config 
+0x5fbd 025910 store 1 ,mem_test_mode_old_debug_config 
+0x5fbe 025911 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fbf 025912 jam lmp_test_activate ,mem_lmi_opcode2 
+0x5fc0 025913 rtn 
+:      025914 parse_lmp_test_control:
+0x5fc1 025917 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fc2 025918 jam lmp_test_control ,mem_lmi_opcode2 
+0x5fc3 025919 force 9 ,loopcnt 
+0x5fc4 025920 arg mem_rxbuf + 1 ,contr 
+0x5fc5 025921 arg mem_temp_payload ,contw 
+:      025922 parse_lmp_test_xor:
+0x5fc6 025923 ifetch 1 ,contr 
+0x5fc7 025924 xor_into 0x55 ,pdata 
+0x5fc8 025925 istore 1 ,contw 
+0x5fc9 025926 loop parse_lmp_test_xor 
+0x5fca 025927 fetch 1 ,test_mode_scenario 
+0x5fcb 025928 fetcht 1 ,mem_tester_emulate 
+0x5fcc 025929 set0 tester_no_whitening ,temp 
+0x5fcd 025930 set0 tester_pattern_test ,temp 
+0x5fce 025931 beq exit_test_mode ,parse_lmp_test_control_exit 
+0x5fcf 025932 beq pause_test_mode ,parse_lmp_test_control_pause 
+0x5fd0 025933 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
+0x5fd1 025934 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd2 025935 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
+0x5fd3 025936 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd4 025937 beq zero_pattern ,parse_lmp_test_control_pattern 
+0x5fd5 025938 beq one_pattern ,parse_lmp_test_control_pattern 
+0x5fd6 025939 beq alt_pattern ,parse_lmp_test_control_pattern 
+0x5fd7 025940 beq alt2_pattern ,parse_lmp_test_control_pattern 
+0x5fd8 025941 beq pseudorandom ,parse_lmp_test_control_pattern 
+0x5fd9 025942 rtn 
+:      025943 parse_lmp_test_control_exit:
+0x5fda 025945 fetch 1 ,mem_tester_emulate 
+0x5fdb 025946 set1 tester_exit ,pdata 
+0x5fdc 025947 set1 tester_change ,pdata 
+0x5fdd 025948 store 1 ,mem_tester_emulate 
+0x5fde 025949 rtn 
+:      025950 parse_lmp_test_control_pattern:
+0x5fdf 025951 set1 tester_pattern_test ,temp 
+0x5fe0 025952 jam 5 ,mem_lch_code 
+0x5fe1 025953 fetch 2 ,test_mode_data_length 
+0x5fe2 025954 iforce loopcnt 
+0x5fe3 025955 store 2 ,mem_len 
+0x5fe4 025956 arg mem_rxbuf ,contw 
+0x5fe5 025957 call pn9 
+:      025958 parse_lmp_test_control_loopback_nowhite:
+0x5fe6 025959 set1 tester_no_whitening ,temp 
+:      025960 parse_lmp_test_control_loopback:
+0x5fe7 025961 set1 tester_change ,temp 
+0x5fe8 025962 force 0 ,pdata 
+0x5fe9 025963 store 1 ,mem_slave_rcvcnt 
+0x5fea 025964 store 2 ,mem_tst_pktcnt_crc 
+0x5feb 025965 store 2 ,mem_tst_pktcnt_dmh 
+0x5fec 025966 store 2 ,mem_tst_pktcnt_hec 
+0x5fed 025967 store 2 ,mem_tst_pktcnt_sync 
+0x5fee 025968 fetch 1 ,test_mode_hopping_mode 
+0x5fef 025969 compare fixed_freq ,pdata ,0xff 
+0x5ff0 025970 setflag true ,tester_fixed_freq ,temp 
+0x5ff1 025971 storet 1 ,mem_tester_emulate 
+0x5ff2 025972 rtn 
+:      025974 parse_lmp_test_control_pause:
+0x5ff3 025975 set0 mark_testmode ,mark 
+0x5ff4 025976 jam 0 ,mem_tester_emulate 
+0x5ff5 025977 fetch 1 ,mem_debug_config 
+0x5ff6 025978 set0 debug_tx_pattern ,pdata 
+0x5ff7 025979 store 1 ,mem_debug_config 
+0x5ff8 025980 rtn 
+:      025986 lmp_copy_rand:
+0x5ff9 025987 arg mem_rxbuf + 1 ,contr 
+0x5ffa 025988 arg mem_random_number ,contw 
+0x5ffb 025989 branch memcpy16 
+:      025991 lmp_generate_key:
+0x5ffc 025992 jam lmp_comb_key ,mem_lmo_opcode2 
+0x5ffd 025993 rtn 
+:      025995 lmp_start_encryption:
+0x5ffe 025996 nrtn master 
+0x5fff 025997 jam lmp_start_encryption_req ,mem_lmo_opcode2 
+0x6000 025998 rtn 
+:      026000 lmp_accept_inrand:
+0x6001 026001 arg mem_lap ,rega 
+0x6002 026002 call generate_kinit 
+0x6003 026003 jam lmp_accepted ,mem_lmo_opcode2 
+0x6004 026004 jam lmp_in_rand ,mem_lmi_opcode2 
+0x6005 026005 rtn 
+:      026007 lmp_disconnect:
+0x6006 026008 jam 10 ,mem_conn_timer 
+0x6007 026009 jam lmp_detach ,mem_lmo_opcode2 
+0x6008 026010 jam local_host ,mem_disconn_reason_send 
+0x6009 026011 rtn 
+:      026017 send_lmp:
+0x600a 026018 bpatchx patch30_2 ,mem_patch30 
+0x600b 026019 disable user 
+0x600c 026020 call lmo_fifo_process 
+0x600d 026021 fetch 1 ,mem_lmp_to_send 
+0x600e 026022 rtn blank 
+0x600f 026027 bbit1 7 ,send_lmp_escape 
+:      026028 send_lmp0:
+0x6010 026029 beq lmp_name_req ,send_lmp_name_req 
+0x6011 026030 beq lmp_name_res ,send_lmp_name_res 
+0x6012 026031 beq lmp_accepted ,send_lmp_accepted 
+0x6013 026032 beq lmp_not_accepted ,send_lmp_not_accepted 
+0x6014 026033 beq lmp_features_req ,send_lmp_features_req 
+0x6015 026034 beq lmp_features_res ,send_lmp_features_res 
+0x6016 026035 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
+0x6017 026036 beq lmp_version_req ,send_lmp_version_req 
+0x6018 026037 beq lmp_version_res ,send_lmp_version_res 
+0x6019 026038 beq lmp_setup_complete ,send_lmp_setup_complete 
+0x601a 026039 beq lmp_supervision_timeout ,send_lmp_superto 
+0x601b 026040 beq lmp_host_connection_req ,send_lmp_no_payload 
+0x601c 026041 beq lmp_in_rand ,send_lmp_inrand 
+0x601d 026042 beq lmp_comb_key ,send_lmp_comb_key 
+0x601e 026043 beq lmp_au_rand ,send_lmp_aurand 
+0x601f 026044 beq lmp_sres ,send_lmp_sres 
+0x6020 026045 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
+0x6021 026046 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
+0x6022 026047 beq lmp_start_encryption_req ,send_lmp_start_encryption 
+0x6023 026048 beq lmp_detach ,send_lmp_detach 
+0x6024 026049 beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
+0x6025 026050 beq lmp_unit_key ,send_lmp_unit_key 
+0x6026 026052 beq lmp_incr_power_req ,send_lmp_inc_power 
+0x6027 026053 beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
+0x6028 026054 beq lmp_max_power ,send_lmp_nopayload_reply 
+0x6029 026055 beq lmp_max_slot ,send_lmp_max_slot 
+0x602a 026056 beq lmp_max_slot_req ,send_lmp_max_slot_req 
+0x602b 026057 beq lmp_min_power ,send_lmp_nopayload_reply 
+0x602c 026058 beq lmp_slot_offset ,send_lmp_slot_offset 
+0x602d 026059 beq lmp_switch_req ,send_lmp_switch_req 
+0x602e 026060 beq lmp_sniff_req ,send_lmp_sniff_req 
+0x602f 026061 beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
+0x6030 026062 beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
+0x6031 026063 beq lmp_unsniff_req ,send_lmp_unsniff_req 
+0x6032 026064 beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
+0x6033 026065 beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
+0x6034 026066 beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
+0x6035 026067 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
+0x6036 026068 beq lmp_dhkey_check ,send_lmp_dhkey_check 
+0x6037 026069 beq lmp_auto_rate ,send_lmp_auto_rate 
+0x6038 026070 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
+0x6039 026072 beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
+0x603a 026073 beq lmp_quality_of_service ,send_lmp_quality_of_service 
+0x603b 026074 beq lmp_test_activate ,send_lmp_test_activate 
+0x603c 026075 beq lmp_test_control ,send_lmp_test_control 
+:      026076 send_lmp_error:
+0x603d 026077 branch assert 
+0x603e 026078 rtn 
+:      026079 send_lmp_escape:
+0x603f 026080 beq lmp_ext_accepted ,send_lmpext_accepted 
+0x6040 026081 beq lmp_ext_features_res ,send_lmpext_features_res 
+0x6041 026082 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
+0x6042 026083 beq lmp_ext_features_req ,send_lmpext_features_req 
+0x6043 026084 beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
+0x6044 026085 beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
+0x6045 026086 beq lmp_io_cap_req ,send_lmp_io_cap_req 
+0x6046 026087 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
+0x6047 026088 beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
+0x6048 026089 beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
+0x6049 026090 branch assert 
+:      026096 send_lmp_accepted:
+0x604a 026097 force 2 ,pdata 
+0x604b 026098 call msg_send_lmp 
+0x604c 026099 fetch 1 ,mem_lmi_opcode 
+0x604d 026100 istore 1 ,contw 
+0x604e 026101 call send_lmp_follow 
+0x604f 026102 bpatchx patch30_3 ,mem_patch30 
+0x6050 026103 fetch 1 ,mem_lmi_opcode 
+0x6051 026104 beq lmp_in_rand ,send_lmp_accepted_inrand 
+0x6052 026105 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
+0x6053 026106 beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
+0x6054 026107 beq lmp_sniff_req ,send_lmp_accept_sniff_req 
+0x6055 026108 beq lmp_host_connection_req ,send_lmp_accepted_connection 
+0x6056 026109 beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
+0x6057 026110 beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
+0x6058 026111 rtn 
+:      026113 send_create_conn_start_l2cap_timer_sm:
+0x6059 026114 fetch 1 ,mem_conn_sm 
+0x605a 026115 rtn blank 
+0x605b 026116 jam conn_sm_wait_done ,mem_conn_sm 
+0x605c 026117 setarg timer_enpt_waite 
+0x605d 026118 arg enpt_delay_timer ,queue 
+0x605e 026119 branch timer_init 
+:      026121 send_lmp_accept_sniff_req:
+0x605f 026122 branch sniff_init 
+:      026123 send_lmp_not_accepted:
+0x6060 026124 force 3 ,pdata 
+0x6061 026125 call msg_send_lmp 
+0x6062 026126 fetch 1 ,mem_lmi_opcode 
+0x6063 026127 beq lmp_au_rand ,send_not_accept_aurand 
+0x6064 026128 istore 1 ,contw 
+0x6065 026129 fetch 1 ,mem_lmo_reason 
+0x6066 026130 istore 1 ,contw 
+0x6067 026131 branch send_lmp_follow 
+:      026133 send_not_accept_aurand:
+0x6068 026134 istore 1 ,contw 
+0x6069 026135 fetch 1 ,mem_lmo_reason 
+0x606a 026136 istore 1 ,contw 
+0x606b 026137 arg mem_sres_tid ,temp 
+0x606c 026138 branch special_tid_store 
+:      026140 send_lmpext_accepted:
+0x606d 026141 force 4 ,queue 
+0x606e 026142 call send_lmpext 
+0x606f 026143 setarg lmp_escape 
+0x6070 026144 istore 1 ,contw 
+0x6071 026145 fetch 1 ,mem_lmi_opcode 
+0x6072 026146 set0 7 ,pdata 
+0x6073 026147 istore 1 ,contw 
+0x6074 026148 fetch 1 ,mem_lmi_opcode 
+0x6075 026149 branch send_lmp_follow 
+:      026151 send_lmpext_not_accepted:
+0x6076 026152 force 5 ,queue 
+0x6077 026153 call send_lmpext 
+0x6078 026154 setarg lmp_escape 
+0x6079 026155 istore 1 ,contw 
+0x607a 026156 fetch 1 ,mem_lmi_opcode 
+0x607b 026157 set0 7 ,pdata 
+0x607c 026158 istore 1 ,contw 
+0x607d 026159 fetch 1 ,mem_lmo_reason 
+0x607e 026160 istore 1 ,contw 
+0x607f 026161 branch send_lmp_follow 
+:      026164 send_lmp_accepted_inrand:
+0x6080 026165 call clear_linkkey 
+0x6081 026166 call tid_check 
+0x6082 026167 rtn true 
+0x6083 026168 branch lmp_generate_key 
+:      026170 send_lmp_accepted_enc_mode:
+0x6084 026171 fetch 1 ,mem_op 
+0x6085 026172 bbit1 op_start_enc ,send_lmp_accepted_enc_start 
+0x6086 026173 rtnbit0 op_stop_enc 
+0x6087 026174 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x6088 026175 set0 op_stop_enc ,pdata 
+0x6089 026176 call tid_reply 
+0x608a 026177 branch send_lmp_accepted_enc_exit 
+:      026178 send_lmp_accepted_enc_start:
+0x608b 026179 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x608c 026180 set0 op_start_enc ,pdata 
+:      026181 send_lmp_accepted_enc_exit:
+0x608d 026182 store 1 ,mem_op 
+0x608e 026183 rtn 
+:      026185 send_lmp_accepted_enc_key:
+0x608f 026186 call check_localsm 
+0x6090 026187 branch lmp_start_encryption ,true 
+0x6091 026188 rtn 
+:      026190 send_lmp_accepted_connection:
+0x6092 026191 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+0x6093 026193 fetch 1 ,mem_lmp_conn_state 
+0x6094 026194 set1 received_conn_req ,pdata 
+0x6095 026195 store 1 ,mem_lmp_conn_state 
+0x6096 026196 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x6097 026197 branch ui_ipc_send_event 
+:      026200 send_lmp_accept_dhkey_check:
+0x6098 026201 rtn 
+:      026205 send_lmpext_features_res:
+0x6099 026206 force 12 ,queue 
+0x609a 026207 call send_lmpext 
+0x609b 026208 setarg 0x01 
+0x609c 026209 istore 1 ,contw 
+0x609d 026210 fetch 2 ,mem_lmpext_ssp_enable 
+0x609e 026211 istore 2 ,contw 
+0x609f 026212 setarg 0 
+0x60a0 026213 istore 3 ,contw 
+0x60a1 026214 setarg 0x00 
+0x60a2 026215 istore 4 ,contw 
+0x60a3 026216 branch send_lmp_reply 
+:      026217 send_lmpext_io_cap_res:
+0x60a4 026218 force 5 ,queue 
+0x60a5 026219 call send_lmpext 
+0x60a6 026220 fetch 3 ,mem_sp_iocap_local 
+0x60a7 026221 istore 3 ,contw 
+0x60a8 026222 call send_lmp_reply 
+0x60a9 026223 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
+0x60aa 026224 fetch 1 ,mem_sp_iocap_local 
+0x60ab 026225 beq display_yesno ,responder_iocap_display_yesno 
+0x60ac 026226 beq keyboard_only ,responder_iocap_keyboard_only 
+0x60ad 026227 beq no_input_no_output ,responder_iocap_no_input_no_output 
+0x60ae 026228 rtn 
+:      026230 responder_iocap_keyboard_only:
+0x60af 026231 fetch 1 ,mem_sp_iocap_remote 
+0x60b0 026232 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
+0x60b1 026233 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
+0x60b2 026234 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
+0x60b3 026235 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
+0x60b4 026236 rtn 
+:      026239 responder_iocap_display_yesno:
+0x60b5 026240 fetch 1 ,mem_sp_iocap_remote 
+0x60b6 026241 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
+0x60b7 026242 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
+0x60b8 026243 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
+0x60b9 026244 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
+0x60ba 026245 rtn 
+:      026248 responder_iocap_no_input_no_output:
+0x60bb 026249 fetch 1 ,mem_sp_iocap_remote 
+0x60bc 026250 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
+0x60bd 026251 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
+0x60be 026252 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
+0x60bf 026253 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
+0x60c0 026254 rtn 
+:      026256 responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+:      026257 responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+:      026258 responder_iocap_display_yesno_initiator_iocap_display_only:
+:      026259 responder_iocap_no_input_no_output_initiator_iocap_display_only:
+:      026260 responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+:      026261 responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+:      026262 responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+:      026263 set_ssp_mode_justwork:
+0x60c1 026264 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
+0x60c2 026265 fetch 1 ,mem_classic_bt_flag 
+0x60c3 026266 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
+0x60c4 026267 rtn 
+:      026269 responder_iocap_display_yesno_initiator_iocap_display_yesno:
+:      026270 set_ssp_mode_numeric_comparison:
+0x60c5 026271 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
+0x60c6 026272 rtn 
+:      026274 responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+:      026275 responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
+:      026276 responder_iocap_keyboard_only_initiator_iocap_display_only:
+:      026277 responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+:      026278 set_ssp_mode_passkey:
+0x60c7 026279 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
+0x60c8 026280 rtn 
+:      026283 classic_bt_set_reject_justwork_flag:
+0x60c9 026284 arg flag_ssp_reject_justwork ,queue 
+0x60ca 026285 branch classic_bluetooth_set_flag 
+:      026287 classic_bt_clr_reject_justwork_flag:
+0x60cb 026288 arg flag_ssp_reject_justwork ,queue 
+0x60cc 026289 branch classic_bluetooth_clr_flag 
+:      026291 classic_bluetooth_set_flag:
+0x60cd 026292 fetch 1 ,mem_classic_bt_flag 
+0x60ce 026293 qset1 pdata 
+0x60cf 026294 store 1 ,mem_classic_bt_flag 
+0x60d0 026295 rtn 
+:      026297 classic_bluetooth_clr_flag:
+0x60d1 026298 fetch 1 ,mem_classic_bt_flag 
+0x60d2 026299 qset0 pdata 
+0x60d3 026300 store 1 ,mem_classic_bt_flag 
+0x60d4 026301 rtn 
+:      026304 send_lmp_io_cap_req:
+0x60d5 026305 force 5 ,queue 
+0x60d6 026306 call send_lmpext 
+0x60d7 026307 fetch 3 ,mem_sp_iocap_local 
+0x60d8 026308 istore 3 ,contw 
+0x60d9 026309 branch send_lmp_request 
+:      026312 send_lmpext_sniff_subrating_req:
+0x60da 026314 rtn 
+:      026315 send_lmpext_sniff_subrating_res:
+0x60db 026316 force 9 ,queue 
+0x60dc 026317 call send_lmpext 
+0x60dd 026318 fetch 1 ,mem_subsniff_rate 
+0x60de 026319 istore 1 ,contw 
+0x60df 026320 fetch 2 ,mem_subsniff_tcmax 
+0x60e0 026321 istore 2 ,contw 
+0x60e1 026322 fetch 4 ,mem_subsniff_instant 
+0x60e2 026323 istore 4 ,contw 
+0x60e3 026324 branch send_lmp_reply 
+:      026326 send_lmp_name_res:
+0x60e4 026327 force 17 ,pdata 
+0x60e5 026328 call msg_send_lmp 
+0x60e6 026329 fetch 1 ,mem_lmi_opcode 
+0x60e7 026330 copy pdata ,temp 
+0x60e8 026331 beq 0x00 ,send_lmp_name_res_offset_ok 
+0x60e9 026332 beq 0x0e ,send_lmp_name_res_offset_ok 
+0x60ea 026333 beq 0x1c ,send_lmp_name_res_offset_ok 
+0x60eb 026334 rtn 
+:      026335 send_lmp_name_res_offset_ok:
+0x60ec 026336 istore 1 ,contw 
+0x60ed 026337 fetch 1 ,mem_local_name_length 
+0x60ee 026338 istore 1 ,contw 
+0x60ef 026339 arg 14 ,loopcnt 
+0x60f0 026340 setarg mem_local_name 
+0x60f1 026341 iadd temp ,contr 
+0x60f2 026342 call memcpy 
+0x60f3 026343 branch send_lmp_reply 
+:      026346 send_lmp_timing_accuracy_res:
+0x60f4 026347 force 3 ,pdata 
+0x60f5 026348 call msg_send_lmp 
+0x60f6 026349 setarg 0x0114 
+0x60f7 026350 istore 2 ,contw 
+0x60f8 026351 branch send_lmp_reply 
+:      026353 send_lmp_clkoffset_res:
+0x60f9 026355 force 3 ,pdata 
+0x60fa 026356 call msg_send_lmp 
+0x60fb 026357 fetch 4 ,mem_clke_bt 
+0x60fc 026358 isub clkn_bt ,pdata 
+0x60fd 026359 branch send_lmp_clkoffset_res_master ,master 
+0x60fe 026360 sub pdata ,0 ,pdata 
+:      026361 send_lmp_clkoffset_res_master:
+0x60ff 026363 rshift2 pdata ,pdata 
+0x6100 026364 set0 15 ,pdata 
+0x6101 026365 istore 2 ,contw 
+0x6102 026366 branch send_lmp_reply 
+:      026368 send_lmp_version_res:
+0x6103 026369 force 6 ,pdata 
+0x6104 026370 call msg_send_lmp 
+0x6105 026371 fetch 5 ,mem_lmp_version 
+0x6106 026372 istore 5 ,contw 
+0x6107 026373 branch send_lmp_reply 
+:      026375 send_lmp_features_res:
+0x6108 026376 force 9 ,pdata 
+0x6109 026377 call msg_send_lmp 
+0x610a 026378 fetch 8 ,mem_features 
+0x610b 026379 istore 8 ,contw 
+0x610c 026380 branch send_lmp_reply 
+:      026387 send_lmpext_features_req:
+0x610d 026388 force 12 ,queue 
+0x610e 026389 call send_lmpext 
+0x610f 026390 setarg 0x01 
+0x6110 026391 istore 1 ,contw 
+0x6111 026392 fetch 2 ,mem_lmpext_ssp_enable 
+0x6112 026393 istore 2 ,contw 
+0x6113 026394 setarg 0 
+0x6114 026395 istore 3 ,contw 
+0x6115 026396 setarg 0x00 
+0x6116 026397 istore 4 ,contw 
+0x6117 026398 branch send_lmp_request 
+:      026400 send_lmpext_packet_type_table_req:
+0x6118 026401 force 3 ,queue 
+0x6119 026402 call send_lmpext 
+0x611a 026403 fetch 1 ,mem_ptt 
+0x611b 026404 istore 1 ,contw 
+0x611c 026405 disable user 
+0x611d 026406 call send_lmp_request 
+0x611e 026407 nrtn user 
+0x611f 026408 nrtn master 
+0x6120 026409 fetch 1 ,mem_afh_cfg 
+0x6121 026410 rtnbit0 afh_cfg_on 
+0x6122 026411 call afh_init 
+0x6123 026412 branch afh_open_all_channels 
+:      026415 ssp_enable:
+0x6124 026416 bpatchx patch30_4 ,mem_patch30 
+0x6125 026417 fetch 1 ,mem_features + 6 
+0x6126 026418 set1 param_featrue_ssp ,pdata 
+0x6127 026419 store 1 ,mem_features + 6 
+0x6128 026420 setarg param_lmpext_ssp_enable 
+0x6129 026421 store 2 ,mem_lmpext_ssp_enable 
+0x612a 026422 rtn 
+:      026424 ssp_disable:
+0x612b 026425 bpatchx patch30_5 ,mem_patch30 
+0x612c 026426 fetch 1 ,mem_features + 6 
+0x612d 026427 set0 param_featrue_ssp ,pdata 
+0x612e 026428 store 1 ,mem_features + 6 
+0x612f 026429 setarg 0 
+0x6130 026430 store 2 ,mem_lmpext_ssp_enable 
+0x6131 026431 rtn 
+:      026433 afh_init:
+0x6132 026434 jam 0x3 ,mem_afh_cfg 
+0x6133 026435 setarg 0 
+0x6134 026436 store 4 ,mem_afh_timer 
+0x6135 026437 arg mem_afh_map_lo ,contw 
+0x6136 026438 call afh_reset_map 
+0x6137 026439 arg mem_afh_map_new ,contw 
+0x6138 026440 call afh_reset_map 
+0x6139 026441 arg mem_afh_classify_channel_map ,contw 
+0x613a 026442 call afh_reset_map 
+0x613b 026443 branch afh_clear_error_counter 
+:      026444 afh_open_all_channels:
+0x613c 026445 arg mem_afh_map_new ,contw 
+0x613d 026446 call afh_reset_map 
+0x613e 026447 call afh_clear_error_counter 
+0x613f 026448 branch afh_set_send_flag 
+:      026451 afh_reset_map:
+0x6140 026452 setarg 0xffffff 
+0x6141 026453 istore 3 ,contw 
+0x6142 026454 istore 3 ,contw 
+0x6143 026455 istore 3 ,contw 
+0x6144 026456 setarg 0x7f 
+0x6145 026457 istore 1 ,contw 
+0x6146 026458 rtn 
+:      026459 afh_clear_error_counter:
+0x6147 026460 setarg 0 
+0x6148 026461 store 2 ,mem_afh_error_total 
+0x6149 026462 rtn 
+:      026463 afh_set_send_flag:
+0x614a 026464 fetch 1 ,mem_afh_cfg 
+0x614b 026465 set1 send_lmp_set_afh ,pdata 
+0x614c 026466 store 1 ,mem_afh_cfg 
+0x614d 026467 rtn 
+:      026470 send_lmpext_pause_encryption_req:
+0x614e 026471 force 2 ,queue 
+0x614f 026472 call send_lmpext 
+0x6150 026473 nbranch send_lmp_reply ,master 
+0x6151 026475 branch send_lmp_request 
+:      026479 send_lmp_detach:
+0x6152 026480 force 2 ,pdata 
+0x6153 026481 call msg_send_lmp 
+0x6154 026482 fetch 1 ,mem_disconn_reason_send 
+0x6155 026483 istore 1 ,contw 
+0x6156 026484 call send_lmp_request 
+:      026485 prepare_disconnect:
+0x6157 026486 fetch 1 ,mem_op 
+0x6158 026487 set1 op_disconn ,pdata 
+0x6159 026488 store 1 ,mem_op 
+0x615a 026489 jam 50 ,mem_conn_timer 
+0x615b 026490 rtn 
+:      026493 send_lmp_no_payload:
+0x615c 026494 force 1 ,pdata 
+0x615d 026495 call msg_send_lmp 
+0x615e 026496 branch send_lmp_request 
+:      026497 send_lmp_nopayload_reply:
+0x615f 026498 force 1 ,pdata 
+0x6160 026499 call msg_send_lmp 
+0x6161 026500 branch send_lmp_reply 
+:      026503 send_lmp_encryption_mode_req:
+0x6162 026504 force 2 ,pdata 
+0x6163 026505 call msg_send_lmp 
+0x6164 026506 fetch 1 ,mem_state_map 
+0x6165 026507 isolate0 smap_encryption ,pdata 
+0x6166 026508 setflag true ,0 ,pdata 
+0x6167 026509 and_into 1 ,pdata 
+0x6168 026510 istore 1 ,contw 
+0x6169 026511 branch send_lmp_request 
+:      026514 send_lmp_superto:
+0x616a 026515 force 3 ,pdata 
+0x616b 026516 call msg_send_lmp 
+0x616c 026517 fetch 2 ,mem_supervision_to 
+0x616d 026518 istore 2 ,contw 
+0x616e 026519 branch send_lmp_request 
+:      026521 send_lmp_name_req:
+0x616f 026522 jam 250 ,mem_conn_timer 
+0x6170 026523 force 2 ,pdata 
+0x6171 026524 call msg_send_lmp 
+0x6172 026525 fetch 1 ,mem_name_offset 
+0x6173 026526 istore 1 ,contw 
+0x6174 026527 branch send_lmp_request 
+:      026529 send_lmp_test_control:
+0x6175 026530 force 10 ,pdata 
+0x6176 026531 call msg_send_lmp 
+0x6177 026532 arg mem_temp_payload ,contr 
+0x6178 026533 force 9 ,loopcnt 
+:      026534 send_lmp_test_control_loop:
+0x6179 026535 ifetch 1 ,contr 
+0x617a 026536 xor_into 0x55 ,pdata 
+0x617b 026537 istore 1 ,contw 
+0x617c 026538 loop send_lmp_test_control_loop 
+0x617d 026539 branch send_lmp_request 
+:      026541 send_lmp_quality_of_service_req:
+0x617e 026542 branch send_lmp_request 
+:      026543 send_lmp_unit_key:
+0x617f 026544 branch send_lmp_request 
+:      026546 send_lmp_slot_offset:
+0x6180 026547 rtn master 
+0x6181 026548 call calc_slot_offset 
+0x6182 026549 force 9 ,pdata 
+0x6183 026550 call msg_send_lmp 
+0x6184 026551 fetch 2 ,mem_slot_offset 
+0x6185 026552 istore 2 ,contw 
+0x6186 026553 fetch 3 ,mem_lap 
+0x6187 026554 istore 3 ,contw 
+0x6188 026555 fetch 1 ,mem_uap 
+0x6189 026556 istore 1 ,contw 
+0x618a 026557 fetch 2 ,mem_nap 
+0x618b 026558 istore 2 ,contw 
+0x618c 026559 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
+0x618d 026560 set0 mark_switch_initiated ,mark 
+0x618e 026561 call send_lmp_request 
+0x618f 026562 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6190 026563 rtn 
+:      026564 send_lmp_slot_offset_reply:
+0x6191 026565 call send_lmp_reply 
+0x6192 026566 jam lmp_accepted ,mem_lmo_opcode2 
+0x6193 026567 jam lmp_switch_req ,mem_lmi_opcode2 
+0x6194 026568 rtn 
+:      026570 send_lmp_switch_req:
+0x6195 026571 arg 0x200 ,temp 
+0x6196 026572 branch switch_on_native ,master 
+0x6197 026573 deposit clke_bt 
+0x6198 026574 branch switch_slack 
+:      026575 switch_on_native:
+0x6199 026576 deposit clkn_bt 
+:      026577 switch_slack:
+0x619a 026578 deposit bt_clk 
+0x619b 026579 iadd temp ,pdata 
+0x619c 026580 and_into 0x1fc ,pdata 
+0x619d 026581 store 4 ,mem_sniff_anchor 
+0x619e 026582 force 5 ,pdata 
+0x619f 026583 call msg_send_lmp 
+0x61a0 026584 fetch 4 ,mem_sniff_anchor 
+0x61a1 026585 rshift pdata ,pdata 
+0x61a2 026586 istore 4 ,contw 
+0x61a3 026587 branch send_lmp_request 
+:      026589 send_lmp_sniff_req:
+0x61a4 026590 force 10 ,pdata 
+0x61a5 026591 call msg_send_lmp 
+0x61a6 026592 arg mem_sniff_payload ,contr 
+0x61a7 026593 ifetch 9 ,contr 
+0x61a8 026594 istore 9 ,contw 
+0x61a9 026595 branch send_lmp_request 
+:      026598 send_lmp_timing_accuracy_req:
+0x61aa 026600 force 3 ,pdata 
+0x61ab 026601 call msg_send_lmp 
+0x61ac 026602 setarg 0x0114 
+0x61ad 026603 istore 2 ,contw 
+0x61ae 026604 branch send_lmp_request 
+:      026606 send_lmp_unsniff_req:
+0x61af 026608 force 1 ,pdata 
+0x61b0 026609 call msg_send_lmp 
+0x61b1 026618 branch send_lmp_request 
+:      026621 send_lmp_max_slot:
+0x61b2 026622 force 2 ,pdata 
+0x61b3 026623 call msg_send_lmp 
+0x61b4 026624 fetch 1 ,mem_max_slot 
+0x61b5 026625 istore 1 ,contw 
+0x61b6 026626 branch send_lmp_request 
+:      026629 send_lmp_max_slot_req:
+0x61b7 026630 force 2 ,pdata 
+0x61b8 026631 call msg_send_lmp 
+0x61b9 026632 setarg 0x05 
+0x61ba 026633 istore 1 ,contw 
+0x61bb 026634 branch send_lmp_request 
+:      026637 send_lmp_inc_power:
+0x61bc 026638 force 2 ,pdata 
+0x61bd 026639 call msg_send_lmp 
+0x61be 026640 setarg 0x00 
+0x61bf 026641 istore 1 ,contw 
+0x61c0 026642 branch send_lmp_request 
+:      026645 send_lmp_setup_complete_by_module:
+0x61c1 026646 jam lmp_max_slot_req ,mem_lmo_opcode2 
+0x61c2 026647 rtn 
+:      026648 send_lmp_setup_complete:
+0x61c3 026649 fetch 1 ,mem_device_option 
+0x61c4 026650 sub pdata ,dvc_op_module ,null 
+0x61c5 026651 call send_lmp_setup_complete_by_module ,zero 
+0x61c6 026652 fetch 1 ,mem_state 
+0x61c7 026653 set1 state_conn_comp ,pdata 
+0x61c8 026654 store 1 ,mem_state 
+0x61c9 026655 copy clkn_bt ,pdata 
+0x61ca 026656 store 4 ,mem_aurand_send_delay_time 
+0x61cb 026657 fetch 1 ,mem_lmp_conn_state 
+0x61cc 026658 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
+0x61cd 026659 set1 sent_setup_complete ,pdata 
+0x61ce 026660 store 1 ,mem_lmp_conn_state 
+0x61cf 026661 jam bt_evt_setup_complete ,mem_fifo_temp 
+0x61d0 026662 call ui_ipc_send_event 
+0x61d1 026663 force 1 ,pdata 
+0x61d2 026664 call msg_send_lmp 
+0x61d3 026665 branch send_lmp_request 
+:      026666 send_lmp_setup_complete_has_sent:
+0x61d4 026667 jam 0 ,mem_lmp_to_send 
+0x61d5 026668 rtn 
+:      026670 send_lmp_version_req:
+0x61d6 026671 force 6 ,pdata 
+0x61d7 026672 call msg_send_lmp 
+0x61d8 026673 fetch 5 ,mem_lmp_version 
+0x61d9 026674 istore 5 ,contw 
+0x61da 026675 branch send_lmp_request 
+:      026677 send_lmp_features_req:
+0x61db 026678 force 9 ,pdata 
+0x61dc 026679 call msg_send_lmp 
+0x61dd 026680 fetch 8 ,mem_features 
+0x61de 026681 istore 8 ,contw 
+0x61df 026682 branch send_lmp_request 
+:      026684 sp_master_send_io_cap_get:
+0x61e0 026685 jam sp_flag_commit ,mem_master_sp_flag 
+0x61e1 026686 fetch 1 ,mem_sp_local_key_invalid 
+0x61e2 026687 rtnne sp_key_valid 
+0x61e3 026688 jam sp_master_stat_start_done ,mem_master_sp_state 
+0x61e4 026689 rtn 
+:      026691 sp_master_send_io_cap_send:
+0x61e5 026692 call tid_initiate 
+0x61e6 026693 jam lmp_io_cap_req ,mem_lmo_opcode2 
+0x61e7 026694 jam sp_stat_key_send ,mem_master_sp_state 
+0x61e8 026695 rtn 
+:      026698 sp_master_send_lmp_encapsulated_header:
+0x61e9 026699 call tid_initiate 
+0x61ea 026700 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61eb 026701 jam sp_stat_random_send ,mem_master_sp_state 
+0x61ec 026702 rtn 
+:      026704 sp_master_commitment_compare:
+0x61ed 026705 arg mem_sp_calc_result_high ,rega 
+0x61ee 026706 arg mem_sp_confirm_remote ,regb 
+0x61ef 026707 arg 16 ,loopcnt 
+0x61f0 026708 call string_compare 
+0x61f1 026709 branch sp_master_commitment_compare_success ,zero 
+0x61f2 026710 jam sp_stat_null ,mem_master_sp_state 
+0x61f3 026711 call master_clear_mem_master_sp_flag 
+0x61f4 026712 jam pdu_not_allowed ,mem_lmo_reason2 
+0x61f5 026713 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61f6 026714 branch reject_lmp_packet 
+:      026715 sp_master_commitment_compare_success:
+0x61f7 026716 jam sp_stat_confirm_calc ,mem_master_sp_state 
+0x61f8 026717 call master_set_mem_master_sp_flag 
+0x61f9 026718 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61fa 026719 branch accept_lmp_msg 
+:      026723 sp_master_send_lmp_simple_pairing_number:
+0x61fb 026724 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x61fc 026725 rtn 
+:      026729 sp_send_lmp_encapsulated_header:
+0x61fd 026732 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61fe 026734 rtn 
+:      026740 send_lmp_encapsulated_header:
+0x61ff 026741 jam 0 ,mem_sp_local_key_send_count 
+0x6200 026742 force 4 ,pdata 
+0x6201 026743 call msg_send_lmp 
+0x6202 026744 force encapsulated_major_type_p192 ,pdata 
+0x6203 026745 istore 1 ,contw 
+0x6204 026746 force encapsulated_minor_type_p192 ,pdata 
+0x6205 026747 istore 1 ,contw 
+0x6206 026748 force encapsulated_len_p192 ,pdata 
+0x6207 026749 istore 1 ,contw 
+0x6208 026750 call check_localsm 
+0x6209 026751 branch send_lmp_request ,true 
+0x620a 026752 branch send_lmp_reply 
+:      026754 send_lmp_encapsulated_payload:
+0x620b 026756 force 17 ,pdata 
+0x620c 026757 call msg_send_lmp 
+0x620d 026758 fetch 1 ,mem_sp_local_key_send_count 
+0x620e 026759 arg mem_sp_pubkey_local ,contr 
+0x620f 026760 iadd contr ,contr 
+0x6210 026761 ifetch 8 ,contr 
+0x6211 026762 istore 8 ,contw 
+0x6212 026763 ifetch 8 ,contr 
+0x6213 026764 istore 8 ,contw 
+0x6214 026765 fetch 1 ,mem_sp_local_key_send_count 
+0x6215 026766 increase 16 ,pdata 
+0x6216 026767 store 1 ,mem_sp_local_key_send_count 
+0x6217 026768 call check_localsm 
+0x6218 026769 branch send_lmp_request ,true 
+0x6219 026770 branch send_lmp_reply 
+:      026773 sp_send_lmp_simple_pairing_comfirm:
+0x621a 026774 jam sp_stat_random_recv ,mem_sp_state 
+0x621b 026775 jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
+0x621c 026776 rtn 
+:      026777 send_lmp_simple_pairing_comfirm:
+0x621d 026780 force 17 ,pdata 
+0x621e 026781 call msg_send_lmp 
+0x621f 026782 arg mem_sp_calc_result_high ,contr 
+0x6220 026783 ifetch 8 ,contr 
+0x6221 026784 istore 8 ,contw 
+0x6222 026785 ifetch 8 ,contr 
+0x6223 026786 istore 8 ,contw 
+0x6224 026787 branch send_lmp_reply 
+:      026789 sp_send_lmp_simple_pairing_number:
+0x6225 026790 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x6226 026791 rtn 
+:      026793 send_lmp_simple_pairing_number:
+0x6227 026795 call check_localsm 
+0x6228 026796 call sp_local_random_key_generator ,true 
+0x6229 026797 force 17 ,pdata 
+0x622a 026798 call msg_send_lmp 
+0x622b 026799 arg mem_sp_random_local ,contr 
+0x622c 026800 ifetch 8 ,contr 
+0x622d 026801 istore 8 ,contw 
+0x622e 026802 ifetch 8 ,contr 
+0x622f 026803 istore 8 ,contw 
+0x6230 026804 call check_localsm 
+0x6231 026805 nbranch send_lmp_reply ,true 
+0x6232 026806 branch send_lmp_request ,true 
+:      026808 master_sp_sm_end:
+0x6233 026810 jam sp_stat_done ,mem_master_sp_state 
+:      026811 sp_aurand_send:
+0x6234 026812 call tid_initiate 
+0x6235 026813 jam lmp_au_rand ,mem_lmo_opcode2 
+0x6236 026814 call check_localsm_master 
+0x6237 026815 branch sp_master_key_prarm_push ,true 
+0x6238 026816 branch sp_link_key_prarm_push 
+:      026817 master_sp_send_lmp_dhkey_check:
+0x6239 026818 call tid_reply 
+:      026819 sp_send_lmp_dhkey_check:
+0x623a 026820 jam lmp_dhkey_check ,mem_lmo_opcode2 
+0x623b 026821 rtn 
+:      026822 send_lmp_dhkey_check:
+0x623c 026824 force 17 ,pdata 
+0x623d 026825 call msg_send_lmp 
+0x623e 026826 arg mem_sp_calc_result_high ,contr 
+0x623f 026827 ifetch 8 ,contr 
+0x6240 026828 istore 8 ,contw 
+0x6241 026829 ifetch 8 ,contr 
+0x6242 026830 istore 8 ,contw 
+0x6243 026831 call check_localsm 
+0x6244 026832 nbranch send_lmp_reply ,true 
+0x6245 026833 branch send_lmp_request ,true 
+:      026835 send_lmp_enc_key_size_mask_res:
+0x6246 026836 force 3 ,pdata 
+0x6247 026837 call msg_send_lmp 
+0x6248 026838 setarg 0xfffe 
+0x6249 026839 istore 2 ,contw 
+0x624a 026840 branch send_lmp_reply 
+:      026842 send_lmp_auto_rate:
+0x624b 026843 branch send_lmp_request 
+:      026844 send_lmp_clkoffset_req:
+0x624c 026845 branch send_lmp_request 
+:      026846 send_lmp_quality_of_service:
+0x624d 026847 branch send_lmp_request 
+:      026848 send_lmp_test_activate:
+0x624e 026849 branch send_lmp_request 
+:      026854 send_lmp_comb_key:
+0x624f 026855 call generate_random_number 
+0x6250 026856 arg mem_lap ,rega 
+0x6251 026857 call generate_linkkey 
+0x6252 026858 force 17 ,pdata 
+0x6253 026859 call msg_send_lmp 
+0x6254 026860 arg mem_kinit ,rega 
+0x6255 026861 arg mem_random_number ,regb 
+0x6256 026862 call xor16 
+0x6257 026863 nbranch send_lmp_follow ,master 
+0x6258 026864 branch send_lmp_tid 
+:      026866 send_lmp_inrand:
+0x6259 026867 call generate_random_number 
+0x625a 026868 arg mem_plap ,rega 
+0x625b 026869 call generate_kinit 
+:      026870 send_lmp_rand:
+0x625c 026871 force 17 ,pdata 
+0x625d 026872 call msg_send_lmp 
+0x625e 026873 arg mem_random_number ,contr 
+0x625f 026874 call memcpy16 
+0x6260 026875 fetch 1 ,mem_conn_sm 
+0x6261 026876 beq conn_sm_auth_wait ,send_lmp_request 
+0x6262 026877 beq conn_sm_pairing_wait ,send_lmp_request 
+0x6263 026878 branch send_lmp_tid 
+:      026880 send_lmp_aurand:
+0x6264 026881 fetch 1 ,mem_pairing_auth 
+0x6265 026882 branch send_lmp_aurand_notpairing ,blank 
+0x6266 026883 call check_localsm 
+0x6267 026884 call tid_initiate ,true 
+0x6268 026885 ncall tid_reply ,true 
+0x6269 026886 branch send_lmp_aurand_common 
+:      026887 send_lmp_aurand_notpairing:
+0x626a 026888 call tid_initiate 
+:      026889 send_lmp_aurand_common:
+0x626b 026890 call generate_random_number 
+0x626c 026891 branch send_lmp_rand 
+:      026893 send_lmp_sres:
+0x626d 026894 arg mem_lap ,rega 
+0x626e 026895 call function_e1 
+0x626f 026896 force 5 ,pdata 
+0x6270 026897 call msg_send_lmp 
+0x6271 026898 fetch 4 ,mem_input_store 
+0x6272 026899 istore 4 ,contw 
+0x6273 026900 arg mem_sres_tid ,temp 
+0x6274 026901 call special_tid_store 
+0x6275 026902 call copy_aco 
+0x6276 026903 call check_localsm 
+0x6277 026904 branch send_lmp_sres_master ,true 
+0x6278 026905 jam done_encryp ,mem_wait_encryption 
+0x6279 026906 fetch 1 ,mem_pairing_auth 
+0x627a 026907 rtn blank 
+0x627b 026908 jam lmp_au_rand ,mem_lmo_opcode2 
+:      026909 send_lmp_sres_master:
+0x627c 026910 fetch 1 ,mem_link_key_exists 
+0x627d 026911 rtn blank 
+:      026912 send_lmp_sres_startenc:
+0x627e 026913 call check_localsm 
+0x627f 026914 nbranch send_lmp_sres_startenc_slave ,true 
+0x6280 026915 fetch 1 ,mem_auth_enable 
+0x6281 026916 rtn blank 
+0x6282 026917 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6283 026918 rtn 
+:      026919 send_lmp_sres_startenc_slave:
+0x6284 026920 rtnmark0 mark_slave_in_rand_accepted 
+0x6285 026921 set0 mark_slave_in_rand_accepted ,mark 
+0x6286 026922 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6287 026923 rtn 
+:      026927 send_lmp_start_encryption:
+0x6288 026928 call generate_random_number 
+0x6289 026929 call function_e3 
+0x628a 026930 force 17 ,pdata 
+0x628b 026931 call msg_send_lmp 
+0x628c 026932 arg mem_random_number ,contr 
+0x628d 026933 call memcpy16 
+0x628e 026934 branch send_lmp_tid 
+:      026936 send_lmp_stop_encryption_req:
+0x628f 026937 force 1 ,pdata 
+0x6290 026938 call msg_send_lmp 
+0x6291 026939 branch send_lmp_tid 
+:      026941 send_lmp_encryption_key_size_req:
+0x6292 026942 force 2 ,pdata 
+0x6293 026943 call msg_send_lmp 
+0x6294 026944 force 16 ,pdata 
+0x6295 026945 istore 1 ,contw 
+0x6296 026946 store 1 ,mem_key_size 
+0x6297 026947 branch send_lmp_tid 
+:      026949 msg_send_lmp:
+0x6298 026951 lshift3 pdata ,pdata 
+0x6299 026952 or_into 0x07 ,pdata 
+0x629a 026953 store 1 ,mem_lmo_header_length 
+0x629b 026954 arg 17 ,loopcnt 
+0x629c 026955 arg mem_lmo_payload ,contw 
+0x629d 026956 call clear_mem 
+0x629e 026957 arg mem_lmo_payload ,contw 
+0x629f 026958 rtn 
+:      026960 send_lmpext:
+0x62a0 026961 and pdata ,0x7f ,rega 
+0x62a1 026962 jam lmp_escape ,mem_lmp_to_send 
+0x62a2 026963 deposit queue 
+0x62a3 026964 call msg_send_lmp 
+0x62a4 026965 deposit rega 
+0x62a5 026966 istore 1 ,contw 
+0x62a6 026967 rtn 
+:      026969 send_lmp_follow:
+0x62a7 026970 fetch 1 ,mem_lmp_to_send 
+0x62a8 026971 lshift pdata ,pdata 
+0x62a9 026972 fetcht 1 ,mem_state_map 
+0x62aa 026973 isolate1 smap_lmptid ,temp 
+0x62ab 026974 setflag true ,0 ,pdata 
+0x62ac 026975 branch send_lmp_exit 
+:      026978 send_lmp_tid:
+0x62ad 026979 fetcht 1 ,mem_state_map 
+0x62ae 026980 and_into 1 ,temp 
+0x62af 026981 branch send_lmp_end 
+:      026983 send_lmp_reply:
+0x62b0 026984 force 0 ,temp 
+0x62b1 026985 branch send_lmp_end 
+:      026987 send_lmp_request:
+0x62b2 026988 force 1 ,temp 
+:      026989 send_lmp_end:
+0x62b3 026990 fetch 1 ,mem_lmp_to_send 
+0x62b4 026991 lshift pdata ,pdata 
+0x62b5 026992 setflag master ,0 ,pdata 
+0x62b6 026993 ixor temp ,pdata 
+:      026994 send_lmp_exit:
+0x62b7 026995 store 1 ,mem_lmo_header_opcode 
+0x62b8 026996 jam 0 ,mem_lmp_to_send 
+0x62b9 026997 call lmo_fifo_process_lmo0empty 
+0x62ba 026998 enable user 
+0x62bb 026999 rtn 
+:      027002 lmo_fifo_check:
+0x62bc 027003 fetch 1 ,mem_lmo_opcode2 
+0x62bd 027004 rtn blank 
+0x62be 027005 call lmo_fifo_process 
+0x62bf 027006 fetch 1 ,mem_lmo_opcode2 
+0x62c0 027007 rtn 
+:      027009 lmo_fifo_process:
+0x62c1 027010 bpatchx patch30_6 ,mem_patch30 
+0x62c2 027011 fetch 1 ,mem_lmp_to_send 
+0x62c3 027012 branch lmo_fifo_process_lmo0empty ,blank 
+0x62c4 027013 fetch 1 ,mem_lmo_opcode1 
+0x62c5 027014 nrtn blank 
+0x62c6 027015 branch lmo_fifo_process_lmo2to1 
+:      027016 lmo_fifo_process_lmo0empty:
+0x62c7 027017 fetch 1 ,mem_lmo_opcode1 
+0x62c8 027018 branch lmo_fifo_process_lmo1_empty ,blank 
+0x62c9 027019 fetch 3 ,mem_lmo_opcode1 
+0x62ca 027020 store 3 ,mem_lmp_to_send 
+0x62cb 027021 fetcht 1 ,mem_lmo_tid1 
+0x62cc 027022 fetch 1 ,mem_state_map 
+0x62cd 027023 set0 smap_lmptid ,pdata 
+0x62ce 027024 ior temp ,pdata 
+0x62cf 027025 store 1 ,mem_state_map 
+0x62d0 027026 jam 0 ,mem_lmo_opcode1 
+:      027027 lmo_fifo_process_lmo2to1:
+0x62d1 027028 fetch 1 ,mem_lmo_opcode2 
+0x62d2 027029 rtn blank 
+0x62d3 027030 fetch 4 ,mem_lmo_opcode2 
+0x62d4 027031 store 4 ,mem_lmo_opcode1 
+0x62d5 027032 jam 0 ,mem_lmo_opcode2 
+0x62d6 027033 rtn 
+:      027034 lmo_fifo_process_lmo1_empty:
+0x62d7 027035 fetch 1 ,mem_lmo_opcode2 
+0x62d8 027036 rtn blank 
+0x62d9 027037 fetch 3 ,mem_lmo_opcode2 
+0x62da 027038 store 3 ,mem_lmp_to_send 
+0x62db 027039 fetcht 1 ,mem_lmo_tid2 
+0x62dc 027040 fetch 1 ,mem_state_map 
+0x62dd 027041 set0 smap_lmptid ,pdata 
+0x62de 027042 ior temp ,pdata 
+0x62df 027043 store 1 ,mem_state_map 
+0x62e0 027044 jam 0 ,mem_lmo_opcode2 
+0x62e1 027045 rtn 
+:      027048 special_tid_store:
+0x62e2 027049 bpatchx patch30_7 ,mem_patch30 
+0x62e3 027050 fetch 1 ,mem_state_map 
+0x62e4 027051 copy pdata ,regc 
+0x62e5 027052 ifetch 1 ,temp 
+0x62e6 027053 call pop_tid_follow 
+0x62e7 027054 call send_lmp_follow 
+0x62e8 027055 copy regc ,pdata 
+0x62e9 027056 store 1 ,mem_state_map 
+0x62ea 027057 rtn 
+:      027059 tid_reply:
+0x62eb 027060 fetcht 1 ,mem_state_map 
+0x62ec 027061 set0 smap_lmptidinit ,temp 
+0x62ed 027062 storet 1 ,mem_state_map 
+0x62ee 027063 rtn 
+:      027065 tid_initiate:
+0x62ef 027066 fetcht 1 ,mem_state_map 
+0x62f0 027067 set1 smap_lmptidinit ,temp 
+0x62f1 027068 storet 1 ,mem_state_map 
+0x62f2 027069 rtn 
+:      027072 tid_check:
+0x62f3 027073 nsetflag master ,smap_lmptid ,pdata 
+0x62f4 027074 fetcht 1 ,mem_state_map 
+0x62f5 027075 ixor temp ,pdata 
+0x62f6 027076 isolate1 smap_lmptid ,pdata 
+0x62f7 027077 rtn 
+:      027080 tid_set_reply:
+0x62f8 027081 fetch 1 ,mem_state_map 
+0x62f9 027082 setflag master ,smap_lmptid ,pdata 
+0x62fa 027083 store 1 ,mem_state_map 
+0x62fb 027084 rtn 
+:      027087 check_localsm:
+0x62fc 027088 fetch 1 ,mem_sp_localsm 
+0x62fd 027089 compare local_statemachine ,pdata ,0x7f 
+0x62fe 027090 rtn 
+:      027091 setlocalsm_master:
+0x62ff 027092 fetch 1 ,mem_sp_localsm 
+0x6300 027093 set1 7 ,pdata 
+0x6301 027094 store 1 ,mem_sp_localsm 
+0x6302 027095 rtn 
+:      027096 setlocalsm_slave:
+0x6303 027097 fetch 1 ,mem_sp_localsm 
+0x6304 027098 set0 7 ,pdata 
+0x6305 027099 store 1 ,mem_sp_localsm 
+0x6306 027100 rtn 
+:      027101 check_localsm_master:
+0x6307 027102 fetch 1 ,mem_sp_localsm 
+0x6308 027103 isolate1 7 ,pdata 
+0x6309 027104 store 1 ,mem_sp_localsm 
+0x630a 027105 rtn 
+:      027107 generate_random_number:
+0x630b 027109 arg mem_random_number ,contw 
+:      027110 generate_random:
+0x630c 027111 force 16 ,loopcnt 
+:      027112 generate_random_another:
+:      027113 generate_random_loop:
+0x630d 027114 random pdata 
+0x630e 027115 istore 1 ,contw 
+0x630f 027116 loop generate_random_another 
+0x6310 027117 rtn 
+:      027119 generate_linkkey:
+0x6311 027120 call function_e21 
+0x6312 027121 arg mem_link_key ,rega 
+0x6313 027122 arg mem_input_store ,regb 
+0x6314 027123 ifetch 8 ,rega 
+0x6315 027124 fetcht 1 ,mem_state 
+0x6316 027125 nsetflag blank ,state_combkey ,temp 
+0x6317 027126 storet 1 ,mem_state 
+0x6318 027127 copy rega ,contw 
+0x6319 027128 call xor16 
+0x631a 027129 branch generate_linkkey_continue 
+:      027135 process_conn_sm:
+0x631b 027137 bpatchx patch31_0 ,mem_patch31 
+0x631c 027139 call lmo_fifo_check 
+0x631d 027140 nrtn blank 
+:      027141 process_conn_sm_continue:
+0x631e 027142 fetch 1 ,mem_conn_sm 
+0x631f 027143 rtn blank 
+0x6320 027147 beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
+0x6321 027148 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
+0x6322 027149 beq conn_sm_send_features ,host_create_conn_send_features 
+0x6323 027150 beq conn_sm_wait_features_res ,host_create_conn_waiting 
+0x6324 027151 beq conn_sm_send_switch ,host_create_conn_send_switch 
+0x6325 027152 beq conn_sm_auth_pair ,host_create_conn_auth_pair 
+0x6326 027153 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
+0x6327 027154 beq conn_sm_encrypt ,host_create_conn_encrypt 
+0x6328 027155 beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
+0x6329 027156 beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
+0x632a 027157 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
+0x632b 027158 beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
+0x632c 027159 beq conn_sm_detach_delay ,host_create_conn_master_detach 
+0x632d 027160 beq conn_sm_send_version ,host_create_conn_send_version 
+0x632e 027161 beq conn_sm_wait_version ,host_create_conn_waiting 
+0x632f 027162 beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
+0x6330 027163 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
+0x6331 027164 beq conn_sm_wait_features_ext ,host_create_conn_waiting 
+0x6332 027165 beq conn_sm_pairing ,host_create_conn_pairing 
+0x6333 027166 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
+0x6334 027167 beq conn_sm_auth ,host_create_conn_auth 
+0x6335 027168 beq conn_sm_auth_wait ,host_create_conn_auth_wait 
+0x6336 027169 beq conn_sm_done ,host_create_conn_done 
+0x6337 027170 beq conn_sm_wait_done ,host_create_conn_done_wait 
+0x6338 027171 jam conn_sm_standby ,mem_conn_sm 
+0x6339 027173 rtn 
+:      027174 host_create_conn_done:
+0x633a 027175 fetch 1 ,mem_lmp_conn_state 
+0x633b 027176 rtnbit0 received_setup_complete 
+0x633c 027177 rtnbit0 sent_setup_complete 
+0x633d 027178 jam conn_sm_standby ,mem_conn_sm 
+0x633e 027179 call host_conn_judge_encrypt 
+0x633f 027180 branch scheduler_start_upper_sm 
+:      027182 host_conn_judge_encrypt:
+0x6340 027183 fetch 1 ,mem_connection_options 
+0x6341 027184 rtnbit0 connection_encrypt 
+0x6342 027185 jam conn_sm_encrypt_wait ,mem_conn_sm 
+0x6343 027186 rtn 
+:      027188 host_create_conn_done_wait:
+0x6344 027189 arg enpt_delay_timer ,queue 
+0x6345 027190 call timer_check 
+0x6346 027191 nrtn blank 
+0x6347 027192 jam conn_sm_done ,mem_conn_sm 
+0x6348 027193 rtn 
+:      027195 host_create_conn_auth:
+0x6349 027196 fetch 1 ,mem_connection_options 
+0x634a 027197 set0 connection_auth ,pdata 
+0x634b 027198 store 1 ,mem_connection_options 
+0x634c 027199 jam conn_sm_auth_wait ,mem_conn_sm 
+0x634d 027200 jam lmp_au_rand ,mem_lmo_opcode2 
+0x634e 027201 rtn 
+:      027202 host_create_conn_auth_wait:
+0x634f 027203 rtn 
+:      027204 host_create_conn_pairing:
+0x6350 027205 fetch 1 ,mem_pincode_state 
+0x6351 027206 rtnne pincode_state_pincode_ready 
+0x6352 027207 call host_auth 
+0x6353 027208 jam conn_sm_pairing_wait ,mem_conn_sm 
+0x6354 027209 rtn 
+:      027211 host_create_conn_pairing_wait:
+0x6355 027212 rtn 
+:      027213 host_creat_conn_send_feat_ext:
+0x6356 027214 jam conn_sm_wait_features_ext ,mem_conn_sm 
+0x6357 027215 jam lmp_ext_features_req ,mem_lmo_opcode2 
+0x6358 027216 rtn 
+:      027217 host_create_conn_send_version:
+0x6359 027218 jam conn_sm_wait_version ,mem_conn_sm 
+0x635a 027219 jam lmp_version_req ,mem_lmo_opcode2 
+0x635b 027220 rtn 
+:      027222 host_creat_conn_wait_switch:
+0x635c 027223 fetch 1 ,mem_switch_flag 
+0x635d 027224 rtneq switch_flag_init 
+0x635e 027225 beq switch_flag_accept ,host_create_conn_switch_accept 
+0x635f 027226 arg switch_wait_timer ,queue 
+0x6360 027227 call timer_check 
+0x6361 027228 nrtn blank 
+0x6362 027229 jam switch_flag_init ,mem_switch_flag 
+0x6363 027230 branch host_create_conn_switch 
+:      027231 host_create_conn_switch_accept:
+0x6364 027232 rtn master 
+0x6365 027233 branch host_create_conn_auth_pair 
+:      027235 host_create_conn_send_features:
+0x6366 027236 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x6367 027237 jam lmp_features_req ,mem_lmo_opcode2 
+0x6368 027238 rtn 
+:      027239 host_create_conn_send_switch:
+0x6369 027240 jam lmp_switch_req ,mem_lmo_opcode2 
+0x636a 027241 set1 mark_switch_initiated ,mark 
+0x636b 027242 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x636c 027243 setarg 0x1ff 
+0x636d 027244 store 2 ,mem_soft_timer 
+0x636e 027245 rtn 
+:      027246 host_create_conn_send_conn_req:
+0x636f 027247 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x6370 027248 jam 0xff ,mem_soft_timer 
+0x6371 027249 set0 mark_reconn_recieve_switch ,mark 
+0x6372 027250 jam lmp_host_connection_req ,mem_lmo_opcode2 
+0x6373 027251 branch init_lmp_reinit 
+:      027252 host_create_conn_wait_accept:
+0x6374 027253 rtnmark1 mark_reconn_recieve_switch 
+0x6375 027254 fetch 2 ,mem_soft_timer 
+0x6376 027255 sub pdata ,1 ,pdata 
+0x6377 027256 branch host_create_conn_resend ,zero 
+0x6378 027257 store 2 ,mem_soft_timer 
+0x6379 027258 rtn 
+:      027259 host_create_conn_resend:
+0x637a 027260 jam conn_sm_send_switch ,mem_conn_sm 
+0x637b 027261 rtn 
+:      027262 host_create_conn_waiting:
+0x637c 027264 rtn 
+:      027266 host_create_conn_switch:
+0x637d 027267 fetch 1 ,mem_lmp_conn_state 
+0x637e 027268 rtnbit0 sent_setup_complete 
+0x637f 027269 rtnbit0 received_setup_complete 
+0x6380 027270 fetch 1 ,mem_connection_options 
+0x6381 027271 set0 connection_switch ,pdata 
+0x6382 027272 store 1 ,mem_connection_options 
+0x6383 027273 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6384 027274 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
+0x6385 027275 rtn 
+:      027277 host_create_conn_send_setup_complete:
+0x6386 027278 jam conn_sm_wait_setup_complete ,mem_conn_sm 
+0x6387 027279 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x6388 027280 rtn 
+:      027282 host_create_conn_wait_setup_complete:
+0x6389 027283 fetch 1 ,mem_lmp_conn_state 
+0x638a 027284 rtnbit0 received_setup_complete 
+0x638b 027285 jam conn_sm_standby ,mem_conn_sm 
+0x638c 027287 rtn 
+:      027288 host_create_conn_wait_setup_complete_rtn:
+0x638d 027289 jam conn_sm_auth_pair ,mem_conn_sm 
+0x638e 027290 rtn 
+:      027292 host_create_conn_master_detach:
+0x638f 027293 fetch 1 ,mem_soft_timer 
+0x6390 027294 increase -1 ,pdata 
+0x6391 027295 branch host_create_conn_send_detach ,blank 
+0x6392 027296 store 1 ,mem_soft_timer 
+0x6393 027297 rtn 
+:      027298 host_create_conn_send_detach:
+0x6394 027299 jam lmp_detach ,mem_lmo_opcode2 
+0x6395 027300 jam local_host ,mem_disconn_reason_send 
+0x6396 027301 jam 0 ,mem_conn_sm 
+0x6397 027302 rtn 
+:      027303 host_create_conn_auth_pair:
+0x6398 027305 fetch 1 ,mem_connection_options 
+0x6399 027306 bbit1 connection_switch ,host_create_conn_switch 
+0x639a 027307 bbit1 connection_auth ,host_create_conn_auth_pair_true 
+:      027308 host_create_conn_sm_done:
+0x639b 027309 jam conn_sm_done ,mem_conn_sm 
+0x639c 027310 rtn 
+:      027311 host_create_conn_auth_pair_true:
+0x639d 027312 fetch 1 ,mem_link_key_exists 
+0x639e 027313 branch host_create_conn_auth_pair_nokey ,blank 
+0x639f 027314 fetch 1 ,mem_lmp_conn_state 
+0x63a0 027315 rtnbit0 sent_setup_complete 
+0x63a1 027316 rtnbit0 received_setup_complete 
+0x63a2 027317 fetch 4 ,mem_aurand_send_delay_time 
+0x63a3 027318 arg 100 ,temp 
+0x63a4 027319 iadd temp ,temp 
+0x63a5 027320 copy clkn_bt ,pdata 
+0x63a6 027321 isub temp ,null 
+0x63a7 027322 nrtn positive 
+0x63a8 027323 branch host_create_conn_auth 
+:      027327 host_create_conn_auth_pair_nokey:
+0x63a9 027328 jam conn_sm_pairing ,mem_conn_sm 
+0x63aa 027329 jam 4 ,mem_pin_length 
+0x63ab 027330 setarg 0x3030 
+0x63ac 027331 store 2 ,mem_pin 
+0x63ad 027332 istore 2 ,contw 
+0x63ae 027333 jam pincode_state_pincode_ready ,mem_pincode_state 
+0x63af 027334 branch host_create_conn_pairing 
+:      027336 host_create_conn_auth_pair_wait:
+0x63b0 027337 rtn 
+:      027338 host_create_conn_encrypt:
+0x63b1 027339 fetch 1 ,mem_connection_options 
+0x63b2 027340 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
+0x63b3 027341 jam conn_sm_done ,mem_conn_sm 
+0x63b4 027342 rtn 
+:      027344 host_create_conn_encrypt_start:
+0x63b5 027345 fetch 1 ,mem_connection_options 
+0x63b6 027346 set0 connection_encrypt ,pdata 
+0x63b7 027347 store 1 ,mem_connection_options 
+0x63b8 027348 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x63b9 027349 rtn 
+:      027351 host_create_conn_encrypt_wait:
+0x63ba 027352 fetch 1 ,mem_wait_encryption 
+0x63bb 027353 rtn blank 
+0x63bc 027354 jam conn_sm_standby ,mem_conn_sm 
+0x63bd 027355 branch host_create_conn_encrypt_start 
+:      027357 host_create_conn_encrypt_wait_clear:
+0x63be 027358 jam conn_sm_send_setup_complete ,mem_conn_sm 
+0x63bf 027359 rtn 
+:      027361 host_auth:
+0x63c0 027362 fetch 1 ,mem_op 
+0x63c1 027363 bbit1 op_inrand_req ,remote_auth 
+0x63c2 027364 call tid_initiate 
+0x63c3 027365 jam lmp_in_rand ,mem_lmo_opcode2 
+0x63c4 027366 branch cmd_exit 
+:      027367 remote_auth:
+0x63c5 027368 fetch 1 ,mem_op 
+0x63c6 027369 set0 op_inrand_req ,pdata 
+0x63c7 027370 store 1 ,mem_op 
+0x63c8 027371 call lmp_accept_inrand 
+0x63c9 027372 call tid_set_reply 
+0x63ca 027373 branch cmd_exit 
+:      027375 pincode_reinit:
+0x63cb 027376 setarg 4 
+0x63cc 027377 store 1 ,mem_pin_length 
+0x63cd 027378 setarg 0x3030 
+0x63ce 027379 istore 2 ,contw 
+0x63cf 027380 istore 2 ,contw 
+0x63d0 027381 rtn 
+:      027387 twspi_reset:
+0x63d1 027388 bpatchx patch31_4 ,mem_patch31 
+0x63d2 027389 hfetch 1 ,core_gpio_oe3 
+0x63d3 027390 arg 0x06 ,temp 
+0x63d4 027391 ior temp ,pdata 
+0x63d5 027392 hstore 1 ,core_gpio_oe3 
+0x63d6 027393 hfetch 1 ,core_gpio_out3 
+0x63d7 027394 ior temp ,pdata 
+0x63d8 027395 hstore 1 ,core_gpio_out3 
+0x63d9 027396 call twspi_disable 
+0x63da 027397 hfetch 1 ,core_gpio_out3 
+0x63db 027398 set0 1 ,pdata 
+0x63dc 027399 set0 2 ,pdata 
+0x63dd 027400 hstore 1 ,core_gpio_out3 
+0x63de 027401 nop 30 
+0x63df 027402 branch twspi_enable 
+:      027404 twspi_reset2:
+0x63e0 027405 hfetch 1 ,core_gpio_oe3 
+0x63e1 027406 arg 0xc0 ,temp 
+0x63e2 027407 ior temp ,pdata 
+0x63e3 027408 hstore 1 ,core_gpio_oe3 
+0x63e4 027409 hfetch 1 ,core_gpio_out3 
+0x63e5 027410 ior temp ,pdata 
+0x63e6 027411 hstore 1 ,core_gpio_out3 
+0x63e7 027412 call twspi_disable 
+0x63e8 027413 hfetch 1 ,core_gpio_out3 
+0x63e9 027414 set0 6 ,pdata 
+0x63ea 027415 set0 7 ,pdata 
+0x63eb 027416 hstore 1 ,core_gpio_out3 
+0x63ec 027417 nop 30 
+0x63ed 027418 branch twspi_enable2 
+:      027420 twspi_disable:
+0x63ee 027421 hfetch 1 ,core_gpio_sel1 
+0x63ef 027422 and pdata ,0xfc ,pdata 
+0x63f0 027423 hstore 1 ,core_gpio_sel1 
+0x63f1 027424 rtn 
+:      027425 twspi_enable:
+0x63f2 027426 hfetch 1 ,core_gpio_sel1 
+0x63f3 027427 or pdata ,0x01 ,pdata 
+0x63f4 027428 hstore 1 ,core_gpio_sel1 
+0x63f5 027429 rtn 
+:      027430 twspi_enable2:
+0x63f6 027431 hfetch 1 ,core_gpio_sel1 
+0x63f7 027432 or pdata ,0x03 ,pdata 
+0x63f8 027433 set0 4 ,pdata 
+0x63f9 027434 hstore 1 ,core_gpio_sel1 
+0x63fa 027435 rtn 
+:      027439 sensor_read:
+0x63fb 027440 copy pdata ,regb 
+0x63fc 027441 call spi_ncs_enable 
+0x63fd 027442 nop 100 
+0x63fe 027443 copy regb ,pdata 
+0x63ff 027444 call twspi_read 
+0x6400 027445 copy pdata ,regb 
+0x6401 027446 call spi_ncs_disable 
+0x6402 027447 nop 100 
+0x6403 027448 copy regb ,pdata 
+0x6404 027449 rtn 
+:      027451 sensor_write:
+0x6405 027452 copy pdata ,regb 
+0x6406 027453 call spi_ncs_enable 
+0x6407 027454 nop 100 
+0x6408 027455 copy regb ,pdata 
+0x6409 027456 call twspi_write 
+0x640a 027457 call spi_ncs_disable 
+0x640b 027458 nop 100 
+0x640c 027459 rtn 
+:      027462 spi_ncs_gpio_init:
+0x640d 027463 fetcht 1 ,mem_spi_ncs_gpio 
+0x640e 027464 branch gpio_config_output 
+:      027467 spi_ncs_enable:
+0x640f 027468 fetcht 1 ,mem_spi_ncs_gpio 
+0x6410 027469 branch gpio_out_active 
+:      027472 spi_ncs_disable:
+0x6411 027473 fetcht 1 ,mem_spi_ncs_gpio 
+0x6412 027474 branch gpio_out_inactive 
+:      027477 twspi_write:
+0x6413 027478 branch spid_write_reg 
+:      027480 twspi_read:
+0x6414 027481 branch spid_read_reg 
+:      027488 read_function_aes:
+0x6415 027489 nbranch read_function ,user 
+0x6416 027490 hfetch 1 ,core_gpio_key2 
+0x6417 027491 or_into 0x2 ,pdata 
+0x6418 027492 hstore 1 ,core_gpio_key2 
+:      027493 read_function:
+0x6419 027494 copy temp ,null 
+0x641a 027495 branch read_fuction_zero ,zero 
+0x641b 027496 copy regc ,pc 
+:      027497 read_fuction_zero:
+0x641c 027498 isolate0 0 ,null 
+0x641d 027499 branch set_ucode_status 
+:      027502 get_block_header:
+0x641e 027503 force 4 ,temp 
+:      027504 get_block_header0:
+0x641f 027505 arg mem_ucode_buf ,rega 
+0x6420 027506 hfetch 1 ,core_gpio_key2 
+0x6421 027507 and_into 0xfd ,pdata 
+0x6422 027508 hstore 1 ,core_gpio_key2 
+0x6423 027509 call read_function 
+0x6424 027510 arg 0x55aa ,rega 
+0x6425 027511 fetch 2 ,mem_ucode_buf 
+0x6426 027512 ifetcht 2 ,contr 
+0x6427 027513 isub rega ,null 
+0x6428 027514 rtn 
+:      027516 read_first_block:
+0x6429 027517 arg 2 ,temp 
+0x642a 027518 arg mem_ucode_ptr ,rega 
+0x642b 027519 call read_function 
+0x642c 027520 fetch 2 ,mem_ucode_ptr 
+0x642d 027521 store 2 ,mem_addr_mi 
+0x642e 027522 call get_iv ,user 
+0x642f 027523 rtn 
+:      027525 get_iv:
+0x6430 027526 arg 16 ,temp 
+0x6431 027527 arg mem_ucode_keybuf ,rega 
+0x6432 027528 hfetch 1 ,core_gpio_key2 
+0x6433 027529 and_into 0xfd ,pdata 
+0x6434 027530 hstore 1 ,core_gpio_key2 
+0x6435 027531 call read_function 
+0x6436 027532 arg mem_ucode_keybuf ,contr 
+0x6437 027533 arg 16 ,loopcnt 
+0x6438 027534 call aes_load_data 
+0x6439 027535 call aes_init 
+0x643a 027536 call aes_clear_data 
+0x643b 027537 branch do_aes_cbc 
+:      027539 load_storage:
+0x643c 027540 disable match 
+0x643d 027541 call get_block_header 
+0x643e 027542 nrtn zero 
+0x643f 027543 enable match 
+0x6440 027544 jam 0x80 ,core_ucode_ctrl 
+0x6441 027545 jam 0 ,core_ucode_hi 
+0x6442 027546 jam 0 ,core_ucode_low 
+0x6443 027547 arg core_ucode_data ,rega 
+0x6444 027548 call read_function_aes 
+0x6445 027549 jam 0x0 ,core_ucode_ctrl 
+:      027550 load_storage_loop:
+0x6446 027551 arg 6 ,temp 
+0x6447 027552 call get_block_header0 
+0x6448 027553 nrtn zero 
+0x6449 027554 ifetch 2 ,contr 
+0x644a 027555 iforce rega 
+0x644b 027556 call read_function 
+0x644c 027557 branch load_storage_loop 
+:      027561 reload_eeprom:
+0x644d 027562 call clean_mem 
+0x644e 027563 setarg 0x1000 
+0x644f 027564 store 2 ,mem_addr_mi 
+0x6450 027565 arg iicd_read_eep ,regc 
+0x6451 027566 arg 2 ,loopcnt 
+:      027567 reload_eeprom_loop:
+0x6452 027568 call get_block_header 
+0x6453 027569 nrtn zero 
+0x6454 027570 fetch 2 ,mem_addr_mi 
+0x6455 027571 byteswap pdata ,pdata 
+0x6456 027572 iadd temp ,pdata 
+0x6457 027573 byteswap pdata ,pdata 
+0x6458 027574 store 2 ,mem_addr_mi 
+0x6459 027575 loop reload_eeprom_loop 
+0x645a 027576 branch load_storage_loop 
+:      027578 loadcode:
+0x645b 027579 call clean_mem 
+0x645c 027580 disable user 
+0x645d 027581 call otp_enable_chgpump 
+0x645e 027582 setarg otp_ucode_flag 
+0x645f 027583 arg mem_otp_ucode_flag ,rega 
+0x6460 027584 arg 2 ,temp 
+0x6461 027585 call otpd_read_data 
+0x6462 027586 fetch 2 ,mem_otp_ucode_flag 
+0x6463 027587 bbit0 otp_uflag_aes ,loadcode_otp 
+0x6464 027588 jam 0x25 ,core_clkoff 
+0x6465 027589 setarg otp_ucode_aeskey 
+0x6466 027590 arg mem_ucode_keybuf ,rega 
+0x6467 027591 arg 16 ,temp 
+0x6468 027592 call otpd_read_data 
+0x6469 027593 jam lock_otp ,core_misc_ctrl 
+0x646a 027594 set1 mark_otp_encrypt ,mark 
+0x646b 027595 arg mem_ucode_keybuf ,contr 
+0x646c 027596 call load_key 
+0x646d 027597 enable user 
+:      027598 loadcode_otp:
+0x646e 027599 jam 0 ,mem_loadcode_times 
+:      027600 loadcode_otp_2:
+0x646f 027601 call loadcode_check_times 
+0x6470 027602 fetch 2 ,mem_otp_ucode_flag 
+0x6471 027603 byteswap pdata ,pdata 
+0x6472 027604 arg 0x7ff ,temp 
+0x6473 027605 iand temp ,pdata 
+0x6474 027606 branch loadcode_iic ,zero 
+0x6475 027607 call otp_set_addr 
+0x6476 027608 arg otpd_read_code ,regc 
+0x6477 027609 call get_iv ,user 
+0x6478 027610 call load_storage 
+0x6479 027611 fetch 1 ,mem_ucode_status 
+0x647a 027612 bbit0 0 ,loadcode_otp_2 
+:      027614 loadcode_iic:
+0x647b 027615 call otp_disable_chgpump 
+0x647c 027616 jam 0 ,mem_loadcode_times 
+:      027617 loadcode_iic_2:
+0x647d 027618 call loadcode_check_times 
+0x647e 027619 call clear_eeprom_size_2k 
+0x647f 027620 fetch 1 ,mem_otp_ucode_flag 
+0x6480 027621 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6481 027622 call loadcode_iic_by_eeprom 
+0x6482 027623 nbranch loadcode_iic_eeprom_2k ,match 
+0x6483 027624 fetch 1 ,mem_ucode_status 
+0x6484 027625 bbit0 0 ,loadcode_iic_2 
+0x6485 027626 branch loadcode_hci 
+:      027627 loadcode_iic_eeprom_2k:
+0x6486 027628 call set_eeprom_size_2k 
+0x6487 027629 fetch 1 ,mem_otp_ucode_flag 
+0x6488 027630 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6489 027631 call loadcode_iic_by_eeprom 
+0x648a 027632 nbranch loadcode_spi ,match 
+0x648b 027633 fetch 1 ,mem_ucode_status 
+0x648c 027634 bbit0 0 ,loadcode_iic_2 
+0x648d 027635 branch loadcode_hci 
+:      027637 loadcode_spi:
+0x648e 027638 jam 0 ,mem_loadcode_times 
+:      027639 loadcode_spi_2:
+0x648f 027640 call loadcode_check_times 
+0x6490 027641 fetch 1 ,mem_otp_ucode_flag 
+0x6491 027642 bbit1 otp_uflag_skip_flash ,loadcode_hci 
+0x6492 027643 setarg 0x0 
+0x6493 027644 store 3 ,mem_addr_hi 
+0x6494 027645 call spid_init_flash 
+0x6495 027646 arg spid_load_flash ,regc 
+0x6496 027647 call read_first_block 
+0x6497 027648 call load_storage 
+0x6498 027649 nbranch loadcode_hci ,match 
+0x6499 027650 fetch 1 ,mem_ucode_status 
+0x649a 027651 bbit0 0 ,loadcode_spi_2 
+:      027653 loadcode_hci:
+0x649b 027654 bmark1 mark_otp_encrypt ,loadcode_hci_enc 
+0x649c 027655 call clear_key_buf 
+:      027656 loadcode_hci_enc:
+0x649d 027657 fetch 1 ,mem_otp_ucode_flag 
+0x649e 027658 bbit0 otp_uflag_hci ,clear_key_buf 
+0x649f 027659 jam 0x21 ,core_clkoff 
+0x64a0 027660 call hci_init 
+:      027661 loadcode_hci_loop:
+0x64a1 027662 call hci_rx_packet 
+0x64a2 027663 branch loadcode_hci_loop 
+:      027665 clear_key_buf:
+0x64a3 027666 setarg 0 
+0x64a4 027667 store 8 ,mem_ucode_keybuf 
+0x64a5 027668 store 8 ,mem_ucode_keybuf + 8 
+0x64a6 027669 force regidx_key ,regext_index 
+0x64a7 027670 call aes_clear 
+0x64a8 027671 jam 0x21 ,core_clkoff 
+0x64a9 027672 rtn 
+:      027675 loadcode_iic_by_eeprom:
+0x64aa 027676 setarg 0x0 
+0x64ab 027677 store 2 ,mem_addr_mi 
+0x64ac 027678 arg iicd_read_eep ,regc 
+0x64ad 027679 call iicd_init_12m 
+0x64ae 027680 call read_first_block 
+0x64af 027681 branch load_storage 
+:      027684 loadcode_check_times:
+0x64b0 027685 fetch 1 ,mem_loadcode_times 
+0x64b1 027686 increase 1 ,pdata 
+0x64b2 027687 sub pdata ,3 ,null 
+0x64b3 027688 nbranch loadcode_error ,positive 
+0x64b4 027689 store 1 ,mem_loadcode_times 
+0x64b5 027690 rtn 
+:      027692 loadcode_error:
+0x64b6 027693 call clear_key_buf 
+0x64b7 027694 call ice_break 
+0x64b8 027695 rtn 
+:      027699 set_ucode_status:
+0x64b9 027700 fetch 1 ,mem_ucode_status 
+0x64ba 027701 lshift pdata ,pdata 
+0x64bb 027702 setflag true ,0 ,pdata 
+0x64bc 027703 isolate0 15 ,rega 
+0x64bd 027704 rtn true 
+0x64be 027705 store 1 ,mem_ucode_status 
+0x64bf 027706 rtn 
+:      027709 decrypt_code:
+0x64c0 027710 hfetch 1 ,core_gpio_key2 
+0x64c1 027711 rtnbit0 1 
+0x64c2 027712 branch decrypt_code_skip 
+:      027713 decrypt_code_loop:
+0x64c3 027714 hfetch 1 ,core_dma_status 
+0x64c4 027715 qisolate1 pdata 
+0x64c5 027716 rtn true 
+:      027717 decrypt_code_skip:
+0x64c6 027718 hfetch 1 ,core_misc_status 
+0x64c7 027719 bbit0 1 ,decrypt_code_loop 
+0x64c8 027720 call do_aes_cbc 
+0x64c9 027721 branch decrypt_code_loop 
+:      027725 load_ucode:
+0x64ca 027726 fetch 2 ,mem_patch_ptr 
+0x64cb 027727 rtn blank 
+0x64cc 027728 jam 0x80 ,core_ucode_ctrl 
+0x64cd 027729 jam 0 ,core_ucode_hi 
+0x64ce 027730 jam 0 ,core_ucode_low 
+0x64cf 027731 fetcht 2 ,mem_patch_len 
+0x64d0 027732 lshift2 temp ,loopcnt 
+0x64d1 027733 iforce contr 
+:      027734 load_ucode_loop:
+0x64d2 027735 ifetch 1 ,contr 
+0x64d3 027736 hstore 1 ,core_ucode_data 
+0x64d4 027737 loop load_ucode_loop 
+0x64d5 027738 jam 0x0 ,core_ucode_ctrl 
+0x64d6 027739 rtn 
+:      027744 spid_init:
+0x64d7 027745 bpatchx patch31_5 ,mem_patch31 
+0x64d8 027746 call spid_init_common 
+0x64d9 027747 branch twspi_enable 
+:      027749 spid_init2:
+0x64da 027750 call spid_init_common 
+0x64db 027751 call twspi_disable 
+0x64dc 027752 branch twspi_enable2 
+:      027754 spid_init_common:
+0x64dd 027755 fetch 1 ,mem_spi_init_clk 
+0x64de 027756 hstore 1 ,core_spid_ctrl 
+0x64df 027757 fetch 1 ,mem_spi_init_delay_time 
+0x64e0 027758 hstore 1 ,core_spid_delay 
+0x64e1 027759 setarg mem_spid_tbuf 
+0x64e2 027760 hstore 2 ,core_spid_txaddr 
+0x64e3 027761 setarg mem_spid_rbuf 
+0x64e4 027762 hstore 2 ,core_spid_rxaddr 
+0x64e5 027763 branch twspi_disable 
+:      027765 spid_reset:
+0x64e6 027766 hfetch 1 ,core_spid_ctrl 
+0x64e7 027767 set1 7 ,pdata 
+0x64e8 027768 hstore 1 ,core_spid_ctrl 
+0x64e9 027769 set0 7 ,pdata 
+0x64ea 027770 hstore 1 ,core_spid_ctrl 
+0x64eb 027771 rtn 
+:      027775 spid_write_reg:
+0x64ec 027776 set1 7 ,pdata 
+0x64ed 027777 store 2 ,mem_spid_tbuf 
+0x64ee 027778 bpatchx patch31_6 ,mem_patch31 
+0x64ef 027779 jam 2 ,core_spid_txlen 
+0x64f0 027780 jam 0 ,core_spid_rxlen 
+0x64f1 027781 jam spid_start ,core_misc_ctrl 
+0x64f2 027782 branch wait_spid_done 
+:      027785 spid_read_reg:
+0x64f3 027786 force 1 ,temp 
+:      027788 spid_read_regs:
+0x64f4 027790 store 1 ,mem_spid_tbuf 
+0x64f5 027791 bpatchx patch31_7 ,mem_patch31 
+0x64f6 027792 jam 1 ,core_spid_txlen 
+0x64f7 027793 hstoret 2 ,core_spid_rxlen 
+0x64f8 027794 jam spid_start ,core_misc_ctrl 
+0x64f9 027795 call wait_spid_done 
+0x64fa 027796 fetch 1 ,mem_spid_rbuf 
+0x64fb 027797 rtn 
+:      027799 wait_spid_done:
+0x64fc 027800 fetch 2 ,mem_afh_error_total 
+0x64fd 027801 increase 1 ,pdata 
+0x64fe 027802 store 2 ,mem_afh_error_total 
+0x64ff 027803 hfetch 1 ,core_dma_status 
+0x6500 027804 bbit0 spid_done ,wait_spid_done 
+0x6501 027805 rtn 
+:      027807 spid_init_flash:
+0x6502 027808 jam 0x40 ,core_spid_ctrl 
+0x6503 027809 jam 0x0 ,core_spid_delay 
+0x6504 027810 hfetch 1 ,core_gpio_sel1 
+0x6505 027811 set0 0 ,pdata 
+0x6506 027812 set1 1 ,pdata 
+0x6507 027813 hstore 1 ,core_gpio_sel1 
+0x6508 027814 setarg 0 
+0x6509 027815 store 4 ,mem_spid_tbuf 
+0x650a 027816 rtn 
+:      027819 spid_unlock_flash:
+0x650b 027820 setarg 0 
+0x650c 027821 hstore 2 ,core_spid_rxlen 
+0x650d 027822 setarg 1 
+0x650e 027823 hstore 2 ,core_spid_txlen 
+0x650f 027824 setarg mem_spid_tbuf 
+0x6510 027825 hstore 2 ,core_spid_txaddr 
+0x6511 027826 jam 6 ,mem_spid_tbuf 
+0x6512 027827 jam spid_start ,core_misc_ctrl 
+0x6513 027828 branch wait_spid_done 
+:      027843 flash_write:
+0x6514 027844 disable user 
+0x6515 027845 copy pdata ,regb 
+0x6516 027846 fetch 1 ,mem_spi_write_flash_sm 
+0x6517 027847 rtnne flash_sm_no_buys 
+0x6518 027848 enable user 
+0x6519 027849 copy regb ,pdata 
+0x651a 027850 branch flash_write_start 
+:      027853 flash_write_spi_sm_timer:
+0x651b 027854 fetch 1 ,mem_spi_write_flash_sm 
+0x651c 027855 beq flash_sm_start ,flash_write_start 
+0x651d 027856 beq flash_sm_erase_sector ,flash_erase_sector 
+0x651e 027857 beq flash_sm_wait_erase_sector ,flash_wait_erase_sector 
+0x651f 027858 beq flash_sm_write_data ,flash_write_data 
+0x6520 027859 beq flash_sm_wait_write_data ,flash_wait_write_data 
+0x6521 027860 rtn 
+:      027862 flash_write_start:
+0x6522 027863 store 3 ,mem_spi_write_addr 
+0x6523 027864 copy rega ,pdata 
+0x6524 027865 store 2 ,mem_spi_write_ptr 
+0x6525 027866 storet 2 ,mem_spi_write_len 
+0x6526 027867 jam flash_sm_erase_sector ,mem_spi_write_flash_sm 
+0x6527 027868 branch spid_init_flash 
+:      027869 flash_erase_sector:
+0x6528 027870 call spid_init_flash 
+0x6529 027871 jam flash_sm_wait_erase_sector ,mem_spi_write_flash_sm 
+0x652a 027872 call spid_unlock_flash 
+0x652b 027873 arg mem_spid_tbuf ,rega 
+0x652c 027874 fetch 3 ,mem_spi_write_addr 
+0x652d 027875 jam 4 ,core_spid_txlen 
+0x652e 027876 arg flash_command_sector_erase ,temp 
+0x652f 027877 branch spid_write_flash_common 
+:      027879 flash_wait_erase_sector:
+0x6530 027880 call spid_init_flash 
+0x6531 027881 call spid_unlock_flash 
+0x6532 027882 setarg flash_read_satus 
+0x6533 027883 call spid_read_reg 
+0x6534 027884 rtnbit1 flash_status_wip 
+0x6535 027885 jam flash_sm_write_data ,mem_spi_write_flash_sm 
+0x6536 027886 rtn 
+:      027887 flash_write_data:
+0x6537 027888 call spid_init_flash 
+0x6538 027889 jam flash_sm_wait_write_data ,mem_spi_write_flash_sm 
+0x6539 027890 call spid_unlock_flash 
+0x653a 027891 call flash_data_preserve 
+0x653b 027892 call spid_write_flash 
+0x653c 027893 branch flash_data_recover 
+:      027894 flash_wait_write_data:
+0x653d 027895 call spid_init_flash 
+0x653e 027896 call spid_unlock_flash 
+0x653f 027897 setarg flash_read_satus 
+0x6540 027898 call spid_read_reg 
+0x6541 027899 rtnbit1 flash_status_wip 
+0x6542 027900 jam flash_sm_no_buys ,mem_spi_write_flash_sm 
+0x6543 027901 fetch 2 ,mem_cb_spi_flash_write_complate 
+0x6544 027902 branch callback_func 
+:      027903 flash_data_recover:
+0x6545 027904 fetch 4 ,mem_temp 
+0x6546 027905 fetcht 2 ,mem_spi_write_ptr 
+0x6547 027906 increase -4 ,temp 
+0x6548 027907 istore 4 ,temp 
+0x6549 027908 rtn 
+:      027909 flash_data_preserve:
+0x654a 027910 fetcht 2 ,mem_spi_write_ptr 
+0x654b 027911 copy temp ,rega 
+0x654c 027912 increase -4 ,temp 
+0x654d 027913 ifetch 4 ,temp 
+0x654e 027914 store 4 ,mem_temp 
+0x654f 027915 fetcht 2 ,mem_spi_write_len 
+0x6550 027916 fetch 3 ,mem_spi_write_addr 
+0x6551 027917 rtn 
+:      027921 spid_write_flash:
+0x6552 027922 increase 4 ,temp 
+0x6553 027923 hstoret 2 ,core_spid_txlen 
+0x6554 027924 arg flash_command_write_data ,temp 
+0x6555 027925 increase -4 ,rega 
+:      027926 spid_write_flash_common:
+0x6556 027928 istoret 1 ,rega 
+0x6557 027929 rshift16 pdata ,temp 
+0x6558 027930 istoret 1 ,contw 
+0x6559 027931 rshift8 pdata ,temp 
+0x655a 027932 istoret 1 ,contw 
+0x655b 027933 istore 1 ,contw 
+0x655c 027934 deposit rega 
+0x655d 027935 hstore 2 ,core_spid_txaddr 
+0x655e 027936 setarg 0 
+0x655f 027937 hstore 2 ,core_spid_rxlen 
+0x6560 027938 jam spid_start ,core_misc_ctrl 
+0x6561 027939 branch wait_spid_done 
+:      027943 spid_read_flash:
+0x6562 027944 hstoret 2 ,core_spid_rxlen 
+0x6563 027945 rshift16 pdata ,temp 
+0x6564 027946 storet 1 ,mem_addr_hi 
+0x6565 027947 rshift8 pdata ,temp 
+0x6566 027948 storet 1 ,mem_addr_mi 
+0x6567 027949 store 1 ,mem_addr_lo 
+0x6568 027950 setarg 4 
+0x6569 027951 hstore 2 ,core_spid_txlen 
+0x656a 027952 jam flash_command_read_data ,mem_spid_tbuf 
+0x656b 027953 setarg mem_spid_tbuf 
+0x656c 027954 hstore 2 ,core_spid_txaddr 
+0x656d 027955 deposit rega 
+0x656e 027956 hstore 2 ,core_spid_rxaddr 
+0x656f 027957 hfetch 1 ,core_spid_ctrl 
+0x6570 027958 isolate0 15 ,rega 
+0x6571 027959 setflag true ,6 ,pdata 
+0x6572 027960 hstore 1 ,core_spid_ctrl 
+0x6573 027961 jam spid_start ,core_misc_ctrl 
+:      027962 spi_read_flash_wait:
+0x6574 027963 hfetch 1 ,core_dma_status 
+0x6575 027964 bbit1 7 ,spi_read_flash_wait 
+0x6576 027965 arg spid_done ,queue 
+0x6577 027966 branch wait_spid_done 
+:      027970 spid_load_flash:
+0x6578 027971 hstoret 2 ,core_spid_rxlen 
+0x6579 027972 setarg 4 
+0x657a 027973 hstore 2 ,core_spid_txlen 
+0x657b 027974 jam 3 ,mem_spid_tbuf 
+0x657c 027975 setarg mem_spid_tbuf 
+0x657d 027976 hstore 2 ,core_spid_txaddr 
+0x657e 027977 deposit rega 
+0x657f 027978 hstore 2 ,core_spid_rxaddr 
+0x6580 027979 hfetch 1 ,core_spid_ctrl 
+0x6581 027980 isolate0 15 ,rega 
+0x6582 027981 setflag true ,6 ,pdata 
+0x6583 027982 hstore 1 ,core_spid_ctrl 
+0x6584 027983 jam spid_start ,core_misc_ctrl 
+:      027984 spi_load_flash_wait:
+0x6585 027985 hfetch 1 ,core_dma_status 
+0x6586 027986 bbit1 7 ,spi_load_flash_wait 
+0x6587 027987 arg spid_done ,queue 
+0x6588 027988 call decrypt_code 
+0x6589 027989 call wait_spid_done 
+0x658a 027990 isolate1 spid_crcok ,pdata 
+0x658b 027991 call set_ucode_status 
+0x658c 027992 fetch 1 ,mem_addr_hi 
+0x658d 027993 lshift16 pdata ,regb 
+0x658e 027994 fetch 1 ,mem_addr_mi 
+0x658f 027995 lshift8 pdata ,pdata 
+0x6590 027996 ior regb ,regb 
+0x6591 027997 fetch 1 ,mem_addr_lo 
+0x6592 027998 ior regb ,pdata 
+0x6593 027999 iadd temp ,pdata 
+0x6594 028000 store 1 ,mem_addr_lo 
+0x6595 028001 rshift8 pdata ,pdata 
+0x6596 028002 store 1 ,mem_addr_mi 
+0x6597 028003 rshift8 pdata ,pdata 
+0x6598 028004 store 1 ,mem_addr_hi 
+0x6599 028005 rtn 
+:      028010 soft_reset_chip:
+0x659a 028011 jam 1 ,core_reset 
+0x659b 028012 rtn 
+:      028018 iic_init_390k:
+0x659c 028019 jam 12 ,core_iicd_scl_low 
+0x659d 028020 jam 13 ,core_iicd_scl_high 
+0x659e 028021 jam 13 ,core_iicd_start_setup 
+0x659f 028022 jam 13 ,core_iicd_start_hold 
+0x65a0 028023 jam 13 ,core_iicd_stop_setup 
+0x65a1 028024 jam 12 ,core_iicd_data_setup 
+0x65a2 028025 branch iicd_init_gpio 
+:      028028 iicd_init_12m:
+0x65a3 028029 jam 5 ,core_iicd_scl_low 
+0x65a4 028030 jam 7 ,core_iicd_scl_high 
+0x65a5 028031 jam 7 ,core_iicd_start_setup 
+0x65a6 028032 jam 7 ,core_iicd_start_hold 
+0x65a7 028033 jam 7 ,core_iicd_stop_setup 
+0x65a8 028034 jam 5 ,core_iicd_data_setup 
+:      028035 iicd_init_gpio:
+0x65a9 028036 hfetch 1 ,core_gpio_pu3 
+0x65aa 028037 or_into 0xc0 ,pdata 
+0x65ab 028038 hstore 1 ,core_gpio_pu3 
+0x65ac 028039 hfetch 1 ,core_gpio_sel1 
+0x65ad 028040 or_into 0x10 ,pdata 
+0x65ae 028041 hstore 1 ,core_gpio_sel1 
+0x65af 028042 rtn 
+:      028046 wait_iicd_done:
+0x65b0 028047 hfetch 1 ,core_dma_status 
+0x65b1 028048 bbit0 iicd_done ,wait_iicd_done 
+0x65b2 028049 rtn 
+:      028057 iicd_read_data:
+0x65b3 028058 hstore 2 ,core_iicd_txlen 
+0x65b4 028059 deposit rega 
+0x65b5 028060 hstore 2 ,core_iicd_txaddr 
+0x65b6 028061 deposit regb 
+0x65b7 028062 hstore 2 ,core_iicd_rxaddr 
+0x65b8 028063 deposit temp 
+0x65b9 028064 hstore 2 ,core_iicd_rxlen 
+0x65ba 028065 arg 1 ,temp 
+0x65bb 028066 nsetflag blank ,1 ,temp 
+0x65bc 028067 hstore 1 ,core_iicd_ctrl 
+0x65bd 028068 jam iicd_start ,core_misc_ctrl 
+0x65be 028069 branch wait_iicd_done 
+:      028072 set_eeprom_size_2k:
+0x65bf 028073 set1 mark_eeprom_size ,mark 
+0x65c0 028074 jam 0x08 ,mem_eeprom_block_size 
+0x65c1 028075 rtn 
+:      028077 clear_eeprom_size_2k:
+0x65c2 028078 set0 mark_eeprom_size ,mark 
+0x65c3 028079 jam 0x20 ,mem_eeprom_block_size 
+0x65c4 028080 rtn 
+:      028083 iicd_read_eep_data_size_2k:
+0x65c5 028084 fetch 1 ,mem_eeprom_base 
+0x65c6 028085 iadd regb ,pdata 
+0x65c7 028086 store 1 ,mem_addr_mi 
+0x65c8 028087 branch iicd_read_eep_size_2k 
+:      028089 iicd_read_eep_size_2k_lcadcode:
+0x65c9 028090 fetch 2 ,mem_addr_mi 
+0x65ca 028091 byteswap pdata ,pdata 
+0x65cb 028092 store 1 ,mem_addr_mi 
+:      028097 iicd_read_eep_size_2k:
+0x65cc 028098 setarg 3 
+0x65cd 028099 hstore 2 ,core_iicd_txlen 
+0x65ce 028100 jam 0xa0 ,mem_iicd_tbuf 
+0x65cf 028101 jam 0xa1 ,mem_iicd_tbuf + 2 
+0x65d0 028102 branch iicd_read_eep_common 
+:      028108 iicd_write_protect_eep_data:
+0x65d1 028109 storet 2 ,mem_temp 
+0x65d2 028110 call iicd_eeprom_write_enable 
+0x65d3 028111 fetcht 2 ,mem_temp 
+0x65d4 028112 call iicd_write_eep_data 
+0x65d5 028113 branch iicd_eeprom_write_disable 
+:      028115 iicd_eeprom_write_enable:
+0x65d6 028116 fetch 1 ,mem_eeprom_wp_gpio 
+0x65d7 028117 rtneq gpio_disable 
+0x65d8 028118 bbit0 6 ,iicd_wp_gpio_output_low 
+0x65d9 028119 setarg 150000 
+0x65da 028120 call sleep 
+:      028121 iicd_wp_gpio_output_low:
+0x65db 028122 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65dc 028123 branch gpio_out_active 
+:      028125 iicd_eeprom_write_disable:
+0x65dd 028126 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65de 028127 branch gpio_out_inactive 
+:      028132 iicd_read_eep_data:
+0x65df 028133 bpatchx patch32_0 ,mem_patch32 
+0x65e0 028134 bmark1 mark_eeprom_size ,iicd_read_eep_data_size_2k 
+0x65e1 028135 fetch 2 ,mem_eeprom_base 
+0x65e2 028136 iadd regb ,pdata 
+0x65e3 028137 byteswap pdata ,pdata 
+0x65e4 028138 store 2 ,mem_addr_mi 
+:      028141 iicd_read_eep:
+0x65e5 028142 bpatchx patch32_1 ,mem_patch32 
+0x65e6 028143 bmark1 mark_eeprom_size ,iicd_read_eep_size_2k_lcadcode 
+0x65e7 028144 setarg 4 
+0x65e8 028145 hstore 2 ,core_iicd_txlen 
+0x65e9 028146 jam 0xa0 ,mem_iicd_tbuf 
+0x65ea 028147 jam 0xa1 ,mem_iicd_tbuf + 3 
+:      028148 iicd_read_eep_common:
+0x65eb 028149 setarg mem_iicd_tbuf 
+0x65ec 028150 hstore 2 ,core_iicd_txaddr 
+0x65ed 028151 hstoret 2 ,core_iicd_rxlen 
+0x65ee 028152 deposit rega 
+0x65ef 028153 hstore 2 ,core_iicd_rxaddr 
+0x65f0 028154 setarg 2 
+0x65f1 028155 isolate0 15 ,rega 
+0x65f2 028156 setflag true ,0 ,pdata 
+0x65f3 028157 hstore 1 ,core_iicd_ctrl 
+0x65f4 028158 jam iicd_start ,core_misc_ctrl 
+0x65f5 028159 arg iicd_done ,queue 
+0x65f6 028160 call decrypt_code 
+0x65f7 028161 call wait_iicd_done 
+0x65f8 028162 isolate1 iicd_crcok ,pdata 
+0x65f9 028163 call set_ucode_status 
+0x65fa 028164 bmark1 mark_eeprom_size ,iicd_read_eep_load_code_size_2k 
+0x65fb 028165 fetch 2 ,mem_addr_mi 
+0x65fc 028166 byteswap pdata ,pdata 
+0x65fd 028167 iadd temp ,pdata 
+0x65fe 028168 byteswap pdata ,pdata 
+0x65ff 028169 store 2 ,mem_addr_mi 
+0x6600 028170 rtn 
+:      028172 iicd_read_eep_load_code_size_2k:
+0x6601 028173 fetch 1 ,mem_addr_mi 
+0x6602 028174 iadd temp ,pdata 
+0x6603 028175 byteswap pdata ,pdata 
+0x6604 028176 store 2 ,mem_addr_mi 
+0x6605 028177 rtn 
+:      028183 iicd_write_eep_data:
+0x6606 028184 fetch 2 ,mem_eeprom_base 
+0x6607 028185 iadd regb ,pdata 
+:      028188 iicd_write_ota_data:
+0x6608 028189 store 2 ,mem_pdatatemp 
+0x6609 028190 bpatchx patch32_2 ,mem_patch32 
+0x660a 028191 storet 2 ,mem_temp 
+0x660b 028192 copy rega ,pdata 
+0x660c 028193 store 2 ,mem_contr 
+:      028194 iicd_write_eep_loop:
+0x660d 028195 call iicd_eep_transparency 
+0x660e 028197 fetcht 2 ,mem_regb 
+0x660f 028198 fetch 2 ,mem_contr 
+0x6610 028199 copy pdata ,rega 
+0x6611 028200 fetch 2 ,mem_pdatatemp 
+0x6612 028202 call iicd_write_eep 
+0x6613 028204 fetch 2 ,mem_regb 
+0x6614 028205 fetcht 2 ,mem_contr 
+0x6615 028206 iadd temp ,temp 
+0x6616 028207 storet 2 ,mem_contr 
+0x6617 028208 fetcht 2 ,mem_pdatatemp 
+0x6618 028209 iadd temp ,temp 
+0x6619 028210 storet 2 ,mem_pdatatemp 
+0x661a 028211 fetch 2 ,mem_temp 
+0x661b 028212 nbranch iicd_write_eep_loop ,blank 
+0x661c 028213 rtn 
+:      028221 iicd_eep_transparency:
+0x661d 028222 bpatchx patch32_3 ,mem_patch32 
+0x661e 028223 fetch 1 ,mem_eeprom_block_size 
+0x661f 028224 increase -1 ,pdata 
+0x6620 028225 fetcht 2 ,mem_pdatatemp 
+0x6621 028226 ior temp ,pdata 
+0x6622 028227 increase 1 ,pdata 
+0x6623 028228 store 3 ,mem_regc 
+0x6624 028230 fetch 2 ,mem_temp 
+0x6625 028231 iadd temp ,pdata 
+0x6626 028233 fetcht 3 ,mem_regc 
+0x6627 028234 isub temp ,pdata 
+0x6628 028235 nbranch iicd_eep_deal_short_packet ,positive 
+0x6629 028236 store 2 ,mem_temp 
+0x662a 028237 fetch 3 ,mem_regc 
+0x662b 028238 fetcht 2 ,mem_pdatatemp 
+0x662c 028239 isub temp ,pdata 
+0x662d 028240 store 2 ,mem_regb 
+0x662e 028241 rtn 
+:      028242 iicd_eep_deal_short_packet:
+0x662f 028243 fetch 2 ,mem_temp 
+0x6630 028244 store 2 ,mem_regb 
+0x6631 028245 setarg 0 
+0x6632 028246 store 2 ,mem_temp 
+0x6633 028247 rtn 
+:      028249 iicd_write_eep_size_2k:
+0x6634 028250 increase 2 ,temp 
+0x6635 028251 hstoret 2 ,core_iicd_txlen 
+0x6636 028252 increase -2 ,rega 
+0x6637 028253 ifetcht 3 ,rega 
+0x6638 028254 copy temp ,regb 
+0x6639 028255 arg 0xa0 ,temp 
+0x663a 028256 istoret 1 ,rega 
+0x663b 028258 istore 1 ,contw 
+0x663c 028259 branch iicd_write_eep_common 
+:      028262 iicd_write_eep:
+0x663d 028263 copy pdata ,regb 
+0x663e 028264 bpatchx patch32_4 ,mem_patch32 
+0x663f 028265 bmark1 mark_eeprom_size ,iicd_write_eep_size_2k 
+0x6640 028266 copy regb ,pdata 
+0x6641 028267 increase 3 ,temp 
+0x6642 028268 hstoret 2 ,core_iicd_txlen 
+0x6643 028269 increase -3 ,rega 
+0x6644 028270 ifetcht 3 ,rega 
+0x6645 028271 copy temp ,regb 
+0x6646 028272 arg 0xa0 ,temp 
+0x6647 028273 istoret 1 ,rega 
+0x6648 028274 byteswap pdata ,pdata 
+0x6649 028275 istore 2 ,contw 
+:      028276 iicd_write_eep_common:
+0x664a 028277 deposit rega 
+0x664b 028278 hstore 2 ,core_iicd_txaddr 
+0x664c 028279 setarg 0 
+0x664d 028280 hstore 2 ,core_iicd_rxlen 
+0x664e 028281 jam 1 ,core_iicd_ctrl 
+0x664f 028282 jam iicd_start ,core_misc_ctrl 
+0x6650 028283 call wait_iicd_done 
+0x6651 028284 copy regb ,pdata 
+0x6652 028285 istore 3 ,rega 
+:      028287 iic_check_eeprom_standby:
+0x6653 028288 bpatchx patch32_5 ,mem_patch32 
+0x6654 028289 jam 0 ,mem_iicd_tbuf + 3 
+:      028290 iic_check_eeprom_standby_wait:
+0x6655 028291 setarg 1 
+0x6656 028292 hstore 2 ,core_iicd_txlen 
+0x6657 028293 jam 0xa0 ,mem_iicd_tbuf 
+0x6658 028294 setarg mem_iicd_tbuf 
+0x6659 028295 hstore 2 ,core_iicd_txaddr 
+0x665a 028296 setarg 0 
+0x665b 028297 hstore 2 ,core_iicd_rxlen 
+0x665c 028298 hstore 2 ,core_iicd_rxaddr 
+0x665d 028299 setarg 3 
+0x665e 028300 hstore 1 ,core_iicd_ctrl 
+0x665f 028301 jam iicd_start ,core_misc_ctrl 
+0x6660 028302 call wait_iicd_done 
+0x6661 028303 hfetch 1 ,core_dma_status 
+0x6662 028304 rtnbit0 iicd_ack 
+0x6663 028305 nop 1500 
+0x6664 028306 fetch 1 ,mem_iicd_tbuf + 3 
+0x6665 028307 increase 1 ,pdata 
+0x6666 028308 store 1 ,mem_iicd_tbuf + 3 
+0x6667 028309 sub pdata ,40 ,null 
+0x6668 028310 nrtn positive 
+0x6669 028311 branch iic_check_eeprom_standby_wait 
+:      028315 otp_enable_chgpump:
+0x666a 028316 jam 0x70 ,rfen_chgpump 
+0x666b 028317 nop param_chgpump_delay 
+0x666c 028318 rtn 
+:      028320 otp_disable_chgpump:
+0x666d 028321 jam 0x30 ,rfen_chgpump 
+0x666e 028322 rtn 
+:      028324 otp_set_addr:
+0x666f 028325 lshift3 pdata ,pdata 
+0x6670 028326 hstore 2 ,core_otp_addr 
+0x6671 028327 jam 0 ,core_otpd_ctrl 
+0x6672 028328 rtn 
+:      028331 otp_write:
+0x6673 028332 call otp_set_addr 
+0x6674 028333 call otp_ce 
+:      028334 otp_program:
+0x6675 028335 ifetcht 1 ,rega 
+0x6676 028336 increase 1 ,rega 
+0x6677 028337 force 0 ,queue 
+:      028338 otp_program_bit:
+0x6678 028339 qisolate0 temp 
+0x6679 028340 branch otp_skip_0 ,true 
+0x667a 028341 hfetch 1 ,core_otp_din 
+0x667b 028342 set1 6 ,pdata 
+0x667c 028343 set1 7 ,pdata 
+0x667d 028344 hstore 1 ,core_otp_din 
+0x667e 028345 jam 0x02 ,core_otp_ctrl 
+0x667f 028346 jam 0x82 ,core_otp_ctrl 
+0x6680 028347 set0 7 ,pdata 
+0x6681 028348 hstore 1 ,core_otp_din 
+0x6682 028349 jam 0x8a ,core_otp_ctrl 
+0x6683 028350 nop 11 
+0x6684 028351 jam 0xca ,core_otp_ctrl 
+0x6685 028352 nop 33 
+0x6686 028353 jam 0x4a ,core_otp_ctrl 
+0x6687 028354 nop 44 
+0x6688 028355 jam 0xca ,core_otp_ctrl 
+0x6689 028356 nop 22 
+0x668a 028357 jam 0x8a ,core_otp_ctrl 
+0x668b 028358 nop 33 
+0x668c 028359 jam 0x82 ,core_otp_ctrl 
+0x668d 028360 nop 1 
+0x668e 028361 jam 0x92 ,core_otp_ctrl 
+0x668f 028362 nop 10 
+0x6690 028363 jam 0xb2 ,core_otp_ctrl 
+0x6691 028364 hfetch 1 ,core_otp_rdata 
+0x6692 028365 jam 0x92 ,core_otp_ctrl 
+0x6693 028366 nop 1 
+0x6694 028367 jam 0x82 ,core_otp_ctrl 
+0x6695 028368 qisolate0 pdata 
+0x6696 028369 branch otp_program_bit ,true 
+:      028370 otp_skip_0:
+0x6697 028371 hfetch 2 ,core_otp_addr 
+0x6698 028372 increase 1 ,pdata 
+0x6699 028373 hstore 2 ,core_otp_addr 
+0x669a 028374 increase 1 ,queue 
+0x669b 028375 compare 8 ,queue ,0xf 
+0x669c 028376 nbranch otp_program_bit ,true 
+0x669d 028377 loop otp_program 
+0x669e 028378 jam 0x83 ,core_otp_ctrl 
+0x669f 028379 rtn 
+:      028381 otp_ce:
+0x66a0 028382 jam 0x82 ,core_otp_ctrl 
+0x66a1 028383 nop 12 
+0x66a2 028384 jam 0x80 ,core_otp_ctrl 
+0x66a3 028385 jam 0x82 ,core_otp_ctrl 
+0x66a4 028386 nop 150 
+0x66a5 028387 rtn 
+:      028390 otpd_read_init:
+0x66a6 028391 call otp_ce 
+0x66a7 028392 jam 0xa2 ,core_otp_ctrl 
+0x66a8 028393 deposit rega 
+0x66a9 028394 hstore 2 ,core_otpd_addr 
+0x66aa 028395 set1 11 ,temp 
+0x66ab 028396 isolate0 15 ,pdata 
+0x66ac 028397 setflag true ,15 ,temp 
+0x66ad 028398 hstoret 2 ,core_otpd_len 
+0x66ae 028399 jam otpd_start ,core_misc_ctrl 
+0x66af 028400 rtn 
+:      028402 otpd_wait_end:
+0x66b0 028403 hfetch 1 ,core_dma_status 
+0x66b1 028404 bbit0 otpd_done ,otpd_wait_end 
+0x66b2 028405 rtn 
+:      028408 otpd_read_data:
+0x66b3 028409 call otp_set_addr 
+0x66b4 028410 call otpd_read_init 
+0x66b5 028411 call otpd_wait_end 
+0x66b6 028412 jam 0x83 ,core_otp_ctrl 
+0x66b7 028413 rtn 
+:      028418 otpd_read_code:
+0x66b8 028419 hfetch 2 ,core_current_otp_addr 
+0x66b9 028420 hstore 2 ,core_otp_addr 
+0x66ba 028421 call otpd_read_init 
+0x66bb 028422 arg otpd_done ,queue 
+0x66bc 028423 call decrypt_code 
+0x66bd 028424 call otpd_wait_end 
+0x66be 028425 isolate1 otpd_crcok ,pdata 
+0x66bf 028426 call set_ucode_status 
+0x66c0 028427 jam 0x83 ,core_otp_ctrl 
+0x66c1 028428 rtn 
+:      028431 uartd_prepare_tx:
+0x66c2 028432 hfetch 2 ,core_uart_twptr 
+0x66c3 028433 iforce contwu 
+0x66c4 028434 rtn 
+:      028436 uartd_send:
+0x66c5 028437 deposit contwu 
+0x66c6 028438 hstore 2 ,core_uart_twptr 
+0x66c7 028439 rtn 
+:      028441 uartd_rxdone:
+0x66c8 028442 deposit contru 
+0x66c9 028443 hstore 2 ,core_uart_rrptr 
+0x66ca 028444 rtn 
+:      028446 uartd_prepare_rx:
+0x66cb 028447 hfetch 2 ,core_uart_rrptr 
+0x66cc 028448 copy pdata ,contru 
+0x66cd 028449 rtn 
+:      028451 uart_set_baud_by_mem:
+0x66ce 028452 fetch uart_baud_len ,mem_baud 
+0x66cf 028453 hstore uart_baud_len ,core_uart_baud 
+0x66d0 028454 rtn 
+:      028456 uart_copy_tx_bytes_fast:
+0x66d1 028457 deposit loopcnt 
+0x66d2 028458 rtn blank 
+:      028459 uart_copy_tx_bytes_fast_loop:
+0x66d3 028460 increase -8 ,loopcnt 
+0x66d4 028461 call uart_tx_8_bytes ,positive 
+0x66d5 028462 rtn zero 
+0x66d6 028463 branch uart_copy_tx_bytes_fast_loop ,positive 
+0x66d7 028464 increase 8 ,loopcnt 
+:      028465 uart_copy_tx_bytes_fast_loop_four:
+0x66d8 028466 increase -4 ,loopcnt 
+0x66d9 028467 call uart_tx_4_bytes ,positive 
+0x66da 028468 rtn zero 
+0x66db 028469 branch uart_copy_tx_bytes_fast_loop_four ,positive 
+0x66dc 028470 increase 4 ,loopcnt 
+0x66dd 028471 branch uart_copy_tx_bytes 
+:      028473 uart_tx_8_bytes:
+0x66de 028474 ifetch 8 ,contr 
+0x66df 028475 istore 8 ,contwu 
+0x66e0 028476 rtn 
+:      028478 uart_tx_4_bytes:
+0x66e1 028479 ifetch 4 ,contr 
+0x66e2 028480 istore 4 ,contwu 
+0x66e3 028481 rtn 
+:      028483 uart_copy_tx_bytes:
+0x66e4 028484 deposit loopcnt 
+0x66e5 028485 rtn blank 
+:      028486 uart_copy_tx_bytes_loop:
+0x66e6 028487 ifetch 1 ,contr 
+0x66e7 028488 istore 1 ,contwu 
+0x66e8 028489 loop uart_copy_tx_bytes_loop 
+0x66e9 028490 rtn 
+:      028492 uart_copy_rx_bytes_fast:
+0x66ea 028493 deposit loopcnt 
+0x66eb 028494 rtn blank 
+:      028495 uart_copy_rx_bytes_fast_loop:
+0x66ec 028496 increase -8 ,loopcnt 
+0x66ed 028497 call uart_rx_8_bytes ,positive 
+0x66ee 028498 rtn zero 
+0x66ef 028499 branch uart_copy_rx_bytes_fast_loop ,positive 
+0x66f0 028500 increase 8 ,loopcnt 
+:      028501 uart_copy_rx_bytes_fast_loop_four:
+0x66f1 028502 increase -4 ,loopcnt 
+0x66f2 028503 call uart_rx_4_bytes ,positive 
+0x66f3 028504 rtn zero 
+0x66f4 028505 branch uart_copy_rx_bytes_fast_loop_four ,positive 
+0x66f5 028506 increase 4 ,loopcnt 
+0x66f6 028507 branch uart_copy_rx_bytes 
+:      028509 uart_rx_8_bytes:
+0x66f7 028510 ifetch 8 ,contru 
+0x66f8 028511 istore 8 ,contw 
+0x66f9 028512 rtn 
+:      028514 uart_rx_4_bytes:
+0x66fa 028515 ifetch 4 ,contru 
+0x66fb 028516 istore 4 ,contw 
+0x66fc 028517 rtn 
+:      028520 uart_copy_rx_bytes:
+0x66fd 028521 deposit loopcnt 
+0x66fe 028522 rtn blank 
+:      028523 uart_copy_rx_bytes_loop:
+0x66ff 028524 ifetch 1 ,contru 
+0x6700 028525 istore 1 ,contw 
+0x6701 028526 loop uart_copy_rx_bytes_loop 
+0x6702 028527 rtn 
+:      028530 uart_copy_rx2tx:
+0x6703 028531 deposit loopcnt 
+0x6704 028532 rtn blank 
+:      028533 uart_copy_rx2tx_loop:
+0x6705 028534 ifetch 1 ,contru 
+0x6706 028535 istore 1 ,contwu 
+0x6707 028536 loop uart_copy_rx2tx_loop 
+0x6708 028537 rtn 
+:      028542 app_store_nvram_event:
+0x6709 028543 jam bt_evt_store_nvram ,mem_fifo_temp 
+0x670a 028544 branch ui_ipc_send_event 
+:      028546 check_51cmd_store_reconn_info:
+:      028547 check_51cmd_update_device_record:
+0x670b 028548 bpatchx patch32_6 ,mem_patch32 
+0x670c 028549 fetch 1 ,mem_nv_data_number 
+0x670d 028550 rtn blank 
+0x670e 028551 call check_nvram 
+0x670f 028552 call init_device_list ,zero 
+0x6710 028553 call nvram_find_addr_from_bd_list 
+:      028554 write_device_record:
+0x6711 028555 fetch 1 ,mem_nv_data_number 
+0x6712 028556 icopy regc 
+0x6713 028557 fetcht 2 ,mem_nv_data_ptr 
+0x6714 028558 storet 2 ,mem_list_item_ptr 
+:      028559 write_device_loop_find:
+0x6715 028560 copy regc ,pdata 
+0x6716 028561 branch app_store_nvram_event ,blank 
+0x6717 028562 increase -1 ,regc 
+0x6718 028563 copy temp ,rega 
+0x6719 028564 ifetch 1 ,rega 
+0x671a 028565 fetcht 1 ,mem_select_list_item 
+0x671b 028566 isub temp ,null 
+0x671c 028567 call set_index_finded_device ,zero 
+0x671d 028568 branch write_device_loop_find0 ,positive 
+0x671e 028569 ifetch 1 ,rega 
+0x671f 028570 increase 1 ,pdata 
+0x6720 028571 istore 1 ,rega 
+:      028572 write_device_loop_find0:
+0x6721 028573 fetcht 2 ,mem_list_item_ptr 
+0x6722 028574 increase nv_data_len ,temp 
+0x6723 028575 storet 2 ,mem_list_item_ptr 
+0x6724 028576 branch write_device_loop_find 
+:      028578 set_index_finded_device:
+0x6725 028579 setarg 0 
+0x6726 028580 istore 1 ,rega 
+0x6727 028581 fetch 1 ,mem_temp_reconn_record 
+0x6728 028582 istore 1 ,contw 
+0x6729 028583 bne rec_3_mode ,set_index_finded_device_ble_mode 
+0x672a 028584 arg mem_link_key ,regb 
+:      028585 set_index_find_device_master_addr:
+0x672b 028586 ifetch 6 ,contr 
+0x672c 028587 istore 8 ,contw 
+0x672d 028588 setarg 0 
+0x672e 028589 istore 8 ,contw 
+0x672f 028590 copy regb ,contr 
+:      028591 store_rec_data_common:
+0x6730 028592 call memcpy16 
+0x6731 028593 force 1 ,null 
+0x6732 028594 rtn 
+:      028596 set_index_finded_device_ble_mode:
+0x6733 028597 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
+0x6734 028598 beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
+0x6735 028599 arg mem_le_ltk ,regb 
+0x6736 028600 branch set_index_find_device_master_addr 
+:      028602 set_index_finded_device_irk:
+0x6737 028603 arg mem_le_irk ,contr 
+0x6738 028604 call memcpy16 
+:      028605 store_ble_rec_data_common:
+0x6739 028606 arg mem_le_ltk ,contr 
+0x673a 028607 branch store_rec_data_common 
+:      028609 set_index_finded_device_ediv:
+0x673b 028610 arg mem_le_rand ,contr 
+0x673c 028611 call memcpy16 
+0x673d 028612 branch store_ble_rec_data_common 
+:      028615 nvram_find_addr_from_bd_list:
+0x673e 028616 call disable_user 
+0x673f 028617 fetch 1 ,mem_nv_data_number 
+0x6740 028618 rtn blank 
+0x6741 028619 fetch 2 ,mem_ui_state_map 
+0x6742 028620 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
+:      028621 find_addr_from_bd_list_ble_mode:
+0x6743 028622 bpatchx patch32_7 ,mem_patch32 
+0x6744 028623 fetch 1 ,mem_le_conn_peer_addr_type 
+0x6745 028624 beq master_public_addr ,find_addr_from_bd_list_static_addr 
+0x6746 028625 fetch 1 ,mem_le_plap + 5 
+0x6747 028626 compare 0xc0 ,pdata ,0xc0 
+0x6748 028627 branch find_addr_from_bd_list_static_addr ,true 
+0x6749 028628 compare 0x40 ,pdata ,0xc0 
+0x674a 028629 branch find_addr_from_bd_list_random_addr ,true 
+0x674b 028630 compare 0x00 ,pdata ,0xc0 
+0x674c 028631 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
+:      028632 find_addr_from_bd_list_static_addr:
+0x674d 028633 jam rec_4_mode_static_address ,mem_temp_reconn_record 
+0x674e 028634 fetch 6 ,mem_le_plap 
+0x674f 028635 branch find_addr_from_bd_list_common 
+:      028637 find_addr_from_bd_list_random_non_resolvable_private_address:
+0x6750 028638 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
+0x6751 028639 branch find_addr_from_bd_list_common 
+:      028642 find_addr_from_bd_list_random_addr:
+0x6752 028643 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
+0x6753 028644 branch find_addr_from_bd_list_common 
+:      028647 find_addr_from_bd_list_spp_mode:
+0x6754 028648 bpatchx patch33_0 ,mem_patch33 
+0x6755 028649 jam rec_3_mode ,mem_temp_reconn_record 
+0x6756 028650 fetch 6 ,mem_plap 
+:      028651 find_addr_from_bd_list_common:
+0x6757 028652 store 6 ,mem_temp_reconn_record + 1 
+0x6758 028653 fetch 2 ,mem_nv_data_ptr 
+0x6759 028654 ifetcht 1 ,pdata 
+0x675a 028655 pincrease 1 
+0x675b 028656 store 2 ,mem_list_item_ptr 
+0x675c 028657 storet 1 ,mem_select_list_item 
+0x675d 028658 fetch 1 ,mem_nv_data_number 
+0x675e 028659 icopy regc 
+:      028660 nvram_find_addr_from_list:
+0x675f 028661 fetch 2 ,mem_list_item_ptr 
+0x6760 028662 copy pdata ,rega 
+0x6761 028663 call nvram_find_addr_from_list_compare 
+0x6762 028664 rtn user 
+0x6763 028665 fetcht 2 ,mem_list_item_ptr 
+0x6764 028666 increase nv_data_len ,temp 
+0x6765 028667 storet 2 ,mem_list_item_ptr 
+0x6766 028668 increase -1 ,temp 
+0x6767 028669 ifetch 1 ,temp 
+0x6768 028670 store 1 ,mem_select_list_item 
+0x6769 028671 increase -1 ,regc 
+0x676a 028672 nbranch nvram_find_addr_from_list ,zero 
+0x676b 028673 fetch 1 ,mem_nv_data_number 
+0x676c 028674 pincrease decreased_one 
+0x676d 028675 store 1 ,mem_select_list_item 
+0x676e 028676 rtn 
+:      028677 nvram_find_addr_from_list_compare:
+0x676f 028678 fetch 1 ,mem_temp_reconn_record 
+0x6770 028679 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
+:      028680 find_master_addr_from_list_compare:
+0x6771 028681 arg mem_temp_reconn_record ,regb 
+0x6772 028682 arg 7 ,loopcnt 
+0x6773 028683 call string_compare 
+0x6774 028684 branch enable_user ,zero 
+0x6775 028685 rtn 
+:      028687 find_addr_from_list_compare_ble_mode:
+0x6776 028688 beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
+0x6777 028689 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
+0x6778 028690 branch find_master_addr_from_list_compare 
+:      028692 find_irk_form_list_compare:
+0x6779 028693 ifetcht 1 ,rega 
+0x677a 028694 isub temp ,null 
+0x677b 028695 nrtn zero 
+0x677c 028696 arg mem_le_prand ,contw 
+0x677d 028697 arg 16 ,loopcnt 
+0x677e 028698 call clear_mem 
+0x677f 028699 fetch 3 ,mem_le_plap + 3 
+0x6780 028700 store 3 ,mem_le_prand 
+0x6781 028701 call genernate_master_macaddress 
+0x6782 028702 fetch 2 ,mem_le_aes_128 + 13 
+0x6783 028703 byteswap pdata ,pdata 
+0x6784 028704 lshift8 pdata ,temp 
+0x6785 028705 ifetch 1 ,contr 
+0x6786 028706 iadd temp ,pdata 
+0x6787 028707 fetcht 3 ,mem_le_plap 
+0x6788 028708 isub temp ,null 
+0x6789 028709 branch enable_user ,zero 
+0x678a 028710 rtn 
+:      028713 genernate_master_macaddress:
+0x678b 028714 arg mem_le_prand ,contr 
+0x678c 028715 call load_data128 
+0x678d 028717 ifetch 1 ,rega 
+0x678e 028718 call load_regext 
+0x678f 028719 force 0x38 ,aes_ctrl 
+0x6790 028720 force 0x0 ,aes_ctrl 
+0x6791 028721 call wait_aes 
+0x6792 028722 arg mem_le_aes_128 ,contw 
+0x6793 028723 branch store_aes_result 
+:      028725 find_ediv_form_list_compare:
+0x6794 028726 ifetcht 1 ,rega 
+0x6795 028727 isub temp ,null 
+0x6796 028728 nrtn zero 
+0x6797 028729 copy contr ,rega 
+0x6798 028730 add contr ,8 ,regc 
+0x6799 028731 arg mem_le_rand ,regb 
+0x679a 028732 arg 8 ,loopcnt 
+0x679b 028733 call string_compare 
+0x679c 028734 branch enable_user ,zero 
+0x679d 028735 copy regc ,rega 
+0x679e 028736 arg mem_le_irk ,regb 
+0x679f 028737 arg 8 ,loopcnt 
+0x67a0 028738 call string_compare 
+0x67a1 028739 branch enable_user ,zero 
+0x67a2 028740 rtn 
+:      028742 check_nvram:
+0x67a3 028743 fetch 2 ,mem_nv_data_ptr 
+0x67a4 028744 ifetcht 1 ,pdata 
+0x67a5 028745 pincrease nv_data_len 
+0x67a6 028746 ifetch 1 ,pdata 
+0x67a7 028747 isub temp ,null 
+0x67a8 028748 rtn 
+:      028750 init_device_list:
+0x67a9 028751 fetch 1 ,mem_nv_data_number 
+0x67aa 028752 icopy loopcnt 
+0x67ab 028753 fetcht 2 ,mem_nv_data_ptr 
+0x67ac 028754 setarg 0 
+:      028755 init_device_list_loop:
+0x67ad 028756 istore 1 ,temp 
+0x67ae 028757 increase nv_data_len ,temp 
+0x67af 028758 pincrease 1 
+0x67b0 028759 loop init_device_list_loop 
+0x67b1 028760 rtn 
+:      028762 load_device_list:
+0x67b2 028763 bpatchx patch33_1 ,mem_patch33 
+0x67b3 028764 call nvram_find_addr_from_bd_list 
+0x67b4 028765 fetch 1 ,mem_state 
+0x67b5 028766 setflag user ,state_combkey ,pdata 
+0x67b6 028767 store 1 ,mem_state 
+0x67b7 028768 nbranch clear_key_exists ,user 
+0x67b8 028769 add rega ,10 ,contr 
+0x67b9 028771 arg mem_link_key ,contw 
+0x67ba 028772 call memcpy16 
+0x67bb 028773 branch check_link_key_load 
+:      028774 clear_key_exists:
+0x67bc 028775 jam 0 ,mem_link_key_exists 
+0x67bd 028776 rtn 
+:      028778 load_device_list_mode_4:
+0x67be 028779 fetch 9 ,mem_le_ediv 
+0x67bf 028780 branch clear_ltk_exists ,blank 
+0x67c0 028781 call nvram_find_addr_from_bd_list 
+0x67c1 028782 nbranch clear_ltk_exists ,user 
+0x67c2 028783 fetch 2 ,mem_list_item_ptr 
+0x67c3 028784 add pdata ,1 ,contr 
+0x67c4 028785 arg mem_le_irk ,contw 
+0x67c5 028786 call memcpy16 
+0x67c6 028787 arg mem_le_ltk ,contw 
+0x67c7 028788 call memcpy16 
+0x67c8 028789 jam 1 ,mem_ltk_exists 
+0x67c9 028790 rtn 
+:      028792 clear_ltk_exists:
+0x67ca 028793 jam 0 ,mem_ltk_exists 
+0x67cb 028794 rtn 
+:      028797 eeprom_store_le_reconn_info:
+0x67cc 028798 fetch 6 ,mem_le_plap 
+0x67cd 028799 store 6 ,mem_temp_lap 
+0x67ce 028800 jam rec_4_mode ,mem_record_bt_mode 
+0x67cf 028801 branch eeprom_store_reconn_info 
+:      028802 eeprom_store_bd_reconn_info:
+0x67d0 028803 fetch 6 ,mem_plap 
+0x67d1 028804 store 6 ,mem_temp_lap 
+0x67d2 028805 jam rec_3_mode ,mem_record_bt_mode 
+:      028806 eeprom_store_reconn_info:
+0x67d3 028807 fetch 1 ,mem_device_option 
+0x67d4 028808 beq dvc_op_module ,check_51cmd_update_device_record 
+0x67d5 028809 bbit1 dvc_op_mouse ,mouse_store_remote_bdaddr 
+0x67d6 028810 rtn 
+:      028813 check_link_key_load:
+0x67d7 028814 fetch 8 ,mem_link_key 
+0x67d8 028815 fetcht 8 ,mem_link_key + 8 
+0x67d9 028816 ior temp ,pdata 
+0x67da 028817 rtn blank 
+0x67db 028818 jam 1 ,mem_link_key_exists 
+0x67dc 028819 rtn 
+:      028826 gpio_set_wake_by_current_state:
+0x67dd 028827 bpatchx patch33_2 ,mem_patch33 
+0x67de 028828 set1 7 ,temp 
+0x67df 028829 call gpio_get_bit 
+0x67e0 028830 nsetflag true ,7 ,temp 
+:      028835 gpio_set_wake:
+0x67e1 028836 bpatchx patch33_3 ,mem_patch33 
+0x67e2 028837 sub temp ,ui_button_gpio_disable ,null 
+0x67e3 028838 rtn zero 
+0x67e4 028839 isolate0 7 ,temp 
+0x67e5 028840 and temp ,0x1f ,queue 
+0x67e6 028841 fetch 4 ,mem_gpio_wakeup_low 
+0x67e7 028842 qsetflag true ,pdata 
+0x67e8 028843 store 4 ,mem_gpio_wakeup_low 
+0x67e9 028844 fetch 4 ,mem_gpio_wakeup_high 
+0x67ea 028845 nqsetflag true ,pdata 
+0x67eb 028846 store 4 ,mem_gpio_wakeup_high 
+0x67ec 028847 rtn 
+:      028850 gpio_clr_wake:
+0x67ed 028851 bpatchx patch33_4 ,mem_patch33 
+0x67ee 028852 sub temp ,ui_button_gpio_disable ,null 
+0x67ef 028853 rtn zero 
+0x67f0 028854 isolate0 7 ,temp 
+0x67f1 028855 and temp ,0x1f ,queue 
+0x67f2 028856 fetch 4 ,mem_gpio_wakeup_low 
+0x67f3 028857 qset0 pdata 
+0x67f4 028858 store 4 ,mem_gpio_wakeup_low 
+0x67f5 028859 fetch 4 ,mem_gpio_wakeup_high 
+0x67f6 028860 qset0 pdata 
+0x67f7 028861 store 4 ,mem_gpio_wakeup_high 
+0x67f8 028862 rtn 
+:      028865 gpio_config_input_nowake:
+0x67f9 028866 call gpio_clr_wake 
+0x67fa 028867 branch gpio_config_input_without_wake 
+:      028870 gpio_config_input:
+0x67fb 028871 sub temp ,ui_button_gpio_disable ,null 
+0x67fc 028872 rtn zero 
+0x67fd 028873 ncall gpio_set_wake ,wake 
+:      028875 gpio_config_input_without_wake:
+0x67fe 028876 arg core_gpio_pd0 ,contw 
+0x67ff 028877 call gpio_set_bit 
+0x6800 028878 setflip gpio_active_bit ,temp 
+0x6801 028879 arg core_gpio_pu0 ,contw 
+0x6802 028880 call gpio_set_bit 
+0x6803 028881 set0 gpio_active_bit ,temp 
+0x6804 028882 arg core_gpio_oe0 ,contw 
+0x6805 028883 branch gpio_set_bit 
+:      028886 gpio_set_high_impedance:
+0x6806 028887 arg core_gpio_pd0 ,contw 
+0x6807 028888 call gpio_set_bit 
+0x6808 028889 set0 gpio_active_bit ,temp 
+0x6809 028890 arg core_gpio_pu0 ,contw 
+0x680a 028891 call gpio_set_bit 
+0x680b 028892 set0 gpio_active_bit ,temp 
+0x680c 028893 arg core_gpio_oe0 ,contw 
+0x680d 028894 branch gpio_set_bit 
+:      028898 gpio_config_output:
+0x680e 028899 sub temp ,ui_button_gpio_disable ,null 
+0x680f 028900 rtn zero 
+0x6810 028901 setflip gpio_active_bit ,temp 
+0x6811 028902 call gpio_out 
+:      028903 gpio_config_output0:
+0x6812 028904 set1 gpio_active_bit ,temp 
+0x6813 028905 arg core_gpio_oe0 ,contw 
+0x6814 028906 branch gpio_set_bit 
+:      028908 gpio_common:
+0x6815 028909 and temp ,0x07 ,queue 
+0x6816 028910 rshift3 temp ,pdata 
+0x6817 028911 and_into 3 ,pdata 
+0x6818 028912 iadd contw ,contw 
+0x6819 028913 ifetch 1 ,contw 
+0x681a 028914 rtn 
+:      028916 gpio_check_active:
+0x681b 028917 arg core_gpio_out0 ,contw 
+0x681c 028918 branch get_bit_common 
+:      028922 gpio_get_bit:
+0x681d 028923 arg core_gpio_in ,contw 
+:      028924 get_bit_common:
+0x681e 028925 call gpio_common 
+0x681f 028926 isolate1 gpio_active_bit ,temp 
+0x6820 028927 branch gpio_get_bit_reverse ,true 
+0x6821 028928 qisolate0 pdata 
+0x6822 028929 rtn 
+:      028930 gpio_get_bit_reverse:
+0x6823 028931 qisolate1 pdata 
+0x6824 028932 rtn 
+:      028934 gpio_out_inactive:
+0x6825 028935 sub temp ,ui_button_gpio_disable ,null 
+0x6826 028936 rtn zero 
+0x6827 028937 isolate1 7 ,null 
+0x6828 028938 branch gpio_out_flag 
+:      028940 gpio_out_active:
+0x6829 028941 sub temp ,ui_button_gpio_disable ,null 
+0x682a 028942 rtn zero 
+0x682b 028943 isolate0 7 ,null 
+:      028946 gpio_out_flag:
+0x682c 028947 setarg 0 
+0x682d 028948 nsetflag true ,gpio_active_bit ,pdata 
+0x682e 028949 ixor temp ,temp 
+:      028952 gpio_out:
+0x682f 028953 arg core_gpio_out0 ,contw 
+:      028956 gpio_set_bit:
+0x6830 028957 call gpio_common 
+0x6831 028958 isolate1 gpio_active_bit ,temp 
+0x6832 028959 qsetflag true ,pdata 
+0x6833 028960 istore 1 ,contw 
+0x6834 028961 rtn 
+:      028963 gpio_set_before_lpm_common:
+0x6835 028964 arg -1 ,rega 
+0x6836 028965 hfetch 1 ,core_gpio_sel1 
+0x6837 028966 compare 0x02 ,pdata ,0x03 
+0x6838 028967 call neglact4_from_23_pin ,true 
+0x6839 028969 compare 0x01 ,pdata ,0x03 
+0x683a 028970 call neglact2_form_25_pin ,true 
+0x683b 028972 compare 0x03 ,pdata ,0x03 
+0x683c 028973 call neglact2_form_25_pin ,true 
+0x683d 028975 isolate1 2 ,pdata 
+0x683e 028976 call neglect2_from_6_pin ,true 
+0x683f 028978 isolate1 3 ,pdata 
+0x6840 028979 call neglect4_from_9_pin ,true 
+0x6841 028981 isolate1 4 ,pdata 
+0x6842 028982 call neglact2_form_30_pin ,true 
+0x6843 028984 isolate1 6 ,pdata 
+0x6844 028985 nsetflag true ,04 ,rega 
+0x6845 028987 isolate1 7 ,pdata 
+0x6846 028988 nsetflag true ,05 ,rega 
+0x6847 028990 hfetch 1 ,core_gpio_sel2 
+0x6848 028991 isolate1 0 ,pdata 
+0x6849 028992 nsetflag true ,27 ,rega 
+0x684a 028993 isolate1 1 ,pdata 
+0x684b 028994 nsetflag true ,28 ,rega 
+0x684c 028995 isolate1 2 ,pdata 
+0x684d 028996 nsetflag true ,03 ,rega 
+0x684e 028997 isolate1 3 ,pdata 
+0x684f 028998 nsetflag true ,08 ,rega 
+0x6850 028999 isolate1 4 ,pdata 
+0x6851 029000 nsetflag true ,20 ,rega 
+0x6852 029001 isolate1 5 ,pdata 
+0x6853 029002 nsetflag true ,21 ,rega 
+0x6854 029003 isolate1 6 ,pdata 
+0x6855 029004 nsetflag true ,22 ,rega 
+0x6856 029005 isolate1 7 ,pdata 
+0x6857 029006 nsetflag true ,23 ,rega 
+0x6858 029008 hfetch 1 ,core_gpio_sel 
+0x6859 029009 isolate1 0 ,pdata 
+0x685a 029010 nsetflag true ,05 ,rega 
+0x685b 029011 isolate1 1 ,pdata 
+0x685c 029012 nsetflag true ,06 ,rega 
+0x685d 029013 isolate1 2 ,pdata 
+0x685e 029014 nsetflag true ,07 ,rega 
+0x685f 029015 isolate1 3 ,pdata 
+0x6860 029016 nsetflag true ,18 ,rega 
+0x6861 029017 isolate1 4 ,pdata 
+0x6862 029018 nsetflag true ,19 ,rega 
+0x6863 029019 isolate1 5 ,pdata 
+0x6864 029020 nsetflag true ,20 ,rega 
+0x6865 029021 isolate1 6 ,pdata 
+0x6866 029022 nsetflag true ,21 ,rega 
+0x6867 029023 isolate1 7 ,pdata 
+0x6868 029024 nsetflag true ,22 ,rega 
+0x6869 029026 hfetch 1 ,core_uart_ctrl 
+0x686a 029027 isolate1 4 ,pdata 
+0x686b 029028 call neglact2_form_2_pin ,true 
+0x686c 029029 bpatchx patch33_5 ,mem_patch33 
+0x686d 029031 hfetch 4 ,core_gpio_pu0 
+0x686e 029032 hfetcht 4 ,core_gpio_pd0 
+0x686f 029033 ior temp ,pdata 
+0x6870 029034 invert pdata ,pdata 
+0x6871 029035 iand rega ,pdata 
+0x6872 029037 hstore 4 ,core_gpio_oe0 
+0x6873 029038 rtn 
+:      029041 neglect2_from_6_pin:
+0x6874 029042 arg 6 ,queue 
+0x6875 029043 branch neglect_2_pin 
+:      029044 neglect4_from_9_pin:
+0x6876 029045 arg 9 ,queue 
+0x6877 029046 branch neglact_4_pin 
+:      029047 neglact4_from_23_pin:
+0x6878 029048 arg 23 ,queue 
+0x6879 029049 branch neglact_4_pin 
+:      029050 neglact2_form_25_pin:
+0x687a 029051 arg 25 ,queue 
+0x687b 029052 branch neglect_2_pin 
+:      029053 neglact2_form_30_pin:
+0x687c 029054 arg 30 ,queue 
+0x687d 029055 branch neglect_2_pin 
+:      029056 neglact2_form_2_pin:
+0x687e 029057 arg 2 ,queue 
+0x687f 029058 branch neglect_2_pin 
+:      029059 neglact_1_pin:
+0x6880 029060 arg 1 ,loopcnt 
+0x6881 029061 branch neglect_pin_loop 
+:      029062 neglact_4_pin:
+0x6882 029063 arg 4 ,loopcnt 
+0x6883 029064 branch neglect_pin_loop 
+:      029065 neglect_2_pin:
+0x6884 029066 arg 2 ,loopcnt 
+:      029067 neglect_pin_loop:
+0x6885 029068 qset0 rega 
+0x6886 029069 increase 1 ,queue 
+0x6887 029070 loop neglect_pin_loop 
+0x6888 029071 rtn 
+:      029079 gpio_cfg_uart_tx_output:
+0x6889 029080 call gpio_uart2gpio 
+0x688a 029081 arg uart_wakeup_tx ,temp 
+0x688b 029082 branch gpio_config_output 
+:      029084 gpio_pu_uart_tx:
+0x688c 029085 call gpio_cfg_uart_tx_output 
+0x688d 029086 arg uart_wakeup_tx ,temp 
+0x688e 029087 branch gpio_out_inactive 
+:      029091 gpio_rx_config_input_with_pu:
+0x688f 029092 call gpio_uart2gpio 
+0x6890 029093 hfetch 1 ,core_gpio_pu0 
+0x6891 029094 set1 uart_wakeup_rx ,pdata 
+0x6892 029095 hstore 1 ,core_gpio_pu0 
+0x6893 029096 arg uart_wakeup_rx ,temp 
+0x6894 029097 branch gpio_config_input 
+:      029099 gpio_uart2gpio:
+0x6895 029100 hfetch 1 ,core_gpio_sel1 
+0x6896 029101 and_into 0xfb ,pdata 
+0x6897 029102 hstore 1 ,core_gpio_sel1 
+0x6898 029103 rtn 
+:      029105 gpio_check_uart_state:
+0x6899 029106 hfetch 1 ,core_gpio_sel1 
+0x689a 029107 isolate1 2 ,pdata 
+0x689b 029108 rtn 
+:      029110 load_chip_option:
+0x689c 029111 call otp_enable_chgpump 
+0x689d 029112 setarg otp_chip_functions 
+0x689e 029113 arg mem_chip_functions ,rega 
+0x689f 029114 arg 0x02 ,temp 
+0x68a0 029115 call otpd_read_data 
+0x68a1 029116 branch otp_disable_chgpump 
+:      029119 load_adc_init:
+0x68a2 029120 call otp_enable_chgpump 
+0x68a3 029121 setarg otp_adc_io_0_5v_addr 
+0x68a4 029122 arg mem_0_5_adc_io_data ,rega 
+0x68a5 029123 arg 14 ,temp 
+0x68a6 029124 call otpd_read_data 
+0x68a7 029125 branch otp_disable_chgpump 
+:      029129 adc_init_data:
+0x68a8 029130 bpatchx patch33_6 ,mem_patch33 
+0x68a9 029132 call load_adc_init 
+0x68aa 029134 fetch 1 ,mem_adc_config_flag 
+0x68ab 029135 beq adc_config_vinlpm ,adc_init_data_vinlpm 
+0x68ac 029136 beq adc_config_hvin ,adc_init_data_hvin 
+0x68ad 029137 beq adc_config_gpio ,adc_init_data_io 
+0x68ae 029138 rtn 
+:      029140 adc_init_data_vinlpm:
+0x68af 029141 fetcht 2 ,mem_otp_adc_flag 
+0x68b0 029142 setarg otp_adc_flag 
+0x68b1 029143 isub temp ,null 
+0x68b2 029144 branch adc_check_data_vinlpm ,zero 
+0x68b3 029145 setarg 0x4dfa 
+0x68b4 029146 store 2 ,mem_3v_adc_vinlpm_data 
+0x68b5 029147 setarg 0x4894 
+0x68b6 029148 store 2 ,mem_2v_adc_vinlpm_data 
+0x68b7 029149 branch set_vdd_reference_voltage_1v 
+:      029151 adc_check_data_vinlpm:
+0x68b8 029152 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x68b9 029153 nbranch adc_check_2v_vinlpm ,blank 
+0x68ba 029154 setarg 0x4dfa 
+0x68bb 029155 store 2 ,mem_3v_adc_vinlpm_data 
+:      029156 adc_check_2v_vinlpm:
+0x68bc 029157 fetch 2 ,mem_2v_adc_vinlpm_data 
+0x68bd 029158 nbranch set_vdd_reference_voltage_1v ,blank 
+0x68be 029159 setarg 0x4894 
+0x68bf 029160 store 2 ,mem_2v_adc_vinlpm_data 
+:      029161 set_vdd_reference_voltage_1v:
+0x68c0 029162 setarg 100 
+0x68c1 029163 store 2 ,mem_reference_voltage 
+0x68c2 029164 rtn 
+:      029166 adc_init_data_hvin:
+0x68c3 029167 fetcht 2 ,mem_otp_adc_flag 
+0x68c4 029168 setarg otp_adc_flag 
+0x68c5 029169 isub temp ,null 
+0x68c6 029170 branch adc_check_data_hvin ,zero 
+0x68c7 029171 setarg 0x5932 
+0x68c8 029172 store 2 ,mem_5v_adc_hvin_data 
+0x68c9 029173 setarg 0x4323 
+0x68ca 029174 store 2 ,mem_1v_adc_hvin_data 
+0x68cb 029175 branch set_vdd_reference_voltage_4v 
+:      029177 adc_check_data_hvin:
+0x68cc 029178 fetch 2 ,mem_5v_adc_hvin_data 
+0x68cd 029179 nbranch adc_check_1v_hvin ,blank 
+0x68ce 029180 setarg 0x5932 
+0x68cf 029181 store 2 ,mem_5v_adc_hvin_data 
+:      029182 adc_check_1v_hvin:
+0x68d0 029183 fetch 2 ,mem_1v_adc_hvin_data 
+0x68d1 029184 nbranch set_vdd_reference_voltage_4v ,blank 
+0x68d2 029185 setarg 0x4323 
+0x68d3 029186 store 2 ,mem_1v_adc_hvin_data 
+:      029187 set_vdd_reference_voltage_4v:
+0x68d4 029188 setarg 400 
+0x68d5 029189 store 2 ,mem_reference_voltage 
+0x68d6 029190 rtn 
+:      029192 adc_init_data_io:
+0x68d7 029193 fetcht 2 ,mem_otp_adc_flag 
+0x68d8 029194 setarg otp_adc_flag 
+0x68d9 029195 isub temp ,null 
+0x68da 029196 branch adc_check_data_io ,zero 
+0x68db 029197 setarg 0x6946 
+0x68dc 029198 store 2 ,mem_1v_adc_io_data 
+0x68dd 029199 setarg 0x5377 
+0x68de 029200 store 2 ,mem_0_5_adc_io_data 
+0x68df 029201 branch set_vdd_reference_voltage_0_5v 
+:      029203 adc_check_data_io:
+0x68e0 029204 fetch 2 ,mem_1v_adc_io_data 
+0x68e1 029205 nbranch adc_check_0_5v_io ,blank 
+0x68e2 029206 setarg 0x6946 
+0x68e3 029207 store 2 ,mem_1v_adc_io_data 
+:      029208 adc_check_0_5v_io:
+0x68e4 029209 fetch 2 ,mem_0_5_adc_io_data 
+0x68e5 029210 nbranch set_vdd_reference_voltage_0_5v ,blank 
+0x68e6 029211 setarg 0x5377 
+0x68e7 029212 store 2 ,mem_0_5_adc_io_data 
+:      029213 set_vdd_reference_voltage_0_5v:
+0x68e8 029214 setarg 50 
+0x68e9 029215 store 2 ,mem_reference_voltage 
+0x68ea 029216 rtn 
+:      029219 adc_set_mode:
+0x68eb 029220 fetch 1 ,mem_adc_config_flag 
+0x68ec 029221 beq adc_config_vinlpm ,adc_check_vinlpm 
+0x68ed 029222 beq adc_config_hvin ,adc_check_hvin 
+0x68ee 029223 beq adc_config_gpio ,adc_check_gpio 
+0x68ef 029224 rtn 
+:      029225 adc_check_vinlpm:
+0x68f0 029226 jam 0xbf ,rf_adc_mode 
+0x68f1 029227 branch read_adc 
+:      029228 adc_check_hvin:
+0x68f2 029229 jam 0xaf ,rf_adc_mode 
+0x68f3 029230 branch read_adc 
+:      029231 adc_check_gpio:
+0x68f4 029232 jam 0x8f ,rf_adc_mode 
+0x68f5 029233 fetch 1 ,mem_adc_channel 
+0x68f6 029234 hstore 1 ,rf_adc_ch 
+0x68f7 029235 branch read_adc 
+:      029236 read_adc:
+0x68f8 029237 bpatchx patch33_7 ,mem_patch33 
+0x68f9 029238 hfetch 1 ,core_uart_baud + 1 
+0x68fa 029239 set1 7 ,pdata 
+0x68fb 029240 hstore 1 ,core_uart_baud + 1 
+0x68fc 029241 hfetch 1 ,rf_adc_ch 
+0x68fd 029242 or_into 0x30 ,pdata 
+0x68fe 029243 hstore 1 ,rf_adc_ch 
+0x68ff 029244 jam 0x7c ,rfen_adc 
+0x6900 029245 jam 0xaa ,rf_adc_gc 
+0x6901 029246 nop 5000 
+0x6902 029247 hfetcht 2 ,core_adc_sum 
+0x6903 029248 hfetch 1 ,core_uart_baud + 1 
+0x6904 029249 set0 7 ,pdata 
+0x6905 029250 hstore 1 ,core_uart_baud + 1 
+0x6906 029251 storet 2 ,mem_adc_current_value 
+0x6907 029252 rtn 
+:      029254 vdd_calculate_by_mode:
+0x6908 029255 bpatchx patch34_0 ,mem_patch34 
+0x6909 029256 fetch 1 ,mem_adc_config_flag 
+0x690a 029257 beq adc_config_vinlpm ,vdd_calculate_vinlpm 
+0x690b 029258 beq adc_config_hvin ,vdd_calculate_hvin 
+0x690c 029259 beq adc_config_gpio ,vdd_calculate_io 
+0x690d 029260 rtn 
+:      029262 vdd_calculate_vinlpm:
+0x690e 029263 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x690f 029264 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x6910 029265 arg 200 ,regc 
+0x6911 029266 branch vdd_calculate 
+:      029268 vdd_calculate_hvin:
+0x6912 029269 fetch 2 ,mem_5v_adc_hvin_data 
+0x6913 029270 fetcht 2 ,mem_1v_adc_hvin_data 
+0x6914 029271 arg 100 ,regc 
+0x6915 029272 branch vdd_calculate 
+:      029274 vdd_calculate_io:
+0x6916 029275 fetch 2 ,mem_1v_adc_io_data 
+0x6917 029276 fetcht 2 ,mem_0_5_adc_io_data 
+0x6918 029277 arg 50 ,regc 
+0x6919 029278 branch vdd_calculate 
+:      029280 vdd_calculate:
+0x691a 029281 isub temp ,rega 
+0x691b 029282 fetch 2 ,mem_adc_current_value 
+0x691c 029283 isub temp ,pdata 
+0x691d 029284 nbranch vdd_calculate1 ,positive 
+0x691e 029285 fetcht 2 ,mem_reference_voltage 
+0x691f 029286 imul32 temp ,regb 
+0x6920 029287 copy regc ,pdata 
+0x6921 029288 imul32 rega ,pdata 
+0x6922 029289 iadd regb ,pdata 
+:      029290 vdd_calculate2:
+0x6923 029291 idiv rega 
+0x6924 029292 call wait_div_end 
+0x6925 029293 quotient pdata 
+0x6926 029294 rtn 
+:      029296 vdd_calculate1:
+0x6927 029297 copy temp ,pdata 
+0x6928 029298 fetcht 2 ,mem_adc_current_value 
+0x6929 029299 isub temp ,pdata 
+0x692a 029300 fetcht 2 ,mem_reference_voltage 
+0x692b 029301 imul32 temp ,regb 
+0x692c 029302 copy regc ,pdata 
+0x692d 029303 imul32 rega ,pdata 
+0x692e 029304 isub regb ,pdata 
+0x692f 029305 branch vdd_calculate2 
+:      029316 adc_bat_percent_lowpower_out:
+0x6930 029317 ifetch 8 ,rega 
+0x6931 029318 store 8 ,mem_pdatatemp 
+0x6932 029319 fetch 2 ,mem_pdatatemp 
+0x6933 029320 fetcht 2 ,mem_pdatatemp + 2 
+0x6934 029321 isub temp ,rega 
+0x6935 029322 fetch 2 ,mem_pdatatemp + 6 
+0x6936 029323 isub temp ,regb 
+0x6937 029324 fetcht 2 ,mem_pdatatemp + 4 
+0x6938 029325 isub temp ,null 
+0x6939 029326 ncall adc_set_low_power_flag ,positive 
+0x693a 029327 mul32 regb ,100 ,pdata 
+0x693b 029328 idiv rega 
+0x693c 029329 call wait_div_end 
+0x693d 029330 quotient pdata 
+0x693e 029331 call adc_set_no_power_flag ,blank 
+0x693f 029332 rtn 
+:      029333 adc_set_low_power_flag:
+0x6940 029334 fetch 1 ,mem_adc_power_flag 
+0x6941 029335 set1 0 ,pdata 
+0x6942 029336 store 1 ,mem_adc_power_flag 
+0x6943 029337 rtn 
+:      029338 adc_set_no_power_flag:
+0x6944 029339 fetcht 1 ,mem_adc_power_flag 
+0x6945 029340 set1 1 ,temp 
+0x6946 029341 storet 1 ,mem_adc_power_flag 
+0x6947 029342 rtn 
+:      029347 keyscan_key_init:
+0x6948 029348 fetch 2 ,mem_key_num_ptr 
+0x6949 029349 ifetch 1 ,pdata 
+:      029350 keyscan_key_init_next:
+0x694a 029351 rtn blank 
+0x694b 029352 copy pdata ,loopcnt 
+0x694c 029354 fetch 2 ,mem_keyscan_ptr 
+0x694d 029355 increase 3 ,pdata 
+0x694e 029356 copy pdata ,rega 
+:      029357 keyscan_key_init_lp1:
+0x694f 029358 ifetcht 1 ,rega 
+0x6950 029359 call gpio_config_input 
+0x6951 029360 increase key_conf_struct_len ,rega 
+0x6952 029361 loop keyscan_key_init_lp1 
+:      029362 keyscan_key_init_end:
+0x6953 029363 rtn 
+:      029365 keyscan_scan_key:
+0x6954 029366 fetch 2 ,mem_keyscan_ptr 
+0x6955 029367 increase 3 ,pdata 
+0x6956 029368 copy pdata ,rega 
+0x6957 029370 force 0 ,regb 
+0x6958 029371 jam 0 ,mem_key_value_temp 
+:      029372 keyscan_scan_key_lp1:
+0x6959 029373 ifetcht 1 ,rega 
+0x695a 029374 call gpio_get_bit 
+0x695b 029375 bpatchx patch34_1 ,mem_patch34 
+0x695c 029376 fetch 2 ,mem_key_value_temp 
+0x695d 029377 copy regb ,queue 
+0x695e 029378 qsetflag true ,pdata 
+0x695f 029379 store 2 ,mem_key_value_temp 
+0x6960 029380 increase key_conf_struct_len ,rega 
+0x6961 029381 increase 1 ,regb 
+0x6962 029382 fetch 2 ,mem_key_num_ptr 
+0x6963 029383 ifetch 1 ,pdata 
+:      029384 keyscan_scan_key_lp1_next:
+0x6964 029385 ixor regb ,null 
+0x6965 029386 nbranch keyscan_scan_key_lp1 ,zero 
+0x6966 029387 fetch 2 ,mem_key_value_temp 
+0x6967 029388 fetcht 2 ,mem_key_value 
+0x6968 029389 ixor temp ,null 
+0x6969 029390 rtn zero 
+0x696a 029391 enable user 
+0x696b 029392 rtn 
+:      029394 keyscan_process_lpm_before:
+0x696c 029395 fetch 2 ,mem_key_num_ptr 
+0x696d 029396 ifetch 1 ,pdata 
+:      029397 keyscan_process_lpm_before_next:
+0x696e 029398 rtn blank 
+0x696f 029399 copy pdata ,loopcnt 
+0x6970 029400 fetch 2 ,mem_keyscan_ptr 
+0x6971 029401 increase 3 ,pdata 
+0x6972 029402 copy pdata ,rega 
+:      029403 keyscan_process_lpm_before_lp1:
+0x6973 029404 ifetcht 1 ,rega 
+0x6974 029405 call gpio_set_wake_by_current_state 
+0x6975 029406 increase key_conf_struct_len ,rega 
+0x6976 029407 loop keyscan_process_lpm_before_lp1 
+:      029408 keyscan_process_lpm_before_end:
+0x6977 029409 rtn 
+:      029411 keyscan_key_process:
+0x6978 029412 arg key_scan_timer ,queue 
+0x6979 029413 call timer_check 
+0x697a 029414 nrtn blank 
+0x697b 029415 setarg 0x20 
+0x697c 029416 arg key_scan_timer ,queue 
+0x697d 029417 call timer_init 
+0x697e 029418 disable user 
+0x697f 029419 call keyscan_process_lpm_before 
+0x6980 029420 bpatchx patch34_2 ,mem_patch34 
+0x6981 029421 fetch 2 ,mem_key_num_ptr 
+0x6982 029422 ifetch 1 ,pdata 
+:      029423 keyscan_key_process_next:
+0x6983 029424 rtn blank 
+0x6984 029425 call keyscan_scan_key 
+0x6985 029426 nbranch lpm_button_clean_wake_lock ,user 
+0x6986 029427 call lpm_button_get_wake_lock 
+0x6987 029428 disable user 
+0x6988 029429 fetch 2 ,mem_key_value_temp 
+0x6989 029430 store 2 ,mem_key_value_temp4 
+0x698a 029431 jam 0 ,mem_key_value_temp6 
+0x698b 029432 force 0 ,queue 
+:      029433 keyscan_key_lp1:
+0x698c 029434 fetch 2 ,mem_key_value 
+0x698d 029435 rshift pdata ,temp 
+0x698e 029436 storet 2 ,mem_key_value 
+0x698f 029437 and pdata ,0x01 ,pdata 
+0x6990 029438 fetcht 2 ,mem_key_value_temp4 
+0x6991 029439 and temp ,0x01 ,rega 
+0x6992 029440 rshift temp ,temp 
+0x6993 029441 storet 2 ,mem_key_value_temp4 
+0x6994 029442 ixor rega ,null 
+0x6995 029443 ncall keyscan_send_key_data ,zero 
+0x6996 029444 fetch 2 ,mem_key_num_ptr 
+0x6997 029445 ifetch 1 ,pdata 
+:      029446 keyscan_key_lp1_next:
+0x6998 029447 fetcht 1 ,mem_key_value_temp6 
+0x6999 029448 increase 1 ,temp 
+0x699a 029449 storet 1 ,mem_key_value_temp6 
+0x699b 029450 copy temp ,queue 
+0x699c 029451 ixor queue ,null 
+0x699d 029452 nbranch keyscan_key_lp1 ,zero 
+0x699e 029453 fetch 2 ,mem_key_value_temp 
+0x699f 029454 store 2 ,mem_key_value 
+0x69a0 029455 rtn 
+:      029456 keyscan_send_key_data:
+0x69a1 029457 bpatchx patch34_3 ,mem_patch34 
+0x69a2 029458 fetch 2 ,mem_keyscan_ptr 
+0x69a3 029459 increase 1 ,pdata 
+0x69a4 029460 ifetch 2 ,pdata 
+0x69a5 029461 branch callback_func 
+:      029472 pwm_init:
+0x69a6 029473 hfetch 1 ,core_clksel 
+0x69a7 029474 ior rega ,pdata 
+0x69a8 029475 hstore 1 ,core_clksel 
+0x69a9 029476 hfetch 2 ,core_clkoff 
+0x69aa 029477 set0 clock_off_pwm ,pdata 
+0x69ab 029478 hstore 2 ,core_clkoff 
+:      029479 delay_nop100:
+0x69ac 029480 nop 100 
+0x69ad 029481 rtn 
+:      029492 pwm_out_set:
+0x69ae 029493 fetcht 3 ,mem_pdatatemp + 2 
+0x69af 029494 setarg pwm_12mhz 
+0x69b0 029495 idiv temp 
+0x69b1 029496 call wait_div_end 
+0x69b2 029497 quotient temp 
+0x69b3 029498 fetch 1 ,mem_pdatatemp + 5 
+0x69b4 029499 imul32 temp ,pdata 
+0x69b5 029500 div pdata ,100 
+0x69b6 029501 call wait_div_end 
+0x69b7 029502 quotient rega 
+0x69b8 029503 copy temp ,pdata 
+0x69b9 029504 isub rega ,regb 
+0x69ba 029505 fetch 1 ,mem_pdatatemp + 1 
+0x69bb 029506 call pwm_duty_cycle_set 
+0x69bc 029507 fetch 1 ,mem_pdatatemp 
+0x69bd 029508 branch pwm_enable 
+:      029511 pwm_duty_cycle_set:
+0x69be 029512 beq 0 ,pwm_pwm0_duty_set 
+0x69bf 029513 beq 1 ,pwm_pwm1_duty_set 
+0x69c0 029514 beq 2 ,pwm_pwm2_duty_set 
+0x69c1 029515 beq 3 ,pwm_pwm3_duty_set 
+0x69c2 029516 beq 4 ,pwm_pwm4_duty_set 
+0x69c3 029517 beq 5 ,pwm_pwm5_duty_set 
+:      029518 pwm_pwm0_duty_set:
+0x69c4 029519 arg core_pwm_pcnt0 ,contw 
+0x69c5 029520 branch pwm_set_pncnt 
+:      029521 pwm_pwm1_duty_set:
+0x69c6 029522 arg core_pwm_pcnt1 ,contw 
+0x69c7 029523 branch pwm_set_pncnt 
+:      029524 pwm_pwm2_duty_set:
+0x69c8 029525 arg core_pwm_pcnt2 ,contw 
+0x69c9 029526 branch pwm_set_pncnt 
+:      029527 pwm_pwm3_duty_set:
+0x69ca 029528 arg core_pwm_pcnt3 ,contw 
+0x69cb 029529 branch pwm_set_pncnt 
+:      029530 pwm_pwm4_duty_set:
+0x69cc 029531 arg core_pwm_pcnt4 ,contw 
+0x69cd 029532 branch pwm_set_pncnt 
+:      029533 pwm_pwm5_duty_set:
+0x69ce 029534 arg core_pwm_pcnt5 ,contw 
+0x69cf 029535 branch pwm_set_pncnt 
+:      029536 pwm_set_pncnt:
+0x69d0 029537 copy rega ,pdata 
+0x69d1 029538 istore 2 ,contw 
+0x69d2 029539 copy regb ,pdata 
+0x69d3 029540 istore 2 ,contw 
+0x69d4 029541 rtn 
+:      029545 pwm_enable:
+0x69d5 029546 enable user 
+0x69d6 029547 branch pwm_gpio_set 
+:      029548 pwm_disable:
+0x69d7 029549 disable user 
+:      029550 pwm_gpio_set:
+0x69d8 029551 beq 4 ,pwm_gpio4_set 
+0x69d9 029552 beq 5 ,pwm_gpio5_set 
+0x69da 029553 beq 27 ,pwm_gpio27_set 
+0x69db 029554 beq 28 ,pwm_gpio28_set 
+0x69dc 029555 beq 3 ,pwm_gpio3_set 
+0x69dd 029556 beq 8 ,pwm_gpio8_set 
+0x69de 029557 beq 20 ,pwm_gpio20_set 
+0x69df 029558 beq 21 ,pwm_gpio21_set 
+0x69e0 029559 beq 22 ,pwm_gpio22_set 
+0x69e1 029560 beq 23 ,pwm_gpio23_set 
+0x69e2 029561 rtn 
+:      029564 pwm_gpio4_set:
+0x69e3 029565 arg 6 ,queue 
+0x69e4 029566 branch pwm_one_set_select 
+:      029567 pwm_gpio5_set:
+0x69e5 029568 arg 7 ,queue 
+0x69e6 029569 branch pwm_one_set_select 
+:      029570 pwm_gpio27_set:
+0x69e7 029571 arg 8 ,queue 
+0x69e8 029572 branch pwm_one_set_select 
+:      029573 pwm_gpio28_set:
+0x69e9 029574 arg 9 ,queue 
+0x69ea 029575 branch pwm_one_set_select 
+:      029576 pwm_gpio3_set:
+0x69eb 029577 arg 10 ,queue 
+0x69ec 029578 branch pwm_one_set_select 
+:      029579 pwm_gpio8_set:
+0x69ed 029580 arg 11 ,queue 
+0x69ee 029581 branch pwm_one_set_select 
+:      029582 pwm_gpio20_set:
+0x69ef 029583 arg 12 ,queue 
+0x69f0 029584 branch pwm_tw0_set_select 
+:      029585 pwm_gpio21_set:
+0x69f1 029586 arg 13 ,queue 
+0x69f2 029587 branch pwm_tw0_set_select 
+:      029588 pwm_gpio22_set:
+0x69f3 029589 arg 14 ,queue 
+0x69f4 029590 branch pwm_tw0_set_select 
+:      029591 pwm_gpio23_set:
+0x69f5 029592 arg 15 ,queue 
+0x69f6 029593 branch pwm_tw0_set_select 
+:      029595 pwm_set_select:
+0x69f7 029596 hfetch 2 ,core_gpio_sel1 
+0x69f8 029597 qsetflag user ,pdata 
+0x69f9 029598 hstore 2 ,core_gpio_sel1 
+0x69fa 029599 copy rega ,queue 
+0x69fb 029600 hfetch 1 ,core_gpio_key2 
+0x69fc 029601 qsetflag user ,pdata 
+0x69fd 029602 hstore 1 ,core_gpio_key2 
+0x69fe 029603 rtn 
+:      029605 pwm_one_set_select:
+0x69ff 029606 add queue ,-4 ,rega 
+0x6a00 029607 branch pwm_set_select 
+:      029609 pwm_tw0_set_select:
+0x6a01 029610 add queue ,-10 ,rega 
+0x6a02 029611 branch pwm_set_select 
+:      029616 rfcomm_init:
+0x6a03 029617 rtn wake 
+0x6a04 029618 jam 0 ,mem_rfcomm_send_more_pkt 
+0x6a05 029619 jam bits9600 ,memremoterpnbitrate 
+0x6a06 029620 jam databits8 ,memremoteprndatabits 
+0x6a07 029621 jam 0x11 ,memremoteprnxon 
+0x6a08 029622 jam 0x13 ,memremoteprnxoff 
+0x6a09 029623 setarg 0 
+0x6a0a 029624 store 3 ,memremoteprnstopbit 
+0x6a0b 029625 store 1 ,mem_spp_state 
+0x6a0c 029626 jam 0 ,memui_reconnect_mode 
+:      029628 rfcomm_init_spp:
+0x6a0d 029629 bpatchx patch34_4 ,mem_patch34 
+0x6a0e 029630 setarg 0 
+0x6a0f 029631 store 1 ,mem_spp_state 
+0x6a10 029632 store 1 ,mem_remote_spp_channel 
+0x6a11 029633 store 1 ,mem_pn_dlci 
+0x6a12 029634 fetch 1 ,mem_credit_flag 
+0x6a13 029635 beq credit_enable ,rfcomm_init_spp_with_credit 
+0x6a14 029636 jam 0x50 ,mem_credit_given 
+0x6a15 029637 rtn 
+:      029639 rfcomm_init_spp_with_credit:
+0x6a16 029640 jam 0x00 ,mem_credit_given 
+0x6a17 029641 rtn 
+:      029643 set_cr_bit:
+0x6a18 029644 or_into 0x02 ,temp 
+0x6a19 029645 rtn 
+:      029657 rfcomm_calculate_fcs_sabm:
+0x6a1a 029658 copy temp ,pdata 
+0x6a1b 029659 reverse pdata ,pdata 
+0x6a1c 029660 store 1 ,memfcstemp3 
+0x6a1d 029661 force ini_tx_sabm ,pdata 
+0x6a1e 029662 reverse pdata ,pdata 
+0x6a1f 029663 store 1 ,memfcstemp2 
+0x6a20 029664 force 0x01 ,pdata 
+0x6a21 029665 reverse pdata ,pdata 
+0x6a22 029666 store 1 ,memfcstemp1 
+0x6a23 029667 call caculate_fcs 
+0x6a24 029668 copy temp ,pdata 
+0x6a25 029669 rtn 
+:      029670 rfcomm_calculate_fcs_ua:
+0x6a26 029671 reverse pdata ,pdata 
+0x6a27 029672 store 1 ,memfcstemp3 
+0x6a28 029673 force rsp_tx_ua ,pdata 
+0x6a29 029674 reverse pdata ,pdata 
+0x6a2a 029675 store 1 ,memfcstemp2 
+0x6a2b 029676 force 0x01 ,pdata 
+0x6a2c 029677 reverse pdata ,pdata 
+0x6a2d 029678 store 1 ,memfcstemp1 
+0x6a2e 029679 branch caculate_fcs 
+:      029681 rfcomm_calculate_fcs_dlci0:
+0x6a2f 029682 fetch 1 ,mem_rfcomm_initiator 
+0x6a30 029683 branch rfcomm_calculate_fcs_dlci0_res ,blank 
+0x6a31 029684 setarg 0x70 
+0x6a32 029685 rtn 
+:      029686 rfcomm_calculate_fcs_dlci0_res:
+0x6a33 029687 setarg 0xaa 
+0x6a34 029688 rtn 
+:      029690 rfcomm_save_fcs_uih:
+0x6a35 029691 reverse pdata ,pdata 
+0x6a36 029692 store 1 ,memfcstemp3 
+0x6a37 029693 force rsp_rx_uih ,pdata 
+0x6a38 029694 call caculate_uihdata_fcs 
+0x6a39 029695 fetcht 2 ,mem_contw_temp 
+0x6a3a 029696 copy temp ,contw 
+0x6a3b 029697 istore 1 ,contw 
+0x6a3c 029698 copy contw ,temp 
+0x6a3d 029699 storet 2 ,mem_contw_temp 
+0x6a3e 029700 force rsp_rx_uih_wdata ,pdata 
+0x6a3f 029701 call caculate_uihdata_fcs 
+0x6a40 029702 fetcht 2 ,mem_contw_temp 
+0x6a41 029703 copy temp ,contw 
+0x6a42 029704 istore 1 ,contw 
+0x6a43 029705 rtn 
+:      029714 caculate_uihdata_fcs:
+0x6a44 029715 reverse pdata ,pdata 
+0x6a45 029716 store 1 ,memfcstemp2 
+0x6a46 029717 fetch 2 ,memfcstemp2 
+0x6a47 029718 lshift8 pdata ,pdata 
+0x6a48 029719 store 3 ,mem_mod2div_temp 
+0x6a49 029720 arg 0x107 ,rega 
+0x6a4a 029721 arg 0xf ,regb 
+0x6a4b 029722 call mod2div 
+0x6a4c 029723 xor_into 0xd7 ,pdata 
+0x6a4d 029724 invert pdata ,pdata 
+0x6a4e 029725 reverse pdata ,pdata 
+0x6a4f 029726 rtn 
+:      029736 caculate_fcs:
+0x6a50 029737 fetch 3 ,memfcstemp1 
+0x6a51 029738 store 3 ,mem_mod2div_temp 
+0x6a52 029739 arg 0x107 ,rega 
+0x6a53 029740 arg 0xf ,regb 
+0x6a54 029741 call mod2div 
+0x6a55 029742 lshift8 pdata ,pdata 
+0x6a56 029743 arg 0x7 ,regb 
+0x6a57 029744 call mod2div 
+0x6a58 029745 xor_into 0x2b ,pdata 
+0x6a59 029746 invert pdata ,pdata 
+0x6a5a 029747 reverse pdata ,pdata 
+0x6a5b 029748 copy pdata ,temp 
+0x6a5c 029749 rtn 
+:      029751 mod2div:
+0x6a5d 029752 arg 0 ,regc 
+0x6a5e 029753 copy regb ,loopcnt 
+0x6a5f 029754 call right_shift_n 
+0x6a60 029755 icopy temp 
+:      029756 mod2div_loop:
+0x6a61 029761 copy temp ,pdata 
+0x6a62 029762 lshift regc ,regc 
+0x6a63 029763 bbit0 8 ,mod2div_not_enough_reduction 
+0x6a64 029764 ixor rega ,temp 
+0x6a65 029765 increase 1 ,regc 
+:      029766 mod2div_not_enough_reduction:
+0x6a66 029767 lshift temp ,temp 
+0x6a67 029768 fetch 3 ,mem_mod2div_temp 
+0x6a68 029769 increase -1 ,regb 
+0x6a69 029770 compare 0xff ,regb ,0xff 
+0x6a6a 029771 branch mod2div_end ,true 
+0x6a6b 029772 copy regb ,loopcnt 
+0x6a6c 029773 call right_shift_n 
+0x6a6d 029774 isolate1 0 ,pdata 
+0x6a6e 029775 setflag true ,0 ,temp 
+0x6a6f 029776 branch mod2div_loop 
+:      029777 mod2div_end:
+0x6a70 029779 rshift temp ,pdata 
+0x6a71 029780 rtn 
+:      029782 get_rfcomm_snd_adss:
+0x6a72 029783 fetcht 1 ,mem_pn_dlci 
+:      029784 dlci_to_address_cmd:
+0x6a73 029786 lshift2 temp ,temp 
+0x6a74 029787 set1 rfcomm_address_ext_len ,temp 
+0x6a75 029788 fetch 1 ,mem_rfcomm_initiator 
+0x6a76 029789 ncall set_cr_bit ,blank 
+0x6a77 029790 storet 1 ,mem_rfcomm_send_adss 
+0x6a78 029791 rtn 
+:      029793 channel_to_dlci:
+0x6a79 029795 lshift temp ,temp 
+0x6a7a 029796 fetch 1 ,mem_rfcomm_initiator 
+0x6a7b 029797 setflag blank ,0 ,temp 
+0x6a7c 029799 rtn 
+:      029800 rfcomm_rx_process_dlci0_sabm:
+0x6a7d 029801 fetcht 1 ,mem_current_channel 
+0x6a7e 029802 jam 0xd7 ,mem_current_fcs 
+0x6a7f 029803 call rfcomm_send_ua 
+0x6a80 029804 fetch 1 ,mem_rfcomm_state 
+0x6a81 029805 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+0x6a82 029806 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+0x6a83 029807 store 1 ,mem_rfcomm_state 
+0x6a84 029808 jam 0 ,mem_rfcomm_initiator 
+0x6a85 029809 branch rfcomm_rx_process_end 
+:      029810 rfcomm_rx_process_dlci0_ua:
+0x6a86 029811 fetch 1 ,mem_rfcomm_state 
+0x6a87 029812 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+0x6a88 029813 store 1 ,mem_rfcomm_state 
+0x6a89 029814 branch rfcomm_rx_process_end 
+:      029817 rfcomm_rx_process:
+0x6a8a 029818 bpatchx patch34_5 ,mem_patch34 
+0x6a8b 029819 fetch 1 ,memui_reconnect_mode 
+0x6a8c 029820 beq no_reconnection ,rfcomm_rx_process_remote_page 
+0x6a8d 029821 branch rfcomm_rx_process_reconn 
+:      029823 rfcomm_rx_process_remote_page:
+0x6a8e 029824 fetch 2 ,mem_l2cap_payload_ptr 
+0x6a8f 029825 copy pdata ,contr 
+0x6a90 029826 call get_rfcomm_head_struct 
+0x6a91 029827 fetch 1 ,mem_current_channel 
+0x6a92 029828 beq 0 ,parse_dlci0_rp 
+0x6a93 029829 branch parse_uih_rp 
+:      029830 parse_dlci0_rp:
+0x6a94 029831 bpatchx patch34_6 ,mem_patch34 
+0x6a95 029832 fetch 1 ,mem_current_frame_type 
+0x6a96 029833 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+0x6a97 029834 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+0x6a98 029835 beq rfcomm_frame_type_uih ,parse_dlci0_rp_uih 
+0x6a99 029836 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
+0x6a9a 029837 rtn 
+:      029840 parse_dlci0_rp_uih:
+0x6a9b 029841 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6a9c 029842 copy pdata ,contr 
+0x6a9d 029843 call get_rfcomm_uih_head_struct 
+0x6a9e 029844 fetch 1 ,mem_uih_cmd_type 
+0x6a9f 029845 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
+0x6aa0 029846 beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
+0x6aa1 029847 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
+0x6aa2 029848 beq uih_modem_status_res ,parse_dlci0_rp_uih_ms_res 
+0x6aa3 029849 beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
+0x6aa4 029850 branch rfcomm_rx_process_end 
+:      029852 parse_dlci0_rp_uih_pn_cmd:
+0x6aa5 029853 call parse_dlci0_rp_uih_pn_res_common 
+0x6aa6 029855 branch parse_dlci0_rp_uih_pn_cmd_spp 
+:      029857 parse_dlci0_rp_uih_pn_cmd_spp:
+0x6aa7 029858 fetch 1 ,mem_spp_state 
+0x6aa8 029859 set1 rfcomm_channel_state_pn_cmd ,pdata 
+0x6aa9 029860 set1 rfcomm_channel_state_pn_res ,pdata 
+0x6aaa 029861 store 1 ,mem_spp_state 
+0x6aab 029862 call rfcomm_send_param_neg_res 
+0x6aac 029863 branch rfcomm_rx_process_end 
+:      029865 parse_dlci0_rp_uih_pn_res:
+0x6aad 029866 call parse_dlci0_rp_uih_pn_res_common 
+0x6aae 029867 branch rfcomm_rx_process_end 
+:      029869 parse_dlci0_rp_uih_pn_res_common:
+0x6aaf 029870 call get_param_payload_ptr 
+0x6ab0 029871 branch get_rfcomm_prarmer_negotiation 
+:      029873 get_rfcomm_param_modem_status:
+0x6ab1 029874 call get_param_payload_ptr 
+0x6ab2 029875 ifetch 1 ,contr 
+0x6ab3 029876 rshift3 pdata ,pdata 
+0x6ab4 029877 store 1 ,mem_ms_channel 
+0x6ab5 029878 ifetch 1 ,contr 
+0x6ab6 029879 store 1 ,mem_ms_param 
+0x6ab7 029880 rtn 
+:      029883 get_rfcomm_head_struct:
+0x6ab8 029884 ifetch 1 ,contr 
+0x6ab9 029885 store 1 ,mem_current_adss 
+0x6aba 029886 rshift3 pdata ,pdata 
+0x6abb 029887 store 1 ,mem_current_channel 
+0x6abc 029888 ifetch 1 ,contr 
+0x6abd 029889 store 1 ,mem_current_frame_type 
+:      029890 get_rfcomm_current_length:
+0x6abe 029891 call get_rfcomm_length_common 
+0x6abf 029892 storet 2 ,mem_current_length 
+0x6ac0 029893 copy contr ,pdata 
+0x6ac1 029894 store 2 ,mem_rfcomm_uih_payload_ptr 
+0x6ac2 029895 rtn 
+:      029897 get_rfcomm_uih_head_struct:
+0x6ac3 029898 ifetch 1 ,contr 
+0x6ac4 029899 rshift pdata ,pdata 
+0x6ac5 029900 store 1 ,mem_uih_cmd_type 
+0x6ac6 029901 call get_rfcomm_length_common 
+0x6ac7 029902 storet 2 ,mem_uih_length 
+0x6ac8 029903 copy contr ,pdata 
+0x6ac9 029904 store 2 ,mem_param_payload_ptr 
+0x6aca 029905 rtn 
+:      029908 get_param_payload_ptr:
+0x6acb 029909 fetch 2 ,mem_param_payload_ptr 
+0x6acc 029910 copy pdata ,contr 
+0x6acd 029911 rtn 
+:      029913 get_rfcomm_length_common:
+0x6ace 029914 ifetch 1 ,contr 
+0x6acf 029915 copy pdata ,temp 
+0x6ad0 029916 rshift temp ,temp 
+0x6ad1 029917 rtnbit1 0 
+0x6ad2 029918 ifetch 1 ,contr 
+0x6ad3 029919 lshift3 pdata ,pdata 
+0x6ad4 029920 lshift4 pdata ,pdata 
+0x6ad5 029921 iadd temp ,temp 
+0x6ad6 029922 rtn 
+:      029924 get_rfcomm_prarmer_negotiation:
+0x6ad7 029925 ifetch 1 ,contr 
+0x6ad8 029926 store 1 ,mem_pn_dlci 
+0x6ad9 029927 ifetch 1 ,contr 
+0x6ada 029928 store 1 ,mem_pn_credit_flow_type_info 
+0x6adb 029929 ifetch 1 ,contr 
+0x6adc 029930 store 1 ,mem_pn_priority 
+0x6add 029931 ifetch 1 ,contr 
+0x6ade 029932 store 1 ,mem_pn_acknowledg_timer 
+0x6adf 029933 ifetch 2 ,contr 
+0x6ae0 029934 store 2 ,mem_pn_max_frame_size 
+0x6ae1 029935 ifetch 1 ,contr 
+0x6ae2 029936 store 1 ,mem_pn_max_retrans 
+0x6ae3 029937 ifetch 1 ,contr 
+0x6ae4 029938 store 1 ,mem_remote_credits 
+0x6ae5 029939 rtn 
+:      029942 parse_dlci0_rp_uih_ms_cmd:
+0x6ae6 029943 call get_rfcomm_param_modem_status 
+0x6ae7 029945 branch parse_dlci0_rp_uih_ms_cmd_spp 
+:      029947 parse_dlci0_rp_uih_ms_cmd_spp:
+0x6ae8 029948 fetch 1 ,mem_spp_state 
+0x6ae9 029949 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+0x6aea 029950 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+0x6aeb 029951 store 1 ,mem_spp_state 
+0x6aec 029952 fetcht 1 ,mem_pn_dlci 
+0x6aed 029953 lshift2 temp ,temp 
+0x6aee 029954 or_into 3 ,temp 
+0x6aef 029955 call rfcomm_send_modem_status_res 
+0x6af0 029956 jam more_pkt_msc_cmd_spp ,mem_rfcomm_send_more_pkt 
+0x6af1 029957 branch rfcomm_rx_process_end 
+:      029959 parse_dlci0_rp_uih_ms_res:
+0x6af2 029960 jam bt_evt_spp_connected ,mem_fifo_temp 
+0x6af3 029961 call ui_ipc_send_event 
+0x6af4 029962 call get_rfcomm_param_modem_status 
+0x6af5 029963 fetch 1 ,mem_ms_channel 
+0x6af6 029964 sub pdata ,1 ,null 
+0x6af7 029965 branch parse_dlci0_rp_uih_ms_res_spp ,zero 
+0x6af8 029966 branch assert 
+:      029967 parse_dlci0_rp_uih_ms_res_spp:
+0x6af9 029968 fetch 1 ,mem_spp_state 
+0x6afa 029969 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+0x6afb 029970 store 1 ,mem_spp_state 
+0x6afc 029971 branch rfcomm_rx_process_end 
+:      029973 parse_dlci0_rp_uih_cmd_port:
+0x6afd 029974 call get_param_payload_ptr 
+0x6afe 029975 ifetch 1 ,contr 
+0x6aff 029976 store 1 ,mem_rpn_dlci 
+0x6b00 029977 call l2cap_malloc_rfcomm_channel 
+0x6b01 029978 call l2cap_get_rfcomm_tx_buff 
+0x6b02 029979 setarg 0x000e 
+0x6b03 029980 istore 2 ,contw 
+0x6b04 029981 fetch 2 ,mem_rfcomm_remote_cid 
+0x6b05 029982 istore 2 ,contw 
+0x6b06 029983 fetch 1 ,mem_rfcomm_initiator 
+0x6b07 029985 lshift pdata ,pdata 
+0x6b08 029986 set1 0 ,pdata 
+0x6b09 029987 istore 1 ,contw 
+0x6b0a 029988 bpatchx patch34_7 ,mem_patch34 
+0x6b0b 029989 setarg 0x15ef 
+0x6b0c 029990 istore 2 ,contw 
+0x6b0d 029991 setarg 0x1191 
+0x6b0e 029992 istore 2 ,contw 
+0x6b0f 029995 fetch 1 ,mem_rpn_dlci 
+0x6b10 029996 istore 1 ,contw 
+0x6b11 029997 setarg 0x000007 
+0x6b12 029998 istore 5 ,contw 
+0x6b13 030001 setarg 0x01 
+0x6b14 030002 istore 2 ,contw 
+0x6b15 030005 call rfcomm_calculate_fcs_dlci0 
+0x6b16 030006 istore 1 ,contw 
+0x6b17 030007 rtn 
+:      030011 parse_uih_rp:
+0x6b18 030012 branch parse_uih_rp_spp 
+:      030014 parse_uih_rp_spp:
+0x6b19 030015 bpatchx patch35_0 ,mem_patch35 
+0x6b1a 030016 fetch 1 ,mem_current_frame_type 
+0x6b1b 030017 beq rfcomm_frame_type_ua ,parse_uih_rp_spp_ua 
+0x6b1c 030018 beq rfcomm_frame_type_sabm ,parse_uih_rp_spp_sabm 
+0x6b1d 030019 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+0x6b1e 030020 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+0x6b1f 030021 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn 
+0x6b20 030022 rtn 
+:      030023 parse_uih_rp_spp_ua:
+0x6b21 030024 fetch 1 ,mem_spp_state 
+0x6b22 030025 set1 rfcomm_channel_state_ua ,pdata 
+0x6b23 030026 store 1 ,mem_spp_state 
+0x6b24 030027 branch rfcomm_rx_process_end 
+:      030028 parse_uih_rp_spp_sabm:
+0x6b25 030029 fetch 1 ,mem_spp_state 
+0x6b26 030030 set1 rfcomm_channel_state_ua ,pdata 
+0x6b27 030031 set1 rfcomm_channel_state_sabm ,pdata 
+0x6b28 030032 store 1 ,mem_spp_state 
+0x6b29 030033 fetch 1 ,mem_current_adss 
+0x6b2a 030034 call rfcomm_calculate_fcs_ua 
+0x6b2b 030035 store 1 ,mem_current_fcs 
+0x6b2c 030036 call rfcomm_send_ua 
+0x6b2d 030037 fetch 1 ,mem_current_adss 
+0x6b2e 030038 rshift2 pdata ,pdata 
+0x6b2f 030039 store 1 ,mem_pn_dlci 
+0x6b30 030040 lshift2 pdata ,pdata 
+0x6b31 030041 set0 rfcomm_address_cr ,pdata 
+0x6b32 030042 set1 rfcomm_address_ext_len ,pdata 
+0x6b33 030043 arg mem_hiufcs_spp ,temp 
+0x6b34 030044 storet 2 ,mem_contw_temp 
+0x6b35 030045 call rfcomm_save_fcs_uih 
+0x6b36 030046 branch rfcomm_rx_process_end 
+:      030048 parse_uih_spp_uih_credits:
+0x6b37 030049 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b38 030050 copy pdata ,contr 
+0x6b39 030051 increase 1 ,pdata 
+0x6b3a 030052 store 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b3b 030053 ifetch 1 ,contr 
+0x6b3c 030054 fetcht 1 ,mem_remote_credits 
+0x6b3d 030055 iadd temp ,pdata 
+0x6b3e 030056 store 1 ,mem_remote_credits 
+:      030057 parse_uih_spp_uih:
+0x6b3f 030058 call rfcomm_increase_credit_given 
+:      030059 parse_uih_spp_uih_cont:
+0x6b40 030060 call get_rfcomm_snd_adss 
+0x6b41 030061 call rfcomm_send_uih_without_payload 
+0x6b42 030062 call spp_process_rx_data 
+0x6b43 030063 branch rfcomm_rx_process_end 
+:      030065 parse_uih_rp_spp_disconn_send_event:
+0x6b44 030066 jam bt_evt_spp_disconnected ,mem_fifo_temp 
+0x6b45 030067 call ui_ipc_send_event 
+:      030068 parse_uih_rp_spp_disconn:
+0x6b46 030069 call rfcomm_init_spp 
+0x6b47 030070 fetch 1 ,mem_current_adss 
+0x6b48 030071 call rfcomm_calculate_fcs_ua 
+0x6b49 030072 store 1 ,mem_current_fcs 
+0x6b4a 030073 call rfcomm_send_ua 
+0x6b4b 030074 branch rfcomm_rx_process_end 
+:      030079 rfcomm_rx_process_reconn:
+0x6b4c 030080 fetch 2 ,mem_l2cap_payload_ptr 
+0x6b4d 030081 copy pdata ,contr 
+0x6b4e 030082 call get_rfcomm_head_struct 
+0x6b4f 030083 fetch 1 ,mem_current_channel 
+0x6b50 030084 beq 0 ,parse_dlci0_reconn 
+0x6b51 030085 branch parse_uih_reconn 
+:      030087 parse_dlci0_reconn:
+0x6b52 030088 bpatchx patch35_1 ,mem_patch35 
+0x6b53 030089 fetch 1 ,mem_current_frame_type 
+0x6b54 030090 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+0x6b55 030091 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+0x6b56 030092 beq rfcomm_frame_type_uih ,parse_dlci0_reconn_uih 
+0x6b57 030093 branch rfcomm_rx_process_end 
+:      030094 parse_dlci0_reconn_uih:
+0x6b58 030095 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b59 030096 copy pdata ,contr 
+0x6b5a 030097 call get_rfcomm_uih_head_struct 
+0x6b5b 030098 fetch 1 ,mem_uih_cmd_type 
+0x6b5c 030099 beq uih_param_neg_cmd ,parse_dlci0_reconn_uih_pn_cmd 
+0x6b5d 030100 beq uih_param_neg_res ,parse_dlci0_reconn_uih_pn_cmd 
+0x6b5e 030101 beq uih_modem_status_cmd ,parse_dlci0_reconn_uih_ms_cmd 
+0x6b5f 030102 beq uih_modem_status_res ,parse_dlci0_reconn_uih_ms_res 
+0x6b60 030103 branch rfcomm_rx_process_end 
+:      030105 parse_dlci0_reconn_uih_pn_cmd:
+0x6b61 030106 call parse_dlci0_rp_uih_pn_res_common 
+0x6b62 030107 fetch 1 ,mem_pn_dlci 
+0x6b63 030108 rshift pdata ,pdata 
+0x6b64 030109 fetcht 1 ,mem_remote_spp_channel 
+0x6b65 030110 isub temp ,null 
+0x6b66 030111 branch parse_dlci0_reconn_uih_pn_cmd_spp ,zero 
+0x6b67 030112 branch assert 
+:      030113 parse_dlci0_reconn_uih_pn_cmd_spp:
+0x6b68 030114 fetch 1 ,mem_spp_state 
+0x6b69 030115 set1 rfcomm_channel_state_pn_res ,pdata 
+0x6b6a 030116 store 1 ,mem_spp_state 
+0x6b6b 030117 branch rfcomm_rx_process_end 
+:      030119 parse_dlci0_reconn_uih_ms_cmd:
+0x6b6c 030120 call get_rfcomm_param_modem_status 
+0x6b6d 030121 fetch 1 ,mem_ms_channel 
+0x6b6e 030122 fetcht 1 ,mem_remote_spp_channel 
+0x6b6f 030123 isub temp ,null 
+0x6b70 030124 branch parse_dlci0_reconn_uih_ms_cmd_spp ,zero 
+0x6b71 030125 branch assert 
+0x6b72 030126 branch rfcomm_rx_process_end 
+:      030127 parse_dlci0_reconn_uih_ms_cmd_spp:
+0x6b73 030128 fetch 1 ,mem_spp_state 
+0x6b74 030129 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+0x6b75 030130 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+0x6b76 030131 store 1 ,mem_spp_state 
+0x6b77 030132 fetcht 1 ,mem_pn_dlci 
+0x6b78 030133 lshift2 temp ,temp 
+0x6b79 030134 or_into 3 ,temp 
+0x6b7a 030135 call rfcomm_send_modem_status_res 
+0x6b7b 030136 branch rfcomm_rx_process_end 
+:      030138 parse_dlci0_reconn_uih_ms_res:
+0x6b7c 030139 call get_rfcomm_param_modem_status 
+0x6b7d 030140 fetch 1 ,mem_ms_channel 
+0x6b7e 030141 fetcht 1 ,mem_remote_spp_channel 
+0x6b7f 030142 isub temp ,null 
+0x6b80 030143 branch parse_dlci0_reconn_uih_ms_res_spp ,zero 
+0x6b81 030144 branch assert 
+:      030145 parse_dlci0_reconn_uih_ms_res_spp:
+0x6b82 030146 fetch 1 ,mem_spp_state 
+0x6b83 030147 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+0x6b84 030148 store 1 ,mem_spp_state 
+0x6b85 030149 branch rfcomm_rx_process_end 
+:      030151 parse_uih_reconn:
+0x6b86 030152 fetch 1 ,mem_current_channel 
+0x6b87 030153 fetcht 1 ,mem_remote_spp_channel 
+0x6b88 030154 isub temp ,null 
+0x6b89 030155 branch parse_uih_reconn_spp ,zero 
+0x6b8a 030156 branch assert 
+0x6b8b 030157 branch rfcomm_rx_process_end 
+:      030159 parse_uih_reconn_spp:
+0x6b8c 030160 fetch 1 ,mem_current_frame_type 
+0x6b8d 030161 beq rfcomm_frame_type_ua ,parse_uih_reconn_spp_ua 
+0x6b8e 030162 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+0x6b8f 030163 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+0x6b90 030164 beq rfcomm_frame_type_disconn ,parse_uih_reconn_spp_disconn 
+:      030165 parse_uih_reconn_spp_ua:
+0x6b91 030166 fetch 1 ,mem_spp_state 
+0x6b92 030167 set1 rfcomm_channel_state_ua ,pdata 
+0x6b93 030168 store 1 ,mem_spp_state 
+0x6b94 030169 branch rfcomm_rx_process_end 
+:      030170 parse_uih_reconn_spp_sabm:
+0x6b95 030171 branch parse_uih_reconn_spp_sabm 
+:      030172 parse_uih_reconn_spp_disconn:
+0x6b96 030173 branch parse_uih_rp_spp_disconn 
+:      030174 rfcomm_rx_process_end:
+0x6b97 030175 rtn 
+:      030177 rfcomm_send_more_pkt:
+0x6b98 030178 fetch 1 ,mem_rfcomm_send_more_pkt 
+0x6b99 030179 rtn blank 
+0x6b9a 030180 beq more_pkt_msc_cmd_spp ,rfcomm_send_more_pkt_msc_cmd_spp 
+0x6b9b 030181 branch assert 
+:      030183 rfcomm_send_more_pkt_msc_cmd_spp:
+0x6b9c 030184 jam 0 ,mem_rfcomm_send_more_pkt 
+0x6b9d 030185 call l2cap_malloc_rfcomm_channel 
+0x6b9e 030186 arg spp_slave_channel ,temp 
+0x6b9f 030187 fetcht 1 ,mem_pn_dlci 
+0x6ba0 030188 lshift2 temp ,temp 
+:      030189 rfcomm_send_more_pkt_msc_cmd_spp0:
+0x6ba1 030190 or_into 0x03 ,temp 
+0x6ba2 030191 arg 0xaa ,rega 
+0x6ba3 030192 call rfcomm_send_modem_status_cmd 
+0x6ba4 030193 call l2cap_get_rfcomm_tx_buff 
+0x6ba5 030194 copy contw ,contr 
+0x6ba6 030195 ifetch 2 ,contr 
+0x6ba7 030196 branch assert ,blank 
+0x6ba8 030197 rtn 
+:      030199 rfcomm_send_sabm:
+0x6ba9 030200 call l2cap_get_rfcomm_tx_buff 
+0x6baa 030201 setarg 0x0004 
+0x6bab 030202 istore 2 ,contw 
+0x6bac 030203 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bad 030204 istore 2 ,contw 
+0x6bae 030205 fetch 1 ,mem_current_adss 
+0x6baf 030206 istore 1 ,contw 
+0x6bb0 030207 bpatchx patch35_2 ,mem_patch35 
+0x6bb1 030208 setarg 0x013f 
+0x6bb2 030209 istore 2 ,contw 
+0x6bb3 030210 fetch 1 ,mem_current_fcs 
+0x6bb4 030211 istore 1 ,contw 
+0x6bb5 030212 rtn 
+:      030213 rfcomm_send_ua:
+0x6bb6 030214 call l2cap_malloc_rfcomm_channel 
+0x6bb7 030215 call l2cap_get_rfcomm_tx_buff 
+0x6bb8 030216 setarg 0x0004 
+0x6bb9 030217 istore 2 ,contw 
+0x6bba 030218 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bbb 030219 istore 2 ,contw 
+0x6bbc 030220 fetch 1 ,mem_current_adss 
+0x6bbd 030221 istore 1 ,contw 
+0x6bbe 030222 bpatchx patch35_3 ,mem_patch35 
+0x6bbf 030223 setarg 0x0173 
+0x6bc0 030224 istore 2 ,contw 
+0x6bc1 030225 fetch 1 ,mem_current_fcs 
+0x6bc2 030226 istore 1 ,contw 
+0x6bc3 030227 rtn 
+:      030228 rfcomm_send_param_neg_cmd:
+0x6bc4 030229 call l2cap_get_rfcomm_tx_buff 
+0x6bc5 030230 setarg 0x000e 
+0x6bc6 030231 istore 2 ,contw 
+0x6bc7 030232 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bc8 030233 istore 2 ,contw 
+0x6bc9 030234 fetch 1 ,mem_rfcomm_initiator 
+0x6bca 030235 lshift pdata ,pdata 
+0x6bcb 030236 set1 0 ,pdata 
+0x6bcc 030237 istore 1 ,contw 
+0x6bcd 030238 bpatchx patch35_4 ,mem_patch35 
+0x6bce 030239 setarg 0x15ef 
+0x6bcf 030240 istore 2 ,contw 
+0x6bd0 030241 setarg 0x1183 
+0x6bd1 030242 istore 2 ,contw 
+0x6bd2 030243 copy temp ,pdata 
+0x6bd3 030244 istore 1 ,contw 
+0x6bd4 030245 setarg 0x0000f0 
+0x6bd5 030246 istore 3 ,contw 
+0x6bd6 030247 setarg rfcomm_max_frame_size 
+0x6bd7 030248 istore 2 ,contw 
+0x6bd8 030249 setarg 0 
+0x6bd9 030250 istore 1 ,contw 
+0x6bda 030251 setarg 0x01 
+0x6bdb 030252 istore 1 ,contw 
+0x6bdc 030253 call rfcomm_calculate_fcs_dlci0 
+0x6bdd 030254 istore 1 ,contw 
+0x6bde 030255 jam 0x10 ,mem_credit_given 
+0x6bdf 030256 rtn 
+:      030257 rfcomm_send_param_neg_res:
+0x6be0 030258 call l2cap_malloc_rfcomm_channel 
+0x6be1 030259 call l2cap_get_rfcomm_tx_buff 
+0x6be2 030260 setarg 0x000e 
+0x6be3 030261 istore 2 ,contw 
+0x6be4 030262 fetch 2 ,mem_rfcomm_remote_cid 
+0x6be5 030263 istore 2 ,contw 
+0x6be6 030264 fetch 1 ,mem_rfcomm_initiator 
+0x6be7 030265 lshift pdata ,pdata 
+0x6be8 030266 set1 0 ,pdata 
+0x6be9 030267 istore 1 ,contw 
+0x6bea 030268 bpatchx patch35_5 ,mem_patch35 
+0x6beb 030269 setarg 0x15ef 
+0x6bec 030270 istore 2 ,contw 
+0x6bed 030271 setarg 0x1181 
+0x6bee 030272 istore 2 ,contw 
+0x6bef 030273 fetch 1 ,mem_pn_dlci 
+0x6bf0 030274 istore 1 ,contw 
+0x6bf1 030275 setarg 0x0000e0 
+0x6bf2 030276 istore 3 ,contw 
+0x6bf3 030277 fetch 2 ,mem_rfcomm_max_frame_size 
+0x6bf4 030278 istore 2 ,contw 
+0x6bf5 030279 setarg 0x00 
+0x6bf6 030280 istore 1 ,contw 
+0x6bf7 030281 fetch 1 ,mem_rfcomm_credit_init_data 
+0x6bf8 030282 istore 1 ,contw 
+0x6bf9 030283 call rfcomm_calculate_fcs_dlci0 
+0x6bfa 030284 istore 1 ,contw 
+0x6bfb 030285 rtn 
+:      030286 rfcomm_send_modem_status_cmd:
+0x6bfc 030287 call l2cap_get_rfcomm_tx_buff 
+0x6bfd 030288 setarg 0x0008 
+0x6bfe 030289 istore 2 ,contw 
+0x6bff 030290 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c00 030291 istore 2 ,contw 
+0x6c01 030292 fetch 1 ,mem_rfcomm_initiator 
+0x6c02 030293 lshift pdata ,pdata 
+0x6c03 030294 set1 0 ,pdata 
+0x6c04 030295 istore 1 ,contw 
+0x6c05 030296 bpatchx patch35_6 ,mem_patch35 
+0x6c06 030297 setarg 0x09ef 
+0x6c07 030298 istore 2 ,contw 
+0x6c08 030299 setarg 0x05e3 
+0x6c09 030300 istore 2 ,contw 
+0x6c0a 030301 copy temp ,pdata 
+0x6c0b 030302 istore 1 ,contw 
+0x6c0c 030303 setarg 0x8d 
+0x6c0d 030304 istore 1 ,contw 
+0x6c0e 030305 call rfcomm_calculate_fcs_dlci0 
+0x6c0f 030306 istore 1 ,contw 
+0x6c10 030307 rtn 
+:      030309 rfcomm_send_modem_status_res:
+0x6c11 030310 call l2cap_malloc_rfcomm_channel 
+0x6c12 030311 call l2cap_get_rfcomm_tx_buff 
+0x6c13 030312 setarg 0x0008 
+0x6c14 030313 istore 2 ,contw 
+0x6c15 030314 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c16 030315 istore 2 ,contw 
+0x6c17 030316 copy temp ,timeup 
+0x6c18 030317 fetch 1 ,mem_rfcomm_initiator 
+0x6c19 030318 lshift pdata ,pdata 
+0x6c1a 030319 set1 0 ,pdata 
+0x6c1b 030320 istore 1 ,contw 
+0x6c1c 030321 bpatchx patch35_7 ,mem_patch35 
+0x6c1d 030322 setarg 0x09ef 
+0x6c1e 030323 istore 2 ,contw 
+0x6c1f 030324 setarg 0x05e1 
+0x6c20 030325 istore 2 ,contw 
+0x6c21 030326 copy timeup ,pdata 
+0x6c22 030327 istore 1 ,contw 
+0x6c23 030328 setarg 0x8d 
+0x6c24 030329 istore 1 ,contw 
+0x6c25 030330 call rfcomm_calculate_fcs_dlci0 
+0x6c26 030331 istore 1 ,contw 
+0x6c27 030332 rtn 
+:      030334 rfcomm_send_uih_without_payload:
+0x6c28 030335 bpatchx patch36_0 ,mem_patch36 
+0x6c29 030336 fetch 1 ,mem_credit_given 
+0x6c2a 030337 rtn blank 
+0x6c2b 030338 hfetch 2 ,core_uart_rxitems 
+0x6c2c 030339 nrtn blank 
+0x6c2d 030340 copy rega ,pdata 
+0x6c2e 030341 store 1 ,mem_pdatatemp + 1 
+0x6c2f 030342 storet 1 ,mem_pdatatemp 
+0x6c30 030343 call l2cap_malloc_is_fifo_full 
+0x6c31 030344 nrtn blank 
+0x6c32 030345 call l2cap_malloc_rfcomm_channel 
+0x6c33 030346 call l2cap_get_rfcomm_tx_buff 
+0x6c34 030347 setarg 0x05 
+0x6c35 030348 istore 2 ,contw 
+0x6c36 030349 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c37 030350 istore 2 ,contw 
+0x6c38 030351 fetch 1 ,mem_rfcomm_send_adss 
+0x6c39 030352 istore 1 ,contw 
+0x6c3a 030353 setarg 0x01ff 
+0x6c3b 030354 istore 2 ,contw 
+0x6c3c 030355 fetch 1 ,mem_credit_given 
+0x6c3d 030356 istore 1 ,contw 
+0x6c3e 030357 fetch 1 ,mem_hiufcs_spp_wcredits 
+0x6c3f 030358 istore 1 ,contw 
+0x6c40 030359 jam 0 ,mem_credit_given 
+0x6c41 030360 rtn 
+:      030362 rfcomm_increase_credit_given:
+0x6c42 030363 bpatchx patch36_1 ,mem_patch36 
+0x6c43 030364 fetch 1 ,mem_credit_flag 
+0x6c44 030365 rtneq credit_enable 
+0x6c45 030366 fetch 2 ,mem_current_length 
+0x6c46 030367 rtn blank 
+0x6c47 030368 fetch 1 ,mem_credit_given 
+0x6c48 030369 increase 1 ,pdata 
+0x6c49 030370 store 1 ,mem_credit_given 
+0x6c4a 030371 rtn 
+:      030373 spp_process_rx_data:
+0x6c4b 030374 fetch 2 ,mem_cb_receive_spp_data 
+0x6c4c 030375 branch callback_func 
+:      030377 spp_tx_rfcomm_packet:
+0x6c4d 030378 bpatchx patch36_2 ,mem_patch36 
+0x6c4e 030380 fetch 1 ,mem_remote_credits 
+0x6c4f 030381 rtn blank 
+0x6c50 030382 increase -1 ,pdata 
+0x6c51 030383 store 1 ,mem_remote_credits 
+0x6c52 030384 fetch 2 ,mem_pn_max_frame_size 
+0x6c53 030385 fetcht 2 ,mem_current_packet_length 
+0x6c54 030386 isub temp ,null 
+0x6c55 030387 branch ssp_tx_rfcomm_from_uart ,positive 
+0x6c56 030388 store 2 ,mem_current_packet_length 
+:      030389 ssp_tx_rfcomm_from_uart:
+0x6c57 030390 fetch 1 ,mem_credit_given 
+0x6c58 030391 branch ssp_tx_rfcomm_from_uart_without_credit ,blank 
+0x6c59 030392 jam 1 ,mem_rfcomm_send_offset 
+0x6c5a 030393 fetch 1 ,mem_hiufcs_spp_wcredits 
+0x6c5b 030394 store 1 ,mem_rfcomm_send_fcs 
+0x6c5c 030395 setarg rsp_rx_uih_wdata 
+0x6c5d 030396 store 1 ,mem_rfcomm_send_frame_type 
+0x6c5e 030397 branch ssp_tx_rfcomm_from_uart_common 
+:      030398 ssp_tx_rfcomm_from_uart_without_credit:
+0x6c5f 030399 jam 0 ,mem_rfcomm_send_offset 
+0x6c60 030400 fetch 1 ,mem_hiufcs_spp 
+0x6c61 030401 store 1 ,mem_rfcomm_send_fcs 
+0x6c62 030402 setarg rsp_tx_uih 
+0x6c63 030403 store 1 ,mem_rfcomm_send_frame_type 
+:      030404 ssp_tx_rfcomm_from_uart_common:
+0x6c64 030405 bpatchx patch36_3 ,mem_patch36 
+0x6c65 030406 fetch 2 ,mem_current_packet_length 
+0x6c66 030407 sub pdata ,127 ,null 
+0x6c67 030408 branch ssp_tx_rfcomm_from_uart_common0 ,positive 
+0x6c68 030409 fetch 1 ,mem_rfcomm_send_offset 
+0x6c69 030410 increase 1 ,pdata 
+0x6c6a 030411 store 1 ,mem_rfcomm_send_offset 
+:      030412 ssp_tx_rfcomm_from_uart_common0:
+0x6c6b 030413 call get_rfcomm_snd_adss 
+0x6c6c 030414 fetch 2 ,mem_current_packet_length 
+0x6c6d 030415 increase 8 ,pdata 
+0x6c6e 030416 fetcht 1 ,mem_rfcomm_send_offset 
+0x6c6f 030417 iadd temp ,rega 
+0x6c70 030419 call l2cap_malloc 
+0x6c71 030420 store 2 ,mem_rfcomm_tx_buff_ptr 
+0x6c72 030421 increase 4 ,pdata 
+0x6c73 030422 store 2 ,mem_rfcomm_tx_payload_ptr 
+0x6c74 030423 copy pdata ,contw 
+0x6c75 030424 fetch 1 ,mem_rfcomm_send_adss 
+0x6c76 030425 istore 1 ,contw 
+0x6c77 030426 fetch 1 ,mem_rfcomm_send_frame_type 
+0x6c78 030427 istore 1 ,contw 
+0x6c79 030428 call ssp_tx_write_length 
+0x6c7a 030429 call ssp_tx_write_given_credit 
+0x6c7b 030430 bpatchx patch36_4 ,mem_patch36 
+0x6c7c 030431 fetch 2 ,mem_nl_rx_data_src 
+0x6c7d 030432 copy pdata ,contru 
+0x6c7e 030433 fetch 2 ,mem_current_packet_length 
+0x6c7f 030434 copy pdata ,loopcnt 
+0x6c80 030435 call uart_copy_rx_bytes_fast 
+0x6c81 030436 copy contw ,temp 
+0x6c82 030437 copy contru ,pdata 
+0x6c83 030438 store 2 ,mem_nl_rx_data_src 
+0x6c84 030439 copy temp ,contw 
+0x6c85 030440 fetch 1 ,mem_rfcomm_send_fcs 
+0x6c86 030441 istore 1 ,contw 
+0x6c87 030442 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+0x6c88 030443 copy pdata ,contw 
+0x6c89 030444 fetch 2 ,mem_current_packet_length 
+0x6c8a 030445 fetcht 1 ,mem_rfcomm_send_offset 
+0x6c8b 030446 iadd temp ,pdata 
+0x6c8c 030447 increase 4 ,pdata 
+0x6c8d 030448 istore 2 ,contw 
+0x6c8e 030449 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c8f 030450 istore 2 ,contw 
+0x6c90 030451 jam 0 ,mem_credit_given 
+0x6c91 030452 fetch 2 ,mem_nl_rx_len_all 
+0x6c92 030453 beq 0 ,module_hci_command_tx_spp_tx_complete 
+0x6c93 030454 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x6c94 030455 rtn 
+:      030457 ssp_tx_write_length:
+0x6c95 030458 bpatchx patch36_5 ,mem_patch36 
+0x6c96 030459 fetch 2 ,mem_current_packet_length 
+0x6c97 030460 sub pdata ,0x7f ,null 
+0x6c98 030461 nbranch ssp_tx_write_long_packet ,positive 
+0x6c99 030462 lshift pdata ,pdata 
+0x6c9a 030463 set1 0 ,pdata 
+0x6c9b 030464 istore 1 ,contw 
+0x6c9c 030465 rtn 
+:      030466 ssp_tx_write_long_packet:
+0x6c9d 030467 fetch 2 ,mem_current_packet_length 
+0x6c9e 030468 rshift3 pdata ,pdata 
+0x6c9f 030469 rshift4 pdata ,temp 
+0x6ca0 030470 and_into 0x7f ,pdata 
+0x6ca1 030471 lshift pdata ,pdata 
+0x6ca2 030472 set0 0 ,pdata 
+0x6ca3 030473 istore 1 ,contw 
+0x6ca4 030474 istoret 1 ,contw 
+0x6ca5 030475 rtn 
+:      030476 ssp_tx_write_given_credit:
+0x6ca6 030477 fetch 1 ,mem_credit_given 
+0x6ca7 030478 rtn blank 
+0x6ca8 030479 istore 1 ,contw 
+0x6ca9 030480 rtn 
+:      030485 scheduler_process:
+0x6caa 030486 bpatchx patch36_6 ,mem_patch36 
+0x6cab 030487 call check_51cmd 
+0x6cac 030488 call app_process_bb_event 
+0x6cad 030489 call process_conn_sm 
+0x6cae 030491 bpatchx patch36_7 ,mem_patch36 
+0x6caf 030492 call sp_calc_sequence 
+0x6cb0 030493 call simple_pairing_sequence 
+0x6cb1 030494 call master_simple_paring_sequence 
+0x6cb2 030497 call l2cap_malloc_is_fifo_full 
+0x6cb3 030498 nrtn blank 
+0x6cb4 030500 call l2cap_call_proc_sigal_pending 
+0x6cb5 030501 call l2cap_malloc_is_fifo_full 
+0x6cb6 030502 nrtn blank 
+0x6cb7 030503 bpatchx patch37_0 ,mem_patch37 
+0x6cb8 030505 call process_upper_sm 
+0x6cb9 030506 call l2cap_send_config_req 
+0x6cba 030507 call rfcomm_send_more_pkt 
+:      030508 scheduler_process0:
+0x6cbb 030509 call scheduler_tx_disconnect_hid 
+0x6cbc 030510 bpatchx patch37_1 ,mem_patch37 
+0x6cbd 030513 branch app_process_bt 
+:      030515 scheduler_tx_disconnect_hid:
+0x6cbe 030516 fetch 1 ,mem_control_tasks 
+0x6cbf 030517 bbit1 l2cap_disconnect_interrupt ,l2cap_disconnect_interrupt_req 
+0x6cc0 030518 bbit1 l2cap_disconnect_control ,l2cap_disconnect_control_req 
+0x6cc1 030519 rtn 
+:      030521 scheduler_tx_l2cap_pkt:
+0x6cc2 030522 bpatchx patch37_2 ,mem_patch37 
+0x6cc3 030523 call l2cap_malloc_is_fifo_empty 
+0x6cc4 030524 rtn blank 
+0x6cc5 030525 fetch 1 ,mem_op 
+0x6cc6 030526 rtnbit1 op_txl2cap 
+0x6cc7 030527 call l2cap_malloc_fifo_out 
+0x6cc8 030528 store 2 ,mem_txptr 
+0x6cc9 030529 copy pdata ,contr 
+0x6cca 030530 ifetch 2 ,contr 
+0x6ccb 030531 increase 4 ,pdata 
+0x6ccc 030532 store 2 ,mem_tx_len 
+0x6ccd 030533 jam 6 ,mem_tx_lch 
+0x6cce 030534 bpatchx patch37_3 ,mem_patch37 
+0x6ccf 030535 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x6cd0 030536 branch scheduler_tx_l2cap_start_pkt ,blank 
+0x6cd1 030537 fetch 1 ,mem_op 
+0x6cd2 030538 rtnbit0 op_pkt_comp 
+0x6cd3 030539 set0 op_pkt_comp ,pdata 
+0x6cd4 030540 store 1 ,mem_op 
+0x6cd5 030541 jam 5 ,mem_tx_lch 
+0x6cd6 030542 fetcht 2 ,mem_l2cap_tx_multi_offset 
+0x6cd7 030543 fetch 2 ,mem_txptr 
+0x6cd8 030544 iadd temp ,pdata 
+0x6cd9 030545 store 2 ,mem_txptr 
+0x6cda 030546 fetch 2 ,mem_tx_len 
+0x6cdb 030547 isub temp ,pdata 
+0x6cdc 030548 store 2 ,mem_tx_len 
+:      030549 scheduler_tx_l2cap_start_pkt:
+0x6cdd 030550 bpatchx patch37_4 ,mem_patch37 
+0x6cde 030551 fetch 2 ,mem_tx_len 
+0x6cdf 030552 branch assert ,blank 
+0x6ce0 030553 arg l2cap_max_pkt_len ,temp 
+0x6ce1 030554 isub temp ,pdata 
+0x6ce2 030555 nbranch scheduler_tx_l2cap_last_pkt ,positive 
+0x6ce3 030556 bpatchx patch37_5 ,mem_patch37 
+0x6ce4 030557 storet 2 ,mem_tx_len 
+0x6ce5 030558 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x6ce6 030559 iadd temp ,pdata 
+0x6ce7 030560 store 2 ,mem_l2cap_tx_multi_offset 
+0x6ce8 030561 branch scheduler_tx_l2cap_pkt_end 
+:      030562 scheduler_tx_l2cap_last_pkt:
+0x6ce9 030563 setarg 0 
+0x6cea 030564 store 2 ,mem_l2cap_tx_multi_offset 
+:      030565 scheduler_tx_l2cap_pkt_end:
+0x6ceb 030566 fetch 1 ,mem_op 
+0x6cec 030567 set1 op_txl2cap ,pdata 
+0x6ced 030568 store 1 ,mem_op 
+0x6cee 030569 rtn 
+:      030571 scheduler_start_upper_sm:
+0x6cef 030572 fetch 1 ,mem_ui_profile_supported 
+0x6cf0 030573 bbit1 support_hid ,scheduler_start_upper_sm_hid 
+0x6cf1 030574 jam uppersm_reconn_sdp_conn ,mem_upper_sm_reconn 
+0x6cf2 030575 rtn 
+:      030576 scheduler_start_upper_sm_hid:
+0x6cf3 030577 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+0x6cf4 030578 rtn 
+:      030580 process_upper_sm:
+0x6cf5 030581 fetch 1 ,memui_reconnect_mode 
+0x6cf6 030582 nbranch process_upper_sm_reconn ,blank 
+:      030583 process_upper_sm_remote_page:
+0x6cf7 030584 fetch 1 ,mem_upper_sm_remote_page 
+0x6cf8 030586 rtn blank 
+0x6cf9 030588 jam 0 ,mem_upper_sm_remote_page 
+:      030589 process_upper_sm_rp_wait:
+0x6cfa 030590 rtn 
+:      030593 process_upper_sm_reconn:
+0x6cfb 030594 bpatchx patch37_6 ,mem_patch37 
+0x6cfc 030595 fetch 1 ,mem_upper_sm_reconn 
+0x6cfd 030596 rtn blank 
+0x6cfe 030597 beq uppersm_reconn_sdp_conn ,process_upper_sm_reconn_sdp_conn 
+0x6cff 030598 beq uppersm_reconn_sdp_conn_wait ,process_upper_sm_reconn_sdp_conn_wait 
+0x6d00 030599 beq uppersm_reconn_sdp_cfg ,process_upper_sm_reconn_sdp_cfg 
+0x6d01 030600 beq uppersm_reconn_sdp_cfg_wait ,process_upper_sm_reconn_sdp_cfg_wait 
+0x6d02 030601 beq uppersm_reconn_ss_spp ,process_upper_sm_reconn_ss_spp 
+0x6d03 030602 beq uppersm_reconn_ss_spp_wait ,process_upper_sm_reconn_ss_spp_wait 
+0x6d04 030603 beq uppersm_reconn_sdp_disconn ,process_upper_sm_reconn_sdp_disconn 
+0x6d05 030604 beq uppersm_reconn_sdp_disconn_wait ,process_upper_sm_reconn_sdp_disconn_wait 
+0x6d06 030605 beq uppersm_reconn_hid_ctrl_conn ,process_upper_sm_reconn_hid_ctrl_conn 
+0x6d07 030606 beq uppersm_reconn_hid_ctrl_conn_wait ,process_upper_sm_reconn_hid_ctrl_conn_wait 
+0x6d08 030607 beq uppersm_reconn_hid_ctrl_cfg ,process_upper_sm_reconn_hid_ctrl_cfg 
+0x6d09 030608 beq uppersm_reconn_hid_ctrl_cfg_wait ,process_upper_sm_reconn_hid_ctrl_cfg_wait 
+0x6d0a 030609 beq uppersm_reconn_hid_int_conn ,process_upper_sm_reconn_hid_int_conn 
+0x6d0b 030610 beq uppersm_reconn_hid_int_conn_wait ,process_upper_sm_reconn_hid_int_conn_wait 
+0x6d0c 030611 beq uppersm_reconn_hid_int_cfg ,process_upper_sm_reconn_hid_int_cfg 
+0x6d0d 030612 beq uppersm_reconn_hid_int_cfg_wait ,process_upper_sm_reconn_hid_int_cfg_wait 
+0x6d0e 030613 beq uppersm_reconn_rfcomm_conn ,process_upper_sm_reconn_rfcomm_conn 
+0x6d0f 030614 beq uppersm_reconn_rfcomm_conn_wait ,process_upper_sm_reconn_rfcomm_conn_wait 
+0x6d10 030615 beq uppersm_reconn_rfcomm_cfg ,process_upper_sm_reconn_rfcomm_cfg 
+0x6d11 030616 beq uppersm_reconn_rfcomm_cfg_wait ,process_upper_sm_reconn_rfcomm_cfg_wait 
+0x6d12 030617 beq uppersm_reconn_rfcomm_sabm ,process_upper_sm_reconn_rfcomm_sabm 
+0x6d13 030618 beq uppersm_reconn_rfcomm_sabm_wait ,process_upper_sm_reconn_rfcomm_sabm_wait 
+0x6d14 030619 beq uppersm_reconn_spp_cmd_pn ,process_upper_sm_reconn_spp_cmd_pn 
+0x6d15 030620 beq uppersm_reconn_spp_cmd_pn_wait ,process_upper_sm_reconn_spp_cmd_pn_wait 
+0x6d16 030621 beq uppersm_reconn_spp_sabm ,process_upper_sm_reconn_spp_sabm 
+0x6d17 030622 beq uppersm_reconn_spp_sabm_wait ,process_upper_sm_reconn_spp_sabm_wait 
+0x6d18 030623 beq uppersm_reconn_spp_cmd_ms ,process_upper_sm_reconn_spp_cmd_ms 
+0x6d19 030624 beq uppersm_reconn_spp_cmd_ms_wait ,process_upper_sm_reconn_spp_cmd_ms_wait 
+:      030625 process_upper_sm_reconn_wait:
+0x6d1a 030626 rtn 
+:      030627 process_upper_sm_reconn_sdp_conn:
+0x6d1b 030628 call upper_sm_send_sdp_conn 
+0x6d1c 030629 jam uppersm_reconn_sdp_conn_wait ,mem_upper_sm_reconn 
+0x6d1d 030630 fetch 1 ,mem_sdp_state 
+0x6d1e 030631 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d1f 030632 store 1 ,mem_sdp_state 
+0x6d20 030633 rtn 
+:      030634 process_upper_sm_reconn_sdp_cfg:
+0x6d21 030635 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+0x6d22 030636 fetch 1 ,mem_sdp_state 
+0x6d23 030637 rtnbit1 l2cap_channel_state_snd_cfg_req 
+0x6d24 030638 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+0x6d25 030639 call upper_sm_send_sdp_cfg 
+0x6d26 030640 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+0x6d27 030641 fetch 1 ,mem_sdp_state 
+0x6d28 030642 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d29 030643 store 1 ,mem_sdp_state 
+0x6d2a 030644 rtn 
+:      030645 process_upper_sm_reconn_ss_spp:
+0x6d2b 030646 call l2cap_malloc_is_fifo_empty 
+0x6d2c 030647 nrtn blank 
+0x6d2d 030648 call upper_sm_send_ss_spp 
+0x6d2e 030649 jam uppersm_reconn_ss_spp_wait ,mem_upper_sm_reconn 
+0x6d2f 030650 rtn 
+:      030651 process_upper_sm_reconn_sdp_disconn:
+0x6d30 030652 call upper_sm_send_sdp_disconn 
+0x6d31 030653 jam uppersm_reconn_sdp_disconn_wait ,mem_upper_sm_reconn 
+0x6d32 030654 rtn 
+:      030655 process_upper_sm_reconn_hid_ctrl_conn:
+0x6d33 030656 call upper_sm_send_hid_ctrl_conn 
+0x6d34 030657 jam uppersm_reconn_hid_ctrl_conn_wait ,mem_upper_sm_reconn 
+0x6d35 030658 fetch 1 ,mem_hid_control_state 
+0x6d36 030659 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d37 030660 store 1 ,mem_hid_control_state 
+0x6d38 030661 rtn 
+:      030662 process_upper_sm_reconn_hid_ctrl_cfg:
+0x6d39 030663 call upper_sm_send_hid_ctrl_cfg 
+0x6d3a 030664 jam uppersm_reconn_hid_ctrl_cfg_wait ,mem_upper_sm_reconn 
+0x6d3b 030665 fetch 1 ,mem_hid_control_state 
+0x6d3c 030666 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d3d 030667 store 1 ,mem_hid_control_state 
+0x6d3e 030668 rtn 
+:      030669 process_upper_sm_reconn_hid_int_conn:
+0x6d3f 030670 call upper_sm_send_hid_int_conn 
+0x6d40 030671 jam uppersm_reconn_hid_int_conn_wait ,mem_upper_sm_reconn 
+0x6d41 030672 fetch 1 ,mem_hid_interrupt_state 
+0x6d42 030673 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d43 030674 store 1 ,mem_hid_interrupt_state 
+0x6d44 030675 rtn 
+:      030676 process_upper_sm_reconn_hid_int_cfg:
+0x6d45 030677 call upper_sm_send_hid_int_cfg 
+0x6d46 030678 jam uppersm_reconn_hid_int_cfg_wait ,mem_upper_sm_reconn 
+0x6d47 030679 fetch 1 ,mem_hid_interrupt_state 
+0x6d48 030680 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d49 030681 store 1 ,mem_hid_interrupt_state 
+0x6d4a 030682 rtn 
+:      030683 process_upper_sm_reconn_rfcomm_conn:
+0x6d4b 030684 call upper_sm_send_rfcomm_conn 
+0x6d4c 030685 jam uppersm_reconn_rfcomm_conn_wait ,mem_upper_sm_reconn 
+0x6d4d 030686 fetch 1 ,mem_rfcomm_state 
+0x6d4e 030687 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d4f 030688 store 1 ,mem_rfcomm_state 
+0x6d50 030689 rtn 
+:      030690 process_upper_sm_reconn_rfcomm_cfg:
+0x6d51 030691 call upper_sm_send_rfcomm_cfg 
+0x6d52 030692 jam uppersm_reconn_rfcomm_cfg_wait ,mem_upper_sm_reconn 
+0x6d53 030693 fetch 1 ,mem_rfcomm_state 
+0x6d54 030694 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d55 030695 store 1 ,mem_rfcomm_state 
+0x6d56 030696 rtn 
+:      030697 process_upper_sm_reconn_rfcomm_sabm:
+0x6d57 030698 call upper_sm_send_rfcomm_sabm 
+0x6d58 030699 jam uppersm_reconn_rfcomm_sabm_wait ,mem_upper_sm_reconn 
+0x6d59 030700 fetch 1 ,mem_rfcomm_state 
+0x6d5a 030701 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+0x6d5b 030702 store 1 ,mem_rfcomm_state 
+0x6d5c 030703 rtn 
+:      030704 process_upper_sm_reconn_spp_cmd_pn:
+0x6d5d 030705 call upper_sm_send_spp_cmd_pn 
+0x6d5e 030706 fetch 1 ,mem_spp_state 
+0x6d5f 030707 set1 rfcomm_channel_state_pn_cmd 
+0x6d60 030708 store 1 ,mem_spp_state 
+0x6d61 030709 jam uppersm_reconn_spp_cmd_pn_wait ,mem_upper_sm_reconn 
+0x6d62 030710 rtn 
+:      030711 process_upper_sm_reconn_spp_sabm:
+0x6d63 030712 call upper_sm_send_spp_sabm 
+0x6d64 030713 fetch 1 ,mem_spp_state 
+0x6d65 030714 set1 rfcomm_channel_state_sabm 
+0x6d66 030715 store 1 ,mem_spp_state 
+0x6d67 030716 jam uppersm_reconn_spp_sabm_wait ,mem_upper_sm_reconn 
+0x6d68 030717 fetch 1 ,mem_remote_spp_channel 
+0x6d69 030718 lshift3 pdata ,pdata 
+0x6d6a 030719 or_into 3 ,pdata 
+0x6d6b 030720 arg mem_hiufcs_spp ,temp 
+0x6d6c 030721 storet 2 ,mem_contw_temp 
+0x6d6d 030722 branch rfcomm_save_fcs_uih 
+:      030723 process_upper_sm_reconn_spp_cmd_ms:
+0x6d6e 030724 call upper_sm_send_spp_cmd_ms 
+0x6d6f 030725 fetch 1 ,mem_spp_state 
+0x6d70 030726 set1 rfcomm_channel_state_snd_ms_cmd 
+0x6d71 030727 store 1 ,mem_spp_state 
+0x6d72 030728 jam uppersm_reconn_spp_cmd_ms_wait ,mem_upper_sm_reconn 
+0x6d73 030729 rtn 
+:      030731 process_upper_sm_reconn_sdp_conn_wait:
+0x6d74 030732 fetch 1 ,mem_sdp_state 
+0x6d75 030733 rtnbit0 l2cap_channel_state_conn_res 
+0x6d76 030734 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+0x6d77 030735 branch process_upper_sm_reconn 
+:      030736 process_upper_sm_reconn_sdp_cfg_wait:
+0x6d78 030737 fetch 1 ,mem_sdp_state 
+0x6d79 030738 rtnne l2cap_channel_setup_complete 
+0x6d7a 030739 jam uppersm_reconn_ss_spp ,mem_upper_sm_reconn 
+:      030740 process_upper_sm_reconn_ss_spp_wait:
+0x6d7b 030741 fetch 1 ,mem_message_to_uppersm 
+0x6d7c 030742 rtnne recieve_ss_reasult_hf 
+0x6d7d 030743 jam 0 ,mem_message_to_uppersm 
+0x6d7e 030744 jam uppersm_reconn_sdp_disconn ,mem_upper_sm_reconn 
+0x6d7f 030745 branch process_upper_sm_reconn 
+:      030746 process_upper_sm_reconn_sdp_disconn_wait:
+0x6d80 030747 fetch 1 ,mem_sdp_state 
+0x6d81 030748 nrtn blank 
+0x6d82 030749 fetch 1 ,mem_ui_profile_supported 
+0x6d83 030750 bbit1 support_hid ,process_upper_sm_reconn_setup_hid 
+0x6d84 030751 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+0x6d85 030752 branch process_upper_sm_reconn_termination 
+:      030753 process_upper_sm_reconn_hid_ctrl_conn_wait:
+0x6d86 030754 fetch 1 ,mem_hid_control_state 
+0x6d87 030755 rtnbit0 l2cap_channel_state_conn_res 
+0x6d88 030756 jam uppersm_reconn_hid_ctrl_cfg ,mem_upper_sm_reconn 
+0x6d89 030757 branch process_upper_sm_reconn 
+:      030758 process_upper_sm_reconn_hid_ctrl_cfg_wait:
+0x6d8a 030759 fetch 1 ,mem_hid_control_state 
+0x6d8b 030760 rtnne l2cap_channel_setup_complete 
+0x6d8c 030761 jam uppersm_reconn_hid_int_conn ,mem_upper_sm_reconn 
+0x6d8d 030762 branch process_upper_sm_reconn 
+:      030763 process_upper_sm_reconn_hid_int_conn_wait:
+0x6d8e 030764 fetch 1 ,mem_hid_interrupt_state 
+0x6d8f 030765 rtnbit0 l2cap_channel_state_conn_res 
+0x6d90 030766 jam uppersm_reconn_hid_int_cfg ,mem_upper_sm_reconn 
+0x6d91 030767 branch process_upper_sm_reconn 
+:      030768 process_upper_sm_reconn_hid_int_cfg_wait:
+0x6d92 030769 fetch 1 ,mem_hid_interrupt_state 
+0x6d93 030770 rtnne l2cap_channel_setup_complete 
+0x6d94 030771 fetch 1 ,mem_ui_profile_supported 
+0x6d95 030772 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+0x6d96 030773 branch process_upper_sm_reconn_termination 
+:      030774 process_upper_sm_reconn_rfcomm_conn_wait:
+0x6d97 030775 fetch 1 ,mem_rfcomm_state 
+0x6d98 030776 rtnbit0 l2cap_channel_state_conn_res 
+0x6d99 030777 jam uppersm_reconn_rfcomm_cfg ,mem_upper_sm_reconn 
+0x6d9a 030778 branch process_upper_sm_reconn 
+:      030779 process_upper_sm_reconn_rfcomm_cfg_wait:
+0x6d9b 030780 fetch 1 ,mem_rfcomm_state 
+0x6d9c 030781 rtnne l2cap_channel_setup_complete 
+0x6d9d 030782 jam uppersm_reconn_rfcomm_sabm ,mem_upper_sm_reconn 
+0x6d9e 030783 branch process_upper_sm_reconn 
+:      030784 process_upper_sm_reconn_rfcomm_sabm_wait:
+0x6d9f 030785 fetch 1 ,mem_rfcomm_state 
+0x6da0 030786 rtnne l2cap_channel_rfcomm_dlci0_opened 
+0x6da1 030787 fetch 1 ,mem_ui_profile_supported 
+0x6da2 030788 bbit1 support_spp ,process_upper_sm_reconn_setup_spp 
+0x6da3 030789 branch process_upper_sm_reconn_termination 
+:      030790 process_upper_sm_reconn_spp_cmd_pn_wait:
+0x6da4 030791 fetch 1 ,mem_spp_state 
+0x6da5 030792 rtnbit0 rfcomm_channel_state_pn_res 
+0x6da6 030793 jam uppersm_reconn_spp_sabm ,mem_upper_sm_reconn 
+0x6da7 030794 branch process_upper_sm_reconn 
+:      030795 process_upper_sm_reconn_spp_sabm_wait:
+0x6da8 030796 fetch 1 ,mem_spp_state 
+0x6da9 030797 rtnbit0 rfcomm_channel_state_ua 
+0x6daa 030798 jam uppersm_reconn_spp_cmd_ms ,mem_upper_sm_reconn 
+0x6dab 030799 branch process_upper_sm_reconn 
+:      030800 process_upper_sm_reconn_spp_cmd_ms_wait:
+0x6dac 030801 fetch 1 ,mem_spp_state 
+0x6dad 030802 rtnne rfcomm_channel_setup_complete 
+0x6dae 030803 branch process_upper_sm_reconn_termination 
+:      030805 process_upper_sm_reconn_setup_hid:
+0x6daf 030806 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+0x6db0 030807 branch process_upper_sm_reconn 
+:      030809 process_upper_sm_reconn_setup_rfcomm:
+0x6db1 030810 jam uppersm_reconn_rfcomm_conn ,mem_upper_sm_reconn 
+0x6db2 030811 branch process_upper_sm_reconn 
+:      030812 process_upper_sm_reconn_setup_spp:
+0x6db3 030813 jam uppersm_reconn_spp_cmd_pn ,mem_upper_sm_reconn 
+0x6db4 030814 branch process_upper_sm_reconn 
+:      030818 process_upper_sm_reconn_termination:
+0x6db5 030819 jam 0 ,mem_upper_sm_reconn 
+0x6db6 030820 rtn 
+:      030821 upper_sm_send_sdp_conn:
+0x6db7 030822 bpatchx patch37_7 ,mem_patch37 
+0x6db8 030823 call l2cap_malloc_signal_channel 
+0x6db9 030824 setarg psm_sdp 
+0x6dba 030825 copy pdata ,temp 
+0x6dbb 030826 setarg l2cap_sdp_channel 
+0x6dbc 030827 copy pdata ,timeup 
+0x6dbd 030828 branch ml2cap_send_signal_connect_req 
+:      030830 upper_sm_send_sdp_cfg:
+0x6dbe 030831 bpatchx patch38_0 ,mem_patch38 
+0x6dbf 030832 call l2cap_malloc_signal_channel 
+0x6dc0 030833 fetch 2 ,mem_sdp_remote_cid 
+0x6dc1 030834 copy pdata ,temp 
+0x6dc2 030835 branch ml2cap_send_signal_config_req 
+:      030837 upper_sm_send_sdp_disconn:
+0x6dc3 030838 bpatchx patch38_1 ,mem_patch38 
+0x6dc4 030839 call l2cap_malloc_signal_channel 
+0x6dc5 030840 fetch 2 ,mem_sdp_remote_cid 
+0x6dc6 030841 copy pdata ,temp 
+0x6dc7 030842 arg l2cap_sdp_channel ,timeup 
+0x6dc8 030843 call ml2cap_send_signal_disconn_req 
+0x6dc9 030844 fetch 1 ,mem_sdp_state 
+0x6dca 030845 set0 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x6dcb 030846 store 1 ,mem_sdp_state 
+0x6dcc 030847 rtn 
+:      030849 upper_sm_send_ss_spp:
+0x6dcd 030850 bpatchx patch38_2 ,mem_patch38 
+0x6dce 030851 call l2cap_malloc_sdp_channel 
+0x6dcf 030852 call sdp_send_spp_request 
+0x6dd0 030853 branch msdp_send_req_done 
+:      030855 upper_sm_send_rfcomm_conn:
+0x6dd1 030856 bpatchx patch38_3 ,mem_patch38 
+0x6dd2 030857 call l2cap_malloc_signal_channel 
+0x6dd3 030858 setarg psm_rfcomm 
+0x6dd4 030859 copy pdata ,temp 
+0x6dd5 030860 setarg l2cap_rfcomm_channel 
+0x6dd6 030861 copy pdata ,timeup 
+0x6dd7 030862 branch ml2cap_send_signal_connect_req 
+:      030864 upper_sm_send_rfcomm_cfg:
+0x6dd8 030865 bpatchx patch38_4 ,mem_patch38 
+0x6dd9 030866 call l2cap_malloc_signal_channel 
+0x6dda 030867 fetch 2 ,mem_rfcomm_remote_cid 
+0x6ddb 030868 copy pdata ,temp 
+0x6ddc 030869 branch ml2cap_send_signal_config_req 
+:      030871 upper_sm_send_hid_ctrl_conn:
+0x6ddd 030872 bpatchx patch38_5 ,mem_patch38 
+0x6dde 030873 call l2cap_malloc_signal_channel 
+0x6ddf 030874 setarg psm_hid_control 
+0x6de0 030875 copy pdata ,temp 
+0x6de1 030876 setarg l2cap_hid_control_channel 
+0x6de2 030877 copy pdata ,timeup 
+0x6de3 030878 branch ml2cap_send_signal_connect_req 
+:      030880 upper_sm_send_hid_ctrl_cfg:
+0x6de4 030881 bpatchx patch38_6 ,mem_patch38 
+0x6de5 030882 call l2cap_malloc_signal_channel 
+0x6de6 030883 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x6de7 030884 copy pdata ,temp 
+0x6de8 030885 branch ml2cap_send_signal_config_req 
+:      030887 upper_sm_send_hid_int_conn:
+0x6de9 030888 bpatchx patch38_7 ,mem_patch38 
+0x6dea 030889 call l2cap_malloc_signal_channel 
+0x6deb 030890 setarg psm_hid_interrupt 
+0x6dec 030891 copy pdata ,temp 
+0x6ded 030892 setarg l2cap_hid_interrupt_channel 
+0x6dee 030893 copy pdata ,timeup 
+0x6def 030894 branch ml2cap_send_signal_connect_req 
+:      030896 upper_sm_send_hid_int_cfg:
+0x6df0 030897 bpatchx patch39_0 ,mem_patch39 
+0x6df1 030898 call l2cap_malloc_signal_channel 
+0x6df2 030899 fetch 2 ,mem_hid_int_remote_cid 
+0x6df3 030900 copy pdata ,temp 
+0x6df4 030901 branch ml2cap_send_signal_config_req 
+:      030903 upper_sm_send_rfcomm_sabm:
+0x6df5 030904 bpatchx patch39_1 ,mem_patch39 
+0x6df6 030905 call l2cap_malloc_rfcomm_channel 
+0x6df7 030907 jam 3 ,mem_current_adss 
+0x6df8 030908 jam 0x1c ,mem_current_fcs 
+0x6df9 030909 call rfcomm_send_sabm 
+0x6dfa 030910 jam 1 ,mem_rfcomm_initiator 
+0x6dfb 030911 rtn 
+:      030913 upper_sm_send_spp_cmd_pn:
+0x6dfc 030914 bpatchx patch39_2 ,mem_patch39 
+0x6dfd 030915 call l2cap_malloc_rfcomm_channel 
+0x6dfe 030916 fetcht 1 ,mem_remote_spp_channel 
+0x6dff 030917 call channel_to_dlci 
+0x6e00 030918 storet 1 ,mem_pn_dlci 
+0x6e01 030919 branch rfcomm_send_param_neg_cmd 
+:      030921 upper_sm_send_spp_sabm:
+0x6e02 030922 bpatchx patch39_3 ,mem_patch39 
+0x6e03 030923 call l2cap_malloc_rfcomm_channel 
+0x6e04 030924 fetcht 1 ,mem_pn_dlci 
+0x6e05 030925 call dlci_to_address_cmd 
+0x6e06 030926 call rfcomm_calculate_fcs_sabm 
+0x6e07 030927 store 1 ,mem_current_fcs 
+0x6e08 030928 fetcht 1 ,mem_pn_dlci 
+0x6e09 030929 call dlci_to_address_cmd 
+0x6e0a 030930 storet 1 ,mem_current_adss 
+0x6e0b 030931 branch rfcomm_send_sabm 
+:      030933 upper_sm_send_spp_cmd_ms:
+0x6e0c 030934 bpatchx patch39_4 ,mem_patch39 
+0x6e0d 030935 call l2cap_malloc_rfcomm_channel 
+0x6e0e 030936 fetcht 1 ,mem_pn_dlci 
+0x6e0f 030937 call dlci_to_address_cmd 
+0x6e10 030938 branch rfcomm_send_modem_status_cmd 
+:      030951 sdp_process:
+0x6e11 030952 bpatchx patch39_5 ,mem_patch39 
+0x6e12 030953 fetch 2 ,mem_l2cap_payload_ptr 
+0x6e13 030954 iforce contr 
+0x6e14 030957 ifetch 1 ,contr 
+0x6e15 030958 copy pdata ,regb 
+0x6e16 030959 store 1 ,mem_sdp_pduid 
+0x6e17 030960 ifetch 2 ,contr 
+0x6e18 030961 store 2 ,mem_sdp_transactionid 
+0x6e19 030962 ifetch 1 ,contr 
+0x6e1a 030963 lshift8 pdata ,timeup 
+0x6e1b 030964 ifetch 1 ,contr 
+0x6e1c 030965 iadd timeup ,timeup 
+0x6e1d 030966 bpatchx patch39_6 ,mem_patch39 
+0x6e1e 030967 copy contr ,temp 
+0x6e1f 030968 arg 4 ,loopcnt 
+0x6e20 030969 arg mem_sdp_handle_list ,contw 
+0x6e21 030970 call memset0 
+0x6e22 030971 copy temp ,contr 
+0x6e23 030972 deposit regb 
+0x6e24 030973 beq sdp_error_res ,sdp_process_error_res 
+0x6e25 030974 beq sdp_search_req ,sdp_process_ss_req 
+0x6e26 030975 beq sdp_search_res ,sdp_process_ss_res 
+0x6e27 030976 beq sdp_attribute_req ,sdp_process_sa_req 
+0x6e28 030977 beq sdp_attribute_res ,sdp_process_sa_res 
+0x6e29 030978 beq sdp_searchattrib_req ,sdp_process_ssa_req 
+0x6e2a 030979 beq sdp_searchattrib_res ,sdp_process_ssa_res 
+0x6e2b 030980 branch sdp_insufficient_resource 
+:      030991 sdp_process_ss_req:
+0x6e2c 030992 bpatchx patch39_7 ,mem_patch39 
+0x6e2d 030993 call ask_serviceclassid 
+0x6e2e 030994 compare 1 ,temp ,0xff 
+0x6e2f 030995 branch ss_empty_rsp ,true 
+0x6e30 030996 compare 0xff ,temp ,0xff 
+0x6e31 030997 branch sdp_invalid_request_syntax ,true 
+0x6e32 030999 ifetch 2 ,contr 
+0x6e33 031000 store 2 ,mem_sdp_record_maxcnt 
+0x6e34 031001 increase -2 ,timeup 
+0x6e35 031003 increase -1 ,timeup 
+0x6e36 031004 nbranch sdp_invalid_pdu_size ,zero 
+0x6e37 031005 arg mem_sdp_uuid_search_ptr ,timeup 
+0x6e38 031006 ifetch 2 ,timeup 
+0x6e39 031007 rtn blank 
+0x6e3a 031008 call search_all_uuid 
+0x6e3b 031009 call l2cap_get_sdp_tx_payload 
+0x6e3c 031010 force 3 ,pdata 
+0x6e3d 031011 istore 1 ,contw 
+0x6e3e 031012 fetch 2 ,mem_sdp_transactionid 
+0x6e3f 031013 istore 2 ,contw 
+0x6e40 031014 lshift2 queue ,pdata 
+0x6e41 031015 add pdata ,5 ,pdata 
+0x6e42 031016 add pdata ,5 ,regc 
+0x6e43 031017 byteswap pdata ,pdata 
+0x6e44 031018 istore 2 ,contw 
+0x6e45 031019 deposit queue 
+0x6e46 031020 byteswap pdata ,pdata 
+0x6e47 031021 istore 2 ,contw 
+0x6e48 031022 istore 2 ,contw 
+0x6e49 031023 arg mem_sdp_handle_list ,contr 
+0x6e4a 031024 copy queue ,loopcnt 
+0x6e4b 031025 branch ss_req_blank ,zero 
+:      031026 ss_req_loop:
+0x6e4c 031027 ifetch 4 ,contr 
+0x6e4d 031028 istore 4 ,contw 
+0x6e4e 031029 loop ss_req_loop 
+:      031030 ss_req_blank:
+0x6e4f 031031 force 0 ,pdata 
+0x6e50 031032 istore 1 ,contw 
+0x6e51 031033 deposit regc 
+0x6e52 031034 store 2 ,mem_sdp_tx_pkt_length 
+0x6e53 031036 rtn 
+:      031047 sdp_process_sa_req:
+0x6e54 031048 bpatchx patch3a_0 ,mem_patch3a 
+0x6e55 031049 ifetch 4 ,contr 
+0x6e56 031050 store 4 ,mem_sdp_record_handle 
+0x6e57 031051 increase -4 ,timeup 
+0x6e58 031052 call sdp_store_maxbyte 
+0x6e59 031053 store 2 ,mem_sdp_attribute_maxbyte 
+0x6e5a 031054 increase -2 ,timeup 
+0x6e5b 031055 call dataelementtype6 
+0x6e5c 031056 branch sdp_invalid_request_syntax ,zero 
+0x6e5d 031057 compare 5 ,rega ,0xff 
+0x6e5e 031059 branch sa_judge_wholerange ,true 
+:      031060 sa_isnot_wholerange:
+0x6e5f 031061 arg mem_sdp_attrib_list ,contw 
+0x6e60 031062 force 0 ,queue 
+0x6e61 031063 branch sa_req_loop 
+:      031064 sa_judge_wholerange:
+0x6e62 031065 ifetch 1 ,contr 
+0x6e63 031066 bne sdp_attribute_range ,sdp_invalid_request_syntax 
+0x6e64 031067 ifetch 2 ,contr 
+0x6e65 031068 nbranch sa_judge_wholerange_false1 ,blank 
+0x6e66 031069 ifetch 1 ,contr 
+0x6e67 031070 bne 0xff ,sa_judge_wholerange_false2 
+0x6e68 031071 ifetch 1 ,contr 
+0x6e69 031072 bne 0xff ,sa_judge_wholerange_false3 
+0x6e6a 031073 branch sa_req_all 
+:      031074 sa_judge_wholerange_false3:
+0x6e6b 031075 increase -5 ,contr 
+0x6e6c 031076 branch sa_isnot_wholerange 
+:      031077 sa_judge_wholerange_false2:
+0x6e6d 031078 increase -4 ,contr 
+0x6e6e 031079 branch sa_isnot_wholerange 
+:      031080 sa_judge_wholerange_false1:
+0x6e6f 031081 increase -3 ,contr 
+0x6e70 031082 branch sa_isnot_wholerange 
+:      031083 sa_req_loop:
+0x6e71 031084 ifetch 1 ,contr 
+0x6e72 031085 beq sdp_attribute_id ,sa_req_one_id 
+0x6e73 031086 beq sdp_attribute_range ,sa_req_range 
+:      031087 sa_req_range:
+0x6e74 031088 ifetch 2 ,contr 
+0x6e75 031089 istore 2 ,contw 
+0x6e76 031090 increase 1 ,queue 
+0x6e77 031091 byteswap pdata ,regb 
+0x6e78 031092 ifetch 2 ,contr 
+0x6e79 031093 byteswap pdata ,pdata 
+:      031094 sa_req_range_id_increase:
+0x6e7a 031095 increase 1 ,regb 
+0x6e7b 031096 isub regb ,null 
+0x6e7c 031097 nbranch sa_req_range_id_finish ,positive 
+0x6e7d 031098 copy pdata ,regc 
+0x6e7e 031099 byteswap regb ,pdata 
+0x6e7f 031100 istore 2 ,contw 
+0x6e80 031101 increase 1 ,queue 
+0x6e81 031102 copy regc ,pdata 
+0x6e82 031103 branch sa_req_range_id_increase 
+:      031104 sa_req_range_id_finish:
+0x6e83 031105 increase -5 ,timeup 
+0x6e84 031106 increase -5 ,rega 
+0x6e85 031107 branch sa_req_check_next_id 
+:      031108 sa_req_one_id:
+0x6e86 031109 ifetch 2 ,contr 
+0x6e87 031110 istore 2 ,contw 
+0x6e88 031111 increase 1 ,queue 
+0x6e89 031112 increase -3 ,timeup 
+0x6e8a 031113 increase -3 ,rega 
+:      031114 sa_req_check_next_id:
+0x6e8b 031115 nbranch sdp_invalid_request_syntax ,positive 
+0x6e8c 031116 nbranch sa_req_loop ,zero 
+0x6e8d 031117 increase -1 ,timeup 
+0x6e8e 031118 nbranch sdp_invalid_request_syntax ,zero 
+0x6e8f 031120 call l2cap_get_sdp_tx_payload 
+0x6e90 031121 increase 10 ,contw 
+0x6e91 031122 arg mem_sdp_attrib_list ,rega 
+:      031123 sa_req_handle_attributelist_next:
+0x6e92 031124 copy queue ,pdata 
+0x6e93 031125 branch sa_req_handle_attributelist_end ,blank 
+0x6e94 031126 ifetch 2 ,rega 
+0x6e95 031127 branch sa_req_handle_attributelist_end ,blank 
+0x6e96 031128 iforce regb 
+0x6e97 031129 fetch 4 ,mem_sdp_record_handle 
+0x6e98 031130 iforce temp 
+0x6e99 031131 call search_handle_attrib 
+0x6e9a 031132 copy contr ,pdata 
+0x6e9b 031133 branch sa_req_handle_attributelist_notfound ,blank 
+0x6e9c 031134 increase -3 ,contr 
+0x6e9d 031135 ifetch 3 ,contr 
+0x6e9e 031136 istore 3 ,contw 
+0x6e9f 031137 call sdp_data_len 
+0x6ea0 031138 iforce loopcnt 
+0x6ea1 031139 call memcpy 
+:      031140 sa_req_handle_attributelist_notfound:
+0x6ea2 031141 increase 2 ,rega 
+0x6ea3 031142 increase -1 ,queue 
+0x6ea4 031143 branch sa_req_handle_attributelist_next 
+:      031145 sa_req_handle_attributelist_end:
+0x6ea5 031146 arg sdp_attribute_res ,rega 
+0x6ea6 031147 call ssa_req_range_lastfreg_common 
+0x6ea7 031148 fetch 2 ,mem_sdp_tx_pkt_length 
+0x6ea8 031149 beq 11 ,sa_empty_rsp 
+0x6ea9 031150 branch ssa_req_range_attrbutes_length_no_continue 
+:      031153 sdp_store_continue_common:
+0x6eaa 031154 ifetch 1 ,contr 
+0x6eab 031155 beq 0 ,sdp_store_continue_0byte 
+0x6eac 031156 beq 1 ,sdp_store_continue_1byte 
+0x6ead 031157 beq 2 ,sdp_store_continue_2byte 
+:      031158 sdp_store_continue_0byte:
+0x6eae 031159 increase -1 ,timeup 
+0x6eaf 031160 branch sdp_store_continue_end 
+:      031161 sdp_store_continue_1byte:
+0x6eb0 031162 ifetch 1 ,contr 
+0x6eb1 031163 increase -2 ,timeup 
+0x6eb2 031164 branch sdp_store_continue_end 
+:      031165 sdp_store_continue_2byte:
+0x6eb3 031166 ifetch 2 ,contr 
+0x6eb4 031167 byteswap pdata ,pdata 
+0x6eb5 031168 increase -3 ,timeup 
+:      031169 sdp_store_continue_end:
+0x6eb6 031170 store 2 ,mem_sdp_continue_byte 
+0x6eb7 031171 rtn 
+:      031173 sa_req_all:
+0x6eb8 031174 increase -5 ,timeup 
+0x6eb9 031175 call sdp_store_continue_common 
+0x6eba 031176 nbranch sdp_invalid_pdu_size ,zero 
+0x6ebb 031177 fetcht 4 ,mem_sdp_record_handle 
+0x6ebc 031178 call search_handle 
+0x6ebd 031179 nbranch sdp_invalid_service_record_handle ,zero 
+0x6ebe 031180 copy contr ,rega 
+0x6ebf 031181 call l2cap_get_sdp_tx_payload 
+0x6ec0 031182 copy rega ,contr 
+0x6ec1 031183 increase 3 ,contw 
+0x6ec2 031184 copy contr ,timeup 
+0x6ec3 031185 call sdp_get_data 
+0x6ec4 031186 copy pdata ,rega 
+0x6ec5 031188 fetch 2 ,mem_sdp_continue_byte 
+0x6ec6 031189 copy pdata ,regb 
+0x6ec7 031190 copy rega ,pdata 
+0x6ec8 031191 isub regb ,regb 
+0x6ec9 031192 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6eca 031193 isub regb ,null 
+0x6ecb 031194 nbranch sa_req_all_fragment_sdp ,positive 
+0x6ecc 031196 disable user 
+0x6ecd 031197 fetch 2 ,mem_sdp_continue_byte 
+0x6ece 031198 branch sa_req_all_fisrt_fragment ,blank 
+0x6ecf 031199 iadd timeup ,contr 
+0x6ed0 031200 increase 3 ,regb 
+0x6ed1 031201 copy regb ,loopcnt 
+0x6ed2 031202 copy loopcnt ,pdata 
+0x6ed3 031203 increase 3 ,pdata 
+0x6ed4 031204 byteswap pdata ,pdata 
+0x6ed5 031205 istore 2 ,contw 
+0x6ed6 031206 copy loopcnt ,pdata 
+0x6ed7 031207 byteswap pdata ,pdata 
+0x6ed8 031208 istore 2 ,contw 
+0x6ed9 031209 branch sa_req_all_answer_attributelist_full_loop 
+:      031210 sa_req_all_fisrt_fragment:
+0x6eda 031211 add rega ,6 ,loopcnt 
+0x6edb 031212 branch sa_req_all_parlength_continue_byte ,user 
+0x6edc 031213 byteswap loopcnt ,pdata 
+0x6edd 031214 branch sa_req_all_parlength_continue_byte_end 
+:      031215 sa_req_all_parlength_continue_byte:
+0x6ede 031216 copy loopcnt ,pdata 
+0x6edf 031217 increase 2 ,pdata 
+0x6ee0 031218 byteswap pdata ,pdata 
+:      031219 sa_req_all_parlength_continue_byte_end:
+0x6ee1 031220 istore 2 ,contw 
+0x6ee2 031221 increase -3 ,loopcnt 
+0x6ee3 031222 byteswap loopcnt ,pdata 
+0x6ee4 031223 istore 2 ,contw 
+0x6ee5 031224 copy timeup ,contr 
+0x6ee6 031225 branch sa_req_all_answer_attributelist_full_loop 
+:      031226 sa_req_all_fragment_sdp:
+0x6ee7 031227 enable user 
+0x6ee8 031229 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6ee9 031230 copy pdata ,rega 
+0x6eea 031231 copy rega ,loopcnt 
+0x6eeb 031232 fetch 2 ,mem_sdp_continue_byte 
+0x6eec 031233 branch sa_req_all_fisrt_fragment ,blank 
+0x6eed 031234 iadd timeup ,contr 
+0x6eee 031235 copy rega ,pdata 
+0x6eef 031236 increase 5 ,pdata 
+0x6ef0 031237 byteswap pdata ,pdata 
+0x6ef1 031238 istore 2 ,contw 
+0x6ef2 031239 copy rega ,pdata 
+0x6ef3 031240 byteswap pdata ,pdata 
+0x6ef4 031241 istore 2 ,contw 
+:      031242 sa_req_all_answer_attributelist_full_loop:
+0x6ef5 031243 call memcpy 
+0x6ef6 031244 nbranch sa_req_all_last_frag_continue ,user 
+0x6ef7 031245 force 2 ,pdata 
+0x6ef8 031246 istore 1 ,contw 
+0x6ef9 031247 copy contr ,pdata 
+0x6efa 031248 isub timeup ,pdata 
+0x6efb 031249 byteswap pdata ,pdata 
+0x6efc 031250 istore 2 ,contw 
+0x6efd 031251 branch sa_req_all_frag_end 
+:      031252 sa_req_all_last_frag_continue:
+0x6efe 031253 force 0 ,pdata 
+0x6eff 031254 istore 1 ,contw 
+:      031255 sa_req_all_frag_end:
+0x6f00 031256 arg sdp_attribute_res ,rega 
+0x6f01 031257 branch ssa_req_range_common 
+:      031268 sdp_process_ssa_req:
+0x6f02 031269 bpatchx patch3a_1 ,mem_patch3a 
+0x6f03 031270 call ask_serviceclassid 
+0x6f04 031271 compare 0xff ,temp ,0xff 
+0x6f05 031272 branch sdp_invalid_request_syntax ,true 
+0x6f06 031273 call sdp_store_maxbyte 
+0x6f07 031274 store 2 ,mem_sdp_attribute_maxbyte 
+0x6f08 031275 increase -2 ,timeup 
+0x6f09 031276 call dataelementtype6 
+0x6f0a 031277 arg mem_sdp_attrib_list ,contw 
+0x6f0b 031278 force 0 ,queue 
+:      031279 ssa_req_loop:
+0x6f0c 031280 ifetch 1 ,contr 
+0x6f0d 031281 beq sdp_attribute_range ,ssa_req_range 
+0x6f0e 031282 ifetch 2 ,contr 
+0x6f0f 031283 istore 2 ,contw 
+0x6f10 031284 increase 1 ,queue 
+0x6f11 031285 increase -3 ,timeup 
+0x6f12 031286 increase -3 ,rega 
+0x6f13 031287 nbranch sdp_invalid_request_syntax ,positive 
+0x6f14 031288 nbranch ssa_req_loop ,zero 
+0x6f15 031289 increase -1 ,timeup 
+0x6f16 031290 nbranch sdp_invalid_request_syntax ,zero 
+0x6f17 031291 call l2cap_get_sdp_tx_payload 
+0x6f18 031292 increase 13 ,contw 
+0x6f19 031293 fetch 2 ,mem_sdp_uuid_search_ptr 
+0x6f1a 031294 iforce regc 
+0x6f1b 031295 arg mem_sdp_attrib_list ,rega 
+:      031296 ssa_req_attributelist_next:
+0x6f1c 031297 ifetch 2 ,rega 
+0x6f1d 031298 branch ssa_req_attributelist_end ,blank 
+0x6f1e 031299 iforce regb 
+0x6f1f 031300 call search_attrib 
+0x6f20 031301 branch ssa_req_attributelist_notfound ,blank 
+0x6f21 031302 increase -3 ,contr 
+0x6f22 031303 ifetch 3 ,contr 
+0x6f23 031304 istore 3 ,contw 
+0x6f24 031305 call sdp_data_len 
+0x6f25 031306 iforce loopcnt 
+0x6f26 031307 call memcpy 
+:      031308 ssa_req_attributelist_notfound:
+0x6f27 031309 increase 2 ,rega 
+0x6f28 031310 branch ssa_req_attributelist_next 
+:      031312 ssa_req_attributelist_end:
+0x6f29 031313 call ssa_req_range_lastfreg 
+0x6f2a 031314 fetch 2 ,mem_sdp_tx_pkt_length 
+0x6f2b 031315 beq 14 ,ssa_empty_rsp 
+0x6f2c 031316 call ssa_req_range_attrbutes_length_no_continue 
+0x6f2d 031317 branch ssa_req_range_attrbutes_length_no_continue 
+:      031320 sdp_store_maxbyte:
+0x6f2e 031321 ifetch 2 ,contr 
+0x6f2f 031322 byteswap pdata ,pdata 
+0x6f30 031323 increase -3 ,pdata 
+0x6f31 031324 arg 200 ,temp 
+0x6f32 031325 isub temp ,null 
+0x6f33 031326 nrtn positive 
+0x6f34 031327 setarg 200 
+0x6f35 031328 rtn 
+:      031331 ssa_req_range:
+0x6f36 031332 increase 4 ,contr 
+0x6f37 031333 increase -5 ,timeup 
+0x6f38 031334 increase -5 ,rega 
+0x6f39 031335 nbranch sdp_invalid_request_syntax ,zero 
+0x6f3a 031336 call sdp_store_continue_common 
+0x6f3b 031337 nbranch sdp_invalid_pdu_size ,zero 
+0x6f3c 031338 arg mem_sdp_uuid_search_ptr ,timeup 
+0x6f3d 031339 call search_all_uuid 
+0x6f3e 031340 deposit queue 
+0x6f3f 031341 branch ssa_empty_rsp ,blank 
+0x6f40 031342 store 1 ,mem_handle_humber 
+0x6f41 031344 copy regb ,pdata 
+0x6f42 031345 store 2 ,mem_sdp_all_length 
+0x6f43 031346 arg 0 ,queue 
+0x6f44 031347 arg 0 ,rega 
+0x6f45 031348 call l2cap_get_sdp_tx_payload 
+0x6f46 031349 increase 10 ,contw 
+:      031350 ssa_req_range_find_handle:
+0x6f47 031351 call ssa_req_range_get_length 
+0x6f48 031352 nbranch assert ,user 
+0x6f49 031353 copy contr ,timeup 
+0x6f4a 031354 copy pdata ,regc 
+0x6f4b 031355 iadd rega ,rega 
+0x6f4c 031358 fetch 2 ,mem_sdp_continue_byte 
+0x6f4d 031359 copy pdata ,regb 
+0x6f4e 031360 branch ssa_req_range_first_freg ,blank 
+:      031361 ssa_req_range_later_freg_with_continue:
+0x6f4f 031362 copy rega ,pdata 
+0x6f50 031363 isub regb ,regb 
+0x6f51 031364 branch ssa_req_range_next_handle ,zero 
+0x6f52 031365 nbranch ssa_req_range_next_handle ,positive 
+0x6f53 031366 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6f54 031367 isub regb ,null 
+0x6f55 031368 branch ssa_req_range_maxbyte_with_continue ,zero 
+0x6f56 031369 nbranch ssa_req_range_maxbyte_with_continue ,positive 
+:      031372 ssa_req_range_send_not_maxbyte:
+0x6f57 031373 copy regb ,loopcnt 
+0x6f58 031374 call ssa_req_range_maxbyte_with_continue_cpy 
+0x6f59 031375 fetch 1 ,mem_handle_humber 
+0x6f5a 031376 increase 1 ,queue 
+0x6f5b 031377 isub queue ,null 
+0x6f5c 031378 branch ssa_req_range_lastfreg ,zero 
+0x6f5d 031379 branch ssa_req_range_freg_with_continue 
+:      031381 ssa_req_range_maxbyte_with_continue:
+0x6f5e 031382 copy pdata ,loopcnt 
+0x6f5f 031383 call ssa_req_range_maxbyte_with_continue_cpy 
+0x6f60 031384 branch ssa_req_range_freg_with_continue 
+:      031386 ssa_req_range_maxbyte_with_continue_cpy:
+0x6f61 031387 increase -3 ,contw 
+0x6f62 031388 copy loopcnt ,temp 
+0x6f63 031389 copy regc ,pdata 
+0x6f64 031390 isub regb ,pdata 
+0x6f65 031391 iadd timeup ,contr 
+0x6f66 031392 branch memcpy 
+:      031394 ssa_req_range_next_handle:
+0x6f67 031395 fetch 1 ,mem_handle_humber 
+0x6f68 031396 increase 1 ,queue 
+0x6f69 031397 isub queue ,null 
+0x6f6a 031398 rtn zero 
+0x6f6b 031399 branch ssa_req_range_find_handle 
+:      031401 ssa_req_range_get_length:
+0x6f6c 031402 call disable_user 
+0x6f6d 031403 arg mem_sdp_handle_list ,contr 
+0x6f6e 031404 lshift2 queue ,pdata 
+0x6f6f 031405 iadd contr ,contr 
+0x6f70 031406 ifetcht 4 ,contr 
+0x6f71 031407 call search_handle 
+0x6f72 031408 nrtn zero 
+0x6f73 031409 call sdp_data_len 
+0x6f74 031410 branch enable_user 
+:      031412 ssa_req_range_first_freg:
+0x6f75 031413 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6f76 031414 isub rega ,null 
+0x6f77 031415 nbranch ssa_req_range_firstfreg_maxbyte_with_continue ,positive 
+0x6f78 031416 copy rega ,loopcnt 
+0x6f79 031417 copy loopcnt ,temp 
+0x6f7a 031418 copy timeup ,contr 
+0x6f7b 031419 call memcpy 
+0x6f7c 031420 fetch 2 ,mem_sdp_all_length 
+0x6f7d 031421 isub rega ,null 
+0x6f7e 031422 branch ssa_req_range_freg_no_continue ,zero 
+:      031423 ssa_req_range_firstfreg_not_maxbyte_with_continue:
+0x6f7f 031424 call ssa_req_range_freg_with_continue 
+0x6f80 031425 branch ssa_req_range_attrbutes_length 
+:      031427 ssa_req_range_freg_no_continue:
+0x6f81 031428 call ssa_req_range_lastfreg 
+0x6f82 031429 branch ssa_req_range_attrbutes_length 
+:      031431 ssa_req_range_lastfreg:
+0x6f83 031432 arg sdp_searchattrib_res ,rega 
+:      031433 ssa_req_range_lastfreg_common:
+0x6f84 031434 force 0 ,pdata 
+0x6f85 031435 istore 1 ,contw 
+0x6f86 031436 call ssa_req_range_common 
+0x6f87 031437 fetcht 2 ,mem_sdp_tx_pkt_length 
+0x6f88 031438 increase -5 ,temp 
+0x6f89 031439 byteswap temp ,pdata 
+0x6f8a 031440 istore 2 ,contw 
+0x6f8b 031441 increase -3 ,temp 
+0x6f8c 031442 byteswap temp ,pdata 
+0x6f8d 031443 istore 2 ,contw 
+0x6f8e 031444 rtn 
+:      031446 ssa_req_range_firstfreg_maxbyte_with_continue:
+0x6f8f 031447 copy pdata ,loopcnt 
+0x6f90 031448 copy loopcnt ,temp 
+0x6f91 031449 copy timeup ,contr 
+0x6f92 031450 call memcpy 
+0x6f93 031451 call ssa_req_range_freg_with_continue 
+:      031452 ssa_req_range_attrbutes_length:
+0x6f94 031453 setarg 0x36 
+0x6f95 031454 istore 1 ,contw 
+0x6f96 031455 fetch 2 ,mem_sdp_all_length 
+0x6f97 031456 byteswap pdata ,pdata 
+0x6f98 031457 istore 2 ,contw 
+0x6f99 031458 rtn 
+:      031460 ssa_req_range_attrbutes_length_no_continue:
+0x6f9a 031461 setarg 0x36 
+0x6f9b 031462 istore 1 ,contw 
+0x6f9c 031463 increase -3 ,temp 
+0x6f9d 031464 byteswap temp ,pdata 
+0x6f9e 031465 istore 2 ,contw 
+0x6f9f 031466 rtn 
+:      031468 ssa_req_range_freg_with_continue:
+0x6fa0 031469 arg sdp_searchattrib_res ,rega 
+0x6fa1 031470 setarg 2 
+0x6fa2 031471 istore 1 ,contw 
+0x6fa3 031472 fetch 2 ,mem_sdp_continue_byte 
+0x6fa4 031473 iadd temp ,temp 
+0x6fa5 031474 byteswap temp ,pdata 
+0x6fa6 031475 istore 2 ,contw 
+0x6fa7 031476 call ssa_req_range_common 
+0x6fa8 031477 fetcht 2 ,mem_sdp_tx_pkt_length 
+0x6fa9 031478 increase -5 ,temp 
+0x6faa 031479 byteswap temp ,pdata 
+0x6fab 031480 istore 2 ,contw 
+0x6fac 031481 increase -5 ,temp 
+0x6fad 031482 byteswap temp ,pdata 
+0x6fae 031483 istore 2 ,contw 
+0x6faf 031484 rtn 
+:      031486 ssa_req_range_common:
+0x6fb0 031487 fetch 2 ,mem_sdp_tx_payload_ptr 
+0x6fb1 031488 isub contw ,pdata 
+0x6fb2 031489 sub pdata ,0 ,pdata 
+0x6fb3 031490 store 2 ,mem_sdp_tx_pkt_length 
+0x6fb4 031491 call l2cap_get_sdp_tx_payload 
+0x6fb5 031492 copy rega ,pdata 
+0x6fb6 031493 istore 1 ,contw 
+0x6fb7 031494 fetch 2 ,mem_sdp_transactionid 
+0x6fb8 031495 istore 2 ,contw 
+0x6fb9 031496 rtn 
+:      031509 sdp_process_ssa_res:
+:      031510 sdp_process_ss_res:
+:      031511 sdp_process_sa_res:
+:      031512 sdp_process_error_res:
+0x6fba 031513 rtn 
+:      031546 sdp_invalid_service_record_handle:
+0x6fbb 031547 setarg 0x0200 
+0x6fbc 031548 store 2 ,mem_sdp_error_code 
+0x6fbd 031549 branch sdp_error_response 
+:      031550 sdp_invalid_pdu_size:
+0x6fbe 031551 setarg 0x0400 
+0x6fbf 031552 store 2 ,mem_sdp_error_code 
+0x6fc0 031553 branch sdp_error_response 
+:      031554 sdp_insufficient_resource:
+0x6fc1 031555 setarg 0x0600 
+0x6fc2 031556 store 2 ,mem_sdp_error_code 
+0x6fc3 031557 branch sdp_error_response 
+:      031558 sdp_invalid_request_syntax:
+0x6fc4 031559 setarg 0x0300 
+0x6fc5 031560 store 2 ,mem_sdp_error_code 
+:      031561 sdp_error_response:
+0x6fc6 031562 call l2cap_get_sdp_tx_payload 
+0x6fc7 031563 istore 1 ,contw 
+0x6fc8 031564 fetch 2 ,mem_sdp_transactionid 
+0x6fc9 031565 istore 2 ,contw 
+0x6fca 031566 setarg 0x0200 
+0x6fcb 031567 istore 2 ,contw 
+0x6fcc 031568 fetch 2 ,mem_sdp_error_code 
+0x6fcd 031569 istore 2 ,contw 
+0x6fce 031570 jam 7 ,mem_sdp_tx_pkt_length 
+0x6fcf 031571 rtn 
+:      031576 ask_serviceclassid:
+0x6fd0 031577 arg 0 ,regb 
+0x6fd1 031578 force 0 ,temp 
+0x6fd2 031579 arg mem_sdp_uuid_search_ptr ,contw 
+0x6fd3 031580 call dataelementtype6 
+0x6fd4 031581 branch asksrv_error ,zero 
+:      031582 classidloop:
+0x6fd5 031583 increase 1 ,regb 
+0x6fd6 031584 ifetch 1 ,contr 
+0x6fd7 031585 increase -1 ,rega 
+0x6fd8 031586 increase -1 ,timeup 
+0x6fd9 031587 compare 0x18 ,pdata ,0xf8 
+0x6fda 031588 nbranch asksrv_error ,true 
+0x6fdb 031589 compare 0x04 ,pdata ,0x07 
+0x6fdc 031590 nbranch cmp032 ,true 
+0x6fdd 031591 force 1 ,temp 
+:      031592 skip2bytes:
+0x6fde 031593 ifetch 1 ,contr 
+0x6fdf 031594 increase -1 ,rega 
+0x6fe0 031595 increase -1 ,timeup 
+0x6fe1 031596 bne 0x00 ,frstbwrong 
+0x6fe2 031597 ifetch 1 ,contr 
+0x6fe3 031598 increase -1 ,rega 
+0x6fe4 031599 increase -1 ,timeup 
+0x6fe5 031600 beq 0x00 ,cmpuuid 
+0x6fe6 031601 branch scndbwrong 
+:      031602 frstbwrong:
+0x6fe7 031603 increase 1 ,contr 
+0x6fe8 031604 increase -1 ,rega 
+0x6fe9 031605 increase -1 ,timeup 
+:      031606 scndbwrong:
+0x6fea 031607 increase 2 ,contr 
+0x6feb 031608 increase -2 ,rega 
+0x6fec 031609 increase -2 ,timeup 
+0x6fed 031610 compare 0x00 ,temp ,0xff 
+0x6fee 031611 branch loopornot ,true 
+0x6fef 031612 increase 12 ,contr 
+0x6ff0 031613 increase -12 ,rega 
+0x6ff1 031614 increase -12 ,timeup 
+0x6ff2 031615 branch loopornot 
+:      031616 cmp032:
+0x6ff3 031617 compare 0x02 ,pdata ,0x07 
+0x6ff4 031618 nbranch cmp016 ,true 
+0x6ff5 031619 branch skip2bytes 
+:      031620 cmp016:
+0x6ff6 031621 compare 0x01 ,pdata ,0x07 
+0x6ff7 031622 nbranch asksrv_error ,true 
+:      031623 cmpuuid:
+0x6ff8 031624 increase -2 ,rega 
+0x6ff9 031625 increase -2 ,timeup 
+0x6ffa 031626 ifetch 2 ,contr 
+0x6ffb 031627 sub regb ,4 ,null 
+0x6ffc 031628 branch uuidsize ,zero 
+0x6ffd 031629 istore 2 ,contw 
+:      031630 uuidsize:
+0x6ffe 031631 compare 0x00 ,temp ,0xff 
+0x6fff 031632 branch loopornot ,true 
+0x7000 031633 copy contr ,temp 
+0x7001 031634 ifetch 1 ,contr 
+0x7002 031635 bne 0x00 ,wrong12b 
+0x7003 031636 ifetch 1 ,contr 
+0x7004 031637 bne 0x00 ,wrong12b 
+0x7005 031638 ifetch 1 ,contr 
+0x7006 031639 bne 0x10 ,wrong12b 
+0x7007 031640 ifetch 1 ,contr 
+0x7008 031641 bne 0x00 ,wrong12b 
+0x7009 031642 ifetch 1 ,contr 
+0x700a 031643 bne 0x80 ,wrong12b 
+0x700b 031644 ifetch 1 ,contr 
+0x700c 031645 bne 0x00 ,wrong12b 
+0x700d 031646 ifetch 1 ,contr 
+0x700e 031647 bne 0x00 ,wrong12b 
+0x700f 031648 ifetch 1 ,contr 
+0x7010 031649 bne 0x80 ,wrong12b 
+0x7011 031650 ifetch 1 ,contr 
+0x7012 031651 bne 0x5f ,wrong12b 
+0x7013 031652 ifetch 1 ,contr 
+0x7014 031653 bne 0x9b ,wrong12b 
+0x7015 031654 ifetch 1 ,contr 
+0x7016 031655 bne 0x34 ,wrong12b 
+0x7017 031656 ifetch 1 ,contr 
+0x7018 031657 beq 0xfb ,chck12dn 
+:      031658 wrong12b:
+0x7019 031659 copy temp ,contr 
+:      031660 wrong12b1:
+0x701a 031661 increase 12 ,contr 
+0x701b 031662 force 0x00 ,queue 
+0x701c 031663 force 0x00 ,temp 
+0x701d 031664 branch chck12dn 
+:      031666 chck12dn:
+0x701e 031667 increase -12 ,timeup 
+0x701f 031668 increase -12 ,rega 
+:      031669 loopornot:
+0x7020 031670 force 0x00 ,temp 
+0x7021 031671 compare 0x00 ,rega ,0xff 
+0x7022 031672 nbranch classidloop ,true 
+0x7023 031673 force 0 ,pdata 
+0x7024 031674 istore 2 ,contw 
+0x7025 031675 rtn 
+:      031676 asksrv_error:
+0x7026 031677 arg 0xff ,temp 
+0x7027 031678 rtn 
+:      031688 dataelementtype6:
+0x7028 031689 bpatchx patch3a_4 ,mem_patch3a 
+0x7029 031690 ifetch 1 ,contr 
+0x702a 031691 increase -1 ,timeup 
+0x702b 031692 compare 0x30 ,pdata ,0xf8 
+0x702c 031693 nbranch dsize_error ,true 
+0x702d 031694 compare 0x07 ,pdata ,0x07 
+0x702e 031695 branch dsize32 ,true 
+0x702f 031696 compare 0x06 ,pdata ,0x07 
+0x7030 031697 branch dsize16 ,true 
+0x7031 031698 compare 0x05 ,pdata ,0x07 
+0x7032 031699 nbranch dsize_error ,true 
+0x7033 031701 ifetch 1 ,contr 
+0x7034 031702 copy pdata ,rega 
+0x7035 031703 increase -1 ,timeup 
+0x7036 031704 branch dsize 
+:      031705 dsize32:
+0x7037 031706 increase 2 ,contr 
+0x7038 031707 increase -2 ,timeup 
+:      031708 dsize16:
+0x7039 031709 ifetch 2 ,contr 
+0x703a 031710 byteswap pdata ,rega 
+0x703b 031711 increase -2 ,timeup 
+:      031712 dsize:
+0x703c 031713 force 0x01 ,pdata 
+0x703d 031714 rtn 
+:      031715 dsize_error:
+0x703e 031716 force 0x00 ,pdata 
+0x703f 031717 rtn 
+:      031727 ss_empty_rsp:
+0x7040 031728 setarg sdp_search_res 
+0x7041 031729 store 1 ,mem_sdp_pduid 
+0x7042 031730 branch empty_response 
+:      031731 sa_empty_rsp:
+0x7043 031732 setarg sdp_attribute_res 
+0x7044 031733 store 1 ,mem_sdp_pduid 
+0x7045 031734 branch empty_response 
+:      031735 ssa_empty_rsp:
+0x7046 031736 setarg sdp_searchattrib_res 
+0x7047 031737 store 1 ,mem_sdp_pduid 
+:      031738 empty_response:
+0x7048 031739 call l2cap_get_sdp_tx_payload 
+0x7049 031742 fetch 1 ,mem_sdp_pduid 
+0x704a 031743 copy pdata ,regb 
+0x704b 031744 istore 1 ,contw 
+0x704c 031745 fetch 2 ,mem_sdp_transactionid 
+0x704d 031746 istore 2 ,contw 
+0x704e 031747 setarg 0x0500 
+0x704f 031748 istore 2 ,contw 
+0x7050 031749 compare sdp_attribute_res ,regb ,0xff 
+0x7051 031750 branch fullsearch ,true 
+0x7052 031751 compare sdp_searchattrib_res ,regb ,0xff 
+0x7053 031752 branch fullsearch ,true 
+0x7054 031753 setarg 0x000000 
+0x7055 031754 istore 5 ,contw 
+0x7056 031755 branch outempty 
+:      031757 fullsearch:
+0x7057 031758 setarg 0x350200 
+0x7058 031759 istore 5 ,contw 
+:      031760 outempty:
+0x7059 031761 jam 10 ,mem_sdp_tx_pkt_length 
+0x705a 031762 rtn 
+:      031765 sdp_data_len:
+0x705b 031766 call store_contw 
+0x705c 031767 call store_contr 
+0x705d 031768 call sdp_get_data 
+0x705e 031769 call get_contw 
+0x705f 031770 call get_contr 
+0x7060 031771 copy temp ,pdata 
+0x7061 031772 rtn 
+:      031775 sdp_get_data:
+0x7062 031776 ifetch 1 ,contr 
+0x7063 031777 and pdata ,0x7 ,loopcnt 
+0x7064 031778 rshift3 pdata ,pdata 
+0x7065 031779 bne 0 ,sdp_get_data_type_not0 
+:      031780 sdp_get_data_type0:
+0x7066 031781 force 1 ,pdata 
+0x7067 031782 force 1 ,temp 
+0x7068 031783 rtn 
+:      031785 sdp_get_data_type_not0_sizeindex01234:
+0x7069 031786 call left_shift_n 
+0x706a 031787 add pdata ,1 ,temp 
+0x706b 031788 rtn 
+:      031789 sdp_get_data_type_not0:
+0x706c 031790 deposit loopcnt 
+0x706d 031791 sub pdata ,4 ,null 
+0x706e 031792 branch sdp_get_data_type_not0_sizeindex01234 ,positive 
+0x706f 031793 beq 5 ,sdp_get_data_type_not0_sizeindex5 
+0x7070 031794 beq 6 ,sdp_get_data_type_not0_sizeindex6 
+0x7071 031795 beq 7 ,sdp_get_data_type_not0_sizeindex7 
+0x7072 031796 rtn 
+:      031798 sdp_get_data_type_not0_sizeindex5:
+0x7073 031799 ifetch 1 ,contr 
+0x7074 031800 add pdata ,2 ,temp 
+0x7075 031801 rtn 
+:      031802 sdp_get_data_type_not0_sizeindex6:
+0x7076 031803 ifetch 2 ,contr 
+0x7077 031804 byteswap pdata ,pdata 
+0x7078 031805 add pdata ,3 ,temp 
+0x7079 031806 rtn 
+:      031807 sdp_get_data_type_not0_sizeindex7:
+0x707a 031808 ifetch 2 ,contr 
+0x707b 031809 byteswap pdata ,pdata 
+0x707c 031810 ifetcht 2 ,contr 
+0x707d 031811 byteswap temp ,temp 
+0x707e 031812 lshift16 temp ,temp 
+0x707f 031813 iadd temp ,pdata 
+0x7080 031814 add pdata ,5 ,temp 
+0x7081 031815 rtn 
+:      031821 search_all_uuid:
+0x7082 031822 bpatchx patch3a_5 ,mem_patch3a 
+0x7083 031823 force 0 ,queue 
+0x7084 031824 arg 0 ,regb 
+0x7085 031825 arg mem_sdp_handle_list ,contw 
+:      031826 search_all_uuid_llop:
+0x7086 031827 ifetch 2 ,timeup 
+0x7087 031828 rtn blank 
+0x7088 031829 call search_uuid 
+0x7089 031830 copy queue ,pdata 
+0x708a 031831 rtneq sdp_max_handle_number 
+0x708b 031832 increase 2 ,timeup 
+0x708c 031833 branch search_all_uuid_llop 
+:      031835 search_uuid:
+0x708d 031837 iforce regc 
+0x708e 031839 fetch 2 ,mem_ui_uuid_table 
+0x708f 031840 iforce contr 
+:      031841 search_uuid_next:
+0x7090 031842 copy queue ,pdata 
+0x7091 031843 rtneq sdp_max_handle_number 
+0x7092 031844 disable user 
+0x7093 031845 ifetch 1 ,contr 
+0x7094 031846 rtn blank 
+0x7095 031847 iforce loopcnt 
+:      031848 search_uuid_loop:
+0x7096 031849 ifetch 2 ,contr 
+0x7097 031850 isub regc ,null 
+0x7098 031851 nbranch search_uuid_not_found ,zero 
+0x7099 031852 enable user 
+:      031853 search_uuid_not_found:
+0x709a 031854 loop search_uuid_loop 
+0x709b 031855 ifetcht 4 ,contr 
+0x709c 031856 copy contr ,rega 
+0x709d 031857 nbranch search_uuid_nomatch ,user 
+0x709e 031858 arg mem_sdp_handle_list ,contr 
+0x709f 031859 arg sdp_max_handle_number ,loopcnt 
+:      031860 search_uuid_check_same_handle:
+0x70a0 031861 ifetch 4 ,contr 
+0x70a1 031862 branch search_uuid_store_handle ,blank 
+0x70a2 031863 isub temp ,null 
+0x70a3 031864 branch search_uuid_nomatch ,zero 
+0x70a4 031865 loop search_uuid_check_same_handle 
+0x70a5 031866 rtn 
+:      031867 search_uuid_store_handle:
+0x70a6 031868 istoret 4 ,contw 
+0x70a7 031869 increase 1 ,queue 
+0x70a8 031870 copy rega ,contr 
+0x70a9 031871 call sdp_data_len 
+0x70aa 031872 iadd regb ,regb 
+0x70ab 031873 iadd contr ,contr 
+0x70ac 031874 branch search_uuid_next 
+:      031875 search_uuid_nomatch:
+0x70ad 031876 copy rega ,contr 
+0x70ae 031877 call sdp_get_data 
+0x70af 031878 iadd contr ,contr 
+0x70b0 031879 branch search_uuid_next 
+:      031885 search_handle:
+0x70b1 031886 bpatchx patch3a_6 ,mem_patch3a 
+0x70b2 031887 fetch 2 ,mem_ui_uuid_table 
+0x70b3 031888 iforce contr 
+:      031889 search_handle_loop:
+0x70b4 031890 ifetch 1 ,contr 
+0x70b5 031891 branch disable_zero ,blank 
+0x70b6 031892 lshift pdata ,pdata 
+0x70b7 031893 iadd contr ,contr 
+0x70b8 031894 ifetch 4 ,contr 
+0x70b9 031895 isub temp ,null 
+0x70ba 031896 rtn zero 
+0x70bb 031897 deposit contw 
+0x70bc 031898 store 2 ,mem_contw 
+0x70bd 031899 storet 8 ,mem_temp 
+0x70be 031900 call sdp_get_data 
+0x70bf 031901 iadd contr ,contr 
+0x70c0 031902 copy contr ,pdata 
+0x70c1 031903 fetcht 2 ,mem_contw 
+0x70c2 031904 copy temp ,contw 
+0x70c3 031905 fetcht 8 ,mem_temp 
+0x70c4 031906 copy pdata ,contr 
+0x70c5 031907 branch search_handle_loop 
+:      031913 search_attrib:
+0x70c6 031914 bpatchx patch3a_7 ,mem_patch3a 
+0x70c7 031915 fetch 2 ,mem_ui_uuid_table 
+0x70c8 031916 iforce contr 
+:      031917 search_attrib_next:
+0x70c9 031918 ifetch 1 ,contr 
+0x70ca 031919 branch search_attrib_end ,blank 
+0x70cb 031920 iforce loopcnt 
+:      031921 search_attrib_loop:
+0x70cc 031922 ifetch 2 ,contr 
+0x70cd 031923 isub regc ,null 
+0x70ce 031924 branch search_attrib_found_uuid ,zero 
+0x70cf 031925 loop search_attrib_loop 
+0x70d0 031926 increase 4 ,contr 
+0x70d1 031927 call sdp_get_data 
+0x70d2 031928 iadd contr ,contr 
+0x70d3 031929 branch search_attrib_next 
+:      031930 search_attrib_found_uuid:
+0x70d4 031931 increase -1 ,loopcnt 
+0x70d5 031932 lshift loopcnt ,pdata 
+0x70d6 031933 iadd contr ,contr 
+0x70d7 031934 increase 4 ,contr 
+0x70d8 031935 call sdp_get_data 
+0x70d9 031936 iadd contr ,timeup 
+:      031937 search_attrib_loop_attribs:
+0x70da 031938 increase 1 ,contr 
+0x70db 031939 ifetch 2 ,contr 
+0x70dc 031940 isub regb ,null 
+0x70dd 031944 branch disable_blank ,zero 
+0x70de 031945 call sdp_data_len 
+0x70df 031946 iadd contr ,contr 
+0x70e0 031947 deposit timeup 
+0x70e1 031948 isub contr ,null 
+0x70e2 031949 branch search_attrib_end ,zero 
+0x70e3 031950 branch search_attrib_loop_attribs 
+:      031951 search_attrib_end:
+0x70e4 031952 force 0 ,contr 
+0x70e5 031953 force 0 ,pdata 
+0x70e6 031954 rtn 
+:      031960 search_handle_attrib:
+0x70e7 031961 bpatchx patch3b_0 ,mem_patch3b 
+0x70e8 031962 fetch 2 ,mem_ui_uuid_table 
+0x70e9 031963 iforce contr 
+:      031964 search_handle_attrib_next:
+0x70ea 031965 ifetch 1 ,contr 
+0x70eb 031966 branch search_handle_attrib_end ,blank 
+0x70ec 031967 lshift pdata ,pdata 
+0x70ed 031968 iadd contr ,contr 
+0x70ee 031969 ifetch 4 ,contr 
+0x70ef 031970 isub temp ,null 
+0x70f0 031971 branch search_handl_attrib_found_handle ,zero 
+0x70f1 031972 call sdp_get_data 
+0x70f2 031973 iadd contr ,contr 
+0x70f3 031974 branch search_handle_attrib_next 
+:      031975 search_handl_attrib_found_handle:
+0x70f4 031976 call sdp_get_data 
+0x70f5 031977 iadd contr ,timeup 
+:      031978 search_handle_attrib_loop_attribs:
+0x70f6 031979 increase 1 ,contr 
+0x70f7 031980 ifetch 2 ,contr 
+0x70f8 031981 isub regb ,null 
+0x70f9 031982 rtn zero 
+0x70fa 031983 call sdp_data_len 
+0x70fb 031984 iadd contr ,contr 
+0x70fc 031985 deposit timeup 
+0x70fd 031986 isub contr ,null 
+0x70fe 031987 branch search_handle_attrib_end ,zero 
+0x70ff 031988 branch search_handle_attrib_loop_attribs 
+:      031989 search_handle_attrib_end:
+0x7100 031990 force 0 ,contr 
+0x7101 031991 rtn 
+:      031995 search_rfcomm_cn:
+0x7102 031996 arg 0x0400 ,regb 
+0x7103 031997 call search_handl_attrib_found_handle 
+0x7104 031998 arg 0x0300 ,regb 
+0x7105 031999 call search_uuid_in_data 
+0x7106 032000 nrtn user 
+0x7107 032001 sub rega ,3 ,null 
+0x7108 032002 branch disable_user ,positive 
+0x7109 032003 ifetch 1 ,contr 
+0x710a 032004 bne 0x08 ,disable_user 
+0x710b 032005 ifetch 1 ,contr 
+0x710c 032006 rtn 
+:      032011 search_uuid_in_data:
+0x710d 032012 bpatchx patch3b_1 ,mem_patch3b 
+0x710e 032013 call sdp_get_data 
+0x710f 032014 copy pdata ,rega 
+:      032015 search_uuid_in_data_loop:
+0x7110 032016 ifetch 1 ,contr 
+0x7111 032017 and pdata ,0x7 ,loopcnt 
+0x7112 032018 rshift3 pdata ,pdata 
+0x7113 032019 sub pdata ,3 ,null 
+0x7114 032020 branch search_uuid_in_data_found_uuid ,zero 
+0x7115 032021 copy loopcnt ,pdata 
+0x7116 032022 beq 5 ,search_uuid_in_data_found_element_index5 
+0x7117 032023 beq 6 ,search_uuid_in_data_found_element_index6 
+0x7118 032024 beq 7 ,search_uuid_in_data_found_element_index7 
+0x7119 032025 increase -1 ,contr 
+0x711a 032026 call sdp_get_data 
+0x711b 032027 iadd contr ,contr 
+0x711c 032028 copy rega ,pdata 
+0x711d 032029 isub temp ,rega 
+0x711e 032030 branch disable_user ,zero 
+0x711f 032031 branch search_uuid_in_data_loop 
+:      032033 search_uuid_in_data_found_element_index5:
+0x7120 032034 increase -2 ,rega 
+0x7121 032035 increase 1 ,contr 
+0x7122 032036 branch search_uuid_in_data_loop 
+:      032037 search_uuid_in_data_found_element_index6:
+0x7123 032038 increase -3 ,rega 
+0x7124 032039 increase 2 ,contr 
+0x7125 032040 branch search_uuid_in_data_loop 
+:      032041 search_uuid_in_data_found_element_index7:
+0x7126 032042 increase -5 ,rega 
+0x7127 032043 increase 4 ,contr 
+0x7128 032044 branch search_uuid_in_data_loop 
+:      032046 search_uuid_in_data_found_uuid:
+0x7129 032047 increase -1 ,rega 
+0x712a 032048 copy loopcnt ,pdata 
+0x712b 032049 beq 1 ,search_uuid_in_data_type_uuid_16 
+0x712c 032050 beq 2 ,search_uuid_in_data_type_uuid_32 
+0x712d 032051 beq 4 ,search_uuid_in_data_type_uuid_128 
+0x712e 032052 branch disable_user 
+:      032053 search_uuid_in_data_type_uuid_128:
+0x712f 032054 increase -12 ,rega 
+:      032055 search_uuid_in_data_type_uuid_32:
+0x7130 032056 ifetch 2 ,contr 
+0x7131 032057 increase -2 ,rega 
+:      032058 search_uuid_in_data_type_uuid_16:
+0x7132 032059 ifetch 2 ,contr 
+0x7133 032060 isub regb ,null 
+0x7134 032061 branch enable_user ,zero 
+0x7135 032062 increase -2 ,rega 
+0x7136 032063 branch disable_user ,zero 
+0x7137 032064 branch search_uuid_in_data_loop 
+:      032123 sdp_send_spp_request:
+0x7138 032124 call l2cap_get_sdp_tx_payload 
+0x7139 032125 copy pdata ,contw 
+0x713a 032126 setarg 6 
+0x713b 032127 istore 1 ,contw 
+0x713c 032128 setarg sdp_tid_spp 
+0x713d 032129 istore 2 ,contw 
+0x713e 032130 setarg 0x0f00 
+0x713f 032131 istore 2 ,contw 
+0x7140 032132 setarg 0x1a0535 
+0x7141 032133 istore 3 ,contw 
+0x7142 032134 setarg 0x0111 
+0x7143 032135 lshift16 pdata ,pdata 
+0x7144 032136 istore 4 ,contw 
+0x7145 032137 setarg 0x2600 
+0x7146 032138 istore 2 ,contw 
+0x7147 032139 setarg 0x0335 
+0x7148 032140 istore 2 ,contw 
+0x7149 032141 setarg 0x0009 
+0x714a 032142 istore 2 ,contw 
+0x714b 032143 setarg 0x0004 
+0x714c 032144 istore 2 ,contw 
+0x714d 032145 jam 0x14 ,mem_sdp_tx_pkt_length 
+0x714e 032146 rtn 
+:      032150 function_g2:
+0x714f 032151 bpatchx patch3b_2 ,mem_patch3b 
+0x7150 032152 jam 80 ,mem_aes_cmac_data_length 
+0x7151 032153 arg memdat ,contw 
+0x7152 032154 arg mem_le_srand ,contr 
+0x7153 032155 call memcpy16 
+0x7154 032156 arg mem_le_pubkey_local_x_256 ,contr 
+0x7155 032157 call memcpy32 
+0x7156 032158 arg mem_le_pubkey_remote_x_256 ,contr 
+0x7157 032159 call memcpy32 
+0x7158 032160 call inverse_memdat 
+0x7159 032161 arg mem_le_mrand ,contr 
+0x715a 032162 call store_inverse_k 
+0x715b 032163 call function_aes_cmac 
+0x715c 032165 arg mem_aes_cmac_temp ,contw 
+0x715d 032166 call load_inverse_result 
+0x715e 032167 setarg 1000000 
+0x715f 032168 copy pdata ,rega 
+0x7160 032169 fetch 4 ,mem_aes_cmac_temp 
+0x7161 032170 idiv rega 
+0x7162 032171 call wait_div_end 
+0x7163 032172 remainder pdata 
+0x7164 032173 store 4 ,mem_gkey 
+0x7165 032175 rtn 
+:      032177 function_f6_eb:
+0x7166 032178 jam 65 ,mem_aes_cmac_data_length 
+0x7167 032179 arg memdat ,contw 
+0x7168 032180 call store_addr_common_a 
+0x7169 032181 call store_addr_common_b 
+0x716a 032182 fetch 3 ,mem_le_pres + 1 
+0x716b 032183 istore 3 ,contw 
+0x716c 032186 call get_r 
+0x716d 032188 arg mem_le_mrand ,contr 
+0x716e 032189 call memcpy16 
+0x716f 032190 arg mem_le_srand ,contr 
+0x7170 032191 call memcpy16 
+0x7171 032192 call inverse_memdat 
+0x7172 032193 arg mem_le_mackey ,contr 
+0x7173 032194 arg mem_aes_cmac_k ,contw 
+0x7174 032195 call memcpy16 
+0x7175 032197 branch function_aes_cmac 
+:      032201 get_r:
+0x7176 032202 fetch 4 ,mem_le_tk 
+0x7177 032203 istore 4 ,contw 
+0x7178 032204 call memset0_4 
+0x7179 032205 branch memset0_8 
+:      032207 function_f6_ea:
+0x717a 032208 bpatchx patch3b_3 ,mem_patch3b 
+0x717b 032209 jam 65 ,mem_aes_cmac_data_length 
+0x717c 032210 arg memdat ,contw 
+0x717d 032211 call store_addr_common_b 
+0x717e 032212 call store_addr_common_a 
+0x717f 032213 fetch 3 ,mem_le_preq + 1 
+0x7180 032214 istore 3 ,contw 
+0x7181 032217 call get_r 
+0x7182 032218 arg mem_le_srand ,contr 
+0x7183 032219 call memcpy16 
+0x7184 032220 arg mem_le_mrand ,contr 
+0x7185 032221 call memcpy16 
+0x7186 032222 call inverse_memdat 
+0x7187 032223 arg mem_le_mackey ,contr 
+0x7188 032224 arg mem_aes_cmac_k ,contw 
+0x7189 032225 call memcpy16 
+0x718a 032227 call function_aes_cmac 
+0x718b 032228 arg mem_aes_cmac_temp ,contw 
+0x718c 032229 branch load_inverse_result 
+:      032231 function_f5:
+0x718d 032232 jam 32 ,mem_aes_cmac_data_length 
+0x718e 032233 arg mem_le_dhkey_256 ,contr 
+0x718f 032234 arg memdat ,contw 
+0x7190 032235 call memcpy32 
+0x7191 032236 call inverse_memdat 
+0x7192 032237 arg mem_le_slat ,contr 
+0x7193 032238 call store_inverse_k 
+0x7194 032239 call function_aes_cmac 
+0x7195 032240 arg mem_aes_cmac_k ,contw 
+0x7196 032241 call store_aes_result 
+0x7197 032242 arg 1 ,temp 
+0x7198 032243 call function_f5_common 
+0x7199 032244 arg mem_le_ltk ,contw 
+0x719a 032245 call load_inverse_result 
+0x719b 032246 arg 0 ,temp 
+0x719c 032247 call function_f5_common 
+0x719d 032248 arg mem_le_mackey ,contw 
+0x719e 032250 branch store_aes_result 
+:      032253 function_f5_common:
+0x719f 032254 bpatchx patch3b_4 ,mem_patch3b 
+0x71a0 032255 jam 53 ,mem_aes_cmac_data_length 
+0x71a1 032256 setarg 0x100 
+0x71a2 032257 store 2 ,memdat 
+0x71a3 032258 call store_addr_common_b 
+0x71a4 032259 call store_addr_common_a 
+0x71a5 032260 arg mem_le_srand ,contr 
+0x71a6 032261 call memcpy16 
+0x71a7 032262 arg mem_le_mrand ,contr 
+0x71a8 032263 call memcpy16 
+0x71a9 032265 setarg 0x6c65 
+0x71aa 032266 istore 2 ,contw 
+0x71ab 032267 setarg 0x6274 
+0x71ac 032268 istore 2 ,contw 
+0x71ad 032269 istoret 1 ,contw 
+0x71ae 032270 call inverse_memdat 
+0x71af 032271 branch function_aes_cmac 
+:      032273 store_addr_common_b:
+0x71b0 032274 fetch 6 ,mem_le_lap 
+0x71b1 032275 istore 6 ,contw 
+0x71b2 032276 fetch 1 ,mem_le_conn_own_addr_type 
+0x71b3 032277 istore 1 ,contw 
+0x71b4 032278 rtn 
+:      032280 store_addr_common_a:
+0x71b5 032281 fetch 6 ,mem_le_plap 
+0x71b6 032282 istore 6 ,contw 
+0x71b7 032287 fetch 1 ,mem_le_conn_peer_addr_type 
+0x71b8 032288 istore 1 ,contw 
+0x71b9 032289 rtn 
+:      032291 function_f4_ca:
+0x71ba 032292 jam 65 ,mem_aes_cmac_data_length 
+0x71bb 032293 fetch 1 ,mem_passkey_1bit 
+0x71bc 032294 store 1 ,memdat 
+0x71bd 032295 arg mem_le_pubkey_local_x_256 ,contr 
+0x71be 032296 call memcpy32 
+0x71bf 032297 arg mem_le_pubkey_remote_x_256 ,contr 
+0x71c0 032298 call memcpy32 
+0x71c1 032299 call inverse_memdat 
+0x71c2 032300 arg mem_le_mrand ,contr 
+0x71c3 032301 call store_inverse_k 
+0x71c4 032302 branch function_aes_cmac 
+:      032305 function_f4_cb:
+0x71c5 032306 jam 65 ,mem_aes_cmac_data_length 
+0x71c6 032307 fetch 1 ,mem_passkey_1bit 
+0x71c7 032308 store 1 ,memdat 
+0x71c8 032309 arg mem_le_pubkey_remote_x_256 ,contr 
+0x71c9 032310 call memcpy32 
+0x71ca 032311 arg mem_le_pubkey_local_x_256 ,contr 
+0x71cb 032312 call memcpy32 
+0x71cc 032313 call inverse_memdat 
+0x71cd 032314 arg mem_le_srand ,contr 
+0x71ce 032315 call store_inverse_k 
+0x71cf 032316 branch function_aes_cmac 
+:      032318 function_aes_cmac:
+0x71d0 032319 bpatchx patch3b_5 ,mem_patch3b 
+0x71d1 032320 call function_aes_cmac_generate_subkey 
+0x71d2 032324 fetch 1 ,mem_aes_cmac_data_length 
+0x71d3 032325 copy pdata ,temp 
+:      032326 function_ceil16:
+0x71d4 032327 increase 15 ,pdata 
+0x71d5 032328 rshift4 pdata ,pdata 
+0x71d6 032329 copy pdata ,regb 
+0x71d7 032330 branch function_aes_cmac_set_flag_0_balnk ,blank 
+0x71d8 032331 and temp ,0x0f ,pdata 
+0x71d9 032332 nbranch function_aes_cmac_set_flag_0 ,blank 
+0x71da 032334 arg mem_aes_cmac_k1 ,regc 
+0x71db 032335 arg memdat ,pdata 
+0x71dc 032336 increase -16 ,pdata 
+0x71dd 032339 iadd temp ,rega 
+0x71de 032340 arg mem_aes_cmac_m_last ,contw 
+0x71df 032341 arg 4 ,loopcnt 
+0x71e0 032342 call xor_loop 
+0x71e1 032346 branch function_aes_cmac_aes 
+:      032348 function_aes_cmac_set_flag_0_balnk:
+0x71e2 032349 arg 1 ,regb 
+0x71e3 032350 arg 0 ,rega 
+0x71e4 032352 branch function_aes_cmac_set_flag_0_common 
+:      032355 function_aes_cmac_set_flag_0:
+0x71e5 032357 and temp ,0x0f ,rega 
+:      032358 function_aes_cmac_set_flag_0_common:
+0x71e6 032359 arg memdat ,pdata 
+0x71e7 032360 iadd temp ,pdata 
+0x71e8 032361 isub rega ,contr 
+0x71e9 032363 arg mem_aes_cmac_temp ,contw 
+0x71ea 032364 call function_aes_cmac_padding 
+0x71eb 032366 arg mem_aes_cmac_k2 ,regc 
+0x71ec 032367 arg mem_aes_cmac_temp ,rega 
+0x71ed 032368 arg mem_aes_cmac_m_last ,contw 
+0x71ee 032369 arg 4 ,loopcnt 
+0x71ef 032370 call xor_loop 
+:      032377 function_aes_cmac_aes:
+0x71f0 032382 call aes_clear_data 
+0x71f1 032383 call aes_init 
+0x71f2 032386 arg memdat ,contr 
+:      032387 function_aes_cmac_aes_loop:
+0x71f3 032389 increase -1 ,regb 
+0x71f4 032390 deposit regb 
+0x71f5 032391 branch function_aes_cmac_aes_loop_end ,blank 
+0x71f6 032392 call load_data128 
+0x71f7 032393 call do_aes_cbc 
+0x71f8 032394 branch function_aes_cmac_aes_loop 
+:      032396 function_aes_cmac_aes_loop_end:
+0x71f9 032397 arg mem_aes_cmac_temp ,contw 
+0x71fa 032398 call store_aes_result 
+0x71fb 032399 arg mem_aes_cmac_m_last ,contr 
+0x71fc 032400 call load_data128 
+0x71fd 032401 call aes_init 
+0x71fe 032402 arg mem_aes_cmac_temp ,contr 
+0x71ff 032403 call load_data128 
+0x7200 032404 branch do_aes_cbc 
+:      032408 load_inverse_result:
+0x7201 032410 copy contw ,rega 
+0x7202 032411 call store_aes_result 
+0x7203 032413 arg 16 ,loopcnt 
+0x7204 032414 branch inverse_data 
+:      032416 store_inverse_k:
+0x7205 032417 arg mem_aes_cmac_k ,contw 
+0x7206 032418 call memcpy16 
+:      032419 inverse_k:
+0x7207 032420 arg 16 ,loopcnt 
+0x7208 032421 arg mem_aes_cmac_k ,rega 
+0x7209 032422 branch inverse_data 
+:      032424 inverse_memdat:
+0x720a 032425 fetch 1 ,mem_aes_cmac_data_length 
+0x720b 032426 copy pdata ,loopcnt 
+0x720c 032427 arg memdat ,rega 
+0x720d 032428 branch inverse_data 
+:      032430 bn_lshift_0_inverse:
+0x720e 032431 ifetch 1 ,rega 
+0x720f 032432 lshift pdata ,pdata 
+0x7210 032433 isolate1 0 ,regc 
+0x7211 032434 setflag true ,0 ,pdata 
+0x7212 032435 isolate1 8 ,pdata 
+0x7213 032436 setflag true ,0 ,regc 
+0x7214 032437 istore 1 ,rega 
+0x7215 032438 increase -1 ,rega 
+0x7216 032439 loop bn_lshift_0_inverse 
+0x7217 032440 rtn 
+:      032442 function_aes_cmac_k1_inverse:
+0x7218 032443 arg mem_aes_cmac_k1 ,rega 
+:      032444 function_aes_cmac_inverse_common:
+0x7219 032445 increase 15 ,rega 
+0x721a 032446 force 16 ,loopcnt 
+0x721b 032447 force 0 ,regc 
+0x721c 032448 branch bn_lshift_0_inverse 
+:      032450 function_aes_cmac_k2_inverse:
+0x721d 032451 arg mem_aes_cmac_k2 ,rega 
+0x721e 032452 branch function_aes_cmac_inverse_common 
+:      032455 function_aes_cmac_generate_subkey:
+0x721f 032456 arg mem_aes_cmac_k ,contr 
+0x7220 032457 call load_key 
+0x7221 032460 force regidx_xor ,regext_index 
+0x7222 032461 call aes_clear 
+0x7223 032462 call aes_clear_data 
+0x7224 032463 call do_aes_ocb 
+0x7225 032468 arg mem_aes_cmac_k1 ,contw 
+0x7226 032469 call store_aes_result 
+:      032470 function_aes_cmac_k1:
+0x7227 032471 bpatchx patch3b_6 ,mem_patch3b 
+0x7228 032472 fetch 1 ,mem_aes_cmac_k1 
+0x7229 032473 isolate1 7 ,pdata 
+0x722a 032474 nbranch function_aes_cmac_k1_0 ,true 
+0x722b 032475 call function_aes_cmac_k1_inverse 
+0x722c 032478 arg mem_aes_cmac_k1 ,regc 
+0x722d 032480 arg mem_aes_cmac_k1 ,contw 
+0x722e 032483 call function_aes_cmac_xor_rb 
+0x722f 032484 branch function_aes_cmac_k2 
+:      032485 function_aes_cmac_k1_0:
+0x7230 032486 call function_aes_cmac_k1_inverse 
+:      032487 function_aes_cmac_k2:
+0x7231 032489 arg mem_aes_cmac_k1 ,contr 
+0x7232 032490 arg mem_aes_cmac_k2 ,contw 
+0x7233 032491 call memcpy16 
+0x7234 032492 fetch 1 ,mem_aes_cmac_k2 
+0x7235 032493 isolate1 7 ,pdata 
+0x7236 032494 nbranch function_aes_cmac_k2_inverse ,true 
+0x7237 032495 call function_aes_cmac_k2_inverse 
+0x7238 032497 arg mem_aes_cmac_k2 ,regc 
+0x7239 032499 arg mem_aes_cmac_k2 ,contw 
+:      032505 function_aes_cmac_xor_rb:
+0x723a 032506 arg 3 ,loopcnt 
+:      032507 function_aes_cmac_xor_rb_loop:
+0x723b 032508 arg 0 ,temp 
+0x723c 032509 call function_aes_cmac_xor_loop_common 
+0x723d 032510 increase 4 ,regc 
+0x723e 032511 loop function_aes_cmac_xor_rb_loop 
+0x723f 032512 arg 0x8700 ,temp 
+0x7240 032513 lshift16 temp ,temp 
+:      032514 function_aes_cmac_xor_loop_common:
+0x7241 032515 ifetch 4 ,regc 
+0x7242 032516 ixor temp ,pdata 
+0x7243 032517 istore 4 ,contw 
+0x7244 032518 rtn 
+:      032524 function_aes_cmac_padding:
+0x7245 032525 bpatchx patch3b_7 ,mem_patch3b 
+0x7246 032526 arg 16 ,loopcnt 
+0x7247 032527 arg 0 ,pdata 
+:      032528 function_aes_cmac_padding_loop:
+0x7248 032529 isub rega ,null 
+0x7249 032530 branch function_aes_cmac_padding_beq_length ,zero 
+0x724a 032531 branch function_aes_cmac_padding_big_length ,positive 
+0x724b 032532 ifetcht 1 ,contr 
+0x724c 032533 istoret 1 ,contw 
+:      032534 function_aes_cmac_padding_loop2:
+0x724d 032535 increase 1 ,pdata 
+0x724e 032536 loop function_aes_cmac_padding_loop 
+0x724f 032537 rtn 
+:      032538 function_aes_cmac_padding_beq_length:
+0x7250 032539 arg 0x80 ,temp 
+:      032540 function_aes_cmac_padding_common:
+0x7251 032541 istoret 1 ,contw 
+0x7252 032542 branch function_aes_cmac_padding_loop2 
+:      032544 function_aes_cmac_padding_big_length:
+0x7253 032545 arg 0 ,temp 
+0x7254 032546 branch function_aes_cmac_padding_common 
+:      032549 generate_kinit:
+0x7255 032550 call function_e22 
+0x7256 032551 arg mem_input_store ,contr 
+0x7257 032552 arg mem_kinit ,contw 
+0x7258 032553 branch memcpy16 
+:      032556 function_e21:
+0x7259 032557 disable user 
+0x725a 032558 call function_expand 
+0x725b 032559 arg mem_random_number ,contr 
+0x725c 032560 arg mem_x ,contw 
+0x725d 032561 force 15 ,loopcnt 
+0x725e 032562 call memcpy 
+0x725f 032563 ifetch 1 ,contr 
+0x7260 032564 xor_into 6 ,pdata 
+0x7261 032565 istore 1 ,contw 
+0x7262 032566 setarg mem_y 
+0x7263 032567 store 2 ,memp_ar_input 
+0x7264 032568 setarg mem_x 
+0x7265 032569 store 2 ,memp_ar_key 
+0x7266 032570 set1 mark_ar2 ,mark 
+0x7267 032571 branch function_ar 
+:      032575 function_e22:
+0x7268 032576 fetcht 1 ,mem_pin_length 
+0x7269 032577 force 16 ,regb 
+0x726a 032578 add temp ,6 ,regc 
+0x726b 032579 sub regc ,16 ,null 
+0x726c 032580 branch function_e22_pin_init ,positive 
+0x726d 032581 force 16 ,regc 
+:      032582 function_e22_pin_init:
+0x726e 032583 arg mem_x ,contw 
+:      032584 function_e22_genx_pin:
+0x726f 032585 arg mem_pin ,contr 
+0x7270 032586 copy temp ,loopcnt 
+0x7271 032587 disable user 
+:      032588 function_e22_genx_loop:
+0x7272 032589 ifetch 1 ,contr 
+0x7273 032590 istore 1 ,contw 
+0x7274 032591 increase -1 ,regb 
+0x7275 032592 branch function_e22_genx_end ,zero 
+0x7276 032593 loop function_e22_genx_loop 
+0x7277 032594 branch function_e22_genx_pin ,user 
+0x7278 032595 enable user 
+0x7279 032596 force 6 ,loopcnt 
+0x727a 032597 copy rega ,contr 
+0x727b 032598 branch function_e22_genx_loop 
+:      032599 function_e22_genx_end:
+0x727c 032600 arg mem_random_number ,contr 
+0x727d 032601 arg mem_y ,contw 
+0x727e 032602 call memcpy16 
+0x727f 032603 fetch 1 ,mem_y15 
+0x7280 032604 ixor regc ,pdata 
+0x7281 032605 store 1 ,mem_y15 
+0x7282 032606 setarg mem_y 
+0x7283 032607 store 2 ,memp_ar_input 
+0x7284 032608 setarg mem_x 
+0x7285 032609 store 2 ,memp_ar_key 
+0x7286 032610 set1 mark_ar2 ,mark 
+0x7287 032611 branch function_ar 
+:      032616 function_e1:
+0x7288 032617 disable user 
+0x7289 032618 call function_expand 
+0x728a 032619 branch function_hash 
+:      032621 function_e3:
+0x728b 032622 arg mem_aco ,rega 
+0x728c 032623 enable user 
+0x728d 032624 call function_expand 
+0x728e 032625 call function_hash 
+0x728f 032626 arg mem_input_store ,contr 
+0x7290 032627 arg mem_kc ,contw 
+0x7291 032628 branch memcpy16 
+:      032631 function_hash:
+0x7292 032632 setarg mem_random_number 
+0x7293 032633 store 2 ,memp_ar_input 
+0x7294 032634 setarg mem_link_key 
+0x7295 032635 store 2 ,memp_ar_key 
+0x7296 032636 set0 mark_ar2 ,mark 
+0x7297 032637 call function_ar 
+0x7298 032638 arg mem_input_store ,rega 
+0x7299 032639 arg mem_random_number ,regb 
+0x729a 032640 arg mem_x ,contw 
+0x729b 032641 call xor16 
+0x729c 032642 arg mem_x ,rega 
+0x729d 032643 arg mem_y ,regb 
+0x729e 032644 copy regb ,contw 
+0x729f 032645 enable user 
+0x72a0 032646 call add16 
+0x72a1 032647 call key_offset 
+0x72a2 032648 setarg mem_y 
+0x72a3 032649 store 2 ,memp_ar_input 
+0x72a4 032650 setarg mem_x 
+0x72a5 032651 store 2 ,memp_ar_key 
+0x72a6 032652 set1 mark_ar2 ,mark 
+0x72a7 032653 branch function_ar 
+:      032657 function_ar:
+0x72a8 032658 jam 0 ,mem_ar_hround 
+0x72a9 032659 fetch 2 ,memp_ar_key 
+0x72aa 032660 iforce contr 
+0x72ab 032661 arg mem_key_store ,contw 
+0x72ac 032662 call memcpy16 
+0x72ad 032663 fetch 2 ,memp_ar_input 
+0x72ae 032664 iforce contr 
+0x72af 032665 arg mem_input_store ,contw 
+0x72b0 032666 call memcpy16 
+:      032668 function_ar_loop:
+0x72b1 032669 call key_scheduling 
+0x72b2 032670 disable user 
+0x72b3 032671 bmark0 mark_ar2 ,function_ar_original 
+0x72b4 032672 fetch 1 ,mem_ar_hround 
+0x72b5 032673 bne 4 ,function_ar_original 
+0x72b6 032674 fetch 2 ,memp_ar_input 
+0x72b7 032675 iforce regb 
+0x72b8 032676 call xor_mod32_ar2 
+:      032677 function_ar_original:
+0x72b9 032678 call xor_mod32 
+0x72ba 032679 call el_boxes 
+0x72bb 032680 fetch 1 ,mem_ar_hround 
+0x72bc 032681 increase 1 ,pdata 
+0x72bd 032682 store 1 ,mem_ar_hround 
+0x72be 032684 call key_scheduling 
+0x72bf 032685 enable user 
+0x72c0 032686 call xor_mod32 
+0x72c1 032687 call pht 
+0x72c2 032688 call permute 
+0x72c3 032689 call pht 
+0x72c4 032690 call permute 
+0x72c5 032691 call pht 
+0x72c6 032692 call permute 
+0x72c7 032693 call pht 
+0x72c8 032694 fetch 1 ,mem_ar_hround 
+0x72c9 032695 increase 1 ,pdata 
+0x72ca 032696 store 1 ,mem_ar_hround 
+0x72cb 032697 bne 16 ,function_ar_loop 
+0x72cc 032698 call key_scheduling 
+0x72cd 032699 disable user 
+0x72ce 032700 branch xor_mod32 
+:      032704 key_scheduling:
+0x72cf 032705 fetch 1 ,mem_ar_hround 
+0x72d0 032706 arg mem_key_store ,contr 
+0x72d1 032707 branch key_sched_zero ,blank 
+0x72d2 032708 iforce regb 
+0x72d3 032709 force 17 ,loopcnt 
+0x72d4 032710 copy contr ,contw 
+:      032711 key_rotateloop:
+0x72d5 032712 ifetch 1 ,contr 
+0x72d6 032713 lshift3 pdata ,temp 
+0x72d7 032714 rshift2 pdata ,pdata 
+0x72d8 032715 rshift3 pdata ,pdata 
+0x72d9 032716 ior temp ,pdata 
+0x72da 032717 istore 1 ,contw 
+0x72db 032718 loop key_rotateloop 
+0x72dc 032719 setarg mem_key_store 
+0x72dd 032720 iadd regb ,contr 
+0x72de 032721 force 16 ,loopcnt 
+0x72df 032722 arg mem_round_key ,contw 
+:      032723 key_select_octet_loop:
+0x72e0 032724 ifetch 1 ,contr 
+0x72e1 032725 istore 1 ,contw 
+0x72e2 032726 compare mem_key_store_end ,contr ,0xff 
+0x72e3 032727 nbranch key_select_octet_nwrap ,true 
+0x72e4 032728 increase -17 ,contr 
+:      032729 key_select_octet_nwrap:
+0x72e5 032730 loop key_select_octet_loop 
+0x72e6 032731 force 0 ,rega 
+0x72e7 032732 add regb ,-1 ,regc 
+0x72e8 032733 lshift2 regc ,regc 
+0x72e9 032734 lshift2 regc ,regc 
+0x72ea 032735 call enable_authrom 
+0x72eb 032736 setarg mem_b_box 
+0x72ec 032737 iadd regc ,regc 
+0x72ed 032738 arg mem_round_key ,contw 
+0x72ee 032739 force 16 ,loopcnt 
+:      032740 bias_round_key_loop:
+0x72ef 032741 ifetcht 1 ,regc 
+0x72f0 032742 ifetch 1 ,contw 
+0x72f1 032743 iadd temp ,pdata 
+0x72f2 032744 istore 1 ,contw 
+0x72f3 032745 increase 1 ,regc 
+0x72f4 032746 loop bias_round_key_loop 
+0x72f5 032747 branch disable_authrom 
+:      032749 key_sched_zero:
+0x72f6 032750 force 16 ,loopcnt 
+0x72f7 032751 force 0 ,temp 
+:      032752 create_byte_16_loop:
+0x72f8 032753 ifetch 1 ,contr 
+0x72f9 032754 ixor temp ,temp 
+0x72fa 032755 loop create_byte_16_loop 
+0x72fb 032756 deposit temp 
+0x72fc 032757 istore 1 ,contr 
+0x72fd 032758 arg mem_key_store ,contr 
+0x72fe 032759 arg mem_round_key ,contw 
+0x72ff 032760 branch memcpy16 
+:      032762 xor_mod32:
+0x7300 032763 arg mem_round_key ,regb 
+:      032764 xor_mod32_ar2:
+0x7301 032765 force 16 ,loopcnt 
+0x7302 032766 arg mem_input_store ,rega 
+0x7303 032767 copy rega ,contw 
+:      032768 xor_mod32_loop:
+0x7304 032769 ifetcht 1 ,rega 
+0x7305 032770 ifetch 1 ,regb 
+0x7306 032771 ixor temp ,alarm 
+0x7307 032772 and loopcnt ,3 ,regc 
+0x7308 032773 nbranch xor_mod32_invert ,user 
+0x7309 032774 xor_into 3 ,regc 
+:      032775 xor_mod32_invert:
+0x730a 032776 sub regc ,1 ,regc 
+0x730b 032777 branch xor_even ,positive 
+0x730c 032778 iadd temp ,alarm 
+:      032779 xor_even:
+0x730d 032780 deposit alarm 
+0x730e 032781 istore 1 ,contw 
+0x730f 032782 increase 1 ,rega 
+0x7310 032783 increase 1 ,regb 
+0x7311 032784 loop xor_mod32_loop 
+0x7312 032785 rtn 
+:      032787 el_boxes:
+0x7313 032788 call enable_authrom 
+0x7314 032789 force 16 ,loopcnt 
+0x7315 032790 arg mem_input_store ,rega 
+:      032791 el_box_loop:
+0x7316 032792 ifetch 1 ,rega 
+0x7317 032793 arg mem_e_box ,contr 
+0x7318 032794 and loopcnt ,3 ,regc 
+0x7319 032795 sub regc ,1 ,null 
+0x731a 032796 branch e_boxes ,positive 
+0x731b 032797 arg mem_l_box ,contr 
+:      032798 e_boxes:
+0x731c 032799 iadd contr ,contr 
+0x731d 032800 ifetch 1 ,contr 
+0x731e 032801 istore 1 ,rega 
+0x731f 032802 increase 1 ,rega 
+0x7320 032803 loop el_box_loop 
+0x7321 032804 branch disable_authrom 
+:      032806 pht:
+0x7322 032807 force 8 ,loopcnt 
+0x7323 032808 arg mem_input_store ,contr 
+0x7324 032809 copy contr ,contw 
+:      032810 pht_loop:
+0x7325 032811 ifetch 1 ,contr 
+0x7326 032812 iforce rega 
+0x7327 032813 ifetch 1 ,contr 
+0x7328 032814 iforce regb 
+0x7329 032815 lshift rega ,pdata 
+0x732a 032816 iadd regb ,pdata 
+0x732b 032817 istore 1 ,contw 
+0x732c 032818 deposit rega 
+0x732d 032819 iadd regb ,pdata 
+0x732e 032820 istore 1 ,contw 
+0x732f 032821 loop pht_loop 
+0x7330 032822 rtn 
+:      032825 permute:
+0x7331 032826 setarg 0x8ae42c 
+0x7332 032827 iforce temp 
+0x7333 032828 force 7 ,loopcnt 
+0x7334 032829 call permute_exchange 
+0x7335 032830 setarg 0xd751b 
+0x7336 032831 iforce temp 
+0x7337 032832 force 5 ,loopcnt 
+0x7338 032833 call permute_exchange 
+0x7339 032834 fetch 1 ,mem_input_store + 15 
+0x733a 032835 iforce rega 
+0x733b 032836 fetch 1 ,mem_input_store + 3 
+0x733c 032837 store 1 ,mem_input_store + 15 
+0x733d 032838 deposit rega 
+0x733e 032839 store 1 ,mem_input_store + 3 
+0x733f 032840 rtn 
+:      032842 permute_exchange:
+0x7340 032843 and temp ,0xf ,regb 
+:      032844 permute_loop:
+0x7341 032845 and temp ,0xf ,pdata 
+0x7342 032846 arg mem_input_store ,contw 
+0x7343 032847 iadd contw ,contw 
+0x7344 032848 ifetch 1 ,contw 
+0x7345 032849 iforce regc 
+0x7346 032850 deposit rega 
+0x7347 032851 istore 1 ,contw 
+0x7348 032852 copy regc ,rega 
+0x7349 032853 rshift4 temp ,temp 
+0x734a 032854 loop permute_loop 
+0x734b 032855 setarg mem_input_store 
+0x734c 032856 iadd regb ,contw 
+0x734d 032857 deposit rega 
+0x734e 032858 istore 1 ,contw 
+0x734f 032859 rtn 
+:      032861 add16:
+0x7350 032862 enable user 
+0x7351 032863 branch xor_add16 
+:      032865 xor16:
+0x7352 032866 disable user 
+:      032867 xor_add16:
+0x7353 032868 force 16 ,loopcnt 
+:      032869 xoradd_loop:
+0x7354 032870 ifetcht 1 ,rega 
+0x7355 032871 ifetch 1 ,regb 
+0x7356 032872 branch xoradd_add ,user 
+0x7357 032873 ixor temp ,pdata 
+0x7358 032874 branch xoradd_store 
+:      032875 xoradd_add:
+0x7359 032876 iadd temp ,pdata 
+:      032877 xoradd_store:
+0x735a 032878 istore 1 ,contw 
+0x735b 032879 increase 1 ,rega 
+0x735c 032880 increase 1 ,regb 
+0x735d 032881 loop xoradd_loop 
+0x735e 032882 rtn 
+:      032885 function_expand:
+0x735f 032886 arg mem_y ,contw 
+0x7360 032887 ifetch 6 ,rega 
+0x7361 032888 istore 6 ,contw 
+0x7362 032889 branch expand_12 ,user 
+0x7363 032890 ifetch 6 ,rega 
+0x7364 032891 branch expand_cont 
+:      032892 expand_12:
+0x7365 032893 ifetch 6 ,contr 
+:      032894 expand_cont:
+0x7366 032895 istore 6 ,contw 
+0x7367 032896 ifetch 4 ,rega 
+0x7368 032897 istore 4 ,contw 
+0x7369 032898 rtn 
+:      032900 key_offset:
+0x736a 032901 arg mem_link_key ,contr 
+0x736b 032902 arg mem_x ,contw 
+0x736c 032903 arg 0 ,temp 
+0x736d 032904 setarg 0x8395a7 
+0x736e 032905 call concatenate_temp24 
+0x736f 032906 setarg 0xb3c1df 
+0x7370 032907 call concatenate_temp24 
+0x7371 032908 setarg 0xe5e9 
+0x7372 032909 call concatenate_temp16 
+0x7373 032910 copy temp ,regab 
+0x7374 032911 disable user 
+0x7375 032912 call key_addxor 
+0x7376 032913 copy regab ,temp 
+0x7377 032914 enable user 
+0x7378 032915 branch key_addxor 
+:      032917 key_addxor:
+0x7379 032918 force 8 ,loopcnt 
+:      032919 key_addxor_loop:
+0x737a 032920 ifetch 1 ,contr 
+0x737b 032921 compare 1 ,loopcnt ,1 
+0x737c 032922 branch key_high ,user 
+0x737d 032923 branch key_xor ,true 
+:      032924 key_add:
+0x737e 032925 iadd temp ,pdata 
+0x737f 032926 branch key_store 
+:      032927 key_high:
+0x7380 032928 branch key_add ,true 
+:      032929 key_xor:
+0x7381 032930 ixor temp ,pdata 
+:      032931 key_store:
+0x7382 032932 istore 1 ,contw 
+0x7383 032933 rshift8 temp ,temp 
+0x7384 032934 loop key_addxor_loop 
+0x7385 032935 rtn 
+:      032937 copy_aco:
+0x7386 032938 fetch 6 ,mem_input_store + 4 
+0x7387 032939 store 6 ,mem_aco 
+0x7388 032940 ifetch 6 ,contr 
+0x7389 032941 istore 6 ,contw 
+0x738a 032942 rtn 
+:      032944 concatenate_temp24:
+0x738b 032945 lshift8 temp ,temp 
+:      032946 concatenate_temp16:
+0x738c 032947 lshift16 temp ,temp 
+0x738d 032948 ior temp ,temp 
+0x738e 032949 rtn 
+:      032953 loop1:
+0x738f 032954 branch loop1 
+:      032958 generate_stk:
+0x7390 032959 bpatchx patch3c_0 ,mem_patch3c 
+0x7391 032960 call function_s1 
+0x7392 032961 arg mem_le_ltk ,contw 
+0x7393 032962 branch store_aes_result 
+:      032965 authenticate_rconfirm:
+0x7394 032966 arg mem_le_srand ,contw 
+0x7395 032967 branch authenticate_mconfirm ,master 
+0x7396 032968 arg mem_le_mrand ,contw 
+:      032969 authenticate_mconfirm:
+0x7397 032970 copy contr ,rega 
+0x7398 032971 call memcpy16 
+0x7399 032972 call function_c1 
+0x739a 032973 arg mem_le_rconfirm ,contr 
+0x739b 032974 branch compare_res 
+:      032976 generate_confirm:
+0x739c 032977 arg mem_le_mrand ,rega 
+0x739d 032978 branch generate_mrand ,master 
+0x739e 032979 arg mem_le_srand ,rega 
+:      032980 generate_mrand:
+0x739f 032981 copy rega ,contw 
+0x73a0 032982 call generate_random 
+0x73a1 032983 branch function_c1 
+:      032985 generate_sk:
+0x73a2 032986 arg mem_le_skdm ,contr 
+0x73a3 032987 call load_data128 
+0x73a4 032988 arg mem_le_ltk ,contr 
+0x73a5 032989 call load_regext 
+0x73a6 032990 force 0x38 ,aes_ctrl 
+0x73a7 032991 force 0x0 ,aes_ctrl 
+0x73a8 032992 call wait_aes 
+0x73a9 032993 arg mem_le_sk ,contw 
+0x73aa 032994 branch store_aes_result 
+:      032997 first_block_counter:
+0x73ab 032998 force 0x49 ,pdata 
+0x73ac 032999 branch first_block 
+:      033000 first_block_data:
+0x73ad 033001 force 1 ,pdata 
+:      033002 first_block:
+0x73ae 033003 force regidx_data ,regext_index 
+0x73af 033004 lshift8 temp ,regext 
+0x73b0 033005 ior regext ,regext 
+0x73b1 033006 increase 1 ,regext_index 
+0x73b2 033007 rshift8 temp ,regext 
+0x73b3 033008 rshift16 regext ,regext 
+0x73b4 033009 fetch 2 ,mem_le_ivm 
+0x73b5 033010 lshift16 ,pdata ,pdata 
+0x73b6 033011 ior regext ,regext 
+0x73b7 033012 increase 1 ,regext_index 
+0x73b8 033013 ifetch 4 ,contr 
+0x73b9 033014 iforce regext 
+0x73ba 033015 increase 1 ,regext_index 
+0x73bb 033016 ifetch 2 ,contr 
+0x73bc 033017 byteswap rega ,regext 
+0x73bd 033018 lshift16 regext ,regext 
+0x73be 033019 ior regext ,regext 
+0x73bf 033020 increase 1 ,regext_index 
+0x73c0 033021 rtn 
+:      033025 generate_mic:
+0x73c1 033026 add regc ,1 ,contr 
+0x73c2 033027 ifetch 1 ,contr 
+0x73c3 033028 iforce rega 
+0x73c4 033029 call first_block_counter 
+0x73c5 033030 call do_aes_ocb 
+0x73c6 033032 force regidx_data ,regext_index 
+0x73c7 033033 ifetch 1 ,regc 
+0x73c8 033034 and_into 0x3 ,pdata 
+0x73c9 033035 lshift16 pdata ,regext 
+0x73ca 033036 set1 8 ,regext 
+0x73cb 033037 call clear_hidata 
+0x73cc 033038 call do_aes_cbc 
+0x73cd 033040 copy rega ,loopcnt 
+0x73ce 033041 add regc ,2 ,contr 
+0x73cf 033042 call padding_data 
+:      033043 generate_mic_loop:
+0x73d0 033044 call aes_load_data 
+0x73d1 033045 call do_aes_cbc 
+0x73d2 033046 deposit loopcnt 
+0x73d3 033047 branch generate_mic_end ,blank 
+0x73d4 033048 branch generate_mic_loop 
+:      033049 generate_mic_end:
+0x73d5 033050 force regidx_result ,regext_index 
+0x73d6 033051 deposit regext 
+0x73d7 033052 store 4 ,mem_le_mic 
+0x73d8 033053 rtn 
+:      033055 aes_crypt_data:
+0x73d9 033056 increase 1 ,rega 
+0x73da 033057 call first_block_data 
+0x73db 033058 copy regc ,contr 
+0x73dc 033059 call aes_load_xor 
+0x73dd 033060 call do_aes_ctr 
+0x73de 033061 call store_enc_data 
+0x73df 033062 increase 16 ,regc 
+0x73e0 033063 increase -16 ,regb 
+0x73e1 033064 branch aes_crypt_data ,positive 
+0x73e2 033065 rtn 
+:      033067 le_encrypt:
+0x73e3 033068 bpatchx patch3c_1 ,mem_patch3c 
+0x73e4 033069 arg mem_le_txheader ,regc 
+0x73e5 033070 fetcht 5 ,mem_le_pcnt_tx 
+0x73e6 033071 call generate_mic 
+0x73e7 033072 force regidx_xor ,regext_index 
+0x73e8 033073 iforce regext 
+0x73e9 033074 force 0 ,rega 
+0x73ea 033075 call first_block_data 
+0x73eb 033076 call do_aes_ctr 
+0x73ec 033077 arg mem_le_txpayload ,regc 
+0x73ed 033078 fetch 1 ,mem_le_txlen 
+0x73ee 033079 add pdata ,-1 ,regb 
+0x73ef 033080 iadd regc ,contw 
+0x73f0 033081 force regidx_result ,regext_index 
+0x73f1 033082 deposit regext 
+0x73f2 033083 istore 4 ,contw 
+0x73f3 033084 call aes_crypt_data 
+0x73f4 033085 fetch 1 ,mem_le_txlen 
+0x73f5 033086 increase 4 ,pdata 
+0x73f6 033087 store 1 ,mem_le_txlen 
+0x73f7 033088 fetcht 5 ,mem_le_pcnt_tx 
+0x73f8 033089 increase 1 ,temp 
+0x73f9 033090 storet 5 ,mem_le_pcnt_tx 
+0x73fa 033091 rtn 
+:      033093 le_decrypt:
+0x73fb 033094 bpatchx patch3c_2 ,mem_patch3c 
+0x73fc 033095 fetch 1 ,mem_le_rxbuf + 1 
+0x73fd 033096 sub pdata ,20 ,null 
+0x73fe 033097 branch le_dec_cont ,positive 
+:      033098 le_dec_cont:
+0x73ff 033099 arg mem_le_rxbuf + 2 ,regc 
+0x7400 033100 add pdata ,-1 ,regb 
+0x7401 033101 increase -4 ,pdata 
+0x7402 033102 store 1 ,mem_le_rxbuf + 1 
+0x7403 033103 iadd regc ,contr 
+0x7404 033104 ifetch 4 ,contr 
+0x7405 033105 force regidx_xor ,regext_index 
+0x7406 033106 iforce regext 
+0x7407 033107 force 0 ,rega 
+0x7408 033108 fetcht 5 ,mem_le_pcnt_rx 
+0x7409 033109 call first_block_data 
+0x740a 033110 call do_aes_ctr 
+0x740b 033111 force regidx_result ,regext_index 
+0x740c 033112 deposit regext 
+0x740d 033113 store 4 ,mem_le_peer_mic 
+0x740e 033114 call aes_crypt_data 
+0x740f 033115 arg mem_le_rxbuf ,regc 
+0x7410 033116 call generate_mic 
+0x7411 033117 fetcht 4 ,mem_le_peer_mic 
+0x7412 033118 isub temp ,pdata 
+0x7413 033119 nrtn blank 
+0x7414 033120 fetch 4 ,mem_le_last_mic 
+0x7415 033121 isub temp ,pdata 
+0x7416 033122 rtn blank 
+0x7417 033123 storet 4 ,mem_le_last_mic 
+0x7418 033124 fetch 5 ,mem_le_pcnt_rx 
+0x7419 033125 increase 1 ,pdata 
+0x741a 033126 store 5 ,mem_le_pcnt_rx 
+0x741b 033127 force 0 ,pdata 
+0x741c 033128 rtn 
+:      033130 wait_aes:
+0x741d 033131 nbranch wait_aes ,aes_ready 
+0x741e 033132 rtn 
+:      033134 do_aes_ocb:
+0x741f 033135 force 0x30 ,aes_ctrl 
+0x7420 033136 force 0x0 ,aes_ctrl 
+0x7421 033137 branch wait_aes 
+:      033139 do_aes_cbc:
+0x7422 033140 force 0x32 ,aes_ctrl 
+0x7423 033141 force 0x2 ,aes_ctrl 
+0x7424 033142 branch wait_aes 
+:      033144 do_aes_ctr:
+0x7425 033145 force 0x34 ,aes_ctrl 
+0x7426 033146 force 0x4 ,aes_ctrl 
+0x7427 033147 branch wait_aes 
+:      033150 aes_init:
+0x7428 033151 force 1 ,aes_ctrl 
+0x7429 033152 force 0 ,aes_ctrl 
+0x742a 033153 rtn 
+:      033154 function_s1:
+0x742b 033155 force regidx_data ,regext_index 
+0x742c 033156 fetch 4 ,mem_le_mrand 
+0x742d 033157 iforce regext 
+0x742e 033158 increase 1 ,regext_index 
+0x742f 033159 ifetch 4 ,contr 
+0x7430 033160 iforce regext 
+0x7431 033161 increase 1 ,regext_index 
+0x7432 033162 fetch 4 ,mem_le_srand 
+0x7433 033163 iforce regext 
+0x7434 033164 increase 1 ,regext_index 
+0x7435 033165 ifetch 4 ,contr 
+0x7436 033166 iforce regext 
+0x7437 033167 increase 1 ,regext_index 
+0x7438 033168 call aes_clear 
+0x7439 033169 increase -4 ,regext_index 
+0x743a 033170 fetch 4 ,mem_le_tk 
+0x743b 033171 copy pdata ,regext 
+0x743c 033172 increase 4 ,regext_index 
+0x743d 033173 force 0x38 ,aes_ctrl 
+0x743e 033174 force 0x8 ,aes_ctrl 
+0x743f 033175 branch wait_aes 
+:      033178 function_c1:
+0x7440 033179 bpatchx patch3c_3 ,mem_patch3c 
+0x7441 033180 fetch 6 ,mem_le_lap 
+0x7442 033181 fetcht 6 ,mem_le_plap 
+0x7443 033182 branch function_c1_master ,master 
+0x7444 033183 fetch 6 ,mem_le_plap 
+0x7445 033184 fetcht 6 ,mem_le_lap 
+:      033185 function_c1_master:
+0x7446 033186 force regidx_xor ,regext_index 
+0x7447 033187 copy temp ,regext 
+0x7448 033188 increase 1 ,regext_index 
+0x7449 033189 rshift32 temp ,regext 
+0x744a 033190 lshift16 pdata ,pdata 
+0x744b 033191 ior regext ,regext 
+0x744c 033192 increase 1 ,regext_index 
+0x744d 033193 rshift32 pdata ,regext 
+0x744e 033194 increase 1 ,regext_index 
+0x744f 033195 force 0 ,regext 
+0x7450 033196 force 0 ,pdata 
+0x7451 033197 fetch 1 ,mem_le_conn_peer_addr_type 
+0x7452 033198 fetcht 1 ,mem_le_adv_own_addr_type 
+0x7453 033199 nbranch function_c1_irat ,master 
+0x7454 033201 fetch 1 ,mem_le_conn_own_addr_type 
+0x7455 033202 fetcht 1 ,mem_le_conn_peer_addr_type 
+:      033203 function_c1_irat:
+0x7456 033204 store 1 ,mem_le_iat 
+0x7457 033205 storet 1 ,mem_le_rat 
+0x7458 033206 force regidx_data ,regext_index 
+0x7459 033207 arg mem_le_iat ,regb 
+0x745a 033208 force 4 ,loopcnt 
+:      033209 function_c1_loop1:
+0x745b 033210 ifetch 4 ,rega 
+0x745c 033211 ifetcht 4 ,regb 
+0x745d 033212 ixor temp ,regext 
+0x745e 033213 increase 1 ,regext_index 
+0x745f 033214 increase 4 ,rega 
+0x7460 033215 increase 4 ,regb 
+0x7461 033216 loop function_c1_loop1 
+0x7462 033217 call aes_clear 
+0x7463 033218 increase -4 ,regext_index 
+0x7464 033219 fetch 4 ,mem_le_tk 
+0x7465 033220 copy pdata ,regext 
+0x7466 033221 increase 4 ,regext_index 
+0x7467 033222 force 0x38 ,aes_ctrl 
+0x7468 033223 force 0xc ,aes_ctrl 
+0x7469 033224 call wait_aes 
+0x746a 033226 call aes_clear_data 
+0x746b 033227 force 0x3a ,aes_ctrl 
+0x746c 033228 force 0x8 ,aes_ctrl 
+0x746d 033229 branch wait_aes 
+:      033231 padding_data:
+0x746e 033232 compare 0 ,loopcnt ,3 
+0x746f 033233 rtn true 
+0x7470 033234 deposit contr 
+0x7471 033235 iadd loopcnt ,contw 
+0x7472 033236 force 0 ,pdata 
+:      033237 padding_loop:
+0x7473 033238 istore 1 ,contw 
+0x7474 033239 increase 1 ,loopcnt 
+0x7475 033240 compare 0 ,loopcnt ,3 
+0x7476 033241 rtn true 
+0x7477 033242 branch padding_loop 
+:      033244 aes_load_data:
+0x7478 033245 force regidx_data ,regext_index 
+:      033246 load_data_loop:
+0x7479 033247 deposit loopcnt 
+0x747a 033248 branch load_data_padding ,blank 
+0x747b 033249 ifetch 4 ,contr 
+0x747c 033250 increase -4 ,loopcnt 
+:      033251 load_data_padding:
+0x747d 033252 iforce regext 
+0x747e 033253 increase 1 ,regext_index 
+0x747f 033254 compare regidx_key ,regext_index ,0xf 
+0x7480 033255 rtn true 
+0x7481 033256 branch load_data_loop 
+:      033258 aes_load_xor:
+0x7482 033259 force regidx_xor ,regext_index 
+0x7483 033260 branch load_regext 
+:      033261 load_key:
+0x7484 033262 force regidx_key ,regext_index 
+0x7485 033263 branch load_regext 
+:      033264 load_data128:
+0x7486 033265 force regidx_data ,regext_index 
+:      033266 load_regext:
+0x7487 033267 force 4 ,loopcnt 
+:      033268 load_regext_loop:
+0x7488 033269 ifetch 4 ,contr 
+0x7489 033270 iforce regext 
+0x748a 033271 increase 1 ,regext_index 
+0x748b 033272 loop load_regext_loop 
+0x748c 033273 rtn 
+:      033275 load_sk:
+0x748d 033276 arg mem_le_sk ,contr 
+0x748e 033277 branch load_key 
+:      033279 clear_hidata:
+0x748f 033280 force 4 ,loopcnt 
+0x7490 033281 branch clear_data_rest 
+:      033283 aes_clear_data:
+0x7491 033284 force regidx_data ,regext_index 
+:      033285 aes_clear:
+0x7492 033286 force 4 ,loopcnt 
+:      033287 clear_loop:
+0x7493 033288 force 0 ,regext 
+:      033289 clear_data_rest:
+0x7494 033290 increase 1 ,regext_index 
+0x7495 033291 loop clear_loop 
+0x7496 033292 rtn 
+:      033294 store_aes_result:
+0x7497 033295 force regidx_result ,regext_index 
+0x7498 033296 force 4 ,loopcnt 
+:      033297 send_aes_result_loop:
+0x7499 033298 deposit regext 
+0x749a 033299 istore 4 ,contw 
+0x749b 033300 increase 1 ,regext_index 
+0x749c 033301 loop send_aes_result_loop 
+0x749d 033302 rtn 
+:      033304 store_enc_data:
+0x749e 033305 force regidx_result ,regext_index 
+0x749f 033306 copy regc ,contw 
+0x74a0 033307 add regb ,1 ,loopcnt 
+0x74a1 033308 sub loopcnt ,15 ,null 
+0x74a2 033309 branch store_enc_loop ,positive 
+0x74a3 033310 force 16 ,loopcnt 
+:      033311 store_enc_loop:
+0x74a4 033312 deposit regext 
+0x74a5 033313 sub loopcnt ,3 ,null 
+0x74a6 033314 branch store_enc_byte ,positive 
+0x74a7 033315 istore 4 ,contw 
+0x74a8 033316 increase -4 ,loopcnt 
+0x74a9 033317 rtn zero 
+0x74aa 033318 increase 1 ,regext_index 
+0x74ab 033319 branch store_enc_loop 
+:      033320 store_enc_byte:
+0x74ac 033321 istore 1 ,contw 
+0x74ad 033322 rshift8 pdata ,pdata 
+0x74ae 033323 loop store_enc_byte 
+0x74af 033324 rtn 
+:      033327 compare_res:
+0x74b0 033328 force regidx_result ,regext_index 
+0x74b1 033329 force 4 ,loopcnt 
+:      033330 compare_res_loop:
+0x74b2 033331 ifetch 4 ,contr 
+0x74b3 033332 isub regext ,null 
+0x74b4 033333 nrtn zero 
+0x74b5 033334 increase 1 ,regext_index 
+0x74b6 033335 loop compare_res_loop 
+0x74b7 033336 force 0 ,null 
+0x74b8 033337 rtn 
+:      033339 enable_authrom:
+0x74b9 033340 hfetch 1 ,core_clkoff 
+0x74ba 033341 set0 clock_off_auth_rom ,pdata 
+0x74bb 033342 hstore 1 ,core_clkoff 
+0x74bc 033343 rtn 
+:      033345 disable_authrom:
+0x74bd 033346 hfetch 1 ,core_clkoff 
+0x74be 033347 set1 clock_off_auth_rom ,pdata 
+0x74bf 033348 hstore 1 ,core_clkoff 
+0x74c0 033349 rtn 
+:      033351 init_memp:
+0x74c1 033352 arg mem_p ,contw 
+0x74c2 033353 setsect 0 ,0x3ffff 
+0x74c3 033354 setsect 1 ,0x3ffff 
+0x74c4 033355 setsect 2 ,0x3ffff 
+0x74c5 033356 setsect 3 ,0x3fbff 
+0x74c6 033357 istore 9 ,contw 
+0x74c7 033358 setsect 0 ,0x3ffff 
+0x74c8 033359 setsect 1 ,0x3ffff 
+0x74c9 033360 setsect 2 ,0x3ffff 
+0x74ca 033361 setsect 3 ,0x3ffff 
+0x74cb 033362 istore 9 ,contw 
+0x74cc 033363 setsect 0 ,0x3ffff 
+0x74cd 033364 setsect 1 ,0x3ffff 
+0x74ce 033365 setsect 2 ,0x3cfff 
+0x74cf 033366 setsect 3 ,0x3ffff 
+0x74d0 033367 istore 9 ,contw 
+0x74d1 033368 setsect 0 ,0x3ffff 
+0x74d2 033369 setsect 1 ,0x3ffff 
+0x74d3 033370 setsect 2 ,0x3ffef 
+0x74d4 033371 setsect 3 ,0x3ffff 
+0x74d5 033372 istore 9 ,contw 
+0x74d6 033373 setsect 0 ,0x3ffff 
+0x74d7 033374 setsect 1 ,0x3ffff 
+0x74d8 033375 setsect 2 ,0x3ffff 
+0x74d9 033376 setsect 3 ,0x3ffff 
+0x74da 033377 istore 9 ,contw 
+0x74db 033378 setsect 0 ,0x3ffff 
+0x74dc 033379 setsect 1 ,0x26c7f 
+0x74dd 033380 setsect 2 ,0x146b 
+0x74de 033381 setsect 3 ,0x37bb3 
+0x74df 033382 istore 9 ,contw 
+0x74e0 033383 setsect 0 ,0x1feb8 
+0x74e1 033384 setsect 1 ,0x10c12 
+0x74e2 033385 setsect 2 ,0x2b722 
+0x74e3 033386 setsect 3 ,0x29fa6 
+0x74e4 033387 istore 9 ,contw 
+0x74e5 033388 setsect 0 ,0xe70f 
+0x74e6 033389 setsect 1 ,0x16720 
+0x74e7 033390 setsect 2 ,0x519e 
+0x74e8 033391 setsect 3 ,0x19084 
+0x74e9 033392 istore 9 ,contw 
+0x74ea 033393 setsect 0 ,0x31012 
+0x74eb 033394 setsect 1 ,0x360bf 
+0x74ec 033395 setsect 2 ,0x3f0af 
+0x74ed 033396 setsect 3 ,0x3d3 
+0x74ee 033397 istore 9 ,contw 
+0x74ef 033398 setsect 0 ,0x3a188 
+0x74f0 033399 setsect 1 ,0x3ad0 
+0x74f1 033400 setsect 2 ,0x3cbf2 
+0x74f2 033401 setsect 3 ,0x243d9 
+0x74f3 033402 istore 9 ,contw 
+0x74f4 033403 setsect 0 ,0x2b030 
+0x74f5 033404 setsect 1 ,0x36a03 
+0x74f6 033405 setsect 2 ,0x11188 
+0x74f7 033406 setsect 3 ,0x1e520 
+0x74f8 033407 istore 9 ,contw 
+0x74f9 033408 setsect 0 ,0x3a11e 
+0x74fa 033409 setsect 1 ,0xfe5d 
+0x74fb 033410 setsect 2 ,0xdd57 
+0x74fc 033411 setsect 3 ,0x1ac93 
+0x74fd 033412 istore 9 ,contw 
+0x74fe 033413 setsect 0 ,0x11ed 
+0x74ff 033414 setsect 1 ,0x218c4 
+0x7500 033415 setsect 2 ,0x8da7 
+0x7501 033416 setsect 3 ,0x257ff 
+0x7502 033417 istore 9 ,contw 
+0x7503 033418 setsect 0 ,0x3192b 
+0x7504 033419 setsect 1 ,0x34641 
+0x7505 033420 setsect 2 ,0x1be0c 
+0x7506 033421 setsect 3 ,0x366ad 
+0x7507 033422 istore 9 ,contw 
+0x7508 033423 setsect 0 ,0x1f83 
+0x7509 033424 setsect 1 ,0x15a23 
+0x750a 033425 setsect 2 ,0x3f9b0 
+0x750b 033426 setsect 3 ,0x3949 
+0x750c 033427 istore 9 ,contw 
+0x750d 033428 setsect 0 ,0x13a51 
+0x750e 033429 setsect 1 ,0x153fd 
+0x750f 033430 setsect 2 ,0x3372a 
+0x7510 033431 setsect 3 ,0xf1bb 
+0x7511 033432 istore 9 ,contw 
+0x7512 033433 setsect 0 ,0x3ae85 
+0x7513 033434 setsect 1 ,0x1eed9 
+0x7514 033435 setsect 2 ,0x9e66 
+0x7515 033436 setsect 3 ,0x1a8 
+0x7516 033437 istore 8 ,contw 
+0x7517 033438 rtn 
+:      033442 init_memp_256:
+0x7518 033443 arg mem_p_256 ,contw 
+0x7519 033444 setsect 0 ,0x3ffff 
+0x751a 033445 setsect 1 ,0x3ffff 
+0x751b 033446 setsect 2 ,0x3ffff 
+0x751c 033447 setsect 3 ,0x3ffff 
+0x751d 033448 istore 9 ,contw 
+0x751e 033449 setsect 0 ,0x3ffff 
+0x751f 033450 setsect 1 ,0x3f 
+0x7520 033451 setsect 2 ,0x0 
+0x7521 033452 setsect 3 ,0x0 
+0x7522 033453 istore 9 ,contw 
+0x7523 033454 setsect 0 ,0x0 
+0x7524 033455 setsect 1 ,0x0 
+0x7525 033456 setsect 2 ,0x1000 
+0x7526 033457 setsect 3 ,0x0 
+0x7527 033458 istore 9 ,contw 
+0x7528 033459 setsect 0 ,0x3ff00 
+0x7529 033460 setsect 1 ,0x3ffff 
+0x752a 033461 setsect 2 ,0x3ffcf 
+0x752b 033462 setsect 3 ,0x3ffff 
+0x752c 033463 istore 9 ,contw 
+0x752d 033464 setsect 0 ,0x3ffff 
+0x752e 033465 setsect 1 ,0x3ffff 
+0x752f 033466 setsect 2 ,0x3ffff 
+0x7530 033467 setsect 3 ,0x3ff 
+0x7531 033468 istore 9 ,contw 
+0x7532 033469 setsect 0 ,0x0 
+0x7533 033470 setsect 1 ,0x0 
+0x7534 033471 setsect 2 ,0x0 
+0x7535 033472 setsect 3 ,0x0 
+0x7536 033473 istore 9 ,contw 
+0x7537 033474 setsect 0 ,0x10000 
+0x7538 033475 setsect 1 ,0x0 
+0x7539 033476 setsect 2 ,0x3f000 
+0x753a 033477 setsect 3 ,0x3ffff 
+0x753b 033478 istore 9 ,contw 
+0x753c 033479 setsect 0 ,0x296ff 
+0x753d 033480 setsect 1 ,0x22630 
+0x753e 033481 setsect 2 ,0x3945d 
+0x753f 033482 setsect 3 ,0x3d284 
+0x7540 033483 istore 9 ,contw 
+0x7541 033484 setsect 0 ,0x333a0 
+0x7542 033485 setsect 1 ,0x4b7a 
+0x7543 033486 setsect 2 ,0x37d8 
+0x7544 033487 setsect 3 ,0x3c9dc 
+0x7545 033488 istore 9 ,contw 
+0x7546 033489 setsect 0 ,0x3a440 
+0x7547 033490 setsect 1 ,0x1b958 
+0x7548 033491 setsect 2 ,0x38bce 
+0x7549 033492 setsect 3 ,0x1091f 
+0x754a 033493 istore 9 ,contw 
+0x754b 033494 setsect 0 ,0x2e12c 
+0x754c 033495 setsect 1 ,0x1f47c 
+0x754d 033496 setsect 2 ,0x356b1 
+0x754e 033497 setsect 3 ,0x2fd47 
+0x754f 033498 istore 9 ,contw 
+0x7550 033499 setsect 0 ,0x6837 
+0x7551 033500 setsect 1 ,0x2ed90 
+0x7552 033501 setsect 2 ,0x1ecec 
+0x7553 033502 setsect 3 ,0x1acc5 
+0x7554 033503 istore 9 ,contw 
+0x7555 033504 setsect 0 ,0x23357 
+0x7556 033505 setsect 1 ,0x18af3 
+0x7557 033506 setsect 2 ,0xf9e1 
+0x7558 033507 setsect 3 ,0x129f0 
+0x7559 033508 istore 9 ,contw 
+0x755a 033509 setsect 0 ,0x2e7eb 
+0x755b 033510 setsect 1 ,0x3e6e3 
+0x755c 033511 setsect 2 ,0x3e1a7 
+0x755d 033512 setsect 3 ,0x10b8b 
+0x755e 033513 istore 9 ,contw 
+0x755f 033514 setsect 0 ,0x24fe3 
+0x7560 033515 setsect 1 ,0x20ef 
+0x7561 033516 setsect 2 ,0x1b5a6 
+0x7562 033517 setsect 3 ,0xdc2f 
+0x7563 033518 istore 9 ,contw 
+0x7564 033519 setsect 0 ,0x13860 
+0x7565 033520 setsect 1 ,0x2bd69 
+0x7566 033521 setsect 2 ,0x391a 
+0x7567 033522 setsect 3 ,0x1b222 
+0x7568 033523 istore 9 ,contw 
+0x7569 033524 rtn 
+:      033527 publickey_init:
+0x756a 033528 fetch 1 ,mem_ssp_enable 
+0x756b 033529 nbranch sp_initialize ,blank 
+0x756c 033530 branch sp_initialize_256 
+:      033532 sp_calc_sequence_256_check:
+0x756d 033533 bpatchx patch3c_4 ,mem_patch3c 
+0x756e 033534 fetch 1 ,mem_ssp_enable 
+0x756f 033535 rtn blank 
+0x7570 033536 fetch 1 ,mem_sp_local_key_invalid 
+0x7571 033537 rtnne sp_key_valid 
+0x7572 033538 fetch 1 ,mem_le_secure_connect_enable 
+0x7573 033539 rtn blank 
+0x7574 033540 fetch 1 ,mem_le_sc_local_key_invalid 
+0x7575 033541 rtneq sp_key_valid_256 
+0x7576 033542 fetch 2 ,mem_ui_state_map 
+0x7577 033543 bbit1 ui_state_bt_connected ,stop_publickey_calc_256 
+0x7578 033544 fetch 1 ,mem_le_sc_calc 
+0x7579 033545 beq sp_calc_standby ,sp_initialize_256 
+0x757a 033546 rtn 
+:      033547 stop_publickey_calc_256:
+0x757b 033548 jam sp_calc_standby ,mem_le_sc_calc 
+0x757c 033549 rtn 
+:      033552 sp_initialize:
+0x757d 033553 bpatchx patch3c_5 ,mem_patch3c 
+0x757e 033554 fetch 1 ,mem_ssp_enable 
+0x757f 033555 branch ssp_disable ,blank 
+0x7580 033556 call ssp_enable 
+0x7581 033557 call sp_clear_flags 
+0x7582 033558 branch sp_pubkey_calc 
+:      033560 sp_clear_flags:
+0x7583 033561 setarg 0 
+0x7584 033562 store 8 ,mem_sp_state_start 
+0x7585 033563 store 4 ,mem_sp_flag_start 
+0x7586 033564 store 7 ,mem_sp_iocap_remote 
+0x7587 033565 rtn 
+:      033567 sp_generate_local_key:
+0x7588 033568 jam sp_flag_commit ,mem_sp_flag 
+0x7589 033569 branch sp_generate_local_key0 
+:      033570 sp_master_generate_local_key:
+0x758a 033571 fetch 1 ,mem_sp_local_key_invalid 
+0x758b 033572 beq sp_key_valid ,sp_dhkey_calc 
+0x758c 033573 branch assert 
+:      033574 sp_generate_local_key0:
+0x758d 033575 fetch 1 ,mem_sp_local_key_invalid 
+0x758e 033576 beq sp_key_valid ,sp_start_send_pubkey 
+0x758f 033577 branch sp_pubkey_calc 
+:      033579 sp_start_send_pubkey:
+0x7590 033580 call sp_dhkey_calc 
+0x7591 033581 fetch 1 ,mem_master_sp_state 
+0x7592 033582 nrtn blank 
+0x7593 033583 jam sp_stat_key_send ,mem_sp_state 
+0x7594 033584 rtn 
+:      033587 sp_calc_check_publickey_256:
+0x7595 033588 call sp_calc_b256 
+0x7596 033589 arg mem_le_pubkey_remote_y_256 ,rega 
+0x7597 033590 arg mem_t7_256 ,contw 
+0x7598 033591 call bn_sqrmod_256 
+0x7599 033592 arg mem_le_pubkey_remote_x_256 ,rega 
+0x759a 033593 arg mem_t2_256 ,contw 
+0x759b 033594 call bn_sqrmod_256 
+0x759c 033595 arg mem_t2_256 ,rega 
+0x759d 033596 arg mem_le_pubkey_remote_x_256 ,regb 
+0x759e 033597 arg mem_t2_256 ,contw 
+0x759f 033598 call bn_mulmod_256 
+0x75a0 033599 arg mem_a_256 ,rega 
+0x75a1 033600 arg mem_le_pubkey_remote_x_256 ,regb 
+0x75a2 033601 arg mem_t3_256 ,contw 
+0x75a3 033602 call bn_mulmod_256 
+0x75a4 033603 arg mem_t3_256 ,rega 
+0x75a5 033604 arg mem_t2_256 ,regb 
+0x75a6 033605 arg mem_t2_256 ,contw 
+0x75a7 033606 call bn_addmod_256 
+0x75a8 033607 arg mem_t0_256 ,rega 
+0x75a9 033608 arg mem_t2_256 ,regb 
+0x75aa 033609 arg mem_t0_256 ,contw 
+0x75ab 033610 call bn_addmod_256 
+0x75ac 033611 arg 32 ,loopcnt 
+0x75ad 033612 arg mem_t7_256 ,rega 
+0x75ae 033613 arg mem_t0_256 ,regb 
+0x75af 033614 branch string_compare 
+:      033616 sp_calc_b256:
+0x75b0 033617 arg mem_gy_256 ,rega 
+0x75b1 033618 arg mem_t0_256 ,contw 
+0x75b2 033619 call bn_sqrmod_256 
+0x75b3 033620 arg mem_gx_256 ,rega 
+0x75b4 033621 arg mem_t2_256 ,contw 
+0x75b5 033622 call bn_sqrmod_256 
+0x75b6 033623 arg mem_t2_256 ,rega 
+0x75b7 033624 arg mem_gx_256 ,regb 
+0x75b8 033625 arg mem_t2_256 ,contw 
+0x75b9 033626 call bn_mulmod_256 
+0x75ba 033627 arg mem_a_256 ,rega 
+0x75bb 033628 arg mem_gx_256 ,regb 
+0x75bc 033629 arg mem_t3_256 ,contw 
+0x75bd 033630 call bn_mulmod_256 
+0x75be 033631 arg mem_t3_256 ,rega 
+0x75bf 033632 arg mem_t2_256 ,regb 
+0x75c0 033633 arg mem_t2_256 ,contw 
+0x75c1 033634 call bn_addmod_256 
+0x75c2 033635 arg mem_t0_256 ,rega 
+0x75c3 033636 arg mem_t2_256 ,regb 
+0x75c4 033637 arg mem_t0_256 ,contw 
+0x75c5 033638 branch bn_submod_256 
+:      033640 sp_calc_check_publickey:
+0x75c6 033641 call sp_calc_b 
+0x75c7 033642 arg mem_sp_pubkey_remote_y ,rega 
+0x75c8 033643 arg mem_t7_256 ,contw 
+0x75c9 033644 call bn_sqrmod 
+0x75ca 033645 arg mem_sp_pubkey_remote_x ,rega 
+0x75cb 033646 arg mem_t2_256 ,contw 
+0x75cc 033647 call bn_sqrmod 
+0x75cd 033648 arg mem_t2_256 ,rega 
+0x75ce 033649 arg mem_sp_pubkey_remote_x ,regb 
+0x75cf 033650 arg mem_t2_256 ,contw 
+0x75d0 033651 call bn_mulmod 
+0x75d1 033652 arg mem_a ,rega 
+0x75d2 033653 arg mem_sp_pubkey_remote_x ,regb 
+0x75d3 033654 arg mem_t3_256 ,contw 
+0x75d4 033655 call bn_mulmod 
+0x75d5 033656 arg mem_t3_256 ,rega 
+0x75d6 033657 arg mem_t2_256 ,regb 
+0x75d7 033658 arg mem_t2_256 ,contw 
+0x75d8 033659 call bn_addmod 
+0x75d9 033660 arg mem_t0_256 ,rega 
+0x75da 033661 arg mem_t2_256 ,regb 
+0x75db 033662 arg mem_t0_256 ,contw 
+0x75dc 033663 call bn_addmod 
+0x75dd 033664 arg 24 ,loopcnt 
+0x75de 033665 arg mem_t7_256 ,rega 
+0x75df 033666 arg mem_t0_256 ,regb 
+0x75e0 033667 branch string_compare 
+:      033669 sp_calc_b:
+0x75e1 033670 arg mem_gy ,rega 
+0x75e2 033671 arg mem_t0_256 ,contw 
+0x75e3 033672 call bn_sqrmod 
+0x75e4 033673 arg mem_gx ,rega 
+0x75e5 033674 arg mem_t2_256 ,contw 
+0x75e6 033675 call bn_sqrmod 
+0x75e7 033676 arg mem_t2_256 ,rega 
+0x75e8 033677 arg mem_gx ,regb 
+0x75e9 033678 arg mem_t2_256 ,contw 
+0x75ea 033679 call bn_mulmod 
+0x75eb 033680 arg mem_a ,rega 
+0x75ec 033681 arg mem_gx ,regb 
+0x75ed 033682 arg mem_t3_256 ,contw 
+0x75ee 033683 call bn_mulmod 
+0x75ef 033684 arg mem_t3_256 ,rega 
+0x75f0 033685 arg mem_t2_256 ,regb 
+0x75f1 033686 arg mem_t2_256 ,contw 
+0x75f2 033687 call bn_addmod 
+0x75f3 033688 arg mem_t0_256 ,rega 
+0x75f4 033689 arg mem_t2_256 ,regb 
+0x75f5 033690 arg mem_t0_256 ,contw 
+0x75f6 033691 branch bn_submod 
+:      033694 sp_calculate_commitment:
+0x75f7 033695 fetch 1 ,mem_sp_calc 
+0x75f8 033696 bne sp_calc_standby ,sp_calculate_commitment_wait_dhkey_calc 
+0x75f9 033697 call sp_local_random_key_generator 
+0x75fa 033698 arg mem_sp_prarm_stack ,contw 
+0x75fb 033699 setarg mem_sp_random_local_end 
+0x75fc 033700 istore 2 ,contw 
+0x75fd 033701 setarg mem_sp_pubkey_local_x_end 
+0x75fe 033702 istore 2 ,contw 
+0x75ff 033703 setarg mem_sp_pubkey_remote_x_end 
+0x7600 033704 istore 2 ,contw 
+0x7601 033705 branch sp_calculate_commitment0 
+:      033706 master_sp_calculate_commitment:
+0x7602 033707 arg mem_sp_prarm_stack ,contw 
+0x7603 033708 setarg mem_sp_random_remote_end 
+0x7604 033709 istore 2 ,contw 
+0x7605 033710 setarg mem_sp_pubkey_remote_x_end 
+0x7606 033711 istore 2 ,contw 
+0x7607 033712 setarg mem_sp_pubkey_local_x_end 
+0x7608 033713 istore 2 ,contw 
+:      033714 sp_calculate_commitment0:
+0x7609 033715 call function_f1 
+0x760a 033716 fetch 1 ,mem_master_sp_state 
+0x760b 033717 beq sp_stat_commit_calc ,master_sp_calculate_commitment0 
+0x760c 033718 jam sp_flag_commit ,mem_sp_flag 
+0x760d 033719 jam sp_stat_commit_send ,mem_sp_state 
+0x760e 033720 rtn 
+:      033721 master_sp_calculate_commitment0:
+0x760f 033722 jam sp_stat_commitment_compare ,mem_master_sp_state 
+0x7610 033723 call sp_master_generate_local_key 
+0x7611 033724 branch master_set_mem_master_sp_flag 
+:      033726 sp_local_random_key_generator:
+0x7612 033727 arg mem_sp_random_local ,contw 
+0x7613 033728 force 8 ,queue 
+0x7614 033729 branch random_generator 
+:      033731 sp_calculate_commitment_wait_dhkey_calc:
+0x7615 033732 jam sp_flag_commit ,mem_sp_flag 
+0x7616 033733 rtn 
+:      033735 sp_confirm_check:
+0x7617 033737 bpatchx patch3c_6 ,mem_patch3c 
+0x7618 033738 arg mem_addr_value ,contw 
+0x7619 033739 fetch 6 ,mem_lap 
+0x761a 033740 istore 6 ,contw 
+0x761b 033741 fetch 6 ,mem_plap 
+0x761c 033742 istore 6 ,contw 
+0x761d 033743 fetch 3 ,mem_sp_iocap_remote 
+0x761e 033744 istore 3 ,contw 
+0x761f 033746 call function_f3a 
+0x7620 033748 arg mem_sp_calc_result_high ,rega 
+0x7621 033749 arg mem_sp_check_result ,regb 
+0x7622 033750 force 4 ,queue 
+0x7623 033751 call compare4 
+0x7624 033752 nbranch sp_confirm_check_failed ,true 
+0x7625 033754 call sp_confirm_check_success 
+0x7626 033755 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x7627 033756 branch tid_set_reply 
+:      033758 sp_confirm_check_success:
+0x7628 033759 fetch 1 ,mem_master_sp_state 
+0x7629 033760 beq sp_stat_confirm_check ,sp_confirm_check_success_master 
+0x762a 033761 jam sp_stat_confirm_calc ,mem_sp_state 
+0x762b 033762 jam sp_flag_commit ,mem_sp_flag 
+0x762c 033763 jam lmp_accepted ,mem_lmo_opcode2 
+0x762d 033764 rtn 
+:      033765 sp_confirm_check_success_master:
+0x762e 033766 jam lmp_accepted ,mem_lmo_opcode2 
+0x762f 033767 jam sp_state_end ,mem_master_sp_state 
+0x7630 033768 branch master_set_mem_master_sp_flag 
+:      033771 sp_confirm_check_failed:
+0x7631 033772 fetch 1 ,mem_master_sp_state 
+0x7632 033773 beq sp_stat_confirm_check ,sp_confirm_check_failed_master 
+0x7633 033774 jam sp_stat_null ,mem_sp_state 
+0x7634 033775 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x7635 033777 jam authentication_failure_error ,mem_lmo_reason2 
+0x7636 033778 rtn 
+:      033779 sp_confirm_check_failed_master:
+0x7637 033780 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x7638 033781 jam sp_stat_null ,mem_master_sp_state 
+0x7639 033782 rtn 
+:      033784 sp_confirm_calc:
+0x763a 033785 fetch 1 ,mem_sp_dh_ready 
+0x763b 033786 beq sp_flag_commit ,sp_confirm_calc_ready 
+0x763c 033787 jam sp_stat_confirm_calc ,mem_master_sp_state 
+0x763d 033788 branch master_set_mem_master_sp_flag 
+:      033789 sp_confirm_calc_ready:
+0x763e 033790 arg mem_addr_value ,contw 
+0x763f 033791 fetch 6 ,mem_plap 
+0x7640 033792 istore 6 ,contw 
+0x7641 033793 fetch 6 ,mem_lap 
+0x7642 033794 istore 6 ,contw 
+0x7643 033795 fetch 3 ,mem_sp_iocap_local 
+0x7644 033796 istore 3 ,contw 
+0x7645 033798 call function_f3b 
+0x7646 033799 fetch 1 ,mem_master_sp_state 
+0x7647 033800 beq sp_stat_confirm_calc ,sp_confirm_calc_master 
+0x7648 033801 jam sp_stat_confirm_send ,mem_sp_state 
+0x7649 033802 jam sp_flag_commit ,mem_sp_flag 
+0x764a 033803 rtn 
+:      033804 sp_confirm_calc_master:
+0x764b 033805 jam sp_stat_confirm_send ,mem_master_sp_state 
+0x764c 033806 jam sp_flag_commit ,mem_master_sp_flag 
+0x764d 033807 rtn 
+:      033809 sp_master_key_prarm_push:
+0x764e 033810 arg mem_sp_prarm_stack ,contw 
+0x764f 033811 fetch 6 ,mem_plap 
+0x7650 033812 istore 6 ,contw 
+0x7651 033813 fetch 6 ,mem_lap 
+0x7652 033814 istore 6 ,contw 
+0x7653 033815 setarg mem_sp_random_local_end 
+0x7654 033816 istore 2 ,contw 
+0x7655 033817 setarg mem_sp_random_remote_end 
+0x7656 033818 istore 2 ,contw 
+0x7657 033819 branch sp_link_key_calc 
+:      033820 sp_link_key_prarm_push:
+0x7658 033821 jam sp_stat_done ,mem_sp_state 
+0x7659 033822 arg mem_sp_prarm_stack ,contw 
+0x765a 033823 fetch 6 ,mem_lap 
+0x765b 033824 istore 6 ,contw 
+0x765c 033825 fetch 6 ,mem_plap 
+0x765d 033826 istore 6 ,contw 
+0x765e 033827 setarg mem_sp_random_remote_end 
+0x765f 033828 istore 2 ,contw 
+0x7660 033829 setarg mem_sp_random_local_end 
+0x7661 033830 istore 2 ,contw 
+:      033831 sp_link_key_calc:
+0x7662 033833 arg mem_addr_value ,contw 
+0x7663 033834 fetch 6 ,mem_sp_prarm_stack 
+0x7664 033835 istore 6 ,contw 
+0x7665 033836 fetch 6 ,mem_sp_prarm_stack + 6 
+0x7666 033837 istore 6 ,contw 
+0x7667 033839 call function_f2 
+0x7668 033842 jam 1 ,mem_link_key_exists 
+0x7669 033843 arg mem_link_key ,contw 
+0x766a 033844 arg mem_sp_calc_result_high ,contr 
+0x766b 033845 call memcpy16 
+0x766c 033846 branch generate_linkkey_continue 
+:      033849 sp_pubkey_calc:
+0x766d 033850 bpatchx patch3c_7 ,mem_patch3c 
+0x766e 033851 fetch 1 ,mem_sp_local_key_invalid 
+0x766f 033852 rtnne sp_key_invalid 
+0x7670 033853 fetch 1 ,mem_sp_calc 
+0x7671 033854 rtnne sp_calc_standby 
+0x7672 033855 arg mem_sp_private_key ,contw 
+0x7673 033856 force 11 ,queue 
+0x7674 033857 call random_generator 
+0x7675 033858 random pdata 
+0x7676 033859 rshift pdata ,pdata 
+0x7677 033860 istore 2 ,contw 
+0x7678 033862 arg mem_k ,contw 
+0x7679 033863 arg mem_sp_private_key ,contr 
+0x767a 033864 call memcpy24 
+0x767b 033866 arg mem_ax ,contw 
+0x767c 033867 arg mem_gx ,contr 
+0x767d 033868 call memcpy48 
+0x767e 033870 arg mem_az ,contw 
+0x767f 033871 call bn_zero 
+0x7680 033872 jam 1 ,mem_az 
+0x7681 033874 call eckp_calc_init 
+0x7682 033875 jam sp_calc_pubkey ,mem_sp_calc 
+0x7683 033876 rtn 
+:      033878 sp_pubkey_generated:
+0x7684 033879 arg mem_sp_pubkey_local ,contw 
+0x7685 033880 arg mem_bx ,contr 
+0x7686 033881 call memcpy48 
+0x7687 033882 jam sp_key_valid ,mem_sp_local_key_invalid 
+0x7688 033883 jam sp_calc_standby ,mem_sp_calc 
+0x7689 033884 rtn 
+:      033886 sp_dhkey_calc:
+0x768a 033887 bpatchx patch3d_0 ,mem_patch3d 
+0x768b 033888 fetch 1 ,mem_sp_dhkey_invalid 
+0x768c 033889 rtnne sp_key_invalid 
+0x768d 033890 fetch 1 ,mem_sp_calc 
+0x768e 033891 rtnne sp_calc_standby 
+0x768f 033893 arg mem_k ,contw 
+0x7690 033894 arg mem_sp_private_key ,contr 
+0x7691 033895 call memcpy24 
+0x7692 033897 arg mem_ax ,contw 
+0x7693 033898 arg mem_sp_pubkey_remote ,contr 
+0x7694 033899 call memcpy48 
+0x7695 033901 arg mem_az ,contw 
+0x7696 033902 call bn_zero 
+0x7697 033903 jam 1 ,mem_az 
+0x7698 033905 call eckp_calc_init 
+0x7699 033906 jam sp_calc_dhkey ,mem_sp_calc 
+0x769a 033907 rtn 
+:      033909 sp_dhkey_generated:
+0x769b 033910 jam sp_flag_commit ,mem_sp_dh_ready 
+0x769c 033911 arg mem_sp_dhkey ,contw 
+0x769d 033912 arg mem_bx ,contr 
+0x769e 033913 call memcpy24 
+0x769f 033914 jam sp_key_valid ,mem_sp_dhkey_invalid 
+0x76a0 033915 jam sp_calc_standby ,mem_sp_calc 
+0x76a1 033916 rtn 
+:      033918 random_generator:
+0x76a2 033919 increase -1 ,queue 
+0x76a3 033920 nrtn positive 
+0x76a4 033921 random pdata 
+0x76a5 033922 istore 2 ,contw 
+0x76a6 033923 branch random_generator 
+:      033924 compare4:
+0x76a7 033925 increase -1 ,queue 
+0x76a8 033926 nbranch compare4_success ,positive 
+0x76a9 033927 ifetch 4 ,rega 
+0x76aa 033928 copy pdata ,temp 
+0x76ab 033929 ifetch 4 ,regb 
+0x76ac 033930 iflip temp ,pdata 
+0x76ad 033931 nbranch compare4_failed ,zero 
+0x76ae 033932 increase 4 ,rega 
+0x76af 033933 increase 4 ,regb 
+0x76b0 033934 branch compare4 
+:      033935 compare4_failed:
+0x76b1 033936 disable true 
+0x76b2 033937 rtn 
+:      033938 compare4_success:
+0x76b3 033939 enable true 
+0x76b4 033940 rtn 
+:      033947 simple_pairing_sequence:
+0x76b5 033948 bpatchx patch3d_1 ,mem_patch3d 
+0x76b6 033949 fetch 1 ,mem_sp_flag 
+0x76b7 033950 rtn blank 
+0x76b8 033951 call lmo_fifo_check 
+0x76b9 033952 nrtn blank 
+0x76ba 033953 jam sp_flag_standby ,mem_sp_flag 
+0x76bb 033954 fetch 1 ,mem_sp_state 
+0x76bc 033955 beq sp_stat_key_send ,sp_send_lmp_encapsulated_header 
+0x76bd 033956 beq sp_stat_commit_send ,sp_send_lmp_simple_pairing_comfirm 
+0x76be 033957 beq sp_stat_random_send ,sp_send_lmp_simple_pairing_number 
+0x76bf 033958 beq sp_stat_confirm_send ,sp_send_lmp_dhkey_check 
+0x76c0 033959 beq sp_stat_key_generate ,sp_generate_local_key 
+0x76c1 033960 beq sp_stat_commit_calc ,sp_calculate_commitment 
+0x76c2 033961 beq sp_stat_confirm_check ,sp_confirm_check 
+0x76c3 033962 beq sp_stat_confirm_calc ,sp_confirm_calc 
+0x76c4 033963 beq sp_stat_link_key_calc ,sp_link_key_prarm_push 
+0x76c5 033965 rtn 
+:      033967 master_simple_paring_sequence:
+0x76c6 033968 bpatchx patch3d_2 ,mem_patch3d 
+0x76c7 033969 fetch 1 ,mem_master_sp_flag 
+0x76c8 033970 rtn blank 
+0x76c9 033971 call lmo_fifo_check 
+0x76ca 033972 nrtn blank 
+0x76cb 033973 jam sp_flag_standby ,mem_master_sp_flag 
+0x76cc 033974 fetch 1 ,mem_master_sp_state 
+0x76cd 033975 beq sp_master_stat_start_skip ,sp_master_send_io_cap_get 
+0x76ce 033976 beq sp_master_stat_start_done ,sp_master_send_io_cap_send 
+0x76cf 033977 beq sp_stat_key_send ,sp_master_send_lmp_encapsulated_header 
+0x76d0 033978 beq sp_stat_commit_calc ,master_sp_calculate_commitment 
+0x76d1 033979 beq sp_stat_commitment_compare ,sp_master_commitment_compare 
+0x76d2 033980 beq sp_stat_random_send ,sp_master_send_lmp_simple_pairing_number 
+0x76d3 033981 beq sp_stat_confirm_calc ,sp_confirm_calc 
+0x76d4 033982 beq sp_stat_confirm_send ,master_sp_send_lmp_dhkey_check 
+0x76d5 033983 beq sp_stat_confirm_check ,sp_confirm_check 
+0x76d6 033984 beq sp_state_end ,master_sp_sm_end 
+0x76d7 033985 rtn 
+:      033987 master_set_mem_master_sp_flag:
+0x76d8 033988 jam sp_flag_commit ,mem_master_sp_flag 
+0x76d9 033989 rtn 
+:      033991 master_clear_mem_master_sp_flag:
+0x76da 033992 jam sp_flag_standby ,mem_master_sp_flag 
+0x76db 033993 rtn 
+:      033994 sp_calc_sequence:
+0x76dc 033995 bpatchx patch3d_3 ,mem_patch3d 
+0x76dd 033996 fetch 1 ,mem_ssp_enable 
+0x76de 033997 rtn blank 
+0x76df 033998 fetch 1 ,mem_sp_calc 
+0x76e0 033999 rtn blank 
+0x76e1 034000 increase 0x80 ,pdata 
+0x76e2 034001 store 1 ,mem_sp_calc 
+0x76e3 034002 rtnbit1 7 
+0x76e4 034003 fetch 1 ,mem_ec_loopc 
+0x76e5 034004 branch sp_calc_sequence_done ,blank 
+0x76e6 034005 branch eckp_calc 
+:      034007 sp_calc_sequence_done:
+0x76e7 034008 call ecunmapz 
+0x76e8 034009 fetch 1 ,mem_sp_calc 
+0x76e9 034010 beq sp_calc_pubkey ,sp_pubkey_generated 
+0x76ea 034011 beq sp_calc_dhkey ,sp_dhkey_generated 
+0x76eb 034012 rtn 
+:      034015 bn_testbit:
+0x76ec 034016 and pdata ,7 ,queue 
+0x76ed 034017 rshift3 pdata ,pdata 
+0x76ee 034018 iadd contr ,contr 
+0x76ef 034019 ifetch 1 ,contr 
+0x76f0 034020 qisolate0 pdata 
+0x76f1 034021 rtn 
+:      034024 ec_copy:
+0x76f2 034025 call memcpy24 
+0x76f3 034026 call memcpy24 
+0x76f4 034027 branch memcpy24 
+:      034030 bn_eq_zero:
+0x76f5 034031 ifetch 8 ,contr 
+0x76f6 034032 nrtn blank 
+0x76f7 034033 ifetch 8 ,contr 
+0x76f8 034034 nrtn blank 
+0x76f9 034035 ifetch 8 ,contr 
+0x76fa 034036 rtn 
+:      034041 bn_eq_0:
+0x76fb 034042 ifetch 4 ,rega 
+0x76fc 034043 iforce temp 
+0x76fd 034044 ifetch 4 ,regb 
+0x76fe 034045 isub temp ,null 
+0x76ff 034046 nrtn zero 
+0x7700 034047 increase 4 ,rega 
+0x7701 034048 increase 4 ,regb 
+0x7702 034049 loop bn_eq_0 
+0x7703 034050 rtn 
+:      034053 bn_bigeq:
+0x7704 034054 force 6 ,loopcnt 
+0x7705 034055 increase 20 ,rega 
+0x7706 034056 increase 20 ,regb 
+:      034057 bn_bigeq_0:
+0x7707 034058 ifetch 4 ,regb 
+0x7708 034059 iforce temp 
+0x7709 034060 ifetch 4 ,rega 
+0x770a 034061 isub temp ,pdata 
+0x770b 034062 nrtn positive 
+0x770c 034063 nrtn blank 
+0x770d 034064 increase -4 ,rega 
+0x770e 034065 increase -4 ,regb 
+0x770f 034066 loop bn_bigeq_0 
+0x7710 034067 rtn 
+:      034069 bn_add:
+0x7711 034070 force 6 ,loopcnt 
+0x7712 034071 force 0 ,regc 
+:      034072 bn_add_0:
+0x7713 034073 ifetch 4 ,rega 
+0x7714 034074 iforce temp 
+0x7715 034075 ifetch 4 ,regb 
+0x7716 034076 iadd temp ,pdata 
+0x7717 034077 iadd regc ,pdata 
+0x7718 034078 istore 4 ,contw 
+0x7719 034079 isolate1 32 ,pdata 
+0x771a 034080 setflag true ,0 ,regc 
+0x771b 034081 increase 4 ,rega 
+0x771c 034082 increase 4 ,regb 
+0x771d 034083 loop bn_add_0 
+0x771e 034084 rtn 
+:      034086 bn_sub:
+0x771f 034087 force 6 ,loopcnt 
+0x7720 034088 force 0 ,regc 
+:      034089 bn_sub_0:
+0x7721 034090 ifetch 4 ,regb 
+0x7722 034091 iforce temp 
+0x7723 034092 ifetch 4 ,rega 
+0x7724 034093 isub temp ,pdata 
+0x7725 034094 isub regc ,pdata 
+0x7726 034095 istore 4 ,contw 
+0x7727 034096 isolate1 32 ,pdata 
+0x7728 034097 setflag true ,0 ,regc 
+0x7729 034098 increase 4 ,rega 
+0x772a 034099 increase 4 ,regb 
+0x772b 034100 loop bn_sub_0 
+0x772c 034101 rtn 
+:      034103 bn_rshift6:
+0x772d 034104 force 6 ,loopcnt 
+0x772e 034105 increase 20 ,rega 
+:      034106 bn_rshift:
+0x772f 034107 force 0 ,regc 
+:      034108 bn_rshift_0:
+0x7730 034109 ifetch 4 ,rega 
+0x7731 034110 isolate1 0 ,pdata 
+0x7732 034111 setflag true ,1 ,regc 
+0x7733 034112 rshift pdata ,pdata 
+0x7734 034113 isolate1 0 ,regc 
+0x7735 034114 setflag true ,31 ,pdata 
+0x7736 034115 istore 4 ,rega 
+0x7737 034116 increase -4 ,rega 
+0x7738 034117 rshift regc ,regc 
+0x7739 034118 loop bn_rshift_0 
+0x773a 034119 rtn 
+:      034121 bn_lshift:
+0x773b 034122 force 6 ,loopcnt 
+0x773c 034123 force 0 ,regc 
+:      034124 bn_lshift_0:
+0x773d 034125 ifetch 4 ,rega 
+0x773e 034126 isolate1 31 ,pdata 
+0x773f 034127 setflag true ,1 ,regc 
+0x7740 034128 lshift pdata ,pdata 
+0x7741 034129 isolate1 0 ,regc 
+0x7742 034130 setflag true ,0 ,pdata 
+0x7743 034131 istore 4 ,rega 
+0x7744 034132 increase 4 ,rega 
+0x7745 034133 rshift regc ,regc 
+0x7746 034134 loop bn_lshift_0 
+0x7747 034135 rtn 
+:      034137 bn_lshiftmod:
+0x7748 034138 call bn_lshift 
+:      034139 bn_lshiftmod_ismod:
+0x7749 034140 isolate1 0 ,regc 
+0x774a 034141 branch bn_lshiftmod_0 ,true 
+0x774b 034142 arg mem_p ,regb 
+0x774c 034143 copy rega ,regc 
+0x774d 034144 increase -24 ,rega 
+0x774e 034145 call bn_bigeq 
+0x774f 034146 nrtn positive 
+0x7750 034147 copy regc ,rega 
+:      034148 bn_lshiftmod_0:
+0x7751 034149 increase -24 ,rega 
+0x7752 034150 arg mem_p ,regb 
+0x7753 034151 copy rega ,contw 
+0x7754 034152 branch bn_sub 
+:      034155 bn_addmod:
+0x7755 034156 call bn_add 
+0x7756 034157 copy contw ,rega 
+0x7757 034158 branch bn_lshiftmod_ismod 
+:      034160 bn_submod:
+0x7758 034161 call bn_sub 
+0x7759 034162 isolate0 0 ,regc 
+0x775a 034163 rtn true 
+0x775b 034164 arg mem_p ,regb 
+0x775c 034165 add contw ,-24 ,rega 
+0x775d 034166 copy rega ,contw 
+0x775e 034167 branch bn_add 
+:      034170 bn_p192mod:
+0x775f 034171 copy contw ,timeup 
+0x7760 034172 copy rega ,alarm 
+0x7761 034173 arg mem_tmp2 ,regb 
+0x7762 034174 copy regb ,contw 
+0x7763 034175 add rega ,24 ,contr 
+0x7764 034176 ifetch 8 ,contr 
+0x7765 034177 istore 8 ,contw 
+0x7766 034178 istore 8 ,contw 
+0x7767 034179 force 0 ,pdata 
+0x7768 034180 istore 8 ,contw 
+0x7769 034181 copy timeup ,contw 
+0x776a 034182 call bn_addmod 
+0x776b 034183 arg mem_tmp2 ,regb 
+0x776c 034184 copy regb ,contw 
+0x776d 034185 force 0 ,pdata 
+0x776e 034186 istore 8 ,contw 
+0x776f 034187 add alarm ,32 ,contr 
+0x7770 034188 ifetch 8 ,contr 
+0x7771 034189 istore 8 ,contw 
+0x7772 034190 istore 8 ,contw 
+0x7773 034191 copy timeup ,rega 
+0x7774 034192 copy rega ,contw 
+0x7775 034193 call bn_addmod 
+0x7776 034194 arg mem_tmp2 ,regb 
+0x7777 034195 copy regb ,contw 
+0x7778 034196 add alarm ,40 ,contr 
+0x7779 034197 ifetch 8 ,contr 
+0x777a 034198 istore 8 ,contw 
+0x777b 034199 istore 8 ,contw 
+0x777c 034200 istore 8 ,contw 
+0x777d 034201 copy timeup ,rega 
+0x777e 034202 copy rega ,contw 
+0x777f 034203 branch bn_addmod 
+:      034206 bn_load:
+0x7780 034207 force 6 ,loopcnt 
+:      034208 bn_load_0:
+0x7781 034209 ifetch 4 ,contr 
+0x7782 034210 iforce regext 
+0x7783 034211 increase 1 ,regext_index 
+0x7784 034212 loop bn_load_0 
+0x7785 034213 rtn 
+:      034217 bn_mulmod:
+0x7786 034218 copy contw ,timeup 
+0x7787 034219 arg mem_tmp1 ,contw 
+0x7788 034220 call bn_zero 
+0x7789 034221 arg mem_tmp1 ,contw 
+0x778a 034222 copy rega ,contr 
+0x778b 034223 force 0 ,regext_index 
+0x778c 034224 call bn_load 
+0x778d 034225 copy regb ,contr 
+0x778e 034226 call bn_load 
+0x778f 034227 force 0 ,regb 
+:      034228 bn_mulmod_1:
+0x7790 034229 force 0 ,temp 
+0x7791 034230 force 6 ,regc 
+:      034231 bn_mulmod_0:
+0x7792 034232 ifetch 4 ,contw 
+0x7793 034233 iforce rega 
+0x7794 034234 copy regb ,regext_index 
+0x7795 034235 deposit regext 
+0x7796 034236 copy regc ,regext_index 
+0x7797 034237 imul32 regext ,pdata 
+0x7798 034238 iadd rega ,pdata 
+0x7799 034239 iadd temp ,pdata 
+0x779a 034240 istore 4 ,contw 
+0x779b 034241 rshift32 pdata ,temp 
+0x779c 034242 increase 1 ,regc 
+0x779d 034243 compare 12 ,regc ,0xff 
+0x779e 034244 nbranch bn_mulmod_0 ,true 
+0x779f 034245 deposit temp 
+0x77a0 034246 istore 4 ,contw 
+0x77a1 034247 increase -24 ,contw 
+0x77a2 034248 increase 1 ,regb 
+0x77a3 034249 compare 6 ,regb ,0xff 
+0x77a4 034250 nbranch bn_mulmod_1 ,true 
+0x77a5 034251 arg mem_tmp1 ,rega 
+0x77a6 034252 copy timeup ,contw 
+0x77a7 034253 branch bn_p192mod 
+:      034256 bn_sqrmod:
+0x77a8 034257 copy rega ,regb 
+0x77a9 034258 branch bn_mulmod 
+:      034260 bn_rshifteven:
+0x77aa 034261 copy rega ,alarm 
+:      034262 bn_rshifteven_1:
+0x77ab 034263 copy alarm ,rega 
+0x77ac 034264 ifetch 1 ,rega 
+0x77ad 034265 isolate1 0 ,pdata 
+0x77ae 034266 rtn true 
+0x77af 034267 call bn_rshift6 
+0x77b0 034268 ifetch 1 ,regb 
+0x77b1 034269 isolate0 0 ,pdata 
+0x77b2 034270 branch bn_rshifteven_0 ,true 
+0x77b3 034271 arg mem_p ,rega 
+0x77b4 034272 copy regb ,contw 
+0x77b5 034273 call bn_add 
+0x77b6 034274 ifetch 1 ,regb 
+0x77b7 034275 iadd regc ,pdata 
+0x77b8 034276 istore 1 ,regb 
+0x77b9 034277 increase -24 ,regb 
+:      034278 bn_rshifteven_0:
+0x77ba 034279 add regb ,24 ,rega 
+0x77bb 034280 force 7 ,loopcnt 
+0x77bc 034281 call bn_rshift 
+0x77bd 034282 branch bn_rshifteven_1 
+:      034285 bn_invmod:
+0x77be 034286 copy contw ,timeup 
+0x77bf 034287 arg mem_tmp0 ,contw 
+0x77c0 034288 call bn_zero 
+0x77c1 034289 force 0 ,pdata 
+0x77c2 034290 store 4 ,mem_tmp5 
+0x77c3 034291 store 4 ,mem_t2 
+0x77c4 034292 jam 1 ,mem_tmp0 
+0x77c5 034293 arg mem_tmp1 ,contw 
+0x77c6 034294 call bn_zero 
+0x77c7 034295 arg mem_p ,contr 
+0x77c8 034296 arg mem_tmp2 ,contw 
+0x77c9 034297 call memcpy24 
+0x77ca 034298 copy rega ,contr 
+0x77cb 034299 arg mem_tmp3 ,contw 
+0x77cc 034300 call memcpy24 
+:      034301 bn_invmod_2:
+0x77cd 034302 arg mem_tmp3 ,contr 
+0x77ce 034303 call bn_eq_zero 
+0x77cf 034304 branch bn_invmod_0 ,blank 
+0x77d0 034305 arg mem_tmp3 ,rega 
+0x77d1 034306 arg mem_tmp0 ,regb 
+0x77d2 034307 call bn_rshifteven 
+0x77d3 034309 arg mem_tmp2 ,rega 
+0x77d4 034310 arg mem_tmp1 ,regb 
+0x77d5 034311 call bn_rshifteven 
+0x77d6 034312 arg mem_tmp3 ,rega 
+0x77d7 034313 arg mem_tmp2 ,regb 
+0x77d8 034314 call bn_bigeq 
+0x77d9 034315 branch bn_invmod_1 ,positive 
+0x77da 034316 arg mem_tmp2 ,rega 
+0x77db 034317 arg mem_tmp3 ,regb 
+0x77dc 034318 copy rega ,contw 
+0x77dd 034319 call bn_sub 
+0x77de 034320 arg mem_tmp0 ,rega 
+0x77df 034321 arg mem_tmp1 ,regb 
+0x77e0 034322 copy regb ,contw 
+0x77e1 034323 call bn_add 
+0x77e2 034324 ifetch 1 ,rega 
+0x77e3 034325 iadd regc ,regc 
+0x77e4 034326 ifetch 1 ,regb 
+0x77e5 034327 iadd regc ,pdata 
+0x77e6 034328 istore 1 ,regb 
+0x77e7 034329 branch bn_invmod_2 
+:      034330 bn_invmod_1:
+0x77e8 034331 arg mem_tmp3 ,rega 
+0x77e9 034332 arg mem_tmp2 ,regb 
+0x77ea 034333 copy rega ,contw 
+0x77eb 034334 call bn_sub 
+0x77ec 034335 arg mem_tmp1 ,rega 
+0x77ed 034336 arg mem_tmp0 ,regb 
+0x77ee 034337 copy regb ,contw 
+0x77ef 034338 call bn_add 
+0x77f0 034339 ifetch 1 ,rega 
+0x77f1 034340 iadd regc ,regc 
+0x77f2 034341 ifetch 1 ,regb 
+0x77f3 034342 iadd regc ,pdata 
+0x77f4 034343 istore 1 ,regb 
+0x77f5 034344 branch bn_invmod_2 
+:      034345 bn_invmod_0:
+0x77f6 034346 arg mem_tmp0 ,contw 
+0x77f7 034347 call bn_zero 
+0x77f8 034348 fetch 1 ,mem_tmp5 
+0x77f9 034349 store 1 ,mem_tmp0 
+0x77fa 034350 store 1 ,mem_tmp0a 
+0x77fb 034351 arg mem_tmp0 ,rega 
+0x77fc 034352 arg mem_tmp1 ,regb 
+0x77fd 034353 copy regb ,contw 
+0x77fe 034354 call bn_addmod 
+0x77ff 034355 arg mem_p ,rega 
+0x7800 034356 arg mem_tmp1 ,regb 
+0x7801 034357 copy timeup ,contw 
+0x7802 034358 branch bn_submod 
+:      034363 ecdbl:
+0x7803 034364 arg mem_cz ,rega 
+0x7804 034365 arg mem_t2 ,contw 
+0x7805 034366 call bn_sqrmod 
+0x7806 034367 arg mem_t2 ,rega 
+0x7807 034368 arg mem_t3 ,contw 
+0x7808 034369 call bn_sqrmod 
+0x7809 034370 arg mem_a ,rega 
+0x780a 034371 arg mem_t3 ,regb 
+0x780b 034372 arg mem_t3 ,contw 
+0x780c 034373 call bn_mulmod 
+0x780d 034374 arg mem_cx ,rega 
+0x780e 034375 arg mem_t2 ,contw 
+0x780f 034376 call bn_sqrmod 
+0x7810 034377 arg mem_t2 ,contr 
+0x7811 034378 arg mem_t1 ,contw 
+0x7812 034379 call memcpy24 
+0x7813 034380 arg mem_t1 ,rega 
+0x7814 034381 call bn_lshiftmod 
+0x7815 034382 arg mem_t2 ,rega 
+0x7816 034383 arg mem_t1 ,regb 
+0x7817 034384 arg mem_t2 ,contw 
+0x7818 034385 call bn_addmod 
+0x7819 034386 arg mem_t2 ,rega 
+0x781a 034387 arg mem_t3 ,regb 
+0x781b 034388 arg mem_t2 ,contw 
+0x781c 034389 call bn_addmod 
+0x781d 034390 arg mem_cx ,contr 
+0x781e 034391 arg mem_t1 ,contw 
+0x781f 034392 call memcpy24 
+0x7820 034393 arg mem_cy ,rega 
+0x7821 034394 arg mem_t3 ,contw 
+0x7822 034395 call bn_sqrmod 
+0x7823 034396 arg mem_t1 ,rega 
+0x7824 034397 call bn_lshiftmod 
+0x7825 034398 arg mem_t1 ,rega 
+0x7826 034399 call bn_lshiftmod 
+0x7827 034400 arg mem_t1 ,rega 
+0x7828 034401 arg mem_t3 ,regb 
+0x7829 034402 arg mem_t1 ,contw 
+0x782a 034403 call bn_mulmod 
+0x782b 034404 arg mem_t3 ,rega 
+0x782c 034405 arg mem_t0 ,contw 
+0x782d 034406 call bn_sqrmod 
+0x782e 034407 arg mem_t0 ,rega 
+0x782f 034408 call bn_lshiftmod 
+0x7830 034409 arg mem_t0 ,rega 
+0x7831 034410 call bn_lshiftmod 
+0x7832 034411 arg mem_t0 ,rega 
+0x7833 034412 call bn_lshiftmod 
+0x7834 034413 arg mem_cy ,contr 
+0x7835 034414 arg mem_t3 ,contw 
+0x7836 034415 call memcpy24 
+0x7837 034416 arg mem_t3 ,rega 
+0x7838 034417 call bn_lshiftmod 
+0x7839 034418 arg mem_t3 ,rega 
+0x783a 034419 arg mem_cz ,regb 
+0x783b 034420 arg mem_cz ,contw 
+0x783c 034421 call bn_mulmod 
+0x783d 034422 arg mem_t2 ,rega 
+0x783e 034423 arg mem_t3 ,contw 
+0x783f 034424 call bn_sqrmod 
+0x7840 034425 arg mem_t3 ,rega 
+0x7841 034426 arg mem_t1 ,regb 
+0x7842 034427 arg mem_t3 ,contw 
+0x7843 034428 call bn_submod 
+0x7844 034429 arg mem_t3 ,rega 
+0x7845 034430 arg mem_t1 ,regb 
+0x7846 034431 arg mem_cx ,contw 
+0x7847 034432 call bn_submod 
+0x7848 034433 arg mem_t1 ,rega 
+0x7849 034434 arg mem_cx ,regb 
+0x784a 034435 arg mem_t3 ,contw 
+0x784b 034436 call bn_submod 
+0x784c 034437 arg mem_t3 ,rega 
+0x784d 034438 arg mem_t2 ,regb 
+0x784e 034439 arg mem_t3 ,contw 
+0x784f 034440 call bn_mulmod 
+0x7850 034441 arg mem_t3 ,rega 
+0x7851 034442 arg mem_t0 ,regb 
+0x7852 034443 arg mem_cy ,contw 
+0x7853 034444 branch bn_submod 
+:      034448 ecadd:
+0x7854 034449 arg mem_az ,rega 
+0x7855 034450 arg mem_t7 ,contw 
+0x7856 034451 call bn_sqrmod 
+0x7857 034452 arg mem_cx ,rega 
+0x7858 034453 arg mem_t7 ,regb 
+0x7859 034454 arg mem_t0 ,contw 
+0x785a 034455 call bn_mulmod 
+0x785b 034456 arg mem_az ,rega 
+0x785c 034457 arg mem_t7 ,regb 
+0x785d 034458 arg mem_t7 ,contw 
+0x785e 034459 call bn_mulmod 
+0x785f 034460 arg mem_cy ,rega 
+0x7860 034461 arg mem_t7 ,regb 
+0x7861 034462 arg mem_t1 ,contw 
+0x7862 034463 call bn_mulmod 
+0x7863 034464 arg mem_cz ,rega 
+0x7864 034465 arg mem_t7 ,contw 
+0x7865 034466 call bn_sqrmod 
+0x7866 034467 arg mem_ax ,rega 
+0x7867 034468 arg mem_t7 ,regb 
+0x7868 034469 arg mem_t2 ,contw 
+0x7869 034470 call bn_mulmod 
+0x786a 034471 arg mem_cz ,rega 
+0x786b 034472 arg mem_t7 ,regb 
+0x786c 034473 arg mem_t7 ,contw 
+0x786d 034474 call bn_mulmod 
+0x786e 034475 arg mem_ay ,rega 
+0x786f 034476 arg mem_t7 ,regb 
+0x7870 034477 arg mem_t3 ,contw 
+0x7871 034478 call bn_mulmod 
+0x7872 034479 arg mem_t0 ,rega 
+0x7873 034480 arg mem_t2 ,regb 
+0x7874 034481 arg mem_t7 ,contw 
+0x7875 034482 call bn_submod 
+0x7876 034483 arg mem_t0 ,rega 
+0x7877 034484 arg mem_t2 ,regb 
+0x7878 034485 arg mem_t0 ,contw 
+0x7879 034486 call bn_addmod 
+0x787a 034487 arg mem_t1 ,rega 
+0x787b 034488 arg mem_t3 ,regb 
+0x787c 034489 arg mem_t2 ,contw 
+0x787d 034490 call bn_submod 
+0x787e 034491 arg mem_t1 ,rega 
+0x787f 034492 arg mem_t3 ,regb 
+0x7880 034493 arg mem_t1 ,contw 
+0x7881 034494 call bn_addmod 
+0x7882 034495 arg mem_t1 ,rega 
+0x7883 034496 arg mem_t7 ,regb 
+0x7884 034497 arg mem_t1 ,contw 
+0x7885 034498 call bn_mulmod 
+0x7886 034499 arg mem_cz ,rega 
+0x7887 034500 arg mem_az ,regb 
+0x7888 034501 arg mem_t3 ,contw 
+0x7889 034502 call bn_mulmod 
+0x788a 034503 arg mem_t3 ,rega 
+0x788b 034504 arg mem_t7 ,regb 
+0x788c 034505 arg mem_cz ,contw 
+0x788d 034506 call bn_mulmod 
+0x788e 034507 arg mem_t7 ,rega 
+0x788f 034508 arg mem_t7 ,contw 
+0x7890 034509 call bn_sqrmod 
+0x7891 034510 arg mem_t7 ,rega 
+0x7892 034511 arg mem_t0 ,regb 
+0x7893 034512 arg mem_t3 ,contw 
+0x7894 034513 call bn_mulmod 
+0x7895 034514 arg mem_t7 ,rega 
+0x7896 034515 arg mem_t1 ,regb 
+0x7897 034516 arg mem_t1 ,contw 
+0x7898 034517 call bn_mulmod 
+0x7899 034518 arg mem_t2 ,rega 
+0x789a 034519 arg mem_cx ,contw 
+0x789b 034520 call bn_sqrmod 
+0x789c 034521 arg mem_cx ,rega 
+0x789d 034522 arg mem_t3 ,regb 
+0x789e 034523 arg mem_cx ,contw 
+0x789f 034524 call bn_submod 
+0x78a0 034525 arg mem_cx ,contr 
+0x78a1 034526 arg mem_t7 ,contw 
+0x78a2 034527 call memcpy24 
+0x78a3 034528 arg mem_t7 ,rega 
+0x78a4 034529 call bn_lshiftmod 
+0x78a5 034530 arg mem_t3 ,rega 
+0x78a6 034531 arg mem_t7 ,regb 
+0x78a7 034532 arg mem_t3 ,contw 
+0x78a8 034533 call bn_submod 
+0x78a9 034534 arg mem_t3 ,rega 
+0x78aa 034535 arg mem_t2 ,regb 
+0x78ab 034536 arg mem_t2 ,contw 
+0x78ac 034537 call bn_mulmod 
+0x78ad 034538 arg mem_t2 ,rega 
+0x78ae 034539 arg mem_t1 ,regb 
+0x78af 034540 arg mem_cy ,contw 
+0x78b0 034541 call bn_submod 
+0x78b1 034542 arg mem_cy ,rega 
+0x78b2 034543 arg mem_p ,regb 
+0x78b3 034544 arg mem_cy ,contw 
+0x78b4 034545 force 0 ,regc 
+0x78b5 034546 fetch 1 ,mem_cy 
+0x78b6 034547 isolate1 0 ,pdata 
+0x78b7 034548 call bn_add ,true 
+0x78b8 034549 copy regc ,alarm 
+0x78b9 034550 arg mem_cy ,rega 
+0x78ba 034551 call bn_rshift6 
+0x78bb 034552 fetch 1 ,mem_cy5 
+0x78bc 034553 isolate1 0 ,alarm 
+0x78bd 034554 setflag true ,7 ,pdata 
+0x78be 034555 store 1 ,mem_cy5 
+0x78bf 034556 rtn 
+:      034560 eckp_0:
+0x78c0 034561 fetch 1 ,mem_ec_loopc 
+0x78c1 034562 increase -1 ,pdata 
+0x78c2 034563 nrtn positive 
+0x78c3 034564 store 1 ,mem_ec_loopc 
+0x78c4 034565 fetch 1 ,mem_ec_infinite 
+0x78c5 034566 call ecdbl ,blank 
+0x78c6 034567 fetch 1 ,mem_ec_loopc 
+0x78c7 034568 arg mem_k ,contr 
+0x78c8 034569 call bn_testbit 
+0x78c9 034570 branch eckp_0 ,true 
+0x78ca 034571 fetch 1 ,mem_ec_infinite 
+0x78cb 034572 nbranch eckp_1 ,blank 
+0x78cc 034573 call ecadd 
+0x78cd 034574 branch eckp_0 
+:      034575 eckp_1:
+0x78ce 034576 jam 0 ,mem_ec_infinite 
+0x78cf 034577 arg mem_ax ,contr 
+0x78d0 034578 arg mem_cx ,contw 
+0x78d1 034579 call ec_copy 
+0x78d2 034580 branch eckp_0 
+:      034583 ecunmapz:
+0x78d3 034584 arg mem_cz ,rega 
+0x78d4 034585 arg mem_t3 ,contw 
+0x78d5 034586 call bn_invmod 
+0x78d6 034587 arg mem_t3 ,rega 
+0x78d7 034588 arg mem_t1 ,contw 
+0x78d8 034589 call bn_sqrmod 
+0x78d9 034590 arg mem_cx ,rega 
+0x78da 034591 arg mem_t1 ,regb 
+0x78db 034592 arg mem_bx ,contw 
+0x78dc 034593 call bn_mulmod 
+0x78dd 034594 arg mem_t3 ,rega 
+0x78de 034595 arg mem_t1 ,regb 
+0x78df 034596 arg mem_t2 ,contw 
+0x78e0 034597 call bn_mulmod 
+0x78e1 034598 arg mem_cy ,rega 
+0x78e2 034599 arg mem_t2 ,regb 
+0x78e3 034600 arg mem_by ,contw 
+0x78e4 034601 branch bn_mulmod 
+:      034605 sha_endian_swap2:
+0x78e5 034606 ifetch 4 ,contr 
+0x78e6 034607 force 4 ,rega 
+0x78e7 034608 increase 3 ,contw 
+:      034609 sha_endian_loop:
+0x78e8 034610 istore 1 ,contw 
+0x78e9 034611 rshift8 pdata ,pdata 
+0x78ea 034612 increase -2 ,contw 
+0x78eb 034613 increase -1 ,rega 
+0x78ec 034614 nbranch sha_endian_loop ,zero 
+0x78ed 034615 increase 5 ,contw 
+0x78ee 034616 loop sha_endian_swap2 
+0x78ef 034617 rtn 
+:      034620 sha_getw:
+0x78f0 034621 lshift2 queue ,pdata 
+0x78f1 034622 iadd timeup ,contr 
+0x78f2 034623 ifetch 4 ,contr 
+0x78f3 034624 rtn 
+:      034626 sha_r:
+0x78f4 034627 force 16 ,alarm 
+0x78f5 034628 arg memdat ,timeup 
+:      034629 sha_r_loop:
+0x78f6 034630 add alarm ,-7 ,queue 
+0x78f7 034631 call sha_getw 
+0x78f8 034632 iforce temp 
+0x78f9 034633 add alarm ,-16 ,queue 
+0x78fa 034634 call sha_getw 
+0x78fb 034635 iadd temp ,temp 
+0x78fc 034636 add alarm ,-2 ,queue 
+0x78fd 034637 call sha_getw 
+0x78fe 034638 shasx pdata ,1 ,pdata 
+0x78ff 034639 iadd temp ,temp 
+0x7900 034640 add alarm ,-15 ,queue 
+0x7901 034641 call sha_getw 
+0x7902 034642 shasx pdata ,0 ,pdata 
+0x7903 034643 iadd temp ,temp 
+0x7904 034644 lshift2 alarm ,pdata 
+0x7905 034645 iadd timeup ,contw 
+0x7906 034646 istoret 4 ,contw 
+0x7907 034647 increase 1 ,alarm 
+0x7908 034648 compare 64 ,alarm ,0xff 
+0x7909 034649 nbranch sha_r_loop ,true 
+0x790a 034650 rtn 
+:      034653 sha_init:
+0x790b 034654 arg memh0 ,contr 
+0x790c 034655 force 7 ,regext_index 
+:      034656 sha_init_0:
+0x790d 034657 ifetch 4 ,contr 
+0x790e 034658 iforce regext 
+0x790f 034659 increase -1 ,regext_index 
+0x7910 034660 branch sha_init_0 ,positive 
+0x7911 034661 rtn 
+:      034663 sha:
+0x7912 034664 bpatchx patch3d_4 ,mem_patch3d 
+0x7913 034665 call sha_r 
+0x7914 034666 arg memahbak ,contw 
+0x7915 034667 force 0 ,regext_index 
+:      034668 sha_0:
+0x7916 034669 deposit regext 
+0x7917 034670 istore 4 ,contw 
+0x7918 034671 increase 1 ,regext_index 
+0x7919 034672 compare 8 ,regext_index ,0xff 
+0x791a 034673 nbranch sha_0 ,true 
+0x791b 034674 call enable_authrom 
+0x791c 034675 arg memk ,timeup 
+0x791d 034676 arg memdat ,alarm 
+0x791e 034677 force 64 ,loopcnt 
+:      034678 sha_loop:
+0x791f 034679 ifetcht 4 ,alarm 
+0x7920 034680 ifetch 4 ,timeup 
+0x7921 034681 increase 4 ,timeup 
+0x7922 034682 increase 4 ,alarm 
+0x7923 034683 iadd temp ,pdata 
+0x7924 034684 force 7 ,regext_index 
+0x7925 034685 iadd regext ,temp 
+0x7926 034686 force 4 ,regext_index 
+0x7927 034687 shasx regext ,3 ,pdata 
+0x7928 034688 iadd temp ,temp 
+0x7929 034689 force 5 ,regext_index 
+0x792a 034690 deposit regext 
+0x792b 034691 force 6 ,regext_index 
+0x792c 034692 ixor regext ,pdata 
+0x792d 034693 force 4 ,regext_index 
+0x792e 034694 iand regext ,pdata 
+0x792f 034695 force 6 ,regext_index 
+0x7930 034696 ixor regext ,pdata 
+0x7931 034697 iadd temp ,temp 
+0x7932 034698 force 7 ,regext_index 
+0x7933 034699 copy temp ,regext 
+0x7934 034700 force 3 ,regext_index 
+0x7935 034701 deposit regext 
+0x7936 034702 iadd temp ,regext 
+0x7937 034703 force 0 ,regext_index 
+0x7938 034704 deposit regext 
+0x7939 034705 force 1 ,regext_index 
+0x793a 034706 iand regext ,temp 
+0x793b 034707 ior regext ,pdata 
+0x793c 034708 force 2 ,regext_index 
+0x793d 034709 iand regext ,pdata 
+0x793e 034710 ior temp ,temp 
+0x793f 034711 force 0 ,regext_index 
+0x7940 034712 shasx regext ,2 ,pdata 
+0x7941 034713 iadd temp ,pdata 
+0x7942 034714 force 7 ,regext_index 
+0x7943 034715 iadd regext ,regext 
+0x7944 034716 regexrot 
+0x7945 034717 loop sha_loop 
+0x7946 034718 arg memahbak ,contr 
+0x7947 034719 force 0 ,regext_index 
+:      034720 sha_1:
+0x7948 034721 ifetch 4 ,contr 
+0x7949 034722 iadd regext ,regext 
+0x794a 034723 increase 1 ,regext_index 
+0x794b 034724 compare 8 ,regext_index ,0xff 
+0x794c 034725 nbranch sha_1 ,true 
+0x794d 034726 branch disable_authrom 
+:      034729 sha_result:
+0x794e 034730 arg memresult ,contw 
+0x794f 034731 force 7 ,regext_index 
+:      034732 sha_regext_save:
+0x7950 034733 deposit regext 
+0x7951 034734 istore 4 ,contw 
+0x7952 034735 increase -1 ,regext_index 
+0x7953 034736 branch sha_regext_save ,positive 
+0x7954 034737 rtn 
+:      034739 pad_xor:
+0x7955 034741 arg memdat ,contw 
+0x7956 034742 increase -4 ,contr 
+0x7957 034743 sub loopcnt ,16 ,rega 
+:      034744 pad_xor_0:
+0x7958 034745 ifetch 4 ,contr 
+0x7959 034746 ixor temp ,pdata 
+0x795a 034747 istore 4 ,contw 
+0x795b 034748 increase -8 ,contr 
+0x795c 034749 loop pad_xor_0 
+0x795d 034750 copy rega ,loopcnt 
+0x795e 034751 deposit temp 
+:      034752 pad_xor_1:
+0x795f 034753 istore 4 ,contw 
+0x7960 034754 loop pad_xor_1 
+0x7961 034755 rtn 
+:      034757 g_noninit_number_confirm:
+0x7962 034758 call g_noninit0 
+0x7963 034759 call sha_result 
+0x7964 034760 branch g_common0 
+:      034762 g_noninit:
+0x7965 034763 call g_noninit0 
+0x7966 034764 branch g_common0 
+:      034766 g_noninit0:
+0x7967 034767 arg mem_sp_pubkey_remote_x_end ,contr 
+0x7968 034768 arg memdat ,contw 
+0x7969 034769 force 6 ,loopcnt 
+0x796a 034770 call memcpy_dword_swap 
+0x796b 034771 arg mem_sp_pubkey_local_x_end ,contr 
+0x796c 034772 force 6 ,loopcnt 
+0x796d 034773 call memcpy_dword_swap 
+0x796e 034774 arg mem_sp_random_remote_end ,contr 
+0x796f 034775 call memcpy_dword_swap4 
+0x7970 034776 call sha_init 
+0x7971 034777 call sha 
+0x7972 034778 arg mem_sp_random_local_end ,contr 
+0x7973 034779 arg memdat ,contw 
+0x7974 034780 branch g_common 
+:      034782 g_init:
+0x7975 034783 arg mem_sp_pubkey_local_x_end ,contr 
+0x7976 034784 arg memdat ,contw 
+0x7977 034785 force 6 ,loopcnt 
+0x7978 034786 call memcpy_dword_swap 
+0x7979 034787 arg mem_sp_pubkey_remote_x_end ,contr 
+0x797a 034788 force 6 ,loopcnt 
+0x797b 034789 call memcpy_dword_swap 
+0x797c 034790 arg mem_sp_random_local_end ,contr 
+0x797d 034791 call memcpy_dword_swap4 
+0x797e 034792 call sha_init 
+0x797f 034793 call sha 
+0x7980 034794 arg mem_sp_random_remote_end ,contr 
+0x7981 034795 arg memdat ,contw 
+0x7982 034796 call g_common 
+0x7983 034797 branch g_common0 
+:      034799 g_common:
+0x7984 034800 call memcpy_dword_swap4 
+0x7985 034801 setarg 0x800000 
+0x7986 034802 lshift8 pdata ,pdata 
+0x7987 034803 istore 4 ,contw 
+0x7988 034804 force 5 ,loopcnt 
+0x7989 034805 call memset0 
+0x798a 034806 setarg 640 
+0x798b 034807 istore 4 ,contw 
+0x798c 034808 branch sha 
+:      034809 g_common0:
+0x798d 034810 fetch 4 ,memresult 
+0x798e 034812 arg 1000 ,rega 
+0x798f 034813 idiv rega 
+0x7990 034814 call wait_div_end 
+0x7991 034815 remainder pdata 
+0x7992 034816 store 4 ,mem_gkey 
+0x7993 034817 quotient pdata 
+0x7994 034818 arg 1000 ,rega 
+0x7995 034819 idiv rega 
+0x7996 034820 call wait_div_end 
+0x7997 034821 remainder pdata 
+0x7998 034822 arg 1000 ,rega 
+0x7999 034823 imul32 rega ,pdata 
+0x799a 034824 fetcht 4 ,mem_gkey 
+0x799b 034825 iadd temp ,pdata 
+0x799c 034826 store 4 ,mem_gkey 
+0x799d 034827 rtn 
+:      034829 function_f1_no_key:
+0x799e 034830 jam 0 ,mem_passkey_1bit 
+0x799f 034831 branch function_f1_common 
+:      034833 function_f1:
+0x79a0 034834 fetch 1 ,mem_ssp_mode_flag 
+0x79a1 034835 bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
+:      034836 function_f1_common:
+0x79a2 034837 bpatchx patch3d_5 ,mem_patch3d 
+0x79a3 034838 setarg 0x363636 
+0x79a4 034839 lshift8 pdata ,temp 
+0x79a5 034840 or_into 0x36 ,temp 
+0x79a6 034841 fetch 2 ,mem_sp_prarm_stack 
+0x79a7 034842 copy pdata ,contr 
+0x79a8 034843 force 4 ,loopcnt 
+0x79a9 034844 call pad_xor 
+0x79aa 034845 call sha_init 
+0x79ab 034846 call sha 
+0x79ac 034847 fetch 2 ,mem_sp_prarm_stack + 2 
+0x79ad 034848 copy pdata ,contr 
+0x79ae 034849 arg memdat ,contw 
+0x79af 034850 force 6 ,loopcnt 
+0x79b0 034851 call memcpy_dword_swap 
+0x79b1 034852 fetch 2 ,mem_sp_prarm_stack + 4 
+0x79b2 034853 copy pdata ,contr 
+0x79b3 034854 force 6 ,loopcnt 
+0x79b4 034855 call memcpy_dword_swap 
+0x79b5 034856 setarg 0x800000 
+0x79b6 034857 istore 3 ,contw 
+0x79b7 034859 fetch 1 ,mem_passkey_1bit 
+0x79b8 034861 istore 1 ,contw 
+0x79b9 034862 force 0 ,pdata 
+0x79ba 034863 istore 8 ,contw 
+0x79bb 034864 setarg 0x0388 
+0x79bc 034865 istore 4 ,contw 
+0x79bd 034866 call sha 
+0x79be 034867 call sha_result 
+0x79bf 034868 arg memresult ,contr 
+0x79c0 034869 arg memahsave ,contw 
+0x79c1 034870 call memcpy32 
+0x79c2 034872 setarg 0x5c5c5c 
+0x79c3 034873 lshift8 pdata ,temp 
+0x79c4 034874 or_into 0x5c ,temp 
+0x79c5 034875 fetch 2 ,mem_sp_prarm_stack 
+0x79c6 034876 copy pdata ,contr 
+0x79c7 034877 force 4 ,loopcnt 
+0x79c8 034878 call pad_xor 
+0x79c9 034879 call sha_init 
+0x79ca 034880 call sha 
+0x79cb 034881 arg memahsave_end ,contr 
+0x79cc 034882 arg memdat ,contw 
+0x79cd 034883 force 8 ,loopcnt 
+0x79ce 034884 call memcpy_dword_swap 
+0x79cf 034885 setarg 0x800000 
+0x79d0 034886 lshift8 pdata ,pdata 
+0x79d1 034887 istore 4 ,contw 
+0x79d2 034888 call bn_zero 
+0x79d3 034889 setarg 0x0300 
+0x79d4 034890 istore 4 ,contw 
+0x79d5 034891 call sha 
+0x79d6 034892 branch sha_result 
+:      034895 function_f2:
+0x79d7 034896 setarg 0x363636 
+0x79d8 034897 lshift8 pdata ,temp 
+0x79d9 034898 or_into 0x36 ,temp 
+0x79da 034899 arg mem_sp_dhkey_end ,contr 
+0x79db 034900 force 6 ,loopcnt 
+0x79dc 034901 call pad_xor 
+0x79dd 034902 call sha_init 
+0x79de 034903 call sha 
+0x79df 034904 fetch 2 ,mem_sp_prarm_stack + 12 
+0x79e0 034905 copy pdata ,contr 
+0x79e1 034906 arg memdat ,contw 
+0x79e2 034907 call memcpy_dword_swap4 
+0x79e3 034908 fetch 2 ,mem_sp_prarm_stack + 14 
+0x79e4 034909 copy pdata ,contr 
+0x79e5 034910 call memcpy_dword_swap4 
+0x79e6 034912 setarg 0x62746c 
+0x79e7 034913 lshift8 pdata ,pdata 
+0x79e8 034914 or_into 0x6b ,pdata 
+0x79e9 034915 istore 4 ,contw 
+0x79ea 034916 arg mem_addr_value_end ,contr 
+0x79eb 034917 force 3 ,loopcnt 
+0x79ec 034918 call memcpy_dword_swap 
+0x79ed 034920 setarg 0x800000 
+0x79ee 034921 lshift8 pdata ,pdata 
+0x79ef 034922 istore 4 ,contw 
+0x79f0 034923 force 0 ,pdata 
+0x79f1 034924 istore 8 ,contw 
+0x79f2 034925 setarg 0x0380 
+0x79f3 034926 istore 4 ,contw 
+0x79f4 034927 call sha 
+0x79f5 034929 call sha_result 
+0x79f6 034930 arg memresult ,contr 
+0x79f7 034931 arg memahsave ,contw 
+0x79f8 034932 call memcpy32 
+0x79f9 034934 setarg 0x5c5c5c 
+0x79fa 034935 lshift8 pdata ,temp 
+0x79fb 034936 or_into 0x5c ,temp 
+0x79fc 034937 arg mem_sp_dhkey_end ,contr 
+0x79fd 034938 force 6 ,loopcnt 
+0x79fe 034939 call pad_xor 
+0x79ff 034940 call sha_init 
+0x7a00 034941 call sha 
+0x7a01 034942 arg memahsave_end ,contr 
+0x7a02 034943 arg memdat ,contw 
+0x7a03 034944 force 8 ,loopcnt 
+0x7a04 034945 call memcpy_dword_swap 
+0x7a05 034946 setarg 0x800000 
+0x7a06 034947 lshift8 pdata ,pdata 
+0x7a07 034948 istore 4 ,contw 
+0x7a08 034949 call bn_zero 
+0x7a09 034950 setarg 0x0300 
+0x7a0a 034951 istore 4 ,contw 
+0x7a0b 034952 call sha 
+0x7a0c 034953 branch sha_result 
+:      034956 function_f3a:
+0x7a0d 034957 fetch 1 ,mem_ssp_mode_flag 
+0x7a0e 034958 bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
+:      034959 function_f3a_common:
+0x7a0f 034960 bpatchx patch3d_6 ,mem_patch3d 
+0x7a10 034961 setarg 0x363636 
+0x7a11 034962 lshift8 pdata ,temp 
+0x7a12 034963 or_into 0x36 ,temp 
+0x7a13 034964 arg mem_sp_dhkey_end ,contr 
+0x7a14 034965 force 6 ,loopcnt 
+0x7a15 034966 call pad_xor 
+0x7a16 034967 call sha_init 
+0x7a17 034968 call sha 
+0x7a18 034969 arg mem_sp_random_remote_end ,contr 
+0x7a19 034970 arg memdat ,contw 
+0x7a1a 034971 call memcpy_dword_swap4 
+0x7a1b 034972 arg mem_sp_random_local_end ,contr 
+0x7a1c 034973 call memcpy_dword_swap4 
+0x7a1d 034974 branch function_f3_common 
+:      034976 function_f3a_no_pin:
+0x7a1e 034977 setarg 0 
+0x7a1f 034978 store 4 ,mem_pin 
+0x7a20 034979 branch function_f3a_common 
+:      034981 function_f3b_no_pin:
+0x7a21 034982 setarg 0 
+0x7a22 034983 store 4 ,mem_pin 
+0x7a23 034984 branch function_f3b_common 
+:      034987 function_f3b:
+0x7a24 034988 fetch 1 ,mem_ssp_mode_flag 
+0x7a25 034989 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
+:      034990 function_f3b_common:
+0x7a26 034991 setarg 0x363636 
+0x7a27 034992 lshift8 pdata ,temp 
+0x7a28 034993 or_into 0x36 ,temp 
+0x7a29 034994 arg mem_sp_dhkey_end ,contr 
+0x7a2a 034995 force 6 ,loopcnt 
+0x7a2b 034996 call pad_xor 
+0x7a2c 034997 call sha_init 
+0x7a2d 034998 call sha 
+0x7a2e 035000 arg mem_sp_random_local_end ,contr 
+0x7a2f 035001 arg memdat ,contw 
+0x7a30 035002 call memcpy_dword_swap4 
+0x7a31 035003 arg mem_sp_random_remote_end ,contr 
+0x7a32 035004 call memcpy_dword_swap4 
+:      035005 function_f3_common:
+0x7a33 035006 setarg 0x0 
+0x7a34 035007 istore 8 ,contw 
+0x7a35 035008 istore 4 ,contw 
+0x7a36 035009 fetch 4 ,mem_pin 
+0x7a37 035010 istore 4 ,contw 
+0x7a38 035012 copy contw ,temp 
+0x7a39 035013 jam 0x80 ,mem_addr_padding 
+0x7a3a 035014 copy temp ,contw 
+0x7a3b 035015 arg mem_addr_iocap_end ,contr 
+0x7a3c 035016 call memcpy_dword_swap4 
+0x7a3d 035018 call sha 
+0x7a3e 035020 arg memdat ,contw 
+0x7a3f 035021 force 7 ,loopcnt 
+0x7a40 035022 call memset0 
+0x7a41 035023 istore 4 ,contw 
+0x7a42 035024 setarg 0x03F8 
+0x7a43 035025 istore 4 ,contw 
+0x7a44 035026 call sha 
+0x7a45 035027 call sha_result 
+0x7a46 035029 arg memresult ,contr 
+0x7a47 035030 arg memahsave ,contw 
+0x7a48 035031 call memcpy32 
+0x7a49 035033 setarg 0x5c5c5c 
+0x7a4a 035034 lshift8 pdata ,temp 
+0x7a4b 035035 or_into 0x5c ,temp 
+0x7a4c 035036 arg mem_sp_dhkey_end ,contr 
+0x7a4d 035037 force 6 ,loopcnt 
+0x7a4e 035038 call pad_xor 
+0x7a4f 035039 call sha_init 
+0x7a50 035040 call sha 
+0x7a51 035041 arg memahsave_end ,contr 
+0x7a52 035042 arg memdat ,contw 
+0x7a53 035043 force 8 ,loopcnt 
+0x7a54 035044 call memcpy_dword_swap 
+0x7a55 035045 setarg 0x800000 
+0x7a56 035046 lshift8 pdata ,pdata 
+0x7a57 035047 istore 4 ,contw 
+0x7a58 035048 call bn_zero 
+0x7a59 035049 setarg 0x0300 
+0x7a5a 035050 istore 4 ,contw 
+0x7a5b 035051 call sha 
+0x7a5c 035052 branch sha_result 
+:      035059 eckp_calc_init:
+0x7a5d 035060 jam 192 ,mem_ec_loopc 
+:      035061 eckp_calc_init_1:
+0x7a5e 035062 fetch 1 ,mem_ec_loopc 
+0x7a5f 035063 rtn blank 
+0x7a60 035064 increase -1 ,pdata 
+0x7a61 035065 store 1 ,mem_ec_loopc 
+0x7a62 035066 arg mem_k ,contr 
+0x7a63 035067 call bn_testbit 
+0x7a64 035068 branch eckp_calc_init_1 ,true 
+0x7a65 035069 arg mem_ax ,contr 
+0x7a66 035070 arg mem_cx ,contw 
+0x7a67 035071 branch ec_copy 
+:      035073 eckp_calc:
+0x7a68 035074 call ecdbl 
+0x7a69 035075 fetch 1 ,mem_ec_loopc 
+0x7a6a 035076 increase -1 ,pdata 
+0x7a6b 035077 store 1 ,mem_ec_loopc 
+0x7a6c 035078 arg mem_k ,contr 
+0x7a6d 035079 call bn_testbit 
+0x7a6e 035080 rtn true 
+0x7a6f 035081 branch ecadd 
+:      035083 memcpy_dword_swap4:
+0x7a70 035084 force 4 ,loopcnt 
+:      035085 memcpy_dword_swap:
+0x7a71 035086 increase -4 ,contr 
+:      035087 memcpy_dword_swap_loop:
+0x7a72 035088 ifetch 4 ,contr 
+0x7a73 035089 istore 4 ,contw 
+0x7a74 035090 increase -8 ,contr 
+0x7a75 035091 loop memcpy_dword_swap_loop 
+0x7a76 035092 rtn 
+:      035097 sp_initialize_256:
+0x7a77 035098 bpatchx patch3d_7 ,mem_patch3d 
+0x7a78 035099 fetch 1 ,mem_le_secure_connect_enable 
+0x7a79 035100 branch le_secure_connection_disable ,blank 
+0x7a7a 035101 call le_secure_connection_enable 
+0x7a7b 035102 call sp_clear_flags 
+0x7a7c 035104 branch sp_pubkey_calc_256 
+:      035109 sp_pubkey_calc_256:
+0x7a7d 035110 fetch 1 ,mem_le_sc_local_key_invalid 
+0x7a7e 035111 rtnne sp_key_invalid 
+0x7a7f 035112 fetch 1 ,mem_le_sc_calc 
+0x7a80 035113 rtnne sp_calc_standby 
+0x7a81 035115 arg mem_le_private_key_256 ,contw 
+0x7a82 035116 force 15 ,queue 
+0x7a83 035117 call random_generator 
+0x7a84 035118 random pdata 
+0x7a85 035119 rshift pdata ,pdata 
+0x7a86 035120 istore 2 ,contw 
+0x7a87 035122 arg mem_k_256 ,contw 
+0x7a88 035123 arg mem_le_private_key_256 ,contr 
+0x7a89 035124 call memcpy32 
+0x7a8a 035126 arg mem_ax_256 ,contw 
+0x7a8b 035127 arg mem_gx_256 ,contr 
+0x7a8c 035128 call memcpy64 
+0x7a8d 035130 arg mem_az_256 ,contw 
+0x7a8e 035131 call clear_mem_256 
+0x7a8f 035132 jam 1 ,mem_az_256 
+0x7a90 035134 call eckp_calc_init_256 
+0x7a91 035135 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
+0x7a92 035136 rtn 
+:      035138 sp_pubkey_generated_256:
+0x7a93 035139 arg mem_le_pubkey_local_x_256 ,contw 
+0x7a94 035140 arg mem_bx_256 ,contr 
+0x7a95 035141 call memcpy64 
+0x7a96 035142 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
+0x7a97 035143 jam sp_calc_standby ,mem_le_sc_calc 
+0x7a98 035144 rtn 
+:      035148 sp_dhkey_calc_256:
+0x7a99 035149 fetch 1 ,mem_sp_dhkey_invalid 
+0x7a9a 035150 rtnne sp_key_invalid 
+0x7a9b 035151 fetch 1 ,mem_le_sc_calc 
+0x7a9c 035152 rtnne sp_calc_standby 
+0x7a9d 035154 arg mem_k_256 ,contw 
+0x7a9e 035155 arg mem_le_private_key_256 ,contr 
+0x7a9f 035156 call memcpy32 
+0x7aa0 035158 arg mem_ax_256 ,contw 
+0x7aa1 035159 arg mem_le_pubkey_remote_x_256 ,contr 
+0x7aa2 035160 call memcpy64 
+0x7aa3 035162 arg mem_az_256 ,contw 
+0x7aa4 035163 call clear_mem_256 
+0x7aa5 035164 jam 1 ,mem_az_256 
+0x7aa6 035166 call eckp_calc_init_256 
+0x7aa7 035167 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
+0x7aa8 035168 rtn 
+:      035171 sp_dhkey_generated_256:
+0x7aa9 035173 arg mem_le_dhkey_256 ,contw 
+0x7aaa 035174 arg mem_bx_256 ,contr 
+0x7aab 035175 call memcpy32 
+0x7aac 035176 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
+0x7aad 035177 jam sp_calc_standby ,mem_le_sc_calc 
+0x7aae 035178 rtn 
+:      035182 sp_calc_sequence_256:
+0x7aaf 035183 fetch 1 ,mem_le_secure_connect_enable 
+0x7ab0 035184 rtn blank 
+0x7ab1 035185 fetch 1 ,mem_le_sc_calc 
+0x7ab2 035186 rtn blank 
+0x7ab3 035187 increase 0x80 ,pdata 
+0x7ab4 035188 store 1 ,mem_le_sc_calc 
+0x7ab5 035189 rtnbit1 7 
+0x7ab6 035190 fetch 2 ,mem_ec_loopc 
+0x7ab7 035191 branch sp_calc_sequence_done_256 ,blank 
+0x7ab8 035192 branch eckp_calc_256 
+:      035194 sp_calc_sequence_done_256:
+0x7ab9 035195 bpatchx patch3e_0 ,mem_patch3e 
+0x7aba 035196 call ecunmapz_256 
+0x7abb 035197 fetch 1 ,mem_le_sc_calc 
+0x7abc 035198 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
+0x7abd 035199 beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
+0x7abe 035200 rtn 
+:      035203 eckp_calc_256:
+0x7abf 035204 call ecdbl_256 
+0x7ac0 035205 fetch 2 ,mem_ec_loopc 
+0x7ac1 035206 increase -1 ,pdata 
+0x7ac2 035207 store 2 ,mem_ec_loopc 
+0x7ac3 035208 arg mem_k_256 ,contr 
+0x7ac4 035209 call bn_testbit 
+0x7ac5 035210 rtn true 
+0x7ac6 035211 branch ecadd_256 
+:      035213 eckp_calc_init_256:
+0x7ac7 035214 bpatchx patch3e_1 ,mem_patch3e 
+0x7ac8 035215 setarg 256 ,pdata 
+0x7ac9 035216 store 2 ,mem_ec_loopc 
+:      035217 eckp_calc_init_256_1:
+0x7aca 035218 fetch 2 ,mem_ec_loopc 
+0x7acb 035219 rtn blank 
+0x7acc 035220 increase -1 ,pdata 
+0x7acd 035221 store 2 ,mem_ec_loopc 
+0x7ace 035222 arg mem_k_256 ,contr 
+0x7acf 035223 call bn_testbit 
+0x7ad0 035224 branch eckp_calc_init_256_1 ,true 
+0x7ad1 035225 arg mem_ax_256 ,contr 
+0x7ad2 035226 arg mem_cx_256 ,contw 
+0x7ad3 035227 branch memcpy96 
+:      035230 ecunmapz_256:
+0x7ad4 035231 arg mem_cz_256 ,rega 
+0x7ad5 035232 arg mem_t3_256 ,contw 
+0x7ad6 035233 call bn_invmod_256 
+0x7ad7 035234 arg mem_t3_256 ,rega 
+0x7ad8 035235 arg mem_t1_256 ,contw 
+0x7ad9 035236 call bn_sqrmod_256 
+0x7ada 035237 arg mem_cx_256 ,rega 
+0x7adb 035238 arg mem_t1_256 ,regb 
+0x7adc 035239 arg mem_bx_256 ,contw 
+0x7add 035240 call bn_mulmod_256 
+0x7ade 035241 arg mem_t3_256 ,rega 
+0x7adf 035242 arg mem_t1_256 ,regb 
+0x7ae0 035243 arg mem_t2_256 ,contw 
+0x7ae1 035244 call bn_mulmod_256 
+0x7ae2 035245 arg mem_cy_256 ,rega 
+0x7ae3 035246 arg mem_t2_256 ,regb 
+0x7ae4 035247 arg mem_by_256 ,contw 
+0x7ae5 035248 branch bn_mulmod_256 
+:      035250 ecdbl_256:
+0x7ae6 035251 arg mem_cz_256 ,rega 
+0x7ae7 035252 arg mem_t2_256 ,contw 
+0x7ae8 035253 call bn_sqrmod_256 
+0x7ae9 035254 arg mem_t2_256 ,rega 
+0x7aea 035255 arg mem_t3_256 ,contw 
+0x7aeb 035256 call bn_sqrmod_256 
+0x7aec 035258 arg mem_a_256 ,rega 
+0x7aed 035259 arg mem_t3_256 ,regb 
+0x7aee 035260 arg mem_t3_256 ,contw 
+0x7aef 035261 call bn_mulmod_256 
+0x7af0 035262 arg mem_cx_256 ,rega 
+0x7af1 035263 arg mem_t2_256 ,contw 
+0x7af2 035264 call bn_sqrmod_256 
+0x7af3 035266 arg mem_t2_256 ,contr 
+0x7af4 035267 arg mem_t1_256 ,contw 
+0x7af5 035268 call memcpy32 
+0x7af6 035269 arg mem_t1_256 ,rega 
+0x7af7 035270 call bn_lshiftmod_256 
+0x7af8 035271 arg mem_t2_256 ,rega 
+0x7af9 035272 arg mem_t1_256 ,regb 
+0x7afa 035273 arg mem_t2_256 ,contw 
+0x7afb 035274 call bn_addmod_256 
+0x7afc 035276 arg mem_t2_256 ,rega 
+0x7afd 035277 arg mem_t3_256 ,regb 
+0x7afe 035278 arg mem_t2_256 ,contw 
+0x7aff 035279 call bn_addmod_256 
+0x7b00 035281 arg mem_cx_256 ,contr 
+0x7b01 035282 arg mem_t1_256 ,contw 
+0x7b02 035283 call memcpy32 
+0x7b03 035284 arg mem_cy_256 ,rega 
+0x7b04 035285 arg mem_t3_256 ,contw 
+0x7b05 035286 call bn_sqrmod_256 
+0x7b06 035287 arg mem_t1_256 ,rega 
+0x7b07 035288 call bn_lshiftmod_256 
+0x7b08 035289 arg mem_t1_256 ,rega 
+0x7b09 035290 call bn_lshiftmod_256 
+0x7b0a 035291 arg mem_t1_256 ,rega 
+0x7b0b 035292 arg mem_t3_256 ,regb 
+0x7b0c 035293 arg mem_t1_256 ,contw 
+0x7b0d 035294 call bn_mulmod_256 
+0x7b0e 035295 arg mem_t3_256 ,rega 
+0x7b0f 035296 arg mem_t0_256 ,contw 
+0x7b10 035297 call bn_sqrmod_256 
+0x7b11 035298 arg mem_t0_256 ,rega 
+0x7b12 035299 call bn_lshiftmod_256 
+0x7b13 035300 arg mem_t0_256 ,rega 
+0x7b14 035301 call bn_lshiftmod_256 
+0x7b15 035302 arg mem_t0_256 ,rega 
+0x7b16 035303 call bn_lshiftmod_256 
+0x7b17 035304 arg mem_cy_256 ,contr 
+0x7b18 035305 arg mem_t3_256 ,contw 
+0x7b19 035306 call memcpy32 
+0x7b1a 035307 arg mem_t3_256 ,rega 
+0x7b1b 035308 call bn_lshiftmod_256 
+0x7b1c 035309 arg mem_t3_256 ,rega 
+0x7b1d 035310 arg mem_cz_256 ,regb 
+0x7b1e 035311 arg mem_cz_256 ,contw 
+0x7b1f 035312 call bn_mulmod_256 
+0x7b20 035315 arg mem_t2_256 ,rega 
+0x7b21 035316 arg mem_t3_256 ,contw 
+0x7b22 035317 call bn_sqrmod_256 
+0x7b23 035319 arg mem_t3_256 ,rega 
+0x7b24 035320 arg mem_t1_256 ,regb 
+0x7b25 035321 arg mem_t3_256 ,contw 
+0x7b26 035322 call bn_submod_256 
+0x7b27 035323 arg mem_t3_256 ,rega 
+0x7b28 035324 arg mem_t1_256 ,regb 
+0x7b29 035325 arg mem_cx_256 ,contw 
+0x7b2a 035326 call bn_submod_256 
+0x7b2b 035327 arg mem_t1_256 ,rega 
+0x7b2c 035328 arg mem_cx_256 ,regb 
+0x7b2d 035329 arg mem_t3_256 ,contw 
+0x7b2e 035330 call bn_submod_256 
+0x7b2f 035331 arg mem_t3_256 ,rega 
+0x7b30 035332 arg mem_t2_256 ,regb 
+0x7b31 035333 arg mem_t3_256 ,contw 
+0x7b32 035334 call bn_mulmod_256 
+0x7b33 035335 arg mem_t3_256 ,rega 
+0x7b34 035336 arg mem_t0_256 ,regb 
+0x7b35 035337 arg mem_cy_256 ,contw 
+0x7b36 035338 branch bn_submod_256 
+:      035340 ecadd_256:
+0x7b37 035342 arg mem_az_256 ,rega 
+0x7b38 035343 arg mem_t7_256 ,contw 
+0x7b39 035344 call bn_sqrmod_256 
+0x7b3a 035345 arg mem_cx_256 ,rega 
+0x7b3b 035346 arg mem_t7_256 ,regb 
+0x7b3c 035347 arg mem_t0_256 ,contw 
+0x7b3d 035348 call bn_mulmod_256 
+0x7b3e 035351 arg mem_az_256 ,rega 
+0x7b3f 035352 arg mem_t7_256 ,regb 
+0x7b40 035353 arg mem_t7_256 ,contw 
+0x7b41 035354 call bn_mulmod_256 
+0x7b42 035355 arg mem_cy_256 ,rega 
+0x7b43 035356 arg mem_t7_256 ,regb 
+0x7b44 035357 arg mem_t1_256 ,contw 
+0x7b45 035358 call bn_mulmod_256 
+0x7b46 035361 arg mem_cz_256 ,rega 
+0x7b47 035362 arg mem_t7_256 ,contw 
+0x7b48 035363 call bn_sqrmod_256 
+0x7b49 035364 arg mem_ax_256 ,rega 
+0x7b4a 035365 arg mem_t7_256 ,regb 
+0x7b4b 035366 arg mem_t2_256 ,contw 
+0x7b4c 035367 call bn_mulmod_256 
+0x7b4d 035369 arg mem_cz_256 ,rega 
+0x7b4e 035370 arg mem_t7_256 ,regb 
+0x7b4f 035371 arg mem_t7_256 ,contw 
+0x7b50 035372 call bn_mulmod_256 
+0x7b51 035373 arg mem_ay_256 ,rega 
+0x7b52 035374 arg mem_t7_256 ,regb 
+0x7b53 035375 arg mem_t3_256 ,contw 
+0x7b54 035376 call bn_mulmod_256 
+0x7b55 035381 arg mem_t0_256 ,regb 
+0x7b56 035382 arg mem_t2_256 ,rega 
+0x7b57 035383 arg mem_t7_256 ,contw 
+0x7b58 035384 call bn_submod_256 
+0x7b59 035385 arg mem_t0_256 ,rega 
+0x7b5a 035386 arg mem_t2_256 ,regb 
+0x7b5b 035387 arg mem_t0_256 ,contw 
+0x7b5c 035388 call bn_addmod_256 
+0x7b5d 035391 arg mem_t1_256 ,regb 
+0x7b5e 035392 arg mem_t3_256 ,rega 
+0x7b5f 035393 arg mem_t2_256 ,contw 
+0x7b60 035394 call bn_submod_256 
+0x7b61 035395 arg mem_t1_256 ,rega 
+0x7b62 035396 arg mem_t3_256 ,regb 
+0x7b63 035397 arg mem_t1_256 ,contw 
+0x7b64 035398 call bn_addmod_256 
+0x7b65 035399 arg mem_t1_256 ,rega 
+0x7b66 035400 arg mem_t7_256 ,regb 
+0x7b67 035401 arg mem_t1_256 ,contw 
+0x7b68 035402 call bn_mulmod_256 
+0x7b69 035403 arg mem_cz_256 ,rega 
+0x7b6a 035404 arg mem_az_256 ,regb 
+0x7b6b 035405 arg mem_t3_256 ,contw 
+0x7b6c 035406 call bn_mulmod_256 
+0x7b6d 035407 arg mem_t3_256 ,rega 
+0x7b6e 035408 arg mem_t7_256 ,regb 
+0x7b6f 035409 arg mem_cz_256 ,contw 
+0x7b70 035410 call bn_mulmod_256 
+0x7b71 035412 arg mem_t7_256 ,rega 
+0x7b72 035413 arg mem_t7_256 ,contw 
+0x7b73 035414 call bn_sqrmod_256 
+0x7b74 035415 arg mem_t7_256 ,rega 
+0x7b75 035416 arg mem_t0_256 ,regb 
+0x7b76 035417 arg mem_t3_256 ,contw 
+0x7b77 035418 call bn_mulmod_256 
+0x7b78 035419 arg mem_t7_256 ,rega 
+0x7b79 035420 arg mem_t1_256 ,regb 
+0x7b7a 035421 arg mem_t1_256 ,contw 
+0x7b7b 035422 call bn_mulmod_256 
+0x7b7c 035423 arg mem_t2_256 ,rega 
+0x7b7d 035424 arg mem_cx_256 ,contw 
+0x7b7e 035425 call bn_sqrmod_256 
+0x7b7f 035426 arg mem_cx_256 ,rega 
+0x7b80 035427 arg mem_t3_256 ,regb 
+0x7b81 035428 arg mem_cx_256 ,contw 
+0x7b82 035429 call bn_submod_256 
+0x7b83 035430 arg mem_cx_256 ,contr 
+0x7b84 035431 arg mem_t7_256 ,contw 
+0x7b85 035432 call memcpy32 
+0x7b86 035433 arg mem_t7_256 ,rega 
+0x7b87 035434 call bn_lshiftmod_256 
+0x7b88 035435 arg mem_t3_256 ,rega 
+0x7b89 035436 arg mem_t7_256 ,regb 
+0x7b8a 035437 arg mem_t3_256 ,contw 
+0x7b8b 035438 call bn_submod_256 
+0x7b8c 035439 arg mem_t3_256 ,rega 
+0x7b8d 035440 arg mem_t2_256 ,regb 
+0x7b8e 035441 arg mem_t2_256 ,contw 
+0x7b8f 035442 call bn_mulmod_256 
+0x7b90 035443 arg mem_t2_256 ,rega 
+0x7b91 035444 arg mem_t1_256 ,regb 
+0x7b92 035445 arg mem_cy_256 ,contw 
+0x7b93 035446 call bn_submod_256 
+0x7b94 035447 arg mem_cy_256 ,rega 
+0x7b95 035448 arg mem_p_256 ,regb 
+0x7b96 035449 arg mem_cy_256 ,contw 
+0x7b97 035450 force 0 ,regc 
+0x7b98 035451 fetch 1 ,mem_cy_256 
+0x7b99 035452 isolate1 0 ,pdata 
+0x7b9a 035453 call bn_add_256 ,true 
+0x7b9b 035454 copy regc ,alarm 
+0x7b9c 035455 arg mem_cy_256 ,rega 
+0x7b9d 035456 call bn_rshift_256 
+0x7b9e 035457 fetch 1 ,mem_cy5_256 
+0x7b9f 035458 isolate1 0 ,alarm 
+0x7ba0 035459 setflag true ,7 ,pdata 
+0x7ba1 035460 store 1 ,mem_cy5_256 
+0x7ba2 035461 rtn 
+:      035463 bn_invmod_256:
+0x7ba3 035464 copy contw ,timeup 
+0x7ba4 035465 arg mem_tmp0_256 ,contw 
+0x7ba5 035466 call clear_mem_256 
+0x7ba6 035467 force 0 ,pdata 
+0x7ba7 035469 store 4 ,mem_t2_256 
+0x7ba8 035470 jam 1 ,mem_tmp0_256 
+0x7ba9 035471 arg mem_tmp1_256 ,contw 
+0x7baa 035472 call clear_mem_512 
+0x7bab 035473 arg mem_p_256 ,contr 
+0x7bac 035474 arg mem_tmp2_256 ,contw 
+0x7bad 035475 call memcpy32 
+0x7bae 035476 copy rega ,contr 
+0x7baf 035477 arg mem_tmp3_256 ,contw 
+0x7bb0 035478 call memcpy32 
+:      035484 bn_invmod_256_2:
+0x7bb1 035485 arg mem_tmp3_256 ,contr 
+0x7bb2 035486 call bn_eq_zero_256 
+0x7bb3 035487 branch bn_invmod_256_0 ,blank 
+0x7bb4 035492 arg mem_tmp3_256 ,rega 
+0x7bb5 035493 arg mem_tmp0_256 ,regb 
+0x7bb6 035494 call bn_rshifteven_256 
+0x7bb7 035495 arg mem_tmp2_256 ,rega 
+0x7bb8 035496 arg mem_tmp1_256 ,regb 
+0x7bb9 035497 call bn_rshifteven_256 
+0x7bba 035499 arg mem_tmp3_256 ,rega 
+0x7bbb 035500 arg mem_tmp2_256 ,regb 
+0x7bbc 035501 call bn_bigeq_256 
+0x7bbd 035502 branch bn_invmod_256_1 ,positive 
+0x7bbe 035503 arg mem_tmp2_256 ,rega 
+0x7bbf 035504 arg mem_tmp3_256 ,regb 
+0x7bc0 035505 copy rega ,contw 
+0x7bc1 035506 call bn_sub_256 
+0x7bc2 035507 arg mem_tmp0_256 ,rega 
+0x7bc3 035508 arg mem_tmp1_256 ,regb 
+0x7bc4 035509 copy regb ,contw 
+0x7bc5 035510 call bn_add_256 
+0x7bc6 035511 ifetch 1 ,rega 
+0x7bc7 035512 iadd regc ,regc 
+0x7bc8 035513 ifetch 1 ,regb 
+0x7bc9 035514 iadd regc ,pdata 
+0x7bca 035515 istore 1 ,regb 
+0x7bcb 035516 branch bn_invmod_256_2 
+:      035517 bn_invmod_256_1:
+0x7bcc 035518 arg mem_tmp3_256 ,rega 
+0x7bcd 035519 arg mem_tmp2_256 ,regb 
+0x7bce 035520 copy rega ,contw 
+0x7bcf 035521 call bn_sub_256 
+0x7bd0 035522 arg mem_tmp1_256 ,rega 
+0x7bd1 035523 arg mem_tmp0_256 ,regb 
+0x7bd2 035524 copy regb ,contw 
+0x7bd3 035525 call bn_add_256 
+0x7bd4 035526 ifetch 1 ,rega 
+0x7bd5 035527 iadd regc ,regc 
+0x7bd6 035528 ifetch 1 ,regb 
+0x7bd7 035529 iadd regc ,pdata 
+0x7bd8 035530 istore 1 ,regb 
+0x7bd9 035531 branch bn_invmod_256_2 
+:      035532 bn_invmod_256_0:
+0x7bda 035534 arg mem_tmp1_256 ,rega 
+0x7bdb 035535 copy timeup ,contw 
+0x7bdc 035536 call bn_p256mod 
+0x7bdd 035538 arg mem_p_256 ,rega 
+0x7bde 035539 copy timeup ,regb 
+0x7bdf 035540 copy timeup ,contw 
+0x7be0 035541 branch bn_submod_256 
+:      035544 bn_mulmod_256:
+0x7be1 035545 copy contw ,timeup 
+0x7be2 035547 force 0 ,regext_index 
+0x7be3 035549 arg mem_tmp1_256 ,contw 
+0x7be4 035550 call clear_mem_512 
+0x7be5 035551 arg mem_regext ,contw 
+0x7be6 035552 call clear_mem_512 
+0x7be7 035556 copy rega ,contr 
+0x7be8 035558 jam 0 ,mem_regext 
+0x7be9 035559 setarg 0 
+0x7bea 035560 call bn_load_mem 
+0x7beb 035561 copy regb ,contr 
+0x7bec 035562 call bn_load_256 
+0x7bed 035565 force 0 ,queue 
+0x7bee 035566 arg mem_tmp1_256 ,contw 
+:      035567 bn_mulmod_256_1:
+0x7bef 035570 arg mem_regext ,temp 
+0x7bf0 035571 copy queue ,regb 
+0x7bf1 035572 lshift2 regb ,pdata 
+0x7bf2 035574 iadd temp ,regb 
+0x7bf3 035575 force 0 ,temp 
+0x7bf4 035576 force 0 ,regc 
+:      035577 bn_mulmod_256_0:
+0x7bf5 035582 ifetch 4 ,contw 
+0x7bf6 035583 iforce rega 
+0x7bf7 035586 ifetch 4 ,regb 
+0x7bf8 035587 copy regc ,regext_index 
+0x7bf9 035588 imul32 regext ,pdata 
+0x7bfa 035589 iadd rega ,pdata 
+0x7bfb 035590 iadd temp ,pdata 
+0x7bfc 035591 istore 4 ,contw 
+0x7bfd 035592 rshift32 pdata ,temp 
+0x7bfe 035593 increase 1 ,regc 
+0x7bff 035594 compare 8 ,regc ,0xff 
+0x7c00 035595 nbranch bn_mulmod_256_0 ,true 
+0x7c01 035597 deposit temp 
+0x7c02 035598 istore 4 ,contw 
+0x7c03 035599 increase -32 ,contw 
+0x7c04 035602 increase 1 ,queue 
+0x7c05 035603 compare 8 ,queue ,0xff 
+0x7c06 035604 nbranch bn_mulmod_256_1 ,true 
+0x7c07 035605 arg mem_tmp1_256 ,rega 
+0x7c08 035606 copy timeup ,contw 
+0x7c09 035607 branch bn_p256mod 
+:      035609 bn_p256mod:
+0x7c0a 035610 bpatchx patch3e_2 ,mem_patch3e 
+0x7c0b 035611 copy contw ,timeup 
+0x7c0c 035612 copy rega ,alarm 
+0x7c0d 035613 arg mem_tmp2_256 ,regb 
+0x7c0e 035614 copy regb ,contw 
+0x7c0f 035615 call memset0_4 
+0x7c10 035616 istore 8 ,contw 
+0x7c11 035617 add rega ,44 ,contr 
+0x7c12 035618 call memcpy8 
+0x7c13 035619 call memcpy12 
+0x7c14 035620 copy regb ,rega 
+0x7c15 035621 call bn_lshiftmod_256 
+0x7c16 035622 arg mem_tmp2_256 ,regb 
+0x7c17 035623 copy alarm ,rega 
+0x7c18 035624 copy timeup ,contw 
+0x7c19 035625 call bn_addmod_256 
+0x7c1a 035627 arg mem_tmp2_256 ,regb 
+0x7c1b 035628 copy regb ,contw 
+0x7c1c 035629 call memset0_4 
+0x7c1d 035630 istore 8 ,contw 
+0x7c1e 035631 add alarm ,48 ,contr 
+0x7c1f 035632 call memcpy16 
+0x7c20 035633 call memset0_4 
+0x7c21 035634 copy regb ,rega 
+0x7c22 035635 call bn_lshiftmod_256 
+0x7c23 035639 arg mem_tmp2_256 ,regb 
+0x7c24 035640 copy timeup ,rega 
+0x7c25 035641 copy rega ,contw 
+0x7c26 035642 call bn_addmod_256 
+0x7c27 035646 arg mem_tmp2_256 ,regb 
+0x7c28 035647 copy regb ,contw 
+0x7c29 035648 add alarm ,32 ,contr 
+0x7c2a 035649 call memcpy12 
+0x7c2b 035650 call memset0_4 
+0x7c2c 035651 istore 8 ,contw 
+0x7c2d 035652 add alarm ,56 ,contr 
+0x7c2e 035653 call memcpy8 
+0x7c2f 035654 copy timeup ,rega 
+0x7c30 035655 copy rega ,contw 
+0x7c31 035656 call bn_addmod_256 
+0x7c32 035660 arg mem_tmp2_256 ,regb 
+0x7c33 035661 copy regb ,contw 
+0x7c34 035662 add alarm ,36 ,contr 
+0x7c35 035663 call memcpy12 
+0x7c36 035664 add alarm ,52 ,contr 
+0x7c37 035665 call memcpy12 
+0x7c38 035666 add alarm ,52 ,contr 
+0x7c39 035667 call memcpy4 
+0x7c3a 035668 add alarm ,32 ,contr 
+0x7c3b 035669 call memcpy4 
+0x7c3c 035670 copy timeup ,rega 
+0x7c3d 035671 copy rega ,contw 
+0x7c3e 035672 call bn_addmod_256 
+0x7c3f 035675 arg mem_tmp2_256 ,regb 
+0x7c40 035676 copy regb ,contw 
+0x7c41 035677 add alarm ,44 ,contr 
+0x7c42 035678 call memcpy12 
+0x7c43 035679 call memset0_4 
+0x7c44 035680 istore 8 ,contw 
+0x7c45 035681 add alarm ,32 ,contr 
+0x7c46 035682 call memcpy4 
+0x7c47 035683 add alarm ,40 ,contr 
+0x7c48 035684 call memcpy4 
+0x7c49 035685 copy timeup ,rega 
+0x7c4a 035686 copy rega ,contw 
+0x7c4b 035687 call bn_submod_256 
+0x7c4c 035690 arg mem_tmp2_256 ,regb 
+0x7c4d 035691 copy regb ,contw 
+0x7c4e 035692 add alarm ,48 ,contr 
+0x7c4f 035693 call memcpy8 
+0x7c50 035694 call memcpy8 
+0x7c51 035695 force 0 ,pdata 
+0x7c52 035696 istore 8 ,contw 
+0x7c53 035697 add alarm ,36 ,contr 
+0x7c54 035698 call memcpy4 
+0x7c55 035699 add alarm ,44 ,contr 
+0x7c56 035700 call memcpy4 
+0x7c57 035701 copy timeup ,rega 
+0x7c58 035702 copy rega ,contw 
+0x7c59 035703 call bn_submod_256 
+0x7c5a 035706 arg mem_tmp2_256 ,regb 
+0x7c5b 035707 copy regb ,contw 
+0x7c5c 035708 add alarm ,52 ,contr 
+0x7c5d 035709 call memcpy12 
+0x7c5e 035710 add alarm ,32 ,contr 
+0x7c5f 035711 call memcpy12 
+0x7c60 035712 call memset0_4 
+0x7c61 035713 add alarm ,48 ,contr 
+0x7c62 035714 call memcpy4 
+0x7c63 035715 copy timeup ,rega 
+0x7c64 035716 copy rega ,contw 
+0x7c65 035717 call bn_submod_256 
+0x7c66 035720 arg mem_tmp2_256 ,regb 
+0x7c67 035721 copy regb ,contw 
+0x7c68 035722 add alarm ,56 ,contr 
+0x7c69 035723 call memcpy8 
+0x7c6a 035724 call memset0_4 
+0x7c6b 035725 add alarm ,36 ,contr 
+0x7c6c 035726 call memcpy12 
+0x7c6d 035727 call memset0_4 
+0x7c6e 035728 add alarm ,52 ,contr 
+0x7c6f 035729 call memcpy4 
+0x7c70 035730 copy timeup ,rega 
+0x7c71 035731 copy rega ,contw 
+0x7c72 035732 branch bn_submod_256 
+:      035735 bn_load_mem:
+0x7c73 035736 force 32 ,loopcnt 
+0x7c74 035737 arg mem_regext ,contw 
+0x7c75 035738 iadd contw ,contw 
+0x7c76 035739 branch memcpy 
+:      035741 bn_load_256:
+0x7c77 035742 force 8 ,loopcnt 
+0x7c78 035743 branch bn_load_0 
+:      035745 bn_sqrmod_256:
+0x7c79 035746 copy rega ,regb 
+0x7c7a 035747 branch bn_mulmod_256 
+:      035749 bn_add_256:
+0x7c7b 035750 force 8 ,loopcnt 
+0x7c7c 035751 branch bn_add + 1 
+:      035753 bn_addmod_256:
+0x7c7d 035754 call bn_add_256 
+0x7c7e 035755 copy contw ,rega 
+0x7c7f 035756 branch bn_lshiftmod_ismod_256 
+:      035758 bn_lshiftmod_256:
+0x7c80 035759 call bn_lshift_256 
+:      035760 bn_lshiftmod_ismod_256:
+0x7c81 035761 isolate1 0 ,regc 
+0x7c82 035762 branch bn_lshiftmod_p_256 ,true 
+0x7c83 035763 arg mem_p_256 ,regb 
+0x7c84 035764 copy rega ,regc 
+0x7c85 035765 increase -32 ,rega 
+0x7c86 035766 call bn_bigeq_256 
+0x7c87 035767 nrtn positive 
+0x7c88 035768 copy regc ,rega 
+0x7c89 035769 branch sub_p2_256 
+:      035771 bn_lshiftmod_p_256:
+0x7c8a 035772 call sub_p2_256 
+0x7c8b 035774 copy rega ,regc 
+0x7c8c 035775 increase -32 ,rega 
+0x7c8d 035776 arg mem_p_256 ,regb 
+0x7c8e 035777 call bn_bigeq_256 
+0x7c8f 035778 nrtn positive 
+0x7c90 035779 copy regc ,rega 
+0x7c91 035780 branch sub_p2_256 
+:      035783 sub_p2_256:
+0x7c92 035784 increase -32 ,rega 
+0x7c93 035785 arg mem_p_256 ,regb 
+0x7c94 035786 copy rega ,contw 
+0x7c95 035787 branch bn_sub_256 
+:      035792 bn_submod_256:
+0x7c96 035793 call bn_sub_256 
+0x7c97 035795 branch bn_submod_256_np ,true 
+0x7c98 035798 add contw ,-32 ,rega 
+0x7c99 035799 arg mem_p_256 ,regb 
+0x7c9a 035800 call bn_bigeq_256 
+0x7c9b 035801 nrtn positive 
+0x7c9c 035802 arg mem_p_256 ,regb 
+0x7c9d 035803 add contw ,-32 ,rega 
+0x7c9e 035805 copy rega ,contw 
+0x7c9f 035806 branch bn_sub_256 
+:      035807 bn_submod_256_np:
+0x7ca0 035808 add contw ,-32 ,rega 
+0x7ca1 035809 arg mem_p_256 ,regb 
+0x7ca2 035810 copy rega ,contw 
+0x7ca3 035811 call bn_add_256 
+0x7ca4 035813 rtn true 
+0x7ca5 035814 add contw ,-32 ,rega 
+0x7ca6 035815 arg mem_p_256 ,regb 
+0x7ca7 035816 copy rega ,contw 
+0x7ca8 035817 branch bn_add_256 
+:      035821 bn_sub_256:
+0x7ca9 035822 force 8 ,loopcnt 
+0x7caa 035823 branch bn_sub + 1 
+:      035825 bn_rshift_256:
+0x7cab 035826 force 8 ,loopcnt 
+0x7cac 035827 increase 28 ,rega 
+0x7cad 035828 branch bn_rshift 
+:      035830 bn_lshift_256:
+0x7cae 035831 force 8 ,loopcnt 
+0x7caf 035832 force 0 ,regc 
+0x7cb0 035833 branch bn_lshift_0 
+:      035835 bn_bigeq_256:
+0x7cb1 035836 force 8 ,loopcnt 
+0x7cb2 035837 increase 28 ,rega 
+0x7cb3 035838 increase 28 ,regb 
+0x7cb4 035839 branch bn_bigeq_0 
+:      035842 bn_eq_zero_256:
+0x7cb5 035843 ifetch 8 ,contr 
+0x7cb6 035844 nrtn blank 
+0x7cb7 035845 branch bn_eq_zero 
+:      035850 bn_rshifteven_256:
+0x7cb8 035851 copy rega ,alarm 
+:      035852 bn_rshifteven_256_1:
+0x7cb9 035853 copy alarm ,rega 
+0x7cba 035854 ifetch 1 ,rega 
+0x7cbb 035855 isolate1 0 ,pdata 
+0x7cbc 035856 rtn true 
+0x7cbd 035857 call bn_rshift_256 
+0x7cbe 035858 ifetch 1 ,regb 
+0x7cbf 035859 isolate0 0 ,pdata 
+0x7cc0 035860 branch bn_rshifteven_256_0 ,true 
+0x7cc1 035861 arg mem_p_256 ,rega 
+0x7cc2 035862 copy regb ,contw 
+0x7cc3 035863 call bn_add_256 
+0x7cc4 035864 ifetch 1 ,regb 
+0x7cc5 035865 iadd regc ,pdata 
+0x7cc6 035866 istore 1 ,regb 
+0x7cc7 035867 increase -32 ,regb 
+:      035868 bn_rshifteven_256_0:
+0x7cc8 035869 add regb ,32 ,rega 
+0x7cc9 035870 force 9 ,loopcnt 
+0x7cca 035871 call bn_rshift 
+0x7ccb 035872 branch bn_rshifteven_256_1 
+:      035876 ui_init:
+0x7ccc 035877 call lpm_disable_exen_output 
+0x7ccd 035878 rtn wake 
+0x7cce 035879 call ui_button_init 
+0x7ccf 035880 call ui_timer_init 
+0x7cd0 035881 branch ui_led_init_global 
+:      035883 ui_dispatch:
+0x7cd1 035884 call ui_led_dispatch 
+0x7cd2 035886 branch ui_timer_check 
+:      035888 ui_button_init:
+0x7cd3 035889 fetch 1 ,mem_ui_button_gpio 
+0x7cd4 035890 rtneq ui_button_gpio_disable 
+0x7cd5 035891 iforce temp 
+0x7cd6 035892 call gpio_config_output 
+0x7cd7 035893 fetcht 1 ,mem_ui_button_gpio 
+0x7cd8 035894 call gpio_out_inactive 
+0x7cd9 035895 nop 100 
+0x7cda 035896 fetcht 1 ,mem_ui_button_gpio 
+0x7cdb 035897 call gpio_config_input 
+0x7cdc 035898 branch ui_button_polling 
+:      035902 ui_button_polling:
+0x7cdd 035903 bpatchx patch3e_3 ,mem_patch3e 
+0x7cde 035904 fetch 1 ,mem_ui_button_gpio 
+0x7cdf 035905 rtneq ui_button_gpio_disable 
+0x7ce0 035906 copy pdata ,temp 
+0x7ce1 035907 call gpio_get_bit 
+0x7ce2 035908 nbranch ui_button_up ,true 
+:      035910 ui_button_down:
+0x7ce3 035911 call ui_button_check_long_press 
+0x7ce4 035912 fetch 2 ,mem_ui_state_map 
+0x7ce5 035913 set1 ui_state_btn_down 
+0x7ce6 035914 store 2 ,mem_ui_state_map 
+0x7ce7 035915 fetch 1 ,mem_ui_button_last_state 
+0x7ce8 035916 rtneq ui_button_state_down 
+0x7ce9 035917 jam ui_button_state_down ,mem_ui_button_last_state 
+0x7cea 035919 fetch 1 ,mem_ui_button_timeout 
+0x7ceb 035920 store 1 ,mem_ui_button_timer 
+0x7cec 035921 call lpm_button_get_wake_lock 
+0x7ced 035922 jam bt_evt_button_down ,mem_fifo_temp 
+0x7cee 035923 branch ui_ipc_send_event 
+:      035924 ui_button_up:
+0x7cef 035925 fetch 2 ,mem_ui_state_map 
+0x7cf0 035926 set0 ui_state_btn_down 
+0x7cf1 035927 store 2 ,mem_ui_state_map 
+0x7cf2 035928 fetch 1 ,mem_ui_button_last_state 
+0x7cf3 035929 rtneq ui_button_state_up 
+0x7cf4 035930 jam ui_button_state_up ,mem_ui_button_last_state 
+0x7cf5 035932 jam 0 ,mem_ui_button_timer 
+0x7cf6 035933 call lpm_button_clean_wake_lock 
+0x7cf7 035934 jam bt_evt_button_up ,mem_fifo_temp 
+0x7cf8 035935 branch ui_ipc_send_event 
+:      035937 ui_button_check_long_press:
+0x7cf9 035938 fetch 1 ,mem_ui_button_timer 
+0x7cfa 035939 rtn blank 
+0x7cfb 035940 increase -1 ,pdata 
+0x7cfc 035941 store 1 ,mem_ui_button_timer 
+0x7cfd 035942 nrtn blank 
+0x7cfe 035944 jam bt_evt_button_long_pressed ,mem_fifo_temp 
+0x7cff 035945 branch ui_ipc_send_event 
+:      035947 lpm_button_get_wake_lock:
+0x7d00 035948 arg wake_lock_button ,queue 
+0x7d01 035949 branch lpm_get_wake_lock 
+:      035951 lpm_button_clean_wake_lock:
+0x7d02 035952 arg wake_lock_button ,queue 
+0x7d03 035953 branch lpm_put_wake_lock 
+:      035975 calc_curr_struct_prt:
+0x7d04 035976 fetch 2 ,mem_ui_led_struct_ptr 
+0x7d05 035977 mul32 rega ,led_offset_length ,regb 
+0x7d06 035978 iadd regb ,regb 
+0x7d07 035979 rtn 
+:      035982 ui_led_init_global:
+0x7d08 035983 fetch 1 ,mem_ui_led_struct_num 
+0x7d09 035984 rtn blank 
+0x7d0a 035985 copy pdata ,loopcnt 
+0x7d0b 035986 fetch 2 ,mem_ui_led_struct_ptr 
+0x7d0c 035987 copy pdata ,regb 
+:      035988 ui_led_init_loop:
+0x7d0d 035989 add regb ,led_offset_led_gpio ,regc 
+0x7d0e 035990 ifetcht 1 ,regc 
+0x7d0f 035991 call gpio_config_output 
+0x7d10 035992 call ui_led_off_static 
+0x7d11 035993 increase led_offset_length ,regb 
+0x7d12 035994 loop ui_led_init_loop 
+0x7d13 035995 rtn 
+:      035999 ui_led_on_global:
+0x7d14 036000 call calc_curr_struct_prt 
+0x7d15 036001 setarg ui_led_state_lighting 
+0x7d16 036002 istore 1 ,regb 
+0x7d17 036003 call ui_led_stop_timer 
+0x7d18 036004 branch ui_led_on_static 
+:      036008 ui_led_blink_stop_global:
+:      036009 ui_led_off_global:
+0x7d19 036010 call calc_curr_struct_prt 
+0x7d1a 036011 setarg ui_led_state_darking 
+0x7d1b 036012 istore 1 ,regb 
+0x7d1c 036013 call ui_led_stop_timer 
+0x7d1d 036014 branch ui_led_off_static 
+:      036018 ui_led_blink_start_global:
+0x7d1e 036019 call calc_curr_struct_prt 
+0x7d1f 036020 setarg ui_led_state_blink_start 
+0x7d20 036021 istore 1 ,regb 
+0x7d21 036022 setarg led_infinite_flash_num 
+0x7d22 036023 istore 1 ,contw 
+0x7d23 036024 branch ui_led_off_static 
+:      036029 ui_led_set_style_global:
+0x7d24 036030 call calc_curr_struct_prt 
+0x7d25 036031 arg led_offset_length ,loopcnt 
+0x7d26 036032 copy regc ,contr 
+0x7d27 036033 copy regb ,contw 
+0x7d28 036034 branch memcpy_fast 
+:      036038 ui_led_dispatch:
+0x7d29 036039 fetch 1 ,mem_ui_led_struct_num 
+0x7d2a 036040 rtn blank 
+0x7d2b 036041 arg 0 ,rega 
+:      036042 ui_led_blink_polling:
+0x7d2c 036043 call ui_led_change_style_by_type 
+0x7d2d 036044 increase 1 ,rega 
+0x7d2e 036045 fetch 1 ,mem_ui_led_struct_num 
+0x7d2f 036046 isub rega ,null 
+0x7d30 036047 rtn zero 
+0x7d31 036048 branch ui_led_blink_polling 
+:      036051 ui_led_off_static:
+0x7d32 036052 add regb ,led_offset_led_gpio ,regc 
+0x7d33 036053 ifetcht 1 ,regc 
+0x7d34 036054 branch gpio_out_inactive 
+:      036057 ui_led_on_static:
+0x7d35 036058 add regb ,led_offset_led_gpio ,regc 
+0x7d36 036059 ifetcht 1 ,regc 
+0x7d37 036060 branch gpio_out_active 
+:      036064 ui_led_change_style_by_type:
+0x7d38 036065 add rega ,ui_led_blink ,queue 
+0x7d39 036066 call timer_check 
+0x7d3a 036067 nrtn blank 
+0x7d3b 036069 call calc_curr_struct_prt 
+0x7d3c 036071 ifetch 1 ,regb 
+0x7d3d 036073 beq ui_led_state_lighting ,ui_led_on_static 
+0x7d3e 036074 beq ui_led_state_darking ,ui_led_off_static 
+0x7d3f 036075 beq ui_led_state_blink_stop ,ui_led_off_static 
+0x7d40 036076 beq ui_led_state_blink_darking ,ui_led_blink_state_darking 
+:      036077 ui_led_blink_state_lighting:
+0x7d41 036078 call ui_led_on_static 
+0x7d42 036079 add regb ,led_offset_cb_ledon ,regc 
+0x7d43 036080 call push_stack 
+0x7d44 036081 ifetch 2 ,regc 
+0x7d45 036082 call callback_func 
+0x7d46 036083 call pop_stack 
+0x7d47 036084 setarg ui_led_state_blink_darking 
+0x7d48 036085 istore 1 ,regb 
+0x7d49 036086 add regb ,led_offset_on_time ,regc 
+0x7d4a 036087 ifetch 2 ,regc 
+0x7d4b 036088 branch ui_led_blink_timer_start 
+:      036091 ui_led_blink_state_darking:
+0x7d4c 036092 call ui_led_off_static 
+0x7d4d 036093 add regb ,led_offset_cb_ledoff ,regc 
+0x7d4e 036094 call push_stack 
+0x7d4f 036095 ifetch 2 ,regc 
+0x7d50 036096 call callback_func 
+0x7d51 036097 call pop_stack 
+0x7d52 036099 add regb ,led_offset_blink_count ,regc 
+0x7d53 036100 ifetch 1 ,regc 
+0x7d54 036101 beq led_infinite_flash_num ,ui_led_blink_infinite 
+0x7d55 036102 increase -1 ,pdata 
+0x7d56 036103 istore 1 ,regc 
+0x7d57 036104 branch ui_led_blink_stop_global ,blank 
+:      036105 ui_led_blink_infinite:
+0x7d58 036106 setarg ui_led_state_blink_lighting 
+0x7d59 036107 istore 1 ,regb 
+0x7d5a 036108 add regb ,led_offset_off_time ,regc 
+0x7d5b 036109 ifetch 2 ,regc 
+:      036110 ui_led_blink_timer_start:
+0x7d5c 036111 add rega ,ui_led_blink ,queue 
+0x7d5d 036112 branch timer_init 
+:      036114 ui_led_stop_timer:
+0x7d5e 036115 setarg 0 
+0x7d5f 036116 branch ui_led_blink_timer_start 
+:      036122 ui_timer_timeout:
+0x7d60 036123 setarg 0x1000 
+0x7d61 036124 lshift16 pdata ,pdata 
+0x7d62 036125 iadd regb ,regb 
+0x7d63 036126 rtn 
+:      036128 ui_timer_check:
+0x7d64 036129 bpatchx patch3e_4 ,mem_patch3e 
+0x7d65 036130 arg 0 ,rega 
+0x7d66 036131 fetcht 4 ,mem_ui_timer_last_btclk 
+0x7d67 036132 copy clkn_bt ,regb 
+0x7d68 036133 copy regb ,pdata 
+0x7d69 036134 isub temp ,null 
+0x7d6a 036135 ncall ui_timer_timeout ,positive 
+:      036137 ui_timer_check_loop:
+0x7d6b 036138 copy regb ,pdata 
+0x7d6c 036139 increase 160 ,temp 
+0x7d6d 036140 increase 160 ,temp 
+0x7d6e 036141 isub temp ,null 
+0x7d6f 036142 nbranch ui_timer_check_end ,positive 
+0x7d70 036143 increase 1 ,rega 
+0x7d71 036144 and rega ,0x0f ,pdata 
+0x7d72 036145 nbranch ui_timer_check_loop ,blank 
+0x7d73 036146 arg 0 ,rega 
+0x7d74 036147 call ui_timer_check_send_evt 
+:      036148 ui_timer_init:
+0x7d75 036149 copy clkn_bt ,pdata 
+0x7d76 036150 store 4 ,mem_ui_timer_last_btclk 
+0x7d77 036151 rtn 
+:      036152 ui_timer_check_end:
+0x7d78 036153 bpatchx patch3e_5 ,mem_patch3e 
+0x7d79 036154 copy rega ,pdata 
+0x7d7a 036155 rtn blank 
+0x7d7b 036156 increase -160 ,temp 
+0x7d7c 036157 increase -160 ,temp 
+0x7d7d 036158 set0 28 ,temp 
+0x7d7e 036159 storet 4 ,mem_ui_timer_last_btclk 
+:      036160 ui_timer_check_send_evt:
+0x7d7f 036161 branch app_evt_timer 
+:      036168 ui_ipc_get_lock:
+0x7d80 036169 jam 1 ,mem_ipc_lock_bt 
+:      036170 ui_ipc_get_lock_wait:
+0x7d81 036171 fetch 1 ,mem_ipc_lock_c51 
+0x7d82 036172 nbranch ui_ipc_get_lock_wait ,blank 
+0x7d83 036173 rtn 
+:      036175 ui_ipc_put_lock:
+0x7d84 036176 jam 0 ,mem_ipc_lock_bt 
+0x7d85 036177 rtn 
+:      036181 ui_ipc_send_event:
+0x7d86 036182 bpatchx patch3e_6 ,mem_patch3e 
+0x7d87 036183 call ui_ipc_get_lock 
+0x7d88 036184 copy rega ,pdata 
+0x7d89 036185 store 4 ,mem_ipc_rega_temp 
+0x7d8a 036186 arg mem_ipc_fifo_bt2c51 ,rega 
+0x7d8b 036187 call fifo_in 
+0x7d8c 036188 fetch 4 ,mem_ipc_rega_temp 
+0x7d8d 036189 copy pdata ,rega 
+0x7d8e 036190 branch ui_ipc_put_lock 
+:      036192 ui_ipc_send_cmd:
+0x7d8f 036193 bpatchx patch3e_7 ,mem_patch3e 
+0x7d90 036194 call ui_ipc_get_lock 
+0x7d91 036195 copy rega ,pdata 
+0x7d92 036196 store 4 ,mem_ipc_rega_temp 
+0x7d93 036197 arg mem_ipc_fifo_c512bt ,rega 
+0x7d94 036198 call fifo_in 
+0x7d95 036199 fetch 4 ,mem_ipc_rega_temp 
+0x7d96 036200 copy pdata ,rega 
+0x7d97 036201 branch ui_ipc_put_lock 
+:      036203 ui_ipc_clean_all_fifo:
+0x7d98 036204 setarg 0 
+0x7d99 036205 store util_fifo_len ,mem_ipc_fifo_c512bt 
+0x7d9a 036206 store util_fifo_len ,mem_ipc_fifo_bt2c51 
+0x7d9b 036207 rtn 
+:      036209 check_51cmd:
+0x7d9c 036210 bpatchx patch3f_0 ,mem_patch3f 
+0x7d9d 036211 fetch 1 ,mem_hci_cmd 
+0x7d9e 036212 nrtn blank 
+0x7d9f 036213 arg mem_ipc_fifo_c512bt ,rega 
+0x7da0 036214 call fifo_is_empty 
+0x7da1 036215 rtn blank 
+0x7da2 036216 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
+0x7da3 036217 call check_51cmd_once 
+0x7da4 036218 fetch 1 ,mem_ipc_skip_continue_proc 
+0x7da5 036219 branch check_51cmd ,blank 
+0x7da6 036220 rtn 
+:      036222 check_51cmd_once:
+0x7da7 036223 call ui_ipc_get_lock 
+0x7da8 036224 arg mem_ipc_fifo_c512bt ,rega 
+0x7da9 036225 call fifo_out 
+0x7daa 036226 copy pdata ,temp 
+0x7dab 036227 call ui_ipc_put_lock 
+0x7dac 036228 bpatchx patch3f_1 ,mem_patch3f 
+0x7dad 036229 copy temp ,pdata 
+0x7dae 036230 rtn blank 
+0x7daf 036231 beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
+0x7db0 036232 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
+0x7db1 036233 beq bt_cmd_reconnect ,check_51cmd_reconnect 
+0x7db2 036234 beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
+0x7db3 036235 beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
+0x7db4 036236 beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
+0x7db5 036237 beq bt_cmd_start_inquiry ,check_51cmd_inq 
+0x7db6 036238 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
+0x7db7 036239 beq bt_cmd_start_adv ,check_51cmd_adv 
+0x7db8 036240 beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
+0x7db9 036241 beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
+0x7dba 036242 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
+0x7dbb 036243 beq bt_cmd_led_off ,check_51cmd_led_off 
+0x7dbc 036244 beq bt_cmd_led_on ,check_51cmd_led_on 
+0x7dbd 036245 beq bt_cmd_led_blink ,check_51cmd_led_start_blink 
+0x7dbe 036246 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
+0x7dbf 036247 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
+0x7dc0 036248 beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
+0x7dc1 036249 beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
+0x7dc2 036250 beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
+0x7dc3 036251 beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
+0x7dc4 036253 store 1 ,mem_fifo_temp 
+0x7dc5 036254 bpatchx patch3f_2 ,mem_patch3f 
+0x7dc6 036255 call lmo_fifo_check 
+0x7dc7 036256 nbranch check_51cmd_restore ,blank 
+:      036257 check_51cmd_once_continue:
+0x7dc8 036258 fetch 1 ,mem_fifo_temp 
+0x7dc9 036259 bmark0 mark_context ,check_51cmd_check_idle 
+0x7dca 036260 beq bt_cmd_disconnect ,check_51cmd_disconnect 
+0x7dcb 036261 beq bt_cmd_enter_sniff ,cmd_in_sniff 
+0x7dcc 036262 beq bt_cmd_exit_sniff ,cmd_exit_sniff 
+0x7dcd 036263 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
+0x7dce 036264 beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
+0x7dcf 036265 beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
+0x7dd0 036266 beq bt_cmd_role_switch ,check_51cmd_role_switch 
+0x7dd1 036267 beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
+0x7dd2 036268 beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
+0x7dd3 036269 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
+0x7dd4 036270 beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
+0x7dd5 036271 rtn 
+:      036273 check_51cmd_check_idle:
+0x7dd6 036274 store 1 ,mem_fifo_temp 
+0x7dd7 036275 call context_check_idle 
+0x7dd8 036276 branch check_51cmd_restore ,zero 
+0x7dd9 036277 call context_search_plap 
+0x7dda 036278 nrtn zero 
+:      036279 check_51cmd_restore:
+0x7ddb 036280 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
+0x7ddc 036281 branch ui_ipc_send_cmd 
+:      036286 check_51cmd_start_discovery:
+0x7ddd 036287 fetch 2 ,mem_ui_state_map 
+0x7dde 036288 set1 ui_state_bt_discovery 
+0x7ddf 036289 store 2 ,mem_ui_state_map 
+0x7de0 036290 jam 3 ,mem_scan_mode 
+0x7de1 036291 rtn 
+:      036295 check_51cmd_stop_discovery:
+0x7de2 036296 jam 0 ,mem_hid_handshake_timer_count 
+0x7de3 036297 jam 0 ,mem_scan_mode 
+0x7de4 036298 fetch 2 ,mem_ui_state_map 
+0x7de5 036299 set0 ui_state_bt_discovery 
+0x7de6 036300 store 2 ,mem_ui_state_map 
+0x7de7 036301 rtn 
+:      036305 check_51cmd_reconnect:
+0x7de8 036306 jam hci_cmd_create_conn ,mem_hci_cmd 
+0x7de9 036307 rtn 
+:      036311 check_51cmd_disconnect:
+0x7dea 036312 jam lmp_detach ,mem_lmo_opcode2 
+0x7deb 036313 jam other_end_terminated ,mem_disconn_reason_send 
+0x7dec 036314 rtn 
+:      036318 check_51cmd_enter_sniff_subrating:
+0x7ded 036319 rtn 
+:      036323 check_51cmd_exit_sniff_subrating:
+0x7dee 036324 rtn 
+:      036328 check_51cmd_sniff_test:
+0x7def 036329 rtn 
+:      036333 check_51cmd_pincode:
+0x7df0 036334 jam pincode_state_pincode_ready ,mem_pincode_state 
+0x7df1 036335 branch cmd_pair 
+:      036339 check_51cmd_inq:
+0x7df2 036340 rtn 
+:      036344 check_51cmd_stop_inq:
+0x7df3 036345 rtn 
+:      036349 check_51cmd_adv:
+0x7df4 036350 jam on ,mem_le_adv_enable 
+0x7df5 036351 jam adv_ind ,mem_le_adv_type 
+0x7df6 036352 fetch 2 ,mem_ui_state_map 
+0x7df7 036353 set1 ui_state_ble_adv ,pdata 
+0x7df8 036354 store 2 ,mem_ui_state_map 
+0x7df9 036355 rtn 
+:      036359 check_51cmd_stop_adv:
+0x7dfa 036360 fetch 2 ,mem_ui_state_map 
+0x7dfb 036361 set0 ui_state_ble_adv ,pdata 
+0x7dfc 036362 store 2 ,mem_ui_state_map 
+0x7dfd 036363 jam off ,mem_le_adv_enable 
+0x7dfe 036364 rtn 
+:      036368 check_51cmd_direct_adv:
+0x7dff 036369 jam on ,mem_le_adv_enable 
+0x7e00 036370 jam adv_direct_ind ,mem_le_adv_type 
+0x7e01 036371 fetch 2 ,mem_ui_state_map 
+0x7e02 036372 set1 ui_state_ble_adv ,pdata 
+0x7e03 036373 store 2 ,mem_ui_state_map 
+0x7e04 036374 rtn 
+:      036378 check_51cmd_stop_direct_adv:
+0x7e05 036379 fetch 2 ,mem_ui_state_map 
+0x7e06 036380 set0 ui_state_ble_adv ,pdata 
+0x7e07 036381 store 2 ,mem_ui_state_map 
+0x7e08 036382 jam off ,mem_le_adv_enable 
+0x7e09 036383 rtn 
+:      036387 check_51cmd_le_disconnect:
+0x7e0a 036388 setarg 20 
+0x7e0b 036389 store 2 ,mem_le_superto 
+0x7e0c 036390 store 2 ,mem_le_init_superto 
+0x7e0d 036391 branch le_send_terminate_ind_user_terminated 
+:      036395 check_51cmd_ble_update_connect_param:
+0x7e0e 036396 branch le_l2cap_tx_update_req 
+:      036400 check_51cmd_led_off:
+0x7e0f 036401 arg 0 ,rega 
+0x7e10 036402 branch ui_led_off_global 
+:      036406 check_51cmd_led_on:
+0x7e11 036407 arg 0 ,rega 
+0x7e12 036408 branch ui_led_on_global 
+:      036412 check_51cmd_led_start_blink:
+0x7e13 036413 arg 0 ,rega 
+0x7e14 036414 branch ui_led_blink_start_global 
+:      036418 check_51cmd_le_start_con:
+0x7e15 036419 jam on ,mem_le_scan_enable 
+0x7e16 036420 jam hci_cmd_le_create_conn ,mem_hci_cmd 
+0x7e17 036423 rtn 
+:      036427 check_51cmd_start_scan:
+0x7e18 036428 jam on ,mem_le_scan_enable 
+0x7e19 036429 rtn 
+:      036433 check_51cmd_stop_scan:
+0x7e1a 036434 jam off ,mem_le_scan_enable 
+0x7e1b 036435 jam 0 ,mem_hci_cmd 
+0x7e1c 036436 rtn 
+:      036440 check_51cmd_hibernate:
+0x7e1d 036441 fetch 2 ,mem_cb_before_hibernate 
+0x7e1e 036442 call callback_func 
+0x7e1f 036443 fetch 1 ,mem_ui_button_gpio 
+0x7e20 036444 beq ui_button_gpio_disable ,check_51cmd_hibernate_btn_disabled 
+0x7e21 036445 copy pdata ,temp 
+0x7e22 036446 call gpio_config_input 
+:      036447 check_51cmd_hibernate_btn_disabled:
+0x7e23 036448 call ui_ipc_clean_all_fifo 
+0x7e24 036449 branch lpm_hibernate 
+:      036453 check_51cmd_le_smp_sec_req:
+0x7e25 036454 branch le_send_smp_security_request 
+:      036458 check_51cmd_role_switch:
+0x7e26 036459 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x7e27 036460 set1 mark_switch_initiated ,mark 
+0x7e28 036461 nrtn master 
+0x7e29 036462 jam switch_flag_init ,mem_switch_flag 
+0x7e2a 036463 jam lmp_switch_req ,mem_lmo_opcode2 
+0x7e2b 036464 fetch 1 ,mem_connection_options 
+0x7e2c 036465 set0 connection_switch ,pdata 
+0x7e2d 036466 store 1 ,mem_connection_options 
+0x7e2e 036467 rtn 
+:      036471 check_51cmd_bb_reconn_cancel:
+0x7e2f 036472 force page_length_timer ,queue 
+0x7e30 036473 branch timer_stop 
+:      036477 check_51cmd_dhkey_not_accept:
+0x7e31 036478 call tid_set_reply 
+0x7e32 036479 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x7e33 036480 branch parse_lmp_dhkey_check_reject 
+:      036483 ui_check_paring_button:
+0x7e34 036484 fetch 1 ,mem_ui_state_map 
+0x7e35 036485 rtnbit0 ui_state_btn_down 
+0x7e36 036486 rtnbit0 ui_state_bt_reconnect 
+0x7e37 036487 branch check_51cmd_bb_reconn_cancel 
+:      036492 queue_init:
+0x7e38 036493 fetch 2 ,mem_queue_ptr 
+0x7e39 036494 add pdata ,queue_offset_curr_num ,contw 
+0x7e3a 036495 setarg 0 
+0x7e3b 036496 istore 3 ,contw 
+0x7e3c 036497 rtn 
+:      036501 queue_push:
+0x7e3d 036502 call disable_user 
+0x7e3e 036503 call queue_full 
+0x7e3f 036504 rtn blank 
+0x7e40 036505 fetch 2 ,mem_queue_ptr 
+0x7e41 036506 add pdata ,queue_offset_curr_num ,regb 
+0x7e42 036507 ifetcht 1 ,regb 
+0x7e43 036508 increase 1 ,temp 
+0x7e44 036509 istoret 1 ,regb 
+0x7e45 036511 ifetcht 1 ,pdata 
+0x7e46 036512 copy temp ,loopcnt 
+0x7e47 036513 add pdata ,queue_offset_write_ptr ,regb 
+0x7e48 036514 ifetch 1 ,regb 
+0x7e49 036515 imul32 temp ,pdata 
+0x7e4a 036516 iadd contr ,contw 
+0x7e4b 036517 copy rega ,contr 
+:      036518 calc_queue_next_ptr:
+0x7e4c 036519 call memcpy 
+0x7e4d 036520 call queue_get_size 
+0x7e4e 036521 pincrease -1 
+0x7e4f 036522 ifetcht 1 ,regb 
+0x7e50 036523 increase 1 ,temp 
+0x7e51 036524 iand temp ,temp 
+0x7e52 036525 istoret 1 ,regb 
+0x7e53 036526 branch enable_user 
+:      036531 queue_pop:
+0x7e54 036532 call disable_user 
+0x7e55 036533 call queue_empty 
+0x7e56 036534 rtn blank 
+0x7e57 036535 fetch 2 ,mem_queue_ptr 
+0x7e58 036536 add pdata ,queue_offset_curr_num ,regb 
+0x7e59 036537 ifetcht 1 ,regb 
+0x7e5a 036538 increase -1 ,temp 
+0x7e5b 036539 istoret 1 ,regb 
+0x7e5c 036540 ifetcht 1 ,pdata 
+0x7e5d 036541 copy temp ,loopcnt 
+0x7e5e 036542 add pdata ,queue_offset_read_ptr ,regb 
+0x7e5f 036543 ifetch 1 ,regb 
+0x7e60 036544 imul32 temp ,pdata 
+0x7e61 036545 iadd contr ,contr 
+0x7e62 036546 increase 1 ,contr 
+0x7e63 036547 copy rega ,contw 
+0x7e64 036548 branch calc_queue_next_ptr 
+:      036552 queue_empty:
+0x7e65 036553 fetch 2 ,mem_queue_ptr 
+0x7e66 036554 add pdata ,queue_offset_curr_num ,contr 
+0x7e67 036555 ifetch 1 ,contr 
+0x7e68 036556 rtn 
+:      036559 queue_full:
+0x7e69 036560 call queue_get_size 
+0x7e6a 036561 ifetcht 1 ,contr 
+0x7e6b 036562 isub temp ,pdata 
+0x7e6c 036563 rtn 
+:      036566 queue_get_size:
+0x7e6d 036567 fetch 2 ,mem_queue_ptr 
+0x7e6e 036568 add pdata ,queue_offset_length ,contr 
+0x7e6f 036569 ifetch 1 ,contr 
+0x7e70 036570 rtn 
+:      036578 right_shift_n:
+0x7e71 036579 sub loopcnt ,0 ,null 
+0x7e72 036580 rtn zero 
+:      036581 right_shift_n_loop:
+0x7e73 036582 rshift pdata ,pdata 
+0x7e74 036583 loop right_shift_n_loop 
+0x7e75 036584 rtn 
+:      036587 left_shift_n:
+0x7e76 036588 force 1 ,pdata 
+0x7e77 036589 sub loopcnt ,0 ,null 
+0x7e78 036590 rtn zero 
+:      036591 left_shift_n_loop:
+0x7e79 036592 lshift pdata ,pdata 
+0x7e7a 036593 loop left_shift_n_loop 
+0x7e7b 036594 rtn 
+:      036595 push_stack:
+0x7e7c 036596 deposit contw 
+0x7e7d 036597 store 2 ,mem_contw 
+0x7e7e 036598 storet 8 ,mem_temp 
+0x7e7f 036599 deposit timeup 
+0x7e80 036600 store 4 ,mem_timeup 
+0x7e81 036601 call push_stack_rega_b_c 
+0x7e82 036602 deposit contr 
+0x7e83 036603 store 2 ,mem_contr 
+0x7e84 036604 rtn 
+:      036606 push_stack_rega_b_c:
+0x7e85 036607 deposit rega 
+0x7e86 036608 store 4 ,mem_rega 
+0x7e87 036609 deposit regb 
+0x7e88 036610 store 4 ,mem_regb 
+0x7e89 036611 deposit regc 
+0x7e8a 036612 store 3 ,mem_regc 
+0x7e8b 036613 rtn 
+:      036615 pop_stack:
+0x7e8c 036616 fetcht 8 ,mem_temp 
+0x7e8d 036617 fetch 4 ,mem_timeup 
+0x7e8e 036618 iforce timeup 
+0x7e8f 036619 call pop_stack_rega_b_c 
+0x7e90 036620 fetch 2 ,mem_contw 
+0x7e91 036621 iforce contw 
+0x7e92 036622 fetch 2 ,mem_contr 
+0x7e93 036623 iforce contr 
+0x7e94 036624 rtn 
+:      036626 pop_stack_rega_b_c:
+0x7e95 036627 fetch 4 ,mem_rega 
+0x7e96 036628 iforce rega 
+0x7e97 036629 fetch 4 ,mem_regb 
+0x7e98 036630 iforce regb 
+0x7e99 036631 fetch 3 ,mem_regc 
+0x7e9a 036632 iforce regc 
+0x7e9b 036633 rtn 
+:      036635 get_contw:
+0x7e9c 036636 fetch 2 ,mem_contw 
+0x7e9d 036637 copy pdata ,contw 
+0x7e9e 036638 rtn 
+:      036639 get_contr:
+0x7e9f 036640 fetch 2 ,mem_contr 
+0x7ea0 036641 copy pdata ,contr 
+0x7ea1 036642 rtn 
+:      036643 store_contw:
+0x7ea2 036644 copy contw ,pdata 
+0x7ea3 036645 store 2 ,mem_contw 
+0x7ea4 036646 rtn 
+:      036647 store_contr:
+0x7ea5 036648 copy contr ,pdata 
+0x7ea6 036649 store 2 ,mem_contr 
+0x7ea7 036650 rtn 
+:      036654 save_cont_pointers:
+0x7ea8 036655 copy contw ,pdata 
+0x7ea9 036656 store 2 ,mem_hold_contw 
+0x7eaa 036657 copy contr ,pdata 
+0x7eab 036658 store 2 ,mem_hold_contr 
+0x7eac 036659 rtn 
+:      036660 load_cont_pointers:
+0x7ead 036661 fetch 2 ,mem_hold_contw 
+0x7eae 036662 copy pdata ,contw 
+0x7eaf 036663 fetch 2 ,mem_hold_contr 
+0x7eb0 036664 copy pdata ,contr 
+0x7eb1 036665 rtn 
+:      036667 memcpy96:
+0x7eb2 036668 call memcpy32 
+:      036669 memcpy64:
+0x7eb3 036670 call memcpy32 
+0x7eb4 036671 branch memcpy32 
+:      036672 memcpy12:
+0x7eb5 036673 call memcpy8 
+:      036674 memcpy4:
+0x7eb6 036675 ifetch 4 ,contr 
+0x7eb7 036676 istore 4 ,contw 
+0x7eb8 036677 rtn 
+:      036678 memcpy8:
+0x7eb9 036679 ifetch 8 ,contr 
+0x7eba 036680 istore 8 ,contw 
+0x7ebb 036681 rtn 
+:      036683 memcpy48:
+0x7ebc 036684 call memcpy16 
+:      036685 memcpy32:
+0x7ebd 036686 call memcpy8 
+:      036687 memcpy24:
+0x7ebe 036688 call memcpy8 
+:      036689 memcpy16:
+0x7ebf 036690 call memcpy8 
+0x7ec0 036691 branch memcpy8 
+:      036695 delay_10ms:
+0x7ec1 036696 arg 10 ,loopcnt 
+:      036697 delay_ms_wait:
+0x7ec2 036698 nop 12000 
+0x7ec3 036699 loop delay_ms_wait 
+0x7ec4 036700 rtn 
+:      036702 bn_zero:
+0x7ec5 036703 force 3 ,loopcnt 
+:      036704 memset0:
+0x7ec6 036705 force 0 ,pdata 
+:      036706 memset8:
+0x7ec7 036707 istore 8 ,contw 
+0x7ec8 036708 loop memset8 
+0x7ec9 036709 rtn 
+:      036711 memset0_8:
+0x7eca 036712 force 0 ,pdata 
+0x7ecb 036713 istore 8 ,contw 
+0x7ecc 036714 rtn 
+:      036715 memset0_4:
+0x7ecd 036716 force 0 ,pdata 
+0x7ece 036717 istore 4 ,contw 
+0x7ecf 036718 rtn 
+:      036720 clear_mem_256:
+0x7ed0 036721 force 4 ,loopcnt 
+0x7ed1 036722 branch memset0 
+:      036723 clear_mem_512:
+0x7ed2 036724 force 8 ,loopcnt 
+0x7ed3 036725 branch memset0 
+:      036727 clear_mem:
+0x7ed4 036728 deposit loopcnt 
+0x7ed5 036729 rtn blank 
+0x7ed6 036730 setarg 0 
+:      036731 clear_mem_loop:
+0x7ed7 036732 istore 1 ,contw 
+0x7ed8 036733 loop clear_mem_loop 
+0x7ed9 036734 rtn 
+:      036737 clear_temp_block:
+0x7eda 036738 arg 32 ,loopcnt 
+0x7edb 036739 arg mem_temp_block0 ,contw 
+0x7edc 036740 branch clear_mem 
+:      036742 xor_loop:
+0x7edd 036743 ifetch 4 ,regc 
+0x7ede 036744 ifetcht 4 ,rega 
+0x7edf 036745 ixor temp ,pdata 
+0x7ee0 036746 istore 4 ,contw 
+0x7ee1 036747 increase 4 ,rega 
+0x7ee2 036748 increase 4 ,regc 
+0x7ee3 036749 loop xor_loop 
+0x7ee4 036750 rtn 
+:      036754 inverse_data:
+0x7ee5 036755 bpatchx patch3f_3 ,mem_patch3f 
+0x7ee6 036756 copy loopcnt ,pdata 
+0x7ee7 036757 sub pdata ,1 ,null 
+0x7ee8 036758 rtn positive 
+0x7ee9 036759 iadd rega ,regb 
+0x7eea 036760 increase -1 ,regb 
+0x7eeb 036761 rshift loopcnt ,loopcnt 
+:      036762 inverse_loop:
+0x7eec 036763 ifetcht 1 ,rega 
+0x7eed 036764 ifetch 1 ,regb 
+0x7eee 036765 istore 1 ,rega 
+0x7eef 036766 istoret 1 ,regb 
+0x7ef0 036767 increase -1 ,regb 
+0x7ef1 036768 increase 1 ,rega 
+0x7ef2 036769 loop inverse_loop 
+0x7ef3 036770 rtn 
+:      036773 memcpy_fast:
+0x7ef4 036774 deposit loopcnt 
+0x7ef5 036775 rtn blank 
+:      036776 memcpy_fast_loop:
+0x7ef6 036777 increase -8 ,loopcnt 
+0x7ef7 036778 call memcpy8 ,positive 
+0x7ef8 036779 rtn zero 
+0x7ef9 036780 branch memcpy_fast_loop ,positive 
+0x7efa 036781 increase 8 ,loopcnt 
+:      036782 memcpy_fast_loop_four:
+0x7efb 036783 increase -4 ,loopcnt 
+0x7efc 036784 call memcpy4 ,positive 
+0x7efd 036785 rtn zero 
+0x7efe 036786 branch memcpy_fast_loop_four ,positive 
+0x7eff 036787 increase 4 ,loopcnt 
+0x7f00 036788 branch memcpy 
+:      036790 memcpy:
+0x7f01 036791 deposit loopcnt 
+0x7f02 036792 rtn blank 
+:      036793 memcpy_loop:
+0x7f03 036794 ifetch 1 ,contr 
+0x7f04 036795 istore 1 ,contw 
+0x7f05 036796 loop memcpy_loop 
+0x7f06 036797 rtn 
+:      036799 timer_stop:
+0x7f07 036800 setarg 0 
+:      036801 timer_init:
+0x7f08 036802 rshift clkn_bt ,temp 
+0x7f09 036803 storet 4 ,mem_last_clkn 
+0x7f0a 036804 arg mem_timers ,contw 
+0x7f0b 036805 iforce temp 
+0x7f0c 036806 lshift queue ,pdata 
+0x7f0d 036807 iadd contw ,contw 
+0x7f0e 036808 istoret 2 ,contw 
+0x7f0f 036809 bpatchx patch3f_4 ,mem_patch3f 
+0x7f10 036810 rtn 
+:      036812 timer_check_timeout:
+0x7f11 036813 arg 0x800 ,timeup 
+0x7f12 036814 lshift16 timeup ,timeup 
+0x7f13 036815 iadd timeup ,pdata 
+0x7f14 036816 rtn 
+:      036819 timer_reinit:
+0x7f15 036820 arg 0 ,queue 
+:      036821 timer_check:
+0x7f16 036822 bpatchx patch3f_5 ,mem_patch3f 
+0x7f17 036823 fetcht 4 ,mem_last_clkn 
+0x7f18 036824 rshift clkn_bt ,pdata 
+0x7f19 036825 store 4 ,mem_last_clkn 
+0x7f1a 036826 isub temp ,null 
+0x7f1b 036827 ncall timer_check_timeout ,positive 
+0x7f1c 036828 isub temp ,timeup 
+0x7f1d 036829 copy timeup ,temp 
+0x7f1e 036830 arg mem_timers ,contr 
+0x7f1f 036831 copy contr ,contw 
+0x7f20 036832 arg 16 ,loopcnt 
+:      036833 timer_loop:
+0x7f21 036834 ifetch 2 ,contr 
+0x7f22 036835 isub temp ,pdata 
+0x7f23 036836 branch timer_counting ,positive 
+0x7f24 036837 force 0 ,pdata 
+:      036838 timer_counting:
+0x7f25 036839 istore 2 ,contw 
+0x7f26 036840 loop timer_loop 
+0x7f27 036841 arg mem_timers ,contr 
+0x7f28 036842 lshift queue ,pdata 
+0x7f29 036843 iadd contr ,contr 
+0x7f2a 036844 ifetch 2 ,contr 
+0x7f2b 036845 rtn 
+:      036850 clk_add:
+0x7f2c 036851 iadd temp ,temp 
+0x7f2d 036852 copy temp ,loopcnt 
+0x7f2e 036853 setarg 3750 
+0x7f2f 036854 isub loopcnt ,pdata 
+0x7f30 036855 rtn positive 
+0x7f31 036856 sub pdata ,0 ,pdata 
+0x7f32 036857 rshift16 temp ,temp 
+0x7f33 036858 increase 1 ,temp 
+0x7f34 036859 lshift16 temp ,temp 
+0x7f35 036860 ior temp ,temp 
+0x7f36 036861 rtn 
+:      036863 clk_diff_rt:
+0x7f37 036864 call clk_diff 
+0x7f38 036865 branch clk2rt 
+:      036868 clk_diff:
+0x7f39 036869 disable user 
+0x7f3a 036870 isub temp ,pdata 
+0x7f3b 036871 branch clk_diff_pos ,positive 
+0x7f3c 036872 enable user 
+0x7f3d 036873 sub pdata ,0 ,pdata 
+:      036874 clk_diff_pos:
+0x7f3e 036875 rtnbit0 15 
+0x7f3f 036876 arg -61786 ,temp 
+0x7f40 036877 iadd temp ,pdata 
+0x7f41 036878 set0 64 ,pdata 
+0x7f42 036879 rtn 
+:      036881 clk2rt:
+0x7f43 036882 iforce contr 
+0x7f44 036883 rshift16 pdata ,pdata 
+0x7f45 036884 arg 3750 ,temp 
+0x7f46 036885 imul32 temp ,pdata 
+0x7f47 036886 iadd contr ,pdata 
+0x7f48 036887 rtn 
+:      036890 clk2lpo:
+0x7f49 036891 lshift8 pdata ,pdata 
+0x7f4a 036892 lshift4 pdata ,pdata 
+0x7f4b 036893 fetcht 3 ,mem_clks_per_lpo 
+0x7f4c 036894 idiv temp 
+0x7f4d 036895 call wait_div_end 
+0x7f4e 036896 quotient temp 
+0x7f4f 036897 rtn 
+:      036900 clk2bt:
+0x7f50 036901 arg 3750 ,temp 
+0x7f51 036902 idiv temp 
+0x7f52 036903 call wait_div_end 
+0x7f53 036904 quotient pdata 
+0x7f54 036905 lshift16 pdata ,pdata 
+0x7f55 036906 remainder temp 
+0x7f56 036907 ior temp ,temp 
+0x7f57 036908 rtn 
+:      036915 string2dec_from_uart:
+0x7f58 036916 arg 0 ,temp 
+:      036917 string2dec_from_uart_done:
+0x7f59 036918 copy temp ,regc 
+0x7f5a 036919 ifetch 1 ,contru 
+0x7f5b 036920 call uchar2dialog 
+0x7f5c 036921 copy regc ,temp 
+0x7f5d 036922 call swap 
+0x7f5e 036923 arg 10 ,regb 
+0x7f5f 036924 imul32 regb ,pdata 
+0x7f60 036925 iadd temp ,pdata 
+0x7f61 036926 copy pdata ,temp 
+0x7f62 036927 loop string2dec_from_uart_done 
+0x7f63 036928 rtn 
+:      036932 uchar2dialog:
+0x7f64 036933 arg 0x3a ,temp 
+0x7f65 036934 isub temp ,null 
+0x7f66 036935 nbranch uchar2dialog_number ,positive 
+0x7f67 036936 arg 0x61 ,temp 
+0x7f68 036937 isub temp ,null 
+0x7f69 036938 branch uchar2dialog_a2f ,positive 
+0x7f6a 036939 arg 0x37 ,temp 
+0x7f6b 036940 isub temp ,pdata 
+0x7f6c 036941 rtn 
+:      036942 uchar2dialog_number:
+0x7f6d 036943 arg 0x30 ,temp 
+0x7f6e 036944 isub temp ,pdata 
+0x7f6f 036945 rtn 
+:      036946 uchar2dialog_a2f:
+0x7f70 036947 arg 0x57 ,temp 
+0x7f71 036948 isub temp ,pdata 
+0x7f72 036949 rtn 
+:      036951 pn9:
+0x7f73 036952 copy temp ,alarm 
+0x7f74 036953 setarg 0x1ff 
+0x7f75 036954 force 0 ,regb 
+:      036955 pn9_loop:
+0x7f76 036956 rshift3 pdata ,rega 
+0x7f77 036957 rshift rega ,rega 
+0x7f78 036958 ixor rega ,rega 
+0x7f79 036959 isolate1 0 ,rega 
+0x7f7a 036960 setflag true ,9 ,pdata 
+0x7f7b 036961 rshift temp ,temp 
+0x7f7c 036962 isolate1 0 ,pdata 
+0x7f7d 036963 setflag true ,7 ,temp 
+0x7f7e 036964 rshift pdata ,pdata 
+0x7f7f 036965 increase 1 ,regb 
+0x7f80 036966 compare 0 ,regb ,0x7 
+0x7f81 036967 nbranch pn9_loop ,true 
+0x7f82 036968 istoret 1 ,contw 
+0x7f83 036969 loop pn9_loop 
+0x7f84 036970 copy alarm ,temp 
+0x7f85 036971 rtn 
+:      036974 wait_div_end:
+0x7f86 036975 rtn modone 
+0x7f87 036976 branch wait_div_end 
+:      036986 compare_loop:
+:      036987 string_compare:
+0x7f88 036988 ifetch 1 ,rega 
+0x7f89 036989 ifetcht 1 ,regb 
+0x7f8a 036990 isub temp ,null 
+0x7f8b 036991 nrtn zero 
+0x7f8c 036992 increase 1 ,rega 
+0x7f8d 036993 increase 1 ,regb 
+0x7f8e 036994 loop string_compare 
+0x7f8f 036995 force 0 ,null 
+0x7f90 036996 rtn 
+:      036999 ceiling:
+0x7f91 037000 isub temp ,null 
+0x7f92 037001 nrtn positive 
+0x7f93 037002 deposit temp 
+0x7f94 037003 rtn 
+:      037005 swap:
+0x7f95 037006 iadd temp ,pdata 
+0x7f96 037007 isub temp ,temp 
+0x7f97 037008 isub temp ,pdata 
+0x7f98 037009 rtn 
+:      037011 clean_mem:
+0x7f99 037012 arg 0x200 ,loopcnt 
+0x7f9a 037013 arg 0x4000 ,contw 
+0x7f9b 037014 branch memset0 
+:      037017 callback_func:
+0x7f9c 037018 rtn blank 
+0x7f9d 037019 copy pdata ,pc 
+:      037022 wait_uarttx:
+0x7f9e 037023 hfetch 2 ,core_uart_txitems 
+0x7f9f 037024 nbranch wait_uarttx ,blank 
+0x7fa0 037025 rtn 
+:      037027 ice_break:
+0x7fa1 037028 jam 0x1 ,core_ice_ctrl 
+0x7fa2 037029 rtn 
+:      037031 ice_setbp:
+0x7fa3 037032 hstore 2 ,core_ice_break0 
+0x7fa4 037033 hfetch 1 ,core_ice_ctrl 
+0x7fa5 037034 set1 4 ,pdata 
+0x7fa6 037035 hstore 1 ,core_ice_ctrl 
+0x7fa7 037036 rtn 
+:      037037 ice_setbp2:
+0x7fa8 037038 hstore 2 ,core_ice_break1 
+0x7fa9 037039 hfetch 1 ,core_ice_ctrl 
+0x7faa 037040 set1 6 ,pdata 
+0x7fab 037041 hstore 1 ,core_ice_ctrl 
+0x7fac 037042 rtn 
+:      037044 ice_set_write_bp:
+0x7fad 037045 hstore 2 ,core_ice_break0 
+0x7fae 037046 jam 0x30 ,core_ice_ctrl 
+0x7faf 037047 rtn 
+:      037051 test_enable_white:
+0x7fb0 037052 hfetch 1 ,core_config 
+0x7fb1 037053 set0 whiteoff_bit ,pdata 
+0x7fb2 037054 hstore 1 ,core_config 
+0x7fb3 037055 rtn 
+:      037057 check_uart_tx_buff:
+0x7fb4 037058 hfetch 2 ,core_uart_txitems 
+0x7fb5 037059 arg uart_air_control_threshold ,temp 
+:      037060 pdata_sub_temp:
+0x7fb6 037061 isub temp ,null 
+0x7fb7 037062 rtn 
+:      037068 fifo_in:
+0x7fb8 037069 bpatchx patch3f_6 ,mem_patch3f 
+0x7fb9 037070 ifetcht util_fifo_len ,rega 
+0x7fba 037071 and temp ,0xff ,pdata 
+0x7fbb 037072 nbranch fifo_in_push ,blank 
+0x7fbc 037073 rshift8 temp ,pdata 
+0x7fbd 037074 istore util_fifo_len ,rega 
+:      037075 fifo_in_push:
+0x7fbe 037076 increase util_fifo_len + util_fifo_offset ,rega 
+0x7fbf 037077 ifetch 1 ,rega 
+0x7fc0 037078 nbranch assert ,blank 
+0x7fc1 037079 fetch 1 ,mem_fifo_temp 
+0x7fc2 037080 istore 1 ,rega 
+0x7fc3 037081 rtn 
+:      037086 fifo_out:
+0x7fc4 037087 bpatchx patch3f_7 ,mem_patch3f 
+0x7fc5 037088 arg util_fifo_len ,loopcnt 
+0x7fc6 037089 ifetch util_fifo_len ,rega 
+0x7fc7 037090 rtn blank 
+:      037091 fifo_out_loop:
+0x7fc8 037092 ifetch 1 ,rega 
+0x7fc9 037093 nbranch fifo_out_end ,blank 
+0x7fca 037094 increase 1 ,rega 
+0x7fcb 037095 loop fifo_out_loop 
+0x7fcc 037096 branch assert 
+:      037097 fifo_out_end:
+0x7fcd 037098 arg 0 ,temp 
+0x7fce 037099 istoret 1 ,rega 
+0x7fcf 037100 rtn 
+:      037105 fifo_is_empty:
+0x7fd0 037106 ifetch util_fifo_len ,rega 
+0x7fd1 037107 rtn 
+:      037112 fifo_is_full:
+0x7fd2 037113 ifetch 1 ,rega 
+0x7fd3 037114 rtn 
+:      037117 fifo_is_near_full:
+0x7fd4 037118 ifetch 2 ,rega 
+0x7fd5 037119 rtn 
+:      037123 fifo_content_count:
+0x7fd6 037124 arg 0 ,temp 
+:      037125 fifo_content_count_loop:
+0x7fd7 037126 fetch 1 ,contr 
+0x7fd8 037127 loop fifo_content_count_loop ,blank 
+0x7fd9 037128 increase 1 ,temp 
+0x7fda 037129 loop fifo_content_count_loop 
+0x7fdb 037130 copy temp ,pdata 
+0x7fdc 037131 rtn 
+:      037133 not_greater_than:
+0x7fdd 037134 isub temp ,null 
+0x7fde 037135 nrtn positive 
+0x7fdf 037136 copy temp ,pdata 
+0x7fe0 037137 rtn 
+:      037140 disable_positive:
+0x7fe1 037141 force -1 ,null 
+0x7fe2 037142 rtn 
+:      037143 enable_positive:
+:      037144 disable_zero:
+0x7fe3 037145 force 1 ,null 
+0x7fe4 037146 rtn 
+:      037147 enable_zero:
+0x7fe5 037148 force 0 ,null 
+0x7fe6 037149 rtn 
+:      037151 enable_user:
+0x7fe7 037152 enable user 
+0x7fe8 037153 rtn 
+:      037155 disable_user:
+0x7fe9 037156 disable user 
+0x7fea 037157 rtn 
+:      037159 enable_user2:
+0x7feb 037160 enable user2 
+0x7fec 037161 rtn 
+:      037163 disable_user2:
+0x7fed 037164 disable user2 
+0x7fee 037165 rtn 
+:      037167 disable_blank:
+0x7fef 037168 setarg 1 
+0x7ff0 037169 rtn 
+:      037171 enable_blank:
+0x7ff1 037172 setarg 0 
+0x7ff2 037173 rtn 
+:      037176 reverse_byte:
+0x7ff3 037177 copy loopcnt ,pdata 
+0x7ff4 037178 rtn blank 
+0x7ff5 037179 copy contr ,pdata 
+0x7ff6 037180 iadd loopcnt ,pdata 
+0x7ff7 037181 increase -1 ,pdata 
+0x7ff8 037182 copy pdata ,contr 
+:      037183 reverse_loop:
+0x7ff9 037184 ifetch 1 ,contr 
+0x7ffa 037185 increase -2 ,contr 
+0x7ffb 037186 istore 1 ,contw 
+0x7ffc 037187 loop reverse_loop 
+0x7ffd 037188 rtn 
               org 0x10001
-:      037184 z_entrance0:
-0x10001 037185 beq zcode_01 ,z_mouse_bb_disconnected
-0x10002 037186 beq zcode_00 ,z_page_wait_fhs_reply_ok
-0x10003 037187 beq zcode_02 ,z_hid_rx_process
-0x10004 037188 rtn
-:      037190 z_mouse_bb_disconnected:
-0x10005 037191 jam 0 ,mem_mouse_enter_sniff_count
-0x10006 037192 jam 0x0e ,mem_sniff_param_interval
-0x10007 037193 call mouse_bb_discon_clear_stack
-0x10008 037194 fetch app_disc_rsn_size ,mem_app_disconn_reason
-0x10009 037195 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn
-0x1000a 037196 bbit1 app_disc_by_button ,app_disconn_reason_clear
-0x1000b 037197 bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing
-0x1000c 037198 bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate
-0x1000d 037199 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
-0x1000e 037200 branch mouse_start_discovery
-:      037202 z_mouse_event_light_state_pairing:
-0x1000f 037203 bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate
-0x10010 037204 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
-0x10011 037205 branch mouse_start_discovery
-:      037206 z_mouse_event_light_state_hibernate:
-0x10012 037207 fetch 2 ,mem_ui_state_map
-0x10013 037208 bbit1 ui_state_btn_down ,mouse_start_discovery
-0x10014 037209 call app_disconn_reason_clear
-0x10015 037210 call p_mouse_check_key_gpio
-0x10016 037211 beq mouse_lmr_button ,z_mouse_null_enter_hibernate_enable
-0x10017 037212 fetch 1 ,mem_mouse_dpi_button_state
-0x10018 037213 branch z_mouse_null_enter_hibernate_enable ,blank
-0x10019 037214 branch app_bb_hibernate
-:      037216 z_mouse_null_enter_hibernate_enable:
-0x1001a 037217 jam 1 ,mem_mouse_null_enter_hibernate_flag
-0x1001b 037218 jam 40 ,mem_mouse_null_enter_hibernate_timer
-0x1001c 037219 rtn
-:      037221 z_page_wait_fhs_reply_ok:
-0x1001d 037222 fetch 1 ,mem_page_rcv_fhs
-0x1001e 037223 increase 1 ,pdata
-0x1001f 037224 store 1 ,mem_page_rcv_fhs
-0x10020 037225 call prepare_newconn
-:      037226 z_master_newconn_loop:
-0x10021 037227 set1 mark_first_packet ,mark
-0x10022 037228 call master_newconn_once
-0x10023 037229 branch z_newconn_poll_responded ,sync
-0x10024 037230 set0 mark_first_packet ,mark
-0x10025 037231 call new_conn_timeout
-0x10026 037232 nbranch z_master_newconn_loop ,blank
-0x10027 037233 branch page_restart
-:      037234 z_newconn_poll_responded:
-0x10028 037235 set0 mark_first_packet ,mark
-0x10029 037236 branch newconn_poll_responded
-:      037238 z_hid_rx_process:
-0x1002a 037239 fetch 2 ,mem_l2cap_payload_ptr
-0x1002b 037240 copy pdata ,contr
-0x1002c 037241 ifetch 1 ,contr
-0x1002d 037242 store 1 ,mem_l2cap_rcv
-0x1002e 037243 and pdata ,0x0f ,temp
-0x1002f 037244 rshift4 pdata ,pdata
-0x10030 037245 beq hid_type_set_protocol ,z_hid_rx_set_protocol
-0x10031 037246 beq hid_type_control ,z_hid_rx_process_hid_control
-0x10032 037247 branch hid_rx_process + 6
-:      037248 z_hid_rx_set_protocol:
-0x10033 037249 call hid_rx_process_handshake
-0x10034 037250 jam 0 ,mem_mouse_bt_boot_mode
-0x10035 037251 fetch 1 ,mem_l2cap_rcv
-0x10036 037252 isolate1 0 ,pdata
-0x10037 037253 rtn true
-0x10038 037254 jam 1 ,mem_mouse_bt_boot_mode
-0x10039 037255 rtn
-:      037257 z_hid_rx_process_hid_control:
-0x1003a 037258 copy temp ,pdata
-0x1003b 037259 beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug
-0x1003c 037260 branch hid_rx_process_hid_control + 2
+:      037193 z_entrance0:
+0x10001 037194 beq zcode_01 ,z_mouse_bb_disconnected
+0x10002 037195 beq zcode_00 ,z_page_wait_fhs_reply_ok
+0x10003 037196 beq zcode_02 ,z_hid_rx_process
+0x10004 037197 rtn
+:      037199 z_mouse_bb_disconnected:
+0x10005 037200 jam 0 ,mem_mouse_enter_sniff_count
+0x10006 037201 jam 0x0e ,mem_sniff_param_interval
+0x10007 037202 call mouse_bb_discon_clear_stack
+0x10008 037203 fetch app_disc_rsn_size ,mem_app_disconn_reason
+0x10009 037204 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn
+0x1000a 037205 bbit1 app_disc_by_button ,app_disconn_reason_clear
+0x1000b 037206 bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing
+0x1000c 037207 bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate
+0x1000d 037208 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x1000e 037209 branch mouse_start_discovery
+:      037211 z_mouse_event_light_state_pairing:
+0x1000f 037212 bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate
+0x10010 037213 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x10011 037214 branch mouse_start_discovery
+:      037215 z_mouse_event_light_state_hibernate:
+0x10012 037216 fetch 2 ,mem_ui_state_map
+0x10013 037217 bbit1 ui_state_btn_down ,mouse_start_discovery
+0x10014 037218 call app_disconn_reason_clear
+0x10015 037219 call p_mouse_check_key_gpio
+0x10016 037220 beq mouse_lmr_button ,z_mouse_null_enter_hibernate_enable
+0x10017 037221 fetch 1 ,mem_mouse_dpi_button_state
+0x10018 037222 branch z_mouse_null_enter_hibernate_enable ,blank
+0x10019 037223 branch app_bb_hibernate
+:      037225 z_mouse_null_enter_hibernate_enable:
+0x1001a 037226 jam 1 ,mem_mouse_null_enter_hibernate_flag
+0x1001b 037227 jam 40 ,mem_mouse_null_enter_hibernate_timer
+0x1001c 037228 rtn
+:      037230 z_page_wait_fhs_reply_ok:
+0x1001d 037231 fetch 1 ,mem_page_rcv_fhs
+0x1001e 037232 increase 1 ,pdata
+0x1001f 037233 store 1 ,mem_page_rcv_fhs
+0x10020 037234 call prepare_newconn
+:      037235 z_master_newconn_loop:
+0x10021 037236 set1 mark_first_packet ,mark
+0x10022 037237 call master_newconn_once
+0x10023 037238 branch z_newconn_poll_responded ,sync
+0x10024 037239 set0 mark_first_packet ,mark
+0x10025 037240 call new_conn_timeout
+0x10026 037241 nbranch z_master_newconn_loop ,blank
+0x10027 037242 branch page_restart
+:      037243 z_newconn_poll_responded:
+0x10028 037244 set0 mark_first_packet ,mark
+0x10029 037245 branch newconn_poll_responded
+:      037247 z_hid_rx_process:
+0x1002a 037248 fetch 2 ,mem_l2cap_payload_ptr
+0x1002b 037249 copy pdata ,contr
+0x1002c 037250 ifetch 1 ,contr
+0x1002d 037251 store 1 ,mem_l2cap_rcv
+0x1002e 037252 and pdata ,0x0f ,temp
+0x1002f 037253 rshift4 pdata ,pdata
+0x10030 037254 beq hid_type_set_protocol ,z_hid_rx_set_protocol
+0x10031 037255 beq hid_type_control ,z_hid_rx_process_hid_control
+0x10032 037256 branch hid_rx_process + 6
+:      037257 z_hid_rx_set_protocol:
+0x10033 037258 call hid_rx_process_handshake
+0x10034 037259 jam 0 ,mem_mouse_bt_boot_mode
+0x10035 037260 fetch 1 ,mem_l2cap_rcv
+0x10036 037261 isolate1 0 ,pdata
+0x10037 037262 rtn true
+0x10038 037263 jam 1 ,mem_mouse_bt_boot_mode
+0x10039 037264 rtn
+:      037266 z_hid_rx_process_hid_control:
+0x1003a 037267 copy temp ,pdata
+0x1003b 037268 beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug
+0x1003c 037269 branch hid_rx_process_hid_control + 2
               org 0x20001
-:      037264 z_entrance1:
-0x20001 037265 beq zcode_10 ,z_send_lmp_escape
-0x20002 037266 beq zcode_11 ,z_send_lmp_accepted
-0x20003 037267 beq zcode_12 ,z_mouse4_0_check_reconn_target
-0x20004 037268 rtn
-:      037270 z_mouse4_0_check_reconn_target:
-0x20005 037271 jam 1 ,mem_le_send_security_request_flag
-0x20006 037272 jam 1 ,mem_mouse_le_reconnect_flag
-0x20007 037273 fetch 2 ,mem_mouse_direct_timeout
-0x20008 037274 store 2 ,mem_mouse_direct_timer
-0x20009 037275 call p_mouse_store_eeprom_enable
-0x2000a 037276 call app_lpm_mult_disable
-0x2000b 037277 arg mem_le_scan_data ,contr
-0x2000c 037278 call p_le_adv_data_update
-0x2000d 037279 branch check_51cmd_adv
-:      037281 z_send_lmp_escape:
-0x2000e 037282 fetch 1 ,mem_lmp_to_send
-0x2000f 037283 beq lmp_ext_features_res ,z_send_lmpext_features_res
-0x20010 037284 beq lmp_ext_features_req ,z_send_lmpext_features_req
-0x20011 037285 branch send_lmp_escape
-:      037286 z_send_lmpext_features_res:
-0x20012 037287 call z_check_ssp_enable
-0x20013 037288 fetch 1 ,mem_lmp_to_send
-0x20014 037289 branch send_lmpext_features_res
-:      037290 z_send_lmpext_features_req:
-0x20015 037291 call z_check_ssp_enable
-0x20016 037292 fetch 1 ,mem_lmp_to_send
-0x20017 037293 branch send_lmpext_features_req
-:      037294 z_check_ssp_enable:
-0x20018 037295 fetch 1 ,mem_ssp_enable
-0x20019 037296 branch ssp_disable ,blank
-0x2001a 037297 branch ssp_enable
-:      037299 z_send_lmp_accepted:
-0x2001b 037300 force 2 ,pdata
-0x2001c 037301 call msg_send_lmp
-0x2001d 037302 fetch 1 ,mem_lmi_opcode
-0x2001e 037303 istore 1 ,contw
-0x2001f 037304 store 1 ,mem_lmi_opcode_temp
-0x20020 037305 call send_lmp_follow
-0x20021 037306 fetch 1 ,mem_lmi_opcode_temp
-0x20022 037307 beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
-0x20023 037308 branch send_lmp_accepted + 7
-:      037310 z_send_lmp_accepted_max_slot_req:
-0x20024 037311 fetch 1 ,mem_bt_rcvd_switch_req_accept
-0x20025 037312 rtn blank
-0x20026 037313 jam 0 ,mem_bt_rcvd_switch_req_accept
-0x20027 037314 fetch 1 ,mem_bt_send_lmp_setup_complete
-0x20028 037315 rtnne 2
-0x20029 037316 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
-0x2002a 037317 copy clkn_bt ,pdata
-0x2002b 037318 store 4 ,mem_aurand_send_delay_time
-0x2002c 037319 rtn
+:      037273 z_entrance1:
+0x20001 037274 beq zcode_10 ,z_send_lmp_escape
+0x20002 037275 beq zcode_11 ,z_send_lmp_accepted
+0x20003 037276 beq zcode_12 ,z_mouse4_0_check_reconn_target
+0x20004 037277 rtn
+:      037279 z_mouse4_0_check_reconn_target:
+0x20005 037280 jam 1 ,mem_le_send_security_request_flag
+0x20006 037281 jam 1 ,mem_mouse_le_reconnect_flag
+0x20007 037282 fetch 2 ,mem_mouse_direct_timeout
+0x20008 037283 store 2 ,mem_mouse_direct_timer
+0x20009 037284 call p_mouse_store_eeprom_enable
+0x2000a 037285 call app_lpm_mult_disable
+0x2000b 037286 arg mem_le_scan_data ,contr
+0x2000c 037287 call p_le_adv_data_update
+0x2000d 037288 branch check_51cmd_adv
+:      037290 z_send_lmp_escape:
+0x2000e 037291 fetch 1 ,mem_lmp_to_send
+0x2000f 037292 beq lmp_ext_features_res ,z_send_lmpext_features_res
+0x20010 037293 beq lmp_ext_features_req ,z_send_lmpext_features_req
+0x20011 037294 branch send_lmp_escape
+:      037295 z_send_lmpext_features_res:
+0x20012 037296 call z_check_ssp_enable
+0x20013 037297 fetch 1 ,mem_lmp_to_send
+0x20014 037298 branch send_lmpext_features_res
+:      037299 z_send_lmpext_features_req:
+0x20015 037300 call z_check_ssp_enable
+0x20016 037301 fetch 1 ,mem_lmp_to_send
+0x20017 037302 branch send_lmpext_features_req
+:      037303 z_check_ssp_enable:
+0x20018 037304 fetch 1 ,mem_ssp_enable
+0x20019 037305 branch ssp_disable ,blank
+0x2001a 037306 branch ssp_enable
+:      037308 z_send_lmp_accepted:
+0x2001b 037309 force 2 ,pdata
+0x2001c 037310 call msg_send_lmp
+0x2001d 037311 fetch 1 ,mem_lmi_opcode
+0x2001e 037312 istore 1 ,contw
+0x2001f 037313 store 1 ,mem_lmi_opcode_temp
+0x20020 037314 call send_lmp_follow
+0x20021 037315 fetch 1 ,mem_lmi_opcode_temp
+0x20022 037316 beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
+0x20023 037317 branch send_lmp_accepted + 7
+:      037319 z_send_lmp_accepted_max_slot_req:
+0x20024 037320 fetch 1 ,mem_bt_rcvd_switch_req_accept
+0x20025 037321 rtn blank
+0x20026 037322 jam 0 ,mem_bt_rcvd_switch_req_accept
+0x20027 037323 fetch 1 ,mem_bt_send_lmp_setup_complete
+0x20028 037324 rtnne 2
+0x20029 037325 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x2002a 037326 copy clkn_bt ,pdata
+0x2002b 037327 store 4 ,mem_aurand_send_delay_time
+0x2002c 037328 rtn
               org 0x30001
-:      037323 z_entrance2:
-0x30001 037324 beq zcode_20 ,z_le_update_param
-0x30002 037325 beq zcode_21 ,z_le_update_channel_map
-0x30003 037326 beq zcode_22 ,z_le_mouse_bb_event_connect_complete
-0x30004 037327 beq zcode_23 ,z_quit_connection_cont
-0x30005 037328 rtn
-:      037330 z_le_update_param:
-0x30006 037331 call z_mouse_le_conn_param_check
-0x30007 037332 branch le_update_param + 8
-:      037333 z_mouse_le_lpm_mult_reinit:
-0x30008 037334 fetch 1 ,mem_lpm_mult_init
-0x30009 037335 store 1 ,mem_lpm_mult
-:      037336 z_mouse_le_conn_param_lpm_enable:
-0x3000a 037337 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
-0x3000b 037338 rtn
-:      037339 z_mouse_le_conn_param_lpm_disable:
-0x3000c 037340 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
-0x3000d 037341 rtn
-:      037342 z_mouse_le_conn_param_check:
-0x3000e 037343 fetch 1 ,mem_le_new_conninterval
-0x3000f 037344 sub pdata ,le_interval_15ms ,null
-0x30010 037345 nbranch z_mouse_le_conn_param_lpm_disable ,positive
-0x30011 037346 fetch 1 ,mem_le_new_connslavelatency
-0x30012 037347 fetcht 1 ,mem_lpm_mult_init
-0x30013 037348 isub temp ,null
-0x30014 037349 branch z_mouse_le_lpm_mult_reinit ,positive
-0x30015 037350 fetch 1 ,mem_le_new_connslavelatency
-0x30016 037351 store 1 ,mem_lpm_mult
-0x30017 037352 branch z_mouse_le_conn_param_lpm_enable
-:      037354 z_le_update_channel_map:
-0x30018 037355 fetch 1 ,mem_le_state
-0x30019 037356 rtnbit0 lestate_update_map
-0x3001a 037357 call z_le_channel_map_overflow_check
-0x3001b 037358 nrtn user
-0x3001c 037359 branch le_update_channel_map + 3
-:      037360 z_le_channel_map_overflow_check:
-0x3001d 037361 enable user
-0x3001e 037362 fetch 1 ,mem_le_event_count + 1
-0x3001f 037363 rshift4 pdata ,pdata
-0x30020 037364 rtnne 0x0f
-0x30021 037365 fetch 1 ,mem_le_instant + 1
-0x30022 037366 rshift4 pdata ,pdata
-0x30023 037367 rtnne 0x00
-0x30024 037368 branch disable_user
-:      037370 z_le_mouse_bb_event_connect_complete:
-0x30025 037371 fetch 1 ,mem_mouse_le_reconnect_flag
-0x30026 037372 nrtn blank
-0x30027 037373 fetch 1 ,mem_le_att_handle
-0x30028 037374 sub pdata ,26 ,pdata
-0x30029 037375 nrtn zero
-0x3002a 037376 jam 0 ,mem_le_start_encrypt_timer
-0x3002b 037377 branch mouse_le_write_enable
-:      037379 z_quit_connection_cont:
-0x3002c 037380 call app_disconn_reason_collect_bt
-0x3002d 037381 call sniff_exit
-0x3002e 037382 jam bt_evt_bb_disconnected ,mem_fifo_temp
-0x3002f 037383 call ui_ipc_send_event
-0x30030 037384 call init_lmp_work
-0x30031 037385 call l2cap_init_work
-0x30032 037386 branch quit_connection_cont + 8
+:      037332 z_entrance2:
+0x30001 037333 beq zcode_20 ,z_le_update_param
+0x30002 037334 beq zcode_21 ,z_le_update_channel_map
+0x30003 037335 beq zcode_22 ,z_le_mouse_bb_event_connect_complete
+0x30004 037336 beq zcode_23 ,z_quit_connection_cont
+0x30005 037337 rtn
+:      037339 z_le_update_param:
+0x30006 037340 call z_mouse_le_conn_param_check
+0x30007 037341 branch le_update_param + 8
+:      037342 z_mouse_le_lpm_mult_reinit:
+0x30008 037343 fetch 1 ,mem_lpm_mult_init
+0x30009 037344 store 1 ,mem_lpm_mult
+:      037345 z_mouse_le_conn_param_lpm_enable:
+0x3000a 037346 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0x3000b 037347 rtn
+:      037348 z_mouse_le_conn_param_lpm_disable:
+0x3000c 037349 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0x3000d 037350 rtn
+:      037351 z_mouse_le_conn_param_check:
+0x3000e 037352 fetch 1 ,mem_le_new_conninterval
+0x3000f 037353 sub pdata ,le_interval_15ms ,null
+0x30010 037354 nbranch z_mouse_le_conn_param_lpm_disable ,positive
+0x30011 037355 fetch 1 ,mem_le_new_connslavelatency
+0x30012 037356 fetcht 1 ,mem_lpm_mult_init
+0x30013 037357 isub temp ,null
+0x30014 037358 branch z_mouse_le_lpm_mult_reinit ,positive
+0x30015 037359 fetch 1 ,mem_le_new_connslavelatency
+0x30016 037360 store 1 ,mem_lpm_mult
+0x30017 037361 branch z_mouse_le_conn_param_lpm_enable
+:      037363 z_le_update_channel_map:
+0x30018 037364 fetch 1 ,mem_le_state
+0x30019 037365 rtnbit0 lestate_update_map
+0x3001a 037366 call z_le_channel_map_overflow_check
+0x3001b 037367 nrtn user
+0x3001c 037368 branch le_update_channel_map + 3
+:      037369 z_le_channel_map_overflow_check:
+0x3001d 037370 enable user
+0x3001e 037371 fetch 1 ,mem_le_event_count + 1
+0x3001f 037372 rshift4 pdata ,pdata
+0x30020 037373 rtnne 0x0f
+0x30021 037374 fetch 1 ,mem_le_instant + 1
+0x30022 037375 rshift4 pdata ,pdata
+0x30023 037376 rtnne 0x00
+0x30024 037377 branch disable_user
+:      037379 z_le_mouse_bb_event_connect_complete:
+0x30025 037380 fetch 1 ,mem_mouse_le_reconnect_flag
+0x30026 037381 nrtn blank
+0x30027 037382 fetch 1 ,mem_le_att_handle
+0x30028 037383 sub pdata ,26 ,pdata
+0x30029 037384 nrtn zero
+0x3002a 037385 jam 0 ,mem_le_start_encrypt_timer
+0x3002b 037386 branch mouse_le_write_enable
+:      037388 z_quit_connection_cont:
+0x3002c 037389 call app_disconn_reason_collect_bt
+0x3002d 037390 call sniff_exit
+0x3002e 037391 jam bt_evt_bb_disconnected ,mem_fifo_temp
+0x3002f 037392 call ui_ipc_send_event
+0x30030 037393 call init_lmp_work
+0x30031 037394 call l2cap_init_work
+0x30032 037395 branch quit_connection_cont + 8
               org 0x40001
-:      037390 z_entrance3:
-0x40001 037391 beq zcode_30 ,z_mouse_start_discovery
-0x40002 037392 rtn
-:      037394 z_mouse_start_discovery:
-0x40003 037395 call p_mouse_tx_power_init
-0x40004 037396 jam 0 ,mem_le_send_security_request_flag
-0x40005 037397 jam 1 ,mem_mouse_start_discovery_enable
-0x40006 037398 jam mode_bt_device1 ,mem_device_flag
-0x40007 037399 jam 0 ,mem_mouse_clear_sensor_data_flag
-:      037400 z_mouse_start_discovery_norandom:
-0x40008 037401 fetch 6 ,mem_le_normal_lap
-0x40009 037402 store 6 ,mem_le_lap
-0x4000a 037403 call p_mouse_fast_conn_disable
-0x4000b 037404 call app_lpm_mult_disable
-0x4000c 037405 fetch 2 ,mem_discovery_timeout
-0x4000d 037406 store 2 ,mem_mouse_discovery_timer
-0x4000e 037407 jam 6 ,mem_connection_options
-0x4000f 037408 setarg 0
-0x40010 037409 store 2 ,mem_mouse_no_data_timer
-0x40011 037410 store 2 ,mem_mouse_direct_timer
-0x40012 037411 call p_mouse_store_eeprom_enable
-0x40013 037412 call mouse_bt_discovery_button_down_disable
-0x40014 037414 call p_mouse_load_flash_device_info
-0x40015 037415 fetch 1 ,mem_xrecord_mode
-0x40016 037416 sub pdata ,rec_3_mode ,null
-0x40017 037417 call z3_check_51cmd_adv ,zero
-0x40018 037419 fetch 1 ,mem_mouse_le_adv_start
-0x40019 037420 ncall z3_check_51cmd_adv ,blank
-0x4001a 037422 fetch 1 ,mem_device_option
-0x4001b 037423 isolate1 mode_3_mouse ,pdata
-0x4001c 037424 call check_51cmd_start_discovery ,true
-0x4001d 037426 rtn
-:      037429 z3_check_51cmd_adv:
-0x4001e 037430 fetch 6 ,mem_le_normal_lap
-0x4001f 037431 store 6 ,mem_le_lap
-0x40020 037432 call p_mouse_le_adv_data_update
-0x40021 037433 branch check_51cmd_adv
+:      037399 z_entrance3:
+0x40001 037400 beq zcode_30 ,z_mouse_start_discovery
+0x40002 037401 rtn
+:      037403 z_mouse_start_discovery:
+0x40003 037404 call p_mouse_tx_power_init
+0x40004 037405 jam 0 ,mem_le_send_security_request_flag
+0x40005 037406 jam 1 ,mem_mouse_start_discovery_enable
+0x40006 037407 jam mode_bt_device1 ,mem_device_flag
+0x40007 037408 jam 0 ,mem_mouse_clear_sensor_data_flag
+:      037409 z_mouse_start_discovery_norandom:
+0x40008 037410 fetch 6 ,mem_le_normal_lap
+0x40009 037411 store 6 ,mem_le_lap
+0x4000a 037412 call p_mouse_fast_conn_disable
+0x4000b 037413 call app_lpm_mult_disable
+0x4000c 037414 fetch 2 ,mem_discovery_timeout
+0x4000d 037415 store 2 ,mem_mouse_discovery_timer
+0x4000e 037416 jam 6 ,mem_connection_options
+0x4000f 037417 setarg 0
+0x40010 037418 store 2 ,mem_mouse_no_data_timer
+0x40011 037419 store 2 ,mem_mouse_direct_timer
+0x40012 037420 call p_mouse_store_eeprom_enable
+0x40013 037421 call mouse_bt_discovery_button_down_disable
+0x40014 037423 call p_mouse_load_flash_device_info
+0x40015 037424 fetch 1 ,mem_xrecord_mode
+0x40016 037425 sub pdata ,rec_3_mode ,null
+0x40017 037426 call z3_check_51cmd_adv ,zero
+0x40018 037428 fetch 1 ,mem_mouse_le_adv_start
+0x40019 037429 ncall z3_check_51cmd_adv ,blank
+0x4001a 037431 fetch 1 ,mem_device_option
+0x4001b 037432 isolate1 mode_3_mouse ,pdata
+0x4001c 037433 call check_51cmd_start_discovery ,true
+0x4001d 037435 rtn
+:      037438 z3_check_51cmd_adv:
+0x4001e 037439 fetch 6 ,mem_le_normal_lap
+0x4001f 037440 store 6 ,mem_le_lap
+0x40020 037441 call p_mouse_le_adv_data_update
+0x40021 037442 branch check_51cmd_adv
               org 0x50001
-:      037437 z_entrance4:
-0x50001 037438 beq zcode_40 ,z_g24_start_24g_mode
-0x50002 037439 beq zcode_41 ,z_g24_auto_pair_start
-0x50003 037440 beq zcode_42 ,z_mouse_24g_pairing_button
-0x50004 037441 rtn
-:      037443 z_g24_start_24g_mode:
-0x50005 037444 call z_g24_factory_check
-0x50006 037445 branch p_g24_auto_pair_start ,user
-0x50007 037446 set1 mark_24g ,mark
-0x50008 037447 fetch 1 ,mem_24g_conn_sm
-0x50009 037448 set1 state_24g_reconn ,pdata
-0x5000a 037449 store 1 ,mem_24g_conn_sm
-0x5000b 037450 call p_g24_syncword_crc8
-0x5000c 037451 call p_g24_ch
-0x5000d 037452 branch z_g24_auto_pair_timeout_init
-:      037454 z_g24_factory_check:
-0x5000e 037455 arg 2 ,loopcnt
-0x5000f 037456 arg mem_24g_addr ,contr
-0x50010 037457 call enable_user
-0x50011 037458 setarg 0xffff
-:      037459 z4_pdata_0xff_check_loop:
-0x50012 037460 ifetcht 2 ,contr
-0x50013 037461 isub temp ,null
-0x50014 037462 ncall disable_user ,zero
-0x50015 037463 loop z4_pdata_0xff_check_loop
-0x50016 037464 rtn
-:      037466 z_g24_auto_pair_start:
-0x50017 037467 set1 mark_24g ,mark
-0x50018 037468 fetch 1 ,mem_24g_conn_sm
-0x50019 037469 set1 state_24g_pair ,pdata
-0x5001a 037470 store 1 ,mem_24g_conn_sm
-:      037471 z_g24_auto_pair_timeout_init:
-0x5001b 037472 setarg g24_first_disconn_nodata_timer
-0x5001c 037473 store 2 ,mem_24g_stop_g24_mode_timeout
-0x5001d 037474 jam 0 ,mem_24g_stop_g24_mode
-0x5001e 037475 rtn
-:      037477 z_mouse_24g_pairing_button:
-0x5001f 037478 fetch mouse_flag_len ,mem_mouse_flag
-0x50020 037479 rtnbit0 mouse_enable_24g
-0x50021 037480 rtnbit1 mosue_24g_pairing_flag
-0x50022 037481 rtnmark1 mark_24g
-0x50023 037482 call mouse_devce_led_off
-0x50024 037483 arg mosue_24g_pairing_flag ,queue
-0x50025 037484 call mouse_enable_function_flag
-0x50026 037485 setarg 0
-0x50027 037486 store 2 ,mem_mouse_direct_timer
-0x50028 037487 store 1 ,mem_mouse_send_blank_timer
-0x50029 037488 store 2 ,mem_24g_check_dongle_times
-0x5002a 037489 call mouse_stop_discovery
-0x5002b 037490 branch p_g24_auto_pair_start
+:      037446 z_entrance4:
+0x50001 037447 beq zcode_40 ,z_g24_start_24g_mode
+0x50002 037448 beq zcode_41 ,z_g24_auto_pair_start
+0x50003 037449 beq zcode_42 ,z_mouse_24g_pairing_button
+0x50004 037450 rtn
+:      037452 z_g24_start_24g_mode:
+0x50005 037453 call z_g24_factory_check
+0x50006 037454 branch p_g24_auto_pair_start ,user
+0x50007 037455 set1 mark_24g ,mark
+0x50008 037456 fetch 1 ,mem_24g_conn_sm
+0x50009 037457 set1 state_24g_reconn ,pdata
+0x5000a 037458 store 1 ,mem_24g_conn_sm
+0x5000b 037459 call p_g24_syncword_crc8
+0x5000c 037460 call p_g24_ch
+0x5000d 037461 fetch 1 ,mem_power_on_flag
+0x5000e 037462 bbit1 2 ,z_g24_auto_fail_timeout_init
+0x5000f 037463 branch z_g24_auto_pair_timeout_init
+:      037465 z_g24_factory_check:
+0x50010 037466 arg 2 ,loopcnt
+0x50011 037467 arg mem_24g_addr ,contr
+0x50012 037468 call enable_user
+0x50013 037469 setarg 0xffff
+:      037470 z4_pdata_0xff_check_loop:
+0x50014 037471 ifetcht 2 ,contr
+0x50015 037472 isub temp ,null
+0x50016 037473 ncall disable_user ,zero
+0x50017 037474 loop z4_pdata_0xff_check_loop
+0x50018 037475 rtn
+:      037477 z_g24_auto_pair_start:
+0x50019 037478 set1 mark_24g ,mark
+0x5001a 037479 fetch 1 ,mem_24g_conn_sm
+0x5001b 037480 set1 state_24g_pair ,pdata
+0x5001c 037481 store 1 ,mem_24g_conn_sm
+:      037482 z_g24_auto_fail_timeout_init:
+0x5001d 037483 call p_mouse_sensor_powerdown
+0x5001e 037484 setarg g24_disconn_nodata_timer
+0x5001f 037485 store 2 ,mem_24g_stop_g24_pair_mode_timerout
+0x50020 037486 jam 0 ,mem_24g_stop_g24_mode
+0x50021 037487 rtn
+:      037488 z_g24_auto_pair_timeout_init:
+0x50022 037489 setarg g24_first_disconn_nodata_timer
+0x50023 037490 store 2 ,mem_24g_stop_g24_mode_timeout
+0x50024 037491 jam 0 ,mem_24g_stop_g24_mode
+0x50025 037492 rtn
+:      037494 z_mouse_24g_pairing_button:
+0x50026 037495 fetch mouse_flag_len ,mem_mouse_flag
+0x50027 037496 rtnbit0 mouse_enable_24g
+0x50028 037497 rtnbit1 mosue_24g_pairing_flag
+0x50029 037498 rtnmark1 mark_24g
+0x5002a 037499 call mouse_devce_led_off
+0x5002b 037500 arg mosue_24g_pairing_flag ,queue
+0x5002c 037501 call mouse_enable_function_flag
+0x5002d 037502 setarg 0
+0x5002e 037503 store 2 ,mem_mouse_direct_timer
+0x5002f 037504 store 1 ,mem_mouse_send_blank_timer
+0x50030 037505 store 2 ,mem_24g_check_dongle_times
+0x50031 037506 call mouse_stop_discovery
+0x50032 037507 branch p_g24_auto_pair_start
               org 0x60001
-:      037495 z_entrance5:
-0x60001 037497 beq zcode_51 ,z_mouse_24g_attempt_fail
-0x60002 037498 beq zcode_52 ,z_mouse_24g_attempt_success
-0x60003 037499 beq zcode_53 ,z_g24_reconn_dispatch
-:      037500 z_mouse_24g_pairing_complete:
-0x60004 037501 arg mosue_24g_pairing_flag ,queue
-0x60005 037502 call mouse_disable_function_flag
-0x60006 037503 jam 0 ,mem_mouse_move_flag
-0x60007 037504 call mouse_read_sensor_common
-0x60008 037505 call p_mouse_tx_power_init
-0x60009 037506 branch z_mouse_24g_attempt_success
-:      037508 z_mouse_24g_attempt_fail:
-0x6000a 037509 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
-0x6000b 037510 call p_mouse_tx_power_init
-0x6000c 037511 call p_g24_check_51cmd_stop_24g
-0x6000d 037512 call p_mouse_load_flash_device_info
-0x6000e 037513 fetch 1 ,mem_mouse_latest_mode
-0x6000f 037514 rtnne latest_mode_24g
-0x60010 037515 branch app_enter_hibernate
-:      037517 z_mouse_24g_attempt_success:
-0x60011 037518 jam 0 ,mem_mouse_long_mult_flag
-0x60012 037519 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer
-0x60013 037520 setarg 0
-0x60014 037521 store 3 ,mem_le_switch_adv_flag
-0x60015 037522 call mouse_le_bb_event_connected + 3
-0x60016 037525 call z_g24_auto_pair_timeout_clear
-0x60017 037526 call p_mouse_null_enter_hibernate_disable
-0x60018 037527 call mouse_no_data_timer_init
-0x60019 037528 fetch 4 ,mem_24g_addr
-0x6001a 037529 store 4 ,mem_mouse_24g_addr
-0x6001b 037530 call mouse_cheak_select_24gdevice
-0x6001c 037531 jam latest_mode_24g ,mem_mouse_latest_mode
-0x6001d 037532 branch p_mouse_store_flash_device_info
-:      037534 z_g24_auto_pair_timeout_clear:
-0x6001e 037535 setarg 0
-0x6001f 037536 store 3 ,mem_24g_stop_g24_mode
-0x60020 037537 rtn
-:      037539 z_g24_reconn_dispatch:
-0x60021 037540 fetch 1 ,mem_24g_stop_g24_mode
-0x60022 037541 beq 1 ,g24_stop_24g_mode
-0x60023 037542 call z_g24_tx_attemp_data_prep
-0x60024 037543 call p_g24_transmit_receive_ack
-0x60025 037544 nbranch p_g24_ch ,sync
-0x60026 037545 nbranch p_g24_ch ,user3
-0x60027 037546 fetch 1 ,mem_24g_conn_sm
-0x60028 037547 set0 state_24g_reconn ,pdata
-0x60029 037548 store 1 ,mem_24g_conn_sm
-:      037549 z_g24_tx_attemp_dongle_succ:
-0x6002a 037550 jam 0 ,mem_mouse_long_mult_flag
-0x6002b 037551 call g24_app_tx_attempt_success
-0x6002c 037552 call p_g24_txbuf_clear
-0x6002d 037553 branch p_g24_transmit_by_interrupt_enable
-:      037556 z_g24_store_dongle_addr:
-0x6002e 037557 fetch 4 ,mem_24g_rxpayload + 2
-0x6002f 037558 branch p_g24_update_addr_and_synccrc8
-:      037560 z_g24_tx_attemp_data_prep:
-0x60030 037561 jam 0xff ,mem_24g_common_temp
-0x60031 037562 fetch 1 ,mem_24g_data_type
-0x60032 037563 store 1 ,mem_24g_common_temp + 1
-0x60033 037564 fetch 4 ,mem_24g_device_addr
-0x60034 037565 store 4 ,mem_24g_common_temp + 2
-0x60035 037566 arg 6 ,temp
-0x60036 037567 arg mem_24g_common_temp ,rega
-0x60037 037568 call p_g24_put_data_in_buff
-0x60038 037569 branch p_g24_transmit_prep
+:      037512 z_entrance5:
+0x60001 037514 beq zcode_51 ,z_mouse_24g_attempt_fail
+0x60002 037515 beq zcode_52 ,z_mouse_24g_attempt_success
+0x60003 037516 beq zcode_53 ,z_g24_reconn_dispatch
+:      037517 z_mouse_24g_pairing_complete:
+0x60004 037518 arg mosue_24g_pairing_flag ,queue
+0x60005 037519 call mouse_disable_function_flag
+0x60006 037520 jam 0 ,mem_mouse_move_flag
+0x60007 037521 call mouse_read_sensor_common
+0x60008 037522 call p_mouse_tx_power_init
+0x60009 037523 branch z_mouse_24g_attempt_success
+:      037525 z_mouse_24g_attempt_fail:
+0x6000a 037526 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+0x6000b 037527 call p_mouse_tx_power_init
+0x6000c 037528 call p_g24_check_51cmd_stop_24g
+0x6000d 037529 call p_mouse_load_flash_device_info
+0x6000e 037530 fetch 1 ,mem_mouse_latest_mode
+0x6000f 037531 rtnne latest_mode_24g
+0x60010 037532 branch app_enter_hibernate
+:      037534 z_mouse_24g_attempt_success:
+0x60011 037535 jam 0 ,mem_mouse_long_mult_flag
+0x60012 037536 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer
+0x60013 037537 setarg 0
+0x60014 037538 store 3 ,mem_le_switch_adv_flag
+0x60015 037539 call mouse_le_bb_event_connected + 3
+0x60016 037542 call z_g24_auto_pair_timeout_clear
+0x60017 037543 call p_mouse_null_enter_hibernate_disable
+0x60018 037544 call mouse_no_data_timer_init
+0x60019 037545 fetch 4 ,mem_24g_addr
+0x6001a 037546 store 4 ,mem_mouse_24g_addr
+0x6001b 037547 call mouse_cheak_select_24gdevice
+0x6001c 037548 jam latest_mode_24g ,mem_mouse_latest_mode
+0x6001d 037549 branch p_mouse_store_flash_device_info
+:      037551 z_g24_auto_pair_timeout_clear:
+0x6001e 037552 setarg 0
+0x6001f 037553 store 3 ,mem_24g_stop_g24_mode
+0x60020 037554 rtn
+:      037556 z_g24_reconn_dispatch:
+0x60021 037557 fetch 1 ,mem_24g_stop_g24_mode
+0x60022 037558 beq 1 ,g24_stop_24g_mode
+0x60023 037559 call z_g24_tx_attemp_data_prep
+0x60024 037560 call p_g24_transmit_receive_ack
+0x60025 037561 nbranch p_g24_ch ,sync
+0x60026 037562 nbranch p_g24_ch ,user3
+0x60027 037563 fetch 1 ,mem_24g_conn_sm
+0x60028 037564 set0 state_24g_reconn ,pdata
+0x60029 037565 store 1 ,mem_24g_conn_sm
+:      037566 z_g24_tx_attemp_dongle_succ:
+0x6002a 037567 jam 0 ,mem_mouse_long_mult_flag
+0x6002b 037568 call g24_app_tx_attempt_success
+0x6002c 037569 call p_g24_txbuf_clear
+0x6002d 037570 branch p_g24_transmit_by_interrupt_enable
+:      037573 z_g24_store_dongle_addr:
+0x6002e 037574 fetch 4 ,mem_24g_rxpayload + 2
+0x6002f 037575 branch p_g24_update_addr_and_synccrc8
+:      037577 z_g24_tx_attemp_data_prep:
+0x60030 037578 jam 0xff ,mem_24g_common_temp
+0x60031 037579 fetch 1 ,mem_24g_data_type
+0x60032 037580 store 1 ,mem_24g_common_temp + 1
+0x60033 037581 fetch 4 ,mem_24g_device_addr
+0x60034 037582 store 4 ,mem_24g_common_temp + 2
+0x60035 037583 arg 6 ,temp
+0x60036 037584 arg mem_24g_common_temp ,rega
+0x60037 037585 call p_g24_put_data_in_buff
+0x60038 037586 branch p_g24_transmit_prep
               org 0x70001
-:      037576 z_entrance6:
-:      037578 z_g24_pair_dispatch:
-0x70001 037579 fetch 1 ,mem_24g_stop_g24_mode
-0x70002 037580 beq 1 ,g24_stop_24g_mode
-0x70003 037581 jam 0xff ,mem_24g_common_temp
-0x70004 037582 fetch 1 ,mem_24g_data_type
-0x70005 037583 store 1 ,mem_24g_common_temp + 1
-0x70006 037584 fetch 4 ,mem_24g_device_addr
-0x70007 037585 store 4 ,mem_24g_common_temp + 2
-0x70008 037586 arg 6 ,temp
-0x70009 037587 arg mem_24g_common_temp ,rega
-0x7000a 037588 call p_g24_put_data_in_buff
-0x7000b 037589 call p_g24_transmit_prep
-0x7000c 037590 call p_g24_transmit_receive_ack
-0x7000d 037591 nbranch z_g24_pair_txdata_retry ,sync
-0x7000e 037592 nbranch z_g24_pair_txdata_retry ,user3
-0x7000f 037593 call p_g24_ackpayload_parse
-0x70010 037594 fetch 4 ,mem_24g_addr
-0x70011 037595 fetcht 4 ,mem_24g_allpowerful_addr
-0x70012 037596 isub temp ,null
-0x70013 037597 branch z_g24_auto_pair_skip_rx_length ,zero
-0x70014 037598 fetch 1 ,mem_24g_rxdata_length
-0x70015 037599 rtnne bind_ackpayload_length
-:      037600 z_g24_auto_pair_skip_rx_length:
-0x70016 037604 jam 0 ,mem_24g_conn_sm
-0x70017 037605 call p_mouse_tx_power_init
-0x70018 037606 fetch 4 ,mem_24g_addr
-0x70019 037607 fetcht 4 ,mem_24g_paring_addr
-0x7001a 037608 isub temp ,null
-0x7001b 037609 branch p_g24_start_pairing_sm1 ,zero
-0x7001c 037610 fetch 4 ,mem_24g_addr
-0x7001d 037611 fetcht 4 ,mem_24g_device_addr
-0x7001e 037612 isub temp ,null
-0x7001f 037613 call z7_g24_store_dongle_addr ,zero
-0x70020 037614 jam 0 ,mem_mouse_long_mult_flag
-0x70021 037615 call g24_app_tx_attempt_success
-0x70022 037616 call p_g24_txbuf_clear
-0x70023 037617 branch p_g24_transmit_by_interrupt_enable
-:      037619 z7_g24_store_dongle_addr:
-0x70024 037620 fetch 4 ,mem_24g_rxpayload + 2
-0x70025 037621 branch p_g24_update_addr_and_synccrc8
-:      037623 z_g24_pair_txdata_retry:
-:      037624 z_g24_pair_txdata_switch:
-0x70026 037625 fetch 1 ,mem_24g_auto_paring_switch
-0x70027 037626 increase 1 ,pdata
-0x70028 037627 and_into 3 ,pdata
-0x70029 037628 store 1 ,mem_24g_auto_paring_switch
-0x7002a 037629 beq 0 ,z_g24_auto_pair_first_attemp
-0x7002b 037630 beq 2 ,z_g24_auto_pair_all_powerful
-0x7002c 037631 branch p_g24_pair_init
-:      037633 z_g24_auto_pair_first_attemp:
-0x7002d 037634 call p_mouse_tx_power_init
-0x7002e 037635 fetch 4 ,mem_24g_device_addr
-0x7002f 037636 store 4 ,mem_24g_addr
-0x70030 037637 fetch 1 ,mem_24g_pair_current_ch_num
-0x70031 037638 store 1 ,mem_24g_current_ch_number
-0x70032 037639 call z_g24_ch_syncword_crc8_init
-0x70033 037640 storet 1 ,mem_24g_pair_current_ch_num
-0x70034 037641 rtn
-:      037643 z_g24_ch_syncword_crc8_init:
-0x70035 037644 call p_g24_syncword_crc8
-0x70036 037645 branch p_g24_ch
-:      037647 z_g24_auto_pair_all_powerful:
-0x70037 037648 jam tx_power_pair ,mem_tx_power
-0x70038 037649 fetch 4 ,mem_24g_allpowerful_addr
-0x70039 037650 store 4 ,mem_24g_addr
-0x7003a 037651 fetch 1 ,mem_24g_powerful_current_ch_num
-0x7003b 037652 store 1 ,mem_24g_current_ch_number
-0x7003c 037653 call z_g24_ch_syncword_crc8_init
-0x7003d 037654 storet 1 ,mem_24g_powerful_current_ch_num
-0x7003e 037655 rtn
+:      037593 z_entrance6:
+:      037595 z_g24_pair_dispatch:
+0x70001 037596 fetch 1 ,mem_24g_stop_g24_mode
+0x70002 037597 beq 1 ,g24_stop_24g_mode
+0x70003 037598 jam 0xff ,mem_24g_common_temp
+0x70004 037599 fetch 1 ,mem_24g_data_type
+0x70005 037600 store 1 ,mem_24g_common_temp + 1
+0x70006 037601 fetch 4 ,mem_24g_device_addr
+0x70007 037602 store 4 ,mem_24g_common_temp + 2
+0x70008 037603 arg 6 ,temp
+0x70009 037604 arg mem_24g_common_temp ,rega
+0x7000a 037605 call p_g24_put_data_in_buff
+0x7000b 037606 call p_g24_transmit_prep
+0x7000c 037607 call p_g24_transmit_receive_ack
+0x7000d 037608 nbranch z_g24_pair_txdata_retry ,sync
+0x7000e 037609 nbranch z_g24_pair_txdata_retry ,user3
+0x7000f 037610 call p_g24_ackpayload_parse
+0x70010 037611 fetch 4 ,mem_24g_addr
+0x70011 037612 fetcht 4 ,mem_24g_allpowerful_addr
+0x70012 037613 isub temp ,null
+0x70013 037614 branch z_g24_auto_pair_skip_rx_length ,zero
+0x70014 037615 fetch 1 ,mem_24g_rxdata_length
+0x70015 037616 rtnne bind_ackpayload_length
+:      037617 z_g24_auto_pair_skip_rx_length:
+0x70016 037621 jam 0 ,mem_24g_conn_sm
+0x70017 037622 call p_mouse_tx_power_init
+0x70018 037623 fetch 4 ,mem_24g_addr
+0x70019 037624 fetcht 4 ,mem_24g_paring_addr
+0x7001a 037625 isub temp ,null
+0x7001b 037626 branch p_g24_start_pairing_sm1 ,zero
+0x7001c 037627 fetch 4 ,mem_24g_addr
+0x7001d 037628 fetcht 4 ,mem_24g_device_addr
+0x7001e 037629 isub temp ,null
+0x7001f 037630 call z7_g24_store_dongle_addr ,zero
+0x70020 037631 jam 0 ,mem_mouse_long_mult_flag
+0x70021 037632 call g24_app_tx_attempt_success
+0x70022 037633 call p_g24_txbuf_clear
+0x70023 037634 branch p_g24_transmit_by_interrupt_enable
+:      037636 z7_g24_store_dongle_addr:
+0x70024 037637 fetch 4 ,mem_24g_rxpayload + 2
+0x70025 037638 branch p_g24_update_addr_and_synccrc8
+:      037640 z_g24_pair_txdata_retry:
+:      037641 z_g24_pair_txdata_switch:
+0x70026 037642 fetch 1 ,mem_24g_auto_paring_switch
+0x70027 037643 increase 1 ,pdata
+0x70028 037644 and_into 3 ,pdata
+0x70029 037645 store 1 ,mem_24g_auto_paring_switch
+0x7002a 037646 beq 0 ,z_g24_auto_pair_first_attemp
+0x7002b 037647 beq 2 ,z_g24_auto_pair_all_powerful
+0x7002c 037648 branch p_g24_pair_init
+:      037650 z_g24_auto_pair_first_attemp:
+0x7002d 037651 call p_mouse_tx_power_init
+0x7002e 037652 fetch 4 ,mem_24g_device_addr
+0x7002f 037653 store 4 ,mem_24g_addr
+0x70030 037654 fetch 1 ,mem_24g_pair_current_ch_num
+0x70031 037655 store 1 ,mem_24g_current_ch_number
+0x70032 037656 call z_g24_ch_syncword_crc8_init
+0x70033 037657 storet 1 ,mem_24g_pair_current_ch_num
+0x70034 037658 rtn
+:      037660 z_g24_ch_syncword_crc8_init:
+0x70035 037661 call p_g24_syncword_crc8
+0x70036 037662 branch p_g24_ch
+:      037664 z_g24_auto_pair_all_powerful:
+0x70037 037665 jam tx_power_pair ,mem_tx_power
+0x70038 037666 fetch 4 ,mem_24g_allpowerful_addr
+0x70039 037667 store 4 ,mem_24g_addr
+0x7003a 037668 fetch 1 ,mem_24g_powerful_current_ch_num
+0x7003b 037669 store 1 ,mem_24g_current_ch_number
+0x7003c 037670 call z_g24_ch_syncword_crc8_init
+0x7003d 037671 storet 1 ,mem_24g_powerful_current_ch_num
+0x7003e 037672 rtn
               org 0x80001
-:      037659 z_entrance7:
-0x80001 037660 beq zcode_70 ,z_mouse_irtual_cable_unplug
-0x80002 037661 beq zcode_71 ,z_g24_search_dongle
-0x80003 037662 rtn
-:      037664 z_mouse_irtual_cable_unplug:
-0x80004 037665 setarg -1
-0x80005 037666 store 6 ,mem_plap
-0x80006 037667 jam rec_3_mode ,mem_record_bt_mode
-0x80007 037668 jam 0xff ,mem_mouse_fast_conn_flag
-0x80008 037669 call mouse_before_store_reconn_info
-0x80009 037670 jam 0xff ,mem_device1_type
-0x8000a 037671 branch p_mouse_store_flash_device_info
-:      037673 z_g24_search_dongle:
-0x8000b 037674 fetch 1 ,mem_mouse_long_mult_flag
-0x8000c 037675 rtn blank
-0x8000d 037676 fetch 1 ,mem_24g_abort_pac
-0x8000e 037677 rtn blank
-0x8000f 037678 fetch 1 ,mem_24g_search_dongle_wait
-0x80010 037679 increase 1 ,pdata
-0x80011 037680 and_into 3 ,pdata
-0x80012 037681 store 1 ,mem_24g_search_dongle_wait
-0x80013 037682 nrtn blank
-0x80014 037683 jam 0 ,mem_24g_search_dongle_ch
-:      037684 z_g24_search_dongle_loop:
-0x80015 037685 fetch 1 ,mem_24g_search_dongle_ch
-0x80016 037686 increase 1 ,pdata
-0x80017 037687 store 1 ,mem_24g_search_dongle_ch
-0x80018 037688 sub pdata ,g24_ch_number ,null
-0x80019 037689 nbranch z_g24_search_dongle_loop_end ,positive
-0x8001a 037690 call z7_g24_tx_attemp_data_prep
-0x8001b 037691 call p_g24_transmit_receive_ack
-0x8001c 037692 nbranch z_g24_search_dongle_loop_retry ,sync
-0x8001d 037693 nbranch z_g24_search_dongle_loop_retry ,user3
-0x8001e 037694 call p_g24_search_dongle_success
-:      037695 z_g24_search_dongle_loop_end:
-0x8001f 037696 call p_g24_txbuf_clear
-0x80020 037697 fetch 1 ,mem_24g_search_dongle_count
-0x80021 037698 increase 1 ,pdata
-0x80022 037699 store 1 ,mem_24g_search_dongle_count
-0x80023 037700 beq g24_ch_poll_count ,p_g24_search_dongle_check
-0x80024 037701 rtn
-:      037703 z7_g24_tx_attemp_data_prep:
-0x80025 037704 jam 0xff ,mem_24g_common_temp
-0x80026 037705 fetch 1 ,mem_24g_data_type
-0x80027 037706 store 1 ,mem_24g_common_temp + 1
-0x80028 037707 fetch 4 ,mem_24g_device_addr
-0x80029 037708 store 4 ,mem_24g_common_temp + 2
-0x8002a 037709 arg 6 ,temp
-0x8002b 037710 arg mem_24g_common_temp ,rega
-0x8002c 037711 call p_g24_put_data_in_buff
-0x8002d 037712 branch p_g24_transmit_prep
-:      037714 z_g24_search_dongle_loop_retry:
-0x8002e 037715 call p_g24_ch
-0x8002f 037716 branch z_g24_search_dongle_loop
+:      037676 z_entrance7:
+0x80001 037677 beq zcode_70 ,z_mouse_irtual_cable_unplug
+0x80002 037678 beq zcode_71 ,z_g24_search_dongle
+0x80003 037679 rtn
+:      037681 z_mouse_irtual_cable_unplug:
+0x80004 037682 setarg -1
+0x80005 037683 store 6 ,mem_plap
+0x80006 037684 jam rec_3_mode ,mem_record_bt_mode
+0x80007 037685 jam 0xff ,mem_mouse_fast_conn_flag
+0x80008 037686 call mouse_before_store_reconn_info
+0x80009 037687 jam 0xff ,mem_device1_type
+0x8000a 037688 branch p_mouse_store_flash_device_info
+:      037690 z_g24_search_dongle:
+0x8000b 037691 fetch 1 ,mem_mouse_long_mult_flag
+0x8000c 037692 rtn blank
+0x8000d 037693 fetch 1 ,mem_24g_abort_pac
+0x8000e 037694 rtn blank
+0x8000f 037695 fetch 1 ,mem_24g_search_dongle_wait
+0x80010 037696 increase 1 ,pdata
+0x80011 037697 and_into 3 ,pdata
+0x80012 037698 store 1 ,mem_24g_search_dongle_wait
+0x80013 037699 nrtn blank
+0x80014 037700 jam 0 ,mem_24g_search_dongle_ch
+:      037701 z_g24_search_dongle_loop:
+0x80015 037702 fetch 1 ,mem_24g_search_dongle_ch
+0x80016 037703 increase 1 ,pdata
+0x80017 037704 store 1 ,mem_24g_search_dongle_ch
+0x80018 037705 sub pdata ,g24_ch_number ,null
+0x80019 037706 nbranch z_g24_search_dongle_loop_end ,positive
+0x8001a 037707 call z7_g24_tx_attemp_data_prep
+0x8001b 037708 call p_g24_transmit_receive_ack
+0x8001c 037709 nbranch z_g24_search_dongle_loop_retry ,sync
+0x8001d 037710 nbranch z_g24_search_dongle_loop_retry ,user3
+0x8001e 037711 call p_g24_search_dongle_success
+:      037712 z_g24_search_dongle_loop_end:
+0x8001f 037713 call p_g24_txbuf_clear
+0x80020 037714 fetch 1 ,mem_24g_search_dongle_count
+0x80021 037715 increase 1 ,pdata
+0x80022 037716 store 1 ,mem_24g_search_dongle_count
+0x80023 037717 beq g24_ch_poll_count ,p_g24_search_dongle_check
+0x80024 037718 rtn
+:      037720 z7_g24_tx_attemp_data_prep:
+0x80025 037721 jam 0xff ,mem_24g_common_temp
+0x80026 037722 fetch 1 ,mem_24g_data_type
+0x80027 037723 store 1 ,mem_24g_common_temp + 1
+0x80028 037724 fetch 4 ,mem_24g_device_addr
+0x80029 037725 store 4 ,mem_24g_common_temp + 2
+0x8002a 037726 arg 6 ,temp
+0x8002b 037727 arg mem_24g_common_temp ,rega
+0x8002c 037728 call p_g24_put_data_in_buff
+0x8002d 037729 branch p_g24_transmit_prep
+:      037731 z_g24_search_dongle_loop_retry:
+0x8002e 037732 call p_g24_ch
+0x8002f 037733 branch z_g24_search_dongle_loop
               org 0x90001
-:      037721 z_entrance8:
-:      037725 z_mouse_setting_config:
-0x90001 037726 call mouse_gpio_init
-0x90002 037728 fetcht 1 ,mem_flash_ncs_gpio
-0x90003 037729 call gpio_config_output
-0x90004 037730 call z_mouse_bt_sdp_update
-0x90005 037732 call twspi_disable
-0x90006 037733 call z_mouse_set_gpio_control_sensor
-0x90007 037734 arg mouse_spi1_sdio_gpio ,temp
-0x90008 037735 call gpio_config_input
-0x90009 037740 call mouse_adc_init
-0x9000a 037741 call p_mouse_load_flash_info_check
-0x9000b 037742 fetch 1 ,mem_device_flag
-0x9000c 037743 rtneq mode_24g_device
-0x9000d 037744 fetch 6 ,mem_mouse_24g_addr_init
-0x9000e 037745 fetcht 6 ,mem_device1_addr
-0x9000f 037746 isub temp ,null
-0x90010 037747 nbranch p_mouse_fast_conn_disable ,zero
-0x90011 037748 branch p_mouse_fast_conn_le_switch_adv
-0x90012 037749 rtn
-:      037751 z_mouse_bt_sdp_update:
-0x90013 037752 call enable_authrom
-0x90014 037753 arg 0x8c00 ,contr
-0x90015 037754 arg mem_mouse_uuid_list ,contw
-0x90016 037755 arg 369 ,loopcnt
-0x90017 037756 call memcpy
-0x90018 037758 setarg 0x0f0209
-0x90019 037759 istore 3 ,contw
-0x9001a 037760 setarg 0x120009
-0x9001b 037761 istore 3 ,contw
-0x9001c 037763 setarg 0x100209
-0x9001d 037764 istore 3 ,contw
-0x9001e 037765 setarg 0x000009
-0x9001f 037766 istore 3 ,contw
-0x90020 037767 arg 0x8d71 ,contr
-0x90021 037768 arg 265 ,loopcnt
-0x90022 037769 call memcpy
-0x90023 037771 jam 0 ,mem_mouse_uuid_list + 23
-0x90024 037772 jam 0x6d ,mem_mouse_uuid_list + 15
-0x90025 037773 setarg 0x401f
-0x90026 037774 store 2 ,mem_mouse_uuid_list + 357
-0x90027 037775 setarg 0x6d04
-0x90028 037776 store 2 ,mem_mouse_uuid_list + 462
-0x90029 037777 setarg 0x16b0
-0x9002a 037778 store 2 ,mem_mouse_uuid_list + 468
-0x9002b 037780 setarg mem_mouse_uuid_list
-0x9002c 037781 store 2 ,mem_ui_uuid_table
-0x9002d 037782 rtn
-:      037785 z_mouse_set_gpio_control_sensor:
-0x9002e 037786 hfetch 1 ,core_gpio_pu3
-0x9002f 037787 set0 5 ,pdata
-0x90030 037788 hstore 1 ,core_gpio_pu3
-0x90031 037795 arg mouse_spi1_sdio_gpio ,temp
-0x90032 037796 call p_gpio_set_input_pu
-0x90033 037797 arg mouse_spi1_sdio_gpio ,temp
-0x90034 037798 call gpio_get_bit
-0x90035 037799 fetcht 1 ,mem_select_sensor_angle_gpio
-0x90036 037800 set0 gpio_active_bit ,temp
-0x90037 037801 call gpio_config_input
-0x90038 037802 fetcht 1 ,mem_select_sensor_angle_gpio
-0x90039 037803 call gpio_get_bit
-0x9003a 037804 jam mouse_3clk_angle ,mem_config_sensor_angle
-0x9003b 037805 rtn true
-0x9003c 037806 jam mouse_6clk_angle ,mem_config_sensor_angle
-0x9003d 037807 rtn
+:      037738 z_entrance8:
+:      037742 z_mouse_setting_config:
+0x90001 037743 call mouse_gpio_init
+0x90002 037745 fetcht 1 ,mem_flash_ncs_gpio
+0x90003 037746 call gpio_config_output
+0x90004 037747 call z_mouse_bt_sdp_update
+0x90005 037749 call twspi_disable
+0x90006 037750 call z_mouse_set_gpio_control_sensor
+0x90007 037751 arg mouse_spi1_sdio_gpio ,temp
+0x90008 037752 call gpio_config_input
+0x90009 037757 call mouse_adc_init
+0x9000a 037758 call p_mouse_load_flash_info_check
+0x9000b 037759 fetch 1 ,mem_device_flag
+0x9000c 037760 rtneq mode_24g_device
+0x9000d 037761 fetch 6 ,mem_mouse_24g_addr_init
+0x9000e 037762 fetcht 6 ,mem_device1_addr
+0x9000f 037763 isub temp ,null
+0x90010 037764 nbranch p_mouse_fast_conn_disable ,zero
+0x90011 037765 branch p_mouse_fast_conn_le_switch_adv
+0x90012 037766 rtn
+:      037768 z_mouse_bt_sdp_update:
+0x90013 037769 call enable_authrom
+0x90014 037770 arg 0x8c00 ,contr
+0x90015 037771 arg mem_mouse_uuid_list ,contw
+0x90016 037772 arg 369 ,loopcnt
+0x90017 037773 call memcpy
+0x90018 037775 setarg 0x0f0209
+0x90019 037776 istore 3 ,contw
+0x9001a 037777 setarg 0x120009
+0x9001b 037778 istore 3 ,contw
+0x9001c 037780 setarg 0x100209
+0x9001d 037781 istore 3 ,contw
+0x9001e 037782 setarg 0x000009
+0x9001f 037783 istore 3 ,contw
+0x90020 037784 arg 0x8d71 ,contr
+0x90021 037785 arg 265 ,loopcnt
+0x90022 037786 call memcpy
+0x90023 037788 jam 0 ,mem_mouse_uuid_list + 23
+0x90024 037789 jam 0x6d ,mem_mouse_uuid_list + 15
+0x90025 037790 setarg 0x401f
+0x90026 037791 store 2 ,mem_mouse_uuid_list + 357
+0x90027 037792 setarg 0x6d04
+0x90028 037793 store 2 ,mem_mouse_uuid_list + 462
+0x90029 037794 setarg 0x16b0
+0x9002a 037795 store 2 ,mem_mouse_uuid_list + 468
+0x9002b 037797 setarg mem_mouse_uuid_list
+0x9002c 037798 store 2 ,mem_ui_uuid_table
+0x9002d 037799 rtn
+:      037802 z_mouse_set_gpio_control_sensor:
+0x9002e 037803 hfetch 1 ,core_gpio_pu3
+0x9002f 037804 set0 5 ,pdata
+0x90030 037805 hstore 1 ,core_gpio_pu3
+0x90031 037812 arg mouse_spi1_sdio_gpio ,temp
+0x90032 037813 call p_gpio_set_input_pu
+0x90033 037814 arg mouse_spi1_sdio_gpio ,temp
+0x90034 037815 call gpio_get_bit
+0x90035 037816 fetcht 1 ,mem_select_sensor_angle_gpio
+0x90036 037817 set0 gpio_active_bit ,temp
+0x90037 037818 call gpio_config_input
+0x90038 037819 fetcht 1 ,mem_select_sensor_angle_gpio
+0x90039 037820 call gpio_get_bit
+0x9003a 037821 jam mouse_3clk_angle ,mem_config_sensor_angle
+0x9003b 037822 rtn true
+0x9003c 037823 jam mouse_6clk_angle ,mem_config_sensor_angle
+0x9003d 037824 rtn
               org 0xa0001
-:      037812 z_entrance9:
-0xa0001 037813 beq zcode_90 ,z_g24_pairing_sm
-0xa0002 037814 beq zcode_91 ,z_g24_paring_mode
-0xa0003 037815 rtn
-:      037817 z_g24_pairing_sm:
-0xa0004 037818 fetch 1 ,mem_24g_ensure
-0xa0005 037819 beq ensure_on_24g ,enable_user
-0xa0006 037820 fetch 1 ,mem_24g_pairing_sm
-0xa0007 037821 beq state_24g_pairing_1 ,z_g24_pairing_sm_1
-0xa0008 037822 beq state_24g_pairing_2 ,z_g24_pairing_sm_2
-0xa0009 037823 beq state_24g_pairing_3 ,z_g24_pairing_sm_3
-0xa000a 037824 branch assert
-:      037826 z_g24_pairing_sm_1:
-0xa000b 037827 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
-0xa000c 037828 jam 0xaa ,mem_24g_common_temp
-0xa000d 037829 branch z_g24_pairing_sm_common
-:      037830 z_g24_pairing_sm_2:
-0xa000e 037831 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
-0xa000f 037832 jam 0x55 ,mem_24g_common_temp
-0xa0010 037833 branch z_g24_pairing_sm_common
-:      037834 z_g24_pairing_sm_3:
-0xa0011 037835 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
-0xa0012 037836 jam 0x22 ,mem_24g_common_temp
-:      037837 z_g24_pairing_sm_common:
-0xa0013 037838 fetch 1 ,mem_24g_data_type
-0xa0014 037839 and_into bits_data ,pdata
-0xa0015 037840 store 1 ,mem_24g_common_temp + 1
-0xa0016 037841 fetch 4 ,mem_24g_device_addr
-0xa0017 037842 store 4 ,mem_24g_common_temp + 2
-:      037843 z_g24_put_pairing_data_in_buff:
-0xa0018 037844 jam 0 ,mem_24g_common_temp + 6
-0xa0019 037845 arg mem_24g_common_temp ,rega
-0xa001a 037846 arg 7 ,temp
-0xa001b 037847 call p_g24_put_data_in_buff
-0xa001c 037848 call p_g24_txdata_enable_tx
-0xa001d 037849 branch enable_user
-:      037851 z_g24_paring_mode:
-0xa001e 037852 fetch 1 ,mem_24g_pairing_sm
-0xa001f 037853 rtneq state_24g_pairing_success
-0xa0020 037854 beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
-0xa0021 037855 beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
-0xa0022 037856 beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
-0xa0023 037857 rtn
-:      037859 z_g24_pairing_sm_1_waiting_ack:
-0xa0024 037860 jam state_24g_pairing_2 ,mem_24g_pairing_sm
-0xa0025 037861 branch p_g24_transmit_abandon
-:      037862 z_g24_pairing_sm_2_waiting_ack:
-0xa0026 037863 jam state_24g_pairing_3 ,mem_24g_pairing_sm
-0xa0027 037864 branch p_g24_transmit_abandon
-:      037865 z_g24_pairing_sm_3_waiting_ack:
-0xa0028 037866 jam state_24g_pairing_success ,mem_24g_pairing_sm
-0xa0029 037867 jam bt_evt_24g_pairing_complete ,mem_fifo_temp
-0xa002a 037868 call ui_ipc_send_event
-0xa002b 037869 fetch 4 ,mem_24g_rxpayload + 2
-0xa002c 037870 call p_g24_update_addr_and_synccrc8
-0xa002d 037871 branch p_g24_transmit_abandon
+:      037829 z_entrance9:
+0xa0001 037830 beq zcode_90 ,z_g24_pairing_sm
+0xa0002 037831 beq zcode_91 ,z_g24_paring_mode
+0xa0003 037832 rtn
+:      037834 z_g24_pairing_sm:
+0xa0004 037835 fetch 1 ,mem_24g_ensure
+0xa0005 037836 beq ensure_on_24g ,enable_user
+0xa0006 037837 fetch 1 ,mem_24g_pairing_sm
+0xa0007 037838 beq state_24g_pairing_1 ,z_g24_pairing_sm_1
+0xa0008 037839 beq state_24g_pairing_2 ,z_g24_pairing_sm_2
+0xa0009 037840 beq state_24g_pairing_3 ,z_g24_pairing_sm_3
+0xa000a 037841 branch assert
+:      037843 z_g24_pairing_sm_1:
+0xa000b 037844 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
+0xa000c 037845 jam 0xaa ,mem_24g_common_temp
+0xa000d 037846 branch z_g24_pairing_sm_common
+:      037847 z_g24_pairing_sm_2:
+0xa000e 037848 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
+0xa000f 037849 jam 0x55 ,mem_24g_common_temp
+0xa0010 037850 branch z_g24_pairing_sm_common
+:      037851 z_g24_pairing_sm_3:
+0xa0011 037852 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
+0xa0012 037853 jam 0x22 ,mem_24g_common_temp
+:      037854 z_g24_pairing_sm_common:
+0xa0013 037855 fetch 1 ,mem_24g_data_type
+0xa0014 037856 and_into bits_data ,pdata
+0xa0015 037857 store 1 ,mem_24g_common_temp + 1
+0xa0016 037858 fetch 4 ,mem_24g_device_addr
+0xa0017 037859 store 4 ,mem_24g_common_temp + 2
+:      037860 z_g24_put_pairing_data_in_buff:
+0xa0018 037861 jam 0 ,mem_24g_common_temp + 6
+0xa0019 037862 arg mem_24g_common_temp ,rega
+0xa001a 037863 arg 7 ,temp
+0xa001b 037864 call p_g24_put_data_in_buff
+0xa001c 037865 call p_g24_txdata_enable_tx
+0xa001d 037866 branch enable_user
+:      037868 z_g24_paring_mode:
+0xa001e 037869 fetch 1 ,mem_24g_pairing_sm
+0xa001f 037870 rtneq state_24g_pairing_success
+0xa0020 037871 beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
+0xa0021 037872 beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
+0xa0022 037873 beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
+0xa0023 037874 rtn
+:      037876 z_g24_pairing_sm_1_waiting_ack:
+0xa0024 037877 jam state_24g_pairing_2 ,mem_24g_pairing_sm
+0xa0025 037878 branch p_g24_transmit_abandon
+:      037879 z_g24_pairing_sm_2_waiting_ack:
+0xa0026 037880 jam state_24g_pairing_3 ,mem_24g_pairing_sm
+0xa0027 037881 branch p_g24_transmit_abandon
+:      037882 z_g24_pairing_sm_3_waiting_ack:
+0xa0028 037883 jam state_24g_pairing_success ,mem_24g_pairing_sm
+0xa0029 037884 jam bt_evt_24g_pairing_complete ,mem_fifo_temp
+0xa002a 037885 call ui_ipc_send_event
+0xa002b 037886 fetch 4 ,mem_24g_rxpayload + 2
+0xa002c 037887 call p_g24_update_addr_and_synccrc8
+0xa002d 037888 branch p_g24_transmit_abandon
               org 0xb0001
-:      037876 z_entrancea:
-0xb0001 037877 beq zcode_a0 ,z_mouse_before_hibernate
-0xb0002 037878 beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
-0xb0003 037879 beq zcode_a2 ,z_mouse_le_bb_disconnected
-0xb0004 037880 beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
-0xb0005 037881 rtn
-:      037883 z_mouse_le_conn_param_update_rsp_recieved:
-0xb0006 037884 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
-0xb0007 037885 rtneq ble_signaling_connect_parameter_update_accepted
-0xb0008 037886 fetch 1 ,mem_le_tsniff
-0xb0009 037887 rshift2 pdata ,pdata
-0xb000a 037888 sub pdata ,le_interval_15ms ,null
-0xb000b 037889 branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
-0xb000c 037890 setarg le_interval_11_25ms
-0xb000d 037891 store 2 ,mem_le_interval_min
-0xb000e 037892 store 2 ,mem_le_interval_min + 2
-0xb000f 037893 call p_app_updata_le_param
-0xb0010 037894 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
-0xb0011 037895 rtn
-:      037897 z_mouse_le_conn_param_update_rsp_not_accepted:
-0xb0012 037898 jam 1 ,mem_mouse_le_updata_not_accepted_flag
-0xb0013 037899 branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
-:      037901 z_mouse_bb_event_reconn_timeout:
-:      037902 z_mouse_bb_event_reconn_failed:
-0xb0014 037903 fetch 2 ,mem_ui_state_map
-0xb0015 037904 rtnbit1 ui_state_btn_down
-0xb0016 037905 rtnbit1 ui_state_bt_discovery
-0xb0017 037906 rtnbit1 ui_state_ble_adv
-0xb0018 037907 fetch mouse_flag_len ,mem_mouse_flag
-0xb0019 037908 rtnbit1 mouse_bt_discovery_button_down_flag
-0xb001a 037909 branch app_bb_hibernate
-:      037911 z_mouse_le_bb_disconnected:
-0xb001b 037912 jam 0 ,mem_mouse_le_bb_connected_flag
-0xb001c 037913 setarg le_interval_8_75ms
-0xb001d 037914 store 2 ,mem_le_interval_min
-0xb001e 037915 store 2 ,mem_le_interval_min + 2
-0xb001f 037916 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
-0xb0020 037917 jam 0 ,mem_mouse_clear_sensor_data_flag
-0xb0021 037918 call p_mouse_data_init
-0xb0022 037919 call le_clr_config_more_data
-0xb0023 037920 call mouse_bb_disconnected
-0xb0024 037921 call p_mouse_store_flash_device_info
-0xb0025 037922 fetch 1 ,mem_mouse_start_discovery_enable
-0xb0026 037923 rtn blank
-:      037924 z_check_51cmd_adv:
-0xb0027 037925 fetch 6 ,mem_le_normal_lap
-0xb0028 037926 store 6 ,mem_le_lap
-0xb0029 037927 call p_mouse_le_adv_data_update
-0xb002a 037928 branch check_51cmd_adv
-:      037930 z_mouse_before_hibernate:
-0xb002b 037931 hfetch 4 ,core_lpm_ctrl
-0xb002c 037932 set1 26 ,pdata
-0xb002d 037933 hstore 4 ,core_lpm_reg
-0xb002e 037934 call lpm_write_ctrl
-0xb002f 037935 call disable_authrom
-0xb0030 037936 call mouse_devce_led_off
-0xb0031 037938 call p_mouse_store_flash_device_info
-0xb0032 037939 call mouse_before_hibernate_wheel_gpio_set
-0xb0033 037940 call p_mouse_setgpio_hibernate
-0xb0034 037942 call p_flash_deep_power_down
-0xb0035 037943 hfetch 1 ,core_gpio_sel1
-0xb0036 037944 and pdata ,0xf7 ,pdata
-0xb0037 037945 hstore 1 ,core_gpio_sel1
-0xb0038 037946 hfetch 1 ,core_gpio_pd3
-0xb0039 037947 set1 0 ,pdata
-0xb003a 037948 hstore 1 ,core_gpio_pd3
-0xb003b 037949 rtn
+:      037893 z_entrancea:
+0xb0001 037894 beq zcode_a0 ,z_mouse_before_hibernate
+0xb0002 037895 beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
+0xb0003 037896 beq zcode_a2 ,z_mouse_le_bb_disconnected
+0xb0004 037897 beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
+0xb0005 037898 rtn
+:      037900 z_mouse_le_conn_param_update_rsp_recieved:
+0xb0006 037901 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
+0xb0007 037902 rtneq ble_signaling_connect_parameter_update_accepted
+0xb0008 037903 fetch 1 ,mem_le_tsniff
+0xb0009 037904 rshift2 pdata ,pdata
+0xb000a 037905 sub pdata ,le_interval_15ms ,null
+0xb000b 037906 branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
+0xb000c 037907 setarg le_interval_11_25ms
+0xb000d 037908 store 2 ,mem_le_interval_min
+0xb000e 037909 store 2 ,mem_le_interval_min + 2
+0xb000f 037910 call p_app_updata_le_param
+0xb0010 037911 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0xb0011 037912 rtn
+:      037914 z_mouse_le_conn_param_update_rsp_not_accepted:
+0xb0012 037915 jam 1 ,mem_mouse_le_updata_not_accepted_flag
+0xb0013 037916 branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+:      037918 z_mouse_bb_event_reconn_timeout:
+:      037919 z_mouse_bb_event_reconn_failed:
+0xb0014 037920 fetch 2 ,mem_ui_state_map
+0xb0015 037921 rtnbit1 ui_state_btn_down
+0xb0016 037922 rtnbit1 ui_state_bt_discovery
+0xb0017 037923 rtnbit1 ui_state_ble_adv
+0xb0018 037924 fetch mouse_flag_len ,mem_mouse_flag
+0xb0019 037925 rtnbit1 mouse_bt_discovery_button_down_flag
+0xb001a 037926 branch app_bb_hibernate
+:      037928 z_mouse_le_bb_disconnected:
+0xb001b 037929 jam 0 ,mem_mouse_le_bb_connected_flag
+0xb001c 037930 setarg le_interval_8_75ms
+0xb001d 037931 store 2 ,mem_le_interval_min
+0xb001e 037932 store 2 ,mem_le_interval_min + 2
+0xb001f 037933 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0xb0020 037934 jam 0 ,mem_mouse_clear_sensor_data_flag
+0xb0021 037935 call p_mouse_data_init
+0xb0022 037936 call le_clr_config_more_data
+0xb0023 037937 call mouse_bb_disconnected
+0xb0024 037938 call p_mouse_store_flash_device_info
+0xb0025 037939 fetch 1 ,mem_mouse_start_discovery_enable
+0xb0026 037940 rtn blank
+:      037941 z_check_51cmd_adv:
+0xb0027 037942 fetch 6 ,mem_le_normal_lap
+0xb0028 037943 store 6 ,mem_le_lap
+0xb0029 037944 call p_mouse_le_adv_data_update
+0xb002a 037945 branch check_51cmd_adv
+:      037947 z_mouse_before_hibernate:
+0xb002b 037948 hfetch 4 ,core_lpm_ctrl
+0xb002c 037949 set1 26 ,pdata
+0xb002d 037950 hstore 4 ,core_lpm_reg
+0xb002e 037951 call lpm_write_ctrl
+0xb002f 037952 call disable_authrom
+0xb0030 037953 call mouse_devce_led_off
+0xb0031 037955 call p_mouse_store_flash_device_info
+0xb0032 037956 call mouse_before_hibernate_wheel_gpio_set
+0xb0033 037957 call p_mouse_setgpio_hibernate
+0xb0034 037959 call p_flash_deep_power_down
+0xb0035 037960 hfetch 1 ,core_gpio_sel1
+0xb0036 037961 and pdata ,0xf7 ,pdata
+0xb0037 037962 hstore 1 ,core_gpio_sel1
+0xb0038 037963 hfetch 1 ,core_gpio_pd3
+0xb0039 037964 set1 0 ,pdata
+0xb003a 037965 hstore 1 ,core_gpio_pd3
+0xb003b 037966 rtn
               org 0xc0001
-:      037953 z_entranceb:
-0xc0001 037954 beq zcode_b1 ,z_mouse_sniff_not_accept
-0xc0002 037955 beq zcode_b2 ,z_mouse_enter_sniff_check
-0xc0003 037956 beq zcode_b3 ,z_mouse_le_ll_start_encryt
-0xc0004 037957 beq zcode_b4 ,z_mouse_bb_event_disconnected
-0xc0005 037958 rtn
-:      037960 z_mouse_sniff_not_accept:
-0xc0006 037961 fetch 1 ,mem_mouse_enter_sniff_count
-0xc0007 037962 rtneq 2
-0xc0008 037963 increase 1 ,pdata
-0xc0009 037964 store 1 ,mem_mouse_enter_sniff_count
-0xc000a 037965 jam 0x12 ,mem_sniff_param_interval
-0xc000b 037966 branch app_bt_enter_sniff
-:      037968 z_mouse_enter_sniff_check:
-0xc000c 037969 fetch 1 ,mem_mouse_enter_sniff_count
-0xc000d 037970 rtnne 2
-0xc000e 037971 jam 0 ,mem_mouse_enter_sniff_count
-0xc000f 037972 jam 0x0e ,mem_sniff_param_interval
-0xc0010 037973 branch app_bt_enter_sniff
-:      037975 z_mouse_le_ll_start_encryt:
-0xc0011 037976 fetch 1 ,mem_mouse_le_reconnect_flag
-0xc0012 037977 beq 1 ,z_mouse_le_ll_reconn_start_encryt
-0xc0013 037978 jam 20 ,mem_le_start_encrypt_timer
-0xc0014 037979 branch z_mouse_le_ll_enable_start_enc_flag
-:      037980 z_mouse_le_ll_reconn_start_encryt:
-0xc0015 037981 call p_app_updata_le_param
-0xc0016 037982 jam 10 ,mem_le_start_encrypt_timer
-:      037983 z_mouse_le_ll_enable_start_enc_flag:
-0xc0017 037984 arg ll_start_enc_flag ,queue
-0xc0018 037985 branch mouse_le_enable_connect_flag
-:      037987 z_mouse_bb_event_disconnected:
-0xc0019 037988 jam 0 ,mem_bt_rcvd_switch_req_accept
-0xc001a 037989 jam 0 ,mem_bt_send_lmp_setup_complete
-0xc001b 037990 jam 0 ,mem_mouse_bt_send_first_package_flag
-0xc001c 037991 call p_mouse_store_flash_device_info
-0xc001d 037992 branch mouse_bb_disconnected
+:      037970 z_entranceb:
+0xc0001 037971 beq zcode_b1 ,z_mouse_sniff_not_accept
+0xc0002 037972 beq zcode_b2 ,z_mouse_enter_sniff_check
+0xc0003 037973 beq zcode_b3 ,z_mouse_le_ll_start_encryt
+0xc0004 037974 beq zcode_b4 ,z_mouse_bb_event_disconnected
+0xc0005 037975 rtn
+:      037977 z_mouse_sniff_not_accept:
+0xc0006 037978 fetch 1 ,mem_mouse_enter_sniff_count
+0xc0007 037979 rtneq 2
+0xc0008 037980 increase 1 ,pdata
+0xc0009 037981 store 1 ,mem_mouse_enter_sniff_count
+0xc000a 037982 jam 0x12 ,mem_sniff_param_interval
+0xc000b 037983 branch app_bt_enter_sniff
+:      037985 z_mouse_enter_sniff_check:
+0xc000c 037986 fetch 1 ,mem_mouse_enter_sniff_count
+0xc000d 037987 rtnne 2
+0xc000e 037988 jam 0 ,mem_mouse_enter_sniff_count
+0xc000f 037989 jam 0x0e ,mem_sniff_param_interval
+0xc0010 037990 branch app_bt_enter_sniff
+:      037992 z_mouse_le_ll_start_encryt:
+0xc0011 037993 fetch 1 ,mem_mouse_le_reconnect_flag
+0xc0012 037994 beq 1 ,z_mouse_le_ll_reconn_start_encryt
+0xc0013 037995 jam 20 ,mem_le_start_encrypt_timer
+0xc0014 037996 branch z_mouse_le_ll_enable_start_enc_flag
+:      037997 z_mouse_le_ll_reconn_start_encryt:
+0xc0015 037998 call p_app_updata_le_param
+0xc0016 037999 jam 10 ,mem_le_start_encrypt_timer
+:      038000 z_mouse_le_ll_enable_start_enc_flag:
+0xc0017 038001 arg ll_start_enc_flag ,queue
+0xc0018 038002 branch mouse_le_enable_connect_flag
+:      038004 z_mouse_bb_event_disconnected:
+0xc0019 038005 jam 0 ,mem_bt_rcvd_switch_req_accept
+0xc001a 038006 jam 0 ,mem_bt_send_lmp_setup_complete
+0xc001b 038007 jam 0 ,mem_mouse_bt_send_first_package_flag
+0xc001c 038008 call p_mouse_store_flash_device_info
+0xc001d 038009 branch mouse_bb_disconnected
Index: XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.meta
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.meta	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.meta	(working copy)
@@ -1087,7 +1087,7 @@
 	branch p_mouse_spi_init,wake
 p_device_wake_from_power:
 	call p_wake_from_power
-	call ice_break
+
 //ifdef G24
 //	fetch 1,mem_power_on_flag
 //	bbit1 2,p_mouse_skip_24g_pair
@@ -1099,6 +1099,8 @@
 //	call p_mouse_mode_24g_device_multi_led_blink3s
 	fetch 1,mem_power_on_flag
 	bbit1 2,p_mouse_wakeup_from_hibernate	//hibernate goto reconn
+	fetch 1,mem_mouse_latest_mode
+	beq LATEST_MODE_24G,p_g24_start_24g_mode
 	jam LATEST_MODE_NULL,mem_mouse_latest_mode
 	branch p_mouse_start_24g_pair
 
@@ -1164,7 +1166,7 @@
 	fetch 1,mem_sensor_id2
 	beq P_MX8650,p_mouse_mx8650_init_param
 	beq PKA8_ID2,p_mouse_ka8_init_param
-	beq P8009_ID2,p_mouse_8009_init_param
+//	beq P8009_ID2,p_mouse_8009_init_param
 	branch mouse_init_p32xx_id2_judge
 
 p_mouse_mx8650_init_param:
@@ -1188,22 +1190,22 @@
 	arg mem_sensor_ka8_init,regc
 	branch p_sensor_wr_seq
 
-p_mouse_8009_init_param:
-	setarg 0x16
-	call twspi_read
-	sub pdata,0xbd,null 
-	nbranch p_mouse_init_sensor,zero
-	setarg 0x19
-	call twspi_read
-	sub pdata,0x55,null 
-	nbranch p_mouse_init_sensor,zero
-	setarg 0x1b
-	call twspi_read
-	sub pdata,0x1d,null 
-	nbranch p_mouse_init_sensor,zero
-	jam P8009,mem_config_sensor_type
-	arg mem_sensor_8009_init,regc
-	branch p_sensor_wr_seq
+//p_mouse_8009_init_param:
+//	setarg 0x16
+//	call twspi_read
+//	sub pdata,0xbd,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x19
+//	call twspi_read
+//	sub pdata,0x55,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x1b
+//	call twspi_read
+//	sub pdata,0x1d,null 
+//	nbranch p_mouse_init_sensor,zero
+//	jam P8009,mem_config_sensor_type
+//	arg mem_sensor_8009_init,regc
+//	branch p_sensor_wr_seq
 
 p_mouse_p3065_init_param:
 	call p_mouse_sensor_poweron
@@ -1748,6 +1750,7 @@
 //	call p_mouse_check_select_device_by_switch_timer
 	call p_mouse_g24_long_sleep_param_update_timer
 	call p_mouse_g24_stop_mode_timeout_timer
+	call p_mouse_g24_stop_pair_mode_timeout_timer
 	call p_mouse_check_direct_timeout_timer
 	call p_mouse_le_enable_att_list_timer
 	call p_le_send_smp_security_request_timer
@@ -1834,8 +1837,14 @@
 
 p_mouse_g24_stop_mode_timeout_timer:
 	arg mem_24g_stop_g24_mode_timeout,regc
+	arg p_g24_auto_pair_start,regb
+	branch timer_single_step_2B
+	
+p_mouse_g24_stop_pair_mode_timeout_timer:
+	arg mem_24g_stop_g24_pair_mode_timerout,regc
 	arg p_mouse_g24_stop_mode_timeout,regb
 	branch timer_single_step_2B
+	
 p_mouse_g24_stop_mode_timeout:
 	jam 1,mem_24g_stop_g24_mode
 	fetch 1,mem_le_switch_adv_flag
@@ -37449,6 +37458,8 @@
 	store 1,mem_24g_conn_sm
 	call p_g24_syncword_crc8
 	call p_g24_ch
+	fetch 1,mem_power_on_flag
+	bbit1 2,z_g24_auto_fail_timeout_init	
 	branch z_g24_auto_pair_timeout_init
 
 z_g24_factory_check:
@@ -37468,6 +37479,12 @@
 	fetch 1,mem_24g_conn_sm
 	set1 STATE_24G_PAIR,pdata
 	store 1,mem_24g_conn_sm
+z_g24_auto_fail_timeout_init:
+	call p_mouse_sensor_powerdown
+	setarg G24_DISCONN_NODATA_TIMER
+	store 2,mem_24g_stop_g24_pair_mode_timerout
+	jam 0,mem_24g_stop_g24_mode
+	rtn
 z_g24_auto_pair_timeout_init:
 	setarg G24_FIRST_DISCONN_NODATA_TIMER
 	store 2,mem_24g_stop_g24_mode_timeout
Index: XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.rom
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.rom	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/bt_program23.rom	(working copy)
@@ -1,17 +1,17 @@
 00100000001000000000000001000000
-00100000010000000000001110111011
+00100000010000000000001110101100
 01101000000000001100000111011110
-01100000000000001100110011111110
-00100000010000000000011011111111
+01100000000000001100110100000000
+00100000010000000000011011110100
 01101000000000001100011010000101
 01100000000000001100011011011010
-00100000010000000000010011100000
-00100000010000000000001100110011
-00100000010000000000011110011010
+00100000010000000000010011010101
+00100000010000000000001100100100
+00100000010000000000011110001111
 00100000010000000000000000011001
 00100000010000000000000000101100
 01101000000000100100000010100000
-01100000000000100100110001111110
+01100000000000100100110010000000
 00100000010000000101100000010000
 00100000010000000101100000111001
 00100000010000000101100000101100
@@ -22,31 +22,31 @@
 01011000000000000000000000000000
 01100000000000010100000101010100
 00100000010000000110100010100010
-00100000001000000000001100000110
-01011000000000000000001101111100
-01100000000000010100110101111000
-01011000000000000000001110100111
+00100000001000000000001011110111
+01011000000000000000001101101101
+01100000000000010100110101111010
+01011000000000000000001110011000
 01100000000000010100000111101111
-01011000000000000000011000111010
+01011000000000000000011000101111
 01100000000000010100000111111001
-01011000000000000000001111011010
+01011000000000000000001111001011
 01100000000000010100000111110001
 01011000000000000000001010100110
 01100000000000010100000111101101
-01011000000000000000010000010010
+01011000000000000000010000000011
 01100000000000010100000111110101
-01011000000000000000001111111111
+01011000000000000000001111110000
 01100000000000010100000111110011
-01011000000000000000010001100001
+01011000000000000000010001010010
 01100000000000010100000111101011
-01011000000000000000010001101110
+01011000000000000000010001011111
 01100000000000010100000111111101
 00100000011000000000000000000000
 01011000000000000000000000011001
-01100000000000010100110110001010
+01100000000000010100110110001100
 00100100010101011000000000111001
-00100000010000000000001011010100
-00100000010000000000010001100111
+00100000010000000000001011010101
+00100000010000000000010001011000
 01101000000000001100011100011111
 01100000000000001100011100011110
 01101000000000110100010010100000
@@ -54,9 +54,9 @@
 01101000000000001100001001000001
 11000011100000010000000000000000
 01110000010010110111011100001010
-00100000001000000000001110100100
+00100000001000000000001110010101
 01011000000000000000000101110111
-01100000000000010100110110001010
+01100000000000010100110110001100
 00100000011000000000000000000000
 00100000000000000000000000000001
 00100000000000000000000000000001
@@ -65,61 +65,61 @@
 11000010100001000000000001011010
 11000000000000001000000001110110
 11000000000000010000000001111111
-11000000010000101000011101101011
-11000000010001001000011100111100
-11000000010001010000011101101101
-11000000000011011000011001001111
-11000000000100110000011001010001
-11000000001001000000011001101101
-11000000001001010000011001101111
-11000000001010001000011001111000
-11000000001011001000011001101011
-11000000010100111000011001111101
-11000000010101101000011010010011
+11000000010000101000011101100000
+11000000010001001000011100110001
+11000000010001010000011101100010
+11000000000011011000011001000100
+11000000000100110000011001000110
+11000000001001000000011001100010
+11000000001001010000011001100100
+11000000001010001000011001101101
+11000000001011001000011001100000
+11000000010100111000011001110010
+11000000010101101000011010001000
 11000000011001011011001111100100
-11000000011101001000011010100100
+11000000011101001000011010011001
 11000000010100001000000010001000
 11000000010110001000000010001101
 11000000010110010000000010011011
 11000000011000100000001010110011
-11000000011100011000010100010010
-11000000011100110000010100111010
-11000000011101010000010110000010
-11000000011101011000010110001011
-11000000011101100000010110001110
+11000000011100011000010100000111
+11000000011100110000010100101111
+11000000011101010000010101110111
+11000000011101011000010110000000
+11000000011101100000010110000011
 00100000001000000010101010001110
-11000000000111001000010110010000
-11000000001000011000010110011000
-11000000001001010000010110011110
-11000000001010111000010110100001
-11000000001011001000010110100011
-11000000001100011000010110100101
-11000000001100110000010111001110
-11000000001100111000010111101101
-11000000001101010000011000100101
-11000000001110111000011000110000
-11000000011111010000011011100111
-11000000000000101000011010100110
-11000000010000000000011010101000
-11000000010000010000011010110010
-11000000010001000000011011000011
-11000000010001100000011000111100
-11000000010001101000011001001000
+11000000000111001000010110000101
+11000000001000011000010110001101
+11000000001001010000010110010011
+11000000001010111000010110010110
+11000000001011001000010110011000
+11000000001100011000010110011010
+11000000001100110000010111000011
+11000000001100111000010111100010
+11000000001101010000011000011010
+11000000001110111000011000100101
+11000000011111010000011011011100
+11000000000000101000011010011011
+11000000010000000000011010011101
+11000000010000010000011010100111
+11000000010001000000011010111000
+11000000010001100000011000110001
+11000000010001101000011000111101
 00100000001000000010101010001110
 00011111111000100010001000000000
-01101000000010001100110100000010
-01011000000000000100110100001001
+01101000000010001100110100000100
+01011000000000000100110100001011
 10011000010000001000101000000000
 00011010001000100111111000000000
 11100000101000001000000000000000
 00011000010000001000010000000001
 00011000010000010000010000000111
-01100000000010001100110100000010
+01100000000010001100110100000100
 00100000011000000000000000000000
 11011000101000000000100110101110
 11011111001000000000000000001100
 00100000010000000111111011010100
-00100000010000000000001110001101
+00100000010000000000001101111110
 00100000010000000110101000000011
 00100000010000000101110011110110
 00100100010101011010110001100101
@@ -154,73 +154,73 @@
 00100100001110100111111111101111
 00100000001000000111111111110001
 11000110100100110000000000000000
-01101000000000001100110110011011
+01101000000000001100110110011101
 11000010100000001000000010110000
 11000010100000010000000010110010
-01101000000000001100110110000111
+01101000000000001100110110001001
 11000000000000001000000010111000
 00100000010000000000000101110000
 00100100001101000000000011010011
 00100000010000000000000101001011
 00100000010000000000000110010011
-01101000000000001100110001010111
+01101000000000001100110001011001
 11000001111111111000000000000000
-00100000010000000000011100010000
+00100000010000000000011100000101
 00100000010000000000000010110100
 01101000000000001100101100100110
-11000000000000001000001101111111
+11000000000000001000001101110000
 00100000010000000000000011100010
 00100100011101000000000000000000
 00100000010000000000001010101101
 01011000000000001111000000111100
 00100000001000000010101110010011
 01110000000100011100011001100000
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011001010011
-00100000001000000000011101110000
+00100000001000000000011101100101
 01011000000000010111011100000000
-01100000000000011100110001110110
+01100000000000011100110001111000
 01110000010010110100010000010100
 00100000011000000000000000000000
 00100000010000000000001010000110
 00100100011101000000000000000000
 00100000010000000000000011001101
-01101000000000010100110110001000
+01101000000000010100110110001010
 00011111111000001111111000000001
-01100000000000010100110110001000
-01101000000010010100110110001010
+01100000000000010100110110001010
+01101000000010010100110110001100
 10011000010001100111110000000000
 00100000010000101000000011000010
 00100000001000000000000010100001
-01110000010011011000011100000000
+01110000010011011000100100000000
 01011000000000000000000000000000
-01100000000000010100110110001000
-01011000000000000000000000011001
 01100000000000010100110110001010
-01110000010011001000001000000000
-01101000000000001100110001101101
-01100000000000001100110001101100
+01011000000000000000000000011001
+01100000000000010100110110001100
+01110000010011001000010000000000
+01101000000000001100110001101111
+01100000000000001100110001101110
 00100000011000000000000000000000
-01101000000000001100110001101110
+01101000000000001100110001110000
 00100000001000000000000011001001
-01101000000000001100110010000010
+01101000000000001100110010000100
 00011111111000001111111000000001
-01100000000000001100110010000010
+01100000000000001100110010000100
 11000000000000100000000011001011
 11000000000000101000000011000111
 00100000011000000000000000000000
-01101000000000001100110001110011
+01101000000000001100110001110101
 00100000010110100000000011111011
 01101000000000001100101100101100
 00100100011110100000000000000000
 01101000000000001100101100100110
 11000001000000001000000000000000
-01101000000000001100110110000111
+01101000000000001100110110001001
 11000001000000001000000000000000
 00100000010000000000000100001100
 00100000010000000000000011100010
 00100100011101000000000000000000
-01101000000000011100110001110110
+01101000000000011100110001111000
 00100000010000000111111101001001
 01100000000010100100000101011011
 00100000001000000010101100101010
@@ -230,12 +230,12 @@
 00100000001110100111111111101001
 01101000000000001100000010010001
 00100000001110100111111111101001
-01101000000000001100110110000111
+01101000000000001100110110001001
 11000000000000001111111111101001
 00100000010000000000001010110000
 00100000010000000000001010101101
 00100000010000000011111010111111
-00100000010000000000001100001000
+00100000010000000000001011111001
 01101000000100100000000001110000
 01101000000110100000000001111000
 10011000010000011000010000000000
@@ -249,141 +249,141 @@
 01100000000100001000000001111110
 11011000010000000000000000011101
 00100000001000000110011111111011
-01110000010011000111001100000001
-01110000010011010111110000000000
+01110000010011000111010100000001
+01110000010011010111111000000000
 00100000010000000000000100100001
-01100000000000001100101111100011
+01100000000000001100101111100101
 01011000000000000000000000000000
-01100000000000111100101111100100
-01101000000000100100110001111110
-01100000000000100100101111101011
-01110000010011000100011100001100
-01101000000000001100110001001000
+01100000000000111100101111100110
+01101000000000100100110010000000
+01100000000000100100101111101101
+01110000010011000100100100001100
+01101000000000001100110001001010
 01111001001000000111111000000011
-01100000000000001100110001001000
+01100000000000001100110001001010
 00100000010000000000000101110011
 00100000001000000000000010100100
 01011000000000000000000000000000
-01100000000000011100110110010111
+01100000000000011100110110011001
 00100000011000000000000000000000
 01110000000100011100011001110001
-00100000001000000000011101110000
-01110000010011011001100000000000
-01101000000000001100110110010111
+00100000001000000000011101100101
+01110000010011011001101000000000
+01101000000000001100110110011001
 11000011100000000000000000000000
 01111001001000000111111000000000
-01100000000000001100110110010111
+01100000000000001100110110011001
 01011000000000000000011100001000
 01100000000000010100011010110000
-00100000001000000000010001100111
-01101000000000001100110001110011
+00100000001000000000010001011000
+01101000000000001100110001110101
 00100000001110100000000100001001
-01110000010011011001100000000000
-01101000000000001100110110010111
+01110000010011011001101000000000
+01101000000000001100110110011001
 11000100000000000000000000000000
 01111001001111111111111000000000
-01100000000000001100110110010111
+01100000000000001100110110011001
 00100000010000000011111110001101
-00100000001000000000001111011000
-01110000010011010111110100000001
-01110000010011010111111100000000
-01101000000000001100110001001000
+00100000001000000000001111001001
+01110000010011010111111100000001
+01110000010011011000000100000000
+01101000000000001100110001001010
 00011111111000010111111000000111
-01100000000000001100110001001000
+01100000000000001100110001001010
 00100000011000000000000000000000
-01101000000000001100110001001000
+01101000000000001100110001001010
 01111001001000000111111000000100
-01100000000000001100110001001000
-01100000000000001100110000000011
+01100000000000001100110001001010
+01100000000000001100110000000101
 00100000011000000000000000000000
-01101000000000001100110001001000
+01101000000000001100110001001010
 11000100000000100000000000000000
-01101000000000001100110001001000
+01101000000000001100110001001010
 01111001001111111111111000000100
-01100000000000001100110001001000
-01100000000000001100110000000011
-00100000010000000000011100000110
+01100000000000001100110001001010
+01100000000000001100110000000101
+00100000010000000000011011111011
 00100000001000000000000101011110
-01101000000000001100110101111100
+01101000000000001100110101111110
 11000000100000001000000100100001
-01101000000000001100110101111010
+01101000000000001100110101111100
 00011111111000001111111000000001
-01100000000000001100110101111010
+01100000000000001100110101111100
 11000000000000100000000100111011
 00100000010000000000000101011110
-01110000010011001000110000000010
+01110000010011001000111000000010
 00100000001000000000000110010011
-00100000010000000000011100000110
-01110000010011010111101000000000
-00100000001000000000000100100001
-01110000010011010111111100000010
-01110000010011010111110100000001
+00100000010000000000011011111011
 01110000010011010111110000000000
 00100000001000000000000100100001
-01101000000000001100110101111110
+01110000010011011000000100000010
+01110000010011010111111100000001
+01110000010011010111111000000000
+00100000001000000000000100100001
+01101000000000001100110110000000
 11000000000000011000000100111111
-01101000000000001100110001001000
+01101000000000001100110001001010
 00101111111011000000000000000100
 00100000001000001000000100011111
-01101000000000001100110101111110
+01101000000000001100110110000000
 11000000000000001000000100111110
 11000000000000010000000100111111
 00100000011000000000000000000000
-01101000000000001100110001010111
+01101000000000001100110001011001
 11000001111111111000000000000000
 00100000010000000000000101010000
 00100100010101100000000101011000
 00100000011000000000000000000000
 01111000010101100111110000000000
-01101000000000001100110101111101
-11000001100000001000000000000000
 01101000000000001100110101111111
+11000001100000001000000000000000
+01101000000000001100110110000001
 11000001100000000000000000000000
-01110000010011010111111000000001
-01110000010011001000110000000100
+01110000010011011000000000000001
+01110000010011001000111000000100
 00100000001000000111111111101011
-01101000000000001100110101111111
+01101000000000001100110110000001
 00100000001110100000000101101011
 00011111111000001111111111111111
-01100000000000001100110101111111
-01110000010011010111111000000010
-01110000010011001000110000000100
-01101000000010001100110001010010
-01101000000000001100110001101111
+01100000000000001100110110000001
+01110000010011011000000000000010
+01110000010011001000111000000100
+01101000000010001100110001010100
+01101000000000001100110001110001
 00011111111000010111111000000011
 00011111111011111010001000000100
-01011000000000000100110001011000
+01011000000000000100110001011010
 10011010001000001111111000000000
 10011000010000001000110000000000
 11101000110000001000000000000000
-01100000000000001100110001010001
+01100000000000001100110001010011
 00011000010000001000010000000001
 00011000010000010000010000000011
-01100000000010001100110001010010
+01100000000010001100110001010100
 00100000011000000000000000000000
-01110000010011010111111000000011
-01101000000000001100110101111100
+01110000010011011000000000000011
+01101000000000001100110101111110
 00100100001110100000000100110010
-01110000010011001000110000000010
+01110000010011001000111000000010
 00100000001000000000000101011110
-01101000000000001100110001010111
+01101000000000001100110001011001
 11000000111111111000000111101100
 00100000010000000000000101110110
 00100000010000000000001000001010
-01110000010011000100110000000001
+01110000010011000100111000000001
 00100000011000000000000000000000
-01101000000000010100110101111000
+01101000000000010100110101111010
 00100000010000000111111110011100
 00100000001101000000000101111100
-01101000000000111100101111100100
+01101000000000111100101111100110
 00100000011110100000000000000000
 00100000001000000111111111100111
-00100000010000000000001110011001
-01110000010011000111001100000000
+00100000010000000000001110001010
+01110000010011000111010100000000
 00011010001000001111111000000001
-01100000000000001100110001000111
+01100000000000001100110001001001
 00100000010000000000000100100001
-01100000000000001100101111100011
+01100000000000001100101111100101
 11101000101010001000000000000000
 11101010010000001000000000000000
 10011000010000011111111000000000
@@ -392,7 +392,7 @@
 11101010010000100000000000000000
 11100000101000100000000000000000
 00011010010000001010010000000100
-11011000101000000100101111101001
+11011000101000000100101111101011
 11011111001000000000000000000010
 11101010010000001000000000000000
 11101000101010001000000000000000
@@ -401,7 +401,7 @@
 00011010010000001010010000000001
 11000010000000000000000110001100
 00100000011000000000000000000000
-01110000010011000101000000000000
+01110000010011000101001000000000
 11011001011000000000110100000000
 00110100011100110000001000000000
 00100000010000000000000110101010
@@ -409,25 +409,25 @@
 00100100001101111000000110110101
 00100000010000000000000110100111
 00100000010000000000000111010000
-00100000010000000000011100000010
-01101000000000001100110001000110
+00100000010000000000011011110111
+01101000000000001100110001001000
 00011111111000001111111000000001
-01100000000000001100110001000110
+01100000000000001100110001001000
 00100000010000000000000100101010
-01101000000000001100110001010111
+01101000000000001100110001011001
 11000000111111111000000111101110
 00100000010000000000000101000010
 01011000000000000000000000000000
-01100000000000100100110001001100
-01100000000000001100110101111011
+01100000000000100100110001001110
+01100000000000001100110101111101
 00100000011000000000000000000000
 11011111001000000000000000000100
-11011000101000000100101111100011
+11011000101000000100101111100101
 00100000001000000111111011000110
 01111000010101111111110000000000
 00100000010000000000001001100101
 00011000000000000010101000000000
-01101000000000100100110001101111
+01101000000000100100110001110001
 10011000000000000001001000000000
 01101000000010001000000000010111
 00100000010000000010100100011111
@@ -435,114 +435,114 @@
 00100000010000000000001000100101
 00100000010101111000001001011110
 00100000011000000000000000000000
-01101000000000010100110001001101
+01101000000000010100110001001111
 00011111111000001111111000000001
-01100000000000010100110001001101
-01101000000000001100110001001110
+01100000000000010100110001001111
+01101000000000001100110001010000
 11000010100000100010110111010100
-01101000000000001100110001010111
+01101000000000001100110001011001
 11000000111111111000000110111110
 00100000010000000000000111000110
 00100000001000000000000110010100
-01101000000000001100110001001101
+01101000000000001100110001001111
 11000001111111111000000000000000
 01011000000000000000000000000000
-01100000000000010100110001001101
+01100000000000010100110001001111
 00100000001000000010110111010100
-00100000010000000000011100110011
-00100000010000000000011100000110
+00100000010000000000011100101000
+00100000010000000000011011111011
 00100000001000000000000101011110
-01101000000000001100110001010000
+01101000000000001100110001010010
 00011111111001100111110000001011
 00100100001000010000000111000011
 00011111111000001111111000000001
-01100000000000001100110001010000
+01100000000000001100110001010010
 11000000000000010000000100100101
 11000000000000110000000100101100
 11000000000001000000000100100101
 11000000000001100000000100101100
 00100000011000000000000000000000
 00100000010000000000000111111101
-01101000000000001100110001000101
+01101000000000001100110001000111
 00100000011110100000000000000000
 10011000000000000111001000000000
-11011000110000000100101111000011
-11011000101000000100110000100101
+11011000110000000100101111000101
+11011000101000000100110000100111
 00100000001000000111111100000001
 01110000010000011101111000000100
-01110000010011000100011000000000
-01110000010011000101000101001110
-01101000000000100100110001010011
-01100000000000100100110001101111
+01110000010011000100100000000000
+01110000010011000101001101001110
+01101000000000100100110001010101
+01100000000000100100110001110001
 11011010001000000000000000000000
 11011111001000000000000000000100
-11011000110000000100110001101111
+11011000110000000100110001110001
 11101000110000001000000000000000
 10011010001000001010001000000000
 11000010000000000000000111011111
 00011010001000100111111000000000
-01100000000000010100110011111000
-01101000000000001100110011111000
-01101000000010001100110011111001
+01100000000000010100110011111010
+01101000000000001100110011111010
+01101000000010001100110011111011
 10011000010000001111111000000000
-01100000000000001100110011111010
+01100000000000001100110011111100
 00100000011000000000000000000000
 00100000010000000000000111010111
-01110000010011000101011100000001
+01110000010011000101100100000001
 00100000011000000000000000000000
 01110000000100011100011010010000
-00100000001000000000011101110000
-00100000010000000000011011111111
+00100000001000000000011101100101
+00100000010000000000011011110100
 01110000000100011100011010010001
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011001000000
-00100000001000000000011101110000
+00100000001000000000011101100101
 01111001001111111000000000100110
-01110000010011011001101100000000
+01110000010011011001110100000000
 00100000010000000101001111001110
 11011000111000000000000000000011
 00100000001000000100001111010010
-01100000000010001100110001000111
+01100000000010001100110001001001
 00011000010000100111001000000000
-11011000101000000100101111100011
+11011000101000000100101111100101
 00011010001000100000110000000000
 00100000001000000111111100000001
-01101000000000001100101111000010
+01101000000000001100101111000100
 00011111111010010111111000000000
-01100000000000001100110001000101
+01100000000000001100110001000111
 00011111111000001111111000000001
-11011000110000000100101111000010
+11011000110000000100101111000100
 10011000110000001000110000000000
 11101000110000011000000000000000
-01100000000000011100110010000100
-01101000000000001100101111000010
+01100000000000011100110010000110
+01101000000000001100101111000100
 00011111111000110111111000000000
 00011111111000010111111000000011
-01100000000000001100110010001010
+01100000000000001100110010001100
 00100000011000000000000000000000
-01101000000000001100110001000111
+01101000000000001100110001001001
 00011111111000001111111000000010
-01100000000000001100110001001001
-01101000000000001100110001001000
-01100000000000001100110000000011
-01101000000000001100110001000111
+01100000000000001100110001001011
+01101000000000001100110001001010
+01100000000000001100110000000101
+01101000000000001100110001001001
 00011111111010011111111000000000
-01101000000010001100110001000110
+01101000000010001100110001001000
 00011000010000010000010000000011
 00011000010000111000010000000000
 10011000010000011111111000000000
-01101000000010001100110010000011
+01101000000010001100110010000101
 10011000010000001111111000000000
 11100000101000001000000000000000
-01101000000000001100110001000111
+01101000000000001100110001001001
 10011000000000000111001000000000
-11011000110000000100101111100011
+11011000110000000100101111100101
 00100000001000000111111100000001
 01111000010001001111110000000000
 01111000010000111111110000000000
 01011000010101010101010101010101
 10011000000000000001111000000000
-01101000000000001100110001010001
+01101000000000001100110001010011
 00011111111011011000010000000000
 01111001001000000000010000000001
 00011000010000110001110000000000
@@ -553,7 +553,7 @@
 01111000001100001111110000000000
 01111000010100000111110000000000
 01111000001010000111110000000000
-01101000000000010100110001001010
+01101000000000010100110001001100
 10011000000000000011011000000000
 00110111110000011000010000000000
 00100100001011000000001001011110
@@ -562,14 +562,14 @@
 01111000001000111111110000000000
 01111000001001001111110000000000
 00100000010000000000001001011011
-01100000000000001100110011111011
-01101000000010001100110011111010
+01100000000000001100110011111101
+01101000000010001100110011111100
 10011000010001100111110000000000
 00100100001000101000001001011110
 00100000010000000000001001011011
-01100000000000001100101111000001
-01101000000000001100101111000001
-01101000000010001100110001001000
+01100000000000001100101111000011
+01101000000000001100101111000011
+01101000000010001100110001001010
 10101000010000000000111000000000
 00100100001000001000001001011110
 00100000010000000000001001011011
@@ -582,7 +582,7 @@
 11000010000000000000001001000011
 00011000101000100010001000000000
 00100000010000000000001001011011
-01100000000000001100110110000010
+01100000000000001100110110000100
 00011010001000100000101000000000
 00001001100000000000000000011000
 01111000001010000111110000000000
@@ -598,7 +598,7 @@
 00100000010000000010100110000001
 01111000010001101111110000000000
 00100000010000000010100100011000
-01101000000000001100110110000010
+01101000000000001100110110000100
 00100000010000000000000001101100
 00100000011000000000000000000000
 00001001100000000000000000001000
@@ -609,10 +609,10 @@
 00100000010000000010011001001101
 00100000011000000000000000000000
 00100000010000000010100100011000
-01101000000010001100110001010001
+01101000000010001100110001010011
 00100000001000000010100100110011
 00100000010000000101001111000100
-01101000000000100100110001101111
+01101000000000100100110001110001
 10011000000000000001001000000000
 00100000010000000000001000011100
 00100000010000000000001001100010
@@ -628,11 +628,11 @@
 01111000001011011111110000000000
 01111000001000111111110000000000
 01111000001001001111110000000000
-01101000000000001100110011111010
+01101000000000001100110011111100
 00001000000000001000011000001000
-01101000000000001100110001001001
+01101000000000001100110001001011
 10011000000000000111001000000000
-11011000110000000100110000000011
+11011000110000000100110000000101
 11101000110000001000000000000000
 00001000000000001000011000001000
 11000010000000000000001001111011
@@ -645,19 +645,19 @@
 01111000010011011111110000000000
 00100000011000000000000000000000
 00100000010000000111111111101001
-01101000000010100100110001101000
+01101000000010100100110001101010
 00011100010000100111111000000000
 10011000010001100111110000000000
 00100100010000010010110100011000
 00011111111000100010010000000000
-01101000000000100100110001101000
-01101000000010001100110001101100
+01101000000000100100110001101010
+01101000000010001100110001101110
 10011000010000001000010000000000
 00011010010000100111111000000000
 10011000010001100111110000000000
 00100100011000010000000000000000
 01111001001111111111111000011100
-01100000000000100100110001101000
+01100000000000100100110001101010
 00100000001000000111111111100111
 11011000010000000000000000000000
 11011111001000000000000000001000
@@ -677,7 +677,7 @@
 00100000011000000000000000000000
 00100000011000000000000000000000
 11000110000100110000000000000000
-00100000010000000000001110000011
+00100000010000000000001101110100
 00100000010000000000000011101010
 01101000000000001100000001000000
 11000011000000000000001010101101
@@ -688,53 +688,53 @@
 00100000011000000000000000000000
 01101000000000001100101011111110
 00100000011110100000000000000000
-00100000001000000000010100010010
+00100000001000000000010100000111
 00100000010000000010100101101100
 00100000010000000011010000010110
 00100000010000000111010010111001
-00100000001101011000001100110011
+00100000001101011000001100100100
 00100000010000000000000000000001
-00100000010000000111111110100001
 01101000000000001100001001000001
-11000010100000010000001010111101
+11000010100000010000001010111110
+01101000000000001100101101110110
+11000000000000010000000111110001
 01110000010010110111011011111111
-00100000001000000000001101110111
-00100000010000000000001101010101
+00100000001000000000001101101000
+00100000010000000000001101000110
 01101000000000001100101101110110
-11000000000000001000001011000011
+11000000000000001000001011000100
 11000000000000010000000111110001
 01110000010010110111011100001010
 00100000011000000000000000000000
-01110000010011011001001000000001
-00100000010000000000001011001100
+01110000010011011001010000000001
+00100000010000000000001011001101
 01101000000000001100001000010000
-11000000000110011000001011001111
-11000000000110100000001011010010
-00100000010000000000010011111001
+11000000000110011000001011010000
+11000000000110100000001011010011
+00100000010000000000010011101110
 01110000000000010110110100000110
-00100000010000000000010010011011
+00100000010000000000010010001101
 00100000001000000111110111011101
-01101000000000001100110011111110
+01101000000000001100110100000000
 01100000000000001100000111011110
 00100000011000000000000000000000
 01101000000000110100000111010000
 00100000001110100011001111101011
 00100000001000000100001001110100
 01110000000100011100011000010010
-00100000001000000000011101110000
-00100000010000000000001100110011
+00100000001000000000011101100101
+00100000010000000000001100100100
 00100000010000000100000011000000
 00100000010000000100000011011001
-11000000000110000000001011011100
-11000000000110001000001100000001
+11000000000110000000001011011101
+11000000000110001000001011110010
 00100000010000000100000011010001
 00100000000000000000001111101000
-00100000001000000000001011010110
-00100000010000000000001110011111
+00100000001000000000001011010111
+00100000010000000000001110010000
 01101000000000001100011011011110
 11000000001011010000001011100010
 11000000001010100000001011101111
-11000000011011000000001011110010
 00100000001000000100000011100000
 01110000010001101110000000000111
 01011000000000001000000000000110
@@ -752,28 +752,13 @@
 01110000010001101110000000000010
 11011010011000000100101110010100
 00100000001000000000001011100111
-01011000000000000000000000010110
-00100000010000000110010000010100
-00011111111001100111110010111101
-00100100001000101000001011010110
-01011000000000000000000000011001
-00100000010000000110010000010100
-00011111111001100111110001010101
-00100100001000101000001011010110
-01011000000000000000000000011011
-00100000010000000110010000010100
-00011111111001100111110000011101
-00100100001000101000001011010110
-01110000010001101110000000001000
-11011010011000000100101110100010
-00100000001000000000001011100111
-00100000010000000000001110011111
+00100000010000000000001110010000
 01101000000000001100011011011110
 11000000001110000100000011101000
 01110000010001101110000000000001
 00100000011000000000000000000000
 01110000000100011100011010000000
-00100000001000000000011101110000
+00100000001000000000011101100101
 01101000000010001100101101000101
 00100000001000000110100000100101
 01110000100000001000011001000000
@@ -790,33 +775,33 @@
 01111001001111111111111000000000
 01100000000100001000000001111111
 00100000011000000000000000000000
-00100000010000000000001101100100
+00100000010000000000001101010101
 00100000010000000100010000100011
 01101000000000010100011101111000
 11011000010000001010101001010101
 10011000010001100111110000000000
-00100000001000101000001101010101
+00100000001000101000001101000110
 01100000000010010100011101111000
 00100000010000000100010000011100
 01101000000000001100011011100001
 01100000000000001100011101111010
 01101000000000100100101101001100
 01100000000000100100011101111011
-01100000000000100100110001101111
-00100000010000000000001101100100
-00100000010000000000001100110101
-00100000010000000000001101001100
-00100000010000000000001101000001
-00100000010000000000001100111000
-00100000010000000000001100001010
+01100000000000100100110001110001
+00100000010000000000001101010101
+00100000010000000000001100100110
+00100000010000000000001100111101
+00100000010000000000001100110010
+00100000010000000000001100101001
+00100000010000000000001011111011
 11011000010000000000000000000111
 11011010001000000100101101110000
 11011010010000000000000001011111
 01101000000000011100011100000000
 10011010010000001111111000000000
-00100000010000000000001101000001
-00100000010000000000001100111000
-00100000010000000000001101011100
+00100000010000000000001100110010
+00100000010000000000001100101001
+00100000010000000000001101001101
 01110000010000100001001001110110
 00100000001000000011110100110110
 01101000000000011100011100000000
@@ -829,7 +814,7 @@
 01100000000100010000000010001100
 01011000000000000000000000000101
 00100000010000000110010011110011
-11000010100000000000001100111000
+11000010100000000000001100101001
 00100000011000000000000000000000
 00011111111000100010011000000000
 00011010001000100111111000000000
@@ -848,18 +833,18 @@
 01101000000000011100011100000000
 11011010001000000100011100100000
 00100000011000000000000000000000
-00100000010000000000001101100100
-00100000010000000000001101001100
+00100000010000000000001101010101
+00100000010000000000001100111101
 00100000001000000110010101100010
-00100000010000000000001101010010
-00100000010000000000001101101110
+00100000010000000000001101000011
+00100000010000000000001101011111
 00100000010000000100001101100100
 00100000010000000100001100011010
 01101000000000100100011101111011
-01100000000000100100110001101111
+01100000000000100100110001110001
 00100000011000000000000000000000
 01110000000010101010001010111001
-00100000010000000000001100001010
+00100000010000000000001011111011
 00100000010000000110100110101100
 00100000010000000110010100001011
 11011010001000000100101101000111
@@ -867,16 +852,16 @@
 00100000010000000110010101010110
 00100000001000000110100110101100
 01110000000010101010001010101011
-00100000001000000000001101011101
+00100000001000000000001101001110
 01110000010010110111010101011010
 00100000011000000000000000000000
 01110000010010110110100100000001
 01110000010010110110100000000001
 01110000010010110111010111111111
-01101000000000110100110110001100
+01101000000000110100110110001110
 01100000000000110100010010100000
 00100000011000000000000000000000
-00100000010000000000001101100100
+00100000010000000000001101010101
 11011000010000000000000000000111
 11011010001000000100101101110000
 11011010010000000000000001011111
@@ -886,36 +871,36 @@
 01101000000000001100001001000001
 11000010100000010000000111110001
 01101000000000100100101101001100
-01100000000000100100110001101111
-00100000010000000000001100100101
+01100000000000100100110001110001
+00100000010000000000001100010110
 01110000000100011100011001000001
-00100000001000000000011101110000
+00100000001000000000011101100101
 00100000010000000100010000000001
 01101000000000010100011010011111
 00100000011110100000000000000000
-01110000010011011000011100000001
+01110000010011011000100100000001
 01011000000000000000000000000000
-01100000000000010100110110001000
+01100000000000010100110110001010
 00100000011000000000000000000000
 11011000110000000001100000000000
 11011000101000000100100000001010
-00100000010000000000001110001011
+00100000010000000000001101111100
 11011000110000000001100100000000
-00100000010000000000001110001011
+00100000010000000000001101111100
 11011000110000000001101000000000
-00100000010000000000001110001011
+00100000010000000000001101111100
 11011000110000000001101100000000
 11011111001000000000000000011011
 00100000001000000111111100000001
 11011000110000000100100000001010
 11011000101000000001100000000000
-00100000010000000000001110001011
+00100000010000000000001101111100
 11011000101000000001100100000000
-00100000010000000000001110001011
+00100000010000000000001101111100
 11011000101000000001101000000000
-00100000010000000000001110001011
+00100000010000000000001101111100
 11011000101000000001101100000000
-00100000001000000000001110001011
+00100000001000000000001101111100
 01110000010000010111001000000000
 01110000010010110100001100011110
 00100000011000000000000000000000
@@ -924,34 +909,34 @@
 01011000000000000000000000000000
 01100000000000001100101101000010
 01100000000000100100011010011011
-00100000001000000000001111011000
-00100000010000000000001100110011
+00100000001000000000001111001001
+00100000010000000000001100100100
 11011010011000000100101110110010
 00100000010000000000001011100111
 01101000000000001100011101111010
-11000000111111111000010100010010
+11000000111111111000010100000111
 01101000000000001100011011100001
 01100000000000001100011101111010
-00100000001000000000010100010010
+00100000001000000000010100000111
 00100000010000000101100010010010
 00100100011110100000000000000000
 01101000000000001100101101110101
-11000000011111111000001110101110
+11000000011111111000001110011111
 01101000000000001100011011000101
 00011111111000010111111000000011
 11000001100000011000000000000000
 01101000000000001100011110011110
-00100000010110100000001111010110
+00100000010110100000001111000111
 01101000000000100100011011010011
 11000010100000101100000101111001
 00100000010000000011111110010111
 00100100011101000000000000000000
-00100000010000000000001110010110
-00100000010000000000001110011001
-00100000010000000000001111010001
+00100000010000000000001110000111
+00100000010000000000001110001010
+00100000010000000000001111000010
 11011010001000000100011010011010
 00100000010000000111111000111101
-00100000010101000000001111000000
+00100000010101000000001110110001
 00100000011000000000000000000000
 01110000010001111010001000000111
 01110000010001111010001100000100
@@ -964,7 +949,7 @@
 00100000011000000000000000000000
 11011010001000000100011010011010
 00100000010000000111111001010100
-00100000001101000000001111001000
+00100000001101000000001110111001
 00100000011000000000000000000000
 00100000010000000101011001010010
 01101000000000001100011111000011
@@ -983,24 +968,24 @@
 01110000010001111001111000000001
 00100000010000000101100000010100
 01110000010010101111111000000001
-00100000001000000000001011010100
+00100000001000000000001011010101
 00100000011101110000000000000000
 01101000000000001100000111100010
 00100000011110100000000000000000
 00100000010000000101001001110001
 00100100011110100000000000000000
 01101000000000001100011110011110
-00100000010110100000001111010110
+00100000010110100000001111000111
 01101000000000100100011011010011
 11000010100000101011111110001010
 11000010100001001011111110001010
 00100000010000000011111110010111
 00100100011101000000000000000000
-00100000010000000000001110010110
-00100000010000000000001110011001
-00100000010000000000001111010001
+00100000010000000000001110000111
+00100000010000000000001110001010
+00100000010000000000001111000010
 01101000000000001100101100000011
-11000000000000001000001111101110
+11000000000000001000001111011111
 01101000000000001100101100001010
 00100000011110100000000000000000
 00100000001000000011111110000001
@@ -1022,14 +1007,14 @@
 11100000101000101000000000000000
 00100000011000000000000000000000
 00100000010000000111111000110100
-00100000010000000000010000000010
+00100000010000000000001111110011
 00100000001000000011111011100000
 01101000000010001100011011100111
-00100000010000000000010101101100
+00100000010000000000010101100001
 01101000000010001100011011100111
 00100000010000000110100000011101
-00100000001000001000010000010000
-00100000010000000000010101100111
+00100000001000001000010000000001
+00100000010000000000010101011100
 01101000000000001100011010110110
 11000001000000000000000000000000
 01110000010001101011011000000000
@@ -1038,37 +1023,37 @@
 00011111111000010111111000000011
 01100000000000001100011101111010
 00100000001000000011110101111110
-00100000010000000000010101100111
+00100000010000000000010101011100
 00100000001000000011110101100010
 00011010011000100111111000000000
-11000000000010100000010000100011
-11000000000010101000010000110111
-11000000000101001000010000111010
-11000000000110010000010000111100
-11000000001000000000010000111110
-11000000000000100000010001000000
-11000000000010011000010001000000
+11000000000010100000010000010100
+11000000000010101000010000101000
+11000000000101001000010000101011
+11000000000110010000010000101101
+11000000001000000000010000101111
+11000000000000100000010000110001
+11000000000010011000010000110001
 11000000000011001011001111011111
-11000000000100001000010001000100
-11000000000000001000010001000110
-11000000000000010000010001010010
-11000000000101011000010001010101
-11000000000111001000010001010111
-11000000000111010000010001011011
-11000000000111100000010001011110
+11000000000100001000010000110101
+11000000000000001000010000110111
+11000000000000010000010001000011
+11000000000101011000010001000110
+11000000000111001000010001001000
+11000000000111010000010001001100
+11000000000111100000010001001111
 00100000001000000100000101111101
-00100000010000000000001111011000
+00100000010000000000001111001001
 00100000010000000100000111000011
 01011000000000000000000000000000
 01100000000000011100101101101000
 01101000000000110100101101001100
 01101000000010110100011100100010
 10011000010001100111110000000000
-00100100010000101000001101100110
+00100100010000101000001101010111
 00100000010000000011010000010000
 01110000010010110111011000000001
 01101000000000001100011110100001
-00100100001110100000010000110000
+00100100001110100000010000100001
 01110000010010110110110100010100
 01110000010010110111011100000000
 01110000010010110110110000000000
@@ -1076,24 +1061,24 @@
 01110000010010110111100000000000
 01110000010010110110101100000000
 00100000010000000000000111110011
-00100000001000000000001110111011
-00100000010000000000010001100100
+00100000001000000000001110101100
+00100000010000000000010001010101
 01110000000100011100011010100010
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000010101001100100010010
 00100000001000000111110110001111
 01110000000100011100011010110011
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011010100001
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011010100011
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011001110000
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011010110001
-00100000001000000000011101110000
-00100000010000000000010010011001
-00100000010000000000001111011000
+00100000001000000000011101100101
+00100000010000000000010010001011
+00100000010000000000001111001001
 01011000000000000000000000000000
 01100000000000011100101101101000
 01110000010010110111011000000001
@@ -1101,75 +1086,76 @@
 01110000010010110111100000000000
 01110000010010110110101100000000
 00100000010000000000000111110011
-00100000010000000000010100000011
+00100000010000000000010011111000
 01110000010010000000100100000000
 00100000001000000100001011001010
-00100000010000000000010001100100
+00100000010000000000010001010101
 01110000000100011100011010110100
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011010110010
-00100000001000000000011101110000
-00100000010000000000001101111111
-00100000010000000000001111011000
+00100000001000000000011101100101
+00100000010000000000001101110000
+00100000010000000000001111001001
 01110000000100011100011001010000
-00100000001000000000011101110000
-00100000010000000000010001100100
+00100000001000000000011101100101
+00100000010000000000010001010101
 01110000000100011100011001010001
-00100000001000000000011101110000
-00100000010000000000001111011000
+00100000001000000000011101100101
+00100000010000000000001111001001
 01110000000100011100011001010010
-00100000001000000000011101110000
-00100000010000000000010001100100
+00100000001000000000011101100101
+00100000010000000000010001010101
 01110000000100011100011010100000
-00100000001000000000011101110000
+00100000001000000000011101100101
 01101000000000001100101011111110
 00100000011110100000000000000000
 01110000010010101111111000000000
-00100000010000000000001011010100
+00100000010000000000001011010101
 01011000000000000000000000000110
 00100000010000000110010000010100
 00011111111000011111111000001000
 00011111111011010111111000000000
 00011111111000001111111000000110
 00100000001000000110010000010011
-00100000010000000000010010000010
-00100000010000000000010100000110
-00100000010000000000010011010010
-00100000010000000000010011111100
-00100000010000000000010011010111
+00100000010000000000010001110100
+00100000010000000000010011111011
+00100000010000000000010011000111
+00100000010000000000010011110001
+00100000010000000000010011001100
 00100000010000000100001000110100
-00100000010000000000010010100000
-00100000010000000000010010100111
-00100000010000000000010010111011
+00100000010000000000010010010010
+00100000010000000000010010011001
+00100000010000000000010010011100
+00100000010000000000010010110000
+00100000010000000000010010110110
+00100000010000000000010010111001
 00100000010000000000010011000001
-00100000010000000000010011000100
-00100000010000000000010011001100
-00100000010000000000010010110011
+00100000010000000000010010101000
 00100000010000000100001000110001
-00100000010000000000010010110110
-00100000010000000000010001111111
+00100000010000000000010010101011
+00100000010000000000010001110001
 00100000001000000100001000111010
 11011010011000000100101101110111
-11011010010000000000001011000011
+11011010010000000000001011000100
 00100000001000000011001101101101
 01101000000000001100101101101000
 00100000011110100000000000000000
 11011010011000000100101101101001
-11011010010000000000010010000111
+11011010010000000000010001111001
 00100000001000000011001101101101
 01110000010010110110100100000001
 01101000000000001100101101101010
 00011111111000001111111000000001
 00011111111000010111111000000001
 01100000000000001100101101101010
-11000000000000000000010010011011
+11000000000000000000010010001101
 01101000000000110100101101100010
 01100000000000110100010010100000
-00100000010000000000010010010001
+00100000010000000000010010000011
 00100000001000000111110111110100
 01110000010000110110111100011111
 01110000010000111000111100011111
-00100000010000000000010010011001
+00100000010000000000010010001011
 11011000110000000100101100010000
 11011000101000000100001101111011
 11011111001000000000000000010011
@@ -1181,66 +1167,69 @@
 01110000010000111000111100000000
 11011000111000000000000000000111
 00100000010000000100001111010010
-00100000001000000000001101101010
+00100000001000000000001101011011
 11011010011000000100101101000100
-11011010010000000000010010100011
+11011010010000000000010010010101
 00100000001000000011001101101101
 01011000000100100100111110000000
-01100000000000011100110001110110
+01100000000000011100110001111000
 01110000010010110100001000000001
 00100000011000000000000000000000
-11011010011000000100110110010011
-11011010010000000000010010101010
+11011010011000000100110110010101
+11011010010000000000001101101011
 00100000001000000011001101110100
-01110000010011011001001000000001
+11011010011000000100101111000001
+11011010010000000000010010011111
+00100000001000000011001101110100
+01110000010011011001010000000001
 01101000000000001100101101101000
-00100100001110100000010010101110
+00100100001110100000010010100011
 00100000011000000000000000000000
-01110000010011011001001100000001
+01110000010011011001010100000001
 01101000000000001100101100101111
 00100100011110100000000000000000
-01110000010011011001001100000000
+01110000010011011001010100000000
 00100000011000000000000000000000
 11011010011000000100100000001001
 11011010010000000110001101111010
 00100000001000000011001101101101
 11011010011000000100101100001001
-11011010010000000000010010111001
+11011010010000000000010010101110
 00100000001000000011001101101101
 01110000010010110000101000000001
 00100000011000000000000000000000
 11011010011000000100011010101110
-11011010010000000000010010111110
+11011010010000000000010010110011
 00100000001000000011001101110100
 01110000010010110111100000000001
-00100000010000000000010011101011
-00100000001000000000010011100000
+00100000010000000000010011100000
+00100000001000000000010011010101
 11011010011000000100011011000110
 11011010010000000011110101100000
 00100000001000000011001101101101
 01101000000000001100101101101111
 00100000011110100000000000000000
 11011010011000000100101101101101
-11011010010000000000010011001001
+11011010010000000000010010111110
 00100000001000000011001101101101
 01101000000000001100101101101110
 00100100011110100000000000000000
 00100000001000000101101111110101
 11011010011000000100101101000011
-11011010010000000000010011001111
+11011010010000000000010011000100
 00100000001000000011001101101101
 01101000000000001100011111000101
 01100000000000001100000101110010
-00100000001000000000010010100101
+00100000001000000000010010010111
 11011010011000000100100000000111
-11011010010000000000010011010101
+11011010010000000000010011001010
 00100000001000000011001101101101
 01110000010010000000011000000000
 00100000011000000000000000000000
 01101000000000001100011010110110
-00100000001110100000010011100011
-00100000010000000000010101000110
-11000000000000111000010011100011
+00100000001110100000010011011000
+00100000010000000000010100111011
+11000000000000111000010011011000
 01101000000000001100011010000101
 01100000000000001100011011011010
 01101000000000001100011011011011
@@ -1250,19 +1239,19 @@
 00100000010000000100001111010010
 00100000001000000100001111001010
 01110000010001111010000000101000
-00100000010000000000010011100110
+00100000010000000000010011011011
 00100000001000000100001110110000
 11011010011000000100011011011010
-11011010010000000000010011101001
+11011010010000000000010011011110
 00100000001000000011001101101101
 01101000000000001100101101101000
-00100100001110100000010011111001
+00100100001110100000010011101110
 00101000000011111111111000100110
-00100000010000001000010011110111
+00100000010000001000010011101100
 01101000000000001100101101110110
 00011111111001100111110011111111
-00100000010000101000010011110111
-00100000010000000000010010010001
+00100000010000101000010011101100
+00100000010000000000010010000011
 01101000000000010100011010000010
 00101111111011111111111000000111
 00100000010000001100001110010010
@@ -1277,7 +1266,7 @@
 01101000000000001100011110011111
 00100000011110100000000000000000
 11011010011000000100011110100000
-11011010010000000000010100000001
+11011010010000000000010011110110
 00100000001000000011001101101101
 01110000010001111001111100000000
 00100000001000000011010000001010
@@ -1286,8 +1275,8 @@
 00100000011000000000000000000000
 01101000000000001100011010101100
 00100000011110100000000000000000
-11000010100000010000010100001010
-00100000001000000000010100001110
+11000010100000010000010011111111
+00100000001000000000010100000011
 01101000000010001100101100100101
 00100000010000000110100000001110
 01101000000010001100101100100101
@@ -1298,86 +1287,86 @@
 00100000001000000110100000101001
 01101000000000001100011101111010
 00011111111001100111110000000001
-00100000010000101000010100011111
+00100000010000101000010100010100
 01101000000000001100011101111010
-11000000000000000000010100100001
-11000000000000011000010100100111
+11000000000000000000010100010110
+11000000000000011000010100011100
 01101000000000001100011011100000
-11000000000000110000010100101101
-11000000000000111000010100101101
-11000000000000010000010100110011
+11000000000000110000010100100010
+11000000000000111000010100100010
+11000000000000010000010100101000
 01101000000000001100011110000001
 01100000000000001100011010110101
 00100000001000000011110111000001
 01110000010001110111101000000010
 00100000011000000000000000000000
 01101000000000001100011011100000
-11000000000000110000010100101111
-11000000000000111000010100101111
-11000000000000010000010100110110
+11000000000000110000010100100100
+11000000000000111000010100100100
+11000000000000010000010100101011
 01101000000000001100011101111111
-00100000001000000000010100011101
+00100000001000000000010100010010
 01101000000000001100011011100000
-11000000000000110000010100110001
-11000000000000111000010100110001
-11000000000000010000010100111000
+11000000000000110000010100100110
+11000000000000111000010100100110
+11000000000000010000010100101101
 01101000000000001100011110000010
-00100000001000000000010100011101
+00100000001000000000010100010010
 01101000000000001100101100111000
-00100000001000000000010100011101
+00100000001000000000010100010010
 01101000000000001100101100110110
-00100000001000000000010100011101
+00100000001000000000010100010010
 01101000000000001100101100111001
-00100000001000000000010100011101
+00100000001000000000010100010010
 01101000000000001100011110000001
 00011111111000001111111000000010
-00100000001000000000010100011101
+00100000001000000000010100010010
 01101000000000001100011101111111
-00100000001000000000010100110100
+00100000001000000000010100101001
 01101000000000001100011110000010
-00100000001000000000010100110100
+00100000001000000000010100101001
 01111000010101000111110000000000
 01011000000000000000000000000000
 01100000000000110100011010011011
-00100000010000000000010101110010
+00100000010000000000010101100111
 00100000010000000100000001111001
 00100000010000000100000001111110
-00100000010000000000010101000100
-00100100001101000000011110011010
-00100000010000000000011110010001
+00100000010000000000010100111001
+00100100001101000000011110001111
+00100000010000000000011110000110
 00100000001000000011111110100000
-00100000010000000000010101000110
+00100000010000000000010100111011
 00100000001000000100000010011010
 11011010001000000000000000000000
-00100000010000000000010101001100
-00100000010000000000010101001010
+00100000010000000000010101000001
+00100000010000000000010100111111
 00100000001000000100000010001110
-00100000010000000000010101011100
-00100000001000000000010101100010
+00100000010000000000010101010001
+00100000001000000000010101010111
 01101000000010001100011011100010
-00100000010000000000010101100111
+00100000010000000000010101011100
 01101000000010001100011011100010
 00100000010000000110100000011101
 01111001001000001010001000000000
 01101000000010001100011011100011
-00100000010000000000010101100111
+00100000010000000000010101011100
 01101000000010001100011011100011
 00100000010000000110100000011101
 01111001001000001010001000000001
 01101000000010001100011011100100
-00100000010000000000010101100111
+00100000010000000000010101011100
 01101000000010001100011011100100
 00100000010000000110100000011101
 01111001001000001010001000000010
 00100000011000000000000000000000
 01101000000010001100011011100101
-00100000010000000000010101101100
+00100000010000000000010101100001
 01101000000010001100011011100101
 00100000010000000110100000011101
 01111101001000001010001000000011
-00100000001000000000010101100111
+00100000001000000000010101011100
 01101000000010001100011011100110
-00100000010000000000010101101100
+00100000010000000000010101100001
 01101000000010001100011011100110
 00100000010000000110100000011101
 01111101001000001010001000000100
@@ -1385,7 +1374,7 @@
 11011000101000001000000001111000
 00100000010000000110100000110000
 01111001001111111000010000000111
-00100000001000000000010101110000
+00100000001000000000010101100101
 01111001001111111000010000000111
 11011000101000001000000001111000
 00100000010000000110100000110000
@@ -1393,7 +1382,7 @@
 11011000101000001000000001111100
 00100000001000000110100000001010
 01101000000000001100011011100000
-11000000000001000000010101110111
+11000000000001000000010101101100
 00100000010000000011111111000000
 01111000010101000111110000000000
 00100000001000000011111111100111
@@ -1408,7 +1397,7 @@
 01011000000000000000000000000000
 01100000000000110100011010011011
 00100000011000000000000000000000
-00100000010000000000010100000011
+00100000010000000000010011111000
 00101000000011111111111000100110
 00100000010000001000000111110011
 01110000010001101011010000000000
@@ -1419,8 +1408,8 @@
 00100000001000000100001001101111
 01110000010000001001000100000000
 01110000000100011100011000110000
-00100000001000000000011101110000
-00100000010000000000001111011000
+00100000001000000000011101100101
+00100000010000000000001111001001
 00100000001000000100001011001011
 01101000000000001100010100001111
 00011111111000001111111000000001
@@ -1428,7 +1417,7 @@
 11000000000001100101001110010101
 00100000010000000101010110101010
 00100000010000000101011000011110
-00100000010000000000011100010000
+00100000010000000000011100000101
 00100000001000000101001110001111
 01101000000000001000000000010110
 00011111111000001111111000000001
@@ -1440,28 +1429,28 @@
 00100000010000000000000001101100
 00100000001000000101010010100011
 01110000000100011100011000100000
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011000100001
-00100000001000000000011101110000
+00100000001000000000011101100101
 01101000000000001000010001010110
-11000010100000101000010111000101
-00100000010000000000011100000010
+11000010100000101000010110111010
+00100000010000000000011011110111
 01101000000000001100011110001110
-00100100001110100000010110101111
+00100100001110100000010110100100
 01101000000000001000010000111111
-11000011000000100000010110110011
+11000011000000100000010110101000
 01101000000000001000001011011010
-00100000001110100000010110110011
+00100000001110100000010110101000
 00100000001000000101011001100100
 01101000000000001100011110001110
 00011111111000001111111111111111
 01100000000000001100011110001110
 00100000001000000101011001100100
 01101000000000001100010011000100
-11000000100000101000010110110110
+11000000100000101000010110101011
 01110000010001111000111000000011
 00100000010000000101100010010010
-00100000010110100000001111000100
+00100000010110100000001110110101
 00100000001000000101011000100010
 01101000000000001100011011000101
 00011111111000010111111000000011
@@ -1475,8 +1464,8 @@
 01100000000000001100001111011100
 00100000010000000101011001010000
 00100000011000000000000000000000
-00100000010000000000010110111001
-00100000001000000000011100000110
+00100000010000000000010110101110
+00100000001000000000011011111011
 01101000000000001100011110100001
 00100000011110100000000000000000
 01101000000000001100011011000101
@@ -1497,11 +1486,11 @@
 00011000110000100111111000000000
 01100000000000010100010100001101
 01101000000000001100010100001100
-11000000000000011000010111011101
+11000000000000011000010111010010
 00100000001000000101011010001101
 01101000000000001000001011011011
-11000000000000000000010111100001
-11000000000000001000010111101000
+11000000000000000000010111010110
+11000000000000001000010111011101
 00100000001000000101110001100101
 00100000010000000101110001111011
 01101000000000001100101101100001
@@ -1516,18 +1505,18 @@
 01100000000000010000010001011111
 00100000001000000101110010001010
 11101000110000010000000000000000
-11000000000000100000010111110001
-11000000000000110000011000011101
+11000000000000100000010111100110
+11000000000000110000011000010010
 00100000001000000101011010011000
 00100000010000000111111010100101
-00100000010000000000010111000111
+00100000010000000000010110111100
 00100000010000000111111010011111
 11101000110000011000000000000000
 01100000000000011000010001110111
-11000000000010000000011000000000
+11000000000010000000010111110101
 00011111111011001000010000000000
 00011000010001100111110000100100
-00100000001000010000011000001110
+00100000001000010000011000000011
 11011000010000000100011111000110
 01100000000010010100010010111100
 00100000010000000101100010101101
@@ -1548,32 +1537,32 @@
 01011000000000000000000000101011
 11100000110000010000000000000000
 00100000011000000000000000000000
-11000000000001010000011000010000
+11000000000001010000011000000101
 00100000001000000101100010101101
 01101000000010010000010001111000
 01101000000000001100010011101001
-11000010100000011000011000010111
+11000010100000011000011000001100
 01101000000000010000010001111000
 11000000000010011101101001110110
 01101000000010010000010001111000
 00100000001000000101100110111111
 01101000000000010100010011111010
 10011000010001100111110000000000
-00100100001000101000011000010011
+00100100001000101000011000001000
 00100000010000000101101001000010
-00100100001101000000011000010011
+00100100001101000000011000001000
 00100000001000000101100111100010
 11101000110000001000000000000000
-11000000000000001000011000100001
-11000000000000101000011000100011
+11000000000000001000011000010110
+11000000000000101000011000011000
 00100000001000000101101011110101
 01110000010010110110111000000001
 00100000001000000101101100001001
 01110000000100011100011010000010
-00100000001000000000011101110000
+00100000001000000000011101100101
 01101000000000001000000000010110
 11000000100100111101011011110010
-00100000010000000000011000101011
+00100000010000000000011000100000
 11011000111000000000000000000000
 01101000000000010100010010000010
 00100000001000000111111100001000
@@ -1583,7 +1572,7 @@
 00011111111000001111111011111010
 00100000001000000011110010111110
 01111000010101011111110000000000
-00100000001101110000011000110011
+00100000001101110000011000101000
 00100100001101101101100000000110
 00100000010000000010101111001011
 01101000000000010100000011000001
@@ -1593,7 +1582,7 @@
 00100100001000001010101111011110
 00100000001000000101011111111011
 01110000000100011100011000100010
-00100000001000000000011101110000
+00100000001000000000011101100101
 01101000000100001000000001110111
 00011111111000010111111011111101
 01100000000100001000000001110111
@@ -1603,7 +1592,7 @@
 00100000010000000110001111101110
 00011000010000010000010011111101
 00100000000000000000000000001101
-00100000010000000000011001001001
+00100000010000000000011000111110
 01100000000110001000000001110011
 00100000011000000000000000000000
 00100000010000000110010011011101
@@ -1614,7 +1603,7 @@
 01100000000100001000000010000001
 00100000011000000000000000000000
 01110000000100011100011000000000
-00100000001000000000011101110000
+00100000001000000000011101100101
 00100000010000000010000111001001
 00100100011101000000000000000000
 01111000010101000111110000000000
@@ -1623,10 +1612,10 @@
 01111001001111111000000000101101
 00100000010000000010101001001111
 00100000010000000010001011100110
-11000101000001011000011001011110
+11000101000001011000011001010011
 00100000010000000010010001010101
-00100100001110100000011001010111
-11000101000101101000011001100111
+00100100001110100000011001001100
+11000101000101101000011001011100
 00100000001000000010000111101100
 00100000010000000010101001001101
 11011000001000000000000000010000
@@ -1636,7 +1625,7 @@
 01101000000000001000000001110111
 10011000000000000000100000000000
 01110000000000000001000100000010
-00100000001000000000011001010111
+00100000001000000000011001001100
 01101000000000100000000101100101
 00011111111000001111111000001000
 01100000000000100000000101100101
@@ -1644,16 +1633,16 @@
 11000101000101100010011001001101
 00100000001000000010010110001111
 01110000000100011100011000100011
-00100000001000000000011101110000
+00100000001000000000011101100101
 01101000000000001000000000110000
 00101111111011111111111000000000
-00100000010000001000011001110011
+00100000010000001000011001101000
 00100000001000000010010010001010
 01101000000000001000000001000111
 00101111111011111111111000000011
-00100000010000001000011100000110
-00100100010000001000011100000010
-00100000001000000000011100010000
+00100000010000001000011011111011
+00100100010000001000011011110111
+00100000001000000000011100000101
 00100000010000000010010011110000
 00100100001011000010100011111001
 00100000010000000010100110111011
@@ -1666,7 +1655,7 @@
 01101000000000001100000010010001
 00100000011110100000000000000000
 01101000000000001100011001011010
-00100000001110100000011010000111
+00100000001110100000011001111100
 01101000000000001100010110110001
 00100000011110100000000000000000
 01101000000000001100010011000000
@@ -1693,18 +1682,18 @@
 11000101100001101010101111011110
 00100000010000000101001001110100
 00100100001110100010101111011110
-00100000010110100000011010100001
+00100000010110100000011010010110
 00100000001000000010101110111110
 01110000000000001000101000000001
 01110000000000001000101100000000
 00100000011000000000000000000000
 01110000000100011100011000000001
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011000000010
-00100000001000000000011101110000
+00100000001000000000011101100101
 01101000000000001000010101010010
 01100000000000001000010011001001
-11000000000010011000011010101100
+11000000000010011000011010100001
 00100000001000000101110110110100
 00100000010000000101110111001111
 01110000010010101111111100000001
@@ -1716,15 +1705,15 @@
 00100000010000000110001011000001
 01101000000000001000000001001000
 00100000011110100000000000000000
-11000010100000111000011010111011
-11000000000000011000011010111101
-11000000000110001000011010111111
-11000000000010111000011011000001
+11000010100000111000011010110000
+11000000000000011000011010110010
+11000000000110001000011010110100
+11000000000010111000011010110110
 00100000001000000110000000010000
 01110000000100011100011000010000
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000000100011100011000010001
-00100000001000000000011101110000
+00100000001000000000011101100101
 01110000010010110000000100000001
 00100000001000000110000111000011
 01110000010010110000100100000100
@@ -1733,16 +1722,16 @@
 00100100011110100000000000000000
 01101000000000001000000001010101
 00100000011110100000000000000000
-11000000000000100000011011100101
-11000000000010000000011011001010
+11000000000000100000011011011010
+11000000000010000000011010111111
 00100000001000000110001100100000
 01101000000000001100010101011011
 11000001000000000000000000000000
-11000000000000001000011011001110
+11000000000000001000011011000011
 00100000001000000110001101011111
 00100000011101001000000000000000
 01101000000000001000000101101101
-11000010100000000000011011010010
+11000010100000000000011011000111
 00100000001000000110001110011001
 01101000000000001100101100000001
 11000000000000001110001110011101
@@ -1759,7 +1748,7 @@
 10011000010000001000010000000000
 00011100010000100111111000000000
 10011000010001100111110000000000
-00100100001000010000011011100011
+00100100001000010000011011011000
 00100000001000000110001101001001
 01110000010010110000000000000001
 00100000011000000000000000000000
@@ -1769,13 +1758,13 @@
 00100100001110100111110111011011
 01101000000000001000101010011001
 11000101100001001111110111010110
-11000000000011111000011011101111
-11000000000100000000011011110010
-11000000000010010000011011111100
+11000000000011111000011011100100
+11000000000100000000011011100111
+11000000000010010000011011110001
 00100000001000000111110111001010
 01110000000000011000010100110100
 01101000000000110000010001001111
-00100000001000000000011011110100
+00100000001000000000011011101001
 01110000000000011000010100110011
 01101000000000110000000001000000
 01100000000000110000000110000110
@@ -1785,67 +1774,67 @@
 00100000010000000100001111010010
 00100000010000000100001011101000
 00100000010000000100001011111011
-00100000001000000000001100100101
+00100000001000000000001100010110
 00100000010000000101100010010000
 00100100011110100000000000000000
 00100000001000000101101010111111
-01110000010011011000001100000001
-01110000010011011000000000000000
+01110000010011011000010100000001
+01110000010011011000001000000000
 00100000011000000000000000000000
-01101000000000001100110110000000
+01101000000000001100110110000010
 00011111111000001111111000000001
-01100000000000001100110110000000
+01100000000000001100110110000010
 00100000011000000000000000000000
-01101000000000001100110110000000
+01101000000000001100110110000010
 00011111111001100111110000000010
-00100100010000010000011100001110
-01101000000000001100110110000000
+00100100010000010000011100000011
+01101000000000001100110110000010
 11000001000000000000000000000000
 00011111111000001111111111111111
-01100000000000001100110110000000
+01100000000000001100110110000010
 00100000011000000000000000000000
-01110000010011011000000000000011
+01110000010011011000001000000011
 00100000011000000000000000000000
 01101000000000010100011010000010
 11000011100001011000000000000000
 11000011100000111000000000000000
 11000011100000110000000000000000
-11011010001000000100110100001001
+11011010001000000100110100001011
 00100000010000000000001010010101
-01100000000010001100110110000001
+01100000000010001100110110000011
 01011000000000000000000010000010
-11000101000100110000011100011010
+11000101000100110000011100001111
 01011000000000000000000010000000
 10011000010001100111110000000000
-00100100001000010000011100110010
-01101000000000001100110110000000
+00100100001000010000011100100111
+01101000000000001100110110000010
 00011111111001100111110000000010
-00100100001000010000011100100010
-01101000000000001100110110000000
-11000000000000000000011100110011
+00100100001000010000011100010111
+01101000000000001100110110000010
+11000000000000000000011100101000
 00100000011000000000000000000000
-01101000000000001100110110000000
+01101000000000001100110110000010
 11000001100110010000000000000000
-01110000010011011000000000000000
-01101000000010001100110110000001
+01110000010011011000001000000000
+01101000000010001100110110000011
 01011000000000000000000001110111
-11000101000100110000011100101001
+11000101000100110000011100011110
 01011000000000000000000001110101
 10011000010001100111110000000000
 00100100011000010000000000000000
-01101000000000001100110110000011
-11000000000000000000011100111010
+01101000000000001100110110000101
+11000000000000000000011100101111
 00011111111000001111111111111111
-01100000000000001100110110000011
-11000000000000000000011100111010
+01100000000000001100110110000101
+11000000000000000000011100101111
 01110000010000011101111000000000
 00100000011000000000000000000000
-01110000010011011000000000000000
-01101000000000001100110110000011
-11000000000000010000011100111000
+01110000010011011000001000000000
+01101000000000001100110110000101
+11000000000000010000011100101101
 00011111111000001111111000000001
-01100000000000001100110110000011
-11000000000000001000011100110000
+01100000000000001100110110000101
+11000000000000001000011100100101
 01110000010000011101111000000010
 00100000011000000000000000000000
 01110000010000011101111000000100
@@ -1866,20 +1855,20 @@
 00100000000000000000000000001010
 01110000100010010000001001111101
 01101000000000001100000111011110
-11000000000000010000011101010100
-11000000000000100000011101011001
-11000000000100000000011101101000
-00100000010000000000011101011110
+11000000000000010000011101001001
+11000000000000100000011101001110
+11000000000100000000011101011101
+00100000010000000000011101010011
 01110000100010010101010111010000
 01110000100010010101011011100000
 01110000100010010101100001101100
 00100000001000000010100101001011
-00100000010000000000011101100011
+00100000010000000000011101011000
 01110000100010010101010111010000
 01110000100010010101011011100000
 01110000100010010101100000111100
 00100000001000000010100101010011
-00100000010000000000011101011110
+00100000010000000000011101010011
 01110000100010010101010111010000
 01110000100010010101011011000000
 01110000100010010101100001101100
@@ -1906,7 +1895,7 @@
 00011000010100011000010000000000
 01101000000000001100101101010010
 10011000010001100111110000000000
-00100000001000101000011110001111
+00100000001000101000011110000100
 01100000000010001100101101010010
 00011000010000001000010000000001
 01011000000000000000000100000000
@@ -1917,7 +1906,7 @@
 10011000010000001111111000000000
 00011111111000001111111111111011
 01100000000000011100101101011001
-00100000010000000000001101100100
+00100000010000000000001101010101
 01101000000000011100101101011001
 11011000010000000000000100000000
 11011010001000000001111100000000
@@ -1925,8 +1914,8 @@
 01101000000000100001111100000000
 01101000000010100100101101011100
 10011000010001100111110000000000
-00100100001000101000011110000000
-00100000010000000000001100110011
+00100100001000101000011101110101
+00100000010000000000001100100100
 01011000000000000001111100000000
 01100000000000010100000110011001
 01110000010000011001101101000000
@@ -1937,13 +1926,13 @@
 00100000001000000000000000000001
 01101000000000100100011010011011
 00100000011110100000000000000000
-00100000010000000000011111110001
+00100000010000000000011111100110
 01011000000000000000000000000110
-00100000010000000000011111100100
+00100000010000000000011111011001
 01011000000000000000000000000011
-00100000010000000000011111101010
+00100000010000000000011111011111
 01101000000000001100101100001011
-11000000000000001000011110011101
+11000000000000001000011110010010
 11011111001000000000000000000101
 11011000101000000100101100001011
 00100000001000000111111011010100
@@ -1951,7 +1940,7 @@
 01100000000000010001000110111110
 01101000000000010100011010011011
 01100000000000010001000111000000
-00100000010000000000011110110000
+00100000010000000000011110100101
 01101000000000010001000110111110
 01100000000000010100101100001100
 01101000000000010001000111000000
@@ -1960,7 +1949,7 @@
 01100000000000010001000110111110
 01101000000000010100011010011101
 01100000000000010001000111000000
-00100000010000000000011110111000
+00100000010000000000011110101101
 01101000000000010001000110111110
 01100000000000010100101100001110
 01101000000000010001000111000000
@@ -1973,7 +1962,7 @@
 10011000010000001111111000000000
 00011111111000010000010000000001
 01100000000010001100101110111110
-00100000001000000000011111000000
+00100000001000000000011110110101
 01101000000000010001000110111110
 01101000000010010001000111000000
 10011000010000001111111000000000
@@ -1981,35 +1970,35 @@
 10011000010000001111111000000000
 00011111111000010000010000000001
 01100000000010001100101110111111
-00100000001000000000011111000000
+00100000001000000000011110110101
 01100000000000011001000111000010
 00101111111011111111111000010000
-00100000001000001000011111001010
+00100000001000001000011110111111
 01101000000000001001000111000011
-11000000011111111000011111010001
+11000000011111111000011111000110
 01101000000000001001000111000010
 00011111111000110111111000000000
 01100000000000010001000110111110
 01100000000000010001000111000000
 00100000011000000000000000000000
 01101000000000001001000111000011
-11000000000000000000011111001110
+11000000000000000000011111000011
 01101000000000011001000111000010
-00100000001000000000011111000110
+00100000001000000000011110111011
 01110000000100011100010000000000
 01101000000000001001000111000010
-00100000001000000000011111000110
+00100000001000000000011110111011
 01101000000000001001000111000010
-00100000010000000000011111011100
+00100000010000000000011111010001
 01100000000000001001000110111110
 01100000000000001001000111000000
-00100000001110100000011111011010
+00100000001110100000011111001111
 01011000000000000000000011111111
 01100000000000001001000110111111
 01100000000000001001000111000001
 00100000011000000000000000000000
 01011000000000000000000000000000
-00100000001000000000011111010111
+00100000001000000000011111001100
 00011111111001100111111000000000
 01100000000000001000101010101110
 01101000000000001000101010101110
@@ -2019,34 +2008,45 @@
 00011111111001100111111000000000
 00100000011000000000000000000000
 10011010001001100111110000000000
-00100100001000010000011111101111
+00100100001000010000011111100100
 10011010010001100111110000000000
-00100100001000010000011111101111
+00100100001000010000011111100100
 01110000010010110000101100000000
 00100000011000000000000000000000
 10011010001001100111110000000000
 00100100011000010000000000000000
 10011010010001100111110000000000
 00100100011000010000000000000000
-00100000001000000000011111101000
+00100000001000000000011111011101
 01110000010010110000101100000001
 00100000011000000000000000000000
 01101000000000010100011010011011
-00100000010000000000011111111000
+00100000010000000000011111101101
 00011111111000100010001000000000
 01101000000000010100011010011101
-00100000010000000000011111111000
+00100000010000000000011111101101
 00011111111000100010010000000000
 00100000011000000000000000000000
 01100000000000010001000111000000
 01101000000000001001000111000001
-11000000011111111000011111111110
+11000000011111111000011111110011
 01101000000000001001000111000000
 00011111111000010111111011111111
 00100000011000000000000000000000
 01101000000000010001000111000000
 00011111111001100111111000000000
-00100000001000000000011111111100
+00100000001000000000011111110001
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
                                 
                                 
                                 
@@ -65555,7 +65555,7 @@
 01101000000000010100011010000010
 11000010100001100100001010110000
 00100000010000000011001110101001
-00100000010000000000010101000110
+00100000010000000000010100111011
 11000000000000111000000000011010
 01101000000000001100011010110110
 00100000001110100000000000011010
@@ -65593,7 +65593,7 @@
 01110000010010110000001100000001
 00100000011000000000000000000000
 00011000010000100111111000000000
-11000000000000101000010001000010
+11000000000000101000010000110011
 00100000001000000100110101000001
                                 
                                 
@@ -131079,10 +131079,10 @@
 01110000010001111010000100000001
 01101000000000010100011010101000
 01100000000000010100011010101110
-00100000010000000000010010011001
+00100000010000000000010010001011
 00100000010000000011010000011000
 11011000110000000100001110010000
-00100000010000000000010010010101
+00100000010000000000010010000111
 00100000001000000111110111110100
 01101000000000001000000001001000
 11000000010000100000000000010010
@@ -262145,14 +262145,14 @@
                                 
 11000000000110000000000000000011
 00100000011000000000000000000000
-00100000010000000000001011001100
+00100000010000000000001011001101
 01110000010010110110111000000000
 01110000010010110110101100000001
 01110000010001110010000000000001
 01110000010001111001111000000000
 01101000000000110100101101100010
 01100000000000110100010010100000
-00100000010000000000001101100110
+00100000010000000000001101010111
 00100000010000000011010000011000
 01101000000000010100011010000111
 01100000000000010100011010101100
@@ -262160,9 +262160,9 @@
 01011000000000000000000000000000
 01100000000000010100011010110000
 01100000000000010100011010101110
-00100000010000000000010010011001
+00100000010000000000010010001011
 00100000010000000100001111001010
-00100000010000000000001101010101
+00100000010000000000001101000110
 01101000000000001100001000010000
 00011111111001100111110000110011
 00100000010000101000000000011110
@@ -262174,7 +262174,7 @@
 00100000011000000000000000000000
 01101000000000110100101101100010
 01100000000000110100010010100000
-00100000010000000000010010010001
+00100000010000000000010010000011
 00100000001000000111110111110100
                                 
                                 
@@ -327680,34 +327680,41 @@
                                 
                                 
 11000000001000000000000000000101
-11000000001000001000000000010111
-11000000001000010000000000011111
+11000000001000001000000000011001
+11000000001000010000000000100110
 00100000011000000000000000000000
-00100000010000000000000000001110
-00100000001101000000001101111010
+00100000010000000000000000010000
+00100000001101000000001101101011
 01111001001000000000000000100110
-01101000000000001100110110011011
+01101000000000001100110110011101
 01111001001000000111111000000010
-01100000000000001100110110011011
+01100000000000001100110110011101
 00100000010000000000000111011100
 00100000010000000000000101011110
-00100000001000000000000000011011
+01101000000000001100001001000001
+11000010100000010000000000011101
+00100000001000000000000000100010
 11011111001000000000000000000010
-11011000110000000100110001101111
+11011000110000000100110001110001
 00100000010000000111111111100111
 01011000000000001111111111111111
 11101000110010010000000000000000
 10011000010001100111110000000000
 00100100010000101111111111101001
-11000010000000000000000000010010
+11000010000000000000000000010100
 00100000011000000000000000000000
 01111001001000000000000000100110
-01101000000000001100110110011011
+01101000000000001100110110011101
 01111001001000000111111000000001
-01100000000000001100110110011011
-01011000000000000000000000111100
-01100000000000010100110110010011
-01110000010011011001001000000000
+01100000000000001100110110011101
+00100000010000000000010001011000
+01011000000000000000011100001000
+01100000000000010100101111000001
+01110000010011011001010000000000
+00100000011000000000000000000000
+01011000000000000000000000011110
+01100000000000010100110110010101
+01110000010011011001010000000000
 00100000011000000000000000000000
 01101000000000100100011011010011
 11000100000010001000000000000000
@@ -327719,16 +327726,9 @@
 01011000000000000000000000000000
 01100000000000010100011010101110
 01100000000000001100011010110100
-01100000000000010100110001110100
+01100000000000010100110001110110
 00100000010000000100001011001010
-00100000001000000000001101111010
-                                
-                                
-                                
-                                
-                                
-                                
-                                
+00100000001000000000001101101011
                                 
                                 
                                 
@@ -393222,12 +393222,12 @@
 00100000010000000100001111010010
 01110000010001101010011100000000
 00100000010000000100000001011101
-00100000010000000000001011001100
+00100000010000000000001011001101
 00100000001000000000000000010001
-01110000010011011000011100000000
-00100000010000000000001011001100
+01110000010011011000100100000000
+00100000010000000000001011001101
 00100000010000000000000111110011
-00100000010000000000001101010101
+00100000010000000000001101000110
 01101000000000001100101101110110
 11000001100000010000000000000000
 00100000001000000011010000001010
@@ -393237,35 +393237,35 @@
 01100000000000011100101101101000
 00100000010000000100000111000110
 00100000010000000000000000011110
-00100000010000000000010100000011
+00100000010000000000010011111000
 00100000010000000011111110001101
-01101000000000100100110001101111
+01101000000000100100110001110001
 01100000000000100100011101111011
 00100000010000000100001101100110
 01110000010010110111011000000010
-00100000001000000000001100100101
+00100000001000000000001100010110
 01011000000000000000000000000000
-01100000000000011100110110010010
+01100000000000011100110110010100
 00100000011000000000000000000000
-01101000000000001100110110010010
+01101000000000001100110110010100
 11000000000000001010110111010100
 00100000010000000000000000110000
 00100000010000000000000110101010
 00100100001011000000000101011110
 00100100001101111000000101011110
-01101000000000001100110110011011
+01101000000000001100110110011101
 01111001001111111111111000000010
-01100000000000001100110110011011
+01100000000000001100110110011101
 01110000010010110100001000000000
 00100000010000000010111100100000
 00100000010000000000000110100111
-00100000001000000000001101111111
-01101000000000100100110000100111
+00100000001000000000001101110000
+01101000000000100100110000101001
 00100000001000000000000111011011
 01110000000100011001111011111111
-01101000000000001100110001001000
+01101000000000001100110001001010
 01100000000000001001000110011111
-01101000000000100100110001111110
+01101000000000100100110010000000
 01100000000000100001000110100000
 11011000010000000000000000000110
 11011010001000000001000110011110
@@ -458751,12 +458751,12 @@
                                 
                                 
                                 
-01101000000000001100110110010010
+01101000000000001100110110010100
 11000000000000001010110111010100
 01110000000100011001111011111111
-01101000000000001100110001001000
+01101000000000001100110001001010
 01100000000000001001000110011111
-01101000000000100100110001111110
+01101000000000100100110010000000
 01100000000000100001000110100000
 11011000010000000000000000000110
 11011010001000000001000110011110
@@ -458766,52 +458766,52 @@
 00100100001011000000000000100110
 00100100001101111000000000100110
 00100000010000000000000111010000
-01101000000000100100110001101111
-01101000000010100100110110001100
+01101000000000100100110001110001
+01101000000010100100110110001110
 10011000010001100111110000000000
 00100000001000101000000000010110
-01101000000000001100110001000101
+01101000000000001100110001000111
 11000001100001000000000000000000
-01110000010011011001101100000000
-00100000010000000000001011001100
-01101000000000100100110001101111
-01101000000010100100110001010011
+01110000010011011001110100000000
+00100000010000000000001011001101
+01101000000000100100110001110001
+01101000000010100100110001010101
 10011000010001100111110000000000
 00100000001000101000000111101001
-01101000000000100100110001101111
-01101000000010100100110001111110
+01101000000000100100110001110001
+01101000000010100100110010000000
 10011000010001100111110000000000
 00100000010000101000000000100100
 01110000010010110100001000000000
 00100000010000000010111100100000
 00100000010000000000000110100111
-00100000001000000000001101111111
-01101000000000100100110000100111
+00100000001000000000001101110000
+01101000000000100100110000101001
 00100000001000000000000111011011
-01101000000000001100110110000101
+01101000000000001100110110000111
 00011111111000001111111000000001
 00011111111000010111111000000011
-01100000000000001100110110000101
+01100000000000001100110110000111
 11000000000000000000000000101101
 11000000000000010000000000110111
 00100000001000000000000111010111
-00100000010000000000001011001100
-01101000000000100100110001111110
-01100000000000100100110001101111
-01101000000000001100110110010101
-01100000000000001100110001010010
+00100000010000000000001011001101
+01101000000000100100110010000000
+01100000000000100100110001110001
+01101000000000001100110110010111
+01100000000000001100110001010100
 00100000010000000000000000110101
-01100000000010001100110110010101
+01100000000010001100110110010111
 00100000011000000000000000000000
 00100000010000000000000111011100
 00100000001000000000000101011110
 01110000010000011101111000100000
-01101000000000100100110110001100
-01100000000000100100110001101111
-01101000000000001100110110010110
-01100000000000001100110001010010
+01101000000000100100110110001110
+01100000000000100100110001110001
+01101000000000001100110110011000
+01100000000000001100110001010100
 00100000010000000000000000110101
-01100000000010001100110110010110
+01100000000010001100110110011000
 00100000011000000000000000000000
                                 
                                 
@@ -524296,20 +524296,20 @@
 01110000010010110111010111111111
 00100000010000000100001011111011
 01110000010001110010000111111111
-00100000001000000000001100100101
+00100000001000000000001100010110
 01101000000000001100101101000010
 00100000011110100000000000000000
-01101000000000001100110001110011
+01101000000000001100110001110101
 00100000011110100000000000000000
-01101000000000001100110110011010
+01101000000000001100110110011100
 00011111111000001111111000000001
 00011111111000010111111000000011
-01100000000000001100110110011010
+01100000000000001100110110011100
 00100100011110100000000000000000
-01110000010011011001100100000000
-01101000000000001100110110011001
+01110000010011011001101100000000
+01101000000000001100110110011011
 00011111111000001111111000000001
-01100000000000001100110110011001
+01100000000000001100110110011011
 00011111111001100111110000001000
 00100100001000010000000000011111
 00100000010000000000000000100101
@@ -524318,15 +524318,15 @@
 00100100001101111000000000101110
 00100000010000000000000100010110
 00100000010000000000000110100111
-01101000000000001100110110011000
+01101000000000001100110110011010
 00011111111000001111111000000001
-01100000000000001100110110011000
+01100000000000001100110110011010
 11000000000010000000000100001110
 00100000011000000000000000000000
 01110000000100011001111011111111
-01101000000000001100110001001000
+01101000000000001100110001001010
 01100000000000001001000110011111
-01101000000000100100110001111110
+01101000000000100100110010000000
 01100000000000100001000110100000
 11011000010000000000000000000110
 11011010001000000001000110011110
@@ -589832,14 +589832,14 @@
 11011000010000000000000000011010
 00100000010000000110011111111011
 00100000010000000011111001010100
-00100000010000000000001100011000
+00100000010000000000001100001001
 01101000000000001100011100100000
 11000001000000010000000000000000
 01101000000000110100101101001100
 01101000000010110100011100100010
 10011000010001100111110000000000
-00100100001000101000001101100110
-00100000001000000000001101101000
+00100100001000101000001101010111
+00100000001000000000001101011001
 00100000011000000000000000000000
 00100000010000000111010010111001
 11011000110000001000110000000000
@@ -589872,7 +589872,7 @@
 01111001001111111111111000000101
 01100000000100001000000001111011
 11011000010000000000000000011010
-00100000010000000000010101100111
+00100000010000000000010101011100
 11011000010000000000000000011010
 00100000010000000110100000011101
 01101000000010001100011011110111
@@ -655362,25 +655362,25 @@
 11000000010010000000000000000100
 11000000010010001000000000011110
 00100000011000000000000000000000
-01101000000000001100110001001100
+01101000000000001100110001001110
 11000000000000001111111111100111
-01101000000000001100110001010111
+01101000000000001100110001011001
 11000000000000001000000000001011
 11000000000000010000000000001110
 11000000000000011000000000010001
 00100000001000000010101010001100
-01110000010011000101011100010001
+01110000010011000101100100010001
 01110000000100011001111010101010
 00100000001000000000000000010011
-01110000010011000101011100010010
+01110000010011000101100100010010
 01110000000100011001111001010101
 00100000001000000000000000010011
-01110000010011000101011100010011
+01110000010011000101100100010011
 01110000000100011001111000100010
-01101000000000001100110001001000
+01101000000000001100110001001010
 00011111111000010111111000000111
 01100000000000001001000110011111
-01101000000000100100110001111110
+01101000000000100100110010000000
 01100000000000100001000110100000
 01110000000100011010010000000000
 11011010001000000001000110011110
@@ -655388,20 +655388,20 @@
 00100000010000000000000111111000
 00100000010000000000000101110011
 00100000001000000111111111100111
-01101000000000001100110001010111
+01101000000000001100110001011001
 11000001011111111000000000000000
 11000000000010001000000000100100
 11000000000010010000000000100110
 11000000000010011000000000101000
 00100000011000000000000000000000
-01110000010011000101011100000010
+01110000010011000101100100000010
 00100000001000000000000110100011
-01110000010011000101011100000011
+01110000010011000101100100000011
 00100000001000000000000110100011
-01110000010011000101011111111111
+01110000010011000101100111111111
 01110000000010101001100100111001
 00100000010000000111110110000110
-01101000000000100100110000100111
+01101000000000100100110000101001
 00100000010000000000000111011011
 00100000001000000000000110100011
                                 
@@ -720909,11 +720909,11 @@
 01011000000000000000000000001001
 01100000000000010100010010010110
 01100000000000010100010010011000
-00100000010000000000010000111010
+00100000010000000000010000101011
 01110000010001111100010000000001
 00100000011000000000000000000000
 01110000010010110110000100000001
-00100000001000000000010111100100
+00100000001000000000010111011001
 01101000000000010100011010000010
 11000011100001100000000000000000
 11000011100000110000000000000000
@@ -720927,15 +720927,15 @@
 01100000000000010100010010011000
 01110000010001111100010000000000
 01110000010001111001111000000000
-00100000010000000000001110111011
+00100000010000000000001110101100
 00100000010000000101100000010110
 00100000010000000100000111011001
-00100000010000000000001100100101
+00100000010000000000001100010110
 01101000000000001100101101101011
 00100000011110100000000000000000
 01101000000000110100101101100010
 01100000000000110100010010100000
-00100000010000000000010010010001
+00100000010000000000010010000011
 00100000001000000111110111110100
 01101000000100100000000100111000
 01111001001000000111111000011010
@@ -720943,10 +720943,10 @@
 00100000010000000010110000100001
 00100000010000000111010010111101
 00100000010000000100010010000010
-00100000010000000000001100100101
+00100000010000000000001100010110
 00100000010000000011111010011111
 00100000010000000000000011101100
-00100000010000000000001101011100
+00100000010000000000001101001101
 01101000000100001000000010000001
 00011111111000010111111011110111
 01100000000100001000000010000001
@@ -786451,12 +786451,12 @@
 11000000000000001000000000010101
 01110000010001101100011000010100
 00100000001000000000000000010111
-00100000010000000000010000111010
+00100000010000000000010000101011
 01110000010001101100011000001010
 11011000111000000000000000000001
 00100000001000000100000110111001
 01110000010010101111111100000000
 01110000010010110000000100000000
 01110000010010110000101000000000
-00100000010000000000001100100101
+00100000010000000000001100010110
 00100000001000000100000111011001
Index: XZR_3MODE_2Ch_24G_First_NEW/output/flash.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/flash.dat	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/flash.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-06
-20
+da
+1f
 20
 20
 00
@@ -11,19 +11,19 @@
 20
 40
 03
-bb
+ac
 68
 00
 c1
 de
 60
 00
-cc
-fe
+cd
+00
 20
 40
 06
-ff
+f4
 68
 00
 c6
@@ -35,15 +35,15 @@
 20
 40
 04
-e0
+d5
 20
 40
 03
-33
+24
 20
 40
 07
-9a
+8f
 20
 40
 00
@@ -59,7 +59,7 @@
 60
 02
 4c
-7e
+80
 20
 40
 58
@@ -102,20 +102,20 @@
 a2
 20
 20
-03
-06
+02
+f7
 58
 00
 03
-7c
+6d
 60
 01
 4d
-78
+7a
 58
 00
 03
-a7
+98
 60
 01
 41
@@ -123,7 +123,7 @@
 58
 00
 06
-3a
+2f
 60
 01
 41
@@ -131,7 +131,7 @@
 58
 00
 03
-da
+cb
 60
 01
 41
@@ -147,7 +147,7 @@
 58
 00
 04
-12
+03
 60
 01
 41
@@ -155,7 +155,7 @@
 58
 00
 03
-ff
+f0
 60
 01
 41
@@ -163,7 +163,7 @@
 58
 00
 04
-61
+52
 60
 01
 41
@@ -171,7 +171,7 @@
 58
 00
 04
-6e
+5f
 60
 01
 41
@@ -187,7 +187,7 @@
 60
 01
 4d
-8a
+8c
 24
 55
 80
@@ -195,11 +195,11 @@
 20
 40
 02
-d4
+d5
 20
 40
 04
-67
+58
 68
 00
 c7
@@ -231,7 +231,7 @@
 20
 20
 03
-a4
+95
 58
 00
 01
@@ -239,7 +239,7 @@
 60
 01
 4d
-8a
+8c
 20
 60
 00
@@ -275,47 +275,47 @@
 c0
 42
 87
-6b
+60
 c0
 44
 87
-3c
+31
 c0
 45
 07
-6d
+62
 c0
 0d
 86
-4f
+44
 c0
 13
 06
-51
+46
 c0
 24
 06
-6d
+62
 c0
 25
 06
-6f
+64
 c0
 28
 86
-78
+6d
 c0
 2c
 86
-6b
+60
 c0
 53
 86
-7d
+72
 c0
 56
 86
-93
+88
 c0
 65
 b3
@@ -323,7 +323,7 @@
 c0
 74
 86
-a4
+99
 c0
 50
 80
@@ -343,23 +343,23 @@
 c0
 71
 85
-12
+07
 c0
 73
 05
-3a
+2f
 c0
 75
 05
-82
+77
 c0
 75
 85
-8b
+80
 c0
 76
 05
-8e
+83
 20
 20
 2a
@@ -367,71 +367,71 @@
 c0
 1c
 85
-90
+85
 c0
 21
 85
-98
+8d
 c0
 25
 05
-9e
+93
 c0
 2b
 85
-a1
+96
 c0
 2c
 85
-a3
+98
 c0
 31
 85
-a5
+9a
 c0
 33
 05
-ce
+c3
 c0
 33
 85
-ed
+e2
 c0
 35
 06
-25
+1a
 c0
 3b
 86
-30
+25
 c0
 7d
 06
-e7
+dc
 c0
 02
 86
-a6
+9b
 c0
 40
 06
-a8
+9d
 c0
 41
 06
-b2
+a7
 c0
 44
 06
-c3
+b8
 c0
 46
 06
-3c
+31
 c0
 46
 86
-48
+3d
 20
 20
 2a
@@ -443,11 +443,11 @@
 68
 08
 cd
-02
+04
 58
 00
 4d
-09
+0b
 98
 40
 8a
@@ -471,7 +471,7 @@
 60
 08
 cd
-02
+04
 20
 60
 00
@@ -491,7 +491,7 @@
 20
 40
 03
-8d
+7e
 20
 40
 6a
@@ -631,7 +631,7 @@
 68
 00
 cd
-9b
+9d
 c2
 80
 80
@@ -643,7 +643,7 @@
 68
 00
 cd
-87
+89
 c0
 00
 80
@@ -667,7 +667,7 @@
 68
 00
 cc
-57
+59
 c1
 ff
 80
@@ -675,7 +675,7 @@
 20
 40
 07
-10
+05
 20
 40
 00
@@ -687,7 +687,7 @@
 c0
 00
 83
-7f
+70
 20
 40
 00
@@ -715,7 +715,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -723,7 +723,7 @@
 20
 20
 07
-70
+65
 58
 01
 77
@@ -731,7 +731,7 @@
 60
 01
 cc
-76
+78
 70
 4b
 44
@@ -755,7 +755,7 @@
 68
 01
 4d
-88
+8a
 1f
 e0
 fe
@@ -763,11 +763,11 @@
 60
 01
 4d
-88
+8a
 68
 09
 4d
-8a
+8c
 98
 46
 7c
@@ -782,7 +782,7 @@
 a1
 70
 4d
-87
+89
 00
 58
 00
@@ -791,7 +791,7 @@
 60
 01
 4d
-88
+8a
 58
 00
 00
@@ -799,19 +799,19 @@
 60
 01
 4d
-8a
+8c
 70
 4c
-82
+84
 00
 68
 00
 cc
-6d
+6f
 60
 00
 cc
-6c
+6e
 20
 60
 00
@@ -819,7 +819,7 @@
 68
 00
 cc
-6e
+70
 20
 20
 00
@@ -827,7 +827,7 @@
 68
 00
 cc
-82
+84
 1f
 e0
 fe
@@ -835,7 +835,7 @@
 60
 00
 cc
-82
+84
 c0
 02
 00
@@ -851,7 +851,7 @@
 68
 00
 cc
-73
+75
 20
 5a
 00
@@ -875,7 +875,7 @@
 68
 00
 cd
-87
+89
 c1
 00
 80
@@ -895,7 +895,7 @@
 68
 01
 cc
-76
+78
 20
 40
 7f
@@ -935,7 +935,7 @@
 68
 00
 cd
-87
+89
 c0
 00
 ff
@@ -954,8 +954,8 @@
 bf
 20
 40
-03
-08
+02
+f9
 68
 12
 00
@@ -1010,11 +1010,11 @@
 fb
 70
 4c
-73
+75
 01
 70
 4d
-7c
+7e
 00
 20
 40
@@ -1023,7 +1023,7 @@
 60
 00
 cb
-e3
+e5
 58
 00
 00
@@ -1031,23 +1031,23 @@
 60
 03
 cb
-e4
+e6
 68
 02
 4c
-7e
+80
 60
 02
 4b
-eb
+ed
 70
 4c
-47
+49
 0c
 68
 00
 cc
-48
+4a
 79
 20
 7e
@@ -1055,7 +1055,7 @@
 60
 00
 cc
-48
+4a
 20
 40
 01
@@ -1071,7 +1071,7 @@
 60
 01
 cd
-97
+99
 20
 60
 00
@@ -1083,15 +1083,15 @@
 20
 20
 07
-70
+65
 70
 4d
-98
+9a
 00
 68
 00
 cd
-97
+99
 c3
 80
 00
@@ -1103,7 +1103,7 @@
 60
 00
 cd
-97
+99
 58
 00
 07
@@ -1115,23 +1115,23 @@
 20
 20
 04
-67
+58
 68
 00
 cc
-73
+75
 20
 3a
 01
 09
 70
 4d
-98
+9a
 00
 68
 00
 cd
-97
+99
 c4
 00
 00
@@ -1143,7 +1143,7 @@
 60
 00
 cd
-97
+99
 20
 40
 3f
@@ -1151,19 +1151,19 @@
 20
 20
 03
-d8
+c9
 70
 4d
-7d
+7f
 01
 70
 4d
-7f
+81
 00
 68
 00
 cc
-48
+4a
 1f
 e1
 7e
@@ -1171,7 +1171,7 @@
 60
 00
 cc
-48
+4a
 20
 60
 00
@@ -1179,7 +1179,7 @@
 68
 00
 cc
-48
+4a
 79
 20
 7e
@@ -1187,11 +1187,11 @@
 60
 00
 cc
-48
+4a
 60
 00
 cc
-03
+05
 20
 60
 00
@@ -1199,7 +1199,7 @@
 68
 00
 cc
-48
+4a
 c4
 02
 00
@@ -1207,7 +1207,7 @@
 68
 00
 cc
-48
+4a
 79
 3f
 fe
@@ -1215,15 +1215,15 @@
 60
 00
 cc
-48
+4a
 60
 00
 cc
-03
+05
 20
 40
-07
 06
+fb
 20
 20
 01
@@ -1231,7 +1231,7 @@
 68
 00
 cd
-7c
+7e
 c0
 80
 81
@@ -1239,7 +1239,7 @@
 68
 00
 cd
-7a
+7c
 1f
 e0
 fe
@@ -1247,7 +1247,7 @@
 60
 00
 cd
-7a
+7c
 c0
 02
 01
@@ -1258,7 +1258,7 @@
 5e
 70
 4c
-8c
+8e
 02
 20
 20
@@ -1266,11 +1266,11 @@
 93
 20
 40
-07
 06
+fb
 70
 4d
-7a
+7c
 00
 20
 20
@@ -1278,15 +1278,15 @@
 21
 70
 4d
-7f
+81
 02
 70
 4d
-7d
+7f
 01
 70
 4d
-7c
+7e
 00
 20
 20
@@ -1295,7 +1295,7 @@
 68
 00
 cd
-7e
+80
 c0
 01
 81
@@ -1303,7 +1303,7 @@
 68
 00
 cc
-48
+4a
 2f
 ec
 00
@@ -1315,7 +1315,7 @@
 68
 00
 cd
-7e
+80
 c0
 00
 81
@@ -1331,7 +1331,7 @@
 68
 00
 cc
-57
+59
 c1
 ff
 80
@@ -1355,7 +1355,7 @@
 68
 00
 cd
-7d
+7f
 c1
 80
 80
@@ -1363,18 +1363,18 @@
 68
 00
 cd
-7f
+81
 c1
 80
 00
 00
 70
 4d
-7e
+80
 01
 70
 4c
-8c
+8e
 04
 20
 20
@@ -1383,7 +1383,7 @@
 68
 00
 cd
-7f
+81
 20
 3a
 01
@@ -1395,23 +1395,23 @@
 60
 00
 cd
-7f
+81
 70
 4d
-7e
+80
 02
 70
 4c
-8c
+8e
 04
 68
 08
 cc
-52
+54
 68
 00
 cc
-6f
+71
 1f
 e1
 7e
@@ -1423,7 +1423,7 @@
 58
 00
 4c
-58
+5a
 9a
 20
 fe
@@ -1439,7 +1439,7 @@
 60
 00
 cc
-51
+53
 18
 40
 84
@@ -1451,26 +1451,26 @@
 60
 08
 cc
-52
+54
 20
 60
 00
 00
 70
 4d
-7e
+80
 03
 68
 00
 cd
-7c
+7e
 24
 3a
 01
 32
 70
 4c
-8c
+8e
 02
 20
 20
@@ -1479,7 +1479,7 @@
 68
 00
 cc
-57
+59
 c0
 ff
 81
@@ -1494,7 +1494,7 @@
 0a
 70
 4c
-4c
+4e
 01
 20
 60
@@ -1503,7 +1503,7 @@
 68
 01
 4d
-78
+7a
 20
 40
 7f
@@ -1515,7 +1515,7 @@
 68
 03
 cb
-e4
+e6
 20
 7a
 00
@@ -1527,10 +1527,10 @@
 20
 40
 03
-99
+8a
 70
 4c
-73
+75
 00
 1a
 20
@@ -1539,7 +1539,7 @@
 60
 00
 cc
-47
+49
 20
 40
 01
@@ -1547,7 +1547,7 @@
 60
 00
 cb
-e3
+e5
 e8
 a8
 80
@@ -1583,7 +1583,7 @@
 d8
 a0
 4b
-e9
+eb
 df
 20
 00
@@ -1618,7 +1618,7 @@
 00
 70
 4c
-50
+52
 00
 d9
 60
@@ -1650,12 +1650,12 @@
 d0
 20
 40
-07
-02
+06
+f7
 68
 00
 cc
-46
+48
 1f
 e0
 fe
@@ -1663,7 +1663,7 @@
 60
 00
 cc
-46
+48
 20
 40
 01
@@ -1671,7 +1671,7 @@
 68
 00
 cc
-57
+59
 c0
 ff
 81
@@ -1687,11 +1687,11 @@
 60
 02
 4c
-4c
+4e
 60
 00
 cd
-7b
+7d
 20
 60
 00
@@ -1703,7 +1703,7 @@
 d8
 a0
 4b
-e3
+e5
 20
 20
 7e
@@ -1723,7 +1723,7 @@
 68
 02
 4c
-6f
+71
 98
 00
 12
@@ -1755,7 +1755,7 @@
 68
 01
 4c
-4d
+4f
 1f
 e0
 fe
@@ -1763,11 +1763,11 @@
 60
 01
 4c
-4d
+4f
 68
 00
 cc
-4e
+50
 c2
 82
 2d
@@ -1775,7 +1775,7 @@
 68
 00
 cc
-57
+59
 c0
 ff
 81
@@ -1791,7 +1791,7 @@
 68
 00
 cc
-4d
+4f
 c1
 ff
 80
@@ -1803,7 +1803,7 @@
 60
 01
 4c
-4d
+4f
 20
 20
 2d
@@ -1811,11 +1811,11 @@
 20
 40
 07
-33
+28
 20
 40
-07
 06
+fb
 20
 20
 01
@@ -1823,7 +1823,7 @@
 68
 00
 cc
-50
+52
 1f
 e6
 7c
@@ -1839,7 +1839,7 @@
 60
 00
 cc
-50
+52
 c0
 01
 01
@@ -1867,7 +1867,7 @@
 68
 00
 cc
-45
+47
 20
 7a
 00
@@ -1879,11 +1879,11 @@
 d8
 c0
 4b
-c3
+c5
 d8
 a0
 4c
-25
+27
 20
 20
 7f
@@ -1894,20 +1894,20 @@
 04
 70
 4c
-46
+48
 00
 70
 4c
-51
+53
 4e
 68
 02
 4c
-53
+55
 60
 02
 4c
-6f
+71
 da
 20
 00
@@ -1919,7 +1919,7 @@
 d8
 c0
 4c
-6f
+71
 e8
 c0
 80
@@ -1939,15 +1939,15 @@
 60
 01
 4c
-f8
+fa
 68
 00
 cc
-f8
+fa
 68
 08
 cc
-f9
+fb
 98
 40
 fe
@@ -1955,7 +1955,7 @@
 60
 00
 cc
-fa
+fc
 20
 60
 00
@@ -1966,7 +1966,7 @@
 d7
 70
 4c
-57
+59
 01
 20
 60
@@ -1979,11 +1979,11 @@
 20
 20
 07
-70
+65
 20
 40
 06
-ff
+f4
 70
 11
 c6
@@ -1991,7 +1991,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -1999,14 +1999,14 @@
 20
 20
 07
-70
+65
 79
 3f
 80
 26
 70
 4d
-9b
+9d
 00
 20
 40
@@ -2023,7 +2023,7 @@
 60
 08
 cc
-47
+49
 18
 42
 72
@@ -2031,7 +2031,7 @@
 d8
 a0
 4b
-e3
+e5
 1a
 22
 0c
@@ -2043,7 +2043,7 @@
 68
 00
 cb
-c2
+c4
 1f
 e9
 7e
@@ -2051,7 +2051,7 @@
 60
 00
 cc
-45
+47
 1f
 e0
 fe
@@ -2059,7 +2059,7 @@
 d8
 c0
 4b
-c2
+c4
 98
 c0
 8c
@@ -2071,11 +2071,11 @@
 60
 01
 cc
-84
+86
 68
 00
 cb
-c2
+c4
 1f
 e3
 7e
@@ -2087,7 +2087,7 @@
 60
 00
 cc
-8a
+8c
 20
 60
 00
@@ -2095,7 +2095,7 @@
 68
 00
 cc
-47
+49
 1f
 e0
 fe
@@ -2103,19 +2103,19 @@
 60
 00
 cc
-49
+4b
 68
 00
 cc
-48
+4a
 60
 00
 cc
-03
+05
 68
 00
 cc
-47
+49
 1f
 e9
 fe
@@ -2123,7 +2123,7 @@
 68
 08
 cc
-46
+48
 18
 41
 04
@@ -2139,7 +2139,7 @@
 68
 08
 cc
-83
+85
 98
 40
 fe
@@ -2151,7 +2151,7 @@
 68
 00
 cc
-47
+49
 98
 00
 72
@@ -2159,7 +2159,7 @@
 d8
 c0
 4b
-e3
+e5
 20
 20
 7f
@@ -2183,7 +2183,7 @@
 68
 00
 cc
-51
+53
 1f
 ed
 84
@@ -2227,7 +2227,7 @@
 68
 01
 4c
-4a
+4c
 98
 00
 36
@@ -2263,11 +2263,11 @@
 60
 00
 cc
-fb
+fd
 68
 08
 cc
-fa
+fc
 98
 46
 7c
@@ -2283,15 +2283,15 @@
 60
 00
 cb
-c1
+c3
 68
 00
 cb
-c1
+c3
 68
 08
 cc
-48
+4a
 a8
 40
 0e
@@ -2343,7 +2343,7 @@
 60
 00
 cd
-82
+84
 1a
 22
 0a
@@ -2407,7 +2407,7 @@
 68
 00
 cd
-82
+84
 20
 40
 00
@@ -2451,7 +2451,7 @@
 68
 08
 cc
-51
+53
 20
 20
 29
@@ -2463,7 +2463,7 @@
 68
 02
 4c
-6f
+71
 98
 00
 12
@@ -2527,7 +2527,7 @@
 68
 00
 cc
-fa
+fc
 08
 00
 86
@@ -2535,7 +2535,7 @@
 68
 00
 cc
-49
+4b
 98
 00
 72
@@ -2543,7 +2543,7 @@
 d8
 c0
 4c
-03
+05
 e8
 c0
 80
@@ -2595,7 +2595,7 @@
 68
 0a
 4c
-68
+6a
 1c
 42
 7e
@@ -2615,11 +2615,11 @@
 68
 02
 4c
-68
+6a
 68
 08
 cc
-6c
+6e
 98
 40
 84
@@ -2643,7 +2643,7 @@
 60
 02
 4c
-68
+6a
 20
 20
 7f
@@ -2723,7 +2723,7 @@
 20
 40
 03
-83
+74
 20
 40
 00
@@ -2767,7 +2767,7 @@
 20
 20
 05
-12
+07
 20
 40
 29
@@ -2783,15 +2783,11 @@
 20
 35
 83
-33
+24
 20
 40
 00
 01
-20
-40
-7f
-a1
 68
 00
 c2
@@ -2799,7 +2795,15 @@
 c2
 81
 02
-bd
+be
+68
+00
+cb
+76
+c0
+01
+01
+f1
 70
 4b
 76
@@ -2807,11 +2811,11 @@
 20
 20
 03
-77
+68
 20
 40
 03
-55
+46
 68
 00
 cb
@@ -2819,7 +2823,7 @@
 c0
 00
 82
-c3
+c4
 c0
 01
 01
@@ -2834,12 +2838,12 @@
 00
 70
 4d
-92
+94
 01
 20
 40
 02
-cc
+cd
 68
 00
 c2
@@ -2847,15 +2851,15 @@
 c0
 19
 82
-cf
+d0
 c0
 1a
 02
-d2
+d3
 20
 40
 04
-f9
+ee
 70
 01
 6d
@@ -2863,15 +2867,15 @@
 20
 40
 04
-9b
+8d
 20
 20
 7d
 dd
 68
 00
-cc
-fe
+cd
+00
 60
 00
 c1
@@ -2899,11 +2903,11 @@
 20
 20
 07
-70
+65
 20
 40
 03
-33
+24
 20
 40
 40
@@ -2915,11 +2919,11 @@
 c0
 18
 02
-dc
+dd
 c0
 18
-83
-01
+82
+f2
 20
 40
 40
@@ -2931,11 +2935,11 @@
 20
 20
 02
-d6
+d7
 20
 40
 03
-9f
+90
 68
 00
 c6
@@ -2947,11 +2951,7 @@
 c0
 2a
 02
-ef
-c0
-6c
-02
-f2
+ef
 20
 20
 40
@@ -3020,70 +3020,10 @@
 20
 02
 e7
-58
-00
-00
-16
-20
-40
-64
-14
-1f
-e6
-7c
-bd
-24
-22
-82
-d6
-58
-00
-00
-19
-20
-40
-64
-14
-1f
-e6
-7c
-55
-24
-22
-82
-d6
-58
-00
-00
-1b
-20
-40
-64
-14
-1f
-e6
-7c
-1d
-24
-22
-82
-d6
-70
-46
-e0
-08
-da
-60
-4b
-a2
-20
-20
-02
-e7
 20
 40
 03
-9f
+90
 68
 00
 c6
@@ -3107,7 +3047,7 @@
 20
 20
 07
-70
+65
 68
 08
 cb
@@ -3175,7 +3115,7 @@
 20
 40
 03
-64
+55
 20
 40
 44
@@ -3195,7 +3135,7 @@
 20
 22
 83
-55
+46
 60
 09
 47
@@ -3223,31 +3163,31 @@
 60
 02
 4c
-6f
+71
 20
 40
 03
-64
+55
 20
 40
 03
-35
+26
 20
 40
 03
-4c
+3d
 20
 40
 03
-41
+32
 20
 40
 03
-38
+29
 20
 40
-03
-0a
+02
+fb
 d8
 40
 00
@@ -3271,15 +3211,15 @@
 20
 40
 03
-41
+32
 20
 40
 03
-38
+29
 20
 40
 03
-5c
+4d
 70
 42
 12
@@ -3331,7 +3271,7 @@
 c2
 80
 03
-38
+29
 20
 60
 00
@@ -3407,11 +3347,11 @@
 20
 40
 03
-64
+55
 20
 40
 03
-4c
+3d
 20
 20
 65
@@ -3419,11 +3359,11 @@
 20
 40
 03
-52
+43
 20
 40
 03
-6e
+5f
 20
 40
 43
@@ -3439,7 +3379,7 @@
 60
 02
 4c
-6f
+71
 20
 60
 00
@@ -3450,8 +3390,8 @@
 b9
 20
 40
-03
-0a
+02
+fb
 20
 40
 69
@@ -3483,7 +3423,7 @@
 20
 20
 03
-5d
+4e
 70
 4b
 75
@@ -3507,7 +3447,7 @@
 68
 03
 4d
-8c
+8e
 60
 03
 44
@@ -3519,7 +3459,7 @@
 20
 40
 03
-64
+55
 d8
 40
 00
@@ -3559,11 +3499,11 @@
 60
 02
 4c
-6f
+71
 20
 40
 03
-25
+16
 70
 11
 c6
@@ -3571,7 +3511,7 @@
 20
 20
 07
-70
+65
 20
 40
 44
@@ -3586,7 +3526,7 @@
 00
 70
 4d
-87
+89
 01
 58
 00
@@ -3595,7 +3535,7 @@
 60
 01
 4d
-88
+8a
 20
 60
 00
@@ -3611,7 +3551,7 @@
 20
 40
 03
-8b
+7c
 d8
 c0
 19
@@ -3619,7 +3559,7 @@
 20
 40
 03
-8b
+7c
 d8
 c0
 1a
@@ -3627,7 +3567,7 @@
 20
 40
 03
-8b
+7c
 d8
 c0
 1b
@@ -3651,7 +3591,7 @@
 20
 40
 03
-8b
+7c
 d8
 a0
 19
@@ -3659,7 +3599,7 @@
 20
 40
 03
-8b
+7c
 d8
 a0
 1a
@@ -3667,7 +3607,7 @@
 20
 40
 03
-8b
+7c
 d8
 a0
 1b
@@ -3675,7 +3615,7 @@
 20
 20
 03
-8b
+7c
 70
 41
 72
@@ -3711,11 +3651,11 @@
 20
 20
 03
-d8
+c9
 20
 40
 03
-33
+24
 da
 60
 4b
@@ -3731,7 +3671,7 @@
 c0
 ff
 85
-12
+07
 68
 00
 c6
@@ -3743,7 +3683,7 @@
 20
 20
 05
-12
+07
 20
 40
 58
@@ -3759,7 +3699,7 @@
 c0
 7f
 83
-ae
+9f
 68
 00
 c6
@@ -3779,7 +3719,7 @@
 20
 5a
 03
-d6
+c7
 68
 02
 46
@@ -3799,15 +3739,15 @@
 20
 40
 03
-96
+87
 20
 40
 03
-99
+8a
 20
 40
 03
-d1
+c2
 da
 20
 46
@@ -3819,7 +3759,7 @@
 20
 54
 03
-c0
+b1
 20
 60
 00
@@ -3871,7 +3811,7 @@
 20
 34
 03
-c8
+b9
 20
 60
 00
@@ -3947,7 +3887,7 @@
 20
 20
 02
-d4
+d5
 20
 77
 00
@@ -3975,7 +3915,7 @@
 20
 5a
 03
-d6
+c7
 68
 02
 46
@@ -3999,15 +3939,15 @@
 20
 40
 03
-96
+87
 20
 40
 03
-99
+8a
 20
 40
 03
-d1
+c2
 68
 00
 cb
@@ -4015,7 +3955,7 @@
 c0
 00
 83
-ee
+df
 68
 00
 cb
@@ -4102,8 +4042,8 @@
 34
 20
 40
-04
-02
+03
+f3
 20
 20
 3e
@@ -4115,7 +4055,7 @@
 20
 40
 05
-6c
+61
 68
 08
 c6
@@ -4127,11 +4067,11 @@
 20
 20
 84
-10
+01
 20
 40
 05
-67
+5c
 68
 00
 c6
@@ -4167,7 +4107,7 @@
 20
 40
 05
-67
+5c
 20
 20
 3d
@@ -4179,31 +4119,31 @@
 c0
 0a
 04
-23
+14
 c0
 0a
 84
-37
+28
 c0
 14
 84
-3a
+2b
 c0
 19
 04
-3c
+2d
 c0
 20
 04
-3e
+2f
 c0
 02
 04
-40
+31
 c0
 09
 84
-40
+31
 c0
 0c
 b3
@@ -4211,31 +4151,31 @@
 c0
 10
 84
-44
+35
 c0
 00
 84
-46
+37
 c0
 01
 04
-52
+43
 c0
 15
 84
-55
+46
 c0
 1c
 84
-57
+48
 c0
 1d
 04
-5b
+4c
 c0
 1e
 04
-5e
+4f
 20
 20
 41
@@ -4243,7 +4183,7 @@
 20
 40
 03
-d8
+c9
 20
 40
 41
@@ -4271,7 +4211,7 @@
 24
 42
 83
-66
+57
 20
 40
 34
@@ -4287,7 +4227,7 @@
 24
 3a
 04
-30
+21
 70
 4b
 6d
@@ -4319,11 +4259,11 @@
 20
 20
 03
-bb
+ac
 20
 40
 04
-64
+55
 70
 11
 c6
@@ -4331,7 +4271,7 @@
 20
 20
 07
-70
+65
 70
 0a
 99
@@ -4347,7 +4287,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -4355,7 +4295,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -4363,7 +4303,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -4371,7 +4311,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -4379,15 +4319,15 @@
 20
 20
 07
-70
+65
 20
 40
 04
-99
+8b
 20
 40
 03
-d8
+c9
 58
 00
 00
@@ -4418,8 +4358,8 @@
 f3
 20
 40
-05
-03
+04
+f8
 70
 48
 09
@@ -4431,7 +4371,7 @@
 20
 40
 04
-64
+55
 70
 11
 c6
@@ -4439,7 +4379,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -4447,15 +4387,15 @@
 20
 20
 07
-70
+65
 20
 40
 03
-7f
+70
 20
 40
 03
-d8
+c9
 70
 11
 c6
@@ -4463,11 +4403,11 @@
 20
 20
 07
-70
+65
 20
 40
 04
-64
+55
 70
 11
 c6
@@ -4475,11 +4415,11 @@
 20
 20
 07
-70
+65
 20
 40
 03
-d8
+c9
 70
 11
 c6
@@ -4487,11 +4427,11 @@
 20
 20
 07
-70
+65
 20
 40
 04
-64
+55
 70
 11
 c6
@@ -4499,7 +4439,7 @@
 20
 20
 07
-70
+65
 68
 00
 ca
@@ -4515,7 +4455,7 @@
 20
 40
 02
-d4
+d5
 58
 00
 00
@@ -4543,23 +4483,23 @@
 20
 40
 04
-82
+74
 20
 40
-05
-06
+04
+fb
 20
 40
 04
-d2
+c7
 20
 40
 04
-fc
+f1
 20
 40
 04
-d7
+cc
 20
 40
 42
@@ -4567,31 +4507,35 @@
 20
 40
 04
-a0
+92
 20
 40
 04
-a7
+99
 20
 40
 04
-bb
+9c
 20
 40
 04
-c1
+b0
 20
 40
 04
-c4
+b6
 20
 40
 04
-cc
+b9
 20
 40
 04
-b3
+c1
+20
+40
+04
+a8
 20
 40
 42
@@ -4599,11 +4543,11 @@
 20
 40
 04
-b6
+ab
 20
 40
 04
-7f
+71
 20
 20
 42
@@ -4615,7 +4559,7 @@
 da
 40
 02
-c3
+c4
 20
 20
 33
@@ -4635,7 +4579,7 @@
 da
 40
 04
-87
+79
 20
 20
 33
@@ -4663,7 +4607,7 @@
 c0
 00
 04
-9b
+8d
 68
 03
 4b
@@ -4675,7 +4619,7 @@
 20
 40
 04
-91
+83
 20
 20
 7d
@@ -4691,7 +4635,7 @@
 20
 40
 04
-99
+8b
 d8
 c0
 4b
@@ -4739,7 +4683,7 @@
 20
 20
 03
-6a
+5b
 da
 60
 4b
@@ -4747,7 +4691,7 @@
 da
 40
 04
-a3
+95
 20
 20
 33
@@ -4759,7 +4703,7 @@
 60
 01
 cc
-76
+78
 70
 4b
 42
@@ -4771,18 +4715,30 @@
 da
 60
 4d
-93
+95
+da
+40
+03
+6b
+20
+20
+33
+74
+da
+60
+4b
+c1
 da
 40
 04
-aa
+9f
 20
 20
 33
 74
 70
 4d
-92
+94
 01
 68
 00
@@ -4791,14 +4747,14 @@
 24
 3a
 04
-ae
+a3
 20
 60
 00
 00
 70
 4d
-93
+95
 01
 68
 00
@@ -4810,7 +4766,7 @@
 00
 70
 4d
-93
+95
 00
 20
 60
@@ -4835,7 +4791,7 @@
 da
 40
 04
-b9
+ae
 20
 20
 33
@@ -4855,7 +4811,7 @@
 da
 40
 04
-be
+b3
 20
 20
 33
@@ -4867,11 +4823,11 @@
 20
 40
 04
-eb
+e0
 20
 20
 04
-e0
+d5
 da
 60
 46
@@ -4899,7 +4855,7 @@
 da
 40
 04
-c9
+be
 20
 20
 33
@@ -4923,7 +4879,7 @@
 da
 40
 04
-cf
+c4
 20
 20
 33
@@ -4939,7 +4895,7 @@
 20
 20
 04
-a5
+97
 da
 60
 48
@@ -4947,7 +4903,7 @@
 da
 40
 04
-d5
+ca
 20
 20
 33
@@ -4967,15 +4923,15 @@
 20
 3a
 04
-e3
+d8
 20
 40
 05
-46
+3b
 c0
 03
 84
-e3
+d8
 68
 00
 c6
@@ -5015,7 +4971,7 @@
 20
 40
 04
-e6
+db
 20
 20
 43
@@ -5027,7 +4983,7 @@
 da
 40
 04
-e9
+de
 20
 20
 33
@@ -5039,7 +4995,7 @@
 24
 3a
 04
-f9
+ee
 28
 0f
 fe
@@ -5047,7 +5003,7 @@
 20
 40
 84
-f7
+ec
 68
 00
 cb
@@ -5059,11 +5015,11 @@
 20
 42
 84
-f7
+ec
 20
 40
 04
-91
+83
 68
 01
 46
@@ -5122,8 +5078,8 @@
 a0
 da
 40
-05
-01
+04
+f6
 20
 20
 33
@@ -5158,12 +5114,12 @@
 00
 c2
 81
-05
-0a
+04
+ff
 20
 20
 05
-0e
+03
 68
 08
 cb
@@ -5207,7 +5163,7 @@
 20
 42
 85
-1f
+14
 68
 00
 c7
@@ -5215,11 +5171,11 @@
 c0
 00
 05
-21
+16
 c0
 01
 85
-27
+1c
 68
 00
 c6
@@ -5227,15 +5183,15 @@
 c0
 03
 05
-2d
+22
 c0
 03
 85
-2d
+22
 c0
 01
 05
-33
+28
 68
 00
 c7
@@ -5263,15 +5219,15 @@
 c0
 03
 05
-2f
+24
 c0
 03
 85
-2f
+24
 c0
 01
 05
-36
+2b
 68
 00
 c7
@@ -5279,7 +5235,7 @@
 20
 20
 05
-1d
+12
 68
 00
 c6
@@ -5287,15 +5243,15 @@
 c0
 03
 05
-31
+26
 c0
 03
 85
-31
+26
 c0
 01
 05
-38
+2d
 68
 00
 c7
@@ -5303,7 +5259,7 @@
 20
 20
 05
-1d
+12
 68
 00
 cb
@@ -5311,7 +5267,7 @@
 20
 20
 05
-1d
+12
 68
 00
 cb
@@ -5319,7 +5275,7 @@
 20
 20
 05
-1d
+12
 68
 00
 cb
@@ -5327,7 +5283,7 @@
 20
 20
 05
-1d
+12
 68
 00
 c7
@@ -5339,7 +5295,7 @@
 20
 20
 05
-1d
+12
 68
 00
 c7
@@ -5347,7 +5303,7 @@
 20
 20
 05
-34
+29
 68
 00
 c7
@@ -5355,7 +5311,7 @@
 20
 20
 05
-34
+29
 78
 54
 7c
@@ -5371,7 +5327,7 @@
 20
 40
 05
-72
+67
 20
 40
 40
@@ -5383,15 +5339,15 @@
 20
 40
 05
-44
+39
 24
 34
 07
-9a
+8f
 20
 40
 07
-91
+86
 20
 20
 3f
@@ -5399,7 +5355,7 @@
 20
 40
 05
-46
+3b
 20
 20
 40
@@ -5411,11 +5367,11 @@
 20
 40
 05
-4c
+41
 20
 40
 05
-4a
+3f
 20
 20
 40
@@ -5423,11 +5379,11 @@
 20
 40
 05
-5c
+51
 20
 20
 05
-62
+57
 68
 08
 c6
@@ -5435,7 +5391,7 @@
 20
 40
 05
-67
+5c
 68
 08
 c6
@@ -5455,7 +5411,7 @@
 20
 40
 05
-67
+5c
 68
 08
 c6
@@ -5475,7 +5431,7 @@
 20
 40
 05
-67
+5c
 68
 08
 c6
@@ -5499,7 +5455,7 @@
 20
 40
 05
-6c
+61
 68
 08
 c6
@@ -5515,7 +5471,7 @@
 20
 20
 05
-67
+5c
 68
 08
 c6
@@ -5523,7 +5479,7 @@
 20
 40
 05
-6c
+61
 68
 08
 c6
@@ -5555,7 +5511,7 @@
 20
 20
 05
-70
+65
 79
 3f
 84
@@ -5587,7 +5543,7 @@
 c0
 04
 05
-77
+6c
 20
 40
 3f
@@ -5646,8 +5602,8 @@
 00
 20
 40
-05
-03
+04
+f8
 28
 0f
 fe
@@ -5691,11 +5647,11 @@
 20
 20
 07
-70
+65
 20
 40
 03
-d8
+c9
 20
 20
 42
@@ -5727,7 +5683,7 @@
 20
 40
 07
-10
+05
 20
 20
 53
@@ -5775,7 +5731,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -5783,7 +5739,7 @@
 20
 20
 07
-70
+65
 68
 00
 84
@@ -5791,11 +5747,11 @@
 c2
 82
 85
-c5
+ba
 20
 40
-07
-02
+06
+f7
 68
 00
 c7
@@ -5803,7 +5759,7 @@
 24
 3a
 05
-af
+a4
 68
 00
 84
@@ -5811,7 +5767,7 @@
 c3
 02
 05
-b3
+a8
 68
 00
 82
@@ -5819,7 +5775,7 @@
 20
 3a
 05
-b3
+a8
 20
 20
 56
@@ -5847,7 +5803,7 @@
 c0
 82
 85
-b6
+ab
 70
 47
 8e
@@ -5859,7 +5815,7 @@
 20
 5a
 03
-c4
+b5
 20
 20
 56
@@ -5915,11 +5871,11 @@
 20
 40
 05
-b9
+ae
 20
 20
-07
 06
+fb
 68
 00
 c7
@@ -6003,7 +5959,7 @@
 c0
 01
 85
-dd
+d2
 20
 20
 56
@@ -6015,11 +5971,11 @@
 c0
 00
 05
-e1
+d6
 c0
 00
 85
-e8
+dd
 20
 20
 5c
@@ -6079,11 +6035,11 @@
 c0
 02
 05
-f1
+e6
 c0
 03
 06
-1d
+12
 20
 20
 56
@@ -6095,7 +6051,7 @@
 20
 40
 05
-c7
+bc
 20
 40
 7e
@@ -6110,8 +6066,8 @@
 77
 c0
 08
-06
-00
+05
+f5
 1f
 ec
 84
@@ -6123,7 +6079,7 @@
 20
 21
 06
-0e
+03
 d8
 40
 47
@@ -6207,7 +6163,7 @@
 c0
 05
 06
-10
+05
 20
 20
 58
@@ -6223,7 +6179,7 @@
 c2
 81
 86
-17
+0c
 68
 01
 04
@@ -6251,7 +6207,7 @@
 24
 22
 86
-13
+08
 20
 40
 5a
@@ -6259,7 +6215,7 @@
 24
 34
 06
-13
+08
 20
 20
 59
@@ -6271,11 +6227,11 @@
 c0
 00
 86
-21
+16
 c0
 02
 86
-23
+18
 20
 20
 5a
@@ -6295,7 +6251,7 @@
 20
 20
 07
-70
+65
 68
 00
 80
@@ -6307,7 +6263,7 @@
 20
 40
 06
-2b
+20
 d8
 e0
 00
@@ -6347,7 +6303,7 @@
 20
 37
 06
-33
+28
 24
 36
 d8
@@ -6387,7 +6343,7 @@
 20
 20
 07
-70
+65
 68
 10
 80
@@ -6427,7 +6383,7 @@
 20
 40
 06
-49
+3e
 60
 18
 80
@@ -6471,7 +6427,7 @@
 20
 20
 07
-70
+65
 20
 40
 21
@@ -6507,7 +6463,7 @@
 c5
 05
 86
-5e
+53
 20
 40
 24
@@ -6515,11 +6471,11 @@
 24
 3a
 06
-57
+4c
 c5
 16
 86
-67
+5c
 20
 20
 21
@@ -6559,7 +6515,7 @@
 20
 20
 06
-57
+4c
 68
 02
 01
@@ -6591,7 +6547,7 @@
 20
 20
 07
-70
+65
 68
 00
 80
@@ -6603,7 +6559,7 @@
 20
 40
 86
-73
+68
 20
 20
 24
@@ -6618,16 +6574,16 @@
 03
 20
 40
-87
-06
+86
+fb
 24
 40
-87
-02
+86
+f7
 20
 20
 07
-10
+05
 20
 40
 24
@@ -6679,7 +6635,7 @@
 20
 3a
 06
-87
+7c
 68
 00
 c5
@@ -6787,7 +6743,7 @@
 20
 5a
 06
-a1
+96
 20
 20
 2b
@@ -6811,7 +6767,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -6819,7 +6775,7 @@
 20
 20
 07
-70
+65
 68
 00
 85
@@ -6831,7 +6787,7 @@
 c0
 09
 86
-ac
+a1
 20
 20
 5d
@@ -6879,19 +6835,19 @@
 c2
 83
 86
-bb
+b0
 c0
 01
 86
-bd
+b2
 c0
 18
 86
-bf
+b4
 c0
 0b
 86
-c1
+b6
 20
 20
 60
@@ -6903,7 +6859,7 @@
 20
 20
 07
-70
+65
 70
 11
 c6
@@ -6911,7 +6867,7 @@
 20
 20
 07
-70
+65
 70
 4b
 01
@@ -6947,11 +6903,11 @@
 c0
 02
 06
-e5
+da
 c0
 08
 06
-ca
+bf
 20
 20
 63
@@ -6967,7 +6923,7 @@
 c0
 00
 86
-ce
+c3
 20
 20
 63
@@ -6983,7 +6939,7 @@
 c2
 80
 06
-d2
+c7
 20
 20
 63
@@ -7051,7 +7007,7 @@
 24
 21
 06
-e3
+d8
 20
 20
 63
@@ -7091,15 +7047,15 @@
 c0
 0f
 86
-ef
+e4
 c0
 10
 06
-f2
+e7
 c0
 09
 06
-fc
+f1
 20
 20
 7d
@@ -7115,7 +7071,7 @@
 20
 20
 06
-f4
+e9
 70
 01
 85
@@ -7155,7 +7111,7 @@
 20
 20
 03
-25
+16
 20
 40
 58
@@ -7170,11 +7126,11 @@
 bf
 70
 4d
-83
+85
 01
 70
 4d
-80
+82
 00
 20
 60
@@ -7183,7 +7139,7 @@
 68
 00
 cd
-80
+82
 1f
 e0
 fe
@@ -7191,7 +7147,7 @@
 60
 00
 cd
-80
+82
 20
 60
 00
@@ -7199,7 +7155,7 @@
 68
 00
 cd
-80
+82
 1f
 e6
 7c
@@ -7207,11 +7163,11 @@
 24
 41
 07
-0e
+03
 68
 00
 cd
-80
+82
 c1
 00
 00
@@ -7223,14 +7179,14 @@
 60
 00
 cd
-80
+82
 20
 60
 00
 00
 70
 4d
-80
+82
 03
 20
 60
@@ -7255,7 +7211,7 @@
 da
 20
 4d
-09
+0b
 20
 40
 02
@@ -7263,7 +7219,7 @@
 60
 08
 cd
-81
+83
 58
 00
 00
@@ -7271,7 +7227,7 @@
 c5
 13
 07
-1a
+0f
 58
 00
 00
@@ -7283,11 +7239,11 @@
 24
 21
 07
-32
+27
 68
 00
 cd
-80
+82
 1f
 e6
 7c
@@ -7295,15 +7251,15 @@
 24
 21
 07
-22
+17
 68
 00
 cd
-80
+82
 c0
 00
 07
-33
+28
 20
 60
 00
@@ -7311,19 +7267,19 @@
 68
 00
 cd
-80
+82
 c1
 99
 00
 00
 70
 4d
-80
+82
 00
 68
 08
 cd
-81
+83
 58
 00
 00
@@ -7331,7 +7287,7 @@
 c5
 13
 07
-29
+1e
 58
 00
 00
@@ -7347,11 +7303,11 @@
 68
 00
 cd
-83
+85
 c0
 00
 07
-3a
+2f
 1f
 e0
 ff
@@ -7359,11 +7315,11 @@
 60
 00
 cd
-83
+85
 c0
 00
 07
-3a
+2f
 70
 41
 de
@@ -7374,16 +7330,16 @@
 00
 70
 4d
-80
+82
 00
 68
 00
 cd
-83
+85
 c0
 01
 07
-38
+2d
 1f
 e0
 fe
@@ -7391,11 +7347,11 @@
 60
 00
 cd
-83
+85
 c0
 00
 87
-30
+25
 70
 41
 de
@@ -7479,19 +7435,19 @@
 c0
 01
 07
-54
+49
 c0
 02
 07
-59
+4e
 c0
 10
 07
-68
+5d
 20
 40
 07
-5e
+53
 70
 89
 55
@@ -7511,7 +7467,7 @@
 20
 40
 07
-63
+58
 70
 89
 55
@@ -7531,7 +7487,7 @@
 20
 40
 07
-5e
+53
 70
 89
 55
@@ -7639,7 +7595,7 @@
 20
 22
 87
-8f
+84
 60
 08
 cb
@@ -7683,7 +7639,7 @@
 20
 40
 03
-64
+55
 68
 01
 cb
@@ -7715,11 +7671,11 @@
 24
 22
 87
-80
+75
 20
 40
 03
-33
+24
 58
 00
 1f
@@ -7763,7 +7719,7 @@
 20
 40
 07
-f1
+e6
 58
 00
 00
@@ -7771,7 +7727,7 @@
 20
 40
 07
-e4
+d9
 58
 00
 00
@@ -7779,7 +7735,7 @@
 20
 40
 07
-ea
+df
 68
 00
 cb
@@ -7787,7 +7743,7 @@
 c0
 00
 87
-9d
+92
 df
 20
 00
@@ -7819,7 +7775,7 @@
 20
 40
 07
-b0
+a5
 68
 01
 11
@@ -7855,7 +7811,7 @@
 20
 40
 07
-b8
+ad
 68
 01
 11
@@ -7907,7 +7863,7 @@
 20
 20
 07
-c0
+b5
 68
 01
 11
@@ -7939,7 +7895,7 @@
 20
 20
 07
-c0
+b5
 60
 01
 91
@@ -7951,7 +7907,7 @@
 20
 20
 87
-ca
+bf
 68
 00
 91
@@ -7959,7 +7915,7 @@
 c0
 7f
 87
-d1
+c6
 68
 00
 91
@@ -7987,7 +7943,7 @@
 c0
 00
 07
-ce
+c3
 68
 01
 91
@@ -7995,7 +7951,7 @@
 20
 20
 07
-c6
+bb
 70
 11
 c4
@@ -8007,7 +7963,7 @@
 20
 20
 07
-c6
+bb
 68
 00
 91
@@ -8015,7 +7971,7 @@
 20
 40
 07
-dc
+d1
 60
 00
 91
@@ -8027,7 +7983,7 @@
 20
 3a
 07
-da
+cf
 58
 00
 00
@@ -8051,7 +8007,7 @@
 20
 20
 07
-d7
+cc
 1f
 e6
 7e
@@ -8091,7 +8047,7 @@
 24
 21
 07
-ef
+e4
 9a
 46
 7c
@@ -8099,7 +8055,7 @@
 24
 21
 07
-ef
+e4
 70
 4b
 0b
@@ -8127,7 +8083,7 @@
 20
 20
 07
-e8
+dd
 70
 4b
 0b
@@ -8143,7 +8099,7 @@
 20
 40
 07
-f8
+ed
 1f
 e2
 22
@@ -8155,7 +8111,7 @@
 20
 40
 07
-f8
+ed
 1f
 e2
 24
@@ -8175,7 +8131,7 @@
 c0
 7f
 87
-fe
+f3
 68
 00
 91
@@ -8199,9 +8155,9 @@
 20
 20
 07
-fc
-a3
-16
+f1
+84
+f5
 aa
 55
 08
@@ -8283,7 +8239,7 @@
 55
 01
 00
-84
+86
 4d
 00
 aa
@@ -9025,35 +8981,35 @@
 55
 01
 00
-8d
+8f
 4c
 01
 aa
 55
 01
 00
-48
+4a
 4c
 01
 aa
 55
 01
 00
-8c
+8e
 4c
 04
 aa
 55
 01
 00
-83
+85
 4c
 00
 aa
 55
 02
 00
-4a
+4c
 4c
 c0
 12
@@ -9061,7 +9017,7 @@
 55
 03
 00
-6c
+6e
 4c
 19
 19
@@ -9070,7 +9026,7 @@
 55
 10
 00
-58
+5a
 4c
 00
 13
@@ -9092,14 +9048,14 @@
 55
 01
 00
-57
+59
 4c
 ff
 aa
 55
 04
 00
-53
+55
 4c
 20
 15
@@ -9109,7 +9065,7 @@
 55
 06
 00
-8c
+8e
 4d
 0f
 0f
@@ -9137,7 +9093,7 @@
 55
 03
 00
-76
+78
 4c
 80
 4f
@@ -9274,7 +9230,7 @@
 00
 53
 4b
-45
+19
 30
 00
 ff
@@ -9365,7 +9321,7 @@
 20
 40
 04
-3a
+2b
 70
 46
 c6
@@ -9393,7 +9349,7 @@
 20
 40
 03
-25
+16
 20
 20
 41
@@ -9597,7 +9553,7 @@
 20
 40
 04
-3a
+2b
 70
 47
 c4
@@ -9613,7 +9569,7 @@
 20
 20
 05
-e4
+d9
 68
 01
 46
@@ -9669,7 +9625,7 @@
 20
 40
 03
-bb
+ac
 20
 40
 58
@@ -9681,7 +9637,7 @@
 20
 40
 03
-25
+16
 68
 00
 cb
@@ -9701,7 +9657,7 @@
 20
 40
 04
-91
+83
 20
 20
 7d
@@ -9733,7 +9689,7 @@
 20
 40
 03
-25
+16
 20
 40
 3e
@@ -9745,7 +9701,7 @@
 20
 40
 03
-5c
+4d
 68
 10
 80
@@ -9809,7 +9765,7 @@
 68
 00
 cc
-4c
+4e
 c0
 00
 ff
@@ -9817,7 +9773,7 @@
 68
 00
 cc
-57
+59
 c0
 00
 80
@@ -9836,7 +9792,7 @@
 8c
 70
 4c
-57
+59
 11
 70
 11
@@ -9848,7 +9804,7 @@
 13
 70
 4c
-57
+59
 12
 70
 11
@@ -9860,7 +9816,7 @@
 13
 70
 4c
-57
+59
 13
 70
 11
@@ -9869,7 +9825,7 @@
 68
 00
 cc
-48
+4a
 1f
 e1
 7e
@@ -9881,7 +9837,7 @@
 68
 02
 4c
-7e
+80
 60
 02
 11
@@ -9913,7 +9869,7 @@
 68
 00
 cc
-57
+59
 c1
 7f
 80
@@ -9936,7 +9892,7 @@
 00
 70
 4c
-57
+59
 02
 20
 20
@@ -9944,7 +9900,7 @@
 a3
 70
 4c
-57
+59
 03
 20
 20
@@ -9952,7 +9908,7 @@
 a3
 70
 4c
-57
+59
 ff
 70
 0a
@@ -9965,7 +9921,7 @@
 68
 02
 4c
-27
+29
 20
 40
 01
@@ -10089,7 +10045,7 @@
 20
 40
 03
-18
+09
 68
 00
 c7
@@ -10113,11 +10069,11 @@
 24
 22
 83
-66
+57
 20
 20
 03
-68
+59
 20
 60
 00
@@ -10249,7 +10205,7 @@
 20
 40
 05
-67
+5c
 d8
 40
 00
@@ -10345,7 +10301,7 @@
 20
 20
 03
-25
+16
 68
 00
 cb
@@ -10357,7 +10313,7 @@
 68
 00
 cc
-73
+75
 20
 7a
 00
@@ -10365,7 +10321,7 @@
 68
 00
 cd
-9a
+9c
 1f
 e0
 fe
@@ -10377,19 +10333,19 @@
 60
 00
 cd
-9a
+9c
 24
 7a
 00
 00
 70
 4d
-99
+9b
 00
 68
 00
 cd
-99
+9b
 1f
 e0
 fe
@@ -10397,7 +10353,7 @@
 60
 00
 cd
-99
+9b
 1f
 e6
 7c
@@ -10433,7 +10389,7 @@
 68
 00
 cd
-98
+9a
 1f
 e0
 fe
@@ -10441,7 +10397,7 @@
 60
 00
 cd
-98
+9a
 c0
 08
 01
@@ -10457,7 +10413,7 @@
 68
 00
 cc
-48
+4a
 60
 00
 91
@@ -10465,7 +10421,7 @@
 68
 02
 4c
-7e
+80
 60
 02
 11
@@ -10565,7 +10521,7 @@
 68
 00
 cd
-92
+94
 c0
 00
 ad
@@ -10577,7 +10533,7 @@
 68
 00
 cc
-48
+4a
 60
 00
 91
@@ -10585,7 +10541,7 @@
 68
 02
 4c
-7e
+80
 60
 02
 11
@@ -10625,11 +10581,11 @@
 68
 02
 4c
-6f
+71
 68
 0a
 4d
-8c
+8e
 98
 46
 7c
@@ -10641,27 +10597,27 @@
 68
 00
 cc
-45
+47
 c1
 84
 00
 00
 70
 4d
-9b
+9d
 00
 20
 40
 02
-cc
+cd
 68
 02
 4c
-6f
+71
 68
 0a
 4c
-53
+55
 98
 46
 7c
@@ -10673,11 +10629,11 @@
 68
 02
 4c
-6f
+71
 68
 0a
 4c
-7e
+80
 98
 46
 7c
@@ -10701,11 +10657,11 @@
 20
 20
 03
-7f
+70
 68
 02
 4c
-27
+29
 20
 20
 01
@@ -10713,7 +10669,7 @@
 68
 00
 cd
-85
+87
 1f
 e0
 fe
@@ -10725,7 +10681,7 @@
 60
 00
 cd
-85
+87
 c0
 00
 00
@@ -10741,23 +10697,23 @@
 20
 40
 02
-cc
+cd
 68
 02
 4c
-7e
+80
 60
 02
 4c
-6f
+71
 68
 00
 cd
-95
+97
 60
 00
 cc
-52
+54
 20
 40
 00
@@ -10765,7 +10721,7 @@
 60
 08
 cd
-95
+97
 20
 60
 00
@@ -10785,19 +10741,19 @@
 68
 02
 4d
-8c
+8e
 60
 02
 4c
-6f
+71
 68
 00
 cd
-96
+98
 60
 00
 cc
-52
+54
 20
 40
 00
@@ -10805,7 +10761,7 @@
 60
 08
 cd
-96
+98
 20
 60
 00
@@ -10849,19 +10805,19 @@
 20
 40
 02
-cc
+cd
 20
 20
 00
 11
 70
 4d
-87
+89
 00
 20
 40
 02
-cc
+cd
 20
 40
 01
@@ -10869,7 +10825,7 @@
 20
 40
 03
-55
+46
 68
 00
 cb
@@ -10908,8 +10864,8 @@
 1e
 20
 40
-05
-03
+04
+f8
 20
 40
 3f
@@ -10917,7 +10873,7 @@
 68
 02
 4c
-6f
+71
 60
 02
 47
@@ -10933,7 +10889,7 @@
 20
 20
 03
-25
+16
 58
 00
 00
@@ -10941,7 +10897,7 @@
 60
 01
 cd
-92
+94
 20
 60
 00
@@ -10949,7 +10905,7 @@
 68
 00
 cd
-92
+94
 c0
 00
 ad
@@ -10973,7 +10929,7 @@
 68
 00
 cd
-9b
+9d
 79
 3f
 fe
@@ -10981,7 +10937,7 @@
 60
 00
 cd
-9b
+9d
 70
 4b
 42
@@ -10997,11 +10953,11 @@
 20
 20
 03
-7f
+70
 68
 02
 4c
-27
+29
 20
 20
 01
@@ -11013,7 +10969,7 @@
 68
 00
 cc
-48
+4a
 60
 00
 91
@@ -11021,7 +10977,7 @@
 68
 02
 4c
-7e
+80
 60
 02
 11
@@ -11081,11 +11037,11 @@
 c0
 20
 80
-17
+19
 c0
 21
 00
-1f
+26
 20
 60
 00
@@ -11093,11 +11049,11 @@
 20
 40
 00
-0e
+10
 20
 34
 03
-7a
+6b
 79
 20
 00
@@ -11105,7 +11061,7 @@
 68
 00
 cd
-9b
+9d
 79
 20
 7e
@@ -11113,7 +11069,7 @@
 60
 00
 cd
-9b
+9d
 20
 40
 01
@@ -11122,10 +11078,18 @@
 40
 01
 5e
+68
+00
+c2
+41
+c2
+81
+00
+1d
 20
 20
 00
-1b
+22
 df
 20
 00
@@ -11133,7 +11097,7 @@
 d8
 c0
 4c
-6f
+71
 20
 40
 7f
@@ -11157,7 +11121,7 @@
 c2
 00
 00
-12
+14
 20
 60
 00
@@ -11169,7 +11133,7 @@
 68
 00
 cd
-9b
+9d
 79
 20
 7e
@@ -11177,18 +11141,38 @@
 60
 00
 cd
-9b
+9d
+20
+40
+04
+58
 58
 00
+07
+08
+60
+01
+4b
+c1
+70
+4d
+94
 00
-3c
+20
+60
+00
+00
+58
+00
+00
+1e
 60
 01
 4d
-93
+95
 70
 4d
-92
+94
 00
 20
 60
@@ -11237,7 +11221,7 @@
 60
 01
 4c
-74
+76
 20
 40
 42
@@ -11245,35 +11229,7 @@
 20
 20
 03
-7a
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
+6b
 00
 00
 00
@@ -11341,7 +11297,7 @@
 20
 40
 02
-cc
+cd
 70
 4b
 6e
@@ -11369,7 +11325,7 @@
 20
 40
 03
-66
+57
 20
 40
 34
@@ -11401,7 +11357,7 @@
 20
 40
 04
-99
+8b
 20
 40
 43
@@ -11409,7 +11365,7 @@
 20
 40
 03
-55
+46
 68
 00
 c2
@@ -11457,7 +11413,7 @@
 20
 40
 04
-91
+83
 20
 20
 7d
@@ -11877,7 +11833,7 @@
 20
 40
 04
-99
+8b
 20
 40
 34
@@ -11889,7 +11845,7 @@
 20
 40
 04
-95
+87
 20
 20
 7d
@@ -12181,7 +12137,7 @@
 20
 40
 05
-46
+3b
 c0
 03
 80
@@ -12333,7 +12289,7 @@
 c0
 02
 84
-42
+33
 20
 20
 4d
@@ -12354,5 +12310,5 @@
 55
 00
 00
-22
-87
+f2
+5e
Index: XZR_3MODE_2Ch_24G_First_NEW/output/memmap.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/memmap.format	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/memmap.format	(working copy)
@@ -1837,130 +1837,131 @@
 0x4bbe mem_mouse_data_xtemp
 0x4bbf mem_mouse_data_ytemp
 0x4bc0 mem_24g_state
-0x4bc1 mem_24g_rxbuf
-0x4be3 mem_24g_txbuf
-0x4c03 mem_24g_txpayload
-0x4c25 mem_24g_rxpayload
-0x4c45 mem_24g_rxdata_length
-0x4c46 mem_24g_pid
-0x4c47 mem_24g_datalen
-0x4c48 mem_24g_data_type
-0x4c49 mem_24g_txlen
-0x4c4a mem_24g_rx_window
-0x4c4c mem_24g_ensure
-0x4c4d mem_24g_txfail_cnt
-0x4c4f mem_24g_get_ack_fail
-0x4c50 mem_24g_retry
-0x4c51 mem_24g_ch
-0x4c52 mem_24g_current_ch_number
-0x4c53 mem_24g_paring_addr
-0x4c57 mem_24g_pairing_sm
-0x4c58 mem_24g_ch_map1
-0x4c5c mem_24g_ch_map2
-0x4c60 mem_24g_ch_map3
-0x4c64 mem_24g_ch_map4
-0x4c68 mem_24g_tx_btclk
-0x4c6c mem_24g_interval
-0x4c6d mem_24g_interval_min
-0x4c6e mem_24g_interval_max
-0x4c6f mem_24g_addr
-0x4c73 mem_24g_abort_pac
-0x4c74 mem_24g_check_dongle_times
-0x4c76 mem_24g_enter_hibernate
-0x4c7e mem_24g_device_addr
-0x4c82 mem_24g_pac_index
-0x4c83 mem_24g_no_ack
-0x4c84 mem_24g_sta_crc
-0x4c87 mem_24g_last_crc
-0x4c8a mem_24g_sta_pid
-0x4c8b mem_24g_last_pid
-0x4c8c mem_24g_max_retry
-0x4c8d mem_24g_mode
-0x4c8e mem_24g_rxdata_temp
-0x4cb0 mem_24g_rx_addr
-0x4cb4 mem_dongle_mode_init
-0x4cb5 mem_dongle_work_mode
-0x4cb6 mem_dongle_ms_bind_step
-0x4cb7 mem_dongle_kb_bind_step
-0x4cb8 mem_dongle_bind_device_status
-0x4cb9 mem_24g_bind_payload
-0x4cc1 mem_24g_abort_packet
-0x4cc2 mem_24g_rf_laststa
-0x4cc3 mem_24g_hop_btclk
-0x4cc7 mem_24g_hop_interval
-0x4cc8 mem_24g_mode_switch
-0x4cc9 mem_24g_ackpayload_enable
-0x4cca mem_24g_hop_packet
-0x4ccb mem_24g_pair_mode
-0x4ccc mem_24g_nodata_timer_enable
-0x4ccd mem_24g_time_slice
-0x4cce mem_24g_kb_data_sta_data
-0x4cd6 mem_24g_kb_data_last_data
-0x4cde mem_24g_kb_multikey_sta_data
-0x4ce1 mem_24g_kb_multikey_last_data
-0x4ce4 mem_24g_kb_blank_data_enable
-0x4ce5 mem_24g_kb_mul_blank_data_enable
-0x4ce6 mem_24g_ms_blank_data_enable
-0x4ce7 mem_24g_kb_addr
-0x4ceb mem_24g_ms_addr
-0x4cef mem_24g_dg_last_ch
-0x4cf0 mem_24g_dg_ch_number
-0x4cf1 mem_24g_dg_config_ch_once
-0x4cf2 mem_24g_kb_last_ch
-0x4cf3 mem_24g_kb_ch_number
-0x4cf4 mem_24g_kb_config_ch_once
-0x4cf5 mem_24g_ms_last_ch
-0x4cf6 mem_24g_ms_ch_number
-0x4cf7 mem_24g_ms_config_ch_once
-0x4cf8 mem_24g_syncword
-0x4cfa mem_24g_syncword_crc8
-0x4cfb mem_24g_get_syncword_crc8
-0x4cfc mem_24g_ota_sta_pid
-0x4cfe mem_tx_power_temp
-0x4cff mem_rssi_hex
-0x4d00 mem_rssi_noise_avg
-0x4d01 mem_rssi_noise_index
-0x4d02 mem_rssi_signal_index
-0x4d03 mem_rssi_noise_dg_avg
-0x4d04 mem_rssi_noise_kb_avg
-0x4d05 mem_rssi_noise_ms_avg
-0x4d06 mem_rssi_noise_dg_index
-0x4d07 mem_rssi_noise_kb_index
-0x4d08 mem_rssi_noise_ms_index
-0x4d09 mem_rssi_signal_buf
-0x4d11 mem_queue_ele_num
-0x4d12 mem_queue_read
-0x4d14 mem_queue_write
-0x4d16 mem_queue_start
-0x4d16 mem_data_ele0
-0x4d36 mem_data_ele1
-0x4d56 mem_data_ele2
-0x4d76 mem_queue_end
-0x4d76 mem_queue_temp
-0x4d78 mem_cb_24g_data
-0x4d7a mem_24g_hop_fastly_cnt
-0x4d7b mem_24g_hop_pac_retry
-0x4d7c mem_24g_rf_hop_ch
-0x4d7d mem_24g_rf_last_sta
-0x4d7e mem_24g_rf_work_stage
-0x4d7f mem_24g_sync_cnt
-0x4d80 mem_power_ctrl_pac_succ_cnt
-0x4d81 mem_rssi_avg_received
-0x4d82 mem_rssi_hex_received
-0x4d83 mem_power_ctrl_level
-0x4d84 mem_seqi
-0x4d85 mem_24g_auto_paring_switch
-0x4d86 mem_24g_paccnt
-0x4d87 mem_24g_transmit_by_interrupt
-0x4d88 mem_24g_transmit_by_interrupt_exit_count
-0x4d8a mem_24g_transmit_by_interrupt_exit_count_init
-0x4d8c mem_24g_allpowerful_addr
-0x4d92 mem_24g_stop_g24_mode
-0x4d93 mem_24g_stop_g24_mode_timeout
-0x4d95 mem_24g_pair_current_ch_num
-0x4d96 mem_24g_powerful_current_ch_num
-0x4d97 mem_24g_search_dongle_action
-0x4d98 mem_24g_search_dongle_count
-0x4d99 mem_24g_search_dongle_ch
-0x4d9a mem_24g_search_dongle_wait
-0x4d9b mem_24g_conn_sm
+0x4bc1 mem_24g_stop_g24_pair_mode_timerout
+0x4bc3 mem_24g_rxbuf
+0x4be5 mem_24g_txbuf
+0x4c05 mem_24g_txpayload
+0x4c27 mem_24g_rxpayload
+0x4c47 mem_24g_rxdata_length
+0x4c48 mem_24g_pid
+0x4c49 mem_24g_datalen
+0x4c4a mem_24g_data_type
+0x4c4b mem_24g_txlen
+0x4c4c mem_24g_rx_window
+0x4c4e mem_24g_ensure
+0x4c4f mem_24g_txfail_cnt
+0x4c51 mem_24g_get_ack_fail
+0x4c52 mem_24g_retry
+0x4c53 mem_24g_ch
+0x4c54 mem_24g_current_ch_number
+0x4c55 mem_24g_paring_addr
+0x4c59 mem_24g_pairing_sm
+0x4c5a mem_24g_ch_map1
+0x4c5e mem_24g_ch_map2
+0x4c62 mem_24g_ch_map3
+0x4c66 mem_24g_ch_map4
+0x4c6a mem_24g_tx_btclk
+0x4c6e mem_24g_interval
+0x4c6f mem_24g_interval_min
+0x4c70 mem_24g_interval_max
+0x4c71 mem_24g_addr
+0x4c75 mem_24g_abort_pac
+0x4c76 mem_24g_check_dongle_times
+0x4c78 mem_24g_enter_hibernate
+0x4c80 mem_24g_device_addr
+0x4c84 mem_24g_pac_index
+0x4c85 mem_24g_no_ack
+0x4c86 mem_24g_sta_crc
+0x4c89 mem_24g_last_crc
+0x4c8c mem_24g_sta_pid
+0x4c8d mem_24g_last_pid
+0x4c8e mem_24g_max_retry
+0x4c8f mem_24g_mode
+0x4c90 mem_24g_rxdata_temp
+0x4cb2 mem_24g_rx_addr
+0x4cb6 mem_dongle_mode_init
+0x4cb7 mem_dongle_work_mode
+0x4cb8 mem_dongle_ms_bind_step
+0x4cb9 mem_dongle_kb_bind_step
+0x4cba mem_dongle_bind_device_status
+0x4cbb mem_24g_bind_payload
+0x4cc3 mem_24g_abort_packet
+0x4cc4 mem_24g_rf_laststa
+0x4cc5 mem_24g_hop_btclk
+0x4cc9 mem_24g_hop_interval
+0x4cca mem_24g_mode_switch
+0x4ccb mem_24g_ackpayload_enable
+0x4ccc mem_24g_hop_packet
+0x4ccd mem_24g_pair_mode
+0x4cce mem_24g_nodata_timer_enable
+0x4ccf mem_24g_time_slice
+0x4cd0 mem_24g_kb_data_sta_data
+0x4cd8 mem_24g_kb_data_last_data
+0x4ce0 mem_24g_kb_multikey_sta_data
+0x4ce3 mem_24g_kb_multikey_last_data
+0x4ce6 mem_24g_kb_blank_data_enable
+0x4ce7 mem_24g_kb_mul_blank_data_enable
+0x4ce8 mem_24g_ms_blank_data_enable
+0x4ce9 mem_24g_kb_addr
+0x4ced mem_24g_ms_addr
+0x4cf1 mem_24g_dg_last_ch
+0x4cf2 mem_24g_dg_ch_number
+0x4cf3 mem_24g_dg_config_ch_once
+0x4cf4 mem_24g_kb_last_ch
+0x4cf5 mem_24g_kb_ch_number
+0x4cf6 mem_24g_kb_config_ch_once
+0x4cf7 mem_24g_ms_last_ch
+0x4cf8 mem_24g_ms_ch_number
+0x4cf9 mem_24g_ms_config_ch_once
+0x4cfa mem_24g_syncword
+0x4cfc mem_24g_syncword_crc8
+0x4cfd mem_24g_get_syncword_crc8
+0x4cfe mem_24g_ota_sta_pid
+0x4d00 mem_tx_power_temp
+0x4d01 mem_rssi_hex
+0x4d02 mem_rssi_noise_avg
+0x4d03 mem_rssi_noise_index
+0x4d04 mem_rssi_signal_index
+0x4d05 mem_rssi_noise_dg_avg
+0x4d06 mem_rssi_noise_kb_avg
+0x4d07 mem_rssi_noise_ms_avg
+0x4d08 mem_rssi_noise_dg_index
+0x4d09 mem_rssi_noise_kb_index
+0x4d0a mem_rssi_noise_ms_index
+0x4d0b mem_rssi_signal_buf
+0x4d13 mem_queue_ele_num
+0x4d14 mem_queue_read
+0x4d16 mem_queue_write
+0x4d18 mem_queue_start
+0x4d18 mem_data_ele0
+0x4d38 mem_data_ele1
+0x4d58 mem_data_ele2
+0x4d78 mem_queue_end
+0x4d78 mem_queue_temp
+0x4d7a mem_cb_24g_data
+0x4d7c mem_24g_hop_fastly_cnt
+0x4d7d mem_24g_hop_pac_retry
+0x4d7e mem_24g_rf_hop_ch
+0x4d7f mem_24g_rf_last_sta
+0x4d80 mem_24g_rf_work_stage
+0x4d81 mem_24g_sync_cnt
+0x4d82 mem_power_ctrl_pac_succ_cnt
+0x4d83 mem_rssi_avg_received
+0x4d84 mem_rssi_hex_received
+0x4d85 mem_power_ctrl_level
+0x4d86 mem_seqi
+0x4d87 mem_24g_auto_paring_switch
+0x4d88 mem_24g_paccnt
+0x4d89 mem_24g_transmit_by_interrupt
+0x4d8a mem_24g_transmit_by_interrupt_exit_count
+0x4d8c mem_24g_transmit_by_interrupt_exit_count_init
+0x4d8e mem_24g_allpowerful_addr
+0x4d94 mem_24g_stop_g24_mode
+0x4d95 mem_24g_stop_g24_mode_timeout
+0x4d97 mem_24g_pair_current_ch_num
+0x4d98 mem_24g_powerful_current_ch_num
+0x4d99 mem_24g_search_dongle_action
+0x4d9a mem_24g_search_dongle_count
+0x4d9b mem_24g_search_dongle_ch
+0x4d9c mem_24g_search_dongle_wait
+0x4d9d mem_24g_conn_sm
Index: XZR_3MODE_2Ch_24G_First_NEW/output/program.lis
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/program.lis	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/program.lis	(working copy)
@@ -7,19 +7,19 @@
 p_zcode:
 
 p_wake_from_power:
-0001 204003bb call p_mouse_data_init 
+0001 204003ac call p_mouse_data_init 
 0002 6800c1de fetch 1 ,mem_tx_power 
-0003 6000ccfe store 1 ,mem_tx_power_temp 
-0004 204006ff call power_ctrl_pac_succ_cnt_init 
+0003 6000cd00 store 1 ,mem_tx_power_temp 
+0004 204006f4 call power_ctrl_pac_succ_cnt_init 
 0005 6800c685 fetch 1 ,mem_ui_button_timeout 
 0006 6000c6da store 1 ,mem_combination_ui_button_count 
-0007 204004e0 call p_mouse_bt_discovery_button_up_init 
-0008 20400333 call p_mouse_spi_init 
-0009 2040079a call p_drawing_optima_init 
+0007 204004d5 call p_mouse_bt_discovery_button_up_init 
+0008 20400324 call p_mouse_spi_init 
+0009 2040078f call p_drawing_optima_init 
 000a 20400019 call p_mouse_cb_fuction 
 000b 2040002c call p_mouse_wakeup_from_power 
 000c 680240a0 fetch 4 ,mem_lap 
-000d 60024c7e store 4 ,mem_24g_device_addr 
+000d 60024c80 store 4 ,mem_24g_device_addr 
 000e 20405810 call le_set_config_fixed_ltk 
 000f 20405839 call le_set_justwork 
 0010 2040582c call le_set_fixed_ltk 
@@ -30,35 +30,35 @@
 0015 58000000 setarg 0 
 0016 60014154 store 2 ,mem_lpm_interval 
 0017 204068a2 call load_adc_init 
-0018 20200306 branch p_mouse_setting_config 
+0018 202002f7 branch p_mouse_setting_config 
 
 p_mouse_cb_fuction:
-0019 5800037c setarg p_mouse_g24_package_data 
-001a 60014d78 store 2 ,mem_cb_24g_data 
-001b 580003a7 setarg p_mouse_le 
+0019 5800036d setarg p_mouse_g24_package_data 
+001a 60014d7a store 2 ,mem_cb_24g_data 
+001b 58000398 setarg p_mouse_le 
 001c 600141ef store 2 ,mem_cb_le_process 
-001d 5800063a setarg p_le_mouse_bb_event_connect_complete 
+001d 5800062f setarg p_le_mouse_bb_event_connect_complete 
 001e 600141f9 store 2 ,mem_cb_att_write 
-001f 580003da setarg p_mouse_bt 
+001f 580003cb setarg p_mouse_bt 
 0020 600141f1 store 2 ,mem_cb_bt_process 
 0021 580002a6 setarg p_mouse_before_lpm 
 0022 600141ed store 2 ,mem_cb_before_lpm 
-0023 58000412 setarg p_mouse_priority_bb_event 
+0023 58000403 setarg p_mouse_priority_bb_event 
 0024 600141f5 store 2 ,mem_cb_bb_event_process 
-0025 580003ff setarg p_mouse_idle 
+0025 580003f0 setarg p_mouse_idle 
 0026 600141f3 store 2 ,mem_cb_idle_process 
-0027 58000461 setarg p_mouse_before_hibernate 
+0027 58000452 setarg p_mouse_before_hibernate 
 0028 600141eb store 2 ,mem_cb_before_hibernate 
-0029 5800046e setarg p_mouse_bb_event_timer 
+0029 5800045f setarg p_mouse_bb_event_timer 
 002a 600141fd store 2 ,mem_cb_event_timer 
 002b 20600000 rtn 
 
 p_mouse_wakeup_from_power:
 002c 58000019 setarg 25 
-002d 60014d8a store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+002d 60014d8c store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 002e 24558039 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
-002f 204002d4 call p_mouse_init_sunt 
-0030 20400467 call p_mouse_sensor_powerdown 
+002f 204002d5 call p_mouse_init_sunt 
+0030 20400458 call p_mouse_sensor_powerdown 
 
 p_mouse_wakeup_no_from_power:
 0031 6800c71f fetch 1 ,mem_reconn_times_init 
@@ -68,11 +68,11 @@
 0035 6800c241 fetch 1 ,mem_power_on_flag 
 0036 c3810000 rtnbit1 2 
 0037 704b770a jam ble_poweron_reconn_timer ,mem_mouse_poweron_bt_start_reconn_timer 
-0038 202003a4 branch p_mouse_dpi_config_default 
+0038 20200395 branch p_mouse_dpi_config_default 
 
 p_mouse_24g_transmit_by_interrupt_exit_count_max:
 0039 58000177 setarg 375 
-003a 60014d8a store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+003a 60014d8c store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 003b 20600000 rtn 
 003c 20000001 nop 1 
 003d 20000001 nop 1 
@@ -83,67 +83,67 @@
 0040 c284005a bbit1 8 ,pf_patch_ext 
 0041 c0008076 beq patch00_1 ,p_soft_reset_1 
 0042 c001007f beq patch00_2 ,p_soft_reset_2 
-0043 c042876b beq patch10_5 ,p_shutdown_radio 
-0044 c044873c beq patch11_1 ,p_set_freq_tx 
-0045 c045076d beq patch11_2 ,p_initialize_radio_cont 
-0046 c00d864f beq patch03_3 ,p_page_wait_fhs_reply_ok 
-0047 c0130651 beq patch04_6 ,p_role_switch_master 
-0048 c024066d beq patch09_0 ,p_quit_connection_cont 
-0049 c025066f beq patch09_2 ,p_prepare_tx 
-004a c0288678 beq patch0a_1 ,p_slave_conn_recv_packet 
-004b c02c866b beq patch0b_1 ,p_process_dmh 
-004c c053867d beq patch14_7 ,p_lpm_dispatch 
-004d c0568693 beq patch15_5 ,p_lpm_set_mult 
+0043 c0428760 beq patch10_5 ,p_shutdown_radio 
+0044 c0448731 beq patch11_1 ,p_set_freq_tx 
+0045 c0450762 beq patch11_2 ,p_initialize_radio_cont 
+0046 c00d8644 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0047 c0130646 beq patch04_6 ,p_role_switch_master 
+0048 c0240662 beq patch09_0 ,p_quit_connection_cont 
+0049 c0250664 beq patch09_2 ,p_prepare_tx 
+004a c028866d beq patch0a_1 ,p_slave_conn_recv_packet 
+004b c02c8660 beq patch0b_1 ,p_process_dmh 
+004c c0538672 beq patch14_7 ,p_lpm_dispatch 
+004d c0568688 beq patch15_5 ,p_lpm_set_mult 
 004e c065b3e4 beq patch19_3 ,app_bt_start_reconnect + 3 
-004f c07486a4 beq patch1d_1 ,p_mouse_bb_disconnected 
+004f c0748699 beq patch1d_1 ,p_mouse_bb_disconnected 
 0050 c0508088 beq patch14_1 ,p_init_param 
 0051 c058808d beq patch16_1 ,p_lpm_check_wake_lock 
 0052 c059009b beq patch16_2 ,p_g24_dispatch 
 0053 c06202b3 beq patch18_4 ,p_device_init 
-0054 c0718512 beq patch1c_3 ,p_mouse_seting_dpi 
-0055 c073053a beq patch1c_6 ,p_mouse_motion 
-0056 c0750582 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
-0057 c075858b beq patch1d_3 ,p_mouse_start_discovery 
-0058 c076058e beq patch1d_4 ,p_mouse_stop_discovery 
+0054 c0718507 beq patch1c_3 ,p_mouse_seting_dpi 
+0055 c073052f beq patch1c_6 ,p_mouse_motion 
+0056 c0750577 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0057 c0758580 beq patch1d_3 ,p_mouse_start_discovery 
+0058 c0760583 beq patch1d_4 ,p_mouse_stop_discovery 
 0059 20202a8e branch loop 
 
 pf_patch_ext:
-005a c01c8590 beq patch27_1 ,p_le_slave_match 
-005b c0218598 beq patch28_3 ,p_le_next_adv_channel 
-005c c025059e beq patch29_2 ,p_le_receive_skip 
-005d c02b85a1 beq patch2a_7 ,p_le_update_param 
-005e c02c85a3 beq patch2b_1 ,p_le_update_channel_map 
-005f c03185a5 beq patch2c_3 ,p_le_prepare_tx 
-0060 c03305ce beq patch2c_6 ,p_le_parse 
-0061 c03385ed beq patch2c_7 ,p_le_parse_l2cap 
-0062 c0350625 beq patch2d_2 ,p_le_adv_not_match 
-0063 c03b8630 beq patch2e_7 ,p_le_lpm_setmult 
-0064 c07d06e7 beq patch3f_2 ,p_check_51cmd_once_continue 
-0065 c00286a6 beq patch20_5 ,p_hid_rx_process 
-0066 c04006a8 beq patch30_0 ,p_parse_lmp_accepted 
-0067 c04106b2 beq patch30_2 ,p_send_lmp 
-0068 c04406c3 beq patch31_0 ,p_process_conn_sm 
-0069 c046063c beq patch31_4 ,p_twspi_reset 
-006a c0468648 beq patch31_5 ,p_spid_init 
+005a c01c8585 beq patch27_1 ,p_le_slave_match 
+005b c021858d beq patch28_3 ,p_le_next_adv_channel 
+005c c0250593 beq patch29_2 ,p_le_receive_skip 
+005d c02b8596 beq patch2a_7 ,p_le_update_param 
+005e c02c8598 beq patch2b_1 ,p_le_update_channel_map 
+005f c031859a beq patch2c_3 ,p_le_prepare_tx 
+0060 c03305c3 beq patch2c_6 ,p_le_parse 
+0061 c03385e2 beq patch2c_7 ,p_le_parse_l2cap 
+0062 c035061a beq patch2d_2 ,p_le_adv_not_match 
+0063 c03b8625 beq patch2e_7 ,p_le_lpm_setmult 
+0064 c07d06dc beq patch3f_2 ,p_check_51cmd_once_continue 
+0065 c002869b beq patch20_5 ,p_hid_rx_process 
+0066 c040069d beq patch30_0 ,p_parse_lmp_accepted 
+0067 c04106a7 beq patch30_2 ,p_send_lmp 
+0068 c04406b8 beq patch31_0 ,p_process_conn_sm 
+0069 c0460631 beq patch31_4 ,p_twspi_reset 
+006a c046863d beq patch31_5 ,p_spid_init 
 006b 20202a8e branch loop 
 
 p_rssi_signal:
 006c 1fe22200 copy pdata ,rega 
-006d 6808cd02 fetcht 1 ,mem_rssi_signal_index 
-006e 58004d09 setarg mem_rssi_signal_buf 
+006d 6808cd04 fetcht 1 ,mem_rssi_signal_index 
+006e 58004d0b setarg mem_rssi_signal_buf 
 006f 98408a00 iadd temp ,contw 
 0070 1a227e00 copy rega ,pdata 
 0071 e0a08000 istore 1 ,contw 
 0072 18408401 increase 1 ,temp 
 0073 18410407 and_into rssi_buf_len_signal ,temp 
-0074 6008cd02 storet 1 ,mem_rssi_signal_index 
+0074 6008cd04 storet 1 ,mem_rssi_signal_index 
 0075 20600000 rtn 
 
 p_soft_reset_1:
 0076 d8a009ae arg mem_sp_state ,contw 
 0077 df20000c arg 12 ,loopcnt 
 0078 20407ed4 call clear_mem 
-0079 2040038d call p_mouse_le_txbuff_load 
+0079 2040037e call p_mouse_le_txbuff_load 
 007a 20406a03 call rfcomm_init 
 007b 20405cf6 call init_lmp 
 007c 2455ac65 ncall lpm_disable_exen_output ,wake 
@@ -188,10 +188,10 @@
 
 p_g24_dispatch:
 009b c6930000 rtnmark0 mark_24g 
-009c 6800cd9b fetch 1 ,mem_24g_conn_sm 
+009c 6800cd9d fetch 1 ,mem_24g_conn_sm 
 009d c28080b0 bbit1 state_24g_pair ,p_g24_pair_dispatch 
 009e c28100b2 bbit1 state_24g_reconn ,p_g24_reconn_dispatch 
-009f 6800cd87 fetch 1 ,mem_24g_transmit_by_interrupt 
+009f 6800cd89 fetch 1 ,mem_24g_transmit_by_interrupt 
 00a0 c00080b8 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
 
 p_g24_transmit_process:
@@ -201,12 +201,12 @@
 
 p_g24_transmit_start:
 00a4 20400193 call p_g24_transmit_packet 
-00a5 6800cc57 fetch 1 ,mem_24g_pairing_sm 
+00a5 6800cc59 fetch 1 ,mem_24g_pairing_sm 
 00a6 c1ff8000 rtnne state_24g_pairing_success 
-00a7 20400710 call power_ctrl_start 
+00a7 20400705 call power_ctrl_start 
 00a8 204000b4 call g24_long_sleep_shorter_param_update 
 00a9 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
-00aa c000837f beq on ,p_g24_transmit_by_interrupt_enable 
+00aa c0008370 beq on ,p_g24_transmit_by_interrupt_enable 
 
 p_g24_short_sleep:
 00ab 204000e2 call p_g24_lpm_wait 
@@ -217,15 +217,15 @@
 
 p_g24_pair_dispatch:
 00b0 7011c660 jam zcode_60 ,mem_zcode_temp_param0 
-00b1 20200770 branch p_zcode_entrance 
+00b1 20200765 branch p_zcode_entrance 
 
 p_g24_reconn_dispatch:
 00b2 7011c653 jam zcode_53 ,mem_zcode_temp_param0 
-00b3 20200770 branch p_zcode_entrance 
+00b3 20200765 branch p_zcode_entrance 
 
 g24_long_sleep_shorter_param_update:
 00b4 58017700 setarg g24_long_sleep_step1 
-00b5 6001cc76 store 3 ,mem_24g_enter_hibernate 
+00b5 6001cc78 store 3 ,mem_24g_enter_hibernate 
 00b6 704b4414 jam 20 ,mem_24g_long_sleep_param_update_timer 
 00b7 20600000 rtn 
 
@@ -233,56 +233,56 @@
 00b8 20400286 call p_g24_timer_check 
 00b9 24740000 nrtn user 
 00ba 204000cd call p_g24_interval_calibrate 
-00bb 68014d88 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00bb 68014d8a fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00bc 1fe0fe01 increase 1 ,pdata 
-00bd 60014d88 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-00be 68094d8a fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+00bd 60014d8a store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00be 68094d8c fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 00bf 98467c00 isub temp ,null 
 00c0 204280c2 call p_g24_transmit_by_interrupt_exit ,zero 
 00c1 202000a1 branch p_g24_transmit_process 
 
 p_g24_transmit_by_interrupt_exit:
-00c2 704d8700 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
+00c2 704d8900 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
 00c3 58000000 setarg 0 
-00c4 60014d88 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00c4 60014d8a store 2 ,mem_24g_transmit_by_interrupt_exit_count 
 00c5 58000019 setarg 25 
-00c6 60014d8a store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+00c6 60014d8c store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
 
 p_g24_interval_min:
-00c7 704c8200 jam 0 ,mem_24g_pac_index 
-00c8 6800cc6d fetch 1 ,mem_24g_interval_min 
+00c7 704c8400 jam 0 ,mem_24g_pac_index 
+00c8 6800cc6f fetch 1 ,mem_24g_interval_min 
 
 p_g24_interval_store:
-00c9 6000cc6c store 1 ,mem_24g_interval 
+00c9 6000cc6e store 1 ,mem_24g_interval 
 00ca 20600000 rtn 
 
 p_g24_interval_max:
-00cb 6800cc6e fetch 1 ,mem_24g_interval_max 
+00cb 6800cc70 fetch 1 ,mem_24g_interval_max 
 00cc 202000c9 branch p_g24_interval_store 
 
 p_g24_interval_calibrate:
-00cd 6800cc82 fetch 1 ,mem_24g_pac_index 
+00cd 6800cc84 fetch 1 ,mem_24g_pac_index 
 00ce 1fe0fe01 increase 1 ,pdata 
-00cf 6000cc82 store 1 ,mem_24g_pac_index 
+00cf 6000cc84 store 1 ,mem_24g_pac_index 
 00d0 c00200cb beq 4 ,p_g24_interval_max 
 00d1 c00280c7 beq 5 ,p_g24_interval_min 
 00d2 20600000 rtn 
 
 p_g24_nodata_transmit:
-00d3 6800cc73 fetch 1 ,mem_24g_abort_pac 
+00d3 6800cc75 fetch 1 ,mem_24g_abort_pac 
 00d4 205a00fb call p_g24_send_abort_packet ,blank 
 00d5 6800cb2c fetch 1 ,mem_mouse_multi_led_blink_count 
 00d6 247a0000 nrtn blank 
 00d7 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
 00d8 c1008000 rtneq on 
-00d9 6800cd87 fetch 1 ,mem_24g_transmit_by_interrupt 
+00d9 6800cd89 fetch 1 ,mem_24g_transmit_by_interrupt 
 00da c1008000 rtneq g24_tx_timer_int_enable 
 00db 2040010c call p_g24_search_dongle 
 
 p_g24_long_sleep:
 00dc 204000e2 call p_g24_lpm_wait 
 00dd 24740000 nrtn user 
-00de 6801cc76 fetch 3 ,mem_24g_enter_hibernate 
+00de 6801cc78 fetch 3 ,mem_24g_enter_hibernate 
 00df 20407f49 call clk2lpo 
 00e0 600a415b storet 4 ,mem_sleep_counter 
 00e1 20202b2a branch lpm_sleep 
@@ -294,7 +294,7 @@
 00e5 203a7fe9 branch disable_user ,blank 
 00e6 6800c091 fetch 1 ,mem_lpm_mode 
 00e7 203a7fe9 branch disable_user ,blank 
-00e8 6800cd87 fetch 1 ,mem_24g_transmit_by_interrupt 
+00e8 6800cd89 fetch 1 ,mem_24g_transmit_by_interrupt 
 00e9 c000ffe9 beq g24_tx_timer_int_enable ,disable_user 
 
 p_mouse_setgpio_lpm:
@@ -303,7 +303,7 @@
 
 p_mouse_setgpio_hibernate:
 00ec 20403ebf call mouse_lpm_before_common 
-00ed 20400308 call p_flash_ncs_disable 
+00ed 204002f9 call p_flash_ncs_disable 
 00ee 68120070 hfetch 4 ,core_gpio_oe0 
 00ef 681a0078 hfetcht 4 ,core_gpio_pu0 
 00f0 98418400 ior temp ,temp 
@@ -321,119 +321,119 @@
 00fa 202067fb branch gpio_config_input 
 
 p_g24_send_abort_packet:
-00fb 704c7301 jam 1 ,mem_24g_abort_pac 
-00fc 704d7c00 jam 0 ,mem_24g_rf_hop_ch 
+00fb 704c7501 jam 1 ,mem_24g_abort_pac 
+00fc 704d7e00 jam 0 ,mem_24g_rf_hop_ch 
 00fd 20400121 call p_g24_transmit_rf_ctrl_clear 
-00fe 6000cbe3 store 1 ,mem_24g_txbuf 
+00fe 6000cbe5 store 1 ,mem_24g_txbuf 
 00ff 58000000 setarg 0 
-0100 6003cbe4 store 7 ,mem_24g_txbuf + 1 
-0101 68024c7e fetch 4 ,mem_24g_device_addr 
-0102 60024beb store 4 ,mem_24g_txbuf + 8 
-0103 704c470c jam 12 ,mem_24g_datalen 
-0104 6800cc48 fetch 1 ,mem_24g_data_type 
+0100 6003cbe6 store 7 ,mem_24g_txbuf + 1 
+0101 68024c80 fetch 4 ,mem_24g_device_addr 
+0102 60024bed store 4 ,mem_24g_txbuf + 8 
+0103 704c490c jam 12 ,mem_24g_datalen 
+0104 6800cc4a fetch 1 ,mem_24g_data_type 
 0105 79207e03 set1 bit_abort ,pdata 
-0106 6000cc48 store 1 ,mem_24g_data_type 
+0106 6000cc4a store 1 ,mem_24g_data_type 
 0107 20400173 call p_g24_txdata_enable_tx 
 0108 202000a4 branch p_g24_transmit_start 
 
 p_g24_search_dongle_init:
 0109 58000000 setarg 0 
-010a 6001cd97 store 3 ,mem_24g_search_dongle_action 
+010a 6001cd99 store 3 ,mem_24g_search_dongle_action 
 010b 20600000 rtn 
 
 p_g24_search_dongle:
 010c 7011c671 jam zcode_71 ,mem_zcode_temp_param0 
-010d 20200770 branch p_zcode_entrance 
+010d 20200765 branch p_zcode_entrance 
 
 p_g24_search_dongle_check:
-010e 704d9800 jam 0 ,mem_24g_search_dongle_count 
-010f 6800cd97 fetch 1 ,mem_24g_search_dongle_action 
+010e 704d9a00 jam 0 ,mem_24g_search_dongle_count 
+010f 6800cd99 fetch 1 ,mem_24g_search_dongle_action 
 0110 c3800000 rtnbit1 g24_disconn_state 
 0111 79207e00 set1 g24_disconn_state ,pdata 
-0112 6000cd97 store 1 ,mem_24g_search_dongle_action 
+0112 6000cd99 store 1 ,mem_24g_search_dongle_action 
 0113 58000708 setarg g24_disconn_nodata_timer 
 0114 600146b0 store 2 ,mem_mouse_no_data_timer 
-0115 20200467 branch p_mouse_sensor_powerdown 
+0115 20200458 branch p_mouse_sensor_powerdown 
 
 p_g24_search_dongle_success:
-0116 6800cc73 fetch 1 ,mem_24g_abort_pac 
+0116 6800cc75 fetch 1 ,mem_24g_abort_pac 
 0117 203a0109 branch p_g24_search_dongle_init ,blank 
-0118 704d9800 jam 0 ,mem_24g_search_dongle_count 
-0119 6800cd97 fetch 1 ,mem_24g_search_dongle_action 
+0118 704d9a00 jam 0 ,mem_24g_search_dongle_count 
+0119 6800cd99 fetch 1 ,mem_24g_search_dongle_action 
 011a c4000000 rtnbit0 g24_disconn_state 
 011b 793ffe00 set0 g24_disconn_state ,pdata 
-011c 6000cd97 store 1 ,mem_24g_search_dongle_action 
+011c 6000cd99 store 1 ,mem_24g_search_dongle_action 
 011d 20403f8d call mouse_no_data_timer_init 
-011e 202003d8 branch p_mouse_init_sensor_reset 
+011e 202003c9 branch p_mouse_init_sensor_reset 
 
 p_g24_transmit_rf_sta_init:
-011f 704d7d01 jam 1 ,mem_24g_rf_last_sta 
-0120 704d7f00 jam 0 ,mem_24g_sync_cnt 
+011f 704d7f01 jam 1 ,mem_24g_rf_last_sta 
+0120 704d8100 jam 0 ,mem_24g_sync_cnt 
 
 p_g24_transmit_rf_ctrl_clear:
-0121 6800cc48 fetch 1 ,mem_24g_data_type 
+0121 6800cc4a fetch 1 ,mem_24g_data_type 
 0122 1fe17e07 and_into bits_data ,pdata 
-0123 6000cc48 store 1 ,mem_24g_data_type 
+0123 6000cc4a store 1 ,mem_24g_data_type 
 0124 20600000 rtn 
 
 p_g24_hop_ch_enable:
-0125 6800cc48 fetch 1 ,mem_24g_data_type 
+0125 6800cc4a fetch 1 ,mem_24g_data_type 
 0126 79207e04 set1 bit_hop ,pdata 
-0127 6000cc48 store 1 ,mem_24g_data_type 
-0128 6000cc03 store 1 ,mem_24g_txpayload 
+0127 6000cc4a store 1 ,mem_24g_data_type 
+0128 6000cc05 store 1 ,mem_24g_txpayload 
 0129 20600000 rtn 
 
 p_g24_hop_enable_packet:
-012a 6800cc48 fetch 1 ,mem_24g_data_type 
+012a 6800cc4a fetch 1 ,mem_24g_data_type 
 012b c4020000 rtnbit0 bit_hop 
 
 p_g24_hop_ch_disable:
-012c 6800cc48 fetch 1 ,mem_24g_data_type 
+012c 6800cc4a fetch 1 ,mem_24g_data_type 
 012d 793ffe04 set0 bit_hop ,pdata 
-012e 6000cc48 store 1 ,mem_24g_data_type 
-012f 6000cc03 store 1 ,mem_24g_txpayload 
-0130 20400706 call power_ctrl_pac_succ_decrs 
+012e 6000cc4a store 1 ,mem_24g_data_type 
+012f 6000cc05 store 1 ,mem_24g_txpayload 
+0130 204006fb call power_ctrl_pac_succ_decrs 
 0131 2020015e branch p_g24_ch 
 
 p_g24_rf_hop_attemp_again:
-0132 6800cd7c fetch 1 ,mem_24g_rf_hop_ch 
+0132 6800cd7e fetch 1 ,mem_24g_rf_hop_ch 
 0133 c0808121 bne 1 ,p_g24_transmit_rf_ctrl_clear 
 
 p_g24_rf_hop_fastly:
-0134 6800cd7a fetch 1 ,mem_24g_hop_fastly_cnt 
+0134 6800cd7c fetch 1 ,mem_24g_hop_fastly_cnt 
 0135 1fe0fe01 increase 1 ,pdata 
-0136 6000cd7a store 1 ,mem_24g_hop_fastly_cnt 
+0136 6000cd7c store 1 ,mem_24g_hop_fastly_cnt 
 0137 c002013b beq 4 ,p_g24_rf_hop_fastly_exit 
 0138 2040015e call p_g24_ch 
-0139 704c8c02 jam 2 ,mem_24g_max_retry 
+0139 704c8e02 jam 2 ,mem_24g_max_retry 
 013a 20200193 branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-013b 20400706 call power_ctrl_pac_succ_decrs 
-013c 704d7a00 jam 0 ,mem_24g_hop_fastly_cnt 
+013b 204006fb call power_ctrl_pac_succ_decrs 
+013c 704d7c00 jam 0 ,mem_24g_hop_fastly_cnt 
 013d 20200121 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_hop_pac_succ_wo_hop:
-013e 704d7f02 jam 2 ,mem_24g_sync_cnt 
+013e 704d8102 jam 2 ,mem_24g_sync_cnt 
 
 p_g24_transmit_hop_pac_succ:
-013f 704d7d01 jam 1 ,mem_24g_rf_last_sta 
-0140 704d7c00 jam 0 ,mem_24g_rf_hop_ch 
+013f 704d7f01 jam 1 ,mem_24g_rf_last_sta 
+0140 704d7e00 jam 0 ,mem_24g_rf_hop_ch 
 0141 20200121 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_succ_rf_config:
-0142 6800cd7e fetch 1 ,mem_24g_rf_work_stage 
+0142 6800cd80 fetch 1 ,mem_24g_rf_work_stage 
 0143 c001813f beq 3 ,p_g24_transmit_hop_pac_succ 
-0144 6800cc48 fetch 1 ,mem_24g_data_type 
+0144 6800cc4a fetch 1 ,mem_24g_data_type 
 0145 2fec0004 isolate0 bit_hop ,pdata 
 0146 2020811f branch p_g24_transmit_rf_sta_init ,true 
-0147 6800cd7e fetch 1 ,mem_24g_rf_work_stage 
+0147 6800cd80 fetch 1 ,mem_24g_rf_work_stage 
 0148 c000813e beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
 0149 c001013f beq 2 ,p_g24_transmit_hop_pac_succ 
 014a 20600000 rtn 
 
 p_g24_rf_sta_check:
-014b 6800cc57 fetch 1 ,mem_24g_pairing_sm 
+014b 6800cc59 fetch 1 ,mem_24g_pairing_sm 
 014c c1ff8000 rtnne state_24g_pairing_success 
 014d 20400150 call p_g24_rf_laststa_synccnt_check 
 014e 24560158 ncall p_g24_rf_sync_cnt_check ,user2 
@@ -441,46 +441,46 @@
 
 p_g24_rf_laststa_synccnt_check:
 0150 78567c00 disable user2 
-0151 6800cd7d fetch 1 ,mem_24g_rf_last_sta 
+0151 6800cd7f fetch 1 ,mem_24g_rf_last_sta 
 0152 c1808000 rtnne 1 
-0153 6800cd7f fetch 1 ,mem_24g_sync_cnt 
+0153 6800cd81 fetch 1 ,mem_24g_sync_cnt 
 0154 c1800000 rtnne 0 
-0155 704d7e01 jam 1 ,mem_24g_rf_work_stage 
-0156 704c8c04 jam 4 ,mem_24g_max_retry 
+0155 704d8001 jam 1 ,mem_24g_rf_work_stage 
+0156 704c8e04 jam 4 ,mem_24g_max_retry 
 0157 20207feb branch enable_user2 
 
 p_g24_rf_sync_cnt_check:
-0158 6800cd7f fetch 1 ,mem_24g_sync_cnt 
+0158 6800cd81 fetch 1 ,mem_24g_sync_cnt 
 0159 203a016b branch p_g24_rf_hop_attemp ,blank 
 015a 1fe0ffff increase -1 ,pdata 
-015b 6000cd7f store 1 ,mem_24g_sync_cnt 
-015c 704d7e02 jam 2 ,mem_24g_rf_work_stage 
-015d 704c8c04 jam 4 ,mem_24g_max_retry 
+015b 6000cd81 store 1 ,mem_24g_sync_cnt 
+015c 704d8002 jam 2 ,mem_24g_rf_work_stage 
+015d 704c8e04 jam 4 ,mem_24g_max_retry 
 
 p_g24_ch:
-015e 6808cc52 fetcht 1 ,mem_24g_current_ch_number 
-015f 6800cc6f fetch 1 ,mem_24g_addr 
+015e 6808cc54 fetcht 1 ,mem_24g_current_ch_number 
+015f 6800cc71 fetch 1 ,mem_24g_addr 
 0160 1fe17e03 and_into 0x03 ,pdata 
 0161 1fefa204 mul32 pdata ,4 ,rega 
-0162 58004c58 setarg mem_24g_ch_map1 
+0162 58004c5a setarg mem_24g_ch_map1 
 0163 9a20fe00 iadd rega ,pdata 
 0164 98408c00 iadd temp ,contr 
 0165 e8c08000 ifetch 1 ,contr 
-0166 6000cc51 store 1 ,mem_24g_ch 
+0166 6000cc53 store 1 ,mem_24g_ch 
 0167 18408401 increase 1 ,temp 
 0168 18410403 and_into 3 ,temp 
-0169 6008cc52 storet 1 ,mem_24g_current_ch_number 
+0169 6008cc54 storet 1 ,mem_24g_current_ch_number 
 016a 20600000 rtn 
 
 p_g24_rf_hop_attemp:
-016b 704d7e03 jam 3 ,mem_24g_rf_work_stage 
-016c 6800cd7c fetch 1 ,mem_24g_rf_hop_ch 
+016b 704d8003 jam 3 ,mem_24g_rf_work_stage 
+016c 6800cd7e fetch 1 ,mem_24g_rf_hop_ch 
 016d 243a0132 nbranch p_g24_rf_hop_attemp_again ,blank 
-016e 704c8c02 jam 2 ,mem_24g_max_retry 
+016e 704c8e02 jam 2 ,mem_24g_max_retry 
 016f 2020015e branch p_g24_ch 
 
 p_g24_txdata_prep:
-0170 6800cc57 fetch 1 ,mem_24g_pairing_sm 
+0170 6800cc59 fetch 1 ,mem_24g_pairing_sm 
 0171 c0ff81ec bne state_24g_pairing_success ,p_g24_pairing_sm 
 
 p_g24_txdata_prep_packeage_data:
@@ -488,24 +488,24 @@
 
 p_g24_txdata_enable_tx:
 0173 2040020a call p_g24_transmit_prep 
-0174 704c4c01 jam ensure_on_24g ,mem_24g_ensure 
+0174 704c4e01 jam ensure_on_24g ,mem_24g_ensure 
 0175 20600000 rtn 
 
 p_g24_package_data:
-0176 68014d78 fetch 2 ,mem_cb_24g_data 
+0176 68014d7a fetch 2 ,mem_cb_24g_data 
 0177 20407f9c call callback_func 
 0178 2034017c branch p_g24_accumulate_mouse_data ,user 
-0179 6803cbe4 fetch 7 ,mem_24g_txbuf + 1 
+0179 6803cbe6 fetch 7 ,mem_24g_txbuf + 1 
 017a 207a0000 rtn blank 
 017b 20207fe7 branch enable_user 
 
 p_g24_accumulate_mouse_data:
-017c 20400399 call p_mouse_data_xy_release 
-017d 704c7300 jam 0 ,mem_24g_abort_pac 
+017c 2040038a call p_mouse_data_xy_release 
+017d 704c7500 jam 0 ,mem_24g_abort_pac 
 017e 1a20fe01 add rega ,1 ,pdata 
-017f 6000cc47 store 1 ,mem_24g_datalen 
+017f 6000cc49 store 1 ,mem_24g_datalen 
 0180 20400121 call p_g24_transmit_rf_ctrl_clear 
-0181 6000cbe3 store 1 ,mem_24g_txbuf 
+0181 6000cbe5 store 1 ,mem_24g_txbuf 
 0182 e8a88000 ifetcht 1 ,contw 
 0183 ea408000 ifetch 1 ,regb 
 0184 9841fe00 ior temp ,pdata 
@@ -514,7 +514,7 @@
 0187 ea420000 ifetch 4 ,regb 
 0188 e0a20000 istore 4 ,contw 
 0189 1a40a404 increase 4 ,regb 
-018a d8a04be9 arg mem_24g_txbuf + 6 ,contw 
+018a d8a04beb arg mem_24g_txbuf + 6 ,contw 
 018b df200002 arg 2 ,loopcnt 
 
 p_g24_accumulation_loop:
@@ -527,7 +527,7 @@
 0192 20600000 rtn 
 
 p_g24_transmit_packet:
-0193 704c5000 jam 0 ,mem_24g_retry 
+0193 704c5200 jam 0 ,mem_24g_retry 
 
 p_g24_transmit_loop:
 0194 d9600d00 arg param_rx_setup ,timeup 
@@ -537,33 +537,33 @@
 0198 243781b5 nbranch p_g24_retransmit ,user3 
 0199 204001a7 call p_g24_txbuf_clear 
 019a 204001d0 call p_g24_ackpayload_parse 
-019b 20400702 call power_ctrl_pac_succ_incrs 
+019b 204006f7 call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
-019c 6800cc46 fetch 1 ,mem_24g_pid 
+019c 6800cc48 fetch 1 ,mem_24g_pid 
 019d 1fe0fe01 increase 1 ,pdata 
-019e 6000cc46 store 1 ,mem_24g_pid 
+019e 6000cc48 store 1 ,mem_24g_pid 
 019f 2040012a call p_g24_hop_enable_packet 
-01a0 6800cc57 fetch 1 ,mem_24g_pairing_sm 
+01a0 6800cc59 fetch 1 ,mem_24g_pairing_sm 
 01a1 c0ff81ee bne state_24g_pairing_success ,p_g24_paring_mode_start 
 01a2 20400142 call p_g24_transmit_succ_rf_config 
 
 p_g24_transmit_abandon:
 01a3 58000000 setarg 0 
-01a4 60024c4c store 4 ,mem_24g_ensure 
-01a5 6000cd7b store 1 ,mem_24g_hop_pac_retry 
+01a4 60024c4e store 4 ,mem_24g_ensure 
+01a5 6000cd7d store 1 ,mem_24g_hop_pac_retry 
 01a6 20600000 rtn 
 
 p_g24_txbuf_clear:
 01a7 df200004 arg 4 ,loopcnt 
-01a8 d8a04be3 arg mem_24g_txbuf ,contw 
+01a8 d8a04be5 arg mem_24g_txbuf ,contw 
 01a9 20207ec6 branch memset0 
 
 p_g24_transmit_receive_ack:
 01aa 7857fc00 disable user3 
 01ab 20400265 call p_g24_transmit 
 01ac 18002a00 force 0 ,radio_ctrl 
-01ad 68024c6f fetch 4 ,mem_24g_addr 
+01ad 68024c71 fetch 4 ,mem_24g_addr 
 01ae 98001200 iforce access 
 01af 68088017 fetcht 1 ,mem_last_freq 
 01b0 2040291f call set_freq_rx 
@@ -573,36 +573,36 @@
 01b4 20600000 rtn 
 
 p_g24_retransmit:
-01b5 68014c4d fetch 2 ,mem_24g_txfail_cnt 
+01b5 68014c4f fetch 2 ,mem_24g_txfail_cnt 
 01b6 1fe0fe01 increase 1 ,pdata 
-01b7 60014c4d store 2 ,mem_24g_txfail_cnt 
-01b8 6800cc4e fetch 1 ,mem_24g_txfail_cnt + 1 
+01b7 60014c4f store 2 ,mem_24g_txfail_cnt 
+01b8 6800cc50 fetch 1 ,mem_24g_txfail_cnt + 1 
 01b9 c2822dd4 bbit1 4 ,g24_stop_24g_mode 
-01ba 6800cc57 fetch 1 ,mem_24g_pairing_sm 
+01ba 6800cc59 fetch 1 ,mem_24g_pairing_sm 
 01bb c0ff81be bne state_24g_pairing_success ,p_g24_tx_paring_retry 
 01bc 204001c6 call p_g24_tx_hop_ch_process 
 01bd 20200194 branch p_g24_transmit_loop 
 
 p_g24_tx_paring_retry:
-01be 6800cc4d fetch 1 ,mem_24g_txfail_cnt 
+01be 6800cc4f fetch 1 ,mem_24g_txfail_cnt 
 01bf c1ff8000 rtnne 0xff 
 
 p_g24_tx_attempt_fail:
 01c0 58000000 setarg 0 
-01c1 60014c4d store 2 ,mem_24g_txfail_cnt 
+01c1 60014c4f store 2 ,mem_24g_txfail_cnt 
 01c2 20202dd4 branch g24_stop_24g_mode 
 
 p_g24_tx_fast_hop:
-01c3 20400733 call power_ctrl_txpower_incrs 
-01c4 20400706 call power_ctrl_pac_succ_decrs 
+01c3 20400728 call power_ctrl_txpower_incrs 
+01c4 204006fb call power_ctrl_pac_succ_decrs 
 01c5 2020015e branch p_g24_ch 
 
 p_g24_tx_hop_ch_process:
-01c6 6800cc50 fetch 1 ,mem_24g_retry 
+01c6 6800cc52 fetch 1 ,mem_24g_retry 
 01c7 1fe67c0b sub pdata ,11 ,null 
 01c8 242101c3 nbranch p_g24_tx_fast_hop ,positive 
 01c9 1fe0fe01 increase 1 ,pdata 
-01ca 6000cc50 store 1 ,mem_24g_retry 
+01ca 6000cc52 store 1 ,mem_24g_retry 
 01cb c0010125 beq 2 ,p_g24_hop_ch_enable 
 01cc c003012c beq 6 ,p_g24_hop_ch_disable 
 01cd c0040125 beq 8 ,p_g24_hop_ch_enable 
@@ -611,64 +611,64 @@
 
 p_g24_ackpayload_parse:
 01d0 204001fd call p_g24_read_len_pid_crc 
-01d1 6800cc45 fetch 1 ,mem_24g_rxdata_length 
+01d1 6800cc47 fetch 1 ,mem_24g_rxdata_length 
 01d2 207a0000 rtn blank 
 01d3 98007200 iforce loopcnt 
-01d4 d8c04bc3 arg mem_24g_rxbuf + 2 ,contr 
-01d5 d8a04c25 arg mem_24g_rxpayload ,contw 
+01d4 d8c04bc5 arg mem_24g_rxbuf + 2 ,contr 
+01d5 d8a04c27 arg mem_24g_rxpayload ,contw 
 01d6 20207f01 branch memcpy 
 
 p_g24_pair_init:
 01d7 7041de04 jam tx_power_f5db ,mem_tx_power 
-01d8 704c4600 jam 0 ,mem_24g_pid 
-01d9 704c514e jam g24_pair_ch ,mem_24g_ch 
-01da 68024c53 fetch 4 ,mem_24g_paring_addr 
+01d8 704c4800 jam 0 ,mem_24g_pid 
+01d9 704c534e jam g24_pair_ch ,mem_24g_ch 
+01da 68024c55 fetch 4 ,mem_24g_paring_addr 
 
 p_g24_update_addr_and_synccrc8:
-01db 60024c6f store 4 ,mem_24g_addr 
+01db 60024c71 store 4 ,mem_24g_addr 
 
 p_g24_syncword_crc8:
 01dc da200000 arg 0 ,rega 
 01dd df200004 arg 4 ,loopcnt 
-01de d8c04c6f arg mem_24g_addr ,contr 
+01de d8c04c71 arg mem_24g_addr ,contr 
 
 p_g24_syncword_crc8_loop:
 01df e8c08000 ifetch 1 ,contr 
 01e0 9a20a200 iadd rega ,rega 
 01e1 c20001df loop p_g24_syncword_crc8_loop 
 01e2 1a227e00 copy rega ,pdata 
-01e3 60014cf8 store 2 ,mem_24g_syncword 
-01e4 6800ccf8 fetch 1 ,mem_24g_syncword 
-01e5 6808ccf9 fetcht 1 ,mem_24g_syncword + 1 
+01e3 60014cfa store 2 ,mem_24g_syncword 
+01e4 6800ccfa fetch 1 ,mem_24g_syncword 
+01e5 6808ccfb fetcht 1 ,mem_24g_syncword + 1 
 01e6 9840fe00 iadd temp ,pdata 
-01e7 6000ccfa store 1 ,mem_24g_syncword_crc8 
+01e7 6000ccfc store 1 ,mem_24g_syncword_crc8 
 01e8 20600000 rtn 
 
 p_g24_start_pairing_sm1:
 01e9 204001d7 call p_g24_pair_init 
 
 p_g24_set_pairing_sm_1:
-01ea 704c5701 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
+01ea 704c5901 jam state_24g_pairing_1 ,mem_24g_pairing_sm 
 01eb 20600000 rtn 
 
 p_g24_pairing_sm:
 01ec 7011c690 jam zcode_90 ,mem_zcode_temp_param0 
-01ed 20200770 branch p_zcode_entrance 
+01ed 20200765 branch p_zcode_entrance 
 
 p_g24_paring_mode_start:
-01ee 204006ff call power_ctrl_pac_succ_cnt_init 
+01ee 204006f4 call power_ctrl_pac_succ_cnt_init 
 
 p_g24_paring_mode:
 01ef 7011c691 jam zcode_91 ,mem_zcode_temp_param0 
-01f0 20200770 branch p_zcode_entrance 
+01f0 20200765 branch p_zcode_entrance 
 
 p_g24_start_24g_mode:
 01f1 7011c640 jam zcode_40 ,mem_zcode_temp_param0 
-01f2 20200770 branch p_zcode_entrance 
+01f2 20200765 branch p_zcode_entrance 
 
 p_g24_check_51cmd_stop_24g:
 01f3 793f8026 set0 mark_24g ,mark 
-01f4 704d9b00 jam state_24g_stop ,mem_24g_conn_sm 
+01f4 704d9d00 jam state_24g_stop ,mem_24g_conn_sm 
 01f5 204053ce call le_disable 
 
 p_mouse_disable_g24_pairing_flag:
@@ -676,45 +676,45 @@
 01f7 202043d2 branch mouse_disable_function_flag 
 
 p_g24_put_data_in_buff:
-01f8 6008cc47 storet 1 ,mem_24g_datalen 
+01f8 6008cc49 storet 1 ,mem_24g_datalen 
 01f9 18427200 copy temp ,loopcnt 
-01fa d8a04be3 arg mem_24g_txbuf ,contw 
+01fa d8a04be5 arg mem_24g_txbuf ,contw 
 01fb 1a220c00 copy rega ,contr 
 01fc 20207f01 branch memcpy 
 
 p_g24_read_len_pid_crc:
-01fd 6800cbc2 fetch 1 ,mem_24g_rxbuf + 1 
+01fd 6800cbc4 fetch 1 ,mem_24g_rxbuf + 1 
 01fe 1fe97e00 rshift3 pdata ,pdata 
-01ff 6000cc45 store 1 ,mem_24g_rxdata_length 
+01ff 6000cc47 store 1 ,mem_24g_rxdata_length 
 0200 1fe0fe01 increase 1 ,pdata 
-0201 d8c04bc2 arg mem_24g_rxbuf + 1 ,contr 
+0201 d8c04bc4 arg mem_24g_rxbuf + 1 ,contr 
 0202 98c08c00 iadd contr ,contr 
 0203 e8c18000 ifetch 3 ,contr 
-0204 6001cc84 store 3 ,mem_24g_sta_crc 
-0205 6800cbc2 fetch 1 ,mem_24g_rxbuf + 1 
+0204 6001cc86 store 3 ,mem_24g_sta_crc 
+0205 6800cbc4 fetch 1 ,mem_24g_rxbuf + 1 
 0206 1fe37e00 rshift pdata ,pdata 
 0207 1fe17e03 and pdata ,0x03 ,pdata 
-0208 6000cc8a store 1 ,mem_24g_sta_pid 
+0208 6000cc8c store 1 ,mem_24g_sta_pid 
 0209 20600000 rtn 
 
 p_g24_transmit_prep:
-020a 6800cc47 fetch 1 ,mem_24g_datalen 
+020a 6800cc49 fetch 1 ,mem_24g_datalen 
 020b 1fe0fe02 increase 2 ,pdata 
-020c 6000cc49 store 1 ,mem_24g_txlen 
-020d 6800cc48 fetch 1 ,mem_24g_data_type 
-020e 6000cc03 store 1 ,mem_24g_txpayload 
-020f 6800cc47 fetch 1 ,mem_24g_datalen 
+020c 6000cc4b store 1 ,mem_24g_txlen 
+020d 6800cc4a fetch 1 ,mem_24g_data_type 
+020e 6000cc05 store 1 ,mem_24g_txpayload 
+020f 6800cc49 fetch 1 ,mem_24g_datalen 
 0210 1fe9fe00 lshift3 pdata ,pdata 
-0211 6808cc46 fetcht 1 ,mem_24g_pid 
+0211 6808cc48 fetcht 1 ,mem_24g_pid 
 0212 18410403 and temp ,0x03 ,temp 
 0213 18438400 lshift temp ,temp 
 0214 9841fe00 ior temp ,pdata 
-0215 6808cc83 fetcht 1 ,mem_24g_no_ack 
+0215 6808cc85 fetcht 1 ,mem_24g_no_ack 
 0216 9840fe00 iadd temp ,pdata 
 0217 e0a08000 istore 1 ,contw 
-0218 6800cc47 fetch 1 ,mem_24g_datalen 
+0218 6800cc49 fetch 1 ,mem_24g_datalen 
 0219 98007200 iforce loopcnt 
-021a d8c04be3 arg mem_24g_txbuf ,contr 
+021a d8c04be5 arg mem_24g_txbuf ,contr 
 021b 20207f01 branch memcpy 
 
 p_g24_prep:
@@ -722,7 +722,7 @@
 021d 7843fc00 disable enable_white 
 021e 58555555 setarg 0x555555 
 021f 98001e00 iforce crc24_init 
-0220 6800cc51 fetch 1 ,mem_24g_ch 
+0220 6800cc53 fetch 1 ,mem_24g_ch 
 0221 1fed8400 reverse pdata ,temp 
 0222 79200401 set1 1 ,temp 
 0223 18431c00 rshift temp ,white_init 
@@ -735,7 +735,7 @@
 0228 7830fc00 enable is_rx 
 0229 78507c00 disable is_tx 
 022a 78287c00 enable swfine 
-022b 68014c4a fetch 2 ,mem_24g_rx_window 
+022b 68014c4c fetch 2 ,mem_24g_rx_window 
 022c 98003600 iforce stop_watch 
 022d 37c18400 correlate null ,timeout 
 022e 242c025e nbranch p_g24_sync_timeout ,sync 
@@ -744,14 +744,14 @@
 0231 7823fc00 enable enable_white 
 0232 7824fc00 enable enable_crc 
 0233 2040025b call p_g24_receive_byte 
-0234 6000ccfb store 1 ,mem_24g_get_syncword_crc8 
-0235 6808ccfa fetcht 1 ,mem_24g_syncword_crc8 
+0234 6000ccfd store 1 ,mem_24g_get_syncword_crc8 
+0235 6808ccfc fetcht 1 ,mem_24g_syncword_crc8 
 0236 98467c00 isub temp ,null 
 0237 2422825e nbranch p_g24_end_of_packet ,zero 
 0238 2040025b call p_g24_receive_byte 
-0239 6000cbc1 store 1 ,mem_24g_rxbuf 
-023a 6800cbc1 fetch 1 ,mem_24g_rxbuf 
-023b 6808cc48 fetcht 1 ,mem_24g_data_type 
+0239 6000cbc3 store 1 ,mem_24g_rxbuf 
+023a 6800cbc3 fetch 1 ,mem_24g_rxbuf 
+023b 6808cc4a fetcht 1 ,mem_24g_data_type 
 023c a8400e00 icompare bits_data ,temp 
 023d 2420825e nbranch p_g24_end_of_packet ,true 
 
@@ -770,7 +770,7 @@
 p_g24rx_nopayload:
 0246 18a22200 copy contw ,rega 
 0247 2040025b call p_g24_receive_byte 
-0248 6000cd82 store 1 ,mem_rssi_hex_received 
+0248 6000cd84 store 1 ,mem_rssi_hex_received 
 0249 1a220a00 copy rega ,contw 
 024a 09800018 parse demod ,bucket ,24 
 024b 78287c00 enable swfine 
@@ -786,7 +786,7 @@
 0255 20402981 call rf_write_freq 
 0256 7846fc00 disable decode_fec0 
 0257 20402918 call set_sync_on 
-0258 6800cd82 fetch 1 ,mem_rssi_hex_received 
+0258 6800cd84 fetch 1 ,mem_rssi_hex_received 
 0259 2040006c call p_rssi_signal 
 025a 20600000 rtn 
 
@@ -805,12 +805,12 @@
 
 p_g24_set_freq_tx:
 0262 20402918 call set_sync_on 
-0263 6808cc51 fetcht 1 ,mem_24g_ch 
+0263 6808cc53 fetcht 1 ,mem_24g_ch 
 0264 20202933 branch set_freq_tx 
 
 p_g24_transmit:
 0265 204053c4 call le_enable 
-0266 68024c6f fetch 4 ,mem_24g_addr 
+0266 68024c71 fetch 4 ,mem_24g_addr 
 0267 98001200 iforce access 
 0268 2040021c call p_g24_prep 
 0269 20400262 call p_g24_set_freq_tx 
@@ -826,11 +826,11 @@
 0273 782dfc00 enable encode_fec1 
 0274 7823fc00 enable enable_white 
 0275 7824fc00 enable enable_crc 
-0276 6800ccfa fetch 1 ,mem_24g_syncword_crc8 
+0276 6800ccfc fetch 1 ,mem_24g_syncword_crc8 
 0277 08008608 inject mod ,8 
-0278 6800cc49 fetch 1 ,mem_24g_txlen 
+0278 6800cc4b fetch 1 ,mem_24g_txlen 
 0279 98007200 iforce loopcnt 
-027a d8c04c03 arg mem_24g_txpayload ,contr 
+027a d8c04c05 arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
 027b e8c08000 ifetch 1 ,contr 
@@ -847,19 +847,19 @@
 
 p_g24_timer_check:
 0286 20407fe9 call disable_user 
-0287 680a4c68 fetcht 4 ,mem_24g_tx_btclk 
+0287 680a4c6a fetcht 4 ,mem_24g_tx_btclk 
 0288 1c427e00 copy clkn_bt ,pdata 
 0289 98467c00 isub temp ,null 
 028a 24412d18 ncall g24_timer_timeout ,positive 
 028b 1fe22400 copy pdata ,regb 
-028c 68024c68 fetch 4 ,mem_24g_tx_btclk 
-028d 6808cc6c fetcht 1 ,mem_24g_interval 
+028c 68024c6a fetch 4 ,mem_24g_tx_btclk 
+028d 6808cc6e fetcht 1 ,mem_24g_interval 
 028e 98408400 iadd temp ,temp 
 028f 1a427e00 copy regb ,pdata 
 0290 98467c00 isub temp ,null 
 0291 24610000 nrtn positive 
 0292 793ffe1c set0 28 ,pdata 
-0293 60024c68 store 4 ,mem_24g_tx_btclk 
+0293 60024c6a store 4 ,mem_24g_tx_btclk 
 0294 20207fe7 branch enable_user 
 
 p_rssi_average:
@@ -885,7 +885,7 @@
 
 p_mouse_before_lpm:
 02a6 c6130000 rtnmark1 mark_24g 
-02a7 20400383 call p_mouse_le_txbuff_save 
+02a7 20400374 call p_mouse_le_txbuff_save 
 02a8 204000ea call p_mouse_setgpio_lpm 
 02a9 6800c040 fetch 1 ,mem_context 
 02aa c30002ad bbit0 state_inconn ,p_clear_wake 
@@ -900,75 +900,75 @@
 p_mouse_set_sdio_high:
 02b0 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
 02b1 207a0000 rtn blank 
-02b2 20200512 branch p_mouse_seting_sensor_type 
+02b2 20200507 branch p_mouse_seting_sensor_type 
 
 p_device_init:
 02b3 2040296c call initialize_radio 
 02b4 20403416 call app_lpm_mult_enable 
 02b5 204074b9 call enable_authrom 
-02b6 20358333 branch p_mouse_spi_init ,wake 
+02b6 20358324 branch p_mouse_spi_init ,wake 
 
 p_device_wake_from_power:
 02b7 20400001 call p_wake_from_power 
-02b8 20407fa1 call ice_break 
 
 p_mouse_start:
-02b9 6800c241 fetch 1 ,mem_power_on_flag 
-02ba c28102bd bbit1 2 ,p_mouse_wakeup_from_hibernate 
-02bb 704b76ff jam latest_mode_null ,mem_mouse_latest_mode 
-02bc 20200377 branch p_mouse_start_24g_pair 
+02b8 6800c241 fetch 1 ,mem_power_on_flag 
+02b9 c28102be bbit1 2 ,p_mouse_wakeup_from_hibernate 
+02ba 6800cb76 fetch 1 ,mem_mouse_latest_mode 
+02bb c00101f1 beq latest_mode_24g ,p_g24_start_24g_mode 
+02bc 704b76ff jam latest_mode_null ,mem_mouse_latest_mode 
+02bd 20200368 branch p_mouse_start_24g_pair 
 
 p_mouse_wakeup_from_hibernate:
-02bd 20400355 call p_mouse_load_flash_device_info 
-02be 6800cb76 fetch 1 ,mem_mouse_latest_mode 
-02bf c00082c3 beq latest_mode_bt ,p_mouse_check_reconn_target 
-02c0 c00101f1 beq latest_mode_24g ,p_g24_start_24g_mode 
-02c1 704b770a jam ble_poweron_reconn_timer ,mem_mouse_poweron_bt_start_reconn_timer 
-02c2 20600000 rtn 
+02be 20400346 call p_mouse_load_flash_device_info 
+02bf 6800cb76 fetch 1 ,mem_mouse_latest_mode 
+02c0 c00082c4 beq latest_mode_bt ,p_mouse_check_reconn_target 
+02c1 c00101f1 beq latest_mode_24g ,p_g24_start_24g_mode 
+02c2 704b770a jam ble_poweron_reconn_timer ,mem_mouse_poweron_bt_start_reconn_timer 
+02c3 20600000 rtn 
 
 p_mouse_check_reconn_target:
-02c3 704d9201 jam 1 ,mem_24g_stop_g24_mode 
-02c4 204002cc call p_mouse_tx_power_init 
-02c5 6800c210 fetch 1 ,mem_xrecord_mode 
-02c6 c01982cf beq rec_3_mode ,p_mouse3_0_check_reconn_target 
-02c7 c01a02d2 beq rec_4_mode ,p_mouse4_0_check_reconn_target 
-02c8 204004f9 call p_mouse_fast_conn_adv_switch_timer_reinit 
-02c9 70016d06 jam 6 ,mem_connection_options 
-02ca 2040049b call p_mouse_check_fast_conn_adv_start 
-02cb 20207ddd branch check_51cmd_start_discovery 
+02c4 704d9401 jam 1 ,mem_24g_stop_g24_mode 
+02c5 204002cd call p_mouse_tx_power_init 
+02c6 6800c210 fetch 1 ,mem_xrecord_mode 
+02c7 c01982d0 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
+02c8 c01a02d3 beq rec_4_mode ,p_mouse4_0_check_reconn_target 
+02c9 204004ee call p_mouse_fast_conn_adv_switch_timer_reinit 
+02ca 70016d06 jam 6 ,mem_connection_options 
+02cb 2040048d call p_mouse_check_fast_conn_adv_start 
+02cc 20207ddd branch check_51cmd_start_discovery 
 
 p_mouse_tx_power_init:
-02cc 6800ccfe fetch 1 ,mem_tx_power_temp 
-02cd 6000c1de store 1 ,mem_tx_power 
-02ce 20600000 rtn 
+02cd 6800cd00 fetch 1 ,mem_tx_power_temp 
+02ce 6000c1de store 1 ,mem_tx_power 
+02cf 20600000 rtn 
 
 p_mouse3_0_check_reconn_target:
-02cf 680341d0 fetch 6 ,mem_hci_plap 
-02d0 203a33eb branch app_bt_start_discovery_short ,blank 
-02d1 20204274 branch mouse3_0_check_reconn_target + 3 
+02d0 680341d0 fetch 6 ,mem_hci_plap 
+02d1 203a33eb branch app_bt_start_discovery_short ,blank 
+02d2 20204274 branch mouse3_0_check_reconn_target + 3 
 
 p_mouse4_0_check_reconn_target:
-02d2 7011c612 jam zcode_12 ,mem_zcode_temp_param0 
-02d3 20200770 branch p_zcode_entrance 
+02d3 7011c612 jam zcode_12 ,mem_zcode_temp_param0 
+02d4 20200765 branch p_zcode_entrance 
 
 p_mouse_init_sunt:
-02d4 20400333 call p_mouse_spi_init 
-02d5 204040c0 call mouse_spi_sdio_gpio_pollup 
+02d5 20400324 call p_mouse_spi_init 
+02d6 204040c0 call mouse_spi_sdio_gpio_pollup 
 
 p_mouse_init_sensor:
-02d6 204040d9 call mouse_read_sensor_id 
-02d7 c01802dc beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-02d8 c0188301 beq p3065_id1 ,p_mouse_p3065_init_param 
-02d9 204040d1 call mouse_twspi_reset 
-02da 200003e8 nop 1000 
-02db 202002d6 branch p_mouse_init_sensor 
+02d7 204040d9 call mouse_read_sensor_id 
+02d8 c01802dd beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+02d9 c01882f2 beq p3065_id1 ,p_mouse_p3065_init_param 
+02da 204040d1 call mouse_twspi_reset 
+02db 200003e8 nop 1000 
+02dc 202002d7 branch p_mouse_init_sensor 
 
 p_mouse_init_p32xx_id2_judge:
-02dc 2040039f call p_mouse_sensor_poweron 
-02dd 6800c6de fetch 1 ,mem_sensor_id2 
-02de c02d02e2 beq p_mx8650 ,p_mouse_mx8650_init_param 
-02df c02a02ef beq pka8_id2 ,p_mouse_ka8_init_param 
-02e0 c06c02f2 beq p8009_id2 ,p_mouse_8009_init_param 
+02dd 20400390 call p_mouse_sensor_poweron 
+02de 6800c6de fetch 1 ,mem_sensor_id2 
+02df c02d02e2 beq p_mx8650 ,p_mouse_mx8650_init_param 
+02e0 c02a02ef beq pka8_id2 ,p_mouse_ka8_init_param 
 02e1 202040e0 branch mouse_init_p32xx_id2_judge 
 
 p_mouse_mx8650_init_param:
@@ -993,1854 +993,1843 @@
 02f0 da604b94 arg mem_sensor_ka8_init ,regc 
 02f1 202002e7 branch p_sensor_wr_seq 
 
-p_mouse_8009_init_param:
-02f2 58000016 setarg 0x16 
-02f3 20406414 call twspi_read 
-02f4 1fe67cbd sub pdata ,0xbd ,null 
-02f5 242282d6 nbranch p_mouse_init_sensor ,zero 
-02f6 58000019 setarg 0x19 
-02f7 20406414 call twspi_read 
-02f8 1fe67c55 sub pdata ,0x55 ,null 
-02f9 242282d6 nbranch p_mouse_init_sensor ,zero 
-02fa 5800001b setarg 0x1b 
-02fb 20406414 call twspi_read 
-02fc 1fe67c1d sub pdata ,0x1d ,null 
-02fd 242282d6 nbranch p_mouse_init_sensor ,zero 
-02fe 7046e008 jam p8009 ,mem_config_sensor_type 
-02ff da604ba2 arg mem_sensor_8009_init ,regc 
-0300 202002e7 branch p_sensor_wr_seq 
-
 p_mouse_p3065_init_param:
-0301 2040039f call p_mouse_sensor_poweron 
-0302 6800c6de fetch 1 ,mem_sensor_id2 
-0303 c03840e8 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
-0304 7046e001 jam p3065 ,mem_config_sensor_type 
-0305 20600000 rtn 
+02f2 20400390 call p_mouse_sensor_poweron 
+02f3 6800c6de fetch 1 ,mem_sensor_id2 
+02f4 c03840e8 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+02f5 7046e001 jam p3065 ,mem_config_sensor_type 
+02f6 20600000 rtn 
 
 p_mouse_setting_config:
-0306 7011c680 jam zcode_80 ,mem_zcode_temp_param0 
-0307 20200770 branch p_zcode_entrance 
+02f7 7011c680 jam zcode_80 ,mem_zcode_temp_param0 
+02f8 20200765 branch p_zcode_entrance 
 
 p_flash_ncs_disable:
-0308 6808cb45 fetcht 1 ,mem_flash_ncs_gpio 
-0309 20206825 branch gpio_out_inactive 
+02f9 6808cb45 fetcht 1 ,mem_flash_ncs_gpio 
+02fa 20206825 branch gpio_out_inactive 
 
 p_spid_init_flash:
-030a 70808640 jam 0x40 ,core_spid_ctrl 
-030b 70808700 jam 0x0 ,core_spid_delay 
-030c 68108081 hfetch 1 ,core_gpio_sel1 
-030d 793ffe00 set0 0 ,pdata 
-030e 793ffe01 set0 1 ,pdata 
-030f 79207e03 set1 3 ,pdata 
-0310 793ffe04 set0 4 ,pdata 
-0311 60108081 hstore 1 ,core_gpio_sel1 
-0312 58000000 setarg 0 
-0313 600201f5 store 4 ,mem_spid_tbuf 
-0314 6810807f hfetch 1 ,core_gpio_pd3 
-0315 793ffe00 set0 0 ,pdata 
-0316 6010807f hstore 1 ,core_gpio_pd3 
-0317 20600000 rtn 
+02fb 70808640 jam 0x40 ,core_spid_ctrl 
+02fc 70808700 jam 0x0 ,core_spid_delay 
+02fd 68108081 hfetch 1 ,core_gpio_sel1 
+02fe 793ffe00 set0 0 ,pdata 
+02ff 793ffe01 set0 1 ,pdata 
+0300 79207e03 set1 3 ,pdata 
+0301 793ffe04 set0 4 ,pdata 
+0302 60108081 hstore 1 ,core_gpio_sel1 
+0303 58000000 setarg 0 
+0304 600201f5 store 4 ,mem_spid_tbuf 
+0305 6810807f hfetch 1 ,core_gpio_pd3 
+0306 793ffe00 set0 0 ,pdata 
+0307 6010807f hstore 1 ,core_gpio_pd3 
+0308 20600000 rtn 
 
 p_mouse_load_flash_info_check:
-0318 20400364 call p_flash_release_deep_power_down 
-0319 20404423 call mouse_load_flash_flag 
-031a 68014778 fetch 2 ,mem_store_flag 
-031b d840aa55 arg eeprom_init_flag ,temp 
-031c 98467c00 isub temp ,null 
-031d 20228355 branch p_mouse_load_flash_device_info ,zero 
-031e 60094778 storet 2 ,mem_store_flag 
-031f 2040441c call mouse_ble_init_address 
-0320 6800c6e1 fetch 1 ,mem_config_sensor_motion 
-0321 6000c77a store 1 ,mem_mouse_dpi 
-0322 68024b4c fetch 4 ,mem_mouse_24g_addr_init 
-0323 6002477b store 4 ,mem_mouse_24g_addr 
-0324 60024c6f store 4 ,mem_24g_addr 
+0309 20400355 call p_flash_release_deep_power_down 
+030a 20404423 call mouse_load_flash_flag 
+030b 68014778 fetch 2 ,mem_store_flag 
+030c d840aa55 arg eeprom_init_flag ,temp 
+030d 98467c00 isub temp ,null 
+030e 20228346 branch p_mouse_load_flash_device_info ,zero 
+030f 60094778 storet 2 ,mem_store_flag 
+0310 2040441c call mouse_ble_init_address 
+0311 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+0312 6000c77a store 1 ,mem_mouse_dpi 
+0313 68024b4c fetch 4 ,mem_mouse_24g_addr_init 
+0314 6002477b store 4 ,mem_mouse_24g_addr 
+0315 60024c71 store 4 ,mem_24g_addr 
 
 p_mouse_store_flash_device_info:
-0325 20400364 call p_flash_release_deep_power_down 
-0326 20400335 call p_flash_erase_sector 
-0327 2040034c call p_mouse_information_flash_parameters 
-0328 20400341 call p_spid_write_flash 
-0329 20400338 call p_wait_flash_done 
+0316 20400355 call p_flash_release_deep_power_down 
+0317 20400326 call p_flash_erase_sector 
+0318 2040033d call p_mouse_information_flash_parameters 
+0319 20400332 call p_spid_write_flash 
+031a 20400329 call p_wait_flash_done 
 
 p_mouse_store_flash_user_data:
-032a 2040030a call p_spid_init_flash 
-032b d8400007 arg 7 ,temp 
-032c da204b70 arg mem_mouse_flash_start_temp ,rega 
-032d da40005f arg mouse_user_data_offect ,regb 
-032e 6801c700 fetch 3 ,mem_flash_base 
-032f 9a40fe00 iadd regb ,pdata 
-0330 20400341 call p_spid_write_flash 
-0331 20400338 call p_wait_flash_done 
-0332 2040035c call p_flash_deep_power_down 
+031b 204002fb call p_spid_init_flash 
+031c d8400007 arg 7 ,temp 
+031d da204b70 arg mem_mouse_flash_start_temp ,rega 
+031e da40005f arg mouse_user_data_offect ,regb 
+031f 6801c700 fetch 3 ,mem_flash_base 
+0320 9a40fe00 iadd regb ,pdata 
+0321 20400332 call p_spid_write_flash 
+0322 20400329 call p_wait_flash_done 
+0323 2040034d call p_flash_deep_power_down 
 
 p_mouse_spi_init:
-0333 70421276 jam 0x76 ,mem_spi_init_clk 
-0334 20203d36 branch mouse_spi_init 
+0324 70421276 jam 0x76 ,mem_spi_init_clk 
+0325 20203d36 branch mouse_spi_init 
 
 p_flash_erase_sector:
-0335 6801c700 fetch 3 ,mem_flash_base 
-0336 6001c232 store 3 ,mem_spi_write_addr 
-0337 2040652a call flash_erase_sector + 2 
+0326 6801c700 fetch 3 ,mem_flash_base 
+0327 6001c232 store 3 ,mem_spi_write_addr 
+0328 2040652a call flash_erase_sector + 2 
 
 p_wait_flash_done:
-0338 580186a0 setarg 100000 
-0339 20402a8f call sleep 
-033a 2040650b call spid_unlock_flash 
-033b 580001fa setarg mem_spid_rbuf 
-033c 6011008c hstore 2 ,core_spid_rxaddr 
-033d 58000005 setarg flash_read_satus 
-033e 204064f3 call spid_read_reg 
-033f c2800338 bbit1 flash_status_wip ,p_wait_flash_done 
-0340 20600000 rtn 
+0329 580186a0 setarg 100000 
+032a 20402a8f call sleep 
+032b 2040650b call spid_unlock_flash 
+032c 580001fa setarg mem_spid_rbuf 
+032d 6011008c hstore 2 ,core_spid_rxaddr 
+032e 58000005 setarg flash_read_satus 
+032f 204064f3 call spid_read_reg 
+0330 c2800329 bbit1 flash_status_wip ,p_wait_flash_done 
+0331 20600000 rtn 
 
 p_spid_write_flash:
-0341 1fe22600 copy pdata ,regc 
-0342 1a227e00 copy rega ,pdata 
-0343 1fe0fffc increase -4 ,pdata 
-0344 1fe22400 copy pdata ,regb 
-0345 ea420000 ifetch 4 ,regb 
-0346 60024b47 store 4 ,mem_write_flash_head_temp 
-0347 1a627e00 copy regc ,pdata 
-0348 20406552 call spid_write_flash 
-0349 68024b47 fetch 4 ,mem_write_flash_head_temp 
-034a e2420000 istore 4 ,regb 
-034b 20600000 rtn 
+0332 1fe22600 copy pdata ,regc 
+0333 1a227e00 copy rega ,pdata 
+0334 1fe0fffc increase -4 ,pdata 
+0335 1fe22400 copy pdata ,regb 
+0336 ea420000 ifetch 4 ,regb 
+0337 60024b47 store 4 ,mem_write_flash_head_temp 
+0338 1a627e00 copy regc ,pdata 
+0339 20406552 call spid_write_flash 
+033a 68024b47 fetch 4 ,mem_write_flash_head_temp 
+033b e2420000 istore 4 ,regb 
+033c 20600000 rtn 
 
 p_mouse_information_flash_parameters:
-034c 5800477f setarg mem_mouse_information_end 
-034d d8404720 arg mem_mouse_information_start ,temp 
-034e 98460400 isub temp ,temp 
-034f 6801c700 fetch 3 ,mem_flash_base 
-0350 da204720 arg mem_mouse_information_start ,rega 
-0351 20600000 rtn 
+033d 5800477f setarg mem_mouse_information_end 
+033e d8404720 arg mem_mouse_information_start ,temp 
+033f 98460400 isub temp ,temp 
+0340 6801c700 fetch 3 ,mem_flash_base 
+0341 da204720 arg mem_mouse_information_start ,rega 
+0342 20600000 rtn 
 
 p_mouse_read_flash:
-0352 20400364 call p_flash_release_deep_power_down 
-0353 2040034c call p_mouse_information_flash_parameters 
-0354 20206562 branch spid_read_flash 
+0343 20400355 call p_flash_release_deep_power_down 
+0344 2040033d call p_mouse_information_flash_parameters 
+0345 20206562 branch spid_read_flash 
 
 p_mouse_load_flash_device_info:
-0355 20400352 call p_mouse_read_flash 
-0356 2040036e call p_mouse_load_flash_user_data 
-0357 20404364 call mouse_select_btdevice 
-0358 2040431a call mouse_select_reconn_device 
-0359 6802477b fetch 4 ,mem_mouse_24g_addr 
-035a 60024c6f store 4 ,mem_24g_addr 
-035b 20600000 rtn 
+0346 20400343 call p_mouse_read_flash 
+0347 2040035f call p_mouse_load_flash_user_data 
+0348 20404364 call mouse_select_btdevice 
+0349 2040431a call mouse_select_reconn_device 
+034a 6802477b fetch 4 ,mem_mouse_24g_addr 
+034b 60024c71 store 4 ,mem_24g_addr 
+034c 20600000 rtn 
 
 p_flash_deep_power_down:
-035c 700aa2b9 jam flash_command_deep_power_down ,mem_temp 
+034d 700aa2b9 jam flash_command_deep_power_down ,mem_temp 
 
 p_spid_write_flash_cmd:
-035d 2040030a call p_spid_init_flash 
-035e 204069ac call delay_nop100 
-035f 2040650b call spid_unlock_flash 
-0360 da204b47 arg mem_write_flash_head_temp ,rega 
-0361 68088aa2 fetcht 1 ,mem_temp 
-0362 20406556 call spid_write_flash_common 
-0363 202069ac branch delay_nop100 
+034e 204002fb call p_spid_init_flash 
+034f 204069ac call delay_nop100 
+0350 2040650b call spid_unlock_flash 
+0351 da204b47 arg mem_write_flash_head_temp ,rega 
+0352 68088aa2 fetcht 1 ,mem_temp 
+0353 20406556 call spid_write_flash_common 
+0354 202069ac branch delay_nop100 
 
 p_flash_release_deep_power_down:
-0364 700aa2ab jam flash_command_release_deep_power_down ,mem_temp 
-0365 2020035d branch p_spid_write_flash_cmd 
+0355 700aa2ab jam flash_command_release_deep_power_down ,mem_temp 
+0356 2020034e branch p_spid_write_flash_cmd 
 
 p_mouse_fast_conn_disable:
-0366 704b755a jam 0x5a ,mem_mouse_fast_conn_flag 
-0367 20600000 rtn 
+0357 704b755a jam 0x5a ,mem_mouse_fast_conn_flag 
+0358 20600000 rtn 
 
 p_mouse_fast_conn_le_switch_adv:
-0368 704b6901 jam 1 ,mem_le_switch_adv_timer 
-0369 704b6801 jam 1 ,mem_le_switch_adv_flag 
+0359 704b6901 jam 1 ,mem_le_switch_adv_timer 
+035a 704b6801 jam 1 ,mem_le_switch_adv_flag 
 
 p_mouse_fast_conn_init:
-036a 704b75ff jam 0xff ,mem_mouse_fast_conn_flag 
-036b 68034d8c fetch 6 ,mem_24g_allpowerful_addr 
-036c 600344a0 store 6 ,mem_le_lap 
-036d 20600000 rtn 
+035b 704b75ff jam 0xff ,mem_mouse_fast_conn_flag 
+035c 68034d8e fetch 6 ,mem_24g_allpowerful_addr 
+035d 600344a0 store 6 ,mem_le_lap 
+035e 20600000 rtn 
 
 p_mouse_load_flash_user_data:
-036e 20400364 call p_flash_release_deep_power_down 
-036f d8400007 arg 7 ,temp 
-0370 da204b70 arg mem_mouse_flash_start_temp ,rega 
-0371 da40005f arg mouse_user_data_offect ,regb 
-0372 6801c700 fetch 3 ,mem_flash_base 
-0373 9a40fe00 iadd regb ,pdata 
-0374 20206562 branch spid_read_flash 
+035f 20400355 call p_flash_release_deep_power_down 
+0360 d8400007 arg 7 ,temp 
+0361 da204b70 arg mem_mouse_flash_start_temp ,rega 
+0362 da40005f arg mouse_user_data_offect ,regb 
+0363 6801c700 fetch 3 ,mem_flash_base 
+0364 9a40fe00 iadd regb ,pdata 
+0365 20206562 branch spid_read_flash 
 
 p_mouse_start_24g_mode:
-0375 6800c241 fetch 1 ,mem_power_on_flag 
-0376 c28101f1 bbit1 2 ,p_g24_start_24g_mode 
+0366 6800c241 fetch 1 ,mem_power_on_flag 
+0367 c28101f1 bbit1 2 ,p_g24_start_24g_mode 
 
 p_mouse_start_24g_pair:
-0377 68024b4c fetch 4 ,mem_mouse_24g_addr_init 
-0378 60024c6f store 4 ,mem_24g_addr 
-0379 20400325 call p_mouse_store_flash_device_info 
+0368 68024b4c fetch 4 ,mem_mouse_24g_addr_init 
+0369 60024c71 store 4 ,mem_24g_addr 
+036a 20400316 call p_mouse_store_flash_device_info 
 
 p_g24_auto_pair_start:
-037a 7011c641 jam zcode_41 ,mem_zcode_temp_param0 
-037b 20200770 branch p_zcode_entrance 
+036b 7011c641 jam zcode_41 ,mem_zcode_temp_param0 
+036c 20200765 branch p_zcode_entrance 
 
 p_mouse_g24_package_data:
-037c 20404401 call mouse_g24_package_data 
-037d 6801469f fetch 2 ,mem_mouse_z 
-037e 207a0000 rtn blank 
+036d 20404401 call mouse_g24_package_data 
+036e 6801469f fetch 2 ,mem_mouse_z 
+036f 207a0000 rtn blank 
 
 p_g24_transmit_by_interrupt_enable:
-037f 704d8701 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
-0380 58000000 setarg 0 
-0381 60014d88 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0382 20600000 rtn 
+0370 704d8901 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+0371 58000000 setarg 0 
+0372 60014d8a store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0373 20600000 rtn 
 
 p_mouse_le_txbuff_save:
-0383 d8c01800 arg mem_le_tx_buffer0 ,contr 
-0384 d8a0480a arg mem_le_tx_buffer0_omemalloc ,contw 
-0385 2040038b call p_mouse_le_txbuff_copy 
-0386 d8c01900 arg mem_le_tx_buffer1 ,contr 
-0387 2040038b call p_mouse_le_txbuff_copy 
-0388 d8c01a00 arg mem_le_tx_buffer2 ,contr 
-0389 2040038b call p_mouse_le_txbuff_copy 
-038a d8c01b00 arg mem_le_tx_buffer3 ,contr 
+0374 d8c01800 arg mem_le_tx_buffer0 ,contr 
+0375 d8a0480a arg mem_le_tx_buffer0_omemalloc ,contw 
+0376 2040037c call p_mouse_le_txbuff_copy 
+0377 d8c01900 arg mem_le_tx_buffer1 ,contr 
+0378 2040037c call p_mouse_le_txbuff_copy 
+0379 d8c01a00 arg mem_le_tx_buffer2 ,contr 
+037a 2040037c call p_mouse_le_txbuff_copy 
+037b d8c01b00 arg mem_le_tx_buffer3 ,contr 
 
 p_mouse_le_txbuff_copy:
-038b df20001b arg 27 ,loopcnt 
-038c 20207f01 branch memcpy 
+037c df20001b arg 27 ,loopcnt 
+037d 20207f01 branch memcpy 
 
 p_mouse_le_txbuff_load:
-038d d8c0480a arg mem_le_tx_buffer0_omemalloc ,contr 
-038e d8a01800 arg mem_le_tx_buffer0 ,contw 
-038f 2040038b call p_mouse_le_txbuff_copy 
-0390 d8a01900 arg mem_le_tx_buffer1 ,contw 
-0391 2040038b call p_mouse_le_txbuff_copy 
-0392 d8a01a00 arg mem_le_tx_buffer2 ,contw 
-0393 2040038b call p_mouse_le_txbuff_copy 
-0394 d8a01b00 arg mem_le_tx_buffer3 ,contw 
-0395 2020038b branch p_mouse_le_txbuff_copy 
+037e d8c0480a arg mem_le_tx_buffer0_omemalloc ,contr 
+037f d8a01800 arg mem_le_tx_buffer0 ,contw 
+0380 2040037c call p_mouse_le_txbuff_copy 
+0381 d8a01900 arg mem_le_tx_buffer1 ,contw 
+0382 2040037c call p_mouse_le_txbuff_copy 
+0383 d8a01a00 arg mem_le_tx_buffer2 ,contw 
+0384 2040037c call p_mouse_le_txbuff_copy 
+0385 d8a01b00 arg mem_le_tx_buffer3 ,contw 
+0386 2020037c branch p_mouse_le_txbuff_copy 
 
 p_mouse_le_current_mult_update:
-0396 70417200 jam 0 ,mem_lpm_mult 
-0397 704b431e jam 30 ,mem_mouse_le_current_mult_timer 
-0398 20600000 rtn 
+0387 70417200 jam 0 ,mem_lpm_mult 
+0388 704b431e jam 30 ,mem_mouse_le_current_mult_timer 
+0389 20600000 rtn 
 
 p_mouse_data_xy_release:
-0399 6800cb42 fetch 1 ,mem_mouse_long_mult_flag 
-039a c1808000 rtnne 1 
-039b 58000000 setarg 0 
-039c 6000cb42 store 1 ,mem_mouse_long_mult_flag 
-039d 6002469b store 4 ,mem_mouse_x 
-039e 202003d8 branch p_mouse_init_sensor_reset 
+038a 6800cb42 fetch 1 ,mem_mouse_long_mult_flag 
+038b c1808000 rtnne 1 
+038c 58000000 setarg 0 
+038d 6000cb42 store 1 ,mem_mouse_long_mult_flag 
+038e 6002469b store 4 ,mem_mouse_x 
+038f 202003c9 branch p_mouse_init_sensor_reset 
 
 p_mouse_sensor_poweron:
-039f 20400333 call p_mouse_spi_init 
-03a0 da604bb2 arg mem_sensor_poweron_init ,regc 
-03a1 204002e7 call p_sensor_wr_seq 
+0390 20400324 call p_mouse_spi_init 
+0391 da604bb2 arg mem_sensor_poweron_init ,regc 
+0392 204002e7 call p_sensor_wr_seq 
 
 p_mouse_dpi_config:
-03a2 6800c77a fetch 1 ,mem_mouse_dpi 
-03a3 c0ff8512 bne 0xff ,p_mouse_seting_dpi 
+0393 6800c77a fetch 1 ,mem_mouse_dpi 
+0394 c0ff8507 bne 0xff ,p_mouse_seting_dpi 
 
 p_mouse_dpi_config_default:
-03a4 6800c6e1 fetch 1 ,mem_config_sensor_motion 
-03a5 6000c77a store 1 ,mem_mouse_dpi 
-03a6 20200512 branch p_mouse_seting_dpi 
+0395 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+0396 6000c77a store 1 ,mem_mouse_dpi 
+0397 20200507 branch p_mouse_seting_dpi 
 
 p_mouse_le:
-03a7 20405892 call le_fifo_check_nearly_full 
-03a8 247a0000 nrtn blank 
-03a9 6800cb75 fetch 1 ,mem_mouse_fast_conn_flag 
-03aa c07f83ae beq 0xff ,p_mouse_le_next 
-03ab 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-03ac 1fe17e03 and pdata ,0x03 ,pdata 
-03ad c1818000 rtnne 0x03 
+0398 20405892 call le_fifo_check_nearly_full 
+0399 247a0000 nrtn blank 
+039a 6800cb75 fetch 1 ,mem_mouse_fast_conn_flag 
+039b c07f839f beq 0xff ,p_mouse_le_next 
+039c 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+039d 1fe17e03 and pdata ,0x03 ,pdata 
+039e c1818000 rtnne 0x03 
 
 p_mouse_le_next:
-03ae 6800c79e fetch 1 ,mem_mouse_clear_sensor_data_flag 
-03af 205a03d6 call p_mouse_clear_sensor_data ,blank 
-03b0 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-03b1 c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-03b2 20403f97 call mouse_motion 
-03b3 24740000 nrtn user 
-03b4 20400396 call p_mouse_le_current_mult_update 
-03b5 20400399 call p_mouse_data_xy_release 
-03b6 204003d1 call p_mouse_wheel_trigger 
+039f 6800c79e fetch 1 ,mem_mouse_clear_sensor_data_flag 
+03a0 205a03c7 call p_mouse_clear_sensor_data ,blank 
+03a1 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+03a2 c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+03a3 20403f97 call mouse_motion 
+03a4 24740000 nrtn user 
+03a5 20400387 call p_mouse_le_current_mult_update 
+03a6 2040038a call p_mouse_data_xy_release 
+03a7 204003c2 call p_mouse_wheel_trigger 
 
 p_mouse_data_push:
-03b7 da20469a arg mem_mouse_key ,rega 
-03b8 20407e3d call queue_push 
-03b9 205403c0 call p_mouse_queue_increase ,user 
-03ba 20600000 rtn 
+03a8 da20469a arg mem_mouse_key ,rega 
+03a9 20407e3d call queue_push 
+03aa 205403b1 call p_mouse_queue_increase ,user 
+03ab 20600000 rtn 
 
 p_mouse_data_init:
-03bb 7047a207 jam 7 ,mem_mouse_data_queue 
-03bc 7047a304 jam 4 ,mem_mouse_data_queue + 1 
-03bd 580047a2 setarg mem_mouse_data_queue 
-03be 60014218 store 2 ,mem_queue_ptr 
-03bf 20207e38 branch queue_init 
+03ac 7047a207 jam 7 ,mem_mouse_data_queue 
+03ad 7047a304 jam 4 ,mem_mouse_data_queue + 1 
+03ae 580047a2 setarg mem_mouse_data_queue 
+03af 60014218 store 2 ,mem_queue_ptr 
+03b0 20207e38 branch queue_init 
 
 p_mouse_queue_increase:
-03c0 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
-03c1 1fe0fe01 increase 1 ,pdata 
-03c2 6000c7c3 store 1 ,mem_mouse_data_queue_num 
-03c3 20600000 rtn 
+03b1 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+03b2 1fe0fe01 increase 1 ,pdata 
+03b3 6000c7c3 store 1 ,mem_mouse_data_queue_num 
+03b4 20600000 rtn 
 
 p_mouse_data_pull:
-03c4 da20469a arg mem_mouse_key ,rega 
-03c5 20407e54 call queue_pop 
-03c6 203403c8 branch p_mouse_fill_data_le ,user 
-03c7 20600000 rtn 
+03b5 da20469a arg mem_mouse_key ,rega 
+03b6 20407e54 call queue_pop 
+03b7 203403b9 branch p_mouse_fill_data_le ,user 
+03b8 20600000 rtn 
 
 p_mouse_fill_data_le:
-03c8 20405652 call le_clear_md 
-03c9 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
-03ca 1fe67c01 sub pdata ,1 ,null 
-03cb 24415650 ncall le_set_md ,positive 
-03cc 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
-03cd 207a0000 rtn blank 
-03ce 1fe0ffff increase -1 ,pdata 
-03cf 6000c7c3 store 1 ,mem_mouse_data_queue_num 
-03d0 20203f90 branch mouse_fill_data_le 
+03b9 20405652 call le_clear_md 
+03ba 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+03bb 1fe67c01 sub pdata ,1 ,null 
+03bc 24415650 ncall le_set_md ,positive 
+03bd 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+03be 207a0000 rtn blank 
+03bf 1fe0ffff increase -1 ,pdata 
+03c0 6000c7c3 store 1 ,mem_mouse_data_queue_num 
+03c1 20203f90 branch mouse_fill_data_le 
 
 p_mouse_wheel_trigger:
-03d1 6801469f fetch 2 ,mem_mouse_z 
-03d2 207a0000 rtn blank 
-03d3 70480601 jam 1 ,mem_mouse_wheel_trigger 
-03d4 7048070a jam 10 ,mem_mouse_wheel_trigger_timer 
-03d5 20600000 rtn 
+03c2 6801469f fetch 2 ,mem_mouse_z 
+03c3 207a0000 rtn blank 
+03c4 70480601 jam 1 ,mem_mouse_wheel_trigger 
+03c5 7048070a jam 10 ,mem_mouse_wheel_trigger_timer 
+03c6 20600000 rtn 
 
 p_mouse_clear_sensor_data:
-03d6 70479e01 jam 1 ,mem_mouse_clear_sensor_data_flag 
-03d7 20405814 call le_set_config_more_data 
+03c7 70479e01 jam 1 ,mem_mouse_clear_sensor_data_flag 
+03c8 20405814 call le_set_config_more_data 
 
 p_mouse_init_sensor_reset:
-03d8 704afe01 jam 1 ,mem_mouse_init_sensor_reset_flag 
-03d9 202002d4 branch p_mouse_init_sunt 
+03c9 704afe01 jam 1 ,mem_mouse_init_sensor_reset_flag 
+03ca 202002d5 branch p_mouse_init_sunt 
 
 p_mouse_bt:
-03da 20770000 rtn attempt 
-03db 6800c1e2 fetch 1 ,mem_app_handshake_flag 
-03dc 207a0000 rtn blank 
-03dd 20405271 call l2cap_malloc_is_fifo_nearly_full 
-03de 247a0000 nrtn blank 
-03df 6800c79e fetch 1 ,mem_mouse_clear_sensor_data_flag 
-03e0 205a03d6 call p_mouse_clear_sensor_data ,blank 
-03e1 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-03e2 c282bf8a bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
-03e3 c284bf8a bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
-03e4 20403f97 call mouse_motion 
-03e5 24740000 nrtn user 
-03e6 20400396 call p_mouse_le_current_mult_update 
-03e7 20400399 call p_mouse_data_xy_release 
-03e8 204003d1 call p_mouse_wheel_trigger 
-03e9 6800cb03 fetch 1 ,mem_mouse_bt_boot_mode 
-03ea c00083ee beq 1 ,p_mouse_send_data_boot_mode 
-03eb 6800cb0a fetch 1 ,mem_mouse_bt_send_first_package_flag 
-03ec 207a0000 rtn blank 
-03ed 20203f81 branch mouse_send_data 
+03cb 20770000 rtn attempt 
+03cc 6800c1e2 fetch 1 ,mem_app_handshake_flag 
+03cd 207a0000 rtn blank 
+03ce 20405271 call l2cap_malloc_is_fifo_nearly_full 
+03cf 247a0000 nrtn blank 
+03d0 6800c79e fetch 1 ,mem_mouse_clear_sensor_data_flag 
+03d1 205a03c7 call p_mouse_clear_sensor_data ,blank 
+03d2 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+03d3 c282bf8a bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+03d4 c284bf8a bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+03d5 20403f97 call mouse_motion 
+03d6 24740000 nrtn user 
+03d7 20400387 call p_mouse_le_current_mult_update 
+03d8 2040038a call p_mouse_data_xy_release 
+03d9 204003c2 call p_mouse_wheel_trigger 
+03da 6800cb03 fetch 1 ,mem_mouse_bt_boot_mode 
+03db c00083df beq 1 ,p_mouse_send_data_boot_mode 
+03dc 6800cb0a fetch 1 ,mem_mouse_bt_send_first_package_flag 
+03dd 207a0000 rtn blank 
+03de 20203f81 branch mouse_send_data 
 
 p_mouse_send_data_boot_mode:
-03ee 6800c69a fetch 1 ,mem_mouse_key 
-03ef 6000cb04 store 1 ,mem_mouse_bt_boot_data 
-03f0 6800c69b fetch 1 ,mem_mouse_x 
-03f1 e0a08000 istore 1 ,contw 
-03f2 6800c69d fetch 1 ,mem_mouse_y 
-03f3 e0a08000 istore 1 ,contw 
-03f4 6801469f fetch 2 ,mem_mouse_z 
-03f5 e0a10000 istore 2 ,contw 
-03f6 da200007 arg 7 ,rega 
-03f7 20404d63 call hid_malloc_tx_buff 
-03f8 6801424e fetch 2 ,mem_hid_int_remote_cid 
-03f9 e0a10000 istore 2 ,contw 
-03fa 580002a1 setarg 0x02a1 
-03fb e0a10000 istore 2 ,contw 
-03fc 6802cb04 fetch 5 ,mem_mouse_bt_boot_data 
-03fd e0a28000 istore 5 ,contw 
-03fe 20600000 rtn 
+03df 6800c69a fetch 1 ,mem_mouse_key 
+03e0 6000cb04 store 1 ,mem_mouse_bt_boot_data 
+03e1 6800c69b fetch 1 ,mem_mouse_x 
+03e2 e0a08000 istore 1 ,contw 
+03e3 6800c69d fetch 1 ,mem_mouse_y 
+03e4 e0a08000 istore 1 ,contw 
+03e5 6801469f fetch 2 ,mem_mouse_z 
+03e6 e0a10000 istore 2 ,contw 
+03e7 da200007 arg 7 ,rega 
+03e8 20404d63 call hid_malloc_tx_buff 
+03e9 6801424e fetch 2 ,mem_hid_int_remote_cid 
+03ea e0a10000 istore 2 ,contw 
+03eb 580002a1 setarg 0x02a1 
+03ec e0a10000 istore 2 ,contw 
+03ed 6802cb04 fetch 5 ,mem_mouse_bt_boot_data 
+03ee e0a28000 istore 5 ,contw 
+03ef 20600000 rtn 
 
 p_mouse_idle:
-03ff 20407e34 call ui_check_paring_button 
-0400 20400402 call p_mouse_dpi_check 
-0401 20203ee0 branch mouse_wheel_check 
+03f0 20407e34 call ui_check_paring_button 
+03f1 204003f3 call p_mouse_dpi_check 
+03f2 20203ee0 branch mouse_wheel_check 
 
 p_mouse_dpi_check:
-0402 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
-0403 2040056c call p_gpio_set_input_pd 
-0404 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
-0405 2040681d call gpio_get_bit 
-0406 20208410 branch p_mouse_dpi_up ,true 
-0407 20400567 call p_gpio_set_input_pu 
+03f3 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+03f4 20400561 call p_gpio_set_input_pd 
+03f5 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+03f6 2040681d call gpio_get_bit 
+03f7 20208401 branch p_mouse_dpi_up ,true 
+03f8 2040055c call p_gpio_set_input_pu 
 
 p_mouse_dpi_down:
-0408 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
-0409 c1000000 rtneq dpi_button_state_down 
-040a 7046b600 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
-040b 6800c77a fetch 1 ,mem_mouse_dpi 
-040c 1fe0fe01 increase 1 ,pdata 
-040d 1fe17e03 and pdata ,0x03 ,pdata 
-040e 6000c77a store 1 ,mem_mouse_dpi 
-040f 20203d7e branch mouse_seting_dpi 
+03f9 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+03fa c1000000 rtneq dpi_button_state_down 
+03fb 7046b600 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+03fc 6800c77a fetch 1 ,mem_mouse_dpi 
+03fd 1fe0fe01 increase 1 ,pdata 
+03fe 1fe17e03 and pdata ,0x03 ,pdata 
+03ff 6000c77a store 1 ,mem_mouse_dpi 
+0400 20203d7e branch mouse_seting_dpi 
 
 p_mouse_dpi_up:
-0410 20400567 call p_gpio_set_input_pu 
-0411 20203d62 branch mouse_dpi_up 
+0401 2040055c call p_gpio_set_input_pu 
+0402 20203d62 branch mouse_dpi_up 
 
 p_mouse_priority_bb_event:
-0412 1a627e00 copy regc ,pdata 
-0413 c00a0423 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-0414 c00a8437 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-0415 c014843a beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
-0416 c019043c beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-0417 c020043e beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-0418 c0020440 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
-0419 c0098440 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
-041a c00cb3df beq bt_evt_switch_not_accept ,app_bt_role_switch 
-041b c0108444 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
-041c c0008446 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
-041d c0010452 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
-041e c0158455 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
-041f c01c8457 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-0420 c01d045b beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-0421 c01e045e beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-0422 2020417d branch mouse_priority_bb_event + 1 
+0403 1a627e00 copy regc ,pdata 
+0404 c00a0414 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0405 c00a8428 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0406 c014842b beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+0407 c019042d beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0408 c020042f beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0409 c0020431 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+040a c0098431 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+040b c00cb3df beq bt_evt_switch_not_accept ,app_bt_role_switch 
+040c c0108435 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+040d c0008437 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+040e c0010443 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+040f c0158446 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+0410 c01c8448 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0411 c01d044c beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0412 c01e044f beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0413 2020417d branch mouse_priority_bb_event + 1 
 
 p_mouse_le_bb_event_connected:
-0423 204003d8 call p_mouse_init_sensor_reset 
-0424 204041c3 call mouse_le_bb_event_connected 
-0425 58000000 setarg 0 
-0426 6001cb68 store 3 ,mem_le_switch_adv_flag 
-0427 68034b4c fetch 6 ,mem_mouse_24g_addr_init 
-0428 680b4722 fetcht 6 ,mem_device1_addr 
-0429 98467c00 isub temp ,null 
-042a 24428366 ncall p_mouse_fast_conn_disable ,zero 
-042b 20403410 call app_ble_store_reconn_info 
-042c 704b7601 jam latest_mode_bt ,mem_mouse_latest_mode 
-042d 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
-042e 243a0430 nbranch p_mouse_le_bb_event_connected_next ,blank 
-042f 704b6d14 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
+0414 204003c9 call p_mouse_init_sensor_reset 
+0415 204041c3 call mouse_le_bb_event_connected 
+0416 58000000 setarg 0 
+0417 6001cb68 store 3 ,mem_le_switch_adv_flag 
+0418 68034b4c fetch 6 ,mem_mouse_24g_addr_init 
+0419 680b4722 fetcht 6 ,mem_device1_addr 
+041a 98467c00 isub temp ,null 
+041b 24428357 ncall p_mouse_fast_conn_disable ,zero 
+041c 20403410 call app_ble_store_reconn_info 
+041d 704b7601 jam latest_mode_bt ,mem_mouse_latest_mode 
+041e 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
+041f 243a0421 nbranch p_mouse_le_bb_event_connected_next ,blank 
+0420 704b6d14 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
 
 p_mouse_le_bb_event_connected_next:
-0430 704b7700 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
-0431 704b6c00 jam 0 ,mem_mouse_le_adv_start 
-0432 704b6f01 jam 1 ,mem_mouse_le_bb_connected_flag 
-0433 704b7800 jam 0 ,mem_mouse_le_not_tx_disconn 
-0434 704b6b00 jam 0 ,mem_mouse_start_discovery_enable 
-0435 204001f3 call p_g24_check_51cmd_stop_24g 
-0436 202003bb branch p_mouse_data_init 
+0421 704b7700 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
+0422 704b6c00 jam 0 ,mem_mouse_le_adv_start 
+0423 704b6f01 jam 1 ,mem_mouse_le_bb_connected_flag 
+0424 704b7800 jam 0 ,mem_mouse_le_not_tx_disconn 
+0425 704b6b00 jam 0 ,mem_mouse_start_discovery_enable 
+0426 204001f3 call p_g24_check_51cmd_stop_24g 
+0427 202003ac branch p_mouse_data_init 
 
 p_mouse_le_bb_disconnected:
-0437 20400464 call p_mouse_sensor_powerdown_check 
-0438 7011c6a2 jam zcode_a2 ,mem_zcode_temp_param0 
-0439 20200770 branch p_zcode_entrance 
+0428 20400455 call p_mouse_sensor_powerdown_check 
+0429 7011c6a2 jam zcode_a2 ,mem_zcode_temp_param0 
+042a 20200765 branch p_zcode_entrance 
 
 p_mouse_le_enc_info:
 
 p_app_updata_le_param:
-043a 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-043b 20207d8f branch ui_ipc_send_cmd 
+042b 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+042c 20207d8f branch ui_ipc_send_cmd 
 
 p_mouse_le_ll_start_encryt:
-043c 7011c6b3 jam zcode_b3 ,mem_zcode_temp_param0 
-043d 20200770 branch p_zcode_entrance 
+042d 7011c6b3 jam zcode_b3 ,mem_zcode_temp_param0 
+042e 20200765 branch p_zcode_entrance 
 
 p_mouse_le_conn_param_update_rsp_recieved:
-043e 7011c6a1 jam zcode_a1 ,mem_zcode_temp_param0 
-043f 20200770 branch p_zcode_entrance 
+042f 7011c6a1 jam zcode_a1 ,mem_zcode_temp_param0 
+0430 20200765 branch p_zcode_entrance 
 
 p_mouse_bb_event_reconn_timeout:
 
 p_mouse_bb_event_reconn_failed:
-0440 7011c6a3 jam zcode_a3 ,mem_zcode_temp_param0 
-0441 20200770 branch p_zcode_entrance 
+0431 7011c6a3 jam zcode_a3 ,mem_zcode_temp_param0 
+0432 20200765 branch p_zcode_entrance 
 
 p_mouse_irtual_cable_unplug:
-0442 7011c670 jam zcode_70 ,mem_zcode_temp_param0 
-0443 20200770 branch p_zcode_entrance 
+0433 7011c670 jam zcode_70 ,mem_zcode_temp_param0 
+0434 20200765 branch p_zcode_entrance 
 
 p_mouse_sniff_not_accept:
-0444 7011c6b1 jam zcode_b1 ,mem_zcode_temp_param0 
-0445 20200770 branch p_zcode_entrance 
+0435 7011c6b1 jam zcode_b1 ,mem_zcode_temp_param0 
+0436 20200765 branch p_zcode_entrance 
 
 p_mouse_bb_event_connected:
-0446 20400499 call p_mouse_store_eeprom_enable 
-0447 204003d8 call p_mouse_init_sensor_reset 
-0448 58000000 setarg 0 
-0449 6001cb68 store 3 ,mem_le_switch_adv_flag 
-044a 704b7601 jam latest_mode_bt ,mem_mouse_latest_mode 
-044b 704b7700 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
-044c 704b7800 jam 0 ,mem_mouse_le_not_tx_disconn 
-044d 704b6b00 jam 0 ,mem_mouse_start_discovery_enable 
-044e 204001f3 call p_g24_check_51cmd_stop_24g 
-044f 20400503 call p_mouse_null_enter_hibernate_disable 
-0450 70480900 jam 0 ,mem_mouse_send_switch_req_timer 
-0451 202042ca branch mouse_stop_discovery 
+0437 2040048b call p_mouse_store_eeprom_enable 
+0438 204003c9 call p_mouse_init_sensor_reset 
+0439 58000000 setarg 0 
+043a 6001cb68 store 3 ,mem_le_switch_adv_flag 
+043b 704b7601 jam latest_mode_bt ,mem_mouse_latest_mode 
+043c 704b7700 jam 0 ,mem_mouse_poweron_bt_start_reconn_timer 
+043d 704b7800 jam 0 ,mem_mouse_le_not_tx_disconn 
+043e 704b6b00 jam 0 ,mem_mouse_start_discovery_enable 
+043f 204001f3 call p_g24_check_51cmd_stop_24g 
+0440 204004f8 call p_mouse_null_enter_hibernate_disable 
+0441 70480900 jam 0 ,mem_mouse_send_switch_req_timer 
+0442 202042ca branch mouse_stop_discovery 
 
 p_mouse_bb_event_disconnected:
-0452 20400464 call p_mouse_sensor_powerdown_check 
-0453 7011c6b4 jam zcode_b4 ,mem_zcode_temp_param0 
-0454 20200770 branch p_zcode_entrance 
+0443 20400455 call p_mouse_sensor_powerdown_check 
+0444 7011c6b4 jam zcode_b4 ,mem_zcode_temp_param0 
+0445 20200765 branch p_zcode_entrance 
 
 p_mouse_enter_sniff_check:
-0455 7011c6b2 jam zcode_b2 ,mem_zcode_temp_param0 
-0456 20200770 branch p_zcode_entrance 
+0446 7011c6b2 jam zcode_b2 ,mem_zcode_temp_param0 
+0447 20200765 branch p_zcode_entrance 
 
 p_mouse_24g_pairing_complete:
-0457 2040037f call p_g24_transmit_by_interrupt_enable 
-0458 204003d8 call p_mouse_init_sensor_reset 
-0459 7011c650 jam zcode_50 ,mem_zcode_temp_param0 
-045a 20200770 branch p_zcode_entrance 
+0448 20400370 call p_g24_transmit_by_interrupt_enable 
+0449 204003c9 call p_mouse_init_sensor_reset 
+044a 7011c650 jam zcode_50 ,mem_zcode_temp_param0 
+044b 20200765 branch p_zcode_entrance 
 
 p_mouse_24g_attempt_fail:
-045b 20400464 call p_mouse_sensor_powerdown_check 
-045c 7011c651 jam zcode_51 ,mem_zcode_temp_param0 
-045d 20200770 branch p_zcode_entrance 
+044c 20400455 call p_mouse_sensor_powerdown_check 
+044d 7011c651 jam zcode_51 ,mem_zcode_temp_param0 
+044e 20200765 branch p_zcode_entrance 
 
 p_mouse_24g_attempt_success:
-045e 204003d8 call p_mouse_init_sensor_reset 
-045f 7011c652 jam zcode_52 ,mem_zcode_temp_param0 
-0460 20200770 branch p_zcode_entrance 
+044f 204003c9 call p_mouse_init_sensor_reset 
+0450 7011c652 jam zcode_52 ,mem_zcode_temp_param0 
+0451 20200765 branch p_zcode_entrance 
 
 p_mouse_before_hibernate:
-0461 20400464 call p_mouse_sensor_powerdown_check 
-0462 7011c6a0 jam zcode_a0 ,mem_zcode_temp_param0 
-0463 20200770 branch p_zcode_entrance 
+0452 20400455 call p_mouse_sensor_powerdown_check 
+0453 7011c6a0 jam zcode_a0 ,mem_zcode_temp_param0 
+0454 20200765 branch p_zcode_entrance 
 
 p_mouse_sensor_powerdown_check:
-0464 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
-0465 207a0000 rtn blank 
-0466 704afe00 jam 0 ,mem_mouse_init_sensor_reset_flag 
+0455 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0456 207a0000 rtn blank 
+0457 704afe00 jam 0 ,mem_mouse_init_sensor_reset_flag 
 
 p_mouse_sensor_powerdown:
-0467 204002d4 call p_mouse_init_sunt 
-0468 58000006 setarg 0x06 
-0469 20406414 call twspi_read 
-046a 1fe1fe08 or pdata ,0x08 ,pdata 
-046b 1fed7e00 lshift8 pdata ,pdata 
-046c 1fe0fe06 add pdata ,0x06 ,pdata 
-046d 20206413 branch twspi_write 
+0458 204002d5 call p_mouse_init_sunt 
+0459 58000006 setarg 0x06 
+045a 20406414 call twspi_read 
+045b 1fe1fe08 or pdata ,0x08 ,pdata 
+045c 1fed7e00 lshift8 pdata ,pdata 
+045d 1fe0fe06 add pdata ,0x06 ,pdata 
+045e 20206413 branch twspi_write 
 
 p_mouse_bb_event_timer:
-046e 20400482 call p_mouse_le_switch_adv_timer 
-046f 20400506 call p_mouse_multi_led_blink_timer 
-0470 204004d2 call p_mouse_wheel_trigger_timer 
-0471 204004fc call p_mouse_null_enter_hibernate_timer 
-0472 204004d7 call p_mouse_bt_discovery_check 
-0473 20404234 call mouse_check_discovery_timeout_timer 
-0474 204004a0 call p_mouse_g24_long_sleep_param_update_timer 
-0475 204004a7 call p_mouse_g24_stop_mode_timeout_timer 
-0476 204004bb call p_mouse_check_direct_timeout_timer 
-0477 204004c1 call p_mouse_le_enable_att_list_timer 
-0478 204004c4 call p_le_send_smp_security_request_timer 
-0479 204004cc call p_mouse_le_current_mult_update_timer 
-047a 204004b3 call p_mouse_send_switch_req_timer 
-047b 20404231 call mouse_check_hid_handshake_timer 
-047c 204004b6 call p_mouse_bt_check_sniff_req_timeout_timer 
-047d 2040047f call p_mouse_poweron_bt_start_reconn_timer 
-047e 2020423a branch mouse_check_no_data_timeout_timer 
+045f 20400474 call p_mouse_le_switch_adv_timer 
+0460 204004fb call p_mouse_multi_led_blink_timer 
+0461 204004c7 call p_mouse_wheel_trigger_timer 
+0462 204004f1 call p_mouse_null_enter_hibernate_timer 
+0463 204004cc call p_mouse_bt_discovery_check 
+0464 20404234 call mouse_check_discovery_timeout_timer 
+0465 20400492 call p_mouse_g24_long_sleep_param_update_timer 
+0466 20400499 call p_mouse_g24_stop_mode_timeout_timer 
+0467 2040049c call p_mouse_g24_stop_pair_mode_timeout_timer 
+0468 204004b0 call p_mouse_check_direct_timeout_timer 
+0469 204004b6 call p_mouse_le_enable_att_list_timer 
+046a 204004b9 call p_le_send_smp_security_request_timer 
+046b 204004c1 call p_mouse_le_current_mult_update_timer 
+046c 204004a8 call p_mouse_send_switch_req_timer 
+046d 20404231 call mouse_check_hid_handshake_timer 
+046e 204004ab call p_mouse_bt_check_sniff_req_timeout_timer 
+046f 20400471 call p_mouse_poweron_bt_start_reconn_timer 
+0470 2020423a branch mouse_check_no_data_timeout_timer 
 
 p_mouse_poweron_bt_start_reconn_timer:
-047f da604b77 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
-0480 da4002c3 arg p_mouse_check_reconn_target ,regb 
-0481 2020336d branch timer_single_step 
+0471 da604b77 arg mem_mouse_poweron_bt_start_reconn_timer ,regc 
+0472 da4002c4 arg p_mouse_check_reconn_target ,regb 
+0473 2020336d branch timer_single_step 
 
 p_mouse_le_switch_adv_timer:
-0482 6800cb68 fetch 1 ,mem_le_switch_adv_flag 
-0483 207a0000 rtn blank 
-0484 da604b69 arg mem_le_switch_adv_timer ,regc 
-0485 da400487 arg p_mouse_le_switch_adv ,regb 
-0486 2020336d branch timer_single_step 
+0474 6800cb68 fetch 1 ,mem_le_switch_adv_flag 
+0475 207a0000 rtn blank 
+0476 da604b69 arg mem_le_switch_adv_timer ,regc 
+0477 da400479 arg p_mouse_le_switch_adv ,regb 
+0478 2020336d branch timer_single_step 
 
 p_mouse_le_switch_adv:
-0487 704b6901 jam 1 ,mem_le_switch_adv_timer 
-0488 6800cb6a fetch 1 ,mem_le_switch_adv_count 
-0489 1fe0fe01 increase 1 ,pdata 
-048a 1fe17e01 and_into 1 ,pdata 
-048b 6000cb6a store 1 ,mem_le_switch_adv_count 
-048c c000049b beq 0 ,p_mouse_check_fast_conn_adv_start1 
+0479 704b6901 jam 1 ,mem_le_switch_adv_timer 
+047a 6800cb6a fetch 1 ,mem_le_switch_adv_count 
+047b 1fe0fe01 increase 1 ,pdata 
+047c 1fe17e01 and_into 1 ,pdata 
+047d 6000cb6a store 1 ,mem_le_switch_adv_count 
+047e c000048d beq 0 ,p_mouse_check_fast_conn_adv_start1 
 
 p_check_51cmd_adv:
-048d 68034b62 fetch 6 ,mem_le_normal_lap 
-048e 600344a0 store 6 ,mem_le_lap 
-048f 20400491 call p_mouse_le_adv_data_update 
-0490 20207df4 branch check_51cmd_adv 
+047f 68034b62 fetch 6 ,mem_le_normal_lap 
+0480 600344a0 store 6 ,mem_le_lap 
+0481 20400483 call p_mouse_le_adv_data_update 
+0482 20207df4 branch check_51cmd_adv 
 
 p_mouse_le_adv_data_update:
-0491 70436f1f jam 0x1f ,mem_le_adv_data_len 
-0492 70438f1f jam 0x1f ,mem_le_scan_data_len 
-0493 20400499 call p_mouse_store_eeprom_enable 
-0494 d8c04b10 arg mem_le_adv_swift_pair ,contr 
+0483 70436f1f jam 0x1f ,mem_le_adv_data_len 
+0484 70438f1f jam 0x1f ,mem_le_scan_data_len 
+0485 2040048b call p_mouse_store_eeprom_enable 
+0486 d8c04b10 arg mem_le_adv_swift_pair ,contr 
 
 p_le_adv_data_update:
-0495 d8a0437b arg mem_le_adv_data + 11 ,contw 
-0496 df200013 arg 19 ,loopcnt 
-0497 20407f01 call memcpy 
-0498 202057b8 branch le_modified_name_adv 
+0487 d8a0437b arg mem_le_adv_data + 11 ,contw 
+0488 df200013 arg 19 ,loopcnt 
+0489 20407f01 call memcpy 
+048a 202057b8 branch le_modified_name_adv 
 
 p_mouse_store_eeprom_enable:
-0499 d8e00007 arg mouse_store_eeprom_flag ,queue 
-049a 202043ce branch mouse_enable_function_flag 
+048b d8e00007 arg mouse_store_eeprom_flag ,queue 
+048c 202043ce branch mouse_enable_function_flag 
 
 p_mouse_check_fast_conn_adv_start:
 
 p_mouse_check_fast_conn_adv_start1:
-049b 70436f00 jam 0 ,mem_le_adv_data_len 
-049c 70438f00 jam 0 ,mem_le_scan_data_len 
-049d d8e00007 arg mouse_store_eeprom_flag ,queue 
-049e 204043d2 call mouse_disable_function_flag 
-049f 2020036a branch p_mouse_fast_conn_init 
+048d 70436f00 jam 0 ,mem_le_adv_data_len 
+048e 70438f00 jam 0 ,mem_le_scan_data_len 
+048f d8e00007 arg mouse_store_eeprom_flag ,queue 
+0490 204043d2 call mouse_disable_function_flag 
+0491 2020035b branch p_mouse_fast_conn_init 
 
 p_mouse_g24_long_sleep_param_update_timer:
-04a0 da604b44 arg mem_24g_long_sleep_param_update_timer ,regc 
-04a1 da4004a3 arg p_mouse_g24_long_sleep_normal_param ,regb 
-04a2 2020336d branch timer_single_step 
+0492 da604b44 arg mem_24g_long_sleep_param_update_timer ,regc 
+0493 da400495 arg p_mouse_g24_long_sleep_normal_param ,regb 
+0494 2020336d branch timer_single_step 
 
 p_mouse_g24_long_sleep_normal_param:
-04a3 58124f80 setarg g24_long_sleep_step3 
-04a4 6001cc76 store 3 ,mem_24g_enter_hibernate 
+0495 58124f80 setarg g24_long_sleep_step3 
+0496 6001cc78 store 3 ,mem_24g_enter_hibernate 
 
 p_mouse_long_mult_flag_enable:
-04a5 704b4201 jam 1 ,mem_mouse_long_mult_flag 
-04a6 20600000 rtn 
+0497 704b4201 jam 1 ,mem_mouse_long_mult_flag 
+0498 20600000 rtn 
 
 p_mouse_g24_stop_mode_timeout_timer:
-04a7 da604d93 arg mem_24g_stop_g24_mode_timeout ,regc 
-04a8 da4004aa arg p_mouse_g24_stop_mode_timeout ,regb 
-04a9 20203374 branch timer_single_step_2b 
+0499 da604d95 arg mem_24g_stop_g24_mode_timeout ,regc 
+049a da40036b arg p_g24_auto_pair_start ,regb 
+049b 20203374 branch timer_single_step_2b 
+
+p_mouse_g24_stop_pair_mode_timeout_timer:
+049c da604bc1 arg mem_24g_stop_g24_pair_mode_timerout ,regc 
+049d da40049f arg p_mouse_g24_stop_mode_timeout ,regb 
+049e 20203374 branch timer_single_step_2b 
 
 p_mouse_g24_stop_mode_timeout:
-04aa 704d9201 jam 1 ,mem_24g_stop_g24_mode 
-04ab 6800cb68 fetch 1 ,mem_le_switch_adv_flag 
-04ac 243a04ae nbranch p_mouse_wait_g24_led_off ,blank 
-04ad 20600000 rtn 
+049f 704d9401 jam 1 ,mem_24g_stop_g24_mode 
+04a0 6800cb68 fetch 1 ,mem_le_switch_adv_flag 
+04a1 243a04a3 nbranch p_mouse_wait_g24_led_off ,blank 
+04a2 20600000 rtn 
 
 p_mouse_wait_g24_led_off:
-04ae 704d9301 jam 1 ,mem_24g_stop_g24_mode_timeout 
-04af 6800cb2f fetch 1 ,mem_mouse_multi_led_blink_poweron3s_flag 
-04b0 247a0000 nrtn blank 
-04b1 704d9300 jam 0 ,mem_24g_stop_g24_mode_timeout 
-04b2 20600000 rtn 
+04a3 704d9501 jam 1 ,mem_24g_stop_g24_mode_timeout 
+04a4 6800cb2f fetch 1 ,mem_mouse_multi_led_blink_poweron3s_flag 
+04a5 247a0000 nrtn blank 
+04a6 704d9500 jam 0 ,mem_24g_stop_g24_mode_timeout 
+04a7 20600000 rtn 
 
 p_mouse_send_switch_req_timer:
-04b3 da604809 arg mem_mouse_send_switch_req_timer ,regc 
-04b4 da40637a arg host_create_conn_resend ,regb 
-04b5 2020336d branch timer_single_step 
+04a8 da604809 arg mem_mouse_send_switch_req_timer ,regc 
+04a9 da40637a arg host_create_conn_resend ,regb 
+04aa 2020336d branch timer_single_step 
 
 p_mouse_bt_check_sniff_req_timeout_timer:
-04b6 da604b09 arg mem_mouse_bt_send_first_package_timer ,regc 
-04b7 da4004b9 arg p_mouse_bt_send_first_package ,regb 
-04b8 2020336d branch timer_single_step 
+04ab da604b09 arg mem_mouse_bt_send_first_package_timer ,regc 
+04ac da4004ae arg p_mouse_bt_send_first_package ,regb 
+04ad 2020336d branch timer_single_step 
 
 p_mouse_bt_send_first_package:
-04b9 704b0a01 jam 1 ,mem_mouse_bt_send_first_package_flag 
-04ba 20600000 rtn 
+04ae 704b0a01 jam 1 ,mem_mouse_bt_send_first_package_flag 
+04af 20600000 rtn 
 
 p_mouse_check_direct_timeout_timer:
-04bb da6046ae arg mem_mouse_direct_timer ,regc 
-04bc da4004be arg p_mouse_check_direct_timeout ,regb 
-04bd 20203374 branch timer_single_step_2b 
+04b0 da6046ae arg mem_mouse_direct_timer ,regc 
+04b1 da4004b3 arg p_mouse_check_direct_timeout ,regb 
+04b2 20203374 branch timer_single_step_2b 
 
 p_mouse_check_direct_timeout:
-04be 704b7801 jam 1 ,mem_mouse_le_not_tx_disconn 
-04bf 204004eb call p_mouse_long_button_bt_normal_discovery 
-04c0 202004e0 branch p_mouse_bt_discovery_button_up_init 
+04b3 704b7801 jam 1 ,mem_mouse_le_not_tx_disconn 
+04b4 204004e0 call p_mouse_long_button_bt_normal_discovery 
+04b5 202004d5 branch p_mouse_bt_discovery_button_up_init 
 
 p_mouse_le_enable_att_list_timer:
-04c1 da6046c6 arg mem_le_start_encrypt_timer ,regc 
-04c2 da403d60 arg mouse_le_write_enable ,regb 
-04c3 2020336d branch timer_single_step 
+04b6 da6046c6 arg mem_le_start_encrypt_timer ,regc 
+04b7 da403d60 arg mouse_le_write_enable ,regb 
+04b8 2020336d branch timer_single_step 
 
 p_le_send_smp_security_request_timer:
-04c4 6800cb6f fetch 1 ,mem_mouse_le_bb_connected_flag 
-04c5 207a0000 rtn blank 
-04c6 da604b6d arg mem_mouse_send_secutiry_request_timer ,regc 
-04c7 da4004c9 arg p_le_pairing_sm_start_check ,regb 
-04c8 2020336d branch timer_single_step 
+04b9 6800cb6f fetch 1 ,mem_mouse_le_bb_connected_flag 
+04ba 207a0000 rtn blank 
+04bb da604b6d arg mem_mouse_send_secutiry_request_timer ,regc 
+04bc da4004be arg p_le_pairing_sm_start_check ,regb 
+04bd 2020336d branch timer_single_step 
 
 p_le_pairing_sm_start_check:
-04c9 6800cb6e fetch 1 ,mem_le_send_security_request_flag 
-04ca 247a0000 nrtn blank 
-04cb 20205bf5 branch le_pairing_sm_start 
+04be 6800cb6e fetch 1 ,mem_le_send_security_request_flag 
+04bf 247a0000 nrtn blank 
+04c0 20205bf5 branch le_pairing_sm_start 
 
 p_mouse_le_current_mult_update_timer:
-04cc da604b43 arg mem_mouse_le_current_mult_timer ,regc 
-04cd da4004cf arg p_mouse_le_current_mult_reinit ,regb 
-04ce 2020336d branch timer_single_step 
+04c1 da604b43 arg mem_mouse_le_current_mult_timer ,regc 
+04c2 da4004c4 arg p_mouse_le_current_mult_reinit ,regb 
+04c3 2020336d branch timer_single_step 
 
 p_mouse_le_current_mult_reinit:
-04cf 6800c7c5 fetch 1 ,mem_lpm_mult_init 
-04d0 6000c172 store 1 ,mem_lpm_mult 
-04d1 202004a5 branch p_mouse_long_mult_flag_enable 
+04c4 6800c7c5 fetch 1 ,mem_lpm_mult_init 
+04c5 6000c172 store 1 ,mem_lpm_mult 
+04c6 20200497 branch p_mouse_long_mult_flag_enable 
 
 p_mouse_wheel_trigger_timer:
-04d2 da604807 arg mem_mouse_wheel_trigger_timer ,regc 
-04d3 da4004d5 arg p_mouse_wheel_trigger_disable ,regb 
-04d4 2020336d branch timer_single_step 
+04c7 da604807 arg mem_mouse_wheel_trigger_timer ,regc 
+04c8 da4004ca arg p_mouse_wheel_trigger_disable ,regb 
+04c9 2020336d branch timer_single_step 
 
 p_mouse_wheel_trigger_disable:
-04d5 70480600 jam 0 ,mem_mouse_wheel_trigger 
-04d6 20600000 rtn 
+04ca 70480600 jam 0 ,mem_mouse_wheel_trigger 
+04cb 20600000 rtn 
 
 p_mouse_bt_discovery_check:
 
 p_mouse_bt_discovery_commbination_key:
-04d7 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
-04d8 203a04e3 branch p_mouse_bt_discovery_commbination_key_down ,blank 
-04d9 20400546 call p_mouse_check_key_gpio 
-04da c00384e3 beq mouse_lmr_button ,p_mouse_bt_discovery_commbination_key_down 
+04cc 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+04cd 203a04d8 branch p_mouse_bt_discovery_commbination_key_down ,blank 
+04ce 2040053b call p_mouse_check_key_gpio 
+04cf c00384d8 beq mouse_lmr_button ,p_mouse_bt_discovery_commbination_key_down 
 
 p_mouse_bt_discovery_commbination_key_up:
-04db 6800c685 fetch 1 ,mem_ui_button_timeout 
-04dc 6000c6da store 1 ,mem_combination_ui_button_count 
-04dd 6800c6db fetch 1 ,mem_bt_discovey_button_statue 
-04de c1008000 rtneq dpi_button_state_up 
-04df 7046db01 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+04d0 6800c685 fetch 1 ,mem_ui_button_timeout 
+04d1 6000c6da store 1 ,mem_combination_ui_button_count 
+04d2 6800c6db fetch 1 ,mem_bt_discovey_button_statue 
+04d3 c1008000 rtneq dpi_button_state_up 
+04d4 7046db01 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
 
 p_mouse_bt_discovery_button_up_init:
-04e0 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
-04e1 204043d2 call mouse_disable_function_flag 
-04e2 202043ca branch mouse_bt_discovery_button_down_disable 
+04d5 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
+04d6 204043d2 call mouse_disable_function_flag 
+04d7 202043ca branch mouse_bt_discovery_button_down_disable 
 
 p_mouse_bt_discovery_commbination_key_down:
-04e3 7047a028 jam 40 ,mem_mouse_null_enter_hibernate_timer 
-04e4 204004e6 call p_mouse_bt_discovery_timer 
-04e5 202043b0 branch mouse_bt_discovery_commbination_key_down + 1 
+04d8 7047a028 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+04d9 204004db call p_mouse_bt_discovery_timer 
+04da 202043b0 branch mouse_bt_discovery_commbination_key_down + 1 
 
 p_mouse_bt_discovery_timer:
-04e6 da6046da arg mem_combination_ui_button_count ,regc 
-04e7 da4004e9 arg p_mouse_long_button_bt_discovery ,regb 
-04e8 2020336d branch timer_single_step 
+04db da6046da arg mem_combination_ui_button_count ,regc 
+04dc da4004de arg p_mouse_long_button_bt_discovery ,regb 
+04dd 2020336d branch timer_single_step 
 
 p_mouse_long_button_bt_discovery:
-04e9 6800cb68 fetch 1 ,mem_le_switch_adv_flag 
-04ea 243a04f9 nbranch p_mouse_fast_conn_adv_switch_timer_reinit ,blank 
+04de 6800cb68 fetch 1 ,mem_le_switch_adv_flag 
+04df 243a04ee nbranch p_mouse_fast_conn_adv_switch_timer_reinit ,blank 
 
 p_mouse_long_button_bt_normal_discovery:
-04eb 280ffe26 isolate1 mark_24g ,mark 
-04ec 204084f7 call p_mouse_le_adv_start ,true 
-04ed 6800cb76 fetch 1 ,mem_mouse_latest_mode 
-04ee 1fe67cff sub pdata ,latest_mode_null ,null 
-04ef 204284f7 call p_mouse_le_adv_start ,zero 
-04f0 20400491 call p_mouse_le_adv_data_update 
-04f1 68014682 fetch 2 ,mem_ui_state_map 
-04f2 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
-04f3 2040c392 call mouse_cancel_reconnect ,true 
-04f4 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
-04f5 204043ce call mouse_enable_function_flag 
-04f6 202043b8 branch mouse_long_button_bt_discovry 
+04e0 280ffe26 isolate1 mark_24g ,mark 
+04e1 204084ec call p_mouse_le_adv_start ,true 
+04e2 6800cb76 fetch 1 ,mem_mouse_latest_mode 
+04e3 1fe67cff sub pdata ,latest_mode_null ,null 
+04e4 204284ec call p_mouse_le_adv_start ,zero 
+04e5 20400483 call p_mouse_le_adv_data_update 
+04e6 68014682 fetch 2 ,mem_ui_state_map 
+04e7 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+04e8 2040c392 call mouse_cancel_reconnect ,true 
+04e9 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
+04ea 204043ce call mouse_enable_function_flag 
+04eb 202043b8 branch mouse_long_button_bt_discovry 
 
 p_mouse_le_adv_start:
-04f7 704b6c01 jam 1 ,mem_mouse_le_adv_start 
-04f8 20600000 rtn 
+04ec 704b6c01 jam 1 ,mem_mouse_le_adv_start 
+04ed 20600000 rtn 
 
 p_mouse_fast_conn_adv_switch_timer_reinit:
-04f9 68014687 fetch 2 ,mem_discovery_timeout 
-04fa 600146ac store 2 ,mem_mouse_discovery_timer 
-04fb 20600000 rtn 
+04ee 68014687 fetch 2 ,mem_discovery_timeout 
+04ef 600146ac store 2 ,mem_mouse_discovery_timer 
+04f0 20600000 rtn 
 
 p_mouse_null_enter_hibernate_timer:
-04fc 6800c79f fetch 1 ,mem_mouse_null_enter_hibernate_flag 
-04fd 207a0000 rtn blank 
-04fe da6047a0 arg mem_mouse_null_enter_hibernate_timer ,regc 
-04ff da400501 arg p_mouse_null_enter_hibernate ,regb 
-0500 2020336d branch timer_single_step 
+04f1 6800c79f fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+04f2 207a0000 rtn blank 
+04f3 da6047a0 arg mem_mouse_null_enter_hibernate_timer ,regc 
+04f4 da4004f6 arg p_mouse_null_enter_hibernate ,regb 
+04f5 2020336d branch timer_single_step 
 
 p_mouse_null_enter_hibernate:
-0501 70479f00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-0502 2020340a branch app_enter_hibernate 
+04f6 70479f00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+04f7 2020340a branch app_enter_hibernate 
 
 p_mouse_null_enter_hibernate_disable:
-0503 70479f00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-0504 7047a000 jam 0 ,mem_mouse_null_enter_hibernate_timer 
-0505 20600000 rtn 
+04f8 70479f00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+04f9 7047a000 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+04fa 20600000 rtn 
 
 p_mouse_multi_led_blink_timer:
-0506 6800c6ac fetch 1 ,mem_mouse_discovery_timer 
-0507 207a0000 rtn blank 
-0508 c281050a bbit1 2 ,p_mouse_multi_led_on 
-0509 2020050e branch p_mouse_multi_led_off 
+04fb 6800c6ac fetch 1 ,mem_mouse_discovery_timer 
+04fc 207a0000 rtn blank 
+04fd c28104ff bbit1 2 ,p_mouse_multi_led_on 
+04fe 20200503 branch p_mouse_multi_led_off 
 
 p_mouse_multi_led_on:
-050a 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-050b 2040680e call gpio_config_output 
-050c 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-050d 20206825 branch gpio_out_inactive 
+04ff 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+0500 2040680e call gpio_config_output 
+0501 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+0502 20206825 branch gpio_out_inactive 
 
 p_mouse_multi_led_off:
-050e 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-050f 2040680e call gpio_config_output 
-0510 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-0511 20206829 branch gpio_out_active 
+0503 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+0504 2040680e call gpio_config_output 
+0505 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+0506 20206829 branch gpio_out_active 
 
 p_mouse_seting_dpi:
 
 p_mouse_seting_sensor_type:
 
 p_mouse_seting_320x_dpi:
-0512 6800c77a fetch 1 ,mem_mouse_dpi 
-0513 1fe67c01 sub pdata ,mouse_dpi_level2 ,null 
-0514 2042851f call p_mouse_320x_dpi_recount ,zero 
-0515 6800c77a fetch 1 ,mem_mouse_dpi 
-0516 c0000521 beq mouse_dpi_level1 ,p_mouse_set_cpi1 
-0517 c0018527 beq mouse_dpi_level4 ,p_mouse_set_cpi4 
+0507 6800c77a fetch 1 ,mem_mouse_dpi 
+0508 1fe67c01 sub pdata ,mouse_dpi_level2 ,null 
+0509 20428514 call p_mouse_320x_dpi_recount ,zero 
+050a 6800c77a fetch 1 ,mem_mouse_dpi 
+050b c0000516 beq mouse_dpi_level1 ,p_mouse_set_cpi1 
+050c c001851c beq mouse_dpi_level4 ,p_mouse_set_cpi4 
 
 p_mouse_set_cpi3:
-0518 6800c6e0 fetch 1 ,mem_config_sensor_type 
-0519 c003052d beq p3065_xy ,p_mouse_3065xy_set_cpi3 
-051a c003852d beq mx8650 ,p_mouse_3065xy_set_cpi3 
-051b c0010533 beq ka8 ,p_mouse_ka8_set_cpi3 
+050d 6800c6e0 fetch 1 ,mem_config_sensor_type 
+050e c0030522 beq p3065_xy ,p_mouse_3065xy_set_cpi3 
+050f c0038522 beq mx8650 ,p_mouse_3065xy_set_cpi3 
+0510 c0010528 beq ka8 ,p_mouse_ka8_set_cpi3 
 
 p_mouse_320x_set_cpi3:
-051c 6800c781 fetch 1 ,mem_320x_dpi_3 
+0511 6800c781 fetch 1 ,mem_320x_dpi_3 
 
 p_mouse_dpi_store:
-051d 6000c6b5 store 1 ,mem_mouse_cpi_count 
-051e 20203dc1 branch mouse_p3205_dpi + 3 
+0512 6000c6b5 store 1 ,mem_mouse_cpi_count 
+0513 20203dc1 branch mouse_p3205_dpi + 3 
 
 p_mouse_320x_dpi_recount:
-051f 70477a02 jam mouse_dpi_level3 ,mem_mouse_dpi 
-0520 20600000 rtn 
+0514 70477a02 jam mouse_dpi_level3 ,mem_mouse_dpi 
+0515 20600000 rtn 
 
 p_mouse_set_cpi1:
-0521 6800c6e0 fetch 1 ,mem_config_sensor_type 
-0522 c003052f beq p3065_xy ,p_mouse_3065xy_set_cpi1 
-0523 c003852f beq mx8650 ,p_mouse_3065xy_set_cpi1 
-0524 c0010536 beq ka8 ,p_mouse_ka8_set_cpi1 
+0516 6800c6e0 fetch 1 ,mem_config_sensor_type 
+0517 c0030524 beq p3065_xy ,p_mouse_3065xy_set_cpi1 
+0518 c0038524 beq mx8650 ,p_mouse_3065xy_set_cpi1 
+0519 c001052b beq ka8 ,p_mouse_ka8_set_cpi1 
 
 p_mouse_320x_set_cpi1:
-0525 6800c77f fetch 1 ,mem_320x_dpi_1 
-0526 2020051d branch p_mouse_dpi_store 
+051a 6800c77f fetch 1 ,mem_320x_dpi_1 
+051b 20200512 branch p_mouse_dpi_store 
 
 p_mouse_set_cpi4:
-0527 6800c6e0 fetch 1 ,mem_config_sensor_type 
-0528 c0030531 beq p3065_xy ,p_mouse_3065xy_set_cpi4 
-0529 c0038531 beq mx8650 ,p_mouse_3065xy_set_cpi4 
-052a c0010538 beq ka8 ,p_mouse_ka8_set_cpi4 
+051c 6800c6e0 fetch 1 ,mem_config_sensor_type 
+051d c0030526 beq p3065_xy ,p_mouse_3065xy_set_cpi4 
+051e c0038526 beq mx8650 ,p_mouse_3065xy_set_cpi4 
+051f c001052d beq ka8 ,p_mouse_ka8_set_cpi4 
 
 p_mouse_320x_set_cpi4:
-052b 6800c782 fetch 1 ,mem_320x_dpi_4 
-052c 2020051d branch p_mouse_dpi_store 
+0520 6800c782 fetch 1 ,mem_320x_dpi_4 
+0521 20200512 branch p_mouse_dpi_store 
 
 p_mouse_3065xy_set_cpi3:
-052d 6800cb38 fetch 1 ,mem_3065xy_dpi_3 
-052e 2020051d branch p_mouse_dpi_store 
+0522 6800cb38 fetch 1 ,mem_3065xy_dpi_3 
+0523 20200512 branch p_mouse_dpi_store 
 
 p_mouse_3065xy_set_cpi1:
-052f 6800cb36 fetch 1 ,mem_3065xy_dpi_1 
-0530 2020051d branch p_mouse_dpi_store 
+0524 6800cb36 fetch 1 ,mem_3065xy_dpi_1 
+0525 20200512 branch p_mouse_dpi_store 
 
 p_mouse_3065xy_set_cpi4:
-0531 6800cb39 fetch 1 ,mem_3065xy_dpi_4 
-0532 2020051d branch p_mouse_dpi_store 
+0526 6800cb39 fetch 1 ,mem_3065xy_dpi_4 
+0527 20200512 branch p_mouse_dpi_store 
 
 p_mouse_ka8_set_cpi3:
-0533 6800c781 fetch 1 ,mem_320x_dpi_3 
+0528 6800c781 fetch 1 ,mem_320x_dpi_3 
 
 p_mouse_ka8_dpi_store:
-0534 1fe0fe02 increase 2 ,pdata 
-0535 2020051d branch p_mouse_dpi_store 
+0529 1fe0fe02 increase 2 ,pdata 
+052a 20200512 branch p_mouse_dpi_store 
 
 p_mouse_ka8_set_cpi1:
-0536 6800c77f fetch 1 ,mem_320x_dpi_1 
-0537 20200534 branch p_mouse_ka8_dpi_store 
+052b 6800c77f fetch 1 ,mem_320x_dpi_1 
+052c 20200529 branch p_mouse_ka8_dpi_store 
 
 p_mouse_ka8_set_cpi4:
-0538 6800c782 fetch 1 ,mem_320x_dpi_4 
-0539 20200534 branch p_mouse_ka8_dpi_store 
+052d 6800c782 fetch 1 ,mem_320x_dpi_4 
+052e 20200529 branch p_mouse_ka8_dpi_store 
 
 p_mouse_motion:
-053a 78547c00 disable user 
-053b 58000000 setarg 0 
-053c 6003469b store 6 ,mem_mouse_x 
-053d 20400572 call p_mouse_cheak_sensor_data 
-053e 20404079 call mouse_zwheel 
-053f 2040407e call mouse_t_zwheel 
-0540 20400544 call p_mouse_key 
-0541 2434079a nbranch p_drawing_optima_init ,user 
-0542 20400791 call p_drawing_optima 
-0543 20203fa0 branch mouse_motion + 9 
+052f 78547c00 disable user 
+0530 58000000 setarg 0 
+0531 6003469b store 6 ,mem_mouse_x 
+0532 20400567 call p_mouse_cheak_sensor_data 
+0533 20404079 call mouse_zwheel 
+0534 2040407e call mouse_t_zwheel 
+0535 20400539 call p_mouse_key 
+0536 2434078f nbranch p_drawing_optima_init ,user 
+0537 20400786 call p_drawing_optima 
+0538 20203fa0 branch mouse_motion + 9 
 
 p_mouse_key:
-0544 20400546 call p_mouse_check_key_gpio 
-0545 2020409a branch mouse_key + 1 
+0539 2040053b call p_mouse_check_key_gpio 
+053a 2020409a branch mouse_key + 1 
 
 p_mouse_check_key_gpio:
-0546 da200000 arg 0 ,rega 
-0547 2040054c call p_mouse_check_lkey_gpio 
-0548 2040054a call p_mouse_check_skey_gpio 
-0549 2020408e branch mouse_check_key_gpio_output 
+053b da200000 arg 0 ,rega 
+053c 20400541 call p_mouse_check_lkey_gpio 
+053d 2040053f call p_mouse_check_skey_gpio 
+053e 2020408e branch mouse_check_key_gpio_output 
 
 p_mouse_check_skey_gpio:
-054a 2040055c call p_mouse_check_bk_key_gpio 
-054b 20200562 branch p_mouse_check_fw_key_gpio 
+053f 20400551 call p_mouse_check_bk_key_gpio 
+0540 20200557 branch p_mouse_check_fw_key_gpio 
 
 p_mouse_check_lkey_gpio:
-054c 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
-054d 20400567 call p_gpio_set_input_pu 
-054e 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
-054f 2040681d call gpio_get_bit 
-0550 7920a200 setflag true ,0 ,rega 
+0541 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+0542 2040055c call p_gpio_set_input_pu 
+0543 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+0544 2040681d call gpio_get_bit 
+0545 7920a200 setflag true ,0 ,rega 
 
 p_mouse_check_rkey_gpio:
-0551 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
-0552 20400567 call p_gpio_set_input_pu 
-0553 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
-0554 2040681d call gpio_get_bit 
-0555 7920a201 setflag true ,1 ,rega 
+0546 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+0547 2040055c call p_gpio_set_input_pu 
+0548 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+0549 2040681d call gpio_get_bit 
+054a 7920a201 setflag true ,1 ,rega 
 
 p_mouse_check_mkey_gpio:
-0556 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
-0557 20400567 call p_gpio_set_input_pu 
-0558 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
-0559 2040681d call gpio_get_bit 
-055a 7920a202 setflag true ,2 ,rega 
-055b 20600000 rtn 
+054b 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+054c 2040055c call p_gpio_set_input_pu 
+054d 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+054e 2040681d call gpio_get_bit 
+054f 7920a202 setflag true ,2 ,rega 
+0550 20600000 rtn 
 
 p_mouse_check_bk_key_gpio:
-055c 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
-055d 2040056c call p_gpio_set_input_pd 
-055e 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
-055f 2040681d call gpio_get_bit 
-0560 7d20a203 nsetflag true ,3 ,rega 
-0561 20200567 branch p_gpio_set_input_pu 
+0551 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+0552 20400561 call p_gpio_set_input_pd 
+0553 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+0554 2040681d call gpio_get_bit 
+0555 7d20a203 nsetflag true ,3 ,rega 
+0556 2020055c branch p_gpio_set_input_pu 
 
 p_mouse_check_fw_key_gpio:
-0562 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
-0563 2040056c call p_gpio_set_input_pd 
-0564 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
-0565 2040681d call gpio_get_bit 
-0566 7d20a204 nsetflag true ,4 ,rega 
+0557 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+0558 20400561 call p_gpio_set_input_pd 
+0559 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+055a 2040681d call gpio_get_bit 
+055b 7d20a204 nsetflag true ,4 ,rega 
 
 p_gpio_set_input_pu:
-0567 79200407 set1 gpio_active_bit ,temp 
-0568 d8a08078 arg core_gpio_pu0 ,contw 
-0569 20406830 call gpio_set_bit 
-056a 793f8407 set0 gpio_active_bit ,temp 
-056b 20200570 branch p_gpio_set_input_pd4 
+055c 79200407 set1 gpio_active_bit ,temp 
+055d d8a08078 arg core_gpio_pu0 ,contw 
+055e 20406830 call gpio_set_bit 
+055f 793f8407 set0 gpio_active_bit ,temp 
+0560 20200565 branch p_gpio_set_input_pd4 
 
 p_gpio_set_input_pd:
-056c 793f8407 set0 gpio_active_bit ,temp 
-056d d8a08078 arg core_gpio_pu0 ,contw 
-056e 20406830 call gpio_set_bit 
-056f 79200407 set1 gpio_active_bit ,temp 
+0561 793f8407 set0 gpio_active_bit ,temp 
+0562 d8a08078 arg core_gpio_pu0 ,contw 
+0563 20406830 call gpio_set_bit 
+0564 79200407 set1 gpio_active_bit ,temp 
 
 p_gpio_set_input_pd4:
-0570 d8a0807c arg core_gpio_pd0 ,contw 
-0571 2020680a branch gpio_set_high_impedance + 4 
+0565 d8a0807c arg core_gpio_pd0 ,contw 
+0566 2020680a branch gpio_set_high_impedance + 4 
 
 p_mouse_cheak_sensor_data:
-0572 6800c6e0 fetch 1 ,mem_config_sensor_type 
-0573 c0040577 beq p8009 ,p_mouse_p8009_sensor_motion 
+0567 6800c6e0 fetch 1 ,mem_config_sensor_type 
+0568 c004056c beq p8009 ,p_mouse_p8009_sensor_motion 
 
 p_mouse_p32xx_sensor_motion:
-0574 20403fc0 call mouse_clear_sensor_data 
-0575 78547c00 disable user 
-0576 20203fe7 branch mouse_p32xx_sensor_motion_2 
+0569 20403fc0 call mouse_clear_sensor_data 
+056a 78547c00 disable user 
+056b 20203fe7 branch mouse_p32xx_sensor_motion_2 
 
 p_mouse_p8009_sensor_motion:
-0577 20403fc0 call mouse_clear_sensor_data 
-0578 78547c00 disable user 
+056c 20403fc0 call mouse_clear_sensor_data 
+056d 78547c00 disable user 
 
 p_mouse_p32xx_sensor_motion_1:
-0579 58000002 setarg pan_reg_motion_staus 
-057a 20406414 call twspi_read 
-057b c4038000 rtnbit0 7 
-057c 58000008 setarg pan_reg_opration_state 
-057d 20406414 call twspi_read 
-057e 203a3fed branch mouse_p32xx_sensor_motion_1 + 3 ,blank 
-057f 58000000 setarg 0 
-0580 6003469b store 6 ,mem_mouse_x 
-0581 20600000 rtn 
+056e 58000002 setarg pan_reg_motion_staus 
+056f 20406414 call twspi_read 
+0570 c4038000 rtnbit0 7 
+0571 58000008 setarg pan_reg_opration_state 
+0572 20406414 call twspi_read 
+0573 203a3fed branch mouse_p32xx_sensor_motion_1 + 3 ,blank 
+0574 58000000 setarg 0 
+0575 6003469b store 6 ,mem_mouse_x 
+0576 20600000 rtn 
 
 p_mouse_bb_event_discovery_btn:
-0582 20400503 call p_mouse_null_enter_hibernate_disable 
-0583 280ffe26 isolate1 mark_24g ,mark 
-0584 204081f3 call p_g24_check_51cmd_stop_24g ,true 
-0585 7046b400 jam 0 ,mem_mouse_send_blank_timer 
-0586 6800cb78 fetch 1 ,mem_mouse_le_not_tx_disconn 
-0587 205a4386 call mouse_disconnect ,blank 
-0588 58000000 setarg 0 
-0589 600146b0 store 2 ,mem_mouse_no_data_timer 
-058a 2020426f branch mouse_bb_event_discovery_btn + 3 
+0577 204004f8 call p_mouse_null_enter_hibernate_disable 
+0578 280ffe26 isolate1 mark_24g ,mark 
+0579 204081f3 call p_g24_check_51cmd_stop_24g ,true 
+057a 7046b400 jam 0 ,mem_mouse_send_blank_timer 
+057b 6800cb78 fetch 1 ,mem_mouse_le_not_tx_disconn 
+057c 205a4386 call mouse_disconnect ,blank 
+057d 58000000 setarg 0 
+057e 600146b0 store 2 ,mem_mouse_no_data_timer 
+057f 2020426f branch mouse_bb_event_discovery_btn + 3 
 
 p_mouse_start_discovery:
-058b 70409100 jam 0 ,mem_lpm_mode 
-058c 7011c630 jam zcode_30 ,mem_zcode_temp_param0 
-058d 20200770 branch p_zcode_entrance 
+0580 70409100 jam 0 ,mem_lpm_mode 
+0581 7011c630 jam zcode_30 ,mem_zcode_temp_param0 
+0582 20200765 branch p_zcode_entrance 
 
 p_mouse_stop_discovery:
-058e 204003d8 call p_mouse_init_sensor_reset 
-058f 202042cb branch mouse_stop_discovery + 1 
+0583 204003c9 call p_mouse_init_sensor_reset 
+0584 202042cb branch mouse_stop_discovery + 1 
 
 p_le_slave_match:
-0590 6800c50f fetch 1 ,mem_le_md_count 
-0591 1fe0fe01 pincrease 1 
-0592 6000c50f store 1 ,mem_le_md_count 
-0593 c0065395 beq le_md_max_count ,le_slave_cont 
-0594 204055aa call le_acknowledge 
-0595 2040561e call le_prepare_tx 
-0596 20400710 call power_ctrl_start 
-0597 2020538f branch le_slave_match + 7 
+0585 6800c50f fetch 1 ,mem_le_md_count 
+0586 1fe0fe01 pincrease 1 
+0587 6000c50f store 1 ,mem_le_md_count 
+0588 c0065395 beq le_md_max_count ,le_slave_cont 
+0589 204055aa call le_acknowledge 
+058a 2040561e call le_prepare_tx 
+058b 20400705 call power_ctrl_start 
+058c 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
-0598 68008016 fetch 1 ,mem_le_ch_mapped 
-0599 1fe0fe01 increase 1 ,pdata 
-059a 60008016 store 1 ,mem_le_ch_mapped 
-059b c1940000 rtnne 40 
-059c 70001625 jam 37 ,mem_le_ch_mapped 
-059d 20600000 rtn 
+058d 68008016 fetch 1 ,mem_le_ch_mapped 
+058e 1fe0fe01 increase 1 ,pdata 
+058f 60008016 store 1 ,mem_le_ch_mapped 
+0590 c1940000 rtnne 40 
+0591 70001625 jam 37 ,mem_le_ch_mapped 
+0592 20600000 rtn 
 
 p_le_receive_skip:
-059e 204029bb call save_rssi 
-059f 2040006c call p_rssi_signal 
-05a0 202054a3 branch le_receive_skip + 2 
+0593 204029bb call save_rssi 
+0594 2040006c call p_rssi_signal 
+0595 202054a3 branch le_receive_skip + 2 
 
 p_le_update_param:
-05a1 7011c620 jam zcode_20 ,mem_zcode_temp_param0 
-05a2 20200770 branch p_zcode_entrance 
+0596 7011c620 jam zcode_20 ,mem_zcode_temp_param0 
+0597 20200765 branch p_zcode_entrance 
 
 p_le_update_channel_map:
-05a3 7011c621 jam zcode_21 ,mem_zcode_temp_param0 
-05a4 20200770 branch p_zcode_entrance 
+0598 7011c621 jam zcode_21 ,mem_zcode_temp_param0 
+0599 20200765 branch p_zcode_entrance 
 
 p_le_prepare_tx:
-05a5 68008456 fetch 1 ,mem_le_arq 
-05a6 c28285c5 bbit1 wak ,p_le_prepare_tx_wak 
-05a7 20400702 call power_ctrl_pac_succ_incrs 
-05a8 6800c78e fetch 1 ,mem_empty_count 
-05a9 243a05af nbranch p_le_send_empyt ,blank 
-05aa 6800843f fetch 1 ,mem_le_state 
-05ab c30205b3 bbit0 lestate_encryption ,p_le_tx_4 
-05ac 680082da fetch 1 ,mem_le_rxbuf + 1 
-05ad 203a05b3 branch p_le_tx_4 ,blank 
-05ae 20205664 branch le_send_empty 
+059a 68008456 fetch 1 ,mem_le_arq 
+059b c28285ba bbit1 wak ,p_le_prepare_tx_wak 
+059c 204006f7 call power_ctrl_pac_succ_incrs 
+059d 6800c78e fetch 1 ,mem_empty_count 
+059e 243a05a4 nbranch p_le_send_empyt ,blank 
+059f 6800843f fetch 1 ,mem_le_state 
+05a0 c30205a8 bbit0 lestate_encryption ,p_le_tx_4 
+05a1 680082da fetch 1 ,mem_le_rxbuf + 1 
+05a2 203a05a8 branch p_le_tx_4 ,blank 
+05a3 20205664 branch le_send_empty 
 
 p_le_send_empyt:
-05af 6800c78e fetch 1 ,mem_empty_count 
-05b0 1fe0ffff increase -1 ,pdata 
-05b1 6000c78e store 1 ,mem_empty_count 
-05b2 20205664 branch le_send_empty 
+05a4 6800c78e fetch 1 ,mem_empty_count 
+05a5 1fe0ffff increase -1 ,pdata 
+05a6 6000c78e store 1 ,mem_empty_count 
+05a7 20205664 branch le_send_empty 
 
 p_le_tx_4:
-05b3 6800c4c4 fetch 1 ,mem_le_pairing_state 
-05b4 c08285b6 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
-05b5 70478e03 jam 3 ,mem_empty_count 
+05a8 6800c4c4 fetch 1 ,mem_le_pairing_state 
+05a9 c08285ab bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+05aa 70478e03 jam 3 ,mem_empty_count 
 
 p_in_le_tx_4:
-05b6 20405892 call le_fifo_check_nearly_full 
-05b7 205a03c4 call p_mouse_data_pull ,blank 
-05b8 20205622 branch le_prepare_tx + 4 
+05ab 20405892 call le_fifo_check_nearly_full 
+05ac 205a03b5 call p_mouse_data_pull ,blank 
+05ad 20205622 branch le_prepare_tx + 4 
 
 p_le_check_tx_retransmit_setmd:
-05b9 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-05ba 1fe17e03 and pdata ,0x03 ,pdata 
-05bb c1818000 rtnne 0x03 
-05bc 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
-05bd 207a0000 rtn blank 
-05be 6800c3dd fetch 1 ,mem_le_txlen 
-05bf 207a0000 rtn blank 
-05c0 6800c3dc fetch 1 ,mem_le_txheader 
-05c1 79207e04 set1 md ,pdata 
-05c2 6000c3dc store 1 ,mem_le_txheader 
-05c3 20405650 call le_set_md 
-05c4 20600000 rtn 
+05ae 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+05af 1fe17e03 and pdata ,0x03 ,pdata 
+05b0 c1818000 rtnne 0x03 
+05b1 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+05b2 207a0000 rtn blank 
+05b3 6800c3dd fetch 1 ,mem_le_txlen 
+05b4 207a0000 rtn blank 
+05b5 6800c3dc fetch 1 ,mem_le_txheader 
+05b6 79207e04 set1 md ,pdata 
+05b7 6000c3dc store 1 ,mem_le_txheader 
+05b8 20405650 call le_set_md 
+05b9 20600000 rtn 
 
 p_le_prepare_tx_wak:
-05c5 204005b9 call p_le_check_tx_retransmit_setmd 
+05ba 204005ae call p_le_check_tx_retransmit_setmd 
 
 p_le_power_ctrl_pac_succ_decrs:
-05c6 20200706 branch power_ctrl_pac_succ_decrs 
+05bb 202006fb branch power_ctrl_pac_succ_decrs 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
-05c7 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
-05c8 207a0000 rtn blank 
-05c9 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-05ca 1fe17e03 and pdata ,0x03 ,pdata 
-05cb c1018000 rtneq 0x03 
-05cc 7046c602 jam 2 ,mem_le_start_encrypt_timer 
-05cd 20600000 rtn 
+05bc 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
+05bd 207a0000 rtn blank 
+05be 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+05bf 1fe17e03 and pdata ,0x03 ,pdata 
+05c0 c1018000 rtneq 0x03 
+05c1 7046c602 jam 2 ,mem_le_start_encrypt_timer 
+05c2 20600000 rtn 
 
 p_le_parse:
-05ce c6078000 rtnmark1 mark_old_packet 
-05cf 20405890 call le_fifo_check_full 
-05d0 247a0000 nrtn blank 
-05d1 680082d9 fetch 1 ,mem_le_rxbuf 
-05d2 1fe17e03 and pdata ,0x3 ,pdata 
-05d3 6000c50c store 1 ,mem_le_packet_llid 
-05d4 e8c08000 ifetch 1 ,contr 
-05d5 1fe17e1f and pdata ,0x1f ,pdata 
-05d6 6000c50b store 1 ,mem_le_packet_size 
-05d7 207a0000 rtn blank 
-05d8 18c27e00 copy contr ,pdata 
-05d9 6001450d store 2 ,mem_le_payload_ptr 
-05da 6800c50c fetch 1 ,mem_le_packet_llid 
-05db c00185dd beq llid_le_ll ,p_le_parse_ll 
-05dc 2020568d branch le_parse_l2cap 
+05c3 c6078000 rtnmark1 mark_old_packet 
+05c4 20405890 call le_fifo_check_full 
+05c5 247a0000 nrtn blank 
+05c6 680082d9 fetch 1 ,mem_le_rxbuf 
+05c7 1fe17e03 and pdata ,0x3 ,pdata 
+05c8 6000c50c store 1 ,mem_le_packet_llid 
+05c9 e8c08000 ifetch 1 ,contr 
+05ca 1fe17e1f and pdata ,0x1f ,pdata 
+05cb 6000c50b store 1 ,mem_le_packet_size 
+05cc 207a0000 rtn blank 
+05cd 18c27e00 copy contr ,pdata 
+05ce 6001450d store 2 ,mem_le_payload_ptr 
+05cf 6800c50c fetch 1 ,mem_le_packet_llid 
+05d0 c00185d2 beq llid_le_ll ,p_le_parse_ll 
+05d1 2020568d branch le_parse_l2cap 
 
 p_le_parse_ll:
-05dd 680082db fetch 1 ,mem_le_rxbuf + 2 
-05de c00005e1 beq ll_connection_update_req ,p_le_parse_connection_update_req 
-05df c00085e8 beq ll_channel_map_req ,p_le_parse_channel_map_req 
-05e0 20205c65 branch le_parse_ll + 1 
+05d2 680082db fetch 1 ,mem_le_rxbuf + 2 
+05d3 c00005d6 beq ll_connection_update_req ,p_le_parse_connection_update_req 
+05d4 c00085dd beq ll_channel_map_req ,p_le_parse_channel_map_req 
+05d5 20205c65 branch le_parse_ll + 1 
 
 p_le_parse_connection_update_req:
-05e1 20405c7b call le_parse_connection_update_req 
-05e2 6800cb61 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
-05e3 207a0000 rtn blank 
+05d6 20405c7b call le_parse_connection_update_req 
+05d7 6800cb61 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
+05d8 207a0000 rtn blank 
 
 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
-05e4 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-05e5 6000c172 store 1 ,mem_lpm_mult 
-05e6 6000c7c5 store 1 ,mem_lpm_mult_init 
-05e7 20600000 rtn 
+05d9 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+05da 6000c172 store 1 ,mem_lpm_mult 
+05db 6000c7c5 store 1 ,mem_lpm_mult_init 
+05dc 20600000 rtn 
 
 p_le_parse_channel_map_req:
-05e8 e8c28000 ifetch 5 ,contr 
-05e9 6002c3ce store 5 ,mem_le_new_map 
-05ea e8c10000 ifetch 2 ,contr 
-05eb 6001045f store 2 ,mem_le_instant 
-05ec 20205c8a branch le_parse_channel_map_req + 7 
+05dd e8c28000 ifetch 5 ,contr 
+05de 6002c3ce store 5 ,mem_le_new_map 
+05df e8c10000 ifetch 2 ,contr 
+05e0 6001045f store 2 ,mem_le_instant 
+05e1 20205c8a branch le_parse_channel_map_req + 7 
 
 p_le_parse_l2cap:
-05ed e8c10000 ifetch 2 ,contr 
-05ee c00205f1 beq le_l2cap_cid_att ,p_le_parse_att 
-05ef c003061d beq le_l2cap_cid_smp ,p_le_parse_smp 
-05f0 20205698 branch le_parse_l2cap + 11 
+05e2 e8c10000 ifetch 2 ,contr 
+05e3 c00205e6 beq le_l2cap_cid_att ,p_le_parse_att 
+05e4 c0030612 beq le_l2cap_cid_smp ,p_le_parse_smp 
+05e5 20205698 branch le_parse_l2cap + 11 
 
 p_le_parse_att:
-05f1 20407ea5 call store_contr 
-05f2 204005c7 call p_mouse_le_reconn_write_enable_timer_reinit 
-05f3 20407e9f call get_contr 
-05f4 e8c18000 ifetch 3 ,contr 
-05f5 60018477 store 3 ,mem_le_att_opcode 
-05f6 c0080600 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
-05f7 1fec8400 rshift8 pdata ,temp 
-05f8 18467c24 sub temp ,0x24 ,null 
-05f9 2021060e branch p_le_parse_att1 ,positive 
-05fa d84047c6 arg mem_mouse_le_uuid_sup ,temp 
-05fb 600944bc storet 2 ,mem_ui_le_uuid_table 
-05fc 204058ad call le_parse_att + 2 
-05fd 58008e7a setarg 0x8e7a 
-05fe 600144bc store 2 ,mem_ui_le_uuid_table 
-05ff 20600000 rtn 
+05e6 20407ea5 call store_contr 
+05e7 204005bc call p_mouse_le_reconn_write_enable_timer_reinit 
+05e8 20407e9f call get_contr 
+05e9 e8c18000 ifetch 3 ,contr 
+05ea 60018477 store 3 ,mem_le_att_opcode 
+05eb c00805f5 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+05ec 1fec8400 rshift8 pdata ,temp 
+05ed 18467c24 sub temp ,0x24 ,null 
+05ee 20210603 branch p_le_parse_att1 ,positive 
+05ef d84047c6 arg mem_mouse_le_uuid_sup ,temp 
+05f0 600944bc storet 2 ,mem_ui_le_uuid_table 
+05f1 204058ad call le_parse_att + 2 
+05f2 58008e7a setarg 0x8e7a 
+05f3 600144bc store 2 ,mem_ui_le_uuid_table 
+05f4 20600000 rtn 
 
 p_le_parse_att_read_by_group_type_request:
-0600 204059fa call le_parse_att_read_by_group_type_request 
-0601 20405879 call le_fifo_get_last_tx_ptr 
-0602 18c08c07 increase 7 ,contr 
-0603 e8c08000 ifetch 1 ,contr 
-0604 c1888000 rtnne attop_read_by_group_type_response 
-0605 18c08c05 increase 5 ,contr 
-0606 e8c10000 ifetch 2 ,contr 
-0607 d8401812 arg uuid_service_hids ,temp 
-0608 98467c00 isub temp ,null 
-0609 24628000 nrtn zero 
-060a 18c08dfc increase -4 ,contr 
-060b 5800002b setarg 0x2b 
-060c e0c10000 istore 2 ,contr 
-060d 20600000 rtn 
+05f5 204059fa call le_parse_att_read_by_group_type_request 
+05f6 20405879 call le_fifo_get_last_tx_ptr 
+05f7 18c08c07 increase 7 ,contr 
+05f8 e8c08000 ifetch 1 ,contr 
+05f9 c1888000 rtnne attop_read_by_group_type_response 
+05fa 18c08c05 increase 5 ,contr 
+05fb e8c10000 ifetch 2 ,contr 
+05fc d8401812 arg uuid_service_hids ,temp 
+05fd 98467c00 isub temp ,null 
+05fe 24628000 nrtn zero 
+05ff 18c08dfc increase -4 ,contr 
+0600 5800002b setarg 0x2b 
+0601 e0c10000 istore 2 ,contr 
+0602 20600000 rtn 
 
 p_le_parse_att1:
-060e c0050610 beq attop_read_request ,p_le_parse_att_read_request 
-060f 202058ad branch le_parse_att + 2 
+0603 c0050605 beq attop_read_request ,p_le_parse_att_read_request 
+0604 202058ad branch le_parse_att + 2 
 
 p_le_parse_att_read_request:
-0610 68090478 fetcht 2 ,mem_le_att_handle 
-0611 6800c4e9 fetch 1 ,mem_le_configuration 
-0612 c2818617 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+0605 68090478 fetcht 2 ,mem_le_att_handle 
+0606 6800c4e9 fetch 1 ,mem_le_configuration 
+0607 c281860c bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-0613 68010478 fetch 2 ,mem_le_att_handle 
-0614 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
-0615 68090478 fetcht 2 ,mem_le_att_handle 
-0616 202059bf branch le_send_att_read_response 
+0608 68010478 fetch 2 ,mem_le_att_handle 
+0609 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
+060a 68090478 fetcht 2 ,mem_le_att_handle 
+060b 202059bf branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-0617 680144fa fetch 2 ,mem_le_pairing_handle 
-0618 98467c00 isub temp ,null 
-0619 24228613 nbranch p_le_send_att_read_response ,zero 
-061a 20405a42 call le_check_encrypt_state 
-061b 24340613 nbranch p_le_send_att_read_response ,user 
-061c 202059e2 branch le_send_att_read_response_check_auth + 5 
+060c 680144fa fetch 2 ,mem_le_pairing_handle 
+060d 98467c00 isub temp ,null 
+060e 24228608 nbranch p_le_send_att_read_response ,zero 
+060f 20405a42 call le_check_encrypt_state 
+0610 24340608 nbranch p_le_send_att_read_response ,user 
+0611 202059e2 branch le_send_att_read_response_check_auth + 5 
 
 p_le_parse_smp:
-061d e8c08000 ifetch 1 ,contr 
-061e c0008621 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-061f c0028623 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-0620 20205af5 branch le_parse_smp + 1 
+0612 e8c08000 ifetch 1 ,contr 
+0613 c0008616 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0614 c0028618 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0615 20205af5 branch le_parse_smp + 1 
 
 p_le_parse_smp_pairing_request:
-0621 704b6e01 jam 1 ,mem_le_send_security_request_flag 
-0622 20205b09 branch le_parse_smp_pairing_request 
+0616 704b6e01 jam 1 ,mem_le_send_security_request_flag 
+0617 20205b09 branch le_parse_smp_pairing_request 
 
 p_le_parse_smp_pairing_failed:
-0623 7011c682 jam zcode_82 ,mem_zcode_temp_param0 
-0624 20200770 branch p_zcode_entrance 
+0618 7011c682 jam zcode_82 ,mem_zcode_temp_param0 
+0619 20200765 branch p_zcode_entrance 
 
 p_le_adv_not_match:
-0625 68008016 fetch 1 ,mem_le_ch_mapped 
-0626 c093d6f2 bne 39 ,le_adv_loop 
-0627 2040062b call p_le_adv_random_delay 
-0628 d8e00000 arg le_adv_interval_timer ,queue 
-0629 68014482 fetch 2 ,mem_le_adv_interval 
-062a 20207f08 branch timer_init 
+061a 68008016 fetch 1 ,mem_le_ch_mapped 
+061b c093d6f2 bne 39 ,le_adv_loop 
+061c 20400620 call p_le_adv_random_delay 
+061d d8e00000 arg le_adv_interval_timer ,queue 
+061e 68014482 fetch 2 ,mem_le_adv_interval 
+061f 20207f08 branch timer_init 
 
 p_le_adv_random_delay:
-062b 180a7e00 random pdata 
-062c d84001ff arg 0x1ff ,temp 
-062d 98417e00 iand temp ,pdata 
-062e 1fe0fefa add pdata ,250 ,pdata 
-062f 20203cbe branch delay 
+0620 180a7e00 random pdata 
+0621 d84001ff arg 0x1ff ,temp 
+0622 98417e00 iand temp ,pdata 
+0623 1fe0fefa add pdata ,250 ,pdata 
+0624 20203cbe branch delay 
 
 p_le_lpm_setmult:
-0630 7855fc00 disable wake 
-0631 20370633 branch p_le_lpm_set_mult_attempt ,attempt 
-0632 2436d806 nbranch le_lpm_lost ,match 
+0625 7855fc00 disable wake 
+0626 20370628 branch p_le_lpm_set_mult_attempt ,attempt 
+0627 2436d806 nbranch le_lpm_lost ,match 
 
 p_le_lpm_set_mult_attempt:
-0633 20402bcb call lpm_match 
-0634 680140c1 fetch 2 ,mem_rx_window_sniff 
-0635 6001044d store 2 ,mem_le_receive_window 
-0636 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0637 2fe00603 compare 3 ,pdata ,3 
-0638 2420abde nbranch lpm_mult_short ,true 
-0639 202057fb branch le_lpm_set_mult_attempt + 3 
+0628 20402bcb call lpm_match 
+0629 680140c1 fetch 2 ,mem_rx_window_sniff 
+062a 6001044d store 2 ,mem_le_receive_window 
+062b 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+062c 2fe00603 compare 3 ,pdata ,3 
+062d 2420abde nbranch lpm_mult_short ,true 
+062e 202057fb branch le_lpm_set_mult_attempt + 3 
 
 p_le_mouse_bb_event_connect_complete:
-063a 7011c622 jam zcode_22 ,mem_zcode_temp_param0 
-063b 20200770 branch p_zcode_entrance 
+062f 7011c622 jam zcode_22 ,mem_zcode_temp_param0 
+0630 20200765 branch p_zcode_entrance 
 
 p_twspi_reset:
-063c 68108077 hfetch 1 ,core_gpio_out3 
-063d 1fe17efd and_into 0xfd ,pdata 
-063e 60108077 hstore 1 ,core_gpio_out3 
-063f 68188073 hfetcht 1 ,core_gpio_oe3 
-0640 18418402 or_into 0x2 ,temp 
-0641 60188073 hstoret 1 ,core_gpio_oe3 
-0642 204063ee call twspi_disable 
-0643 184104fd and_into 0xfd ,temp 
-0644 2000000d nop 13 
-0645 20400649 call p_twspi_enable 
-0646 60188073 hstoret 1 ,core_gpio_oe3 
-0647 20600000 rtn 
+0631 68108077 hfetch 1 ,core_gpio_out3 
+0632 1fe17efd and_into 0xfd ,pdata 
+0633 60108077 hstore 1 ,core_gpio_out3 
+0634 68188073 hfetcht 1 ,core_gpio_oe3 
+0635 18418402 or_into 0x2 ,temp 
+0636 60188073 hstoret 1 ,core_gpio_oe3 
+0637 204063ee call twspi_disable 
+0638 184104fd and_into 0xfd ,temp 
+0639 2000000d nop 13 
+063a 2040063e call p_twspi_enable 
+063b 60188073 hstoret 1 ,core_gpio_oe3 
+063c 20600000 rtn 
 
 p_spid_init:
-0648 204064dd call spid_init_common 
+063d 204064dd call spid_init_common 
 
 p_twspi_enable:
-0649 68108081 hfetch 1 ,core_gpio_sel1 
-064a 79207e00 set1 0 ,pdata 
-064b 793ffe01 set0 1 ,pdata 
-064c 793ffe03 set0 3 ,pdata 
-064d 60108081 hstore 1 ,core_gpio_sel1 
-064e 20600000 rtn 
+063e 68108081 hfetch 1 ,core_gpio_sel1 
+063f 79207e00 set1 0 ,pdata 
+0640 793ffe01 set0 1 ,pdata 
+0641 793ffe03 set0 3 ,pdata 
+0642 60108081 hstore 1 ,core_gpio_sel1 
+0643 20600000 rtn 
 
 p_page_wait_fhs_reply_ok:
-064f 7011c600 jam zcode_00 ,mem_zcode_temp_param0 
-0650 20200770 branch p_zcode_entrance 
+0644 7011c600 jam zcode_00 ,mem_zcode_temp_param0 
+0645 20200765 branch p_zcode_entrance 
 
 p_role_switch_master:
-0651 204021c9 call role_switch_check 
-0652 24740000 nrtn user 
+0646 204021c9 call role_switch_check 
+0647 24740000 nrtn user 
 
 p_wait_role_switch_anchor:
-0653 78547c00 disable user 
-0654 70001120 jam param_newconnto ,mem_newconnto_counter 
-0655 793f800b set0 mark_fhs_already_good ,mark 
-0656 793f802d set0 mark_role_switch_receive_fhs ,mark 
+0648 78547c00 disable user 
+0649 70001120 jam param_newconnto ,mem_newconnto_counter 
+064a 793f800b set0 mark_fhs_already_good ,mark 
+064b 793f802d set0 mark_role_switch_receive_fhs ,mark 
 
 p_roles_waitfhs_loop:
-0657 20402a4f call rf_setup_time_master_slot 
-0658 204022e6 call master_recv_packet 
-0659 c505865e bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
-065a 20402455 call new_conn_timeout 
-065b 243a0657 nbranch p_roles_waitfhs_loop ,blank 
-065c c5168667 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
-065d 202021ec branch role_switch_fail_master 
+064c 20402a4f call rf_setup_time_master_slot 
+064d 204022e6 call master_recv_packet 
+064e c5058653 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+064f 20402455 call new_conn_timeout 
+0650 243a064c nbranch p_roles_waitfhs_loop ,blank 
+0651 c516865c bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0652 202021ec branch role_switch_fail_master 
 
 p_roles_replyto_fhs:
-065e 20402a4d call rf_setup_time_slave_slot 
-065f d8200010 arg type_id ,type 
-0660 204022dc call master_send_packet 
-0661 7920002d set1 mark_role_switch_receive_fhs ,mark 
-0662 793f800b set0 mark_fhs_already_good ,mark 
-0663 68008077 fetch 1 ,mem_amaddr 
-0664 98000800 iforce am_addr 
-0665 70001102 jam 2 ,mem_newconnto_counter 
-0666 20200657 branch p_roles_waitfhs_loop 
+0653 20402a4d call rf_setup_time_slave_slot 
+0654 d8200010 arg type_id ,type 
+0655 204022dc call master_send_packet 
+0656 7920002d set1 mark_role_switch_receive_fhs ,mark 
+0657 793f800b set0 mark_fhs_already_good ,mark 
+0658 68008077 fetch 1 ,mem_amaddr 
+0659 98000800 iforce am_addr 
+065a 70001102 jam 2 ,mem_newconnto_counter 
+065b 2020064c branch p_roles_waitfhs_loop 
 
 p_roles_replyto_fhs1:
-0667 68020165 fetch 4 ,mem_clke_bt 
-0668 1fe0fe08 pincrease 8 
-0669 60020165 store 4 ,mem_clke_bt 
-066a 202021f8 branch roles_replyto_fhs + 4 
+065c 68020165 fetch 4 ,mem_clke_bt 
+065d 1fe0fe08 pincrease 8 
+065e 60020165 store 4 ,mem_clke_bt 
+065f 202021f8 branch roles_replyto_fhs + 4 
 
 p_process_dmh:
-066b c516264d bmark1 mark_first_packet ,end_of_packet 
-066c 2020258f branch process_dmh + 1 
+0660 c516264d bmark1 mark_first_packet ,end_of_packet 
+0661 2020258f branch process_dmh + 1 
 
 p_quit_connection_cont:
-066d 7011c623 jam zcode_23 ,mem_zcode_temp_param0 
-066e 20200770 branch p_zcode_entrance 
+0662 7011c623 jam zcode_23 ,mem_zcode_temp_param0 
+0663 20200765 branch p_zcode_entrance 
 
 p_prepare_tx:
-066f 68008030 fetch 1 ,mem_state 
-0670 2feffe00 isolate1 state_inconn ,pdata 
-0671 20408673 call p_bt_power_ctrl ,true 
-0672 2020248a branch prepare_tx + 1 
+0664 68008030 fetch 1 ,mem_state 
+0665 2feffe00 isolate1 state_inconn ,pdata 
+0666 20408668 call p_bt_power_ctrl ,true 
+0667 2020248a branch prepare_tx + 1 
 
 p_bt_power_ctrl:
-0673 68008047 fetch 1 ,mem_arq 
-0674 2feffe03 isolate1 wack ,pdata 
-0675 20408706 call power_ctrl_pac_succ_decrs ,true 
-0676 24408702 ncall power_ctrl_pac_succ_incrs ,true 
-0677 20200710 branch power_ctrl_start 
+0668 68008047 fetch 1 ,mem_arq 
+0669 2feffe03 isolate1 wack ,pdata 
+066a 204086fb call power_ctrl_pac_succ_decrs ,true 
+066b 244086f7 ncall power_ctrl_pac_succ_incrs ,true 
+066c 20200705 branch power_ctrl_start 
 
 p_slave_conn_recv_packet:
-0678 204024f0 call slave_receive_master_slot 
-0679 242c28f9 nbranch shutdown_radio ,sync 
-067a 204029bb call save_rssi 
-067b 2040006c call p_rssi_signal 
-067c 20202518 branch slave_conn_recv_packet + 4 
+066d 204024f0 call slave_receive_master_slot 
+066e 242c28f9 nbranch shutdown_radio ,sync 
+066f 204029bb call save_rssi 
+0670 2040006c call p_rssi_signal 
+0671 20202518 branch slave_conn_recv_packet + 4 
 
 p_lpm_dispatch:
-067d c6130000 rtnmark1 mark_24g 
-067e 20402afa call lpo_calibration 
-067f 6801c16f fetch 3 ,mem_clks_per_lpo 
-0680 207a0000 rtn blank 
-0681 6800c091 fetch 1 ,mem_lpm_mode 
-0682 207a0000 rtn blank 
-0683 6800c65a fetch 1 ,mem_ssp_enable 
-0684 203a0687 branch p_lpm_dispatch_next ,blank 
-0685 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
-0686 207a0000 rtn blank 
+0672 c6130000 rtnmark1 mark_24g 
+0673 20402afa call lpo_calibration 
+0674 6801c16f fetch 3 ,mem_clks_per_lpo 
+0675 207a0000 rtn blank 
+0676 6800c091 fetch 1 ,mem_lpm_mode 
+0677 207a0000 rtn blank 
+0678 6800c65a fetch 1 ,mem_ssp_enable 
+0679 203a067c branch p_lpm_dispatch_next ,blank 
+067a 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+067b 207a0000 rtn blank 
 
 p_lpm_dispatch_next:
-0687 6800c4c0 fetch 1 ,mem_le_sc_calc 
-0688 247a0000 nrtn blank 
-0689 20402c3a call lpm_check_wake_lock 
-068a 247a0000 nrtn blank 
-068b 6800c040 fetch 1 ,mem_context 
-068c 2fe00e03 compare 3 ,pdata ,0x7 
-068d 2420ab9d nbranch lpm_dispatch_unconn ,true 
-068e 68014042 fetch 2 ,mem_context + coffset_tsniff 
-068f d840ffff arg 0xffff ,temp 
-0690 98467c00 isub temp ,null 
-0691 20628000 rtn zero 
-0692 20202b7d branch lpm_dispatch_next + 9 
+067c 6800c4c0 fetch 1 ,mem_le_sc_calc 
+067d 247a0000 nrtn blank 
+067e 20402c3a call lpm_check_wake_lock 
+067f 247a0000 nrtn blank 
+0680 6800c040 fetch 1 ,mem_context 
+0681 2fe00e03 compare 3 ,pdata ,0x7 
+0682 2420ab9d nbranch lpm_dispatch_unconn ,true 
+0683 68014042 fetch 2 ,mem_context + coffset_tsniff 
+0684 d840ffff arg 0xffff ,temp 
+0685 98467c00 isub temp ,null 
+0686 20628000 rtn zero 
+0687 20202b7d branch lpm_dispatch_next + 9 
 
 p_lpm_set_mult:
-0693 7855fc00 disable wake 
-0694 68008030 fetch 1 ,mem_state 
-0695 c4008000 rtnbit0 state_insniff 
-0696 2436abd0 nbranch lpm_not_match ,match 
-0697 20402bcb call lpm_match 
-0698 680140c1 fetch 2 ,mem_rx_window_sniff 
-0699 6001003e store 2 ,mem_rx_window 
-069a 68008047 fetch 1 ,mem_arq 
-069b c281abde bbit1 wack ,lpm_mult_short 
-069c c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-069d 20405274 call l2cap_malloc_is_fifo_empty 
-069e 243a2bde nbranch lpm_mult_short ,blank 
-069f 205a06a1 call p_lpm_set_attemp_timeout ,blank 
-06a0 20202bbe branch lpm_set_mult + 13 
+0688 7855fc00 disable wake 
+0689 68008030 fetch 1 ,mem_state 
+068a c4008000 rtnbit0 state_insniff 
+068b 2436abd0 nbranch lpm_not_match ,match 
+068c 20402bcb call lpm_match 
+068d 680140c1 fetch 2 ,mem_rx_window_sniff 
+068e 6001003e store 2 ,mem_rx_window 
+068f 68008047 fetch 1 ,mem_arq 
+0690 c281abde bbit1 wack ,lpm_mult_short 
+0691 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0692 20405274 call l2cap_malloc_is_fifo_empty 
+0693 243a2bde nbranch lpm_mult_short ,blank 
+0694 205a0696 call p_lpm_set_attemp_timeout ,blank 
+0695 20202bbe branch lpm_set_mult + 13 
 
 p_lpm_set_attemp_timeout:
-06a1 70008a01 jam 1 ,mem_current_sniff_attempt 
-06a2 70008b00 jam 0 ,mem_current_sniff_timeout 
-06a3 20600000 rtn 
+0696 70008a01 jam 1 ,mem_current_sniff_attempt 
+0697 70008b00 jam 0 ,mem_current_sniff_timeout 
+0698 20600000 rtn 
 
 p_mouse_bb_disconnected:
-06a4 7011c601 jam zcode_01 ,mem_zcode_temp_param0 
-06a5 20200770 branch p_zcode_entrance 
+0699 7011c601 jam zcode_01 ,mem_zcode_temp_param0 
+069a 20200765 branch p_zcode_entrance 
 
 p_hid_rx_process:
-06a6 7011c602 jam zcode_02 ,mem_zcode_temp_param0 
-06a7 20200770 branch p_zcode_entrance 
+069b 7011c602 jam zcode_02 ,mem_zcode_temp_param0 
+069c 20200765 branch p_zcode_entrance 
 
 p_parse_lmp_accepted:
-06a8 68008552 fetch 1 ,mem_rxbuf + 1 
-06a9 600084c9 store 1 ,mem_lmi_accepted_opcode 
-06aa c00986ac beq lmp_switch_req ,p_parse_lmp_accepted_switch 
-06ab 20205db4 branch parse_lmp_accepted + 3 
+069d 68008552 fetch 1 ,mem_rxbuf + 1 
+069e 600084c9 store 1 ,mem_lmi_accepted_opcode 
+069f c00986a1 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+06a0 20205db4 branch parse_lmp_accepted + 3 
 
 p_parse_lmp_accepted_switch:
-06ac 20405dcf call parse_lmp_accepted_switch 
-06ad 704aff01 jam 1 ,mem_bt_rcvd_switch_req_accept 
-06ae 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
-06af 207a0000 rtn blank 
-06b0 704b0102 jam 2 ,mem_bt_send_lmp_setup_complete 
-06b1 20600000 rtn 
+06a1 20405dcf call parse_lmp_accepted_switch 
+06a2 704aff01 jam 1 ,mem_bt_rcvd_switch_req_accept 
+06a3 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
+06a4 207a0000 rtn blank 
+06a5 704b0102 jam 2 ,mem_bt_send_lmp_setup_complete 
+06a6 20600000 rtn 
 
 p_send_lmp:
-06b2 78547c00 disable user 
-06b3 204062c1 call lmo_fifo_process 
-06b4 68008048 fetch 1 ,mem_lmp_to_send 
-06b5 207a0000 rtn blank 
-06b6 c28386bb bbit1 7 ,p_send_lmp_escape 
-06b7 c00186bd beq lmp_accepted ,p_send_lmp_accepted 
-06b8 c01886bf beq lmp_setup_complete ,p_send_lmp_setup_complete 
-06b9 c00b86c1 beq lmp_sniff_req ,p_send_lmp_sniff_req 
-06ba 20206010 branch send_lmp0 
+06a7 78547c00 disable user 
+06a8 204062c1 call lmo_fifo_process 
+06a9 68008048 fetch 1 ,mem_lmp_to_send 
+06aa 207a0000 rtn blank 
+06ab c28386b0 bbit1 7 ,p_send_lmp_escape 
+06ac c00186b2 beq lmp_accepted ,p_send_lmp_accepted 
+06ad c01886b4 beq lmp_setup_complete ,p_send_lmp_setup_complete 
+06ae c00b86b6 beq lmp_sniff_req ,p_send_lmp_sniff_req 
+06af 20206010 branch send_lmp0 
 
 p_send_lmp_escape:
-06bb 7011c610 jam zcode_10 ,mem_zcode_temp_param0 
-06bc 20200770 branch p_zcode_entrance 
+06b0 7011c610 jam zcode_10 ,mem_zcode_temp_param0 
+06b1 20200765 branch p_zcode_entrance 
 
 p_send_lmp_accepted:
-06bd 7011c611 jam zcode_11 ,mem_zcode_temp_param0 
-06be 20200770 branch p_zcode_entrance 
+06b2 7011c611 jam zcode_11 ,mem_zcode_temp_param0 
+06b3 20200765 branch p_zcode_entrance 
 
 p_send_lmp_setup_complete:
-06bf 704b0101 jam 1 ,mem_bt_send_lmp_setup_complete 
-06c0 202061c3 branch send_lmp_setup_complete 
+06b4 704b0101 jam 1 ,mem_bt_send_lmp_setup_complete 
+06b5 202061c3 branch send_lmp_setup_complete 
 
 p_send_lmp_sniff_req:
-06c1 704b0904 jam 4 ,mem_mouse_bt_send_first_package_timer 
-06c2 202061a4 branch send_lmp_sniff_req 
+06b6 704b0904 jam 4 ,mem_mouse_bt_send_first_package_timer 
+06b7 202061a4 branch send_lmp_sniff_req 
 
 p_process_conn_sm:
-06c3 204062bc call lmo_fifo_check 
-06c4 247a0000 nrtn blank 
+06b8 204062bc call lmo_fifo_check 
+06b9 247a0000 nrtn blank 
 
 p_process_conn_sm_continue:
-06c5 68008055 fetch 1 ,mem_conn_sm 
-06c6 207a0000 rtn blank 
-06c7 c00206e5 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
-06c8 c00806ca beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
-06c9 20206320 branch process_conn_sm_continue + 2 
+06ba 68008055 fetch 1 ,mem_conn_sm 
+06bb 207a0000 rtn blank 
+06bc c00206da beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+06bd c00806bf beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+06be 20206320 branch process_conn_sm_continue + 2 
 
 p_host_creat_conn_wait_switch:
-06ca 6800c55b fetch 1 ,mem_switch_flag 
-06cb c1000000 rtneq switch_flag_init 
-06cc c00086ce beq switch_flag_accept ,p_host_create_conn_switch_accept 
-06cd 2020635f branch host_creat_conn_wait_switch + 3 
+06bf 6800c55b fetch 1 ,mem_switch_flag 
+06c0 c1000000 rtneq switch_flag_init 
+06c1 c00086c3 beq switch_flag_accept ,p_host_create_conn_switch_accept 
+06c2 2020635f branch host_creat_conn_wait_switch + 3 
 
 p_host_create_conn_switch_accept:
-06ce 20748000 rtn master 
+06c3 20748000 rtn master 
 
 p_host_create_conn_auth_pair:
-06cf 6800816d fetch 1 ,mem_connection_options 
-06d0 c28006d2 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
-06d1 20206399 branch host_create_conn_auth_pair + 1 
+06c4 6800816d fetch 1 ,mem_connection_options 
+06c5 c28006c7 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+06c6 20206399 branch host_create_conn_auth_pair + 1 
 
 p_host_create_conn_auth_pair_true:
-06d2 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
-06d3 c000e39d beq 1 ,host_create_conn_auth_pair_true 
-06d4 6800c1bd fetch 1 ,mem_link_key_exists 
-06d5 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
-06d6 680084d1 fetch 1 ,mem_lmp_conn_state 
-06d7 c4018000 rtnbit0 sent_setup_complete 
-06d8 c4010000 rtnbit0 received_setup_complete 
-06d9 6800cb00 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-06da 207a0000 rtn blank 
-06db 704b0000 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
-06dc 680204e9 fetch 4 ,mem_aurand_send_delay_time 
-06dd d8400014 arg 20 ,temp 
-06de 98408400 iadd temp ,temp 
-06df 1c427e00 copy clkn_bt ,pdata 
-06e0 98467c00 isub temp ,null 
-06e1 242106e3 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
-06e2 20206349 branch host_create_conn_auth 
+06c7 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
+06c8 c000e39d beq 1 ,host_create_conn_auth_pair_true 
+06c9 6800c1bd fetch 1 ,mem_link_key_exists 
+06ca 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
+06cb 680084d1 fetch 1 ,mem_lmp_conn_state 
+06cc c4018000 rtnbit0 sent_setup_complete 
+06cd c4010000 rtnbit0 received_setup_complete 
+06ce 6800cb00 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+06cf 207a0000 rtn blank 
+06d0 704b0000 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+06d1 680204e9 fetch 4 ,mem_aurand_send_delay_time 
+06d2 d8400014 arg 20 ,temp 
+06d3 98408400 iadd temp ,temp 
+06d4 1c427e00 copy clkn_bt ,pdata 
+06d5 98467c00 isub temp ,null 
+06d6 242106d8 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+06d7 20206349 branch host_create_conn_auth 
 
 p_bt_send_max_slot_req_accept_after_switch_wait:
-06e3 704b0001 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-06e4 20600000 rtn 
+06d8 704b0001 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+06d9 20600000 rtn 
 
 p_host_create_conn_send_conn_req:
-06e5 70480914 jam 20 ,mem_mouse_send_switch_req_timer 
-06e6 2020636f branch host_create_conn_send_conn_req 
+06da 70480914 jam 20 ,mem_mouse_send_switch_req_timer 
+06db 2020636f branch host_create_conn_send_conn_req 
 
 p_check_51cmd_once_continue:
-06e7 204062bc call lmo_fifo_check 
-06e8 243a7ddb nbranch check_51cmd_restore ,blank 
-06e9 68008a99 fetch 1 ,mem_fifo_temp 
-06ea c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
-06eb c00f86ef beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
-06ec c01006f2 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
-06ed c00906fc beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-06ee 20207dca branch check_51cmd_once_continue + 2 
+06dc 204062bc call lmo_fifo_check 
+06dd 243a7ddb nbranch check_51cmd_restore ,blank 
+06de 68008a99 fetch 1 ,mem_fifo_temp 
+06df c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+06e0 c00f86e4 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+06e1 c01006e7 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+06e2 c00906f1 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+06e3 20207dca branch check_51cmd_once_continue + 2 
 
 p_flash_store_le_reconn_info:
-06ef 70018534 jam rec_4_mode ,mem_record_bt_mode 
-06f0 6803044f fetch 6 ,mem_le_plap 
-06f1 202006f4 branch p_flash_store_reconn_info 
+06e4 70018534 jam rec_4_mode ,mem_record_bt_mode 
+06e5 6803044f fetch 6 ,mem_le_plap 
+06e6 202006e9 branch p_flash_store_reconn_info 
 
 p_flash_store_bd_reconn_info:
-06f2 70018533 jam rec_3_mode ,mem_record_bt_mode 
-06f3 68030040 fetch 6 ,mem_plap 
+06e7 70018533 jam rec_3_mode ,mem_record_bt_mode 
+06e8 68030040 fetch 6 ,mem_plap 
 
 p_flash_store_reconn_info:
-06f4 60030186 store 6 ,mem_temp_lap 
+06e9 60030186 store 6 ,mem_temp_lap 
 
 p_mouse_store_remote_bdaddr:
-06f5 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-06f6 c4038000 rtnbit0 mouse_store_eeprom_flag 
-06f7 d8e00007 arg mouse_store_eeprom_flag ,queue 
-06f8 204043d2 call mouse_disable_function_flag 
-06f9 204042e8 call mouse_check_device_addr 
+06ea 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+06eb c4038000 rtnbit0 mouse_store_eeprom_flag 
+06ec d8e00007 arg mouse_store_eeprom_flag ,queue 
+06ed 204043d2 call mouse_disable_function_flag 
+06ee 204042e8 call mouse_check_device_addr 
 
 p_mouse_unplug_clean_bdaddr:
-06fa 204042fb call mouse_before_store_reconn_info 
-06fb 20200325 branch p_mouse_store_flash_device_info 
+06ef 204042fb call mouse_before_store_reconn_info 
+06f0 20200316 branch p_mouse_store_flash_device_info 
 
 p_check_51cmd_ble_update_connect_param:
-06fc 20405890 call le_fifo_check_full 
-06fd 247a0000 nrtn blank 
-06fe 20205abf branch le_l2cap_tx_update_req 
+06f1 20405890 call le_fifo_check_full 
+06f2 247a0000 nrtn blank 
+06f3 20205abf branch le_l2cap_tx_update_req 
 
 power_ctrl_pac_succ_cnt_init:
-06ff 704d8301 jam 1 ,mem_power_ctrl_level 
-0700 704d8000 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0701 20600000 rtn 
+06f4 704d8501 jam 1 ,mem_power_ctrl_level 
+06f5 704d8200 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+06f6 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-0702 6800cd80 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0703 1fe0fe01 increase 1 ,pdata 
-0704 6000cd80 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0705 20600000 rtn 
+06f7 6800cd82 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06f8 1fe0fe01 increase 1 ,pdata 
+06f9 6000cd82 store 1 ,mem_power_ctrl_pac_succ_cnt 
+06fa 20600000 rtn 
 
 power_ctrl_pac_succ_decrs:
-0706 6800cd80 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0707 1fe67c02 sub pdata ,2 ,null 
-0708 2441070e ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-0709 6800cd80 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-070a c1000000 rtneq 0 
-070b 1fe0ffff increase -1 ,pdata 
-070c 6000cd80 store 1 ,mem_power_ctrl_pac_succ_cnt 
-070d 20600000 rtn 
+06fb 6800cd82 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06fc 1fe67c02 sub pdata ,2 ,null 
+06fd 24410703 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+06fe 6800cd82 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+06ff c1000000 rtneq 0 
+0700 1fe0ffff increase -1 ,pdata 
+0701 6000cd82 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0702 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_reinit:
-070e 704d8003 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-070f 20600000 rtn 
+0703 704d8203 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0704 20600000 rtn 
 
 power_ctrl_start:
-0710 68014682 fetch 2 ,mem_ui_state_map 
-0711 c3858000 rtnbit1 ui_state_ble_adv 
-0712 c3838000 rtnbit1 ui_state_bt_reconnect 
-0713 c3830000 rtnbit1 ui_state_bt_discovery 
-0714 da204d09 arg mem_rssi_signal_buf ,rega 
-0715 20400295 call p_rssi_average 
-0716 6008cd81 storet 1 ,mem_rssi_avg_received 
-0717 58000082 setarg rssi_dis_max_24g 
-0718 c513071a bmark1 mark_24g ,power_ctrl_start_next 
-0719 58000080 setarg rssi_dis_max_ble 
+0705 68014682 fetch 2 ,mem_ui_state_map 
+0706 c3858000 rtnbit1 ui_state_ble_adv 
+0707 c3838000 rtnbit1 ui_state_bt_reconnect 
+0708 c3830000 rtnbit1 ui_state_bt_discovery 
+0709 da204d0b arg mem_rssi_signal_buf ,rega 
+070a 20400295 call p_rssi_average 
+070b 6008cd83 storet 1 ,mem_rssi_avg_received 
+070c 58000082 setarg rssi_dis_max_24g 
+070d c513070f bmark1 mark_24g ,power_ctrl_start_next 
+070e 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-071a 98467c00 isub temp ,null 
-071b 24210732 nbranch power_ctrl_txpower_incrs_force ,positive 
-071c 6800cd80 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-071d 1fe67c02 sub pdata ,2 ,null 
-071e 24210722 nbranch power_ctrl_txpower_decrs_check ,positive 
-071f 6800cd80 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0720 c0000733 beq 0 ,power_ctrl_txpower_incrs 
-0721 20600000 rtn 
+070f 98467c00 isub temp ,null 
+0710 24210727 nbranch power_ctrl_txpower_incrs_force ,positive 
+0711 6800cd82 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0712 1fe67c02 sub pdata ,2 ,null 
+0713 24210717 nbranch power_ctrl_txpower_decrs_check ,positive 
+0714 6800cd82 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0715 c0000728 beq 0 ,power_ctrl_txpower_incrs 
+0716 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-0722 6800cd80 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0723 c1990000 rtnne 50 
-0724 704d8000 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0717 6800cd82 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0718 c1990000 rtnne 50 
+0719 704d8200 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-0725 6808cd81 fetcht 1 ,mem_rssi_avg_received 
-0726 58000077 setarg rssi_dis_min_24g 
-0727 c5130729 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-0728 58000075 setarg rssi_dis_min_ble 
+071a 6808cd83 fetcht 1 ,mem_rssi_avg_received 
+071b 58000077 setarg rssi_dis_min_24g 
+071c c513071e bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+071d 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-0729 98467c00 isub temp ,null 
-072a 24610000 nrtn positive 
-072b 6800cd83 fetch 1 ,mem_power_ctrl_level 
-072c c000073a beq 0 ,power_ctrl_decrs_level0 
-072d 1fe0ffff increase -1 ,pdata 
-072e 6000cd83 store 1 ,mem_power_ctrl_level 
-072f c000073a beq 0 ,power_ctrl_decrs_level0 
+071e 98467c00 isub temp ,null 
+071f 24610000 nrtn positive 
+0720 6800cd85 fetch 1 ,mem_power_ctrl_level 
+0721 c000072f beq 0 ,power_ctrl_decrs_level0 
+0722 1fe0ffff increase -1 ,pdata 
+0723 6000cd85 store 1 ,mem_power_ctrl_level 
+0724 c000072f beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-0730 7041de00 jam tx_power_0db ,mem_tx_power 
-0731 20600000 rtn 
+0725 7041de00 jam tx_power_0db ,mem_tx_power 
+0726 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-0732 704d8000 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0727 704d8200 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-0733 6800cd83 fetch 1 ,mem_power_ctrl_level 
-0734 c0010738 beq 2 ,power_ctrl_incrs_level2 
-0735 1fe0fe01 increase 1 ,pdata 
-0736 6000cd83 store 1 ,mem_power_ctrl_level 
-0737 c0008730 beq 1 ,power_ctrl_incrs_level1 
+0728 6800cd85 fetch 1 ,mem_power_ctrl_level 
+0729 c001072d beq 2 ,power_ctrl_incrs_level2 
+072a 1fe0fe01 increase 1 ,pdata 
+072b 6000cd85 store 1 ,mem_power_ctrl_level 
+072c c0008725 beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-0738 7041de02 jam tx_power_5db ,mem_tx_power 
-0739 20600000 rtn 
+072d 7041de02 jam tx_power_5db ,mem_tx_power 
+072e 20600000 rtn 
 
 power_ctrl_decrs_level0:
-073a 7041de04 jam tx_power_f5db ,mem_tx_power 
-073b 20600000 rtn 
+072f 7041de04 jam tx_power_f5db ,mem_tx_power 
+0730 20600000 rtn 
 
 p_set_freq_tx:
-073c 60088017 storet 1 ,mem_last_freq 
-073d 1840a200 add temp ,0 ,rega 
-073e 20402981 call rf_write_freq 
-073f 58000500 setarg param_pll_setup 
-0740 20402a8f call sleep 
+0731 60088017 storet 1 ,mem_last_freq 
+0732 1840a200 add temp ,0 ,rega 
+0733 20402981 call rf_write_freq 
+0734 58000500 setarg param_pll_setup 
+0735 20402a8f call sleep 
 
 p_rf_tx_enable:
-0741 70890601 jam 0x1 ,rfen_adc 
-0742 7089003c jam 0x3c ,rfen_rx 
-0743 708901e0 jam 0xe0 ,rfen_tx 
-0744 2000000a nop 10 
-0745 70890201 jam 0x01 ,rfen_mdm 
-0746 7089023d jam 0x3d ,rfen_mdm 
-0747 2000000a nop 10 
-0748 708903b7 jam 0xb7 ,rfen_sn 
-0749 2000000a nop 10 
-074a 7089027d jam 0x7d ,rfen_mdm 
-074b 6800c1de fetch 1 ,mem_tx_power 
-074c c0010754 beq tx_power_5db ,p_set_tx_power_5db 
-074d c0020759 beq tx_power_f5db ,p_set_tx_power_f5db 
-074e c0100768 beq tx_power_pair ,p_set_tx_power_pair 
+0736 70890601 jam 0x1 ,rfen_adc 
+0737 7089003c jam 0x3c ,rfen_rx 
+0738 708901e0 jam 0xe0 ,rfen_tx 
+0739 2000000a nop 10 
+073a 70890201 jam 0x01 ,rfen_mdm 
+073b 7089023d jam 0x3d ,rfen_mdm 
+073c 2000000a nop 10 
+073d 708903b7 jam 0xb7 ,rfen_sn 
+073e 2000000a nop 10 
+073f 7089027d jam 0x7d ,rfen_mdm 
+0740 6800c1de fetch 1 ,mem_tx_power 
+0741 c0010749 beq tx_power_5db ,p_set_tx_power_5db 
+0742 c002074e beq tx_power_f5db ,p_set_tx_power_f5db 
+0743 c010075d beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-074f 2040075e call p_rx_low_sens 
-0750 708955d0 jam 0xd0 ,0x8955 
-0751 708956e0 jam 0xe0 ,0x8956 
-0752 7089586c jam 0x6c ,0x8958 
-0753 2020294b branch set_tx_power_0db 
+0744 20400753 call p_rx_low_sens 
+0745 708955d0 jam 0xd0 ,0x8955 
+0746 708956e0 jam 0xe0 ,0x8956 
+0747 7089586c jam 0x6c ,0x8958 
+0748 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-0754 20400763 call p_rx_high_sens 
-0755 708955d0 jam 0xd0 ,0x8955 
-0756 708956e0 jam 0xe0 ,0x8956 
-0757 7089583c jam 0x3c ,0x8958 
-0758 20202953 branch set_tx_power_5db 
+0749 20400758 call p_rx_high_sens 
+074a 708955d0 jam 0xd0 ,0x8955 
+074b 708956e0 jam 0xe0 ,0x8956 
+074c 7089583c jam 0x3c ,0x8958 
+074d 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-0759 2040075e call p_rx_low_sens 
-075a 708955d0 jam 0xd0 ,0x8955 
-075b 708956c0 jam 0xc0 ,0x8956 
-075c 7089586c jam 0x6c ,0x8958 
-075d 2020295b branch set_tx_power_f5db 
+074e 20400753 call p_rx_low_sens 
+074f 708955d0 jam 0xd0 ,0x8955 
+0750 708956c0 jam 0xc0 ,0x8956 
+0751 7089586c jam 0x6c ,0x8958 
+0752 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-075e 70894c5b jam 0x5b ,0x894c 
-075f 70894d96 jam 0x96 ,0x894d 
-0760 70894e2c jam 0x2c ,0x894e 
-0761 70894f46 jam 0x46 ,0x894f 
-0762 20600000 rtn 
+0753 70894c5b jam 0x5b ,0x894c 
+0754 70894d96 jam 0x96 ,0x894d 
+0755 70894e2c jam 0x2c ,0x894e 
+0756 70894f46 jam 0x46 ,0x894f 
+0757 20600000 rtn 
 
 p_rx_high_sens:
-0763 70894cfb jam 0xfb ,0x894c 
-0764 70894def jam 0xef ,0x894d 
-0765 70894eec jam 0xec ,0x894e 
-0766 70894f5e jam 0x5e ,0x894f 
-0767 20600000 rtn 
+0758 70894cfb jam 0xfb ,0x894c 
+0759 70894def jam 0xef ,0x894d 
+075a 70894eec jam 0xec ,0x894e 
+075b 70894f5e jam 0x5e ,0x894f 
+075c 20600000 rtn 
 
 p_set_tx_power_pair:
-0768 708956c2 jam 0xc2 ,0x8956 
-0769 708955d0 jam 0xd0 ,0x8955 
-076a 20600000 rtn 
+075d 708956c2 jam 0xc2 ,0x8956 
+075e 708955d0 jam 0xd0 ,0x8955 
+075f 20600000 rtn 
 
 p_shutdown_radio:
-076b 18002a08 force 8 ,radio_ctrl 
-076c 202028fa branch shutdown_radio + 1 
+0760 18002a08 force 8 ,radio_ctrl 
+0761 202028fa branch shutdown_radio + 1 
 
 p_initialize_radio_cont:
-076d 20402978 call initialize_radio_cont + 1 
-076e 70804205 jam clksel_dpll ,core_clksel 
-076f 20600000 rtn 
+0762 20402978 call initialize_radio_cont + 1 
+0763 70804205 jam clksel_dpll ,core_clksel 
+0764 20600000 rtn 
 
 p_zcode_entrance:
-0770 680891c6 fetcht 1 ,mem_zcode_temp_param0 
-0771 18518400 rshift4 temp ,temp 
-0772 6800cb52 fetch 1 ,mem_zcode_current_number 
-0773 98467c00 isub temp ,null 
-0774 2022878f branch p_zcode_run ,zero 
-0775 6008cb52 storet 1 ,mem_zcode_current_number 
-0776 18408401 increase 1 ,temp 
-0777 58000100 setarg zcode_buff_size 
-0778 984f8400 imul32 temp ,temp 
-0779 6801cb53 fetch 3 ,mem_xip_flash_offset 
-077a 98467e00 isub temp ,pdata 
-077b 6809cb56 fetcht 3 ,mem_flash_start_addr 
-077c 9840fe00 iadd temp ,pdata 
-077d 1fe0fffb increase -5 ,pdata 
-077e 6001cb59 store 3 ,mem_flash_address 
-077f 20400364 call p_flash_release_deep_power_down 
+0765 680891c6 fetcht 1 ,mem_zcode_temp_param0 
+0766 18518400 rshift4 temp ,temp 
+0767 6800cb52 fetch 1 ,mem_zcode_current_number 
+0768 98467c00 isub temp ,null 
+0769 20228784 branch p_zcode_run ,zero 
+076a 6008cb52 storet 1 ,mem_zcode_current_number 
+076b 18408401 increase 1 ,temp 
+076c 58000100 setarg zcode_buff_size 
+076d 984f8400 imul32 temp ,temp 
+076e 6801cb53 fetch 3 ,mem_xip_flash_offset 
+076f 98467e00 isub temp ,pdata 
+0770 6809cb56 fetcht 3 ,mem_flash_start_addr 
+0771 9840fe00 iadd temp ,pdata 
+0772 1fe0fffb increase -5 ,pdata 
+0773 6001cb59 store 3 ,mem_flash_address 
+0774 20400355 call p_flash_release_deep_power_down 
 
 p_zcode_read_loop:
-0780 6801cb59 fetch 3 ,mem_flash_address 
-0781 d8400100 arg zcode_buff_size ,temp 
-0782 da201f00 arg mem_zcode_buff ,rega 
-0783 20406562 call spid_read_flash 
-0784 68021f00 fetch 4 ,mem_zcode_buff 
-0785 680a4b5c fetcht 4 ,mem_zcode_head 
-0786 98467c00 isub temp ,null 
-0787 24228780 nbranch p_zcode_read_loop ,zero 
-0788 20400333 call p_mouse_spi_init 
-0789 58001f00 setarg mem_zcode_buff 
-078a 60014199 store 2 ,mem_patch_ptr 
-078b 70419b40 jam zcode_code_size ,mem_patch_len 
-078c 204064ca call load_ucode 
-078d 58000000 setarg 0 
-078e 60024199 store 4 ,mem_patch_ptr 
+0775 6801cb59 fetch 3 ,mem_flash_address 
+0776 d8400100 arg zcode_buff_size ,temp 
+0777 da201f00 arg mem_zcode_buff ,rega 
+0778 20406562 call spid_read_flash 
+0779 68021f00 fetch 4 ,mem_zcode_buff 
+077a 680a4b5c fetcht 4 ,mem_zcode_head 
+077b 98467c00 isub temp ,null 
+077c 24228775 nbranch p_zcode_read_loop ,zero 
+077d 20400324 call p_mouse_spi_init 
+077e 58001f00 setarg mem_zcode_buff 
+077f 60014199 store 2 ,mem_patch_ptr 
+0780 70419b40 jam zcode_code_size ,mem_patch_len 
+0781 204064ca call load_ucode 
+0782 58000000 setarg 0 
+0783 60024199 store 4 ,mem_patch_ptr 
 
 p_zcode_run:
-078f 680091c6 fetch 1 ,mem_zcode_temp_param0 
-0790 20200001 branch p_zcode 
+0784 680091c6 fetch 1 ,mem_zcode_temp_param0 
+0785 20200001 branch p_zcode 
 
 p_drawing_optima:
-0791 6802469b fetch 4 ,mem_mouse_x 
-0792 207a0000 rtn blank 
-0793 204007f1 call p_data_abs_check 
-0794 58000006 setarg 0x06 
-0795 204007e4 call p_data_greater_than_check 
-0796 58000003 setarg 0x03 
-0797 204007ea call p_data_less_than_check 
-0798 6800cb0b fetch 1 ,mem_mouse_asm_flag 
-0799 c000879d beq 1 ,p_drawing_optima_modify 
+0786 6802469b fetch 4 ,mem_mouse_x 
+0787 207a0000 rtn blank 
+0788 204007e6 call p_data_abs_check 
+0789 58000006 setarg 0x06 
+078a 204007d9 call p_data_greater_than_check 
+078b 58000003 setarg 0x03 
+078c 204007df call p_data_less_than_check 
+078d 6800cb0b fetch 1 ,mem_mouse_asm_flag 
+078e c0008792 beq 1 ,p_drawing_optima_modify 
 
 p_drawing_optima_init:
-079a df200005 arg 5 ,loopcnt 
-079b d8a04b0b arg mem_mouse_asm_flag ,contw 
-079c 20207ed4 branch clear_mem 
+078f df200005 arg 5 ,loopcnt 
+0790 d8a04b0b arg mem_mouse_asm_flag ,contw 
+0791 20207ed4 branch clear_mem 
 
 p_drawing_optima_modify:
-079d 68014b0c fetch 2 ,mem_mouse_x_pre 
-079e 600111be store 2 ,mem_data_pre 
-079f 6801469b fetch 2 ,mem_mouse_x 
-07a0 600111c0 store 2 ,mem_data_current 
-07a1 204007b0 call p_drawing_optima_data_x 
-07a2 680111be fetch 2 ,mem_data_pre 
-07a3 60014b0c store 2 ,mem_mouse_x_pre 
-07a4 680111c0 fetch 2 ,mem_data_current 
-07a5 6001469b store 2 ,mem_mouse_x 
-07a6 68014b0e fetch 2 ,mem_mouse_y_pre 
-07a7 600111be store 2 ,mem_data_pre 
-07a8 6801469d fetch 2 ,mem_mouse_y 
-07a9 600111c0 store 2 ,mem_data_current 
-07aa 204007b8 call p_drawing_optima_data_y 
-07ab 680111be fetch 2 ,mem_data_pre 
-07ac 60014b0e store 2 ,mem_mouse_y_pre 
-07ad 680111c0 fetch 2 ,mem_data_current 
-07ae 6001469d store 2 ,mem_mouse_y 
-07af 20600000 rtn 
+0792 68014b0c fetch 2 ,mem_mouse_x_pre 
+0793 600111be store 2 ,mem_data_pre 
+0794 6801469b fetch 2 ,mem_mouse_x 
+0795 600111c0 store 2 ,mem_data_current 
+0796 204007a5 call p_drawing_optima_data_x 
+0797 680111be fetch 2 ,mem_data_pre 
+0798 60014b0c store 2 ,mem_mouse_x_pre 
+0799 680111c0 fetch 2 ,mem_data_current 
+079a 6001469b store 2 ,mem_mouse_x 
+079b 68014b0e fetch 2 ,mem_mouse_y_pre 
+079c 600111be store 2 ,mem_data_pre 
+079d 6801469d fetch 2 ,mem_mouse_y 
+079e 600111c0 store 2 ,mem_data_current 
+079f 204007ad call p_drawing_optima_data_y 
+07a0 680111be fetch 2 ,mem_data_pre 
+07a1 60014b0e store 2 ,mem_mouse_y_pre 
+07a2 680111c0 fetch 2 ,mem_data_current 
+07a3 6001469d store 2 ,mem_mouse_y 
+07a4 20600000 rtn 
 
 p_drawing_optima_data_x:
-07b0 680111be fetch 2 ,mem_data_pre 
-07b1 680911c0 fetcht 2 ,mem_data_current 
-07b2 9840fe00 iadd temp ,pdata 
-07b3 6808cbbe fetcht 1 ,mem_mouse_data_xtemp 
-07b4 9840fe00 iadd temp ,pdata 
-07b5 1fe10401 and pdata ,0x01 ,temp 
-07b6 6008cbbe storet 1 ,mem_mouse_data_xtemp 
-07b7 202007c0 branch p_drawing_optima_data 
+07a5 680111be fetch 2 ,mem_data_pre 
+07a6 680911c0 fetcht 2 ,mem_data_current 
+07a7 9840fe00 iadd temp ,pdata 
+07a8 6808cbbe fetcht 1 ,mem_mouse_data_xtemp 
+07a9 9840fe00 iadd temp ,pdata 
+07aa 1fe10401 and pdata ,0x01 ,temp 
+07ab 6008cbbe storet 1 ,mem_mouse_data_xtemp 
+07ac 202007b5 branch p_drawing_optima_data 
 
 p_drawing_optima_data_y:
-07b8 680111be fetch 2 ,mem_data_pre 
-07b9 680911c0 fetcht 2 ,mem_data_current 
-07ba 9840fe00 iadd temp ,pdata 
-07bb 6808cbbf fetcht 1 ,mem_mouse_data_ytemp 
-07bc 9840fe00 iadd temp ,pdata 
-07bd 1fe10401 and pdata ,0x01 ,temp 
-07be 6008cbbf storet 1 ,mem_mouse_data_ytemp 
-07bf 202007c0 branch p_drawing_optima_data 
+07ad 680111be fetch 2 ,mem_data_pre 
+07ae 680911c0 fetcht 2 ,mem_data_current 
+07af 9840fe00 iadd temp ,pdata 
+07b0 6808cbbf fetcht 1 ,mem_mouse_data_ytemp 
+07b1 9840fe00 iadd temp ,pdata 
+07b2 1fe10401 and pdata ,0x01 ,temp 
+07b3 6008cbbf storet 1 ,mem_mouse_data_ytemp 
+07b4 202007b5 branch p_drawing_optima_data 
 
 p_drawing_optima_data:
-07c0 600191c2 store 3 ,mem_data_sum 
-07c1 2feffe10 isolate1 16 ,pdata 
-07c2 202087ca branch p_data_sum_overflow ,true 
-07c3 680091c3 fetch 1 ,mem_data_sum + 1 
-07c4 c07f87d1 beq 0xff ,p_data_sum_n 
-07c5 680091c2 fetch 1 ,mem_data_sum 
+07b5 600191c2 store 3 ,mem_data_sum 
+07b6 2feffe10 isolate1 16 ,pdata 
+07b7 202087bf branch p_data_sum_overflow ,true 
+07b8 680091c3 fetch 1 ,mem_data_sum + 1 
+07b9 c07f87c6 beq 0xff ,p_data_sum_n 
+07ba 680091c2 fetch 1 ,mem_data_sum 
 
 p_data_store_pre:
-07c6 1fe37e00 rshift pdata ,pdata 
-07c7 600111be store 2 ,mem_data_pre 
-07c8 600111c0 store 2 ,mem_data_current 
-07c9 20600000 rtn 
+07bb 1fe37e00 rshift pdata ,pdata 
+07bc 600111be store 2 ,mem_data_pre 
+07bd 600111c0 store 2 ,mem_data_current 
+07be 20600000 rtn 
 
 p_data_sum_overflow:
-07ca 680091c3 fetch 1 ,mem_data_sum + 1 
-07cb c00007ce beq 0 ,p_data_sum_overflow_p 
-07cc 680191c2 fetch 3 ,mem_data_sum 
-07cd 202007c6 branch p_data_store_pre 
+07bf 680091c3 fetch 1 ,mem_data_sum + 1 
+07c0 c00007c3 beq 0 ,p_data_sum_overflow_p 
+07c1 680191c2 fetch 3 ,mem_data_sum 
+07c2 202007bb branch p_data_store_pre 
 
 p_data_sum_overflow_p:
-07ce 7011c400 jam 0 ,mem_data_sum + 2 
-07cf 680091c2 fetch 1 ,mem_data_sum 
-07d0 202007c6 branch p_data_store_pre 
+07c3 7011c400 jam 0 ,mem_data_sum + 2 
+07c4 680091c2 fetch 1 ,mem_data_sum 
+07c5 202007bb branch p_data_store_pre 
 
 p_data_sum_n:
-07d1 680091c2 fetch 1 ,mem_data_sum 
-07d2 204007dc call p_pdata_get_half 
-07d3 600091be store 1 ,mem_data_pre 
-07d4 600091c0 store 1 ,mem_data_current 
-07d5 203a07da branch p_data_zero ,blank 
-07d6 580000ff setarg 0xff 
+07c6 680091c2 fetch 1 ,mem_data_sum 
+07c7 204007d1 call p_pdata_get_half 
+07c8 600091be store 1 ,mem_data_pre 
+07c9 600091c0 store 1 ,mem_data_current 
+07ca 203a07cf branch p_data_zero ,blank 
+07cb 580000ff setarg 0xff 
 
 p_data_set_direction:
-07d7 600091bf store 1 ,mem_data_pre + 1 
-07d8 600091c1 store 1 ,mem_data_current + 1 
-07d9 20600000 rtn 
+07cc 600091bf store 1 ,mem_data_pre + 1 
+07cd 600091c1 store 1 ,mem_data_current + 1 
+07ce 20600000 rtn 
 
 p_data_zero:
-07da 58000000 setarg 0 
-07db 202007d7 branch p_data_set_direction 
+07cf 58000000 setarg 0 
+07d0 202007cc branch p_data_set_direction 
 
 p_pdata_get_half:
-07dc 1fe67e00 sub pdata ,0 ,pdata 
-07dd 60008aae store 1 ,mem_rega 
-07de 68008aae fetch 1 ,mem_rega 
-07df 1fe37e00 rshift pdata ,pdata 
-07e0 60008aae store 1 ,mem_rega 
-07e1 68008aae fetch 1 ,mem_rega 
-07e2 1fe67e00 sub pdata ,0 ,pdata 
-07e3 20600000 rtn 
+07d1 1fe67e00 sub pdata ,0 ,pdata 
+07d2 60008aae store 1 ,mem_rega 
+07d3 68008aae fetch 1 ,mem_rega 
+07d4 1fe37e00 rshift pdata ,pdata 
+07d5 60008aae store 1 ,mem_rega 
+07d6 68008aae fetch 1 ,mem_rega 
+07d7 1fe67e00 sub pdata ,0 ,pdata 
+07d8 20600000 rtn 
 
 p_data_greater_than_check:
-07e4 9a267c00 isub rega ,null 
-07e5 242107ef nbranch p_enable_asm ,positive 
-07e6 9a467c00 isub regb ,null 
-07e7 242107ef nbranch p_enable_asm ,positive 
+07d9 9a267c00 isub rega ,null 
+07da 242107e4 nbranch p_enable_asm ,positive 
+07db 9a467c00 isub regb ,null 
+07dc 242107e4 nbranch p_enable_asm ,positive 
 
 p_disable_asm:
-07e8 704b0b00 jam 0 ,mem_mouse_asm_flag 
-07e9 20600000 rtn 
+07dd 704b0b00 jam 0 ,mem_mouse_asm_flag 
+07de 20600000 rtn 
 
 p_data_less_than_check:
-07ea 9a267c00 isub rega ,null 
-07eb 24610000 nrtn positive 
-07ec 9a467c00 isub regb ,null 
-07ed 24610000 nrtn positive 
-07ee 202007e8 branch p_disable_asm 
+07df 9a267c00 isub rega ,null 
+07e0 24610000 nrtn positive 
+07e1 9a467c00 isub regb ,null 
+07e2 24610000 nrtn positive 
+07e3 202007dd branch p_disable_asm 
 
 p_enable_asm:
-07ef 704b0b01 jam 1 ,mem_mouse_asm_flag 
-07f0 20600000 rtn 
+07e4 704b0b01 jam 1 ,mem_mouse_asm_flag 
+07e5 20600000 rtn 
 
 p_data_abs_check:
-07f1 6801469b fetch 2 ,mem_mouse_x 
-07f2 204007f8 call p_data_abs 
-07f3 1fe22200 copy pdata ,rega 
-07f4 6801469d fetch 2 ,mem_mouse_y 
-07f5 204007f8 call p_data_abs 
-07f6 1fe22400 copy pdata ,regb 
-07f7 20600000 rtn 
+07e6 6801469b fetch 2 ,mem_mouse_x 
+07e7 204007ed call p_data_abs 
+07e8 1fe22200 copy pdata ,rega 
+07e9 6801469d fetch 2 ,mem_mouse_y 
+07ea 204007ed call p_data_abs 
+07eb 1fe22400 copy pdata ,regb 
+07ec 20600000 rtn 
 
 p_data_abs:
-07f8 600111c0 store 2 ,mem_data_current 
-07f9 680091c1 fetch 1 ,mem_data_current + 1 
-07fa c07f87fe beq 0xff ,p_data_reversal 
-07fb 680091c0 fetch 1 ,mem_data_current 
+07ed 600111c0 store 2 ,mem_data_current 
+07ee 680091c1 fetch 1 ,mem_data_current + 1 
+07ef c07f87f3 beq 0xff ,p_data_reversal 
+07f0 680091c0 fetch 1 ,mem_data_current 
 
 p_data_abs_store:
-07fc 1fe17eff and_into 0xff ,pdata 
-07fd 20600000 rtn 
+07f1 1fe17eff and_into 0xff ,pdata 
+07f2 20600000 rtn 
 
 p_data_reversal:
-07fe 680111c0 fetch 2 ,mem_data_current 
-07ff 1fe67e00 sub pdata ,0 ,pdata 
-0800 202007fc branch p_data_abs_store 
+07f3 680111c0 fetch 2 ,mem_data_current 
+07f4 1fe67e00 sub pdata ,0 ,pdata 
+07f5 202007f1 branch p_data_abs_store 
 org 0x2000
 
 start:
@@ -35485,7 +35474,7 @@
 10012 68014682  fetch 2 ,mem_ui_state_map
 10013 c28642b0  bbit1 ui_state_btn_down ,mouse_start_discovery
 10014 204033a9  call app_disconn_reason_clear
-10015 20400546  call p_mouse_check_key_gpio
+10015 2040053b  call p_mouse_check_key_gpio
 10016 c003801a  beq mouse_lmr_button ,z_mouse_null_enter_hibernate_enable
 10017 6800c6b6  fetch 1 ,mem_mouse_dpi_button_state
 10018 203a001a  branch z_mouse_null_enter_hibernate_enable ,blank
@@ -35537,7 +35526,7 @@
 
 z_hid_rx_process_hid_control:
 1003a 18427e00  copy temp ,pdata
-1003b c0028442  beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug
+1003b c0028433  beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug
 1003c 20204d41  branch hid_rx_process_hid_control + 2
 org 0x20001
 
@@ -35552,10 +35541,10 @@
 20006 7047a101  jam 1 ,mem_mouse_le_reconnect_flag
 20007 680146a8  fetch 2 ,mem_mouse_direct_timeout
 20008 600146ae  store 2 ,mem_mouse_direct_timer
-20009 20400499  call p_mouse_store_eeprom_enable
+20009 2040048b  call p_mouse_store_eeprom_enable
 2000a 20403418  call app_lpm_mult_disable
 2000b d8c04390  arg mem_le_scan_data ,contr
-2000c 20400495  call p_le_adv_data_update
+2000c 20400487  call p_le_adv_data_update
 2000d 20207df4  branch check_51cmd_adv
 
 z_send_lmp_escape:
@@ -35678,7 +35667,7 @@
 40002 20600000  rtn
 
 z_mouse_start_discovery:
-40003 204002cc  call p_mouse_tx_power_init
+40003 204002cd  call p_mouse_tx_power_init
 40004 704b6e00  jam 0 ,mem_le_send_security_request_flag
 40005 704b6b01  jam 1 ,mem_mouse_start_discovery_enable
 40006 70472001  jam mode_bt_device1 ,mem_device_flag
@@ -35687,7 +35676,7 @@
 z_mouse_start_discovery_norandom:
 40008 68034b62  fetch 6 ,mem_le_normal_lap
 40009 600344a0  store 6 ,mem_le_lap
-4000a 20400366  call p_mouse_fast_conn_disable
+4000a 20400357  call p_mouse_fast_conn_disable
 4000b 20403418  call app_lpm_mult_disable
 4000c 68014687  fetch 2 ,mem_discovery_timeout
 4000d 600146ac  store 2 ,mem_mouse_discovery_timer
@@ -35695,9 +35684,9 @@
 4000f 58000000  setarg 0
 40010 600146b0  store 2 ,mem_mouse_no_data_timer
 40011 600146ae  store 2 ,mem_mouse_direct_timer
-40012 20400499  call p_mouse_store_eeprom_enable
+40012 2040048b  call p_mouse_store_eeprom_enable
 40013 204043ca  call mouse_bt_discovery_button_down_disable
-40014 20400355  call p_mouse_load_flash_device_info
+40014 20400346  call p_mouse_load_flash_device_info
 40015 6800c210  fetch 1 ,mem_xrecord_mode
 40016 1fe67c33  sub pdata ,rec_3_mode ,null
 40017 2042801e  call z3_check_51cmd_adv ,zero
@@ -35711,66 +35700,75 @@
 z3_check_51cmd_adv:
 4001e 68034b62  fetch 6 ,mem_le_normal_lap
 4001f 600344a0  store 6 ,mem_le_lap
-40020 20400491  call p_mouse_le_adv_data_update
+40020 20400483  call p_mouse_le_adv_data_update
 40021 20207df4  branch check_51cmd_adv
 org 0x50001
 
 z_entrance4:
 50001 c0200005  beq zcode_40 ,z_g24_start_24g_mode
-50002 c0208017  beq zcode_41 ,z_g24_auto_pair_start
-50003 c021001f  beq zcode_42 ,z_mouse_24g_pairing_button
+50002 c0208019  beq zcode_41 ,z_g24_auto_pair_start
+50003 c0210026  beq zcode_42 ,z_mouse_24g_pairing_button
 50004 20600000  rtn
 
 z_g24_start_24g_mode:
-50005 2040000e  call z_g24_factory_check
-50006 2034037a  branch p_g24_auto_pair_start ,user
+50005 20400010  call z_g24_factory_check
+50006 2034036b  branch p_g24_auto_pair_start ,user
 50007 79200026  set1 mark_24g ,mark
-50008 6800cd9b  fetch 1 ,mem_24g_conn_sm
+50008 6800cd9d  fetch 1 ,mem_24g_conn_sm
 50009 79207e02  set1 state_24g_reconn ,pdata
-5000a 6000cd9b  store 1 ,mem_24g_conn_sm
+5000a 6000cd9d  store 1 ,mem_24g_conn_sm
 5000b 204001dc  call p_g24_syncword_crc8
 5000c 2040015e  call p_g24_ch
-5000d 2020001b  branch z_g24_auto_pair_timeout_init
+5000d 6800c241  fetch 1 ,mem_power_on_flag
+5000e c281001d  bbit1 2 ,z_g24_auto_fail_timeout_init
+5000f 20200022  branch z_g24_auto_pair_timeout_init
 
 z_g24_factory_check:
-5000e df200002  arg 2 ,loopcnt
-5000f d8c04c6f  arg mem_24g_addr ,contr
-50010 20407fe7  call enable_user
-50011 5800ffff  setarg 0xffff
+50010 df200002  arg 2 ,loopcnt
+50011 d8c04c71  arg mem_24g_addr ,contr
+50012 20407fe7  call enable_user
+50013 5800ffff  setarg 0xffff
 
 z4_pdata_0xff_check_loop:
-50012 e8c90000  ifetcht 2 ,contr
-50013 98467c00  isub temp ,null
-50014 2442ffe9  ncall disable_user ,zero
-50015 c2000012  loop z4_pdata_0xff_check_loop
-50016 20600000  rtn
+50014 e8c90000  ifetcht 2 ,contr
+50015 98467c00  isub temp ,null
+50016 2442ffe9  ncall disable_user ,zero
+50017 c2000014  loop z4_pdata_0xff_check_loop
+50018 20600000  rtn
 
 z_g24_auto_pair_start:
-50017 79200026  set1 mark_24g ,mark
-50018 6800cd9b  fetch 1 ,mem_24g_conn_sm
-50019 79207e01  set1 state_24g_pair ,pdata
-5001a 6000cd9b  store 1 ,mem_24g_conn_sm
+50019 79200026  set1 mark_24g ,mark
+5001a 6800cd9d  fetch 1 ,mem_24g_conn_sm
+5001b 79207e01  set1 state_24g_pair ,pdata
+5001c 6000cd9d  store 1 ,mem_24g_conn_sm
+
+z_g24_auto_fail_timeout_init:
+5001d 20400458  call p_mouse_sensor_powerdown
+5001e 58000708  setarg g24_disconn_nodata_timer
+5001f 60014bc1  store 2 ,mem_24g_stop_g24_pair_mode_timerout
+50020 704d9400  jam 0 ,mem_24g_stop_g24_mode
+50021 20600000  rtn
 
 z_g24_auto_pair_timeout_init:
-5001b 5800003c  setarg g24_first_disconn_nodata_timer
-5001c 60014d93  store 2 ,mem_24g_stop_g24_mode_timeout
-5001d 704d9200  jam 0 ,mem_24g_stop_g24_mode
-5001e 20600000  rtn
+50022 5800001e  setarg g24_first_disconn_nodata_timer
+50023 60014d95  store 2 ,mem_24g_stop_g24_mode_timeout
+50024 704d9400  jam 0 ,mem_24g_stop_g24_mode
+50025 20600000  rtn
 
 z_mouse_24g_pairing_button:
-5001f 680246d3  fetch mouse_flag_len ,mem_mouse_flag
-50020 c4088000  rtnbit0 mouse_enable_24g
-50021 c3818000  rtnbit1 mosue_24g_pairing_flag
-50022 c6130000  rtnmark1 mark_24g
-50023 20404482  call mouse_devce_led_off
-50024 d8e00003  arg mosue_24g_pairing_flag ,queue
-50025 204043ce  call mouse_enable_function_flag
-50026 58000000  setarg 0
-50027 600146ae  store 2 ,mem_mouse_direct_timer
-50028 6000c6b4  store 1 ,mem_mouse_send_blank_timer
-50029 60014c74  store 2 ,mem_24g_check_dongle_times
-5002a 204042ca  call mouse_stop_discovery
-5002b 2020037a  branch p_g24_auto_pair_start
+50026 680246d3  fetch mouse_flag_len ,mem_mouse_flag
+50027 c4088000  rtnbit0 mouse_enable_24g
+50028 c3818000  rtnbit1 mosue_24g_pairing_flag
+50029 c6130000  rtnmark1 mark_24g
+5002a 20404482  call mouse_devce_led_off
+5002b d8e00003  arg mosue_24g_pairing_flag ,queue
+5002c 204043ce  call mouse_enable_function_flag
+5002d 58000000  setarg 0
+5002e 600146ae  store 2 ,mem_mouse_direct_timer
+5002f 6000c6b4  store 1 ,mem_mouse_send_blank_timer
+50030 60014c76  store 2 ,mem_24g_check_dongle_times
+50031 204042ca  call mouse_stop_discovery
+50032 2020036b  branch p_g24_auto_pair_start
 org 0x60001
 
 z_entrance5:
@@ -35783,14 +35781,14 @@
 60005 204043d2  call mouse_disable_function_flag
 60006 7046a700  jam 0 ,mem_mouse_move_flag
 60007 2040405d  call mouse_read_sensor_common
-60008 204002cc  call p_mouse_tx_power_init
+60008 204002cd  call p_mouse_tx_power_init
 60009 20200011  branch z_mouse_24g_attempt_success
 
 z_mouse_24g_attempt_fail:
-6000a 704d8700  jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
-6000b 204002cc  call p_mouse_tx_power_init
+6000a 704d8900  jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+6000b 204002cd  call p_mouse_tx_power_init
 6000c 204001f3  call p_g24_check_51cmd_stop_24g
-6000d 20400355  call p_mouse_load_flash_device_info
+6000d 20400346  call p_mouse_load_flash_device_info
 6000e 6800cb76  fetch 1 ,mem_mouse_latest_mode
 6000f c1810000  rtnne latest_mode_24g
 60010 2020340a  branch app_enter_hibernate
@@ -35802,45 +35800,45 @@
 60014 6001cb68  store 3 ,mem_le_switch_adv_flag
 60015 204041c6  call mouse_le_bb_event_connected + 3
 60016 2040001e  call z_g24_auto_pair_timeout_clear
-60017 20400503  call p_mouse_null_enter_hibernate_disable
+60017 204004f8  call p_mouse_null_enter_hibernate_disable
 60018 20403f8d  call mouse_no_data_timer_init
-60019 68024c6f  fetch 4 ,mem_24g_addr
+60019 68024c71  fetch 4 ,mem_24g_addr
 6001a 6002477b  store 4 ,mem_mouse_24g_addr
 6001b 20404366  call mouse_cheak_select_24gdevice
 6001c 704b7602  jam latest_mode_24g ,mem_mouse_latest_mode
-6001d 20200325  branch p_mouse_store_flash_device_info
+6001d 20200316  branch p_mouse_store_flash_device_info
 
 z_g24_auto_pair_timeout_clear:
 6001e 58000000  setarg 0
-6001f 6001cd92  store 3 ,mem_24g_stop_g24_mode
+6001f 6001cd94  store 3 ,mem_24g_stop_g24_mode
 60020 20600000  rtn
 
 z_g24_reconn_dispatch:
-60021 6800cd92  fetch 1 ,mem_24g_stop_g24_mode
+60021 6800cd94  fetch 1 ,mem_24g_stop_g24_mode
 60022 c000add4  beq 1 ,g24_stop_24g_mode
 60023 20400030  call z_g24_tx_attemp_data_prep
 60024 204001aa  call p_g24_transmit_receive_ack
 60025 242c015e  nbranch p_g24_ch ,sync
 60026 2437815e  nbranch p_g24_ch ,user3
-60027 6800cd9b  fetch 1 ,mem_24g_conn_sm
+60027 6800cd9d  fetch 1 ,mem_24g_conn_sm
 60028 793ffe02  set0 state_24g_reconn ,pdata
-60029 6000cd9b  store 1 ,mem_24g_conn_sm
+60029 6000cd9d  store 1 ,mem_24g_conn_sm
 
 z_g24_tx_attemp_dongle_succ:
 6002a 704b4200  jam 0 ,mem_mouse_long_mult_flag
 6002b 20402f20  call g24_app_tx_attempt_success
 6002c 204001a7  call p_g24_txbuf_clear
-6002d 2020037f  branch p_g24_transmit_by_interrupt_enable
+6002d 20200370  branch p_g24_transmit_by_interrupt_enable
 
 z_g24_store_dongle_addr:
-6002e 68024c27  fetch 4 ,mem_24g_rxpayload + 2
+6002e 68024c29  fetch 4 ,mem_24g_rxpayload + 2
 6002f 202001db  branch p_g24_update_addr_and_synccrc8
 
 z_g24_tx_attemp_data_prep:
 60030 70119eff  jam 0xff ,mem_24g_common_temp
-60031 6800cc48  fetch 1 ,mem_24g_data_type
+60031 6800cc4a  fetch 1 ,mem_24g_data_type
 60032 6000919f  store 1 ,mem_24g_common_temp + 1
-60033 68024c7e  fetch 4 ,mem_24g_device_addr
+60033 68024c80  fetch 4 ,mem_24g_device_addr
 60034 600211a0  store 4 ,mem_24g_common_temp + 2
 60035 d8400006  arg 6 ,temp
 60036 da20119e  arg mem_24g_common_temp ,rega
@@ -35851,12 +35849,12 @@
 z_entrance6:
 
 z_g24_pair_dispatch:
-70001 6800cd92  fetch 1 ,mem_24g_stop_g24_mode
+70001 6800cd94  fetch 1 ,mem_24g_stop_g24_mode
 70002 c000add4  beq 1 ,g24_stop_24g_mode
 70003 70119eff  jam 0xff ,mem_24g_common_temp
-70004 6800cc48  fetch 1 ,mem_24g_data_type
+70004 6800cc4a  fetch 1 ,mem_24g_data_type
 70005 6000919f  store 1 ,mem_24g_common_temp + 1
-70006 68024c7e  fetch 4 ,mem_24g_device_addr
+70006 68024c80  fetch 4 ,mem_24g_device_addr
 70007 600211a0  store 4 ,mem_24g_common_temp + 2
 70008 d8400006  arg 6 ,temp
 70009 da20119e  arg mem_24g_common_temp ,rega
@@ -35866,52 +35864,52 @@
 7000d 242c0026  nbranch z_g24_pair_txdata_retry ,sync
 7000e 24378026  nbranch z_g24_pair_txdata_retry ,user3
 7000f 204001d0  call p_g24_ackpayload_parse
-70010 68024c6f  fetch 4 ,mem_24g_addr
-70011 680a4d8c  fetcht 4 ,mem_24g_allpowerful_addr
+70010 68024c71  fetch 4 ,mem_24g_addr
+70011 680a4d8e  fetcht 4 ,mem_24g_allpowerful_addr
 70012 98467c00  isub temp ,null
 70013 20228016  branch z_g24_auto_pair_skip_rx_length ,zero
-70014 6800cc45  fetch 1 ,mem_24g_rxdata_length
+70014 6800cc47  fetch 1 ,mem_24g_rxdata_length
 70015 c1840000  rtnne bind_ackpayload_length
 
 z_g24_auto_pair_skip_rx_length:
-70016 704d9b00  jam 0 ,mem_24g_conn_sm
-70017 204002cc  call p_mouse_tx_power_init
-70018 68024c6f  fetch 4 ,mem_24g_addr
-70019 680a4c53  fetcht 4 ,mem_24g_paring_addr
+70016 704d9d00  jam 0 ,mem_24g_conn_sm
+70017 204002cd  call p_mouse_tx_power_init
+70018 68024c71  fetch 4 ,mem_24g_addr
+70019 680a4c55  fetcht 4 ,mem_24g_paring_addr
 7001a 98467c00  isub temp ,null
 7001b 202281e9  branch p_g24_start_pairing_sm1 ,zero
-7001c 68024c6f  fetch 4 ,mem_24g_addr
-7001d 680a4c7e  fetcht 4 ,mem_24g_device_addr
+7001c 68024c71  fetch 4 ,mem_24g_addr
+7001d 680a4c80  fetcht 4 ,mem_24g_device_addr
 7001e 98467c00  isub temp ,null
 7001f 20428024  call z7_g24_store_dongle_addr ,zero
 70020 704b4200  jam 0 ,mem_mouse_long_mult_flag
 70021 20402f20  call g24_app_tx_attempt_success
 70022 204001a7  call p_g24_txbuf_clear
-70023 2020037f  branch p_g24_transmit_by_interrupt_enable
+70023 20200370  branch p_g24_transmit_by_interrupt_enable
 
 z7_g24_store_dongle_addr:
-70024 68024c27  fetch 4 ,mem_24g_rxpayload + 2
+70024 68024c29  fetch 4 ,mem_24g_rxpayload + 2
 70025 202001db  branch p_g24_update_addr_and_synccrc8
 
 z_g24_pair_txdata_retry:
 
 z_g24_pair_txdata_switch:
-70026 6800cd85  fetch 1 ,mem_24g_auto_paring_switch
+70026 6800cd87  fetch 1 ,mem_24g_auto_paring_switch
 70027 1fe0fe01  increase 1 ,pdata
 70028 1fe17e03  and_into 3 ,pdata
-70029 6000cd85  store 1 ,mem_24g_auto_paring_switch
+70029 6000cd87  store 1 ,mem_24g_auto_paring_switch
 7002a c000002d  beq 0 ,z_g24_auto_pair_first_attemp
 7002b c0010037  beq 2 ,z_g24_auto_pair_all_powerful
 7002c 202001d7  branch p_g24_pair_init
 
 z_g24_auto_pair_first_attemp:
-7002d 204002cc  call p_mouse_tx_power_init
-7002e 68024c7e  fetch 4 ,mem_24g_device_addr
-7002f 60024c6f  store 4 ,mem_24g_addr
-70030 6800cd95  fetch 1 ,mem_24g_pair_current_ch_num
-70031 6000cc52  store 1 ,mem_24g_current_ch_number
+7002d 204002cd  call p_mouse_tx_power_init
+7002e 68024c80  fetch 4 ,mem_24g_device_addr
+7002f 60024c71  store 4 ,mem_24g_addr
+70030 6800cd97  fetch 1 ,mem_24g_pair_current_ch_num
+70031 6000cc54  store 1 ,mem_24g_current_ch_number
 70032 20400035  call z_g24_ch_syncword_crc8_init
-70033 6008cd95  storet 1 ,mem_24g_pair_current_ch_num
+70033 6008cd97  storet 1 ,mem_24g_pair_current_ch_num
 70034 20600000  rtn
 
 z_g24_ch_syncword_crc8_init:
@@ -35920,12 +35918,12 @@
 
 z_g24_auto_pair_all_powerful:
 70037 7041de20  jam tx_power_pair ,mem_tx_power
-70038 68024d8c  fetch 4 ,mem_24g_allpowerful_addr
-70039 60024c6f  store 4 ,mem_24g_addr
-7003a 6800cd96  fetch 1 ,mem_24g_powerful_current_ch_num
-7003b 6000cc52  store 1 ,mem_24g_current_ch_number
+70038 68024d8e  fetch 4 ,mem_24g_allpowerful_addr
+70039 60024c71  store 4 ,mem_24g_addr
+7003a 6800cd98  fetch 1 ,mem_24g_powerful_current_ch_num
+7003b 6000cc54  store 1 ,mem_24g_current_ch_number
 7003c 20400035  call z_g24_ch_syncword_crc8_init
-7003d 6008cd96  storet 1 ,mem_24g_powerful_current_ch_num
+7003d 6008cd98  storet 1 ,mem_24g_powerful_current_ch_num
 7003e 20600000  rtn
 org 0x80001
 
@@ -35941,24 +35939,24 @@
 80007 704b75ff  jam 0xff ,mem_mouse_fast_conn_flag
 80008 204042fb  call mouse_before_store_reconn_info
 80009 704721ff  jam 0xff ,mem_device1_type
-8000a 20200325  branch p_mouse_store_flash_device_info
+8000a 20200316  branch p_mouse_store_flash_device_info
 
 z_g24_search_dongle:
 8000b 6800cb42  fetch 1 ,mem_mouse_long_mult_flag
 8000c 207a0000  rtn blank
-8000d 6800cc73  fetch 1 ,mem_24g_abort_pac
+8000d 6800cc75  fetch 1 ,mem_24g_abort_pac
 8000e 207a0000  rtn blank
-8000f 6800cd9a  fetch 1 ,mem_24g_search_dongle_wait
+8000f 6800cd9c  fetch 1 ,mem_24g_search_dongle_wait
 80010 1fe0fe01  increase 1 ,pdata
 80011 1fe17e03  and_into 3 ,pdata
-80012 6000cd9a  store 1 ,mem_24g_search_dongle_wait
+80012 6000cd9c  store 1 ,mem_24g_search_dongle_wait
 80013 247a0000  nrtn blank
-80014 704d9900  jam 0 ,mem_24g_search_dongle_ch
+80014 704d9b00  jam 0 ,mem_24g_search_dongle_ch
 
 z_g24_search_dongle_loop:
-80015 6800cd99  fetch 1 ,mem_24g_search_dongle_ch
+80015 6800cd9b  fetch 1 ,mem_24g_search_dongle_ch
 80016 1fe0fe01  increase 1 ,pdata
-80017 6000cd99  store 1 ,mem_24g_search_dongle_ch
+80017 6000cd9b  store 1 ,mem_24g_search_dongle_ch
 80018 1fe67c08  sub pdata ,g24_ch_number ,null
 80019 2421001f  nbranch z_g24_search_dongle_loop_end ,positive
 8001a 20400025  call z7_g24_tx_attemp_data_prep
@@ -35969,17 +35967,17 @@
 
 z_g24_search_dongle_loop_end:
 8001f 204001a7  call p_g24_txbuf_clear
-80020 6800cd98  fetch 1 ,mem_24g_search_dongle_count
+80020 6800cd9a  fetch 1 ,mem_24g_search_dongle_count
 80021 1fe0fe01  increase 1 ,pdata
-80022 6000cd98  store 1 ,mem_24g_search_dongle_count
+80022 6000cd9a  store 1 ,mem_24g_search_dongle_count
 80023 c008010e  beq g24_ch_poll_count ,p_g24_search_dongle_check
 80024 20600000  rtn
 
 z7_g24_tx_attemp_data_prep:
 80025 70119eff  jam 0xff ,mem_24g_common_temp
-80026 6800cc48  fetch 1 ,mem_24g_data_type
+80026 6800cc4a  fetch 1 ,mem_24g_data_type
 80027 6000919f  store 1 ,mem_24g_common_temp + 1
-80028 68024c7e  fetch 4 ,mem_24g_device_addr
+80028 68024c80  fetch 4 ,mem_24g_device_addr
 80029 600211a0  store 4 ,mem_24g_common_temp + 2
 8002a d8400006  arg 6 ,temp
 8002b da20119e  arg mem_24g_common_temp ,rega
@@ -36003,14 +36001,14 @@
 90007 d840001a  arg mouse_spi1_sdio_gpio ,temp
 90008 204067fb  call gpio_config_input
 90009 20403e54  call mouse_adc_init
-9000a 20400318  call p_mouse_load_flash_info_check
+9000a 20400309  call p_mouse_load_flash_info_check
 9000b 6800c720  fetch 1 ,mem_device_flag
 9000c c1010000  rtneq mode_24g_device
 9000d 68034b4c  fetch 6 ,mem_mouse_24g_addr_init
 9000e 680b4722  fetcht 6 ,mem_device1_addr
 9000f 98467c00  isub temp ,null
-90010 24228366  nbranch p_mouse_fast_conn_disable ,zero
-90011 20200368  branch p_mouse_fast_conn_le_switch_adv
+90010 24228357  nbranch p_mouse_fast_conn_disable ,zero
+90011 20200359  branch p_mouse_fast_conn_le_switch_adv
 90012 20600000  rtn
 
 z_mouse_bt_sdp_update:
@@ -36047,7 +36045,7 @@
 9002f 793ffe05  set0 5 ,pdata
 90030 6010807b  hstore 1 ,core_gpio_pu3
 90031 d840001a  arg mouse_spi1_sdio_gpio ,temp
-90032 20400567  call p_gpio_set_input_pu
+90032 2040055c  call p_gpio_set_input_pu
 90033 d840001a  arg mouse_spi1_sdio_gpio ,temp
 90034 2040681d  call gpio_get_bit
 90035 6808c6f7  fetcht 1 ,mem_select_sensor_angle_gpio
@@ -36067,33 +36065,33 @@
 a0003 20600000  rtn
 
 z_g24_pairing_sm:
-a0004 6800cc4c  fetch 1 ,mem_24g_ensure
+a0004 6800cc4e  fetch 1 ,mem_24g_ensure
 a0005 c000ffe7  beq ensure_on_24g ,enable_user
-a0006 6800cc57  fetch 1 ,mem_24g_pairing_sm
+a0006 6800cc59  fetch 1 ,mem_24g_pairing_sm
 a0007 c000800b  beq state_24g_pairing_1 ,z_g24_pairing_sm_1
 a0008 c001000e  beq state_24g_pairing_2 ,z_g24_pairing_sm_2
 a0009 c0018011  beq state_24g_pairing_3 ,z_g24_pairing_sm_3
 a000a 20202a8c  branch assert
 
 z_g24_pairing_sm_1:
-a000b 704c5711  jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
+a000b 704c5911  jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
 a000c 70119eaa  jam 0xaa ,mem_24g_common_temp
 a000d 20200013  branch z_g24_pairing_sm_common
 
 z_g24_pairing_sm_2:
-a000e 704c5712  jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
+a000e 704c5912  jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
 a000f 70119e55  jam 0x55 ,mem_24g_common_temp
 a0010 20200013  branch z_g24_pairing_sm_common
 
 z_g24_pairing_sm_3:
-a0011 704c5713  jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
+a0011 704c5913  jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
 a0012 70119e22  jam 0x22 ,mem_24g_common_temp
 
 z_g24_pairing_sm_common:
-a0013 6800cc48  fetch 1 ,mem_24g_data_type
+a0013 6800cc4a  fetch 1 ,mem_24g_data_type
 a0014 1fe17e07  and_into bits_data ,pdata
 a0015 6000919f  store 1 ,mem_24g_common_temp + 1
-a0016 68024c7e  fetch 4 ,mem_24g_device_addr
+a0016 68024c80  fetch 4 ,mem_24g_device_addr
 a0017 600211a0  store 4 ,mem_24g_common_temp + 2
 
 z_g24_put_pairing_data_in_buff:
@@ -36105,7 +36103,7 @@
 a001d 20207fe7  branch enable_user
 
 z_g24_paring_mode:
-a001e 6800cc57  fetch 1 ,mem_24g_pairing_sm
+a001e 6800cc59  fetch 1 ,mem_24g_pairing_sm
 a001f c17f8000  rtneq state_24g_pairing_success
 a0020 c0088024  beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
 a0021 c0090026  beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
@@ -36113,18 +36111,18 @@
 a0023 20600000  rtn
 
 z_g24_pairing_sm_1_waiting_ack:
-a0024 704c5702  jam state_24g_pairing_2 ,mem_24g_pairing_sm
+a0024 704c5902  jam state_24g_pairing_2 ,mem_24g_pairing_sm
 a0025 202001a3  branch p_g24_transmit_abandon
 
 z_g24_pairing_sm_2_waiting_ack:
-a0026 704c5703  jam state_24g_pairing_3 ,mem_24g_pairing_sm
+a0026 704c5903  jam state_24g_pairing_3 ,mem_24g_pairing_sm
 a0027 202001a3  branch p_g24_transmit_abandon
 
 z_g24_pairing_sm_3_waiting_ack:
-a0028 704c57ff  jam state_24g_pairing_success ,mem_24g_pairing_sm
+a0028 704c59ff  jam state_24g_pairing_success ,mem_24g_pairing_sm
 a0029 700a9939  jam bt_evt_24g_pairing_complete ,mem_fifo_temp
 a002a 20407d86  call ui_ipc_send_event
-a002b 68024c27  fetch 4 ,mem_24g_rxpayload + 2
+a002b 68024c29  fetch 4 ,mem_24g_rxpayload + 2
 a002c 204001db  call p_g24_update_addr_and_synccrc8
 a002d 202001a3  branch p_g24_transmit_abandon
 org 0xb0001
@@ -36146,13 +36144,13 @@
 b000c 58000009  setarg le_interval_11_25ms
 b000d 60014496  store 2 ,mem_le_interval_min
 b000e 60014498  store 2 ,mem_le_interval_min + 2
-b000f 2040043a  call p_app_updata_le_param
+b000f 2040042b  call p_app_updata_le_param
 b0010 7047c401  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
 b0011 20600000  rtn
 
 z_mouse_le_conn_param_update_rsp_not_accepted:
 b0012 704b6101  jam 1 ,mem_mouse_le_updata_not_accepted_flag
-b0013 202005e4  branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+b0013 202005d9  branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
 
 z_mouse_bb_event_reconn_timeout:
 
@@ -36172,17 +36170,17 @@
 b001e 60014498  store 2 ,mem_le_interval_min + 2
 b001f 7047c400  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
 b0020 70479e00  jam 0 ,mem_mouse_clear_sensor_data_flag
-b0021 204003bb  call p_mouse_data_init
+b0021 204003ac  call p_mouse_data_init
 b0022 20405816  call le_clr_config_more_data
 b0023 204041d9  call mouse_bb_disconnected
-b0024 20400325  call p_mouse_store_flash_device_info
+b0024 20400316  call p_mouse_store_flash_device_info
 b0025 6800cb6b  fetch 1 ,mem_mouse_start_discovery_enable
 b0026 207a0000  rtn blank
 
 z_check_51cmd_adv:
 b0027 68034b62  fetch 6 ,mem_le_normal_lap
 b0028 600344a0  store 6 ,mem_le_lap
-b0029 20400491  call p_mouse_le_adv_data_update
+b0029 20400483  call p_mouse_le_adv_data_update
 b002a 20207df4  branch check_51cmd_adv
 
 z_mouse_before_hibernate:
@@ -36192,10 +36190,10 @@
 b002e 20402c21  call lpm_write_ctrl
 b002f 204074bd  call disable_authrom
 b0030 20404482  call mouse_devce_led_off
-b0031 20400325  call p_mouse_store_flash_device_info
+b0031 20400316  call p_mouse_store_flash_device_info
 b0032 20403e9f  call mouse_before_hibernate_wheel_gpio_set
 b0033 204000ec  call p_mouse_setgpio_hibernate
-b0034 2040035c  call p_flash_deep_power_down
+b0034 2040034d  call p_flash_deep_power_down
 b0035 68108081  hfetch 1 ,core_gpio_sel1
 b0036 1fe17ef7  and pdata ,0xf7 ,pdata
 b0037 60108081  hstore 1 ,core_gpio_sel1
@@ -36234,7 +36232,7 @@
 c0014 20200017  branch z_mouse_le_ll_enable_start_enc_flag
 
 z_mouse_le_ll_reconn_start_encryt:
-c0015 2040043a  call p_app_updata_le_param
+c0015 2040042b  call p_app_updata_le_param
 c0016 7046c60a  jam 10 ,mem_le_start_encrypt_timer
 
 z_mouse_le_ll_enable_start_enc_flag:
@@ -36245,6 +36243,6 @@
 c0019 704aff00  jam 0 ,mem_bt_rcvd_switch_req_accept
 c001a 704b0100  jam 0 ,mem_bt_send_lmp_setup_complete
 c001b 704b0a00  jam 0 ,mem_mouse_bt_send_first_package_flag
-c001c 20400325  call p_mouse_store_flash_device_info
+c001c 20400316  call p_mouse_store_flash_device_info
 c001d 202041d9  branch mouse_bb_disconnected
  branch mouse_bb_disconnected
Index: XZR_3MODE_2Ch_24G_First_NEW/output/ramcode.rom
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/ramcode.rom	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/ramcode.rom	(working copy)
@@ -1,17 +1,17 @@
 20200040
-204003bb
+204003ac
 6800c1de
-6000ccfe
-204006ff
+6000cd00
+204006f4
 6800c685
 6000c6da
-204004e0
-20400333
-2040079a
+204004d5
+20400324
+2040078f
 20400019
 2040002c
 680240a0
-60024c7e
+60024c80
 20405810
 20405839
 2040582c
@@ -22,31 +22,31 @@
 58000000
 60014154
 204068a2
-20200306
-5800037c
-60014d78
-580003a7
+202002f7
+5800036d
+60014d7a
+58000398
 600141ef
-5800063a
+5800062f
 600141f9
-580003da
+580003cb
 600141f1
 580002a6
 600141ed
-58000412
+58000403
 600141f5
-580003ff
+580003f0
 600141f3
-58000461
+58000452
 600141eb
-5800046e
+5800045f
 600141fd
 20600000
 58000019
-60014d8a
+60014d8c
 24558039
-204002d4
-20400467
+204002d5
+20400458
 6800c71f
 6000c71e
 680344a0
@@ -54,9 +54,9 @@
 6800c241
 c3810000
 704b770a
-202003a4
+20200395
 58000177
-60014d8a
+60014d8c
 20600000
 20000001
 20000001
@@ -65,61 +65,61 @@
 c284005a
 c0008076
 c001007f
-c042876b
-c044873c
-c045076d
-c00d864f
-c0130651
-c024066d
-c025066f
-c0288678
-c02c866b
-c053867d
-c0568693
+c0428760
+c0448731
+c0450762
+c00d8644
+c0130646
+c0240662
+c0250664
+c028866d
+c02c8660
+c0538672
+c0568688
 c065b3e4
-c07486a4
+c0748699
 c0508088
 c058808d
 c059009b
 c06202b3
-c0718512
-c073053a
-c0750582
-c075858b
-c076058e
+c0718507
+c073052f
+c0750577
+c0758580
+c0760583
 20202a8e
-c01c8590
-c0218598
-c025059e
-c02b85a1
-c02c85a3
-c03185a5
-c03305ce
-c03385ed
-c0350625
-c03b8630
-c07d06e7
-c00286a6
-c04006a8
-c04106b2
-c04406c3
-c046063c
-c0468648
+c01c8585
+c021858d
+c0250593
+c02b8596
+c02c8598
+c031859a
+c03305c3
+c03385e2
+c035061a
+c03b8625
+c07d06dc
+c002869b
+c040069d
+c04106a7
+c04406b8
+c0460631
+c046863d
 20202a8e
 1fe22200
-6808cd02
-58004d09
+6808cd04
+58004d0b
 98408a00
 1a227e00
 e0a08000
 18408401
 18410407
-6008cd02
+6008cd04
 20600000
 d8a009ae
 df20000c
 20407ed4
-2040038d
+2040037e
 20406a03
 20405cf6
 2455ac65
@@ -154,73 +154,73 @@
 243a7fef
 20207ff1
 c6930000
-6800cd9b
+6800cd9d
 c28080b0
 c28100b2
-6800cd87
+6800cd89
 c00080b8
 20400170
 243400d3
 2040014b
 20400193
-6800cc57
+6800cc59
 c1ff8000
-20400710
+20400705
 204000b4
 6800cb26
-c000837f
+c0008370
 204000e2
 24740000
 204002ad
 5800f03c
 20202b93
 7011c660
-20200770
+20200765
 7011c653
-20200770
+20200765
 58017700
-6001cc76
+6001cc78
 704b4414
 20600000
 20400286
 24740000
 204000cd
-68014d88
+68014d8a
 1fe0fe01
-60014d88
-68094d8a
+60014d8a
+68094d8c
 98467c00
 204280c2
 202000a1
-704d8700
+704d8900
 58000000
-60014d88
-58000019
 60014d8a
-704c8200
-6800cc6d
-6000cc6c
+58000019
+60014d8c
+704c8400
+6800cc6f
+6000cc6e
 20600000
-6800cc6e
+6800cc70
 202000c9
-6800cc82
+6800cc84
 1fe0fe01
-6000cc82
+6000cc84
 c00200cb
 c00280c7
 20600000
-6800cc73
+6800cc75
 205a00fb
 6800cb2c
 247a0000
 6800cb26
 c1008000
-6800cd87
+6800cd89
 c1008000
 2040010c
 204000e2
 24740000
-6801cc76
+6801cc78
 20407f49
 600a415b
 20202b2a
@@ -230,12 +230,12 @@
 203a7fe9
 6800c091
 203a7fe9
-6800cd87
+6800cd89
 c000ffe9
 204002b0
 204002ad
 20403ebf
-20400308
+204002f9
 68120070
 681a0078
 98418400
@@ -249,141 +249,141 @@
 6010807e
 d840001d
 202067fb
-704c7301
-704d7c00
+704c7501
+704d7e00
 20400121
-6000cbe3
+6000cbe5
 58000000
-6003cbe4
-68024c7e
-60024beb
-704c470c
-6800cc48
+6003cbe6
+68024c80
+60024bed
+704c490c
+6800cc4a
 79207e03
-6000cc48
+6000cc4a
 20400173
 202000a4
 58000000
-6001cd97
+6001cd99
 20600000
 7011c671
-20200770
-704d9800
-6800cd97
+20200765
+704d9a00
+6800cd99
 c3800000
 79207e00
-6000cd97
+6000cd99
 58000708
 600146b0
-20200467
-6800cc73
+20200458
+6800cc75
 203a0109
-704d9800
-6800cd97
+704d9a00
+6800cd99
 c4000000
 793ffe00
-6000cd97
+6000cd99
 20403f8d
-202003d8
-704d7d01
-704d7f00
-6800cc48
+202003c9
+704d7f01
+704d8100
+6800cc4a
 1fe17e07
-6000cc48
+6000cc4a
 20600000
-6800cc48
+6800cc4a
 79207e04
-6000cc48
-6000cc03
+6000cc4a
+6000cc05
 20600000
-6800cc48
+6800cc4a
 c4020000
-6800cc48
+6800cc4a
 793ffe04
-6000cc48
-6000cc03
-20400706
+6000cc4a
+6000cc05
+204006fb
 2020015e
-6800cd7c
+6800cd7e
 c0808121
-6800cd7a
+6800cd7c
 1fe0fe01
-6000cd7a
+6000cd7c
 c002013b
 2040015e
-704c8c02
+704c8e02
 20200193
-20400706
-704d7a00
-20200121
-704d7f02
-704d7d01
+204006fb
 704d7c00
 20200121
-6800cd7e
+704d8102
+704d7f01
+704d7e00
+20200121
+6800cd80
 c001813f
-6800cc48
+6800cc4a
 2fec0004
 2020811f
-6800cd7e
+6800cd80
 c000813e
 c001013f
 20600000
-6800cc57
+6800cc59
 c1ff8000
 20400150
 24560158
 20600000
 78567c00
-6800cd7d
-c1808000
 6800cd7f
+c1808000
+6800cd81
 c1800000
-704d7e01
-704c8c04
+704d8001
+704c8e04
 20207feb
-6800cd7f
+6800cd81
 203a016b
 1fe0ffff
-6000cd7f
-704d7e02
-704c8c04
-6808cc52
-6800cc6f
+6000cd81
+704d8002
+704c8e04
+6808cc54
+6800cc71
 1fe17e03
 1fefa204
-58004c58
+58004c5a
 9a20fe00
 98408c00
 e8c08000
-6000cc51
+6000cc53
 18408401
 18410403
-6008cc52
+6008cc54
 20600000
-704d7e03
-6800cd7c
+704d8003
+6800cd7e
 243a0132
-704c8c02
+704c8e02
 2020015e
-6800cc57
+6800cc59
 c0ff81ec
 20400176
 2040020a
-704c4c01
+704c4e01
 20600000
-68014d78
+68014d7a
 20407f9c
 2034017c
-6803cbe4
+6803cbe6
 207a0000
 20207fe7
-20400399
-704c7300
+2040038a
+704c7500
 1a20fe01
-6000cc47
+6000cc49
 20400121
-6000cbe3
+6000cbe5
 e8a88000
 ea408000
 9841fe00
@@ -392,7 +392,7 @@
 ea420000
 e0a20000
 1a40a404
-d8a04be9
+d8a04beb
 df200002
 ea408000
 e8a88000
@@ -401,7 +401,7 @@
 1a40a401
 c200018c
 20600000
-704c5000
+704c5200
 d9600d00
 34730200
 204001aa
@@ -409,25 +409,25 @@
 243781b5
 204001a7
 204001d0
-20400702
-6800cc46
+204006f7
+6800cc48
 1fe0fe01
-6000cc46
+6000cc48
 2040012a
-6800cc57
+6800cc59
 c0ff81ee
 20400142
 58000000
-60024c4c
-6000cd7b
+60024c4e
+6000cd7d
 20600000
 df200004
-d8a04be3
+d8a04be5
 20207ec6
 7857fc00
 20400265
 18002a00
-68024c6f
+68024c71
 98001200
 68088017
 2040291f
@@ -435,114 +435,114 @@
 20400225
 2057825e
 20600000
-68014c4d
+68014c4f
 1fe0fe01
-60014c4d
-6800cc4e
+60014c4f
+6800cc50
 c2822dd4
-6800cc57
+6800cc59
 c0ff81be
 204001c6
 20200194
-6800cc4d
+6800cc4f
 c1ff8000
 58000000
-60014c4d
+60014c4f
 20202dd4
-20400733
-20400706
+20400728
+204006fb
 2020015e
-6800cc50
+6800cc52
 1fe67c0b
 242101c3
 1fe0fe01
-6000cc50
+6000cc52
 c0010125
 c003012c
 c0040125
 c006012c
 20600000
 204001fd
-6800cc45
+6800cc47
 207a0000
 98007200
-d8c04bc3
-d8a04c25
+d8c04bc5
+d8a04c27
 20207f01
 7041de04
-704c4600
-704c514e
-68024c53
-60024c6f
+704c4800
+704c534e
+68024c55
+60024c71
 da200000
 df200004
-d8c04c6f
+d8c04c71
 e8c08000
 9a20a200
 c20001df
 1a227e00
-60014cf8
-6800ccf8
-6808ccf9
+60014cfa
+6800ccfa
+6808ccfb
 9840fe00
-6000ccfa
+6000ccfc
 20600000
 204001d7
-704c5701
+704c5901
 20600000
 7011c690
-20200770
-204006ff
+20200765
+204006f4
 7011c691
-20200770
+20200765
 7011c640
-20200770
+20200765
 793f8026
-704d9b00
+704d9d00
 204053ce
 d8e00003
 202043d2
-6008cc47
+6008cc49
 18427200
-d8a04be3
+d8a04be5
 1a220c00
 20207f01
-6800cbc2
+6800cbc4
 1fe97e00
-6000cc45
+6000cc47
 1fe0fe01
-d8c04bc2
+d8c04bc4
 98c08c00
 e8c18000
-6001cc84
-6800cbc2
+6001cc86
+6800cbc4
 1fe37e00
 1fe17e03
-6000cc8a
+6000cc8c
 20600000
-6800cc47
+6800cc49
 1fe0fe02
-6000cc49
-6800cc48
-6000cc03
-6800cc47
+6000cc4b
+6800cc4a
+6000cc05
+6800cc49
 1fe9fe00
-6808cc46
+6808cc48
 18410403
 18438400
 9841fe00
-6808cc83
+6808cc85
 9840fe00
 e0a08000
-6800cc47
+6800cc49
 98007200
-d8c04be3
+d8c04be5
 20207f01
 7844fc00
 7843fc00
 58555555
 98001e00
-6800cc51
+6800cc53
 1fed8400
 79200401
 18431c00
@@ -553,7 +553,7 @@
 7830fc00
 78507c00
 78287c00
-68014c4a
+68014c4c
 98003600
 37c18400
 242c025e
@@ -562,14 +562,14 @@
 7823fc00
 7824fc00
 2040025b
-6000ccfb
-6808ccfa
+6000ccfd
+6808ccfc
 98467c00
 2422825e
 2040025b
-6000cbc1
-6800cbc1
-6808cc48
+6000cbc3
+6800cbc3
+6808cc4a
 a8400e00
 2420825e
 2040025b
@@ -582,7 +582,7 @@
 c2000243
 18a22200
 2040025b
-6000cd82
+6000cd84
 1a220a00
 09800018
 78287c00
@@ -598,7 +598,7 @@
 20402981
 7846fc00
 20402918
-6800cd82
+6800cd84
 2040006c
 20600000
 09800008
@@ -609,10 +609,10 @@
 2040264d
 20600000
 20402918
-6808cc51
+6808cc53
 20202933
 204053c4
-68024c6f
+68024c71
 98001200
 2040021c
 20400262
@@ -628,11 +628,11 @@
 782dfc00
 7823fc00
 7824fc00
-6800ccfa
+6800ccfc
 08008608
-6800cc49
+6800cc4b
 98007200
-d8c04c03
+d8c04c05
 e8c08000
 08008608
 c200027b
@@ -645,19 +645,19 @@
 784dfc00
 20600000
 20407fe9
-680a4c68
+680a4c6a
 1c427e00
 98467c00
 24412d18
 1fe22400
-68024c68
-6808cc6c
+68024c6a
+6808cc6e
 98408400
 1a427e00
 98467c00
 24610000
 793ffe1c
-60024c68
+60024c6a
 20207fe7
 d8400000
 df200008
@@ -677,7 +677,7 @@
 20600000
 20600000
 c6130000
-20400383
+20400374
 204000ea
 6800c040
 c30002ad
@@ -688,53 +688,53 @@
 20600000
 6800cafe
 207a0000
-20200512
+20200507
 2040296c
 20403416
 204074b9
-20358333
+20358324
 20400001
-20407fa1
 6800c241
-c28102bd
+c28102be
+6800cb76
+c00101f1
 704b76ff
-20200377
-20400355
+20200368
+20400346
 6800cb76
-c00082c3
+c00082c4
 c00101f1
 704b770a
 20600000
-704d9201
-204002cc
+704d9401
+204002cd
 6800c210
-c01982cf
-c01a02d2
-204004f9
+c01982d0
+c01a02d3
+204004ee
 70016d06
-2040049b
+2040048d
 20207ddd
-6800ccfe
+6800cd00
 6000c1de
 20600000
 680341d0
 203a33eb
 20204274
 7011c612
-20200770
-20400333
+20200765
+20400324
 204040c0
 204040d9
-c01802dc
-c0188301
+c01802dd
+c01882f2
 204040d1
 200003e8
-202002d6
-2040039f
+202002d7
+20400390
 6800c6de
 c02d02e2
 c02a02ef
-c06c02f2
 202040e0
 7046e007
 58008006
@@ -752,28 +752,13 @@
 7046e002
 da604b94
 202002e7
-58000016
-20406414
-1fe67cbd
-242282d6
-58000019
-20406414
-1fe67c55
-242282d6
-5800001b
-20406414
-1fe67c1d
-242282d6
-7046e008
-da604ba2
-202002e7
-2040039f
+20400390
 6800c6de
 c03840e8
 7046e001
 20600000
 7011c680
-20200770
+20200765
 6808cb45
 20206825
 70808640
@@ -790,33 +775,33 @@
 793ffe00
 6010807f
 20600000
-20400364
+20400355
 20404423
 68014778
 d840aa55
 98467c00
-20228355
+20228346
 60094778
 2040441c
 6800c6e1
 6000c77a
 68024b4c
 6002477b
-60024c6f
-20400364
-20400335
-2040034c
-20400341
-20400338
-2040030a
+60024c71
+20400355
+20400326
+2040033d
+20400332
+20400329
+204002fb
 d8400007
 da204b70
 da40005f
 6801c700
 9a40fe00
-20400341
-20400338
-2040035c
+20400332
+20400329
+2040034d
 70421276
 20203d36
 6801c700
@@ -829,7 +814,7 @@
 6011008c
 58000005
 204064f3
-c2800338
+c2800329
 20600000
 1fe22600
 1a227e00
@@ -848,18 +833,18 @@
 6801c700
 da204720
 20600000
-20400364
-2040034c
+20400355
+2040033d
 20206562
-20400352
-2040036e
+20400343
+2040035f
 20404364
 2040431a
 6802477b
-60024c6f
+60024c71
 20600000
 700aa2b9
-2040030a
+204002fb
 204069ac
 2040650b
 da204b47
@@ -867,16 +852,16 @@
 20406556
 202069ac
 700aa2ab
-2020035d
+2020034e
 704b755a
 20600000
 704b6901
 704b6801
 704b75ff
-68034d8c
+68034d8e
 600344a0
 20600000
-20400364
+20400355
 d8400007
 da204b70
 da40005f
@@ -886,36 +871,36 @@
 6800c241
 c28101f1
 68024b4c
-60024c6f
-20400325
+60024c71
+20400316
 7011c641
-20200770
+20200765
 20404401
 6801469f
 207a0000
-704d8701
+704d8901
 58000000
-60014d88
+60014d8a
 20600000
 d8c01800
 d8a0480a
-2040038b
+2040037c
 d8c01900
-2040038b
+2040037c
 d8c01a00
-2040038b
+2040037c
 d8c01b00
 df20001b
 20207f01
 d8c0480a
 d8a01800
-2040038b
+2040037c
 d8a01900
-2040038b
+2040037c
 d8a01a00
-2040038b
+2040037c
 d8a01b00
-2020038b
+2020037c
 70417200
 704b431e
 20600000
@@ -924,34 +909,34 @@
 58000000
 6000cb42
 6002469b
-202003d8
-20400333
+202003c9
+20400324
 da604bb2
 204002e7
 6800c77a
-c0ff8512
+c0ff8507
 6800c6e1
 6000c77a
-20200512
+20200507
 20405892
 247a0000
 6800cb75
-c07f83ae
+c07f839f
 6800c6c5
 1fe17e03
 c1818000
 6800c79e
-205a03d6
+205a03c7
 680246d3
 c282c179
 20403f97
 24740000
-20400396
-20400399
-204003d1
+20400387
+2040038a
+204003c2
 da20469a
 20407e3d
-205403c0
+205403b1
 20600000
 7047a207
 7047a304
@@ -964,7 +949,7 @@
 20600000
 da20469a
 20407e54
-203403c8
+203403b9
 20600000
 20405652
 6800c7c3
@@ -983,24 +968,24 @@
 70479e01
 20405814
 704afe01
-202002d4
+202002d5
 20770000
 6800c1e2
 207a0000
 20405271
 247a0000
 6800c79e
-205a03d6
+205a03c7
 680246d3
 c282bf8a
 c284bf8a
 20403f97
 24740000
-20400396
-20400399
-204003d1
+20400387
+2040038a
+204003c2
 6800cb03
-c00083ee
+c00083df
 6800cb0a
 207a0000
 20203f81
@@ -1022,14 +1007,14 @@
 e0a28000
 20600000
 20407e34
-20400402
+204003f3
 20203ee0
 6808c6e7
-2040056c
+20400561
 6808c6e7
 2040681d
-20208410
-20400567
+20208401
+2040055c
 6800c6b6
 c1000000
 7046b600
@@ -1038,37 +1023,37 @@
 1fe17e03
 6000c77a
 20203d7e
-20400567
+2040055c
 20203d62
 1a627e00
-c00a0423
-c00a8437
-c014843a
-c019043c
-c020043e
-c0020440
-c0098440
+c00a0414
+c00a8428
+c014842b
+c019042d
+c020042f
+c0020431
+c0098431
 c00cb3df
-c0108444
-c0008446
-c0010452
-c0158455
-c01c8457
-c01d045b
-c01e045e
+c0108435
+c0008437
+c0010443
+c0158446
+c01c8448
+c01d044c
+c01e044f
 2020417d
-204003d8
+204003c9
 204041c3
 58000000
 6001cb68
 68034b4c
 680b4722
 98467c00
-24428366
+24428357
 20403410
 704b7601
 6800c7a1
-243a0430
+243a0421
 704b6d14
 704b7700
 704b6c00
@@ -1076,24 +1061,24 @@
 704b7800
 704b6b00
 204001f3
-202003bb
-20400464
+202003ac
+20400455
 7011c6a2
-20200770
+20200765
 700a9912
 20207d8f
 7011c6b3
-20200770
+20200765
 7011c6a1
-20200770
+20200765
 7011c6a3
-20200770
+20200765
 7011c670
-20200770
+20200765
 7011c6b1
-20200770
-20400499
-204003d8
+20200765
+2040048b
+204003c9
 58000000
 6001cb68
 704b7601
@@ -1101,75 +1086,76 @@
 704b7800
 704b6b00
 204001f3
-20400503
+204004f8
 70480900
 202042ca
-20400464
+20400455
 7011c6b4
-20200770
+20200765
 7011c6b2
-20200770
-2040037f
-204003d8
+20200765
+20400370
+204003c9
 7011c650
-20200770
-20400464
+20200765
+20400455
 7011c651
-20200770
-204003d8
+20200765
+204003c9
 7011c652
-20200770
-20400464
+20200765
+20400455
 7011c6a0
-20200770
+20200765
 6800cafe
 207a0000
 704afe00
-204002d4
+204002d5
 58000006
 20406414
 1fe1fe08
 1fed7e00
 1fe0fe06
 20206413
-20400482
-20400506
-204004d2
-204004fc
-204004d7
+20400474
+204004fb
+204004c7
+204004f1
+204004cc
 20404234
-204004a0
-204004a7
-204004bb
+20400492
+20400499
+2040049c
+204004b0
+204004b6
+204004b9
 204004c1
-204004c4
-204004cc
-204004b3
+204004a8
 20404231
-204004b6
-2040047f
+204004ab
+20400471
 2020423a
 da604b77
-da4002c3
+da4002c4
 2020336d
 6800cb68
 207a0000
 da604b69
-da400487
+da400479
 2020336d
 704b6901
 6800cb6a
 1fe0fe01
 1fe17e01
 6000cb6a
-c000049b
+c000048d
 68034b62
 600344a0
-20400491
+20400483
 20207df4
 70436f1f
 70438f1f
-20400499
+2040048b
 d8c04b10
 d8a0437b
 df200013
@@ -1181,66 +1167,69 @@
 70438f00
 d8e00007
 204043d2
-2020036a
+2020035b
 da604b44
-da4004a3
+da400495
 2020336d
 58124f80
-6001cc76
+6001cc78
 704b4201
 20600000
-da604d93
-da4004aa
+da604d95
+da40036b
 20203374
-704d9201
+da604bc1
+da40049f
+20203374
+704d9401
 6800cb68
-243a04ae
+243a04a3
 20600000
-704d9301
+704d9501
 6800cb2f
 247a0000
-704d9300
+704d9500
 20600000
 da604809
 da40637a
 2020336d
 da604b09
-da4004b9
+da4004ae
 2020336d
 704b0a01
 20600000
 da6046ae
-da4004be
+da4004b3
 20203374
 704b7801
-204004eb
-202004e0
+204004e0
+202004d5
 da6046c6
 da403d60
 2020336d
 6800cb6f
 207a0000
 da604b6d
-da4004c9
+da4004be
 2020336d
 6800cb6e
 247a0000
 20205bf5
 da604b43
-da4004cf
+da4004c4
 2020336d
 6800c7c5
 6000c172
-202004a5
+20200497
 da604807
-da4004d5
+da4004ca
 2020336d
 70480600
 20600000
 6800c6b6
-203a04e3
-20400546
-c00384e3
+203a04d8
+2040053b
+c00384d8
 6800c685
 6000c6da
 6800c6db
@@ -1250,19 +1239,19 @@
 204043d2
 202043ca
 7047a028
-204004e6
+204004db
 202043b0
 da6046da
-da4004e9
+da4004de
 2020336d
 6800cb68
-243a04f9
+243a04ee
 280ffe26
-204084f7
+204084ec
 6800cb76
 1fe67cff
-204284f7
-20400491
+204284ec
+20400483
 68014682
 2feffe07
 2040c392
@@ -1277,7 +1266,7 @@
 6800c79f
 207a0000
 da6047a0
-da400501
+da4004f6
 2020336d
 70479f00
 2020340a
@@ -1286,8 +1275,8 @@
 20600000
 6800c6ac
 207a0000
-c281050a
-2020050e
+c28104ff
+20200503
 6808cb25
 2040680e
 6808cb25
@@ -1298,86 +1287,86 @@
 20206829
 6800c77a
 1fe67c01
-2042851f
+20428514
 6800c77a
-c0000521
-c0018527
+c0000516
+c001851c
 6800c6e0
-c003052d
-c003852d
-c0010533
+c0030522
+c0038522
+c0010528
 6800c781
 6000c6b5
 20203dc1
 70477a02
 20600000
 6800c6e0
-c003052f
-c003852f
-c0010536
+c0030524
+c0038524
+c001052b
 6800c77f
-2020051d
+20200512
 6800c6e0
-c0030531
-c0038531
-c0010538
+c0030526
+c0038526
+c001052d
 6800c782
-2020051d
+20200512
 6800cb38
-2020051d
+20200512
 6800cb36
-2020051d
+20200512
 6800cb39
-2020051d
+20200512
 6800c781
 1fe0fe02
-2020051d
+20200512
 6800c77f
-20200534
+20200529
 6800c782
-20200534
+20200529
 78547c00
 58000000
 6003469b
-20400572
+20400567
 20404079
 2040407e
-20400544
-2434079a
-20400791
+20400539
+2434078f
+20400786
 20203fa0
-20400546
+2040053b
 2020409a
 da200000
-2040054c
-2040054a
+20400541
+2040053f
 2020408e
-2040055c
-20200562
+20400551
+20200557
 6808c6e2
-20400567
+2040055c
 6808c6e2
 2040681d
 7920a200
 6808c6e3
-20400567
+2040055c
 6808c6e3
 2040681d
 7920a201
 6808c6e4
-20400567
+2040055c
 6808c6e4
 2040681d
 7920a202
 20600000
 6808c6e5
-2040056c
+20400561
 6808c6e5
 2040681d
 7d20a203
-20200567
+2020055c
 6808c6e6
-2040056c
+20400561
 6808c6e6
 2040681d
 7d20a204
@@ -1385,7 +1374,7 @@
 d8a08078
 20406830
 793f8407
-20200570
+20200565
 793f8407
 d8a08078
 20406830
@@ -1393,7 +1382,7 @@
 d8a0807c
 2020680a
 6800c6e0
-c0040577
+c004056c
 20403fc0
 78547c00
 20203fe7
@@ -1408,7 +1397,7 @@
 58000000
 6003469b
 20600000
-20400503
+204004f8
 280ffe26
 204081f3
 7046b400
@@ -1419,8 +1408,8 @@
 2020426f
 70409100
 7011c630
-20200770
-204003d8
+20200765
+204003c9
 202042cb
 6800c50f
 1fe0fe01
@@ -1428,7 +1417,7 @@
 c0065395
 204055aa
 2040561e
-20400710
+20400705
 2020538f
 68008016
 1fe0fe01
@@ -1440,28 +1429,28 @@
 2040006c
 202054a3
 7011c620
-20200770
+20200765
 7011c621
-20200770
+20200765
 68008456
-c28285c5
-20400702
+c28285ba
+204006f7
 6800c78e
-243a05af
+243a05a4
 6800843f
-c30205b3
+c30205a8
 680082da
-203a05b3
+203a05a8
 20205664
 6800c78e
 1fe0ffff
 6000c78e
 20205664
 6800c4c4
-c08285b6
+c08285ab
 70478e03
 20405892
-205a03c4
+205a03b5
 20205622
 6800c6c5
 1fe17e03
@@ -1475,8 +1464,8 @@
 6000c3dc
 20405650
 20600000
-204005b9
-20200706
+204005ae
+202006fb
 6800c7a1
 207a0000
 6800c6c5
@@ -1497,11 +1486,11 @@
 18c27e00
 6001450d
 6800c50c
-c00185dd
+c00185d2
 2020568d
 680082db
-c00005e1
-c00085e8
+c00005d6
+c00085dd
 20205c65
 20405c7b
 6800cb61
@@ -1516,18 +1505,18 @@
 6001045f
 20205c8a
 e8c10000
-c00205f1
-c003061d
+c00205e6
+c0030612
 20205698
 20407ea5
-204005c7
+204005bc
 20407e9f
 e8c18000
 60018477
-c0080600
+c00805f5
 1fec8400
 18467c24
-2021060e
+20210603
 d84047c6
 600944bc
 204058ad
@@ -1548,32 +1537,32 @@
 5800002b
 e0c10000
 20600000
-c0050610
+c0050605
 202058ad
 68090478
 6800c4e9
-c2818617
+c281860c
 68010478
 c009da76
 68090478
 202059bf
 680144fa
 98467c00
-24228613
+24228608
 20405a42
-24340613
+24340608
 202059e2
 e8c08000
-c0008621
-c0028623
+c0008616
+c0028618
 20205af5
 704b6e01
 20205b09
 7011c682
-20200770
+20200765
 68008016
 c093d6f2
-2040062b
+20400620
 d8e00000
 68014482
 20207f08
@@ -1583,7 +1572,7 @@
 1fe0fefa
 20203cbe
 7855fc00
-20370633
+20370628
 2436d806
 20402bcb
 680140c1
@@ -1593,7 +1582,7 @@
 2420abde
 202057fb
 7011c622
-20200770
+20200765
 68108077
 1fe17efd
 60108077
@@ -1603,7 +1592,7 @@
 204063ee
 184104fd
 2000000d
-20400649
+2040063e
 60188073
 20600000
 204064dd
@@ -1614,7 +1603,7 @@
 60108081
 20600000
 7011c600
-20200770
+20200765
 204021c9
 24740000
 78547c00
@@ -1623,10 +1612,10 @@
 793f802d
 20402a4f
 204022e6
-c505865e
+c5058653
 20402455
-243a0657
-c5168667
+243a064c
+c516865c
 202021ec
 20402a4d
 d8200010
@@ -1636,7 +1625,7 @@
 68008077
 98000800
 70001102
-20200657
+2020064c
 68020165
 1fe0fe08
 60020165
@@ -1644,16 +1633,16 @@
 c516264d
 2020258f
 7011c623
-20200770
+20200765
 68008030
 2feffe00
-20408673
+20408668
 2020248a
 68008047
 2feffe03
-20408706
-24408702
-20200710
+204086fb
+244086f7
+20200705
 204024f0
 242c28f9
 204029bb
@@ -1666,7 +1655,7 @@
 6800c091
 207a0000
 6800c65a
-203a0687
+203a067c
 6800c5b1
 207a0000
 6800c4c0
@@ -1693,18 +1682,18 @@
 c586abde
 20405274
 243a2bde
-205a06a1
+205a0696
 20202bbe
 70008a01
 70008b00
 20600000
 7011c601
-20200770
+20200765
 7011c602
-20200770
+20200765
 68008552
 600084c9
-c00986ac
+c00986a1
 20205db4
 20405dcf
 704aff01
@@ -1716,15 +1705,15 @@
 204062c1
 68008048
 207a0000
-c28386bb
-c00186bd
-c01886bf
-c00b86c1
+c28386b0
+c00186b2
+c01886b4
+c00b86b6
 20206010
 7011c610
-20200770
+20200765
 7011c611
-20200770
+20200765
 704b0101
 202061c3
 704b0904
@@ -1733,16 +1722,16 @@
 247a0000
 68008055
 207a0000
-c00206e5
-c00806ca
+c00206da
+c00806bf
 20206320
 6800c55b
 c1000000
-c00086ce
+c00086c3
 2020635f
 20748000
 6800816d
-c28006d2
+c28006c7
 20206399
 6800cb01
 c000e39d
@@ -1759,7 +1748,7 @@
 98408400
 1c427e00
 98467c00
-242106e3
+242106d8
 20206349
 704b0001
 20600000
@@ -1769,13 +1758,13 @@
 243a7ddb
 68008a99
 c584fdd6
-c00f86ef
-c01006f2
-c00906fc
+c00f86e4
+c01006e7
+c00906f1
 20207dca
 70018534
 6803044f
-202006f4
+202006e9
 70018533
 68030040
 60030186
@@ -1785,67 +1774,67 @@
 204043d2
 204042e8
 204042fb
-20200325
+20200316
 20405890
 247a0000
 20205abf
-704d8301
-704d8000
+704d8501
+704d8200
 20600000
-6800cd80
+6800cd82
 1fe0fe01
-6000cd80
+6000cd82
 20600000
-6800cd80
+6800cd82
 1fe67c02
-2441070e
-6800cd80
+24410703
+6800cd82
 c1000000
 1fe0ffff
-6000cd80
+6000cd82
 20600000
-704d8003
+704d8203
 20600000
 68014682
 c3858000
 c3838000
 c3830000
-da204d09
+da204d0b
 20400295
-6008cd81
+6008cd83
 58000082
-c513071a
+c513070f
 58000080
 98467c00
-24210732
-6800cd80
+24210727
+6800cd82
 1fe67c02
-24210722
-6800cd80
-c0000733
+24210717
+6800cd82
+c0000728
 20600000
-6800cd80
+6800cd82
 c1990000
-704d8000
-6808cd81
+704d8200
+6808cd83
 58000077
-c5130729
+c513071e
 58000075
 98467c00
 24610000
-6800cd83
-c000073a
+6800cd85
+c000072f
 1fe0ffff
-6000cd83
-c000073a
+6000cd85
+c000072f
 7041de00
 20600000
-704d8000
-6800cd83
-c0010738
+704d8200
+6800cd85
+c001072d
 1fe0fe01
-6000cd83
-c0008730
+6000cd85
+c0008725
 7041de02
 20600000
 7041de04
@@ -1866,20 +1855,20 @@
 2000000a
 7089027d
 6800c1de
-c0010754
-c0020759
-c0100768
-2040075e
+c0010749
+c002074e
+c010075d
+20400753
 708955d0
 708956e0
 7089586c
 2020294b
-20400763
+20400758
 708955d0
 708956e0
 7089583c
 20202953
-2040075e
+20400753
 708955d0
 708956c0
 7089586c
@@ -1906,7 +1895,7 @@
 18518400
 6800cb52
 98467c00
-2022878f
+20228784
 6008cb52
 18408401
 58000100
@@ -1917,7 +1906,7 @@
 9840fe00
 1fe0fffb
 6001cb59
-20400364
+20400355
 6801cb59
 d8400100
 da201f00
@@ -1925,8 +1914,8 @@
 68021f00
 680a4b5c
 98467c00
-24228780
-20400333
+24228775
+20400324
 58001f00
 60014199
 70419b40
@@ -1937,13 +1926,13 @@
 20200001
 6802469b
 207a0000
-204007f1
+204007e6
 58000006
-204007e4
+204007d9
 58000003
-204007ea
+204007df
 6800cb0b
-c000879d
+c0008792
 df200005
 d8a04b0b
 20207ed4
@@ -1951,7 +1940,7 @@
 600111be
 6801469b
 600111c0
-204007b0
+204007a5
 680111be
 60014b0c
 680111c0
@@ -1960,7 +1949,7 @@
 600111be
 6801469d
 600111c0
-204007b8
+204007ad
 680111be
 60014b0e
 680111c0
@@ -1973,7 +1962,7 @@
 9840fe00
 1fe10401
 6008cbbe
-202007c0
+202007b5
 680111be
 680911c0
 9840fe00
@@ -1981,35 +1970,35 @@
 9840fe00
 1fe10401
 6008cbbf
-202007c0
+202007b5
 600191c2
 2feffe10
-202087ca
+202087bf
 680091c3
-c07f87d1
+c07f87c6
 680091c2
 1fe37e00
 600111be
 600111c0
 20600000
 680091c3
-c00007ce
+c00007c3
 680191c2
-202007c6
+202007bb
 7011c400
 680091c2
-202007c6
+202007bb
 680091c2
-204007dc
+204007d1
 600091be
 600091c0
-203a07da
+203a07cf
 580000ff
 600091bf
 600091c1
 20600000
 58000000
-202007d7
+202007cc
 1fe67e00
 60008aae
 68008aae
@@ -2019,31 +2008,31 @@
 1fe67e00
 20600000
 9a267c00
-242107ef
+242107e4
 9a467c00
-242107ef
+242107e4
 704b0b00
 20600000
 9a267c00
 24610000
 9a467c00
 24610000
-202007e8
+202007dd
 704b0b01
 20600000
 6801469b
-204007f8
+204007ed
 1fe22200
 6801469d
-204007f8
+204007ed
 1fe22400
 20600000
 600111c0
 680091c1
-c07f87fe
+c07f87f3
 680091c0
 1fe17eff
 20600000
 680111c0
 1fe67e00
-202007fc
+202007f1
Index: XZR_3MODE_2Ch_24G_First_NEW/output/romcode.rom
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/romcode.rom	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/output/romcode.rom	(working copy)
@@ -24592,7 +24592,7 @@
 68014682
 c28642b0
 204033a9
-20400546
+2040053b
 c003801a
 6800c6b6
 203a001a
@@ -24630,7 +24630,7 @@
 704b0301
 20600000
 18427e00
-c0028442
+c0028433
 20204d41
 c008000e
 c008801b
@@ -24640,10 +24640,10 @@
 7047a101
 680146a8
 600146ae
-20400499
+2040048b
 20403418
 d8c04390
-20400495
+20400487
 20207df4
 68008048
 c0420012
@@ -24728,14 +24728,14 @@
 2020246e
 c0180003
 20600000
-204002cc
+204002cd
 704b6e00
 704b6b01
 70472001
 70479e00
 68034b62
 600344a0
-20400366
+20400357
 20403418
 68014687
 600146ac
@@ -24743,9 +24743,9 @@
 58000000
 600146b0
 600146ae
-20400499
+2040048b
 204043ca
-20400355
+20400346
 6800c210
 1fe67c33
 2042801e
@@ -24757,37 +24757,44 @@
 20600000
 68034b62
 600344a0
-20400491
+20400483
 20207df4
 c0200005
-c0208017
-c021001f
+c0208019
+c0210026
 20600000
-2040000e
-2034037a
+20400010
+2034036b
 79200026
-6800cd9b
+6800cd9d
 79207e02
-6000cd9b
+6000cd9d
 204001dc
 2040015e
-2020001b
+6800c241
+c281001d
+20200022
 df200002
-d8c04c6f
+d8c04c71
 20407fe7
 5800ffff
 e8c90000
 98467c00
 2442ffe9
-c2000012
+c2000014
 20600000
 79200026
-6800cd9b
+6800cd9d
 79207e01
-6000cd9b
-5800003c
-60014d93
-704d9200
+6000cd9d
+20400458
+58000708
+60014bc1
+704d9400
+20600000
+5800001e
+60014d95
+704d9400
 20600000
 680246d3
 c4088000
@@ -24799,9 +24806,9 @@
 58000000
 600146ae
 6000c6b4
-60014c74
+60014c76
 204042ca
-2020037a
+2020036b
 c028800a
 c0290011
 c0298021
@@ -24809,12 +24816,12 @@
 204043d2
 7046a700
 2040405d
-204002cc
+204002cd
 20200011
-704d8700
-204002cc
+704d8900
+204002cd
 204001f3
-20400355
+20400346
 6800cb76
 c1810000
 2020340a
@@ -24824,46 +24831,46 @@
 6001cb68
 204041c6
 2040001e
-20400503
+204004f8
 20403f8d
-68024c6f
+68024c71
 6002477b
 20404366
 704b7602
-20200325
+20200316
 58000000
-6001cd92
+6001cd94
 20600000
-6800cd92
+6800cd94
 c000add4
 20400030
 204001aa
 242c015e
 2437815e
-6800cd9b
+6800cd9d
 793ffe02
-6000cd9b
+6000cd9d
 704b4200
 20402f20
 204001a7
-2020037f
-68024c27
+20200370
+68024c29
 202001db
 70119eff
-6800cc48
+6800cc4a
 6000919f
-68024c7e
+68024c80
 600211a0
 d8400006
 da20119e
 204001f8
 2020020a
-6800cd92
+6800cd94
 c000add4
 70119eff
-6800cc48
+6800cc4a
 6000919f
-68024c7e
+68024c80
 600211a0
 d8400006
 da20119e
@@ -24873,52 +24880,52 @@
 242c0026
 24378026
 204001d0
-68024c6f
-680a4d8c
+68024c71
+680a4d8e
 98467c00
 20228016
-6800cc45
+6800cc47
 c1840000
-704d9b00
-204002cc
-68024c6f
-680a4c53
+704d9d00
+204002cd
+68024c71
+680a4c55
 98467c00
 202281e9
-68024c6f
-680a4c7e
+68024c71
+680a4c80
 98467c00
 20428024
 704b4200
 20402f20
 204001a7
-2020037f
-68024c27
+20200370
+68024c29
 202001db
-6800cd85
+6800cd87
 1fe0fe01
 1fe17e03
-6000cd85
+6000cd87
 c000002d
 c0010037
 202001d7
-204002cc
-68024c7e
-60024c6f
-6800cd95
-6000cc52
+204002cd
+68024c80
+60024c71
+6800cd97
+6000cc54
 20400035
-6008cd95
+6008cd97
 20600000
 204001dc
 2020015e
 7041de20
-68024d8c
-60024c6f
-6800cd96
-6000cc52
+68024d8e
+60024c71
+6800cd98
+6000cc54
 20400035
-6008cd96
+6008cd98
 20600000
 c0380004
 c038800b
@@ -24929,20 +24936,20 @@
 704b75ff
 204042fb
 704721ff
-20200325
+20200316
 6800cb42
 207a0000
-6800cc73
+6800cc75
 207a0000
-6800cd9a
+6800cd9c
 1fe0fe01
 1fe17e03
-6000cd9a
+6000cd9c
 247a0000
-704d9900
-6800cd99
+704d9b00
+6800cd9b
 1fe0fe01
-6000cd99
+6000cd9b
 1fe67c08
 2421001f
 20400025
@@ -24951,15 +24958,15 @@
 2437802e
 20400116
 204001a7
-6800cd98
+6800cd9a
 1fe0fe01
-6000cd98
+6000cd9a
 c008010e
 20600000
 70119eff
-6800cc48
+6800cc4a
 6000919f
-68024c7e
+68024c80
 600211a0
 d8400006
 da20119e
@@ -24976,14 +24983,14 @@
 d840001a
 204067fb
 20403e54
-20400318
+20400309
 6800c720
 c1010000
 68034b4c
 680b4722
 98467c00
-24228366
-20200368
+24228357
+20200359
 20600000
 204074b9
 d8c08c00
@@ -25016,7 +25023,7 @@
 793ffe05
 6010807b
 d840001a
-20400567
+2040055c
 d840001a
 2040681d
 6808c6f7
@@ -25031,25 +25038,25 @@
 c0480004
 c048801e
 20600000
-6800cc4c
+6800cc4e
 c000ffe7
-6800cc57
+6800cc59
 c000800b
 c001000e
 c0018011
 20202a8c
-704c5711
+704c5911
 70119eaa
 20200013
-704c5712
+704c5912
 70119e55
 20200013
-704c5713
+704c5913
 70119e22
-6800cc48
+6800cc4a
 1fe17e07
 6000919f
-68024c7e
+68024c80
 600211a0
 7011a400
 da20119e
@@ -25057,20 +25064,20 @@
 204001f8
 20400173
 20207fe7
-6800cc57
+6800cc59
 c17f8000
 c0088024
 c0090026
 c0098028
 20600000
-704c5702
+704c5902
 202001a3
-704c5703
+704c5903
 202001a3
-704c57ff
+704c59ff
 700a9939
 20407d86
-68024c27
+68024c29
 204001db
 202001a3
 c050002b
@@ -25087,11 +25094,11 @@
 58000009
 60014496
 60014498
-2040043a
+2040042b
 7047c401
 20600000
 704b6101
-202005e4
+202005d9
 68014682
 c3860000
 c3830000
@@ -25105,15 +25112,15 @@
 60014498
 7047c400
 70479e00
-204003bb
+204003ac
 20405816
 204041d9
-20400325
+20400316
 6800cb6b
 207a0000
 68034b62
 600344a0
-20400491
+20400483
 20207df4
 68120138
 79207e1a
@@ -25121,10 +25128,10 @@
 20402c21
 204074bd
 20404482
-20400325
+20400316
 20403e9f
 204000ec
-2040035c
+2040034d
 68108081
 1fe17ef7
 60108081
@@ -25152,13 +25159,13 @@
 c0008015
 7046c614
 20200017
-2040043a
+2040042b
 7046c60a
 d8e00001
 202041b9
 704aff00
 704b0100
 704b0a00
-20400325
+20400316
 202041d9
-0000d2a2
+00007f59
Index: XZR_3MODE_2Ch_24G_First_NEW/program/patch.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/program/patch.prog	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/program/patch.prog	(working copy)
@@ -1177,6 +1177,8 @@
 //	call p_mouse_mode_24g_device_multi_led_blink3s
 	fetch 1,mem_power_on_flag
 	bbit1 2,p_mouse_wakeup_from_hibernate	//hibernate goto reconn
+	fetch 1,mem_mouse_latest_mode
+	beq LATEST_MODE_24G,p_g24_start_24g_mode
 	jam LATEST_MODE_NULL,mem_mouse_latest_mode
 	branch p_mouse_start_24g_pair
 
@@ -1250,7 +1252,7 @@
 	fetch 1,mem_sensor_id2
 	beq P_MX8650,p_mouse_mx8650_init_param
 	beq PKA8_ID2,p_mouse_ka8_init_param
-	beq P8009_ID2,p_mouse_8009_init_param
+//	beq P8009_ID2,p_mouse_8009_init_param
 	branch mouse_init_p32xx_id2_judge
 
 p_mouse_mx8650_init_param:
@@ -1274,22 +1276,22 @@
 	arg mem_sensor_ka8_init,regc
 	branch p_sensor_wr_seq
 
-p_mouse_8009_init_param:
-	setarg 0x16
-	call twspi_read
-	sub pdata,0xbd,null 
-	nbranch p_mouse_init_sensor,zero
-	setarg 0x19
-	call twspi_read
-	sub pdata,0x55,null 
-	nbranch p_mouse_init_sensor,zero
-	setarg 0x1b
-	call twspi_read
-	sub pdata,0x1d,null 
-	nbranch p_mouse_init_sensor,zero
-	jam P8009,mem_config_sensor_type
-	arg mem_sensor_8009_init,regc
-	branch p_sensor_wr_seq
+//p_mouse_8009_init_param:
+//	setarg 0x16
+//	call twspi_read
+//	sub pdata,0xbd,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x19
+//	call twspi_read
+//	sub pdata,0x55,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x1b
+//	call twspi_read
+//	sub pdata,0x1d,null 
+//	nbranch p_mouse_init_sensor,zero
+//	jam P8009,mem_config_sensor_type
+//	arg mem_sensor_8009_init,regc
+//	branch p_sensor_wr_seq
 
 p_mouse_p3065_init_param:
 	call p_mouse_sensor_poweron
@@ -1897,6 +1899,7 @@
 ifdef G24
 	call p_mouse_g24_long_sleep_param_update_timer
 	call p_mouse_g24_stop_mode_timeout_timer
+	call p_mouse_g24_stop_pair_mode_timeout_timer
 endif	
 ifdef BLE	
 	call p_mouse_check_direct_timeout_timer
@@ -1993,8 +1996,14 @@
 
 p_mouse_g24_stop_mode_timeout_timer:
 	arg mem_24g_stop_g24_mode_timeout,regc
+	arg p_g24_auto_pair_start,regb
+	branch timer_single_step_2B
+	
+p_mouse_g24_stop_pair_mode_timeout_timer:
+	arg mem_24g_stop_g24_pair_mode_timerout,regc
 	arg p_mouse_g24_stop_mode_timeout,regb
 	branch timer_single_step_2B
+	
 p_mouse_g24_stop_mode_timeout:
 	jam 1,mem_24g_stop_g24_mode
 	fetch 1,mem_le_switch_adv_flag
Index: XZR_3MODE_2Ch_24G_First_NEW/program/z.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/program/z.prog	(revision 2426)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2Ch_24G_First_NEW/program/z.prog	(working copy)
@@ -285,6 +285,8 @@
 	store 1,mem_24g_conn_sm
 	call p_g24_syncword_crc8
 	call p_g24_ch
+	fetch 1,mem_power_on_flag
+	bbit1 2,z_g24_auto_fail_timeout_init	
 	branch z_g24_auto_pair_timeout_init
 
 z_g24_factory_check:
@@ -304,6 +306,12 @@
 	fetch 1,mem_24g_conn_sm
 	set1 STATE_24G_PAIR,pdata
 	store 1,mem_24g_conn_sm
+z_g24_auto_fail_timeout_init:
+	call p_mouse_sensor_powerdown
+	setarg G24_DISCONN_NODATA_TIMER
+	store 2,mem_24g_stop_g24_pair_mode_timerout
+	jam 0,mem_24g_stop_g24_mode
+	rtn
 z_g24_auto_pair_timeout_init:
 	setarg G24_FIRST_DISCONN_NODATA_TIMER
 	store 2,mem_24g_stop_g24_mode_timeout
Index: XZR_3MODE_2h_PB_WIN_D_NEW/c
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/c	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/c	(working copy)
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+gensched () {
+if [ -f output/sched.rom ];then rm output/sched.rom; fi
+while [ 1 ];do
+	if [ -n "$1" ];then cat sched/$1.dat >> output/sched.rom; else return; fi
+	shift
+done
+}
+
+#enckey="-k 00000000000000000000000000000000"
+
+cd ${0%/*}
+for f in program/*.prog 
+  do if [[ ! $f =~ "bt.prog" && ! $f =~ "patch.prog" && ! $f =~ "sim.prog" ]] ; then progs="$progs $f"; fi; done
+cat program/bt.prog $progs  > output/bt_program23.meta
+
+case $1 in
+s)
+#	gensched sim usb
+	gensched sim
+#	enckey="-k key -i iv"
+	sed '1,4 c define REVD\ndefine ROMCODE\ndefine SIM' -i output/bt_program23.meta;;
+p)
+	echo 'mem_patch00:0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' > output/sched.rom
+	echo 'mem_lap:00 00 00 00 00 00' >> output/sched.rom
+	sed '3 d' -i output/bt_program23.meta;;
+f)
+	gensched test usb fpga
+	enckey="-k key"
+	sed '2 c define FPGA' -i output/bt_program23.meta;;
+t)
+	echo test;gensched test 109x;;
+d)
+        gensched 109x usb
+	sed '2 c define DONGLE' -i output/bt_program23.meta;;
+m)
+        gensched 109x mouse
+	sed '2 c define MOUSE' -i output/bt_program23.meta;;
+esac
+
+
+for f in format/*.format; do if [[ ! $f =~ "bt.format" && ! $f =~ "command.format" ]] ; then fmts="$fmts $f"; fi; done
+cat format/bt.format $fmts format/command.format > output/bt_format.meta
+perl $UTIL/mergepatch.pl 
+perl $UTIL/memalloc.pl
+cd output
+osiuasm bt_program23 -O-W
+sed 's/\(.*\)\r/\1/' -i bt_program23.meta 
+
+
+defs=( FPGA SIM ROMCODE BLE REVA REVB )
+for i in $(seq 0 $((${#defs[@]} - 1))) ; do
+	grep  "^define ${defs[$i]}$" bt_program23.meta -q
+	tsts[$i]=$?
+done
+
+#for i in $(seq 0 $((${#defs[@]} - 1))) ; do echo test ${tsts[$i]};done
+
+geneep -n $enckey
+
+if [[ $2 == "o" ]];then exit;fi
+
+if [ ${tsts[1]} -eq 0 ] ; then
+	sed '8193,24576d' < romcode.rom > romcode0.rom
+	sed '1,8192d' < romcode.rom > romcode1.rom
+	cp romcode0.rom romcode1.rom ../../sim
+	cp romcode.rom ramcode.rom ../../sim
+	if [ -f eeprom.dat ] ; then cp eeprom.dat ../../sim/ ; fi
+	if [ -f otp.rom ] ; then sed '7 c 1' < otp.rom > ../../sim/otp.rom ; fi
+else
+	if [ ${tsts[0]} -eq 0 ] ; then
+		if [ ${tsts[2]} -eq 0 ] ; then
+			sed '8193,24576d' < romcode.rom > romcode0.rom
+			sed '1,8192d' < romcode.rom > romcode1.rom
+			perl $UTIL/rom2mif.pl < romcode.rom > romcode.mif; mv romcode.mif  ../../fpga/
+			echo fpga
+			if [ -f otp.rom ] ; then perl $UTIL/rom2mif.pl < otp.rom > otp.mif; mv otp.mif ../../fpga/ ; fi
+			if [[ $2 == o ]] ; then exit; fi
+			e ku; e hu ramcode.rom 0
+			e su sched.rom;exit 
+		fi
+#		if [[ $1 == "f" ]] ; then 	../../fpga/p u;sleep 1; e su sched.rom;exit; fi
+	fi
+	if [ ! -s ramcode.rom ] ; then exit; fi
+	if [[ $2 =~ e ]];then 
+		e pu;cd ..;e ep;e ku
+	elif [[ $2 =~ [f] ]];then 
+		e ku;e hu romcode.rom 2000;e hu ramcode.rom 0; e su sched.rom;e ku
+	else
+		if [ -f sched.rom ]; then
+			e ku; e hu ramcode.rom 0;e su sched.rom;e pu;e cu
+		else
+			e ku;e hu
+		fi
+	fi
+fi
+
+cd ..
Index: XZR_3MODE_2h_PB_WIN_D_NEW/do.bat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/do.bat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/do.bat	(working copy)
@@ -0,0 +1,168 @@
+@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=shutter
+@rem set device_option=antilost
+@rem set device_option=hci
+@rem set device_option=kb
+@set device_option=mouse
+@rem set device_option=le_kb
+@rem set device_option=dongle
+@rem set device_option=module
+@rem set device_option=prcp
+@rem set device_option=car
+@rem set device_option=remote_car
+@echo off
+
+setlocal enabledelayedexpansion
+for /f %%f in ('dir /b /o program\*.prog') do @if not %%f==bt.prog if not %%f==patch.prog if not %%f==sim.prog set progs=!progs! program\%%f
+type program\bt.prog %progs% > output\bt_program23.meta
+for /f %%f in ('dir /b /o format\*.format') do @if not %%f==bt.format if not %%f==command.format set fmts=!fmts! format\%%f
+type format\bt.format %fmts% format\command.format > output\bt_format.meta
+perl util/mergepatch.pl output/bt_program23.meta
+perl util/memalloc.pl output/bt_format.meta
+
+cd output
+osiuasm bt_program23 -O-W
+
+if "%device_option%" equ "hci" (
+  copy ..\sched\hci_boot.dat ..\output\sched.rom
+) else if "%device_option%" equ "kb" (
+copy ..\sched\ssp.dat + ..\sched\kb.dat +  ..\sched\fpga.dat ..\output\sched.rom
+) else if "%device_option%" equ "le_kb" (
+  copy ..\sched\le_kb.dat + ..\sched\fpga.dat ..\output\sched.rom
+) else if "%device_option%" equ "mouse" (
+  copy ..\sched\109x.dat + ..\sched\mouse.dat ..\output\sched.rom
+) else if "%device_option%" equ "module" (
+  copy ..\sched\DM_module.dat + ..\sched\109x.dat ..\output\sched.rom
+) else if "%device_option%" equ "shutter" (
+  copy ..\sched\shutter.dat + ..\sched\109x.dat ..\output\sched.rom
+) else if "%device_option%" equ "antilost" (
+  copy ..\sched\antilost.dat + ..\sched\109x.dat ..\output\sched.rom
+) else if "%device_option%" equ "dongle" (
+  copy  ..\sched\109x.dat + ..\sched\usb.dat ..\output\sched.rom
+) else if "%device_option%" equ "prcp" (
+  copy ..\sched\Le_prcp.dat + ..\sched\fpga.dat ..\output\sched.rom
+) else if "%device_option%" equ "test" (
+  copy ..\sched\test.dat + ..\sched\fpga.dat ..\output\sched.rom
+) else if "%device_option%" equ "car" (
+  copy ..\sched\car.dat + ..\sched\109x.dat ..\output\sched.rom
+) else if "%device_option%" equ "remote_car" (
+  copy ..\sched\remote_car.dat + ..\sched\109x.dat ..\output\sched.rom
+) else (
+
+cd ..
+echo **********************************
+echo Error: illegal device_option !
+echo **********************************
+goto end
+) 
+
+if "%1" equ "eep" (
+	goto genromrevc
+)else (
+  goto downloadram
+)
+
+:geneeprom
+@rem echo on
+@echo Start to generate EEPROM code
+copy ..\sched\mouse.dat ..\output\sched.rom
+
+..\util\geneep ramcode.rom fwram.rom sched.rom %enc% %enckey% a
+perl ..\util\a1bugfix.pl
+osiuasm bt_program23 -O-W
+..\util\geneep ramcode.rom fwram.rom sched.rom %enc% %enckey% a
+goto gen_eep_end
+
+
+
+
+:genromrevb
+echo off
+@echo Start to generate EEPROM code
+..\..\regedr\geneep ramcode.rom fwram.rom sched.rom %enc% %enckey% b
+goto gen_eep_end
+
+
+:genromrevc
+echo off
+@echo Start to generate EEPROM code
+
+geneep -n -f -z  ramcode.rom sched.rom 0 %enckey% c
+
+rem geneep -n -k key.txt
+
+
+cd ..\output
+copy flash.dat ..\util\flash1.dat
+del flash.dat
+
+cd ..\util
+perl flash_dat2eeprom_dat.pl flash1.dat flash.dat
+copy flash.dat ..\output\flash.dat
+del flash1.dat
+del flash.dat
+
+
+cd ..\output
+echo flash.dat Generated......
+
+if "%device_option%" equ "module" (
+perl eeprom2hciimage_1021s.pl
+echo bt_patch.bin Generated......
+perl bin2array.pl > bt_patch.h
+echo bt_patch.h Generated......
+)
+
+
+:gen_eep_end
+cd ..
+echo **********************************
+echo FLASH Generated.
+echo The Device is %device_option%. 
+echo Use command "e fp" to download FLASH.
+echo **********************************
+goto end
+
+
+
+
+:genrom
+@rem echo on
+perl ..\util\rom2mif.pl romcode
+del ..\..\%FPGA_PATH%\romcode.mif
+copy .\romcode.mif ..\..\%FPGA_PATH%\romcode.mif
+perl ..\util\gen_patch_h.pl >%YC_PATCH_FILE%
+copy .\%YC_PATCH_FILE% ..\..\%MV_PATCH%\%YC_PATCH_FILE%
+copy .\%YC_PATCH_FILE% D:\work\yichip\mv_proj\src\inc\%YC_PATCH_FILE%
+cd ..\..\%FPGA_PATH%
+quartus_cdb btspi -c btspi --update_mif
+quartus_asm --read_settings_files=off --write_settings_files=off btspi -c btspi
+quartus_pgm -c USB-Blaster[USB-0] -m jtag -o "p;.\output\btspi.sof" 
+@echo bitstream_compression=on >1
+@echo memory_map_file=on >> 1
+quartus_cpf -c -o 1 -s EP3C55 -d EPCS16 output\btspi.sof output\btspi.jic  
+@rem quartus_pgm -c USB-Blaster[USB-0] -m jtag -o "pi;.\output\btspi.jic"   
+@del 1
+goto end
+
+
+
+:downloadram
+echo on
+@echo Start to download ram code
+e ku
+e hu
+e su sched.rom
+@echo **********************************
+@echo RAM CODE has been downloaded.
+@echo The Device is %device_option%. 
+@echo **********************************
+cd ..
+
+
+:end
Index: XZR_3MODE_2h_PB_WIN_D_NEW/flash_clear.bat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/flash_clear.bat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/flash_clear.bat	(working copy)
@@ -0,0 +1,6 @@
+e pu
+e 8070l20
+e 8081 8
+e fr 0 10
+e fc
+e fr 0 10
\ No newline at end of file
Index: XZR_3MODE_2h_PB_WIN_D_NEW/flash_download.bat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/flash_download.bat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/flash_download.bat	(working copy)
@@ -0,0 +1,12 @@
+call do.bat eep
+e ku
+ping -n 2 127.1 >nul
+e pu
+
+e 8081 8
+
+e fc
+e fp
+e fr 0 10
+e ku
+e au
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/Hid.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/Hid.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/Hid.format	(working copy)
@@ -0,0 +1,21 @@
+
+(
+/*HID TYPE*/
+0x01 HID_TYPE_CONTROL
+0x04 HID_TYPE_GET_REPORT
+0x05 HID_TYPE_SET_REPORT
+0x07 HID_TYPE_SET_PROTOCOL
+0x09 HID_TYPE_SET_IDLE
+0x0a HID_TYPE_DATA
+/*HID REPORT ID*/
+0x01 HID_REPORT_ID_KB
+
+0x00 HID_CONTROL_P_NOOPERATION
+0x01 HID_CONTROL_P_HARDRESET
+0x02 HID_CONTROL_P_SOFTRESET
+0x03 HID_CONTROL_P_SUSPEND
+0x04 HID_CONTROL_P_EXITSUSPEND
+0x05 HID_CONTROL_P_VIRTUALCABLEUNPLUG
+)
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app.format	(working copy)
@@ -0,0 +1,327 @@
+
+memalloc(
+
+/* load code */
+1 mem_ucode_status
+2 mem_otp_ucode_flag
+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
+2 mem_ucode_ptr
+16 mem_ucode_keybuf
+18 mem_check_plap_temp
+
+
+1 mem_reconnect_flag
+1 mem_switch_fail_master_count
+1 mem_app_evt_timer_count
+
+)
+
+xmemalloc(
+1 mem_app_handshake_flag
+2 mem_sniff_param_interval
+2 mem_sniff_param_attempt
+2 mem_sniff_param_timeout
+
+/*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_bt_process
+2 mem_cb_idle_process
+2 mem_cb_bb_event_process
+2 mem_cb_discovry_timeout
+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_eeprom_base
+
+1 mem_unsniff2sniff_timer_count
+//lpm mode
+1 mem_wake_up_delay_timer
+
+1 mem_app_connection_options
+
+//
+2 mem_app_disconn_reason
+2 mem_app_disconn_reason_flag
+4 mem_lpm_delay_after_sniff
+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
+
+1 mem_ui_led_struct_num
+2 mem_ui_led_struct_ptr
+
+//adc
+2 mem_0_5_adc_io_data
+2 mem_1v_adc_hvin_data
+2 mem_2v_adc_vinlpm_data
+2 mem_1v_adc_io_data
+2 mem_5v_adc_hvin_data
+2 mem_3v_adc_vinlpm_data
+2 mem_otp_adc_flag
+2 mem_reference_voltage
+1 mem_adc_config_flag
+1 mem_adc_channel
+2 mem_adc_current_value
+1 mem_adc_power_flag	//bit0:low power falg ; bit1:no power flag
+
+3 mem_spi_write_addr
+2 mem_spi_write_ptr
+2 mem_spi_write_len
+1 mem_spi_write_flash_sm
+1 mem_eeprom_wp_gpio
+2 mem_kscan_ptr
+ifdef SPI_SIMULATE
+//spi gpio config
+0 mem_spi_simulate_struct
+1 mem_spi_simulate_cs_gpio
+1 mem_spi_simulate_sclk_gpio
+1 mem_spi_simulate_mosi_gpio
+1 mem_spi_simulate_miso_gpio
+1 mem_spi_simulate_motion_gpio
+//spi slave read byte
+50 mem_spi_simulate_read_byte_slave
+1 mem_spi_simulate_read_byte_slave_temp
+1 mem_spi_simulate_read_length_slave
+1 mem_spi_simulate_read_length_slave_temp
+//spi slave write byte
+50 mem_spi_simulate_write_byte_slave
+1 mem_spi_simulate_write_byte_slave_temp
+1 mem_spi_simulate_write_byte_slave_temp_temp
+1 mem_spi_simulate_write_length_slave
+1 mem_spi_simulate_write_length_slave_temp
+endif
+
+0 mem_key_num_ptr
+2 mem_keyscan_ptr
+
+2 mem_power_param_ptr
+
+0 mem_power_on_flag	//forbid to move this variable
+2 mem_24g_head_ptr
+)
+//adc read
+(
+0 ADC_CONFIG_VINLPM
+1 ADC_CONFIG_HVIN
+2 ADC_CONFIG_GPIO
+)
+
+
+(
+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
+0x20 FLASH_COMMAND_SECTOR_ERASE
+)
+
+0x0000 otp_ucode_flag
+0x07f0 otp_ucode_aeskey
+
+/* adc data addr and flag */
+(
+0x07e0 OTP_CHIP_FUNCTIONS
+0x07e2 otp_adc_io_0_5V_addr
+0x07e4 otp_adc_hvin_1V_addr
+0x07e6 otp_adc_vinlpm_2V_addr
+0x07e8 otp_adc_io_1V_addr
+0x07ea otp_adc_hvin_5V_addr
+0x07ec otp_adc_vinlpm_3V_addr
+0x07ee otp_adc_flag_addr
+0xaa55 OTP_ADC_FLAG
+)
+
+/* data stored in eeprom */
+(
+0	eeprom_nv_ram
+
+195	eeprom_module_init_flag//2
+
+)
+
+/*mem_app_handshake_flag*/
+(
+0 APP_HANDSHAKE_NULL
+1 APP_HANDSHAKE_DONE
+
+)
+/*mem_device_option*/
+(
+1 dvc_op_hci
+4 dvc_op_dongle
+5 dvc_op_spp
+6 dvc_op_ukey
+7 dvc_op_ir
+
+9 dvc_op_shutter
+10 dvc_op_module
+11 dvc_op_ble_mouse
+12 dvc_op_ble_kb
+13 dvc_op_ble_prcp
+14 dvc_op_car
+15 dvc_op_AntiLost
+16 dvc_op_remote_car
+255 dvc_op_test
+//device option hight 4
+6 dvc_op_mouse
+7 dvc_op_keyboard
+//device option low 2
+(
+0 MODE_3_MOUSE
+1 MODE_4_MOUSE
+)
+)
+
+(
+3 twspi_sclk
+4 twspi_sdio
+)
+
+(
+4 pan_clk_bit
+5 pan_dat_bit
+6 pan_mov_bit
+)
+
+(
+7 otp_uflag_aes
+6 otp_uflag_skip_eep
+5 otp_uflag_skip_flash
+4 otp_uflag_hci
+)
+
+/* ir command */
+(
+1 ircmd_record
+2 ircmd_play
+3 ircmd_write_pulse
+4 ircmd_write_seq
+5 ircmd_write_next
+
+8 ircmd_test_play
+9 ircmd_test_rec
+
+10 ircmd_report_pulse
+11 ircmd_report_seq
+12 ircmd_report_raw
+
+20 ircmd_screen_on
+21 ircmd_screen_off
+)
+
+(
+7 gpio_active_bit
+)
+(
+2 HID_HANDSHAKE_TIMEOUT
+
+)
+
+(
+1 APP_FLAG_RECONNECT
+)
+(
+5 LPM_WAKE_UP_DELAY_TIMER
+)
+
+
+//mem_app_disconn_reason
+//mem_app_disconn_reason_flag
+//bit map
+(
+2 APP_DISC_RSN_SIZE
+)
+(
+0 APP_DISC_BY_BUTTON
+1 APP_DISC_AFTER_PAIRING
+2 APP_DISC_AFTER_RECONN
+3 APP_DISC_AFTER_SNIFF
+4 APP_DISC_AFTER_SETUP_DONE
+5 APP_DISC_AFTER_HANDSHAKE
+6 APP_DISC_BT
+7 APP_DISC_BLE
+8 APP_DISC_L2CAP_REFUSED
+9 APP_DISC_SWITCH_FAIL
+10 APP_DISC_PB_BUTTON
+)
+//eeprom init flag
+(
+	0xaa55 EEPROM_INIT_FLAG
+)
+
+(
+1 KEY_CONF_STRUCT_LEN
+0 KEY_PIN_OFFSET
+)
+
+(
+12000000 PWM_12MHZ
+)
+(
+0 POWER_OFF
+1 POWER_STARTING
+2 POWER_STANDBY
+)
+//power parameter offset(8 byte)
+(
+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
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_antiLost.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_antiLost.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_antiLost.format	(working copy)
@@ -0,0 +1,202 @@
+omemalloc(
+// memblock for cover the variables portion at shutter.format
+2 mem_antl_lpm_interval
+2 mem_antl_adv_interval
+2 mem_antl_slow_adv_lpm_interval
+2 mem_antl_slow_adv_adv_interval
+0 mem_antl_led_style
+1 mem_antl_led_type
+1 mem_antl_led_blink_count
+1 mem_antl_led_gpio
+2 mem_antl_led_on_time
+2 mem_antl_led_off_time
+2 mem_antl_led_cb_on
+2 mem_antl_led_cb_off
+
+0 mem_antl_buzzer_style
+1 mem_antl_buzzer_type
+1 mem_antl_buzzer_blink_count
+1 mem_antl_buzzer_gpio
+2 mem_antl_buzzer_on_time
+2 mem_antl_buzzer_off_time
+2 mem_antl_buzzer_cb_on
+2 mem_antl_buzzer_cb_off
+
+0 mem_antl_fast_adv_led_style
+1 mem_antl_fast_adv_led_type
+1 mem_antl_fast_adv_led_blink_count
+1 mem_antl_fast_adv_led_gpio
+2 mem_antl_fast_adv_led_on_time
+2 mem_antl_fast_adv_led_off_time
+
+0 mem_antl_slow_adv_led_style
+1 mem_antl_slow_adv_led_type
+1 mem_antl_slow_adv_led_blink_count
+1 mem_antl_slow_adv_led_gpio
+2 mem_antl_slow_adv_led_on_time
+2 mem_antl_slow_adv_led_off_time
+
+0 mem_antl_power_starting_led_style
+1 mem_antl_power_starting_led_type
+1 mem_antl_power_starting_led_blink_count
+1 mem_antl_power_starting_led_gpio
+2 mem_antl_power_starting_led_on_time
+2 mem_antl_power_starting_led_off_time
+
+7 mem_antl_power_starting_buzzer_style
+
+0 mem_antl_power_off_led_style
+1 mem_antl_power_off_led_type
+1 mem_antl_power_off_led_link_count
+1 mem_antl_power_off_led_gpio
+2 mem_antl_power_off_led_on_time
+2 mem_antl_power_off_led_off_time
+
+0 mem_antl_power_off_buzzer_style
+1 mem_antl_power_off_buzzer_type
+1 mem_antl_power_off_buzzer_link_count
+1 mem_antl_power_off_buzzer_gpio
+2 mem_antl_power_off_buzzer_on_time
+2 mem_antl_power_off_buzzer_off_time
+
+7 mem_antl_alert_led_stlye
+
+0 mem_antl_alert_buzzer_stlye
+1 mem_antl_alert_buzzer_type
+1 mem_antl_alert_buzzer_blink_count
+1 mem_antl_alert_buzzer_gpio
+2 mem_antl_alert_buzzer_on_time
+2 mem_antl_alert_buzzer_off_time
+
+0 mem_antl_key_led_style
+1 mem_antl_key_led_type
+1 mem_antl_key_led_blink_count
+1 mem_antl_key_led_gpio
+2 mem_antl_key_led_on_time
+2 mem_antl_key_led_off_time
+
+7 mem_antl_key_buzzer_style
+
+1 mem_antl_queue_width
+1 mem_antl_queue_depth
+1 mem_antl_queue_curr_num
+1 mem_antl_queue_read_ptr
+1 mem_antl_queue_write_ptr
+80 mem_antl_queue_buff
+
+1 mem_antl_key_scan_enable
+1 mem_antl_led_num
+4 mem_antl_led_gpio_map
+
+0 mem_antl_power_param
+1 mem_antl_power_state
+1 mem_antl_power_timer
+1 mem_antl_power_off_timeout
+1 mem_antl_power_starting_timeout
+2 mem_antl_power_off_cb
+2 mem_antl_power_starting_cb
+2 mem_antl_power_standby_cb
+2 mem_event_button_up_cb
+
+1 mem_antl_key_num
+2 mem_cb_antl_key
+4 mem_antl_key_conf0
+
+15 mem_antl_key0_press
+15 mem_antl_key0_release
+
+///////
+1 mem_antl_conn_updata_procedure_state
+2 mem_client_characteristic_configuration_descriptor
+///////
+
+
+//100ms timer
+2 mem_adc_timer
+1 mem_antl_conn_update_timer
+1 mem_antl_send_updata_le_param_timer
+////
+
+2 mem_antl_le_sleep_timer
+2 mem_antl_fast_adv_timer
+2 mem_antl_fast_adv_timeout
+2 mem_antl_le_sleep_timeout
+1 mem_double_click_timer
+1 mem_butten_click_cnt
+
+//1 mem_dvc_seq
+/////////anti lost alarm state/////
+1 mem_antl_led_state
+1 mem_antl_buzzer_state
+1 mem_antl_key_state
+1 mem_antl_lost_mode
+1 mem_alarm_config
+1 mem_alarm_config_notfy_cnt
+
+6 mem_buzzer_pwm_conf
+
+
+/////////anti lost battery adc read////////
+2 mem_adc_timeout
+1 mem_voltage_remain_percent
+
+0 mem_battery_calculate_set
+2 mem_battery_full_voltage
+2 mem_battery_empty_voltage
+2 mem_battery_low_voltage
+2 mem_battery_current_voltage
+
+
+2 mem_rx_window_sniff_inc
+2 mem_interval_increment
+
+2 mem_antl_le_interval_min
+2 mem_antl_le_interval_max
+2 mem_antl_le_latency
+2 mem_antl_le_timeout
+2 mem_antl_le_unnormal_interval_min
+2 mem_antl_le_unnormal_interval_max
+2 mem_antl_le_unnormal_latency
+2 mem_antl_le_unnormal_timeout
+
+400 mem_AntiLost_le_att_list
+)
+
+//app new specific
+(
+0 CONN_PARAM_UPDATA_PROCEDURE_NO_INIT
+1 CONN_PARAM_UPDATA_PROCEDURE_STARTING
+2 CONN_PARAM_UPDATA_PROCEDURE_COMPLETE
+3 CONN_PARAM_UPDATA_PROCEDURE_FAILD
+)
+(
+0 NEW_SPEC_HEADER_OFFSET
+2 NEW_SPEC_OPCODE_OFFSET
+3 NEW_SPEC_DLEGTH_OFFSET  //data length offset
+5 NEW_SPEC_DADDR_OFFSET   //data address offset
+)
+(
+1 OPCODE1_BUTTEN_CLICK_ONCE
+2 OPCODE2_BUTTEN_DOUBLE_CLICK
+3 OPCODE3_ANTL_START_ALRAM
+4 OPCODE4_CURRENT_ALARM_STATE
+5 OPCODE5_BATTER_INFORMATION
+7 OPCODE7_ANTL_CONFIG_ALRAM
+)
+(
+0x0a NEW_SPEC_NOTIFY_HANDLE
+0x0b NEW_SPEC_NOTIFICATION_ENABLE_HANDLE
+0x0d NEW_SPEC_WRITE_HANDLE
+)
+//app new specific end
+
+//mem_anti_lost_mode
+(
+0x01 ANTI_LE_ALARM_ON
+0x00 ANTI_LE_ALARM_OFF
+)
+(
+0 NOTIFICATION_ENABLE_BIT
+1 INDICATION_ENABLE_BIT
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_car.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_car.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_car.format	(working copy)
@@ -0,0 +1,287 @@
+
+
+omemalloc(
+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_24g_received_pac
+400 mem_24g_car_head_ptr
+)
+
+(
+//20ms
+0x0020	FAST_ADV_INTERVAL_VALUE_CAR
+)
+
+(
+0x14 ATT_CAR_CONTROL_HANDLE
+0x14 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
+)
+
+
+
+(
+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
+)
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_light.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_light.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_light.format	(working copy)
@@ -0,0 +1,34 @@
+omemalloc(
+1 mem_light_pwm0
+1 mem_light_pwm1
+1 mem_light_pwm2
+1 mem_light_pwm3
+1 mem_light_pwm4
+1 mem_light_pwm5
+
+1 mem_light_pairing_enable
+2 mem_light_pairing_timer
+1 mem_light_cnum
+1 mem_light_next_record
+80 mem_light_clist
+
+
+1 mem_light_crr_cmd_count
+1 mem_curr_packet_num
+)
+
+(
+0 LIGHT_GROUP0
+)
+
+(
+0 LIGHT_CMD_PWM0
+1 LIGHT_CMD_PWM1
+2 LIGHT_CMD_PWM2
+3 LIGHT_CMD_PWM3
+4 LIGHT_CMD_PWM4
+5 LIGHT_CMD_PWM5
+6 LIGHT_CMD_AUTO_MODE
+0xff LIGHT_CMD_PAIRING
+
+)
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_lightc.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_lightc.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_lightc.format	(working copy)
@@ -0,0 +1,30 @@
+omemalloc(
+1 mem_lightc_led_gpio
+6 mem_lightc_row
+6 mem_lightc_col
+
+1 mem_adv_time
+
+20 mem_cmd0_string
+20 mem_cmd1_string
+20 mem_cmd2_string
+20 mem_cmd3_string
+20 mem_cmd4_string
+20 mem_cmd5_string
+20 mem_cmd6_string
+20 mem_cmd7_string
+20 mem_cmd8_string
+20 mem_cmd9_string
+20 mem_cmd10_string
+20 mem_cmd11_string
+20 mem_cmd12_string
+20 mem_cmd13_string
+20 mem_cmd14_string
+20 mem_cmd15_string
+20 mem_cmd16_string
+20 mem_cmd17_string
+20 mem_cmd18_string
+20 mem_cmd19_string
+20 mem_cmd20_string
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_module.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_module.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_module.format	(working copy)
@@ -0,0 +1,221 @@
+
+omemalloc(	
+	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_spp_lpm_mult
+	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
+
+	//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_le_rx_data_len
+	2 mem_module_le_rx_data_address
+	2 mem_module_le_rx_data_handle
+	//ble write handle
+	2 mem_module_data_write_handle
+	2 mem_module_data_write_handle2
+	//flag
+	1 mem_module_flag
+
+	1 mem_module_hci_notify_len
+	2 mem_module_hci_notify_handle
+	2 mem_module_hci_nofiy_addr
+
+	4 mem_last_transmite_clock
+	
+	300 mem_module_uuid_list
+	0 mem_module_uuid_list_end
+	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
+)
+
+
+(//mem_module_flag
+//bit0~bit3 config module function
+0 MODULE_FLAG_UART_FLOW_CONTROL
+1 MODULE_FLAG_BLE_SEND_MTU23
+2 MODULE_FLAG_BLE_DATA_ENCRYPT
+
+//bit4~bit7 module states change
+4 MODULE_FLAG_BLE_DATA_FINISH
+5 MOUDLE_TASK_UNSNIFF
+6 MOUDLE_TASK_SNIFF
+
+)
+
+(
+34 NV_DATA_LEN
+-1 DECREASED_ONE
+)
+
+
+
+(
+	10 FLAG_MODULE_READ_VDD_COUNT
+)
+
+(
+	110  DM_REFCOM_BUFF_LEN
+)
+(
+	0x200 UART_AIR_CONTROL_THRESHOLD
+)
+
+(
+0x01 HCI_DISCARD_PACKET
+0x00 HCI_NOT_DISCARD_PACKET
+)
+
+
+
+(//Command
+0x00 HCI_CMD_SET_BT_ADDR_REQ
+0x01 HCI_CMD_SET_LE_ADDR_REQ
+0x02 HCI_CMD_SET_VISIBILITY_REQ
+0x03 HCI_CMD_SET_BT_NAME_REQ
+0x04 HCI_CMD_SET_LE_NAME_REQ
+0x05 HCI_CMD_SPP_DATA_REQ
+0x09 HCI_CMD_LE_DATA_REQ
+0x0b HCI_CMD_STATUS_IRQ
+0x0c HCI_CMD_SET_PAIRING_REQ
+0x0d HCI_CMD_SET_PINCODE_REQ
+0x0e HCI_CMD_SET_UARTCONTROL_REQ
+0x0f HCI_CMD_SET_UART_BAUD_REQ
+0x10 HCI_CMD_VERSION_REQ
+0x11 HCI_CMD_BT_DISCONNECT
+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
+0x29 HCI_CMD_SET_CREDIT_GIVEN
+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
+
+0xff HCI_TEST_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
+0x0b HCI_EVENT_FINISH_PACK_NUM
+0X0C HCI_EVENT_SNIFF_MD_CHANGE
+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
+
+)
+
+
+(//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
+)
+
+
+
+(
+0x7e0 OTP_ADDR_RF_PARAM_FIX
+//struct of RF_PARAM_FIX
+// uint8       //length = param_pair_count * 2 
+// uint16     //param-pair-1
+// uint16     //param-pair-2
+// uint16     //param-pair-3
+// uint16     //param-pair-4
+// uint16     //param-pair-5
+// uint16     //param-pair-6
+// uint16     //param-pair-7
+)
+
+(
+0	PAIRING_PINCODE
+1	PAIRING_JUSTWORK
+2	PAIRING_PASSKEY
+3	PAIRING_CONFIRM
+)
+
+
+(
+0x0001	FLAG_BT_PAIRING_SUCCESS
+0x0101	FLAG_BT_PAIRING_FAIL
+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
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_mouse.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_mouse.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_mouse.format	(working copy)
@@ -0,0 +1,550 @@
+
+memalloc(
+2 mem_init_cnt
+)
+//dpi eeprom addr
+
+
+cmemalloc 0(
+// 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_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
+2 mem_mouse_direct_timeout
+2 mem_mouse_no_data_timeout
+2 mem_mouse_discovery_timer
+2 mem_mouse_direct_timer
+2 mem_mouse_no_data_timer
+2 mem_mouse_blank_data_timer
+1 mem_mouse_send_blank_timer
+
+1 mem_mouse_cpi_count
+1 mem_mouse_dpi_button_state
+
+
+//mouse T wheel
+1 mem_wheel_tb_old_pinlevel
+1 mem_wheel_tb_new_pinlevel
+1 mem_wheel_tog 
+1 mem_mouse_tz_data
+1 mem_mouse_tz_data_count
+1 mem_mouse_tz_data_count1
+
+
+1 mem_mwheel_b_old_pinlevel
+1 mem_mwheel_b_new_pinlevel
+1 mem_mwheel_tog 
+1 mem_mouse_z_data
+1 mem_mouse_z_data_count
+1 mem_mouse_z_data_count1
+
+1 mem_reconn_mode
+1 mem_mouse_statue_led_timer  
+1 mem_le_connect_status_flag
+1 mem_le_start_encrypt_timer
+
+7 mem_device_addr_temp
+
+1 mem_adc_read_timer
+1 mem_adc_low_volatage_led_timer_count
+2 mem_adc_reference_voltage
+1 mem_device_number
+2 mem_mouse_flag
+2 mem_mouse_function_enable
+1 mem_combination_select_device_timer_init
+1 mem_combination_select_device_count
+1 mem_select_device_button_statue
+
+1 mem_combination_ui_button_count
+1 mem_bt_discovey_button_statue
+1 mem_sensor_reset_gpio	
+
+1 mem_sensor_id1
+1 mem_sensor_id2
+//eeprom config param
+1 mem_mouse_dpi_led_delay_count
+1 mem_config_sensor_type
+1 mem_config_sensor_motion
+1 mem_lbutton_gpio
+1 mem_rbutton_gpio
+1 mem_mbutton_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_whee_ta_data_gpio
+1 mem_whee_tb_data_gpio
+1 mem_config_bt_button_gpio
+1 mem_config_select_device_button_gpio
+1 mem_config_paraing_led_gpio
+1 mem_config_low_voltage_alarm_gpio
+1 mem_config_device1_led_gpio
+1 mem_config_device2_led_gpio
+1 mem_config_device3_led_gpio	
+1 mem_sensor_data_gpio
+1 mem_dpi_led_gpio
+1 mem_config_function_enable
+1 mem_config_sensor_angle
+1 mem_select_sensor_angle_gpio
+1 mem_select_adc_gpio
+0 mem_config_end
+//max length 1f								
+4 mem_btclk_sensor
+1 mem_wire_usb_interval
+1 mem_mouse_mode_flag
+1 mem_usb_addr
+3 mem_flash_base
+1 mem_24g_device_number
+1 mem_24g_enter_lpm_timer
+1 mem_mouse_1step_up_count
+1 mem_mouse_2step_up_count
+2 mem_24g_pairing_timer_count
+
+//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
+// sensor led 
+1 mem_mouse_sensor_timer_count
+1 mem_sensor_led_style
+
+//led struct
+1 mem_mouse_led_type
+1 mem_mouse_blink_count
+1 mem_mouse_struct_led_gpio
+2 mem_mouse_on_time
+2 mem_mouse_off_time
+2 mem_mouse_cb_ledon
+2 mem_mouse_cb_ledoff
+
+//three devices param
+1 mem_reconn_times
+1 mem_reconn_times_init
+0 mem_mouse_information_start
+1 mem_device_flag
+1 mem_device1_type
+6 mem_device1_addr
+16 mem_device1_link_key
+6 mem_device1_locall_addr
+
+1 mem_device2_type
+6 mem_device2_addr
+16 mem_device2_link_key
+6 mem_device2_locall_addr
+
+1 mem_device3_type
+6 mem_device3_addr
+16 mem_device3_link_key
+6 mem_device3_locall_addr
+2 mem_store_flag
+1 mem_mouse_dpi
+4 mem_mouse_24g_addr
+0 mem_mouse_information_end
+
+0 mem_mouse_dpi_seting
+1 mem_320x_dpi_1
+1 mem_320x_dpi_2
+1 mem_320x_dpi_3
+1 mem_320x_dpi_4
+
+1 mem_3212_dpi_1
+1 mem_3212_dpi_2
+1 mem_3212_dpi_3
+1 mem_3212_dpi_4
+
+1 mem_3610_dpi_1
+1 mem_3610_dpi_2
+1 mem_3610_dpi_3
+1 mem_3610_dpi_4
+
+1 mem_mouse_24g_enter_lpm_enable
+
+//-------------- patch variable ------------------
+2 mem_le_rx_window_inc
+1 mem_empty_count
+15 mem_rf_init_data_new
+
+1 mem_mouse_clear_sensor_data_flag
+1 mem_mouse_null_enter_hibernate_flag
+1 mem_mouse_null_enter_hibernate_timer
+1 mem_mouse_le_reconnect_flag
+
+33 mem_mouse_data_queue
+1 mem_mouse_data_queue_num
+
+2 mem_random_addr_increase_count
+1 mem_mouse_le_conn_param_reject
+1 mem_lpm_mult_init
+537 mem_mouse_le_uuid_sup
+
+1 mem_mouse_wheel_trigger
+1 mem_mouse_wheel_trigger_timer
+
+1 mem_mouse_enter_sniff_count
+1 mem_mouse_send_switch_req_timer
+
+27 mem_le_tx_buffer0_omemalloc
+27 mem_le_tx_buffer1_omemalloc
+27 mem_le_tx_buffer2_omemalloc
+27 mem_le_tx_buffer3_omemalloc
+
+
+646 mem_mouse_uuid_list
+1 mem_lmi_opcode_temp
+
+1 mem_mouse_adc_last_low_voltage_flag
+1 mem_mouse_init_sensor_reset_flag
+
+1 mem_bt_rcvd_switch_req_accept
+1 mem_bt_send_max_slot_req_accept_after_switch
+1 mem_bt_send_lmp_setup_complete
+
+1 mem_l2cap_rcv
+1 mem_mouse_bt_boot_mode
+5 mem_mouse_bt_boot_data
+
+1 mem_mouse_bt_send_first_package_timer
+1 mem_mouse_bt_send_first_package_flag
+
+1 mem_mouse_asm_flag
+2 mem_mouse_x_pre
+2 mem_mouse_y_pre
+
+20 mem_le_adv_swift_pair
+
+1 mem_mouse_multi_led_blink_enable
+1 mem_mouse_multi_led_gpio
+1 mem_mouse_multi_led_state
+1 mem_mouse_multi_led_type
+1 mem_mouse_multi_led_on_timer_init
+1 mem_mouse_multi_led_blink_timer_init
+1 mem_mouse_multi_led_blink_timer
+1 mem_mouse_multi_led_blink_count
+1 mem_mouse_multi_led_on_timer
+1 mem_mouse_multi_led_blink_count_limited
+1 mem_mouse_multi_led_on_poweron2s_flag
+
+1 mem_discovery_on_flag
+1 mem_bt_ui_button_timeout
+1 mem_bt_ui_button_count
+1 mem_mouse_priority_bb_event
+2 mem_mouse_le_parse_l2cap_ptr
+1 mem_low_power_no_data_off_led_time
+1 mem_low_power_check_count
+1 mem_low_power_led_blink_flag
+
+0 mem_mouse_3065xy_dpi_seting
+1 mem_3065xy_dpi_1
+1 mem_3065xy_dpi_2
+1 mem_3065xy_dpi_3
+1 mem_3065xy_dpi_4
+
+
+//flash
+1 mem_flash_ncs_gpio
+1 mem_select_ui_button_count
+4 mem_write_flash_head_temp
+1 mem_mouse_poweron_led_timer
+6 mem_mouse_24g_addr_init
+2 mem_24g_attempt_count
+1 mem_mouse_24g_pair_timer
+
+//zcode
+1 mem_zcode_current_number
+3 mem_xip_flash_offset
+3 mem_flash_start_addr
+3 mem_flash_address
+4 mem_zcode_head
+
+//no motion pin
+1 mem_mouse_long_mult_flag
+1 mem_mouse_le_current_mult_timer
+1 mem_24g_long_sleep_param_update_timer
+
+
+1 mem_mouse_bt_led_gpio
+1 mem_mouse_button_select_device_timer_init
+1 mem_mouse_button_select_device_count
+1 mem_mouse_multi_led_on_timer_init1
+1 mem_mouse_24g_attempt_success_flag
+1 mem_mouse_le_bb_connected_flag
+
+1 mem_mouse_fast_conn_flag
+3 mem_le_lap_high_3B
+
+1 mem_mouse_le_fast_conn_enable_timer
+1 mem_mouse_delay_discovery_count
+
+//le security reuqest
+1 mem_mouse_send_secutiry_request_timer
+1 mem_le_send_security_request_flag
+
+1 mem_mouse_long_button_select_device
+1 mem_mouse_select_device_button_wakeup_flag
+1 mem_mouse_le_updata_not_accepted_flag
+
+25 mem_sensor_8650_init
+13 mem_sensor_ka8_init
+9 mem_sensor_poweron_init
+15 mem_sensor_8009_init
+
+1 mem_customer_key
+
+9 mem_customer_key_press
+9 mem_customer_key_release
+
+1 mem_customer_data_trigger
+1 mem_customer_data_trigger_last
+
+
+70 mem_keyboard_hid_descriptor
+12 mem_sdp_updata_list
+
+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_key_temp
+1 mem_mouse_key_status
+
+6 mem_mouse_fast_conn_addr
+)
+
+(
+//SPI GPIO 
+0x19 MOUSE_SPI1_CLK_GPIO
+0x1A MOUSE_SPI1_SDIO_GPIO
+0X1E MOUSE_SPI2_CLK_GPIO
+0X1F MOUSE_SPI2_SDIO_GPIO
+//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
+//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
+//bt mode device number
+0x01 MODE_BT_DEVICE1
+0x02 MODE_BT_DEVICE2
+0x03 MODE_BT_DEVICE3
+0x02 MODE_24G_DEVICE
+//mouse  flag
+0X00 WRITE_REQ_ENABLE_FLAG
+0X01 LL_START_ENC_FLAG
+0X02 LL_PAIRING_SUCCESS_FLAG
+
+
+//mouse_function_flag
+0X04 MOUSE_FLAG_LEN
+//1byte
+0X00 MOUSE_SELECT_DEVICE_FLAG
+0X01 MOUSE_CPI_FLAG
+0X02 MOUSE_BT_CANNEL_RECONN_FLAG
+0X03 MOSUE_24G_PAIRING_FLAG
+0X04 MOUSE_LOW_VOLTAGE_FLAG
+0X05 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+0X06 MOUSE_LONG_BT_BUTTON_FLAG
+0X07 MOUSE_STORE_EEPROM_FLAG
+0x08 MOUSE_STATUE_UP_FLAG
+0X09 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+
+
+//3byte
+0X10 MOUSE_ENABLE_USB
+0X11 MOUSE_ENABLE_24G
+0X12 MOUSE_ENABLE_SPI2
+0X13 MOUSE_ENABLE_FLASH
+0X14 MOUSE_ENABLE_EEPROM
+0X15 MOUSE_ENABLE_STATUE_UP_THREE_LED
+0X16 MOUSE_ENABLE_STATUE_UP
+0X17 MOUSE_ENABLE_DPI_LED_BLINK
+//4byte
+0X18 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+0X19 MOUSE_ENABLE_2K_EEPROM
+0X1A MOUSE_ENABLE_ADC
+0X1B MOUSE_ENABLE_INIT_DELAY
+0X1C MOUSE_ENABLE_DISCOVERY_SENSOR_LED
+0X1D MOUSE_ENABLE_AUTO_24G_PARING
+0X1E MOUSE_ENABLE_WAKEUP_FROM_POWER
+0X1F MOUSE_ENABLE_GPIO_CONTROL_ADC_SENSOR
+
+
+
+//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
+
+
+//mem_config_function_enable
+0 ENABLE_BT_DISCOVERY_BY_GPIO_LED
+1 ENABLE_MODE_LED
+2 ENABLE_LOW_VOLTAGE_LED
+3 ENABLE_DEVICE_LED
+4 ENABLE_BT_BUTTON
+5 ENABLE_SELECT_DEVICE_BY_GPIO_BUTTON
+6 ENABLE_SELECT_DEVICE_BY_SWITCH
+7 ENABLE_SENSOR_MOTION_PIN
+
+0xFF GPIO_DISABLE
+
+
+//DPI button state 
+0x00 DPI_BUTTON_STATE_DOWN
+0x01 DPI_BUTTON_STATE_UP
+
+
+//eeprom address offect
+0X00 MOUSE_INFO_EEPROM_OFFECT
+0X5A MOUSE_DPI_EEPROM_OFFECT	//1byte
+0X5B MOUSE_G24_ADDR_EEPROM_OFFECT	//4bytes
+0X5F MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET	//2bytes
+0X61 MOUSE_DEVICE_MODE_EEPROM_OFFSET	//1byte	
+0X62 MOUSE_EEPROM_MODULE_INIT_FLAG		//eeprom_module_init_flag 2bytes
+0X64 MOUSE_FAST_CONN_FLAG_OFFSET	//1byte
+
+
+// Sensor id number
+0x30 P32XX_ID1
+0x31 P3065_ID1
+0x3E P3610_ID1
+0x02 P3212_ID2
+0xD1 P3205_TJ3T_ID2
+0XD2 P3204_TJ3L_ID2
+0x54 PKA8_ID2
+0x70 P3065_XY_ID2
+0x5a MA8650_ID2
+0x5a P_MX8650
+0xD8 P8009_ID2
+
+//Sensor type
+0X00 P3205
+0X01 P3065
+0X02 KA8
+0X03 P3204
+0X04 P3212
+0X05 P3610
+0X06 P3065_XY
+0X07 MA8650
+0x07 MX8650
+0x08 P8009
+
+
+//p3610 smart enable flag
+0X00 P3610_SMART_ENABLE
+0X01 P3610_SMART_DISABLE
+
+
+//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
+
+
+0x06 MOUSE_FPGA_RF_WORK_DEBUG_GPIO
+0x02 MOUSE_FPGA_DEBUG_GPIO
+
+)
+
+(
+0x01 ADV_FLAG_LIMITED_DISCOVERABLE
+0x04 ADV_FLAG_BREDR_NOT_SUPPORTED
+)
+
+(
+4 TEST_GPIO
+)
+
+(
+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
+)
+
+(
+0xb9 FLASH_COMMAND_DEEP_POWER_DOWN
+0xab FLASH_COMMAND_RELEASE_DEEP_POWER_DOWN
+)
+
+(
+0 MULTI_LED_ON
+1 MULTI_LED_BLINK
+)
+
+(
+0 DIS_BUTTON_UP
+1 DIS_BT_BUTTON
+2 DIS_COMM_BUTTON
+)
+
+(
+0x017700 G24_LONG_SLEEP_STEP1	//8ms
+0x36ee80 G24_LONG_SLEEP_STEP2	//300ms
+0x124f80 G24_LONG_SLEEP_STEP3	//100ms
+)
+
+(
+8 LOW_VOLTAGE_LED_COUNT
+)
+
+(
+0x01 DPI_FUNCTION_DISABLE
+0x00 DPI_FUNCTION_ENABLE
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_remote_car.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_remote_car.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_remote_car.format	(working copy)
@@ -0,0 +1,150 @@
+
+omemalloc(
+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_24g_enter_lpm_enable
+1 mem_remote_car_empty_packet
+400 mem_24g_RC_head_ptr
+)
+
+
+(
+// eeprom config
+0xb0 REMOTE_PARAM_EEPROM_CONFIG_ADDR
+
+)
+
+
+(
+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
+)
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_shutter.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_shutter.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_shutter.format	(working copy)
@@ -0,0 +1,252 @@
+
+
+omemalloc(
+
+////////////////////////////////////
+//shutter common config
+1 mem_shutter_bluetooth_type
+////////////////////////////////////
+
+//shutter config name by GPIO
+1 mem_shutter_config_enable
+2 mem_shutter_config_otp_base_address
+1 mem_shutter_config_size
+1 mem_shutter_config_select_gpio1
+1 mem_shutter_config_select_gpio2
+1 mem_shutter_config_select_gpio3
+
+2 mem_shutter_config_user_otp_address
+2 mem_shutter_config_eeprom_offset_addr
+
+////////
+2 mem_shutter_config_eeprom_start_flag
+1 mem_shutter_config_user_size
+///////
+1 mem_shutter_config_label
+2 mem_shutter_config_otp_addr
+///////////////////////////////////
+
+////////////////////////////////////
+//classic shutter config
+1 mem_classic_shutter_cable_unplug_conut
+1 mem_classic_shutter_hid_disconn_count
+2 mem_classic_shutter_random_mac_offset_addr
+////////////////////////////////////
+
+////////////////////////////////////
+//ble shutter config
+1 mem_ble_shutter_enable_notify
+2 mem_ble_shutter_reconn_dav_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_classic_shutter_discovery_timeout
+2 mem_classic_shutter_connect_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
+
+5 mem_classic_data_buffer
+
+5 mem_classic_data_buffer1
+5 mem_classic_data_buffer2
+5 mem_classic_data_buffer3
+5 mem_classic_data_buffer4
+5 mem_classic_data_buffer5
+5 mem_classic_data_buffer6
+5 mem_classic_data_buffer7
+5 mem_classic_data_buffer8
+50 mem_classic_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
+
+)
+
+
+
+
+(
+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
+382		BLE_GATT_LIST_SIZE
+487		BT_SDP_LIST_SIZE
+40		BLE_KEY_VALUE_LIST_SIZE
+40		BT_KEY_VALUE_LIST_SIZE
+0x913A	BLE_SHUTTER_GATT_LIST
+0x92B8	CLASSIC_SHUTTER_SDP_LIST
+0x949F	BLE_SHUTTER_KEY_VALUE_LIST
+0x94C7	CLASSIC_SHUTTER_KEY_VALUE_LIST
+)
+
+
+(//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
+
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/app_usb.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_usb.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/app_usb.format	(working copy)
@@ -0,0 +1,205 @@
+
+omemalloc(
+
+)
+
+//class type
+(
+0x00 STANDARD_REQ
+0x01 CLASS_REQ
+0x02 MANUFACTURER_REQ
+)
+//Standard Request Codes
+(
+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)
+)
+//Standard Descriptor Types
+(
+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
+)
+//HID Descriptor Types
+(
+0x21 DSC_HID			      // HID Class Descriptor
+0x22 DSC_HID_REPORT			  // HID Report Descriptor
+)
+//Define bmRequestType bitmaps
+(
+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,
+)
+//HID Request Codes
+(
+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    
+)
+//math cordic
+(
+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
+)
+
+(
+4 USB_STATUS_SETUP
+6 USB_STATUS_NAK
+)
+
+(
+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
+0x01 MAC_BOOT_MODE
+0x02 R_KEY
+0x03 LR_KEY
+)
+
+(
+0x8ffa	HID_KBDATA_ADDR
+0x903a	HID_MSDATA_ADDR
+0x90fe	HID_CONFDATA_ADDR
+)
+
+
+(
+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
+)
+
+
+(
+0x1A0 AT_baud_115200
+0x4e2 AT_baud_38400
+0x1388 AT_baud_9600
+)
+
+(
+0x4e00 mem_module_rx_buf//0x400
+0x4fff mem_module_rx_buf_end
+0x1c00 mem_module_tx_buf
+0x1fff mem_module_tx_buf_end
+)
+
+(
+0x01 BIND_ACKPAYLOAD
+0x08 BIND_ACKPAYLOAD_LENGTH
+0x02 USER_ACKPAYLOAD
+0x1F USER_ACKPAYLOAD_LENGTH
+
+0xcf CMD_OTA
+0xc0 CMD_OTA_START
+0xc1 CMD_OTA_DATA
+0xc2 CMD_OTA_EXIT
+0x55 OTA_STA_SUCCESS
+0xaa OTA_STA_FAIL
+)
+
+(
+0 TIMER_NAK
+640 TIMER_NAK_DELAY
+15 TIMER_WAKEUP
+5000 TIMER_WAKEUP_DELAY
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/bt.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/bt.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/bt.format	(working copy)
@@ -0,0 +1,1027 @@
+
+	width = 32
+	const length = 12000
+
+	/* ========= memory ============== */
+memalloc(
+/* 00-0f most frequently used area  */
+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_inquiryscan_waitcnt
+1 mem_inquiryscan_rcvcnt
+1 mem_pagescan_waitcnt
+1 mem_pagescan_rcvcnt
+1 mem_pagescan_rcvfhscnt
+1 mem_slave_rcvcnt
+1 mem_page_transmit
+1 mem_page_rcv
+1 mem_page_rcv_fhs
+1 mem_master_rcvcnt
+
+/* 10-1f debug area */
+1 mem_fhs_wait_counter
+1 mem_newconnto_counter
+1 mem_inquiry_transmit
+1 mem_inquiry_rcv
+1 mem_fw_ver
+1 mem_current_context
+1 mem_le_ch_mapped
+1 mem_last_freq
+1 mem_rssi
+1 mem_rx_type
+2 mem_rx_hec_err
+2 mem_rx_crc_err
+2 mem_context_ptr
+8 mem_display
+8 mem_bcd
+
+		/* context swappable area */
+1 mem_state
+1 mem_mode
+2 mem_tsniff
+4 mem_sniff_anchor
+6 mem_clk_offset
+2 mem_rx_window
+3 mem_plap
+1 mem_puap
+2 mem_pnap
+1 mem_conn_handle
+1 mem_arq
+1 mem_lmp_to_send
+1 mem_lmi_opcode
+1 mem_lmo_reason
+1 mem_op
+1 mem_state_map
+4 mem_supervision_timer
+2 mem_supervision_to
+1 mem_name_offset
+1 mem_key_size
+1 mem_conn_sm
+12 mem_aco
+16 mem_kc
+1 mem_conn_timer
+1 mem_sniff_attempt
+1 mem_sniff_timeout
+2 mem_dsniff
+1 mem_amaddr
+1 mem_lmo_opcode1
+1 mem_lmi_opcode1
+1 mem_lmo_reason1
+1 mem_lmo_tid1
+1 mem_lmo_opcode2
+1 mem_lmi_opcode2
+1 mem_lmo_reason2
+1 mem_lmo_tid2
+
+3 mem_hci_version
+2 mem_acl_pktlen
+1 mem_sco_pktlen
+2 mem_acl_pktcnt
+2 mem_sco_pktcnt
+
+1 mem_current_sniff_attempt
+1 mem_current_sniff_timeout
+1 mem_sniff_timeout_temp
+1 mem_nfreq_index_inq
+1 mem_nfreq_index_page
+1 mem_ninqy_index
+1 mem_fhs_misc
+
+
+
+/* lpo related */
+4 mem_subsniff_instant
+1 mem_subsniff_rate
+2 mem_subsniff_tcmax
+1 mem_subsniff_tsniff
+1 mem_lpm_adjust
+6 mem_sync_clke
+1 mem_lpm_current_mult
+4 mem_gpio_wakeup_low
+4 mem_gpio_wakeup_high
+	
+
+/* sco & esco */
+1 mem_air_mode
+1 mem_sco_asso_handle
+2 mem_sco_handle
+1 mem_esco_desco
+1 mem_esco_type
+1 mem_neogotiation_state
+1 mem_saved_amaddr
+1 mem_esco_arq
+1 mem_esco_saved_arq
+30 mem_sco_obuf
+30 mem_sco_ibuf
+1 mem_sco_poll
+
+
+
+//page
+1 mem_npage_index
+1 mem_page_mode
+4 mem_page_clk
+
+
+/* test related */
+2 mem_tst_pktcnt_sync
+2 mem_tst_pktcnt_hec
+2 mem_tst_pktcnt_crc
+2 mem_tst_pktcnt_dmh
+3 mem_tmp_buffer_head
+80 mem_tmp_buffer
+
+
+1 mem_tester_emulate
+0 mem_temp_payload
+1 test_mode_scenario
+1 test_mode_hopping_mode
+1 test_mode_tx_freq
+1 test_mode_rx_freq
+1 test_mode_power_mode
+1 test_mode_poll_period
+1 test_mode_packet_type
+2 test_mode_data_length
+1 mem_test_mode_old_debug_config
+1 mem_tester_cnt
+
+
+/*temp mem*/
+1 mem_temp_am_addr
+1 mem_temp_arq
+
+//
+2 mem_len
+4 mem_clkn_bt
+4 mem_clke_bt
+4 mem_dpll_clkn
+1 mem_connection_options
+
+1 mem_nameres_cnt
+2 mem_txptr
+2 mem_slot_offset
+
+//extm
+1 extm_fhs_misc
+1 extm_newconn_am_addr
+3 extm_class
+3 extm_lap
+1 extm_uap
+3 extm_nap
+
+
+//debug
+1 mem_debug_config
+1 mem_lch_code
+1 mem_fhs_am_addr
+2 mem_dpll_error
+1 mem_select_list_item
+0 mem_temp_reconn_record
+1 mem_record_bt_mode
+6 mem_temp_lap
+2 mem_list_item_ptr
+
+100 mem_eir
+)
+
+
+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  */
+80 mem_context
+1 mem_current_amaddr
+1 mem_lpm_mode
+1 mem_device_option
+1 mem_scan_mode
+4 mem_last_clkn
+
+	/* parameters */
+8 mem_features
+3 mem_lap
+1 mem_uap
+2 mem_nap
+1 mem_npage
+3 mem_glap
+3 mem_class
+2 mem_iscan_window
+2 mem_iscan_interval
+2 mem_pscan_window
+2 mem_pscan_interval
+2 mem_page_interval
+2 mem_page_window
+2 mem_page_to
+2 mem_inq_window
+1 mem_fcomp_mul
+1 mem_fcomp_div
+2 mem_rx_window_init
+2 mem_rx_window_sniff
+2 mem_rf_init_ptr
+
+	/* connection related */
+1 mem_last_type
+1 mem_last_type_esco
+1 mem_last_type_saved
+2 mem_retransmission_cnt
+4 mem_next_btclk
+
+1 mem_rf_rccal
+1 mem_handle_num
+1 mem_max_slot
+1 mem_eir_enable
+
+/* AFH related */
+4 mem_afh_instant
+2 mem_afh_error_total
+1 mem_afh_cfg
+1 mem_afh_new_mod
+5 mem_afh_map_lo
+5 mem_afh_map_hi
+1 mem_afh_used
+2 mem_afh_index
+11 mem_afh_map_new
+80 mem_afh_map
+4 mem_afh_timer
+10 mem_afh_classify_channel_map
+
+
+	/* 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_esco_addr
+1 mem_sniff_unint_lost
+1 mem_ptt
+4 mem_sleep_counter   //should be 0x41fc in REVC
+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
+
+/* 8139-813b lpm_ctrl[31:12] */
+3 mem_lpm_config				
+
+1 mem_lpm_xtalcnt
+1 mem_lpm_buckcnt
+1 mem_lpm_ldocnt
+1 mem_lpm_isogate
+1 mem_lpm_isogate_final
+16 mem_saved_gpio	// should be 0x421e in REVC
+3 mem_saved_gsel
+8 mem_saved_mark
+1 mem_saved_spidctrl
+2 mem_patch_ptr
+2 mem_patch_len
+
+32 mem_timers
+
+/*LINK KEY*/
+1 mem_link_key_exists
+16 mem_link_key
+
+
+/* HCI */
+1 mem_hci_cmd
+1 mem_hci_conn_handle
+3 mem_hci_plap
+1 mem_hci_puap
+2 mem_hci_pnap
+
+/*Peripherals*/
+1 mem_uartd_rxitems_got_data
+1 mem_uartd_rxitems_threshold
+2 mem_uartd_rx_timeout
+
+1 mem_loadcode_times
+
+1 mem_tx_lch
+2 mem_tx_len
+
+1 mem_tx_power
+
+1 mem_context_number
+
+1 mem_250k_freq_enable
+
+ifdef DEBUG_RF_INIT
+1 mem_rf_init_data
+endif
+)
+
+(//bluetooth tx power
+0 TX_POWER_0DB
+1 TX_POWER_3DB
+2 TX_POWER_5DB
+3 TX_POWER_f3DB
+4 TX_POWER_f5DB
+
+0x20 TX_POWER_PAIR
+)
+
+
+ifdef RAM_VERSION
+0x4b17 rom_lpm_sleep
+0x4b1d rom_lpm_enter_sleep
+0x4b16 rom_lpm_write_ctrl
+0x6b1a rom_otpd_read_data
+0x6ada rom_otp_write
+else
+0x3b17 rom_lpm_sleep
+0x59e0 rom_save_ucode
+
+0x4219 rom_mem_lpm_xtalcnt
+0x423b rom_mem_patch_ptr
+0x423d rom_mem_patch_len
+
+0x5b1a rom_otpd_read_data
+0x5ada rom_otp_write
+endif
+	/* context */
+(
+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 */
+0x18 coffset_lmp_to_send
+0x1b coffset_op
+0x1c coffset_state_map
+	/* le only */
+0x18 coffset_le_ch
+0x19 coffset_le_hop
+0x1a coffset_le_event_cnt
+
+80 context_size
+1 context_num
+)
+
+(
+0 lpm_flag_wake
+1 lpm_flag_loadcode
+)
+
+/* ========= parameters ============== */
+(
+0x0050 param_newconn_arq
+0x0007 param_esco_addr
+0x0010 param_conn_handle
+0x01f0 param_conn_handle_comp
+0x0020 param_newconnto
+0x0008 param_pagerespto
+0x0a00 param_snooze_setup_orig
+0x5353 param_snooze_ahead_orig
+0x00ff param_ninquiry
+0x2000 param_page_to
+0x0005 param_max_slot
+0x0010 param_sco_poll
+
+/* 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
+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
+endif
+
+110 param_lpm_fix
+10 param_lpo_extra
+200 param_lpm_adjmax
+
+ifdef SIM
+20 param_hibernate_clks
+3 param_chgpump_delay
+else
+-1 param_hibernate_clks
+3000 param_chgpump_delay
+endif
+
+3 param_featrue_ssp
+0x0101 param_lmpext_ssp_enable
+339 param_acl_pktlen
+30   param_sco_pktlen
+1     param_acl_pktcnt		/*buffer acl pkt cnt*/
+7     param_sco_pktcnt
+
+
+0x8fffff param_features0
+0x9d83fe param_features1  // not support afh
+0x8359     param_features2
+0x000033 param_unap
+0x001177 param_lap
+0x9e8b33 param_glap
+0x002540 param_class//0x180208 //0x002580//402500//240404
+0x12e904 param_hci_version
+0x000a04 param_lmp_version//0x0a04
+0x000a06 param_lmp_version0
+0x12e9 param_lmp_subversion
+0x0012 param_tisw
+0x0012 param_tpsw
+0x1000 param_tisi
+0x0800 param_tpsi
+0x0020 param_page_window
+0x0020 param_inq_window
+0x1c80 param_supervision_to
+39 param_fcomp_div
+2 param_fcomp_mul
+6     param_name_len
+0x535442 param_name
+0x344950 param_name1
+
+
+)
+
+/* ======= packet types  ========= */
+(
+0x0      type_null    
+0x1      type_poll   
+0x2      type_fhs    
+0x3      type_dm1    
+0x4      type_dh1    
+0x5      type_hv1    
+0x6      type_hv2    
+0x7      type_hv3    
+0x8      type_3dh1     
+0x9      type_aux1   
+0xa      type_dm3    
+0xb      type_dh3    
+0xe      type_dm5    
+0xf      type_dh5    
+0x10     type_id
+0x11     type_shutdown
+0x13     type_lmp
+)
+
+/* ========== flag[6] =============== */
+(
+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 */
+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       slave2         /* 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 */
+54       le		/* bluetooth 4.0 LE enable */
+55       aes_ready	/* set when aes is ok */
+63       never         /* read only, always 0 */
+)
+
+default flag = always
+
+/* ========== reg[6] =============== */
+(
+0        mark   /* for keeping strobes, more permanent */
+1        type   /* save and verify during rx */     /* rw */
+2        temp   /* general purpose register, 64 bits */
+3        contru  /* contr 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       contwu   /* 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       interrupts    /* 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 */
+21       ctrl_reg     /* 2023 and after */
+22       jtag_addr    /* load jtag address field, lsb */
+23       freq_index   /* 7 bit read only */
+24       jtag_data    /* wdata to and rdata from jtag */
+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
+/* wire even_train    = freq_mode[4];    // odd even train                            */
+/* wire conn_mode     = 3;    // connection                                           */
+/* wire iqpgscan_mode = 2;    // slave in inquiry and page (not response)             */
+/* wire iqpgresp_mode = 1;    // slave in inquriy and page (response only)            */
+/* wire inqypage_mode = 0;    // master in inquiry and page(response or not response) */
+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 */
+43       host_mode         /* generic stuff for kick starts */
+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		
+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
+
+/* regext_index */
+(
+0 regidx_data
+4 regidx_key
+8 regidx_xor
+12 regidx_result
+)
+/* ========== radio_ctrl========= */
+(
+0 TXGFSK
+1 PSK
+2 PSK3M
+3 RESET
+)
+/* assign BPWR = radio_ctrl[0]; */
+/* assign PARAMP = radio_ctrl[1]; */
+/* assign XTALPU = radio_ctrl[2]; */
+/* assign SYNTHPU = radio_ctrl[3]; */
+/* assign TXPU = radio_ctrl[4]; */
+/* assign RXPU = radio_ctrl[5]; */
+/* assign SLCTRL = radio_ctrl[6]; */
+/* assign XTALSEL_MUX_SEL = radio_ctrl[7] */
+
+
+/* =========== destination[4] ============== */
+(
+0 bucket
+1 rxf
+2 back
+3 mod
+)
+default dest = bucket
+
+/* =========== source[4] ============= */
+(
+1 txf
+3 demod
+)
+default source = 0
+
+
+/* ============== mark ============= *//*0 - 47 */
+(
+
+0  mark_fhs_eir  
+1  mark_rxbuf_inuse
+2  mark_tx_l2cap
+3  mark_switch_initiated
+4  mark_accept_switch
+5  mark_loopback
+7  mark_esco
+8  mark_esco_rxok
+9  mark_context
+10 mark_am_addr_broadcast
+11 mark_fhs_already_good
+12 mark_page_trainb
+13 mark_lpm_mult_enable
+14 mark_usb_flag
+15 mark_old_packet
+16 mark_longpacket
+17 mark_testmode
+18 mark_ar2
+19 mark_h5tx_rp
+20 mark_h5tx_crc	
+21 mark_h5tx_retransmit
+22 mark_h5rx_pstart
+23 mark_h5_sync
+24 mark_h5_reinit
+28 mark_inquiry_on
+29 mark_inquiry_state
+30 mark_inquiry_trainb
+31 mark_periodical_diac
+32 mark_all_diac
+33 mark_slave_in_rand_accepted
+34 mark_reconn_recieve_switch
+35 mark_isstr
+36 mark_loadcode
+37 mark_ext_patch
+38 mark_24g
+39 mark_24g_conext
+40 mark_eeprom_size
+// REVAB:max 35, REVC:max 63
+41 mark_ble_tx_md
+42 mark_ble_rx_md
+43 mark_otp_encrypt
+44 mark_first_packet
+45 mark_role_switch_receive_fhs
+)
+
+(
+1 reload_type_otp
+2 reload_type_spi
+3 reload_type_iic
+)
+
+
+/* ============== soft timers ============== */
+(
+0 le_adv_interval_timer
+1 inquiry_length_timer
+2 le_scan_interval_timer
+3 page_length_timer
+4 iscan_interval_timer
+5 pscan_interval_timer
+6 switch_wait_timer
+7 enpt_delay_timer
+8 page_interval_timer
+9 key_scan_timer
+10 smp_pairing_timer
+11  ui_led_blink   //led timer չ
+12  ui_led_blink1
+13 ui_led_blink2
+ 
+)
+
+(
+1 hci_cmd_inquiry
+2 hci_cmd_inquiry_cancel
+3 hci_cmd_remote_name_req
+4 hci_cmd_remote_feature_req
+5 hci_cmd_create_conn
+6 hci_cmd_disconn
+7 hci_cmd_accept_conn
+8 hci_cmd_reject_conn
+9 hci_cmd_pair
+10 hci_cmd_nopair
+11 hci_cmd_linkkey
+12 hci_cmd_nokey
+13 hci_cmd_auth
+14 hci_cmd_stopencrypt
+15 hci_cmd_startencrypt
+16 hci_cmd_setup_sco
+17 hci_cmd_disconn_sco
+18 hci_cmd_in_sniff
+19 hci_cmd_exit_sniff
+20 hci_cmd_remote_version_req
+21 hci_cmd_remote_ext_features_req
+22 hci_cmd_io_cap
+23 hci_cmd_role_discovery
+24 hci_cmd_role_switch
+25 hci_cmd_accept_with_switch
+26 hci_cmd_detach
+27 hci_cmd_le_create_conn
+28 hci_cmd_accept_sco_conn
+80 hci_cmd_wait_remote_feature
+81 hci_cmd_wait_remote_ext_feature
+82 hci_cmd_wait_remote_name
+)
+
+
+
+/* ============== debug ============= */
+(
+0 debug_neg_skew
+1 debug_bitbucket
+2 debug_dont_clear_got_tx
+3 debug_scatter_enabled
+4 debug_tx_fixed_freq
+5 debug_rx_fixed_freq
+6 debug_tx_pattern
+)
+
+/* ============== tester_emulator ============= */
+(
+0 tester_fixed_flow
+1 tester_fixed_flow_polarity
+2 tester_change
+3 tester_exit
+4 tester_pattern_test
+5 tester_whitening_change
+6 tester_fixed_freq
+7 tester_no_whitening
+)
+
+/* ============== mode ==========*/
+(
+0 mode_le
+1 mode_master
+2 afh_enable
+3 afh_change
+4 send_sco_when_slave
+5 first_seqnx
+)
+
+/* ============== state_map ==========*/
+(
+0 smap_lmptidinit
+1 smap_lmptid
+2 smap_encryption
+3 smap_name_res
+4 smap_name_req
+5 smap_edr
+6 smap_rxlmp
+7 smap_rxl2cap
+)
+(
+0 state_inconn
+1 state_insniff
+2 state_insco 
+3 state_inpage
+4 state_conn_comp
+5 state_init_seq
+6 state_combkey
+7 state_linkkey
+)
+(
+0 op_send_sres
+1 op_auth_req
+2 op_inrand_req
+3 op_disconn
+4 op_stop_enc
+5 op_start_enc
+6 op_txl2cap
+7 op_pkt_comp
+)
+
+
+/* ============== arq [3] ================ */
+(
+0 flow
+1 arqn
+2 seqn
+3 wack
+4 flowx              /* out */  /* not really in memory */
+5 arqnx              /* out */
+6 seqnx              /* out */
+7 bcast1             /* first broadcast received */
+)
+
+/* arq          {flow,arqn,seqn}, read/write */
+/* [0] flow r/w  acl full status of the other, store during rx, checked during tx */
+/* [1] arqn r/w  ack of the other during rx (ack tx fifo),                        */
+/* [2] seqn r/w  seqn of the other, check during rx                               */ 
+/* arqx         {flowx,arqnx,seqnx} */
+/* [0] flowx r/o flow back to the other, 1 alow send, 0 not to send, read only tx */
+/* [1] arqnx r/w ack to the other, set by rx, send back on tx                     */
+/* [2] seqnx r/w toggled by arqn, to be send during tx                            */ 
+
+(
+0 llid0
+1 llid1
+2 nesn
+3 sn
+4 md
+5 wak
+)
+
+/* AFH flags */
+(
+0 AFH_CFG_ON
+1 AFH_CFG_TIMER
+2 send_lmp_set_afh
+3 AFH_CFG_REPORT_MODE
+4 AFH_CFG_MASTER_SENT_REQ
+)
+
+/* LLID CODE */
+(	
+1 LLID_L2CAP_CONT
+2 LLID_L2CAP_START
+3 LLID_LMP
+)
+
+/* ============== master_state ==========*/
+(
+0  master_in_idle
+1  master_in_inquiry
+2  master_in_page
+10 master_in_becoming_slave
+15 master_in_conn
+)
+(
+0 newrev_feature_bettx
+1 newrev_feature_betplltx
+2 newrev_feature_skip_retransmit
+3 newrev_feature_init_radio_after_sleep
+4 newrev_feature_no_lpolog
+)
+/*************mem_pincode_state****************/
+(
+0 pincode_state_ilde
+1 pincode_state_wait_pincode
+2 pincode_state_pincode_ready
+)
+
+
+// lpm_write
+(
+1 lpmreg_sel_ctrl
+2 lpmreg_sel_ctrl2
+4 lpmreg_sel_gpiolow
+8 lpmreg_sel_gpiohigh
+16 lpmreg_sel_counter
+)
+
+//scan_mode
+(
+0 inq_scan_mode
+1 page_scan_mode
+2 page_inq_enable
+)
+//mem_neogotiation_state
+(
+ 0 default_neogotiation_state
+ 1 prarm_neogotiation
+)
+
+//mem_lpm_wake_lock
+(
+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
+10 wake_lock_lmp_tx
+11 wake_lock_lmp_rx
+12 wake_lock_l2cap_tx
+13 wake_lock_l2cap_rx
+14 wake_lock_ipc_c512bt
+15 wake_lock_ipc_bt2c51
+
+)
+
+(
+0 bt_disabled
+1 ble_disabled
+2 module_disable
+
+)
+
+(
+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
+)
+
+
+//sniff UART_TX UART_RX
+(
+6 UART_WAKEUP_TX
+7 UART_WAKEUP_RX
+)
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/command.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/command.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/command.format	(working copy)
@@ -0,0 +1,1384 @@
+
+/* 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
+  ! 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
+  ! 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
+  ! 0x0c store          /* write to memory, data from pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0c hstore          /* write to memory, data from pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1c istore        /* write to memory, data from pdata, address from regr then mem_ptr */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg            /* hold address */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] 0
+end
+
+format
+  ! 0x0d fetch          /* read from memory, data into pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d hfetch          /* read from memory, data into pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d crc         /* read from memory, count from loopcnt, put crc result into pdata */
+  % addr
+  [5] opcode
+  [6] 0
+  [1] 0
+  [1] 0
+  [4] 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] reg             /* hold address */
+  [1] 0
+  [1] 0
+  [4] 0
+  [15] 0
+end
+
+
+format
+  ! 0x1d ifetch         /* read from memory, data into pdata, address from regr then mem_ptr */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg             /* hold address */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] 0
+end
+
+format
+  ! 0x0c storet          /* write to memory, data from temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0c hstoret          /* write to corereg, data from temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1c istoret        /* write to memory, data from temp, address from regr won't increment */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg            /* hold address */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] 0
+end
+
+format
+  ! 0x0d fetcht          /* read from memory, data into temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d hfetcht          /* read from corereg, data into temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1d ifetcht         /* read from memory, data into temp, address from regr won't increment */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg             /* hold address */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] 0
+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 mult                  /* immediate mult regr */  /* the product will be ready 17 clks later */
+  % immediate                                   /* use "product" instruction to get the result */
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 16                   /* generate diven pulse to div */
+  [6] null
+  [9] immediate
+end
+
+format
+  ! 0x13 imult           /* pdata mult regr */  /* the product will be ready after 15 nops */
+  % reg                                         /* use product opcode to get the result */
+  [5] opcode
+  [6] reg
+  [6] 16                   /* generate mult pulse to multiplier */
+  [6] null
+  [9] 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
+  ! 3 product              /* harvest mult product */
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 17
+  [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
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/g24.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/g24.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/g24.format	(working copy)
@@ -0,0 +1,494 @@
+
+cmemalloc 0 (
+34 mem_24g_rxbuf
+32 mem_24g_txbuf
+34 mem_24g_txpayload
+32 mem_24g_rxpayload
+1 mem_24g_rxdata_length
+1 mem_24g_pid
+1 mem_24g_datalen
+1 mem_24g_data_type
+1 mem_24g_txlen
+2 mem_24g_rx_window
+1 mem_24g_ensure
+2 mem_24g_txfail_cnt
+1 mem_24g_get_ack_fail
+1 mem_24g_retry
+1 mem_24g_ch
+1 mem_24g_current_ch_number
+4 mem_24g_paring_addr
+1 mem_24g_pairing_sm
+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
+4 mem_24g_addr
+1 mem_24g_abort_pac
+2 mem_24g_check_dongle_times
+
+8 mem_24g_enter_hibernate
+4 mem_24g_device_addr
+1 mem_24g_pac_index
+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_max_retry
+1 mem_24g_mode
+
+34 mem_24g_rxdata_temp
+4 mem_24g_rx_addr
+1 mem_dongle_mode_init
+1 mem_dongle_work_mode
+1 mem_dongle_ms_bind_step
+1 mem_dongle_kb_bind_step
+1 mem_dongle_bind_device_status
+8 mem_24g_bind_payload
+1 mem_24g_abort_packet
+1 mem_24g_rf_laststa
+4 mem_24g_hop_btclk
+1 mem_24g_hop_interval
+1 mem_24g_mode_switch
+1 mem_24g_ackpayload_enable
+1 mem_24g_hop_packet
+1 mem_24g_pair_mode
+1 mem_24g_nodata_timer_enable
+1 mem_24g_time_slice
+8 mem_24g_kb_data_sta_data
+8 mem_24g_kb_data_last_data
+3 mem_24g_kb_multikey_sta_data
+3 mem_24g_kb_multikey_last_data
+1 mem_24g_kb_blank_data_enable
+1 mem_24g_kb_mul_blank_data_enable
+1 mem_24g_ms_blank_data_enable
+4 mem_24g_kb_addr
+4 mem_24g_ms_addr
+
+1 mem_24g_dg_last_ch
+1 mem_24g_dg_ch_number
+1 mem_24g_dg_config_ch_once
+1 mem_24g_kb_last_ch
+1 mem_24g_kb_ch_number
+1 mem_24g_kb_config_ch_once
+1 mem_24g_ms_last_ch
+1 mem_24g_ms_ch_number
+1 mem_24g_ms_config_ch_once
+
+2 mem_24g_syncword
+1 mem_24g_syncword_crc8
+1 mem_24g_get_syncword_crc8
+2 mem_24g_ota_sta_pid
+
+1 mem_tx_power_temp
+
+1 mem_rssi_hex
+1 mem_rssi_noise_avg
+1 mem_rssi_noise_index
+1 mem_rssi_signal_index
+1 mem_rssi_noise_dg_avg
+1 mem_rssi_noise_kb_avg
+1 mem_rssi_noise_ms_avg
+1 mem_rssi_noise_dg_index
+1 mem_rssi_noise_kb_index
+1 mem_rssi_noise_ms_index
+8 mem_rssi_signal_buf
+
+1 mem_queue_ele_num
+2 mem_queue_read
+2 mem_queue_write
+0 mem_queue_start
+32 mem_data_ele0
+32 mem_data_ele1
+32 mem_data_ele2
+0 mem_queue_end
+2 mem_queue_temp
+
+2 mem_cb_24g_data
+1 mem_24g_hop_fastly_cnt
+1 mem_24g_hop_pac_retry
+1 mem_24g_rf_hop_ch
+1 mem_24g_rf_last_sta
+1 mem_24g_rf_work_stage
+1 mem_24g_sync_cnt
+1 mem_power_ctrl_pac_succ_cnt
+1 mem_rssi_avg_received
+1 mem_rssi_hex_received
+1 mem_power_ctrl_level
+
+1 mem_seqi
+1 mem_24g_auto_paring_switch
+1 mem_24g_paccnt
+1 mem_24g_transmit_by_interrupt
+2 mem_24g_transmit_by_interrupt_exit_count
+2 mem_24g_transmit_by_interrupt_exit_count_init
+6 mem_24g_allpowerful_addr
+
+1 mem_24g_stop_g24_mode
+2 mem_24g_stop_g24_mode_timeout
+2 mem_24g_stop_g24_pair_mode_timerout
+1 mem_24g_pair_current_ch_num
+1 mem_24g_powerful_current_ch_num
+
+1 mem_24g_search_dongle_action
+1 mem_24g_search_dongle_count
+1 mem_24g_search_dongle_ch
+1 mem_24g_search_dongle_wait
+
+1 mem_24g_conn_sm
+)
+
+(
+//add
+0   offset_24g_rxbuf
+1   offset_24g_rxbuf_add1
+2   offset_24g_rxbuf_add2
+34  offset_24g_txbuf
+66  offset_24g_txpayload
+100 offset_24g_rxpayload
+102 offset_24g_rxpayload_add2
+132 offset_24g_rxdata_length
+133 offset_24g_pid
+134 offset_24g_datalen
+135 offset_24g_data_type
+136 offset_24g_txlen
+137 offset_24g_rx_window
+139 offset_24g_ensure
+140 offset_24g_txfail_cnt
+141 offset_24g_get_ack_fail
+142 offset_24g_tx_without_int
+143 offset_24g_retry
+144 offset_24g_ch
+145 offset_24g_current_ch_number
+146 offset_24g_paring_addr
+150 offset_24g_pairing_sm
+151 offset_24g_ch_map1
+155 offset_24g_ch_map2
+159 offset_24g_ch_map3
+163 offset_24g_ch_map4
+167 offset_24g_tx_btclk
+171 offset_24g_interval
+172 offset_24g_interval_min
+173 offset_24g_interval_max
+174 offset_24g_addr
+178 offset_24g_abort_pac
+179 offset_24g_sync_pac
+180 offset_24g_hop_pac
+181 offset_24g_check_dongle_times
+182 offset_24g_enter_hibernate
+190 offset_24g_device_addr
+194 offset_24g_pac_index
+195 offset_24g_no_ack
+196 offset_24g_sta_crc
+199 offset_24g_last_crc
+202 offset_24g_sta_pid
+203 offset_24g_last_pid
+204 offset_24g_max_retry
+205 offset_24g_mode
+206 offset_24g_rf_last_sta
+207 offset_24g_rf_hop_ch
+208 offset_24g_sync_cnt
+209 offset_24g_hop_pac_retry
+210 offset_24g_rf_work_stage
+211 offset_24g_hop_fastly_cnt
+212 offset_24g_short_sleep_timer
+216 offset_24g_cb_data
+218 offset_24g_cb_lpm_prepare
+220 offset_24g_cb_lpm_before
+222 offset_24g_cb_rxdata_type1
+224 offset_rssi_signal_index
+225 offset_rssi_signal_avg
+226 offset_rssi_signal_buf
+234 offset_rssi_noise_index
+235 offset_rssi_noise_avg
+236 offset_rssi_noise_buf
+244 offset_rssi_ctrl_threshold_down
+245 offset_rssi_noise_dg_index
+246 offset_rssi_noise_kb_index
+247 offset_rssi_noise_ms_index
+248 offset_rssi_noise_dg_avg
+249 offset_rssi_noise_kb_avg
+250 offset_rssi_noise_ms_avg
+251 offset_tx_power_temp
+252 offset_power_ctrl_packet_cnt
+253 offset_power_ctrl_ack_cnt
+254 offset_power_ctrl_level
+255 offset_power_ctrl_txpwr_level2
+//iadd
+256 offset_power_ctrl_txpwr_level1
+257 offset_power_ctrl_txpwr_level0
+258 offset_power_ctrl_threshold_up
+259 offset_power_ctrl_threshold_down
+260 offset_dongle_mode_init
+261 offset_dongle_work_mode
+262 offset_dongle_ms_bind_step
+263 offset_dongle_kb_bind_step
+264 offset_dongle_bind_device_status
+265 offset_24g_rxdata_temp
+267 offset_24g_rxdata_temp_add2
+268 offset_24g_rxdata_temp_add3
+269 offset_24g_rxdata_temp_add4
+299 offset_24g_rx_addr
+303 offset_24g_bind_payload
+304 offset_24g_bind_payload_add1
+305 offset_24g_bind_payload_add2
+309 offset_24g_rf_laststa
+310 offset_24g_hop_btclk
+314 offset_24g_hop_interval
+315 offset_24g_ackpayload_enable
+316 offset_24g_ackpayload
+348 offset_24g_mode_switch
+349 offset_24g_pair_mode
+350 offset_24g_nodata_timer_enable
+351 offset_24g_time_slice
+352 offset_24g_mouse_addr
+356 offset_24g_kb_addr
+360 offset_24g_kb_data_sta_data
+368 offset_24g_kb_data_last_data
+376 offset_24g_kb_multikey_sta_data
+379 offset_24g_kb_multikey_last_data
+382 offset_24g_kb_blank_data_enable
+383 offset_24g_kb_mul_blank_data_enable
+384 offset_24g_ms_blank_data_enable
+385 offset_24g_dg_last_ch
+386 offset_24g_dg_ch_number
+387 offset_24g_dg_config_ch_once
+388 offset_24g_kb_last_ch
+389 offset_24g_kb_ch_number
+390 offset_24g_kb_config_ch_once
+391 offset_24g_ms_last_ch
+392 offset_24g_ms_ch_number
+393 offset_24g_ms_config_ch_once
+394 offset_24g_pair_txpower
+395 offset_24g_auto_pair_switch
+)
+
+(
+3 QUEUE_ELE_COUNT
+32 QUEUE_ELE_LENGTH
+)
+
+(
+3 retry_24g
+1 NO_ACK_24G
+0 WITH_ACK_24G
+
+0 ENSURE_OFF_24G
+1 ENSURE_ON_24G
+
+0x10 ABORT_DATA
+0x40 RSSI_SENSITIVITY
+
+0x4e G24_PAIR_CH
+)
+
+(
+0 disable_24g
+1 tx_24g
+2 rx_24g
+
+0 bit_ack_24g
+)
+
+//mem_24g_interrupt
+(
+0 rx_dr
+1 rx_sync
+4 tx_ds
+5 tx_fail
+)
+
+//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 STATE_24G_STOP
+0 STATE_24G_START
+1 STATE_24G_PAIR
+2 STATE_24G_RECONN
+)
+
+//mem_24g_pairing_sm
+(
+0 STATE_24G_PAIRING_NULL
+4 STATE_24G_PAIRING_0
+1 STATE_24G_PAIRING_1
+2 STATE_24G_PAIRING_2
+3 STATE_24G_PAIRING_3
+0X11 STATE_24G_PAIRING_1_WAITING_ACK
+0X12 STATE_24G_PAIRING_2_WAITING_ACK
+0X13 STATE_24G_PAIRING_3_WAITING_ACK
+0XFF STATE_24G_PAIRING_SUCCESS
+)
+
+(
+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
+)
+
+(
+0x01 DATATYPE_MOUSE	//mouse
+0x02 DATATYPE_KEYBOARD	//keyboard
+0xAA DATATYPE_BIND		//bind step 1
+0x55 DATATYPE_CONFIG	//bind step 2
+0x22 DATATYPE_OK	//bind step 3
+
+0x01 BIND_MOUSE
+0x02 BIND_KEYBOARD
+)
+
+(
+112 G24_DONGLE_ADDR
+)
+
+(
+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
+)
+
+//user defined cmd
+(
+0xb0 COMMAND_USER_DEFINED
+)
+
+(
+0x15 PRODUCT_ID
+0 FW_VERSION0
+0 FW_VERSION1
+1 FW_VERSION2
+7 FW_VERSION3
+)
+
+
+(
+8 TIMER_NODATA
+640 TIMER_NODATA_DELAY	//200ms
+
+11 TIMER_MS_BLANK
+320 TIMER_MS_BLANK_DELAY
+
+12 TIMER_KB_MUL_BLANK
+320 TIMER_KB_MUL_BLANK_DELAY
+
+14 TIMER_KB_BLANK
+320 TIMER_KB_BLANK_DELAY
+)
+
+(
+0 KB_NORMAL_REPORT_ID
+1 MS_REPORT_ID
+3 KB_MULTIKEY_REPORT_ID
+)
+
+(
+7 RSSI_BUF_LEN_SIGNAL
+255 RSSI_BUF_LEN_NOISE
+0x50 RSSI_THRESH_NOISE
+
+0x77 RSSI_DIS_MIN_24G
+0x82 RSSI_DIS_MAX_24G
+
+0x75 RSSI_DIS_MIN_BLE
+0x80 RSSI_DIS_MAX_BLE
+)
+
+(
+//power control
+0x01 TXPWR_0DB
+0x02 TXPWR_3DB
+0x04 TXPWR_5DB
+0x10 TXPWR_f5DB
+
+124 POWER_CTRL_MAX_PACKET_CNT
+
+2 POWER_CTRL_LOSSPAC_THRESH_UP0
+0 POWER_CTRL_LOSSPAC_THRESH_DOWN0
+0x20 POWER_CTRL_RSSI_THRESH_DOWN0
+
+5 POWER_CTRL_LOSSPAC_THRESH_UP1
+0 POWER_CTRL_LOSSPAC_THRESH_DOWN1
+0x60 POWER_CTRL_RSSI_THRESH_DOWN1
+
+10 POWER_CTRL_LOSSPAC_THRESH_UP2
+0 POWER_CTRL_LOSSPAC_THRESH_DOWN2
+0x80 POWER_CTRL_RSSI_THRESH_DOWN2
+)
+
+//mem_send_data_24g_short_lpm
+(
+0 SHORT_LPM_STATE_POLLING 	
+1 SHORT_LPM_STATE_DATA
+2 SHORT_LPM_STATE_NODATA
+3 SHORT_LPM_STATE_BUTTON_WHEEL
+)
+
+(
+81000 G24_8125_INTERVAL_PARAM
+78000 G24_78125_INTERVAL_PARAM
+)
+
+(
+1 G24_TX_TIMER_INT_ENABLE
+0 G24_TX_TIMER_INT_DISABLE
+)
+
+(
+0 G24_DISCONN_STATE
+1 G24_CONN_STATE
+
+
+8 G24_CH_NUMBER
+16 G24_CH_POLL_COUNT
+0x0708 G24_DISCONN_NODATA_TIMER
+0x1e G24_FIRST_DISCONN_NODATA_TIMER //0x3c
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/hci.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/hci.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/hci.format	(working copy)
@@ -0,0 +1,570 @@
+
+
+memalloc(
+1 mem_h5rx_ackcnt
+1 mem_check_err_acl_cont
+
+1 mem_rp_packets
+2 mem_packet_type
+
+2 mem_hci_sniff_conn_handle
+2 mem_hci_sniff_max_interval
+2 mem_hci_sniff_min_interval
+2 mem_hci_sniff_attempt
+2 mem_hci_sniff_timeout
+2 mem_voice_setting
+1 mem_retransmission_effort
+2 mem_sco_ptype
+3 mem_extm_uap_restore
+
+2 mem_h5rx_rptr
+1 mem_h5rx_ack
+1 mem_h5tx_ack
+2 mem_h5tx_rptr
+2 mem_h5tx_wptr
+2 mem_h5tx_free
+1 mem_h5rx_tmp
+1 mem_h5tx_seq
+
+2 mem_hci_acl_queue_wptr
+2 mem_hci_acl_queue_rptr
+2 mem_hci_acl_queue_end
+1 mem_hci_acl_queue_wcnt
+1 mem_hci_acl_cnt
+
+2 mem_hci_acl_tx_trigger_wptr //tx via uart
+
+
+1 mem_hci_curr_len
+2 mem_hci_curr_target 
+) 
+
+xmemalloc(
+
+2 mem_baud
+1 mem_hci_lt_rx_state
+)
+
+15 hci_flag_rp
+//mem_hci_options bit map
+(
+1 hci_option_h4
+2 hci_option_protocol2
+3 hci_option_protocol3
+4 hci_option_uart
+5 hci_option_usb
+6 hci_option_phy2
+7 hci_option_phy3
+)
+// UART baud rate @6MHz
+(
+0 uart_ctrl_bit_enable
+3 uart_ctrl_bit_slip_protocol
+
+)
+
+//bit map of core_uart_ctrl
+(
+
+)
+//bit map of core_uart_status
+(
+0 uart_status_tx_fifo_full
+1 uart_status_tx_fifo_empty
+2 uart_status_tx_busy
+3 uart_status_rx_fifo_empty
+
+)
+//HCI H4 LOG related
+(
+0x4850 mem_hci_log
+8 hci_log_size
+100 hci_log_cnt
+
+)
+//HCI H4 Packet TYPE
+(
+0x01 HCI_H4_TYPE_CMD
+0x02 HCI_H4_TYPE_ACL
+0x04 HCI_H4_TYPE_EVENT
+
+)
+// HCI command opcode group field values
+(
+0x01 HCI_OGF_LINK_CONTROL
+0x02 HCI_OGF_LINK_POLICY
+0x03 HCI_OGF_BASEBAND
+0x04 HCI_OGF_INFO
+0x05 HCI_OGF_STATUS
+0x06 HCI_OGF_TEST
+0x08 HCI_OGF_LOW_ENERGY
+0x3e HCI_OGF_LOGO_TESTING
+0x3f HCI_OGF_VENDOR_SPECIFIC
+)
+
+// HCI link control opcode command field values, OGF=1
+(
+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
+)
+
+
+// HCI link policy commands OCF value, OGF=2
+(
+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
+)
+
+// HCI host controller and baseband commands OCF values, OGF=3
+(
+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
+)
+
+
+// HCI informational parameters OCF values, OGF=4
+(
+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
+)
+
+// HCI status parameters OCF values, OGF=5
+(
+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
+)
+
+// HCI testing command OCF values, OGF=6
+(
+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
+)
+
+// HCI vendor specific command OCF values -OGF=3F
+(
+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
+)
+
+//HCI LE controller command OCF values, OGF=8
+(
+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
+)
+// HCI event code
+(
+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
+)
+//HCI LE SUBEVENT CODE
+(
+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
+)
+
+(
+0x00 HCI_LPM_OFF
+0x01 HCI_LPM_ON
+)
+
+
+(
+33 HOST_WAKE_TIME
+)
+
+(
+1 HCI_RX_WAKE
+0 HCI_RX_READY
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/kscan_peipherals.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/kscan_peipherals.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/kscan_peipherals.format	(working copy)
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+//0 mem_kscan_head_ptr
+//1 mem_col_num
+//1 mem_row_num
+//4 mem_col_conf_pin
+//4 mem_row_conf_pin
+//1 mem_row_count
+//1 mem_count_shift
+//2 mem_kscan_value_temp
+//2 mem_kscan_lastvalue
+//2 mem_kscan_value
+//4 mem_btclk_kscan
+//1 mem_btclk_kscan_interval
+
+
+0x00 KEYSCAN_OFFECT_COL_NUM
+0x01 KEYSCAN_OFFECT_ROW_NUM
+0x02 KEYSCAN_OFFECT_COL_CONF_PIN
+0x06 KEYSCAN_OFFECT_ROW_CONF_PIN
+
+0x0a KEYSCAN_OFFECT_ROW_COUNT
+0x0b KEYSCAN_OFFECT_SHIFT_COUNT
+
+0X0C KEYSCAN_OFFECT_VALUE_TEMP
+0X0E KEYSCAN_OFFECT_LASVALUE
+0X10 KEYSCAN_OFFECT_VALUE
+0x12 KEYSCAN_OFFECT_BTCLK
+0x16 KEYSCAN_OFFECT_BTCLK_INTERVAL
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/l2cap.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/l2cap.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/l2cap.format	(working copy)
@@ -0,0 +1,442 @@
+
+memalloc(
+0 mem_l2cap_mem_start
+// L2CAP RX 
+2 mem_l2cap_rxbuff1_len
+2 mem_l2cap_rxbuff2_len
+2 mem_l2cap_rxbuff_new
+1 mem_l2cap_rxbuff_inuse
+2 mem_l2cap_payload_ptr
+2 mem_l2cap_rx_pkt_length
+2 mem_l2cap_rx_cid
+1 mem_l2cap_rx_done
+
+
+
+// L2CAP TX Signal channel
+2 mem_l2cap_signal_tx_buff_ptr
+2 mem_l2cap_signal_tx_payload_ptr
+2 mem_l2cap_signal_tx_length
+// L2CAP TX SDP channel
+2 mem_sdp_tx_buff_ptr
+2 mem_sdp_tx_payload_ptr
+2 mem_sdp_tx_pkt_length
+// L2CAP TX RFCOMM channel
+2 mem_rfcomm_tx_buff_ptr
+2 mem_rfcomm_tx_payload_ptr
+2 mem_rfcomm_tx_pkt_length
+
+
+
+//L2CAP Util
+
+2 memL2CAP_T1
+
+1 mem_CONTROL_tasks
+1 mem_send_config_req
+
+
+1 mem_config_identifier
+2 mem_config_req_dest_CID
+1 mem_rfcomm_malloc_fail_flag
+
+//L2CAP STATE MACHINE
+1 mem_message_to_uppersm
+1 mem_upper_sm_remote_page
+1 mem_upper_sm_reconn
+1 mem_upper_sm_ss
+
+
+64 mem_tx_malloc_log
+0 mem_l2cap_mem_end
+
+
+2 mem_scid
+2 mem_cmd_length
+2 mem_tt2
+2 mem_tt3
+2 mem_id
+2 mem_psm
+
+
+4 mem_l2cap_sdpres_delay_time
+)
+
+xmemalloc(
+0 mem_l2cap_xmem_start
+//*******************L2CAP TX MULTI-PACKET*********************//
+2 mem_l2cap_tx_multi_offset //0 means single packet
+
+//*******************CHANNEL ID*********************//
+2 mem_sdp_remote_cid
+2 mem_rfcomm_remote_cid
+2 mem_hid_ctrl_remote_cid
+2 mem_hid_int_remote_cid
+//*******************CHANNEL STATE*********************//
+1 mem_sdp_state
+1 mem_rfcomm_state
+1 mem_hid_control_state
+1 mem_hid_interrupt_state
+1 mem_spp_state
+1 mem_ML2CAP_comm_id
+
+//*******************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
+256 mem_l2cap_lpm_txbuf
+//*******************MISC*********************//
+1 mem_l2cap_flow_ctrl_flag
+1 mem_l2cap_pending_item
+0 mem_l2cap_xmem_end
+
+)
+
+
+//mem_l2cap_lpm_txbuf
+(
+256 l2cap_lpm_txbuf_len
+)
+
+(
+4 L2CAP_TX_FIFO_SIZE
+8 L2CAP_TX_BUFF_CNT
+
+)
+(
+0x0002 L2CAP_SIG_EXT_FEATRUE
+0x0003 L2CAP_SIG_FIX_FEATRUE
+)
+
+
+(
+0 HS_IDLE
+1 AG_INIT_CALL
+2 HS_INIT_CALL
+)
+(
+0 M_ACL_LINK_ABSENT
+1 M_ACL_LINK_EXIST
+)
+
+(
+0 L2CAP_INUSE_BUFF1
+1 L2CAP_INUSE_BUFF2
+)
+/* upper layer interface w/ lower layer */
+(
+1 MAX_NUM_LINKS_ALLOWED
+1 MAX_NUM_SCO_ALLOWED
+1 ACL_LINK_PRESENT
+0 ACL_LINK_ABSENT
+)
+(
+1 L2CAP_RX_DONE 
+0 L2CAP_RX_CLEAR
+)
+/* Scheduler */
+(
+0 L2CAP_DISCONNECT_INTERRUPT
+1 RFCOMM_wants_service
+2 L2CAP_sig_Tx_buff_full
+3 RFCOMM_Tx_buff_full
+4 SDP_Tx_buff_full
+5 got_complete_L2CAP_pkt	
+6 L2CAP_init_Config_Req
+7 L2CAP_DISCONNECT_CONTROL
+)
+
+/* mem_CONTROL_tasks2 */
+(
+0 UI_NEED_SERVICE
+)
+/* L2CAP logic channel identifiers (2 bytes) p.261 */
+(
+0x0001 L2CAP_signal_channel
+0x0050 L2CAP_SDP_channel
+0x0051 L2CAP_RFCOMM_channel
+0x0052 L2CAP_HID_Control_channel   
+0x0053 L2CAP_HID_Interrupt_channel
+0x0077 L2CAP_AVDTP_signal_channel		//------avdtp
+0x0078 L2CAP_AVDTP_media_channel
+0x0079 L2CAP_AVDTP_report_channel
+0x0080 L2CAP_AVDTP_recovery_channel
+0x00dd L2CAP_AVCTP_Control_channel
+)
+/* L2CAP signalling command codes (1 byte) p.284 */
+(
+0x00 reserved
+0x01 signal_cmd_reject
+0x02 signal_connect_req
+0x03 signal_connect_rsp
+0x04 signal_config_req
+0x05 signal_config_rsp
+0x06 signal_disconnect_req
+0x07 signal_disconnect_rsp
+0x08 signal_echo_req
+0x09 signal_echo_rsp
+0x0a signal_info_req
+0x0b signal_info_rsp
+)
+/* L2CAP signal_command_reject reason code (2 bytes), p.285 */
+(
+0x0000 cmd_not_understood
+0x0001 signalling_MTU_exceeded
+0x0002 invalid_CID_in_req
+)
+/* L2CAP PSM values used in signal_connect_req (2 bytes), p.286 */
+(
+0x0001 PSM_SDP
+0x0003 PSM_RFCOMM
+0x0005 PSM_TCS
+0x0011 PSM_HID_control
+0x0013 PSM_HID_interrupt
+0x0017 PSM_AVCTP
+0x0019 PSM_AVDTP
+)
+/* L2CAP connection response result code (2 bytes), p.288 */
+(
+0x0000 L2CAP_connect_successful
+0x0001 L2CAP_connect_pending
+0x0002 L2CAP_connect_refused_PSM_unsupported
+0x0003 L2CAP_connect_refused_security_block
+0x0004 L2CAP_connect_refused_no_resources
+)
+/* L2CAP connection status values (2 bytes), p.288 */
+(
+0x0000 L2CAP_no_info_available
+0x0001 L2CAP_authentication_pending
+0x0002 L2CAP_authorization_pending
+)
+/* L2CAP configuration response result code (2 bytes), p.292 */
+(
+0x0000 L2CAP_config_success
+0x0001 L2CAP_config_failure_bad_parameters
+0x0002 L2CAP_config_failure_no_reason
+0x0003 L2CAP_config_failure_unknown_options
+)
+/* L2CAP constant definitions */
+(
+128 L2CAP_Rx_buff_size
+48  L2CAP_signal_Tx_buff_size
+128 SDP_Tx_buff_size
+128 RFCOMM_Tx_buff_size
+1 AM_ADDRESS
+3 DM1TYPE
+4 DH1TYPE
+11 DH3TYPE
+8 DVTYPE
+0 channel_state_closed
+1 channel_state_config
+2 channel_state_open
+0x0030 L2CAP_config_MTU_SDP
+0xffff L2CAP_config_ftimeout_SDP
+0x03e3 L2CAP_config_MTU_RFCOMM
+0xffff L2CAP_config_ftimeout_RFCOMM
+260 l2cap_max_pkt_len
+)
+
+(
+0 FAILURE
+1 SUCCESS
+2 IN_PROGRESS
+)
+(
+0x00	IDLE
+0x01	WAIT_4_BB_PAGE
+0x02	WAIT_4_LMP_CONN
+0x03	WAIT_4_SCO_CONN
+0x04	WAIT_4_SCO_KILLED
+)
+
+/*mem_master_mss*/
+(
+0 STOP_ENC
+1 SEND_SWITCH_REQ
+)
+(
+0 HF_HS_READY
+1 HF_AG_READY
+)
+/* mem_hf_state */
+(
+0 HF_STATE_WAITING_RFCOMM_CONN
+1 HF_STATE_HF_SEND_FEATURE
+2 HF_STATE_WAITING_AG_FEATURE_OK
+3 HF_STATE_HF_SEND_INDICATORS
+4 HF_STATE_WAITING_AG_INDICATORS_OK
+5 HF_STATE_HF_SEND_CURR_STATUS
+6 HF_STATE_WAITING_AG_STATUS_OK
+7 HF_STATE_HF_SEND_UPDATE_STATUS
+8 HF_STATE_WAITING_AG_UPDATE_STATUS_OK
+9 HF_STATE_CONNECTED
+0x0a HF_STATE_HF_SEND_RECEIVE_INFO
+0x0b HF_STATE_WAITING_AG_INFO
+0x0c HF_STATE_HF_SEND_AT_CLIP
+0x0d HF_STATE_WAITING_AT_CLIP
+0x0e HF_STATE_HF_SEND_AT_CCWA
+0x0f HF_STATE_WAITING_AT_CCWA
+)
+/*mem_hf_call_state*/
+(
+0 HF_CALL_STATE_INACTIVE
+1 HF_CALL_STATE_SETUP
+2 HF_CALL_STATE_ACTIVE 
+)
+/* mem_pairing_state bit definition */
+(
+0 PAIR_INQUIRY_START
+1 PAIR_INQUIRY_TIME_OUT
+2 PAIR_INQUIRY_FAILED
+3 PAIR_INQUIRY_SUCCESS
+4 PAIR_READY_CONN
+5 PAIR_WAIT_CANCEL_RESPONSE
+6 PAIR_CONN_SUCCESS
+7 PAIR_WAIT_DETACH
+)  
+
+/* mem_pairing_mode bit definition */
+(
+0 FORCE_AUTHENTICATION
+)
+/* mem_hid_protecol_type */
+(
+0 PROTECOL_BOOT /*default*/
+1 PROTECOL_REPORT
+)
+
+/* mem_upper_sm_reconn */
+(
+1 UPPERSM_SEND_SDP_CONN_REQ
+2 UPPERSM_SEND_SDP_CFG_REQ
+3 UPPERSM_SEND_SDP_HF_SS
+4 UPPERSM_SEND_SDP_DISC_REQ
+5 UPPERSM_SEND_RFCOMM_CONN_REQ
+6 UPPERSM_SEND_RFCOMM_CFG_REQ
+7 UPPERSM_SEND_SABM_CMD
+8 UPPERSM_SEND_DISC
+9 UPPERSM_SEND_WAIT
+10 UPPERSM_SEND_HID_CONTROL_CONN_REQ
+11 UPPERSM_SEND_HID_CONTROL_CFG_REQ
+12 UPPERSM_SEND_HID_INTERRUPT_CONN_REQ
+13 UPPERSM_SEND_HID_INTERRUPT_CFG_REQ
+14 UPPERSM_SEND_SDP_HS_SS
+15 UPPERSM_SEND_SDP_PBAP_SS
+16 UPPERSM_SEND_SDP_AVTARG_SS
+)
+/* mem_upper_sm_remote_page */
+(
+1 UPPERSM_RP_SEND_SDP_CONN_REQ
+2 UPPERSM_RP_SEND_SDP_CFG_REQ
+3 UPPERSM_RP_SEND_SDP_HF_SS
+4 UPPERSM_RP_SEND_SDP_HS_SS
+5 UPPERSM_RP_SEND_SDP_PBAP_SS
+6 UPPERSM_RP_SEND_SDP_AVTARG_SS
+7 UPPERSM_RP_SEND_SDP_DISC_REQ
+8 UPPERSM_RP_SEND_AVCTP_CONN_REQ
+9 UPPERSM_RP_SEND_AVCTP_CFG_REQ
+)
+
+/* mem_ML2CAP_flag */
+(
+0 MSCHEDULER_HID_CONTROL_CONN_DONE
+1 MSCHEDULER_HID_INTERRUPT_CONN_DONE
+2 MSCHEDULER_HID_CONTROL_CFG_REQ_DONE
+3 MSCHEDULER_HID_CONTROL_CFG_RSP_DONE
+4 MSCHEDULER_HID_INTERRUPT_CFG_REQ_DONE
+5 MSCHEDULER_HID_INTERRUPT_CFG_RSP_DONE
+6 MSCHEDULER_HID_CONTROL_DISC_DONE
+7 MSCHEDULER_HID_INTERRUPT_DISC_DONE
+)
+/*    ui event    --add by lj*/
+(
+0x00 UI_DATA_EVNET_NONE
+0x01 UI_DATA_EVNET_HID
+0x02 UI_DATA_EVNET_AVDTP_S
+0x03 UI_DATA_EVNET_AVDTP_M
+0x04 UI_DATA_EVNET_AVCTP
+0x05 UI_DATA_EVNET_HS
+0x06 UI_DATA_EVNET_HF
+0x07 UI_DATA_EVNET_SPP
+0x08 UI_DATA_EVNET_OBEX
+)
+/*    ui ack --add by lj*/
+(
+0x00 UI_DATA_TX_NONE
+0x01 UI_DATA_TX_HID
+0x02 UI_DATA_TX_AVDTP_S
+0x03 UI_DATA_TX_AVDTP_M
+0x04 UI_DATA_TX_AVCTP
+0x05 UI_DATA_TX_HS
+0x06 UI_DATA_TX_HF
+0x07 UI_DATA_TX_SPP
+0x08 UI_DATA_TX_OBEX
+0x10 ACL_TX_L2CAP_SIGNAL
+0x11 ACL_TX_SDP
+0x12 ACL_TX_RFCOMM
+
+)
+
+(
+0 L2CAP_SDP_interface_conn
+1 L2CAP_SDP_interface_cfg
+)
+
+(                                   
+0 L2CAP_CHANNEL_STATE_CONN_REQ      
+1 L2CAP_CHANNEL_STATE_CONN_RES      
+2 L2CAP_CHANNEL_STATE_SND_CFG_REQ   
+3 L2CAP_CHANNEL_STATE_SND_CFG_RES   
+4 L2CAP_CHANNEL_STATE_RCV_CFG_REQ   
+5 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+6 L2CAP_CHANNEL_RFCOMM_ONLY_SABM
+7 L2CAP_CHANNEL_RFCOMM_ONLY_UA
+6 L2CAP_CHANNEL_AVDTP_SIGNAL_INIT //set avdtp init complete
+6 L2CAP_CHANNEL_HID_HANDSHAKE_DONE
+0x3f L2CAP_CHANNEL_SETUP_COMPLETE
+0x7f L2CAP_CHANNEL_AVDTP_SIGNAL_COMPLETE
+0xff L2CAP_CHANNEL_RFCOMM_DLCI0_OPENED
+)                                     
+
+/*  AVDTP---lj*/
+(
+0 L2CAP_AVDTP_SIGNAL_CONNECT
+1 L2CAP_AVDTP_SIGNAL_CONFIG
+2 L2CAP_AVDTP_MEDIA_CONNECT
+3 L2CAP_AVDTP_MEDIA_CONFIG
+4 L2CAP_AVDTP_REPORT_CONNECT
+5 L2CAP_AVDTP_REPORT_CONFIG
+6 L2CAP_AVDTP_RECOVERY_CONNECT
+7 L2CAP_AVDTP_RECOVERY_CONFIG
+)
+/*  AVCTP---lj*/
+(
+0 L2CAP_AVCTP_SIGNAL_CONNECT
+1 L2CAP_AVCTP_SIGNAL_CONFIG
+)
+
+127 L2CAP_SIGNAL_MALLOC_SIZE
+
+//1 mem_rfcomm_malloc_fail_flag
+(
+0 RFCOMM_MALLOC_SUCCEED
+1 RFCOMM_MALLOC_FAIL
+)
+
+//mem_l2cap_flow_ctrl_flag
+(
+0 L2CAP_FLOW_CTRL_DISABLE
+1 L2CAP_FLOW_CTRL_ENABLE
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/le.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/le.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/le.format	(working copy)
@@ -0,0 +1,724 @@
+
+memalloc(
+56 mem_le_rxbuf
+262 mem_le_l2capbuf
+
+
+/* security temp */
+4 mem_le_mic
+4 mem_le_peer_mic
+//8 mem_le_skdm
+//8 mem_le_skds
+16 mem_le_peer_ltk
+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
+
+2 mem_le_no_using
+1 mem_le_peer_sca
+
+/* should be together */
+1 mem_le_att_opcode
+2 mem_le_att_handle
+
+1 mem_le_err_code
+1 mem_le_ll_pairing_fail_reason
+
+16 mem_le_sk
+
+/* test */
+1 mem_le_testtype
+2 mem_le_test_sync
+2 mem_le_test_pcnt
+
+6 mem_le_rxon_ts
+
+1 mem_le_rx_ll_opcode
+
+2 mem_le_notify_attr_start
+1 mem_le_notify_len
+
+1 mem_cmd_le_create_conn
+
+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
+
+1 mem_le_curr_att_len
+1 mem_le_search_res
+
+1 mem_le_continue_type
+
+)
+
+
+xmemalloc(
+2 mem_le_dsniff
+
+// parameters
+2 mem_le_conn_interval
+1 mem_le_scan_enable
+2 mem_le_scan_interval
+2 mem_le_scan_window
+
+1 mem_le_adv_enable
+1 mem_le_adv_data_len
+31 mem_le_adv_data
+1 mem_le_scan_data_len
+31 mem_le_scan_data
+
+//modified name
+1 mem_le_name_len
+30 mem_le_name
+
+
+5 mem_le_new_map
+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
+
+1 mem_le_txheader
+1 mem_le_txlen
+2 mem_le_txpayload
+2 mem_le_txcid
+1 mem_le_l2cap
+1 mem_le_l2cap_response
+31 mem_le_txbdy
+
+/* smp related */
+5 mem_le_pcnt_tx
+5 mem_le_pcnt_rx
+4 mem_le_last_mic
+4 mem_le_ivm
+4 mem_le_ivs
+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
+
+/* att related */
+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
+2 mem_le_notify_handle
+1 mem_le_search_uuid_length
+16 mem_le_search_uuid
+
+
+//START of LE adv parameter structure
+0 mem_le_adv_param
+2 mem_le_adv_interval
+1 mem_le_adv_type
+1 mem_le_adv_own_addr_type
+1 mem_le_adv_direct_addr_type
+6 mem_le_adv_direct_addr
+1 mem_le_adv_channel_map
+//END of LE adv parameter structure
+
+//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
+
+//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
+
+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_enable
+1 mem_le_secure_connect_flag
+1 mem_le_sc_calc
+1 mem_le_secure_connect_state
+1 mem_le_sc_confirm_gkey_flag
+1 mem_le_sc_local_key_invalid
+
+
+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
+
+//for continue
+2 mem_le_l2cap_size
+1 mem_le_packet_len_recved
+
+//for fifo
+1 mem_le_tx_buff_used
+2 mem_le_tx_ptr0
+2 mem_le_tx_ptr1
+2 mem_le_tx_ptr2
+2 mem_le_tx_ptr3
+
+//ble gatt signaling
+1 mem_le_signaling_identifier
+2 mem_le_l2cap_signaling_conn_param_update_rsp_result
+
+1 mem_le_packet_size
+1 mem_le_packet_llid
+2 mem_le_payload_ptr
+
+1 mem_le_md_count
+
+)
+
+
+(
+0x000001 param_le_features
+0x000a06 param_le_version
+0x1d87 param_le_subversion
+1636 param_sifs
+0x1e0 param_clke_cal_le
+0xa0 param_le_sca
+)
+
+(
+0 DEFAULT_STATES
+1 IPHONE_LOST_LTK
+2 MODULE_LOST_LTK
+3 LTK_NOT_LOST
+)
+
+
+(
+27 LE_MAX_PAKET_LEN
+)
+
+/* advertising channel PDU type */
+(
+0 ADV_IND
+1 ADV_DIRECT_IND
+2 ADV_NONCONN_IND
+3 SCAN_REQ
+4 SCAN_RSP
+5 CONNECT_REQ
+6 ADV_SCAN_IND
+)
+
+(
+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
+0xff	GAP_ADTYPE_MANUFACTURER_SPECIFIC
+)
+
+
+	/* LE control packet type */
+	(
+	0x00 LL_CONNECTION_UPDATE_REQ
+	0x01 LL_CHANNEL_MAP_REQ
+	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
+	)
+
+	/* Security Manager Protocol Code */
+	(
+	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
+	)
+
+	/* L2CAP Signaling OPCODE */
+	(
+	0x12 L2CAP_CONNECTION_PARAMETER_UPDATE_REQUEST
+	0x13 L2CAP_CONNECTION_PARAMETER_UPDATE_RESPONSE
+	)
+
+	/* ATT OPCODE */
+	(
+	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
+	)
+
+	/* ATT error code */
+	(
+	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
+	)
+	/*	SERVICE UUID	*/
+	(
+	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	
+	)
+
+	(// 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
+	)
+
+
+	//BLE ErrorCodes
+	(    
+	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
+	)
+
+
+	//modified_name
+	(
+	0x14 MAX_NAME_LEN
+	0x16 ADV_DATA_NAME_LEN
+	0X20 SPACE
+	
+	)
+	/* GATT Specifications*/
+	(
+	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
+	)
+	/* LE L2CAP CID */
+	(
+	0x0004 LE_L2CAP_CID_ATT
+	0x0005 LE_L2CAP_CID_SIGNAL
+	0x0006 LE_L2CAP_CID_SMP
+	)
+
+	//LE address type
+	(
+	0 LE_ADDR_TYPE_PUBLIC
+	1 LE_ADDR_TYPE_RANDOM
+	)
+	//LE address type bitmap
+	(
+	7 LE_RECEIVER_ADDR_BIT
+	6 LE_SENDER_ADDR_BIT
+	)
+	//LE SCAN TYPE
+	(
+	0x00 LE_SCAN_TYPE_PASSIVE //no SCAN_REQ shall be sent
+	0x01 LE_SCAN_TYPE_ACTIVE
+	)
+
+	//LE SCAN ENABLE
+	(
+	0x00 LE_SCAN_DISABLE
+	0x01 LE_SCAN_ENABLE
+	0x0101 LE_ACTIVE_SCAN_ENABLE
+	)
+
+	//LE FIND INFORMATION RESPONSE
+	//THE FORMAT OF THE INFORMATION DATA
+	(
+	0x01 UUID_SIZE_16BIT
+	0x02 UUID_SIZE_128BIT
+	)
+
+	(
+	0x0000 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_ACCEPTED
+	0x0001 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_REJECTED
+	)
+
+//	le_state_map 0-2 is reserved for state_inconn,state_insniff and state_sco
+(
+3 lestate_got_first_packet
+4 lestate_encryption
+5 lestate_update_param
+6 lestate_update_map
+)
+
+// 	le mode
+(
+0 lemode_idle
+1 lemode_slave
+3 lemode_master
+)
+
+
+(
+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
+)
+
+(
+0x00 LE_PAIRING_MODE_NONE
+0x01 LE_PAIRING_MODE_LAGACY_JUSTWORK
+0x02 LE_PAIRING_MODE_LAGACY_PASSKEY
+0x81 LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK
+0x82 LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC
+0x83 LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY
+
+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  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
+)
+
+
+(
+96000 TIMER_SMP_PAIRING_TIMEOUT //30S
+)
+//mem_le_pairing_state
+(
+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_AUTH
+5 FLAG_LE_PAIRING_AFTER_AUTH
+6 FLAG_LE_PAIRING_SEND_START_ENC_RSP
+7 FLAG_LE_PARING_SEND_ENC_INFORMATION
+8 FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION 
+9 FLAG_LE_PARING_SEND_INDENTITY_INFORMATION
+0xff FLAG_LE_PAIRING_END
+)
+
+
+
+/*LE secure connect state */
+(
+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
+)
+
+//mem_le_enc_state
+(
+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
+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
+
+)
+
+(
+0 BIT_ADV_CHANNEL_MAP_37
+1 BIT_ADV_CHANNEL_MAP_38
+2 BIT_ADV_CHANNEL_MAP_39
+)
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/lmp.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/lmp.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/lmp.format	(working copy)
@@ -0,0 +1,224 @@
+
+memalloc(
+
+1 mem_lmo_header_length
+1 mem_lmo_header_opcode
+17 mem_lmo_payload
+1 mem_lmi_accepted_opcode
+1 mem_disconn_reason_send
+1 mem_tx_fixed_freq
+1 mem_rx_fixed_freq
+1 mem_ext_features_page
+2 mem_lmpext_ssp_enable
+1 mem_remote_sppcap
+
+1 mem_lmp_conn_state
+2 mem_soft_timer
+1 mem_pincode_state
+
+1 mem_sres_tid
+1 mem_accptsco_tid
+
+1 mem_auth_enable
+1 mem_wait_encryption
+
+16 mem_sniff_payload
+4 mem_aurand_send_delay_time
+)
+
+xmemalloc(
+3 mem_lmp_version
+2 mem_lmp_subversion
+1 mem_local_name_length
+3 mem_local_name
+64 mem_local_name2
+1 mem_local_name_end
+1 mem_unsniff2sniff_timer
+1 mem_switch_flag
+1 mem_classic_bt_flag
+)
+
+	(
+	//bit flag:mem_classic_bt_flag
+	0 FLAG_SSP_REJECT_JUSTWORK
+	1 SHORT_MULT_FLAG
+	)
+	
+	(
+	//bit map
+	0 pair_state_inrand
+	1 pair_state_inrand_acpt
+	2 pair_state_send_comb
+	3 pair_state_recv_comb
+	4 pair_state_send_aurand
+	5 pair_state_recv_sres
+	6 pair_state_recv_aurand
+	7 pair_state_send_sres	
+	)
+	/* LMP opcodes */
+	(
+	1 LMP_NAME_REQ 
+	2 LMP_NAME_RES 
+	3 LMP_ACCEPTED 
+	4 LMP_NOT_ACCEPTED 
+	5 LMP_CLKOFFSET_REQ 
+	6 LMP_CLKOFFSET_RES 
+	7 LMP_DETACH 
+	8 LMP_IN_RAND 
+	9 LMP_COMB_KEY 
+	10 LMP_UNIT_KEY 
+	11 LMP_AU_RAND 
+	12 LMP_SRES 
+	13 LMP_TEMP_RAND 
+	14 LMP_TEMP_KEY 
+	15 LMP_ENCRYPTION_MODE_REQ 
+	16 LMP_ENCRYPTION_KEY_SIZE_REQ 
+	17 LMP_START_ENCRYPTION_REQ 
+	18 LMP_STOP_ENCRYPTION_REQ 
+	19 LMP_SWITCH_REQ 
+	20 LMP_HOLD
+	21 LMP_HOLD_REQ
+	23 LMP_SNIFF_REQ 
+	24 LMP_UNSNIFF_REQ 
+	26 LMP_PARK_REQ 
+	27 LMP_SET_BROADCAST_SCAN_WINDOW 
+	28 LMP_MODIFY_BEACON 
+	29 LMP_UNPARK_BD_ADDR_REQ 
+	30 LMP_UNPARK_PM_ADDR_REQ 
+	31 LMP_INCR_POWER_REQ 
+	32 LMP_DECR_POWER_REQ 
+	33 LMP_MAX_POWER 
+	34 LMP_MIN_POWER 
+	35 LMP_AUTO_RATE 
+	36 LMP_PREFERRED_RATE 
+	37 LMP_VERSION_REQ 
+	38 LMP_VERSION_RES 
+	39 LMP_FEATURES_REQ 
+	40 LMP_FEATURES_RES 
+	41 LMP_QUALITY_OF_SERVICE 
+	42 LMP_QUALITY_OF_SERVICE_REQ 
+	43 LMP_SCO_LINK_REQ 
+	44 LMP_REMOVE_SCO_LINK_REQ 
+	45 LMP_MAX_SLOT 
+	46 LMP_MAX_SLOT_REQ 
+	47 LMP_TIMING_ACCURACY_REQ 
+	48 LMP_TIMING_ACCURACY_RES 
+	49 LMP_SETUP_COMPLETE 
+	50 LMP_USE_SEMI_PERMANENT_KEY 
+	51 LMP_HOST_CONNECTION_REQ 
+	52 LMP_SLOT_OFFSET 
+	53 LMP_PAGE_MODE_REQ 
+	54 LMP_PAGE_SCAN_MODE_REQ 
+	55 LMP_SUPERVISION_TIMEOUT 
+	56 LMP_TEST_ACTIVATE
+	57 LMP_TEST_CONTROL
+	58 LMP_ENC_KEY_SIZE_MASK_REQ
+	59 LMP_ENC_KEY_SIZE_MASK_RES
+	60 LMP_SET_AFH
+
+	/* simple pairing support */
+	61 LMP_ENCAPSULATED_HEADER
+	62 LMP_ENCAPSULATED_PAYLOAD
+	63 LMP_SIMPLE_PAIRING_CONFIRM
+	64 LMP_SIMPLE_PAIRING_NUMBER
+	65 LMP_DHKEY_CHECK
+	127 LMP_ESCAPE
+	127 LMP_ESCAPE_4   /* add 2bytes LMP header support  */   
+	)
+	/* LMP EXT opcodes, ORed with bit 7 to make difference to nonEXT */
+	(
+	129 LMP_EXT_ACCEPTED
+	130 LMP_NOT_ACCEPTED_EXT
+	131 LMP_EXT_FEATURES_REQ
+	132 LMP_EXT_FEATURES_RES
+	139 LMP_PACKET_TYPE_TABLE_REQ
+	140 LMP_EXT_ESCO_LINK_REQ
+	141 LMP_EXT_REMOVE_ESCO_REQ
+	144 LMP_EXT_CHN_CLASSIFICATION_REQ
+	145 LMP_EXT_CHN_CLASSIFICATION
+	149 LMP_SNIFF_SUBRATING_REQ
+	150 LMP_SNIFF_SUBRATING_RES
+	151 LMP_PAUSE_ENCRYPTION_REQ
+	152 LMP_RESUME_ENCRYPTION_REQ
+	153 LMP_IO_CAP_REQ
+	154 LMP_IO_CAP_RES
+	)
+	/* LMP reason codes */
+	(
+	0x05 AUTHENTICATION_FAILURE_ERROR
+	0x06 KEY_MISSING
+	0x0b ACL_CONNECTION_ALREADY_EXISTS
+	0x13 OTHER_END_TERMINATED
+	0x15 ABOUT_TO_POEWR_OFF
+	0x16 LOCAL_HOST
+	0x18 PAIRING_NOT_ALLOWED
+	0x19 UNKNOWN_LMP_PDU
+	0x1A UNSUPPORTED_LMP_FEATURE 
+	0x1F UNSPECIFIED_ERROR
+	0x20 UNSUPPORTED_PARAMETERS
+	0x21 SWITCH_NOT_ALLOWED
+	0x23 TRANSACTION_COLLISION
+	0x24 PDU_NOT_ALLOWED
+	0x25 ENCRYPTION_MODE_NOT_ACCEPTABLE
+	0x2e NOT_SUPPORT_CHN_CLASSIFICATION
+	0x37 NOT_SUPPORT_SSP
+	)
+
+	/* test mode scenarios */
+	(
+	0 PAUSE_TEST_MODE
+	1 ZERO_PATTERN
+	2 ONE_PATTERN
+	3 ALT_PATTERN
+	4 PSEUDORANDOM
+	5 CLOSED_LOOP_BACK_ACL
+	6 CLOSED_LOOP_BACK_SCO
+	7 ACL_WITHOUT_WHITENING
+	8 SCO_WITHOUT_WHITENING
+	9 ALT2_PATTERN
+	255 EXIT_TEST_MODE
+	)
+	/* test mode hoppig modes */
+	(
+	0 FIXED_FREQ
+	1 NORMAL_HOP
+	)
+
+	/* mem_lmp_tid indicates which type of LMP will be sent */
+	(
+	0 TID_NORM_REPLY
+	1 TID_NORM_SEND
+	2 TID_ONE
+	3 TID_ZERO
+	4 TID_PAIRING
+	5 TID_ENCRYPTION
+	6 TID_VARIABLE
+	7 TID_RX
+	)
+
+	/* ============== lmp status ==========*/
+	(
+	0 lmp_incoming
+	1 lmp_outgoing
+	2 lmp_reject_msg
+	3 lmp_clear_msg
+	4 upper_reject_msg
+	5 upper_clear_msg
+	)
+
+(
+0x2ee00 TIMER_ONE_MINUTE //96000*2
+80 TIMER_SWITCH_WAITE
+12 TIMER_ENPT_WAITE
+)
+
+(
+0 SWITCH_FLAG_INIT
+1 SWITCH_FLAG_ACCEPT
+2 SWITCH_FLAG_NOT_ACCEPT
+)
+(
+0 NULL_ENCRYP
+1 DONE_ENCRYP
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/memblocks.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/memblocks.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/memblocks.format	(working copy)
@@ -0,0 +1,64 @@
+//
+//
+//Large memory blocks defined in this file.
+//Blocks Shall be defined with absolute address.
+//Blocks' length Shall be specified in comment following Blocks' names.
+//Different blocks MAY be overlap.
+//Blocks defined in this file Shall NOT be overlap with variable in memmap.format.
+
+// USB C51 exchange area
+(
+0xff0 mem_mcmd
+0xff1 mem_mouse_data
+)
+
+//l2cap RX buffers
+(
+0x1000 mem_l2cap_rxbuff1		//0x400
+0x1400 mem_l2cap_rxbuff2		//0x400
+//end address:0x17ff
+)
+//l2cap TX buffers
+(
+0x1800 mem_tx_buff0		//128
+0x1880 mem_tx_buff1		//128
+0x1900 mem_tx_buff2		//128
+0x1980 mem_tx_buff3		//128
+0x1a00 mem_tx_buff4		//128
+0x1a80 mem_tx_buff5		//128
+0x1b00 mem_tx_buff6		//128
+0x1b80 mem_tx_buff7		//128
+//end address: 0x1bff
+)
+
+(
+0x1800 mem_le_tx_buffer0
+0x1900 mem_le_tx_buffer1
+0x1a00 mem_le_tx_buffer2
+0x1b00 mem_le_tx_buffer3
+//end addr:0x1dff
+)
+
+
+//uart buffer
+(
+0x1800 mem_h5rx_buf//0x400
+0x1bff mem_h5rx_buf_end
+0x1c00 mem_h5tx_buf
+0x1fff mem_h5tx_buf_end
+)
+
+
+(
+0x1800 mem_ir_record
+0x1c      mem_ir_record_max
+)
+
+ifndef REVD 
+(
+0x4b00 memk
+)
+
+
+endif
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/patch.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/patch.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/patch.format	(working copy)
@@ -0,0 +1,516 @@
+
+(
+	  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
+
+)
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/regs.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/regs.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/regs.format	(working copy)
@@ -0,0 +1,302 @@
+(
+  0x8000 core_chipid
+  0x8003 core_kick
+  0x8005 core_lpm_wr
+  0x8006 core_misc_ctrl
+  0x8007 core_otp_rdata
+  0x8009 core_pcmoutfifo
+  0x8010 core_reset
+  0x8011 core_encrypt
+  0x8015 core_uart_txd
+  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_xtal_stable_time
+  0x8045 core_otp_addr
+  0x8046 core_otp_din
+  0x8047 core_otp_ctrl
+  0x8048 core_otpd_addr
+  0x804a core_otpd_len
+  0x804b core_otpd_ctrl
+  0x804c core_lpm_reg
+  0x804f core_lpm_isogate
+  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_trptrp
+  0x8062 core_uart_ctrl
+  0x8063 core_bist_ctrl
+  0x8064 core_pwm_pcnt3
+  0x8066 core_pwm_ncnt3 
+  0x8068 core_pwm_pcnt4
+  0x806a core_pwm_ncnt4
+  0x806c core_pwm_pcnt5
+  0x806e core_pwm_ncnt5
+  0x8070 core_gpio_oe0
+  0x8071 core_gpio_oe1
+  0x8072 core_gpio_oe2
+  0x8073 core_gpio_oe3
+  0x8074 core_gpio_out0
+  0x8075 core_gpio_out1
+  0x8076 core_gpio_out2
+  0x8077 core_gpio_out3
+  0x8078 core_gpio_pu0
+  0x8079 core_gpio_pu1
+  0x807a core_gpio_pu2
+  0x807b core_gpio_pu3
+  0x807c core_gpio_pd0
+  0x807d core_gpio_pd1
+  0x807e core_gpio_pd2
+  0x807f core_gpio_pd3
+  0x8080 core_gpio_sel
+  0x8081 core_gpio_sel1
+  0x8082 core_gpio_sel2
+  0x8083 core_gpio_key0
+  0x8084 core_gpio_key1
+  0x8085 core_gpio_key2
+  0x8086 core_spid_ctrl
+  0x8087 core_spid_delay
+  0x8088 core_spid_txlen
+  0x808a core_spid_txaddr
+  0x808c core_spid_rxaddr
+  0x808e core_spid_rxlen
+  0x8090 core_iicd_ctrl
+  0x8091 core_iicd_scl_low
+  0x8092 core_iicd_scl_high
+  0x8093 core_iicd_start_setup
+  0x8094 core_iicd_start_hold
+  0x8095 core_iicd_stop_setup
+  0x8096 core_iicd_data_setup
+  0x8097 core_iicd_data_hold
+  0x8098 core_iicd_txlen
+  0x809a core_iicd_txaddr
+  0x809c core_iicd_rxaddr
+  0x809e core_iicd_rxlen
+  0x80a0 core_pwm_pcnt0
+  0x80a2 core_pwm_ncnt0
+  0x80a4 core_pwm_pcnt1
+  0x80a6 core_pwm_ncnt1
+  0x80a8 core_pwm_pcnt2
+  0x80aa core_pwm_ncnt2
+  0x80b0 core_enc_ctrl
+  0x80b1 core_cvsd_ctrl
+  0x80b2 core_codec_ctrl
+  0x80b3 core_dec_ctrl
+
+
+
+
+  
+  0x8108 core_misc_status
+  0x8109 core_qdec_cntx
+  0x810a core_qdec_cnty
+  0x810b core_qdec_cntz
+  0x810c core_uart_status
+  0x810d core_uart_rbaud
+  0x810e core_uart_txitems
+  0x8110 core_uart_trptr
+  0x8112 core_uart_rxitems
+  0x8114 core_uart_rdptr
+  0x8116 core_uart_rwptr
+  0x8119 core_kscn_kstat
+  0x811a core_kscn_event
+  0x811b core_kscn_event_num
+  0x811c core_gpio_in
+  0x811d core_gpio_in1
+  0x8124 core_current_otp_addr
+  0x8126 core_otpd_remain
+  0x8128 core_spid_remain
+  0x812a core_iicd_remain
+  0x812c core_dma_status
+  0x812d core_perf_status
+  0x812e core_adc_in
+  0x8134 core_pcminfifo
+  0x8135 core_pcminfifo_remain
+  0x8136 core_pcmoutfifo_remain
+  0x8138 core_lpm_ctrl
+  0x813c core_lpm_xtalcnt
+  0x813d core_lpm_buckcnt
+  0x813e core_lpm_ldocnt
+  0x813f core_lpm_latch
+  0x8140 core_gpio_wakeup_low
+  0x8144 core_gpio_wakeup_high
+  0x8149 core_clk_counter
+  0x8150 core_adc_sum
+// dummy regs  
+
+  0x8203 core_ice_ctrl
+  0x8204 core_ice_status
+  0x8205 core_ice_break0
+  0x8207 core_ice_break1
+  
+  0x8280 core_docd_ctrl
+  0x8288 core_docd_paddr
+  0x828a core_docd_pdata
+
+  0x8300 iic_prer_low		
+  0x8301 iic_slave_addr	
+  0x8302 iic_ctr					
+  0x8303 iic_cr					
+  0x8304 iic_rxr					
+  0x8305 iic_txr					
+  0x8306 iic_sr					
+  0x8307 iic_fifo				
+
+  0x8400   mem_b_box          /* entire bank */
+  0x8500   mem_e_box          /* entire bank */
+  0x8600   mem_l_box          /* entire bank */
+
+ifdef REVD
+  0x8700 memk
+endif
+
+  0x8900 rfen_rx
+  0x8901 rfen_tx
+  0x8902 rfen_mdm
+  0x8903 rfen_sn
+  0x8904 rfen_msc
+  0x8905 rfen_ck
+  0x8906 rfen_adc
+  0x890a  rf_iq_gain
+  0x890b  rf_agc_nsat
+  0x890f  rf_adc_goff
+  0x8912 rf_agc_ctrl
+  0x8914 rfen_ulp
+  0x8973 rfen_chgpump
+  0x894b rf_rx_vctrl_reg1
+  0x894c rf_rx_vctrl_reg2
+  0x894d rf_rx_ib_lna
+  0x894e rf_rx_lna_ctrim
+
+  0x8950 rf_bpf_ctrim
+  0x8951 rf_bpf_ib
+  0x8952 rf_adc_rccal
+  0x8952 rf_rccal_ctrl
+  0x8953 rf_rccal_sel
+  0x8955 rf_tx_pa_ib
+  0x8956 rf_tx_pa_gc
+  0x895f rf_pll_rstn
+  0x8964 rf_sdm_en
+  0x8960 rf_pll_intg
+  0x8961 rf_pll_frac
+  0x8963 rf_pll_frachi
+  0x896c rf_afc_cap
+  0x8967 rf_clkpll_bias
+  0x896f rf_clkpll_en
+  0x8968 rf_clkpll_int
+  0x8969 rf_clkpll_frac
+  0x896d rf_balun_ctrim
+  0x8971 rf_adc_mode
+  0x8972 rf_adc_gc
+  0x8973 rf_adc_ch
+  0x8980 rf_rccal_result
+  0x8981 rf_afc_d2a
+  0x8982 rf_rssi
+
+
+0x8a00 core_usb_config		
+0x8a01 core_usb_int_mask	
+0x8a04 core_usb_addr
+0x8a10 core_usb_trig	
+0x8a11 core_usb_stall		
+0x8a12 core_usb_clear		
+0x8a18 core_usb_ep
+0x8a18 core_usb_dfifo0 
+0x8a19 core_usb_dfifo1  
+0x8a1a core_usb_dfifo2 
+0x8a20 core_usb_ep_len
+0x8a26 core_usb_status		
+0x8a27 core_usb_fifo_empty
+0x8a28 core_usb_fifo_full
+
+
+4 rx_freq_offset
+1 tx_freq_offset
+
+/* bit difinitions */
+  4 whiteoff_bit
+  6 clksel_rc
+  5 clksel_dpll
+  4 clksel_xtal
+  5 adc_rccal
+  0 bpf_rccal
+  1 demod_clkoff
+
+(
+  2 reload_code
+  3 gpio_latch
+  4 enable_retmem
+  7 cold_wake
+  0xef isogate_mask
+  0xe0 cs_mask
+)
+
+// misc ctrl
+(
+  0x01 otpd_start
+  0x02 spid_start
+  0x04 iicd_start
+  0x08 lock_otp
+  0x10 x_sethi
+  0x20 y_sethi
+  0x40 z_sethi
+  0x80 ccnt_start
+)
+// dma status bit
+(
+  0 otpd_crcok
+  1 otpd_done
+  2 spid_crcok
+  3 spid_done
+  4 iicd_crcok
+  5 iicd_done
+  6 iicd_ack
+)
+
+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
+0x2dc6c00 uart_clk
+0x16E3600 uart_clk_24
+
+//core_clkoff
+(
+	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_8051
+	9 CLOCK_OFF_KEYSCAN
+	0x0a CLOCK_OFF_USB
+	0x0b CLOCK_OFF_QDECODER
+	0x0c CLOCK_OFF_SPI
+	0x0d CLOCK_OFF_PWM
+	0x0e CLOCK_OFF_CODEC
+	0x0f CLOCK_OFF_UART
+)
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/rfcomm.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/rfcomm.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/rfcomm.format	(working copy)
@@ -0,0 +1,391 @@
+/*****************************************************************************/
+/* RCS HEADER -- DO NOT ERASE                                                */
+/* $Author: Administrator $                                                           */
+/* $Id: bt_rfcomm_format.upper,v 1.1 2009-09-28 04:06:17 Administrator Exp $ */
+/* Orisil Technology                                                      */
+/*****************************************************************************/
+
+/**********/
+/* memory */
+/**********/
+
+memalloc(
+1 memRemoteRPNBitRate
+1 memRemotePRNDataBits
+1 memRemotePRNStopBit
+1 memRemotePRNParity
+1 memRemotePRNFlowControl
+1 memRemotePRNXon
+1 memRemotePRNXoff
+
+
+3 mem_mod2div_temp
+2 mem_contw_temp
+2 mem_attrib_list
+
+//rfcomm head
+1 mem_current_adss
+1 mem_current_channel
+1 mem_current_frame_type
+1 mem_current_fcs
+2 mem_current_length
+2 mem_rfcomm_uih_payload_ptr
+
+//rfcomm uih
+1 mem_uih_cmd_type
+2 mem_uih_length
+2 mem_param_payload_ptr
+
+
+//rfcomm modem status
+1 mem_ms_param
+
+//rfcomm pn
+1 mem_pn_credit_flow_type_info
+1 mem_pn_priority
+1 mem_pn_acknowledg_timer
+1 mem_pn_max_retrans
+
+1 mem_rfcomm_send_adss
+1 mem_rfcomm_send_frame_type
+1 mem_rfcomm_send_fcs
+1 mem_rfcomm_send_offset
+
+)
+
+xmemalloc(
+1 mem_pn_dlci
+2 mem_pn_max_frame_size
+
+1 memFCStemp1
+1 memFCStemp2
+1 memFCStemp3
+
+1 mem_rfcomm_initiator
+
+1 mem_remote_spp_channel
+
+1 mem_HIUfcs_SPP
+1 mem_HIUfcs_SPP_WCredits
+
+1 mem_rfcomm_send_more_pkt
+
+1 mem_remote_credits
+1 mem_credit_given
+
+//rfcomm modem status
+1 mem_ms_channel
+
+1 mem_credit_flag
+
+2 mem_rfcomm_max_frame_size
+1 mem_rfcomm_credit_init_data
+
+2 mem_cb_receive_spp_data
+
+2 mem_nl_rx_data_src
+2 mem_nl_rx_len_all
+)
+
+
+(
+0 CREDIT_DISABLE
+1 CREDIT_ENABLE
+)
+
+
+/************************************************************************/
+  
+
+ 
+/************/
+/* constant */
+/************/
+
+/* RFCOMM state for Headset (memRFCOMM_State) */ 
+  (
+    0 RFCOMM_IDLE           /* before the responsor HS receive SABM            */
+    1 RFCOMM_W4_DLCI0_OPEN
+    2 RFCOMM_W4_DLCI0_CLOSE
+    3 RFCOMM_START_DLCI0    /* After respond SABM frame (DLCI=0)               */
+    4 RFCOMM_W4_DLCI_OPEN
+    5 RFCOMM_W4_DLCI_CLOSE
+    6 RFCOMM_DLCI_OPENED    
+   
+  )
+  
+/* RFCOMM timer constants   */
+  (
+    1000  RFCOMM_T1         /* Used by SABM and DISC frames,100*20ms = 20s     */     
+    1000  RFCOMM_T2         /* Used by commands send in UIH on DLCI0,          */
+    300   RFCOMM_T3_RINGON  /* 6s for ring fade time                           */
+  
+  )
+
+/* Command Type */
+  (
+    0x3F RSP_RX_SABM        /*responsor expect SABM from initiator             */
+    0x3F INI_TX_SABM
+	
+    0x73 RSP_TX_UA          /*responsor send out UA command                    */
+    0x73 UA_WFBIT_SET	    /* UA control field with F bit set                 */
+	
+    0xEF RSP_RX_UIH         /*responsor expect UIH from initiator              */
+
+    0xEF RSP_TX_UIH         /*responsor send UIH to initiator                  */
+     
+    0x1F RSP_TX_DM          /*responsor send DM to initiator                   */
+    0x1F DM_WFBIT_SET       /* DM control field with F bit set                 */
+    0x0F DM_WFBIT_CLEAR     /* DM control field with F bit clear               */
+
+    0x53 RSP_RX_DISC        /*responsor expect DISC from initiator             */
+    0x53 INI_TX_DISC	    /*initiator send DISC control type command         */
+     
+    0xFF RSP_RX_UIH_WDATA   /*UIH data with credit flow control info           */
+    
+    
+  )
+
+/* Multiplexor commands and responses frames */
+  (
+    0x83 PN_COMMAND           /* Bit 0 EA C/R Type = 000001         */
+    0x81 PN_RESPONSOR         /* Bit 0 EA C/R Type = 000001         */
+    
+    0xE3 MSC_COMMAND          /* Bit 0 EA C/R Type = 000111         */
+    0xE1 MSC_RESPONSOR
+ 
+    0x13 NSC_COMMAND          /* Bit 0 EA C/R Type = 001000         */
+    0x11 NSC_RESPONSOR        /* Bit 0 EA C/R Type = 001000         */
+
+    0x23 TEST_COMMAND         /* Bit 0 EA C/R Type = 000111         */
+    0x21 TEST_RESPONSOR 
+    
+    0x93 RPN_COMMAND          /* Bit 0 EA C/R Type = 001001         */
+    0x91 RPN_RESPONSOR 
+    
+    0x53 RLS_COMMAND          /* Bit 0 EA C/R Type = 001010         */
+    0x51 RLS_RESPONSOR 
+
+    0xA3 FCON_COMMAND         /* Bit 0 EA C/R Type = 000101         */
+    0xA1 FCON_RESPONSOR 
+    
+    0x63 FCOFF_COMMAND        /* Bit 0 EA C/R Type = 000110         */
+    0x61 FCOFF_RESPONSOR 
+    	
+    0x03 RLS_OVERRUN
+    0x05 RLS_PARITY_ERROR
+    0x09 RLS_FRAMING_ERROR
+  )
+
+/* memLocalCredit */
+  (
+    0x01 RFCOMM_CREDIT
+  )
+
+  (
+  	0x007f RFCOMM_MAX_FRAME_SIZE
+  )
+
+/* UIH received Data length */
+  (
+    0  LENGTH_ZERO
+    
+    6  LENGTH_OK
+    7  LENGTH_HOT
+    8  LENGTH_RING
+    9  LENGTH_ERROR
+    9  LENGTH_AGVOL_ONEBYTE
+    10 LENGTH_AGVOL_TWOBYTE
+    10 LENGTH_VOL_ONEBYTE
+    11 LENGTH_VOL_TWOBYTE
+    12 LENGTH_BRSF
+    13 LENGTH_PLUS_CIEV
+    15 LENGTH_INBANDRING
+    14 LENGTH_CIEV_CALL
+    17 LENGTH_CRING
+    20 LENGTH_BRSF_OK
+    24 LENGTH_CIND0
+    28 LENGTH_CIEV_TWO
+    32 LENGTH_CIND_OK
+    59 LENGTH_CIND_OK2
+    100 LENGTH_DISCARD
+  )
+  
+/************/
+/* flags    */
+/************/
+  
+/* memRFCOMM_L2CAP_Interface */
+  (
+    0 RFCOMM_TX_W4BUF_FLAG    /* Wait for Tx buffer empty flag */
+    1 RFCOMM_CLOSE_LINK_FLAG
+  )
+  
+
+    
+/* memRemoteMSC		*/
+  (
+    0 MSC_EA_BIT
+    1 MSC_FC_BIT
+    2 MSC_RTC_BIT
+    3 MSC_RTR_BIT
+    6 MSC_IC_BIT
+    7 MSC_DV_BIT
+  )
+
+/* memRemoteRLS         */
+  (
+    0x0C OVERRUN_ERROR
+    0x0A PARITY_ERROR
+    0x09 FRAMING_RERROR
+  )
+  
+/* memRemoteRPNBitRate  */
+  (
+    0x00 BITS2400
+    0x01 BITS4800
+    0x02 BITS7200
+    0x03 BITS9600
+    0x04 BITS19200
+    0x05 BITS38400
+    0x06 BITS57600
+    0x07 BITS115200
+    0x08 BITS230400
+  )
+  
+/* memRemotePRNDataBits	*/
+  (
+    0x00 DATABITS5
+    0x01 DATABITS6
+    0x02 DATABITS7
+    0x03 DATABITS8
+  )
+  
+/* memRemotePRNStopBit	*/
+  (
+    0    ONESTOP
+    1    ONEHALFSTOP
+  )
+  
+/* memRemotePRNParity   */
+  (
+    0    ODDPARITY
+    1    EVENPARITY
+    2    MARKPARITY
+    3    SPACEPARITY
+    
+    7    PARITY_ENABLE_BIT
+  )
+
+/* RPN bit mask(in)     */
+  (
+     0   BIT_RATE_MASK_BIT
+     1   DATA_BITS_MASK_BIT
+     2   STOP_BITS_MASK_BIT
+     3   PARITY_MASK_BIT
+     4   PARITY_TYPE_MASK_BIT
+     5   XON_CHAR_MASK_BIT
+     6   XOFF_CHAR_MASK_BIT
+  )
+  
+/* RPN bit mask(in) 2    */
+  (
+     0   XON_XOFF_INPUT_MASK_BIT
+     1   XON_XOFF_OUTPUT_MASK_BIT
+     2	 RTR_INPUT_MASK_BIT
+     3   RTR_OUTPUT_MASK_BIT
+     4   RTC_INPUT_MASK_BIT
+     5   RTC_OUTPUT_MASK_BIT
+
+  )
+
+/* memRFCOMM_Request	*/
+  (
+    0 SEND_MSC_CMD_REQ_FLAG
+    1 SEND_AT_CKPD_REQ_FLAG
+    2 SEND_RING_REQ_FLAG
+    3 SEND_SABM_CMD
+  )
+  
+/* memRFCOMM_Misc_Flag  */
+  (
+    0 MSC_CDM_ALREADY_SEND_FLAG
+    1 CREDIT_FLOW_USED_FLAG
+    2 DONT_EMBEDDED_CREDIT_FLAG 
+    3 MSC_EXCHANGE_DONE_FLAG
+    4 FLOW_CONTROL_FCOFF_BIT            /* set when receive FCoff, clear when FCon   */
+  )
+  
+/* memRemoteMSC		*/
+  (
+    1 FLOW_CONTROL_FC_BIT		/* received MSC FC bits                      */
+  
+  )
+/* Address filed        */
+  (
+    0 ADDR_EA_BIT
+    1 ADDR_CR_BIT
+    2 ADDR_D_BIT
+  )
+//should be same as descripted in SDP
+(
+    1 SPP_SLAVE_CHANNEL
+    7 OBEX_SERVER_CHANNEL
+    8 HF_SERVER_CHANNEL 
+    9 HS_SERVER_CHANNEL
+)
+/* memRFCOMM_Flag */
+(
+	0 USING_HF_PROFILE
+	1 USING_HS_PROFILE
+	2 USING_SPP_PROFILE
+)
+/*RFCOMM Frame Type*/
+(
+	0x3f RFCOMM_FRAME_TYPE_SABM
+	0x73 RFCOMM_FRAME_TYPE_UA
+	0xEF RFCOMM_FRAME_TYPE_UIH
+	0xFF RFCOMM_FRAME_TYPE_UIH_CREDITS
+	0x53 RFCOMM_FRAME_TYPE_DISCONN
+)
+/*RFCOMM UIH CMD TYPE*/
+(
+	0x41 UIH_PARAM_NEG_CMD
+	0x40 UIH_PARAM_NEG_RES
+	0x49 UIH_PARAM_CMD_REMOVE_PORT
+	0x71 UIH_MODEM_STATUS_CMD
+	0x70 UIH_MODEM_STATUS_RES
+)
+
+/*bits in rfcomm address*/
+(
+	0 RFCOMM_ADDRESS_EXT_LEN
+	1 RFCOMM_ADDRESS_CR
+	2 RFCOMM_ADDRESS_DERECTION
+
+
+)
+
+	(                                   
+	0 RFCOMM_CHANNEL_STATE_PN_CMD
+	1 RFCOMM_CHANNEL_STATE_PN_RES
+	2 RFCOMM_CHANNEL_STATE_SABM
+	3 RFCOMM_CHANNEL_STATE_UA
+	4 RFCOMM_CHANNEL_STATE_SND_MS_CMD
+	5 RFCOMM_CHANNEL_STATE_RCV_MS_CMD
+	6 RFCOMM_CHANNEL_STATE_SND_MS_RES
+	7 RFCOMM_CHANNEL_STATE_RCV_MS_RES
+	0xff RFCOMM_CHANNEL_SETUP_COMPLETE
+	) 
+
+	/*mem_rfcomm_send_more_pkt*/
+	(
+	1 MORE_PKT_MSC_CMD_HF
+	2 MORE_PKT_MSC_CMD_HS
+	3 MORE_PKT_MSC_CMD_SPP
+	4 MORE_PKT_MSC_CMD_OBEX
+	)
+
+	(
+	127 RFCOMM_MALLOC_SIZE
+	)
\ No newline at end of file
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/sdp.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/sdp.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/sdp.format	(working copy)
@@ -0,0 +1,70 @@
+
+memalloc(
+0 mem_sdp_mem_start
+8 mem_sdp_uuid_search_ptr
+2 mem_sdp_continue_byte
+1 mem_sdp_pduid
+2 mem_sdp_transactionid
+2 mem_sdp_transactionid_local
+2 mem_sdp_attribute_maxbyte
+2 mem_sdp_record_maxcnt
+4 mem_sdp_record_handle
+1 mem_sdp_LACAP_found
+1 mem_sdp_RFCOMM_found
+0 mem_sdp_handle_list
+32 mem_sdp_attrib_list
+2 mem_sdp_error_code
+2 mem_sdp_all_length
+1 mem_handle_humber
+2 mem_search_uuid
+0 mem_sdp_mem_end
+)
+xmemalloc(
+2 mem_ui_uuid_table
+22 mem_all_uuid_16bits
+34 mem_all_uuid_128bits
+2 mem_sdp_l2capch_ptr
+)
+(
+0 AGORHS_SERVICE
+1 GENAUDIO_SERVICE
+2 HANDSFREE_SERVICE
+)
+(
+0 ATTRIBUTEID_0000
+1 ATTRIBUTEID_0001
+2 ATTRIBUTEID_0004
+3 ATTRIBUTEID_0009
+4 ATTRIBUTEID_0100
+5 ATTRIBUTEID_0302
+6 ATTRIBUTEID_0006
+7 ATTRIBUTEID_0311
+)
+
+(
+0x01 SDP_ERROR_RES
+0x02 SDP_SEARCH_REQ
+0x03 SDP_SEARCH_RES
+0x04 SDP_ATTRIBUTE_REQ
+0x05 SDP_ATTRIBUTE_RES
+0x06 SDP_SEARCHATTRIB_REQ
+0x07 SDP_SEARCHATTRIB_RES
+)
+0x2600 sdp_max_amount
+250 SDP_MALLOC_SIZE
+0x6e sdp_tid_spp //any number
+
+(
+0x1f11 SDP_UUID_HS_AUDIO_GATEWAY
+)
+
+(
+0X09 SDP_ATTRIBUTE_ID
+0x0a SDP_ATTRIBUTE_RANGE
+)
+
+(//mem_sdp_handle_list
+7 SDP_MAX_HANDLE_NUMBER
+)
+
+ 
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/security.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/security.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/security.format	(working copy)
@@ -0,0 +1,141 @@
+
+memalloc(
+/* moved from bt.format for 3dh5 1021bytes packet buffer */
+17 mem_rxbuf
+
+16 mem_random_number
+16 mem_round_key
+16 mem_kinit
+
+16 mem_input_store
+16 mem_x
+15 mem_y
+1 mem_y15
+17 mem_key_store
+1 mem_key_store_end
+2 memp_ar_key
+2 memp_ar_input
+10 mem_ar_hround
+
+
+1 mem_ec_infinite
+2 mem_ec_loopc
+1 mem_aes_cmac_data_length
+
+0 memdat
+/* ecc calculation */
+
+24 mem_ax
+24  mem_ay
+24  mem_az
+24 mem_bx
+0 mem_ax_256 //32 bytes
+24 mem_by
+8 mem_bz
+16 mem_ay_256 // 32 bytes
+16 mem_cx
+8 mem_az_256 // 32 bytes
+23 mem_cy
+1 mem_cy5
+0 mem_bx_256 // 32 bytes
+24 mem_cz
+8  mem_k
+16 mem_by_256 // 31 bytes
+16 mem_align
+
+0 mem_bz_256  //32 bytes
+0 mem_tmp1
+24 memahbak
+8 mem_tmp5
+0 mem_cx_256  //32 bytes
+16 memahsave
+16  mem_tmp2
+0 mem_cy_256  // 32 bytes
+0  memahsave_end 
+1  mem_addr_padding 
+7   mem_addr_value         /* 12 bytes     */ 
+0 mem_tmp3
+5 mem_t1
+3  mem_addr_value_end   
+15 mem_addr_iocap_end
+1 mem_cy5_256 // 1 byte
+0 mem_cz_256 // 32 bytes
+0 mem_tmp0
+8 mem_t0
+16 mem_tmp0a
+8  mem_t2
+16 mem_k_256 //32 bytes
+16 mem_t3
+8  mem_tmp1_256 //32 bytes
+24 mem_t7
+
+
+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
+
+//p256
+//2 mem_ec_loopc_256
+//32 mem_ax_256
+//32 mem_ay_256
+//32 mem_az_256
+//32 mem_bx_256
+//32 mem_by_256
+//32 mem_bz_256
+//32 mem_cx_256
+//31 mem_cy_256
+//1 mem_cy5_256
+//32 mem_cz_256
+//32 mem_k_256
+
+
+//32 mem_tmp1_256
+//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
+
+32 mem_p_256		
+32 mem_a_256
+32 mem_gx_256
+32 mem_gy_256
+//4 mem_le_keyid
+16 mem_le_slat
+
+
+//64 mem_regext
+//1 mem_regext_index
+
+//16 mem_le_mackey
+
+
+//1 mem_AES_CMAC_flag
+//16 mem_AES_CMAC_temp
+//16 mem_AES_CMAC_M_last
+
+//4 mem_le_gkey
+
+//16 mem_le_r
+
+)
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/simple_pairing.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/simple_pairing.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/simple_pairing.format	(working copy)
@@ -0,0 +1,188 @@
+/* simple pairing page */
+
+memalloc(
+
+//4 mem_hci_ssp_mode
+0 mem_sp_state_start
+1 mem_sp_state
+1 mem_master_sp_state
+1 mem_sp_flag
+1 mem_master_sp_flag
+1 mem_sp_calc
+1 mem_sp_dh_ready
+1 mem_sp_localsm
+1 mem_pairing_auth
+
+0 mem_sp_flag_start
+1 mem_sp_local_key_send_count
+1 mem_sp_remote_key_recv_count
+1 mem_sp_remote_key_invalid
+1 mem_sp_dhkey_invalid
+
+
+4 mem_gkey
+
+
+8 mem_le_pubkey_remote_x_256
+0 mem_sp_pubkey_remote
+24 mem_sp_pubkey_remote_x
+0 mem_sp_pubkey_remote_x_end
+8 mem_le_pubkey_remote_y_256
+24 mem_sp_pubkey_remote_y
+
+8 mem_le_dhkey_256
+24 mem_sp_dhkey
+0 mem_sp_dhkey_end
+
+16 mem_sp_random_local
+0 mem_sp_random_local_end
+16 mem_sp_random_remote
+0 mem_sp_random_remote_end
+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
+16 mem_sp_check_result
+16 mem_sp_confirm_remote
+16 mem_sp_prarm_stack
+)
+
+xmemalloc(
+1 mem_sp_local_key_invalid
+
+
+32 mem_le_private_key_256
+32 mem_le_pubkey_local_x_256
+32 mem_le_pubkey_local_y_256
+
+24 mem_sp_private_key
+0 mem_sp_pubkey_local
+24 mem_sp_pubkey_local_x
+0 mem_sp_pubkey_local_x_end
+24 mem_sp_pubkey_local_y
+
+1 mem_ssp_enable
+3 mem_sp_iocap_local
+3 mem_sp_iocap_remote
+
+1 mem_flag_mode_ssp_pin
+1 mem_ssp_mode_flag
+1 mem_authentication_passkey_times
+1 mem_passkey_1bit
+1 mem_flag_pairing_state
+
+)
+/* simple pairing status flag */
+(
+  0x00   SP_FLAG_STANDBY
+  0x01   SP_FLAG_COMMIT
+  0x02   LE_SP_FLAG_COMMIT_256
+
+)
+
+/* simple pairing calc flag */
+(
+  0x00   SP_CALC_STANDBY
+  0x01   SP_CALC_PUBKEY
+  0x02   SP_CALC_DHKEY
+  0x03   SP_CALC_PUBKEY_256
+  0x04   SP_CALC_DHKEY_256
+)
+
+/* simple pairing state */
+(
+  0x00   SP_STAT_NULL
+  0x01   SP_STAT_KEY_RECV
+  0x02   SP_STAT_KEY_GENERATE
+  0x03   SP_STAT_KEY_SEND
+  0x04   SP_STAT_COMMIT_CALC
+  0x05   SP_STAT_COMMIT_SEND
+  0x06   SP_STAT_RANDOM_RECV
+  0x07   SP_STAT_RANDOM_SEND
+  0x08   SP_STAT_CONFIRM_RECV
+  0x09   SP_STAT_CONFIRM_CHECK
+  0x0A   SP_STAT_CONFIRM_CALC
+  0x0B   SP_STAT_CONFIRM_SEND
+  0x0C   SP_STAT_LINK_KEY_CALC
+  0x0F   SP_STAT_DONE
+  0x10   SP_STAT_FEATURE_EXT_SEND
+  0x11   SP_STAT_GKEY_CALC
+  /*simple pairing master only*/
+  0x12   SP_MASTER_STAT_START_SKIP
+  0x13   SP_MASTER_STAT_START_DONE
+  0x14   SP_STAT_COMMITMENT_COMPARE
+  0x15   SP_STATE_END
+)
+
+
+/* simple paring invalid flag */
+(
+  0x00   SP_KEY_INVALID
+  0x01   SP_KEY_VALID
+  0x03   SP_KEY_VALID_256
+
+)
+
+/* encapsulated defination for P-192 key */
+(
+  0x01  ENCAPSULATED_MAJOR_TYPE_P192
+  0x01  ENCAPSULATED_MINOR_TYPE_P192
+  0x30  ENCAPSULATED_LEN_P192
+)
+
+/* bluetooth 2.1 support flag */
+(
+  0x00  SIMPLE_PAIRING_ENABLE
+  0x01  ENCRYPTION_PAUSE_ENABLE
+  0x02  EXTENDED_INQUIRY_RESPOSE_ENABLE
+  0x03  SNIFF_SUBRATING_ENABLE
+)
+
+/*mem_sp_localsm*/
+(
+  0x00 DEFAULT_STATEMACHINE
+  0x01 LOCAL_STATEMACHINE
+)
+
+(
+ 0x00 DEFALT_PAIRING_AUTH
+ 0x01 PAIRING_AUTH
+)
+
+(
+1 SSP_MODE_SSP_PIN_FLAG
+2 SSP_MODE_PASSKEY_ENTRY_FLAG
+3 SSP_MODE_JUST_WORK_FLAG
+)
+
+(//ssp mode
+0x040003 SSP_MODE_JUST_WORK_IO_CAP_DATA
+0X040001 SSP_MODE_SSP_PIN_IO_CAP_DATA
+0X040002 SSP_MODE_PASSKEY_IO_CAP_DATA
+)
+
+(
+0x00 DISPLAY_ONLY
+0x01 DISPLAY_YESNO
+0x02 KEYBOARD_ONLY
+0x03 NO_INPUT_NO_OUTPUT
+)
+
+(
+7 FLAG_MODE_SSP_PIN_REVICEVE_COMPARISON_BIT
+6 FLAG_MODE_SSP_PIN_RECIEVE_DHKEY_BIT
+0 FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT
+)
+(
+1 FLAG_PAIRING_STATE_PAIRING
+0 FLAG_PAIRING_STATE_NOT_PAIRING
+)
+
+  
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/ui.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/ui.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/ui.format	(working copy)
@@ -0,0 +1,448 @@
+/*****************************************************************************/
+/* RCS HEADER -- DO NOT ERASE                                                */
+/* $Author: Administrator $                                                           */
+/* $Id: bt_ui_format.upper,v 1.1 2009-09-28 04:06:17 Administrator Exp $     */
+/************************************************************************/
+
+
+	/* ========= memory ============== */
+memalloc(
+2 mem_UI_data_txbuff_length
+
+1 mem_ipc_skip_continue_proc
+0 mem_ui_timer_temp  //length 4
+4 mem_ipc_rega_temp
+) 
+
+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_discovery_timeout_timer_count
+1 mem_hid_handshake_timer_count
+1 memui_reconnect_mode
+2 mem_ui_state_map
+
+//UI Config area
+1 mem_ui_profile_supported
+1 mem_ui_button_timeout
+1 mem_ui_button_gpio
+2 mem_discovery_timeout
+1 mem_pin_length
+16 mem_pin
+
+)
+/************/
+/* constant */
+/************/
+
+//mem_ui_state_map
+(
+0 UI_STATE_BT_CONNECTED
+1 UI_STATE_BT_SETUP_COMPLETE
+2 UI_STATE_BT_HID_CONN
+3 UI_STATE_BT_HID_HANDSHAKE
+4 UI_STATE_BT_SPP_CONN
+5 UI_STATE_BT_SNIFF
+6 UI_STATE_BT_DISCOVERY
+7 UI_STATE_BT_RECONNECT
+8 UI_STATE_BT_SLAVE_ROLE
+9 UI_STATE_BLE_CONNECTED
+10 UI_STATE_BLE_WRITE_RCV
+11 UI_STATE_BLE_ADV
+12 UI_STATE_BTN_DOWN
+)
+
+(
+1 UI_STATE_SPP_NL_AUTO_DISCOVER
+
+)
+
+/* UI state for Headset (memui_HS_State) */ 
+   (
+    0 UI_HEADSET_DISCONNECT
+    1 UI_HEADSET_IDLE                   /* before the responsor HS receive SABM      */
+    2 UI_HEADSET_W4CONNECT
+    3 UI_HEADSET_RINGING
+    4 UI_HEADSET_CONNECTED
+    5 UI_HEADSET_PARING
+  )
+/* memui_BB_State */
+(
+  0 UI_BB_OFF
+  1 UI_BB_IDLE
+  2 UI_BB_DISCOVERY
+  3 UI_BB_CONNECTED_ACTIVE_NO_SCO
+  4 UI_BB_CONNECTED_ACTIVE_WITH_SCO
+  5 UI_BB_CONNECTED_ACTIVE_WAIT_SNIFF
+  6 UI_BB_CONNECTED_SNIFF
+  7 UI_BB_RECONNECT
+  8 UI_BB_CONNECTED_SNIFF_WITH_SCO
+)
+
+/************/
+/* flags    */
+/************/
+  
+/* memui_Misc_Flags */
+  (
+    5 NO_IDLE_TURN_OFF
+    7 ANSWER_RING_FLAG               /* 1 Answer,0 no*/
+  )
+
+/* mem_UI_SCH_Interface */
+  (
+    0  UI_HS_PAIRING 
+    2  UI_REQ_CLOSE_RFCOMM
+    3  UI_LINK_LOST
+    4  UI_REQ_OPEN_SCO
+    6  UI_REQ_CLOSE_SCO
+  )
+  
+/* memui_PassOverKey */
+  (
+    0  ANSWER_RING_BIT
+    0  AG_SEND_RING_BIT
+    1  VOL_UP_BIT
+    2  VOL_DOWN_BIT
+    3  INI_CALL_BIT
+    4  DAIL_LAST_CALL
+    5  END_CALL_BIT
+    6  NOKIA_VOICE_ACTIVE 
+    7  REJECT_CALL_BIT
+  )
+  
+/* memui_reconnect_mode */
+(
+  0 NO_RECONNECTION
+  1 RECONNECT_HID
+  2 RECONNECT_HF
+  3 RECONNECT_HS
+  4 RECONNECT_HID_HF
+  5 RECONNECT_HID_HS
+)
+/* memui_Commands */
+(
+0 BT_CMD_STANDBY
+1 BT_CMD_START_DISCOVERY
+2 BT_CMD_STOP_DISCOVERY
+3 BT_CMD_RECONNECT
+4 BT_CMD_DISCONNECT
+5 BT_CMD_ENTER_SNIFF
+6 BT_CMD_EXIT_SNIFF
+7 BT_CMD_ENTER_SNIFF_SUBRATING
+8 BT_CMD_EXIT_SNIFF_SUBRATING
+9 BT_CMD_SNIFF_TEST
+10 BT_CMD_SET_PIN_CODE
+11 BT_CMD_START_INQUIRY
+12 BT_CMD_STOP_INQUIRY
+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
+29 BT_CMD_ROLE_SWITCH
+30 BT_CMD_BB_RECONN_CANCEL
+31 BT_CMD_STORE_RECONN_INFO_LE
+32 BT_CMD_STORE_RECONN_INFO_BT
+33 BT_CMD_DHKEY_NOT_ACCEPT
+34 BT_CMD_START_24G
+35 BT_CMD_STOP_24G
+36 BT_CMD_PAIR_24G
+37 BT_CMD_STORE_RECONN_INFO
+)
+
+(
+0x00 BT_EVT_NULL
+0x01 BT_EVT_BB_CONNECTED
+0x02 BT_EVT_BB_DISCONNECTED
+0x03 BT_EVT_RECONN_STARTED
+0x04 BT_EVT_RECONN_FAILED
+0x05 BT_EVT_SETUP_COMPLETE
+0x06 BT_EVT_HID_CONNECTED
+0x07 BT_EVT_HID_DISCONNECTED
+0x08 BT_EVT_SPP_CONNECTED
+0x09 BT_EVT_SPP_DISCONNECTED
+0x0A BT_EVT_PINCODE_REQ
+0x0B BT_EVT_ENTER_SNIFF
+0x0C BT_EVT_EXIT_SNIFF
+0x0D BT_EVT_ENTER_SNIFF_SUB
+0x0E BT_EVT_EXIT_SNIFF_SUB
+0x0F BT_EVT_DISCOVERY_STOPED
+0x10 BT_EVT_BUTTON_LONG_PRESSED
+0x12 BT_EVT_HID_HANDSHAKE
+0X13 BT_EVT_RECONN_PAGE_TIMEOUT
+0x14 BT_EVT_LE_CONNECTED
+0X15 BT_EVT_LE_DISCONNECTED
+0x16 BT_EVT_ML2CAP_CONN_REFUSED
+0x17 BT_EVT_BUTTON_ENTER_HIBERNATE
+0x18 BT_EVT_LINKKEY_GENERATE
+0x19 BT_EVT_SWITCH_NOT_ACCEPT
+0x20 BT_EVT_SWITCH_ACCEPT
+0x21 BT_EVT_SNIFF_NOT_ACCEPT
+0x22 BT_EVT_SNIFF_ACCEPT
+0x23 BT_EVT_UNSNIFF_ACCEPT
+0x24 BT_EVT_UNSNIFF_NOT_ACCEPT
+0x25 BT_EVT_BUTTON_ADJUST_DPI
+0x26 BT_EVT_SEND_UNSNIFF_ACCEPT
+0x27 BT_EVT_VIRTUAL_CABLE_UNPLUG
+0x28 BT_EVT_LE_WRITE_REQUEST
+0x29 BT_EVT_LE_ENC_INFO
+0x2a BT_EVT_SWITCH_FAIL_MASTER
+0x2b BT_EVT_SWITCH_SUCCESS_MASTER
+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
+0x37 BT_EVT_BT_PAIRING_FAIL
+0x38 BT_EVT_BT_PAIRING_SUCCESS
+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
+)
+//switch
+(
+0 OFF
+1 ON
+)
+/* memui_mem_lock */
+(
+    0 MEM_UNLOCK
+    1 MEM_LOCK
+)
+/* memui_flag0 */
+(
+    0 UI_USER_DATA_FLAG
+    1 UI_WII_WAITING_SLEEP
+    2 UI_KEYBOARD_SNIFF_SKIP
+)
+/* mem_master_type */
+(
+    0 MTYPE_HID_DEFAULT
+    1 MTYPE_HID_SSP
+    2 MTYPE_SPP
+)
+
+	(	
+	0x01 RECIEVE_SDP_CONN_RES
+	0x02 RECIEVE_SDP_CFG_REQ
+	0x03 RECIEVE_SDP_CFG_RES
+	0x04 RECIEVE_RFCOMM_CONN_RES
+	0x05 RECIEVE_RFCOMM_CFG_REQ
+	0x06 RECIEVE_RFCOMM_CFG_RES
+	0x07 RECIEVE_HID_CTRL_CONN_RES
+	0x08 RECIEVE_HID_CTRL_CFG_REQ
+	0x09 RECIEVE_HID_CTRL_CFG_RES
+	0x0A RECIEVE_HID_INT_CONN_RES
+	0x0B RECIEVE_HID_INT_CFG_REQ
+	0x0C RECIEVE_HID_INT_CFG_RES
+	0x0D RECIEVE_AVCTP_CONN_RES
+	0x0E RECIEVE_AVCTP_CFG_REQ
+	0x0F RECIEVE_AVCTP_CFG_RES
+	0x10 RECIEVE_AVDTP_SIGNAL_CONN_RES
+	0x11 RECIEVE_AVDTP_SIGNAL_CFG_REQ
+	0x12 RECIEVE_AVDTP_SIGNAL_CFG_RES
+	0x13 RECIEVE_AVDTP_MEDIA_CONN_RES
+	0x14 RECIEVE_AVDTP_MEDIA_CFG_REQ
+	0x15 RECIEVE_AVDTP_MEDIA_CFG_RES
+	0x16 RECIEVE_SS_REASULT_HS                  
+	0x17 RECIEVE_SS_REASULT_HF                  
+	0x18 RECIEVE_SS_REASULT_AVTARG		          
+	0x19 RECIEVE_SS_REASULT_OBEX		            
+	0x1A RECIEVE_DLCI0_UA
+	0x1B RECIEVE_HS_PARAM_NEG_RES
+	0x1C RECIEVE_HS_UA
+	0x1D RECIEVE_HS_MODEM_STATUS_RES
+	0x1E RECIEVE_HS_MODEm_STATUS_CMD
+	0x1F RECIEVE_HF_PARAM_NEG_RES   
+	0x20 RECIEVE_HF_UA              
+	0x21 RECIEVE_HF_MODEM_STATUS_RES
+	0x22 RECIEVE_HF_MODEm_STATUS_CMD 
+	0x23 RECIEVE_OBEX_PARAM_NEG_RES     
+	0x24 RECIEVE_OBEX_UA              
+	0x25 RECIEVE_OBEX_MODEM_STATUS_RES
+	0x26 RECIEVE_OBEX_MODEm_STATUS_CMD    
+	0x27 RECIEVE_SPP_PARAM_NEG_RES   
+	0x28 RECIEVE_SPP_UA              
+	0x29 RECIEVE_SPP_MODEM_STATUS_RES
+	0x2A RECIEVE_SPP_MODEm_STATUS_CMD
+	0x2b RECIEVE_SDP_DISCONN_RES
+	)
+
+
+
+	(
+	0 UPPERSM_RP_IDLE
+	1 UPPERSM_RP_SDP_CONN
+	2 UPPERSM_RP_SDP_CONN_WAIT
+	3 UPPERSM_RP_SDP_CFG
+	4 UPPERSM_RP_SDP_CFG_WAIT
+	5 UPPERSM_RP_SS_AVTARG
+	6 UPPERSM_RP_SS_AVTARG_WAIT
+	7 UPPERSM_RP_SS_OBEX
+	8 UPPERSM_RP_SS_OBEX_WAIT
+	9 UPPERSM_RP_SDP_DISCONN
+	10 UPPERSM_RP_SDP_DISCONN_WAIT
+	11 UPPERSM_RP_AVDTP_CONN_WAIT
+	12 UPPERSM_RP_AVCTP_CONN
+	13 UPPERSM_RP_AVCTP_CONN_WAIT
+	14 UPPERSM_RP_AVCTP_CFG
+	15 UPPERSM_RP_AVCTP_CFG_WAIT
+	16 UPPERSM_RP_OBEX_CMD_PN
+	17 UPPERSM_RP_OBEX_CMD_PN_WAIT
+	18 UPPERSM_RP_OBEX_SABM
+	19 UPPERSM_RP_OBEX_SABM_WAIT
+	20 UPPERSM_RP_OBEX_CMD_MS
+	21 UPPERSM_RP_OBEX_CMD_MS_WAIT
+	)
+	(		/*mem_upper_sm_reconn*/
+	0 UPPERSM_RECONN_IDLE		
+	1 UPPERSM_RECONN_SDP_CONN		
+	2 UPPERSM_RECONN_SDP_CONN_WAIT		
+	3 UPPERSM_RECONN_SDP_CFG		
+	4 UPPERSM_RECONN_SDP_CFG_WAIT		
+	5 UPPERSM_RECONN_SS_HS
+	6 UPPERSM_RECONN_SS_HS_WAIT
+	7 UPPERSM_RECONN_SS_HF
+	8 UPPERSM_RECONN_SS_HF_WAIT
+	9 UPPERSM_RECONN_SS_AVTARG		
+	10 UPPERSM_RECONN_SS_AVTARG_WAIT		    
+	11 UPPERSM_RECONN_SS_OBEX		            
+	12 UPPERSM_RECONN_SS_OBEX_WAIT		      
+	13 UPPERSM_RECONN_SDP_DISCONN		        
+	14 UPPERSM_RECONN_SDP_DISCONN_WAIT      
+	15 UPPERSM_RECONN_HID_CTRL_CONN		      
+	16 UPPERSM_RECONN_HID_CTRL_CONN_WAIT		
+	17 UPPERSM_RECONN_HID_CTRL_CFG		      
+	18 UPPERSM_RECONN_HID_CTRL_CFG_WAIT     
+	19 UPPERSM_RECONN_HID_INT_CONN		      
+	20 UPPERSM_RECONN_HID_INT_CONN_WAIT		  
+	21 UPPERSM_RECONN_HID_INT_CFG		        
+	22 UPPERSM_RECONN_HID_INT_CFG_WAIT      
+	23 UPPERSM_RECONN_RFCOMM_CONN		        
+	24 UPPERSM_RECONN_RFCOMM_CONN_WAIT		  
+	25 UPPERSM_RECONN_RFCOMM_CFG		        
+	26 UPPERSM_RECONN_RFCOMM_CFG_WAIT       
+	27 UPPERSM_RECONN_RFCOMM_SABM		        
+	28 UPPERSM_RECONN_RFCOMM_SABM_WAIT		  
+	29 UPPERSM_RECONN_SPP_CMD_PN		        
+	30 UPPERSM_RECONN_SPP_CMD_PN_WAIT		    
+	31 UPPERSM_RECONN_SPP_SABM		          
+	32 UPPERSM_RECONN_SPP_SABM_WAIT		      
+	33 UPPERSM_RECONN_SPP_CMD_MS		        
+	34 UPPERSM_RECONN_SPP_CMD_MS_WAIT       
+	35 UPPERSM_RECONN_HF_CMD_PN		          
+	36 UPPERSM_RECONN_HF_CMD_PN_WAIT		    
+	37 UPPERSM_RECONN_HF_SABM		            
+	38 UPPERSM_RECONN_HF_SABM_WAIT		      
+	39 UPPERSM_RECONN_HF_CMD_MS		          
+	40 UPPERSM_RECONN_HF_CMD_MS_WAIT        
+	41 UPPERSM_RECONN_AVDTPs_CONN		        
+	42 UPPERSM_RECONN_AVDTPs_CONN_WAIT		  
+	43 UPPERSM_RECONN_AVDTPs_CFG		        
+	44 UPPERSM_RECONN_AVDTPs_CFG_WAIT       
+	45 UPPERSM_RECONN_AVDTPm_CONN		        
+	46 UPPERSM_RECONN_AVDTPm_CONN_WAIT		  
+	47 UPPERSM_RECONN_AVDTPm_CFG		        
+	48 UPPERSM_RECONN_AVDTPm_CFG_WAIT       
+	49 UPPERSM_RECONN_AVCTP_CONN		        
+	50 UPPERSM_RECONN_AVCTP_CONN_WAIT		    
+	51 UPPERSM_RECONN_AVCTP_CFG		          
+	52 UPPERSM_RECONN_AVCTP_CFG_WAIT		    
+	53 UPPERSM_RECONN_OBEX_CMD_PN		        
+	54 UPPERSM_RECONN_OBEX_CMD_PN_WAIT		  
+	55 UPPERSM_RECONN_OBEX_SABM		          
+	56 UPPERSM_RECONN_OBEX_SABM_WAIT		    
+	57 UPPERSM_RECONN_OBEX_CMD_MS		        
+	58 UPPERSM_RECONN_OBEX_CMD_MS_WAIT     
+	59 UPPERSM_RECONN_SS_SPP
+	60 UPPERSM_RECONN_SS_SPP_WAIT
+	)
+	(/*mem_UI_profile_supported*/
+	0 support_HID
+	1 support_A2DP
+	2 support_AVRCP
+	3 support_HF
+	4 support_HS
+	5 support_PBAP
+	6 support_SPP
+	)
+	/*mem_upper_sm_ss*/
+	(
+	0 UPPERSM_SS_HS
+	1 UPPERSM_SS_HF
+	2 UPPERSM_SS_AVTARG
+	3 UPPERSM_SS_OBEX
+	)
+
+	(
+	160 UI_HUNDRED_MILLISECOND_TIME
+	0XFF UI_BUTTON_GPIO_DISABLE
+	)
+	(
+	0x01 UI_BB_INCONNECT
+	0x10 UI_BB_DISCONNECT
+	)
+(
+0x00 UI_BUTTON_STATE_DOWN
+0x01 UI_BUTTON_STATE_UP
+)
+
+//mem_ipc_skip_continue_proc
+(
+	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
+
+)
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/utility.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/utility.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/utility.format	(working copy)
@@ -0,0 +1,385 @@
+/**
+*  @file:bt_utility_format.upper
+*  @author: lei.zhu
+*  utility header file. inlcude timer
+*  Copyright:  (C)Hanlynn Technology    
+*/
+
+memalloc(
+
+/*
+    temp parameter
+*/
+2 mem_hold_contr
+2 mem_hold_contw
+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
+
+1 mem_wakup_from_power_flag
+4 mem_saved_gpio_in
+
+0 mem_shutter_random_mac_data_temp
+0 mem_shutter_config_data_temp
+0 mem_le_adv_channel_map_temp
+0 mem_le_data_len_temp	//1byte
+0 mem_tx_fifo_map_temp
+0 mem_rpn_dlci		//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_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
+
+1 mem_usb_status
+1 mem_usb_fifo_empty
+1 mem_usb_read_len
+64 mem_usb_rxbuf
+2 mem_bufptr
+1 mem_remain
+20 mem_devicedesc
+2 mem_hidreportdesc_kb
+2 mem_hidreportdesc_m
+100 mem_confdesc
+5 mem_string0
+30 mem_string1
+64 mem_string2
+30 mem_string3
+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
+1 mem_usb_tx_interval
+
+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_setup
+64 mem_usb0_set_report_data
+64 mem_usb0_get_report_data
+1 mem_usb_state
+1 mem_usb_tx_wait
+1 mem_usb_tx_enable
+1 mem_usb_remote_wakeup
+1 mem_usb_clear_remote_wakeup
+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_usb0_data_ready_report
+1 mem_usb_tx_win_enable
+1 mem_usb_tx_mac_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_set_protocol_value
+1 mem_usb_set_protocol_status
+1 mem_usb_get_protocol_flag
+1 mem_usb_idle_flag
+1 mem_usb_idle_rate
+2 mem_usb_setup_bValue_temp
+1 mem_usb0_get_set_report
+1 mem_usb_ep1_data
+1 mem_usb_ep2_data
+1 mem_usb_clear_halt
+16 mem_usb_mouse_data
+16 mem_usb_kb_data
+16 mem_usb_kb_multikey
+8 mem_usb_kb_data_sta_data
+8 mem_usb_kb_data_last_data
+3 mem_usb_kb_multikey_sta_data
+3 mem_usb_kb_multikey_last_data
+1 mem_usb_kb_blank_data_enable
+1 mem_usb_kb_mul_blank_data_enable
+1 mem_usb_test_cnt
+0 mem_usb_clear_mem_end
+1 mem_usb_test_kb
+
+256 mem_rssi_noise_buffer
+256 mem_rssi_noise_dg_buffer
+256 mem_rssi_noise_ms_buffer
+256 mem_rssi_noise_kb_buffer
+32 mem_24g_common_temp
+
+2 mem_data_pre
+2 mem_data_current
+3 mem_data_sum
+1 mem_data_value
+1 mem_data_value_temp
+
+//zcode
+1 mem_zcode_temp_param0	//zcode num
+2 mem_zcode_temp_param1	//patch ram func addr
+2 mem_zcode_temp_param2	//patch ram func addr
+
+
+ifdef DEBUGLOG
+1   mem_debuglog_temp
+1   mem_debuglog_type
+1	mem_debuglog_datalen
+2	mem_debuglog_dataval
+2	mem_debuglog_datatype
+1	mem_debuglog_tail
+8	mem_debuglog_pdata
+endif
+
+)
+
+
+(
+/*mem_util_timer_flag0_7*/
+    0   UTIL_TIMER_0_USED
+    1   UTIL_TIMER_1_USED
+    2   UTIL_TIMER_2_USED
+    3   UTIL_TIMER_3_USED
+    4   UTIL_TIMER_4_USED
+    5   UTIL_TIMER_5_USED
+    6   UTIL_TIMER_6_USED
+    7   UTIL_TIMER_7_USED
+/*mem_util_timer_flag8_15*/
+    0   UTIL_TIMER_8_USED
+    1   UTIL_TIMER_9_USED
+    2   UTIL_TIMER_10_USED
+    3   UTIL_TIMER_11_USED
+    4   UTIL_TIMER_12_USED
+    5   UTIL_TIMER_13_USED
+    6   UTIL_TIMER_14_USED
+    7   UTIL_TIMER_15_USED
+)
+
+//util fifo param
+(
+
+8 UTIL_FIFO_LEN
+-1 UTIL_FIFO_OFFSET
+)
+
+
+(
+	0xAA DEBUGLOG_HEAD
+	0x00 DEBUGLOG_TYPE
+	0x04 DEBUGLOG_LEN
+	0xBB DEBUGLOG_TAIL
+)
+
+(
+	0x1000 DEBUGLOG_DTYPE_CALLBACK
+	0x1001 DEBUGLOG_DTYPE_EVENT
+	0x1002 DEBUGLOG_DTYPE_CMD
+	0x1003 DEBUGLOG_DTYPE_STATUS
+	0x1004 DEBUGLOG_DTYPE_MISC
+	0x1005 DEBUGLOG_DTYPE_CONN_SM
+	0x1006 DEBUGLOG_DTYPE_UPPER_SM
+	0x1007 DEBUGLOG_DTYPE_PARSE_LMP
+	0x1008 DEBUGLOG_DTYPE_SEND_LMP
+)
+
+//DEBUGLOG_DTYPE_CALLBACK
+(
+	0x0000 CALLBACK_24G_DATA
+	0x0001 CALLBACK_LE_PROCESS
+	0x0002 CALLBACK_BT_PROCESS
+	0x0003 CALLBACK_BEFORE_LPM
+	0x0004 CALLBACK_BB_EVENT_PROCESS
+	0x0005 CALLBACK_IDLE_PROCESS
+	0x0006 CALLBACK_BEFORE_HIBERNATE
+	0x0007 CALLBACK_ATT_WRITE
+	0x0008 CALLBACK_EVENT_TIMER
+)
+
+//DEBUGLOG_DTYPE_EVENT
+//(
+
+//)
+
+//DEBUGLOG_DTYPE_CMD
+//(
+
+//)
+
+//DEBUGLOG_DTYPE_STATUS
+(
+	0x0000 STATUS_CODE_WAKE
+	0x0001 STATUS_LPM_WAKE
+	0x0004 STATUS_24G_START 
+)
+//DEBUG_DTYPE_MISC
+(
+	0x0000 MISC_LE_RETRANSMIT
+	0x0001 MISC_LOST_MOUSEDATA
+	0x0002 MISC_TXPOWER_0
+	0x0003 MISC_TXPOWER_1
+	0x0004 MISC_TXPOWER_2
+	0x0006 MISC_PULL_MOUSEDATA
+	0x0007 MISC_PUSH_MOUSEDATA
+	0x0008 MISC_LE_RETRANSMIT_MD
+
+
+)
+
+0x1f00 mem_zcode_buff   
+
+
+256 ZCODE_BUFF_SIZE
+64 ZCODE_CODE_SIZE
+0xff ZCODE_FLAG
+
+0x00 ZCODE_00
+0x01 ZCODE_01
+0x02 ZCODE_02
+0x03 ZCODE_03
+0x04 ZCODE_04
+0x05 ZCODE_05
+0x06 ZCODE_06
+0x07 ZCODE_07
+0x10 ZCODE_10
+0x11 ZCODE_11
+0x12 ZCODE_12
+0x13 ZCODE_13
+0x14 ZCODE_14
+0x15 ZCODE_15
+0x16 ZCODE_16
+0x17 ZCODE_17
+0x20 ZCODE_20
+0x21 ZCODE_21
+0x22 ZCODE_22
+0x23 ZCODE_23
+0x24 ZCODE_24
+0x25 ZCODE_25
+0x26 ZCODE_26
+0x27 ZCODE_27 
+0x30 ZCODE_30
+0x31 ZCODE_31
+0x32 ZCODE_32
+0x33 ZCODE_33
+0x34 ZCODE_34
+0x35 ZCODE_35
+0x36 ZCODE_36
+0x37 ZCODE_37 
+0x40 ZCODE_40
+0x41 ZCODE_41
+0x42 ZCODE_42
+0x43 ZCODE_43
+0x44 ZCODE_44
+0x45 ZCODE_45
+0x46 ZCODE_46
+0x47 ZCODE_47
+0x50 ZCODE_50
+0x51 ZCODE_51
+0x52 ZCODE_52
+0x53 ZCODE_53
+0x54 ZCODE_54
+0x55 ZCODE_55
+0x56 ZCODE_56
+0x57 ZCODE_57
+0x60 ZCODE_60
+0x61 ZCODE_61
+0x62 ZCODE_62
+0x63 ZCODE_63
+0x64 ZCODE_64
+0x65 ZCODE_65
+0x66 ZCODE_66
+0x67 ZCODE_67
+0x70 ZCODE_70
+0x71 ZCODE_71
+0x72 ZCODE_72
+0x73 ZCODE_73
+0x74 ZCODE_74
+0x75 ZCODE_75
+0x76 ZCODE_76
+0x77 ZCODE_77
+0x80 ZCODE_80
+0x81 ZCODE_81
+0x82 ZCODE_82
+0x83 ZCODE_83
+0x84 ZCODE_84
+0x85 ZCODE_85
+0x86 ZCODE_86
+0x87 ZCODE_87
+0x90 ZCODE_90
+0x91 ZCODE_91
+0x92 ZCODE_92
+0x93 ZCODE_93
+0x94 ZCODE_94
+0x95 ZCODE_95
+0x96 ZCODE_96
+0x97 ZCODE_97
+0xA0 ZCODE_A0
+0xA1 ZCODE_A1
+0xA2 ZCODE_A2
+0xA3 ZCODE_A3
+0xA4 ZCODE_A4
+0xA5 ZCODE_A5
+0xA6 ZCODE_A6
+0xA7 ZCODE_A7
+0xB0 ZCODE_B0
+0xB1 ZCODE_B1
+0xB2 ZCODE_B2
+0xB3 ZCODE_B3
+0xB4 ZCODE_B4
+0xB5 ZCODE_B5
+0xB6 ZCODE_B6
+0xB7 ZCODE_B7
+0xC0 ZCODE_C0
+0xC1 ZCODE_C1
+0xC2 ZCODE_C2
+0xC3 ZCODE_C3
+0xC4 ZCODE_C4
+0xC5 ZCODE_C5
+0xC6 ZCODE_C6
+0xC7 ZCODE_C7
+0xd0 ZCODE_D0
+0xd1 ZCODE_D1
+0xe0 ZCODE_e0
+0xe1 ZCODE_e1
+0xe2 ZCODE_e2
+0xf0 ZCODE_F0
+0xf1 ZCODE_F1
+0xf2 ZCODE_F2
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/format/var.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/var.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/format/var.format	(working copy)
@@ -0,0 +1,442 @@
+/************************************************************************/
+/* RCS HEADER -- DO NOT ERASE                                           */
+/* $Author: Administrator $                                                     */
+/* $Id: bt_var.osi,v 1.1 2009-09-28 04:06:18 Administrator Exp $   */
+/* Orisil Technology                                                 */
+/************************************************************************/
+
+
+/* packet types */
+(
+  0x02 FHS_PACKET 
+  0x03 DM1_PACKET 
+  0x03 DM1_LMP_PACKET 
+  0x04 DH1_PACKET 
+  0x05 HV1_PACKET 
+  0x06 HV2_PACKET 
+  0x07 HV3_PACKET 
+  0x08 DV_PACKET 
+  0x09 AUX1_PACKET 
+  0x0a DM3_PACKET 
+  0x0b DH3_PACKET 
+  0x0e DM5_PACKET 
+  0x0f DH5_PACKET 
+)
+
+
+/* mem_lmp_respond */
+(
+  0 RESPOND_TO_ALL
+  1 PASS_EVERYTHING
+  2 PASS_ONLY_UNKNOWNS
+  3 RESPOND_TO_LMPS
+)
+/* SCO algorithm defines */
+(
+  0 ULAW
+  1 ALAW
+  2 CVSD
+)
+/* encryption modes */
+(
+  0 NO_ENCRYPTION
+  1 PT_PT_ENCRYPTION
+  2 PT_BROADCAST_ENCRYPTION
+)
+
+/* bits used in mem_lmp_state1 variable */
+(
+  0 LMP_STATE_DETACH
+  1 LMP_STATE_HOLD
+  2 LMP_STATE_SNIFF
+  3 LMP_STATE_PARK
+  4 LMP_STATE_WAIT_SCO_CREATE
+  5 LMP_STATE_WAIT_SCO_KILL
+  6 LMP_STATE_SCO3
+  7 LMP_STATE_WAIT_SCO_START
+)
+/* mem_lmp_state2 */
+(
+  0 LMP_WAIT_FOR_SNIFF_ACCEPT
+  1 LMP_WAIT_FOR_PARK_ACCEPT
+  2 LMP_SEND_UNPARK_ACCEPTED
+  3 LMP_SEND_ENCRYPTION_START
+  4 LMP_SEND_ENCRYPTION_STOP
+  5 MESSAGE_QUEUE
+  7 LMP_STATE_WAIT_BEACON
+)
+/* mem_lmp_state3 */
+(
+ 0 INQUIRY_STATE_CHECK
+ 1 HOST_DELAY_MESSAGE
+ 2 VARIABLE_DELAY
+ 3 TEST_MODE_START_LOOPBACK
+ 4 TEST_MODE_START_PATTERN
+ 5 PARSE_TEST_CONTROL_MESSAGE
+ 6 H_AUTH_SEND_COMB_KEY
+)
+/* mem_rx_status */
+(
+  0 FROM_MASTER
+)
+/* mem_ms_flag */
+(
+  0 MS_RECEIVE_SWITCH_REQ
+  1 MS_SEND_SETUP_COMPLATE
+)
+/* mem_conn_sm */
+(
+  0 CONN_SM_STANDBY
+  1 CONN_SM_WAIT_PAGE
+  2 CONN_SM_SEND_FEATURES
+  3 CONN_SM_WAIT_FEATURES_RES
+  4 CONN_SM_SEND_CONN_REQ
+  5 CONN_SM_WAIT_CONN_ACCEPT
+  6 CONN_SM_AUTH_PAIR
+  7 CONN_SM_AUTH_PAIR_WAIT
+  8 CONN_SM_WAIT_MUTAL_AUTH
+  9 CONN_SM_ENCRYPT
+  0xa CONN_SM_ENCRYPT_WAIT
+  0xb CONN_SM_ENCRYPT_WAIT_CLEAR
+  0xc CONN_SM_SEND_SETUP_COMPLETE
+  0xd CONN_SM_WAIT_SETUP_COMPLETE 
+  0xe CONN_SM_SEND_SWITCH
+  0xf CONN_SM_DETACH_DELAY
+  0x10 CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION
+  0x11 CONN_SM_DELAY_RESTART_CONNECTION
+  0x12 CONN_SM_SEND_VERSION
+  0X13 CONN_SM_WAIT_VERSION
+  0x14 CONN_SM_SEND_FEATURES_EXT
+  0x15 CONN_SM_WAIT_FEATURES_EXT
+  0x16 CONN_SM_PAIRING
+  0x17 CONN_SM_AUTH
+  0x18 CONN_SM_PAIRING_WAIT
+  0x19 CONN_SM_AUTH_WAIT
+  0x1a CONN_SM_DONE
+  0x1b CONN_SM_WAIT_DONE
+)
+
+/* btStateConn1 */
+(
+  0 CONN_STANDBY
+  1 CONN_MASTER_SEND_CONN_REQ
+  2 CONN_MASTER_WAIT_FOR_CONN_ACCEPTED
+  3 CONN_MASTER_AUTH
+  4 CONN_MASTER_WAIT_FOR_FEATURES
+  5 CONN_MASTER_WAIT_FOR_SETUP_COMPLETE
+  6 CONN_MASTER_WAIT_FOR_MAX_SLOT
+  7 CONN_SLAVE_CONN_REQUESTED
+  8 CONN_SLAVE_WAIT_FOR_SETUP_COMPLETE
+  9 CONN_SLAVE_AUTH
+  10 CONN_USING_HOST_OPCODE
+  11 CONN_SLAVE_AUTH_WAIT
+  12 CONN_SLAVE_ENCRYPT_WAIT
+)
+
+/* mem_lmp_conn_state */
+(
+  0 RECEIVED_CONN_REQ
+  1 SENT_CONN_REQ
+  2 RECEIVED_SETUP_COMPLETE
+  3 SENT_SETUP_COMPLETE
+  4 HOST_CONNECTION_MADE
+  6 INIT_COMPLETE
+  7 SNIFF_NEGOTIATE
+)
+/* btStateAuth1 */
+(
+  0 WAIT_FOR_KINIT
+  1 WAIT_FOR_LKA
+  2 WAIT_FOR_LKB
+  3 WAIT_FOR_SRES
+  4 EXAMINE_RECEIVED_SRES
+  5 SEND_AU_RAND
+  6 WAIT_FOR_KC
+  7 DELAYED_ENCRYPT_RESPONSE
+)
+/* btStateAuth2 */
+(
+  0 SENT_SRES
+  1 RECEIVED_IN_RAND
+  2 SENT_AU_RAND
+  3 AUTHENTICATION_FAILED
+  4 AUTHENTICATION_PASSED
+  5 STARTED_AUTH
+  6 SENT_COMB_KEY
+  7 SENT_IN_RAND
+)
+/* btStateAuth3 */
+(
+  0 RECEIVED_AU_RAND
+  1 RECEIVED_SRES
+  2 MUTUALLY_AUTHENTICATE
+)
+/* btStateHost */
+(
+  0 H_AUTH_STARTED
+  2 H_ENCRYPTION_MODE_REQ_PT
+  3 H_ENCRYPTION_KEY_SIZE
+  4 H_ENCRYPTION_START
+  5 H_ENCRYPTION_STOP
+  6 H_AUTH_SECOND_TRY
+)
+/* btStateEncrypt2 */
+(
+  0 RECEIVED_ENCRYPT_MODE_REQ_PT
+  1 RECEIVED_ENCRYPT_KEY_SIZE
+  2 RECEIVED_ENCRYPT_START
+  3 RECEIVED_ENCRYPT_STOP
+  4 STARTED_ENCRYPT_START
+)
+/* mem_ms_state */
+(
+  0x00 MS_STANDBY
+  0x11 M_MINIT_1
+  0x12 M_MINIT_2
+  0x20 M_SINIT_0
+  0x30 S_MINIT_0
+  0x31 S_MINIT_1
+  0x32 S_MINIT_2
+  0x41 S_SINIT_1
+  0x42 S_SINIT_2
+  0x43 S_SINIT_3
+)
+/* mem_test_mode */
+(
+  0 TEST_MODE_ALLOWED
+  1 TEST_MODE_ACTIVE
+)
+/* values for mem_tester_emulate */
+(
+  0x00 NO_TEST_MODE
+  0x00 CONTINUOUS_TRANSMIT
+  0x10 TRANSMIT_TEST
+  0x08 LOOPBACK
+)
+
+/* mem_tx_misc */
+(
+  1 SEND_TX_ADDR
+)
+/* BBHWREG_page_stat */
+(
+  5 PAGE_MODE_END
+)
+/* host_return_parameters_status codes */
+(
+  0x00 HOST_RETURN_SUCCESS
+  0x01 HOST_RETURN_SLAVE_CANT_ISSUE
+  0x02 HOST_RETURN_NO_CONNECTION
+  0x04 HOST_RETURN_PAGE_TIMEOUT
+  0x05 HOST_RETURN_INQUIRY_TIMEOUT
+  0x08 HOST_RETURN_CONNECTION_TIMEOUT
+  0x09 HOST_RETURN_MAX_NUM_CONNECTIONS
+  0x0a HOST_RETURN_MAX_NUM_SCO
+  0x0b HOST_RETURN_MAX_NUM_ACL
+  0x0c HOST_RETURN_SECURITY_REASONS
+  0x10 HOST_RETURN_HOST_TIMEOUT
+  0x11 HOST_RETURN_UNSUPPORTED_FEATURE_PARAMETER
+  0x13 HOST_RETURN_OTHER_END_USER
+  0x14 HOST_RETURN_OTHER_END_LOW_RESOURCE
+  0x15 HOST_RETURN_OTHER_END_POWER_OFF
+  0x16 HOST_RETURN_LOCAL_HOST
+  0x18 HOST_RETURN_PAIRING_NOT_ALLOWED
+  0x19 HOST_RETURN_UNKNOWN_PDU
+  0x1a HOST_RETURN_UNSUPPORTED_REMOTE_FEATURE
+  0x1d HOST_RETURN_SCO_AIR_MODE_REJECTED
+  0x20 HOST_RETURN_UNSUPPORTED_LMP_VALUE
+  0x21 HOST_RETURN_AUTHENTICATION_FAILURE
+  0x22 HOST_RETURN_CHANGED_EXISTING_SCO
+  0x23 HOST_RETURN_HOST_REJECTED
+  0x24 HOST_RETURN_UNSPECIFIED_ERROR
+  0x25 HOST_RESET
+  0x26 HOST_RETURN_BAD_HANDLE
+
+  0x00 HOST_RETURN_ACCEPT_COMMAND
+  0x01 HOST_RETURN_REJECT_COMMAND
+)
+/* host_present */
+(
+  0 HOST_IS_PRESENT
+  1 BCI_IS_PRESENT
+  2 DONT_INIT_RADIO
+)
+/* mem_master_state */
+(
+  0 MASTER_STATE_STANDBY
+  1 MASTER_INQUIRY
+)
+/* misc */
+(
+  92 SECOND_SWITCH_REQ
+  93 SLAVE_DELAY_DETACH
+  94 MASTER_DELAY_DETACH
+  95 UNSNIFF_DELAY_DETACH
+  0 WE_STARTED_AS_MASTER
+  1 WE_STARTED_AS_SLAVE
+)
+/* mem_host_commands */
+(
+  0x01 HOST_INQUIRY
+  0x02 HOST_INQUIRY_CANCEL
+  0x03 HOST_CREATE_CONNECTION
+  0x04 HOST_DISCONNECT_CONNECTION
+  0x05 HOST_ADD_SCO_REQUEST
+  0x06 HOST_REMOTE_NAME_REQUEST
+  0x07 HOST_WRITE_SUPPORTED_FEATURES
+  0x08 HOST_SET_TX_LEVEL
+  0x09 HOST_SET_RX_LEVEL
+  0x0a HOST_SNIFF_REQUEST
+  0x0b HOST_UNSNIFF_REQUEST
+  0x0c HOST_WRITE_LINK_SUPERVISION_TIMEOUT
+  0x0e HOST_WRITE_SCAN_ENABLE
+  0x0f HOST_READ_AUDIO_QUALITY
+  0x10 HOST_ENABLE_DEVICE_UNDER_TEST
+  0x14 HOST_BUTTON_CONFIGURE
+  0x15 HOST_SET_LOW_BATTERY_LEVEL
+  0x16 HOST_WRITE_LOCAL_NAME
+  0x17 HOST_WRITE_LOCAL_PIN
+  0x18 HOST_KILL_SCO_REQUEST
+  0x19 HOST_QOS_REQ
+
+  0x1a HOST_FEATURES_REQUEST
+  0x1b HOST_VERSION_REQUEST
+  0x1c HOST_TIMING_REQUEST
+  0x1d HOST_CLK_OFFSET_REQUEST
+  0x1e HOST_AUTHENTICATE
+  0x1f HOST_START_ENCRYPTION
+  0x20 HOST_STOP_ENCRYPTION
+  0x21 HOST_HOLD_REQUEST
+  0x22 HOST_HOLD_FORCE
+  0x23 HOST_PARK_REQUEST
+  0x24 HOST_MOD_BEACON
+  0x25 HOST_SET_BROADCAST_SCAN_WINDOW
+  0x26 HOST_UNPARK_PM_REQUEST
+  0x27 HOST_UNPARK_BD_REQUEST
+  0x28 HOST_SLAVE_REQUEST_UNPARK
+  0x29 HOST_DECREASE_POWER_REQUEST
+  0x2a HOST_INCREASE_POWER_REQUEST
+  0x2b HOST_SEND_PREFERRED_RATE
+  0x2c HOST_MAX_SLOT_REQ
+  0x2d HOST_MAX_SLOT_FORCE
+  0x2e HOST_PAGE_MODE_REQUEST
+  0x2f HOST_PAGE_SCAN_MODE_REQUEST
+  0x30 HOST_MASTER_SLAVE_SWITCH
+  0x31 HOST_SEND_AUTO_RATE
+  0x32 HOST_PAGE_CANCEL
+  0x33 HOST_CHANGE_LINK_KEY
+  0x34 HOST_RADIO_READ
+  0x35 HOST_RADIO_WRITE
+  0x36 HOST_REMOTE_SLAVE_INIT_UNPARK_REQUESTED
+
+  0x40 HOST_REMOTE_CONNECTION_REQUESTED
+  0x41 HOST_REMOTE_DETACH
+  0x42 HOST_REMOTE_SCO_CREATE_REQUESTED
+  0x43 HOST_REMOTE_SCO_KILL_REQUESTED
+  0x44 HOST_REMOTE_PARK_REQUESTED
+  0x45 HOST_REMOTE_UNPARK_REQUESTED
+  0x46 HOST_REMOTE_SNIFF_REQUESTED
+  0x47 HOST_REMOTE_UNSNIFF_REQUESTED
+  0x48 HOST_REMOTE_HOLD_REQUESTED
+  0x49 HOST_REMOTE_AUTHENTICATION
+  0x4a HOST_REMOTE_START_ENCRYPTION_REQUESTED
+  0x4b HOST_REMOTE_STOP_ENCRYPTION_REQUESTED
+  0x4c HOST_MODE_CHANGE_EVENT
+  0x4d HOST_REMOTE_TEST_ACTIVATE
+  0x4e HOST_REMOTE_TEST_CONTROL
+  0x4f HOST_REMOTE_TIMING_REQUEST
+)
+/* BCI interface (not used if not compiled in ) */
+(
+  0x01 BCI_INQUIRY
+  0x02 BCI_INQUIRY_CANCEL
+  0x03 BCI_CREATE_CONNECTION
+  0x04 BCI_DISCONNECT
+  0x05 BCI_ADD_SCO_CONNECTION
+  0x06 BCI_REMOTE_NAME_REQUEST
+  0x07 BCI_WRITE_SUPPORTED_FEATURES
+  0x08 BCI_SET_TX_POWER_LEVEL
+  0x09 BCI_SET_RX_POWER_LEVEL
+  0x0a BCI_SNIFF_MODE
+  0x0b BCI_EXIT_SNIFF_MODE
+  0x0c BCI_WRITE_LINK_SUPERVISION_TIMEOUT
+  0x0d BCI_WRITE_PAGE_TIMEOUT
+  0x0e BCI_WRITE_SCAN_ENABLE
+  0x0f BCI_GET_AUDIO_QUALITY
+  0x10 BCI_ENABLE_DEVICE_UNDER_TEST
+  0x11 BCI_SEND_DATA
+  0x12 BCI_REGISTER_SERVICE_RECORD
+  0x13 BCI_SERVICE_SEARCH_ATTRIB_REQ
+  0x14 BCI_BUTTON_CONFIGURE
+  0x15 BCI_SET_LOW_BATTERY_LEVEL
+  0x16 BCI_WRITE_LOCAL_NAME
+  0x17 BCI_WRITE_LOCAL_PIN
+  0x18 BCI_REMOVE_SCO_CONNECTION
+  0x19 BCI_QUALITY_OF_SERVICE
+  0x40 BCI_REMOTE_CONNECTION_REQUEST
+  0x41 BCI_REMOTE_DETACH
+  0x42 BCI_REMOTE_ADD_SCO_REQUEST
+  0x43 BCI_REMOTE_REMOVE_SCO_REQUEST
+  0x44 BCI_REMOTE_PARK_REQUEST
+  0x45 BCI_REMOTE_UNPARK_REQUEST
+  0x46 BCI_REMOTE_SNIFF_REQUEST
+  0x47 BCI_REMOTE_UNSNIFF_REQUEST
+  0x48 BCI_REMOTE_HOLD_REQUEST
+  0x49 BCI_REMOTE_AUTHENTICATION_PAIRING_REQUEST
+  0x4a BCI_REMOTE_START_ENCRYPTION_REQUEST
+  0x4b BCI_REMOTE_STOP_ENCRYPTION_REQUEST
+  0x4c BCI_MODE_CHANGE_EVENT
+)
+/* mode changes */
+(
+  0 MODE_CHANGE_ACTIVE
+  1 MODE_CHANGE_SNIFFING
+  2 MODE_CHANGE_PARKED
+  3 MODE_CHANGE_HOLDING
+  4 MODE_CHANGE_SCO_ADDED
+  5 MODE_CHANGE_SCO_REMOVED
+  6 MODE_CHANGE_ACL_CONNECTION
+  7 MODE_CHANGE_DISCONNECT
+  8 MODE_CHANGE_SCO_CHANGED
+  9 MODE_CHANGE_ENCRYPTING
+  10 MODE_CHANGE_NOT_ENCRYPTING
+  11 MODE_CHANGE_BUTTON_UP
+  12 MODE_CHANGE_BUTTON_DOWN
+  13 MODE_CHANGE_BATTERY_LOW
+  14 MODE_CHANGE_RESET
+  15 MODE_CHANGE_INQUIRY_CANCELED_RMTCMD
+  16 MODE_ACTIVE_MSSWITCH_PASSED
+  17 MODE_ACTIVE_MSSWITCH_FAILED
+)
+/* mem_battery - low nibble is level information, upper nibble is status info */
+(
+  6 BATTERY_CHECK_LEVEL
+  7 BATTERY_SENT_STATUS
+)
+/* mem_radio_version */
+(
+  0x02 RADIO_2001
+  0x12 RADIO_2002
+  0x32 RADIO_2002_DDM
+  0x42 RADIO_1008A1
+  0x52 RADIO_1018A0
+)
+/* mem_slave_initiated_conn */
+(
+  0 SLAVE_INIT_AUTHENTICATION
+  1 SLAVE_INIT_ENCRYPTION
+  2 SLAVE_INIT_MASTER_SLAVE_SWITCH
+)
+/* connection_options */
+(
+  0 CONNECTION_AUTH
+  1 CONNECTION_ENCRYPT
+  2 CONNECTION_SWITCH
+  3 CONNECTION_ACL
+  4 CONNECTION_FEATURE_EXT
+)
+/* mem_debug_config */
+(
+  7 AA_INSERTION
+)
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_format.meta
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_format.meta	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_format.meta	(working copy)
@@ -0,0 +1,9449 @@
+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
+0x4090 mem_current_amaddr
+0x4091 mem_lpm_mode
+0x4092 mem_device_option
+0x4093 mem_scan_mode
+0x4094 mem_last_clkn
+0x4098 mem_features
+0x40a0 mem_lap
+0x40a3 mem_uap
+0x40a4 mem_nap
+0x40a6 mem_npage
+0x40a7 mem_glap
+0x40aa mem_class
+0x40ad mem_iscan_window
+0x40af mem_iscan_interval
+0x40b1 mem_pscan_window
+0x40b3 mem_pscan_interval
+0x40b5 mem_page_interval
+0x40b7 mem_page_window
+0x40b9 mem_page_to
+0x40bb mem_inq_window
+0x40bd mem_fcomp_mul
+0x40be mem_fcomp_div
+0x40bf mem_rx_window_init
+0x40c1 mem_rx_window_sniff
+0x40c3 mem_rf_init_ptr
+0x40c5 mem_last_type
+0x40c6 mem_last_type_esco
+0x40c7 mem_last_type_saved
+0x40c8 mem_retransmission_cnt
+0x40ca mem_next_btclk
+0x40ce mem_rf_rccal
+0x40cf mem_handle_num
+0x40d0 mem_max_slot
+0x40d1 mem_eir_enable
+0x40d2 mem_afh_instant
+0x40d6 mem_afh_error_total
+0x40d8 mem_afh_cfg
+0x40d9 mem_afh_new_mod
+0x40da mem_afh_map_lo
+0x40df mem_afh_map_hi
+0x40e4 mem_afh_used
+0x40e5 mem_afh_index
+0x40e7 mem_afh_map_new
+0x40f2 mem_afh_map
+0x4142 mem_afh_timer
+0x4146 mem_afh_classify_channel_map
+0x4150 mem_chip_functions
+0x4152 mem_lpm_wake_lock
+0x4154 mem_lpm_interval
+0x4156 mem_lpm_overhead
+0x4157 mem_lpm_hibernate_switch
+0x4158 mem_esco_addr
+0x4159 mem_sniff_unint_lost
+0x415a mem_ptt
+0x415b mem_sleep_counter//should be 0x41fc in REVC
+0x415f mem_sleep_counter_all
+0x4163 mem_sleep_clkn
+0x4169 mem_sniff_rcv
+0x416c mem_sniff_lost
+0x416f mem_clks_per_lpo
+0x4172 mem_lpm_mult
+0x4173 mem_lpm_mult_timeout
+0x4174 mem_lpm_mult_cnt
+0x4175 mem_lpm_config
+0x4178 mem_lpm_xtalcnt
+0x4179 mem_lpm_buckcnt
+0x417a mem_lpm_ldocnt
+0x417b mem_lpm_isogate
+0x417c mem_lpm_isogate_final
+0x417d mem_saved_gpio// should be 0x421e in REVC
+0x418d mem_saved_gsel
+0x4190 mem_saved_mark
+0x4198 mem_saved_spidctrl
+0x4199 mem_patch_ptr
+0x419b mem_patch_len
+0x419d mem_timers
+0x41bd mem_link_key_exists
+0x41be mem_link_key
+0x41ce mem_hci_cmd
+0x41cf mem_hci_conn_handle
+0x41d0 mem_hci_plap
+0x41d3 mem_hci_puap
+0x41d4 mem_hci_pnap
+0x41d6 mem_uartd_rxitems_got_data
+0x41d7 mem_uartd_rxitems_threshold
+0x41d8 mem_uartd_rx_timeout
+0x41da mem_loadcode_times
+0x41db mem_tx_lch
+0x41dc mem_tx_len
+0x41de mem_tx_power
+0x41df mem_context_number
+0x41e0 mem_250k_freq_enable
+0x41e1 mem_rf_init_data
+0x41e2 mem_app_handshake_flag
+0x41e3 mem_sniff_param_interval
+0x41e5 mem_sniff_param_attempt
+0x41e7 mem_sniff_param_timeout
+0x41e9 mem_cb_check_wakelock
+0x41eb mem_cb_before_hibernate
+0x41ed mem_cb_before_lpm
+0x41ef mem_cb_le_process
+0x41f1 mem_cb_bt_process
+0x41f3 mem_cb_idle_process
+0x41f5 mem_cb_bb_event_process
+0x41f7 mem_cb_discovry_timeout
+0x41f9 mem_cb_att_write
+0x41fb mem_cb_ble_transmit
+0x41fd mem_cb_event_timer
+0x41ff mem_cb_bt_set_mult
+0x4201 mem_cb_spi_flash_write_complate
+0x4203 mem_eeprom_base
+0x4205 mem_unsniff2sniff_timer_count
+0x4206 mem_wake_up_delay_timer
+0x4207 mem_app_connection_options
+0x4208 mem_app_disconn_reason
+0x420a mem_app_disconn_reason_flag
+0x420c mem_lpm_delay_after_sniff
+0x4210 mem_xrecord_mode
+0x4211 mem_eeprom_block_size
+0x4212 mem_spi_init_clk
+0x4213 mem_spi_init_delay_time
+0x4214 mem_spi_ncs_gpio
+0x4215 mem_nv_data_ptr
+0x4217 mem_nv_data_number
+0x4218 mem_queue_ptr
+0x421a mem_ui_led_struct_num
+0x421b mem_ui_led_struct_ptr
+0x421d mem_0_5_adc_io_data
+0x421f mem_1v_adc_hvin_data
+0x4221 mem_2v_adc_vinlpm_data
+0x4223 mem_1v_adc_io_data
+0x4225 mem_5v_adc_hvin_data
+0x4227 mem_3v_adc_vinlpm_data
+0x4229 mem_otp_adc_flag
+0x422b mem_reference_voltage
+0x422d mem_adc_config_flag
+0x422e mem_adc_channel
+0x422f mem_adc_current_value
+0x4231 mem_adc_power_flag//bit0:low power falg ; bit1:no power flag
+0x4232 mem_spi_write_addr
+0x4235 mem_spi_write_ptr
+0x4237 mem_spi_write_len
+0x4239 mem_spi_write_flash_sm
+0x423a mem_eeprom_wp_gpio
+0x423b mem_kscan_ptr
+0x423d mem_key_num_ptr
+0x423d mem_keyscan_ptr
+0x423f mem_power_param_ptr
+0x4241 mem_power_on_flag//forbid to move this variable
+0x4241 mem_24g_head_ptr
+0x4243 mem_baud
+0x4245 mem_hci_lt_rx_state
+0x4246 mem_l2cap_xmem_start
+0x4246 mem_l2cap_tx_multi_offset//0 means single packet
+0x4248 mem_sdp_remote_cid
+0x424a mem_rfcomm_remote_cid
+0x424c mem_hid_ctrl_remote_cid
+0x424e mem_hid_int_remote_cid
+0x4250 mem_sdp_state
+0x4251 mem_rfcomm_state
+0x4252 mem_hid_control_state
+0x4253 mem_hid_interrupt_state
+0x4254 mem_spp_state
+0x4255 mem_ML2CAP_comm_id
+0x4256 mem_used_map
+0x4257 mem_tx_fifo0
+0x4257 mem_tx_fifo0_map
+0x4258 mem_tx_fifo0_ptr
+0x425a mem_tx_fifo1
+0x425a mem_tx_fifo1_map
+0x425b mem_tx_fifo1_ptr
+0x425d mem_tx_fifo2
+0x425d mem_tx_fifo2_map
+0x425e mem_tx_fifo2_ptr
+0x4260 mem_tx_fifo3
+0x4260 mem_tx_fifo3_map
+0x4261 mem_tx_fifo3_ptr
+0x4263 mem_tx_fifo_end
+0x4263 mem_l2cap_lpm_txbuf
+0x4363 mem_l2cap_flow_ctrl_flag
+0x4364 mem_l2cap_pending_item
+0x4365 mem_l2cap_xmem_end
+0x4365 mem_le_dsniff
+0x4367 mem_le_conn_interval
+0x4369 mem_le_scan_enable
+0x436a mem_le_scan_interval
+0x436c mem_le_scan_window
+0x436e mem_le_adv_enable
+0x436f mem_le_adv_data_len
+0x4370 mem_le_adv_data
+0x438f mem_le_scan_data_len
+0x4390 mem_le_scan_data
+0x43af mem_le_name_len
+0x43b0 mem_le_name
+0x43ce mem_le_new_map
+0x43d3 mem_le_new_param
+0x43d3 mem_le_new_transmitwindowsize
+0x43d4 mem_le_new_transmitwindowoffset
+0x43d6 mem_le_new_conninterval
+0x43d8 mem_le_new_connslavelatency
+0x43da mem_le_new_connsupervisiontimeout
+0x43dc mem_le_txheader
+0x43dd mem_le_txlen
+0x43de mem_le_txpayload
+0x43e0 mem_le_txcid
+0x43e2 mem_le_l2cap
+0x43e3 mem_le_l2cap_response
+0x43e4 mem_le_txbdy
+0x4403 mem_le_pcnt_tx
+0x4408 mem_le_pcnt_rx
+0x440d mem_le_last_mic
+0x4411 mem_le_ivm
+0x4415 mem_le_ivs
+0x4419 mem_le_ltk
+0x4429 mem_ltk_exists
+0x442a mem_le_rconfirm
+0x443a mem_le_srand
+0x444a mem_le_iat
+0x444b mem_le_rat
+0x444c mem_le_preq
+0x444d mem_le_preq_iocap
+0x444e mem_le_preq_oob
+0x444f mem_le_preq_auth
+0x4450 mem_le_preq_max_keysize
+0x4451 mem_le_preq_init_key_distribution
+0x4452 mem_le_preq_resp_key_distribution
+0x4453 mem_le_pres
+0x4454 mem_le_pres_iocap
+0x4455 mem_le_pres_oob
+0x4456 mem_le_pres_auth
+0x4457 mem_le_pres_max_keysize
+0x4458 mem_le_pres_init_key_distribution
+0x4459 mem_le_pres_resp_key_distribution
+0x445a mem_le_search_handle_start
+0x445c mem_le_search_handle_end
+0x445e mem_le_att_offset
+0x445e mem_le_search_att_type_length
+0x445f mem_le_search_att_type
+0x446f mem_le_notify_handle
+0x4471 mem_le_search_uuid_length
+0x4472 mem_le_search_uuid
+0x4482 mem_le_adv_param
+0x4482 mem_le_adv_interval
+0x4484 mem_le_adv_type
+0x4485 mem_le_adv_own_addr_type
+0x4486 mem_le_adv_direct_addr_type
+0x4487 mem_le_adv_direct_addr
+0x448d mem_le_adv_channel_map
+0x448e mem_le_conn_param
+0x448e mem_le_conn_peer_addr_type
+0x448f mem_le_conn_peer_addr
+0x4495 mem_le_conn_own_addr_type
+0x4496 mem_le_interval_min
+0x4498 mem_le_interval_max
+0x449a mem_le_latency
+0x449c mem_le_timeout
+0x449e mem_le_scan_params
+0x449e mem_le_scan_type
+0x449f mem_le_scan_own_addr_type
+0x44a0 mem_le_lap
+0x44a3 mem_le_uap
+0x44a4 mem_le_nap
+0x44a6 mem_le_local_mtu
+0x44a8 mem_le_remote_mtu
+0x44aa mem_le_skdm
+0x44b2 mem_le_skds
+0x44ba mem_le_init_superto
+0x44bc mem_ui_le_uuid_table
+0x44be mem_le_secure_connect_enable
+0x44bf mem_le_secure_connect_flag
+0x44c0 mem_le_sc_calc
+0x44c1 mem_le_secure_connect_state
+0x44c2 mem_le_sc_confirm_gkey_flag
+0x44c3 mem_le_sc_local_key_invalid
+0x44c4 mem_le_pairing_state
+0x44c5 mem_le_enc_state
+0x44c6 mem_le_pairing_mode
+0x44c7 mem_le_tk
+0x44cb mem_le_ediv
+0x44cd mem_le_rand
+0x44d5 mem_le_irk
+0x44e5 mem_le_transmit_window
+0x44e9 mem_le_configuration
+0x44ea mem_le_fixed_ltk
+0x44fa mem_le_pairing_handle
+0x44fc mem_le_l2cap_size
+0x44fe mem_le_packet_len_recved
+0x44ff mem_le_tx_buff_used
+0x4500 mem_le_tx_ptr0
+0x4502 mem_le_tx_ptr1
+0x4504 mem_le_tx_ptr2
+0x4506 mem_le_tx_ptr3
+0x4508 mem_le_signaling_identifier
+0x4509 mem_le_l2cap_signaling_conn_param_update_rsp_result
+0x450b mem_le_packet_size
+0x450c mem_le_packet_llid
+0x450d mem_le_payload_ptr
+0x450f mem_le_md_count
+0x4510 mem_lmp_version
+0x4513 mem_lmp_subversion
+0x4515 mem_local_name_length
+0x4516 mem_local_name
+0x4519 mem_local_name2
+0x4559 mem_local_name_end
+0x455a mem_unsniff2sniff_timer
+0x455b mem_switch_flag
+0x455c mem_classic_bt_flag
+0x455d mem_pn_dlci
+0x455e mem_pn_max_frame_size
+0x4560 memFCStemp1
+0x4561 memFCStemp2
+0x4562 memFCStemp3
+0x4563 mem_rfcomm_initiator
+0x4564 mem_remote_spp_channel
+0x4565 mem_HIUfcs_SPP
+0x4566 mem_HIUfcs_SPP_WCredits
+0x4567 mem_rfcomm_send_more_pkt
+0x4568 mem_remote_credits
+0x4569 mem_credit_given
+0x456a mem_ms_channel
+0x456b mem_credit_flag
+0x456c mem_rfcomm_max_frame_size
+0x456e mem_rfcomm_credit_init_data
+0x456f mem_cb_receive_spp_data
+0x4571 mem_nl_rx_data_src
+0x4573 mem_nl_rx_len_all
+0x4575 mem_ui_uuid_table
+0x4577 mem_all_uuid_16bits
+0x458d mem_all_uuid_128bits
+0x45af mem_sdp_l2capch_ptr
+0x45b1 mem_sp_local_key_invalid
+0x45b2 mem_le_private_key_256
+0x45d2 mem_le_pubkey_local_x_256
+0x45f2 mem_le_pubkey_local_y_256
+0x4612 mem_sp_private_key
+0x462a mem_sp_pubkey_local
+0x462a mem_sp_pubkey_local_x
+0x4642 mem_sp_pubkey_local_x_end
+0x4642 mem_sp_pubkey_local_y
+0x465a mem_ssp_enable
+0x465b mem_sp_iocap_local
+0x465e mem_sp_iocap_remote
+0x4661 mem_flag_mode_ssp_pin
+0x4662 mem_ssp_mode_flag
+0x4663 mem_authentication_passkey_times
+0x4664 mem_passkey_1bit
+0x4665 mem_flag_pairing_state
+0x4666 mem_ipc_lock_bt
+0x4667 mem_ipc_lock_c51
+0x4668 mem_ipc_fifo_bt2c51
+0x4670 mem_ipc_fifo_c512bt
+0x4678 mem_ui_button_timer
+0x4679 mem_ui_button_last_state
+0x467a mem_ui_timer_last_btclk
+0x467e mem_discovery_timeout_timer_count
+0x4680 mem_hid_handshake_timer_count
+0x4681 memui_reconnect_mode
+0x4682 mem_ui_state_map
+0x4684 mem_ui_profile_supported
+0x4685 mem_ui_button_timeout
+0x4686 mem_ui_button_gpio
+0x4687 mem_discovery_timeout
+0x4689 mem_pin_length
+0x468a mem_pin
+0x469a mem_antl_lpm_interval
+0x469c mem_antl_adv_interval
+0x469e mem_antl_slow_adv_lpm_interval
+0x46a0 mem_antl_slow_adv_adv_interval
+0x46a2 mem_antl_led_style
+0x46a2 mem_antl_led_type
+0x46a3 mem_antl_led_blink_count
+0x46a4 mem_antl_led_gpio
+0x46a5 mem_antl_led_on_time
+0x46a7 mem_antl_led_off_time
+0x46a9 mem_antl_led_cb_on
+0x46ab mem_antl_led_cb_off
+0x46ad mem_antl_buzzer_style
+0x46ad mem_antl_buzzer_type
+0x46ae mem_antl_buzzer_blink_count
+0x46af mem_antl_buzzer_gpio
+0x46b0 mem_antl_buzzer_on_time
+0x46b2 mem_antl_buzzer_off_time
+0x46b4 mem_antl_buzzer_cb_on
+0x46b6 mem_antl_buzzer_cb_off
+0x46b8 mem_antl_fast_adv_led_style
+0x46b8 mem_antl_fast_adv_led_type
+0x46b9 mem_antl_fast_adv_led_blink_count
+0x46ba mem_antl_fast_adv_led_gpio
+0x46bb mem_antl_fast_adv_led_on_time
+0x46bd mem_antl_fast_adv_led_off_time
+0x46bf mem_antl_slow_adv_led_style
+0x46bf mem_antl_slow_adv_led_type
+0x46c0 mem_antl_slow_adv_led_blink_count
+0x46c1 mem_antl_slow_adv_led_gpio
+0x46c2 mem_antl_slow_adv_led_on_time
+0x46c4 mem_antl_slow_adv_led_off_time
+0x46c6 mem_antl_power_starting_led_style
+0x46c6 mem_antl_power_starting_led_type
+0x46c7 mem_antl_power_starting_led_blink_count
+0x46c8 mem_antl_power_starting_led_gpio
+0x46c9 mem_antl_power_starting_led_on_time
+0x46cb mem_antl_power_starting_led_off_time
+0x46cd mem_antl_power_starting_buzzer_style
+0x46d4 mem_antl_power_off_led_style
+0x46d4 mem_antl_power_off_led_type
+0x46d5 mem_antl_power_off_led_link_count
+0x46d6 mem_antl_power_off_led_gpio
+0x46d7 mem_antl_power_off_led_on_time
+0x46d9 mem_antl_power_off_led_off_time
+0x46db mem_antl_power_off_buzzer_style
+0x46db mem_antl_power_off_buzzer_type
+0x46dc mem_antl_power_off_buzzer_link_count
+0x46dd mem_antl_power_off_buzzer_gpio
+0x46de mem_antl_power_off_buzzer_on_time
+0x46e0 mem_antl_power_off_buzzer_off_time
+0x46e2 mem_antl_alert_led_stlye
+0x46e9 mem_antl_alert_buzzer_stlye
+0x46e9 mem_antl_alert_buzzer_type
+0x46ea mem_antl_alert_buzzer_blink_count
+0x46eb mem_antl_alert_buzzer_gpio
+0x46ec mem_antl_alert_buzzer_on_time
+0x46ee mem_antl_alert_buzzer_off_time
+0x46f0 mem_antl_key_led_style
+0x46f0 mem_antl_key_led_type
+0x46f1 mem_antl_key_led_blink_count
+0x46f2 mem_antl_key_led_gpio
+0x46f3 mem_antl_key_led_on_time
+0x46f5 mem_antl_key_led_off_time
+0x46f7 mem_antl_key_buzzer_style
+0x46fe mem_antl_queue_width
+0x46ff mem_antl_queue_depth
+0x4700 mem_antl_queue_curr_num
+0x4701 mem_antl_queue_read_ptr
+0x4702 mem_antl_queue_write_ptr
+0x4703 mem_antl_queue_buff
+0x4753 mem_antl_key_scan_enable
+0x4754 mem_antl_led_num
+0x4755 mem_antl_led_gpio_map
+0x4759 mem_antl_power_param
+0x4759 mem_antl_power_state
+0x475a mem_antl_power_timer
+0x475b mem_antl_power_off_timeout
+0x475c mem_antl_power_starting_timeout
+0x475d mem_antl_power_off_cb
+0x475f mem_antl_power_starting_cb
+0x4761 mem_antl_power_standby_cb
+0x4763 mem_event_button_up_cb
+0x4765 mem_antl_key_num
+0x4766 mem_cb_antl_key
+0x4768 mem_antl_key_conf0
+0x476c mem_antl_key0_press
+0x477b mem_antl_key0_release
+0x478a mem_antl_conn_updata_procedure_state
+0x478b mem_client_characteristic_configuration_descriptor
+0x478d mem_adc_timer
+0x478f mem_antl_conn_update_timer
+0x4790 mem_antl_send_updata_le_param_timer
+0x4791 mem_antl_le_sleep_timer
+0x4793 mem_antl_fast_adv_timer
+0x4795 mem_antl_fast_adv_timeout
+0x4797 mem_antl_le_sleep_timeout
+0x4799 mem_double_click_timer
+0x479a mem_butten_click_cnt
+0x479b mem_antl_led_state
+0x479c mem_antl_buzzer_state
+0x479d mem_antl_key_state
+0x479e mem_antl_lost_mode
+0x479f mem_alarm_config
+0x47a0 mem_alarm_config_notfy_cnt
+0x47a1 mem_buzzer_pwm_conf
+0x47a7 mem_adc_timeout
+0x47a9 mem_voltage_remain_percent
+0x47aa mem_battery_calculate_set
+0x47aa mem_battery_full_voltage
+0x47ac mem_battery_empty_voltage
+0x47ae mem_battery_low_voltage
+0x47b0 mem_battery_current_voltage
+0x47b2 mem_rx_window_sniff_inc
+0x47b4 mem_interval_increment
+0x47b6 mem_antl_le_interval_min
+0x47b8 mem_antl_le_interval_max
+0x47ba mem_antl_le_latency
+0x47bc mem_antl_le_timeout
+0x47be mem_antl_le_unnormal_interval_min
+0x47c0 mem_antl_le_unnormal_interval_max
+0x47c2 mem_antl_le_unnormal_latency
+0x47c4 mem_antl_le_unnormal_timeout
+0x47c6 mem_AntiLost_le_att_list
+0x469a mem_car_hard_soft_switch
+0x469b mem_car_queue_each_size
+0x469c mem_car__queue_length
+0x469d mem_car_queue_curr_num
+0x469e mem_car_queue_read_ptr
+0x469f mem_car_queue_write_ptr
+0x46a0 mem_car_queue_ele
+0x4718 mem_car_pop_queue_buff
+0x472c mem_car_led_num
+0x472d mem_car_led_map
+0x4737 mem_car_style1_led_type
+0x4738 mem_car_style1_blink_count
+0x4739 mem_car_style1_struct_led_gpio
+0x473a mem_car_style1_on_time
+0x473c mem_car_style1_off_time
+0x473e mem_car_style1_cb_ledon
+0x4740 mem_car_style1_cb_ledoff
+0x4742 mem_car_style2_led_type
+0x4743 mem_car_style2_blink_count
+0x4744 mem_car_style2_struct_led_gpio
+0x4745 mem_car_style2_on_time
+0x4747 mem_car_style2_off_time
+0x4749 mem_car_style2_cb_ledon
+0x474b mem_car_style2_cb_ledoff
+0x474d mem_le_receive_data
+0x474d mem_le_receive_packet_head
+0x474f mem_le_receive_cmd
+0x4750 mem_le_receive_length
+0x4752 mem_le_receive_payload
+0x475c mem_le_receive_checksum
+0x475d mem_motor1_status
+0x475e mem_motor1_speed
+0x475f mem_motor2_status
+0x4760 mem_motor2_speed
+0x4761 mem_motor3_status
+0x4762 mem_motor3_speed
+0x4763 mem_motor1_pwm_set
+0x4763 mem_motor1_pwm_pin1_set
+0x4764 mem_motor1_pwm_pin2_set
+0x4765 mem_motor1_pwm_pin_set
+0x4766 mem_motor1_pwm_channel_set
+0x4767 mem_motor1_pwm_freq_set
+0x476a mem_motor1_pwm_dute_set
+0x476b mem_motor2_pwm_set
+0x476b mem_motor2_pwm_pin1_set
+0x476c mem_motor2_pwm_pin2_set
+0x476d mem_motor2_pwm_pin_set
+0x476e mem_motor2_pwm_channel_set
+0x476f mem_motor2_pwm_freq_set
+0x4772 mem_motor2_pwm_dute_set
+0x4773 mem_motor3_pwm_set
+0x4773 mem_motor3_pwm_pin1_set
+0x4774 mem_motor3_pwm_pin2_set
+0x4775 mem_motor3_pwm_pin_set
+0x4776 mem_motor3_pwm_channel_set
+0x4777 mem_motor3_pwm_freq_set
+0x477a mem_motor3_pwm_dute_set
+0x477b mem_motor_select_p_n
+0x477c mem_car_motor_status
+0x477d mem_car_motor_speed
+0x477e mem_motor_pwm_set
+0x477e mem_motor_pwm_pin1_set
+0x477f mem_motor_pwm_pin2_set
+0x4780 mem_motor_pwm_pin_set
+0x4781 mem_motor_pwm_channel_set
+0x4782 mem_motor_pwm_freq_set
+0x4785 mem_motor_pwm_dute_set
+0x4786 mem_ir_rx_gpio
+0x4787 mem_ir_data
+0x4789 mem_ir_rx_buf
+0x478b mem_ir_receive_clkn
+0x478f mem_ir_notify_data
+0x4792 mem_ir_notify_data_head
+0x4797 mem_ir_notify_data_payload
+0x4799 mem_ir_notify_data_check_sum
+0x479a mem_car_ir_breakdown_check_timer
+0x479b mem_car_ir_breakdown_flag
+0x479c mem_car_led_control
+0x479c mem_car_led1_status
+0x479d mem_car_led2_status
+0x479e mem_car_led3_status
+0x479f mem_car_led4_status
+0x47a0 mem_car_led5_status
+0x47a1 mem_car_led6_status
+0x47a2 mem_car_led7_status
+0x47a3 mem_car_led8_status
+0x47a4 mem_car_led_control_timer
+0x47a5 mem_car_led_blink_status
+0x47a6 mem_car_led_no
+0x47a7 mem_car_info_request
+0x47aa mem_car_info_request_head
+0x47af mem_car_info_request_payload
+0x47b7 mem_car_info_request_checksum
+0x47b8 mem_car_config_param
+0x47b8 mem_car_config_setting_flag
+0x47b9 mem_car_config_device_select
+0x47ba mem_car_config_motor_layout
+0x47bb mem_car_config_ir_enable
+0x47bc mem_car_config_ir_rx_gpio
+0x47bd mem_car_config_pairing_led_conn_status
+0x47be mem_car_config_pairing_led_gpio
+0x47bf mem_car_config_led_num
+0x47c0 mem_car_config_blood_led_gpio
+0x47c0 mem_car_config_blood_led1_gpio
+0x47c1 mem_car_config_blood_led2_gpio
+0x47c2 mem_car_config_blood_led3_gpio
+0x47c3 mem_car_config_blood_led4_gpio
+0x47c4 mem_car_config_blood_led5_gpio
+0x47c5 mem_car_config_blood_led6_gpio
+0x47c6 mem_car_config_blood_led7_gpio
+0x47c7 mem_car_config_blood_led8_gpio
+0x47c8 mem_car_config_bat_notify_enable
+0x47c9 mem_car_config_low_voltage_led_gpio
+0x47ca mem_car_config_low_voltage_percent
+0x47cb mem_car_config_soft_switch_enable
+0x47cc mem_car_config_soft_switch_gpio
+0x47cd mem_car_notify_vdd_count
+0x47ce mem_car_notify_vdd_timer
+0x47cf mem_car_notify_vdd_value_last
+0x47d0 mem_car_notify_vdd_percent
+0x47d1 mem_car_working_flag
+0x47d2 mem_low_bat_flag
+0x47d3 mem_notify_bat_packet
+0x47d6 mem_notify_bat_head
+0x47db mem_notify_bat_payload
+0x47dc mem_notify_bat_check_sum
+0x47dd mem_vdd_notify_flag
+0x47de mem_car_current_vdd_value_temp
+0x47e0 mem_car_last_vdd_value
+0x47e2 mem_vdd_calculate_set
+0x47e2 mem_vdd_full_vol
+0x47e4 mem_vdd_empty_vol
+0x47e6 mem_vdd_low_vol
+0x47e8 mem_vdd_now_vol
+0x47ea mem_car_24g_status
+0x47eb mem_car_24g_no_data_timeout_count
+0x47ed mem_car_24g_no_data_timeout_timer
+0x47ef mem_car_24g_ir_receive_attack_count
+0x47f0 mem_car_24g_go_die_flag
+0x47f1 mem_car_attack_shake_timer
+0x47f2 mem_car_attack_shake_flag
+0x47f3 mem_car_soft_power
+0x47f3 mem_car_power_state
+0x47f4 mem_car_power_timer
+0x47f5 mem_car_power_off_timeout
+0x47f6 mem_car_power_starting_timeout
+0x47f7 mem_car_power_off_cb
+0x47f9 mem_car_power_starting_cb
+0x47fb mem_car_power_standby_cb
+0x47fd mem_car_ui_button_up_cb
+0x47ff mem_car_le_att_list
+0x49f3 mem_car_moto1_blank_timer
+0x49f4 mem_car_moto2_blank_timer
+0x49f5 mem_car_moto3_blank_timer
+0x49f6 mem_car_24g_received_pac
+0x49f7 mem_24g_car_head_ptr
+0x469a mem_light_pwm0
+0x469b mem_light_pwm1
+0x469c mem_light_pwm2
+0x469d mem_light_pwm3
+0x469e mem_light_pwm4
+0x469f mem_light_pwm5
+0x46a0 mem_light_pairing_enable
+0x46a1 mem_light_pairing_timer
+0x46a3 mem_light_cnum
+0x46a4 mem_light_next_record
+0x46a5 mem_light_clist
+0x46f5 mem_light_crr_cmd_count
+0x46f6 mem_curr_packet_num
+0x469a mem_lightc_led_gpio
+0x469b mem_lightc_row
+0x46a1 mem_lightc_col
+0x46a7 mem_adv_time
+0x46a8 mem_cmd0_string
+0x46bc mem_cmd1_string
+0x46d0 mem_cmd2_string
+0x46e4 mem_cmd3_string
+0x46f8 mem_cmd4_string
+0x470c mem_cmd5_string
+0x4720 mem_cmd6_string
+0x4734 mem_cmd7_string
+0x4748 mem_cmd8_string
+0x475c mem_cmd9_string
+0x4770 mem_cmd10_string
+0x4784 mem_cmd11_string
+0x4798 mem_cmd12_string
+0x47ac mem_cmd13_string
+0x47c0 mem_cmd14_string
+0x47d4 mem_cmd15_string
+0x47e8 mem_cmd16_string
+0x47fc mem_cmd17_string
+0x4810 mem_cmd18_string
+0x4824 mem_cmd19_string
+0x4838 mem_cmd20_string
+0x469a mem_soft_version_num
+0x469c mem_module_wake_up_gpio
+0x469d mem_module_state_gpio
+0x469e mem_module_connect_state_gpio
+0x469f mem_current_packet_length
+0x46a1 mem_module_state
+0x46a2 mem_module_mcu_wake_pin
+0x46a3 mem_module_mcu_wake_delay_us
+0x46a7 mem_module_spp_lpm_mult
+0x46a8 mem_module_le_lpm_mult
+0x46a9 mem_module_bluetooth_stauts_by_command
+0x46aa mem_module_uart_rx_buffer
+0x46ac mem_module_uart_rx_buffer_end
+0x46ae mem_module_uart_tx_buffer
+0x46b0 mem_module_uart_tx_buffer_end
+0x46b2 mem_module_read_vdd_flag
+0x46b3 mem_module_read_vdd_count
+0x46b4 mem_module_vdd_quotient
+0x46b5 mem_module_vdd_remainder
+0x46b6 mem_module_le_rx_data_len
+0x46b7 mem_module_le_rx_data_address
+0x46b9 mem_module_le_rx_data_handle
+0x46bb mem_module_data_write_handle
+0x46bd mem_module_data_write_handle2
+0x46bf mem_module_flag
+0x46c0 mem_module_hci_notify_len
+0x46c1 mem_module_hci_notify_handle
+0x46c3 mem_module_hci_nofiy_addr
+0x46c5 mem_last_transmite_clock
+0x46c9 mem_module_uuid_list
+0x47f5 mem_module_uuid_list_end
+0x47f5 mem_module_le_att_list
+0x4a4d mem_module_le_att_list_end
+0x4a4d mem_module_nv_data
+0x4a4d mem_module_nv_data0
+0x4a6f mem_module_nv_data1
+0x4a91 mem_module_nv_data2
+0x4ab3 mem_module_nv_data3
+0x4ad5 mem_module_nv_data4
+0x469a mem_remote_car_hard_soft_switch
+0x469b mem_remote_car_queue_each_size
+0x469c mem_remote_car_queue_length
+0x469d mem_remote_car_queue_curr_num
+0x469e mem_remote_car_queue_read_ptr
+0x469f mem_remote_car_queue_write_ptr
+0x46a0 mem_remote_car_queue_ele
+0x46fa mem_remote_style_led_type
+0x46fb mem_remote_style_blink_count
+0x46fc mem_remote_style_struct_led_gpio
+0x46fd mem_remote_style_on_time
+0x46ff mem_remote_style_off_time
+0x4701 mem_remote_style_cb_ledon
+0x4703 mem_remote_style_cb_ledoff
+0x4705 mem_remote_car_led_num
+0x4706 mem_remote_car_led_map
+0x470e mem_remote_car_keyscan
+0x470e mem_remote_car_key_num
+0x470f mem_cb_remote_car_keyscan
+0x4711 mem_remote_car_key_conf0
+0x4711 mem_remote_car_key_conf0_pin
+0x4712 mem_remote_car_key_conf1
+0x4712 mem_remote_car_key_conf1_pin
+0x4713 mem_remote_car_key_conf2
+0x4713 mem_remote_car_key_conf2_pin
+0x4714 mem_remote_car_key_conf3
+0x4714 mem_remote_car_key_conf3_pin
+0x4715 mem_remote_car_key_conf4
+0x4715 mem_remote_car_key_conf4_pin
+0x4716 mem_remote_car_key_conf5
+0x4716 mem_remote_car_key_conf5_pin
+0x4717 mem_remote_car_key_conf6
+0x4717 mem_remote_car_key_conf6_pin
+0x4718 mem_rocker_negative_flag
+0x4719 mem_rocker_work_status
+0x471a mem_current_vdd_value_default_mid_x
+0x471c mem_current_vdd_value_default_mid_y
+0x471e mem_current_vdd_value_default_mid_temp
+0x4720 mem_current_vdd_default_range
+0x4722 mem_rocker_last_status
+0x4724 mem_rocker_status
+0x4724 mem_rocker_x_status
+0x4725 mem_rocker_y_status
+0x4726 mem_remote_car_config_param
+0x4726 mem_remote_car_config_setting_flag
+0x4727 mem_remote_car_config_key_map
+0x4728 mem_remote_car_config_layout
+0x4729 mem_remote_car_config_connect_led_gpio
+0x472a mem_remote_car_config_check_way
+0x472b mem_remote_car_config_soft_switch_enable
+0x472c mem_remote_car_config_soft_switch_gpio
+0x472d mem_remote_car_config_timeout_shutdown_enable
+0x472e mem_remote_car_24g_motor_packet
+0x472e mem_remote_car_24g_motor_packet_lenght
+0x472f mem_remote_car_24g_motor_send_packet_head
+0x4731 mem_remote_car_24g_motor_send_cmd
+0x4732 mem_remote_car_24g_motor_send_length
+0x4734 mem_remote_car_24g_motor_send_payload
+0x4734 mem_remote_car_24g_motor1_payload
+0x4736 mem_remote_car_24g_motor2_payload
+0x4738 mem_remote_car_24g_motor3_payload
+0x473a mem_remote_car_24g_motor_send_checksum
+0x473b mem_remote_car_24g_fire_packet
+0x473b mem_remote_car_24g_fire_packet_lenght
+0x473c mem_remote_car_24g_fire_send_packet_head
+0x473e mem_remote_car_24g_fire_send_cmd
+0x473f mem_remote_car_24g_fire_send_length
+0x4741 mem_remote_car_24g_fire_send_payload
+0x4743 mem_remote_car_24g_fire_send_checksum
+0x4744 mem_remote_car_24g_tx_temp
+0x4753 mem_remote_car_no_data_timeout
+0x4755 mem_remote_car_no_data_timer
+0x4757 mem_remote_car_soft_power
+0x4757 mem_remote_car_power_state
+0x4758 mem_remote_car_power_timer
+0x4759 mem_remote_car_power_off_timeout
+0x475a mem_remote_car_power_starting_timeout
+0x475b mem_remote_car_power_off_cb
+0x475d mem_remote_car_power_starting_cb
+0x475f mem_remote_car_power_standby_cb
+0x4761 mem_remote_key_status
+0x4762 mem_remote_car_24g_status
+0x4763 mem_remote_car_24g_auto_work_step
+0x4764 mem_remote_car_24g_pair_success_flag
+0x4765 mem_remote_car_24g_enter_lpm_enable
+0x4766 mem_remote_car_empty_packet
+0x4767 mem_24g_RC_head_ptr
+0x469a mem_shutter_bluetooth_type
+0x469b mem_shutter_config_enable
+0x469c mem_shutter_config_otp_base_address
+0x469e mem_shutter_config_size
+0x469f mem_shutter_config_select_gpio1
+0x46a0 mem_shutter_config_select_gpio2
+0x46a1 mem_shutter_config_select_gpio3
+0x46a2 mem_shutter_config_user_otp_address
+0x46a4 mem_shutter_config_eeprom_offset_addr
+0x46a6 mem_shutter_config_eeprom_start_flag
+0x46a8 mem_shutter_config_user_size
+0x46a9 mem_shutter_config_label
+0x46aa mem_shutter_config_otp_addr
+0x46ac mem_classic_shutter_cable_unplug_conut
+0x46ad mem_classic_shutter_hid_disconn_count
+0x46ae mem_classic_shutter_random_mac_offset_addr
+0x46b0 mem_ble_shutter_enable_notify
+0x46b1 mem_ble_shutter_reconn_dav_interval
+0x46b3 mem_ble_shutter_discovery_adv_interval
+0x46b5 mem_ble_shutter_reconn_timeout
+0x46b7 mem_ble_shutter_reconn_timer
+0x46b9 mem_ble_shutter_reconn_blink_on_time
+0x46bb mem_ble_shutter_reconn_blink_off_time
+0x46bd mem_ble_shutter_discovery_blink_on_time
+0x46bf mem_ble_shutter_discovery_blink_off_time
+0x46c1 mem_ble_shutter_interval_min
+0x46c3 mem_ble_shutter_interval_max
+0x46c5 mem_ble_shutter_latency
+0x46c7 mem_ble_shutter_timeout
+0x46c9 mem_ble_shutter_interval_min_new
+0x46cb mem_ble_shutter_interval_max_new
+0x46cd mem_ble_shutter_latency_new
+0x46cf mem_ble_shutter_timeout_new
+0x46d1 mem_classic_shutter_discovery_timeout
+0x46d3 mem_classic_shutter_connect_timeout
+0x46d5 mem_ble_shutter_discovery_timeout
+0x46d7 mem_ble_shutter_connect_timeout
+0x46d9 mem_shutter_sleep_timeout
+0x46db mem_shutter_sleep_timer
+0x46dd mem_shutter_hard_soft_switch_case
+0x46de mem_shutter_soft_switch_button_gpio
+0x46df mem_shutter_soft_switch_power_state
+0x46e0 mem_shutter_soft_switch_poweron_time
+0x46e1 mem_shutter_soft_switch_poweroff_time
+0x46e2 mem_shutter_soft_switch_poweron_callback_function
+0x46e4 mem_shutter_soft_switch_poweroff_callback_function
+0x46e6 mem_shutter_keyscan
+0x46e6 mem_shutter_key_num
+0x46e7 mem_cb_shutter_keycan
+0x46e9 mem_shutter_key_conf0
+0x46ea mem_shutter_key_conf1
+0x46eb mem_shutter_key_conf2
+0x46ec mem_shutter_key_conf3
+0x46ed mem_shutter_key_conf4
+0x46ee mem_shutter_key_conf5
+0x46ef mem_shutter_key_conf6
+0x46f0 mem_shutter_key_conf7
+0x46f1 mem_key0_press
+0x46f6 mem_key1_press
+0x46fb mem_key2_press
+0x4700 mem_key3_press
+0x4705 mem_key4_press
+0x470a mem_key5_press
+0x470f mem_key6_press
+0x4714 mem_key7_press
+0x4719 mem_key0_release
+0x471e mem_key1_release
+0x4723 mem_key2_release
+0x4728 mem_key3_release
+0x472d mem_key4_release
+0x4732 mem_key5_release
+0x4737 mem_key6_release
+0x473c mem_key7_release
+0x4741 mem_ble_data_buffer1
+0x4746 mem_ble_data_buffer2
+0x474b mem_ble_data_buffer3
+0x4750 mem_ble_data_buffer4
+0x4755 mem_ble_data_buffer5
+0x475a mem_ble_data_buffer6
+0x475f mem_ble_data_buffer7
+0x4764 mem_ble_data_buffer8
+0x4769 mem_ble_data_buffer9_58
+0x479b mem_classic_data_buffer
+0x47a0 mem_classic_data_buffer1
+0x47a5 mem_classic_data_buffer2
+0x47aa mem_classic_data_buffer3
+0x47af mem_classic_data_buffer4
+0x47b4 mem_classic_data_buffer5
+0x47b9 mem_classic_data_buffer6
+0x47be mem_classic_data_buffer7
+0x47c3 mem_classic_data_buffer8
+0x47c8 mem_classic_data_buffer9_58
+0x47fa mem_queue_each_size
+0x47fb mem_queue_length
+0x47fc mem_queue_curr_num
+0x47fd mem_queue_read_ptr
+0x47fe mem_queue_write_ptr
+0x47ff mem_queue_ele
+0x481f mem_shutter_nv_data
+0x48c9 mem_shutter_led_struct_app_led
+0x48c9 mem_shutter_led_struct_app_led_type
+0x48ca mem_shutter_led_struct_app_led_blink_count
+0x48cb mem_shutter_led_struct_app_led_gpio
+0x48cc mem_shutter_led_struct_app_led_on_time
+0x48ce mem_shutter_led_struct_app_led_off_time
+0x48d0 mem_shutter_led_struct_app_led_on_callback
+0x48d2 mem_shutter_led_struct_app_led_off_callback
+0x48d4 mem_shutter_power_off_led_style
+0x48d4 mem_shutter_power_off_led_style_type
+0x48d5 mem_shutter_power_off_led_style_blink_count
+0x48d6 mem_shutter_power_off_led_style_gpio
+0x48d7 mem_shutter_power_off_led_style_on_time
+0x48d9 mem_shutter_power_off_led_style_off_time
+0x48db mem_shutter_power_off_led_style_on_callback
+0x48dd mem_shutter_power_off_led_style_off_callback
+0x48df mem_shutter_soft_swtich_botton_down
+0x48e0 mem_shutter_soft_swtich_led_struct_temp
+0x48eb mem_shutter_power_off_timeout
+0x48ec mem_shutter_power_off_timer
+0x469a mem_mouse_key
+0x469b mem_mouse_x
+0x469d mem_mouse_y
+0x469f mem_mouse_z
+0x46a0 mem_mouse_tz
+0x46a1 mem_mouse_xy_h
+0x46a2 mem_sensor_shutter_hi
+0x46a3 mem_sensor_shutter_lo
+0x46a4 mem_sensor_smart_flag
+0x46a5 mem_sensor_squal_reg
+0x46a6 mem_sensor_iqc
+0x46a7 mem_mouse_move_flag
+0x46a8 mem_mouse_direct_timeout
+0x46aa mem_mouse_no_data_timeout
+0x46ac mem_mouse_discovery_timer
+0x46ae mem_mouse_direct_timer
+0x46b0 mem_mouse_no_data_timer
+0x46b2 mem_mouse_blank_data_timer
+0x46b4 mem_mouse_send_blank_timer
+0x46b5 mem_mouse_cpi_count
+0x46b6 mem_mouse_dpi_button_state
+0x46b7 mem_wheel_tb_old_pinlevel
+0x46b8 mem_wheel_tb_new_pinlevel
+0x46b9 mem_wheel_tog
+0x46ba mem_mouse_tz_data
+0x46bb mem_mouse_tz_data_count
+0x46bc mem_mouse_tz_data_count1
+0x46bd mem_mwheel_b_old_pinlevel
+0x46be mem_mwheel_b_new_pinlevel
+0x46bf mem_mwheel_tog
+0x46c0 mem_mouse_z_data
+0x46c1 mem_mouse_z_data_count
+0x46c2 mem_mouse_z_data_count1
+0x46c3 mem_reconn_mode
+0x46c4 mem_mouse_statue_led_timer
+0x46c5 mem_le_connect_status_flag
+0x46c6 mem_le_start_encrypt_timer
+0x46c7 mem_device_addr_temp
+0x46ce mem_adc_read_timer
+0x46cf mem_adc_low_volatage_led_timer_count
+0x46d0 mem_adc_reference_voltage
+0x46d2 mem_device_number
+0x46d3 mem_mouse_flag
+0x46d5 mem_mouse_function_enable
+0x46d7 mem_combination_select_device_timer_init
+0x46d8 mem_combination_select_device_count
+0x46d9 mem_select_device_button_statue
+0x46da mem_combination_ui_button_count
+0x46db mem_bt_discovey_button_statue
+0x46dc mem_sensor_reset_gpio
+0x46dd mem_sensor_id1
+0x46de mem_sensor_id2
+0x46df mem_mouse_dpi_led_delay_count
+0x46e0 mem_config_sensor_type
+0x46e1 mem_config_sensor_motion
+0x46e2 mem_lbutton_gpio
+0x46e3 mem_rbutton_gpio
+0x46e4 mem_mbutton_gpio
+0x46e5 mem_bk_button_gpio
+0x46e6 mem_fw_button_gpio
+0x46e7 mem_dpi_button_gpio
+0x46e8 mem_whee_a_data_gpio
+0x46e9 mem_whee_b_data_gpio
+0x46ea mem_whee_ta_data_gpio
+0x46eb mem_whee_tb_data_gpio
+0x46ec mem_config_bt_button_gpio
+0x46ed mem_config_select_device_button_gpio
+0x46ee mem_config_paraing_led_gpio
+0x46ef mem_config_low_voltage_alarm_gpio
+0x46f0 mem_config_device1_led_gpio
+0x46f1 mem_config_device2_led_gpio
+0x46f2 mem_config_device3_led_gpio
+0x46f3 mem_sensor_data_gpio
+0x46f4 mem_dpi_led_gpio
+0x46f5 mem_config_function_enable
+0x46f6 mem_config_sensor_angle
+0x46f7 mem_select_sensor_angle_gpio
+0x46f8 mem_select_adc_gpio
+0x46f9 mem_config_end
+0x46f9 mem_btclk_sensor
+0x46fd mem_wire_usb_interval
+0x46fe mem_mouse_mode_flag
+0x46ff mem_usb_addr
+0x4700 mem_flash_base
+0x4703 mem_24g_device_number
+0x4704 mem_24g_enter_lpm_timer
+0x4705 mem_mouse_1step_up_count
+0x4706 mem_mouse_2step_up_count
+0x4707 mem_24g_pairing_timer_count
+0x4709 mem_mouse_vdd_calculate_set
+0x4709 mem_mouse_vdd_full_vol
+0x470b mem_mouse_vdd_empty_vol
+0x470d mem_mouse_vdd_low_vol
+0x470f mem_mouse_vdd_now_vol
+0x4711 mem_mouse_sensor_timer_count
+0x4712 mem_sensor_led_style
+0x4713 mem_mouse_led_type
+0x4714 mem_mouse_blink_count
+0x4715 mem_mouse_struct_led_gpio
+0x4716 mem_mouse_on_time
+0x4718 mem_mouse_off_time
+0x471a mem_mouse_cb_ledon
+0x471c mem_mouse_cb_ledoff
+0x471e mem_reconn_times
+0x471f mem_reconn_times_init
+0x4720 mem_mouse_information_start
+0x4720 mem_device_flag
+0x4721 mem_device1_type
+0x4722 mem_device1_addr
+0x4728 mem_device1_link_key
+0x4738 mem_device1_locall_addr
+0x473e mem_device2_type
+0x473f mem_device2_addr
+0x4745 mem_device2_link_key
+0x4755 mem_device2_locall_addr
+0x475b mem_device3_type
+0x475c mem_device3_addr
+0x4762 mem_device3_link_key
+0x4772 mem_device3_locall_addr
+0x4778 mem_store_flag
+0x477a mem_mouse_dpi
+0x477b mem_mouse_24g_addr
+0x477f mem_mouse_information_end
+0x477f mem_mouse_dpi_seting
+0x477f mem_320x_dpi_1
+0x4780 mem_320x_dpi_2
+0x4781 mem_320x_dpi_3
+0x4782 mem_320x_dpi_4
+0x4783 mem_3212_dpi_1
+0x4784 mem_3212_dpi_2
+0x4785 mem_3212_dpi_3
+0x4786 mem_3212_dpi_4
+0x4787 mem_3610_dpi_1
+0x4788 mem_3610_dpi_2
+0x4789 mem_3610_dpi_3
+0x478a mem_3610_dpi_4
+0x478b mem_mouse_24g_enter_lpm_enable
+0x478c mem_le_rx_window_inc
+0x478e mem_empty_count
+0x478f mem_rf_init_data_new
+0x479e mem_mouse_clear_sensor_data_flag
+0x479f mem_mouse_null_enter_hibernate_flag
+0x47a0 mem_mouse_null_enter_hibernate_timer
+0x47a1 mem_mouse_le_reconnect_flag
+0x47a2 mem_mouse_data_queue
+0x47c3 mem_mouse_data_queue_num
+0x47c4 mem_random_addr_increase_count
+0x47c6 mem_mouse_le_conn_param_reject
+0x47c7 mem_lpm_mult_init
+0x47c8 mem_mouse_le_uuid_sup
+0x49e1 mem_mouse_wheel_trigger
+0x49e2 mem_mouse_wheel_trigger_timer
+0x49e3 mem_mouse_enter_sniff_count
+0x49e4 mem_mouse_send_switch_req_timer
+0x49e5 mem_le_tx_buffer0_omemalloc
+0x4a00 mem_le_tx_buffer1_omemalloc
+0x4a1b mem_le_tx_buffer2_omemalloc
+0x4a36 mem_le_tx_buffer3_omemalloc
+0x4a51 mem_mouse_uuid_list
+0x4cd7 mem_lmi_opcode_temp
+0x4cd8 mem_mouse_adc_last_low_voltage_flag
+0x4cd9 mem_mouse_init_sensor_reset_flag
+0x4cda mem_bt_rcvd_switch_req_accept
+0x4cdb mem_bt_send_max_slot_req_accept_after_switch
+0x4cdc mem_bt_send_lmp_setup_complete
+0x4cdd mem_l2cap_rcv
+0x4cde mem_mouse_bt_boot_mode
+0x4cdf mem_mouse_bt_boot_data
+0x4ce4 mem_mouse_bt_send_first_package_timer
+0x4ce5 mem_mouse_bt_send_first_package_flag
+0x4ce6 mem_mouse_asm_flag
+0x4ce7 mem_mouse_x_pre
+0x4ce9 mem_mouse_y_pre
+0x4ceb mem_le_adv_swift_pair
+0x4cff mem_mouse_multi_led_blink_enable
+0x4d00 mem_mouse_multi_led_gpio
+0x4d01 mem_mouse_multi_led_state
+0x4d02 mem_mouse_multi_led_type
+0x4d03 mem_mouse_multi_led_on_timer_init
+0x4d04 mem_mouse_multi_led_blink_timer_init
+0x4d05 mem_mouse_multi_led_blink_timer
+0x4d06 mem_mouse_multi_led_blink_count
+0x4d07 mem_mouse_multi_led_on_timer
+0x4d08 mem_mouse_multi_led_blink_count_limited
+0x4d09 mem_mouse_multi_led_on_poweron2s_flag
+0x4d0a mem_discovery_on_flag
+0x4d0b mem_bt_ui_button_timeout
+0x4d0c mem_bt_ui_button_count
+0x4d0d mem_mouse_priority_bb_event
+0x4d0e mem_mouse_le_parse_l2cap_ptr
+0x4d10 mem_low_power_no_data_off_led_time
+0x4d11 mem_low_power_check_count
+0x4d12 mem_low_power_led_blink_flag
+0x4d13 mem_mouse_3065xy_dpi_seting
+0x4d13 mem_3065xy_dpi_1
+0x4d14 mem_3065xy_dpi_2
+0x4d15 mem_3065xy_dpi_3
+0x4d16 mem_3065xy_dpi_4
+0x4d17 mem_flash_ncs_gpio
+0x4d18 mem_select_ui_button_count
+0x4d19 mem_write_flash_head_temp
+0x4d1d mem_mouse_poweron_led_timer
+0x4d1e mem_mouse_24g_addr_init
+0x4d24 mem_24g_attempt_count
+0x4d26 mem_mouse_24g_pair_timer
+0x4d27 mem_zcode_current_number
+0x4d28 mem_xip_flash_offset
+0x4d2b mem_flash_start_addr
+0x4d2e mem_flash_address
+0x4d31 mem_zcode_head
+0x4d35 mem_mouse_long_mult_flag
+0x4d36 mem_mouse_le_current_mult_timer
+0x4d37 mem_24g_long_sleep_param_update_timer
+0x4d38 mem_mouse_bt_led_gpio
+0x4d39 mem_mouse_button_select_device_timer_init
+0x4d3a mem_mouse_button_select_device_count
+0x4d3b mem_mouse_multi_led_on_timer_init1
+0x4d3c mem_mouse_24g_attempt_success_flag
+0x4d3d mem_mouse_le_bb_connected_flag
+0x4d3e mem_mouse_fast_conn_flag
+0x4d3f mem_le_lap_high_3B
+0x4d42 mem_mouse_le_fast_conn_enable_timer
+0x4d43 mem_mouse_delay_discovery_count
+0x4d44 mem_mouse_send_secutiry_request_timer
+0x4d45 mem_le_send_security_request_flag
+0x4d46 mem_mouse_long_button_select_device
+0x4d47 mem_mouse_select_device_button_wakeup_flag
+0x4d48 mem_mouse_le_updata_not_accepted_flag
+0x4d49 mem_sensor_8650_init
+0x4d62 mem_sensor_ka8_init
+0x4d6f mem_sensor_poweron_init
+0x4d78 mem_sensor_8009_init
+0x4d87 mem_customer_key
+0x4d88 mem_customer_key_press
+0x4d91 mem_customer_key_release
+0x4d9a mem_customer_data_trigger
+0x4d9b mem_customer_data_trigger_last
+0x4d9c mem_keyboard_hid_descriptor
+0x4de2 mem_sdp_updata_list
+0x4dee mem_mouse_lkey_press_status
+0x4def mem_mouse_rkey_press_status
+0x4df0 mem_mouse_mkey_press_status
+0x4df1 mem_mouse_bkkey_press_status
+0x4df2 mem_mouse_fwkey_press_status
+0x4df3 mem_mouse_dpikey_press_status
+0x4df4 mem_mouse_pbkey_press_status
+0x4df5 mem_mouse_key_temp
+0x4df6 mem_mouse_key_status
+0x4df7 mem_mouse_fast_conn_addr
+0x4dfd mem_24g_rxbuf
+0x4e1f mem_24g_txbuf
+0x4e3f mem_24g_txpayload
+0x4e61 mem_24g_rxpayload
+0x4e81 mem_24g_rxdata_length
+0x4e82 mem_24g_pid
+0x4e83 mem_24g_datalen
+0x4e84 mem_24g_data_type
+0x4e85 mem_24g_txlen
+0x4e86 mem_24g_rx_window
+0x4e88 mem_24g_ensure
+0x4e89 mem_24g_txfail_cnt
+0x4e8b mem_24g_get_ack_fail
+0x4e8c mem_24g_retry
+0x4e8d mem_24g_ch
+0x4e8e mem_24g_current_ch_number
+0x4e8f mem_24g_paring_addr
+0x4e93 mem_24g_pairing_sm
+0x4e94 mem_24g_ch_map1
+0x4e98 mem_24g_ch_map2
+0x4e9c mem_24g_ch_map3
+0x4ea0 mem_24g_ch_map4
+0x4ea4 mem_24g_tx_btclk
+0x4ea8 mem_24g_interval
+0x4ea9 mem_24g_interval_min
+0x4eaa mem_24g_interval_max
+0x4eab mem_24g_addr
+0x4eaf mem_24g_abort_pac
+0x4eb0 mem_24g_check_dongle_times
+0x4eb2 mem_24g_enter_hibernate
+0x4eba mem_24g_device_addr
+0x4ebe mem_24g_pac_index
+0x4ebf mem_24g_no_ack
+0x4ec0 mem_24g_sta_crc
+0x4ec3 mem_24g_last_crc
+0x4ec6 mem_24g_sta_pid
+0x4ec7 mem_24g_last_pid
+0x4ec8 mem_24g_max_retry
+0x4ec9 mem_24g_mode
+0x4eca mem_24g_rxdata_temp
+0x4eec mem_24g_rx_addr
+0x4ef0 mem_dongle_mode_init
+0x4ef1 mem_dongle_work_mode
+0x4ef2 mem_dongle_ms_bind_step
+0x4ef3 mem_dongle_kb_bind_step
+0x4ef4 mem_dongle_bind_device_status
+0x4ef5 mem_24g_bind_payload
+0x4efd mem_24g_abort_packet
+0x4efe mem_24g_rf_laststa
+0x4eff mem_24g_hop_btclk
+0x4f03 mem_24g_hop_interval
+0x4f04 mem_24g_mode_switch
+0x4f05 mem_24g_ackpayload_enable
+0x4f06 mem_24g_hop_packet
+0x4f07 mem_24g_pair_mode
+0x4f08 mem_24g_nodata_timer_enable
+0x4f09 mem_24g_time_slice
+0x4f0a mem_24g_kb_data_sta_data
+0x4f12 mem_24g_kb_data_last_data
+0x4f1a mem_24g_kb_multikey_sta_data
+0x4f1d mem_24g_kb_multikey_last_data
+0x4f20 mem_24g_kb_blank_data_enable
+0x4f21 mem_24g_kb_mul_blank_data_enable
+0x4f22 mem_24g_ms_blank_data_enable
+0x4f23 mem_24g_kb_addr
+0x4f27 mem_24g_ms_addr
+0x4f2b mem_24g_dg_last_ch
+0x4f2c mem_24g_dg_ch_number
+0x4f2d mem_24g_dg_config_ch_once
+0x4f2e mem_24g_kb_last_ch
+0x4f2f mem_24g_kb_ch_number
+0x4f30 mem_24g_kb_config_ch_once
+0x4f31 mem_24g_ms_last_ch
+0x4f32 mem_24g_ms_ch_number
+0x4f33 mem_24g_ms_config_ch_once
+0x4f34 mem_24g_syncword
+0x4f36 mem_24g_syncword_crc8
+0x4f37 mem_24g_get_syncword_crc8
+0x4f38 mem_24g_ota_sta_pid
+0x4f3a mem_tx_power_temp
+0x4f3b mem_rssi_hex
+0x4f3c mem_rssi_noise_avg
+0x4f3d mem_rssi_noise_index
+0x4f3e mem_rssi_signal_index
+0x4f3f mem_rssi_noise_dg_avg
+0x4f40 mem_rssi_noise_kb_avg
+0x4f41 mem_rssi_noise_ms_avg
+0x4f42 mem_rssi_noise_dg_index
+0x4f43 mem_rssi_noise_kb_index
+0x4f44 mem_rssi_noise_ms_index
+0x4f45 mem_rssi_signal_buf
+0x4f4d mem_queue_ele_num
+0x4f4e mem_queue_read
+0x4f50 mem_queue_write
+0x4f52 mem_queue_start
+0x4f52 mem_data_ele0
+0x4f72 mem_data_ele1
+0x4f92 mem_data_ele2
+0x4fb2 mem_queue_end
+0x4fb2 mem_queue_temp
+0x4fb4 mem_cb_24g_data
+0x4fb6 mem_24g_hop_fastly_cnt
+0x4fb7 mem_24g_hop_pac_retry
+0x4fb8 mem_24g_rf_hop_ch
+0x4fb9 mem_24g_rf_last_sta
+0x4fba mem_24g_rf_work_stage
+0x4fbb mem_24g_sync_cnt
+0x4fbc mem_power_ctrl_pac_succ_cnt
+0x4fbd mem_rssi_avg_received
+0x4fbe mem_rssi_hex_received
+0x4fbf mem_power_ctrl_level
+0x4fc0 mem_seqi
+0x4fc1 mem_24g_auto_paring_switch
+0x4fc2 mem_24g_paccnt
+0x4fc3 mem_24g_transmit_by_interrupt
+0x4fc4 mem_24g_transmit_by_interrupt_exit_count
+0x4fc6 mem_24g_transmit_by_interrupt_exit_count_init
+0x4fc8 mem_24g_allpowerful_addr
+0x4fce mem_24g_stop_g24_mode
+0x4fcf mem_24g_stop_g24_mode_timeout
+0x4fd1 mem_24g_stop_g24_pair_mode_timerout
+0x4fd3 mem_24g_pair_current_ch_num
+0x4fd4 mem_24g_powerful_current_ch_num
+0x4fd5 mem_24g_search_dongle_action
+0x4fd6 mem_24g_search_dongle_count
+0x4fd7 mem_24g_search_dongle_ch
+0x4fd8 mem_24g_search_dongle_wait
+0x4fd9 mem_24g_conn_sm
+
+	width = 32
+	const length = 12000
+
+	/* ========= memory ============== */
+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_inquiryscan_waitcnt
+0x0007 mem_inquiryscan_rcvcnt
+0x0008 mem_pagescan_waitcnt
+0x0009 mem_pagescan_rcvcnt
+0x000a mem_pagescan_rcvfhscnt
+0x000b mem_slave_rcvcnt
+0x000c mem_page_transmit
+0x000d mem_page_rcv
+0x000e mem_page_rcv_fhs
+0x000f mem_master_rcvcnt
+0x0010 mem_fhs_wait_counter
+0x0011 mem_newconnto_counter
+0x0012 mem_inquiry_transmit
+0x0013 mem_inquiry_rcv
+0x0014 mem_fw_ver
+0x0015 mem_current_context
+0x0016 mem_le_ch_mapped
+0x0017 mem_last_freq
+0x0018 mem_rssi
+0x0019 mem_rx_type
+0x001a mem_rx_hec_err
+0x001c mem_rx_crc_err
+0x001e mem_context_ptr
+0x0020 mem_display
+0x0028 mem_bcd
+0x0030 mem_state
+0x0031 mem_mode
+0x0032 mem_tsniff
+0x0034 mem_sniff_anchor
+0x0038 mem_clk_offset
+0x003e mem_rx_window
+0x0040 mem_plap
+0x0043 mem_puap
+0x0044 mem_pnap
+0x0046 mem_conn_handle
+0x0047 mem_arq
+0x0048 mem_lmp_to_send
+0x0049 mem_lmi_opcode
+0x004a mem_lmo_reason
+0x004b mem_op
+0x004c mem_state_map
+0x004d mem_supervision_timer
+0x0051 mem_supervision_to
+0x0053 mem_name_offset
+0x0054 mem_key_size
+0x0055 mem_conn_sm
+0x0056 mem_aco
+0x0062 mem_kc
+0x0072 mem_conn_timer
+0x0073 mem_sniff_attempt
+0x0074 mem_sniff_timeout
+0x0075 mem_dsniff
+0x0077 mem_amaddr
+0x0078 mem_lmo_opcode1
+0x0079 mem_lmi_opcode1
+0x007a mem_lmo_reason1
+0x007b mem_lmo_tid1
+0x007c mem_lmo_opcode2
+0x007d mem_lmi_opcode2
+0x007e mem_lmo_reason2
+0x007f mem_lmo_tid2
+0x0080 mem_hci_version
+0x0083 mem_acl_pktlen
+0x0085 mem_sco_pktlen
+0x0086 mem_acl_pktcnt
+0x0088 mem_sco_pktcnt
+0x008a mem_current_sniff_attempt
+0x008b mem_current_sniff_timeout
+0x008c mem_sniff_timeout_temp
+0x008d mem_nfreq_index_inq
+0x008e mem_nfreq_index_page
+0x008f mem_ninqy_index
+0x0090 mem_fhs_misc
+0x0091 mem_subsniff_instant
+0x0095 mem_subsniff_rate
+0x0096 mem_subsniff_tcmax
+0x0098 mem_subsniff_tsniff
+0x0099 mem_lpm_adjust
+0x009a mem_sync_clke
+0x00a0 mem_lpm_current_mult
+0x00a1 mem_gpio_wakeup_low
+0x00a5 mem_gpio_wakeup_high
+0x00a9 mem_air_mode
+0x00aa mem_sco_asso_handle
+0x00ab mem_sco_handle
+0x00ad mem_esco_desco
+0x00ae mem_esco_type
+0x00af mem_neogotiation_state
+0x00b0 mem_saved_amaddr
+0x00b1 mem_esco_arq
+0x00b2 mem_esco_saved_arq
+0x00b3 mem_sco_obuf
+0x00d1 mem_sco_ibuf
+0x00ef mem_sco_poll
+0x00f0 mem_npage_index
+0x00f1 mem_page_mode
+0x00f2 mem_page_clk
+0x00f6 mem_tst_pktcnt_sync
+0x00f8 mem_tst_pktcnt_hec
+0x00fa mem_tst_pktcnt_crc
+0x00fc mem_tst_pktcnt_dmh
+0x00fe mem_tmp_buffer_head
+0x0101 mem_tmp_buffer
+0x0151 mem_tester_emulate
+0x0152 mem_temp_payload
+0x0152 test_mode_scenario
+0x0153 test_mode_hopping_mode
+0x0154 test_mode_tx_freq
+0x0155 test_mode_rx_freq
+0x0156 test_mode_power_mode
+0x0157 test_mode_poll_period
+0x0158 test_mode_packet_type
+0x0159 test_mode_data_length
+0x015b mem_test_mode_old_debug_config
+0x015c mem_tester_cnt
+0x015d mem_temp_am_addr
+0x015e mem_temp_arq
+0x015f mem_len
+0x0161 mem_clkn_bt
+0x0165 mem_clke_bt
+0x0169 mem_dpll_clkn
+0x016d mem_connection_options
+0x016e mem_nameres_cnt
+0x016f mem_txptr
+0x0171 mem_slot_offset
+0x0173 extm_fhs_misc
+0x0174 extm_newconn_am_addr
+0x0175 extm_class
+0x0178 extm_lap
+0x017b extm_uap
+0x017c extm_nap
+0x017f mem_debug_config
+0x0180 mem_lch_code
+0x0181 mem_fhs_am_addr
+0x0182 mem_dpll_error
+0x0184 mem_select_list_item
+0x0185 mem_temp_reconn_record
+0x0185 mem_record_bt_mode
+0x0186 mem_temp_lap
+0x018c mem_list_item_ptr
+0x018e mem_eir
+
+
+
+(//bluetooth tx power
+0 TX_POWER_0DB
+1 TX_POWER_3DB
+2 TX_POWER_5DB
+3 TX_POWER_f3DB
+4 TX_POWER_f5DB
+
+0x20 TX_POWER_PAIR
+)
+
+
+0x3b17 rom_lpm_sleep
+0x59e0 rom_save_ucode
+
+0x4219 rom_mem_lpm_xtalcnt
+0x423b rom_mem_patch_ptr
+0x423d rom_mem_patch_len
+
+0x5b1a rom_otpd_read_data
+0x5ada rom_otp_write
+	/* context */
+(
+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 */
+0x18 coffset_lmp_to_send
+0x1b coffset_op
+0x1c coffset_state_map
+	/* le only */
+0x18 coffset_le_ch
+0x19 coffset_le_hop
+0x1a coffset_le_event_cnt
+
+80 context_size
+1 context_num
+)
+
+(
+0 lpm_flag_wake
+1 lpm_flag_loadcode
+)
+
+/* ========= parameters ============== */
+(
+0x0050 param_newconn_arq
+0x0007 param_esco_addr
+0x0010 param_conn_handle
+0x01f0 param_conn_handle_comp
+0x0020 param_newconnto
+0x0008 param_pagerespto
+0x0a00 param_snooze_setup_orig
+0x5353 param_snooze_ahead_orig
+0x00ff param_ninquiry
+0x2000 param_page_to
+0x0005 param_max_slot
+0x0010 param_sco_poll
+
+/* 24Mhz clock setting */
+/* 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
+
+110 param_lpm_fix
+10 param_lpo_extra
+200 param_lpm_adjmax
+
+-1 param_hibernate_clks
+3000 param_chgpump_delay
+
+3 param_featrue_ssp
+0x0101 param_lmpext_ssp_enable
+339 param_acl_pktlen
+30   param_sco_pktlen
+1     param_acl_pktcnt		/*buffer acl pkt cnt*/
+7     param_sco_pktcnt
+
+
+0x8fffff param_features0
+0x9d83fe param_features1  // not support afh
+0x8359     param_features2
+0x000033 param_unap
+0x001177 param_lap
+0x9e8b33 param_glap
+0x002540 param_class//0x180208 //0x002580//402500//240404
+0x12e904 param_hci_version
+0x000a04 param_lmp_version//0x0a04
+0x000a06 param_lmp_version0
+0x12e9 param_lmp_subversion
+0x0012 param_tisw
+0x0012 param_tpsw
+0x1000 param_tisi
+0x0800 param_tpsi
+0x0020 param_page_window
+0x0020 param_inq_window
+0x1c80 param_supervision_to
+39 param_fcomp_div
+2 param_fcomp_mul
+6     param_name_len
+0x535442 param_name
+0x344950 param_name1
+
+
+)
+
+/* ======= packet types  ========= */
+(
+0x0      type_null    
+0x1      type_poll   
+0x2      type_fhs    
+0x3      type_dm1    
+0x4      type_dh1    
+0x5      type_hv1    
+0x6      type_hv2    
+0x7      type_hv3    
+0x8      type_3dh1     
+0x9      type_aux1   
+0xa      type_dm3    
+0xb      type_dh3    
+0xe      type_dm5    
+0xf      type_dh5    
+0x10     type_id
+0x11     type_shutdown
+0x13     type_lmp
+)
+
+/* ========== flag[6] =============== */
+(
+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 */
+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       slave2         /* 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 */
+54       le		/* bluetooth 4.0 LE enable */
+55       aes_ready	/* set when aes is ok */
+63       never         /* read only, always 0 */
+)
+
+default flag = always
+
+/* ========== reg[6] =============== */
+(
+0        mark   /* for keeping strobes, more permanent */
+1        type   /* save and verify during rx */     /* rw */
+2        temp   /* general purpose register, 64 bits */
+3        contru  /* contr 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       contwu   /* 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       interrupts    /* 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 */
+21       ctrl_reg     /* 2023 and after */
+22       jtag_addr    /* load jtag address field, lsb */
+23       freq_index   /* 7 bit read only */
+24       jtag_data    /* wdata to and rdata from jtag */
+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
+/* wire even_train    = freq_mode[4];    // odd even train                            */
+/* wire conn_mode     = 3;    // connection                                           */
+/* wire iqpgscan_mode = 2;    // slave in inquiry and page (not response)             */
+/* wire iqpgresp_mode = 1;    // slave in inquriy and page (response only)            */
+/* wire inqypage_mode = 0;    // master in inquiry and page(response or not response) */
+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 */
+43       host_mode         /* generic stuff for kick starts */
+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		
+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
+
+/* regext_index */
+(
+0 regidx_data
+4 regidx_key
+8 regidx_xor
+12 regidx_result
+)
+/* ========== radio_ctrl========= */
+(
+0 TXGFSK
+1 PSK
+2 PSK3M
+3 RESET
+)
+/* assign BPWR = radio_ctrl[0]; */
+/* assign PARAMP = radio_ctrl[1]; */
+/* assign XTALPU = radio_ctrl[2]; */
+/* assign SYNTHPU = radio_ctrl[3]; */
+/* assign TXPU = radio_ctrl[4]; */
+/* assign RXPU = radio_ctrl[5]; */
+/* assign SLCTRL = radio_ctrl[6]; */
+/* assign XTALSEL_MUX_SEL = radio_ctrl[7] */
+
+
+/* =========== destination[4] ============== */
+(
+0 bucket
+1 rxf
+2 back
+3 mod
+)
+default dest = bucket
+
+/* =========== source[4] ============= */
+(
+1 txf
+3 demod
+)
+default source = 0
+
+
+/* ============== mark ============= *//*0 - 47 */
+(
+
+0  mark_fhs_eir  
+1  mark_rxbuf_inuse
+2  mark_tx_l2cap
+3  mark_switch_initiated
+4  mark_accept_switch
+5  mark_loopback
+7  mark_esco
+8  mark_esco_rxok
+9  mark_context
+10 mark_am_addr_broadcast
+11 mark_fhs_already_good
+12 mark_page_trainb
+13 mark_lpm_mult_enable
+14 mark_usb_flag
+15 mark_old_packet
+16 mark_longpacket
+17 mark_testmode
+18 mark_ar2
+19 mark_h5tx_rp
+20 mark_h5tx_crc	
+21 mark_h5tx_retransmit
+22 mark_h5rx_pstart
+23 mark_h5_sync
+24 mark_h5_reinit
+28 mark_inquiry_on
+29 mark_inquiry_state
+30 mark_inquiry_trainb
+31 mark_periodical_diac
+32 mark_all_diac
+33 mark_slave_in_rand_accepted
+34 mark_reconn_recieve_switch
+35 mark_isstr
+36 mark_loadcode
+37 mark_ext_patch
+38 mark_24g
+39 mark_24g_conext
+40 mark_eeprom_size
+// REVAB:max 35, REVC:max 63
+41 mark_ble_tx_md
+42 mark_ble_rx_md
+43 mark_otp_encrypt
+44 mark_first_packet
+45 mark_role_switch_receive_fhs
+)
+
+(
+1 reload_type_otp
+2 reload_type_spi
+3 reload_type_iic
+)
+
+
+/* ============== soft timers ============== */
+(
+0 le_adv_interval_timer
+1 inquiry_length_timer
+2 le_scan_interval_timer
+3 page_length_timer
+4 iscan_interval_timer
+5 pscan_interval_timer
+6 switch_wait_timer
+7 enpt_delay_timer
+8 page_interval_timer
+9 key_scan_timer
+10 smp_pairing_timer
+11  ui_led_blink   //led timer չ
+12  ui_led_blink1
+13 ui_led_blink2
+ 
+)
+
+(
+1 hci_cmd_inquiry
+2 hci_cmd_inquiry_cancel
+3 hci_cmd_remote_name_req
+4 hci_cmd_remote_feature_req
+5 hci_cmd_create_conn
+6 hci_cmd_disconn
+7 hci_cmd_accept_conn
+8 hci_cmd_reject_conn
+9 hci_cmd_pair
+10 hci_cmd_nopair
+11 hci_cmd_linkkey
+12 hci_cmd_nokey
+13 hci_cmd_auth
+14 hci_cmd_stopencrypt
+15 hci_cmd_startencrypt
+16 hci_cmd_setup_sco
+17 hci_cmd_disconn_sco
+18 hci_cmd_in_sniff
+19 hci_cmd_exit_sniff
+20 hci_cmd_remote_version_req
+21 hci_cmd_remote_ext_features_req
+22 hci_cmd_io_cap
+23 hci_cmd_role_discovery
+24 hci_cmd_role_switch
+25 hci_cmd_accept_with_switch
+26 hci_cmd_detach
+27 hci_cmd_le_create_conn
+28 hci_cmd_accept_sco_conn
+80 hci_cmd_wait_remote_feature
+81 hci_cmd_wait_remote_ext_feature
+82 hci_cmd_wait_remote_name
+)
+
+
+
+/* ============== debug ============= */
+(
+0 debug_neg_skew
+1 debug_bitbucket
+2 debug_dont_clear_got_tx
+3 debug_scatter_enabled
+4 debug_tx_fixed_freq
+5 debug_rx_fixed_freq
+6 debug_tx_pattern
+)
+
+/* ============== tester_emulator ============= */
+(
+0 tester_fixed_flow
+1 tester_fixed_flow_polarity
+2 tester_change
+3 tester_exit
+4 tester_pattern_test
+5 tester_whitening_change
+6 tester_fixed_freq
+7 tester_no_whitening
+)
+
+/* ============== mode ==========*/
+(
+0 mode_le
+1 mode_master
+2 afh_enable
+3 afh_change
+4 send_sco_when_slave
+5 first_seqnx
+)
+
+/* ============== state_map ==========*/
+(
+0 smap_lmptidinit
+1 smap_lmptid
+2 smap_encryption
+3 smap_name_res
+4 smap_name_req
+5 smap_edr
+6 smap_rxlmp
+7 smap_rxl2cap
+)
+(
+0 state_inconn
+1 state_insniff
+2 state_insco 
+3 state_inpage
+4 state_conn_comp
+5 state_init_seq
+6 state_combkey
+7 state_linkkey
+)
+(
+0 op_send_sres
+1 op_auth_req
+2 op_inrand_req
+3 op_disconn
+4 op_stop_enc
+5 op_start_enc
+6 op_txl2cap
+7 op_pkt_comp
+)
+
+
+/* ============== arq [3] ================ */
+(
+0 flow
+1 arqn
+2 seqn
+3 wack
+4 flowx              /* out */  /* not really in memory */
+5 arqnx              /* out */
+6 seqnx              /* out */
+7 bcast1             /* first broadcast received */
+)
+
+/* arq          {flow,arqn,seqn}, read/write */
+/* [0] flow r/w  acl full status of the other, store during rx, checked during tx */
+/* [1] arqn r/w  ack of the other during rx (ack tx fifo),                        */
+/* [2] seqn r/w  seqn of the other, check during rx                               */ 
+/* arqx         {flowx,arqnx,seqnx} */
+/* [0] flowx r/o flow back to the other, 1 alow send, 0 not to send, read only tx */
+/* [1] arqnx r/w ack to the other, set by rx, send back on tx                     */
+/* [2] seqnx r/w toggled by arqn, to be send during tx                            */ 
+
+(
+0 llid0
+1 llid1
+2 nesn
+3 sn
+4 md
+5 wak
+)
+
+/* AFH flags */
+(
+0 AFH_CFG_ON
+1 AFH_CFG_TIMER
+2 send_lmp_set_afh
+3 AFH_CFG_REPORT_MODE
+4 AFH_CFG_MASTER_SENT_REQ
+)
+
+/* LLID CODE */
+(	
+1 LLID_L2CAP_CONT
+2 LLID_L2CAP_START
+3 LLID_LMP
+)
+
+/* ============== master_state ==========*/
+(
+0  master_in_idle
+1  master_in_inquiry
+2  master_in_page
+10 master_in_becoming_slave
+15 master_in_conn
+)
+(
+0 newrev_feature_bettx
+1 newrev_feature_betplltx
+2 newrev_feature_skip_retransmit
+3 newrev_feature_init_radio_after_sleep
+4 newrev_feature_no_lpolog
+)
+/*************mem_pincode_state****************/
+(
+0 pincode_state_ilde
+1 pincode_state_wait_pincode
+2 pincode_state_pincode_ready
+)
+
+
+// lpm_write
+(
+1 lpmreg_sel_ctrl
+2 lpmreg_sel_ctrl2
+4 lpmreg_sel_gpiolow
+8 lpmreg_sel_gpiohigh
+16 lpmreg_sel_counter
+)
+
+//scan_mode
+(
+0 inq_scan_mode
+1 page_scan_mode
+2 page_inq_enable
+)
+//mem_neogotiation_state
+(
+ 0 default_neogotiation_state
+ 1 prarm_neogotiation
+)
+
+//mem_lpm_wake_lock
+(
+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
+10 wake_lock_lmp_tx
+11 wake_lock_lmp_rx
+12 wake_lock_l2cap_tx
+13 wake_lock_l2cap_rx
+14 wake_lock_ipc_c512bt
+15 wake_lock_ipc_bt2c51
+
+)
+
+(
+0 bt_disabled
+1 ble_disabled
+2 module_disable
+
+)
+
+(
+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
+)
+
+
+//sniff UART_TX UART_RX
+(
+6 UART_WAKEUP_TX
+7 UART_WAKEUP_RX
+)
+
+
+
+0x01f2 mem_ucode_status
+0x01f3 mem_otp_ucode_flag
+0x01f5 mem_spid_tbuf/* spid buf: 03 addr[23:16] addr[15:8] addr[7:0] */
+0x01f6 mem_iicd_tbuf/* iicd buf: iic_adr addr[15:8] addr[7:0] iic_adr */
+0x01f6 mem_addr_hi
+0x01f7 mem_addr_mi
+0x01f8 mem_addr_lo
+0x01f9 mem_iicd_addr
+0x01fa mem_spid_rbuf
+0x01fe mem_ucode_buf
+0x0200 mem_ucode_len
+0x0202 mem_sched_addr
+0x0204 mem_ucode_ptr
+0x0206 mem_ucode_keybuf
+0x0216 mem_check_plap_temp
+0x0228 mem_reconnect_flag
+0x0229 mem_switch_fail_master_count
+0x022a mem_app_evt_timer_count
+
+//adc read
+(
+0 ADC_CONFIG_VINLPM
+1 ADC_CONFIG_HVIN
+2 ADC_CONFIG_GPIO
+)
+
+
+(
+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
+0x20 FLASH_COMMAND_SECTOR_ERASE
+)
+
+0x0000 otp_ucode_flag
+0x07f0 otp_ucode_aeskey
+
+/* adc data addr and flag */
+(
+0x07e0 OTP_CHIP_FUNCTIONS
+0x07e2 otp_adc_io_0_5V_addr
+0x07e4 otp_adc_hvin_1V_addr
+0x07e6 otp_adc_vinlpm_2V_addr
+0x07e8 otp_adc_io_1V_addr
+0x07ea otp_adc_hvin_5V_addr
+0x07ec otp_adc_vinlpm_3V_addr
+0x07ee otp_adc_flag_addr
+0xaa55 OTP_ADC_FLAG
+)
+
+/* data stored in eeprom */
+(
+0	eeprom_nv_ram
+
+195	eeprom_module_init_flag//2
+
+)
+
+/*mem_app_handshake_flag*/
+(
+0 APP_HANDSHAKE_NULL
+1 APP_HANDSHAKE_DONE
+
+)
+/*mem_device_option*/
+(
+1 dvc_op_hci
+4 dvc_op_dongle
+5 dvc_op_spp
+6 dvc_op_ukey
+7 dvc_op_ir
+
+9 dvc_op_shutter
+10 dvc_op_module
+11 dvc_op_ble_mouse
+12 dvc_op_ble_kb
+13 dvc_op_ble_prcp
+14 dvc_op_car
+15 dvc_op_AntiLost
+16 dvc_op_remote_car
+255 dvc_op_test
+//device option hight 4
+6 dvc_op_mouse
+7 dvc_op_keyboard
+//device option low 2
+(
+0 MODE_3_MOUSE
+1 MODE_4_MOUSE
+)
+)
+
+(
+3 twspi_sclk
+4 twspi_sdio
+)
+
+(
+4 pan_clk_bit
+5 pan_dat_bit
+6 pan_mov_bit
+)
+
+(
+7 otp_uflag_aes
+6 otp_uflag_skip_eep
+5 otp_uflag_skip_flash
+4 otp_uflag_hci
+)
+
+/* ir command */
+(
+1 ircmd_record
+2 ircmd_play
+3 ircmd_write_pulse
+4 ircmd_write_seq
+5 ircmd_write_next
+
+8 ircmd_test_play
+9 ircmd_test_rec
+
+10 ircmd_report_pulse
+11 ircmd_report_seq
+12 ircmd_report_raw
+
+20 ircmd_screen_on
+21 ircmd_screen_off
+)
+
+(
+7 gpio_active_bit
+)
+(
+2 HID_HANDSHAKE_TIMEOUT
+
+)
+
+(
+1 APP_FLAG_RECONNECT
+)
+(
+5 LPM_WAKE_UP_DELAY_TIMER
+)
+
+
+//mem_app_disconn_reason
+//mem_app_disconn_reason_flag
+//bit map
+(
+2 APP_DISC_RSN_SIZE
+)
+(
+0 APP_DISC_BY_BUTTON
+1 APP_DISC_AFTER_PAIRING
+2 APP_DISC_AFTER_RECONN
+3 APP_DISC_AFTER_SNIFF
+4 APP_DISC_AFTER_SETUP_DONE
+5 APP_DISC_AFTER_HANDSHAKE
+6 APP_DISC_BT
+7 APP_DISC_BLE
+8 APP_DISC_L2CAP_REFUSED
+9 APP_DISC_SWITCH_FAIL
+10 APP_DISC_PB_BUTTON
+)
+//eeprom init flag
+(
+	0xaa55 EEPROM_INIT_FLAG
+)
+
+(
+1 KEY_CONF_STRUCT_LEN
+0 KEY_PIN_OFFSET
+)
+
+(
+12000000 PWM_12MHZ
+)
+(
+0 POWER_OFF
+1 POWER_STARTING
+2 POWER_STANDBY
+)
+//power parameter offset(8 byte)
+(
+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
+)
+
+
+//app new specific
+(
+0 CONN_PARAM_UPDATA_PROCEDURE_NO_INIT
+1 CONN_PARAM_UPDATA_PROCEDURE_STARTING
+2 CONN_PARAM_UPDATA_PROCEDURE_COMPLETE
+3 CONN_PARAM_UPDATA_PROCEDURE_FAILD
+)
+(
+0 NEW_SPEC_HEADER_OFFSET
+2 NEW_SPEC_OPCODE_OFFSET
+3 NEW_SPEC_DLEGTH_OFFSET  //data length offset
+5 NEW_SPEC_DADDR_OFFSET   //data address offset
+)
+(
+1 OPCODE1_BUTTEN_CLICK_ONCE
+2 OPCODE2_BUTTEN_DOUBLE_CLICK
+3 OPCODE3_ANTL_START_ALRAM
+4 OPCODE4_CURRENT_ALARM_STATE
+5 OPCODE5_BATTER_INFORMATION
+7 OPCODE7_ANTL_CONFIG_ALRAM
+)
+(
+0x0a NEW_SPEC_NOTIFY_HANDLE
+0x0b NEW_SPEC_NOTIFICATION_ENABLE_HANDLE
+0x0d NEW_SPEC_WRITE_HANDLE
+)
+//app new specific end
+
+//mem_anti_lost_mode
+(
+0x01 ANTI_LE_ALARM_ON
+0x00 ANTI_LE_ALARM_OFF
+)
+(
+0 NOTIFICATION_ENABLE_BIT
+1 INDICATION_ENABLE_BIT
+)
+
+
+
+
+(
+//20ms
+0x0020	FAST_ADV_INTERVAL_VALUE_CAR
+)
+
+(
+0x14 ATT_CAR_CONTROL_HANDLE
+0x14 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
+)
+
+
+
+(
+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
+)
+
+
+
+(
+0 LIGHT_GROUP0
+)
+
+(
+0 LIGHT_CMD_PWM0
+1 LIGHT_CMD_PWM1
+2 LIGHT_CMD_PWM2
+3 LIGHT_CMD_PWM3
+4 LIGHT_CMD_PWM4
+5 LIGHT_CMD_PWM5
+6 LIGHT_CMD_AUTO_MODE
+0xff LIGHT_CMD_PAIRING
+
+)
+
+
+
+
+(//mem_module_flag
+//bit0~bit3 config module function
+0 MODULE_FLAG_UART_FLOW_CONTROL
+1 MODULE_FLAG_BLE_SEND_MTU23
+2 MODULE_FLAG_BLE_DATA_ENCRYPT
+
+//bit4~bit7 module states change
+4 MODULE_FLAG_BLE_DATA_FINISH
+5 MOUDLE_TASK_UNSNIFF
+6 MOUDLE_TASK_SNIFF
+
+)
+
+(
+34 NV_DATA_LEN
+-1 DECREASED_ONE
+)
+
+
+
+(
+	10 FLAG_MODULE_READ_VDD_COUNT
+)
+
+(
+	110  DM_REFCOM_BUFF_LEN
+)
+(
+	0x200 UART_AIR_CONTROL_THRESHOLD
+)
+
+(
+0x01 HCI_DISCARD_PACKET
+0x00 HCI_NOT_DISCARD_PACKET
+)
+
+
+
+(//Command
+0x00 HCI_CMD_SET_BT_ADDR_REQ
+0x01 HCI_CMD_SET_LE_ADDR_REQ
+0x02 HCI_CMD_SET_VISIBILITY_REQ
+0x03 HCI_CMD_SET_BT_NAME_REQ
+0x04 HCI_CMD_SET_LE_NAME_REQ
+0x05 HCI_CMD_SPP_DATA_REQ
+0x09 HCI_CMD_LE_DATA_REQ
+0x0b HCI_CMD_STATUS_IRQ
+0x0c HCI_CMD_SET_PAIRING_REQ
+0x0d HCI_CMD_SET_PINCODE_REQ
+0x0e HCI_CMD_SET_UARTCONTROL_REQ
+0x0f HCI_CMD_SET_UART_BAUD_REQ
+0x10 HCI_CMD_VERSION_REQ
+0x11 HCI_CMD_BT_DISCONNECT
+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
+0x29 HCI_CMD_SET_CREDIT_GIVEN
+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
+
+0xff HCI_TEST_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
+0x0b HCI_EVENT_FINISH_PACK_NUM
+0X0C HCI_EVENT_SNIFF_MD_CHANGE
+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
+
+)
+
+
+(//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
+)
+
+
+
+(
+0x7e0 OTP_ADDR_RF_PARAM_FIX
+//struct of RF_PARAM_FIX
+// uint8       //length = param_pair_count * 2 
+// uint16     //param-pair-1
+// uint16     //param-pair-2
+// uint16     //param-pair-3
+// uint16     //param-pair-4
+// uint16     //param-pair-5
+// uint16     //param-pair-6
+// uint16     //param-pair-7
+)
+
+(
+0	PAIRING_PINCODE
+1	PAIRING_JUSTWORK
+2	PAIRING_PASSKEY
+3	PAIRING_CONFIRM
+)
+
+
+(
+0x0001	FLAG_BT_PAIRING_SUCCESS
+0x0101	FLAG_BT_PAIRING_FAIL
+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
+)
+
+
+0x022b mem_init_cnt
+//dpi eeprom addr
+
+
+
+(
+//SPI GPIO 
+0x19 MOUSE_SPI1_CLK_GPIO
+0x1A MOUSE_SPI1_SDIO_GPIO
+0X1E MOUSE_SPI2_CLK_GPIO
+0X1F MOUSE_SPI2_SDIO_GPIO
+//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
+//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
+//bt mode device number
+0x01 MODE_BT_DEVICE1
+0x02 MODE_BT_DEVICE2
+0x03 MODE_BT_DEVICE3
+0x02 MODE_24G_DEVICE
+//mouse  flag
+0X00 WRITE_REQ_ENABLE_FLAG
+0X01 LL_START_ENC_FLAG
+0X02 LL_PAIRING_SUCCESS_FLAG
+
+
+//mouse_function_flag
+0X04 MOUSE_FLAG_LEN
+//1byte
+0X00 MOUSE_SELECT_DEVICE_FLAG
+0X01 MOUSE_CPI_FLAG
+0X02 MOUSE_BT_CANNEL_RECONN_FLAG
+0X03 MOSUE_24G_PAIRING_FLAG
+0X04 MOUSE_LOW_VOLTAGE_FLAG
+0X05 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+0X06 MOUSE_LONG_BT_BUTTON_FLAG
+0X07 MOUSE_STORE_EEPROM_FLAG
+0x08 MOUSE_STATUE_UP_FLAG
+0X09 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+
+
+//3byte
+0X10 MOUSE_ENABLE_USB
+0X11 MOUSE_ENABLE_24G
+0X12 MOUSE_ENABLE_SPI2
+0X13 MOUSE_ENABLE_FLASH
+0X14 MOUSE_ENABLE_EEPROM
+0X15 MOUSE_ENABLE_STATUE_UP_THREE_LED
+0X16 MOUSE_ENABLE_STATUE_UP
+0X17 MOUSE_ENABLE_DPI_LED_BLINK
+//4byte
+0X18 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+0X19 MOUSE_ENABLE_2K_EEPROM
+0X1A MOUSE_ENABLE_ADC
+0X1B MOUSE_ENABLE_INIT_DELAY
+0X1C MOUSE_ENABLE_DISCOVERY_SENSOR_LED
+0X1D MOUSE_ENABLE_AUTO_24G_PARING
+0X1E MOUSE_ENABLE_WAKEUP_FROM_POWER
+0X1F MOUSE_ENABLE_GPIO_CONTROL_ADC_SENSOR
+
+
+
+//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
+
+
+//mem_config_function_enable
+0 ENABLE_BT_DISCOVERY_BY_GPIO_LED
+1 ENABLE_MODE_LED
+2 ENABLE_LOW_VOLTAGE_LED
+3 ENABLE_DEVICE_LED
+4 ENABLE_BT_BUTTON
+5 ENABLE_SELECT_DEVICE_BY_GPIO_BUTTON
+6 ENABLE_SELECT_DEVICE_BY_SWITCH
+7 ENABLE_SENSOR_MOTION_PIN
+
+0xFF GPIO_DISABLE
+
+
+//DPI button state 
+0x00 DPI_BUTTON_STATE_DOWN
+0x01 DPI_BUTTON_STATE_UP
+
+
+//eeprom address offect
+0X00 MOUSE_INFO_EEPROM_OFFECT
+0X5A MOUSE_DPI_EEPROM_OFFECT	//1byte
+0X5B MOUSE_G24_ADDR_EEPROM_OFFECT	//4bytes
+0X5F MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET	//2bytes
+0X61 MOUSE_DEVICE_MODE_EEPROM_OFFSET	//1byte	
+0X62 MOUSE_EEPROM_MODULE_INIT_FLAG		//eeprom_module_init_flag 2bytes
+0X64 MOUSE_FAST_CONN_FLAG_OFFSET	//1byte
+
+
+// Sensor id number
+0x30 P32XX_ID1
+0x31 P3065_ID1
+0x3E P3610_ID1
+0x02 P3212_ID2
+0xD1 P3205_TJ3T_ID2
+0XD2 P3204_TJ3L_ID2
+0x54 PKA8_ID2
+0x70 P3065_XY_ID2
+0x5a MA8650_ID2
+0x5a P_MX8650
+0xD8 P8009_ID2
+
+//Sensor type
+0X00 P3205
+0X01 P3065
+0X02 KA8
+0X03 P3204
+0X04 P3212
+0X05 P3610
+0X06 P3065_XY
+0X07 MA8650
+0x07 MX8650
+0x08 P8009
+
+
+//p3610 smart enable flag
+0X00 P3610_SMART_ENABLE
+0X01 P3610_SMART_DISABLE
+
+
+//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
+
+
+0x06 MOUSE_FPGA_RF_WORK_DEBUG_GPIO
+0x02 MOUSE_FPGA_DEBUG_GPIO
+
+)
+
+(
+0x01 ADV_FLAG_LIMITED_DISCOVERABLE
+0x04 ADV_FLAG_BREDR_NOT_SUPPORTED
+)
+
+(
+4 TEST_GPIO
+)
+
+(
+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
+)
+
+(
+0xb9 FLASH_COMMAND_DEEP_POWER_DOWN
+0xab FLASH_COMMAND_RELEASE_DEEP_POWER_DOWN
+)
+
+(
+0 MULTI_LED_ON
+1 MULTI_LED_BLINK
+)
+
+(
+0 DIS_BUTTON_UP
+1 DIS_BT_BUTTON
+2 DIS_COMM_BUTTON
+)
+
+(
+0x017700 G24_LONG_SLEEP_STEP1	//8ms
+0x36ee80 G24_LONG_SLEEP_STEP2	//300ms
+0x124f80 G24_LONG_SLEEP_STEP3	//100ms
+)
+
+(
+8 LOW_VOLTAGE_LED_COUNT
+)
+
+(
+0x01 DPI_FUNCTION_DISABLE
+0x00 DPI_FUNCTION_ENABLE
+)
+
+
+
+
+(
+// eeprom config
+0xb0 REMOTE_PARAM_EEPROM_CONFIG_ADDR
+
+)
+
+
+(
+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
+)
+
+
+
+
+
+
+
+
+(
+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
+382		BLE_GATT_LIST_SIZE
+487		BT_SDP_LIST_SIZE
+40		BLE_KEY_VALUE_LIST_SIZE
+40		BT_KEY_VALUE_LIST_SIZE
+0x913A	BLE_SHUTTER_GATT_LIST
+0x92B8	CLASSIC_SHUTTER_SDP_LIST
+0x949F	BLE_SHUTTER_KEY_VALUE_LIST
+0x94C7	CLASSIC_SHUTTER_KEY_VALUE_LIST
+)
+
+
+(//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
+
+)
+
+
+
+//class type
+(
+0x00 STANDARD_REQ
+0x01 CLASS_REQ
+0x02 MANUFACTURER_REQ
+)
+//Standard Request Codes
+(
+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)
+)
+//Standard Descriptor Types
+(
+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
+)
+//HID Descriptor Types
+(
+0x21 DSC_HID			      // HID Class Descriptor
+0x22 DSC_HID_REPORT			  // HID Report Descriptor
+)
+//Define bmRequestType bitmaps
+(
+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,
+)
+//HID Request Codes
+(
+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    
+)
+//math cordic
+(
+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
+)
+
+(
+4 USB_STATUS_SETUP
+6 USB_STATUS_NAK
+)
+
+(
+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
+0x01 MAC_BOOT_MODE
+0x02 R_KEY
+0x03 LR_KEY
+)
+
+(
+0x8ffa	HID_KBDATA_ADDR
+0x903a	HID_MSDATA_ADDR
+0x90fe	HID_CONFDATA_ADDR
+)
+
+
+(
+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
+)
+
+
+(
+0x1A0 AT_baud_115200
+0x4e2 AT_baud_38400
+0x1388 AT_baud_9600
+)
+
+(
+0x4e00 mem_module_rx_buf//0x400
+0x4fff mem_module_rx_buf_end
+0x1c00 mem_module_tx_buf
+0x1fff mem_module_tx_buf_end
+)
+
+(
+0x01 BIND_ACKPAYLOAD
+0x08 BIND_ACKPAYLOAD_LENGTH
+0x02 USER_ACKPAYLOAD
+0x1F USER_ACKPAYLOAD_LENGTH
+
+0xcf CMD_OTA
+0xc0 CMD_OTA_START
+0xc1 CMD_OTA_DATA
+0xc2 CMD_OTA_EXIT
+0x55 OTA_STA_SUCCESS
+0xaa OTA_STA_FAIL
+)
+
+(
+0 TIMER_NAK
+640 TIMER_NAK_DELAY
+15 TIMER_WAKEUP
+5000 TIMER_WAKEUP_DELAY
+)
+
+
+
+(
+//add
+0   offset_24g_rxbuf
+1   offset_24g_rxbuf_add1
+2   offset_24g_rxbuf_add2
+34  offset_24g_txbuf
+66  offset_24g_txpayload
+100 offset_24g_rxpayload
+102 offset_24g_rxpayload_add2
+132 offset_24g_rxdata_length
+133 offset_24g_pid
+134 offset_24g_datalen
+135 offset_24g_data_type
+136 offset_24g_txlen
+137 offset_24g_rx_window
+139 offset_24g_ensure
+140 offset_24g_txfail_cnt
+141 offset_24g_get_ack_fail
+142 offset_24g_tx_without_int
+143 offset_24g_retry
+144 offset_24g_ch
+145 offset_24g_current_ch_number
+146 offset_24g_paring_addr
+150 offset_24g_pairing_sm
+151 offset_24g_ch_map1
+155 offset_24g_ch_map2
+159 offset_24g_ch_map3
+163 offset_24g_ch_map4
+167 offset_24g_tx_btclk
+171 offset_24g_interval
+172 offset_24g_interval_min
+173 offset_24g_interval_max
+174 offset_24g_addr
+178 offset_24g_abort_pac
+179 offset_24g_sync_pac
+180 offset_24g_hop_pac
+181 offset_24g_check_dongle_times
+182 offset_24g_enter_hibernate
+190 offset_24g_device_addr
+194 offset_24g_pac_index
+195 offset_24g_no_ack
+196 offset_24g_sta_crc
+199 offset_24g_last_crc
+202 offset_24g_sta_pid
+203 offset_24g_last_pid
+204 offset_24g_max_retry
+205 offset_24g_mode
+206 offset_24g_rf_last_sta
+207 offset_24g_rf_hop_ch
+208 offset_24g_sync_cnt
+209 offset_24g_hop_pac_retry
+210 offset_24g_rf_work_stage
+211 offset_24g_hop_fastly_cnt
+212 offset_24g_short_sleep_timer
+216 offset_24g_cb_data
+218 offset_24g_cb_lpm_prepare
+220 offset_24g_cb_lpm_before
+222 offset_24g_cb_rxdata_type1
+224 offset_rssi_signal_index
+225 offset_rssi_signal_avg
+226 offset_rssi_signal_buf
+234 offset_rssi_noise_index
+235 offset_rssi_noise_avg
+236 offset_rssi_noise_buf
+244 offset_rssi_ctrl_threshold_down
+245 offset_rssi_noise_dg_index
+246 offset_rssi_noise_kb_index
+247 offset_rssi_noise_ms_index
+248 offset_rssi_noise_dg_avg
+249 offset_rssi_noise_kb_avg
+250 offset_rssi_noise_ms_avg
+251 offset_tx_power_temp
+252 offset_power_ctrl_packet_cnt
+253 offset_power_ctrl_ack_cnt
+254 offset_power_ctrl_level
+255 offset_power_ctrl_txpwr_level2
+//iadd
+256 offset_power_ctrl_txpwr_level1
+257 offset_power_ctrl_txpwr_level0
+258 offset_power_ctrl_threshold_up
+259 offset_power_ctrl_threshold_down
+260 offset_dongle_mode_init
+261 offset_dongle_work_mode
+262 offset_dongle_ms_bind_step
+263 offset_dongle_kb_bind_step
+264 offset_dongle_bind_device_status
+265 offset_24g_rxdata_temp
+267 offset_24g_rxdata_temp_add2
+268 offset_24g_rxdata_temp_add3
+269 offset_24g_rxdata_temp_add4
+299 offset_24g_rx_addr
+303 offset_24g_bind_payload
+304 offset_24g_bind_payload_add1
+305 offset_24g_bind_payload_add2
+309 offset_24g_rf_laststa
+310 offset_24g_hop_btclk
+314 offset_24g_hop_interval
+315 offset_24g_ackpayload_enable
+316 offset_24g_ackpayload
+348 offset_24g_mode_switch
+349 offset_24g_pair_mode
+350 offset_24g_nodata_timer_enable
+351 offset_24g_time_slice
+352 offset_24g_mouse_addr
+356 offset_24g_kb_addr
+360 offset_24g_kb_data_sta_data
+368 offset_24g_kb_data_last_data
+376 offset_24g_kb_multikey_sta_data
+379 offset_24g_kb_multikey_last_data
+382 offset_24g_kb_blank_data_enable
+383 offset_24g_kb_mul_blank_data_enable
+384 offset_24g_ms_blank_data_enable
+385 offset_24g_dg_last_ch
+386 offset_24g_dg_ch_number
+387 offset_24g_dg_config_ch_once
+388 offset_24g_kb_last_ch
+389 offset_24g_kb_ch_number
+390 offset_24g_kb_config_ch_once
+391 offset_24g_ms_last_ch
+392 offset_24g_ms_ch_number
+393 offset_24g_ms_config_ch_once
+394 offset_24g_pair_txpower
+395 offset_24g_auto_pair_switch
+)
+
+(
+3 QUEUE_ELE_COUNT
+32 QUEUE_ELE_LENGTH
+)
+
+(
+3 retry_24g
+1 NO_ACK_24G
+0 WITH_ACK_24G
+
+0 ENSURE_OFF_24G
+1 ENSURE_ON_24G
+
+0x10 ABORT_DATA
+0x40 RSSI_SENSITIVITY
+
+0x4e G24_PAIR_CH
+)
+
+(
+0 disable_24g
+1 tx_24g
+2 rx_24g
+
+0 bit_ack_24g
+)
+
+//mem_24g_interrupt
+(
+0 rx_dr
+1 rx_sync
+4 tx_ds
+5 tx_fail
+)
+
+//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 STATE_24G_STOP
+0 STATE_24G_START
+1 STATE_24G_PAIR
+2 STATE_24G_RECONN
+)
+
+//mem_24g_pairing_sm
+(
+0 STATE_24G_PAIRING_NULL
+4 STATE_24G_PAIRING_0
+1 STATE_24G_PAIRING_1
+2 STATE_24G_PAIRING_2
+3 STATE_24G_PAIRING_3
+0X11 STATE_24G_PAIRING_1_WAITING_ACK
+0X12 STATE_24G_PAIRING_2_WAITING_ACK
+0X13 STATE_24G_PAIRING_3_WAITING_ACK
+0XFF STATE_24G_PAIRING_SUCCESS
+)
+
+(
+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
+)
+
+(
+0x01 DATATYPE_MOUSE	//mouse
+0x02 DATATYPE_KEYBOARD	//keyboard
+0xAA DATATYPE_BIND		//bind step 1
+0x55 DATATYPE_CONFIG	//bind step 2
+0x22 DATATYPE_OK	//bind step 3
+
+0x01 BIND_MOUSE
+0x02 BIND_KEYBOARD
+)
+
+(
+112 G24_DONGLE_ADDR
+)
+
+(
+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
+)
+
+//user defined cmd
+(
+0xb0 COMMAND_USER_DEFINED
+)
+
+(
+0x15 PRODUCT_ID
+0 FW_VERSION0
+0 FW_VERSION1
+1 FW_VERSION2
+7 FW_VERSION3
+)
+
+
+(
+8 TIMER_NODATA
+640 TIMER_NODATA_DELAY	//200ms
+
+11 TIMER_MS_BLANK
+320 TIMER_MS_BLANK_DELAY
+
+12 TIMER_KB_MUL_BLANK
+320 TIMER_KB_MUL_BLANK_DELAY
+
+14 TIMER_KB_BLANK
+320 TIMER_KB_BLANK_DELAY
+)
+
+(
+0 KB_NORMAL_REPORT_ID
+1 MS_REPORT_ID
+3 KB_MULTIKEY_REPORT_ID
+)
+
+(
+7 RSSI_BUF_LEN_SIGNAL
+255 RSSI_BUF_LEN_NOISE
+0x50 RSSI_THRESH_NOISE
+
+0x77 RSSI_DIS_MIN_24G
+0x82 RSSI_DIS_MAX_24G
+
+0x75 RSSI_DIS_MIN_BLE
+0x80 RSSI_DIS_MAX_BLE
+)
+
+(
+//power control
+0x01 TXPWR_0DB
+0x02 TXPWR_3DB
+0x04 TXPWR_5DB
+0x10 TXPWR_f5DB
+
+124 POWER_CTRL_MAX_PACKET_CNT
+
+2 POWER_CTRL_LOSSPAC_THRESH_UP0
+0 POWER_CTRL_LOSSPAC_THRESH_DOWN0
+0x20 POWER_CTRL_RSSI_THRESH_DOWN0
+
+5 POWER_CTRL_LOSSPAC_THRESH_UP1
+0 POWER_CTRL_LOSSPAC_THRESH_DOWN1
+0x60 POWER_CTRL_RSSI_THRESH_DOWN1
+
+10 POWER_CTRL_LOSSPAC_THRESH_UP2
+0 POWER_CTRL_LOSSPAC_THRESH_DOWN2
+0x80 POWER_CTRL_RSSI_THRESH_DOWN2
+)
+
+//mem_send_data_24g_short_lpm
+(
+0 SHORT_LPM_STATE_POLLING 	
+1 SHORT_LPM_STATE_DATA
+2 SHORT_LPM_STATE_NODATA
+3 SHORT_LPM_STATE_BUTTON_WHEEL
+)
+
+(
+81000 G24_8125_INTERVAL_PARAM
+78000 G24_78125_INTERVAL_PARAM
+)
+
+(
+1 G24_TX_TIMER_INT_ENABLE
+0 G24_TX_TIMER_INT_DISABLE
+)
+
+(
+0 G24_DISCONN_STATE
+1 G24_CONN_STATE
+
+
+8 G24_CH_NUMBER
+16 G24_CH_POLL_COUNT
+0x0708 G24_DISCONN_NODATA_TIMER
+0x1e G24_FIRST_DISCONN_NODATA_TIMER //0x3c
+)
+
+
+
+0x022d mem_h5rx_ackcnt
+0x022e mem_check_err_acl_cont
+0x022f mem_rp_packets
+0x0230 mem_packet_type
+0x0232 mem_hci_sniff_conn_handle
+0x0234 mem_hci_sniff_max_interval
+0x0236 mem_hci_sniff_min_interval
+0x0238 mem_hci_sniff_attempt
+0x023a mem_hci_sniff_timeout
+0x023c mem_voice_setting
+0x023e mem_retransmission_effort
+0x023f mem_sco_ptype
+0x0241 mem_extm_uap_restore
+0x0244 mem_h5rx_rptr
+0x0246 mem_h5rx_ack
+0x0247 mem_h5tx_ack
+0x0248 mem_h5tx_rptr
+0x024a mem_h5tx_wptr
+0x024c mem_h5tx_free
+0x024e mem_h5rx_tmp
+0x024f mem_h5tx_seq
+0x0250 mem_hci_acl_queue_wptr
+0x0252 mem_hci_acl_queue_rptr
+0x0254 mem_hci_acl_queue_end
+0x0256 mem_hci_acl_queue_wcnt
+0x0257 mem_hci_acl_cnt
+0x0258 mem_hci_acl_tx_trigger_wptr//tx via uart
+0x025a mem_hci_curr_len
+0x025b mem_hci_curr_target
+
+
+15 hci_flag_rp
+//mem_hci_options bit map
+(
+1 hci_option_h4
+2 hci_option_protocol2
+3 hci_option_protocol3
+4 hci_option_uart
+5 hci_option_usb
+6 hci_option_phy2
+7 hci_option_phy3
+)
+// UART baud rate @6MHz
+(
+0 uart_ctrl_bit_enable
+3 uart_ctrl_bit_slip_protocol
+
+)
+
+//bit map of core_uart_ctrl
+(
+
+)
+//bit map of core_uart_status
+(
+0 uart_status_tx_fifo_full
+1 uart_status_tx_fifo_empty
+2 uart_status_tx_busy
+3 uart_status_rx_fifo_empty
+
+)
+//HCI H4 LOG related
+(
+0x4850 mem_hci_log
+8 hci_log_size
+100 hci_log_cnt
+
+)
+//HCI H4 Packet TYPE
+(
+0x01 HCI_H4_TYPE_CMD
+0x02 HCI_H4_TYPE_ACL
+0x04 HCI_H4_TYPE_EVENT
+
+)
+// HCI command opcode group field values
+(
+0x01 HCI_OGF_LINK_CONTROL
+0x02 HCI_OGF_LINK_POLICY
+0x03 HCI_OGF_BASEBAND
+0x04 HCI_OGF_INFO
+0x05 HCI_OGF_STATUS
+0x06 HCI_OGF_TEST
+0x08 HCI_OGF_LOW_ENERGY
+0x3e HCI_OGF_LOGO_TESTING
+0x3f HCI_OGF_VENDOR_SPECIFIC
+)
+
+// HCI link control opcode command field values, OGF=1
+(
+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
+)
+
+
+// HCI link policy commands OCF value, OGF=2
+(
+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
+)
+
+// HCI host controller and baseband commands OCF values, OGF=3
+(
+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
+)
+
+
+// HCI informational parameters OCF values, OGF=4
+(
+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
+)
+
+// HCI status parameters OCF values, OGF=5
+(
+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
+)
+
+// HCI testing command OCF values, OGF=6
+(
+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
+)
+
+// HCI vendor specific command OCF values -OGF=3F
+(
+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
+)
+
+//HCI LE controller command OCF values, OGF=8
+(
+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
+)
+// HCI event code
+(
+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
+)
+//HCI LE SUBEVENT CODE
+(
+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
+)
+
+(
+0x00 HCI_LPM_OFF
+0x01 HCI_LPM_ON
+)
+
+
+(
+33 HOST_WAKE_TIME
+)
+
+(
+1 HCI_RX_WAKE
+0 HCI_RX_READY
+)
+
+
+(
+/*HID TYPE*/
+0x01 HID_TYPE_CONTROL
+0x04 HID_TYPE_GET_REPORT
+0x05 HID_TYPE_SET_REPORT
+0x07 HID_TYPE_SET_PROTOCOL
+0x09 HID_TYPE_SET_IDLE
+0x0a HID_TYPE_DATA
+/*HID REPORT ID*/
+0x01 HID_REPORT_ID_KB
+
+0x00 HID_CONTROL_P_NOOPERATION
+0x01 HID_CONTROL_P_HARDRESET
+0x02 HID_CONTROL_P_SOFTRESET
+0x03 HID_CONTROL_P_SUSPEND
+0x04 HID_CONTROL_P_EXITSUSPEND
+0x05 HID_CONTROL_P_VIRTUALCABLEUNPLUG
+)
+
+
+
+
+
+
+
+
+//0 mem_kscan_head_ptr
+//1 mem_col_num
+//1 mem_row_num
+//4 mem_col_conf_pin
+//4 mem_row_conf_pin
+//1 mem_row_count
+//1 mem_count_shift
+//2 mem_kscan_value_temp
+//2 mem_kscan_lastvalue
+//2 mem_kscan_value
+//4 mem_btclk_kscan
+//1 mem_btclk_kscan_interval
+
+
+0x00 KEYSCAN_OFFECT_COL_NUM
+0x01 KEYSCAN_OFFECT_ROW_NUM
+0x02 KEYSCAN_OFFECT_COL_CONF_PIN
+0x06 KEYSCAN_OFFECT_ROW_CONF_PIN
+
+0x0a KEYSCAN_OFFECT_ROW_COUNT
+0x0b KEYSCAN_OFFECT_SHIFT_COUNT
+
+0X0C KEYSCAN_OFFECT_VALUE_TEMP
+0X0E KEYSCAN_OFFECT_LASVALUE
+0X10 KEYSCAN_OFFECT_VALUE
+0x12 KEYSCAN_OFFECT_BTCLK
+0x16 KEYSCAN_OFFECT_BTCLK_INTERVAL
+
+
+
+0x025d mem_l2cap_mem_start
+0x025d mem_l2cap_rxbuff1_len
+0x025f mem_l2cap_rxbuff2_len
+0x0261 mem_l2cap_rxbuff_new
+0x0263 mem_l2cap_rxbuff_inuse
+0x0264 mem_l2cap_payload_ptr
+0x0266 mem_l2cap_rx_pkt_length
+0x0268 mem_l2cap_rx_cid
+0x026a mem_l2cap_rx_done
+0x026b mem_l2cap_signal_tx_buff_ptr
+0x026d mem_l2cap_signal_tx_payload_ptr
+0x026f mem_l2cap_signal_tx_length
+0x0271 mem_sdp_tx_buff_ptr
+0x0273 mem_sdp_tx_payload_ptr
+0x0275 mem_sdp_tx_pkt_length
+0x0277 mem_rfcomm_tx_buff_ptr
+0x0279 mem_rfcomm_tx_payload_ptr
+0x027b mem_rfcomm_tx_pkt_length
+0x027d memL2CAP_T1
+0x027f mem_CONTROL_tasks
+0x0280 mem_send_config_req
+0x0281 mem_config_identifier
+0x0282 mem_config_req_dest_CID
+0x0284 mem_rfcomm_malloc_fail_flag
+0x0285 mem_message_to_uppersm
+0x0286 mem_upper_sm_remote_page
+0x0287 mem_upper_sm_reconn
+0x0288 mem_upper_sm_ss
+0x0289 mem_tx_malloc_log
+0x02c9 mem_l2cap_mem_end
+0x02c9 mem_scid
+0x02cb mem_cmd_length
+0x02cd mem_tt2
+0x02cf mem_tt3
+0x02d1 mem_id
+0x02d3 mem_psm
+0x02d5 mem_l2cap_sdpres_delay_time
+
+
+
+//mem_l2cap_lpm_txbuf
+(
+256 l2cap_lpm_txbuf_len
+)
+
+(
+4 L2CAP_TX_FIFO_SIZE
+8 L2CAP_TX_BUFF_CNT
+
+)
+(
+0x0002 L2CAP_SIG_EXT_FEATRUE
+0x0003 L2CAP_SIG_FIX_FEATRUE
+)
+
+
+(
+0 HS_IDLE
+1 AG_INIT_CALL
+2 HS_INIT_CALL
+)
+(
+0 M_ACL_LINK_ABSENT
+1 M_ACL_LINK_EXIST
+)
+
+(
+0 L2CAP_INUSE_BUFF1
+1 L2CAP_INUSE_BUFF2
+)
+/* upper layer interface w/ lower layer */
+(
+1 MAX_NUM_LINKS_ALLOWED
+1 MAX_NUM_SCO_ALLOWED
+1 ACL_LINK_PRESENT
+0 ACL_LINK_ABSENT
+)
+(
+1 L2CAP_RX_DONE 
+0 L2CAP_RX_CLEAR
+)
+/* Scheduler */
+(
+0 L2CAP_DISCONNECT_INTERRUPT
+1 RFCOMM_wants_service
+2 L2CAP_sig_Tx_buff_full
+3 RFCOMM_Tx_buff_full
+4 SDP_Tx_buff_full
+5 got_complete_L2CAP_pkt	
+6 L2CAP_init_Config_Req
+7 L2CAP_DISCONNECT_CONTROL
+)
+
+/* mem_CONTROL_tasks2 */
+(
+0 UI_NEED_SERVICE
+)
+/* L2CAP logic channel identifiers (2 bytes) p.261 */
+(
+0x0001 L2CAP_signal_channel
+0x0050 L2CAP_SDP_channel
+0x0051 L2CAP_RFCOMM_channel
+0x0052 L2CAP_HID_Control_channel   
+0x0053 L2CAP_HID_Interrupt_channel
+0x0077 L2CAP_AVDTP_signal_channel		//------avdtp
+0x0078 L2CAP_AVDTP_media_channel
+0x0079 L2CAP_AVDTP_report_channel
+0x0080 L2CAP_AVDTP_recovery_channel
+0x00dd L2CAP_AVCTP_Control_channel
+)
+/* L2CAP signalling command codes (1 byte) p.284 */
+(
+0x00 reserved
+0x01 signal_cmd_reject
+0x02 signal_connect_req
+0x03 signal_connect_rsp
+0x04 signal_config_req
+0x05 signal_config_rsp
+0x06 signal_disconnect_req
+0x07 signal_disconnect_rsp
+0x08 signal_echo_req
+0x09 signal_echo_rsp
+0x0a signal_info_req
+0x0b signal_info_rsp
+)
+/* L2CAP signal_command_reject reason code (2 bytes), p.285 */
+(
+0x0000 cmd_not_understood
+0x0001 signalling_MTU_exceeded
+0x0002 invalid_CID_in_req
+)
+/* L2CAP PSM values used in signal_connect_req (2 bytes), p.286 */
+(
+0x0001 PSM_SDP
+0x0003 PSM_RFCOMM
+0x0005 PSM_TCS
+0x0011 PSM_HID_control
+0x0013 PSM_HID_interrupt
+0x0017 PSM_AVCTP
+0x0019 PSM_AVDTP
+)
+/* L2CAP connection response result code (2 bytes), p.288 */
+(
+0x0000 L2CAP_connect_successful
+0x0001 L2CAP_connect_pending
+0x0002 L2CAP_connect_refused_PSM_unsupported
+0x0003 L2CAP_connect_refused_security_block
+0x0004 L2CAP_connect_refused_no_resources
+)
+/* L2CAP connection status values (2 bytes), p.288 */
+(
+0x0000 L2CAP_no_info_available
+0x0001 L2CAP_authentication_pending
+0x0002 L2CAP_authorization_pending
+)
+/* L2CAP configuration response result code (2 bytes), p.292 */
+(
+0x0000 L2CAP_config_success
+0x0001 L2CAP_config_failure_bad_parameters
+0x0002 L2CAP_config_failure_no_reason
+0x0003 L2CAP_config_failure_unknown_options
+)
+/* L2CAP constant definitions */
+(
+128 L2CAP_Rx_buff_size
+48  L2CAP_signal_Tx_buff_size
+128 SDP_Tx_buff_size
+128 RFCOMM_Tx_buff_size
+1 AM_ADDRESS
+3 DM1TYPE
+4 DH1TYPE
+11 DH3TYPE
+8 DVTYPE
+0 channel_state_closed
+1 channel_state_config
+2 channel_state_open
+0x0030 L2CAP_config_MTU_SDP
+0xffff L2CAP_config_ftimeout_SDP
+0x03e3 L2CAP_config_MTU_RFCOMM
+0xffff L2CAP_config_ftimeout_RFCOMM
+260 l2cap_max_pkt_len
+)
+
+(
+0 FAILURE
+1 SUCCESS
+2 IN_PROGRESS
+)
+(
+0x00	IDLE
+0x01	WAIT_4_BB_PAGE
+0x02	WAIT_4_LMP_CONN
+0x03	WAIT_4_SCO_CONN
+0x04	WAIT_4_SCO_KILLED
+)
+
+/*mem_master_mss*/
+(
+0 STOP_ENC
+1 SEND_SWITCH_REQ
+)
+(
+0 HF_HS_READY
+1 HF_AG_READY
+)
+/* mem_hf_state */
+(
+0 HF_STATE_WAITING_RFCOMM_CONN
+1 HF_STATE_HF_SEND_FEATURE
+2 HF_STATE_WAITING_AG_FEATURE_OK
+3 HF_STATE_HF_SEND_INDICATORS
+4 HF_STATE_WAITING_AG_INDICATORS_OK
+5 HF_STATE_HF_SEND_CURR_STATUS
+6 HF_STATE_WAITING_AG_STATUS_OK
+7 HF_STATE_HF_SEND_UPDATE_STATUS
+8 HF_STATE_WAITING_AG_UPDATE_STATUS_OK
+9 HF_STATE_CONNECTED
+0x0a HF_STATE_HF_SEND_RECEIVE_INFO
+0x0b HF_STATE_WAITING_AG_INFO
+0x0c HF_STATE_HF_SEND_AT_CLIP
+0x0d HF_STATE_WAITING_AT_CLIP
+0x0e HF_STATE_HF_SEND_AT_CCWA
+0x0f HF_STATE_WAITING_AT_CCWA
+)
+/*mem_hf_call_state*/
+(
+0 HF_CALL_STATE_INACTIVE
+1 HF_CALL_STATE_SETUP
+2 HF_CALL_STATE_ACTIVE 
+)
+/* mem_pairing_state bit definition */
+(
+0 PAIR_INQUIRY_START
+1 PAIR_INQUIRY_TIME_OUT
+2 PAIR_INQUIRY_FAILED
+3 PAIR_INQUIRY_SUCCESS
+4 PAIR_READY_CONN
+5 PAIR_WAIT_CANCEL_RESPONSE
+6 PAIR_CONN_SUCCESS
+7 PAIR_WAIT_DETACH
+)  
+
+/* mem_pairing_mode bit definition */
+(
+0 FORCE_AUTHENTICATION
+)
+/* mem_hid_protecol_type */
+(
+0 PROTECOL_BOOT /*default*/
+1 PROTECOL_REPORT
+)
+
+/* mem_upper_sm_reconn */
+(
+1 UPPERSM_SEND_SDP_CONN_REQ
+2 UPPERSM_SEND_SDP_CFG_REQ
+3 UPPERSM_SEND_SDP_HF_SS
+4 UPPERSM_SEND_SDP_DISC_REQ
+5 UPPERSM_SEND_RFCOMM_CONN_REQ
+6 UPPERSM_SEND_RFCOMM_CFG_REQ
+7 UPPERSM_SEND_SABM_CMD
+8 UPPERSM_SEND_DISC
+9 UPPERSM_SEND_WAIT
+10 UPPERSM_SEND_HID_CONTROL_CONN_REQ
+11 UPPERSM_SEND_HID_CONTROL_CFG_REQ
+12 UPPERSM_SEND_HID_INTERRUPT_CONN_REQ
+13 UPPERSM_SEND_HID_INTERRUPT_CFG_REQ
+14 UPPERSM_SEND_SDP_HS_SS
+15 UPPERSM_SEND_SDP_PBAP_SS
+16 UPPERSM_SEND_SDP_AVTARG_SS
+)
+/* mem_upper_sm_remote_page */
+(
+1 UPPERSM_RP_SEND_SDP_CONN_REQ
+2 UPPERSM_RP_SEND_SDP_CFG_REQ
+3 UPPERSM_RP_SEND_SDP_HF_SS
+4 UPPERSM_RP_SEND_SDP_HS_SS
+5 UPPERSM_RP_SEND_SDP_PBAP_SS
+6 UPPERSM_RP_SEND_SDP_AVTARG_SS
+7 UPPERSM_RP_SEND_SDP_DISC_REQ
+8 UPPERSM_RP_SEND_AVCTP_CONN_REQ
+9 UPPERSM_RP_SEND_AVCTP_CFG_REQ
+)
+
+/* mem_ML2CAP_flag */
+(
+0 MSCHEDULER_HID_CONTROL_CONN_DONE
+1 MSCHEDULER_HID_INTERRUPT_CONN_DONE
+2 MSCHEDULER_HID_CONTROL_CFG_REQ_DONE
+3 MSCHEDULER_HID_CONTROL_CFG_RSP_DONE
+4 MSCHEDULER_HID_INTERRUPT_CFG_REQ_DONE
+5 MSCHEDULER_HID_INTERRUPT_CFG_RSP_DONE
+6 MSCHEDULER_HID_CONTROL_DISC_DONE
+7 MSCHEDULER_HID_INTERRUPT_DISC_DONE
+)
+/*    ui event    --add by lj*/
+(
+0x00 UI_DATA_EVNET_NONE
+0x01 UI_DATA_EVNET_HID
+0x02 UI_DATA_EVNET_AVDTP_S
+0x03 UI_DATA_EVNET_AVDTP_M
+0x04 UI_DATA_EVNET_AVCTP
+0x05 UI_DATA_EVNET_HS
+0x06 UI_DATA_EVNET_HF
+0x07 UI_DATA_EVNET_SPP
+0x08 UI_DATA_EVNET_OBEX
+)
+/*    ui ack --add by lj*/
+(
+0x00 UI_DATA_TX_NONE
+0x01 UI_DATA_TX_HID
+0x02 UI_DATA_TX_AVDTP_S
+0x03 UI_DATA_TX_AVDTP_M
+0x04 UI_DATA_TX_AVCTP
+0x05 UI_DATA_TX_HS
+0x06 UI_DATA_TX_HF
+0x07 UI_DATA_TX_SPP
+0x08 UI_DATA_TX_OBEX
+0x10 ACL_TX_L2CAP_SIGNAL
+0x11 ACL_TX_SDP
+0x12 ACL_TX_RFCOMM
+
+)
+
+(
+0 L2CAP_SDP_interface_conn
+1 L2CAP_SDP_interface_cfg
+)
+
+(                                   
+0 L2CAP_CHANNEL_STATE_CONN_REQ      
+1 L2CAP_CHANNEL_STATE_CONN_RES      
+2 L2CAP_CHANNEL_STATE_SND_CFG_REQ   
+3 L2CAP_CHANNEL_STATE_SND_CFG_RES   
+4 L2CAP_CHANNEL_STATE_RCV_CFG_REQ   
+5 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+6 L2CAP_CHANNEL_RFCOMM_ONLY_SABM
+7 L2CAP_CHANNEL_RFCOMM_ONLY_UA
+6 L2CAP_CHANNEL_AVDTP_SIGNAL_INIT //set avdtp init complete
+6 L2CAP_CHANNEL_HID_HANDSHAKE_DONE
+0x3f L2CAP_CHANNEL_SETUP_COMPLETE
+0x7f L2CAP_CHANNEL_AVDTP_SIGNAL_COMPLETE
+0xff L2CAP_CHANNEL_RFCOMM_DLCI0_OPENED
+)                                     
+
+/*  AVDTP---lj*/
+(
+0 L2CAP_AVDTP_SIGNAL_CONNECT
+1 L2CAP_AVDTP_SIGNAL_CONFIG
+2 L2CAP_AVDTP_MEDIA_CONNECT
+3 L2CAP_AVDTP_MEDIA_CONFIG
+4 L2CAP_AVDTP_REPORT_CONNECT
+5 L2CAP_AVDTP_REPORT_CONFIG
+6 L2CAP_AVDTP_RECOVERY_CONNECT
+7 L2CAP_AVDTP_RECOVERY_CONFIG
+)
+/*  AVCTP---lj*/
+(
+0 L2CAP_AVCTP_SIGNAL_CONNECT
+1 L2CAP_AVCTP_SIGNAL_CONFIG
+)
+
+127 L2CAP_SIGNAL_MALLOC_SIZE
+
+//1 mem_rfcomm_malloc_fail_flag
+(
+0 RFCOMM_MALLOC_SUCCEED
+1 RFCOMM_MALLOC_FAIL
+)
+
+//mem_l2cap_flow_ctrl_flag
+(
+0 L2CAP_FLOW_CTRL_DISABLE
+1 L2CAP_FLOW_CTRL_ENABLE
+)
+
+
+0x02d9 mem_le_rxbuf
+0x0311 mem_le_l2capbuf
+0x0417 mem_le_mic
+0x041b mem_le_peer_mic
+0x041f mem_le_peer_ltk
+0x042f mem_le_mrand
+0x043f mem_le_state
+0x0440 mem_le_mode
+0x0441 mem_le_tsniff
+0x0443 mem_le_anchor
+0x0447 mem_le_clk_offset
+0x044d mem_le_receive_window
+0x044f mem_le_plap
+0x0455 mem_le_conn_handle
+0x0456 mem_le_arq
+0x0457 mem_le_ch
+0x0458 mem_le_hop
+0x0459 mem_le_event_count
+0x045b mem_le_supervision_timer
+0x045f mem_le_instant
+0x0461 mem_le_channels
+0x0462 mem_le_op
+0x0463 mem_le_access
+0x0467 mem_le_crcinit
+0x046a mem_le_window_size
+0x046b mem_le_slave_latency
+0x046d mem_le_superto
+0x046f mem_le_channel_map
+0x0474 mem_le_no_using
+0x0476 mem_le_peer_sca
+0x0477 mem_le_att_opcode
+0x0478 mem_le_att_handle
+0x047a mem_le_err_code
+0x047b mem_le_ll_pairing_fail_reason
+0x047c mem_le_sk
+0x048c mem_le_testtype
+0x048d mem_le_test_sync
+0x048f mem_le_test_pcnt
+0x0491 mem_le_rxon_ts
+0x0497 mem_le_rx_ll_opcode
+0x0498 mem_le_notify_attr_start
+0x049a mem_le_notify_len
+0x049b mem_cmd_le_create_conn
+0x049c mem_le_cur_attlist_start_ptr
+0x049e mem_le_cur_handle_start
+0x04a0 mem_le_cur_handle_end
+0x04a2 mem_le_cur_uuid_length
+0x04a3 mem_le_cur_uuid
+0x04b3 mem_le_curr_att_len
+0x04b4 mem_le_search_res
+0x04b5 mem_le_continue_type
+
+
+
+
+(
+0x000001 param_le_features
+0x000a06 param_le_version
+0x1d87 param_le_subversion
+1636 param_sifs
+0x1e0 param_clke_cal_le
+0xa0 param_le_sca
+)
+
+(
+0 DEFAULT_STATES
+1 IPHONE_LOST_LTK
+2 MODULE_LOST_LTK
+3 LTK_NOT_LOST
+)
+
+
+(
+27 LE_MAX_PAKET_LEN
+)
+
+/* advertising channel PDU type */
+(
+0 ADV_IND
+1 ADV_DIRECT_IND
+2 ADV_NONCONN_IND
+3 SCAN_REQ
+4 SCAN_RSP
+5 CONNECT_REQ
+6 ADV_SCAN_IND
+)
+
+(
+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
+0xff	GAP_ADTYPE_MANUFACTURER_SPECIFIC
+)
+
+
+	/* LE control packet type */
+	(
+	0x00 LL_CONNECTION_UPDATE_REQ
+	0x01 LL_CHANNEL_MAP_REQ
+	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
+	)
+
+	/* Security Manager Protocol Code */
+	(
+	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
+	)
+
+	/* L2CAP Signaling OPCODE */
+	(
+	0x12 L2CAP_CONNECTION_PARAMETER_UPDATE_REQUEST
+	0x13 L2CAP_CONNECTION_PARAMETER_UPDATE_RESPONSE
+	)
+
+	/* ATT OPCODE */
+	(
+	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
+	)
+
+	/* ATT error code */
+	(
+	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
+	)
+	/*	SERVICE UUID	*/
+	(
+	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	
+	)
+
+	(// 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
+	)
+
+
+	//BLE ErrorCodes
+	(    
+	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
+	)
+
+
+	//modified_name
+	(
+	0x14 MAX_NAME_LEN
+	0x16 ADV_DATA_NAME_LEN
+	0X20 SPACE
+	
+	)
+	/* GATT Specifications*/
+	(
+	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
+	)
+	/* LE L2CAP CID */
+	(
+	0x0004 LE_L2CAP_CID_ATT
+	0x0005 LE_L2CAP_CID_SIGNAL
+	0x0006 LE_L2CAP_CID_SMP
+	)
+
+	//LE address type
+	(
+	0 LE_ADDR_TYPE_PUBLIC
+	1 LE_ADDR_TYPE_RANDOM
+	)
+	//LE address type bitmap
+	(
+	7 LE_RECEIVER_ADDR_BIT
+	6 LE_SENDER_ADDR_BIT
+	)
+	//LE SCAN TYPE
+	(
+	0x00 LE_SCAN_TYPE_PASSIVE //no SCAN_REQ shall be sent
+	0x01 LE_SCAN_TYPE_ACTIVE
+	)
+
+	//LE SCAN ENABLE
+	(
+	0x00 LE_SCAN_DISABLE
+	0x01 LE_SCAN_ENABLE
+	0x0101 LE_ACTIVE_SCAN_ENABLE
+	)
+
+	//LE FIND INFORMATION RESPONSE
+	//THE FORMAT OF THE INFORMATION DATA
+	(
+	0x01 UUID_SIZE_16BIT
+	0x02 UUID_SIZE_128BIT
+	)
+
+	(
+	0x0000 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_ACCEPTED
+	0x0001 BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_REJECTED
+	)
+
+//	le_state_map 0-2 is reserved for state_inconn,state_insniff and state_sco
+(
+3 lestate_got_first_packet
+4 lestate_encryption
+5 lestate_update_param
+6 lestate_update_map
+)
+
+// 	le mode
+(
+0 lemode_idle
+1 lemode_slave
+3 lemode_master
+)
+
+
+(
+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
+)
+
+(
+0x00 LE_PAIRING_MODE_NONE
+0x01 LE_PAIRING_MODE_LAGACY_JUSTWORK
+0x02 LE_PAIRING_MODE_LAGACY_PASSKEY
+0x81 LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK
+0x82 LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC
+0x83 LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY
+
+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  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
+)
+
+
+(
+96000 TIMER_SMP_PAIRING_TIMEOUT //30S
+)
+//mem_le_pairing_state
+(
+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_AUTH
+5 FLAG_LE_PAIRING_AFTER_AUTH
+6 FLAG_LE_PAIRING_SEND_START_ENC_RSP
+7 FLAG_LE_PARING_SEND_ENC_INFORMATION
+8 FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION 
+9 FLAG_LE_PARING_SEND_INDENTITY_INFORMATION
+0xff FLAG_LE_PAIRING_END
+)
+
+
+
+/*LE secure connect state */
+(
+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
+)
+
+//mem_le_enc_state
+(
+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
+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
+
+)
+
+(
+0 BIT_ADV_CHANNEL_MAP_37
+1 BIT_ADV_CHANNEL_MAP_38
+2 BIT_ADV_CHANNEL_MAP_39
+)
+
+
+
+
+0x04b6 mem_lmo_header_length
+0x04b7 mem_lmo_header_opcode
+0x04b8 mem_lmo_payload
+0x04c9 mem_lmi_accepted_opcode
+0x04ca mem_disconn_reason_send
+0x04cb mem_tx_fixed_freq
+0x04cc mem_rx_fixed_freq
+0x04cd mem_ext_features_page
+0x04ce mem_lmpext_ssp_enable
+0x04d0 mem_remote_sppcap
+0x04d1 mem_lmp_conn_state
+0x04d2 mem_soft_timer
+0x04d4 mem_pincode_state
+0x04d5 mem_sres_tid
+0x04d6 mem_accptsco_tid
+0x04d7 mem_auth_enable
+0x04d8 mem_wait_encryption
+0x04d9 mem_sniff_payload
+0x04e9 mem_aurand_send_delay_time
+
+
+	(
+	//bit flag:mem_classic_bt_flag
+	0 FLAG_SSP_REJECT_JUSTWORK
+	1 SHORT_MULT_FLAG
+	)
+	
+	(
+	//bit map
+	0 pair_state_inrand
+	1 pair_state_inrand_acpt
+	2 pair_state_send_comb
+	3 pair_state_recv_comb
+	4 pair_state_send_aurand
+	5 pair_state_recv_sres
+	6 pair_state_recv_aurand
+	7 pair_state_send_sres	
+	)
+	/* LMP opcodes */
+	(
+	1 LMP_NAME_REQ 
+	2 LMP_NAME_RES 
+	3 LMP_ACCEPTED 
+	4 LMP_NOT_ACCEPTED 
+	5 LMP_CLKOFFSET_REQ 
+	6 LMP_CLKOFFSET_RES 
+	7 LMP_DETACH 
+	8 LMP_IN_RAND 
+	9 LMP_COMB_KEY 
+	10 LMP_UNIT_KEY 
+	11 LMP_AU_RAND 
+	12 LMP_SRES 
+	13 LMP_TEMP_RAND 
+	14 LMP_TEMP_KEY 
+	15 LMP_ENCRYPTION_MODE_REQ 
+	16 LMP_ENCRYPTION_KEY_SIZE_REQ 
+	17 LMP_START_ENCRYPTION_REQ 
+	18 LMP_STOP_ENCRYPTION_REQ 
+	19 LMP_SWITCH_REQ 
+	20 LMP_HOLD
+	21 LMP_HOLD_REQ
+	23 LMP_SNIFF_REQ 
+	24 LMP_UNSNIFF_REQ 
+	26 LMP_PARK_REQ 
+	27 LMP_SET_BROADCAST_SCAN_WINDOW 
+	28 LMP_MODIFY_BEACON 
+	29 LMP_UNPARK_BD_ADDR_REQ 
+	30 LMP_UNPARK_PM_ADDR_REQ 
+	31 LMP_INCR_POWER_REQ 
+	32 LMP_DECR_POWER_REQ 
+	33 LMP_MAX_POWER 
+	34 LMP_MIN_POWER 
+	35 LMP_AUTO_RATE 
+	36 LMP_PREFERRED_RATE 
+	37 LMP_VERSION_REQ 
+	38 LMP_VERSION_RES 
+	39 LMP_FEATURES_REQ 
+	40 LMP_FEATURES_RES 
+	41 LMP_QUALITY_OF_SERVICE 
+	42 LMP_QUALITY_OF_SERVICE_REQ 
+	43 LMP_SCO_LINK_REQ 
+	44 LMP_REMOVE_SCO_LINK_REQ 
+	45 LMP_MAX_SLOT 
+	46 LMP_MAX_SLOT_REQ 
+	47 LMP_TIMING_ACCURACY_REQ 
+	48 LMP_TIMING_ACCURACY_RES 
+	49 LMP_SETUP_COMPLETE 
+	50 LMP_USE_SEMI_PERMANENT_KEY 
+	51 LMP_HOST_CONNECTION_REQ 
+	52 LMP_SLOT_OFFSET 
+	53 LMP_PAGE_MODE_REQ 
+	54 LMP_PAGE_SCAN_MODE_REQ 
+	55 LMP_SUPERVISION_TIMEOUT 
+	56 LMP_TEST_ACTIVATE
+	57 LMP_TEST_CONTROL
+	58 LMP_ENC_KEY_SIZE_MASK_REQ
+	59 LMP_ENC_KEY_SIZE_MASK_RES
+	60 LMP_SET_AFH
+
+	/* simple pairing support */
+	61 LMP_ENCAPSULATED_HEADER
+	62 LMP_ENCAPSULATED_PAYLOAD
+	63 LMP_SIMPLE_PAIRING_CONFIRM
+	64 LMP_SIMPLE_PAIRING_NUMBER
+	65 LMP_DHKEY_CHECK
+	127 LMP_ESCAPE
+	127 LMP_ESCAPE_4   /* add 2bytes LMP header support  */   
+	)
+	/* LMP EXT opcodes, ORed with bit 7 to make difference to nonEXT */
+	(
+	129 LMP_EXT_ACCEPTED
+	130 LMP_NOT_ACCEPTED_EXT
+	131 LMP_EXT_FEATURES_REQ
+	132 LMP_EXT_FEATURES_RES
+	139 LMP_PACKET_TYPE_TABLE_REQ
+	140 LMP_EXT_ESCO_LINK_REQ
+	141 LMP_EXT_REMOVE_ESCO_REQ
+	144 LMP_EXT_CHN_CLASSIFICATION_REQ
+	145 LMP_EXT_CHN_CLASSIFICATION
+	149 LMP_SNIFF_SUBRATING_REQ
+	150 LMP_SNIFF_SUBRATING_RES
+	151 LMP_PAUSE_ENCRYPTION_REQ
+	152 LMP_RESUME_ENCRYPTION_REQ
+	153 LMP_IO_CAP_REQ
+	154 LMP_IO_CAP_RES
+	)
+	/* LMP reason codes */
+	(
+	0x05 AUTHENTICATION_FAILURE_ERROR
+	0x06 KEY_MISSING
+	0x0b ACL_CONNECTION_ALREADY_EXISTS
+	0x13 OTHER_END_TERMINATED
+	0x15 ABOUT_TO_POEWR_OFF
+	0x16 LOCAL_HOST
+	0x18 PAIRING_NOT_ALLOWED
+	0x19 UNKNOWN_LMP_PDU
+	0x1A UNSUPPORTED_LMP_FEATURE 
+	0x1F UNSPECIFIED_ERROR
+	0x20 UNSUPPORTED_PARAMETERS
+	0x21 SWITCH_NOT_ALLOWED
+	0x23 TRANSACTION_COLLISION
+	0x24 PDU_NOT_ALLOWED
+	0x25 ENCRYPTION_MODE_NOT_ACCEPTABLE
+	0x2e NOT_SUPPORT_CHN_CLASSIFICATION
+	0x37 NOT_SUPPORT_SSP
+	)
+
+	/* test mode scenarios */
+	(
+	0 PAUSE_TEST_MODE
+	1 ZERO_PATTERN
+	2 ONE_PATTERN
+	3 ALT_PATTERN
+	4 PSEUDORANDOM
+	5 CLOSED_LOOP_BACK_ACL
+	6 CLOSED_LOOP_BACK_SCO
+	7 ACL_WITHOUT_WHITENING
+	8 SCO_WITHOUT_WHITENING
+	9 ALT2_PATTERN
+	255 EXIT_TEST_MODE
+	)
+	/* test mode hoppig modes */
+	(
+	0 FIXED_FREQ
+	1 NORMAL_HOP
+	)
+
+	/* mem_lmp_tid indicates which type of LMP will be sent */
+	(
+	0 TID_NORM_REPLY
+	1 TID_NORM_SEND
+	2 TID_ONE
+	3 TID_ZERO
+	4 TID_PAIRING
+	5 TID_ENCRYPTION
+	6 TID_VARIABLE
+	7 TID_RX
+	)
+
+	/* ============== lmp status ==========*/
+	(
+	0 lmp_incoming
+	1 lmp_outgoing
+	2 lmp_reject_msg
+	3 lmp_clear_msg
+	4 upper_reject_msg
+	5 upper_clear_msg
+	)
+
+(
+0x2ee00 TIMER_ONE_MINUTE //96000*2
+80 TIMER_SWITCH_WAITE
+12 TIMER_ENPT_WAITE
+)
+
+(
+0 SWITCH_FLAG_INIT
+1 SWITCH_FLAG_ACCEPT
+2 SWITCH_FLAG_NOT_ACCEPT
+)
+(
+0 NULL_ENCRYP
+1 DONE_ENCRYP
+)
+
+//
+//
+//Large memory blocks defined in this file.
+//Blocks Shall be defined with absolute address.
+//Blocks' length Shall be specified in comment following Blocks' names.
+//Different blocks MAY be overlap.
+//Blocks defined in this file Shall NOT be overlap with variable in memmap.format.
+
+// USB C51 exchange area
+(
+0xff0 mem_mcmd
+0xff1 mem_mouse_data
+)
+
+//l2cap RX buffers
+(
+0x1000 mem_l2cap_rxbuff1		//0x400
+0x1400 mem_l2cap_rxbuff2		//0x400
+//end address:0x17ff
+)
+//l2cap TX buffers
+(
+0x1800 mem_tx_buff0		//128
+0x1880 mem_tx_buff1		//128
+0x1900 mem_tx_buff2		//128
+0x1980 mem_tx_buff3		//128
+0x1a00 mem_tx_buff4		//128
+0x1a80 mem_tx_buff5		//128
+0x1b00 mem_tx_buff6		//128
+0x1b80 mem_tx_buff7		//128
+//end address: 0x1bff
+)
+
+(
+0x1800 mem_le_tx_buffer0
+0x1900 mem_le_tx_buffer1
+0x1a00 mem_le_tx_buffer2
+0x1b00 mem_le_tx_buffer3
+//end addr:0x1dff
+)
+
+
+//uart buffer
+(
+0x1800 mem_h5rx_buf//0x400
+0x1bff mem_h5rx_buf_end
+0x1c00 mem_h5tx_buf
+0x1fff mem_h5tx_buf_end
+)
+
+
+(
+0x1800 mem_ir_record
+0x1c      mem_ir_record_max
+)
+
+
+
+(
+	  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
+  0x8003 core_kick
+  0x8005 core_lpm_wr
+  0x8006 core_misc_ctrl
+  0x8007 core_otp_rdata
+  0x8009 core_pcmoutfifo
+  0x8010 core_reset
+  0x8011 core_encrypt
+  0x8015 core_uart_txd
+  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_xtal_stable_time
+  0x8045 core_otp_addr
+  0x8046 core_otp_din
+  0x8047 core_otp_ctrl
+  0x8048 core_otpd_addr
+  0x804a core_otpd_len
+  0x804b core_otpd_ctrl
+  0x804c core_lpm_reg
+  0x804f core_lpm_isogate
+  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_trptrp
+  0x8062 core_uart_ctrl
+  0x8063 core_bist_ctrl
+  0x8064 core_pwm_pcnt3
+  0x8066 core_pwm_ncnt3 
+  0x8068 core_pwm_pcnt4
+  0x806a core_pwm_ncnt4
+  0x806c core_pwm_pcnt5
+  0x806e core_pwm_ncnt5
+  0x8070 core_gpio_oe0
+  0x8071 core_gpio_oe1
+  0x8072 core_gpio_oe2
+  0x8073 core_gpio_oe3
+  0x8074 core_gpio_out0
+  0x8075 core_gpio_out1
+  0x8076 core_gpio_out2
+  0x8077 core_gpio_out3
+  0x8078 core_gpio_pu0
+  0x8079 core_gpio_pu1
+  0x807a core_gpio_pu2
+  0x807b core_gpio_pu3
+  0x807c core_gpio_pd0
+  0x807d core_gpio_pd1
+  0x807e core_gpio_pd2
+  0x807f core_gpio_pd3
+  0x8080 core_gpio_sel
+  0x8081 core_gpio_sel1
+  0x8082 core_gpio_sel2
+  0x8083 core_gpio_key0
+  0x8084 core_gpio_key1
+  0x8085 core_gpio_key2
+  0x8086 core_spid_ctrl
+  0x8087 core_spid_delay
+  0x8088 core_spid_txlen
+  0x808a core_spid_txaddr
+  0x808c core_spid_rxaddr
+  0x808e core_spid_rxlen
+  0x8090 core_iicd_ctrl
+  0x8091 core_iicd_scl_low
+  0x8092 core_iicd_scl_high
+  0x8093 core_iicd_start_setup
+  0x8094 core_iicd_start_hold
+  0x8095 core_iicd_stop_setup
+  0x8096 core_iicd_data_setup
+  0x8097 core_iicd_data_hold
+  0x8098 core_iicd_txlen
+  0x809a core_iicd_txaddr
+  0x809c core_iicd_rxaddr
+  0x809e core_iicd_rxlen
+  0x80a0 core_pwm_pcnt0
+  0x80a2 core_pwm_ncnt0
+  0x80a4 core_pwm_pcnt1
+  0x80a6 core_pwm_ncnt1
+  0x80a8 core_pwm_pcnt2
+  0x80aa core_pwm_ncnt2
+  0x80b0 core_enc_ctrl
+  0x80b1 core_cvsd_ctrl
+  0x80b2 core_codec_ctrl
+  0x80b3 core_dec_ctrl
+
+
+
+
+  
+  0x8108 core_misc_status
+  0x8109 core_qdec_cntx
+  0x810a core_qdec_cnty
+  0x810b core_qdec_cntz
+  0x810c core_uart_status
+  0x810d core_uart_rbaud
+  0x810e core_uart_txitems
+  0x8110 core_uart_trptr
+  0x8112 core_uart_rxitems
+  0x8114 core_uart_rdptr
+  0x8116 core_uart_rwptr
+  0x8119 core_kscn_kstat
+  0x811a core_kscn_event
+  0x811b core_kscn_event_num
+  0x811c core_gpio_in
+  0x811d core_gpio_in1
+  0x8124 core_current_otp_addr
+  0x8126 core_otpd_remain
+  0x8128 core_spid_remain
+  0x812a core_iicd_remain
+  0x812c core_dma_status
+  0x812d core_perf_status
+  0x812e core_adc_in
+  0x8134 core_pcminfifo
+  0x8135 core_pcminfifo_remain
+  0x8136 core_pcmoutfifo_remain
+  0x8138 core_lpm_ctrl
+  0x813c core_lpm_xtalcnt
+  0x813d core_lpm_buckcnt
+  0x813e core_lpm_ldocnt
+  0x813f core_lpm_latch
+  0x8140 core_gpio_wakeup_low
+  0x8144 core_gpio_wakeup_high
+  0x8149 core_clk_counter
+  0x8150 core_adc_sum
+// dummy regs  
+
+  0x8203 core_ice_ctrl
+  0x8204 core_ice_status
+  0x8205 core_ice_break0
+  0x8207 core_ice_break1
+  
+  0x8280 core_docd_ctrl
+  0x8288 core_docd_paddr
+  0x828a core_docd_pdata
+
+  0x8300 iic_prer_low		
+  0x8301 iic_slave_addr	
+  0x8302 iic_ctr					
+  0x8303 iic_cr					
+  0x8304 iic_rxr					
+  0x8305 iic_txr					
+  0x8306 iic_sr					
+  0x8307 iic_fifo				
+
+  0x8400   mem_b_box          /* entire bank */
+  0x8500   mem_e_box          /* entire bank */
+  0x8600   mem_l_box          /* entire bank */
+
+  0x8700 memk
+
+  0x8900 rfen_rx
+  0x8901 rfen_tx
+  0x8902 rfen_mdm
+  0x8903 rfen_sn
+  0x8904 rfen_msc
+  0x8905 rfen_ck
+  0x8906 rfen_adc
+  0x890a  rf_iq_gain
+  0x890b  rf_agc_nsat
+  0x890f  rf_adc_goff
+  0x8912 rf_agc_ctrl
+  0x8914 rfen_ulp
+  0x8973 rfen_chgpump
+  0x894b rf_rx_vctrl_reg1
+  0x894c rf_rx_vctrl_reg2
+  0x894d rf_rx_ib_lna
+  0x894e rf_rx_lna_ctrim
+
+  0x8950 rf_bpf_ctrim
+  0x8951 rf_bpf_ib
+  0x8952 rf_adc_rccal
+  0x8952 rf_rccal_ctrl
+  0x8953 rf_rccal_sel
+  0x8955 rf_tx_pa_ib
+  0x8956 rf_tx_pa_gc
+  0x895f rf_pll_rstn
+  0x8964 rf_sdm_en
+  0x8960 rf_pll_intg
+  0x8961 rf_pll_frac
+  0x8963 rf_pll_frachi
+  0x896c rf_afc_cap
+  0x8967 rf_clkpll_bias
+  0x896f rf_clkpll_en
+  0x8968 rf_clkpll_int
+  0x8969 rf_clkpll_frac
+  0x896d rf_balun_ctrim
+  0x8971 rf_adc_mode
+  0x8972 rf_adc_gc
+  0x8973 rf_adc_ch
+  0x8980 rf_rccal_result
+  0x8981 rf_afc_d2a
+  0x8982 rf_rssi
+
+
+0x8a00 core_usb_config		
+0x8a01 core_usb_int_mask	
+0x8a04 core_usb_addr
+0x8a10 core_usb_trig	
+0x8a11 core_usb_stall		
+0x8a12 core_usb_clear		
+0x8a18 core_usb_ep
+0x8a18 core_usb_dfifo0 
+0x8a19 core_usb_dfifo1  
+0x8a1a core_usb_dfifo2 
+0x8a20 core_usb_ep_len
+0x8a26 core_usb_status		
+0x8a27 core_usb_fifo_empty
+0x8a28 core_usb_fifo_full
+
+
+4 rx_freq_offset
+1 tx_freq_offset
+
+/* bit difinitions */
+  4 whiteoff_bit
+  6 clksel_rc
+  5 clksel_dpll
+  4 clksel_xtal
+  5 adc_rccal
+  0 bpf_rccal
+  1 demod_clkoff
+
+(
+  2 reload_code
+  3 gpio_latch
+  4 enable_retmem
+  7 cold_wake
+  0xef isogate_mask
+  0xe0 cs_mask
+)
+
+// misc ctrl
+(
+  0x01 otpd_start
+  0x02 spid_start
+  0x04 iicd_start
+  0x08 lock_otp
+  0x10 x_sethi
+  0x20 y_sethi
+  0x40 z_sethi
+  0x80 ccnt_start
+)
+// dma status bit
+(
+  0 otpd_crcok
+  1 otpd_done
+  2 spid_crcok
+  3 spid_done
+  4 iicd_crcok
+  5 iicd_done
+  6 iicd_ack
+)
+
+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
+0x2dc6c00 uart_clk
+0x16E3600 uart_clk_24
+
+//core_clkoff
+(
+	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_8051
+	9 CLOCK_OFF_KEYSCAN
+	0x0a CLOCK_OFF_USB
+	0x0b CLOCK_OFF_QDECODER
+	0x0c CLOCK_OFF_SPI
+	0x0d CLOCK_OFF_PWM
+	0x0e CLOCK_OFF_CODEC
+	0x0f CLOCK_OFF_UART
+)
+
+
+/*****************************************************************************/
+/* RCS HEADER -- DO NOT ERASE                                                */
+/* $Author: Administrator $                                                           */
+/* $Id: bt_rfcomm_format.upper,v 1.1 2009-09-28 04:06:17 Administrator Exp $ */
+/* Orisil Technology                                                      */
+/*****************************************************************************/
+
+/**********/
+/* memory */
+/**********/
+
+0x04ed memRemoteRPNBitRate
+0x04ee memRemotePRNDataBits
+0x04ef memRemotePRNStopBit
+0x04f0 memRemotePRNParity
+0x04f1 memRemotePRNFlowControl
+0x04f2 memRemotePRNXon
+0x04f3 memRemotePRNXoff
+0x04f4 mem_mod2div_temp
+0x04f7 mem_contw_temp
+0x04f9 mem_attrib_list
+0x04fb mem_current_adss
+0x04fc mem_current_channel
+0x04fd mem_current_frame_type
+0x04fe mem_current_fcs
+0x04ff mem_current_length
+0x0501 mem_rfcomm_uih_payload_ptr
+0x0503 mem_uih_cmd_type
+0x0504 mem_uih_length
+0x0506 mem_param_payload_ptr
+0x0508 mem_ms_param
+0x0509 mem_pn_credit_flow_type_info
+0x050a mem_pn_priority
+0x050b mem_pn_acknowledg_timer
+0x050c mem_pn_max_retrans
+0x050d mem_rfcomm_send_adss
+0x050e mem_rfcomm_send_frame_type
+0x050f mem_rfcomm_send_fcs
+0x0510 mem_rfcomm_send_offset
+
+
+
+(
+0 CREDIT_DISABLE
+1 CREDIT_ENABLE
+)
+
+
+/************************************************************************/
+  
+
+ 
+/************/
+/* constant */
+/************/
+
+/* RFCOMM state for Headset (memRFCOMM_State) */ 
+  (
+    0 RFCOMM_IDLE           /* before the responsor HS receive SABM            */
+    1 RFCOMM_W4_DLCI0_OPEN
+    2 RFCOMM_W4_DLCI0_CLOSE
+    3 RFCOMM_START_DLCI0    /* After respond SABM frame (DLCI=0)               */
+    4 RFCOMM_W4_DLCI_OPEN
+    5 RFCOMM_W4_DLCI_CLOSE
+    6 RFCOMM_DLCI_OPENED    
+   
+  )
+  
+/* RFCOMM timer constants   */
+  (
+    1000  RFCOMM_T1         /* Used by SABM and DISC frames,100*20ms = 20s     */     
+    1000  RFCOMM_T2         /* Used by commands send in UIH on DLCI0,          */
+    300   RFCOMM_T3_RINGON  /* 6s for ring fade time                           */
+  
+  )
+
+/* Command Type */
+  (
+    0x3F RSP_RX_SABM        /*responsor expect SABM from initiator             */
+    0x3F INI_TX_SABM
+	
+    0x73 RSP_TX_UA          /*responsor send out UA command                    */
+    0x73 UA_WFBIT_SET	    /* UA control field with F bit set                 */
+	
+    0xEF RSP_RX_UIH         /*responsor expect UIH from initiator              */
+
+    0xEF RSP_TX_UIH         /*responsor send UIH to initiator                  */
+     
+    0x1F RSP_TX_DM          /*responsor send DM to initiator                   */
+    0x1F DM_WFBIT_SET       /* DM control field with F bit set                 */
+    0x0F DM_WFBIT_CLEAR     /* DM control field with F bit clear               */
+
+    0x53 RSP_RX_DISC        /*responsor expect DISC from initiator             */
+    0x53 INI_TX_DISC	    /*initiator send DISC control type command         */
+     
+    0xFF RSP_RX_UIH_WDATA   /*UIH data with credit flow control info           */
+    
+    
+  )
+
+/* Multiplexor commands and responses frames */
+  (
+    0x83 PN_COMMAND           /* Bit 0 EA C/R Type = 000001         */
+    0x81 PN_RESPONSOR         /* Bit 0 EA C/R Type = 000001         */
+    
+    0xE3 MSC_COMMAND          /* Bit 0 EA C/R Type = 000111         */
+    0xE1 MSC_RESPONSOR
+ 
+    0x13 NSC_COMMAND          /* Bit 0 EA C/R Type = 001000         */
+    0x11 NSC_RESPONSOR        /* Bit 0 EA C/R Type = 001000         */
+
+    0x23 TEST_COMMAND         /* Bit 0 EA C/R Type = 000111         */
+    0x21 TEST_RESPONSOR 
+    
+    0x93 RPN_COMMAND          /* Bit 0 EA C/R Type = 001001         */
+    0x91 RPN_RESPONSOR 
+    
+    0x53 RLS_COMMAND          /* Bit 0 EA C/R Type = 001010         */
+    0x51 RLS_RESPONSOR 
+
+    0xA3 FCON_COMMAND         /* Bit 0 EA C/R Type = 000101         */
+    0xA1 FCON_RESPONSOR 
+    
+    0x63 FCOFF_COMMAND        /* Bit 0 EA C/R Type = 000110         */
+    0x61 FCOFF_RESPONSOR 
+    	
+    0x03 RLS_OVERRUN
+    0x05 RLS_PARITY_ERROR
+    0x09 RLS_FRAMING_ERROR
+  )
+
+/* memLocalCredit */
+  (
+    0x01 RFCOMM_CREDIT
+  )
+
+  (
+  	0x007f RFCOMM_MAX_FRAME_SIZE
+  )
+
+/* UIH received Data length */
+  (
+    0  LENGTH_ZERO
+    
+    6  LENGTH_OK
+    7  LENGTH_HOT
+    8  LENGTH_RING
+    9  LENGTH_ERROR
+    9  LENGTH_AGVOL_ONEBYTE
+    10 LENGTH_AGVOL_TWOBYTE
+    10 LENGTH_VOL_ONEBYTE
+    11 LENGTH_VOL_TWOBYTE
+    12 LENGTH_BRSF
+    13 LENGTH_PLUS_CIEV
+    15 LENGTH_INBANDRING
+    14 LENGTH_CIEV_CALL
+    17 LENGTH_CRING
+    20 LENGTH_BRSF_OK
+    24 LENGTH_CIND0
+    28 LENGTH_CIEV_TWO
+    32 LENGTH_CIND_OK
+    59 LENGTH_CIND_OK2
+    100 LENGTH_DISCARD
+  )
+  
+/************/
+/* flags    */
+/************/
+  
+/* memRFCOMM_L2CAP_Interface */
+  (
+    0 RFCOMM_TX_W4BUF_FLAG    /* Wait for Tx buffer empty flag */
+    1 RFCOMM_CLOSE_LINK_FLAG
+  )
+  
+
+    
+/* memRemoteMSC		*/
+  (
+    0 MSC_EA_BIT
+    1 MSC_FC_BIT
+    2 MSC_RTC_BIT
+    3 MSC_RTR_BIT
+    6 MSC_IC_BIT
+    7 MSC_DV_BIT
+  )
+
+/* memRemoteRLS         */
+  (
+    0x0C OVERRUN_ERROR
+    0x0A PARITY_ERROR
+    0x09 FRAMING_RERROR
+  )
+  
+/* memRemoteRPNBitRate  */
+  (
+    0x00 BITS2400
+    0x01 BITS4800
+    0x02 BITS7200
+    0x03 BITS9600
+    0x04 BITS19200
+    0x05 BITS38400
+    0x06 BITS57600
+    0x07 BITS115200
+    0x08 BITS230400
+  )
+  
+/* memRemotePRNDataBits	*/
+  (
+    0x00 DATABITS5
+    0x01 DATABITS6
+    0x02 DATABITS7
+    0x03 DATABITS8
+  )
+  
+/* memRemotePRNStopBit	*/
+  (
+    0    ONESTOP
+    1    ONEHALFSTOP
+  )
+  
+/* memRemotePRNParity   */
+  (
+    0    ODDPARITY
+    1    EVENPARITY
+    2    MARKPARITY
+    3    SPACEPARITY
+    
+    7    PARITY_ENABLE_BIT
+  )
+
+/* RPN bit mask(in)     */
+  (
+     0   BIT_RATE_MASK_BIT
+     1   DATA_BITS_MASK_BIT
+     2   STOP_BITS_MASK_BIT
+     3   PARITY_MASK_BIT
+     4   PARITY_TYPE_MASK_BIT
+     5   XON_CHAR_MASK_BIT
+     6   XOFF_CHAR_MASK_BIT
+  )
+  
+/* RPN bit mask(in) 2    */
+  (
+     0   XON_XOFF_INPUT_MASK_BIT
+     1   XON_XOFF_OUTPUT_MASK_BIT
+     2	 RTR_INPUT_MASK_BIT
+     3   RTR_OUTPUT_MASK_BIT
+     4   RTC_INPUT_MASK_BIT
+     5   RTC_OUTPUT_MASK_BIT
+
+  )
+
+/* memRFCOMM_Request	*/
+  (
+    0 SEND_MSC_CMD_REQ_FLAG
+    1 SEND_AT_CKPD_REQ_FLAG
+    2 SEND_RING_REQ_FLAG
+    3 SEND_SABM_CMD
+  )
+  
+/* memRFCOMM_Misc_Flag  */
+  (
+    0 MSC_CDM_ALREADY_SEND_FLAG
+    1 CREDIT_FLOW_USED_FLAG
+    2 DONT_EMBEDDED_CREDIT_FLAG 
+    3 MSC_EXCHANGE_DONE_FLAG
+    4 FLOW_CONTROL_FCOFF_BIT            /* set when receive FCoff, clear when FCon   */
+  )
+  
+/* memRemoteMSC		*/
+  (
+    1 FLOW_CONTROL_FC_BIT		/* received MSC FC bits                      */
+  
+  )
+/* Address filed        */
+  (
+    0 ADDR_EA_BIT
+    1 ADDR_CR_BIT
+    2 ADDR_D_BIT
+  )
+//should be same as descripted in SDP
+(
+    1 SPP_SLAVE_CHANNEL
+    7 OBEX_SERVER_CHANNEL
+    8 HF_SERVER_CHANNEL 
+    9 HS_SERVER_CHANNEL
+)
+/* memRFCOMM_Flag */
+(
+	0 USING_HF_PROFILE
+	1 USING_HS_PROFILE
+	2 USING_SPP_PROFILE
+)
+/*RFCOMM Frame Type*/
+(
+	0x3f RFCOMM_FRAME_TYPE_SABM
+	0x73 RFCOMM_FRAME_TYPE_UA
+	0xEF RFCOMM_FRAME_TYPE_UIH
+	0xFF RFCOMM_FRAME_TYPE_UIH_CREDITS
+	0x53 RFCOMM_FRAME_TYPE_DISCONN
+)
+/*RFCOMM UIH CMD TYPE*/
+(
+	0x41 UIH_PARAM_NEG_CMD
+	0x40 UIH_PARAM_NEG_RES
+	0x49 UIH_PARAM_CMD_REMOVE_PORT
+	0x71 UIH_MODEM_STATUS_CMD
+	0x70 UIH_MODEM_STATUS_RES
+)
+
+/*bits in rfcomm address*/
+(
+	0 RFCOMM_ADDRESS_EXT_LEN
+	1 RFCOMM_ADDRESS_CR
+	2 RFCOMM_ADDRESS_DERECTION
+
+
+)
+
+	(                                   
+	0 RFCOMM_CHANNEL_STATE_PN_CMD
+	1 RFCOMM_CHANNEL_STATE_PN_RES
+	2 RFCOMM_CHANNEL_STATE_SABM
+	3 RFCOMM_CHANNEL_STATE_UA
+	4 RFCOMM_CHANNEL_STATE_SND_MS_CMD
+	5 RFCOMM_CHANNEL_STATE_RCV_MS_CMD
+	6 RFCOMM_CHANNEL_STATE_SND_MS_RES
+	7 RFCOMM_CHANNEL_STATE_RCV_MS_RES
+	0xff RFCOMM_CHANNEL_SETUP_COMPLETE
+	) 
+
+	/*mem_rfcomm_send_more_pkt*/
+	(
+	1 MORE_PKT_MSC_CMD_HF
+	2 MORE_PKT_MSC_CMD_HS
+	3 MORE_PKT_MSC_CMD_SPP
+	4 MORE_PKT_MSC_CMD_OBEX
+	)
+
+	(
+	127 RFCOMM_MALLOC_SIZE
+	)
+0x0511 mem_sdp_mem_start
+0x0511 mem_sdp_uuid_search_ptr
+0x0519 mem_sdp_continue_byte
+0x051b mem_sdp_pduid
+0x051c mem_sdp_transactionid
+0x051e mem_sdp_transactionid_local
+0x0520 mem_sdp_attribute_maxbyte
+0x0522 mem_sdp_record_maxcnt
+0x0524 mem_sdp_record_handle
+0x0528 mem_sdp_LACAP_found
+0x0529 mem_sdp_RFCOMM_found
+0x052a mem_sdp_handle_list
+0x052a mem_sdp_attrib_list
+0x054a mem_sdp_error_code
+0x054c mem_sdp_all_length
+0x054e mem_handle_humber
+0x054f mem_search_uuid
+0x0551 mem_sdp_mem_end
+(
+0 AGORHS_SERVICE
+1 GENAUDIO_SERVICE
+2 HANDSFREE_SERVICE
+)
+(
+0 ATTRIBUTEID_0000
+1 ATTRIBUTEID_0001
+2 ATTRIBUTEID_0004
+3 ATTRIBUTEID_0009
+4 ATTRIBUTEID_0100
+5 ATTRIBUTEID_0302
+6 ATTRIBUTEID_0006
+7 ATTRIBUTEID_0311
+)
+
+(
+0x01 SDP_ERROR_RES
+0x02 SDP_SEARCH_REQ
+0x03 SDP_SEARCH_RES
+0x04 SDP_ATTRIBUTE_REQ
+0x05 SDP_ATTRIBUTE_RES
+0x06 SDP_SEARCHATTRIB_REQ
+0x07 SDP_SEARCHATTRIB_RES
+)
+0x2600 sdp_max_amount
+250 SDP_MALLOC_SIZE
+0x6e sdp_tid_spp //any number
+
+(
+0x1f11 SDP_UUID_HS_AUDIO_GATEWAY
+)
+
+(
+0X09 SDP_ATTRIBUTE_ID
+0x0a SDP_ATTRIBUTE_RANGE
+)
+
+(//mem_sdp_handle_list
+7 SDP_MAX_HANDLE_NUMBER
+)
+
+ 
+
+0x0551 mem_rxbuf
+0x0562 mem_random_number
+0x0572 mem_round_key
+0x0582 mem_kinit
+0x0592 mem_input_store
+0x05a2 mem_x
+0x05b2 mem_y
+0x05c1 mem_y15
+0x05c2 mem_key_store
+0x05d3 mem_key_store_end
+0x05d4 memp_ar_key
+0x05d6 memp_ar_input
+0x05d8 mem_ar_hround
+0x05e2 mem_ec_infinite
+0x05e3 mem_ec_loopc
+0x05e5 mem_aes_cmac_data_length
+0x05e6 memdat
+0x05e6 mem_ax
+0x05fe mem_ay
+0x0616 mem_az
+0x062e mem_bx
+0x0646 mem_ax_256//32 bytes
+0x0646 mem_by
+0x065e mem_bz
+0x0666 mem_ay_256// 32 bytes
+0x0676 mem_cx
+0x0686 mem_az_256// 32 bytes
+0x068e mem_cy
+0x06a5 mem_cy5
+0x06a6 mem_bx_256// 32 bytes
+0x06a6 mem_cz
+0x06be mem_k
+0x06c6 mem_by_256// 31 bytes
+0x06d6 mem_align
+0x06e6 mem_bz_256//32 bytes
+0x06e6 mem_tmp1
+0x06e6 memahbak
+0x06fe mem_tmp5
+0x0706 mem_cx_256//32 bytes
+0x0706 memahsave
+0x0716 mem_tmp2
+0x0726 mem_cy_256// 32 bytes
+0x0726 memahsave_end
+0x0726 mem_addr_padding
+0x0727 mem_addr_value/* 12 bytes     */ 
+0x072e mem_tmp3
+0x072e mem_t1
+0x0733 mem_addr_value_end
+0x0736 mem_addr_iocap_end
+0x0745 mem_cy5_256// 1 byte
+0x0746 mem_cz_256// 32 bytes
+0x0746 mem_tmp0
+0x0746 mem_t0
+0x074e mem_tmp0a
+0x075e mem_t2
+0x0766 mem_k_256//32 bytes
+0x0776 mem_t3
+0x0786 mem_tmp1_256//32 bytes
+0x078e mem_t7
+0x07a6 mem_tmp5_256
+0x07c6 mem_tmp2_256
+0x07e6 mem_tmp3_256
+0x07e6 mem_t1_256
+0x0806 mem_tmp0_256
+0x0806 mem_t0_256
+0x0826 mem_t2_256
+0x0846 mem_t3_256
+0x0866 mem_t7_256
+0x0886 mem_p
+0x089e mem_a
+0x08b6 mem_b
+0x08ce mem_gx
+0x08e6 mem_gy
+0x08fe memh0
+0x091e mem_p_256
+0x093e mem_a_256
+0x095e mem_gx_256
+0x097e mem_gy_256
+0x099e mem_le_slat
+
+
+/* simple pairing page */
+
+0x09ae mem_sp_state_start
+0x09ae mem_sp_state
+0x09af mem_master_sp_state
+0x09b0 mem_sp_flag
+0x09b1 mem_master_sp_flag
+0x09b2 mem_sp_calc
+0x09b3 mem_sp_dh_ready
+0x09b4 mem_sp_localsm
+0x09b5 mem_pairing_auth
+0x09b6 mem_sp_flag_start
+0x09b6 mem_sp_local_key_send_count
+0x09b7 mem_sp_remote_key_recv_count
+0x09b8 mem_sp_remote_key_invalid
+0x09b9 mem_sp_dhkey_invalid
+0x09ba mem_gkey
+0x09be mem_le_pubkey_remote_x_256
+0x09c6 mem_sp_pubkey_remote
+0x09c6 mem_sp_pubkey_remote_x
+0x09de mem_sp_pubkey_remote_x_end
+0x09de mem_le_pubkey_remote_y_256
+0x09e6 mem_sp_pubkey_remote_y
+0x09fe mem_le_dhkey_256
+0x0a06 mem_sp_dhkey
+0x0a1e mem_sp_dhkey_end
+0x0a1e mem_sp_random_local
+0x0a2e mem_sp_random_local_end
+0x0a2e mem_sp_random_remote
+0x0a3e mem_sp_random_remote_end
+0x0a3e memresult
+0x0a3e mem_sp_calc_result
+0x0a3e memh
+0x0a42 memg
+0x0a46 memf
+0x0a4a meme
+0x0a4e mem_sp_calc_result_high
+0x0a4e memd
+0x0a52 memc
+0x0a56 memb
+0x0a5a mema
+0x0a5e mem_sp_check_result
+0x0a6e mem_sp_confirm_remote
+0x0a7e mem_sp_prarm_stack
+
+/* simple pairing status flag */
+(
+  0x00   SP_FLAG_STANDBY
+  0x01   SP_FLAG_COMMIT
+  0x02   LE_SP_FLAG_COMMIT_256
+
+)
+
+/* simple pairing calc flag */
+(
+  0x00   SP_CALC_STANDBY
+  0x01   SP_CALC_PUBKEY
+  0x02   SP_CALC_DHKEY
+  0x03   SP_CALC_PUBKEY_256
+  0x04   SP_CALC_DHKEY_256
+)
+
+/* simple pairing state */
+(
+  0x00   SP_STAT_NULL
+  0x01   SP_STAT_KEY_RECV
+  0x02   SP_STAT_KEY_GENERATE
+  0x03   SP_STAT_KEY_SEND
+  0x04   SP_STAT_COMMIT_CALC
+  0x05   SP_STAT_COMMIT_SEND
+  0x06   SP_STAT_RANDOM_RECV
+  0x07   SP_STAT_RANDOM_SEND
+  0x08   SP_STAT_CONFIRM_RECV
+  0x09   SP_STAT_CONFIRM_CHECK
+  0x0A   SP_STAT_CONFIRM_CALC
+  0x0B   SP_STAT_CONFIRM_SEND
+  0x0C   SP_STAT_LINK_KEY_CALC
+  0x0F   SP_STAT_DONE
+  0x10   SP_STAT_FEATURE_EXT_SEND
+  0x11   SP_STAT_GKEY_CALC
+  /*simple pairing master only*/
+  0x12   SP_MASTER_STAT_START_SKIP
+  0x13   SP_MASTER_STAT_START_DONE
+  0x14   SP_STAT_COMMITMENT_COMPARE
+  0x15   SP_STATE_END
+)
+
+
+/* simple paring invalid flag */
+(
+  0x00   SP_KEY_INVALID
+  0x01   SP_KEY_VALID
+  0x03   SP_KEY_VALID_256
+
+)
+
+/* encapsulated defination for P-192 key */
+(
+  0x01  ENCAPSULATED_MAJOR_TYPE_P192
+  0x01  ENCAPSULATED_MINOR_TYPE_P192
+  0x30  ENCAPSULATED_LEN_P192
+)
+
+/* bluetooth 2.1 support flag */
+(
+  0x00  SIMPLE_PAIRING_ENABLE
+  0x01  ENCRYPTION_PAUSE_ENABLE
+  0x02  EXTENDED_INQUIRY_RESPOSE_ENABLE
+  0x03  SNIFF_SUBRATING_ENABLE
+)
+
+/*mem_sp_localsm*/
+(
+  0x00 DEFAULT_STATEMACHINE
+  0x01 LOCAL_STATEMACHINE
+)
+
+(
+ 0x00 DEFALT_PAIRING_AUTH
+ 0x01 PAIRING_AUTH
+)
+
+(
+1 SSP_MODE_SSP_PIN_FLAG
+2 SSP_MODE_PASSKEY_ENTRY_FLAG
+3 SSP_MODE_JUST_WORK_FLAG
+)
+
+(//ssp mode
+0x040003 SSP_MODE_JUST_WORK_IO_CAP_DATA
+0X040001 SSP_MODE_SSP_PIN_IO_CAP_DATA
+0X040002 SSP_MODE_PASSKEY_IO_CAP_DATA
+)
+
+(
+0x00 DISPLAY_ONLY
+0x01 DISPLAY_YESNO
+0x02 KEYBOARD_ONLY
+0x03 NO_INPUT_NO_OUTPUT
+)
+
+(
+7 FLAG_MODE_SSP_PIN_REVICEVE_COMPARISON_BIT
+6 FLAG_MODE_SSP_PIN_RECIEVE_DHKEY_BIT
+0 FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT
+)
+(
+1 FLAG_PAIRING_STATE_PAIRING
+0 FLAG_PAIRING_STATE_NOT_PAIRING
+)
+
+  
+/*****************************************************************************/
+/* RCS HEADER -- DO NOT ERASE                                                */
+/* $Author: Administrator $                                                           */
+/* $Id: bt_ui_format.upper,v 1.1 2009-09-28 04:06:17 Administrator Exp $     */
+/************************************************************************/
+
+
+	/* ========= memory ============== */
+0x0a8e mem_UI_data_txbuff_length
+0x0a90 mem_ipc_skip_continue_proc
+0x0a91 mem_ui_timer_temp//length 4
+0x0a91 mem_ipc_rega_temp
+
+/************/
+/* constant */
+/************/
+
+//mem_ui_state_map
+(
+0 UI_STATE_BT_CONNECTED
+1 UI_STATE_BT_SETUP_COMPLETE
+2 UI_STATE_BT_HID_CONN
+3 UI_STATE_BT_HID_HANDSHAKE
+4 UI_STATE_BT_SPP_CONN
+5 UI_STATE_BT_SNIFF
+6 UI_STATE_BT_DISCOVERY
+7 UI_STATE_BT_RECONNECT
+8 UI_STATE_BT_SLAVE_ROLE
+9 UI_STATE_BLE_CONNECTED
+10 UI_STATE_BLE_WRITE_RCV
+11 UI_STATE_BLE_ADV
+12 UI_STATE_BTN_DOWN
+)
+
+(
+1 UI_STATE_SPP_NL_AUTO_DISCOVER
+
+)
+
+/* UI state for Headset (memui_HS_State) */ 
+   (
+    0 UI_HEADSET_DISCONNECT
+    1 UI_HEADSET_IDLE                   /* before the responsor HS receive SABM      */
+    2 UI_HEADSET_W4CONNECT
+    3 UI_HEADSET_RINGING
+    4 UI_HEADSET_CONNECTED
+    5 UI_HEADSET_PARING
+  )
+/* memui_BB_State */
+(
+  0 UI_BB_OFF
+  1 UI_BB_IDLE
+  2 UI_BB_DISCOVERY
+  3 UI_BB_CONNECTED_ACTIVE_NO_SCO
+  4 UI_BB_CONNECTED_ACTIVE_WITH_SCO
+  5 UI_BB_CONNECTED_ACTIVE_WAIT_SNIFF
+  6 UI_BB_CONNECTED_SNIFF
+  7 UI_BB_RECONNECT
+  8 UI_BB_CONNECTED_SNIFF_WITH_SCO
+)
+
+/************/
+/* flags    */
+/************/
+  
+/* memui_Misc_Flags */
+  (
+    5 NO_IDLE_TURN_OFF
+    7 ANSWER_RING_FLAG               /* 1 Answer,0 no*/
+  )
+
+/* mem_UI_SCH_Interface */
+  (
+    0  UI_HS_PAIRING 
+    2  UI_REQ_CLOSE_RFCOMM
+    3  UI_LINK_LOST
+    4  UI_REQ_OPEN_SCO
+    6  UI_REQ_CLOSE_SCO
+  )
+  
+/* memui_PassOverKey */
+  (
+    0  ANSWER_RING_BIT
+    0  AG_SEND_RING_BIT
+    1  VOL_UP_BIT
+    2  VOL_DOWN_BIT
+    3  INI_CALL_BIT
+    4  DAIL_LAST_CALL
+    5  END_CALL_BIT
+    6  NOKIA_VOICE_ACTIVE 
+    7  REJECT_CALL_BIT
+  )
+  
+/* memui_reconnect_mode */
+(
+  0 NO_RECONNECTION
+  1 RECONNECT_HID
+  2 RECONNECT_HF
+  3 RECONNECT_HS
+  4 RECONNECT_HID_HF
+  5 RECONNECT_HID_HS
+)
+/* memui_Commands */
+(
+0 BT_CMD_STANDBY
+1 BT_CMD_START_DISCOVERY
+2 BT_CMD_STOP_DISCOVERY
+3 BT_CMD_RECONNECT
+4 BT_CMD_DISCONNECT
+5 BT_CMD_ENTER_SNIFF
+6 BT_CMD_EXIT_SNIFF
+7 BT_CMD_ENTER_SNIFF_SUBRATING
+8 BT_CMD_EXIT_SNIFF_SUBRATING
+9 BT_CMD_SNIFF_TEST
+10 BT_CMD_SET_PIN_CODE
+11 BT_CMD_START_INQUIRY
+12 BT_CMD_STOP_INQUIRY
+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
+29 BT_CMD_ROLE_SWITCH
+30 BT_CMD_BB_RECONN_CANCEL
+31 BT_CMD_STORE_RECONN_INFO_LE
+32 BT_CMD_STORE_RECONN_INFO_BT
+33 BT_CMD_DHKEY_NOT_ACCEPT
+34 BT_CMD_START_24G
+35 BT_CMD_STOP_24G
+36 BT_CMD_PAIR_24G
+37 BT_CMD_STORE_RECONN_INFO
+)
+
+(
+0x00 BT_EVT_NULL
+0x01 BT_EVT_BB_CONNECTED
+0x02 BT_EVT_BB_DISCONNECTED
+0x03 BT_EVT_RECONN_STARTED
+0x04 BT_EVT_RECONN_FAILED
+0x05 BT_EVT_SETUP_COMPLETE
+0x06 BT_EVT_HID_CONNECTED
+0x07 BT_EVT_HID_DISCONNECTED
+0x08 BT_EVT_SPP_CONNECTED
+0x09 BT_EVT_SPP_DISCONNECTED
+0x0A BT_EVT_PINCODE_REQ
+0x0B BT_EVT_ENTER_SNIFF
+0x0C BT_EVT_EXIT_SNIFF
+0x0D BT_EVT_ENTER_SNIFF_SUB
+0x0E BT_EVT_EXIT_SNIFF_SUB
+0x0F BT_EVT_DISCOVERY_STOPED
+0x10 BT_EVT_BUTTON_LONG_PRESSED
+0x12 BT_EVT_HID_HANDSHAKE
+0X13 BT_EVT_RECONN_PAGE_TIMEOUT
+0x14 BT_EVT_LE_CONNECTED
+0X15 BT_EVT_LE_DISCONNECTED
+0x16 BT_EVT_ML2CAP_CONN_REFUSED
+0x17 BT_EVT_BUTTON_ENTER_HIBERNATE
+0x18 BT_EVT_LINKKEY_GENERATE
+0x19 BT_EVT_SWITCH_NOT_ACCEPT
+0x20 BT_EVT_SWITCH_ACCEPT
+0x21 BT_EVT_SNIFF_NOT_ACCEPT
+0x22 BT_EVT_SNIFF_ACCEPT
+0x23 BT_EVT_UNSNIFF_ACCEPT
+0x24 BT_EVT_UNSNIFF_NOT_ACCEPT
+0x25 BT_EVT_BUTTON_ADJUST_DPI
+0x26 BT_EVT_SEND_UNSNIFF_ACCEPT
+0x27 BT_EVT_VIRTUAL_CABLE_UNPLUG
+0x28 BT_EVT_LE_WRITE_REQUEST
+0x29 BT_EVT_LE_ENC_INFO
+0x2a BT_EVT_SWITCH_FAIL_MASTER
+0x2b BT_EVT_SWITCH_SUCCESS_MASTER
+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
+0x37 BT_EVT_BT_PAIRING_FAIL
+0x38 BT_EVT_BT_PAIRING_SUCCESS
+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
+)
+//switch
+(
+0 OFF
+1 ON
+)
+/* memui_mem_lock */
+(
+    0 MEM_UNLOCK
+    1 MEM_LOCK
+)
+/* memui_flag0 */
+(
+    0 UI_USER_DATA_FLAG
+    1 UI_WII_WAITING_SLEEP
+    2 UI_KEYBOARD_SNIFF_SKIP
+)
+/* mem_master_type */
+(
+    0 MTYPE_HID_DEFAULT
+    1 MTYPE_HID_SSP
+    2 MTYPE_SPP
+)
+
+	(	
+	0x01 RECIEVE_SDP_CONN_RES
+	0x02 RECIEVE_SDP_CFG_REQ
+	0x03 RECIEVE_SDP_CFG_RES
+	0x04 RECIEVE_RFCOMM_CONN_RES
+	0x05 RECIEVE_RFCOMM_CFG_REQ
+	0x06 RECIEVE_RFCOMM_CFG_RES
+	0x07 RECIEVE_HID_CTRL_CONN_RES
+	0x08 RECIEVE_HID_CTRL_CFG_REQ
+	0x09 RECIEVE_HID_CTRL_CFG_RES
+	0x0A RECIEVE_HID_INT_CONN_RES
+	0x0B RECIEVE_HID_INT_CFG_REQ
+	0x0C RECIEVE_HID_INT_CFG_RES
+	0x0D RECIEVE_AVCTP_CONN_RES
+	0x0E RECIEVE_AVCTP_CFG_REQ
+	0x0F RECIEVE_AVCTP_CFG_RES
+	0x10 RECIEVE_AVDTP_SIGNAL_CONN_RES
+	0x11 RECIEVE_AVDTP_SIGNAL_CFG_REQ
+	0x12 RECIEVE_AVDTP_SIGNAL_CFG_RES
+	0x13 RECIEVE_AVDTP_MEDIA_CONN_RES
+	0x14 RECIEVE_AVDTP_MEDIA_CFG_REQ
+	0x15 RECIEVE_AVDTP_MEDIA_CFG_RES
+	0x16 RECIEVE_SS_REASULT_HS                  
+	0x17 RECIEVE_SS_REASULT_HF                  
+	0x18 RECIEVE_SS_REASULT_AVTARG		          
+	0x19 RECIEVE_SS_REASULT_OBEX		            
+	0x1A RECIEVE_DLCI0_UA
+	0x1B RECIEVE_HS_PARAM_NEG_RES
+	0x1C RECIEVE_HS_UA
+	0x1D RECIEVE_HS_MODEM_STATUS_RES
+	0x1E RECIEVE_HS_MODEm_STATUS_CMD
+	0x1F RECIEVE_HF_PARAM_NEG_RES   
+	0x20 RECIEVE_HF_UA              
+	0x21 RECIEVE_HF_MODEM_STATUS_RES
+	0x22 RECIEVE_HF_MODEm_STATUS_CMD 
+	0x23 RECIEVE_OBEX_PARAM_NEG_RES     
+	0x24 RECIEVE_OBEX_UA              
+	0x25 RECIEVE_OBEX_MODEM_STATUS_RES
+	0x26 RECIEVE_OBEX_MODEm_STATUS_CMD    
+	0x27 RECIEVE_SPP_PARAM_NEG_RES   
+	0x28 RECIEVE_SPP_UA              
+	0x29 RECIEVE_SPP_MODEM_STATUS_RES
+	0x2A RECIEVE_SPP_MODEm_STATUS_CMD
+	0x2b RECIEVE_SDP_DISCONN_RES
+	)
+
+
+
+	(
+	0 UPPERSM_RP_IDLE
+	1 UPPERSM_RP_SDP_CONN
+	2 UPPERSM_RP_SDP_CONN_WAIT
+	3 UPPERSM_RP_SDP_CFG
+	4 UPPERSM_RP_SDP_CFG_WAIT
+	5 UPPERSM_RP_SS_AVTARG
+	6 UPPERSM_RP_SS_AVTARG_WAIT
+	7 UPPERSM_RP_SS_OBEX
+	8 UPPERSM_RP_SS_OBEX_WAIT
+	9 UPPERSM_RP_SDP_DISCONN
+	10 UPPERSM_RP_SDP_DISCONN_WAIT
+	11 UPPERSM_RP_AVDTP_CONN_WAIT
+	12 UPPERSM_RP_AVCTP_CONN
+	13 UPPERSM_RP_AVCTP_CONN_WAIT
+	14 UPPERSM_RP_AVCTP_CFG
+	15 UPPERSM_RP_AVCTP_CFG_WAIT
+	16 UPPERSM_RP_OBEX_CMD_PN
+	17 UPPERSM_RP_OBEX_CMD_PN_WAIT
+	18 UPPERSM_RP_OBEX_SABM
+	19 UPPERSM_RP_OBEX_SABM_WAIT
+	20 UPPERSM_RP_OBEX_CMD_MS
+	21 UPPERSM_RP_OBEX_CMD_MS_WAIT
+	)
+	(		/*mem_upper_sm_reconn*/
+	0 UPPERSM_RECONN_IDLE		
+	1 UPPERSM_RECONN_SDP_CONN		
+	2 UPPERSM_RECONN_SDP_CONN_WAIT		
+	3 UPPERSM_RECONN_SDP_CFG		
+	4 UPPERSM_RECONN_SDP_CFG_WAIT		
+	5 UPPERSM_RECONN_SS_HS
+	6 UPPERSM_RECONN_SS_HS_WAIT
+	7 UPPERSM_RECONN_SS_HF
+	8 UPPERSM_RECONN_SS_HF_WAIT
+	9 UPPERSM_RECONN_SS_AVTARG		
+	10 UPPERSM_RECONN_SS_AVTARG_WAIT		    
+	11 UPPERSM_RECONN_SS_OBEX		            
+	12 UPPERSM_RECONN_SS_OBEX_WAIT		      
+	13 UPPERSM_RECONN_SDP_DISCONN		        
+	14 UPPERSM_RECONN_SDP_DISCONN_WAIT      
+	15 UPPERSM_RECONN_HID_CTRL_CONN		      
+	16 UPPERSM_RECONN_HID_CTRL_CONN_WAIT		
+	17 UPPERSM_RECONN_HID_CTRL_CFG		      
+	18 UPPERSM_RECONN_HID_CTRL_CFG_WAIT     
+	19 UPPERSM_RECONN_HID_INT_CONN		      
+	20 UPPERSM_RECONN_HID_INT_CONN_WAIT		  
+	21 UPPERSM_RECONN_HID_INT_CFG		        
+	22 UPPERSM_RECONN_HID_INT_CFG_WAIT      
+	23 UPPERSM_RECONN_RFCOMM_CONN		        
+	24 UPPERSM_RECONN_RFCOMM_CONN_WAIT		  
+	25 UPPERSM_RECONN_RFCOMM_CFG		        
+	26 UPPERSM_RECONN_RFCOMM_CFG_WAIT       
+	27 UPPERSM_RECONN_RFCOMM_SABM		        
+	28 UPPERSM_RECONN_RFCOMM_SABM_WAIT		  
+	29 UPPERSM_RECONN_SPP_CMD_PN		        
+	30 UPPERSM_RECONN_SPP_CMD_PN_WAIT		    
+	31 UPPERSM_RECONN_SPP_SABM		          
+	32 UPPERSM_RECONN_SPP_SABM_WAIT		      
+	33 UPPERSM_RECONN_SPP_CMD_MS		        
+	34 UPPERSM_RECONN_SPP_CMD_MS_WAIT       
+	35 UPPERSM_RECONN_HF_CMD_PN		          
+	36 UPPERSM_RECONN_HF_CMD_PN_WAIT		    
+	37 UPPERSM_RECONN_HF_SABM		            
+	38 UPPERSM_RECONN_HF_SABM_WAIT		      
+	39 UPPERSM_RECONN_HF_CMD_MS		          
+	40 UPPERSM_RECONN_HF_CMD_MS_WAIT        
+	41 UPPERSM_RECONN_AVDTPs_CONN		        
+	42 UPPERSM_RECONN_AVDTPs_CONN_WAIT		  
+	43 UPPERSM_RECONN_AVDTPs_CFG		        
+	44 UPPERSM_RECONN_AVDTPs_CFG_WAIT       
+	45 UPPERSM_RECONN_AVDTPm_CONN		        
+	46 UPPERSM_RECONN_AVDTPm_CONN_WAIT		  
+	47 UPPERSM_RECONN_AVDTPm_CFG		        
+	48 UPPERSM_RECONN_AVDTPm_CFG_WAIT       
+	49 UPPERSM_RECONN_AVCTP_CONN		        
+	50 UPPERSM_RECONN_AVCTP_CONN_WAIT		    
+	51 UPPERSM_RECONN_AVCTP_CFG		          
+	52 UPPERSM_RECONN_AVCTP_CFG_WAIT		    
+	53 UPPERSM_RECONN_OBEX_CMD_PN		        
+	54 UPPERSM_RECONN_OBEX_CMD_PN_WAIT		  
+	55 UPPERSM_RECONN_OBEX_SABM		          
+	56 UPPERSM_RECONN_OBEX_SABM_WAIT		    
+	57 UPPERSM_RECONN_OBEX_CMD_MS		        
+	58 UPPERSM_RECONN_OBEX_CMD_MS_WAIT     
+	59 UPPERSM_RECONN_SS_SPP
+	60 UPPERSM_RECONN_SS_SPP_WAIT
+	)
+	(/*mem_UI_profile_supported*/
+	0 support_HID
+	1 support_A2DP
+	2 support_AVRCP
+	3 support_HF
+	4 support_HS
+	5 support_PBAP
+	6 support_SPP
+	)
+	/*mem_upper_sm_ss*/
+	(
+	0 UPPERSM_SS_HS
+	1 UPPERSM_SS_HF
+	2 UPPERSM_SS_AVTARG
+	3 UPPERSM_SS_OBEX
+	)
+
+	(
+	160 UI_HUNDRED_MILLISECOND_TIME
+	0XFF UI_BUTTON_GPIO_DISABLE
+	)
+	(
+	0x01 UI_BB_INCONNECT
+	0x10 UI_BB_DISCONNECT
+	)
+(
+0x00 UI_BUTTON_STATE_DOWN
+0x01 UI_BUTTON_STATE_UP
+)
+
+//mem_ipc_skip_continue_proc
+(
+	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
+
+)
+
+
+/**
+*  @file:bt_utility_format.upper
+*  @author: lei.zhu
+*  utility header file. inlcude timer
+*  Copyright:  (C)Hanlynn Technology    
+*/
+
+0x0a95 mem_hold_contr
+0x0a97 mem_hold_contw
+0x0a99 mem_fifo_temp
+0x0a9a mem_pdatatemp
+0x0aa2 mem_temp//8 bytes
+0x0aaa mem_timeup// 4 bytes
+0x0aae mem_rega//4 bytes
+0x0ab2 mem_regb//4 bytes
+0x0ab6 mem_regc//3 bytes
+0x0ab9 mem_contr//2 bytes
+0x0abb mem_contw//2 bytes
+0x0abd mem_wakup_from_power_flag
+0x0abe mem_saved_gpio_in
+0x0ac2 mem_shutter_random_mac_data_temp
+0x0ac2 mem_shutter_config_data_temp
+0x0ac2 mem_le_adv_channel_map_temp
+0x0ac2 mem_le_data_len_temp//1byte
+0x0ac2 mem_tx_fifo_map_temp
+0x0ac2 mem_rpn_dlci//1byte
+0x0ac2 mem_event_cmd_response_content//2byte
+0x0ac2 mem_le_prand//16byte
+0x0ac2 mem_AES_CMAC_k//16 bytes
+0x0ac2 mem_regext_index//1 bytes
+0x0ac2 mem_temp_block0
+0x0ac3 mem_le_data_temp//15bytes
+0x0ac3 mem_temp_block1
+0x0ad2 mem_le_aes_128//16byte
+0x0ad2 mem_regext//64 bytes
+0x0ad2 mem_AES_CMAC_k1//16 bytes
+0x0ad2 mem_temp_block2
+0x0ae2 mem_AES_CMAC_k2//16 bytes
+0x0ae2 mem_temp_block3
+0x0af2 mem_AES_CMAC_temp// 16 bytes
+0x0af2 mem_temp_block4
+0x0b02 mem_AES_CMAC_M_last// 16 bytes
+0x0b02 mem_module_uart_cmd
+0x0b03 mem_module_uart_opcode
+0x0b04 mem_module_uart_len
+0x0b05 mem_module_temp_nl_discard_packet
+0x0b06 mem_temp_block5
+0x0b12 mem_le_mackey//16 bytes
+0x0b12 mem_app_receive_temp
+0x0b12 mem_key_value_temp
+0x0b14 mem_key_value
+0x0b16 mem_key_value_temp1
+0x0b17 mem_key_value_temp2
+0x0b18 mem_key_value_temp3
+0x0b19 mem_key_value_temp4
+0x0b1a mem_key_value_temp5
+0x0b1b mem_key_value_temp6
+0x0b1c mem_temp_block6
+0x0b22 mem_usb_status
+0x0b23 mem_usb_fifo_empty
+0x0b24 mem_usb_read_len
+0x0b25 mem_usb_rxbuf
+0x0b65 mem_bufptr
+0x0b67 mem_remain
+0x0b68 mem_devicedesc
+0x0b7c mem_hidreportdesc_kb
+0x0b7e mem_hidreportdesc_m
+0x0b80 mem_confdesc
+0x0be4 mem_string0
+0x0be9 mem_string1
+0x0c07 mem_string2
+0x0c47 mem_string3
+0x0c65 mem_usb_zero_packet
+0x0c67 mem_usb_ones_packet
+0x0c69 mem_usb_two_packet
+0x0c6b mem_usb0_state
+0x0c6c mem_usb_offline_check_gpio
+0x0c6d mem_usb_tx_interval
+0x0c6e mem_usb_clear_mem_start
+0x0c6e mem_usb_setup
+0x0c6e mem_usb_setup_bmRequestType
+0x0c6f mem_usb_setup_bRequest
+0x0c70 mem_usb_setup_bValue
+0x0c71 mem_usb_setup_bValueH
+0x0c72 mem_usb_setup_wIndex
+0x0c74 mem_usb_setup_bLength
+0x0c75 mem_usb_setup_bLengthH
+0x0c76 mem_usb0_setup
+0x0cb6 mem_usb0_set_report_data
+0x0cf6 mem_usb0_get_report_data
+0x0d36 mem_usb_state
+0x0d37 mem_usb_tx_wait
+0x0d38 mem_usb_tx_enable
+0x0d39 mem_usb_remote_wakeup
+0x0d3a mem_usb_clear_remote_wakeup
+0x0d3b mem_usb_ep0_stall_status
+0x0d3c mem_usb_ep1_stall_status
+0x0d3d mem_usb_ep2_stall_status
+0x0d3e mem_usb_ep3_stall_status
+0x0d3f mem_dsc_info_data_pointer
+0x0d41 mem_dsc_info_len
+0x0d42 mem_usb0_data_ready_report
+0x0d43 mem_usb_tx_win_enable
+0x0d44 mem_usb_tx_mac_enable
+0x0d45 mem_usb_device_enumeration_endflag
+0x0d46 mem_usb_wakestate_onetime_flag
+0x0d47 mem_usb_mac_wakeup_trig
+0x0d48 mem_usb_set_high_addr_flag
+0x0d49 mem_usb_set_protocol_value
+0x0d4a mem_usb_set_protocol_status
+0x0d4b mem_usb_get_protocol_flag
+0x0d4c mem_usb_idle_flag
+0x0d4d mem_usb_idle_rate
+0x0d4e mem_usb_setup_bValue_temp
+0x0d50 mem_usb0_get_set_report
+0x0d51 mem_usb_ep1_data
+0x0d52 mem_usb_ep2_data
+0x0d53 mem_usb_clear_halt
+0x0d54 mem_usb_mouse_data
+0x0d64 mem_usb_kb_data
+0x0d74 mem_usb_kb_multikey
+0x0d84 mem_usb_kb_data_sta_data
+0x0d8c mem_usb_kb_data_last_data
+0x0d94 mem_usb_kb_multikey_sta_data
+0x0d97 mem_usb_kb_multikey_last_data
+0x0d9a mem_usb_kb_blank_data_enable
+0x0d9b mem_usb_kb_mul_blank_data_enable
+0x0d9c mem_usb_test_cnt
+0x0d9d mem_usb_clear_mem_end
+0x0d9d mem_usb_test_kb
+0x0d9e mem_rssi_noise_buffer
+0x0e9e mem_rssi_noise_dg_buffer
+0x0f9e mem_rssi_noise_ms_buffer
+0x109e mem_rssi_noise_kb_buffer
+0x119e mem_24g_common_temp
+0x11be mem_data_pre
+0x11c0 mem_data_current
+0x11c2 mem_data_sum
+0x11c5 mem_data_value
+0x11c6 mem_data_value_temp
+0x11c7 mem_zcode_temp_param0//zcode num
+0x11c8 mem_zcode_temp_param1//patch ram func addr
+0x11ca mem_zcode_temp_param2//patch ram func addr
+
+
+(
+/*mem_util_timer_flag0_7*/
+    0   UTIL_TIMER_0_USED
+    1   UTIL_TIMER_1_USED
+    2   UTIL_TIMER_2_USED
+    3   UTIL_TIMER_3_USED
+    4   UTIL_TIMER_4_USED
+    5   UTIL_TIMER_5_USED
+    6   UTIL_TIMER_6_USED
+    7   UTIL_TIMER_7_USED
+/*mem_util_timer_flag8_15*/
+    0   UTIL_TIMER_8_USED
+    1   UTIL_TIMER_9_USED
+    2   UTIL_TIMER_10_USED
+    3   UTIL_TIMER_11_USED
+    4   UTIL_TIMER_12_USED
+    5   UTIL_TIMER_13_USED
+    6   UTIL_TIMER_14_USED
+    7   UTIL_TIMER_15_USED
+)
+
+//util fifo param
+(
+
+8 UTIL_FIFO_LEN
+-1 UTIL_FIFO_OFFSET
+)
+
+
+(
+	0xAA DEBUGLOG_HEAD
+	0x00 DEBUGLOG_TYPE
+	0x04 DEBUGLOG_LEN
+	0xBB DEBUGLOG_TAIL
+)
+
+(
+	0x1000 DEBUGLOG_DTYPE_CALLBACK
+	0x1001 DEBUGLOG_DTYPE_EVENT
+	0x1002 DEBUGLOG_DTYPE_CMD
+	0x1003 DEBUGLOG_DTYPE_STATUS
+	0x1004 DEBUGLOG_DTYPE_MISC
+	0x1005 DEBUGLOG_DTYPE_CONN_SM
+	0x1006 DEBUGLOG_DTYPE_UPPER_SM
+	0x1007 DEBUGLOG_DTYPE_PARSE_LMP
+	0x1008 DEBUGLOG_DTYPE_SEND_LMP
+)
+
+//DEBUGLOG_DTYPE_CALLBACK
+(
+	0x0000 CALLBACK_24G_DATA
+	0x0001 CALLBACK_LE_PROCESS
+	0x0002 CALLBACK_BT_PROCESS
+	0x0003 CALLBACK_BEFORE_LPM
+	0x0004 CALLBACK_BB_EVENT_PROCESS
+	0x0005 CALLBACK_IDLE_PROCESS
+	0x0006 CALLBACK_BEFORE_HIBERNATE
+	0x0007 CALLBACK_ATT_WRITE
+	0x0008 CALLBACK_EVENT_TIMER
+)
+
+//DEBUGLOG_DTYPE_EVENT
+//(
+
+//)
+
+//DEBUGLOG_DTYPE_CMD
+//(
+
+//)
+
+//DEBUGLOG_DTYPE_STATUS
+(
+	0x0000 STATUS_CODE_WAKE
+	0x0001 STATUS_LPM_WAKE
+	0x0004 STATUS_24G_START 
+)
+//DEBUG_DTYPE_MISC
+(
+	0x0000 MISC_LE_RETRANSMIT
+	0x0001 MISC_LOST_MOUSEDATA
+	0x0002 MISC_TXPOWER_0
+	0x0003 MISC_TXPOWER_1
+	0x0004 MISC_TXPOWER_2
+	0x0006 MISC_PULL_MOUSEDATA
+	0x0007 MISC_PUSH_MOUSEDATA
+	0x0008 MISC_LE_RETRANSMIT_MD
+
+
+)
+
+0x1f00 mem_zcode_buff   
+
+
+256 ZCODE_BUFF_SIZE
+64 ZCODE_CODE_SIZE
+0xff ZCODE_FLAG
+
+0x00 ZCODE_00
+0x01 ZCODE_01
+0x02 ZCODE_02
+0x03 ZCODE_03
+0x04 ZCODE_04
+0x05 ZCODE_05
+0x06 ZCODE_06
+0x07 ZCODE_07
+0x10 ZCODE_10
+0x11 ZCODE_11
+0x12 ZCODE_12
+0x13 ZCODE_13
+0x14 ZCODE_14
+0x15 ZCODE_15
+0x16 ZCODE_16
+0x17 ZCODE_17
+0x20 ZCODE_20
+0x21 ZCODE_21
+0x22 ZCODE_22
+0x23 ZCODE_23
+0x24 ZCODE_24
+0x25 ZCODE_25
+0x26 ZCODE_26
+0x27 ZCODE_27 
+0x30 ZCODE_30
+0x31 ZCODE_31
+0x32 ZCODE_32
+0x33 ZCODE_33
+0x34 ZCODE_34
+0x35 ZCODE_35
+0x36 ZCODE_36
+0x37 ZCODE_37 
+0x40 ZCODE_40
+0x41 ZCODE_41
+0x42 ZCODE_42
+0x43 ZCODE_43
+0x44 ZCODE_44
+0x45 ZCODE_45
+0x46 ZCODE_46
+0x47 ZCODE_47
+0x50 ZCODE_50
+0x51 ZCODE_51
+0x52 ZCODE_52
+0x53 ZCODE_53
+0x54 ZCODE_54
+0x55 ZCODE_55
+0x56 ZCODE_56
+0x57 ZCODE_57
+0x60 ZCODE_60
+0x61 ZCODE_61
+0x62 ZCODE_62
+0x63 ZCODE_63
+0x64 ZCODE_64
+0x65 ZCODE_65
+0x66 ZCODE_66
+0x67 ZCODE_67
+0x70 ZCODE_70
+0x71 ZCODE_71
+0x72 ZCODE_72
+0x73 ZCODE_73
+0x74 ZCODE_74
+0x75 ZCODE_75
+0x76 ZCODE_76
+0x77 ZCODE_77
+0x80 ZCODE_80
+0x81 ZCODE_81
+0x82 ZCODE_82
+0x83 ZCODE_83
+0x84 ZCODE_84
+0x85 ZCODE_85
+0x86 ZCODE_86
+0x87 ZCODE_87
+0x90 ZCODE_90
+0x91 ZCODE_91
+0x92 ZCODE_92
+0x93 ZCODE_93
+0x94 ZCODE_94
+0x95 ZCODE_95
+0x96 ZCODE_96
+0x97 ZCODE_97
+0xA0 ZCODE_A0
+0xA1 ZCODE_A1
+0xA2 ZCODE_A2
+0xA3 ZCODE_A3
+0xA4 ZCODE_A4
+0xA5 ZCODE_A5
+0xA6 ZCODE_A6
+0xA7 ZCODE_A7
+0xB0 ZCODE_B0
+0xB1 ZCODE_B1
+0xB2 ZCODE_B2
+0xB3 ZCODE_B3
+0xB4 ZCODE_B4
+0xB5 ZCODE_B5
+0xB6 ZCODE_B6
+0xB7 ZCODE_B7
+0xC0 ZCODE_C0
+0xC1 ZCODE_C1
+0xC2 ZCODE_C2
+0xC3 ZCODE_C3
+0xC4 ZCODE_C4
+0xC5 ZCODE_C5
+0xC6 ZCODE_C6
+0xC7 ZCODE_C7
+0xd0 ZCODE_D0
+0xd1 ZCODE_D1
+0xe0 ZCODE_e0
+0xe1 ZCODE_e1
+0xe2 ZCODE_e2
+0xf0 ZCODE_F0
+0xf1 ZCODE_F1
+0xf2 ZCODE_F2
+
+
+/************************************************************************/
+/* RCS HEADER -- DO NOT ERASE                                           */
+/* $Author: Administrator $                                                     */
+/* $Id: bt_var.osi,v 1.1 2009-09-28 04:06:18 Administrator Exp $   */
+/* Orisil Technology                                                 */
+/************************************************************************/
+
+
+/* packet types */
+(
+  0x02 FHS_PACKET 
+  0x03 DM1_PACKET 
+  0x03 DM1_LMP_PACKET 
+  0x04 DH1_PACKET 
+  0x05 HV1_PACKET 
+  0x06 HV2_PACKET 
+  0x07 HV3_PACKET 
+  0x08 DV_PACKET 
+  0x09 AUX1_PACKET 
+  0x0a DM3_PACKET 
+  0x0b DH3_PACKET 
+  0x0e DM5_PACKET 
+  0x0f DH5_PACKET 
+)
+
+
+/* mem_lmp_respond */
+(
+  0 RESPOND_TO_ALL
+  1 PASS_EVERYTHING
+  2 PASS_ONLY_UNKNOWNS
+  3 RESPOND_TO_LMPS
+)
+/* SCO algorithm defines */
+(
+  0 ULAW
+  1 ALAW
+  2 CVSD
+)
+/* encryption modes */
+(
+  0 NO_ENCRYPTION
+  1 PT_PT_ENCRYPTION
+  2 PT_BROADCAST_ENCRYPTION
+)
+
+/* bits used in mem_lmp_state1 variable */
+(
+  0 LMP_STATE_DETACH
+  1 LMP_STATE_HOLD
+  2 LMP_STATE_SNIFF
+  3 LMP_STATE_PARK
+  4 LMP_STATE_WAIT_SCO_CREATE
+  5 LMP_STATE_WAIT_SCO_KILL
+  6 LMP_STATE_SCO3
+  7 LMP_STATE_WAIT_SCO_START
+)
+/* mem_lmp_state2 */
+(
+  0 LMP_WAIT_FOR_SNIFF_ACCEPT
+  1 LMP_WAIT_FOR_PARK_ACCEPT
+  2 LMP_SEND_UNPARK_ACCEPTED
+  3 LMP_SEND_ENCRYPTION_START
+  4 LMP_SEND_ENCRYPTION_STOP
+  5 MESSAGE_QUEUE
+  7 LMP_STATE_WAIT_BEACON
+)
+/* mem_lmp_state3 */
+(
+ 0 INQUIRY_STATE_CHECK
+ 1 HOST_DELAY_MESSAGE
+ 2 VARIABLE_DELAY
+ 3 TEST_MODE_START_LOOPBACK
+ 4 TEST_MODE_START_PATTERN
+ 5 PARSE_TEST_CONTROL_MESSAGE
+ 6 H_AUTH_SEND_COMB_KEY
+)
+/* mem_rx_status */
+(
+  0 FROM_MASTER
+)
+/* mem_ms_flag */
+(
+  0 MS_RECEIVE_SWITCH_REQ
+  1 MS_SEND_SETUP_COMPLATE
+)
+/* mem_conn_sm */
+(
+  0 CONN_SM_STANDBY
+  1 CONN_SM_WAIT_PAGE
+  2 CONN_SM_SEND_FEATURES
+  3 CONN_SM_WAIT_FEATURES_RES
+  4 CONN_SM_SEND_CONN_REQ
+  5 CONN_SM_WAIT_CONN_ACCEPT
+  6 CONN_SM_AUTH_PAIR
+  7 CONN_SM_AUTH_PAIR_WAIT
+  8 CONN_SM_WAIT_MUTAL_AUTH
+  9 CONN_SM_ENCRYPT
+  0xa CONN_SM_ENCRYPT_WAIT
+  0xb CONN_SM_ENCRYPT_WAIT_CLEAR
+  0xc CONN_SM_SEND_SETUP_COMPLETE
+  0xd CONN_SM_WAIT_SETUP_COMPLETE 
+  0xe CONN_SM_SEND_SWITCH
+  0xf CONN_SM_DETACH_DELAY
+  0x10 CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION
+  0x11 CONN_SM_DELAY_RESTART_CONNECTION
+  0x12 CONN_SM_SEND_VERSION
+  0X13 CONN_SM_WAIT_VERSION
+  0x14 CONN_SM_SEND_FEATURES_EXT
+  0x15 CONN_SM_WAIT_FEATURES_EXT
+  0x16 CONN_SM_PAIRING
+  0x17 CONN_SM_AUTH
+  0x18 CONN_SM_PAIRING_WAIT
+  0x19 CONN_SM_AUTH_WAIT
+  0x1a CONN_SM_DONE
+  0x1b CONN_SM_WAIT_DONE
+)
+
+/* btStateConn1 */
+(
+  0 CONN_STANDBY
+  1 CONN_MASTER_SEND_CONN_REQ
+  2 CONN_MASTER_WAIT_FOR_CONN_ACCEPTED
+  3 CONN_MASTER_AUTH
+  4 CONN_MASTER_WAIT_FOR_FEATURES
+  5 CONN_MASTER_WAIT_FOR_SETUP_COMPLETE
+  6 CONN_MASTER_WAIT_FOR_MAX_SLOT
+  7 CONN_SLAVE_CONN_REQUESTED
+  8 CONN_SLAVE_WAIT_FOR_SETUP_COMPLETE
+  9 CONN_SLAVE_AUTH
+  10 CONN_USING_HOST_OPCODE
+  11 CONN_SLAVE_AUTH_WAIT
+  12 CONN_SLAVE_ENCRYPT_WAIT
+)
+
+/* mem_lmp_conn_state */
+(
+  0 RECEIVED_CONN_REQ
+  1 SENT_CONN_REQ
+  2 RECEIVED_SETUP_COMPLETE
+  3 SENT_SETUP_COMPLETE
+  4 HOST_CONNECTION_MADE
+  6 INIT_COMPLETE
+  7 SNIFF_NEGOTIATE
+)
+/* btStateAuth1 */
+(
+  0 WAIT_FOR_KINIT
+  1 WAIT_FOR_LKA
+  2 WAIT_FOR_LKB
+  3 WAIT_FOR_SRES
+  4 EXAMINE_RECEIVED_SRES
+  5 SEND_AU_RAND
+  6 WAIT_FOR_KC
+  7 DELAYED_ENCRYPT_RESPONSE
+)
+/* btStateAuth2 */
+(
+  0 SENT_SRES
+  1 RECEIVED_IN_RAND
+  2 SENT_AU_RAND
+  3 AUTHENTICATION_FAILED
+  4 AUTHENTICATION_PASSED
+  5 STARTED_AUTH
+  6 SENT_COMB_KEY
+  7 SENT_IN_RAND
+)
+/* btStateAuth3 */
+(
+  0 RECEIVED_AU_RAND
+  1 RECEIVED_SRES
+  2 MUTUALLY_AUTHENTICATE
+)
+/* btStateHost */
+(
+  0 H_AUTH_STARTED
+  2 H_ENCRYPTION_MODE_REQ_PT
+  3 H_ENCRYPTION_KEY_SIZE
+  4 H_ENCRYPTION_START
+  5 H_ENCRYPTION_STOP
+  6 H_AUTH_SECOND_TRY
+)
+/* btStateEncrypt2 */
+(
+  0 RECEIVED_ENCRYPT_MODE_REQ_PT
+  1 RECEIVED_ENCRYPT_KEY_SIZE
+  2 RECEIVED_ENCRYPT_START
+  3 RECEIVED_ENCRYPT_STOP
+  4 STARTED_ENCRYPT_START
+)
+/* mem_ms_state */
+(
+  0x00 MS_STANDBY
+  0x11 M_MINIT_1
+  0x12 M_MINIT_2
+  0x20 M_SINIT_0
+  0x30 S_MINIT_0
+  0x31 S_MINIT_1
+  0x32 S_MINIT_2
+  0x41 S_SINIT_1
+  0x42 S_SINIT_2
+  0x43 S_SINIT_3
+)
+/* mem_test_mode */
+(
+  0 TEST_MODE_ALLOWED
+  1 TEST_MODE_ACTIVE
+)
+/* values for mem_tester_emulate */
+(
+  0x00 NO_TEST_MODE
+  0x00 CONTINUOUS_TRANSMIT
+  0x10 TRANSMIT_TEST
+  0x08 LOOPBACK
+)
+
+/* mem_tx_misc */
+(
+  1 SEND_TX_ADDR
+)
+/* BBHWREG_page_stat */
+(
+  5 PAGE_MODE_END
+)
+/* host_return_parameters_status codes */
+(
+  0x00 HOST_RETURN_SUCCESS
+  0x01 HOST_RETURN_SLAVE_CANT_ISSUE
+  0x02 HOST_RETURN_NO_CONNECTION
+  0x04 HOST_RETURN_PAGE_TIMEOUT
+  0x05 HOST_RETURN_INQUIRY_TIMEOUT
+  0x08 HOST_RETURN_CONNECTION_TIMEOUT
+  0x09 HOST_RETURN_MAX_NUM_CONNECTIONS
+  0x0a HOST_RETURN_MAX_NUM_SCO
+  0x0b HOST_RETURN_MAX_NUM_ACL
+  0x0c HOST_RETURN_SECURITY_REASONS
+  0x10 HOST_RETURN_HOST_TIMEOUT
+  0x11 HOST_RETURN_UNSUPPORTED_FEATURE_PARAMETER
+  0x13 HOST_RETURN_OTHER_END_USER
+  0x14 HOST_RETURN_OTHER_END_LOW_RESOURCE
+  0x15 HOST_RETURN_OTHER_END_POWER_OFF
+  0x16 HOST_RETURN_LOCAL_HOST
+  0x18 HOST_RETURN_PAIRING_NOT_ALLOWED
+  0x19 HOST_RETURN_UNKNOWN_PDU
+  0x1a HOST_RETURN_UNSUPPORTED_REMOTE_FEATURE
+  0x1d HOST_RETURN_SCO_AIR_MODE_REJECTED
+  0x20 HOST_RETURN_UNSUPPORTED_LMP_VALUE
+  0x21 HOST_RETURN_AUTHENTICATION_FAILURE
+  0x22 HOST_RETURN_CHANGED_EXISTING_SCO
+  0x23 HOST_RETURN_HOST_REJECTED
+  0x24 HOST_RETURN_UNSPECIFIED_ERROR
+  0x25 HOST_RESET
+  0x26 HOST_RETURN_BAD_HANDLE
+
+  0x00 HOST_RETURN_ACCEPT_COMMAND
+  0x01 HOST_RETURN_REJECT_COMMAND
+)
+/* host_present */
+(
+  0 HOST_IS_PRESENT
+  1 BCI_IS_PRESENT
+  2 DONT_INIT_RADIO
+)
+/* mem_master_state */
+(
+  0 MASTER_STATE_STANDBY
+  1 MASTER_INQUIRY
+)
+/* misc */
+(
+  92 SECOND_SWITCH_REQ
+  93 SLAVE_DELAY_DETACH
+  94 MASTER_DELAY_DETACH
+  95 UNSNIFF_DELAY_DETACH
+  0 WE_STARTED_AS_MASTER
+  1 WE_STARTED_AS_SLAVE
+)
+/* mem_host_commands */
+(
+  0x01 HOST_INQUIRY
+  0x02 HOST_INQUIRY_CANCEL
+  0x03 HOST_CREATE_CONNECTION
+  0x04 HOST_DISCONNECT_CONNECTION
+  0x05 HOST_ADD_SCO_REQUEST
+  0x06 HOST_REMOTE_NAME_REQUEST
+  0x07 HOST_WRITE_SUPPORTED_FEATURES
+  0x08 HOST_SET_TX_LEVEL
+  0x09 HOST_SET_RX_LEVEL
+  0x0a HOST_SNIFF_REQUEST
+  0x0b HOST_UNSNIFF_REQUEST
+  0x0c HOST_WRITE_LINK_SUPERVISION_TIMEOUT
+  0x0e HOST_WRITE_SCAN_ENABLE
+  0x0f HOST_READ_AUDIO_QUALITY
+  0x10 HOST_ENABLE_DEVICE_UNDER_TEST
+  0x14 HOST_BUTTON_CONFIGURE
+  0x15 HOST_SET_LOW_BATTERY_LEVEL
+  0x16 HOST_WRITE_LOCAL_NAME
+  0x17 HOST_WRITE_LOCAL_PIN
+  0x18 HOST_KILL_SCO_REQUEST
+  0x19 HOST_QOS_REQ
+
+  0x1a HOST_FEATURES_REQUEST
+  0x1b HOST_VERSION_REQUEST
+  0x1c HOST_TIMING_REQUEST
+  0x1d HOST_CLK_OFFSET_REQUEST
+  0x1e HOST_AUTHENTICATE
+  0x1f HOST_START_ENCRYPTION
+  0x20 HOST_STOP_ENCRYPTION
+  0x21 HOST_HOLD_REQUEST
+  0x22 HOST_HOLD_FORCE
+  0x23 HOST_PARK_REQUEST
+  0x24 HOST_MOD_BEACON
+  0x25 HOST_SET_BROADCAST_SCAN_WINDOW
+  0x26 HOST_UNPARK_PM_REQUEST
+  0x27 HOST_UNPARK_BD_REQUEST
+  0x28 HOST_SLAVE_REQUEST_UNPARK
+  0x29 HOST_DECREASE_POWER_REQUEST
+  0x2a HOST_INCREASE_POWER_REQUEST
+  0x2b HOST_SEND_PREFERRED_RATE
+  0x2c HOST_MAX_SLOT_REQ
+  0x2d HOST_MAX_SLOT_FORCE
+  0x2e HOST_PAGE_MODE_REQUEST
+  0x2f HOST_PAGE_SCAN_MODE_REQUEST
+  0x30 HOST_MASTER_SLAVE_SWITCH
+  0x31 HOST_SEND_AUTO_RATE
+  0x32 HOST_PAGE_CANCEL
+  0x33 HOST_CHANGE_LINK_KEY
+  0x34 HOST_RADIO_READ
+  0x35 HOST_RADIO_WRITE
+  0x36 HOST_REMOTE_SLAVE_INIT_UNPARK_REQUESTED
+
+  0x40 HOST_REMOTE_CONNECTION_REQUESTED
+  0x41 HOST_REMOTE_DETACH
+  0x42 HOST_REMOTE_SCO_CREATE_REQUESTED
+  0x43 HOST_REMOTE_SCO_KILL_REQUESTED
+  0x44 HOST_REMOTE_PARK_REQUESTED
+  0x45 HOST_REMOTE_UNPARK_REQUESTED
+  0x46 HOST_REMOTE_SNIFF_REQUESTED
+  0x47 HOST_REMOTE_UNSNIFF_REQUESTED
+  0x48 HOST_REMOTE_HOLD_REQUESTED
+  0x49 HOST_REMOTE_AUTHENTICATION
+  0x4a HOST_REMOTE_START_ENCRYPTION_REQUESTED
+  0x4b HOST_REMOTE_STOP_ENCRYPTION_REQUESTED
+  0x4c HOST_MODE_CHANGE_EVENT
+  0x4d HOST_REMOTE_TEST_ACTIVATE
+  0x4e HOST_REMOTE_TEST_CONTROL
+  0x4f HOST_REMOTE_TIMING_REQUEST
+)
+/* BCI interface (not used if not compiled in ) */
+(
+  0x01 BCI_INQUIRY
+  0x02 BCI_INQUIRY_CANCEL
+  0x03 BCI_CREATE_CONNECTION
+  0x04 BCI_DISCONNECT
+  0x05 BCI_ADD_SCO_CONNECTION
+  0x06 BCI_REMOTE_NAME_REQUEST
+  0x07 BCI_WRITE_SUPPORTED_FEATURES
+  0x08 BCI_SET_TX_POWER_LEVEL
+  0x09 BCI_SET_RX_POWER_LEVEL
+  0x0a BCI_SNIFF_MODE
+  0x0b BCI_EXIT_SNIFF_MODE
+  0x0c BCI_WRITE_LINK_SUPERVISION_TIMEOUT
+  0x0d BCI_WRITE_PAGE_TIMEOUT
+  0x0e BCI_WRITE_SCAN_ENABLE
+  0x0f BCI_GET_AUDIO_QUALITY
+  0x10 BCI_ENABLE_DEVICE_UNDER_TEST
+  0x11 BCI_SEND_DATA
+  0x12 BCI_REGISTER_SERVICE_RECORD
+  0x13 BCI_SERVICE_SEARCH_ATTRIB_REQ
+  0x14 BCI_BUTTON_CONFIGURE
+  0x15 BCI_SET_LOW_BATTERY_LEVEL
+  0x16 BCI_WRITE_LOCAL_NAME
+  0x17 BCI_WRITE_LOCAL_PIN
+  0x18 BCI_REMOVE_SCO_CONNECTION
+  0x19 BCI_QUALITY_OF_SERVICE
+  0x40 BCI_REMOTE_CONNECTION_REQUEST
+  0x41 BCI_REMOTE_DETACH
+  0x42 BCI_REMOTE_ADD_SCO_REQUEST
+  0x43 BCI_REMOTE_REMOVE_SCO_REQUEST
+  0x44 BCI_REMOTE_PARK_REQUEST
+  0x45 BCI_REMOTE_UNPARK_REQUEST
+  0x46 BCI_REMOTE_SNIFF_REQUEST
+  0x47 BCI_REMOTE_UNSNIFF_REQUEST
+  0x48 BCI_REMOTE_HOLD_REQUEST
+  0x49 BCI_REMOTE_AUTHENTICATION_PAIRING_REQUEST
+  0x4a BCI_REMOTE_START_ENCRYPTION_REQUEST
+  0x4b BCI_REMOTE_STOP_ENCRYPTION_REQUEST
+  0x4c BCI_MODE_CHANGE_EVENT
+)
+/* mode changes */
+(
+  0 MODE_CHANGE_ACTIVE
+  1 MODE_CHANGE_SNIFFING
+  2 MODE_CHANGE_PARKED
+  3 MODE_CHANGE_HOLDING
+  4 MODE_CHANGE_SCO_ADDED
+  5 MODE_CHANGE_SCO_REMOVED
+  6 MODE_CHANGE_ACL_CONNECTION
+  7 MODE_CHANGE_DISCONNECT
+  8 MODE_CHANGE_SCO_CHANGED
+  9 MODE_CHANGE_ENCRYPTING
+  10 MODE_CHANGE_NOT_ENCRYPTING
+  11 MODE_CHANGE_BUTTON_UP
+  12 MODE_CHANGE_BUTTON_DOWN
+  13 MODE_CHANGE_BATTERY_LOW
+  14 MODE_CHANGE_RESET
+  15 MODE_CHANGE_INQUIRY_CANCELED_RMTCMD
+  16 MODE_ACTIVE_MSSWITCH_PASSED
+  17 MODE_ACTIVE_MSSWITCH_FAILED
+)
+/* mem_battery - low nibble is level information, upper nibble is status info */
+(
+  6 BATTERY_CHECK_LEVEL
+  7 BATTERY_SENT_STATUS
+)
+/* mem_radio_version */
+(
+  0x02 RADIO_2001
+  0x12 RADIO_2002
+  0x32 RADIO_2002_DDM
+  0x42 RADIO_1008A1
+  0x52 RADIO_1018A0
+)
+/* mem_slave_initiated_conn */
+(
+  0 SLAVE_INIT_AUTHENTICATION
+  1 SLAVE_INIT_ENCRYPTION
+  2 SLAVE_INIT_MASTER_SLAVE_SWITCH
+)
+/* connection_options */
+(
+  0 CONNECTION_AUTH
+  1 CONNECTION_ENCRYPT
+  2 CONNECTION_SWITCH
+  3 CONNECTION_ACL
+  4 CONNECTION_FEATURE_EXT
+)
+/* mem_debug_config */
+(
+  7 AA_INSERTION
+)
+
+
+/* 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
+  ! 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
+  ! 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
+  ! 0x0c store          /* write to memory, data from pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0c hstore          /* write to memory, data from pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1c istore        /* write to memory, data from pdata, address from regr then mem_ptr */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg            /* hold address */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] 0
+end
+
+format
+  ! 0x0d fetch          /* read from memory, data into pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d hfetch          /* read from memory, data into pdata, address from immediate then mem_ptr */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 0
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d crc         /* read from memory, count from loopcnt, put crc result into pdata */
+  % addr
+  [5] opcode
+  [6] 0
+  [1] 0
+  [1] 0
+  [4] 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] reg             /* hold address */
+  [1] 0
+  [1] 0
+  [4] 0
+  [15] 0
+end
+
+
+format
+  ! 0x1d ifetch         /* read from memory, data into pdata, address from regr then mem_ptr */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg             /* hold address */
+  [1] 0
+  [1] 0
+  [4] num_bytes
+  [15] 0
+end
+
+format
+  ! 0x0c storet          /* write to memory, data from temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0c hstoret          /* write to corereg, data from temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1c istoret        /* write to memory, data from temp, address from regr won't increment */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg            /* hold address */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] 0
+end
+
+format
+  ! 0x0d fetcht          /* read from memory, data into temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x0d hfetcht          /* read from corereg, data into temp, address from immediate won't increment */
+  % num_bytes
+  % addr
+  [5] opcode
+  [6] 0               /* memory */
+  [1] 1
+  [1] 1
+  [4] num_bytes
+  [15] addr
+end
+
+format
+  ! 0x1d ifetcht         /* read from memory, data into temp, address from regr won't increment */
+  % num_bytes
+  % reg
+  [5] opcode
+  [6] reg             /* hold address */
+  [1] 0
+  [1] 1
+  [4] num_bytes
+  [15] 0
+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 mult                  /* immediate mult regr */  /* the product will be ready 17 clks later */
+  % immediate                                   /* use "product" instruction to get the result */
+  % reg
+  [5] opcode
+  [6] reg
+  [6] 16                   /* generate diven pulse to div */
+  [6] null
+  [9] immediate
+end
+
+format
+  ! 0x13 imult           /* pdata mult regr */  /* the product will be ready after 15 nops */
+  % reg                                         /* use product opcode to get the result */
+  [5] opcode
+  [6] reg
+  [6] 16                   /* generate mult pulse to multiplier */
+  [6] null
+  [9] 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
+  ! 3 product              /* harvest mult product */
+  % regw
+  [5] opcode
+  [6] 0
+  [6] 17
+  [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
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.icode
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.icode	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.icode	(working copy)
@@ -0,0 +1,27238 @@
+ 00000000  0x00000044 branch  0x00000040 
+ 00000001  0x0000004b call  0x0000036f 
+ 00000002  0x0000004c fetch  0x00000001 , 0x000041de 
+ 00000003  0x0000004d store  0x00000001 , 0x00004f3a 
+ 00000004  0x0000004e call  0x00000713 
+ 00000005  0x0000004f fetch  0x00000001 , 0x00004685 
+ 00000006  0x00000050 store  0x00000001 , 0x000046da 
+ 00000007  0x00000051 fetch  0x00000001 , 0x00004d0b 
+ 00000008  0x00000052 store  0x00000001 , 0x00004d0c 
+ 00000009  0x00000053 call  0x000043ca 
+ 00000010  0x00000054 call  0x000003eb 
+ 00000011  0x00000055 call  0x000007a4 
+ 00000012  0x00000056 call  0x00000011 
+ 00000013  0x00000057 call  0x00000024 
+ 00000014  0x00000058 call  0x0000006c 
+ 00000015  0x0000005a jam  0x00000080 , 0x000011c7 
+ 00000016  0x0000005b branch  0x0000077a 
+ 00000017  0x0000005f setarg  0x00000327 
+ 00000018  0x00000060 store  0x00000002 , 0x00004fb4 
+ 00000019  0x00000061 setarg  0x00000341 
+ 00000020  0x00000062 store  0x00000002 , 0x000041ef 
+ 00000021  0x00000063 setarg  0x0000064b 
+ 00000022  0x00000064 store  0x00000002 , 0x000041f9 
+ 00000023  0x00000065 setarg  0x00000392 
+ 00000024  0x00000066 store  0x00000002 , 0x000041f1 
+ 00000025  0x00000067 setarg  0x0000028a 
+ 00000026  0x00000068 store  0x00000002 , 0x000041ed 
+ 00000027  0x00000069 setarg  0x000003ed 
+ 00000028  0x0000006a store  0x00000002 , 0x000041f5 
+ 00000029  0x0000006b setarg  0x000003c8 
+ 00000030  0x0000006c store  0x00000002 , 0x000041f3 
+ 00000031  0x0000006d setarg  0x00000427 
+ 00000032  0x0000006e store  0x00000002 , 0x000041eb 
+ 00000033  0x0000006f setarg  0x00000434 
+ 00000034  0x00000070 store  0x00000002 , 0x000041fd 
+ 00000035  0x00000071 rtn 
+ 00000036  0x00000074 setarg  0x00000019 
+ 00000037  0x00000075 store  0x00000002 , 0x00004fc6 
+ 00000038  0x00000076 ncall  0x0000002b , 0x0000002b 
+ 00000039  0x00000077 call  0x0000042d 
+ 00000040  0x00000079 fetch  0x00000001 , 0x0000471f 
+ 00000041  0x0000007a store  0x00000001 , 0x0000471e 
+ 00000042  0x0000007b rtn 
+ 00000043  0x0000007d setarg  0x00000177 
+ 00000044  0x0000007e store  0x00000002 , 0x00004fc6 
+ 00000045  0x0000007f rtn 
+ 00000046  0x00000081 nop  0x00000001 
+ 00000047  0x00000082 nop  0x00000001 
+ 00000048  0x00000083 nop  0x00000001 
+ 00000049  0x00000084 nop  0x00000001 
+ 00000050  0x00000085 nop  0x00000001 
+ 00000051  0x00000086 nop  0x00000001 
+ 00000052  0x00000087 nop  0x00000001 
+ 00000053  0x00000088 nop  0x00000001 
+ 00000054  0x00000089 nop  0x00000001 
+ 00000055  0x0000008a nop  0x00000001 
+ 00000056  0x0000008b nop  0x00000001 
+ 00000057  0x0000008c nop  0x00000001 
+ 00000058  0x0000008d nop  0x00000001 
+ 00000059  0x0000008e nop  0x00000001 
+ 00000060  0x0000008f nop  0x00000001 
+ 00000061  0x00000090 nop  0x00000001 
+ 00000062  0x00000091 nop  0x00000001 
+ 00000063  0x00000092 nop  0x00000001 
+ 00000064  0x0000009a bbit1  0x00000008 , 0x0000005a 
+ 00000065  0x0000009c beq  0x00000001 , 0x00000074 
+ 00000066  0x0000009d beq  0x00000002 , 0x0000007d 
+ 00000067  0x0000009e beq  0x00000085 , 0x00000775 
+ 00000068  0x0000009f beq  0x00000089 , 0x00000748 
+ 00000069  0x000000a0 beq  0x0000008a , 0x00000777 
+ 00000070  0x000000a1 beq  0x0000001b , 0x00000663 
+ 00000071  0x000000a2 beq  0x00000026 , 0x00000665 
+ 00000072  0x000000a3 beq  0x00000048 , 0x00000681 
+ 00000073  0x000000a4 beq  0x0000004a , 0x00000683 
+ 00000074  0x000000a5 beq  0x00000051 , 0x0000068c 
+ 00000075  0x000000a6 beq  0x00000059 , 0x0000067f 
+ 00000076  0x000000a7 beq  0x000000a7 , 0x00000691 
+ 00000077  0x000000a8 beq  0x000000ad , 0x000006a7 
+ 00000078  0x000000a9 beq  0x000000cb , 0x000033e4 
+ 00000079  0x000000aa beq  0x000000e9 , 0x000006b8 
+ 00000080  0x000000ab beq  0x000000a1 , 0x00000086 
+ 00000081  0x000000ac beq  0x000000b1 , 0x0000008b 
+ 00000082  0x000000ad beq  0x000000b2 , 0x00000099 
+ 00000083  0x000000ae beq  0x000000c4 , 0x00000297 
+ 00000084  0x000000af beq  0x000000e3 , 0x00000514 
+ 00000085  0x000000b0 beq  0x000000e6 , 0x00000532 
+ 00000086  0x000000b1 beq  0x000000ea , 0x000005ad 
+ 00000087  0x000000b2 beq  0x000000eb , 0x000005b1 
+ 00000088  0x000000b3 beq  0x000000ec , 0x000005be 
+ 00000089  0x000000b4 branch  0x00002a8e 
+ 00000090  0x000000b6 beq  0x00000039 , 0x000005c2 
+ 00000091  0x000000b7 beq  0x00000043 , 0x000005ca 
+ 00000092  0x000000b8 beq  0x0000004a , 0x000005d0 
+ 00000093  0x000000b9 beq  0x00000057 , 0x000005d3 
+ 00000094  0x000000ba beq  0x00000059 , 0x000005d5 
+ 00000095  0x000000bb beq  0x00000063 , 0x000005d7 
+ 00000096  0x000000bc beq  0x00000066 , 0x00000607 
+ 00000097  0x000000bd beq  0x00000067 , 0x00000626 
+ 00000098  0x000000be beq  0x0000006a , 0x00000636 
+ 00000099  0x000000bf beq  0x00000077 , 0x00000641 
+ 00000100  0x000000c0 beq  0x00000005 , 0x000006ba 
+ 00000101  0x000000c1 beq  0x00000080 , 0x000006bc 
+ 00000102  0x000000c2 beq  0x00000082 , 0x000006c6 
+ 00000103  0x000000c3 beq  0x00000088 , 0x000006d7 
+ 00000104  0x000000c4 beq  0x0000008c , 0x0000064d 
+ 00000105  0x000000c5 beq  0x0000008d , 0x00000659 
+ 00000106  0x000000c6 beq  0x000000fa , 0x000006fb 
+ 00000107  0x000000c7 branch  0x00002a8e 
+ 00000108  0x000000cc jam  0x00000000 , 0x00004d47 
+ 00000109  0x000000cd call  0x00000452 
+ 00000110  0x000000ce nrtn  0x00000001 
+ 00000111  0x000000cf call  0x00007ec1 
+ 00000112  0x000000d0 call  0x00000452 
+ 00000113  0x000000d1 nrtn  0x00000001 
+ 00000114  0x000000d2 jam  0x00000001 , 0x00004d47 
+ 00000115  0x000000d3 rtn 
+ 00000116  0x000000dd arg  0x000009ae , 0x00000005 
+ 00000117  0x000000de arg  0x0000000c , 0x00000039 
+ 00000118  0x000000df call  0x00007ed4 
+ 00000119  0x000000e0 call  0x00000338 
+ 00000120  0x000000e1 call  0x00006a03 
+ 00000121  0x000000e2 call  0x00005cf6 
+ 00000122  0x000000e3 ncall  0x00002c65 , 0x0000002b 
+ 00000123  0x000000e4 call  0x00007ccd 
+ 00000124  0x000000e5 branch  0x0000200c 
+ 00000125  0x000000e8 call  0x000032e3 , 0x0000002b 
+ 00000126  0x000000e9 call  0x0000756a 
+ 00000127  0x000000ea call  0x00002b41 , 0x0000002b 
+ 00000128  0x000000ec call  0x000076dc 
+ 00000129  0x000000ed fetch  0x00000001 , 0x0000465a 
+ 00000130  0x000000ee branch  0x00002012 , 0x00000034 
+ 00000131  0x000000ef fetch  0x00000001 , 0x000045b1 
+ 00000132  0x000000f0 branch  0x00000080 , 0x00000034 
+ 00000133  0x000000f1 branch  0x00002012 
+ 00000134  0x000000f4 setarg  0x00000a06 
+ 00000135  0x000000f5 store  0x00000003 , 0x00004510 
+ 00000136  0x000000f6 setarg  0x00001d87 
+ 00000137  0x000000f7 store  0x00000002 , 0x00004513 
+ 00000138  0x000000f8 branch  0x00002aa2 
+ 00000139  0x000000fb rtnmark1  0x00000026 
+ 00000140  0x000000fc fetch  0x00000001 , 0x00004d01 
+ 00000141  0x000000fd nbranch  0x00007fef , 0x00000034 
+ 00000142  0x000000fe fetch  0x00000001 , 0x00004d06 
+ 00000143  0x000000ff nbranch  0x00007fef , 0x00000034 
+ 00000144  0x00000100 fetch  0x00000001 , 0x0000479e 
+ 00000145  0x00000101 branch  0x00007fef , 0x00000034 
+ 00000146  0x00000102 fetch  0x00000001 , 0x000047c6 
+ 00000147  0x00000103 beq  0x00000001 , 0x00007fef 
+ 00000148  0x00000104 fetch  0x00000002 , 0x00004248 
+ 00000149  0x00000105 nbranch  0x00007fef , 0x00000034 
+ 00000150  0x00000106 fetch  0x00000001 , 0x000049e1 
+ 00000151  0x00000107 nbranch  0x00007fef , 0x00000034 
+ 00000152  0x00000108 branch  0x00007ff1 
+ 00000153  0x0000010c rtnmark0  0x00000026 
+ 00000154  0x0000010d fetch  0x00000001 , 0x00004fc3 
+ 00000155  0x0000010e beq  0x00000001 , 0x000000ab 
+ 00000156  0x00000110 call  0x0000014c 
+ 00000157  0x00000111 nbranch  0x000000ad , 0x00000028 
+ 00000158  0x00000112 call  0x00000127 
+ 00000159  0x00000114 call  0x00000103 
+ 00000160  0x00000115 fetch  0x00000001 , 0x00004e93 
+ 00000161  0x00000116 rtnne  0x000000ff 
+ 00000162  0x00000117 call  0x0000071c 
+ 00000163  0x00000118 setarg  0x00017700 
+ 00000164  0x00000119 store  0x00000003 , 0x00004eb2 
+ 00000165  0x0000011a jam  0x00000014 , 0x00004d37 
+ 00000166  0x0000011e call  0x000000bb 
+ 00000167  0x0000011f nrtn  0x00000028 
+ 00000168  0x00000120 call  0x00000291 
+ 00000169  0x00000121 setarg  0x0000f424 
+ 00000170  0x00000122 branch  0x00002b93 
+ 00000171  0x00000125 jam  0x00000001 , 0x000011c7 
+ 00000172  0x00000126 branch  0x0000077a 
+ 00000173  0x00000129 fetch  0x00000001 , 0x00004eaf 
+ 00000174  0x0000012a call  0x000000d9 , 0x00000034 
+ 00000175  0x0000012b fetch  0x00000001 , 0x00004d06 
+ 00000176  0x0000012c nrtn  0x00000034 
+ 00000177  0x0000012d fetch  0x00000001 , 0x00004d01 
+ 00000178  0x0000012e rtneq  0x00000001 
+ 00000179  0x0000012f fetch  0x00000001 , 0x00004fc3 
+ 00000180  0x00000130 rtneq  0x00000001 
+ 00000181  0x00000132 call  0x000000bb 
+ 00000182  0x00000133 nrtn  0x00000028 
+ 00000183  0x00000134 fetch  0x00000003 , 0x00004eb2 
+ 00000184  0x00000135 call  0x00007f49 
+ 00000185  0x00000136 storet  0x00000004 , 0x0000415b 
+ 00000186  0x00000137 branch  0x00002b2a 
+ 00000187  0x0000013a enable  0x00000028 
+ 00000188  0x0000013b call  0x00002afa 
+ 00000189  0x0000013c fetch  0x00000003 , 0x0000416f 
+ 00000190  0x0000013d branch  0x00007fe9 , 0x00000034 
+ 00000191  0x0000013e fetch  0x00000001 , 0x00004091 
+ 00000192  0x0000013f branch  0x00007fe9 , 0x00000034 
+ 00000193  0x00000140 fetch  0x00000001 , 0x00004fc3 
+ 00000194  0x00000141 beq  0x00000001 , 0x00007fe9 
+ 00000195  0x00000143 call  0x00000294 
+ 00000196  0x00000144 call  0x00000291 
+ 00000197  0x00000146 call  0x00003ebf 
+ 00000198  0x00000148 fetcht  0x00000001 , 0x00004d17 
+ 00000199  0x00000149 call  0x00006825 
+ 00000200  0x0000014b hfetch  0x00000004 , 0x00008070 
+ 00000201  0x0000014c hfetcht  0x00000004 , 0x00008078 
+ 00000202  0x0000014d ior  0x00000002 , 0x00000002 
+ 00000203  0x0000014e invert  0x00000002 , 0x00000002 
+ 00000204  0x0000014f hstoret  0x00000004 , 0x0000807c 
+ 00000205  0x00000150 hfetch  0x00000001 , 0x0000807d 
+ 00000206  0x00000151 set0  0x00000002 , 0x0000003f 
+ 00000207  0x00000152 hstore  0x00000001 , 0x0000807d 
+ 00000208  0x00000153 hfetch  0x00000001 , 0x0000807e 
+ 00000209  0x00000154 set0  0x00000006 , 0x0000003f 
+ 00000210  0x00000155 hstore  0x00000001 , 0x0000807e 
+ 00000211  0x00000157 hfetch  0x00000001 , 0x0000807f 
+ 00000212  0x00000158 set0  0x00000003 , 0x0000003f 
+ 00000213  0x00000159 hstore  0x00000001 , 0x0000807f 
+ 00000214  0x0000015c fetcht  0x00000001 , 0x00004d00 
+ 00000215  0x0000015d set0  0x00000007 , 0x00000002 
+ 00000216  0x0000015e branch  0x00006806 
+ 00000217  0x00000160 jam  0x00000001 , 0x00004e84 
+ 00000218  0x00000161 jam  0x00000001 , 0x00004eaf 
+ 00000219  0x00000162 jam  0x00000000 , 0x00004fb8 
+ 00000220  0x00000163 call  0x000000ea 
+ 00000221  0x00000164 store  0x00000001 , 0x00004e1f 
+ 00000222  0x00000165 setarg  0x00000000 
+ 00000223  0x00000166 store  0x00000007 , 0x00004e20 
+ 00000224  0x00000167 fetch  0x00000004 , 0x00004eba 
+ 00000225  0x00000168 store  0x00000004 , 0x00004e27 
+ 00000226  0x00000169 jam  0x0000000c , 0x00004e83 
+ 00000227  0x0000016a fetch  0x00000001 , 0x00004e84 
+ 00000228  0x0000016b set1  0x00000003 , 0x0000003f 
+ 00000229  0x0000016c store  0x00000001 , 0x00004e84 
+ 00000230  0x0000016d call  0x0000014f 
+ 00000231  0x0000016e branch  0x0000009f 
+ 00000232  0x00000172 jam  0x00000001 , 0x00004fb9 
+ 00000233  0x00000173 jam  0x00000000 , 0x00004fbb 
+ 00000234  0x00000175 fetch  0x00000001 , 0x00004e84 
+ 00000235  0x00000176 and_into  0x00000007 , 0x0000003f 
+ 00000236  0x00000177 store  0x00000001 , 0x00004e84 
+ 00000237  0x00000178 rtn 
+ 00000238  0x0000017b fetch  0x00000001 , 0x00004e84 
+ 00000239  0x0000017c set1  0x00000004 , 0x0000003f 
+ 00000240  0x0000017d store  0x00000001 , 0x00004e84 
+ 00000241  0x0000017f store  0x00000001 , 0x00004e3f 
+ 00000242  0x00000180 rtn 
+ 00000243  0x00000183 fetch  0x00000001 , 0x00004e84 
+ 00000244  0x00000184 rtnbit0  0x00000004 
+ 00000245  0x00000186 fetch  0x00000001 , 0x00004e84 
+ 00000246  0x00000187 set0  0x00000004 , 0x0000003f 
+ 00000247  0x00000188 store  0x00000001 , 0x00004e84 
+ 00000248  0x00000189 store  0x00000001 , 0x00004e3f 
+ 00000249  0x0000018a call  0x000005f8 
+ 00000250  0x0000018b branch  0x0000013a 
+ 00000251  0x0000018e fetch  0x00000001 , 0x00004fb8 
+ 00000252  0x0000018f bne  0x00000001 , 0x000000ea 
+ 00000253  0x00000191 fetch  0x00000001 , 0x00004fb6 
+ 00000254  0x00000192 increase  0x00000001 , 0x0000003f 
+ 00000255  0x00000193 store  0x00000001 , 0x00004fb6 
+ 00000256  0x00000194 beq  0x00000004 , 0x00000117 
+ 00000257  0x00000195 call  0x0000013a 
+ 00000258  0x00000196 jam  0x00000002 , 0x00004ec8 
+ 00000259  0x00000198 jam  0x00000000 , 0x00004e8c 
+ 00000260  0x0000019a arg  0x00000d00 , 0x0000000b 
+ 00000261  0x0000019b until  0x00000023 , 0x00000026 
+ 00000262  0x0000019c call  0x00000182 
+ 00000263  0x0000019f nbranch  0x0000018d , 0x00000018 
+ 00000264  0x000001a0 nbranch  0x0000018d , 0x0000002f 
+ 00000265  0x000001a1 call  0x0000017f 
+ 00000266  0x000001a2 call  0x000001a9 
+ 00000267  0x000001a3 call  0x00000716 
+ 00000268  0x000001a5 fetch  0x00000001 , 0x00004e82 
+ 00000269  0x000001a6 increase  0x00000001 , 0x0000003f 
+ 00000270  0x000001a7 store  0x00000001 , 0x00004e82 
+ 00000271  0x000001a8 call  0x000000f3 
+ 00000272  0x000001a9 fetch  0x00000001 , 0x00004e93 
+ 00000273  0x000001aa bne  0x000000ff , 0x000001b2 
+ 00000274  0x000001ab call  0x0000011e 
+ 00000275  0x000001ad setarg  0x00000000 
+ 00000276  0x000001ae store  0x00000004 , 0x00004e88 
+ 00000277  0x000001af store  0x00000001 , 0x00004fb7 
+ 00000278  0x000001b0 rtn 
+ 00000279  0x000001b2 call  0x000005f8 
+ 00000280  0x000001b3 jam  0x00000000 , 0x00004fb6 
+ 00000281  0x000001b4 branch  0x000000ea 
+ 00000282  0x000001b7 jam  0x00000002 , 0x00004fbb 
+ 00000283  0x000001b9 jam  0x00000001 , 0x00004fb9 
+ 00000284  0x000001ba jam  0x00000000 , 0x00004fb8 
+ 00000285  0x000001bb branch  0x000000ea 
+ 00000286  0x000001be fetch  0x00000001 , 0x00004fba 
+ 00000287  0x000001bf beq  0x00000003 , 0x0000011b 
+ 00000288  0x000001c0 fetch  0x00000001 , 0x00004e84 
+ 00000289  0x000001c1 isolate0  0x00000004 , 0x0000003f 
+ 00000290  0x000001c2 branch  0x000000e8 , 0x00000001 
+ 00000291  0x000001c3 fetch  0x00000001 , 0x00004fba 
+ 00000292  0x000001c4 beq  0x00000001 , 0x0000011a 
+ 00000293  0x000001c5 beq  0x00000002 , 0x0000011b 
+ 00000294  0x000001c6 rtn 
+ 00000295  0x000001c9 fetch  0x00000001 , 0x00004e93 
+ 00000296  0x000001ca rtnne  0x000000ff 
+ 00000297  0x000001cb call  0x0000012c 
+ 00000298  0x000001cc ncall  0x00000134 , 0x0000002c 
+ 00000299  0x000001cd rtn 
+ 00000300  0x000001d0 disable  0x0000002c 
+ 00000301  0x000001d1 fetch  0x00000001 , 0x00004fb9 
+ 00000302  0x000001d2 rtnne  0x00000001 
+ 00000303  0x000001d3 fetch  0x00000001 , 0x00004fbb 
+ 00000304  0x000001d4 rtnne  0x00000000 
+ 00000305  0x000001d5 jam  0x00000001 , 0x00004fba 
+ 00000306  0x000001d6 jam  0x00000004 , 0x00004ec8 
+ 00000307  0x000001d7 branch  0x00007feb 
+ 00000308  0x000001da fetch  0x00000001 , 0x00004fbb 
+ 00000309  0x000001db branch  0x00000147 , 0x00000034 
+ 00000310  0x000001dc increase  0xffffffff , 0x0000003f 
+ 00000311  0x000001dd store  0x00000001 , 0x00004fbb 
+ 00000312  0x000001de jam  0x00000002 , 0x00004fba 
+ 00000313  0x000001df jam  0x00000004 , 0x00004ec8 
+ 00000314  0x000001e1 fetcht  0x00000001 , 0x00004e8e 
+ 00000315  0x000001e2 fetch  0x00000001 , 0x00004eab 
+ 00000316  0x000001e3 and_into  0x00000003 , 0x0000003f 
+ 00000317  0x000001e4 mul32  0x0000003f , 0x00000004 , 0x00000011 
+ 00000318  0x000001e5 setarg  0x00004e94 
+ 00000319  0x000001e6 iadd  0x00000011 , 0x0000003f 
+ 00000320  0x000001e7 iadd  0x00000002 , 0x00000006 
+ 00000321  0x000001e8 ifetch  0x00000001 , 0x00000006 
+ 00000322  0x000001e9 store  0x00000001 , 0x00004e8d 
+ 00000323  0x000001ea increase  0x00000001 , 0x00000002 
+ 00000324  0x000001eb and_into  0x00000003 , 0x00000002 
+ 00000325  0x000001ec storet  0x00000001 , 0x00004e8e 
+ 00000326  0x000001ed rtn 
+ 00000327  0x000001f0 jam  0x00000003 , 0x00004fba 
+ 00000328  0x000001f1 fetch  0x00000001 , 0x00004fb8 
+ 00000329  0x000001f2 nbranch  0x000000fb , 0x00000034 
+ 00000330  0x000001f3 jam  0x00000002 , 0x00004ec8 
+ 00000331  0x000001f4 branch  0x0000013a 
+ 00000332  0x000001f7 fetch  0x00000001 , 0x00004e93 
+ 00000333  0x000001f8 bne  0x000000ff , 0x000001b0 
+ 00000334  0x000001fa call  0x00000152 
+ 00000335  0x000001fc call  0x000001e8 
+ 00000336  0x000001fd jam  0x00000001 , 0x00004e88 
+ 00000337  0x000001fe rtn 
+ 00000338  0x00000201 fetch  0x00000002 , 0x00004fb4 
+ 00000339  0x00000202 call  0x00007f9c 
+ 00000340  0x00000203 branch  0x00000158 , 0x00000028 
+ 00000341  0x00000204 fetch  0x00000007 , 0x00004e20 
+ 00000342  0x00000205 rtn  0x00000034 
+ 00000343  0x00000206 branch  0x00007fe7 
+ 00000344  0x00000208 fetch  0x00000001 , 0x00004d87 
+ 00000345  0x00000209 nbranch  0x00000174 , 0x00000034 
+ 00000346  0x0000020a jam  0x00000001 , 0x00004e84 
+ 00000347  0x0000020b call  0x0000035a 
+ 00000348  0x0000020c call  0x0000016e 
+ 00000349  0x0000020d ifetcht  0x00000001 , 0x00000005 
+ 00000350  0x0000020e ifetch  0x00000001 , 0x00000012 
+ 00000351  0x0000020f ior  0x00000002 , 0x0000003f 
+ 00000352  0x00000210 istore  0x00000001 , 0x00000005 
+ 00000353  0x00000211 increase  0x00000001 , 0x00000012 
+ 00000354  0x00000212 ifetch  0x00000004 , 0x00000012 
+ 00000355  0x00000213 istore  0x00000004 , 0x00000005 
+ 00000356  0x00000214 increase  0x00000004 , 0x00000012 
+ 00000357  0x00000215 arg  0x00004e25 , 0x00000005 
+ 00000358  0x00000216 arg  0x00000002 , 0x00000039 
+ 00000359  0x00000218 ifetch  0x00000001 , 0x00000012 
+ 00000360  0x00000219 ifetcht  0x00000001 , 0x00000005 
+ 00000361  0x0000021a iadd  0x00000002 , 0x0000003f 
+ 00000362  0x0000021b istore  0x00000001 , 0x00000005 
+ 00000363  0x0000021c increase  0x00000001 , 0x00000012 
+ 00000364  0x0000021d loop  0x00000167 
+ 00000365  0x0000021e rtn 
+ 00000366  0x00000222 jam  0x00000000 , 0x00004eaf 
+ 00000367  0x00000223 add  0x00000011 , 0x00000001 , 0x0000003f 
+ 00000368  0x00000224 store  0x00000001 , 0x00004e83 
+ 00000369  0x00000225 call  0x000000ea 
+ 00000370  0x00000226 store  0x00000001 , 0x00004e1f 
+ 00000371  0x00000227 rtn 
+ 00000372  0x0000022a jam  0x00000002 , 0x00004e84 
+ 00000373  0x0000022b arg  0x00000009 , 0x00000011 
+ 00000374  0x0000022c arg  0x00004d91 , 0x00000012 
+ 00000375  0x0000022d fetch  0x00000001 , 0x00004d9a 
+ 00000376  0x0000022e ncall  0x0000017d , 0x00000034 
+ 00000377  0x0000022f call  0x0000016e 
+ 00000378  0x00000230 copy  0x00000012 , 0x00000006 
+ 00000379  0x00000231 copy  0x00000011 , 0x00000039 
+ 00000380  0x00000232 branch  0x00007f01 
+ 00000381  0x00000234 arg  0x00004d88 , 0x00000012 
+ 00000382  0x00000235 rtn 
+ 00000383  0x00000238 arg  0x00000004 , 0x00000039 
+ 00000384  0x00000239 arg  0x00004e1f , 0x00000005 
+ 00000385  0x0000023a branch  0x00007ec6 
+ 00000386  0x0000023d disable  0x0000002f 
+ 00000387  0x0000023e call  0x00000248 
+ 00000388  0x00000243 force  0x00000000 , 0x00000015 
+ 00000389  0x00000244 fetch  0x00000004 , 0x00004eab 
+ 00000390  0x00000245 iforce  0x00000009 
+ 00000391  0x00000246 fetcht  0x00000001 , 0x00000017 
+ 00000392  0x00000247 call  0x0000291f 
+ 00000393  0x00000248 call  0x00002924 
+ 00000394  0x00000249 call  0x00000203 
+ 00000395  0x0000024a call  0x00000244 , 0x0000002f 
+ 00000396  0x0000024b rtn 
+ 00000397  0x00000251 fetch  0x00000002 , 0x00004e89 
+ 00000398  0x00000252 increase  0x00000001 , 0x0000003f 
+ 00000399  0x00000253 store  0x00000002 , 0x00004e89 
+ 00000400  0x00000254 fetch  0x00000001 , 0x00004e8a 
+ 00000401  0x00000255 bbit1  0x00000004 , 0x0000019a 
+ 00000402  0x00000257 fetch  0x00000001 , 0x00004e93 
+ 00000403  0x00000258 bne  0x000000ff , 0x00000196 
+ 00000404  0x00000259 call  0x0000019f 
+ 00000405  0x0000025a branch  0x00000104 
+ 00000406  0x0000025d fetch  0x00000001 , 0x00004e89 
+ 00000407  0x0000025e rtnne  0x000000ff 
+ 00000408  0x00000260 setarg  0x00000000 
+ 00000409  0x00000261 store  0x00000002 , 0x00004e89 
+ 00000410  0x00000263 jam  0x0000003a , 0x00000a99 
+ 00000411  0x00000264 branch  0x00007d86 
+ 00000412  0x00000267 call  0x0000073f 
+ 00000413  0x00000268 call  0x000005f8 
+ 00000414  0x00000269 branch  0x0000013a 
+ 00000415  0x0000026c fetch  0x00000001 , 0x00004e8c 
+ 00000416  0x0000026d sub  0x0000003f , 0x0000000b , 0x0000003e 
+ 00000417  0x0000026e nbranch  0x0000019c , 0x00000002 
+ 00000418  0x0000026f increase  0x00000001 , 0x0000003f 
+ 00000419  0x00000270 store  0x00000001 , 0x00004e8c 
+ 00000420  0x00000271 beq  0x00000002 , 0x000000ee 
+ 00000421  0x00000272 beq  0x00000006 , 0x000000f5 
+ 00000422  0x00000273 beq  0x00000008 , 0x000000ee 
+ 00000423  0x00000274 beq  0x0000000c , 0x000000f5 
+ 00000424  0x00000275 rtn 
+ 00000425  0x00000278 call  0x000001cd 
+ 00000426  0x00000279 fetch  0x00000001 , 0x00004e81 
+ 00000427  0x0000027a rtn  0x00000034 
+ 00000428  0x0000027b iforce  0x00000039 
+ 00000429  0x0000027c arg  0x00004dff , 0x00000006 
+ 00000430  0x0000027d arg  0x00004e61 , 0x00000005 
+ 00000431  0x0000027e branch  0x00007f01 
+ 00000432  0x00000281 jam  0x00000090 , 0x000011c7 
+ 00000433  0x00000282 branch  0x0000077a 
+ 00000434  0x00000285 call  0x00000713 
+ 00000435  0x00000287 jam  0x00000091 , 0x000011c7 
+ 00000436  0x00000288 branch  0x0000077a 
+ 00000437  0x0000028b call  0x000004f6 
+ 00000438  0x0000028c jam  0x00000060 , 0x000011c7 
+ 00000439  0x0000028d branch  0x0000077a 
+ 00000440  0x00000290 jam  0x00000000 , 0x00004d46 
+ 00000441  0x00000291 jam  0x00000070 , 0x000011c7 
+ 00000442  0x00000292 branch  0x0000077a 
+ 00000443  0x00000296 jam  0x000000ff , 0x0000119e 
+ 00000444  0x00000297 fetch  0x00000001 , 0x00004e84 
+ 00000445  0x00000298 store  0x00000001 , 0x0000119f 
+ 00000446  0x00000299 fetch  0x00000004 , 0x00004eba 
+ 00000447  0x0000029a store  0x00000004 , 0x000011a0 
+ 00000448  0x0000029b arg  0x00000006 , 0x00000002 
+ 00000449  0x0000029c arg  0x0000119e , 0x00000011 
+ 00000450  0x0000029d call  0x000001c8 
+ 00000451  0x0000029e branch  0x000001e8 
+ 00000452  0x000002a2 set0  0x00000026 , 0x00000000 
+ 00000453  0x000002a3 call  0x000053ce 
+ 00000454  0x000002a5 arg  0x00000003 , 0x00000007 
+ 00000455  0x000002a6 branch  0x000043d2 
+ 00000456  0x000002a9 storet  0x00000001 , 0x00004e83 
+ 00000457  0x000002aa copy  0x00000002 , 0x00000039 
+ 00000458  0x000002ab arg  0x00004e1f , 0x00000005 
+ 00000459  0x000002ac copy  0x00000011 , 0x00000006 
+ 00000460  0x000002ad branch  0x00007f01 
+ 00000461  0x000002b1 fetch  0x00000001 , 0x00004dfe 
+ 00000462  0x000002b2 rshift3  0x0000003f , 0x0000003f 
+ 00000463  0x000002b3 store  0x00000001 , 0x00004e81 
+ 00000464  0x000002b5 increase  0x00000001 , 0x0000003f 
+ 00000465  0x000002b6 arg  0x00004dfe , 0x00000006 
+ 00000466  0x000002b7 iadd  0x00000006 , 0x00000006 
+ 00000467  0x000002b8 ifetch  0x00000003 , 0x00000006 
+ 00000468  0x000002b9 store  0x00000003 , 0x00004ec0 
+ 00000469  0x000002bb fetch  0x00000001 , 0x00004dfe 
+ 00000470  0x000002bc rshift  0x0000003f , 0x0000003f 
+ 00000471  0x000002bd and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000472  0x000002be store  0x00000001 , 0x00004ec6 
+ 00000473  0x000002bf rtn 
+ 00000474  0x000002c2 store  0x00000004 , 0x00004eab 
+ 00000475  0x000002c5 arg  0x00000000 , 0x00000011 
+ 00000476  0x000002c6 arg  0x00000004 , 0x00000039 
+ 00000477  0x000002c7 arg  0x00004eab , 0x00000006 
+ 00000478  0x000002c9 ifetch  0x00000001 , 0x00000006 
+ 00000479  0x000002ca iadd  0x00000011 , 0x00000011 
+ 00000480  0x000002cb loop  0x000001de 
+ 00000481  0x000002cc copy  0x00000011 , 0x0000003f 
+ 00000482  0x000002cd store  0x00000002 , 0x00004f34 
+ 00000483  0x000002ce fetch  0x00000001 , 0x00004f34 
+ 00000484  0x000002cf fetcht  0x00000001 , 0x00004f35 
+ 00000485  0x000002d0 iadd  0x00000002 , 0x0000003f 
+ 00000486  0x000002d1 store  0x00000001 , 0x00004f36 
+ 00000487  0x000002d2 rtn 
+ 00000488  0x000002d7 fetch  0x00000001 , 0x00004e83 
+ 00000489  0x000002d8 increase  0x00000002 , 0x0000003f 
+ 00000490  0x000002d9 store  0x00000001 , 0x00004e85 
+ 00000491  0x000002db fetch  0x00000001 , 0x00004e84 
+ 00000492  0x000002dc store  0x00000001 , 0x00004e3f 
+ 00000493  0x000002de fetch  0x00000001 , 0x00004e83 
+ 00000494  0x000002df lshift3  0x0000003f , 0x0000003f 
+ 00000495  0x000002e0 fetcht  0x00000001 , 0x00004e82 
+ 00000496  0x000002e1 and  0x00000002 , 0x00000003 , 0x00000002 
+ 00000497  0x000002e2 lshift  0x00000002 , 0x00000002 
+ 00000498  0x000002e3 ior  0x00000002 , 0x0000003f 
+ 00000499  0x000002e4 fetcht  0x00000001 , 0x00004ebf 
+ 00000500  0x000002e5 iadd  0x00000002 , 0x0000003f 
+ 00000501  0x000002e6 istore  0x00000001 , 0x00000005 
+ 00000502  0x000002e8 fetch  0x00000001 , 0x00004e83 
+ 00000503  0x000002e9 iforce  0x00000039 
+ 00000504  0x000002ea arg  0x00004e1f , 0x00000006 
+ 00000505  0x000002eb branch  0x00007f01 
+ 00000506  0x0000030e disable  0x00000009 
+ 00000507  0x0000030f disable  0x00000007 
+ 00000508  0x00000310 setarg  0x00555555 
+ 00000509  0x00000311 iforce  0x0000000f 
+ 00000510  0x00000312 fetch  0x00000001 , 0x00004e8d 
+ 00000511  0x00000313 reverse  0x0000003f , 0x00000002 
+ 00000512  0x00000314 set1  0x00000001 , 0x00000002 
+ 00000513  0x00000315 rshift  0x00000002 , 0x0000000e 
+ 00000514  0x00000316 rtn 
+ 00000515  0x00000325 call  0x000001fa 
+ 00000516  0x00000326 disable  0x0000002f 
+ 00000517  0x00000327 enable  0x0000000d 
+ 00000518  0x00000328 enable  0x00000021 
+ 00000519  0x00000329 disable  0x00000020 
+ 00000520  0x0000032a enable  0x00000010 
+ 00000521  0x0000032b fetch  0x00000002 , 0x00004e86 
+ 00000522  0x0000032c iforce  0x0000001b 
+ 00000523  0x0000032d correlate  0x0000003e , 0x00000003 
+ 00000524  0x0000032e nbranch  0x00000244 , 0x00000018 
+ 00000525  0x00000331 disable  0x0000000d 
+ 00000526  0x00000332 enable  0x0000000b 
+ 00000527  0x00000333 enable  0x00000007 
+ 00000528  0x00000334 enable  0x00000009 
+ 00000529  0x00000335 call  0x00000241 
+ 00000530  0x00000336 store  0x00000001 , 0x00004f37 
+ 00000531  0x00000337 fetcht  0x00000001 , 0x00004f36 
+ 00000532  0x00000338 isub  0x00000002 , 0x0000003e 
+ 00000533  0x00000339 nbranch  0x00000244 , 0x00000005 
+ 00000534  0x0000033a call  0x00000241 
+ 00000535  0x0000033b store  0x00000001 , 0x00004dfd 
+ 00000536  0x0000033f fetch  0x00000001 , 0x00004dfd 
+ 00000537  0x00000340 fetcht  0x00000001 , 0x00004e84 
+ 00000538  0x00000341 icompare  0x00000007 , 0x00000002 
+ 00000539  0x00000342 nbranch  0x00000244 , 0x00000001 
+ 00000540  0x00000344 call  0x00000241 
+ 00000541  0x00000345 istore  0x00000001 , 0x00000005 
+ 00000542  0x00000346 rshift3  0x0000003f , 0x0000003f 
+ 00000543  0x00000347 and  0x0000003f , 0x0000001f , 0x00000039 
+ 00000544  0x00000348 branch  0x00000224 , 0x00000005 
+ 00000545  0x0000034a call  0x00000241 
+ 00000546  0x0000034b istore  0x00000001 , 0x00000005 
+ 00000547  0x0000034c loop  0x00000221 
+ 00000548  0x0000034f copy  0x00000005 , 0x00000011 
+ 00000549  0x00000350 call  0x00000241 
+ 00000550  0x00000351 store  0x00000001 , 0x00004fbe 
+ 00000551  0x00000352 copy  0x00000011 , 0x00000005 
+ 00000552  0x00000353 parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00000553  0x00000354 enable  0x00000010 
+ 00000554  0x00000355 arg  0x00000664 , 0x0000001b 
+ 00000555  0x00000356 rshift32  0x0000003f , 0x0000003f 
+ 00000556  0x00000357 rshift16  0x0000003f , 0x0000003f 
+ 00000557  0x00000358 istore  0x00000003 , 0x00000005 
+ 00000558  0x00000359 disable  0x0000000b 
+ 00000559  0x0000035d branch  0x00000244 , 0x00000006 
+ 00000560  0x00000360 enable  0x0000002f 
+ 00000561  0x00000361 fetch  0x00000001 , 0x00000017 
+ 00000562  0x00000362 add  0x0000003f , 0x00000000 , 0x00000011 
+ 00000563  0x00000363 call  0x00002981 
+ 00000564  0x00000364 disable  0x0000000d 
+ 00000565  0x00000365 call  0x00002918 
+ 00000566  0x0000036a fetch  0x00000001 , 0x00004fbe 
+ 00000567  0x0000036e copy  0x0000003f , 0x00000011 
+ 00000568  0x0000036f fetcht  0x00000001 , 0x00004f3e 
+ 00000569  0x00000370 setarg  0x00004f45 
+ 00000570  0x00000371 iadd  0x00000002 , 0x00000005 
+ 00000571  0x00000372 copy  0x00000011 , 0x0000003f 
+ 00000572  0x00000373 istore  0x00000001 , 0x00000005 
+ 00000573  0x00000374 increase  0x00000001 , 0x00000002 
+ 00000574  0x00000375 and_into  0x00000007 , 0x00000002 
+ 00000575  0x00000376 storet  0x00000001 , 0x00004f3e 
+ 00000576  0x00000377 rtn 
+ 00000577  0x0000037c parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00000578  0x0000037d rshift3  0x0000000c , 0x0000003f 
+ 00000579  0x0000037e rtn 
+ 00000580  0x00000381 disable  0x0000001b 
+ 00000581  0x00000382 disable  0x0000000b 
+ 00000582  0x00000383 call  0x0000264d 
+ 00000583  0x00000384 rtn 
+ 00000584  0x00000392 call  0x000053c4 
+ 00000585  0x00000393 fetch  0x00000004 , 0x00004eab 
+ 00000586  0x00000394 iforce  0x00000009 
+ 00000587  0x00000395 call  0x000001fa 
+ 00000588  0x00000398 call  0x00002918 
+ 00000589  0x00000399 fetcht  0x00000001 , 0x00004e8d 
+ 00000590  0x0000039a call  0x00002933 
+ 00000591  0x0000039c set1  0x00000000 , 0x00000015 
+ 00000592  0x0000039d enable  0x0000001d 
+ 00000593  0x0000039e enable  0x00000020 
+ 00000594  0x0000039f disable  0x00000021 
+ 00000595  0x000003a2 rshift16  0x00000009 , 0x0000003f 
+ 00000596  0x000003a3 rshift8  0x0000003f , 0x0000003f 
+ 00000597  0x000003a4 rshift4  0x0000003f , 0x0000003f 
+ 00000598  0x000003a5 inject  0x00000003 , 0x00000028 
+ 00000599  0x000003a6 disable  0x0000001d 
+ 00000600  0x000003a7 enable  0x0000001b 
+ 00000601  0x000003a8 enable  0x00000007 
+ 00000602  0x000003a9 enable  0x00000009 
+ 00000603  0x000003aa fetch  0x00000001 , 0x00004f36 
+ 00000604  0x000003ab inject  0x00000003 , 0x00000008 
+ 00000605  0x000003ac fetch  0x00000001 , 0x00004e85 
+ 00000606  0x000003ad iforce  0x00000039 
+ 00000607  0x000003ae arg  0x00004e3f , 0x00000006 
+ 00000608  0x000003b0 ifetch  0x00000001 , 0x00000006 
+ 00000609  0x000003b1 inject  0x00000003 , 0x00000008 
+ 00000610  0x000003b2 loop  0x00000260 
+ 00000611  0x000003b9 enable  0x00000008 
+ 00000612  0x000003ba inject  0x00000003 , 0x00000018 
+ 00000613  0x000003bb disable  0x00000008 
+ 00000614  0x000003bc until  0x0000003e , 0x00000027 
+ 00000615  0x000003bd nop  0x00000064 
+ 00000616  0x000003be disable  0x0000001d 
+ 00000617  0x000003bf disable  0x0000001b 
+ 00000618  0x000003c0 rtn 
+ 00000619  0x000003c3 call  0x00007fe9 
+ 00000620  0x000003c4 fetcht  0x00000004 , 0x00004ea4 
+ 00000621  0x000003c5 copy  0x00000022 , 0x0000003f 
+ 00000622  0x000003c6 isub  0x00000002 , 0x0000003e 
+ 00000623  0x000003c7 ncall  0x00002d18 , 0x00000002 
+ 00000624  0x000003c8 copy  0x0000003f , 0x00000012 
+ 00000625  0x000003c9 fetch  0x00000004 , 0x00004ea4 
+ 00000626  0x000003ca fetcht  0x00000001 , 0x00004ea8 
+ 00000627  0x000003cb iadd  0x00000002 , 0x00000002 
+ 00000628  0x000003cc copy  0x00000012 , 0x0000003f 
+ 00000629  0x000003cd isub  0x00000002 , 0x0000003e 
+ 00000630  0x000003ce nrtn  0x00000002 
+ 00000631  0x000003cf set0  0x0000001c , 0x0000003f 
+ 00000632  0x000003d0 store  0x00000004 , 0x00004ea4 
+ 00000633  0x000003d1 branch  0x00007fe7 
+ 00000634  0x000003ea arg  0x00000000 , 0x00000002 
+ 00000635  0x000003ee arg  0x00000008 , 0x00000039 
+ 00000636  0x000003ef copy  0x00000011 , 0x00000006 
+ 00000637  0x000003f5 ifetch  0x00000001 , 0x00000006 
+ 00000638  0x000003f6 iadd  0x00000002 , 0x00000002 
+ 00000639  0x000003f7 loop  0x0000027d 
+ 00000640  0x000003f8 rshift3  0x00000002 , 0x0000003f 
+ 00000641  0x000003f9 copy  0x0000003f , 0x00000002 
+ 00000642  0x000003fa rtnmark0  0x00000026 
+ 00000643  0x000003fc div  0x0000003f , 0x0000000a 
+ 00000644  0x000003fd call  0x00007f86 
+ 00000645  0x000003fe quotient  0x0000003f 
+ 00000646  0x000003ff lshift4  0x0000003f , 0x0000003f 
+ 00000647  0x00000400 remainder  0x00000002 
+ 00000648  0x00000401 ior  0x00000002 , 0x00000002 
+ 00000649  0x00000402 rtn 
+ 00000650  0x00000408 rtnmark1  0x00000026 
+ 00000651  0x00000409 call  0x0000032e 
+ 00000652  0x0000040a call  0x000000c3 
+ 00000653  0x0000040b fetch  0x00000001 , 0x00004040 
+ 00000654  0x0000040c bbit0  0x00000000 , 0x00000291 
+ 00000655  0x0000040d fetch  0x00000001 , 0x000000a0 
+ 00000656  0x0000040e nrtn  0x00000034 
+ 00000657  0x00000410 setarg  0x00000000 
+ 00000658  0x00000411 store  0x00000008 , 0x000000a1 
+ 00000659  0x00000412 rtn 
+ 00000660  0x00000415 fetch  0x00000001 , 0x00004cd9 
+ 00000661  0x00000416 rtn  0x00000034 
+ 00000662  0x00000417 branch  0x00000514 
+ 00000663  0x0000041a call  0x0000296c 
+ 00000664  0x0000041b call  0x00003416 
+ 00000665  0x0000041c call  0x000074b9 
+ 00000666  0x0000041d branch  0x000003eb , 0x0000002b 
+ 00000667  0x0000041f fetch  0x00000003 , 0x000044a3 
+ 00000668  0x00000420 store  0x00000003 , 0x00004d3f 
+ 00000669  0x00000421 call  0x00000001 
+ 00000670  0x00000429 jam  0x00000022 , 0x000011c7 
+ 00000671  0x0000042a branch  0x0000077a 
+ 00000672  0x0000042d jam  0x00000001 , 0x0000479f 
+ 00000673  0x0000042e jam  0x00000028 , 0x000047a0 
+ 00000674  0x0000042f rtn 
+ 00000675  0x00000434 fetch  0x00000001 , 0x00004f3a 
+ 00000676  0x00000435 store  0x00000001 , 0x000041de 
+ 00000677  0x00000436 rtn 
+ 00000678  0x00000441 arg  0x00004370 , 0x00000011 
+ 00000679  0x00000443 ifetch  0x00000001 , 0x00000011 
+ 00000680  0x00000444 rtn  0x00000034 
+ 00000681  0x00000445 iadd  0x00000006 , 0x00000011 
+ 00000682  0x00000446 ifetch  0x00000001 , 0x00000006 
+ 00000683  0x00000447 rtneq  0x00000001 
+ 00000684  0x00000448 branch  0x000002a7 
+ 00000685  0x0000044b jam  0x0000005a , 0x00004d3e 
+ 00000686  0x0000044c rtn 
+ 00000687  0x0000044f jam  0x000000ff , 0x00004d3e 
+ 00000688  0x00000450 jam  0x00000034 , 0x00004210 
+ 00000689  0x00000451 fetch  0x00000006 , 0x00004fc8 
+ 00000690  0x00000452 store  0x00000006 , 0x000044a0 
+ 00000691  0x00000453 rtn 
+ 00000692  0x00000457 call  0x000003eb 
+ 00000693  0x00000458 call  0x000040c0 
+ 00000694  0x0000045a call  0x000040d9 
+ 00000695  0x0000045b beq  0x00000030 , 0x000002bc 
+ 00000696  0x0000045c beq  0x00000031 , 0x000002c8 
+ 00000697  0x0000045d call  0x000040d1 
+ 00000698  0x0000045e nop  0x000003e8 
+ 00000699  0x0000045f branch  0x000002b6 
+ 00000700  0x00000462 call  0x00000360 
+ 00000701  0x00000463 fetch  0x00000001 , 0x000046de 
+ 00000702  0x00000465 beq  0x00000054 , 0x000002c0 
+ 00000703  0x00000467 branch  0x000040e0 
+ 00000704  0x00000473 jam  0x00000002 , 0x000046e0 
+ 00000705  0x00000474 arg  0x00004d62 , 0x00000013 
+ 00000706  0x00000476 ifetch  0x00000002 , 0x00000013 
+ 00000707  0x00000477 rtneq  0x000000ff 
+ 00000708  0x00000478 call  0x00006413 
+ 00000709  0x00000479 nop  0x00002ee0 
+ 00000710  0x0000047a increase  0x00000002 , 0x00000013 
+ 00000711  0x0000047b branch  0x000002c2 
+ 00000712  0x0000048f call  0x00000360 
+ 00000713  0x00000490 fetch  0x00000001 , 0x000046de 
+ 00000714  0x00000491 beq  0x00000070 , 0x000040e8 
+ 00000715  0x00000492 jam  0x00000001 , 0x000046e0 
+ 00000716  0x00000493 rtn 
+ 00000717  0x00000496 fetch  0x00000001 , 0x0000477a 
+ 00000718  0x00000497 bne  0x000000ff , 0x00000514 
+ 00000719  0x00000499 fetch  0x00000001 , 0x000046e1 
+ 00000720  0x0000049a store  0x00000001 , 0x0000477a 
+ 00000721  0x0000049b branch  0x00000514 
+ 00000722  0x000004a3 jam  0x00000040 , 0x00008086 
+ 00000723  0x000004a4 jam  0x00000000 , 0x00008087 
+ 00000724  0x000004a5 hfetch  0x00000001 , 0x00008081 
+ 00000725  0x000004a6 set0  0x00000000 , 0x0000003f 
+ 00000726  0x000004a7 set0  0x00000001 , 0x0000003f 
+ 00000727  0x000004a8 set1  0x00000003 , 0x0000003f 
+ 00000728  0x000004a9 set0  0x00000004 , 0x0000003f 
+ 00000729  0x000004aa hstore  0x00000001 , 0x00008081 
+ 00000730  0x000004ab setarg  0x00000000 
+ 00000731  0x000004ac store  0x00000004 , 0x000001f5 
+ 00000732  0x000004ad hfetch  0x00000001 , 0x0000807f 
+ 00000733  0x000004ae set0  0x00000000 , 0x0000003f 
+ 00000734  0x000004af hstore  0x00000001 , 0x0000807f 
+ 00000735  0x000004b0 rtn 
+ 00000736  0x000004b3 call  0x00000325 
+ 00000737  0x000004b4 call  0x00004423 
+ 00000738  0x000004b5 fetch  0x00000002 , 0x00004778 
+ 00000739  0x000004b6 arg  0x0000aa55 , 0x00000002 
+ 00000740  0x000004b7 isub  0x00000002 , 0x0000003e 
+ 00000741  0x000004b8 branch  0x00000312 , 0x00000005 
+ 00000742  0x000004b9 storet  0x00000002 , 0x00004778 
+ 00000743  0x000004ba call  0x0000441c 
+ 00000744  0x000004bb fetch  0x00000001 , 0x000046e1 
+ 00000745  0x000004bc store  0x00000001 , 0x0000477a 
+ 00000746  0x000004bd fetch  0x00000004 , 0x00004d1e 
+ 00000747  0x000004be store  0x00000004 , 0x0000477b 
+ 00000748  0x000004bf store  0x00000004 , 0x00004eab 
+ 00000749  0x000004c0 call  0x000002af 
+ 00000750  0x000004c3 arg  0x00000004 , 0x00000002 
+ 00000751  0x000004c4 arg  0x00004eab , 0x00000011 
+ 00000752  0x000004c5 arg  0x0000005b , 0x00000012 
+ 00000753  0x000004c6 rtn 
+ 00000754  0x000004c9 fetch  0x00000003 , 0x00004700 
+ 00000755  0x000004ca store  0x00000003 , 0x00004232 
+ 00000756  0x000004cb call  0x0000652a 
+ 00000757  0x000004cd setarg  0x000186a0 
+ 00000758  0x000004ce call  0x00002a8f 
+ 00000759  0x000004cf call  0x0000650b 
+ 00000760  0x000004d0 setarg  0x000001fa 
+ 00000761  0x000004d1 hstore  0x00000002 , 0x0000808c 
+ 00000762  0x000004d2 setarg  0x00000005 
+ 00000763  0x000004d3 call  0x000064f3 
+ 00000764  0x000004d4 bbit1  0x00000000 , 0x000002f5 
+ 00000765  0x000004d5 rtn 
+ 00000766  0x000004d8 copy  0x0000003f , 0x00000013 
+ 00000767  0x000004d9 copy  0x00000011 , 0x0000003f 
+ 00000768  0x000004da increase  0xfffffffc , 0x0000003f 
+ 00000769  0x000004db copy  0x0000003f , 0x00000012 
+ 00000770  0x000004dc ifetch  0x00000004 , 0x00000012 
+ 00000771  0x000004dd store  0x00000004 , 0x00004d19 
+ 00000772  0x000004de copy  0x00000013 , 0x0000003f 
+ 00000773  0x000004df call  0x00006552 
+ 00000774  0x000004e0 fetch  0x00000004 , 0x00004d19 
+ 00000775  0x000004e1 istore  0x00000004 , 0x00000012 
+ 00000776  0x000004e2 rtn 
+ 00000777  0x000004e5 setarg  0x0000477f 
+ 00000778  0x000004e6 arg  0x00004720 , 0x00000002 
+ 00000779  0x000004e7 isub  0x00000002 , 0x00000002 
+ 00000780  0x000004e8 fetch  0x00000003 , 0x00004700 
+ 00000781  0x000004e9 arg  0x00004720 , 0x00000011 
+ 00000782  0x000004ea rtn 
+ 00000783  0x000004ed call  0x00000325 
+ 00000784  0x000004ee call  0x00000309 
+ 00000785  0x000004ef branch  0x00006562 
+ 00000786  0x000004f2 call  0x0000030f 
+ 00000787  0x000004f3 call  0x000005b3 
+ 00000788  0x000004f4 call  0x0000431a 
+ 00000789  0x000004f5 fetch  0x00000004 , 0x0000477b 
+ 00000790  0x000004f6 store  0x00000004 , 0x00004eab 
+ 00000791  0x000004f7 fetch  0x00000006 , 0x00004722 
+ 00000792  0x000004f8 fetcht  0x00000006 , 0x00004df7 
+ 00000793  0x000004f9 isub  0x00000002 , 0x0000003e 
+ 00000794  0x000004fa nbranch  0x000002ad , 0x00000005 
+ 00000795  0x000004fb call  0x000002af 
+ 00000796  0x000004fc rtn 
+ 00000797  0x000004ff jam  0x000000b9 , 0x00000aa2 
+ 00000798  0x00000501 call  0x000002d2 
+ 00000799  0x00000502 call  0x000069ac 
+ 00000800  0x00000503 call  0x0000650b 
+ 00000801  0x00000504 arg  0x00004d19 , 0x00000011 
+ 00000802  0x00000505 fetcht  0x00000001 , 0x00000aa2 
+ 00000803  0x00000506 call  0x00006556 
+ 00000804  0x00000507 branch  0x000069ac 
+ 00000805  0x0000050a jam  0x000000ab , 0x00000aa2 
+ 00000806  0x0000050b branch  0x0000031e 
+ 00000807  0x0000051b call  0x00004401 
+ 00000808  0x0000051c fetch  0x00000002 , 0x0000469f 
+ 00000809  0x0000051d rtn  0x00000034 
+ 00000810  0x0000051f jam  0x00000001 , 0x00004fc3 
+ 00000811  0x00000520 setarg  0x00000000 
+ 00000812  0x00000521 store  0x00000002 , 0x00004fc4 
+ 00000813  0x00000522 rtn 
+ 00000814  0x00000525 arg  0x00001800 , 0x00000006 
+ 00000815  0x00000526 arg  0x000049e5 , 0x00000005 
+ 00000816  0x00000527 call  0x00000336 
+ 00000817  0x00000528 arg  0x00001900 , 0x00000006 
+ 00000818  0x00000529 call  0x00000336 
+ 00000819  0x0000052a arg  0x00001a00 , 0x00000006 
+ 00000820  0x0000052b call  0x00000336 
+ 00000821  0x0000052c arg  0x00001b00 , 0x00000006 
+ 00000822  0x0000052e arg  0x0000001b , 0x00000039 
+ 00000823  0x0000052f branch  0x00007f01 
+ 00000824  0x00000532 arg  0x000049e5 , 0x00000006 
+ 00000825  0x00000533 arg  0x00001800 , 0x00000005 
+ 00000826  0x00000534 call  0x00000336 
+ 00000827  0x00000535 arg  0x00001900 , 0x00000005 
+ 00000828  0x00000536 call  0x00000336 
+ 00000829  0x00000537 arg  0x00001a00 , 0x00000005 
+ 00000830  0x00000538 call  0x00000336 
+ 00000831  0x00000539 arg  0x00001b00 , 0x00000005 
+ 00000832  0x0000053a branch  0x00000336 
+ 00000833  0x0000053d call  0x00005892 
+ 00000834  0x0000053e nrtn  0x00000034 
+ 00000835  0x0000053f fetch  0x00000001 , 0x00004d3e 
+ 00000836  0x00000540 beq  0x000000ff , 0x00000348 
+ 00000837  0x00000541 fetch  0x00000001 , 0x000046c5 
+ 00000838  0x00000542 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000839  0x00000543 rtnne  0x00000003 
+ 00000840  0x00000545 fetch  0x00000001 , 0x0000479e 
+ 00000841  0x00000546 call  0x0000038a , 0x00000034 
+ 00000842  0x00000547 fetch  0x00000004 , 0x000046d3 
+ 00000843  0x00000548 bbit1  0x00000005 , 0x00004179 
+ 00000844  0x00000549 call  0x00003f97 
+ 00000845  0x0000054a nrtn  0x00000028 
+ 00000846  0x0000054b call  0x00000357 
+ 00000847  0x0000054c call  0x0000035a 
+ 00000848  0x0000054d call  0x00000385 
+ 00000849  0x0000054e fetch  0x00000001 , 0x00004d87 
+ 00000850  0x0000054f beq  0x00000001 , 0x00000363 
+ 00000851  0x00000551 arg  0x0000469a , 0x00000011 
+ 00000852  0x00000552 call  0x00007e3d 
+ 00000853  0x00000553 call  0x00000374 , 0x00000028 
+ 00000854  0x00000555 rtn 
+ 00000855  0x00000558 jam  0x00000000 , 0x00004172 
+ 00000856  0x00000559 jam  0x0000001e , 0x00004d36 
+ 00000857  0x0000055a rtn 
+ 00000858  0x0000055d fetch  0x00000001 , 0x00004d35 
+ 00000859  0x0000055e rtnne  0x00000001 
+ 00000860  0x0000055f setarg  0x00000000 
+ 00000861  0x00000560 store  0x00000001 , 0x00004d35 
+ 00000862  0x00000561 store  0x00000004 , 0x0000469b 
+ 00000863  0x00000562 branch  0x0000038c 
+ 00000864  0x00000565 arg  0x00004d6f , 0x00000013 
+ 00000865  0x00000566 call  0x000002c2 
+ 00000866  0x00000567 branch  0x000002cd 
+ 00000867  0x0000056a fetch  0x00000001 , 0x00004d9a 
+ 00000868  0x0000056b branch  0x0000036d , 0x00000034 
+ 00000869  0x0000056c fetch  0x00000008 , 0x00004d89 
+ 00000870  0x0000056e store  0x00000008 , 0x00000a9a 
+ 00000871  0x0000056f arg  0x00000008 , 0x00000011 
+ 00000872  0x00000570 arg  0x00000015 , 0x00000002 
+ 00000873  0x00000571 call  0x00005a64 
+ 00000874  0x00000572 fetch  0x00000008 , 0x00000a9a 
+ 00000875  0x00000573 istore  0x00000008 , 0x00000005 
+ 00000876  0x00000574 rtn 
+ 00000877  0x00000577 fetch  0x00000008 , 0x00004d92 
+ 00000878  0x00000578 branch  0x00000366 
+ 00000879  0x0000057d jam  0x00000007 , 0x000047a2 
+ 00000880  0x0000057e jam  0x00000004 , 0x000047a3 
+ 00000881  0x0000057f setarg  0x000047a2 
+ 00000882  0x00000580 store  0x00000002 , 0x00004218 
+ 00000883  0x00000581 branch  0x00007e38 
+ 00000884  0x00000584 fetch  0x00000001 , 0x000047c3 
+ 00000885  0x00000585 increase  0x00000001 , 0x0000003f 
+ 00000886  0x00000586 store  0x00000001 , 0x000047c3 
+ 00000887  0x00000587 rtn 
+ 00000888  0x0000058a arg  0x0000469a , 0x00000011 
+ 00000889  0x0000058b call  0x00007e54 
+ 00000890  0x0000058c branch  0x0000037c , 0x00000028 
+ 00000891  0x0000058d rtn 
+ 00000892  0x00000590 call  0x00005652 
+ 00000893  0x00000591 fetch  0x00000001 , 0x000047c3 
+ 00000894  0x00000592 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00000895  0x00000593 ncall  0x00005650 , 0x00000002 
+ 00000896  0x00000594 fetch  0x00000001 , 0x000047c3 
+ 00000897  0x00000595 rtn  0x00000034 
+ 00000898  0x00000596 increase  0xffffffff , 0x0000003f 
+ 00000899  0x00000597 store  0x00000001 , 0x000047c3 
+ 00000900  0x00000598 branch  0x00003f90 
+ 00000901  0x0000059c fetch  0x00000002 , 0x0000469f 
+ 00000902  0x0000059d rtn  0x00000034 
+ 00000903  0x0000059e jam  0x00000001 , 0x000049e1 
+ 00000904  0x0000059f jam  0x00000002 , 0x000049e2 
+ 00000905  0x000005a0 rtn 
+ 00000906  0x000005a3 jam  0x00000001 , 0x0000479e 
+ 00000907  0x000005a4 call  0x00005814 
+ 00000908  0x000005a6 jam  0x00000001 , 0x00004cd9 
+ 00000909  0x000005a7 branch  0x000002b4 
+ 00000910  0x000005aa call  0x000068a2 
+ 00000911  0x000005ad setarg  0x00001122 
+ 00000912  0x000005af store  0x00000002 , 0x000047c4 
+ 00000913  0x000005b0 rtn 
+ 00000914  0x000005b3 rtn  0x0000002e 
+ 00000915  0x000005b4 fetch  0x00000001 , 0x000041e2 
+ 00000916  0x000005b5 rtn  0x00000034 
+ 00000917  0x000005b6 call  0x00005271 
+ 00000918  0x000005b7 nrtn  0x00000034 
+ 00000919  0x000005b8 fetch  0x00000001 , 0x0000479e 
+ 00000920  0x000005b9 call  0x0000038a , 0x00000034 
+ 00000921  0x000005ba fetch  0x00000004 , 0x000046d3 
+ 00000922  0x000005bb bbit1  0x00000005 , 0x00003f8a 
+ 00000923  0x000005bc bbit1  0x00000009 , 0x00003f8a 
+ 00000924  0x000005bd call  0x00003f97 
+ 00000925  0x000005be nrtn  0x00000028 
+ 00000926  0x000005bf call  0x00000357 
+ 00000927  0x000005c0 call  0x0000035a 
+ 00000928  0x000005c1 call  0x00000385 
+ 00000929  0x000005c2 fetch  0x00000001 , 0x00004cde 
+ 00000930  0x000005c3 beq  0x00000001 , 0x000003a8 
+ 00000931  0x000005c4 fetch  0x00000001 , 0x00004ce5 
+ 00000932  0x000005c5 rtn  0x00000034 
+ 00000933  0x000005c6 fetch  0x00000001 , 0x00004d87 
+ 00000934  0x000005c7 beq  0x00000001 , 0x000003b9 
+ 00000935  0x000005c8 branch  0x00003f81 
+ 00000936  0x000005cb fetch  0x00000001 , 0x0000469a 
+ 00000937  0x000005cc store  0x00000001 , 0x00004cdf 
+ 00000938  0x000005cd fetch  0x00000001 , 0x0000469b 
+ 00000939  0x000005ce istore  0x00000001 , 0x00000005 
+ 00000940  0x000005cf fetch  0x00000001 , 0x0000469d 
+ 00000941  0x000005d0 istore  0x00000001 , 0x00000005 
+ 00000942  0x000005d1 fetch  0x00000002 , 0x0000469f 
+ 00000943  0x000005d2 istore  0x00000002 , 0x00000005 
+ 00000944  0x000005d4 arg  0x00000007 , 0x00000011 
+ 00000945  0x000005d5 call  0x00004d63 
+ 00000946  0x000005d6 fetch  0x00000002 , 0x0000424e 
+ 00000947  0x000005d7 istore  0x00000002 , 0x00000005 
+ 00000948  0x000005d8 setarg  0x000002a1 
+ 00000949  0x000005d9 istore  0x00000002 , 0x00000005 
+ 00000950  0x000005da fetch  0x00000005 , 0x00004cdf 
+ 00000951  0x000005db istore  0x00000005 , 0x00000005 
+ 00000952  0x000005dc rtn 
+ 00000953  0x000005df fetch  0x00000001 , 0x00004d9a 
+ 00000954  0x000005e0 branch  0x000003c6 , 0x00000034 
+ 00000955  0x000005e1 fetch  0x00000008 , 0x00004d89 
+ 00000956  0x000005e3 store  0x00000008 , 0x00000a9a 
+ 00000957  0x000005e4 arg  0x0000000a , 0x00000011 
+ 00000958  0x000005e5 call  0x00004d63 
+ 00000959  0x000005e6 fetch  0x00000002 , 0x0000424e 
+ 00000960  0x000005e7 istore  0x00000002 , 0x00000005 
+ 00000961  0x000005e8 setarg  0x000001a1 
+ 00000962  0x000005e9 istore  0x00000002 , 0x00000005 
+ 00000963  0x000005ea fetch  0x00000008 , 0x00000a9a 
+ 00000964  0x000005eb istore  0x00000008 , 0x00000005 
+ 00000965  0x000005ec rtn 
+ 00000966  0x000005ef fetch  0x00000008 , 0x00004d92 
+ 00000967  0x000005f0 branch  0x000003bc 
+ 00000968  0x000005f4 call  0x00007e34 
+ 00000969  0x000005f5 call  0x000003cb 
+ 00000970  0x000005f6 branch  0x00003ee0 
+ 00000971  0x000005f9 jam  0x00000005 , 0x00004df5 
+ 00000972  0x000005fa fetcht  0x00000001 , 0x000046e7 
+ 00000973  0x000005fb fetch  0x00000001 , 0x00004df3 
+ 00000974  0x000005fc call  0x00000548 
+ 00000975  0x000005fd store  0x00000001 , 0x00004df3 
+ 00000976  0x000005fe fetcht  0x00000001 , 0x000046e7 
+ 00000977  0x000005ff call  0x00000581 
+ 00000978  0x00000600 copy  0x00000011 , 0x0000003f 
+ 00000979  0x00000601 bbit1  0x00000005 , 0x000003d5 
+ 00000980  0x00000602 branch  0x00003d62 
+ 00000981  0x00000606 fetch  0x00000001 , 0x000046b6 
+ 00000982  0x00000607 rtneq  0x00000000 
+ 00000983  0x00000608 jam  0x00000000 , 0x000046b6 
+ 00000984  0x00000609 fetch  0x00000001 , 0x0000477a 
+ 00000985  0x0000060a increase  0x00000001 , 0x0000003f 
+ 00000986  0x0000060b and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000987  0x0000060c store  0x00000001 , 0x0000477a 
+ 00000988  0x0000060d call  0x00003d7e 
+ 00000989  0x00000610 call  0x00000325 
+ 00000990  0x00000611 call  0x000002f2 
+ 00000991  0x00000612 call  0x00000309 
+ 00000992  0x00000613 call  0x000002fe 
+ 00000993  0x00000614 call  0x000002f5 
+ 00000994  0x00000616 call  0x000002d2 
+ 00000995  0x00000617 arg  0x00000002 , 0x00000002 
+ 00000996  0x00000618 arg  0x000047c4 , 0x00000011 
+ 00000997  0x00000619 arg  0x0000005f , 0x00000012 
+ 00000998  0x0000061a fetch  0x00000003 , 0x00004700 
+ 00000999  0x0000061b iadd  0x00000012 , 0x0000003f 
+ 00001000  0x0000061c call  0x000002fe 
+ 00001001  0x0000061d call  0x000002f5 
+ 00001002  0x0000061e call  0x0000031d 
+ 00001003  0x00000620 jam  0x00000076 , 0x00004212 
+ 00001004  0x00000621 branch  0x00003d36 
+ 00001005  0x00000624 copy  0x00000013 , 0x0000003f 
+ 00001006  0x00000625 beq  0x00000014 , 0x000003fe 
+ 00001007  0x00000626 beq  0x00000015 , 0x00000407 
+ 00001008  0x00000627 beq  0x00000029 , 0x0000040a 
+ 00001009  0x00000628 beq  0x00000032 , 0x0000040c 
+ 00001010  0x00000629 beq  0x00000040 , 0x0000040e 
+ 00001011  0x0000062a beq  0x00000004 , 0x00000410 
+ 00001012  0x0000062b beq  0x00000013 , 0x00000410 
+ 00001013  0x0000062c beq  0x00000019 , 0x000033df 
+ 00001014  0x0000062d beq  0x00000021 , 0x00000414 
+ 00001015  0x0000062e beq  0x00000001 , 0x00000416 
+ 00001016  0x0000062f beq  0x00000002 , 0x0000041b 
+ 00001017  0x00000630 beq  0x0000002b , 0x0000041e 
+ 00001018  0x00000631 beq  0x00000039 , 0x00000420 
+ 00001019  0x00000632 beq  0x0000003a , 0x00000423 
+ 00001020  0x00000633 beq  0x0000003c , 0x00000425 
+ 00001021  0x00000634 branch  0x0000417d 
+ 00001022  0x00000637 call  0x0000038c 
+ 00001023  0x00000638 call  0x00003410 
+ 00001024  0x00000639 jam  0x00000001 , 0x00004d3d 
+ 00001025  0x0000063a fetch  0x00000001 , 0x000047a1 
+ 00001026  0x0000063b nbranch  0x00000404 , 0x00000034 
+ 00001027  0x0000063c jam  0x00000014 , 0x00004d44 
+ 00001028  0x0000063e call  0x000004c2 
+ 00001029  0x0000063f call  0x0000036f 
+ 00001030  0x00000640 branch  0x000041c3 
+ 00001031  0x00000643 call  0x0000042a 
+ 00001032  0x00000644 jam  0x000000a2 , 0x000011c7 
+ 00001033  0x00000645 branch  0x0000077a 
+ 00001034  0x00000649 jam  0x00000012 , 0x00000a99 
+ 00001035  0x0000064a branch  0x00007d8f 
+ 00001036  0x0000064d jam  0x000000b3 , 0x000011c7 
+ 00001037  0x0000064e branch  0x0000077a 
+ 00001038  0x00000651 jam  0x000000a1 , 0x000011c7 
+ 00001039  0x00000652 branch  0x0000077a 
+ 00001040  0x00000657 jam  0x000000a3 , 0x000011c7 
+ 00001041  0x00000658 branch  0x0000077a 
+ 00001042  0x0000065b jam  0x000000b5 , 0x000011c7 
+ 00001043  0x0000065c branch  0x0000077a 
+ 00001044  0x0000065f jam  0x000000b1 , 0x000011c7 
+ 00001045  0x00000660 branch  0x0000077a 
+ 00001046  0x00000663 call  0x0000038c 
+ 00001047  0x00000664 call  0x000004c2 
+ 00001048  0x00000665 call  0x000004e9 
+ 00001049  0x00000666 jam  0x00000000 , 0x000049e4 
+ 00001050  0x00000667 branch  0x000042ca 
+ 00001051  0x0000066a call  0x0000042a 
+ 00001052  0x0000066b jam  0x000000b4 , 0x000011c7 
+ 00001053  0x0000066c branch  0x0000077a 
+ 00001054  0x0000066f jam  0x000000b2 , 0x000011c7 
+ 00001055  0x00000670 branch  0x0000077a 
+ 00001056  0x00000673 call  0x0000038c 
+ 00001057  0x00000674 jam  0x00000092 , 0x000011c7 
+ 00001058  0x00000675 branch  0x0000077a 
+ 00001059  0x00000678 jam  0x00000061 , 0x000011c7 
+ 00001060  0x00000679 branch  0x0000077a 
+ 00001061  0x0000067d call  0x0000038c 
+ 00001062  0x0000067e branch  0x00003f8d 
+ 00001063  0x00000681 call  0x0000042a 
+ 00001064  0x00000682 jam  0x000000a4 , 0x000011c7 
+ 00001065  0x00000683 branch  0x0000077a 
+ 00001066  0x00000686 fetch  0x00000001 , 0x00004cd9 
+ 00001067  0x00000687 rtn  0x00000034 
+ 00001068  0x00000688 jam  0x00000000 , 0x00004cd9 
+ 00001069  0x0000068a call  0x000002b4 
+ 00001070  0x0000068b setarg  0x00000006 
+ 00001071  0x0000068c call  0x00006414 
+ 00001072  0x0000068d or  0x0000003f , 0x00000008 , 0x0000003f 
+ 00001073  0x0000068e lshift8  0x0000003f , 0x0000003f 
+ 00001074  0x0000068f add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00001075  0x00000690 branch  0x00006413 
+ 00001076  0x00000693 call  0x00000502 
+ 00001077  0x00000695 call  0x000004c5 
+ 00001078  0x00000696 call  0x00000499 
+ 00001079  0x00000697 call  0x000004b8 
+ 00001080  0x00000698 call  0x0000049e 
+ 00001081  0x00000699 call  0x00004234 
+ 00001082  0x0000069a call  0x00000444 
+ 00001083  0x0000069b call  0x00000492 
+ 00001084  0x0000069d call  0x0000047c 
+ 00001085  0x0000069e call  0x00000479 
+ 00001086  0x0000069f call  0x00000484 
+ 00001087  0x000006a0 call  0x0000048a 
+ 00001088  0x000006a1 call  0x00000471 
+ 00001089  0x000006a2 call  0x00004231 
+ 00001090  0x000006a3 call  0x00000474 
+ 00001091  0x000006a4 branch  0x0000423a 
+ 00001092  0x000006a8 call  0x00000452 
+ 00001093  0x000006a9 branch  0x00000463 , 0x00000001 
+ 00001094  0x000006ab fetch  0x00000001 , 0x00004d47 
+ 00001095  0x000006ac nbranch  0x0000045f , 0x00000034 
+ 00001096  0x000006ad fetch  0x00000001 , 0x000046d9 
+ 00001097  0x000006ae rtneq  0x00000001 
+ 00001098  0x000006b0 jam  0x00000001 , 0x000046d9 
+ 00001099  0x000006b1 jam  0x00000001 , 0x00004cff 
+ 00001100  0x000006b3 fetch  0x00000001 , 0x00004d46 
+ 00001101  0x000006b4 branch  0x0000045d , 0x00000034 
+ 00001102  0x000006b6 call  0x00000456 
+ 00001103  0x000006b7 jam  0x00000000 , 0x000041bd 
+ 00001104  0x000006b8 call  0x000003dd 
+ 00001105  0x000006b9 branch  0x00004378 
+ 00001106  0x000006bc fetcht  0x00000001 , 0x000046ed 
+ 00001107  0x000006bd call  0x000067fb 
+ 00001108  0x000006be fetcht  0x00000001 , 0x000046ed 
+ 00001109  0x000006bf branch  0x0000681d 
+ 00001110  0x000006c2 fetcht  0x00000001 , 0x00004720 
+ 00001111  0x000006c3 increase  0x00000001 , 0x00000002 
+ 00001112  0x000006c4 fetch  0x00000001 , 0x000046d2 
+ 00001113  0x000006c5 isub  0x00000002 , 0x0000003e 
+ 00001114  0x000006c6 ncall  0x000043cc , 0x00000002 
+ 00001115  0x000006c7 storet  0x00000001 , 0x00004720 
+ 00001116  0x000006c8 rtn 
+ 00001117  0x000006cb jam  0x000000ff , 0x00004d46 
+ 00001118  0x000006cc rtn 
+ 00001119  0x000006cf jam  0x00000000 , 0x00004d47 
+ 00001120  0x000006d0 jam  0x00000001 , 0x000046d9 
+ 00001121  0x000006d1 jam  0x00000001 , 0x00004cff 
+ 00001122  0x000006d2 rtn 
+ 00001123  0x000006d5 fetch  0x00000002 , 0x00004682 
+ 00001124  0x000006d6 bbit1  0x0000000b , 0x00000466 
+ 00001125  0x000006d7 jam  0x00000000 , 0x00004cff 
+ 00001126  0x000006d9 fetch  0x00000001 , 0x000046d9 
+ 00001127  0x000006da rtneq  0x00000000 
+ 00001128  0x000006db jam  0x00000000 , 0x000046d9 
+ 00001129  0x000006dd fetch  0x00000002 , 0x00004208 
+ 00001130  0x000006de rtnbit1  0x0000000a 
+ 00001131  0x000006e0 fetch  0x00000001 , 0x00004720 
+ 00001132  0x000006e1 rtnne  0x00000001 
+ 00001133  0x000006e3 fetch  0x00000002 , 0x0000420a 
+ 00001134  0x000006e4 set1  0x0000000a , 0x0000003f 
+ 00001135  0x000006e5 store  0x00000002 , 0x0000420a 
+ 00001136  0x000006e6 branch  0x00004386 
+ 00001137  0x000006ea arg  0x000049e4 , 0x00000013 
+ 00001138  0x000006eb arg  0x0000637a , 0x00000012 
+ 00001139  0x000006ec branch  0x0000336d 
+ 00001140  0x000006ef arg  0x00004ce4 , 0x00000013 
+ 00001141  0x000006f0 arg  0x00000477 , 0x00000012 
+ 00001142  0x000006f1 branch  0x0000336d 
+ 00001143  0x000006f3 jam  0x00000001 , 0x00004ce5 
+ 00001144  0x000006f4 rtn 
+ 00001145  0x000006f8 arg  0x000046c6 , 0x00000013 
+ 00001146  0x000006f9 arg  0x00003d60 , 0x00000012 
+ 00001147  0x000006fa branch  0x0000336d 
+ 00001148  0x000006fe arg  0x000046ae , 0x00000013 
+ 00001149  0x000006ff arg  0x0000047f , 0x00000012 
+ 00001150  0x00000700 branch  0x00003374 
+ 00001151  0x00000703 fetch  0x00000001 , 0x00004d3e 
+ 00001152  0x00000704 beq  0x000000ff , 0x000004ac 
+ 00001153  0x00000705 fetch  0x00000001 , 0x00004d09 
+ 00001154  0x00000706 nrtn  0x00000034 
+ 00001155  0x00000707 branch  0x00004266 
+ 00001156  0x0000070a arg  0x00004d36 , 0x00000013 
+ 00001157  0x0000070b arg  0x00000487 , 0x00000012 
+ 00001158  0x0000070c branch  0x0000336d 
+ 00001159  0x0000070e fetch  0x00000001 , 0x000047c7 
+ 00001160  0x0000070f store  0x00000001 , 0x00004172 
+ 00001161  0x00000710 branch  0x00000497 
+ 00001162  0x00000713 fetch  0x00000001 , 0x00004d3d 
+ 00001163  0x00000714 rtn  0x00000034 
+ 00001164  0x00000715 arg  0x00004d44 , 0x00000013 
+ 00001165  0x00000716 arg  0x0000048f , 0x00000012 
+ 00001166  0x00000717 branch  0x0000336d 
+ 00001167  0x00000719 fetch  0x00000001 , 0x00004d45 
+ 00001168  0x0000071a nrtn  0x00000034 
+ 00001169  0x0000071b branch  0x00005bf5 
+ 00001170  0x00000720 arg  0x00004d37 , 0x00000013 
+ 00001171  0x00000721 arg  0x00000495 , 0x00000012 
+ 00001172  0x00000722 branch  0x0000336d 
+ 00001173  0x00000724 setarg  0x00124f80 
+ 00001174  0x00000725 store  0x00000003 , 0x00004eb2 
+ 00001175  0x00000727 jam  0x00000001 , 0x00004d35 
+ 00001176  0x00000728 rtn 
+ 00001177  0x0000072d arg  0x000049e2 , 0x00000013 
+ 00001178  0x0000072e arg  0x0000049c , 0x00000012 
+ 00001179  0x0000072f branch  0x0000336d 
+ 00001180  0x00000731 jam  0x00000000 , 0x000049e1 
+ 00001181  0x00000732 rtn 
+ 00001182  0x00000736 call  0x00000452 
+ 00001183  0x00000737 branch  0x000004a5 , 0x00000001 
+ 00001184  0x00000739 call  0x00000540 
+ 00001185  0x0000073a beq  0x00000007 , 0x000004a5 
+ 00001186  0x0000073c call  0x000043a9 
+ 00001187  0x0000073d arg  0x00000009 , 0x00000007 
+ 00001188  0x0000073e branch  0x000043d2 
+ 00001189  0x00000741 call  0x00000581 
+ 00001190  0x00000742 jam  0x00000028 , 0x000047a0 
+ 00001191  0x00000743 call  0x000004a9 
+ 00001192  0x00000744 branch  0x000043b0 
+ 00001193  0x00000747 arg  0x000046da , 0x00000013 
+ 00001194  0x00000748 arg  0x000004ac , 0x00000012 
+ 00001195  0x00000749 branch  0x0000336d 
+ 00001196  0x0000074b fetch  0x00000004 , 0x000046d3 
+ 00001197  0x0000074c rtnbit1  0x00000009 
+ 00001198  0x0000074d jam  0x00000000 , 0x00004d46 
+ 00001199  0x0000074e fetch  0x00000002 , 0x00004682 
+ 00001200  0x0000074f isolate1  0x0000000b , 0x0000003f 
+ 00001201  0x00000750 call  0x000042d4 , 0x00000001 
+ 00001202  0x00000751 fetch  0x00000002 , 0x00004682 
+ 00001203  0x00000752 isolate1  0x00000007 , 0x0000003f 
+ 00001204  0x00000753 call  0x00004392 , 0x00000001 
+ 00001205  0x00000754 arg  0x00000009 , 0x00000007 
+ 00001206  0x00000755 call  0x000043ce 
+ 00001207  0x00000756 branch  0x000043b8 
+ 00001208  0x00000759 fetch  0x00000001 , 0x00004d09 
+ 00001209  0x0000075a nrtn  0x00000034 
+ 00001210  0x0000075b fetch  0x00000001 , 0x0000479f 
+ 00001211  0x0000075c rtn  0x00000034 
+ 00001212  0x0000075d arg  0x000047a0 , 0x00000013 
+ 00001213  0x0000075e arg  0x000004bf , 0x00000012 
+ 00001214  0x0000075f branch  0x0000336d 
+ 00001215  0x00000762 jam  0x00000000 , 0x0000479f 
+ 00001216  0x00000764 call  0x0000042d 
+ 00001217  0x00000765 branch  0x0000340a 
+ 00001218  0x00000768 jam  0x00000000 , 0x0000479f 
+ 00001219  0x00000769 jam  0x00000000 , 0x000047a0 
+ 00001220  0x0000076a rtn 
+ 00001221  0x0000076d fetch  0x00000001 , 0x00004cff 
+ 00001222  0x0000076e rtn  0x00000034 
+ 00001223  0x0000076f fetch  0x00000001 , 0x00004d02 
+ 00001224  0x00000770 beq  0x00000000 , 0x000004cb 
+ 00001225  0x00000771 beq  0x00000001 , 0x000004d5 
+ 00001226  0x00000772 rtn 
+ 00001227  0x00000775 call  0x000004de 
+ 00001228  0x00000776 fetch  0x00000001 , 0x00004d07 
+ 00001229  0x00000777 increase  0x00000001 , 0x0000003f 
+ 00001230  0x00000778 store  0x00000001 , 0x00004d07 
+ 00001231  0x00000779 fetcht  0x00000001 , 0x00004d03 
+ 00001232  0x0000077a isub  0x00000002 , 0x0000003e 
+ 00001233  0x0000077b call  0x000004d3 , 0x00000005 
+ 00001234  0x0000077c rtn 
+ 00001235  0x0000077e jam  0x00000000 , 0x00004d09 
+ 00001236  0x0000077f branch  0x000004ef 
+ 00001237  0x00000782 arg  0x00004d05 , 0x00000013 
+ 00001238  0x00000783 arg  0x000004d8 , 0x00000012 
+ 00001239  0x00000784 branch  0x0000336d 
+ 00001240  0x00000786 fetch  0x00000001 , 0x00004d04 
+ 00001241  0x00000787 store  0x00000001 , 0x00004d05 
+ 00001242  0x0000078f fetch  0x00000001 , 0x00004d01 
+ 00001243  0x00000790 beq  0x00000001 , 0x000004ef 
+ 00001244  0x00000791 beq  0x00000000 , 0x000004de 
+ 00001245  0x00000792 rtn 
+ 00001246  0x00000795 jam  0x00000001 , 0x00004d01 
+ 00001247  0x00000796 fetch  0x00000001 , 0x00004720 
+ 00001248  0x00000797 beq  0x00000002 , 0x000004e5 
+ 00001249  0x00000799 fetcht  0x00000001 , 0x00004d00 
+ 00001250  0x0000079a call  0x0000680e 
+ 00001251  0x0000079b fetcht  0x00000001 , 0x00004d00 
+ 00001252  0x0000079c branch  0x00006829 
+ 00001253  0x0000079e fetcht  0x00000001 , 0x00004d00 
+ 00001254  0x0000079f call  0x0000680e 
+ 00001255  0x000007a0 fetcht  0x00000001 , 0x00004d00 
+ 00001256  0x000007a1 branch  0x00006825 
+ 00001257  0x000007a5 fetch  0x00000001 , 0x00004d07 
+ 00001258  0x000007a6 nrtn  0x00000034 
+ 00001259  0x000007a7 fetch  0x00000001 , 0x00004d09 
+ 00001260  0x000007a8 nrtn  0x00000034 
+ 00001261  0x000007aa setarg  0x00000000 
+ 00001262  0x000007ab store  0x00000003 , 0x00004d05 
+ 00001263  0x000007ad fetch  0x00000001 , 0x00004d06 
+ 00001264  0x000007ae nbranch  0x000004f3 , 0x00000034 
+ 00001265  0x000007af jam  0x00000000 , 0x00004cff 
+ 00001266  0x000007b0 jam  0x00000000 , 0x00004d02 
+ 00001267  0x000007b2 jam  0x00000000 , 0x00004d07 
+ 00001268  0x000007b3 jam  0x00000000 , 0x00004d01 
+ 00001269  0x000007b4 branch  0x000000d6 
+ 00001270  0x000007b8 jam  0x00000001 , 0x00004d09 
+ 00001271  0x000007b9 jam  0x00000001 , 0x00004cff 
+ 00001272  0x000007ba jam  0x00000000 , 0x00004d02 
+ 00001273  0x000007bb jam  0x00000000 , 0x00004d07 
+ 00001274  0x000007bc rtn 
+ 00001275  0x000007bf jam  0x00000000 , 0x00004d09 
+ 00001276  0x000007c0 jam  0x00000002 , 0x00004d04 
+ 00001277  0x000007c2 jam  0x00000001 , 0x00004d06 
+ 00001278  0x000007c4 jam  0x00000002 , 0x00004d05 
+ 00001279  0x000007c5 jam  0x00000001 , 0x00004cff 
+ 00001280  0x000007c6 jam  0x00000001 , 0x00004d02 
+ 00001281  0x000007c7 rtn 
+ 00001282  0x000007cd fetch  0x00000002 , 0x00004d06 
+ 00001283  0x000007ce nrtn  0x00000034 
+ 00001284  0x000007cf arg  0x000046ce , 0x00000013 
+ 00001285  0x000007d0 arg  0x00000507 , 0x00000012 
+ 00001286  0x000007d1 branch  0x0000336d 
+ 00001287  0x000007d3 jam  0x0000000a , 0x000046ce 
+ 00001288  0x000007d4 call  0x000068eb 
+ 00001289  0x000007d5 call  0x00006908 
+ 00001290  0x000007d6 add  0x0000003f , 0x0000001c , 0x0000003f 
+ 00001291  0x000007d7 store  0x00000002 , 0x0000470f 
+ 00001292  0x000007d8 arg  0x00004709 , 0x00000011 
+ 00001293  0x000007da ifetch  0x00000008 , 0x00000011 
+ 00001294  0x000007db store  0x00000008 , 0x00000a9a 
+ 00001295  0x000007dc fetcht  0x00000002 , 0x00000a9c 
+ 00001296  0x000007dd fetch  0x00000002 , 0x00000aa0 
+ 00001297  0x000007de isub  0x00000002 , 0x0000003e 
+ 00001298  0x000007df nbranch  0x000004c0 , 0x00000002 
+ 00001299  0x000007e0 rtn 
+ 00001300  0x00000814 fetch  0x00000001 , 0x000046e0 
+ 00001301  0x00000816 beq  0x00000006 , 0x00000522 
+ 00001302  0x00000818 beq  0x00000002 , 0x00000522 
+ 00001303  0x0000081b fetch  0x00000001 , 0x0000477a 
+ 00001304  0x0000081c sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00001305  0x0000081d call  0x0000051e , 0x00000005 
+ 00001306  0x0000081e fetch  0x00000001 , 0x0000477a 
+ 00001307  0x0000081f beq  0x00000000 , 0x00000520 
+ 00001308  0x00000820 beq  0x00000003 , 0x00003d8c 
+ 00001309  0x00000821 branch  0x00003d88 
+ 00001310  0x00000823 jam  0x00000002 , 0x0000477a 
+ 00001311  0x00000824 rtn 
+ 00001312  0x00000826 fetch  0x00000001 , 0x0000477f 
+ 00001313  0x00000827 branch  0x0000052a 
+ 00001314  0x0000082a fetch  0x00000001 , 0x0000477a 
+ 00001315  0x0000082b sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00001316  0x0000082c call  0x0000051e , 0x00000005 
+ 00001317  0x0000082d fetch  0x00000001 , 0x0000477a 
+ 00001318  0x0000082e beq  0x00000000 , 0x0000052c 
+ 00001319  0x0000082f beq  0x00000003 , 0x0000052f 
+ 00001320  0x00000831 fetch  0x00000001 , 0x00004781 
+ 00001321  0x00000832 increase  0xffffffff , 0x0000003f 
+ 00001322  0x00000834 store  0x00000001 , 0x000046b5 
+ 00001323  0x00000835 branch  0x00003dc1 
+ 00001324  0x00000837 fetch  0x00000001 , 0x0000477f 
+ 00001325  0x00000838 increase  0xffffffff , 0x0000003f 
+ 00001326  0x00000839 branch  0x0000052a 
+ 00001327  0x0000083b fetch  0x00000001 , 0x00004782 
+ 00001328  0x0000083c increase  0xffffffff , 0x0000003f 
+ 00001329  0x0000083d branch  0x0000052a 
+ 00001330  0x00000855 disable  0x00000028 
+ 00001331  0x00000856 setarg  0x00000000 
+ 00001332  0x00000857 store  0x00000006 , 0x0000469b 
+ 00001333  0x00000858 call  0x0000059d 
+ 00001334  0x00000859 call  0x00004079 
+ 00001335  0x0000085b call  0x0000053e 
+ 00001336  0x0000085c nbranch  0x0000053b , 0x00000028 
+ 00001337  0x0000085d call  0x0000079b 
+ 00001338  0x0000085e branch  0x00003fa0 
+ 00001339  0x00000861 call  0x000007a4 
+ 00001340  0x00000862 jam  0x00000000 , 0x00004d11 
+ 00001341  0x00000863 rtn 
+ 00001342  0x00000866 call  0x00000540 
+ 00001343  0x00000867 branch  0x0000409a 
+ 00001344  0x00000869 fetch  0x00000001 , 0x0000469a 
+ 00001345  0x0000086a copy  0x0000003f , 0x00000011 
+ 00001346  0x0000086b call  0x00000561 
+ 00001347  0x0000086c call  0x00000567 
+ 00001348  0x0000086d call  0x0000056d 
+ 00001349  0x0000086f call  0x00000573 
+ 00001350  0x00000870 copy  0x00000011 , 0x0000003f 
+ 00001351  0x00000871 rtn 
+ 00001352  0x00000876 store  0x00000001 , 0x00004df6 
+ 00001353  0x00000877 lshift  0x0000003f , 0x0000003f 
+ 00001354  0x00000878 copy  0x0000003f , 0x00000012 
+ 00001355  0x00000879 copy  0x00000002 , 0x00000013 
+ 00001356  0x0000087a fetch  0x00000001 , 0x00004df5 
+ 00001357  0x0000087b sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001358  0x0000087c call  0x00000581 , 0x00000002 
+ 00001359  0x0000087d ncall  0x0000058c , 0x00000002 
+ 00001360  0x0000087e copy  0x00000013 , 0x00000002 
+ 00001361  0x0000087f call  0x0000681d 
+ 00001362  0x00000880 setflag  0x00000001 , 0x00000000 , 0x00000012 
+ 00001363  0x00000881 call  0x0000055b 
+ 00001364  0x00000882 and  0x00000012 , 0x00000007 , 0x0000003f 
+ 00001365  0x00000883 fetcht  0x00000001 , 0x00004df5 
+ 00001366  0x00000884 copy  0x00000002 , 0x00000007 
+ 00001367  0x00000885 sub  0x00000002 , 0x00000002 , 0x0000003e 
+ 00001368  0x00000886 beq  0x00000007 , 0x00000586 
+ 00001369  0x00000887 beq  0x00000000 , 0x00000589 
+ 00001370  0x00000888 rtn 
+ 00001371  0x0000088b fetcht  0x00000001 , 0x00004df6 
+ 00001372  0x0000088c and_into  0x00000001 , 0x00000002 
+ 00001373  0x0000088d and  0x00000012 , 0x00000001 , 0x0000003f 
+ 00001374  0x0000088e isub  0x00000002 , 0x0000003e 
+ 00001375  0x0000088f nbranch  0x00000357 , 0x00000005 
+ 00001376  0x00000890 rtn 
+ 00001377  0x00000893 jam  0x00000000 , 0x00004df5 
+ 00001378  0x00000894 fetcht  0x00000001 , 0x000046e2 
+ 00001379  0x00000895 fetch  0x00000001 , 0x00004dee 
+ 00001380  0x00000896 call  0x00000548 
+ 00001381  0x00000898 store  0x00000001 , 0x00004dee 
+ 00001382  0x00000899 rtn 
+ 00001383  0x0000089c jam  0x00000001 , 0x00004df5 
+ 00001384  0x0000089d fetcht  0x00000001 , 0x000046e3 
+ 00001385  0x0000089e fetch  0x00000001 , 0x00004def 
+ 00001386  0x0000089f call  0x00000548 
+ 00001387  0x000008a1 store  0x00000001 , 0x00004def 
+ 00001388  0x000008a2 rtn 
+ 00001389  0x000008a5 jam  0x00000002 , 0x00004df5 
+ 00001390  0x000008a6 fetcht  0x00000001 , 0x000046e4 
+ 00001391  0x000008a7 fetch  0x00000001 , 0x00004df0 
+ 00001392  0x000008a8 call  0x00000548 
+ 00001393  0x000008aa store  0x00000001 , 0x00004df0 
+ 00001394  0x000008ab rtn 
+ 00001395  0x000008b9 jam  0x00000000 , 0x00004d87 
+ 00001396  0x000008ba jam  0x00000004 , 0x00004df5 
+ 00001397  0x000008bb fetcht  0x00000001 , 0x000046e6 
+ 00001398  0x000008bc fetch  0x00000001 , 0x00004df2 
+ 00001399  0x000008bd call  0x00000548 
+ 00001400  0x000008bf store  0x00000001 , 0x00004df2 
+ 00001401  0x000008c0 copy  0x00000011 , 0x0000003f 
+ 00001402  0x000008c1 bbit1  0x00000004 , 0x00000592 
+ 00001403  0x000008c2 call  0x00000595 
+ 00001404  0x000008c5 copy  0x00000011 , 0x0000003f 
+ 00001405  0x000008c6 and_into  0x000000ef , 0x00000011 
+ 00001406  0x000008c7 fetch  0x00000001 , 0x00004d9a 
+ 00001407  0x000008c8 store  0x00000001 , 0x00004d9b 
+ 00001408  0x000008c9 fetcht  0x00000001 , 0x000046e6 
+ 00001409  0x000008cb set1  0x00000007 , 0x00000002 
+ 00001410  0x000008cd arg  0x00008078 , 0x00000005 
+ 00001411  0x000008ce call  0x00006830 
+ 00001412  0x000008cf set0  0x00000007 , 0x00000002 
+ 00001413  0x000008d0 branch  0x00000590 
+ 00001414  0x000008d3 branch  0x0000058a , 0x00000002 
+ 00001415  0x000008d5 qset0  0x00000011 
+ 00001416  0x000008d6 rtn 
+ 00001417  0x000008d9 branch  0x00000587 , 0x00000002 
+ 00001418  0x000008db qset1  0x00000011 
+ 00001419  0x000008dc rtn 
+ 00001420  0x000008e0 set0  0x00000007 , 0x00000002 
+ 00001421  0x000008e1 arg  0x00008078 , 0x00000005 
+ 00001422  0x000008e2 call  0x00006830 
+ 00001423  0x000008e3 set1  0x00000007 , 0x00000002 
+ 00001424  0x000008e5 arg  0x0000807c , 0x00000005 
+ 00001425  0x000008e6 branch  0x0000680a 
+ 00001426  0x000008e9 jam  0x00000001 , 0x00004d9a 
+ 00001427  0x000008ea call  0x00000598 
+ 00001428  0x000008eb branch  0x0000057c 
+ 00001429  0x000008ee jam  0x00000000 , 0x00004d9a 
+ 00001430  0x000008ef fetch  0x00000001 , 0x00004d9b 
+ 00001431  0x000008f0 rtn  0x00000034 
+ 00001432  0x000008f2 jam  0x00000001 , 0x00004d87 
+ 00001433  0x000008f3 branch  0x00007fe7 
+ 00001434  0x000008f7 fetcht  0x00000001 , 0x000046ed 
+ 00001435  0x000008f9 set0  0x00000007 , 0x00000002 
+ 00001436  0x000008fa branch  0x00000582 
+ 00001437  0x000008fd fetch  0x00000001 , 0x000046e0 
+ 00001438  0x000008ff beq  0x00000008 , 0x000005a2 
+ 00001439  0x00000901 call  0x00003fc0 
+ 00001440  0x00000902 disable  0x00000028 
+ 00001441  0x00000903 branch  0x00003fe7 
+ 00001442  0x00000909 call  0x00003fc0 
+ 00001443  0x0000090a disable  0x00000028 
+ 00001444  0x0000090f setarg  0x00000002 
+ 00001445  0x00000910 call  0x00006414 
+ 00001446  0x00000911 rtnbit0  0x00000007 
+ 00001447  0x00000912 setarg  0x00000008 
+ 00001448  0x00000913 call  0x00006414 
+ 00001449  0x00000914 branch  0x00003fed , 0x00000034 
+ 00001450  0x00000915 setarg  0x00000000 
+ 00001451  0x00000916 store  0x00000006 , 0x0000469b 
+ 00001452  0x00000917 rtn 
+ 00001453  0x0000091a call  0x000004c2 
+ 00001454  0x0000091b isolate1  0x00000026 , 0x00000000 
+ 00001455  0x0000091c call  0x000001c4 , 0x00000001 
+ 00001456  0x0000091d branch  0x0000426d 
+ 00001457  0x00000924 jam  0x00000050 , 0x000011c7 
+ 00001458  0x00000925 branch  0x0000077a 
+ 00001459  0x00000928 call  0x00000325 
+ 00001460  0x00000929 arg  0x00000002 , 0x00000002 
+ 00001461  0x0000092a arg  0x000047c4 , 0x00000011 
+ 00001462  0x0000092b arg  0x0000005f , 0x00000012 
+ 00001463  0x0000092c fetch  0x00000003 , 0x00004700 
+ 00001464  0x0000092d iadd  0x00000012 , 0x0000003f 
+ 00001465  0x0000092e branch  0x00006562 
+ 00001466  0x00000931 arg  0x0000437b , 0x00000005 
+ 00001467  0x00000932 arg  0x00000013 , 0x00000039 
+ 00001468  0x00000933 call  0x00007f01 
+ 00001469  0x00000934 branch  0x000057b8 
+ 00001470  0x00000944 call  0x000004e9 
+ 00001471  0x00000945 jam  0x00000001 , 0x00004cd9 
+ 00001472  0x00000946 call  0x0000038c 
+ 00001473  0x00000947 branch  0x000042cb 
+ 00001474  0x0000094b fetch  0x00000001 , 0x0000450f 
+ 00001475  0x0000094c pincrease  0x00000001 
+ 00001476  0x0000094d store  0x00000001 , 0x0000450f 
+ 00001477  0x0000094e beq  0x0000000c , 0x00005395 
+ 00001478  0x0000094f call  0x000055aa 
+ 00001479  0x00000950 call  0x0000561e 
+ 00001480  0x00000951 call  0x0000071c 
+ 00001481  0x00000952 branch  0x0000538f 
+ 00001482  0x00000955 fetch  0x00000001 , 0x00000016 
+ 00001483  0x00000956 increase  0x00000001 , 0x0000003f 
+ 00001484  0x00000957 store  0x00000001 , 0x00000016 
+ 00001485  0x00000958 rtnne  0x00000028 
+ 00001486  0x00000959 jam  0x00000025 , 0x00000016 
+ 00001487  0x0000095a rtn 
+ 00001488  0x0000095d call  0x000029bb 
+ 00001489  0x0000095e call  0x00000237 
+ 00001490  0x0000095f branch  0x000054a3 
+ 00001491  0x00000962 jam  0x00000040 , 0x000011c7 
+ 00001492  0x00000963 branch  0x0000077a 
+ 00001493  0x00000966 jam  0x00000041 , 0x000011c7 
+ 00001494  0x00000967 branch  0x0000077a 
+ 00001495  0x0000096a fetch  0x00000001 , 0x00000456 
+ 00001496  0x0000096b bbit1  0x00000005 , 0x000005f7 
+ 00001497  0x0000096c call  0x00000716 
+ 00001498  0x0000096d fetch  0x00000001 , 0x0000478e 
+ 00001499  0x0000096e nbranch  0x000005e1 , 0x00000034 
+ 00001500  0x0000096f fetch  0x00000001 , 0x0000043f 
+ 00001501  0x00000970 bbit0  0x00000004 , 0x000005e5 
+ 00001502  0x00000971 fetch  0x00000001 , 0x000002da 
+ 00001503  0x00000972 branch  0x000005e5 , 0x00000034 
+ 00001504  0x00000973 branch  0x00005664 
+ 00001505  0x00000975 fetch  0x00000001 , 0x0000478e 
+ 00001506  0x00000976 increase  0xffffffff , 0x0000003f 
+ 00001507  0x00000977 store  0x00000001 , 0x0000478e 
+ 00001508  0x00000978 branch  0x00005664 
+ 00001509  0x0000097a fetch  0x00000001 , 0x000044c4 
+ 00001510  0x0000097b bne  0x00000005 , 0x000005e8 
+ 00001511  0x0000097c jam  0x00000003 , 0x0000478e 
+ 00001512  0x0000097e call  0x00005892 
+ 00001513  0x0000097f call  0x00000378 , 0x00000034 
+ 00001514  0x00000980 branch  0x00005622 
+ 00001515  0x00000983 fetch  0x00000001 , 0x000046c5 
+ 00001516  0x00000984 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001517  0x00000985 rtnne  0x00000003 
+ 00001518  0x00000986 fetch  0x00000001 , 0x000047c3 
+ 00001519  0x00000987 rtn  0x00000034 
+ 00001520  0x00000988 fetch  0x00000001 , 0x000043dd 
+ 00001521  0x00000989 rtn  0x00000034 
+ 00001522  0x0000098a fetch  0x00000001 , 0x000043dc 
+ 00001523  0x0000098b set1  0x00000004 , 0x0000003f 
+ 00001524  0x0000098c store  0x00000001 , 0x000043dc 
+ 00001525  0x0000098d call  0x00005650 
+ 00001526  0x0000098e rtn 
+ 00001527  0x00000991 call  0x000005eb 
+ 00001528  0x00000994 fetch  0x00000001 , 0x00004fbc 
+ 00001529  0x00000995 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001530  0x00000996 ncall  0x0000071a , 0x00000002 
+ 00001531  0x00000997 fetch  0x00000001 , 0x00004fbc 
+ 00001532  0x00000998 rtneq  0x00000000 
+ 00001533  0x00000999 increase  0xffffffff , 0x0000003f 
+ 00001534  0x0000099a store  0x00000001 , 0x00004fbc 
+ 00001535  0x0000099b rtn 
+ 00001536  0x0000099e fetch  0x00000001 , 0x000047a1 
+ 00001537  0x0000099f rtn  0x00000034 
+ 00001538  0x000009a0 fetch  0x00000001 , 0x000046c5 
+ 00001539  0x000009a1 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001540  0x000009a2 rtneq  0x00000003 
+ 00001541  0x000009a3 jam  0x00000001 , 0x000046c6 
+ 00001542  0x000009a4 rtn 
+ 00001543  0x000009a7 rtnmark1  0x0000000f 
+ 00001544  0x000009a8 call  0x00005890 
+ 00001545  0x000009a9 nrtn  0x00000034 
+ 00001546  0x000009aa fetch  0x00000001 , 0x000002d9 
+ 00001547  0x000009ab and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001548  0x000009ac store  0x00000001 , 0x0000450c 
+ 00001549  0x000009ad ifetch  0x00000001 , 0x00000006 
+ 00001550  0x000009ae and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00001551  0x000009af store  0x00000001 , 0x0000450b 
+ 00001552  0x000009b0 rtn  0x00000034 
+ 00001553  0x000009b1 copy  0x00000006 , 0x0000003f 
+ 00001554  0x000009b2 store  0x00000002 , 0x0000450d 
+ 00001555  0x000009b3 fetch  0x00000001 , 0x0000450c 
+ 00001556  0x000009b4 beq  0x00000003 , 0x00000616 
+ 00001557  0x000009b5 branch  0x0000568d 
+ 00001558  0x000009b7 fetch  0x00000001 , 0x000002db 
+ 00001559  0x000009b8 beq  0x00000000 , 0x0000061a 
+ 00001560  0x000009b9 beq  0x00000001 , 0x00000621 
+ 00001561  0x000009ba branch  0x00005c65 
+ 00001562  0x000009bc call  0x00005c7b 
+ 00001563  0x000009bd fetch  0x00000001 , 0x00004d48 
+ 00001564  0x000009be rtn  0x00000034 
+ 00001565  0x000009c1 fetch  0x00000001 , 0x000043d8 
+ 00001566  0x000009c2 store  0x00000001 , 0x00004172 
+ 00001567  0x000009c3 store  0x00000001 , 0x000047c7 
+ 00001568  0x000009c4 rtn 
+ 00001569  0x000009c7 ifetch  0x00000005 , 0x00000006 
+ 00001570  0x000009c8 store  0x00000005 , 0x000043ce 
+ 00001571  0x000009c9 ifetch  0x00000002 , 0x00000006 
+ 00001572  0x000009ca store  0x00000002 , 0x0000045f 
+ 00001573  0x000009cb branch  0x00005c8a 
+ 00001574  0x000009ce ifetch  0x00000002 , 0x00000006 
+ 00001575  0x000009cf beq  0x00000004 , 0x0000062a 
+ 00001576  0x000009d0 beq  0x00000006 , 0x0000062e 
+ 00001577  0x000009d1 branch  0x00005698 
+ 00001578  0x000009d3 call  0x00007ea5 
+ 00001579  0x000009d4 call  0x00000600 
+ 00001580  0x000009d5 call  0x00007e9f 
+ 00001581  0x000009d6 branch  0x000058ab 
+ 00001582  0x000009da ifetch  0x00000001 , 0x00000006 
+ 00001583  0x000009db beq  0x00000001 , 0x00000632 
+ 00001584  0x000009dc beq  0x00000005 , 0x00000634 
+ 00001585  0x000009dd branch  0x00005af6 
+ 00001586  0x000009e0 jam  0x00000001 , 0x00004d45 
+ 00001587  0x000009e1 branch  0x00005b09 
+ 00001588  0x000009e4 jam  0x00000082 , 0x000011c7 
+ 00001589  0x000009e5 branch  0x0000077a 
+ 00001590  0x000009e8 fetch  0x00000001 , 0x00000016 
+ 00001591  0x000009e9 bne  0x00000027 , 0x000056f2 
+ 00001592  0x000009ea call  0x0000063c 
+ 00001593  0x000009eb arg  0x00000000 , 0x00000007 
+ 00001594  0x000009ec fetch  0x00000002 , 0x00004482 
+ 00001595  0x000009ed branch  0x00007f08 
+ 00001596  0x000009ef random  0x0000003f 
+ 00001597  0x000009f0 arg  0x000001ff , 0x00000002 
+ 00001598  0x000009f1 iand  0x00000002 , 0x0000003f 
+ 00001599  0x000009f2 add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00001600  0x000009f3 branch  0x00003cbe 
+ 00001601  0x000009f6 disable  0x0000002b 
+ 00001602  0x000009f7 branch  0x00000644 , 0x0000002e 
+ 00001603  0x000009f8 nbranch  0x00005806 , 0x0000002d 
+ 00001604  0x000009fa call  0x00002bcb 
+ 00001605  0x000009fb fetch  0x00000002 , 0x000040c1 
+ 00001606  0x000009fc store  0x00000002 , 0x0000044d 
+ 00001607  0x000009fd fetch  0x00000001 , 0x000046c5 
+ 00001608  0x000009fe compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00001609  0x000009ff nbranch  0x00002bde , 0x00000001 
+ 00001610  0x00000a00 branch  0x000057fb 
+ 00001611  0x00000a03 jam  0x00000042 , 0x000011c7 
+ 00001612  0x00000a04 branch  0x0000077a 
+ 00001613  0x00000a09 hfetch  0x00000001 , 0x00008077 
+ 00001614  0x00000a0a and_into  0x000000fd , 0x0000003f 
+ 00001615  0x00000a0b hstore  0x00000001 , 0x00008077 
+ 00001616  0x00000a0c hfetcht  0x00000001 , 0x00008073 
+ 00001617  0x00000a0d or_into  0x00000002 , 0x00000002 
+ 00001618  0x00000a0e hstoret  0x00000001 , 0x00008073 
+ 00001619  0x00000a0f call  0x000063ee 
+ 00001620  0x00000a10 and_into  0x000000fd , 0x00000002 
+ 00001621  0x00000a11 nop  0x0000000d 
+ 00001622  0x00000a12 call  0x0000065a 
+ 00001623  0x00000a13 hstoret  0x00000001 , 0x00008073 
+ 00001624  0x00000a14 rtn 
+ 00001625  0x00000a17 call  0x000064dd 
+ 00001626  0x00000a19 hfetch  0x00000001 , 0x00008081 
+ 00001627  0x00000a1a set1  0x00000000 , 0x0000003f 
+ 00001628  0x00000a1b set0  0x00000001 , 0x0000003f 
+ 00001629  0x00000a1c set0  0x00000003 , 0x0000003f 
+ 00001630  0x00000a1d hstore  0x00000001 , 0x00008081 
+ 00001631  0x00000a1e rtn 
+ 00001632  0x00000a23 setarg  0x00004a51 
+ 00001633  0x00000a24 store  0x00000002 , 0x00004575 
+ 00001634  0x00000a25 rtn 
+ 00001635  0x00000a28 jam  0x00000000 , 0x000011c7 
+ 00001636  0x00000a29 branch  0x0000077a 
+ 00001637  0x00000a2c call  0x000021c9 
+ 00001638  0x00000a2d nrtn  0x00000028 
+ 00001639  0x00000a2f disable  0x00000028 
+ 00001640  0x00000a30 jam  0x00000020 , 0x00000011 
+ 00001641  0x00000a31 set0  0x0000000b , 0x00000000 
+ 00001642  0x00000a32 set0  0x0000002d , 0x00000000 
+ 00001643  0x00000a34 call  0x00002a4f 
+ 00001644  0x00000a35 call  0x000022e6 
+ 00001645  0x00000a36 bmark1  0x0000000b , 0x00000672 
+ 00001646  0x00000a37 call  0x00002455 
+ 00001647  0x00000a38 nbranch  0x0000066b , 0x00000034 
+ 00001648  0x00000a39 bmark1  0x0000002d , 0x0000067b 
+ 00001649  0x00000a3a branch  0x000021ec 
+ 00001650  0x00000a3d call  0x00002a4d 
+ 00001651  0x00000a3e arg  0x00000010 , 0x00000001 
+ 00001652  0x00000a3f call  0x000022dc 
+ 00001653  0x00000a40 set1  0x0000002d , 0x00000000 
+ 00001654  0x00000a41 set0  0x0000000b , 0x00000000 
+ 00001655  0x00000a42 fetch  0x00000001 , 0x00000077 
+ 00001656  0x00000a43 iforce  0x00000004 
+ 00001657  0x00000a44 jam  0x00000002 , 0x00000011 
+ 00001658  0x00000a45 branch  0x0000066b 
+ 00001659  0x00000a48 fetch  0x00000004 , 0x00000165 
+ 00001660  0x00000a49 pincrease  0x00000008 
+ 00001661  0x00000a4a store  0x00000004 , 0x00000165 
+ 00001662  0x00000a4b branch  0x000021f8 
+ 00001663  0x00000a4e bmark1  0x0000002c , 0x0000264d 
+ 00001664  0x00000a4f branch  0x0000258f 
+ 00001665  0x00000a52 jam  0x00000043 , 0x000011c7 
+ 00001666  0x00000a53 branch  0x0000077a 
+ 00001667  0x00000a56 fetch  0x00000001 , 0x00000030 
+ 00001668  0x00000a57 isolate1  0x00000000 , 0x0000003f 
+ 00001669  0x00000a58 call  0x00000687 , 0x00000001 
+ 00001670  0x00000a59 branch  0x0000248a 
+ 00001671  0x00000a5b fetch  0x00000001 , 0x00000047 
+ 00001672  0x00000a5c isolate1  0x00000003 , 0x0000003f 
+ 00001673  0x00000a5d call  0x000005f8 , 0x00000001 
+ 00001674  0x00000a5e ncall  0x00000716 , 0x00000001 
+ 00001675  0x00000a5f branch  0x0000071c 
+ 00001676  0x00000a62 call  0x000024f0 
+ 00001677  0x00000a63 nbranch  0x000028f9 , 0x00000018 
+ 00001678  0x00000a64 call  0x000029bb 
+ 00001679  0x00000a65 call  0x00000237 
+ 00001680  0x00000a66 branch  0x00002518 
+ 00001681  0x00000a69 rtnmark1  0x00000026 
+ 00001682  0x00000a6a call  0x00002afa 
+ 00001683  0x00000a6b fetch  0x00000003 , 0x0000416f 
+ 00001684  0x00000a6c rtn  0x00000034 
+ 00001685  0x00000a6d fetch  0x00000001 , 0x00004091 
+ 00001686  0x00000a6e rtn  0x00000034 
+ 00001687  0x00000a6f fetch  0x00000001 , 0x0000465a 
+ 00001688  0x00000a70 branch  0x0000069b , 0x00000034 
+ 00001689  0x00000a71 fetch  0x00000001 , 0x000045b1 
+ 00001690  0x00000a72 rtn  0x00000034 
+ 00001691  0x00000a74 fetch  0x00000001 , 0x000044c0 
+ 00001692  0x00000a75 nrtn  0x00000034 
+ 00001693  0x00000a76 call  0x00002c3a 
+ 00001694  0x00000a77 nrtn  0x00000034 
+ 00001695  0x00000a78 fetch  0x00000001 , 0x00004040 
+ 00001696  0x00000a79 compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00001697  0x00000a7a nbranch  0x00002b9d , 0x00000001 
+ 00001698  0x00000a7b fetch  0x00000002 , 0x00004042 
+ 00001699  0x00000a7c arg  0x0000ffff , 0x00000002 
+ 00001700  0x00000a7d isub  0x00000002 , 0x0000003e 
+ 00001701  0x00000a7e rtn  0x00000005 
+ 00001702  0x00000a7f branch  0x00002b7d 
+ 00001703  0x00000a82 disable  0x0000002b 
+ 00001704  0x00000a83 fetch  0x00000001 , 0x00000030 
+ 00001705  0x00000a84 rtnbit0  0x00000001 
+ 00001706  0x00000a85 nbranch  0x00002bd0 , 0x0000002d 
+ 00001707  0x00000a86 call  0x00002bcb 
+ 00001708  0x00000a87 fetch  0x00000002 , 0x000040c1 
+ 00001709  0x00000a88 store  0x00000002 , 0x0000003e 
+ 00001710  0x00000a89 fetch  0x00000001 , 0x00000047 
+ 00001711  0x00000a8a bbit1  0x00000003 , 0x00002bde 
+ 00001712  0x00000a8b bmark0  0x0000000d , 0x00002bde 
+ 00001713  0x00000a8c call  0x00005274 
+ 00001714  0x00000a8d nbranch  0x00002bde , 0x00000034 
+ 00001715  0x00000a8e call  0x000006b5 , 0x00000034 
+ 00001716  0x00000a8f branch  0x00002bbe 
+ 00001717  0x00000a91 jam  0x00000001 , 0x0000008a 
+ 00001718  0x00000a92 jam  0x00000000 , 0x0000008b 
+ 00001719  0x00000a93 rtn 
+ 00001720  0x00000a96 jam  0x00000010 , 0x000011c7 
+ 00001721  0x00000a97 branch  0x0000077a 
+ 00001722  0x00000a9a jam  0x00000011 , 0x000011c7 
+ 00001723  0x00000a9b branch  0x0000077a 
+ 00001724  0x00000a9e fetch  0x00000001 , 0x00000552 
+ 00001725  0x00000a9f store  0x00000001 , 0x000004c9 
+ 00001726  0x00000aa0 beq  0x00000013 , 0x000006c0 
+ 00001727  0x00000aa1 branch  0x00005db4 
+ 00001728  0x00000aa3 call  0x00005dcf 
+ 00001729  0x00000aa4 jam  0x00000001 , 0x00004cda 
+ 00001730  0x00000aa5 fetch  0x00000001 , 0x00004cdc 
+ 00001731  0x00000aa6 rtn  0x00000034 
+ 00001732  0x00000aa7 jam  0x00000002 , 0x00004cdc 
+ 00001733  0x00000aa8 rtn 
+ 00001734  0x00000aab disable  0x00000028 
+ 00001735  0x00000aac call  0x000062c1 
+ 00001736  0x00000aaf fetch  0x00000001 , 0x00000048 
+ 00001737  0x00000ab0 rtn  0x00000034 
+ 00001738  0x00000ab1 bbit1  0x00000007 , 0x000006cf 
+ 00001739  0x00000ab2 beq  0x00000003 , 0x000006d1 
+ 00001740  0x00000ab3 beq  0x00000031 , 0x000006d3 
+ 00001741  0x00000ab4 beq  0x00000017 , 0x000006d5 
+ 00001742  0x00000ab5 branch  0x00006010 
+ 00001743  0x00000ab8 jam  0x00000020 , 0x000011c7 
+ 00001744  0x00000ab9 branch  0x0000077a 
+ 00001745  0x00000abc jam  0x00000021 , 0x000011c7 
+ 00001746  0x00000abd branch  0x0000077a 
+ 00001747  0x00000ac0 jam  0x00000001 , 0x00004cdc 
+ 00001748  0x00000ac1 branch  0x000061c3 
+ 00001749  0x00000ac4 jam  0x00000004 , 0x00004ce4 
+ 00001750  0x00000ac5 branch  0x000061a4 
+ 00001751  0x00000ac8 call  0x000062bc 
+ 00001752  0x00000ac9 nrtn  0x00000034 
+ 00001753  0x00000acb fetch  0x00000001 , 0x00000055 
+ 00001754  0x00000acc rtn  0x00000034 
+ 00001755  0x00000acd beq  0x00000004 , 0x000006f9 
+ 00001756  0x00000ace beq  0x00000010 , 0x000006de 
+ 00001757  0x00000acf branch  0x00006320 
+ 00001758  0x00000ad2 fetch  0x00000001 , 0x0000455b 
+ 00001759  0x00000ad3 rtneq  0x00000000 
+ 00001760  0x00000ad4 beq  0x00000001 , 0x000006e2 
+ 00001761  0x00000ad5 branch  0x0000635f 
+ 00001762  0x00000ad7 rtn  0x00000029 
+ 00001763  0x00000ada fetch  0x00000001 , 0x0000016d 
+ 00001764  0x00000adb bbit1  0x00000000 , 0x000006e6 
+ 00001765  0x00000adc branch  0x00006399 
+ 00001766  0x00000ade fetch  0x00000001 , 0x00004cdc 
+ 00001767  0x00000adf beq  0x00000001 , 0x0000639d 
+ 00001768  0x00000ae1 fetch  0x00000001 , 0x000041bd 
+ 00001769  0x00000ae2 branch  0x000063a9 , 0x00000034 
+ 00001770  0x00000ae3 fetch  0x00000001 , 0x000004d1 
+ 00001771  0x00000ae4 rtnbit0  0x00000003 
+ 00001772  0x00000ae5 rtnbit0  0x00000002 
+ 00001773  0x00000ae6 fetch  0x00000001 , 0x00004cdb 
+ 00001774  0x00000ae7 rtn  0x00000034 
+ 00001775  0x00000ae8 jam  0x00000000 , 0x00004cdb 
+ 00001776  0x00000ae9 fetch  0x00000004 , 0x000004e9 
+ 00001777  0x00000aea arg  0x00000014 , 0x00000002 
+ 00001778  0x00000aeb iadd  0x00000002 , 0x00000002 
+ 00001779  0x00000aec copy  0x00000022 , 0x0000003f 
+ 00001780  0x00000aed isub  0x00000002 , 0x0000003e 
+ 00001781  0x00000aee nbranch  0x000006f7 , 0x00000002 
+ 00001782  0x00000aef branch  0x00006349 
+ 00001783  0x00000af2 jam  0x00000001 , 0x00004cdb 
+ 00001784  0x00000af3 rtn 
+ 00001785  0x00000af6 jam  0x00000014 , 0x000049e4 
+ 00001786  0x00000af7 branch  0x0000636f 
+ 00001787  0x00000afe call  0x000062bc 
+ 00001788  0x00000aff nbranch  0x00007ddb , 0x00000034 
+ 00001789  0x00000b00 fetch  0x00000001 , 0x00000a99 
+ 00001790  0x00000b01 bmark0  0x00000009 , 0x00007dd6 
+ 00001791  0x00000b02 beq  0x0000001f , 0x00000703 
+ 00001792  0x00000b03 beq  0x00000020 , 0x00000706 
+ 00001793  0x00000b04 beq  0x00000012 , 0x00000710 
+ 00001794  0x00000b05 branch  0x00007dca 
+ 00001795  0x00000b08 jam  0x00000034 , 0x00000185 
+ 00001796  0x00000b09 fetch  0x00000006 , 0x0000044f 
+ 00001797  0x00000b0a branch  0x00000708 
+ 00001798  0x00000b0c jam  0x00000033 , 0x00000185 
+ 00001799  0x00000b0d fetch  0x00000006 , 0x00000040 
+ 00001800  0x00000b0f store  0x00000006 , 0x00000186 
+ 00001801  0x00000b11 fetch  0x00000004 , 0x000046d3 
+ 00001802  0x00000b12 rtnbit0  0x00000007 
+ 00001803  0x00000b13 arg  0x00000007 , 0x00000007 
+ 00001804  0x00000b14 call  0x000043d2 
+ 00001805  0x00000b15 call  0x000042e8 
+ 00001806  0x00000b17 call  0x000042fb 
+ 00001807  0x00000b18 branch  0x000003dd 
+ 00001808  0x00000b1b call  0x00005890 
+ 00001809  0x00000b1c nrtn  0x00000034 
+ 00001810  0x00000b1d branch  0x00005abf 
+ 00001811  0x00000b20 jam  0x00000001 , 0x00004fbf 
+ 00001812  0x00000b21 jam  0x00000000 , 0x00004fbc 
+ 00001813  0x00000b22 rtn 
+ 00001814  0x00000b24 fetch  0x00000001 , 0x00004fbc 
+ 00001815  0x00000b25 increase  0x00000001 , 0x0000003f 
+ 00001816  0x00000b26 store  0x00000001 , 0x00004fbc 
+ 00001817  0x00000b27 rtn 
+ 00001818  0x00000b2a jam  0x00000003 , 0x00004fbc 
+ 00001819  0x00000b2b rtn 
+ 00001820  0x00000b2e fetch  0x00000002 , 0x00004682 
+ 00001821  0x00000b2f rtnbit1  0x0000000b 
+ 00001822  0x00000b30 rtnbit1  0x00000007 
+ 00001823  0x00000b31 rtnbit1  0x00000006 
+ 00001824  0x00000b33 arg  0x00004f45 , 0x00000011 
+ 00001825  0x00000b34 call  0x0000027a 
+ 00001826  0x00000b35 storet  0x00000001 , 0x00004fbd 
+ 00001827  0x00000b37 setarg  0x00000082 
+ 00001828  0x00000b38 bmark1  0x00000026 , 0x00000726 
+ 00001829  0x00000b39 setarg  0x00000080 
+ 00001830  0x00000b3b isub  0x00000002 , 0x0000003e 
+ 00001831  0x00000b3c nbranch  0x0000073e , 0x00000002 
+ 00001832  0x00000b3e fetch  0x00000001 , 0x00004fbc 
+ 00001833  0x00000b3f sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001834  0x00000b40 nbranch  0x0000072e , 0x00000002 
+ 00001835  0x00000b41 fetch  0x00000001 , 0x00004fbc 
+ 00001836  0x00000b42 beq  0x00000000 , 0x0000073f 
+ 00001837  0x00000b43 rtn 
+ 00001838  0x00000b46 fetch  0x00000001 , 0x00004fbc 
+ 00001839  0x00000b47 rtnne  0x00000032 
+ 00001840  0x00000b48 jam  0x00000000 , 0x00004fbc 
+ 00001841  0x00000b4a fetcht  0x00000001 , 0x00004fbd 
+ 00001842  0x00000b4b setarg  0x00000077 
+ 00001843  0x00000b4c bmark1  0x00000026 , 0x00000735 
+ 00001844  0x00000b4d setarg  0x00000075 
+ 00001845  0x00000b4f isub  0x00000002 , 0x0000003e 
+ 00001846  0x00000b50 nrtn  0x00000002 
+ 00001847  0x00000b51 fetch  0x00000001 , 0x00004fbf 
+ 00001848  0x00000b52 beq  0x00000000 , 0x00000746 
+ 00001849  0x00000b53 increase  0xffffffff , 0x0000003f 
+ 00001850  0x00000b54 store  0x00000001 , 0x00004fbf 
+ 00001851  0x00000b55 beq  0x00000000 , 0x00000746 
+ 00001852  0x00000b58 jam  0x00000000 , 0x000041de 
+ 00001853  0x00000b59 rtn 
+ 00001854  0x00000b5c jam  0x00000000 , 0x00004fbc 
+ 00001855  0x00000b5e fetch  0x00000001 , 0x00004fbf 
+ 00001856  0x00000b5f beq  0x00000002 , 0x00000744 
+ 00001857  0x00000b60 increase  0x00000001 , 0x0000003f 
+ 00001858  0x00000b61 store  0x00000001 , 0x00004fbf 
+ 00001859  0x00000b62 beq  0x00000001 , 0x0000073c 
+ 00001860  0x00000b64 jam  0x00000002 , 0x000041de 
+ 00001861  0x00000b65 rtn 
+ 00001862  0x00000b68 jam  0x00000004 , 0x000041de 
+ 00001863  0x00000b69 rtn 
+ 00001864  0x00000b6d storet  0x00000001 , 0x00000017 
+ 00001865  0x00000b6e add  0x00000002 , 0x00000000 , 0x00000011 
+ 00001866  0x00000b6f call  0x00002981 
+ 00001867  0x00000b70 setarg  0x00000500 
+ 00001868  0x00000b71 call  0x00002a8f 
+ 00001869  0x00000b73 jam  0x00000001 , 0x00008906 
+ 00001870  0x00000b74 jam  0x0000003c , 0x00008900 
+ 00001871  0x00000b75 jam  0x000000e0 , 0x00008901 
+ 00001872  0x00000b76 nop  0x0000000a 
+ 00001873  0x00000b77 jam  0x00000001 , 0x00008902 
+ 00001874  0x00000b78 jam  0x0000003d , 0x00008902 
+ 00001875  0x00000b79 nop  0x0000000a 
+ 00001876  0x00000b7a jam  0x000000b7 , 0x00008903 
+ 00001877  0x00000b7b nop  0x0000000a 
+ 00001878  0x00000b7c jam  0x0000007d , 0x00008902 
+ 00001879  0x00000b7d fetch  0x00000001 , 0x000041de 
+ 00001880  0x00000b80 beq  0x00000002 , 0x00000760 
+ 00001881  0x00000b82 beq  0x00000004 , 0x00000768 
+ 00001882  0x00000b83 beq  0x00000020 , 0x00000772 
+ 00001883  0x00000b86 call  0x0000076d 
+ 00001884  0x00000b88 jam  0x000000d0 , 0x00008955 
+ 00001885  0x00000b89 jam  0x000000e0 , 0x00008956 
+ 00001886  0x00000b8b jam  0x0000006c , 0x00008958 
+ 00001887  0x00000b8d branch  0x0000294b 
+ 00001888  0x00000b9b jam  0x000000fb , 0x0000894c 
+ 00001889  0x00000b9c jam  0x000000ef , 0x0000894d 
+ 00001890  0x00000b9d jam  0x000000ec , 0x0000894e 
+ 00001891  0x00000b9e jam  0x0000005e , 0x0000894f 
+ 00001892  0x00000ba1 jam  0x000000d0 , 0x00008955 
+ 00001893  0x00000ba2 jam  0x000000e0 , 0x00008956 
+ 00001894  0x00000ba4 jam  0x0000003c , 0x00008958 
+ 00001895  0x00000ba6 branch  0x00002953 
+ 00001896  0x00000bb3 call  0x0000076d 
+ 00001897  0x00000bb5 jam  0x000000d0 , 0x00008955 
+ 00001898  0x00000bb6 jam  0x000000c0 , 0x00008956 
+ 00001899  0x00000bb8 jam  0x0000006c , 0x00008958 
+ 00001900  0x00000bba branch  0x0000295b 
+ 00001901  0x00000bbd jam  0x0000005b , 0x0000894c 
+ 00001902  0x00000bbe jam  0x00000096 , 0x0000894d 
+ 00001903  0x00000bbf jam  0x0000002c , 0x0000894e 
+ 00001904  0x00000bc0 jam  0x00000046 , 0x0000894f 
+ 00001905  0x00000bc1 rtn 
+ 00001906  0x00000bc5 jam  0x000000c2 , 0x00008956 
+ 00001907  0x00000bc6 jam  0x000000d0 , 0x00008955 
+ 00001908  0x00000bc7 rtn 
+ 00001909  0x00000bca force  0x00000008 , 0x00000015 
+ 00001910  0x00000bcb branch  0x000028fa 
+ 00001911  0x00000bce call  0x00002978 
+ 00001912  0x00000bcf jam  0x00000005 , 0x00008042 
+ 00001913  0x00000bd0 rtn 
+ 00001914  0x00000bd5 fetcht  0x00000001 , 0x000011c7 
+ 00001915  0x00000bd6 rshift4  0x00000002 , 0x00000002 
+ 00001916  0x00000bd7 fetch  0x00000001 , 0x00004d27 
+ 00001917  0x00000bd8 isub  0x00000002 , 0x0000003e 
+ 00001918  0x00000bd9 branch  0x00000799 , 0x00000005 
+ 00001919  0x00000bda storet  0x00000001 , 0x00004d27 
+ 00001920  0x00000bdb increase  0x00000001 , 0x00000002 
+ 00001921  0x00000bdc setarg  0x00000100 
+ 00001922  0x00000bdd imul32  0x00000002 , 0x00000002 
+ 00001923  0x00000bde fetch  0x00000003 , 0x00004d28 
+ 00001924  0x00000bdf isub  0x00000002 , 0x0000003f 
+ 00001925  0x00000be1 fetcht  0x00000003 , 0x00004d2b 
+ 00001926  0x00000be2 iadd  0x00000002 , 0x0000003f 
+ 00001927  0x00000be3 increase  0xfffffffb , 0x0000003f 
+ 00001928  0x00000be4 store  0x00000003 , 0x00004d2e 
+ 00001929  0x00000be6 call  0x00000325 
+ 00001930  0x00000be8 fetch  0x00000003 , 0x00004d2e 
+ 00001931  0x00000be9 arg  0x00000100 , 0x00000002 
+ 00001932  0x00000bea arg  0x00001f00 , 0x00000011 
+ 00001933  0x00000beb call  0x00006562 
+ 00001934  0x00000bec fetch  0x00000004 , 0x00001f00 
+ 00001935  0x00000bed fetcht  0x00000004 , 0x00004d31 
+ 00001936  0x00000bee isub  0x00000002 , 0x0000003e 
+ 00001937  0x00000bef nbranch  0x0000078a , 0x00000005 
+ 00001938  0x00000bf0 call  0x000003eb 
+ 00001939  0x00000bf2 setarg  0x00001f00 
+ 00001940  0x00000bf3 store  0x00000002 , 0x00004199 
+ 00001941  0x00000bf4 jam  0x00000040 , 0x0000419b 
+ 00001942  0x00000bf5 call  0x000064ca 
+ 00001943  0x00000bf6 setarg  0x00000000 
+ 00001944  0x00000bf7 store  0x00000004 , 0x00004199 
+ 00001945  0x00000bf9 fetch  0x00000001 , 0x000011c7 
+ 00001946  0x00000bfa branch  0x00000001 
+ 00001947  0x00000c02 fetch  0x00000004 , 0x0000469b 
+ 00001948  0x00000c03 rtn  0x00000034 
+ 00001949  0x00000c04 call  0x000007f0 
+ 00001950  0x00000c05 setarg  0x00000003 
+ 00001951  0x00000c06 call  0x000007e3 
+ 00001952  0x00000c07 setarg  0x00000002 
+ 00001953  0x00000c08 call  0x000007e9 
+ 00001954  0x00000c09 fetch  0x00000001 , 0x00004ce6 
+ 00001955  0x00000c0a beq  0x00000001 , 0x000007a7 
+ 00001956  0x00000c0c arg  0x00000005 , 0x00000039 
+ 00001957  0x00000c0d arg  0x00004ce6 , 0x00000005 
+ 00001958  0x00000c0e branch  0x00007ed4 
+ 00001959  0x00000c12 fetch  0x00000002 , 0x00004ce7 
+ 00001960  0x00000c13 store  0x00000002 , 0x000011be 
+ 00001961  0x00000c14 fetch  0x00000002 , 0x0000469b 
+ 00001962  0x00000c15 store  0x00000002 , 0x000011c0 
+ 00001963  0x00000c16 call  0x000007ba 
+ 00001964  0x00000c17 fetch  0x00000002 , 0x000011be 
+ 00001965  0x00000c18 store  0x00000002 , 0x00004ce7 
+ 00001966  0x00000c19 fetch  0x00000002 , 0x000011c0 
+ 00001967  0x00000c1a store  0x00000002 , 0x0000469b 
+ 00001968  0x00000c1c fetch  0x00000002 , 0x00004ce9 
+ 00001969  0x00000c1d store  0x00000002 , 0x000011be 
+ 00001970  0x00000c1e fetch  0x00000002 , 0x0000469d 
+ 00001971  0x00000c1f store  0x00000002 , 0x000011c0 
+ 00001972  0x00000c20 call  0x000007ba 
+ 00001973  0x00000c21 fetch  0x00000002 , 0x000011be 
+ 00001974  0x00000c22 store  0x00000002 , 0x00004ce9 
+ 00001975  0x00000c23 fetch  0x00000002 , 0x000011c0 
+ 00001976  0x00000c24 store  0x00000002 , 0x0000469d 
+ 00001977  0x00000c25 rtn 
+ 00001978  0x00000c2e fetch  0x00000002 , 0x000011be 
+ 00001979  0x00000c2f fetcht  0x00000002 , 0x000011c0 
+ 00001980  0x00000c30 iadd  0x00000002 , 0x0000003f 
+ 00001981  0x00000c31 store  0x00000003 , 0x000011c2 
+ 00001982  0x00000c32 isolate1  0x00000010 , 0x0000003f 
+ 00001983  0x00000c33 branch  0x000007c7 , 0x00000001 
+ 00001984  0x00000c34 fetch  0x00000001 , 0x000011c3 
+ 00001985  0x00000c35 beq  0x000000ff , 0x000007ce 
+ 00001986  0x00000c36 fetch  0x00000001 , 0x000011c2 
+ 00001987  0x00000c38 rshift  0x0000003f , 0x0000003f 
+ 00001988  0x00000c39 store  0x00000002 , 0x000011be 
+ 00001989  0x00000c3a store  0x00000002 , 0x000011c0 
+ 00001990  0x00000c3b rtn 
+ 00001991  0x00000c3d fetch  0x00000001 , 0x000011c3 
+ 00001992  0x00000c3e beq  0x00000000 , 0x000007cb 
+ 00001993  0x00000c3f fetch  0x00000003 , 0x000011c2 
+ 00001994  0x00000c40 branch  0x000007c3 
+ 00001995  0x00000c42 jam  0x00000000 , 0x000011c4 
+ 00001996  0x00000c43 fetch  0x00000001 , 0x000011c2 
+ 00001997  0x00000c44 branch  0x000007c3 
+ 00001998  0x00000c47 fetch  0x00000001 , 0x000011c2 
+ 00001999  0x00000c48 call  0x000007d9 
+ 00002000  0x00000c49 store  0x00000001 , 0x000011be 
+ 00002001  0x00000c4a store  0x00000001 , 0x000011c0 
+ 00002002  0x00000c4b branch  0x000007d7 , 0x00000034 
+ 00002003  0x00000c4c setarg  0x000000ff 
+ 00002004  0x00000c4e store  0x00000001 , 0x000011bf 
+ 00002005  0x00000c4f store  0x00000001 , 0x000011c1 
+ 00002006  0x00000c50 rtn 
+ 00002007  0x00000c52 setarg  0x00000000 
+ 00002008  0x00000c53 branch  0x000007d4 
+ 00002009  0x00000c56 call  0x000007df 
+ 00002010  0x00000c57 rshift  0x0000003f , 0x0000003f 
+ 00002011  0x00000c59 call  0x000007e0 
+ 00002012  0x00000c5a sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002013  0x00000c5b store  0x00000001 , 0x000011c5 
+ 00002014  0x00000c5c rtn 
+ 00002015  0x00000c5f sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002016  0x00000c61 store  0x00000001 , 0x00000aae 
+ 00002017  0x00000c62 fetch  0x00000001 , 0x00000aae 
+ 00002018  0x00000c63 rtn 
+ 00002019  0x00000c67 isub  0x00000011 , 0x0000003e 
+ 00002020  0x00000c68 nbranch  0x000007ee , 0x00000002 
+ 00002021  0x00000c69 isub  0x00000012 , 0x0000003e 
+ 00002022  0x00000c6a nbranch  0x000007ee , 0x00000002 
+ 00002023  0x00000c6c jam  0x00000000 , 0x00004ce6 
+ 00002024  0x00000c6d rtn 
+ 00002025  0x00000c6f isub  0x00000011 , 0x0000003e 
+ 00002026  0x00000c70 nrtn  0x00000002 
+ 00002027  0x00000c71 isub  0x00000012 , 0x0000003e 
+ 00002028  0x00000c72 nrtn  0x00000002 
+ 00002029  0x00000c73 branch  0x000007e7 
+ 00002030  0x00000c75 jam  0x00000001 , 0x00004ce6 
+ 00002031  0x00000c76 rtn 
+ 00002032  0x00000c79 fetch  0x00000002 , 0x0000469b 
+ 00002033  0x00000c7a call  0x000007f7 
+ 00002034  0x00000c7b copy  0x0000003f , 0x00000011 
+ 00002035  0x00000c7c fetch  0x00000002 , 0x0000469d 
+ 00002036  0x00000c7d call  0x000007f7 
+ 00002037  0x00000c7e copy  0x0000003f , 0x00000012 
+ 00002038  0x00000c7f rtn 
+ 00002039  0x00000c86 store  0x00000002 , 0x000011c0 
+ 00002040  0x00000c87 fetch  0x00000001 , 0x000011c1 
+ 00002041  0x00000c88 beq  0x000000ff , 0x000007fd 
+ 00002042  0x00000c89 fetch  0x00000001 , 0x000011c0 
+ 00002043  0x00000c8b and_into  0x000000ff , 0x0000003f 
+ 00002044  0x00000c8d rtn 
+ 00002045  0x00000c8f fetch  0x00000002 , 0x000011c0 
+ 00002046  0x00000c90 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002047  0x00000c91 branch  0x000007fb 
+ 00008192  0x00000c9d call  0x00002abc 
+ 00008193  0x00000ca0 bpatch  0x00000000 , 0x00004000 
+ 00008194  0x00000ca1 clear_stack 
+ 00008195  0x00000ca2 call  0x0000640d 
+ 00008196  0x00000ca3 call  0x0000296c 
+ 00008197  0x00000ca4 call  0x000065a3 
+ 00008198  0x00000ca5 call  0x00002a96 
+ 00008199  0x00000ca6 call  0x00004d6a 
+ 00008200  0x00000ca7 bpatch  0x00000001 , 0x00004000 
+ 00008201  0x00000ca8 call  0x00006a03 
+ 00008202  0x00000ca9 call  0x00005cf6 
+ 00008203  0x00000caa call  0x00007ccc 
+ 00008204  0x00000cab call  0x000032d8 
+ 00008205  0x00000cac ncall  0x0000689c , 0x0000002b 
+ 00008206  0x00000cad bpatch  0x00000002 , 0x00004000 
+ 00008207  0x00000cae call  0x000032e3 , 0x0000002b 
+ 00008208  0x00000caf call  0x0000756a 
+ 00008209  0x00000cb0 call  0x00002b41 , 0x0000002b 
+ 00008210  0x00000cb2 bpatch  0x00000003 , 0x00004000 
+ 00008211  0x00000cb3 call  0x000076dc 
+ 00008212  0x00000cb4 call  0x00007aaf 
+ 00008213  0x00000cb5 call  0x0000756d 
+ 00008214  0x00000cb6 call  0x0000535c 
+ 00008215  0x00000cb7 bpatch  0x00000004 , 0x00004000 
+ 00008216  0x00000cb8 call  0x00002038 
+ 00008217  0x00000cb9 call  0x000032ed 
+ 00008218  0x00000cba call  0x0000208f 
+ 00008219  0x00000cbb call  0x000022f8 
+ 00008220  0x00000cbc call  0x0000236a 
+ 00008221  0x00000cbd call  0x00002021 
+ 00008222  0x00000cbe call  0x00002b6a 
+ 00008223  0x00000cbf call  0x00002c72 
+ 00008224  0x00000cc0 branch  0x00002012 
+ 00008225  0x00000cc3 call  0x00002026 
+ 00008226  0x00000cc4 rtnmark0  0x00000009 
+ 00008227  0x00000cc5 set0  0x00000009 , 0x00000000 
+ 00008228  0x00000cc6 call  0x00002223 
+ 00008229  0x00000cc7 branch  0x000053ce 
+ 00008230  0x00000cca bpatch  0x00000005 , 0x00004000 
+ 00008231  0x00000ccb call  0x0000225e 
+ 00008232  0x00000ccc nbranch  0x0000202f , 0x00000005 
+ 00008233  0x00000ccd call  0x0000220a 
+ 00008234  0x00000cce add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008235  0x00000ccf ifetch  0x00000001 , 0x00000006 
+ 00008236  0x00000cd0 bbit1  0x00000000 , 0x00005360 
+ 00008237  0x00000cd1 bbit1  0x00000001 , 0x00002166 
+ 00008238  0x00000cd2 branch  0x000023cf 
+ 00008239  0x00000cd4 call  0x0000222b 
+ 00008240  0x00000cd5 copy  0x00000039 , 0x0000003e 
+ 00008241  0x00000cd6 rtn  0x00000005 
+ 00008242  0x00000cd7 call  0x0000220a 
+ 00008243  0x00000cd8 fetch  0x00000001 , 0x00000030 
+ 00008244  0x00000cd9 bbit1  0x00000003 , 0x000020d3 
+ 00008245  0x00000cda fetch  0x00000001 , 0x00000031 
+ 00008246  0x00000cdb bbit1  0x00000001 , 0x00002166 
+ 00008247  0x00000cdc branch  0x000023cf 
+ 00008248  0x00000ce5 fetch  0x00000001 , 0x000041ce 
+ 00008249  0x00000ce6 rtn  0x00000034 
+ 00008250  0x00000ce7 beq  0x00000001 , 0x00002048 
+ 00008251  0x00000ce8 beq  0x00000002 , 0x0000204d 
+ 00008252  0x00000ce9 beq  0x00000003 , 0x00002050 
+ 00008253  0x00000cea beq  0x00000005 , 0x00002055 
+ 00008254  0x00000ceb beq  0x0000001b , 0x00002045 
+ 00008255  0x00000cec call  0x00002257 
+ 00008256  0x00000ced rtn  0x00000005 
+ 00008257  0x00000cee call  0x0000225a 
+ 00008258  0x00000cef rtn  0x00000005 
+ 00008259  0x00000cf1 jam  0x00000000 , 0x000041ce 
+ 00008260  0x00000cf2 rtn 
+ 00008261  0x00000cf5 jam  0x0000001b , 0x0000049b 
+ 00008262  0x00000cf6 jam  0x00000000 , 0x000041ce 
+ 00008263  0x00000cf7 rtn 
+ 00008264  0x00000cfa set1  0x0000001c , 0x00000000 
+ 00008265  0x00000cfb set0  0x0000001e , 0x00000000 
+ 00008266  0x00000cfc jam  0x000000ff , 0x0000008f 
+ 00008267  0x00000cfd jam  0x0000001f , 0x0000008d 
+ 00008268  0x00000cfe branch  0x00002043 
+ 00008269  0x00000d01 set0  0x0000001c , 0x00000000 
+ 00008270  0x00000d02 force  0x00000000 , 0x0000001b 
+ 00008271  0x00000d03 branch  0x00002043 
+ 00008272  0x00000d06 call  0x0000225a 
+ 00008273  0x00000d07 rtn  0x00000005 
+ 00008274  0x00000d08 force  0x00000001 , 0x00000002 
+ 00008275  0x00000d09 jam  0x00000005 , 0x0000016e 
+ 00008276  0x00000d0a branch  0x0000205c 
+ 00008277  0x00000d0d bpatch  0x00000006 , 0x00004000 
+ 00008278  0x00000d0f fetch  0x00000006 , 0x000041d0 
+ 00008279  0x00000d10 branch  0x00002043 , 0x00000034 
+ 00008280  0x00000d11 jam  0x00000001 , 0x00004681 
+ 00008281  0x00000d13 jam  0x00000003 , 0x00000055 
+ 00008282  0x00000d14 branch  0x0000205b 
+ 00008283  0x00000d17 force  0x00000025 , 0x00000002 
+ 00008284  0x00000d19 bpatch  0x00000007 , 0x00004000 
+ 00008285  0x00000d1a fetch  0x00000001 , 0x000000f1 
+ 00008286  0x00000d1b branch  0x00002062 , 0x00000034 
+ 00008287  0x00000d1c lshift3  0x0000003f , 0x0000003f 
+ 00008288  0x00000d1d lshift4  0x0000003f , 0x0000003f 
+ 00008289  0x00000d1e increase  0xffffffff , 0x0000003f 
+ 00008290  0x00000d20 store  0x00000001 , 0x000040a6 
+ 00008291  0x00000d21 store  0x00000001 , 0x000000f0 
+ 00008292  0x00000d22 jam  0x0000001f , 0x0000008e 
+ 00008293  0x00000d23 set0  0x0000000c , 0x00000000 
+ 00008294  0x00000d24 call  0x0000223b 
+ 00008295  0x00000d25 nbranch  0x00002083 , 0x00000005 
+ 00008296  0x00000d26 call  0x00002a6f 
+ 00008297  0x00000d27 store  0x00000001 , 0x00000077 
+ 00008298  0x00000d28 storet  0x00000001 , 0x0000007c 
+ 00008299  0x00000d29 fetch  0x00000006 , 0x000041d0 
+ 00008300  0x00000d2a store  0x00000006 , 0x00000040 
+ 00008301  0x00000d2b bpatch  0x00000008 , 0x00004001 
+ 00008302  0x00000d2c call  0x00007f15 
+ 00008303  0x00000d2d force  0x00000000 , 0x0000003f 
+ 00008304  0x00000d2e compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008305  0x00000d2f nsetflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00008306  0x00000d30 set1  0x00000003 , 0x0000003f 
+ 00008307  0x00000d31 store  0x00000001 , 0x00000030 
+ 00008308  0x00000d32 jam  0x00000003 , 0x00000a99 
+ 00008309  0x00000d33 call  0x00007d86 
+ 00008310  0x00000d34 force  0x00000000 , 0x0000003f 
+ 00008311  0x00000d35 setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00008312  0x00000d36 store  0x00000001 , 0x0000004c 
+ 00008313  0x00000d37 setarg  0x00000000 
+ 00008314  0x00000d38 set1  0x00000001 , 0x0000003f 
+ 00008315  0x00000d39 store  0x00000001 , 0x00000031 
+ 00008316  0x00000d3a enable  0x00000029 
+ 00008317  0x00000d3b call  0x00002223 
+ 00008318  0x00000d3c disable  0x00000029 
+ 00008319  0x00000d3d force  0x00000003 , 0x00000007 
+ 00008320  0x00000d3e fetch  0x00000002 , 0x000040b9 
+ 00008321  0x00000d3f call  0x00007f08 
+ 00008322  0x00000d40 branch  0x00002043 
+ 00008323  0x00000d42 bpatch  0x00000009 , 0x00004001 
+ 00008324  0x00000d43 fetch  0x00000006 , 0x000041d0 
+ 00008325  0x00000d44 store  0x00000006 , 0x00000040 
+ 00008326  0x00000d45 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008327  0x00000d46 branch  0x00002089 , 0x00000001 
+ 00008328  0x00000d47 branch  0x00002043 
+ 00008329  0x00000d49 arg  0x00000101 , 0x00000005 
+ 00008330  0x00000d4a arg  0x00000008 , 0x00000039 
+ 00008331  0x00000d4b call  0x00007ec6 
+ 00008332  0x00000d4c jam  0x00000004 , 0x00000a99 
+ 00008333  0x00000d4d call  0x00007d86 
+ 00008334  0x00000d4e branch  0x00002043 
+ 00008335  0x00000d56 rtnmark0  0x0000001c 
+ 00008336  0x00000d57 force  0x00000001 , 0x00000007 
+ 00008337  0x00000d58 call  0x00007f16 
+ 00008338  0x00000d59 nsetflag  0x00000034 , 0x0000001c , 0x00000000 
+ 00008339  0x00000d5a nbranch  0x00002095 , 0x00000034 
+ 00008340  0x00000d5b rtn 
+ 00008341  0x00000d60 bpatch  0x0000000a , 0x00004001 
+ 00008342  0x00000d61 fetcht  0x00000002 , 0x000040bb 
+ 00008343  0x00000d62 force  0x00000004 , 0x00000007 
+ 00008344  0x00000d63 call  0x0000271c 
+ 00008345  0x00000d64 rtn  0x00000028 
+ 00008346  0x00000d65 call  0x000028a4 
+ 00008347  0x00000d66 force  0x00000000 , 0x00000024 
+ 00008348  0x00000d68 rtn  0x00000003 
+ 00008349  0x00000d69 set0  0x0000000b , 0x00000000 
+ 00008350  0x00000d6a set0  0x00000000 , 0x00000000 
+ 00008351  0x00000d6c add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008352  0x00000d6d isolate1  0x0000001e , 0x00000000 
+ 00008353  0x00000d6e setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008354  0x00000d6f compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008355  0x00000d70 nbranch  0x000020be , 0x00000001 
+ 00008356  0x00000d73 bpatch  0x0000000b , 0x00004001 
+ 00008357  0x00000d74 fetch  0x00000001 , 0x00000012 
+ 00008358  0x00000d75 increase  0x00000001 , 0x0000003f 
+ 00008359  0x00000d76 store  0x00000001 , 0x00000012 
+ 00008360  0x00000d77 call  0x000028d8 
+ 00008361  0x00000d78 call  0x000028d2 
+ 00008362  0x00000d79 call  0x000028f2 
+ 00008363  0x00000d7a call  0x00002a51 
+ 00008364  0x00000d7b call  0x00002a56 
+ 00008365  0x00000d7c call  0x00002a64 
+ 00008366  0x00000d7d call  0x0000264d 
+ 00008367  0x00000d7e call  0x000020b1 
+ 00008368  0x00000d7f branch  0x0000209c 
+ 00008369  0x00000d82 bpatch  0x0000000c , 0x00004001 
+ 00008370  0x00000d83 fetch  0x00000001 , 0x0000008d 
+ 00008371  0x00000d84 increase  0xffffffff , 0x0000003f 
+ 00008372  0x00000d85 store  0x00000001 , 0x0000008d 
+ 00008373  0x00000d86 rtn  0x00000002 
+ 00008374  0x00000d87 jam  0x0000001f , 0x0000008d 
+ 00008375  0x00000d88 fetch  0x00000001 , 0x0000008f 
+ 00008376  0x00000d89 increase  0xffffffff , 0x0000003f 
+ 00008377  0x00000d8a store  0x00000001 , 0x0000008f 
+ 00008378  0x00000d8b rtn  0x00000002 
+ 00008379  0x00000d8c setflip  0x0000001e , 0x00000000 
+ 00008380  0x00000d8d jam  0x000000ff , 0x0000008f 
+ 00008381  0x00000d8e rtn 
+ 00008382  0x00000d91 bpatch  0x0000000d , 0x00004001 
+ 00008383  0x00000d92 call  0x000028d8 
+ 00008384  0x00000d93 call  0x000028cc 
+ 00008385  0x00000d94 call  0x000028f2 
+ 00008386  0x00000d95 call  0x00002a5b 
+ 00008387  0x00000d96 call  0x000029eb 
+ 00008388  0x00000d97 call  0x00002a0d 
+ 00008389  0x00000d98 branch  0x000020c8 , 0x00000018 
+ 00008390  0x00000d99 call  0x000020b1 
+ 00008391  0x00000d9a branch  0x0000209f 
+ 00008392  0x00000d9c bpatch  0x0000000e , 0x00004001 
+ 00008393  0x00000d9d call  0x000029bb 
+ 00008394  0x00000d9e call  0x00002a6b 
+ 00008395  0x00000d9f call  0x0000251e 
+ 00008396  0x00000da0 set0  0x00000001 , 0x00000000 
+ 00008397  0x00000da1 rtnmark0  0x0000000b 
+ 00008398  0x00000da3 bpatch  0x0000000f , 0x00004001 
+ 00008399  0x00000da5 fetch  0x00000001 , 0x00000013 
+ 00008400  0x00000da6 increase  0x00000001 , 0x0000003f 
+ 00008401  0x00000da7 store  0x00000001 , 0x00000013 
+ 00008402  0x00000da8 rtn 
+ 00008403  0x00000db1 bpatch  0x00000010 , 0x00004002 
+ 00008404  0x00000db2 enable  0x00000029 
+ 00008405  0x00000db3 enable  0x00000030 
+ 00008406  0x00000db4 fetch  0x00000002 , 0x000040b5 
+ 00008407  0x00000db5 branch  0x000020db , 0x00000034 
+ 00008408  0x00000db6 force  0x00000008 , 0x00000007 
+ 00008409  0x00000db7 call  0x00007f16 
+ 00008410  0x00000db8 nrtn  0x00000034 
+ 00008411  0x00000dba bpatch  0x00000011 , 0x00004002 
+ 00008412  0x00000dbb fetcht  0x00000002 , 0x000040b7 
+ 00008413  0x00000dbc force  0x00000028 , 0x00000007 
+ 00008414  0x00000dbd call  0x0000271c 
+ 00008415  0x00000dbe branch  0x00002114 , 0x00000028 
+ 00008416  0x00000dbf force  0x00000003 , 0x00000007 
+ 00008417  0x00000dc0 call  0x00007f16 
+ 00008418  0x00000dc1 nbranch  0x000020f0 , 0x00000034 
+ 00008419  0x00000dc2 fetch  0x00000001 , 0x0000004c 
+ 00008420  0x00000dc3 bbit1  0x00000004 , 0x000020e6 
+ 00008421  0x00000dc4 branch  0x000020e9 
+ 00008422  0x00000dc6 arg  0x00000101 , 0x00000005 
+ 00008423  0x00000dc7 arg  0x00000008 , 0x00000039 
+ 00008424  0x00000dc8 call  0x00007ec6 
+ 00008425  0x00000dca bpatch  0x00000012 , 0x00004002 
+ 00008426  0x00000dcb jam  0x00000000 , 0x00000030 
+ 00008427  0x00000dcc call  0x00005cf7 
+ 00008428  0x00000dcd jam  0x00000000 , 0x00004681 
+ 00008429  0x00000dce jam  0x00000013 , 0x00000a99 
+ 00008430  0x00000dcf call  0x00007d86 
+ 00008431  0x00000dd0 branch  0x00002114 
+ 00008432  0x00000dd3 bpatch  0x00000013 , 0x00004002 
+ 00008433  0x00000dd4 force  0x00000000 , 0x0000000b 
+ 00008434  0x00000dd5 until  0x00000023 , 0x00000026 
+ 00008435  0x00000dd6 fetch  0x00000001 , 0x000000f2 
+ 00008436  0x00000dd7 increase  0xffffffff , 0x0000003f 
+ 00008437  0x00000dd8 ixor  0x00000022 , 0x0000003f 
+ 00008438  0x00000dd9 compare  0x00000000 , 0x0000003f , 0x00000003 
+ 00008439  0x00000dda nbranch  0x000020f0 , 0x00000001 
+ 00008440  0x00000ddb deposit  0x00000004 
+ 00008441  0x00000ddc store  0x00000001 , 0x00000181 
+ 00008442  0x00000ddd force  0x00000000 , 0x00000026 
+ 00008443  0x00000dde force  0x00000000 , 0x00000024 
+ 00008444  0x00000de1 bpatch  0x00000014 , 0x00004002 
+ 00008445  0x00000de2 branch  0x00002114 , 0x00000003 
+ 00008446  0x00000de3 call  0x000028dc 
+ 00008447  0x00000de4 arg  0x00000600 , 0x0000000b 
+ 00008448  0x00000de5 until  0x00000023 , 0x00000026 
+ 00008449  0x00000de7 bpatch  0x00000015 , 0x00004002 
+ 00008450  0x00000de8 fetch  0x00000004 , 0x000000f2 
+ 00008451  0x00000de9 iforce  0x00000021 
+ 00008452  0x00000dea increase  0x00000001 , 0x0000003f 
+ 00008453  0x00000deb store  0x00000004 , 0x000000f2 
+ 00008454  0x00000dec isolate1  0x0000000c , 0x00000000 
+ 00008455  0x00000ded setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008456  0x00000dee compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008457  0x00000def nbranch  0x00002128 , 0x00000001 
+ 00008458  0x00000df0 fetch  0x00000001 , 0x0000000c 
+ 00008459  0x00000df1 increase  0x00000001 , 0x0000003f 
+ 00008460  0x00000df2 store  0x00000001 , 0x0000000c 
+ 00008461  0x00000df3 call  0x000028d2 
+ 00008462  0x00000df4 call  0x00002a51 
+ 00008463  0x00000df5 call  0x00002a56 
+ 00008464  0x00000df6 call  0x00002a64 
+ 00008465  0x00000df7 call  0x0000264d 
+ 00008466  0x00000df8 call  0x0000211a 
+ 00008467  0x00000df9 branch  0x000020fc 
+ 00008468  0x00000dfb bpatch  0x00000016 , 0x00004002 
+ 00008469  0x00000dfc disable  0x00000029 
+ 00008470  0x00000dfd fetch  0x00000002 , 0x000040b5 
+ 00008471  0x00000dfe rtn  0x00000034 
+ 00008472  0x00000dff force  0x00000008 , 0x00000007 
+ 00008473  0x00000e00 branch  0x00007f08 
+ 00008474  0x00000e03 bpatch  0x00000017 , 0x00004002 
+ 00008475  0x00000e04 fetch  0x00000001 , 0x0000008e 
+ 00008476  0x00000e05 increase  0xffffffff , 0x0000003f 
+ 00008477  0x00000e06 store  0x00000001 , 0x0000008e 
+ 00008478  0x00000e07 rtn  0x00000002 
+ 00008479  0x00000e08 jam  0x0000001f , 0x0000008e 
+ 00008480  0x00000e09 fetch  0x00000001 , 0x000000f0 
+ 00008481  0x00000e0a increase  0xffffffff , 0x0000003f 
+ 00008482  0x00000e0b store  0x00000001 , 0x000000f0 
+ 00008483  0x00000e0c rtn  0x00000002 
+ 00008484  0x00000e0d setflip  0x0000000c , 0x00000000 
+ 00008485  0x00000e0e fetch  0x00000001 , 0x000040a6 
+ 00008486  0x00000e0f store  0x00000001 , 0x000000f0 
+ 00008487  0x00000e10 rtn 
+ 00008488  0x00000e13 bpatch  0x00000018 , 0x00004003 
+ 00008489  0x00000e14 call  0x000028cc 
+ 00008490  0x00000e15 call  0x00002a5b 
+ 00008491  0x00000e16 call  0x000029eb 
+ 00008492  0x00000e17 call  0x00002a0d 
+ 00008493  0x00000e18 branch  0x00002130 , 0x00000018 
+ 00008494  0x00000e19 call  0x0000211a 
+ 00008495  0x00000e1a branch  0x00002101 
+ 00008496  0x00000e1c call  0x0000264d 
+ 00008497  0x00000e1d fetch  0x00000001 , 0x0000000d 
+ 00008498  0x00000e1e increase  0x00000001 , 0x0000003f 
+ 00008499  0x00000e1f store  0x00000001 , 0x0000000d 
+ 00008500  0x00000e20 force  0x00000000 , 0x0000001b 
+ 00008501  0x00000e21 fetch  0x00000004 , 0x000000f2 
+ 00008502  0x00000e23 bpatch  0x00000019 , 0x00004003 
+ 00008503  0x00000e24 call  0x00002a4f 
+ 00008504  0x00000e25 call  0x000028dc 
+ 00008505  0x00000e26 increase  0x00000001 , 0x00000026 
+ 00008506  0x00000e28 and_into  0x000001fd , 0x00000021 
+ 00008507  0x00000e29 and_into  0x000001fc , 0x00000024 
+ 00008508  0x00000e2a call  0x000028d2 
+ 00008509  0x00000e2b call  0x00002a51 
+ 00008510  0x00000e2c call  0x00002a56 
+ 00008511  0x00000e2d call  0x00002a64 
+ 00008512  0x00000e2e deposit  0x00000022 
+ 00008513  0x00000e2f store  0x00000004 , 0x00000161 
+ 00008514  0x00000e30 force  0x00000000 , 0x00000004 
+ 00008515  0x00000e31 force  0x00000002 , 0x00000001 
+ 00008516  0x00000e32 call  0x00002a6b 
+ 00008517  0x00000e33 call  0x00002766 
+ 00008518  0x00000e35 bpatch  0x0000001a , 0x00004003 
+ 00008519  0x00000e36 call  0x00002a4d 
+ 00008520  0x00000e37 or_into  0x00000002 , 0x00000021 
+ 00008521  0x00000e38 and_into  0x000001fc , 0x00000024 
+ 00008522  0x00000e39 call  0x000028cc 
+ 00008523  0x00000e3a call  0x00002a5b 
+ 00008524  0x00000e3b call  0x000029eb 
+ 00008525  0x00000e3c call  0x00002a0d 
+ 00008526  0x00000e3d call  0x0000264d , 0x00000018 
+ 00008527  0x00000e3e branch  0x00002155 , 0x00000018 
+ 00008528  0x00000e3f fetch  0x00000001 , 0x00000010 
+ 00008529  0x00000e40 branch  0x000020fc , 0x00000034 
+ 00008530  0x00000e41 increase  0xffffffff , 0x0000003f 
+ 00008531  0x00000e42 store  0x00000001 , 0x00000010 
+ 00008532  0x00000e43 branch  0x00002136 
+ 00008533  0x00000e46 bpatch  0x0000001b , 0x00004003 
+ 00008534  0x00000e47 fetch  0x00000001 , 0x0000000e 
+ 00008535  0x00000e48 increase  0x00000001 , 0x0000003f 
+ 00008536  0x00000e49 store  0x00000001 , 0x0000000e 
+ 00008537  0x00000e4a call  0x00002435 
+ 00008538  0x00000e4c call  0x000022f2 
+ 00008539  0x00000e4d branch  0x0000215f , 0x00000018 
+ 00008540  0x00000e4e call  0x00002455 
+ 00008541  0x00000e4f nbranch  0x0000215a , 0x00000034 
+ 00008542  0x00000e50 branch  0x000020fc 
+ 00008543  0x00000e53 bpatch  0x0000001c , 0x00004003 
+ 00008544  0x00000e54 fetch  0x00000001 , 0x00000030 
+ 00008545  0x00000e55 set0  0x00000003 , 0x0000003f 
+ 00008546  0x00000e56 store  0x00000001 , 0x00000030 
+ 00008547  0x00000e57 call  0x00002440 
+ 00008548  0x00000e58 disable  0x00000029 
+ 00008549  0x00000e59 rtn 
+ 00008550  0x00000e5d bpatch  0x0000001d , 0x00004003 
+ 00008551  0x00000e5e enable  0x00000029 
+ 00008552  0x00000e5f enable  0x00000030 
+ 00008553  0x00000e60 call  0x000021e1 
+ 00008554  0x00000e61 rtn  0x00000028 
+ 00008555  0x00000e62 call  0x00002c69 
+ 00008556  0x00000e63 call  0x00002a4f 
+ 00008557  0x00000e64 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008558  0x00000e65 call  0x000028e2 
+ 00008559  0x00000e66 force  0x00000003 , 0x00000024 
+ 00008560  0x00000e67 call  0x00006cc2 
+ 00008561  0x00000e68 call  0x00002489 
+ 00008562  0x00000e69 call  0x000028d2 
+ 00008563  0x00000e6a call  0x00002a51 
+ 00008564  0x00000e6b call  0x00002a56 
+ 00008565  0x00000e6c call  0x00002a64 
+ 00008566  0x00000e6d call  0x00002762 
+ 00008567  0x00000e6f bpatch  0x0000001e , 0x00004003 
+ 00008568  0x00000e70 call  0x00005d08 
+ 00008569  0x00000e71 call  0x000022e4 
+ 00008570  0x00000e72 nbranch  0x00002180 , 0x0000002d 
+ 00008571  0x00000e73 call  0x00002a88 
+ 00008572  0x00000e74 call  0x00002728 
+ 00008573  0x00000e75 fetch  0x00000001 , 0x0000000f 
+ 00008574  0x00000e76 increase  0x00000001 , 0x0000003f 
+ 00008575  0x00000e77 store  0x00000001 , 0x0000000f 
+ 00008576  0x00000e79 bpatch  0x0000001f , 0x00004003 
+ 00008577  0x00000e7a call  0x00006caa 
+ 00008578  0x00000e7b call  0x0000218b 
+ 00008579  0x00000e7c nrtn  0x00000029 
+ 00008580  0x00000e7d call  0x000026f3 
+ 00008581  0x00000e7e nbranch  0x00002188 , 0x00000034 
+ 00008582  0x00000e80 disable  0x00000029 
+ 00008583  0x00000e81 rtn 
+ 00008584  0x00000e84 call  0x00002489 
+ 00008585  0x00000e85 call  0x000022da 
+ 00008586  0x00000e86 branch  0x00002177 
+ 00008587  0x00000e8a branch  0x0000218e , 0x0000002d 
+ 00008588  0x00000e8b call  0x00002a7f 
+ 00008589  0x00000e8c branch  0x0000219c , 0x00000002 
+ 00008590  0x00000e8e call  0x000021a7 
+ 00008591  0x00000e8f nbranch  0x0000219c , 0x00000028 
+ 00008592  0x00000e90 fetch  0x00000001 , 0x0000004c 
+ 00008593  0x00000e91 rtnbit0  0x00000004 
+ 00008594  0x00000e92 rtnbit1  0x00000003 
+ 00008595  0x00000e93 fetch  0x00000001 , 0x0000004b 
+ 00008596  0x00000e94 rtnbit1  0x00000003 
+ 00008597  0x00000e95 call  0x000021ae 
+ 00008598  0x00000e96 nrtn  0x00000034 
+ 00008599  0x00000e97 fetch  0x00000001 , 0x0000016e 
+ 00008600  0x00000e98 increase  0xffffffff , 0x0000003f 
+ 00008601  0x00000e99 store  0x00000001 , 0x0000016e 
+ 00008602  0x00000e9a nrtn  0x00000034 
+ 00008603  0x00000e9b branch  0x00006006 
+ 00008604  0x00000e9e bpatch  0x00000020 , 0x00004004 
+ 00008605  0x00000e9f call  0x0000245d 
+ 00008606  0x00000ea0 disable  0x00000029 
+ 00008607  0x00000ea1 fetch  0x00000001 , 0x0000004c 
+ 00008608  0x00000ea2 bbit1  0x00000004 , 0x000021a2 
+ 00008609  0x00000ea3 rtn 
+ 00008610  0x00000ea6 fetch  0x00000001 , 0x0000004c 
+ 00008611  0x00000ea7 rtnbit1  0x00000003 
+ 00008612  0x00000ea9 arg  0x00000101 , 0x00000005 
+ 00008613  0x00000eaa arg  0x00000008 , 0x00000039 
+ 00008614  0x00000eab branch  0x00007ec6 
+ 00008615  0x00000eae bpatch  0x00000021 , 0x00004004 
+ 00008616  0x00000eaf enable  0x00000028 
+ 00008617  0x00000eb0 fetch  0x00000001 , 0x0000004b 
+ 00008618  0x00000eb1 rtnbit0  0x00000003 
+ 00008619  0x00000eb2 call  0x000021ae 
+ 00008620  0x00000eb3 nrtn  0x00000034 
+ 00008621  0x00000eb4 branch  0x00007fe9 
+ 00008622  0x00000eb7 fetch  0x00000001 , 0x00000072 
+ 00008623  0x00000eb8 increase  0xffffffff , 0x0000003f 
+ 00008624  0x00000eb9 store  0x00000001 , 0x00000072 
+ 00008625  0x00000eba rtn 
+ 00008626  0x00000ebd bpatch  0x00000022 , 0x00004004 
+ 00008627  0x00000ebe fetch  0x00000001 , 0x00000030 
+ 00008628  0x00000ebf bbit1  0x00000007 , 0x000021bb 
+ 00008629  0x00000ec0 fetch  0x00000001 , 0x000009b5 
+ 00008630  0x00000ec1 branch  0x000021bb , 0x00000034 
+ 00008631  0x00000ec2 jam  0x00000000 , 0x000009b5 
+ 00008632  0x00000ec3 jam  0x00000018 , 0x00000a99 
+ 00008633  0x00000ec4 call  0x00007d86 
+ 00008634  0x00000ec5 branch  0x000021bb 
+ 00008635  0x00000ec7 bpatch  0x00000023 , 0x00004004 
+ 00008636  0x00000ec8 call  0x00002254 
+ 00008637  0x00000ec9 fetch  0x00000001 , 0x00000030 
+ 00008638  0x00000eca set1  0x00000007 , 0x0000003f 
+ 00008639  0x00000ecb store  0x00000001 , 0x00000030 
+ 00008640  0x00000ecc jam  0x00000001 , 0x000041bd 
+ 00008641  0x00000ecd fetch  0x00000001 , 0x00000055 
+ 00008642  0x00000ece bne  0x00000016 , 0x000021c3 
+ 00008643  0x00000ed0 rtn 
+ 00008644  0x00000ed3 jam  0x00000001 , 0x000009b5 
+ 00008645  0x00000ed5 fetch  0x00000001 , 0x00000030 
+ 00008646  0x00000ed6 set0  0x00000007 , 0x0000003f 
+ 00008647  0x00000ed7 store  0x00000001 , 0x00000030 
+ 00008648  0x00000ed8 rtn 
+ 00008649  0x00000edd bpatch  0x00000024 , 0x00004004 
+ 00008650  0x00000ede disable  0x00000028 
+ 00008651  0x00000edf fetch  0x00000002 , 0x00000032 
+ 00008652  0x00000ee0 arg  0x0000ffff , 0x00000002 
+ 00008653  0x00000ee1 isub  0x00000002 , 0x0000003e 
+ 00008654  0x00000ee2 nrtn  0x00000005 
+ 00008655  0x00000ee3 fetch  0x00000004 , 0x00000034 
+ 00008656  0x00000ee4 branch  0x000021d3 , 0x00000030 
+ 00008657  0x00000ee5 isub  0x00000028 , 0x0000003f 
+ 00008658  0x00000ee6 branch  0x000021d4 
+ 00008659  0x00000ee8 isub  0x00000022 , 0x0000003f 
+ 00008660  0x00000eea sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00008661  0x00000eeb nrtn  0x00000002 
+ 00008662  0x00000eec force  0x00000000 , 0x0000003f 
+ 00008663  0x00000eed store  0x00000002 , 0x00000032 
+ 00008664  0x00000eee branch  0x00007fe7 
+ 00008665  0x00000ef3 copy  0x0000003f , 0x00000002 
+ 00008666  0x00000ef4 bpatch  0x00000025 , 0x00004004 
+ 00008667  0x00000ef5 storet  0x00000004 , 0x00000034 
+ 00008668  0x00000ef7 jam  0x00000001 , 0x0000455b 
+ 00008669  0x00000ef8 setarg  0x0000ffff 
+ 00008670  0x00000ef9 store  0x00000002 , 0x00000032 
+ 00008671  0x00000efa jam  0x00000001 , 0x00000073 
+ 00008672  0x00000efb rtn 
+ 00008673  0x00000eff bpatch  0x00000026 , 0x00004004 
+ 00008674  0x00000f00 call  0x000021c9 
+ 00008675  0x00000f01 nrtn  0x00000028 
+ 00008676  0x00000f02 disable  0x00000028 
+ 00008677  0x00000f03 jam  0x00000020 , 0x00000011 
+ 00008678  0x00000f04 set0  0x0000000b , 0x00000000 
+ 00008679  0x00000f06 call  0x00002a4f 
+ 00008680  0x00000f07 call  0x000022e6 
+ 00008681  0x00000f08 bmark1  0x0000000b , 0x000021f4 
+ 00008682  0x00000f09 call  0x00002455 
+ 00008683  0x00000f0a nbranch  0x000021e7 , 0x00000034 
+ 00008684  0x00000f0c bpatch  0x00000027 , 0x00004004 
+ 00008685  0x00000f0d disable  0x00000028 
+ 00008686  0x00000f0e deposit  0x00000022 
+ 00008687  0x00000f0f store  0x00000004 , 0x000040ca 
+ 00008688  0x00000f10 enable  0x00000030 
+ 00008689  0x00000f11 enable  0x00000029 
+ 00008690  0x00000f12 jam  0x0000002a , 0x00000a99 
+ 00008691  0x00000f13 branch  0x00007d86 
+ 00008692  0x00000f16 bpatch  0x00000028 , 0x00004005 
+ 00008693  0x00000f17 call  0x00002a4d 
+ 00008694  0x00000f18 arg  0x00000010 , 0x00000001 
+ 00008695  0x00000f19 call  0x000022dc 
+ 00008696  0x00000f1a disable  0x00000030 
+ 00008697  0x00000f1b disable  0x00000029 
+ 00008698  0x00000f1c call  0x00002818 
+ 00008699  0x00000f1d call  0x00002435 
+ 00008700  0x00000f1f bpatch  0x00000029 , 0x00004005 
+ 00008701  0x00000f20 call  0x0000247c 
+ 00008702  0x00000f21 branch  0x00002202 , 0x0000002d 
+ 00008703  0x00000f22 call  0x00002455 
+ 00008704  0x00000f23 nbranch  0x000021fc , 0x00000034 
+ 00008705  0x00000f24 branch  0x000021ec 
+ 00008706  0x00000f26 fetch  0x00000001 , 0x00000031 
+ 00008707  0x00000f27 set0  0x00000001 , 0x0000003f 
+ 00008708  0x00000f28 store  0x00000001 , 0x00000031 
+ 00008709  0x00000f29 call  0x00002a88 
+ 00008710  0x00000f2a call  0x00002841 
+ 00008711  0x00000f2b enable  0x00000028 
+ 00008712  0x00000f2c jam  0x0000002b , 0x00000a99 
+ 00008713  0x00000f2d branch  0x00007d86 
+ 00008714  0x00000f33 bpatch  0x0000002a , 0x00004005 
+ 00008715  0x00000f34 set1  0x00000009 , 0x00000000 
+ 00008716  0x00000f35 deposit  0x00000011 
+ 00008717  0x00000f36 store  0x00000002 , 0x0000001e 
+ 00008718  0x00000f37 force  0x00000050 , 0x00000039 
+ 00008719  0x00000f38 arg  0x0000043f , 0x00000005 
+ 00008720  0x00000f39 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008721  0x00000f3a ifetch  0x00000001 , 0x00000006 
+ 00008722  0x00000f3b copy  0x00000011 , 0x00000006 
+ 00008723  0x00000f3c bbit1  0x00000000 , 0x00007f01 
+ 00008724  0x00000f3d arg  0x00000030 , 0x00000005 
+ 00008725  0x00000f3e call  0x00007f01 
+ 00008726  0x00000f3f disable  0x0000002e 
+ 00008727  0x00000f40 fetch  0x00000001 , 0x00000077 
+ 00008728  0x00000f41 iforce  0x00000004 
+ 00008729  0x00000f42 jam  0x00000001 , 0x0000008a 
+ 00008730  0x00000f43 branch  0x0000221c , 0x00000029 
+ 00008731  0x00000f44 jam  0x00000001 , 0x0000008a 
+ 00008732  0x00000f46 fetch  0x00000001 , 0x00000030 
+ 00008733  0x00000f47 rtnbit0  0x00000001 
+ 00008734  0x00000f48 fetch  0x00000001 , 0x00000073 
+ 00008735  0x00000f49 store  0x00000001 , 0x0000008a 
+ 00008736  0x00000f4a fetch  0x00000001 , 0x00000074 
+ 00008737  0x00000f4b store  0x00000001 , 0x0000008b 
+ 00008738  0x00000f4c rtn 
+ 00008739  0x00000f4f bpatch  0x0000002b , 0x00004005 
+ 00008740  0x00000f50 fetch  0x00000002 , 0x0000001e 
+ 00008741  0x00000f51 iforce  0x00000005 
+ 00008742  0x00000f52 force  0x00000050 , 0x00000039 
+ 00008743  0x00000f53 arg  0x0000043f , 0x00000006 
+ 00008744  0x00000f54 branch  0x00007f01 , 0x00000036 
+ 00008745  0x00000f55 arg  0x00000030 , 0x00000006 
+ 00008746  0x00000f56 branch  0x00007f01 
+ 00008747  0x00000f5b arg  0x00000001 , 0x00000039 
+ 00008748  0x00000f5c fetcht  0x00000001 , 0x00000015 
+ 00008749  0x00000f5e increase  0x00000001 , 0x00000002 
+ 00008750  0x00000f5f compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008751  0x00000f60 nbranch  0x00002231 , 0x00000001 
+ 00008752  0x00000f61 arg  0x00000000 , 0x00000002 
+ 00008753  0x00000f63 storet  0x00000001 , 0x00000015 
+ 00008754  0x00000f64 mul32  0x00000002 , 0x00000050 , 0x0000003f 
+ 00008755  0x00000f65 arg  0x00004040 , 0x00000011 
+ 00008756  0x00000f66 iadd  0x00000011 , 0x00000011 
+ 00008757  0x00000f67 ifetch  0x00000001 , 0x00000011 
+ 00008758  0x00000f68 bbit1  0x00000001 , 0x00002239 
+ 00008759  0x00000f69 rtnbit1  0x00000000 
+ 00008760  0x00000f6a rtnbit1  0x00000003 
+ 00008761  0x00000f6c loop  0x0000222d 
+ 00008762  0x00000f6d rtn 
+ 00008763  0x00000f70 bpatch  0x0000002c , 0x00004005 
+ 00008764  0x00000f71 arg  0x0000226a , 0x00000013 
+ 00008765  0x00000f72 call  0x00002261 
+ 00008766  0x00000f73 nrtn  0x00000005 
+ 00008767  0x00000f74 deposit  0x00000011 
+ 00008768  0x00000f75 store  0x00000002 , 0x0000001e 
+ 00008769  0x00000f76 force  0x00000000 , 0x0000003e 
+ 00008770  0x00000f77 rtn 
+ 00008771  0x00000f7c call  0x00002725 
+ 00008772  0x00000f7d branch  0x0000224b , 0x00000001 
+ 00008773  0x00000f7e fetch  0x00000002 , 0x0000001e 
+ 00008774  0x00000f7f add  0x0000003f , 0x00000017 , 0x00000005 
+ 00008775  0x00000f80 fetch  0x00000001 , 0x00000047 
+ 00008776  0x00000f81 istore  0x00000001 , 0x00000005 
+ 00008777  0x00000f82 arg  0x000022aa , 0x00000013 
+ 00008778  0x00000f83 branch  0x00002261 
+ 00008779  0x00000f86 fetch  0x00000001 , 0x00000047 
+ 00008780  0x00000f87 isolate1  0x00000003 , 0x0000003f 
+ 00008781  0x00000f88 branch  0x00002250 , 0x00000001 
+ 00008782  0x00000f89 force  0x00000001 , 0x0000003e 
+ 00008783  0x00000f8a rtn 
+ 00008784  0x00000f8c force  0x00000000 , 0x0000003e 
+ 00008785  0x00000f8d rtn 
+ 00008786  0x00000f91 arg  0x000022a7 , 0x00000013 
+ 00008787  0x00000f92 branch  0x00002261 
+ 00008788  0x00000f95 fetcht  0x00000002 , 0x0000001e 
+ 00008789  0x00000f96 arg  0x000022cf , 0x00000013 
+ 00008790  0x00000f97 branch  0x00002261 
+ 00008791  0x00000f9c fetcht  0x00000001 , 0x000041cf 
+ 00008792  0x00000f9e arg  0x00002275 , 0x00000013 
+ 00008793  0x00000f9f branch  0x00002261 
+ 00008794  0x00000fa2 bpatch  0x0000002d , 0x00004005 
+ 00008795  0x00000fa3 fetcht  0x00000006 , 0x000041d0 
+ 00008796  0x00000fa5 arg  0x0000226e , 0x00000013 
+ 00008797  0x00000fa6 branch  0x00002261 
+ 00008798  0x00000fa9 arg  0x0000227b , 0x00000013 
+ 00008799  0x00000faa branch  0x00002261 
+ 00008800  0x00000fad arg  0x000022c6 , 0x00000013 
+ 00008801  0x00000faf bpatch  0x0000002e , 0x00004005 
+ 00008802  0x00000fb0 arg  0x00004040 , 0x00000011 
+ 00008803  0x00000fb1 arg  0x00000001 , 0x00000039 
+ 00008804  0x00000fb3 ifetch  0x00000001 , 0x00000011 
+ 00008805  0x00000fb4 copy  0x00000013 , 0x0000003d 
+ 00008806  0x00000fb6 increase  0x00000050 , 0x00000011 
+ 00008807  0x00000fb7 loop  0x00002264 
+ 00008808  0x00000fb8 force  0x00000001 , 0x0000003e 
+ 00008809  0x00000fb9 rtn 
+ 00008810  0x00000fbc bbit1  0x00000000 , 0x00002266 
+ 00008811  0x00000fbd bbit1  0x00000003 , 0x00002266 
+ 00008812  0x00000fbe force  0x00000000 , 0x0000003e 
+ 00008813  0x00000fbf rtn 
+ 00008814  0x00000fc2 bbit1  0x00000003 , 0x00002270 
+ 00008815  0x00000fc3 bbit0  0x00000000 , 0x00002266 
+ 00008816  0x00000fc5 add  0x00000011 , 0x00000010 , 0x00000006 
+ 00008817  0x00000fc6 ifetch  0x00000006 , 0x00000006 
+ 00008818  0x00000fc7 isub  0x00000002 , 0x0000003e 
+ 00008819  0x00000fc8 rtn  0x00000005 
+ 00008820  0x00000fc9 branch  0x00002266 
+ 00008821  0x00000fcc bbit0  0x00000000 , 0x00002266 
+ 00008822  0x00000fcd add  0x00000011 , 0x00000016 , 0x00000006 
+ 00008823  0x00000fce ifetch  0x00000001 , 0x00000006 
+ 00008824  0x00000fcf isub  0x00000002 , 0x0000003e 
+ 00008825  0x00000fd0 rtn  0x00000005 
+ 00008826  0x00000fd1 branch  0x00002266 
+ 00008827  0x00000fd4 bbit0  0x00000001 , 0x00002266 
+ 00008828  0x00000fd6 call  0x000022b3 
+ 00008829  0x00000fd7 call  0x00002297 
+ 00008830  0x00000fd8 isub  0x00000002 , 0x0000003f 
+ 00008831  0x00000fd9 increase  0x00000001 , 0x0000003f 
+ 00008832  0x00000fda branch  0x00002291 , 0x00000002 
+ 00008833  0x00000fdb copy  0x00000006 , 0x00000012 
+ 00008834  0x00000fdc store  0x00000009 , 0x00000aa2 
+ 00008835  0x00000fdd fetch  0x00000001 , 0x000044c0 
+ 00008836  0x00000fde nbranch  0x00002289 , 0x00000034 
+ 00008837  0x00000fdf fetch  0x00000009 , 0x00000aa2 
+ 00008838  0x00000fe0 copy  0x00000012 , 0x00000006 
+ 00008839  0x00000fe1 increase  0x00000005 , 0x0000003f 
+ 00008840  0x00000fe2 branch  0x0000228c 
+ 00008841  0x00000fe4 fetch  0x00000009 , 0x00000aa2 
+ 00008842  0x00000fe5 copy  0x00000012 , 0x00000006 
+ 00008843  0x00000fe6 increase  0x00000014 , 0x0000003f 
+ 00008844  0x00000fe8 nbranch  0x00002266 , 0x00000002 
+ 00008845  0x00000fea copy  0x00000002 , 0x00000021 
+ 00008846  0x00000feb call  0x000022bf 
+ 00008847  0x00000fec force  0x00000000 , 0x0000003e 
+ 00008848  0x00000fed rtn 
+ 00008849  0x00000ff1 iforce  0x00000012 
+ 00008850  0x00000ff2 add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008851  0x00000ff3 ifetch  0x00000002 , 0x00000006 
+ 00008852  0x00000ff4 branch  0x0000228d , 0x00000034 
+ 00008853  0x00000ff5 call  0x000022bf 
+ 00008854  0x00000ff6 branch  0x0000227c 
+ 00008855  0x00000ff9 rshift16  0x0000003f , 0x0000000b 
+ 00008856  0x00000ffa rshift8  0x0000000b , 0x0000000b 
+ 00008857  0x00000ffb branch  0x000022a1 , 0x00000005 
+ 00008858  0x00000ffc compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008859  0x00000ffd nrtn  0x00000001 
+ 00008860  0x00000ffe rshift16  0x00000002 , 0x0000000b 
+ 00008861  0x00000fff rshift8  0x0000000b , 0x0000000b 
+ 00008862  0x00001000 nrtn  0x00000005 
+ 00008863  0x00001001 set1  0x0000001c , 0x00000002 
+ 00008864  0x00001002 rtn 
+ 00008865  0x00001004 rshift16  0x00000002 , 0x0000000b 
+ 00008866  0x00001005 rshift8  0x0000000b , 0x0000000b 
+ 00008867  0x00001006 compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008868  0x00001007 nrtn  0x00000001 
+ 00008869  0x00001008 set1  0x0000001c , 0x0000003f 
+ 00008870  0x00001009 rtn 
+ 00008871  0x0000100c bbit0  0x00000000 , 0x00002266 
+ 00008872  0x0000100d force  0x00000000 , 0x0000003e 
+ 00008873  0x0000100e rtn 
+ 00008874  0x00001011 bbit0  0x00000000 , 0x00002266 
+ 00008875  0x00001012 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008876  0x00001013 ifetch  0x00000001 , 0x00000006 
+ 00008877  0x00001014 bbit1  0x00000000 , 0x00002266 
+ 00008878  0x00001015 add  0x00000011 , 0x00000017 , 0x00000006 
+ 00008879  0x00001016 ifetch  0x00000001 , 0x00000006 
+ 00008880  0x00001017 bbit0  0x00000003 , 0x00002266 
+ 00008881  0x00001018 force  0x00000000 , 0x0000003e 
+ 00008882  0x00001019 rtn 
+ 00008883  0x0000101c add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008884  0x0000101d ifetcht  0x00000001 , 0x00000006 
+ 00008885  0x0000101e deposit  0x00000022 
+ 00008886  0x0000101f isolate1  0x00000001 , 0x00000002 
+ 00008887  0x00001020 add  0x00000011 , 0x00000004 , 0x00000006 
+ 00008888  0x00001021 ifetcht  0x00000004 , 0x00000006 
+ 00008889  0x00001022 rtn  0x00000001 
+ 00008890  0x00001023 add  0x00000011 , 0x00000008 , 0x00000006 
+ 00008891  0x00001024 ifetch  0x00000006 , 0x00000006 
+ 00008892  0x00001025 call  0x00002854 
+ 00008893  0x00001026 deposit  0x00000028 
+ 00008894  0x00001027 rtn 
+ 00008895  0x0000102a add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008896  0x0000102b add  0x00000011 , 0x00000004 , 0x00000005 
+ 00008897  0x0000102c ifetch  0x00000002 , 0x00000006 
+ 00008898  0x0000102d iadd  0x00000002 , 0x0000000b 
+ 00008899  0x0000102e deposit  0x0000000b 
+ 00008900  0x0000102f istore  0x00000004 , 0x00000005 
+ 00008901  0x00001030 branch  0x00005449 
+ 00008902  0x00001034 bbit0  0x00000001 , 0x00002266 
+ 00008903  0x00001035 call  0x000022b3 
+ 00008904  0x00001036 iadd  0x0000001b , 0x0000003f 
+ 00008905  0x00001037 iadd  0x0000001b , 0x0000003f 
+ 00008906  0x00001038 iadd  0x00000007 , 0x0000003f 
+ 00008907  0x00001039 isub  0x00000002 , 0x0000003e 
+ 00008908  0x0000103a nbranch  0x00002266 , 0x00000002 
+ 00008909  0x0000103b force  0x00000000 , 0x0000003e 
+ 00008910  0x0000103c rtn 
+ 00008911  0x0000103f bbit0  0x00000000 , 0x00002266 
+ 00008912  0x00001040 deposit  0x00000002 
+ 00008913  0x00001041 isub  0x00000011 , 0x0000003e 
+ 00008914  0x00001042 branch  0x00002266 , 0x0000003e 
+ 00008915  0x00001043 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008916  0x00001044 ifetch  0x00000001 , 0x00000006 
+ 00008917  0x00001045 bbit1  0x00000000 , 0x00002266 
+ 00008918  0x00001046 ifetch  0x00000001 , 0x00000011 
+ 00008919  0x00001047 set0  0x00000007 , 0x0000003f 
+ 00008920  0x00001048 istore  0x00000001 , 0x00000011 
+ 00008921  0x00001049 branch  0x00002266 
+ 00008922  0x0000104d bpatch  0x0000002f , 0x00004005 
+ 00008923  0x0000104e call  0x00002a4f 
+ 00008924  0x00001050 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008925  0x00001051 call  0x000028e2 
+ 00008926  0x00001052 force  0x00000003 , 0x00000024 
+ 00008927  0x00001053 call  0x000028d2 
+ 00008928  0x00001054 call  0x00002a51 
+ 00008929  0x00001055 call  0x00002a56 
+ 00008930  0x00001056 call  0x00002a64 
+ 00008931  0x00001057 branch  0x00002762 
+ 00008932  0x0000105a bpatch  0x00000030 , 0x00004006 
+ 00008933  0x0000105b call  0x00002a4d 
+ 00008934  0x0000105d add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008935  0x0000105e call  0x000028e2 
+ 00008936  0x0000105f force  0x00000003 , 0x00000024 
+ 00008937  0x00001060 call  0x000028cc 
+ 00008938  0x00001061 call  0x0000242a 
+ 00008939  0x00001062 call  0x000029f1 
+ 00008940  0x00001063 call  0x00002a5b 
+ 00008941  0x00001064 call  0x000029eb 
+ 00008942  0x00001066 call  0x00002a0d 
+ 00008943  0x00001067 nrtn  0x00000018 
+ 00008944  0x00001068 call  0x000029bb 
+ 00008945  0x00001069 branch  0x0000251c 
+ 00008946  0x0000106e bpatch  0x00000031 , 0x00004006 
+ 00008947  0x0000106f fetch  0x00000001 , 0x00000181 
+ 00008948  0x00001070 iforce  0x00000004 
+ 00008949  0x00001071 force  0x00000001 , 0x00000001 
+ 00008950  0x00001072 call  0x000022da 
+ 00008951  0x00001073 branch  0x000022e4 
+ 00008952  0x0000107f fetch  0x00000001 , 0x00004093 
+ 00008953  0x00001080 rtnbit0  0x00000000 
+ 00008954  0x00001081 force  0x00000004 , 0x00000007 
+ 00008955  0x00001082 call  0x00007f16 
+ 00008956  0x00001083 nrtn  0x00000034 
+ 00008957  0x00001084 fetcht  0x00000002 , 0x000040ad 
+ 00008958  0x00001085 force  0x00000004 , 0x00000007 
+ 00008959  0x00001086 call  0x0000271c 
+ 00008960  0x00001087 rtn  0x00000028 
+ 00008961  0x00001088 call  0x00002308 
+ 00008962  0x00001089 force  0x00000004 , 0x00000007 
+ 00008963  0x0000108a fetch  0x00000002 , 0x000040af 
+ 00008964  0x0000108b nbranch  0x00007f08 , 0x00000018 
+ 00008965  0x0000108c random  0x0000003f 
+ 00008966  0x0000108d iand  0x00000035 , 0x0000003f 
+ 00008967  0x0000108e branch  0x00007f08 
+ 00008968  0x00001092 bpatch  0x00000032 , 0x00004006 
+ 00008969  0x00001093 jam  0x00000000 , 0x00000181 
+ 00008970  0x00001094 disable  0x00000030 
+ 00008971  0x00001095 disable  0x0000002e 
+ 00008972  0x00001096 call  0x000028a4 
+ 00008973  0x00001097 and  0x00000022 , 0x000001fc , 0x00000021 
+ 00008974  0x00001098 force  0x00000001 , 0x00000024 
+ 00008975  0x00001099 call  0x000028d8 
+ 00008976  0x0000109a call  0x000028cc 
+ 00008977  0x0000109b setflip  0x0000001d , 0x00000000 
+ 00008978  0x0000109c fetch  0x00000001 , 0x00000006 
+ 00008979  0x0000109d increase  0x00000001 , 0x0000003f 
+ 00008980  0x0000109e store  0x00000001 , 0x00000006 
+ 00008981  0x0000109f call  0x000028f2 
+ 00008982  0x000010a0 call  0x000029eb 
+ 00008983  0x000010a1 call  0x00002a14 
+ 00008984  0x000010a2 nrtn  0x00000018 
+ 00008985  0x000010a3 bpatch  0x00000033 , 0x00004006 
+ 00008986  0x000010a4 force  0x00000000 , 0x0000001b 
+ 00008987  0x000010a5 call  0x000028f9 
+ 00008988  0x000010a6 fetch  0x00000001 , 0x00000007 
+ 00008989  0x000010a7 increase  0x00000001 , 0x0000003f 
+ 00008990  0x000010a8 store  0x00000001 , 0x00000007 
+ 00008991  0x000010a9 call  0x000028d8 
+ 00008992  0x000010aa call  0x00002a4d 
+ 00008993  0x000010ab or_into  0x00000002 , 0x00000021 
+ 00008994  0x000010ac force  0x00000001 , 0x00000024 
+ 00008995  0x000010ad call  0x000028d2 
+ 00008996  0x000010ae call  0x000028f2 
+ 00008997  0x000010af call  0x00002a51 
+ 00008998  0x000010b0 call  0x00002a5f 
+ 00008999  0x000010b1 deposit  0x00000022 
+ 00009000  0x000010b2 store  0x00000004 , 0x00000161 
+ 00009001  0x000010b3 call  0x00002a64 
+ 00009002  0x000010b4 force  0x00000002 , 0x00000001 
+ 00009003  0x000010b5 force  0x00000000 , 0x00000004 
+ 00009004  0x000010b6 call  0x00002a6b 
+ 00009005  0x000010b7 call  0x00002766 
+ 00009006  0x000010b8 call  0x00002332 
+ 00009007  0x000010b9 and_into  0x000001fd , 0x00000021 
+ 00009008  0x000010ba increase  0x00000001 , 0x00000026 
+ 00009009  0x000010bb rtn 
+ 00009010  0x000010be bpatch  0x00000034 , 0x00004006 
+ 00009011  0x000010bf fetch  0x00000001 , 0x000040d1 
+ 00009012  0x000010c0 rtn  0x00000034 
+ 00009013  0x000010c1 arg  0x0000018e , 0x00000005 
+ 00009014  0x000010c2 fetch  0x00000001 , 0x00004515 
+ 00009015  0x000010c3 copy  0x0000003f , 0x00000039 
+ 00009016  0x000010c4 increase  0x00000001 , 0x0000003f 
+ 00009017  0x000010c5 istore  0x00000001 , 0x00000005 
+ 00009018  0x000010c6 copy  0x00000005 , 0x00000002 
+ 00009019  0x000010c7 increase  0x00000001 , 0x0000003f 
+ 00009020  0x000010c8 store  0x00000002 , 0x000041dc 
+ 00009021  0x000010c9 copy  0x00000002 , 0x00000005 
+ 00009022  0x000010ca setarg  0x00000009 
+ 00009023  0x000010cb istore  0x00000001 , 0x00000005 
+ 00009024  0x000010cc arg  0x00004516 , 0x00000006 
+ 00009025  0x000010cd call  0x00007f01 
+ 00009026  0x000010cf arg  0x0000458d , 0x00000013 
+ 00009027  0x000010d0 arg  0x00000004 , 0x00000039 
+ 00009028  0x000010d1 call  0x00002354 
+ 00009029  0x000010d2 arg  0x00004577 , 0x00000013 
+ 00009030  0x000010d3 arg  0x00000001 , 0x00000039 
+ 00009031  0x000010d4 call  0x00002354 
+ 00009032  0x000010d6 force  0x0000000a , 0x00000001 
+ 00009033  0x000010d7 jam  0x00000002 , 0x000041db 
+ 00009034  0x000010d8 setarg  0x0000018e 
+ 00009035  0x000010d9 store  0x00000002 , 0x0000016f 
+ 00009036  0x000010da call  0x00002a4d 
+ 00009037  0x000010db call  0x000028d2 
+ 00009038  0x000010dc call  0x00002a51 
+ 00009039  0x000010dd call  0x00002a5f 
+ 00009040  0x000010de call  0x00002a64 
+ 00009041  0x000010df call  0x00002a6b 
+ 00009042  0x000010e0 call  0x00002766 
+ 00009043  0x000010e1 rtn 
+ 00009044  0x000010e5 copy  0x00000005 , 0x00000002 
+ 00009045  0x000010e6 copy  0x00000013 , 0x00000006 
+ 00009046  0x000010e7 ifetch  0x00000001 , 0x00000006 
+ 00009047  0x000010e8 rtn  0x00000034 
+ 00009048  0x000010ea lshift  0x0000003f , 0x0000003f 
+ 00009049  0x000010eb loop  0x00002358 
+ 00009050  0x000010ec copy  0x0000003f , 0x00000011 
+ 00009051  0x000010ed increase  0x00000002 , 0x0000003f 
+ 00009052  0x000010ee copy  0x0000003f , 0x00000007 
+ 00009053  0x000010ef fetch  0x00000002 , 0x000041dc 
+ 00009054  0x000010f0 iadd  0x00000007 , 0x0000003f 
+ 00009055  0x000010f1 store  0x00000002 , 0x000041dc 
+ 00009056  0x000010f2 copy  0x00000002 , 0x00000005 
+ 00009057  0x000010f3 copy  0x00000011 , 0x0000003f 
+ 00009058  0x000010f4 increase  0x00000001 , 0x0000003f 
+ 00009059  0x000010f5 istore  0x00000001 , 0x00000005 
+ 00009060  0x000010f6 copy  0x00000013 , 0x00000006 
+ 00009061  0x000010f7 ifetch  0x00000001 , 0x00000006 
+ 00009062  0x000010f8 ifetch  0x00000001 , 0x00000006 
+ 00009063  0x000010f9 istore  0x00000001 , 0x00000005 
+ 00009064  0x000010fa copy  0x00000011 , 0x00000039 
+ 00009065  0x000010fb branch  0x00007f01 
+ 00009066  0x00001102 fetch  0x00000001 , 0x00004093 
+ 00009067  0x00001103 rtnbit0  0x00000001 
+ 00009068  0x00001104 force  0x00000005 , 0x00000007 
+ 00009069  0x00001105 call  0x00007f16 
+ 00009070  0x00001106 nrtn  0x00000034 
+ 00009071  0x00001107 fetcht  0x00000002 , 0x000040b1 
+ 00009072  0x00001108 force  0x00000028 , 0x00000007 
+ 00009073  0x00001109 call  0x0000271c 
+ 00009074  0x0000110a rtn  0x00000028 
+ 00009075  0x0000110b force  0x00000000 , 0x00000004 
+ 00009076  0x0000110c jam  0x00000008 , 0x00000010 
+ 00009077  0x0000110d set0  0x0000000b , 0x00000000 
+ 00009078  0x0000110e call  0x0000237a 
+ 00009079  0x0000110f force  0x00000005 , 0x00000007 
+ 00009080  0x00001110 fetch  0x00000002 , 0x000040b3 
+ 00009081  0x00001111 branch  0x00007f08 
+ 00009082  0x00001115 bpatch  0x00000035 , 0x00004006 
+ 00009083  0x00001116 disable  0x00000030 
+ 00009084  0x00001117 call  0x000028a4 
+ 00009085  0x00001118 fetch  0x00000001 , 0x00000008 
+ 00009086  0x00001119 increase  0x00000001 , 0x0000003f 
+ 00009087  0x0000111a store  0x00000001 , 0x00000008 
+ 00009088  0x0000111b force  0x00000000 , 0x00000026 
+ 00009089  0x0000111c call  0x000028e2 
+ 00009090  0x0000111d add  0x00000022 , 0x00000001 , 0x00000021 
+ 00009091  0x0000111e force  0x00000002 , 0x00000024 
+ 00009092  0x0000111f bpatch  0x00000036 , 0x00004006 
+ 00009093  0x00001120 call  0x000028cc 
+ 00009094  0x00001121 call  0x000029eb 
+ 00009095  0x00001122 call  0x00002a14 
+ 00009096  0x00001123 nrtn  0x00000018 
+ 00009097  0x00001124 call  0x000028f9 
+ 00009098  0x00001125 fetch  0x00000001 , 0x00000009 
+ 00009099  0x00001126 increase  0x00000001 , 0x0000003f 
+ 00009100  0x00001127 store  0x00000001 , 0x00000009 
+ 00009101  0x00001128 force  0x00000000 , 0x0000001b 
+ 00009102  0x00001129 call  0x00002a4d 
+ 00009103  0x0000112a or_into  0x00000002 , 0x00000021 
+ 00009104  0x0000112b force  0x00000001 , 0x00000024 
+ 00009105  0x0000112c call  0x000028d2 
+ 00009106  0x0000112d call  0x00002a51 
+ 00009107  0x0000112e call  0x00002a5f 
+ 00009108  0x0000112f call  0x00002a64 
+ 00009109  0x00001130 call  0x0000264d 
+ 00009110  0x00001131 force  0x00000000 , 0x00000004 
+ 00009111  0x00001132 arg  0x00000600 , 0x0000000b 
+ 00009112  0x00001133 until  0x00000029 , 0x00000026 
+ 00009113  0x00001134 or_into  0x00000003 , 0x00000028 
+ 00009114  0x00001135 and_into  0x000001fd , 0x00000021 
+ 00009115  0x00001137 bpatch  0x00000037 , 0x00004006 
+ 00009116  0x00001138 increase  0x00000001 , 0x00000026 
+ 00009117  0x00001139 call  0x000028cc 
+ 00009118  0x0000113a call  0x000029eb 
+ 00009119  0x0000113b call  0x00002a07 
+ 00009120  0x0000113c nbranch  0x000023a4 , 0x00000018 
+ 00009121  0x0000113d call  0x00002a6b 
+ 00009122  0x0000113e call  0x0000251e 
+ 00009123  0x0000113f bmark1  0x0000000b , 0x000023ab 
+ 00009124  0x00001141 bpatch  0x00000038 , 0x00004007 
+ 00009125  0x00001142 fetch  0x00000001 , 0x00000010 
+ 00009126  0x00001143 rtn  0x00000034 
+ 00009127  0x00001144 increase  0xffffffff , 0x0000003f 
+ 00009128  0x00001145 store  0x00000001 , 0x00000010 
+ 00009129  0x00001146 call  0x00002a4f 
+ 00009130  0x00001147 branch  0x0000239b 
+ 00009131  0x0000114b bpatch  0x00000039 , 0x00004007 
+ 00009132  0x0000114c set0  0x00000001 , 0x00000028 
+ 00009133  0x0000114d set1  0x00000000 , 0x00000028 
+ 00009134  0x0000114e fetch  0x00000001 , 0x0000000a 
+ 00009135  0x0000114f increase  0x00000001 , 0x0000003f 
+ 00009136  0x00001150 store  0x00000001 , 0x0000000a 
+ 00009137  0x00001151 call  0x00002a4d 
+ 00009138  0x00001152 or_into  0x00000002 , 0x00000021 
+ 00009139  0x00001153 call  0x000028d2 
+ 00009140  0x00001154 call  0x00002a51 
+ 00009141  0x00001155 call  0x00002a5f 
+ 00009142  0x00001156 call  0x00002a64 
+ 00009143  0x00001157 call  0x0000264d 
+ 00009144  0x00001159 compare  0x00000003 , 0x00000028 , 0x00000003 
+ 00009145  0x0000115a branch  0x000023bc , 0x00000001 
+ 00009146  0x0000115b until  0x0000003e , 0x00000017 
+ 00009147  0x0000115c branch  0x000023b8 
+ 00009148  0x0000115e fetch  0x00000004 , 0x00000165 
+ 00009149  0x0000115f or_into  0x00000003 , 0x0000003f 
+ 00009150  0x00001160 icopy  0x00000028 
+ 00009151  0x00001163 bpatch  0x0000003a , 0x00004007 
+ 00009152  0x00001164 fetch  0x00000006 , 0x00000178 
+ 00009153  0x00001165 store  0x00000006 , 0x00000040 
+ 00009154  0x00001166 call  0x00002435 
+ 00009155  0x00001168 call  0x0000247c 
+ 00009156  0x00001169 branch  0x000023c8 , 0x0000002d 
+ 00009157  0x0000116a call  0x00002455 
+ 00009158  0x0000116b nbranch  0x000023c3 , 0x00000034 
+ 00009159  0x0000116c rtn 
+ 00009160  0x00001170 bpatch  0x0000003b , 0x00004007 
+ 00009161  0x00001171 call  0x00002440 
+ 00009162  0x00001172 call  0x0000223b 
+ 00009163  0x00001173 nrtn  0x00000005 
+ 00009164  0x00001174 jam  0x00000000 , 0x00000031 
+ 00009165  0x00001175 call  0x00002841 
+ 00009166  0x00001176 branch  0x00002223 
+ 00009167  0x0000117c bpatch  0x0000003c , 0x00004007 
+ 00009168  0x0000117d call  0x00002850 
+ 00009169  0x0000117e call  0x000023f3 
+ 00009170  0x0000117f rtn  0x00000028 
+ 00009171  0x00001181 bpatch  0x0000003d , 0x00004007 
+ 00009172  0x00001182 call  0x00002c69 
+ 00009173  0x00001183 call  0x00006caa 
+ 00009174  0x00001184 call  0x00002514 
+ 00009175  0x00001185 nbranch  0x000023e2 , 0x0000002d 
+ 00009176  0x00001186 call  0x00002a88 
+ 00009177  0x00001187 call  0x00006cc2 
+ 00009178  0x00001188 call  0x00002489 
+ 00009179  0x00001189 call  0x00002757 
+ 00009180  0x0000118a call  0x00002728 
+ 00009181  0x0000118b call  0x00005d08 
+ 00009182  0x0000118c fetch  0x00000001 , 0x0000000b 
+ 00009183  0x0000118d increase  0x00000001 , 0x0000003f 
+ 00009184  0x0000118e store  0x00000001 , 0x0000000b 
+ 00009185  0x0000118f call  0x00002841 
+ 00009186  0x00001191 bpatch  0x0000003e , 0x00004007 
+ 00009187  0x00001192 call  0x00002bb1 
+ 00009188  0x00001193 call  0x00002a7f 
+ 00009189  0x00001194 branch  0x000023eb , 0x00000002 
+ 00009190  0x00001195 call  0x000021a7 
+ 00009191  0x00001196 nbranch  0x000023eb , 0x00000028 
+ 00009192  0x00001197 call  0x000026f3 
+ 00009193  0x00001198 nbranch  0x000023d3 , 0x00000034 
+ 00009194  0x00001199 rtn 
+ 00009195  0x0000119c bpatch  0x0000003f , 0x00004007 
+ 00009196  0x0000119d jam  0x00000000 , 0x00000151 
+ 00009197  0x0000119e jam  0x00000000 , 0x0000017f 
+ 00009198  0x0000119f call  0x0000245d 
+ 00009199  0x000011a0 set0  0x00000011 , 0x00000000 
+ 00009200  0x000011a1 call  0x00007fb0 
+ 00009201  0x000011a2 fetch  0x00000001 , 0x00000030 
+ 00009202  0x000011a3 rtn 
+ 00009203  0x000011a7 bpatch  0x00000040 , 0x00004008 
+ 00009204  0x000011a8 call  0x000021c9 
+ 00009205  0x000011a9 nrtn  0x00000028 
+ 00009206  0x000011aa copy  0x00000004 , 0x00000002 
+ 00009207  0x000011ab call  0x00002a6f 
+ 00009208  0x000011ac store  0x00000001 , 0x00000181 
+ 00009209  0x000011ad copy  0x00000002 , 0x00000004 
+ 00009210  0x000011ae jam  0x00000020 , 0x00000011 
+ 00009211  0x000011b0 bpatch  0x00000041 , 0x00004008 
+ 00009212  0x000011b1 call  0x00002a4f 
+ 00009213  0x000011b2 force  0x00000002 , 0x00000001 
+ 00009214  0x000011b3 call  0x0000274f 
+ 00009215  0x000011b4 deposit  0x00000022 
+ 00009216  0x000011b5 store  0x00000004 , 0x00000161 
+ 00009217  0x000011b6 call  0x00002762 
+ 00009218  0x000011b7 call  0x00002a4d 
+ 00009219  0x000011b8 enable  0x0000002f 
+ 00009220  0x000011b9 call  0x000024f6 
+ 00009221  0x000011ba branch  0x0000240d , 0x00000018 
+ 00009222  0x000011bb call  0x000028f9 
+ 00009223  0x000011bc call  0x00002455 
+ 00009224  0x000011bd nbranch  0x000023fb , 0x00000034 
+ 00009225  0x000011be rtnmark0  0x00000004 
+ 00009226  0x000011bf jam  0x00000034 , 0x0000007c 
+ 00009227  0x000011c0 set1  0x00000003 , 0x00000000 
+ 00009228  0x000011c1 rtn 
+ 00009229  0x000011c3 enable  0x00000030 
+ 00009230  0x000011c4 call  0x00002435 
+ 00009231  0x000011c5 call  0x000028a4 
+ 00009232  0x000011c7 bpatch  0x00000042 , 0x00004008 
+ 00009233  0x000011c8 call  0x000022f2 
+ 00009234  0x000011c9 branch  0x00002419 , 0x00000018 
+ 00009235  0x000011ca call  0x00002455 
+ 00009236  0x000011cb nbranch  0x00002410 , 0x00000034 
+ 00009237  0x000011cc disable  0x00000030 
+ 00009238  0x000011cd deposit  0x00000028 
+ 00009239  0x000011ce store  0x00000004 , 0x000040ca 
+ 00009240  0x000011cf rtn 
+ 00009241  0x000011d1 enable  0x00000029 
+ 00009242  0x000011d2 bmark0  0x00000004 , 0x0000241f 
+ 00009243  0x000011d3 set0  0x00000004 , 0x00000000 
+ 00009244  0x000011d4 jam  0x00000003 , 0x0000007c 
+ 00009245  0x000011d5 jam  0x00000033 , 0x0000007d 
+ 00009246  0x000011d6 call  0x000062f8 
+ 00009247  0x000011d8 deposit  0x00000004 
+ 00009248  0x000011d9 store  0x00000001 , 0x00000077 
+ 00009249  0x000011da force  0x00000000 , 0x0000003f 
+ 00009250  0x000011db store  0x00000006 , 0x00000038 
+ 00009251  0x000011dc fetch  0x00000001 , 0x00000031 
+ 00009252  0x000011dd set1  0x00000001 , 0x0000003f 
+ 00009253  0x000011de store  0x00000001 , 0x00000031 
+ 00009254  0x000011df call  0x00002a88 
+ 00009255  0x000011e0 disable  0x00000029 
+ 00009256  0x000011e1 enable  0x00000028 
+ 00009257  0x000011e2 rtn 
+ 00009258  0x000011e7 bpatch  0x00000043 , 0x00004008 
+ 00009259  0x000011e8 disable  0x0000002d 
+ 00009260  0x000011e9 set0  0x00000005 , 0x00000000 
+ 00009261  0x000011ea set0  0x0000000a , 0x00000000 
+ 00009262  0x000011eb set0  0x00000010 , 0x00000000 
+ 00009263  0x000011ec set0  0x0000000f , 0x00000000 
+ 00009264  0x000011ed fetch  0x00000001 , 0x00000047 
+ 00009265  0x000011ee set0  0x00000005 , 0x0000003f 
+ 00009266  0x000011ef set1  0x00000004 , 0x0000003f 
+ 00009267  0x000011f0 store  0x00000001 , 0x00000047 
+ 00009268  0x000011f1 rtn 
+ 00009269  0x000011f4 bpatch  0x00000044 , 0x00004008 
+ 00009270  0x000011f5 jam  0x00000020 , 0x00000011 
+ 00009271  0x000011f6 jam  0x00000050 , 0x00000047 
+ 00009272  0x000011f7 fetch  0x00000002 , 0x000040bf 
+ 00009273  0x000011f8 store  0x00000002 , 0x0000003e 
+ 00009274  0x000011f9 deposit  0x00000022 
+ 00009275  0x000011fa store  0x00000004 , 0x000040ca 
+ 00009276  0x000011fb rtn  0x00000030 
+ 00009277  0x000011fc deposit  0x00000028 
+ 00009278  0x000011fd store  0x00000004 , 0x000040ca 
+ 00009279  0x000011fe rtn 
+ 00009280  0x00001201 bpatch  0x00000045 , 0x00004008 
+ 00009281  0x00001202 call  0x00005d04 
+ 00009282  0x00001203 call  0x00002459 
+ 00009283  0x00001204 store  0x00000001 , 0x00000046 
+ 00009284  0x00001205 setarg  0x00000000 
+ 00009285  0x00001206 store  0x00000002 , 0x0000025d 
+ 00009286  0x00001207 setarg  0x00001c80 
+ 00009287  0x00001208 store  0x00000002 , 0x00000051 
+ 00009288  0x00001209 fetch  0x00000001 , 0x00000030 
+ 00009289  0x0000120a set1  0x00000000 , 0x0000003f 
+ 00009290  0x0000120b store  0x00000001 , 0x00000030 
+ 00009291  0x0000120c jam  0x00000000 , 0x0000004b 
+ 00009292  0x0000120d jam  0x00000000 , 0x0000004c 
+ 00009293  0x0000120e jam  0x00000000 , 0x000000a0 
+ 00009294  0x0000120f branch  0x00002a88 
+ 00009295  0x00001213 bpatch  0x00000046 , 0x00004008 
+ 00009296  0x00001214 force  0x00000000 , 0x0000003f 
+ 00009297  0x00001215 store  0x00000008 , 0x000041be 
+ 00009298  0x00001216 istore  0x00000008 , 0x00000005 
+ 00009299  0x00001217 call  0x000021c5 
+ 00009300  0x00001218 branch  0x00002254 
+ 00009301  0x0000121b fetch  0x00000001 , 0x00000011 
+ 00009302  0x0000121c increase  0xffffffff , 0x0000003f 
+ 00009303  0x0000121d store  0x00000001 , 0x00000011 
+ 00009304  0x0000121e rtn 
+ 00009305  0x00001221 fetch  0x00000001 , 0x000040cf 
+ 00009306  0x00001222 increase  0x00000001 , 0x0000003f 
+ 00009307  0x00001223 store  0x00000001 , 0x000040cf 
+ 00009308  0x00001224 rtn 
+ 00009309  0x00001228 bpatch  0x00000047 , 0x00004008 
+ 00009310  0x00001229 fetch  0x00000001 , 0x000041ce 
+ 00009311  0x0000122a beq  0x00000003 , 0x00002462 
+ 00009312  0x0000122b fetch  0x00000001 , 0x00000048 
+ 00009313  0x0000122c bne  0x00000001 , 0x00002466 
+ 00009314  0x0000122e call  0x00004d06 
+ 00009315  0x0000122f nbranch  0x00002466 , 0x00000005 
+ 00009316  0x00001230 call  0x000021a4 
+ 00009317  0x00001231 jam  0x00000000 , 0x000041ce 
+ 00009318  0x00001233 bpatch  0x00000048 , 0x00004009 
+ 00009319  0x00001234 call  0x000033af 
+ 00009320  0x00001235 call  0x000026e9 
+ 00009321  0x00001236 jam  0x00000002 , 0x00000a99 
+ 00009322  0x00001237 call  0x00007d86 
+ 00009323  0x00001238 call  0x00005cf7 
+ 00009324  0x00001239 call  0x00004d6b 
+ 00009325  0x0000123a call  0x0000757d 
+ 00009326  0x0000123b fetch  0x00000001 , 0x00000030 
+ 00009327  0x0000123c set0  0x00000000 
+ 00009328  0x0000123d store  0x00000001 , 0x00000030 
+ 00009329  0x0000123e jam  0x00000000 , 0x00004681 
+ 00009330  0x00001240 fetch  0x00000001 , 0x0000004c 
+ 00009331  0x00001241 compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00009332  0x00001242 branch  0x00002476 , 0x00000001 
+ 00009333  0x00001243 set0  0x00000001 , 0x00000000 
+ 00009334  0x00001245 fetch  0x00000001 , 0x00000047 
+ 00009335  0x00001246 bbit0  0x00000003 , 0x00002478 
+ 00009336  0x00001248 fetch  0x00000001 , 0x0000004b 
+ 00009337  0x00001249 rtnbit0  0x00000006 
+ 00009338  0x0000124a set0  0x00000002 , 0x00000000 
+ 00009339  0x0000124b rtn 
+ 00009340  0x0000124e bpatch  0x00000049 , 0x00004009 
+ 00009341  0x0000124f fetch  0x00000001 , 0x00000174 
+ 00009342  0x00001250 rtn  0x00000034 
+ 00009343  0x00001251 icopy  0x00000004 
+ 00009344  0x00001252 call  0x00002514 
+ 00009345  0x00001253 nrtn  0x0000002d 
+ 00009346  0x00001254 force  0x00000000 , 0x00000001 
+ 00009347  0x00001255 call  0x00002757 
+ 00009348  0x00001256 deposit  0x00000004 
+ 00009349  0x00001257 store  0x00000001 , 0x00000077 
+ 00009350  0x00001258 force  0x00000000 , 0x0000003f 
+ 00009351  0x00001259 store  0x00000001 , 0x00000174 
+ 00009352  0x0000125a rtn 
+ 00009353  0x00001261 bpatch  0x0000004a , 0x00004009 
+ 00009354  0x00001262 fetch  0x00000001 , 0x00000030 
+ 00009355  0x00001263 bbit0  0x00000002 , 0x00002496 
+ 00009356  0x00001264 force  0x00000007 , 0x00000001 
+ 00009357  0x00001265 bmark0  0x00000007 , 0x00002495 
+ 00009358  0x00001266 call  0x00002725 
+ 00009359  0x00001267 nbranch  0x00002496 , 0x00000001 
+ 00009360  0x00001268 branch  0x00002496 , 0x0000002e 
+ 00009361  0x00001269 call  0x000024c1 
+ 00009362  0x0000126a setarg  0x00000002 
+ 00009363  0x0000126b store  0x00000002 , 0x000040c8 
+ 00009364  0x0000126c rtn 
+ 00009365  0x0000126e nrtn  0x0000002e 
+ 00009366  0x00001270 bpatch  0x0000004b , 0x00004009 
+ 00009367  0x00001271 call  0x00002243 
+ 00009368  0x00001272 nbranch  0x000024a7 , 0x00000005 
+ 00009369  0x00001273 fetch  0x00000001 , 0x00000047 
+ 00009370  0x00001274 bbit0  0x00000003 , 0x000024b0 
+ 00009371  0x00001276 bmark1  0x00000005 , 0x000024b4 
+ 00009372  0x00001277 fetch  0x00000001 , 0x0000017f 
+ 00009373  0x00001278 bbit1  0x00000006 , 0x000024ba 
+ 00009374  0x00001279 fetch  0x00000002 , 0x000040c8 
+ 00009375  0x0000127a increase  0xffffffff , 0x0000003f 
+ 00009376  0x0000127b store  0x00000002 , 0x000040c8 
+ 00009377  0x0000127c branch  0x000024a5 , 0x00000034 
+ 00009378  0x0000127d fetch  0x00000001 , 0x000040c5 
+ 00009379  0x0000127e iforce  0x00000001 
+ 00009380  0x0000127f rtn 
+ 00009381  0x00001282 bpatch  0x0000004c , 0x00004009 
+ 00009382  0x00001283 call  0x00002687 
+ 00009383  0x00001285 call  0x00002725 
+ 00009384  0x00001286 branch  0x000024b0 , 0x00000001 
+ 00009385  0x00001287 call  0x0000600a 
+ 00009386  0x00001288 branch  0x000024be , 0x00000028 
+ 00009387  0x00001289 fetch  0x00000001 , 0x0000004b 
+ 00009388  0x0000128a bbit1  0x00000006 , 0x000024c0 
+ 00009389  0x0000128b bmark1  0x00000005 , 0x000024b4 
+ 00009390  0x0000128c fetch  0x00000001 , 0x0000017f 
+ 00009391  0x0000128d bbit1  0x00000006 , 0x000024ba 
+ 00009392  0x0000128f force  0x00000001 , 0x00000001 
+ 00009393  0x00001290 rtn  0x00000029 
+ 00009394  0x00001291 force  0x00000000 , 0x00000001 
+ 00009395  0x00001292 rtn 
+ 00009396  0x00001294 bpatch  0x0000004d , 0x00004009 
+ 00009397  0x00001295 fetch  0x00000001 , 0x00000019 
+ 00009398  0x00001296 iforce  0x00000001 
+ 00009399  0x00001297 rtnne  0x00000001 
+ 00009400  0x00001298 force  0x00000000 , 0x00000001 
+ 00009401  0x00001299 rtn 
+ 00009402  0x0000129b fetch  0x00000001 , 0x00000158 
+ 00009403  0x0000129c and  0x0000003f , 0x0000000f , 0x00000001 
+ 00009404  0x0000129d set1  0x00000005 , 0x00000000 
+ 00009405  0x0000129e rtn 
+ 00009406  0x000012a0 force  0x00000013 , 0x00000001 
+ 00009407  0x000012a1 branch  0x000024c1 
+ 00009408  0x000012a3 call  0x000024ca 
+ 00009409  0x000012a6 bpatch  0x0000004e , 0x00004009 
+ 00009410  0x000012a7 fetcht  0x00000001 , 0x00000047 
+ 00009411  0x000012a8 set1  0x00000003 , 0x00000002 
+ 00009412  0x000012a9 storet  0x00000001 , 0x00000047 
+ 00009413  0x000012aa deposit  0x00000001 
+ 00009414  0x000012ab store  0x00000001 , 0x000040c5 
+ 00009415  0x000012ac setarg  0x0000ffff 
+ 00009416  0x000012ad store  0x00000002 , 0x000040c8 
+ 00009417  0x000012ae rtn 
+ 00009418  0x000012b1 bpatch  0x0000004f , 0x00004009 
+ 00009419  0x000012b2 fetch  0x00000001 , 0x0000004c 
+ 00009420  0x000012b3 isolate1  0x00000005 , 0x0000003f 
+ 00009421  0x000012b4 fetch  0x00000002 , 0x000041dc 
+ 00009422  0x000012b5 branch  0x000024e0 , 0x00000001 
+ 00009423  0x000012b6 force  0x00000003 , 0x00000001 
+ 00009424  0x000012b7 sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009425  0x000012b8 rtn  0x00000002 
+ 00009426  0x000012b9 force  0x00000004 , 0x00000001 
+ 00009427  0x000012ba sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00009428  0x000012bb rtn  0x00000002 
+ 00009429  0x000012bc force  0x0000000a , 0x00000001 
+ 00009430  0x000012bd sub  0x0000003f , 0x00000079 , 0x0000003e 
+ 00009431  0x000012be rtn  0x00000002 
+ 00009432  0x000012bf force  0x0000000b , 0x00000001 
+ 00009433  0x000012c0 sub  0x0000003f , 0x000000b7 , 0x0000003e 
+ 00009434  0x000012c1 rtn  0x00000002 
+ 00009435  0x000012c2 force  0x0000000e , 0x00000001 
+ 00009436  0x000012c3 sub  0x0000003f , 0x000000e0 , 0x0000003e 
+ 00009437  0x000012c4 rtn  0x00000002 
+ 00009438  0x000012c5 force  0x0000000f , 0x00000001 
+ 00009439  0x000012c6 rtn 
+ 00009440  0x000012c8 force  0x00000003 , 0x00000001 
+ 00009441  0x000012c9 sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009442  0x000012ca rtn  0x00000002 
+ 00009443  0x000012cb force  0x00000004 , 0x00000001 
+ 00009444  0x000012cc sub  0x0000003f , 0x00000036 , 0x0000003e 
+ 00009445  0x000012cd rtn  0x00000002 
+ 00009446  0x000012ce force  0x0000000a , 0x00000001 
+ 00009447  0x000012cf arg  0x0000016f , 0x00000002 
+ 00009448  0x000012d0 isub  0x00000002 , 0x0000003e 
+ 00009449  0x000012d1 nrtn  0x00000002 
+ 00009450  0x000012d2 force  0x0000000e , 0x00000001 
+ 00009451  0x000012d3 arg  0x000002a7 , 0x00000002 
+ 00009452  0x000012d4 isub  0x00000002 , 0x0000003e 
+ 00009453  0x000012d5 nrtn  0x00000002 
+ 00009454  0x000012d6 force  0x0000000f , 0x00000001 
+ 00009455  0x000012d7 rtn 
+ 00009456  0x000012e1 fetch  0x00000001 , 0x00000030 
+ 00009457  0x000012e2 bbit0  0x00000001 , 0x000024f5 
+ 00009458  0x000012e3 fetch  0x00000002 , 0x00000032 
+ 00009459  0x000012e4 branch  0x000024f5 , 0x00000034 
+ 00009460  0x000012e5 nbranch  0x000024f7 , 0x0000002e 
+ 00009461  0x000012e7 call  0x00002a4f 
+ 00009462  0x000012e9 add  0x00000028 , 0x00000001 , 0x00000021 
+ 00009463  0x000012eb enable  0x00000010 
+ 00009464  0x000012ec fetch  0x00000002 , 0x0000003e 
+ 00009465  0x000012ed rshift  0x0000003f , 0x0000003f 
+ 00009466  0x000012ee arg  0x00000500 , 0x00000002 
+ 00009467  0x000012ef iadd  0x00000002 , 0x0000003f 
+ 00009468  0x000012f0 call  0x00002a24 
+ 00009469  0x000012f1 call  0x000028ea 
+ 00009470  0x000012f2 force  0x00000003 , 0x00000024 
+ 00009471  0x000012f3 call  0x000028cc 
+ 00009472  0x000012f4 call  0x0000242a 
+ 00009473  0x000012f5 call  0x000029f1 
+ 00009474  0x000012f6 bpatch  0x00000050 , 0x0000400a 
+ 00009475  0x000012f7 fetch  0x00000002 , 0x0000003e 
+ 00009476  0x000012f8 rshift  0x0000003f , 0x0000003f 
+ 00009477  0x000012f9 call  0x00002a24 
+ 00009478  0x000012fa call  0x000029eb 
+ 00009479  0x000012fb enable  0x0000000d 
+ 00009480  0x000012fc fetch  0x00000002 , 0x0000003e 
+ 00009481  0x000012fd arg  0x000003bb , 0x00000002 
+ 00009482  0x000012fe iadd  0x00000002 , 0x0000001b 
+ 00009483  0x000012ff correlate  0x0000003e , 0x00000003 
+ 00009484  0x00001300 copy  0x0000001a , 0x00000002 
+ 00009485  0x00001301 storet  0x00000006 , 0x0000009a 
+ 00009486  0x00001302 disable  0x0000000d 
+ 00009487  0x00001303 nrtn  0x00000018 
+ 00009488  0x00001304 arg  0x000003bb , 0x00000029 
+ 00009489  0x00001305 copy  0x00000021 , 0x00000028 
+ 00009490  0x00001306 branch  0x00002b05 , 0x0000002b 
+ 00009491  0x00001307 rtn 
+ 00009492  0x0000130b bpatch  0x00000051 , 0x0000400a 
+ 00009493  0x0000130c call  0x000024f0 
+ 00009494  0x0000130d nbranch  0x000028f9 , 0x00000018 
+ 00009495  0x0000130e call  0x000029bb 
+ 00009496  0x0000130f bmark0  0x00000011 , 0x0000251c 
+ 00009497  0x00001310 fetch  0x00000002 , 0x000000f6 
+ 00009498  0x00001311 increase  0x00000001 , 0x0000003f 
+ 00009499  0x00001312 store  0x00000002 , 0x000000f6 
+ 00009500  0x00001314 rshift  0x00000021 , 0x00000002 
+ 00009501  0x00001315 or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00009502  0x00001317 bpatch  0x00000052 , 0x0000400a 
+ 00009503  0x00001318 enable  0x00000007 
+ 00009504  0x00001319 enable  0x0000000a 
+ 00009505  0x0000131a enable  0x0000000b 
+ 00009506  0x0000131b parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009507  0x0000131c rshift8  0x0000000c , 0x0000003f 
+ 00009508  0x0000131d store  0x00000001 , 0x0000015d 
+ 00009509  0x0000131e parse  0x00000003 , 0x00000000 , 0x00000004 
+ 00009510  0x0000131f inject  0x00000000 , 0x00000007 
+ 00009511  0x00001320 copy  0x0000000c , 0x0000003f 
+ 00009512  0x00001321 store  0x00000001 , 0x00000019 
+ 00009513  0x00001322 parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009514  0x00001323 rshift8  0x0000000c , 0x0000003f 
+ 00009515  0x00001324 store  0x00000001 , 0x0000015e 
+ 00009516  0x00001325 fetch  0x00000001 , 0x00000019 
+ 00009517  0x00001326 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00009518  0x00001327 branch  0x00002533 , 0x00000002 
+ 00009519  0x00001328 beq  0x00000007 , 0x00002533 
+ 00009520  0x00001329 fetch  0x00000001 , 0x0000004c 
+ 00009521  0x0000132a isolate1  0x00000005 , 0x0000003f 
+ 00009522  0x0000132b setflag  0x00000001 , 0x00000001 , 0x00000015 
+ 00009523  0x0000132d bpatch  0x00000053 , 0x0000400a 
+ 00009524  0x0000132e parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009525  0x0000132f disable  0x0000000b 
+ 00009526  0x00001330 disable  0x0000000a 
+ 00009527  0x00001331 branch  0x00002631 , 0x00000006 
+ 00009528  0x00001332 bmark0  0x00000011 , 0x0000253c 
+ 00009529  0x00001333 fetch  0x00000002 , 0x000000f8 
+ 00009530  0x00001334 increase  0x00000001 , 0x0000003f 
+ 00009531  0x00001335 store  0x00000002 , 0x000000f8 
+ 00009532  0x00001337 bpatch  0x00000054 , 0x0000400a 
+ 00009533  0x00001338 fetch  0x00000001 , 0x0000015d 
+ 00009534  0x00001339 compare  0x00000000 , 0x0000003f , 0x00000007 
+ 00009535  0x0000133a setflag  0x00000001 , 0x0000000a , 0x00000000 
+ 00009536  0x0000133b branch  0x0000254c , 0x00000001 
+ 00009537  0x0000133c icompare  0x00000007 , 0x00000004 
+ 00009538  0x0000133d branch  0x0000254b , 0x00000001 
+ 00009539  0x0000133e bmark0  0x00000007 , 0x0000264d 
+ 00009540  0x0000133f fetcht  0x00000001 , 0x000000b0 
+ 00009541  0x00001340 icompare  0x00000007 , 0x00000002 
+ 00009542  0x00001341 nbranch  0x0000264d , 0x00000001 
+ 00009543  0x00001342 fetch  0x00000001 , 0x00000047 
+ 00009544  0x00001343 set0  0x00000005 , 0x0000003f 
+ 00009545  0x00001344 set1  0x00000004 , 0x0000003f 
+ 00009546  0x00001345 store  0x00000001 , 0x00000047 
+ 00009547  0x00001347 enable  0x0000002d 
+ 00009548  0x00001349 bpatch  0x00000055 , 0x0000400a 
+ 00009549  0x0000134a fetch  0x00000001 , 0x00000019 
+ 00009550  0x0000134b icopy  0x00000001 
+ 00009551  0x0000134c bmark1  0x0000000a , 0x0000255b 
+ 00009552  0x0000134d fetcht  0x00000001 , 0x0000015e 
+ 00009553  0x0000134e fetch  0x00000001 , 0x00000047 
+ 00009554  0x0000134f set0  0x00000000 , 0x0000003f 
+ 00009555  0x00001350 isolate1  0x00000000 , 0x00000002 
+ 00009556  0x00001351 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00009557  0x00001352 isolate1  0x00000001 , 0x00000002 
+ 00009558  0x00001353 setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00009559  0x00001354 store  0x00000001 , 0x00000047 
+ 00009560  0x00001355 isolate0  0x00000001 , 0x00000002 
+ 00009561  0x00001356 branch  0x0000255b , 0x00000001 
+ 00009562  0x00001357 call  0x00002687 
+ 00009563  0x00001359 bpatch  0x00000056 , 0x0000400a 
+ 00009564  0x0000135a arg  0x00000000 , 0x00000002 
+ 00009565  0x0000135b call  0x00002a1c 
+ 00009566  0x0000135c and  0x00000001 , 0x0000000f , 0x0000003f 
+ 00009567  0x0000135d beq  0x00000001 , 0x00002587 
+ 00009568  0x0000135e beq  0x00000000 , 0x0000264d 
+ 00009569  0x0000135f beq  0x00000002 , 0x00002659 
+ 00009570  0x00001360 fetcht  0x00000001 , 0x0000015e 
+ 00009571  0x00001361 fetch  0x00000001 , 0x00000047 
+ 00009572  0x00001362 icompare  0x00000004 , 0x00000002 
+ 00009573  0x00001363 nbranch  0x00002569 , 0x00000001 
+ 00009574  0x00001364 bmark0  0x0000000a , 0x00002568 
+ 00009575  0x00001365 bbit0  0x00000007 , 0x00002569 
+ 00009576  0x00001367 set1  0x0000000f , 0x00000000 
+ 00009577  0x00001369 bpatch  0x00000057 , 0x0000400a 
+ 00009578  0x0000136a deposit  0x00000001 
+ 00009579  0x0000136b beq  0x00000003 , 0x00002589 
+ 00009580  0x0000136c beq  0x00000004 , 0x0000258d 
+ 00009581  0x0000136d beq  0x00000007 , 0x00002578 
+ 00009582  0x0000136e beq  0x00000008 , 0x0000258c 
+ 00009583  0x0000136f arg  0x00000004 , 0x00000002 
+ 00009584  0x00001370 call  0x00002a1c 
+ 00009585  0x00001371 beq  0x0000000a , 0x00002588 
+ 00009586  0x00001372 beq  0x0000000b , 0x0000258b 
+ 00009587  0x00001373 arg  0x00000008 , 0x00000002 
+ 00009588  0x00001374 call  0x00002a1c 
+ 00009589  0x00001375 beq  0x0000000e , 0x00002588 
+ 00009590  0x00001376 beq  0x0000000f , 0x0000258b 
+ 00009591  0x00001377 rtn 
+ 00009592  0x0000137b bpatch  0x00000058 , 0x0000400b 
+ 00009593  0x0000137c enable  0x0000000d 
+ 00009594  0x0000137d enable  0x00000009 
+ 00009595  0x0000137e enable  0x0000000e 
+ 00009596  0x0000137f arg  0x000000d1 , 0x00000005 
+ 00009597  0x00001380 force  0x0000001e , 0x00000039 
+ 00009598  0x00001382 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009599  0x00001383 rshift3  0x0000000c , 0x0000003f 
+ 00009600  0x00001384 istore  0x00000001 , 0x00000005 
+ 00009601  0x00001385 loop  0x0000257e 
+ 00009602  0x00001386 bmark0  0x00000007 , 0x0000264d 
+ 00009603  0x00001387 parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009604  0x00001388 nsetflag  0x00000006 , 0x00000008 , 0x00000000 
+ 00009605  0x00001389 branch  0x0000263d , 0x00000006 
+ 00009606  0x0000138a branch  0x00002620 
+ 00009607  0x0000138e branch  0x0000264d 
+ 00009608  0x00001392 set1  0x00000010 , 0x00000000 
+ 00009609  0x00001394 enable  0x0000000c 
+ 00009610  0x00001395 branch  0x0000258e 
+ 00009611  0x00001399 set1  0x00000010 , 0x00000000 
+ 00009612  0x0000139b set1  0x00000002 , 0x00000015 
+ 00009613  0x0000139d enable  0x0000000d 
+ 00009614  0x0000139f bpatch  0x00000059 , 0x0000400b 
+ 00009615  0x000013a0 bmark1  0x00000001 , 0x0000264d 
+ 00009616  0x000013a1 isolate0  0x00000001 , 0x00000015 
+ 00009617  0x000013a2 branch  0x0000259a , 0x00000001 
+ 00009618  0x000013a3 disable  0x00000007 
+ 00009619  0x000013a4 enable  0x0000000d 
+ 00009620  0x000013a5 disable  0x0000000c 
+ 00009621  0x000013a6 add  0x00000022 , 0x00000002 , 0x0000000b 
+ 00009622  0x000013a7 correlate  0x00000022 , 0x00000026 
+ 00009623  0x000013a8 nbranch  0x0000263d , 0x00000018 
+ 00009624  0x000013a9 set1  0x00000010 , 0x00000000 
+ 00009625  0x000013aa enable  0x00000007 
+ 00009626  0x000013ac bpatch  0x0000005a , 0x0000400b 
+ 00009627  0x000013ad enable  0x0000000e 
+ 00009628  0x000013ae enable  0x00000009 
+ 00009629  0x000013af parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009630  0x000013b0 rshift8  0x0000000c , 0x0000003f 
+ 00009631  0x000013b1 store  0x00000001 , 0x00000180 
+ 00009632  0x000013b2 parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009633  0x000013b3 bmark1  0x00000010 , 0x000025a5 
+ 00009634  0x000013b4 rshift3  0x0000000c , 0x00000039 
+ 00009635  0x000013b5 rshift3  0x00000039 , 0x00000039 
+ 00009636  0x000013b6 branch  0x000025a8 
+ 00009637  0x000013b8 parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009638  0x000013b9 rshift  0x0000000c , 0x00000039 
+ 00009639  0x000013ba parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009640  0x000013bc bpatch  0x0000005b , 0x0000400b 
+ 00009641  0x000013bd deposit  0x00000039 
+ 00009642  0x000013be store  0x00000002 , 0x0000015f 
+ 00009643  0x000013bf branch  0x000025e8 , 0x00000034 
+ 00009644  0x000013c0 isub  0x00000035 , 0x0000003e 
+ 00009645  0x000013c1 branch  0x0000263d , 0x00000002 
+ 00009646  0x000013c2 bpatch  0x0000005c , 0x0000400b 
+ 00009647  0x000013c3 set0  0x00000000 , 0x00000000 
+ 00009648  0x000013c4 fetch  0x00000001 , 0x00000180 
+ 00009649  0x000013c5 and_into  0x00000003 , 0x0000003f 
+ 00009650  0x000013c6 arg  0x00000551 , 0x00000005 
+ 00009651  0x000013c7 beq  0x00000003 , 0x000025ba 
+ 00009652  0x000013c8 bmark1  0x00000011 , 0x000025e4 
+ 00009653  0x000013ca fetch  0x00000001 , 0x00000180 
+ 00009654  0x000013cb and_into  0x00000003 , 0x0000003f 
+ 00009655  0x000013cc beq  0x00000002 , 0x000025bf 
+ 00009656  0x000013cd beq  0x00000001 , 0x000025d3 
+ 00009657  0x000013ce branch  0x0000263d 
+ 00009658  0x000013d1 fetch  0x00000002 , 0x0000015f 
+ 00009659  0x000013d2 sub  0x0000003f , 0x00000070 , 0x0000003e 
+ 00009660  0x000013d3 nbranch  0x0000263d , 0x00000002 
+ 00009661  0x000013d4 bmark1  0x0000000f , 0x00002620 
+ 00009662  0x000013d5 branch  0x000025e4 
+ 00009663  0x000013d9 bpatch  0x0000005d , 0x0000400b 
+ 00009664  0x000013da bmark1  0x0000000f , 0x00002620 
+ 00009665  0x000013db fetch  0x00000002 , 0x0000015f 
+ 00009666  0x000013dc arg  0x000002e0 , 0x00000002 
+ 00009667  0x000013dd isub  0x00000002 , 0x0000003e 
+ 00009668  0x000013de branch  0x0000263d , 0x00000002 
+ 00009669  0x000013df fetch  0x00000001 , 0x00000263 
+ 00009670  0x000013e0 bbit0  0x00000000 , 0x000025c9 
+ 00009671  0x000013e1 bbit0  0x00000001 , 0x000025ce 
+ 00009672  0x000013e2 branch  0x0000264d 
+ 00009673  0x000013e4 jam  0x00000001 , 0x00000261 
+ 00009674  0x000013e5 fetch  0x00000002 , 0x0000025d 
+ 00009675  0x000013e6 bne  0x00000000 , 0x0000264d 
+ 00009676  0x000013e7 arg  0x00001000 , 0x00000005 
+ 00009677  0x000013e8 branch  0x000025e4 
+ 00009678  0x000013ea jam  0x00000002 , 0x00000261 
+ 00009679  0x000013eb fetch  0x00000002 , 0x0000025f 
+ 00009680  0x000013ec bne  0x00000000 , 0x0000264d 
+ 00009681  0x000013ed arg  0x00001400 , 0x00000005 
+ 00009682  0x000013ee branch  0x000025e4 
+ 00009683  0x000013f1 bpatch  0x0000005e , 0x0000400b 
+ 00009684  0x000013f2 bmark1  0x0000000f , 0x00002620 
+ 00009685  0x000013f3 fetch  0x00000002 , 0x0000015f 
+ 00009686  0x000013f4 arg  0x000002e0 , 0x00000002 
+ 00009687  0x000013f5 isub  0x00000002 , 0x0000003e 
+ 00009688  0x000013f6 branch  0x0000263d , 0x00000002 
+ 00009689  0x000013f7 fetch  0x00000001 , 0x00000261 
+ 00009690  0x000013f8 beq  0x00000001 , 0x000025dd 
+ 00009691  0x000013f9 beq  0x00000002 , 0x000025e1 
+ 00009692  0x000013fa branch  0x0000264d 
+ 00009693  0x000013fc arg  0x00001000 , 0x00000005 
+ 00009694  0x000013fd fetch  0x00000002 , 0x0000025d 
+ 00009695  0x000013fe iadd  0x00000005 , 0x00000005 
+ 00009696  0x000013ff branch  0x000025e4 
+ 00009697  0x00001401 arg  0x00001400 , 0x00000005 
+ 00009698  0x00001402 fetch  0x00000002 , 0x0000025f 
+ 00009699  0x00001403 iadd  0x00000005 , 0x00000005 
+ 00009700  0x00001405 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009701  0x00001406 rshift3  0x0000000c , 0x0000003f 
+ 00009702  0x00001407 istore  0x00000001 , 0x00000005 
+ 00009703  0x00001408 loop  0x000025e4 
+ 00009704  0x0000140a bpatch  0x0000005f , 0x0000400b 
+ 00009705  0x0000140b parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009706  0x0000140c branch  0x00002637 , 0x00000006 
+ 00009707  0x0000140d fetch  0x00000001 , 0x00004363 
+ 00009708  0x0000140e beq  0x00000001 , 0x0000264d 
+ 00009709  0x0000140f bmark1  0x00000011 , 0x0000260d 
+ 00009710  0x00001410 bmark1  0x0000000f , 0x0000264a 
+ 00009711  0x00001411 fetch  0x00000001 , 0x00000180 
+ 00009712  0x00001412 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009713  0x00001413 branch  0x0000260d , 0x00000001 
+ 00009714  0x00001414 fetch  0x00000002 , 0x0000015f 
+ 00009715  0x00001415 branch  0x0000260d , 0x00000034 
+ 00009716  0x00001416 bpatch  0x00000060 , 0x0000400c 
+ 00009717  0x00001417 fetch  0x00000001 , 0x00000261 
+ 00009718  0x00001418 beq  0x00000001 , 0x000025f9 
+ 00009719  0x00001419 beq  0x00000002 , 0x00002603 
+ 00009720  0x0000141a branch  0x00002a8c 
+ 00009721  0x0000141c fetch  0x00000002 , 0x0000025d 
+ 00009722  0x0000141d fetcht  0x00000002 , 0x0000015f 
+ 00009723  0x0000141e iadd  0x00000002 , 0x0000003f 
+ 00009724  0x0000141f store  0x00000002 , 0x0000025d 
+ 00009725  0x00001420 beq  0x00000000 , 0x00002a8c 
+ 00009726  0x00001421 fetcht  0x00000002 , 0x00001000 
+ 00009727  0x00001422 increase  0x00000004 , 0x00000002 
+ 00009728  0x00001423 isub  0x00000002 , 0x0000003e 
+ 00009729  0x00001424 call  0x00002747 , 0x00000005 
+ 00009730  0x00001425 branch  0x0000260d 
+ 00009731  0x00001427 fetch  0x00000002 , 0x0000025f 
+ 00009732  0x00001428 fetcht  0x00000002 , 0x0000015f 
+ 00009733  0x00001429 iadd  0x00000002 , 0x0000003f 
+ 00009734  0x0000142a store  0x00000002 , 0x0000025f 
+ 00009735  0x0000142b beq  0x00000000 , 0x00002a8c 
+ 00009736  0x0000142c fetcht  0x00000002 , 0x00001400 
+ 00009737  0x0000142d add  0x00000002 , 0x00000004 , 0x00000002 
+ 00009738  0x0000142e isub  0x00000002 , 0x0000003e 
+ 00009739  0x0000142f call  0x0000274b , 0x00000005 
+ 00009740  0x00001430 branch  0x0000260d 
+ 00009741  0x00001432 bpatch  0x00000061 , 0x0000400c 
+ 00009742  0x00001433 fetcht  0x00000001 , 0x0000004c 
+ 00009743  0x00001434 fetch  0x00000001 , 0x00000180 
+ 00009744  0x00001435 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009745  0x00001436 setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00009746  0x00001437 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00009747  0x00001438 storet  0x00000001 , 0x0000004c 
+ 00009748  0x00001439 nbranch  0x00002616 , 0x00000001 
+ 00009749  0x0000143a set1  0x00000001 , 0x00000000 
+ 00009750  0x0000143c bmark0  0x00000011 , 0x00002620 
+ 00009751  0x0000143d isolate1  0x00000006 , 0x00000002 
+ 00009752  0x0000143e branch  0x00002620 , 0x00000001 
+ 00009753  0x0000143f fetch  0x00000002 , 0x000000fa 
+ 00009754  0x00001440 increase  0x00000001 , 0x0000003f 
+ 00009755  0x00001441 store  0x00000002 , 0x000000fa 
+ 00009756  0x00001442 set1  0x00000005 , 0x00000000 
+ 00009757  0x00001443 set0  0x00000007 , 0x00000002 
+ 00009758  0x00001444 set0  0x00000001 , 0x00000000 
+ 00009759  0x00001445 storet  0x00000001 , 0x0000004c 
+ 00009760  0x00001447 bpatch  0x00000062 , 0x0000400c 
+ 00009761  0x00001448 fetcht  0x00000001 , 0x0000015e 
+ 00009762  0x00001449 fetch  0x00000001 , 0x00000047 
+ 00009763  0x0000144a set1  0x00000005 , 0x0000003f 
+ 00009764  0x0000144b isolate1  0x00000002 , 0x00000002 
+ 00009765  0x0000144c setflag  0x00000001 , 0x00000002 , 0x0000003f 
+ 00009766  0x0000144d isolate1  0x0000000a , 0x00000000 
+ 00009767  0x0000144e setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00009768  0x0000144f store  0x00000001 , 0x00000047 
+ 00009769  0x00001450 fetch  0x00000002 , 0x0000015f 
+ 00009770  0x00001451 nbranch  0x0000264d , 0x00000034 
+ 00009771  0x00001452 fetch  0x00000001 , 0x0000004c 
+ 00009772  0x00001453 set0  0x00000007 , 0x0000003f 
+ 00009773  0x00001454 store  0x00000001 , 0x0000004c 
+ 00009774  0x00001455 fetch  0x00000001 , 0x00000180 
+ 00009775  0x00001456 compare  0x00000001 , 0x0000003f , 0x00000007 
+ 00009776  0x00001458 branch  0x0000264d 
+ 00009777  0x0000145b bpatch  0x00000063 , 0x0000400c 
+ 00009778  0x0000145c disable  0x0000002d 
+ 00009779  0x0000145d fetch  0x00000002 , 0x0000001a 
+ 00009780  0x0000145e increase  0x00000001 , 0x0000003f 
+ 00009781  0x0000145f store  0x00000002 , 0x0000001a 
+ 00009782  0x00001460 branch  0x0000264d 
+ 00009783  0x00001462 fetch  0x00000002 , 0x0000001c 
+ 00009784  0x00001463 increase  0x00000001 , 0x0000003f 
+ 00009785  0x00001464 store  0x00000002 , 0x0000001c 
+ 00009786  0x00001465 call  0x0000263e 
+ 00009787  0x00001466 bmark0  0x00000011 , 0x0000263d 
+ 00009788  0x00001467 set1  0x00000005 , 0x00000000 
+ 00009789  0x00001469 branch  0x0000264d 
+ 00009790  0x0000146c bpatch  0x00000064 , 0x0000400c 
+ 00009791  0x0000146d fetch  0x00000001 , 0x00000180 
+ 00009792  0x0000146e compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009793  0x0000146f nbranch  0x00002646 , 0x00000001 
+ 00009794  0x00001471 fetcht  0x00000001 , 0x0000004c 
+ 00009795  0x00001472 set0  0x00000006 , 0x00000002 
+ 00009796  0x00001473 storet  0x00000001 , 0x0000004c 
+ 00009797  0x00001474 rtn 
+ 00009798  0x00001478 fetcht  0x00000001 , 0x0000004c 
+ 00009799  0x00001479 set0  0x00000007 , 0x00000002 
+ 00009800  0x0000147a storet  0x00000001 , 0x0000004c 
+ 00009801  0x0000147b branch  0x00004c0b 
+ 00009802  0x0000147e fetch  0x00000001 , 0x00000047 
+ 00009803  0x0000147f set1  0x00000005 , 0x0000003f 
+ 00009804  0x00001480 store  0x00000001 , 0x00000047 
+ 00009805  0x00001482 bpatch  0x00000065 , 0x0000400c 
+ 00009806  0x00001483 disable  0x0000001d 
+ 00009807  0x00001484 disable  0x0000001c 
+ 00009808  0x00001485 disable  0x0000000d 
+ 00009809  0x00001486 disable  0x0000000c 
+ 00009810  0x00001487 disable  0x00000009 
+ 00009811  0x00001488 disable  0x0000000e 
+ 00009812  0x00001489 disable  0x00000007 
+ 00009813  0x0000148a branch  0x000028f9 , 0x00000021 
+ 00009814  0x0000148b until  0x0000003e , 0x00000027 
+ 00009815  0x0000148c nop  0x00000064 
+ 00009816  0x0000148d branch  0x000028f9 
+ 00009817  0x00001490 bpatch  0x00000066 , 0x0000400c 
+ 00009818  0x00001491 enable  0x00000009 
+ 00009819  0x00001492 enable  0x0000000c 
+ 00009820  0x00001493 parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009821  0x00001494 isolate1  0x0000003a , 0x0000003f 
+ 00009822  0x00001495 setflag  0x00000001 , 0x00000000 , 0x00000000 
+ 00009823  0x00001496 copy  0x00000020 , 0x00000002 
+ 00009824  0x00001497 ialigned  0x00000020 
+ 00009825  0x00001498 ialigned  0x0000001e 
+ 00009826  0x00001499 pulse  0x00000015 
+ 00009827  0x0000149a setsect  0x00000002 , 0x000fffff 
+ 00009828  0x0000149b setsect  0x00000003 , 0x0000ffff 
+ 00009829  0x0000149c nop  0x00000020 
+ 00009830  0x0000149d iverify  0x0000000d 
+ 00009831  0x0000149e deposit  0x0000002c 
+ 00009832  0x0000149f store  0x00000003 , 0x00000178 
+ 00009833  0x000014a0 deposit  0x0000002d 
+ 00009834  0x000014a1 store  0x00000001 , 0x0000017b 
+ 00009835  0x000014a2 copy  0x00000002 , 0x00000020 
+ 00009836  0x000014a3 branch  0x0000266e , 0x00000001 
+ 00009837  0x000014a4 branch  0x0000263d 
+ 00009838  0x000014a6 bpatch  0x00000067 , 0x0000400c 
+ 00009839  0x000014a7 parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009840  0x000014a8 ialigned  0x0000001f 
+ 00009841  0x000014a9 ialigned  0x00000004 
+ 00009842  0x000014aa ialigned  0x0000002e 
+ 00009843  0x000014ab ialigned  0x00000012 
+ 00009844  0x000014ac force  0x00000000 , 0x0000003f 
+ 00009845  0x000014ad parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009846  0x000014ae branch  0x0000263d , 0x00000006 
+ 00009847  0x000014af setarg  0x0ffffffc 
+ 00009848  0x000014b0 iand  0x00000012 , 0x0000003f 
+ 00009849  0x000014b1 store  0x00000004 , 0x00000165 
+ 00009850  0x000014b2 deposit  0x0000001d 
+ 00009851  0x000014b3 store  0x00000003 , 0x00000175 
+ 00009852  0x000014b4 deposit  0x0000001c 
+ 00009853  0x000014b5 store  0x00000001 , 0x00000173 
+ 00009854  0x000014b6 deposit  0x00000004 
+ 00009855  0x000014b7 store  0x00000001 , 0x00000174 
+ 00009856  0x000014b8 deposit  0x0000002e 
+ 00009857  0x000014b9 store  0x00000002 , 0x0000017c 
+ 00009858  0x000014ba deposit  0x00000021 
+ 00009859  0x000014bb inject  0x00000001 , 0x00000020 
+ 00009860  0x000014bc compare  0x00000002 , 0x00000001 , 0x0000000f 
+ 00009861  0x000014bd setflag  0x00000001 , 0x0000000b , 0x00000000 
+ 00009862  0x000014be branch  0x0000264d 
+ 00009863  0x000014c1 bpatch  0x00000068 , 0x0000400d 
+ 00009864  0x000014c2 fetch  0x00000001 , 0x00000047 
+ 00009865  0x000014c3 rtnbit0  0x00000003 
+ 00009866  0x000014c4 set0  0x00000003 , 0x0000003f 
+ 00009867  0x000014c5 setflip  0x00000006 , 0x0000003f 
+ 00009868  0x000014c6 store  0x00000001 , 0x00000047 
+ 00009869  0x000014c7 fetch  0x00000001 , 0x000040c5 
+ 00009870  0x000014c8 beq  0x00000013 , 0x0000269c 
+ 00009871  0x000014c9 rtneq  0x00000007 
+ 00009872  0x000014ca fetch  0x00000001 , 0x0000004b 
+ 00009873  0x000014cb rtnbit0  0x00000006 , 0x0000003f 
+ 00009874  0x000014cc set0  0x00000006 , 0x0000003f 
+ 00009875  0x000014cd set1  0x00000007 , 0x0000003f 
+ 00009876  0x000014ce store  0x00000001 , 0x0000004b 
+ 00009877  0x000014cf set0  0x00000002 , 0x00000000 
+ 00009878  0x000014d0 fetch  0x00000002 , 0x00004246 
+ 00009879  0x000014d1 nrtn  0x00000034 
+ 00009880  0x000014d2 fetch  0x00000001 , 0x0000004b 
+ 00009881  0x000014d3 set0  0x00000007 , 0x0000003f 
+ 00009882  0x000014d4 store  0x00000001 , 0x0000004b 
+ 00009883  0x000014d5 branch  0x0000525d 
+ 00009884  0x000014d8 bpatch  0x00000069 , 0x0000400d 
+ 00009885  0x000014d9 fetch  0x00000001 , 0x000004b7 
+ 00009886  0x000014da rshift  0x0000003f , 0x0000003f 
+ 00009887  0x000014db beq  0x00000011 , 0x000026b8 
+ 00009888  0x000014dc beq  0x00000012 , 0x000026c0 
+ 00009889  0x000014dd beq  0x00000018 , 0x000026e9 
+ 00009890  0x000014de beq  0x0000007f , 0x000026a8 
+ 00009891  0x000014df rtnne  0x00000003 
+ 00009892  0x000014e0 fetch  0x00000001 , 0x000004b8 
+ 00009893  0x000014e1 beq  0x0000002b , 0x000026b0 
+ 00009894  0x000014e2 beq  0x00000011 , 0x000026ab 
+ 00009895  0x000014e3 rtn 
+ 00009896  0x000014e6 fetch  0x00000001 , 0x000004b8 
+ 00009897  0x000014e7 set1  0x00000007 , 0x0000003f 
+ 00009898  0x000014e8 rtn 
+ 00009899  0x000014ea rtn  0x00000029 
+ 00009900  0x000014eb fetch  0x00000001 , 0x00000030 
+ 00009901  0x000014ec rtnbit1  0x00000004 
+ 00009902  0x000014ed jam  0x00000031 , 0x0000007c 
+ 00009903  0x000014ee rtn 
+ 00009904  0x000014f2 rtn  0x00000029 
+ 00009905  0x000014f3 fetch  0x00000001 , 0x00000031 
+ 00009906  0x000014f4 isolate1  0x00000004 , 0x0000003f 
+ 00009907  0x000014f5 branch  0x000026b5 , 0x00000001 
+ 00009908  0x000014f7 rtn 
+ 00009909  0x000014f9 set0  0x00000004 , 0x0000003f 
+ 00009910  0x000014fa store  0x00000001 , 0x00000031 
+ 00009911  0x000014fb rtn 
+ 00009912  0x000014fe bpatch  0x0000006a , 0x0000400d 
+ 00009913  0x000014ff fetch  0x00000001 , 0x0000004c 
+ 00009914  0x00001500 set1  0x00000002 , 0x0000003f 
+ 00009915  0x00001501 store  0x00000001 , 0x0000004c 
+ 00009916  0x00001502 jam  0x00000001 , 0x00008011 
+ 00009917  0x00001503 fetch  0x00000001 , 0x00000030 
+ 00009918  0x00001504 isolate1  0x00000004 , 0x0000003f 
+ 00009919  0x00001505 rtn 
+ 00009920  0x00001508 bpatch  0x0000006b , 0x0000400d 
+ 00009921  0x00001509 fetch  0x00000001 , 0x0000004c 
+ 00009922  0x0000150a set0  0x00000002 , 0x0000003f 
+ 00009923  0x0000150b store  0x00000001 , 0x0000004c 
+ 00009924  0x0000150c jam  0x00000000 , 0x00008011 
+ 00009925  0x0000150d rtn 
+ 00009926  0x00001511 bpatch  0x0000006c , 0x0000400d 
+ 00009927  0x00001512 copy  0x00000022 , 0x0000003f 
+ 00009928  0x00001513 store  0x00000004 , 0x0000420c 
+ 00009929  0x00001514 add  0x00000022 , 0x00000003 , 0x00000011 
+ 00009930  0x00001515 branch  0x000026cc , 0x00000029 
+ 00009931  0x00001516 add  0x00000028 , 0x00000003 , 0x00000011 
+ 00009932  0x00001518 fetcht  0x00000002 , 0x00000032 
+ 00009933  0x00001519 deposit  0x00000011 
+ 00009934  0x0000151a set0  0x0000001b , 0x0000003f 
+ 00009935  0x0000151b idiv  0x00000002 
+ 00009936  0x0000151c fetch  0x00000002 , 0x00000075 
+ 00009937  0x0000151d call  0x00007f86 
+ 00009938  0x0000151e remainder  0x00000013 
+ 00009939  0x0000151f isub  0x00000013 , 0x0000003f 
+ 00009940  0x00001520 branch  0x000026d6 , 0x00000002 
+ 00009941  0x00001521 iadd  0x00000002 , 0x0000003f 
+ 00009942  0x00001523 iadd  0x00000011 , 0x0000003f 
+ 00009943  0x00001524 store  0x00000004 , 0x00000034 
+ 00009944  0x00001525 jam  0x00000000 , 0x0000455b 
+ 00009945  0x00001526 fetch  0x00000001 , 0x00000030 
+ 00009946  0x00001527 set1  0x00000001 , 0x0000003f 
+ 00009947  0x00001528 store  0x00000001 , 0x00000030 
+ 00009948  0x00001529 fetch  0x00000001 , 0x00000073 
+ 00009949  0x0000152a store  0x00000001 , 0x0000008a 
+ 00009950  0x0000152b setarg  0x00000000 
+ 00009951  0x0000152c store  0x00000003 , 0x00004169 
+ 00009952  0x0000152d store  0x00000003 , 0x0000416c 
+ 00009953  0x0000152e store  0x00000001 , 0x00004159 
+ 00009954  0x0000152f jam  0x0000000b , 0x00000a99 
+ 00009955  0x00001530 call  0x00007d86 
+ 00009956  0x00001531 fetch  0x00000002 , 0x000040c1 
+ 00009957  0x00001532 store  0x00000002 , 0x0000003e 
+ 00009958  0x00001533 nrtn  0x00000029 
+ 00009959  0x00001534 add  0x00000004 , 0xffffffff , 0x00000007 
+ 00009960  0x00001535 rtn 
+ 00009961  0x00001538 bpatch  0x0000006d , 0x0000400d 
+ 00009962  0x00001539 fetch  0x00000001 , 0x00000030 
+ 00009963  0x0000153a rtnbit0  0x00000001 
+ 00009964  0x0000153b set0  0x00000001 , 0x0000003f 
+ 00009965  0x0000153c store  0x00000001 , 0x00000030 
+ 00009966  0x0000153d fetch  0x00000002 , 0x000040bf 
+ 00009967  0x0000153e store  0x00000002 , 0x0000003e 
+ 00009968  0x0000153f disable  0x0000002b 
+ 00009969  0x00001540 jam  0x0000000c , 0x00000a99 
+ 00009970  0x00001541 branch  0x00007d86 
+ 00009971  0x00001545 bpatch  0x0000006e , 0x0000400d 
+ 00009972  0x00001546 enable  0x0000002e 
+ 00009973  0x00001547 fetch  0x00000001 , 0x00000030 
+ 00009974  0x00001548 bbit1  0x00000001 , 0x00002700 
+ 00009975  0x00001549 rtnmark1  0x00000011 
+ 00009976  0x0000154a fetch  0x00000001 , 0x00000047 
+ 00009977  0x0000154b rtnbit1  0x00000003 
+ 00009978  0x0000154c fetch  0x00000001 , 0x00000048 
+ 00009979  0x0000154d nrtn  0x00000034 
+ 00009980  0x0000154e fetch  0x00000001 , 0x0000004b 
+ 00009981  0x0000154f rtnbit1  0x00000006 
+ 00009982  0x00001551 force  0x00000000 , 0x0000003f 
+ 00009983  0x00001552 rtn 
+ 00009984  0x00001555 bbit0  0x00000002 , 0x0000270f 
+ 00009985  0x00001556 fetch  0x00000001 , 0x0000008a 
+ 00009986  0x00001557 beq  0x00000002 , 0x00002706 
+ 00009987  0x00001558 fetch  0x00000001 , 0x00000047 
+ 00009988  0x00001559 bbit1  0x00000003 , 0x00002718 
+ 00009989  0x0000155a bmark0  0x00000008 , 0x00002718 
+ 00009990  0x0000155c nbranch  0x00002718 , 0x00000029 
+ 00009991  0x0000155d fetch  0x00000001 , 0x00000048 
+ 00009992  0x0000155e nbranch  0x00002718 , 0x00000034 
+ 00009993  0x00001560 fetch  0x00000001 , 0x000000ef 
+ 00009994  0x00001561 increase  0xffffffff , 0x0000003f 
+ 00009995  0x00001562 store  0x00000001 , 0x000000ef 
+ 00009996  0x00001563 nbranch  0x000026fe , 0x00000034 
+ 00009997  0x00001564 jam  0x00000010 , 0x000000ef 
+ 00009998  0x00001565 branch  0x00002718 
+ 00009999  0x0000156d fetch  0x00000001 , 0x0000008a 
+ 00010000  0x0000156e bne  0x00000001 , 0x00002718 
+ 00010001  0x0000156f fetch  0x00000001 , 0x0000008b 
+ 00010002  0x00001570 branch  0x00002718 , 0x00000034 
+ 00010003  0x00001571 increase  0xffffffff , 0x0000003f 
+ 00010004  0x00001572 store  0x00000001 , 0x0000008b 
+ 00010005  0x00001573 fetch  0x00000001 , 0x00000047 
+ 00010006  0x00001574 rtnbit1  0x00000003 
+ 00010007  0x00001575 nrtn  0x0000002d 
+ 00010008  0x00001577 fetch  0x00000001 , 0x0000008a 
+ 00010009  0x00001578 increase  0xffffffff , 0x0000003f 
+ 00010010  0x00001579 store  0x00000001 , 0x0000008a 
+ 00010011  0x0000157a rtn 
+ 00010012  0x00001586 bpatch  0x0000006f , 0x0000400d 
+ 00010013  0x00001587 disable  0x00000010 
+ 00010014  0x00001588 copy  0x00000002 , 0x0000001b 
+ 00010015  0x00001589 call  0x00002260 
+ 00010016  0x0000158a disable  0x00000028 
+ 00010017  0x0000158b nrtn  0x00000005 
+ 00010018  0x0000158c force  0x00000000 , 0x0000001b 
+ 00010019  0x0000158d enable  0x00000028 
+ 00010020  0x0000158e rtn 
+ 00010021  0x00001592 fetch  0x00000001 , 0x00004158 
+ 00010022  0x00001593 icompare  0x000000ff , 0x00000004 
+ 00010023  0x00001594 rtn 
+ 00010024  0x00001598 bpatch  0x00000070 , 0x0000400e 
+ 00010025  0x00001599 set0  0x00000001 , 0x00000000 
+ 00010026  0x0000159b jam  0x00000000 , 0x0000026a 
+ 00010027  0x0000159c fetch  0x00000001 , 0x00000263 
+ 00010028  0x0000159d rtn  0x00000034 
+ 00010029  0x0000159e isolate1  0x00000000 , 0x0000003f 
+ 00010030  0x0000159f arg  0x00001000 , 0x00000006 
+ 00010031  0x000015a0 call  0x00004d79 , 0x00000001 
+ 00010032  0x000015a1 bpatch  0x00000071 , 0x0000400e 
+ 00010033  0x000015a2 fetch  0x00000001 , 0x0000026a 
+ 00010034  0x000015a3 beq  0x00000001 , 0x0000273b 
+ 00010035  0x000015a5 jam  0x00000000 , 0x0000026a 
+ 00010036  0x000015a6 fetch  0x00000001 , 0x00000263 
+ 00010037  0x000015a7 rtnbit0  0x00000001 
+ 00010038  0x000015a8 arg  0x00001400 , 0x00000006 
+ 00010039  0x000015a9 call  0x00004d79 
+ 00010040  0x000015aa fetch  0x00000001 , 0x0000026a 
+ 00010041  0x000015ab beq  0x00000001 , 0x00002741 
+ 00010042  0x000015ac rtn 
+ 00010043  0x000015af fetch  0x00000001 , 0x00000263 
+ 00010044  0x000015b0 set0  0x00000000 , 0x0000003f 
+ 00010045  0x000015b1 store  0x00000001 , 0x00000263 
+ 00010046  0x000015b2 setarg  0x00000000 
+ 00010047  0x000015b3 store  0x00000002 , 0x0000025d 
+ 00010048  0x000015b4 rtn 
+ 00010049  0x000015b6 fetch  0x00000001 , 0x00000263 
+ 00010050  0x000015b7 set0  0x00000001 , 0x0000003f 
+ 00010051  0x000015b8 store  0x00000001 , 0x00000263 
+ 00010052  0x000015b9 setarg  0x00000000 
+ 00010053  0x000015ba store  0x00000002 , 0x0000025f 
+ 00010054  0x000015bb rtn 
+ 00010055  0x000015be fetch  0x00000001 , 0x00000263 
+ 00010056  0x000015bf set1  0x00000000 , 0x0000003f 
+ 00010057  0x000015c0 store  0x00000001 , 0x00000263 
+ 00010058  0x000015c1 rtn 
+ 00010059  0x000015c4 fetch  0x00000001 , 0x00000263 
+ 00010060  0x000015c5 set1  0x00000001 , 0x0000003f 
+ 00010061  0x000015c6 store  0x00000001 , 0x00000263 
+ 00010062  0x000015c7 rtn 
+ 00010063  0x000015ce bpatch  0x00000072 , 0x0000400e 
+ 00010064  0x000015cf add  0x00000028 , 0x00000001 , 0x00000021 
+ 00010065  0x000015d0 call  0x000028ea 
+ 00010066  0x000015d1 force  0x00000003 , 0x00000024 
+ 00010067  0x000015d2 call  0x000028d2 
+ 00010068  0x000015d3 call  0x00002a51 
+ 00010069  0x000015d4 call  0x00002a5f 
+ 00010070  0x000015d5 branch  0x00002a64 
+ 00010071  0x000015d9 bpatch  0x00000073 , 0x0000400e 
+ 00010072  0x000015da call  0x00002a4d 
+ 00010073  0x000015db deposit  0x00000028 
+ 00010074  0x000015dc fetcht  0x00000004 , 0x000040ca 
+ 00010075  0x000015dd isub  0x00000002 , 0x0000003f 
+ 00010076  0x000015de rtnne  0x00000001 
+ 00010077  0x000015df compare  0x00000000 , 0x00000001 , 0x0000001f 
+ 00010078  0x000015e0 nbranch  0x00002761 , 0x00000001 
+ 00010079  0x000015e1 fetch  0x00000001 , 0x00000019 
+ 00010080  0x000015e2 rtn  0x00000034 
+ 00010081  0x000015e4 call  0x0000274f 
+ 00010082  0x000015e6 compare  0x00000010 , 0x00000001 , 0x0000001f 
+ 00010083  0x000015e7 branch  0x0000264d , 0x00000001 
+ 00010084  0x000015e8 rshift  0x00000021 , 0x00000002 
+ 00010085  0x000015e9 or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00010086  0x000015eb bpatch  0x00000074 , 0x0000400e 
+ 00010087  0x000015ec enable  0x00000007 
+ 00010088  0x000015ed enable  0x0000000a 
+ 00010089  0x000015ee enable  0x0000001b 
+ 00010090  0x000015ef set0  0x00000010 , 0x00000000 
+ 00010091  0x000015f0 deposit  0x00000004 
+ 00010092  0x000015f1 inject  0x00000003 , 0x00000003 
+ 00010093  0x000015f2 deposit  0x00000001 
+ 00010094  0x000015f3 inject  0x00000003 , 0x00000004 
+ 00010095  0x000015f4 fetch  0x00000001 , 0x00000047 
+ 00010096  0x000015f5 inject  0x00000000 , 0x00000004 
+ 00010097  0x000015f6 inject  0x00000003 , 0x00000003 
+ 00010098  0x000015f7 enable  0x00000008 
+ 00010099  0x000015f8 inject  0x00000003 , 0x00000008 
+ 00010100  0x000015f9 disable  0x0000001b 
+ 00010101  0x000015fa disable  0x00000008 
+ 00010102  0x000015fb disable  0x0000000a 
+ 00010103  0x000015fc set0  0x00000002 , 0x00000015 
+ 00010104  0x000015fd arg  0x00000000 , 0x00000002 
+ 00010105  0x000015fe call  0x00002a1c 
+ 00010106  0x000015ff bpatch  0x00000075 , 0x0000400e 
+ 00010107  0x00001600 and  0x00000001 , 0x0000001f , 0x0000003f 
+ 00010108  0x00001601 beq  0x00000013 , 0x000027b4 
+ 00010109  0x00001602 beq  0x00000000 , 0x0000264d 
+ 00010110  0x00001603 beq  0x00000001 , 0x0000264d 
+ 00010111  0x00001604 beq  0x00000002 , 0x00002797 
+ 00010112  0x00001605 beq  0x00000003 , 0x000027c5 
+ 00010113  0x00001606 beq  0x00000004 , 0x000027cb 
+ 00010114  0x00001607 beq  0x00000007 , 0x0000278c 
+ 00010115  0x00001608 beq  0x00000008 , 0x000027ca 
+ 00010116  0x00001609 arg  0x00000004 , 0x00000002 
+ 00010117  0x0000160a call  0x00002a1c 
+ 00010118  0x0000160b beq  0x0000000a , 0x000027c7 
+ 00010119  0x0000160c beq  0x0000000b , 0x000027cd 
+ 00010120  0x0000160d arg  0x00000008 , 0x00000002 
+ 00010121  0x0000160e call  0x00002a1c 
+ 00010122  0x0000160f beq  0x0000000f , 0x000027cd 
+ 00010123  0x00001610 branch  0x000027c7 
+ 00010124  0x00001614 bpatch  0x00000076 , 0x0000400e 
+ 00010125  0x00001615 enable  0x0000001d 
+ 00010126  0x00001616 enable  0x00000009 
+ 00010127  0x00001617 enable  0x0000000e 
+ 00010128  0x00001618 force  0x0000001e , 0x00000039 
+ 00010129  0x00001619 arg  0x000000b3 , 0x00000006 
+ 00010130  0x0000161b ifetch  0x00000001 , 0x00000006 
+ 00010131  0x0000161c inject  0x00000003 , 0x00000008 
+ 00010132  0x0000161d loop  0x00002792 
+ 00010133  0x0000161e bmark1  0x00000007 , 0x000027f7 
+ 00010134  0x0000161f branch  0x0000264d 
+ 00010135  0x00001622 bpatch  0x00000077 , 0x0000400e 
+ 00010136  0x00001623 fetch  0x00000001 , 0x00000181 
+ 00010137  0x00001624 icopy  0x00000004 
+ 00010138  0x00001625 fetch  0x00000001 , 0x00000090 
+ 00010139  0x00001626 icopy  0x0000001c 
+ 00010140  0x00001627 fetch  0x00000003 , 0x000040aa 
+ 00010141  0x00001628 icopy  0x0000001d 
+ 00010142  0x00001629 fetch  0x00000002 , 0x000040a4 
+ 00010143  0x0000162a icopy  0x0000002e 
+ 00010144  0x0000162b enable  0x00000009 
+ 00010145  0x0000162c enable  0x0000001c 
+ 00010146  0x0000162d copy  0x00000020 , 0x00000011 
+ 00010147  0x0000162e call  0x000028e2 
+ 00010148  0x0000162f pulse  0x00000015 
+ 00010149  0x00001630 nop  0x00000020 
+ 00010150  0x00001631 copy  0x00000021 , 0x0000000b 
+ 00010151  0x00001632 fetch  0x00000004 , 0x00000161 
+ 00010152  0x00001633 icopy  0x00000021 
+ 00010153  0x00001634 preload  0x0000001e 
+ 00010154  0x00001635 set1  0x0000003a , 0x0000003f 
+ 00010155  0x00001636 inject  0x00000003 , 0x00000048 
+ 00010156  0x00001637 preload  0x0000001f 
+ 00010157  0x00001638 inject  0x00000003 , 0x00000048 
+ 00010158  0x00001639 copy  0x0000000b , 0x00000021 
+ 00010159  0x0000163a copy  0x00000011 , 0x00000020 
+ 00010160  0x0000163b enable  0x00000008 
+ 00010161  0x0000163c inject  0x00000003 , 0x00000010 
+ 00010162  0x0000163d disable  0x00000008 
+ 00010163  0x0000163e branch  0x0000264d 
+ 00010164  0x00001641 bpatch  0x00000078 , 0x0000400f 
+ 00010165  0x00001642 enable  0x0000000e 
+ 00010166  0x00001643 enable  0x00000009 
+ 00010167  0x00001644 enable  0x0000001c 
+ 00010168  0x00001645 fetch  0x00000001 , 0x000004b6 
+ 00010169  0x00001646 and  0x0000003f , 0x000001f8 , 0x00000002 
+ 00010170  0x00001647 arg  0x000004b6 , 0x00000006 
+ 00010171  0x00001648 increase  0x00000008 , 0x00000002 
+ 00010172  0x0000164a add  0x00000002 , 0xffffffb8 , 0x00000013 
+ 00010173  0x0000164b nbranch  0x000027c2 , 0x00000002 
+ 00010174  0x0000164c ifetch  0x00000009 , 0x00000006 
+ 00010175  0x0000164d inject  0x00000003 , 0x00000048 
+ 00010176  0x0000164e copy  0x00000013 , 0x00000002 
+ 00010177  0x0000164f branch  0x000027bc 
+ 00010178  0x00001651 ifetch  0x00000009 , 0x00000006 
+ 00010179  0x00001652 iinject  0x00000003 , 0x00000002 
+ 00010180  0x00001653 branch  0x000027f7 
+ 00010181  0x00001656 enable  0x0000001c 
+ 00010182  0x00001657 branch  0x000027d0 
+ 00010183  0x0000165a enable  0x0000001c 
+ 00010184  0x0000165b set1  0x00000010 , 0x00000000 
+ 00010185  0x0000165c branch  0x000027d0 
+ 00010186  0x0000165f set1  0x00000002 , 0x00000015 
+ 00010187  0x00001661 enable  0x0000001d 
+ 00010188  0x00001662 branch  0x000027d0 
+ 00010189  0x00001666 set1  0x00000002 , 0x00000015 
+ 00010190  0x00001667 enable  0x0000001d 
+ 00010191  0x00001668 set1  0x00000010 , 0x00000000 
+ 00010192  0x0000166b bpatch  0x00000079 , 0x0000400f 
+ 00010193  0x0000166c fetch  0x00000001 , 0x0000004c 
+ 00010194  0x0000166d bbit0  0x00000005 , 0x000027e5 
+ 00010195  0x0000166e sub  0x00000001 , 0x00000003 , 0x0000003e 
+ 00010196  0x0000166f branch  0x000027e5 , 0x00000002 
+ 00010197  0x00001670 disable  0x0000000e 
+ 00010198  0x00001671 disable  0x0000001c 
+ 00010199  0x00001672 enable  0x0000001d 
+ 00010200  0x00001673 disable  0x00000007 
+ 00010201  0x00001674 set1  0x00000001 , 0x00000015 
+ 00010202  0x00001675 isolate1  0x00000002 , 0x00000015 
+ 00010203  0x00001676 branch  0x000027df , 0x00000001 
+ 00010204  0x00001677 setarg  0x000abeee 
+ 00010205  0x00001678 inject  0x00000003 , 0x00000014 
+ 00010206  0x00001679 branch  0x000027e3 
+ 00010207  0x0000167b setarg  0x005faeba 
+ 00010208  0x0000167c inject  0x00000003 , 0x00000018 
+ 00010209  0x0000167d setarg  0x00000012 
+ 00010210  0x0000167e inject  0x00000003 , 0x00000006 
+ 00010211  0x00001680 enable  0x00000007 
+ 00010212  0x00001681 set1  0x00000010 , 0x00000000 
+ 00010213  0x00001683 enable  0x0000000e 
+ 00010214  0x00001684 enable  0x00000009 
+ 00010215  0x00001685 bmark1  0x00000005 , 0x00002800 
+ 00010216  0x00001686 fetch  0x00000001 , 0x000041db 
+ 00010217  0x00001687 inject  0x00000003 , 0x00000003 
+ 00010218  0x00001688 fetch  0x00000002 , 0x000041dc 
+ 00010219  0x00001689 iforce  0x00000039 
+ 00010220  0x0000168a bmark1  0x00000010 , 0x000027ef 
+ 00010221  0x0000168b inject  0x00000003 , 0x00000005 
+ 00010222  0x0000168c branch  0x000027f0 
+ 00010223  0x0000168e inject  0x00000003 , 0x0000000d 
+ 00010224  0x00001690 deposit  0x00000039 
+ 00010225  0x00001691 branch  0x000027f7 , 0x00000034 
+ 00010226  0x00001692 fetch  0x00000002 , 0x0000016f 
+ 00010227  0x00001693 iforce  0x00000006 
+ 00010228  0x00001695 ifetch  0x00000001 , 0x00000006 
+ 00010229  0x00001696 inject  0x00000003 , 0x00000008 
+ 00010230  0x00001697 loop  0x000027f4 
+ 00010231  0x0000169b enable  0x00000008 
+ 00010232  0x0000169c inject  0x00000003 , 0x00000010 
+ 00010233  0x0000169d disable  0x00000008 
+ 00010234  0x0000169e call  0x000024c1 
+ 00010235  0x0000169f fetch  0x00000001 , 0x0000004c 
+ 00010236  0x000016a0 bbit0  0x00000005 , 0x0000264d 
+ 00010237  0x000016a1 force  0x00000000 , 0x0000003f 
+ 00010238  0x000016a2 inject  0x00000003 , 0x00000006 
+ 00010239  0x000016a3 branch  0x0000264d 
+ 00010240  0x000016a7 bpatch  0x0000007a , 0x0000400f 
+ 00010241  0x000016a8 bmark1  0x00000010 , 0x00002808 
+ 00010242  0x000016aa fetch  0x00000001 , 0x00000180 
+ 00010243  0x000016ab inject  0x00000003 , 0x00000003 
+ 00010244  0x000016ac fetch  0x00000001 , 0x0000015f 
+ 00010245  0x000016ad iforce  0x00000013 
+ 00010246  0x000016ae inject  0x00000003 , 0x00000005 
+ 00010247  0x000016af branch  0x0000280d 
+ 00010248  0x000016b1 fetch  0x00000001 , 0x00000180 
+ 00010249  0x000016b2 inject  0x00000003 , 0x00000003 
+ 00010250  0x000016b3 fetch  0x00000002 , 0x0000015f 
+ 00010251  0x000016b4 iforce  0x00000013 
+ 00010252  0x000016b5 inject  0x00000003 , 0x0000000d 
+ 00010253  0x000016b7 arg  0x00000551 , 0x00000006 
+ 00010254  0x000016b9 copy  0x00000013 , 0x0000003e 
+ 00010255  0x000016ba branch  0x00002814 , 0x00000005 
+ 00010256  0x000016bb ifetch  0x00000001 , 0x00000006 
+ 00010257  0x000016bc inject  0x00000003 , 0x00000008 
+ 00010258  0x000016bd increase  0xffffffff , 0x00000013 
+ 00010259  0x000016be branch  0x0000280e 
+ 00010260  0x000016c0 fetch  0x00000002 , 0x000000fc 
+ 00010261  0x000016c1 increase  0x00000001 , 0x0000003f 
+ 00010262  0x000016c2 store  0x00000002 , 0x000000fc 
+ 00010263  0x000016c3 branch  0x000027f7 
+ 00010264  0x000016c7 fetch  0x00000004 , 0x00000165 
+ 00010265  0x000016c8 add  0x0000003f , 0x00000007 , 0x00000011 
+ 00010266  0x000016c9 fetch  0x00000002 , 0x00000171 
+ 00010267  0x000016ca nbranch  0x0000281e , 0x00000034 
+ 00010268  0x000016cb increase  0xfffffffd , 0x00000011 
+ 00010269  0x000016cc branch  0x00002826 
+ 00010270  0x000016ce mul32  0x0000003f , 0x0000000c , 0x0000003f 
+ 00010271  0x000016cf hfetcht  0x00000002 , 0x00008040 
+ 00010272  0x000016d0 increase  0x00000001 , 0x00000002 
+ 00010273  0x000016d2 isub  0x00000002 , 0x0000003f 
+ 00010274  0x000016d3 nbranch  0x00002825 , 0x00000002 
+ 00010275  0x000016d4 increase  0xffffffff , 0x00000011 
+ 00010276  0x000016d5 branch  0x00002821 
+ 00010277  0x000016d7 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010278  0x000016d9 until  0x0000003e , 0x00000023 
+ 00010279  0x000016da compare  0x00000000 , 0x00000022 , 0x00000003 
+ 00010280  0x000016db nbranch  0x00002826 , 0x00000001 
+ 00010281  0x000016dc iforce  0x00000029 
+ 00010282  0x000016dd copy  0x00000011 , 0x00000028 
+ 00010283  0x000016de iforce  0x00000029 
+ 00010284  0x000016df rtn 
+ 00010285  0x000016e3 bpatch  0x0000007b , 0x0000400f 
+ 00010286  0x000016e4 until  0x0000003e , 0x00000022 
+ 00010287  0x000016e5 deposit  0x0000001a 
+ 00010288  0x000016e6 iforce  0x00000006 
+ 00010289  0x000016e7 rshift16 , 0x0000003f , 0x0000003f 
+ 00010290  0x000016e8 isub  0x00000022 , 0x00000039 
+ 00010291  0x000016e9 and_into  0x00000003 , 0x00000039 
+ 00010292  0x000016ea nbranch  0x00002837 , 0x00000005 
+ 00010293  0x000016eb force  0x00000000 , 0x0000003f 
+ 00010294  0x000016ec branch  0x0000283b 
+ 00010295  0x000016ee arg  0x00000ea6 , 0x00000002 
+ 00010296  0x000016ef force  0x00000000 , 0x0000003f 
+ 00010297  0x000016f1 iadd  0x00000002 , 0x0000003f 
+ 00010298  0x000016f2 loop  0x00002839 
+ 00010299  0x000016f4 iadd  0x00000006 , 0x0000003f 
+ 00010300  0x000016f5 div  0x0000003f , 0x0000000c 
+ 00010301  0x000016f6 call  0x00007f86 
+ 00010302  0x000016f7 quotient  0x0000003f 
+ 00010303  0x000016f8 store  0x00000002 , 0x00000171 
+ 00010304  0x000016f9 rtn 
+ 00010305  0x000016fc bpatch  0x0000007c , 0x0000400f 
+ 00010306  0x000016fd deposit  0x0000001a 
+ 00010307  0x000016fe copy  0x00000019 , 0x00000002 
+ 00010308  0x000016ff isub  0x00000002 , 0x0000003e 
+ 00010309  0x00001700 nsetflag  0x00000002 , 0x0000002c , 0x0000003f 
+ 00010310  0x00001701 isub  0x00000002 , 0x00000002 
+ 00010311  0x00001702 setarg  0x00000ea6 
+ 00010312  0x00001703 isolate0  0x0000000f , 0x00000002 
+ 00010313  0x00001704 branch  0x0000284c , 0x00000001 
+ 00010314  0x00001705 setarg  0xffff0ea6 
+ 00010315  0x00001706 iadd  0x00000002 , 0x00000002 
+ 00010316  0x00001708 storet  0x00000006 , 0x00000447 
+ 00010317  0x00001709 rtn  0x00000036 
+ 00010318  0x0000170a storet  0x00000006 , 0x00000038 
+ 00010319  0x0000170b rtn 
+ 00010320  0x0000170e disable  0x00000030 
+ 00010321  0x0000170f fetch  0x00000006 , 0x00000447 
+ 00010322  0x00001710 branch  0x00002854 , 0x00000036 
+ 00010323  0x00001711 fetch  0x00000006 , 0x00000038 
+ 00010324  0x00001713 iadd  0x00000019 , 0x00000030 
+ 00010325  0x00001714 increase  0x0000000a , 0x00000030 
+ 00010326  0x00001715 setarg  0x00000ea6 
+ 00010327  0x00001716 isub  0x00000030 , 0x0000003f 
+ 00010328  0x00001717 isolate0  0x0000000f , 0x0000003f 
+ 00010329  0x00001718 branch  0x0000285e , 0x00000001 
+ 00010330  0x00001719 setarg  0x0000f15a 
+ 00010331  0x0000171a iadd  0x00000030 , 0x00000030 
+ 00010332  0x0000171c copy  0x00000030 , 0x0000001a 
+ 00010333  0x0000171d rtn 
+ 00010334  0x0000171f force  0x00000000 , 0x0000003e 
+ 00010335  0x00001720 branch  0x0000285c 
+ 00010336  0x00001728 bpatch  0x0000007d , 0x0000400f 
+ 00010337  0x00001729 call  0x00002918 
+ 00010338  0x0000172a copy  0x00000021 , 0x0000003f 
+ 00010339  0x0000172b and_into  0x00000180 , 0x0000003f 
+ 00010340  0x0000172c compare  0x00000003 , 0x00000024 , 0x00000007 
+ 00010341  0x0000172d nbranch  0x00002869 , 0x00000001 
+ 00010342  0x0000172e rshift3  0x0000003f , 0x0000003f 
+ 00010343  0x0000172f iadd  0x00000017 , 0x0000003f 
+ 00010344  0x00001730 branch  0x0000286a 
+ 00010345  0x00001732 copy  0x00000017 , 0x0000003f 
+ 00010346  0x00001734 div  0x0000003f , 0x0000004f 
+ 00010347  0x00001735 pulse  0x00000015 
+ 00010348  0x00001736 call  0x00007f86 
+ 00010349  0x00001737 remainder  0x00000011 
+ 00010350  0x00001738 add  0x00000011 , 0xffffffd8 , 0x00000002 
+ 00010351  0x00001739 branch  0x00002872 , 0x00000002 
+ 00010352  0x0000173a lshift  0x00000011 , 0x00000002 
+ 00010353  0x0000173b branch  0x00002874 
+ 00010354  0x0000173d lshift  0x00000002 , 0x00000002 
+ 00010355  0x0000173e increase  0x00000001 , 0x00000002 
+ 00010356  0x00001740 bpatch  0x0000007e , 0x0000400f 
+ 00010357  0x00001741 fetch  0x00000001 , 0x00000031 
+ 00010358  0x00001742 bbit0  0x00000003 , 0x00002885 
+ 00010359  0x00001744 fetch  0x00000004 , 0x000040d2 
+ 00010360  0x00001745 isub  0x00000021 , 0x0000003e 
+ 00010361  0x00001746 branch  0x00002885 , 0x00000002 
+ 00010362  0x00001747 call  0x000028a4 
+ 00010363  0x00001748 fetch  0x00000001 , 0x000040d9 
+ 00010364  0x00001749 rtn  0x00000034 
+ 00010365  0x0000174a fetch  0x00000001 , 0x00000031 
+ 00010366  0x0000174b set1  0x00000002 , 0x0000003f 
+ 00010367  0x0000174c store  0x00000001 , 0x00000031 
+ 00010368  0x0000174d fetch  0x00000005 , 0x000040e7 
+ 00010369  0x0000174e store  0x00000005 , 0x000040da 
+ 00010370  0x0000174f ifetch  0x00000005 , 0x00000006 
+ 00010371  0x00001750 store  0x00000005 , 0x000040df 
+ 00010372  0x00001751 call  0x000028a9 
+ 00010373  0x00001753 fetch  0x00000001 , 0x00000031 
+ 00010374  0x00001754 rtnbit0  0x00000002 
+ 00010375  0x00001755 isolate1  0x00000001 , 0x00000021 
+ 00010376  0x00001756 branch  0x000028a1 , 0x00000001 
+ 00010377  0x00001757 rshift3  0x00000002 , 0x00000011 
+ 00010378  0x00001758 and  0x00000002 , 0x00000007 , 0x00000007 
+ 00010379  0x00001759 setarg  0x000040da 
+ 00010380  0x0000175a iadd  0x00000011 , 0x00000011 
+ 00010381  0x0000175b ifetch  0x00000001 , 0x00000011 
+ 00010382  0x0000175c qisolate0  0x0000003f 
+ 00010383  0x0000175d branch  0x00002892 , 0x00000001 
+ 00010384  0x0000175e deposit  0x00000002 
+ 00010385  0x0000175f branch  0x0000289e 
+ 00010386  0x00001761 fetch  0x00000001 , 0x000040e4 
+ 00010387  0x00001762 iforce  0x00000012 
+ 00010388  0x00001763 deposit  0x00000021 
+ 00010389  0x00001764 and_into  0x00000180 , 0x0000003f 
+ 00010390  0x00001765 rshift3  0x0000003f , 0x0000003f 
+ 00010391  0x00001766 iadd  0x00000017 , 0x0000003f 
+ 00010392  0x00001767 idiv  0x00000012 
+ 00010393  0x00001768 setarg  0x000040f2 
+ 00010394  0x00001769 call  0x00007f86 
+ 00010395  0x0000176a remainder  0x00000011 
+ 00010396  0x0000176b iadd  0x00000011 , 0x00000006 
+ 00010397  0x0000176c ifetch  0x00000001 , 0x00000006 
+ 00010398  0x0000176e store  0x00000001 , 0x000040e5 
+ 00010399  0x0000176f iforce  0x00000002 
+ 00010400  0x00001770 rtn 
+ 00010401  0x00001773 fetch  0x00000001 , 0x000040e5 
+ 00010402  0x00001774 iforce  0x00000002 
+ 00010403  0x00001775 rtn 
+ 00010404  0x00001778 fetch  0x00000001 , 0x00000031 
+ 00010405  0x00001779 set0  0x00000002 , 0x0000003f 
+ 00010406  0x0000177a set0  0x00000003 , 0x0000003f 
+ 00010407  0x0000177b store  0x00000001 , 0x00000031 
+ 00010408  0x0000177c rtn 
+ 00010409  0x00001783 bpatch  0x0000007f , 0x0000400f 
+ 00010410  0x00001784 arg  0x000040f2 , 0x00000005 
+ 00010411  0x00001785 force  0x0000000a , 0x00000039 
+ 00010412  0x00001786 call  0x00007ec6 
+ 00010413  0x00001787 arg  0x000040f2 , 0x00000005 
+ 00010414  0x00001788 force  0x00000000 , 0x00000013 
+ 00010415  0x00001789 force  0x00000002 , 0x00000007 
+ 00010416  0x0000178b fetch  0x00000005 , 0x000040da 
+ 00010417  0x0000178c iforce  0x00000002 
+ 00010418  0x0000178d compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010419  0x0000178e branch  0x000028b5 , 0x00000001 
+ 00010420  0x0000178f rshift  0x00000002 , 0x00000002 
+ 00010421  0x00001791 isolate0  0x00000000 , 0x00000002 
+ 00010422  0x00001792 branch  0x000028b9 , 0x00000001 
+ 00010423  0x00001793 deposit  0x00000013 
+ 00010424  0x00001794 istore  0x00000001 , 0x00000005 
+ 00010425  0x00001796 rshift2  0x00000002 , 0x00000002 
+ 00010426  0x00001797 increase  0x00000002 , 0x00000013 
+ 00010427  0x00001798 compare  0x00000028 , 0x00000013 , 0x000000fe 
+ 00010428  0x00001799 nbranch  0x000028c2 , 0x00000001 
+ 00010429  0x0000179a fetch  0x00000005 , 0x000040df 
+ 00010430  0x0000179b iforce  0x00000002 
+ 00010431  0x0000179c compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010432  0x0000179d branch  0x000028c2 , 0x00000001 
+ 00010433  0x0000179e rshift  0x00000002 , 0x00000002 
+ 00010434  0x000017a0 sub  0x00000013 , 0x0000004e , 0x0000003e 
+ 00010435  0x000017a1 branch  0x000028b5 , 0x00000002 
+ 00010436  0x000017a2 force  0x00000001 , 0x00000013 
+ 00010437  0x000017a3 increase  0xffffffff , 0x00000007 
+ 00010438  0x000017a4 nbranch  0x000028b0 , 0x00000005 
+ 00010439  0x000017a5 arg  0x000040f2 , 0x00000011 
+ 00010440  0x000017a6 deposit  0x00000005 
+ 00010441  0x000017a7 isub  0x00000011 , 0x0000003f 
+ 00010442  0x000017a8 store  0x00000001 , 0x000040e4 
+ 00010443  0x000017a9 rtn 
+ 00010444  0x000017ac bpatch  0x00000080 , 0x00004010 
+ 00010445  0x000017ad call  0x00002860 
+ 00010446  0x000017ae fetch  0x00000001 , 0x0000017f 
+ 00010447  0x000017af bbit0  0x00000005 , 0x000028d1 
+ 00010448  0x000017b0 fetcht  0x00000001 , 0x000004cc 
+ 00010449  0x000017b2 branch  0x0000291f 
+ 00010450  0x000017b6 bpatch  0x00000081 , 0x00004010 
+ 00010451  0x000017b7 call  0x00002860 
+ 00010452  0x000017b8 fetch  0x00000001 , 0x0000017f 
+ 00010453  0x000017b9 bbit0  0x00000004 , 0x000028d7 
+ 00010454  0x000017ba fetcht  0x00000001 , 0x000004cb 
+ 00010455  0x000017bc branch  0x00002933 
+ 00010456  0x000017c0 force  0x00000000 , 0x0000002d 
+ 00010457  0x000017c1 fetch  0x00000003 , 0x000040a7 
+ 00010458  0x000017c2 iforce  0x0000002c 
+ 00010459  0x000017c3 rtn 
+ 00010460  0x000017c6 bpatch  0x00000082 , 0x00004010 
+ 00010461  0x000017c7 fetch  0x00000001 , 0x000041d3 
+ 00010462  0x000017c8 icopy  0x0000002d 
+ 00010463  0x000017c9 fetch  0x00000003 , 0x000041d0 
+ 00010464  0x000017ca icopy  0x0000002c 
+ 00010465  0x000017cb rtn 
+ 00010466  0x000017ce bpatch  0x00000083 , 0x00004010 
+ 00010467  0x000017cf fetch  0x00000002 , 0x000040a4 
+ 00010468  0x000017d0 icopy  0x0000002e 
+ 00010469  0x000017d1 fetch  0x00000001 , 0x000040a3 
+ 00010470  0x000017d2 icopy  0x0000002d 
+ 00010471  0x000017d3 fetch  0x00000003 , 0x000040a0 
+ 00010472  0x000017d4 icopy  0x0000002c 
+ 00010473  0x000017d5 rtn 
+ 00010474  0x000017d8 bpatch  0x00000084 , 0x00004010 
+ 00010475  0x000017d9 fetch  0x00000002 , 0x00000044 
+ 00010476  0x000017da icopy  0x0000002e 
+ 00010477  0x000017db fetch  0x00000001 , 0x00000043 
+ 00010478  0x000017dc icopy  0x0000002d 
+ 00010479  0x000017dd fetch  0x00000003 , 0x00000040 
+ 00010480  0x000017de icopy  0x0000002c 
+ 00010481  0x000017df rtn 
+ 00010482  0x000017e3 bmark1  0x00000020 , 0x000028f5 
+ 00010483  0x000017e4 rtnmark0  0x0000001d 
+ 00010484  0x000017e5 rtnmark0  0x0000001f 
+ 00010485  0x000017e7 and_into  0xffffff00 , 0x0000002c 
+ 00010486  0x000017e8 pulse  0x00000015 
+ 00010487  0x000017e9 nop  0x00000020 
+ 00010488  0x000017ea rtn 
+ 00010489  0x000017ee bpatch  0x00000085 , 0x00004010 
+ 00010490  0x000017ef branch  0x0000290a , 0x00000021 
+ 00010491  0x000017f0 jam  0x000000d4 , 0x00008955 
+ 00010492  0x000017f1 nop  0x00000004 
+ 00010493  0x000017f2 jam  0x000000d2 , 0x00008955 
+ 00010494  0x000017f3 nop  0x00000004 
+ 00010495  0x000017f4 jam  0x000000d1 , 0x00008955 
+ 00010496  0x000017f5 nop  0x00000004 
+ 00010497  0x000017f6 fetch  0x00000001 , 0x000041de 
+ 00010498  0x000017f7 beq  0x00000000 , 0x00002908 
+ 00010499  0x000017f8 beq  0x00000001 , 0x00002915 
+ 00010500  0x000017f9 beq  0x00000002 , 0x00002908 
+ 00010501  0x000017fa beq  0x00000003 , 0x00002915 
+ 00010502  0x000017fb beq  0x00000004 , 0x00002915 
+ 00010503  0x000017fc beq  0x00000020 , 0x00002915 
+ 00010504  0x000017ff jam  0x000000d0 , 0x00008955 
+ 00010505  0x00001800 jam  0x000000e0 , 0x00008956 
+ 00010506  0x00001802 force  0x00000000 , 0x00000015 
+ 00010507  0x00001803 disable  0x00000021 
+ 00010508  0x00001804 disable  0x00000020 
+ 00010509  0x00001805 pulse  0x0000001e 
+ 00010510  0x00001806 jam  0x00000000 , 0x00008902 
+ 00010511  0x00001807 jam  0x00000000 , 0x00008901 
+ 00010512  0x00001808 jam  0x00000000 , 0x00008900 
+ 00010513  0x00001809 jam  0x00000000 , 0x00008903 
+ 00010514  0x0000180a jam  0x00000070 , 0x00008904 
+ 00010515  0x0000180b jam  0x00000000 , 0x00008906 
+ 00010516  0x0000180c rtn 
+ 00010517  0x00001812 jam  0x000000d0 , 0x00008955 
+ 00010518  0x00001813 jam  0x000000c0 , 0x00008956 
+ 00010519  0x00001814 branch  0x0000290a 
+ 00010520  0x00001817 bpatch  0x00000086 , 0x00004010 
+ 00010521  0x00001818 jam  0x00000000 , 0x00008902 
+ 00010522  0x00001819 jam  0x00000000 , 0x00008901 
+ 00010523  0x0000181a jam  0x00000018 , 0x00008900 
+ 00010524  0x0000181b jam  0x000000a7 , 0x00008903 
+ 00010525  0x0000181c jam  0x0000007f , 0x00008904 
+ 00010526  0x0000181d rtn 
+ 00010527  0x00001820 bpatch  0x00000087 , 0x00004010 
+ 00010528  0x00001822 storet  0x00000001 , 0x00000017 
+ 00010529  0x00001823 add  0x00000002 , 0x00000004 , 0x00000011 
+ 00010530  0x00001824 jam  0x00000007 , 0x0000896d 
+ 00010531  0x00001825 branch  0x00002981 
+ 00010532  0x00001827 bpatch  0x00000088 , 0x00004011 
+ 00010533  0x00001828 jam  0x000000cf , 0x00008901 
+ 00010534  0x00001829 nop  0x0000000a 
+ 00010535  0x0000182a jam  0x000000ff , 0x00008900 
+ 00010536  0x0000182b jam  0x000000af , 0x00008903 
+ 00010537  0x0000182c jam  0x000000ff , 0x00008904 
+ 00010538  0x0000182d nop  0x0000000a 
+ 00010539  0x0000182e jam  0x000000a0 , 0x00008902 
+ 00010540  0x0000182f rtn 
+ 00010541  0x00001832 fetch  0x00000001 , 0x000041e0 
+ 00010542  0x00001833 branch  0x00002931 , 0x00000034 
+ 00010543  0x00001835 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00010544  0x00001836 rtn 
+ 00010545  0x00001838 add  0x00000002 , 0x00000000 , 0x00000011 
+ 00010546  0x00001839 rtn 
+ 00010547  0x0000183c bpatch  0x00000089 , 0x00004011 
+ 00010548  0x0000183d storet  0x00000001 , 0x00000017 
+ 00010549  0x0000183e call  0x0000292d 
+ 00010550  0x0000183f call  0x00002981 
+ 00010551  0x00001840 setarg  0x00000500 
+ 00010552  0x00001841 call  0x00002a8f 
+ 00010553  0x00001843 jam  0x00000001 , 0x00008906 
+ 00010554  0x00001844 jam  0x0000003c , 0x00008900 
+ 00010555  0x00001845 jam  0x000000e0 , 0x00008901 
+ 00010556  0x00001846 jam  0x00000012 , 0x0000896d 
+ 00010557  0x00001847 nop  0x0000000a 
+ 00010558  0x00001848 jam  0x00000001 , 0x00008902 
+ 00010559  0x00001849 jam  0x0000003d , 0x00008902 
+ 00010560  0x0000184a nop  0x0000000a 
+ 00010561  0x0000184b jam  0x000000b7 , 0x00008903 
+ 00010562  0x0000184c nop  0x0000000a 
+ 00010563  0x0000184d jam  0x0000007f , 0x00008902 
+ 00010564  0x0000184f fetch  0x00000001 , 0x000041de 
+ 00010565  0x00001850 beq  0x00000000 , 0x0000294b 
+ 00010566  0x00001851 beq  0x00000001 , 0x0000294f 
+ 00010567  0x00001852 beq  0x00000002 , 0x00002953 
+ 00010568  0x00001853 beq  0x00000003 , 0x00002957 
+ 00010569  0x00001854 beq  0x00000004 , 0x0000295b 
+ 00010570  0x00001855 beq  0x00000020 , 0x0000295f 
+ 00010571  0x00001857 jam  0x000000f0 , 0x00008956 
+ 00010572  0x00001858 call  0x00002965 
+ 00010573  0x00001859 jam  0x000000d8 , 0x00008955 
+ 00010574  0x0000185a rtn 
+ 00010575  0x0000185d jam  0x000000df , 0x00008956 
+ 00010576  0x0000185e call  0x00002965 
+ 00010577  0x0000185f jam  0x000000df , 0x00008955 
+ 00010578  0x00001860 rtn 
+ 00010579  0x00001863 jam  0x000000ff , 0x00008956 
+ 00010580  0x00001864 call  0x00002965 
+ 00010581  0x00001865 jam  0x000000df , 0x00008955 
+ 00010582  0x00001866 rtn 
+ 00010583  0x00001868 jam  0x000000ce , 0x00008956 
+ 00010584  0x00001869 call  0x00002965 
+ 00010585  0x0000186a jam  0x000000d8 , 0x00008955 
+ 00010586  0x0000186b rtn 
+ 00010587  0x0000186e jam  0x000000cb , 0x00008956 
+ 00010588  0x0000186f call  0x00002965 
+ 00010589  0x00001870 jam  0x000000d8 , 0x00008955 
+ 00010590  0x00001871 rtn 
+ 00010591  0x00001874 jam  0x000000d0 , 0x00008955 
+ 00010592  0x00001875 jam  0x000000c0 , 0x00008956 
+ 00010593  0x00001876 jam  0x0000004c , 0x00008957 
+ 00010594  0x00001877 jam  0x0000006c , 0x00008958 
+ 00010595  0x00001878 jam  0x00000050 , 0x00008959 
+ 00010596  0x00001879 rtn 
+ 00010597  0x0000187c nop  0x00000004 
+ 00010598  0x0000187d jam  0x000000d1 , 0x00008955 
+ 00010599  0x0000187e nop  0x00000004 
+ 00010600  0x0000187f jam  0x000000d2 , 0x00008955 
+ 00010601  0x00001880 nop  0x00000004 
+ 00010602  0x00001881 jam  0x000000d4 , 0x00008955 
+ 00010603  0x00001882 rtn 
+ 00010604  0x00001886 jam  0x00000006 , 0x00008042 
+ 00010605  0x00001888 fetch  0x00000002 , 0x000040c3 
+ 00010606  0x00001889 bbit0  0x0000000e , 0x0000296d 
+ 00010607  0x0000188a iforce  0x00000006 
+ 00010608  0x0000188b arg  0x00008900 , 0x00000002 
+ 00010609  0x0000188d ifetch  0x00000001 , 0x00000006 
+ 00010610  0x0000188e beq  0x000000ff , 0x00002977 
+ 00010611  0x0000188f ior  0x00000002 , 0x00000005 
+ 00010612  0x00001890 ifetch  0x00000001 , 0x00000006 
+ 00010613  0x00001891 istore  0x00000001 , 0x00000005 
+ 00010614  0x00001892 branch  0x00002971 
+ 00010615  0x00001894 bpatch  0x0000008a , 0x00004011 
+ 00010616  0x00001895 call  0x00002be5 
+ 00010617  0x00001896 call  0x000029c9 
+ 00010618  0x00001898 setarg  0x000007d0 
+ 00010619  0x00001899 iadd  0x00000022 , 0x0000003f 
+ 00010620  0x0000189a store  0x00000004 , 0x00000169 
+ 00010621  0x0000189b set1  0x00000003 , 0x00000015 
+ 00010622  0x0000189c force  0x00000000 , 0x00000015 
+ 00010623  0x0000189d ncall  0x00002998 , 0x0000002b 
+ 00010624  0x0000189e branch  0x000029ab 
+ 00010625  0x000018a2 bpatch  0x0000008b , 0x00004011 
+ 00010626  0x000018a3 setarg  0x00000960 
+ 00010627  0x000018a4 iadd  0x00000011 , 0x00000002 
+ 00010628  0x000018a5 fetch  0x00000001 , 0x000040bd 
+ 00010629  0x000018a6 jam  0x00000004 , 0x0000895f 
+ 00010630  0x000018a7 imul32  0x00000002 , 0x0000003f 
+ 00010631  0x000018a8 fetcht  0x00000001 , 0x000040be 
+ 00010632  0x000018a9 idiv  0x00000002 
+ 00010633  0x000018aa call  0x00007f86 
+ 00010634  0x000018ab quotient  0x00000011 
+ 00010635  0x000018ac remainder  0x0000003f 
+ 00010636  0x000018ad lshift16  0x0000003f , 0x0000003f 
+ 00010637  0x000018ae lshift4  0x0000003f , 0x0000003f 
+ 00010638  0x000018af idiv  0x00000002 
+ 00010639  0x000018b0 call  0x00007f86 
+ 00010640  0x000018b1 quotient  0x0000003f 
+ 00010641  0x000018b2 lshift8  0x0000003f , 0x0000003f 
+ 00010642  0x000018b3 lshift  0x0000003f , 0x0000003f 
+ 00010643  0x000018b4 ior  0x00000011 , 0x0000003f 
+ 00010644  0x000018b5 hstore  0x00000004 , 0x00008960 
+ 00010645  0x000018b6 jam  0x00000044 , 0x0000895f 
+ 00010646  0x000018b7 jam  0x000000c4 , 0x0000895f 
+ 00010647  0x000018b8 rtn 
+ 00010648  0x000018bc bpatch  0x0000008c , 0x00004011 
+ 00010649  0x000018bd jam  0x00000002 , 0x00008906 
+ 00010650  0x000018be setarg  0x0003d090 
+ 00010651  0x000018bf call  0x00002a8f 
+ 00010652  0x000018c0 jam  0x0000007f , 0x00008900 
+ 00010653  0x000018c1 nop  0x00000082 
+ 00010654  0x000018c2 jam  0x00000030 , 0x00008952 
+ 00010655  0x000018c3 jam  0x000000d0 , 0x00008901 
+ 00010656  0x000018c4 jam  0x00000070 , 0x00008952 
+ 00010657  0x000018c5 jam  0x000000f0 , 0x00008952 
+ 00010658  0x000018c6 force  0x00000032 , 0x00000039 
+ 00010659  0x000018c8 hfetch  0x00000001 , 0x00008980 
+ 00010660  0x000018c9 bbit1  0x00000005 , 0x000029a6 
+ 00010661  0x000018ca loop  0x000029a3 
+ 00010662  0x000018cc store  0x00000001 , 0x000040ce 
+ 00010663  0x000018cd jam  0x00000000 , 0x00008901 
+ 00010664  0x000018ce jam  0x00000000 , 0x00008900 
+ 00010665  0x000018cf jam  0x00000000 , 0x00008906 
+ 00010666  0x000018d0 rtn 
+ 00010667  0x000018d3 bpatch  0x0000008d , 0x00004011 
+ 00010668  0x000018d4 fetch  0x00000001 , 0x000040ce 
+ 00010669  0x000018d5 set1  0x00000005 , 0x0000003f 
+ 00010670  0x000018d6 hstore  0x00000001 , 0x00008952 
+ 00010671  0x000018d7 hfetcht  0x00000001 , 0x00008950 
+ 00010672  0x000018d8 and_into  0x00000007 , 0x00000002 
+ 00010673  0x000018d9 lshift3  0x0000003f , 0x0000003f 
+ 00010674  0x000018da ior  0x00000002 , 0x0000003f 
+ 00010675  0x000018db hstore  0x00000001 , 0x00008950 
+ 00010676  0x000018dc hfetch  0x00000001 , 0x00008951 
+ 00010677  0x000018dd set0  0x00000000 , 0x0000003f 
+ 00010678  0x000018de hstore  0x00000001 , 0x00008951 
+ 00010679  0x000018df hfetch  0x00000001 , 0x00008952 
+ 00010680  0x000018e0 set0  0x00000005 , 0x0000003f 
+ 00010681  0x000018e1 hstore  0x00000001 , 0x00008952 
+ 00010682  0x000018e2 rtn 
+ 00010683  0x000018e5 bpatch  0x0000008e , 0x00004011 
+ 00010684  0x000018e6 hfetch  0x00000002 , 0x00008981 
+ 00010685  0x000018e7 rshift4  0x0000003f , 0x0000003f 
+ 00010686  0x000018e8 rshift3  0x0000003f , 0x0000003f 
+ 00010687  0x000018e9 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010688  0x000018eb and_into  0x000000ff , 0x0000003f 
+ 00010689  0x000018ec div  0x0000003f , 0x0000000a 
+ 00010690  0x000018ed call  0x00007f86 
+ 00010691  0x000018ee quotient  0x0000003f 
+ 00010692  0x000018ef lshift4  0x0000003f , 0x0000003f 
+ 00010693  0x000018f0 remainder  0x00000002 
+ 00010694  0x000018f1 ior  0x00000002 , 0x0000003f 
+ 00010695  0x000018f2 store  0x00000001 , 0x00000018 
+ 00010696  0x000018f3 rtn 
+ 00010697  0x000018f7 jam  0x00000006 , 0x00008042 
+ 00010698  0x000018f8 hfetch  0x00000001 , 0x0000896b 
+ 00010699  0x000018f9 set0  0x00000004 , 0x0000003f 
+ 00010700  0x000018fa set0  0x00000005 , 0x0000003f 
+ 00010701  0x000018fb hstore  0x00000001 , 0x0000896b 
+ 00010702  0x000018fc jam  0x00000000 , 0x00008905 
+ 00010703  0x000018fd jam  0x00000000 , 0x00008904 
+ 00010704  0x000018fe jam  0x00000070 , 0x00008904 
+ 00010705  0x000018ff jam  0x000000ff , 0x00008905 
+ 00010706  0x00001900 hfetch  0x00000001 , 0x0000896b 
+ 00010707  0x00001901 set1  0x00000004 , 0x0000003f 
+ 00010708  0x00001902 set1  0x00000005 , 0x0000003f 
+ 00010709  0x00001903 hstore  0x00000001 , 0x0000896b 
+ 00010710  0x00001904 call  0x000029e9 
+ 00010711  0x00001905 hfetch  0x00000001 , 0x00008968 
+ 00010712  0x00001906 set1  0x00000007 , 0x0000003f 
+ 00010713  0x00001907 hstore  0x00000001 , 0x00008968 
+ 00010714  0x00001908 set0  0x00000007 , 0x0000003f 
+ 00010715  0x00001909 hstore  0x00000001 , 0x00008968 
+ 00010716  0x0000190a set1  0x00000007 , 0x0000003f 
+ 00010717  0x0000190b hstore  0x00000001 , 0x00008968 
+ 00010718  0x0000190c jam  0x00000005 , 0x00008042 
+ 00010719  0x0000190d nop  0x00000001 
+ 00010720  0x0000190e jam  0x00000004 , 0x00008042 
+ 00010721  0x0000190f hfetch  0x00000001 , 0x0000896b 
+ 00010722  0x00001910 and_into  0x000000cf , 0x0000003f 
+ 00010723  0x00001911 hstore  0x00000001 , 0x0000896b 
+ 00010724  0x00001912 or_into  0x00000030 , 0x0000003f 
+ 00010725  0x00001913 hstore  0x00000001 , 0x0000896b 
+ 00010726  0x00001914 rtn 
+ 00010727  0x00001918 setarg  0x00000f0f 
+ 00010728  0x00001919 branch  0x00002c18 
+ 00010729  0x0000191c setarg  0x0000080f 
+ 00010730  0x0000191d branch  0x00002c18 
+ 00010731  0x00001922 bpatch  0x0000008f , 0x00004011 
+ 00010732  0x00001923 call  0x00002924 
+ 00010733  0x00001924 disable  0x00000020 
+ 00010734  0x00001925 enable  0x00000021 
+ 00010735  0x00001926 pulse  0x00000016 
+ 00010736  0x00001927 rtn 
+ 00010737  0x0000192a bpatch  0x00000090 , 0x00004012 
+ 00010738  0x0000192b fetch  0x00000001 , 0x0000004c 
+ 00010739  0x0000192c isolate1  0x00000002 , 0x0000003f 
+ 00010740  0x0000192d setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00010741  0x0000192e hstore  0x00000001 , 0x00008011 
+ 00010742  0x0000192f arg  0x00000062 , 0x00000006 
+ 00010743  0x00001930 ifetch  0x00000009 , 0x00000006 
+ 00010744  0x00001931 iforce  0x00000032 
+ 00010745  0x00001932 ifetch  0x00000007 , 0x00000006 
+ 00010746  0x00001933 iforce  0x00000033 
+ 00010747  0x00001934 fetch  0x00000001 , 0x00000054 
+ 00010748  0x00001935 add  0x0000003f , 0xffffffff , 0x00000034 
+ 00010749  0x00001936 pulse  0x0000001a 
+ 00010750  0x00001937 rtn 
+ 00010751  0x0000193a deposit  0x0000001a 
+ 00010752  0x0000193b store  0x00000006 , 0x0000009a 
+ 00010753  0x0000193c disable  0x0000000d 
+ 00010754  0x0000193d nbranch  0x000028f9 , 0x00000018 
+ 00010755  0x0000193e arg  0x000003bb , 0x00000029 
+ 00010756  0x0000193f increase  0x00000001 , 0x00000028 
+ 00010757  0x00001940 and_into  0x000001fc , 0x00000028 
+ 00010758  0x00001941 rtn 
+ 00010759  0x00001946 enable  0x0000000d 
+ 00010760  0x00001948 correlate  0x0000003e , 0x00000017 
+ 00010761  0x00001949 branch  0x000029ff , 0x00000018 
+ 00010762  0x0000194a compare  0x00000002 , 0x00000028 , 0x00000002 
+ 00010763  0x0000194b nbranch  0x00002a08 , 0x00000001 
+ 00010764  0x0000194c branch  0x000029ff 
+ 00010765  0x0000194f bpatch  0x00000091 , 0x00004012 
+ 00010766  0x00001950 arg  0x00000600 , 0x0000000b 
+ 00010767  0x00001951 enable  0x0000000d 
+ 00010768  0x00001952 correlate  0x00000023 , 0x00000026 
+ 00010769  0x00001953 disable  0x0000000d 
+ 00010770  0x00001954 nbranch  0x000028f9 , 0x00000018 
+ 00010771  0x00001955 rtn 
+ 00010772  0x00001958 bpatch  0x00000092 , 0x00004012 
+ 00010773  0x00001959 enable  0x0000000d 
+ 00010774  0x0000195a correlate  0x0000003e , 0x00000003 
+ 00010775  0x0000195b disable  0x0000000d 
+ 00010776  0x0000195c nbranch  0x000028f9 , 0x00000018 
+ 00010777  0x0000195d arg  0x000003bb , 0x00000029 
+ 00010778  0x0000195e and_into  0x000001fc , 0x00000028 
+ 00010779  0x0000195f rtn 
+ 00010780  0x00001963 bpatch  0x00000093 , 0x00004012 
+ 00010781  0x00001964 iforce  0x00000011 
+ 00010782  0x00001965 deposit  0x00000021 
+ 00010783  0x00001966 iadd  0x00000002 , 0x0000000b 
+ 00010784  0x00001967 copy  0x0000000b , 0x0000003f 
+ 00010785  0x00001968 store  0x00000004 , 0x000040ca 
+ 00010786  0x00001969 deposit  0x00000011 
+ 00010787  0x0000196a rtn 
+ 00010788  0x0000196e copy  0x0000003f , 0x00000002 
+ 00010789  0x0000196f bpatch  0x00000094 , 0x00004012 
+ 00010790  0x00001970 copy  0x00000002 , 0x0000003f 
+ 00010791  0x00001971 call  0x00007f50 
+ 00010792  0x00001972 lshift16  0x00000021 , 0x0000003f 
+ 00010793  0x00001973 set1  0x0000002c , 0x0000003f 
+ 00010794  0x00001974 call  0x00007f39 
+ 00010795  0x00001975 set0  0x0000002c , 0x0000003f 
+ 00010796  0x00001976 call  0x00002a77 
+ 00010797  0x00001977 call  0x00007f39 
+ 00010798  0x00001978 rtn  0x00000028 
+ 00010799  0x00001979 call  0x00007f43 
+ 00010800  0x0000197a iforce  0x0000001b 
+ 00010801  0x0000197b until  0x0000003e , 0x00000003 
+ 00010802  0x0000197c rtn 
+ 00010803  0x00001980 bpatch  0x00000095 , 0x00004012 
+ 00010804  0x00001981 branch  0x00002a38 , 0x00000030 
+ 00010805  0x00001982 until  0x00000029 , 0x00000026 
+ 00010806  0x00001984 copy  0x00000028 , 0x00000002 
+ 00010807  0x00001985 branch  0x00002a3b 
+ 00010808  0x00001987 branch  0x00002a3a , 0x0000002e 
+ 00010809  0x00001988 until  0x00000023 , 0x00000026 
+ 00010810  0x0000198a copy  0x00000022 , 0x00000002 
+ 00010811  0x0000198c branch  0x00002a47 , 0x00000028 
+ 00010812  0x0000198d compare  0x00000001 , 0x00000002 , 0x00000003 
+ 00010813  0x0000198e nbranch  0x00002a33 , 0x00000001 
+ 00010814  0x00001990 bpatch  0x00000096 , 0x00004012 
+ 00010815  0x00001991 fetch  0x00000001 , 0x00000030 
+ 00010816  0x00001992 rtnbit0  0x00000000 
+ 00010817  0x00001993 fetch  0x00000004 , 0x000040ca 
+ 00010818  0x00001994 isub  0x00000002 , 0x0000003f 
+ 00010819  0x00001995 nrtn  0x00000002 
+ 00010820  0x00001996 sub  0x0000003f , 0x000000ff , 0x0000003e 
+ 00010821  0x00001997 branch  0x00002a33 , 0x00000002 
+ 00010822  0x00001998 rtn 
+ 00010823  0x0000199a compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00010824  0x0000199b nbranch  0x00002a33 , 0x00000001 
+ 00010825  0x0000199c branch  0x00002a3e 
+ 00010826  0x0000199f bpatch  0x00000097 , 0x00004012 
+ 00010827  0x000019a0 arg  0x00000600 , 0x0000000b 
+ 00010828  0x000019a1 branch  0x00002a33 
+ 00010829  0x000019a4 disable  0x00000028 
+ 00010830  0x000019a5 branch  0x00002a4a 
+ 00010831  0x000019a8 enable  0x00000028 
+ 00010832  0x000019a9 branch  0x00002a4a 
+ 00010833  0x000019ac bpatch  0x00000098 , 0x00004013 
+ 00010834  0x000019ad call  0x000029f1 
+ 00010835  0x000019ae disable  0x00000021 
+ 00010836  0x000019af enable  0x00000020 
+ 00010837  0x000019b0 rtn 
+ 00010838  0x000019b5 bpatch  0x00000099 , 0x00004013 
+ 00010839  0x000019b6 arg  0x00000e43 , 0x0000000b 
+ 00010840  0x000019b7 until  0x00000023 , 0x00000026 
+ 00010841  0x000019b8 pulse  0x00000016 
+ 00010842  0x000019b9 rtn 
+ 00010843  0x000019bc bpatch  0x0000009a , 0x00004013 
+ 00010844  0x000019bd arg  0x00000d00 , 0x0000000b 
+ 00010845  0x000019be until  0x00000023 , 0x00000026 
+ 00010846  0x000019bf rtn 
+ 00010847  0x000019c3 bpatch  0x0000009b , 0x00004013 
+ 00010848  0x000019c4 arg  0x00000e43 , 0x0000000b 
+ 00010849  0x000019c5 until  0x00000029 , 0x00000026 
+ 00010850  0x000019c6 pulse  0x00000016 
+ 00010851  0x000019c7 rtn 
+ 00010852  0x000019ca bpatch  0x0000009c , 0x00004013 
+ 00010853  0x000019cb preload  0x00000009 
+ 00010854  0x000019cc enable  0x0000001d 
+ 00010855  0x000019cd set1  0x00000000 , 0x00000015 
+ 00010856  0x000019ce inject  0x00000003 , 0x00000048 
+ 00010857  0x000019cf disable  0x0000001d 
+ 00010858  0x000019d0 rtn 
+ 00010859  0x000019d4 copy  0x00000025 , 0x00000002 
+ 00010860  0x000019d5 or_into  0x00000060 , 0x00000002 
+ 00010861  0x000019d6 copy  0x00000002 , 0x0000000e 
+ 00010862  0x000019d7 rtn 
+ 00010863  0x000019dd bpatch  0x0000009d , 0x00004013 
+ 00010864  0x000019de fetch  0x00000001 , 0x00004090 
+ 00010865  0x000019df increase  0x00000001 , 0x0000003f 
+ 00010866  0x000019e0 bne  0x00000007 , 0x00002a74 
+ 00010867  0x000019e1 force  0x00000001 , 0x0000003f 
+ 00010868  0x000019e3 store  0x00000001 , 0x00004090 
+ 00010869  0x000019e4 iforce  0x00000004 
+ 00010870  0x000019e5 rtn 
+ 00010871  0x000019e8 copy  0x00000019 , 0x00000002 
+ 00010872  0x000019e9 rtn  0x00000029 
+ 00010873  0x000019ea copy  0x0000001a , 0x00000002 
+ 00010874  0x000019eb rtn 
+ 00010875  0x000019ee deposit  0x00000022 
+ 00010876  0x000019ef rtn  0x00000029 
+ 00010877  0x000019f0 deposit  0x00000028 
+ 00010878  0x000019f1 rtn 
+ 00010879  0x000019f5 bpatch  0x0000009e , 0x00004013 
+ 00010880  0x000019f6 fetcht  0x00000004 , 0x0000004d 
+ 00010881  0x000019f7 call  0x00002a7b 
+ 00010882  0x000019f8 isub  0x00000002 , 0x0000000b 
+ 00010883  0x000019f9 deposit  0x0000000b 
+ 00010884  0x000019fa fetcht  0x00000002 , 0x00000051 
+ 00010885  0x000019fb lshift  0x00000002 , 0x00000002 
+ 00010886  0x000019fc isub  0x00000002 , 0x0000003f 
+ 00010887  0x000019fd rtn 
+ 00010888  0x00001a00 bpatch  0x0000009f , 0x00004013 
+ 00010889  0x00001a01 call  0x00002a7b 
+ 00010890  0x00001a02 store  0x00000004 , 0x0000004d 
+ 00010891  0x00001a03 rtn 
+ 00010892  0x00001a06 bpatch  0x000000a0 , 0x00004014 
+ 00010893  0x00001a07 branch  0x00002a8c 
+ 00010894  0x00001a0a branch  0x00002a8e 
+ 00010895  0x00001a0d rtn  0x00000034 
+ 00010896  0x00001a0f rshift  0x0000003f , 0x0000003f 
+ 00010897  0x00001a10 increase  0xfffffffd , 0x0000003f 
+ 00010898  0x00001a12 increase  0xffffffff , 0x0000003f 
+ 00010899  0x00001a13 nbranch  0x00002a92 , 0x00000005 
+ 00010900  0x00001a14 force  0x00000000 , 0x0000003f 
+ 00010901  0x00001a15 rtn 
+ 00010902  0x00001a1b arg  0x00000010 , 0x00000039 
+ 00010903  0x00001a1c arg  0x00000000 , 0x00000005 
+ 00010904  0x00001a1d call  0x00007ec6 
+ 00010905  0x00001a1e arg  0x0000043f , 0x00000005 
+ 00010906  0x00001a1f arg  0x0000000a , 0x00000039 
+ 00010907  0x00001a20 call  0x00007ec6 
+ 00010908  0x00001a21 jam  0x00000000 , 0x000009b2 
+ 00010909  0x00001a22 jam  0x00000000 , 0x00000a99 
+ 00010910  0x00001a23 jam  0x00000000 , 0x0000048c 
+ 00010911  0x00001a24 jam  0x00000000 , 0x0000017f 
+ 00010912  0x00001a25 jam  0x00000000 , 0x000004d1 
+ 00010913  0x00001a26 bpatch  0x000000a1 , 0x00004014 
+ 00010914  0x00001a27 jam  0x00000000 , 0x0000016d 
+ 00010915  0x00001a28 jam  0x00000000 , 0x00000151 
+ 00010916  0x00001a29 jam  0x00000000 , 0x0000015c 
+ 00010917  0x00001a2a setarg  0x009e8b33 
+ 00010918  0x00001a2b store  0x00000003 , 0x000040a7 
+ 00010919  0x00001a2c setarg  0x00000153 
+ 00010920  0x00001a2d store  0x00000002 , 0x00000083 
+ 00010921  0x00001a2e jam  0x0000001e , 0x00000085 
+ 00010922  0x00001a2f jam  0x00000001 , 0x00000086 
+ 00010923  0x00001a30 jam  0x00000007 , 0x00000088 
+ 00010924  0x00001a31 setarg  0x0012e904 
+ 00010925  0x00001a32 store  0x00000003 , 0x00000080 
+ 00010926  0x00001a37 jam  0x00000060 , 0x00000090 
+ 00010927  0x00001a38 jam  0x00000005 , 0x000040d0 
+ 00010928  0x00001a39 jam  0x00000002 , 0x00000014 
+ 00010929  0x00001a3a fetch  0x00000001 , 0x0000465a 
+ 00010930  0x00001a3b ncall  0x000074c1 , 0x00000034 
+ 00010931  0x00001a3c fetch  0x00000001 , 0x000044be 
+ 00010932  0x00001a3d ncall  0x00007518 , 0x00000034 
+ 00010933  0x00001a3e bpatch  0x000000a2 , 0x00004014 
+ 00010934  0x00001a3f rtn  0x0000002b 
+ 00010935  0x00001a40 setarg  0x00000000 
+ 00010936  0x00001a41 store  0x00000002 , 0x000041dc 
+ 00010937  0x00001a42 rshift  0x00000022 , 0x0000003f 
+ 00010938  0x00001a43 store  0x00000004 , 0x00004094 
+ 00010939  0x00001a44 rtn 
+ 00010940  0x00001a4c setarg  0x0000ee21 
+ 00010941  0x00001a4d hstore  0x00000002 , 0x00008050 
+ 00010942  0x00001a4e hfetch  0x00000004 , 0x0000811c 
+ 00010943  0x00001a4f store  0x00000004 , 0x00000abe 
+ 00010944  0x00001a50 hfetch  0x00000001 , 0x0000813e 
+ 00010945  0x00001a51 store  0x00000001 , 0x00000abd 
+ 00010946  0x00001a52 bbit0  0x00000003 , 0x0000645b 
+ 00010947  0x00001a53 enable  0x0000002b 
+ 00010948  0x00001a54 bbit0  0x00000007 , 0x00002acc 
+ 00010949  0x00001a55 disable  0x0000002b 
+ 00010950  0x00001a56 deposit  0x00000027 
+ 00010951  0x00001a57 nbranch  0x00002acc , 0x00000034 
+ 00010952  0x00001a58 hfetch  0x00000001 , 0x0000813b 
+ 00010953  0x00001a59 bbit1  0x00000002 , 0x00002acc 
+ 00010954  0x00001a5a arg  0xffffffff , 0x00000002 
+ 00010955  0x00001a5b branch  0x00002b3c 
+ 00010956  0x00001a5d hfetch  0x00000003 , 0x0000813c 
+ 00010957  0x00001a5e hstore  0x00000003 , 0x0000804c 
+ 00010958  0x00001a5f ifetch  0x00000001 , 0x00000006 
+ 00010959  0x00001a60 or_into  0x000000ef , 0x0000003f 
+ 00010960  0x00001a61 istore  0x00000001 , 0x00000005 
+ 00010961  0x00001a62 call  0x00002c23 
+ 00010962  0x00001a63 hfetch  0x00000001 , 0x0000804f 
+ 00010963  0x00001a64 set1  0x00000004 , 0x0000003f 
+ 00010964  0x00001a65 hstore  0x00000001 , 0x0000804f 
+ 00010965  0x00001a66 call  0x00002c23 
+ 00010966  0x00001a67 call  0x00002adf , 0x0000002b 
+ 00010967  0x00001a68 hfetch  0x00000001 , 0x0000804e 
+ 00010968  0x00001a69 set0  0x00000003 , 0x0000003f 
+ 00010969  0x00001a6a hstore  0x00000001 , 0x0000804e 
+ 00010970  0x00001a6b call  0x00002c23 
+ 00010971  0x00001a6c nbranch  0x0000645b , 0x0000002b 
+ 00010972  0x00001a6d rtnmark0  0x0000002b 
+ 00010973  0x00001a6e jam  0x00000008 , 0x00008006 
+ 00010974  0x00001a6f rtn 
+ 00010975  0x00001a72 fetch  0x00000001 , 0x00004198 
+ 00010976  0x00001a73 hstore  0x00000001 , 0x00008086 
+ 00010977  0x00001a74 fetch  0x00000003 , 0x0000418d 
+ 00010978  0x00001a75 hstore  0x00000003 , 0x00008080 
+ 00010979  0x00001a76 fetch  0x00000004 , 0x00004181 
+ 00010980  0x00001a77 hstore  0x00000004 , 0x00008074 
+ 00010981  0x00001a78 fetch  0x00000004 , 0x0000417d 
+ 00010982  0x00001a79 hstore  0x00000004 , 0x00008070 
+ 00010983  0x00001a7a fetch  0x00000008 , 0x00004185 
+ 00010984  0x00001a7b hstore  0x00000008 , 0x00008078 
+ 00010985  0x00001a7c fetch  0x00000008 , 0x00004190 
+ 00010986  0x00001a7d iforce  0x00000000 
+ 00010987  0x00001a7e hfetch  0x00000008 , 0x00008140 
+ 00010988  0x00001a7f store  0x00000008 , 0x000000a1 
+ 00010989  0x00001a80 call  0x000064ca 
+ 00010990  0x00001a81 rtn 
+ 00010991  0x00001a84 deposit  0x00000000 
+ 00010992  0x00001a85 store  0x00000008 , 0x00004190 
+ 00010993  0x00001a86 hfetch  0x00000008 , 0x00008070 
+ 00010994  0x00001a87 store  0x00000008 , 0x0000417d 
+ 00010995  0x00001a88 ifetch  0x00000008 , 0x00000006 
+ 00010996  0x00001a89 istore  0x00000008 , 0x00000005 
+ 00010997  0x00001a8a hfetch  0x00000003 , 0x00008080 
+ 00010998  0x00001a8b store  0x00000003 , 0x0000418d 
+ 00010999  0x00001a8c hfetch  0x00000001 , 0x00008086 
+ 00011000  0x00001a8d store  0x00000001 , 0x00004198 
+ 00011001  0x00001a8e branch  0x00002c29 
+ 00011002  0x00001a91 hfetch  0x00000001 , 0x00008063 
+ 00011003  0x00001a92 nbranch  0x00002b00 , 0x00000034 
+ 00011004  0x00001a93 fetch  0x00000003 , 0x0000416f 
+ 00011005  0x00001a94 nrtn  0x00000034 
+ 00011006  0x00001a95 jam  0x000000c0 , 0x00008063 
+ 00011007  0x00001a96 jam  0x00000080 , 0x00008006 
+ 00011008  0x00001a98 hfetch  0x00000001 , 0x0000812d 
+ 00011009  0x00001a99 rtnbit0  0x00000001 
+ 00011010  0x00001a9a hfetch  0x00000003 , 0x00008149 
+ 00011011  0x00001a9b store  0x00000003 , 0x0000416f 
+ 00011012  0x00001a9c rtn 
+ 00011013  0x00001aa1 bpatch  0x000000a3 , 0x00004014 
+ 00011014  0x00001aa2 deposit  0x0000001a 
+ 00011015  0x00001aa3 call  0x00007f37 
+ 00011016  0x00001aa4 fetcht  0x00000004 , 0x0000415f 
+ 00011017  0x00001aa5 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00011018  0x00001aa6 rtn  0x00000002 
+ 00011019  0x00001aa7 lshift8  0x0000003f , 0x0000003f 
+ 00011020  0x00001aa8 lshift4  0x0000003f , 0x0000003f 
+ 00011021  0x00001aa9 idiv  0x00000002 
+ 00011022  0x00001aaa call  0x00007f86 
+ 00011023  0x00001aab quotient  0x0000003f 
+ 00011024  0x00001aac arg  0x000000c8 , 0x00000002 
+ 00011025  0x00001aad call  0x00007f91 
+ 00011026  0x00001aae store  0x00000001 , 0x00000099 
+ 00011027  0x00001aaf nbranch  0x00002b15 , 0x00000028 
+ 00011028  0x00001ab0 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00011029  0x00001ab2 fetcht  0x00000003 , 0x0000416f 
+ 00011030  0x00001ab3 iadd  0x00000002 , 0x0000003f 
+ 00011031  0x00001ab4 store  0x00000003 , 0x0000416f 
+ 00011032  0x00001ab6 setarg  0x00000000 
+ 00011033  0x00001ab7 store  0x00000004 , 0x0000415f 
+ 00011034  0x00001ab8 rtn 
+ 00011035  0x00001abd fetch  0x00000001 , 0x00004177 
+ 00011036  0x00001abe set1  0x00000002 , 0x0000003f 
+ 00011037  0x00001abf store  0x00000001 , 0x00004177 
+ 00011038  0x00001ac0 branch  0x00002b23 
+ 00011039  0x00001ac5 arg  0xffffffff , 0x00000002 
+ 00011040  0x00001ac6 fetch  0x00000001 , 0x00004176 
+ 00011041  0x00001ac7 set0  0x00000007 , 0x0000003f 
+ 00011042  0x00001ac8 store  0x00000001 , 0x00004176 
+ 00011043  0x00001aca bpatch  0x000000a4 , 0x00004014 
+ 00011044  0x00001acb call  0x00002c29 
+ 00011045  0x00001acc fetch  0x00000001 , 0x00004157 
+ 00011046  0x00001acd store  0x00000001 , 0x0000417c 
+ 00011047  0x00001ace fetch  0x00000001 , 0x0000417a 
+ 00011048  0x00001acf set1  0x00000007 , 0x0000003f 
+ 00011049  0x00001ad0 store  0x00000001 , 0x0000417a 
+ 00011050  0x00001ad4 bpatch  0x000000a5 , 0x00004014 
+ 00011051  0x00001ad5 call  0x000029e7 
+ 00011052  0x00001ad6 fetch  0x00000004 , 0x0000415f 
+ 00011053  0x00001ad7 iadd  0x00000002 , 0x0000003f 
+ 00011054  0x00001ad8 store  0x00000004 , 0x0000415f 
+ 00011055  0x00001ad9 call  0x00002aef 
+ 00011056  0x00001ada fetch  0x00000005 , 0x00004178 
+ 00011057  0x00001adb hstore  0x00000004 , 0x0000804c 
+ 00011058  0x00001adc rshift32  0x0000003f , 0x00000011 
+ 00011059  0x00001add until  0x0000003e , 0x00000033 
+ 00011060  0x00001ade deposit  0x00000019 
+ 00011061  0x00001adf store  0x00000006 , 0x00004163 
+ 00011062  0x00001ae0 jam  0x00000002 , 0x00008005 
+ 00011063  0x00001ae1 until  0x0000003e , 0x00000033 
+ 00011064  0x00001ae2 until  0x0000003e , 0x00000033 
+ 00011065  0x00001ae3 deposit  0x00000011 
+ 00011066  0x00001ae4 hstore  0x00000001 , 0x0000804f 
+ 00011067  0x00001ae5 jam  0x00000002 , 0x00008005 
+ 00011068  0x00001ae7 until  0x0000003e , 0x00000033 
+ 00011069  0x00001ae8 until  0x0000003e , 0x00000033 
+ 00011070  0x00001ae9 hstoret  0x00000004 , 0x0000804c 
+ 00011071  0x00001aea jam  0x00000010 , 0x00008005 
+ 00011072  0x00001aeb until  0x0000003e , 0x0000003f 
+ 00011073  0x00001af1 bpatch  0x000000a6 , 0x00004014 
+ 00011074  0x00001af2 setarg  0x00000000 
+ 00011075  0x00001af3 copy  0x00000027 , 0x0000003e 
+ 00011076  0x00001af4 branch  0x00002b4c , 0x00000005 
+ 00011077  0x00001af5 hfetch  0x00000001 , 0x0000813c 
+ 00011078  0x00001af6 hfetcht  0x00000001 , 0x0000813d 
+ 00011079  0x00001af7 isub  0x00000002 , 0x0000003e 
+ 00011080  0x00001af8 branch  0x00002b4a , 0x00000002 
+ 00011081  0x00001af9 deposit  0x00000002 
+ 00011082  0x00001afb isub  0x00000027 , 0x0000003f 
+ 00011083  0x00001afc increase  0x00000001 , 0x0000003f 
+ 00011084  0x00001afe increase  0x00000008 , 0x0000003f 
+ 00011085  0x00001aff until  0x0000003e , 0x00000033 
+ 00011086  0x00001b00 iadd  0x00000031 , 0x0000003f 
+ 00011087  0x00001b01 fetcht  0x00000004 , 0x0000415b 
+ 00011088  0x00001b02 iadd  0x00000002 , 0x0000003f 
+ 00011089  0x00001b03 fetcht  0x00000003 , 0x0000416f 
+ 00011090  0x00001b04 imul32  0x00000002 , 0x0000003f 
+ 00011091  0x00001b05 rshift8  0x0000003f , 0x0000003f 
+ 00011092  0x00001b06 rshift4  0x0000003f , 0x0000003f 
+ 00011093  0x00001b07 increase  0x0000006e , 0x0000003f 
+ 00011094  0x00001b08 arg  0x00000ea6 , 0x00000002 
+ 00011095  0x00001b09 idiv  0x00000002 
+ 00011096  0x00001b0a call  0x00007f86 
+ 00011097  0x00001b0b quotient  0x0000003f 
+ 00011098  0x00001b0c lshift16  0x0000003f , 0x0000003f 
+ 00011099  0x00001b0d remainder  0x00000002 
+ 00011100  0x00001b0e ior  0x00000002 , 0x0000003f 
+ 00011101  0x00001b0f fetcht  0x00000006 , 0x00004163 
+ 00011102  0x00001b10 call  0x00007f2c 
+ 00011103  0x00001b11 copy  0x00000002 , 0x00000019 
+ 00011104  0x00001b12 fetch  0x00000006 , 0x00004048 
+ 00011105  0x00001b13 call  0x00002854 
+ 00011106  0x00001b14 deposit  0x0000001a 
+ 00011107  0x00001b15 store  0x00000006 , 0x00000a9a 
+ 00011108  0x00001b16 deposit  0x00000027 
+ 00011109  0x00001b17 istore  0x00000001 , 0x00000005 
+ 00011110  0x00001b18 hfetch  0x00000001 , 0x0000811d 
+ 00011111  0x00001b19 or_into  0x000000f0 , 0x0000003f 
+ 00011112  0x00001b1a istore  0x00000001 , 0x00000005 
+ 00011113  0x00001b1b rtn 
+ 00011114  0x00001b1e bpatch  0x000000a7 , 0x00004014 
+ 00011115  0x00001b1f call  0x00002afa 
+ 00011116  0x00001b20 fetch  0x00000003 , 0x0000416f 
+ 00011117  0x00001b21 rtn  0x00000034 
+ 00011118  0x00001b22 fetch  0x00000001 , 0x00004091 
+ 00011119  0x00001b23 rtn  0x00000034 
+ 00011120  0x00001b24 fetch  0x00000001 , 0x0000465a 
+ 00011121  0x00001b25 branch  0x00002b74 , 0x00000034 
+ 00011122  0x00001b26 fetch  0x00000001 , 0x000045b1 
+ 00011123  0x00001b27 rtn  0x00000034 
+ 00011124  0x00001b29 fetch  0x00000001 , 0x000044c0 
+ 00011125  0x00001b2a nrtn  0x00000034 
+ 00011126  0x00001b2b call  0x00002c3a 
+ 00011127  0x00001b2c nrtn  0x00000034 
+ 00011128  0x00001b2d fetch  0x00000001 , 0x00004040 
+ 00011129  0x00001b2e compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00011130  0x00001b2f nbranch  0x00002b9d , 0x00000001 
+ 00011131  0x00001b30 fetch  0x00000002 , 0x00004042 
+ 00011132  0x00001b31 rtn  0x00000034 
+ 00011133  0x00001b32 rtn  0x0000002b 
+ 00011134  0x00001b33 bpatch  0x000000a8 , 0x00004015 
+ 00011135  0x00001b35 fetcht  0x00000001 , 0x000000a0 
+ 00011136  0x00001b36 fetch  0x00000002 , 0x00004042 
+ 00011137  0x00001b37 imul32  0x00000002 , 0x0000003f 
+ 00011138  0x00001b38 rshift4  0x00000002 , 0x00000002 
+ 00011139  0x00001b39 rshift2  0x00000002 , 0x00000002 
+ 00011140  0x00001b3a isub  0x00000002 , 0x0000003f 
+ 00011141  0x00001b3b fetcht  0x00000004 , 0x00004044 
+ 00011142  0x00001b3c iadd  0x00000002 , 0x0000003f 
+ 00011143  0x00001b3d fetcht  0x00000001 , 0x00004156 
+ 00011144  0x00001b3e isub  0x00000002 , 0x0000003f 
+ 00011145  0x00001b3f lshift16  0x0000003f , 0x00000030 
+ 00011146  0x00001b40 bpatch  0x000000a9 , 0x00004015 
+ 00011147  0x00001b41 fetch  0x00000002 , 0x0000404e 
+ 00011148  0x00001b42 rshift  0x0000003f , 0x0000003f 
+ 00011149  0x00001b43 call  0x00007f50 
+ 00011150  0x00001b44 deposit  0x00000030 
+ 00011151  0x00001b45 call  0x00007f39 
+ 00011152  0x00001b46 copy  0x0000001a , 0x00000002 
+ 00011153  0x00001b47 call  0x00007f37 
+ 00011154  0x00001b48 rtn  0x00000028 
+ 00011155  0x00001b4a call  0x00007f49 
+ 00011156  0x00001b4c bpatch  0x000000aa , 0x00004015 
+ 00011157  0x00001b4d fetch  0x00000001 , 0x00004178 
+ 00011158  0x00001b4e isub  0x00000002 , 0x0000003e 
+ 00011159  0x00001b4f branch  0x00002b18 , 0x00000002 
+ 00011160  0x00001b50 storet  0x00000004 , 0x0000415b 
+ 00011161  0x00001b51 call  0x00003328 
+ 00011162  0x00001b52 call  0x000052fb 
+ 00011163  0x00001b53 fetcht  0x00000004 , 0x0000415b 
+ 00011164  0x00001b54 branch  0x00002b2a 
+ 00011165  0x00001b57 bpatch  0x000000ab , 0x00004015 
+ 00011166  0x00001b58 fetch  0x00000001 , 0x00004040 
+ 00011167  0x00001b59 rtnbit1  0x00000000 
+ 00011168  0x00001b5a rtnbit1  0x00000003 
+ 00011169  0x00001b5b fetch  0x00000001 , 0x0000465a 
+ 00011170  0x00001b5c branch  0x00002ba5 , 0x00000034 
+ 00011171  0x00001b5d fetch  0x00000001 , 0x000045b1 
+ 00011172  0x00001b5e rtn  0x00000034 
+ 00011173  0x00001b60 bpatch  0x000000ac , 0x00004015 
+ 00011174  0x00001b61 fetch  0x00000001 , 0x0000436e 
+ 00011175  0x00001b62 nbranch  0x00002baa , 0x00000034 
+ 00011176  0x00001b63 fetch  0x00000001 , 0x00004093 
+ 00011177  0x00001b64 rtn  0x00000034 
+ 00011178  0x00001b66 fetch  0x00000002 , 0x00004154 
+ 00011179  0x00001b67 rtn  0x00000034 
+ 00011180  0x00001b69 fetcht  0x00000001 , 0x00004156 
+ 00011181  0x00001b6a isub  0x00000002 , 0x0000003f 
+ 00011182  0x00001b6b arg  0x00001d4c , 0x00000002 
+ 00011183  0x00001b6c imul32  0x00000002 , 0x0000003f 
+ 00011184  0x00001b6d branch  0x00002b93 
+ 00011185  0x00001b70 bpatch  0x000000ad , 0x00004015 
+ 00011186  0x00001b71 disable  0x0000002b 
+ 00011187  0x00001b72 fetch  0x00000001 , 0x00000030 
+ 00011188  0x00001b73 rtnbit0  0x00000001 
+ 00011189  0x00001b74 nbranch  0x00002bd0 , 0x0000002d 
+ 00011190  0x00001b75 call  0x00002bcb 
+ 00011191  0x00001b76 fetch  0x00000002 , 0x000040c1 
+ 00011192  0x00001b77 store  0x00000002 , 0x0000003e 
+ 00011193  0x00001b78 fetch  0x00000001 , 0x00000047 
+ 00011194  0x00001b79 bbit1  0x00000003 , 0x00002bde 
+ 00011195  0x00001b7a bmark0  0x0000000d , 0x00002bde 
+ 00011196  0x00001b7b call  0x00005274 
+ 00011197  0x00001b7c nbranch  0x00002bde , 0x00000034 
+ 00011198  0x00001b7d fetch  0x00000001 , 0x0000455c 
+ 00011199  0x00001b7e bbit1  0x00000001 , 0x00002bde 
+ 00011200  0x00001b80 jam  0x00000000 , 0x000000a0 
+ 00011201  0x00001b81 bmark0  0x0000000d , 0x00002bde 
+ 00011202  0x00001b82 fetch  0x00000001 , 0x00004174 
+ 00011203  0x00001b83 branch  0x00002be2 , 0x00000034 
+ 00011204  0x00001b84 increase  0xffffffff , 0x0000003f 
+ 00011205  0x00001b85 store  0x00000001 , 0x00004174 
+ 00011206  0x00001b86 rtn 
+ 00011207  0x00001b8a arg  0x00000001 , 0x00000007 
+ 00011208  0x00001b8b branch  0x000060cd 
+ 00011209  0x00001b8e arg  0x00000001 , 0x00000007 
+ 00011210  0x00001b8f branch  0x000060d1 
+ 00011211  0x00001b94 jam  0x00000000 , 0x00004159 
+ 00011212  0x00001b95 fetch  0x00000003 , 0x00004169 
+ 00011213  0x00001b96 increase  0x00000001 , 0x0000003f 
+ 00011214  0x00001b97 store  0x00000003 , 0x00004169 
+ 00011215  0x00001b98 rtn 
+ 00011216  0x00001b9b bpatch  0x000000ae , 0x00004015 
+ 00011217  0x00001b9c fetcht  0x00000002 , 0x000040c1 
+ 00011218  0x00001b9d rshift  0x00000002 , 0x00000002 
+ 00011219  0x00001b9e fetch  0x00000002 , 0x0000003e 
+ 00011220  0x00001b9f iadd  0x00000002 , 0x0000003f 
+ 00011221  0x00001ba0 store  0x00000002 , 0x0000003e 
+ 00011222  0x00001ba2 jam  0x00000000 , 0x000000a0 
+ 00011223  0x00001ba3 fetch  0x00000003 , 0x0000416c 
+ 00011224  0x00001ba4 increase  0x00000001 , 0x0000003f 
+ 00011225  0x00001ba5 store  0x00000003 , 0x0000416c 
+ 00011226  0x00001ba6 fetch  0x00000001 , 0x00004159 
+ 00011227  0x00001ba7 increase  0x00000001 , 0x0000003f 
+ 00011228  0x00001ba8 store  0x00000001 , 0x00004159 
+ 00011229  0x00001ba9 rtn 
+ 00011230  0x00001bac jam  0x00000000 , 0x000000a0 
+ 00011231  0x00001bad fetch  0x00000001 , 0x00004173 
+ 00011232  0x00001bae store  0x00000001 , 0x00004174 
+ 00011233  0x00001baf rtn 
+ 00011234  0x00001bb2 fetcht  0x00000001 , 0x00004172 
+ 00011235  0x00001bb3 storet  0x00000001 , 0x000000a0 
+ 00011236  0x00001bb4 rtn 
+ 00011237  0x00001bb7 bpatch  0x000000af , 0x00004015 
+ 00011238  0x00001bb8 fetch  0x00000001 , 0x00004178 
+ 00011239  0x00001bb9 nrtn  0x00000034 
+ 00011240  0x00001bba jam  0x00000006 , 0x00008042 
+ 00011241  0x00001bbb setarg  0x00000f0c 
+ 00011242  0x00001bbc call  0x00002c18 
+ 00011243  0x00001bbd setarg  0x00030d40 
+ 00011244  0x00001bbe call  0x00002a8f 
+ 00011245  0x00001bbf until  0x0000003e , 0x00000033 
+ 00011246  0x00001bc0 copy  0x00000031 , 0x00000030 
+ 00011247  0x00001bc1 call  0x000029e7 
+ 00011248  0x00001bc2 jam  0x00000004 , 0x00008042 
+ 00011249  0x00001bc3 nop  0x0000000a 
+ 00011250  0x00001bc4 until  0x0000003e , 0x00000033 
+ 00011251  0x00001bc5 deposit  0x00000031 
+ 00011252  0x00001bc6 isub  0x00000030 , 0x0000003f 
+ 00011253  0x00001bc7 increase  0x00000030 , 0x0000003f 
+ 00011254  0x00001bc8 arg  0x000000ff , 0x00000002 
+ 00011255  0x00001bc9 call  0x00007f91 
+ 00011256  0x00001bca store  0x00000001 , 0x00004178 
+ 00011257  0x00001bcb nop  0x00007530 
+ 00011258  0x00001bcc nop  0x00007530 
+ 00011259  0x00001bcd nop  0x00007530 
+ 00011260  0x00001bce rtn 
+ 00011261  0x00001bd1 fetch  0x00000001 , 0x00004178 
+ 00011262  0x00001bd2 nrtn  0x00000034 
+ 00011263  0x00001bd3 jam  0x000000ff , 0x00008044 
+ 00011264  0x00001bd4 jam  0x00000006 , 0x00008042 
+ 00011265  0x00001bd5 call  0x000029e7 
+ 00011266  0x00001bd6 setarg  0x000003e8 
+ 00011267  0x00001bd7 iadd  0x00000031 , 0x00000030 
+ 00011268  0x00001bd8 snooze 
+ 00011269  0x00001bd9 deposit  0x00000031 
+ 00011270  0x00001bda nop  0x00002ee0 
+ 00011271  0x00001bdb nop  0x00002ee0 
+ 00011272  0x00001bdc nop  0x00002ee0 
+ 00011273  0x00001bdd nop  0x00002ee0 
+ 00011274  0x00001bde nop  0x00002ee0 
+ 00011275  0x00001bdf nop  0x00002ee0 
+ 00011276  0x00001be0 nop  0x00002ee0 
+ 00011277  0x00001be1 nop  0x00002ee0 
+ 00011278  0x00001be2 nop  0x00002ee0 
+ 00011279  0x00001be3 isub  0x00000030 , 0x0000003f 
+ 00011280  0x00001be4 add  0x0000003f , 0x00000030 , 0x0000003f 
+ 00011281  0x00001be5 arg  0x000000ff , 0x00000002 
+ 00011282  0x00001be6 call  0x00007f91 
+ 00011283  0x00001be7 store  0x00000001 , 0x00004178 
+ 00011284  0x00001be8 nop  0x00007530 
+ 00011285  0x00001be9 nop  0x00007530 
+ 00011286  0x00001bea nop  0x00007530 
+ 00011287  0x00001beb rtn 
+ 00011288  0x00001bf1 arg  0x00000fff , 0x00000005 
+ 00011289  0x00001bf2 iand  0x00000005 , 0x00000005 
+ 00011290  0x00001bf3 fetch  0x00000001 , 0x00004175 
+ 00011291  0x00001bf4 and_into  0x000000f0 , 0x0000003f 
+ 00011292  0x00001bf5 lshift8  0x0000003f , 0x0000003f 
+ 00011293  0x00001bf6 ior  0x00000005 , 0x0000003f 
+ 00011294  0x00001bf7 hstore  0x00000002 , 0x0000804c 
+ 00011295  0x00001bf8 ifetch  0x00000002 , 0x00000006 
+ 00011296  0x00001bf9 istore  0x00000002 , 0x00000005 
+ 00011297  0x00001bfc setarg  0x00000001 
+ 00011298  0x00001bfd branch  0x00002c24 
+ 00011299  0x00001c00 setarg  0x00000002 
+ 00011300  0x00001c02 until  0x0000003e , 0x00000033 
+ 00011301  0x00001c03 hstore  0x00000001 , 0x00008005 
+ 00011302  0x00001c04 until  0x0000003e , 0x00000033 
+ 00011303  0x00001c05 until  0x0000003e , 0x00000033 
+ 00011304  0x00001c06 rtn 
+ 00011305  0x00001c0a bpatch  0x000000b0 , 0x00004016 
+ 00011306  0x00001c0b fetch  0x00000004 , 0x000000a1 
+ 00011307  0x00001c0c hstore  0x00000004 , 0x0000804c 
+ 00011308  0x00001c0d setarg  0x00000004 
+ 00011309  0x00001c0e call  0x00002c24 
+ 00011310  0x00001c0f fetch  0x00000004 , 0x000000a5 
+ 00011311  0x00001c10 hstore  0x00000004 , 0x0000804c 
+ 00011312  0x00001c11 setarg  0x00000008 
+ 00011313  0x00001c12 branch  0x00002c24 
+ 00011314  0x00001c15 fetch  0x00000002 , 0x00004152 
+ 00011315  0x00001c16 qset1  0x0000003f 
+ 00011316  0x00001c17 store  0x00000002 , 0x00004152 
+ 00011317  0x00001c18 rtn 
+ 00011318  0x00001c1b fetch  0x00000002 , 0x00004152 
+ 00011319  0x00001c1c qset0  0x0000003f 
+ 00011320  0x00001c1d store  0x00000002 , 0x00004152 
+ 00011321  0x00001c1e rtn 
+ 00011322  0x00001c23 bpatch  0x000000b1 , 0x00004016 
+ 00011323  0x00001c24 call  0x00003326 
+ 00011324  0x00001c25 fetch  0x00000002 , 0x00004152 
+ 00011325  0x00001c26 copy  0x0000003f , 0x00000011 
+ 00011326  0x00001c27 fetch  0x00000001 , 0x0000004c 
+ 00011327  0x00001c28 isolate1  0x00000006 , 0x0000003f 
+ 00011328  0x00001c29 setflag  0x00000001 , 0x0000000b , 0x00000011 
+ 00011329  0x00001c2a fetch  0x00000001 , 0x00000078 
+ 00011330  0x00001c2b fetcht  0x00000001 , 0x0000007c 
+ 00011331  0x00001c2c iadd  0x00000002 , 0x0000003f 
+ 00011332  0x00001c2d fetcht  0x00000001 , 0x00000048 
+ 00011333  0x00001c2e iadd  0x00000002 , 0x0000003f 
+ 00011334  0x00001c2f nsetflag  0x00000034 , 0x0000000a , 0x00000011 
+ 00011335  0x00001c30 fetch  0x00000001 , 0x000044ff 
+ 00011336  0x00001c31 nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00011337  0x00001c32 fetch  0x00000002 , 0x0000025d 
+ 00011338  0x00001c33 fetcht  0x00000002 , 0x0000025f 
+ 00011339  0x00001c34 iadd  0x00000002 , 0x0000003f 
+ 00011340  0x00001c35 nsetflag  0x00000034 , 0x0000000d , 0x00000011 
+ 00011341  0x00001c36 fetch  0x00000008 , 0x00004668 
+ 00011342  0x00001c37 nsetflag  0x00000034 , 0x0000000f , 0x00000011 
+ 00011343  0x00001c38 fetch  0x00000008 , 0x00004670 
+ 00011344  0x00001c39 nsetflag  0x00000034 , 0x0000000e , 0x00000011 
+ 00011345  0x00001c3a fetch  0x00000001 , 0x000041ce 
+ 00011346  0x00001c3b nsetflag  0x00000034 , 0x00000008 , 0x00000011 
+ 00011347  0x00001c3c fetch  0x00000001 , 0x00004092 
+ 00011348  0x00001c3d compare  0x0000000a , 0x0000003f , 0x000000ff 
+ 00011349  0x00001c3e call  0x00002c5b , 0x00000001 
+ 00011350  0x00001c3f setarg  0xfffffff8 
+ 00011351  0x00001c40 iand  0x00000011 , 0x00000011 
+ 00011352  0x00001c41 copy  0x00000011 , 0x0000003f 
+ 00011353  0x00001c42 store  0x00000002 , 0x00004152 
+ 00011354  0x00001c43 rtn 
+ 00011355  0x00001c46 hfetch  0x00000002 , 0x00008112 
+ 00011356  0x00001c47 nsetflag  0x00000034 , 0x00000006 , 0x00000011 
+ 00011357  0x00001c48 hfetch  0x00000002 , 0x0000810e 
+ 00011358  0x00001c49 nsetflag  0x00000034 , 0x00000005 , 0x00000011 
+ 00011359  0x00001c4a rtn 
+ 00011360  0x00001c4d hfetch  0x00000004 , 0x00008138 
+ 00011361  0x00001c4e set0  0x0000001b , 0x0000003f 
+ 00011362  0x00001c4f hstore  0x00000004 , 0x0000804c 
+ 00011363  0x00001c50 call  0x00002c21 
+ 00011364  0x00001c51 branch  0x00002a8c 
+ 00011365  0x00001c54 hfetch  0x00000004 , 0x0000813c 
+ 00011366  0x00001c55 set0  0x00000014 , 0x0000003f 
+ 00011367  0x00001c56 hstore  0x00000004 , 0x0000804c 
+ 00011368  0x00001c57 branch  0x00002c23 
+ 00011369  0x00001c5a fetch  0x00000002 , 0x00004150 
+ 00011370  0x00001c5b bbit1  0x00000000 , 0x00002a8c 
+ 00011371  0x00001c5c rtn 
+ 00011372  0x00001c5e fetch  0x00000002 , 0x00004150 
+ 00011373  0x00001c5f bbit1  0x00000001 , 0x00002a8c 
+ 00011374  0x00001c60 rtn 
+ 00011375  0x00001c62 fetch  0x00000002 , 0x00004150 
+ 00011376  0x00001c63 bbit1  0x00000002 , 0x00002a8c 
+ 00011377  0x00001c64 rtn 
+ 00011378  0x00001ca2 bpatch  0x000000b2 , 0x00004016 
+ 00011379  0x00001ca3 call  0x00002c7a 
+ 00011380  0x00001ca4 add  0x00000013 , 0x000000cd , 0x00000012 
+ 00011381  0x00001ca5 ifetch  0x00000001 , 0x00000012 
+ 00011382  0x00001ca7 rtneq  0x00000000 
+ 00011383  0x00001ca8 beq  0x00000001 , 0x00002d06 
+ 00011384  0x00001ca9 beq  0x00000002 , 0x00002c7f 
+ 00011385  0x00001caa rtn 
+ 00011386  0x00001cad fetcht  0x00000002 , 0x00004241 
+ 00011387  0x00001cae copy  0x00000002 , 0x00000013 
+ 00011388  0x00001caf rtn 
+ 00011389  0x00001cb2 call  0x00002f3d 
+ 00011390  0x00001cb3 branch  0x0000307d 
+ 00011391  0x00001cb6 call  0x00003084 
+ 00011392  0x00001cb7 call  0x0000305a 
+ 00011393  0x00001cb8 call  0x0000305e 
+ 00011394  0x00001cb9 branch  0x000030a2 
+ 00011395  0x00001cbf call  0x00003231 
+ 00011396  0x00001cc0 setarg  0x0000004e 
+ 00011397  0x00001cc1 call  0x0000322f 
+ 00011398  0x00001cc2 call  0x000032ba 
+ 00011399  0x00001cc5 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00011400  0x00001cc6 ifetch  0x00000004 , 0x00000011 
+ 00011401  0x00001cc7 branch  0x0000322c 
+ 00011402  0x00001cca call  0x00002c7a 
+ 00011403  0x00001ccb add  0x00000013 , 0x00000091 , 0x00000012 
+ 00011404  0x00001ccc ifetcht  0x00000001 , 0x00000012 
+ 00011405  0x00001cce call  0x00002c90 
+ 00011406  0x00001ccf add  0x00000013 , 0x00000091 , 0x00000005 
+ 00011407  0x00001cd1 branch  0x00002e56 
+ 00011408  0x00001cd4 call  0x00002c94 
+ 00011409  0x00001cd5 increase  0x00000001 , 0x00000002 
+ 00011410  0x00001cd6 and_into  0x00000003 , 0x00000002 
+ 00011411  0x00001cd7 rtn 
+ 00011412  0x00001cda add  0x00000013 , 0x000000ae , 0x00000012 
+ 00011413  0x00001cdb ifetch  0x00000001 , 0x00000012 
+ 00011414  0x00001cdd and_into  0x00000003 , 0x0000003f 
+ 00011415  0x00001cde mul32  0x0000003f , 0x00000004 , 0x00000011 
+ 00011416  0x00001cdf add  0x00000013 , 0x00000097 , 0x0000003f 
+ 00011417  0x00001ce1 iadd  0x00000011 , 0x0000003f 
+ 00011418  0x00001ce2 iadd  0x00000002 , 0x00000006 
+ 00011419  0x00001ce3 ifetch  0x00000001 , 0x00000006 
+ 00011420  0x00001ce5 branch  0x0000322f 
+ 00011421  0x00001ce8 call  0x0000326c 
+ 00011422  0x00001ce9 call  0x0000666a 
+ 00011423  0x00001cea setarg  0x000007e2 
+ 00011424  0x00001ceb arg  0x00000aa2 , 0x00000011 
+ 00011425  0x00001cec arg  0x00000004 , 0x00000002 
+ 00011426  0x00001ced call  0x000066b3 
+ 00011427  0x00001cee call  0x0000666d 
+ 00011428  0x00001cef fetch  0x00000004 , 0x00000aa2 
+ 00011429  0x00001cf0 call  0x00003227 
+ 00011430  0x00001cf2 nrtn  0x00000034 
+ 00011431  0x00001cf3 fetch  0x00000004 , 0x000040a0 
+ 00011432  0x00001cf5 branch  0x00003227 
+ 00011433  0x00001cf8 call  0x00003241 
+ 00011434  0x00001cfa setarg  0x00000000 
+ 00011435  0x00001cfb call  0x0000323f 
+ 00011436  0x00001cfe call  0x0000323a 
+ 00011437  0x00001d00 and_into  0x00000007 , 0x0000003f 
+ 00011438  0x00001d02 branch  0x0000323c 
+ 00011439  0x00001d05 call  0x0000323a 
+ 00011440  0x00001d07 set1  0x00000004 , 0x0000003f 
+ 00011441  0x00001d08 call  0x0000323c 
+ 00011442  0x00001d0b branch  0x00003235 
+ 00011443  0x00001d0e call  0x0000325d 
+ 00011444  0x00001d10 beq  0x00000001 , 0x00002cb7 
+ 00011445  0x00001d11 beq  0x00000002 , 0x00002cbc 
+ 00011446  0x00001d12 rtn 
+ 00011447  0x00001d15 call  0x0000323e 
+ 00011448  0x00001d18 add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011449  0x00001d19 call  0x000032d6 
+ 00011450  0x00001d1b call  0x00003242 
+ 00011451  0x00001d1d branch  0x00002cac 
+ 00011452  0x00001d20 call  0x0000325a 
+ 00011453  0x00001d22 branch  0x00002cb8 
+ 00011454  0x00001d25 add  0x00000013 , 0x0000008c , 0x00000011 
+ 00011455  0x00001d26 ifetch  0x00000001 , 0x00000011 
+ 00011456  0x00001d28 increase  0x00000001 , 0x0000003f 
+ 00011457  0x00001d29 add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011458  0x00001d2a istore  0x00000001 , 0x00000005 
+ 00011459  0x00001d2c beq  0x00000020 , 0x00002dd2 
+ 00011460  0x00001d2d call  0x00003258 
+ 00011461  0x00001d2f beq  0x00000001 , 0x00002cca 
+ 00011462  0x00001d30 setarg  0x00000001 
+ 00011463  0x00001d31 call  0x0000325b 
+ 00011464  0x00001d34 call  0x00003258 
+ 00011465  0x00001d36 bne  0x00000001 , 0x00002cac 
+ 00011466  0x00001d38 add  0x00000013 , 0x000000d3 , 0x00000011 
+ 00011467  0x00001d39 ifetch  0x00000001 , 0x00000011 
+ 00011468  0x00001d3b increase  0x00000001 , 0x0000003f 
+ 00011469  0x00001d3c call  0x00002cd5 
+ 00011470  0x00001d3e beq  0x00000004 , 0x00002cd2 
+ 00011471  0x00001d3f call  0x00002c8a 
+ 00011472  0x00001d40 call  0x00002d04 
+ 00011473  0x00001d42 branch  0x00002d8f 
+ 00011474  0x00001d45 call  0x00002cd4 
+ 00011475  0x00001d47 branch  0x00002cac 
+ 00011476  0x00001d4a setarg  0x00000000 
+ 00011477  0x00001d4c add  0x00000013 , 0x000000d3 , 0x00000005 
+ 00011478  0x00001d4d branch  0x000032b4 
+ 00011479  0x00001d50 call  0x0000323e 
+ 00011480  0x00001d53 call  0x0000325a 
+ 00011481  0x00001d55 call  0x00003241 
+ 00011482  0x00001d57 branch  0x00002cac 
+ 00011483  0x00001d5a call  0x0000325d 
+ 00011484  0x00001d5c beq  0x00000003 , 0x00002cd8 
+ 00011485  0x00001d5d call  0x0000323a 
+ 00011486  0x00001d5f isolate0  0x00000004 , 0x0000003f 
+ 00011487  0x00001d60 branch  0x00002ca9 , 0x00000001 
+ 00011488  0x00001d61 call  0x0000325d 
+ 00011489  0x00001d63 beq  0x00000001 , 0x00002cd7 
+ 00011490  0x00001d64 beq  0x00000002 , 0x00002cd8 
+ 00011491  0x00001d65 rtn 
+ 00011492  0x00001d68 call  0x00003253 
+ 00011493  0x00001d6a rtnne  0x000000ff 
+ 00011494  0x00001d6b call  0x00002ce9 
+ 00011495  0x00001d6c ncall  0x00002cf4 , 0x0000002c 
+ 00011496  0x00001d6d rtn 
+ 00011497  0x00001d70 disable  0x0000002c 
+ 00011498  0x00001d71 add  0x00000013 , 0x000000ce , 0x00000011 
+ 00011499  0x00001d72 ifetch  0x00000001 , 0x00000011 
+ 00011500  0x00001d74 rtnne  0x00000001 
+ 00011501  0x00001d75 add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011502  0x00001d76 ifetch  0x00000001 , 0x00000011 
+ 00011503  0x00001d78 rtnne  0x00000000 
+ 00011504  0x00001d79 setarg  0x00000001 
+ 00011505  0x00001d7a call  0x00002cfd 
+ 00011506  0x00001d7c call  0x00003237 
+ 00011507  0x00001d7e branch  0x00007feb 
+ 00011508  0x00001d81 add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011509  0x00001d82 ifetch  0x00000001 , 0x00000011 
+ 00011510  0x00001d84 branch  0x00002cff , 0x00000034 
+ 00011511  0x00001d85 increase  0xffffffff , 0x0000003f 
+ 00011512  0x00001d86 call  0x0000323f 
+ 00011513  0x00001d88 setarg  0x00000002 
+ 00011514  0x00001d89 call  0x00002cfd 
+ 00011515  0x00001d8b call  0x00002c8a 
+ 00011516  0x00001d8d branch  0x00003237 
+ 00011517  0x00001d90 add  0x00000013 , 0x000000d2 , 0x00000005 
+ 00011518  0x00001d91 branch  0x000032b4 
+ 00011519  0x00001d95 setarg  0x00000003 
+ 00011520  0x00001d96 call  0x00002cfd 
+ 00011521  0x00001d98 call  0x00003258 
+ 00011522  0x00001d9a nbranch  0x00002cc8 , 0x00000034 
+ 00011523  0x00001d9b call  0x00002c8a 
+ 00011524  0x00001d9e setarg  0x00000002 
+ 00011525  0x00001d9f branch  0x00003238 
+ 00011526  0x00001da2 rtnmark0  0x00000026 
+ 00011527  0x00001da3 set1  0x00000027 , 0x00000000 
+ 00011528  0x00001da4 bpatch  0x000000b3 , 0x00004016 
+ 00011529  0x00001da5 add  0x00000013 , 0x0000008e , 0x00000011 
+ 00011530  0x00001da6 ifetch  0x00000001 , 0x00000011 
+ 00011531  0x00001da8 beq  0x00000001 , 0x00002d0f 
+ 00011532  0x00001da9 call  0x0000306a 
+ 00011533  0x00001daa nbranch  0x00002d16 , 0x00000028 
+ 00011534  0x00001dab call  0x00002d1b 
+ 00011535  0x00001dad add  0x00000013 , 0x0000008e , 0x00000005 
+ 00011536  0x00001dae call  0x000032d6 
+ 00011537  0x00001db0 call  0x00002d2c 
+ 00011538  0x00001db1 nbranch  0x00002d7d , 0x00000028 
+ 00011539  0x00001db2 call  0x00002ce4 
+ 00011540  0x00001db4 call  0x00002d8f 
+ 00011541  0x00001db5 call  0x00002e7a 
+ 00011542  0x00001db7 set0  0x00000027 , 0x00000000 
+ 00011543  0x00001db8 rtn 
+ 00011544  0x00001dbb rtn  0x00000005 
+ 00011545  0x00001dbc set1  0x0000001c , 0x0000003f 
+ 00011546  0x00001dbd rtn 
+ 00011547  0x00001dc0 add  0x00000013 , 0x000000c2 , 0x00000011 
+ 00011548  0x00001dc1 ifetch  0x00000001 , 0x00000011 
+ 00011549  0x00001dc3 increase  0x00000001 , 0x0000003f 
+ 00011550  0x00001dc4 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011551  0x00001dc5 istore  0x00000001 , 0x00000005 
+ 00011552  0x00001dc7 beq  0x00000004 , 0x00002d23 
+ 00011553  0x00001dc8 beq  0x00000005 , 0x00002d27 
+ 00011554  0x00001dc9 rtn 
+ 00011555  0x00001dcb add  0x00000013 , 0x000000ad , 0x00000011 
+ 00011556  0x00001dcc ifetch  0x00000001 , 0x00000011 
+ 00011557  0x00001dd0 add  0x00000013 , 0x000000ab , 0x00000005 
+ 00011558  0x00001dd1 branch  0x000032b4 
+ 00011559  0x00001dd4 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011560  0x00001dd5 call  0x000032d6 
+ 00011561  0x00001dd7 add  0x00000013 , 0x000000ac , 0x00000011 
+ 00011562  0x00001dd8 ifetch  0x00000001 , 0x00000011 
+ 00011563  0x00001dda branch  0x00002d25 
+ 00011564  0x00001ddd call  0x00003253 
+ 00011565  0x00001ddf bne  0x000000ff , 0x00002eb1 
+ 00011566  0x00001de0 bpatch  0x000000b4 , 0x00004016 
+ 00011567  0x00001de1 call  0x00002d3a 
+ 00011568  0x00001de2 nbranch  0x00002d36 , 0x00000028 
+ 00011569  0x00001de3 call  0x00002d53 
+ 00011570  0x00001de4 call  0x00002e71 
+ 00011571  0x00001de7 setarg  0x00000001 
+ 00011572  0x00001de9 add  0x00000013 , 0x0000008b , 0x00000005 
+ 00011573  0x00001dea branch  0x000032b4 
+ 00011574  0x00001ded add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011575  0x00001dee ifetch  0x00000001 , 0x00000011 
+ 00011576  0x00001df0 beq  0x00000001 , 0x00007fe7 
+ 00011577  0x00001df1 rtn 
+ 00011578  0x00001df5 add  0x00000013 , 0x000000d8 , 0x00000002 
+ 00011579  0x00001df6 ifetch  0x00000002 , 0x00000002 
+ 00011580  0x00001df8 call  0x00007f9c 
+ 00011581  0x00001df9 nrtn  0x00000028 
+ 00011582  0x00001dfa copy  0x00000011 , 0x0000003f 
+ 00011583  0x00001dfb store  0x00000001 , 0x00000aae 
+ 00011584  0x00001dfc add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00011585  0x00001dfd call  0x000032d6 
+ 00011586  0x00001dff call  0x00002cac 
+ 00011587  0x00001e00 store  0x00000001 , 0x0000119e 
+ 00011588  0x00001e01 fetch  0x00000001 , 0x00000aae 
+ 00011589  0x00001e02 copy  0x0000003f , 0x00000011 
+ 00011590  0x00001e03 add  0x00000011 , 0x00000001 , 0x00000002 
+ 00011591  0x00001e04 arg  0x0000119f , 0x00000005 
+ 00011592  0x00001e05 copy  0x00000011 , 0x00000039 
+ 00011593  0x00001e06 copy  0x00000012 , 0x00000006 
+ 00011594  0x00001e07 call  0x00007f01 
+ 00011595  0x00001e08 arg  0x0000119e , 0x00000011 
+ 00011596  0x00001e0a rtnmark0  0x00000027 
+ 00011597  0x00001e0b add  0x00000013 , 0x00000086 , 0x00000005 
+ 00011598  0x00001e0c istoret  0x00000001 , 0x00000005 
+ 00011599  0x00001e0e copy  0x00000002 , 0x00000039 
+ 00011600  0x00001e0f add  0x00000013 , 0x00000022 , 0x00000005 
+ 00011601  0x00001e11 copy  0x00000011 , 0x00000006 
+ 00011602  0x00001e12 branch  0x00007f01 
+ 00011603  0x00001e16 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011604  0x00001e17 ifetch  0x00000001 , 0x00000011 
+ 00011605  0x00001e19 increase  0x00000002 , 0x0000003f 
+ 00011606  0x00001e1a add  0x00000013 , 0x00000088 , 0x00000005 
+ 00011607  0x00001e1b istore  0x00000001 , 0x00000005 
+ 00011608  0x00001e1e call  0x0000323a 
+ 00011609  0x00001e20 call  0x00003235 
+ 00011610  0x00001e23 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011611  0x00001e24 ifetch  0x00000001 , 0x00000011 
+ 00011612  0x00001e26 lshift3  0x0000003f , 0x0000003f 
+ 00011613  0x00001e27 add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011614  0x00001e28 ifetcht  0x00000001 , 0x00000011 
+ 00011615  0x00001e2a and  0x00000002 , 0x00000003 , 0x00000002 
+ 00011616  0x00001e2b lshift  0x00000002 , 0x00000002 
+ 00011617  0x00001e2c ior  0x00000002 , 0x0000003f 
+ 00011618  0x00001e2d add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011619  0x00001e2e ifetcht  0x00000001 , 0x00000011 
+ 00011620  0x00001e30 iadd  0x00000002 , 0x0000003f 
+ 00011621  0x00001e31 istore  0x00000001 , 0x00000005 
+ 00011622  0x00001e33 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011623  0x00001e34 ifetch  0x00000001 , 0x00000011 
+ 00011624  0x00001e36 iforce  0x00000039 
+ 00011625  0x00001e37 add  0x00000013 , 0x00000022 , 0x00000006 
+ 00011626  0x00001e39 branch  0x00007f01 
+ 00011627  0x00001e3c call  0x0000324f 
+ 00011628  0x00001e3e call  0x0000325a 
+ 00011629  0x00001e40 call  0x00002e6d 
+ 00011630  0x00001e41 call  0x00002cac 
+ 00011631  0x00001e42 store  0x00000001 , 0x0000119e 
+ 00011632  0x00001e43 call  0x00002d77 
+ 00011633  0x00001e44 call  0x0000323a 
+ 00011634  0x00001e46 set1  0x00000003 , 0x0000003f 
+ 00011635  0x00001e47 call  0x0000323c 
+ 00011636  0x00001e49 call  0x00002d53 
+ 00011637  0x00001e4a call  0x00002d33 
+ 00011638  0x00001e4b branch  0x00002d14 
+ 00011639  0x00001e4e store  0x00000001 , 0x0000119f 
+ 00011640  0x00001e4f call  0x00003224 
+ 00011641  0x00001e51 store  0x00000004 , 0x000011a0 
+ 00011642  0x00001e52 arg  0x00000006 , 0x00000002 
+ 00011643  0x00001e53 arg  0x0000119e , 0x00000011 
+ 00011644  0x00001e54 branch  0x00002d4c 
+ 00011645  0x00001e57 add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00011646  0x00001e58 ifetch  0x00000001 , 0x00000011 
+ 00011647  0x00001e5a branch  0x00002d6b , 0x00000034 
+ 00011648  0x00001e5d add  0x00000013 , 0x000000da , 0x00000011 
+ 00011649  0x00001e5e ifetch  0x00000002 , 0x00000011 
+ 00011650  0x00001e60 branch  0x00007f9c 
+ 00011651  0x00001e63 call  0x00002c7a 
+ 00011652  0x00001e65 call  0x00002afa 
+ 00011653  0x00001e66 fetch  0x00000003 , 0x0000416f 
+ 00011654  0x00001e67 rtn  0x00000034 
+ 00011655  0x00001e68 add  0x00000013 , 0x000000dc , 0x00000002 
+ 00011656  0x00001e69 ifetch  0x00000002 , 0x00000002 
+ 00011657  0x00001e6b call  0x00007f9c 
+ 00011658  0x00001e6c add  0x00000013 , 0x000000b6 , 0x00000002 
+ 00011659  0x00001e6d ifetch  0x00000008 , 0x00000002 
+ 00011660  0x00001e6e call  0x00007f49 
+ 00011661  0x00001e6f storet  0x00000004 , 0x0000415b 
+ 00011662  0x00001e70 branch  0x00002b2a 
+ 00011663  0x00001e73 call  0x00002c7a 
+ 00011664  0x00001e74 add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011665  0x00001e75 call  0x000032d6 
+ 00011666  0x00001e78 call  0x00002da4 
+ 00011667  0x00001e79 nbranch  0x00002dae , 0x00000018 
+ 00011668  0x00001e7a nbranch  0x00002dae , 0x0000002f 
+ 00011669  0x00001e7b call  0x00002dd6 
+ 00011670  0x00001e7c call  0x00002e75 
+ 00011671  0x00001e7e call  0x00002c7a 
+ 00011672  0x00001e7f add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011673  0x00001e80 ifetch  0x00000001 , 0x00000011 
+ 00011674  0x00001e82 increase  0x00000001 , 0x0000003f 
+ 00011675  0x00001e83 call  0x00003232 
+ 00011676  0x00001e85 call  0x00003253 
+ 00011677  0x00001e87 bne  0x000000ff , 0x00002ed0 
+ 00011678  0x00001e88 call  0x00002cdb 
+ 00011679  0x00001e8a setarg  0x00000000 
+ 00011680  0x00001e8b add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011681  0x00001e8c istore  0x00000002 , 0x00000005 
+ 00011682  0x00001e90 setarg  0x00000000 
+ 00011683  0x00001e91 branch  0x00002d34 
+ 00011684  0x00001e95 disable  0x0000002f 
+ 00011685  0x00001e96 call  0x00002df7 
+ 00011686  0x00001e97 call  0x00002c7a 
+ 00011687  0x00001e98 add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011688  0x00001e99 ifetch  0x00000001 , 0x00000011 
+ 00011689  0x00001e9b beq  0x00000001 , 0x00002dac 
+ 00011690  0x00001e9c call  0x00002e11 
+ 00011691  0x00001e9d branch  0x00002e45 
+ 00011692  0x00001e9f call  0x00002e45 
+ 00011693  0x00001ea0 branch  0x00002d97 
+ 00011694  0x00001ea4 bpatch  0x000000b5 , 0x00004016 
+ 00011695  0x00001ea5 add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011696  0x00001ea6 ifetch  0x00000001 , 0x00000011 
+ 00011697  0x00001ea8 increase  0x00000001 , 0x0000003f 
+ 00011698  0x00001ea9 add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011699  0x00001eaa istore  0x00000001 , 0x00000005 
+ 00011700  0x00001eac call  0x00003253 
+ 00011701  0x00001eae bne  0x000000ff , 0x00002dcc 
+ 00011702  0x00001eaf add  0x00000013 , 0x0000008f , 0x00000011 
+ 00011703  0x00001eb0 ifetcht  0x00000001 , 0x00000011 
+ 00011704  0x00001eb2 increase  0x00000001 , 0x00000002 
+ 00011705  0x00001eb3 add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011706  0x00001eb4 istoret  0x00000001 , 0x00000005 
+ 00011707  0x00001eb6 add  0x00000013 , 0x000000cc , 0x00000011 
+ 00011708  0x00001eb7 ifetch  0x00000001 , 0x00000011 
+ 00011709  0x00001eb9 isub  0x00000002 , 0x0000003f 
+ 00011710  0x00001eba nbranch  0x00002d92 , 0x00000034 
+ 00011711  0x00001ebb bpatch  0x000000b6 , 0x00004016 
+ 00011712  0x00001ebc call  0x0000325d 
+ 00011713  0x00001ebe beq  0x00000003 , 0x00002cbe 
+ 00011714  0x00001ebf add  0x00000013 , 0x000000d1 , 0x00000011 
+ 00011715  0x00001ec0 ifetch  0x00000001 , 0x00000011 
+ 00011716  0x00001ec2 increase  0x00000001 , 0x0000003f 
+ 00011717  0x00001ec3 add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011718  0x00001ec4 istore  0x00000001 , 0x00000005 
+ 00011719  0x00001ec6 beq  0x00000002 , 0x00002cb3 
+ 00011720  0x00001ec7 call  0x00002caf 
+ 00011721  0x00001ec8 setarg  0x00000001 
+ 00011722  0x00001ec9 call  0x00003238 
+ 00011723  0x00001ecb branch  0x00002d8f 
+ 00011724  0x00001ece add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011725  0x00001ecf ifetch  0x00000001 , 0x00000011 
+ 00011726  0x00001ed1 rtnne  0x000000ff 
+ 00011727  0x00001ed2 add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011728  0x00001ed3 call  0x000032d6 
+ 00011729  0x00001ed5 branch  0x00002dd4 
+ 00011730  0x00001ed8 add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011731  0x00001ed9 call  0x000032d6 
+ 00011732  0x00001edc jam  0x0000003a , 0x00000a99 
+ 00011733  0x00001edd branch  0x00007d86 
+ 00011734  0x00001ee0 call  0x00002dde 
+ 00011735  0x00001ee1 add  0x00000013 , 0x00000084 , 0x00000011 
+ 00011736  0x00001ee2 ifetch  0x00000001 , 0x00000011 
+ 00011737  0x00001ee4 rtn  0x00000034 
+ 00011738  0x00001ee5 iforce  0x00000039 
+ 00011739  0x00001ee6 add  0x00000013 , 0x00000002 , 0x00000006 
+ 00011740  0x00001ee8 add  0x00000013 , 0x00000064 , 0x00000005 
+ 00011741  0x00001eea branch  0x00007f01 
+ 00011742  0x00001eef call  0x0000325f 
+ 00011743  0x00001ef1 rshift3  0x0000003f , 0x0000003f 
+ 00011744  0x00001ef2 add  0x00000013 , 0x00000084 , 0x00000005 
+ 00011745  0x00001ef3 istore  0x00000001 , 0x00000005 
+ 00011746  0x00001ef6 increase  0x00000001 , 0x0000003f 
+ 00011747  0x00001ef7 add  0x00000013 , 0x00000001 , 0x00000006 
+ 00011748  0x00001ef9 iadd  0x00000006 , 0x00000006 
+ 00011749  0x00001efa ifetch  0x00000003 , 0x00000006 
+ 00011750  0x00001efb add  0x00000013 , 0x000000c4 , 0x00000005 
+ 00011751  0x00001efc istore  0x00000003 , 0x00000005 
+ 00011752  0x00001eff call  0x0000325f 
+ 00011753  0x00001f01 rshift  0x0000003f , 0x0000003f 
+ 00011754  0x00001f02 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00011755  0x00001f03 add  0x00000013 , 0x000000ca , 0x00000005 
+ 00011756  0x00001f04 istore  0x00000001 , 0x00000005 
+ 00011757  0x00001f06 rtn 
+ 00011758  0x00001f09 disable  0x00000009 
+ 00011759  0x00001f0a disable  0x00000007 
+ 00011760  0x00001f0b setarg  0x00555555 
+ 00011761  0x00001f0c iforce  0x0000000f 
+ 00011762  0x00001f0d rtn 
+ 00011763  0x00001f10 call  0x00002918 
+ 00011764  0x00001f11 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011765  0x00001f12 ifetcht  0x00000001 , 0x00000011 
+ 00011766  0x00001f14 branch  0x00002933 
+ 00011767  0x00001f17 call  0x00002dee 
+ 00011768  0x00001f18 call  0x00002df3 
+ 00011769  0x00001f19 set1  0x00000000 , 0x00000015 
+ 00011770  0x00001f1a enable  0x0000001d 
+ 00011771  0x00001f1b enable  0x00000020 
+ 00011772  0x00001f1c disable  0x00000021 
+ 00011773  0x00001f1d call  0x000053c4 
+ 00011774  0x00001f1e call  0x0000322a 
+ 00011775  0x00001f20 iforce  0x00000009 
+ 00011776  0x00001f21 inject  0x00000003 , 0x00000020 
+ 00011777  0x00001f22 enable  0x00000009 
+ 00011778  0x00001f23 add  0x00000013 , 0x00000088 , 0x00000011 
+ 00011779  0x00001f24 ifetch  0x00000001 , 0x00000011 
+ 00011780  0x00001f26 iforce  0x00000039 
+ 00011781  0x00001f27 add  0x00000013 , 0x00000042 , 0x00000006 
+ 00011782  0x00001f2a ifetch  0x00000001 , 0x00000006 
+ 00011783  0x00001f2b inject  0x00000003 , 0x00000008 
+ 00011784  0x00001f2c loop  0x00002e06 
+ 00011785  0x00001f2d enable  0x00000008 
+ 00011786  0x00001f2e inject  0x00000003 , 0x00000018 
+ 00011787  0x00001f2f disable  0x00000008 
+ 00011788  0x00001f30 until  0x0000003e , 0x00000027 
+ 00011789  0x00001f31 bpatch  0x000000b7 , 0x00004016 
+ 00011790  0x00001f32 nop  0x00000064 
+ 00011791  0x00001f33 disable  0x0000001d 
+ 00011792  0x00001f34 rtn 
+ 00011793  0x00001f37 disable  0x0000002f 
+ 00011794  0x00001f38 force  0x00000000 , 0x00000015 
+ 00011795  0x00001f39 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011796  0x00001f3a ifetcht  0x00000001 , 0x00000011 
+ 00011797  0x00001f3c call  0x0000291f 
+ 00011798  0x00001f3d call  0x00002924 
+ 00011799  0x00001f3f call  0x00002dee 
+ 00011800  0x00001f40 enable  0x0000000d 
+ 00011801  0x00001f41 enable  0x00000021 
+ 00011802  0x00001f42 disable  0x00000020 
+ 00011803  0x00001f43 call  0x000053c4 
+ 00011804  0x00001f44 call  0x0000322a 
+ 00011805  0x00001f46 iforce  0x00000009 
+ 00011806  0x00001f47 enable  0x00000010 
+ 00011807  0x00001f48 add  0x00000013 , 0x00000089 , 0x00000011 
+ 00011808  0x00001f49 ifetch  0x00000002 , 0x00000011 
+ 00011809  0x00001f4b iforce  0x0000001b 
+ 00011810  0x00001f4c correlate  0x0000003e , 0x00000003 
+ 00011811  0x00001f4d nbranch  0x00002e4d , 0x00000018 
+ 00011812  0x00001f4e enable  0x00000009 
+ 00011813  0x00001f4f parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011814  0x00001f50 rshift3  0x0000000c , 0x0000003f 
+ 00011815  0x00001f51 add  0x00000013 , 0x00000000 , 0x00000005 
+ 00011816  0x00001f52 istore  0x00000001 , 0x00000005 
+ 00011817  0x00001f54 add  0x00000013 , 0x000000cd , 0x00000011 
+ 00011818  0x00001f55 ifetch  0x00000001 , 0x00000011 
+ 00011819  0x00001f57 beq  0x00000002 , 0x00002e33 
+ 00011820  0x00001f58 bpatch  0x000000b8 , 0x00004017 
+ 00011821  0x00001f59 add  0x00000013 , 0x00000000 , 0x00000011 
+ 00011822  0x00001f5a ifetch  0x00000001 , 0x00000011 
+ 00011823  0x00001f5c add  0x00000013 , 0x00000087 , 0x00000011 
+ 00011824  0x00001f5d ifetcht  0x00000001 , 0x00000011 
+ 00011825  0x00001f5f icompare  0x00000007 , 0x00000002 
+ 00011826  0x00001f60 nbranch  0x00002e45 , 0x00000001 
+ 00011827  0x00001f62 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011828  0x00001f63 rshift3  0x0000000c , 0x0000003f 
+ 00011829  0x00001f64 istore  0x00000001 , 0x00000005 
+ 00011830  0x00001f65 rshift3  0x0000003f , 0x0000003f 
+ 00011831  0x00001f66 and  0x0000003f , 0x0000001f , 0x00000039 
+ 00011832  0x00001f67 branch  0x00002e3d , 0x00000005 
+ 00011833  0x00001f69 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011834  0x00001f6a rshift3  0x0000000c , 0x0000003f 
+ 00011835  0x00001f6b istore  0x00000001 , 0x00000005 
+ 00011836  0x00001f6c loop  0x00002e39 
+ 00011837  0x00001f6e parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00011838  0x00001f6f rshift32  0x0000003f , 0x0000003f 
+ 00011839  0x00001f70 rshift16  0x0000003f , 0x0000003f 
+ 00011840  0x00001f71 istore  0x00000003 , 0x00000005 
+ 00011841  0x00001f72 branch  0x00002e45 , 0x00000006 
+ 00011842  0x00001f73 enable  0x0000002f 
+ 00011843  0x00001f74 disable  0x0000000d 
+ 00011844  0x00001f75 rtn 
+ 00011845  0x00001f79 disable  0x0000001d 
+ 00011846  0x00001f7a disable  0x0000000d 
+ 00011847  0x00001f7b disable  0x00000009 
+ 00011848  0x00001f7c disable  0x00000007 
+ 00011849  0x00001f7d branch  0x000028f9 , 0x00000021 
+ 00011850  0x00001f7e until  0x0000003e , 0x00000027 
+ 00011851  0x00001f7f nop  0x00000064 
+ 00011852  0x00001f80 branch  0x000028f9 
+ 00011853  0x00001f83 call  0x00002e4f 
+ 00011854  0x00001f84 branch  0x00002e45 
+ 00011855  0x00001f87 call  0x000029bb 
+ 00011856  0x00001f88 rtn  0x00000034 
+ 00011857  0x00001f89 add  0x00000013 , 0x000000ea , 0x00000011 
+ 00011858  0x00001f8a ifetcht  0x00000001 , 0x00000011 
+ 00011859  0x00001f8c arg  0x00000d9e , 0x00000011 
+ 00011860  0x00001f8e call  0x00002e58 
+ 00011861  0x00001f8f add  0x00000013 , 0x000000ea , 0x00000005 
+ 00011862  0x00001f92 istoret  0x00000001 , 0x00000005 
+ 00011863  0x00001f93 rtn 
+ 00011864  0x00001f96 arg  0x000000ff , 0x00000012 
+ 00011865  0x00001f97 branch  0x00002e5a 
+ 00011866  0x00001faa copy  0x00000011 , 0x0000003f 
+ 00011867  0x00001fab iadd  0x00000002 , 0x00000005 
+ 00011868  0x00001fac fetch  0x00000001 , 0x00000018 
+ 00011869  0x00001fad istore  0x00000001 , 0x00000005 
+ 00011870  0x00001fae increase  0x00000001 , 0x00000002 
+ 00011871  0x00001faf copy  0x00000012 , 0x0000003f 
+ 00011872  0x00001fb0 iand_into  0x00000002 
+ 00011873  0x00001fb1 rtn 
+ 00011874  0x00001fb4 arg  0x00000000 , 0x00000002 
+ 00011875  0x00001fb5 copy  0x00000011 , 0x00000006 
+ 00011876  0x00001fb7 ifetch  0x00000001 , 0x00000006 
+ 00011877  0x00001fb8 iadd  0x00000002 , 0x00000002 
+ 00011878  0x00001fb9 loop  0x00002e64 
+ 00011879  0x00001fba rshift8  0x00000002 , 0x00000002 
+ 00011880  0x00001fbb rtn 
+ 00011881  0x00001fbe call  0x00002c7a 
+ 00011882  0x00001fbf call  0x00002e9f 
+ 00011883  0x00001fc0 setarg  0x00000001 
+ 00011884  0x00001fc1 call  0x00003272 
+ 00011885  0x00001fc4 setarg  0x00000000 
+ 00011886  0x00001fc5 call  0x00002e73 
+ 00011887  0x00001fc7 istore  0x00000001 , 0x00000005 
+ 00011888  0x00001fc9 rtn 
+ 00011889  0x00001fcc call  0x00003270 
+ 00011890  0x00001fce increase  0x00000001 , 0x0000003f 
+ 00011891  0x00001fd1 add  0x00000013 , 0x000000fc , 0x00000005 
+ 00011892  0x00001fd2 branch  0x000032b4 
+ 00011893  0x00001fd7 add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011894  0x00001fd8 ifetch  0x00000001 , 0x00000011 
+ 00011895  0x00001fd9 increase  0x00000001 , 0x0000003f 
+ 00011896  0x00001fda add  0x00000013 , 0x000000fd , 0x00000005 
+ 00011897  0x00001fdb branch  0x000032b4 
+ 00011898  0x00001fde bpatch  0x000000b9 , 0x00004017 
+ 00011899  0x00001fdf call  0x00003270 
+ 00011900  0x00001fe1 sub  0x0000003f , 0x0000007c , 0x0000003e 
+ 00011901  0x00001fe2 rtn  0x00000002 
+ 00011902  0x00001fe3 add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011903  0x00001fe4 ifetcht  0x00000001 , 0x00000011 
+ 00011904  0x00001fe6 isub  0x00000002 , 0x00000002 
+ 00011905  0x00001fe7 call  0x00002e6d 
+ 00011906  0x00001fe8 setarg  0x00000102 
+ 00011907  0x00001fe9 iadd  0x00000013 , 0x00000011 
+ 00011908  0x00001fea ifetch  0x00000001 , 0x00000011 
+ 00011909  0x00001fec isub  0x00000002 , 0x0000003e 
+ 00011910  0x00001fed nbranch  0x00002e8d , 0x00000002 
+ 00011911  0x00001fee setarg  0x00000103 
+ 00011912  0x00001fef iadd  0x00000013 , 0x00000011 
+ 00011913  0x00001ff0 ifetch  0x00000001 , 0x00000011 
+ 00011914  0x00001ff2 isub  0x00000002 , 0x0000003e 
+ 00011915  0x00001ff3 branch  0x00002e99 , 0x00000002 
+ 00011916  0x00001ff4 rtn 
+ 00011917  0x00001ff7 add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011918  0x00001ff8 ifetch  0x00000001 , 0x00000011 
+ 00011919  0x00001ffa beq  0x00000002 , 0x00002e93 
+ 00011920  0x00001ffb increase  0x00000001 , 0x0000003f 
+ 00011921  0x00001ffc call  0x00003272 
+ 00011922  0x00001ffe beq  0x00000001 , 0x00002e9f 
+ 00011923  0x00002000 setarg  0x0000000a 
+ 00011924  0x00002001 call  0x000032b0 
+ 00011925  0x00002003 setarg  0x00000000 
+ 00011926  0x00002004 call  0x000032b2 
+ 00011927  0x00002007 add  0x00000013 , 0x000000ff , 0x00000011 
+ 00011928  0x00002009 branch  0x00002ea5 
+ 00011929  0x0000200c add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011930  0x0000200d ifetch  0x00000001 , 0x00000011 
+ 00011931  0x0000200f beq  0x00000000 , 0x00002ea7 
+ 00011932  0x00002010 increase  0xffffffff , 0x0000003f 
+ 00011933  0x00002011 call  0x00003272 
+ 00011934  0x00002013 beq  0x00000000 , 0x00002ea7 
+ 00011935  0x00002018 setarg  0x00000005 
+ 00011936  0x00002019 call  0x000032b0 
+ 00011937  0x0000201b setarg  0x00000000 
+ 00011938  0x0000201c call  0x000032b2 
+ 00011939  0x0000201f setarg  0x00000100 
+ 00011940  0x00002021 iadd  0x00000013 , 0x00000011 
+ 00011941  0x00002023 ifetch  0x00000001 , 0x00000011 
+ 00011942  0x00002025 branch  0x0000326a 
+ 00011943  0x0000202a setarg  0x00000002 
+ 00011944  0x0000202b call  0x000032b0 
+ 00011945  0x0000202d setarg  0x00000000 
+ 00011946  0x0000202e call  0x000032b2 
+ 00011947  0x00002031 setarg  0x00000101 
+ 00011948  0x00002033 branch  0x00002ea4 
+ 00011949  0x00002042 set1  0x00000026 , 0x00000000 
+ 00011950  0x00002043 call  0x00002c83 
+ 00011951  0x00002046 setarg  0x00000001 
+ 00011952  0x00002047 branch  0x00003256 
+ 00011953  0x0000204a add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011954  0x0000204b ifetch  0x00000001 , 0x00000011 
+ 00011955  0x0000204d beq  0x00000001 , 0x00007fe7 
+ 00011956  0x0000204e call  0x00003253 
+ 00011957  0x00002050 beq  0x00000001 , 0x00002eb9 
+ 00011958  0x00002051 beq  0x00000002 , 0x00002ebd 
+ 00011959  0x00002052 beq  0x00000003 , 0x00002ec1 
+ 00011960  0x00002053 branch  0x00002a8c 
+ 00011961  0x00002056 setarg  0x00000011 
+ 00011962  0x00002057 call  0x00003256 
+ 00011963  0x00002059 jam  0x000000aa , 0x0000119e 
+ 00011964  0x0000205a branch  0x00002ec4 
+ 00011965  0x0000205c setarg  0x00000012 
+ 00011966  0x0000205d call  0x00003256 
+ 00011967  0x0000205f jam  0x00000055 , 0x0000119e 
+ 00011968  0x00002060 branch  0x00002ec4 
+ 00011969  0x00002062 setarg  0x00000013 
+ 00011970  0x00002063 call  0x00003256 
+ 00011971  0x00002065 jam  0x00000022 , 0x0000119e 
+ 00011972  0x00002067 call  0x0000323a 
+ 00011973  0x00002069 and_into  0x00000007 , 0x0000003f 
+ 00011974  0x0000206a store  0x00000001 , 0x0000119f 
+ 00011975  0x0000206b call  0x00003224 
+ 00011976  0x0000206d store  0x00000004 , 0x000011a0 
+ 00011977  0x0000206f jam  0x00000000 , 0x000011a4 
+ 00011978  0x00002070 arg  0x0000119e , 0x00000011 
+ 00011979  0x00002071 arg  0x00000007 , 0x00000002 
+ 00011980  0x00002072 call  0x00002d4c 
+ 00011981  0x00002073 call  0x00002d53 
+ 00011982  0x00002074 call  0x00002d33 
+ 00011983  0x00002075 branch  0x00007fe7 
+ 00011984  0x00002078 call  0x00003253 
+ 00011985  0x0000207a rtneq  0x000000ff 
+ 00011986  0x0000207b beq  0x00000011 , 0x00002ed6 
+ 00011987  0x0000207c beq  0x00000012 , 0x00002ed9 
+ 00011988  0x0000207d beq  0x00000013 , 0x00002edc 
+ 00011989  0x0000207e rtn 
+ 00011990  0x00002081 setarg  0x00000002 
+ 00011991  0x00002082 call  0x00003256 
+ 00011992  0x00002084 branch  0x00002d9f 
+ 00011993  0x00002086 setarg  0x00000003 
+ 00011994  0x00002087 call  0x00003256 
+ 00011995  0x00002089 branch  0x00002d9f 
+ 00011996  0x0000208b setarg  0x000000ff 
+ 00011997  0x0000208c call  0x00003256 
+ 00011998  0x0000208e jam  0x00000039 , 0x00000a99 
+ 00011999  0x0000208f call  0x00007d86 
+ 00012000  0x00002090 add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012001  0x00002091 ifetch  0x00000004 , 0x00000011 
+ 00012002  0x00002093 call  0x0000322c 
+ 00012003  0x00002095 branch  0x00002d9f 
+ 00012004  0x00002098 set0  0x00000026 , 0x00000000 
+ 00012005  0x00002099 call  0x00002f08 
+ 00012006  0x0000209a call  0x00002f22 
+ 00012007  0x0000209c call  0x00003263 
+ 00012008  0x0000209e nop  0x000007d0 
+ 00012009  0x0000209f call  0x00003261 
+ 00012010  0x000020a0 beq  0x000000ff , 0x00002dd4 
+ 00012011  0x000020a1 call  0x00002da4 
+ 00012012  0x000020a2 nbranch  0x00002efa , 0x00000018 
+ 00012013  0x000020a3 nbranch  0x00002efa , 0x0000002f 
+ 00012014  0x000020a4 call  0x00002dd6 
+ 00012015  0x000020a5 call  0x00002c7a 
+ 00012016  0x000020a6 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00012017  0x000020a7 ifetcht  0x00000004 , 0x00000011 
+ 00012018  0x000020a8 call  0x000030be 
+ 00012019  0x000020a9 branch  0x00002ead , 0x00000005 
+ 00012020  0x000020aa call  0x00002c7a 
+ 00012021  0x000020ab add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012022  0x000020ac ifetch  0x00000004 , 0x00000011 
+ 00012023  0x000020ad beq  0x00000000 , 0x00002ee7 
+ 00012024  0x000020ae call  0x0000322c 
+ 00012025  0x000020af branch  0x00002f1c 
+ 00012026  0x000020b2 call  0x00003261 
+ 00012027  0x000020b3 increase  0x00000001 , 0x0000003f 
+ 00012028  0x000020b4 call  0x00003264 
+ 00012029  0x000020b6 call  0x00002f04 
+ 00012030  0x000020b7 increase  0x00000001 , 0x0000003f 
+ 00012031  0x000020b8 and_into  0x00000001 , 0x0000003f 
+ 00012032  0x000020b9 call  0x00002f06 
+ 00012033  0x000020ba beq  0x00000000 , 0x00002f0c 
+ 00012034  0x000020bb beq  0x00000001 , 0x00002f0e 
+ 00012035  0x000020bc rtn 
+ 00012036  0x000020bf setarg  0x0000018b 
+ 00012037  0x000020c0 branch  0x000032d0 
+ 00012038  0x000020c2 arg  0x0000018b , 0x00000011 
+ 00012039  0x000020c3 branch  0x000032b3 
+ 00012040  0x000020c6 call  0x00003267 
+ 00012041  0x000020c7 call  0x00003224 
+ 00012042  0x000020c8 call  0x0000322c 
+ 00012043  0x000020c9 branch  0x00002c8a 
+ 00012044  0x000020cc call  0x00002f08 
+ 00012045  0x000020cd branch  0x00002ee8 
+ 00012046  0x000020d0 call  0x00002c83 
+ 00012047  0x000020d1 branch  0x00002ee8 
+ 00012048  0x000020d5 set0  0x00000026 , 0x00000000 
+ 00012049  0x000020d6 call  0x00002c8a 
+ 00012050  0x000020d7 call  0x00003253 
+ 00012051  0x000020d9 rtnne  0x000000ff 
+ 00012052  0x000020da call  0x00002f22 
+ 00012053  0x000020db call  0x00003263 
+ 00012054  0x000020de nop  0x000007d0 
+ 00012055  0x000020df call  0x00003261 
+ 00012056  0x000020e1 beq  0x000000ff , 0x00002dd4 
+ 00012057  0x000020e2 call  0x00002da4 
+ 00012058  0x000020e3 nbranch  0x00002f27 , 0x00000018 
+ 00012059  0x000020e4 nbranch  0x00002f27 , 0x0000002f 
+ 00012060  0x000020e6 set1  0x00000026 , 0x00000000 
+ 00012061  0x000020e7 call  0x00003263 
+ 00012062  0x000020e8 setarg  0x000000ff 
+ 00012063  0x000020e9 call  0x00003256 
+ 00012064  0x000020ec jam  0x0000003c , 0x00000a99 
+ 00012065  0x000020ed branch  0x00007d86 
+ 00012066  0x000020f0 set1  0x00000027 , 0x00000000 
+ 00012067  0x000020f1 jam  0x000000ff , 0x0000119e 
+ 00012068  0x000020f2 call  0x0000323a 
+ 00012069  0x000020f4 call  0x00002d77 
+ 00012070  0x000020f5 branch  0x00002d53 
+ 00012071  0x000020f8 call  0x00003261 
+ 00012072  0x000020fa increase  0x00000001 , 0x0000003f 
+ 00012073  0x000020fb call  0x00003264 
+ 00012074  0x000020fd call  0x00002c8a 
+ 00012075  0x000020fe branch  0x00002f16 
+ 00012076  0x00002101 call  0x00003267 
+ 00012077  0x00002104 setarg  0x000000ff 
+ 00012078  0x00002105 call  0x00003256 
+ 00012079  0x00002107 branch  0x00002f10 
+ 00012080  0x00002111 bpatch  0x000000ba , 0x00004017 
+ 00012081  0x00002112 call  0x00002c7a 
+ 00012082  0x00002113 setarg  0x000031b0 
+ 00012083  0x00002114 add  0x00000013 , 0x000000de , 0x00000005 
+ 00012084  0x00002115 istore  0x00000002 , 0x00000005 
+ 00012085  0x00002117 call  0x00002f3d 
+ 00012086  0x00002118 call  0x000048ea 
+ 00012087  0x00002119 call  0x000032b6 
+ 00012088  0x0000211b bpatch  0x000000bb , 0x00004017 
+ 00012089  0x0000211c beq  0x00000000 , 0x00003055 
+ 00012090  0x0000211d beq  0x00000001 , 0x00002f45 
+ 00012091  0x0000211e beq  0x0000000f , 0x00002f41 
+ 00012092  0x0000211f branch  0x00002a8c 
+ 00012093  0x00002122 call  0x0000326c 
+ 00012094  0x00002123 arg  0x00000080 , 0x00000039 
+ 00012095  0x00002124 arg  0x00000d9e , 0x00000005 
+ 00012096  0x00002125 branch  0x00007ec6 
+ 00012097  0x00002128 call  0x00002f4c 
+ 00012098  0x0000212a call  0x00002f4f 
+ 00012099  0x0000212b call  0x000048d3 
+ 00012100  0x0000212c branch  0x00002f42 
+ 00012101  0x0000212f bpatch  0x000000bc , 0x00004017 
+ 00012102  0x00002130 call  0x00002f4c 
+ 00012103  0x00002132 call  0x00002f4f 
+ 00012104  0x00002133 call  0x00002fbd 
+ 00012105  0x00002134 call  0x000048d3 
+ 00012106  0x00002135 call  0x00003019 
+ 00012107  0x00002136 branch  0x00002f47 
+ 00012108  0x0000213c call  0x00003291 
+ 00012109  0x0000213d call  0x00003296 
+ 00012110  0x0000213e branch  0x00003299 
+ 00012111  0x00002141 call  0x0000328f 
+ 00012112  0x00002143 rtnne  0x00000000 
+ 00012113  0x00002145 call  0x00002f55 
+ 00012114  0x00002146 call  0x00002f65 
+ 00012115  0x00002147 call  0x0000316b 
+ 00012116  0x00002148 branch  0x00002f96 
+ 00012117  0x0000214b call  0x00003294 
+ 00012118  0x0000214d rtnbit1  0x00000000 
+ 00012119  0x0000214e set1  0x00000000 , 0x0000003f 
+ 00012120  0x0000214f call  0x00003297 
+ 00012121  0x00002151 call  0x00003267 
+ 00012122  0x00002154 call  0x00003299 
+ 00012123  0x00002156 jam  0x00000000 , 0x00000d38 
+ 00012124  0x00002157 call  0x0000324f 
+ 00012125  0x00002159 call  0x00002f61 
+ 00012126  0x0000215b add  0x00000013 , 0x00000000 , 0x00000005 
+ 00012127  0x0000215d arg  0x00000042 , 0x00000039 
+ 00012128  0x0000215e branch  0x00007ed4 
+ 00012129  0x00002161 call  0x00003231 
+ 00012130  0x00002163 call  0x0000327d 
+ 00012131  0x00002165 call  0x0000322c 
+ 00012132  0x00002167 branch  0x00002c8a 
+ 00012133  0x0000216a bpatch  0x000000bd , 0x00004017 
+ 00012134  0x0000216b call  0x0000324c 
+ 00012135  0x0000216d beq  0x00000001 , 0x00002f8d 
+ 00012136  0x0000216e call  0x00003245 
+ 00012137  0x00002170 beq  0x00000001 , 0x00002c8a 
+ 00012138  0x00002171 setarg  0x00000136 
+ 00012139  0x00002172 iadd  0x00000013 , 0x00000011 
+ 00012140  0x00002173 ifetcht  0x00000004 , 0x00000011 
+ 00012141  0x00002175 copy  0x00000022 , 0x0000003f 
+ 00012142  0x00002176 isub  0x00000002 , 0x0000003e 
+ 00012143  0x00002177 ncall  0x00002d18 , 0x00000002 
+ 00012144  0x00002178 copy  0x0000003f , 0x00000012 
+ 00012145  0x00002179 setarg  0x00000136 
+ 00012146  0x0000217a iadd  0x00000013 , 0x00000011 
+ 00012147  0x0000217b ifetch  0x00000004 , 0x00000011 
+ 00012148  0x0000217c copy  0x0000003f , 0x00000002 
+ 00012149  0x0000217e setarg  0x0000013a 
+ 00012150  0x0000217f iadd  0x00000013 , 0x00000011 
+ 00012151  0x00002180 copy  0x00000002 , 0x0000003f 
+ 00012152  0x00002181 ifetcht  0x00000001 , 0x00000011 
+ 00012153  0x00002183 iadd  0x00000002 , 0x00000002 
+ 00012154  0x00002184 copy  0x00000012 , 0x0000003f 
+ 00012155  0x00002185 isub  0x00000002 , 0x0000003e 
+ 00012156  0x00002186 nrtn  0x00000002 
+ 00012157  0x00002187 set0  0x0000001c , 0x0000003f 
+ 00012158  0x00002188 setarg  0x00000136 
+ 00012159  0x00002189 iadd  0x00000013 , 0x00000005 
+ 00012160  0x0000218a istore  0x00000004 , 0x00000005 
+ 00012161  0x0000218d call  0x00002c8a 
+ 00012162  0x0000218e call  0x00003278 
+ 00012163  0x00002190 increase  0x00000001 , 0x0000003f 
+ 00012164  0x00002191 call  0x0000327b 
+ 00012165  0x00002193 rtnne  0x00000002 
+ 00012166  0x00002194 call  0x0000327a 
+ 00012167  0x00002198 branch  0x0000324f 
+ 00012168  0x0000219b copy  0x00000022 , 0x0000003f 
+ 00012169  0x0000219c arg  0x00000136 , 0x00000011 
+ 00012170  0x0000219d call  0x000032bf 
+ 00012171  0x0000219e istore  0x00000004 , 0x00000005 
+ 00012172  0x000021a2 branch  0x0000327a 
+ 00012173  0x000021a5 arg  0x00000d9e , 0x00000011 
+ 00012174  0x000021a6 call  0x00002f94 
+ 00012175  0x000021a7 add  0x00000013 , 0x000000eb , 0x00000005 
+ 00012176  0x000021a8 istoret  0x00000001 , 0x00000005 
+ 00012177  0x000021aa sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012178  0x000021ab nrtn  0x00000002 
+ 00012179  0x000021ac branch  0x00002c8a 
+ 00012180  0x000021af arg  0x00000100 , 0x00000039 
+ 00012181  0x000021b0 branch  0x00002e62 
+ 00012182  0x000021b3 call  0x00002f99 
+ 00012183  0x000021b4 call  0x00002fa5 
+ 00012184  0x000021b5 branch  0x00002fb1 
+ 00012185  0x000021b8 setarg  0x00000180 
+ 00012186  0x000021b9 call  0x000032d0 
+ 00012187  0x000021bb rtn  0x00000034 
+ 00012188  0x000021bc arg  0x0000000b , 0x00000007 
+ 00012189  0x000021bd call  0x00007f16 
+ 00012190  0x000021be nrtn  0x00000034 
+ 00012191  0x000021bf call  0x000032a7 
+ 00012192  0x000021c2 setarg  0x00000001 
+ 00012193  0x000021c3 store  0x00000001 , 0x00000d54 
+ 00012194  0x000021c4 setarg  0x00000000 
+ 00012195  0x000021c5 istore  0x00000007 , 0x00000005 
+ 00012196  0x000021c6 branch  0x000031b8 
+ 00012197  0x000021c9 setarg  0x0000017e 
+ 00012198  0x000021ca call  0x000032d0 
+ 00012199  0x000021cc rtn  0x00000034 
+ 00012200  0x000021cd arg  0x0000000e , 0x00000007 
+ 00012201  0x000021ce call  0x00007f16 
+ 00012202  0x000021cf nrtn  0x00000034 
+ 00012203  0x000021d0 call  0x000032aa 
+ 00012204  0x000021d3 arg  0x00000d64 , 0x00000005 
+ 00012205  0x000021d4 arg  0x00000002 , 0x00000039 
+ 00012206  0x000021d5 call  0x00007ec6 
+ 00012207  0x000021d6 jam  0x00000000 , 0x00000d64 
+ 00012208  0x000021d7 branch  0x000031ed 
+ 00012209  0x000021da setarg  0x0000017f 
+ 00012210  0x000021db call  0x000032d0 
+ 00012211  0x000021dd rtn  0x00000034 
+ 00012212  0x000021de arg  0x0000000c , 0x00000007 
+ 00012213  0x000021df call  0x00007f16 
+ 00012214  0x000021e0 nrtn  0x00000034 
+ 00012215  0x000021e1 call  0x000032ad 
+ 00012216  0x000021e4 arg  0x00000d74 , 0x00000005 
+ 00012217  0x000021e5 arg  0x00000002 , 0x00000039 
+ 00012218  0x000021e6 call  0x00007ec6 
+ 00012219  0x000021e7 jam  0x00000003 , 0x00000d74 
+ 00012220  0x000021e8 branch  0x00003207 
+ 00012221  0x000021eb call  0x0000328f 
+ 00012222  0x000021ed rtnne  0x00000001 
+ 00012223  0x000021ee call  0x00002fc1 
+ 00012224  0x000021ef branch  0x00002fcb 
+ 00012225  0x000021f2 call  0x00003294 
+ 00012226  0x000021f4 rtnbit1  0x00000001 
+ 00012227  0x000021f5 set1  0x00000001 , 0x0000003f 
+ 00012228  0x000021f6 call  0x00003297 
+ 00012229  0x000021f8 call  0x0000329c 
+ 00012230  0x000021fa call  0x00002c83 
+ 00012231  0x000021fb setarg  0x00000000 
+ 00012232  0x000021fc arg  0x00000106 , 0x00000011 
+ 00012233  0x000021fd call  0x000032bf 
+ 00012234  0x000021ff branch  0x000032c5 
+ 00012235  0x00002202 call  0x0000316e 
+ 00012236  0x00002203 nbranch  0x00002f5e , 0x0000002f 
+ 00012237  0x00002204 add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012238  0x00002205 setarg  0x00000109 
+ 00012239  0x00002206 iadd  0x00000013 , 0x00000005 
+ 00012240  0x00002207 arg  0x00000008 , 0x00000039 
+ 00012241  0x00002208 call  0x00007f01 
+ 00012242  0x00002209 setarg  0x0000010b 
+ 00012243  0x0000220a call  0x000032d0 
+ 00012244  0x0000220b beq  0x000000aa , 0x00002fd9 
+ 00012245  0x0000220c beq  0x00000055 , 0x00002fed 
+ 00012246  0x0000220d beq  0x00000022 , 0x00003001 
+ 00012247  0x0000220e beq  0x000000ff , 0x00003212 
+ 00012248  0x0000220f branch  0x00002f5e 
+ 00012249  0x00002212 call  0x000032bd 
+ 00012250  0x00002213 beq  0x00000001 , 0x00002fdd 
+ 00012251  0x00002214 beq  0x00000002 , 0x00002fe8 
+ 00012252  0x00002215 rtn 
+ 00012253  0x00002217 setarg  0x00000001 
+ 00012254  0x00002218 call  0x00002ff7 
+ 00012255  0x0000221b setarg  0x00000001 
+ 00012256  0x0000221c call  0x00003289 
+ 00012257  0x0000221f setarg  0x00000080 
+ 00012258  0x00002220 arg  0x00000130 , 0x00000011 
+ 00012259  0x00002221 call  0x000032b3 
+ 00012260  0x00002223 call  0x0000327d 
+ 00012261  0x00002225 arg  0x00000131 , 0x00000011 
+ 00012262  0x00002226 call  0x000032bf 
+ 00012263  0x00002228 branch  0x0000322d 
+ 00012264  0x0000222b setarg  0x00000001 
+ 00012265  0x0000222c call  0x00002fff 
+ 00012266  0x0000222f setarg  0x00000002 
+ 00012267  0x00002230 call  0x00003289 
+ 00012268  0x00002232 branch  0x00002fe1 
+ 00012269  0x00002235 call  0x000032bd 
+ 00012270  0x00002236 beq  0x00000001 , 0x00002ff1 
+ 00012271  0x00002237 beq  0x00000002 , 0x00002ff9 
+ 00012272  0x00002238 rtn 
+ 00012273  0x0000223a call  0x00002fdf 
+ 00012274  0x0000223b setarg  0x00000106 
+ 00012275  0x0000223c call  0x000032d0 
+ 00012276  0x0000223e beq  0x00000001 , 0x00002ff6 
+ 00012277  0x0000223f rtn 
+ 00012278  0x00002241 setarg  0x00000002 
+ 00012279  0x00002244 arg  0x00000106 , 0x00000011 
+ 00012280  0x00002245 branch  0x000032b3 
+ 00012281  0x00002248 call  0x00002fea 
+ 00012282  0x00002249 setarg  0x00000107 
+ 00012283  0x0000224a call  0x000032d0 
+ 00012284  0x0000224c beq  0x00000001 , 0x00002ffe 
+ 00012285  0x0000224d rtn 
+ 00012286  0x0000224f setarg  0x00000002 
+ 00012287  0x00002252 arg  0x00000107 , 0x00000011 
+ 00012288  0x00002253 branch  0x000032b3 
+ 00012289  0x00002256 call  0x000032bd 
+ 00012290  0x00002257 beq  0x00000001 , 0x00003005 
+ 00012291  0x00002258 beq  0x00000002 , 0x00003011 
+ 00012292  0x00002259 rtn 
+ 00012293  0x0000225b setarg  0x00000106 
+ 00012294  0x0000225c call  0x000032d0 
+ 00012295  0x0000225e beq  0x00000002 , 0x00003009 
+ 00012296  0x0000225f rtn 
+ 00012297  0x00002261 call  0x0000328b 
+ 00012298  0x00002263 or_into  0x00000001 , 0x0000003f 
+ 00012299  0x00002264 call  0x0000328d 
+ 00012300  0x00002267 setarg  0x00000000 
+ 00012301  0x00002268 setarg  0x00000106 
+ 00012302  0x00002269 iadd  0x00000013 , 0x00000005 
+ 00012303  0x0000226a istore  0x00000002 , 0x00000005 
+ 00012304  0x0000226b branch  0x00002f5e 
+ 00012305  0x0000226e setarg  0x00000107 
+ 00012306  0x0000226f call  0x000032d0 
+ 00012307  0x00002271 bne  0x00000000 , 0x00003015 
+ 00012308  0x00002272 rtn 
+ 00012309  0x00002274 call  0x0000328b 
+ 00012310  0x00002276 or_into  0x00000002 , 0x0000003f 
+ 00012311  0x00002277 call  0x0000328d 
+ 00012312  0x00002279 branch  0x0000300c 
+ 00012313  0x0000227d fetch  0x00000001 , 0x00000d50 
+ 00012314  0x0000227e rtn  0x00000034 
+ 00012315  0x0000227f jam  0x00000000 , 0x00000d50 
+ 00012316  0x00002280 fetch  0x00000002 , 0x00000d4e 
+ 00012317  0x00002281 arg  0x000002ba , 0x00000002 
+ 00012318  0x00002282 isub  0x00000002 , 0x0000003e 
+ 00012319  0x00002283 nrtn  0x00000005 
+ 00012320  0x00002285 fetch  0x00000001 , 0x00000cb6 
+ 00012321  0x00002286 rtnne  0x000000ba 
+ 00012322  0x00002287 fetch  0x00000001 , 0x00000cb7 
+ 00012323  0x00002288 bpatch  0x000000be , 0x00004017 
+ 00012324  0x00002289 beq  0x000000a0 , 0x0000303b 
+ 00012325  0x0000228a beq  0x000000a1 , 0x0000302c 
+ 00012326  0x0000228b beq  0x000000a6 , 0x00003041 
+ 00012327  0x0000228c beq  0x000000a7 , 0x00003043 
+ 00012328  0x0000228d beq  0x000000a9 , 0x00003049 
+ 00012329  0x0000228e beq  0x000000b0 , 0x0000304d 
+ 00012330  0x00002290 jam  0x00000000 , 0x00000d42 
+ 00012331  0x00002291 rtn 
+ 00012332  0x00002293 fetch  0x00000001 , 0x00000cb8 
+ 00012333  0x00002294 beq  0x00000001 , 0x00003031 
+ 00012334  0x00002295 beq  0x00000084 , 0x00003034 
+ 00012335  0x00002296 beq  0x000000a7 , 0x00003039 
+ 00012336  0x00002297 branch  0x0000302a 
+ 00012337  0x00002299 call  0x0000328b 
+ 00012338  0x0000229b store  0x00000001 , 0x00000cf7 
+ 00012339  0x0000229c branch  0x0000303f 
+ 00012340  0x0000229e call  0x00003291 
+ 00012341  0x000022a0 call  0x00003296 
+ 00012342  0x000022a2 call  0x0000328b 
+ 00012343  0x000022a4 store  0x00000001 , 0x00000cf7 
+ 00012344  0x000022a5 branch  0x0000303f 
+ 00012345  0x000022a9 jam  0x000000a1 , 0x00000cf7 
+ 00012346  0x000022aa branch  0x0000303f 
+ 00012347  0x000022ad fetch  0x00000001 , 0x00000cb8 
+ 00012348  0x000022ae beq  0x00000081 , 0x0000303e 
+ 00012349  0x000022b0 branch  0x0000302a 
+ 00012350  0x000022b4 call  0x00003090 
+ 00012351  0x000022b6 jam  0x00000001 , 0x00000d42 
+ 00012352  0x000022b7 rtn 
+ 00012353  0x000022bd jam  0x00000015 , 0x00000cf7 
+ 00012354  0x000022be branch  0x0000303f 
+ 00012355  0x000022c1 call  0x0000328f 
+ 00012356  0x000022c3 beq  0x00000000 , 0x00003047 
+ 00012357  0x000022c4 beq  0x00000001 , 0x00003039 
+ 00012358  0x000022c6 rtn 
+ 00012359  0x000022c8 jam  0x000000a0 , 0x00000cf7 
+ 00012360  0x000022c9 branch  0x0000303f 
+ 00012361  0x000022cf jam  0x00000000 , 0x00000cf7 
+ 00012362  0x000022d0 jam  0x00000000 , 0x00000cf8 
+ 00012363  0x000022d1 jam  0x00000001 , 0x00000cf9 
+ 00012364  0x000022d2 branch  0x0000303f 
+ 00012365  0x000022d6 call  0x0000329c 
+ 00012366  0x000022d7 fetch  0x00000001 , 0x00000cb8 
+ 00012367  0x000022d8 increase  0x00000002 , 0x0000003f 
+ 00012368  0x000022d9 copy  0x0000003f , 0x00000039 
+ 00012369  0x000022da arg  0x00000cb6 , 0x00000006 
+ 00012370  0x000022db setarg  0x0000013c 
+ 00012371  0x000022dc iadd  0x00000013 , 0x00000005 
+ 00012372  0x000022dd branch  0x00007f01 
+ 00012373  0x000022e1 bpatch  0x000000bf , 0x00004017 
+ 00012374  0x000022e2 call  0x0000307d 
+ 00012375  0x000022e4 call  0x00002c7f 
+ 00012376  0x000022e5 call  0x000048d3 
+ 00012377  0x000022e6 branch  0x00003057 
+ 00012378  0x000022e9 call  0x0000328f 
+ 00012379  0x000022eb rtnne  0x00000000 
+ 00012380  0x000022ec call  0x00002f51 
+ 00012381  0x000022ed branch  0x00003098 
+ 00012382  0x000022f0 call  0x0000328f 
+ 00012383  0x000022f2 rtnne  0x00000001 
+ 00012384  0x000022f3 call  0x00002fc1 
+ 00012385  0x000022f4 call  0x00002fcb 
+ 00012386  0x000022f5 call  0x0000328b 
+ 00012387  0x000022f7 rtn  0x00000034 
+ 00012388  0x000022f8 call  0x00003286 
+ 00012389  0x000022fa call  0x00002f4c 
+ 00012390  0x000022fb call  0x00003093 
+ 00012391  0x000022fd setarg  0x00000000 
+ 00012392  0x000022fe add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012393  0x00002300 branch  0x0000322d 
+ 00012394  0x00002303 call  0x00007fe9 
+ 00012395  0x00002304 add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012396  0x00002305 ifetcht  0x00000004 , 0x00000011 
+ 00012397  0x00002307 copy  0x00000022 , 0x0000003f 
+ 00012398  0x00002308 isub  0x00000002 , 0x0000003e 
+ 00012399  0x00002309 ncall  0x00002d18 , 0x00000002 
+ 00012400  0x0000230a copy  0x0000003f , 0x00000012 
+ 00012401  0x0000230b add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012402  0x0000230c ifetch  0x00000004 , 0x00000011 
+ 00012403  0x0000230e add  0x00000013 , 0x000000ab , 0x00000011 
+ 00012404  0x0000230f ifetcht  0x00000001 , 0x00000011 
+ 00012405  0x00002311 iadd  0x00000002 , 0x00000002 
+ 00012406  0x00002312 copy  0x00000012 , 0x0000003f 
+ 00012407  0x00002313 isub  0x00000002 , 0x0000003e 
+ 00012408  0x00002314 nrtn  0x00000002 
+ 00012409  0x00002315 set0  0x0000001c , 0x0000003f 
+ 00012410  0x00002316 add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012411  0x00002317 istore  0x00000004 , 0x00000005 
+ 00012412  0x00002319 branch  0x00007fe7 
+ 00012413  0x0000231c setarg  0x00000001 
+ 00012414  0x0000231d call  0x00003287 
+ 00012415  0x0000231f call  0x00003283 
+ 00012416  0x00002321 setarg  0x000000ff 
+ 00012417  0x00002322 add  0x00000013 , 0x000000ab , 0x00000005 
+ 00012418  0x00002323 istore  0x00000001 , 0x00000005 
+ 00012419  0x00002325 branch  0x00003067 
+ 00012420  0x00002328 setarg  0x0000015c 
+ 00012421  0x00002329 call  0x000032d0 
+ 00012422  0x0000232b rtn  0x00000034 
+ 00012423  0x0000232c call  0x0000306a 
+ 00012424  0x0000232d nrtn  0x00000028 
+ 00012425  0x0000232e call  0x00003281 
+ 00012426  0x00002330 increase  0x00000001 , 0x0000003f 
+ 00012427  0x00002331 and_into  0x00000001 , 0x0000003f 
+ 00012428  0x00002332 call  0x00003284 
+ 00012429  0x00002334 beq  0x00000000 , 0x00002f4c 
+ 00012430  0x00002335 beq  0x00000001 , 0x00003090 
+ 00012431  0x00002336 rtn 
+ 00012432  0x0000233c setarg  0x00000001 
+ 00012433  0x0000233d call  0x00003292 
+ 00012434  0x0000233e branch  0x00003296 
+ 00012435  0x00002341 setarg  0x00000001 
+ 00012436  0x00002342 call  0x000032a5 
+ 00012437  0x00002345 setarg  0x00000280 
+ 00012438  0x00002346 arg  0x00000008 , 0x00000007 
+ 00012439  0x00002347 branch  0x00007f08 
+ 00012440  0x0000234a call  0x000032a2 
+ 00012441  0x0000234c rtn  0x00000034 
+ 00012442  0x0000234d arg  0x00000008 , 0x00000007 
+ 00012443  0x0000234e call  0x00007f16 
+ 00012444  0x0000234f nrtn  0x00000034 
+ 00012445  0x00002350 call  0x000032a4 
+ 00012446  0x00002353 setarg  0x00000007 
+ 00012447  0x00002354 call  0x00003292 
+ 00012448  0x00002356 call  0x00003296 
+ 00012449  0x00002358 branch  0x00002f5e 
+ 00012450  0x0000235b bpatch  0x000000c0 , 0x00004018 
+ 00012451  0x0000235c call  0x0000328f 
+ 00012452  0x0000235e rtnne  0x00000007 
+ 00012453  0x0000235f call  0x000030cb 
+ 00012454  0x00002360 call  0x000030e0 
+ 00012455  0x00002361 call  0x0000316e 
+ 00012456  0x00002362 nbranch  0x00002f5e , 0x0000002f 
+ 00012457  0x00002364 call  0x000030bc 
+ 00012458  0x00002365 call  0x00003172 , 0x00000005 
+ 00012459  0x00002369 call  0x00002f4c 
+ 00012460  0x0000236a call  0x00003294 
+ 00012461  0x0000236c set1  0x00000000 , 0x0000003f 
+ 00012462  0x0000236d call  0x00003297 
+ 00012463  0x0000236f call  0x00002f5e 
+ 00012464  0x00002370 call  0x00003093 
+ 00012465  0x00002371 call  0x000030bc 
+ 00012466  0x00002372 branch  0x000030c1 , 0x00000005 
+ 00012467  0x00002373 setarg  0x00000164 
+ 00012468  0x00002374 call  0x000032d3 
+ 00012469  0x00002376 call  0x000030be 
+ 00012470  0x00002377 branch  0x000030c5 , 0x00000005 
+ 00012471  0x00002378 setarg  0x00000160 
+ 00012472  0x00002379 call  0x000032d3 
+ 00012473  0x0000237b call  0x000030be 
+ 00012474  0x0000237c branch  0x000030c8 , 0x00000005 
+ 00012475  0x0000237d rtn 
+ 00012476  0x00002380 setarg  0x0000012b 
+ 00012477  0x00002381 call  0x000032d3 
+ 00012478  0x00002384 call  0x0000322a 
+ 00012479  0x00002386 isub  0x00000002 , 0x0000003e 
+ 00012480  0x00002387 rtn 
+ 00012481  0x0000238a setarg  0x00000182 
+ 00012482  0x0000238b call  0x000032d0 
+ 00012483  0x0000238f add  0x00000013 , 0x00000091 , 0x00000005 
+ 00012484  0x00002390 branch  0x000032b4 
+ 00012485  0x00002393 setarg  0x00000185 
+ 00012486  0x00002394 call  0x000032d0 
+ 00012487  0x00002396 branch  0x000030c3 
+ 00012488  0x00002398 setarg  0x00000188 
+ 00012489  0x00002399 call  0x000032d0 
+ 00012490  0x0000239b branch  0x000030c3 
+ 00012491  0x0000239e call  0x00003294 
+ 00012492  0x000023a0 rtnbit1  0x00000007 
+ 00012493  0x000023a1 set1  0x00000007 , 0x0000003f 
+ 00012494  0x000023a2 call  0x00003297 
+ 00012495  0x000023a4 call  0x00003283 
+ 00012496  0x000023a6 call  0x0000329c 
+ 00012497  0x000023a8 setarg  0x00000000 
+ 00012498  0x000023a9 add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012499  0x000023aa istore  0x00000003 , 0x00000005 
+ 00012500  0x000023ac arg  0x00000183 , 0x00000011 
+ 00012501  0x000023ad call  0x000032bf 
+ 00012502  0x000023ae istore  0x00000007 , 0x00000005 
+ 00012503  0x000023b1 call  0x000030bc 
+ 00012504  0x000023b2 nrtn  0x00000005 
+ 00012505  0x000023b3 add  0x00000013 , 0x00000091 , 0x00000011 
+ 00012506  0x000023b4 ifetch  0x00000001 , 0x00000011 
+ 00012507  0x000023b6 arg  0x00000182 , 0x00000011 
+ 00012508  0x000023b7 call  0x000032b3 
+ 00012509  0x000023b9 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00012510  0x000023ba ifetch  0x00000001 , 0x00000011 
+ 00012511  0x000023bd branch  0x0000314a 
+ 00012512  0x000023c0 bpatch  0x000000c1 , 0x00004018 
+ 00012513  0x000023c1 call  0x00003281 
+ 00012514  0x000023c3 increase  0x00000001 , 0x0000003f 
+ 00012515  0x000023c4 and_into  0x00000003 , 0x0000003f 
+ 00012516  0x000023c5 call  0x00003284 
+ 00012517  0x000023c8 beq  0x00000000 , 0x0000310e 
+ 00012518  0x000023c9 beq  0x00000001 , 0x00003132 
+ 00012519  0x000023ca beq  0x00000002 , 0x000030ea 
+ 00012520  0x000023cb beq  0x00000003 , 0x00003132 
+ 00012521  0x000023cc rtn 
+ 00012522  0x000023cf call  0x00002fdf 
+ 00012523  0x000023d0 setarg  0x00000160 
+ 00012524  0x000023d1 call  0x0000327e 
+ 00012525  0x000023d3 branch  0x000030e0 , 0x00000034 
+ 00012526  0x000023d4 call  0x0000322c 
+ 00012527  0x000023d6 setarg  0x00000189 
+ 00012528  0x000023d7 call  0x000032d0 
+ 00012529  0x000023d9 call  0x00003108 , 0x00000034 
+ 00012530  0x000023da setarg  0x00000187 
+ 00012531  0x000023db call  0x000032d0 
+ 00012532  0x000023dd call  0x0000322f 
+ 00012533  0x000023df add  0x00000013 , 0x000000f7 , 0x00000011 
+ 00012534  0x000023e0 ifetcht  0x00000001 , 0x00000011 
+ 00012535  0x000023e2 arg  0x00000f9e , 0x00000011 
+ 00012536  0x000023e3 call  0x00002e58 
+ 00012537  0x000023e4 add  0x00000013 , 0x000000f7 , 0x00000005 
+ 00012538  0x000023e5 istoret  0x00000001 , 0x00000005 
+ 00012539  0x000023e7 call  0x00002f94 
+ 00012540  0x000023e8 add  0x00000013 , 0x000000fa , 0x00000005 
+ 00012541  0x000023e9 istoret  0x00000001 , 0x00000005 
+ 00012542  0x000023eb sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012543  0x000023ec nrtn  0x00000002 
+ 00012544  0x000023ed setarg  0x00000188 
+ 00012545  0x000023ee call  0x00003275 
+ 00012546  0x000023f0 call  0x00002c90 
+ 00012547  0x000023f1 arg  0x00000188 , 0x00000011 
+ 00012548  0x000023f2 call  0x000032c8 
+ 00012549  0x000023f3 istoret  0x00000001 , 0x00000005 
+ 00012550  0x000023f7 arg  0x00000187 , 0x00000011 
+ 00012551  0x000023f8 branch  0x000032b3 
+ 00012552  0x000023fb setarg  0x00000001 
+ 00012553  0x000023fc arg  0x00000189 , 0x00000011 
+ 00012554  0x000023fd call  0x000032b3 
+ 00012555  0x000023ff arg  0x00000000 , 0x00000002 
+ 00012556  0x00002400 call  0x00002c94 
+ 00012557  0x00002403 branch  0x00003106 
+ 00012558  0x00002406 call  0x00002fea 
+ 00012559  0x00002407 setarg  0x00000164 
+ 00012560  0x00002408 call  0x0000327e 
+ 00012561  0x0000240a branch  0x000030e0 , 0x00000034 
+ 00012562  0x0000240b call  0x0000322c 
+ 00012563  0x0000240d setarg  0x00000186 
+ 00012564  0x0000240e call  0x000032d0 
+ 00012565  0x00002410 call  0x0000312c , 0x00000034 
+ 00012566  0x00002411 setarg  0x00000184 
+ 00012567  0x00002412 call  0x000032d0 
+ 00012568  0x00002414 call  0x0000322f 
+ 00012569  0x00002416 add  0x00000013 , 0x000000f6 , 0x00000011 
+ 00012570  0x00002417 ifetcht  0x00000001 , 0x00000011 
+ 00012571  0x00002419 arg  0x0000109e , 0x00000011 
+ 00012572  0x0000241a call  0x00002e58 
+ 00012573  0x0000241b add  0x00000013 , 0x000000f6 , 0x00000005 
+ 00012574  0x0000241c istoret  0x00000001 , 0x00000005 
+ 00012575  0x0000241e call  0x00002f94 
+ 00012576  0x0000241f add  0x00000013 , 0x000000f9 , 0x00000005 
+ 00012577  0x00002420 istoret  0x00000001 , 0x00000005 
+ 00012578  0x00002422 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012579  0x00002423 nrtn  0x00000002 
+ 00012580  0x00002424 setarg  0x00000185 
+ 00012581  0x00002425 call  0x00003275 
+ 00012582  0x00002427 call  0x00002c90 
+ 00012583  0x00002428 arg  0x00000185 , 0x00000011 
+ 00012584  0x00002429 call  0x000032c8 
+ 00012585  0x0000242a istoret  0x00000001 , 0x00000005 
+ 00012586  0x0000242e arg  0x00000184 , 0x00000011 
+ 00012587  0x0000242f branch  0x000032b3 
+ 00012588  0x00002432 setarg  0x00000001 
+ 00012589  0x00002433 arg  0x00000186 , 0x00000011 
+ 00012590  0x00002434 call  0x000032b3 
+ 00012591  0x00002436 arg  0x00000000 , 0x00000002 
+ 00012592  0x00002437 call  0x00002c94 
+ 00012593  0x0000243a branch  0x0000312a 
+ 00012594  0x0000243d call  0x00002fdf 
+ 00012595  0x0000243e call  0x0000327d 
+ 00012596  0x00002440 call  0x0000322c 
+ 00012597  0x00002442 setarg  0x00000183 
+ 00012598  0x00002443 call  0x000032d0 
+ 00012599  0x00002445 call  0x0000314c , 0x00000034 
+ 00012600  0x00002446 call  0x0000314f 
+ 00012601  0x00002447 add  0x00000013 , 0x000000f5 , 0x00000011 
+ 00012602  0x00002448 ifetcht  0x00000001 , 0x00000011 
+ 00012603  0x0000244a arg  0x00000e9e , 0x00000011 
+ 00012604  0x0000244b call  0x00002e58 
+ 00012605  0x0000244c add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012606  0x0000244d istoret  0x00000001 , 0x00000005 
+ 00012607  0x0000244f call  0x00002f94 
+ 00012608  0x00002450 add  0x00000013 , 0x000000f8 , 0x00000005 
+ 00012609  0x00002451 istoret  0x00000001 , 0x00000005 
+ 00012610  0x00002453 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012611  0x00002454 nrtn  0x00000002 
+ 00012612  0x00002455 setarg  0x00000182 
+ 00012613  0x00002456 call  0x00003275 
+ 00012614  0x00002458 call  0x00002c90 
+ 00012615  0x00002459 arg  0x00000182 , 0x00000011 
+ 00012616  0x0000245a call  0x000032c8 
+ 00012617  0x0000245b istoret  0x00000001 , 0x00000005 
+ 00012618  0x00002460 arg  0x00000181 , 0x00000011 
+ 00012619  0x00002461 branch  0x000032b3 
+ 00012620  0x00002469 setarg  0x00000001 
+ 00012621  0x0000246a arg  0x00000183 , 0x00000011 
+ 00012622  0x0000246b call  0x000032b3 
+ 00012623  0x0000246d setarg  0x00000181 
+ 00012624  0x0000246e call  0x000032d0 
+ 00012625  0x0000246f branch  0x0000322f 
+ 00012626  0x00002474 add  0x00000013 , 0x00000000 , 0x00000011 
+ 00012627  0x00002475 ifetch  0x00000001 , 0x00000011 
+ 00012628  0x00002477 call  0x0000323c 
+ 00012629  0x0000247a call  0x00002dde 
+ 00012630  0x0000247c call  0x0000325f 
+ 00012631  0x0000247e isolate1  0x00000000 , 0x0000003f 
+ 00012632  0x0000247f branch  0x0000315c , 0x00000001 
+ 00012633  0x00002481 call  0x0000315d 
+ 00012634  0x00002482 call  0x00002d53 
+ 00012635  0x00002483 call  0x00002df7 
+ 00012636  0x00002485 branch  0x00002e45 
+ 00012637  0x00002488 bpatch  0x000000c2 , 0x00004018 
+ 00012638  0x00002489 add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012639  0x0000248a call  0x000032d6 
+ 00012640  0x0000248c setarg  0x0000013b 
+ 00012641  0x0000248d call  0x000032d0 
+ 00012642  0x0000248f rtn  0x00000034 
+ 00012643  0x00002490 setarg  0x00000006 
+ 00012644  0x00002491 add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012645  0x00002492 istore  0x00000001 , 0x00000005 
+ 00012646  0x00002494 arg  0x00000006 , 0x00000039 
+ 00012647  0x00002495 setarg  0x0000012f 
+ 00012648  0x00002496 iadd  0x00000013 , 0x00000006 
+ 00012649  0x00002498 add  0x00000013 , 0x00000022 , 0x00000005 
+ 00012650  0x0000249a branch  0x00007f01 
+ 00012651  0x0000249e call  0x0000316e 
+ 00012652  0x0000249f nbranch  0x00002f5e , 0x0000002f 
+ 00012653  0x000024a0 branch  0x00003172 
+ 00012654  0x000024a3 call  0x00002f5e 
+ 00012655  0x000024a4 call  0x00002e11 
+ 00012656  0x000024a5 nrtn  0x0000002f 
+ 00012657  0x000024a6 branch  0x00003152 
+ 00012658  0x000024a9 bpatch  0x000000c3 , 0x00004018 
+ 00012659  0x000024aa call  0x00003188 
+ 00012660  0x000024ab nbranch  0x00002f5e , 0x00000028 
+ 00012661  0x000024ac add  0x00000013 , 0x00000084 , 0x00000011 
+ 00012662  0x000024ad ifetch  0x00000001 , 0x00000011 
+ 00012663  0x000024af branch  0x00002f5e , 0x00000034 
+ 00012664  0x000024b0 increase  0x00000002 , 0x0000003f 
+ 00012665  0x000024b1 iforce  0x00000039 
+ 00012666  0x000024b2 add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012667  0x000024b4 setarg  0x00000109 
+ 00012668  0x000024b5 iadd  0x00000013 , 0x00000005 
+ 00012669  0x000024b7 call  0x00007f01 
+ 00012670  0x000024b8 call  0x00003286 
+ 00012671  0x000024ba call  0x000032b6 
+ 00012672  0x000024bc call  0x00003093 , 0x00000034 
+ 00012673  0x000024bd setarg  0x0000010b 
+ 00012674  0x000024be call  0x000032d0 
+ 00012675  0x000024c0 beq  0x00000001 , 0x0000319e 
+ 00012676  0x000024c1 beq  0x00000002 , 0x000031c6 
+ 00012677  0x000024c2 beq  0x00000003 , 0x000031f2 
+ 00012678  0x000024c3 beq  0x000000ff , 0x00003212 
+ 00012679  0x000024c4 branch  0x00002f5e 
+ 00012680  0x000024c7 call  0x00002c7a 
+ 00012681  0x000024c8 call  0x00007fe9 
+ 00012682  0x000024c9 add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012683  0x000024ca ifetch  0x00000001 , 0x00000011 
+ 00012684  0x000024cc add  0x00000013 , 0x000000cb , 0x00000011 
+ 00012685  0x000024cd ifetcht  0x00000001 , 0x00000011 
+ 00012686  0x000024cf isub  0x00000002 , 0x0000003e 
+ 00012687  0x000024d0 ncall  0x00007fe7 , 0x00000005 
+ 00012688  0x000024d1 add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012689  0x000024d2 ifetch  0x00000001 , 0x00000011 
+ 00012690  0x000024d4 add  0x00000013 , 0x000000cb , 0x00000005 
+ 00012691  0x000024d5 istore  0x00000001 , 0x00000005 
+ 00012692  0x000024d7 add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012693  0x000024d8 ifetch  0x00000003 , 0x00000011 
+ 00012694  0x000024da add  0x00000013 , 0x000000c7 , 0x00000011 
+ 00012695  0x000024db ifetcht  0x00000003 , 0x00000011 
+ 00012696  0x000024dd isub  0x00000002 , 0x0000003e 
+ 00012697  0x000024de ncall  0x00007fe7 , 0x00000005 
+ 00012698  0x000024df add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012699  0x000024e0 ifetch  0x00000003 , 0x00000011 
+ 00012700  0x000024e2 add  0x00000013 , 0x000000c7 , 0x00000005 
+ 00012701  0x000024e4 branch  0x000032c5 
+ 00012702  0x000024e7 call  0x00002f88 
+ 00012703  0x000024e8 call  0x0000324c 
+ 00012704  0x000024e9 store  0x00000001 , 0x00000aa2 
+ 00012705  0x000024eb call  0x00003274 
+ 00012706  0x000024ec fetch  0x00000001 , 0x00000aa2 
+ 00012707  0x000024ee isolate1  0x00000003 , 0x00000002 
+ 00012708  0x000024ef setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012709  0x000024f0 add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012710  0x000024f1 istore  0x00000001 , 0x00000005 
+ 00012711  0x000024f3 beq  0x00000001 , 0x00003216 
+ 00012712  0x000024f4 call  0x00003245 
+ 00012713  0x000024f6 call  0x00003274 
+ 00012714  0x000024f8 isolate1  0x00000004 , 0x00000002 
+ 00012715  0x000024f9 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012716  0x000024fa call  0x00003249 
+ 00012717  0x000024fc add  0x00000013 , 0x000000de , 0x00000011 
+ 00012718  0x000024fd ifetch  0x00000002 , 0x00000011 
+ 00012719  0x000024ff branch  0x00007f9c 
+ 00012720  0x00002502 setarg  0x00000001 
+ 00012721  0x00002503 store  0x00000001 , 0x00000d54 
+ 00012722  0x00002504 call  0x0000329e 
+ 00012723  0x00002506 istore  0x00000007 , 0x00000005 
+ 00012724  0x00002507 call  0x0000329e 
+ 00012725  0x00002509 ncall  0x000031bd , 0x00000034 
+ 00012726  0x0000250a call  0x0000329e 
+ 00012727  0x0000250c call  0x000031c2 , 0x00000034 
+ 00012728  0x0000250e jam  0x00000020 , 0x00000d52 
+ 00012729  0x00002510 fetch  0x00000001 , 0x00000d38 
+ 00012730  0x00002511 set1  0x00000002 , 0x0000003f 
+ 00012731  0x00002512 store  0x00000001 , 0x00000d38 
+ 00012732  0x00002513 rtn 
+ 00012733  0x00002516 setarg  0x00000001 
+ 00012734  0x00002517 call  0x000032a8 
+ 00012735  0x0000251a setarg  0x00000140 
+ 00012736  0x0000251b arg  0x0000000b , 0x00000007 
+ 00012737  0x0000251c branch  0x00007f08 
+ 00012738  0x0000251e call  0x000032a7 
+ 00012739  0x00002521 setarg  0x00000000 
+ 00012740  0x00002522 arg  0x0000000b , 0x00000007 
+ 00012741  0x00002523 branch  0x00007f08 
+ 00012742  0x00002526 call  0x00003274 
+ 00012743  0x00002528 isolate1  0x00000003 , 0x00000002 
+ 00012744  0x00002529 branch  0x0000321b , 0x00000001 
+ 00012745  0x0000252a arg  0x00000d64 , 0x00000005 
+ 00012746  0x0000252b call  0x000031e0 
+ 00012747  0x0000252c fetch  0x00000008 , 0x00000d64 
+ 00012748  0x0000252d ncall  0x000031e4 , 0x00000034 
+ 00012749  0x0000252e fetch  0x00000008 , 0x00000d64 
+ 00012750  0x0000252f call  0x000031e9 , 0x00000034 
+ 00012751  0x00002530 call  0x00002c7a 
+ 00012752  0x00002531 fetch  0x00000008 , 0x00000d64 
+ 00012753  0x00002532 arg  0x00000168 , 0x00000011 
+ 00012754  0x00002533 call  0x000032bf 
+ 00012755  0x00002534 istore  0x00000008 , 0x00000005 
+ 00012756  0x00002536 setarg  0x00000170 
+ 00012757  0x00002537 iadd  0x00000013 , 0x00000011 
+ 00012758  0x00002538 ifetcht  0x00000008 , 0x00000011 
+ 00012759  0x0000253a isub  0x00000002 , 0x0000003e 
+ 00012760  0x0000253b ncall  0x000031ed , 0x00000005 
+ 00012761  0x0000253c setarg  0x00000168 
+ 00012762  0x0000253d iadd  0x00000013 , 0x00000011 
+ 00012763  0x0000253e ifetch  0x00000008 , 0x00000011 
+ 00012764  0x00002540 arg  0x00000170 , 0x00000011 
+ 00012765  0x00002541 call  0x000032bf 
+ 00012766  0x00002542 istore  0x00000008 , 0x00000005 
+ 00012767  0x00002544 branch  0x00002f5e 
+ 00012768  0x00002547 setarg  0x0000010b 
+ 00012769  0x00002548 iadd  0x00000013 , 0x00000006 
+ 00012770  0x0000254a arg  0x00000009 , 0x00000039 
+ 00012771  0x0000254b branch  0x00007ff3 
+ 00012772  0x0000254e setarg  0x00000001 
+ 00012773  0x0000254f call  0x000032ab 
+ 00012774  0x00002552 setarg  0x00000140 
+ 00012775  0x00002553 arg  0x0000000e , 0x00000007 
+ 00012776  0x00002554 branch  0x00007f08 
+ 00012777  0x00002557 call  0x000032aa 
+ 00012778  0x0000255a setarg  0x00000000 
+ 00012779  0x0000255b arg  0x0000000e , 0x00000007 
+ 00012780  0x0000255c branch  0x00007f08 
+ 00012781  0x00002560 jam  0x00000010 , 0x00000d51 
+ 00012782  0x00002561 fetch  0x00000001 , 0x00000d38 
+ 00012783  0x00002562 set1  0x00000001 , 0x0000003f 
+ 00012784  0x00002563 store  0x00000001 , 0x00000d38 
+ 00012785  0x00002564 rtn 
+ 00012786  0x00002567 arg  0x00000d74 , 0x00000005 
+ 00012787  0x00002568 call  0x000031e0 
+ 00012788  0x00002569 fetch  0x00000002 , 0x00000d75 
+ 00012789  0x0000256a ncall  0x00003209 , 0x00000034 
+ 00012790  0x0000256b fetch  0x00000002 , 0x00000d75 
+ 00012791  0x0000256c call  0x0000320e , 0x00000034 
+ 00012792  0x0000256d call  0x00002c7a 
+ 00012793  0x0000256e fetch  0x00000003 , 0x00000d74 
+ 00012794  0x0000256f arg  0x00000178 , 0x00000011 
+ 00012795  0x00002570 call  0x000032c4 
+ 00012796  0x00002572 setarg  0x0000017b 
+ 00012797  0x00002573 iadd  0x00000013 , 0x00000011 
+ 00012798  0x00002574 ifetcht  0x00000003 , 0x00000011 
+ 00012799  0x00002576 isub  0x00000002 , 0x0000003e 
+ 00012800  0x00002577 ncall  0x00003207 , 0x00000005 
+ 00012801  0x00002578 setarg  0x00000178 
+ 00012802  0x00002579 iadd  0x00000013 , 0x00000011 
+ 00012803  0x0000257a ifetch  0x00000003 , 0x00000011 
+ 00012804  0x0000257c arg  0x0000017b , 0x00000011 
+ 00012805  0x0000257d call  0x000032c4 
+ 00012806  0x0000257f branch  0x00002f5e 
+ 00012807  0x00002582 jam  0x00000021 , 0x00000d52 
+ 00012808  0x00002583 branch  0x000031b9 
+ 00012809  0x00002586 setarg  0x00000001 
+ 00012810  0x00002587 call  0x000032ae 
+ 00012811  0x0000258a setarg  0x00000140 
+ 00012812  0x0000258b arg  0x0000000c , 0x00000007 
+ 00012813  0x0000258c branch  0x00007f08 
+ 00012814  0x0000258f call  0x000032ad 
+ 00012815  0x00002592 setarg  0x00000000 
+ 00012816  0x00002593 arg  0x0000000c , 0x00000007 
+ 00012817  0x00002594 branch  0x00007f08 
+ 00012818  0x00002597 call  0x000032bd 
+ 00012819  0x00002599 beq  0x00000001 , 0x00003216 
+ 00012820  0x0000259a beq  0x00000002 , 0x0000321b 
+ 00012821  0x0000259b rtn 
+ 00012822  0x0000259d setarg  0x0000010d 
+ 00012823  0x0000259e call  0x0000327e 
+ 00012824  0x0000259f arg  0x00000160 , 0x00000011 
+ 00012825  0x000025a0 call  0x000032bf 
+ 00012826  0x000025a3 branch  0x0000322d 
+ 00012827  0x000025a6 setarg  0x0000010d 
+ 00012828  0x000025a7 call  0x0000327e 
+ 00012829  0x000025a8 arg  0x00000164 , 0x00000011 
+ 00012830  0x000025a9 call  0x000032bf 
+ 00012831  0x000025ac branch  0x0000322d 
+ 00012832  0x000025af call  0x00002c7a 
+ 00012833  0x000025b0 add  0x00000013 , 0x000000cd , 0x00000005 
+ 00012834  0x000025b1 istore  0x00000001 , 0x00000005 
+ 00012835  0x000025b2 rtn 
+ 00012836  0x000025b5 call  0x00002c7a 
+ 00012837  0x000025b6 add  0x00000013 , 0x000000be , 0x00000011 
+ 00012838  0x000025b7 branch  0x0000327f 
+ 00012839  0x000025b9 call  0x00002c7a 
+ 00012840  0x000025ba add  0x00000013 , 0x000000be , 0x00000005 
+ 00012841  0x000025bb branch  0x0000322d 
+ 00012842  0x000025be add  0x00000013 , 0x000000ae , 0x00000011 
+ 00012843  0x000025bf branch  0x0000327f 
+ 00012844  0x000025c1 add  0x00000013 , 0x000000ae , 0x00000005 
+ 00012845  0x000025c3 istore  0x00000004 , 0x00000005 
+ 00012846  0x000025c4 rtn 
+ 00012847  0x000025c7 add  0x00000013 , 0x00000090 , 0x00000005 
+ 00012848  0x000025c8 branch  0x000032b4 
+ 00012849  0x000025cb setarg  0x00000000 
+ 00012850  0x000025cd call  0x00002c7a 
+ 00012851  0x000025ce add  0x00000013 , 0x00000085 , 0x00000005 
+ 00012852  0x000025cf branch  0x000032b4 
+ 00012853  0x000025d2 add  0x00000013 , 0x00000042 , 0x00000005 
+ 00012854  0x000025d3 branch  0x000032b4 
+ 00012855  0x000025d6 setarg  0x00000004 
+ 00012856  0x000025d8 add  0x00000013 , 0x000000cc , 0x00000005 
+ 00012857  0x000025d9 branch  0x000032b4 
+ 00012858  0x000025dc add  0x00000013 , 0x00000087 , 0x00000011 
+ 00012859  0x000025dd branch  0x000032d1 
+ 00012860  0x000025df add  0x00000013 , 0x00000087 , 0x00000005 
+ 00012861  0x000025e0 branch  0x000032b4 
+ 00012862  0x000025e3 setarg  0x00000002 
+ 00012863  0x000025e5 add  0x00000013 , 0x000000d0 , 0x00000005 
+ 00012864  0x000025e6 branch  0x000032b4 
+ 00012865  0x000025e9 setarg  0x00000001 
+ 00012866  0x000025eb call  0x00002c7a 
+ 00012867  0x000025ec add  0x00000013 , 0x000000ce , 0x00000005 
+ 00012868  0x000025ed branch  0x000032b4 
+ 00012869  0x000025f0 call  0x00002c7a 
+ 00012870  0x000025f1 add  0x00000013 , 0x000000b4 , 0x00000011 
+ 00012871  0x000025f2 branch  0x000032d1 
+ 00012872  0x000025f4 setarg  0x00000001 
+ 00012873  0x000025f6 call  0x00002c7a 
+ 00012874  0x000025f7 add  0x00000013 , 0x000000b4 , 0x00000005 
+ 00012875  0x000025f8 branch  0x000032b4 
+ 00012876  0x000025fb call  0x00002c7a 
+ 00012877  0x000025fc add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00012878  0x000025fd branch  0x000032d1 
+ 00012879  0x000025ff setarg  0x00000001 
+ 00012880  0x00002601 call  0x00002c7a 
+ 00012881  0x00002602 add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012882  0x00002603 branch  0x000032b4 
+ 00012883  0x00002606 call  0x00002c7a 
+ 00012884  0x00002607 add  0x00000013 , 0x00000096 , 0x00000011 
+ 00012885  0x00002608 branch  0x000032d1 
+ 00012886  0x0000260a add  0x00000013 , 0x00000096 , 0x00000005 
+ 00012887  0x0000260b branch  0x000032b4 
+ 00012888  0x0000260e add  0x00000013 , 0x000000cf , 0x00000011 
+ 00012889  0x0000260f branch  0x000032d1 
+ 00012890  0x00002611 setarg  0x00000000 
+ 00012891  0x00002613 add  0x00000013 , 0x000000cf , 0x00000005 
+ 00012892  0x00002614 branch  0x000032b4 
+ 00012893  0x00002617 add  0x00000013 , 0x000000d2 , 0x00000011 
+ 00012894  0x00002618 branch  0x000032d1 
+ 00012895  0x0000261b add  0x00000013 , 0x00000001 , 0x00000011 
+ 00012896  0x0000261c branch  0x000032d1 
+ 00012897  0x0000261f add  0x00000013 , 0x000000b5 , 0x00000011 
+ 00012898  0x00002620 branch  0x000032d1 
+ 00012899  0x00002622 setarg  0x00000000 
+ 00012900  0x00002624 call  0x00002c7a 
+ 00012901  0x00002625 add  0x00000013 , 0x000000b5 , 0x00000005 
+ 00012902  0x00002626 branch  0x000032b4 
+ 00012903  0x00002629 call  0x00002c7a 
+ 00012904  0x0000262a add  0x00000013 , 0x000000fb , 0x00000011 
+ 00012905  0x0000262b ifetch  0x00000001 , 0x00000011 
+ 00012906  0x0000262d store  0x00000001 , 0x000041de 
+ 00012907  0x0000262e rtn 
+ 00012908  0x00002631 call  0x00002c7a 
+ 00012909  0x00002632 fetch  0x00000001 , 0x000041de 
+ 00012910  0x00002634 add  0x00000013 , 0x000000fb , 0x00000005 
+ 00012911  0x00002635 branch  0x000032b4 
+ 00012912  0x00002638 add  0x00000013 , 0x000000fc , 0x00000011 
+ 00012913  0x00002639 branch  0x000032d1 
+ 00012914  0x0000263c add  0x00000013 , 0x000000fe , 0x00000005 
+ 00012915  0x0000263d branch  0x000032b4 
+ 00012916  0x00002640 setarg  0x00000109 
+ 00012917  0x00002642 iadd  0x00000013 , 0x00000011 
+ 00012918  0x00002643 ifetcht  0x00000001 , 0x00000011 
+ 00012919  0x00002644 rtn 
+ 00012920  0x00002647 setarg  0x00000135 
+ 00012921  0x00002648 branch  0x000032d0 
+ 00012922  0x0000264a setarg  0x00000000 
+ 00012923  0x0000264c arg  0x00000135 , 0x00000011 
+ 00012924  0x0000264d branch  0x000032b3 
+ 00012925  0x00002650 setarg  0x0000012b 
+ 00012926  0x00002652 call  0x000032cd 
+ 00012927  0x00002654 ifetch  0x00000004 , 0x00000011 
+ 00012928  0x00002655 rtn 
+ 00012929  0x00002658 setarg  0x0000015f 
+ 00012930  0x00002659 branch  0x000032d0 
+ 00012931  0x0000265b setarg  0x00000000 
+ 00012932  0x0000265d arg  0x0000015f , 0x00000011 
+ 00012933  0x0000265e branch  0x000032b3 
+ 00012934  0x00002661 setarg  0x00000000 
+ 00012935  0x00002663 arg  0x0000015c , 0x00000011 
+ 00012936  0x00002664 branch  0x000032b3 
+ 00012937  0x00002667 arg  0x0000012f , 0x00000011 
+ 00012938  0x00002668 branch  0x000032b3 
+ 00012939  0x0000266b setarg  0x00000108 
+ 00012940  0x0000266c branch  0x000032d0 
+ 00012941  0x0000266e arg  0x00000108 , 0x00000011 
+ 00012942  0x0000266f branch  0x000032b3 
+ 00012943  0x00002672 setarg  0x00000105 
+ 00012944  0x00002673 branch  0x000032d0 
+ 00012945  0x00002675 setarg  0x00000000 
+ 00012946  0x00002677 arg  0x00000105 , 0x00000011 
+ 00012947  0x00002678 branch  0x000032b3 
+ 00012948  0x0000267b setarg  0x00000104 
+ 00012949  0x0000267c branch  0x000032d0 
+ 00012950  0x0000267e setarg  0x00000000 
+ 00012951  0x00002680 arg  0x00000104 , 0x00000011 
+ 00012952  0x00002681 branch  0x000032b3 
+ 00012953  0x00002684 setarg  0x00000000 
+ 00012954  0x00002686 arg  0x0000013b , 0x00000011 
+ 00012955  0x00002687 branch  0x000032b3 
+ 00012956  0x00002689 setarg  0x00000001 
+ 00012957  0x0000268a branch  0x0000329a 
+ 00012958  0x0000268d setarg  0x0000010c 
+ 00012959  0x0000268e call  0x000032cd 
+ 00012960  0x0000268f ifetch  0x00000007 , 0x00000011 
+ 00012961  0x00002690 rtn 
+ 00012962  0x00002693 setarg  0x0000015e 
+ 00012963  0x00002694 branch  0x000032d0 
+ 00012964  0x00002696 setarg  0x00000000 
+ 00012965  0x00002698 arg  0x0000015e , 0x00000011 
+ 00012966  0x00002699 branch  0x000032b3 
+ 00012967  0x0000269c setarg  0x00000000 
+ 00012968  0x0000269e arg  0x00000180 , 0x00000011 
+ 00012969  0x0000269f branch  0x000032b3 
+ 00012970  0x000026a2 setarg  0x00000000 
+ 00012971  0x000026a4 arg  0x0000017e , 0x00000011 
+ 00012972  0x000026a5 branch  0x000032b3 
+ 00012973  0x000026a8 setarg  0x00000000 
+ 00012974  0x000026aa arg  0x0000017f , 0x00000011 
+ 00012975  0x000026ab branch  0x000032b3 
+ 00012976  0x000026ae arg  0x00000102 , 0x00000011 
+ 00012977  0x000026af branch  0x000032b3 
+ 00012978  0x000026b2 arg  0x00000103 , 0x00000011 
+ 00012979  0x000026b4 call  0x000032c7 
+ 00012980  0x000026b6 istore  0x00000001 , 0x00000005 
+ 00012981  0x000026b7 rtn 
+ 00012982  0x000026ba setarg  0x0000015d 
+ 00012983  0x000026bb branch  0x000032d0 
+ 00012984  0x000026be arg  0x0000015d , 0x00000011 
+ 00012985  0x000026bf branch  0x000032b3 
+ 00012986  0x000026c2 setarg  0x0000018a 
+ 00012987  0x000026c3 call  0x000032d0 
+ 00012988  0x000026c4 branch  0x0000326a 
+ 00012989  0x000026c7 setarg  0x0000010c 
+ 00012990  0x000026c8 branch  0x000032d0 
+ 00012991  0x000026cb copy  0x0000003f , 0x00000002 
+ 00012992  0x000026cc copy  0x00000011 , 0x0000003f 
+ 00012993  0x000026cd iadd  0x00000013 , 0x00000005 
+ 00012994  0x000026ce copy  0x00000002 , 0x0000003f 
+ 00012995  0x000026cf rtn 
+ 00012996  0x000026d2 call  0x000032bf 
+ 00012997  0x000026d4 istore  0x00000003 , 0x00000005 
+ 00012998  0x000026d5 rtn 
+ 00012999  0x000026d8 call  0x00002c7a 
+ 00013000  0x000026da copy  0x0000003f , 0x00000012 
+ 00013001  0x000026db copy  0x00000011 , 0x0000003f 
+ 00013002  0x000026dc iadd  0x00000013 , 0x00000005 
+ 00013003  0x000026dd copy  0x00000012 , 0x0000003f 
+ 00013004  0x000026de rtn 
+ 00013005  0x000026e1 call  0x00002c7a 
+ 00013006  0x000026e2 iadd  0x00000013 , 0x00000011 
+ 00013007  0x000026e3 rtn 
+ 00013008  0x000026e6 call  0x000032cd 
+ 00013009  0x000026e8 ifetch  0x00000001 , 0x00000011 
+ 00013010  0x000026e9 rtn 
+ 00013011  0x000026ec call  0x000032cd 
+ 00013012  0x000026ed ifetcht  0x00000004 , 0x00000011 
+ 00013013  0x000026ee rtn 
+ 00013014  0x000026f1 setarg  0x00000000 
+ 00013015  0x000026f2 branch  0x000032b4 
+ 00013016  0x000026f7 bpatch  0x000000c4 , 0x00004018 
+ 00013017  0x000026f8 fetch  0x00000001 , 0x00004092 
+ 00013018  0x000026f9 branch  0x000032d8 , 0x00000034 
+ 00013019  0x000026fb beq  0x00000004 , 0x00002f30 
+ 00013020  0x000026fc beq  0x0000000f , 0x00003436 
+ 00013021  0x000026fd beq  0x00000009 , 0x000045de 
+ 00013022  0x000026fe beq  0x0000000a , 0x0000392a 
+ 00013023  0x000026ff beq  0x0000000e , 0x000035bf 
+ 00013024  0x00002700 beq  0x00000010 , 0x000044a4 
+ 00013025  0x00002701 bbit1  0x00000006 , 0x00003d00 
+ 00013026  0x00002702 rtn 
+ 00013027  0x00002705 bpatch  0x000000c5 , 0x00004018 
+ 00013028  0x00002706 jam  0x00000000 , 0x00000151 
+ 00013029  0x00002707 jam  0x00000000 , 0x0000017f 
+ 00013030  0x00002708 jam  0x00000000 , 0x00000180 
+ 00013031  0x00002709 setarg  0x00000000 
+ 00013032  0x0000270a store  0x00000005 , 0x000009ae 
+ 00013033  0x0000270b fetch  0x00000001 , 0x00004092 
+ 00013034  0x0000270c branch  0x000032e3 , 0x00000034 
+ 00013035  0x0000270d beq  0x0000000a , 0x00003962 
+ 00013036  0x0000270f rtn 
+ 00013037  0x00002713 call  0x00007cd1 
+ 00013038  0x00002714 call  0x00007d9c 
+ 00013039  0x00002715 call  0x000032f6 
+ 00013040  0x00002716 fetch  0x00000002 , 0x000041f3 
+ 00013041  0x00002717 branch  0x00007f9c 
+ 00013042  0x0000271a fetch  0x00000002 , 0x000041f1 
+ 00013043  0x0000271b branch  0x00007f9c 
+ 00013044  0x0000271e fetch  0x00000002 , 0x000041ef 
+ 00013045  0x0000271f branch  0x00007f9c 
+ 00013046  0x00002722 bpatch  0x000000c6 , 0x00004018 
+ 00013047  0x00002724 arg  0x00004668 , 0x00000011 
+ 00013048  0x00002725 call  0x00007fc4 
+ 00013049  0x00002726 rtn  0x00000034 
+ 00013050  0x00002728 copy  0x0000003f , 0x00000013 
+ 00013051  0x00002729 call  0x000032ff 
+ 00013052  0x0000272a branch  0x00003324 
+ 00013053  0x0000272d arg  0x00000000 , 0x00000013 
+ 00013054  0x0000272e rtn 
+ 00013055  0x00002734 beq  0x00000001 , 0x00003311 
+ 00013056  0x00002735 beq  0x00000010 , 0x00003357 
+ 00013057  0x00002736 beq  0x00000005 , 0x00003335 
+ 00013058  0x00002737 beq  0x00000012 , 0x0000333c 
+ 00013059  0x00002738 beq  0x00000006 , 0x00003353 
+ 00013060  0x00002739 beq  0x00000004 , 0x00003394 
+ 00013061  0x0000273a beq  0x00000002 , 0x00003399 
+ 00013062  0x0000273b beq  0x00000013 , 0x00003394 
+ 00013063  0x0000273c beq  0x00000014 , 0x0000334b 
+ 00013064  0x0000273d beq  0x00000015 , 0x0000334f 
+ 00013065  0x0000273e beq  0x00000003 , 0x0000332e 
+ 00013066  0x0000273f beq  0x0000000b , 0x00003340 
+ 00013067  0x00002740 beq  0x0000000c , 0x00003347 
+ 00013068  0x00002742 beq  0x00000016 , 0x0000335b 
+ 00013069  0x00002743 beq  0x00000018 , 0x0000332a 
+ 00013070  0x00002744 beq  0x0000002a , 0x0000331a 
+ 00013071  0x00002745 beq  0x0000002b , 0x00003318 
+ 00013072  0x00002746 rtn 
+ 00013073  0x0000274a fetch  0x00000002 , 0x00004682 
+ 00013074  0x0000274b set1  0x00000000 , 0x0000003f 
+ 00013075  0x0000274c store  0x00000002 , 0x00004682 
+ 00013076  0x0000274d fetch  0x00000002 , 0x0000420a 
+ 00013077  0x0000274e set0  0x00000000 , 0x0000003f 
+ 00013078  0x0000274f store  0x00000002 , 0x0000420a 
+ 00013079  0x00002750 rtn 
+ 00013080  0x00002753 jam  0x00000000 , 0x00000229 
+ 00013081  0x00002754 rtn 
+ 00013082  0x00002757 fetch  0x00000001 , 0x00000229 
+ 00013083  0x00002758 increase  0x00000001 , 0x0000003f 
+ 00013084  0x00002759 store  0x00000001 , 0x00000229 
+ 00013085  0x0000275a sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00013086  0x0000275b branch  0x000033df , 0x00000002 
+ 00013087  0x0000275c jam  0x00000000 , 0x00000229 
+ 00013088  0x0000275d fetch  0x00000002 , 0x0000420a 
+ 00013089  0x0000275e set1  0x00000009 , 0x0000003f 
+ 00013090  0x0000275f store  0x00000002 , 0x0000420a 
+ 00013091  0x00002760 branch  0x000033e9 
+ 00013092  0x00002763 fetch  0x00000002 , 0x000041f5 
+ 00013093  0x00002764 branch  0x00007f9c 
+ 00013094  0x00002767 fetch  0x00000002 , 0x000041e9 
+ 00013095  0x00002768 branch  0x00007f9c 
+ 00013096  0x0000276b fetch  0x00000002 , 0x000041ed 
+ 00013097  0x0000276c branch  0x00007f9c 
+ 00013098  0x0000276f fetch  0x00000002 , 0x0000420a 
+ 00013099  0x00002770 set1  0x00000001 , 0x0000003f 
+ 00013100  0x00002771 store  0x00000002 , 0x0000420a 
+ 00013101  0x00002772 branch  0x00003412 
+ 00013102  0x00002775 fetch  0x00000002 , 0x00004682 
+ 00013103  0x00002776 set1  0x00000007 , 0x0000003f 
+ 00013104  0x00002777 store  0x00000002 , 0x00004682 
+ 00013105  0x00002778 fetch  0x00000002 , 0x0000420a 
+ 00013106  0x00002779 set1  0x00000002 , 0x0000003f 
+ 00013107  0x0000277a store  0x00000002 , 0x0000420a 
+ 00013108  0x0000277b rtn 
+ 00013109  0x0000277e fetch  0x00000002 , 0x00004682 
+ 00013110  0x0000277f set1  0x00000001 , 0x0000003f 
+ 00013111  0x00002780 store  0x00000002 , 0x00004682 
+ 00013112  0x00002781 fetch  0x00000002 , 0x0000420a 
+ 00013113  0x00002782 set1  0x00000004 , 0x0000003f 
+ 00013114  0x00002783 store  0x00000002 , 0x0000420a 
+ 00013115  0x00002784 rtn 
+ 00013116  0x00002787 fetch  0x00000002 , 0x00004682 
+ 00013117  0x00002788 set1  0x00000003 , 0x0000003f 
+ 00013118  0x00002789 store  0x00000002 , 0x00004682 
+ 00013119  0x0000278a rtn 
+ 00013120  0x0000278d fetch  0x00000002 , 0x00004682 
+ 00013121  0x0000278e set1  0x00000005 , 0x0000003f 
+ 00013122  0x0000278f store  0x00000002 , 0x00004682 
+ 00013123  0x00002790 fetch  0x00000002 , 0x0000420a 
+ 00013124  0x00002791 set1  0x00000003 , 0x0000003f 
+ 00013125  0x00002792 store  0x00000002 , 0x0000420a 
+ 00013126  0x00002793 rtn 
+ 00013127  0x00002796 fetch  0x00000002 , 0x00004682 
+ 00013128  0x00002797 set0  0x00000005 , 0x0000003f 
+ 00013129  0x00002798 store  0x00000002 , 0x00004682 
+ 00013130  0x00002799 rtn 
+ 00013131  0x0000279c fetch  0x00000002 , 0x00004682 
+ 00013132  0x0000279d set1  0x00000009 , 0x0000003f 
+ 00013133  0x0000279e store  0x00000002 , 0x00004682 
+ 00013134  0x0000279f rtn 
+ 00013135  0x000027a2 fetch  0x00000002 , 0x00004682 
+ 00013136  0x000027a3 set0  0x00000009 , 0x0000003f 
+ 00013137  0x000027a4 store  0x00000002 , 0x00004682 
+ 00013138  0x000027a5 branch  0x00003418 
+ 00013139  0x000027a8 fetch  0x00000002 , 0x00004682 
+ 00013140  0x000027a9 set1  0x00000002 , 0x0000003f 
+ 00013141  0x000027aa store  0x00000002 , 0x00004682 
+ 00013142  0x000027ab rtn 
+ 00013143  0x000027ae fetch  0x00000002 , 0x0000420a 
+ 00013144  0x000027af set1  0x00000000 , 0x0000003f 
+ 00013145  0x000027b0 store  0x00000002 , 0x0000420a 
+ 00013146  0x000027b1 rtn 
+ 00013147  0x000027b4 fetch  0x00000002 , 0x0000420a 
+ 00013148  0x000027b5 set1  0x00000008 , 0x0000003f 
+ 00013149  0x000027b6 store  0x00000002 , 0x0000420a 
+ 00013150  0x000027b7 branch  0x000033e9 
+ 00013151  0x000027bb bpatch  0x000000c7 , 0x00004018 
+ 00013152  0x000027bc store  0x00000001 , 0x0000022a 
+ 00013153  0x000027be fetch  0x00000001 , 0x0000022a 
+ 00013154  0x000027bf rtn  0x00000034 
+ 00013155  0x000027c0 increase  0xffffffff , 0x0000003f 
+ 00013156  0x000027c1 store  0x00000001 , 0x0000022a 
+ 00013157  0x000027c2 call  0x00007cdd 
+ 00013158  0x000027c3 call  0x000033d6 
+ 00013159  0x000027c4 call  0x00003387 
+ 00013160  0x000027c5 call  0x0000338d 
+ 00013161  0x000027c6 call  0x0000651b 
+ 00013162  0x000027c7 fetch  0x00000002 , 0x000041fd 
+ 00013163  0x000027c8 call  0x00007f9c 
+ 00013164  0x000027c9 branch  0x00003361 
+ 00013165  0x000027cf ifetch  0x00000001 , 0x00000013 
+ 00013166  0x000027d0 rtn  0x00000034 
+ 00013167  0x000027d1 pincrease  0xffffffff 
+ 00013168  0x000027d2 istore  0x00000001 , 0x00000013 
+ 00013169  0x000027d3 nrtn  0x00000034 
+ 00013170  0x000027d4 copy  0x00000012 , 0x0000003f 
+ 00013171  0x000027d5 branch  0x00007f9c 
+ 00013172  0x000027da ifetch  0x00000002 , 0x00000013 
+ 00013173  0x000027db rtn  0x00000034 
+ 00013174  0x000027dc pincrease  0xffffffff 
+ 00013175  0x000027dd istore  0x00000002 , 0x00000013 
+ 00013176  0x000027de nrtn  0x00000034 
+ 00013177  0x000027df copy  0x00000012 , 0x0000003f 
+ 00013178  0x000027e0 branch  0x00007f9c 
+ 00013179  0x000027e3 fetcht  0x00000002 , 0x0000423f 
+ 00013180  0x000027e4 add  0x00000002 , 0x00000001 , 0x00000013 
+ 00013181  0x000027e5 arg  0x0000337f , 0x00000012 
+ 00013182  0x000027e6 branch  0x0000336d 
+ 00013183  0x000027e9 call  0x0000342d 
+ 00013184  0x000027ea beq  0x00000001 , 0x00003382 
+ 00013185  0x000027ec branch  0x0000340a 
+ 00013186  0x000027ee setarg  0x00000002 
+ 00013187  0x000027ef istore  0x00000001 , 0x00000013 
+ 00013188  0x000027f0 add  0x00000002 , 0x00000008 , 0x00000012 
+ 00013189  0x000027f2 ifetch  0x00000002 , 0x00000012 
+ 00013190  0x000027f3 branch  0x00007f9c 
+ 00013191  0x000027f6 arg  0x00004205 , 0x00000013 
+ 00013192  0x000027f7 arg  0x0000338a , 0x00000012 
+ 00013193  0x000027f8 branch  0x0000336d 
+ 00013194  0x000027fb call  0x00002252 
+ 00013195  0x000027fc branch  0x0000340e , 0x00000005 
+ 00013196  0x000027fd rtn 
+ 00013197  0x00002801 arg  0x0000467e , 0x00000013 
+ 00013198  0x00002802 arg  0x00003390 , 0x00000012 
+ 00013199  0x00002803 branch  0x00003374 
+ 00013200  0x00002806 call  0x000033f0 
+ 00013201  0x00002807 call  0x00003408 
+ 00013202  0x00002808 fetch  0x00000002 , 0x000041f7 
+ 00013203  0x00002809 branch  0x00007f9c 
+ 00013204  0x0000280d call  0x000033ac 
+ 00013205  0x0000280f fetch  0x00000002 , 0x00004682 
+ 00013206  0x00002810 set0  0x00000007 , 0x0000003f 
+ 00013207  0x00002811 store  0x00000002 , 0x00004682 
+ 00013208  0x00002812 rtn 
+ 00013209  0x00002815 jam  0x00000000 , 0x00004205 
+ 00013210  0x00002816 fetch  0x00000002 , 0x00004682 
+ 00013211  0x00002817 bbit1  0x00000007 , 0x0000339e 
+ 00013212  0x00002818 isolate0  0x00000001 , 0x0000003f 
+ 00013213  0x00002819 call  0x000032fd , 0x00000001 
+ 00013214  0x0000281b bpatch  0x000000c8 , 0x00004019 
+ 00013215  0x0000281c fetch  0x00000002 , 0x00004682 
+ 00013216  0x0000281d set0  0x00000000 , 0x0000003f 
+ 00013217  0x0000281e set0  0x00000001 , 0x0000003f 
+ 00013218  0x0000281f set0  0x00000002 , 0x0000003f 
+ 00013219  0x00002820 set0  0x00000003 , 0x0000003f 
+ 00013220  0x00002821 set0  0x00000007 , 0x0000003f 
+ 00013221  0x00002822 store  0x00000002 , 0x00004682 
+ 00013222  0x00002823 branch  0x00003418 
+ 00013223  0x00002826 call  0x000033a9 
+ 00013224  0x00002827 branch  0x0000340a 
+ 00013225  0x0000282b setarg  0x00000000 
+ 00013226  0x0000282c store  0x00000002 , 0x00004208 
+ 00013227  0x0000282d rtn 
+ 00013228  0x0000282f setarg  0x00000000 
+ 00013229  0x00002830 store  0x00000002 , 0x0000420a 
+ 00013230  0x00002831 rtn 
+ 00013231  0x00002834 fetch  0x00000002 , 0x0000420a 
+ 00013232  0x00002835 store  0x00000002 , 0x00004208 
+ 00013233  0x00002836 setarg  0x00000000 
+ 00013234  0x00002837 store  0x00000002 , 0x0000420a 
+ 00013235  0x00002838 rtn 
+ 00013236  0x0000283b fetch  0x00000002 , 0x0000420a 
+ 00013237  0x0000283c set1  0x00000007 , 0x0000003f 
+ 00013238  0x0000283d store  0x00000002 , 0x00004208 
+ 00013239  0x0000283e setarg  0x00000000 
+ 00013240  0x0000283f store  0x00000002 , 0x0000420a 
+ 00013241  0x00002840 rtn 
+ 00013242  0x00002849 fetch  0x00000001 , 0x00004682 
+ 00013243  0x0000284a isolate1  0x00000005 , 0x0000003f 
+ 00013244  0x0000284b rtn 
+ 00013245  0x00002854 setarg  0x0000aa55 
+ 00013246  0x00002856 store  0x00000002 , 0x00000aaa 
+ 00013247  0x00002857 bpatch  0x000000c9 , 0x00004019 
+ 00013248  0x00002858 arg  0x00000002 , 0x00000002 
+ 00013249  0x00002859 arg  0x00000aaa , 0x00000011 
+ 00013250  0x0000285a arg  0x000000c3 , 0x00000012 
+ 00013251  0x0000285b branch  0x00006606 
+ 00013252  0x0000285f bpatch  0x000000ca , 0x00004019 
+ 00013253  0x00002860 arg  0x00000002 , 0x00000002 
+ 00013254  0x00002861 arg  0x00000a9a , 0x00000011 
+ 00013255  0x00002862 arg  0x000000c3 , 0x00000012 
+ 00013256  0x00002863 call  0x000065df 
+ 00013257  0x00002864 fetch  0x00000002 , 0x00000a9a 
+ 00013258  0x00002865 arg  0x0000aa55 , 0x00000002 
+ 00013259  0x00002866 isub  0x00000002 , 0x0000003e 
+ 00013260  0x00002867 rtn 
+ 00013261  0x0000286b fetch  0x00000001 , 0x0000455a 
+ 00013262  0x0000286c store  0x00000001 , 0x00004205 
+ 00013263  0x0000286d rtn 
+ 00013264  0x00002870 arg  0x00000009 , 0x00000007 
+ 00013265  0x00002871 branch  0x00002c32 
+ 00013266  0x00002874 arg  0x00000009 , 0x00000007 
+ 00013267  0x00002875 branch  0x00002c36 
+ 00013268  0x00002878 jam  0x00000005 , 0x00004206 
+ 00013269  0x00002879 branch  0x000033d0 
+ 00013270  0x0000287c arg  0x00004206 , 0x00000013 
+ 00013271  0x0000287d arg  0x000033d2 , 0x00000012 
+ 00013272  0x0000287e branch  0x0000336d 
+ 00013273  0x00002881 jam  0x00000001 , 0x00004363 
+ 00013274  0x00002882 rtn 
+ 00013275  0x00002885 jam  0x00000000 , 0x00004363 
+ 00013276  0x00002886 rtn 
+ 00013277  0x00002889 jam  0x0000000a , 0x00000a99 
+ 00013278  0x0000288a branch  0x00007d8f 
+ 00013279  0x0000288d jam  0x0000001d , 0x00000a99 
+ 00013280  0x0000288e branch  0x00007d8f 
+ 00013281  0x00002891 bpatch  0x000000cb , 0x00004019 
+ 00013282  0x00002892 fetch  0x00000001 , 0x00004207 
+ 00013283  0x00002893 store  0x00000001 , 0x0000016d 
+ 00013284  0x00002894 jam  0x00000001 , 0x00000228 
+ 00013285  0x00002895 jam  0x00000003 , 0x00000a99 
+ 00013286  0x00002896 branch  0x00007d8f 
+ 00013287  0x00002899 jam  0x0000001e , 0x00000a99 
+ 00013288  0x0000289a branch  0x00007d8f 
+ 00013289  0x0000289d jam  0x00000004 , 0x00000a99 
+ 00013290  0x0000289e branch  0x00007d8f 
+ 00013291  0x000028a1 fetch  0x00000002 , 0x00004687 
+ 00013292  0x000028a2 store  0x00000002 , 0x0000467e 
+ 00013293  0x000028a4 call  0x00003404 
+ 00013294  0x000028a6 jam  0x00000001 , 0x00000a99 
+ 00013295  0x000028a7 branch  0x00007d8f 
+ 00013296  0x000028aa setarg  0x00000000 
+ 00013297  0x000028ab store  0x00000002 , 0x0000467e 
+ 00013298  0x000028ac jam  0x00000002 , 0x00000a99 
+ 00013299  0x000028ad branch  0x00007d8f 
+ 00013300  0x000028b0 jam  0x0000000f , 0x00000a99 
+ 00013301  0x000028b1 branch  0x00007d8f 
+ 00013302  0x000028b4 jam  0x00000010 , 0x00000a99 
+ 00013303  0x000028b5 branch  0x00007d8f 
+ 00013304  0x000028b8 jam  0x0000000e , 0x00000a99 
+ 00013305  0x000028b9 branch  0x00007d8f 
+ 00013306  0x000028bc jam  0x0000000d , 0x00000a99 
+ 00013307  0x000028bd branch  0x00007d8f 
+ 00013308  0x000028c0 jam  0x00000017 , 0x00000a99 
+ 00013309  0x000028c1 branch  0x00007d8f 
+ 00013310  0x000028c4 jam  0x00000018 , 0x00000a99 
+ 00013311  0x000028c5 branch  0x00007d8f 
+ 00013312  0x000028c8 jam  0x00000016 , 0x00000a99 
+ 00013313  0x000028c9 branch  0x00007d8f 
+ 00013314  0x000028cc jam  0x00000011 , 0x00000a99 
+ 00013315  0x000028cd branch  0x00007d8f 
+ 00013316  0x000028d0 jam  0x00000015 , 0x00000a99 
+ 00013317  0x000028d1 branch  0x00007d8f 
+ 00013318  0x000028d4 jam  0x00000014 , 0x00000a99 
+ 00013319  0x000028d5 branch  0x00007d8f 
+ 00013320  0x000028d9 jam  0x00000013 , 0x00000a99 
+ 00013321  0x000028da branch  0x00007d8f 
+ 00013322  0x000028dd jam  0x00000019 , 0x00000a99 
+ 00013323  0x000028de branch  0x00007d8f 
+ 00013324  0x000028e1 jam  0x00000006 , 0x00000a99 
+ 00013325  0x000028e2 branch  0x00007d8f 
+ 00013326  0x000028e5 jam  0x00000005 , 0x00000a99 
+ 00013327  0x000028e6 branch  0x00007d8f 
+ 00013328  0x000028e9 jam  0x0000001f , 0x00000a99 
+ 00013329  0x000028ea branch  0x00007d8f 
+ 00013330  0x000028ed jam  0x00000020 , 0x00000a99 
+ 00013331  0x000028ee branch  0x00007d8f 
+ 00013332  0x000028f1 jam  0x00000025 , 0x00000a99 
+ 00013333  0x000028f2 branch  0x00007d8f 
+ 00013334  0x000028f5 set1  0x0000000d , 0x00000000 
+ 00013335  0x000028f6 rtn 
+ 00013336  0x000028f9 set0  0x0000000d , 0x00000000 
+ 00013337  0x000028fa rtn 
+ 00013338  0x0000290f call  0x0000342d 
+ 00013339  0x00002910 beq  0x00000002 , 0x00003424 
+ 00013340  0x00002912 setarg  0x00000001 
+ 00013341  0x00002913 istore  0x00000001 , 0x00000013 
+ 00013342  0x00002914 add  0x00000002 , 0x00000003 , 0x00000011 
+ 00013343  0x00002915 add  0x00000002 , 0x00000006 , 0x00000012 
+ 00013344  0x00002917 ifetcht  0x00000001 , 0x00000011 
+ 00013345  0x00002918 increase  0x00000001 , 0x00000013 
+ 00013346  0x00002919 istoret  0x00000001 , 0x00000013 
+ 00013347  0x0000291a branch  0x00003385 
+ 00013348  0x0000291d setarg  0x00000000 
+ 00013349  0x0000291e istore  0x00000001 , 0x00000013 
+ 00013350  0x0000291f fetch  0x00000002 , 0x00004682 
+ 00013351  0x00002920 bbit0  0x00000009 , 0x00003429 
+ 00013352  0x00002921 call  0x00003402 
+ 00013353  0x00002923 fetcht  0x00000002 , 0x0000423f 
+ 00013354  0x00002924 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00013355  0x00002925 add  0x00000002 , 0x00000004 , 0x00000012 
+ 00013356  0x00002926 branch  0x00003420 
+ 00013357  0x00002929 fetcht  0x00000002 , 0x0000423f 
+ 00013358  0x0000292a add  0x00000002 , 0x00000000 , 0x00000013 
+ 00013359  0x0000292b ifetch  0x00000001 , 0x00000013 
+ 00013360  0x0000292c rtn 
+ 00013361  0x0000292f call  0x0000342d 
+ 00013362  0x00002930 bne  0x00000000 , 0x00003434 
+ 00013363  0x00002931 branch  0x0000340a 
+ 00013364  0x00002933 add  0x00000002 , 0x0000000a , 0x00000012 
+ 00013365  0x00002934 branch  0x00003385 
+ 00013366  0x00002937 rtn  0x0000002b 
+ 00013367  0x00002938 jam  0x00000000 , 0x00008081 
+ 00013368  0x00002939 setarg  0x00003463 
+ 00013369  0x0000293a store  0x00000002 , 0x000041eb 
+ 00013370  0x0000293b setarg  0x0000696c 
+ 00013371  0x0000293c store  0x00000002 , 0x000041ed 
+ 00013372  0x0000293d setarg  0x000034f5 
+ 00013373  0x0000293e store  0x00000002 , 0x000041f3 
+ 00013374  0x0000293f setarg  0x000034f4 
+ 00013375  0x00002940 store  0x00000002 , 0x000041ef 
+ 00013376  0x00002941 setarg  0x0000347e 
+ 00013377  0x00002942 store  0x00000002 , 0x000041f5 
+ 00013378  0x00002943 setarg  0x000034b2 
+ 00013379  0x00002944 store  0x00000002 , 0x000041fd 
+ 00013380  0x00002945 setarg  0x00003465 
+ 00013381  0x00002946 store  0x00000002 , 0x000041fb 
+ 00013382  0x00002947 setarg  0x00003470 
+ 00013383  0x00002948 store  0x00000002 , 0x000041e9 
+ 00013384  0x00002949 setarg  0x00003501 
+ 00013385  0x0000294a store  0x00000002 , 0x000041f9 
+ 00013386  0x0000294b bpatch  0x000000cc , 0x00004019 
+ 00013387  0x0000294c call  0x0000359b 
+ 00013388  0x0000294d call  0x00006948 
+ 00013389  0x0000294e call  0x000035ad 
+ 00013390  0x0000294f call  0x00007d08 
+ 00013391  0x00002950 call  0x00007cd3 
+ 00013392  0x00002951 setarg  0x0000350b 
+ 00013393  0x00002952 store  0x00000002 , 0x00004766 
+ 00013394  0x00002953 setarg  0x000034fc 
+ 00013395  0x00002954 store  0x00000002 , 0x0000475d 
+ 00013396  0x00002955 setarg  0x000034f8 
+ 00013397  0x00002956 store  0x00000002 , 0x0000475f 
+ 00013398  0x00002957 setarg  0x0000346c 
+ 00013399  0x00002958 store  0x00000002 , 0x00004761 
+ 00013400  0x00002959 setarg  0x000035a2 
+ 00013401  0x0000295a store  0x00000002 , 0x000046a9 
+ 00013402  0x0000295b setarg  0x000035a4 
+ 00013403  0x0000295c store  0x00000002 , 0x000046ab 
+ 00013404  0x0000295d setarg  0x000035a9 
+ 00013405  0x0000295e store  0x00000002 , 0x000046b4 
+ 00013406  0x0000295f setarg  0x000035a6 
+ 00013407  0x00002960 store  0x00000002 , 0x000046b6 
+ 00013408  0x00002961 fetch  0x00000002 , 0x00004682 
+ 00013409  0x00002962 rtnbit1  0x0000000c 
+ 00013410  0x00002963 branch  0x0000340a 
+ 00013411  0x00002966 call  0x00003586 
+ 00013412  0x00002967 branch  0x0000340a 
+ 00013413  0x0000296a call  0x00005892 
+ 00013414  0x0000296b nrtn  0x00000034 
+ 00013415  0x0000296c arg  0x00000b06 , 0x00000011 
+ 00013416  0x0000296d call  0x00007e54 
+ 00013417  0x0000296e nrtn  0x00000028 
+ 00013418  0x0000296f arg  0x00000b06 , 0x00000006 
+ 00013419  0x00002970 branch  0x00004746 
+ 00013420  0x00002973 fetch  0x00000002 , 0x00004797 
+ 00013421  0x00002974 store  0x00000002 , 0x00004791 
+ 00013422  0x00002975 jam  0x00000001 , 0x00004753 
+ 00013423  0x00002976 branch  0x0000358f 
+ 00013424  0x00002979 fetch  0x00000001 , 0x0000479d 
+ 00013425  0x0000297a beq  0x00000001 , 0x00003479 
+ 00013426  0x0000297b fetch  0x00000002 , 0x00004682 
+ 00013427  0x0000297c bbit0  0x00000009 , 0x00003479 
+ 00013428  0x0000297d fetch  0x00000001 , 0x0000479e 
+ 00013429  0x0000297e beq  0x00000001 , 0x000033d0 
+ 00013430  0x0000297f fetch  0x00000001 , 0x00004700 
+ 00013431  0x00002980 nbranch  0x000033d0 , 0x00000034 
+ 00013432  0x00002981 branch  0x000033d2 
+ 00013433  0x00002984 fetch  0x00000001 , 0x0000479b 
+ 00013434  0x00002985 fetcht  0x00000001 , 0x0000479c 
+ 00013435  0x00002986 ior  0x00000002 , 0x0000003f 
+ 00013436  0x00002987 beq  0x00000001 , 0x000033d0 
+ 00013437  0x00002988 branch  0x000033d2 
+ 00013438  0x0000298b copy  0x00000013 , 0x0000003f 
+ 00013439  0x0000298c beq  0x0000002d , 0x00003431 
+ 00013440  0x0000298d beq  0x00000010 , 0x0000341a 
+ 00013441  0x0000298e beq  0x00000014 , 0x000034df 
+ 00013442  0x0000298f beq  0x00000015 , 0x000034e8 
+ 00013443  0x00002990 beq  0x00000040 , 0x00003485 
+ 00013444  0x00002991 rtn 
+ 00013445  0x00002993 fetch  0x00000002 , 0x00004509 
+ 00013446  0x00002994 beq  0x00000001 , 0x0000348c 
+ 00013447  0x00002996 fetch  0x00000002 , 0x000043d8 
+ 00013448  0x00002997 branch  0x000034a2 , 0x00000034 
+ 00013449  0x00002999 jam  0x00000002 , 0x0000478a 
+ 00013450  0x0000299a jam  0x0000003c , 0x0000478f 
+ 00013451  0x0000299b rtn 
+ 00013452  0x0000299e fetch  0x00000002 , 0x0000449a 
+ 00013453  0x0000299f branch  0x000034a0 , 0x00000034 
+ 00013454  0x000029a1 jam  0x00000001 , 0x0000478a 
+ 00013455  0x000029a2 fetcht  0x00000002 , 0x000047b4 
+ 00013456  0x000029a3 fetch  0x00000002 , 0x00004496 
+ 00013457  0x000029a4 iadd  0x00000002 , 0x0000003f 
+ 00013458  0x000029a5 store  0x00000002 , 0x00004496 
+ 00013459  0x000029a6 copy  0x0000003f , 0x00000011 
+ 00013460  0x000029a7 fetch  0x00000002 , 0x00004498 
+ 00013461  0x000029a8 iadd  0x00000002 , 0x0000003f 
+ 00013462  0x000029a9 store  0x00000002 , 0x00004498 
+ 00013463  0x000029aa iadd  0x00000011 , 0x0000003f 
+ 00013464  0x000029ab rshift  0x0000003f , 0x00000002 
+ 00013465  0x000029ac fetch  0x00000002 , 0x000047c0 
+ 00013466  0x000029ad idiv  0x00000002 
+ 00013467  0x000029ae call  0x00007f86 
+ 00013468  0x000029af quotient  0x0000003f 
+ 00013469  0x000029b0 store  0x00000002 , 0x0000449a 
+ 00013470  0x000029b1 jam  0x00000001 , 0x00004790 
+ 00013471  0x000029b2 rtn 
+ 00013472  0x000029b4 jam  0x00000003 , 0x0000478a 
+ 00013473  0x000029b5 rtn 
+ 00013474  0x000029b8 jam  0x00000000 , 0x00004172 
+ 00013475  0x000029b9 jam  0x00000000 , 0x00004790 
+ 00013476  0x000029ba fetch  0x00000002 , 0x000043d6 
+ 00013477  0x000029bb fetcht  0x00000002 , 0x000047be 
+ 00013478  0x000029bc isub  0x00000002 , 0x0000003e 
+ 00013479  0x000029bd setflag  0x00000002 , 0x00000000 , 0x00000011 
+ 00013480  0x000029be fetch  0x00000002 , 0x000047c0 
+ 00013481  0x000029bf fetcht  0x00000002 , 0x000043d6 
+ 00013482  0x000029c0 isub  0x00000002 , 0x0000003f 
+ 00013483  0x000029c1 setflag  0x00000002 , 0x00000001 , 0x00000011 
+ 00013484  0x000029c2 compare  0x00000003 , 0x00000011 , 0x00000003 
+ 00013485  0x000029c3 rtn  0x00000001 
+ 00013486  0x000029c4 fetch  0x00000008 , 0x000047be 
+ 00013487  0x000029c5 store  0x00000008 , 0x00004496 
+ 00013488  0x000029c6 jam  0x00000001 , 0x00004790 
+ 00013489  0x000029c7 rtn 
+ 00013490  0x000029cc call  0x0000337b 
+ 00013491  0x000029cd call  0x000034b9 
+ 00013492  0x000029ce call  0x000034be 
+ 00013493  0x000029cf call  0x000034d5 
+ 00013494  0x000029d0 call  0x000034ca 
+ 00013495  0x000029d1 call  0x000034c4 
+ 00013496  0x000029d2 branch  0x000034d9 
+ 00013497  0x000029d6 arg  0x00004799 , 0x00000013 
+ 00013498  0x000029d7 arg  0x000034bc , 0x00000012 
+ 00013499  0x000029d8 branch  0x0000336d 
+ 00013500  0x000029da jam  0x00000000 , 0x0000479a 
+ 00013501  0x000029db rtn 
+ 00013502  0x000029dd arg  0x00004793 , 0x00000013 
+ 00013503  0x000029de arg  0x000034c1 , 0x00000012 
+ 00013504  0x000029df branch  0x00003374 
+ 00013505  0x000029e1 arg  0x000046bf , 0x00000013 
+ 00013506  0x000029e2 arg  0x0000469e , 0x00000012 
+ 00013507  0x000029e3 branch  0x00003591 
+ 00013508  0x000029e7 arg  0x0000478f , 0x00000013 
+ 00013509  0x000029e8 arg  0x000034c7 , 0x00000012 
+ 00013510  0x000029e9 branch  0x0000336d 
+ 00013511  0x000029ec fetch  0x00000002 , 0x0000449a 
+ 00013512  0x000029ed store  0x00000001 , 0x00004172 
+ 00013513  0x000029ee rtn 
+ 00013514  0x000029f0 arg  0x00004790 , 0x00000013 
+ 00013515  0x000029f1 arg  0x000034cd , 0x00000012 
+ 00013516  0x000029f2 branch  0x0000336d 
+ 00013517  0x000029f4 fetch  0x00000001 , 0x0000043f 
+ 00013518  0x000029f5 compare  0x00000000 , 0x0000003f , 0x00000060 
+ 00013519  0x000029f6 nbranch  0x000034d3 , 0x00000001 
+ 00013520  0x000029f7 jam  0x00000001 , 0x0000478a 
+ 00013521  0x000029f8 call  0x00003416 
+ 00013522  0x000029f9 branch  0x00005abf 
+ 00013523  0x000029fb jam  0x00000001 , 0x00004790 
+ 00013524  0x000029fc rtn 
+ 00013525  0x000029ff arg  0x00004791 , 0x00000013 
+ 00013526  0x00002a00 arg  0x000034d8 , 0x00000012 
+ 00013527  0x00002a01 branch  0x00003374 
+ 00013528  0x00002a05 branch  0x0000341a 
+ 00013529  0x00002a0a arg  0x0000478d , 0x00000013 
+ 00013530  0x00002a0b arg  0x000034dc , 0x00000012 
+ 00013531  0x00002a0c branch  0x00003374 
+ 00013532  0x00002a0e fetch  0x00000002 , 0x000047a7 
+ 00013533  0x00002a0f store  0x00000002 , 0x0000478d 
+ 00013534  0x00002a10 branch  0x000035af 
+ 00013535  0x00002a14 fetch  0x00000002 , 0x000047a7 
+ 00013536  0x00002a15 store  0x00000002 , 0x0000478d 
+ 00013537  0x00002a16 setarg  0x00000000 
+ 00013538  0x00002a17 store  0x00000002 , 0x00004793 
+ 00013539  0x00002a18 store  0x00000002 , 0x00004791 
+ 00013540  0x00002a19 call  0x0000355c 
+ 00013541  0x00002a1a call  0x00003586 
+ 00013542  0x00002a1b jam  0x00000000 , 0x00004172 
+ 00013543  0x00002a1c branch  0x000033f8 
+ 00013544  0x00002a22 setarg  0x00000000 
+ 00013545  0x00002a23 store  0x00000004 , 0x0000478d 
+ 00013546  0x00002a24 store  0x00000003 , 0x0000478a 
+ 00013547  0x00002a25 store  0x00000002 , 0x00004509 
+ 00013548  0x00002a27 jam  0x00000001 , 0x000047a0 
+ 00013549  0x00002a28 fetch  0x00000002 , 0x00004797 
+ 00013550  0x00002a29 store  0x00000002 , 0x00004791 
+ 00013551  0x00002a2a call  0x00007e38 
+ 00013552  0x00002a2b fetch  0x00000001 , 0x00004759 
+ 00013553  0x00002a2c rtneq  0x00000000 
+ 00013554  0x00002a2d call  0x0000358f 
+ 00013555  0x00002a2e branch  0x0000356e 
+ 00013556  0x00002a33 branch  0x00003508 
+ 00013557  0x00002a37 fetch  0x00000001 , 0x00004759 
+ 00013558  0x00002a38 rtnne  0x00000002 
+ 00013559  0x00002a39 branch  0x00003508 
+ 00013560  0x00002a3f arg  0x000046cd , 0x00000013 
+ 00013561  0x00002a40 call  0x00003582 
+ 00013562  0x00002a41 arg  0x000046c6 , 0x00000013 
+ 00013563  0x00002a43 branch  0x00003584 
+ 00013564  0x00002a46 jam  0x00000000 , 0x0000436e 
+ 00013565  0x00002a47 arg  0x000046db , 0x00000013 
+ 00013566  0x00002a48 call  0x00003582 
+ 00013567  0x00002a49 arg  0x000046d4 , 0x00000013 
+ 00013568  0x00002a4a branch  0x000034fb 
+ 00013569  0x00002a4d fetch  0x00000001 , 0x00000477 
+ 00013570  0x00002a4e beq  0x00000012 , 0x00003504 
+ 00013571  0x00002a4f rtn 
+ 00013572  0x00002a51 fetch  0x00000002 , 0x00000478 
+ 00013573  0x00002a53 beq  0x0000000d , 0x00003536 
+ 00013574  0x00002a54 beq  0x0000000b , 0x00003571 
+ 00013575  0x00002a55 rtn 
+ 00013576  0x00002a5b fetch  0x00000001 , 0x00004753 
+ 00013577  0x00002a5c rtn  0x00000034 
+ 00013578  0x00002a5d branch  0x00006978 
+ 00013579  0x00002a62 copy  0x00000011 , 0x0000003f 
+ 00013580  0x00002a63 branch  0x00003510 , 0x00000034 
+ 00013581  0x00002a65 copy  0x00000007 , 0x0000003f 
+ 00013582  0x00002a66 beq  0x00000000 , 0x00003513 
+ 00013583  0x00002a67 rtn 
+ 00013584  0x00002a69 copy  0x00000007 , 0x0000003f 
+ 00013585  0x00002a6a beq  0x00000000 , 0x0000351b 
+ 00013586  0x00002a6b rtn 
+ 00013587  0x00002a6e jam  0x00000001 , 0x0000479d 
+ 00013588  0x00002a6f arg  0x000046f7 , 0x00000013 
+ 00013589  0x00002a70 call  0x00003582 
+ 00013590  0x00002a71 arg  0x000046f0 , 0x00000013 
+ 00013591  0x00002a72 call  0x00003584 
+ 00013592  0x00002a73 fetch  0x00000002 , 0x00004682 
+ 00013593  0x00002a74 bbit0  0x00000009 , 0x00003532 
+ 00013594  0x00002a75 branch  0x00003521 
+ 00013595  0x00002a78 jam  0x00000000 , 0x0000479d 
+ 00013596  0x00002a79 branch  0x0000351d 
+ 00013597  0x00002a7e fetch  0x00000001 , 0x0000479a 
+ 00013598  0x00002a7f rtnne  0x00000001 
+ 00013599  0x00002a80 jam  0x00000005 , 0x00004799 
+ 00013600  0x00002a81 rtn 
+ 00013601  0x00002a84 fetch  0x00000001 , 0x0000479a 
+ 00013602  0x00002a85 pincrease  0x00000001 
+ 00013603  0x00002a86 store  0x00000001 , 0x0000479a 
+ 00013604  0x00002a87 beq  0x00000001 , 0x00003527 
+ 00013605  0x00002a88 beq  0x00000002 , 0x0000352b 
+ 00013606  0x00002a89 rtn 
+ 00013607  0x00002a8b call  0x0000355c 
+ 00013608  0x00002a8c jam  0x00000001 , 0x00004771 
+ 00013609  0x00002a8d arg  0x0000476c , 0x00000013 
+ 00013610  0x00002a8e branch  0x00003544 
+ 00013611  0x00002a90 jam  0x00000000 , 0x0000479a 
+ 00013612  0x00002a91 jam  0x00000002 , 0x00004771 
+ 00013613  0x00002a92 arg  0x0000476c , 0x00000013 
+ 00013614  0x00002a93 call  0x00003544 
+ 00013615  0x00002a94 fetch  0x00000001 , 0x0000479e 
+ 00013616  0x00002a95 beq  0x00000001 , 0x00003551 
+ 00013617  0x00002a96 rtn 
+ 00013618  0x00002a99 fetch  0x00000002 , 0x00004797 
+ 00013619  0x00002a9a store  0x00000002 , 0x00004791 
+ 00013620  0x00002a9b call  0x0000355c 
+ 00013621  0x00002a9c branch  0x0000358f 
+ 00013622  0x00002aa0 bpatch  0x000000cd , 0x00004019 
+ 00013623  0x00002aa1 call  0x000036fc 
+ 00013624  0x00002aa2 ifetch  0x00000001 , 0x00000011 
+ 00013625  0x00002aa3 beq  0x00000003 , 0x0000353c 
+ 00013626  0x00002aa4 beq  0x00000007 , 0x00003540 
+ 00013627  0x00002aa5 rtn 
+ 00013628  0x00002aa8 fetch  0x00000001 , 0x0000479e 
+ 00013629  0x00002aa9 beq  0x00000000 , 0x00003551 
+ 00013630  0x00002aaa beq  0x00000001 , 0x0000355c 
+ 00013631  0x00002aab rtn 
+ 00013632  0x00002aae ifetch  0x00000001 , 0x00000012 
+ 00013633  0x00002aaf beq  0x00000001 , 0x00003564 
+ 00013634  0x00002ab0 beq  0x00000000 , 0x00003569 
+ 00013635  0x00002ab1 rtn 
+ 00013636  0x00002ab9 bpatch  0x000000ce , 0x00004019 
+ 00013637  0x00002aba fetch  0x00000001 , 0x0000478b 
+ 00013638  0x00002abb isolate1  0x00000000 , 0x0000003f 
+ 00013639  0x00002abc nrtn  0x00000001 
+ 00013640  0x00002abd add  0x00000013 , 0x00000006 , 0x00000006 
+ 00013641  0x00002abe ifetch  0x00000002 , 0x00000006 
+ 00013642  0x00002abf byteswap  0x0000003f , 0x0000003f 
+ 00013643  0x00002ac0 add  0x0000003f , 0x00000005 , 0x00000039 
+ 00013644  0x00002ac1 add  0x00000013 , 0x00000003 , 0x00000006 
+ 00013645  0x00002ac2 call  0x000036f0 
+ 00013646  0x00002ac3 istore  0x00000001 , 0x00000006 
+ 00013647  0x00002ac4 copy  0x00000013 , 0x00000011 
+ 00013648  0x00002ac5 branch  0x00007e3d 
+ 00013649  0x00002acc fetch  0x00000001 , 0x00004759 
+ 00013650  0x00002acd rtn  0x00000034 
+ 00013651  0x00002ace jam  0x00000001 , 0x0000479e 
+ 00013652  0x00002acf arg  0x000046e9 , 0x00000013 
+ 00013653  0x00002ad0 call  0x00003582 
+ 00013654  0x00002ad1 arg  0x000046e2 , 0x00000013 
+ 00013655  0x00002ad2 call  0x00003584 
+ 00013656  0x00002ad3 jam  0x00000004 , 0x00004780 
+ 00013657  0x00002ad4 jam  0x00000001 , 0x00004783 
+ 00013658  0x00002ad5 arg  0x0000477b , 0x00000013 
+ 00013659  0x00002ad6 branch  0x00003544 
+ 00013660  0x00002ad8 fetch  0x00000001 , 0x0000479e 
+ 00013661  0x00002ad9 rtn  0x00000034 
+ 00013662  0x00002ada jam  0x00000000 , 0x0000479e 
+ 00013663  0x00002adb call  0x00003586 
+ 00013664  0x00002adc jam  0x00000004 , 0x00004780 
+ 00013665  0x00002add jam  0x00000000 , 0x00004783 
+ 00013666  0x00002ade arg  0x0000477b , 0x00000013 
+ 00013667  0x00002adf branch  0x00003544 
+ 00013668  0x00002ae2 jam  0x00000001 , 0x0000479f 
+ 00013669  0x00002ae3 jam  0x00000007 , 0x00004780 
+ 00013670  0x00002ae4 jam  0x00000001 , 0x00004783 
+ 00013671  0x00002ae5 arg  0x0000477b , 0x00000013 
+ 00013672  0x00002ae6 branch  0x00003544 
+ 00013673  0x00002ae8 jam  0x00000000 , 0x0000479f 
+ 00013674  0x00002ae9 jam  0x00000007 , 0x00004780 
+ 00013675  0x00002aea jam  0x00000000 , 0x00004783 
+ 00013676  0x00002aeb arg  0x0000477b , 0x00000013 
+ 00013677  0x00002aec branch  0x00003544 
+ 00013678  0x00002aee fetch  0x00000001 , 0x0000479f 
+ 00013679  0x00002aef rtn  0x00000034 
+ 00013680  0x00002af0 branch  0x00003551 
+ 00013681  0x00002af3 ifetch  0x00000002 , 0x00000011 
+ 00013682  0x00002af4 store  0x00000002 , 0x0000478b 
+ 00013683  0x00002af5 isolate1  0x00000000 , 0x0000003f 
+ 00013684  0x00002af6 nrtn  0x00000001 
+ 00013685  0x00002af7 fetch  0x00000001 , 0x000047a0 
+ 00013686  0x00002af8 rtn  0x00000034 
+ 00013687  0x00002af9 jam  0x00000000 , 0x000047a0 
+ 00013688  0x00002afa fetch  0x00000008 , 0x000047b6 
+ 00013689  0x00002afb store  0x00000008 , 0x00004496 
+ 00013690  0x00002afc jam  0x00000002 , 0x00004790 
+ 00013691  0x00002afd call  0x000035af 
+ 00013692  0x00002afe call  0x000035b9 
+ 00013693  0x00002aff jam  0x00000007 , 0x00004780 
+ 00013694  0x00002b00 fetch  0x00000001 , 0x0000479f 
+ 00013695  0x00002b01 store  0x00000001 , 0x00004783 
+ 00013696  0x00002b02 arg  0x0000477b , 0x00000013 
+ 00013697  0x00002b03 branch  0x00003544 
+ 00013698  0x00002b08 arg  0x00000001 , 0x00000011 
+ 00013699  0x00002b09 branch  0x00003585 
+ 00013700  0x00002b0b arg  0x00000000 , 0x00000011 
+ 00013701  0x00002b0d branch  0x0000358c 
+ 00013702  0x00002b10 arg  0x00000000 , 0x00000011 
+ 00013703  0x00002b11 call  0x00007d19 
+ 00013704  0x00002b12 arg  0x00000001 , 0x00000011 
+ 00013705  0x00002b13 call  0x00007d19 
+ 00013706  0x00002b14 fetch  0x00000001 , 0x000047a1 
+ 00013707  0x00002b15 branch  0x000069d7 
+ 00013708  0x00002b18 call  0x00007d04 
+ 00013709  0x00002b19 arg  0x00000007 , 0x00000039 
+ 00013710  0x00002b1a branch  0x00007d26 
+ 00013711  0x00002b1f arg  0x000046b8 , 0x00000013 
+ 00013712  0x00002b20 arg  0x0000469a , 0x00000012 
+ 00013713  0x00002b22 call  0x00003596 
+ 00013714  0x00002b23 call  0x00003584 
+ 00013715  0x00002b24 fetch  0x00000002 , 0x00004795 
+ 00013716  0x00002b25 store  0x00000002 , 0x00004793 
+ 00013717  0x00002b26 branch  0x000033fa 
+ 00013718  0x00002b29 ifetch  0x00000002 , 0x00000012 
+ 00013719  0x00002b2a store  0x00000002 , 0x00004154 
+ 00013720  0x00002b2b ifetch  0x00000002 , 0x00000006 
+ 00013721  0x00002b2c store  0x00000002 , 0x00004482 
+ 00013722  0x00002b2d rtn 
+ 00013723  0x00002b30 arg  0x00000000 , 0x00000011 
+ 00013724  0x00002b31 call  0x000069a6 
+ 00013725  0x00002b32 fetch  0x00000006 , 0x000047a1 
+ 00013726  0x00002b33 store  0x00000006 , 0x00000a9a 
+ 00013727  0x00002b34 call  0x000069ae 
+ 00013728  0x00002b35 fetch  0x00000001 , 0x000047a1 
+ 00013729  0x00002b36 branch  0x000069d7 
+ 00013730  0x00002b39 jam  0x00000001 , 0x0000479b 
+ 00013731  0x00002b3a rtn 
+ 00013732  0x00002b3c jam  0x00000000 , 0x0000479b 
+ 00013733  0x00002b3d rtn 
+ 00013734  0x00002b42 jam  0x00000000 , 0x0000479c 
+ 00013735  0x00002b43 fetch  0x00000001 , 0x000047a1 
+ 00013736  0x00002b44 branch  0x000069d7 
+ 00013737  0x00002b47 jam  0x00000001 , 0x0000479c 
+ 00013738  0x00002b48 fetch  0x00000006 , 0x000047a1 
+ 00013739  0x00002b49 store  0x00000006 , 0x00000a9a 
+ 00013740  0x00002b4a branch  0x000069ae 
+ 00013741  0x00002b4f jam  0x00000000 , 0x0000422d 
+ 00013742  0x00002b50 branch  0x000068a8 
+ 00013743  0x00002b53 call  0x000068eb 
+ 00013744  0x00002b54 call  0x00006908 
+ 00013745  0x00002b55 store  0x00000002 , 0x000047b0 
+ 00013746  0x00002b56 arg  0x000047aa , 0x00000011 
+ 00013747  0x00002b57 call  0x00006930 
+ 00013748  0x00002b58 store  0x00000001 , 0x000047a9 
+ 00013749  0x00002b59 beq  0x00000000 , 0x000035be 
+ 00013750  0x00002b5a sub  0x0000003f , 0x00000064 , 0x0000003e 
+ 00013751  0x00002b5b nbranch  0x000035bc , 0x00000002 
+ 00013752  0x00002b5c store  0x00000001 , 0x00004783 
+ 00013753  0x00002b5e jam  0x00000005 , 0x00004780 
+ 00013754  0x00002b5f arg  0x0000477b , 0x00000013 
+ 00013755  0x00002b60 branch  0x00003544 
+ 00013756  0x00002b62 jam  0x00000064 , 0x00004783 
+ 00013757  0x00002b63 branch  0x000035b9 
+ 00013758  0x00002b66 branch  0x0000341a 
+ 00013759  0x00002b6b rtn  0x0000002b 
+ 00013760  0x00002b6c hfetch  0x00000001 , 0x00008081 
+ 00013761  0x00002b6d and_into  0x000000f0 , 0x0000003f 
+ 00013762  0x00002b6e hstore  0x00000001 , 0x00008081 
+ 00013763  0x00002b6f setarg  0x00003631 
+ 00013764  0x00002b70 store  0x00000002 , 0x000041eb 
+ 00013765  0x00002b72 setarg  0x00003633 
+ 00013766  0x00002b73 store  0x00000002 , 0x000041ed 
+ 00013767  0x00002b75 setarg  0x0000340a 
+ 00013768  0x00002b76 store  0x00000002 , 0x000041f7 
+ 00013769  0x00002b78 setarg  0x00003635 
+ 00013770  0x00002b79 store  0x00000002 , 0x000041f3 
+ 00013771  0x00002b7b setarg  0x0000364b 
+ 00013772  0x00002b7c store  0x00000002 , 0x000041f5 
+ 00013773  0x00002b7e setarg  0x000033d0 
+ 00013774  0x00002b7f store  0x00000002 , 0x000041e9 
+ 00013775  0x00002b81 setarg  0x000036f6 
+ 00013776  0x00002b82 store  0x00000002 , 0x000041f9 
+ 00013777  0x00002b84 setarg  0x0000367a 
+ 00013778  0x00002b85 store  0x00000002 , 0x000041fd 
+ 00013779  0x00002b87 call  0x00002c7a 
+ 00013780  0x00002b88 setarg  0x00003722 
+ 00013781  0x00002b89 add  0x00000013 , 0x000000de , 0x00000005 
+ 00013782  0x00002b8a istore  0x00000002 , 0x00000005 
+ 00013783  0x00002b8c setarg  0x000035ed 
+ 00013784  0x00002b8d store  0x00000002 , 0x0000475b 
+ 00013785  0x00002b8f setarg  0x000035ef 
+ 00013786  0x00002b90 store  0x00000002 , 0x0000475f 
+ 00013787  0x00002b92 bpatch  0x000000cf , 0x00004019 
+ 00013788  0x00002b93 call  0x00003628 
+ 00013789  0x00002b94 call  0x00007e38 
+ 00013790  0x00002b95 jam  0x00000002 , 0x00004172 
+ 00013791  0x00002b96 jam  0x00000000 , 0x000049f6 
+ 00013792  0x00002b97 fetch  0x00000001 , 0x000047cb 
+ 00013793  0x00002b98 store  0x00000001 , 0x0000469a 
+ 00013794  0x00002b99 beq  0x00000000 , 0x000035ee 
+ 00013795  0x00002b9a fetch  0x00000001 , 0x000047cc 
+ 00013796  0x00002b9b store  0x00000001 , 0x00004686 
+ 00013797  0x00002b9c jam  0x00000000 , 0x0000436e 
+ 00013798  0x00002b9e call  0x0000360f 
+ 00013799  0x00002b9f call  0x00007cd3 
+ 00013800  0x00002ba0 call  0x00007cdd 
+ 00013801  0x00002ba1 jam  0x00000001 , 0x000047f3 
+ 00013802  0x00002ba2 fetch  0x00000002 , 0x00004682 
+ 00013803  0x00002ba3 rtnbit1  0x0000000c 
+ 00013804  0x00002ba4 branch  0x0000340a 
+ 00013805  0x00002ba7 branch  0x0000360f 
+ 00013806  0x00002baa jam  0x00000002 , 0x000047f3 
+ 00013807  0x00002bac jam  0x00000001 , 0x0000436e 
+ 00013808  0x00002bad call  0x0000360f 
+ 00013809  0x00002bae arg  0x00000000 , 0x00000011 
+ 00013810  0x00002baf call  0x00007d1e 
+ 00013811  0x00002bb1 setarg  0x00000020 
+ 00013812  0x00002bb2 call  0x000046f0 
+ 00013813  0x00002bb4 arg  0x000043b7 , 0x00000005 
+ 00013814  0x00002bb5 fetch  0x00000001 , 0x000044a0 
+ 00013815  0x00002bb7 and  0x0000003f , 0x000000f0 , 0x00000002 
+ 00013816  0x00002bb8 rshift4  0x00000002 , 0x00000002 
+ 00013817  0x00002bb9 call  0x00003609 
+ 00013818  0x00002bba istoret  0x00000001 , 0x00000005 
+ 00013819  0x00002bbb and  0x0000003f , 0x0000000f , 0x00000002 
+ 00013820  0x00002bbc call  0x00003609 
+ 00013821  0x00002bbd istoret  0x00000001 , 0x00000005 
+ 00013822  0x00002bbe call  0x000057a6 
+ 00013823  0x00002bbf fetcht  0x00000001 , 0x000043af 
+ 00013824  0x00002bc0 copy  0x00000002 , 0x00000039 
+ 00013825  0x00002bc1 arg  0x00004372 , 0x00000005 
+ 00013826  0x00002bc2 arg  0x000043b0 , 0x00000006 
+ 00013827  0x00002bc3 call  0x00007f01 
+ 00013828  0x00002bc5 fetcht  0x00000001 , 0x000043af 
+ 00013829  0x00002bc6 copy  0x00000002 , 0x00000039 
+ 00013830  0x00002bc7 arg  0x00004392 , 0x00000005 
+ 00013831  0x00002bc8 arg  0x000043b0 , 0x00000006 
+ 00013832  0x00002bc9 branch  0x00007f01 
+ 00013833  0x00002bcb sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00013834  0x00002bcc branch  0x0000360d , 0x00000002 
+ 00013835  0x00002bcd add  0x00000002 , 0x00000037 , 0x00000002 
+ 00013836  0x00002bce rtn 
+ 00013837  0x00002bd0 add  0x00000002 , 0x00000030 , 0x00000002 
+ 00013838  0x00002bd1 rtn 
+ 00013839  0x00002bd4 fetch  0x00000001 , 0x000047c0 
+ 00013840  0x00002bd5 bne  0x000000ff , 0x00003621 
+ 00013841  0x00002bd7 fetch  0x00000001 , 0x000047be 
+ 00013842  0x00002bd8 bne  0x000000ff , 0x00003624 
+ 00013843  0x00002bda fetch  0x00000001 , 0x000047c9 
+ 00013844  0x00002bdb bne  0x000000ff , 0x00003626 
+ 00013845  0x00002bdd fetch  0x00000001 , 0x0000472c 
+ 00013846  0x00002bde copy  0x0000003f , 0x00000039 
+ 00013847  0x00002bdf setarg  0x0000472d 
+ 00013848  0x00002be0 copy  0x0000003f , 0x00000011 
+ 00013849  0x00002be2 copy  0x00000011 , 0x00000006 
+ 00013850  0x00002be3 ifetch  0x00000001 , 0x00000006 
+ 00013851  0x00002be4 copy  0x00000006 , 0x00000011 
+ 00013852  0x00002be5 beq  0x000000ff , 0x0000361f 
+ 00013853  0x00002be6 copy  0x0000003f , 0x00000002 
+ 00013854  0x00002be7 call  0x0000680e 
+ 00013855  0x00002be9 loop  0x00003619 
+ 00013856  0x00002beb rtn 
+ 00013857  0x00002bed fetch  0x00000008 , 0x000047c0 
+ 00013858  0x00002bee store  0x00000008 , 0x0000472f 
+ 00013859  0x00002bef branch  0x00003611 
+ 00013860  0x00002bf1 store  0x00000001 , 0x0000472d 
+ 00013861  0x00002bf2 branch  0x00003613 
+ 00013862  0x00002bf4 store  0x00000001 , 0x0000472e 
+ 00013863  0x00002bf5 branch  0x00003615 
+ 00013864  0x00002bf9 arg  0x00000000 , 0x00000011 
+ 00013865  0x00002bfa call  0x000069a6 
+ 00013866  0x00002bfb call  0x000037e4 
+ 00013867  0x00002bfc call  0x00002c7d 
+ 00013868  0x00002bfd branch  0x0000362d 
+ 00013869  0x00002c00 jam  0x00000064 , 0x000047cf 
+ 00013870  0x00002c01 fetch  0x00000001 , 0x000047c9 
+ 00013871  0x00002c02 store  0x00000001 , 0x00004744 
+ 00013872  0x00002c03 branch  0x000068a8 
+ 00013873  0x00002c06 call  0x00006835 
+ 00013874  0x00002c07 branch  0x0000696c 
+ 00013875  0x00002c0a branch  0x0000696c 
+ 00013876  0x00002c0f branch  0x00006978 
+ 00013877  0x00002c12 call  0x00003642 
+ 00013878  0x00002c13 call  0x000037ee 
+ 00013879  0x00002c14 call  0x00003639 
+ 00013880  0x00002c15 branch  0x00003634 
+ 00013881  0x00002c18 fetch  0x00000002 , 0x00004682 
+ 00013882  0x00002c19 rtnbit1  0x00000009 
+ 00013883  0x00002c1a fetch  0x00000001 , 0x000049f6 
+ 00013884  0x00002c1b beq  0x00000001 , 0x0000363e 
+ 00013885  0x00002c1c rtn 
+ 00013886  0x00002c1e fetch  0x00000001 , 0x000047ea 
+ 00013887  0x00002c1f rtneq  0x00000001 
+ 00013888  0x00002c20 jam  0x00000001 , 0x000047ea 
+ 00013889  0x00002c21 branch  0x00003654 
+ 00013890  0x00002c24 fetch  0x00000002 , 0x00004682 
+ 00013891  0x00002c25 rtnbit0  0x00000009 
+ 00013892  0x00002c26 call  0x00005892 
+ 00013893  0x00002c27 nrtn  0x00000034 
+ 00013894  0x00002c28 arg  0x00004718 , 0x00000011 
+ 00013895  0x00002c29 call  0x00007e54 
+ 00013896  0x00002c2a nrtn  0x00000028 
+ 00013897  0x00002c2b arg  0x00004718 , 0x00000006 
+ 00013898  0x00002c2c branch  0x00004746 
+ 00013899  0x00002c2f copy  0x00000013 , 0x0000003f 
+ 00013900  0x00002c30 beq  0x0000002d , 0x00003431 
+ 00013901  0x00002c31 beq  0x00000010 , 0x0000341a 
+ 00013902  0x00002c32 beq  0x00000014 , 0x00003651 
+ 00013903  0x00002c33 beq  0x00000015 , 0x00003660 
+ 00013904  0x00002c34 rtn 
+ 00013905  0x00002c37 setarg  0x00000000 
+ 00013906  0x00002c38 call  0x00003220 
+ 00013907  0x00002c39 branch  0x00003656 
+ 00013908  0x00002c3b fetch  0x00000002 , 0x000047eb 
+ 00013909  0x00002c3c store  0x00000002 , 0x000047ed 
+ 00013910  0x00002c3e jam  0x00000014 , 0x000047ce 
+ 00013911  0x00002c3f jam  0x00000000 , 0x00004091 
+ 00013912  0x00002c40 call  0x000033f8 
+ 00013913  0x00002c41 call  0x00003416 
+ 00013914  0x00002c42 fetch  0x00000001 , 0x000047bd 
+ 00013915  0x00002c43 beq  0x00000001 , 0x0000365e 
+ 00013916  0x00002c45 arg  0x00000000 , 0x00000011 
+ 00013917  0x00002c46 branch  0x00007d14 
+ 00013918  0x00002c48 arg  0x00000000 , 0x00000011 
+ 00013919  0x00002c49 branch  0x00007d19 
+ 00013920  0x00002c4c setarg  0x00000002 
+ 00013921  0x00002c4d call  0x00003220 
+ 00013922  0x00002c4f setarg  0x00000000 
+ 00013923  0x00002c50 store  0x00000005 , 0x0000479c 
+ 00013924  0x00002c51 setarg  0x00000004 
+ 00013925  0x00002c52 call  0x000069d7 
+ 00013926  0x00002c53 setarg  0x00000005 
+ 00013927  0x00002c54 call  0x000069d7 
+ 00013928  0x00002c55 setarg  0x00000014 
+ 00013929  0x00002c56 call  0x000069d7 
+ 00013930  0x00002c57 setarg  0x00000015 
+ 00013931  0x00002c58 call  0x000069d7 
+ 00013932  0x00002c59 setarg  0x00000016 
+ 00013933  0x00002c5a call  0x000069d7 
+ 00013934  0x00002c5b setarg  0x00000007 
+ 00013935  0x00002c5c call  0x000069d7 
+ 00013936  0x00002c5d call  0x00007e38 
+ 00013937  0x00002c5e jam  0x0000000a , 0x0000475e 
+ 00013938  0x00002c5f jam  0x0000000a , 0x00004760 
+ 00013939  0x00002c60 jam  0x0000000a , 0x00004762 
+ 00013940  0x00002c62 jam  0x00000002 , 0x00004172 
+ 00013941  0x00002c63 arg  0x00000000 , 0x00000011 
+ 00013942  0x00002c64 call  0x00007d1e 
+ 00013943  0x00002c66 setarg  0x00000020 
+ 00013944  0x00002c67 call  0x000046f0 
+ 00013945  0x00002c68 branch  0x000033fa 
+ 00013946  0x00002c6c call  0x0000373b 
+ 00013947  0x00002c6d call  0x0000373e 
+ 00013948  0x00002c6e call  0x00003741 
+ 00013949  0x00002c6f call  0x0000337b 
+ 00013950  0x00002c70 call  0x000036c8 
+ 00013951  0x00002c71 call  0x000036a1 
+ 00013952  0x00002c72 call  0x0000368a 
+ 00013953  0x00002c73 call  0x00003683 
+ 00013954  0x00002c74 branch  0x0000368f 
+ 00013955  0x00002c77 arg  0x0000479a , 0x00000013 
+ 00013956  0x00002c78 arg  0x00003686 , 0x00000012 
+ 00013957  0x00002c79 branch  0x0000336d 
+ 00013958  0x00002c7b call  0x00003847 
+ 00013959  0x00002c7c nrtn  0x00000001 
+ 00013960  0x00002c7d jam  0x00000001 , 0x0000479b 
+ 00013961  0x00002c7e rtn 
+ 00013962  0x00002c81 arg  0x000047ed , 0x00000013 
+ 00013963  0x00002c82 arg  0x0000368d , 0x00000012 
+ 00013964  0x00002c83 branch  0x00003374 
+ 00013965  0x00002c85 jam  0x00000002 , 0x000047ea 
+ 00013966  0x00002c86 branch  0x00003662 
+ 00013967  0x00002c89 arg  0x000047f1 , 0x00000013 
+ 00013968  0x00002c8a arg  0x00003692 , 0x00000012 
+ 00013969  0x00002c8b branch  0x0000336d 
+ 00013970  0x00002c8d fetch  0x00000001 , 0x000047f2 
+ 00013971  0x00002c8e branch  0x0000369e , 0x00000034 
+ 00013972  0x00002c8f jam  0x00000002 , 0x000047f1 
+ 00013973  0x00002c90 jam  0x00000000 , 0x000047f2 
+ 00013974  0x00002c91 setarg  0x00000a02 
+ 00013975  0x00002c92 store  0x00000002 , 0x00004752 
+ 00013976  0x00002c93 fetch  0x00000001 , 0x000047b9 
+ 00013977  0x00002c94 beq  0x00000003 , 0x0000369b 
+ 00013978  0x00002c96 branch  0x00003762 
+ 00013979  0x00002c98 setarg  0x00000a02 
+ 00013980  0x00002c99 store  0x00000002 , 0x00004754 
+ 00013981  0x00002c9a branch  0x00003762 
+ 00013982  0x00002c9c setarg  0x00000000 
+ 00013983  0x00002c9d store  0x00000004 , 0x00004752 
+ 00013984  0x00002c9e branch  0x00003762 
+ 00013985  0x00002ca1 fetch  0x00000001 , 0x000047c8 
+ 00013986  0x00002ca2 rtn  0x00000034 
+ 00013987  0x00002ca3 fetch  0x00000002 , 0x00004682 
+ 00013988  0x00002ca4 bbit0  0x00000009 , 0x000036c6 
+ 00013989  0x00002ca5 arg  0x000047ce , 0x00000013 
+ 00013990  0x00002ca6 arg  0x000036a8 , 0x00000012 
+ 00013991  0x00002ca7 branch  0x0000336d 
+ 00013992  0x00002ca9 fetch  0x00000001 , 0x000047cd 
+ 00013993  0x00002caa store  0x00000001 , 0x000047ce 
+ 00013994  0x00002cab fetch  0x00000001 , 0x000047d1 
+ 00013995  0x00002cac nrtn  0x00000034 
+ 00013996  0x00002cae call  0x000068eb 
+ 00013997  0x00002caf call  0x00006908 
+ 00013998  0x00002cb0 store  0x00000002 , 0x000047e8 
+ 00013999  0x00002cb1 arg  0x000047e2 , 0x00000011 
+ 00014000  0x00002cb2 call  0x00006930 
+ 00014001  0x00002cb3 fetcht  0x00000001 , 0x000047cf 
+ 00014002  0x00002cb4 isub  0x00000002 , 0x0000003e 
+ 00014003  0x00002cb5 branch  0x000036b6 , 0x00000002 
+ 00014004  0x00002cb6 store  0x00000001 , 0x000047cf 
+ 00014005  0x00002cb7 copy  0x0000003f , 0x00000002 
+ 00014006  0x00002cb9 storet  0x00000001 , 0x000047d0 
+ 00014007  0x00002cba fetch  0x00000001 , 0x000047ca 
+ 00014008  0x00002cbb isub  0x00000002 , 0x0000003e 
+ 00014009  0x00002cbc call  0x000036c1 , 0x00000002 
+ 00014010  0x00002cbd storet  0x00000001 , 0x000047db 
+ 00014011  0x00002cbe arg  0x00000006 , 0x00000039 
+ 00014012  0x00002cbf arg  0x000047d6 , 0x00000006 
+ 00014013  0x00002cc0 call  0x000036f0 
+ 00014014  0x00002cc1 store  0x00000001 , 0x000047dc 
+ 00014015  0x00002cc2 arg  0x000047d3 , 0x00000011 
+ 00014016  0x00002cc3 branch  0x00007e3d 
+ 00014017  0x00002cc5 fetch  0x00000001 , 0x000047d2 
+ 00014018  0x00002cc6 nrtn  0x00000034 
+ 00014019  0x00002cc7 jam  0x00000001 , 0x000047d2 
+ 00014020  0x00002cc8 arg  0x00000001 , 0x00000011 
+ 00014021  0x00002cc9 branch  0x00007d1e 
+ 00014022  0x00002ccb arg  0x00000001 , 0x00000011 
+ 00014023  0x00002ccc branch  0x00007d19 
+ 00014024  0x00002ccf arg  0x000047a4 , 0x00000013 
+ 00014025  0x00002cd0 arg  0x000036cb , 0x00000012 
+ 00014026  0x00002cd1 branch  0x0000336d 
+ 00014027  0x00002cd3 jam  0x00000005 , 0x000047a4 
+ 00014028  0x00002cd4 jam  0x00000000 , 0x000047a6 
+ 00014029  0x00002cd5 fetch  0x00000001 , 0x000047a5 
+ 00014030  0x00002cd6 beq  0x00000001 , 0x000036ee 
+ 00014031  0x00002cd7 beq  0x00000000 , 0x000036ec 
+ 00014032  0x00002cd9 arg  0x0000479c , 0x00000006 
+ 00014033  0x00002cda copy  0x00000006 , 0x00000011 
+ 00014034  0x00002cdb arg  0x00000008 , 0x00000039 
+ 00014035  0x00002cdd copy  0x00000011 , 0x00000006 
+ 00014036  0x00002cde ifetch  0x00000001 , 0x00000006 
+ 00014037  0x00002cdf copy  0x00000006 , 0x00000011 
+ 00014038  0x00002ce0 beq  0x00000000 , 0x000036e3 
+ 00014039  0x00002ce1 beq  0x00000001 , 0x000036e6 
+ 00014040  0x00002ce2 beq  0x00000002 , 0x000036e9 
+ 00014041  0x00002ce4 fetch  0x00000001 , 0x000047a6 
+ 00014042  0x00002ce5 increase  0x00000001 , 0x0000003f 
+ 00014043  0x00002ce6 store  0x00000001 , 0x000047a6 
+ 00014044  0x00002ce7 loop  0x000036d3 
+ 00014045  0x00002ce8 rtn 
+ 00014046  0x00002cea fetch  0x00000001 , 0x000047a6 
+ 00014047  0x00002ceb arg  0x000047c0 , 0x00000012 
+ 00014048  0x00002cec iadd  0x00000012 , 0x00000012 
+ 00014049  0x00002ced ifetcht  0x00000001 , 0x00000012 
+ 00014050  0x00002cee rtn 
+ 00014051  0x00002cf0 call  0x000036de 
+ 00014052  0x00002cf1 call  0x00006825 
+ 00014053  0x00002cf2 branch  0x000036d9 
+ 00014054  0x00002cf4 call  0x000036de 
+ 00014055  0x00002cf5 call  0x00006829 
+ 00014056  0x00002cf6 branch  0x000036d9 
+ 00014057  0x00002cf8 fetch  0x00000001 , 0x000047a5 
+ 00014058  0x00002cf9 beq  0x00000001 , 0x000036e3 
+ 00014059  0x00002cfa branch  0x000036e6 
+ 00014060  0x00002cfc jam  0x00000001 , 0x000047a5 
+ 00014061  0x00002cfd branch  0x000036d0 
+ 00014062  0x00002cff jam  0x00000000 , 0x000047a5 
+ 00014063  0x00002d00 branch  0x000036d0 
+ 00014064  0x00002d05 arg  0x00000000 , 0x00000011 
+ 00014065  0x00002d07 ifetch  0x00000001 , 0x00000006 
+ 00014066  0x00002d08 iadd  0x00000011 , 0x00000011 
+ 00014067  0x00002d09 loop  0x000036f1 
+ 00014068  0x00002d0b and  0x00000011 , 0x000000ff , 0x0000003f 
+ 00014069  0x00002d0c rtn 
+ 00014070  0x00002d0f fetch  0x00000001 , 0x00000477 
+ 00014071  0x00002d10 beq  0x00000012 , 0x000036f9 
+ 00014072  0x00002d11 rtn 
+ 00014073  0x00002d13 fetch  0x00000002 , 0x00000478 
+ 00014074  0x00002d14 beq  0x00000014 , 0x00003710 
+ 00014075  0x00002d15 rtn 
+ 00014076  0x00002d22 bpatch  0x000000d0 , 0x0000401a 
+ 00014077  0x00002d23 ifetch  0x00000005 , 0x00000011 
+ 00014078  0x00002d24 store  0x00000005 , 0x00000b12 
+ 00014079  0x00002d25 fetch  0x00000002 , 0x00000b12 
+ 00014080  0x00002d26 arg  0x00006b5a , 0x00000002 
+ 00014081  0x00002d27 isub  0x00000002 , 0x0000003e 
+ 00014082  0x00002d28 nrtn  0x00000005 
+ 00014083  0x00002d29 fetch  0x00000002 , 0x00000b15 
+ 00014084  0x00002d2a byteswap  0x0000003f , 0x0000003f 
+ 00014085  0x00002d2b store  0x00000002 , 0x00000b15 
+ 00014086  0x00002d2c copy  0x0000003f , 0x00000039 
+ 00014087  0x00002d2d increase  0x00000005 , 0x00000011 
+ 00014088  0x00002d2e copy  0x00000011 , 0x00000006 
+ 00014089  0x00002d2f arg  0x00000b17 , 0x00000005 
+ 00014090  0x00002d30 call  0x00007f01 
+ 00014091  0x00002d31 ifetch  0x00000001 , 0x00000006 
+ 00014092  0x00002d32 store  0x00000001 , 0x00000b21 
+ 00014093  0x00002d33 arg  0x00000b14 , 0x00000011 
+ 00014094  0x00002d34 arg  0x00000b17 , 0x00000012 
+ 00014095  0x00002d35 rtn 
+ 00014096  0x00002d38 setarg  0x00000000 
+ 00014097  0x00002d39 store  0x00000005 , 0x00004752 
+ 00014098  0x00002d3a store  0x00000005 , 0x00004757 
+ 00014099  0x00002d3b call  0x000036fc 
+ 00014100  0x00002d3c copy  0x00000012 , 0x00000006 
+ 00014101  0x00002d3d arg  0x00004752 , 0x00000005 
+ 00014102  0x00002d3e arg  0x0000000a , 0x00000039 
+ 00014103  0x00002d3f call  0x00007f01 
+ 00014104  0x00002d41 bpatch  0x000000d1 , 0x0000401a 
+ 00014105  0x00002d42 ifetch  0x00000001 , 0x00000011 
+ 00014106  0x00002d43 beq  0x00000002 , 0x0000374a 
+ 00014107  0x00002d44 beq  0x00000003 , 0x0000375c 
+ 00014108  0x00002d45 beq  0x00000004 , 0x00003762 
+ 00014109  0x00002d46 beq  0x00000005 , 0x00003762 
+ 00014110  0x00002d47 beq  0x00000006 , 0x000037b1 
+ 00014111  0x00002d48 beq  0x00000007 , 0x00003849 
+ 00014112  0x00002d49 beq  0x00000008 , 0x0000384c 
+ 00014113  0x00002d4a rtn 
+ 00014114  0x00002d4d fetch  0x00000002 , 0x00004682 
+ 00014115  0x00002d4e rtnbit1  0x00000009 
+ 00014116  0x00002d50 fetch  0x00000002 , 0x000047eb 
+ 00014117  0x00002d51 store  0x00000002 , 0x000047ed 
+ 00014118  0x00002d53 jam  0x00000001 , 0x000049f6 
+ 00014119  0x00002d55 setarg  0x0000010c 
+ 00014120  0x00002d56 call  0x000032cd 
+ 00014121  0x00002d57 call  0x00003710 
+ 00014122  0x00002d59 fetch  0x00000001 , 0x00000b14 
+ 00014123  0x00002d5a beq  0x00000004 , 0x0000372e 
+ 00014124  0x00002d5b beq  0x00000005 , 0x0000372e 
+ 00014125  0x00002d5c rtn 
+ 00014126  0x00002d5e fetch  0x00000001 , 0x00004752 
+ 00014127  0x00002d5f ncall  0x00003735 , 0x00000034 
+ 00014128  0x00002d60 fetch  0x00000001 , 0x00004754 
+ 00014129  0x00002d61 ncall  0x00003737 , 0x00000034 
+ 00014130  0x00002d62 fetch  0x00000001 , 0x00004756 
+ 00014131  0x00002d63 ncall  0x00003739 , 0x00000034 
+ 00014132  0x00002d64 rtn 
+ 00014133  0x00002d67 jam  0x00000005 , 0x000049f3 
+ 00014134  0x00002d68 rtn 
+ 00014135  0x00002d6a jam  0x00000005 , 0x000049f4 
+ 00014136  0x00002d6b rtn 
+ 00014137  0x00002d6d jam  0x00000005 , 0x000049f5 
+ 00014138  0x00002d6e rtn 
+ 00014139  0x00002d71 arg  0x000049f3 , 0x00000013 
+ 00014140  0x00002d72 arg  0x00003744 , 0x00000012 
+ 00014141  0x00002d73 branch  0x0000336d 
+ 00014142  0x00002d75 arg  0x000049f4 , 0x00000013 
+ 00014143  0x00002d76 arg  0x00003746 , 0x00000012 
+ 00014144  0x00002d77 branch  0x0000336d 
+ 00014145  0x00002d79 arg  0x000049f5 , 0x00000013 
+ 00014146  0x00002d7a arg  0x00003748 , 0x00000012 
+ 00014147  0x00002d7b branch  0x0000336d 
+ 00014148  0x00002d7e jam  0x00000000 , 0x00004752 
+ 00014149  0x00002d7f branch  0x00003762 
+ 00014150  0x00002d81 jam  0x00000000 , 0x00004754 
+ 00014151  0x00002d82 branch  0x00003762 
+ 00014152  0x00002d84 jam  0x00000000 , 0x00004756 
+ 00014153  0x00002d85 branch  0x00003762 
+ 00014154  0x00002d8b call  0x0000374c 
+ 00014155  0x00002d8c branch  0x0000374f 
+ 00014156  0x00002d8e fetch  0x00000001 , 0x00004752 
+ 00014157  0x00002d8f store  0x00000001 , 0x0000475f 
+ 00014158  0x00002d90 branch  0x00003773 
+ 00014159  0x00002d92 fetch  0x00000001 , 0x0000475e 
+ 00014160  0x00002d93 call  0x00003754 
+ 00014161  0x00002d94 fetch  0x00000001 , 0x00004753 
+ 00014162  0x00002d95 store  0x00000001 , 0x0000475d 
+ 00014163  0x00002d96 branch  0x00003770 
+ 00014164  0x00002d98 beq  0x00000002 , 0x00003758 
+ 00014165  0x00002d99 beq  0x00000003 , 0x0000375a 
+ 00014166  0x00002d9a store  0x00000001 , 0x0000475e 
+ 00014167  0x00002d9b rtn 
+ 00014168  0x00002d9d jam  0x00000005 , 0x0000475e 
+ 00014169  0x00002d9e rtn 
+ 00014170  0x00002da0 jam  0x0000000a , 0x0000475e 
+ 00014171  0x00002da1 rtn 
+ 00014172  0x00002da3 fetch  0x00000001 , 0x00004752 
+ 00014173  0x00002da4 call  0x00003754 
+ 00014174  0x00002da5 fetch  0x00000001 , 0x0000475e 
+ 00014175  0x00002da6 call  0x0000379e 
+ 00014176  0x00002da7 call  0x000037a1 
+ 00014177  0x00002da8 branch  0x000069c4 
+ 00014178  0x00002dab fetch  0x00000001 , 0x000047f0 
+ 00014179  0x00002dac nrtn  0x00000034 
+ 00014180  0x00002dad fetch  0x00000006 , 0x00004752 
+ 00014181  0x00002dae store  0x00000006 , 0x0000475d 
+ 00014182  0x00002daf fetch  0x00000001 , 0x0000475e 
+ 00014183  0x00002db0 fetcht  0x00000001 , 0x00004760 
+ 00014184  0x00002db1 iand  0x00000002 , 0x0000003f 
+ 00014185  0x00002db2 fetcht  0x00000001 , 0x00004762 
+ 00014186  0x00002db3 iand  0x00000002 , 0x0000003f 
+ 00014187  0x00002db4 call  0x00003779 , 0x00000034 
+ 00014188  0x00002db5 bpatch  0x000000d2 , 0x0000401a 
+ 00014189  0x00002db6 call  0x00003770 
+ 00014190  0x00002db7 call  0x00003773 
+ 00014191  0x00002db8 branch  0x00003776 
+ 00014192  0x00002dba arg  0x00004763 , 0x00000012 
+ 00014193  0x00002dbb arg  0x0000475d , 0x00000006 
+ 00014194  0x00002dbc branch  0x0000377b 
+ 00014195  0x00002dbe arg  0x0000476b , 0x00000012 
+ 00014196  0x00002dbf arg  0x0000475f , 0x00000006 
+ 00014197  0x00002dc0 branch  0x0000377b 
+ 00014198  0x00002dc2 arg  0x00004773 , 0x00000012 
+ 00014199  0x00002dc3 arg  0x00004761 , 0x00000006 
+ 00014200  0x00002dc4 branch  0x0000377b 
+ 00014201  0x00002dc6 jam  0x00000000 , 0x000047d1 
+ 00014202  0x00002dc7 rtn 
+ 00014203  0x00002dca ifetch  0x00000001 , 0x00000006 
+ 00014204  0x00002dcb beq  0x00000000 , 0x00003787 
+ 00014205  0x00002dcc beq  0x00000001 , 0x00003780 
+ 00014206  0x00002dcd beq  0x00000002 , 0x00003782 
+ 00014207  0x00002dce rtn 
+ 00014208  0x00002dd0 jam  0x00000000 , 0x0000477b 
+ 00014209  0x00002dd1 branch  0x00003783 
+ 00014210  0x00002dd3 jam  0x00000001 , 0x0000477b 
+ 00014211  0x00002dd4 ifetch  0x00000001 , 0x00000006 
+ 00014212  0x00002dd5 store  0x00000001 , 0x0000477d 
+ 00014213  0x00002dd6 ifetch  0x00000008 , 0x00000012 
+ 00014214  0x00002dd7 branch  0x0000378c 
+ 00014215  0x00002dda ifetch  0x00000001 , 0x00000012 
+ 00014216  0x00002ddb call  0x000069d7 
+ 00014217  0x00002ddc increase  0x00000001 , 0x00000012 
+ 00014218  0x00002ddd ifetch  0x00000001 , 0x00000012 
+ 00014219  0x00002dde branch  0x000069d7 
+ 00014220  0x00002de0 store  0x00000008 , 0x0000477e 
+ 00014221  0x00002de1 jam  0x00000001 , 0x000047d1 
+ 00014222  0x00002de2 fetch  0x00000001 , 0x0000477b 
+ 00014223  0x00002de3 beq  0x00000000 , 0x0000379a 
+ 00014224  0x00002de5 fetch  0x00000001 , 0x0000477f 
+ 00014225  0x00002de6 store  0x00000001 , 0x00004780 
+ 00014226  0x00002de7 fetch  0x00000001 , 0x0000477e 
+ 00014227  0x00002de9 call  0x000069d7 
+ 00014228  0x00002dea fetch  0x00000001 , 0x0000477d 
+ 00014229  0x00002deb call  0x0000379e 
+ 00014230  0x00002dec store  0x00000001 , 0x00004785 
+ 00014231  0x00002ded fetch  0x00000006 , 0x00004780 
+ 00014232  0x00002dee store  0x00000006 , 0x00000a9a 
+ 00014233  0x00002def branch  0x000069ae 
+ 00014234  0x00002df1 fetch  0x00000001 , 0x0000477e 
+ 00014235  0x00002df2 store  0x00000001 , 0x00004780 
+ 00014236  0x00002df3 fetch  0x00000001 , 0x0000477f 
+ 00014237  0x00002df4 branch  0x00003793 
+ 00014238  0x00002df7 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00014239  0x00002df8 add  0x0000003f , 0x00000032 , 0x0000003f 
+ 00014240  0x00002df9 rtn 
+ 00014241  0x00002dfb arg  0x00002ee0 , 0x00000002 
+ 00014242  0x00002dfc imul32  0x00000002 , 0x0000003f 
+ 00014243  0x00002dfd div  0x0000003f , 0x00000064 
+ 00014244  0x00002dfe call  0x00007f86 
+ 00014245  0x00002dff quotient  0x00000002 
+ 00014246  0x00002e00 copy  0x00000002 , 0x00000011 
+ 00014247  0x00002e01 setarg  0x00002ee0 
+ 00014248  0x00002e02 isub  0x00000002 , 0x00000012 
+ 00014249  0x00002e03 rtn 
+ 00014250  0x00002e07 hfetch  0x00000001 , 0x00008082 
+ 00014251  0x00002e08 set1  0x00000002 , 0x0000003f 
+ 00014252  0x00002e09 hstore  0x00000001 , 0x00008082 
+ 00014253  0x00002e0a setarg  0x0000009e 
+ 00014254  0x00002e0b hstore  0x00000002 , 0x00008068 
+ 00014255  0x00002e0c hstore  0x00000002 , 0x0000806a 
+ 00014256  0x00002e0d rtn 
+ 00014257  0x00002e10 fetch  0x00000001 , 0x000047f0 
+ 00014258  0x00002e11 nrtn  0x00000034 
+ 00014259  0x00002e12 fetch  0x00000002 , 0x00004752 
+ 00014260  0x00002e13 store  0x00000002 , 0x00004787 
+ 00014261  0x00002e14 fetch  0x00000001 , 0x000047ea 
+ 00014262  0x00002e15 bne  0x00000001 , 0x000037b9 
+ 00014263  0x00002e16 fetch  0x00000002 , 0x000044a0 
+ 00014264  0x00002e17 store  0x00000002 , 0x00004787 
+ 00014265  0x00002e19 bpatch  0x000000d3 , 0x0000401a 
+ 00014266  0x00002e1a call  0x000037aa 
+ 00014267  0x00002e1b call  0x000037dc 
+ 00014268  0x00002e1c setarg  0x0000bb80 
+ 00014269  0x00002e1d call  0x00002a8f 
+ 00014270  0x00002e1e call  0x000037e0 
+ 00014271  0x00002e1f setarg  0x00001c20 
+ 00014272  0x00002e20 call  0x00002a8f 
+ 00014273  0x00002e21 arg  0x00000010 , 0x00000039 
+ 00014274  0x00002e23 call  0x000037dc 
+ 00014275  0x00002e24 fetch  0x00000002 , 0x00004787 
+ 00014276  0x00002e25 bbit1  0x00000000 , 0x000037c9 
+ 00014277  0x00002e26 setarg  0x00001c20 
+ 00014278  0x00002e27 call  0x00002a8f 
+ 00014279  0x00002e28 call  0x000037e0 
+ 00014280  0x00002e29 branch  0x000037cc 
+ 00014281  0x00002e2c setarg  0x00003840 
+ 00014282  0x00002e2d call  0x00002a8f 
+ 00014283  0x00002e2e call  0x000037e0 
+ 00014284  0x00002e30 setarg  0x00001c20 
+ 00014285  0x00002e31 call  0x00002a8f 
+ 00014286  0x00002e32 fetch  0x00000002 , 0x00004787 
+ 00014287  0x00002e33 rshift  0x0000003f , 0x0000003f 
+ 00014288  0x00002e34 store  0x00000002 , 0x00004787 
+ 00014289  0x00002e35 loop  0x000037c2 
+ 00014290  0x00002e37 jam  0x00000002 , 0x000047f1 
+ 00014291  0x00002e38 jam  0x00000001 , 0x000047f2 
+ 00014292  0x00002e39 setarg  0x00000a01 
+ 00014293  0x00002e3a store  0x00000002 , 0x00004752 
+ 00014294  0x00002e3b fetch  0x00000001 , 0x000047b9 
+ 00014295  0x00002e3c beq  0x00000003 , 0x000037d9 
+ 00014296  0x00002e3e branch  0x00003762 
+ 00014297  0x00002e40 setarg  0x00000a01 
+ 00014298  0x00002e41 store  0x00000002 , 0x00004754 
+ 00014299  0x00002e42 branch  0x00003762 
+ 00014300  0x00002e45 hfetch  0x00000001 , 0x00008085 
+ 00014301  0x00002e46 or_into  0x00000040 , 0x0000003f 
+ 00014302  0x00002e47 hstore  0x00000001 , 0x00008085 
+ 00014303  0x00002e48 rtn 
+ 00014304  0x00002e4a hfetch  0x00000001 , 0x00008085 
+ 00014305  0x00002e4b and_into  0x000000bf , 0x0000003f 
+ 00014306  0x00002e4c hstore  0x00000001 , 0x00008085 
+ 00014307  0x00002e4d rtn 
+ 00014308  0x00002e50 fetch  0x00000001 , 0x000047bb 
+ 00014309  0x00002e51 rtneq  0x00000000 
+ 00014310  0x00002e52 call  0x00002c65 
+ 00014311  0x00002e53 fetcht  0x00000001 , 0x000047bc 
+ 00014312  0x00002e54 storet  0x00000001 , 0x00004786 
+ 00014313  0x00002e55 call  0x000067fb 
+ 00014314  0x00002e56 call  0x00003847 
+ 00014315  0x00002e57 nrtn  0x00000001 
+ 00014316  0x00002e58 jam  0x00000001 , 0x0000479a 
+ 00014317  0x00002e59 rtn 
+ 00014318  0x00002e5c fetch  0x00000001 , 0x000047bb 
+ 00014319  0x00002e5d rtneq  0x00000000 
+ 00014320  0x00002e5e fetch  0x00000001 , 0x0000479b 
+ 00014321  0x00002e5f nrtn  0x00000034 
+ 00014322  0x00002e60 fetch  0x00000002 , 0x00004682 
+ 00014323  0x00002e61 bbit1  0x00000009 , 0x000037f6 
+ 00014324  0x00002e62 fetch  0x00000001 , 0x000047ea 
+ 00014325  0x00002e63 rtnne  0x00000001 
+ 00014326  0x00002e65 bpatch  0x000000d4 , 0x0000401a 
+ 00014327  0x00002e66 call  0x00003847 
+ 00014328  0x00002e67 nrtn  0x00000001 
+ 00014329  0x00002e68 setarg  0x00008ca0 
+ 00014330  0x00002e69 call  0x00002a8f 
+ 00014331  0x00002e6a call  0x00003847 
+ 00014332  0x00002e6b nrtn  0x00000001 
+ 00014333  0x00002e6c call  0x0000383f 
+ 00014334  0x00002e6e call  0x00003842 
+ 00014335  0x00002e6f nrtn  0x00000002 
+ 00014336  0x00002e70 call  0x00003847 
+ 00014337  0x00002e71 branch  0x000037fe , 0x00000001 
+ 00014338  0x00002e72 arg  0x00000000 , 0x00000011 
+ 00014339  0x00002e73 arg  0x00000010 , 0x00000039 
+ 00014340  0x00002e74 call  0x0000383f 
+ 00014341  0x00002e76 call  0x00003842 
+ 00014342  0x00002e77 nrtn  0x00000002 
+ 00014343  0x00002e78 call  0x00003847 
+ 00014344  0x00002e79 nbranch  0x00003805 , 0x00000001 
+ 00014345  0x00002e7a setarg  0x00002a30 
+ 00014346  0x00002e7b call  0x00002a8f 
+ 00014347  0x00002e7c call  0x00003847 
+ 00014348  0x00002e7d branch  0x00003812 , 0x00000001 
+ 00014349  0x00002e7f setarg  0x00000000 
+ 00014350  0x00002e80 rshift  0x00000011 , 0x00000011 
+ 00014351  0x00002e81 ior  0x00000011 , 0x00000011 
+ 00014352  0x00002e82 loop  0x00003805 
+ 00014353  0x00002e83 branch  0x0000381b 
+ 00014354  0x00002e85 setarg  0x00008000 
+ 00014355  0x00002e86 rshift  0x00000011 , 0x00000011 
+ 00014356  0x00002e87 ior  0x00000011 , 0x00000011 
+ 00014357  0x00002e88 call  0x0000383f 
+ 00014358  0x00002e8a call  0x00003842 
+ 00014359  0x00002e8b nrtn  0x00000002 
+ 00014360  0x00002e8c call  0x00003847 
+ 00014361  0x00002e8d branch  0x00003816 , 0x00000001 
+ 00014362  0x00002e8e loop  0x00003805 
+ 00014363  0x00002e90 bpatch  0x000000d5 , 0x0000401a 
+ 00014364  0x00002e91 copy  0x00000011 , 0x0000003f 
+ 00014365  0x00002e92 store  0x00000002 , 0x00004789 
+ 00014366  0x00002e93 store  0x00000002 , 0x00004797 
+ 00014367  0x00002e94 fetch  0x00000001 , 0x000047ea 
+ 00014368  0x00002e95 beq  0x00000001 , 0x00003827 
+ 00014369  0x00002e97 arg  0x00000007 , 0x00000039 
+ 00014370  0x00002e98 arg  0x00004792 , 0x00000006 
+ 00014371  0x00002e99 call  0x000036f0 
+ 00014372  0x00002e9a store  0x00000001 , 0x00004799 
+ 00014373  0x00002e9b arg  0x0000478f , 0x00000011 
+ 00014374  0x00002e9c branch  0x00007e3d 
+ 00014375  0x00002e9f fetch  0x00000001 , 0x000047ef 
+ 00014376  0x00002ea0 increase  0x00000001 , 0x0000003f 
+ 00014377  0x00002ea1 store  0x00000001 , 0x000047ef 
+ 00014378  0x00002ea2 div  0x0000003f , 0x00000002 
+ 00014379  0x00002ea3 call  0x00007f86 
+ 00014380  0x00002ea4 quotient  0x00000002 
+ 00014381  0x00002ea5 remainder  0x0000003f 
+ 00014382  0x00002ea6 nbranch  0x00003838 , 0x00000034 
+ 00014383  0x00002ea8 fetch  0x00000001 , 0x000047bf 
+ 00014384  0x00002ea9 isub  0x00000002 , 0x0000003e 
+ 00014385  0x00002eaa call  0x0000383d , 0x00000005 
+ 00014386  0x00002eab arg  0x0000479c , 0x0000003f 
+ 00014387  0x00002eac increase  0xffffffff , 0x00000002 
+ 00014388  0x00002ead iadd  0x00000002 , 0x00000011 
+ 00014389  0x00002eae arg  0x00000000 , 0x0000003f 
+ 00014390  0x00002eaf istore  0x00000001 , 0x00000011 
+ 00014391  0x00002eb0 rtn 
+ 00014392  0x00002eb2 arg  0x0000479c , 0x0000003f 
+ 00014393  0x00002eb3 iadd  0x00000002 , 0x00000011 
+ 00014394  0x00002eb4 arg  0x00000002 , 0x0000003f 
+ 00014395  0x00002eb5 istore  0x00000001 , 0x00000011 
+ 00014396  0x00002eb6 rtn 
+ 00014397  0x00002eb8 jam  0x00000001 , 0x000047f0 
+ 00014398  0x00002eb9 rtn 
+ 00014399  0x00002ebb copy  0x00000022 , 0x0000003f 
+ 00014400  0x00002ebc store  0x00000004 , 0x0000478b 
+ 00014401  0x00002ebd rtn 
+ 00014402  0x00002ebf copy  0x00000022 , 0x0000003f 
+ 00014403  0x00002ec0 fetcht  0x00000004 , 0x0000478b 
+ 00014404  0x00002ec1 isub  0x00000002 , 0x0000003f 
+ 00014405  0x00002ec2 sub  0x0000003f , 0x000000c8 , 0x0000003e 
+ 00014406  0x00002ec3 rtn 
+ 00014407  0x00002ec6 fetcht  0x00000001 , 0x00004786 
+ 00014408  0x00002ec7 branch  0x0000681d 
+ 00014409  0x00002eca fetch  0x00000008 , 0x00004752 
+ 00014410  0x00002ecb store  0x00000008 , 0x0000479c 
+ 00014411  0x00002ecc rtn 
+ 00014412  0x00002ecf fetch  0x00000001 , 0x000047b9 
+ 00014413  0x00002ed0 store  0x00000001 , 0x000047af 
+ 00014414  0x00002ed1 fetch  0x00000001 , 0x000047ba 
+ 00014415  0x00002ed2 store  0x00000001 , 0x000047b0 
+ 00014416  0x00002ed3 fetch  0x00000001 , 0x000047bb 
+ 00014417  0x00002ed4 store  0x00000001 , 0x000047b1 
+ 00014418  0x00002ed5 arg  0x0000000d , 0x00000039 
+ 00014419  0x00002ed6 arg  0x000047aa , 0x00000006 
+ 00014420  0x00002ed7 call  0x000036f0 
+ 00014421  0x00002ed8 store  0x00000001 , 0x000047b7 
+ 00014422  0x00002ed9 arg  0x000047a7 , 0x00000011 
+ 00014423  0x00002eda branch  0x00007e3d 
+ 00014424  0x00002ee1 call  0x000065c2 
+ 00014425  0x00002ee2 jam  0x0000007a , 0x000046f6 
+ 00014426  0x00002ee3 call  0x0000386d 
+ 00014427  0x00002ee4 call  0x00003867 
+ 00014428  0x00002ee5 setarg  0x00003860 
+ 00014429  0x00002ee6 store  0x00000002 , 0x000041fd 
+ 00014430  0x00002ee7 arg  0x00000000 , 0x00000011 
+ 00014431  0x00002ee8 branch  0x000069a6 
+ 00014432  0x00002eeb fetch  0x00000002 , 0x000046a1 
+ 00014433  0x00002eec rtn  0x00000034 
+ 00014434  0x00002eed increase  0xffffffff , 0x0000003f 
+ 00014435  0x00002eee store  0x00000002 , 0x000046a1 
+ 00014436  0x00002eef rtnne  0x00000000 
+ 00014437  0x00002ef0 jam  0x00000000 , 0x000046a0 
+ 00014438  0x00002ef1 rtn 
+ 00014439  0x00002ef4 bpatch  0x000000d6 , 0x0000401a 
+ 00014440  0x00002ef5 fetch  0x00000001 , 0x000046a4 
+ 00014441  0x00002ef6 sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00014442  0x00002ef7 rtn  0x00000002 
+ 00014443  0x00002ef8 jam  0x00000000 , 0x000046a4 
+ 00014444  0x00002ef9 rtn 
+ 00014445  0x00002efc arg  0x000046a4 , 0x00000011 
+ 00014446  0x00002efd arg  0x00000000 , 0x00000012 
+ 00014447  0x00002efe arg  0x00000051 , 0x00000002 
+ 00014448  0x00002eff branch  0x000065df 
+ 00014449  0x00002f03 disable  0x00000028 
+ 00014450  0x00002f04 fetch  0x00000001 , 0x000046a3 
+ 00014451  0x00002f05 copy  0x0000003f , 0x00000039 
+ 00014452  0x00002f07 arg  0x000046a5 , 0x00000011 
+ 00014453  0x00002f08 copy  0x00000013 , 0x00000012 
+ 00014454  0x00002f0a bpatch  0x000000d7 , 0x0000401a 
+ 00014455  0x00002f0b call  0x0000387c 
+ 00014456  0x00002f0c branch  0x00007fe7 , 0x00000005 
+ 00014457  0x00002f0e increase  0x00000004 , 0x00000011 
+ 00014458  0x00002f0f loop  0x00003876 
+ 00014459  0x00002f10 rtn 
+ 00014460  0x00002f14 bpatch  0x000000d8 , 0x0000401b 
+ 00014461  0x00002f15 ifetch  0x00000003 , 0x00000011 
+ 00014462  0x00002f16 ifetcht  0x00000003 , 0x00000012 
+ 00014463  0x00002f17 isub  0x00000002 , 0x0000003e 
+ 00014464  0x00002f18 rtn 
+ 00014465  0x00002f1b bpatch  0x000000d9 , 0x0000401b 
+ 00014466  0x00002f1c ifetch  0x00000003 , 0x00000011 
+ 00014467  0x00002f1d ifetcht  0x00000003 , 0x00000012 
+ 00014468  0x00002f1e isub  0x00000002 , 0x0000003e 
+ 00014469  0x00002f1f nrtn  0x00000005 
+ 00014470  0x00002f20 ifetch  0x00000001 , 0x00000006 
+ 00014471  0x00002f21 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00014472  0x00002f22 rtn  0x00000005 
+ 00014473  0x00002f23 add  0x00000011 , 0x00000003 , 0x00000006 
+ 00014474  0x00002f24 ifetcht  0x00000001 , 0x00000006 
+ 00014475  0x00002f25 isub  0x00000002 , 0x0000003e 
+ 00014476  0x00002f26 rtn 
+ 00014477  0x00002f2a bpatch  0x000000da , 0x0000401b 
+ 00014478  0x00002f2b disable  0x00000028 
+ 00014479  0x00002f2c fetch  0x00000001 , 0x000046a3 
+ 00014480  0x00002f2d copy  0x0000003f , 0x00000039 
+ 00014481  0x00002f2f arg  0x000046a5 , 0x00000011 
+ 00014482  0x00002f30 copy  0x00000013 , 0x00000012 
+ 00014483  0x00002f32 call  0x00003881 
+ 00014484  0x00002f33 branch  0x00007fe7 , 0x00000005 
+ 00014485  0x00002f34 increase  0x00000004 , 0x00000011 
+ 00014486  0x00002f35 loop  0x00003893 
+ 00014487  0x00002f36 rtn 
+ 00014488  0x00002f3a fetch  0x00000001 , 0x00000004 
+ 00014489  0x00002f3b increase  0x00000001 , 0x0000003f 
+ 00014490  0x00002f3c store  0x00000001 , 0x00000004 
+ 00014491  0x00002f3d arg  0x000002e5 , 0x00000013 
+ 00014492  0x00002f40 ifetch  0x00000002 , 0x00000013 
+ 00014493  0x00002f41 arg  0x000055aa , 0x00000002 
+ 00014494  0x00002f42 isub  0x00000002 , 0x0000003e 
+ 00014495  0x00002f43 nrtn  0x00000005 
+ 00014496  0x00002f44 copy  0x00000006 , 0x00000013 
+ 00014497  0x00002f45 ifetcht  0x00000003 , 0x00000013 
+ 00014498  0x00002f46 setarg  0x00ffffff 
+ 00014499  0x00002f47 isub  0x00000002 , 0x0000003e 
+ 00014500  0x00002f48 branch  0x000038a8 , 0x00000005 
+ 00014501  0x00002f49 call  0x0000388d 
+ 00014502  0x00002f4a branch  0x000038a8 , 0x00000028 
+ 00014503  0x00002f4b rtn 
+ 00014504  0x00002f4e bpatch  0x000000db , 0x0000401b 
+ 00014505  0x00002f4f increase  0x00000004 , 0x00000013 
+ 00014506  0x00002f50 ifetch  0x00000001 , 0x00000013 
+ 00014507  0x00002f51 fetcht  0x00000001 , 0x000046f6 
+ 00014508  0x00002f52 isub  0x00000002 , 0x0000003e 
+ 00014509  0x00002f53 rtn  0x00000005 
+ 00014510  0x00002f54 store  0x00000001 , 0x000046f6 
+ 00014511  0x00002f55 fetch  0x00000001 , 0x00000003 
+ 00014512  0x00002f56 increase  0x00000001 , 0x0000003f 
+ 00014513  0x00002f57 store  0x00000001 , 0x00000003 
+ 00014514  0x00002f59 increase  0x00000001 , 0x00000013 
+ 00014515  0x00002f5a ifetch  0x00000001 , 0x00000013 
+ 00014516  0x00002f5b store  0x00000001 , 0x000046f5 
+ 00014517  0x00002f5c copy  0x0000003f , 0x00000039 
+ 00014518  0x00002f5d rtn  0x00000034 
+ 00014519  0x00002f5f ifetch  0x00000001 , 0x00000006 
+ 00014520  0x00002f60 beq  0x00000000 , 0x000038c2 
+ 00014521  0x00002f61 beq  0x00000001 , 0x000038cf 
+ 00014522  0x00002f62 beq  0x00000002 , 0x000038d4 
+ 00014523  0x00002f63 beq  0x00000003 , 0x000038d9 
+ 00014524  0x00002f64 beq  0x00000004 , 0x000038de 
+ 00014525  0x00002f65 beq  0x00000005 , 0x000038e3 
+ 00014526  0x00002f66 beq  0x00000006 , 0x000038e8 
+ 00014527  0x00002f67 beq  0x000000ff , 0x000038ea 
+ 00014528  0x00002f68 loop  0x000038b7 
+ 00014529  0x00002f69 rtn 
+ 00014530  0x00002f6c copy  0x00000006 , 0x00000013 
+ 00014531  0x00002f6d fetch  0x00000001 , 0x0000469a 
+ 00014532  0x00002f6e store  0x00000001 , 0x00000a9a 
+ 00014533  0x00002f6f arg  0x00000000 , 0x00000002 
+ 00014534  0x00002f71 storet  0x00000001 , 0x00000a9b 
+ 00014535  0x00002f72 setarg  0x00002710 
+ 00014536  0x00002f73 store  0x00000003 , 0x00000a9c 
+ 00014537  0x00002f74 ifetch  0x00000001 , 0x00000013 
+ 00014538  0x00002f75 store  0x00000001 , 0x00000a9f 
+ 00014539  0x00002f76 call  0x000069ae 
+ 00014540  0x00002f77 and  0x00000013 , 0x00000001 , 0x00000006 
+ 00014541  0x00002f78 loop  0x000038b7 
+ 00014542  0x00002f79 rtn 
+ 00014543  0x00002f7b copy  0x00000013 , 0x00000006 
+ 00014544  0x00002f7c fetch  0x00000001 , 0x0000469b 
+ 00014545  0x00002f7d store  0x00000001 , 0x00000a9a 
+ 00014546  0x00002f7e arg  0x00000001 , 0x00000002 
+ 00014547  0x00002f7f branch  0x000038c6 
+ 00014548  0x00002f81 copy  0x00000013 , 0x00000006 
+ 00014549  0x00002f82 fetch  0x00000001 , 0x0000469c 
+ 00014550  0x00002f83 store  0x00000001 , 0x00000a9a 
+ 00014551  0x00002f84 arg  0x00000002 , 0x00000002 
+ 00014552  0x00002f85 branch  0x000038c6 
+ 00014553  0x00002f87 copy  0x00000013 , 0x00000006 
+ 00014554  0x00002f88 fetch  0x00000001 , 0x0000469d 
+ 00014555  0x00002f89 store  0x00000001 , 0x00000a9a 
+ 00014556  0x00002f8a arg  0x00000003 , 0x00000002 
+ 00014557  0x00002f8b branch  0x000038c6 
+ 00014558  0x00002f8d copy  0x00000013 , 0x00000006 
+ 00014559  0x00002f8e fetch  0x00000001 , 0x0000469e 
+ 00014560  0x00002f8f store  0x00000001 , 0x00000a9a 
+ 00014561  0x00002f90 arg  0x00000004 , 0x00000002 
+ 00014562  0x00002f91 branch  0x000038c6 
+ 00014563  0x00002f93 copy  0x00000013 , 0x00000006 
+ 00014564  0x00002f94 fetch  0x00000001 , 0x0000469f 
+ 00014565  0x00002f95 store  0x00000001 , 0x00000a9a 
+ 00014566  0x00002f96 arg  0x00000005 , 0x00000002 
+ 00014567  0x00002f97 branch  0x000038c6 
+ 00014568  0x00002f9a ifetch  0x00000001 , 0x00000006 
+ 00014569  0x00002f9b rtn 
+ 00014570  0x00002f9e copy  0x00000006 , 0x00000013 
+ 00014571  0x00002f9f fetch  0x00000001 , 0x000046a0 
+ 00014572  0x00002fa0 bne  0x00000001 , 0x000038ee 
+ 00014573  0x00002fa1 call  0x000038f0 
+ 00014574  0x00002fa3 and  0x00000013 , 0x00000004 , 0x00000006 
+ 00014575  0x00002fa4 rtn 
+ 00014576  0x00002fa6 bpatch  0x000000dc , 0x0000401b 
+ 00014577  0x00002fa7 call  0x00003871 
+ 00014578  0x00002fa8 branch  0x000038fe , 0x00000028 
+ 00014579  0x00002fa9 fetch  0x00000001 , 0x000046a4 
+ 00014580  0x00002faa copy  0x0000003f , 0x00000002 
+ 00014581  0x00002fab increase  0x00000001 , 0x0000003f 
+ 00014582  0x00002fac store  0x00000001 , 0x000046a4 
+ 00014583  0x00002fad call  0x00003867 
+ 00014584  0x00002fae lshift2  0x00000002 , 0x00000002 
+ 00014585  0x00002faf setarg  0x000046a5 
+ 00014586  0x00002fb0 iadd  0x00000002 , 0x00000005 
+ 00014587  0x00002fb1 ifetch  0x00000004 , 0x00000013 
+ 00014588  0x00002fb2 istore  0x00000004 , 0x00000005 
+ 00014589  0x00002fb3 branch  0x00003903 
+ 00014590  0x00002fb5 add  0x00000013 , 0x00000003 , 0x00000006 
+ 00014591  0x00002fb6 ifetch  0x00000001 , 0x00000006 
+ 00014592  0x00002fb7 rtn  0x00000034 
+ 00014593  0x00002fb8 ifetch  0x00000004 , 0x00000013 
+ 00014594  0x00002fb9 istore  0x00000004 , 0x00000011 
+ 00014595  0x00002fbb arg  0x000046a4 , 0x00000011 
+ 00014596  0x00002fbc arg  0x00000000 , 0x00000012 
+ 00014597  0x00002fbd arg  0x00000051 , 0x00000002 
+ 00014598  0x00002fbe branch  0x00006606 
+ 00014599  0x00002fc6 fetcht  0x00000001 , 0x0000469a 
+ 00014600  0x00002fc7 call  0x00006825 
+ 00014601  0x00002fc8 rtn 
+ 00014602  0x00002fce fetcht  0x00000001 , 0x0000469a 
+ 00014603  0x00002fcf call  0x00006829 
+ 00014604  0x00002fd2 fetcht  0x00000001 , 0x0000469a 
+ 00014605  0x00002fd3 call  0x00006825 
+ 00014606  0x00002fd6 call  0x0000391d 
+ 00014607  0x00002fd8 fetch  0x00000001 , 0x000046a7 
+ 00014608  0x00002fd9 nrtn  0x00000034 
+ 00014609  0x00002fdb call  0x00002c29 
+ 00014610  0x00002fdc hfetch  0x00000004 , 0x00008138 
+ 00014611  0x00002fdd set0  0x0000000f , 0x0000003f 
+ 00014612  0x00002fde hstore  0x00000004 , 0x0000804c 
+ 00014613  0x00002fdf call  0x00002c21 
+ 00014614  0x00002fe0 arg  0xffffffff , 0x00000002 
+ 00014615  0x00002fe1 branch  0x00002b2a 
+ 00014616  0x00002fe4 fetch  0x00000001 , 0x000046a7 
+ 00014617  0x00002fe5 branch  0x000056f9 , 0x00000034 
+ 00014618  0x00002fe6 increase  0xffffffff , 0x0000003f 
+ 00014619  0x00002fe7 store  0x00000001 , 0x000046a7 
+ 00014620  0x00002fe8 branch  0x000056f9 
+ 00014621  0x00002feb mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00014622  0x00002fec arg  0x000046a8 , 0x00000006 
+ 00014623  0x00002fed iadd  0x00000006 , 0x00000006 
+ 00014624  0x00002fee ifetch  0x00000001 , 0x00000006 
+ 00014625  0x00002fef rtn  0x00000034 
+ 00014626  0x00002ff0 copy  0x0000003f , 0x00000011 
+ 00014627  0x00002ff1 copy  0x00000011 , 0x00000039 
+ 00014628  0x00002ff2 arg  0x00004372 , 0x00000005 
+ 00014629  0x00002ff3 call  0x00007f01 
+ 00014630  0x00002ff4 copy  0x00000011 , 0x0000003f 
+ 00014631  0x00002ff5 increase  0x00000002 , 0x0000003f 
+ 00014632  0x00002ff6 store  0x00000001 , 0x0000436f 
+ 00014633  0x00002ff7 rtn 
+ 00014634  0x00003000 rtn  0x0000002b 
+ 00014635  0x00003001 call  0x000057a3 
+ 00014636  0x00003002 call  0x000068a8 
+ 00014637  0x00003003 setarg  0x00003982 
+ 00014638  0x00003004 store  0x00000002 , 0x000041f3 
+ 00014639  0x00003005 setarg  0x0000396e 
+ 00014640  0x00003006 store  0x00000002 , 0x000041f1 
+ 00014641  0x00003007 setarg  0x00003986 
+ 00014642  0x00003008 store  0x00000002 , 0x000041f5 
+ 00014643  0x00003009 setarg  0x0000396d 
+ 00014644  0x0000300a store  0x00000002 , 0x000041ef 
+ 00014645  0x0000300b setarg  0x00003969 
+ 00014646  0x0000300c store  0x00000002 , 0x000041e9 
+ 00014647  0x0000300d setarg  0x00003ab7 
+ 00014648  0x0000300e store  0x00000002 , 0x000041fb 
+ 00014649  0x0000300f setarg  0x00003c32 
+ 00014650  0x00003010 store  0x00000002 , 0x0000456f 
+ 00014651  0x00003011 setarg  0x00003cc2 
+ 00014652  0x00003012 store  0x00000002 , 0x000041f9 
+ 00014653  0x00003013 setarg  0x00003cd7 
+ 00014654  0x00003014 store  0x00000002 , 0x000041fd 
+ 00014655  0x00003016 call  0x0000397f 
+ 00014656  0x00003017 bpatch  0x000000dd , 0x0000401b 
+ 00014657  0x00003018 call  0x00003945 
+ 00014658  0x00003019 call  0x00003964 
+ 00014659  0x0000301a call  0x00002c6f 
+ 00014660  0x0000301b branch  0x00003c48 
+ 00014661  0x0000301f fetch  0x00000004 , 0x000046aa 
+ 00014662  0x00003020 hstore  0x00000004 , 0x00008054 
+ 00014663  0x00003022 fetch  0x00000004 , 0x000046ae 
+ 00014664  0x00003023 hstore  0x00000004 , 0x0000805a 
+ 00014665  0x00003025 hfetch  0x00000001 , 0x00008081 
+ 00014666  0x00003026 or_into  0x00000004 , 0x0000003f 
+ 00014667  0x00003027 and_into  0x000000fc , 0x0000003f 
+ 00014668  0x00003028 hstore  0x00000001 , 0x00008081 
+ 00014669  0x00003029 jam  0x00000000 , 0x00008062 
+ 00014670  0x0000302b fetch  0x00000002 , 0x000046aa 
+ 00014671  0x0000302c hstore  0x00000002 , 0x00008058 
+ 00014672  0x0000302d fetch  0x00000002 , 0x000046ae 
+ 00014673  0x0000302e hstore  0x00000002 , 0x0000805e 
+ 00014674  0x0000302f hstore  0x00000002 , 0x00008060 
+ 00014675  0x00003031 hfetch  0x00000004 , 0x00008078 
+ 00014676  0x00003032 set1  0x00000007 , 0x0000003f 
+ 00014677  0x00003033 hstore  0x00000004 , 0x00008078 
+ 00014678  0x00003035 hfetch  0x00000002 , 0x00008050 
+ 00014679  0x00003036 set0  0x0000000f , 0x0000003f 
+ 00014680  0x00003037 hstore  0x00000002 , 0x00008050 
+ 00014681  0x00003038 call  0x000066ce 
+ 00014682  0x00003039 jam  0x00000000 , 0x00008043 
+ 00014683  0x0000303a jam  0x00000081 , 0x00008062 
+ 00014684  0x0000303c fetch  0x00000001 , 0x000046bf 
+ 00014685  0x0000303d isolate1  0x00000000 , 0x0000003f 
+ 00014686  0x0000303e hfetcht  0x00000001 , 0x00008062 
+ 00014687  0x0000303f setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00014688  0x00003040 hstoret  0x00000001 , 0x00008062 
+ 00014689  0x00003041 rtn 
+ 00014690  0x00003046 call  0x0000397f 
+ 00014691  0x00003047 branch  0x00003945 
+ 00014692  0x0000304f fetcht  0x00000001 , 0x0000469e 
+ 00014693  0x00003050 call  0x0000680e 
+ 00014694  0x00003051 call  0x000039e6 
+ 00014695  0x00003053 fetcht  0x00000001 , 0x0000469c 
+ 00014696  0x00003054 branch  0x000067fb 
+ 00014697  0x00003057 fetcht  0x00000001 , 0x0000469c 
+ 00014698  0x00003058 call  0x0000681d 
+ 00014699  0x00003059 nbranch  0x000033d2 , 0x00000001 
+ 00014700  0x0000305a branch  0x000033d0 
+ 00014701  0x0000305e rtn 
+ 00014702  0x00003061 call  0x00003970 
+ 00014703  0x00003062 branch  0x00003ce9 
+ 00014704  0x00003065 fetch  0x00000001 , 0x00004682 
+ 00014705  0x00003066 bbit0  0x00000004 , 0x0000397f 
+ 00014706  0x00003067 bpatch  0x000000de , 0x0000401b 
+ 00014707  0x00003068 setarg  0x00003eff 
+ 00014708  0x00003069 fetcht  0x00000004 , 0x000046c5 
+ 00014709  0x0000306a iadd  0x00000002 , 0x00000002 
+ 00014710  0x0000306b copy  0x00000022 , 0x0000003f 
+ 00014711  0x0000306c isub  0x00000002 , 0x0000003e 
+ 00014712  0x0000306d nrtn  0x00000002 
+ 00014713  0x0000306e fetch  0x00000002 , 0x00004682 
+ 00014714  0x0000306f bbit1  0x00000005 , 0x0000397f 
+ 00014715  0x00003070 fetch  0x00000001 , 0x000046bf 
+ 00014716  0x00003071 rtnbit1  0x00000006 
+ 00014717  0x00003072 call  0x00003cec 
+ 00014718  0x00003073 call  0x0000340e 
+ 00014719  0x00003075 copy  0x00000022 , 0x0000003f 
+ 00014720  0x00003076 store  0x00000004 , 0x000046c5 
+ 00014721  0x00003077 rtn 
+ 00014722  0x0000307b call  0x00003ce9 
+ 00014723  0x0000307c call  0x0000526e 
+ 00014724  0x0000307d nrtn  0x00000034 
+ 00014725  0x0000307e branch  0x000039eb 
+ 00014726  0x00003082 copy  0x00000013 , 0x0000003f 
+ 00014727  0x00003083 beq  0x00000001 , 0x000039d4 
+ 00014728  0x00003084 beq  0x00000002 , 0x000039a3 
+ 00014729  0x00003085 beq  0x00000004 , 0x000039d7 
+ 00014730  0x00003086 beq  0x00000005 , 0x000039c4 
+ 00014731  0x00003087 beq  0x00000008 , 0x000039aa 
+ 00014732  0x00003088 beq  0x00000009 , 0x000039b1 
+ 00014733  0x00003089 beq  0x0000000a , 0x000039c9 
+ 00014734  0x0000308a beq  0x0000000b , 0x000039b6 
+ 00014735  0x0000308b beq  0x0000000c , 0x000039c2 
+ 00014736  0x0000308c beq  0x00000013 , 0x000039d7 
+ 00014737  0x0000308d beq  0x00000014 , 0x000039cf 
+ 00014738  0x0000308e beq  0x00000015 , 0x000039c6 
+ 00014739  0x0000308f beq  0x00000021 , 0x000039ca 
+ 00014740  0x00003090 beq  0x00000023 , 0x000039cb 
+ 00014741  0x00003091 beq  0x00000024 , 0x000039ce 
+ 00014742  0x00003092 beq  0x00000030 , 0x00003c8a 
+ 00014743  0x00003093 beq  0x00000031 , 0x00003c8c 
+ 00014744  0x00003094 beq  0x00000032 , 0x00003c9a 
+ 00014745  0x00003095 beq  0x00000033 , 0x00003c98 
+ 00014746  0x00003096 beq  0x00000034 , 0x00003c84 
+ 00014747  0x00003097 beq  0x00000035 , 0x00003c73 
+ 00014748  0x00003098 beq  0x00000036 , 0x00003c82 
+ 00014749  0x00003099 beq  0x00000037 , 0x00003c8e 
+ 00014750  0x0000309a beq  0x00000038 , 0x00003c90 
+ 00014751  0x0000309b beq  0x0000003b , 0x00003ca1 
+ 00014752  0x0000309c beq  0x0000003d , 0x00003c6a 
+ 00014753  0x0000309d beq  0x00000041 , 0x000039d9 
+ 00014754  0x0000309e rtn 
+ 00014755  0x000030a2 call  0x0000397f 
+ 00014756  0x000030a3 fetch  0x00000001 , 0x00004665 
+ 00014757  0x000030a4 ncall  0x00003c8e , 0x00000034 
+ 00014758  0x000030a5 call  0x000039d7 
+ 00014759  0x000030a6 fetch  0x00000002 , 0x00004682 
+ 00014760  0x000030a7 rtnbit0  0x00000004 
+ 00014761  0x000030a8 branch  0x000039b1 
+ 00014762  0x000030ab fetch  0x00000002 , 0x00004682 
+ 00014763  0x000030ac set1  0x00000004 , 0x0000003f 
+ 00014764  0x000030ad store  0x00000002 , 0x00004682 
+ 00014765  0x000030ae fetch  0x00000001 , 0x000046a7 
+ 00014766  0x000030af store  0x00000001 , 0x00004172 
+ 00014767  0x000030b0 call  0x000039e6 
+ 00014768  0x000030b1 branch  0x00003c1d 
+ 00014769  0x000030b6 fetch  0x00000002 , 0x00004682 
+ 00014770  0x000030b7 rtnbit0  0x00000004 
+ 00014771  0x000030b8 set0  0x00000004 , 0x0000003f 
+ 00014772  0x000030b9 store  0x00000002 , 0x00004682 
+ 00014773  0x000030ba branch  0x00003c21 
+ 00014774  0x000030c0 call  0x0000397f 
+ 00014775  0x000030c3 fetch  0x00000002 , 0x00004042 
+ 00014776  0x000030c4 rshift  0x0000003f , 0x0000003f 
+ 00014777  0x000030c5 fetcht  0x00000002 , 0x000041e3 
+ 00014778  0x000030c6 isub  0x00000002 , 0x0000003e 
+ 00014779  0x000030c7 nbranch  0x000039bd , 0x00000005 
+ 00014780  0x000030c8 branch  0x00003416 
+ 00014781  0x000030ca fetch  0x00000001 , 0x000046bf 
+ 00014782  0x000030cb rtnbit1  0x00000005 
+ 00014783  0x000030cc hfetch  0x00000002 , 0x00008112 
+ 00014784  0x000030cd ncall  0x00003cf0 , 0x00000034 
+ 00014785  0x000030ce branch  0x0000340c 
+ 00014786  0x000030d1 call  0x00003cee 
+ 00014787  0x000030d2 branch  0x00003418 
+ 00014788  0x000030d5 call  0x0000397f 
+ 00014789  0x000030d6 branch  0x000039dd 
+ 00014790  0x000030d9 call  0x00005816 
+ 00014791  0x000030da call  0x000039d7 
+ 00014792  0x000030db branch  0x00003c23 
+ 00014793  0x000030de branch  0x000033dd 
+ 00014794  0x000030e2 branch  0x00003cee 
+ 00014795  0x000030e6 fetch  0x00000001 , 0x000046bf 
+ 00014796  0x000030e7 bbit0  0x00000005 , 0x0000340e 
+ 00014797  0x000030e8 branch  0x00003cf2 
+ 00014798  0x000030ec branch  0x00003cf2 
+ 00014799  0x000030f0 call  0x000058ba 
+ 00014800  0x000030f1 call  0x000039dd 
+ 00014801  0x000030f2 fetch  0x00000001 , 0x000046a8 
+ 00014802  0x000030f3 store  0x00000001 , 0x00004172 
+ 00014803  0x000030f4 branch  0x00003c1f 
+ 00014804  0x000030f8 jam  0x00000000 , 0x00004661 
+ 00014805  0x000030f9 call  0x00003cee 
+ 00014806  0x000030fa branch  0x00003cf2 
+ 00014807  0x000030ff call  0x00003a52 
+ 00014808  0x00003100 branch  0x000039db 
+ 00014809  0x00003104 call  0x00005cc9 
+ 00014810  0x00003105 branch  0x00005b02 
+ 00014811  0x00003109 fetcht  0x00000001 , 0x0000469e 
+ 00014812  0x0000310a branch  0x00006829 
+ 00014813  0x0000310d call  0x000039df 
+ 00014814  0x0000310e branch  0x000039e6 
+ 00014815  0x00003111 fetch  0x00000001 , 0x000046a1 
+ 00014816  0x00003112 isolate1  0x00000000 , 0x0000003f 
+ 00014817  0x00003113 call  0x000033f0 , 0x00000001 
+ 00014818  0x00003114 fetch  0x00000001 , 0x000046a1 
+ 00014819  0x00003115 isolate1  0x00000001 , 0x0000003f 
+ 00014820  0x00003116 call  0x000033f8 , 0x00000001 
+ 00014821  0x00003117 rtn 
+ 00014822  0x00003119 fetcht  0x00000001 , 0x0000469e 
+ 00014823  0x0000311a branch  0x00006825 
+ 00014824  0x0000311d fetch  0x00000001 , 0x0000456b 
+ 00014825  0x0000311e rtneq  0x00000000 
+ 00014826  0x0000311f branch  0x00006c28 
+ 00014827  0x00003122 hfetch  0x00000001 , 0x0000810c 
+ 00014828  0x00003123 bbit1  0x00000003 , 0x000039e8 
+ 00014829  0x00003124 call  0x000066cb 
+ 00014830  0x00003125 ifetch  0x00000001 , 0x00000003 
+ 00014831  0x00003126 bne  0x00000001 , 0x00003a01 
+ 00014832  0x00003127 hfetch  0x00000002 , 0x00008112 
+ 00014833  0x00003128 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00014834  0x00003129 rtn  0x00000002 
+ 00014835  0x0000312a ifetch  0x00000001 , 0x00000003 
+ 00014836  0x0000312b store  0x00000001 , 0x00000b03 
+ 00014837  0x0000312c ifetcht  0x00000001 , 0x00000003 
+ 00014838  0x0000312d copy  0x00000003 , 0x00000011 
+ 00014839  0x0000312e storet  0x00000001 , 0x00000b04 
+ 00014840  0x0000312f add  0x00000002 , 0x00000003 , 0x00000002 
+ 00014841  0x00003130 hfetch  0x00000002 , 0x00008112 
+ 00014842  0x00003131 isub  0x00000002 , 0x00000002 
+ 00014843  0x00003132 nrtn  0x00000002 
+ 00014844  0x00003133 jam  0x00000001 , 0x00000b05 
+ 00014845  0x00003134 call  0x00003a17 
+ 00014846  0x00003135 fetch  0x00000001 , 0x00000b05 
+ 00014847  0x00003136 rtneq  0x00000000 
+ 00014848  0x00003137 branch  0x00003a12 
+ 00014849  0x0000313a call  0x00007ec1 
+ 00014850  0x0000313b call  0x00003c79 
+ 00014851  0x0000313c branch  0x00003a04 
+ 00014852  0x00003140 bpatch  0x000000df , 0x0000401b 
+ 00014853  0x00003141 hfetch  0x00000002 , 0x00008112 
+ 00014854  0x00003142 rtn  0x00000034 
+ 00014855  0x00003143 call  0x000066cb 
+ 00014856  0x00003144 ifetch  0x00000001 , 0x00000003 
+ 00014857  0x00003145 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00014858  0x00003146 ncall  0x00003a16 , 0x00000005 
+ 00014859  0x00003147 nbranch  0x00003a04 , 0x00000005 
+ 00014860  0x00003148 ifetch  0x00000001 , 0x00000003 
+ 00014861  0x00003149 rtneq  0x00000005 
+ 00014862  0x0000314a rtneq  0x00000029 
+ 00014863  0x0000314b increase  0xffffffff , 0x00000003 
+ 00014864  0x0000314c call  0x00003a16 
+ 00014865  0x0000314d branch  0x00003a04 
+ 00014866  0x00003150 call  0x000066cb 
+ 00014867  0x00003151 increase  0x00000002 , 0x00000003 
+ 00014868  0x00003152 ifetch  0x00000001 , 0x00000003 
+ 00014869  0x00003153 iadd  0x00000003 , 0x00000003 
+ 00014870  0x00003155 branch  0x000066c8 
+ 00014871  0x00003159 bpatch  0x000000e0 , 0x0000401c 
+ 00014872  0x0000315a fetch  0x00000001 , 0x00000b03 
+ 00014873  0x0000315b beq  0x00000000 , 0x00003a3f 
+ 00014874  0x0000315c beq  0x00000001 , 0x00003a44 
+ 00014875  0x0000315d beq  0x00000002 , 0x00003a49 
+ 00014876  0x0000315e beq  0x00000003 , 0x00003a5f 
+ 00014877  0x0000315f beq  0x00000004 , 0x00003a6b 
+ 00014878  0x00003160 beq  0x00000005 , 0x00003a75 
+ 00014879  0x00003161 beq  0x00000009 , 0x00003a9a 
+ 00014880  0x00003162 beq  0x0000000b , 0x00003ad7 
+ 00014881  0x00003163 beq  0x0000000c , 0x00003ad8 
+ 00014882  0x00003164 beq  0x0000000d , 0x00003aec 
+ 00014883  0x00003165 beq  0x0000000e , 0x00003af4 
+ 00014884  0x00003166 beq  0x0000000f , 0x00003afa 
+ 00014885  0x00003167 beq  0x00000010 , 0x00003b06 
+ 00014886  0x00003168 beq  0x00000011 , 0x00003b0e 
+ 00014887  0x00003169 beq  0x00000012 , 0x00003b12 
+ 00014888  0x0000316a beq  0x00000026 , 0x00003b16 
+ 00014889  0x0000316b beq  0x00000028 , 0x00003b1d 
+ 00014890  0x0000316c beq  0x00000029 , 0x00003b2d 
+ 00014891  0x0000316d beq  0x0000002a , 0x00003b36 
+ 00014892  0x0000316e beq  0x0000002b , 0x00003b69 
+ 00014893  0x0000316f beq  0x0000002c , 0x00003b6f 
+ 00014894  0x00003170 beq  0x00000030 , 0x00003b76 
+ 00014895  0x00003171 beq  0x00000031 , 0x00003b7c 
+ 00014896  0x00003172 beq  0x00000032 , 0x00003b90 
+ 00014897  0x00003173 beq  0x00000033 , 0x00003b98 
+ 00014898  0x00003174 beq  0x00000034 , 0x00003bbb 
+ 00014899  0x00003175 beq  0x00000035 , 0x00003bc4 
+ 00014900  0x00003176 beq  0x00000036 , 0x00003bcd 
+ 00014901  0x00003177 beq  0x00000037 , 0x00003bd7 
+ 00014902  0x00003178 beq  0x00000038 , 0x00003bda 
+ 00014903  0x00003179 beq  0x00000040 , 0x00003be2 
+ 00014904  0x0000317a beq  0x00000042 , 0x00003bec 
+ 00014905  0x0000317b beq  0x00000048 , 0x00003bf1 
+ 00014906  0x0000317c beq  0x00000049 , 0x00003bfc 
+ 00014907  0x0000317d beq  0x00000051 , 0x00003c02 
+ 00014908  0x0000317e beq  0x00000061 , 0x00003c06 
+ 00014909  0x0000317f beq  0x000000ff , 0x00003c15 
+ 00014910  0x00003180 branch  0x00003c17 
+ 00014911  0x00003186 fetch  0x00000001 , 0x00000b04 
+ 00014912  0x00003187 bne  0x00000006 , 0x00003c17 
+ 00014913  0x00003188 ifetch  0x00000006 , 0x00000003 
+ 00014914  0x00003189 store  0x00000006 , 0x000040a0 
+ 00014915  0x0000318a branch  0x00003c1a 
+ 00014916  0x0000318e fetch  0x00000001 , 0x00000b04 
+ 00014917  0x0000318f bne  0x00000006 , 0x00003c17 
+ 00014918  0x00003190 ifetch  0x00000006 , 0x00000003 
+ 00014919  0x00003191 store  0x00000006 , 0x000044a0 
+ 00014920  0x00003192 branch  0x00003c1a 
+ 00014921  0x00003197 fetch  0x00000001 , 0x00000b04 
+ 00014922  0x00003198 bne  0x00000001 , 0x00003c17 
+ 00014923  0x00003199 copy  0x00000011 , 0x00000003 
+ 00014924  0x0000319a call  0x00003c1a 
+ 00014925  0x0000319b ifetcht  0x00000001 , 0x00000003 
+ 00014926  0x0000319c storet  0x00000001 , 0x000046a9 
+ 00014927  0x0000319d fetch  0x00000002 , 0x00004682 
+ 00014928  0x0000319e rtnbit1  0x00000009 
+ 00014929  0x0000319f rtnbit1  0x00000000 
+ 00014930  0x000031a1 fetch  0x00000001 , 0x000046a1 
+ 00014931  0x000031a2 isolate1  0x00000000 , 0x0000003f 
+ 00014932  0x000031a3 nbranch  0x00003a58 , 0x00000001 
+ 00014933  0x000031a4 fetcht  0x00000001 , 0x000046a9 
+ 00014934  0x000031a5 and  0x00000002 , 0x00000003 , 0x0000003f 
+ 00014935  0x000031a6 store  0x00000001 , 0x00004093 
+ 00014936  0x000031a8 fetch  0x00000001 , 0x000046a1 
+ 00014937  0x000031a9 isolate1  0x00000001 , 0x0000003f 
+ 00014938  0x000031aa nrtn  0x00000001 
+ 00014939  0x000031ab fetcht  0x00000001 , 0x000046a9 
+ 00014940  0x000031ac isolate1  0x00000002 , 0x00000002 
+ 00014941  0x000031ad branch  0x000033fa , 0x00000001 
+ 00014942  0x000031ae branch  0x000033f8 
+ 00014943  0x000031b3 fetch  0x00000001 , 0x00000b04 
+ 00014944  0x000031b4 sub  0x0000003f , 0x00000043 , 0x0000003e 
+ 00014945  0x000031b5 nbranch  0x00003c17 , 0x00000002 
+ 00014946  0x000031b6 store  0x00000001 , 0x00004515 
+ 00014947  0x000031b7 arg  0x00000008 , 0x00000039 
+ 00014948  0x000031b8 call  0x00007ec6 
+ 00014949  0x000031b9 fetch  0x00000001 , 0x00000b04 
+ 00014950  0x000031ba copy  0x0000003f , 0x00000039 
+ 00014951  0x000031bb copy  0x00000011 , 0x00000003 
+ 00014952  0x000031bc arg  0x00004516 , 0x00000005 
+ 00014953  0x000031bd call  0x000066ea 
+ 00014954  0x000031be branch  0x00003c1a 
+ 00014955  0x000031c3 fetch  0x00000001 , 0x00000b04 
+ 00014956  0x000031c4 sub  0x0000003f , 0x0000001d , 0x0000003e 
+ 00014957  0x000031c5 nbranch  0x00003c17 , 0x00000002 
+ 00014958  0x000031c6 store  0x00000001 , 0x000043af 
+ 00014959  0x000031c7 copy  0x0000003f , 0x00000039 
+ 00014960  0x000031c8 copy  0x00000011 , 0x00000003 
+ 00014961  0x000031c9 arg  0x000043b0 , 0x00000005 
+ 00014962  0x000031ca call  0x000066ea 
+ 00014963  0x000031cb call  0x000057a3 
+ 00014964  0x000031cc branch  0x00003c1a 
+ 00014965  0x000031d1 fetch  0x00000001 , 0x00004682 
+ 00014966  0x000031d2 bbit0  0x00000004 , 0x00003c17 
+ 00014967  0x000031d3 call  0x000033ba 
+ 00014968  0x000031d4 branch  0x00003a86 , 0x00000001 
+ 00014969  0x000031d5 jam  0x00000000 , 0x00000b05 
+ 00014970  0x000031d7 call  0x0000397f 
+ 00014971  0x000031d8 fetch  0x00000001 , 0x00004568 
+ 00014972  0x000031d9 rtn  0x00000034 
+ 00014973  0x000031da fetch  0x00000002 , 0x00004573 
+ 00014974  0x000031db bne  0x00000000 , 0x00003a84 
+ 00014975  0x000031dc fetch  0x00000001 , 0x00000b04 
+ 00014976  0x000031dd store  0x00000002 , 0x00004573 
+ 00014977  0x000031df copy  0x00000011 , 0x00000003 
+ 00014978  0x000031e2 copy  0x00000003 , 0x0000003f 
+ 00014979  0x000031e3 store  0x00000002 , 0x00004571 
+ 00014980  0x000031e5 call  0x00003a88 
+ 00014981  0x000031e6 branch  0x00006c4d 
+ 00014982  0x000031e9 jam  0x00000000 , 0x00000b05 
+ 00014983  0x000031ea branch  0x00003cd1 
+ 00014984  0x000031ed call  0x00003a8e 
+ 00014985  0x000031ee fetch  0x00000002 , 0x00004573 
+ 00014986  0x000031ef fetcht  0x00000002 , 0x0000469f 
+ 00014987  0x000031f0 isub  0x00000002 , 0x0000003f 
+ 00014988  0x000031f1 store  0x00000002 , 0x00004573 
+ 00014989  0x000031f2 rtn 
+ 00014990  0x000031f5 fetch  0x00000002 , 0x00004573 
+ 00014991  0x000031f6 arg  0x0000006e , 0x00000002 
+ 00014992  0x000031f7 call  0x00007fdd 
+ 00014993  0x000031f8 fetcht  0x00000002 , 0x0000456c 
+ 00014994  0x000031f9 call  0x00007fdd 
+ 00014995  0x000031fa fetcht  0x00000002 , 0x0000455e 
+ 00014996  0x000031fb call  0x00007fdd 
+ 00014997  0x000031fc store  0x00000002 , 0x0000469f 
+ 00014998  0x000031fd rtn 
+ 00014999  0x00003200 jam  0x00000001 , 0x00000b05 
+ 00015000  0x00003201 jam  0x00000005 , 0x00000b03 
+ 00015001  0x00003202 branch  0x00003c1a 
+ 00015002  0x00003207 fetch  0x00000002 , 0x00004682 
+ 00015003  0x00003208 bbit0  0x00000009 , 0x00003c17 
+ 00015004  0x00003209 call  0x00003ad4 
+ 00015005  0x0000320a branch  0x00003c17 , 0x00000028 
+ 00015006  0x0000320b jam  0x00000000 , 0x00000b05 
+ 00015007  0x0000320c fetch  0x00000001 , 0x000046bf 
+ 00015008  0x0000320d bbit1  0x00000004 , 0x00003ab4 
+ 00015009  0x0000320e fetch  0x00000001 , 0x000046c0 
+ 00015010  0x0000320f nrtn  0x00000034 
+ 00015011  0x00003210 jam  0x00000001 , 0x00000b05 
+ 00015012  0x00003211 ifetch  0x00000002 , 0x00000003 
+ 00015013  0x00003212 store  0x00000002 , 0x000046c1 
+ 00015014  0x00003213 copy  0x00000003 , 0x0000003f 
+ 00015015  0x00003214 store  0x00000002 , 0x000046c3 
+ 00015016  0x00003215 fetch  0x00000001 , 0x00000b04 
+ 00015017  0x00003216 pincrease  0xfffffffe 
+ 00015018  0x00003217 nbranch  0x00003c17 , 0x00000002 
+ 00015019  0x00003218 branch  0x00003c17 , 0x00000005 
+ 00015020  0x00003219 store  0x00000001 , 0x000046c0 
+ 00015021  0x0000321a jam  0x00000000 , 0x00000b05 
+ 00015022  0x0000321b call  0x00005814 
+ 00015023  0x0000321c call  0x00003ab7 
+ 00015024  0x0000321d call  0x00003ab7 
+ 00015025  0x0000321e call  0x00003ab7 
+ 00015026  0x0000321f fetch  0x00000001 , 0x000046bf 
+ 00015027  0x00003220 rtnbit0  0x00000004 
+ 00015028  0x00003222 jam  0x00000001 , 0x00000b05 
+ 00015029  0x00003223 call  0x00003cf6 
+ 00015030  0x00003224 branch  0x00003c1a 
+ 00015031  0x00003227 fetch  0x00000001 , 0x000046c0 
+ 00015032  0x00003228 rtn  0x00000034 
+ 00015033  0x00003229 call  0x00005892 
+ 00015034  0x0000322a nrtn  0x00000034 
+ 00015035  0x0000322b call  0x00003acf 
+ 00015036  0x0000322c bpatch  0x000000e1 , 0x0000401c 
+ 00015037  0x0000322d add  0x00000002 , 0xfffffffd , 0x0000003f 
+ 00015038  0x0000322e fetcht  0x00000001 , 0x000046c0 
+ 00015039  0x0000322f call  0x00007fdd 
+ 00015040  0x00003230 copy  0x0000003f , 0x00000011 
+ 00015041  0x00003231 copy  0x00000002 , 0x0000003f 
+ 00015042  0x00003232 isub  0x00000011 , 0x0000003f 
+ 00015043  0x00003233 store  0x00000001 , 0x000046c0 
+ 00015044  0x00003234 fetcht  0x00000002 , 0x000046c1 
+ 00015045  0x00003235 call  0x00005a64 
+ 00015046  0x00003236 fetch  0x00000002 , 0x000046c3 
+ 00015047  0x00003237 copy  0x0000003f , 0x00000003 
+ 00015048  0x00003238 copy  0x00000011 , 0x00000039 
+ 00015049  0x00003239 call  0x000066ea 
+ 00015050  0x0000323a copy  0x00000003 , 0x0000003f 
+ 00015051  0x0000323b store  0x00000002 , 0x000046c3 
+ 00015052  0x0000323c fetch  0x00000001 , 0x000046c0 
+ 00015053  0x0000323d nrtn  0x00000034 
+ 00015054  0x0000323e branch  0x00003cf4 
+ 00015055  0x00003243 arg  0x00000017 , 0x00000002 
+ 00015056  0x00003244 fetch  0x00000001 , 0x000046bf 
+ 00015057  0x00003245 rtnbit1  0x00000001 
+ 00015058  0x00003246 fetcht  0x00000002 , 0x000044a8 
+ 00015059  0x00003247 rtn 
+ 00015060  0x0000324a fetch  0x00000001 , 0x000046bf 
+ 00015061  0x0000324b bbit1  0x00000002 , 0x00005a42 
+ 00015062  0x0000324c branch  0x00007fe9 
+ 00015063  0x00003251 branch  0x00003c4c 
+ 00015064  0x00003256 copy  0x00000011 , 0x00000003 
+ 00015065  0x00003257 ifetch  0x00000001 , 0x00000003 
+ 00015066  0x00003258 beq  0x00000000 , 0x00003adf 
+ 00015067  0x00003259 beq  0x00000001 , 0x00003ae2 
+ 00015068  0x0000325a beq  0x00000002 , 0x00003ae8 
+ 00015069  0x0000325b beq  0x00000003 , 0x00003aea 
+ 00015070  0x0000325c branch  0x00003c17 
+ 00015071  0x0000325e call  0x0000612b 
+ 00015072  0x0000325f jam  0x00000000 , 0x0000465a 
+ 00015073  0x00003260 branch  0x00003c1a 
+ 00015074  0x00003262 setarg  0x00040003 
+ 00015075  0x00003264 store  0x00000003 , 0x0000465b 
+ 00015076  0x00003265 store  0x00000001 , 0x00004662 
+ 00015077  0x00003266 call  0x00006124 
+ 00015078  0x00003267 jam  0x00000001 , 0x0000465a 
+ 00015079  0x00003268 branch  0x00003c1a 
+ 00015080  0x0000326a setarg  0x00040002 
+ 00015081  0x0000326b branch  0x00003ae3 
+ 00015082  0x0000326e setarg  0x00040001 
+ 00015083  0x0000326f branch  0x00003ae3 
+ 00015084  0x00003273 fetch  0x00000001 , 0x00000b04 
+ 00015085  0x00003274 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00015086  0x00003275 nbranch  0x00003c17 , 0x00000002 
+ 00015087  0x00003276 store  0x00000001 , 0x00004689 
+ 00015088  0x00003277 copy  0x0000003f , 0x00000039 
+ 00015089  0x00003278 arg  0x0000468a , 0x00000005 
+ 00015090  0x00003279 call  0x000066fd 
+ 00015091  0x0000327a branch  0x00003c1a 
+ 00015092  0x0000327f copy  0x00000011 , 0x00000003 
+ 00015093  0x00003280 ifetch  0x00000001 , 0x00000003 
+ 00015094  0x00003281 hfetcht  0x00000001 , 0x00008062 
+ 00015095  0x00003282 nsetflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00015096  0x00003283 hstoret  0x00000001 , 0x00008062 
+ 00015097  0x00003284 branch  0x00003c1a 
+ 00015098  0x00003289 fetch  0x00000001 , 0x00000b04 
+ 00015099  0x0000328a copy  0x0000003f , 0x00000039 
+ 00015100  0x0000328b copy  0x00000011 , 0x00000003 
+ 00015101  0x0000328c call  0x00007f58 
+ 00015102  0x0000328d setarg  0x016e3600 
+ 00015103  0x0000328e idiv  0x00000002 
+ 00015104  0x0000328f call  0x00007f86 
+ 00015105  0x00003290 quotient  0x0000003f 
+ 00015106  0x00003292 store  0x00000002 , 0x00004243 
+ 00015107  0x00003293 call  0x00003c1a 
+ 00015108  0x00003294 call  0x00007f9e 
+ 00015109  0x00003295 branch  0x000066ce 
+ 00015110  0x0000329a arg  0x00000002 , 0x00000011 
+ 00015111  0x0000329b arg  0x0000469a , 0x00000012 
+ 00015112  0x0000329c arg  0x00000000 , 0x00000002 
+ 00015113  0x0000329d branch  0x00003c25 
+ 00015114  0x0000329f store  0x00000002 , 0x00000ac2 
+ 00015115  0x000032a0 arg  0x00000ac2 , 0x00000012 
+ 00015116  0x000032a1 arg  0x00000000 , 0x00000002 
+ 00015117  0x000032a2 branch  0x00003c25 
+ 00015118  0x000032a7 fetch  0x00000002 , 0x00004682 
+ 00015119  0x000032a8 bbit0  0x00000000 , 0x00003c17 
+ 00015120  0x000032aa call  0x00003c1a 
+ 00015121  0x000032ab branch  0x000033e9 
+ 00015122  0x000032b0 fetch  0x00000002 , 0x00004682 
+ 00015123  0x000032b1 bbit0  0x00000009 , 0x00003c17 
+ 00015124  0x000032b3 call  0x00003c1a 
+ 00015125  0x000032b4 branch  0x00003402 
+ 00015126  0x000032bb fetch  0x00000001 , 0x00000b04 
+ 00015127  0x000032bc copy  0x0000003f , 0x00000039 
+ 00015128  0x000032bd copy  0x00000011 , 0x00000003 
+ 00015129  0x000032be fetch  0x00000002 , 0x00004215 
+ 00015130  0x000032bf icopy  0x00000005 
+ 00015131  0x000032c0 call  0x000066ea 
+ 00015132  0x000032c1 branch  0x00003c1a 
+ 00015133  0x000032c6 fetch  0x00000001 , 0x00004682 
+ 00015134  0x000032c7 bbit0  0x00000000 , 0x00003c17 
+ 00015135  0x000032c8 ifetch  0x00000001 , 0x00000003 
+ 00015136  0x000032c9 fetcht  0x00000001 , 0x00004661 
+ 00015137  0x000032ca setflag  0x00000034 , 0x00000000 , 0x00000002 
+ 00015138  0x000032cb set1  0x00000007 , 0x00000002 
+ 00015139  0x000032cc storet  0x00000001 , 0x00004661 
+ 00015140  0x000032ce call  0x00003c1a 
+ 00015141  0x000032d0 fetch  0x00000001 , 0x00004661 
+ 00015142  0x000032d1 bbit1  0x00000006 , 0x00003b2b 
+ 00015143  0x000032d2 rtn 
+ 00015144  0x000032d5 jam  0x00000000 , 0x00004661 
+ 00015145  0x000032d6 jam  0x00000021 , 0x00000a99 
+ 00015146  0x000032d7 branch  0x00007d8f 
+ 00015147  0x000032db bbit1  0x00000000 , 0x00005f95 
+ 00015148  0x000032dc branch  0x00003b28 
+ 00015149  0x000032e1 fetch  0x00000001 , 0x00004682 
+ 00015150  0x000032e2 rtnbit0  0x00000004 
+ 00015151  0x000032e3 fetch  0x00000001 , 0x0000456b 
+ 00015152  0x000032e4 rtneq  0x00000000 
+ 00015153  0x000032e5 ifetch  0x00000001 , 0x00000003 
+ 00015154  0x000032e6 fetcht  0x00000001 , 0x00004569 
+ 00015155  0x000032e7 iadd  0x00000002 , 0x00000002 
+ 00015156  0x000032e8 storet  0x00000001 , 0x00004569 
+ 00015157  0x000032e9 rtn 
+ 00015158  0x000032ee arg  0x00000040 , 0x00000039 
+ 00015159  0x000032ef arg  0x0000436f , 0x00000005 
+ 00015160  0x000032f0 call  0x00007ed4 
+ 00015161  0x000032f1 setarg  0x00000000 
+ 00015162  0x000032f2 store  0x00000001 , 0x00000ab2 
+ 00015163  0x000032f3 copy  0x00000011 , 0x00000003 
+ 00015164  0x000032f5 copy  0x00000003 , 0x0000003f 
+ 00015165  0x000032f6 store  0x00000002 , 0x00000ab6 
+ 00015166  0x000032f7 call  0x00003b64 
+ 00015167  0x000032f9 fetch  0x00000001 , 0x00000ab2 
+ 00015168  0x000032fa fetcht  0x00000001 , 0x00000aa2 
+ 00015169  0x000032fb increase  0x00000001 , 0x00000002 
+ 00015170  0x000032fc iadd  0x00000002 , 0x0000003f 
+ 00015171  0x000032fd store  0x00000001 , 0x00000ab2 
+ 00015172  0x000032ff sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015173  0x00003300 nbranch  0x00003b50 , 0x00000002 
+ 00015174  0x00003302 fetcht  0x00000001 , 0x0000436f 
+ 00015175  0x00003303 setarg  0x00004370 
+ 00015176  0x00003304 iadd  0x00000002 , 0x0000003f 
+ 00015177  0x00003305 store  0x00000002 , 0x00000abb 
+ 00015178  0x00003306 fetcht  0x00000001 , 0x00000aa2 
+ 00015179  0x00003307 increase  0x00000001 , 0x00000002 
+ 00015180  0x00003308 fetch  0x00000001 , 0x0000436f 
+ 00015181  0x00003309 iadd  0x00000002 , 0x0000003f 
+ 00015182  0x0000330a store  0x00000001 , 0x0000436f 
+ 00015183  0x0000330b branch  0x00003b59 
+ 00015184  0x0000330d fetcht  0x00000001 , 0x0000438f 
+ 00015185  0x0000330e setarg  0x00004390 
+ 00015186  0x0000330f iadd  0x00000002 , 0x0000003f 
+ 00015187  0x00003310 store  0x00000002 , 0x00000abb 
+ 00015188  0x00003311 fetcht  0x00000001 , 0x00000aa2 
+ 00015189  0x00003312 increase  0x00000001 , 0x00000002 
+ 00015190  0x00003313 fetch  0x00000001 , 0x0000438f 
+ 00015191  0x00003314 iadd  0x00000002 , 0x0000003f 
+ 00015192  0x00003315 store  0x00000001 , 0x0000438f 
+ 00015193  0x00003317 fetch  0x00000002 , 0x00000abb 
+ 00015194  0x00003318 copy  0x0000003f , 0x00000005 
+ 00015195  0x00003319 fetch  0x00000002 , 0x00000ab6 
+ 00015196  0x0000331a copy  0x0000003f , 0x00000003 
+ 00015197  0x0000331c copy  0x00000002 , 0x00000039 
+ 00015198  0x0000331d call  0x000066ea 
+ 00015199  0x0000331f fetch  0x00000001 , 0x00000b04 
+ 00015200  0x00003320 fetcht  0x00000001 , 0x00000ab2 
+ 00015201  0x00003321 isub  0x00000002 , 0x0000003e 
+ 00015202  0x00003322 nbranch  0x00003b3c , 0x00000005 
+ 00015203  0x00003323 branch  0x00003c1a 
+ 00015204  0x00003327 ifetch  0x00000001 , 0x00000003 
+ 00015205  0x00003328 store  0x00000001 , 0x00000aa2 
+ 00015206  0x00003329 ifetch  0x00000001 , 0x00000003 
+ 00015207  0x0000332a store  0x00000001 , 0x00000aae 
+ 00015208  0x0000332b rtn 
+ 00015209  0x00003330 arg  0x00000000 , 0x00000002 
+ 00015210  0x00003331 arg  0x00000002 , 0x00000011 
+ 00015211  0x00003332 fetch  0x00000002 , 0x000046b4 
+ 00015212  0x00003333 store  0x00000002 , 0x00000ac2 
+ 00015213  0x00003334 arg  0x00000ac2 , 0x00000012 
+ 00015214  0x00003335 branch  0x00003c25 
+ 00015215  0x0000333a fetch  0x00000001 , 0x00000b04 
+ 00015216  0x0000333b bne  0x00000001 , 0x00003c17 
+ 00015217  0x0000333c ifetch  0x00000001 , 0x00000003 
+ 00015218  0x0000333d store  0x00000001 , 0x000046b2 
+ 00015219  0x0000333e setarg  0x00000000 
+ 00015220  0x0000333f store  0x00000002 , 0x000046b4 
+ 00015221  0x00003340 branch  0x00003c1a 
+ 00015222  0x00003345 ifetch  0x00000004 , 0x00000003 
+ 00015223  0x00003346 store  0x00000004 , 0x0000468a 
+ 00015224  0x00003347 jam  0x00000004 , 0x00004689 
+ 00015225  0x00003348 jam  0x00000000 , 0x00004663 
+ 00015226  0x00003349 call  0x00003c1a 
+ 00015227  0x0000334a branch  0x00005f31 
+ 00015228  0x0000334f fetch  0x00000001 , 0x00000b04 
+ 00015229  0x00003350 bne  0x00000003 , 0x00003c17 
+ 00015230  0x00003351 ifetch  0x00000001 , 0x00000003 
+ 00015231  0x00003352 beq  0x00000000 , 0x00003b82 
+ 00015232  0x00003353 beq  0x00000001 , 0x00003b8a 
+ 00015233  0x00003354 branch  0x00003c17 
+ 00015234  0x00003357 ifetcht  0x00000001 , 0x00000003 
+ 00015235  0x00003358 ifetch  0x00000001 , 0x00000003 
+ 00015236  0x00003359 beq  0x00000002 , 0x00003b88 
+ 00015237  0x0000335a nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00015238  0x0000335b call  0x000067fb 
+ 00015239  0x0000335c branch  0x00003c1a 
+ 00015240  0x0000335f call  0x00006806 
+ 00015241  0x00003360 branch  0x00003c1a 
+ 00015242  0x00003363 ifetcht  0x00000001 , 0x00000003 
+ 00015243  0x00003364 call  0x00006812 
+ 00015244  0x00003365 ifetch  0x00000001 , 0x00000003 
+ 00015245  0x00003366 isolate1  0x00000000 , 0x0000003f 
+ 00015246  0x00003367 call  0x0000682c 
+ 00015247  0x00003368 branch  0x00003c1a 
+ 00015248  0x0000336d fetch  0x00000001 , 0x00000b04 
+ 00015249  0x0000336e bne  0x00000001 , 0x00003c17 
+ 00015250  0x0000336f ifetcht  0x00000001 , 0x00000003 
+ 00015251  0x00003370 call  0x0000681d 
+ 00015252  0x00003371 setarg  0x00000000 
+ 00015253  0x00003372 nsetflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00015254  0x00003373 arg  0x00000001 , 0x00000011 
+ 00015255  0x00003374 branch  0x00003b0a 
+ 00015256  0x00003379 copy  0x00000011 , 0x00000003 
+ 00015257  0x0000337a ifetch  0x00000001 , 0x00000003 
+ 00015258  0x0000337b copy  0x0000003f , 0x00000002 
+ 00015259  0x0000337c beq  0x00000081 , 0x00003ba3 
+ 00015260  0x0000337d beq  0x00000082 , 0x00003ba8 
+ 00015261  0x0000337e beq  0x00000083 , 0x00003bae 
+ 00015262  0x0000337f store  0x00000001 , 0x000044c6 
+ 00015263  0x00003380 beq  0x00000000 , 0x00003bb3 
+ 00015264  0x00003381 beq  0x00000001 , 0x00003bb6 
+ 00015265  0x00003382 beq  0x00000002 , 0x00003bb8 
+ 00015266  0x00003383 branch  0x00003c17 
+ 00015267  0x00003386 fetch  0x00000001 , 0x000044be 
+ 00015268  0x00003387 branch  0x00003c17 , 0x00000034 
+ 00015269  0x00003388 storet  0x00000001 , 0x000044c6 
+ 00015270  0x00003389 jam  0x0000000d , 0x00004456 
+ 00015271  0x0000338a branch  0x00003bb4 
+ 00015272  0x0000338c fetch  0x00000001 , 0x000044be 
+ 00015273  0x0000338d branch  0x00003c17 , 0x00000034 
+ 00015274  0x0000338e storet  0x00000001 , 0x000044c6 
+ 00015275  0x0000338f jam  0x0000000d , 0x00004456 
+ 00015276  0x00003390 jam  0x00000001 , 0x00004454 
+ 00015277  0x00003391 branch  0x00003c1a 
+ 00015278  0x00003393 fetch  0x00000001 , 0x000044be 
+ 00015279  0x00003394 branch  0x00003c17 , 0x00000034 
+ 00015280  0x00003395 storet  0x00000001 , 0x000044c6 
+ 00015281  0x00003396 jam  0x0000000d , 0x00004456 
+ 00015282  0x00003397 branch  0x00003bb9 
+ 00015283  0x00003399 jam  0x00000000 , 0x00004456 
+ 00015284  0x0000339b jam  0x00000003 , 0x00004454 
+ 00015285  0x0000339c branch  0x00003c1a 
+ 00015286  0x0000339e jam  0x00000005 , 0x00004456 
+ 00015287  0x0000339f branch  0x00003bb4 
+ 00015288  0x000033a1 jam  0x00000005 , 0x00004456 
+ 00015289  0x000033a3 jam  0x00000000 , 0x00004454 
+ 00015290  0x000033a4 branch  0x00003c1a 
+ 00015291  0x000033a9 fetch  0x00000001 , 0x00000b04 
+ 00015292  0x000033aa sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015293  0x000033ab nbranch  0x00003c17 , 0x00000002 
+ 00015294  0x000033ac store  0x00000001 , 0x0000436f 
+ 00015295  0x000033ad copy  0x0000003f , 0x00000039 
+ 00015296  0x000033ae copy  0x00000011 , 0x00000003 
+ 00015297  0x000033af arg  0x00004370 , 0x00000005 
+ 00015298  0x000033b0 call  0x000066ea 
+ 00015299  0x000033b1 branch  0x00003c1a 
+ 00015300  0x000033b6 fetch  0x00000001 , 0x00000b04 
+ 00015301  0x000033b7 sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015302  0x000033b8 nbranch  0x00003c17 , 0x00000002 
+ 00015303  0x000033b9 store  0x00000001 , 0x0000438f 
+ 00015304  0x000033ba copy  0x0000003f , 0x00000039 
+ 00015305  0x000033bb copy  0x00000011 , 0x00000003 
+ 00015306  0x000033bc arg  0x00004390 , 0x00000005 
+ 00015307  0x000033bd call  0x000066ea 
+ 00015308  0x000033be branch  0x00003c1a 
+ 00015309  0x000033c3 fetch  0x00000002 , 0x00004682 
+ 00015310  0x000033c4 bbit0  0x00000009 , 0x00003c17 
+ 00015311  0x000033c5 fetch  0x00000001 , 0x00000b04 
+ 00015312  0x000033c6 bne  0x00000008 , 0x00003c17 
+ 00015313  0x000033c7 copy  0x00000011 , 0x00000003 
+ 00015314  0x000033c8 ifetch  0x00000008 , 0x00000003 
+ 00015315  0x000033c9 store  0x00000008 , 0x00004496 
+ 00015316  0x000033ca jam  0x00000012 , 0x00000a99 
+ 00015317  0x000033cb call  0x00007d8f 
+ 00015318  0x000033cc branch  0x00003c1a 
+ 00015319  0x000033d1 ifetch  0x00000002 , 0x00000003 
+ 00015320  0x000033d2 store  0x00000002 , 0x00004482 
+ 00015321  0x000033d3 branch  0x00003c1a 
+ 00015322  0x000033d8 fetch  0x00000001 , 0x000044c6 
+ 00015323  0x000033d9 branch  0x00003c17 , 0x00000034 
+ 00015324  0x000033da fetch  0x00000001 , 0x000044c4 
+ 00015325  0x000033db bne  0x00000000 , 0x00003c17 
+ 00015326  0x000033dc fetch  0x00000001 , 0x000044c5 
+ 00015327  0x000033dd bne  0x00000000 , 0x00003c17 
+ 00015328  0x000033de call  0x00007e25 
+ 00015329  0x000033df branch  0x00003c1a 
+ 00015330  0x000033e4 fetch  0x00000001 , 0x00000b04 
+ 00015331  0x000033e5 bne  0x00000005 , 0x00003c17 
+ 00015332  0x000033e6 ifetch  0x00000001 , 0x00000003 
+ 00015333  0x000033e7 store  0x00000001 , 0x000046a2 
+ 00015334  0x000033e8 ifetch  0x00000004 , 0x00000003 
+ 00015335  0x000033e9 store  0x00000004 , 0x000046a3 
+ 00015336  0x000033ea fetcht  0x00000001 , 0x000046a2 
+ 00015337  0x000033eb call  0x0000680e 
+ 00015338  0x000033ec call  0x00003cbc 
+ 00015339  0x000033ed branch  0x00003c1a 
+ 00015340  0x000033f2 fetch  0x00000001 , 0x00000b04 
+ 00015341  0x000033f3 bne  0x00000001 , 0x00003c17 
+ 00015342  0x000033f4 ifetch  0x00000001 , 0x00000003 
+ 00015343  0x000033f5 store  0x00000001 , 0x000041de 
+ 00015344  0x000033f6 branch  0x00003c1a 
+ 00015345  0x000033fb ifetch  0x00000001 , 0x00000003 
+ 00015346  0x000033fc beq  0x00000001 , 0x00003bfa 
+ 00015347  0x000033fd fetch  0x00000001 , 0x000044c1 
+ 00015348  0x000033fe beq  0x00000003 , 0x00003bf8 
+ 00015349  0x000033ff beq  0x00000006 , 0x00003bf8 
+ 00015350  0x00003400 beq  0x00000007 , 0x00003bf8 
+ 00015351  0x00003401 branch  0x00003c17 
+ 00015352  0x00003403 jam  0x00000001 , 0x000044c2 
+ 00015353  0x00003404 branch  0x00003c1a 
+ 00015354  0x00003407 call  0x00005b53 
+ 00015355  0x00003408 branch  0x00003c1a 
+ 00015356  0x0000340d fetch  0x00000001 , 0x00000b04 
+ 00015357  0x0000340e bne  0x00000001 , 0x00003c17 
+ 00015358  0x0000340f call  0x00003c1a 
+ 00015359  0x00003410 ifetch  0x00000001 , 0x00000003 
+ 00015360  0x00003411 branch  0x000060cb , 0x00000034 
+ 00015361  0x00003412 branch  0x000060c9 
+ 00015362  0x00003417 call  0x00003c1a 
+ 00015363  0x00003418 call  0x00007f9e 
+ 00015364  0x00003419 jam  0x00000001 , 0x00008010 
+ 00015365  0x0000341a branch  0x00002a8e 
+ 00015366  0x0000341f fetch  0x00000001 , 0x00000b04 
+ 00015367  0x00003420 beq  0x00000000 , 0x00003c17 
+ 00015368  0x00003421 ifetch  0x00000001 , 0x00000003 
+ 00015369  0x00003422 branch  0x00003c13 , 0x00000034 
+ 00015370  0x00003423 fetch  0x00000001 , 0x00000b04 
+ 00015371  0x00003424 bne  0x00000005 , 0x00003c17 
+ 00015372  0x00003425 ifetch  0x00000004 , 0x00000003 
+ 00015373  0x00003426 arg  0x000f4240 , 0x00000002 
+ 00015374  0x00003427 isub  0x00000002 , 0x0000003e 
+ 00015375  0x00003428 branch  0x00003c17 , 0x00000002 
+ 00015376  0x00003429 store  0x00000004 , 0x000044c7 
+ 00015377  0x0000342a call  0x0000580c 
+ 00015378  0x0000342b branch  0x00003c1a 
+ 00015379  0x0000342e call  0x0000580e 
+ 00015380  0x0000342f branch  0x00003c1a 
+ 00015381  0x00003434 jam  0x00000000 , 0x00004091 
+ 00015382  0x00003435 branch  0x00003c1a 
+ 00015383  0x0000343b arg  0x00000001 , 0x00000002 
+ 00015384  0x0000343c arg  0x00000000 , 0x00000011 
+ 00015385  0x0000343d branch  0x00003c25 
+ 00015386  0x00003441 arg  0x00000000 , 0x00000002 
+ 00015387  0x00003442 arg  0x00000000 , 0x00000011 
+ 00015388  0x00003443 branch  0x00003c25 
+ 00015389  0x00003448 jam  0x00000000 , 0x00000b03 
+ 00015390  0x00003449 branch  0x00003c49 
+ 00015391  0x0000344e jam  0x00000002 , 0x00000b03 
+ 00015392  0x0000344f branch  0x00003c49 
+ 00015393  0x00003454 jam  0x00000003 , 0x00000b03 
+ 00015394  0x00003455 branch  0x00003c49 
+ 00015395  0x0000345a jam  0x00000005 , 0x00000b03 
+ 00015396  0x0000345b branch  0x00003c49 
+ 00015397  0x00003464 fetch  0x00000001 , 0x00000b03 
+ 00015398  0x00003465 copy  0x0000003f , 0x00000013 
+ 00015399  0x00003466 jam  0x00000006 , 0x00000b03 
+ 00015400  0x00003467 setarg  0x00000002 
+ 00015401  0x00003468 iadd  0x00000011 , 0x0000003f 
+ 00015402  0x00003469 call  0x00003ca7 
+ 00015403  0x0000346a copy  0x00000013 , 0x0000003f 
+ 00015404  0x0000346b istore  0x00000001 , 0x0000000a 
+ 00015405  0x0000346c istoret  0x00000001 , 0x0000000a 
+ 00015406  0x0000346d copy  0x00000011 , 0x00000039 
+ 00015407  0x0000346e copy  0x00000012 , 0x00000006 
+ 00015408  0x0000346f call  0x000066e4 
+ 00015409  0x00003470 branch  0x000066c5 
+ 00015410  0x00003476 call  0x0000397f 
+ 00015411  0x00003477 jam  0x00000007 , 0x00000b03 
+ 00015412  0x00003478 fetch  0x00000001 , 0x000004ff 
+ 00015413  0x00003479 rtn  0x00000034 
+ 00015414  0x0000347a call  0x00003ca7 
+ 00015415  0x0000347b fetch  0x00000001 , 0x000004ff 
+ 00015416  0x0000347c copy  0x0000003f , 0x00000039 
+ 00015417  0x0000347d fetch  0x00000002 , 0x00000501 
+ 00015418  0x0000347e copy  0x0000003f , 0x00000006 
+ 00015419  0x0000347f call  0x000066d1 
+ 00015420  0x00003480 branch  0x000066c5 
+ 00015421  0x00003485 jam  0x00000008 , 0x00000b03 
+ 00015422  0x00003486 fetch  0x00000001 , 0x000046b6 
+ 00015423  0x00003487 icopy  0x00000039 
+ 00015424  0x00003488 increase  0x00000002 , 0x0000003f 
+ 00015425  0x00003489 call  0x00003ca7 
+ 00015426  0x0000348a fetch  0x00000002 , 0x000046b9 
+ 00015427  0x0000348b istore  0x00000002 , 0x0000000a 
+ 00015428  0x0000348c fetch  0x00000002 , 0x000046b7 
+ 00015429  0x0000348d icopy  0x00000006 
+ 00015430  0x0000348e call  0x000066d1 
+ 00015431  0x0000348f branch  0x000066c5 
+ 00015432  0x00003494 jam  0x00000009 , 0x00000b03 
+ 00015433  0x00003496 setarg  0x00000000 
+ 00015434  0x00003497 call  0x00003ca7 
+ 00015435  0x00003498 branch  0x000066c5 
+ 00015436  0x0000349d jam  0x0000000a , 0x00000b03 
+ 00015437  0x0000349e setarg  0x00000001 
+ 00015438  0x0000349f call  0x00003ca7 
+ 00015439  0x000034a1 call  0x00003c5d 
+ 00015440  0x000034a3 fetch  0x00000002 , 0x00004682 
+ 00015441  0x000034a4 arg  0x00000002 , 0x00000007 
+ 00015442  0x000034a5 qisolate1  0x0000003f 
+ 00015443  0x000034a6 setflag  0x00000001 , 0x00000003 , 0x00000002 
+ 00015444  0x000034a8 arg  0x00000009 , 0x00000007 
+ 00015445  0x000034a9 qisolate1  0x0000003f 
+ 00015446  0x000034aa setflag  0x00000001 , 0x00000005 , 0x00000002 
+ 00015447  0x000034ac fetch  0x00000001 , 0x00004682 
+ 00015448  0x000034ad arg  0x00000004 , 0x00000007 
+ 00015449  0x000034ae qisolate1  0x0000003f 
+ 00015450  0x000034af setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00015451  0x000034b1 istoret  0x00000001 , 0x0000000a 
+ 00015452  0x000034b2 branch  0x000066c5 
+ 00015453  0x000034b7 arg  0x00000000 , 0x00000002 
+ 00015454  0x000034b8 fetch  0x00000001 , 0x00004093 
+ 00015455  0x000034b9 arg  0x00000000 , 0x00000007 
+ 00015456  0x000034ba qisolate1  0x0000003f 
+ 00015457  0x000034bb setflag  0x00000001 , 0x00000000 , 0x00000002 
+ 00015458  0x000034bc arg  0x00000001 , 0x00000007 
+ 00015459  0x000034bd qisolate1  0x0000003f 
+ 00015460  0x000034be setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00015461  0x000034c0 fetch  0x00000001 , 0x0000436e 
+ 00015462  0x000034c1 arg  0x00000000 , 0x00000007 
+ 00015463  0x000034c2 qisolate1  0x0000003f 
+ 00015464  0x000034c3 setflag  0x00000001 , 0x00000002 , 0x00000002 
+ 00015465  0x000034c4 rtn 
+ 00015466  0x000034c9 jam  0x0000000d , 0x00000b03 
+ 00015467  0x000034ca fetch  0x00000001 , 0x00004217 
+ 00015468  0x000034cb mul32  0x0000003f , 0x00000022 , 0x0000003f 
+ 00015469  0x000034cc icopy  0x00000039 
+ 00015470  0x000034cd call  0x00003ca7 
+ 00015471  0x000034ce fetch  0x00000002 , 0x00004215 
+ 00015472  0x000034cf icopy  0x00000006 
+ 00015473  0x000034d0 call  0x000066d1 
+ 00015474  0x000034d1 branch  0x000066c5 
+ 00015475  0x000034d6 jam  0x0000000e , 0x00000b03 
+ 00015476  0x000034d7 setarg  0x00000004 
+ 00015477  0x000034d8 call  0x00003ca7 
+ 00015478  0x000034d9 fetch  0x00000004 , 0x000009ba 
+ 00015479  0x000034da istore  0x00000004 , 0x0000000a 
+ 00015480  0x000034db branch  0x000066c5 
+ 00015481  0x000034e0 jam  0x0000000f , 0x00000b03 
+ 00015482  0x000034e1 hfetch  0x00000002 , 0x00008112 
+ 00015483  0x000034e2 arg  0x000000ff , 0x00000002 
+ 00015484  0x000034e3 call  0x00007fdd 
+ 00015485  0x000034e4 copy  0x0000003f , 0x00000039 
+ 00015486  0x000034e5 call  0x00003ca7 
+ 00015487  0x000034e6 call  0x000066cb 
+ 00015488  0x000034e7 call  0x00006703 
+ 00015489  0x000034e8 branch  0x000066c5 
+ 00015490  0x000034ed jam  0x00000010 , 0x00000b03 
+ 00015491  0x000034ee branch  0x00003c49 
+ 00015492  0x000034f3 jam  0x00000011 , 0x00000b03 
+ 00015493  0x000034f4 setarg  0x00000004 
+ 00015494  0x000034f5 call  0x00003ca7 
+ 00015495  0x000034f6 fetch  0x00000004 , 0x000044c7 
+ 00015496  0x000034f7 istore  0x00000004 , 0x0000000a 
+ 00015497  0x000034f8 branch  0x000066c5 
+ 00015498  0x000034fd arg  0x00000180 , 0x00000011 
+ 00015499  0x000034fe branch  0x00003c91 
+ 00015500  0x00003501 arg  0x00000080 , 0x00000011 
+ 00015501  0x00003502 branch  0x00003c91 
+ 00015502  0x00003505 arg  0x00000101 , 0x00000011 
+ 00015503  0x00003506 branch  0x00003c91 
+ 00015504  0x00003509 arg  0x00000001 , 0x00000011 
+ 00015505  0x0000350c jam  0x00000000 , 0x00004661 
+ 00015506  0x0000350d jam  0x00000014 , 0x00000b03 
+ 00015507  0x0000350e setarg  0x00000002 
+ 00015508  0x0000350f call  0x00003ca7 
+ 00015509  0x00003510 copy  0x00000011 , 0x0000003f 
+ 00015510  0x00003511 istore  0x00000002 , 0x0000000a 
+ 00015511  0x00003512 branch  0x000066c5 
+ 00015512  0x00003517 arg  0x00000000 , 0x00000013 
+ 00015513  0x00003518 branch  0x00003c9b 
+ 00015514  0x0000351b arg  0x00000001 , 0x00000013 
+ 00015515  0x0000351e jam  0x00000015 , 0x00000b03 
+ 00015516  0x0000351f setarg  0x00000001 
+ 00015517  0x00003520 call  0x00003ca7 
+ 00015518  0x00003521 copy  0x00000013 , 0x0000003f 
+ 00015519  0x00003522 istore  0x00000001 , 0x0000000a 
+ 00015520  0x00003523 branch  0x000066c5 
+ 00015521  0x00003528 jam  0x0000001d , 0x00000b03 
+ 00015522  0x00003529 setarg  0x00000004 
+ 00015523  0x0000352a call  0x00003ca7 
+ 00015524  0x0000352b fetch  0x00000004 , 0x000009ba 
+ 00015525  0x0000352c istore  0x00000004 , 0x0000000a 
+ 00015526  0x0000352d branch  0x000066c5 
+ 00015527  0x00003539 jam  0x00000002 , 0x00000b02 
+ 00015528  0x0000353a store  0x00000001 , 0x00000b04 
+ 00015529  0x0000353b storet  0x00000008 , 0x00000aa2 
+ 00015530  0x0000353c bpatch  0x000000e2 , 0x0000401c 
+ 00015531  0x0000353d call  0x00003cb1 
+ 00015532  0x0000353e fetcht  0x00000008 , 0x00000aa2 
+ 00015533  0x0000353f call  0x000066c2 
+ 00015534  0x00003540 fetch  0x00000003 , 0x00000b02 
+ 00015535  0x00003541 istore  0x00000003 , 0x0000000a 
+ 00015536  0x00003542 rtn 
+ 00015537  0x00003546 call  0x00003cba 
+ 00015538  0x00003547 rtn  0x00000001 
+ 00015539  0x00003549 call  0x00003cb8 
+ 00015540  0x0000354a fetch  0x00000004 , 0x000046a3 
+ 00015541  0x0000354b rshift2  0x0000003f , 0x0000003f 
+ 00015542  0x0000354c rtn  0x00000034 
+ 00015543  0x0000354d branch  0x00003cbe 
+ 00015544  0x00003551 fetcht  0x00000001 , 0x000046a2 
+ 00015545  0x00003552 branch  0x00006829 
+ 00015546  0x00003555 fetcht  0x00000001 , 0x000046a2 
+ 00015547  0x00003556 branch  0x0000681b 
+ 00015548  0x00003559 fetcht  0x00000001 , 0x000046a2 
+ 00015549  0x0000355a branch  0x00006825 
+ 00015550  0x0000355e increase  0xffffffff , 0x0000003f 
+ 00015551  0x0000355f nop  0x00000026 
+ 00015552  0x00003560 nbranch  0x00003cbe , 0x00000034 
+ 00015553  0x00003561 rtn 
+ 00015554  0x0000356b call  0x00003ad4 
+ 00015555  0x0000356c rtn  0x00000028 
+ 00015556  0x0000356d copy  0x00000011 , 0x0000003f 
+ 00015557  0x0000356e store  0x00000002 , 0x000046b7 
+ 00015558  0x0000356f copy  0x00000012 , 0x0000003f 
+ 00015559  0x00003570 store  0x00000001 , 0x000046b6 
+ 00015560  0x00003571 fetch  0x00000002 , 0x00000478 
+ 00015561  0x00003572 fetcht  0x00000002 , 0x000046bb 
+ 00015562  0x00003573 isub  0x00000002 , 0x0000003e 
+ 00015563  0x00003574 branch  0x00003ccf , 0x00000005 
+ 00015564  0x00003575 fetcht  0x00000002 , 0x000046bd 
+ 00015565  0x00003576 isub  0x00000002 , 0x0000003e 
+ 00015566  0x00003577 nrtn  0x00000005 
+ 00015567  0x00003579 store  0x00000002 , 0x000046b9 
+ 00015568  0x0000357a branch  0x00003c3d 
+ 00015569  0x00003580 fetch  0x00000001 , 0x000046bf 
+ 00015570  0x00003581 rtnbit1  0x00000005 
+ 00015571  0x00003582 call  0x00003cf0 
+ 00015572  0x00003583 branch  0x0000340c 
+ 00015573  0x00003587 jam  0x00000002 , 0x00004172 
+ 00015574  0x00003588 rtn 
+ 00015575  0x0000358d branch  0x00003cd8 
+ 00015576  0x00003590 fetch  0x00000001 , 0x000046b2 
+ 00015577  0x00003591 rtn  0x00000034 
+ 00015578  0x00003592 fetch  0x00000001 , 0x000046b3 
+ 00015579  0x00003593 rtn  0x00000034 
+ 00015580  0x00003594 increase  0xffffffff , 0x0000003f 
+ 00015581  0x00003595 store  0x00000001 , 0x000046b3 
+ 00015582  0x00003596 nrtn  0x00000034 
+ 00015583  0x00003597 jam  0x0000000a , 0x000046b3 
+ 00015584  0x00003598 call  0x000068eb 
+ 00015585  0x00003599 call  0x00006908 
+ 00015586  0x0000359a div  0x0000003f , 0x00000064 
+ 00015587  0x0000359b call  0x00007f86 
+ 00015588  0x0000359c quotient  0x0000003f 
+ 00015589  0x0000359d remainder  0x00000002 
+ 00015590  0x0000359e store  0x00000001 , 0x000046b4 
+ 00015591  0x0000359f storet  0x00000001 , 0x000046b5 
+ 00015592  0x000035a0 rtn 
+ 00015593  0x000035a4 call  0x00007fb4 
+ 00015594  0x000035a5 branch  0x000033d9 , 0x00000002 
+ 00015595  0x000035a6 branch  0x000033db 
+ 00015596  0x000035ab arg  0x00000006 , 0x00000007 
+ 00015597  0x000035ac branch  0x00003cfc 
+ 00015598  0x000035af arg  0x00000006 , 0x00000007 
+ 00015599  0x000035b0 branch  0x00003cf8 
+ 00015600  0x000035b3 arg  0x00000005 , 0x00000007 
+ 00015601  0x000035b4 branch  0x00003cfc 
+ 00015602  0x000035b7 arg  0x00000005 , 0x00000007 
+ 00015603  0x000035b8 branch  0x00003cf8 
+ 00015604  0x000035bb arg  0x00000004 , 0x00000007 
+ 00015605  0x000035bc branch  0x00003cfc 
+ 00015606  0x000035bf arg  0x00000004 , 0x00000007 
+ 00015607  0x000035c0 branch  0x00003cf8 
+ 00015608  0x000035c3 fetch  0x00000001 , 0x000046bf 
+ 00015609  0x000035c4 qset0  0x0000003f 
+ 00015610  0x000035c5 store  0x00000001 , 0x000046bf 
+ 00015611  0x000035c6 rtn 
+ 00015612  0x000035c9 fetch  0x00000001 , 0x000046bf 
+ 00015613  0x000035ca qset1  0x0000003f 
+ 00015614  0x000035cb store  0x00000001 , 0x000046bf 
+ 00015615  0x000035cc rtn 
+ 00015616  0x000035d7 call  0x00003d39 
+ 00015617  0x000035d8 call  0x0000640f 
+ 00015618  0x000035d9 call  0x000040c6 
+ 00015619  0x000035da call  0x00003d66 
+ 00015620  0x000035db call  0x00006411 
+ 00015621  0x000035dc rtn  0x0000002b 
+ 00015622  0x000035dd call  0x00003d16 
+ 00015623  0x000035de call  0x00003d19 
+ 00015624  0x000035e1 fetch  0x00000004 , 0x000046d3 
+ 00015625  0x000035e2 rtnbit1  0x00000010 
+ 00015626  0x000035e3 call  0x00003d4e 
+ 00015627  0x000035e4 rtnmark1  0x00000026 
+ 00015628  0x000035e5 fetch  0x00000002 , 0x00004682 
+ 00015629  0x000035e6 bbit1  0x0000000c , 0x000042b0 
+ 00015630  0x000035e7 branch  0x000042a2 
+ 00015631  0x000035eb fetch  0x00000004 , 0x000046d3 
+ 00015632  0x000035ec rtnbit0  0x0000001b 
+ 00015633  0x000035ed arg  0x00000014 , 0x00000039 
+ 00015634  0x000035ef setarg  0x00030d40 
+ 00015635  0x000035f0 call  0x00002a8f 
+ 00015636  0x000035f1 loop  0x00007ec1 
+ 00015637  0x000035f2 rtn 
+ 00015638  0x000035f6 fetch  0x00000004 , 0x000046d3 
+ 00015639  0x000035f7 rtnbit0  0x00000010 
+ 00015640  0x000035f8 branch  0x000048ea 
+ 00015641  0x000035fc setarg  0x0000416d 
+ 00015642  0x000035fd store  0x00000002 , 0x000041ef 
+ 00015643  0x000035fe setarg  0x00003f77 
+ 00015644  0x000035ff store  0x00000002 , 0x000041f1 
+ 00015645  0x00003600 setarg  0x00003ebb 
+ 00015646  0x00003601 store  0x00000002 , 0x000041ed 
+ 00015647  0x00003602 setarg  0x0000417c 
+ 00015648  0x00003603 store  0x00000002 , 0x000041f5 
+ 00015649  0x00003604 setarg  0x00003de3 
+ 00015650  0x00003605 store  0x00000002 , 0x000041f3 
+ 00015651  0x00003606 setarg  0x00003eb3 
+ 00015652  0x00003607 store  0x00000002 , 0x000041eb 
+ 00015653  0x00003608 setarg  0x00003d5b 
+ 00015654  0x00003609 store  0x00000002 , 0x000041f9 
+ 00015655  0x0000360b call  0x00002c7a 
+ 00015656  0x0000360c setarg  0x00004401 
+ 00015657  0x0000360d add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00015658  0x0000360e istore  0x00000002 , 0x00000005 
+ 00015659  0x0000360f setarg  0x00004406 
+ 00015660  0x00003610 add  0x00000013 , 0x000000da , 0x00000005 
+ 00015661  0x00003611 istore  0x00000002 , 0x00000005 
+ 00015662  0x00003612 setarg  0x00003ebf 
+ 00015663  0x00003613 add  0x00000013 , 0x000000dc , 0x00000005 
+ 00015664  0x00003614 istore  0x00000002 , 0x00000005 
+ 00015665  0x00003616 setarg  0x000041f9 
+ 00015666  0x00003617 store  0x00000002 , 0x000041fd 
+ 00015667  0x00003618 setarg  0x00003d36 
+ 00015668  0x00003619 store  0x00000002 , 0x00004201 
+ 00015669  0x0000361a rtn 
+ 00015670  0x0000361d fetch  0x00000004 , 0x000046d3 
+ 00015671  0x0000361e bbit0  0x00000012 , 0x000064d7 
+ 00015672  0x0000361f branch  0x000064da 
+ 00015673  0x00003622 rtn  0x0000002b 
+ 00015674  0x00003623 call  0x00002c9d 
+ 00015675  0x00003624 call  0x00003e6e 
+ 00015676  0x00003625 call  0x00003e1e 
+ 00015677  0x00003626 call  0x00003e54 
+ 00015678  0x00003627 call  0x00005810 
+ 00015679  0x00003628 call  0x00005839 
+ 00015680  0x00003629 call  0x0000582c 
+ 00015681  0x0000362a call  0x00005818 
+ 00015682  0x0000362b fetch  0x00000004 , 0x000046d3 
+ 00015683  0x0000362c bbit1  0x00000014 , 0x00003d46 
+ 00015684  0x0000362d bbit1  0x00000013 , 0x00004414 
+ 00015685  0x0000362e rtn 
+ 00015686  0x00003631 call  0x0000659c 
+ 00015687  0x00003632 fetch  0x00000004 , 0x000046d3 
+ 00015688  0x00003633 isolate1  0x00000019 , 0x0000003f 
+ 00015689  0x00003634 ncall  0x000065c2 , 0x00000001 
+ 00015690  0x00003635 call  0x0000443f 
+ 00015691  0x00003636 call  0x00003dc9 
+ 00015692  0x00003637 call  0x000041aa 
+ 00015693  0x00003638 branch  0x000065df 
+ 00015694  0x0000363b fetch  0x00000004 , 0x000046d3 
+ 00015695  0x0000363c bbit0  0x0000001e , 0x00003d53 
+ 00015696  0x0000363d fetch  0x00000001 , 0x00000abd 
+ 00015697  0x0000363e isolate0  0x00000003 , 0x0000003f 
+ 00015698  0x0000363f nrtn  0x00000001 
+ 00015699  0x00003641 fetch  0x00000001 , 0x0000471f 
+ 00015700  0x00003642 store  0x00000001 , 0x0000471e 
+ 00015701  0x00003643 fetch  0x00000001 , 0x000046f5 
+ 00015702  0x00003644 rtnbit1  0x00000006 
+ 00015703  0x00003646 fetch  0x00000004 , 0x000046d3 
+ 00015704  0x00003647 rtnbit0  0x00000011 
+ 00015705  0x00003648 bbit1  0x0000001d , 0x00002ee4 
+ 00015706  0x00003649 branch  0x00002f2c 
+ 00015707  0x0000364b fetch  0x00000001 , 0x00000478 
+ 00015708  0x0000364c sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00015709  0x0000364d nrtn  0x00000005 
+ 00015710  0x0000364e jam  0x00000012 , 0x00000a99 
+ 00015711  0x0000364f call  0x00007d8f 
+ 00015712  0x00003651 arg  0x00000000 , 0x00000007 
+ 00015713  0x00003652 branch  0x000041b9 
+ 00015714  0x00003655 fetch  0x00000001 , 0x000046b6 
+ 00015715  0x00003656 rtneq  0x00000001 
+ 00015716  0x00003657 jam  0x00000001 , 0x000046b6 
+ 00015717  0x00003658 rtn 
+ 00015718  0x0000365a fetch  0x00000001 , 0x000046e1 
+ 00015719  0x0000365b and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00015720  0x0000365c store  0x00000001 , 0x0000477a 
+ 00015721  0x0000365d branch  0x00003d80 
+ 00015722  0x00003661 fetcht  0x00000001 , 0x000046e7 
+ 00015723  0x00003662 call  0x0000681d 
+ 00015724  0x00003663 nbranch  0x00003d62 , 0x00000001 
+ 00015725  0x00003665 fetch  0x00000001 , 0x000046b6 
+ 00015726  0x00003666 rtneq  0x00000000 
+ 00015727  0x00003667 jam  0x00000000 , 0x000046b6 
+ 00015728  0x00003668 fetch  0x00000001 , 0x0000477a 
+ 00015729  0x00003669 increase  0x00000001 , 0x0000003f 
+ 00015730  0x0000366a and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00015731  0x0000366b store  0x00000001 , 0x0000477a 
+ 00015732  0x0000366c call  0x00003d7e 
+ 00015733  0x0000366d fetch  0x00000004 , 0x000046d3 
+ 00015734  0x0000366e bbit1  0x00000014 , 0x0000443b 
+ 00015735  0x0000366f bbit1  0x00000013 , 0x00003d79 
+ 00015736  0x00003670 rtn 
+ 00015737  0x00003672 arg  0x0000001e , 0x00000002 
+ 00015738  0x00003673 call  0x0000680e 
+ 00015739  0x00003674 arg  0x0000001f , 0x00000002 
+ 00015740  0x00003675 call  0x0000680e 
+ 00015741  0x00003676 branch  0x00004435 
+ 00015742  0x00003679 bpatch  0x000000e3 , 0x0000401c 
+ 00015743  0x0000367a call  0x0000424a 
+ 00015744  0x0000367b fetch  0x00000001 , 0x000046e0 
+ 00015745  0x0000367c beq  0x00000005 , 0x00003daa 
+ 00015746  0x0000367d beq  0x00000004 , 0x00003d96 
+ 00015747  0x0000367e fetch  0x00000001 , 0x0000477a 
+ 00015748  0x0000367f beq  0x00000000 , 0x00003d8a 
+ 00015749  0x00003680 beq  0x00000001 , 0x00003d88 
+ 00015750  0x00003681 beq  0x00000002 , 0x00003d8c 
+ 00015751  0x00003682 beq  0x00000003 , 0x00003d8e 
+ 00015752  0x00003684 fetch  0x00000001 , 0x00004780 
+ 00015753  0x00003685 branch  0x00003dbe 
+ 00015754  0x00003687 fetch  0x00000001 , 0x0000477f 
+ 00015755  0x00003688 branch  0x00003dbe 
+ 00015756  0x0000368a fetch  0x00000001 , 0x00004781 
+ 00015757  0x0000368b branch  0x00003dbe 
+ 00015758  0x0000368d fetch  0x00000001 , 0x00004782 
+ 00015759  0x0000368e branch  0x00003dbe 
+ 00015760  0x00003690 fetch  0x00000001 , 0x000046e0 
+ 00015761  0x00003691 rtneq  0x00000006 
+ 00015762  0x00003692 fetch  0x00000001 , 0x000046b5 
+ 00015763  0x00003693 increase  0x00000001 , 0x0000003f 
+ 00015764  0x00003694 store  0x00000001 , 0x000046b5 
+ 00015765  0x00003695 rtn 
+ 00015766  0x00003698 fetch  0x00000001 , 0x0000477a 
+ 00015767  0x00003699 beq  0x00000000 , 0x00003d9d 
+ 00015768  0x0000369a beq  0x00000001 , 0x00003d9b 
+ 00015769  0x0000369b beq  0x00000002 , 0x00003d9f 
+ 00015770  0x0000369c beq  0x00000003 , 0x00003da1 
+ 00015771  0x0000369e fetch  0x00000001 , 0x00004784 
+ 00015772  0x0000369f branch  0x00003da2 
+ 00015773  0x000036a1 fetch  0x00000001 , 0x00004783 
+ 00015774  0x000036a2 branch  0x00003da2 
+ 00015775  0x000036a4 fetch  0x00000001 , 0x00004785 
+ 00015776  0x000036a5 branch  0x00003da2 
+ 00015777  0x000036a7 fetch  0x00000001 , 0x00004786 
+ 00015778  0x000036a9 store  0x00000001 , 0x000046b5 
+ 00015779  0x000036aa lshift8  0x0000003f , 0x0000003f 
+ 00015780  0x000036ab copy  0x0000003f , 0x00000011 
+ 00015781  0x000036ac add  0x0000003f , 0x0000000d , 0x0000003f 
+ 00015782  0x000036ad call  0x00006413 
+ 00015783  0x000036ae copy  0x00000011 , 0x0000003f 
+ 00015784  0x000036af add  0x0000003f , 0x0000000e , 0x0000003f 
+ 00015785  0x000036b0 branch  0x00006413 
+ 00015786  0x000036b3 fetch  0x00000001 , 0x0000477a 
+ 00015787  0x000036b4 beq  0x00000000 , 0x00003db1 
+ 00015788  0x000036b5 beq  0x00000001 , 0x00003daf 
+ 00015789  0x000036b6 beq  0x00000002 , 0x00003db3 
+ 00015790  0x000036b7 beq  0x00000003 , 0x00003db5 
+ 00015791  0x000036b9 fetch  0x00000001 , 0x00004788 
+ 00015792  0x000036ba branch  0x00003db6 
+ 00015793  0x000036bc fetch  0x00000001 , 0x00004787 
+ 00015794  0x000036bd branch  0x00003db6 
+ 00015795  0x000036bf fetch  0x00000001 , 0x00004789 
+ 00015796  0x000036c0 branch  0x00003db6 
+ 00015797  0x000036c2 fetch  0x00000001 , 0x0000478a 
+ 00015798  0x000036c4 store  0x00000001 , 0x000046b5 
+ 00015799  0x000036c5 call  0x000040c0 
+ 00015800  0x000036c6 fetch  0x00000001 , 0x000046b5 
+ 00015801  0x000036c8 add  0x0000003f , 0x00000080 , 0x0000003f 
+ 00015802  0x000036c9 lshift8  0x0000003f , 0x0000003f 
+ 00015803  0x000036ca add  0x0000003f , 0x00000005 , 0x0000003f 
+ 00015804  0x000036cb copy  0x0000003f , 0x00000011 
+ 00015805  0x000036cc branch  0x0000415a 
+ 00015806  0x000036cf store  0x00000001 , 0x000046b5 
+ 00015807  0x000036d0 call  0x00003d90 
+ 00015808  0x000036d1 fetch  0x00000001 , 0x000046b5 
+ 00015809  0x000036d2 setarg  0x00000006 
+ 00015810  0x000036d3 call  0x00006414 
+ 00015811  0x000036d4 and  0x0000003f , 0x000000f8 , 0x00000002 
+ 00015812  0x000036d5 fetch  0x00000001 , 0x000046b5 
+ 00015813  0x000036d6 iadd  0x00000002 , 0x0000003f 
+ 00015814  0x000036d7 lshift8  0x0000003f , 0x0000003f 
+ 00015815  0x000036d8 add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00015816  0x000036d9 branch  0x00006413 
+ 00015817  0x000036dd call  0x000033c4 
+ 00015818  0x000036de branch  0x00004316 , 0x00000005 
+ 00015819  0x000036df call  0x0000441c 
+ 00015820  0x000036e0 call  0x000042e4 
+ 00015821  0x000036e1 branch  0x000033bd 
+ 00015822  0x000036e5 fetch  0x00000002 , 0x00004707 
+ 00015823  0x000036e6 rtn  0x00000034 
+ 00015824  0x000036e7 fetch  0x00000004 , 0x000046d3 
+ 00015825  0x000036e8 rtnbit0  0x00000011 
+ 00015826  0x000036e9 rtnbit1  0x00000003 
+ 00015827  0x000036ea rtnmark1  0x00000026 
+ 00015828  0x000036eb call  0x00004083 
+ 00015829  0x000036ec rtnne  0x00000007 
+ 00015830  0x000036ed call  0x00004482 
+ 00015831  0x000036ee arg  0x00000003 , 0x00000007 
+ 00015832  0x000036ef call  0x000043ce 
+ 00015833  0x000036f0 setarg  0x00000000 
+ 00015834  0x000036f1 store  0x00000002 , 0x000046ae 
+ 00015835  0x000036f2 store  0x00000001 , 0x000046b4 
+ 00015836  0x000036f3 call  0x00003263 
+ 00015837  0x000036f5 fetch  0x00000002 , 0x00004682 
+ 00015838  0x000036f6 bbit1  0x00000007 , 0x00004392 
+ 00015839  0x000036f7 bbit1  0x00000009 , 0x00003402 
+ 00015840  0x000036f8 bbit1  0x00000000 , 0x000033e9 
+ 00015841  0x000036f9 call  0x000042ca 
+ 00015842  0x000036fa branch  0x00002ead 
+ 00015843  0x000036fe call  0x00003dce 
+ 00015844  0x000036ff call  0x00007e34 
+ 00015845  0x00003700 call  0x00003d6a 
+ 00015846  0x00003701 call  0x00003de9 
+ 00015847  0x00003702 call  0x00003ee0 
+ 00015848  0x00003703 branch  0x00003df7 
+ 00015849  0x00003705 fetch  0x00000004 , 0x000046d3 
+ 00015850  0x00003706 rtnbit0  0x00000010 
+ 00015851  0x00003707 call  0x000048d3 
+ 00015852  0x00003708 branch  0x000048fd 
+ 00015853  0x0000370b hfetch  0x00000001 , 0x00008a04 
+ 00015854  0x0000370c bbit0  0x00000007 , 0x00003df1 
+ 00015855  0x0000370d bbit1  0x00000007 , 0x00003df4 
+ 00015856  0x0000370e rtn 
+ 00015857  0x00003710 fetch  0x00000001 , 0x000046ff 
+ 00015858  0x00003711 rtnbit0  0x00000007 
+ 00015859  0x00003712 branch  0x0000659a 
+ 00015860  0x00003714 fetch  0x00000001 , 0x000046ff 
+ 00015861  0x00003715 rtnbit1  0x00000007 
+ 00015862  0x00003716 branch  0x00004381 
+ 00015863  0x00003719 call  0x00003ded 
+ 00015864  0x0000371a hfetch  0x00000001 , 0x00008a04 
+ 00015865  0x0000371b store  0x00000001 , 0x000046ff 
+ 00015866  0x0000371c rtnbit0  0x00000007 
+ 00015867  0x0000371d call  0x00003e07 
+ 00015868  0x0000371e fetch  0x00000004 , 0x000046f9 
+ 00015869  0x0000371f fetcht  0x00000001 , 0x000046fd 
+ 00015870  0x00003720 iadd  0x00000002 , 0x00000002 
+ 00015871  0x00003721 copy  0x00000022 , 0x0000003f 
+ 00015872  0x00003722 isub  0x00000002 , 0x0000003e 
+ 00015873  0x00003723 nrtn  0x00000002 
+ 00015874  0x00003724 store  0x00000004 , 0x000046f9 
+ 00015875  0x00003725 call  0x00003f97 
+ 00015876  0x00003726 nrtn  0x00000028 
+ 00015877  0x00003727 jam  0x00000004 , 0x00000d38 
+ 00015878  0x00003728 branch  0x00003e0f 
+ 00015879  0x0000372b fetcht  0x00000004 , 0x000046f9 
+ 00015880  0x0000372c copy  0x00000022 , 0x0000003f 
+ 00015881  0x0000372d isub  0x00000002 , 0x0000003e 
+ 00015882  0x0000372e ncall  0x00003e0c , 0x00000002 
+ 00015883  0x0000372f rtn 
+ 00015884  0x00003731 setarg  0x00000000 
+ 00015885  0x00003732 store  0x00000004 , 0x000046f9 
+ 00015886  0x00003733 rtn 
+ 00015887  0x00003738 fetch  0x00000001 , 0x00000d38 
+ 00015888  0x00003739 rtnbit0  0x00000002 
+ 00015889  0x0000373a branch  0x00003e12 
+ 00015890  0x0000373c hfetch  0x00000001 , 0x00008a04 
+ 00015891  0x0000373d rtnbit0  0x00000007 
+ 00015892  0x0000373e jam  0x00000020 , 0x00000d52 
+ 00015893  0x0000373f setarg  0x00000001 
+ 00015894  0x00003740 store  0x00000001 , 0x00000d54 
+ 00015895  0x00003741 fetch  0x00000007 , 0x0000469a 
+ 00015896  0x00003742 istore  0x00000007 , 0x00000005 
+ 00015897  0x00003743 rtn 
+ 00015898  0x00003747 hfetch  0x00000002 , 0x00008050 
+ 00015899  0x00003748 set0  0x0000000b , 0x0000003f 
+ 00015900  0x00003749 hstore  0x00000002 , 0x00008050 
+ 00015901  0x0000374a rtn 
+ 00015902  0x0000374d setarg  0x00008c00 
+ 00015903  0x0000374e store  0x00000002 , 0x00004575 
+ 00015904  0x0000374f setarg  0x00008e7a 
+ 00015905  0x00003750 store  0x00000002 , 0x000044bc 
+ 00015906  0x00003751 setarg  0x00002402 
+ 00015907  0x00003752 store  0x00000002 , 0x000040bd 
+ 00015908  0x00003753 setarg  0x00002580 
+ 00015909  0x00003754 store  0x00000003 , 0x000040aa 
+ 00015910  0x00003755 jam  0x00000003 , 0x00004173 
+ 00015911  0x00003756 jam  0x00000008 , 0x00004156 
+ 00015912  0x00003757 jam  0x00000001 , 0x000046d9 
+ 00015913  0x00003758 setarg  0x00000200 
+ 00015914  0x00003759 store  0x00000002 , 0x00004154 
+ 00015915  0x0000375a jam  0x00000017 , 0x000044a6 
+ 00015916  0x0000375b jam  0x00000017 , 0x000044a8 
+ 00015917  0x0000375d setarg  0x00000a77 
+ 00015918  0x0000375e store  0x00000002 , 0x00004212 
+ 00015919  0x0000376e setsect  0x00000000 , 0x00000306 
+ 00015920  0x0000376f setsect  0x00000001 , 0x00004440 
+ 00015921  0x00003770 setsect  0x00000002 , 0x00010000 
+ 00015922  0x00003771 setsect  0x00000003 , 0x00004408 
+ 00015923  0x00003772 store  0x00000009 , 0x00004577 
+ 00015924  0x00003773 setsect  0x00000000 , 0x00001224 
+ 00015925  0x00003774 setsect  0x00000001 , 0x00004000 
+ 00015926  0x00003775 setsect  0x00000002 , 0x00000000 
+ 00015927  0x00003776 istore  0x00000005 , 0x00000005 
+ 00015928  0x00003778 setsect  0x00000000 , 0x0003ffff 
+ 00015929  0x00003779 setsect  0x00000001 , 0x0002fe23 
+ 00015930  0x0000377a setsect  0x00000002 , 0x000199d9 
+ 00015931  0x0000377b setsect  0x00000003 , 0x0000020d 
+ 00015932  0x0000377c store  0x00000008 , 0x00004098 
+ 00015933  0x0000377e setarg  0x0000012c 
+ 00015934  0x0000377f store  0x00000002 , 0x00004707 
+ 00015935  0x00003780 call  0x000057a3 
+ 00015936  0x00003781 fetch  0x00000004 , 0x000046d3 
+ 00015937  0x00003782 rtnbit0  0x0000001f 
+ 00015938  0x00003783 call  0x00003e44 
+ 00015939  0x00003784 branch  0x00003e4c 
+ 00015940  0x00003787 fetcht  0x00000001 , 0x000046f7 
+ 00015941  0x00003788 call  0x000067fb 
+ 00015942  0x00003789 fetcht  0x00000001 , 0x000046f7 
+ 00015943  0x0000378a call  0x0000681d 
+ 00015944  0x0000378b jam  0x00000003 , 0x000046f6 
+ 00015945  0x0000378c rtn  0x00000001 
+ 00015946  0x0000378d jam  0x00000002 , 0x000046f6 
+ 00015947  0x0000378e rtn 
+ 00015948  0x00003791 fetcht  0x00000001 , 0x000046f8 
+ 00015949  0x00003792 call  0x000067fb 
+ 00015950  0x00003793 fetcht  0x00000001 , 0x000046f8 
+ 00015951  0x00003794 call  0x0000681d 
+ 00015952  0x00003795 jam  0x00000000 , 0x0000422d 
+ 00015953  0x00003796 rtn  0x00000001 
+ 00015954  0x00003797 jam  0x00000002 , 0x0000422d 
+ 00015955  0x00003798 rtn 
+ 00015956  0x0000379c fetch  0x00000001 , 0x0000422d 
+ 00015957  0x0000379d beq  0x00000000 , 0x00003e59 
+ 00015958  0x0000379e beq  0x00000001 , 0x00003e62 
+ 00015959  0x0000379f beq  0x00000002 , 0x00003e6b 
+ 00015960  0x000037a0 branch  0x00003e59 
+ 00015961  0x000037a3 fetcht  0x00000002 , 0x00004221 
+ 00015962  0x000037a4 fetch  0x00000002 , 0x00004227 
+ 00015963  0x000037a5 isub  0x00000002 , 0x0000003f 
+ 00015964  0x000037a6 mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00015965  0x000037a7 div  0x0000003f , 0x00000064 
+ 00015966  0x000037a8 call  0x00007f86 
+ 00015967  0x000037a9 quotient  0x0000003f 
+ 00015968  0x000037aa store  0x00000002 , 0x000046d0 
+ 00015969  0x000037ab rtn 
+ 00015970  0x000037ad fetcht  0x00000002 , 0x0000421f 
+ 00015971  0x000037ae fetch  0x00000002 , 0x00004225 
+ 00015972  0x000037af isub  0x00000002 , 0x0000003f 
+ 00015973  0x000037b0 mul32  0x0000003f , 0x000000e6 , 0x0000003f 
+ 00015974  0x000037b1 div  0x0000003f , 0x00000190 
+ 00015975  0x000037b2 call  0x00007f86 
+ 00015976  0x000037b3 quotient  0x0000003f 
+ 00015977  0x000037b4 store  0x00000002 , 0x000046d0 
+ 00015978  0x000037b5 rtn 
+ 00015979  0x000037b7 fetch  0x00000002 , 0x00004223 
+ 00015980  0x000037b8 store  0x00000002 , 0x000046d0 
+ 00015981  0x000037b9 rtn 
+ 00015982  0x000037bb fetcht  0x00000001 , 0x0000423a 
+ 00015983  0x000037bc call  0x0000680e 
+ 00015984  0x000037bd call  0x000048fb 
+ 00015985  0x000037be fetcht  0x00000001 , 0x000046e2 
+ 00015986  0x000037bf call  0x000067fb 
+ 00015987  0x000037c0 fetcht  0x00000001 , 0x000046e3 
+ 00015988  0x000037c1 call  0x000067fb 
+ 00015989  0x000037c2 fetcht  0x00000001 , 0x000046e4 
+ 00015990  0x000037c3 call  0x000067fb 
+ 00015991  0x000037c4 fetcht  0x00000001 , 0x000046f3 
+ 00015992  0x000037c5 call  0x000067fb 
+ 00015993  0x000037c7 fetcht  0x00000001 , 0x000046dc 
+ 00015994  0x000037c8 call  0x0000680e 
+ 00015995  0x000037ca fetcht  0x00000001 , 0x000046e8 
+ 00015996  0x000037cb call  0x000067fb 
+ 00015997  0x000037cd fetcht  0x00000001 , 0x000046e9 
+ 00015998  0x000037ce call  0x000067fb 
+ 00015999  0x000037d0 fetcht  0x00000001 , 0x000046ea 
+ 00016000  0x000037d1 call  0x000067fb 
+ 00016001  0x000037d2 fetcht  0x00000001 , 0x000046eb 
+ 00016002  0x000037d3 call  0x000067fb 
+ 00016003  0x000037d5 fetcht  0x00000001 , 0x000046e5 
+ 00016004  0x000037d6 call  0x000067fb 
+ 00016005  0x000037d7 fetcht  0x00000001 , 0x000046e6 
+ 00016006  0x000037d8 call  0x000067fb 
+ 00016007  0x000037da fetcht  0x00000001 , 0x000046ef 
+ 00016008  0x000037db call  0x0000680e 
+ 00016009  0x000037dd fetcht  0x00000001 , 0x000046f0 
+ 00016010  0x000037de call  0x0000680e 
+ 00016011  0x000037e0 fetcht  0x00000001 , 0x000046f1 
+ 00016012  0x000037e1 call  0x0000680e 
+ 00016013  0x000037e3 fetcht  0x00000001 , 0x000046f2 
+ 00016014  0x000037e4 call  0x0000680e 
+ 00016015  0x000037e6 fetcht  0x00000001 , 0x000046f4 
+ 00016016  0x000037e7 call  0x0000680e 
+ 00016017  0x000037e9 fetcht  0x00000001 , 0x000046ed 
+ 00016018  0x000037ea call  0x000067fb 
+ 00016019  0x000037ec fetcht  0x00000001 , 0x000046ec 
+ 00016020  0x000037ed call  0x000067fb 
+ 00016021  0x000037ef fetcht  0x00000001 , 0x000046e7 
+ 00016022  0x000037f0 branch  0x000067fb 
+ 00016023  0x000037f3 fetcht  0x00000001 , 0x000046e8 
+ 00016024  0x000037f4 call  0x000067dd 
+ 00016025  0x000037f5 fetcht  0x00000001 , 0x000046e9 
+ 00016026  0x000037f6 call  0x000067dd 
+ 00016027  0x000037f7 fetcht  0x00000001 , 0x000046ea 
+ 00016028  0x000037f8 call  0x000067dd 
+ 00016029  0x000037f9 fetcht  0x00000001 , 0x000046eb 
+ 00016030  0x000037fa branch  0x000067dd 
+ 00016031  0x000037fd fetcht  0x00000001 , 0x000046e8 
+ 00016032  0x000037fe call  0x00003ea7 
+ 00016033  0x000037ff fetcht  0x00000001 , 0x000046e9 
+ 00016034  0x00003800 call  0x00003ea7 
+ 00016035  0x00003801 fetcht  0x00000001 , 0x000046ea 
+ 00016036  0x00003802 call  0x00003ea7 
+ 00016037  0x00003803 fetcht  0x00000001 , 0x000046eb 
+ 00016038  0x00003804 branch  0x00003ea7 
+ 00016039  0x00003807 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00016040  0x00003808 rtn  0x00000005 
+ 00016041  0x00003809 and  0x00000002 , 0x0000007f , 0x00000007 
+ 00016042  0x0000380a hfetch  0x00000004 , 0x0000811c 
+ 00016043  0x0000380b qisolate1  0x0000003f 
+ 00016044  0x0000380c hfetch  0x00000004 , 0x00008078 
+ 00016045  0x0000380d qsetflag  0x00000001 , 0x0000003f 
+ 00016046  0x0000380e hstore  0x00000004 , 0x00008078 
+ 00016047  0x0000380f hfetch  0x00000004 , 0x0000807c 
+ 00016048  0x00003810 nqsetflag  0x00000001 , 0x0000003f 
+ 00016049  0x00003811 hstore  0x00000004 , 0x0000807c 
+ 00016050  0x00003812 rtn 
+ 00016051  0x00003815 enable  0x00000028 
+ 00016052  0x00003816 hfetch  0x00000004 , 0x00008138 
+ 00016053  0x00003817 setflag  0x00000028 , 0x0000001a , 0x0000003f 
+ 00016054  0x00003818 hstore  0x00000004 , 0x0000804c 
+ 00016055  0x00003819 call  0x00002c21 
+ 00016056  0x0000381a call  0x00004482 
+ 00016057  0x0000381b call  0x00003e9f 
+ 00016058  0x0000381d branch  0x00003ebf 
+ 00016059  0x00003822 call  0x00003ebf 
+ 00016060  0x00003823 fetch  0x00000001 , 0x000000a0 
+ 00016061  0x00003824 nrtn  0x00000034 
+ 00016062  0x00003825 branch  0x000067ed 
+ 00016063  0x00003828 call  0x00003ee0 
+ 00016064  0x00003829 arg  0x00000019 , 0x00000002 
+ 00016065  0x0000382a fetch  0x00000004 , 0x000046d3 
+ 00016066  0x0000382b isolate1  0x00000012 , 0x0000003f 
+ 00016067  0x0000382c call  0x00003ede , 0x00000001 
+ 00016068  0x0000382d call  0x0000680e 
+ 00016069  0x0000382e call  0x000063ee 
+ 00016070  0x00003832 fetcht  0x00000001 , 0x000046e2 
+ 00016071  0x00003833 call  0x000067dd 
+ 00016072  0x00003834 fetcht  0x00000001 , 0x000046e3 
+ 00016073  0x00003835 call  0x000067dd 
+ 00016074  0x00003836 fetcht  0x00000001 , 0x000046e4 
+ 00016075  0x00003837 call  0x000067dd 
+ 00016076  0x00003839 fetcht  0x00000001 , 0x000046e5 
+ 00016077  0x0000383a call  0x000067dd 
+ 00016078  0x0000383b fetcht  0x00000001 , 0x000046e6 
+ 00016079  0x0000383c call  0x000067dd 
+ 00016080  0x0000383d fetcht  0x00000001 , 0x000046e7 
+ 00016081  0x0000383e call  0x000067dd 
+ 00016082  0x0000383f fetcht  0x00000001 , 0x000046ed 
+ 00016083  0x00003840 call  0x000067dd 
+ 00016084  0x00003841 fetcht  0x00000001 , 0x000046e8 
+ 00016085  0x00003842 call  0x000067dd 
+ 00016086  0x00003843 fetcht  0x00000001 , 0x000046e9 
+ 00016087  0x00003844 call  0x000067dd 
+ 00016088  0x00003845 fetcht  0x00000001 , 0x000046ea 
+ 00016089  0x00003846 call  0x000067dd 
+ 00016090  0x00003847 fetcht  0x00000001 , 0x000046eb 
+ 00016091  0x00003848 call  0x000067dd 
+ 00016092  0x00003849 fetcht  0x00000001 , 0x000046f3 
+ 00016093  0x0000384a branch  0x000067e1 
+ 00016094  0x0000384f arg  0x0000001e , 0x00000002 
+ 00016095  0x00003850 rtn 
+ 00016096  0x00003853 bpatch  0x000000e4 , 0x0000401c 
+ 00016097  0x00003854 call  0x00003eee 
+ 00016098  0x00003855 call  0x00003f36 
+ 00016099  0x00003856 fetch  0x00000001 , 0x000046b8 
+ 00016100  0x00003857 fetcht  0x00000001 , 0x000046b7 
+ 00016101  0x00003858 store  0x00000001 , 0x000046b7 
+ 00016102  0x00003859 isub  0x00000002 , 0x0000003e 
+ 00016103  0x0000385a nbranch  0x000033d4 , 0x00000005 
+ 00016104  0x0000385b fetch  0x00000001 , 0x000046be 
+ 00016105  0x0000385c fetcht  0x00000001 , 0x000046bd 
+ 00016106  0x0000385d store  0x00000001 , 0x000046bd 
+ 00016107  0x0000385e isub  0x00000002 , 0x0000003e 
+ 00016108  0x0000385f nbranch  0x000033d4 , 0x00000005 
+ 00016109  0x00003860 rtn 
+ 00016110  0x00003862 fetch  0x00000001 , 0x000046ea 
+ 00016111  0x00003863 rtneq  0x000000ff 
+ 00016112  0x00003864 arg  0x00000000 , 0x00000011 
+ 00016113  0x00003865 fetcht  0x00000001 , 0x000046ea 
+ 00016114  0x00003866 call  0x0000681d 
+ 00016115  0x00003867 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016116  0x00003868 fetcht  0x00000001 , 0x000046eb 
+ 00016117  0x00003869 call  0x0000681d 
+ 00016118  0x0000386a setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016119  0x0000386b copy  0x00000011 , 0x0000003f 
+ 00016120  0x0000386c store  0x00000001 , 0x000046b8 
+ 00016121  0x0000386d beq  0x00000001 , 0x00003efe 
+ 00016122  0x0000386e beq  0x00000002 , 0x00003f02 
+ 00016123  0x0000386f fetch  0x00000001 , 0x000046b9 
+ 00016124  0x00003870 bbit1  0x00000007 , 0x00003f0e 
+ 00016125  0x00003871 rtn 
+ 00016126  0x00003874 fetch  0x00000001 , 0x000046b7 
+ 00016127  0x00003875 beq  0x00000000 , 0x00003f06 
+ 00016128  0x00003876 beq  0x00000003 , 0x00003f08 
+ 00016129  0x00003877 rtn 
+ 00016130  0x00003879 fetch  0x00000001 , 0x000046b7 
+ 00016131  0x0000387a beq  0x00000000 , 0x00003f0a 
+ 00016132  0x0000387b beq  0x00000003 , 0x00003f0c 
+ 00016133  0x0000387c rtn 
+ 00016134  0x0000387e jam  0x00000082 , 0x000046b9 
+ 00016135  0x0000387f rtn 
+ 00016136  0x00003881 jam  0x00000081 , 0x000046b9 
+ 00016137  0x00003882 rtn 
+ 00016138  0x00003884 jam  0x00000080 , 0x000046b9 
+ 00016139  0x00003885 rtn 
+ 00016140  0x00003887 jam  0x00000083 , 0x000046b9 
+ 00016141  0x00003888 rtn 
+ 00016142  0x0000388a fetch  0x00000001 , 0x000046b9 
+ 00016143  0x0000388b set0  0x00000007 , 0x0000003f 
+ 00016144  0x0000388c store  0x00000001 , 0x000046b9 
+ 00016145  0x0000388d beq  0x00000000 , 0x00003f16 
+ 00016146  0x0000388e beq  0x00000001 , 0x00003f19 
+ 00016147  0x0000388f beq  0x00000002 , 0x00003f1c 
+ 00016148  0x00003890 beq  0x00000003 , 0x00003f1f 
+ 00016149  0x00003891 rtn 
+ 00016150  0x00003893 fetch  0x00000001 , 0x000046b8 
+ 00016151  0x00003894 beq  0x00000003 , 0x00003f22 
+ 00016152  0x00003895 rtn 
+ 00016153  0x00003897 fetch  0x00000001 , 0x000046b8 
+ 00016154  0x00003898 beq  0x00000000 , 0x00003f22 
+ 00016155  0x00003899 rtn 
+ 00016156  0x0000389b fetch  0x00000001 , 0x000046b8 
+ 00016157  0x0000389c beq  0x00000003 , 0x00003f2c 
+ 00016158  0x0000389d rtn 
+ 00016159  0x0000389f fetch  0x00000001 , 0x000046b8 
+ 00016160  0x000038a0 beq  0x00000000 , 0x00003f2c 
+ 00016161  0x000038a1 rtn 
+ 00016162  0x000038a3 fetch  0x00000001 , 0x000046bc 
+ 00016163  0x000038a4 increase  0x00000001 , 0x0000003f 
+ 00016164  0x000038a5 store  0x00000001 , 0x000046bc 
+ 00016165  0x000038a6 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016166  0x000038a7 rtn  0x00000002 
+ 00016167  0x000038a8 jam  0x00000000 , 0x000046bc 
+ 00016168  0x000038a9 fetch  0x00000001 , 0x000046ba 
+ 00016169  0x000038aa increase  0x00000001 , 0x0000003f 
+ 00016170  0x000038ab store  0x00000001 , 0x000046ba 
+ 00016171  0x000038ac rtn 
+ 00016172  0x000038ae fetch  0x00000001 , 0x000046bb 
+ 00016173  0x000038af increase  0x00000001 , 0x0000003f 
+ 00016174  0x000038b0 store  0x00000001 , 0x000046bb 
+ 00016175  0x000038b1 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016176  0x000038b2 rtn  0x00000002 
+ 00016177  0x000038b3 jam  0x00000000 , 0x000046bb 
+ 00016178  0x000038b4 fetch  0x00000001 , 0x000046ba 
+ 00016179  0x000038b5 increase  0xffffffff , 0x0000003f 
+ 00016180  0x000038b6 store  0x00000001 , 0x000046ba 
+ 00016181  0x000038b7 rtn 
+ 00016182  0x000038bb fetch  0x00000001 , 0x000046e8 
+ 00016183  0x000038bc rtneq  0x000000ff 
+ 00016184  0x000038bd arg  0x00000000 , 0x00000011 
+ 00016185  0x000038be fetcht  0x00000001 , 0x000046e8 
+ 00016186  0x000038bf call  0x0000681d 
+ 00016187  0x000038c0 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016188  0x000038c1 fetcht  0x00000001 , 0x000046e9 
+ 00016189  0x000038c2 call  0x0000681d 
+ 00016190  0x000038c3 setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016191  0x000038c4 copy  0x00000011 , 0x0000003f 
+ 00016192  0x000038c5 store  0x00000001 , 0x000046be 
+ 00016193  0x000038c6 beq  0x00000001 , 0x00003f46 
+ 00016194  0x000038c7 beq  0x00000002 , 0x00003f4a 
+ 00016195  0x000038c8 fetch  0x00000001 , 0x000046bf 
+ 00016196  0x000038c9 bbit1  0x00000007 , 0x00003f56 
+ 00016197  0x000038ca rtn 
+ 00016198  0x000038cd fetch  0x00000001 , 0x000046bd 
+ 00016199  0x000038ce beq  0x00000000 , 0x00003f4e 
+ 00016200  0x000038cf beq  0x00000003 , 0x00003f50 
+ 00016201  0x000038d0 rtn 
+ 00016202  0x000038d2 fetch  0x00000001 , 0x000046bd 
+ 00016203  0x000038d3 beq  0x00000000 , 0x00003f52 
+ 00016204  0x000038d4 beq  0x00000003 , 0x00003f54 
+ 00016205  0x000038d5 rtn 
+ 00016206  0x000038d7 jam  0x00000082 , 0x000046bf 
+ 00016207  0x000038d8 rtn 
+ 00016208  0x000038da jam  0x00000081 , 0x000046bf 
+ 00016209  0x000038db rtn 
+ 00016210  0x000038dd jam  0x00000080 , 0x000046bf 
+ 00016211  0x000038de rtn 
+ 00016212  0x000038e0 jam  0x00000083 , 0x000046bf 
+ 00016213  0x000038e1 rtn 
+ 00016214  0x000038e3 fetch  0x00000001 , 0x000046bf 
+ 00016215  0x000038e4 set0  0x00000007 , 0x0000003f 
+ 00016216  0x000038e5 store  0x00000001 , 0x000046bf 
+ 00016217  0x000038e6 beq  0x00000000 , 0x00003f5e 
+ 00016218  0x000038e7 beq  0x00000001 , 0x00003f61 
+ 00016219  0x000038e8 beq  0x00000002 , 0x00003f64 
+ 00016220  0x000038e9 beq  0x00000003 , 0x00003f67 
+ 00016221  0x000038ea rtn 
+ 00016222  0x000038ec fetch  0x00000001 , 0x000046be 
+ 00016223  0x000038ed beq  0x00000003 , 0x00003f6a 
+ 00016224  0x000038ee rtn 
+ 00016225  0x000038f0 fetch  0x00000001 , 0x000046be 
+ 00016226  0x000038f1 beq  0x00000000 , 0x00003f6a 
+ 00016227  0x000038f2 rtn 
+ 00016228  0x000038f4 fetch  0x00000001 , 0x000046be 
+ 00016229  0x000038f5 beq  0x00000003 , 0x00003f6f 
+ 00016230  0x000038f6 rtn 
+ 00016231  0x000038f8 fetch  0x00000001 , 0x000046be 
+ 00016232  0x000038f9 beq  0x00000000 , 0x00003f6f 
+ 00016233  0x000038fa rtn 
+ 00016234  0x000038fc jam  0x00000000 , 0x000046c2 
+ 00016235  0x000038fd fetch  0x00000001 , 0x000046c0 
+ 00016236  0x000038fe increase  0x00000001 , 0x0000003f 
+ 00016237  0x000038ff store  0x00000001 , 0x000046c0 
+ 00016238  0x00003900 rtn 
+ 00016239  0x00003902 jam  0x00000000 , 0x000046c1 
+ 00016240  0x00003903 fetch  0x00000001 , 0x000046c0 
+ 00016241  0x00003904 increase  0xffffffff , 0x0000003f 
+ 00016242  0x00003905 store  0x00000001 , 0x000046c0 
+ 00016243  0x00003906 rtn 
+ 00016244  0x0000390a setarg  0x00000002 
+ 00016245  0x0000390b store  0x00000001 , 0x00004680 
+ 00016246  0x0000390c rtn 
+ 00016247  0x0000390f fetch  0x00000001 , 0x000041e2 
+ 00016248  0x00003910 rtn  0x00000034 
+ 00016249  0x00003911 call  0x00005271 
+ 00016250  0x00003912 nrtn  0x00000034 
+ 00016251  0x00003913 fetch  0x00000004 , 0x000046d3 
+ 00016252  0x00003914 bbit1  0x00000003 , 0x00003f8a 
+ 00016253  0x00003915 bbit1  0x00000000 , 0x00003f8a 
+ 00016254  0x00003916 bbit1  0x00000005 , 0x00003f8a 
+ 00016255  0x00003917 call  0x00003f97 
+ 00016256  0x00003918 nrtn  0x00000028 
+ 00016257  0x0000391a arg  0x00000009 , 0x00000011 
+ 00016258  0x0000391b call  0x00004d63 
+ 00016259  0x0000391c fetch  0x00000002 , 0x0000424e 
+ 00016260  0x0000391d istore  0x00000002 , 0x00000005 
+ 00016261  0x0000391e setarg  0x000002a1 
+ 00016262  0x0000391f istore  0x00000002 , 0x00000005 
+ 00016263  0x00003920 fetch  0x00000007 , 0x0000469a 
+ 00016264  0x00003921 istore  0x00000007 , 0x00000005 
+ 00016265  0x00003922 rtn 
+ 00016266  0x00003926 setarg  0x00000000 
+ 00016267  0x00003927 store  0x00000007 , 0x0000469a 
+ 00016268  0x00003928 branch  0x00003f81 
+ 00016269  0x0000392c fetch  0x00000002 , 0x000046aa 
+ 00016270  0x0000392d store  0x00000002 , 0x000046b0 
+ 00016271  0x0000392e rtn 
+ 00016272  0x00003932 bpatch  0x000000e5 , 0x0000401c 
+ 00016273  0x00003933 arg  0x00000007 , 0x00000011 
+ 00016274  0x00003934 fetcht  0x00000002 , 0x0000446f 
+ 00016275  0x00003935 call  0x00005a64 
+ 00016276  0x00003936 fetch  0x00000007 , 0x0000469a 
+ 00016277  0x00003937 istore  0x00000007 , 0x00000005 
+ 00016278  0x00003938 rtn 
+ 00016279  0x0000393b bpatch  0x000000e6 , 0x0000401c 
+ 00016280  0x0000393c disable  0x00000028 
+ 00016281  0x0000393d setarg  0x00000000 
+ 00016282  0x0000393e store  0x00000006 , 0x0000469b 
+ 00016283  0x0000393f call  0x00003fb5 
+ 00016284  0x00003940 call  0x00004079 
+ 00016285  0x00003941 call  0x0000407e 
+ 00016286  0x00003942 call  0x00004099 
+ 00016287  0x00003943 nrtn  0x00000028 
+ 00016288  0x00003944 call  0x00003f8d 
+ 00016289  0x00003945 arg  0x00000008 , 0x00000007 
+ 00016290  0x00003946 branch  0x000043ce 
+ 00016291  0x00003949 fetch  0x00000002 , 0x0000469b 
+ 00016292  0x0000394a sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016293  0x0000394b store  0x00000002 , 0x0000469b 
+ 00016294  0x0000394c branch  0x00007fe7 
+ 00016295  0x0000394e fetch  0x00000002 , 0x0000469d 
+ 00016296  0x0000394f sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016297  0x00003950 store  0x00000002 , 0x0000469d 
+ 00016298  0x00003951 branch  0x00007fe7 
+ 00016299  0x00003953 fetch  0x00000002 , 0x0000469d 
+ 00016300  0x00003954 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016301  0x00003955 store  0x00000002 , 0x0000469d 
+ 00016302  0x00003956 fetch  0x00000002 , 0x0000469b 
+ 00016303  0x00003957 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016304  0x00003958 store  0x00000002 , 0x0000469b 
+ 00016305  0x00003959 call  0x00004002 
+ 00016306  0x0000395a branch  0x00007fe7 
+ 00016307  0x0000395c call  0x00004002 
+ 00016308  0x0000395d branch  0x00007fe7 
+ 00016309  0x0000395f fetch  0x00000001 , 0x00004239 
+ 00016310  0x00003960 rtnne  0x00000000 
+ 00016311  0x00003961 fetch  0x00000001 , 0x000046e0 
+ 00016312  0x00003962 beq  0x00000000 , 0x00003fe2 
+ 00016313  0x00003963 beq  0x00000001 , 0x00003fe2 
+ 00016314  0x00003964 beq  0x00000002 , 0x00003fe2 
+ 00016315  0x00003965 beq  0x00000003 , 0x00003fe2 
+ 00016316  0x00003966 beq  0x00000004 , 0x00003fc4 
+ 00016317  0x00003967 beq  0x00000005 , 0x00004010 
+ 00016318  0x00003968 beq  0x00000006 , 0x00003fe2 
+ 00016319  0x00003969 branch  0x00003fe2 
+ 00016320  0x0000396c fetch  0x00000001 , 0x000046a7 
+ 00016321  0x0000396d call  0x0000405d , 0x00000034 
+ 00016322  0x0000396e jam  0x00000001 , 0x000046a7 
+ 00016323  0x0000396f rtn 
+ 00016324  0x00003973 call  0x00003fc0 
+ 00016325  0x00003974 fetcht  0x00000001 , 0x000046f3 
+ 00016326  0x00003975 call  0x0000681d 
+ 00016327  0x00003976 nrtn  0x00000001 
+ 00016328  0x00003978 setarg  0x00000000 
+ 00016329  0x00003979 call  0x00006414 
+ 00016330  0x0000397a bne  0x00000030 , 0x000040d1 
+ 00016331  0x0000397b setarg  0x00000002 
+ 00016332  0x0000397c call  0x00006414 
+ 00016333  0x0000397d rtnbit0  0x00000007 
+ 00016334  0x0000397e call  0x0000405d 
+ 00016335  0x0000397f call  0x00003fde 
+ 00016336  0x00003980 store  0x00000001 , 0x000046a1 
+ 00016337  0x00003981 rshift4  0x0000003f , 0x0000003f 
+ 00016338  0x00003982 call  0x00004169 
+ 00016339  0x00003983 store  0x00000001 , 0x0000469c 
+ 00016340  0x00003984 fetch  0x00000001 , 0x000046a1 
+ 00016341  0x00003985 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016342  0x00003986 call  0x00004169 
+ 00016343  0x00003987 store  0x00000001 , 0x0000469e 
+ 00016344  0x00003988 fetch  0x00000001 , 0x000046f6 
+ 00016345  0x00003989 beq  0x00000000 , 0x00003fa3 
+ 00016346  0x0000398a beq  0x00000001 , 0x00003fab 
+ 00016347  0x0000398b beq  0x00000002 , 0x00003fa7 
+ 00016348  0x0000398c beq  0x00000003 , 0x00003fb3 
+ 00016349  0x0000398d rtn 
+ 00016350  0x00003990 setarg  0x00000012 
+ 00016351  0x00003991 branch  0x00006414 
+ 00016352  0x00003994 beq  0x00000031 , 0x00003fea 
+ 00016353  0x00003995 branch  0x000040d1 
+ 00016354  0x00003998 call  0x00003fc0 
+ 00016355  0x00003999 disable  0x00000028 
+ 00016356  0x0000399a fetcht  0x00000001 , 0x000046f3 
+ 00016357  0x0000399b call  0x0000681d 
+ 00016358  0x0000399c nrtn  0x00000001 
+ 00016359  0x0000399e setarg  0x00000000 
+ 00016360  0x0000399f call  0x00006414 
+ 00016361  0x000039a0 bne  0x00000030 , 0x00003fe0 
+ 00016362  0x000039a2 setarg  0x00000002 
+ 00016363  0x000039a3 call  0x00006414 
+ 00016364  0x000039a4 rtnbit0  0x00000007 
+ 00016365  0x000039a5 call  0x0000405d 
+ 00016366  0x000039a6 fetch  0x00000001 , 0x0000469b 
+ 00016367  0x000039a7 call  0x00004165 
+ 00016368  0x000039a8 store  0x00000002 , 0x0000469b 
+ 00016369  0x000039a9 fetch  0x00000001 , 0x0000469d 
+ 00016370  0x000039aa call  0x00004165 
+ 00016371  0x000039ab store  0x00000002 , 0x0000469d 
+ 00016372  0x000039ac fetch  0x00000001 , 0x000046f6 
+ 00016373  0x000039ad beq  0x00000000 , 0x00003ffa 
+ 00016374  0x000039ae beq  0x00000001 , 0x00003ffc 
+ 00016375  0x000039af beq  0x00000002 , 0x00003ffe 
+ 00016376  0x000039b0 beq  0x00000003 , 0x00004000 
+ 00016377  0x000039b1 rtn 
+ 00016378  0x000039b4 call  0x00003fa3 
+ 00016379  0x000039b5 branch  0x000040b3 
+ 00016380  0x000039b7 call  0x00003fab 
+ 00016381  0x000039b8 branch  0x000040b3 
+ 00016382  0x000039ba call  0x00003fa7 
+ 00016383  0x000039bb branch  0x000040b3 
+ 00016384  0x000039bd call  0x00003fb3 
+ 00016385  0x000039be branch  0x000040b3 
+ 00016386  0x000039c1 fetch  0x00000002 , 0x0000469d 
+ 00016387  0x000039c2 fetcht  0x00000002 , 0x0000469b 
+ 00016388  0x000039c3 store  0x00000002 , 0x0000469b 
+ 00016389  0x000039c4 storet  0x00000002 , 0x0000469d 
+ 00016390  0x000039c5 rtn 
+ 00016391  0x000039c8 call  0x0000640f 
+ 00016392  0x000039c9 nop  0x00000064 
+ 00016393  0x000039ca copy  0x00000012 , 0x0000003f 
+ 00016394  0x000039cb call  0x00006414 
+ 00016395  0x000039cc copy  0x0000003f , 0x00000012 
+ 00016396  0x000039cd call  0x00006411 
+ 00016397  0x000039ce nop  0x00000064 
+ 00016398  0x000039cf copy  0x00000012 , 0x0000003f 
+ 00016399  0x000039d0 rtn 
+ 00016400  0x000039d2 disable  0x00000028 
+ 00016401  0x000039d3 fetcht  0x00000001 , 0x000046f3 
+ 00016402  0x000039d4 call  0x0000681d 
+ 00016403  0x000039d5 nrtn  0x00000001 
+ 00016404  0x000039d6 arg  0x00000002 , 0x00000012 
+ 00016405  0x000039d7 call  0x00004007 
+ 00016406  0x000039d8 rtnbit0  0x00000007 
+ 00016407  0x000039d9 arg  0x00000000 , 0x00000012 
+ 00016408  0x000039da call  0x00004007 
+ 00016409  0x000039db store  0x00000001 , 0x000046dd 
+ 00016410  0x000039dc bne  0x0000003e , 0x00004145 
+ 00016411  0x000039dd fetch  0x00000001 , 0x000046a7 
+ 00016412  0x000039de call  0x00004039 , 0x00000034 
+ 00016413  0x000039df jam  0x00000001 , 0x000046a7 
+ 00016414  0x000039e0 call  0x00004039 
+ 00016415  0x000039e1 fetch  0x00000001 , 0x000046a1 
+ 00016416  0x000039e2 rshift4  0x0000003f , 0x0000003f 
+ 00016417  0x000039e3 call  0x00004169 
+ 00016418  0x000039e4 store  0x00000001 , 0x0000469c 
+ 00016419  0x000039e5 fetch  0x00000001 , 0x000046a1 
+ 00016420  0x000039e6 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016421  0x000039e7 call  0x00004169 
+ 00016422  0x000039e8 store  0x00000001 , 0x0000469e 
+ 00016423  0x000039e9 fetch  0x00000001 , 0x000046f6 
+ 00016424  0x000039ea beq  0x00000000 , 0x00004031 
+ 00016425  0x000039eb beq  0x00000001 , 0x00004035 
+ 00016426  0x000039ec beq  0x00000002 , 0x00004033 
+ 00016427  0x000039ed beq  0x00000003 , 0x00004037 
+ 00016428  0x000039ee rtn 
+ 00016429  0x000039f1 fetch  0x00000001 , 0x000046a4 
+ 00016430  0x000039f2 beq  0x00000000 , 0x00004051 
+ 00016431  0x000039f3 beq  0x00000001 , 0x00004045 
+ 00016432  0x000039f4 rtn 
+ 00016433  0x000039f8 call  0x00003fa3 
+ 00016434  0x000039f9 branch  0x0000402d 
+ 00016435  0x000039fc call  0x00003fa7 
+ 00016436  0x000039fd branch  0x0000402d 
+ 00016437  0x00003a00 call  0x00003fab 
+ 00016438  0x00003a01 branch  0x0000402d 
+ 00016439  0x00003a04 call  0x00003fb3 
+ 00016440  0x00003a05 branch  0x0000402d 
+ 00016441  0x00003a08 call  0x0000640f 
+ 00016442  0x00003a09 call  0x0000405d 
+ 00016443  0x00003a0a arg  0x00000005 , 0x0000003f 
+ 00016444  0x00003a0b call  0x00006414 
+ 00016445  0x00003a0c store  0x00000001 , 0x000046a1 
+ 00016446  0x00003a0d arg  0x00000007 , 0x0000003f 
+ 00016447  0x00003a0e call  0x00006414 
+ 00016448  0x00003a0f store  0x00000001 , 0x000046a2 
+ 00016449  0x00003a10 arg  0x00000008 , 0x0000003f 
+ 00016450  0x00003a11 call  0x00006414 
+ 00016451  0x00003a12 store  0x00000001 , 0x000046a3 
+ 00016452  0x00003a13 branch  0x00006411 
+ 00016453  0x00003a17 fetch  0x00000001 , 0x000046a2 
+ 00016454  0x00003a18 rtnne  0x00000000 
+ 00016455  0x00003a19 fetch  0x00000001 , 0x000046a3 
+ 00016456  0x00003a1a sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016457  0x00003a1b rtn  0x00000002 
+ 00016458  0x00003a1c jam  0x00000000 , 0x000046a4 
+ 00016459  0x00003a1d setarg  0x0000ba41 
+ 00016460  0x00003a1e call  0x00006405 
+ 00016461  0x00003a1f setarg  0x00000032 
+ 00016462  0x00003a20 call  0x00006405 
+ 00016463  0x00003a21 setarg  0x0000b541 
+ 00016464  0x00003a22 branch  0x00006405 
+ 00016465  0x00003a24 fetch  0x00000001 , 0x000046a2 
+ 00016466  0x00003a25 rtnne  0x00000000 
+ 00016467  0x00003a26 fetch  0x00000001 , 0x000046a3 
+ 00016468  0x00003a27 sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016469  0x00003a28 nrtn  0x00000002 
+ 00016470  0x00003a29 jam  0x00000001 , 0x000046a4 
+ 00016471  0x00003a2a setarg  0x0000ba41 
+ 00016472  0x00003a2b call  0x00006405 
+ 00016473  0x00003a2c setarg  0x00008032 
+ 00016474  0x00003a2d call  0x00006405 
+ 00016475  0x00003a2e setarg  0x0000b541 
+ 00016476  0x00003a2f branch  0x00006405 
+ 00016477  0x00003a34 arg  0x00000003 , 0x0000003f 
+ 00016478  0x00003a35 call  0x00006414 
+ 00016479  0x00003a36 store  0x00000002 , 0x0000469b 
+ 00016480  0x00003a37 arg  0x00000004 , 0x0000003f 
+ 00016481  0x00003a38 call  0x00006414 
+ 00016482  0x00003a39 store  0x00000002 , 0x0000469d 
+ 00016483  0x00003a3a rtn 
+ 00016484  0x00003a3d arg  0x0000001b , 0x00000002 
+ 00016485  0x00003a3e call  0x000067fb 
+ 00016486  0x00003a3f arg  0x0000001b , 0x00000002 
+ 00016487  0x00003a40 call  0x0000681d 
+ 00016488  0x00003a41 rtn  0x00000001 
+ 00016489  0x00003a42 hfetch  0x00000001 , 0x00008109 
+ 00016490  0x00003a43 set1  0x00000004 , 0x0000003f 
+ 00016491  0x00003a44 hstore  0x00000001 , 0x00008109 
+ 00016492  0x00003a45 rtn 
+ 00016493  0x00003a48 fetcht  0x00000001 , 0x000046c0 
+ 00016494  0x00003a49 hfetch  0x00000001 , 0x00008109 
+ 00016495  0x00003a4a iadd  0x00000002 , 0x0000003f 
+ 00016496  0x00003a4b rtn  0x00000034 
+ 00016497  0x00003a4c store  0x00000001 , 0x0000469f 
+ 00016498  0x00003a4d jam  0x00000000 , 0x000046c0 
+ 00016499  0x00003a4e branch  0x00007fe7 
+ 00016500  0x00003a50 fetcht  0x00000001 , 0x000046c0 
+ 00016501  0x00003a51 hfetch  0x00000001 , 0x00008109 
+ 00016502  0x00003a52 iadd  0x00000002 , 0x0000003f 
+ 00016503  0x00003a53 store  0x00000001 , 0x000046c0 
+ 00016504  0x00003a54 rtn 
+ 00016505  0x00003a56 fetch  0x00000001 , 0x000046c0 
+ 00016506  0x00003a57 rtn  0x00000034 
+ 00016507  0x00003a58 store  0x00000001 , 0x0000469f 
+ 00016508  0x00003a59 jam  0x00000000 , 0x000046c0 
+ 00016509  0x00003a5a branch  0x00007fe7 
+ 00016510  0x00003a5d fetch  0x00000001 , 0x000046ba 
+ 00016511  0x00003a5e rtn  0x00000034 
+ 00016512  0x00003a5f store  0x00000001 , 0x000046a0 
+ 00016513  0x00003a60 jam  0x00000000 , 0x000046ba 
+ 00016514  0x00003a61 branch  0x00007fe7 
+ 00016515  0x00003a64 arg  0x00000000 , 0x00000011 
+ 00016516  0x00003a65 fetcht  0x00000001 , 0x000046e2 
+ 00016517  0x00003a66 call  0x0000681d 
+ 00016518  0x00003a67 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016519  0x00003a68 fetcht  0x00000001 , 0x000046e3 
+ 00016520  0x00003a69 call  0x0000681d 
+ 00016521  0x00003a6a setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016522  0x00003a6b fetcht  0x00000001 , 0x000046e4 
+ 00016523  0x00003a6c call  0x0000681d 
+ 00016524  0x00003a6d setflag  0x00000001 , 0x00000002 , 0x00000011 
+ 00016525  0x00003a6e call  0x00004090 
+ 00016526  0x00003a70 copy  0x00000011 , 0x0000003f 
+ 00016527  0x00003a71 rtn 
+ 00016528  0x00003a73 fetch  0x00000001 , 0x000046e5 
+ 00016529  0x00003a74 rtneq  0x000000ff 
+ 00016530  0x00003a75 fetcht  0x00000001 , 0x000046e5 
+ 00016531  0x00003a76 call  0x0000681d 
+ 00016532  0x00003a77 setflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00016533  0x00003a78 fetcht  0x00000001 , 0x000046e6 
+ 00016534  0x00003a79 call  0x0000681d 
+ 00016535  0x00003a7a setflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00016536  0x00003a7b rtn 
+ 00016537  0x00003a7e call  0x00004083 
+ 00016538  0x00003a7f call  0x000040a8 
+ 00016539  0x00003a80 call  0x000040a3 
+ 00016540  0x00003a81 copy  0x00000011 , 0x0000003f 
+ 00016541  0x00003a82 fetcht  0x00000001 , 0x0000469a 
+ 00016542  0x00003a83 store  0x00000001 , 0x0000469a 
+ 00016543  0x00003a84 ixor  0x00000002 , 0x0000003f 
+ 00016544  0x00003a85 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00016545  0x00003a86 rtn  0x00000005 
+ 00016546  0x00003a87 branch  0x00007fe7 
+ 00016547  0x00003a8a rtnmark0  0x00000026 
+ 00016548  0x00003a8b copy  0x00000011 , 0x0000003f 
+ 00016549  0x00003a8c rtn  0x00000034 
+ 00016550  0x00003a8d store  0x00000001 , 0x0000469a 
+ 00016551  0x00003a8e branch  0x00007fe7 
+ 00016552  0x00003a92 fetch  0x00000002 , 0x00004682 
+ 00016553  0x00003a93 bbit1  0x00000009 , 0x000040ad 
+ 00016554  0x00003a94 fetch  0x00000002 , 0x00004682 
+ 00016555  0x00003a95 bbit1  0x00000000 , 0x000040b0 
+ 00016556  0x00003a96 rtn 
+ 00016557  0x00003a98 copy  0x00000011 , 0x0000003f 
+ 00016558  0x00003a99 nbranch  0x00005820 , 0x00000034 
+ 00016559  0x00003a9a branch  0x00005822 
+ 00016560  0x00003a9c copy  0x00000011 , 0x0000003f 
+ 00016561  0x00003a9d nbranch  0x00002bc7 , 0x00000034 
+ 00016562  0x00003a9e branch  0x00002bc9 
+ 00016563  0x00003aa2 bpatch  0x000000e7 , 0x0000401c 
+ 00016564  0x00003aa3 arg  0x0000001a , 0x00000002 
+ 00016565  0x00003aa4 fetch  0x00000004 , 0x000046d3 
+ 00016566  0x00003aa5 isolate1  0x00000012 , 0x0000003f 
+ 00016567  0x00003aa6 call  0x000040be , 0x00000001 
+ 00016568  0x00003aa7 call  0x0000681d 
+ 00016569  0x00003aa8 rtn  0x00000001 
+ 00016570  0x00003aa9 setarg  0x0000000a 
+ 00016571  0x00003aaa call  0x00006414 
+ 00016572  0x00003aab nop  0x000003e8 
+ 00016573  0x00003aac branch  0x000040b3 
+ 00016574  0x00003aae arg  0x0000001f , 0x00000002 
+ 00016575  0x00003aaf rtn 
+ 00016576  0x00003ab2 fetch  0x00000004 , 0x000046d3 
+ 00016577  0x00003ab3 bbit1  0x00000012 , 0x000040c4 
+ 00016578  0x00003ab5 arg  0x0000001a , 0x00000002 
+ 00016579  0x00003ab6 branch  0x000067fe 
+ 00016580  0x00003ab8 arg  0x0000001f , 0x00000002 
+ 00016581  0x00003ab9 branch  0x000067fe 
+ 00016582  0x00003abd call  0x00003d36 
+ 00016583  0x00003abe rtn  0x0000002b 
+ 00016584  0x00003abf call  0x000040c0 
+ 00016585  0x00003ac0 fetch  0x00000001 , 0x000046e0 
+ 00016586  0x00003ac1 beq  0x00000005 , 0x000040d5 
+ 00016587  0x00003ac3 call  0x000040d9 
+ 00016588  0x00003ac4 beq  0x00000030 , 0x000040e0 
+ 00016589  0x00003ac5 beq  0x00000031 , 0x000040ea 
+ 00016590  0x00003ac6 call  0x000040d1 
+ 00016591  0x00003ac7 nop  0x000003e8 
+ 00016592  0x00003ac8 branch  0x000040cb 
+ 00016593  0x00003aca bpatch  0x000000e8 , 0x0000401d 
+ 00016594  0x00003acb fetch  0x00000004 , 0x000046d3 
+ 00016595  0x00003acc bbit1  0x00000012 , 0x000063e0 
+ 00016596  0x00003acd branch  0x000063d1 
+ 00016597  0x00003ad0 call  0x000040d9 
+ 00016598  0x00003ad1 beq  0x0000003e , 0x0000414b 
+ 00016599  0x00003ad2 call  0x00004145 
+ 00016600  0x00003ad3 branch  0x000040d5 
+ 00016601  0x00003ad6 setarg  0x00000001 
+ 00016602  0x00003ad7 call  0x00006414 
+ 00016603  0x00003ad8 store  0x00000001 , 0x000046de 
+ 00016604  0x00003ad9 setarg  0x00000000 
+ 00016605  0x00003ada call  0x00006414 
+ 00016606  0x00003adb store  0x00000001 , 0x000046dd 
+ 00016607  0x00003adc rtn 
+ 00016608  0x00003ade fetch  0x00000001 , 0x000046de 
+ 00016609  0x00003adf beq  0x000000d1 , 0x00004139 
+ 00016610  0x00003ae0 beq  0x000000d2 , 0x000040f8 
+ 00016611  0x00003ae1 beq  0x00000002 , 0x000040ee 
+ 00016612  0x00003ae2 beq  0x00000054 , 0x000040e6 
+ 00016613  0x00003ae3 rtn 
+ 00016614  0x00003ae5 jam  0x00000002 , 0x000046e0 
+ 00016615  0x00003ae6 rtn 
+ 00016616  0x00003ae8 jam  0x00000006 , 0x000046e0 
+ 00016617  0x00003ae9 rtn 
+ 00016618  0x00003aeb fetch  0x00000001 , 0x000046de 
+ 00016619  0x00003aec beq  0x00000070 , 0x000040e8 
+ 00016620  0x00003aed jam  0x00000001 , 0x000046e0 
+ 00016621  0x00003aee rtn 
+ 00016622  0x00003af0 jam  0x00000004 , 0x000046e0 
+ 00016623  0x00003af1 call  0x000040f6 
+ 00016624  0x00003af2 setarg  0x00003426 
+ 00016625  0x00003af3 call  0x00006413 
+ 00016626  0x00003af4 setarg  0x00000419 
+ 00016627  0x00003af5 call  0x00006413 
+ 00016628  0x00003af7 setarg  0x00000009 
+ 00016629  0x00003af8 branch  0x00006413 
+ 00016630  0x00003afa setarg  0x00005a09 
+ 00016631  0x00003afb branch  0x00006413 
+ 00016632  0x00003afe jam  0x00000003 , 0x000046e0 
+ 00016633  0x00003aff call  0x000040f6 
+ 00016634  0x00003b00 setarg  0x00000f0d 
+ 00016635  0x00003b01 call  0x00006413 
+ 00016636  0x00003b02 setarg  0x0000e31d 
+ 00016637  0x00003b03 call  0x00006413 
+ 00016638  0x00003b04 setarg  0x0000d27d 
+ 00016639  0x00003b05 call  0x00006413 
+ 00016640  0x00003b06 call  0x00004102 
+ 00016641  0x00003b07 branch  0x0000411a 
+ 00016642  0x00003b0a setarg  0x0000351b 
+ 00016643  0x00003b0b call  0x00006413 
+ 00016644  0x00003b0c setarg  0x0000b428 
+ 00016645  0x00003b0d call  0x00006413 
+ 00016646  0x00003b0e setarg  0x00004629 
+ 00016647  0x00003b0f call  0x00006413 
+ 00016648  0x00003b10 setarg  0x0000962a 
+ 00016649  0x00003b11 call  0x00006413 
+ 00016650  0x00003b12 setarg  0x00008c2b 
+ 00016651  0x00003b13 call  0x00006413 
+ 00016652  0x00003b14 setarg  0x00006e2c 
+ 00016653  0x00003b15 call  0x00006413 
+ 00016654  0x00003b16 setarg  0x0000642d 
+ 00016655  0x00003b17 call  0x00006413 
+ 00016656  0x00003b18 setarg  0x00005f38 
+ 00016657  0x00003b19 call  0x00006413 
+ 00016658  0x00003b1a setarg  0x00000f39 
+ 00016659  0x00003b1b call  0x00006413 
+ 00016660  0x00003b1c setarg  0x0000323a 
+ 00016661  0x00003b1d call  0x00006413 
+ 00016662  0x00003b1e setarg  0x0000473b 
+ 00016663  0x00003b1f call  0x00006413 
+ 00016664  0x00003b20 setarg  0x00001042 
+ 00016665  0x00003b21 branch  0x00006413 
+ 00016666  0x00003b23 setarg  0x00002e54 
+ 00016667  0x00003b24 call  0x00006413 
+ 00016668  0x00003b25 setarg  0x0000f255 
+ 00016669  0x00003b26 call  0x00006413 
+ 00016670  0x00003b27 setarg  0x0000f461 
+ 00016671  0x00003b28 call  0x00006413 
+ 00016672  0x00003b29 setarg  0x00007063 
+ 00016673  0x00003b2a call  0x00006413 
+ 00016674  0x00003b2b setarg  0x00005275 
+ 00016675  0x00003b2c call  0x00006413 
+ 00016676  0x00003b2d setarg  0x00004176 
+ 00016677  0x00003b2e call  0x00006413 
+ 00016678  0x00003b2f setarg  0x0000ed77 
+ 00016679  0x00003b30 call  0x00006413 
+ 00016680  0x00003b31 setarg  0x00002378 
+ 00016681  0x00003b32 call  0x00006413 
+ 00016682  0x00003b33 setarg  0x00004679 
+ 00016683  0x00003b34 call  0x00006413 
+ 00016684  0x00003b35 setarg  0x0000e57a 
+ 00016685  0x00003b36 call  0x00006413 
+ 00016686  0x00003b37 setarg  0x0000487c 
+ 00016687  0x00003b38 call  0x00006413 
+ 00016688  0x00003b39 setarg  0x0000777e 
+ 00016689  0x00003b3a call  0x00006413 
+ 00016690  0x00003b3b setarg  0x0000017f 
+ 00016691  0x00003b3c call  0x00006413 
+ 00016692  0x00003b3d setarg  0x0000000b 
+ 00016693  0x00003b3e call  0x00006413 
+ 00016694  0x00003b3f setarg  0x0000007f 
+ 00016695  0x00003b40 call  0x00006413 
+ 00016696  0x00003b41 branch  0x000040f4 
+ 00016697  0x00003b45 jam  0x00000000 , 0x000046e0 
+ 00016698  0x00003b46 call  0x000040f6 
+ 00016699  0x00003b47 setarg  0x0000100d 
+ 00016700  0x00003b48 call  0x00006413 
+ 00016701  0x00003b49 setarg  0x0000ed1d 
+ 00016702  0x00003b4a call  0x00006413 
+ 00016703  0x00003b4b setarg  0x0000807d 
+ 00016704  0x00003b4c call  0x00006413 
+ 00016705  0x00003b4d call  0x00004102 
+ 00016706  0x00003b4e setarg  0x00000943 
+ 00016707  0x00003b4f call  0x00006413 
+ 00016708  0x00003b50 branch  0x0000411a 
+ 00016709  0x00003b54 fetcht  0x00000001 , 0x000046dc 
+ 00016710  0x00003b55 call  0x00006829 
+ 00016711  0x00003b56 call  0x00007ec1 
+ 00016712  0x00003b57 fetcht  0x00000001 , 0x000046dc 
+ 00016713  0x00003b58 call  0x00006825 
+ 00016714  0x00003b59 branch  0x00007ec1 
+ 00016715  0x00003b5c jam  0x00000005 , 0x000046e0 
+ 00016716  0x00003b5d setarg  0x0000ba41 
+ 00016717  0x00003b5e call  0x00006405 
+ 00016718  0x00003b5f setarg  0x00000d11 
+ 00016719  0x00003b60 call  0x00006405 
+ 00016720  0x00003b61 setarg  0x0000041b 
+ 00016721  0x00003b62 call  0x00006405 
+ 00016722  0x00003b63 setarg  0x0000041c 
+ 00016723  0x00003b64 call  0x00006405 
+ 00016724  0x00003b65 setarg  0x00000f1d 
+ 00016725  0x00003b66 call  0x00006405 
+ 00016726  0x00003b67 setarg  0x00000032 
+ 00016727  0x00003b68 call  0x00006405 
+ 00016728  0x00003b69 setarg  0x0000b541 
+ 00016729  0x00003b6a branch  0x00006405 
+ 00016730  0x00003b6f setarg  0x0000ba41 
+ 00016731  0x00003b70 call  0x00006405 
+ 00016732  0x00003b71 nop  0x00000fa0 
+ 00016733  0x00003b72 setarg  0x0000ff7f 
+ 00016734  0x00003b73 call  0x00006405 
+ 00016735  0x00003b74 copy  0x00000011 , 0x0000003f 
+ 00016736  0x00003b75 call  0x00006405 
+ 00016737  0x00003b76 setarg  0x0000007f 
+ 00016738  0x00003b77 call  0x00006405 
+ 00016739  0x00003b78 setarg  0x0000b541 
+ 00016740  0x00003b79 branch  0x00006405 
+ 00016741  0x00003b7c rtnbit0  0x00000007 
+ 00016742  0x00003b7d arg  0x0000ff00 , 0x00000002 
+ 00016743  0x00003b7e ior  0x00000002 , 0x0000003f 
+ 00016744  0x00003b7f rtn 
+ 00016745  0x00003b82 rtnbit0  0x00000003 
+ 00016746  0x00003b83 arg  0x000000f0 , 0x00000002 
+ 00016747  0x00003b84 ior  0x00000002 , 0x0000003f 
+ 00016748  0x00003b85 rtn 
+ 00016749  0x00003b89 call  0x00005892 
+ 00016750  0x00003b8a nrtn  0x00000034 
+ 00016751  0x00003b8b fetch  0x00000001 , 0x000046c5 
+ 00016752  0x00003b8c and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00016753  0x00003b8d rtnne  0x00000003 
+ 00016754  0x00003b8e fetch  0x00000004 , 0x000046d3 
+ 00016755  0x00003b8f bbit1  0x00000003 , 0x00004179 
+ 00016756  0x00003b90 bbit1  0x00000000 , 0x00004179 
+ 00016757  0x00003b91 bbit1  0x00000005 , 0x00004179 
+ 00016758  0x00003b92 call  0x00003f97 
+ 00016759  0x00003b93 nrtn  0x00000028 
+ 00016760  0x00003b94 branch  0x00003f90 
+ 00016761  0x00003b97 setarg  0x00000000 
+ 00016762  0x00003b98 store  0x00000007 , 0x0000469a 
+ 00016763  0x00003b99 branch  0x00003f90 
+ 00016764  0x00003b9c copy  0x00000013 , 0x0000003f 
+ 00016765  0x00003b9d beq  0x00000014 , 0x000041c3 
+ 00016766  0x00003b9e beq  0x00000001 , 0x000042ca 
+ 00016767  0x00003b9f beq  0x00000015 , 0x000041d9 
+ 00016768  0x00003ba0 beq  0x00000002 , 0x000041d9 
+ 00016769  0x00003ba1 beq  0x00000005 , 0x000041d6 
+ 00016770  0x00003ba2 beq  0x00000010 , 0x0000426c 
+ 00016771  0x00003ba3 beq  0x00000012 , 0x0000429b 
+ 00016772  0x00003ba4 beq  0x00000006 , 0x000041d5 
+ 00016773  0x00003ba5 beq  0x00000004 , 0x000041cc 
+ 00016774  0x00003ba6 beq  0x00000013 , 0x000041cc 
+ 00016775  0x00003ba7 beq  0x0000000a , 0x000041ca 
+ 00016776  0x00003ba8 beq  0x0000002e , 0x000033cd 
+ 00016777  0x00003ba9 beq  0x00000031 , 0x000041b4 
+ 00016778  0x00003baa beq  0x00000032 , 0x000041b6 
+ 00016779  0x00003bab beq  0x0000003e , 0x00004191 
+ 00016780  0x00003bac beq  0x00000027 , 0x0000438e 
+ 00016781  0x00003bad beq  0x00000039 , 0x0000419c 
+ 00016782  0x00003bae beq  0x0000003a , 0x00004192 
+ 00016783  0x00003baf beq  0x0000003c , 0x0000419a 
+ 00016784  0x00003bb0 rtn 
+ 00016785  0x00003bb4 branch  0x00003410 
+ 00016786  0x00003bb7 jam  0x00000001 , 0x0000478b 
+ 00016787  0x00003bb8 fetch  0x00000001 , 0x0000471e 
+ 00016788  0x00003bb9 nbranch  0x00004492 , 0x00000034 
+ 00016789  0x00003bba fetch  0x00000001 , 0x00004720 
+ 00016790  0x00003bbb fetcht  0x00000001 , 0x00004703 
+ 00016791  0x00003bbc isub  0x00000002 , 0x0000003e 
+ 00016792  0x00003bbd branch  0x0000340a , 0x00000005 
+ 00016793  0x00003bbe rtn 
+ 00016794  0x00003bc0 jam  0x00000001 , 0x0000478b 
+ 00016795  0x00003bc1 rtn 
+ 00016796  0x00003bc3 jam  0x00000001 , 0x0000478b 
+ 00016797  0x00003bc4 arg  0x00000003 , 0x00000007 
+ 00016798  0x00003bc5 call  0x000043d2 
+ 00016799  0x00003bc6 setarg  0x00000000 
+ 00016800  0x00003bc7 store  0x00000002 , 0x00004707 
+ 00016801  0x00003bc8 jam  0x00000000 , 0x000046a7 
+ 00016802  0x00003bca fetch  0x00000001 , 0x000046e0 
+ 00016803  0x00003bcb sub  0x0000003f , 0x00000005 , 0x0000003e 
+ 00016804  0x00003bcc call  0x00004039 , 0x00000005 
+ 00016805  0x00003bcd ncall  0x0000405d , 0x00000005 
+ 00016806  0x00003bcf fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00016807  0x00003bd0 bbit1  0x00000013 , 0x000041af 
+ 00016808  0x00003bd1 call  0x000041aa 
+ 00016809  0x00003bd2 branch  0x000065d1 
+ 00016810  0x00003bd5 call  0x00002c7a 
+ 00016811  0x00003bd6 add  0x00000013 , 0x000000ae , 0x00000011 
+ 00016812  0x00003bd7 arg  0x0000005b , 0x00000012 
+ 00016813  0x00003bd8 arg  0x00000004 , 0x00000002 
+ 00016814  0x00003bd9 rtn 
+ 00016815  0x00003bdc call  0x00002c7a 
+ 00016816  0x00003bdd add  0x00000013 , 0x000000ae , 0x00000012 
+ 00016817  0x00003bde ifetch  0x00000001 , 0x00000012 
+ 00016818  0x00003bdf store  0x00000001 , 0x0000477b 
+ 00016819  0x00003be0 branch  0x00004435 
+ 00016820  0x00003be4 arg  0x00000002 , 0x00000007 
+ 00016821  0x00003be5 branch  0x000041b9 
+ 00016822  0x00003be7 jam  0x00000002 , 0x000046c6 
+ 00016823  0x00003be8 arg  0x00000001 , 0x00000007 
+ 00016824  0x00003be9 branch  0x000041b9 
+ 00016825  0x00003bed fetch  0x00000001 , 0x000046c5 
+ 00016826  0x00003bee qset1  0x0000003f 
+ 00016827  0x00003bef store  0x00000001 , 0x000046c5 
+ 00016828  0x00003bf0 rtn 
+ 00016829  0x00003bf3 fetch  0x00000001 , 0x000046c5 
+ 00016830  0x00003bf4 qset0  0x0000003f 
+ 00016831  0x00003bf5 store  0x00000001 , 0x000046c5 
+ 00016832  0x00003bf6 rtn 
+ 00016833  0x00003bf8 jam  0x00000000 , 0x000046c5 
+ 00016834  0x00003bf9 rtn 
+ 00016835  0x00003bfc fetch  0x00000002 , 0x0000420a 
+ 00016836  0x00003bfd set0  0x00000000 , 0x0000003f 
+ 00016837  0x00003bfe store  0x00000002 , 0x0000420a 
+ 00016838  0x00003bff setarg  0x00000000 
+ 00016839  0x00003c00 store  0x00000002 , 0x000046ae 
+ 00016840  0x00003c01 call  0x00003f8d 
+ 00016841  0x00003c02 branch  0x000042ca 
+ 00016842  0x00003c05 call  0x000063cb 
+ 00016843  0x00003c06 branch  0x000033dd 
+ 00016844  0x00003c09 fetch  0x00000001 , 0x0000471e 
+ 00016845  0x00003c0a nbranch  0x00004492 , 0x00000034 
+ 00016846  0x00003c0b fetch  0x00000002 , 0x00004682 
+ 00016847  0x00003c0c bbit1  0x0000000c , 0x000042b0 
+ 00016848  0x00003c0d fetch  0x00000004 , 0x000046d3 
+ 00016849  0x00003c0e bbit1  0x00000000 , 0x000041d7 
+ 00016850  0x00003c0f bbit1  0x00000005 , 0x000042b0 
+ 00016851  0x00003c10 bbit1  0x00000003 , 0x00002ead 
+ 00016852  0x00003c11 branch  0x000033a7 
+ 00016853  0x00003c15 branch  0x00003f74 
+ 00016854  0x00003c18 rtn 
+ 00016855  0x00003c1b call  0x000043c0 
+ 00016856  0x00003c1c branch  0x0000659a 
+ 00016857  0x00003c1f bpatch  0x000000e9 , 0x0000401d 
+ 00016858  0x00003c20 call  0x000041e7 
+ 00016859  0x00003c21 fetch  0x00000004 , 0x000046d3 
+ 00016860  0x00003c22 bbit1  0x00000000 , 0x000041d7 
+ 00016861  0x00003c23 bbit1  0x00000003 , 0x00002ead 
+ 00016862  0x00003c24 fetch  0x00000001 , 0x0000471e 
+ 00016863  0x00003c25 nbranch  0x00004492 , 0x00000034 
+ 00016864  0x00003c26 fetch  0x00000002 , 0x00004208 
+ 00016865  0x00003c27 bbit1  0x00000007 , 0x000041f5 
+ 00016866  0x00003c28 bbit1  0x00000000 , 0x000033a9 
+ 00016867  0x00003c29 bbit1  0x00000001 , 0x000041ef 
+ 00016868  0x00003c2a bbit1  0x00000002 , 0x000041f2 
+ 00016869  0x00003c2b bbit1  0x00000003 , 0x000041f2 
+ 00016870  0x00003c2c branch  0x000042b0 
+ 00016871  0x00003c2e setarg  0x00000000 
+ 00016872  0x00003c2f store  0x00000008 , 0x000046b7 
+ 00016873  0x00003c30 istore  0x00000004 , 0x00000005 
+ 00016874  0x00003c31 jam  0x00000000 , 0x000046b4 
+ 00016875  0x00003c32 jam  0x00000000 , 0x000046a7 
+ 00016876  0x00003c33 jam  0x00000000 , 0x000041e2 
+ 00016877  0x00003c34 jam  0x00000000 , 0x00004429 
+ 00016878  0x00003c35 rtn 
+ 00016879  0x00003c38 bbit1  0x00000005 , 0x000041f2 
+ 00016880  0x00003c39 bbit1  0x00000003 , 0x000041f2 
+ 00016881  0x00003c3a branch  0x000042b0 
+ 00016882  0x00003c3c fetch  0x00000002 , 0x00004682 
+ 00016883  0x00003c3d bbit1  0x0000000c , 0x000042b0 
+ 00016884  0x00003c3e branch  0x000033a7 
+ 00016885  0x00003c41 call  0x000041c1 
+ 00016886  0x00003c42 fetch  0x00000002 , 0x00004208 
+ 00016887  0x00003c43 bbit1  0x00000000 , 0x000033a9 
+ 00016888  0x00003c44 branch  0x000033a7 
+ 00016889  0x00003c47 call  0x000043d6 
+ 00016890  0x00003c48 call  0x00004243 
+ 00016891  0x00003c49 call  0x00004246 
+ 00016892  0x00003c4a call  0x00004250 
+ 00016893  0x00003c4b call  0x0000445d 
+ 00016894  0x00003c4d call  0x00004443 
+ 00016895  0x00003c4e call  0x00004333 
+ 00016896  0x00003c4f call  0x000043a5 
+ 00016897  0x00003c50 call  0x000043eb 
+ 00016898  0x00003c51 call  0x00004209 
+ 00016899  0x00003c52 call  0x00004231 
+ 00016900  0x00003c53 call  0x00004234 
+ 00016901  0x00003c54 call  0x00004237 
+ 00016902  0x00003c55 call  0x0000423a 
+ 00016903  0x00003c56 call  0x0000423d 
+ 00016904  0x00003c57 branch  0x00004240 
+ 00016905  0x00003c5c fetch  0x00000001 , 0x00004711 
+ 00016906  0x00003c5d rtn  0x00000034 
+ 00016907  0x00003c5e increase  0xffffffff , 0x0000003f 
+ 00016908  0x00003c5f store  0x00000001 , 0x00004711 
+ 00016909  0x00003c60 nrtn  0x00000034 
+ 00016910  0x00003c61 branch  0x0000420f 
+ 00016911  0x00003c63 fetch  0x00000001 , 0x00004712 
+ 00016912  0x00003c64 rtneq  0x00000000 
+ 00016913  0x00003c65 beq  0x00000005 , 0x00004216 
+ 00016914  0x00003c67 call  0x00004225 
+ 00016915  0x00003c68 jam  0x00000005 , 0x00004712 
+ 00016916  0x00003c69 jam  0x00000005 , 0x00004711 
+ 00016917  0x00003c6a rtn 
+ 00016918  0x00003c6c call  0x0000422c 
+ 00016919  0x00003c6d jam  0x00000004 , 0x00004712 
+ 00016920  0x00003c6e jam  0x00000005 , 0x00004711 
+ 00016921  0x00003c6f rtn 
+ 00016922  0x00003c73 setarg  0x00008006 
+ 00016923  0x00003c74 call  0x00006413 
+ 00016924  0x00003c75 nop  0x000003e8 
+ 00016925  0x00003c76 jam  0x00000000 , 0x00004711 
+ 00016926  0x00003c77 jam  0x00000000 , 0x00004712 
+ 00016927  0x00003c78 branch  0x000040e0 
+ 00016928  0x00003c7b setarg  0x0000a006 
+ 00016929  0x00003c7c call  0x00006413 
+ 00016930  0x00003c7d setarg  0x0000a005 
+ 00016931  0x00003c7e branch  0x00006413 
+ 00016932  0x00003c80 jam  0x00000000 , 0x00004711 
+ 00016933  0x00003c82 fetch  0x00000001 , 0x000046e0 
+ 00016934  0x00003c83 beq  0x00000004 , 0x00004220 
+ 00016935  0x00003c84 setarg  0x00000106 
+ 00016936  0x00003c85 call  0x00006413 
+ 00016937  0x00003c86 setarg  0x0000a105 
+ 00016938  0x00003c87 branch  0x00006413 
+ 00016939  0x00003c8a jam  0x00000000 , 0x00004711 
+ 00016940  0x00003c8c setarg  0x00000906 
+ 00016941  0x00003c8d branch  0x00006413 
+ 00016942  0x00003c8f jam  0x00000005 , 0x00004711 
+ 00016943  0x00003c90 jam  0x00000001 , 0x00004712 
+ 00016944  0x00003c91 rtn 
+ 00016945  0x00003c94 arg  0x00004680 , 0x00000013 
+ 00016946  0x00003c95 arg  0x0000429b , 0x00000012 
+ 00016947  0x00003c96 branch  0x0000336d 
+ 00016948  0x00003c99 arg  0x000046ac , 0x00000013 
+ 00016949  0x00003c9a arg  0x00004264 , 0x00000012 
+ 00016950  0x00003c9b branch  0x00003374 
+ 00016951  0x00003c9e arg  0x000046ae , 0x00000013 
+ 00016952  0x00003c9f arg  0x00004266 , 0x00000012 
+ 00016953  0x00003ca0 branch  0x00003374 
+ 00016954  0x00003ca3 arg  0x000046b0 , 0x00000013 
+ 00016955  0x00003ca4 arg  0x0000426a , 0x00000012 
+ 00016956  0x00003ca5 branch  0x00003374 
+ 00016957  0x00003ca8 arg  0x000046c4 , 0x00000013 
+ 00016958  0x00003ca9 arg  0x00004478 , 0x00000012 
+ 00016959  0x00003caa branch  0x0000336d 
+ 00016960  0x00003caf arg  0x000046c6 , 0x00000013 
+ 00016961  0x00003cb0 arg  0x0000425e , 0x00000012 
+ 00016962  0x00003cb1 branch  0x0000336d 
+ 00016963  0x00003cb4 arg  0x00004704 , 0x00000013 
+ 00016964  0x00003cb5 arg  0x00004249 , 0x00000012 
+ 00016965  0x00003cb6 branch  0x0000336d 
+ 00016966  0x00003cb9 arg  0x00004707 , 0x00000013 
+ 00016967  0x00003cba arg  0x00004249 , 0x00000012 
+ 00016968  0x00003cbb branch  0x00003374 
+ 00016969  0x00003cbe rtn 
+ 00016970  0x00003cc2 fetch  0x00000004 , 0x000046d3 
+ 00016971  0x00003cc3 rtnbit0  0x00000017 
+ 00016972  0x00003cc4 jam  0x0000000a , 0x000046df 
+ 00016973  0x00003cc5 fetch  0x00000001 , 0x000046f4 
+ 00016974  0x00003cc6 store  0x00000001 , 0x00004715 
+ 00016975  0x00003cc7 rtn 
+ 00016976  0x00003ccb arg  0x000046df , 0x00000013 
+ 00016977  0x00003ccc arg  0x00004253 , 0x00000012 
+ 00016978  0x00003ccd branch  0x0000336d 
+ 00016979  0x00003ccf fetch  0x00000001 , 0x000046f4 
+ 00016980  0x00003cd0 store  0x00000001 , 0x00004715 
+ 00016981  0x00003cd1 setarg  0x00000190 
+ 00016982  0x00003cd2 store  0x00000002 , 0x00004716 
+ 00016983  0x00003cd3 store  0x00000002 , 0x00004718 
+ 00016984  0x00003cd4 arg  0x00000000 , 0x00000011 
+ 00016985  0x00003cd5 fetcht  0x00000001 , 0x0000477a 
+ 00016986  0x00003cd6 increase  0x00000001 , 0x00000002 
+ 00016987  0x00003cd7 storet  0x00000001 , 0x00004714 
+ 00016988  0x00003cd8 jam  0x00000001 , 0x00004713 
+ 00016989  0x00003cd9 rtn 
+ 00016990  0x00003cdc fetch  0x00000001 , 0x000046c5 
+ 00016991  0x00003cdd rtnbit1  0x00000002 
+ 00016992  0x00003cde jam  0x00000012 , 0x00000a99 
+ 00016993  0x00003cdf call  0x00007d8f 
+ 00016994  0x00003ce0 arg  0x00000000 , 0x00000007 
+ 00016995  0x00003ce1 branch  0x000041b9 
+ 00016996  0x00003ce5 call  0x000042ca 
+ 00016997  0x00003ce6 branch  0x0000340a 
+ 00016998  0x00003ce9 call  0x000033f6 
+ 00016999  0x00003cea fetch  0x00000001 , 0x0000471e 
+ 00017000  0x00003ceb nbranch  0x00004492 , 0x00000034 
+ 00017001  0x00003cec branch  0x0000340a 
+ 00017002  0x00003cef bmark1  0x00000026 , 0x00007e1d 
+ 00017003  0x00003cf0 branch  0x00004386 
+ 00017004  0x00003cf5 bpatch  0x000000ea , 0x0000401d 
+ 00017005  0x00003cf6 jam  0x00000000 , 0x000046b4 
+ 00017006  0x00003cf7 call  0x00004386 
+ 00017007  0x00003cf8 call  0x000041c1 
+ 00017008  0x00003cf9 branch  0x000042b0 
+ 00017009  0x00003cfe fetch  0x00000006 , 0x000041d0 
+ 00017010  0x00003cff branch  0x000033eb , 0x00000034 
+ 00017011  0x00003d00 call  0x0000427e 
+ 00017012  0x00003d01 jam  0x00000017 , 0x0000016d 
+ 00017013  0x00003d02 fetch  0x00000001 , 0x0000465a 
+ 00017014  0x00003d03 nbranch  0x000033e1 , 0x00000034 
+ 00017015  0x00003d04 jam  0x00000004 , 0x0000016d 
+ 00017016  0x00003d05 branch  0x000033e1 
+ 00017017  0x00003d08 fetch  0x00000002 , 0x000046a8 
+ 00017018  0x00003d09 store  0x00000002 , 0x000046ae 
+ 00017019  0x00003d0a call  0x0000427e 
+ 00017020  0x00003d0b call  0x00003418 
+ 00017021  0x00003d0c branch  0x00007df4 
+ 00017022  0x00003d0f setarg  0x000000c8 
+ 00017023  0x00003d10 store  0x00000002 , 0x00004716 
+ 00017024  0x00003d11 store  0x00000002 , 0x00004718 
+ 00017025  0x00003d12 branch  0x00004285 
+ 00017026  0x00003d15 setarg  0x000003e8 
+ 00017027  0x00003d16 store  0x00000002 , 0x00004716 
+ 00017028  0x00003d17 store  0x00000002 , 0x00004718 
+ 00017029  0x00003d19 fetch  0x00000001 , 0x00004720 
+ 00017030  0x00003d1a beq  0x00000001 , 0x0000428a 
+ 00017031  0x00003d1b beq  0x00000002 , 0x0000428c 
+ 00017032  0x00003d1c beq  0x00000003 , 0x0000428e 
+ 00017033  0x00003d1d rtn 
+ 00017034  0x00003d1f fetch  0x00000001 , 0x000046f0 
+ 00017035  0x00003d20 branch  0x0000428f 
+ 00017036  0x00003d22 fetch  0x00000001 , 0x000046f1 
+ 00017037  0x00003d23 branch  0x0000428f 
+ 00017038  0x00003d25 fetch  0x00000001 , 0x000046f2 
+ 00017039  0x00003d27 store  0x00000001 , 0x00000aa2 
+ 00017040  0x00003d28 call  0x00004482 
+ 00017041  0x00003d29 fetch  0x00000001 , 0x00000aa2 
+ 00017042  0x00003d2a store  0x00000001 , 0x00004715 
+ 00017043  0x00003d2b arg  0x00000000 , 0x00000011 
+ 00017044  0x00003d2c jam  0x00000001 , 0x00004713 
+ 00017045  0x00003d2d branch  0x00007d1e 
+ 00017046  0x00003d30 arg  0x00000000 , 0x00000011 
+ 00017047  0x00003d31 branch  0x00007d19 
+ 00017048  0x00003d33 arg  0x00000000 , 0x00000011 
+ 00017049  0x00003d34 branch  0x00007d14 
+ 00017050  0x00003d37 branch  0x000041c1 
+ 00017051  0x00003d3a jam  0x00000001 , 0x000041e2 
+ 00017052  0x00003d3b call  0x00003416 
+ 00017053  0x00003d3c call  0x00003412 
+ 00017054  0x00003d3d setarg  0x00000000 
+ 00017055  0x00003d3e store  0x00000002 , 0x0000467e 
+ 00017056  0x00003d3f store  0x00000001 , 0x00004680 
+ 00017057  0x00003d40 branch  0x0000340e 
+ 00017058  0x00003d43 call  0x0000435f 
+ 00017059  0x00003d44 fetch  0x00000001 , 0x00004720 
+ 00017060  0x00003d45 fetcht  0x00000001 , 0x00004703 
+ 00017061  0x00003d46 isub  0x00000002 , 0x0000003e 
+ 00017062  0x00003d47 branch  0x000042ab , 0x00000005 
+ 00017063  0x00003d48 fetch  0x00000001 , 0x00004210 
+ 00017064  0x00003d49 beq  0x00000033 , 0x00004271 
+ 00017065  0x00003d4a beq  0x00000034 , 0x00004279 
+ 00017066  0x00003d4b branch  0x000042b0 
+ 00017067  0x00003d4d call  0x00003d57 
+ 00017068  0x00003d4e rtnmark1  0x00000026 
+ 00017069  0x00003d4f fetch  0x00000001 , 0x0000471e 
+ 00017070  0x00003d50 nbranch  0x00004492 , 0x00000034 
+ 00017071  0x00003d51 rtn 
+ 00017072  0x00003d54 bpatch  0x000000eb , 0x0000401d 
+ 00017073  0x00003d55 fetch  0x00000002 , 0x00004682 
+ 00017074  0x00003d56 bbit1  0x0000000b , 0x000042b7 
+ 00017075  0x00003d57 fetch  0x00000004 , 0x000046d3 
+ 00017076  0x00003d58 bbit0  0x00000018 , 0x000042b7 
+ 00017077  0x00003d59 random  0x0000003f 
+ 00017078  0x00003d5a store  0x00000001 , 0x000044a1 
+ 00017079  0x00003d5c call  0x00003418 
+ 00017080  0x00003d5d fetch  0x00000002 , 0x00004687 
+ 00017081  0x00003d5e store  0x00000002 , 0x000046ac 
+ 00017082  0x00003d5f jam  0x00000006 , 0x0000016d 
+ 00017083  0x00003d60 setarg  0x00000000 
+ 00017084  0x00003d61 store  0x00000002 , 0x000046b0 
+ 00017085  0x00003d62 store  0x00000002 , 0x000046ae 
+ 00017086  0x00003d63 arg  0x00000007 , 0x00000007 
+ 00017087  0x00003d64 call  0x000043ce 
+ 00017088  0x00003d65 call  0x000043ca 
+ 00017089  0x00003d66 fetch  0x00000001 , 0x00004092 
+ 00017090  0x00003d67 isolate1  0x00000001 , 0x0000003f 
+ 00017091  0x00003d68 call  0x00007df4 , 0x00000001 
+ 00017092  0x00003d69 fetch  0x00000001 , 0x00004092 
+ 00017093  0x00003d6a isolate1  0x00000000 , 0x0000003f 
+ 00017094  0x00003d6b call  0x00007ddd , 0x00000001 
+ 00017095  0x00003d6c fetch  0x00000004 , 0x000046d3 
+ 00017096  0x00003d6d bbit1  0x0000001c , 0x0000422e 
+ 00017097  0x00003d6e branch  0x00004282 
+ 00017098  0x00003d71 bpatch  0x000000ec , 0x0000401d 
+ 00017099  0x00003d72 fetch  0x00000001 , 0x00004092 
+ 00017100  0x00003d73 isolate1  0x00000001 , 0x0000003f 
+ 00017101  0x00003d74 call  0x000042d4 , 0x00000001 
+ 00017102  0x00003d75 fetch  0x00000001 , 0x00004092 
+ 00017103  0x00003d76 isolate1  0x00000000 , 0x0000003f 
+ 00017104  0x00003d77 call  0x000042d7 , 0x00000001 
+ 00017105  0x00003d78 fetch  0x00000004 , 0x000046d3 
+ 00017106  0x00003d79 bbit1  0x0000001c , 0x0000421a 
+ 00017107  0x00003d7a branch  0x00004482 
+ 00017108  0x00003d7c setarg  0x00000000 
+ 00017109  0x00003d7d store  0x00000002 , 0x000046ae 
+ 00017110  0x00003d7e branch  0x00007dfa 
+ 00017111  0x00003d80 setarg  0x00000000 
+ 00017112  0x00003d81 store  0x00000002 , 0x000046ac 
+ 00017113  0x00003d82 branch  0x00007de2 
+ 00017114  0x00003d89 fetch  0x00000004 , 0x000046d3 
+ 00017115  0x00003d8a rtnbit0  0x00000007 
+ 00017116  0x00003d8b arg  0x00000007 , 0x00000007 
+ 00017117  0x00003d8c call  0x000043d2 
+ 00017118  0x00003d8d call  0x000042e8 
+ 00017119  0x00003d8f call  0x000042fb 
+ 00017120  0x00003d90 fetch  0x00000004 , 0x000046d3 
+ 00017121  0x00003d91 bbit1  0x00000013 , 0x00004435 
+ 00017122  0x00003d92 bbit1  0x00000014 , 0x000042e4 
+ 00017123  0x00003d93 rtn 
+ 00017124  0x00003d95 arg  0x00000058 , 0x00000002 
+ 00017125  0x00003d96 arg  0x00004720 , 0x00000011 
+ 00017126  0x00003d97 arg  0x00000000 , 0x00000012 
+ 00017127  0x00003d98 branch  0x000065d1 
+ 00017128  0x00003d9b fetch  0x00000001 , 0x00000185 
+ 00017129  0x00003d9c beq  0x00000034 , 0x000042ec 
+ 00017130  0x00003d9d beq  0x00000033 , 0x000042ef 
+ 00017131  0x00003d9e rtn 
+ 00017132  0x00003da0 store  0x00000001 , 0x000046c7 
+ 00017133  0x00003da1 fetch  0x00000006 , 0x0000044f 
+ 00017134  0x00003da2 branch  0x000042f1 
+ 00017135  0x00003da4 store  0x00000001 , 0x000046c7 
+ 00017136  0x00003da5 fetch  0x00000006 , 0x00000040 
+ 00017137  0x00003da7 store  0x00000006 , 0x000046c8 
+ 00017138  0x00003da8 fetch  0x00000007 , 0x000046c7 
+ 00017139  0x00003da9 arg  0x00004721 , 0x00000006 
+ 00017140  0x00003daa arg  0x00000003 , 0x00000039 
+ 00017141  0x00003dac ifetcht  0x00000007 , 0x00000006 
+ 00017142  0x00003dad isub  0x00000002 , 0x0000003e 
+ 00017143  0x00003dae branch  0x00004310 , 0x00000005 
+ 00017144  0x00003daf increase  0x00000016 , 0x00000006 
+ 00017145  0x00003db0 loop  0x000042f5 
+ 00017146  0x00003db1 rtn 
+ 00017147  0x00003db3 arg  0x00004721 , 0x00000011 
+ 00017148  0x00003db4 fetch  0x00000001 , 0x00004720 
+ 00017149  0x00003db5 increase  0xffffffff , 0x0000003f 
+ 00017150  0x00003db6 mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017151  0x00003db7 iadd  0x00000011 , 0x00000011 
+ 00017152  0x00003db8 fetch  0x00000001 , 0x00000185 
+ 00017153  0x00003db9 istore  0x00000001 , 0x00000011 
+ 00017154  0x00003dba beq  0x00000034 , 0x00004305 
+ 00017155  0x00003dbb beq  0x00000033 , 0x0000430c 
+ 00017156  0x00003dbc rtn 
+ 00017157  0x00003dbf fetch  0x00000006 , 0x0000044f 
+ 00017158  0x00003dc0 istore  0x00000006 , 0x00000005 
+ 00017159  0x00003dc1 arg  0x00004419 , 0x00000006 
+ 00017160  0x00003dc2 call  0x00007ebf 
+ 00017161  0x00003dc3 fetch  0x00000006 , 0x000044a0 
+ 00017162  0x00003dc4 istore  0x00000006 , 0x00000005 
+ 00017163  0x00003dc5 rtn 
+ 00017164  0x00003dc7 fetch  0x00000006 , 0x00000040 
+ 00017165  0x00003dc8 istore  0x00000006 , 0x00000005 
+ 00017166  0x00003dc9 arg  0x000041be , 0x00000006 
+ 00017167  0x00003dca branch  0x00007ebf 
+ 00017168  0x00003dcd increase  0xfffffffa , 0x00000006 
+ 00017169  0x00003dce copy  0x00000006 , 0x00000005 
+ 00017170  0x00003dcf fetcht  0x00000006 , 0x000046c8 
+ 00017171  0x00003dd0 increase  0x00000003 , 0x00000002 
+ 00017172  0x00003dd1 istoret  0x00000006 , 0x00000005 
+ 00017173  0x00003dd2 rtn 
+ 00017174  0x00003dd7 arg  0x00000058 , 0x00000002 
+ 00017175  0x00003dd8 arg  0x00004720 , 0x00000011 
+ 00017176  0x00003dd9 arg  0x00000000 , 0x00000012 
+ 00017177  0x00003dda call  0x000065df 
+ 00017178  0x00003ddc arg  0x00004721 , 0x00000011 
+ 00017179  0x00003ddd fetch  0x00000001 , 0x00004720 
+ 00017180  0x00003dde fetcht  0x00000001 , 0x00004703 
+ 00017181  0x00003ddf isub  0x00000002 , 0x0000003e 
+ 00017182  0x00003de0 rtn  0x00000005 
+ 00017183  0x00003de1 increase  0xffffffff , 0x0000003f 
+ 00017184  0x00003de2 mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017185  0x00003de3 iadd  0x00000011 , 0x00000011 
+ 00017186  0x00003de4 ifetch  0x00000001 , 0x00000011 
+ 00017187  0x00003de5 store  0x00000001 , 0x00004210 
+ 00017188  0x00003de6 beq  0x00000033 , 0x00004327 
+ 00017189  0x00003de7 beq  0x00000034 , 0x0000432c 
+ 00017190  0x00003de8 rtn 
+ 00017191  0x00003deb ifetch  0x00000006 , 0x00000006 
+ 00017192  0x00003ded store  0x00000006 , 0x000041d0 
+ 00017193  0x00003dee arg  0x000041be , 0x00000005 
+ 00017194  0x00003def call  0x00007ebf 
+ 00017195  0x00003df0 branch  0x000067d7 
+ 00017196  0x00003df3 ifetch  0x00000006 , 0x00000006 
+ 00017197  0x00003df5 store  0x00000006 , 0x000041d0 
+ 00017198  0x00003df6 arg  0x00004419 , 0x00000005 
+ 00017199  0x00003df7 call  0x00007ebf 
+ 00017200  0x00003df8 ifetch  0x00000006 , 0x00000006 
+ 00017201  0x00003df9 store  0x00000006 , 0x000044a0 
+ 00017202  0x00003dfa rtn 
+ 00017203  0x00003dfe fetch  0x00000001 , 0x000046f5 
+ 00017204  0x00003dff bbit1  0x00000005 , 0x00004349 
+ 00017205  0x00003e00 bbit1  0x00000006 , 0x00004359 
+ 00017206  0x00003e01 branch  0x00004337 
+ 00017207  0x00003e04 call  0x00004083 
+ 00017208  0x00003e05 beq  0x00000006 , 0x0000433e 
+ 00017209  0x00003e07 jam  0x0000001e , 0x000046d8 
+ 00017210  0x00003e08 fetch  0x00000001 , 0x000046d9 
+ 00017211  0x00003e09 rtneq  0x00000001 
+ 00017212  0x00003e0a jam  0x00000001 , 0x000046d9 
+ 00017213  0x00003e0b rtn 
+ 00017214  0x00003e0e call  0x00004343 
+ 00017215  0x00003e0f fetch  0x00000001 , 0x000046d9 
+ 00017216  0x00003e10 rtneq  0x00000000 
+ 00017217  0x00003e11 jam  0x00000000 , 0x000046d9 
+ 00017218  0x00003e12 branch  0x000043c0 
+ 00017219  0x00003e15 fetch  0x00000001 , 0x000046d8 
+ 00017220  0x00003e16 rtn  0x00000034 
+ 00017221  0x00003e17 pincrease  0xffffffff 
+ 00017222  0x00003e18 store  0x00000001 , 0x000046d8 
+ 00017223  0x00003e19 nrtn  0x00000034 
+ 00017224  0x00003e1a branch  0x00004370 
+ 00017225  0x00003e1d fetch  0x00000001 , 0x000046ed 
+ 00017226  0x00003e1e rtneq  0x000000ff 
+ 00017227  0x00003e1f fetcht  0x00000001 , 0x000046ed 
+ 00017228  0x00003e20 call  0x0000681d 
+ 00017229  0x00003e21 branch  0x00004354 , 0x00000001 
+ 00017230  0x00003e23 fetch  0x00000001 , 0x000046d9 
+ 00017231  0x00003e24 rtneq  0x00000001 
+ 00017232  0x00003e25 jam  0x00000001 , 0x000046d9 
+ 00017233  0x00003e26 fetch  0x00000004 , 0x000046d3 
+ 00017234  0x00003e27 rtnbit1  0x00000006 
+ 00017235  0x00003e28 branch  0x00004370 
+ 00017236  0x00003e2b fetch  0x00000001 , 0x000046d9 
+ 00017237  0x00003e2c rtneq  0x00000000 
+ 00017238  0x00003e2d jam  0x00000000 , 0x000046d9 
+ 00017239  0x00003e2e arg  0x00000006 , 0x00000007 
+ 00017240  0x00003e2f branch  0x000043d2 
+ 00017241  0x00003e34 fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017242  0x00003e35 rtnbit0  0x00000006 
+ 00017243  0x00003e36 fetch  0x00000001 , 0x00004720 
+ 00017244  0x00003e37 beq  0x00000001 , 0x00004369 
+ 00017245  0x00003e38 beq  0x00000002 , 0x0000436c 
+ 00017246  0x00003e39 rtn 
+ 00017247  0x00003e3b fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017248  0x00003e3c rtnbit0  0x00000006 
+ 00017249  0x00003e3d fetcht  0x00000001 , 0x000046ed 
+ 00017250  0x00003e3e call  0x0000681d 
+ 00017251  0x00003e3f branch  0x00004366 , 0x00000001 
+ 00017252  0x00003e41 jam  0x00000001 , 0x00004720 
+ 00017253  0x00003e42 rtn 
+ 00017254  0x00003e44 fetch  0x00000001 , 0x00004703 
+ 00017255  0x00003e45 store  0x00000001 , 0x00004720 
+ 00017256  0x00003e46 rtn 
+ 00017257  0x00003e48 fetcht  0x00000001 , 0x000046ed 
+ 00017258  0x00003e49 nbranch  0x00004370 , 0x00000001 
+ 00017259  0x00003e4a rtn 
+ 00017260  0x00003e4c fetcht  0x00000001 , 0x000046ed 
+ 00017261  0x00003e4d call  0x0000681d 
+ 00017262  0x00003e4e branch  0x00004354 , 0x00000001 
+ 00017263  0x00003e4f rtn 
+ 00017264  0x00003e55 fetcht  0x00000001 , 0x00004720 
+ 00017265  0x00003e56 increase  0x00000001 , 0x00000002 
+ 00017266  0x00003e57 fetch  0x00000001 , 0x000046d2 
+ 00017267  0x00003e58 isub  0x00000002 , 0x0000003e 
+ 00017268  0x00003e59 ncall  0x000043cc , 0x00000002 
+ 00017269  0x00003e5a storet  0x00000001 , 0x00004720 
+ 00017270  0x00003e5b jam  0x00000000 , 0x000041bd 
+ 00017271  0x00003e5c call  0x0000437a 
+ 00017272  0x00003e5e call  0x000043c0 
+ 00017273  0x00003e60 branch  0x0000437e 
+ 00017274  0x00003e63 arg  0x00000001 , 0x00000002 
+ 00017275  0x00003e64 arg  0x00004720 , 0x00000011 
+ 00017276  0x00003e65 arg  0x00000000 , 0x00000012 
+ 00017277  0x00003e66 branch  0x00006606 
+ 00017278  0x00003e69 call  0x00004381 
+ 00017279  0x00003e6a call  0x000043c2 
+ 00017280  0x00003e6b branch  0x000041d7 
+ 00017281  0x00003e6d fetch  0x00000002 , 0x00004682 
+ 00017282  0x00003e6e bbit1  0x00000007 , 0x00004392 
+ 00017283  0x00003e6f bbit1  0x00000009 , 0x00003402 
+ 00017284  0x00003e70 bbit1  0x00000000 , 0x000033e9 
+ 00017285  0x00003e71 branch  0x000042ca 
+ 00017286  0x00003e74 bpatch  0x000000ed , 0x0000401d 
+ 00017287  0x00003e75 setarg  0x00000000 
+ 00017288  0x00003e76 store  0x00000002 , 0x000046b0 
+ 00017289  0x00003e77 fetch  0x00000002 , 0x00004682 
+ 00017290  0x00003e78 bbit1  0x00000009 , 0x00003402 
+ 00017291  0x00003e79 fetch  0x00000002 , 0x00004682 
+ 00017292  0x00003e7a bbit1  0x00000000 , 0x000033e9 
+ 00017293  0x00003e7b rtn 
+ 00017294  0x00003e7e setarg  0x00000001 
+ 00017295  0x00003e7f store  0x00000006 , 0x00000040 
+ 00017296  0x00003e80 jam  0x00000033 , 0x00000185 
+ 00017297  0x00003e81 branch  0x000042df 
+ 00017298  0x00003e85 call  0x000043c4 
+ 00017299  0x00003e86 branch  0x00007e2f 
+ 00017300  0x00003e89 fetch  0x00000001 , 0x000046ec 
+ 00017301  0x00003e8a rtneq  0x000000ff 
+ 00017302  0x00003e8b fetcht  0x00000001 , 0x000046ec 
+ 00017303  0x00003e8c call  0x0000681d 
+ 00017304  0x00003e8d branch  0x0000439f , 0x00000001 
+ 00017305  0x00003e8f fetch  0x00000001 , 0x00004685 
+ 00017306  0x00003e90 store  0x00000001 , 0x000046da 
+ 00017307  0x00003e91 fetch  0x00000001 , 0x000046db 
+ 00017308  0x00003e92 rtneq  0x00000001 
+ 00017309  0x00003e93 jam  0x00000001 , 0x000046db 
+ 00017310  0x00003e94 branch  0x000043ca 
+ 00017311  0x00003e96 call  0x000043b5 
+ 00017312  0x00003e97 fetch  0x00000001 , 0x000046db 
+ 00017313  0x00003e98 rtneq  0x00000000 
+ 00017314  0x00003e99 jam  0x00000000 , 0x000046db 
+ 00017315  0x00003e9a call  0x00007e2f 
+ 00017316  0x00003e9b branch  0x000043c8 
+ 00017317  0x00003e9f fetch  0x00000001 , 0x000046f5 
+ 00017318  0x00003ea0 bbit1  0x00000004 , 0x00004394 
+ 00017319  0x00003ea2 call  0x00004083 
+ 00017320  0x00003ea3 beq  0x00000007 , 0x000043af 
+ 00017321  0x00003ea5 fetch  0x00000001 , 0x00004685 
+ 00017322  0x00003ea6 store  0x00000001 , 0x000046da 
+ 00017323  0x00003ea7 fetch  0x00000001 , 0x000046db 
+ 00017324  0x00003ea8 rtneq  0x00000001 
+ 00017325  0x00003ea9 jam  0x00000001 , 0x000046db 
+ 00017326  0x00003eaa branch  0x000043ca 
+ 00017327  0x00003eae call  0x000043b5 
+ 00017328  0x00003eaf fetch  0x00000001 , 0x000046db 
+ 00017329  0x00003eb0 rtneq  0x00000000 
+ 00017330  0x00003eb1 jam  0x00000000 , 0x000046db 
+ 00017331  0x00003eb2 call  0x00007e2f 
+ 00017332  0x00003eb3 branch  0x000043c8 
+ 00017333  0x00003eb6 arg  0x000046da , 0x00000013 
+ 00017334  0x00003eb7 arg  0x000043b8 , 0x00000012 
+ 00017335  0x00003eb8 branch  0x0000336d 
+ 00017336  0x00003ebb arg  0x00000006 , 0x00000007 
+ 00017337  0x00003ebc call  0x000043ce 
+ 00017338  0x00003ebd call  0x00003357 
+ 00017339  0x00003ebe branch  0x0000426c 
+ 00017340  0x00003ec2 arg  0x00000001 , 0x00000007 
+ 00017341  0x00003ec3 branch  0x000043ce 
+ 00017342  0x00003ec5 arg  0x00000001 , 0x00000007 
+ 00017343  0x00003ec6 branch  0x000043d2 
+ 00017344  0x00003ec8 arg  0x00000000 , 0x00000007 
+ 00017345  0x00003ec9 branch  0x000043ce 
+ 00017346  0x00003ecb arg  0x00000000 , 0x00000007 
+ 00017347  0x00003ecc branch  0x000043d2 
+ 00017348  0x00003ece arg  0x00000002 , 0x00000007 
+ 00017349  0x00003ecf branch  0x000043ce 
+ 00017350  0x00003ed1 arg  0x00000002 , 0x00000007 
+ 00017351  0x00003ed2 branch  0x000043d2 
+ 00017352  0x00003ed4 arg  0x00000005 , 0x00000007 
+ 00017353  0x00003ed5 branch  0x000043ce 
+ 00017354  0x00003ed7 arg  0x00000005 , 0x00000007 
+ 00017355  0x00003ed8 branch  0x000043d2 
+ 00017356  0x00003edd arg  0x00000001 , 0x00000002 
+ 00017357  0x00003ede rtn 
+ 00017358  0x00003ee1 fetch  0x00000004 , 0x000046d3 
+ 00017359  0x00003ee2 qset1  0x0000003f 
+ 00017360  0x00003ee3 store  0x00000004 , 0x000046d3 
+ 00017361  0x00003ee4 rtn 
+ 00017362  0x00003ee7 fetch  0x00000004 , 0x000046d3 
+ 00017363  0x00003ee8 qset0  0x0000003f 
+ 00017364  0x00003ee9 store  0x00000004 , 0x000046d3 
+ 00017365  0x00003eea rtn 
+ 00017366  0x00003eed fetch  0x00000004 , 0x000046d3 
+ 00017367  0x00003eee rtnbit0  0x0000001a 
+ 00017368  0x00003eef fetch  0x00000001 , 0x000046ce 
+ 00017369  0x00003ef0 increase  0x00000001 , 0x0000003f 
+ 00017370  0x00003ef1 store  0x00000001 , 0x000046ce 
+ 00017371  0x00003ef2 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00017372  0x00003ef3 rtn  0x00000002 
+ 00017373  0x00003ef4 jam  0x00000000 , 0x000046ce 
+ 00017374  0x00003ef5 call  0x000068eb 
+ 00017375  0x00003ef6 call  0x00006908 
+ 00017376  0x00003ef7 store  0x00000002 , 0x0000470f 
+ 00017377  0x00003ef8 arg  0x00004709 , 0x00000011 
+ 00017378  0x00003ef9 call  0x00006930 
+ 00017379  0x00003efa fetch  0x00000001 , 0x00004231 
+ 00017380  0x00003efb bbit1  0x00000001 , 0x000044a0 
+ 00017381  0x00003efc bbit0  0x00000000 , 0x000043e9 
+ 00017382  0x00003efd branch  0x000043e7 
+ 00017383  0x00003eff arg  0x00000004 , 0x00000007 
+ 00017384  0x00003f00 branch  0x000043ce 
+ 00017385  0x00003f02 arg  0x00000004 , 0x00000007 
+ 00017386  0x00003f03 branch  0x000043d2 
+ 00017387  0x00003f06 fetch  0x00000004 , 0x000046d3 
+ 00017388  0x00003f07 rtnbit0  0x00000004 
+ 00017389  0x00003f08 fetch  0x00000001 , 0x000046ef 
+ 00017390  0x00003f09 store  0x00000001 , 0x00004715 
+ 00017391  0x00003f0a fetch  0x00000001 , 0x000046cf 
+ 00017392  0x00003f0b pincrease  0x00000001 
+ 00017393  0x00003f0c store  0x00000001 , 0x000046cf 
+ 00017394  0x00003f0d sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00017395  0x00003f0e ncall  0x000043f9 , 0x00000002 
+ 00017396  0x00003f0f beq  0x00000002 , 0x000043fb 
+ 00017397  0x00003f10 beq  0x00000004 , 0x000043fe 
+ 00017398  0x00003f11 beq  0x00000006 , 0x000043fb 
+ 00017399  0x00003f12 beq  0x00000008 , 0x000043fe 
+ 00017400  0x00003f13 rtn 
+ 00017401  0x00003f15 jam  0x00000001 , 0x000046cf 
+ 00017402  0x00003f16 branch  0x000043fe 
+ 00017403  0x00003f18 arg  0x00000000 , 0x00000011 
+ 00017404  0x00003f19 jam  0x00000002 , 0x00004713 
+ 00017405  0x00003f1a branch  0x00007d14 
+ 00017406  0x00003f1c arg  0x00000000 , 0x00000011 
+ 00017407  0x00003f1d jam  0x00000002 , 0x00004713 
+ 00017408  0x00003f1e branch  0x00007d19 
+ 00017409  0x00003f21 call  0x00003f97 
+ 00017410  0x00003f22 nrtn  0x00000028 
+ 00017411  0x00003f23 arg  0x00000007 , 0x00000011 
+ 00017412  0x00003f24 arg  0x0000469a , 0x00000012 
+ 00017413  0x00003f25 rtn 
+ 00017414  0x00003f28 fetch  0x00000001 , 0x0000478b 
+ 00017415  0x00003f29 rtn  0x00000034 
+ 00017416  0x00003f2b fetcht  0x00000001 , 0x000046e7 
+ 00017417  0x00003f2c call  0x0000681d 
+ 00017418  0x00003f2d call  0x00004410 , 0x00000001 
+ 00017419  0x00003f2e fetch  0x00000001 , 0x00004704 
+ 00017420  0x00003f2f nrtn  0x00000034 
+ 00017421  0x00003f30 call  0x00004083 
+ 00017422  0x00003f31 nrtn  0x00000034 
+ 00017423  0x00003f32 branch  0x00002d83 
+ 00017424  0x00003f35 fetch  0x00000001 , 0x000046e7 
+ 00017425  0x00003f36 rtneq  0x000000ff 
+ 00017426  0x00003f37 jam  0x0000000a , 0x00004704 
+ 00017427  0x00003f38 rtn 
+ 00017428  0x00003f3c call  0x00004423 
+ 00017429  0x00003f3d fetch  0x00000002 , 0x00004778 
+ 00017430  0x00003f3e arg  0x0000aa55 , 0x00000002 
+ 00017431  0x00003f3f isub  0x00000002 , 0x0000003e 
+ 00017432  0x00003f40 branch  0x0000442b , 0x00000005 
+ 00017433  0x00003f41 storet  0x00000002 , 0x00004778 
+ 00017434  0x00003f42 call  0x0000441c 
+ 00017435  0x00003f43 branch  0x00004435 
+ 00017436  0x00003f45 fetch  0x00000006 , 0x000044a0 
+ 00017437  0x00003f46 store  0x00000006 , 0x00004738 
+ 00017438  0x00003f47 add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017439  0x00003f48 store  0x00000006 , 0x00004755 
+ 00017440  0x00003f49 add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017441  0x00003f4a store  0x00000006 , 0x00004772 
+ 00017442  0x00003f4b rtn 
+ 00017443  0x00003f4f setarg  0x00004778 
+ 00017444  0x00003f50 arg  0x00004720 , 0x00000002 
+ 00017445  0x00003f51 isub  0x00000002 , 0x00000002 
+ 00017446  0x00003f52 fetch  0x00000003 , 0x00004700 
+ 00017447  0x00003f53 iadd  0x00000002 , 0x0000003f 
+ 00017448  0x00003f54 arg  0x00000002 , 0x00000002 
+ 00017449  0x00003f55 arg  0x00004778 , 0x00000011 
+ 00017450  0x00003f56 branch  0x00006562 
+ 00017451  0x00003f5a setarg  0x0000477f 
+ 00017452  0x00003f5b arg  0x00004720 , 0x00000002 
+ 00017453  0x00003f5c isub  0x00000002 , 0x00000002 
+ 00017454  0x00003f5d fetch  0x00000003 , 0x00004700 
+ 00017455  0x00003f5e arg  0x00004720 , 0x00000011 
+ 00017456  0x00003f5f call  0x00006562 
+ 00017457  0x00003f60 call  0x0000431a 
+ 00017458  0x00003f61 fetch  0x00000004 , 0x0000477b 
+ 00017459  0x00003f62 call  0x00002c7a 
+ 00017460  0x00003f63 branch  0x0000322c 
+ 00017461  0x00003f66 setarg  0x0000477f 
+ 00017462  0x00003f67 arg  0x00004720 , 0x00000002 
+ 00017463  0x00003f68 isub  0x00000002 , 0x00000002 
+ 00017464  0x00003f69 arg  0x00004720 , 0x00000011 
+ 00017465  0x00003f6a fetch  0x00000003 , 0x00004700 
+ 00017466  0x00003f6b branch  0x00006514 
+ 00017467  0x00003f6e arg  0x00000001 , 0x00000002 
+ 00017468  0x00003f6f arg  0x0000477a , 0x00000011 
+ 00017469  0x00003f70 arg  0x0000005a , 0x00000012 
+ 00017470  0x00003f71 branch  0x000065d1 
+ 00017471  0x00003f74 arg  0x00000001 , 0x00000002 
+ 00017472  0x00003f75 arg  0x0000477a , 0x00000011 
+ 00017473  0x00003f76 arg  0x0000005a , 0x00000012 
+ 00017474  0x00003f77 branch  0x000065df 
+ 00017475  0x00003f7a rtnmark1  0x00000026 
+ 00017476  0x00003f7b fetch  0x00000004 , 0x000046d3 
+ 00017477  0x00003f7c rtnbit0  0x00000016 
+ 00017478  0x00003f7d fetch  0x00000001 , 0x00004705 
+ 00017479  0x00003f7e pincrease  0x00000001 
+ 00017480  0x00003f7f and  0x0000003f , 0x00000007 , 0x0000003f 
+ 00017481  0x00003f80 store  0x00000001 , 0x00004705 
+ 00017482  0x00003f81 rtnne  0x00000007 
+ 00017483  0x00003f82 fetch  0x00000002 , 0x00004682 
+ 00017484  0x00003f83 bbit1  0x00000000 , 0x0000444f 
+ 00017485  0x00003f84 bbit1  0x00000009 , 0x0000444f 
+ 00017486  0x00003f85 rtn 
+ 00017487  0x00003f8b bpatch  0x000000ee , 0x0000401d 
+ 00017488  0x00003f8c fetch  0x00000001 , 0x00004706 
+ 00017489  0x00003f8d nrtn  0x00000034 
+ 00017490  0x00003f8e fetch  0x00000004 , 0x000046d3 
+ 00017491  0x00003f8f rtnbit0  0x00000008 
+ 00017492  0x00003f90 fetch  0x00000001 , 0x000046a5 
+ 00017493  0x00003f91 call  0x000063fb 
+ 00017494  0x00003f92 store  0x00000001 , 0x000046a6 
+ 00017495  0x00003f93 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017496  0x00003f94 branch  0x0000445b , 0x00000002 
+ 00017497  0x00003f95 jam  0x00000000 , 0x00004706 
+ 00017498  0x00003f96 rtn 
+ 00017499  0x00003f99 jam  0x0000001e , 0x00004706 
+ 00017500  0x00003f9a rtn 
+ 00017501  0x00003f9c arg  0x00004706 , 0x00000013 
+ 00017502  0x00003f9d arg  0x00004460 , 0x00000012 
+ 00017503  0x00003f9e branch  0x0000336d 
+ 00017504  0x00003fa1 fetch  0x00000001 , 0x000046a5 
+ 00017505  0x00003fa2 call  0x00006414 
+ 00017506  0x00003fa3 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017507  0x00003fa4 nrtn  0x00000002 
+ 00017508  0x00003fa5 fetch  0x00000004 , 0x000046d3 
+ 00017509  0x00003fa6 rtnbit0  0x00000008 
+ 00017510  0x00003fa7 arg  0x00000008 , 0x00000007 
+ 00017511  0x00003fa8 call  0x000043d2 
+ 00017512  0x00003fa9 jam  0x00000000 , 0x00004172 
+ 00017513  0x00003faa jam  0x0000001e , 0x000046c4 
+ 00017514  0x00003fab call  0x00004482 
+ 00017515  0x00003fac fetch  0x00000004 , 0x000046d3 
+ 00017516  0x00003fad bbit1  0x00000015 , 0x00004471 
+ 00017517  0x00003faf fetch  0x00000001 , 0x00004720 
+ 00017518  0x00003fb0 beq  0x00000001 , 0x00004489 
+ 00017519  0x00003fb1 beq  0x00000002 , 0x00004476 
+ 00017520  0x00003fb2 rtn 
+ 00017521  0x00003fb4 fetch  0x00000001 , 0x00004720 
+ 00017522  0x00003fb5 beq  0x00000001 , 0x00004489 
+ 00017523  0x00003fb6 beq  0x00000002 , 0x0000448c 
+ 00017524  0x00003fb7 beq  0x00000003 , 0x0000448f 
+ 00017525  0x00003fb8 rtn 
+ 00017526  0x00003fbb fetch  0x00000001 , 0x000046f0 
+ 00017527  0x00003fbc branch  0x0000428f 
+ 00017528  0x00003fc1 jam  0x00000020 , 0x00004172 
+ 00017529  0x00003fc2 branch  0x00004482 
+ 00017530  0x00003fc7 fetch  0x00000001 , 0x000046f0 
+ 00017531  0x00003fc8 rtneq  0x000000ff 
+ 00017532  0x00003fc9 store  0x00000001 , 0x00004715 
+ 00017533  0x00003fca branch  0x00004296 
+ 00017534  0x00003fcd fetch  0x00000001 , 0x000046f1 
+ 00017535  0x00003fce rtneq  0x000000ff 
+ 00017536  0x00003fcf store  0x00000001 , 0x00004715 
+ 00017537  0x00003fd0 branch  0x00004296 
+ 00017538  0x00003fd3 call  0x00004296 
+ 00017539  0x00003fd4 call  0x0000447a 
+ 00017540  0x00003fd5 call  0x0000447e 
+ 00017541  0x00003fd7 fetch  0x00000001 , 0x000046f2 
+ 00017542  0x00003fd8 rtneq  0x000000ff 
+ 00017543  0x00003fd9 store  0x00000001 , 0x00004715 
+ 00017544  0x00003fda branch  0x00004296 
+ 00017545  0x00003fdd fetch  0x00000001 , 0x000046f0 
+ 00017546  0x00003fde store  0x00000001 , 0x00004715 
+ 00017547  0x00003fdf branch  0x00004298 
+ 00017548  0x00003fe1 fetch  0x00000001 , 0x000046f1 
+ 00017549  0x00003fe2 store  0x00000001 , 0x00004715 
+ 00017550  0x00003fe3 branch  0x00004298 
+ 00017551  0x00003fe5 fetch  0x00000001 , 0x000046f2 
+ 00017552  0x00003fe6 store  0x00000001 , 0x00004715 
+ 00017553  0x00003fe7 branch  0x00004298 
+ 00017554  0x00003fec bpatch  0x000000ef , 0x0000401d 
+ 00017555  0x00003fed fetch  0x00000001 , 0x0000471e 
+ 00017556  0x00003fee increase  0xffffffff , 0x0000003f 
+ 00017557  0x00003fef store  0x00000001 , 0x0000471e 
+ 00017558  0x00003ff0 fetcht  0x00000001 , 0x00004720 
+ 00017559  0x00003ff1 increase  0x00000001 , 0x00000002 
+ 00017560  0x00003ff2 fetch  0x00000001 , 0x000046d2 
+ 00017561  0x00003ff3 isub  0x00000002 , 0x0000003e 
+ 00017562  0x00003ff4 ncall  0x000043cc , 0x00000002 
+ 00017563  0x00003ff5 storet  0x00000001 , 0x00004720 
+ 00017564  0x00003ff6 jam  0x00000000 , 0x000041bd 
+ 00017565  0x00003ff7 call  0x0000437a 
+ 00017566  0x00003ff8 call  0x000042fb 
+ 00017567  0x00003ff9 branch  0x000042a2 
+ 00017568  0x00003ffc call  0x00004482 
+ 00017569  0x00003ffd setarg  0x00000000 
+ 00017570  0x00003ffe store  0x00000008 , 0x000000a1 
+ 00017571  0x00003fff branch  0x00002b1f 
+ 00017572  0x0000400b rtn  0x0000002b 
+ 00017573  0x0000400c hfetch  0x00000001 , 0x00008081 
+ 00017574  0x0000400d and_into  0x000000f0 , 0x0000003f 
+ 00017575  0x0000400e hstore  0x00000001 , 0x00008081 
+ 00017576  0x0000400f call  0x00006948 
+ 00017577  0x00004010 setarg  0x000044e6 
+ 00017578  0x00004011 store  0x00000002 , 0x000041eb 
+ 00017579  0x00004013 setarg  0x000044e9 
+ 00017580  0x00004014 store  0x00000002 , 0x000041ed 
+ 00017581  0x00004016 setarg  0x000044ef 
+ 00017582  0x00004017 store  0x00000002 , 0x000041f3 
+ 00017583  0x00004019 setarg  0x000044f2 
+ 00017584  0x0000401a store  0x00000002 , 0x000041f5 
+ 00017585  0x0000401c setarg  0x000033d0 
+ 00017586  0x0000401d store  0x00000002 , 0x000041e9 
+ 00017587  0x0000401f call  0x00002c7a 
+ 00017588  0x00004020 setarg  0x000045c2 
+ 00017589  0x00004021 add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00017590  0x00004022 istore  0x00000002 , 0x00000005 
+ 00017591  0x00004024 setarg  0x000044ea 
+ 00017592  0x00004025 add  0x00000013 , 0x000000da , 0x00000005 
+ 00017593  0x00004026 istore  0x00000002 , 0x00000005 
+ 00017594  0x00004028 setarg  0x000044e9 
+ 00017595  0x00004029 add  0x00000013 , 0x000000dc , 0x00000005 
+ 00017596  0x0000402a istore  0x00000002 , 0x00000005 
+ 00017597  0x0000402c setarg  0x0000450e 
+ 00017598  0x0000402d store  0x00000002 , 0x000041fd 
+ 00017599  0x0000402f setarg  0x000044da 
+ 00017600  0x00004030 store  0x00000002 , 0x0000475b 
+ 00017601  0x00004032 setarg  0x000044d6 
+ 00017602  0x00004033 store  0x00000002 , 0x0000475f 
+ 00017603  0x00004035 setarg  0x00004560 
+ 00017604  0x00004036 store  0x00000002 , 0x0000470f 
+ 00017605  0x00004038 bpatch  0x000000f0 , 0x0000401e 
+ 00017606  0x00004039 call  0x000044e2 
+ 00017607  0x0000403a call  0x00007e38 
+ 00017608  0x0000403b jam  0x00000002 , 0x00004172 
+ 00017609  0x0000403c fetch  0x00000001 , 0x0000472b 
+ 00017610  0x0000403d store  0x00000001 , 0x0000469a 
+ 00017611  0x0000403e beq  0x00000000 , 0x000044d5 
+ 00017612  0x0000403f fetch  0x00000001 , 0x0000472c 
+ 00017613  0x00004040 store  0x00000001 , 0x00004686 
+ 00017614  0x00004042 call  0x000044db 
+ 00017615  0x00004043 call  0x00007cd3 
+ 00017616  0x00004044 call  0x00007cdd 
+ 00017617  0x00004045 jam  0x00000001 , 0x00004757 
+ 00017618  0x00004046 fetch  0x00000002 , 0x00004682 
+ 00017619  0x00004047 rtnbit1  0x0000000c 
+ 00017620  0x00004048 branch  0x0000340a 
+ 00017621  0x0000404d jam  0x00000002 , 0x00004757 
+ 00017622  0x0000404f call  0x000044db 
+ 00017623  0x00004051 arg  0x00000000 , 0x00000011 
+ 00017624  0x00004052 call  0x00007d1e 
+ 00017625  0x00004054 branch  0x00002ee4 
+ 00017626  0x00004057 branch  0x000044db 
+ 00017627  0x0000405a bpatch  0x000000f1 , 0x0000401e 
+ 00017628  0x0000405b fetch  0x00000001 , 0x00004729 
+ 00017629  0x0000405c bne  0x000000ff , 0x000044e0 
+ 00017630  0x0000405e fetcht  0x00000001 , 0x00004706 
+ 00017631  0x0000405f branch  0x0000680e 
+ 00017632  0x00004061 store  0x00000001 , 0x00004706 
+ 00017633  0x00004062 branch  0x000044de 
+ 00017634  0x00004066 call  0x00002c9d 
+ 00017635  0x00004067 fetch  0x00000002 , 0x00004753 
+ 00017636  0x00004068 store  0x00000002 , 0x00004755 
+ 00017637  0x00004069 branch  0x00004515 
+ 00017638  0x00004071 call  0x00006835 
+ 00017639  0x00004072 call  0x000044e9 
+ 00017640  0x00004073 branch  0x0000340a 
+ 00017641  0x00004076 branch  0x0000696c 
+ 00017642  0x00004079 fetch  0x00000001 , 0x00004765 
+ 00017643  0x0000407a rtn  0x00000034 
+ 00017644  0x0000407c branch  0x00002d83 
+ 00017645  0x0000407f rtn 
+ 00017646  0x00004082 branch  0x00006978 
+ 00017647  0x00004085 call  0x00004544 
+ 00017648  0x00004086 call  0x00004503 
+ 00017649  0x00004087 branch  0x000044ee 
+ 00017650  0x0000408a copy  0x00000013 , 0x0000003f 
+ 00017651  0x0000408b beq  0x0000002d , 0x00003431 
+ 00017652  0x0000408c beq  0x00000010 , 0x0000341a 
+ 00017653  0x0000408d beq  0x00000039 , 0x000044fb 
+ 00017654  0x0000408e beq  0x0000003c , 0x000044ff 
+ 00017655  0x0000408f beq  0x0000003a , 0x000044f9 
+ 00017656  0x00004090 rtn 
+ 00017657  0x00004093 jam  0x00000001 , 0x00004765 
+ 00017658  0x00004094 rtn 
+ 00017659  0x00004097 jam  0x00000001 , 0x00004765 
+ 00017660  0x00004098 jam  0x00000001 , 0x00004763 
+ 00017661  0x00004099 jam  0x00000001 , 0x00004764 
+ 00017662  0x0000409a rtn 
+ 00017663  0x0000409d jam  0x00000001 , 0x00004765 
+ 00017664  0x0000409e jam  0x00000001 , 0x00004763 
+ 00017665  0x0000409f jam  0x00000001 , 0x00004764 
+ 00017666  0x000040a0 rtn 
+ 00017667  0x000040a3 fetch  0x00000001 , 0x00004763 
+ 00017668  0x000040a4 rtneq  0x00000000 
+ 00017669  0x000040a5 fetch  0x00000001 , 0x00004762 
+ 00017670  0x000040a6 rtneq  0x00000001 
+ 00017671  0x000040a7 jam  0x00000001 , 0x00004762 
+ 00017672  0x000040a9 arg  0x00000000 , 0x00000011 
+ 00017673  0x000040aa branch  0x00007d19 
+ 00017674  0x000040ac arg  0x00000000 , 0x00000011 
+ 00017675  0x000040ad call  0x00007d19 
+ 00017676  0x000040ae call  0x000044db 
+ 00017677  0x000040af branch  0x0000340a 
+ 00017678  0x000040b2 call  0x0000337b 
+ 00017679  0x000040b3 branch  0x00004510 
+ 00017680  0x000040b6 fetch  0x00000001 , 0x0000472d 
+ 00017681  0x000040b7 rtn  0x00000034 
+ 00017682  0x000040b8 arg  0x00004755 , 0x00000013 
+ 00017683  0x000040b9 arg  0x0000450a , 0x00000012 
+ 00017684  0x000040ba branch  0x00003374 
+ 00017685  0x000040be call  0x0000451a 
+ 00017686  0x000040bf storet  0x00000002 , 0x0000471a 
+ 00017687  0x000040c0 call  0x0000451f 
+ 00017688  0x000040c1 storet  0x00000002 , 0x0000471c 
+ 00017689  0x000040c2 rtn 
+ 00017690  0x000040c5 fetch  0x00000002 , 0x0000471a 
+ 00017691  0x000040c6 store  0x00000002 , 0x0000471e 
+ 00017692  0x000040c7 call  0x00004540 
+ 00017693  0x000040c8 call  0x00004525 
+ 00017694  0x000040c9 store  0x00000001 , 0x00004724 
+ 00017695  0x000040cb fetch  0x00000002 , 0x0000471c 
+ 00017696  0x000040cc store  0x00000002 , 0x0000471e 
+ 00017697  0x000040cd call  0x00004542 
+ 00017698  0x000040ce call  0x00004525 
+ 00017699  0x000040cf store  0x00000001 , 0x00004725 
+ 00017700  0x000040d0 rtn 
+ 00017701  0x000040d2 fetch  0x00000002 , 0x00004720 
+ 00017702  0x000040d3 copy  0x0000003f , 0x00000011 
+ 00017703  0x000040d4 fetch  0x00000002 , 0x0000471e 
+ 00017704  0x000040d5 call  0x0000452e 
+ 00017705  0x000040d6 fetch  0x00000001 , 0x00004719 
+ 00017706  0x000040d7 nbranch  0x00004537 , 0x00000034 
+ 00017707  0x000040d8 nrtn  0x00000002 
+ 00017708  0x000040d9 fetcht  0x00000002 , 0x0000471e 
+ 00017709  0x000040da rtn 
+ 00017710  0x000040dc isub  0x00000002 , 0x0000003f 
+ 00017711  0x000040dd branch  0x00004534 , 0x00000002 
+ 00017712  0x000040de sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00017713  0x000040df jam  0x00000001 , 0x00004718 
+ 00017714  0x000040e0 isub  0x00000011 , 0x0000003e 
+ 00017715  0x000040e1 rtn 
+ 00017716  0x000040e3 jam  0x00000000 , 0x00004718 
+ 00017717  0x000040e4 isub  0x00000011 , 0x0000003e 
+ 00017718  0x000040e5 rtn 
+ 00017719  0x000040e7 nbranch  0x0000453e , 0x00000002 
+ 00017720  0x000040e8 fetch  0x00000001 , 0x00004718 
+ 00017721  0x000040e9 nbranch  0x0000453c , 0x00000034 
+ 00017722  0x000040eb setarg  0x00000001 
+ 00017723  0x000040ec rtn 
+ 00017724  0x000040ee setarg  0x00000002 
+ 00017725  0x000040ef rtn 
+ 00017726  0x000040f1 setarg  0x00000000 
+ 00017727  0x000040f2 rtn 
+ 00017728  0x000040f4 jam  0x00000033 , 0x0000422e 
+ 00017729  0x000040f5 branch  0x000068eb 
+ 00017730  0x000040f7 jam  0x00000034 , 0x0000422e 
+ 00017731  0x000040f8 branch  0x000068eb 
+ 00017732  0x000040fc fetch  0x00000001 , 0x0000472a 
+ 00017733  0x000040fd rtnne  0x00000001 
+ 00017734  0x000040ff bpatch  0x000000f2 , 0x0000401e 
+ 00017735  0x00004100 jam  0x00000001 , 0x00004719 
+ 00017736  0x00004101 call  0x0000451a 
+ 00017737  0x00004102 fetch  0x00000002 , 0x00004724 
+ 00017738  0x00004103 fetcht  0x00000002 , 0x00004722 
+ 00017739  0x00004104 isub  0x00000002 , 0x0000003e 
+ 00017740  0x00004105 rtn  0x00000005 
+ 00017741  0x00004106 store  0x00000002 , 0x00004722 
+ 00017742  0x00004107 call  0x00004550 
+ 00017743  0x00004108 branch  0x00004554 
+ 00017744  0x0000410b fetch  0x00000001 , 0x00004724 
+ 00017745  0x0000410c branch  0x0000455a , 0x00000034 
+ 00017746  0x0000410d increase  0xffffffff , 0x0000003f 
+ 00017747  0x0000410e branch  0x00004557 
+ 00017748  0x00004110 fetch  0x00000001 , 0x00004725 
+ 00017749  0x00004111 branch  0x0000455d , 0x00000034 
+ 00017750  0x00004112 increase  0x00000001 , 0x0000003f 
+ 00017751  0x00004114 copy  0x0000003f , 0x00000007 
+ 00017752  0x00004115 arg  0x00000001 , 0x00000011 
+ 00017753  0x00004116 branch  0x00004560 
+ 00017754  0x00004119 arg  0x00000000 , 0x00000007 
+ 00017755  0x0000411a arg  0x00000000 , 0x00000011 
+ 00017756  0x0000411b branch  0x00004560 
+ 00017757  0x0000411d arg  0x00000002 , 0x00000007 
+ 00017758  0x0000411e arg  0x00000000 , 0x00000011 
+ 00017759  0x0000411f branch  0x00004560 
+ 00017760  0x00004122 copy  0x00000011 , 0x0000003f 
+ 00017761  0x00004123 store  0x00000001 , 0x00004761 
+ 00017762  0x00004124 fetch  0x00000001 , 0x00004763 
+ 00017763  0x00004125 beq  0x00000000 , 0x00002ee4 
+ 00017764  0x00004126 fetch  0x00000002 , 0x00004753 
+ 00017765  0x00004127 store  0x00000002 , 0x00004755 
+ 00017766  0x00004128 fetch  0x00000001 , 0x00004761 
+ 00017767  0x00004129 branch  0x00004580 , 0x00000034 
+ 00017768  0x0000412b bpatch  0x000000f3 , 0x0000401e 
+ 00017769  0x0000412c arg  0x00000000 , 0x00000011 
+ 00017770  0x0000412d call  0x00007d14 
+ 00017771  0x0000412f copy  0x00000007 , 0x0000003f 
+ 00017772  0x00004130 beq  0x00000004 , 0x000045a3 
+ 00017773  0x00004131 beq  0x00000005 , 0x000045a5 
+ 00017774  0x00004132 beq  0x00000006 , 0x000045a7 
+ 00017775  0x00004136 call  0x0000458b 
+ 00017776  0x00004137 beq  0x00000000 , 0x00004574 
+ 00017777  0x00004138 beq  0x00000002 , 0x0000457a 
+ 00017778  0x00004139 beq  0x00000003 , 0x00004574 
+ 00017779  0x0000413a rtn 
+ 00017780  0x0000413d copy  0x00000007 , 0x0000003f 
+ 00017781  0x0000413e beq  0x00000000 , 0x0000458f 
+ 00017782  0x0000413f beq  0x00000001 , 0x00004591 
+ 00017783  0x00004140 beq  0x00000002 , 0x00004593 
+ 00017784  0x00004141 beq  0x00000003 , 0x00004595 
+ 00017785  0x00004142 rtn 
+ 00017786  0x00004145 copy  0x00000007 , 0x0000003f 
+ 00017787  0x00004146 beq  0x00000000 , 0x00004597 
+ 00017788  0x00004147 beq  0x00000001 , 0x0000459a 
+ 00017789  0x00004148 beq  0x00000002 , 0x0000459d 
+ 00017790  0x00004149 beq  0x00000003 , 0x000045a0 
+ 00017791  0x0000414a rtn 
+ 00017792  0x0000414d bpatch  0x000000f4 , 0x0000401e 
+ 00017793  0x0000414e arg  0x00000000 , 0x00000011 
+ 00017794  0x0000414f call  0x00007d19 
+ 00017795  0x00004151 copy  0x00000007 , 0x0000003f 
+ 00017796  0x00004152 beq  0x00000004 , 0x000045bc 
+ 00017797  0x00004153 beq  0x00000005 , 0x000045bc 
+ 00017798  0x00004157 call  0x0000458b 
+ 00017799  0x00004158 beq  0x00000000 , 0x000045a9 
+ 00017800  0x00004159 beq  0x00000002 , 0x000045af 
+ 00017801  0x0000415a beq  0x00000003 , 0x000045a9 
+ 00017802  0x0000415b rtn 
+ 00017803  0x0000415e fetch  0x00000001 , 0x00004728 
+ 00017804  0x0000415f fetcht  0x00000001 , 0x00004727 
+ 00017805  0x00004160 ior  0x00000002 , 0x0000003f 
+ 00017806  0x00004161 rtn 
+ 00017807  0x00004165 jam  0x00000001 , 0x00004734 
+ 00017808  0x00004166 branch  0x000045be 
+ 00017809  0x00004168 jam  0x00000002 , 0x00004734 
+ 00017810  0x00004169 branch  0x000045be 
+ 00017811  0x0000416b jam  0x00000001 , 0x00004736 
+ 00017812  0x0000416c branch  0x000045be 
+ 00017813  0x0000416e jam  0x00000002 , 0x00004736 
+ 00017814  0x0000416f branch  0x000045be 
+ 00017815  0x00004173 jam  0x00000001 , 0x00004734 
+ 00017816  0x00004174 jam  0x00000001 , 0x00004736 
+ 00017817  0x00004175 branch  0x000045be 
+ 00017818  0x00004177 jam  0x00000002 , 0x00004734 
+ 00017819  0x00004178 jam  0x00000002 , 0x00004736 
+ 00017820  0x00004179 branch  0x000045be 
+ 00017821  0x0000417b jam  0x00000002 , 0x00004734 
+ 00017822  0x0000417c jam  0x00000001 , 0x00004736 
+ 00017823  0x0000417d branch  0x000045be 
+ 00017824  0x0000417f jam  0x00000001 , 0x00004734 
+ 00017825  0x00004180 jam  0x00000002 , 0x00004736 
+ 00017826  0x00004181 branch  0x000045be 
+ 00017827  0x00004185 jam  0x00000001 , 0x00004738 
+ 00017828  0x00004186 branch  0x000045be 
+ 00017829  0x00004188 jam  0x00000002 , 0x00004738 
+ 00017830  0x00004189 branch  0x000045be 
+ 00017831  0x0000418c jam  0x00000001 , 0x00004741 
+ 00017832  0x0000418d branch  0x000045c0 
+ 00017833  0x00004190 copy  0x00000007 , 0x0000003f 
+ 00017834  0x00004191 beq  0x00000000 , 0x000045b5 
+ 00017835  0x00004192 beq  0x00000001 , 0x000045b5 
+ 00017836  0x00004193 beq  0x00000002 , 0x000045b7 
+ 00017837  0x00004194 beq  0x00000003 , 0x000045b7 
+ 00017838  0x00004195 rtn 
+ 00017839  0x00004198 copy  0x00000007 , 0x0000003f 
+ 00017840  0x00004199 beq  0x00000000 , 0x000045b9 
+ 00017841  0x0000419a beq  0x00000001 , 0x000045b9 
+ 00017842  0x0000419b beq  0x00000002 , 0x000045b9 
+ 00017843  0x0000419c beq  0x00000003 , 0x000045b9 
+ 00017844  0x0000419d rtn 
+ 00017845  0x000041a1 jam  0x00000000 , 0x00004734 
+ 00017846  0x000041a2 branch  0x000045be 
+ 00017847  0x000041a5 jam  0x00000000 , 0x00004736 
+ 00017848  0x000041a6 branch  0x000045be 
+ 00017849  0x000041ac jam  0x00000000 , 0x00004734 
+ 00017850  0x000041ad jam  0x00000000 , 0x00004736 
+ 00017851  0x000041ae branch  0x000045be 
+ 00017852  0x000041b2 jam  0x00000000 , 0x00004738 
+ 00017853  0x000041b3 branch  0x000045be 
+ 00017854  0x000041b6 arg  0x0000472e , 0x00000011 
+ 00017855  0x000041b7 branch  0x00007e3d 
+ 00017856  0x000041b9 arg  0x0000473b , 0x00000011 
+ 00017857  0x000041ba branch  0x00007e3d 
+ 00017858  0x000041bd fetch  0x00000001 , 0x00004764 
+ 00017859  0x000041be beq  0x00000001 , 0x000045cc 
+ 00017860  0x000041bf arg  0x00004744 , 0x00000011 
+ 00017861  0x000041c0 call  0x00007e54 
+ 00017862  0x000041c1 nbranch  0x000045d1 , 0x00000028 
+ 00017863  0x000041c3 arg  0x00004744 , 0x00000006 
+ 00017864  0x000041c4 ifetch  0x00000001 , 0x00000006 
+ 00017865  0x000041c5 copy  0x0000003f , 0x00000011 
+ 00017866  0x000041c6 arg  0x00004745 , 0x00000012 
+ 00017867  0x000041c9 rtn 
+ 00017868  0x000041cc jam  0x00000000 , 0x00004764 
+ 00017869  0x000041cd enable  0x00000028 
+ 00017870  0x000041ce arg  0x00000001 , 0x00000011 
+ 00017871  0x000041cf arg  0x00004766 , 0x00000012 
+ 00017872  0x000041d0 rtn 
+ 00017873  0x000041d3 fetch  0x00000001 , 0x00004747 
+ 00017874  0x000041d4 beq  0x00000004 , 0x000045d5 
+ 00017875  0x000041d5 beq  0x00000005 , 0x000045d5 
+ 00017876  0x000041d6 rtn 
+ 00017877  0x000041d8 fetch  0x00000001 , 0x0000474a 
+ 00017878  0x000041d9 nbranch  0x000045dc , 0x00000034 
+ 00017879  0x000041da fetch  0x00000001 , 0x0000474c 
+ 00017880  0x000041db nbranch  0x000045dc , 0x00000034 
+ 00017881  0x000041dc fetch  0x00000001 , 0x0000474e 
+ 00017882  0x000041dd nbranch  0x000045dc , 0x00000034 
+ 00017883  0x000041de rtn 
+ 00017884  0x000041e0 enable  0x00000028 
+ 00017885  0x000041e1 branch  0x000045c7 
+ 00017886  0x000041ea rtn  0x0000002b 
+ 00017887  0x000041eb hfetch  0x00000001 , 0x00008081 
+ 00017888  0x000041ec and_into  0x000000fc , 0x0000003f 
+ 00017889  0x000041ed hstore  0x00000001 , 0x00008081 
+ 00017890  0x000041ee setarg  0x000046b4 
+ 00017891  0x000041ef store  0x00000002 , 0x000041eb 
+ 00017892  0x000041f1 setarg  0x000046b3 
+ 00017893  0x000041f2 store  0x00000002 , 0x000041ed 
+ 00017894  0x000041f4 setarg  0x0000340a 
+ 00017895  0x000041f5 store  0x00000002 , 0x000041f7 
+ 00017896  0x000041f7 setarg  0x000046b1 
+ 00017897  0x000041f8 store  0x00000002 , 0x000041f3 
+ 00017898  0x000041fa setarg  0x00004612 
+ 00017899  0x000041fb store  0x00000002 , 0x000041f5 
+ 00017900  0x000041fd setarg  0x0000460c 
+ 00017901  0x000041fe store  0x00000002 , 0x000041e9 
+ 00017902  0x00004200 setarg  0x0000476a 
+ 00017903  0x00004201 store  0x00000002 , 0x000041f9 
+ 00017904  0x00004203 setarg  0x00004686 
+ 00017905  0x00004204 store  0x00000002 , 0x000041fd 
+ 00017906  0x00004206 setarg  0x00004729 
+ 00017907  0x00004207 store  0x00000002 , 0x000046e7 
+ 00017908  0x00004209 setarg  0x00004806 
+ 00017909  0x0000420a store  0x00000002 , 0x000046e2 
+ 00017910  0x0000420b setarg  0x00004807 
+ 00017911  0x0000420c store  0x00000002 , 0x000046e4 
+ 00017912  0x0000420e call  0x000057a3 
+ 00017913  0x0000420f call  0x000047da 
+ 00017914  0x00004210 call  0x00004788 
+ 00017915  0x00004211 call  0x0000476d 
+ 00017916  0x00004212 call  0x00006948 
+ 00017917  0x00004213 call  0x0000477a 
+ 00017918  0x00004214 call  0x00007e38 
+ 00017919  0x00004215 call  0x00007d08 
+ 00017920  0x00004216 call  0x00004793 
+ 00017921  0x00004217 call  0x000047c7 
+ 00017922  0x00004219 bpatch  0x000000f5 , 0x0000401e 
+ 00017923  0x0000421a call  0x0000464f 
+ 00017924  0x0000421b fetch  0x00000001 , 0x000046dd 
+ 00017925  0x0000421c beq  0x00000000 , 0x00004609 
+ 00017926  0x0000421d fetch  0x00000001 , 0x000046de 
+ 00017927  0x0000421e store  0x00000001 , 0x00004686 
+ 00017928  0x0000421f branch  0x0000480e 
+ 00017929  0x00004223 jam  0x000000ff , 0x00004686 
+ 00017930  0x00004224 jam  0x00000001 , 0x000046df 
+ 00017931  0x00004225 branch  0x000046d9 
+ 00017932  0x0000422a fetch  0x00000001 , 0x000046df 
+ 00017933  0x0000422b beq  0x00000002 , 0x000033d0 
+ 00017934  0x0000422c call  0x0000527e 
+ 00017935  0x0000422d fetch  0x00000001 , 0x00004256 
+ 00017936  0x0000422e nbranch  0x000033d0 , 0x00000034 
+ 00017937  0x0000422f branch  0x000033d2 
+ 00017938  0x00004234 copy  0x00000013 , 0x0000003f 
+ 00017939  0x00004236 beq  0x00000001 , 0x00004626 
+ 00017940  0x00004237 beq  0x00000002 , 0x00004629 
+ 00017941  0x00004238 beq  0x00000004 , 0x00004631 
+ 00017942  0x00004239 beq  0x00000005 , 0x00004633 
+ 00017943  0x0000423a beq  0x00000006 , 0x00004635 
+ 00017944  0x0000423b beq  0x00000007 , 0x00004638 
+ 00017945  0x0000423c beq  0x00000012 , 0x0000463c 
+ 00017946  0x0000423d beq  0x00000013 , 0x00004644 
+ 00017947  0x0000423e beq  0x00000027 , 0x00004645 
+ 00017948  0x0000423f beq  0x0000002e , 0x00004648 
+ 00017949  0x00004240 beq  0x0000003d , 0x00004649 
+ 00017950  0x00004242 beq  0x00000014 , 0x00004658 
+ 00017951  0x00004243 beq  0x00000015 , 0x0000465c 
+ 00017952  0x00004244 beq  0x0000003f , 0x0000465f 
+ 00017953  0x00004245 beq  0x00000040 , 0x00004665 
+ 00017954  0x00004247 beq  0x00000010 , 0x0000466b 
+ 00017955  0x00004248 beq  0x0000002c , 0x0000466c 
+ 00017956  0x00004249 beq  0x0000002d , 0x00004677 
+ 00017957  0x0000424a rtn 
+ 00017958  0x00004250 jam  0x00000000 , 0x000046ad 
+ 00017959  0x00004251 jam  0x00000000 , 0x000046ac 
+ 00017960  0x00004252 rtn 
+ 00017961  0x00004256 call  0x0000462b 
+ 00017962  0x00004257 branch  0x00004631 
+ 00017963  0x0000425a jam  0x00000000 , 0x000041e2 
+ 00017964  0x0000425b jam  0x00000000 , 0x00004680 
+ 00017965  0x0000425c jam  0x00000000 , 0x00004205 
+ 00017966  0x0000425d jam  0x00000000 , 0x000046ac 
+ 00017967  0x0000425e jam  0x00000000 , 0x000046ad 
+ 00017968  0x0000425f branch  0x00007e38 
+ 00017969  0x00004263 call  0x000033a9 
+ 00017970  0x00004264 branch  0x000046c2 
+ 00017971  0x00004268 call  0x000046b6 
+ 00017972  0x00004269 branch  0x00003408 
+ 00017973  0x0000426d setarg  0x00000002 
+ 00017974  0x0000426e store  0x00000001 , 0x00004680 
+ 00017975  0x0000426f rtn 
+ 00017976  0x00004273 jam  0x00000000 , 0x000046ac 
+ 00017977  0x00004274 setarg  0x00000001 
+ 00017978  0x00004275 store  0x00000001 , 0x000046ad 
+ 00017979  0x00004276 rtn 
+ 00017980  0x0000427a fetch  0x00000001 , 0x000041e2 
+ 00017981  0x0000427b rtneq  0x00000001 
+ 00017982  0x0000427c jam  0x00000001 , 0x000041e2 
+ 00017983  0x0000427d call  0x00003416 
+ 00017984  0x0000427e call  0x00003414 
+ 00017985  0x0000427f call  0x000046b6 
+ 00017986  0x00004280 call  0x00003408 
+ 00017987  0x00004281 branch  0x0000340e 
+ 00017988  0x00004285 branch  0x00004631 
+ 00017989  0x00004289 setarg  0x00000005 
+ 00017990  0x0000428a store  0x00000001 , 0x000046ac 
+ 00017991  0x0000428b rtn 
+ 00017992  0x0000428f branch  0x000033cd 
+ 00017993  0x00004294 arg  0x00000000 , 0x00000012 
+ 00017994  0x00004295 fetch  0x00000001 , 0x00004217 
+ 00017995  0x00004296 mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00017996  0x00004297 fetch  0x00000002 , 0x00004215 
+ 00017997  0x00004298 copy  0x0000003f , 0x00000011 
+ 00017998  0x00004299 branch  0x00006606 
+ 00017999  0x0000429c arg  0x00000000 , 0x00000012 
+ 00018000  0x0000429d fetch  0x00000001 , 0x0000469a 
+ 00018001  0x0000429e rtnbit0  0x00000001 
+ 00018002  0x0000429f fetch  0x00000001 , 0x00004217 
+ 00018003  0x000042a0 rtn  0x00000034 
+ 00018004  0x000042a1 mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00018005  0x000042a2 fetch  0x00000002 , 0x00004215 
+ 00018006  0x000042a3 copy  0x0000003f , 0x00000011 
+ 00018007  0x000042a4 branch  0x000065df 
+ 00018008  0x000042a9 call  0x000046b6 
+ 00018009  0x000042aa setarg  0x00000000 
+ 00018010  0x000042ab store  0x00000002 , 0x000046b7 
+ 00018011  0x000042ac branch  0x00003408 
+ 00018012  0x000042b0 call  0x00007e38 
+ 00018013  0x000042b1 jam  0x00000000 , 0x000046b0 
+ 00018014  0x000042b2 branch  0x000046d9 
+ 00018015  0x000042b6 call  0x00007e38 
+ 00018016  0x000042b7 jam  0x00000001 , 0x000046b0 
+ 00018017  0x000042b8 fetch  0x00000008 , 0x000046c1 
+ 00018018  0x000042b9 store  0x00000008 , 0x00004496 
+ 00018019  0x000042ba call  0x00003416 
+ 00018020  0x000042bb branch  0x00005abf 
+ 00018021  0x000042bf fetch  0x00000002 , 0x00004509 
+ 00018022  0x000042c0 rtneq  0x00000000 
+ 00018023  0x000042c1 fetch  0x00000008 , 0x000046c9 
+ 00018024  0x000042c2 rtn  0x00000034 
+ 00018025  0x000042c3 store  0x00000008 , 0x00004496 
+ 00018026  0x000042c4 branch  0x00005abf 
+ 00018027  0x000042c9 branch  0x0000481f 
+ 00018028  0x000042cc fetch  0x00000001 , 0x000046dd 
+ 00018029  0x000042cd rtneq  0x00000000 
+ 00018030  0x000042ce fetch  0x00000001 , 0x000046df 
+ 00018031  0x000042cf rtnne  0x00000001 
+ 00018032  0x000042d0 call  0x00004672 
+ 00018033  0x000042d1 branch  0x00003406 
+ 00018034  0x000042d4 jam  0x00000001 , 0x000048df 
+ 00018035  0x000042d5 arg  0x0000000b , 0x00000039 
+ 00018036  0x000042d6 arg  0x000048e0 , 0x00000005 
+ 00018037  0x000042d7 arg  0x000048c9 , 0x00000006 
+ 00018038  0x000042d8 branch  0x00007f01 
+ 00018039  0x000042db fetch  0x00000001 , 0x000046dd 
+ 00018040  0x000042dc rtneq  0x00000000 
+ 00018041  0x000042dd fetch  0x00000001 , 0x000046df 
+ 00018042  0x000042de beq  0x00000001 , 0x0000467c 
+ 00018043  0x000042df branch  0x0000481b 
+ 00018044  0x000042e2 fetch  0x00000001 , 0x000048df 
+ 00018045  0x000042e3 rtnne  0x00000001 
+ 00018046  0x000042e4 jam  0x00000000 , 0x000048df 
+ 00018047  0x000042e5 fetch  0x00000002 , 0x00004682 
+ 00018048  0x000042e6 bbit1  0x00000000 , 0x00003408 
+ 00018049  0x000042e7 bbit1  0x00000009 , 0x00003408 
+ 00018050  0x000042e8 arg  0x0000000b , 0x00000039 
+ 00018051  0x000042e9 arg  0x000048e0 , 0x00000006 
+ 00018052  0x000042ea arg  0x000048c9 , 0x00000005 
+ 00018053  0x000042eb branch  0x00007f01 
+ 00018054  0x000042f2 call  0x0000468c 
+ 00018055  0x000042f5 call  0x00004693 
+ 00018056  0x000042f8 call  0x0000469e 
+ 00018057  0x000042f9 call  0x000046a6 
+ 00018058  0x000042fa call  0x000046a9 
+ 00018059  0x000042fd branch  0x000046ac 
+ 00018060  0x00004302 arg  0x000046db , 0x00000013 
+ 00018061  0x00004303 arg  0x0000468f , 0x00000012 
+ 00018062  0x00004304 branch  0x00003374 
+ 00018063  0x00004306 jam  0x00000002 , 0x000046df 
+ 00018064  0x00004307 call  0x00003408 
+ 00018065  0x00004308 call  0x000046f4 
+ 00018066  0x00004309 branch  0x0000480b 
+ 00018067  0x0000430d arg  0x000048ec , 0x00000013 
+ 00018068  0x0000430e arg  0x00004696 , 0x00000012 
+ 00018069  0x0000430f branch  0x0000336d 
+ 00018070  0x00004312 fetch  0x00000002 , 0x00004682 
+ 00018071  0x00004313 bbit1  0x00000009 , 0x0000480b 
+ 00018072  0x00004314 bbit1  0x00000000 , 0x0000480b 
+ 00018073  0x00004315 fetch  0x00000001 , 0x000048c9 
+ 00018074  0x00004316 beq  0x00000001 , 0x0000480b 
+ 00018075  0x00004317 beq  0x00000004 , 0x0000480b 
+ 00018076  0x00004318 beq  0x00000005 , 0x0000480b 
+ 00018077  0x00004319 branch  0x0000340a 
+ 00018078  0x0000431e arg  0x000046ac , 0x00000013 
+ 00018079  0x0000431f arg  0x000046a1 , 0x00000012 
+ 00018080  0x00004320 branch  0x0000336d 
+ 00018081  0x00004323 fetch  0x00000001 , 0x0000027f 
+ 00018082  0x00004324 set1  0x00000000 , 0x0000003f 
+ 00018083  0x00004325 set1  0x00000007 , 0x0000003f 
+ 00018084  0x00004326 store  0x00000001 , 0x0000027f 
+ 00018085  0x00004327 rtn 
+ 00018086  0x0000432a arg  0x00004680 , 0x00000013 
+ 00018087  0x0000432b arg  0x0000463c , 0x00000012 
+ 00018088  0x0000432c branch  0x0000336d 
+ 00018089  0x0000432f arg  0x000046ad , 0x00000013 
+ 00018090  0x00004330 arg  0x000033e9 , 0x00000012 
+ 00018091  0x00004331 branch  0x0000336d 
+ 00018092  0x00004337 fetch  0x00000001 , 0x000046df 
+ 00018093  0x00004338 rtnne  0x00000001 
+ 00018094  0x00004339 arg  0x000046b7 , 0x00000013 
+ 00018095  0x0000433a arg  0x000046c2 , 0x00000012 
+ 00018096  0x0000433b branch  0x00003374 
+ 00018097  0x0000433f call  0x0000473a 
+ 00018098  0x00004340 branch  0x00006978 
+ 00018099  0x00004344 branch  0x0000696c 
+ 00018100  0x00004347 call  0x00006835 
+ 00018101  0x00004348 branch  0x000046b3 
+ 00018102  0x0000434f fetch  0x00000001 , 0x0000469a 
+ 00018103  0x00004350 bbit1  0x00000001 , 0x000046be 
+ 00018104  0x00004351 bbit1  0x00000000 , 0x000046ba 
+ 00018105  0x00004352 rtn 
+ 00018106  0x00004355 fetch  0x00000002 , 0x000046d7 
+ 00018107  0x00004356 store  0x00000002 , 0x000046d9 
+ 00018108  0x00004357 store  0x00000002 , 0x000046db 
+ 00018109  0x00004358 branch  0x000033f8 
+ 00018110  0x0000435b fetch  0x00000002 , 0x000046d3 
+ 00018111  0x0000435c store  0x00000002 , 0x000046d9 
+ 00018112  0x0000435d store  0x00000002 , 0x000046db 
+ 00018113  0x0000435e branch  0x000033f0 
+ 00018114  0x00004361 fetch  0x00000001 , 0x000046df 
+ 00018115  0x00004362 rtnne  0x00000001 
+ 00018116  0x00004363 fetch  0x00000001 , 0x0000469a 
+ 00018117  0x00004364 bbit1  0x00000001 , 0x000046c8 
+ 00018118  0x00004365 bbit1  0x00000000 , 0x000046cc 
+ 00018119  0x00004366 rtn 
+ 00018120  0x00004369 fetch  0x00000002 , 0x000046d1 ,
+ 00018121  0x0000436a store  0x00000002 , 0x000046d9 
+ 00018122  0x0000436b store  0x00000002 , 0x000046db 
+ 00018123  0x0000436c branch  0x000033eb 
+ 00018124  0x0000436f fetch  0x00000002 , 0x00004682 
+ 00018125  0x00004370 rtnbit1  0x00000009 
+ 00018126  0x00004371 fetch  0x00000002 , 0x000046d5 
+ 00018127  0x00004372 store  0x00000002 , 0x000046d9 
+ 00018128  0x00004373 store  0x00000002 , 0x000046db 
+ 00018129  0x00004374 fetch  0x00000002 , 0x000046b3 
+ 00018130  0x00004375 call  0x000046f0 
+ 00018131  0x00004376 call  0x00003404 
+ 00018132  0x00004377 fetch  0x00000004 , 0x000046bd 
+ 00018133  0x00004378 store  0x00000004 , 0x000048cc 
+ 00018134  0x00004379 fetch  0x00000002 , 0x00004682 
+ 00018135  0x0000437a rtnbit1  0x0000000b 
+ 00018136  0x0000437b branch  0x000033fa 
+ 00018137  0x0000437f fetch  0x00000001 , 0x000046df 
+ 00018138  0x00004380 rtnne  0x00000001 
+ 00018139  0x00004381 fetch  0x00000001 , 0x0000469a 
+ 00018140  0x00004382 bbit1  0x00000001 , 0x000046df 
+ 00018141  0x00004383 bbit1  0x00000000 , 0x000046e4 
+ 00018142  0x00004384 rtn 
+ 00018143  0x00004387 call  0x000046f8 
+ 00018144  0x00004388 branch  0x000046c2 , 0x00000034 
+ 00018145  0x00004389 call  0x00003406 
+ 00018146  0x0000438a call  0x000033f0 
+ 00018147  0x0000438b branch  0x000033e1 
+ 00018148  0x0000438e fetch  0x00000002 , 0x000046b7 
+ 00018149  0x0000438f fetcht  0x00000002 , 0x000046b5 
+ 00018150  0x00004390 storet  0x00000002 , 0x000046b7 
+ 00018151  0x00004391 nrtn  0x00000034 
+ 00018152  0x00004392 fetch  0x00000002 , 0x000046b1 
+ 00018153  0x00004393 call  0x000046f0 
+ 00018154  0x00004394 call  0x00003404 
+ 00018155  0x00004395 fetch  0x00000004 , 0x000046b9 
+ 00018156  0x00004396 store  0x00000004 , 0x000048cc 
+ 00018157  0x00004397 fetch  0x00000002 , 0x00004682 
+ 00018158  0x00004398 rtnbit1  0x0000000b 
+ 00018159  0x00004399 branch  0x000033fa 
+ 00018160  0x0000439d store  0x00000002 , 0x00004154 
+ 00018161  0x0000439e increase  0xfffffffc , 0x0000003f 
+ 00018162  0x0000439f store  0x00000002 , 0x00004482 
+ 00018163  0x000043a0 rtn 
+ 00018164  0x000043a4 fetch  0x00000002 , 0x00004682 
+ 00018165  0x000043a5 bbit1  0x00000009 , 0x00003402 
+ 00018166  0x000043a6 bbit1  0x00000000 , 0x000033e9 
+ 00018167  0x000043a7 branch  0x000046b6 
+ 00018168  0x000043ac fetch  0x00000001 , 0x00004217 
+ 00018169  0x000043ad copy  0x0000003f , 0x00000039 
+ 00018170  0x000043ae fetch  0x00000002 , 0x00004215 
+ 00018171  0x000043af copy  0x0000003f , 0x00000011 
+ 00018172  0x000043b1 ifetch  0x00000002 , 0x00000011 
+ 00018173  0x000043b2 beq  0x00000000 , 0x00004701 
+ 00018174  0x000043b3 increase  0x00000022 , 0x00000011 
+ 00018175  0x000043b4 loop  0x000046fc 
+ 00018176  0x000043b5 branch  0x00007ff1 
+ 00018177  0x000043b8 ifetch  0x00000006 , 0x00000006 
+ 00018178  0x000043b9 store  0x00000006 , 0x000041d0 
+ 00018179  0x000043ba increase  0x0000000a , 0x00000006 
+ 00018180  0x000043bb arg  0x000041be , 0x00000005 
+ 00018181  0x000043bc call  0x00007ebf 
+ 00018182  0x000043bd call  0x000067d7 
+ 00018183  0x000043be branch  0x00007fef 
+ 00018184  0x000043c5 call  0x00007fe9 
+ 00018185  0x000043c6 fetch  0x00000002 , 0x00004682 
+ 00018186  0x000043c7 bbit1  0x00000000 , 0x0000470d 
+ 00018187  0x000043c8 bbit1  0x00000009 , 0x00004710 
+ 00018188  0x000043c9 rtn 
+ 00018189  0x000043cc fetch  0x00000001 , 0x00004253 
+ 00018190  0x000043cd rtnne  0x0000003f 
+ 00018191  0x000043ce branch  0x00007fe7 
+ 00018192  0x000043d1 fetch  0x00000001 , 0x000046b0 
+ 00018193  0x000043d2 rtn  0x00000034 
+ 00018194  0x000043d3 branch  0x00007fe7 
+ 00018195  0x000043d9 call  0x00007fe9 
+ 00018196  0x000043da fetch  0x00000002 , 0x00004682 
+ 00018197  0x000043db rtnbit1  0x00000000 
+ 00018198  0x000043dc rtnbit1  0x00000009 
+ 00018199  0x000043dd branch  0x00007fe7 
+ 00018200  0x000043e2 fetch  0x00000001 , 0x0000469a 
+ 00018201  0x000043e3 bbit1  0x00000001 , 0x0000471c 
+ 00018202  0x000043e4 bbit1  0x00000000 , 0x0000471f 
+ 00018203  0x000043e5 rtn 
+ 00018204  0x000043e8 fetch  0x00000001 , 0x00004093 
+ 00018205  0x000043e9 rtnne  0x00000003 
+ 00018206  0x000043ea branch  0x000046d9 
+ 00018207  0x000043ed branch  0x000046d9 
+ 00018208  0x000043f1 disable  0x0000002c 
+ 00018209  0x000043f2 fetch  0x00000002 , 0x000046d9 
+ 00018210  0x000043f3 store  0x00000002 , 0x000046db 
+ 00018211  0x000043f5 call  0x00004713 
+ 00018212  0x000043f6 branch  0x00004718 , 0x00000028 
+ 00018213  0x000043f8 call  0x00004708 
+ 00018214  0x000043f9 nrtn  0x00000028 
+ 00018215  0x000043fa enable  0x0000002c 
+ 00018216  0x000043fb rtn 
+ 00018217  0x00004400 call  0x00004720 
+ 00018218  0x00004401 nrtn  0x0000002c 
+ 00018219  0x00004402 deposit  0x00000011 
+ 00018220  0x00004403 branch  0x00004730 , 0x00000034 
+ 00018221  0x00004405 call  0x00003406 
+ 00018222  0x00004406 arg  0x000046f1 , 0x00000013 
+ 00018223  0x00004407 branch  0x00004732 
+ 00018224  0x0000440a call  0x00003408 
+ 00018225  0x0000440b arg  0x00004719 , 0x00000013 
+ 00018226  0x0000440e arg  0x00000005 , 0x0000003f 
+ 00018227  0x0000440f imul32  0x00000007 , 0x0000003f 
+ 00018228  0x00004410 iadd  0x00000013 , 0x00000013 
+ 00018229  0x00004414 ifetch  0x00000001 , 0x00000013 
+ 00018230  0x00004415 rtn  0x00000034 
+ 00018231  0x00004416 call  0x00004762 
+ 00018232  0x00004417 increase  0x00000001 , 0x00000013 
+ 00018233  0x00004418 branch  0x00004735 
+ 00018234  0x0000441c fetch  0x00000002 , 0x00004682 
+ 00018235  0x0000441d bbit1  0x00000009 , 0x0000473e 
+ 00018236  0x0000441e bbit1  0x00000000 , 0x0000474e 
+ 00018237  0x0000441f rtn 
+ 00018238  0x00004422 call  0x00005892 
+ 00018239  0x00004423 nrtn  0x00000034 
+ 00018240  0x00004424 call  0x00004765 
+ 00018241  0x00004425 nrtn  0x00000028 
+ 00018242  0x00004426 pincrease  0xffffffff 
+ 00018243  0x00004427 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018244  0x00004428 arg  0x00004741 , 0x00000002 
+ 00018245  0x00004429 iadd  0x00000002 , 0x00000006 
+ 00018246  0x0000442b ifetch  0x00000001 , 0x00000006 
+ 00018247  0x0000442c copy  0x0000003f , 0x00000011 
+ 00018248  0x0000442d ifetcht  0x00000002 , 0x00000006 
+ 00018249  0x0000442e call  0x00007ea5 
+ 00018250  0x0000442f call  0x00005a64 
+ 00018251  0x00004430 copy  0x00000011 , 0x00000039 
+ 00018252  0x00004431 call  0x00007e9f 
+ 00018253  0x00004432 branch  0x00007f01 
+ 00018254  0x00004436 call  0x00005271 
+ 00018255  0x00004437 nrtn  0x00000034 
+ 00018256  0x00004438 call  0x00004765 
+ 00018257  0x00004439 nrtn  0x00000028 
+ 00018258  0x0000443a pincrease  0xffffffff 
+ 00018259  0x0000443b mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018260  0x0000443c arg  0x000047a0 , 0x00000002 
+ 00018261  0x0000443d iadd  0x00000002 , 0x00000006 
+ 00018262  0x0000443e ifetch  0x00000005 , 0x00000006 
+ 00018263  0x0000443f store  0x00000005 , 0x0000479b 
+ 00018264  0x00004441 fetch  0x00000001 , 0x0000479b 
+ 00018265  0x00004442 copy  0x0000003f , 0x00000011 
+ 00018266  0x00004443 call  0x00004d63 
+ 00018267  0x00004444 fetch  0x00000002 , 0x0000424e 
+ 00018268  0x00004445 istore  0x00000002 , 0x00000005 
+ 00018269  0x00004446 setarg  0x000000a1 
+ 00018270  0x00004447 istore  0x00000001 , 0x00000005 
+ 00018271  0x00004448 fetch  0x00000004 , 0x0000479c 
+ 00018272  0x00004449 istore  0x00000009 , 0x00000005 
+ 00018273  0x0000444a rtn 
+ 00018274  0x0000444f store  0x00000001 , 0x00000a9a 
+ 00018275  0x00004450 arg  0x00000a9a , 0x00000011 
+ 00018276  0x00004451 branch  0x00007e3d 
+ 00018277  0x00004454 arg  0x00000a9a , 0x00000011 
+ 00018278  0x00004455 call  0x00007e54 
+ 00018279  0x00004456 nrtn  0x00000028 
+ 00018280  0x00004457 fetch  0x00000001 , 0x00000a9a 
+ 00018281  0x00004458 rtn 
+ 00018282  0x0000445c fetch  0x00000002 , 0x00000478 
+ 00018283  0x0000445d beq  0x00000018 , 0x0000465f 
+ 00018284  0x0000445e rtn 
+ 00018285  0x00004461 setarg  0x00000002 
+ 00018286  0x00004462 store  0x00000001 , 0x000048eb 
+ 00018287  0x00004464 setarg  0x00200008 
+ 00018288  0x00004465 store  0x00000004 , 0x000046c1 
+ 00018289  0x00004466 setarg  0x012c0005 
+ 00018290  0x00004467 istore  0x00000004 , 0x00000005 
+ 00018291  0x0000446a jam  0x00000017 , 0x000044a6 
+ 00018292  0x0000446d setarg  0x0000001b 
+ 00018293  0x0000446e store  0x00000002 , 0x000044fa 
+ 00018294  0x0000446f call  0x00005810 
+ 00018295  0x00004470 call  0x0000582c 
+ 00018296  0x00004471 call  0x00005839 
+ 00018297  0x00004472 branch  0x00005818 
+ 00018298  0x00004477 arg  0x00000028 , 0x00000039 
+ 00018299  0x00004478 arg  0x00004741 , 0x00000005 
+ 00018300  0x00004479 arg  0x0000949f , 0x00000006 
+ 00018301  0x0000447a call  0x00007ef4 
+ 00018302  0x0000447b arg  0x00000028 , 0x00000039 
+ 00018303  0x0000447c arg  0x000047a0 , 0x00000005 
+ 00018304  0x0000447d arg  0x000094c7 , 0x00000006 
+ 00018305  0x0000447e branch  0x00007ef4 
+ 00018306  0x00004482 arg  0x0000017e , 0x00000039 
+ 00018307  0x00004483 arg  0x0000913a , 0x00000006 
+ 00018308  0x00004484 branch  0x00007ef4 
+ 00018309  0x00004488 arg  0x000001e7 , 0x00000039 
+ 00018310  0x00004489 arg  0x000092b8 , 0x00000006 
+ 00018311  0x0000448a branch  0x00007ef4 
+ 00018312  0x0000448f call  0x000047ae 
+ 00018313  0x00004490 nrtn  0x00000028 
+ 00018314  0x00004491 fetch  0x00000001 , 0x0000469f 
+ 00018315  0x00004492 call  0x00004790 
+ 00018316  0x00004493 fetch  0x00000001 , 0x000046a0 
+ 00018317  0x00004494 call  0x00004790 
+ 00018318  0x00004495 fetch  0x00000001 , 0x000046a1 
+ 00018319  0x00004496 branch  0x00004790 
+ 00018320  0x00004499 rtn  0x00000034 
+ 00018321  0x0000449a or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018322  0x0000449b branch  0x000067f9 
+ 00018323  0x0000449f call  0x000047ae 
+ 00018324  0x000044a0 nrtn  0x00000028 
+ 00018325  0x000044a1 call  0x00004797 
+ 00018326  0x000044a2 branch  0x000047b4 
+ 00018327  0x000044a5 arg  0x00000000 , 0x00000011 
+ 00018328  0x000044a6 fetch  0x00000001 , 0x0000469f 
+ 00018329  0x000044a7 call  0x000047a9 
+ 00018330  0x000044a8 nsetflag  0x00000034 , 0x00000000 , 0x00000011 
+ 00018331  0x000044a9 fetch  0x00000001 , 0x000046a0 
+ 00018332  0x000044aa call  0x000047a9 
+ 00018333  0x000044ab nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00018334  0x000044ac fetch  0x00000001 , 0x000046a1 
+ 00018335  0x000044ad call  0x000047a9 
+ 00018336  0x000044ae nsetflag  0x00000034 , 0x00000002 , 0x00000011 
+ 00018337  0x000044af copy  0x00000011 , 0x0000003f 
+ 00018338  0x000044b0 store  0x00000001 , 0x000046a9 
+ 00018339  0x000044b1 fetch  0x00000001 , 0x0000469e 
+ 00018340  0x000044b2 imul32  0x00000011 , 0x0000003f 
+ 00018341  0x000044b3 fetcht  0x00000002 , 0x0000469c 
+ 00018342  0x000044b4 iadd  0x00000002 , 0x0000003f 
+ 00018343  0x000044b5 store  0x00000002 , 0x000046aa 
+ 00018344  0x000044b6 rtn 
+ 00018345  0x000044b9 rtn  0x00000034 
+ 00018346  0x000044ba or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018347  0x000044bb call  0x0000681d 
+ 00018348  0x000044bc nbranch  0x00007ff1 , 0x00000001 
+ 00018349  0x000044bd branch  0x00007fef 
+ 00018350  0x000044c1 call  0x00007fe9 
+ 00018351  0x000044c2 fetch  0x00000001 , 0x000046a8 
+ 00018352  0x000044c3 nrtn  0x00000034 
+ 00018353  0x000044c4 fetch  0x00000001 , 0x0000469b 
+ 00018354  0x000044c5 rtn  0x00000034 
+ 00018355  0x000044c6 branch  0x00007fe7 
+ 00018356  0x000044ca call  0x0000666a 
+ 00018357  0x000044cb fetch  0x00000002 , 0x000046aa 
+ 00018358  0x000044cc arg  0x00000ac2 , 0x00000011 
+ 00018359  0x000044cd fetcht  0x00000001 , 0x0000469e 
+ 00018360  0x000044ce call  0x000066b3 
+ 00018361  0x000044cf call  0x0000666d 
+ 00018362  0x000044d1 fetch  0x00000001 , 0x00000ac2 
+ 00018363  0x000044d2 copy  0x0000003f , 0x00000039 
+ 00018364  0x000044d3 store  0x00000001 , 0x000043af 
+ 00018365  0x000044d4 call  0x00007ef4 
+ 00018366  0x000044d5 fetch  0x00000001 , 0x00000ac2 
+ 00018367  0x000044d6 copy  0x0000003f , 0x00000039 
+ 00018368  0x000044d7 store  0x00000001 , 0x00004515 
+ 00018369  0x000044d8 call  0x00007ef4 
+ 00018370  0x000044d9 ifetch  0x00000001 , 0x00000006 
+ 00018371  0x000044da store  0x00000001 , 0x000046e6 
+ 00018372  0x000044db ifetch  0x00000001 , 0x00000006 
+ 00018373  0x000044dc store  0x00000001 , 0x000046dd 
+ 00018374  0x000044dd rtn 
+ 00018375  0x000044e1 fetch  0x00000001 , 0x0000469a 
+ 00018376  0x000044e2 rtnbit0  0x00000001 
+ 00018377  0x000044e3 arg  0x00000003 , 0x00000002 
+ 00018378  0x000044e4 fetch  0x00000002 , 0x000046a4 
+ 00018379  0x000044e5 copy  0x0000003f , 0x00000012 
+ 00018380  0x000044e6 arg  0x000046a6 , 0x00000011 
+ 00018381  0x000044e7 call  0x000065df 
+ 00018382  0x000044e8 fetcht  0x00000002 , 0x000046a6 
+ 00018383  0x000044e9 setarg  0x00001b3a 
+ 00018384  0x000044ea isub  0x00000002 , 0x0000003e 
+ 00018385  0x000044eb nrtn  0x00000005 
+ 00018386  0x000044ec fetch  0x00000001 , 0x000046a8 
+ 00018387  0x000044ed rtn  0x00000034 
+ 00018388  0x000044ee copy  0x0000003f , 0x00000002 
+ 00018389  0x000044ef fetch  0x00000002 , 0x000046a4 
+ 00018390  0x000044f0 add  0x0000003f , 0x00000003 , 0x00000012 
+ 00018391  0x000044f1 arg  0x00000ac2 , 0x00000011 
+ 00018392  0x000044f2 call  0x000065df 
+ 00018393  0x000044f3 branch  0x000047e8 
+ 00018394  0x000044f6 fetch  0x00000002 , 0x000046a2 
+ 00018395  0x000044f7 rtn  0x00000034 
+ 00018396  0x000044f8 call  0x0000666a 
+ 00018397  0x000044f9 arg  0x00000001 , 0x00000002 
+ 00018398  0x000044fa arg  0x000046a8 , 0x00000011 
+ 00018399  0x000044fb call  0x000066b3 
+ 00018400  0x000044fd fetch  0x00000001 , 0x000046a8 
+ 00018401  0x000044fe rtn  0x00000034 
+ 00018402  0x00004500 fetch  0x00000002 , 0x000046a2 
+ 00018403  0x00004501 pincrease  0x00000001 
+ 00018404  0x00004502 arg  0x00000ac2 , 0x00000011 
+ 00018405  0x00004503 fetcht  0x00000001 , 0x000046a8 
+ 00018406  0x00004504 call  0x000066b3 
+ 00018407  0x00004505 call  0x0000666d 
+ 00018408  0x00004507 call  0x000047ba 
+ 00018409  0x00004509 ifetch  0x00000002 , 0x00000006 
+ 00018410  0x0000450a rtn  0x00000034 
+ 00018411  0x0000450b copy  0x0000003f , 0x00000005 
+ 00018412  0x0000450c ifetcht  0x00000001 , 0x00000006 
+ 00018413  0x0000450d copy  0x00000002 , 0x00000039 
+ 00018414  0x0000450e call  0x00007f01 
+ 00018415  0x0000450f branch  0x000047e9 
+ 00018416  0x00004514 fetch  0x00000001 , 0x0000469a 
+ 00018417  0x00004515 rtnbit0  0x00000001 
+ 00018418  0x00004516 fetch  0x00000002 , 0x000046ae 
+ 00018419  0x00004517 copy  0x0000003f , 0x00000012 
+ 00018420  0x00004518 arg  0x00000004 , 0x00000002 
+ 00018421  0x00004519 arg  0x00000ac2 , 0x00000011 
+ 00018422  0x0000451a call  0x000065df 
+ 00018423  0x0000451b fetch  0x00000001 , 0x00000ac2 
+ 00018424  0x0000451c bne  0x00000001 , 0x000047f9 
+ 00018425  0x0000451e setarg  0x00000001 
+ 00018426  0x0000451f store  0x00000001 , 0x00000ac2 
+ 00018427  0x00004520 force  0x00000003 , 0x00000039 
+ 00018428  0x00004521 call  0x0000630d 
+ 00018429  0x00004522 fetch  0x00000002 , 0x000046ae 
+ 00018430  0x00004523 copy  0x0000003f , 0x00000012 
+ 00018431  0x00004524 arg  0x00000004 , 0x00000002 
+ 00018432  0x00004525 arg  0x00000ac2 , 0x00000011 
+ 00018433  0x00004526 call  0x00006606 
+ 00018434  0x00004528 fetch  0x00000003 , 0x00000ac3 
+ 00018435  0x00004529 store  0x00000003 , 0x000040a0 
+ 00018436  0x0000452a store  0x00000003 , 0x000044a0 
+ 00018437  0x0000452b rtn 
+ 00018438  0x0000452f branch  0x000046d9 
+ 00018439  0x00004533 arg  0x00000000 , 0x00000011 
+ 00018440  0x00004534 arg  0x000048d4 , 0x00000013 
+ 00018441  0x00004535 call  0x00007d24 
+ 00018442  0x00004536 call  0x000046f4 
+ 00018443  0x00004538 fetch  0x00000001 , 0x000048eb 
+ 00018444  0x00004539 store  0x00000001 , 0x000048ec 
+ 00018445  0x0000453a rtn 
+ 00018446  0x0000453f setarg  0x00000000 
+ 00018447  0x00004540 call  0x00004816 
+ 00018448  0x00004541 jam  0x00000001 , 0x00004679 
+ 00018449  0x00004542 call  0x00007cd3 
+ 00018450  0x00004543 call  0x00007cdd 
+ 00018451  0x00004544 fetch  0x00000002 , 0x00004682 
+ 00018452  0x00004545 rtnbit1  0x0000000c 
+ 00018453  0x00004546 branch  0x0000340a 
+ 00018454  0x00004549 fetcht  0x00000002 , 0x0000423f 
+ 00018455  0x0000454a istore  0x00000001 , 0x00000002 
+ 00018456  0x0000454b ifetch  0x00000001 , 0x00000005 
+ 00018457  0x0000454c store  0x00000001 , 0x00004685 
+ 00018458  0x0000454d rtn 
+ 00018459  0x00004551 fetch  0x00000002 , 0x0000423f 
+ 00018460  0x00004552 ifetch  0x00000001 , 0x0000003f 
+ 00018461  0x00004553 rtnne  0x00000000 
+ 00018462  0x00004554 branch  0x0000340a 
+ 00018463  0x00004558 fetcht  0x00000002 , 0x0000423f 
+ 00018464  0x00004559 ifetch  0x00000001 , 0x00000002 
+ 00018465  0x0000455a beq  0x00000001 , 0x0000482a 
+ 00018466  0x0000455c setarg  0x00000001 
+ 00018467  0x0000455d fetcht  0x00000002 , 0x0000423f 
+ 00018468  0x0000455e istore  0x00000001 , 0x00000002 
+ 00018469  0x0000455f add  0x00000002 , 0x00000002 , 0x00000006 
+ 00018470  0x00004560 ifetch  0x00000001 , 0x00000006 
+ 00018471  0x00004561 istore  0x00000001 , 0x00004685 
+ 00018472  0x00004562 ifetch  0x00000002 , 0x00000006 
+ 00018473  0x00004563 branch  0x00007f9c 
+ 00018474  0x00004566 setarg  0x00000002 
+ 00018475  0x00004567 call  0x00004816 
+ 00018476  0x00004568 add  0x00000002 , 0x00000005 , 0x00000006 
+ 00018477  0x00004569 ifetch  0x00000002 , 0x00000006 
+ 00018478  0x0000456a branch  0x0000340a , 0x00000034 
+ 00018479  0x0000456b branch  0x00007f9c 
+ 00018480  0x00004572 store  0x00000006 , 0x00000101 
+ 00018481  0x00004573 fetch  0x00000001 , 0x00000101 
+ 00018482  0x00004574 store  0x00000001 , 0x0000010c 
+ 00018483  0x00004575 ifetch  0x00000001 , 0x00000006 
+ 00018484  0x00004576 store  0x00000001 , 0x0000010b 
+ 00018485  0x00004577 ifetch  0x00000001 , 0x00000006 
+ 00018486  0x00004578 store  0x00000001 , 0x0000010a 
+ 00018487  0x00004579 ifetch  0x00000001 , 0x00000006 
+ 00018488  0x0000457a store  0x00000001 , 0x00000109 
+ 00018489  0x0000457b ifetch  0x00000001 , 0x00000006 
+ 00018490  0x0000457c store  0x00000001 , 0x00000108 
+ 00018491  0x0000457d ifetch  0x00000001 , 0x00000006 
+ 00018492  0x0000457e store  0x00000001 , 0x00000107 
+ 00018493  0x0000457f fetch  0x00000006 , 0x00000107 
+ 00018494  0x00004580 rtn 
+ 00018495  0x00004583 call  0x000068a2 
+ 00018496  0x00004584 fetch  0x00000001 , 0x00004223 
+ 00018497  0x00004585 store  0x00000001 , 0x000044a0 
+ 00018498  0x00004586 fetch  0x00000001 , 0x00004225 
+ 00018499  0x00004587 istore  0x00000001 , 0x00000005 
+ 00018500  0x00004588 fetch  0x00000001 , 0x00004227 
+ 00018501  0x00004589 istore  0x00000001 , 0x00000005 
+ 00018502  0x0000458a fetch  0x00000003 , 0x000044a0 
+ 00018503  0x0000458b store  0x00000003 , 0x000040a0 
+ 00018504  0x0000458c rtn 
+ 00018505  0x00004599 fetch  0x00000002 , 0x00004203 
+ 00018506  0x0000459a iadd  0x00000012 , 0x0000003f 
+ 00018507  0x0000459b byteswap  0x0000003f , 0x0000003f 
+ 00018508  0x0000459c store  0x00000002 , 0x000001f7 
+ 00018509  0x0000459d copy  0x00000002 , 0x00000012 
+ 00018510  0x0000459f call  0x0000489b 
+ 00018511  0x000045a0 setarg  0x000000a0 
+ 00018512  0x000045a1 call  0x0000488d 
+ 00018513  0x000045a2 fetch  0x00000001 , 0x000001f7 
+ 00018514  0x000045a3 call  0x0000488d 
+ 00018515  0x000045a4 bmark1  0x00000028 , 0x00004856 
+ 00018516  0x000045a5 fetch  0x00000001 , 0x000001f8 
+ 00018517  0x000045a6 call  0x0000488d 
+ 00018518  0x000045a8 call  0x000048a1 
+ 00018519  0x000045aa call  0x0000489b 
+ 00018520  0x000045ab setarg  0x000000a1 
+ 00018521  0x000045ac call  0x0000488d 
+ 00018522  0x000045af call  0x0000487f 
+ 00018523  0x000045b0 istore  0x00000001 , 0x00000011 
+ 00018524  0x000045b1 increase  0x00000001 , 0x00000011 
+ 00018525  0x000045b2 increase  0xffffffff , 0x00000012 
+ 00018526  0x000045b3 nbranch  0x0000485a , 0x00000005 
+ 00018527  0x000045b4 branch  0x000048a1 
+ 00018528  0x000045c0 byteswap  0x00000012 , 0x0000003f 
+ 00018529  0x000045c1 store  0x00000002 , 0x000001f7 
+ 00018530  0x000045c2 copy  0x00000002 , 0x00000012 
+ 00018531  0x000045c4 call  0x0000489b 
+ 00018532  0x000045c5 setarg  0x000000a0 
+ 00018533  0x000045c6 call  0x0000488d 
+ 00018534  0x000045c8 fetch  0x00000001 , 0x000001f7 
+ 00018535  0x000045c9 call  0x0000488d 
+ 00018536  0x000045ca bmark1  0x00000028 , 0x0000486b 
+ 00018537  0x000045cb fetch  0x00000001 , 0x000001f8 
+ 00018538  0x000045cc call  0x0000488d 
+ 00018539  0x000045ce ifetch  0x00000001 , 0x00000011 
+ 00018540  0x000045cf call  0x0000488d 
+ 00018541  0x000045d0 increase  0x00000001 , 0x00000011 
+ 00018542  0x000045d1 increase  0xffffffff , 0x00000012 
+ 00018543  0x000045d2 nbranch  0x0000486b , 0x00000005 
+ 00018544  0x000045d3 branch  0x000048a1 
+ 00018545  0x000045d8 arg  0x0000000a , 0x00000039 
+ 00018546  0x000045d9 call  0x000048be 
+ 00018547  0x000045da call  0x000048a6 
+ 00018548  0x000045db call  0x000048d2 
+ 00018549  0x000045dd call  0x000048c7 
+ 00018550  0x000045de branch  0x000048a9 , 0x00000034 
+ 00018551  0x000045df loop  0x00004875 
+ 00018552  0x000045e0 branch  0x000048a9 
+ 00018553  0x000045e5 call  0x000048a9 
+ 00018554  0x000045e6 call  0x000048af 
+ 00018555  0x000045e7 call  0x000048d2 
+ 00018556  0x000045e8 call  0x000048a6 
+ 00018557  0x000045e9 call  0x000048d2 
+ 00018558  0x000045ea branch  0x000048a9 
+ 00018559  0x000045f0 arg  0x00000008 , 0x00000039 
+ 00018560  0x000045f1 arg  0x00000000 , 0x00000013 
+ 00018561  0x000045f2 call  0x000048be 
+ 00018562  0x000045f4 call  0x000048a6 
+ 00018563  0x000045f5 call  0x000048d2 
+ 00018564  0x000045f6 lshift  0x00000013 , 0x00000013 
+ 00018565  0x000045f7 call  0x000048c7 
+ 00018566  0x000045f8 iadd  0x00000013 , 0x00000013 
+ 00018567  0x000045f9 call  0x000048d2 
+ 00018568  0x000045fa call  0x000048a9 
+ 00018569  0x000045fb loop  0x00004882 
+ 00018570  0x000045fc call  0x00004879 
+ 00018571  0x000045fd copy  0x00000013 , 0x0000003f 
+ 00018572  0x000045fe rtn 
+ 00018573  0x00004603 arg  0x00000008 , 0x00000039 
+ 00018574  0x00004604 copy  0x0000003f , 0x00000013 
+ 00018575  0x00004605 call  0x000048a9 
+ 00018576  0x00004607 isolate1  0x00000007 , 0x00000013 
+ 00018577  0x00004608 call  0x000048ac , 0x00000001 
+ 00018578  0x00004609 ncall  0x000048af , 0x00000001 
+ 00018579  0x0000460a lshift  0x00000013 , 0x00000013 
+ 00018580  0x0000460b call  0x000048d2 
+ 00018581  0x0000460c call  0x000048a6 
+ 00018582  0x0000460d call  0x000048d2 
+ 00018583  0x0000460e call  0x000048a9 
+ 00018584  0x0000460f call  0x000048d2 
+ 00018585  0x00004610 loop  0x00004890 
+ 00018586  0x00004611 branch  0x00004871 
+ 00018587  0x00004616 call  0x000048ac 
+ 00018588  0x00004617 call  0x000048a6 
+ 00018589  0x00004618 call  0x000048d2 
+ 00018590  0x00004619 call  0x000048af 
+ 00018591  0x0000461a call  0x000048d2 
+ 00018592  0x0000461b branch  0x000048a9 
+ 00018593  0x00004620 call  0x000048af 
+ 00018594  0x00004621 call  0x000048a6 
+ 00018595  0x00004622 call  0x000048d2 
+ 00018596  0x00004623 call  0x000048ac 
+ 00018597  0x00004624 branch  0x000048d2 
+ 00018598  0x00004629 enable  0x00000028 
+ 00018599  0x0000462a fetch  0x00000001 , 0x00004ffe 
+ 00018600  0x0000462b branch  0x000048b2 
+ 00018601  0x0000462f disable  0x00000028 
+ 00018602  0x00004630 fetch  0x00000001 , 0x00004ffe 
+ 00018603  0x00004631 branch  0x000048b2 
+ 00018604  0x00004635 enable  0x00000028 
+ 00018605  0x00004636 fetch  0x00000001 , 0x00004fff 
+ 00018606  0x00004637 branch  0x000048b2 
+ 00018607  0x0000463b disable  0x00000028 
+ 00018608  0x0000463c fetch  0x00000001 , 0x00004fff 
+ 00018609  0x0000463d branch  0x000048b2 
+ 00018610  0x00004643 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018611  0x00004644 rshift3  0x0000003f , 0x0000003f 
+ 00018612  0x00004645 arg  0x00008070 , 0x00000002 
+ 00018613  0x00004646 iadd  0x00000002 , 0x00000002 
+ 00018614  0x00004647 ifetch  0x00000001 , 0x00000002 
+ 00018615  0x00004648 qset1  0x0000003f 
+ 00018616  0x00004649 istore  0x00000001 , 0x00000002 
+ 00018617  0x0000464a increase  0x00000004 , 0x00000002 
+ 00018618  0x0000464b ifetch  0x00000001 , 0x00000002 
+ 00018619  0x0000464c qsetflag  0x00000028 , 0x0000003f 
+ 00018620  0x0000464d istore  0x00000001 , 0x00000002 
+ 00018621  0x0000464e rtn 
+ 00018622  0x00004652 fetch  0x00000001 , 0x00004fff 
+ 00018623  0x00004653 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018624  0x00004654 rshift3  0x0000003f , 0x0000003f 
+ 00018625  0x00004655 arg  0x00008070 , 0x00000002 
+ 00018626  0x00004656 iadd  0x00000002 , 0x00000002 
+ 00018627  0x00004657 ifetch  0x00000001 , 0x00000002 
+ 00018628  0x00004658 qset0  0x0000003f 
+ 00018629  0x00004659 istore  0x00000001 , 0x00000002 
+ 00018630  0x0000465a rtn 
+ 00018631  0x00004660 nop  0x00000004 
+ 00018632  0x00004661 fetch  0x00000001 , 0x00004fff 
+ 00018633  0x00004662 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018634  0x00004663 rshift3  0x0000003f , 0x0000003f 
+ 00018635  0x00004664 arg  0x0000811c , 0x00000002 
+ 00018636  0x00004665 iadd  0x00000002 , 0x00000002 
+ 00018637  0x00004666 setarg  0x00000000 
+ 00018638  0x00004667 ifetcht  0x00000001 , 0x00000002 
+ 00018639  0x00004668 qisolate1  0x00000002 
+ 00018640  0x00004669 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00018641  0x0000466a rtn 
+ 00018642  0x0000466f rtn 
+ 00018643  0x00004676 bpatch  0x000000f6 , 0x0000401e 
+ 00018644  0x00004677 hfetch  0x00000001 , 0x00008a26 
+ 00018645  0x00004678 isolate1  0x00000007 , 0x0000003f 
+ 00018646  0x00004679 call  0x000048ea , 0x00000001 
+ 00018647  0x0000467a call  0x0000492e 
+ 00018648  0x0000467b hfetch  0x00000001 , 0x00008a26 
+ 00018649  0x0000467c store  0x00000001 , 0x00000b22 
+ 00018650  0x0000467d hfetch  0x00000001 , 0x00008a27 
+ 00018651  0x0000467e store  0x00000001 , 0x00000b23 
+ 00018652  0x0000467f hstore  0x00000001 , 0x00008a27 
+ 00018653  0x00004680 pinvert 
+ 00018654  0x00004681 fetcht  0x00000001 , 0x00000d37 
+ 00018655  0x00004682 iand  0x00000002 , 0x0000003f 
+ 00018656  0x00004683 store  0x00000001 , 0x00000d37 
+ 00018657  0x00004684 jam  0x000000e0 , 0x00008a26 
+ 00018658  0x00004685 fetch  0x00000001 , 0x00000b23 
+ 00018659  0x00004686 compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018660  0x00004687 call  0x00004941 , 0x00000001 
+ 00018661  0x00004688 fetch  0x00000001 , 0x00000b22 
+ 00018662  0x00004689 compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018663  0x0000468a call  0x0000494a , 0x00000001 
+ 00018664  0x0000468b call  0x00004b61 
+ 00018665  0x0000468c branch  0x00004903 
+ 00018666  0x0000468f bpatch  0x000000f7 , 0x0000401e 
+ 00018667  0x00004690 call  0x00004919 
+ 00018668  0x00004691 jam  0x00000000 , 0x00008a00 
+ 00018669  0x00004692 nop  0x00002710 
+ 00018670  0x00004693 jam  0x000000c0 , 0x00008a10 
+ 00018671  0x00004694 hfetch  0x00000002 , 0x00008050 
+ 00018672  0x00004695 set0  0x0000000a , 0x0000003f 
+ 00018673  0x00004696 hstore  0x00000002 , 0x00008050 
+ 00018674  0x00004697 jam  0x0000003c , 0x00008a00 
+ 00018675  0x00004698 jam  0x000000ff , 0x00008a26 
+ 00018676  0x00004699 jam  0x000000ff , 0x00008a27 
+ 00018677  0x0000469a jam  0x00000000 , 0x00008a04 
+ 00018678  0x0000469b jam  0x00000002 , 0x00000c6b 
+ 00018679  0x0000469c setarg  0x00000d9d 
+ 00018680  0x0000469d arg  0x00000c6e , 0x00000005 
+ 00018681  0x0000469e isub  0x00000005 , 0x00000039 
+ 00018682  0x0000469f branch  0x00007ed4 
+ 00018683  0x000046a2 fetcht  0x00000001 , 0x00000c6c 
+ 00018684  0x000046a3 branch  0x000067fb 
+ 00018685  0x000046a5 fetch  0x00000001 , 0x00000d45 
+ 00018686  0x000046a6 rtn  0x00000034 
+ 00018687  0x000046a7 fetcht  0x00000001 , 0x00000c6c 
+ 00018688  0x000046a8 call  0x0000681d 
+ 00018689  0x000046a9 branch  0x000048ea , 0x00000001 
+ 00018690  0x000046aa rtn 
+ 00018691  0x000046ae arg  0x00000000 , 0x00000007 
+ 00018692  0x000046af call  0x00007f16 
+ 00018693  0x000046b0 nrtn  0x00000034 
+ 00018694  0x000046b1 fetch  0x00000001 , 0x00000d46 
+ 00018695  0x000046b2 nrtn  0x00000034 
+ 00018696  0x000046b3 fetch  0x00000001 , 0x00000d45 
+ 00018697  0x000046b4 ncall  0x00004bb7 , 0x00000034 
+ 00018698  0x000046b5 rtn 
+ 00018699  0x000046b8 arg  0x00000b68 , 0x00000005 
+ 00018700  0x000046b9 setsect  0x00000000 , 0x00011212 
+ 00018701  0x000046ba setsect  0x00000001 , 0x00008000 
+ 00018702  0x000046bb setsect  0x00000002 , 0x00000000 
+ 00018703  0x000046bc setsect  0x00000003 , 0x00010000 
+ 00018704  0x000046bd istore  0x00000009 , 0x00000005 
+ 00018705  0x000046be setsect  0x00000000 , 0x00022412 
+ 00018706  0x000046bf setsect  0x00000001 , 0x00008604 
+ 00018707  0x000046c0 setsect  0x00000002 , 0x00001000 
+ 00018708  0x000046c1 setsect  0x00000003 , 0x00000008 
+ 00018709  0x000046c2 istore  0x00000009 , 0x00000005 
+ 00018710  0x000046c3 setsect  0x00000000 , 0x00000001 
+ 00018711  0x000046c4 istore  0x00000001 , 0x00000005 
+ 00018712  0x000046c5 rtn 
+ 00018713  0x000046c8 jam  0x00000002 , 0x00000c6b 
+ 00018714  0x000046c9 setarg  0x00000000 
+ 00018715  0x000046ca store  0x00000001 , 0x00000b67 
+ 00018716  0x000046cb store  0x00000002 , 0x00000c65 
+ 00018717  0x000046cc pincrease  0x00000001 
+ 00018718  0x000046cd store  0x00000002 , 0x00000c67 
+ 00018719  0x000046ce pincrease  0x00000001 
+ 00018720  0x000046cf store  0x00000002 , 0x00000c69 
+ 00018721  0x000046d0 setarg  0x00008ffa 
+ 00018722  0x000046d1 store  0x00000002 , 0x00000b7c 
+ 00018723  0x000046d2 setarg  0x0000903a 
+ 00018724  0x000046d3 store  0x00000002 , 0x00000b7e 
+ 00018725  0x000046d4 arg  0x00000b80 , 0x00000005 
+ 00018726  0x000046d5 arg  0x000090fe , 0x00000006 
+ 00018727  0x000046d6 call  0x00007eb3 
+ 00018728  0x000046d7 fetch  0x00000001 , 0x00000c6d 
+ 00018729  0x000046d8 ncall  0x0000492b , 0x00000034 
+ 00018730  0x000046d9 branch  0x0000490b 
+ 00018731  0x000046dc store  0x00000001 , 0x00000ba2 
+ 00018732  0x000046dd store  0x00000001 , 0x00000bbb 
+ 00018733  0x000046de rtn 
+ 00018734  0x000046e0 hfetch  0x00000001 , 0x00008a26 
+ 00018735  0x000046e1 bbit1  0x00000006 , 0x00004931 
+ 00018736  0x000046e2 rtn 
+ 00018737  0x000046e5 call  0x00004936 
+ 00018738  0x000046e6 call  0x00007f15 
+ 00018739  0x000046e7 setarg  0x00000280 
+ 00018740  0x000046e8 arg  0x00000000 , 0x00000007 
+ 00018741  0x000046e9 branch  0x00007f08 
+ 00018742  0x000046ec fetch  0x00000001 , 0x00000d36 
+ 00018743  0x000046ed bne  0x00000002 , 0x0000493b 
+ 00018744  0x000046ee jam  0x00000000 , 0x00000d46 
+ 00018745  0x000046ef jam  0x00000000 , 0x00000d47 
+ 00018746  0x000046f0 rtn 
+ 00018747  0x000046f2 fetch  0x00000001 , 0x00000d53 
+ 00018748  0x000046f3 rtn  0x00000034 
+ 00018749  0x000046f4 jam  0x00000000 , 0x00000d53 
+ 00018750  0x000046f5 jam  0x00000002 , 0x00000d36 
+ 00018751  0x000046f6 jam  0x00000001 , 0x00000d45 
+ 00018752  0x000046f7 rtn 
+ 00018753  0x000046fa jam  0x00000001 , 0x00008a27 
+ 00018754  0x000046fb branch  0x00004b37 
+ 00018755  0x000046fe fetch  0x00000001 , 0x00000b22 
+ 00018756  0x000046ff bbit1  0x00000004 , 0x00004955 
+ 00018757  0x00004700 rtn 
+ 00018758  0x00004703 hfetch  0x00000001 , 0x00008a18 
+ 00018759  0x00004704 istore  0x00000001 , 0x00000005 
+ 00018760  0x00004705 loop  0x00004946 
+ 00018761  0x00004706 rtn 
+ 00018762  0x00004709 bpatch  0x000000f8 , 0x0000401f 
+ 00018763  0x0000470a jam  0x00000011 , 0x00008a26 
+ 00018764  0x0000470b hfetch  0x00000001 , 0x00008a20 
+ 00018765  0x0000470c store  0x00000001 , 0x00000b24 
+ 00018766  0x0000470d copy  0x0000003f , 0x00000039 
+ 00018767  0x0000470e branch  0x00004943 , 0x00000034 
+ 00018768  0x0000470f arg  0x00000c6e , 0x00000005 
+ 00018769  0x00004710 call  0x00004946 
+ 00018770  0x00004711 fetch  0x00000001 , 0x00000b24 
+ 00018771  0x00004712 sub  0x0000003f , 0x00000007 , 0x0000003e 
+ 00018772  0x00004713 rtn  0x00000002 
+ 00018773  0x00004715 fetch  0x00000001 , 0x00000c6e 
+ 00018774  0x00004716 and_into  0x00000080 , 0x0000003f 
+ 00018775  0x00004717 beq  0x00000080 , 0x0000495a 
+ 00018776  0x00004718 beq  0x00000000 , 0x00004962 
+ 00018777  0x00004719 branch  0x00002a8c 
+ 00018778  0x0000471c fetch  0x00000001 , 0x00000c6e 
+ 00018779  0x0000471d rshift4  0x0000003f , 0x0000003f 
+ 00018780  0x0000471e rshift  0x0000003f , 0x0000003f 
+ 00018781  0x0000471f and_into  0x00000003 , 0x0000003f 
+ 00018782  0x00004720 beq  0x00000000 , 0x0000496a 
+ 00018783  0x00004721 beq  0x00000001 , 0x00004970 
+ 00018784  0x00004722 beq  0x00000002 , 0x00004975 
+ 00018785  0x00004723 branch  0x00002a8c 
+ 00018786  0x00004726 fetch  0x00000001 , 0x00000c6e 
+ 00018787  0x00004727 rshift4  0x0000003f , 0x0000003f 
+ 00018788  0x00004728 rshift  0x0000003f , 0x0000003f 
+ 00018789  0x00004729 and_into  0x00000003 , 0x0000003f 
+ 00018790  0x0000472a beq  0x00000000 , 0x00004976 
+ 00018791  0x0000472b beq  0x00000001 , 0x0000497e 
+ 00018792  0x0000472c beq  0x00000002 , 0x00004983 
+ 00018793  0x0000472d branch  0x00002a8c 
+ 00018794  0x00004730 fetch  0x00000001 , 0x00000c6f 
+ 00018795  0x00004731 beq  0x00000008 , 0x0000498a 
+ 00018796  0x00004732 beq  0x00000006 , 0x000049a0 
+ 00018797  0x00004733 beq  0x0000000a , 0x000049ea 
+ 00018798  0x00004734 beq  0x00000000 , 0x000049fc 
+ 00018799  0x00004735 branch  0x00004984 
+ 00018800  0x00004738 fetch  0x00000001 , 0x00000c6f 
+ 00018801  0x00004739 beq  0x00000002 , 0x00004a2f 
+ 00018802  0x0000473a beq  0x00000001 , 0x00004a33 
+ 00018803  0x0000473b beq  0x00000003 , 0x00004a45 
+ 00018804  0x0000473c branch  0x00004984 
+ 00018805  0x0000473f branch  0x00004984 
+ 00018806  0x00004742 fetch  0x00000001 , 0x00000c6f 
+ 00018807  0x00004743 beq  0x00000001 , 0x00004a4f 
+ 00018808  0x00004744 beq  0x00000003 , 0x00004a79 
+ 00018809  0x00004745 beq  0x00000005 , 0x00004aa3 
+ 00018810  0x00004746 beq  0x00000009 , 0x00004abc 
+ 00018811  0x00004747 beq  0x0000000b , 0x00004ad7 
+ 00018812  0x00004748 beq  0x00000007 , 0x00004984 
+ 00018813  0x00004749 branch  0x00004984 
+ 00018814  0x0000474c fetch  0x00000001 , 0x00000c6f 
+ 00018815  0x0000474d beq  0x0000000a , 0x00004ae8 
+ 00018816  0x0000474e beq  0x00000009 , 0x00004af9 
+ 00018817  0x0000474f beq  0x0000000b , 0x00004b11 
+ 00018818  0x00004750 branch  0x00004984 
+ 00018819  0x00004753 branch  0x00004984 
+ 00018820  0x00004756 hfetch  0x00000001 , 0x00008a11 
+ 00018821  0x00004757 set1  0x00000000 , 0x0000003f 
+ 00018822  0x00004758 hstore  0x00000001 , 0x00008a11 
+ 00018823  0x00004759 branch  0x00004988 
+ 00018824  0x0000475c jam  0x00000040 , 0x00008a12 
+ 00018825  0x0000475d rtn 
+ 00018826  0x00004760 fetch  0x00000001 , 0x00000c6e 
+ 00018827  0x00004761 bne  0x00000080 , 0x00004984 
+ 00018828  0x00004762 fetch  0x00000001 , 0x00000c72 
+ 00018829  0x00004763 bne  0x00000000 , 0x00004984 
+ 00018830  0x00004764 fetch  0x00000001 , 0x00000c73 
+ 00018831  0x00004765 bne  0x00000000 , 0x00004984 
+ 00018832  0x00004766 fetch  0x00000001 , 0x00000c74 
+ 00018833  0x00004767 bne  0x00000001 , 0x00004984 
+ 00018834  0x00004768 fetch  0x00000001 , 0x00000c75 
+ 00018835  0x00004769 bne  0x00000000 , 0x00004984 
+ 00018836  0x0000476a fetch  0x00000001 , 0x00000c70 
+ 00018837  0x0000476b bne  0x00000000 , 0x00004984 
+ 00018838  0x0000476c fetch  0x00000001 , 0x00000c71 
+ 00018839  0x0000476d bne  0x00000000 , 0x00004984 
+ 00018840  0x0000476e fetch  0x00000001 , 0x00000c6b 
+ 00018841  0x0000476f beq  0x00000004 , 0x0000499c 
+ 00018842  0x00004770 beq  0x00000003 , 0x0000499e 
+ 00018843  0x00004771 branch  0x00004984 
+ 00018844  0x00004774 arg  0x00000001 , 0x00000012 
+ 00018845  0x00004775 branch  0x00004a14 
+ 00018846  0x00004778 arg  0x00000001 , 0x00000012 
+ 00018847  0x00004779 branch  0x00004a12 
+ 00018848  0x0000477c bpatch  0x000000f9 , 0x0000401f 
+ 00018849  0x0000477d set0  0x00000023 , 0x00000000 
+ 00018850  0x0000477e fetch  0x00000001 , 0x00000c71 
+ 00018851  0x0000477f beq  0x00000001 , 0x000049b6 
+ 00018852  0x00004780 beq  0x00000002 , 0x000049cf 
+ 00018853  0x00004781 beq  0x00000003 , 0x000049d2 
+ 00018854  0x00004782 beq  0x00000021 , 0x000049a9 
+ 00018855  0x00004783 beq  0x00000022 , 0x000049e0 
+ 00018856  0x00004784 branch  0x00004984 
+ 00018857  0x00004787 jam  0x00000000 , 0x00000d4b 
+ 00018858  0x00004788 fetch  0x00000001 , 0x00000c72 
+ 00018859  0x00004789 beq  0x00000000 , 0x000049ae 
+ 00018860  0x0000478a beq  0x00000001 , 0x000049b2 
+ 00018861  0x0000478b branch  0x00004984 
+ 00018862  0x0000478e arg  0x00000b93 , 0x00000011 
+ 00018863  0x0000478f ifetch  0x00000001 , 0x00000011 
+ 00018864  0x00004790 iforce  0x00000012 
+ 00018865  0x00004791 branch  0x00004b21 
+ 00018866  0x00004794 arg  0x00000bac , 0x00000011 
+ 00018867  0x00004795 ifetch  0x00000001 , 0x00000011 
+ 00018868  0x00004796 iforce  0x00000012 
+ 00018869  0x00004797 branch  0x00004b21 
+ 00018870  0x0000479d fetch  0x00000001 , 0x00000d48 
+ 00018871  0x0000479e ncall  0x000049c7 , 0x00000034 
+ 00018872  0x0000479f setarg  0x00000b68 
+ 00018873  0x000047a0 fetcht  0x00000001 , 0x00000b68 
+ 00018874  0x000047a2 store  0x00000002 , 0x00000d3f 
+ 00018875  0x000047a3 storet  0x00000001 , 0x00000d41 
+ 00018876  0x000047a4 fetch  0x00000001 , 0x00000c74 
+ 00018877  0x000047a5 isub  0x00000002 , 0x0000003e 
+ 00018878  0x000047a6 nbranch  0x000049c5 , 0x00000002 
+ 00018879  0x000047a8 fetch  0x00000001 , 0x00000d41 
+ 00018880  0x000047aa iforce  0x00000012 
+ 00018881  0x000047ab fetch  0x00000002 , 0x00000d3f 
+ 00018882  0x000047ac add  0x0000003f , 0x00000001 , 0x0000003f 
+ 00018883  0x000047ad iforce  0x00000011 
+ 00018884  0x000047ae branch  0x00004b21 
+ 00018885  0x000047b0 fetch  0x00000001 , 0x00000c74 
+ 00018886  0x000047b1 branch  0x000049c0 
+ 00018887  0x000047b4 hfetch  0x00000001 , 0x00008a04 
+ 00018888  0x000047b5 ncall  0x000049cb , 0x00000034 
+ 00018889  0x000047b6 jam  0x00000000 , 0x00000d48 
+ 00018890  0x000047b7 rtn 
+ 00018891  0x000047b9 hfetch  0x00000001 , 0x00008a04 
+ 00018892  0x000047ba set1  0x00000007 , 0x0000003f 
+ 00018893  0x000047bb hstore  0x00000001 , 0x00008a04 
+ 00018894  0x000047bc rtn 
+ 00018895  0x000047bf setarg  0x00000b80 
+ 00018896  0x000047c0 fetcht  0x00000001 , 0x00000b80 
+ 00018897  0x000047c1 branch  0x000049ba 
+ 00018898  0x000047c4 fetch  0x00000001 , 0x00000c70 
+ 00018899  0x000047c5 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00018900  0x000047c6 nbranch  0x00004984 , 0x00000002 
+ 00018901  0x000047c7 fetch  0x00000001 , 0x00000c70 
+ 00018902  0x000047c8 arg  0x00000be4 , 0x00000011 
+ 00018903  0x000047c9 beq  0x00000000 , 0x00004b1e 
+ 00018904  0x000047ca set1  0x00000023 , 0x00000000 
+ 00018905  0x000047cb arg  0x00000be9 , 0x00000011 
+ 00018906  0x000047cc beq  0x00000001 , 0x00004b1e 
+ 00018907  0x000047cd arg  0x00000c07 , 0x00000011 
+ 00018908  0x000047ce beq  0x00000002 , 0x00004b1e 
+ 00018909  0x000047cf arg  0x00000c47 , 0x00000011 
+ 00018910  0x000047d0 beq  0x00000003 , 0x00004b1e 
+ 00018911  0x000047d1 rtn 
+ 00018912  0x000047d4 fetch  0x00000002 , 0x00000c72 
+ 00018913  0x000047d5 beq  0x00000001 , 0x000049e5 
+ 00018914  0x000047d6 fetch  0x00000002 , 0x00000b7c 
+ 00018915  0x000047d7 copy  0x0000003f , 0x00000011 
+ 00018916  0x000047d9 branch  0x00004b1e 
+ 00018917  0x000047db jam  0x00000001 , 0x00000d45 
+ 00018918  0x000047dc jam  0x00000001 , 0x00000d36 
+ 00018919  0x000047dd fetch  0x00000002 , 0x00000b7e 
+ 00018920  0x000047de copy  0x0000003f , 0x00000011 
+ 00018921  0x000047e0 branch  0x00004b1e 
+ 00018922  0x000047e4 fetch  0x00000001 , 0x00000c6b 
+ 00018923  0x000047e5 bne  0x00000004 , 0x00004984 
+ 00018924  0x000047e6 fetch  0x00000001 , 0x00000c6e 
+ 00018925  0x000047e7 bne  0x00000081 , 0x00004984 
+ 00018926  0x000047e8 fetch  0x00000001 , 0x00000c70 
+ 00018927  0x000047e9 bne  0x00000000 , 0x00004984 
+ 00018928  0x000047ea fetch  0x00000001 , 0x00000c71 
+ 00018929  0x000047eb bne  0x00000000 , 0x00004984 
+ 00018930  0x000047ec fetch  0x00000001 , 0x00000c74 
+ 00018931  0x000047ed bne  0x00000001 , 0x00004984 
+ 00018932  0x000047ee fetch  0x00000001 , 0x00000c75 
+ 00018933  0x000047ef bne  0x00000000 , 0x00004984 
+ 00018934  0x000047f0 fetch  0x00000001 , 0x00000c72 
+ 00018935  0x000047f1 bne  0x00000000 , 0x00004984 
+ 00018936  0x000047f2 fetch  0x00000001 , 0x00000c73 
+ 00018937  0x000047f3 bne  0x00000000 , 0x00004984 
+ 00018938  0x000047f4 arg  0x00000001 , 0x00000012 
+ 00018939  0x000047f5 branch  0x00004a12 
+ 00018940  0x000047f9 fetch  0x00000001 , 0x00000c6b 
+ 00018941  0x000047fa beq  0x00000002 , 0x00004984 
+ 00018942  0x000047fb fetch  0x00000001 , 0x00000c70 
+ 00018943  0x000047fc bne  0x00000000 , 0x00004984 
+ 00018944  0x000047fd fetch  0x00000001 , 0x00000c71 
+ 00018945  0x000047fe bne  0x00000000 , 0x00004984 
+ 00018946  0x000047ff fetch  0x00000001 , 0x00000c74 
+ 00018947  0x00004800 bne  0x00000002 , 0x00004984 
+ 00018948  0x00004801 fetch  0x00000001 , 0x00000c75 
+ 00018949  0x00004802 bne  0x00000000 , 0x00004984 
+ 00018950  0x00004803 fetch  0x00000001 , 0x00000c73 
+ 00018951  0x00004804 bne  0x00000000 , 0x00004984 
+ 00018952  0x00004805 fetch  0x00000001 , 0x00000c6e 
+ 00018953  0x00004806 beq  0x00000080 , 0x00004a0d 
+ 00018954  0x00004807 beq  0x00000081 , 0x00004a18 
+ 00018955  0x00004808 beq  0x00000082 , 0x00004a1c 
+ 00018956  0x00004809 branch  0x00004984 
+ 00018957  0x0000480c fetch  0x00000001 , 0x00000c72 
+ 00018958  0x0000480d bne  0x00000000 , 0x00004984 
+ 00018959  0x0000480e arg  0x00000002 , 0x00000012 
+ 00018960  0x0000480f fetch  0x00000001 , 0x00000d39 
+ 00018961  0x00004810 beq  0x00000001 , 0x00004a16 
+ 00018962  0x00004813 arg  0x00000c65 , 0x00000011 
+ 00018963  0x00004814 branch  0x00004b21 
+ 00018964  0x00004816 arg  0x00000c67 , 0x00000011 
+ 00018965  0x00004817 branch  0x00004b21 
+ 00018966  0x00004819 arg  0x00000c69 , 0x00000011 
+ 00018967  0x0000481a branch  0x00004b21 
+ 00018968  0x0000481d fetch  0x00000001 , 0x00000c6b 
+ 00018969  0x0000481e bne  0x00000004 , 0x00004984 
+ 00018970  0x0000481f arg  0x00000002 , 0x00000012 
+ 00018971  0x00004820 branch  0x00004a12 
+ 00018972  0x00004823 fetch  0x00000001 , 0x00000c6b 
+ 00018973  0x00004824 bne  0x00000004 , 0x00004984 
+ 00018974  0x00004825 fetch  0x00000001 , 0x00000c72 
+ 00018975  0x00004826 beq  0x00000081 , 0x00004a29 
+ 00018976  0x00004827 beq  0x00000082 , 0x00004a2b 
+ 00018977  0x00004828 beq  0x00000083 , 0x00004a2d 
+ 00018978  0x00004829 and_into  0x0000007f , 0x0000003f 
+ 00018979  0x0000482a beq  0x00000000 , 0x00004a25 
+ 00018980  0x0000482b branch  0x00004984 
+ 00018981  0x0000482e fetch  0x00000001 , 0x00000d3b 
+ 00018982  0x00004830 arg  0x00000002 , 0x00000012 
+ 00018983  0x00004831 beq  0x00000001 , 0x00004a14 
+ 00018984  0x00004832 branch  0x00004a12 
+ 00018985  0x00004834 fetch  0x00000001 , 0x00000d3c 
+ 00018986  0x00004835 branch  0x00004a26 
+ 00018987  0x00004837 fetch  0x00000001 , 0x00000d3d 
+ 00018988  0x00004838 branch  0x00004a26 
+ 00018989  0x0000483a fetch  0x00000001 , 0x00000d3e 
+ 00018990  0x0000483b branch  0x00004a26 
+ 00018991  0x0000483e jam  0x00000001 , 0x00000d4c 
+ 00018992  0x0000483f arg  0x00000d4d , 0x00000011 
+ 00018993  0x00004840 arg  0x00000001 , 0x00000012 
+ 00018994  0x00004841 branch  0x00004b21 
+ 00018995  0x00004844 fetch  0x00000002 , 0x00000c70 
+ 00018996  0x00004845 arg  0x000001ba , 0x00000002 
+ 00018997  0x00004846 isub  0x00000002 , 0x0000003e 
+ 00018998  0x00004847 nbranch  0x00004984 , 0x00000005 
+ 00018999  0x00004848 set0  0x00000023 , 0x00000000 
+ 00019000  0x0000484a fetch  0x00000001 , 0x00000d42 
+ 00019001  0x0000484b nbranch  0x00004a42 , 0x00000034 
+ 00019002  0x0000484c jam  0x00000000 , 0x00000cf6 
+ 00019003  0x0000484e fetch  0x00000001 , 0x00000c74 
+ 00019004  0x0000484f iforce  0x00000012 
+ 00019005  0x00004850 arg  0x00000cf6 , 0x00000011 
+ 00019006  0x00004851 call  0x00004b21 
+ 00019007  0x00004853 arg  0x00000cf6 , 0x00000005 
+ 00019008  0x00004854 arg  0x00000008 , 0x00000039 
+ 00019009  0x00004855 branch  0x00007ec6 
+ 00019010  0x00004857 jam  0x00000000 , 0x00000d42 
+ 00019011  0x00004858 jam  0x00000001 , 0x00000cf6 
+ 00019012  0x00004859 branch  0x00004a3b 
+ 00019013  0x0000485c fetch  0x00000001 , 0x00000c74 
+ 00019014  0x0000485d bne  0x00000001 , 0x00004984 
+ 00019015  0x0000485e jam  0x00000001 , 0x00000d4b 
+ 00019016  0x0000485f arg  0x00000001 , 0x00000012 
+ 00019017  0x00004860 fetch  0x00000001 , 0x00000d49 
+ 00019018  0x00004861 beq  0x00000000 , 0x00004a4d 
+ 00019019  0x00004862 beq  0x00000001 , 0x00004a4e 
+ 00019020  0x00004863 branch  0x00004a12 
+ 00019021  0x00004865 branch  0x00004a14 
+ 00019022  0x00004867 branch  0x00004a12 
+ 00019023  0x0000486d fetch  0x00000001 , 0x00000c6b 
+ 00019024  0x0000486e bne  0x00000004 , 0x00004984 
+ 00019025  0x0000486f fetch  0x00000001 , 0x00000c74 
+ 00019026  0x00004870 bne  0x00000000 , 0x00004984 
+ 00019027  0x00004871 fetch  0x00000001 , 0x00000c75 
+ 00019028  0x00004872 bne  0x00000000 , 0x00004984 
+ 00019029  0x00004873 fetch  0x00000001 , 0x00000c71 
+ 00019030  0x00004874 bne  0x00000000 , 0x00004984 
+ 00019031  0x00004875 fetch  0x00000001 , 0x00000c73 
+ 00019032  0x00004876 bne  0x00000000 , 0x00004984 
+ 00019033  0x00004877 fetch  0x00000001 , 0x00000c6e 
+ 00019034  0x00004878 beq  0x00000000 , 0x00004a5e 
+ 00019035  0x00004879 beq  0x00000001 , 0x00004a66 
+ 00019036  0x0000487a beq  0x00000002 , 0x00004a67 
+ 00019037  0x0000487b branch  0x00004984 
+ 00019038  0x0000487e fetch  0x00000001 , 0x00000c70 
+ 00019039  0x0000487f bne  0x00000001 , 0x00004984 
+ 00019040  0x00004880 hfetch  0x00000001 , 0x00008a00 
+ 00019041  0x00004881 set0  0x00000007 , 0x0000003f 
+ 00019042  0x00004882 hstore  0x00000001 , 0x00008a00 
+ 00019043  0x00004883 jam  0x00000000 , 0x00000d39 
+ 00019044  0x00004884 jam  0x00000001 , 0x00000d3a 
+ 00019045  0x00004885 branch  0x00004988 
+ 00019046  0x00004888 branch  0x00004984 
+ 00019047  0x0000488b fetch  0x00000001 , 0x00000c70 
+ 00019048  0x0000488c bne  0x00000000 , 0x00004984 
+ 00019049  0x0000488d fetch  0x00000001 , 0x00000c72 
+ 00019050  0x0000488e beq  0x00000081 , 0x00004a72 
+ 00019051  0x0000488f beq  0x00000082 , 0x00004a75 
+ 00019052  0x00004890 beq  0x00000083 , 0x00004a77 
+ 00019053  0x00004891 and_into  0x0000007f , 0x0000003f 
+ 00019054  0x00004892 beq  0x00000000 , 0x00004a70 
+ 00019055  0x00004893 branch  0x00004984 
+ 00019056  0x00004896 jam  0x00000000 , 0x00000d3b 
+ 00019057  0x00004897 branch  0x00004988 
+ 00019058  0x00004899 jam  0x00000000 , 0x00000d3c 
+ 00019059  0x0000489b jam  0x00000001 , 0x00000d53 
+ 00019060  0x0000489c branch  0x00004988 
+ 00019061  0x0000489e jam  0x00000000 , 0x00000d3d 
+ 00019062  0x0000489f branch  0x00004a73 
+ 00019063  0x000048a1 jam  0x00000000 , 0x00000d3e 
+ 00019064  0x000048a2 branch  0x00004a73 
+ 00019065  0x000048a6 fetch  0x00000001 , 0x00000c74 
+ 00019066  0x000048a7 bne  0x00000000 , 0x00004984 
+ 00019067  0x000048a8 fetch  0x00000001 , 0x00000c75 
+ 00019068  0x000048a9 bne  0x00000000 , 0x00004984 
+ 00019069  0x000048aa fetch  0x00000001 , 0x00000c6e 
+ 00019070  0x000048ab beq  0x00000000 , 0x00004a82 
+ 00019071  0x000048ac beq  0x00000001 , 0x00004a8f 
+ 00019072  0x000048ad beq  0x00000002 , 0x00004a90 
+ 00019073  0x000048ae branch  0x00004984 
+ 00019074  0x000048b1 fetch  0x00000001 , 0x00000c70 
+ 00019075  0x000048b2 bne  0x00000001 , 0x00004984 
+ 00019076  0x000048b3 hfetch  0x00000001 , 0x00008a00 
+ 00019077  0x000048b4 set1  0x00000007 , 0x0000003f 
+ 00019078  0x000048b5 hstore  0x00000001 , 0x00008a00 
+ 00019079  0x000048b6 jam  0x00000001 , 0x00000d39 
+ 00019080  0x000048b7 jam  0x00000003 , 0x00000d36 
+ 00019081  0x000048b8 jam  0x00000000 , 0x00000d43 
+ 00019082  0x000048b9 call  0x00004988 
+ 00019083  0x000048bb call  0x00007f15 
+ 00019084  0x000048bc setarg  0x00001388 
+ 00019085  0x000048bd arg  0x0000000f , 0x00000007 
+ 00019086  0x000048be branch  0x00007f08 
+ 00019087  0x000048c1 branch  0x00004984 
+ 00019088  0x000048c4 fetch  0x00000001 , 0x00000c70 
+ 00019089  0x000048c5 bne  0x00000000 , 0x00004984 
+ 00019090  0x000048c6 fetch  0x00000001 , 0x00000c71 
+ 00019091  0x000048c7 bne  0x00000000 , 0x00004984 
+ 00019092  0x000048c8 fetch  0x00000001 , 0x00000c72 
+ 00019093  0x000048c9 beq  0x00000081 , 0x00004a9d 
+ 00019094  0x000048ca beq  0x00000082 , 0x00004a9f 
+ 00019095  0x000048cb beq  0x00000083 , 0x00004aa1 
+ 00019096  0x000048cc and_into  0x0000007f , 0x0000003f 
+ 00019097  0x000048cd beq  0x00000000 , 0x00004a9b 
+ 00019098  0x000048ce branch  0x00004984 
+ 00019099  0x000048d1 jam  0x00000001 , 0x00000d3b 
+ 00019100  0x000048d2 branch  0x00004988 
+ 00019101  0x000048d4 jam  0x00000001 , 0x00000d3c 
+ 00019102  0x000048d5 branch  0x00004988 
+ 00019103  0x000048d7 jam  0x00000001 , 0x00000d3d 
+ 00019104  0x000048d8 branch  0x00004988 
+ 00019105  0x000048da jam  0x00000001 , 0x00000d3e 
+ 00019106  0x000048db branch  0x00004988 
+ 00019107  0x000048df fetch  0x00000001 , 0x00000c6e 
+ 00019108  0x000048e0 bne  0x00000000 , 0x00004984 
+ 00019109  0x000048e1 fetch  0x00000001 , 0x00000c72 
+ 00019110  0x000048e2 bne  0x00000000 , 0x00004984 
+ 00019111  0x000048e3 fetch  0x00000001 , 0x00000c73 
+ 00019112  0x000048e4 bne  0x00000000 , 0x00004984 
+ 00019113  0x000048e5 fetch  0x00000001 , 0x00000c74 
+ 00019114  0x000048e6 bne  0x00000000 , 0x00004984 
+ 00019115  0x000048e7 fetch  0x00000001 , 0x00000c75 
+ 00019116  0x000048e8 bne  0x00000000 , 0x00004984 
+ 00019117  0x000048e9 fetch  0x00000001 , 0x00000c71 
+ 00019118  0x000048ea bne  0x00000000 , 0x00004984 
+ 00019119  0x000048eb fetch  0x00000001 , 0x00000c70 
+ 00019120  0x000048ec and_into  0x00000080 , 0x0000003f 
+ 00019121  0x000048ed bne  0x00000000 , 0x00004984 
+ 00019122  0x000048ee fetch  0x00000001 , 0x00000c70 
+ 00019123  0x000048ef bne  0x00000000 , 0x00004aba 
+ 00019124  0x000048f1 jam  0x00000002 , 0x00000c6b 
+ 00019125  0x000048f3 fetch  0x00000001 , 0x00000c70 
+ 00019126  0x000048f4 hstore  0x00000001 , 0x00008a04 
+ 00019127  0x000048f5 call  0x00004988 
+ 00019128  0x000048f6 jam  0x00000001 , 0x00000d48 
+ 00019129  0x000048f7 rtn 
+ 00019130  0x000048f9 jam  0x00000003 , 0x00000c6b 
+ 00019131  0x000048fa branch  0x00004ab5 
+ 00019132  0x000048fe fetch  0x00000001 , 0x00000c6b 
+ 00019133  0x000048ff beq  0x00000002 , 0x00004984 
+ 00019134  0x00004900 fetch  0x00000001 , 0x00000c6e 
+ 00019135  0x00004901 bne  0x00000000 , 0x00004984 
+ 00019136  0x00004902 fetch  0x00000001 , 0x00000c72 
+ 00019137  0x00004903 bne  0x00000000 , 0x00004984 
+ 00019138  0x00004904 fetch  0x00000001 , 0x00000c73 
+ 00019139  0x00004905 bne  0x00000000 , 0x00004984 
+ 00019140  0x00004906 fetch  0x00000001 , 0x00000c74 
+ 00019141  0x00004907 bne  0x00000000 , 0x00004984 
+ 00019142  0x00004908 fetch  0x00000001 , 0x00000c75 
+ 00019143  0x00004909 bne  0x00000000 , 0x00004984 
+ 00019144  0x0000490a fetch  0x00000001 , 0x00000c71 
+ 00019145  0x0000490b bne  0x00000000 , 0x00004984 
+ 00019146  0x0000490c fetch  0x00000001 , 0x00000c70 
+ 00019147  0x0000490d sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019148  0x0000490e nbranch  0x00004984 , 0x00000002 
+ 00019149  0x0000490f fetch  0x00000001 , 0x00000c6b 
+ 00019150  0x00004910 beq  0x00000003 , 0x00004ad1 
+ 00019151  0x00004911 beq  0x00000004 , 0x00004ad1 
+ 00019152  0x00004912 branch  0x00004984 
+ 00019153  0x00004916 fetch  0x00000001 , 0x00000c70 
+ 00019154  0x00004917 beq  0x00000000 , 0x00004ad5 
+ 00019155  0x00004918 jam  0x00000004 , 0x00000c6b 
+ 00019156  0x00004919 branch  0x00004988 
+ 00019157  0x0000491b jam  0x00000003 , 0x00000c6b 
+ 00019158  0x0000491c branch  0x00004988 
+ 00019159  0x00004920 fetch  0x00000001 , 0x00000c6b 
+ 00019160  0x00004921 bne  0x00000004 , 0x00004984 
+ 00019161  0x00004922 fetch  0x00000001 , 0x00000c6e 
+ 00019162  0x00004923 bne  0x00000001 , 0x00004984 
+ 00019163  0x00004924 fetch  0x00000001 , 0x00000c70 
+ 00019164  0x00004925 bne  0x00000000 , 0x00004984 
+ 00019165  0x00004926 fetch  0x00000001 , 0x00000c71 
+ 00019166  0x00004927 bne  0x00000000 , 0x00004984 
+ 00019167  0x00004928 fetch  0x00000001 , 0x00000c74 
+ 00019168  0x00004929 bne  0x00000000 , 0x00004984 
+ 00019169  0x0000492a fetch  0x00000001 , 0x00000c75 
+ 00019170  0x0000492b bne  0x00000000 , 0x00004984 
+ 00019171  0x0000492c fetch  0x00000001 , 0x00000c72 
+ 00019172  0x0000492d bne  0x00000000 , 0x00004984 
+ 00019173  0x0000492e fetch  0x00000001 , 0x00000c73 
+ 00019174  0x0000492f bne  0x00000000 , 0x00004984 
+ 00019175  0x00004930 branch  0x00004988 
+ 00019176  0x00004934 jam  0x00000001 , 0x00000d4c 
+ 00019177  0x00004935 fetch  0x00000001 , 0x00000c71 
+ 00019178  0x00004936 store  0x00000001 , 0x00000d4d 
+ 00019179  0x00004937 fetch  0x00000001 , 0x00000c72 
+ 00019180  0x00004938 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019181  0x00004939 call  0x00004af5 , 0x00000005 
+ 00019182  0x0000493a fetch  0x00000001 , 0x00000d36 
+ 00019183  0x0000493b bne  0x00000004 , 0x00004988 
+ 00019184  0x0000493c jam  0x00000002 , 0x00000d36 
+ 00019185  0x0000493d call  0x00004988 
+ 00019186  0x0000493e nop  0x00007530 
+ 00019187  0x0000493f nop  0x00007530 
+ 00019188  0x00004940 rtn 
+ 00019189  0x00004942 jam  0x00000001 , 0x00000d45 
+ 00019190  0x00004943 jam  0x00000000 , 0x00000d3a 
+ 00019191  0x00004944 jam  0x00000004 , 0x00000d36 
+ 00019192  0x00004945 rtn 
+ 00019193  0x00004949 jam  0x00000001 , 0x00000d50 
+ 00019194  0x0000494a call  0x00004b03 
+ 00019195  0x0000494b fetch  0x00000002 , 0x00000c70 
+ 00019196  0x0000494c store  0x00000002 , 0x00000d4e 
+ 00019197  0x0000494d fetch  0x00000001 , 0x00000c74 
+ 00019198  0x0000494e iforce  0x00000039 
+ 00019199  0x0000494f arg  0x00000c76 , 0x00000006 
+ 00019200  0x00004950 arg  0x00000cb6 , 0x00000005 
+ 00019201  0x00004951 call  0x00007f01 
+ 00019202  0x00004952 branch  0x00004988 
+ 00019203  0x00004955 fetch  0x00000002 , 0x00000c70 
+ 00019204  0x00004956 arg  0x00000200 , 0x00000002 
+ 00019205  0x00004957 isub  0x00000002 , 0x0000003e 
+ 00019206  0x00004958 nrtn  0x00000005 
+ 00019207  0x00004959 fetch  0x00000002 , 0x00000c72 
+ 00019208  0x0000495a arg  0x00000000 , 0x00000002 
+ 00019209  0x0000495b isub  0x00000002 , 0x0000003e 
+ 00019210  0x0000495c nrtn  0x00000005 
+ 00019211  0x0000495d fetch  0x00000002 , 0x00000c74 
+ 00019212  0x0000495e arg  0x00000001 , 0x00000002 
+ 00019213  0x0000495f isub  0x00000002 , 0x0000003e 
+ 00019214  0x00004960 nrtn  0x00000005 
+ 00019215  0x00004961 jam  0x00000001 , 0x00000d43 
+ 00019216  0x00004962 rtn 
+ 00019217  0x00004966 fetch  0x00000001 , 0x00000c74 
+ 00019218  0x00004967 bne  0x00000000 , 0x00004984 
+ 00019219  0x00004968 fetch  0x00000001 , 0x00000c70 
+ 00019220  0x00004969 beq  0x00000000 , 0x00004b17 
+ 00019221  0x0000496a beq  0x00000001 , 0x00004b1a 
+ 00019222  0x0000496b branch  0x00004984 
+ 00019223  0x0000496d jam  0x00000000 , 0x00000d4a 
+ 00019224  0x0000496e jam  0x00000001 , 0x00000d49 
+ 00019225  0x0000496f branch  0x00004988 
+ 00019226  0x00004971 jam  0x00000001 , 0x00000d44 
+ 00019227  0x00004972 jam  0x00000001 , 0x00000d4a 
+ 00019228  0x00004973 jam  0x00000000 , 0x00000d49 
+ 00019229  0x00004974 branch  0x00004988 
+ 00019230  0x00004978 ifetch  0x00000001 , 0x00000011 
+ 00019231  0x00004979 iforce  0x00000012 
+ 00019232  0x0000497a increase  0x00000001 , 0x00000011 
+ 00019233  0x0000497d bpatch  0x000000fa , 0x0000401f 
+ 00019234  0x0000497e bmark0  0x00000023 , 0x00004b2c 
+ 00019235  0x0000497f add  0x00000012 , 0x00000001 , 0x0000003f 
+ 00019236  0x00004980 lshift  0x0000003f , 0x0000003f 
+ 00019237  0x00004981 hstore  0x00000001 , 0x00008a18 
+ 00019238  0x00004982 jam  0x00000003 , 0x00008a18 
+ 00019239  0x00004983 fetch  0x00000001 , 0x00000c74 
+ 00019240  0x00004984 increase  0xfffffffe , 0x0000003f 
+ 00019241  0x00004985 rshift  0x0000003f , 0x0000003f 
+ 00019242  0x00004986 store  0x00000001 , 0x00000c74 
+ 00019243  0x00004987 beq  0x00000000 , 0x00004b35 
+ 00019244  0x00004989 fetch  0x00000002 , 0x00000c74 
+ 00019245  0x0000498a isub  0x00000012 , 0x0000003e 
+ 00019246  0x0000498b branch  0x00004b30 , 0x00000002 
+ 00019247  0x0000498c copy  0x0000003f , 0x00000012 
+ 00019248  0x0000498e deposit  0x00000011 
+ 00019249  0x0000498f store  0x00000002 , 0x00000b65 
+ 00019250  0x00004990 deposit  0x00000012 
+ 00019251  0x00004991 store  0x00000001 , 0x00000b67 
+ 00019252  0x00004992 branch  0x00004b37 
+ 00019253  0x00004995 arg  0x00000000 , 0x00000007 
+ 00019254  0x00004996 branch  0x00004b57 
+ 00019255  0x0000499a bpatch  0x000000fb , 0x0000401f 
+ 00019256  0x0000499b fetch  0x00000001 , 0x00000b67 
+ 00019257  0x0000499c rtn  0x00000034 
+ 00019258  0x0000499d copy  0x0000003f , 0x00000039 
+ 00019259  0x0000499e sub  0x0000003f , 0x00000040 , 0x0000003e 
+ 00019260  0x0000499f branch  0x00004b3e , 0x00000002 
+ 00019261  0x000049a0 arg  0x00000040 , 0x00000039 
+ 00019262  0x000049a2 fetch  0x00000001 , 0x00000b67 
+ 00019263  0x000049a3 isub  0x00000039 , 0x0000003f 
+ 00019264  0x000049a4 store  0x00000001 , 0x00000b67 
+ 00019265  0x000049a5 fetch  0x00000002 , 0x00000b65 
+ 00019266  0x000049a6 copy  0x0000003f , 0x00000006 
+ 00019267  0x000049a8 ifetch  0x00000001 , 0x00000006 
+ 00019268  0x000049a9 hstore  0x00000001 , 0x00008a18 
+ 00019269  0x000049aa bmark0  0x00000023 , 0x00004b47 
+ 00019270  0x000049ab jam  0x00000000 , 0x00008a18 
+ 00019271  0x000049ad loop  0x00004b43 
+ 00019272  0x000049ae copy  0x00000006 , 0x0000003f 
+ 00019273  0x000049af store  0x00000002 , 0x00000b65 
+ 00019274  0x000049b0 arg  0x00000000 , 0x00000007 
+ 00019275  0x000049b1 call  0x00004b57 
+ 00019276  0x000049b2 fetch  0x00000001 , 0x00000b67 
+ 00019277  0x000049b3 nrtn  0x00000034 
+ 00019278  0x000049b4 fetch  0x00000001 , 0x00000d36 
+ 00019279  0x000049b5 rtnne  0x00000001 
+ 00019280  0x000049b6 jam  0x00000002 , 0x00000d36 
+ 00019281  0x000049b7 rtn 
+ 00019282  0x000049bb arg  0x00008a19 , 0x00000011 
+ 00019283  0x000049bc arg  0x00000001 , 0x00000007 
+ 00019284  0x000049be ifetch  0x00000001 , 0x00000006 
+ 00019285  0x000049bf istore  0x00000001 , 0x00000011 
+ 00019286  0x000049c0 loop  0x00004b54 
+ 00019287  0x000049c2 setarg  0x00000000 
+ 00019288  0x000049c3 qset1  0x0000003f 
+ 00019289  0x000049c4 hstore  0x00000001 , 0x00008a10 
+ 00019290  0x000049c5 fetcht  0x00000001 , 0x00000d37 
+ 00019291  0x000049c6 ior  0x00000002 , 0x0000003f 
+ 00019292  0x000049c7 store  0x00000001 , 0x00000d37 
+ 00019293  0x000049c8 rtn 
+ 00019294  0x000049cb arg  0x00000002 , 0x00000007 
+ 00019295  0x000049cc arg  0x00008a1a , 0x00000011 
+ 00019296  0x000049cd branch  0x00004b54 
+ 00019297  0x000049d0 bpatch  0x000000fc , 0x0000401f 
+ 00019298  0x000049d1 fetch  0x00000001 , 0x00000d38 
+ 00019299  0x000049d2 rtn  0x00000034 
+ 00019300  0x000049d3 fetch  0x00000001 , 0x00000d37 
+ 00019301  0x000049d4 nbranch  0x00004bac , 0x00000034 
+ 00019302  0x000049d5 fetch  0x00000001 , 0x00000d45 
+ 00019303  0x000049d6 branch  0x00004b86 , 0x00000034 
+ 00019304  0x000049d7 fetch  0x00000001 , 0x00000d36 
+ 00019305  0x000049d8 beq  0x00000003 , 0x00004bbf 
+ 00019306  0x000049d9 bne  0x00000002 , 0x00004b86 
+ 00019307  0x000049da fetch  0x00000001 , 0x00000d3a 
+ 00019308  0x000049db nbranch  0x00004b86 , 0x00000034 
+ 00019309  0x000049dc call  0x00004b6f 
+ 00019310  0x000049dd branch  0x00004b7a 
+ 00019311  0x000049e0 fetch  0x00000001 , 0x00000d38 
+ 00019312  0x000049e1 rtnbit0  0x00000001 
+ 00019313  0x000049e2 fetch  0x00000001 , 0x00000d37 
+ 00019314  0x000049e3 rtnbit1  0x00000001 
+ 00019315  0x000049e4 fetch  0x00000001 , 0x00000d38 
+ 00019316  0x000049e5 set0  0x00000001 , 0x0000003f 
+ 00019317  0x000049e6 store  0x00000001 , 0x00000d38 
+ 00019318  0x000049e7 fetch  0x00000001 , 0x00000d51 
+ 00019319  0x000049e8 rtn  0x00000034 
+ 00019320  0x000049e9 beq  0x00000010 , 0x00004ba8 
+ 00019321  0x000049ea branch  0x00002a8c 
+ 00019322  0x000049ed fetch  0x00000001 , 0x00000d38 
+ 00019323  0x000049ee rtnbit0  0x00000002 
+ 00019324  0x000049ef fetch  0x00000001 , 0x00000d37 
+ 00019325  0x000049f0 rtnbit1  0x00000002 
+ 00019326  0x000049f1 fetch  0x00000001 , 0x00000d38 
+ 00019327  0x000049f2 set0  0x00000002 , 0x0000003f 
+ 00019328  0x000049f3 store  0x00000001 , 0x00000d38 
+ 00019329  0x000049f4 fetch  0x00000001 , 0x00000d52 
+ 00019330  0x000049f5 rtn  0x00000034 
+ 00019331  0x000049f6 beq  0x00000020 , 0x00004b89 
+ 00019332  0x000049f7 beq  0x00000021 , 0x00004ba4 
+ 00019333  0x000049f8 branch  0x00002a8c 
+ 00019334  0x000049fc arg  0x00000d54 , 0x00000005 
+ 00019335  0x000049fd arg  0x00000006 , 0x00000039 
+ 00019336  0x000049fe branch  0x00007ec6 
+ 00019337  0x00004a01 fetch  0x00000001 , 0x00000d4c 
+ 00019338  0x00004a02 fetcht  0x00000001 , 0x00000d4b 
+ 00019339  0x00004a03 iand  0x00000002 , 0x0000003f 
+ 00019340  0x00004a04 branch  0x00004ba0 , 0x00000034 
+ 00019341  0x00004a05 fetcht  0x00000001 , 0x00000d4a 
+ 00019342  0x00004a06 iadd  0x00000002 , 0x0000003f 
+ 00019343  0x00004a07 beq  0x00000001 , 0x00004b91 
+ 00019344  0x00004a08 branch  0x00004ba0 
+ 00019345  0x00004a0b jam  0x00000000 , 0x00000d52 
+ 00019346  0x00004a0d fetch  0x00000001 , 0x00000d55 
+ 00019347  0x00004a0e beq  0x00000002 , 0x00004ba1 
+ 00019348  0x00004a0f beq  0x00000003 , 0x00004ba1 
+ 00019349  0x00004a10 fetch  0x00000001 , 0x00000d55 
+ 00019350  0x00004a11 store  0x00000001 , 0x00000d54 
+ 00019351  0x00004a12 fetch  0x00000001 , 0x00000d56 
+ 00019352  0x00004a13 istore  0x00000001 , 0x00000005 
+ 00019353  0x00004a14 fetch  0x00000001 , 0x00000d58 
+ 00019354  0x00004a15 istore  0x00000001 , 0x00000005 
+ 00019355  0x00004a16 fetch  0x00000001 , 0x00000d5a 
+ 00019356  0x00004a17 istore  0x00000001 , 0x00000005 
+ 00019357  0x00004a18 arg  0x00000004 , 0x00000039 
+ 00019358  0x00004a19 arg  0x00000d54 , 0x00000006 
+ 00019359  0x00004a1a branch  0x00004b5e 
+ 00019360  0x00004a1d jam  0x00000000 , 0x00000d52 
+ 00019361  0x00004a1f arg  0x00000008 , 0x00000039 
+ 00019362  0x00004a20 arg  0x00000d54 , 0x00000006 
+ 00019363  0x00004a21 branch  0x00004b5e 
+ 00019364  0x00004a24 jam  0x00000000 , 0x00000d52 
+ 00019365  0x00004a25 arg  0x00000003 , 0x00000039 
+ 00019366  0x00004a26 arg  0x00000d74 , 0x00000006 
+ 00019367  0x00004a27 branch  0x00004b5e 
+ 00019368  0x00004a2a jam  0x00000000 , 0x00000d51 
+ 00019369  0x00004a2b arg  0x00000008 , 0x00000039 
+ 00019370  0x00004a2c arg  0x00000d64 , 0x00000006 
+ 00019371  0x00004a2d branch  0x00004b52 
+ 00019372  0x00004a30 fetch  0x00000001 , 0x00000d36 
+ 00019373  0x00004a31 beq  0x00000003 , 0x00004bb0 
+ 00019374  0x00004a32 beq  0x00000002 , 0x00004bb2 
+ 00019375  0x00004a33 rtn 
+ 00019376  0x00004a35 jam  0x00000000 , 0x00000d37 
+ 00019377  0x00004a36 rtn 
+ 00019378  0x00004a38 hfetch  0x00000001 , 0x00008a00 
+ 00019379  0x00004a39 set1  0x00000007 , 0x0000003f 
+ 00019380  0x00004a3a hstore  0x00000001 , 0x00008a00 
+ 00019381  0x00004a3b jam  0x00000001 , 0x00000d47 
+ 00019382  0x00004a3c rtn 
+ 00019383  0x00004a3f fetch  0x00000001 , 0x00000d36 
+ 00019384  0x00004a40 rtneq  0x00000003 
+ 00019385  0x00004a41 beq  0x00000002 , 0x00004bbb 
+ 00019386  0x00004a42 rtn 
+ 00019387  0x00004a44 fetch  0x00000001 , 0x00000d47 
+ 00019388  0x00004a45 rtn  0x00000034 
+ 00019389  0x00004a46 jam  0x00000001 , 0x00000d46 
+ 00019390  0x00004a47 branch  0x00004bc2 
+ 00019391  0x00004a4a arg  0x0000000f , 0x00000007 
+ 00019392  0x00004a4b call  0x00007f16 
+ 00019393  0x00004a4c nrtn  0x00000034 
+ 00019394  0x00004a4e hfetch  0x00000001 , 0x00008a00 
+ 00019395  0x00004a4f rtnbit0  0x00000007 
+ 00019396  0x00004a50 jam  0x000000fc , 0x00008a00 
+ 00019397  0x00004a51 nop  0x00007530 
+ 00019398  0x00004a52 jam  0x0000003c , 0x00008a00 
+ 00019399  0x00004a53 rtn 
+ 00019400  0x00004a5b bpatch  0x000000fd , 0x0000401f 
+ 00019401  0x00004a5c fetch  0x00000001 , 0x000041ce 
+ 00019402  0x00004a5d nrtn  0x00000034 
+ 00019403  0x00004a5f call  0x00004bce 
+ 00019404  0x00004a60 ncall  0x00004be6 , 0x00000028 
+ 00019405  0x00004a61 rtn 
+ 00019406  0x00004a64 bpatch  0x000000fe , 0x0000401f 
+ 00019407  0x00004a65 copy  0x00000003 , 0x00000011 
+ 00019408  0x00004a66 arg  0x00000004 , 0x00000002 
+ 00019409  0x00004a67 ifetch  0x00000001 , 0x00000003 
+ 00019410  0x00004a68 beq  0x00000001 , 0x00004bd8 
+ 00019411  0x00004a69 increase  0x00000001 , 0x00000002 
+ 00019412  0x00004a6a beq  0x00000002 , 0x00004bd8 
+ 00019413  0x00004a6b copy  0x00000003 , 0x0000003f 
+ 00019414  0x00004a6c hstore  0x00000002 , 0x00008058 
+ 00019415  0x00004a6d rtn 
+ 00019416  0x00004a6f hfetch  0x00000002 , 0x00008112 
+ 00019417  0x00004a70 isub  0x00000002 , 0x0000003e 
+ 00019418  0x00004a71 nbranch  0x00004bd8 , 0x00000002 
+ 00019419  0x00004a73 disable  0x00000028 
+ 00019420  0x00004a74 copy  0x00000011 , 0x00000003 
+ 00019421  0x00004a75 call  0x00004bee 
+ 00019422  0x00004a76 iadd  0x00000002 , 0x00000002 
+ 00019423  0x00004a78 hfetch  0x00000002 , 0x00008112 
+ 00019424  0x00004a79 isub  0x00000002 , 0x0000003e 
+ 00019425  0x00004a7a nbranch  0x00004bdf , 0x00000002 
+ 00019426  0x00004a7b copy  0x00000011 , 0x00000003 
+ 00019427  0x00004a7c ifetch  0x00000001 , 0x00000003 
+ 00019428  0x00004a7d beq  0x00000001 , 0x00004c3f 
+ 00019429  0x00004a7e branch  0x00002a8c 
+ 00019430  0x00004a81 bpatch  0x000000ff , 0x0000401f 
+ 00019431  0x00004a82 hfetch  0x00000002 , 0x00008058 
+ 00019432  0x00004a83 iforce  0x00000003 
+ 00019433  0x00004a84 call  0x00004bee 
+ 00019434  0x00004a85 iadd  0x00000003 , 0x00000003 
+ 00019435  0x00004a86 deposit  0x00000003 
+ 00019436  0x00004a87 hstore  0x00000002 , 0x00008058 
+ 00019437  0x00004a88 rtn 
+ 00019438  0x00004a8e ifetch  0x00000001 , 0x00000003 
+ 00019439  0x00004a8f increase  0x00000002 , 0x00000003 
+ 00019440  0x00004a90 beq  0x00000002 , 0x00004bf3 
+ 00019441  0x00004a91 ifetch  0x00000001 , 0x00000003 
+ 00019442  0x00004a92 rtn 
+ 00019443  0x00004a94 ifetch  0x00000002 , 0x00000003 
+ 00019444  0x00004a95 rtn 
+ 00019445  0x00004a98 hfetch  0x00000002 , 0x0000805e 
+ 00019446  0x00004a99 increase  0xfffffffb , 0x0000000a 
+ 00019447  0x00004a9a iadd  0x0000000a , 0x0000000a 
+ 00019448  0x00004a9b rtn 
+ 00019449  0x00004a9e arg  0x00000004 , 0x00000002 
+ 00019450  0x00004a9f branch  0x00004bfc 
+ 00019451  0x00004aa1 arg  0x00000002 , 0x00000002 
+ 00019452  0x00004aa3 bpatchx  0x00000000 , 0x00004020 
+ 00019453  0x00004aa4 increase  0x00000001 , 0x00000039 
+ 00019454  0x00004aa5 hfetch  0x00000002 , 0x0000805e 
+ 00019455  0x00004aa6 copy  0x0000003f , 0x0000000a 
+ 00019456  0x00004aa7 copy  0x00000039 , 0x0000003f 
+ 00019457  0x00004aa8 istoret  0x00000001 , 0x0000000a 
+ 00019458  0x00004aa9 increase  0xffffffff , 0x0000003f 
+ 00019459  0x00004aaa iadd  0x0000000a , 0x0000000a 
+ 00019460  0x00004aab copy  0x0000000a , 0x0000003f 
+ 00019461  0x00004aac store  0x00000002 , 0x00000258 
+ 00019462  0x00004aad copy  0x00000002 , 0x0000003f 
+ 00019463  0x00004aae rtneq  0x00000002 
+ 00019464  0x00004aaf fetch  0x00000002 , 0x00000258 
+ 00019465  0x00004ab0 hstore  0x00000002 , 0x0000805e 
+ 00019466  0x00004ab1 branch  0x00004c0b 
+ 00019467  0x00004ab5 setarg  0x00000000 
+ 00019468  0x00004ab6 store  0x00000002 , 0x00000258 
+ 00019469  0x00004ab7 rtn 
+ 00019470  0x00004abf rtn  0x0000002b 
+ 00019471  0x00004ac0 setarg  0x00004d28 
+ 00019472  0x00004ac1 store  0x00000002 , 0x000041f3 
+ 00019473  0x00004ac3 setarg  0x000001a0 
+ 00019474  0x00004ac4 store  0x00000002 , 0x00004243 
+ 00019475  0x00004ac6 setarg  0x00001800 
+ 00019476  0x00004ac7 hstore  0x00000002 , 0x00008054 
+ 00019477  0x00004ac8 setarg  0x00001bff 
+ 00019478  0x00004ac9 hstore  0x00000002 , 0x00008056 
+ 00019479  0x00004aca setarg  0x00001c00 
+ 00019480  0x00004acb hstore  0x00000002 , 0x0000805a 
+ 00019481  0x00004acc call  0x00004c28 
+ 00019482  0x00004ace jam  0x00000000 , 0x00008062 
+ 00019483  0x00004acf setarg  0x00001c00 
+ 00019484  0x00004ad0 hstore  0x00000002 , 0x0000805e 
+ 00019485  0x00004ad1 hstore  0x00000002 , 0x00008060 
+ 00019486  0x00004ad2 setarg  0x00001800 
+ 00019487  0x00004ad3 hstore  0x00000002 , 0x00008058 
+ 00019488  0x00004ad4 store  0x00000002 , 0x00000244 
+ 00019489  0x00004ad6 hfetch  0x00000002 , 0x00008050 
+ 00019490  0x00004ad7 set0  0x0000000f , 0x0000003f 
+ 00019491  0x00004ad8 hstore  0x00000002 , 0x00008050 
+ 00019492  0x00004ad9 call  0x000066ce 
+ 00019493  0x00004ada jam  0x00000001 , 0x00008043 
+ 00019494  0x00004adb jam  0x00000081 , 0x00008062 
+ 00019495  0x00004adc rtn 
+ 00019496  0x00004adf setarg  0x00001fff 
+ 00019497  0x00004ae0 hstore  0x00000002 , 0x0000805c 
+ 00019498  0x00004ae1 hfetch  0x00000001 , 0x00008081 
+ 00019499  0x00004ae2 or_into  0x00000007 , 0x0000003f 
+ 00019500  0x00004ae3 hstore  0x00000001 , 0x00008081 
+ 00019501  0x00004ae4 rtn 
+ 00019502  0x00004ae8 bpatchx  0x00000001 , 0x00004020 
+ 00019503  0x00004ae9 hfetch  0x00000001 , 0x0000810c 
+ 00019504  0x00004aea iforce  0x00000012 
+ 00019505  0x00004aeb bbit0  0x00000003 , 0x00004c37 
+ 00019506  0x00004aec hfetch  0x00000002 , 0x00008112 
+ 00019507  0x00004aed iforce  0x00000013 
+ 00019508  0x00004aee arg  0x0000044f , 0x00000002 
+ 00019509  0x00004aef isub  0x00000002 , 0x0000003e 
+ 00019510  0x00004af0 nrtn  0x00000005 
+ 00019511  0x00004af2 hfetch  0x00000002 , 0x00008058 
+ 00019512  0x00004af3 iforce  0x00000003 
+ 00019513  0x00004af4 branch  0x00004bc8 
+ 00019514  0x00004af7 hfetcht  0x00000001 , 0x0000810c 
+ 00019515  0x00004af8 isolate1  0x00000006 , 0x00000002 
+ 00019516  0x00004af9 branch  0x00004c3a , 0x00000001 
+ 00019517  0x00004afa hstore  0x00000001 , 0x00008015 
+ 00019518  0x00004afb rtn 
+ 00019519  0x00004afe bpatchx  0x00000002 , 0x00004020 
+ 00019520  0x00004aff fetch  0x00000001 , 0x000041ce 
+ 00019521  0x00004b00 branch  0x00004c44 , 0x00000034 
+ 00019522  0x00004b01 enable  0x00000028 
+ 00019523  0x00004b02 rtn 
+ 00019524  0x00004b04 ifetch  0x00000002 , 0x00000003 
+ 00019525  0x00004b05 iforce  0x00000030 
+ 00019526  0x00004b06 iforce  0x00000007 
+ 00019527  0x00004b07 ifetch  0x00000001 , 0x00000003 
+ 00019528  0x00004b08 iforce  0x00000002 
+ 00019529  0x00004b09 rshift2  0x00000030 , 0x0000003f 
+ 00019530  0x00004b0a rshift8  0x0000003f , 0x0000003f 
+ 00019531  0x00004b0b beq  0x0000003f , 0x00004c4d 
+ 00019532  0x00004b0c rtn 
+ 00019533  0x00004b10 bpatchx  0x00000003 , 0x00004020 
+ 00019534  0x00004b11 deposit  0x00000007 
+ 00019535  0x00004b12 beq  0x00000000 , 0x00004cdc 
+ 00019536  0x00004b13 beq  0x00000001 , 0x00004c66 
+ 00019537  0x00004b14 beq  0x00000002 , 0x00004c6b 
+ 00019538  0x00004b15 beq  0x00000003 , 0x00004c7a 
+ 00019539  0x00004b16 beq  0x00000004 , 0x00004cb3 
+ 00019540  0x00004b17 beq  0x00000005 , 0x00004cdc 
+ 00019541  0x00004b18 beq  0x00000006 , 0x00004cc6 
+ 00019542  0x00004b19 beq  0x00000007 , 0x00004c5c 
+ 00019543  0x00004b1b beq  0x00000010 , 0x00004cc9 
+ 00019544  0x00004b1c beq  0x00000011 , 0x00004cd1 
+ 00019545  0x00004b1d beq  0x00000012 , 0x00004ca5 
+ 00019546  0x00004b1e beq  0x00000013 , 0x00004c85 
+ 00019547  0x00004b1f branch  0x00004cdc 
+ 00019548  0x00004b22 call  0x00004cdc 
+ 00019549  0x00004b23 call  0x00007f9e 
+ 00019550  0x00004b24 call  0x0000688c 
+ 00019551  0x00004b26 call  0x000033d2 
+ 00019552  0x00004b27 call  0x000033d9 
+ 00019553  0x00004b28 branch  0x0000688f 
+ 00019554  0x00004b2b jam  0x00000000 , 0x00004245 
+ 00019555  0x00004b2c call  0x000033d0 
+ 00019556  0x00004b2d call  0x00004c13 
+ 00019557  0x00004b2e branch  0x000033db 
+ 00019558  0x00004b31 call  0x00004cf2 
+ 00019559  0x00004b32 hfetch  0x00000002 , 0x00008000 
+ 00019560  0x00004b33 istore  0x00000002 , 0x0000000a 
+ 00019561  0x00004b34 force  0x00000006 , 0x00000039 
+ 00019562  0x00004b35 branch  0x00004cdd 
+ 00019563  0x00004b38 ifetch  0x00000002 , 0x00000003 
+ 00019564  0x00004b39 store  0x00000002 , 0x00004243 
+ 00019565  0x00004b3a hstore  0x00000002 , 0x00008052 
+ 00019566  0x00004b3b rtn 
+ 00019567  0x00004b40 ifetch  0x00000001 , 0x00000003 
+ 00019568  0x00004b41 copy  0x0000003f , 0x00000002 
+ 00019569  0x00004b42 hstore  0x00000001 , 0x00008024 
+ 00019570  0x00004b43 ifetch  0x00000001 , 0x00000003 
+ 00019571  0x00004b44 iadd  0x00000002 , 0x00000002 
+ 00019572  0x00004b45 set1  0x00000007 , 0x0000003f 
+ 00019573  0x00004b46 hstore  0x00000001 , 0x00008023 
+ 00019574  0x00004b47 ifetch  0x00000001 , 0x00000003 
+ 00019575  0x00004b48 iadd  0x00000002 , 0x00000002 
+ 00019576  0x00004b49 copy  0x0000003f , 0x00000039 
+ 00019577  0x00004b4a rtn 
+ 00019578  0x00004b4d bmark1  0x0000002b , 0x00004cc4 
+ 00019579  0x00004b4e call  0x00004c6f 
+ 00019580  0x00004b50 ifetch  0x00000001 , 0x00000003 
+ 00019581  0x00004b51 hstore  0x00000001 , 0x00008025 
+ 00019582  0x00004b52 iadd  0x00000002 , 0x00000002 
+ 00019583  0x00004b53 loop  0x00004c7c 
+ 00019584  0x00004b55 and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019585  0x00004b56 ifetch  0x00000001 , 0x00000003 
+ 00019586  0x00004b57 isub  0x00000002 , 0x0000003e 
+ 00019587  0x00004b58 nbranch  0x00004cc4 , 0x00000005 
+ 00019588  0x00004b59 branch  0x00004cdc 
+ 00019589  0x00004b5d bmark0  0x0000002b , 0x00004cc4 
+ 00019590  0x00004b5e call  0x00004c6f 
+ 00019591  0x00004b5f store  0x00000008 , 0x00000a9a 
+ 00019592  0x00004b61 call  0x00007422 
+ 00019593  0x00004b62 arg  0x00000010 , 0x00000039 
+ 00019594  0x00004b63 arg  0x00000ac2 , 0x00000005 
+ 00019595  0x00004b64 call  0x00004ca0 
+ 00019596  0x00004b65 storet  0x00000008 , 0x00000aa2 
+ 00019597  0x00004b66 arg  0x00000ad2 , 0x00000005 
+ 00019598  0x00004b67 call  0x00007497 
+ 00019599  0x00004b68 arg  0x00000ad2 , 0x00000011 
+ 00019600  0x00004b69 arg  0x00000ac2 , 0x00000012 
+ 00019601  0x00004b6a arg  0x00000ae2 , 0x00000005 
+ 00019602  0x00004b6b call  0x00007352 
+ 00019603  0x00004b6c arg  0x00000010 , 0x00000039 
+ 00019604  0x00004b6d arg  0x00000ae2 , 0x00000006 
+ 00019605  0x00004b6e call  0x00004c9c 
+ 00019606  0x00004b6f fetcht  0x00000008 , 0x00000aa2 
+ 00019607  0x00004b70 fetch  0x00000008 , 0x00000a9a 
+ 00019608  0x00004b71 increase  0xfffffff0 , 0x0000003f 
+ 00019609  0x00004b72 store  0x00000008 , 0x00000a9a 
+ 00019610  0x00004b73 nbranch  0x00004c88 , 0x00000034 
+ 00019611  0x00004b74 branch  0x00004c80 
+ 00019612  0x00004b77 ifetch  0x00000001 , 0x00000006 
+ 00019613  0x00004b78 hstore  0x00000001 , 0x00008025 
+ 00019614  0x00004b79 loop  0x00004c9c 
+ 00019615  0x00004b7a rtn 
+ 00019616  0x00004b7d ifetch  0x00000001 , 0x00000003 
+ 00019617  0x00004b7e istore  0x00000001 , 0x00000005 
+ 00019618  0x00004b7f iadd  0x00000002 , 0x00000002 
+ 00019619  0x00004b80 loop  0x00004ca0 
+ 00019620  0x00004b81 rtn 
+ 00019621  0x00004b84 bmark0  0x0000002b , 0x00004cc4 
+ 00019622  0x00004b85 arg  0x00000000 , 0x00000002 
+ 00019623  0x00004b86 arg  0x00000010 , 0x00000039 
+ 00019624  0x00004b87 arg  0x00000ac2 , 0x00000005 
+ 00019625  0x00004b88 call  0x00004ca0 
+ 00019626  0x00004b89 hfetch  0x00000001 , 0x00008085 
+ 00019627  0x00004b8a and_into  0x000000fd , 0x0000003f 
+ 00019628  0x00004b8b hstore  0x00000001 , 0x00008085 
+ 00019629  0x00004b8c arg  0x00000ac2 , 0x00000006 
+ 00019630  0x00004b8d arg  0x00000010 , 0x00000039 
+ 00019631  0x00004b8e call  0x00007478 
+ 00019632  0x00004b8f call  0x00007428 
+ 00019633  0x00004b90 call  0x00007491 
+ 00019634  0x00004b91 branch  0x00004c80 
+ 00019635  0x00004b95 arg  0x00000020 , 0x00000039 
+ 00019636  0x00004b96 arg  0x00004000 , 0x00000005 
+ 00019637  0x00004b97 arg  0x00000000 , 0x00000002 
+ 00019638  0x00004b99 ifetch  0x00000001 , 0x00000003 
+ 00019639  0x00004b9a istore  0x00000001 , 0x00000005 
+ 00019640  0x00004b9b iadd  0x00000002 , 0x00000002 
+ 00019641  0x00004b9c loop  0x00004cb6 
+ 00019642  0x00004b9d and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019643  0x00004b9e ifetch  0x00000001 , 0x00000003 
+ 00019644  0x00004b9f isub  0x00000002 , 0x0000003e 
+ 00019645  0x00004ba0 nbranch  0x00004cc4 , 0x00000005 
+ 00019646  0x00004ba1 jam  0x00000000 , 0x00008023 
+ 00019647  0x00004ba2 call  0x00004cdc 
+ 00019648  0x00004ba3 call  0x00004be6 
+ 00019649  0x00004ba4 call  0x000064a3 
+ 00019650  0x00004ba5 call  0x00007f9e 
+ 00019651  0x00004ba6 branch  0x00002001 
+ 00019652  0x00004ba9 jam  0x00000000 , 0x00008023 
+ 00019653  0x00004baa branch  0x00002000 
+ 00019654  0x00004bad ifetch  0x00000006 , 0x00000003 
+ 00019655  0x00004bae store  0x00000006 , 0x000040a0 
+ 00019656  0x00004baf branch  0x00004cdc 
+ 00019657  0x00004bb3 ifetch  0x00000001 , 0x00000003 
+ 00019658  0x00004bb4 store  0x00000001 , 0x0000025a 
+ 00019659  0x00004bb5 copy  0x0000003f , 0x00000039 
+ 00019660  0x00004bb6 ifetch  0x00000002 , 0x00000003 
+ 00019661  0x00004bb7 store  0x00000002 , 0x0000025b 
+ 00019662  0x00004bb8 copy  0x0000003f , 0x00000005 
+ 00019663  0x00004bb9 call  0x000066fd 
+ 00019664  0x00004bba branch  0x00004cdc 
+ 00019665  0x00004bbe ifetch  0x00000001 , 0x00000003 
+ 00019666  0x00004bbf store  0x00000001 , 0x0000025a 
+ 00019667  0x00004bc0 copy  0x0000003f , 0x00000039 
+ 00019668  0x00004bc1 ifetch  0x00000002 , 0x00000003 
+ 00019669  0x00004bc2 store  0x00000002 , 0x0000025b 
+ 00019670  0x00004bc3 arg  0x00001000 , 0x00000005 
+ 00019671  0x00004bc4 call  0x000066fd 
+ 00019672  0x00004bc5 fetcht  0x00000001 , 0x0000025a 
+ 00019673  0x00004bc6 arg  0x00001000 , 0x00000011 
+ 00019674  0x00004bc7 fetch  0x00000002 , 0x0000025b 
+ 00019675  0x00004bc8 branch  0x00006608 
+ 00019676  0x00004bce force  0x00000004 , 0x00000039 
+ 00019677  0x00004bd0 call  0x00004cf4 
+ 00019678  0x00004bd1 force  0x00000001 , 0x0000003f 
+ 00019679  0x00004bd2 istore  0x00000001 , 0x0000000a 
+ 00019680  0x00004bd3 deposit  0x00000030 
+ 00019681  0x00004bd4 istore  0x00000003 , 0x0000000a 
+ 00019682  0x00004bd5 force  0x0000000e , 0x00000007 
+ 00019683  0x00004bd7 bpatchx  0x00000004 , 0x00004020 
+ 00019684  0x00004bd8 call  0x00004cf6 
+ 00019685  0x00004bd9 deposit  0x00000007 
+ 00019686  0x00004bda istore  0x00000001 , 0x0000000a 
+ 00019687  0x00004bdb deposit  0x00000039 
+ 00019688  0x00004bdc istore  0x00000001 , 0x0000000a 
+ 00019689  0x00004bde force  0x00000005 , 0x00000007 
+ 00019690  0x00004bdf increase  0x00000002 , 0x00000039 
+ 00019691  0x00004be1 branch  0x00004bf9 
+ 00019692  0x00004be4 force  0x000000ff , 0x00000007 
+ 00019693  0x00004be5 call  0x00004cf4 
+ 00019694  0x00004be6 setarg  0x00000001 
+ 00019695  0x00004be7 istore  0x00000001 , 0x0000000a 
+ 00019696  0x00004be8 force  0x00000001 , 0x00000039 
+ 00019697  0x00004be9 branch  0x00004ce3 
+ 00019698  0x00004bec force  0x0000000c , 0x0000000a 
+ 00019699  0x00004bed branch  0x00004cf7 
+ 00019700  0x00004bf0 force  0x00000008 , 0x0000000a 
+ 00019701  0x00004bf1 branch  0x00004cf7 
+ 00019702  0x00004bf4 force  0x00000006 , 0x0000000a 
+ 00019703  0x00004bf6 branch  0x00004bf5 
+ 00019704  0x00004bfb pulse  0x0000000f 
+ 00019705  0x00004bfc enable  0x00000009 
+ 00019706  0x00004bfe ifetch  0x00000001 , 0x0000000a 
+ 00019707  0x00004bff inject  0x00000000 , 0x00000008 
+ 00019708  0x00004c00 loop  0x00004cfa 
+ 00019709  0x00004c01 enable  0x00000008 
+ 00019710  0x00004c02 inject  0x00000000 , 0x00000010 
+ 00019711  0x00004c03 disable  0x00000008 
+ 00019712  0x00004c04 disable  0x00000009 
+ 00019713  0x00004c05 disable  0x0000000f 
+ 00019714  0x00004c06 byteswap  0x0000003f , 0x0000003f 
+ 00019715  0x00004c07 rtn 
+ 00019716  0x00004c0c jam  0x00000000 , 0x000041ce 
+ 00019717  0x00004c0d rtn 
+ 00019718  0x00004c0f fetch  0x00000006 , 0x000041d0 
+ 00019719  0x00004c10 fetcht  0x00000006 , 0x00000040 
+ 00019720  0x00004c11 isub  0x00000002 , 0x0000003e 
+ 00019721  0x00004c12 rtn 
+ 00019722  0x00004c18 fetch  0x00000001 , 0x0000004b 
+ 00019723  0x00004c19 bbit1  0x00000002 , 0x00004d0f 
+ 00019724  0x00004c1a call  0x000062ef 
+ 00019725  0x00004c1b jam  0x00000008 , 0x0000007c 
+ 00019726  0x00004c1c branch  0x00004d04 
+ 00019727  0x00004c1e set0  0x00000002 , 0x0000003f 
+ 00019728  0x00004c1f store  0x00000001 , 0x0000004b 
+ 00019729  0x00004c20 call  0x00006001 
+ 00019730  0x00004c21 setarg  0x00000000 
+ 00019731  0x00004c22 setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00019732  0x00004c23 store  0x00000001 , 0x0000007f 
+ 00019733  0x00004c24 branch  0x00004d04 
+ 00019734  0x00004c25 rtn 
+ 00019735  0x00004c27 jam  0x00000017 , 0x0000007c 
+ 00019736  0x00004c28 arg  0x000004d9 , 0x00000005 
+ 00019737  0x00004c29 setarg  0x00000000 
+ 00019738  0x00004c2a isolate1  0x0000001b , 0x00000028 
+ 00019739  0x00004c2b setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00019740  0x00004c2c istore  0x00000001 , 0x00000005 
+ 00019741  0x00004c2d setarg  0x00000000 
+ 00019742  0x00004c2e istore  0x00000002 , 0x00000005 
+ 00019743  0x00004c2f fetch  0x00000002 , 0x000041e3 
+ 00019744  0x00004c30 istore  0x00000002 , 0x00000005 
+ 00019745  0x00004c31 fetch  0x00000001 , 0x000041e5 
+ 00019746  0x00004c32 istore  0x00000002 , 0x00000005 
+ 00019747  0x00004c33 fetch  0x00000001 , 0x000041e7 
+ 00019748  0x00004c34 istore  0x00000002 , 0x00000005 
+ 00019749  0x00004c35 branch  0x00004d04 
+ 00019750  0x00004c38 jam  0x00000018 , 0x0000007c 
+ 00019751  0x00004c39 branch  0x00004d04 
+ 00019752  0x00004c3c call  0x00006899 
+ 00019753  0x00004c3d rtn  0x00000001 
+ 00019754  0x00004c3e arg  0x00000007 , 0x00000002 
+ 00019755  0x00004c3f call  0x0000681d 
+ 00019756  0x00004c40 nbranch  0x00004d2f , 0x00000001 
+ 00019757  0x00004c41 jam  0x00000001 , 0x00004245 
+ 00019758  0x00004c42 rtn 
+ 00019759  0x00004c44 fetch  0x00000001 , 0x00004245 
+ 00019760  0x00004c45 rtnne  0x00000001 
+ 00019761  0x00004c46 call  0x00004c62 
+ 00019762  0x00004c47 branch  0x00004cec 
+ 00019763  0x00004c56 bpatchx  0x00000005 , 0x00004020 
+ 00019764  0x00004c57 fetch  0x00000002 , 0x00000264 
+ 00019765  0x00004c58 copy  0x0000003f , 0x00000006 
+ 00019766  0x00004c59 ifetch  0x00000001 , 0x00000006 
+ 00019767  0x00004c5a and  0x0000003f , 0x0000000f , 0x00000002 
+ 00019768  0x00004c5b rshift4  0x0000003f , 0x0000003f 
+ 00019769  0x00004c5c beq  0x00000009 , 0x00004d53 
+ 00019770  0x00004c5d beq  0x00000007 , 0x00004d53 
+ 00019771  0x00004c5e beq  0x0000000a , 0x00004d5f 
+ 00019772  0x00004c5f beq  0x00000005 , 0x00004d4b 
+ 00019773  0x00004c60 beq  0x00000001 , 0x00004d3f 
+ 00019774  0x00004c61 rtn 
+ 00019775  0x00004c64 copy  0x00000002 , 0x0000003f 
+ 00019776  0x00004c65 beq  0x00000005 , 0x00004d43 
+ 00019777  0x00004c66 beq  0x00000003 , 0x00004d4a 
+ 00019778  0x00004c67 rtn 
+ 00019779  0x00004c6a jam  0x00000027 , 0x00000a99 
+ 00019780  0x00004c6b call  0x00007d86 
+ 00019781  0x00004c6c fetch  0x00000001 , 0x00004092 
+ 00019782  0x00004c6d rtnbit0  0x00000006 
+ 00019783  0x00004c6e copy  0x00000002 , 0x0000003f 
+ 00019784  0x00004c6f beq  0x00000005 , 0x0000438e 
+ 00019785  0x00004c70 rtn 
+ 00019786  0x00004c72 rtn 
+ 00019787  0x00004c75 call  0x00004d5f 
+ 00019788  0x00004c76 arg  0x00000001 , 0x00000011 
+ 00019789  0x00004c77 call  0x00004d63 
+ 00019790  0x00004c78 fetch  0x00000002 , 0x0000424c 
+ 00019791  0x00004c79 istore  0x00000002 , 0x00000005 
+ 00019792  0x00004c7a setarg  0x00000000 
+ 00019793  0x00004c7b istore  0x00000001 , 0x00000005 
+ 00019794  0x00004c7c rtn 
+ 00019795  0x00004c7f arg  0x00000001 , 0x00000011 
+ 00019796  0x00004c80 call  0x00004d63 
+ 00019797  0x00004c81 fetch  0x00000002 , 0x0000424c 
+ 00019798  0x00004c82 istore  0x00000002 , 0x00000005 
+ 00019799  0x00004c83 setarg  0x00000000 
+ 00019800  0x00004c84 istore  0x00000001 , 0x00000005 
+ 00019801  0x00004c85 jam  0x00000001 , 0x00000a8e 
+ 00019802  0x00004c86 fetch  0x00000001 , 0x00004252 
+ 00019803  0x00004c87 set1  0x00000006 
+ 00019804  0x00004c88 store  0x00000001 , 0x00004252 
+ 00019805  0x00004c89 jam  0x00000012 , 0x00000a99 
+ 00019806  0x00004c8a branch  0x00007d86 
+ 00019807  0x00004c8d ifetch  0x00000001 , 0x00000006 
+ 00019808  0x00004c8e beq  0x00000001 , 0x00004d62 
+ 00019809  0x00004c8f rtn 
+ 00019810  0x00004c92 rtn 
+ 00019811  0x00004c96 call  0x00005240 
+ 00019812  0x00004c97 copy  0x00000011 , 0x00000002 
+ 00019813  0x00004c98 storet  0x00000001 , 0x00000a8e 
+ 00019814  0x00004c99 copy  0x0000003f , 0x00000005 
+ 00019815  0x00004c9a copy  0x00000011 , 0x0000003f 
+ 00019816  0x00004c9b istore  0x00000002 , 0x00000005 
+ 00019817  0x00004c9c rtn 
+ 00019818  0x00004cae branch  0x00004d6f , 0x0000002b 
+ 00019819  0x00004cb0 setarg  0x00004365 
+ 00019820  0x00004cb1 arg  0x00004246 , 0x00000005 
+ 00019821  0x00004cb2 isub  0x00000005 , 0x00000039 
+ 00019822  0x00004cb3 call  0x00007ed4 
+ 00019823  0x00004cb5 bpatchx  0x00000006 , 0x00004020 
+ 00019824  0x00004cb6 setarg  0x00000551 
+ 00019825  0x00004cb7 arg  0x00000511 , 0x00000005 
+ 00019826  0x00004cb8 isub  0x00000005 , 0x00000039 
+ 00019827  0x00004cb9 call  0x00007ed4 
+ 00019828  0x00004cba setarg  0x000002c9 
+ 00019829  0x00004cbb arg  0x0000025d , 0x00000005 
+ 00019830  0x00004cbc isub  0x00000005 , 0x00000039 
+ 00019831  0x00004cbd call  0x00007ed4 
+ 00019832  0x00004cbe branch  0x00005318 
+ 00019833  0x00004cc1 bpatchx  0x00000007 , 0x00004020 
+ 00019834  0x00004cc2 copy  0x00000006 , 0x00000002 
+ 00019835  0x00004cc5 copy  0x00000002 , 0x00000006 
+ 00019836  0x00004cc6 ifetch  0x00000002 , 0x00000006 
+ 00019837  0x00004cc7 store  0x00000002 , 0x00000266 
+ 00019838  0x00004cc8 ifetch  0x00000002 , 0x00000006 
+ 00019839  0x00004cc9 store  0x00000002 , 0x00000268 
+ 00019840  0x00004cca deposit  0x00000006 
+ 00019841  0x00004ccb store  0x00000002 , 0x00000264 
+ 00019842  0x00004ccc fetch  0x00000001 , 0x00004681 
+ 00019843  0x00004ccd beq  0x00000000 , 0x00004d85 
+ 00019844  0x00004cce branch  0x000050ef 
+ 00019845  0x00004cd1 fetch  0x00000002 , 0x00000266 
+ 00019846  0x00004cd2 branch  0x00004dfc , 0x00000034 
+ 00019847  0x00004cd3 bpatchx  0x00000008 , 0x00004021 
+ 00019848  0x00004cd4 fetch  0x00000001 , 0x00000268 
+ 00019849  0x00004cd5 beq  0x00000001 , 0x00004d9d 
+ 00019850  0x00004cd7 beq  0x00000050 , 0x00004de0 
+ 00019851  0x00004cd8 beq  0x00000051 , 0x00004df5 
+ 00019852  0x00004cd9 beq  0x00000052 , 0x00004df3 
+ 00019853  0x00004cda beq  0x00000053 , 0x00004df3 
+ 00019854  0x00004cdb branch  0x00004dfc 
+ 00019855  0x00004ce0 bpatchx  0x00000009 , 0x00004021 
+ 00019856  0x00004ce1 call  0x0000527e 
+ 00019857  0x00004ce2 fetch  0x00000001 , 0x00004256 
+ 00019858  0x00004ce3 beq  0x00000000 , 0x00004d9b 
+ 00019859  0x00004ce4 beq  0x00000001 , 0x00004d9b 
+ 00019860  0x00004ce5 beq  0x00000002 , 0x00004d9b 
+ 00019861  0x00004ce6 beq  0x00000003 , 0x00004d9b 
+ 00019862  0x00004ce7 beq  0x00000081 , 0x00004d9b 
+ 00019863  0x00004ce8 beq  0x000000c0 , 0x00004d9b 
+ 00019864  0x00004ce9 beq  0x00000080 , 0x00004d9b 
+ 00019865  0x00004cea beq  0x00000040 , 0x00004d9b 
+ 00019866  0x00004ceb rtn 
+ 00019867  0x00004cee setarg  0x00000000 
+ 00019868  0x00004cef rtn 
+ 00019869  0x00004cf3 call  0x00004d8f 
+ 00019870  0x00004cf4 nrtn  0x00000034 
+ 00019871  0x00004cf6 call  0x000052b8 
+ 00019872  0x00004cf7 call  0x00004e01 
+ 00019873  0x00004cf8 fetcht  0x00000002 , 0x0000026f 
+ 00019874  0x00004cf9 branch  0x00004dfb , 0x00000034 
+ 00019875  0x00004cfa call  0x000052c1 
+ 00019876  0x00004cfb fetch  0x00000002 , 0x0000026f 
+ 00019877  0x00004cfc istore  0x00000002 , 0x00000005 
+ 00019878  0x00004cfd force  0x00000001 , 0x0000003f 
+ 00019879  0x00004cfe istore  0x00000002 , 0x00000005 
+ 00019880  0x00004cff branch  0x00004dfc 
+ 00019881  0x00004d02 fetch  0x00000001 , 0x00004364 
+ 00019882  0x00004d03 rtn  0x00000034 
+ 00019883  0x00004d04 copy  0x0000003f , 0x00000011 
+ 00019884  0x00004d05 bpatchx  0x0000000a , 0x00004021 
+ 00019885  0x00004d06 fetch  0x00000004 , 0x000002d5 
+ 00019886  0x00004d07 arg  0x00000100 , 0x00000002 
+ 00019887  0x00004d08 iadd  0x00000002 , 0x00000002 
+ 00019888  0x00004d09 copy  0x00000022 , 0x0000003f 
+ 00019889  0x00004d0a isub  0x00000002 , 0x0000003e 
+ 00019890  0x00004d0b nrtn  0x00000002 
+ 00019891  0x00004d0c jam  0x00000000 , 0x00004364 
+ 00019892  0x00004d0d copy  0x00000011 , 0x0000003f 
+ 00019893  0x00004d0e beq  0x00000050 , 0x00004db7 
+ 00019894  0x00004d0f branch  0x00002a8c 
+ 00019895  0x00004d11 arg  0x00000000 , 0x00000008 
+ 00019896  0x00004d12 call  0x000052b8 
+ 00019897  0x00004d13 call  0x00004e7a 
+ 00019898  0x00004d14 call  0x000052c3 
+ 00019899  0x00004d15 call  0x00007ea8 
+ 00019900  0x00004d16 call  0x00004ead 
+ 00019901  0x00004d17 call  0x000052c1 
+ 00019902  0x00004d19 setarg  0x0000000c 
+ 00019903  0x00004d1a istore  0x00000002 , 0x00000005 
+ 00019904  0x00004d1b force  0x00000001 , 0x0000003f 
+ 00019905  0x00004d1c istore  0x00000002 , 0x00000005 
+ 00019906  0x00004d1d branch  0x00004dfc 
+ 00019907  0x00004d22 bpatchx  0x0000000b , 0x00004021 
+ 00019908  0x00004d23 fetch  0x00000002 , 0x00000275 
+ 00019909  0x00004d24 increase  0x00000004 , 0x0000003f 
+ 00019910  0x00004d25 rshift4  0x0000003f , 0x0000003f 
+ 00019911  0x00004d26 rshift3  0x0000003f , 0x0000003f 
+ 00019912  0x00004d27 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00019913  0x00004d28 arg  0x00004260 , 0x00000006 
+ 00019914  0x00004d29 ifetch  0x00000003 , 0x00000006 
+ 00019915  0x00004d2a rtn  0x00000034 
+ 00019916  0x00004d2b store  0x00000003 , 0x00000ac2 
+ 00019917  0x00004d2c fetch  0x00000001 , 0x00000ac2 
+ 00019918  0x00004d2d copy  0x0000003f , 0x00000011 
+ 00019919  0x00004d2e call  0x00004dd3 
+ 00019920  0x00004d2f copy  0x00000012 , 0x0000003f 
+ 00019921  0x00004d30 store  0x00000001 , 0x00004260 
+ 00019922  0x00004d31 rtn 
+ 00019923  0x00004d34 arg  0x00000000 , 0x00000007 
+ 00019924  0x00004d35 arg  0x00000000 , 0x00000012 
+ 00019925  0x00004d38 sub  0x00000007 , 0x00000007 , 0x0000003e 
+ 00019926  0x00004d39 nrtn  0x00000002 
+ 00019927  0x00004d3a qisolate1  0x00000011 
+ 00019928  0x00004d3b branch  0x00004dda , 0x00000001 
+ 00019929  0x00004d3c branch  0x00004dde 
+ 00019930  0x00004d3f copy  0x00000002 , 0x0000003f 
+ 00019931  0x00004d40 branch  0x00004dde , 0x00000034 
+ 00019932  0x00004d41 qset1  0x00000012 
+ 00019933  0x00004d42 increase  0xffffffff , 0x00000002 
+ 00019934  0x00004d45 increase  0x00000001 , 0x00000007 
+ 00019935  0x00004d46 branch  0x00004dd5 
+ 00019936  0x00004d49 call  0x00005274 
+ 00019937  0x00004d4a nrtn  0x00000034 
+ 00019938  0x00004d4b call  0x00004d8f 
+ 00019939  0x00004d4c nrtn  0x00000034 
+ 00019940  0x00004d4d call  0x000052c5 
+ 00019941  0x00004d4e call  0x00006e11 
+ 00019942  0x00004d4f call  0x00004dc3 
+ 00019943  0x00004d50 branch  0x00004dec 
+ 00019944  0x00004d54 call  0x00005274 
+ 00019945  0x00004d55 nrtn  0x00000034 
+ 00019946  0x00004d56 call  0x000052c5 
+ 00019947  0x00004d57 call  0x00006e11 
+ 00019948  0x00004d59 call  0x000052ce 
+ 00019949  0x00004d5a fetch  0x00000002 , 0x00000275 
+ 00019950  0x00004d5b branch  0x00004dfb , 0x00000034 
+ 00019951  0x00004d5c istore  0x00000002 , 0x00000005 
+ 00019952  0x00004d5d fetch  0x00000002 , 0x00004248 
+ 00019953  0x00004d5e istore  0x00000002 , 0x00000005 
+ 00019954  0x00004d5f branch  0x00004dfc 
+ 00019955  0x00004d62 call  0x00004d33 
+ 00019956  0x00004d63 branch  0x00004dfc 
+ 00019957  0x00004d66 bpatchx  0x0000000c , 0x00004021 
+ 00019958  0x00004d67 jam  0x00000000 , 0x00000284 
+ 00019959  0x00004d68 call  0x00006a8a 
+ 00019960  0x00004d69 fetch  0x00000001 , 0x00000284 
+ 00019961  0x00004d6a rtneq  0x00000001 
+ 00019962  0x00004d6b branch  0x00004dfc 
+ 00019963  0x00004d6d call  0x00005264 
+ 00019964  0x00004d70 setarg  0x00000000 
+ 00019965  0x00004d71 store  0x00000002 , 0x00000266 
+ 00019966  0x00004d72 store  0x00000002 , 0x00000268 
+ 00019967  0x00004d73 jam  0x00000001 , 0x0000026a 
+ 00019968  0x00004d74 rtn 
+ 00019969  0x00004d77 bpatchx  0x0000000d , 0x00004021 
+ 00019970  0x00004d78 call  0x000052c3 
+ 00019971  0x00004d79 force  0x00000000 , 0x00000012 
+ 00019972  0x00004d7a fetch  0x00000002 , 0x00000266 
+ 00019973  0x00004d7b copy  0x0000003f , 0x00000013 
+ 00019974  0x00004d7c fetch  0x00000002 , 0x00000264 
+ 00019975  0x00004d7d iforce  0x00000006 
+ 00019976  0x00004d7f call  0x00004e10 
+ 00019977  0x00004d80 deposit  0x00000013 
+ 00019978  0x00004d81 increase  0xfffffffc , 0x00000013 
+ 00019979  0x00004d82 increase  0xfffffffc , 0x0000003f 
+ 00019980  0x00004d83 nbranch  0x00004e08 , 0x00000034 
+ 00019981  0x00004d84 copy  0x00000012 , 0x0000003f 
+ 00019982  0x00004d85 store  0x00000002 , 0x0000026f 
+ 00019983  0x00004d86 rtn 
+ 00019984  0x00004d89 bpatchx  0x0000000e , 0x00004021 
+ 00019985  0x00004d8a ifetch  0x00000001 , 0x00000006 
+ 00019986  0x00004d8b beq  0x00000001 , 0x00004e49 
+ 00019987  0x00004d8c beq  0x00000002 , 0x00004e51 
+ 00019988  0x00004d8d beq  0x00000003 , 0x00004ed5 
+ 00019989  0x00004d8e beq  0x00000004 , 0x00004f05 
+ 00019990  0x00004d8f beq  0x00000005 , 0x00004fa2 
+ 00019991  0x00004d90 beq  0x00000006 , 0x00004fcb 
+ 00019992  0x00004d91 beq  0x00000007 , 0x0000501b 
+ 00019993  0x00004d92 beq  0x00000008 , 0x00005050 
+ 00019994  0x00004d93 beq  0x00000009 , 0x00005060 
+ 00019995  0x00004d94 beq  0x0000000a , 0x00004e1f 
+ 00019996  0x00004d95 beq  0x0000000b , 0x00005061 
+ 00019997  0x00004d96 call  0x00005062 
+ 00019998  0x00004d98 rtn 
+ 00019999  0x00004d9b ifetch  0x00000001 , 0x00000006 
+ 00020000  0x00004d9c copy  0x0000003f , 0x00000007 
+ 00020001  0x00004d9d ifetch  0x00000002 , 0x00000006 
+ 00020002  0x00004d9e copy  0x0000003f , 0x00000011 
+ 00020003  0x00004d9f copy  0x00000013 , 0x0000003f 
+ 00020004  0x00004da0 isub  0x00000011 , 0x00000013 
+ 00020005  0x00004da1 setarg  0x0000000b 
+ 00020006  0x00004da2 istore  0x00000001 , 0x00000005 
+ 00020007  0x00004da3 copy  0x00000007 , 0x0000003f 
+ 00020008  0x00004da4 istore  0x00000001 , 0x00000005 
+ 00020009  0x00004da5 ifetch  0x00000002 , 0x00000006 
+ 00020010  0x00004da7 beq  0x00000002 , 0x00004e2d 
+ 00020011  0x00004da8 beq  0x00000003 , 0x00004e33 
+ 00020012  0x00004da9 rtn 
+ 00020013  0x00004dab setarg  0x00020008 
+ 00020014  0x00004dac istore  0x00000006 , 0x00000005 
+ 00020015  0x00004dad setarg  0x00000280 
+ 00020016  0x00004dae istore  0x00000004 , 0x00000005 
+ 00020017  0x00004daf force  0x0000000c , 0x0000003f 
+ 00020018  0x00004db0 branch  0x00004e38 
+ 00020019  0x00004db2 setarg  0x0003000c 
+ 00020020  0x00004db3 istore  0x00000006 , 0x00000005 
+ 00020021  0x00004db4 setarg  0x00000006 
+ 00020022  0x00004db5 istore  0x00000008 , 0x00000005 
+ 00020023  0x00004db6 force  0x00000010 , 0x0000003f 
+ 00020024  0x00004db8 iadd  0x00000012 , 0x00000012 
+ 00020025  0x00004db9 branch  0x00004e1e 
+ 00020026  0x00004dbc ifetch  0x00000001 , 0x00000006 
+ 00020027  0x00004dbd copy  0x0000003f , 0x00000007 
+ 00020028  0x00004dbe ifetch  0x00000002 , 0x00000006 
+ 00020029  0x00004dbf copy  0x0000003f , 0x00000011 
+ 00020030  0x00004dc0 ifetch  0x00000002 , 0x00000006 
+ 00020031  0x00004dc1 store  0x00000002 , 0x00000aa2 
+ 00020032  0x00004dc2 copy  0x00000013 , 0x0000003f 
+ 00020033  0x00004dc3 isub  0x00000011 , 0x00000013 
+ 00020034  0x00004dc4 call  0x000052c3 
+ 00020035  0x00004dc5 setarg  0x0000000b 
+ 00020036  0x00004dc6 istore  0x00000001 , 0x00000005 
+ 00020037  0x00004dc7 copy  0x00000007 , 0x0000003f 
+ 00020038  0x00004dc8 istore  0x00000001 , 0x00000005 
+ 00020039  0x00004dc9 fetch  0x00000002 , 0x00000aa2 
+ 00020040  0x00004dca branch  0x00004e2a 
+ 00020041  0x00004dcf ifetch  0x00000001 , 0x00000006 
+ 00020042  0x00004dd0 copy  0x0000003f , 0x00000007 
+ 00020043  0x00004dd1 ifetch  0x00000002 , 0x00000006 
+ 00020044  0x00004dd2 copy  0x0000003f , 0x00000011 
+ 00020045  0x00004dd3 iadd  0x00000006 , 0x00000006 
+ 00020046  0x00004dd4 copy  0x00000013 , 0x0000003f 
+ 00020047  0x00004dd5 isub  0x00000011 , 0x00000013 
+ 00020048  0x00004dd7 branch  0x00004e1e 
+ 00020049  0x00004dda call  0x00007ea8 
+ 00020050  0x00004ddd call  0x00007ead 
+ 00020051  0x00004dde arg  0x00000000 , 0x00000008 
+ 00020052  0x00004ddf ifetch  0x00000001 , 0x00000006 
+ 00020053  0x00004de0 copy  0x0000003f , 0x00000007 
+ 00020054  0x00004de1 ifetch  0x00000002 , 0x00000006 
+ 00020055  0x00004de2 copy  0x0000003f , 0x00000011 
+ 00020056  0x00004de3 ifetch  0x00000002 , 0x00000006 
+ 00020057  0x00004de4 copy  0x0000003f , 0x00000002 
+ 00020058  0x00004de5 ifetch  0x00000002 , 0x00000006 
+ 00020059  0x00004de6 copy  0x0000003f , 0x0000000b 
+ 00020060  0x00004de7 bpatchx  0x0000000f , 0x00004021 
+ 00020061  0x00004de8 copy  0x00000002 , 0x0000003f 
+ 00020062  0x00004de9 beq  0x00000001 , 0x00004e64 
+ 00020063  0x00004dea beq  0x00000003 , 0x00004e86 
+ 00020064  0x00004deb beq  0x00000011 , 0x00004e92 
+ 00020065  0x00004dec beq  0x00000013 , 0x00004e9d 
+ 00020066  0x00004ded call  0x00005062 
+ 00020067  0x00004dee branch  0x00004ed4 
+ 00020068  0x00004df1 call  0x00007ea8 
+ 00020069  0x00004df2 arg  0x00000050 , 0x00000002 
+ 00020070  0x00004df3 fetch  0x00000002 , 0x00004248 
+ 00020071  0x00004df4 nbranch  0x00004ece , 0x00000034 
+ 00020072  0x00004df5 copy  0x0000000b , 0x0000003f 
+ 00020073  0x00004df6 store  0x00000002 , 0x00004248 
+ 00020074  0x00004df7 copy  0x00000022 , 0x0000003f 
+ 00020075  0x00004df8 store  0x00000004 , 0x000002d5 
+ 00020076  0x00004df9 call  0x00004e6e 
+ 00020077  0x00004dfa branch  0x00004ea9 
+ 00020078  0x00004dfd storet  0x00000002 , 0x000002d3 
+ 00020079  0x00004dfe deposit  0x0000000b 
+ 00020080  0x00004dff store  0x00000002 , 0x000002c9 
+ 00020081  0x00004e00 deposit  0x00000011 
+ 00020082  0x00004e01 store  0x00000002 , 0x000002cb 
+ 00020083  0x00004e02 deposit  0x00000012 
+ 00020084  0x00004e03 store  0x00000002 , 0x000002cd 
+ 00020085  0x00004e04 deposit  0x00000013 
+ 00020086  0x00004e05 store  0x00000002 , 0x000002cf 
+ 00020087  0x00004e06 deposit  0x00000007 
+ 00020088  0x00004e07 store  0x00000002 , 0x000002d1 
+ 00020089  0x00004e08 rtn 
+ 00020090  0x00004e0b fetcht  0x00000002 , 0x000002d3 
+ 00020091  0x00004e0c fetch  0x00000002 , 0x000002c9 
+ 00020092  0x00004e0d copy  0x0000003f , 0x0000000b 
+ 00020093  0x00004e0e fetch  0x00000002 , 0x000002cb 
+ 00020094  0x00004e0f copy  0x0000003f , 0x00000011 
+ 00020095  0x00004e10 fetch  0x00000002 , 0x000002cd 
+ 00020096  0x00004e11 copy  0x0000003f , 0x00000012 
+ 00020097  0x00004e12 fetch  0x00000002 , 0x000002cf 
+ 00020098  0x00004e13 copy  0x0000003f , 0x00000013 
+ 00020099  0x00004e14 fetch  0x00000002 , 0x000002d1 
+ 00020100  0x00004e15 copy  0x0000003f , 0x00000007 
+ 00020101  0x00004e16 rtn 
+ 00020102  0x00004e19 call  0x00007ea8 
+ 00020103  0x00004e1a setarg  0x00000051 
+ 00020104  0x00004e1b arg  0x00000051 , 0x00000002 
+ 00020105  0x00004e1c fetch  0x00000002 , 0x0000424a 
+ 00020106  0x00004e1d nbranch  0x00004ece , 0x00000034 
+ 00020107  0x00004e1e copy  0x0000000b , 0x0000003f 
+ 00020108  0x00004e1f store  0x00000002 , 0x0000424a 
+ 00020109  0x00004e20 fetch  0x00000001 , 0x00004251 
+ 00020110  0x00004e21 set1  0x00000000 , 0x0000003f 
+ 00020111  0x00004e22 set1  0x00000001 , 0x0000003f 
+ 00020112  0x00004e23 store  0x00000001 , 0x00004251 
+ 00020113  0x00004e24 branch  0x00004eb1 
+ 00020114  0x00004e26 call  0x00007ea8 
+ 00020115  0x00004e27 arg  0x00000052 , 0x00000002 
+ 00020116  0x00004e28 fetch  0x00000002 , 0x0000424c 
+ 00020117  0x00004e29 nbranch  0x00004ece , 0x00000034 
+ 00020118  0x00004e2a copy  0x0000000b , 0x0000003f 
+ 00020119  0x00004e2b store  0x00000002 , 0x0000424c 
+ 00020120  0x00004e2c fetch  0x00000001 , 0x00004252 
+ 00020121  0x00004e2d set1  0x00000000 , 0x0000003f 
+ 00020122  0x00004e2e set1  0x00000001 , 0x0000003f 
+ 00020123  0x00004e2f store  0x00000001 , 0x00004252 
+ 00020124  0x00004e30 branch  0x00004eb1 
+ 00020125  0x00004e32 call  0x00007ea8 
+ 00020126  0x00004e33 deposit  0x0000001a 
+ 00020127  0x00004e34 arg  0x00000053 , 0x00000002 
+ 00020128  0x00004e35 fetch  0x00000002 , 0x0000424e 
+ 00020129  0x00004e36 nbranch  0x00004ece , 0x00000034 
+ 00020130  0x00004e37 copy  0x0000000b , 0x0000003f 
+ 00020131  0x00004e38 store  0x00000002 , 0x0000424e 
+ 00020132  0x00004e39 fetch  0x00000001 , 0x00004253 
+ 00020133  0x00004e3a set1  0x00000000 , 0x0000003f 
+ 00020134  0x00004e3b set1  0x00000001 , 0x0000003f 
+ 00020135  0x00004e3c store  0x00000001 , 0x00004253 
+ 00020136  0x00004e3d branch  0x00004eb1 
+ 00020137  0x00004e40 setarg  0x00000001 
+ 00020138  0x00004e41 store  0x00000002 , 0x0000027d 
+ 00020139  0x00004e42 jam  0x00000050 , 0x00004364 
+ 00020140  0x00004e43 branch  0x00004eb3 
+ 00020141  0x00004e45 fetch  0x00000001 , 0x00004250 
+ 00020142  0x00004e46 set1  0x00000000 , 0x0000003f 
+ 00020143  0x00004e47 set1  0x00000001 , 0x0000003f 
+ 00020144  0x00004e48 store  0x00000001 , 0x00004250 
+ 00020145  0x00004e4a setarg  0x00000000 
+ 00020146  0x00004e4b store  0x00000002 , 0x0000027d 
+ 00020147  0x00004e4d bpatchx  0x00000010 , 0x00004022 
+ 00020148  0x00004e4e call  0x00007ead 
+ 00020149  0x00004e4f setarg  0x00000003 
+ 00020150  0x00004e50 istore  0x00000001 , 0x00000005 
+ 00020151  0x00004e51 copy  0x00000007 , 0x0000003f 
+ 00020152  0x00004e52 istore  0x00000001 , 0x00000005 
+ 00020153  0x00004e53 setarg  0x00000008 
+ 00020154  0x00004e54 istore  0x00000002 , 0x00000005 
+ 00020155  0x00004e55 copy  0x00000002 , 0x0000003f 
+ 00020156  0x00004e56 istore  0x00000002 , 0x00000005 
+ 00020157  0x00004e57 copy  0x0000000b , 0x0000003f 
+ 00020158  0x00004e58 istore  0x00000002 , 0x00000005 
+ 00020159  0x00004e59 fetch  0x00000002 , 0x0000027d 
+ 00020160  0x00004e5a beq  0x00000001 , 0x00004ec9 
+ 00020161  0x00004e5b isolate0  0x00000000 , 0x00000008 
+ 00020162  0x00004e5c branch  0x00004ec4 , 0x00000001 
+ 00020163  0x00004e5d setarg  0x00000004 
+ 00020164  0x00004e5f istore  0x00000002 , 0x00000005 
+ 00020165  0x00004e60 force  0x00000000 , 0x0000003f 
+ 00020166  0x00004e61 istore  0x00000002 , 0x00000005 
+ 00020167  0x00004e62 setarg  0x0000000c 
+ 00020168  0x00004e63 branch  0x00004ed0 
+ 00020169  0x00004e65 istore  0x00000002 , 0x00000005 
+ 00020170  0x00004e66 force  0x00000002 , 0x0000003f 
+ 00020171  0x00004e67 istore  0x00000002 , 0x00000005 
+ 00020172  0x00004e68 setarg  0x0000000c 
+ 00020173  0x00004e69 branch  0x00004ed0 
+ 00020174  0x00004e6c set1  0x00000000 , 0x00000008 
+ 00020175  0x00004e6d branch  0x00004eb1 
+ 00020176  0x00004e6f iadd  0x00000012 , 0x00000012 
+ 00020177  0x00004e70 copy  0x00000013 , 0x0000003f 
+ 00020178  0x00004e71 isub  0x00000011 , 0x00000013 
+ 00020179  0x00004e72 branch  0x00004ed4 
+ 00020180  0x00004e74 branch  0x00004e1e 
+ 00020181  0x00004e77 ifetch  0x00000001 , 0x00000006 
+ 00020182  0x00004e78 copy  0x0000003f , 0x00000007 
+ 00020183  0x00004e79 ifetch  0x00000002 , 0x00000006 
+ 00020184  0x00004e7a copy  0x0000003f , 0x00000011 
+ 00020185  0x00004e7b copy  0x00000013 , 0x0000003f 
+ 00020186  0x00004e7c isub  0x00000011 , 0x00000013 
+ 00020187  0x00004e7d ifetch  0x00000002 , 0x00000006 
+ 00020188  0x00004e7e copy  0x0000003f , 0x0000000b 
+ 00020189  0x00004e7f ifetch  0x00000002 , 0x00000006 
+ 00020190  0x00004e80 copy  0x0000003f , 0x00000002 
+ 00020191  0x00004e81 bpatchx  0x00000011 , 0x00004022 
+ 00020192  0x00004e82 setarg  0x00000050 
+ 00020193  0x00004e83 isub  0x00000002 , 0x0000003e 
+ 00020194  0x00004e84 branch  0x00004eed , 0x00000005 
+ 00020195  0x00004e85 setarg  0x00000051 
+ 00020196  0x00004e86 isub  0x00000002 , 0x0000003e 
+ 00020197  0x00004e87 branch  0x00004ef3 , 0x00000005 
+ 00020198  0x00004e88 setarg  0x00000052 
+ 00020199  0x00004e89 isub  0x00000002 , 0x0000003e 
+ 00020200  0x00004e8a branch  0x00004eff , 0x00000005 
+ 00020201  0x00004e8b setarg  0x00000053 
+ 00020202  0x00004e8c isub  0x00000002 , 0x0000003e 
+ 00020203  0x00004e8d branch  0x00004ef9 , 0x00000005 
+ 00020204  0x00004e8e rtn 
+ 00020205  0x00004e91 copy  0x0000000b , 0x0000003f 
+ 00020206  0x00004e92 store  0x00000002 , 0x00004248 
+ 00020207  0x00004e93 fetch  0x00000001 , 0x00004250 
+ 00020208  0x00004e94 set1  0x00000001 , 0x0000003f 
+ 00020209  0x00004e95 store  0x00000001 , 0x00004250 
+ 00020210  0x00004e96 branch  0x00004e1e 
+ 00020211  0x00004e98 copy  0x0000000b , 0x0000003f 
+ 00020212  0x00004e99 store  0x00000002 , 0x0000424a 
+ 00020213  0x00004e9a fetch  0x00000001 , 0x00004251 
+ 00020214  0x00004e9b set1  0x00000001 , 0x0000003f 
+ 00020215  0x00004e9c store  0x00000001 , 0x00004251 
+ 00020216  0x00004e9d rtn 
+ 00020217  0x00004e9f copy  0x0000000b , 0x0000003f 
+ 00020218  0x00004ea0 store  0x00000002 , 0x0000424c 
+ 00020219  0x00004ea1 fetch  0x00000001 , 0x00004253 
+ 00020220  0x00004ea2 set1  0x00000001 , 0x0000003f 
+ 00020221  0x00004ea3 store  0x00000001 , 0x00004253 
+ 00020222  0x00004ea4 rtn 
+ 00020223  0x00004ea6 copy  0x0000000b , 0x0000003f 
+ 00020224  0x00004ea7 store  0x00000002 , 0x0000424e 
+ 00020225  0x00004ea8 fetch  0x00000001 , 0x00004252 
+ 00020226  0x00004ea9 set1  0x00000001 , 0x0000003f 
+ 00020227  0x00004eaa store  0x00000001 , 0x00004252 
+ 00020228  0x00004eab rtn 
+ 00020229  0x00004eae ifetch  0x00000001 , 0x00000006 
+ 00020230  0x00004eaf copy  0x0000003f , 0x00000007 
+ 00020231  0x00004eb0 ifetch  0x00000002 , 0x00000006 
+ 00020232  0x00004eb1 copy  0x0000003f , 0x00000011 
+ 00020233  0x00004eb2 copy  0x00000013 , 0x0000003f 
+ 00020234  0x00004eb3 isub  0x00000011 , 0x00000013 
+ 00020235  0x00004eb4 ifetch  0x00000002 , 0x00000006 
+ 00020236  0x00004eb5 copy  0x0000003f , 0x00000002 
+ 00020237  0x00004eb6 copy  0x00000002 , 0x00000011 
+ 00020238  0x00004eb7 bpatchx  0x00000012 , 0x00004022 
+ 00020239  0x00004eb8 setarg  0x00000050 
+ 00020240  0x00004eb9 isub  0x00000002 , 0x0000003e 
+ 00020241  0x00004eba branch  0x00004f1c , 0x00000005 
+ 00020242  0x00004ebb setarg  0x00000051 
+ 00020243  0x00004ebc isub  0x00000002 , 0x0000003e 
+ 00020244  0x00004ebd branch  0x00004f3a , 0x00000005 
+ 00020245  0x00004ebe setarg  0x00000052 
+ 00020246  0x00004ebf isub  0x00000002 , 0x0000003e 
+ 00020247  0x00004ec0 branch  0x00004f26 , 0x00000005 
+ 00020248  0x00004ec1 setarg  0x00000053 
+ 00020249  0x00004ec2 isub  0x00000002 , 0x0000003e 
+ 00020250  0x00004ec3 branch  0x00004f30 , 0x00000005 
+ 00020251  0x00004ec4 branch  0x00005062 
+ 00020252  0x00004ec7 copy  0x00000005 , 0x0000000b 
+ 00020253  0x00004ec8 fetch  0x00000001 , 0x00004250 
+ 00020254  0x00004ec9 set1  0x00000004 , 0x0000003f 
+ 00020255  0x00004eca set1  0x00000003 , 0x0000003f 
+ 00020256  0x00004ecc store  0x00000001 , 0x00004250 
+ 00020257  0x00004ecd copy  0x0000000b , 0x00000005 
+ 00020258  0x00004ece arg  0x00000050 , 0x0000000b 
+ 00020259  0x00004ecf fetch  0x00000002 , 0x00004248 
+ 00020260  0x00004ed0 copy  0x0000003f , 0x00000002 
+ 00020261  0x00004ed1 branch  0x00004f43 
+ 00020262  0x00004ed3 copy  0x00000005 , 0x0000000b 
+ 00020263  0x00004ed4 fetch  0x00000001 , 0x00004252 
+ 00020264  0x00004ed5 set1  0x00000004 , 0x0000003f 
+ 00020265  0x00004ed6 set1  0x00000003 , 0x0000003f 
+ 00020266  0x00004ed8 store  0x00000001 , 0x00004252 
+ 00020267  0x00004ed9 copy  0x0000000b , 0x00000005 
+ 00020268  0x00004eda arg  0x00000052 , 0x0000000b 
+ 00020269  0x00004edb fetch  0x00000002 , 0x0000424c 
+ 00020270  0x00004edc copy  0x0000003f , 0x00000002 
+ 00020271  0x00004edd branch  0x00004f43 
+ 00020272  0x00004edf copy  0x00000005 , 0x0000000b 
+ 00020273  0x00004ee0 fetch  0x00000001 , 0x00004253 
+ 00020274  0x00004ee1 set1  0x00000004 , 0x0000003f 
+ 00020275  0x00004ee2 set1  0x00000003 , 0x0000003f 
+ 00020276  0x00004ee4 store  0x00000001 , 0x00004253 
+ 00020277  0x00004ee5 copy  0x0000000b , 0x00000005 
+ 00020278  0x00004ee6 arg  0x00000053 , 0x0000000b 
+ 00020279  0x00004ee7 fetch  0x00000002 , 0x0000424e 
+ 00020280  0x00004ee8 copy  0x0000003f , 0x00000002 
+ 00020281  0x00004ee9 branch  0x00004f43 
+ 00020282  0x00004eeb copy  0x00000005 , 0x0000000b 
+ 00020283  0x00004eec fetch  0x00000001 , 0x00004251 
+ 00020284  0x00004eed set1  0x00000004 , 0x0000003f 
+ 00020285  0x00004eee set1  0x00000003 , 0x0000003f 
+ 00020286  0x00004ef0 store  0x00000001 , 0x00004251 
+ 00020287  0x00004ef2 copy  0x0000000b , 0x00000005 
+ 00020288  0x00004ef3 arg  0x00000051 , 0x0000000b 
+ 00020289  0x00004ef4 fetch  0x00000002 , 0x0000424a 
+ 00020290  0x00004ef5 copy  0x0000003f , 0x00000002 
+ 00020291  0x00004ef7 bpatchx  0x00000013 , 0x00004022 
+ 00020292  0x00004ef8 setarg  0x00000005 
+ 00020293  0x00004ef9 istore  0x00000001 , 0x00000005 
+ 00020294  0x00004efa copy  0x00000007 , 0x0000003f 
+ 00020295  0x00004efb istore  0x00000001 , 0x00000005 
+ 00020296  0x00004efc setarg  0x00000006 
+ 00020297  0x00004efd istore  0x00000002 , 0x00000005 
+ 00020298  0x00004efe copy  0x00000002 , 0x0000003f 
+ 00020299  0x00004eff istore  0x00000002 , 0x00000005 
+ 00020300  0x00004f00 force  0x00000000 , 0x0000003f 
+ 00020301  0x00004f01 istore  0x00000002 , 0x00000005 
+ 00020302  0x00004f02 force  0x00000000 , 0x0000003f 
+ 00020303  0x00004f03 istore  0x00000002 , 0x00000005 
+ 00020304  0x00004f04 force  0x0000000a , 0x0000003f 
+ 00020305  0x00004f05 iadd  0x00000012 , 0x00000012 
+ 00020306  0x00004f07 storet  0x00000002 , 0x00000282 
+ 00020307  0x00004f08 copy  0x00000007 , 0x0000003f 
+ 00020308  0x00004f09 store  0x00000001 , 0x00000281 
+ 00020309  0x00004f0a force  0x00000050 , 0x0000003f 
+ 00020310  0x00004f0b icompare  0x000000ff , 0x0000000b 
+ 00020311  0x00004f0c branch  0x00004f59 , 0x00000001 
+ 00020312  0x00004f0d increase  0x00000001 , 0x0000003f 
+ 00020313  0x00004f10 rtn 
+ 00020314  0x00004f12 disable  0x00000028 
+ 00020315  0x00004f13 rtnbit1  0x00000002 , 0x0000003f 
+ 00020316  0x00004f14 rtnbit0  0x00000000 , 0x0000003f 
+ 00020317  0x00004f15 rtnbit0  0x00000001 , 0x0000003f 
+ 00020318  0x00004f16 set1  0x00000002 , 0x0000003f 
+ 00020319  0x00004f17 copy  0x00000006 , 0x00000005 
+ 00020320  0x00004f18 increase  0xffffffff , 0x00000005 
+ 00020321  0x00004f19 istore  0x00000001 , 0x00000005 
+ 00020322  0x00004f1a enable  0x00000028 
+ 00020323  0x00004f1b rtn 
+ 00020324  0x00004f1e fetch  0x00000001 , 0x00004250 
+ 00020325  0x00004f1f call  0x00004f5a 
+ 00020326  0x00004f20 nbranch  0x00004f6b , 0x00000028 
+ 00020327  0x00004f21 jam  0x00000050 , 0x00000280 
+ 00020328  0x00004f22 fetch  0x00000002 , 0x00004248 
+ 00020329  0x00004f23 store  0x00000002 , 0x00000282 
+ 00020330  0x00004f24 branch  0x00004f7f 
+ 00020331  0x00004f26 fetch  0x00000001 , 0x00004251 
+ 00020332  0x00004f27 call  0x00004f5a 
+ 00020333  0x00004f28 nbranch  0x00004f72 , 0x00000028 
+ 00020334  0x00004f29 jam  0x00000051 , 0x00000280 
+ 00020335  0x00004f2a fetch  0x00000002 , 0x0000424a 
+ 00020336  0x00004f2b store  0x00000002 , 0x00000282 
+ 00020337  0x00004f2c branch  0x00004f7f 
+ 00020338  0x00004f2e fetch  0x00000001 , 0x00004252 
+ 00020339  0x00004f2f call  0x00004f5a 
+ 00020340  0x00004f30 nbranch  0x00004f79 , 0x00000028 
+ 00020341  0x00004f31 jam  0x00000052 , 0x00000280 
+ 00020342  0x00004f32 fetch  0x00000002 , 0x0000424c 
+ 00020343  0x00004f33 store  0x00000002 , 0x00000282 
+ 00020344  0x00004f34 branch  0x00004f7f 
+ 00020345  0x00004f36 fetch  0x00000001 , 0x00004253 
+ 00020346  0x00004f37 call  0x00004f5a 
+ 00020347  0x00004f38 nrtn  0x00000028 
+ 00020348  0x00004f39 jam  0x00000053 , 0x00000280 
+ 00020349  0x00004f3a fetch  0x00000002 , 0x0000424e 
+ 00020350  0x00004f3b store  0x00000002 , 0x00000282 
+ 00020351  0x00004f3f bpatchx  0x00000014 , 0x00004022 
+ 00020352  0x00004f40 call  0x0000523a 
+ 00020353  0x00004f41 call  0x000052b8 
+ 00020354  0x00004f42 force  0x00000000 , 0x00000012 
+ 00020355  0x00004f43 call  0x000052c3 
+ 00020356  0x00004f44 force  0x00000004 , 0x0000003f 
+ 00020357  0x00004f45 istore  0x00000001 , 0x00000005 
+ 00020358  0x00004f46 fetch  0x00000001 , 0x00004255 
+ 00020359  0x00004f47 istore  0x00000001 , 0x00000005 
+ 00020360  0x00004f48 setarg  0x00000008 
+ 00020361  0x00004f49 istore  0x00000002 , 0x00000005 
+ 00020362  0x00004f4a fetch  0x00000002 , 0x00000282 
+ 00020363  0x00004f4b istore  0x00000002 , 0x00000005 
+ 00020364  0x00004f4c setarg  0x00000000 
+ 00020365  0x00004f4d istore  0x00000002 , 0x00000005 
+ 00020366  0x00004f4e force  0x00000001 , 0x0000003f 
+ 00020367  0x00004f4f istore  0x00000001 , 0x00000005 
+ 00020368  0x00004f50 force  0x00000002 , 0x0000003f 
+ 00020369  0x00004f51 istore  0x00000001 , 0x00000005 
+ 00020370  0x00004f52 fetch  0x00000001 , 0x00000280 
+ 00020371  0x00004f53 beq  0x00000051 , 0x00004f97 
+ 00020372  0x00004f54 setarg  0x00000030 
+ 00020373  0x00004f55 istore  0x00000002 , 0x00000005 
+ 00020374  0x00004f56 branch  0x00004f99 
+ 00020375  0x00004f58 setarg  0x000003e3 
+ 00020376  0x00004f59 istore  0x00000002 , 0x00000005 
+ 00020377  0x00004f5b arg  0x0000000c , 0x00000002 
+ 00020378  0x00004f5c storet  0x00000002 , 0x0000026f 
+ 00020379  0x00004f5d call  0x000052c1 
+ 00020380  0x00004f5e fetch  0x00000002 , 0x0000026f 
+ 00020381  0x00004f5f istore  0x00000002 , 0x00000005 
+ 00020382  0x00004f60 force  0x00000001 , 0x0000003f 
+ 00020383  0x00004f61 istore  0x00000002 , 0x00000005 
+ 00020384  0x00004f62 jam  0x00000000 , 0x00000280 
+ 00020385  0x00004f64 branch  0x00004e1e 
+ 00020386  0x00004f67 increase  0x00000001 , 0x00000006 
+ 00020387  0x00004f68 ifetch  0x00000002 , 0x00000006 
+ 00020388  0x00004f69 copy  0x0000003f , 0x00000011 
+ 00020389  0x00004f6a copy  0x00000013 , 0x0000003f 
+ 00020390  0x00004f6b isub  0x00000011 , 0x00000013 
+ 00020391  0x00004f6c ifetch  0x00000002 , 0x00000006 
+ 00020392  0x00004f6d copy  0x0000003f , 0x00000011 
+ 00020393  0x00004f6e bpatchx  0x00000015 , 0x00004022 
+ 00020394  0x00004f6f setarg  0x00000050 
+ 00020395  0x00004f70 isub  0x00000011 , 0x0000003e 
+ 00020396  0x00004f71 branch  0x00004fba , 0x00000005 
+ 00020397  0x00004f72 setarg  0x00000051 
+ 00020398  0x00004f73 isub  0x00000011 , 0x0000003e 
+ 00020399  0x00004f74 branch  0x00004fbe , 0x00000005 
+ 00020400  0x00004f75 setarg  0x00000052 
+ 00020401  0x00004f76 isub  0x00000011 , 0x0000003e 
+ 00020402  0x00004f77 branch  0x00004fc2 , 0x00000005 
+ 00020403  0x00004f78 setarg  0x00000053 
+ 00020404  0x00004f79 isub  0x00000011 , 0x0000003e 
+ 00020405  0x00004f7a branch  0x00004fc6 , 0x00000005 
+ 00020406  0x00004f7b increase  0x00000002 , 0x00000006 
+ 00020407  0x00004f7c ifetch  0x00000002 , 0x00000006 
+ 00020408  0x00004f7d iforce  0x0000003e 
+ 00020409  0x00004f7e branch  0x00004e1e 
+ 00020410  0x00004f80 fetch  0x00000001 , 0x00004250 
+ 00020411  0x00004f81 set1  0x00000005 , 0x0000003f 
+ 00020412  0x00004f82 store  0x00000001 , 0x00004250 
+ 00020413  0x00004f83 branch  0x00004e1e 
+ 00020414  0x00004f85 fetch  0x00000001 , 0x00004251 
+ 00020415  0x00004f86 set1  0x00000005 , 0x0000003f 
+ 00020416  0x00004f87 store  0x00000001 , 0x00004251 
+ 00020417  0x00004f88 branch  0x00004e1e 
+ 00020418  0x00004f8a fetch  0x00000001 , 0x00004252 
+ 00020419  0x00004f8b set1  0x00000005 , 0x0000003f 
+ 00020420  0x00004f8c store  0x00000001 , 0x00004252 
+ 00020421  0x00004f8d branch  0x00004e1e 
+ 00020422  0x00004f8f fetch  0x00000001 , 0x00004253 
+ 00020423  0x00004f90 set1  0x00000005 , 0x0000003f 
+ 00020424  0x00004f91 store  0x00000001 , 0x00004253 
+ 00020425  0x00004f92 jam  0x00000006 , 0x00000a99 
+ 00020426  0x00004f93 branch  0x00007d86 
+ 00020427  0x00004f98 ifetch  0x00000001 , 0x00000006 
+ 00020428  0x00004f99 copy  0x0000003f , 0x00000007 
+ 00020429  0x00004f9a ifetch  0x00000002 , 0x00000006 
+ 00020430  0x00004f9b copy  0x0000003f , 0x00000011 
+ 00020431  0x00004f9c copy  0x00000013 , 0x0000003f 
+ 00020432  0x00004f9d isub  0x00000011 , 0x00000013 
+ 00020433  0x00004f9e ifetch  0x00000002 , 0x00000006 
+ 00020434  0x00004f9f copy  0x0000003f , 0x00000011 
+ 00020435  0x00004fa0 ifetch  0x00000002 , 0x00000006 
+ 00020436  0x00004fa1 copy  0x0000003f , 0x0000000b 
+ 00020437  0x00004fa2 copy  0x00000011 , 0x00000002 
+ 00020438  0x00004fa3 call  0x00007ea8 
+ 00020439  0x00004fa4 bpatchx  0x00000016 , 0x00004022 
+ 00020440  0x00004fa5 setarg  0x00000050 
+ 00020441  0x00004fa6 isub  0x00000002 , 0x0000003e 
+ 00020442  0x00004fa7 branch  0x00004ff2 , 0x00000005 
+ 00020443  0x00004fa8 setarg  0x00000051 
+ 00020444  0x00004fa9 isub  0x00000002 , 0x0000003e 
+ 00020445  0x00004faa branch  0x00005002 , 0x00000005 
+ 00020446  0x00004fab setarg  0x00000052 
+ 00020447  0x00004fac isub  0x00000002 , 0x0000003e 
+ 00020448  0x00004fad branch  0x00004fe6 , 0x00000005 
+ 00020449  0x00004fae setarg  0x00000053 
+ 00020450  0x00004faf isub  0x00000002 , 0x0000003e 
+ 00020451  0x00004fb0 branch  0x00004fec , 0x00000005 
+ 00020452  0x00004fb1 call  0x00005062 
+ 00020453  0x00004fb2 branch  0x00005017 
+ 00020454  0x00004fb4 copy  0x0000000b , 0x00000002 
+ 00020455  0x00004fb5 fetch  0x00000002 , 0x0000424c 
+ 00020456  0x00004fb6 isub  0x00000002 , 0x0000003e 
+ 00020457  0x00004fb7 branch  0x00004ff8 , 0x00000005 
+ 00020458  0x00004fb8 call  0x00005062 
+ 00020459  0x00004fb9 branch  0x00005017 
+ 00020460  0x00004fbb copy  0x0000000b , 0x00000002 
+ 00020461  0x00004fbc fetch  0x00000002 , 0x0000424e 
+ 00020462  0x00004fbd isub  0x00000002 , 0x0000003e 
+ 00020463  0x00004fbe branch  0x00004ffa , 0x00000005 
+ 00020464  0x00004fbf call  0x00005062 
+ 00020465  0x00004fc0 branch  0x00005017 
+ 00020466  0x00004fc3 copy  0x0000000b , 0x00000002 
+ 00020467  0x00004fc4 fetch  0x00000002 , 0x00004248 
+ 00020468  0x00004fc5 isub  0x00000002 , 0x0000003e 
+ 00020469  0x00004fc6 branch  0x00004ffe , 0x00000005 
+ 00020470  0x00004fc7 call  0x00005062 
+ 00020471  0x00004fc8 branch  0x00005017 
+ 00020472  0x00004fca call  0x00005079 
+ 00020473  0x00004fcb branch  0x0000500a 
+ 00020474  0x00004fcd call  0x0000507f 
+ 00020475  0x00004fce fetch  0x00000002 , 0x0000424c 
+ 00020476  0x00004fcf branch  0x0000500a , 0x00000034 
+ 00020477  0x00004fd7 branch  0x0000500a 
+ 00020478  0x00004fda call  0x00005074 
+ 00020479  0x00004fdb fetch  0x00000001 , 0x00000288 
+ 00020480  0x00004fdc nbranch  0x0000500a , 0x00000034 
+ 00020481  0x00004fdf branch  0x0000500a 
+ 00020482  0x00004fe1 copy  0x0000000b , 0x00000002 
+ 00020483  0x00004fe2 fetch  0x00000002 , 0x0000424a 
+ 00020484  0x00004fe3 isub  0x00000002 , 0x0000003e 
+ 00020485  0x00004fe4 branch  0x00005008 , 0x00000005 
+ 00020486  0x00004fe5 call  0x00005062 
+ 00020487  0x00004fe6 branch  0x00005017 
+ 00020488  0x00004fe8 call  0x0000506f 
+ 00020489  0x00004fe9 branch  0x0000500a 
+ 00020490  0x00004feb call  0x00007ead 
+ 00020491  0x00004fec setarg  0x00000007 
+ 00020492  0x00004fed istore  0x00000001 , 0x00000005 
+ 00020493  0x00004fee copy  0x00000007 , 0x0000003f 
+ 00020494  0x00004fef istore  0x00000001 , 0x00000005 
+ 00020495  0x00004ff0 setarg  0x00000004 
+ 00020496  0x00004ff1 istore  0x00000002 , 0x00000005 
+ 00020497  0x00004ff2 copy  0x00000011 , 0x0000003f 
+ 00020498  0x00004ff3 istore  0x00000002 , 0x00000005 
+ 00020499  0x00004ff4 copy  0x0000000b , 0x0000003f 
+ 00020500  0x00004ff5 istore  0x00000002 , 0x00000005 
+ 00020501  0x00004ff6 force  0x00000008 , 0x0000003f 
+ 00020502  0x00004ff7 branch  0x00005019 
+ 00020503  0x00004ff9 call  0x00007ead 
+ 00020504  0x00004ffa branch  0x00005019 
+ 00020505  0x00004ffc iadd  0x00000012 , 0x00000012 
+ 00020506  0x00004ffd branch  0x00004e1e 
+ 00020507  0x00004fff ifetch  0x00000001 , 0x00000006 
+ 00020508  0x00005000 copy  0x0000003f , 0x00000007 
+ 00020509  0x00005001 ifetch  0x00000002 , 0x00000006 
+ 00020510  0x00005002 copy  0x0000003f , 0x00000011 
+ 00020511  0x00005003 copy  0x00000013 , 0x0000003f 
+ 00020512  0x00005004 isub  0x00000011 , 0x00000013 
+ 00020513  0x00005005 ifetch  0x00000002 , 0x00000006 
+ 00020514  0x00005006 copy  0x0000003f , 0x0000000b 
+ 00020515  0x00005007 ifetch  0x00000002 , 0x00000006 
+ 00020516  0x00005008 copy  0x0000003f , 0x00000002 
+ 00020517  0x00005009 call  0x00007ea8 
+ 00020518  0x0000500a bpatchx  0x00000017 , 0x00004022 
+ 00020519  0x0000500b setarg  0x00000050 
+ 00020520  0x0000500c isub  0x00000002 , 0x0000003e 
+ 00020521  0x0000500d branch  0x00005035 , 0x00000005 
+ 00020522  0x0000500e setarg  0x00000051 
+ 00020523  0x0000500f isub  0x00000002 , 0x0000003e 
+ 00020524  0x00005010 branch  0x0000503b , 0x00000005 
+ 00020525  0x00005011 setarg  0x00000052 
+ 00020526  0x00005012 isub  0x00000002 , 0x0000003e 
+ 00020527  0x00005013 branch  0x00005041 , 0x00000005 
+ 00020528  0x00005014 setarg  0x00000053 
+ 00020529  0x00005015 isub  0x00000002 , 0x0000003e 
+ 00020530  0x00005016 branch  0x00005047 , 0x00000005 
+ 00020531  0x00005017 call  0x00005062 
+ 00020532  0x00005018 branch  0x0000504f 
+ 00020533  0x0000501a copy  0x00000002 , 0x00000011 
+ 00020534  0x0000501b copy  0x0000000b , 0x00000002 
+ 00020535  0x0000501c fetch  0x00000002 , 0x00004248 
+ 00020536  0x0000501d isub  0x00000002 , 0x0000003e 
+ 00020537  0x0000501e call  0x00005074 , 0x00000005 
+ 00020538  0x0000501f branch  0x0000504d 
+ 00020539  0x00005021 copy  0x00000002 , 0x00000011 
+ 00020540  0x00005022 copy  0x0000000b , 0x00000002 
+ 00020541  0x00005023 fetch  0x00000002 , 0x0000424a 
+ 00020542  0x00005024 isub  0x00000002 , 0x0000003e 
+ 00020543  0x00005025 call  0x0000506f , 0x00000005 
+ 00020544  0x00005026 branch  0x0000504d 
+ 00020545  0x00005028 copy  0x00000002 , 0x00000011 
+ 00020546  0x00005029 copy  0x0000000b , 0x00000002 
+ 00020547  0x0000502a fetch  0x00000002 , 0x0000424c 
+ 00020548  0x0000502b isub  0x00000002 , 0x0000003e 
+ 00020549  0x0000502c call  0x00005079 , 0x00000005 
+ 00020550  0x0000502d branch  0x0000504d 
+ 00020551  0x0000502f copy  0x00000002 , 0x00000011 
+ 00020552  0x00005030 copy  0x0000000b , 0x00000002 
+ 00020553  0x00005031 fetch  0x00000002 , 0x0000424e 
+ 00020554  0x00005032 isub  0x00000002 , 0x0000003e 
+ 00020555  0x00005033 call  0x0000507f , 0x00000005 
+ 00020556  0x00005034 branch  0x0000504d 
+ 00020557  0x00005036 call  0x00007ead 
+ 00020558  0x00005037 branch  0x00004e1e 
+ 00020559  0x00005039 branch  0x00004e1e 
+ 00020560  0x0000503d ifetch  0x00000001 , 0x00000006 
+ 00020561  0x0000503e copy  0x0000003f , 0x00000007 
+ 00020562  0x0000503f ifetch  0x00000002 , 0x00000006 
+ 00020563  0x00005040 copy  0x0000003f , 0x00000011 
+ 00020564  0x00005041 iadd  0x00000006 , 0x00000006 
+ 00020565  0x00005042 setarg  0x00000009 
+ 00020566  0x00005043 istore  0x00000001 , 0x00000005 
+ 00020567  0x00005044 copy  0x00000007 , 0x0000003f 
+ 00020568  0x00005045 istore  0x00000001 , 0x00000005 
+ 00020569  0x00005046 force  0x00000000 , 0x0000003f 
+ 00020570  0x00005047 istore  0x00000002 , 0x00000005 
+ 00020571  0x00005048 force  0x00000004 , 0x0000003f 
+ 00020572  0x00005049 iadd  0x00000012 , 0x00000012 
+ 00020573  0x0000504a copy  0x00000013 , 0x0000003f 
+ 00020574  0x0000504b isub  0x00000011 , 0x00000013 
+ 00020575  0x0000504c branch  0x00004e1e 
+ 00020576  0x0000504e branch  0x00004e1e 
+ 00020577  0x00005051 branch  0x00004e1e 
+ 00020578  0x00005053 force  0x00000000 , 0x00000012 
+ 00020579  0x00005054 call  0x000052c3 
+ 00020580  0x00005055 setarg  0x00000001 
+ 00020581  0x00005056 istore  0x00000001 , 0x00000005 
+ 00020582  0x00005057 copy  0x00000007 , 0x0000003f 
+ 00020583  0x00005058 istore  0x00000001 , 0x00000005 
+ 00020584  0x00005059 setarg  0x00000002 
+ 00020585  0x0000505a istore  0x00000002 , 0x00000005 
+ 00020586  0x0000505b setarg  0x00000000 
+ 00020587  0x0000505c istore  0x00000002 , 0x00000005 
+ 00020588  0x0000505d increase  0x00000006 , 0x00000012 
+ 00020589  0x0000505e arg  0x00000004 , 0x00000013 
+ 00020590  0x0000505f branch  0x00004e1e 
+ 00020591  0x00005064 setarg  0x00000000 
+ 00020592  0x00005065 store  0x00000002 , 0x0000027b 
+ 00020593  0x00005066 store  0x00000002 , 0x0000424a 
+ 00020594  0x00005067 jam  0x00000000 , 0x00004251 
+ 00020595  0x00005068 rtn 
+ 00020596  0x0000506a setarg  0x00000000 
+ 00020597  0x0000506b store  0x00000002 , 0x00000275 
+ 00020598  0x0000506c store  0x00000002 , 0x00004248 
+ 00020599  0x0000506d jam  0x00000000 , 0x00004250 
+ 00020600  0x0000506e rtn 
+ 00020601  0x00005070 setarg  0x00000000 
+ 00020602  0x00005071 store  0x00000002 , 0x0000424c 
+ 00020603  0x00005072 jam  0x00000000 , 0x00004252 
+ 00020604  0x00005073 fetch  0x00000001 , 0x00004253 
+ 00020605  0x00005074 beq  0x00000000 , 0x00005085 
+ 00020606  0x00005075 rtn 
+ 00020607  0x00005078 setarg  0x00000000 
+ 00020608  0x00005079 store  0x00000002 , 0x0000424e 
+ 00020609  0x0000507a jam  0x00000000 , 0x00004253 
+ 00020610  0x0000507b fetch  0x00000001 , 0x00004252 
+ 00020611  0x0000507c beq  0x00000000 , 0x00005085 
+ 00020612  0x0000507d rtn 
+ 00020613  0x00005080 jam  0x00000007 , 0x00000a99 
+ 00020614  0x00005081 branch  0x00007d86 
+ 00020615  0x00005084 fetch  0x00000001 , 0x0000027f 
+ 00020616  0x00005085 set0  0x00000000 , 0x0000003f 
+ 00020617  0x00005086 store  0x00000001 , 0x0000027f 
+ 00020618  0x00005087 fetch  0x00000002 , 0x0000424e 
+ 00020619  0x00005088 rtn  0x00000034 
+ 00020620  0x00005089 call  0x000052b8 
+ 00020621  0x0000508a fetch  0x00000002 , 0x0000424e 
+ 00020622  0x0000508b copy  0x0000003f , 0x00000011 
+ 00020623  0x0000508c force  0x00000053 , 0x00000012 
+ 00020624  0x0000508d branch  0x0000509a 
+ 00020625  0x0000508f fetch  0x00000001 , 0x0000027f 
+ 00020626  0x00005090 set0  0x00000007 , 0x0000003f 
+ 00020627  0x00005091 store  0x00000001 , 0x0000027f 
+ 00020628  0x00005092 fetch  0x00000002 , 0x0000424c 
+ 00020629  0x00005093 rtn  0x00000034 
+ 00020630  0x00005094 call  0x000052b8 
+ 00020631  0x00005095 fetch  0x00000002 , 0x0000424c 
+ 00020632  0x00005096 copy  0x0000003f , 0x00000011 
+ 00020633  0x00005097 force  0x00000052 , 0x00000012 
+ 00020634  0x00005099 call  0x0000523a 
+ 00020635  0x0000509a call  0x000052c3 
+ 00020636  0x0000509b force  0x00000006 , 0x0000003f 
+ 00020637  0x0000509c istore  0x00000001 , 0x00000005 
+ 00020638  0x0000509d fetch  0x00000001 , 0x00004255 
+ 00020639  0x0000509e istore  0x00000001 , 0x00000005 
+ 00020640  0x0000509f setarg  0x00000004 
+ 00020641  0x000050a0 istore  0x00000002 , 0x00000005 
+ 00020642  0x000050a1 copy  0x00000011 , 0x0000003f 
+ 00020643  0x000050a2 istore  0x00000002 , 0x00000005 
+ 00020644  0x000050a3 copy  0x00000012 , 0x0000003f 
+ 00020645  0x000050a4 istore  0x00000002 , 0x00000005 
+ 00020646  0x000050a5 force  0x00000008 , 0x00000002 
+ 00020647  0x000050a6 branch  0x000050de 
+ 00020648  0x000050a9 bpatchx  0x00000018 , 0x00004023 
+ 00020649  0x000050aa call  0x0000523a 
+ 00020650  0x000050ab call  0x000052c3 
+ 00020651  0x000050ac setarg  0x00000002 
+ 00020652  0x000050ad istore  0x00000001 , 0x00000005 
+ 00020653  0x000050ae fetch  0x00000001 , 0x00004255 
+ 00020654  0x000050af istore  0x00000001 , 0x00000005 
+ 00020655  0x000050b0 setarg  0x00000004 
+ 00020656  0x000050b1 istore  0x00000002 , 0x00000005 
+ 00020657  0x000050b2 copy  0x00000002 , 0x0000003f 
+ 00020658  0x000050b3 istore  0x00000002 , 0x00000005 
+ 00020659  0x000050b4 copy  0x0000000b , 0x0000003f 
+ 00020660  0x000050b5 istore  0x00000002 , 0x00000005 
+ 00020661  0x000050b6 arg  0x00000008 , 0x00000002 
+ 00020662  0x000050b7 branch  0x000050de 
+ 00020663  0x000050b9 bpatchx  0x00000019 , 0x00004023 
+ 00020664  0x000050ba call  0x0000523a 
+ 00020665  0x000050bb call  0x000052c3 
+ 00020666  0x000050bc setarg  0x00000004 
+ 00020667  0x000050bd istore  0x00000001 , 0x00000005 
+ 00020668  0x000050be fetch  0x00000001 , 0x00004255 
+ 00020669  0x000050bf istore  0x00000001 , 0x00000005 
+ 00020670  0x000050c0 setarg  0x00000008 
+ 00020671  0x000050c1 istore  0x00000002 , 0x00000005 
+ 00020672  0x000050c3 copy  0x00000002 , 0x0000003f 
+ 00020673  0x000050c5 istore  0x00000002 , 0x00000005 
+ 00020674  0x000050c6 setarg  0x00000000 
+ 00020675  0x000050c7 istore  0x00000002 , 0x00000005 
+ 00020676  0x000050c8 setarg  0x00000001 
+ 00020677  0x000050c9 istore  0x00000001 , 0x00000005 
+ 00020678  0x000050ca setarg  0x00000002 
+ 00020679  0x000050cb istore  0x00000001 , 0x00000005 
+ 00020680  0x000050cc setarg  0x000003e3 
+ 00020681  0x000050cd istore  0x00000002 , 0x00000005 
+ 00020682  0x000050ce arg  0x0000000c , 0x00000002 
+ 00020683  0x000050cf branch  0x000050de 
+ 00020684  0x000050d1 bpatchx  0x0000001a , 0x00004023 
+ 00020685  0x000050d2 call  0x0000523a 
+ 00020686  0x000050d3 call  0x000052c3 
+ 00020687  0x000050d4 setarg  0x00000006 
+ 00020688  0x000050d5 istore  0x00000001 , 0x00000005 
+ 00020689  0x000050d6 fetch  0x00000001 , 0x00004255 
+ 00020690  0x000050d7 increase  0x00000001 , 0x0000003f 
+ 00020691  0x000050d8 copy  0x00000005 , 0x00000011 
+ 00020692  0x000050d9 store  0x00000001 , 0x00004255 
+ 00020693  0x000050da copy  0x00000011 , 0x00000005 
+ 00020694  0x000050db istore  0x00000001 , 0x00000005 
+ 00020695  0x000050dc setarg  0x00000004 
+ 00020696  0x000050dd istore  0x00000002 , 0x00000005 
+ 00020697  0x000050de copy  0x00000002 , 0x0000003f 
+ 00020698  0x000050df istore  0x00000002 , 0x00000005 
+ 00020699  0x000050e0 copy  0x0000000b , 0x0000003f 
+ 00020700  0x000050e1 istore  0x00000002 , 0x00000005 
+ 00020701  0x000050e2 arg  0x00000008 , 0x00000002 
+ 00020702  0x000050e6 storet  0x00000002 , 0x0000026f 
+ 00020703  0x000050e7 copy  0x00000002 , 0x0000003f 
+ 00020704  0x000050e8 branch  0x00005264 , 0x00000034 
+ 00020705  0x000050e9 call  0x000052c1 
+ 00020706  0x000050ea fetch  0x00000002 , 0x0000026f 
+ 00020707  0x000050eb istore  0x00000002 , 0x00000005 
+ 00020708  0x000050ec force  0x00000001 , 0x0000003f 
+ 00020709  0x000050ed istore  0x00000002 , 0x00000005 
+ 00020710  0x000050ee rtn 
+ 00020711  0x000050f1 fetch  0x00000002 , 0x00000275 
+ 00020712  0x000050f2 branch  0x00002a8c , 0x00000034 
+ 00020713  0x000050f3 call  0x000052ce 
+ 00020714  0x000050f4 fetch  0x00000002 , 0x00000275 
+ 00020715  0x000050f5 istore  0x00000002 , 0x00000005 
+ 00020716  0x000050f6 fetch  0x00000002 , 0x00004248 
+ 00020717  0x000050f7 istore  0x00000002 , 0x00000005 
+ 00020718  0x000050f8 rtn 
+ 00020719  0x000050fa fetch  0x00000002 , 0x00000266 
+ 00020720  0x000050fb branch  0x00004dfc , 0x00000034 
+ 00020721  0x000050fc bpatchx  0x0000001b , 0x00004023 
+ 00020722  0x000050fd fetch  0x00000001 , 0x00000268 
+ 00020723  0x000050fe beq  0x00000001 , 0x000050f9 
+ 00020724  0x000050ff beq  0x00000050 , 0x00004de8 
+ 00020725  0x00005100 beq  0x00000051 , 0x00004df5 
+ 00020726  0x00005101 beq  0x00000052 , 0x00004df3 
+ 00020727  0x00005102 beq  0x00000053 , 0x00004df3 
+ 00020728  0x00005103 branch  0x00004dfc 
+ 00020729  0x00005106 bpatchx  0x0000001c , 0x00004023 
+ 00020730  0x00005107 call  0x000052b8 
+ 00020731  0x00005108 force  0x00000000 , 0x00000012 
+ 00020732  0x00005109 call  0x000052c3 
+ 00020733  0x0000510a copy  0x0000003f , 0x00000005 
+ 00020734  0x0000510b fetch  0x00000002 , 0x00000266 
+ 00020735  0x0000510c copy  0x0000003f , 0x00000013 
+ 00020736  0x0000510d fetch  0x00000002 , 0x00000264 
+ 00020737  0x0000510e iforce  0x00000006 
+ 00020738  0x00005110 call  0x00005108 
+ 00020739  0x00005111 increase  0xfffffffc , 0x00000013 
+ 00020740  0x00005112 nbranch  0x00005102 , 0x00000005 
+ 00020741  0x00005113 copy  0x00000012 , 0x00000002 
+ 00020742  0x00005114 call  0x000050de 
+ 00020743  0x00005115 branch  0x00004dfc 
+ 00020744  0x00005118 ifetch  0x00000001 , 0x00000006 
+ 00020745  0x00005119 beq  0x00000002 , 0x00005113 
+ 00020746  0x0000511a beq  0x00000001 , 0x00005116 
+ 00020747  0x0000511b beq  0x00000003 , 0x00005120 
+ 00020748  0x0000511c beq  0x00000005 , 0x0000515c 
+ 00020749  0x0000511d beq  0x00000004 , 0x0000518e 
+ 00020750  0x0000511e beq  0x00000007 , 0x00005213 
+ 00020751  0x0000511f beq  0x00000006 , 0x000051e1 
+ 00020752  0x00005120 beq  0x00000008 , 0x00005050 
+ 00020753  0x00005121 beq  0x0000000a , 0x00004e3a 
+ 00020754  0x00005122 branch  0x0000522e 
+ 00020755  0x00005125 call  0x00007ea8 
+ 00020756  0x00005127 call  0x00007ead 
+ 00020757  0x00005128 branch  0x00004e51 
+ 00020758  0x0000512a ifetch  0x00000001 , 0x00000006 
+ 00020759  0x0000512b copy  0x0000003f , 0x00000007 
+ 00020760  0x0000512c ifetch  0x00000002 , 0x00000006 
+ 00020761  0x0000512d copy  0x0000003f , 0x00000011 
+ 00020762  0x0000512e copy  0x00000013 , 0x0000003f 
+ 00020763  0x0000512f isub  0x00000011 , 0x00000013 
+ 00020764  0x00005131 ifetch  0x00000001 , 0x00000006 
+ 00020765  0x00005132 increase  0xffffffff , 0x00000011 
+ 00020766  0x00005133 nbranch  0x0000511c , 0x00000005 
+ 00020767  0x00005134 rtn 
+ 00020768  0x00005136 ifetch  0x00000001 , 0x00000006 
+ 00020769  0x00005137 copy  0x0000003f , 0x00000007 
+ 00020770  0x00005138 ifetch  0x00000002 , 0x00000006 
+ 00020771  0x00005139 copy  0x0000003f , 0x00000011 
+ 00020772  0x0000513a ifetch  0x00000002 , 0x00000006 
+ 00020773  0x0000513b copy  0x0000003f , 0x0000000b 
+ 00020774  0x0000513c ifetch  0x00000002 , 0x00000006 
+ 00020775  0x0000513d copy  0x0000003f , 0x00000002 
+ 00020776  0x0000513e ifetch  0x00000002 , 0x00000006 
+ 00020777  0x0000513f sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00020778  0x00005140 branch  0x00005132 , 0x00000005 
+ 00020779  0x00005141 beq  0x00000002 , 0x0000512e 
+ 00020780  0x00005142 beq  0x00000004 , 0x0000512e 
+ 00020781  0x00005143 branch  0x00005130 
+ 00020782  0x00005145 jam  0x00000016 , 0x00000a99 
+ 00020783  0x00005146 call  0x00007d86 
+ 00020784  0x00005148 ifetch  0x00000002 , 0x00000006 
+ 00020785  0x00005149 branch  0x00005159 
+ 00020786  0x0000514b call  0x00007ea8 
+ 00020787  0x0000514f bpatchx  0x0000001d , 0x00004023 
+ 00020788  0x00005150 setarg  0x00000050 
+ 00020789  0x00005151 isub  0x00000002 , 0x0000003e 
+ 00020790  0x00005152 branch  0x00005141 , 0x00000005 
+ 00020791  0x00005153 setarg  0x00000051 
+ 00020792  0x00005154 isub  0x00000002 , 0x0000003e 
+ 00020793  0x00005155 branch  0x00005147 , 0x00000005 
+ 00020794  0x00005156 setarg  0x00000053 
+ 00020795  0x00005157 isub  0x00000002 , 0x0000003e 
+ 00020796  0x00005158 branch  0x00005153 , 0x00000005 
+ 00020797  0x00005159 setarg  0x00000052 
+ 00020798  0x0000515a isub  0x00000002 , 0x0000003e 
+ 00020799  0x0000515b branch  0x0000514d , 0x00000005 
+ 00020800  0x0000515c branch  0x00005159 
+ 00020801  0x0000515e copy  0x0000000b , 0x0000003f 
+ 00020802  0x0000515f store  0x00000002 , 0x00004248 
+ 00020803  0x00005160 fetch  0x00000001 , 0x00004250 
+ 00020804  0x00005161 set1  0x00000001 
+ 00020805  0x00005162 store  0x00000001 , 0x00004250 
+ 00020806  0x00005163 branch  0x00005158 
+ 00020807  0x00005165 copy  0x0000000b , 0x0000003f 
+ 00020808  0x00005166 store  0x00000002 , 0x0000424a 
+ 00020809  0x00005167 fetch  0x00000001 , 0x00004251 
+ 00020810  0x00005168 set1  0x00000001 
+ 00020811  0x00005169 store  0x00000001 , 0x00004251 
+ 00020812  0x0000516a branch  0x00005158 
+ 00020813  0x0000516c copy  0x0000000b , 0x0000003f 
+ 00020814  0x0000516d store  0x00000002 , 0x0000424c 
+ 00020815  0x0000516e fetch  0x00000001 , 0x00004252 
+ 00020816  0x0000516f set1  0x00000001 
+ 00020817  0x00005170 store  0x00000001 , 0x00004252 
+ 00020818  0x00005171 branch  0x00005158 
+ 00020819  0x00005173 copy  0x0000000b , 0x0000003f 
+ 00020820  0x00005174 store  0x00000002 , 0x0000424e 
+ 00020821  0x00005175 fetch  0x00000001 , 0x00004253 
+ 00020822  0x00005176 set1  0x00000001 
+ 00020823  0x00005177 store  0x00000001 , 0x00004253 
+ 00020824  0x0000517b call  0x00007ead 
+ 00020825  0x0000517d copy  0x00000013 , 0x0000003f 
+ 00020826  0x0000517e isub  0x00000011 , 0x00000013 
+ 00020827  0x0000517f rtn 
+ 00020828  0x00005182 ifetch  0x00000001 , 0x00000006 
+ 00020829  0x00005183 copy  0x0000003f , 0x00000007 
+ 00020830  0x00005184 ifetch  0x00000002 , 0x00000006 
+ 00020831  0x00005185 copy  0x0000003f , 0x00000011 
+ 00020832  0x00005186 copy  0x00000013 , 0x0000003f 
+ 00020833  0x00005187 isub  0x00000011 , 0x00000013 
+ 00020834  0x00005188 ifetch  0x00000002 , 0x00000006 
+ 00020835  0x00005189 copy  0x0000003f , 0x0000000b 
+ 00020836  0x0000518a ifetch  0x00000002 , 0x00000006 
+ 00020837  0x0000518b ifetch  0x00000002 , 0x00000006 
+ 00020838  0x0000518c nbranch  0x00005188 , 0x00000034 
+ 00020839  0x0000518d call  0x00007ea8 
+ 00020840  0x00005191 copy  0x0000000b , 0x00000002 
+ 00020841  0x00005192 bpatchx  0x0000001e , 0x00004023 
+ 00020842  0x00005193 setarg  0x00000050 
+ 00020843  0x00005194 isub  0x00000002 , 0x0000003e 
+ 00020844  0x00005195 branch  0x00005176 , 0x00000005 
+ 00020845  0x00005196 setarg  0x00000051 
+ 00020846  0x00005197 isub  0x00000002 , 0x0000003e 
+ 00020847  0x00005198 branch  0x0000517a , 0x00000005 
+ 00020848  0x00005199 setarg  0x00000052 
+ 00020849  0x0000519a isub  0x00000002 , 0x0000003e 
+ 00020850  0x0000519b branch  0x0000517e , 0x00000005 
+ 00020851  0x0000519c setarg  0x00000053 
+ 00020852  0x0000519d isub  0x00000002 , 0x0000003e 
+ 00020853  0x0000519e branch  0x00005182 , 0x00000005 
+ 00020854  0x000051a0 fetch  0x00000001 , 0x00004250 
+ 00020855  0x000051a1 set1  0x00000005 
+ 00020856  0x000051a2 store  0x00000001 , 0x00004250 
+ 00020857  0x000051a3 rtn 
+ 00020858  0x000051a5 fetch  0x00000001 , 0x00004251 
+ 00020859  0x000051a6 set1  0x00000005 
+ 00020860  0x000051a7 store  0x00000001 , 0x00004251 
+ 00020861  0x000051a8 rtn 
+ 00020862  0x000051aa fetch  0x00000001 , 0x00004252 
+ 00020863  0x000051ab set1  0x00000005 
+ 00020864  0x000051ac store  0x00000001 , 0x00004252 
+ 00020865  0x000051ad rtn 
+ 00020866  0x000051af fetch  0x00000001 , 0x00004253 
+ 00020867  0x000051b0 set1  0x00000005 
+ 00020868  0x000051b1 store  0x00000001 , 0x00004253 
+ 00020869  0x000051b2 jam  0x00000006 , 0x00000a99 
+ 00020870  0x000051b3 branch  0x00007d86 
+ 00020871  0x000051b7 call  0x00007ead 
+ 00020872  0x000051b9 increase  0xfffffffa , 0x00000011 
+ 00020873  0x000051bb branch  0x0000518d , 0x00000005 
+ 00020874  0x000051bc increase  0x00000001 , 0x00000006 
+ 00020875  0x000051bd increase  0xffffffff , 0x00000011 
+ 00020876  0x000051be branch  0x00005189 
+ 00020877  0x000051c0 rtn 
+ 00020878  0x000051c2 ifetch  0x00000001 , 0x00000006 
+ 00020879  0x000051c3 copy  0x0000003f , 0x00000007 
+ 00020880  0x000051c4 ifetch  0x00000002 , 0x00000006 
+ 00020881  0x000051c5 copy  0x0000003f , 0x00000011 
+ 00020882  0x000051c6 copy  0x00000013 , 0x0000003f 
+ 00020883  0x000051c7 isub  0x00000011 , 0x00000013 
+ 00020884  0x000051c8 ifetch  0x00000002 , 0x00000006 
+ 00020885  0x000051c9 increase  0x00000002 , 0x00000006 
+ 00020886  0x000051ca copy  0x0000003f , 0x00000002 
+ 00020887  0x000051cb setarg  0x00000005 
+ 00020888  0x000051cc istore  0x00000001 , 0x00000005 
+ 00020889  0x000051cd copy  0x00000007 , 0x0000003f 
+ 00020890  0x000051ce istore  0x00000001 , 0x00000005 
+ 00020891  0x000051cf increase  0x00000002 , 0x00000011 
+ 00020892  0x000051d0 copy  0x00000011 , 0x0000003f 
+ 00020893  0x000051d1 istore  0x00000002 , 0x00000005 
+ 00020894  0x000051d2 call  0x00007ea8 
+ 00020895  0x000051d3 bpatchx  0x0000001f , 0x00004023 
+ 00020896  0x000051d4 setarg  0x00000050 
+ 00020897  0x000051d5 isub  0x00000002 , 0x0000003e 
+ 00020898  0x000051d6 branch  0x000051ad , 0x00000005 
+ 00020899  0x000051d7 setarg  0x00000051 
+ 00020900  0x000051d8 isub  0x00000002 , 0x0000003e 
+ 00020901  0x000051d9 branch  0x000051be , 0x00000005 
+ 00020902  0x000051da setarg  0x00000052 
+ 00020903  0x000051db isub  0x00000002 , 0x0000003e 
+ 00020904  0x000051dc branch  0x000051c4 , 0x00000005 
+ 00020905  0x000051dd setarg  0x00000053 
+ 00020906  0x000051de isub  0x00000002 , 0x0000003e 
+ 00020907  0x000051df branch  0x000051ca , 0x00000005 
+ 00020908  0x000051e0 branch  0x000051cf 
+ 00020909  0x000051e2 fetch  0x00000001 , 0x00004250 
+ 00020910  0x000051e3 set1  0x00000004 , 0x0000003f 
+ 00020911  0x000051e4 set1  0x00000003 , 0x0000003f 
+ 00020912  0x000051e5 store  0x00000001 , 0x00004250 
+ 00020913  0x000051e6 bbit1  0x00000002 , 0x000051bb 
+ 00020914  0x000051e7 fetcht  0x00000001 , 0x0000027f 
+ 00020915  0x000051e8 set1  0x00000006 , 0x00000002 
+ 00020916  0x000051e9 storet  0x00000001 , 0x0000027f 
+ 00020917  0x000051ea copy  0x00000007 , 0x0000003f 
+ 00020918  0x000051eb increase  0x00000001 , 0x0000003f 
+ 00020919  0x000051ec store  0x00000001 , 0x00000281 
+ 00020920  0x000051ed fetch  0x00000001 , 0x00004250 
+ 00020921  0x000051ee set1  0x00000002 , 0x0000003f 
+ 00020922  0x000051ef store  0x00000001 , 0x00004250 
+ 00020923  0x000051f1 fetch  0x00000002 , 0x00004248 
+ 00020924  0x000051f2 store  0x00000002 , 0x00000282 
+ 00020925  0x000051f3 branch  0x000051cf 
+ 00020926  0x000051f5 fetch  0x00000001 , 0x00004251 
+ 00020927  0x000051f6 set1  0x00000004 , 0x0000003f 
+ 00020928  0x000051f7 set1  0x00000003 , 0x0000003f 
+ 00020929  0x000051f8 store  0x00000001 , 0x00004251 
+ 00020930  0x000051f9 fetch  0x00000002 , 0x0000424a 
+ 00020931  0x000051fa branch  0x000051cf 
+ 00020932  0x000051fc fetch  0x00000001 , 0x00004252 
+ 00020933  0x000051fd set1  0x00000004 , 0x0000003f 
+ 00020934  0x000051fe set1  0x00000003 , 0x0000003f 
+ 00020935  0x000051ff store  0x00000001 , 0x00004252 
+ 00020936  0x00005200 fetch  0x00000002 , 0x0000424c 
+ 00020937  0x00005201 branch  0x000051cf 
+ 00020938  0x00005203 fetch  0x00000001 , 0x00004253 
+ 00020939  0x00005204 set1  0x00000004 , 0x0000003f 
+ 00020940  0x00005205 set1  0x00000003 , 0x0000003f 
+ 00020941  0x00005206 store  0x00000001 , 0x00004253 
+ 00020942  0x00005207 fetch  0x00000002 , 0x0000424e 
+ 00020943  0x0000520b copy  0x0000003f , 0x0000000b 
+ 00020944  0x0000520c call  0x00007ead 
+ 00020945  0x0000520e copy  0x0000000b , 0x0000003f 
+ 00020946  0x00005210 istore  0x00000002 , 0x00000005 
+ 00020947  0x00005211 force  0x00000000 , 0x0000003f 
+ 00020948  0x00005212 istore  0x00000002 , 0x00000005 
+ 00020949  0x00005213 force  0x00000000 , 0x0000003f 
+ 00020950  0x00005214 istore  0x00000002 , 0x00000005 
+ 00020951  0x00005215 force  0x0000000a , 0x0000003f 
+ 00020952  0x00005216 iadd  0x00000012 , 0x00000012 
+ 00020953  0x00005217 increase  0xfffffffa , 0x00000011 
+ 00020954  0x00005219 branch  0x000051e0 , 0x00000005 
+ 00020955  0x0000521a ifetch  0x00000001 , 0x00000006 
+ 00020956  0x0000521b istore  0x00000001 , 0x00000005 
+ 00020957  0x0000521c increase  0x00000001 , 0x00000012 
+ 00020958  0x0000521d increase  0xffffffff , 0x00000011 
+ 00020959  0x0000521e branch  0x000051da 
+ 00020960  0x00005220 rtn 
+ 00020961  0x00005222 ifetch  0x00000001 , 0x00000006 
+ 00020962  0x00005223 copy  0x0000003f , 0x00000007 
+ 00020963  0x00005224 ifetch  0x00000002 , 0x00000006 
+ 00020964  0x00005225 copy  0x0000003f , 0x00000011 
+ 00020965  0x00005226 copy  0x00000013 , 0x0000003f 
+ 00020966  0x00005227 isub  0x00000011 , 0x00000013 
+ 00020967  0x00005229 ifetch  0x00000002 , 0x00000006 
+ 00020968  0x0000522a copy  0x0000003f , 0x00000011 
+ 00020969  0x0000522b ifetch  0x00000002 , 0x00000006 
+ 00020970  0x0000522c copy  0x0000003f , 0x0000000b 
+ 00020971  0x0000522d call  0x00007ea8 
+ 00020972  0x0000522e bpatchx  0x00000020 , 0x00004024 
+ 00020973  0x0000522f setarg  0x00000050 
+ 00020974  0x00005230 copy  0x00000011 , 0x00000002 
+ 00020975  0x00005231 isub  0x00000002 , 0x0000003e 
+ 00020976  0x00005232 branch  0x000051fa , 0x00000005 
+ 00020977  0x00005233 setarg  0x00000052 
+ 00020978  0x00005234 copy  0x00000011 , 0x00000002 
+ 00020979  0x00005235 isub  0x00000002 , 0x0000003e 
+ 00020980  0x00005236 branch  0x000051ff , 0x00000005 
+ 00020981  0x00005237 setarg  0x00000053 
+ 00020982  0x00005238 copy  0x00000011 , 0x00000002 
+ 00020983  0x00005239 isub  0x00000002 , 0x0000003e 
+ 00020984  0x0000523a branch  0x00005201 , 0x00000005 
+ 00020985  0x0000523b branch  0x00005203 
+ 00020986  0x0000523d setarg  0x00000000 
+ 00020987  0x0000523e store  0x00000002 , 0x00000275 
+ 00020988  0x0000523f store  0x00000002 , 0x00004248 
+ 00020989  0x00005240 store  0x00000001 , 0x00004250 
+ 00020990  0x00005241 branch  0x00005205 
+ 00020991  0x00005243 call  0x00005079 
+ 00020992  0x00005244 branch  0x00005205 
+ 00020993  0x00005246 call  0x0000507f 
+ 00020994  0x0000524c branch  0x00005205 
+ 00020995  0x0000524e setarg  0x00000000 
+ 00020996  0x0000524f store  0x00000002 , 0x0000027b 
+ 00020997  0x00005251 call  0x00007ead 
+ 00020998  0x00005252 setarg  0x00000007 
+ 00020999  0x00005253 istore  0x00000001 , 0x00000005 
+ 00021000  0x00005254 copy  0x00000007 , 0x0000003f 
+ 00021001  0x00005255 istore  0x00000001 , 0x00000005 
+ 00021002  0x00005256 setarg  0x00000004 
+ 00021003  0x00005257 istore  0x00000002 , 0x00000005 
+ 00021004  0x00005258 copy  0x00000011 , 0x0000003f 
+ 00021005  0x00005259 istore  0x00000002 , 0x00000005 
+ 00021006  0x0000525a copy  0x0000000b , 0x0000003f 
+ 00021007  0x0000525b istore  0x00000002 , 0x00000005 
+ 00021008  0x0000525c force  0x00000008 , 0x0000003f 
+ 00021009  0x0000525d iadd  0x00000012 , 0x00000012 
+ 00021010  0x0000525e rtn 
+ 00021011  0x00005261 ifetch  0x00000001 , 0x00000006 
+ 00021012  0x00005262 copy  0x0000003f , 0x00000007 
+ 00021013  0x00005263 ifetch  0x00000002 , 0x00000006 
+ 00021014  0x00005264 copy  0x0000003f , 0x00000011 
+ 00021015  0x00005265 ifetch  0x00000002 , 0x00000006 
+ 00021016  0x00005266 copy  0x0000003f , 0x0000000b 
+ 00021017  0x00005267 ifetch  0x00000002 , 0x00000006 
+ 00021018  0x00005268 copy  0x0000003f , 0x00000002 
+ 00021019  0x00005269 call  0x00007ea8 
+ 00021020  0x0000526a bpatchx  0x00000021 , 0x00004024 
+ 00021021  0x0000526b fetch  0x00000001 , 0x00004255 
+ 00021022  0x0000526c icompare  0x000000ff , 0x00000007 
+ 00021023  0x0000526d nbranch  0x0000522a , 0x00000001 
+ 00021024  0x0000526e setarg  0x00000050 
+ 00021025  0x0000526f isub  0x00000002 , 0x0000003e 
+ 00021026  0x00005270 branch  0x00005227 , 0x00000005 
+ 00021027  0x00005271 setarg  0x00000051 
+ 00021028  0x00005272 isub  0x00000002 , 0x0000003e 
+ 00021029  0x00005273 branch  0x0000522a , 0x00000005 
+ 00021030  0x00005274 branch  0x0000522a 
+ 00021031  0x00005276 jam  0x00000000 , 0x00004248 
+ 00021032  0x00005277 jam  0x00000000 , 0x00004250 
+ 00021033  0x00005278 branch  0x0000522a 
+ 00021034  0x0000527d call  0x00007ead 
+ 00021035  0x0000527e copy  0x00000013 , 0x0000003f 
+ 00021036  0x0000527f isub  0x00000011 , 0x00000013 
+ 00021037  0x00005280 rtn 
+ 00021038  0x00005283 setarg  0x00000001 
+ 00021039  0x00005284 istore  0x00000001 , 0x00000005 
+ 00021040  0x00005285 ifetch  0x00000001 , 0x00000006 
+ 00021041  0x00005286 istore  0x00000001 , 0x00000005 
+ 00021042  0x00005287 setarg  0x00000002 
+ 00021043  0x00005288 istore  0x00000002 , 0x00000005 
+ 00021044  0x00005289 setarg  0x00000000 
+ 00021045  0x0000528a istore  0x00000002 , 0x00000005 
+ 00021046  0x0000528b setarg  0x00000006 
+ 00021047  0x0000528c iadd  0x00000012 , 0x00000012 
+ 00021048  0x0000528d force  0x00000004 , 0x00000013 
+ 00021049  0x0000528e rtn 
+ 00021050  0x00005292 fetch  0x00000001 , 0x00004255 
+ 00021051  0x00005293 increase  0x00000001 , 0x0000003f 
+ 00021052  0x00005294 bne  0x00000000 , 0x0000523e 
+ 00021053  0x00005295 increase  0x00000001 , 0x0000003f 
+ 00021054  0x00005297 store  0x00000001 , 0x00004255 
+ 00021055  0x00005298 rtn 
+ 00021056  0x000052a3 bpatchx  0x00000022 , 0x00004024 
+ 00021057  0x000052a4 arg  0x00000000 , 0x00000012 
+ 00021058  0x000052a5 call  0x0000526e 
+ 00021059  0x000052a6 nbranch  0x00002a8c , 0x00000034 
+ 00021060  0x000052a7 call  0x0000527e 
+ 00021061  0x000052a8 arg  0x00001800 , 0x00000012 
+ 00021062  0x000052a9 arg  0x00000000 , 0x00000007 
+ 00021063  0x000052ab fetcht  0x00000001 , 0x00004256 
+ 00021064  0x000052ac qisolate1  0x00000002 
+ 00021065  0x000052ad branch  0x0000524f , 0x00000001 
+ 00021066  0x000052ae call  0x000052a0 
+ 00021067  0x000052af sub  0x0000000b , 0x00000000 , 0x0000003e 
+ 00021068  0x000052b0 branch  0x0000524f , 0x00000002 
+ 00021069  0x000052b1 call  0x00005288 
+ 00021070  0x000052b2 branch  0x00005255 
+ 00021071  0x000052b4 increase  0x00000080 , 0x00000012 
+ 00021072  0x000052b5 increase  0x00000001 , 0x00000007 
+ 00021073  0x000052b6 setarg  0x00000008 
+ 00021074  0x000052b7 isub  0x00000007 , 0x0000003e 
+ 00021075  0x000052b8 branch  0x00005247 , 0x00000002 
+ 00021076  0x000052b9 arg  0x00000000 , 0x00000012 
+ 00021077  0x000052bb copy  0x00000012 , 0x0000003f 
+ 00021078  0x000052bc branch  0x00002a8c , 0x00000034 
+ 00021079  0x000052bd rtn 
+ 00021080  0x000052c6 bpatchx  0x00000023 , 0x00004024 
+ 00021081  0x000052c7 call  0x00005277 
+ 00021082  0x000052c8 increase  0x00000001 , 0x00000006 
+ 00021083  0x000052c9 ifetch  0x00000002 , 0x00000006 
+ 00021084  0x000052ca rtn 
+ 00021085  0x000052d1 bpatchx  0x00000024 , 0x00004024 
+ 00021086  0x000052d2 call  0x00005277 
+ 00021087  0x000052d3 copy  0x00000006 , 0x00000005 
+ 00021088  0x000052d4 copy  0x00000006 , 0x00000002 
+ 00021089  0x000052d5 setarg  0x00000000 
+ 00021090  0x000052d6 istore  0x00000003 , 0x00000005 
+ 00021091  0x000052d7 rtn 
+ 00021092  0x000052dd bpatchx  0x00000025 , 0x00004024 
+ 00021093  0x000052de call  0x00005274 
+ 00021094  0x000052df branch  0x00002a8c , 0x00000034 
+ 00021095  0x000052e0 fetch  0x00000003 , 0x0000425d 
+ 00021096  0x000052e1 store  0x00000003 , 0x00004260 
+ 00021097  0x000052e2 fetch  0x00000003 , 0x0000425a 
+ 00021098  0x000052e3 store  0x00000003 , 0x0000425d 
+ 00021099  0x000052e4 fetch  0x00000003 , 0x00004257 
+ 00021100  0x000052e5 store  0x00000003 , 0x0000425a 
+ 00021101  0x000052e6 rtn 
+ 00021102  0x000052ed bpatchx  0x00000026 , 0x00004024 
+ 00021103  0x000052ee fetch  0x00000003 , 0x00004257 
+ 00021104  0x000052ef rtn 
+ 00021105  0x000052f6 bpatchx  0x00000027 , 0x00004024 
+ 00021106  0x000052f7 fetch  0x00000003 , 0x0000425a 
+ 00021107  0x000052f8 rtn 
+ 00021108  0x000052ff bpatchx  0x00000028 , 0x00004025 
+ 00021109  0x00005300 fetch  0x00000003 , 0x00004260 
+ 00021110  0x00005301 rtn 
+ 00021111  0x00005307 call  0x00005274 
+ 00021112  0x00005308 branch  0x00002a8c , 0x00000034 
+ 00021113  0x00005309 arg  0x00004257 , 0x00000006 
+ 00021114  0x0000530b ifetch  0x00000003 , 0x00000006 
+ 00021115  0x0000530c branch  0x0000527a , 0x00000034 
+ 00021116  0x0000530d increase  0xfffffffd , 0x00000006 
+ 00021117  0x0000530e rtn 
+ 00021118  0x00005316 bpatchx  0x00000029 , 0x00004025 
+ 00021119  0x00005317 arg  0x00000004 , 0x00000039 
+ 00021120  0x00005318 arg  0x00004257 , 0x00000006 
+ 00021121  0x00005319 arg  0x00000000 , 0x00000002 
+ 00021122  0x0000531b ifetch  0x00000003 , 0x00000006 
+ 00021123  0x0000531c and  0x0000003f , 0x000000ff , 0x0000003f 
+ 00021124  0x0000531d ior  0x00000002 , 0x00000002 
+ 00021125  0x0000531e loop  0x00005282 
+ 00021126  0x0000531f storet  0x00000001 , 0x00004256 
+ 00021127  0x00005320 rtn 
+ 00021128  0x00005329 bpatchx  0x0000002a , 0x00004025 
+ 00021129  0x0000532a call  0x0000526e 
+ 00021130  0x0000532b nbranch  0x00002a8c , 0x00000034 
+ 00021131  0x0000532c call  0x00005274 
+ 00021132  0x0000532d branch  0x00005295 , 0x00000034 
+ 00021133  0x0000532e fetch  0x00000003 , 0x0000425a 
+ 00021134  0x0000532f store  0x00000003 , 0x00004257 
+ 00021135  0x00005330 ifetch  0x00000003 , 0x00000006 
+ 00021136  0x00005331 istore  0x00000003 , 0x00000005 
+ 00021137  0x00005332 ifetch  0x00000003 , 0x00000006 
+ 00021138  0x00005333 istore  0x00000003 , 0x00000005 
+ 00021139  0x00005334 setarg  0x00000000 
+ 00021140  0x00005335 istore  0x00000003 , 0x00000005 
+ 00021141  0x00005337 arg  0x00000000 , 0x00000002 
+ 00021142  0x00005338 copy  0x0000000b , 0x0000003f 
+ 00021143  0x00005339 iadd  0x00000007 , 0x0000003f 
+ 00021144  0x0000533b qset1  0x00000002 
+ 00021145  0x0000533c increase  0x00000001 , 0x00000007 
+ 00021146  0x0000533d isub  0x00000007 , 0x0000003e 
+ 00021147  0x0000533e nbranch  0x00005298 , 0x00000005 
+ 00021148  0x00005340 lshift8  0x00000012 , 0x0000003f 
+ 00021149  0x00005341 ior  0x00000002 , 0x0000003f 
+ 00021150  0x00005342 store  0x00000003 , 0x00004260 
+ 00021151  0x00005343 rtn 
+ 00021152  0x0000534e bpatchx  0x0000002b , 0x00004025 
+ 00021153  0x0000534f call  0x0000527e 
+ 00021154  0x00005350 copy  0x00000007 , 0x00000013 
+ 00021155  0x00005351 arg  0x00000000 , 0x00000002 
+ 00021156  0x00005352 arg  0x00000000 , 0x0000000b 
+ 00021157  0x00005355 copy  0x00000007 , 0x0000003f 
+ 00021158  0x00005356 beq  0x00000008 , 0x000052b0 
+ 00021159  0x00005357 fetch  0x00000001 , 0x00004256 
+ 00021160  0x00005358 qisolate1  0x0000003f 
+ 00021161  0x00005359 branch  0x000052b0 , 0x00000001 
+ 00021162  0x0000535a increase  0x00000080 , 0x00000002 
+ 00021163  0x0000535b increase  0x00000001 , 0x00000007 
+ 00021164  0x0000535c copy  0x00000011 , 0x0000003f 
+ 00021165  0x0000535d isub  0x00000002 , 0x0000003e 
+ 00021166  0x0000535e branch  0x000052b0 , 0x00000005 
+ 00021167  0x0000535f branch  0x000052a5 , 0x00000002 
+ 00021168  0x00005361 copy  0x00000002 , 0x0000003f 
+ 00021169  0x00005362 isub  0x00000011 , 0x0000003e 
+ 00021170  0x00005363 nbranch  0x000052b6 , 0x00000002 
+ 00021171  0x00005364 copy  0x00000007 , 0x0000003f 
+ 00021172  0x00005365 copy  0x00000013 , 0x00000002 
+ 00021173  0x00005366 isub  0x00000002 , 0x0000000b 
+ 00021174  0x00005368 copy  0x00000013 , 0x00000007 
+ 00021175  0x00005369 rtn 
+ 00021176  0x0000536d bpatchx  0x0000002c , 0x00004025 
+ 00021177  0x0000536e arg  0x0000007f , 0x00000011 
+ 00021178  0x0000536f call  0x00005240 
+ 00021179  0x00005370 store  0x00000002 , 0x0000026b 
+ 00021180  0x00005371 increase  0x00000004 , 0x0000003f 
+ 00021181  0x00005372 store  0x00000002 , 0x0000026d 
+ 00021182  0x00005373 setarg  0x00000000 
+ 00021183  0x00005374 store  0x00000002 , 0x0000026f 
+ 00021184  0x00005375 rtn 
+ 00021185  0x00005378 fetch  0x00000002 , 0x0000026b 
+ 00021186  0x00005379 branch  0x000052e2 
+ 00021187  0x0000537c fetch  0x00000002 , 0x0000026d 
+ 00021188  0x0000537d branch  0x000052e2 
+ 00021189  0x00005381 bpatchx  0x0000002d , 0x00004025 
+ 00021190  0x00005382 arg  0x000000fa , 0x00000011 
+ 00021191  0x00005383 call  0x00005240 
+ 00021192  0x00005384 store  0x00000002 , 0x00000271 
+ 00021193  0x00005385 increase  0x00000004 , 0x0000003f 
+ 00021194  0x00005386 store  0x00000002 , 0x00000273 
+ 00021195  0x00005387 setarg  0x00000000 
+ 00021196  0x00005388 store  0x00000002 , 0x00000275 
+ 00021197  0x00005389 rtn 
+ 00021198  0x0000538c fetch  0x00000002 , 0x00000271 
+ 00021199  0x0000538d branch  0x000052e2 
+ 00021200  0x00005390 fetch  0x00000002 , 0x00000273 
+ 00021201  0x00005391 branch  0x000052e2 
+ 00021202  0x00005395 bpatchx  0x0000002e , 0x00004025 
+ 00021203  0x00005396 call  0x00007e7c 
+ 00021204  0x00005397 jam  0x00000001 , 0x00000284 
+ 00021205  0x00005398 call  0x0000526e 
+ 00021206  0x00005399 nrtn  0x00000034 
+ 00021207  0x0000539a arg  0x0000007f , 0x00000011 
+ 00021208  0x0000539b call  0x00005240 
+ 00021209  0x0000539c store  0x00000002 , 0x00000277 
+ 00021210  0x0000539d increase  0x00000004 , 0x0000003f 
+ 00021211  0x0000539e store  0x00000002 , 0x00000279 
+ 00021212  0x0000539f setarg  0x00000000 
+ 00021213  0x000053a0 store  0x00000002 , 0x0000027b 
+ 00021214  0x000053a1 jam  0x00000000 , 0x00000284 
+ 00021215  0x000053a2 branch  0x00007e8c 
+ 00021216  0x000053a5 fetch  0x00000002 , 0x00000277 
+ 00021217  0x000053a6 branch  0x000052e2 
+ 00021218  0x000053a9 branch  0x00002a8c , 0x00000034 
+ 00021219  0x000053aa copy  0x0000003f , 0x00000005 
+ 00021220  0x000053ab rtn 
+ 00021221  0x000053af bpatchx  0x0000002f , 0x00004025 
+ 00021222  0x000053b0 arg  0x00000000 , 0x00000012 
+ 00021223  0x000053b1 arg  0x00004257 , 0x00000011 
+ 00021224  0x000053b2 increase  0xfffffffe , 0x00000011 
+ 00021225  0x000053b4 increase  0x00000002 , 0x00000011 
+ 00021226  0x000053b5 setarg  0x00004263 
+ 00021227  0x000053b6 isub  0x00000011 , 0x0000003e 
+ 00021228  0x000053b7 branch  0x000052f5 , 0x00000005 
+ 00021229  0x000053b8 ifetch  0x00000001 , 0x00000011 
+ 00021230  0x000053b9 increase  0x00000001 , 0x00000011 
+ 00021231  0x000053ba branch  0x000052e9 , 0x00000034 
+ 00021232  0x000053bb ifetcht  0x00000002 , 0x00000011 
+ 00021233  0x000053bc ifetch  0x00000002 , 0x00000002 
+ 00021234  0x000053bd iadd  0x00000012 , 0x00000012 
+ 00021235  0x000053be increase  0x00000004 , 0x00000012 
+ 00021236  0x000053bf branch  0x000052e9 
+ 00021237  0x000053c1 copy  0x00000012 , 0x0000003f 
+ 00021238  0x000053c2 rtn 
+ 00021239  0x000053c6 arg  0x0000000c , 0x00000007 
+ 00021240  0x000053c7 branch  0x00002c32 
+ 00021241  0x000053ca arg  0x0000000c , 0x00000007 
+ 00021242  0x000053cb branch  0x00002c36 
+ 00021243  0x000053ce bpatchx  0x00000030 , 0x00004026 
+ 00021244  0x000053cf call  0x0000527e 
+ 00021245  0x000053d0 fetch  0x00000001 , 0x00004256 
+ 00021246  0x000053d1 rtn  0x00000034 
+ 00021247  0x000053d2 call  0x000052e5 
+ 00021248  0x000053d3 arg  0x00000100 , 0x00000002 
+ 00021249  0x000053d4 isub  0x00000002 , 0x0000003e 
+ 00021250  0x000053d5 branch  0x000052f7 , 0x00000002 
+ 00021251  0x000053d6 call  0x000052f9 
+ 00021252  0x000053d7 arg  0x00004263 , 0x00000005 
+ 00021253  0x000053d8 arg  0x00004257 , 0x00000011 
+ 00021254  0x000053da setarg  0x00004263 
+ 00021255  0x000053db isub  0x00000011 , 0x0000003e 
+ 00021256  0x000053dc rtn  0x00000005 
+ 00021257  0x000053dd ifetch  0x00000001 , 0x00000011 
+ 00021258  0x000053de increase  0x00000001 , 0x00000011 
+ 00021259  0x000053df nbranch  0x0000530f , 0x00000034 
+ 00021260  0x000053e0 istore  0x00000002 , 0x00000005 
+ 00021261  0x000053e1 increase  0x00000002 , 0x00000011 
+ 00021262  0x000053e2 branch  0x00005306 
+ 00021263  0x000053e4 ifetch  0x00000002 , 0x00000011 
+ 00021264  0x000053e5 increase  0x00000002 , 0x00000011 
+ 00021265  0x000053e6 copy  0x0000003f , 0x00000006 
+ 00021266  0x000053e7 ifetch  0x00000002 , 0x00000006 
+ 00021267  0x000053e8 istore  0x00000002 , 0x00000005 
+ 00021268  0x000053e9 copy  0x0000003f , 0x00000039 
+ 00021269  0x000053ea increase  0x00000002 , 0x00000039 
+ 00021270  0x000053eb call  0x00007f01 
+ 00021271  0x000053ec branch  0x00005306 
+ 00021272  0x000053ef bpatchx  0x00000031 , 0x00004026 
+ 00021273  0x000053f0 call  0x0000527e 
+ 00021274  0x000053f1 fetch  0x00000001 , 0x00004256 
+ 00021275  0x000053f2 rtn  0x00000034 
+ 00021276  0x000053f3 arg  0x00004258 , 0x00000011 
+ 00021277  0x000053f4 increase  0xfffffffd , 0x00000011 
+ 00021278  0x000053f5 arg  0x00004263 , 0x00000006 
+ 00021279  0x000053f7 increase  0x00000003 , 0x00000011 
+ 00021280  0x000053f8 setarg  0x00004264 
+ 00021281  0x000053f9 isub  0x00000011 , 0x0000003e 
+ 00021282  0x000053fa rtn  0x00000005 
+ 00021283  0x000053fb ifetch  0x00000002 , 0x00000006 
+ 00021284  0x000053fc branch  0x0000531f , 0x00000034 
+ 00021285  0x000053fd increase  0x00000004 , 0x0000003f 
+ 00021286  0x000053fe copy  0x0000003f , 0x00000039 
+ 00021287  0x000053ff copy  0x00000006 , 0x00000012 
+ 00021288  0x00005400 ifetch  0x00000002 , 0x00000011 
+ 00021289  0x00005401 copy  0x0000003f , 0x00000005 
+ 00021290  0x00005402 copy  0x00000012 , 0x00000006 
+ 00021291  0x00005403 increase  0xfffffffe , 0x00000006 
+ 00021292  0x00005404 call  0x00007f01 
+ 00021293  0x00005405 branch  0x0000531f 
+ 00021294  0x00005410 bpatchx  0x00000032 , 0x00004026 
+ 00021295  0x00005411 disable  0x0000002b 
+ 00021296  0x00005412 jam  0x00000001 , 0x00000455 
+ 00021297  0x00005413 jam  0x00000003 , 0x0000043f 
+ 00021298  0x00005414 jam  0x00000001 , 0x00000456 
+ 00021299  0x00005415 setarg  0xffffffff 
+ 00021300  0x00005416 store  0x00000002 , 0x00000459 
+ 00021301  0x00005417 force  0x00000000 , 0x0000003f 
+ 00021302  0x00005418 store  0x00000001 , 0x00000457 
+ 00021303  0x00005419 store  0x00000001 , 0x00000462 
+ 00021304  0x0000541a store  0x00000003 , 0x00004169 
+ 00021305  0x0000541b store  0x00000003 , 0x0000416c 
+ 00021306  0x0000541c store  0x00000005 , 0x00004403 
+ 00021307  0x0000541d set1  0x00000027 , 0x0000003f 
+ 00021308  0x0000541e store  0x00000005 , 0x00004408 
+ 00021309  0x0000541f jam  0x00000001 , 0x000043dc 
+ 00021310  0x00005420 jam  0x00000000 , 0x000043dd 
+ 00021311  0x00005421 branch  0x000056ed 
+ 00021312  0x00005424 bpatchx  0x00000033 , 0x00004026 
+ 00021313  0x00005425 enable  0x00000029 
+ 00021314  0x00005426 jam  0x00000003 , 0x00000440 
+ 00021315  0x00005427 jam  0x00000001 , 0x00000478 
+ 00021316  0x00005428 jam  0x00000001 , 0x0000445a 
+ 00021317  0x00005429 setarg  0x0000ffff 
+ 00021318  0x0000542a store  0x00000002 , 0x0000445c 
+ 00021319  0x0000542b force  0x00000000 , 0x0000003f 
+ 00021320  0x0000542c store  0x00000005 , 0x00004408 
+ 00021321  0x0000542d set1  0x00000027 , 0x0000003f 
+ 00021322  0x0000542e store  0x00000005 , 0x00004403 
+ 00021323  0x0000542f branch  0x0000532e 
+ 00021324  0x00005433 bpatchx  0x00000034 , 0x00004026 
+ 00021325  0x00005434 disable  0x00000029 
+ 00021326  0x00005435 setarg  0x00000017 
+ 00021327  0x00005436 store  0x00000002 , 0x000044a8 
+ 00021328  0x00005437 jam  0x00000001 , 0x00000440 
+ 00021329  0x00005438 jam  0x00000000 , 0x0000436e 
+ 00021330  0x00005439 jam  0x00000000 , 0x000000a0 
+ 00021331  0x0000543a jam  0x00000000 , 0x000044c4 
+ 00021332  0x0000543b jam  0x00000000 , 0x000044c5 
+ 00021333  0x0000543c fetch  0x00000002 , 0x0000046d 
+ 00021334  0x0000543d store  0x00000002 , 0x000044ba 
+ 00021335  0x0000543e fetch  0x00000002 , 0x00000441 
+ 00021336  0x0000543f mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00021337  0x00005440 rshift4  0x0000003f , 0x0000003f 
+ 00021338  0x00005441 store  0x00000002 , 0x0000046d 
+ 00021339  0x00005442 branch  0x0000532e 
+ 00021340  0x00005449 call  0x000053c4 
+ 00021341  0x0000544a call  0x000055e8 
+ 00021342  0x0000544b call  0x000056f0 
+ 00021343  0x0000544c branch  0x000053ce 
+ 00021344  0x0000544f bpatchx  0x00000035 , 0x00004026 
+ 00021345  0x00005450 call  0x000053c4 
+ 00021346  0x00005451 call  0x000032f4 
+ 00021347  0x00005452 fetch  0x00000001 , 0x00000440 
+ 00021348  0x00005453 beq  0x00000003 , 0x00005366 
+ 00021349  0x00005454 branch  0x0000537a 
+ 00021350  0x0000545b bpatchx  0x00000036 , 0x00004026 
+ 00021351  0x0000545c enable  0x00000029 
+ 00021352  0x0000545d call  0x000056e4 
+ 00021353  0x0000545e branch  0x00005377 , 0x00000002 
+ 00021354  0x0000545f call  0x00002c6c 
+ 00021355  0x00005460 call  0x00005413 
+ 00021356  0x00005461 call  0x0000561e 
+ 00021357  0x00005462 disable  0x0000002d 
+ 00021358  0x00005463 call  0x000054bf 
+ 00021359  0x00005464 nrtn  0x0000002d 
+ 00021360  0x00005465 bpatchx  0x00000037 , 0x00004026 
+ 00021361  0x00005466 fetch  0x00000001 , 0x00000005 
+ 00021362  0x00005467 increase  0x00000001 , 0x0000003f 
+ 00021363  0x00005468 store  0x00000001 , 0x00000005 
+ 00021364  0x00005469 call  0x000055aa 
+ 00021365  0x0000546a disable  0x00000029 
+ 00021366  0x0000546b rtn 
+ 00021367  0x0000546e call  0x000053a9 
+ 00021368  0x0000546f disable  0x00000029 
+ 00021369  0x00005470 rtn 
+ 00021370  0x00005476 bpatchx  0x00000038 , 0x00004027 
+ 00021371  0x00005477 jam  0x00000000 , 0x0000450f 
+ 00021372  0x00005478 call  0x00007aaf 
+ 00021373  0x00005479 call  0x00005c18 
+ 00021374  0x0000547a disable  0x0000002e 
+ 00021375  0x0000547b call  0x000056e4 
+ 00021376  0x0000547c branch  0x000053a9 , 0x00000002 
+ 00021377  0x0000547d call  0x00002c6c 
+ 00021378  0x0000547e call  0x00005413 
+ 00021379  0x0000547f call  0x00005489 
+ 00021380  0x00005480 nbranch  0x0000539b , 0x00000018 
+ 00021381  0x00005481 call  0x000053b7 
+ 00021382  0x00005482 branch  0x00005388 , 0x0000002d 
+ 00021383  0x00005483 branch  0x00005395 
+ 00021384  0x00005487 bpatchx  0x00000039 , 0x00004027 
+ 00021385  0x00005488 fetch  0x00000001 , 0x0000450f 
+ 00021386  0x00005489 pincrease  0x00000001 
+ 00021387  0x0000548a store  0x00000001 , 0x0000450f 
+ 00021388  0x0000548b beq  0x0000000c , 0x00005395 
+ 00021389  0x0000548c call  0x000055aa 
+ 00021390  0x0000548d call  0x0000561e 
+ 00021391  0x0000548e call  0x000054c7 
+ 00021392  0x0000548f call  0x0000567e 
+ 00021393  0x00005490 fetch  0x00000002 , 0x000041fb 
+ 00021394  0x00005491 call  0x00007f9c 
+ 00021395  0x00005492 call  0x000053a0 
+ 00021396  0x00005493 branch  0x000053a4 , 0x00000028 
+ 00021397  0x00005495 bpatchx  0x0000003a , 0x00004027 
+ 00021398  0x00005496 call  0x00005be4 
+ 00021399  0x00005497 call  0x00005bdb 
+ 00021400  0x00005498 call  0x00007d9c 
+ 00021401  0x00005499 fetch  0x00000001 , 0x00000462 
+ 00021402  0x0000549a bbit1  0x00000003 , 0x000053a9 
+ 00021403  0x0000549c bpatchx  0x0000003b , 0x00004027 
+ 00021404  0x0000549d call  0x000057f4 
+ 00021405  0x0000549e call  0x0000559d 
+ 00021406  0x0000549f call  0x00005575 
+ 00021407  0x000054a0 branch  0x00002841 
+ 00021408  0x000054a4 disable  0x00000028 
+ 00021409  0x000054a5 bmark1  0x0000002a , 0x00007fe7 
+ 00021410  0x000054a6 bmark1  0x00000029 , 0x00007fe7 
+ 00021411  0x000054a7 rtn 
+ 00021412  0x000054ab bpatchx  0x0000003c , 0x00004027 
+ 00021413  0x000054ac enable  0x0000002e 
+ 00021414  0x000054ad call  0x000054c1 
+ 00021415  0x000054ae branch  0x00005388 , 0x0000002d 
+ 00021416  0x000054af branch  0x00005395 
+ 00021417  0x000054b5 bpatchx  0x0000003d , 0x00004027 
+ 00021418  0x000054b6 call  0x000053af 
+ 00021419  0x000054b7 call  0x000033b4 
+ 00021420  0x000054b8 call  0x00007a77 
+ 00021421  0x000054b9 jam  0x00000015 , 0x00000a99 
+ 00021422  0x000054ba branch  0x00007d86 
+ 00021423  0x000054bd setarg  0x00000000 
+ 00021424  0x000054be store  0x00000009 , 0x000044ff 
+ 00021425  0x000054bf jam  0x00000000 , 0x00000455 
+ 00021426  0x000054c0 jam  0x00000000 , 0x00000440 
+ 00021427  0x000054c1 jam  0x00000000 , 0x0000043f 
+ 00021428  0x000054c2 jam  0x00000000 , 0x000044c5 
+ 00021429  0x000054c3 jam  0x00000000 , 0x000044c4 
+ 00021430  0x000054c4 rtn 
+ 00021431  0x000054c7 bpatchx  0x0000003e , 0x00004027 
+ 00021432  0x000054c8 fetch  0x00000001 , 0x00000005 
+ 00021433  0x000054c9 increase  0x00000001 , 0x0000003f 
+ 00021434  0x000054ca store  0x00000001 , 0x00000005 
+ 00021435  0x000054cb fetch  0x00000001 , 0x0000043f 
+ 00021436  0x000054cc rtnbit1  0x00000003 
+ 00021437  0x000054cd set1  0x00000003 
+ 00021438  0x000054ce store  0x00000001 , 0x0000043f 
+ 00021439  0x000054cf fetch  0x00000002 , 0x000044ba 
+ 00021440  0x000054d0 store  0x00000002 , 0x0000046d 
+ 00021441  0x000054d1 setarg  0x00000000 
+ 00021442  0x000054d2 store  0x00000004 , 0x000044e5 
+ 00021443  0x000054d3 rtn 
+ 00021444  0x000054d7 bpatchx  0x0000003f , 0x00004027 
+ 00021445  0x000054d8 jam  0x00000036 , 0x0000890f 
+ 00021446  0x000054d9 jam  0x0000005f , 0x0000890b 
+ 00021447  0x000054da enable  0x00000036 
+ 00021448  0x000054db jam  0x00000007 , 0x00008914 
+ 00021449  0x000054dc call  0x00002c6c 
+ 00021450  0x000054dd fetch  0x00000001 , 0x000041e0 
+ 00021451  0x000054de rtn  0x00000034 
+ 00021452  0x000054df jam  0x000000b8 , 0x0000890a 
+ 00021453  0x000054e0 rtn 
+ 00021454  0x000054e3 bpatchx  0x00000040 , 0x00004028 
+ 00021455  0x000054e4 jam  0x0000002e , 0x0000890f 
+ 00021456  0x000054e5 jam  0x000000ff , 0x0000890b 
+ 00021457  0x000054e6 disable  0x00000036 
+ 00021458  0x000054e7 jam  0x00000003 , 0x00008914 
+ 00021459  0x000054e8 arg  0x00000000 , 0x0000001b 
+ 00021460  0x000054e9 rtn 
+ 00021461  0x000054ec disable  0x00000009 
+ 00021462  0x000054ed disable  0x00000007 
+ 00021463  0x000054ee fetch  0x00000003 , 0x00000467 
+ 00021464  0x000054ef iforce  0x0000000f 
+ 00021465  0x000054f0 fetch  0x00000001 , 0x00000016 
+ 00021466  0x000054f1 reverse  0x0000003f , 0x00000002 
+ 00021467  0x000054f2 set1  0x00000001 , 0x00000002 
+ 00021468  0x000054f3 rshift  0x00000002 , 0x0000000e 
+ 00021469  0x000054f4 rtn 
+ 00021470  0x000054f8 call  0x000053e6 
+ 00021471  0x000054f9 call  0x0000291f 
+ 00021472  0x000054fa setarg  0x00000500 
+ 00021473  0x000054fb call  0x00002a8f 
+ 00021474  0x000054fc branch  0x00002924 
+ 00021475  0x000054ff branch  0x00002939 , 0x0000002d 
+ 00021476  0x00005501 call  0x000053e6 
+ 00021477  0x00005502 branch  0x00002933 
+ 00021478  0x00005504 bpatchx  0x00000041 , 0x00004028 
+ 00021479  0x00005505 call  0x00002918 
+ 00021480  0x00005506 fetch  0x00000001 , 0x0000048c 
+ 00021481  0x00005507 nbranch  0x000053f9 , 0x00000034 
+ 00021482  0x00005508 fetch  0x00000001 , 0x00000016 
+ 00021483  0x00005509 sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021484  0x0000550a branch  0x000053f3 , 0x00000002 
+ 00021485  0x0000550b force  0x00000000 , 0x00000002 
+ 00021486  0x0000550c rtneq  0x00000025 
+ 00021487  0x0000550d force  0x00000018 , 0x00000002 
+ 00021488  0x0000550e rtneq  0x00000026 
+ 00021489  0x0000550f force  0x0000004e , 0x00000002 
+ 00021490  0x00005510 rtn 
+ 00021491  0x00005513 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00021492  0x00005514 branch  0x000053f6 , 0x00000002 
+ 00021493  0x00005515 increase  0x00000001 , 0x0000003f 
+ 00021494  0x00005518 lshift  0x0000003f , 0x0000003f 
+ 00021495  0x00005519 add  0x0000003f , 0x00000002 , 0x00000002 
+ 00021496  0x0000551a rtn 
+ 00021497  0x0000551d fetch  0x00000001 , 0x00000016 
+ 00021498  0x0000551e lshift  0x0000003f , 0x00000002 
+ 00021499  0x0000551f rtn 
+ 00021500  0x00005522 arg  0x000001f4 , 0x00000002 
+ 00021501  0x00005523 rtn  0x00000034 
+ 00021502  0x00005524 arg  0x000000fa , 0x00000002 
+ 00021503  0x00005525 rtneq  0x00000001 
+ 00021504  0x00005526 arg  0x00000096 , 0x00000002 
+ 00021505  0x00005527 rtneq  0x00000002 
+ 00021506  0x00005528 arg  0x00000064 , 0x00000002 
+ 00021507  0x00005529 rtneq  0x00000003 
+ 00021508  0x0000552a arg  0x0000004b , 0x00000002 
+ 00021509  0x0000552b rtneq  0x00000004 
+ 00021510  0x0000552c arg  0x00000032 , 0x00000002 
+ 00021511  0x0000552d rtneq  0x00000005 
+ 00021512  0x0000552e arg  0x00000028 , 0x00000002 
+ 00021513  0x0000552f rtneq  0x00000006 
+ 00021514  0x00005530 arg  0x00000014 , 0x00000002 
+ 00021515  0x00005531 rtn 
+ 00021516  0x00005536 setarg  0x008e89be 
+ 00021517  0x00005537 lshift8  0x0000003f , 0x0000003f 
+ 00021518  0x00005538 or_into  0x000000d6 , 0x0000003f 
+ 00021519  0x00005539 iforce  0x00000009 
+ 00021520  0x0000553a setarg  0x00555555 
+ 00021521  0x0000553b store  0x00000003 , 0x00000467 
+ 00021522  0x0000553c rtn 
+ 00021523  0x0000553f bpatchx  0x00000042 , 0x00004028 
+ 00021524  0x00005540 enable  0x00000010 
+ 00021525  0x00005541 fetch  0x00000004 , 0x00000463 
+ 00021526  0x00005542 iforce  0x00000009 
+ 00021527  0x00005543 call  0x00005466 
+ 00021528  0x00005544 setarg  0x00000200 
+ 00021529  0x00005545 branch  0x0000541c , 0x00000029 
+ 00021530  0x00005546 fetch  0x00000002 , 0x0000044d 
+ 00021531  0x00005547 rshift  0x0000003f , 0x0000003f 
+ 00021532  0x00005549 arg  0x00000500 , 0x00000002 
+ 00021533  0x0000554a iadd  0x00000002 , 0x0000003f 
+ 00021534  0x0000554b call  0x00002a24 
+ 00021535  0x0000554c deposit  0x0000001a 
+ 00021536  0x0000554d store  0x00000006 , 0x00000491 
+ 00021537  0x0000554e rtn 
+ 00021538  0x00005551 bpatchx  0x00000043 , 0x00004028 
+ 00021539  0x00005552 fetch  0x00000001 , 0x00000016 
+ 00021540  0x00005553 beq  0x00000025 , 0x00005428 
+ 00021541  0x00005554 beq  0x00000026 , 0x0000542e 
+ 00021542  0x00005555 beq  0x00000027 , 0x00005434 
+ 00021543  0x00005556 branch  0x00005434 
+ 00021544  0x00005559 fetcht  0x00000001 , 0x0000448d 
+ 00021545  0x0000555a isolate1  0x00000001 , 0x00000002 
+ 00021546  0x0000555b branch  0x0000543f , 0x00000001 
+ 00021547  0x0000555c isolate1  0x00000002 , 0x00000002 
+ 00021548  0x0000555d branch  0x00005444 , 0x00000001 
+ 00021549  0x0000555e branch  0x0000543a 
+ 00021550  0x00005562 fetcht  0x00000001 , 0x0000448d 
+ 00021551  0x00005563 isolate1  0x00000002 , 0x00000002 
+ 00021552  0x00005564 branch  0x00005444 , 0x00000001 
+ 00021553  0x00005565 isolate1  0x00000000 , 0x00000002 
+ 00021554  0x00005566 branch  0x0000543a , 0x00000001 
+ 00021555  0x00005567 branch  0x0000543f 
+ 00021556  0x0000556b fetcht  0x00000001 , 0x0000448d 
+ 00021557  0x0000556c isolate1  0x00000000 , 0x00000002 
+ 00021558  0x0000556d branch  0x0000543a , 0x00000001 
+ 00021559  0x0000556e isolate1  0x00000001 , 0x00000002 
+ 00021560  0x0000556f branch  0x0000543f , 0x00000001 
+ 00021561  0x00005570 branch  0x00005444 
+ 00021562  0x00005575 jam  0x00000025 , 0x00000016 
+ 00021563  0x00005576 fetch  0x00000001 , 0x00000ac2 
+ 00021564  0x00005577 set1  0x00000000 , 0x0000003f 
+ 00021565  0x00005578 store  0x00000001 , 0x00000ac2 
+ 00021566  0x00005579 rtn 
+ 00021567  0x0000557c jam  0x00000026 , 0x00000016 
+ 00021568  0x0000557d fetch  0x00000001 , 0x00000ac2 
+ 00021569  0x0000557e set1  0x00000001 , 0x0000003f 
+ 00021570  0x0000557f store  0x00000001 , 0x00000ac2 
+ 00021571  0x00005580 rtn 
+ 00021572  0x00005583 jam  0x00000027 , 0x00000016 
+ 00021573  0x00005584 fetch  0x00000001 , 0x00000ac2 
+ 00021574  0x00005585 set1  0x00000002 , 0x0000003f 
+ 00021575  0x00005586 store  0x00000001 , 0x00000ac2 
+ 00021576  0x00005587 rtn 
+ 00021577  0x0000558c bpatchx  0x00000044 , 0x00004028 
+ 00021578  0x0000558d add  0x00000011 , 0x00000001 , 0x00000006 
+ 00021579  0x0000558e ifetch  0x00000001 , 0x00000006 
+ 00021580  0x0000558f rtnbit0  0x00000000 
+ 00021581  0x00005590 add  0x00000011 , 0x0000001a , 0x00000005 
+ 00021582  0x00005591 ifetch  0x00000002 , 0x00000005 
+ 00021583  0x00005592 increase  0x00000001 , 0x0000003f 
+ 00021584  0x00005593 istore  0x00000002 , 0x00000005 
+ 00021585  0x00005594 add  0x00000011 , 0x00000019 , 0x00000006 
+ 00021586  0x00005595 ifetch  0x00000001 , 0x00000006 
+ 00021587  0x00005596 add  0x00000011 , 0x00000018 , 0x00000005 
+ 00021588  0x00005597 ifetcht  0x00000001 , 0x00000005 
+ 00021589  0x00005598 iadd  0x00000002 , 0x0000003f 
+ 00021590  0x00005599 sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021591  0x0000559a branch  0x00005459 , 0x00000002 
+ 00021592  0x0000559b increase  0xffffffdb , 0x0000003f 
+ 00021593  0x0000559d istore  0x00000001 , 0x00000005 
+ 00021594  0x0000559e rtn 
+ 00021595  0x000055a2 bpatchx  0x00000045 , 0x00004028 
+ 00021596  0x000055a3 fetch  0x00000005 , 0x0000046f 
+ 00021597  0x000055a4 force  0x00000000 , 0x00000002 
+ 00021598  0x000055a5 force  0x00000025 , 0x00000039 
+ 00021599  0x000055a7 bbit0  0x00000000 , 0x00005461 
+ 00021600  0x000055a8 increase  0x00000001 , 0x00000002 
+ 00021601  0x000055aa rshift  0x0000003f , 0x0000003f 
+ 00021602  0x000055ab loop  0x0000545f 
+ 00021603  0x000055ac add  0x00000002 , 0xffffffff , 0x0000003f 
+ 00021604  0x000055ad store  0x00000001 , 0x00000461 
+ 00021605  0x000055ae rtn 
+ 00021606  0x000055b1 bpatchx  0x00000046 , 0x00004028 
+ 00021607  0x000055b2 fetch  0x00000001 , 0x00000457 
+ 00021608  0x000055b3 iforce  0x00000007 
+ 00021609  0x000055b4 fetcht  0x00000005 , 0x0000046f 
+ 00021610  0x000055b5 qisolate1  0x00000002 
+ 00021611  0x000055b6 branch  0x0000547c , 0x00000001 
+ 00021612  0x000055b8 bpatchx  0x00000047 , 0x00004028 
+ 00021613  0x000055b9 fetch  0x00000001 , 0x00000461 
+ 00021614  0x000055ba isub  0x00000007 , 0x0000003f 
+ 00021615  0x000055bb branch  0x00005472 , 0x00000002 
+ 00021616  0x000055bc sub  0x0000003f , 0xffffffff , 0x00000007 
+ 00021617  0x000055bd branch  0x0000546c 
+ 00021618  0x000055bf copy  0x00000007 , 0x00000039 
+ 00021619  0x000055c0 force  0x00000000 , 0x00000007 
+ 00021620  0x000055c2 qisolate1  0x00000002 
+ 00021621  0x000055c3 branch  0x00005477 , 0x00000001 
+ 00021622  0x000055c4 increase  0x00000001 , 0x00000039 
+ 00021623  0x000055c6 deposit  0x00000039 
+ 00021624  0x000055c7 branch  0x0000547c , 0x00000034 
+ 00021625  0x000055c8 increase  0x00000001 , 0x00000007 
+ 00021626  0x000055c9 increase  0xffffffff , 0x00000039 
+ 00021627  0x000055ca branch  0x00005474 
+ 00021628  0x000055cc deposit  0x00000007 
+ 00021629  0x000055cd store  0x00000001 , 0x00000016 
+ 00021630  0x000055ce rtn 
+ 00021631  0x000055d2 branch  0x00005482 , 0x00000029 
+ 00021632  0x000055d3 until  0x0000003e , 0x00000003 
+ 00021633  0x000055d4 rtn 
+ 00021634  0x000055d7 arg  0x00000ea0 , 0x0000000b 
+ 00021635  0x000055d8 until  0x00000023 , 0x00000026 
+ 00021636  0x000055d9 rtn 
+ 00021637  0x000055dc disable  0x00000010 
+ 00021638  0x000055dd fetch  0x00000002 , 0x0000436c 
+ 00021639  0x000055de copy  0x0000003f , 0x0000000b 
+ 00021640  0x000055df branch  0x0000548e 
+ 00021641  0x000055e3 bpatchx  0x00000048 , 0x00004029 
+ 00021642  0x000055e4 enable  0x00000010 
+ 00021643  0x000055e5 fetch  0x00000002 , 0x0000044d 
+ 00021644  0x000055e6 fetcht  0x00000004 , 0x000044e5 
+ 00021645  0x000055e7 iadd  0x00000002 , 0x0000000b 
+ 00021646  0x000055e9 call  0x000053de 
+ 00021647  0x000055eb bpatchx  0x00000049 , 0x00004029 
+ 00021648  0x000055ec call  0x000053d5 
+ 00021649  0x000055ed disable  0x0000002d 
+ 00021650  0x000055ee enable  0x0000000d 
+ 00021651  0x000055ef enable  0x00000021 
+ 00021652  0x000055f0 disable  0x00000020 
+ 00021653  0x000055f1 copy  0x0000000b , 0x0000001b 
+ 00021654  0x000055f2 correlate  0x0000003e , 0x00000003 
+ 00021655  0x000055f3 branch  0x0000549a , 0x0000002e 
+ 00021656  0x000055f4 copy  0x0000001a , 0x00000002 
+ 00021657  0x000055f5 storet  0x00000006 , 0x0000009a 
+ 00021658  0x000055f7 nbranch  0x0000264d , 0x00000018 
+ 00021659  0x000055f8 branch  0x000054a1 , 0x0000002e 
+ 00021660  0x000055f9 arg  0x000001e0 , 0x00000029 
+ 00021661  0x000055fa copy  0x00000021 , 0x00000028 
+ 00021662  0x000055fb fetch  0x00000001 , 0x0000043f 
+ 00021663  0x000055fc bbit0  0x00000003 , 0x000054a1 
+ 00021664  0x000055fd call  0x00002b05 , 0x0000002b 
+ 00021665  0x000055ff bpatchx  0x0000004a , 0x00004029 
+ 00021666  0x00005600 call  0x000029bb 
+ 00021667  0x00005601 enable  0x00000007 
+ 00021668  0x00005602 enable  0x00000009 
+ 00021669  0x00005603 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021670  0x00005604 rshift3  0x0000000c , 0x0000003f 
+ 00021671  0x00005605 store  0x00000001 , 0x000002d9 
+ 00021672  0x00005606 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021673  0x00005607 rshift3  0x0000000c , 0x0000003f 
+ 00021674  0x00005608 istore  0x00000001 , 0x00000005 
+ 00021675  0x00005609 and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021676  0x0000560a branch  0x000054b1 , 0x00000005 
+ 00021677  0x0000560d parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021678  0x0000560e rshift3  0x0000000c , 0x0000003f 
+ 00021679  0x0000560f istore  0x00000001 , 0x00000005 
+ 00021680  0x00005610 loop  0x000054ad 
+ 00021681  0x00005613 bpatchx  0x0000004b , 0x00004029 
+ 00021682  0x00005614 parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00021683  0x00005615 enable  0x00000010 
+ 00021684  0x00005616 arg  0x00000664 , 0x0000001b 
+ 00021685  0x00005617 rshift32  0x0000003f , 0x0000003f 
+ 00021686  0x00005618 rshift16  0x0000003f , 0x0000003f 
+ 00021687  0x00005619 istore  0x00000003 , 0x00000005 
+ 00021688  0x0000561a branch  0x0000264d , 0x00000006 
+ 00021689  0x0000561b enable  0x0000002d 
+ 00021690  0x0000561c fetch  0x00000001 , 0x00000017 
+ 00021691  0x0000561d add  0x0000003f , 0x00000000 , 0x00000011 
+ 00021692  0x0000561e call  0x00002981 
+ 00021693  0x0000561f disable  0x0000000d 
+ 00021694  0x00005620 branch  0x00002918 
+ 00021695  0x00005623 bpatchx  0x0000004c , 0x00004029 
+ 00021696  0x00005624 call  0x000054c9 
+ 00021697  0x00005626 fetcht  0x00000001 , 0x00000017 
+ 00021698  0x00005627 call  0x0000291f 
+ 00021699  0x00005628 call  0x00002924 
+ 00021700  0x00005629 enable  0x00000010 
+ 00021701  0x0000562a arg  0x0000157c , 0x0000000b 
+ 00021702  0x0000562b branch  0x0000548f 
+ 00021703  0x0000562e call  0x000054c9 
+ 00021704  0x0000562f branch  0x0000264d 
+ 00021705  0x00005632 bpatchx  0x0000004d , 0x00004029 
+ 00021706  0x00005633 call  0x000053d5 
+ 00021707  0x00005634 call  0x000053e3 
+ 00021708  0x00005635 branch  0x000054cd 
+ 00021709  0x00005638 set1  0x00000000 , 0x00000015 
+ 00021710  0x00005639 enable  0x0000001d 
+ 00021711  0x0000563a enable  0x00000020 
+ 00021712  0x0000563b disable  0x00000021 
+ 00021713  0x0000563c call  0x0000547f 
+ 00021714  0x0000563d rshift16  0x00000009 , 0x0000003f 
+ 00021715  0x0000563e rshift8  0x0000003f , 0x0000003f 
+ 00021716  0x0000563f rshift4  0x0000003f , 0x0000003f 
+ 00021717  0x00005640 inject  0x00000003 , 0x00000028 
+ 00021718  0x00005641 enable  0x00000007 
+ 00021719  0x00005642 enable  0x00000009 
+ 00021720  0x00005643 bpatchx  0x0000004e , 0x00004029 
+ 00021721  0x00005644 fetch  0x00000001 , 0x000043dc 
+ 00021722  0x00005645 inject  0x00000003 , 0x00000008 
+ 00021723  0x00005646 ifetch  0x00000001 , 0x00000006 
+ 00021724  0x00005647 and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021725  0x00005648 inject  0x00000003 , 0x00000008 
+ 00021726  0x00005649 branch  0x000054e2 , 0x00000005 
+ 00021727  0x0000564b ifetch  0x00000001 , 0x00000006 
+ 00021728  0x0000564c inject  0x00000003 , 0x00000008 
+ 00021729  0x0000564d loop  0x000054df 
+ 00021730  0x00005650 enable  0x00000008 
+ 00021731  0x00005651 inject  0x00000003 , 0x00000018 
+ 00021732  0x00005652 disable  0x00000008 
+ 00021733  0x00005653 until  0x0000003e , 0x00000027 
+ 00021734  0x00005654 nop  0x00000064 
+ 00021735  0x00005655 disable  0x0000001d 
+ 00021736  0x00005656 rtn 
+ 00021737  0x00005659 bpatchx  0x0000004f , 0x00004029 
+ 00021738  0x0000565a fetch  0x00000001 , 0x00004484 
+ 00021739  0x0000565b beq  0x00000001 , 0x000054f9 
+ 00021740  0x0000565c fetch  0x00000001 , 0x00004485 
+ 00021741  0x0000565d lshift4  0x0000003f , 0x0000003f 
+ 00021742  0x0000565e lshift2  0x0000003f , 0x0000003f 
+ 00021743  0x0000565f store  0x00000001 , 0x000043dc 
+ 00021744  0x00005660 fetcht  0x00000001 , 0x0000436f 
+ 00021745  0x00005661 add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021746  0x00005662 store  0x00000001 , 0x000043dd 
+ 00021747  0x00005663 fetch  0x00000006 , 0x000044a0 
+ 00021748  0x00005664 store  0x00000006 , 0x000043de 
+ 00021749  0x00005665 copy  0x00000002 , 0x00000039 
+ 00021750  0x00005666 arg  0x00004370 , 0x00000006 
+ 00021751  0x00005667 call  0x00007ef4 
+ 00021752  0x00005668 branch  0x00005504 
+ 00021753  0x0000566a fetch  0x00000001 , 0x00004486 
+ 00021754  0x0000566b lshift4  0x0000003f , 0x0000003f 
+ 00021755  0x0000566c lshift2  0x0000003f , 0x0000003f 
+ 00021756  0x0000566d increase  0x00000001 , 0x0000003f 
+ 00021757  0x0000566e store  0x00000001 , 0x000043dc 
+ 00021758  0x0000566f setarg  0x0000000c 
+ 00021759  0x00005670 store  0x00000001 , 0x000043dd 
+ 00021760  0x00005671 fetch  0x00000006 , 0x000044a0 
+ 00021761  0x00005672 store  0x00000006 , 0x000043de 
+ 00021762  0x00005673 fetch  0x00000006 , 0x000041d0 
+ 00021763  0x00005674 istore  0x00000006 , 0x00000005 
+ 00021764  0x00005676 bpatchx  0x00000050 , 0x0000402a 
+ 00021765  0x00005677 fetch  0x00000001 , 0x00000000 
+ 00021766  0x00005678 increase  0x00000001 , 0x0000003f 
+ 00021767  0x00005679 store  0x00000001 , 0x00000000 
+ 00021768  0x0000567a arg  0x00000708 , 0x0000001b 
+ 00021769  0x0000567b disable  0x0000002d 
+ 00021770  0x0000567c branch  0x000054bf 
+ 00021771  0x0000567f bpatchx  0x00000051 , 0x0000402a 
+ 00021772  0x00005680 fetch  0x00000001 , 0x0000449e 
+ 00021773  0x00005681 rtnne  0x00000001 
+ 00021774  0x00005682 fetch  0x00000001 , 0x00000000 
+ 00021775  0x00005683 increase  0x00000001 , 0x0000003f 
+ 00021776  0x00005684 store  0x00000001 , 0x00000000 
+ 00021777  0x00005685 arg  0x00000c03 , 0x00000002 
+ 00021778  0x00005686 fetch  0x00000001 , 0x0000449f 
+ 00021779  0x00005687 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021780  0x00005688 copy  0x00000011 , 0x0000003f 
+ 00021781  0x00005689 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00021782  0x0000568a storet  0x00000002 , 0x000043dc 
+ 00021783  0x0000568b fetch  0x00000006 , 0x000044a0 
+ 00021784  0x0000568c istore  0x00000006 , 0x00000005 
+ 00021785  0x0000568d fetch  0x00000006 , 0x0000044f 
+ 00021786  0x0000568e istore  0x00000006 , 0x00000005 
+ 00021787  0x0000568f branch  0x000054bf 
+ 00021788  0x00005693 bpatchx  0x00000052 , 0x0000402a 
+ 00021789  0x00005694 arg  0x00000004 , 0x00000002 
+ 00021790  0x00005695 fetch  0x00000001 , 0x00004485 
+ 00021791  0x00005696 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021792  0x00005697 storet  0x00000001 , 0x000043dc 
+ 00021793  0x00005698 fetcht  0x00000001 , 0x0000438f 
+ 00021794  0x00005699 add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021795  0x0000569a store  0x00000001 , 0x000043dd 
+ 00021796  0x0000569b fetch  0x00000006 , 0x000044a0 
+ 00021797  0x0000569c store  0x00000006 , 0x000043de 
+ 00021798  0x0000569d arg  0x00004390 , 0x00000006 
+ 00021799  0x0000569e copy  0x00000002 , 0x00000039 
+ 00021800  0x0000569f call  0x00007ef4 
+ 00021801  0x000056a0 call  0x000054c7 
+ 00021802  0x000056a1 branch  0x00005706 
+ 00021803  0x000056a4 bpatchx  0x00000053 , 0x0000402a 
+ 00021804  0x000056a5 force  0xffffffff , 0x0000003f 
+ 00021805  0x000056a6 setsect  0x00000002 , 0x00000001 
+ 00021806  0x000056a7 store  0x00000005 , 0x0000046f 
+ 00021807  0x000056a8 call  0x0000545b 
+ 00021808  0x000056a9 force  0x00000004 , 0x00000039 
+ 00021809  0x000056aa arg  0x00000463 , 0x00000005 
+ 00021810  0x000056ab call  0x0000630d 
+ 00021811  0x000056ac fetch  0x00000002 , 0x0000449c 
+ 00021812  0x000056ad store  0x00000002 , 0x0000046d 
+ 00021813  0x000056af random  0x0000003f 
+ 00021814  0x000056b0 and_into  0x0000000f , 0x0000003f 
+ 00021815  0x000056b1 sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00021816  0x000056b2 branch  0x00005535 , 0x00000002 
+ 00021817  0x000056b3 store  0x00000001 , 0x00000458 
+ 00021818  0x000056b4 store  0x00000001 , 0x000006e6 
+ 00021819  0x000056b5 bpatchx  0x00000054 , 0x0000402a 
+ 00021820  0x000056b6 fetcht  0x00000002 , 0x00004367 
+ 00021821  0x000056b7 storet  0x00000002 , 0x00000441 
+ 00021822  0x000056b8 copy  0x00000002 , 0x00000013 
+ 00021823  0x000056b9 add  0x00000022 , 0x00000007 , 0x0000003f 
+ 00021824  0x000056ba idiv  0x00000013 
+ 00021825  0x000056bb call  0x00007f86 
+ 00021826  0x000056bc remainder  0x00000011 
+ 00021827  0x000056bd isub  0x00000011 , 0x0000003f 
+ 00021828  0x000056be iadd  0x00000013 , 0x0000003f 
+ 00021829  0x000056bf fetcht  0x00000002 , 0x00004365 
+ 00021830  0x000056c0 iadd  0x00000002 , 0x0000003f 
+ 00021831  0x000056c1 store  0x00000004 , 0x00000443 
+ 00021832  0x000056c2 isub  0x00000022 , 0x00000011 
+ 00021833  0x000056c3 increase  0xfffffffa , 0x00000011 
+ 00021834  0x000056c4 arg  0x00002205 , 0x00000012 
+ 00021835  0x000056c5 fetch  0x00000001 , 0x00004495 
+ 00021836  0x000056c6 nsetflag  0x00000034 , 0x00000006 , 0x00000012 
+ 00021837  0x000056c7 fetch  0x00000001 , 0x0000448e 
+ 00021838  0x000056c8 nsetflag  0x00000034 , 0x00000007 , 0x00000012 
+ 00021839  0x000056c9 copy  0x00000012 , 0x0000003f 
+ 00021840  0x000056ca store  0x00000002 , 0x000043dc 
+ 00021841  0x000056cb fetch  0x00000006 , 0x000044a0 
+ 00021842  0x000056cc istore  0x00000006 , 0x00000005 
+ 00021843  0x000056cd fetch  0x00000006 , 0x0000044f 
+ 00021844  0x000056ce istore  0x00000006 , 0x00000005 
+ 00021845  0x000056cf fetch  0x00000004 , 0x00000463 
+ 00021846  0x000056d0 istore  0x00000004 , 0x00000005 
+ 00021847  0x000056d1 random  0x0000003f 
+ 00021848  0x000056d2 istore  0x00000002 , 0x00000005 
+ 00021849  0x000056d3 random  0x0000003f 
+ 00021850  0x000056d4 istore  0x00000001 , 0x00000005 
+ 00021851  0x000056d5 force  0x00000002 , 0x0000003f 
+ 00021852  0x000056d6 istore  0x00000001 , 0x00000005 
+ 00021853  0x000056d7 rshift2  0x00000011 , 0x0000003f 
+ 00021854  0x000056d8 istore  0x00000002 , 0x00000005 
+ 00021855  0x000056d9 rshift2  0x00000013 , 0x0000003f 
+ 00021856  0x000056da istore  0x00000002 , 0x00000005 
+ 00021857  0x000056db bpatchx  0x00000055 , 0x0000402a 
+ 00021858  0x000056dc setarg  0x00000000 
+ 00021859  0x000056dd istore  0x00000002 , 0x00000005 
+ 00021860  0x000056de fetch  0x00000002 , 0x0000449c 
+ 00021861  0x000056df istore  0x00000002 , 0x00000005 
+ 00021862  0x000056e0 fetch  0x00000005 , 0x0000046f 
+ 00021863  0x000056e1 istore  0x00000005 , 0x00000005 
+ 00021864  0x000056e2 fetch  0x00000001 , 0x00000458 
+ 00021865  0x000056e3 arg  0x000000a0 , 0x00000002 
+ 00021866  0x000056e4 ior  0x00000002 , 0x0000003f 
+ 00021867  0x000056e5 istore  0x00000001 , 0x00000005 
+ 00021868  0x000056e6 call  0x000054c7 
+ 00021869  0x000056e7 setarg  0x000043dc 
+ 00021870  0x000056e8 add  0x0000003f , 0x00000012 , 0x00000006 
+ 00021871  0x000056e9 ifetch  0x00000003 , 0x00000006 
+ 00021872  0x000056ea store  0x00000003 , 0x00000467 
+ 00021873  0x000056eb rtn 
+ 00021874  0x000056ee bpatchx  0x00000056 , 0x0000402a 
+ 00021875  0x000056ef disable  0x00000029 
+ 00021876  0x000056f0 branch  0x0000540c 
+ 00021877  0x000056f5 fetch  0x00000001 , 0x0000043f 
+ 00021878  0x000056f6 rtnbit0  0x00000005 
+ 00021879  0x000056f7 fetch  0x00000002 , 0x00000459 
+ 00021880  0x000056f8 fetcht  0x00000002 , 0x0000045f 
+ 00021881  0x000056f9 isub  0x00000002 , 0x0000003f 
+ 00021882  0x000056fa nrtn  0x00000002 
+ 00021883  0x000056fb store  0x00000002 , 0x00000a9a 
+ 00021884  0x000056fc bpatchx  0x00000057 , 0x0000402a 
+ 00021885  0x000056fd fetch  0x00000001 , 0x0000043f 
+ 00021886  0x000056fe set0  0x00000005 , 0x0000003f 
+ 00021887  0x000056ff set0  0x00000003 , 0x0000003f 
+ 00021888  0x00005700 store  0x00000001 , 0x0000043f 
+ 00021889  0x00005701 fetch  0x00000004 , 0x00000443 
+ 00021890  0x00005702 fetcht  0x00000002 , 0x00000441 
+ 00021891  0x00005703 storet  0x00000002 , 0x00000aa2 
+ 00021892  0x00005704 isub  0x00000002 , 0x00000011 
+ 00021893  0x00005705 bpatchx  0x00000058 , 0x0000402b 
+ 00021894  0x00005706 fetch  0x00000001 , 0x000043d3 
+ 00021895  0x00005707 store  0x00000001 , 0x0000046a 
+ 00021896  0x00005708 ifetcht  0x00000002 , 0x00000006 
+ 00021897  0x00005709 ifetch  0x00000002 , 0x00000006 
+ 00021898  0x0000570a lshift2  0x0000003f , 0x0000003f 
+ 00021899  0x0000570b store  0x00000002 , 0x00000441 
+ 00021900  0x0000570c lshift2  0x00000002 , 0x00000002 
+ 00021901  0x0000570d iadd  0x00000002 , 0x0000003f 
+ 00021902  0x0000570e ifetcht  0x00000004 , 0x00000006 
+ 00021903  0x0000570f storet  0x00000004 , 0x0000046b 
+ 00021904  0x00005710 iadd  0x00000011 , 0x0000003f 
+ 00021905  0x00005711 copy  0x0000003f , 0x00000014 
+ 00021906  0x00005712 fetch  0x00000002 , 0x00000441 
+ 00021907  0x00005713 fetcht  0x00000002 , 0x00000aa2 
+ 00021908  0x00005714 isub  0x00000002 , 0x0000003f 
+ 00021909  0x00005715 fetcht  0x00000002 , 0x00000a9a 
+ 00021910  0x00005716 imul32  0x00000002 , 0x0000003f 
+ 00021911  0x00005717 iadd  0x00000014 , 0x0000003f 
+ 00021912  0x00005718 store  0x00000004 , 0x00000443 
+ 00021913  0x00005719 call  0x00005713 
+ 00021914  0x0000571a fetch  0x00000002 , 0x0000046d 
+ 00021915  0x0000571b store  0x00000002 , 0x000044ba 
+ 00021916  0x0000571c rtn 
+ 00021917  0x00005720 bpatchx  0x00000059 , 0x0000402b 
+ 00021918  0x00005721 fetch  0x00000001 , 0x0000043f 
+ 00021919  0x00005722 rtnbit0  0x00000006 
+ 00021920  0x00005723 fetch  0x00000002 , 0x00000459 
+ 00021921  0x00005724 fetcht  0x00000002 , 0x0000045f 
+ 00021922  0x00005725 isub  0x00000002 , 0x0000003f 
+ 00021923  0x00005726 nrtn  0x00000002 
+ 00021924  0x00005727 fetch  0x00000001 , 0x0000043f 
+ 00021925  0x00005728 set0  0x00000006 , 0x0000003f 
+ 00021926  0x00005729 store  0x00000001 , 0x0000043f 
+ 00021927  0x0000572a fetch  0x00000005 , 0x000043ce 
+ 00021928  0x0000572b store  0x00000005 , 0x0000046f 
+ 00021929  0x0000572c branch  0x0000545b 
+ 00021930  0x00005730 bpatchx  0x0000005a , 0x0000402b 
+ 00021931  0x00005731 call  0x000056ed 
+ 00021932  0x00005732 call  0x000055c0 
+ 00021933  0x00005733 fetch  0x00000001 , 0x000002d9 
+ 00021934  0x00005734 isolate1  0x00000004 , 0x0000003f 
+ 00021935  0x00005735 setflag  0x00000001 , 0x0000002a , 0x00000000 
+ 00021936  0x00005736 rshift  0x0000003f , 0x0000003f 
+ 00021937  0x00005737 ixor  0x00000002 , 0x0000003f 
+ 00021938  0x00005738 isolate1  0x00000002 , 0x0000003f 
+ 00021939  0x00005739 setflag  0x00000001 , 0x0000000f , 0x00000000 
+ 00021940  0x0000573a rtnmark1  0x0000000f 
+ 00021941  0x0000573b fetch  0x00000001 , 0x000002da 
+ 00021942  0x0000573c branch  0x000055bc , 0x00000034 
+ 00021943  0x0000573d fetch  0x00000001 , 0x0000043f 
+ 00021944  0x0000573e bbit0  0x00000004 , 0x000055bc 
+ 00021945  0x0000573f call  0x0000748d 
+ 00021946  0x00005740 call  0x000073fb 
+ 00021947  0x00005741 nrtn  0x00000034 
+ 00021948  0x00005743 fetcht  0x00000001 , 0x00000456 
+ 00021949  0x00005744 setflip  0x00000002 , 0x00000002 
+ 00021950  0x00005745 storet  0x00000001 , 0x00000456 
+ 00021951  0x00005746 rtn 
+ 00021952  0x0000574a bpatchx  0x0000005b , 0x0000402b 
+ 00021953  0x0000574b fetcht  0x00000001 , 0x00000456 
+ 00021954  0x0000574c isolate0  0x00000005 , 0x00000002 
+ 00021955  0x0000574d rtn  0x00000001 
+ 00021956  0x0000574e fetch  0x00000001 , 0x000002d9 
+ 00021957  0x0000574f lshift  0x0000003f , 0x0000003f 
+ 00021958  0x00005750 ixor  0x00000002 , 0x0000003f 
+ 00021959  0x00005751 rtnbit0  0x00000003 
+ 00021960  0x00005752 set0  0x00000005 , 0x00000002 
+ 00021961  0x00005753 setflip  0x00000003 , 0x00000002 
+ 00021962  0x00005754 storet  0x00000001 , 0x00000456 
+ 00021963  0x00005755 compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00021964  0x00005756 nrtn  0x00000001 
+ 00021965  0x00005757 fetch  0x00000001 , 0x000043de 
+ 00021966  0x00005758 beq  0x00000005 , 0x000055d2 
+ 00021967  0x00005759 fetch  0x00000001 , 0x000044c5 
+ 00021968  0x0000575a beq  0x00000002 , 0x000055d6 
+ 00021969  0x0000575b rtn 
+ 00021970  0x0000575f fetch  0x00000001 , 0x0000043f 
+ 00021971  0x00005760 set1  0x00000004 , 0x0000003f 
+ 00021972  0x00005761 store  0x00000001 , 0x0000043f 
+ 00021973  0x00005762 rtn 
+ 00021974  0x00005765 bpatchx  0x0000005c , 0x0000402b 
+ 00021975  0x00005766 jam  0x00000000 , 0x000044c5 
+ 00021976  0x00005767 arg  0x00000000 , 0x0000003f 
+ 00021977  0x00005768 store  0x00000004 , 0x0000440d 
+ 00021978  0x00005769 store  0x00000005 , 0x00004403 
+ 00021979  0x0000576a set1  0x00000027 , 0x0000003f 
+ 00021980  0x0000576b store  0x00000005 , 0x00004408 
+ 00021981  0x0000576c fetch  0x00000001 , 0x0000043f 
+ 00021982  0x0000576d set0  0x00000004 , 0x0000003f 
+ 00021983  0x0000576e store  0x00000001 , 0x0000043f 
+ 00021984  0x0000576f rtn 
+ 00021985  0x00005773 bpatchx  0x0000005d , 0x0000402b 
+ 00021986  0x00005774 call  0x00005422 
+ 00021987  0x00005775 call  0x00005485 
+ 00021988  0x00005776 fetch  0x00000001 , 0x00000001 
+ 00021989  0x00005777 increase  0x00000001 , 0x0000003f 
+ 00021990  0x00005778 store  0x00000001 , 0x00000001 
+ 00021991  0x00005779 rtn 
+ 00021992  0x0000577d bpatchx  0x0000005e , 0x0000402b 
+ 00021993  0x0000577e fetch  0x00000001 , 0x00004369 
+ 00021994  0x0000577f rtnne  0x00000001 
+ 00021995  0x00005780 arg  0x00000002 , 0x00000007 
+ 00021996  0x00005781 call  0x00007f16 
+ 00021997  0x00005782 nrtn  0x00000034 
+ 00021998  0x00005783 fetch  0x00000002 , 0x0000436a 
+ 00021999  0x00005784 fetcht  0x00000002 , 0x0000436c 
+ 00022000  0x00005785 isub  0x00000002 , 0x0000003f 
+ 00022001  0x00005786 arg  0x00000002 , 0x00000007 
+ 00022002  0x00005787 call  0x00007f08 
+ 00022003  0x00005788 disable  0x00000029 
+ 00022004  0x00005789 call  0x00005572 
+ 00022005  0x0000578a call  0x000055e1 
+ 00022006  0x0000578b nrtn  0x0000002d 
+ 00022007  0x0000578c bpatchx  0x0000005f , 0x0000402b 
+ 00022008  0x0000578d fetch  0x00000006 , 0x000002db 
+ 00022009  0x0000578e store  0x00000006 , 0x0000044f 
+ 00022010  0x00005791 fetch  0x00000001 , 0x00000002 
+ 00022011  0x00005792 increase  0x00000001 , 0x0000003f 
+ 00022012  0x00005793 store  0x00000001 , 0x00000002 
+ 00022013  0x00005794 call  0x00005608 
+ 00022014  0x00005795 rtn  0x00000029 
+ 00022015  0x00005796 call  0x0000550b 
+ 00022016  0x00005797 nrtn  0x0000002d 
+ 00022017  0x00005798 bpatchx  0x00000060 , 0x0000402c 
+ 00022018  0x00005799 fetch  0x00000001 , 0x00000004 
+ 00022019  0x0000579a increase  0x00000001 , 0x0000003f 
+ 00022020  0x0000579b store  0x00000001 , 0x00000004 
+ 00022021  0x0000579c fetch  0x00000009 , 0x000002e1 
+ 00022022  0x0000579d store  0x00000009 , 0x00000101 
+ 00022023  0x0000579e rtn 
+ 00022024  0x000057a1 bpatchx  0x00000061 , 0x0000402c 
+ 00022025  0x000057a2 fetch  0x00000001 , 0x0000049b 
+ 00022026  0x000057a3 rtnne  0x0000001b 
+ 00022027  0x000057a4 fetch  0x00000006 , 0x0000044f 
+ 00022028  0x000057a5 fetcht  0x00000006 , 0x0000448f 
+ 00022029  0x000057a6 isub  0x00000002 , 0x0000003e 
+ 00022030  0x000057a7 nrtn  0x00000005 
+ 00022031  0x000057a8 call  0x0000223b 
+ 00022032  0x000057a9 nrtn  0x00000005 
+ 00022033  0x000057aa call  0x0000552b 
+ 00022034  0x000057ab call  0x00005340 
+ 00022035  0x000057ac bpatchx  0x00000062 , 0x0000402c 
+ 00022036  0x000057ad jam  0x00000000 , 0x000041ce 
+ 00022037  0x000057ae jam  0x00000000 , 0x00000476 
+ 00022038  0x000057af jam  0x00000000 , 0x00004369 
+ 00022039  0x000057b0 jam  0x00000000 , 0x0000049b 
+ 00022040  0x000057b1 branch  0x00002223 
+ 00022041  0x000057b4 arg  0x00000001 , 0x00000011 
+ 00022042  0x000057b5 fetch  0x00000001 , 0x000002d9 
+ 00022043  0x000057b6 rtnbit1  0x00000006 
+ 00022044  0x000057b7 arg  0x00000000 , 0x00000011 
+ 00022045  0x000057b8 rtn 
+ 00022046  0x000057bd bpatchx  0x00000063 , 0x0000402c 
+ 00022047  0x000057be fetch  0x00000001 , 0x00000456 
+ 00022048  0x000057bf rtnbit1  0x00000005 
+ 00022049  0x000057c0 call  0x00005642 
+ 00022050  0x000057c1 call  0x00005873 
+ 00022051  0x000057c2 branch  0x00005664 , 0x00000034 
+ 00022052  0x000057c3 ifetch  0x00000001 , 0x00000006 
+ 00022053  0x000057c4 ifetcht  0x00000001 , 0x00000006 
+ 00022054  0x000057c5 copy  0x00000002 , 0x00000011 
+ 00022055  0x000057c6 isub  0x00000011 , 0x0000003f 
+ 00022056  0x000057c7 arg  0x0000001b , 0x00000002 
+ 00022057  0x000057c8 call  0x00007fdd 
+ 00022058  0x000057c9 copy  0x0000003f , 0x00000002 
+ 00022059  0x000057ca ifetch  0x00000001 , 0x00000006 
+ 00022060  0x000057cb copy  0x0000003f , 0x00000001 
+ 00022061  0x000057cc copy  0x00000011 , 0x0000003f 
+ 00022062  0x000057cd iadd  0x00000006 , 0x00000006 
+ 00022063  0x000057ce arg  0x000043de , 0x00000005 
+ 00022064  0x000057cf copy  0x00000002 , 0x00000039 
+ 00022065  0x000057d0 call  0x00007f01 
+ 00022066  0x000057d1 call  0x00005654 
+ 00022067  0x000057d2 call  0x00005666 
+ 00022068  0x000057d4 call  0x00005873 
+ 00022069  0x000057d5 ifetch  0x00000001 , 0x00000006 
+ 00022070  0x000057d6 copy  0x0000003f , 0x00000011 
+ 00022071  0x000057d7 copy  0x00000006 , 0x00000013 
+ 00022072  0x000057d8 ifetcht  0x00000001 , 0x00000006 
+ 00022073  0x000057d9 copy  0x00000002 , 0x00000012 
+ 00022074  0x000057da isub  0x00000012 , 0x0000003f 
+ 00022075  0x000057db arg  0x0000001b , 0x00000002 
+ 00022076  0x000057dc call  0x00007fdd 
+ 00022077  0x000057dd iadd  0x00000012 , 0x0000003f 
+ 00022078  0x000057de istore  0x00000001 , 0x00000013 
+ 00022079  0x000057df isub  0x00000011 , 0x0000003e 
+ 00022080  0x000057e0 nrtn  0x00000005 
+ 00022081  0x000057e1 branch  0x00005896 
+ 00022082  0x000057e5 call  0x00005649 
+ 00022083  0x000057e6 rtnmark1  0x00000029 
+ 00022084  0x000057e7 fetch  0x00000001 , 0x000044e9 
+ 00022085  0x000057e8 bbit0  0x00000002 , 0x00005652 
+ 00022086  0x000057e9 call  0x00005876 
+ 00022087  0x000057ea branch  0x00005652 , 0x00000034 
+ 00022088  0x000057eb branch  0x00005650 
+ 00022089  0x000057ef call  0x00005873 
+ 00022090  0x000057f0 branch  0x00005652 , 0x00000034 
+ 00022091  0x000057f1 ifetch  0x00000001 , 0x00000006 
+ 00022092  0x000057f2 ifetcht  0x00000001 , 0x00000006 
+ 00022093  0x000057f3 isub  0x00000002 , 0x0000003f 
+ 00022094  0x000057f4 sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00022095  0x000057f5 branch  0x00005652 , 0x00000002 
+ 00022096  0x000057f7 set1  0x00000029 , 0x00000000 
+ 00022097  0x000057f8 rtn 
+ 00022098  0x000057fb set0  0x00000029 , 0x00000000 
+ 00022099  0x000057fc rtn 
+ 00022100  0x000057ff copy  0x00000011 , 0x0000003f 
+ 00022101  0x00005800 rtn  0x00000034 
+ 00022102  0x00005801 arg  0x00000001 , 0x00000001 
+ 00022103  0x00005802 rtn 
+ 00022104  0x00005806 bpatchx  0x00000064 , 0x0000402c 
+ 00022105  0x00005807 increase  0x00000001 , 0x00000002 
+ 00022106  0x00005808 call  0x0000576a 
+ 00022107  0x00005809 increase  0xfffffffe , 0x00000006 
+ 00022108  0x0000580a ifetch  0x00000002 , 0x00000006 
+ 00022109  0x0000580b arg  0x00002902 , 0x00000002 
+ 00022110  0x0000580c isub  0x00000002 , 0x0000003e 
+ 00022111  0x0000580d nrtn  0x00000005 
+ 00022112  0x0000580e increase  0x00000001 , 0x00000006 
+ 00022113  0x0000580f copy  0x00000006 , 0x00000011 
+ 00022114  0x00005810 ifetch  0x00000001 , 0x00000006 
+ 00022115  0x00005811 rtn 
+ 00022116  0x00005815 force  0x00000000 , 0x00000002 
+ 00022117  0x00005816 force  0x00000001 , 0x00000001 
+ 00022118  0x00005819 bpatchx  0x00000065 , 0x0000402c 
+ 00022119  0x0000581a storet  0x00000001 , 0x000043dd 
+ 00022120  0x0000581b fetcht  0x00000001 , 0x00000456 
+ 00022121  0x0000581c set1  0x00000005 , 0x00000002 
+ 00022122  0x0000581d and  0x00000002 , 0x000000fc , 0x0000003f 
+ 00022123  0x0000581e ior  0x00000001 , 0x0000003f 
+ 00022124  0x0000581f store  0x00000001 , 0x00000456 
+ 00022125  0x00005820 and_into  0x0000001f , 0x0000003f 
+ 00022126  0x00005821 isolate1  0x00000029 , 0x00000000 
+ 00022127  0x00005822 setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00022128  0x00005823 store  0x00000001 , 0x000043dc 
+ 00022129  0x00005825 fetch  0x00000001 , 0x000043dc 
+ 00022130  0x00005826 compare  0x00000001 , 0x00000001 , 0x00000003 
+ 00022131  0x00005827 nbranch  0x00005676 , 0x00000001 
+ 00022132  0x00005828 fetch  0x00000001 , 0x000043dd 
+ 00022133  0x00005829 rtn  0x00000034 
+ 00022134  0x0000582b fetch  0x00000001 , 0x0000043f 
+ 00022135  0x0000582c rtnbit0  0x00000004 
+ 00022136  0x0000582d call  0x0000748d 
+ 00022137  0x0000582e branch  0x000073e3 
+ 00022138  0x00005832 arg  0x00000000 , 0x00000007 
+ 00022139  0x00005833 branch  0x00002c32 
+ 00022140  0x00005836 arg  0x00000000 , 0x00000007 
+ 00022141  0x00005837 branch  0x00002c36 
+ 00022142  0x0000583b bpatchx  0x00000066 , 0x0000402c 
+ 00022143  0x0000583c rtnmark1  0x0000000f 
+ 00022144  0x0000583d call  0x00005890 
+ 00022145  0x0000583e nrtn  0x00000034 
+ 00022146  0x0000583f fetch  0x00000001 , 0x000002d9 
+ 00022147  0x00005840 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00022148  0x00005841 store  0x00000001 , 0x0000450c 
+ 00022149  0x00005842 ifetch  0x00000001 , 0x00000006 
+ 00022150  0x00005843 and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00022151  0x00005844 store  0x00000001 , 0x0000450b 
+ 00022152  0x00005845 rtn  0x00000034 
+ 00022153  0x00005846 copy  0x00000006 , 0x0000003f 
+ 00022154  0x00005847 store  0x00000002 , 0x0000450d 
+ 00022155  0x00005848 fetch  0x00000001 , 0x0000450c 
+ 00022156  0x00005849 beq  0x00000003 , 0x00005c64 
+ 00022157  0x0000584b call  0x0000569a 
+ 00022158  0x0000584c nbranch  0x0000567a , 0x00000028 
+ 00022159  0x0000584d call  0x0000567c 
+ 00022160  0x0000584e fetch  0x00000002 , 0x0000450d 
+ 00022161  0x0000584f copy  0x0000003f , 0x00000006 
+ 00022162  0x00005850 ifetch  0x00000002 , 0x00000006 
+ 00022163  0x00005851 store  0x00000002 , 0x000044fc 
+ 00022164  0x00005852 bpatchx  0x00000067 , 0x0000402c 
+ 00022165  0x00005853 ifetch  0x00000002 , 0x00000006 
+ 00022166  0x00005854 beq  0x00000004 , 0x000058ab 
+ 00022167  0x00005855 beq  0x00000006 , 0x00005af4 
+ 00022168  0x00005856 beq  0x00000005 , 0x00005ab6 
+ 00022169  0x00005857 rtn 
+ 00022170  0x0000585b fetch  0x00000001 , 0x0000450c 
+ 00022171  0x0000585c beq  0x00000002 , 0x000056a9 
+ 00022172  0x0000585d beq  0x00000001 , 0x000056c1 
+ 00022173  0x0000585e rtn 
+ 00022174  0x00005864 call  0x00007fe7 
+ 00022175  0x00005865 arg  0x00000004 , 0x00000002 
+ 00022176  0x00005866 isub  0x0000003f , 0x0000003e 
+ 00022177  0x00005867 rtn  0x00000005 
+ 00022178  0x00005868 arg  0x00000005 , 0x00000002 
+ 00022179  0x00005869 isub  0x0000003f , 0x0000003e 
+ 00022180  0x0000586a rtn  0x00000005 
+ 00022181  0x0000586b arg  0x00000006 , 0x00000002 
+ 00022182  0x0000586c isub  0x0000003f , 0x0000003e 
+ 00022183  0x0000586d rtn  0x00000005 
+ 00022184  0x0000586e branch  0x00007fe9 
+ 00022185  0x00005872 fetch  0x00000002 , 0x0000450d 
+ 00022186  0x00005873 copy  0x0000003f , 0x00000006 
+ 00022187  0x00005874 ifetch  0x00000002 , 0x00000006 
+ 00022188  0x00005875 store  0x00000002 , 0x000044fc 
+ 00022189  0x00005876 ifetch  0x00000002 , 0x00000006 
+ 00022190  0x00005877 call  0x0000569e 
+ 00022191  0x00005878 nrtn  0x00000028 
+ 00022192  0x00005879 fetcht  0x00000001 , 0x0000450b 
+ 00022193  0x0000587a storet  0x00000001 , 0x000044fe 
+ 00022194  0x0000587b fetch  0x00000002 , 0x000044fc 
+ 00022195  0x0000587c increase  0x00000004 , 0x0000003f 
+ 00022196  0x0000587d isub  0x00000002 , 0x0000003e 
+ 00022197  0x0000587e branch  0x00007fe7 , 0x00000005 
+ 00022198  0x0000587f fetch  0x00000001 , 0x0000450b 
+ 00022199  0x00005880 copy  0x0000003f , 0x00000039 
+ 00022200  0x00005881 arg  0x00000311 , 0x00000005 
+ 00022201  0x00005882 fetch  0x00000002 , 0x0000450d 
+ 00022202  0x00005883 copy  0x0000003f , 0x00000006 
+ 00022203  0x00005884 call  0x00007f01 
+ 00022204  0x00005885 branch  0x00007fe9 
+ 00022205  0x0000588b call  0x00007fe7 
+ 00022206  0x0000588c fetch  0x00000001 , 0x000044fe 
+ 00022207  0x0000588d nrtn  0x00000034 
+ 00022208  0x0000588e branch  0x00007fe9 
+ 00022209  0x00005891 call  0x000056bd 
+ 00022210  0x00005892 nrtn  0x00000028 
+ 00022211  0x00005893 fetch  0x00000001 , 0x000044fe 
+ 00022212  0x00005894 arg  0x00000311 , 0x00000005 
+ 00022213  0x00005895 iadd  0x00000005 , 0x00000011 
+ 00022214  0x00005896 fetcht  0x00000001 , 0x0000450b 
+ 00022215  0x00005897 iadd  0x00000002 , 0x0000003f 
+ 00022216  0x00005898 store  0x00000001 , 0x000044fe 
+ 00022217  0x00005899 fetch  0x00000001 , 0x0000450b 
+ 00022218  0x0000589a copy  0x0000003f , 0x00000039 
+ 00022219  0x0000589b copy  0x00000011 , 0x00000005 
+ 00022220  0x0000589c fetch  0x00000002 , 0x0000450d 
+ 00022221  0x0000589d copy  0x0000003f , 0x00000006 
+ 00022222  0x0000589e call  0x00007ef4 
+ 00022223  0x0000589f setarg  0x00000311 
+ 00022224  0x000058a0 store  0x00000002 , 0x0000450d 
+ 00022225  0x000058a1 fetch  0x00000002 , 0x000044fc 
+ 00022226  0x000058a2 increase  0x00000004 , 0x0000003f 
+ 00022227  0x000058a3 fetcht  0x00000001 , 0x000044fe 
+ 00022228  0x000058a4 isub  0x00000002 , 0x0000003e 
+ 00022229  0x000058a5 branch  0x00007fe7 , 0x00000005 
+ 00022230  0x000058a6 branch  0x00007fe9 
+ 00022231  0x000058ad call  0x00007ea5 
+ 00022232  0x000058ae arg  0x0000445e , 0x00000005 
+ 00022233  0x000058b0 fetch  0x00000002 , 0x000044fc 
+ 00022234  0x000058b1 increase  0xfffffffb , 0x0000003f 
+ 00022235  0x000058b3 istore  0x00000001 , 0x00000005 
+ 00022236  0x000058b4 copy  0x0000003f , 0x00000039 
+ 00022237  0x000058b5 call  0x00007e9f 
+ 00022238  0x000058b6 branch  0x00007ef4 
+ 00022239  0x000058b9 call  0x00007ea5 
+ 00022240  0x000058ba arg  0x00004471 , 0x00000005 
+ 00022241  0x000058bb branch  0x000056d9 
+ 00022242  0x000058c0 fetch  0x00000002 , 0x000041f9 
+ 00022243  0x000058c1 branch  0x00007f9c 
+ 00022244  0x000058c4 fetcht  0x00000004 , 0x0000045b 
+ 00022245  0x000058c5 call  0x00002a7b 
+ 00022246  0x000058c6 isub  0x00000002 , 0x0000000b 
+ 00022247  0x000058c7 deposit  0x0000000b 
+ 00022248  0x000058c8 fetcht  0x00000002 , 0x0000046d 
+ 00022249  0x000058c9 lshift4  0x00000002 , 0x00000002 
+ 00022250  0x000058ca lshift  0x00000002 , 0x00000002 
+ 00022251  0x000058cb isub  0x00000002 , 0x0000003f 
+ 00022252  0x000058cc rtn 
+ 00022253  0x000058cf call  0x00002a7b 
+ 00022254  0x000058d0 store  0x00000004 , 0x0000045b 
+ 00022255  0x000058d1 rtn 
+ 00022256  0x000058d5 jam  0x00000024 , 0x00000016 
+ 00022257  0x000058d6 jam  0x00000000 , 0x00000ac2 
+ 00022258  0x000058d8 bpatchx  0x00000068 , 0x0000402d 
+ 00022259  0x000058d9 fetch  0x00000001 , 0x0000436e 
+ 00022260  0x000058da rtn  0x00000034 
+ 00022261  0x000058db arg  0x00000000 , 0x00000007 
+ 00022262  0x000058dc call  0x00007f16 
+ 00022263  0x000058dd nrtn  0x00000034 
+ 00022264  0x000058de bpatchx  0x00000069 , 0x0000402d 
+ 00022265  0x000058e0 disable  0x00000029 
+ 00022266  0x000058e1 enable  0x00000010 
+ 00022267  0x000058e2 call  0x00005572 
+ 00022268  0x000058e3 call  0x00005422 
+ 00022269  0x000058e4 call  0x000054e9 
+ 00022270  0x000058e5 nbranch  0x00005706 , 0x0000002d 
+ 00022271  0x000058e6 fetch  0x00000001 , 0x00000003 
+ 00022272  0x000058e7 increase  0x00000001 , 0x0000003f 
+ 00022273  0x000058e8 store  0x00000001 , 0x00000003 
+ 00022274  0x000058e9 fetch  0x00000001 , 0x000002d9 
+ 00022275  0x000058ea and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00022276  0x000058eb beq  0x00000003 , 0x0000551c 
+ 00022277  0x000058ec beq  0x00000005 , 0x00005728 
+ 00022278  0x000058ee bpatchx  0x0000006a , 0x0000402d 
+ 00022279  0x000058ef random  0x0000003f 
+ 00022280  0x000058f0 arg  0x000001ff , 0x00000002 
+ 00022281  0x000058f1 iand  0x00000002 , 0x0000003f 
+ 00022282  0x000058f2 add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00022283  0x000058f3 call  0x00003cbe 
+ 00022284  0x000058f4 fetch  0x00000001 , 0x00000ac2 
+ 00022285  0x000058f5 fetcht  0x00000001 , 0x0000448d 
+ 00022286  0x000058f6 isub  0x00000002 , 0x0000003e 
+ 00022287  0x000058f7 nbranch  0x000056f2 , 0x00000005 
+ 00022288  0x000058f8 arg  0x00000000 , 0x00000007 
+ 00022289  0x000058f9 fetch  0x00000002 , 0x00004482 
+ 00022290  0x000058fa branch  0x00007f08 
+ 00022291  0x000058fe bpatchx  0x0000006b , 0x0000402d 
+ 00022292  0x000058ff fetch  0x00000001 , 0x00000476 
+ 00022293  0x00005900 call  0x000053fc 
+ 00022294  0x00005901 fetch  0x00000002 , 0x00000441 
+ 00022295  0x00005902 imul32  0x00000002 , 0x0000003f 
+ 00022296  0x00005903 arg  0x00000177 , 0x00000002 
+ 00022297  0x00005904 imul32  0x00000002 , 0x0000003f 
+ 00022298  0x00005905 arg  0x000186a0 , 0x00000002 
+ 00022299  0x00005906 idiv  0x00000002 
+ 00022300  0x00005907 fetch  0x00000001 , 0x0000046a 
+ 00022301  0x00005908 arg  0x00004e20 , 0x00000002 
+ 00022302  0x00005909 imul32  0x00000002 , 0x0000003f 
+ 00022303  0x0000590a iadd  0x00000002 , 0x0000003f 
+ 00022304  0x0000590b store  0x00000004 , 0x000044e5 
+ 00022305  0x0000590c bpatchx  0x0000006c , 0x0000402d 
+ 00022306  0x0000590d fetch  0x00000002 , 0x000040c1 
+ 00022307  0x0000590e call  0x00007f86 
+ 00022308  0x0000590f quotient  0x00000002 
+ 00022309  0x00005910 iadd  0x00000002 , 0x0000003f 
+ 00022310  0x00005911 store  0x00000002 , 0x0000044d 
+ 00022311  0x00005912 rtn 
+ 00022312  0x00005915 bpatchx  0x0000006d , 0x0000402d 
+ 00022313  0x00005916 fetch  0x00000006 , 0x000002e1 
+ 00022314  0x00005917 fetcht  0x00000006 , 0x000044a0 
+ 00022315  0x00005918 isub  0x00000002 , 0x0000003e 
+ 00022316  0x00005919 nrtn  0x00000005 
+ 00022317  0x0000591a call  0x00005619 
+ 00022318  0x0000591b copy  0x00000011 , 0x0000003f 
+ 00022319  0x0000591c store  0x00000001 , 0x0000448e 
+ 00022320  0x0000591d fetch  0x00000007 , 0x000002ee 
+ 00022321  0x0000591e store  0x00000007 , 0x00000101 
+ 00022322  0x0000591f ifetch  0x00000008 , 0x00000006 
+ 00022323  0x00005920 istore  0x00000008 , 0x00000005 
+ 00022324  0x00005921 fetch  0x00000006 , 0x000002db 
+ 00022325  0x00005922 store  0x00000006 , 0x0000044f 
+ 00022326  0x00005923 increase  0x00000006 , 0x00000006 
+ 00022327  0x00005924 ifetch  0x00000008 , 0x00000006 
+ 00022328  0x00005925 store  0x00000008 , 0x00000463 
+ 00022329  0x00005926 ifetcht  0x00000002 , 0x00000006 
+ 00022330  0x00005927 bpatchx  0x0000006e , 0x0000402d 
+ 00022331  0x00005928 lshift2  0x00000002 , 0x00000002 
+ 00022332  0x00005929 ifetch  0x00000002 , 0x00000006 
+ 00022333  0x0000592a lshift2  0x0000003f , 0x0000003f 
+ 00022334  0x0000592b store  0x00000002 , 0x00000441 
+ 00022335  0x0000592c store  0x00000004 , 0x00000443 
+ 00022336  0x0000592d isub  0x00000002 , 0x0000003f 
+ 00022337  0x0000592e add  0x0000003f , 0xfffffffe , 0x00000028 
+ 00022338  0x0000592f ifetch  0x00000009 , 0x00000006 
+ 00022339  0x00005930 store  0x00000009 , 0x0000046b 
+ 00022340  0x00005931 bpatchx  0x0000006f , 0x0000402d 
+ 00022341  0x00005932 ifetch  0x00000001 , 0x00000006 
+ 00022342  0x00005933 rshift4  0x0000003f , 0x00000002 
+ 00022343  0x00005934 rshift  0x00000002 , 0x00000002 
+ 00022344  0x00005935 storet  0x00000001 , 0x00000476 
+ 00022345  0x00005936 and_into  0x0000001f , 0x0000003f 
+ 00022346  0x00005937 store  0x00000001 , 0x00000458 
+ 00022347  0x00005938 call  0x00005713 
+ 00022348  0x00005939 call  0x0000545b 
+ 00022349  0x0000593a call  0x0000534c 
+ 00022350  0x0000593b call  0x0000223b 
+ 00022351  0x0000593c nrtn  0x00000005 
+ 00022352  0x0000593d bpatchx  0x00000070 , 0x0000402e 
+ 00022353  0x0000593e call  0x00002841 
+ 00022354  0x0000593f call  0x00005ad3 
+ 00022355  0x00005940 jam  0x00000014 , 0x00000a99 
+ 00022356  0x00005941 call  0x00007d86 
+ 00022357  0x00005942 branch  0x00002223 
+ 00022358  0x00005946 bpatchx  0x00000071 , 0x0000402e 
+ 00022359  0x00005947 fetch  0x00000002 , 0x0000445a 
+ 00022360  0x00005948 iforce  0x00000012 
+ 00022361  0x00005949 fetch  0x00000002 , 0x0000445c 
+ 00022362  0x0000594a iforce  0x00000013 
+ 00022363  0x0000594b fetch  0x00000002 , 0x000044bc 
+ 00022364  0x0000594c iforce  0x00000006 
+ 00022365  0x0000594d enable  0x00000028 
+ 00022366  0x0000594e rtn 
+ 00022367  0x00005952 ifetch  0x00000002 , 0x00000006 
+ 00022368  0x00005953 rtn  0x00000034 
+ 00022369  0x00005954 isub  0x00000012 , 0x0000003e 
+ 00022370  0x00005955 nrtn  0x00000002 
+ 00022371  0x00005956 isub  0x00000013 , 0x0000003e 
+ 00022372  0x00005957 rtn  0x00000005 
+ 00022373  0x00005958 branch  0x00005768 , 0x00000002 
+ 00022374  0x00005959 force  0x00000001 , 0x0000003e 
+ 00022375  0x0000595a rtn 
+ 00022376  0x0000595c force  0x00000000 , 0x0000003f 
+ 00022377  0x0000595d rtn 
+ 00022378  0x00005962 call  0x0000576d 
+ 00022379  0x00005963 branch  0x00005779 , 0x00000005 
+ 00022380  0x00005964 rtn 
+ 00022381  0x00005967 bpatchx  0x00000072 , 0x0000402e 
+ 00022382  0x00005968 fetch  0x00000002 , 0x000044bc 
+ 00022383  0x00005969 iforce  0x00000006 
+ 00022384  0x0000596b ifetch  0x00000002 , 0x00000006 
+ 00022385  0x0000596c rtn  0x00000034 
+ 00022386  0x0000596d isub  0x00000002 , 0x0000003e 
+ 00022387  0x0000596e rtn  0x00000005 
+ 00022388  0x0000596f ifetch  0x00000001 , 0x00000006 
+ 00022389  0x00005970 iadd  0x00000006 , 0x00000006 
+ 00022390  0x00005971 ifetch  0x00000001 , 0x00000006 
+ 00022391  0x00005972 iadd  0x00000006 , 0x00000006 
+ 00022392  0x00005973 branch  0x00005770 
+ 00022393  0x00005975 ifetch  0x00000001 , 0x00000006 
+ 00022394  0x00005976 iadd  0x00000006 , 0x00000006 
+ 00022395  0x00005977 rtn 
+ 00022396  0x0000597c bpatchx  0x00000073 , 0x0000402e 
+ 00022397  0x0000597d fetch  0x00000002 , 0x000044bc 
+ 00022398  0x0000597e iforce  0x00000006 
+ 00022399  0x00005980 ifetch  0x00000002 , 0x00000006 
+ 00022400  0x00005981 rtn  0x00000034 
+ 00022401  0x00005982 ifetch  0x00000001 , 0x00000006 
+ 00022402  0x00005983 iadd  0x00000006 , 0x00000006 
+ 00022403  0x00005984 increase  0xfffffffe , 0x00000006 
+ 00022404  0x00005985 ifetch  0x00000002 , 0x00000006 
+ 00022405  0x00005986 isub  0x00000002 , 0x0000003e 
+ 00022406  0x00005987 rtn  0x00000005 
+ 00022407  0x00005988 ifetch  0x00000001 , 0x00000006 
+ 00022408  0x00005989 iadd  0x00000006 , 0x00000006 
+ 00022409  0x0000598a branch  0x0000577f 
+ 00022410  0x0000598f fetch  0x00000002 , 0x0000049c 
+ 00022411  0x00005990 branch  0x0000578e 
+ 00022412  0x00005993 bpatchx  0x00000074 , 0x0000402e 
+ 00022413  0x00005994 fetch  0x00000002 , 0x000044bc 
+ 00022414  0x00005996 iforce  0x00000006 
+ 00022415  0x00005997 copy  0x00000002 , 0x00000011 
+ 00022416  0x00005999 ifetch  0x00000002 , 0x00000006 
+ 00022417  0x0000599a branch  0x00005799 , 0x00000034 
+ 00022418  0x0000599b isub  0x00000011 , 0x0000003e 
+ 00022419  0x0000599c branch  0x0000579a , 0x00000005 
+ 00022420  0x0000599d ifetch  0x00000001 , 0x00000006 
+ 00022421  0x0000599e iadd  0x00000006 , 0x00000006 
+ 00022422  0x0000599f ifetch  0x00000001 , 0x00000006 
+ 00022423  0x000059a0 iadd  0x00000006 , 0x00000006 
+ 00022424  0x000059a1 branch  0x00005790 
+ 00022425  0x000059a3 branch  0x00007fef 
+ 00022426  0x000059a6 ifetch  0x00000001 , 0x00000006 
+ 00022427  0x000059a7 store  0x00000001 , 0x000004a2 
+ 00022428  0x000059a8 copy  0x0000003f , 0x00000039 
+ 00022429  0x000059a9 arg  0x000004a3 , 0x00000005 
+ 00022430  0x000059aa call  0x00007ef4 
+ 00022431  0x000059ab ifetch  0x00000001 , 0x00000006 
+ 00022432  0x000059ac store  0x00000001 , 0x000004b3 
+ 00022433  0x000059ad call  0x00007ea5 
+ 00022434  0x000059ae branch  0x00007ff1 
+ 00022435  0x000059b2 bpatchx  0x00000075 , 0x0000402e 
+ 00022436  0x000059b3 call  0x000057a6 
+ 00022437  0x000059b4 branch  0x000057b8 
+ 00022438  0x000059b7 arg  0x00002a00 , 0x00000002 
+ 00022439  0x000059b8 call  0x0000577c 
+ 00022440  0x000059b9 rtn  0x00000034 
+ 00022441  0x000059ba ifetch  0x00000001 , 0x00000006 
+ 00022442  0x000059bb copy  0x00000006 , 0x00000005 
+ 00022443  0x000059bc fetcht  0x00000001 , 0x000043af 
+ 00022444  0x000059bd copy  0x00000002 , 0x00000039 
+ 00022445  0x000059be isub  0x00000002 , 0x0000003e 
+ 00022446  0x000059bf nbranch  0x000057b5 , 0x00000002 
+ 00022447  0x000059c0 isub  0x00000002 , 0x00000002 
+ 00022448  0x000059c1 arg  0x000043b0 , 0x00000006 
+ 00022449  0x000059c2 call  0x00007f01 
+ 00022450  0x000059c3 copy  0x00000002 , 0x00000039 
+ 00022451  0x000059c4 ncall  0x000057f0 , 0x00000005 
+ 00022452  0x000059c5 rtn 
+ 00022453  0x000059c7 copy  0x0000003f , 0x00000039 
+ 00022454  0x000059c8 arg  0x000043b0 , 0x00000006 
+ 00022455  0x000059c9 branch  0x00007ef4 
+ 00022456  0x000059cd arg  0x0000438f , 0x00000013 
+ 00022457  0x000059ce arg  0x00004370 , 0x00000011 
+ 00022458  0x000059cf call  0x000057c5 
+ 00022459  0x000059d0 setarg  0x00000000 
+ 00022460  0x000059d1 setflag  0x00000028 , 0x00000000 , 0x0000003f 
+ 00022461  0x000059d2 store  0x00000001 , 0x00000a9a 
+ 00022462  0x000059d3 arg  0x000043af , 0x00000013 
+ 00022463  0x000059d4 arg  0x00004390 , 0x00000011 
+ 00022464  0x000059d5 call  0x000057c5 
+ 00022465  0x000059d6 rtn  0x00000028 
+ 00022466  0x000059d7 fetch  0x00000001 , 0x00000a9a 
+ 00022467  0x000059d8 branch  0x00002a8c , 0x00000034 
+ 00022468  0x000059d9 rtn 
+ 00022469  0x000059dd bpatchx  0x00000076 , 0x0000402e 
+ 00022470  0x000059de call  0x00007fe7 
+ 00022471  0x000059df call  0x00007eda 
+ 00022472  0x000059e0 arg  0x00000000 , 0x00000012 
+ 00022473  0x000059e1 arg  0x00000ac3 , 0x00000005 
+ 00022474  0x000059e2 call  0x000057df 
+ 00022475  0x000059e3 fetch  0x00000001 , 0x000043af 
+ 00022476  0x000059e4 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00022477  0x000059e5 iadd  0x00000012 , 0x00000011 
+ 00022478  0x000059e6 increase  0x00000002 , 0x00000011 
+ 00022479  0x000059e7 sub  0x00000011 , 0x0000001f , 0x0000003e 
+ 00022480  0x000059e8 nbranch  0x000057dd , 0x00000002 
+ 00022481  0x000059e9 istoret  0x00000001 , 0x00000005 
+ 00022482  0x000059ea arg  0x00000009 , 0x00000002 
+ 00022483  0x000059eb istoret  0x00000001 , 0x00000005 
+ 00022484  0x000059ec iforce  0x00000039 
+ 00022485  0x000059ed call  0x00007ef4 
+ 00022486  0x000059ee copy  0x00000011 , 0x00000012 
+ 00022487  0x000059f0 deposit  0x00000012 
+ 00022488  0x000059f1 store  0x00000001 , 0x00000ac2 
+ 00022489  0x000059f2 arg  0x00000ac2 , 0x00000006 
+ 00022490  0x000059f3 setarg  0xffffffe0 
+ 00022491  0x000059f4 iadd  0x00000013 , 0x00000005 
+ 00022492  0x000059f5 branch  0x00007ebd 
+ 00022493  0x000059f8 call  0x00007fe9 
+ 00022494  0x000059f9 branch  0x000057d7 
+ 00022495  0x000059fc ifetch  0x00000001 , 0x00000011 
+ 00022496  0x000059fd rtn  0x00000034 
+ 00022497  0x000059fe pincrease  0x00000001 
+ 00022498  0x000059ff ifetcht  0x00000001 , 0x00000006 
+ 00022499  0x00005a00 sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00022500  0x00005a01 branch  0x000057ee , 0x00000005 
+ 00022501  0x00005a02 iadd  0x00000012 , 0x00000012 
+ 00022502  0x00005a03 copy  0x00000011 , 0x00000006 
+ 00022503  0x00005a04 iforce  0x00000039 
+ 00022504  0x00005a05 call  0x00007ef4 
+ 00022505  0x00005a06 copy  0x00000006 , 0x00000011 
+ 00022506  0x00005a08 deposit  0x00000011 
+ 00022507  0x00005a09 isub  0x00000013 , 0x0000003e 
+ 00022508  0x00005a0a rtn  0x00000002 
+ 00022509  0x00005a0b branch  0x000057df 
+ 00022510  0x00005a0e iadd  0x00000011 , 0x00000011 
+ 00022511  0x00005a0f branch  0x000057ea 
+ 00022512  0x00005a13 setarg  0x00000020 
+ 00022513  0x00005a14 istore  0x00000001 , 0x00000005 
+ 00022514  0x00005a15 loop  0x000057f0 
+ 00022515  0x00005a16 rtn 
+ 00022516  0x00005a1a bpatchx  0x00000077 , 0x0000402e 
+ 00022517  0x00005a1b disable  0x0000002b 
+ 00022518  0x00005a1c branch  0x000057f8 , 0x0000002e 
+ 00022519  0x00005a1d nbranch  0x00005806 , 0x0000002d 
+ 00022520  0x00005a1f call  0x00002bcb 
+ 00022521  0x00005a20 fetch  0x00000002 , 0x000040c1 
+ 00022522  0x00005a21 store  0x00000002 , 0x0000044d 
+ 00022523  0x00005a23 nbranch  0x00002bde , 0x0000002d 
+ 00022524  0x00005a24 bmark1  0x0000000f , 0x00002bde 
+ 00022525  0x00005a26 fetch  0x00000001 , 0x0000450b 
+ 00022526  0x00005a27 nbranch  0x00002bde , 0x00000034 
+ 00022527  0x00005a28 fetch  0x00000001 , 0x000043dd 
+ 00022528  0x00005a29 nbranch  0x00002bde , 0x00000034 
+ 00022529  0x00005a2b fetch  0x00000001 , 0x000044e9 
+ 00022530  0x00005a2c bbit1  0x00000005 , 0x00002bde 
+ 00022531  0x00005a2e fetch  0x00000001 , 0x0000043f 
+ 00022532  0x00005a2f bbit1  0x00000005 , 0x00002bde 
+ 00022533  0x00005a30 branch  0x00002bc0 
+ 00022534  0x00005a33 fetcht  0x00000002 , 0x000040c1 
+ 00022535  0x00005a34 rshift  0x00000002 , 0x00000002 
+ 00022536  0x00005a35 fetch  0x00000002 , 0x0000044d 
+ 00022537  0x00005a36 iadd  0x00000002 , 0x0000003f 
+ 00022538  0x00005a37 store  0x00000002 , 0x0000044d 
+ 00022539  0x00005a38 branch  0x00002bd6 
+ 00022540  0x00005a3c arg  0x00000000 , 0x00000007 
+ 00022541  0x00005a3d branch  0x00005824 
+ 00022542  0x00005a40 arg  0x00000000 , 0x00000007 
+ 00022543  0x00005a41 branch  0x00005828 
+ 00022544  0x00005a44 arg  0x00000001 , 0x00000007 
+ 00022545  0x00005a45 branch  0x00005824 
+ 00022546  0x00005a48 arg  0x00000001 , 0x00000007 
+ 00022547  0x00005a49 branch  0x00005828 
+ 00022548  0x00005a4c arg  0x00000002 , 0x00000007 
+ 00022549  0x00005a4d branch  0x00005824 
+ 00022550  0x00005a50 arg  0x00000002 , 0x00000007 
+ 00022551  0x00005a51 branch  0x00005828 
+ 00022552  0x00005a54 arg  0x00000003 , 0x00000007 
+ 00022553  0x00005a55 branch  0x00005824 
+ 00022554  0x00005a58 arg  0x00000003 , 0x00000007 
+ 00022555  0x00005a59 branch  0x00005828 
+ 00022556  0x00005a5c arg  0x00000004 , 0x00000007 
+ 00022557  0x00005a5d branch  0x00005824 
+ 00022558  0x00005a60 arg  0x00000004 , 0x00000007 
+ 00022559  0x00005a61 branch  0x00005828 
+ 00022560  0x00005a64 arg  0x00000005 , 0x00000007 
+ 00022561  0x00005a65 branch  0x00005824 
+ 00022562  0x00005a68 arg  0x00000005 , 0x00000007 
+ 00022563  0x00005a69 branch  0x00005828 
+ 00022564  0x00005a6d fetch  0x00000001 , 0x000044e9 
+ 00022565  0x00005a6e qset1  0x0000003f 
+ 00022566  0x00005a6f store  0x00000001 , 0x000044e9 
+ 00022567  0x00005a70 rtn 
+ 00022568  0x00005a73 fetch  0x00000001 , 0x000044e9 
+ 00022569  0x00005a74 qset0  0x0000003f 
+ 00022570  0x00005a75 store  0x00000001 , 0x000044e9 
+ 00022571  0x00005a76 rtn 
+ 00022572  0x00005a79 setarg  0x00112233 
+ 00022573  0x00005a7a store  0x00000003 , 0x000044ea 
+ 00022574  0x00005a7b setarg  0x00445566 
+ 00022575  0x00005a7c istore  0x00000003 , 0x00000005 
+ 00022576  0x00005a7d setarg  0x00778899 
+ 00022577  0x00005a7e istore  0x00000003 , 0x00000005 
+ 00022578  0x00005a7f setarg  0x00001122 
+ 00022579  0x00005a80 istore  0x00000003 , 0x00000005 
+ 00022580  0x00005a81 setarg  0x00334455 
+ 00022581  0x00005a82 istore  0x00000003 , 0x00000005 
+ 00022582  0x00005a83 setarg  0x00000066 
+ 00022583  0x00005a84 istore  0x00000001 , 0x00000005 
+ 00022584  0x00005a85 rtn 
+ 00022585  0x00005a89 setarg  0x01000302 
+ 00022586  0x00005a8a store  0x00000004 , 0x00004453 
+ 00022587  0x00005a8b setarg  0x00010010 
+ 00022588  0x00005a8c store  0x00000003 , 0x00004457 
+ 00022589  0x00005a8d jam  0x00000001 , 0x000044c6 
+ 00022590  0x00005a8e rtn 
+ 00022591  0x00005a93 arg  0x00000000 , 0x00000011 
+ 00022592  0x00005a94 arg  0x00000001 , 0x00000001 
+ 00022593  0x00005a95 branch  0x00005850 
+ 00022594  0x00005a9a arg  0x00000003 , 0x00000001 
+ 00022595  0x00005a9b call  0x00005850 
+ 00022596  0x00005a9c copy  0x00000012 , 0x0000003f 
+ 00022597  0x00005a9d istore  0x00000001 , 0x00000005 
+ 00022598  0x00005a9e rtn 
+ 00022599  0x00005aa3 force  0x00000002 , 0x00000001 
+ 00022600  0x00005aa4 increase  0x00000004 , 0x00000011 
+ 00022601  0x00005aa5 call  0x00005850 
+ 00022602  0x00005aa6 increase  0xfffffffc , 0x00000011 
+ 00022603  0x00005aa7 copy  0x00000011 , 0x0000003f 
+ 00022604  0x00005aa8 istore  0x00000002 , 0x00000005 
+ 00022605  0x00005aa9 copy  0x00000012 , 0x0000003f 
+ 00022606  0x00005aaa istore  0x00000002 , 0x00000005 
+ 00022607  0x00005aab rtn 
+ 00022608  0x00005ab0 sub  0x00000011 , 0x000000f0 , 0x0000003e 
+ 00022609  0x00005ab1 nbranch  0x00002a8c , 0x00000002 
+ 00022610  0x00005ab2 fetch  0x00000001 , 0x000044ff 
+ 00022611  0x00005ab3 arg  0x00000001 , 0x00000002 
+ 00022612  0x00005ab4 arg  0x00000004 , 0x00000039 
+ 00022613  0x00005ab6 iand  0x00000002 , 0x0000003e 
+ 00022614  0x00005ab7 branch  0x0000585a , 0x00000005 
+ 00022615  0x00005ab8 lshift  0x00000002 , 0x00000002 
+ 00022616  0x00005ab9 loop  0x00005855 
+ 00022617  0x00005aba branch  0x00002a8c 
+ 00022618  0x00005abc ixor  0x00000002 , 0x0000003f 
+ 00022619  0x00005abd store  0x00000001 , 0x000044ff 
+ 00022620  0x00005abe sub  0x00000039 , 0x00000004 , 0x0000003f 
+ 00022621  0x00005abf lshift4  0x0000003f , 0x0000003f 
+ 00022622  0x00005ac0 lshift4  0x0000003f , 0x0000003f 
+ 00022623  0x00005ac1 arg  0x00001800 , 0x00000002 
+ 00022624  0x00005ac2 iadd  0x00000002 , 0x00000002 
+ 00022625  0x00005ac4 arg  0x00000000 , 0x00000039 
+ 00022626  0x00005ac5 arg  0x00004500 , 0x00000006 
+ 00022627  0x00005ac7 ifetch  0x00000002 , 0x00000006 
+ 00022628  0x00005ac8 branch  0x00005869 , 0x00000034 
+ 00022629  0x00005ac9 copy  0x00000039 , 0x0000003f 
+ 00022630  0x00005aca increase  0x00000001 , 0x00000039 
+ 00022631  0x00005acb bne  0x00000004 , 0x00005863 
+ 00022632  0x00005acc branch  0x00002a8c 
+ 00022633  0x00005ad0 increase  0xfffffffe , 0x00000006 
+ 00022634  0x00005ad1 istoret  0x00000002 , 0x00000006 
+ 00022635  0x00005ad2 copy  0x00000002 , 0x00000005 
+ 00022636  0x00005ad3 copy  0x00000011 , 0x0000003f 
+ 00022637  0x00005ad4 istore  0x00000001 , 0x00000005 
+ 00022638  0x00005ad5 setarg  0x00000000 
+ 00022639  0x00005ad6 istore  0x00000001 , 0x00000005 
+ 00022640  0x00005ad7 copy  0x00000001 , 0x0000003f 
+ 00022641  0x00005ad8 istore  0x00000001 , 0x00000005 
+ 00022642  0x00005ad9 rtn 
+ 00022643  0x00005ade fetch  0x00000002 , 0x00004500 
+ 00022644  0x00005adf copy  0x0000003f , 0x00000006 
+ 00022645  0x00005ae0 rtn 
+ 00022646  0x00005ae3 fetch  0x00000002 , 0x00004502 
+ 00022647  0x00005ae4 copy  0x0000003f , 0x00000006 
+ 00022648  0x00005ae5 rtn 
+ 00022649  0x00005ae8 call  0x0000587c 
+ 00022650  0x00005ae9 copy  0x0000003f , 0x00000006 
+ 00022651  0x00005aea rtn 
+ 00022652  0x00005aec fetch  0x00000002 , 0x00004506 
+ 00022653  0x00005aed nrtn  0x00000034 
+ 00022654  0x00005aee fetch  0x00000002 , 0x00004504 
+ 00022655  0x00005aef nrtn  0x00000034 
+ 00022656  0x00005af0 fetch  0x00000002 , 0x00004502 
+ 00022657  0x00005af1 nrtn  0x00000034 
+ 00022658  0x00005af2 fetch  0x00000002 , 0x00004500 
+ 00022659  0x00005af3 rtn 
+ 00022660  0x00005af6 call  0x00005873 
+ 00022661  0x00005af7 increase  0x00000003 , 0x00000006 
+ 00022662  0x00005af8 rtn 
+ 00022663  0x00005afb call  0x00005873 
+ 00022664  0x00005afc increase  0x00000007 , 0x00000006 
+ 00022665  0x00005afd rtn 
+ 00022666  0x00005b00 call  0x00005879 
+ 00022667  0x00005b01 increase  0x00000007 , 0x00000006 
+ 00022668  0x00005b02 rtn 
+ 00022669  0x00005b05 call  0x00005879 
+ 00022670  0x00005b06 increase  0x00000003 , 0x00000006 
+ 00022671  0x00005b07 rtn 
+ 00022672  0x00005b0c fetch  0x00000002 , 0x00004506 
+ 00022673  0x00005b0d rtn 
+ 00022674  0x00005b11 fetch  0x00000002 , 0x00004504 
+ 00022675  0x00005b12 rtn 
+ 00022676  0x00005b16 fetch  0x00000002 , 0x00004500 
+ 00022677  0x00005b17 rtn 
+ 00022678  0x00005b1b fetch  0x00000002 , 0x00004500 
+ 00022679  0x00005b1c arg  0x00001800 , 0x00000002 
+ 00022680  0x00005b1d isub  0x00000002 , 0x0000003f 
+ 00022681  0x00005b1e rshift4  0x0000003f , 0x0000003f 
+ 00022682  0x00005b1f rshift4  0x0000003f , 0x00000007 
+ 00022683  0x00005b20 fetch  0x00000001 , 0x000044ff 
+ 00022684  0x00005b21 qset0  0x0000003f 
+ 00022685  0x00005b22 store  0x00000001 , 0x000044ff 
+ 00022686  0x00005b23 arg  0x00000000 , 0x00000039 
+ 00022687  0x00005b25 lshift  0x00000039 , 0x0000003f 
+ 00022688  0x00005b26 arg  0x00004502 , 0x00000002 
+ 00022689  0x00005b27 iadd  0x00000002 , 0x00000002 
+ 00022690  0x00005b28 ifetch  0x00000002 , 0x00000002 
+ 00022691  0x00005b29 increase  0xfffffffe , 0x00000002 
+ 00022692  0x00005b2a istore  0x00000002 , 0x00000002 
+ 00022693  0x00005b2b copy  0x00000039 , 0x0000003f 
+ 00022694  0x00005b2c increase  0x00000001 , 0x00000039 
+ 00022695  0x00005b2d bne  0x00000003 , 0x0000589f 
+ 00022696  0x00005b2e setarg  0x00000000 
+ 00022697  0x00005b2f istore  0x00000002 , 0x00000002 
+ 00022698  0x00005b30 rtn 
+ 00022699  0x00005b37 ifetch  0x00000003 , 0x00000006 
+ 00022700  0x00005b38 store  0x00000003 , 0x00000477 
+ 00022701  0x00005b39 beq  0x00000002 , 0x000058c1 
+ 00022702  0x00005b3a beq  0x00000003 , 0x000058c9 
+ 00022703  0x00005b3b beq  0x00000004 , 0x000058cc 
+ 00022704  0x00005b3c beq  0x00000006 , 0x000058f2 
+ 00022705  0x00005b3d beq  0x00000008 , 0x0000593f 
+ 00022706  0x00005b3e beq  0x0000000a , 0x000059bc 
+ 00022707  0x00005b3f beq  0x0000000c , 0x000059e4 
+ 00022708  0x00005b40 beq  0x00000010 , 0x000059fa 
+ 00022709  0x00005b41 beq  0x00000012 , 0x00005a2f 
+ 00022710  0x00005b42 beq  0x00000016 , 0x00005a48 
+ 00022711  0x00005b43 beq  0x00000018 , 0x00005a5b 
+ 00022712  0x00005b44 beq  0x00000052 , 0x00005a60 
+ 00022713  0x00005b45 rtn 
+ 00022714  0x00005b49 force  0x00000003 , 0x00000011 
+ 00022715  0x00005b4a call  0x00005a82 
+ 00022716  0x00005b4b setarg  0x00000002 
+ 00022717  0x00005b4c istore  0x00000001 , 0x00000005 
+ 00022718  0x00005b4d fetch  0x00000002 , 0x000044a6 
+ 00022719  0x00005b4e istore  0x00000002 , 0x00000005 
+ 00022720  0x00005b4f rtn 
+ 00022721  0x00005b53 call  0x000058c9 
+ 00022722  0x00005b55 force  0x00000003 , 0x00000011 
+ 00022723  0x00005b56 call  0x00005a82 
+ 00022724  0x00005b57 setarg  0x00000003 
+ 00022725  0x00005b58 istore  0x00000001 , 0x00000005 
+ 00022726  0x00005b59 fetch  0x00000002 , 0x000044a6 
+ 00022727  0x00005b5a istore  0x00000002 , 0x00000005 
+ 00022728  0x00005b5b rtn 
+ 00022729  0x00005b5e rshift8  0x0000003f , 0x0000003f 
+ 00022730  0x00005b5f store  0x00000002 , 0x000044a8 
+ 00022731  0x00005b60 rtn 
+ 00022732  0x00005b63 call  0x00005ab1 
+ 00022733  0x00005b64 call  0x00007fe7 
+ 00022734  0x00005b65 branch  0x000058cf 
+ 00022735  0x00005b68 arg  0x00000003 , 0x0000000b 
+ 00022736  0x00005b69 call  0x00005756 
+ 00022737  0x00005b6b call  0x0000575f 
+ 00022738  0x00005b6c branch  0x000058f0 , 0x00000034 
+ 00022739  0x00005b6d nbranch  0x000058ed , 0x00000002 
+ 00022740  0x00005b6e increase  0xfffffffe , 0x00000006 
+ 00022741  0x00005b6f call  0x00007ea5 
+ 00022742  0x00005b70 call  0x00007e9c 
+ 00022743  0x00005b71 nbranch  0x000058e1 , 0x00000028 
+ 00022744  0x00005b72 call  0x00007e85 
+ 00022745  0x00005b73 call  0x00007fe9 
+ 00022746  0x00005b74 force  0x00000014 , 0x00000011 
+ 00022747  0x00005b75 call  0x00005a82 
+ 00022748  0x00005b76 call  0x00007e95 
+ 00022749  0x00005b77 setarg  0x00000005 
+ 00022750  0x00005b78 istore  0x00000001 , 0x00000005 
+ 00022751  0x00005b79 setarg  0x00000001 
+ 00022752  0x00005b7a istore  0x00000001 , 0x00000005 
+ 00022753  0x00005b7c call  0x00007e9f 
+ 00022754  0x00005b7d ifetch  0x00000002 , 0x00000006 
+ 00022755  0x00005b7e istore  0x00000002 , 0x00000005 
+ 00022756  0x00005b7f ifetch  0x00000001 , 0x00000006 
+ 00022757  0x00005b80 copy  0x0000003f , 0x00000039 
+ 00022758  0x00005b81 call  0x00007f01 
+ 00022759  0x00005b82 call  0x00007ea2 
+ 00022760  0x00005b83 increase  0xffffffff , 0x0000000b 
+ 00022761  0x00005b84 branch  0x000058f0 , 0x00000005 
+ 00022762  0x00005b86 ifetch  0x00000001 , 0x00000006 
+ 00022763  0x00005b87 iadd  0x00000006 , 0x00000006 
+ 00022764  0x00005b88 branch  0x000058d1 
+ 00022765  0x00005b8a ifetch  0x00000001 , 0x00000006 
+ 00022766  0x00005b8b iadd  0x00000006 , 0x00000006 
+ 00022767  0x00005b8c branch  0x000058ea 
+ 00022768  0x00005b8e branch  0x00005a76 , 0x00000028 
+ 00022769  0x00005b8f branch  0x00005aa5 
+ 00022770  0x00005b93 call  0x00005ab1 
+ 00022771  0x00005b94 ifetch  0x00000002 , 0x00000006 
+ 00022772  0x00005b95 store  0x00000002 , 0x00004472 
+ 00022773  0x00005b96 call  0x00007ea5 
+ 00022774  0x00005b97 arg  0x0000445e , 0x00000005 
+ 00022775  0x00005b98 fetch  0x00000002 , 0x000044fc 
+ 00022776  0x00005b99 increase  0xfffffff9 , 0x0000003f 
+ 00022777  0x00005b9a call  0x000056db 
+ 00022778  0x00005b9b branch  0x00005905 
+ 00022779  0x00005b9f disable  0x00000028 
+ 00022780  0x00005ba0 fetcht  0x00000002 , 0x0000445a 
+ 00022781  0x00005ba1 fetch  0x00000002 , 0x0000445c 
+ 00022782  0x00005ba2 isub  0x00000002 , 0x0000003e 
+ 00022783  0x00005ba3 nbranch  0x00005902 , 0x00000002 
+ 00022784  0x00005ba4 deposit  0x00000002 
+ 00022785  0x00005ba5 rtnne  0x00000000 
+ 00022786  0x00005ba7 enable  0x00000028 
+ 00022787  0x00005ba8 jam  0x00000001 , 0x0000047a 
+ 00022788  0x00005ba9 branch  0x00005a77 
+ 00022789  0x00005bad call  0x000058fb 
+ 00022790  0x00005bae rtn  0x00000028 
+ 00022791  0x00005baf fetcht  0x00000002 , 0x00004472 
+ 00022792  0x00005bb0 setarg  0x00002800 
+ 00022793  0x00005bb1 isub  0x00000002 , 0x0000003e 
+ 00022794  0x00005bb2 branch  0x0000590c , 0x00000005 
+ 00022795  0x00005bb3 branch  0x00005a76 
+ 00022796  0x00005bb7 jam  0x00000000 , 0x000004b4 
+ 00022797  0x00005bb8 fetcht  0x00000002 , 0x0000445a 
+ 00022798  0x00005bb9 storet  0x00000002 , 0x00000aa2 
+ 00022799  0x00005bba call  0x0000578c 
+ 00022800  0x00005bbb nbranch  0x00005a76 , 0x00000034 
+ 00022801  0x00005bbd fetcht  0x00000002 , 0x00000aa2 
+ 00022802  0x00005bbe call  0x0000578c 
+ 00022803  0x00005bbf nbranch  0x00005925 , 0x00000034 
+ 00022804  0x00005bc0 copy  0x00000006 , 0x00000011 
+ 00022805  0x00005bc1 fetch  0x00000001 , 0x000004b3 
+ 00022806  0x00005bc2 copy  0x0000003f , 0x00000039 
+ 00022807  0x00005bc3 fetcht  0x00000001 , 0x0000445e 
+ 00022808  0x00005bc4 isub  0x00000002 , 0x0000003e 
+ 00022809  0x00005bc5 nbranch  0x00005921 , 0x00000005 
+ 00022810  0x00005bc6 arg  0x0000445f , 0x00000012 
+ 00022811  0x00005bc7 call  0x00007f88 
+ 00022812  0x00005bc9 branch  0x00005928 , 0x00000005 
+ 00022813  0x00005bcb fetch  0x00000002 , 0x000004a3 
+ 00022814  0x00005bcc fetcht  0x00000002 , 0x00004472 
+ 00022815  0x00005bcd isub  0x00000002 , 0x0000003e 
+ 00022816  0x00005bce branch  0x00005930 , 0x00000005 
+ 00022817  0x00005bd0 fetch  0x00000002 , 0x00000aa2 
+ 00022818  0x00005bd1 increase  0x00000001 , 0x0000003f 
+ 00022819  0x00005bd2 store  0x00000002 , 0x00000aa2 
+ 00022820  0x00005bd3 branch  0x00005911 
+ 00022821  0x00005bd6 fetch  0x00000001 , 0x000004b4 
+ 00022822  0x00005bd7 beq  0x00000001 , 0x00005930 
+ 00022823  0x00005bd8 branch  0x00005a76 
+ 00022824  0x00005bdc fetch  0x00000002 , 0x000004a3 
+ 00022825  0x00005bdd fetcht  0x00000002 , 0x00004472 
+ 00022826  0x00005bde isub  0x00000002 , 0x0000003e 
+ 00022827  0x00005bdf nbranch  0x00005921 , 0x00000005 
+ 00022828  0x00005be0 jam  0x00000001 , 0x000004b4 
+ 00022829  0x00005be2 fetcht  0x00000002 , 0x00000aa2 
+ 00022830  0x00005be3 storet  0x00000002 , 0x0000049e 
+ 00022831  0x00005be4 branch  0x00005921 
+ 00022832  0x00005be7 fetch  0x00000001 , 0x000004b4 
+ 00022833  0x00005be8 beq  0x00000000 , 0x00005921 
+ 00022834  0x00005be9 jam  0x00000002 , 0x000004b4 
+ 00022835  0x00005bea fetcht  0x00000002 , 0x00000aa2 
+ 00022836  0x00005beb increase  0xffffffff , 0x00000002 
+ 00022837  0x00005bec storet  0x00000002 , 0x000004a0 
+ 00022838  0x00005bef arg  0x00000005 , 0x00000011 
+ 00022839  0x00005bf0 call  0x00005a82 
+ 00022840  0x00005bf1 setarg  0x00000007 
+ 00022841  0x00005bf2 istore  0x00000001 , 0x00000005 
+ 00022842  0x00005bf3 fetch  0x00000002 , 0x0000049e 
+ 00022843  0x00005bf4 istore  0x00000002 , 0x00000005 
+ 00022844  0x00005bf5 fetch  0x00000002 , 0x000004a0 
+ 00022845  0x00005bf6 istore  0x00000002 , 0x00000005 
+ 00022846  0x00005bf7 rtn 
+ 00022847  0x00005bfc call  0x00005ab1 
+ 00022848  0x00005bfd call  0x000056df 
+ 00022849  0x00005bfe branch  0x00005942 
+ 00022850  0x00005c01 fetcht  0x00000002 , 0x0000445a 
+ 00022851  0x00005c02 storet  0x00000002 , 0x00000aa2 
+ 00022852  0x00005c03 call  0x00005756 
+ 00022853  0x00005c04 call  0x0000576d 
+ 00022854  0x00005c05 increase  0xfffffffe , 0x00000006 
+ 00022855  0x00005c06 copy  0x00000006 , 0x0000003f 
+ 00022856  0x00005c07 store  0x00000002 , 0x0000049c 
+ 00022857  0x00005c09 fetcht  0x00000002 , 0x00004472 
+ 00022858  0x00005c0a setarg  0x00002a00 
+ 00022859  0x00005c0b isub  0x00000002 , 0x0000003e 
+ 00022860  0x00005c0c branch  0x000059a8 , 0x00000005 
+ 00022861  0x00005c0d setarg  0x00002803 
+ 00022862  0x00005c0e isub  0x00000002 , 0x0000003e 
+ 00022863  0x00005c0f nbranch  0x00005990 , 0x00000005 
+ 00022864  0x00005c10 arg  0x00000002 , 0x0000000b 
+ 00022865  0x00005c12 call  0x00005a88 
+ 00022866  0x00005c13 nbranch  0x0000596d , 0x00000002 
+ 00022867  0x00005c14 fetcht  0x00000002 , 0x00000aa2 
+ 00022868  0x00005c15 call  0x0000578a 
+ 00022869  0x00005c16 beq  0x00000001 , 0x0000596d 
+ 00022870  0x00005c17 call  0x00005a94 
+ 00022871  0x00005c18 nbranch  0x0000596b , 0x00000005 
+ 00022872  0x00005c19 nbranch  0x0000596f , 0x00000028 
+ 00022873  0x00005c1a disable  0x00000028 
+ 00022874  0x00005c1b arg  0x00000014 , 0x00000011 
+ 00022875  0x00005c1c call  0x00005a82 
+ 00022876  0x00005c1d setarg  0x00000009 
+ 00022877  0x00005c1e istore  0x00000001 , 0x00000005 
+ 00022878  0x00005c1f copy  0x00000005 , 0x00000030 
+ 00022879  0x00005c20 increase  0x00000001 , 0x00000005 
+ 00022880  0x00005c22 call  0x0000597d 
+ 00022881  0x00005c23 call  0x00005a84 
+ 00022882  0x00005c24 call  0x0000578a 
+ 00022883  0x00005c25 call  0x00005984 
+ 00022884  0x00005c26 fetch  0x00000001 , 0x000004a2 
+ 00022885  0x00005c27 increase  0x00000005 , 0x0000003f 
+ 00022886  0x00005c28 istore  0x00000001 , 0x00000030 
+ 00022887  0x00005c29 fetch  0x00000001 , 0x000004a2 
+ 00022888  0x00005c2a beq  0x00000010 , 0x0000596d 
+ 00022889  0x00005c2b increase  0xffffffff , 0x0000000b 
+ 00022890  0x00005c2c branch  0x0000596d , 0x00000005 
+ 00022891  0x00005c2e call  0x00005a84 
+ 00022892  0x00005c2f branch  0x00005951 
+ 00022893  0x00005c31 branch  0x00005a76 , 0x00000028 
+ 00022894  0x00005c32 branch  0x00005aa5 
+ 00022895  0x00005c35 call  0x00005a97 
+ 00022896  0x00005c36 call  0x00005a84 
+ 00022897  0x00005c37 call  0x0000578a 
+ 00022898  0x00005c38 fetch  0x00000001 , 0x000004a2 
+ 00022899  0x00005c39 beq  0x00000010 , 0x0000596d 
+ 00022900  0x00005c3b call  0x00007e9c 
+ 00022901  0x00005c3c fetch  0x00000002 , 0x00000aa2 
+ 00022902  0x00005c3d increase  0xffffffff , 0x0000003f 
+ 00022903  0x00005c3e istore  0x00000002 , 0x00000005 
+ 00022904  0x00005c3f call  0x00005aa1 
+ 00022905  0x00005c40 call  0x00005984 
+ 00022906  0x00005c41 increase  0xffffffff , 0x0000000b 
+ 00022907  0x00005c42 branch  0x0000596d , 0x00000005 
+ 00022908  0x00005c43 branch  0x0000596b 
+ 00022909  0x00005c47 fetch  0x00000002 , 0x00000aa2 
+ 00022910  0x00005c48 istore  0x00000002 , 0x00000005 
+ 00022911  0x00005c4a fetch  0x00000001 , 0x000004b3 
+ 00022912  0x00005c4b copy  0x0000003f , 0x00000039 
+ 00022913  0x00005c4c call  0x00007e9f 
+ 00022914  0x00005c4d call  0x00007ef4 
+ 00022915  0x00005c4e branch  0x00007ea2 
+ 00022916  0x00005c50 call  0x00007e9c 
+ 00022917  0x00005c51 fetch  0x00000002 , 0x00000aa2 
+ 00022918  0x00005c52 istore  0x00000002 , 0x00000005 
+ 00022919  0x00005c53 call  0x00007ea2 
+ 00022920  0x00005c54 fetch  0x00000001 , 0x000004a2 
+ 00022921  0x00005c55 copy  0x0000003f , 0x00000039 
+ 00022922  0x00005c56 call  0x00007e9c 
+ 00022923  0x00005c57 call  0x00007e9f 
+ 00022924  0x00005c58 isub  0x00000039 , 0x00000006 
+ 00022925  0x00005c59 increase  0xffffffff , 0x00000006 
+ 00022926  0x00005c5a call  0x00007ef4 
+ 00022927  0x00005c5b branch  0x00007ea2 
+ 00022928  0x00005c60 fetcht  0x00000002 , 0x0000445a 
+ 00022929  0x00005c61 storet  0x00000002 , 0x00000aa2 
+ 00022930  0x00005c63 call  0x00005a88 
+ 00022931  0x00005c64 nbranch  0x00005a76 , 0x00000002 
+ 00022932  0x00005c65 call  0x0000578a 
+ 00022933  0x00005c66 beq  0x00000001 , 0x00005a76 
+ 00022934  0x00005c67 call  0x00005a94 
+ 00022935  0x00005c68 nbranch  0x000059a6 , 0x00000005 
+ 00022936  0x00005c6b arg  0x00000014 , 0x00000011 
+ 00022937  0x00005c6c call  0x00005a82 
+ 00022938  0x00005c6d setarg  0x00000009 
+ 00022939  0x00005c6e istore  0x00000001 , 0x00000005 
+ 00022940  0x00005c6f fetch  0x00000001 , 0x000004b3 
+ 00022941  0x00005c70 copy  0x0000003f , 0x00000039 
+ 00022942  0x00005c71 increase  0x00000002 , 0x0000003f 
+ 00022943  0x00005c72 istore  0x00000001 , 0x00000005 
+ 00022944  0x00005c73 fetch  0x00000002 , 0x00000aa2 
+ 00022945  0x00005c74 istore  0x00000002 , 0x00000005 
+ 00022946  0x00005c75 call  0x00007e9f 
+ 00022947  0x00005c76 call  0x00007ef4 
+ 00022948  0x00005c77 call  0x00007ea2 
+ 00022949  0x00005c78 branch  0x00005aa5 
+ 00022950  0x00005c7b call  0x00005a84 
+ 00022951  0x00005c7c branch  0x00005992 
+ 00022952  0x00005c80 arg  0x00002a00 , 0x00000002 
+ 00022953  0x00005c81 call  0x0000577c 
+ 00022954  0x00005c82 rtn  0x00000034 
+ 00022955  0x00005c83 increase  0xfffffffb , 0x00000006 
+ 00022956  0x00005c84 ifetch  0x00000002 , 0x00000006 
+ 00022957  0x00005c85 store  0x00000002 , 0x00000aa2 
+ 00022958  0x00005c86 arg  0x00000014 , 0x00000011 
+ 00022959  0x00005c87 call  0x00005a82 
+ 00022960  0x00005c88 setarg  0x00000009 
+ 00022961  0x00005c89 istore  0x00000001 , 0x00000005 
+ 00022962  0x00005c8a fetch  0x00000001 , 0x000043af 
+ 00022963  0x00005c8b copy  0x0000003f , 0x00000039 
+ 00022964  0x00005c8c increase  0x00000002 , 0x0000003f 
+ 00022965  0x00005c8d istore  0x00000001 , 0x00000005 
+ 00022966  0x00005c8e fetch  0x00000002 , 0x00000aa2 
+ 00022967  0x00005c8f istore  0x00000002 , 0x00000005 
+ 00022968  0x00005c90 arg  0x000043b0 , 0x00000006 
+ 00022969  0x00005c91 call  0x00007ef4 
+ 00022970  0x00005c92 call  0x00007ea2 
+ 00022971  0x00005c93 branch  0x00005aa5 
+ 00022972  0x00005c98 fetcht  0x00000002 , 0x00000478 
+ 00022973  0x00005c99 fetch  0x00000001 , 0x000044e9 
+ 00022974  0x00005c9a bbit1  0x00000003 , 0x000059dd 
+ 00022975  0x00005c9d call  0x0000576a 
+ 00022976  0x00005c9e branch  0x00005a76 , 0x00000034 
+ 00022977  0x00005c9f increase  0xfffffffe , 0x00000006 
+ 00022978  0x00005ca0 ifetch  0x00000002 , 0x00000006 
+ 00022979  0x00005ca1 arg  0x00002a00 , 0x00000002 
+ 00022980  0x00005ca2 isub  0x00000002 , 0x0000003e 
+ 00022981  0x00005ca3 branch  0x000059d3 , 0x00000005 
+ 00022982  0x00005ca4 ifetch  0x00000001 , 0x00000006 
+ 00022983  0x00005ca5 sub  0x0000003f , 0x00000016 , 0x0000003e 
+ 00022984  0x00005ca6 branch  0x000059ca , 0x00000002 
+ 00022985  0x00005ca7 force  0x00000016 , 0x0000003f 
+ 00022986  0x00005ca9 copy  0x0000003f , 0x00000013 
+ 00022987  0x00005caa call  0x00007ea5 
+ 00022988  0x00005cab add  0x00000013 , 0x00000001 , 0x00000011 
+ 00022989  0x00005cac call  0x00005a82 
+ 00022990  0x00005cad setarg  0x0000000b 
+ 00022991  0x00005cae istore  0x00000001 , 0x00000005 
+ 00022992  0x00005caf copy  0x00000013 , 0x00000039 
+ 00022993  0x00005cb0 call  0x00007e9f 
+ 00022994  0x00005cb1 branch  0x00007f01 
+ 00022995  0x00005cb4 call  0x00007ea5 
+ 00022996  0x00005cb5 fetch  0x00000001 , 0x000043af 
+ 00022997  0x00005cb6 add  0x0000003f , 0x00000001 , 0x00000011 
+ 00022998  0x00005cb7 call  0x00005a82 
+ 00022999  0x00005cb8 setarg  0x0000000b 
+ 00023000  0x00005cb9 istore  0x00000001 , 0x00000005 
+ 00023001  0x00005cba fetch  0x00000001 , 0x000043af 
+ 00023002  0x00005cbb copy  0x0000003f , 0x00000039 
+ 00023003  0x00005cbc arg  0x000043b0 , 0x00000006 
+ 00023004  0x00005cbd branch  0x00007f01 
+ 00023005  0x00005cc1 fetch  0x00000002 , 0x000044fa 
+ 00023006  0x00005cc2 isub  0x00000002 , 0x0000003e 
+ 00023007  0x00005cc3 nbranch  0x000059bf , 0x00000005 
+ 00023008  0x00005cc5 call  0x00005a42 
+ 00023009  0x00005cc6 nbranch  0x000059bf , 0x00000028 
+ 00023010  0x00005cc7 jam  0x00000005 , 0x0000047a 
+ 00023011  0x00005cc8 branch  0x00005a77 
+ 00023012  0x00005ccc ifetch  0x00000002 , 0x00000006 
+ 00023013  0x00005ccd store  0x00000002 , 0x0000445e 
+ 00023014  0x00005ccf arg  0x00000014 , 0x00000011 
+ 00023015  0x00005cd0 call  0x00005a82 
+ 00023016  0x00005cd1 setarg  0x0000000d 
+ 00023017  0x00005cd2 istore  0x00000001 , 0x00000005 
+ 00023018  0x00005cd3 fetch  0x00000002 , 0x0000445e 
+ 00023019  0x00005cd4 iforce  0x00000011 
+ 00023020  0x00005cd5 fetcht  0x00000002 , 0x00000478 
+ 00023021  0x00005cd6 call  0x0000576a 
+ 00023022  0x00005cd7 branch  0x00005a76 , 0x00000034 
+ 00023023  0x00005cd8 ifetch  0x00000001 , 0x00000006 
+ 00023024  0x00005cd9 isub  0x00000011 , 0x00000039 
+ 00023025  0x00005cda nbranch  0x00005a76 , 0x00000002 
+ 00023026  0x00005cdb sub  0x00000039 , 0x00000016 , 0x0000003e 
+ 00023027  0x00005cdc branch  0x000059f5 , 0x00000002 
+ 00023028  0x00005cdd force  0x00000016 , 0x00000039 
+ 00023029  0x00005cdf deposit  0x00000011 
+ 00023030  0x00005ce0 iadd  0x00000006 , 0x00000006 
+ 00023031  0x00005ce1 call  0x00007ef4 
+ 00023032  0x00005ce2 call  0x00007ea2 
+ 00023033  0x00005ce3 branch  0x00005aa5 
+ 00023034  0x00005ce7 call  0x00005ab1 
+ 00023035  0x00005ce8 call  0x000056d7 
+ 00023036  0x00005ce9 branch  0x000059fd 
+ 00023037  0x00005cef arg  0x00000002 , 0x0000000b 
+ 00023038  0x00005cf0 fetcht  0x00000002 , 0x0000445a 
+ 00023039  0x00005cf4 storet  0x00000002 , 0x00000aa2 
+ 00023040  0x00005cf5 call  0x00005756 
+ 00023041  0x00005cf6 call  0x0000576d 
+ 00023042  0x00005cf7 increase  0xfffffffe , 0x00000006 
+ 00023043  0x00005cf8 copy  0x00000006 , 0x0000003f 
+ 00023044  0x00005cf9 store  0x00000002 , 0x0000049c 
+ 00023045  0x00005cfb call  0x00005a88 
+ 00023046  0x00005cfc nbranch  0x00005a25 , 0x00000002 
+ 00023047  0x00005cfd fetcht  0x00000002 , 0x00000aa2 
+ 00023048  0x00005cfe call  0x0000578a 
+ 00023049  0x00005cff beq  0x00000001 , 0x00005a28 
+ 00023050  0x00005d01 call  0x00005a8c 
+ 00023051  0x00005d02 nbranch  0x00005a23 , 0x00000005 
+ 00023052  0x00005d03 copy  0x0000000b , 0x0000003f 
+ 00023053  0x00005d04 beq  0x00000000 , 0x00005a28 
+ 00023054  0x00005d05 nbranch  0x00005a19 , 0x00000028 
+ 00023055  0x00005d06 disable  0x00000028 
+ 00023056  0x00005d08 arg  0x00000014 , 0x00000011 
+ 00023057  0x00005d09 call  0x00005a82 
+ 00023058  0x00005d0a setarg  0x00000011 
+ 00023059  0x00005d0b istore  0x00000001 , 0x00000005 
+ 00023060  0x00005d0c fetch  0x00000001 , 0x000004b3 
+ 00023061  0x00005d0d increase  0x00000004 , 0x0000003f 
+ 00023062  0x00005d0e istore  0x00000001 , 0x00000005 
+ 00023063  0x00005d0f call  0x00007ea2 
+ 00023064  0x00005d10 branch  0x00005a1f 
+ 00023065  0x00005d12 fetch  0x00000001 , 0x000004b3 
+ 00023066  0x00005d13 beq  0x00000010 , 0x00005a28 
+ 00023067  0x00005d14 fetch  0x00000002 , 0x00000aa2 
+ 00023068  0x00005d15 increase  0xffffffff , 0x0000003f 
+ 00023069  0x00005d16 store  0x00000002 , 0x000004a0 
+ 00023070  0x00005d17 call  0x00005a9c 
+ 00023071  0x00005d19 fetch  0x00000002 , 0x00000aa2 
+ 00023072  0x00005d1a store  0x00000002 , 0x0000049e 
+ 00023073  0x00005d1b call  0x00005a97 
+ 00023074  0x00005d1c increase  0xffffffff , 0x0000000b 
+ 00023075  0x00005d1f call  0x00005a84 
+ 00023076  0x00005d20 branch  0x00005a05 
+ 00023077  0x00005d23 fetch  0x00000002 , 0x00000aa2 
+ 00023078  0x00005d24 store  0x00000002 , 0x000004a0 
+ 00023079  0x00005d25 branch  0x00005a2c 
+ 00023080  0x00005d27 fetch  0x00000002 , 0x00000aa2 
+ 00023081  0x00005d28 increase  0xffffffff , 0x0000003f 
+ 00023082  0x00005d29 store  0x00000002 , 0x000004a0 
+ 00023083  0x00005d2a branch  0x00005a2c 
+ 00023084  0x00005d2c branch  0x00005a76 , 0x00000028 
+ 00023085  0x00005d2d call  0x00005a9c 
+ 00023086  0x00005d2e branch  0x00005aa5 
+ 00023087  0x00005d34 copy  0x00000006 , 0x00000011 
+ 00023088  0x00005d35 fetch  0x00000002 , 0x000044fc 
+ 00023089  0x00005d36 add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023090  0x00005d37 call  0x000056e2 
+ 00023091  0x00005d39 fetch  0x00000001 , 0x000044e9 
+ 00023092  0x00005d3a bbit0  0x00000004 , 0x00005a3d 
+ 00023093  0x00005d3c fetcht  0x00000002 , 0x00000478 
+ 00023094  0x00005d3d fetch  0x00000002 , 0x000044fa 
+ 00023095  0x00005d3e isub  0x00000002 , 0x0000003e 
+ 00023096  0x00005d3f nbranch  0x00005a3d , 0x00000005 
+ 00023097  0x00005d40 call  0x00005a42 
+ 00023098  0x00005d41 nbranch  0x00005a3d , 0x00000028 
+ 00023099  0x00005d42 jam  0x00000005 , 0x0000047a 
+ 00023100  0x00005d43 branch  0x00005a77 
+ 00023101  0x00005d46 force  0x00000001 , 0x00000011 
+ 00023102  0x00005d47 call  0x00005a82 
+ 00023103  0x00005d48 setarg  0x00000013 
+ 00023104  0x00005d49 istore  0x00000001 , 0x00000005 
+ 00023105  0x00005d4a rtn 
+ 00023106  0x00005d4d call  0x00007fe9 
+ 00023107  0x00005d4e fetch  0x00000001 , 0x000044c6 
+ 00023108  0x00005d4f rtneq  0x00000000 
+ 00023109  0x00005d50 fetch  0x00000001 , 0x00004040 
+ 00023110  0x00005d51 rtnbit1  0x00000004 
+ 00023111  0x00005d52 branch  0x00007fe7 
+ 00023112  0x00005d56 add  0x00000006 , 0x00000002 , 0x00000011 
+ 00023113  0x00005d57 fetch  0x00000002 , 0x000044fc 
+ 00023114  0x00005d58 add  0x0000003f , 0xfffffffb , 0x00000012 
+ 00023115  0x00005d59 call  0x000056e2 
+ 00023116  0x00005d5a branch  0x00005a4d 
+ 00023117  0x00005d5e fetch  0x00000002 , 0x000044fc 
+ 00023118  0x00005d5f copy  0x0000003f , 0x00000011 
+ 00023119  0x00005d60 call  0x00005a82 
+ 00023120  0x00005d61 setarg  0x00000017 
+ 00023121  0x00005d62 istore  0x00000001 , 0x00000005 
+ 00023122  0x00005d63 fetch  0x00000002 , 0x00000478 
+ 00023123  0x00005d64 istore  0x00000002 , 0x00000005 
+ 00023124  0x00005d65 fetch  0x00000002 , 0x000044fc 
+ 00023125  0x00005d66 add  0x0000003f , 0xfffffffb , 0x00000039 
+ 00023126  0x00005d67 fetch  0x00000002 , 0x0000450d 
+ 00023127  0x00005d68 add  0x0000003f , 0x00000007 , 0x00000006 
+ 00023128  0x00005d69 ifetch  0x00000002 , 0x00000006 
+ 00023129  0x00005d6a istore  0x00000002 , 0x00000005 
+ 00023130  0x00005d6b branch  0x00007ef4 
+ 00023131  0x00005d72 force  0x00000001 , 0x00000011 
+ 00023132  0x00005d73 call  0x00005a82 
+ 00023133  0x00005d74 setarg  0x00000019 
+ 00023134  0x00005d75 istore  0x00000001 , 0x00000005 
+ 00023135  0x00005d76 rtn 
+ 00023136  0x00005d7b copy  0x00000006 , 0x00000011 
+ 00023137  0x00005d7c fetch  0x00000002 , 0x000044fc 
+ 00023138  0x00005d7d add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023139  0x00005d7e branch  0x000056e2 
+ 00023140  0x00005d84 copy  0x00000002 , 0x00000013 
+ 00023141  0x00005d85 increase  0x00000003 , 0x00000011 
+ 00023142  0x00005d86 call  0x00005a82 
+ 00023143  0x00005d87 increase  0xfffffffd , 0x00000011 
+ 00023144  0x00005d88 setarg  0x0000001b 
+ 00023145  0x00005d89 istore  0x00000001 , 0x00000005 
+ 00023146  0x00005d8a copy  0x00000013 , 0x00000002 
+ 00023147  0x00005d8b istoret  0x00000002 , 0x00000005 
+ 00023148  0x00005d8c rtn 
+ 00023149  0x00005d90 copy  0x00000002 , 0x00000013 
+ 00023150  0x00005d91 increase  0x00000003 , 0x00000011 
+ 00023151  0x00005d92 call  0x00005a82 
+ 00023152  0x00005d93 increase  0xfffffffd , 0x00000011 
+ 00023153  0x00005d94 setarg  0x0000001d 
+ 00023154  0x00005d95 istore  0x00000001 , 0x00000005 
+ 00023155  0x00005d96 copy  0x00000013 , 0x00000002 
+ 00023156  0x00005d97 istoret  0x00000002 , 0x00000005 
+ 00023157  0x00005d98 rtn 
+ 00023158  0x00005d9e jam  0x0000000a , 0x0000047a 
+ 00023159  0x00005da0 force  0x00000005 , 0x00000011 
+ 00023160  0x00005da1 call  0x00005a82 
+ 00023161  0x00005da2 setarg  0x00000001 
+ 00023162  0x00005da3 istore  0x00000001 , 0x00000005 
+ 00023163  0x00005da4 fetch  0x00000001 , 0x00000477 
+ 00023164  0x00005da5 istore  0x00000001 , 0x00000005 
+ 00023165  0x00005da6 fetch  0x00000002 , 0x00000478 
+ 00023166  0x00005da7 istore  0x00000002 , 0x00000005 
+ 00023167  0x00005da8 fetch  0x00000001 , 0x0000047a 
+ 00023168  0x00005da9 istore  0x00000001 , 0x00000005 
+ 00023169  0x00005daa rtn 
+ 00023170  0x00005dae force  0x00000004 , 0x00000012 
+ 00023171  0x00005daf branch  0x00005847 
+ 00023172  0x00005db3 fetcht  0x00000002 , 0x00000aa2 
+ 00023173  0x00005db4 increase  0x00000001 , 0x00000002 
+ 00023174  0x00005db5 storet  0x00000002 , 0x00000aa2 
+ 00023175  0x00005db6 rtn 
+ 00023176  0x00005db9 fetcht  0x00000002 , 0x00000aa2 
+ 00023177  0x00005dba fetch  0x00000002 , 0x0000445c 
+ 00023178  0x00005dbb isub  0x00000002 , 0x0000003e 
+ 00023179  0x00005dbc rtn 
+ 00023180  0x00005dc0 fetcht  0x00000001 , 0x0000445e 
+ 00023181  0x00005dc1 arg  0x0000445f , 0x00000011 
+ 00023182  0x00005dc3 fetch  0x00000001 , 0x000004a2 
+ 00023183  0x00005dc4 copy  0x0000003f , 0x00000039 
+ 00023184  0x00005dc5 isub  0x00000002 , 0x0000003e 
+ 00023185  0x00005dc6 nrtn  0x00000005 
+ 00023186  0x00005dc7 arg  0x000004a3 , 0x00000012 
+ 00023187  0x00005dc8 branch  0x00007f88 
+ 00023188  0x00005dcb fetcht  0x00000001 , 0x00004471 
+ 00023189  0x00005dcc arg  0x00004472 , 0x00000011 
+ 00023190  0x00005dcd branch  0x00005a8e 
+ 00023191  0x00005dd1 fetch  0x00000001 , 0x000004b3 
+ 00023192  0x00005dd2 store  0x00000001 , 0x00000101 
+ 00023193  0x00005dd3 copy  0x0000003f , 0x00000039 
+ 00023194  0x00005dd4 call  0x00007e9f 
+ 00023195  0x00005dd5 branch  0x00007ef4 
+ 00023196  0x00005dd9 call  0x00007e9c 
+ 00023197  0x00005dda fetch  0x00000002 , 0x0000049e 
+ 00023198  0x00005ddb istore  0x00000002 , 0x00000005 
+ 00023199  0x00005ddc fetch  0x00000002 , 0x000004a0 
+ 00023200  0x00005ddd istore  0x00000002 , 0x00000005 
+ 00023201  0x00005ddf fetch  0x00000001 , 0x00000101 
+ 00023202  0x00005de0 copy  0x0000003f , 0x00000039 
+ 00023203  0x00005de1 call  0x00007ef4 
+ 00023204  0x00005de2 branch  0x00007ea2 
+ 00023205  0x00005de7 call  0x00007e9c 
+ 00023206  0x00005de8 call  0x0000588a 
+ 00023207  0x00005de9 copy  0x00000005 , 0x0000003f 
+ 00023208  0x00005dea isub  0x00000006 , 0x00000011 
+ 00023209  0x00005deb call  0x0000588d 
+ 00023210  0x00005dec copy  0x00000011 , 0x0000003f 
+ 00023211  0x00005ded istore  0x00000002 , 0x00000006 
+ 00023212  0x00005dee increase  0x00000004 , 0x00000011 
+ 00023213  0x00005def call  0x00005879 
+ 00023214  0x00005df0 copy  0x00000011 , 0x0000003f 
+ 00023215  0x00005df1 istore  0x00000001 , 0x00000006 
+ 00023216  0x00005df2 rtn 
+ 00023217  0x00005df6 rshift8  0x0000003f , 0x0000003f 
+ 00023218  0x00005df7 store  0x00000002 , 0x0000445a 
+ 00023219  0x00005df8 ifetch  0x00000002 , 0x00000006 
+ 00023220  0x00005df9 store  0x00000002 , 0x0000445c 
+ 00023221  0x00005dfa rtn 
+ 00023222  0x00005e00 ifetch  0x00000001 , 0x00000006 
+ 00023223  0x00005e01 ifetcht  0x00000001 , 0x00000006 
+ 00023224  0x00005e02 ifetcht  0x00000002 , 0x00000006 
+ 00023225  0x00005e03 beq  0x00000013 , 0x00005abb 
+ 00023226  0x00005e04 rtn 
+ 00023227  0x00005e06 ifetch  0x00000002 , 0x00000006 
+ 00023228  0x00005e07 store  0x00000002 , 0x00004509 
+ 00023229  0x00005e08 jam  0x00000040 , 0x00000a99 
+ 00023230  0x00005e09 branch  0x00007d86 
+ 00023231  0x00005e10 arg  0x0000000c , 0x00000011 
+ 00023232  0x00005e11 arg  0x00000012 , 0x00000013 
+ 00023233  0x00005e12 call  0x00005ac7 
+ 00023234  0x00005e13 setarg  0x00000008 
+ 00023235  0x00005e14 istore  0x00000002 , 0x00000005 
+ 00023236  0x00005e15 fetch  0x00000008 , 0x00004496 
+ 00023237  0x00005e16 istore  0x00000008 , 0x00000005 
+ 00023238  0x00005e17 rtn 
+ 00023239  0x00005e1c call  0x00005acf 
+ 00023240  0x00005e1d arg  0x00000005 , 0x00000012 
+ 00023241  0x00005e1e call  0x00005847 
+ 00023242  0x00005e1f copy  0x00000013 , 0x0000003f 
+ 00023243  0x00005e20 istore  0x00000001 , 0x00000005 
+ 00023244  0x00005e21 fetch  0x00000001 , 0x00004508 
+ 00023245  0x00005e22 istore  0x00000001 , 0x00000005 
+ 00023246  0x00005e23 rtn 
+ 00023247  0x00005e27 fetch  0x00000001 , 0x00004508 
+ 00023248  0x00005e29 pincrease  0x00000001 
+ 00023249  0x00005e2a store  0x00000001 , 0x00004508 
+ 00023250  0x00005e2b rtnne  0x00000000 
+ 00023251  0x00005e2e jam  0x00000001 , 0x00004508 
+ 00023252  0x00005e2f rtn 
+ 00023253  0x00005e35 fetch  0x00000001 , 0x000044c6 
+ 00023254  0x00005e36 beq  0x00000000 , 0x00005ae4 
+ 00023255  0x00005e37 beq  0x00000001 , 0x00005ae7 
+ 00023256  0x00005e38 beq  0x00000002 , 0x00005ae9 
+ 00023257  0x00005e39 beq  0x00000081 , 0x00005add 
+ 00023258  0x00005e3a beq  0x00000082 , 0x00005adf 
+ 00023259  0x00005e3b beq  0x00000083 , 0x00005ae2 
+ 00023260  0x00005e3c rtn 
+ 00023261  0x00005e3f jam  0x0000000d , 0x00004456 
+ 00023262  0x00005e40 branch  0x00005ae5 
+ 00023263  0x00005e42 jam  0x0000000d , 0x00004456 
+ 00023264  0x00005e43 jam  0x00000001 , 0x00004454 
+ 00023265  0x00005e44 rtn 
+ 00023266  0x00005e46 jam  0x0000000d , 0x00004456 
+ 00023267  0x00005e47 branch  0x00005aea 
+ 00023268  0x00005e49 jam  0x00000000 , 0x00004456 
+ 00023269  0x00005e4b jam  0x00000003 , 0x00004454 
+ 00023270  0x00005e4c rtn 
+ 00023271  0x00005e4e jam  0x00000005 , 0x00004456 
+ 00023272  0x00005e4f branch  0x00005ae5 
+ 00023273  0x00005e51 jam  0x00000005 , 0x00004456 
+ 00023274  0x00005e53 jam  0x00000000 , 0x00004454 
+ 00023275  0x00005e54 rtn 
+ 00023276  0x00005e58 fetch  0x00000001 , 0x00004456 
+ 00023277  0x00005e59 set1  0x00000003 , 0x0000003f 
+ 00023278  0x00005e5a store  0x00000001 , 0x00004456 
+ 00023279  0x00005e5b rtn 
+ 00023280  0x00005e5d fetch  0x00000001 , 0x00004456 
+ 00023281  0x00005e5e set0  0x00000003 , 0x0000003f 
+ 00023282  0x00005e5f store  0x00000001 , 0x00004456 
+ 00023283  0x00005e60 rtn 
+ 00023284  0x00005e63 ifetch  0x00000001 , 0x00000006 
+ 00023285  0x00005e64 beq  0x00000001 , 0x00005b09 
+ 00023286  0x00005e66 beq  0x00000003 , 0x00005b30 
+ 00023287  0x00005e67 beq  0x00000004 , 0x00005b4d 
+ 00023288  0x00005e68 beq  0x00000005 , 0x00005b5a 
+ 00023289  0x00005e69 beq  0x00000006 , 0x00005b80 
+ 00023290  0x00005e6a beq  0x00000007 , 0x00005bc4 
+ 00023291  0x00005e6b beq  0x00000008 , 0x00005baf 
+ 00023292  0x00005e6c beq  0x00000009 , 0x00005bc0 
+ 00023293  0x00005e6d beq  0x0000000a , 0x00005bc4 
+ 00023294  0x00005e6e beq  0x0000000b , 0x00005bc4 
+ 00023295  0x00005e6f beq  0x0000000c , 0x00005bc5 
+ 00023296  0x00005e70 beq  0x0000000d , 0x00005bca 
+ 00023297  0x00005e71 rtn 
+ 00023298  0x00005e76 force  0x00000002 , 0x00000011 
+ 00023299  0x00005e77 call  0x00005c62 
+ 00023300  0x00005e78 setarg  0x0000000b 
+ 00023301  0x00005e79 istore  0x00000001 , 0x00000005 
+ 00023302  0x00005e7a fetch  0x00000001 , 0x00004456 
+ 00023303  0x00005e7b istore  0x00000001 , 0x00000005 
+ 00023304  0x00005e7c rtn 
+ 00023305  0x00005e7f store  0x00000001 , 0x0000444c 
+ 00023306  0x00005e80 ifetch  0x00000006 , 0x00000006 
+ 00023307  0x00005e81 istore  0x00000006 , 0x00000005 
+ 00023308  0x00005e82 fetch  0x00000001 , 0x000044c6 
+ 00023309  0x00005e83 beq  0x00000000 , 0x00005b5f 
+ 00023310  0x00005e84 call  0x00005b2b 
+ 00023311  0x00005e85 call  0x00005b26 
+ 00023312  0x00005e86 jam  0x00000003 , 0x000044c4 
+ 00023313  0x00005e87 fetch  0x00000001 , 0x0000444d 
+ 00023314  0x00005e88 beq  0x00000000 , 0x00005b18 
+ 00023315  0x00005e89 beq  0x00000001 , 0x00005b18 
+ 00023316  0x00005e8a beq  0x00000003 , 0x00005b18 
+ 00023317  0x00005e8b fetch  0x00000001 , 0x000044c6 
+ 00023318  0x00005e8c beq  0x00000002 , 0x00005b1b 
+ 00023319  0x00005e8d rtneq  0x00000083 
+ 00023320  0x00005e8f arg  0x00000000 , 0x0000003f 
+ 00023321  0x00005e90 store  0x00000004 , 0x000044c7 
+ 00023322  0x00005e91 rtn 
+ 00023323  0x00005e94 fetch  0x00000001 , 0x000044e9 
+ 00023324  0x00005e95 bbit1  0x00000000 , 0x00005b24 
+ 00023325  0x00005e97 arg  0x000044c7 , 0x00000011 
+ 00023326  0x00005e98 copy  0x00000011 , 0x00000005 
+ 00023327  0x00005e99 arg  0x00000003 , 0x00000039 
+ 00023328  0x00005e9a call  0x0000630d 
+ 00023329  0x00005e9b fetch  0x00000002 , 0x000044c9 
+ 00023330  0x00005e9c and_into  0x00000007 , 0x0000003f 
+ 00023331  0x00005e9d store  0x00000002 , 0x000044c9 
+ 00023332  0x00005e9f jam  0x00000034 , 0x00000a99 
+ 00023333  0x00005ea0 branch  0x00007d86 
+ 00023334  0x00005ea3 fetch  0x00000001 , 0x0000444f 
+ 00023335  0x00005ea4 rtnbit1  0x00000003 
+ 00023336  0x00005ea5 fetch  0x00000001 , 0x000044c6 
+ 00023337  0x00005ea6 rtnbit0  0x00000007 
+ 00023338  0x00005ea7 branch  0x00003402 
+ 00023339  0x00005eaa force  0x00000007 , 0x00000011 
+ 00023340  0x00005eab call  0x00005c62 
+ 00023341  0x00005eac fetch  0x00000007 , 0x00004453 
+ 00023342  0x00005ead istore  0x00000007 , 0x00000005 
+ 00023343  0x00005eae rtn 
+ 00023344  0x00005eb2 copy  0x00000006 , 0x00000011 
+ 00023345  0x00005eb3 fetch  0x00000001 , 0x000044c6 
+ 00023346  0x00005eb4 beq  0x00000083 , 0x00005b37 
+ 00023347  0x00005eb5 copy  0x00000011 , 0x00000006 
+ 00023348  0x00005eb6 arg  0x0000442a , 0x00000005 
+ 00023349  0x00005eb7 call  0x00007ebf 
+ 00023350  0x00005eb8 branch  0x00005b3d 
+ 00023351  0x00005eba copy  0x00000011 , 0x00000006 
+ 00023352  0x00005ebb arg  0x0000442a , 0x00000005 
+ 00023353  0x00005ebc call  0x00007ebf 
+ 00023354  0x00005ebd jam  0x00000002 , 0x000044bf 
+ 00023355  0x00005ebe jam  0x00000008 , 0x000044c1 
+ 00023356  0x00005ebf rtn 
+ 00023357  0x00005ec3 fetch  0x00000001 , 0x000044c6 
+ 00023358  0x00005ec4 bbit1  0x00000007 , 0x00005b45 
+ 00023359  0x00005ec5 call  0x0000739c 
+ 00023360  0x00005ec6 force  0x00000011 , 0x00000011 
+ 00023361  0x00005ec7 call  0x00005c62 
+ 00023362  0x00005ec8 setarg  0x00000003 
+ 00023363  0x00005ec9 istore  0x00000001 , 0x00000005 
+ 00023364  0x00005eca branch  0x00007497 
+ 00023365  0x00005ece arg  0x0000443a , 0x00000005 
+ 00023366  0x00005ecf call  0x0000630c 
+ 00023367  0x00005ed0 call  0x000071c5 
+ 00023368  0x00005ed1 force  0x00000011 , 0x00000011 
+ 00023369  0x00005ed2 call  0x00005c62 
+ 00023370  0x00005ed3 setarg  0x00000003 
+ 00023371  0x00005ed4 istore  0x00000001 , 0x00000005 
+ 00023372  0x00005ed5 branch  0x00007201 
+ 00023373  0x00005eda copy  0x00000006 , 0x00000011 
+ 00023374  0x00005edb fetch  0x00000001 , 0x000044c6 
+ 00023375  0x00005edc bbit1  0x00000007 , 0x00005b61 
+ 00023376  0x00005edd copy  0x00000011 , 0x00000006 
+ 00023377  0x00005ede call  0x00007394 
+ 00023378  0x00005edf branch  0x00005b75 , 0x00000005 
+ 00023379  0x00005ee1 jam  0x00000004 , 0x0000047b 
+ 00023380  0x00005ee3 force  0x00000002 , 0x00000011 
+ 00023381  0x00005ee4 call  0x00005c62 
+ 00023382  0x00005ee5 setarg  0x00000005 
+ 00023383  0x00005ee6 istore  0x00000001 , 0x00000005 
+ 00023384  0x00005ee7 fetch  0x00000001 , 0x0000047b 
+ 00023385  0x00005ee8 istore  0x00000001 , 0x00000005 
+ 00023386  0x00005eea force  0x0000000a , 0x00000007 
+ 00023387  0x00005eeb call  0x00007f07 
+ 00023388  0x00005eec jam  0x00000000 , 0x000044c4 
+ 00023389  0x00005eed jam  0x00000030 , 0x00000a99 
+ 00023390  0x00005eee branch  0x00007d86 
+ 00023391  0x00005ef1 jam  0x00000005 , 0x0000047b 
+ 00023392  0x00005ef2 branch  0x00005b54 
+ 00023393  0x00005ef6 arg  0x0000042f , 0x00000005 
+ 00023394  0x00005ef7 copy  0x00000011 , 0x00000006 
+ 00023395  0x00005ef8 call  0x00007ebf 
+ 00023396  0x00005ef9 fetch  0x00000001 , 0x000044c6 
+ 00023397  0x00005efa beq  0x00000083 , 0x00005b6c 
+ 00023398  0x00005efb call  0x0000714f 
+ 00023399  0x00005efe call  0x00005b7a 
+ 00023400  0x00005eff fetch  0x00000001 , 0x000044c6 
+ 00023401  0x00005f00 rtnne  0x00000082 
+ 00023402  0x00005f01 jam  0x0000003b , 0x00000a99 
+ 00023403  0x00005f02 branch  0x00007d86 
+ 00023404  0x00005f05 call  0x000071ba 
+ 00023405  0x00005f06 arg  0x00000af2 , 0x00000005 
+ 00023406  0x00005f07 call  0x00007201 
+ 00023407  0x00005f08 arg  0x00000af2 , 0x00000011 
+ 00023408  0x00005f09 arg  0x0000442a , 0x00000012 
+ 00023409  0x00005f0a arg  0x00000010 , 0x00000039 
+ 00023410  0x00005f0b call  0x00007f88 
+ 00023411  0x00005f0c nbranch  0x00005b53 , 0x00000005 
+ 00023412  0x00005f0d branch  0x00005b7a 
+ 00023413  0x00005f10 call  0x00007390 
+ 00023414  0x00005f11 jam  0x00000031 , 0x00000a99 
+ 00023415  0x00005f12 call  0x00007d86 
+ 00023416  0x00005f13 jam  0x00000001 , 0x00004429 
+ 00023417  0x00005f14 jam  0x00000005 , 0x000044c4 
+ 00023418  0x00005f17 force  0x00000011 , 0x00000011 
+ 00023419  0x00005f18 call  0x00005c62 
+ 00023420  0x00005f19 setarg  0x00000004 
+ 00023421  0x00005f1a istore  0x00000001 , 0x00000005 
+ 00023422  0x00005f1b arg  0x0000443a , 0x00000006 
+ 00023423  0x00005f1c branch  0x00007ebf 
+ 00023424  0x00005f1f arg  0x0000041f , 0x00000005 
+ 00023425  0x00005f20 branch  0x00007ebf 
+ 00023426  0x00005f23 force  0x00000011 , 0x00000011 
+ 00023427  0x00005f24 call  0x00005c62 
+ 00023428  0x00005f25 setarg  0x00000006 
+ 00023429  0x00005f26 istore  0x00000001 , 0x00000005 
+ 00023430  0x00005f27 fetch  0x00000001 , 0x000044e9 
+ 00023431  0x00005f28 bbit1  0x00000001 , 0x00005b8a 
+ 00023432  0x00005f29 arg  0x00004419 , 0x00000006 
+ 00023433  0x00005f2a branch  0x00007ebf 
+ 00023434  0x00005f2d arg  0x000044ea , 0x00000006 
+ 00023435  0x00005f2e branch  0x00007ebf 
+ 00023436  0x00005f32 arg  0x000044cb , 0x00000005 
+ 00023437  0x00005f33 force  0x0000000a , 0x00000039 
+ 00023438  0x00005f34 call  0x0000630d 
+ 00023439  0x00005f35 force  0x0000000b , 0x00000011 
+ 00023440  0x00005f36 call  0x00005c62 
+ 00023441  0x00005f37 setarg  0x00000007 
+ 00023442  0x00005f38 istore  0x00000001 , 0x00000005 
+ 00023443  0x00005f39 fetch  0x00000002 , 0x000044cb 
+ 00023444  0x00005f3a istore  0x00000002 , 0x00000005 
+ 00023445  0x00005f3b fetch  0x00000008 , 0x000044cd 
+ 00023446  0x00005f3c istore  0x00000008 , 0x00000005 
+ 00023447  0x00005f3d rtn 
+ 00023448  0x00005f40 force  0x00000011 , 0x00000011 
+ 00023449  0x00005f41 call  0x00005c62 
+ 00023450  0x00005f42 setarg  0x00000008 
+ 00023451  0x00005f43 istore  0x00000001 , 0x00000005 
+ 00023452  0x00005f44 setarg  0x00000000 
+ 00023453  0x00005f45 istore  0x00000008 , 0x00000005 
+ 00023454  0x00005f46 istore  0x00000008 , 0x00000005 
+ 00023455  0x00005f47 rtn 
+ 00023456  0x00005f4b force  0x00000008 , 0x00000011 
+ 00023457  0x00005f4c call  0x00005c62 
+ 00023458  0x00005f4d setarg  0x00000009 
+ 00023459  0x00005f4e istore  0x00000001 , 0x00000005 
+ 00023460  0x00005f4f fetch  0x00000001 , 0x00004495 
+ 00023461  0x00005f50 istore  0x00000001 , 0x00000005 
+ 00023462  0x00005f51 fetch  0x00000006 , 0x000044a0 
+ 00023463  0x00005f52 istore  0x00000006 , 0x00000005 
+ 00023464  0x00005f53 rtn 
+ 00023465  0x00005f57 jam  0x00000008 , 0x0000047b 
+ 00023466  0x00005f58 branch  0x00005b54 
+ 00023467  0x00005f5b fetch  0x00000001 , 0x00004458 
+ 00023468  0x00005f5c fetcht  0x00000001 , 0x00004458 
+ 00023469  0x00005f5d iand  0x00000002 , 0x0000003f 
+ 00023470  0x00005f5e rtn 
+ 00023471  0x00005f61 arg  0x000044d5 , 0x00000005 
+ 00023472  0x00005f62 call  0x00007ebf 
+ 00023473  0x00005f63 call  0x00005bab 
+ 00023474  0x00005f64 isolate0  0x00000001 , 0x0000003f 
+ 00023475  0x00005f65 branch  0x00005ba9 , 0x00000001 
+ 00023476  0x00005f66 fetch  0x00000001 , 0x00004092 
+ 00023477  0x00005f67 rtnne  0x0000000a 
+ 00023478  0x00005f68 call  0x00005bb9 
+ 00023479  0x00005f69 nrtn  0x00000028 
+ 00023480  0x00005f6a branch  0x00003410 
+ 00023481  0x00005f6e call  0x00007fe9 
+ 00023482  0x00005f6f fetch  0x00000001 , 0x0000448e 
+ 00023483  0x00005f70 rtneq  0x00000000 
+ 00023484  0x00005f71 fetch  0x00000001 , 0x00000454 
+ 00023485  0x00005f72 compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00023486  0x00005f73 rtn  0x00000001 
+ 00023487  0x00005f74 branch  0x00007fe7 
+ 00023488  0x00005f77 call  0x00005bab 
+ 00023489  0x00005f78 isolate0  0x00000001 , 0x0000003f 
+ 00023490  0x00005f79 branch  0x00005ba9 , 0x00000001 
+ 00023491  0x00005f7a rtn 
+ 00023492  0x00005f7f rtn 
+ 00023493  0x00005f82 arg  0x000009be , 0x00000005 
+ 00023494  0x00005f83 call  0x00007eb3 
+ 00023495  0x00005f84 jam  0x00000002 , 0x000044bf 
+ 00023496  0x00005f85 jam  0x00000001 , 0x000044c1 
+ 00023497  0x00005f86 rtn 
+ 00023498  0x00005f89 arg  0x00000a6e , 0x00000005 
+ 00023499  0x00005f8a call  0x00007ebf 
+ 00023500  0x00005f8b jam  0x00000006 , 0x000044c1 
+ 00023501  0x00005f8c jam  0x00000002 , 0x000044bf 
+ 00023502  0x00005f8d rtn 
+ 00023503  0x00005f90 force  0x00000041 , 0x00000011 
+ 00023504  0x00005f91 call  0x00005c62 
+ 00023505  0x00005f92 setarg  0x0000000c 
+ 00023506  0x00005f93 istore  0x00000001 , 0x00000005 
+ 00023507  0x00005f94 arg  0x000045d2 , 0x00000006 
+ 00023508  0x00005f95 branch  0x00007eb3 
+ 00023509  0x00005f98 call  0x00007166 
+ 00023510  0x00005f99 force  0x00000011 , 0x00000011 
+ 00023511  0x00005f9a call  0x00005c62 
+ 00023512  0x00005f9b setarg  0x0000000d 
+ 00023513  0x00005f9c istore  0x00000001 , 0x00000005 
+ 00023514  0x00005f9d branch  0x00007201 
+ 00023515  0x00005fa1 fetch  0x00000001 , 0x000044c4 
+ 00023516  0x00005fa2 rtneq  0x000000ff 
+ 00023517  0x00005fa3 arg  0x00000003 , 0x00000002 
+ 00023518  0x00005fa4 isub  0x00000002 , 0x0000003e 
+ 00023519  0x00005fa5 nrtn  0x00000002 
+ 00023520  0x00005fa6 arg  0x0000000a , 0x00000007 
+ 00023521  0x00005fa7 call  0x00007f16 
+ 00023522  0x00005fa8 nrtn  0x00000034 
+ 00023523  0x00005fa9 branch  0x00005ba9 
+ 00023524  0x00005fac bpatchx  0x00000078 , 0x0000402f 
+ 00023525  0x00005fad fetch  0x00000001 , 0x000044c4 
+ 00023526  0x00005fae beq  0x00000000 , 0x00005bef 
+ 00023527  0x00005faf beq  0x00000001 , 0x00005bf5 
+ 00023528  0x00005fb0 beq  0x00000002 , 0x00005bef 
+ 00023529  0x00005fb1 beq  0x00000003 , 0x00005bf7 
+ 00023530  0x00005fb2 beq  0x00000005 , 0x00005bfb 
+ 00023531  0x00005fb3 beq  0x00000007 , 0x00005c07 
+ 00023532  0x00005fb4 beq  0x00000008 , 0x00005c09 
+ 00023533  0x00005fb5 beq  0x00000009 , 0x00005c10 
+ 00023534  0x00005fb6 rtn 
+ 00023535  0x00005fba fetch  0x00000001 , 0x000044c5 
+ 00023536  0x00005fbb rtnne  0x00000004 
+ 00023537  0x00005fbc jam  0x000000ff , 0x000044c5 
+ 00023538  0x00005fbd jam  0x000000ff , 0x000044c4 
+ 00023539  0x00005fbe jam  0x0000003f , 0x00000a99 
+ 00023540  0x00005fbf branch  0x00007d86 
+ 00023541  0x00005fc3 jam  0x00000002 , 0x000044c4 
+ 00023542  0x00005fc4 branch  0x00005b02 
+ 00023543  0x00005fc7 jam  0x00000004 , 0x000044c4 
+ 00023544  0x00005fc8 setarg  0x00017700 
+ 00023545  0x00005fc9 arg  0x0000000a , 0x00000007 
+ 00023546  0x00005fca branch  0x00007f08 
+ 00023547  0x00005fcd fetch  0x00000001 , 0x000044c5 
+ 00023548  0x00005fce beq  0x00000004 , 0x00005bfe 
+ 00023549  0x00005fcf rtn 
+ 00023550  0x00005fd2 jam  0x00000007 , 0x000044c4 
+ 00023551  0x00005fd3 jam  0x00000029 , 0x00000a99 
+ 00023552  0x00005fd4 call  0x00007d86 
+ 00023553  0x00005fd5 call  0x00005b82 
+ 00023554  0x00005fd6 fetch  0x00000001 , 0x00004092 
+ 00023555  0x00005fd7 rtnne  0x0000000a 
+ 00023556  0x00005fd8 call  0x00005bb9 
+ 00023557  0x00005fd9 rtn  0x00000028 
+ 00023558  0x00005fda branch  0x00003410 
+ 00023559  0x00005fde jam  0x00000008 , 0x000044c4 
+ 00023560  0x00005fdf branch  0x00005b8c 
+ 00023561  0x00005fe2 fetch  0x00000001 , 0x00004452 
+ 00023562  0x00005fe3 fetcht  0x00000001 , 0x00004459 
+ 00023563  0x00005fe4 iand  0x00000002 , 0x0000003f 
+ 00023564  0x00005fe5 isolate0  0x00000001 , 0x0000003f 
+ 00023565  0x00005fe6 branch  0x00005c12 , 0x00000001 
+ 00023566  0x00005fe7 jam  0x00000009 , 0x000044c4 
+ 00023567  0x00005fe8 branch  0x00005b98 
+ 00023568  0x00005feb call  0x00005ba0 
+ 00023569  0x00005fec branch  0x00005c12 
+ 00023570  0x00005ff0 force  0x0000000a , 0x00000007 
+ 00023571  0x00005ff1 call  0x00007f07 
+ 00023572  0x00005ff2 jam  0x000000ff , 0x000044c5 
+ 00023573  0x00005ff3 jam  0x000000ff , 0x000044c4 
+ 00023574  0x00005ff4 jam  0x0000003e , 0x00000a99 
+ 00023575  0x00005ff5 branch  0x00007d86 
+ 00023576  0x00005ffa bpatchx  0x00000079 , 0x0000402f 
+ 00023577  0x00005ffb fetch  0x00000001 , 0x000044c6 
+ 00023578  0x00005ffc rtnbit0  0x00000007 
+ 00023579  0x00005ffd fetch  0x00000001 , 0x000044bf 
+ 00023580  0x00005ffe rtnne  0x00000002 
+ 00023581  0x00005fff jam  0x00000000 , 0x000044bf 
+ 00023582  0x00006000 fetch  0x00000001 , 0x000044c1 
+ 00023583  0x00006001 beq  0x00000001 , 0x00005c58 
+ 00023584  0x00006002 beq  0x00000002 , 0x00005c5f 
+ 00023585  0x00006003 beq  0x00000003 , 0x00005c52 
+ 00023586  0x00006004 beq  0x00000006 , 0x00005c39 
+ 00023587  0x00006005 beq  0x00000007 , 0x00005c30 
+ 00023588  0x00006006 beq  0x00000008 , 0x00005c26 
+ 00023589  0x00006007 rtn 
+ 00023590  0x0000600b fetch  0x00000001 , 0x00004663 
+ 00023591  0x0000600c copy  0x0000003f , 0x00000007 
+ 00023592  0x0000600d increase  0x00000001 , 0x0000003f 
+ 00023593  0x0000600e store  0x00000001 , 0x00004663 
+ 00023594  0x0000600f fetch  0x00000004 , 0x000044c7 
+ 00023595  0x00006010 qisolate1  0x0000003f 
+ 00023596  0x00006011 setarg  0x00000080 
+ 00023597  0x00006012 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00023598  0x00006013 store  0x00000001 , 0x00004664 
+ 00023599  0x00006014 branch  0x00005c55 
+ 00023600  0x00006017 fetch  0x00000001 , 0x000044c2 
+ 00023601  0x00006018 jam  0x00000000 , 0x000044c2 
+ 00023602  0x00006019 beq  0x00000001 , 0x00005c35 
+ 00023603  0x0000601a jam  0x00000002 , 0x000044bf 
+ 00023604  0x0000601b rtn 
+ 00023605  0x0000601e jam  0x00000031 , 0x00000a99 
+ 00023606  0x0000601f call  0x00007d86 
+ 00023607  0x00006020 jam  0x00000005 , 0x000044c4 
+ 00023608  0x00006021 branch  0x00005bd5 
+ 00023609  0x00006024 fetch  0x00000001 , 0x000009b9 
+ 00023610  0x00006025 beq  0x00000003 , 0x00005c3d 
+ 00023611  0x00006026 jam  0x00000002 , 0x000044bf 
+ 00023612  0x00006027 rtn 
+ 00023613  0x0000602a call  0x0000718d 
+ 00023614  0x0000602e fetch  0x00000001 , 0x000044c6 
+ 00023615  0x0000602f beq  0x00000083 , 0x00005c41 
+ 00023616  0x00006030 call  0x00005b18 
+ 00023617  0x00006032 call  0x0000717a 
+ 00023618  0x00006033 arg  0x00000af2 , 0x00000011 
+ 00023619  0x00006034 arg  0x00000a6e , 0x00000012 
+ 00023620  0x00006035 arg  0x00000010 , 0x00000039 
+ 00023621  0x00006036 call  0x00007f88 
+ 00023622  0x00006037 branch  0x00005c49 , 0x00000005 
+ 00023623  0x00006039 jam  0x0000000b , 0x0000047b 
+ 00023624  0x0000603a branch  0x00005b54 
+ 00023625  0x0000603e call  0x00007595 
+ 00023626  0x0000603f nbranch  0x00005c47 , 0x00000005 
+ 00023627  0x00006040 jam  0x00000001 , 0x00004429 
+ 00023628  0x00006041 fetch  0x00000001 , 0x000044c6 
+ 00023629  0x00006042 beq  0x00000081 , 0x00005c35 
+ 00023630  0x00006043 beq  0x00000083 , 0x00005c35 
+ 00023631  0x00006044 jam  0x00000002 , 0x000044bf 
+ 00023632  0x00006045 jam  0x00000007 , 0x000044c1 
+ 00023633  0x00006046 rtn 
+ 00023634  0x00006049 fetch  0x00000001 , 0x000044c6 
+ 00023635  0x0000604a beq  0x00000083 , 0x00005c56 
+ 00023636  0x0000604b jam  0x00000000 , 0x00004664 
+ 00023637  0x0000604d branch  0x00005b3d 
+ 00023638  0x00006053 jam  0x00000000 , 0x00004663 
+ 00023639  0x00006054 branch  0x00005b1b 
+ 00023640  0x00006058 jam  0x00000002 , 0x000044bf 
+ 00023641  0x00006059 fetch  0x00000001 , 0x000044c3 
+ 00023642  0x0000605a beq  0x00000003 , 0x00005c5c 
+ 00023643  0x0000605c rtn 
+ 00023644  0x0000605f jam  0x00000002 , 0x000044c1 
+ 00023645  0x00006060 jam  0x00000000 , 0x000009b9 
+ 00023646  0x00006061 branch  0x00007a99 
+ 00023647  0x00006064 jam  0x00000002 , 0x000044bf 
+ 00023648  0x00006065 jam  0x00000003 , 0x000044c1 
+ 00023649  0x00006066 branch  0x00005bcf 
+ 00023650  0x0000606b force  0x00000006 , 0x00000012 
+ 00023651  0x0000606c branch  0x00005847 
+ 00023652  0x00006071 fetch  0x00000001 , 0x000002db 
+ 00023653  0x00006072 beq  0x00000000 , 0x00005c7b 
+ 00023654  0x00006073 beq  0x00000001 , 0x00005c83 
+ 00023655  0x00006074 beq  0x00000002 , 0x00005c8e 
+ 00023656  0x00006075 beq  0x00000003 , 0x00005caa 
+ 00023657  0x00006076 beq  0x00000004 , 0x00005ce1 
+ 00023658  0x00006077 beq  0x00000005 , 0x00005ce6 
+ 00023659  0x00006078 beq  0x00000006 , 0x00005cea 
+ 00023660  0x00006079 beq  0x00000007 , 0x00005cf5 
+ 00023661  0x0000607a beq  0x00000008 , 0x00005c99 
+ 00023662  0x0000607b beq  0x00000009 , 0x00005cf5 
+ 00023663  0x0000607c beq  0x0000000a , 0x00005cef 
+ 00023664  0x0000607d beq  0x0000000b , 0x00005cf5 
+ 00023665  0x0000607e beq  0x0000000c , 0x00005c9f 
+ 00023666  0x0000607f beq  0x0000000d , 0x00005cf5 
+ 00023667  0x00006080 beq  0x00000012 , 0x00005ca6 
+ 00023668  0x00006081 beq  0x00000013 , 0x00005cf5 
+ 00023669  0x00006082 arg  0x00000002 , 0x00000011 
+ 00023670  0x00006083 arg  0x00000007 , 0x00000012 
+ 00023671  0x00006084 call  0x00005842 
+ 00023672  0x00006085 fetch  0x00000001 , 0x000002db 
+ 00023673  0x00006086 istore  0x00000001 , 0x00000005 
+ 00023674  0x00006087 rtn 
+ 00023675  0x0000608b ifetch  0x00000009 , 0x00000006 
+ 00023676  0x0000608c store  0x00000009 , 0x000043d3 
+ 00023677  0x0000608d ifetch  0x00000002 , 0x00000006 
+ 00023678  0x0000608e store  0x00000002 , 0x0000045f 
+ 00023679  0x0000608f fetch  0x00000001 , 0x0000043f 
+ 00023680  0x00006090 set1  0x00000005 , 0x0000003f 
+ 00023681  0x00006091 store  0x00000001 , 0x0000043f 
+ 00023682  0x00006092 rtn 
+ 00023683  0x00006095 ifetch  0x00000005 , 0x00000006 
+ 00023684  0x00006096 store  0x00000005 , 0x000043ce 
+ 00023685  0x00006097 ifetch  0x00000002 , 0x00000006 
+ 00023686  0x00006098 store  0x00000002 , 0x0000045f 
+ 00023687  0x00006099 fetcht  0x00000002 , 0x00000459 
+ 00023688  0x0000609a isub  0x00000002 , 0x0000003e 
+ 00023689  0x0000609b nbranch  0x00005c8e , 0x00000002 
+ 00023690  0x0000609c fetch  0x00000001 , 0x0000043f 
+ 00023691  0x0000609d set1  0x00000006 , 0x0000003f 
+ 00023692  0x0000609e store  0x00000001 , 0x0000043f 
+ 00023693  0x0000609f rtn 
+ 00023694  0x000060a3 setarg  0x00000014 
+ 00023695  0x000060a4 store  0x00000002 , 0x0000046d 
+ 00023696  0x000060a5 store  0x00000002 , 0x000044ba 
+ 00023697  0x000060a6 rtn 
+ 00023698  0x000060a9 arg  0x00000013 , 0x00000013 
+ 00023699  0x000060ad arg  0x00000002 , 0x00000011 
+ 00023700  0x000060ae arg  0x00000002 , 0x00000012 
+ 00023701  0x000060af call  0x00005842 
+ 00023702  0x000060b0 copy  0x00000013 , 0x0000003f 
+ 00023703  0x000060b1 istore  0x00000001 , 0x00000005 
+ 00023704  0x000060b2 rtn 
+ 00023705  0x000060b7 arg  0x00000009 , 0x00000011 
+ 00023706  0x000060b8 arg  0x00000009 , 0x00000012 
+ 00023707  0x000060b9 call  0x00005842 
+ 00023708  0x000060ba setarg  0x00000001 
+ 00023709  0x000060bb istore  0x00000008 , 0x00000005 
+ 00023710  0x000060bc rtn 
+ 00023711  0x000060c0 rtn  0x00000029 
+ 00023712  0x000060c2 arg  0x00000006 , 0x00000011 
+ 00023713  0x000060c3 arg  0x0000000c , 0x00000012 
+ 00023714  0x000060c4 call  0x00005842 
+ 00023715  0x000060c5 fetch  0x00000005 , 0x00004510 
+ 00023716  0x000060c6 istore  0x00000005 , 0x00000005 
+ 00023717  0x000060c7 rtn 
+ 00023718  0x000060cb arg  0x00000013 , 0x00000012 
+ 00023719  0x000060cc branch  0x00005ca8 
+ 00023720  0x000060d0 arg  0x00000001 , 0x00000011 
+ 00023721  0x000060d1 branch  0x00005842 
+ 00023722  0x000060d5 ifetch  0x00000008 , 0x00000006 
+ 00023723  0x000060d6 store  0x00000008 , 0x000044cd 
+ 00023724  0x000060d7 ifetch  0x00000002 , 0x00000006 
+ 00023725  0x000060d8 store  0x00000002 , 0x000044cb 
+ 00023726  0x000060d9 ifetch  0x00000008 , 0x00000006 
+ 00023727  0x000060da store  0x00000008 , 0x000044aa 
+ 00023728  0x000060db ifetch  0x00000004 , 0x00000006 
+ 00023729  0x000060dc store  0x00000004 , 0x00004411 
+ 00023730  0x000060dd call  0x00005ccf 
+ 00023731  0x000060de bpatchx  0x0000007a , 0x0000402f 
+ 00023732  0x000060df fetch  0x00000001 , 0x000044c4 
+ 00023733  0x000060e0 beq  0x00000005 , 0x00005cbc 
+ 00023734  0x000060e1 fetch  0x00000001 , 0x000044e9 
+ 00023735  0x000060e2 bbit1  0x00000001 , 0x00005cbf 
+ 00023736  0x000060e3 fetch  0x00000001 , 0x00004217 
+ 00023737  0x000060e4 ncall  0x000067be , 0x00000034 
+ 00023738  0x000060e5 fetch  0x00000001 , 0x00004429 
+ 00023739  0x000060e6 beq  0x00000000 , 0x00005cc4 
+ 00023740  0x000060e8 jam  0x00000001 , 0x000044c5 
+ 00023741  0x000060e9 call  0x00005cdd 
+ 00023742  0x000060ea branch  0x000073a2 
+ 00023743  0x000060ed jam  0x00000001 , 0x00004429 
+ 00023744  0x000060ee arg  0x000044ea , 0x00000006 
+ 00023745  0x000060ef arg  0x00004419 , 0x00000005 
+ 00023746  0x000060f0 call  0x00007ebf 
+ 00023747  0x000060f1 branch  0x00005cbc 
+ 00023748  0x000060f5 bpatchx  0x0000007b , 0x0000402f 
+ 00023749  0x000060f6 jam  0x00000000 , 0x000044c5 
+ 00023750  0x000060f7 jam  0x00000000 , 0x000044c4 
+ 00023751  0x000060f8 jam  0x00000041 , 0x00000a99 
+ 00023752  0x000060f9 branch  0x00007d86 
+ 00023753  0x000060fc arg  0x00000002 , 0x00000011 
+ 00023754  0x000060fd arg  0x0000000d , 0x00000012 
+ 00023755  0x000060fe call  0x00005842 
+ 00023756  0x000060ff setarg  0x00000006 
+ 00023757  0x00006100 istore  0x00000001 , 0x00000005 
+ 00023758  0x00006101 rtn 
+ 00023759  0x00006104 arg  0x000044b2 , 0x00000005 
+ 00023760  0x00006105 force  0x00000008 , 0x00000039 
+ 00023761  0x00006106 call  0x0000630d 
+ 00023762  0x00006107 arg  0x00004415 , 0x00000005 
+ 00023763  0x00006108 force  0x00000004 , 0x00000039 
+ 00023764  0x00006109 call  0x0000630d 
+ 00023765  0x0000610a arg  0x0000000d , 0x00000011 
+ 00023766  0x0000610b arg  0x00000004 , 0x00000012 
+ 00023767  0x0000610c call  0x00005842 
+ 00023768  0x0000610d fetch  0x00000008 , 0x000044b2 
+ 00023769  0x0000610e istore  0x00000008 , 0x00000005 
+ 00023770  0x0000610f fetch  0x00000004 , 0x00004415 
+ 00023771  0x00006110 istore  0x00000004 , 0x00000005 
+ 00023772  0x00006111 rtn 
+ 00023773  0x00006114 arg  0x00000005 , 0x00000012 
+ 00023774  0x00006115 branch  0x00005ca8 
+ 00023775  0x00006118 arg  0x00000006 , 0x00000012 
+ 00023776  0x00006119 branch  0x00005ca8 
+ 00023777  0x0000611d ifetch  0x00000008 , 0x00000006 
+ 00023778  0x0000611e store  0x00000008 , 0x000044b2 
+ 00023779  0x0000611f ifetch  0x00000004 , 0x00000006 
+ 00023780  0x00006120 store  0x00000004 , 0x00004415 
+ 00023781  0x00006121 branch  0x000073a2 
+ 00023782  0x00006124 fetch  0x00000001 , 0x0000043f 
+ 00023783  0x00006125 set1  0x00000004 , 0x0000003f 
+ 00023784  0x00006126 store  0x00000001 , 0x0000043f 
+ 00023785  0x00006127 rtn 
+ 00023786  0x0000612a rtn  0x00000029 
+ 00023787  0x0000612b jam  0x00000032 , 0x00000a99 
+ 00023788  0x0000612c call  0x00007d86 
+ 00023789  0x0000612d jam  0x00000004 , 0x000044c5 
+ 00023790  0x0000612e branch  0x00005cdf 
+ 00023791  0x00006131 jam  0x00000002 , 0x000044c5 
+ 00023792  0x00006132 call  0x00005cf3 
+ 00023793  0x00006133 jam  0x00000033 , 0x00000a99 
+ 00023794  0x00006134 branch  0x00007d86 
+ 00023795  0x00006137 arg  0x0000000b , 0x00000012 
+ 00023796  0x00006138 branch  0x00005ca8 
+ 00023797  0x00006140 rtn 
+ 00023798  0x00006148 rtn  0x0000002b 
+ 00023799  0x0000614a bpatchx  0x0000007c , 0x0000402f 
+ 00023800  0x0000614b setarg  0x00000000 
+ 00023801  0x0000614c store  0x00000001 , 0x00000048 
+ 00023802  0x0000614d store  0x00000001 , 0x00000055 
+ 00023803  0x0000614e store  0x00000001 , 0x00000078 
+ 00023804  0x0000614f store  0x00000001 , 0x0000007c 
+ 00023805  0x00006150 store  0x00000001 , 0x00004158 
+ 00023806  0x00006151 store  0x00000001 , 0x000004d7 
+ 00023807  0x00006152 store  0x00000001 , 0x0000016d 
+ 00023808  0x00006153 store  0x00000001 , 0x000009b5 
+ 00023809  0x00006154 jam  0x00000000 , 0x0000455b 
+ 00023810  0x00006155 jam  0x00000000 , 0x00000229 
+ 00023811  0x00006156 jam  0x00000000 , 0x000004d8 
+ 00023812  0x00006158 jam  0x00000000 , 0x000009b5 
+ 00023813  0x00006159 jam  0x00000000 , 0x000009b4 
+ 00023814  0x0000615a jam  0x00000000 , 0x000004d1 
+ 00023815  0x0000615d rtn 
+ 00023816  0x00006160 bpatchx  0x0000007d , 0x0000402f 
+ 00023817  0x00006161 call  0x000062ff , 0x00000029 
+ 00023818  0x00006162 ncall  0x00006303 , 0x00000029 
+ 00023819  0x00006163 call  0x000062bc 
+ 00023820  0x00006164 nrtn  0x00000034 
+ 00023821  0x00006165 fetch  0x00000001 , 0x0000004c 
+ 00023822  0x00006166 rtnbit0  0x00000006 
+ 00023823  0x00006167 set0  0x00000006 , 0x0000003f 
+ 00023824  0x00006168 set0  0x00000001 , 0x00000000 
+ 00023825  0x00006169 store  0x00000001 , 0x0000004c 
+ 00023826  0x0000616a fetch  0x00000001 , 0x00000551 
+ 00023827  0x0000616b fetcht  0x00000001 , 0x0000004c 
+ 00023828  0x0000616c isolate1  0x00000000 , 0x0000003f 
+ 00023829  0x0000616d setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00023830  0x0000616e storet  0x00000001 , 0x0000004c 
+ 00023831  0x0000616f and_into  0x00000002 , 0x00000002 
+ 00023832  0x00006170 storet  0x00000001 , 0x0000007f 
+ 00023833  0x00006171 fetcht  0x00000001 , 0x0000004c 
+ 00023834  0x00006172 rshift  0x0000003f , 0x0000003f 
+ 00023835  0x00006173 store  0x00000001 , 0x0000007d 
+ 00023836  0x00006174 bpatchx  0x0000007e , 0x0000402f 
+ 00023837  0x00006175 fetch  0x00000001 , 0x0000007d 
+ 00023838  0x00006176 beq  0x0000007f , 0x00005d66 
+ 00023839  0x00006177 beq  0x00000003 , 0x00005db1 
+ 00023840  0x00006178 beq  0x00000004 , 0x00005dc2 
+ 00023841  0x00006179 beq  0x0000003c , 0x00005d59 
+ 00023842  0x0000617a beq  0x00000005 , 0x00005d55 
+ 00023843  0x0000617b beq  0x0000000f , 0x00005fa8 
+ 00023844  0x0000617c beq  0x00000010 , 0x00005e24 
+ 00023845  0x0000617d beq  0x00000023 , 0x00005e42 
+ 00023846  0x0000617e beq  0x00000039 , 0x00005fc1 
+ 00023847  0x0000617f beq  0x00000038 , 0x00005fbc 
+ 00023848  0x00006180 beq  0x00000031 , 0x00005e27 
+ 00023849  0x00006181 beq  0x00000037 , 0x00005eb0 
+ 00023850  0x00006182 beq  0x00000027 , 0x00005eac 
+ 00023851  0x00006183 beq  0x00000033 , 0x00005ea9 
+ 00023852  0x00006184 beq  0x00000025 , 0x00005eae 
+ 00023853  0x00006185 beq  0x00000026 , 0x00005e3e 
+ 00023854  0x00006186 beq  0x00000007 , 0x00005e36 
+ 00023855  0x00006187 beq  0x0000002d , 0x00005e2d 
+ 00023856  0x00006188 beq  0x0000002e , 0x00005e2e 
+ 00023857  0x00006189 beq  0x00000001 , 0x00005ea5 
+ 00023858  0x0000618a beq  0x00000002 , 0x00005e90 
+ 00023859  0x0000618b beq  0x00000028 , 0x00005fb3 
+ 00023860  0x0000618c beq  0x00000009 , 0x00005e86 
+ 00023861  0x0000618d beq  0x0000000b , 0x00005e5f 
+ 00023862  0x0000618e beq  0x00000008 , 0x00005e43 
+ 00023863  0x0000618f beq  0x0000000c , 0x00005e6a 
+ 00023864  0x00006190 beq  0x0000001f , 0x00005e3a 
+ 00023865  0x00006191 beq  0x00000020 , 0x00005e3c 
+ 00023866  0x00006192 beq  0x00000021 , 0x00005eca 
+ 00023867  0x00006193 beq  0x00000022 , 0x00005eca 
+ 00023868  0x00006194 beq  0x00000035 , 0x00005ecb 
+ 00023869  0x00006195 beq  0x00000036 , 0x00005ecc 
+ 00023870  0x00006196 beq  0x00000024 , 0x00005eca 
+ 00023871  0x00006197 beq  0x00000034 , 0x00005ecd 
+ 00023872  0x00006198 beq  0x00000017 , 0x00005ed6 
+ 00023873  0x00006199 beq  0x00000011 , 0x00005ef2 
+ 00023874  0x0000619a beq  0x00000012 , 0x00005ef6 
+ 00023875  0x0000619b beq  0x00000013 , 0x00005ef8 
+ 00023876  0x0000619c beq  0x0000000d , 0x00005f0a 
+ 00023877  0x0000619d beq  0x0000000e , 0x00005f0a 
+ 00023878  0x0000619e beq  0x0000002f , 0x00005eaa 
+ 00023879  0x0000619f beq  0x00000030 , 0x00005f0a 
+ 00023880  0x000061a0 beq  0x0000000a , 0x00005f0a 
+ 00023881  0x000061a1 beq  0x00000018 , 0x00005f0b 
+ 00023882  0x000061a2 beq  0x00000032 , 0x00005f0a 
+ 00023883  0x000061a3 beq  0x0000003d , 0x00005f10 
+ 00023884  0x000061a4 beq  0x0000003e , 0x00005f51 
+ 00023885  0x000061a5 beq  0x0000003f , 0x00005f4b 
+ 00023886  0x000061a6 beq  0x00000040 , 0x00005f78 
+ 00023887  0x000061a7 beq  0x00000041 , 0x00005f8a 
+ 00023888  0x000061a8 beq  0x00000006 , 0x00005fa7 
+ 00023889  0x000061a9 beq  0x0000003a , 0x00005d57 
+ 00023890  0x000061ad jam  0x00000019 , 0x0000007e 
+ 00023891  0x000061af jam  0x00000004 , 0x0000007c 
+ 00023892  0x000061b0 rtn 
+ 00023893  0x000061b3 jam  0x00000006 , 0x0000007c 
+ 00023894  0x000061b4 rtn 
+ 00023895  0x000061b7 jam  0x0000003b , 0x0000007c 
+ 00023896  0x000061b8 rtn 
+ 00023897  0x000061bb fetch  0x00000004 , 0x00000552 
+ 00023898  0x000061bc lshift  0x0000003f , 0x0000003f 
+ 00023899  0x000061bd store  0x00000004 , 0x000040d2 
+ 00023900  0x000061be fetch  0x00000001 , 0x00000556 
+ 00023901  0x000061bf store  0x00000001 , 0x000040d9 
+ 00023902  0x000061c0 fetch  0x00000005 , 0x00000557 
+ 00023903  0x000061c1 store  0x00000005 , 0x000040e7 
+ 00023904  0x000061c2 fetch  0x00000005 , 0x0000055c 
+ 00023905  0x000061c3 istore  0x00000005 , 0x00000005 
+ 00023906  0x000061c4 fetch  0x00000001 , 0x00000031 
+ 00023907  0x000061c5 set1  0x00000003 , 0x0000003f 
+ 00023908  0x000061c6 store  0x00000001 , 0x00000031 
+ 00023909  0x000061c7 rtn 
+ 00023910  0x000061c9 bpatchx  0x0000007f , 0x0000402f 
+ 00023911  0x000061ca fetch  0x00000001 , 0x00000552 
+ 00023912  0x000061cb set1  0x00000007 , 0x0000003f 
+ 00023913  0x000061cc store  0x00000001 , 0x0000007d 
+ 00023914  0x000061cd beq  0x00000081 , 0x00005d88 
+ 00023915  0x000061ce beq  0x00000082 , 0x00005d8d 
+ 00023916  0x000061cf beq  0x00000095 , 0x00005eb1 
+ 00023917  0x000061d0 beq  0x00000096 , 0x00005eca 
+ 00023918  0x000061d1 beq  0x0000008b , 0x00005ebf 
+ 00023919  0x000061d2 beq  0x00000083 , 0x00005da5 
+ 00023920  0x000061d3 beq  0x00000084 , 0x00005da7 
+ 00023921  0x000061d4 beq  0x00000090 , 0x00005d7a 
+ 00023922  0x000061d5 beq  0x00000097 , 0x00005d9e 
+ 00023923  0x000061d6 beq  0x00000098 , 0x00005da3 
+ 00023924  0x000061d7 beq  0x00000099 , 0x00005d7d 
+ 00023925  0x000061d8 beq  0x0000009a , 0x00005d80 
+ 00023926  0x000061d9 rtneq  0x00000084 
+ 00023927  0x000061dd jam  0x00000082 , 0x0000007c 
+ 00023928  0x000061de jam  0x00000019 , 0x0000007e 
+ 00023929  0x000061e0 rtn 
+ 00023930  0x000061e2 jam  0x00000082 , 0x0000007c 
+ 00023931  0x000061e3 jam  0x0000002e , 0x0000007e 
+ 00023932  0x000061e4 rtn 
+ 00023933  0x000061e7 call  0x00005d82 
+ 00023934  0x000061e8 jam  0x0000009a , 0x0000007c 
+ 00023935  0x000061e9 rtn 
+ 00023936  0x000061ec call  0x00005d82 
+ 00023937  0x000061ed branch  0x00005d86 
+ 00023938  0x000061f0 arg  0x0000465e , 0x00000005 
+ 00023939  0x000061f1 fetch  0x00000003 , 0x00000553 
+ 00023940  0x000061f2 istore  0x00000003 , 0x00000005 
+ 00023941  0x000061f3 rtn 
+ 00023942  0x000061f6 branch  0x000076d8 , 0x00000001 
+ 00023943  0x000061f7 rtn 
+ 00023944  0x000061f9 fetch  0x00000001 , 0x00000554 
+ 00023945  0x000061fa set1  0x00000007 , 0x0000003f 
+ 00023946  0x000061fb store  0x00000001 , 0x000004c9 
+ 00023947  0x000061fc beq  0x0000008b , 0x00005d92 
+ 00023948  0x000061fd rtn 
+ 00023949  0x00006201 fetch  0x00000001 , 0x00000554 
+ 00023950  0x00006202 set1  0x00000007 , 0x0000003f 
+ 00023951  0x00006203 store  0x00000001 , 0x000004c9 
+ 00023952  0x00006204 beq  0x0000008b , 0x00005d96 
+ 00023953  0x00006205 rtn 
+ 00023954  0x00006208 fetch  0x00000001 , 0x0000415a 
+ 00023955  0x00006209 fetcht  0x00000001 , 0x0000004c 
+ 00023956  0x0000620a nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00023957  0x0000620b storet  0x00000001 , 0x0000004c 
+ 00023958  0x0000620d fetch  0x00000001 , 0x00000030 
+ 00023959  0x0000620e rtnbit0  0x00000005 
+ 00023960  0x0000620f set0  0x00000005 , 0x0000003f 
+ 00023961  0x00006210 store  0x00000001 , 0x00000030 
+ 00023962  0x00006211 fetch  0x00000001 , 0x000004d7 
+ 00023963  0x00006212 nrtn  0x00000034 
+ 00023964  0x00006213 jam  0x00000031 , 0x0000007c 
+ 00023965  0x00006214 rtn 
+ 00023966  0x00006217 nbranch  0x00005da1 , 0x00000029 
+ 00023967  0x00006218 jam  0x00000012 , 0x0000007c 
+ 00023968  0x00006219 branch  0x000062eb 
+ 00023969  0x0000621c jam  0x00000097 , 0x0000007c 
+ 00023970  0x0000621d rtn 
+ 00023971  0x00006222 call  0x000062eb 
+ 00023972  0x00006223 branch  0x00005ffe 
+ 00023973  0x00006226 jam  0x00000084 , 0x0000007c 
+ 00023974  0x00006227 rtn 
+ 00023975  0x0000622a fetcht  0x00000001 , 0x00000555 
+ 00023976  0x0000622b and  0x00000002 , 0x00000001 , 0x00000002 
+ 00023977  0x0000622c storet  0x00000001 , 0x000004d0 
+ 00023978  0x0000622d fetch  0x00000001 , 0x000041ce 
+ 00023979  0x0000622e bne  0x00000051 , 0x00005dad 
+ 00023980  0x0000622f jam  0x00000000 , 0x000041ce 
+ 00023981  0x00006231 fetch  0x00000001 , 0x00000055 
+ 00023982  0x00006232 rtnne  0x00000015 
+ 00023983  0x00006233 jam  0x00000004 , 0x00000055 
+ 00023984  0x00006234 branch  0x0000631b 
+ 00023985  0x00006237 bpatchx  0x00000080 , 0x00004030 
+ 00023986  0x00006238 fetch  0x00000001 , 0x00000552 
+ 00023987  0x00006239 store  0x00000001 , 0x000004c9 
+ 00023988  0x0000623a beq  0x00000033 , 0x00005dd8 
+ 00023989  0x0000623b beq  0x00000008 , 0x00005de7 
+ 00023990  0x0000623c beq  0x0000000f , 0x00005dee 
+ 00023991  0x0000623d beq  0x00000010 , 0x00005df4 
+ 00023992  0x0000623e beq  0x00000011 , 0x00005df5 
+ 00023993  0x0000623f beq  0x00000012 , 0x00005dfd 
+ 00023994  0x00006240 beq  0x00000018 , 0x00005e13 
+ 00023995  0x00006241 beq  0x00000017 , 0x00005e16 
+ 00023996  0x00006242 beq  0x00000013 , 0x00005dcf 
+ 00023997  0x00006244 beq  0x0000003d , 0x00005f1e 
+ 00023998  0x00006245 beq  0x0000003e , 0x00005f6a 
+ 00023999  0x00006246 beq  0x00000040 , 0x00005f20 
+ 00024000  0x00006247 beq  0x00000041 , 0x00005f3d 
+ 00024001  0x00006248 rtn 
+ 00024002  0x0000624b bpatchx  0x00000081 , 0x00004030 
+ 00024003  0x0000624c fetch  0x00000001 , 0x00000552 
+ 00024004  0x0000624d store  0x00000001 , 0x000004c9 
+ 00024005  0x0000624e beq  0x00000001 , 0x00005e0a 
+ 00024006  0x0000624f beq  0x00000033 , 0x00005de2 
+ 00024007  0x00006250 beq  0x0000000b , 0x00005dfe 
+ 00024008  0x00006251 beq  0x00000008 , 0x00005e01 
+ 00024009  0x00006252 beq  0x00000013 , 0x00005dd2 
+ 00024010  0x00006254 beq  0x00000040 , 0x00005e0b 
+ 00024011  0x00006255 beq  0x00000041 , 0x00005e0e 
+ 00024012  0x00006256 beq  0x00000018 , 0x00005e11 
+ 00024013  0x00006257 beq  0x00000017 , 0x00005e22 
+ 00024014  0x00006258 rtn 
+ 00024015  0x0000625b jam  0x00000020 , 0x00000a99 
+ 00024016  0x0000625c call  0x00007d86 
+ 00024017  0x0000625d branch  0x000021dc 
+ 00024018  0x0000625f jam  0x00000019 , 0x00000a99 
+ 00024019  0x00006260 call  0x00007d86 
+ 00024020  0x00006261 jam  0x00000002 , 0x0000455b 
+ 00024021  0x00006262 setarg  0x00000050 
+ 00024022  0x00006263 arg  0x00000006 , 0x00000007 
+ 00024023  0x00006264 branch  0x00007f08 
+ 00024024  0x0000626a fetch  0x00000001 , 0x000004d1 
+ 00024025  0x0000626b set1  0x00000000 , 0x0000003f 
+ 00024026  0x0000626c store  0x00000001 , 0x000004d1 
+ 00024027  0x0000626d jam  0x00000001 , 0x00000a99 
+ 00024028  0x0000626e call  0x00007d86 
+ 00024029  0x0000626f jam  0x0000008b , 0x0000007c 
+ 00024030  0x00006273 fetch  0x00000001 , 0x00000055 
+ 00024031  0x00006274 bne  0x00000005 , 0x00005d07 
+ 00024032  0x00006277 jam  0x00000006 , 0x00000055 
+ 00024033  0x00006278 rtn 
+ 00024034  0x00006281 jam  0x0000000b , 0x000004ca 
+ 00024035  0x00006282 jam  0x00000007 , 0x0000007c 
+ 00024036  0x00006284 jam  0x00000000 , 0x00000055 
+ 00024037  0x00006286 branch  0x00005d07 , 0x00000001 
+ 00024038  0x00006287 rtn 
+ 00024039  0x0000628a fetch  0x00000001 , 0x000041bd 
+ 00024040  0x0000628b nrtn  0x00000034 
+ 00024041  0x0000628c call  0x0000244f 
+ 00024042  0x0000628d call  0x00005ffc 
+ 00024043  0x0000628e rtn  0x00000029 
+ 00024044  0x0000628f set1  0x00000021 , 0x00000000 
+ 00024045  0x00006290 rtn 
+ 00024046  0x00006293 nrtn  0x00000029 
+ 00024047  0x00006294 jam  0x00000010 , 0x0000007c 
+ 00024048  0x00006295 fetch  0x00000001 , 0x0000004c 
+ 00024049  0x00006296 rtnbit0  0x00000002 
+ 00024050  0x00006297 jam  0x00000012 , 0x0000007c 
+ 00024051  0x00006298 rtn 
+ 00024052  0x0000629b branch  0x00005ffe 
+ 00024053  0x0000629e call  0x00006059 
+ 00024054  0x0000629f fetch  0x00000001 , 0x00000030 
+ 00024055  0x000062a0 rtnbit1  0x00000004 
+ 00024056  0x000062a1 jam  0x00000031 , 0x0000007c 
+ 00024057  0x000062a2 fetch  0x00000001 , 0x00000055 
+ 00024058  0x000062a3 rtnne  0x0000000a 
+ 00024059  0x000062a4 jam  0x0000000b , 0x00000055 
+ 00024060  0x000062a5 rtn 
+ 00024061  0x000062af rtn 
+ 00024062  0x000062b3 jam  0x00000007 , 0x0000007c 
+ 00024063  0x000062b4 jam  0x00000013 , 0x000004ca 
+ 00024064  0x000062b5 rtn 
+ 00024065  0x000062b8 fetch  0x00000001 , 0x00000553 
+ 00024066  0x000062b9 beq  0x00000006 , 0x00005e07 
+ 00024067  0x000062ba rtnne  0x00000018 
+ 00024068  0x000062bb jam  0x00000018 , 0x000004ca 
+ 00024069  0x000062bc jam  0x00000007 , 0x0000007c 
+ 00024070  0x000062bd rtn 
+ 00024071  0x000062bf jam  0x00000006 , 0x000004ca 
+ 00024072  0x000062c0 jam  0x00000007 , 0x0000007c 
+ 00024073  0x000062c1 rtn 
+ 00024074  0x000062c4 rtn 
+ 00024075  0x000062c7 jam  0x00000000 , 0x000009ae 
+ 00024076  0x000062c8 jam  0x00000007 , 0x0000007c 
+ 00024077  0x000062c9 branch  0x00005d07 
+ 00024078  0x000062cc jam  0x00000000 , 0x000009ae 
+ 00024079  0x000062cd jam  0x00000007 , 0x0000007c 
+ 00024080  0x000062ce branch  0x00005d07 
+ 00024081  0x000062d0 jam  0x00000024 , 0x00000a99 
+ 00024082  0x000062d1 branch  0x00007d86 
+ 00024083  0x000062d4 jam  0x00000023 , 0x00000a99 
+ 00024084  0x000062d5 call  0x00007d86 
+ 00024085  0x000062d6 branch  0x000026e9 
+ 00024086  0x000062d9 jam  0x00000022 , 0x00000a99 
+ 00024087  0x000062da call  0x00007d86 
+ 00024088  0x000062db setarg  0x00000000 
+ 00024089  0x000062dc store  0x00000002 , 0x00000075 
+ 00024090  0x000062dd fetch  0x00000002 , 0x000041e3 
+ 00024091  0x000062de lshift  0x0000003f , 0x0000003f 
+ 00024092  0x000062df store  0x00000002 , 0x00000032 
+ 00024093  0x000062e0 fetch  0x00000001 , 0x000041e5 
+ 00024094  0x000062e1 store  0x00000001 , 0x00000073 
+ 00024095  0x000062e2 fetch  0x00000001 , 0x000041e7 
+ 00024096  0x000062e3 store  0x00000001 , 0x00000074 
+ 00024097  0x000062e4 branch  0x000026c6 
+ 00024098  0x000062e7 jam  0x00000021 , 0x00000a99 
+ 00024099  0x000062e8 branch  0x00007d86 
+ 00024100  0x000062eb fetcht  0x00000001 , 0x00000552 
+ 00024101  0x000062ec storet  0x00000001 , 0x00000054 
+ 00024102  0x000062ed branch  0x00005e38 
+ 00024103  0x000062f0 fetch  0x00000001 , 0x000004d1 
+ 00024104  0x000062f1 set1  0x00000002 , 0x0000003f 
+ 00024105  0x000062f2 store  0x00000001 , 0x000004d1 
+ 00024106  0x000062f3 rtnbit1  0x00000003 
+ 00024107  0x000062f4 jam  0x00000031 , 0x0000007c 
+ 00024108  0x000062f5 branch  0x00005d07 
+ 00024109  0x000062fa rtn 
+ 00024110  0x000062fd fetch  0x00000001 , 0x000040d0 
+ 00024111  0x000062fe fetcht  0x00000001 , 0x00000552 
+ 00024112  0x000062ff isub  0x00000002 , 0x0000003e 
+ 00024113  0x00006301 branch  0x00005e38 , 0x00000002 
+ 00024114  0x00006302 jam  0x00000004 , 0x0000007c 
+ 00024115  0x00006303 jam  0x0000001f , 0x0000007e 
+ 00024116  0x00006304 jam  0x0000002e , 0x0000007d 
+ 00024117  0x00006305 rtn 
+ 00024118  0x00006308 call  0x00006157 
+ 00024119  0x00006309 branch  0x00005e38 
+ 00024120  0x0000630c jam  0x00000003 , 0x0000007c 
+ 00024121  0x0000630d rtn 
+ 00024122  0x00006310 jam  0x00000021 , 0x0000007c 
+ 00024123  0x00006311 rtn 
+ 00024124  0x00006314 jam  0x00000022 , 0x0000007c 
+ 00024125  0x00006315 rtn 
+ 00024126  0x00006318 fetch  0x00000001 , 0x00000055 
+ 00024127  0x00006319 rtneq  0x00000013 
+ 00024128  0x0000631b jam  0x00000002 , 0x00000055 
+ 00024129  0x0000631d rtn 
+ 00024130  0x00006321 rtn 
+ 00024131  0x00006324 call  0x00005ff9 
+ 00024132  0x00006325 jam  0x00000001 , 0x000004d4 
+ 00024133  0x00006326 jam  0x0000000a , 0x00000a99 
+ 00024134  0x00006327 call  0x00007d86 
+ 00024135  0x00006329 call  0x000062f3 
+ 00024136  0x0000632a nbranch  0x00006001 , 0x00000001 
+ 00024137  0x0000632c nbranch  0x00005e4e , 0x00000029 
+ 00024138  0x0000632d jam  0x00000004 , 0x0000007c 
+ 00024139  0x0000632e jam  0x00000008 , 0x0000007d 
+ 00024140  0x0000632f jam  0x00000023 , 0x0000007e 
+ 00024141  0x00006330 rtn 
+ 00024142  0x00006332 fetch  0x00000001 , 0x0000004b 
+ 00024143  0x00006333 set1  0x00000002 , 0x0000003f 
+ 00024144  0x00006334 store  0x00000001 , 0x0000004b 
+ 00024145  0x00006335 rtn 
+ 00024146  0x00006339 fetcht  0x00000001 , 0x0000004c 
+ 00024147  0x0000633a nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00024148  0x0000633b storet  0x00000001 , 0x0000004c 
+ 00024149  0x0000633c rtn 
+ 00024150  0x00006340 fetch  0x00000001 , 0x0000007f 
+ 00024151  0x00006341 rshift  0x0000003f , 0x0000003f 
+ 00024152  0x00006342 and_into  0x00000001 , 0x0000003f 
+ 00024153  0x00006343 rtn 
+ 00024154  0x00006346 fetch  0x00000001 , 0x00004217 
+ 00024155  0x00006347 rtn  0x00000034 
+ 00024156  0x00006348 fetch  0x00000001 , 0x000009b5 
+ 00024157  0x00006349 call  0x000067b2 , 0x00000034 
+ 00024158  0x0000634a rtn 
+ 00024159  0x0000634d call  0x00005e5a 
+ 00024160  0x0000634e call  0x00005e56 
+ 00024161  0x0000634f store  0x00000001 , 0x000004d5 
+ 00024162  0x00006350 call  0x00005ff9 
+ 00024163  0x00006351 jam  0x0000000c , 0x0000007c 
+ 00024164  0x00006352 fetch  0x00000001 , 0x000041bd 
+ 00024165  0x00006353 nrtn  0x00000034 
+ 00024166  0x00006354 fetch  0x00000001 , 0x00000030 
+ 00024167  0x00006355 rtnbit1  0x00000006 
+ 00024168  0x00006356 jam  0x00000006 , 0x0000007e 
+ 00024169  0x00006357 branch  0x00005d53 
+ 00024170  0x0000635a arg  0x00000040 , 0x00000011 
+ 00024171  0x0000635b call  0x00007288 
+ 00024172  0x0000635c fetch  0x00000004 , 0x00000552 
+ 00024173  0x0000635d fetcht  0x00000004 , 0x00000592 
+ 00024174  0x0000635e isub  0x00000002 , 0x0000003e 
+ 00024175  0x0000635f branch  0x00005e73 , 0x00000005 
+ 00024176  0x00006360 jam  0x00000007 , 0x0000007c 
+ 00024177  0x00006361 jam  0x00000005 , 0x000004ca 
+ 00024178  0x00006362 rtn 
+ 00024179  0x00006364 call  0x00005e77 
+ 00024180  0x00006365 fetch  0x00000001 , 0x0000465a 
+ 00024181  0x00006366 branch  0x00005f3e , 0x00000034 
+ 00024182  0x00006367 rtn 
+ 00024183  0x0000636b call  0x00007386 
+ 00024184  0x0000636c call  0x000021b2 
+ 00024185  0x0000636d fetch  0x00000001 , 0x0000004b 
+ 00024186  0x0000636e isolate1  0x00000001 , 0x0000003f 
+ 00024187  0x0000636f set0  0x00000001 , 0x0000003f 
+ 00024188  0x00006370 store  0x00000001 , 0x0000004b 
+ 00024189  0x00006371 fetch  0x00000001 , 0x00000055 
+ 00024190  0x00006372 beq  0x00000019 , 0x00005e81 
+ 00024191  0x00006373 beq  0x00000018 , 0x00005e81 
+ 00024192  0x00006374 rtn 
+ 00024193  0x00006376 fetch  0x00000001 , 0x000009b5 
+ 00024194  0x00006377 rtnne  0x00000000 
+ 00024195  0x00006378 fetch  0x00000001 , 0x0000004c 
+ 00024196  0x00006379 rtnbit1  0x00000002 
+ 00024197  0x0000637a branch  0x000063b1 
+ 00024198  0x0000637d arg  0x00000552 , 0x00000011 
+ 00024199  0x0000637e arg  0x00000582 , 0x00000012 
+ 00024200  0x0000637f arg  0x00000562 , 0x00000005 
+ 00024201  0x00006380 call  0x00007352 
+ 00024202  0x00006381 arg  0x00000040 , 0x00000011 
+ 00024203  0x00006382 call  0x00006311 
+ 00024204  0x00006383 jam  0x0000000b , 0x0000007c 
+ 00024205  0x00006384 fetch  0x00000001 , 0x00000030 
+ 00024206  0x00006385 bbit0  0x00000006 , 0x00005ffc 
+ 00024207  0x00006386 rtn 
+ 00024208  0x00006389 fetch  0x00000002 , 0x0000015f 
+ 00024209  0x0000638a add  0x0000003f , 0xfffffffd , 0x00000039 
+ 00024210  0x0000638b fetcht  0x00000001 , 0x00000552 
+ 00024211  0x0000638c setarg  0x00000101 
+ 00024212  0x0000638d iadd  0x00000002 , 0x00000005 
+ 00024213  0x0000638e arg  0x00000554 , 0x00000006 
+ 00024214  0x0000638f call  0x00007f01 
+ 00024215  0x00006390 fetcht  0x00000001 , 0x00000053 
+ 00024216  0x00006391 fetch  0x00000001 , 0x00000553 
+ 00024217  0x00006392 isub  0x00000002 , 0x0000003f 
+ 00024218  0x00006393 sub  0x0000003f , 0x0000000e , 0x0000003e 
+ 00024219  0x00006394 branch  0x00005ea0 , 0x00000002 
+ 00024220  0x00006395 add  0x00000002 , 0x0000000e , 0x0000003f 
+ 00024221  0x00006396 store  0x00000001 , 0x00000053 
+ 00024222  0x00006397 jam  0x00000001 , 0x0000007c 
+ 00024223  0x00006398 rtn 
+ 00024224  0x0000639a fetch  0x00000001 , 0x0000004c 
+ 00024225  0x0000639b set1  0x00000003 , 0x0000003f 
+ 00024226  0x0000639c store  0x00000001 , 0x0000004c 
+ 00024227  0x0000639d bbit1  0x00000004 , 0x00006006 
+ 00024228  0x0000639e rtn 
+ 00024229  0x000063a0 fetch  0x00000001 , 0x00000552 
+ 00024230  0x000063a1 store  0x00000001 , 0x0000007d 
+ 00024231  0x000063a2 jam  0x00000002 , 0x0000007c 
+ 00024232  0x000063a3 rtn 
+ 00024233  0x000063a6 branch  0x00005e38 
+ 00024234  0x000063a9 jam  0x00000030 , 0x0000007c 
+ 00024235  0x000063aa rtn 
+ 00024236  0x000063ad jam  0x00000028 , 0x0000007c 
+ 00024237  0x000063ae rtn 
+ 00024238  0x000063b1 jam  0x00000026 , 0x0000007c 
+ 00024239  0x000063b2 rtn 
+ 00024240  0x000063b7 rtn 
+ 00024241  0x000063bc fetch  0x00000002 , 0x00000032 
+ 00024242  0x000063bd iforce  0x00000002 
+ 00024243  0x000063be fetch  0x00000001 , 0x00000553 
+ 00024244  0x000063bf store  0x00000001 , 0x00000095 
+ 00024245  0x000063c0 imul32  0x00000002 , 0x00000002 
+ 00024246  0x000063c1 fetch  0x00000002 , 0x00000554 
+ 00024247  0x000063c2 lshift  0x0000003f , 0x0000003f 
+ 00024248  0x000063c3 store  0x00000002 , 0x00000096 
+ 00024249  0x000063c4 fetch  0x00000004 , 0x00000556 
+ 00024250  0x000063c5 lshift  0x0000003f , 0x0000003f 
+ 00024251  0x000063c6 store  0x00000004 , 0x00000091 
+ 00024252  0x000063c8 deposit  0x00000002 
+ 00024253  0x000063c9 store  0x00000002 , 0x00000098 
+ 00024254  0x000063ca rtn 
+ 00024255  0x000063cc fetcht  0x00000001 , 0x0000415a 
+ 00024256  0x000063cd fetch  0x00000001 , 0x00000553 
+ 00024257  0x000063ce ixor  0x00000002 , 0x0000003e 
+ 00024258  0x000063cf nbranch  0x00005d77 , 0x00000005 
+ 00024259  0x000063d0 isolate1  0x00000000 , 0x0000003f 
+ 00024260  0x000063d1 fetch  0x00000001 , 0x0000004c 
+ 00024261  0x000063d2 setflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00024262  0x000063d3 store  0x00000001 , 0x0000004c 
+ 00024263  0x000063d4 jam  0x00000081 , 0x0000007c 
+ 00024264  0x000063d5 jam  0x0000008b , 0x0000007d 
+ 00024265  0x000063d6 rtn 
+ 00024266  0x000063dd rtn 
+ 00024267  0x000063e0 branch  0x00005e38 
+ 00024268  0x000063e4 branch  0x00005e38 
+ 00024269  0x000063e9 fetch  0x00000002 , 0x00000552 
+ 00024270  0x000063ea store  0x00000002 , 0x00000171 
+ 00024271  0x000063eb rtn 
+ 00024272  0x000063ee fetch  0x00000002 , 0x00000555 
+ 00024273  0x000063ef fetcht  0x00000001 , 0x00004172 
+ 00024274  0x000063f0 imul32  0x00000002 , 0x0000003f 
+ 00024275  0x000063f1 arg  0x00000640 , 0x00000002 
+ 00024276  0x000063f2 isub  0x00000002 , 0x0000003e 
+ 00024277  0x000063f4 rtn 
+ 00024278  0x000063f7 fetch  0x00000002 , 0x00000557 
+ 00024279  0x000063f8 branch  0x00005ef0 , 0x00000034 
+ 00024280  0x000063f9 call  0x00005ed0 
+ 00024281  0x000063fa branch  0x00005ef0 , 0x00000002 
+ 00024282  0x000063fb fetch  0x00000001 , 0x00004092 
+ 00024283  0x000063fc sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00024284  0x000063fd call  0x00003cd5 , 0x00000005 
+ 00024285  0x000063fe fetch  0x00000001 , 0x00000030 
+ 00024286  0x000063ff bbit1  0x00000001 , 0x00005ef0 
+ 00024287  0x00006400 fetch  0x00000002 , 0x00000553 
+ 00024288  0x00006401 lshift  0x0000003f , 0x0000003f 
+ 00024289  0x00006402 store  0x00000002 , 0x00000075 
+ 00024290  0x00006403 fetch  0x00000002 , 0x00000555 
+ 00024291  0x00006404 lshift  0x0000003f , 0x0000003f 
+ 00024292  0x00006405 store  0x00000002 , 0x00000032 
+ 00024293  0x00006406 fetch  0x00000002 , 0x00000557 
+ 00024294  0x00006407 store  0x00000001 , 0x00000073 
+ 00024295  0x00006408 iforce  0x00000002 
+ 00024296  0x00006409 fetch  0x00000002 , 0x00000559 
+ 00024297  0x0000640a store  0x00000001 , 0x00000074 
+ 00024298  0x0000640b isub  0x00000002 , 0x0000003e 
+ 00024299  0x0000640c nbranch  0x00005eed , 0x00000002 
+ 00024300  0x0000640d store  0x00000001 , 0x00000073 
+ 00024301  0x00006410 jam  0x00000003 , 0x0000007c 
+ 00024302  0x00006411 jam  0x00000017 , 0x0000007d 
+ 00024303  0x00006412 rtn 
+ 00024304  0x00006415 jam  0x00000024 , 0x0000007e 
+ 00024305  0x00006416 branch  0x00005d53 
+ 00024306  0x00006419 call  0x00005e38 
+ 00024307  0x0000641a call  0x00005ff9 
+ 00024308  0x0000641b call  0x0000728b 
+ 00024309  0x0000641c branch  0x000026b8 
+ 00024310  0x0000641f call  0x00005e38 
+ 00024311  0x00006420 branch  0x000026c0 
+ 00024312  0x00006424 fetch  0x00000004 , 0x00000552 
+ 00024313  0x00006425 lshift  0x0000003f , 0x0000003f 
+ 00024314  0x00006427 branch  0x00005f04 , 0x00000029 
+ 00024315  0x00006428 fetcht  0x00000001 , 0x000041bd 
+ 00024316  0x00006429 nbranch  0x00005f01 , 0x00000034 
+ 00024317  0x0000642b jam  0x00000004 , 0x0000007c 
+ 00024318  0x0000642c jam  0x00000013 , 0x0000007d 
+ 00024319  0x0000642d jam  0x00000024 , 0x0000007e 
+ 00024320  0x0000642e rtn 
+ 00024321  0x00006430 jam  0x00000034 , 0x0000007c 
+ 00024322  0x00006431 jam  0x00000000 , 0x00000055 
+ 00024323  0x00006432 branch  0x000021d9 
+ 00024324  0x00006435 call  0x000021d9 
+ 00024325  0x00006436 set1  0x00000022 , 0x00000000 
+ 00024326  0x00006437 fetch  0x00000001 , 0x0000016d 
+ 00024327  0x00006438 set0  0x00000002 , 0x0000003f 
+ 00024328  0x00006439 store  0x00000001 , 0x0000016d 
+ 00024329  0x0000643a branch  0x00005e38 
+ 00024330  0x00006443 rtn 
+ 00024331  0x00006447 jam  0x00000003 , 0x0000007c 
+ 00024332  0x00006448 jam  0x00000018 , 0x0000007d 
+ 00024333  0x00006449 jam  0x0000002e , 0x00000a99 
+ 00024334  0x0000644a call  0x00007d86 
+ 00024335  0x0000644b branch  0x000026e9 
+ 00024336  0x0000644e fetch  0x00000001 , 0x00000552 
+ 00024337  0x0000644f bne  0x00000001 , 0x00005f1c 
+ 00024338  0x00006450 fetch  0x00000001 , 0x00000553 
+ 00024339  0x00006451 bne  0x00000001 , 0x00005f1c 
+ 00024340  0x00006452 fetch  0x00000001 , 0x00000554 
+ 00024341  0x00006453 bne  0x00000030 , 0x00005f1c 
+ 00024342  0x00006454 call  0x000062fc 
+ 00024343  0x00006455 branch  0x00005f19 , 0x00000001 
+ 00024344  0x00006456 jam  0x00000001 , 0x000009ae 
+ 00024345  0x00006458 jam  0x00000003 , 0x0000007c 
+ 00024346  0x00006459 jam  0x0000003d , 0x0000007d 
+ 00024347  0x0000645a branch  0x00005d07 
+ 00024348  0x0000645d jam  0x00000024 , 0x0000007e 
+ 00024349  0x0000645e branch  0x00005d53 
+ 00024350  0x00006463 jam  0x0000003e , 0x0000007c 
+ 00024351  0x00006465 rtn 
+ 00024352  0x00006467 fetch  0x00000001 , 0x00004662 
+ 00024353  0x00006468 beq  0x00000001 , 0x00005f27 
+ 00024354  0x00006469 beq  0x00000002 , 0x00005f2b 
+ 00024355  0x0000646b call  0x000062fc 
+ 00024356  0x0000646c rtn  0x00000001 
+ 00024357  0x0000646d jam  0x00000008 , 0x000009ae 
+ 00024358  0x0000646e rtn 
+ 00024359  0x00006471 call  0x00007962 
+ 00024360  0x00006472 jam  0x00000035 , 0x00000a99 
+ 00024361  0x00006473 call  0x00007d86 
+ 00024362  0x00006474 branch  0x00005f23 
+ 00024363  0x00006478 call  0x000062fc 
+ 00024364  0x00006479 rtn  0x00000001 
+ 00024365  0x0000647a fetch  0x00000001 , 0x00004663 
+ 00024366  0x0000647b beq  0x00000013 , 0x00005f3b 
+ 00024367  0x0000647c increase  0x00000001 , 0x0000003f 
+ 00024368  0x0000647d store  0x00000001 , 0x00004663 
+ 00024369  0x00006481 jam  0x00000001 , 0x000009b0 
+ 00024370  0x00006482 jam  0x00000004 , 0x000009ae 
+ 00024371  0x00006483 fetch  0x00000001 , 0x00004663 
+ 00024372  0x00006484 copy  0x0000003f , 0x00000007 
+ 00024373  0x00006485 fetch  0x00000006 , 0x0000468a 
+ 00024374  0x00006486 qisolate1  0x0000003f 
+ 00024375  0x00006487 setarg  0x00000080 
+ 00024376  0x00006488 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024377  0x00006489 store  0x00000001 , 0x00004664 
+ 00024378  0x0000648a rtn 
+ 00024379  0x0000648d jam  0x00000008 , 0x000009ae 
+ 00024380  0x0000648e rtn 
+ 00024381  0x00006491 call  0x00005f43 
+ 00024382  0x00006493 fetch  0x00000001 , 0x00004665 
+ 00024383  0x00006494 rtn  0x00000034 
+ 00024384  0x00006495 jam  0x00000000 , 0x00004665 
+ 00024385  0x00006496 jam  0x00000038 , 0x00000a99 
+ 00024386  0x00006497 branch  0x00007d86 
+ 00024387  0x0000649c call  0x000062fc 
+ 00024388  0x0000649d ncall  0x00007965 , 0x00000001 
+ 00024389  0x0000649e call  0x00007975 , 0x00000001 
+ 00024390  0x0000649f call  0x000062fc 
+ 00024391  0x000064a0 rtn  0x00000001 
+ 00024392  0x000064a1 jam  0x0000000c , 0x000009ae 
+ 00024393  0x000064a2 jam  0x00000001 , 0x000009b0 
+ 00024394  0x000064a3 rtn 
+ 00024395  0x000064a6 arg  0x00000a6e , 0x00000005 
+ 00024396  0x000064a7 arg  0x00000552 , 0x00000006 
+ 00024397  0x000064a8 call  0x00007ebf 
+ 00024398  0x000064a9 fetch  0x00000001 , 0x00004662 
+ 00024399  0x000064aa rtneq  0x00000002 
+ 00024400  0x000064ab branch  0x000076d8 
+ 00024401  0x000064ae fetch  0x00000001 , 0x000009af 
+ 00024402  0x000064af beq  0x00000007 , 0x00005f55 
+ 00024403  0x000064b0 fetch  0x00000001 , 0x000009ae 
+ 00024404  0x000064b1 bne  0x00000001 , 0x00005f68 
+ 00024405  0x000064b3 fetch  0x00000001 , 0x000009b7 
+ 00024406  0x000064b4 sub  0x0000003f , 0x00000020 , 0x00000005 
+ 00024407  0x000064b5 nbranch  0x00005f68 , 0x00000002 
+ 00024408  0x000064b6 arg  0x000009c6 , 0x00000005 
+ 00024409  0x000064b7 iadd  0x00000005 , 0x00000005 
+ 00024410  0x000064b8 fetch  0x00000008 , 0x00000552 
+ 00024411  0x000064b9 istore  0x00000008 , 0x00000005 
+ 00024412  0x000064ba fetch  0x00000008 , 0x0000055a 
+ 00024413  0x000064bb istore  0x00000008 , 0x00000005 
+ 00024414  0x000064bc fetch  0x00000001 , 0x000009b7 
+ 00024415  0x000064bd increase  0x00000010 , 0x0000003f 
+ 00024416  0x000064be store  0x00000001 , 0x000009b7 
+ 00024417  0x000064bf bne  0x00000030 , 0x00005e38 
+ 00024418  0x000064c1 call  0x000062fc 
+ 00024419  0x000064c2 branch  0x00005e38 , 0x00000001 
+ 00024420  0x000064c3 jam  0x00000001 , 0x000009b8 
+ 00024421  0x000064c4 jam  0x00000002 , 0x000009ae 
+ 00024422  0x000064c5 jam  0x00000001 , 0x000009b0 
+ 00024423  0x000064c6 branch  0x00005e38 
+ 00024424  0x000064c8 jam  0x00000024 , 0x0000007e 
+ 00024425  0x000064c9 branch  0x00005d53 
+ 00024426  0x000064cb fetch  0x00000001 , 0x000009b6 
+ 00024427  0x000064cc beq  0x00000030 , 0x00005f6e 
+ 00024428  0x000064cd jam  0x0000003e , 0x0000007c 
+ 00024429  0x000064ce branch  0x00005d07 
+ 00024430  0x000064d1 call  0x000062fc 
+ 00024431  0x000064d2 branch  0x00005f77 , 0x00000001 
+ 00024432  0x000064d3 fetch  0x00000001 , 0x00004662 
+ 00024433  0x000064d4 beq  0x00000002 , 0x00005f75 
+ 00024434  0x000064d5 jam  0x00000001 , 0x000009b0 
+ 00024435  0x000064d6 jam  0x00000004 , 0x000009ae 
+ 00024436  0x000064d7 branch  0x00005d07 
+ 00024437  0x000064da jam  0x00000036 , 0x00000a99 
+ 00024438  0x000064db branch  0x00007d86 
+ 00024439  0x000064e0 branch  0x00005d07 
+ 00024440  0x000064e3 fetch  0x00000001 , 0x000009af 
+ 00024441  0x000064e4 beq  0x00000007 , 0x00005f7c 
+ 00024442  0x000064e5 fetch  0x00000001 , 0x000009ae 
+ 00024443  0x000064e6 bne  0x00000006 , 0x00005f88 
+ 00024444  0x000064e8 arg  0x00000a2e , 0x00000005 
+ 00024445  0x000064e9 fetch  0x00000008 , 0x00000552 
+ 00024446  0x000064ea istore  0x00000008 , 0x00000005 
+ 00024447  0x000064eb fetch  0x00000008 , 0x0000055a 
+ 00024448  0x000064ec istore  0x00000008 , 0x00000005 
+ 00024449  0x000064ed call  0x000062fc 
+ 00024450  0x000064ee branch  0x00005f86 , 0x00000001 
+ 00024451  0x000064ef jam  0x00000007 , 0x000009ae 
+ 00024452  0x000064f0 jam  0x00000001 , 0x000009b0 
+ 00024453  0x000064f1 branch  0x00005e38 
+ 00024454  0x000064f3 jam  0x00000004 , 0x000009af 
+ 00024455  0x000064f4 branch  0x000076d8 
+ 00024456  0x000064f8 jam  0x00000024 , 0x0000007e 
+ 00024457  0x000064f9 branch  0x00005d53 
+ 00024458  0x000064fc fetch  0x00000001 , 0x000009af 
+ 00024459  0x000064fd beq  0x0000000b , 0x00005f8e 
+ 00024460  0x000064fe fetch  0x00000001 , 0x000009ae 
+ 00024461  0x000064ff bne  0x00000008 , 0x00005f9d 
+ 00024462  0x00006501 arg  0x00000a5e , 0x00000005 
+ 00024463  0x00006502 arg  0x00000552 , 0x00000006 
+ 00024464  0x00006503 call  0x00007ebf 
+ 00024465  0x00006504 call  0x000062fc 
+ 00024466  0x00006505 branch  0x00005f9a , 0x00000001 
+ 00024467  0x00006506 fetch  0x00000001 , 0x00004662 
+ 00024468  0x00006507 beq  0x00000001 , 0x00005f9f 
+ 00024469  0x00006509 jam  0x00000000 , 0x00004661 
+ 00024470  0x0000650a jam  0x00000009 , 0x000009ae 
+ 00024471  0x0000650b jam  0x00000001 , 0x000009b0 
+ 00024472  0x0000650c jam  0x00000041 , 0x0000007d 
+ 00024473  0x0000650d branch  0x00005d07 
+ 00024474  0x00006510 jam  0x00000009 , 0x000009af 
+ 00024475  0x00006511 jam  0x00000001 , 0x000009b1 
+ 00024476  0x00006512 branch  0x00005d07 
+ 00024477  0x00006514 jam  0x00000024 , 0x0000007e 
+ 00024478  0x00006515 branch  0x00005d53 
+ 00024479  0x00006518 fetch  0x00000001 , 0x00004661 
+ 00024480  0x00006519 bbit1  0x00000007 , 0x00005fa4 
+ 00024481  0x0000651a set1  0x00000006 , 0x0000003f 
+ 00024482  0x0000651b store  0x00000001 , 0x00004661 
+ 00024483  0x0000651c rtn 
+ 00024484  0x0000651f bbit1  0x00000000 , 0x00005f95 
+ 00024485  0x00006520 jam  0x00000000 , 0x00004661 
+ 00024486  0x00006521 branch  0x00005f9d 
+ 00024487  0x00006525 branch  0x00005d07 
+ 00024488  0x00006528 fetch  0x00000001 , 0x0000016d 
+ 00024489  0x00006529 set0  0x00000001 
+ 00024490  0x0000652a store  0x00000001 , 0x0000016d 
+ 00024491  0x0000652b call  0x00005e38 
+ 00024492  0x0000652c nrtn  0x00000029 
+ 00024493  0x0000652d fetch  0x00000001 , 0x00000552 
+ 00024494  0x0000652e fetcht  0x00000001 , 0x0000004b 
+ 00024495  0x0000652f setflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00024496  0x00006530 nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00024497  0x00006531 storet  0x00000001 , 0x0000004b 
+ 00024498  0x00006532 rtn 
+ 00024499  0x00006535 fetcht  0x00000008 , 0x00000552 
+ 00024500  0x00006537 fetch  0x00000001 , 0x00000055 
+ 00024501  0x00006538 rtnne  0x00000003 
+ 00024502  0x0000653a fetch  0x00000001 , 0x0000016d 
+ 00024503  0x0000653b bbit0  0x00000004 , 0x00005fba 
+ 00024504  0x0000653d jam  0x00000014 , 0x00000055 
+ 00024505  0x0000653e rtn 
+ 00024506  0x00006540 jam  0x00000004 , 0x00000055 
+ 00024507  0x00006541 rtn 
+ 00024508  0x00006543 fetch  0x00000001 , 0x0000017f 
+ 00024509  0x00006544 store  0x00000001 , 0x0000015b 
+ 00024510  0x00006545 jam  0x00000003 , 0x0000007c 
+ 00024511  0x00006546 jam  0x00000038 , 0x0000007d 
+ 00024512  0x00006547 rtn 
+ 00024513  0x0000654b jam  0x00000003 , 0x0000007c 
+ 00024514  0x0000654c jam  0x00000039 , 0x0000007d 
+ 00024515  0x0000654d force  0x00000009 , 0x00000039 
+ 00024516  0x0000654e arg  0x00000552 , 0x00000006 
+ 00024517  0x0000654f arg  0x00000152 , 0x00000005 
+ 00024518  0x00006551 ifetch  0x00000001 , 0x00000006 
+ 00024519  0x00006552 xor_into  0x00000055 , 0x0000003f 
+ 00024520  0x00006553 istore  0x00000001 , 0x00000005 
+ 00024521  0x00006554 loop  0x00005fc6 
+ 00024522  0x00006555 fetch  0x00000001 , 0x00000152 
+ 00024523  0x00006556 fetcht  0x00000001 , 0x00000151 
+ 00024524  0x00006557 set0  0x00000007 , 0x00000002 
+ 00024525  0x00006558 set0  0x00000004 , 0x00000002 
+ 00024526  0x00006559 beq  0x000000ff , 0x00005fda 
+ 00024527  0x0000655a beq  0x00000000 , 0x00005ff3 
+ 00024528  0x0000655b beq  0x00000005 , 0x00005fe7 
+ 00024529  0x0000655c beq  0x00000007 , 0x00005fe6 
+ 00024530  0x0000655d beq  0x00000006 , 0x00005fe7 
+ 00024531  0x0000655e beq  0x00000008 , 0x00005fe6 
+ 00024532  0x0000655f beq  0x00000001 , 0x00005fdf 
+ 00024533  0x00006560 beq  0x00000002 , 0x00005fdf 
+ 00024534  0x00006561 beq  0x00000003 , 0x00005fdf 
+ 00024535  0x00006562 beq  0x00000009 , 0x00005fdf 
+ 00024536  0x00006563 beq  0x00000004 , 0x00005fdf 
+ 00024537  0x00006564 rtn 
+ 00024538  0x00006567 fetch  0x00000001 , 0x00000151 
+ 00024539  0x00006568 set1  0x00000003 , 0x0000003f 
+ 00024540  0x00006569 set1  0x00000002 , 0x0000003f 
+ 00024541  0x0000656a store  0x00000001 , 0x00000151 
+ 00024542  0x0000656b rtn 
+ 00024543  0x0000656d set1  0x00000004 , 0x00000002 
+ 00024544  0x0000656e jam  0x00000005 , 0x00000180 
+ 00024545  0x0000656f fetch  0x00000002 , 0x00000159 
+ 00024546  0x00006570 iforce  0x00000039 
+ 00024547  0x00006571 store  0x00000002 , 0x0000015f 
+ 00024548  0x00006572 arg  0x00000551 , 0x00000005 
+ 00024549  0x00006573 call  0x00007f73 
+ 00024550  0x00006575 set1  0x00000007 , 0x00000002 
+ 00024551  0x00006577 set1  0x00000002 , 0x00000002 
+ 00024552  0x00006578 force  0x00000000 , 0x0000003f 
+ 00024553  0x00006579 store  0x00000001 , 0x0000000b 
+ 00024554  0x0000657a store  0x00000002 , 0x000000fa 
+ 00024555  0x0000657b store  0x00000002 , 0x000000fc 
+ 00024556  0x0000657c store  0x00000002 , 0x000000f8 
+ 00024557  0x0000657d store  0x00000002 , 0x000000f6 
+ 00024558  0x0000657e fetch  0x00000001 , 0x00000153 
+ 00024559  0x0000657f compare  0x00000000 , 0x0000003f , 0x000000ff 
+ 00024560  0x00006580 setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00024561  0x00006581 storet  0x00000001 , 0x00000151 
+ 00024562  0x00006582 rtn 
+ 00024563  0x00006585 set0  0x00000011 , 0x00000000 
+ 00024564  0x00006586 jam  0x00000000 , 0x00000151 
+ 00024565  0x00006587 fetch  0x00000001 , 0x0000017f 
+ 00024566  0x00006588 set0  0x00000006 , 0x0000003f 
+ 00024567  0x00006589 store  0x00000001 , 0x0000017f 
+ 00024568  0x0000658a rtn 
+ 00024569  0x00006591 arg  0x00000552 , 0x00000006 
+ 00024570  0x00006592 arg  0x00000562 , 0x00000005 
+ 00024571  0x00006593 branch  0x00007ebf 
+ 00024572  0x00006596 jam  0x00000009 , 0x0000007c 
+ 00024573  0x00006597 rtn 
+ 00024574  0x0000659a nrtn  0x00000029 
+ 00024575  0x0000659b jam  0x00000011 , 0x0000007c 
+ 00024576  0x0000659c rtn 
+ 00024577  0x0000659f arg  0x000040a0 , 0x00000011 
+ 00024578  0x000065a0 call  0x00007255 
+ 00024579  0x000065a1 jam  0x00000003 , 0x0000007c 
+ 00024580  0x000065a2 jam  0x00000008 , 0x0000007d 
+ 00024581  0x000065a3 rtn 
+ 00024582  0x000065a6 jam  0x0000000a , 0x00000072 
+ 00024583  0x000065a7 jam  0x00000007 , 0x0000007c 
+ 00024584  0x000065a8 jam  0x00000016 , 0x000004ca 
+ 00024585  0x000065a9 rtn 
+ 00024586  0x000065b0 bpatchx  0x00000082 , 0x00004030 
+ 00024587  0x000065b1 disable  0x00000028 
+ 00024588  0x000065b2 call  0x000062c1 
+ 00024589  0x000065b3 fetch  0x00000001 , 0x00000048 
+ 00024590  0x000065b4 rtn  0x00000034 
+ 00024591  0x000065b9 bbit1  0x00000007 , 0x0000603f 
+ 00024592  0x000065bb beq  0x00000001 , 0x0000616f 
+ 00024593  0x000065bc beq  0x00000002 , 0x000060e4 
+ 00024594  0x000065bd beq  0x00000003 , 0x0000604a 
+ 00024595  0x000065be beq  0x00000004 , 0x00006060 
+ 00024596  0x000065bf beq  0x00000027 , 0x000061db 
+ 00024597  0x000065c0 beq  0x00000028 , 0x00006108 
+ 00024598  0x000065c1 beq  0x00000030 , 0x000060f4 
+ 00024599  0x000065c2 beq  0x00000025 , 0x000061d6 
+ 00024600  0x000065c3 beq  0x00000026 , 0x00006103 
+ 00024601  0x000065c4 beq  0x00000031 , 0x000061c3 
+ 00024602  0x000065c5 beq  0x00000037 , 0x0000616a 
+ 00024603  0x000065c6 beq  0x00000033 , 0x0000615c 
+ 00024604  0x000065c7 beq  0x00000008 , 0x00006259 
+ 00024605  0x000065c8 beq  0x00000009 , 0x0000624f 
+ 00024606  0x000065c9 beq  0x0000000b , 0x00006264 
+ 00024607  0x000065ca beq  0x0000000c , 0x0000626d 
+ 00024608  0x000065cb beq  0x0000000f , 0x00006162 
+ 00024609  0x000065cc beq  0x00000010 , 0x00006292 
+ 00024610  0x000065cd beq  0x00000011 , 0x00006288 
+ 00024611  0x000065ce beq  0x00000007 , 0x00006152 
+ 00024612  0x000065cf beq  0x0000002a , 0x0000617e 
+ 00024613  0x000065d0 beq  0x0000000a , 0x0000617f 
+ 00024614  0x000065d2 beq  0x0000001f , 0x000061bc 
+ 00024615  0x000065d3 beq  0x00000006 , 0x000060f9 
+ 00024616  0x000065d4 beq  0x00000021 , 0x0000615f 
+ 00024617  0x000065d5 beq  0x0000002d , 0x000061b2 
+ 00024618  0x000065d6 beq  0x0000002e , 0x000061b7 
+ 00024619  0x000065d7 beq  0x00000022 , 0x0000615f 
+ 00024620  0x000065d8 beq  0x00000034 , 0x00006180 
+ 00024621  0x000065d9 beq  0x00000013 , 0x00006195 
+ 00024622  0x000065da beq  0x00000017 , 0x000061a4 
+ 00024623  0x000065db beq  0x00000012 , 0x0000628f 
+ 00024624  0x000065dc beq  0x0000002f , 0x000061aa 
+ 00024625  0x000065dd beq  0x00000018 , 0x000061af 
+ 00024626  0x000065de beq  0x0000003d , 0x000061ff 
+ 00024627  0x000065df beq  0x0000003e , 0x0000620b 
+ 00024628  0x000065e0 beq  0x0000003f , 0x0000621d 
+ 00024629  0x000065e1 beq  0x00000040 , 0x00006227 
+ 00024630  0x000065e2 beq  0x00000041 , 0x0000623c 
+ 00024631  0x000065e3 beq  0x00000023 , 0x0000624b 
+ 00024632  0x000065e4 beq  0x0000003b , 0x00006246 
+ 00024633  0x000065e6 beq  0x00000005 , 0x0000624c 
+ 00024634  0x000065e7 beq  0x00000029 , 0x0000624d 
+ 00024635  0x000065e8 beq  0x00000038 , 0x0000624e 
+ 00024636  0x000065e9 beq  0x00000039 , 0x00006175 
+ 00024637  0x000065eb branch  0x00002a8c 
+ 00024638  0x000065ec rtn 
+ 00024639  0x000065ee beq  0x00000081 , 0x0000606d 
+ 00024640  0x000065ef beq  0x00000084 , 0x00006099 
+ 00024641  0x000065f0 beq  0x00000082 , 0x00006076 
+ 00024642  0x000065f1 beq  0x00000083 , 0x0000610d 
+ 00024643  0x000065f2 beq  0x0000008b , 0x00006118 
+ 00024644  0x000065f3 beq  0x00000097 , 0x0000614e 
+ 00024645  0x000065f4 beq  0x00000099 , 0x000060d5 
+ 00024646  0x000065f5 beq  0x0000009a , 0x000060a4 
+ 00024647  0x000065f6 beq  0x00000095 , 0x000060da 
+ 00024648  0x000065f7 beq  0x00000096 , 0x000060db 
+ 00024649  0x000065f8 branch  0x00002a8c 
+ 00024650  0x000065ff force  0x00000002 , 0x0000003f 
+ 00024651  0x00006600 call  0x00006298 
+ 00024652  0x00006601 fetch  0x00000001 , 0x00000049 
+ 00024653  0x00006602 istore  0x00000001 , 0x00000005 
+ 00024654  0x00006603 call  0x000062a7 
+ 00024655  0x00006604 bpatchx  0x00000083 , 0x00004030 
+ 00024656  0x00006605 fetch  0x00000001 , 0x00000049 
+ 00024657  0x00006606 beq  0x00000008 , 0x00006080 
+ 00024658  0x00006607 beq  0x0000000f , 0x00006084 
+ 00024659  0x00006608 beq  0x00000010 , 0x0000608f 
+ 00024660  0x00006609 beq  0x00000017 , 0x0000605f 
+ 00024661  0x0000660a beq  0x00000033 , 0x00006092 
+ 00024662  0x0000660b beq  0x00000041 , 0x00006098 
+ 00024663  0x0000660c beq  0x00000011 , 0x00006059 
+ 00024664  0x0000660d rtn 
+ 00024665  0x00006610 fetch  0x00000001 , 0x00000055 
+ 00024666  0x00006611 rtn  0x00000034 
+ 00024667  0x00006612 jam  0x0000001b , 0x00000055 
+ 00024668  0x00006613 setarg  0x0000000c 
+ 00024669  0x00006614 arg  0x00000007 , 0x00000007 
+ 00024670  0x00006615 branch  0x00007f08 
+ 00024671  0x00006618 branch  0x000026c6 
+ 00024672  0x0000661a force  0x00000003 , 0x0000003f 
+ 00024673  0x0000661b call  0x00006298 
+ 00024674  0x0000661c fetch  0x00000001 , 0x00000049 
+ 00024675  0x0000661d beq  0x0000000b , 0x00006068 
+ 00024676  0x0000661e istore  0x00000001 , 0x00000005 
+ 00024677  0x0000661f fetch  0x00000001 , 0x0000004a 
+ 00024678  0x00006620 istore  0x00000001 , 0x00000005 
+ 00024679  0x00006621 branch  0x000062a7 
+ 00024680  0x00006624 istore  0x00000001 , 0x00000005 
+ 00024681  0x00006625 fetch  0x00000001 , 0x0000004a 
+ 00024682  0x00006626 istore  0x00000001 , 0x00000005 
+ 00024683  0x00006627 arg  0x000004d5 , 0x00000002 
+ 00024684  0x00006628 branch  0x000062e2 
+ 00024685  0x0000662b force  0x00000004 , 0x00000007 
+ 00024686  0x0000662c call  0x000062a0 
+ 00024687  0x0000662d setarg  0x0000007f 
+ 00024688  0x0000662e istore  0x00000001 , 0x00000005 
+ 00024689  0x0000662f fetch  0x00000001 , 0x00000049 
+ 00024690  0x00006630 set0  0x00000007 , 0x0000003f 
+ 00024691  0x00006631 istore  0x00000001 , 0x00000005 
+ 00024692  0x00006632 fetch  0x00000001 , 0x00000049 
+ 00024693  0x00006633 branch  0x000062a7 
+ 00024694  0x00006636 force  0x00000005 , 0x00000007 
+ 00024695  0x00006637 call  0x000062a0 
+ 00024696  0x00006638 setarg  0x0000007f 
+ 00024697  0x00006639 istore  0x00000001 , 0x00000005 
+ 00024698  0x0000663a fetch  0x00000001 , 0x00000049 
+ 00024699  0x0000663b set0  0x00000007 , 0x0000003f 
+ 00024700  0x0000663c istore  0x00000001 , 0x00000005 
+ 00024701  0x0000663d fetch  0x00000001 , 0x0000004a 
+ 00024702  0x0000663e istore  0x00000001 , 0x00000005 
+ 00024703  0x0000663f branch  0x000062a7 
+ 00024704  0x00006643 call  0x0000244f 
+ 00024705  0x00006644 call  0x000062f3 
+ 00024706  0x00006645 rtn  0x00000001 
+ 00024707  0x00006646 branch  0x00005ffc 
+ 00024708  0x00006649 fetch  0x00000001 , 0x0000004b 
+ 00024709  0x0000664a bbit1  0x00000005 , 0x0000608b 
+ 00024710  0x0000664b rtnbit0  0x00000004 
+ 00024711  0x0000664c jam  0x00000012 , 0x0000007c 
+ 00024712  0x0000664d set0  0x00000004 , 0x0000003f 
+ 00024713  0x0000664e call  0x000062eb 
+ 00024714  0x0000664f branch  0x0000608d 
+ 00024715  0x00006651 jam  0x00000010 , 0x0000007c 
+ 00024716  0x00006652 set0  0x00000005 , 0x0000003f 
+ 00024717  0x00006654 store  0x00000001 , 0x0000004b 
+ 00024718  0x00006655 rtn 
+ 00024719  0x00006658 call  0x000062fc 
+ 00024720  0x00006659 branch  0x00005ffe , 0x00000001 
+ 00024721  0x0000665a rtn 
+ 00024722  0x0000665d jam  0x0000008b , 0x0000007c 
+ 00024723  0x0000665f fetch  0x00000001 , 0x000004d1 
+ 00024724  0x00006660 set1  0x00000000 , 0x0000003f 
+ 00024725  0x00006661 store  0x00000001 , 0x000004d1 
+ 00024726  0x00006662 jam  0x00000001 , 0x00000a99 
+ 00024727  0x00006663 branch  0x00007d86 
+ 00024728  0x00006667 rtn 
+ 00024729  0x0000666c force  0x0000000c , 0x00000007 
+ 00024730  0x0000666d call  0x000062a0 
+ 00024731  0x0000666e setarg  0x00000001 
+ 00024732  0x0000666f istore  0x00000001 , 0x00000005 
+ 00024733  0x00006670 fetch  0x00000002 , 0x000004ce 
+ 00024734  0x00006671 istore  0x00000002 , 0x00000005 
+ 00024735  0x00006672 setarg  0x00000000 
+ 00024736  0x00006673 istore  0x00000003 , 0x00000005 
+ 00024737  0x00006674 setarg  0x00000000 
+ 00024738  0x00006675 istore  0x00000004 , 0x00000005 
+ 00024739  0x00006676 branch  0x000062b0 
+ 00024740  0x00006678 force  0x00000005 , 0x00000007 
+ 00024741  0x00006679 call  0x000062a0 
+ 00024742  0x0000667a fetch  0x00000003 , 0x0000465b 
+ 00024743  0x0000667b istore  0x00000003 , 0x00000005 
+ 00024744  0x0000667c call  0x000062b0 
+ 00024745  0x0000667d jam  0x00000001 , 0x00004665 
+ 00024746  0x0000667e fetch  0x00000001 , 0x0000465b 
+ 00024747  0x0000667f beq  0x00000001 , 0x000060b5 
+ 00024748  0x00006680 beq  0x00000002 , 0x000060af 
+ 00024749  0x00006681 beq  0x00000003 , 0x000060bb 
+ 00024750  0x00006682 rtn 
+ 00024751  0x00006685 fetch  0x00000001 , 0x0000465e 
+ 00024752  0x00006686 beq  0x00000000 , 0x000060c7 
+ 00024753  0x00006687 beq  0x00000001 , 0x000060c7 
+ 00024754  0x00006688 beq  0x00000002 , 0x000060c7 
+ 00024755  0x00006689 beq  0x00000003 , 0x000060c1 
+ 00024756  0x0000668a rtn 
+ 00024757  0x0000668e fetch  0x00000001 , 0x0000465e 
+ 00024758  0x0000668f beq  0x00000000 , 0x000060c1 
+ 00024759  0x00006690 beq  0x00000001 , 0x000060c5 
+ 00024760  0x00006691 beq  0x00000002 , 0x000060c7 
+ 00024761  0x00006692 beq  0x00000003 , 0x000060c1 
+ 00024762  0x00006693 rtn 
+ 00024763  0x00006697 fetch  0x00000001 , 0x0000465e 
+ 00024764  0x00006698 beq  0x00000000 , 0x000060c1 
+ 00024765  0x00006699 beq  0x00000001 , 0x000060c1 
+ 00024766  0x0000669a beq  0x00000002 , 0x000060c1 
+ 00024767  0x0000669b beq  0x00000003 , 0x000060c1 
+ 00024768  0x0000669c rtn 
+ 00024769  0x000066a6 jam  0x00000003 , 0x00004662 
+ 00024770  0x000066a7 fetch  0x00000001 , 0x0000455c 
+ 00024771  0x000066a8 bbit1  0x00000000 , 0x000033e9 
+ 00024772  0x000066a9 rtn 
+ 00024773  0x000066ad jam  0x00000001 , 0x00004662 
+ 00024774  0x000066ae rtn 
+ 00024775  0x000066b5 jam  0x00000002 , 0x00004662 
+ 00024776  0x000066b6 rtn 
+ 00024777  0x000066ba arg  0x00000000 , 0x00000007 
+ 00024778  0x000066bb branch  0x000060cd 
+ 00024779  0x000066be arg  0x00000000 , 0x00000007 
+ 00024780  0x000066bf branch  0x000060d1 
+ 00024781  0x000066c2 fetch  0x00000001 , 0x0000455c 
+ 00024782  0x000066c3 qset1  0x0000003f 
+ 00024783  0x000066c4 store  0x00000001 , 0x0000455c 
+ 00024784  0x000066c5 rtn 
+ 00024785  0x000066c8 fetch  0x00000001 , 0x0000455c 
+ 00024786  0x000066c9 qset0  0x0000003f 
+ 00024787  0x000066ca store  0x00000001 , 0x0000455c 
+ 00024788  0x000066cb rtn 
+ 00024789  0x000066cf force  0x00000005 , 0x00000007 
+ 00024790  0x000066d0 call  0x000062a0 
+ 00024791  0x000066d1 fetch  0x00000003 , 0x0000465b 
+ 00024792  0x000066d2 istore  0x00000003 , 0x00000005 
+ 00024793  0x000066d3 branch  0x000062b2 
+ 00024794  0x000066d8 rtn 
+ 00024795  0x000066da force  0x00000009 , 0x00000007 
+ 00024796  0x000066db call  0x000062a0 
+ 00024797  0x000066dc fetch  0x00000001 , 0x00000095 
+ 00024798  0x000066dd istore  0x00000001 , 0x00000005 
+ 00024799  0x000066de fetch  0x00000002 , 0x00000096 
+ 00024800  0x000066df istore  0x00000002 , 0x00000005 
+ 00024801  0x000066e0 fetch  0x00000004 , 0x00000091 
+ 00024802  0x000066e1 istore  0x00000004 , 0x00000005 
+ 00024803  0x000066e2 branch  0x000062b0 
+ 00024804  0x000066e5 force  0x00000011 , 0x0000003f 
+ 00024805  0x000066e6 call  0x00006298 
+ 00024806  0x000066e7 fetch  0x00000001 , 0x00000049 
+ 00024807  0x000066e8 copy  0x0000003f , 0x00000002 
+ 00024808  0x000066e9 beq  0x00000000 , 0x000060ec 
+ 00024809  0x000066ea beq  0x0000000e , 0x000060ec 
+ 00024810  0x000066eb beq  0x0000001c , 0x000060ec 
+ 00024811  0x000066ec rtn 
+ 00024812  0x000066ee istore  0x00000001 , 0x00000005 
+ 00024813  0x000066ef fetch  0x00000001 , 0x00004515 
+ 00024814  0x000066f0 istore  0x00000001 , 0x00000005 
+ 00024815  0x000066f1 arg  0x0000000e , 0x00000039 
+ 00024816  0x000066f2 setarg  0x00004516 
+ 00024817  0x000066f3 iadd  0x00000002 , 0x00000006 
+ 00024818  0x000066f4 call  0x00007f01 
+ 00024819  0x000066f5 branch  0x000062b0 
+ 00024820  0x000066f9 force  0x00000003 , 0x0000003f 
+ 00024821  0x000066fa call  0x00006298 
+ 00024822  0x000066fb setarg  0x00000114 
+ 00024823  0x000066fc istore  0x00000002 , 0x00000005 
+ 00024824  0x000066fd branch  0x000062b0 
+ 00024825  0x00006701 force  0x00000003 , 0x0000003f 
+ 00024826  0x00006702 call  0x00006298 
+ 00024827  0x00006703 fetch  0x00000004 , 0x00000165 
+ 00024828  0x00006704 isub  0x00000022 , 0x0000003f 
+ 00024829  0x00006705 branch  0x000060ff , 0x00000029 
+ 00024830  0x00006706 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00024831  0x00006709 rshift2  0x0000003f , 0x0000003f 
+ 00024832  0x0000670a set0  0x0000000f , 0x0000003f 
+ 00024833  0x0000670b istore  0x00000002 , 0x00000005 
+ 00024834  0x0000670c branch  0x000062b0 
+ 00024835  0x0000670f force  0x00000006 , 0x0000003f 
+ 00024836  0x00006710 call  0x00006298 
+ 00024837  0x00006711 fetch  0x00000005 , 0x00004510 
+ 00024838  0x00006712 istore  0x00000005 , 0x00000005 
+ 00024839  0x00006713 branch  0x000062b0 
+ 00024840  0x00006716 force  0x00000009 , 0x0000003f 
+ 00024841  0x00006717 call  0x00006298 
+ 00024842  0x00006718 fetch  0x00000008 , 0x00004098 
+ 00024843  0x00006719 istore  0x00000008 , 0x00000005 
+ 00024844  0x0000671a branch  0x000062b0 
+ 00024845  0x00006722 force  0x0000000c , 0x00000007 
+ 00024846  0x00006723 call  0x000062a0 
+ 00024847  0x00006724 setarg  0x00000001 
+ 00024848  0x00006725 istore  0x00000001 , 0x00000005 
+ 00024849  0x00006726 fetch  0x00000002 , 0x000004ce 
+ 00024850  0x00006727 istore  0x00000002 , 0x00000005 
+ 00024851  0x00006728 setarg  0x00000000 
+ 00024852  0x00006729 istore  0x00000003 , 0x00000005 
+ 00024853  0x0000672a setarg  0x00000000 
+ 00024854  0x0000672b istore  0x00000004 , 0x00000005 
+ 00024855  0x0000672c branch  0x000062b2 
+ 00024856  0x0000672f force  0x00000003 , 0x00000007 
+ 00024857  0x00006730 call  0x000062a0 
+ 00024858  0x00006731 fetch  0x00000001 , 0x0000415a 
+ 00024859  0x00006732 istore  0x00000001 , 0x00000005 
+ 00024860  0x00006733 disable  0x00000028 
+ 00024861  0x00006734 call  0x000062b2 
+ 00024862  0x00006735 nrtn  0x00000028 
+ 00024863  0x00006736 nrtn  0x00000029 
+ 00024864  0x00006737 fetch  0x00000001 , 0x000040d8 
+ 00024865  0x00006738 rtnbit0  0x00000000 
+ 00024866  0x00006739 call  0x00006132 
+ 00024867  0x0000673a branch  0x0000613c 
+ 00024868  0x0000673e bpatchx  0x00000084 , 0x00004030 
+ 00024869  0x0000673f fetch  0x00000001 , 0x0000409e 
+ 00024870  0x00006740 set1  0x00000003 , 0x0000003f 
+ 00024871  0x00006741 store  0x00000001 , 0x0000409e 
+ 00024872  0x00006742 setarg  0x00000101 
+ 00024873  0x00006743 store  0x00000002 , 0x000004ce 
+ 00024874  0x00006744 rtn 
+ 00024875  0x00006747 bpatchx  0x00000085 , 0x00004030 
+ 00024876  0x00006748 fetch  0x00000001 , 0x0000409e 
+ 00024877  0x00006749 set0  0x00000003 , 0x0000003f 
+ 00024878  0x0000674a store  0x00000001 , 0x0000409e 
+ 00024879  0x0000674b setarg  0x00000000 
+ 00024880  0x0000674c store  0x00000002 , 0x000004ce 
+ 00024881  0x0000674d rtn 
+ 00024882  0x00006750 jam  0x00000003 , 0x000040d8 
+ 00024883  0x00006751 setarg  0x00000000 
+ 00024884  0x00006752 store  0x00000004 , 0x00004142 
+ 00024885  0x00006753 arg  0x000040da , 0x00000005 
+ 00024886  0x00006754 call  0x00006140 
+ 00024887  0x00006755 arg  0x000040e7 , 0x00000005 
+ 00024888  0x00006756 call  0x00006140 
+ 00024889  0x00006757 arg  0x00004146 , 0x00000005 
+ 00024890  0x00006758 call  0x00006140 
+ 00024891  0x00006759 branch  0x00006147 
+ 00024892  0x0000675b arg  0x000040e7 , 0x00000005 
+ 00024893  0x0000675c call  0x00006140 
+ 00024894  0x0000675d call  0x00006147 
+ 00024895  0x0000675e branch  0x0000614a 
+ 00024896  0x00006762 setarg  0x00ffffff 
+ 00024897  0x00006763 istore  0x00000003 , 0x00000005 
+ 00024898  0x00006764 istore  0x00000003 , 0x00000005 
+ 00024899  0x00006765 istore  0x00000003 , 0x00000005 
+ 00024900  0x00006766 setarg  0x0000007f 
+ 00024901  0x00006767 istore  0x00000001 , 0x00000005 
+ 00024902  0x00006768 rtn 
+ 00024903  0x0000676a setarg  0x00000000 
+ 00024904  0x0000676b store  0x00000002 , 0x000040d6 
+ 00024905  0x0000676c rtn 
+ 00024906  0x0000676e fetch  0x00000001 , 0x000040d8 
+ 00024907  0x0000676f set1  0x00000002 , 0x0000003f 
+ 00024908  0x00006770 store  0x00000001 , 0x000040d8 
+ 00024909  0x00006771 rtn 
+ 00024910  0x00006775 force  0x00000002 , 0x00000007 
+ 00024911  0x00006776 call  0x000062a0 
+ 00024912  0x00006777 nbranch  0x000062b0 , 0x00000029 
+ 00024913  0x00006779 branch  0x000062b2 
+ 00024914  0x0000677e force  0x00000002 , 0x0000003f 
+ 00024915  0x0000677f call  0x00006298 
+ 00024916  0x00006780 fetch  0x00000001 , 0x000004ca 
+ 00024917  0x00006781 istore  0x00000001 , 0x00000005 
+ 00024918  0x00006782 call  0x000062b2 
+ 00024919  0x00006784 fetch  0x00000001 , 0x0000004b 
+ 00024920  0x00006785 set1  0x00000003 , 0x0000003f 
+ 00024921  0x00006786 store  0x00000001 , 0x0000004b 
+ 00024922  0x00006787 jam  0x00000032 , 0x00000072 
+ 00024923  0x00006788 rtn 
+ 00024924  0x0000678c force  0x00000001 , 0x0000003f 
+ 00024925  0x0000678d call  0x00006298 
+ 00024926  0x0000678e branch  0x000062b2 
+ 00024927  0x00006790 force  0x00000001 , 0x0000003f 
+ 00024928  0x00006791 call  0x00006298 
+ 00024929  0x00006792 branch  0x000062b0 
+ 00024930  0x00006796 force  0x00000002 , 0x0000003f 
+ 00024931  0x00006797 call  0x00006298 
+ 00024932  0x00006798 fetch  0x00000001 , 0x0000004c 
+ 00024933  0x00006799 isolate0  0x00000002 , 0x0000003f 
+ 00024934  0x0000679a setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024935  0x0000679b and_into  0x00000001 , 0x0000003f 
+ 00024936  0x0000679c istore  0x00000001 , 0x00000005 
+ 00024937  0x0000679d branch  0x000062b2 
+ 00024938  0x000067a1 force  0x00000003 , 0x0000003f 
+ 00024939  0x000067a2 call  0x00006298 
+ 00024940  0x000067a3 fetch  0x00000002 , 0x00000051 
+ 00024941  0x000067a4 istore  0x00000002 , 0x00000005 
+ 00024942  0x000067a5 branch  0x000062b2 
+ 00024943  0x000067a8 jam  0x000000fa , 0x00000072 
+ 00024944  0x000067a9 force  0x00000002 , 0x0000003f 
+ 00024945  0x000067aa call  0x00006298 
+ 00024946  0x000067ab fetch  0x00000001 , 0x00000053 
+ 00024947  0x000067ac istore  0x00000001 , 0x00000005 
+ 00024948  0x000067ad branch  0x000062b2 
+ 00024949  0x000067b0 force  0x0000000a , 0x0000003f 
+ 00024950  0x000067b1 call  0x00006298 
+ 00024951  0x000067b2 arg  0x00000152 , 0x00000006 
+ 00024952  0x000067b3 force  0x00000009 , 0x00000039 
+ 00024953  0x000067b5 ifetch  0x00000001 , 0x00000006 
+ 00024954  0x000067b6 xor_into  0x00000055 , 0x0000003f 
+ 00024955  0x000067b7 istore  0x00000001 , 0x00000005 
+ 00024956  0x000067b8 loop  0x00006179 
+ 00024957  0x000067b9 branch  0x000062b2 
+ 00024958  0x000067bc branch  0x000062b2 
+ 00024959  0x000067be branch  0x000062b2 
+ 00024960  0x000067c1 rtn  0x00000029 
+ 00024961  0x000067c2 call  0x0000282d 
+ 00024962  0x000067c3 force  0x00000009 , 0x0000003f 
+ 00024963  0x000067c4 call  0x00006298 
+ 00024964  0x000067c5 fetch  0x00000002 , 0x00000171 
+ 00024965  0x000067c6 istore  0x00000002 , 0x00000005 
+ 00024966  0x000067c7 fetch  0x00000003 , 0x000040a0 
+ 00024967  0x000067c8 istore  0x00000003 , 0x00000005 
+ 00024968  0x000067c9 fetch  0x00000001 , 0x000040a3 
+ 00024969  0x000067ca istore  0x00000001 , 0x00000005 
+ 00024970  0x000067cb fetch  0x00000002 , 0x000040a4 
+ 00024971  0x000067cc istore  0x00000002 , 0x00000005 
+ 00024972  0x000067cd bmark0  0x00000003 , 0x00006191 
+ 00024973  0x000067ce set0  0x00000003 , 0x00000000 
+ 00024974  0x000067cf call  0x000062b2 
+ 00024975  0x000067d0 jam  0x00000013 , 0x0000007c 
+ 00024976  0x000067d1 rtn 
+ 00024977  0x000067d3 call  0x000062b0 
+ 00024978  0x000067d4 jam  0x00000003 , 0x0000007c 
+ 00024979  0x000067d5 jam  0x00000013 , 0x0000007d 
+ 00024980  0x000067d6 rtn 
+ 00024981  0x000067d9 arg  0x00000200 , 0x00000002 
+ 00024982  0x000067da branch  0x00006199 , 0x00000029 
+ 00024983  0x000067db deposit  0x00000028 
+ 00024984  0x000067dc branch  0x0000619a 
+ 00024985  0x000067de deposit  0x00000022 
+ 00024986  0x000067e0 deposit  0x00000021 
+ 00024987  0x000067e1 iadd  0x00000002 , 0x0000003f 
+ 00024988  0x000067e2 and_into  0x000001fc , 0x0000003f 
+ 00024989  0x000067e3 store  0x00000004 , 0x00000034 
+ 00024990  0x000067e4 force  0x00000005 , 0x0000003f 
+ 00024991  0x000067e5 call  0x00006298 
+ 00024992  0x000067e6 fetch  0x00000004 , 0x00000034 
+ 00024993  0x000067e7 rshift  0x0000003f , 0x0000003f 
+ 00024994  0x000067e8 istore  0x00000004 , 0x00000005 
+ 00024995  0x000067e9 branch  0x000062b2 
+ 00024996  0x000067ec force  0x0000000a , 0x0000003f 
+ 00024997  0x000067ed call  0x00006298 
+ 00024998  0x000067ee arg  0x000004d9 , 0x00000006 
+ 00024999  0x000067ef ifetch  0x00000009 , 0x00000006 
+ 00025000  0x000067f0 istore  0x00000009 , 0x00000005 
+ 00025001  0x000067f1 branch  0x000062b2 
+ 00025002  0x000067f6 force  0x00000003 , 0x0000003f 
+ 00025003  0x000067f7 call  0x00006298 
+ 00025004  0x000067f8 setarg  0x00000114 
+ 00025005  0x000067f9 istore  0x00000002 , 0x00000005 
+ 00025006  0x000067fa branch  0x000062b2 
+ 00025007  0x000067fe force  0x00000001 , 0x0000003f 
+ 00025008  0x000067ff call  0x00006298 
+ 00025009  0x00006808 branch  0x000062b2 
+ 00025010  0x0000680c force  0x00000002 , 0x0000003f 
+ 00025011  0x0000680d call  0x00006298 
+ 00025012  0x0000680e fetch  0x00000001 , 0x000040d0 
+ 00025013  0x0000680f istore  0x00000001 , 0x00000005 
+ 00025014  0x00006810 branch  0x000062b2 
+ 00025015  0x00006814 force  0x00000002 , 0x0000003f 
+ 00025016  0x00006815 call  0x00006298 
+ 00025017  0x00006816 setarg  0x00000005 
+ 00025018  0x00006817 istore  0x00000001 , 0x00000005 
+ 00025019  0x00006818 branch  0x000062b2 
+ 00025020  0x0000681c force  0x00000002 , 0x0000003f 
+ 00025021  0x0000681d call  0x00006298 
+ 00025022  0x0000681e setarg  0x00000000 
+ 00025023  0x0000681f istore  0x00000001 , 0x00000005 
+ 00025024  0x00006820 branch  0x000062b2 
+ 00025025  0x00006824 jam  0x0000002e , 0x0000007c 
+ 00025026  0x00006825 rtn 
+ 00025027  0x00006827 fetch  0x00000001 , 0x00004092 
+ 00025028  0x00006828 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00025029  0x00006829 call  0x000061c1 , 0x00000005 
+ 00025030  0x0000682a fetch  0x00000001 , 0x00000030 
+ 00025031  0x0000682b set1  0x00000004 , 0x0000003f 
+ 00025032  0x0000682c store  0x00000001 , 0x00000030 
+ 00025033  0x0000682d copy  0x00000022 , 0x0000003f 
+ 00025034  0x0000682e store  0x00000004 , 0x000004e9 
+ 00025035  0x0000682f fetch  0x00000001 , 0x000004d1 
+ 00025036  0x00006830 bbit1  0x00000003 , 0x000061d4 
+ 00025037  0x00006831 set1  0x00000003 , 0x0000003f 
+ 00025038  0x00006832 store  0x00000001 , 0x000004d1 
+ 00025039  0x00006833 jam  0x00000005 , 0x00000a99 
+ 00025040  0x00006834 call  0x00007d86 
+ 00025041  0x00006835 force  0x00000001 , 0x0000003f 
+ 00025042  0x00006836 call  0x00006298 
+ 00025043  0x00006837 branch  0x000062b2 
+ 00025044  0x00006839 jam  0x00000000 , 0x00000048 
+ 00025045  0x0000683a rtn 
+ 00025046  0x0000683d force  0x00000006 , 0x0000003f 
+ 00025047  0x0000683e call  0x00006298 
+ 00025048  0x0000683f fetch  0x00000005 , 0x00004510 
+ 00025049  0x00006840 istore  0x00000005 , 0x00000005 
+ 00025050  0x00006841 branch  0x000062b2 
+ 00025051  0x00006844 force  0x00000009 , 0x0000003f 
+ 00025052  0x00006845 call  0x00006298 
+ 00025053  0x00006846 fetch  0x00000008 , 0x00004098 
+ 00025054  0x00006847 istore  0x00000008 , 0x00000005 
+ 00025055  0x00006848 branch  0x000062b2 
+ 00025056  0x0000684b jam  0x00000001 , 0x000009b1 
+ 00025057  0x0000684c fetch  0x00000001 , 0x000045b1 
+ 00025058  0x0000684d rtnne  0x00000001 
+ 00025059  0x0000684e jam  0x00000013 , 0x000009af 
+ 00025060  0x0000684f rtn 
+ 00025061  0x00006852 call  0x000062ef 
+ 00025062  0x00006853 jam  0x00000099 , 0x0000007c 
+ 00025063  0x00006854 jam  0x00000003 , 0x000009af 
+ 00025064  0x00006855 rtn 
+ 00025065  0x00006859 call  0x000062ef 
+ 00025066  0x0000685a jam  0x0000003d , 0x0000007c 
+ 00025067  0x0000685b jam  0x00000007 , 0x000009af 
+ 00025068  0x0000685c rtn 
+ 00025069  0x0000685f arg  0x00000a4e , 0x00000011 
+ 00025070  0x00006860 arg  0x00000a6e , 0x00000012 
+ 00025071  0x00006861 arg  0x00000010 , 0x00000039 
+ 00025072  0x00006862 call  0x00007f88 
+ 00025073  0x00006863 branch  0x000061f7 , 0x00000005 
+ 00025074  0x00006864 jam  0x00000000 , 0x000009af 
+ 00025075  0x00006865 call  0x000076da 
+ 00025076  0x00006866 jam  0x00000024 , 0x0000007e 
+ 00025077  0x00006867 jam  0x00000040 , 0x0000007d 
+ 00025078  0x00006868 branch  0x00005d53 
+ 00025079  0x0000686a jam  0x0000000a , 0x000009af 
+ 00025080  0x0000686b call  0x000076d8 
+ 00025081  0x0000686c jam  0x00000040 , 0x0000007d 
+ 00025082  0x0000686d branch  0x00005e38 
+ 00025083  0x00006872 jam  0x00000040 , 0x0000007c 
+ 00025084  0x00006873 rtn 
+ 00025085  0x0000687a jam  0x0000003d , 0x0000007c 
+ 00025086  0x0000687c rtn 
+ 00025087  0x00006883 jam  0x00000000 , 0x000009b6 
+ 00025088  0x00006884 force  0x00000004 , 0x0000003f 
+ 00025089  0x00006885 call  0x00006298 
+ 00025090  0x00006886 force  0x00000001 , 0x0000003f 
+ 00025091  0x00006887 istore  0x00000001 , 0x00000005 
+ 00025092  0x00006888 force  0x00000001 , 0x0000003f 
+ 00025093  0x00006889 istore  0x00000001 , 0x00000005 
+ 00025094  0x0000688a force  0x00000030 , 0x0000003f 
+ 00025095  0x0000688b istore  0x00000001 , 0x00000005 
+ 00025096  0x0000688c call  0x000062fc 
+ 00025097  0x0000688d branch  0x000062b2 , 0x00000001 
+ 00025098  0x0000688e branch  0x000062b0 
+ 00025099  0x00006892 force  0x00000011 , 0x0000003f 
+ 00025100  0x00006893 call  0x00006298 
+ 00025101  0x00006894 fetch  0x00000001 , 0x000009b6 
+ 00025102  0x00006895 arg  0x0000462a , 0x00000006 
+ 00025103  0x00006896 iadd  0x00000006 , 0x00000006 
+ 00025104  0x00006897 ifetch  0x00000008 , 0x00000006 
+ 00025105  0x00006898 istore  0x00000008 , 0x00000005 
+ 00025106  0x00006899 ifetch  0x00000008 , 0x00000006 
+ 00025107  0x0000689a istore  0x00000008 , 0x00000005 
+ 00025108  0x0000689b fetch  0x00000001 , 0x000009b6 
+ 00025109  0x0000689c increase  0x00000010 , 0x0000003f 
+ 00025110  0x0000689d store  0x00000001 , 0x000009b6 
+ 00025111  0x0000689e call  0x000062fc 
+ 00025112  0x0000689f branch  0x000062b2 , 0x00000001 
+ 00025113  0x000068a0 branch  0x000062b0 
+ 00025114  0x000068a4 jam  0x00000006 , 0x000009ae 
+ 00025115  0x000068a5 jam  0x0000003f , 0x0000007c 
+ 00025116  0x000068a6 rtn 
+ 00025117  0x000068aa force  0x00000011 , 0x0000003f 
+ 00025118  0x000068ab call  0x00006298 
+ 00025119  0x000068ac arg  0x00000a4e , 0x00000006 
+ 00025120  0x000068ad ifetch  0x00000008 , 0x00000006 
+ 00025121  0x000068ae istore  0x00000008 , 0x00000005 
+ 00025122  0x000068af ifetch  0x00000008 , 0x00000006 
+ 00025123  0x000068b0 istore  0x00000008 , 0x00000005 
+ 00025124  0x000068b1 branch  0x000062b0 
+ 00025125  0x000068b4 jam  0x00000040 , 0x0000007c 
+ 00025126  0x000068b5 rtn 
+ 00025127  0x000068b9 call  0x000062fc 
+ 00025128  0x000068ba call  0x00007612 , 0x00000001 
+ 00025129  0x000068bb force  0x00000011 , 0x0000003f 
+ 00025130  0x000068bc call  0x00006298 
+ 00025131  0x000068bd arg  0x00000a1e , 0x00000006 
+ 00025132  0x000068be ifetch  0x00000008 , 0x00000006 
+ 00025133  0x000068bf istore  0x00000008 , 0x00000005 
+ 00025134  0x000068c0 ifetch  0x00000008 , 0x00000006 
+ 00025135  0x000068c1 istore  0x00000008 , 0x00000005 
+ 00025136  0x000068c2 call  0x000062fc 
+ 00025137  0x000068c3 nbranch  0x000062b0 , 0x00000001 
+ 00025138  0x000068c4 branch  0x000062b2 , 0x00000001 
+ 00025139  0x000068c8 jam  0x0000000f , 0x000009af 
+ 00025140  0x000068ca call  0x000062ef 
+ 00025141  0x000068cb jam  0x0000000b , 0x0000007c 
+ 00025142  0x000068cc call  0x00006307 
+ 00025143  0x000068cd branch  0x0000764e , 0x00000001 
+ 00025144  0x000068ce branch  0x00007658 
+ 00025145  0x000068d0 call  0x000062eb 
+ 00025146  0x000068d2 jam  0x00000041 , 0x0000007c 
+ 00025147  0x000068d3 rtn 
+ 00025148  0x000068d6 force  0x00000011 , 0x0000003f 
+ 00025149  0x000068d7 call  0x00006298 
+ 00025150  0x000068d8 arg  0x00000a4e , 0x00000006 
+ 00025151  0x000068d9 ifetch  0x00000008 , 0x00000006 
+ 00025152  0x000068da istore  0x00000008 , 0x00000005 
+ 00025153  0x000068db ifetch  0x00000008 , 0x00000006 
+ 00025154  0x000068dc istore  0x00000008 , 0x00000005 
+ 00025155  0x000068dd call  0x000062fc 
+ 00025156  0x000068de nbranch  0x000062b0 , 0x00000001 
+ 00025157  0x000068df branch  0x000062b2 , 0x00000001 
+ 00025158  0x000068e2 force  0x00000003 , 0x0000003f 
+ 00025159  0x000068e3 call  0x00006298 
+ 00025160  0x000068e4 setarg  0x0000fffe 
+ 00025161  0x000068e5 istore  0x00000002 , 0x00000005 
+ 00025162  0x000068e6 branch  0x000062b0 
+ 00025163  0x000068e9 branch  0x000062b2 
+ 00025164  0x000068eb branch  0x000062b2 
+ 00025165  0x000068ed branch  0x000062b2 
+ 00025166  0x000068ef branch  0x000062b2 
+ 00025167  0x000068f5 call  0x0000630b 
+ 00025168  0x000068f6 arg  0x000040a0 , 0x00000011 
+ 00025169  0x000068f7 call  0x00006311 
+ 00025170  0x000068f8 force  0x00000011 , 0x0000003f 
+ 00025171  0x000068f9 call  0x00006298 
+ 00025172  0x000068fa arg  0x00000582 , 0x00000011 
+ 00025173  0x000068fb arg  0x00000562 , 0x00000012 
+ 00025174  0x000068fc call  0x00007352 
+ 00025175  0x000068fd nbranch  0x000062a7 , 0x00000029 
+ 00025176  0x000068fe branch  0x000062ad 
+ 00025177  0x00006901 call  0x0000630b 
+ 00025178  0x00006902 arg  0x00000040 , 0x00000011 
+ 00025179  0x00006903 call  0x00007255 
+ 00025180  0x00006905 force  0x00000011 , 0x0000003f 
+ 00025181  0x00006906 call  0x00006298 
+ 00025182  0x00006907 arg  0x00000562 , 0x00000006 
+ 00025183  0x00006908 call  0x00007ebf 
+ 00025184  0x00006909 fetch  0x00000001 , 0x00000055 
+ 00025185  0x0000690a beq  0x00000019 , 0x000062b2 
+ 00025186  0x0000690b beq  0x00000018 , 0x000062b2 
+ 00025187  0x0000690c branch  0x000062ad 
+ 00025188  0x0000690f fetch  0x00000001 , 0x000009b5 
+ 00025189  0x00006910 branch  0x0000626a , 0x00000034 
+ 00025190  0x00006911 call  0x000062fc 
+ 00025191  0x00006912 call  0x000062ef , 0x00000001 
+ 00025192  0x00006913 ncall  0x000062eb , 0x00000001 
+ 00025193  0x00006914 branch  0x0000626b 
+ 00025194  0x00006916 call  0x000062ef 
+ 00025195  0x00006918 call  0x0000630b 
+ 00025196  0x00006919 branch  0x0000625c 
+ 00025197  0x0000691c arg  0x000040a0 , 0x00000011 
+ 00025198  0x0000691d call  0x00007288 
+ 00025199  0x0000691e force  0x00000005 , 0x0000003f 
+ 00025200  0x0000691f call  0x00006298 
+ 00025201  0x00006920 fetch  0x00000004 , 0x00000592 
+ 00025202  0x00006921 istore  0x00000004 , 0x00000005 
+ 00025203  0x00006922 arg  0x000004d5 , 0x00000002 
+ 00025204  0x00006923 call  0x000062e2 
+ 00025205  0x00006924 call  0x00007386 
+ 00025206  0x00006925 call  0x000062fc 
+ 00025207  0x00006926 branch  0x0000627c , 0x00000001 
+ 00025208  0x00006927 jam  0x00000001 , 0x000004d8 
+ 00025209  0x00006928 fetch  0x00000001 , 0x000009b5 
+ 00025210  0x00006929 rtn  0x00000034 
+ 00025211  0x0000692a jam  0x0000000b , 0x0000007c 
+ 00025212  0x0000692c fetch  0x00000001 , 0x000041bd 
+ 00025213  0x0000692d rtn  0x00000034 
+ 00025214  0x0000692f call  0x000062fc 
+ 00025215  0x00006930 nbranch  0x00006284 , 0x00000001 
+ 00025216  0x00006931 fetch  0x00000001 , 0x000004d7 
+ 00025217  0x00006932 rtn  0x00000034 
+ 00025218  0x00006933 jam  0x0000000f , 0x0000007c 
+ 00025219  0x00006934 rtn 
+ 00025220  0x00006936 rtnmark0  0x00000021 
+ 00025221  0x00006937 set0  0x00000021 , 0x00000000 
+ 00025222  0x00006938 jam  0x0000000f , 0x0000007c 
+ 00025223  0x00006939 rtn 
+ 00025224  0x0000693e call  0x0000630b 
+ 00025225  0x0000693f call  0x0000728b 
+ 00025226  0x00006940 force  0x00000011 , 0x0000003f 
+ 00025227  0x00006941 call  0x00006298 
+ 00025228  0x00006942 arg  0x00000562 , 0x00000006 
+ 00025229  0x00006943 call  0x00007ebf 
+ 00025230  0x00006944 branch  0x000062ad 
+ 00025231  0x00006947 force  0x00000001 , 0x0000003f 
+ 00025232  0x00006948 call  0x00006298 
+ 00025233  0x00006949 branch  0x000062ad 
+ 00025234  0x0000694c force  0x00000002 , 0x0000003f 
+ 00025235  0x0000694d call  0x00006298 
+ 00025236  0x0000694e force  0x00000010 , 0x0000003f 
+ 00025237  0x0000694f istore  0x00000001 , 0x00000005 
+ 00025238  0x00006950 store  0x00000001 , 0x00000054 
+ 00025239  0x00006951 branch  0x000062ad 
+ 00025240  0x00006955 lshift3  0x0000003f , 0x0000003f 
+ 00025241  0x00006956 or_into  0x00000007 , 0x0000003f 
+ 00025242  0x00006957 store  0x00000001 , 0x000004b6 
+ 00025243  0x00006958 arg  0x00000011 , 0x00000039 
+ 00025244  0x00006959 arg  0x000004b8 , 0x00000005 
+ 00025245  0x0000695a call  0x00007ed4 
+ 00025246  0x0000695b arg  0x000004b8 , 0x00000005 
+ 00025247  0x0000695c rtn 
+ 00025248  0x0000695f and  0x0000003f , 0x0000007f , 0x00000011 
+ 00025249  0x00006960 jam  0x0000007f , 0x00000048 
+ 00025250  0x00006961 deposit  0x00000007 
+ 00025251  0x00006962 call  0x00006298 
+ 00025252  0x00006963 deposit  0x00000011 
+ 00025253  0x00006964 istore  0x00000001 , 0x00000005 
+ 00025254  0x00006965 rtn 
+ 00025255  0x00006968 fetch  0x00000001 , 0x00000048 
+ 00025256  0x00006969 lshift  0x0000003f , 0x0000003f 
+ 00025257  0x0000696a fetcht  0x00000001 , 0x0000004c 
+ 00025258  0x0000696b isolate1  0x00000001 , 0x00000002 
+ 00025259  0x0000696c setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025260  0x0000696d branch  0x000062b7 
+ 00025261  0x00006971 fetcht  0x00000001 , 0x0000004c 
+ 00025262  0x00006972 and_into  0x00000001 , 0x00000002 
+ 00025263  0x00006973 branch  0x000062b3 
+ 00025264  0x00006976 force  0x00000000 , 0x00000002 
+ 00025265  0x00006977 branch  0x000062b3 
+ 00025266  0x0000697a force  0x00000001 , 0x00000002 
+ 00025267  0x0000697c fetch  0x00000001 , 0x00000048 
+ 00025268  0x0000697d lshift  0x0000003f , 0x0000003f 
+ 00025269  0x0000697e setflag  0x00000029 , 0x00000000 , 0x0000003f 
+ 00025270  0x0000697f ixor  0x00000002 , 0x0000003f 
+ 00025271  0x00006981 store  0x00000001 , 0x000004b7 
+ 00025272  0x00006982 jam  0x00000000 , 0x00000048 
+ 00025273  0x00006983 call  0x000062c7 
+ 00025274  0x00006984 enable  0x00000028 
+ 00025275  0x00006985 rtn 
+ 00025276  0x00006989 fetch  0x00000001 , 0x0000007c 
+ 00025277  0x0000698a rtn  0x00000034 
+ 00025278  0x0000698b call  0x000062c1 
+ 00025279  0x0000698c fetch  0x00000001 , 0x0000007c 
+ 00025280  0x0000698d rtn 
+ 00025281  0x00006990 bpatchx  0x00000086 , 0x00004030 
+ 00025282  0x00006991 fetch  0x00000001 , 0x00000048 
+ 00025283  0x00006992 branch  0x000062c7 , 0x00000034 
+ 00025284  0x00006993 fetch  0x00000001 , 0x00000078 
+ 00025285  0x00006994 nrtn  0x00000034 
+ 00025286  0x00006995 branch  0x000062d1 
+ 00025287  0x00006997 fetch  0x00000001 , 0x00000078 
+ 00025288  0x00006998 branch  0x000062d7 , 0x00000034 
+ 00025289  0x00006999 fetch  0x00000003 , 0x00000078 
+ 00025290  0x0000699a store  0x00000003 , 0x00000048 
+ 00025291  0x0000699b fetcht  0x00000001 , 0x0000007b 
+ 00025292  0x0000699c fetch  0x00000001 , 0x0000004c 
+ 00025293  0x0000699d set0  0x00000001 , 0x0000003f 
+ 00025294  0x0000699e ior  0x00000002 , 0x0000003f 
+ 00025295  0x0000699f store  0x00000001 , 0x0000004c 
+ 00025296  0x000069a0 jam  0x00000000 , 0x00000078 
+ 00025297  0x000069a2 fetch  0x00000001 , 0x0000007c 
+ 00025298  0x000069a3 rtn  0x00000034 
+ 00025299  0x000069a4 fetch  0x00000004 , 0x0000007c 
+ 00025300  0x000069a5 store  0x00000004 , 0x00000078 
+ 00025301  0x000069a6 jam  0x00000000 , 0x0000007c 
+ 00025302  0x000069a7 rtn 
+ 00025303  0x000069a9 fetch  0x00000001 , 0x0000007c 
+ 00025304  0x000069aa rtn  0x00000034 
+ 00025305  0x000069ab fetch  0x00000003 , 0x0000007c 
+ 00025306  0x000069ac store  0x00000003 , 0x00000048 
+ 00025307  0x000069ad fetcht  0x00000001 , 0x0000007f 
+ 00025308  0x000069ae fetch  0x00000001 , 0x0000004c 
+ 00025309  0x000069af set0  0x00000001 , 0x0000003f 
+ 00025310  0x000069b0 ior  0x00000002 , 0x0000003f 
+ 00025311  0x000069b1 store  0x00000001 , 0x0000004c 
+ 00025312  0x000069b2 jam  0x00000000 , 0x0000007c 
+ 00025313  0x000069b3 rtn 
+ 00025314  0x000069b7 bpatchx  0x00000087 , 0x00004030 
+ 00025315  0x000069b8 fetch  0x00000001 , 0x0000004c 
+ 00025316  0x000069b9 copy  0x0000003f , 0x00000013 
+ 00025317  0x000069ba ifetch  0x00000001 , 0x00000002 
+ 00025318  0x000069bb call  0x00005e52 
+ 00025319  0x000069bc call  0x000062a7 
+ 00025320  0x000069bd copy  0x00000013 , 0x0000003f 
+ 00025321  0x000069be store  0x00000001 , 0x0000004c 
+ 00025322  0x000069bf rtn 
+ 00025323  0x000069c2 fetcht  0x00000001 , 0x0000004c 
+ 00025324  0x000069c3 set0  0x00000000 , 0x00000002 
+ 00025325  0x000069c4 storet  0x00000001 , 0x0000004c 
+ 00025326  0x000069c5 rtn 
+ 00025327  0x000069c8 fetcht  0x00000001 , 0x0000004c 
+ 00025328  0x000069c9 set1  0x00000000 , 0x00000002 
+ 00025329  0x000069ca storet  0x00000001 , 0x0000004c 
+ 00025330  0x000069cb rtn 
+ 00025331  0x000069cf nsetflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025332  0x000069d0 fetcht  0x00000001 , 0x0000004c 
+ 00025333  0x000069d1 ixor  0x00000002 , 0x0000003f 
+ 00025334  0x000069d2 isolate1  0x00000001 , 0x0000003f 
+ 00025335  0x000069d3 rtn 
+ 00025336  0x000069d7 fetch  0x00000001 , 0x0000004c 
+ 00025337  0x000069d8 setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025338  0x000069d9 store  0x00000001 , 0x0000004c 
+ 00025339  0x000069da rtn 
+ 00025340  0x000069de fetch  0x00000001 , 0x000009b4 
+ 00025341  0x000069df compare  0x00000001 , 0x0000003f , 0x0000007f 
+ 00025342  0x000069e0 rtn 
+ 00025343  0x000069e2 fetch  0x00000001 , 0x000009b4 
+ 00025344  0x000069e3 set1  0x00000007 , 0x0000003f 
+ 00025345  0x000069e4 store  0x00000001 , 0x000009b4 
+ 00025346  0x000069e5 rtn 
+ 00025347  0x000069e7 fetch  0x00000001 , 0x000009b4 
+ 00025348  0x000069e8 set0  0x00000007 , 0x0000003f 
+ 00025349  0x000069e9 store  0x00000001 , 0x000009b4 
+ 00025350  0x000069ea rtn 
+ 00025351  0x000069ec fetch  0x00000001 , 0x000009b4 
+ 00025352  0x000069ed isolate1  0x00000007 , 0x0000003f 
+ 00025353  0x000069ee store  0x00000001 , 0x000009b4 
+ 00025354  0x000069ef rtn 
+ 00025355  0x000069f3 arg  0x00000562 , 0x00000005 
+ 00025356  0x000069f5 force  0x00000010 , 0x00000039 
+ 00025357  0x000069f8 random  0x0000003f 
+ 00025358  0x000069f9 istore  0x00000001 , 0x00000005 
+ 00025359  0x000069fa loop  0x0000630d 
+ 00025360  0x000069fb rtn 
+ 00025361  0x000069fe call  0x00007259 
+ 00025362  0x000069ff arg  0x000041be , 0x00000011 
+ 00025363  0x00006a00 arg  0x00000592 , 0x00000012 
+ 00025364  0x00006a01 ifetch  0x00000008 , 0x00000011 
+ 00025365  0x00006a02 fetcht  0x00000001 , 0x00000030 
+ 00025366  0x00006a03 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00025367  0x00006a04 storet  0x00000001 , 0x00000030 
+ 00025368  0x00006a05 copy  0x00000011 , 0x00000005 
+ 00025369  0x00006a06 call  0x00007352 
+ 00025370  0x00006a07 branch  0x000021c4 
+ 00025371  0x00006a0f bpatchx  0x00000088 , 0x00004031 
+ 00025372  0x00006a11 call  0x000062bc 
+ 00025373  0x00006a12 nrtn  0x00000034 
+ 00025374  0x00006a14 fetch  0x00000001 , 0x00000055 
+ 00025375  0x00006a15 rtn  0x00000034 
+ 00025376  0x00006a19 beq  0x00000004 , 0x0000636f 
+ 00025377  0x00006a1a beq  0x00000005 , 0x00006374 
+ 00025378  0x00006a1b beq  0x00000002 , 0x00006366 
+ 00025379  0x00006a1c beq  0x00000003 , 0x0000637c 
+ 00025380  0x00006a1d beq  0x0000000e , 0x00006369 
+ 00025381  0x00006a1e beq  0x00000006 , 0x00006398 
+ 00025382  0x00006a1f beq  0x00000007 , 0x000063b0 
+ 00025383  0x00006a20 beq  0x00000009 , 0x000063b1 
+ 00025384  0x00006a21 beq  0x0000000a , 0x000063ba 
+ 00025385  0x00006a22 beq  0x0000000b , 0x000063be 
+ 00025386  0x00006a23 beq  0x0000000c , 0x00006386 
+ 00025387  0x00006a24 beq  0x0000000d , 0x00006389 
+ 00025388  0x00006a25 beq  0x0000000f , 0x0000638f 
+ 00025389  0x00006a26 beq  0x00000012 , 0x00006359 
+ 00025390  0x00006a27 beq  0x00000013 , 0x0000637c 
+ 00025391  0x00006a28 beq  0x00000010 , 0x0000635c 
+ 00025392  0x00006a29 beq  0x00000014 , 0x00006356 
+ 00025393  0x00006a2a beq  0x00000015 , 0x0000637c 
+ 00025394  0x00006a2b beq  0x00000016 , 0x00006350 
+ 00025395  0x00006a2c beq  0x00000018 , 0x00006355 
+ 00025396  0x00006a2d beq  0x00000017 , 0x00006349 
+ 00025397  0x00006a2e beq  0x00000019 , 0x0000634f 
+ 00025398  0x00006a2f beq  0x0000001a , 0x0000633a 
+ 00025399  0x00006a30 beq  0x0000001b , 0x00006344 
+ 00025400  0x00006a31 jam  0x00000000 , 0x00000055 
+ 00025401  0x00006a33 rtn 
+ 00025402  0x00006a35 fetch  0x00000001 , 0x000004d1 
+ 00025403  0x00006a36 rtnbit0  0x00000002 
+ 00025404  0x00006a37 rtnbit0  0x00000003 
+ 00025405  0x00006a38 jam  0x00000000 , 0x00000055 
+ 00025406  0x00006a39 call  0x00006340 
+ 00025407  0x00006a3a branch  0x00006cef 
+ 00025408  0x00006a3d fetch  0x00000001 , 0x0000016d 
+ 00025409  0x00006a3e rtnbit0  0x00000001 
+ 00025410  0x00006a3f jam  0x0000000a , 0x00000055 
+ 00025411  0x00006a40 rtn 
+ 00025412  0x00006a43 arg  0x00000007 , 0x00000007 
+ 00025413  0x00006a44 call  0x00007f16 
+ 00025414  0x00006a45 nrtn  0x00000034 
+ 00025415  0x00006a46 jam  0x0000001a , 0x00000055 
+ 00025416  0x00006a47 rtn 
+ 00025417  0x00006a4a fetch  0x00000001 , 0x0000016d 
+ 00025418  0x00006a4b set0  0x00000000 , 0x0000003f 
+ 00025419  0x00006a4c store  0x00000001 , 0x0000016d 
+ 00025420  0x00006a4d jam  0x00000019 , 0x00000055 
+ 00025421  0x00006a4e jam  0x0000000b , 0x0000007c 
+ 00025422  0x00006a4f rtn 
+ 00025423  0x00006a51 rtn 
+ 00025424  0x00006a53 fetch  0x00000001 , 0x000004d4 
+ 00025425  0x00006a54 rtnne  0x00000002 
+ 00025426  0x00006a55 call  0x000063c0 
+ 00025427  0x00006a56 jam  0x00000018 , 0x00000055 
+ 00025428  0x00006a57 rtn 
+ 00025429  0x00006a5a rtn 
+ 00025430  0x00006a5c jam  0x00000015 , 0x00000055 
+ 00025431  0x00006a5d jam  0x00000083 , 0x0000007c 
+ 00025432  0x00006a5e rtn 
+ 00025433  0x00006a60 jam  0x00000013 , 0x00000055 
+ 00025434  0x00006a61 jam  0x00000025 , 0x0000007c 
+ 00025435  0x00006a62 rtn 
+ 00025436  0x00006a65 fetch  0x00000001 , 0x0000455b 
+ 00025437  0x00006a66 rtneq  0x00000000 
+ 00025438  0x00006a67 beq  0x00000001 , 0x00006364 
+ 00025439  0x00006a68 arg  0x00000006 , 0x00000007 
+ 00025440  0x00006a69 call  0x00007f16 
+ 00025441  0x00006a6a nrtn  0x00000034 
+ 00025442  0x00006a6b jam  0x00000000 , 0x0000455b 
+ 00025443  0x00006a6c branch  0x0000637d 
+ 00025444  0x00006a6e rtn  0x00000029 
+ 00025445  0x00006a6f branch  0x00006398 
+ 00025446  0x00006a72 jam  0x00000003 , 0x00000055 
+ 00025447  0x00006a73 jam  0x00000027 , 0x0000007c 
+ 00025448  0x00006a74 rtn 
+ 00025449  0x00006a76 jam  0x00000013 , 0x0000007c 
+ 00025450  0x00006a77 set1  0x00000003 , 0x00000000 
+ 00025451  0x00006a78 jam  0x00000005 , 0x00000055 
+ 00025452  0x00006a79 setarg  0x000001ff 
+ 00025453  0x00006a7a store  0x00000002 , 0x000004d2 
+ 00025454  0x00006a7b rtn 
+ 00025455  0x00006a7d jam  0x00000005 , 0x00000055 
+ 00025456  0x00006a7e jam  0x000000ff , 0x000004d2 
+ 00025457  0x00006a7f set0  0x00000022 , 0x00000000 
+ 00025458  0x00006a80 jam  0x00000033 , 0x0000007c 
+ 00025459  0x00006a81 branch  0x00005d04 
+ 00025460  0x00006a83 rtnmark1  0x00000022 
+ 00025461  0x00006a84 fetch  0x00000002 , 0x000004d2 
+ 00025462  0x00006a85 sub  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025463  0x00006a86 branch  0x0000637a , 0x00000005 
+ 00025464  0x00006a87 store  0x00000002 , 0x000004d2 
+ 00025465  0x00006a88 rtn 
+ 00025466  0x00006a8a jam  0x0000000e , 0x00000055 
+ 00025467  0x00006a8b rtn 
+ 00025468  0x00006a8e rtn 
+ 00025469  0x00006a91 fetch  0x00000001 , 0x000004d1 
+ 00025470  0x00006a92 rtnbit0  0x00000003 
+ 00025471  0x00006a93 rtnbit0  0x00000002 
+ 00025472  0x00006a94 fetch  0x00000001 , 0x0000016d 
+ 00025473  0x00006a95 set0  0x00000002 , 0x0000003f 
+ 00025474  0x00006a96 store  0x00000001 , 0x0000016d 
+ 00025475  0x00006a97 jam  0x00000013 , 0x0000007c 
+ 00025476  0x00006a98 jam  0x00000010 , 0x00000055 
+ 00025477  0x00006a99 rtn 
+ 00025478  0x00006a9c jam  0x0000000d , 0x00000055 
+ 00025479  0x00006a9d jam  0x00000031 , 0x0000007c 
+ 00025480  0x00006a9e rtn 
+ 00025481  0x00006aa1 fetch  0x00000001 , 0x000004d1 
+ 00025482  0x00006aa2 rtnbit0  0x00000002 
+ 00025483  0x00006aa3 jam  0x00000000 , 0x00000055 
+ 00025484  0x00006aa5 rtn 
+ 00025485  0x00006aa7 jam  0x00000006 , 0x00000055 
+ 00025486  0x00006aa8 rtn 
+ 00025487  0x00006aab fetch  0x00000001 , 0x000004d2 
+ 00025488  0x00006aac increase  0xffffffff , 0x0000003f 
+ 00025489  0x00006aad branch  0x00006394 , 0x00000034 
+ 00025490  0x00006aae store  0x00000001 , 0x000004d2 
+ 00025491  0x00006aaf rtn 
+ 00025492  0x00006ab1 jam  0x00000007 , 0x0000007c 
+ 00025493  0x00006ab2 jam  0x00000016 , 0x000004ca 
+ 00025494  0x00006ab3 jam  0x00000000 , 0x00000055 
+ 00025495  0x00006ab4 rtn 
+ 00025496  0x00006ab7 fetch  0x00000001 , 0x0000016d 
+ 00025497  0x00006ab8 bbit1  0x00000002 , 0x0000637d 
+ 00025498  0x00006ab9 bbit1  0x00000000 , 0x0000639d 
+ 00025499  0x00006abb jam  0x0000001a , 0x00000055 
+ 00025500  0x00006abc rtn 
+ 00025501  0x00006abe fetch  0x00000001 , 0x000041bd 
+ 00025502  0x00006abf branch  0x000063a9 , 0x00000034 
+ 00025503  0x00006ac0 fetch  0x00000001 , 0x000004d1 
+ 00025504  0x00006ac1 rtnbit0  0x00000003 
+ 00025505  0x00006ac2 rtnbit0  0x00000002 
+ 00025506  0x00006ac3 fetch  0x00000004 , 0x000004e9 
+ 00025507  0x00006ac4 arg  0x00000064 , 0x00000002 
+ 00025508  0x00006ac5 iadd  0x00000002 , 0x00000002 
+ 00025509  0x00006ac6 copy  0x00000022 , 0x0000003f 
+ 00025510  0x00006ac7 isub  0x00000002 , 0x0000003e 
+ 00025511  0x00006ac8 nrtn  0x00000002 
+ 00025512  0x00006ac9 branch  0x00006349 
+ 00025513  0x00006ace jam  0x00000016 , 0x00000055 
+ 00025514  0x00006acf jam  0x00000004 , 0x00004689 
+ 00025515  0x00006ad0 setarg  0x00003030 
+ 00025516  0x00006ad1 store  0x00000002 , 0x0000468a 
+ 00025517  0x00006ad2 istore  0x00000002 , 0x00000005 
+ 00025518  0x00006ad3 jam  0x00000002 , 0x000004d4 
+ 00025519  0x00006ad4 branch  0x00006350 
+ 00025520  0x00006ad7 rtn 
+ 00025521  0x00006ad9 fetch  0x00000001 , 0x0000016d 
+ 00025522  0x00006ada bbit1  0x00000001 , 0x000063b5 
+ 00025523  0x00006adb jam  0x0000001a , 0x00000055 
+ 00025524  0x00006adc rtn 
+ 00025525  0x00006adf fetch  0x00000001 , 0x0000016d 
+ 00025526  0x00006ae0 set0  0x00000001 , 0x0000003f 
+ 00025527  0x00006ae1 store  0x00000001 , 0x0000016d 
+ 00025528  0x00006ae2 jam  0x0000000f , 0x0000007c 
+ 00025529  0x00006ae3 rtn 
+ 00025530  0x00006ae6 fetch  0x00000001 , 0x000004d8 
+ 00025531  0x00006ae7 rtn  0x00000034 
+ 00025532  0x00006ae8 jam  0x00000000 , 0x00000055 
+ 00025533  0x00006ae9 branch  0x000063b5 
+ 00025534  0x00006aec jam  0x0000000c , 0x00000055 
+ 00025535  0x00006aed rtn 
+ 00025536  0x00006af0 fetch  0x00000001 , 0x0000004b 
+ 00025537  0x00006af1 bbit1  0x00000002 , 0x000063c5 
+ 00025538  0x00006af2 call  0x000062ef 
+ 00025539  0x00006af3 jam  0x00000008 , 0x0000007c 
+ 00025540  0x00006af4 branch  0x00004d04 
+ 00025541  0x00006af6 fetch  0x00000001 , 0x0000004b 
+ 00025542  0x00006af7 set0  0x00000002 , 0x0000003f 
+ 00025543  0x00006af8 store  0x00000001 , 0x0000004b 
+ 00025544  0x00006af9 call  0x00006001 
+ 00025545  0x00006afa call  0x000062f8 
+ 00025546  0x00006afb branch  0x00004d04 
+ 00025547  0x00006afe setarg  0x00000004 
+ 00025548  0x00006aff store  0x00000001 , 0x00004689 
+ 00025549  0x00006b00 setarg  0x00003030 
+ 00025550  0x00006b01 istore  0x00000002 , 0x00000005 
+ 00025551  0x00006b02 istore  0x00000002 , 0x00000005 
+ 00025552  0x00006b03 rtn 
+ 00025553  0x00006b0a bpatchx  0x0000008c , 0x00004031 
+ 00025554  0x00006b0b hfetch  0x00000001 , 0x00008073 
+ 00025555  0x00006b0c arg  0x00000006 , 0x00000002 
+ 00025556  0x00006b0d ior  0x00000002 , 0x0000003f 
+ 00025557  0x00006b0e hstore  0x00000001 , 0x00008073 
+ 00025558  0x00006b0f hfetch  0x00000001 , 0x00008077 
+ 00025559  0x00006b10 ior  0x00000002 , 0x0000003f 
+ 00025560  0x00006b11 hstore  0x00000001 , 0x00008077 
+ 00025561  0x00006b12 call  0x000063ee 
+ 00025562  0x00006b13 hfetch  0x00000001 , 0x00008077 
+ 00025563  0x00006b14 set0  0x00000001 , 0x0000003f 
+ 00025564  0x00006b15 set0  0x00000002 , 0x0000003f 
+ 00025565  0x00006b16 hstore  0x00000001 , 0x00008077 
+ 00025566  0x00006b17 nop  0x0000001e 
+ 00025567  0x00006b18 branch  0x000063f2 
+ 00025568  0x00006b1b hfetch  0x00000001 , 0x00008073 
+ 00025569  0x00006b1c arg  0x000000c0 , 0x00000002 
+ 00025570  0x00006b1d ior  0x00000002 , 0x0000003f 
+ 00025571  0x00006b1e hstore  0x00000001 , 0x00008073 
+ 00025572  0x00006b1f hfetch  0x00000001 , 0x00008077 
+ 00025573  0x00006b20 ior  0x00000002 , 0x0000003f 
+ 00025574  0x00006b21 hstore  0x00000001 , 0x00008077 
+ 00025575  0x00006b22 call  0x000063ee 
+ 00025576  0x00006b23 hfetch  0x00000001 , 0x00008077 
+ 00025577  0x00006b24 set0  0x00000006 , 0x0000003f 
+ 00025578  0x00006b25 set0  0x00000007 , 0x0000003f 
+ 00025579  0x00006b26 hstore  0x00000001 , 0x00008077 
+ 00025580  0x00006b27 nop  0x0000001e 
+ 00025581  0x00006b28 branch  0x000063f6 
+ 00025582  0x00006b2b hfetch  0x00000001 , 0x00008081 
+ 00025583  0x00006b2c and  0x0000003f , 0x000000fc , 0x0000003f 
+ 00025584  0x00006b2d hstore  0x00000001 , 0x00008081 
+ 00025585  0x00006b2e rtn 
+ 00025586  0x00006b30 hfetch  0x00000001 , 0x00008081 
+ 00025587  0x00006b31 or  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025588  0x00006b32 hstore  0x00000001 , 0x00008081 
+ 00025589  0x00006b33 rtn 
+ 00025590  0x00006b35 hfetch  0x00000001 , 0x00008081 
+ 00025591  0x00006b36 or  0x0000003f , 0x00000003 , 0x0000003f 
+ 00025592  0x00006b37 set0  0x00000004 , 0x0000003f 
+ 00025593  0x00006b38 hstore  0x00000001 , 0x00008081 
+ 00025594  0x00006b39 rtn 
+ 00025595  0x00006b3e copy  0x0000003f , 0x00000012 
+ 00025596  0x00006b3f call  0x0000640f 
+ 00025597  0x00006b40 nop  0x00000064 
+ 00025598  0x00006b41 copy  0x00000012 , 0x0000003f 
+ 00025599  0x00006b42 call  0x00006414 
+ 00025600  0x00006b43 copy  0x0000003f , 0x00000012 
+ 00025601  0x00006b44 call  0x00006411 
+ 00025602  0x00006b45 nop  0x00000064 
+ 00025603  0x00006b46 copy  0x00000012 , 0x0000003f 
+ 00025604  0x00006b47 rtn 
+ 00025605  0x00006b4a copy  0x0000003f , 0x00000012 
+ 00025606  0x00006b4b call  0x0000640f 
+ 00025607  0x00006b4c nop  0x00000064 
+ 00025608  0x00006b4d copy  0x00000012 , 0x0000003f 
+ 00025609  0x00006b4e call  0x00006413 
+ 00025610  0x00006b4f call  0x00006411 
+ 00025611  0x00006b50 nop  0x00000064 
+ 00025612  0x00006b51 rtn 
+ 00025613  0x00006b55 fetcht  0x00000001 , 0x00004214 
+ 00025614  0x00006b56 branch  0x0000680e 
+ 00025615  0x00006b5a fetcht  0x00000001 , 0x00004214 
+ 00025616  0x00006b5b branch  0x00006829 
+ 00025617  0x00006b5f fetcht  0x00000001 , 0x00004214 
+ 00025618  0x00006b60 branch  0x00006825 
+ 00025619  0x00006b64 branch  0x000064ec 
+ 00025620  0x00006b67 branch  0x000064f3 
+ 00025621  0x00006b6f nbranch  0x00006419 , 0x00000028 
+ 00025622  0x00006b70 hfetch  0x00000001 , 0x00008085 
+ 00025623  0x00006b71 or_into  0x00000002 , 0x0000003f 
+ 00025624  0x00006b72 hstore  0x00000001 , 0x00008085 
+ 00025625  0x00006b74 copy  0x00000002 , 0x0000003e 
+ 00025626  0x00006b75 branch  0x0000641c , 0x00000005 
+ 00025627  0x00006b76 copy  0x00000013 , 0x0000003d 
+ 00025628  0x00006b78 isolate0  0x00000000 , 0x0000003e 
+ 00025629  0x00006b79 branch  0x000064b9 
+ 00025630  0x00006b7d force  0x00000004 , 0x00000002 
+ 00025631  0x00006b7f arg  0x000001fe , 0x00000011 
+ 00025632  0x00006b80 hfetch  0x00000001 , 0x00008085 
+ 00025633  0x00006b81 and_into  0x000000fd , 0x0000003f 
+ 00025634  0x00006b82 hstore  0x00000001 , 0x00008085 
+ 00025635  0x00006b83 call  0x00006419 
+ 00025636  0x00006b84 arg  0x000055aa , 0x00000011 
+ 00025637  0x00006b85 fetch  0x00000002 , 0x000001fe 
+ 00025638  0x00006b86 ifetcht  0x00000002 , 0x00000006 
+ 00025639  0x00006b87 isub  0x00000011 , 0x0000003e 
+ 00025640  0x00006b88 rtn 
+ 00025641  0x00006b8b arg  0x00000002 , 0x00000002 
+ 00025642  0x00006b8c arg  0x00000204 , 0x00000011 
+ 00025643  0x00006b8d call  0x00006419 
+ 00025644  0x00006b8e fetch  0x00000002 , 0x00000204 
+ 00025645  0x00006b8f store  0x00000002 , 0x000001f7 
+ 00025646  0x00006b90 call  0x00006430 , 0x00000028 
+ 00025647  0x00006b91 rtn 
+ 00025648  0x00006b94 arg  0x00000010 , 0x00000002 
+ 00025649  0x00006b95 arg  0x00000206 , 0x00000011 
+ 00025650  0x00006b96 hfetch  0x00000001 , 0x00008085 
+ 00025651  0x00006b97 and_into  0x000000fd , 0x0000003f 
+ 00025652  0x00006b98 hstore  0x00000001 , 0x00008085 
+ 00025653  0x00006b99 call  0x00006419 
+ 00025654  0x00006b9a arg  0x00000206 , 0x00000006 
+ 00025655  0x00006b9b arg  0x00000010 , 0x00000039 
+ 00025656  0x00006b9c call  0x00007478 
+ 00025657  0x00006b9d call  0x00007428 
+ 00025658  0x00006b9e call  0x00007491 
+ 00025659  0x00006b9f branch  0x00007422 
+ 00025660  0x00006ba2 disable  0x0000002d 
+ 00025661  0x00006ba3 call  0x0000641e 
+ 00025662  0x00006ba4 nrtn  0x00000005 
+ 00025663  0x00006ba5 enable  0x0000002d 
+ 00025664  0x00006ba6 jam  0x00000080 , 0x00008023 
+ 00025665  0x00006ba7 jam  0x00000000 , 0x00008022 
+ 00025666  0x00006ba8 jam  0x00000000 , 0x00008024 
+ 00025667  0x00006ba9 arg  0x00008025 , 0x00000011 
+ 00025668  0x00006baa call  0x00006415 
+ 00025669  0x00006bab jam  0x00000000 , 0x00008023 
+ 00025670  0x00006bad arg  0x00000006 , 0x00000002 
+ 00025671  0x00006bae call  0x0000641f 
+ 00025672  0x00006baf nrtn  0x00000005 
+ 00025673  0x00006bb0 ifetch  0x00000002 , 0x00000006 
+ 00025674  0x00006bb1 iforce  0x00000011 
+ 00025675  0x00006bb2 call  0x00006419 
+ 00025676  0x00006bb3 branch  0x00006446 
+ 00025677  0x00006bb8 call  0x00007f99 
+ 00025678  0x00006bb9 setarg  0x00001000 
+ 00025679  0x00006bba store  0x00000002 , 0x000001f7 
+ 00025680  0x00006bbb arg  0x000065e5 , 0x00000013 
+ 00025681  0x00006bbc arg  0x00000002 , 0x00000039 
+ 00025682  0x00006bbe call  0x0000641e 
+ 00025683  0x00006bbf nrtn  0x00000005 
+ 00025684  0x00006bc0 fetch  0x00000002 , 0x000001f7 
+ 00025685  0x00006bc1 byteswap  0x0000003f , 0x0000003f 
+ 00025686  0x00006bc2 iadd  0x00000002 , 0x0000003f 
+ 00025687  0x00006bc3 byteswap  0x0000003f , 0x0000003f 
+ 00025688  0x00006bc4 store  0x00000002 , 0x000001f7 
+ 00025689  0x00006bc5 loop  0x00006452 
+ 00025690  0x00006bc6 branch  0x00006446 
+ 00025691  0x00006bc9 call  0x00007f99 
+ 00025692  0x00006bca disable  0x00000028 
+ 00025693  0x00006bcb call  0x0000666a 
+ 00025694  0x00006bcc setarg  0x00000000 
+ 00025695  0x00006bcd arg  0x000001f3 , 0x00000011 
+ 00025696  0x00006bce arg  0x00000002 , 0x00000002 
+ 00025697  0x00006bcf call  0x000066b3 
+ 00025698  0x00006bd0 fetch  0x00000002 , 0x000001f3 
+ 00025699  0x00006bd1 bbit0  0x00000007 , 0x0000646e 
+ 00025700  0x00006bd2 jam  0x00000025 , 0x00008050 
+ 00025701  0x00006bd3 setarg  0x000007f0 
+ 00025702  0x00006bd4 arg  0x00000206 , 0x00000011 
+ 00025703  0x00006bd5 arg  0x00000010 , 0x00000002 
+ 00025704  0x00006bd6 call  0x000066b3 
+ 00025705  0x00006bd7 jam  0x00000008 , 0x00008006 
+ 00025706  0x00006bd8 set1  0x0000002b , 0x00000000 
+ 00025707  0x00006bd9 arg  0x00000206 , 0x00000006 
+ 00025708  0x00006bda call  0x00007484 
+ 00025709  0x00006bdb enable  0x00000028 
+ 00025710  0x00006bdd jam  0x00000000 , 0x000041da 
+ 00025711  0x00006bdf call  0x000064b0 
+ 00025712  0x00006be0 fetch  0x00000002 , 0x000001f3 
+ 00025713  0x00006be1 byteswap  0x0000003f , 0x0000003f 
+ 00025714  0x00006be2 arg  0x000007ff , 0x00000002 
+ 00025715  0x00006be3 iand  0x00000002 , 0x0000003f 
+ 00025716  0x00006be4 branch  0x0000647b , 0x00000005 
+ 00025717  0x00006be5 call  0x0000666f 
+ 00025718  0x00006be6 arg  0x000066b8 , 0x00000013 
+ 00025719  0x00006be7 call  0x00006430 , 0x00000028 
+ 00025720  0x00006be8 call  0x0000643c 
+ 00025721  0x00006be9 fetch  0x00000001 , 0x000001f2 
+ 00025722  0x00006bea bbit0  0x00000000 , 0x0000646f 
+ 00025723  0x00006bed call  0x0000666d 
+ 00025724  0x00006bee jam  0x00000000 , 0x000041da 
+ 00025725  0x00006bf0 call  0x000064b0 
+ 00025726  0x00006bf1 call  0x000065c2 
+ 00025727  0x00006bf2 fetch  0x00000001 , 0x000001f3 
+ 00025728  0x00006bf3 bbit1  0x00000006 , 0x0000648e 
+ 00025729  0x00006bf4 call  0x000064aa 
+ 00025730  0x00006bf5 nbranch  0x00006486 , 0x0000002d 
+ 00025731  0x00006bf6 fetch  0x00000001 , 0x000001f2 
+ 00025732  0x00006bf7 bbit0  0x00000000 , 0x0000647d 
+ 00025733  0x00006bf8 branch  0x0000649b 
+ 00025734  0x00006bfa call  0x000065bf 
+ 00025735  0x00006bfb fetch  0x00000001 , 0x000001f3 
+ 00025736  0x00006bfc bbit1  0x00000006 , 0x0000648e 
+ 00025737  0x00006bfd call  0x000064aa 
+ 00025738  0x00006bfe nbranch  0x0000648e , 0x0000002d 
+ 00025739  0x00006bff fetch  0x00000001 , 0x000001f2 
+ 00025740  0x00006c00 bbit0  0x00000000 , 0x0000647d 
+ 00025741  0x00006c01 branch  0x0000649b 
+ 00025742  0x00006c04 jam  0x00000000 , 0x000041da 
+ 00025743  0x00006c06 call  0x000064b0 
+ 00025744  0x00006c07 fetch  0x00000001 , 0x000001f3 
+ 00025745  0x00006c08 bbit1  0x00000005 , 0x0000649b 
+ 00025746  0x00006c09 setarg  0x00000000 
+ 00025747  0x00006c0a store  0x00000003 , 0x000001f6 
+ 00025748  0x00006c0b call  0x00006502 
+ 00025749  0x00006c0c arg  0x00006578 , 0x00000013 
+ 00025750  0x00006c0d call  0x00006429 
+ 00025751  0x00006c0e call  0x0000643c 
+ 00025752  0x00006c0f nbranch  0x0000649b , 0x0000002d 
+ 00025753  0x00006c10 fetch  0x00000001 , 0x000001f2 
+ 00025754  0x00006c11 bbit0  0x00000000 , 0x0000648f 
+ 00025755  0x00006c14 bmark1  0x0000002b , 0x0000649d 
+ 00025756  0x00006c15 call  0x000064a3 
+ 00025757  0x00006c17 fetch  0x00000001 , 0x000001f3 
+ 00025758  0x00006c18 bbit0  0x00000004 , 0x000064a3 
+ 00025759  0x00006c19 jam  0x00000021 , 0x00008050 
+ 00025760  0x00006c1a call  0x00004c0e 
+ 00025761  0x00006c1c call  0x00004c2e 
+ 00025762  0x00006c1d branch  0x000064a1 
+ 00025763  0x00006c20 setarg  0x00000000 
+ 00025764  0x00006c21 store  0x00000008 , 0x00000206 
+ 00025765  0x00006c22 store  0x00000008 , 0x0000020e 
+ 00025766  0x00006c23 force  0x00000004 , 0x00000038 
+ 00025767  0x00006c24 call  0x00007492 
+ 00025768  0x00006c25 jam  0x00000021 , 0x00008050 
+ 00025769  0x00006c26 rtn 
+ 00025770  0x00006c2a setarg  0x00000000 
+ 00025771  0x00006c2b store  0x00000002 , 0x000001f7 
+ 00025772  0x00006c2c arg  0x000065e5 , 0x00000013 
+ 00025773  0x00006c2d call  0x000065a3 
+ 00025774  0x00006c2e call  0x00006429 
+ 00025775  0x00006c2f branch  0x0000643c 
+ 00025776  0x00006c33 fetch  0x00000001 , 0x000041da 
+ 00025777  0x00006c34 increase  0x00000001 , 0x0000003f 
+ 00025778  0x00006c35 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00025779  0x00006c36 nbranch  0x000064b6 , 0x00000002 
+ 00025780  0x00006c37 store  0x00000001 , 0x000041da 
+ 00025781  0x00006c38 rtn 
+ 00025782  0x00006c3b call  0x000064a3 
+ 00025783  0x00006c3c call  0x00007fa1 
+ 00025784  0x00006c3d rtn 
+ 00025785  0x00006c42 fetch  0x00000001 , 0x000001f2 
+ 00025786  0x00006c43 lshift  0x0000003f , 0x0000003f 
+ 00025787  0x00006c44 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025788  0x00006c45 isolate0  0x0000000f , 0x00000011 
+ 00025789  0x00006c46 rtn  0x00000001 
+ 00025790  0x00006c47 store  0x00000001 , 0x000001f2 
+ 00025791  0x00006c48 rtn 
+ 00025792  0x00006c4c hfetch  0x00000001 , 0x00008085 
+ 00025793  0x00006c4d rtnbit0  0x00000001 
+ 00025794  0x00006c4e branch  0x000064c6 
+ 00025795  0x00006c50 hfetch  0x00000001 , 0x0000812c 
+ 00025796  0x00006c51 qisolate1  0x0000003f 
+ 00025797  0x00006c52 rtn  0x00000001 
+ 00025798  0x00006c54 hfetch  0x00000001 , 0x00008108 
+ 00025799  0x00006c55 bbit0  0x00000001 , 0x000064c3 
+ 00025800  0x00006c56 call  0x00007422 
+ 00025801  0x00006c57 branch  0x000064c3 
+ 00025802  0x00006c5c fetch  0x00000002 , 0x00004199 
+ 00025803  0x00006c5d rtn  0x00000034 
+ 00025804  0x00006c5e jam  0x00000080 , 0x00008023 
+ 00025805  0x00006c5f jam  0x00000000 , 0x00008022 
+ 00025806  0x00006c60 jam  0x00000000 , 0x00008024 
+ 00025807  0x00006c61 fetcht  0x00000002 , 0x0000419b 
+ 00025808  0x00006c62 lshift2  0x00000002 , 0x00000039 
+ 00025809  0x00006c63 iforce  0x00000006 
+ 00025810  0x00006c65 ifetch  0x00000001 , 0x00000006 
+ 00025811  0x00006c66 hstore  0x00000001 , 0x00008025 
+ 00025812  0x00006c67 loop  0x000064d2 
+ 00025813  0x00006c68 jam  0x00000000 , 0x00008023 
+ 00025814  0x00006c69 rtn 
+ 00025815  0x00006c6f bpatchx  0x0000008d , 0x00004031 
+ 00025816  0x00006c70 call  0x000064dd 
+ 00025817  0x00006c71 branch  0x000063f2 
+ 00025818  0x00006c74 call  0x000064dd 
+ 00025819  0x00006c75 call  0x000063ee 
+ 00025820  0x00006c76 branch  0x000063f6 
+ 00025821  0x00006c79 fetch  0x00000001 , 0x00004212 
+ 00025822  0x00006c7a hstore  0x00000001 , 0x00008086 
+ 00025823  0x00006c7b fetch  0x00000001 , 0x00004213 
+ 00025824  0x00006c7c hstore  0x00000001 , 0x00008087 
+ 00025825  0x00006c7d setarg  0x000001f5 
+ 00025826  0x00006c7e hstore  0x00000002 , 0x0000808a 
+ 00025827  0x00006c7f setarg  0x000001fa 
+ 00025828  0x00006c80 hstore  0x00000002 , 0x0000808c 
+ 00025829  0x00006c81 branch  0x000063ee 
+ 00025830  0x00006c84 hfetch  0x00000001 , 0x00008086 
+ 00025831  0x00006c85 set1  0x00000007 , 0x0000003f 
+ 00025832  0x00006c86 hstore  0x00000001 , 0x00008086 
+ 00025833  0x00006c87 set0  0x00000007 , 0x0000003f 
+ 00025834  0x00006c88 hstore  0x00000001 , 0x00008086 
+ 00025835  0x00006c89 rtn 
+ 00025836  0x00006c8e set1  0x00000007 , 0x0000003f 
+ 00025837  0x00006c8f store  0x00000002 , 0x000001f5 
+ 00025838  0x00006c90 bpatchx  0x0000008e , 0x00004031 
+ 00025839  0x00006c91 jam  0x00000002 , 0x00008088 
+ 00025840  0x00006c92 jam  0x00000000 , 0x0000808e 
+ 00025841  0x00006c93 jam  0x00000002 , 0x00008006 
+ 00025842  0x00006c94 branch  0x000064fc 
+ 00025843  0x00006c98 force  0x00000001 , 0x00000002 
+ 00025844  0x00006c9c store  0x00000001 , 0x000001f5 
+ 00025845  0x00006c9d bpatchx  0x0000008f , 0x00004031 
+ 00025846  0x00006c9e jam  0x00000001 , 0x00008088 
+ 00025847  0x00006c9f hstoret  0x00000002 , 0x0000808e 
+ 00025848  0x00006ca0 jam  0x00000002 , 0x00008006 
+ 00025849  0x00006ca1 call  0x000064fc 
+ 00025850  0x00006ca2 fetch  0x00000001 , 0x000001fa 
+ 00025851  0x00006ca3 rtn 
+ 00025852  0x00006ca6 fetch  0x00000002 , 0x000040d6 
+ 00025853  0x00006ca7 increase  0x00000001 , 0x0000003f 
+ 00025854  0x00006ca8 store  0x00000002 , 0x000040d6 
+ 00025855  0x00006ca9 hfetch  0x00000001 , 0x0000812c 
+ 00025856  0x00006caa bbit0  0x00000003 , 0x000064fc 
+ 00025857  0x00006cab rtn 
+ 00025858  0x00006cae jam  0x00000040 , 0x00008086 
+ 00025859  0x00006caf jam  0x00000000 , 0x00008087 
+ 00025860  0x00006cb0 hfetch  0x00000001 , 0x00008081 
+ 00025861  0x00006cb1 set0  0x00000000 , 0x0000003f 
+ 00025862  0x00006cb2 set1  0x00000001 , 0x0000003f 
+ 00025863  0x00006cb3 hstore  0x00000001 , 0x00008081 
+ 00025864  0x00006cb4 setarg  0x00000000 
+ 00025865  0x00006cb5 store  0x00000004 , 0x000001f5 
+ 00025866  0x00006cb6 rtn 
+ 00025867  0x00006cba setarg  0x00000000 
+ 00025868  0x00006cbb hstore  0x00000002 , 0x0000808e 
+ 00025869  0x00006cbc setarg  0x00000001 
+ 00025870  0x00006cbd hstore  0x00000002 , 0x00008088 
+ 00025871  0x00006cbe setarg  0x000001f5 
+ 00025872  0x00006cbf hstore  0x00000002 , 0x0000808a 
+ 00025873  0x00006cc0 jam  0x00000006 , 0x000001f5 
+ 00025874  0x00006cc1 jam  0x00000002 , 0x00008006 
+ 00025875  0x00006cc2 branch  0x000064fc 
+ 00025876  0x00006cd2 disable  0x00000028 
+ 00025877  0x00006cd3 copy  0x0000003f , 0x00000012 
+ 00025878  0x00006cd4 fetch  0x00000001 , 0x00004239 
+ 00025879  0x00006cd5 rtnne  0x00000000 
+ 00025880  0x00006cd6 enable  0x00000028 
+ 00025881  0x00006cd7 copy  0x00000012 , 0x0000003f 
+ 00025882  0x00006cd8 branch  0x00006522 
+ 00025883  0x00006cdc fetch  0x00000001 , 0x00004239 
+ 00025884  0x00006cdd beq  0x00000001 , 0x00006522 
+ 00025885  0x00006cde beq  0x00000002 , 0x00006528 
+ 00025886  0x00006cdf beq  0x00000003 , 0x00006530 
+ 00025887  0x00006ce0 beq  0x00000004 , 0x00006537 
+ 00025888  0x00006ce1 beq  0x00000005 , 0x0000653d 
+ 00025889  0x00006ce2 rtn 
+ 00025890  0x00006ce5 store  0x00000003 , 0x00004232 
+ 00025891  0x00006ce6 copy  0x00000011 , 0x0000003f 
+ 00025892  0x00006ce7 store  0x00000002 , 0x00004235 
+ 00025893  0x00006ce8 storet  0x00000002 , 0x00004237 
+ 00025894  0x00006ce9 jam  0x00000002 , 0x00004239 
+ 00025895  0x00006cea branch  0x00006502 
+ 00025896  0x00006cec call  0x00006502 
+ 00025897  0x00006ced jam  0x00000003 , 0x00004239 
+ 00025898  0x00006cee call  0x0000650b 
+ 00025899  0x00006cef arg  0x000001f5 , 0x00000011 
+ 00025900  0x00006cf0 fetch  0x00000003 , 0x00004232 
+ 00025901  0x00006cf1 jam  0x00000004 , 0x00008088 
+ 00025902  0x00006cf2 arg  0x00000020 , 0x00000002 
+ 00025903  0x00006cf3 branch  0x00006556 
+ 00025904  0x00006cf6 call  0x00006502 
+ 00025905  0x00006cf7 call  0x0000650b 
+ 00025906  0x00006cf8 setarg  0x00000005 
+ 00025907  0x00006cf9 call  0x000064f3 
+ 00025908  0x00006cfa rtnbit1  0x00000000 
+ 00025909  0x00006cfb jam  0x00000004 , 0x00004239 
+ 00025910  0x00006cfc rtn 
+ 00025911  0x00006cfe call  0x00006502 
+ 00025912  0x00006cff jam  0x00000005 , 0x00004239 
+ 00025913  0x00006d00 call  0x0000650b 
+ 00025914  0x00006d01 call  0x0000654a 
+ 00025915  0x00006d02 call  0x00006552 
+ 00025916  0x00006d03 branch  0x00006545 
+ 00025917  0x00006d05 call  0x00006502 
+ 00025918  0x00006d06 call  0x0000650b 
+ 00025919  0x00006d07 setarg  0x00000005 
+ 00025920  0x00006d08 call  0x000064f3 
+ 00025921  0x00006d09 rtnbit1  0x00000000 
+ 00025922  0x00006d0a jam  0x00000000 , 0x00004239 
+ 00025923  0x00006d0b fetch  0x00000002 , 0x00004201 
+ 00025924  0x00006d0c branch  0x00007f9c 
+ 00025925  0x00006d0e fetch  0x00000004 , 0x00000aa2 
+ 00025926  0x00006d0f fetcht  0x00000002 , 0x00004235 
+ 00025927  0x00006d10 increase  0xfffffffc , 0x00000002 
+ 00025928  0x00006d11 istore  0x00000004 , 0x00000002 
+ 00025929  0x00006d12 rtn 
+ 00025930  0x00006d14 fetcht  0x00000002 , 0x00004235 
+ 00025931  0x00006d15 copy  0x00000002 , 0x00000011 
+ 00025932  0x00006d16 increase  0xfffffffc , 0x00000002 
+ 00025933  0x00006d17 ifetch  0x00000004 , 0x00000002 
+ 00025934  0x00006d18 store  0x00000004 , 0x00000aa2 
+ 00025935  0x00006d19 fetcht  0x00000002 , 0x00004237 
+ 00025936  0x00006d1a fetch  0x00000003 , 0x00004232 
+ 00025937  0x00006d1b rtn 
+ 00025938  0x00006d20 increase  0x00000004 , 0x00000002 
+ 00025939  0x00006d21 hstoret  0x00000002 , 0x00008088 
+ 00025940  0x00006d22 arg  0x00000002 , 0x00000002 
+ 00025941  0x00006d23 increase  0xfffffffc , 0x00000011 
+ 00025942  0x00006d26 istoret  0x00000001 , 0x00000011 
+ 00025943  0x00006d27 rshift16  0x0000003f , 0x00000002 
+ 00025944  0x00006d28 istoret  0x00000001 , 0x00000005 
+ 00025945  0x00006d29 rshift8  0x0000003f , 0x00000002 
+ 00025946  0x00006d2a istoret  0x00000001 , 0x00000005 
+ 00025947  0x00006d2b istore  0x00000001 , 0x00000005 
+ 00025948  0x00006d2c deposit  0x00000011 
+ 00025949  0x00006d2d hstore  0x00000002 , 0x0000808a 
+ 00025950  0x00006d2e setarg  0x00000000 
+ 00025951  0x00006d2f hstore  0x00000002 , 0x0000808e 
+ 00025952  0x00006d30 jam  0x00000002 , 0x00008006 
+ 00025953  0x00006d31 branch  0x000064fc 
+ 00025954  0x00006d36 hstoret  0x00000002 , 0x0000808e 
+ 00025955  0x00006d37 rshift16  0x0000003f , 0x00000002 
+ 00025956  0x00006d38 storet  0x00000001 , 0x000001f6 
+ 00025957  0x00006d39 rshift8  0x0000003f , 0x00000002 
+ 00025958  0x00006d3a storet  0x00000001 , 0x000001f7 
+ 00025959  0x00006d3b store  0x00000001 , 0x000001f8 
+ 00025960  0x00006d3c setarg  0x00000004 
+ 00025961  0x00006d3d hstore  0x00000002 , 0x00008088 
+ 00025962  0x00006d3e jam  0x00000003 , 0x000001f5 
+ 00025963  0x00006d3f setarg  0x000001f5 
+ 00025964  0x00006d40 hstore  0x00000002 , 0x0000808a 
+ 00025965  0x00006d41 deposit  0x00000011 
+ 00025966  0x00006d42 hstore  0x00000002 , 0x0000808c 
+ 00025967  0x00006d43 hfetch  0x00000001 , 0x00008086 
+ 00025968  0x00006d44 isolate0  0x0000000f , 0x00000011 
+ 00025969  0x00006d45 setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025970  0x00006d46 hstore  0x00000001 , 0x00008086 
+ 00025971  0x00006d47 jam  0x00000002 , 0x00008006 
+ 00025972  0x00006d49 hfetch  0x00000001 , 0x0000812c 
+ 00025973  0x00006d4a bbit1  0x00000007 , 0x00006574 
+ 00025974  0x00006d4b arg  0x00000003 , 0x00000007 
+ 00025975  0x00006d4c branch  0x000064fc 
+ 00025976  0x00006d51 hstoret  0x00000002 , 0x0000808e 
+ 00025977  0x00006d52 setarg  0x00000004 
+ 00025978  0x00006d53 hstore  0x00000002 , 0x00008088 
+ 00025979  0x00006d54 jam  0x00000003 , 0x000001f5 
+ 00025980  0x00006d55 setarg  0x000001f5 
+ 00025981  0x00006d56 hstore  0x00000002 , 0x0000808a 
+ 00025982  0x00006d57 deposit  0x00000011 
+ 00025983  0x00006d58 hstore  0x00000002 , 0x0000808c 
+ 00025984  0x00006d59 hfetch  0x00000001 , 0x00008086 
+ 00025985  0x00006d5a isolate0  0x0000000f , 0x00000011 
+ 00025986  0x00006d5b setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025987  0x00006d5c hstore  0x00000001 , 0x00008086 
+ 00025988  0x00006d5d jam  0x00000002 , 0x00008006 
+ 00025989  0x00006d5f hfetch  0x00000001 , 0x0000812c 
+ 00025990  0x00006d60 bbit1  0x00000007 , 0x00006585 
+ 00025991  0x00006d61 arg  0x00000003 , 0x00000007 
+ 00025992  0x00006d62 call  0x000064c0 
+ 00025993  0x00006d63 call  0x000064fc 
+ 00025994  0x00006d64 isolate1  0x00000002 , 0x0000003f 
+ 00025995  0x00006d65 call  0x000064b9 
+ 00025996  0x00006d66 fetch  0x00000001 , 0x000001f6 
+ 00025997  0x00006d67 lshift16  0x0000003f , 0x00000012 
+ 00025998  0x00006d68 fetch  0x00000001 , 0x000001f7 
+ 00025999  0x00006d69 lshift8  0x0000003f , 0x0000003f 
+ 00026000  0x00006d6a ior  0x00000012 , 0x00000012 
+ 00026001  0x00006d6b fetch  0x00000001 , 0x000001f8 
+ 00026002  0x00006d6c ior  0x00000012 , 0x0000003f 
+ 00026003  0x00006d6d iadd  0x00000002 , 0x0000003f 
+ 00026004  0x00006d6e store  0x00000001 , 0x000001f8 
+ 00026005  0x00006d6f rshift8  0x0000003f , 0x0000003f 
+ 00026006  0x00006d70 store  0x00000001 , 0x000001f7 
+ 00026007  0x00006d71 rshift8  0x0000003f , 0x0000003f 
+ 00026008  0x00006d72 store  0x00000001 , 0x000001f6 
+ 00026009  0x00006d73 rtn 
+ 00026010  0x00006d79 jam  0x00000001 , 0x00008010 
+ 00026011  0x00006d7a rtn 
+ 00026012  0x00006d81 jam  0x0000000c , 0x00008091 
+ 00026013  0x00006d82 jam  0x0000000d , 0x00008092 
+ 00026014  0x00006d83 jam  0x0000000d , 0x00008093 
+ 00026015  0x00006d84 jam  0x0000000d , 0x00008094 
+ 00026016  0x00006d85 jam  0x0000000d , 0x00008095 
+ 00026017  0x00006d86 jam  0x0000000c , 0x00008096 
+ 00026018  0x00006d87 branch  0x000065a9 
+ 00026019  0x00006d8b jam  0x00000005 , 0x00008091 
+ 00026020  0x00006d8c jam  0x00000007 , 0x00008092 
+ 00026021  0x00006d8d jam  0x00000007 , 0x00008093 
+ 00026022  0x00006d8e jam  0x00000007 , 0x00008094 
+ 00026023  0x00006d8f jam  0x00000007 , 0x00008095 
+ 00026024  0x00006d90 jam  0x00000005 , 0x00008096 
+ 00026025  0x00006d92 hfetch  0x00000001 , 0x0000807b 
+ 00026026  0x00006d93 or_into  0x000000c0 , 0x0000003f 
+ 00026027  0x00006d94 hstore  0x00000001 , 0x0000807b 
+ 00026028  0x00006d95 hfetch  0x00000001 , 0x00008081 
+ 00026029  0x00006d96 or_into  0x00000010 , 0x0000003f 
+ 00026030  0x00006d97 hstore  0x00000001 , 0x00008081 
+ 00026031  0x00006d98 rtn 
+ 00026032  0x00006d9d hfetch  0x00000001 , 0x0000812c 
+ 00026033  0x00006d9e bbit0  0x00000005 , 0x000065b0 
+ 00026034  0x00006d9f rtn 
+ 00026035  0x00006da8 hstore  0x00000002 , 0x00008098 
+ 00026036  0x00006da9 deposit  0x00000011 
+ 00026037  0x00006daa hstore  0x00000002 , 0x0000809a 
+ 00026038  0x00006dab deposit  0x00000012 
+ 00026039  0x00006dac hstore  0x00000002 , 0x0000809c 
+ 00026040  0x00006dad deposit  0x00000002 
+ 00026041  0x00006dae hstore  0x00000002 , 0x0000809e 
+ 00026042  0x00006daf arg  0x00000001 , 0x00000002 
+ 00026043  0x00006db0 nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00026044  0x00006db1 hstore  0x00000001 , 0x00008090 
+ 00026045  0x00006db2 jam  0x00000004 , 0x00008006 
+ 00026046  0x00006db3 branch  0x000065b0 
+ 00026047  0x00006db7 set1  0x00000028 , 0x00000000 
+ 00026048  0x00006db8 jam  0x00000008 , 0x00004211 
+ 00026049  0x00006db9 rtn 
+ 00026050  0x00006dbc set0  0x00000028 , 0x00000000 
+ 00026051  0x00006dbd jam  0x00000020 , 0x00004211 
+ 00026052  0x00006dbe rtn 
+ 00026053  0x00006dc2 fetch  0x00000001 , 0x00004203 
+ 00026054  0x00006dc3 iadd  0x00000012 , 0x0000003f 
+ 00026055  0x00006dc4 store  0x00000001 , 0x000001f7 
+ 00026056  0x00006dc5 branch  0x000065cc 
+ 00026057  0x00006dc8 fetch  0x00000002 , 0x000001f7 
+ 00026058  0x00006dc9 byteswap  0x0000003f , 0x0000003f 
+ 00026059  0x00006dca store  0x00000001 , 0x000001f7 
+ 00026060  0x00006dd0 setarg  0x00000003 
+ 00026061  0x00006dd1 hstore  0x00000002 , 0x00008098 
+ 00026062  0x00006dd2 jam  0x000000a0 , 0x000001f6 
+ 00026063  0x00006dd3 jam  0x000000a1 , 0x000001f8 
+ 00026064  0x00006dd4 branch  0x000065eb 
+ 00026065  0x00006ddb storet  0x00000002 , 0x00000aa2 
+ 00026066  0x00006ddc call  0x000065d6 
+ 00026067  0x00006ddd fetcht  0x00000002 , 0x00000aa2 
+ 00026068  0x00006dde call  0x00006606 
+ 00026069  0x00006ddf branch  0x000065dd 
+ 00026070  0x00006de2 fetch  0x00000001 , 0x0000423a 
+ 00026071  0x00006de3 rtneq  0x000000ff 
+ 00026072  0x00006de4 bbit0  0x00000006 , 0x000065db 
+ 00026073  0x00006de5 setarg  0x000249f0 
+ 00026074  0x00006de6 call  0x00002a8f 
+ 00026075  0x00006de8 fetcht  0x00000001 , 0x0000423a 
+ 00026076  0x00006de9 branch  0x00006829 
+ 00026077  0x00006dec fetcht  0x00000001 , 0x0000423a 
+ 00026078  0x00006ded branch  0x00006825 
+ 00026079  0x00006df3 bpatchx  0x00000090 , 0x00004032 
+ 00026080  0x00006df4 bmark1  0x00000028 , 0x000065c5 
+ 00026081  0x00006df5 fetch  0x00000002 , 0x00004203 
+ 00026082  0x00006df6 iadd  0x00000012 , 0x0000003f 
+ 00026083  0x00006df7 byteswap  0x0000003f , 0x0000003f 
+ 00026084  0x00006df8 store  0x00000002 , 0x000001f7 
+ 00026085  0x00006dfc bpatchx  0x00000091 , 0x00004032 
+ 00026086  0x00006dfd bmark1  0x00000028 , 0x000065c9 
+ 00026087  0x00006dfe setarg  0x00000004 
+ 00026088  0x00006dff hstore  0x00000002 , 0x00008098 
+ 00026089  0x00006e00 jam  0x000000a0 , 0x000001f6 
+ 00026090  0x00006e01 jam  0x000000a1 , 0x000001f9 
+ 00026091  0x00006e03 setarg  0x000001f6 
+ 00026092  0x00006e04 hstore  0x00000002 , 0x0000809a 
+ 00026093  0x00006e05 hstoret  0x00000002 , 0x0000809e 
+ 00026094  0x00006e06 deposit  0x00000011 
+ 00026095  0x00006e07 hstore  0x00000002 , 0x0000809c 
+ 00026096  0x00006e08 setarg  0x00000002 
+ 00026097  0x00006e09 isolate0  0x0000000f , 0x00000011 
+ 00026098  0x00006e0a setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00026099  0x00006e0b hstore  0x00000001 , 0x00008090 
+ 00026100  0x00006e0c jam  0x00000004 , 0x00008006 
+ 00026101  0x00006e0d arg  0x00000005 , 0x00000007 
+ 00026102  0x00006e0e call  0x000064c0 
+ 00026103  0x00006e0f call  0x000065b0 
+ 00026104  0x00006e10 isolate1  0x00000004 , 0x0000003f 
+ 00026105  0x00006e11 call  0x000064b9 
+ 00026106  0x00006e12 bmark1  0x00000028 , 0x00006601 
+ 00026107  0x00006e13 fetch  0x00000002 , 0x000001f7 
+ 00026108  0x00006e14 byteswap  0x0000003f , 0x0000003f 
+ 00026109  0x00006e15 iadd  0x00000002 , 0x0000003f 
+ 00026110  0x00006e16 byteswap  0x0000003f , 0x0000003f 
+ 00026111  0x00006e17 store  0x00000002 , 0x000001f7 
+ 00026112  0x00006e18 rtn 
+ 00026113  0x00006e1b fetch  0x00000001 , 0x000001f7 
+ 00026114  0x00006e1c iadd  0x00000002 , 0x0000003f 
+ 00026115  0x00006e1d byteswap  0x0000003f , 0x0000003f 
+ 00026116  0x00006e1e store  0x00000002 , 0x000001f7 
+ 00026117  0x00006e1f rtn 
+ 00026118  0x00006e26 fetch  0x00000002 , 0x00004203 
+ 00026119  0x00006e27 iadd  0x00000012 , 0x0000003f 
+ 00026120  0x00006e2b store  0x00000002 , 0x00000a9a 
+ 00026121  0x00006e2c bpatchx  0x00000092 , 0x00004032 
+ 00026122  0x00006e2d storet  0x00000002 , 0x00000aa2 
+ 00026123  0x00006e2e copy  0x00000011 , 0x0000003f 
+ 00026124  0x00006e2f store  0x00000002 , 0x00000ab9 
+ 00026125  0x00006e31 call  0x0000661d 
+ 00026126  0x00006e33 fetcht  0x00000002 , 0x00000ab2 
+ 00026127  0x00006e34 fetch  0x00000002 , 0x00000ab9 
+ 00026128  0x00006e35 copy  0x0000003f , 0x00000011 
+ 00026129  0x00006e36 fetch  0x00000002 , 0x00000a9a 
+ 00026130  0x00006e38 call  0x0000663d 
+ 00026131  0x00006e3a fetch  0x00000002 , 0x00000ab2 
+ 00026132  0x00006e3b fetcht  0x00000002 , 0x00000ab9 
+ 00026133  0x00006e3c iadd  0x00000002 , 0x00000002 
+ 00026134  0x00006e3d storet  0x00000002 , 0x00000ab9 
+ 00026135  0x00006e3e fetcht  0x00000002 , 0x00000a9a 
+ 00026136  0x00006e3f iadd  0x00000002 , 0x00000002 
+ 00026137  0x00006e40 storet  0x00000002 , 0x00000a9a 
+ 00026138  0x00006e41 fetch  0x00000002 , 0x00000aa2 
+ 00026139  0x00006e42 nbranch  0x0000660d , 0x00000034 
+ 00026140  0x00006e43 rtn 
+ 00026141  0x00006e4c bpatchx  0x00000093 , 0x00004032 
+ 00026142  0x00006e4d fetch  0x00000001 , 0x00004211 
+ 00026143  0x00006e4e increase  0xffffffff , 0x0000003f 
+ 00026144  0x00006e4f fetcht  0x00000002 , 0x00000a9a 
+ 00026145  0x00006e50 ior  0x00000002 , 0x0000003f 
+ 00026146  0x00006e51 increase  0x00000001 , 0x0000003f 
+ 00026147  0x00006e52 store  0x00000003 , 0x00000ab6 
+ 00026148  0x00006e54 fetch  0x00000002 , 0x00000aa2 
+ 00026149  0x00006e55 iadd  0x00000002 , 0x0000003f 
+ 00026150  0x00006e57 fetcht  0x00000003 , 0x00000ab6 
+ 00026151  0x00006e58 isub  0x00000002 , 0x0000003f 
+ 00026152  0x00006e59 nbranch  0x0000662f , 0x00000002 
+ 00026153  0x00006e5a store  0x00000002 , 0x00000aa2 
+ 00026154  0x00006e5b fetch  0x00000003 , 0x00000ab6 
+ 00026155  0x00006e5c fetcht  0x00000002 , 0x00000a9a 
+ 00026156  0x00006e5d isub  0x00000002 , 0x0000003f 
+ 00026157  0x00006e5e store  0x00000002 , 0x00000ab2 
+ 00026158  0x00006e5f rtn 
+ 00026159  0x00006e61 fetch  0x00000002 , 0x00000aa2 
+ 00026160  0x00006e62 store  0x00000002 , 0x00000ab2 
+ 00026161  0x00006e63 setarg  0x00000000 
+ 00026162  0x00006e64 store  0x00000002 , 0x00000aa2 
+ 00026163  0x00006e65 rtn 
+ 00026164  0x00006e68 increase  0x00000002 , 0x00000002 
+ 00026165  0x00006e69 hstoret  0x00000002 , 0x00008098 
+ 00026166  0x00006e6a increase  0xfffffffe , 0x00000011 
+ 00026167  0x00006e6b ifetcht  0x00000003 , 0x00000011 
+ 00026168  0x00006e6c copy  0x00000002 , 0x00000012 
+ 00026169  0x00006e6d arg  0x000000a0 , 0x00000002 
+ 00026170  0x00006e6e istoret  0x00000001 , 0x00000011 
+ 00026171  0x00006e70 istore  0x00000001 , 0x00000005 
+ 00026172  0x00006e71 branch  0x0000664a 
+ 00026173  0x00006e75 copy  0x0000003f , 0x00000012 
+ 00026174  0x00006e76 bpatchx  0x00000094 , 0x00004032 
+ 00026175  0x00006e77 bmark1  0x00000028 , 0x00006634 
+ 00026176  0x00006e78 copy  0x00000012 , 0x0000003f 
+ 00026177  0x00006e79 increase  0x00000003 , 0x00000002 
+ 00026178  0x00006e7a hstoret  0x00000002 , 0x00008098 
+ 00026179  0x00006e7b increase  0xfffffffd , 0x00000011 
+ 00026180  0x00006e7c ifetcht  0x00000003 , 0x00000011 
+ 00026181  0x00006e7d copy  0x00000002 , 0x00000012 
+ 00026182  0x00006e7e arg  0x000000a0 , 0x00000002 
+ 00026183  0x00006e7f istoret  0x00000001 , 0x00000011 
+ 00026184  0x00006e80 byteswap  0x0000003f , 0x0000003f 
+ 00026185  0x00006e81 istore  0x00000002 , 0x00000005 
+ 00026186  0x00006e83 deposit  0x00000011 
+ 00026187  0x00006e84 hstore  0x00000002 , 0x0000809a 
+ 00026188  0x00006e85 setarg  0x00000000 
+ 00026189  0x00006e86 hstore  0x00000002 , 0x0000809e 
+ 00026190  0x00006e87 jam  0x00000001 , 0x00008090 
+ 00026191  0x00006e88 jam  0x00000004 , 0x00008006 
+ 00026192  0x00006e89 call  0x000065b0 
+ 00026193  0x00006e8a copy  0x00000012 , 0x0000003f 
+ 00026194  0x00006e8b istore  0x00000003 , 0x00000011 
+ 00026195  0x00006e8e bpatchx  0x00000095 , 0x00004032 
+ 00026196  0x00006e8f jam  0x00000000 , 0x000001f9 
+ 00026197  0x00006e91 setarg  0x00000001 
+ 00026198  0x00006e92 hstore  0x00000002 , 0x00008098 
+ 00026199  0x00006e93 jam  0x000000a0 , 0x000001f6 
+ 00026200  0x00006e94 setarg  0x000001f6 
+ 00026201  0x00006e95 hstore  0x00000002 , 0x0000809a 
+ 00026202  0x00006e96 setarg  0x00000000 
+ 00026203  0x00006e97 hstore  0x00000002 , 0x0000809e 
+ 00026204  0x00006e98 hstore  0x00000002 , 0x0000809c 
+ 00026205  0x00006e99 setarg  0x00000003 
+ 00026206  0x00006e9a hstore  0x00000001 , 0x00008090 
+ 00026207  0x00006e9b jam  0x00000004 , 0x00008006 
+ 00026208  0x00006e9c call  0x000065b0 
+ 00026209  0x00006e9d hfetch  0x00000001 , 0x0000812c 
+ 00026210  0x00006e9e rtnbit0  0x00000006 
+ 00026211  0x00006e9f nop  0x000005dc 
+ 00026212  0x00006ea0 fetch  0x00000001 , 0x000001f9 
+ 00026213  0x00006ea1 increase  0x00000001 , 0x0000003f 
+ 00026214  0x00006ea2 store  0x00000001 , 0x000001f9 
+ 00026215  0x00006ea3 sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00026216  0x00006ea4 nrtn  0x00000002 
+ 00026217  0x00006ea5 branch  0x00006655 
+ 00026218  0x00006eaa jam  0x00000070 , 0x00008973 
+ 00026219  0x00006eab nop  0x00000bb8 
+ 00026220  0x00006eac rtn 
+ 00026221  0x00006eaf jam  0x00000030 , 0x00008973 
+ 00026222  0x00006eb0 rtn 
+ 00026223  0x00006eb3 lshift3  0x0000003f , 0x0000003f 
+ 00026224  0x00006eb4 hstore  0x00000002 , 0x00008045 
+ 00026225  0x00006eb5 jam  0x00000000 , 0x0000804b 
+ 00026226  0x00006eb6 rtn 
+ 00026227  0x00006eba call  0x0000666f 
+ 00026228  0x00006ebb call  0x000066a0 
+ 00026229  0x00006ebd ifetcht  0x00000001 , 0x00000011 
+ 00026230  0x00006ebe increase  0x00000001 , 0x00000011 
+ 00026231  0x00006ebf force  0x00000000 , 0x00000007 
+ 00026232  0x00006ec1 qisolate0  0x00000002 
+ 00026233  0x00006ec2 branch  0x00006697 , 0x00000001 
+ 00026234  0x00006ec3 hfetch  0x00000001 , 0x00008046 
+ 00026235  0x00006ec4 set1  0x00000006 , 0x0000003f 
+ 00026236  0x00006ec5 set1  0x00000007 , 0x0000003f 
+ 00026237  0x00006ec6 hstore  0x00000001 , 0x00008046 
+ 00026238  0x00006ec7 jam  0x00000002 , 0x00008047 
+ 00026239  0x00006ec8 jam  0x00000082 , 0x00008047 
+ 00026240  0x00006ec9 set0  0x00000007 , 0x0000003f 
+ 00026241  0x00006eca hstore  0x00000001 , 0x00008046 
+ 00026242  0x00006ecb jam  0x0000008a , 0x00008047 
+ 00026243  0x00006ecc nop  0x0000000b 
+ 00026244  0x00006ecd jam  0x000000ca , 0x00008047 
+ 00026245  0x00006ece nop  0x00000021 
+ 00026246  0x00006ecf jam  0x0000004a , 0x00008047 
+ 00026247  0x00006ed0 nop  0x0000002c 
+ 00026248  0x00006ed1 jam  0x000000ca , 0x00008047 
+ 00026249  0x00006ed2 nop  0x00000016 
+ 00026250  0x00006ed3 jam  0x0000008a , 0x00008047 
+ 00026251  0x00006ed4 nop  0x00000021 
+ 00026252  0x00006ed5 jam  0x00000082 , 0x00008047 
+ 00026253  0x00006ed6 nop  0x00000001 
+ 00026254  0x00006ed7 jam  0x00000092 , 0x00008047 
+ 00026255  0x00006ed8 nop  0x0000000a 
+ 00026256  0x00006ed9 jam  0x000000b2 , 0x00008047 
+ 00026257  0x00006eda hfetch  0x00000001 , 0x00008007 
+ 00026258  0x00006edb jam  0x00000092 , 0x00008047 
+ 00026259  0x00006edc nop  0x00000001 
+ 00026260  0x00006edd jam  0x00000082 , 0x00008047 
+ 00026261  0x00006ede qisolate0  0x0000003f 
+ 00026262  0x00006edf branch  0x00006678 , 0x00000001 
+ 00026263  0x00006ee1 hfetch  0x00000002 , 0x00008045 
+ 00026264  0x00006ee2 increase  0x00000001 , 0x0000003f 
+ 00026265  0x00006ee3 hstore  0x00000002 , 0x00008045 
+ 00026266  0x00006ee4 increase  0x00000001 , 0x00000007 
+ 00026267  0x00006ee5 compare  0x00000008 , 0x00000007 , 0x0000000f 
+ 00026268  0x00006ee6 nbranch  0x00006678 , 0x00000001 
+ 00026269  0x00006ee7 loop  0x00006675 
+ 00026270  0x00006ee8 jam  0x00000083 , 0x00008047 
+ 00026271  0x00006ee9 rtn 
+ 00026272  0x00006eec jam  0x00000082 , 0x00008047 
+ 00026273  0x00006eed nop  0x0000000c 
+ 00026274  0x00006eee jam  0x00000080 , 0x00008047 
+ 00026275  0x00006eef jam  0x00000082 , 0x00008047 
+ 00026276  0x00006ef0 nop  0x00000096 
+ 00026277  0x00006ef1 rtn 
+ 00026278  0x00006ef5 call  0x000066a0 
+ 00026279  0x00006ef6 jam  0x000000a2 , 0x00008047 
+ 00026280  0x00006ef7 deposit  0x00000011 
+ 00026281  0x00006ef8 hstore  0x00000002 , 0x00008048 
+ 00026282  0x00006ef9 set1  0x0000000b , 0x00000002 
+ 00026283  0x00006efa isolate0  0x0000000f , 0x0000003f 
+ 00026284  0x00006efb setflag  0x00000001 , 0x0000000f , 0x00000002 
+ 00026285  0x00006efc hstoret  0x00000002 , 0x0000804a 
+ 00026286  0x00006efd jam  0x00000001 , 0x00008006 
+ 00026287  0x00006efe rtn 
+ 00026288  0x00006f01 hfetch  0x00000001 , 0x0000812c 
+ 00026289  0x00006f02 bbit0  0x00000001 , 0x000066b0 
+ 00026290  0x00006f03 rtn 
+ 00026291  0x00006f07 call  0x0000666f 
+ 00026292  0x00006f08 call  0x000066a6 
+ 00026293  0x00006f09 call  0x000066b0 
+ 00026294  0x00006f0a jam  0x00000083 , 0x00008047 
+ 00026295  0x00006f0b rtn 
+ 00026296  0x00006f11 hfetch  0x00000002 , 0x00008124 
+ 00026297  0x00006f12 hstore  0x00000002 , 0x00008045 
+ 00026298  0x00006f13 call  0x000066a6 
+ 00026299  0x00006f14 arg  0x00000001 , 0x00000007 
+ 00026300  0x00006f15 call  0x000064c0 
+ 00026301  0x00006f16 call  0x000066b0 
+ 00026302  0x00006f17 isolate1  0x00000000 , 0x0000003f 
+ 00026303  0x00006f18 call  0x000064b9 
+ 00026304  0x00006f19 jam  0x00000083 , 0x00008047 
+ 00026305  0x00006f1a rtn 
+ 00026306  0x00006f1e hfetch  0x00000002 , 0x0000805e 
+ 00026307  0x00006f1f iforce  0x0000000a 
+ 00026308  0x00006f20 rtn 
+ 00026309  0x00006f23 deposit  0x0000000a 
+ 00026310  0x00006f24 hstore  0x00000002 , 0x0000805e 
+ 00026311  0x00006f25 rtn 
+ 00026312  0x00006f28 deposit  0x00000003 
+ 00026313  0x00006f29 hstore  0x00000002 , 0x00008058 
+ 00026314  0x00006f2a rtn 
+ 00026315  0x00006f2d hfetch  0x00000002 , 0x00008058 
+ 00026316  0x00006f2e copy  0x0000003f , 0x00000003 
+ 00026317  0x00006f2f rtn 
+ 00026318  0x00006f32 fetch  0x00000002 , 0x00004243 
+ 00026319  0x00006f33 hstore  0x00000002 , 0x00008052 
+ 00026320  0x00006f34 rtn 
+ 00026321  0x00006f37 deposit  0x00000039 
+ 00026322  0x00006f38 rtn  0x00000034 
+ 00026323  0x00006f3a increase  0xfffffff8 , 0x00000039 
+ 00026324  0x00006f3b call  0x000066de , 0x00000002 
+ 00026325  0x00006f3c rtn  0x00000005 
+ 00026326  0x00006f3d branch  0x000066d3 , 0x00000002 
+ 00026327  0x00006f3e increase  0x00000008 , 0x00000039 
+ 00026328  0x00006f40 increase  0xfffffffc , 0x00000039 
+ 00026329  0x00006f41 call  0x000066e1 , 0x00000002 
+ 00026330  0x00006f42 rtn  0x00000005 
+ 00026331  0x00006f43 branch  0x000066d8 , 0x00000002 
+ 00026332  0x00006f44 increase  0x00000004 , 0x00000039 
+ 00026333  0x00006f45 branch  0x000066e4 
+ 00026334  0x00006f48 ifetch  0x00000008 , 0x00000006 
+ 00026335  0x00006f49 istore  0x00000008 , 0x0000000a 
+ 00026336  0x00006f4a rtn 
+ 00026337  0x00006f4d ifetch  0x00000004 , 0x00000006 
+ 00026338  0x00006f4e istore  0x00000004 , 0x0000000a 
+ 00026339  0x00006f4f rtn 
+ 00026340  0x00006f52 deposit  0x00000039 
+ 00026341  0x00006f53 rtn  0x00000034 
+ 00026342  0x00006f55 ifetch  0x00000001 , 0x00000006 
+ 00026343  0x00006f56 istore  0x00000001 , 0x0000000a 
+ 00026344  0x00006f57 loop  0x000066e6 
+ 00026345  0x00006f58 rtn 
+ 00026346  0x00006f5b deposit  0x00000039 
+ 00026347  0x00006f5c rtn  0x00000034 
+ 00026348  0x00006f5e increase  0xfffffff8 , 0x00000039 
+ 00026349  0x00006f5f call  0x000066f7 , 0x00000002 
+ 00026350  0x00006f60 rtn  0x00000005 
+ 00026351  0x00006f61 branch  0x000066ec , 0x00000002 
+ 00026352  0x00006f62 increase  0x00000008 , 0x00000039 
+ 00026353  0x00006f64 increase  0xfffffffc , 0x00000039 
+ 00026354  0x00006f65 call  0x000066fa , 0x00000002 
+ 00026355  0x00006f66 rtn  0x00000005 
+ 00026356  0x00006f67 branch  0x000066f1 , 0x00000002 
+ 00026357  0x00006f68 increase  0x00000004 , 0x00000039 
+ 00026358  0x00006f69 branch  0x000066fd 
+ 00026359  0x00006f6c ifetch  0x00000008 , 0x00000003 
+ 00026360  0x00006f6d istore  0x00000008 , 0x00000005 
+ 00026361  0x00006f6e rtn 
+ 00026362  0x00006f71 ifetch  0x00000004 , 0x00000003 
+ 00026363  0x00006f72 istore  0x00000004 , 0x00000005 
+ 00026364  0x00006f73 rtn 
+ 00026365  0x00006f77 deposit  0x00000039 
+ 00026366  0x00006f78 rtn  0x00000034 
+ 00026367  0x00006f7a ifetch  0x00000001 , 0x00000003 
+ 00026368  0x00006f7b istore  0x00000001 , 0x00000005 
+ 00026369  0x00006f7c loop  0x000066ff 
+ 00026370  0x00006f7d rtn 
+ 00026371  0x00006f81 deposit  0x00000039 
+ 00026372  0x00006f82 rtn  0x00000034 
+ 00026373  0x00006f84 ifetch  0x00000001 , 0x00000003 
+ 00026374  0x00006f85 istore  0x00000001 , 0x0000000a 
+ 00026375  0x00006f86 loop  0x00006705 
+ 00026376  0x00006f87 rtn 
+ 00026377  0x00006f8d jam  0x0000003d , 0x00000a99 
+ 00026378  0x00006f8e branch  0x00007d86 
+ 00026379  0x00006f92 bpatchx  0x00000096 , 0x00004032 
+ 00026380  0x00006f93 fetch  0x00000001 , 0x00004217 
+ 00026381  0x00006f94 rtn  0x00000034 
+ 00026382  0x00006f95 call  0x000067a3 
+ 00026383  0x00006f96 call  0x000067a9 , 0x00000005 
+ 00026384  0x00006f97 call  0x0000673e 
+ 00026385  0x00006f99 fetch  0x00000001 , 0x00004217 
+ 00026386  0x00006f9a icopy  0x00000013 
+ 00026387  0x00006f9b fetcht  0x00000002 , 0x00004215 
+ 00026388  0x00006f9c storet  0x00000002 , 0x0000018c 
+ 00026389  0x00006f9e copy  0x00000013 , 0x0000003f 
+ 00026390  0x00006f9f branch  0x00006709 , 0x00000034 
+ 00026391  0x00006fa0 increase  0xffffffff , 0x00000013 
+ 00026392  0x00006fa1 copy  0x00000002 , 0x00000011 
+ 00026393  0x00006fa2 ifetch  0x00000001 , 0x00000011 
+ 00026394  0x00006fa3 fetcht  0x00000001 , 0x00000184 
+ 00026395  0x00006fa4 isub  0x00000002 , 0x0000003e 
+ 00026396  0x00006fa5 call  0x00006725 , 0x00000005 
+ 00026397  0x00006fa6 branch  0x00006721 , 0x00000002 
+ 00026398  0x00006fa7 ifetch  0x00000001 , 0x00000011 
+ 00026399  0x00006fa8 increase  0x00000001 , 0x0000003f 
+ 00026400  0x00006fa9 istore  0x00000001 , 0x00000011 
+ 00026401  0x00006fab fetcht  0x00000002 , 0x0000018c 
+ 00026402  0x00006fac increase  0x00000022 , 0x00000002 
+ 00026403  0x00006fad storet  0x00000002 , 0x0000018c 
+ 00026404  0x00006fae branch  0x00006715 
+ 00026405  0x00006fb1 setarg  0x00000000 
+ 00026406  0x00006fb2 istore  0x00000001 , 0x00000011 
+ 00026407  0x00006fb3 fetch  0x00000001 , 0x00000185 
+ 00026408  0x00006fb4 istore  0x00000001 , 0x00000005 
+ 00026409  0x00006fb5 bne  0x00000033 , 0x00006733 
+ 00026410  0x00006fb6 arg  0x000041be , 0x00000012 
+ 00026411  0x00006fb8 ifetch  0x00000006 , 0x00000006 
+ 00026412  0x00006fb9 istore  0x00000008 , 0x00000005 
+ 00026413  0x00006fba setarg  0x00000000 
+ 00026414  0x00006fbb istore  0x00000008 , 0x00000005 
+ 00026415  0x00006fbc copy  0x00000012 , 0x00000006 
+ 00026416  0x00006fbe call  0x00007ebf 
+ 00026417  0x00006fbf force  0x00000001 , 0x0000003e 
+ 00026418  0x00006fc0 rtn 
+ 00026419  0x00006fc3 beq  0x00000036 , 0x00006737 
+ 00026420  0x00006fc4 beq  0x00000037 , 0x0000673b 
+ 00026421  0x00006fc5 arg  0x00004419 , 0x00000012 
+ 00026422  0x00006fc6 branch  0x0000672b 
+ 00026423  0x00006fc9 arg  0x000044d5 , 0x00000006 
+ 00026424  0x00006fca call  0x00007ebf 
+ 00026425  0x00006fcc arg  0x00004419 , 0x00000006 
+ 00026426  0x00006fcd branch  0x00006730 
+ 00026427  0x00006fd0 arg  0x000044cd , 0x00000006 
+ 00026428  0x00006fd1 call  0x00007ebf 
+ 00026429  0x00006fd2 branch  0x00006739 
+ 00026430  0x00006fd6 call  0x00007fe9 
+ 00026431  0x00006fd7 fetch  0x00000001 , 0x00004217 
+ 00026432  0x00006fd8 rtn  0x00000034 
+ 00026433  0x00006fd9 fetch  0x00000002 , 0x00004682 
+ 00026434  0x00006fda bbit1  0x00000000 , 0x00006754 
+ 00026435  0x00006fdc bpatchx  0x00000097 , 0x00004032 
+ 00026436  0x00006fdd fetch  0x00000001 , 0x0000448e 
+ 00026437  0x00006fde beq  0x00000000 , 0x0000674d 
+ 00026438  0x00006fdf fetch  0x00000001 , 0x00000454 
+ 00026439  0x00006fe0 compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00026440  0x00006fe1 branch  0x0000674d , 0x00000001 
+ 00026441  0x00006fe2 compare  0x00000040 , 0x0000003f , 0x000000c0 
+ 00026442  0x00006fe3 branch  0x00006752 , 0x00000001 
+ 00026443  0x00006fe4 compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00026444  0x00006fe5 branch  0x00006750 , 0x00000001 
+ 00026445  0x00006fe7 jam  0x00000035 , 0x00000185 
+ 00026446  0x00006fe8 fetch  0x00000006 , 0x0000044f 
+ 00026447  0x00006fe9 branch  0x00006757 
+ 00026448  0x00006fec jam  0x00000037 , 0x00000185 
+ 00026449  0x00006fed branch  0x00006757 
+ 00026450  0x00006ff1 jam  0x00000036 , 0x00000185 
+ 00026451  0x00006ff2 branch  0x00006757 
+ 00026452  0x00006ff6 bpatchx  0x00000098 , 0x00004033 
+ 00026453  0x00006ff7 jam  0x00000033 , 0x00000185 
+ 00026454  0x00006ff8 fetch  0x00000006 , 0x00000040 
+ 00026455  0x00006ffa store  0x00000006 , 0x00000186 
+ 00026456  0x00006ffb fetch  0x00000002 , 0x00004215 
+ 00026457  0x00006ffc ifetcht  0x00000001 , 0x0000003f 
+ 00026458  0x00006ffd pincrease  0x00000001 
+ 00026459  0x00006ffe store  0x00000002 , 0x0000018c 
+ 00026460  0x00006fff storet  0x00000001 , 0x00000184 
+ 00026461  0x00007000 fetch  0x00000001 , 0x00004217 
+ 00026462  0x00007001 icopy  0x00000013 
+ 00026463  0x00007003 fetch  0x00000002 , 0x0000018c 
+ 00026464  0x00007004 copy  0x0000003f , 0x00000011 
+ 00026465  0x00007005 call  0x0000676f 
+ 00026466  0x00007006 rtn  0x00000028 
+ 00026467  0x00007007 fetcht  0x00000002 , 0x0000018c 
+ 00026468  0x00007008 increase  0x00000022 , 0x00000002 
+ 00026469  0x00007009 storet  0x00000002 , 0x0000018c 
+ 00026470  0x0000700a increase  0xffffffff , 0x00000002 
+ 00026471  0x0000700b ifetch  0x00000001 , 0x00000002 
+ 00026472  0x0000700c store  0x00000001 , 0x00000184 
+ 00026473  0x0000700d increase  0xffffffff , 0x00000013 
+ 00026474  0x0000700e nbranch  0x0000675f , 0x00000005 
+ 00026475  0x0000700f fetch  0x00000001 , 0x00004217 
+ 00026476  0x00007010 pincrease  0xffffffff 
+ 00026477  0x00007011 store  0x00000001 , 0x00000184 
+ 00026478  0x00007012 rtn 
+ 00026479  0x00007014 fetch  0x00000001 , 0x00000185 
+ 00026480  0x00007015 bne  0x00000033 , 0x00006776 
+ 00026481  0x00007017 arg  0x00000185 , 0x00000012 
+ 00026482  0x00007018 arg  0x00000007 , 0x00000039 
+ 00026483  0x00007019 call  0x00007f88 
+ 00026484  0x0000701a branch  0x00007fe7 , 0x00000005 
+ 00026485  0x0000701b rtn 
+ 00026486  0x0000701e beq  0x00000036 , 0x00006779 
+ 00026487  0x0000701f beq  0x00000037 , 0x00006794 
+ 00026488  0x00007020 branch  0x00006771 
+ 00026489  0x00007023 ifetcht  0x00000001 , 0x00000011 
+ 00026490  0x00007024 isub  0x00000002 , 0x0000003e 
+ 00026491  0x00007025 nrtn  0x00000005 
+ 00026492  0x00007026 arg  0x00000ac2 , 0x00000005 
+ 00026493  0x00007027 arg  0x00000010 , 0x00000039 
+ 00026494  0x00007028 call  0x00007ed4 
+ 00026495  0x00007029 fetch  0x00000003 , 0x00000452 
+ 00026496  0x0000702a store  0x00000003 , 0x00000ac2 
+ 00026497  0x0000702b call  0x0000678b 
+ 00026498  0x0000702c fetch  0x00000002 , 0x00000adf 
+ 00026499  0x0000702d byteswap  0x0000003f , 0x0000003f 
+ 00026500  0x0000702e lshift8  0x0000003f , 0x00000002 
+ 00026501  0x0000702f ifetch  0x00000001 , 0x00000006 
+ 00026502  0x00007030 iadd  0x00000002 , 0x0000003f 
+ 00026503  0x00007031 fetcht  0x00000003 , 0x0000044f 
+ 00026504  0x00007032 isub  0x00000002 , 0x0000003e 
+ 00026505  0x00007033 branch  0x00007fe7 , 0x00000005 
+ 00026506  0x00007034 rtn 
+ 00026507  0x00007038 arg  0x00000ac2 , 0x00000006 
+ 00026508  0x00007039 call  0x00007486 
+ 00026509  0x0000703b ifetch  0x00000001 , 0x00000011 
+ 00026510  0x0000703c call  0x00007487 
+ 00026511  0x0000703d force  0x00000038 , 0x00000036 
+ 00026512  0x0000703e force  0x00000000 , 0x00000036 
+ 00026513  0x0000703f call  0x0000741d 
+ 00026514  0x00007040 arg  0x00000ad2 , 0x00000005 
+ 00026515  0x00007041 branch  0x00007497 
+ 00026516  0x00007044 ifetcht  0x00000001 , 0x00000011 
+ 00026517  0x00007045 isub  0x00000002 , 0x0000003e 
+ 00026518  0x00007046 nrtn  0x00000005 
+ 00026519  0x00007047 copy  0x00000006 , 0x00000011 
+ 00026520  0x00007048 add  0x00000006 , 0x00000008 , 0x00000013 
+ 00026521  0x00007049 arg  0x000044cd , 0x00000012 
+ 00026522  0x0000704a arg  0x00000008 , 0x00000039 
+ 00026523  0x0000704b call  0x00007f88 
+ 00026524  0x0000704c branch  0x00007fe7 , 0x00000005 
+ 00026525  0x0000704d copy  0x00000013 , 0x00000011 
+ 00026526  0x0000704e arg  0x000044d5 , 0x00000012 
+ 00026527  0x0000704f arg  0x00000008 , 0x00000039 
+ 00026528  0x00007050 call  0x00007f88 
+ 00026529  0x00007051 branch  0x00007fe7 , 0x00000005 
+ 00026530  0x00007052 rtn 
+ 00026531  0x00007055 fetch  0x00000002 , 0x00004215 
+ 00026532  0x00007056 ifetcht  0x00000001 , 0x0000003f 
+ 00026533  0x00007057 pincrease  0x00000022 
+ 00026534  0x00007058 ifetch  0x00000001 , 0x0000003f 
+ 00026535  0x00007059 isub  0x00000002 , 0x0000003e 
+ 00026536  0x0000705a rtn 
+ 00026537  0x0000705d fetch  0x00000001 , 0x00004217 
+ 00026538  0x0000705e icopy  0x00000039 
+ 00026539  0x0000705f fetcht  0x00000002 , 0x00004215 
+ 00026540  0x00007060 setarg  0x00000000 
+ 00026541  0x00007062 istore  0x00000001 , 0x00000002 
+ 00026542  0x00007063 increase  0x00000022 , 0x00000002 
+ 00026543  0x00007064 pincrease  0x00000001 
+ 00026544  0x00007065 loop  0x000067ad 
+ 00026545  0x00007066 rtn 
+ 00026546  0x00007069 bpatchx  0x00000099 , 0x00004033 
+ 00026547  0x0000706a call  0x0000673e 
+ 00026548  0x0000706b fetch  0x00000001 , 0x00000030 
+ 00026549  0x0000706c setflag  0x00000028 , 0x00000006 , 0x0000003f 
+ 00026550  0x0000706d store  0x00000001 , 0x00000030 
+ 00026551  0x0000706e nbranch  0x000067bc , 0x00000028 
+ 00026552  0x0000706f add  0x00000011 , 0x0000000a , 0x00000006 
+ 00026553  0x00007071 arg  0x000041be , 0x00000005 
+ 00026554  0x00007072 call  0x00007ebf 
+ 00026555  0x00007073 branch  0x000067d7 
+ 00026556  0x00007075 jam  0x00000000 , 0x000041bd 
+ 00026557  0x00007076 rtn 
+ 00026558  0x00007079 fetch  0x00000009 , 0x000044cb 
+ 00026559  0x0000707a branch  0x000067ca , 0x00000034 
+ 00026560  0x0000707b call  0x0000673e 
+ 00026561  0x0000707c nbranch  0x000067ca , 0x00000028 
+ 00026562  0x0000707d fetch  0x00000002 , 0x0000018c 
+ 00026563  0x0000707e add  0x0000003f , 0x00000001 , 0x00000006 
+ 00026564  0x0000707f arg  0x000044d5 , 0x00000005 
+ 00026565  0x00007080 call  0x00007ebf 
+ 00026566  0x00007081 arg  0x00004419 , 0x00000005 
+ 00026567  0x00007082 call  0x00007ebf 
+ 00026568  0x00007083 jam  0x00000001 , 0x00004429 
+ 00026569  0x00007084 rtn 
+ 00026570  0x00007087 jam  0x00000000 , 0x00004429 
+ 00026571  0x00007088 rtn 
+ 00026572  0x0000708c fetch  0x00000006 , 0x0000044f 
+ 00026573  0x0000708d store  0x00000006 , 0x00000186 
+ 00026574  0x0000708e jam  0x00000034 , 0x00000185 
+ 00026575  0x0000708f branch  0x000067d3 
+ 00026576  0x00007091 fetch  0x00000006 , 0x00000040 
+ 00026577  0x00007092 store  0x00000006 , 0x00000186 
+ 00026578  0x00007093 jam  0x00000033 , 0x00000185 
+ 00026579  0x00007095 fetch  0x00000001 , 0x00004092 
+ 00026580  0x00007096 beq  0x0000000a , 0x0000670b 
+ 00026581  0x00007097 bbit1  0x00000006 , 0x000042da 
+ 00026582  0x00007098 rtn 
+ 00026583  0x0000709c fetch  0x00000008 , 0x000041be 
+ 00026584  0x0000709d fetcht  0x00000008 , 0x000041c6 
+ 00026585  0x0000709e ior  0x00000002 , 0x0000003f 
+ 00026586  0x0000709f rtn  0x00000034 
+ 00026587  0x000070a0 jam  0x00000001 , 0x000041bd 
+ 00026588  0x000070a1 rtn 
+ 00026589  0x000070a9 bpatchx  0x0000009a , 0x00004033 
+ 00026590  0x000070aa set1  0x00000007 , 0x00000002 
+ 00026591  0x000070ab call  0x0000681d 
+ 00026592  0x000070ac nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00026593  0x000070b2 bpatchx  0x0000009b , 0x00004033 
+ 00026594  0x000070b3 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026595  0x000070b4 rtn  0x00000005 
+ 00026596  0x000070b5 isolate0  0x00000007 , 0x00000002 
+ 00026597  0x000070b6 and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026598  0x000070b7 fetch  0x00000004 , 0x000000a1 
+ 00026599  0x000070b8 qsetflag  0x00000001 , 0x0000003f 
+ 00026600  0x000070b9 store  0x00000004 , 0x000000a1 
+ 00026601  0x000070ba fetch  0x00000004 , 0x000000a5 
+ 00026602  0x000070bb nqsetflag  0x00000001 , 0x0000003f 
+ 00026603  0x000070bc store  0x00000004 , 0x000000a5 
+ 00026604  0x000070bd rtn 
+ 00026605  0x000070c1 bpatchx  0x0000009c , 0x00004033 
+ 00026606  0x000070c2 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026607  0x000070c3 rtn  0x00000005 
+ 00026608  0x000070c4 isolate0  0x00000007 , 0x00000002 
+ 00026609  0x000070c5 and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026610  0x000070c6 fetch  0x00000004 , 0x000000a1 
+ 00026611  0x000070c7 qset0  0x0000003f 
+ 00026612  0x000070c8 store  0x00000004 , 0x000000a1 
+ 00026613  0x000070c9 fetch  0x00000004 , 0x000000a5 
+ 00026614  0x000070ca qset0  0x0000003f 
+ 00026615  0x000070cb store  0x00000004 , 0x000000a5 
+ 00026616  0x000070cc rtn 
+ 00026617  0x000070d0 call  0x000067ed 
+ 00026618  0x000070d1 branch  0x000067fe 
+ 00026619  0x000070d5 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026620  0x000070d6 rtn  0x00000005 
+ 00026621  0x000070d7 ncall  0x000067e1 , 0x0000002b 
+ 00026622  0x000070da arg  0x0000807c , 0x00000005 
+ 00026623  0x000070db call  0x00006830 
+ 00026624  0x000070dc setflip  0x00000007 , 0x00000002 
+ 00026625  0x000070dd arg  0x00008078 , 0x00000005 
+ 00026626  0x000070de call  0x00006830 
+ 00026627  0x000070df set0  0x00000007 , 0x00000002 
+ 00026628  0x000070e0 arg  0x00008070 , 0x00000005 
+ 00026629  0x000070e1 branch  0x00006830 
+ 00026630  0x000070e5 arg  0x0000807c , 0x00000005 
+ 00026631  0x000070e6 call  0x00006830 
+ 00026632  0x000070e7 set0  0x00000007 , 0x00000002 
+ 00026633  0x000070e8 arg  0x00008078 , 0x00000005 
+ 00026634  0x000070e9 call  0x00006830 
+ 00026635  0x000070ea set0  0x00000007 , 0x00000002 
+ 00026636  0x000070eb arg  0x00008070 , 0x00000005 
+ 00026637  0x000070ec branch  0x00006830 
+ 00026638  0x000070f1 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026639  0x000070f2 rtn  0x00000005 
+ 00026640  0x000070f3 setflip  0x00000007 , 0x00000002 
+ 00026641  0x000070f4 call  0x0000682f 
+ 00026642  0x000070f6 set1  0x00000007 , 0x00000002 
+ 00026643  0x000070f7 arg  0x00008070 , 0x00000005 
+ 00026644  0x000070f8 branch  0x00006830 
+ 00026645  0x000070fb and  0x00000002 , 0x00000007 , 0x00000007 
+ 00026646  0x000070fc rshift3  0x00000002 , 0x0000003f 
+ 00026647  0x000070fd and_into  0x00000003 , 0x0000003f 
+ 00026648  0x000070fe iadd  0x00000005 , 0x00000005 
+ 00026649  0x000070ff ifetch  0x00000001 , 0x00000005 
+ 00026650  0x00007100 rtn 
+ 00026651  0x00007103 arg  0x00008074 , 0x00000005 
+ 00026652  0x00007104 branch  0x0000681e 
+ 00026653  0x00007109 arg  0x0000811c , 0x00000005 
+ 00026654  0x0000710b call  0x00006815 
+ 00026655  0x0000710c isolate1  0x00000007 , 0x00000002 
+ 00026656  0x0000710d branch  0x00006823 , 0x00000001 
+ 00026657  0x0000710e qisolate0  0x0000003f 
+ 00026658  0x0000710f rtn 
+ 00026659  0x00007111 qisolate1  0x0000003f 
+ 00026660  0x00007112 rtn 
+ 00026661  0x00007115 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026662  0x00007116 rtn  0x00000005 
+ 00026663  0x00007117 isolate1  0x00000007 , 0x0000003e 
+ 00026664  0x00007118 branch  0x0000682c 
+ 00026665  0x0000711b sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026666  0x0000711c rtn  0x00000005 
+ 00026667  0x0000711d isolate0  0x00000007 , 0x0000003e 
+ 00026668  0x00007121 setarg  0x00000000 
+ 00026669  0x00007122 nsetflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00026670  0x00007123 ixor  0x00000002 , 0x00000002 
+ 00026671  0x00007127 arg  0x00008074 , 0x00000005 
+ 00026672  0x0000712b call  0x00006815 
+ 00026673  0x0000712c isolate1  0x00000007 , 0x00000002 
+ 00026674  0x0000712d qsetflag  0x00000001 , 0x0000003f 
+ 00026675  0x0000712e istore  0x00000001 , 0x00000005 
+ 00026676  0x0000712f rtn 
+ 00026677  0x00007132 arg  0xffffffff , 0x00000011 
+ 00026678  0x00007133 hfetch  0x00000001 , 0x00008081 
+ 00026679  0x00007134 compare  0x00000002 , 0x0000003f , 0x00000003 
+ 00026680  0x00007135 call  0x00006878 , 0x00000001 
+ 00026681  0x00007137 compare  0x00000001 , 0x0000003f , 0x00000003 
+ 00026682  0x00007138 call  0x0000687a , 0x00000001 
+ 00026683  0x0000713a compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00026684  0x0000713b call  0x0000687a , 0x00000001 
+ 00026685  0x0000713d isolate1  0x00000002 , 0x0000003f 
+ 00026686  0x0000713e call  0x00006874 , 0x00000001 
+ 00026687  0x00007140 isolate1  0x00000003 , 0x0000003f 
+ 00026688  0x00007141 call  0x00006876 , 0x00000001 
+ 00026689  0x00007143 isolate1  0x00000004 , 0x0000003f 
+ 00026690  0x00007144 call  0x0000687c , 0x00000001 
+ 00026691  0x00007146 isolate1  0x00000006 , 0x0000003f 
+ 00026692  0x00007147 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00026693  0x00007149 isolate1  0x00000007 , 0x0000003f 
+ 00026694  0x0000714a nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026695  0x0000714c hfetch  0x00000001 , 0x00008082 
+ 00026696  0x0000714d isolate1  0x00000000 , 0x0000003f 
+ 00026697  0x0000714e nsetflag  0x00000001 , 0x0000001b , 0x00000011 
+ 00026698  0x0000714f isolate1  0x00000001 , 0x0000003f 
+ 00026699  0x00007150 nsetflag  0x00000001 , 0x0000001c , 0x00000011 
+ 00026700  0x00007151 isolate1  0x00000002 , 0x0000003f 
+ 00026701  0x00007152 nsetflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00026702  0x00007153 isolate1  0x00000003 , 0x0000003f 
+ 00026703  0x00007154 nsetflag  0x00000001 , 0x00000008 , 0x00000011 
+ 00026704  0x00007155 isolate1  0x00000004 , 0x0000003f 
+ 00026705  0x00007156 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026706  0x00007157 isolate1  0x00000005 , 0x0000003f 
+ 00026707  0x00007158 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026708  0x00007159 isolate1  0x00000006 , 0x0000003f 
+ 00026709  0x0000715a nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026710  0x0000715b isolate1  0x00000007 , 0x0000003f 
+ 00026711  0x0000715c nsetflag  0x00000001 , 0x00000017 , 0x00000011 
+ 00026712  0x0000715e hfetch  0x00000001 , 0x00008080 
+ 00026713  0x0000715f isolate1  0x00000000 , 0x0000003f 
+ 00026714  0x00007160 nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026715  0x00007161 isolate1  0x00000001 , 0x0000003f 
+ 00026716  0x00007162 nsetflag  0x00000001 , 0x00000006 , 0x00000011 
+ 00026717  0x00007163 isolate1  0x00000002 , 0x0000003f 
+ 00026718  0x00007164 nsetflag  0x00000001 , 0x00000007 , 0x00000011 
+ 00026719  0x00007165 isolate1  0x00000003 , 0x0000003f 
+ 00026720  0x00007166 nsetflag  0x00000001 , 0x00000012 , 0x00000011 
+ 00026721  0x00007167 isolate1  0x00000004 , 0x0000003f 
+ 00026722  0x00007168 nsetflag  0x00000001 , 0x00000013 , 0x00000011 
+ 00026723  0x00007169 isolate1  0x00000005 , 0x0000003f 
+ 00026724  0x0000716a nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026725  0x0000716b isolate1  0x00000006 , 0x0000003f 
+ 00026726  0x0000716c nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026727  0x0000716d isolate1  0x00000007 , 0x0000003f 
+ 00026728  0x0000716e nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026729  0x00007170 hfetch  0x00000001 , 0x00008062 
+ 00026730  0x00007171 isolate1  0x00000004 , 0x0000003f 
+ 00026731  0x00007172 call  0x0000687e , 0x00000001 
+ 00026732  0x00007173 bpatchx  0x0000009d , 0x00004033 
+ 00026733  0x00007175 hfetch  0x00000004 , 0x00008078 
+ 00026734  0x00007176 hfetcht  0x00000004 , 0x0000807c 
+ 00026735  0x00007177 ior  0x00000002 , 0x0000003f 
+ 00026736  0x00007178 invert  0x0000003f , 0x0000003f 
+ 00026737  0x00007179 iand  0x00000011 , 0x0000003f 
+ 00026738  0x0000717b hstore  0x00000004 , 0x00008070 
+ 00026739  0x0000717c rtn 
+ 00026740  0x00007180 arg  0x00000006 , 0x00000007 
+ 00026741  0x00007181 branch  0x00006884 
+ 00026742  0x00007183 arg  0x00000009 , 0x00000007 
+ 00026743  0x00007184 branch  0x00006882 
+ 00026744  0x00007186 arg  0x00000017 , 0x00000007 
+ 00026745  0x00007187 branch  0x00006882 
+ 00026746  0x00007189 arg  0x00000019 , 0x00000007 
+ 00026747  0x0000718a branch  0x00006884 
+ 00026748  0x0000718c arg  0x0000001e , 0x00000007 
+ 00026749  0x0000718d branch  0x00006884 
+ 00026750  0x0000718f arg  0x00000002 , 0x00000007 
+ 00026751  0x00007190 branch  0x00006884 
+ 00026752  0x00007192 arg  0x00000001 , 0x00000039 
+ 00026753  0x00007193 branch  0x00006885 
+ 00026754  0x00007195 arg  0x00000004 , 0x00000039 
+ 00026755  0x00007196 branch  0x00006885 
+ 00026756  0x00007198 arg  0x00000002 , 0x00000039 
+ 00026757  0x0000719a qset0  0x00000011 
+ 00026758  0x0000719b increase  0x00000001 , 0x00000007 
+ 00026759  0x0000719c loop  0x00006885 
+ 00026760  0x0000719d rtn 
+ 00026761  0x000071a6 call  0x00006895 
+ 00026762  0x000071a7 arg  0x00000006 , 0x00000002 
+ 00026763  0x000071a8 branch  0x0000680e 
+ 00026764  0x000071ab call  0x00006889 
+ 00026765  0x000071ac arg  0x00000006 , 0x00000002 
+ 00026766  0x000071ad branch  0x00006825 
+ 00026767  0x000071b2 call  0x00006895 
+ 00026768  0x000071b3 hfetch  0x00000001 , 0x00008078 
+ 00026769  0x000071b4 set1  0x00000007 , 0x0000003f 
+ 00026770  0x000071b5 hstore  0x00000001 , 0x00008078 
+ 00026771  0x000071b6 arg  0x00000007 , 0x00000002 
+ 00026772  0x000071b7 branch  0x000067fb 
+ 00026773  0x000071ba hfetch  0x00000001 , 0x00008081 
+ 00026774  0x000071bb and_into  0x000000fb , 0x0000003f 
+ 00026775  0x000071bc hstore  0x00000001 , 0x00008081 
+ 00026776  0x000071bd rtn 
+ 00026777  0x000071c0 hfetch  0x00000001 , 0x00008081 
+ 00026778  0x000071c1 isolate1  0x00000002 , 0x0000003f 
+ 00026779  0x000071c2 rtn 
+ 00026780  0x000071c5 call  0x0000666a 
+ 00026781  0x000071c6 setarg  0x000007e0 
+ 00026782  0x000071c7 arg  0x00004150 , 0x00000011 
+ 00026783  0x000071c8 arg  0x00000002 , 0x00000002 
+ 00026784  0x000071c9 call  0x000066b3 
+ 00026785  0x000071ca branch  0x0000666d 
+ 00026786  0x000071ce call  0x0000666a 
+ 00026787  0x000071cf setarg  0x000007e2 
+ 00026788  0x000071d0 arg  0x0000421d , 0x00000011 
+ 00026789  0x000071d1 arg  0x0000000e , 0x00000002 
+ 00026790  0x000071d2 call  0x000066b3 
+ 00026791  0x000071d3 branch  0x0000666d 
+ 00026792  0x000071d8 bpatchx  0x0000009e , 0x00004033 
+ 00026793  0x000071da call  0x000068a2 
+ 00026794  0x000071dc fetch  0x00000001 , 0x0000422d 
+ 00026795  0x000071dd beq  0x00000000 , 0x000068af 
+ 00026796  0x000071de beq  0x00000001 , 0x000068c3 
+ 00026797  0x000071df beq  0x00000002 , 0x000068d7 
+ 00026798  0x000071e0 rtn 
+ 00026799  0x000071e3 fetcht  0x00000002 , 0x00004229 
+ 00026800  0x000071e4 setarg  0x0000aa55 
+ 00026801  0x000071e5 isub  0x00000002 , 0x0000003e 
+ 00026802  0x000071e6 branch  0x000068b8 , 0x00000005 
+ 00026803  0x000071e7 setarg  0x00004dfa 
+ 00026804  0x000071e8 store  0x00000002 , 0x00004227 
+ 00026805  0x000071e9 setarg  0x00004894 
+ 00026806  0x000071ea store  0x00000002 , 0x00004221 
+ 00026807  0x000071eb branch  0x000068c0 
+ 00026808  0x000071ee fetch  0x00000002 , 0x00004227 
+ 00026809  0x000071ef nbranch  0x000068bc , 0x00000034 
+ 00026810  0x000071f0 setarg  0x00004dfa 
+ 00026811  0x000071f1 store  0x00000002 , 0x00004227 
+ 00026812  0x000071f3 fetch  0x00000002 , 0x00004221 
+ 00026813  0x000071f4 nbranch  0x000068c0 , 0x00000034 
+ 00026814  0x000071f5 setarg  0x00004894 
+ 00026815  0x000071f6 store  0x00000002 , 0x00004221 
+ 00026816  0x000071f8 setarg  0x00000064 
+ 00026817  0x000071f9 store  0x00000002 , 0x0000422b 
+ 00026818  0x000071fa rtn 
+ 00026819  0x000071fd fetcht  0x00000002 , 0x00004229 
+ 00026820  0x000071fe setarg  0x0000aa55 
+ 00026821  0x000071ff isub  0x00000002 , 0x0000003e 
+ 00026822  0x00007200 branch  0x000068cc , 0x00000005 
+ 00026823  0x00007201 setarg  0x00005932 
+ 00026824  0x00007202 store  0x00000002 , 0x00004225 
+ 00026825  0x00007203 setarg  0x00004323 
+ 00026826  0x00007204 store  0x00000002 , 0x0000421f 
+ 00026827  0x00007205 branch  0x000068d4 
+ 00026828  0x00007208 fetch  0x00000002 , 0x00004225 
+ 00026829  0x00007209 nbranch  0x000068d0 , 0x00000034 
+ 00026830  0x0000720a setarg  0x00005932 
+ 00026831  0x0000720b store  0x00000002 , 0x00004225 
+ 00026832  0x0000720d fetch  0x00000002 , 0x0000421f 
+ 00026833  0x0000720e nbranch  0x000068d4 , 0x00000034 
+ 00026834  0x0000720f setarg  0x00004323 
+ 00026835  0x00007210 store  0x00000002 , 0x0000421f 
+ 00026836  0x00007212 setarg  0x00000190 
+ 00026837  0x00007213 store  0x00000002 , 0x0000422b 
+ 00026838  0x00007214 rtn 
+ 00026839  0x00007217 fetcht  0x00000002 , 0x00004229 
+ 00026840  0x00007218 setarg  0x0000aa55 
+ 00026841  0x00007219 isub  0x00000002 , 0x0000003e 
+ 00026842  0x0000721a branch  0x000068e0 , 0x00000005 
+ 00026843  0x0000721b setarg  0x00006946 
+ 00026844  0x0000721c store  0x00000002 , 0x00004223 
+ 00026845  0x0000721d setarg  0x00005377 
+ 00026846  0x0000721e store  0x00000002 , 0x0000421d 
+ 00026847  0x0000721f branch  0x000068e8 
+ 00026848  0x00007222 fetch  0x00000002 , 0x00004223 
+ 00026849  0x00007223 nbranch  0x000068e4 , 0x00000034 
+ 00026850  0x00007224 setarg  0x00006946 
+ 00026851  0x00007225 store  0x00000002 , 0x00004223 
+ 00026852  0x00007227 fetch  0x00000002 , 0x0000421d 
+ 00026853  0x00007228 nbranch  0x000068e8 , 0x00000034 
+ 00026854  0x00007229 setarg  0x00005377 
+ 00026855  0x0000722a store  0x00000002 , 0x0000421d 
+ 00026856  0x0000722c setarg  0x00000032 
+ 00026857  0x0000722d store  0x00000002 , 0x0000422b 
+ 00026858  0x0000722e rtn 
+ 00026859  0x00007232 fetch  0x00000001 , 0x0000422d 
+ 00026860  0x00007233 beq  0x00000000 , 0x000068f0 
+ 00026861  0x00007234 beq  0x00000001 , 0x000068f2 
+ 00026862  0x00007235 beq  0x00000002 , 0x000068f4 
+ 00026863  0x00007236 rtn 
+ 00026864  0x00007238 jam  0x000000bf , 0x00008971 
+ 00026865  0x00007239 branch  0x000068f8 
+ 00026866  0x0000723b jam  0x000000af , 0x00008971 
+ 00026867  0x0000723c branch  0x000068f8 
+ 00026868  0x0000723e jam  0x0000008f , 0x00008971 
+ 00026869  0x0000723f fetch  0x00000001 , 0x0000422e 
+ 00026870  0x00007240 hstore  0x00000001 , 0x00008973 
+ 00026871  0x00007241 branch  0x000068f8 
+ 00026872  0x00007243 bpatchx  0x0000009f , 0x00004033 
+ 00026873  0x00007244 hfetch  0x00000001 , 0x00008053 
+ 00026874  0x00007245 set1  0x00000007 , 0x0000003f 
+ 00026875  0x00007246 hstore  0x00000001 , 0x00008053 
+ 00026876  0x00007247 hfetch  0x00000001 , 0x00008973 
+ 00026877  0x00007248 or_into  0x00000030 , 0x0000003f 
+ 00026878  0x00007249 hstore  0x00000001 , 0x00008973 
+ 00026879  0x0000724a jam  0x0000007c , 0x00008906 
+ 00026880  0x0000724b jam  0x000000aa , 0x00008972 
+ 00026881  0x0000724c nop  0x00001388 
+ 00026882  0x0000724d hfetcht  0x00000002 , 0x00008150 
+ 00026883  0x0000724e hfetch  0x00000001 , 0x00008053 
+ 00026884  0x0000724f set0  0x00000007 , 0x0000003f 
+ 00026885  0x00007250 hstore  0x00000001 , 0x00008053 
+ 00026886  0x00007251 storet  0x00000002 , 0x0000422f 
+ 00026887  0x00007252 rtn 
+ 00026888  0x00007255 bpatchx  0x000000a0 , 0x00004034 
+ 00026889  0x00007256 fetch  0x00000001 , 0x0000422d 
+ 00026890  0x00007257 beq  0x00000000 , 0x0000690e 
+ 00026891  0x00007258 beq  0x00000001 , 0x00006912 
+ 00026892  0x00007259 beq  0x00000002 , 0x00006916 
+ 00026893  0x0000725a rtn 
+ 00026894  0x0000725d fetch  0x00000002 , 0x00004227 
+ 00026895  0x0000725e fetcht  0x00000002 , 0x00004221 
+ 00026896  0x0000725f arg  0x000000c8 , 0x00000013 
+ 00026897  0x00007260 branch  0x0000691a 
+ 00026898  0x00007263 fetch  0x00000002 , 0x00004225 
+ 00026899  0x00007264 fetcht  0x00000002 , 0x0000421f 
+ 00026900  0x00007265 arg  0x00000064 , 0x00000013 
+ 00026901  0x00007266 branch  0x0000691a 
+ 00026902  0x00007269 fetch  0x00000002 , 0x00004223 
+ 00026903  0x0000726a fetcht  0x00000002 , 0x0000421d 
+ 00026904  0x0000726b arg  0x00000032 , 0x00000013 
+ 00026905  0x0000726c branch  0x0000691a 
+ 00026906  0x0000726f isub  0x00000002 , 0x00000011 
+ 00026907  0x00007270 fetch  0x00000002 , 0x0000422f 
+ 00026908  0x00007271 isub  0x00000002 , 0x0000003f 
+ 00026909  0x00007272 nbranch  0x00006927 , 0x00000002 
+ 00026910  0x00007273 fetcht  0x00000002 , 0x0000422b 
+ 00026911  0x00007274 imul32  0x00000002 , 0x00000012 
+ 00026912  0x00007275 copy  0x00000013 , 0x0000003f 
+ 00026913  0x00007276 imul32  0x00000011 , 0x0000003f 
+ 00026914  0x00007277 iadd  0x00000012 , 0x0000003f 
+ 00026915  0x00007279 idiv  0x00000011 
+ 00026916  0x0000727a call  0x00007f86 
+ 00026917  0x0000727b quotient  0x0000003f 
+ 00026918  0x0000727c rtn 
+ 00026919  0x0000727f copy  0x00000002 , 0x0000003f 
+ 00026920  0x00007280 fetcht  0x00000002 , 0x0000422f 
+ 00026921  0x00007281 isub  0x00000002 , 0x0000003f 
+ 00026922  0x00007282 fetcht  0x00000002 , 0x0000422b 
+ 00026923  0x00007283 imul32  0x00000002 , 0x00000012 
+ 00026924  0x00007284 copy  0x00000013 , 0x0000003f 
+ 00026925  0x00007285 imul32  0x00000011 , 0x0000003f 
+ 00026926  0x00007286 isub  0x00000012 , 0x0000003f 
+ 00026927  0x00007287 branch  0x00006923 
+ 00026928  0x00007293 ifetch  0x00000008 , 0x00000011 
+ 00026929  0x00007294 store  0x00000008 , 0x00000a9a 
+ 00026930  0x00007295 fetch  0x00000002 , 0x00000a9a 
+ 00026931  0x00007296 fetcht  0x00000002 , 0x00000a9c 
+ 00026932  0x00007297 isub  0x00000002 , 0x00000011 
+ 00026933  0x00007298 fetch  0x00000002 , 0x00000aa0 
+ 00026934  0x00007299 isub  0x00000002 , 0x00000012 
+ 00026935  0x0000729a fetcht  0x00000002 , 0x00000a9e 
+ 00026936  0x0000729b isub  0x00000002 , 0x0000003e 
+ 00026937  0x0000729c ncall  0x00006940 , 0x00000002 
+ 00026938  0x0000729d mul32  0x00000012 , 0x00000064 , 0x0000003f 
+ 00026939  0x0000729e idiv  0x00000011 
+ 00026940  0x0000729f call  0x00007f86 
+ 00026941  0x000072a0 quotient  0x0000003f 
+ 00026942  0x000072a1 call  0x00006944 , 0x00000034 
+ 00026943  0x000072a2 rtn 
+ 00026944  0x000072a4 fetch  0x00000001 , 0x00004231 
+ 00026945  0x000072a5 set1  0x00000000 , 0x0000003f 
+ 00026946  0x000072a6 store  0x00000001 , 0x00004231 
+ 00026947  0x000072a7 rtn 
+ 00026948  0x000072a9 fetcht  0x00000001 , 0x00004231 
+ 00026949  0x000072aa set1  0x00000001 , 0x00000002 
+ 00026950  0x000072ab storet  0x00000001 , 0x00004231 
+ 00026951  0x000072ac rtn 
+ 00026952  0x000072b2 fetch  0x00000002 , 0x0000423d 
+ 00026953  0x000072b3 ifetch  0x00000001 , 0x0000003f 
+ 00026954  0x000072b5 rtn  0x00000034 
+ 00026955  0x000072b6 copy  0x0000003f , 0x00000039 
+ 00026956  0x000072b8 fetch  0x00000002 , 0x0000423d 
+ 00026957  0x000072b9 increase  0x00000003 , 0x0000003f 
+ 00026958  0x000072ba copy  0x0000003f , 0x00000011 
+ 00026959  0x000072bc ifetcht  0x00000001 , 0x00000011 
+ 00026960  0x000072bd call  0x000067fb 
+ 00026961  0x000072be increase  0x00000001 , 0x00000011 
+ 00026962  0x000072bf loop  0x0000694f 
+ 00026963  0x000072c1 rtn 
+ 00026964  0x000072c4 fetch  0x00000002 , 0x0000423d 
+ 00026965  0x000072c5 increase  0x00000003 , 0x0000003f 
+ 00026966  0x000072c6 copy  0x0000003f , 0x00000011 
+ 00026967  0x000072c8 force  0x00000000 , 0x00000012 
+ 00026968  0x000072c9 jam  0x00000000 , 0x00000b12 
+ 00026969  0x000072cb ifetcht  0x00000001 , 0x00000011 
+ 00026970  0x000072cc call  0x0000681d 
+ 00026971  0x000072cd bpatchx  0x000000a1 , 0x00004034 
+ 00026972  0x000072ce fetch  0x00000002 , 0x00000b12 
+ 00026973  0x000072cf copy  0x00000012 , 0x00000007 
+ 00026974  0x000072d0 qsetflag  0x00000001 , 0x0000003f 
+ 00026975  0x000072d1 store  0x00000002 , 0x00000b12 
+ 00026976  0x000072d2 increase  0x00000001 , 0x00000011 
+ 00026977  0x000072d3 increase  0x00000001 , 0x00000012 
+ 00026978  0x000072d4 fetch  0x00000002 , 0x0000423d 
+ 00026979  0x000072d5 ifetch  0x00000001 , 0x0000003f 
+ 00026980  0x000072d7 ixor  0x00000012 , 0x0000003e 
+ 00026981  0x000072d8 nbranch  0x00006959 , 0x00000005 
+ 00026982  0x000072d9 fetch  0x00000002 , 0x00000b12 
+ 00026983  0x000072da fetcht  0x00000002 , 0x00000b14 
+ 00026984  0x000072db ixor  0x00000002 , 0x0000003e 
+ 00026985  0x000072dc rtn  0x00000005 
+ 00026986  0x000072dd enable  0x00000028 
+ 00026987  0x000072de rtn 
+ 00026988  0x000072e1 fetch  0x00000002 , 0x0000423d 
+ 00026989  0x000072e2 ifetch  0x00000001 , 0x0000003f 
+ 00026990  0x000072e4 rtn  0x00000034 
+ 00026991  0x000072e5 copy  0x0000003f , 0x00000039 
+ 00026992  0x000072e6 fetch  0x00000002 , 0x0000423d 
+ 00026993  0x000072e7 increase  0x00000003 , 0x0000003f 
+ 00026994  0x000072e8 copy  0x0000003f , 0x00000011 
+ 00026995  0x000072ea ifetcht  0x00000001 , 0x00000011 
+ 00026996  0x000072eb call  0x000067dd 
+ 00026997  0x000072ec increase  0x00000001 , 0x00000011 
+ 00026998  0x000072ed loop  0x00006973 
+ 00026999  0x000072ef rtn 
+ 00027000  0x000072f2 arg  0x00000009 , 0x00000007 
+ 00027001  0x000072f3 call  0x00007f16 
+ 00027002  0x000072f4 nrtn  0x00000034 
+ 00027003  0x000072f5 setarg  0x00000020 
+ 00027004  0x000072f6 arg  0x00000009 , 0x00000007 
+ 00027005  0x000072f7 call  0x00007f08 
+ 00027006  0x000072f8 disable  0x00000028 
+ 00027007  0x000072f9 call  0x0000696c 
+ 00027008  0x000072fa bpatchx  0x000000a2 , 0x00004034 
+ 00027009  0x000072fb fetch  0x00000002 , 0x0000423d 
+ 00027010  0x000072fc ifetch  0x00000001 , 0x0000003f 
+ 00027011  0x000072fe rtn  0x00000034 
+ 00027012  0x000072ff call  0x00006954 
+ 00027013  0x00007300 nbranch  0x00007d02 , 0x00000028 
+ 00027014  0x00007301 call  0x00007d00 
+ 00027015  0x00007302 disable  0x00000028 
+ 00027016  0x00007303 fetch  0x00000002 , 0x00000b12 
+ 00027017  0x00007304 store  0x00000002 , 0x00000b19 
+ 00027018  0x00007305 jam  0x00000000 , 0x00000b1b 
+ 00027019  0x00007306 force  0x00000000 , 0x00000007 
+ 00027020  0x00007308 fetch  0x00000002 , 0x00000b14 
+ 00027021  0x00007309 rshift  0x0000003f , 0x00000002 
+ 00027022  0x0000730a storet  0x00000002 , 0x00000b14 
+ 00027023  0x0000730b and  0x0000003f , 0x00000001 , 0x0000003f 
+ 00027024  0x0000730c fetcht  0x00000002 , 0x00000b19 
+ 00027025  0x0000730d and  0x00000002 , 0x00000001 , 0x00000011 
+ 00027026  0x0000730e rshift  0x00000002 , 0x00000002 
+ 00027027  0x0000730f storet  0x00000002 , 0x00000b19 
+ 00027028  0x00007310 ixor  0x00000011 , 0x0000003e 
+ 00027029  0x00007311 ncall  0x000069a1 , 0x00000005 
+ 00027030  0x00007312 fetch  0x00000002 , 0x0000423d 
+ 00027031  0x00007313 ifetch  0x00000001 , 0x0000003f 
+ 00027032  0x00007315 fetcht  0x00000001 , 0x00000b1b 
+ 00027033  0x00007316 increase  0x00000001 , 0x00000002 
+ 00027034  0x00007317 storet  0x00000001 , 0x00000b1b 
+ 00027035  0x00007318 copy  0x00000002 , 0x00000007 
+ 00027036  0x00007319 ixor  0x00000007 , 0x0000003e 
+ 00027037  0x0000731a nbranch  0x0000698c , 0x00000005 
+ 00027038  0x0000731b fetch  0x00000002 , 0x00000b12 
+ 00027039  0x0000731c store  0x00000002 , 0x00000b14 
+ 00027040  0x0000731d rtn 
+ 00027041  0x0000731f bpatchx  0x000000a3 , 0x00004034 
+ 00027042  0x00007320 fetch  0x00000002 , 0x0000423d 
+ 00027043  0x00007321 increase  0x00000001 , 0x0000003f 
+ 00027044  0x00007322 ifetch  0x00000002 , 0x0000003f 
+ 00027045  0x00007323 branch  0x00007f9c 
+ 00027046  0x0000732f hfetch  0x00000001 , 0x00008042 
+ 00027047  0x00007330 ior  0x00000011 , 0x0000003f 
+ 00027048  0x00007331 hstore  0x00000001 , 0x00008042 
+ 00027049  0x00007332 hfetch  0x00000002 , 0x00008050 
+ 00027050  0x00007333 set0  0x0000000d , 0x0000003f 
+ 00027051  0x00007334 hstore  0x00000002 , 0x00008050 
+ 00027052  0x00007336 nop  0x00000064 
+ 00027053  0x00007337 rtn 
+ 00027054  0x00007343 fetcht  0x00000003 , 0x00000a9c 
+ 00027055  0x00007344 setarg  0x00b71b00 
+ 00027056  0x00007345 idiv  0x00000002 
+ 00027057  0x00007346 call  0x00007f86 
+ 00027058  0x00007347 quotient  0x00000002 
+ 00027059  0x00007348 fetch  0x00000001 , 0x00000a9f 
+ 00027060  0x00007349 imul32  0x00000002 , 0x0000003f 
+ 00027061  0x0000734a div  0x0000003f , 0x00000064 
+ 00027062  0x0000734b call  0x00007f86 
+ 00027063  0x0000734c quotient  0x00000011 
+ 00027064  0x0000734d copy  0x00000002 , 0x0000003f 
+ 00027065  0x0000734e isub  0x00000011 , 0x00000012 
+ 00027066  0x0000734f fetch  0x00000001 , 0x00000a9b 
+ 00027067  0x00007350 call  0x000069be 
+ 00027068  0x00007351 fetch  0x00000001 , 0x00000a9a 
+ 00027069  0x00007352 branch  0x000069d5 
+ 00027070  0x00007356 beq  0x00000000 , 0x000069c4 
+ 00027071  0x00007357 beq  0x00000001 , 0x000069c6 
+ 00027072  0x00007358 beq  0x00000002 , 0x000069c8 
+ 00027073  0x00007359 beq  0x00000003 , 0x000069ca 
+ 00027074  0x0000735a beq  0x00000004 , 0x000069cc 
+ 00027075  0x0000735b beq  0x00000005 , 0x000069ce 
+ 00027076  0x0000735d arg  0x000080a0 , 0x00000005 
+ 00027077  0x0000735e branch  0x000069d0 
+ 00027078  0x00007360 arg  0x000080a4 , 0x00000005 
+ 00027079  0x00007361 branch  0x000069d0 
+ 00027080  0x00007363 arg  0x000080a8 , 0x00000005 
+ 00027081  0x00007364 branch  0x000069d0 
+ 00027082  0x00007366 arg  0x00008064 , 0x00000005 
+ 00027083  0x00007367 branch  0x000069d0 
+ 00027084  0x00007369 arg  0x00008068 , 0x00000005 
+ 00027085  0x0000736a branch  0x000069d0 
+ 00027086  0x0000736c arg  0x0000806c , 0x00000005 
+ 00027087  0x0000736d branch  0x000069d0 
+ 00027088  0x0000736f copy  0x00000011 , 0x0000003f 
+ 00027089  0x00007370 istore  0x00000002 , 0x00000005 
+ 00027090  0x00007371 copy  0x00000012 , 0x0000003f 
+ 00027091  0x00007372 istore  0x00000002 , 0x00000005 
+ 00027092  0x00007373 rtn 
+ 00027093  0x00007378 enable  0x00000028 
+ 00027094  0x00007379 branch  0x000069d8 
+ 00027095  0x0000737b disable  0x00000028 
+ 00027096  0x0000737d beq  0x00000004 , 0x000069e3 
+ 00027097  0x0000737e beq  0x00000005 , 0x000069e5 
+ 00027098  0x0000737f beq  0x0000001b , 0x000069e7 
+ 00027099  0x00007380 beq  0x0000001c , 0x000069e9 
+ 00027100  0x00007381 beq  0x00000003 , 0x000069eb 
+ 00027101  0x00007382 beq  0x00000008 , 0x000069ed 
+ 00027102  0x00007383 beq  0x00000014 , 0x000069ef 
+ 00027103  0x00007384 beq  0x00000015 , 0x000069f1 
+ 00027104  0x00007385 beq  0x00000016 , 0x000069f3 
+ 00027105  0x00007386 beq  0x00000017 , 0x000069f5 
+ 00027106  0x00007387 rtn 
+ 00027107  0x0000738b arg  0x00000006 , 0x00000007 
+ 00027108  0x0000738c branch  0x000069ff 
+ 00027109  0x0000738e arg  0x00000007 , 0x00000007 
+ 00027110  0x0000738f branch  0x000069ff 
+ 00027111  0x00007391 arg  0x00000008 , 0x00000007 
+ 00027112  0x00007392 branch  0x000069ff 
+ 00027113  0x00007394 arg  0x00000009 , 0x00000007 
+ 00027114  0x00007395 branch  0x000069ff 
+ 00027115  0x00007397 arg  0x0000000a , 0x00000007 
+ 00027116  0x00007398 branch  0x000069ff 
+ 00027117  0x0000739a arg  0x0000000b , 0x00000007 
+ 00027118  0x0000739b branch  0x000069ff 
+ 00027119  0x0000739d arg  0x0000000c , 0x00000007 
+ 00027120  0x0000739e branch  0x00006a01 
+ 00027121  0x000073a0 arg  0x0000000d , 0x00000007 
+ 00027122  0x000073a1 branch  0x00006a01 
+ 00027123  0x000073a3 arg  0x0000000e , 0x00000007 
+ 00027124  0x000073a4 branch  0x00006a01 
+ 00027125  0x000073a6 arg  0x0000000f , 0x00000007 
+ 00027126  0x000073a7 branch  0x00006a01 
+ 00027127  0x000073aa hfetch  0x00000002 , 0x00008081 
+ 00027128  0x000073ab qsetflag  0x00000028 , 0x0000003f 
+ 00027129  0x000073ac hstore  0x00000002 , 0x00008081 
+ 00027130  0x000073ad copy  0x00000011 , 0x00000007 
+ 00027131  0x000073ae hfetch  0x00000001 , 0x00008085 
+ 00027132  0x000073af qsetflag  0x00000028 , 0x0000003f 
+ 00027133  0x000073b0 hstore  0x00000001 , 0x00008085 
+ 00027134  0x000073b1 rtn 
+ 00027135  0x000073b4 add  0x00000007 , 0xfffffffc , 0x00000011 
+ 00027136  0x000073b5 branch  0x000069f7 
+ 00027137  0x000073b8 add  0x00000007 , 0xfffffff6 , 0x00000011 
+ 00027138  0x000073b9 branch  0x000069f7 
+ 00027139  0x000073bf rtn  0x0000002b 
+ 00027140  0x000073c0 jam  0x00000000 , 0x00004567 
+ 00027141  0x000073c1 jam  0x00000003 , 0x000004ed 
+ 00027142  0x000073c2 jam  0x00000003 , 0x000004ee 
+ 00027143  0x000073c3 jam  0x00000011 , 0x000004f2 
+ 00027144  0x000073c4 jam  0x00000013 , 0x000004f3 
+ 00027145  0x000073c5 setarg  0x00000000 
+ 00027146  0x000073c6 store  0x00000003 , 0x000004ef 
+ 00027147  0x000073c7 store  0x00000001 , 0x00004254 
+ 00027148  0x000073c8 jam  0x00000000 , 0x00004681 
+ 00027149  0x000073cb bpatchx  0x000000a4 , 0x00004034 
+ 00027150  0x000073cc setarg  0x00000000 
+ 00027151  0x000073cd store  0x00000001 , 0x00004254 
+ 00027152  0x000073ce store  0x00000001 , 0x00004564 
+ 00027153  0x000073cf store  0x00000001 , 0x0000455d 
+ 00027154  0x000073d0 fetch  0x00000001 , 0x0000456b 
+ 00027155  0x000073d1 beq  0x00000001 , 0x00006a16 
+ 00027156  0x000073d2 jam  0x00000050 , 0x00004569 
+ 00027157  0x000073d3 rtn 
+ 00027158  0x000073d6 jam  0x00000000 , 0x00004569 
+ 00027159  0x000073d7 rtn 
+ 00027160  0x000073da or_into  0x00000002 , 0x00000002 
+ 00027161  0x000073db rtn 
+ 00027162  0x000073e8 copy  0x00000002 , 0x0000003f 
+ 00027163  0x000073e9 reverse  0x0000003f , 0x0000003f 
+ 00027164  0x000073ea store  0x00000001 , 0x00004562 
+ 00027165  0x000073eb force  0x0000003f , 0x0000003f 
+ 00027166  0x000073ec reverse  0x0000003f , 0x0000003f 
+ 00027167  0x000073ed store  0x00000001 , 0x00004561 
+ 00027168  0x000073ee force  0x00000001 , 0x0000003f 
+ 00027169  0x000073ef reverse  0x0000003f , 0x0000003f 
+ 00027170  0x000073f0 store  0x00000001 , 0x00004560 
+ 00027171  0x000073f1 call  0x00006a50 
+ 00027172  0x000073f2 copy  0x00000002 , 0x0000003f 
+ 00027173  0x000073f3 rtn 
+ 00027174  0x000073f5 reverse  0x0000003f , 0x0000003f 
+ 00027175  0x000073f6 store  0x00000001 , 0x00004562 
+ 00027176  0x000073f7 force  0x00000073 , 0x0000003f 
+ 00027177  0x000073f8 reverse  0x0000003f , 0x0000003f 
+ 00027178  0x000073f9 store  0x00000001 , 0x00004561 
+ 00027179  0x000073fa force  0x00000001 , 0x0000003f 
+ 00027180  0x000073fb reverse  0x0000003f , 0x0000003f 
+ 00027181  0x000073fc store  0x00000001 , 0x00004560 
+ 00027182  0x000073fd branch  0x00006a50 
+ 00027183  0x00007400 fetch  0x00000001 , 0x00004563 
+ 00027184  0x00007401 branch  0x00006a33 , 0x00000034 
+ 00027185  0x00007402 setarg  0x00000070 
+ 00027186  0x00007403 rtn 
+ 00027187  0x00007405 setarg  0x000000aa 
+ 00027188  0x00007406 rtn 
+ 00027189  0x00007409 reverse  0x0000003f , 0x0000003f 
+ 00027190  0x0000740a store  0x00000001 , 0x00004562 
+ 00027191  0x0000740b force  0x000000ef , 0x0000003f 
+ 00027192  0x0000740c call  0x00006a44 
+ 00027193  0x0000740d fetcht  0x00000002 , 0x000004f7 
+ 00027194  0x0000740e copy  0x00000002 , 0x00000005 
+ 00027195  0x0000740f istore  0x00000001 , 0x00000005 
+ 00027196  0x00007410 copy  0x00000005 , 0x00000002 
+ 00027197  0x00007411 storet  0x00000002 , 0x000004f7 
+ 00027198  0x00007412 force  0x000000ff , 0x0000003f 
+ 00027199  0x00007413 call  0x00006a44 
+ 00027200  0x00007414 fetcht  0x00000002 , 0x000004f7 
+ 00027201  0x00007415 copy  0x00000002 , 0x00000005 
+ 00027202  0x00007416 istore  0x00000001 , 0x00000005 
+ 00027203  0x00007417 rtn 
+ 00027204  0x00007421 reverse  0x0000003f , 0x0000003f 
+ 00027205  0x00007422 store  0x00000001 , 0x00004561 
+ 00027206  0x00007423 fetch  0x00000002 , 0x00004561 
+ 00027207  0x00007424 lshift8  0x0000003f , 0x0000003f 
+ 00027208  0x00007425 store  0x00000003 , 0x000004f4 
+ 00027209  0x00007426 arg  0x00000107 , 0x00000011 
+ 00027210  0x00007427 arg  0x0000000f , 0x00000012 
+ 00027211  0x00007428 call  0x00006a5d 
+ 00027212  0x00007429 xor_into  0x000000d7 , 0x0000003f 
+ 00027213  0x0000742a invert  0x0000003f , 0x0000003f 
+ 00027214  0x0000742b reverse  0x0000003f , 0x0000003f 
+ 00027215  0x0000742c rtn 
+ 00027216  0x00007437 fetch  0x00000003 , 0x00004560 
+ 00027217  0x00007438 store  0x00000003 , 0x000004f4 
+ 00027218  0x00007439 arg  0x00000107 , 0x00000011 
+ 00027219  0x0000743a arg  0x0000000f , 0x00000012 
+ 00027220  0x0000743b call  0x00006a5d 
+ 00027221  0x0000743c lshift8  0x0000003f , 0x0000003f 
+ 00027222  0x0000743d arg  0x00000007 , 0x00000012 
+ 00027223  0x0000743e call  0x00006a5d 
+ 00027224  0x0000743f xor_into  0x0000002b , 0x0000003f 
+ 00027225  0x00007440 invert  0x0000003f , 0x0000003f 
+ 00027226  0x00007441 reverse  0x0000003f , 0x0000003f 
+ 00027227  0x00007442 copy  0x0000003f , 0x00000002 
+ 00027228  0x00007443 rtn 
+ 00027229  0x00007446 arg  0x00000000 , 0x00000013 
+ 00027230  0x00007447 copy  0x00000012 , 0x00000039 
+ 00027231  0x00007448 call  0x00007e71 
+ 00027232  0x00007449 icopy  0x00000002 
+ 00027233  0x0000744f copy  0x00000002 , 0x0000003f 
+ 00027234  0x00007450 lshift  0x00000013 , 0x00000013 
+ 00027235  0x00007451 bbit0  0x00000008 , 0x00006a66 
+ 00027236  0x00007452 ixor  0x00000011 , 0x00000002 
+ 00027237  0x00007453 increase  0x00000001 , 0x00000013 
+ 00027238  0x00007455 lshift  0x00000002 , 0x00000002 
+ 00027239  0x00007456 fetch  0x00000003 , 0x000004f4 
+ 00027240  0x00007457 increase  0xffffffff , 0x00000012 
+ 00027241  0x00007458 compare  0x000000ff , 0x00000012 , 0x000000ff 
+ 00027242  0x00007459 branch  0x00006a70 , 0x00000001 
+ 00027243  0x0000745a copy  0x00000012 , 0x00000039 
+ 00027244  0x0000745b call  0x00007e71 
+ 00027245  0x0000745c isolate1  0x00000000 , 0x0000003f 
+ 00027246  0x0000745d setflag  0x00000001 , 0x00000000 , 0x00000002 
+ 00027247  0x0000745e branch  0x00006a61 
+ 00027248  0x00007461 rshift  0x00000002 , 0x0000003f 
+ 00027249  0x00007462 rtn 
+ 00027250  0x00007465 fetcht  0x00000001 , 0x0000455d 
+ 00027251  0x00007468 lshift2  0x00000002 , 0x00000002 
+ 00027252  0x00007469 set1  0x00000000 , 0x00000002 
+ 00027253  0x0000746a fetch  0x00000001 , 0x00004563 
+ 00027254  0x0000746b ncall  0x00006a18 , 0x00000034 
+ 00027255  0x0000746c storet  0x00000001 , 0x0000050d 
+ 00027256  0x0000746d rtn 
+ 00027257  0x00007471 lshift  0x00000002 , 0x00000002 
+ 00027258  0x00007472 fetch  0x00000001 , 0x00004563 
+ 00027259  0x00007473 setflag  0x00000034 , 0x00000000 , 0x00000002 
+ 00027260  0x00007475 rtn 
+ 00027261  0x00007477 fetcht  0x00000001 , 0x000004fc 
+ 00027262  0x00007478 jam  0x000000d7 , 0x000004fe 
+ 00027263  0x00007479 call  0x00006bb6 
+ 00027264  0x0000747a fetch  0x00000001 , 0x00004251 
+ 00027265  0x0000747b set1  0x00000006 , 0x0000003f 
+ 00027266  0x0000747c set1  0x00000007 , 0x0000003f 
+ 00027267  0x0000747d store  0x00000001 , 0x00004251 
+ 00027268  0x0000747e jam  0x00000000 , 0x00004563 
+ 00027269  0x0000747f branch  0x00006b97 
+ 00027270  0x00007481 fetch  0x00000001 , 0x00004251 
+ 00027271  0x00007482 set1  0x00000007 , 0x0000003f 
+ 00027272  0x00007483 store  0x00000001 , 0x00004251 
+ 00027273  0x00007484 branch  0x00006b97 
+ 00027274  0x00007488 bpatchx  0x000000a5 , 0x00004034 
+ 00027275  0x00007489 fetch  0x00000001 , 0x00004681 
+ 00027276  0x0000748a beq  0x00000000 , 0x00006a8e 
+ 00027277  0x0000748b branch  0x00006b4c 
+ 00027278  0x0000748e fetch  0x00000002 , 0x00000264 
+ 00027279  0x0000748f copy  0x0000003f , 0x00000006 
+ 00027280  0x00007490 call  0x00006ab8 
+ 00027281  0x00007491 fetch  0x00000001 , 0x000004fc 
+ 00027282  0x00007492 beq  0x00000000 , 0x00006a94 
+ 00027283  0x00007493 branch  0x00006b18 
+ 00027284  0x00007495 bpatchx  0x000000a6 , 0x00004034 
+ 00027285  0x00007496 fetch  0x00000001 , 0x000004fd 
+ 00027286  0x00007497 beq  0x0000003f , 0x00006a7d 
+ 00027287  0x00007498 beq  0x00000073 , 0x00006a86 
+ 00027288  0x00007499 beq  0x000000ef , 0x00006a9b 
+ 00027289  0x0000749a beq  0x00000053 , 0x00006b44 
+ 00027290  0x0000749b rtn 
+ 00027291  0x0000749f fetch  0x00000002 , 0x00000501 
+ 00027292  0x000074a0 copy  0x0000003f , 0x00000006 
+ 00027293  0x000074a1 call  0x00006ac3 
+ 00027294  0x000074a2 fetch  0x00000001 , 0x00000503 
+ 00027295  0x000074a3 beq  0x00000041 , 0x00006aa5 
+ 00027296  0x000074a4 beq  0x00000040 , 0x00006aad 
+ 00027297  0x000074a5 beq  0x00000071 , 0x00006ae6 
+ 00027298  0x000074a6 beq  0x00000070 , 0x00006af2 
+ 00027299  0x000074a7 beq  0x00000049 , 0x00006afd 
+ 00027300  0x000074a8 branch  0x00006b97 
+ 00027301  0x000074ab call  0x00006aaf 
+ 00027302  0x000074ad branch  0x00006aa7 
+ 00027303  0x000074b0 fetch  0x00000001 , 0x00004254 
+ 00027304  0x000074b1 set1  0x00000000 , 0x0000003f 
+ 00027305  0x000074b2 set1  0x00000001 , 0x0000003f 
+ 00027306  0x000074b3 store  0x00000001 , 0x00004254 
+ 00027307  0x000074b4 call  0x00006be0 
+ 00027308  0x000074b5 branch  0x00006b97 
+ 00027309  0x000074b8 call  0x00006aaf 
+ 00027310  0x000074b9 branch  0x00006b97 
+ 00027311  0x000074bc call  0x00006acb 
+ 00027312  0x000074bd branch  0x00006ad7 
+ 00027313  0x000074c0 call  0x00006acb 
+ 00027314  0x000074c1 ifetch  0x00000001 , 0x00000006 
+ 00027315  0x000074c2 rshift3  0x0000003f , 0x0000003f 
+ 00027316  0x000074c3 store  0x00000001 , 0x0000456a 
+ 00027317  0x000074c4 ifetch  0x00000001 , 0x00000006 
+ 00027318  0x000074c5 store  0x00000001 , 0x00000508 
+ 00027319  0x000074c6 rtn 
+ 00027320  0x000074ca ifetch  0x00000001 , 0x00000006 
+ 00027321  0x000074cb store  0x00000001 , 0x000004fb 
+ 00027322  0x000074cc rshift3  0x0000003f , 0x0000003f 
+ 00027323  0x000074cd store  0x00000001 , 0x000004fc 
+ 00027324  0x000074ce ifetch  0x00000001 , 0x00000006 
+ 00027325  0x000074cf store  0x00000001 , 0x000004fd 
+ 00027326  0x000074d1 call  0x00006ace 
+ 00027327  0x000074d2 storet  0x00000002 , 0x000004ff 
+ 00027328  0x000074d3 copy  0x00000006 , 0x0000003f 
+ 00027329  0x000074d4 store  0x00000002 , 0x00000501 
+ 00027330  0x000074d5 rtn 
+ 00027331  0x000074d8 ifetch  0x00000001 , 0x00000006 
+ 00027332  0x000074d9 rshift  0x0000003f , 0x0000003f 
+ 00027333  0x000074da store  0x00000001 , 0x00000503 
+ 00027334  0x000074db call  0x00006ace 
+ 00027335  0x000074dc storet  0x00000002 , 0x00000504 
+ 00027336  0x000074dd copy  0x00000006 , 0x0000003f 
+ 00027337  0x000074de store  0x00000002 , 0x00000506 
+ 00027338  0x000074df rtn 
+ 00027339  0x000074e3 fetch  0x00000002 , 0x00000506 
+ 00027340  0x000074e4 copy  0x0000003f , 0x00000006 
+ 00027341  0x000074e5 rtn 
+ 00027342  0x000074e8 ifetch  0x00000001 , 0x00000006 
+ 00027343  0x000074e9 copy  0x0000003f , 0x00000002 
+ 00027344  0x000074ea rshift  0x00000002 , 0x00000002 
+ 00027345  0x000074eb rtnbit1  0x00000000 
+ 00027346  0x000074ec ifetch  0x00000001 , 0x00000006 
+ 00027347  0x000074ed lshift3  0x0000003f , 0x0000003f 
+ 00027348  0x000074ee lshift4  0x0000003f , 0x0000003f 
+ 00027349  0x000074ef iadd  0x00000002 , 0x00000002 
+ 00027350  0x000074f0 rtn 
+ 00027351  0x000074f3 ifetch  0x00000001 , 0x00000006 
+ 00027352  0x000074f4 store  0x00000001 , 0x0000455d 
+ 00027353  0x000074f5 ifetch  0x00000001 , 0x00000006 
+ 00027354  0x000074f6 store  0x00000001 , 0x00000509 
+ 00027355  0x000074f7 ifetch  0x00000001 , 0x00000006 
+ 00027356  0x000074f8 store  0x00000001 , 0x0000050a 
+ 00027357  0x000074f9 ifetch  0x00000001 , 0x00000006 
+ 00027358  0x000074fa store  0x00000001 , 0x0000050b 
+ 00027359  0x000074fb ifetch  0x00000002 , 0x00000006 
+ 00027360  0x000074fc store  0x00000002 , 0x0000455e 
+ 00027361  0x000074fd ifetch  0x00000001 , 0x00000006 
+ 00027362  0x000074fe store  0x00000001 , 0x0000050c 
+ 00027363  0x000074ff ifetch  0x00000001 , 0x00000006 
+ 00027364  0x00007500 store  0x00000001 , 0x00004568 
+ 00027365  0x00007501 rtn 
+ 00027366  0x00007505 call  0x00006ab1 
+ 00027367  0x00007507 branch  0x00006ae8 
+ 00027368  0x0000750a fetch  0x00000001 , 0x00004254 
+ 00027369  0x0000750b set1  0x00000005 , 0x0000003f 
+ 00027370  0x0000750c set1  0x00000006 , 0x0000003f 
+ 00027371  0x0000750d store  0x00000001 , 0x00004254 
+ 00027372  0x0000750e fetcht  0x00000001 , 0x0000455d 
+ 00027373  0x0000750f lshift2  0x00000002 , 0x00000002 
+ 00027374  0x00007510 or_into  0x00000003 , 0x00000002 
+ 00027375  0x00007511 call  0x00006c11 
+ 00027376  0x00007512 jam  0x00000003 , 0x00004567 
+ 00027377  0x00007513 branch  0x00006b97 
+ 00027378  0x00007516 jam  0x00000008 , 0x00000a99 
+ 00027379  0x00007517 call  0x00007d86 
+ 00027380  0x00007518 call  0x00006ab1 
+ 00027381  0x00007519 fetch  0x00000001 , 0x0000456a 
+ 00027382  0x0000751a sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00027383  0x0000751b branch  0x00006af9 , 0x00000005 
+ 00027384  0x0000751c branch  0x00002a8c 
+ 00027385  0x0000751e fetch  0x00000001 , 0x00004254 
+ 00027386  0x0000751f set1  0x00000007 , 0x0000003f 
+ 00027387  0x00007520 store  0x00000001 , 0x00004254 
+ 00027388  0x00007521 branch  0x00006b97 
+ 00027389  0x00007524 call  0x00006acb 
+ 00027390  0x00007525 ifetch  0x00000001 , 0x00000006 
+ 00027391  0x00007526 store  0x00000001 , 0x00000ac2 
+ 00027392  0x00007527 call  0x000052d2 
+ 00027393  0x00007528 call  0x000052e0 
+ 00027394  0x00007529 setarg  0x0000000e 
+ 00027395  0x0000752a istore  0x00000002 , 0x00000005 
+ 00027396  0x0000752b fetch  0x00000002 , 0x0000424a 
+ 00027397  0x0000752c istore  0x00000002 , 0x00000005 
+ 00027398  0x0000752d fetch  0x00000001 , 0x00004563 
+ 00027399  0x0000752f lshift  0x0000003f , 0x0000003f 
+ 00027400  0x00007530 set1  0x00000000 , 0x0000003f 
+ 00027401  0x00007531 istore  0x00000001 , 0x00000005 
+ 00027402  0x00007532 bpatchx  0x000000a7 , 0x00004034 
+ 00027403  0x00007533 setarg  0x000015ef 
+ 00027404  0x00007534 istore  0x00000002 , 0x00000005 
+ 00027405  0x00007535 setarg  0x00001191 
+ 00027406  0x00007536 istore  0x00000002 , 0x00000005 
+ 00027407  0x00007539 fetch  0x00000001 , 0x00000ac2 
+ 00027408  0x0000753a istore  0x00000001 , 0x00000005 
+ 00027409  0x0000753b setarg  0x00000007 
+ 00027410  0x0000753c istore  0x00000005 , 0x00000005 
+ 00027411  0x0000753f setarg  0x00000001 
+ 00027412  0x00007540 istore  0x00000002 , 0x00000005 
+ 00027413  0x00007543 call  0x00006a2f 
+ 00027414  0x00007544 istore  0x00000001 , 0x00000005 
+ 00027415  0x00007545 rtn 
+ 00027416  0x0000754a branch  0x00006b19 
+ 00027417  0x0000754d bpatchx  0x000000a8 , 0x00004035 
+ 00027418  0x0000754e fetch  0x00000001 , 0x000004fd 
+ 00027419  0x0000754f beq  0x00000073 , 0x00006b21 
+ 00027420  0x00007550 beq  0x0000003f , 0x00006b25 
+ 00027421  0x00007551 beq  0x000000ef , 0x00006b3f 
+ 00027422  0x00007552 beq  0x000000ff , 0x00006b37 
+ 00027423  0x00007553 beq  0x00000053 , 0x00006b46 
+ 00027424  0x00007554 rtn 
+ 00027425  0x00007556 fetch  0x00000001 , 0x00004254 
+ 00027426  0x00007557 set1  0x00000003 , 0x0000003f 
+ 00027427  0x00007558 store  0x00000001 , 0x00004254 
+ 00027428  0x00007559 branch  0x00006b97 
+ 00027429  0x0000755b fetch  0x00000001 , 0x00004254 
+ 00027430  0x0000755c set1  0x00000003 , 0x0000003f 
+ 00027431  0x0000755d set1  0x00000002 , 0x0000003f 
+ 00027432  0x0000755e store  0x00000001 , 0x00004254 
+ 00027433  0x0000755f fetch  0x00000001 , 0x000004fb 
+ 00027434  0x00007560 call  0x00006a26 
+ 00027435  0x00007561 store  0x00000001 , 0x000004fe 
+ 00027436  0x00007562 call  0x00006bb6 
+ 00027437  0x00007563 fetch  0x00000001 , 0x000004fb 
+ 00027438  0x00007564 rshift2  0x0000003f , 0x0000003f 
+ 00027439  0x00007565 store  0x00000001 , 0x0000455d 
+ 00027440  0x00007566 lshift2  0x0000003f , 0x0000003f 
+ 00027441  0x00007567 set0  0x00000001 , 0x0000003f 
+ 00027442  0x00007568 set1  0x00000000 , 0x0000003f 
+ 00027443  0x00007569 arg  0x00004565 , 0x00000002 
+ 00027444  0x0000756a storet  0x00000002 , 0x000004f7 
+ 00027445  0x0000756b call  0x00006a35 
+ 00027446  0x0000756c branch  0x00006b97 
+ 00027447  0x0000756f fetch  0x00000002 , 0x00000501 
+ 00027448  0x00007570 copy  0x0000003f , 0x00000006 
+ 00027449  0x00007571 increase  0x00000001 , 0x0000003f 
+ 00027450  0x00007572 store  0x00000002 , 0x00000501 
+ 00027451  0x00007573 ifetch  0x00000001 , 0x00000006 
+ 00027452  0x00007574 fetcht  0x00000001 , 0x00004568 
+ 00027453  0x00007575 iadd  0x00000002 , 0x0000003f 
+ 00027454  0x00007576 store  0x00000001 , 0x00004568 
+ 00027455  0x00007578 call  0x00006c42 
+ 00027456  0x0000757a call  0x00006a72 
+ 00027457  0x0000757b call  0x00006c28 
+ 00027458  0x0000757c call  0x00006c4b 
+ 00027459  0x0000757d branch  0x00006b97 
+ 00027460  0x00007580 jam  0x00000009 , 0x00000a99 
+ 00027461  0x00007581 call  0x00007d86 
+ 00027462  0x00007583 call  0x00006a0d 
+ 00027463  0x00007584 fetch  0x00000001 , 0x000004fb 
+ 00027464  0x00007585 call  0x00006a26 
+ 00027465  0x00007586 store  0x00000001 , 0x000004fe 
+ 00027466  0x00007587 call  0x00006bb6 
+ 00027467  0x00007588 branch  0x00006b97 
+ 00027468  0x0000758e fetch  0x00000002 , 0x00000264 
+ 00027469  0x0000758f copy  0x0000003f , 0x00000006 
+ 00027470  0x00007590 call  0x00006ab8 
+ 00027471  0x00007591 fetch  0x00000001 , 0x000004fc 
+ 00027472  0x00007592 beq  0x00000000 , 0x00006b52 
+ 00027473  0x00007593 branch  0x00006b86 
+ 00027474  0x00007596 bpatchx  0x000000a9 , 0x00004035 
+ 00027475  0x00007597 fetch  0x00000001 , 0x000004fd 
+ 00027476  0x00007598 beq  0x0000003f , 0x00006a7d 
+ 00027477  0x00007599 beq  0x00000073 , 0x00006a86 
+ 00027478  0x0000759a beq  0x000000ef , 0x00006b58 
+ 00027479  0x0000759b branch  0x00006b97 
+ 00027480  0x0000759d fetch  0x00000002 , 0x00000501 
+ 00027481  0x0000759e copy  0x0000003f , 0x00000006 
+ 00027482  0x0000759f call  0x00006ac3 
+ 00027483  0x000075a0 fetch  0x00000001 , 0x00000503 
+ 00027484  0x000075a1 beq  0x00000041 , 0x00006b61 
+ 00027485  0x000075a2 beq  0x00000040 , 0x00006b61 
+ 00027486  0x000075a3 beq  0x00000071 , 0x00006b6c 
+ 00027487  0x000075a4 beq  0x00000070 , 0x00006b7c 
+ 00027488  0x000075a5 branch  0x00006b97 
+ 00027489  0x000075a8 call  0x00006aaf 
+ 00027490  0x000075a9 fetch  0x00000001 , 0x0000455d 
+ 00027491  0x000075aa rshift  0x0000003f , 0x0000003f 
+ 00027492  0x000075ab fetcht  0x00000001 , 0x00004564 
+ 00027493  0x000075ac isub  0x00000002 , 0x0000003e 
+ 00027494  0x000075ad branch  0x00006b68 , 0x00000005 
+ 00027495  0x000075ae branch  0x00002a8c 
+ 00027496  0x000075b0 fetch  0x00000001 , 0x00004254 
+ 00027497  0x000075b1 set1  0x00000001 , 0x0000003f 
+ 00027498  0x000075b2 store  0x00000001 , 0x00004254 
+ 00027499  0x000075b3 branch  0x00006b97 
+ 00027500  0x000075b6 call  0x00006ab1 
+ 00027501  0x000075b7 fetch  0x00000001 , 0x0000456a 
+ 00027502  0x000075b8 fetcht  0x00000001 , 0x00004564 
+ 00027503  0x000075b9 isub  0x00000002 , 0x0000003e 
+ 00027504  0x000075ba branch  0x00006b73 , 0x00000005 
+ 00027505  0x000075bb branch  0x00002a8c 
+ 00027506  0x000075bc branch  0x00006b97 
+ 00027507  0x000075be fetch  0x00000001 , 0x00004254 
+ 00027508  0x000075bf set1  0x00000005 , 0x0000003f 
+ 00027509  0x000075c0 set1  0x00000006 , 0x0000003f 
+ 00027510  0x000075c1 store  0x00000001 , 0x00004254 
+ 00027511  0x000075c2 fetcht  0x00000001 , 0x0000455d 
+ 00027512  0x000075c3 lshift2  0x00000002 , 0x00000002 
+ 00027513  0x000075c4 or_into  0x00000003 , 0x00000002 
+ 00027514  0x000075c5 call  0x00006c11 
+ 00027515  0x000075c6 branch  0x00006b97 
+ 00027516  0x000075c9 call  0x00006ab1 
+ 00027517  0x000075ca fetch  0x00000001 , 0x0000456a 
+ 00027518  0x000075cb fetcht  0x00000001 , 0x00004564 
+ 00027519  0x000075cc isub  0x00000002 , 0x0000003e 
+ 00027520  0x000075cd branch  0x00006b82 , 0x00000005 
+ 00027521  0x000075ce branch  0x00002a8c 
+ 00027522  0x000075d0 fetch  0x00000001 , 0x00004254 
+ 00027523  0x000075d1 set1  0x00000007 , 0x0000003f 
+ 00027524  0x000075d2 store  0x00000001 , 0x00004254 
+ 00027525  0x000075d3 branch  0x00006b97 
+ 00027526  0x000075d6 fetch  0x00000001 , 0x000004fc 
+ 00027527  0x000075d7 fetcht  0x00000001 , 0x00004564 
+ 00027528  0x000075d8 isub  0x00000002 , 0x0000003e 
+ 00027529  0x000075d9 branch  0x00006b8c , 0x00000005 
+ 00027530  0x000075da branch  0x00002a8c 
+ 00027531  0x000075db branch  0x00006b97 
+ 00027532  0x000075de fetch  0x00000001 , 0x000004fd 
+ 00027533  0x000075df beq  0x00000073 , 0x00006b91 
+ 00027534  0x000075e0 beq  0x000000ef , 0x00006b3f 
+ 00027535  0x000075e1 beq  0x000000ff , 0x00006b37 
+ 00027536  0x000075e2 beq  0x00000053 , 0x00006b96 
+ 00027537  0x000075e4 fetch  0x00000001 , 0x00004254 
+ 00027538  0x000075e5 set1  0x00000003 , 0x0000003f 
+ 00027539  0x000075e6 store  0x00000001 , 0x00004254 
+ 00027540  0x000075e7 branch  0x00006b97 
+ 00027541  0x000075e9 branch  0x00006b95 
+ 00027542  0x000075eb branch  0x00006b46 
+ 00027543  0x000075ed rtn 
+ 00027544  0x000075f0 fetch  0x00000001 , 0x00004567 
+ 00027545  0x000075f1 rtn  0x00000034 
+ 00027546  0x000075f2 beq  0x00000003 , 0x00006b9c 
+ 00027547  0x000075f3 branch  0x00002a8c 
+ 00027548  0x000075f6 jam  0x00000000 , 0x00004567 
+ 00027549  0x000075f7 call  0x000052d2 
+ 00027550  0x000075f8 arg  0x00000001 , 0x00000002 
+ 00027551  0x000075f9 fetcht  0x00000001 , 0x0000455d 
+ 00027552  0x000075fa lshift2  0x00000002 , 0x00000002 
+ 00027553  0x000075fc or_into  0x00000003 , 0x00000002 
+ 00027554  0x000075fd arg  0x000000aa , 0x00000011 
+ 00027555  0x000075fe call  0x00006bfc 
+ 00027556  0x000075ff call  0x000052e0 
+ 00027557  0x00007600 copy  0x00000005 , 0x00000006 
+ 00027558  0x00007601 ifetch  0x00000002 , 0x00000006 
+ 00027559  0x00007602 branch  0x00002a8c , 0x00000034 
+ 00027560  0x00007603 rtn 
+ 00027561  0x00007606 call  0x000052e0 
+ 00027562  0x00007607 setarg  0x00000004 
+ 00027563  0x00007608 istore  0x00000002 , 0x00000005 
+ 00027564  0x00007609 fetch  0x00000002 , 0x0000424a 
+ 00027565  0x0000760a istore  0x00000002 , 0x00000005 
+ 00027566  0x0000760b fetch  0x00000001 , 0x000004fb 
+ 00027567  0x0000760c istore  0x00000001 , 0x00000005 
+ 00027568  0x0000760d bpatchx  0x000000aa , 0x00004035 
+ 00027569  0x0000760e setarg  0x0000013f 
+ 00027570  0x0000760f istore  0x00000002 , 0x00000005 
+ 00027571  0x00007610 fetch  0x00000001 , 0x000004fe 
+ 00027572  0x00007611 istore  0x00000001 , 0x00000005 
+ 00027573  0x00007612 rtn 
+ 00027574  0x00007614 call  0x000052d2 
+ 00027575  0x00007615 call  0x000052e0 
+ 00027576  0x00007616 setarg  0x00000004 
+ 00027577  0x00007617 istore  0x00000002 , 0x00000005 
+ 00027578  0x00007618 fetch  0x00000002 , 0x0000424a 
+ 00027579  0x00007619 istore  0x00000002 , 0x00000005 
+ 00027580  0x0000761a fetch  0x00000001 , 0x000004fb 
+ 00027581  0x0000761b istore  0x00000001 , 0x00000005 
+ 00027582  0x0000761c bpatchx  0x000000ab , 0x00004035 
+ 00027583  0x0000761d setarg  0x00000173 
+ 00027584  0x0000761e istore  0x00000002 , 0x00000005 
+ 00027585  0x0000761f fetch  0x00000001 , 0x000004fe 
+ 00027586  0x00007620 istore  0x00000001 , 0x00000005 
+ 00027587  0x00007621 rtn 
+ 00027588  0x00007623 call  0x000052e0 
+ 00027589  0x00007624 setarg  0x0000000e 
+ 00027590  0x00007625 istore  0x00000002 , 0x00000005 
+ 00027591  0x00007626 fetch  0x00000002 , 0x0000424a 
+ 00027592  0x00007627 istore  0x00000002 , 0x00000005 
+ 00027593  0x00007628 fetch  0x00000001 , 0x00004563 
+ 00027594  0x00007629 lshift  0x0000003f , 0x0000003f 
+ 00027595  0x0000762a set1  0x00000000 , 0x0000003f 
+ 00027596  0x0000762b istore  0x00000001 , 0x00000005 
+ 00027597  0x0000762c bpatchx  0x000000ac , 0x00004035 
+ 00027598  0x0000762d setarg  0x000015ef 
+ 00027599  0x0000762e istore  0x00000002 , 0x00000005 
+ 00027600  0x0000762f setarg  0x00001183 
+ 00027601  0x00007630 istore  0x00000002 , 0x00000005 
+ 00027602  0x00007631 copy  0x00000002 , 0x0000003f 
+ 00027603  0x00007632 istore  0x00000001 , 0x00000005 
+ 00027604  0x00007633 setarg  0x000000f0 
+ 00027605  0x00007634 istore  0x00000003 , 0x00000005 
+ 00027606  0x00007635 setarg  0x0000007f 
+ 00027607  0x00007636 istore  0x00000002 , 0x00000005 
+ 00027608  0x00007637 setarg  0x00000000 
+ 00027609  0x00007638 istore  0x00000001 , 0x00000005 
+ 00027610  0x00007639 setarg  0x00000001 
+ 00027611  0x0000763a istore  0x00000001 , 0x00000005 
+ 00027612  0x0000763b call  0x00006a2f 
+ 00027613  0x0000763c istore  0x00000001 , 0x00000005 
+ 00027614  0x0000763d jam  0x00000010 , 0x00004569 
+ 00027615  0x0000763e rtn 
+ 00027616  0x00007640 call  0x000052d2 
+ 00027617  0x00007641 call  0x000052e0 
+ 00027618  0x00007642 setarg  0x0000000e 
+ 00027619  0x00007643 istore  0x00000002 , 0x00000005 
+ 00027620  0x00007644 fetch  0x00000002 , 0x0000424a 
+ 00027621  0x00007645 istore  0x00000002 , 0x00000005 
+ 00027622  0x00007646 fetch  0x00000001 , 0x00004563 
+ 00027623  0x00007647 lshift  0x0000003f , 0x0000003f 
+ 00027624  0x00007648 set1  0x00000000 , 0x0000003f 
+ 00027625  0x00007649 istore  0x00000001 , 0x00000005 
+ 00027626  0x0000764a bpatchx  0x000000ad , 0x00004035 
+ 00027627  0x0000764b setarg  0x000015ef 
+ 00027628  0x0000764c istore  0x00000002 , 0x00000005 
+ 00027629  0x0000764d setarg  0x00001181 
+ 00027630  0x0000764e istore  0x00000002 , 0x00000005 
+ 00027631  0x0000764f fetch  0x00000001 , 0x0000455d 
+ 00027632  0x00007650 istore  0x00000001 , 0x00000005 
+ 00027633  0x00007651 setarg  0x000000e0 
+ 00027634  0x00007652 istore  0x00000003 , 0x00000005 
+ 00027635  0x00007653 fetch  0x00000002 , 0x0000456c 
+ 00027636  0x00007654 istore  0x00000002 , 0x00000005 
+ 00027637  0x00007655 setarg  0x00000000 
+ 00027638  0x00007656 istore  0x00000001 , 0x00000005 
+ 00027639  0x00007657 fetch  0x00000001 , 0x0000456e 
+ 00027640  0x00007658 istore  0x00000001 , 0x00000005 
+ 00027641  0x00007659 call  0x00006a2f 
+ 00027642  0x0000765a istore  0x00000001 , 0x00000005 
+ 00027643  0x0000765b rtn 
+ 00027644  0x0000765d call  0x000052e0 
+ 00027645  0x0000765e setarg  0x00000008 
+ 00027646  0x0000765f istore  0x00000002 , 0x00000005 
+ 00027647  0x00007660 fetch  0x00000002 , 0x0000424a 
+ 00027648  0x00007661 istore  0x00000002 , 0x00000005 
+ 00027649  0x00007662 fetch  0x00000001 , 0x00004563 
+ 00027650  0x00007663 lshift  0x0000003f , 0x0000003f 
+ 00027651  0x00007664 set1  0x00000000 , 0x0000003f 
+ 00027652  0x00007665 istore  0x00000001 , 0x00000005 
+ 00027653  0x00007666 bpatchx  0x000000ae , 0x00004035 
+ 00027654  0x00007667 setarg  0x000009ef 
+ 00027655  0x00007668 istore  0x00000002 , 0x00000005 
+ 00027656  0x00007669 setarg  0x000005e3 
+ 00027657  0x0000766a istore  0x00000002 , 0x00000005 
+ 00027658  0x0000766b copy  0x00000002 , 0x0000003f 
+ 00027659  0x0000766c istore  0x00000001 , 0x00000005 
+ 00027660  0x0000766d setarg  0x0000008d 
+ 00027661  0x0000766e istore  0x00000001 , 0x00000005 
+ 00027662  0x0000766f call  0x00006a2f 
+ 00027663  0x00007670 istore  0x00000001 , 0x00000005 
+ 00027664  0x00007671 rtn 
+ 00027665  0x00007674 call  0x000052d2 
+ 00027666  0x00007675 call  0x000052e0 
+ 00027667  0x00007676 setarg  0x00000008 
+ 00027668  0x00007677 istore  0x00000002 , 0x00000005 
+ 00027669  0x00007678 fetch  0x00000002 , 0x0000424a 
+ 00027670  0x00007679 istore  0x00000002 , 0x00000005 
+ 00027671  0x0000767a copy  0x00000002 , 0x0000000b 
+ 00027672  0x0000767b fetch  0x00000001 , 0x00004563 
+ 00027673  0x0000767c lshift  0x0000003f , 0x0000003f 
+ 00027674  0x0000767d set1  0x00000000 , 0x0000003f 
+ 00027675  0x0000767e istore  0x00000001 , 0x00000005 
+ 00027676  0x0000767f bpatchx  0x000000af , 0x00004035 
+ 00027677  0x00007680 setarg  0x000009ef 
+ 00027678  0x00007681 istore  0x00000002 , 0x00000005 
+ 00027679  0x00007682 setarg  0x000005e1 
+ 00027680  0x00007683 istore  0x00000002 , 0x00000005 
+ 00027681  0x00007684 copy  0x0000000b , 0x0000003f 
+ 00027682  0x00007685 istore  0x00000001 , 0x00000005 
+ 00027683  0x00007686 setarg  0x0000008d 
+ 00027684  0x00007687 istore  0x00000001 , 0x00000005 
+ 00027685  0x00007688 call  0x00006a2f 
+ 00027686  0x00007689 istore  0x00000001 , 0x00000005 
+ 00027687  0x0000768a rtn 
+ 00027688  0x0000768d bpatchx  0x000000b0 , 0x00004036 
+ 00027689  0x0000768e fetch  0x00000001 , 0x00004569 
+ 00027690  0x0000768f rtn  0x00000034 
+ 00027691  0x00007690 hfetch  0x00000002 , 0x00008112 
+ 00027692  0x00007691 nrtn  0x00000034 
+ 00027693  0x00007692 copy  0x00000011 , 0x0000003f 
+ 00027694  0x00007693 store  0x00000001 , 0x00000a9b 
+ 00027695  0x00007694 storet  0x00000001 , 0x00000a9a 
+ 00027696  0x00007695 call  0x0000526e 
+ 00027697  0x00007696 nrtn  0x00000034 
+ 00027698  0x00007697 call  0x000052d2 
+ 00027699  0x00007698 call  0x000052e0 
+ 00027700  0x00007699 setarg  0x00000005 
+ 00027701  0x0000769a istore  0x00000002 , 0x00000005 
+ 00027702  0x0000769b fetch  0x00000002 , 0x0000424a 
+ 00027703  0x0000769c istore  0x00000002 , 0x00000005 
+ 00027704  0x0000769d fetch  0x00000001 , 0x0000050d 
+ 00027705  0x0000769e istore  0x00000001 , 0x00000005 
+ 00027706  0x0000769f setarg  0x000001ff 
+ 00027707  0x000076a0 istore  0x00000002 , 0x00000005 
+ 00027708  0x000076a1 fetch  0x00000001 , 0x00004569 
+ 00027709  0x000076a2 istore  0x00000001 , 0x00000005 
+ 00027710  0x000076a3 fetch  0x00000001 , 0x00004566 
+ 00027711  0x000076a4 istore  0x00000001 , 0x00000005 
+ 00027712  0x000076a5 jam  0x00000000 , 0x00004569 
+ 00027713  0x000076a6 rtn 
+ 00027714  0x000076a9 bpatchx  0x000000b1 , 0x00004036 
+ 00027715  0x000076aa fetch  0x00000001 , 0x0000456b 
+ 00027716  0x000076ab rtneq  0x00000001 
+ 00027717  0x000076ac fetch  0x00000002 , 0x000004ff 
+ 00027718  0x000076ad rtn  0x00000034 
+ 00027719  0x000076ae fetch  0x00000001 , 0x00004569 
+ 00027720  0x000076af increase  0x00000001 , 0x0000003f 
+ 00027721  0x000076b0 store  0x00000001 , 0x00004569 
+ 00027722  0x000076b1 rtn 
+ 00027723  0x000076b4 fetch  0x00000002 , 0x0000456f 
+ 00027724  0x000076b5 branch  0x00007f9c 
+ 00027725  0x000076b8 bpatchx  0x000000b2 , 0x00004036 
+ 00027726  0x000076ba fetch  0x00000001 , 0x00004568 
+ 00027727  0x000076bb rtn  0x00000034 
+ 00027728  0x000076bc increase  0xffffffff , 0x0000003f 
+ 00027729  0x000076bd store  0x00000001 , 0x00004568 
+ 00027730  0x000076be fetch  0x00000002 , 0x0000455e 
+ 00027731  0x000076bf fetcht  0x00000002 , 0x0000469f 
+ 00027732  0x000076c0 isub  0x00000002 , 0x0000003e 
+ 00027733  0x000076c1 branch  0x00006c57 , 0x00000002 
+ 00027734  0x000076c2 store  0x00000002 , 0x0000469f 
+ 00027735  0x000076c4 fetch  0x00000001 , 0x00004569 
+ 00027736  0x000076c5 branch  0x00006c5f , 0x00000034 
+ 00027737  0x000076c6 jam  0x00000001 , 0x00000510 
+ 00027738  0x000076c7 fetch  0x00000001 , 0x00004566 
+ 00027739  0x000076c8 store  0x00000001 , 0x0000050f 
+ 00027740  0x000076c9 setarg  0x000000ff 
+ 00027741  0x000076ca store  0x00000001 , 0x0000050e 
+ 00027742  0x000076cb branch  0x00006c64 
+ 00027743  0x000076cd jam  0x00000000 , 0x00000510 
+ 00027744  0x000076ce fetch  0x00000001 , 0x00004565 
+ 00027745  0x000076cf store  0x00000001 , 0x0000050f 
+ 00027746  0x000076d0 setarg  0x000000ef 
+ 00027747  0x000076d1 store  0x00000001 , 0x0000050e 
+ 00027748  0x000076d3 bpatchx  0x000000b3 , 0x00004036 
+ 00027749  0x000076d4 fetch  0x00000002 , 0x0000469f 
+ 00027750  0x000076d5 sub  0x0000003f , 0x0000007f , 0x0000003e 
+ 00027751  0x000076d6 branch  0x00006c6b , 0x00000002 
+ 00027752  0x000076d7 fetch  0x00000001 , 0x00000510 
+ 00027753  0x000076d8 increase  0x00000001 , 0x0000003f 
+ 00027754  0x000076d9 store  0x00000001 , 0x00000510 
+ 00027755  0x000076db call  0x00006a72 
+ 00027756  0x000076dc fetch  0x00000002 , 0x0000469f 
+ 00027757  0x000076dd increase  0x00000008 , 0x0000003f 
+ 00027758  0x000076de fetcht  0x00000001 , 0x00000510 
+ 00027759  0x000076df iadd  0x00000002 , 0x00000011 
+ 00027760  0x000076e1 call  0x00005240 
+ 00027761  0x000076e2 store  0x00000002 , 0x00000277 
+ 00027762  0x000076e3 increase  0x00000004 , 0x0000003f 
+ 00027763  0x000076e4 store  0x00000002 , 0x00000279 
+ 00027764  0x000076e5 copy  0x0000003f , 0x00000005 
+ 00027765  0x000076e6 fetch  0x00000001 , 0x0000050d 
+ 00027766  0x000076e7 istore  0x00000001 , 0x00000005 
+ 00027767  0x000076e8 fetch  0x00000001 , 0x0000050e 
+ 00027768  0x000076e9 istore  0x00000001 , 0x00000005 
+ 00027769  0x000076ea call  0x00006c95 
+ 00027770  0x000076eb call  0x00006ca6 
+ 00027771  0x000076ec bpatchx  0x000000b4 , 0x00004036 
+ 00027772  0x000076ed fetch  0x00000002 , 0x00004571 
+ 00027773  0x000076ee copy  0x0000003f , 0x00000003 
+ 00027774  0x000076ef fetch  0x00000002 , 0x0000469f 
+ 00027775  0x000076f0 copy  0x0000003f , 0x00000039 
+ 00027776  0x000076f1 call  0x000066ea 
+ 00027777  0x000076f2 copy  0x00000005 , 0x00000002 
+ 00027778  0x000076f3 copy  0x00000003 , 0x0000003f 
+ 00027779  0x000076f4 store  0x00000002 , 0x00004571 
+ 00027780  0x000076f5 copy  0x00000002 , 0x00000005 
+ 00027781  0x000076f6 fetch  0x00000001 , 0x0000050f 
+ 00027782  0x000076f7 istore  0x00000001 , 0x00000005 
+ 00027783  0x000076f8 fetch  0x00000002 , 0x00000277 
+ 00027784  0x000076f9 copy  0x0000003f , 0x00000005 
+ 00027785  0x000076fa fetch  0x00000002 , 0x0000469f 
+ 00027786  0x000076fb fetcht  0x00000001 , 0x00000510 
+ 00027787  0x000076fc iadd  0x00000002 , 0x0000003f 
+ 00027788  0x000076fd increase  0x00000004 , 0x0000003f 
+ 00027789  0x000076fe istore  0x00000002 , 0x00000005 
+ 00027790  0x000076ff fetch  0x00000002 , 0x0000424a 
+ 00027791  0x00007700 istore  0x00000002 , 0x00000005 
+ 00027792  0x00007701 jam  0x00000000 , 0x00004569 
+ 00027793  0x00007702 fetch  0x00000002 , 0x00004573 
+ 00027794  0x00007703 beq  0x00000000 , 0x00003a97 
+ 00027795  0x00007704 jam  0x00000000 , 0x00000b05 
+ 00027796  0x00007705 rtn 
+ 00027797  0x00007708 bpatchx  0x000000b5 , 0x00004036 
+ 00027798  0x00007709 fetch  0x00000002 , 0x0000469f 
+ 00027799  0x0000770a sub  0x0000003f , 0x0000007f , 0x0000003e 
+ 00027800  0x0000770b nbranch  0x00006c9d , 0x00000002 
+ 00027801  0x0000770c lshift  0x0000003f , 0x0000003f 
+ 00027802  0x0000770d set1  0x00000000 , 0x0000003f 
+ 00027803  0x0000770e istore  0x00000001 , 0x00000005 
+ 00027804  0x0000770f rtn 
+ 00027805  0x00007711 fetch  0x00000002 , 0x0000469f 
+ 00027806  0x00007712 rshift3  0x0000003f , 0x0000003f 
+ 00027807  0x00007713 rshift4  0x0000003f , 0x00000002 
+ 00027808  0x00007714 and_into  0x0000007f , 0x0000003f 
+ 00027809  0x00007715 lshift  0x0000003f , 0x0000003f 
+ 00027810  0x00007716 set0  0x00000000 , 0x0000003f 
+ 00027811  0x00007717 istore  0x00000001 , 0x00000005 
+ 00027812  0x00007718 istoret  0x00000001 , 0x00000005 
+ 00027813  0x00007719 rtn 
+ 00027814  0x0000771b fetch  0x00000001 , 0x00004569 
+ 00027815  0x0000771c rtn  0x00000034 
+ 00027816  0x0000771d istore  0x00000001 , 0x00000005 
+ 00027817  0x0000771e rtn 
+ 00027818  0x00007724 bpatchx  0x000000b6 , 0x00004036 
+ 00027819  0x00007725 call  0x00007d9c 
+ 00027820  0x00007726 call  0x000032f6 
+ 00027821  0x00007727 call  0x0000631b 
+ 00027822  0x00007729 bpatchx  0x000000b7 , 0x00004036 
+ 00027823  0x0000772a call  0x000076dc 
+ 00027824  0x0000772b call  0x000076b5 
+ 00027825  0x0000772c call  0x000076c6 
+ 00027826  0x0000772f call  0x0000526e 
+ 00027827  0x00007730 nrtn  0x00000034 
+ 00027828  0x00007732 call  0x00004da9 
+ 00027829  0x00007733 call  0x0000526e 
+ 00027830  0x00007734 nrtn  0x00000034 
+ 00027831  0x00007735 bpatchx  0x000000b8 , 0x00004037 
+ 00027832  0x00007737 call  0x00006cf5 
+ 00027833  0x00007738 call  0x00004f64 
+ 00027834  0x00007739 call  0x00006b98 
+ 00027835  0x0000773b call  0x00006cbe 
+ 00027836  0x0000773c bpatchx  0x000000b9 , 0x00004037 
+ 00027837  0x0000773f branch  0x000032f2 
+ 00027838  0x00007742 fetch  0x00000001 , 0x0000027f 
+ 00027839  0x00007743 bbit1  0x00000000 , 0x00005087 
+ 00027840  0x00007744 bbit1  0x00000007 , 0x00005091 
+ 00027841  0x00007745 rtn 
+ 00027842  0x00007748 bpatchx  0x000000ba , 0x00004037 
+ 00027843  0x00007749 call  0x00005274 
+ 00027844  0x0000774a rtn  0x00000034 
+ 00027845  0x0000774b fetch  0x00000001 , 0x0000004b 
+ 00027846  0x0000774c rtnbit1  0x00000006 
+ 00027847  0x0000774d call  0x00005258 
+ 00027848  0x0000774e store  0x00000002 , 0x0000016f 
+ 00027849  0x0000774f copy  0x0000003f , 0x00000006 
+ 00027850  0x00007750 ifetch  0x00000002 , 0x00000006 
+ 00027851  0x00007751 increase  0x00000004 , 0x0000003f 
+ 00027852  0x00007752 store  0x00000002 , 0x000041dc 
+ 00027853  0x00007753 jam  0x00000006 , 0x000041db 
+ 00027854  0x00007754 bpatchx  0x000000bb , 0x00004037 
+ 00027855  0x00007755 fetch  0x00000002 , 0x00004246 
+ 00027856  0x00007756 branch  0x00006cdd , 0x00000034 
+ 00027857  0x00007757 fetch  0x00000001 , 0x0000004b 
+ 00027858  0x00007758 rtnbit0  0x00000007 
+ 00027859  0x00007759 set0  0x00000007 , 0x0000003f 
+ 00027860  0x0000775a store  0x00000001 , 0x0000004b 
+ 00027861  0x0000775b jam  0x00000005 , 0x000041db 
+ 00027862  0x0000775c fetcht  0x00000002 , 0x00004246 
+ 00027863  0x0000775d fetch  0x00000002 , 0x0000016f 
+ 00027864  0x0000775e iadd  0x00000002 , 0x0000003f 
+ 00027865  0x0000775f store  0x00000002 , 0x0000016f 
+ 00027866  0x00007760 fetch  0x00000002 , 0x000041dc 
+ 00027867  0x00007761 isub  0x00000002 , 0x0000003f 
+ 00027868  0x00007762 store  0x00000002 , 0x000041dc 
+ 00027869  0x00007764 bpatchx  0x000000bc , 0x00004037 
+ 00027870  0x00007765 fetch  0x00000002 , 0x000041dc 
+ 00027871  0x00007766 branch  0x00002a8c , 0x00000034 
+ 00027872  0x00007767 arg  0x00000104 , 0x00000002 
+ 00027873  0x00007768 isub  0x00000002 , 0x0000003f 
+ 00027874  0x00007769 nbranch  0x00006ce9 , 0x00000002 
+ 00027875  0x0000776a bpatchx  0x000000bd , 0x00004037 
+ 00027876  0x0000776b storet  0x00000002 , 0x000041dc 
+ 00027877  0x0000776c fetch  0x00000002 , 0x00004246 
+ 00027878  0x0000776d iadd  0x00000002 , 0x0000003f 
+ 00027879  0x0000776e store  0x00000002 , 0x00004246 
+ 00027880  0x0000776f branch  0x00006ceb 
+ 00027881  0x00007771 setarg  0x00000000 
+ 00027882  0x00007772 store  0x00000002 , 0x00004246 
+ 00027883  0x00007774 fetch  0x00000001 , 0x0000004b 
+ 00027884  0x00007775 set1  0x00000006 , 0x0000003f 
+ 00027885  0x00007776 store  0x00000001 , 0x0000004b 
+ 00027886  0x00007777 rtn 
+ 00027887  0x0000777a fetch  0x00000001 , 0x00004684 
+ 00027888  0x0000777b bbit1  0x00000000 , 0x00006cf3 
+ 00027889  0x0000777c jam  0x00000001 , 0x00000287 
+ 00027890  0x0000777d rtn 
+ 00027891  0x0000777f jam  0x0000000f , 0x00000287 
+ 00027892  0x00007780 rtn 
+ 00027893  0x00007783 fetch  0x00000001 , 0x00004681 
+ 00027894  0x00007784 nbranch  0x00006cfb , 0x00000034 
+ 00027895  0x00007786 fetch  0x00000001 , 0x00000286 
+ 00027896  0x00007788 rtn  0x00000034 
+ 00027897  0x0000778a jam  0x00000000 , 0x00000286 
+ 00027898  0x0000778c rtn 
+ 00027899  0x00007790 bpatchx  0x000000be , 0x00004037 
+ 00027900  0x00007791 fetch  0x00000001 , 0x00000287 
+ 00027901  0x00007792 rtn  0x00000034 
+ 00027902  0x00007793 beq  0x00000001 , 0x00006d1b 
+ 00027903  0x00007794 beq  0x00000002 , 0x00006d74 
+ 00027904  0x00007795 beq  0x00000003 , 0x00006d21 
+ 00027905  0x00007796 beq  0x00000004 , 0x00006d78 
+ 00027906  0x00007797 beq  0x0000003b , 0x00006d2b 
+ 00027907  0x00007798 beq  0x0000003c , 0x00006d7b 
+ 00027908  0x00007799 beq  0x0000000d , 0x00006d30 
+ 00027909  0x0000779a beq  0x0000000e , 0x00006d80 
+ 00027910  0x0000779b beq  0x0000000f , 0x00006d33 
+ 00027911  0x0000779c beq  0x00000010 , 0x00006d86 
+ 00027912  0x0000779d beq  0x00000011 , 0x00006d39 
+ 00027913  0x0000779e beq  0x00000012 , 0x00006d8a 
+ 00027914  0x0000779f beq  0x00000013 , 0x00006d3f 
+ 00027915  0x000077a0 beq  0x00000014 , 0x00006d8e 
+ 00027916  0x000077a1 beq  0x00000015 , 0x00006d45 
+ 00027917  0x000077a2 beq  0x00000016 , 0x00006d92 
+ 00027918  0x000077a3 beq  0x00000017 , 0x00006d4b 
+ 00027919  0x000077a4 beq  0x00000018 , 0x00006d97 
+ 00027920  0x000077a5 beq  0x00000019 , 0x00006d51 
+ 00027921  0x000077a6 beq  0x0000001a , 0x00006d9b 
+ 00027922  0x000077a7 beq  0x0000001b , 0x00006d57 
+ 00027923  0x000077a8 beq  0x0000001c , 0x00006d9f 
+ 00027924  0x000077a9 beq  0x0000001d , 0x00006d5d 
+ 00027925  0x000077aa beq  0x0000001e , 0x00006da4 
+ 00027926  0x000077ab beq  0x0000001f , 0x00006d63 
+ 00027927  0x000077ac beq  0x00000020 , 0x00006da8 
+ 00027928  0x000077ad beq  0x00000021 , 0x00006d6e 
+ 00027929  0x000077ae beq  0x00000022 , 0x00006dac 
+ 00027930  0x000077b0 rtn 
+ 00027931  0x000077b2 call  0x00006db7 
+ 00027932  0x000077b3 jam  0x00000002 , 0x00000287 
+ 00027933  0x000077b4 fetch  0x00000001 , 0x00004250 
+ 00027934  0x000077b5 set1  0x00000000 , 0x0000003f 
+ 00027935  0x000077b6 store  0x00000001 , 0x00004250 
+ 00027936  0x000077b7 rtn 
+ 00027937  0x000077b9 jam  0x00000004 , 0x00000287 
+ 00027938  0x000077ba fetch  0x00000001 , 0x00004250 
+ 00027939  0x000077bb rtnbit1  0x00000002 
+ 00027940  0x000077bc jam  0x00000003 , 0x00000287 
+ 00027941  0x000077bd call  0x00006dbe 
+ 00027942  0x000077be jam  0x00000004 , 0x00000287 
+ 00027943  0x000077bf fetch  0x00000001 , 0x00004250 
+ 00027944  0x000077c0 set1  0x00000002 , 0x0000003f 
+ 00027945  0x000077c1 store  0x00000001 , 0x00004250 
+ 00027946  0x000077c2 rtn 
+ 00027947  0x000077c4 call  0x00005274 
+ 00027948  0x000077c5 nrtn  0x00000034 
+ 00027949  0x000077c6 call  0x00006dcd 
+ 00027950  0x000077c7 jam  0x0000003c , 0x00000287 
+ 00027951  0x000077c8 rtn 
+ 00027952  0x000077ca call  0x00006dc3 
+ 00027953  0x000077cb jam  0x0000000e , 0x00000287 
+ 00027954  0x000077cc rtn 
+ 00027955  0x000077ce call  0x00006ddd 
+ 00027956  0x000077cf jam  0x00000010 , 0x00000287 
+ 00027957  0x000077d0 fetch  0x00000001 , 0x00004252 
+ 00027958  0x000077d1 set1  0x00000000 , 0x0000003f 
+ 00027959  0x000077d2 store  0x00000001 , 0x00004252 
+ 00027960  0x000077d3 rtn 
+ 00027961  0x000077d5 call  0x00006de4 
+ 00027962  0x000077d6 jam  0x00000012 , 0x00000287 
+ 00027963  0x000077d7 fetch  0x00000001 , 0x00004252 
+ 00027964  0x000077d8 set1  0x00000002 , 0x0000003f 
+ 00027965  0x000077d9 store  0x00000001 , 0x00004252 
+ 00027966  0x000077da rtn 
+ 00027967  0x000077dc call  0x00006de9 
+ 00027968  0x000077dd jam  0x00000014 , 0x00000287 
+ 00027969  0x000077de fetch  0x00000001 , 0x00004253 
+ 00027970  0x000077df set1  0x00000000 , 0x0000003f 
+ 00027971  0x000077e0 store  0x00000001 , 0x00004253 
+ 00027972  0x000077e1 rtn 
+ 00027973  0x000077e3 call  0x00006df0 
+ 00027974  0x000077e4 jam  0x00000016 , 0x00000287 
+ 00027975  0x000077e5 fetch  0x00000001 , 0x00004253 
+ 00027976  0x000077e6 set1  0x00000002 , 0x0000003f 
+ 00027977  0x000077e7 store  0x00000001 , 0x00004253 
+ 00027978  0x000077e8 rtn 
+ 00027979  0x000077ea call  0x00006dd1 
+ 00027980  0x000077eb jam  0x00000018 , 0x00000287 
+ 00027981  0x000077ec fetch  0x00000001 , 0x00004251 
+ 00027982  0x000077ed set1  0x00000000 , 0x0000003f 
+ 00027983  0x000077ee store  0x00000001 , 0x00004251 
+ 00027984  0x000077ef rtn 
+ 00027985  0x000077f1 call  0x00006dd8 
+ 00027986  0x000077f2 jam  0x0000001a , 0x00000287 
+ 00027987  0x000077f3 fetch  0x00000001 , 0x00004251 
+ 00027988  0x000077f4 set1  0x00000002 , 0x0000003f 
+ 00027989  0x000077f5 store  0x00000001 , 0x00004251 
+ 00027990  0x000077f6 rtn 
+ 00027991  0x000077f8 call  0x00006df5 
+ 00027992  0x000077f9 jam  0x0000001c , 0x00000287 
+ 00027993  0x000077fa fetch  0x00000001 , 0x00004251 
+ 00027994  0x000077fb set1  0x00000006 , 0x0000003f 
+ 00027995  0x000077fc store  0x00000001 , 0x00004251 
+ 00027996  0x000077fd rtn 
+ 00027997  0x000077ff call  0x00006dfc 
+ 00027998  0x00007800 fetch  0x00000001 , 0x00004254 
+ 00027999  0x00007801 set1  0x00000000 
+ 00028000  0x00007802 store  0x00000001 , 0x00004254 
+ 00028001  0x00007803 jam  0x0000001e , 0x00000287 
+ 00028002  0x00007804 rtn 
+ 00028003  0x00007806 call  0x00006e02 
+ 00028004  0x00007807 fetch  0x00000001 , 0x00004254 
+ 00028005  0x00007808 set1  0x00000002 
+ 00028006  0x00007809 store  0x00000001 , 0x00004254 
+ 00028007  0x0000780a jam  0x00000020 , 0x00000287 
+ 00028008  0x0000780b fetch  0x00000001 , 0x00004564 
+ 00028009  0x0000780c lshift3  0x0000003f , 0x0000003f 
+ 00028010  0x0000780d or_into  0x00000003 , 0x0000003f 
+ 00028011  0x0000780e arg  0x00004565 , 0x00000002 
+ 00028012  0x0000780f storet  0x00000002 , 0x000004f7 
+ 00028013  0x00007810 branch  0x00006a35 
+ 00028014  0x00007812 call  0x00006e0c 
+ 00028015  0x00007813 fetch  0x00000001 , 0x00004254 
+ 00028016  0x00007814 set1  0x00000004 
+ 00028017  0x00007815 store  0x00000001 , 0x00004254 
+ 00028018  0x00007816 jam  0x00000022 , 0x00000287 
+ 00028019  0x00007817 rtn 
+ 00028020  0x0000781a fetch  0x00000001 , 0x00004250 
+ 00028021  0x0000781b rtnbit0  0x00000001 
+ 00028022  0x0000781c jam  0x00000003 , 0x00000287 
+ 00028023  0x0000781d branch  0x00006cfb 
+ 00028024  0x0000781f fetch  0x00000001 , 0x00004250 
+ 00028025  0x00007820 rtnne  0x0000003f 
+ 00028026  0x00007821 jam  0x0000003b , 0x00000287 
+ 00028027  0x00007823 fetch  0x00000001 , 0x00000285 
+ 00028028  0x00007824 rtnne  0x00000017 
+ 00028029  0x00007825 jam  0x00000000 , 0x00000285 
+ 00028030  0x00007826 jam  0x0000000d , 0x00000287 
+ 00028031  0x00007827 branch  0x00006cfb 
+ 00028032  0x00007829 fetch  0x00000001 , 0x00004250 
+ 00028033  0x0000782a nrtn  0x00000034 
+ 00028034  0x0000782b fetch  0x00000001 , 0x00004684 
+ 00028035  0x0000782c bbit1  0x00000000 , 0x00006daf 
+ 00028036  0x0000782d bbit1  0x00000006 , 0x00006db1 
+ 00028037  0x0000782e branch  0x00006db5 
+ 00028038  0x00007830 fetch  0x00000001 , 0x00004252 
+ 00028039  0x00007831 rtnbit0  0x00000001 
+ 00028040  0x00007832 jam  0x00000011 , 0x00000287 
+ 00028041  0x00007833 branch  0x00006cfb 
+ 00028042  0x00007835 fetch  0x00000001 , 0x00004252 
+ 00028043  0x00007836 rtnne  0x0000003f 
+ 00028044  0x00007837 jam  0x00000013 , 0x00000287 
+ 00028045  0x00007838 branch  0x00006cfb 
+ 00028046  0x0000783a fetch  0x00000001 , 0x00004253 
+ 00028047  0x0000783b rtnbit0  0x00000001 
+ 00028048  0x0000783c jam  0x00000015 , 0x00000287 
+ 00028049  0x0000783d branch  0x00006cfb 
+ 00028050  0x0000783f fetch  0x00000001 , 0x00004253 
+ 00028051  0x00007840 rtnne  0x0000003f 
+ 00028052  0x00007841 fetch  0x00000001 , 0x00004684 
+ 00028053  0x00007842 bbit1  0x00000006 , 0x00006db1 
+ 00028054  0x00007843 branch  0x00006db5 
+ 00028055  0x00007845 fetch  0x00000001 , 0x00004251 
+ 00028056  0x00007846 rtnbit0  0x00000001 
+ 00028057  0x00007847 jam  0x00000019 , 0x00000287 
+ 00028058  0x00007848 branch  0x00006cfb 
+ 00028059  0x0000784a fetch  0x00000001 , 0x00004251 
+ 00028060  0x0000784b rtnne  0x0000003f 
+ 00028061  0x0000784c jam  0x0000001b , 0x00000287 
+ 00028062  0x0000784d branch  0x00006cfb 
+ 00028063  0x0000784f fetch  0x00000001 , 0x00004251 
+ 00028064  0x00007850 rtnne  0x000000ff 
+ 00028065  0x00007851 fetch  0x00000001 , 0x00004684 
+ 00028066  0x00007852 bbit1  0x00000006 , 0x00006db3 
+ 00028067  0x00007853 branch  0x00006db5 
+ 00028068  0x00007855 fetch  0x00000001 , 0x00004254 
+ 00028069  0x00007856 rtnbit0  0x00000001 
+ 00028070  0x00007857 jam  0x0000001f , 0x00000287 
+ 00028071  0x00007858 branch  0x00006cfb 
+ 00028072  0x0000785a fetch  0x00000001 , 0x00004254 
+ 00028073  0x0000785b rtnbit0  0x00000003 
+ 00028074  0x0000785c jam  0x00000021 , 0x00000287 
+ 00028075  0x0000785d branch  0x00006cfb 
+ 00028076  0x0000785f fetch  0x00000001 , 0x00004254 
+ 00028077  0x00007860 rtnne  0x000000ff 
+ 00028078  0x00007861 branch  0x00006db5 
+ 00028079  0x00007864 jam  0x0000000f , 0x00000287 
+ 00028080  0x00007865 branch  0x00006cfb 
+ 00028081  0x00007868 jam  0x00000017 , 0x00000287 
+ 00028082  0x00007869 branch  0x00006cfb 
+ 00028083  0x0000786b jam  0x0000001d , 0x00000287 
+ 00028084  0x0000786c branch  0x00006cfb 
+ 00028085  0x00007871 jam  0x00000000 , 0x00000287 
+ 00028086  0x00007872 rtn 
+ 00028087  0x00007874 bpatchx  0x000000bf , 0x00004037 
+ 00028088  0x00007875 call  0x000052b8 
+ 00028089  0x00007876 setarg  0x00000001 
+ 00028090  0x00007877 copy  0x0000003f , 0x00000002 
+ 00028091  0x00007878 setarg  0x00000050 
+ 00028092  0x00007879 copy  0x0000003f , 0x0000000b 
+ 00028093  0x0000787a branch  0x000050a8 
+ 00028094  0x0000787d bpatchx  0x000000c0 , 0x00004038 
+ 00028095  0x0000787e call  0x000052b8 
+ 00028096  0x0000787f fetch  0x00000002 , 0x00004248 
+ 00028097  0x00007880 copy  0x0000003f , 0x00000002 
+ 00028098  0x00007881 branch  0x000050b7 
+ 00028099  0x00007884 bpatchx  0x000000c1 , 0x00004038 
+ 00028100  0x00007885 call  0x000052b8 
+ 00028101  0x00007886 fetch  0x00000002 , 0x00004248 
+ 00028102  0x00007887 copy  0x0000003f , 0x00000002 
+ 00028103  0x00007888 arg  0x00000050 , 0x0000000b 
+ 00028104  0x00007889 call  0x000050cc 
+ 00028105  0x0000788a fetch  0x00000001 , 0x00004250 
+ 00028106  0x0000788b set0  0x00000005 , 0x0000003f 
+ 00028107  0x0000788c store  0x00000001 , 0x00004250 
+ 00028108  0x0000788d rtn 
+ 00028109  0x00007890 bpatchx  0x000000c2 , 0x00004038 
+ 00028110  0x00007891 call  0x000052c5 
+ 00028111  0x00007892 call  0x00007138 
+ 00028112  0x00007893 branch  0x000050e7 
+ 00028113  0x00007896 bpatchx  0x000000c3 , 0x00004038 
+ 00028114  0x00007897 call  0x000052b8 
+ 00028115  0x00007898 setarg  0x00000003 
+ 00028116  0x00007899 copy  0x0000003f , 0x00000002 
+ 00028117  0x0000789a setarg  0x00000051 
+ 00028118  0x0000789b copy  0x0000003f , 0x0000000b 
+ 00028119  0x0000789c branch  0x000050a8 
+ 00028120  0x0000789f bpatchx  0x000000c4 , 0x00004038 
+ 00028121  0x000078a0 call  0x000052b8 
+ 00028122  0x000078a1 fetch  0x00000002 , 0x0000424a 
+ 00028123  0x000078a2 copy  0x0000003f , 0x00000002 
+ 00028124  0x000078a3 branch  0x000050b7 
+ 00028125  0x000078a6 bpatchx  0x000000c5 , 0x00004038 
+ 00028126  0x000078a7 call  0x000052b8 
+ 00028127  0x000078a8 setarg  0x00000011 
+ 00028128  0x000078a9 copy  0x0000003f , 0x00000002 
+ 00028129  0x000078aa setarg  0x00000052 
+ 00028130  0x000078ab copy  0x0000003f , 0x0000000b 
+ 00028131  0x000078ac branch  0x000050a8 
+ 00028132  0x000078af bpatchx  0x000000c6 , 0x00004038 
+ 00028133  0x000078b0 call  0x000052b8 
+ 00028134  0x000078b1 fetch  0x00000002 , 0x0000424c 
+ 00028135  0x000078b2 copy  0x0000003f , 0x00000002 
+ 00028136  0x000078b3 branch  0x000050b7 
+ 00028137  0x000078b6 bpatchx  0x000000c7 , 0x00004038 
+ 00028138  0x000078b7 call  0x000052b8 
+ 00028139  0x000078b8 setarg  0x00000013 
+ 00028140  0x000078b9 copy  0x0000003f , 0x00000002 
+ 00028141  0x000078ba setarg  0x00000053 
+ 00028142  0x000078bb copy  0x0000003f , 0x0000000b 
+ 00028143  0x000078bc branch  0x000050a8 
+ 00028144  0x000078bf bpatchx  0x000000c8 , 0x00004039 
+ 00028145  0x000078c0 call  0x000052b8 
+ 00028146  0x000078c1 fetch  0x00000002 , 0x0000424e 
+ 00028147  0x000078c2 copy  0x0000003f , 0x00000002 
+ 00028148  0x000078c3 branch  0x000050b7 
+ 00028149  0x000078c6 bpatchx  0x000000c9 , 0x00004039 
+ 00028150  0x000078c7 call  0x000052d2 
+ 00028151  0x000078c9 jam  0x00000003 , 0x000004fb 
+ 00028152  0x000078ca jam  0x0000001c , 0x000004fe 
+ 00028153  0x000078cb call  0x00006ba9 
+ 00028154  0x000078cc jam  0x00000001 , 0x00004563 
+ 00028155  0x000078cd rtn 
+ 00028156  0x000078d0 bpatchx  0x000000ca , 0x00004039 
+ 00028157  0x000078d1 call  0x000052d2 
+ 00028158  0x000078d2 fetcht  0x00000001 , 0x00004564 
+ 00028159  0x000078d3 call  0x00006a79 
+ 00028160  0x000078d4 storet  0x00000001 , 0x0000455d 
+ 00028161  0x000078d5 branch  0x00006bc4 
+ 00028162  0x000078d8 bpatchx  0x000000cb , 0x00004039 
+ 00028163  0x000078d9 call  0x000052d2 
+ 00028164  0x000078da fetcht  0x00000001 , 0x0000455d 
+ 00028165  0x000078db call  0x00006a73 
+ 00028166  0x000078dc call  0x00006a1a 
+ 00028167  0x000078dd store  0x00000001 , 0x000004fe 
+ 00028168  0x000078de fetcht  0x00000001 , 0x0000455d 
+ 00028169  0x000078df call  0x00006a73 
+ 00028170  0x000078e0 storet  0x00000001 , 0x000004fb 
+ 00028171  0x000078e1 branch  0x00006ba9 
+ 00028172  0x000078e4 bpatchx  0x000000cc , 0x00004039 
+ 00028173  0x000078e5 call  0x000052d2 
+ 00028174  0x000078e6 fetcht  0x00000001 , 0x0000455d 
+ 00028175  0x000078e7 call  0x00006a73 
+ 00028176  0x000078e8 branch  0x00006bfc 
+ 00028177  0x000078f6 bpatchx  0x000000cd , 0x00004039 
+ 00028178  0x000078f7 fetch  0x00000002 , 0x00000264 
+ 00028179  0x000078f8 iforce  0x00000006 
+ 00028180  0x000078fb ifetch  0x00000001 , 0x00000006 
+ 00028181  0x000078fc copy  0x0000003f , 0x00000012 
+ 00028182  0x000078fd store  0x00000001 , 0x0000051b 
+ 00028183  0x000078fe ifetch  0x00000002 , 0x00000006 
+ 00028184  0x000078ff store  0x00000002 , 0x0000051c 
+ 00028185  0x00007900 ifetch  0x00000001 , 0x00000006 
+ 00028186  0x00007901 lshift8  0x0000003f , 0x0000000b 
+ 00028187  0x00007902 ifetch  0x00000001 , 0x00000006 
+ 00028188  0x00007903 iadd  0x0000000b , 0x0000000b 
+ 00028189  0x00007904 bpatchx  0x000000ce , 0x00004039 
+ 00028190  0x00007905 copy  0x00000006 , 0x00000002 
+ 00028191  0x00007906 arg  0x00000004 , 0x00000039 
+ 00028192  0x00007907 arg  0x0000052a , 0x00000005 
+ 00028193  0x00007908 call  0x00007ec6 
+ 00028194  0x00007909 copy  0x00000002 , 0x00000006 
+ 00028195  0x0000790a deposit  0x00000012 
+ 00028196  0x0000790b beq  0x00000001 , 0x00006fba 
+ 00028197  0x0000790c beq  0x00000002 , 0x00006e2c 
+ 00028198  0x0000790d beq  0x00000003 , 0x00006fba 
+ 00028199  0x0000790e beq  0x00000004 , 0x00006e54 
+ 00028200  0x0000790f beq  0x00000005 , 0x00006fba 
+ 00028201  0x00007910 beq  0x00000006 , 0x00006f02 
+ 00028202  0x00007911 beq  0x00000007 , 0x00006fba 
+ 00028203  0x00007912 branch  0x00006fc1 
+ 00028204  0x0000791e bpatchx  0x000000cf , 0x00004039 
+ 00028205  0x0000791f call  0x00006fd0 
+ 00028206  0x00007920 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00028207  0x00007921 branch  0x00007040 , 0x00000001 
+ 00028208  0x00007922 compare  0x000000ff , 0x00000002 , 0x000000ff 
+ 00028209  0x00007923 branch  0x00006fc4 , 0x00000001 
+ 00028210  0x00007925 ifetch  0x00000002 , 0x00000006 
+ 00028211  0x00007926 store  0x00000002 , 0x00000522 
+ 00028212  0x00007927 increase  0xfffffffe , 0x0000000b 
+ 00028213  0x00007929 increase  0xffffffff , 0x0000000b 
+ 00028214  0x0000792a nbranch  0x00006fbe , 0x00000005 
+ 00028215  0x0000792b arg  0x00000511 , 0x0000000b 
+ 00028216  0x0000792c ifetch  0x00000002 , 0x0000000b 
+ 00028217  0x0000792d rtn  0x00000034 
+ 00028218  0x0000792e call  0x00007082 
+ 00028219  0x0000792f call  0x000052d0 
+ 00028220  0x00007930 force  0x00000003 , 0x0000003f 
+ 00028221  0x00007931 istore  0x00000001 , 0x00000005 
+ 00028222  0x00007932 fetch  0x00000002 , 0x0000051c 
+ 00028223  0x00007933 istore  0x00000002 , 0x00000005 
+ 00028224  0x00007934 lshift2  0x00000007 , 0x0000003f 
+ 00028225  0x00007935 add  0x0000003f , 0x00000005 , 0x0000003f 
+ 00028226  0x00007936 add  0x0000003f , 0x00000005 , 0x00000013 
+ 00028227  0x00007937 byteswap  0x0000003f , 0x0000003f 
+ 00028228  0x00007938 istore  0x00000002 , 0x00000005 
+ 00028229  0x00007939 deposit  0x00000007 
+ 00028230  0x0000793a byteswap  0x0000003f , 0x0000003f 
+ 00028231  0x0000793b istore  0x00000002 , 0x00000005 
+ 00028232  0x0000793c istore  0x00000002 , 0x00000005 
+ 00028233  0x0000793d arg  0x0000052a , 0x00000006 
+ 00028234  0x0000793e copy  0x00000007 , 0x00000039 
+ 00028235  0x0000793f branch  0x00006e4f , 0x00000005 
+ 00028236  0x00007941 ifetch  0x00000004 , 0x00000006 
+ 00028237  0x00007942 istore  0x00000004 , 0x00000005 
+ 00028238  0x00007943 loop  0x00006e4c 
+ 00028239  0x00007945 force  0x00000000 , 0x0000003f 
+ 00028240  0x00007946 istore  0x00000001 , 0x00000005 
+ 00028241  0x00007947 deposit  0x00000013 
+ 00028242  0x00007948 store  0x00000002 , 0x00000275 
+ 00028243  0x0000794a rtn 
+ 00028244  0x00007956 bpatchx  0x000000d0 , 0x0000403a 
+ 00028245  0x00007957 ifetch  0x00000004 , 0x00000006 
+ 00028246  0x00007958 store  0x00000004 , 0x00000524 
+ 00028247  0x00007959 increase  0xfffffffc , 0x0000000b 
+ 00028248  0x0000795a call  0x00006f2e 
+ 00028249  0x0000795b store  0x00000002 , 0x00000520 
+ 00028250  0x0000795c increase  0xfffffffe , 0x0000000b 
+ 00028251  0x0000795d call  0x00007028 
+ 00028252  0x0000795e branch  0x00006fc4 , 0x00000005 
+ 00028253  0x0000795f compare  0x00000005 , 0x00000011 , 0x000000ff 
+ 00028254  0x00007961 branch  0x00006e62 , 0x00000001 
+ 00028255  0x00007963 arg  0x0000052a , 0x00000005 
+ 00028256  0x00007964 force  0x00000000 , 0x00000007 
+ 00028257  0x00007965 branch  0x00006e71 
+ 00028258  0x00007967 ifetch  0x00000001 , 0x00000006 
+ 00028259  0x00007968 bne  0x0000000a , 0x00006fc4 
+ 00028260  0x00007969 ifetch  0x00000002 , 0x00000006 
+ 00028261  0x0000796a nbranch  0x00006e6f , 0x00000034 
+ 00028262  0x0000796b ifetch  0x00000001 , 0x00000006 
+ 00028263  0x0000796c bne  0x000000ff , 0x00006e6d 
+ 00028264  0x0000796d ifetch  0x00000001 , 0x00000006 
+ 00028265  0x0000796e bne  0x000000ff , 0x00006e6b 
+ 00028266  0x0000796f branch  0x00006eb8 
+ 00028267  0x00007971 increase  0xfffffffb , 0x00000006 
+ 00028268  0x00007972 branch  0x00006e5f 
+ 00028269  0x00007974 increase  0xfffffffc , 0x00000006 
+ 00028270  0x00007975 branch  0x00006e5f 
+ 00028271  0x00007977 increase  0xfffffffd , 0x00000006 
+ 00028272  0x00007978 branch  0x00006e5f 
+ 00028273  0x0000797a ifetch  0x00000001 , 0x00000006 
+ 00028274  0x0000797b beq  0x00000009 , 0x00006e86 
+ 00028275  0x0000797c beq  0x0000000a , 0x00006e74 
+ 00028276  0x0000797e ifetch  0x00000002 , 0x00000006 
+ 00028277  0x0000797f istore  0x00000002 , 0x00000005 
+ 00028278  0x00007980 increase  0x00000001 , 0x00000007 
+ 00028279  0x00007981 byteswap  0x0000003f , 0x00000012 
+ 00028280  0x00007982 ifetch  0x00000002 , 0x00000006 
+ 00028281  0x00007983 byteswap  0x0000003f , 0x0000003f 
+ 00028282  0x00007985 increase  0x00000001 , 0x00000012 
+ 00028283  0x00007986 isub  0x00000012 , 0x0000003e 
+ 00028284  0x00007987 nbranch  0x00006e83 , 0x00000002 
+ 00028285  0x00007988 copy  0x0000003f , 0x00000013 
+ 00028286  0x00007989 byteswap  0x00000012 , 0x0000003f 
+ 00028287  0x0000798a istore  0x00000002 , 0x00000005 
+ 00028288  0x0000798b increase  0x00000001 , 0x00000007 
+ 00028289  0x0000798c copy  0x00000013 , 0x0000003f 
+ 00028290  0x0000798d branch  0x00006e7a 
+ 00028291  0x0000798f increase  0xfffffffb , 0x0000000b 
+ 00028292  0x00007990 increase  0xfffffffb , 0x00000011 
+ 00028293  0x00007991 branch  0x00006e8b 
+ 00028294  0x00007993 ifetch  0x00000002 , 0x00000006 
+ 00028295  0x00007994 istore  0x00000002 , 0x00000005 
+ 00028296  0x00007995 increase  0x00000001 , 0x00000007 
+ 00028297  0x00007996 increase  0xfffffffd , 0x0000000b 
+ 00028298  0x00007997 increase  0xfffffffd , 0x00000011 
+ 00028299  0x00007999 nbranch  0x00006fc4 , 0x00000002 
+ 00028300  0x0000799a nbranch  0x00006e71 , 0x00000005 
+ 00028301  0x0000799b increase  0xffffffff , 0x0000000b 
+ 00028302  0x0000799c nbranch  0x00006fc4 , 0x00000005 
+ 00028303  0x0000799e call  0x000052d0 
+ 00028304  0x0000799f increase  0x0000000a , 0x00000005 
+ 00028305  0x000079a0 arg  0x0000052a , 0x00000011 
+ 00028306  0x000079a2 copy  0x00000007 , 0x0000003f 
+ 00028307  0x000079a3 branch  0x00006ea5 , 0x00000034 
+ 00028308  0x000079a4 ifetch  0x00000002 , 0x00000011 
+ 00028309  0x000079a5 branch  0x00006ea5 , 0x00000034 
+ 00028310  0x000079a6 iforce  0x00000012 
+ 00028311  0x000079a7 fetch  0x00000004 , 0x00000524 
+ 00028312  0x000079a8 iforce  0x00000002 
+ 00028313  0x000079a9 call  0x000070e7 
+ 00028314  0x000079aa copy  0x00000006 , 0x0000003f 
+ 00028315  0x000079ab branch  0x00006ea2 , 0x00000034 
+ 00028316  0x000079ac increase  0xfffffffd , 0x00000006 
+ 00028317  0x000079ad ifetch  0x00000003 , 0x00000006 
+ 00028318  0x000079ae istore  0x00000003 , 0x00000005 
+ 00028319  0x000079af call  0x0000705b 
+ 00028320  0x000079b0 iforce  0x00000039 
+ 00028321  0x000079b1 call  0x00007f01 
+ 00028322  0x000079b3 increase  0x00000002 , 0x00000011 
+ 00028323  0x000079b4 increase  0xffffffff , 0x00000007 
+ 00028324  0x000079b5 branch  0x00006e92 
+ 00028325  0x000079b8 arg  0x00000005 , 0x00000011 
+ 00028326  0x000079b9 call  0x00006f84 
+ 00028327  0x000079ba fetch  0x00000002 , 0x00000275 
+ 00028328  0x000079bb beq  0x0000000b , 0x00007043 
+ 00028329  0x000079bc branch  0x00006f9a 
+ 00028330  0x000079c0 ifetch  0x00000001 , 0x00000006 
+ 00028331  0x000079c1 beq  0x00000000 , 0x00006eae 
+ 00028332  0x000079c2 beq  0x00000001 , 0x00006eb0 
+ 00028333  0x000079c3 beq  0x00000002 , 0x00006eb3 
+ 00028334  0x000079c5 increase  0xffffffff , 0x0000000b 
+ 00028335  0x000079c6 branch  0x00006eb6 
+ 00028336  0x000079c8 ifetch  0x00000001 , 0x00000006 
+ 00028337  0x000079c9 increase  0xfffffffe , 0x0000000b 
+ 00028338  0x000079ca branch  0x00006eb6 
+ 00028339  0x000079cc ifetch  0x00000002 , 0x00000006 
+ 00028340  0x000079cd byteswap  0x0000003f , 0x0000003f 
+ 00028341  0x000079ce increase  0xfffffffd , 0x0000000b 
+ 00028342  0x000079d0 store  0x00000002 , 0x00000519 
+ 00028343  0x000079d1 rtn 
+ 00028344  0x000079d4 increase  0xfffffffb , 0x0000000b 
+ 00028345  0x000079d5 call  0x00006eaa 
+ 00028346  0x000079d6 nbranch  0x00006fbe , 0x00000005 
+ 00028347  0x000079d7 fetcht  0x00000004 , 0x00000524 
+ 00028348  0x000079d8 call  0x000070b1 
+ 00028349  0x000079d9 nbranch  0x00006fbb , 0x00000005 
+ 00028350  0x000079da copy  0x00000006 , 0x00000011 
+ 00028351  0x000079db call  0x000052d0 
+ 00028352  0x000079dc copy  0x00000011 , 0x00000006 
+ 00028353  0x000079dd increase  0x00000003 , 0x00000005 
+ 00028354  0x000079de copy  0x00000006 , 0x0000000b 
+ 00028355  0x000079df call  0x00007062 
+ 00028356  0x000079e0 copy  0x0000003f , 0x00000011 
+ 00028357  0x000079e2 fetch  0x00000002 , 0x00000519 
+ 00028358  0x000079e3 copy  0x0000003f , 0x00000012 
+ 00028359  0x000079e4 copy  0x00000011 , 0x0000003f 
+ 00028360  0x000079e5 isub  0x00000012 , 0x00000012 
+ 00028361  0x000079e6 fetch  0x00000002 , 0x00000520 
+ 00028362  0x000079e7 isub  0x00000012 , 0x0000003e 
+ 00028363  0x000079e8 nbranch  0x00006ee7 , 0x00000002 
+ 00028364  0x000079ea disable  0x00000028 
+ 00028365  0x000079eb fetch  0x00000002 , 0x00000519 
+ 00028366  0x000079ec branch  0x00006eda , 0x00000034 
+ 00028367  0x000079ed iadd  0x0000000b , 0x00000006 
+ 00028368  0x000079ee increase  0x00000003 , 0x00000012 
+ 00028369  0x000079ef copy  0x00000012 , 0x00000039 
+ 00028370  0x000079f0 copy  0x00000039 , 0x0000003f 
+ 00028371  0x000079f1 increase  0x00000003 , 0x0000003f 
+ 00028372  0x000079f2 byteswap  0x0000003f , 0x0000003f 
+ 00028373  0x000079f3 istore  0x00000002 , 0x00000005 
+ 00028374  0x000079f4 copy  0x00000039 , 0x0000003f 
+ 00028375  0x000079f5 byteswap  0x0000003f , 0x0000003f 
+ 00028376  0x000079f6 istore  0x00000002 , 0x00000005 
+ 00028377  0x000079f7 branch  0x00006ef5 
+ 00028378  0x000079f9 add  0x00000011 , 0x00000006 , 0x00000039 
+ 00028379  0x000079fa branch  0x00006ede , 0x00000028 
+ 00028380  0x000079fb byteswap  0x00000039 , 0x0000003f 
+ 00028381  0x000079fc branch  0x00006ee1 
+ 00028382  0x000079fe copy  0x00000039 , 0x0000003f 
+ 00028383  0x000079ff increase  0x00000002 , 0x0000003f 
+ 00028384  0x00007a00 byteswap  0x0000003f , 0x0000003f 
+ 00028385  0x00007a02 istore  0x00000002 , 0x00000005 
+ 00028386  0x00007a03 increase  0xfffffffd , 0x00000039 
+ 00028387  0x00007a04 byteswap  0x00000039 , 0x0000003f 
+ 00028388  0x00007a05 istore  0x00000002 , 0x00000005 
+ 00028389  0x00007a06 copy  0x0000000b , 0x00000006 
+ 00028390  0x00007a07 branch  0x00006ef5 
+ 00028391  0x00007a09 enable  0x00000028 
+ 00028392  0x00007a0b fetch  0x00000002 , 0x00000520 
+ 00028393  0x00007a0c copy  0x0000003f , 0x00000011 
+ 00028394  0x00007a0d copy  0x00000011 , 0x00000039 
+ 00028395  0x00007a0e fetch  0x00000002 , 0x00000519 
+ 00028396  0x00007a0f branch  0x00006eda , 0x00000034 
+ 00028397  0x00007a10 iadd  0x0000000b , 0x00000006 
+ 00028398  0x00007a11 copy  0x00000011 , 0x0000003f 
+ 00028399  0x00007a12 increase  0x00000005 , 0x0000003f 
+ 00028400  0x00007a13 byteswap  0x0000003f , 0x0000003f 
+ 00028401  0x00007a14 istore  0x00000002 , 0x00000005 
+ 00028402  0x00007a15 copy  0x00000011 , 0x0000003f 
+ 00028403  0x00007a16 byteswap  0x0000003f , 0x0000003f 
+ 00028404  0x00007a17 istore  0x00000002 , 0x00000005 
+ 00028405  0x00007a19 call  0x00007f01 
+ 00028406  0x00007a1a nbranch  0x00006efe , 0x00000028 
+ 00028407  0x00007a1b force  0x00000002 , 0x0000003f 
+ 00028408  0x00007a1c istore  0x00000001 , 0x00000005 
+ 00028409  0x00007a1d copy  0x00000006 , 0x0000003f 
+ 00028410  0x00007a1e isub  0x0000000b , 0x0000003f 
+ 00028411  0x00007a1f byteswap  0x0000003f , 0x0000003f 
+ 00028412  0x00007a20 istore  0x00000002 , 0x00000005 
+ 00028413  0x00007a21 branch  0x00006f00 
+ 00028414  0x00007a23 force  0x00000000 , 0x0000003f 
+ 00028415  0x00007a24 istore  0x00000001 , 0x00000005 
+ 00028416  0x00007a26 arg  0x00000005 , 0x00000011 
+ 00028417  0x00007a27 branch  0x00006fb0 
+ 00028418  0x00007a33 bpatchx  0x000000d1 , 0x0000403a 
+ 00028419  0x00007a34 call  0x00006fd0 
+ 00028420  0x00007a35 compare  0x000000ff , 0x00000002 , 0x000000ff 
+ 00028421  0x00007a36 branch  0x00006fc4 , 0x00000001 
+ 00028422  0x00007a37 call  0x00006f2e 
+ 00028423  0x00007a38 store  0x00000002 , 0x00000520 
+ 00028424  0x00007a39 increase  0xfffffffe , 0x0000000b 
+ 00028425  0x00007a3a call  0x00007028 
+ 00028426  0x00007a3b arg  0x0000052a , 0x00000005 
+ 00028427  0x00007a3c force  0x00000000 , 0x00000007 
+ 00028428  0x00007a3e ifetch  0x00000001 , 0x00000006 
+ 00028429  0x00007a3f beq  0x0000000a , 0x00006f36 
+ 00028430  0x00007a40 ifetch  0x00000002 , 0x00000006 
+ 00028431  0x00007a41 istore  0x00000002 , 0x00000005 
+ 00028432  0x00007a42 increase  0x00000001 , 0x00000007 
+ 00028433  0x00007a43 increase  0xfffffffd , 0x0000000b 
+ 00028434  0x00007a44 increase  0xfffffffd , 0x00000011 
+ 00028435  0x00007a45 nbranch  0x00006fc4 , 0x00000002 
+ 00028436  0x00007a46 nbranch  0x00006f0c , 0x00000005 
+ 00028437  0x00007a47 increase  0xffffffff , 0x0000000b 
+ 00028438  0x00007a48 nbranch  0x00006fc4 , 0x00000005 
+ 00028439  0x00007a49 call  0x000052d0 
+ 00028440  0x00007a4a increase  0x0000000d , 0x00000005 
+ 00028441  0x00007a4b fetch  0x00000002 , 0x00000511 
+ 00028442  0x00007a4c iforce  0x00000013 
+ 00028443  0x00007a4d arg  0x0000052a , 0x00000011 
+ 00028444  0x00007a4f ifetch  0x00000002 , 0x00000011 
+ 00028445  0x00007a50 branch  0x00006f29 , 0x00000034 
+ 00028446  0x00007a51 iforce  0x00000012 
+ 00028447  0x00007a52 call  0x000070c6 
+ 00028448  0x00007a53 branch  0x00006f27 , 0x00000034 
+ 00028449  0x00007a54 increase  0xfffffffd , 0x00000006 
+ 00028450  0x00007a55 ifetch  0x00000003 , 0x00000006 
+ 00028451  0x00007a56 istore  0x00000003 , 0x00000005 
+ 00028452  0x00007a57 call  0x0000705b 
+ 00028453  0x00007a58 iforce  0x00000039 
+ 00028454  0x00007a59 call  0x00007f01 
+ 00028455  0x00007a5b increase  0x00000002 , 0x00000011 
+ 00028456  0x00007a5c branch  0x00006f1c 
+ 00028457  0x00007a5f call  0x00006f83 
+ 00028458  0x00007a60 fetch  0x00000002 , 0x00000275 
+ 00028459  0x00007a61 beq  0x0000000e , 0x00007046 
+ 00028460  0x00007a62 call  0x00006f9a 
+ 00028461  0x00007a63 branch  0x00006f9a 
+ 00028462  0x00007a67 ifetch  0x00000002 , 0x00000006 
+ 00028463  0x00007a68 byteswap  0x0000003f , 0x0000003f 
+ 00028464  0x00007a69 increase  0xfffffffd , 0x0000003f 
+ 00028465  0x00007a6a arg  0x000000c8 , 0x00000002 
+ 00028466  0x00007a6b isub  0x00000002 , 0x0000003e 
+ 00028467  0x00007a6c nrtn  0x00000002 
+ 00028468  0x00007a6d setarg  0x000000c8 
+ 00028469  0x00007a6e rtn 
+ 00028470  0x00007a72 increase  0x00000004 , 0x00000006 
+ 00028471  0x00007a73 increase  0xfffffffb , 0x0000000b 
+ 00028472  0x00007a74 increase  0xfffffffb , 0x00000011 
+ 00028473  0x00007a75 nbranch  0x00006fc4 , 0x00000005 
+ 00028474  0x00007a76 call  0x00006eaa 
+ 00028475  0x00007a77 nbranch  0x00006fbe , 0x00000005 
+ 00028476  0x00007a78 arg  0x00000511 , 0x0000000b 
+ 00028477  0x00007a79 call  0x00007082 
+ 00028478  0x00007a7a deposit  0x00000007 
+ 00028479  0x00007a7b branch  0x00007046 , 0x00000034 
+ 00028480  0x00007a7c store  0x00000001 , 0x0000054e 
+ 00028481  0x00007a7e copy  0x00000012 , 0x0000003f 
+ 00028482  0x00007a7f store  0x00000002 , 0x0000054c 
+ 00028483  0x00007a80 arg  0x00000000 , 0x00000007 
+ 00028484  0x00007a81 arg  0x00000000 , 0x00000011 
+ 00028485  0x00007a82 call  0x000052d0 
+ 00028486  0x00007a83 increase  0x0000000a , 0x00000005 
+ 00028487  0x00007a85 call  0x00006f6c 
+ 00028488  0x00007a86 nbranch  0x00002a8c , 0x00000028 
+ 00028489  0x00007a87 copy  0x00000006 , 0x0000000b 
+ 00028490  0x00007a88 copy  0x0000003f , 0x00000013 
+ 00028491  0x00007a89 iadd  0x00000011 , 0x00000011 
+ 00028492  0x00007a8c fetch  0x00000002 , 0x00000519 
+ 00028493  0x00007a8d copy  0x0000003f , 0x00000012 
+ 00028494  0x00007a8e branch  0x00006f75 , 0x00000034 
+ 00028495  0x00007a90 copy  0x00000011 , 0x0000003f 
+ 00028496  0x00007a91 isub  0x00000012 , 0x00000012 
+ 00028497  0x00007a92 branch  0x00006f67 , 0x00000005 
+ 00028498  0x00007a93 nbranch  0x00006f67 , 0x00000002 
+ 00028499  0x00007a94 fetch  0x00000002 , 0x00000520 
+ 00028500  0x00007a95 isub  0x00000012 , 0x0000003e 
+ 00028501  0x00007a96 branch  0x00006f5e , 0x00000005 
+ 00028502  0x00007a97 nbranch  0x00006f5e , 0x00000002 
+ 00028503  0x00007a9b copy  0x00000012 , 0x00000039 
+ 00028504  0x00007a9c call  0x00006f61 
+ 00028505  0x00007a9d fetch  0x00000001 , 0x0000054e 
+ 00028506  0x00007a9e increase  0x00000001 , 0x00000007 
+ 00028507  0x00007a9f isub  0x00000007 , 0x0000003e 
+ 00028508  0x00007aa0 branch  0x00006f83 , 0x00000005 
+ 00028509  0x00007aa1 branch  0x00006fa0 
+ 00028510  0x00007aa4 copy  0x0000003f , 0x00000039 
+ 00028511  0x00007aa5 call  0x00006f61 
+ 00028512  0x00007aa6 branch  0x00006fa0 
+ 00028513  0x00007aa9 increase  0xfffffffd , 0x00000005 
+ 00028514  0x00007aaa copy  0x00000039 , 0x00000002 
+ 00028515  0x00007aab copy  0x00000013 , 0x0000003f 
+ 00028516  0x00007aac isub  0x00000012 , 0x0000003f 
+ 00028517  0x00007aad iadd  0x0000000b , 0x00000006 
+ 00028518  0x00007aae branch  0x00007f01 
+ 00028519  0x00007ab1 fetch  0x00000001 , 0x0000054e 
+ 00028520  0x00007ab2 increase  0x00000001 , 0x00000007 
+ 00028521  0x00007ab3 isub  0x00000007 , 0x0000003e 
+ 00028522  0x00007ab4 rtn  0x00000005 
+ 00028523  0x00007ab5 branch  0x00006f47 
+ 00028524  0x00007ab8 call  0x00007fe9 
+ 00028525  0x00007ab9 arg  0x0000052a , 0x00000006 
+ 00028526  0x00007aba lshift2  0x00000007 , 0x0000003f 
+ 00028527  0x00007abb iadd  0x00000006 , 0x00000006 
+ 00028528  0x00007abc ifetcht  0x00000004 , 0x00000006 
+ 00028529  0x00007abd call  0x000070b1 
+ 00028530  0x00007abe nrtn  0x00000005 
+ 00028531  0x00007abf call  0x0000705b 
+ 00028532  0x00007ac0 branch  0x00007fe7 
+ 00028533  0x00007ac3 fetch  0x00000002 , 0x00000520 
+ 00028534  0x00007ac4 isub  0x00000011 , 0x0000003e 
+ 00028535  0x00007ac5 nbranch  0x00006f8f , 0x00000002 
+ 00028536  0x00007ac6 copy  0x00000011 , 0x00000039 
+ 00028537  0x00007ac7 copy  0x00000039 , 0x00000002 
+ 00028538  0x00007ac8 copy  0x0000000b , 0x00000006 
+ 00028539  0x00007ac9 call  0x00007f01 
+ 00028540  0x00007aca fetch  0x00000002 , 0x0000054c 
+ 00028541  0x00007acb isub  0x00000011 , 0x0000003e 
+ 00028542  0x00007acc branch  0x00006f81 , 0x00000005 
+ 00028543  0x00007ace call  0x00006fa0 
+ 00028544  0x00007acf branch  0x00006f94 
+ 00028545  0x00007ad2 call  0x00006f83 
+ 00028546  0x00007ad3 branch  0x00006f94 
+ 00028547  0x00007ad6 arg  0x00000007 , 0x00000011 
+ 00028548  0x00007ad8 force  0x00000000 , 0x0000003f 
+ 00028549  0x00007ad9 istore  0x00000001 , 0x00000005 
+ 00028550  0x00007ada call  0x00006fb0 
+ 00028551  0x00007adb fetcht  0x00000002 , 0x00000275 
+ 00028552  0x00007adc increase  0xfffffffb , 0x00000002 
+ 00028553  0x00007add byteswap  0x00000002 , 0x0000003f 
+ 00028554  0x00007ade istore  0x00000002 , 0x00000005 
+ 00028555  0x00007adf increase  0xfffffffd , 0x00000002 
+ 00028556  0x00007ae0 byteswap  0x00000002 , 0x0000003f 
+ 00028557  0x00007ae1 istore  0x00000002 , 0x00000005 
+ 00028558  0x00007ae2 rtn 
+ 00028559  0x00007ae5 copy  0x0000003f , 0x00000039 
+ 00028560  0x00007ae6 copy  0x00000039 , 0x00000002 
+ 00028561  0x00007ae7 copy  0x0000000b , 0x00000006 
+ 00028562  0x00007ae8 call  0x00007f01 
+ 00028563  0x00007ae9 call  0x00006fa0 
+ 00028564  0x00007aeb setarg  0x00000036 
+ 00028565  0x00007aec istore  0x00000001 , 0x00000005 
+ 00028566  0x00007aed fetch  0x00000002 , 0x0000054c 
+ 00028567  0x00007aee byteswap  0x0000003f , 0x0000003f 
+ 00028568  0x00007aef istore  0x00000002 , 0x00000005 
+ 00028569  0x00007af0 rtn 
+ 00028570  0x00007af3 setarg  0x00000036 
+ 00028571  0x00007af4 istore  0x00000001 , 0x00000005 
+ 00028572  0x00007af5 increase  0xfffffffd , 0x00000002 
+ 00028573  0x00007af6 byteswap  0x00000002 , 0x0000003f 
+ 00028574  0x00007af7 istore  0x00000002 , 0x00000005 
+ 00028575  0x00007af8 rtn 
+ 00028576  0x00007afb arg  0x00000007 , 0x00000011 
+ 00028577  0x00007afc setarg  0x00000002 
+ 00028578  0x00007afd istore  0x00000001 , 0x00000005 
+ 00028579  0x00007afe fetch  0x00000002 , 0x00000519 
+ 00028580  0x00007aff iadd  0x00000002 , 0x00000002 
+ 00028581  0x00007b00 byteswap  0x00000002 , 0x0000003f 
+ 00028582  0x00007b01 istore  0x00000002 , 0x00000005 
+ 00028583  0x00007b02 call  0x00006fb0 
+ 00028584  0x00007b03 fetcht  0x00000002 , 0x00000275 
+ 00028585  0x00007b04 increase  0xfffffffb , 0x00000002 
+ 00028586  0x00007b05 byteswap  0x00000002 , 0x0000003f 
+ 00028587  0x00007b06 istore  0x00000002 , 0x00000005 
+ 00028588  0x00007b07 increase  0xfffffffb , 0x00000002 
+ 00028589  0x00007b08 byteswap  0x00000002 , 0x0000003f 
+ 00028590  0x00007b09 istore  0x00000002 , 0x00000005 
+ 00028591  0x00007b0a rtn 
+ 00028592  0x00007b0d fetch  0x00000002 , 0x00000273 
+ 00028593  0x00007b0e isub  0x00000005 , 0x0000003f 
+ 00028594  0x00007b0f sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00028595  0x00007b10 store  0x00000002 , 0x00000275 
+ 00028596  0x00007b11 call  0x000052d0 
+ 00028597  0x00007b12 copy  0x00000011 , 0x0000003f 
+ 00028598  0x00007b13 istore  0x00000001 , 0x00000005 
+ 00028599  0x00007b14 fetch  0x00000002 , 0x0000051c 
+ 00028600  0x00007b15 istore  0x00000002 , 0x00000005 
+ 00028601  0x00007b16 rtn 
+ 00028602  0x00007b27 rtn 
+ 00028603  0x00007b49 setarg  0x00000200 
+ 00028604  0x00007b4a store  0x00000002 , 0x0000054a 
+ 00028605  0x00007b4b branch  0x00006fc6 
+ 00028606  0x00007b4d setarg  0x00000400 
+ 00028607  0x00007b4e store  0x00000002 , 0x0000054a 
+ 00028608  0x00007b4f branch  0x00006fc6 
+ 00028609  0x00007b51 setarg  0x00000600 
+ 00028610  0x00007b52 store  0x00000002 , 0x0000054a 
+ 00028611  0x00007b53 branch  0x00006fc6 
+ 00028612  0x00007b55 setarg  0x00000300 
+ 00028613  0x00007b56 store  0x00000002 , 0x0000054a 
+ 00028614  0x00007b58 call  0x000052d0 
+ 00028615  0x00007b59 istore  0x00000001 , 0x00000005 
+ 00028616  0x00007b5a fetch  0x00000002 , 0x0000051c 
+ 00028617  0x00007b5b istore  0x00000002 , 0x00000005 
+ 00028618  0x00007b5c setarg  0x00000200 
+ 00028619  0x00007b5d istore  0x00000002 , 0x00000005 
+ 00028620  0x00007b5e fetch  0x00000002 , 0x0000054a 
+ 00028621  0x00007b5f istore  0x00000002 , 0x00000005 
+ 00028622  0x00007b60 jam  0x00000007 , 0x00000275 
+ 00028623  0x00007b61 rtn 
+ 00028624  0x00007b67 arg  0x00000000 , 0x00000012 
+ 00028625  0x00007b68 force  0x00000000 , 0x00000002 
+ 00028626  0x00007b69 arg  0x00000511 , 0x00000005 
+ 00028627  0x00007b6a call  0x00007028 
+ 00028628  0x00007b6b branch  0x00007026 , 0x00000005 
+ 00028629  0x00007b6d increase  0x00000001 , 0x00000012 
+ 00028630  0x00007b6e ifetch  0x00000001 , 0x00000006 
+ 00028631  0x00007b6f increase  0xffffffff , 0x00000011 
+ 00028632  0x00007b70 increase  0xffffffff , 0x0000000b 
+ 00028633  0x00007b71 compare  0x00000018 , 0x0000003f , 0x000000f8 
+ 00028634  0x00007b72 nbranch  0x00007026 , 0x00000001 
+ 00028635  0x00007b73 compare  0x00000004 , 0x0000003f , 0x00000007 
+ 00028636  0x00007b74 nbranch  0x00006ff3 , 0x00000001 
+ 00028637  0x00007b75 force  0x00000001 , 0x00000002 
+ 00028638  0x00007b77 ifetch  0x00000001 , 0x00000006 
+ 00028639  0x00007b78 increase  0xffffffff , 0x00000011 
+ 00028640  0x00007b79 increase  0xffffffff , 0x0000000b 
+ 00028641  0x00007b7a bne  0x00000000 , 0x00006fe7 
+ 00028642  0x00007b7b ifetch  0x00000001 , 0x00000006 
+ 00028643  0x00007b7c increase  0xffffffff , 0x00000011 
+ 00028644  0x00007b7d increase  0xffffffff , 0x0000000b 
+ 00028645  0x00007b7e beq  0x00000000 , 0x00006ff8 
+ 00028646  0x00007b7f branch  0x00006fea 
+ 00028647  0x00007b81 increase  0x00000001 , 0x00000006 
+ 00028648  0x00007b82 increase  0xffffffff , 0x00000011 
+ 00028649  0x00007b83 increase  0xffffffff , 0x0000000b 
+ 00028650  0x00007b85 increase  0x00000002 , 0x00000006 
+ 00028651  0x00007b86 increase  0xfffffffe , 0x00000011 
+ 00028652  0x00007b87 increase  0xfffffffe , 0x0000000b 
+ 00028653  0x00007b88 compare  0x00000000 , 0x00000002 , 0x000000ff 
+ 00028654  0x00007b89 branch  0x00007020 , 0x00000001 
+ 00028655  0x00007b8a increase  0x0000000c , 0x00000006 
+ 00028656  0x00007b8b increase  0xfffffff4 , 0x00000011 
+ 00028657  0x00007b8c increase  0xfffffff4 , 0x0000000b 
+ 00028658  0x00007b8d branch  0x00007020 
+ 00028659  0x00007b8f compare  0x00000002 , 0x0000003f , 0x00000007 
+ 00028660  0x00007b90 nbranch  0x00006ff6 , 0x00000001 
+ 00028661  0x00007b91 branch  0x00006fde 
+ 00028662  0x00007b93 compare  0x00000001 , 0x0000003f , 0x00000007 
+ 00028663  0x00007b94 nbranch  0x00007026 , 0x00000001 
+ 00028664  0x00007b96 increase  0xfffffffe , 0x00000011 
+ 00028665  0x00007b97 increase  0xfffffffe , 0x0000000b 
+ 00028666  0x00007b98 ifetch  0x00000002 , 0x00000006 
+ 00028667  0x00007b99 sub  0x00000012 , 0x00000004 , 0x0000003e 
+ 00028668  0x00007b9a branch  0x00006ffe , 0x00000005 
+ 00028669  0x00007b9b istore  0x00000002 , 0x00000005 
+ 00028670  0x00007b9d compare  0x00000000 , 0x00000002 , 0x000000ff 
+ 00028671  0x00007b9e branch  0x00007020 , 0x00000001 
+ 00028672  0x00007b9f copy  0x00000006 , 0x00000002 
+ 00028673  0x00007ba0 ifetch  0x00000001 , 0x00000006 
+ 00028674  0x00007ba1 bne  0x00000000 , 0x00007019 
+ 00028675  0x00007ba2 ifetch  0x00000001 , 0x00000006 
+ 00028676  0x00007ba3 bne  0x00000000 , 0x00007019 
+ 00028677  0x00007ba4 ifetch  0x00000001 , 0x00000006 
+ 00028678  0x00007ba5 bne  0x00000010 , 0x00007019 
+ 00028679  0x00007ba6 ifetch  0x00000001 , 0x00000006 
+ 00028680  0x00007ba7 bne  0x00000000 , 0x00007019 
+ 00028681  0x00007ba8 ifetch  0x00000001 , 0x00000006 
+ 00028682  0x00007ba9 bne  0x00000080 , 0x00007019 
+ 00028683  0x00007baa ifetch  0x00000001 , 0x00000006 
+ 00028684  0x00007bab bne  0x00000000 , 0x00007019 
+ 00028685  0x00007bac ifetch  0x00000001 , 0x00000006 
+ 00028686  0x00007bad bne  0x00000000 , 0x00007019 
+ 00028687  0x00007bae ifetch  0x00000001 , 0x00000006 
+ 00028688  0x00007baf bne  0x00000080 , 0x00007019 
+ 00028689  0x00007bb0 ifetch  0x00000001 , 0x00000006 
+ 00028690  0x00007bb1 bne  0x0000005f , 0x00007019 
+ 00028691  0x00007bb2 ifetch  0x00000001 , 0x00000006 
+ 00028692  0x00007bb3 bne  0x0000009b , 0x00007019 
+ 00028693  0x00007bb4 ifetch  0x00000001 , 0x00000006 
+ 00028694  0x00007bb5 bne  0x00000034 , 0x00007019 
+ 00028695  0x00007bb6 ifetch  0x00000001 , 0x00000006 
+ 00028696  0x00007bb7 beq  0x000000fb , 0x0000701e 
+ 00028697  0x00007bb9 copy  0x00000002 , 0x00000006 
+ 00028698  0x00007bbb increase  0x0000000c , 0x00000006 
+ 00028699  0x00007bbc force  0x00000000 , 0x00000007 
+ 00028700  0x00007bbd force  0x00000000 , 0x00000002 
+ 00028701  0x00007bbe branch  0x0000701e 
+ 00028702  0x00007bc1 increase  0xfffffff4 , 0x0000000b 
+ 00028703  0x00007bc2 increase  0xfffffff4 , 0x00000011 
+ 00028704  0x00007bc4 force  0x00000000 , 0x00000002 
+ 00028705  0x00007bc5 compare  0x00000000 , 0x00000011 , 0x000000ff 
+ 00028706  0x00007bc6 nbranch  0x00006fd5 , 0x00000001 
+ 00028707  0x00007bc7 force  0x00000000 , 0x0000003f 
+ 00028708  0x00007bc8 istore  0x00000002 , 0x00000005 
+ 00028709  0x00007bc9 rtn 
+ 00028710  0x00007bcb arg  0x000000ff , 0x00000002 
+ 00028711  0x00007bcc rtn 
+ 00028712  0x00007bd7 bpatchx  0x000000d4 , 0x0000403a 
+ 00028713  0x00007bd8 ifetch  0x00000001 , 0x00000006 
+ 00028714  0x00007bd9 increase  0xffffffff , 0x0000000b 
+ 00028715  0x00007bda compare  0x00000030 , 0x0000003f , 0x000000f8 
+ 00028716  0x00007bdb nbranch  0x0000703e , 0x00000001 
+ 00028717  0x00007bdc compare  0x00000007 , 0x0000003f , 0x00000007 
+ 00028718  0x00007bdd branch  0x00007037 , 0x00000001 
+ 00028719  0x00007bde compare  0x00000006 , 0x0000003f , 0x00000007 
+ 00028720  0x00007bdf branch  0x00007039 , 0x00000001 
+ 00028721  0x00007be0 compare  0x00000005 , 0x0000003f , 0x00000007 
+ 00028722  0x00007be1 nbranch  0x0000703e , 0x00000001 
+ 00028723  0x00007be3 ifetch  0x00000001 , 0x00000006 
+ 00028724  0x00007be4 copy  0x0000003f , 0x00000011 
+ 00028725  0x00007be5 increase  0xffffffff , 0x0000000b 
+ 00028726  0x00007be6 branch  0x0000703c 
+ 00028727  0x00007be8 increase  0x00000002 , 0x00000006 
+ 00028728  0x00007be9 increase  0xfffffffe , 0x0000000b 
+ 00028729  0x00007beb ifetch  0x00000002 , 0x00000006 
+ 00028730  0x00007bec byteswap  0x0000003f , 0x00000011 
+ 00028731  0x00007bed increase  0xfffffffe , 0x0000000b 
+ 00028732  0x00007bef force  0x00000001 , 0x0000003f 
+ 00028733  0x00007bf0 rtn 
+ 00028734  0x00007bf2 force  0x00000000 , 0x0000003f 
+ 00028735  0x00007bf3 rtn 
+ 00028736  0x00007bfe setarg  0x00000003 
+ 00028737  0x00007bff store  0x00000001 , 0x0000051b 
+ 00028738  0x00007c00 branch  0x00007048 
+ 00028739  0x00007c02 setarg  0x00000005 
+ 00028740  0x00007c03 store  0x00000001 , 0x0000051b 
+ 00028741  0x00007c04 branch  0x00007048 
+ 00028742  0x00007c06 setarg  0x00000007 
+ 00028743  0x00007c07 store  0x00000001 , 0x0000051b 
+ 00028744  0x00007c09 call  0x000052d0 
+ 00028745  0x00007c0c fetch  0x00000001 , 0x0000051b 
+ 00028746  0x00007c0d copy  0x0000003f , 0x00000012 
+ 00028747  0x00007c0e istore  0x00000001 , 0x00000005 
+ 00028748  0x00007c0f fetch  0x00000002 , 0x0000051c 
+ 00028749  0x00007c10 istore  0x00000002 , 0x00000005 
+ 00028750  0x00007c11 setarg  0x00000500 
+ 00028751  0x00007c12 istore  0x00000002 , 0x00000005 
+ 00028752  0x00007c13 compare  0x00000005 , 0x00000012 , 0x000000ff 
+ 00028753  0x00007c14 branch  0x00007057 , 0x00000001 
+ 00028754  0x00007c15 compare  0x00000007 , 0x00000012 , 0x000000ff 
+ 00028755  0x00007c16 branch  0x00007057 , 0x00000001 
+ 00028756  0x00007c17 setarg  0x00000000 
+ 00028757  0x00007c18 istore  0x00000005 , 0x00000005 
+ 00028758  0x00007c19 branch  0x00007059 
+ 00028759  0x00007c1c setarg  0x00350200 
+ 00028760  0x00007c1d istore  0x00000005 , 0x00000005 
+ 00028761  0x00007c1f jam  0x0000000a , 0x00000275 
+ 00028762  0x00007c20 rtn 
+ 00028763  0x00007c24 call  0x00007ea2 
+ 00028764  0x00007c25 call  0x00007ea5 
+ 00028765  0x00007c26 call  0x00007062 
+ 00028766  0x00007c27 call  0x00007e9c 
+ 00028767  0x00007c28 call  0x00007e9f 
+ 00028768  0x00007c29 copy  0x00000002 , 0x0000003f 
+ 00028769  0x00007c2a rtn 
+ 00028770  0x00007c2e ifetch  0x00000001 , 0x00000006 
+ 00028771  0x00007c2f and  0x0000003f , 0x00000007 , 0x00000039 
+ 00028772  0x00007c30 rshift3  0x0000003f , 0x0000003f 
+ 00028773  0x00007c31 bne  0x00000000 , 0x0000706c 
+ 00028774  0x00007c33 force  0x00000001 , 0x0000003f 
+ 00028775  0x00007c34 force  0x00000001 , 0x00000002 
+ 00028776  0x00007c35 rtn 
+ 00028777  0x00007c38 call  0x00007e76 
+ 00028778  0x00007c39 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00028779  0x00007c3a rtn 
+ 00028780  0x00007c3c deposit  0x00000039 
+ 00028781  0x00007c3d sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00028782  0x00007c3e branch  0x00007069 , 0x00000002 
+ 00028783  0x00007c3f beq  0x00000005 , 0x00007073 
+ 00028784  0x00007c40 beq  0x00000006 , 0x00007076 
+ 00028785  0x00007c41 beq  0x00000007 , 0x0000707a 
+ 00028786  0x00007c42 rtn 
+ 00028787  0x00007c45 ifetch  0x00000001 , 0x00000006 
+ 00028788  0x00007c46 add  0x0000003f , 0x00000002 , 0x00000002 
+ 00028789  0x00007c47 rtn 
+ 00028790  0x00007c49 ifetch  0x00000002 , 0x00000006 
+ 00028791  0x00007c4a byteswap  0x0000003f , 0x0000003f 
+ 00028792  0x00007c4b add  0x0000003f , 0x00000003 , 0x00000002 
+ 00028793  0x00007c4c rtn 
+ 00028794  0x00007c4e ifetch  0x00000002 , 0x00000006 
+ 00028795  0x00007c4f byteswap  0x0000003f , 0x0000003f 
+ 00028796  0x00007c50 ifetcht  0x00000002 , 0x00000006 
+ 00028797  0x00007c51 byteswap  0x00000002 , 0x00000002 
+ 00028798  0x00007c52 lshift16  0x00000002 , 0x00000002 
+ 00028799  0x00007c53 iadd  0x00000002 , 0x0000003f 
+ 00028800  0x00007c54 add  0x0000003f , 0x00000005 , 0x00000002 
+ 00028801  0x00007c55 rtn 
+ 00028802  0x00007c5c bpatchx  0x000000d5 , 0x0000403a 
+ 00028803  0x00007c5d force  0x00000000 , 0x00000007 
+ 00028804  0x00007c5e arg  0x00000000 , 0x00000012 
+ 00028805  0x00007c5f arg  0x0000052a , 0x00000005 
+ 00028806  0x00007c61 ifetch  0x00000002 , 0x0000000b 
+ 00028807  0x00007c62 rtn  0x00000034 
+ 00028808  0x00007c63 call  0x0000708d 
+ 00028809  0x00007c64 copy  0x00000007 , 0x0000003f 
+ 00028810  0x00007c65 rtneq  0x00000007 
+ 00028811  0x00007c66 increase  0x00000002 , 0x0000000b 
+ 00028812  0x00007c67 branch  0x00007086 
+ 00028813  0x00007c6b iforce  0x00000013 
+ 00028814  0x00007c6d fetch  0x00000002 , 0x00004575 
+ 00028815  0x00007c6e iforce  0x00000006 
+ 00028816  0x00007c70 copy  0x00000007 , 0x0000003f 
+ 00028817  0x00007c71 rtneq  0x00000007 
+ 00028818  0x00007c72 disable  0x00000028 
+ 00028819  0x00007c73 ifetch  0x00000001 , 0x00000006 
+ 00028820  0x00007c74 rtn  0x00000034 
+ 00028821  0x00007c75 iforce  0x00000039 
+ 00028822  0x00007c77 ifetch  0x00000002 , 0x00000006 
+ 00028823  0x00007c78 isub  0x00000013 , 0x0000003e 
+ 00028824  0x00007c79 nbranch  0x0000709a , 0x00000005 
+ 00028825  0x00007c7a enable  0x00000028 
+ 00028826  0x00007c7c loop  0x00007096 
+ 00028827  0x00007c7d ifetcht  0x00000004 , 0x00000006 
+ 00028828  0x00007c7e copy  0x00000006 , 0x00000011 
+ 00028829  0x00007c7f nbranch  0x000070ad , 0x00000028 
+ 00028830  0x00007c80 arg  0x0000052a , 0x00000006 
+ 00028831  0x00007c81 arg  0x00000007 , 0x00000039 
+ 00028832  0x00007c83 ifetch  0x00000004 , 0x00000006 
+ 00028833  0x00007c84 branch  0x000070a6 , 0x00000034 
+ 00028834  0x00007c85 isub  0x00000002 , 0x0000003e 
+ 00028835  0x00007c86 branch  0x000070ad , 0x00000005 
+ 00028836  0x00007c87 loop  0x000070a0 
+ 00028837  0x00007c88 rtn 
+ 00028838  0x00007c8a istoret  0x00000004 , 0x00000005 
+ 00028839  0x00007c8b increase  0x00000001 , 0x00000007 
+ 00028840  0x00007c8c copy  0x00000011 , 0x00000006 
+ 00028841  0x00007c8d call  0x0000705b 
+ 00028842  0x00007c8e iadd  0x00000012 , 0x00000012 
+ 00028843  0x00007c8f iadd  0x00000006 , 0x00000006 
+ 00028844  0x00007c90 branch  0x00007090 
+ 00028845  0x00007c92 copy  0x00000011 , 0x00000006 
+ 00028846  0x00007c93 call  0x00007062 
+ 00028847  0x00007c94 iadd  0x00000006 , 0x00000006 
+ 00028848  0x00007c95 branch  0x00007090 
+ 00028849  0x00007c9c bpatchx  0x000000d6 , 0x0000403a 
+ 00028850  0x00007c9d fetch  0x00000002 , 0x00004575 
+ 00028851  0x00007c9e iforce  0x00000006 
+ 00028852  0x00007ca0 ifetch  0x00000001 , 0x00000006 
+ 00028853  0x00007ca1 branch  0x00007fe3 , 0x00000034 
+ 00028854  0x00007ca2 lshift  0x0000003f , 0x0000003f 
+ 00028855  0x00007ca3 iadd  0x00000006 , 0x00000006 
+ 00028856  0x00007ca4 ifetch  0x00000004 , 0x00000006 
+ 00028857  0x00007ca5 isub  0x00000002 , 0x0000003e 
+ 00028858  0x00007ca6 rtn  0x00000005 
+ 00028859  0x00007ca7 deposit  0x00000005 
+ 00028860  0x00007ca8 store  0x00000002 , 0x00000abb 
+ 00028861  0x00007ca9 storet  0x00000008 , 0x00000aa2 
+ 00028862  0x00007caa call  0x00007062 
+ 00028863  0x00007cab iadd  0x00000006 , 0x00000006 
+ 00028864  0x00007cac copy  0x00000006 , 0x0000003f 
+ 00028865  0x00007cad fetcht  0x00000002 , 0x00000abb 
+ 00028866  0x00007cae copy  0x00000002 , 0x00000005 
+ 00028867  0x00007caf fetcht  0x00000008 , 0x00000aa2 
+ 00028868  0x00007cb0 copy  0x0000003f , 0x00000006 
+ 00028869  0x00007cb1 branch  0x000070b4 
+ 00028870  0x00007cb8 bpatchx  0x000000d7 , 0x0000403a 
+ 00028871  0x00007cb9 fetch  0x00000002 , 0x00004575 
+ 00028872  0x00007cba iforce  0x00000006 
+ 00028873  0x00007cbc ifetch  0x00000001 , 0x00000006 
+ 00028874  0x00007cbd branch  0x000070e4 , 0x00000034 
+ 00028875  0x00007cbe iforce  0x00000039 
+ 00028876  0x00007cc0 ifetch  0x00000002 , 0x00000006 
+ 00028877  0x00007cc1 isub  0x00000013 , 0x0000003e 
+ 00028878  0x00007cc2 branch  0x000070d4 , 0x00000005 
+ 00028879  0x00007cc3 loop  0x000070cc 
+ 00028880  0x00007cc4 increase  0x00000004 , 0x00000006 
+ 00028881  0x00007cc5 call  0x00007062 
+ 00028882  0x00007cc6 iadd  0x00000006 , 0x00000006 
+ 00028883  0x00007cc7 branch  0x000070c9 
+ 00028884  0x00007cc9 increase  0xffffffff , 0x00000039 
+ 00028885  0x00007cca lshift  0x00000039 , 0x0000003f 
+ 00028886  0x00007ccb iadd  0x00000006 , 0x00000006 
+ 00028887  0x00007ccc increase  0x00000004 , 0x00000006 
+ 00028888  0x00007ccd call  0x00007062 
+ 00028889  0x00007cce iadd  0x00000006 , 0x0000000b 
+ 00028890  0x00007cd0 increase  0x00000001 , 0x00000006 
+ 00028891  0x00007cd1 ifetch  0x00000002 , 0x00000006 
+ 00028892  0x00007cd2 isub  0x00000012 , 0x0000003e 
+ 00028893  0x00007cd6 branch  0x00007fef , 0x00000005 
+ 00028894  0x00007cd7 call  0x0000705b 
+ 00028895  0x00007cd8 iadd  0x00000006 , 0x00000006 
+ 00028896  0x00007cd9 deposit  0x0000000b 
+ 00028897  0x00007cda isub  0x00000006 , 0x0000003e 
+ 00028898  0x00007cdb branch  0x000070e4 , 0x00000005 
+ 00028899  0x00007cdc branch  0x000070da 
+ 00028900  0x00007cde force  0x00000000 , 0x00000006 
+ 00028901  0x00007cdf force  0x00000000 , 0x0000003f 
+ 00028902  0x00007ce0 rtn 
+ 00028903  0x00007ce7 bpatchx  0x000000d8 , 0x0000403b 
+ 00028904  0x00007ce8 fetch  0x00000002 , 0x00004575 
+ 00028905  0x00007ce9 iforce  0x00000006 
+ 00028906  0x00007ceb ifetch  0x00000001 , 0x00000006 
+ 00028907  0x00007cec branch  0x00007100 , 0x00000034 
+ 00028908  0x00007ced lshift  0x0000003f , 0x0000003f 
+ 00028909  0x00007cee iadd  0x00000006 , 0x00000006 
+ 00028910  0x00007cef ifetch  0x00000004 , 0x00000006 
+ 00028911  0x00007cf0 isub  0x00000002 , 0x0000003e 
+ 00028912  0x00007cf1 branch  0x000070f4 , 0x00000005 
+ 00028913  0x00007cf2 call  0x00007062 
+ 00028914  0x00007cf3 iadd  0x00000006 , 0x00000006 
+ 00028915  0x00007cf4 branch  0x000070ea 
+ 00028916  0x00007cf6 call  0x00007062 
+ 00028917  0x00007cf7 iadd  0x00000006 , 0x0000000b 
+ 00028918  0x00007cf9 increase  0x00000001 , 0x00000006 
+ 00028919  0x00007cfa ifetch  0x00000002 , 0x00000006 
+ 00028920  0x00007cfb isub  0x00000012 , 0x0000003e 
+ 00028921  0x00007cfc rtn  0x00000005 
+ 00028922  0x00007cfd call  0x0000705b 
+ 00028923  0x00007cfe iadd  0x00000006 , 0x00000006 
+ 00028924  0x00007cff deposit  0x0000000b 
+ 00028925  0x00007d00 isub  0x00000006 , 0x0000003e 
+ 00028926  0x00007d01 branch  0x00007100 , 0x00000005 
+ 00028927  0x00007d02 branch  0x000070f6 
+ 00028928  0x00007d04 force  0x00000000 , 0x00000006 
+ 00028929  0x00007d05 rtn 
+ 00028930  0x00007d0a arg  0x00000400 , 0x00000012 
+ 00028931  0x00007d0b call  0x000070f4 
+ 00028932  0x00007d0c arg  0x00000300 , 0x00000012 
+ 00028933  0x00007d0d call  0x0000710d 
+ 00028934  0x00007d0e nrtn  0x00000028 
+ 00028935  0x00007d0f sub  0x00000011 , 0x00000003 , 0x0000003e 
+ 00028936  0x00007d10 branch  0x00007fe9 , 0x00000002 
+ 00028937  0x00007d11 ifetch  0x00000001 , 0x00000006 
+ 00028938  0x00007d12 bne  0x00000008 , 0x00007fe9 
+ 00028939  0x00007d13 ifetch  0x00000001 , 0x00000006 
+ 00028940  0x00007d14 rtn 
+ 00028941  0x00007d1a bpatchx  0x000000d9 , 0x0000403b 
+ 00028942  0x00007d1b call  0x00007062 
+ 00028943  0x00007d1c copy  0x0000003f , 0x00000011 
+ 00028944  0x00007d1e ifetch  0x00000001 , 0x00000006 
+ 00028945  0x00007d1f and  0x0000003f , 0x00000007 , 0x00000039 
+ 00028946  0x00007d20 rshift3  0x0000003f , 0x0000003f 
+ 00028947  0x00007d21 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00028948  0x00007d22 branch  0x00007129 , 0x00000005 
+ 00028949  0x00007d23 copy  0x00000039 , 0x0000003f 
+ 00028950  0x00007d24 beq  0x00000005 , 0x00007120 
+ 00028951  0x00007d25 beq  0x00000006 , 0x00007123 
+ 00028952  0x00007d26 beq  0x00000007 , 0x00007126 
+ 00028953  0x00007d27 increase  0xffffffff , 0x00000006 
+ 00028954  0x00007d28 call  0x00007062 
+ 00028955  0x00007d29 iadd  0x00000006 , 0x00000006 
+ 00028956  0x00007d2a copy  0x00000011 , 0x0000003f 
+ 00028957  0x00007d2b isub  0x00000002 , 0x00000011 
+ 00028958  0x00007d2c branch  0x00007fe9 , 0x00000005 
+ 00028959  0x00007d2d branch  0x00007110 
+ 00028960  0x00007d30 increase  0xfffffffe , 0x00000011 
+ 00028961  0x00007d31 increase  0x00000001 , 0x00000006 
+ 00028962  0x00007d32 branch  0x00007110 
+ 00028963  0x00007d34 increase  0xfffffffd , 0x00000011 
+ 00028964  0x00007d35 increase  0x00000002 , 0x00000006 
+ 00028965  0x00007d36 branch  0x00007110 
+ 00028966  0x00007d38 increase  0xfffffffb , 0x00000011 
+ 00028967  0x00007d39 increase  0x00000004 , 0x00000006 
+ 00028968  0x00007d3a branch  0x00007110 
+ 00028969  0x00007d3d increase  0xffffffff , 0x00000011 
+ 00028970  0x00007d3e copy  0x00000039 , 0x0000003f 
+ 00028971  0x00007d3f beq  0x00000001 , 0x00007132 
+ 00028972  0x00007d40 beq  0x00000002 , 0x00007130 
+ 00028973  0x00007d41 beq  0x00000004 , 0x0000712f 
+ 00028974  0x00007d42 branch  0x00007fe9 
+ 00028975  0x00007d44 increase  0xfffffff4 , 0x00000011 
+ 00028976  0x00007d46 ifetch  0x00000002 , 0x00000006 
+ 00028977  0x00007d47 increase  0xfffffffe , 0x00000011 
+ 00028978  0x00007d49 ifetch  0x00000002 , 0x00000006 
+ 00028979  0x00007d4a isub  0x00000012 , 0x0000003e 
+ 00028980  0x00007d4b branch  0x00007fe7 , 0x00000005 
+ 00028981  0x00007d4c increase  0xfffffffe , 0x00000011 
+ 00028982  0x00007d4d branch  0x00007fe9 , 0x00000005 
+ 00028983  0x00007d4e branch  0x00007110 
+ 00028984  0x00007d8a call  0x000052d0 
+ 00028985  0x00007d8b copy  0x0000003f , 0x00000005 
+ 00028986  0x00007d8c setarg  0x00000006 
+ 00028987  0x00007d8d istore  0x00000001 , 0x00000005 
+ 00028988  0x00007d8e setarg  0x0000006e 
+ 00028989  0x00007d8f istore  0x00000002 , 0x00000005 
+ 00028990  0x00007d90 setarg  0x00000f00 
+ 00028991  0x00007d91 istore  0x00000002 , 0x00000005 
+ 00028992  0x00007d92 setarg  0x001a0535 
+ 00028993  0x00007d93 istore  0x00000003 , 0x00000005 
+ 00028994  0x00007d94 setarg  0x00000111 
+ 00028995  0x00007d95 lshift16  0x0000003f , 0x0000003f 
+ 00028996  0x00007d96 istore  0x00000004 , 0x00000005 
+ 00028997  0x00007d97 setarg  0x00002600 
+ 00028998  0x00007d98 istore  0x00000002 , 0x00000005 
+ 00028999  0x00007d99 setarg  0x00000335 
+ 00029000  0x00007d9a istore  0x00000002 , 0x00000005 
+ 00029001  0x00007d9b setarg  0x00000009 
+ 00029002  0x00007d9c istore  0x00000002 , 0x00000005 
+ 00029003  0x00007d9d setarg  0x00000004 
+ 00029004  0x00007d9e istore  0x00000002 , 0x00000005 
+ 00029005  0x00007d9f jam  0x00000014 , 0x00000275 
+ 00029006  0x00007da0 rtn 
+ 00029007  0x00007da5 bpatchx  0x000000da , 0x0000403b 
+ 00029008  0x00007da6 jam  0x00000050 , 0x000005e5 
+ 00029009  0x00007da7 arg  0x000005e6 , 0x00000005 
+ 00029010  0x00007da8 arg  0x0000443a , 0x00000006 
+ 00029011  0x00007da9 call  0x00007ebf 
+ 00029012  0x00007daa arg  0x000045d2 , 0x00000006 
+ 00029013  0x00007dab call  0x00007ebd 
+ 00029014  0x00007dac arg  0x000009be , 0x00000006 
+ 00029015  0x00007dad call  0x00007ebd 
+ 00029016  0x00007dae call  0x0000720a 
+ 00029017  0x00007daf arg  0x0000042f , 0x00000006 
+ 00029018  0x00007db0 call  0x00007205 
+ 00029019  0x00007db1 call  0x000071d0 
+ 00029020  0x00007db3 arg  0x00000af2 , 0x00000005 
+ 00029021  0x00007db4 call  0x00007201 
+ 00029022  0x00007db5 setarg  0x000f4240 
+ 00029023  0x00007db6 copy  0x0000003f , 0x00000011 
+ 00029024  0x00007db7 fetch  0x00000004 , 0x00000af2 
+ 00029025  0x00007db8 idiv  0x00000011 
+ 00029026  0x00007db9 call  0x00007f86 
+ 00029027  0x00007dba remainder  0x0000003f 
+ 00029028  0x00007dbb store  0x00000004 , 0x000009ba 
+ 00029029  0x00007dbd rtn 
+ 00029030  0x00007dc0 jam  0x00000041 , 0x000005e5 
+ 00029031  0x00007dc1 arg  0x000005e6 , 0x00000005 
+ 00029032  0x00007dc2 call  0x000071b5 
+ 00029033  0x00007dc3 call  0x000071b0 
+ 00029034  0x00007dc4 fetch  0x00000003 , 0x00004454 
+ 00029035  0x00007dc5 istore  0x00000003 , 0x00000005 
+ 00029036  0x00007dc8 call  0x00007176 
+ 00029037  0x00007dca arg  0x0000042f , 0x00000006 
+ 00029038  0x00007dcb call  0x00007ebf 
+ 00029039  0x00007dcc arg  0x0000443a , 0x00000006 
+ 00029040  0x00007dcd call  0x00007ebf 
+ 00029041  0x00007dce call  0x0000720a 
+ 00029042  0x00007dcf arg  0x00000b12 , 0x00000006 
+ 00029043  0x00007dd0 arg  0x00000ac2 , 0x00000005 
+ 00029044  0x00007dd1 call  0x00007ebf 
+ 00029045  0x00007dd3 branch  0x000071d0 
+ 00029046  0x00007dd8 fetch  0x00000004 , 0x000044c7 
+ 00029047  0x00007dd9 istore  0x00000004 , 0x00000005 
+ 00029048  0x00007dda call  0x00007ecd 
+ 00029049  0x00007ddb branch  0x00007eca 
+ 00029050  0x00007dde bpatchx  0x000000db , 0x0000403b 
+ 00029051  0x00007ddf jam  0x00000041 , 0x000005e5 
+ 00029052  0x00007de0 arg  0x000005e6 , 0x00000005 
+ 00029053  0x00007de1 call  0x000071b0 
+ 00029054  0x00007de2 call  0x000071b5 
+ 00029055  0x00007de3 fetch  0x00000003 , 0x0000444d 
+ 00029056  0x00007de4 istore  0x00000003 , 0x00000005 
+ 00029057  0x00007de7 call  0x00007176 
+ 00029058  0x00007de8 arg  0x0000443a , 0x00000006 
+ 00029059  0x00007de9 call  0x00007ebf 
+ 00029060  0x00007dea arg  0x0000042f , 0x00000006 
+ 00029061  0x00007deb call  0x00007ebf 
+ 00029062  0x00007dec call  0x0000720a 
+ 00029063  0x00007ded arg  0x00000b12 , 0x00000006 
+ 00029064  0x00007dee arg  0x00000ac2 , 0x00000005 
+ 00029065  0x00007def call  0x00007ebf 
+ 00029066  0x00007df1 call  0x000071d0 
+ 00029067  0x00007df2 arg  0x00000af2 , 0x00000005 
+ 00029068  0x00007df3 branch  0x00007201 
+ 00029069  0x00007df6 jam  0x00000020 , 0x000005e5 
+ 00029070  0x00007df7 arg  0x000009fe , 0x00000006 
+ 00029071  0x00007df8 arg  0x000005e6 , 0x00000005 
+ 00029072  0x00007df9 call  0x00007ebd 
+ 00029073  0x00007dfa call  0x0000720a 
+ 00029074  0x00007dfb arg  0x0000099e , 0x00000006 
+ 00029075  0x00007dfc call  0x00007205 
+ 00029076  0x00007dfd call  0x000071d0 
+ 00029077  0x00007dfe arg  0x00000ac2 , 0x00000005 
+ 00029078  0x00007dff call  0x00007497 
+ 00029079  0x00007e00 arg  0x00000001 , 0x00000002 
+ 00029080  0x00007e01 call  0x0000719f 
+ 00029081  0x00007e02 arg  0x00004419 , 0x00000005 
+ 00029082  0x00007e03 call  0x00007201 
+ 00029083  0x00007e04 arg  0x00000000 , 0x00000002 
+ 00029084  0x00007e05 call  0x0000719f 
+ 00029085  0x00007e06 arg  0x00000b12 , 0x00000005 
+ 00029086  0x00007e08 branch  0x00007497 
+ 00029087  0x00007e0c bpatchx  0x000000dc , 0x0000403b 
+ 00029088  0x00007e0d jam  0x00000035 , 0x000005e5 
+ 00029089  0x00007e0e setarg  0x00000100 
+ 00029090  0x00007e0f store  0x00000002 , 0x000005e6 
+ 00029091  0x00007e10 call  0x000071b0 
+ 00029092  0x00007e11 call  0x000071b5 
+ 00029093  0x00007e12 arg  0x0000443a , 0x00000006 
+ 00029094  0x00007e13 call  0x00007ebf 
+ 00029095  0x00007e14 arg  0x0000042f , 0x00000006 
+ 00029096  0x00007e15 call  0x00007ebf 
+ 00029097  0x00007e17 setarg  0x00006c65 
+ 00029098  0x00007e18 istore  0x00000002 , 0x00000005 
+ 00029099  0x00007e19 setarg  0x00006274 
+ 00029100  0x00007e1a istore  0x00000002 , 0x00000005 
+ 00029101  0x00007e1b istoret  0x00000001 , 0x00000005 
+ 00029102  0x00007e1c call  0x0000720a 
+ 00029103  0x00007e1d branch  0x000071d0 
+ 00029104  0x00007e20 fetch  0x00000006 , 0x000044a0 
+ 00029105  0x00007e21 istore  0x00000006 , 0x00000005 
+ 00029106  0x00007e22 fetch  0x00000001 , 0x00004495 
+ 00029107  0x00007e23 istore  0x00000001 , 0x00000005 
+ 00029108  0x00007e24 rtn 
+ 00029109  0x00007e27 fetch  0x00000006 , 0x0000044f 
+ 00029110  0x00007e28 istore  0x00000006 , 0x00000005 
+ 00029111  0x00007e2d fetch  0x00000001 , 0x0000448e 
+ 00029112  0x00007e2e istore  0x00000001 , 0x00000005 
+ 00029113  0x00007e2f rtn 
+ 00029114  0x00007e32 jam  0x00000041 , 0x000005e5 
+ 00029115  0x00007e33 fetch  0x00000001 , 0x00004664 
+ 00029116  0x00007e34 store  0x00000001 , 0x000005e6 
+ 00029117  0x00007e35 arg  0x000045d2 , 0x00000006 
+ 00029118  0x00007e36 call  0x00007ebd 
+ 00029119  0x00007e37 arg  0x000009be , 0x00000006 
+ 00029120  0x00007e38 call  0x00007ebd 
+ 00029121  0x00007e39 call  0x0000720a 
+ 00029122  0x00007e3a arg  0x0000042f , 0x00000006 
+ 00029123  0x00007e3b call  0x00007205 
+ 00029124  0x00007e3c branch  0x000071d0 
+ 00029125  0x00007e40 jam  0x00000041 , 0x000005e5 
+ 00029126  0x00007e41 fetch  0x00000001 , 0x00004664 
+ 00029127  0x00007e42 store  0x00000001 , 0x000005e6 
+ 00029128  0x00007e43 arg  0x000009be , 0x00000006 
+ 00029129  0x00007e44 call  0x00007ebd 
+ 00029130  0x00007e45 arg  0x000045d2 , 0x00000006 
+ 00029131  0x00007e46 call  0x00007ebd 
+ 00029132  0x00007e47 call  0x0000720a 
+ 00029133  0x00007e48 arg  0x0000443a , 0x00000006 
+ 00029134  0x00007e49 call  0x00007205 
+ 00029135  0x00007e4a branch  0x000071d0 
+ 00029136  0x00007e4d bpatchx  0x000000dd , 0x0000403b 
+ 00029137  0x00007e4e call  0x0000721f 
+ 00029138  0x00007e52 fetch  0x00000001 , 0x000005e5 
+ 00029139  0x00007e53 copy  0x0000003f , 0x00000002 
+ 00029140  0x00007e55 increase  0x0000000f , 0x0000003f 
+ 00029141  0x00007e56 rshift4  0x0000003f , 0x0000003f 
+ 00029142  0x00007e57 copy  0x0000003f , 0x00000012 
+ 00029143  0x00007e58 branch  0x000071e2 , 0x00000034 
+ 00029144  0x00007e59 and  0x00000002 , 0x0000000f , 0x0000003f 
+ 00029145  0x00007e5a nbranch  0x000071e5 , 0x00000034 
+ 00029146  0x00007e5c arg  0x00000ad2 , 0x00000013 
+ 00029147  0x00007e5d arg  0x000005e6 , 0x0000003f 
+ 00029148  0x00007e5e increase  0xfffffff0 , 0x0000003f 
+ 00029149  0x00007e61 iadd  0x00000002 , 0x00000011 
+ 00029150  0x00007e62 arg  0x00000b02 , 0x00000005 
+ 00029151  0x00007e63 arg  0x00000004 , 0x00000039 
+ 00029152  0x00007e64 call  0x00007edd 
+ 00029153  0x00007e68 branch  0x000071f0 
+ 00029154  0x00007e6b arg  0x00000001 , 0x00000012 
+ 00029155  0x00007e6c arg  0x00000000 , 0x00000011 
+ 00029156  0x00007e6e branch  0x000071e6 
+ 00029157  0x00007e73 and  0x00000002 , 0x0000000f , 0x00000011 
+ 00029158  0x00007e75 arg  0x000005e6 , 0x0000003f 
+ 00029159  0x00007e76 iadd  0x00000002 , 0x0000003f 
+ 00029160  0x00007e77 isub  0x00000011 , 0x00000006 
+ 00029161  0x00007e79 arg  0x00000af2 , 0x00000005 
+ 00029162  0x00007e7a call  0x00007245 
+ 00029163  0x00007e7c arg  0x00000ae2 , 0x00000013 
+ 00029164  0x00007e7d arg  0x00000af2 , 0x00000011 
+ 00029165  0x00007e7e arg  0x00000b02 , 0x00000005 
+ 00029166  0x00007e7f arg  0x00000004 , 0x00000039 
+ 00029167  0x00007e80 call  0x00007edd 
+ 00029168  0x00007e8c call  0x00007491 
+ 00029169  0x00007e8d call  0x00007428 
+ 00029170  0x00007e90 arg  0x000005e6 , 0x00000006 
+ 00029171  0x00007e93 increase  0xffffffff , 0x00000012 
+ 00029172  0x00007e94 deposit  0x00000012 
+ 00029173  0x00007e95 branch  0x000071f9 , 0x00000034 
+ 00029174  0x00007e96 call  0x00007486 
+ 00029175  0x00007e97 call  0x00007422 
+ 00029176  0x00007e98 branch  0x000071f3 
+ 00029177  0x00007e9b arg  0x00000af2 , 0x00000005 
+ 00029178  0x00007e9c call  0x00007497 
+ 00029179  0x00007e9d arg  0x00000b02 , 0x00000006 
+ 00029180  0x00007e9e call  0x00007486 
+ 00029181  0x00007e9f call  0x00007428 
+ 00029182  0x00007ea0 arg  0x00000af2 , 0x00000006 
+ 00029183  0x00007ea1 call  0x00007486 
+ 00029184  0x00007ea2 branch  0x00007422 
+ 00029185  0x00007ea8 copy  0x00000005 , 0x00000011 
+ 00029186  0x00007ea9 call  0x00007497 
+ 00029187  0x00007eab arg  0x00000010 , 0x00000039 
+ 00029188  0x00007eac branch  0x00007ee5 
+ 00029189  0x00007eaf arg  0x00000ac2 , 0x00000005 
+ 00029190  0x00007eb0 call  0x00007ebf 
+ 00029191  0x00007eb2 arg  0x00000010 , 0x00000039 
+ 00029192  0x00007eb3 arg  0x00000ac2 , 0x00000011 
+ 00029193  0x00007eb4 branch  0x00007ee5 
+ 00029194  0x00007eb7 fetch  0x00000001 , 0x000005e5 
+ 00029195  0x00007eb8 copy  0x0000003f , 0x00000039 
+ 00029196  0x00007eb9 arg  0x000005e6 , 0x00000011 
+ 00029197  0x00007eba branch  0x00007ee5 
+ 00029198  0x00007ebd ifetch  0x00000001 , 0x00000011 
+ 00029199  0x00007ebe lshift  0x0000003f , 0x0000003f 
+ 00029200  0x00007ebf isolate1  0x00000000 , 0x00000013 
+ 00029201  0x00007ec0 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00029202  0x00007ec1 isolate1  0x00000008 , 0x0000003f 
+ 00029203  0x00007ec2 setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00029204  0x00007ec3 istore  0x00000001 , 0x00000011 
+ 00029205  0x00007ec4 increase  0xffffffff , 0x00000011 
+ 00029206  0x00007ec5 loop  0x0000720e 
+ 00029207  0x00007ec6 rtn 
+ 00029208  0x00007ec9 arg  0x00000ad2 , 0x00000011 
+ 00029209  0x00007ecb increase  0x0000000f , 0x00000011 
+ 00029210  0x00007ecc force  0x00000010 , 0x00000039 
+ 00029211  0x00007ecd force  0x00000000 , 0x00000013 
+ 00029212  0x00007ece branch  0x0000720e 
+ 00029213  0x00007ed1 arg  0x00000ae2 , 0x00000011 
+ 00029214  0x00007ed2 branch  0x00007219 
+ 00029215  0x00007ed6 arg  0x00000ac2 , 0x00000006 
+ 00029216  0x00007ed7 call  0x00007484 
+ 00029217  0x00007eda force  0x00000008 , 0x00000038 
+ 00029218  0x00007edb call  0x00007492 
+ 00029219  0x00007edc call  0x00007491 
+ 00029220  0x00007edd call  0x0000741f 
+ 00029221  0x00007ee2 arg  0x00000ad2 , 0x00000005 
+ 00029222  0x00007ee3 call  0x00007497 
+ 00029223  0x00007ee5 bpatchx  0x000000de , 0x0000403b 
+ 00029224  0x00007ee6 fetch  0x00000001 , 0x00000ad2 
+ 00029225  0x00007ee7 isolate1  0x00000007 , 0x0000003f 
+ 00029226  0x00007ee8 nbranch  0x00007230 , 0x00000001 
+ 00029227  0x00007ee9 call  0x00007218 
+ 00029228  0x00007eec arg  0x00000ad2 , 0x00000013 
+ 00029229  0x00007eee arg  0x00000ad2 , 0x00000005 
+ 00029230  0x00007ef1 call  0x0000723a 
+ 00029231  0x00007ef2 branch  0x00007231 
+ 00029232  0x00007ef4 call  0x00007218 
+ 00029233  0x00007ef7 arg  0x00000ad2 , 0x00000006 
+ 00029234  0x00007ef8 arg  0x00000ae2 , 0x00000005 
+ 00029235  0x00007ef9 call  0x00007ebf 
+ 00029236  0x00007efa fetch  0x00000001 , 0x00000ae2 
+ 00029237  0x00007efb isolate1  0x00000007 , 0x0000003f 
+ 00029238  0x00007efc nbranch  0x0000721d , 0x00000001 
+ 00029239  0x00007efd call  0x0000721d 
+ 00029240  0x00007eff arg  0x00000ae2 , 0x00000013 
+ 00029241  0x00007f01 arg  0x00000ae2 , 0x00000005 
+ 00029242  0x00007f08 arg  0x00000003 , 0x00000039 
+ 00029243  0x00007f0a arg  0x00000000 , 0x00000002 
+ 00029244  0x00007f0b call  0x00007241 
+ 00029245  0x00007f0c increase  0x00000004 , 0x00000013 
+ 00029246  0x00007f0d loop  0x0000723b 
+ 00029247  0x00007f0e arg  0x00008700 , 0x00000002 
+ 00029248  0x00007f0f lshift16  0x00000002 , 0x00000002 
+ 00029249  0x00007f11 ifetch  0x00000004 , 0x00000013 
+ 00029250  0x00007f12 ixor  0x00000002 , 0x0000003f 
+ 00029251  0x00007f13 istore  0x00000004 , 0x00000005 
+ 00029252  0x00007f14 rtn 
+ 00029253  0x00007f1b bpatchx  0x000000df , 0x0000403b 
+ 00029254  0x00007f1c arg  0x00000010 , 0x00000039 
+ 00029255  0x00007f1d arg  0x00000000 , 0x0000003f 
+ 00029256  0x00007f1f isub  0x00000011 , 0x0000003e 
+ 00029257  0x00007f20 branch  0x00007250 , 0x00000005 
+ 00029258  0x00007f21 branch  0x00007253 , 0x00000002 
+ 00029259  0x00007f22 ifetcht  0x00000001 , 0x00000006 
+ 00029260  0x00007f23 istoret  0x00000001 , 0x00000005 
+ 00029261  0x00007f25 increase  0x00000001 , 0x0000003f 
+ 00029262  0x00007f26 loop  0x00007248 
+ 00029263  0x00007f27 rtn 
+ 00029264  0x00007f29 arg  0x00000080 , 0x00000002 
+ 00029265  0x00007f2b istoret  0x00000001 , 0x00000005 
+ 00029266  0x00007f2c branch  0x0000724d 
+ 00029267  0x00007f2f arg  0x00000000 , 0x00000002 
+ 00029268  0x00007f30 branch  0x00007251 
+ 00029269  0x00007f34 call  0x00007268 
+ 00029270  0x00007f35 arg  0x00000592 , 0x00000006 
+ 00029271  0x00007f36 arg  0x00000582 , 0x00000005 
+ 00029272  0x00007f37 branch  0x00007ebf 
+ 00029273  0x00007f3b disable  0x00000028 
+ 00029274  0x00007f3c call  0x0000735f 
+ 00029275  0x00007f3d arg  0x00000562 , 0x00000006 
+ 00029276  0x00007f3e arg  0x000005a2 , 0x00000005 
+ 00029277  0x00007f3f force  0x0000000f , 0x00000039 
+ 00029278  0x00007f40 call  0x00007f01 
+ 00029279  0x00007f41 ifetch  0x00000001 , 0x00000006 
+ 00029280  0x00007f42 xor_into  0x00000006 , 0x0000003f 
+ 00029281  0x00007f43 istore  0x00000001 , 0x00000005 
+ 00029282  0x00007f44 setarg  0x000005b2 
+ 00029283  0x00007f45 store  0x00000002 , 0x000005d6 
+ 00029284  0x00007f46 setarg  0x000005a2 
+ 00029285  0x00007f47 store  0x00000002 , 0x000005d4 
+ 00029286  0x00007f48 set1  0x00000012 , 0x00000000 
+ 00029287  0x00007f49 branch  0x000072a8 
+ 00029288  0x00007f4e fetcht  0x00000001 , 0x00004689 
+ 00029289  0x00007f4f force  0x00000010 , 0x00000012 
+ 00029290  0x00007f50 add  0x00000002 , 0x00000006 , 0x00000013 
+ 00029291  0x00007f51 sub  0x00000013 , 0x00000010 , 0x0000003e 
+ 00029292  0x00007f52 branch  0x0000726e , 0x00000002 
+ 00029293  0x00007f53 force  0x00000010 , 0x00000013 
+ 00029294  0x00007f55 arg  0x000005a2 , 0x00000005 
+ 00029295  0x00007f57 arg  0x0000468a , 0x00000006 
+ 00029296  0x00007f58 copy  0x00000002 , 0x00000039 
+ 00029297  0x00007f59 disable  0x00000028 
+ 00029298  0x00007f5b ifetch  0x00000001 , 0x00000006 
+ 00029299  0x00007f5c istore  0x00000001 , 0x00000005 
+ 00029300  0x00007f5d increase  0xffffffff , 0x00000012 
+ 00029301  0x00007f5e branch  0x0000727c , 0x00000005 
+ 00029302  0x00007f5f loop  0x00007272 
+ 00029303  0x00007f60 branch  0x0000726f , 0x00000028 
+ 00029304  0x00007f61 enable  0x00000028 
+ 00029305  0x00007f62 force  0x00000006 , 0x00000039 
+ 00029306  0x00007f63 copy  0x00000011 , 0x00000006 
+ 00029307  0x00007f64 branch  0x00007272 
+ 00029308  0x00007f66 arg  0x00000562 , 0x00000006 
+ 00029309  0x00007f67 arg  0x000005b2 , 0x00000005 
+ 00029310  0x00007f68 call  0x00007ebf 
+ 00029311  0x00007f69 fetch  0x00000001 , 0x000005c1 
+ 00029312  0x00007f6a ixor  0x00000013 , 0x0000003f 
+ 00029313  0x00007f6b store  0x00000001 , 0x000005c1 
+ 00029314  0x00007f6c setarg  0x000005b2 
+ 00029315  0x00007f6d store  0x00000002 , 0x000005d6 
+ 00029316  0x00007f6e setarg  0x000005a2 
+ 00029317  0x00007f6f store  0x00000002 , 0x000005d4 
+ 00029318  0x00007f70 set1  0x00000012 , 0x00000000 
+ 00029319  0x00007f71 branch  0x000072a8 
+ 00029320  0x00007f77 disable  0x00000028 
+ 00029321  0x00007f78 call  0x0000735f 
+ 00029322  0x00007f79 branch  0x00007292 
+ 00029323  0x00007f7c arg  0x00000056 , 0x00000011 
+ 00029324  0x00007f7d enable  0x00000028 
+ 00029325  0x00007f7e call  0x0000735f 
+ 00029326  0x00007f7f call  0x00007292 
+ 00029327  0x00007f80 arg  0x00000592 , 0x00000006 
+ 00029328  0x00007f81 arg  0x00000062 , 0x00000005 
+ 00029329  0x00007f82 branch  0x00007ebf 
+ 00029330  0x00007f86 setarg  0x00000562 
+ 00029331  0x00007f87 store  0x00000002 , 0x000005d6 
+ 00029332  0x00007f88 setarg  0x000041be 
+ 00029333  0x00007f89 store  0x00000002 , 0x000005d4 
+ 00029334  0x00007f8a set0  0x00000012 , 0x00000000 
+ 00029335  0x00007f8b call  0x000072a8 
+ 00029336  0x00007f8c arg  0x00000592 , 0x00000011 
+ 00029337  0x00007f8d arg  0x00000562 , 0x00000012 
+ 00029338  0x00007f8e arg  0x000005a2 , 0x00000005 
+ 00029339  0x00007f8f call  0x00007352 
+ 00029340  0x00007f90 arg  0x000005a2 , 0x00000011 
+ 00029341  0x00007f91 arg  0x000005b2 , 0x00000012 
+ 00029342  0x00007f92 copy  0x00000012 , 0x00000005 
+ 00029343  0x00007f93 enable  0x00000028 
+ 00029344  0x00007f94 call  0x00007350 
+ 00029345  0x00007f95 call  0x0000736a 
+ 00029346  0x00007f96 setarg  0x000005b2 
+ 00029347  0x00007f97 store  0x00000002 , 0x000005d6 
+ 00029348  0x00007f98 setarg  0x000005a2 
+ 00029349  0x00007f99 store  0x00000002 , 0x000005d4 
+ 00029350  0x00007f9a set1  0x00000012 , 0x00000000 
+ 00029351  0x00007f9b branch  0x000072a8 
+ 00029352  0x00007fa0 jam  0x00000000 , 0x000005d8 
+ 00029353  0x00007fa1 fetch  0x00000002 , 0x000005d4 
+ 00029354  0x00007fa2 iforce  0x00000006 
+ 00029355  0x00007fa3 arg  0x000005c2 , 0x00000005 
+ 00029356  0x00007fa4 call  0x00007ebf 
+ 00029357  0x00007fa5 fetch  0x00000002 , 0x000005d6 
+ 00029358  0x00007fa6 iforce  0x00000006 
+ 00029359  0x00007fa7 arg  0x00000592 , 0x00000005 
+ 00029360  0x00007fa8 call  0x00007ebf 
+ 00029361  0x00007fab call  0x000072cf 
+ 00029362  0x00007fac disable  0x00000028 
+ 00029363  0x00007fad bmark0  0x00000012 , 0x000072b9 
+ 00029364  0x00007fae fetch  0x00000001 , 0x000005d8 
+ 00029365  0x00007faf bne  0x00000004 , 0x000072b9 
+ 00029366  0x00007fb0 fetch  0x00000002 , 0x000005d6 
+ 00029367  0x00007fb1 iforce  0x00000012 
+ 00029368  0x00007fb2 call  0x00007301 
+ 00029369  0x00007fb4 call  0x00007300 
+ 00029370  0x00007fb5 call  0x00007313 
+ 00029371  0x00007fb6 fetch  0x00000001 , 0x000005d8 
+ 00029372  0x00007fb7 increase  0x00000001 , 0x0000003f 
+ 00029373  0x00007fb8 store  0x00000001 , 0x000005d8 
+ 00029374  0x00007fba call  0x000072cf 
+ 00029375  0x00007fbb enable  0x00000028 
+ 00029376  0x00007fbc call  0x00007300 
+ 00029377  0x00007fbd call  0x00007322 
+ 00029378  0x00007fbe call  0x00007331 
+ 00029379  0x00007fbf call  0x00007322 
+ 00029380  0x00007fc0 call  0x00007331 
+ 00029381  0x00007fc1 call  0x00007322 
+ 00029382  0x00007fc2 call  0x00007331 
+ 00029383  0x00007fc3 call  0x00007322 
+ 00029384  0x00007fc4 fetch  0x00000001 , 0x000005d8 
+ 00029385  0x00007fc5 increase  0x00000001 , 0x0000003f 
+ 00029386  0x00007fc6 store  0x00000001 , 0x000005d8 
+ 00029387  0x00007fc7 bne  0x00000010 , 0x000072b1 
+ 00029388  0x00007fc8 call  0x000072cf 
+ 00029389  0x00007fc9 disable  0x00000028 
+ 00029390  0x00007fca branch  0x00007300 
+ 00029391  0x00007fcf fetch  0x00000001 , 0x000005d8 
+ 00029392  0x00007fd0 arg  0x000005c2 , 0x00000006 
+ 00029393  0x00007fd1 branch  0x000072f6 , 0x00000034 
+ 00029394  0x00007fd2 iforce  0x00000012 
+ 00029395  0x00007fd3 force  0x00000011 , 0x00000039 
+ 00029396  0x00007fd4 copy  0x00000006 , 0x00000005 
+ 00029397  0x00007fd6 ifetch  0x00000001 , 0x00000006 
+ 00029398  0x00007fd7 lshift3  0x0000003f , 0x00000002 
+ 00029399  0x00007fd8 rshift2  0x0000003f , 0x0000003f 
+ 00029400  0x00007fd9 rshift3  0x0000003f , 0x0000003f 
+ 00029401  0x00007fda ior  0x00000002 , 0x0000003f 
+ 00029402  0x00007fdb istore  0x00000001 , 0x00000005 
+ 00029403  0x00007fdc loop  0x000072d5 
+ 00029404  0x00007fdd setarg  0x000005c2 
+ 00029405  0x00007fde iadd  0x00000012 , 0x00000006 
+ 00029406  0x00007fdf force  0x00000010 , 0x00000039 
+ 00029407  0x00007fe0 arg  0x00000572 , 0x00000005 
+ 00029408  0x00007fe2 ifetch  0x00000001 , 0x00000006 
+ 00029409  0x00007fe3 istore  0x00000001 , 0x00000005 
+ 00029410  0x00007fe4 compare  0x000005d3 , 0x00000006 , 0x000000ff 
+ 00029411  0x00007fe5 nbranch  0x000072e5 , 0x00000001 
+ 00029412  0x00007fe6 increase  0xffffffef , 0x00000006 
+ 00029413  0x00007fe8 loop  0x000072e0 
+ 00029414  0x00007fe9 force  0x00000000 , 0x00000011 
+ 00029415  0x00007fea add  0x00000012 , 0xffffffff , 0x00000013 
+ 00029416  0x00007feb lshift2  0x00000013 , 0x00000013 
+ 00029417  0x00007fec lshift2  0x00000013 , 0x00000013 
+ 00029418  0x00007fed call  0x000074b9 
+ 00029419  0x00007fee setarg  0x00008400 
+ 00029420  0x00007fef iadd  0x00000013 , 0x00000013 
+ 00029421  0x00007ff0 arg  0x00000572 , 0x00000005 
+ 00029422  0x00007ff1 force  0x00000010 , 0x00000039 
+ 00029423  0x00007ff3 ifetcht  0x00000001 , 0x00000013 
+ 00029424  0x00007ff4 ifetch  0x00000001 , 0x00000005 
+ 00029425  0x00007ff5 iadd  0x00000002 , 0x0000003f 
+ 00029426  0x00007ff6 istore  0x00000001 , 0x00000005 
+ 00029427  0x00007ff7 increase  0x00000001 , 0x00000013 
+ 00029428  0x00007ff8 loop  0x000072ef 
+ 00029429  0x00007ff9 branch  0x000074bd 
+ 00029430  0x00007ffc force  0x00000010 , 0x00000039 
+ 00029431  0x00007ffd force  0x00000000 , 0x00000002 
+ 00029432  0x00007fff ifetch  0x00000001 , 0x00000006 
+ 00029433  0x00008000 ixor  0x00000002 , 0x00000002 
+ 00029434  0x00008001 loop  0x000072f8 
+ 00029435  0x00008002 deposit  0x00000002 
+ 00029436  0x00008003 istore  0x00000001 , 0x00000006 
+ 00029437  0x00008004 arg  0x000005c2 , 0x00000006 
+ 00029438  0x00008005 arg  0x00000572 , 0x00000005 
+ 00029439  0x00008006 branch  0x00007ebf 
+ 00029440  0x00008009 arg  0x00000572 , 0x00000012 
+ 00029441  0x0000800b force  0x00000010 , 0x00000039 
+ 00029442  0x0000800c arg  0x00000592 , 0x00000011 
+ 00029443  0x0000800d copy  0x00000011 , 0x00000005 
+ 00029444  0x0000800f ifetcht  0x00000001 , 0x00000011 
+ 00029445  0x00008010 ifetch  0x00000001 , 0x00000012 
+ 00029446  0x00008011 ixor  0x00000002 , 0x00000030 
+ 00029447  0x00008012 and  0x00000039 , 0x00000003 , 0x00000013 
+ 00029448  0x00008013 nbranch  0x0000730a , 0x00000028 
+ 00029449  0x00008014 xor_into  0x00000003 , 0x00000013 
+ 00029450  0x00008016 sub  0x00000013 , 0x00000001 , 0x00000013 
+ 00029451  0x00008017 branch  0x0000730d , 0x00000002 
+ 00029452  0x00008018 iadd  0x00000002 , 0x00000030 
+ 00029453  0x0000801a deposit  0x00000030 
+ 00029454  0x0000801b istore  0x00000001 , 0x00000005 
+ 00029455  0x0000801c increase  0x00000001 , 0x00000011 
+ 00029456  0x0000801d increase  0x00000001 , 0x00000012 
+ 00029457  0x0000801e loop  0x00007304 
+ 00029458  0x0000801f rtn 
+ 00029459  0x00008022 call  0x000074b9 
+ 00029460  0x00008023 force  0x00000010 , 0x00000039 
+ 00029461  0x00008024 arg  0x00000592 , 0x00000011 
+ 00029462  0x00008026 ifetch  0x00000001 , 0x00000011 
+ 00029463  0x00008027 arg  0x00008500 , 0x00000006 
+ 00029464  0x00008028 and  0x00000039 , 0x00000003 , 0x00000013 
+ 00029465  0x00008029 sub  0x00000013 , 0x00000001 , 0x0000003e 
+ 00029466  0x0000802a branch  0x0000731c , 0x00000002 
+ 00029467  0x0000802b arg  0x00008600 , 0x00000006 
+ 00029468  0x0000802d iadd  0x00000006 , 0x00000006 
+ 00029469  0x0000802e ifetch  0x00000001 , 0x00000006 
+ 00029470  0x0000802f istore  0x00000001 , 0x00000011 
+ 00029471  0x00008030 increase  0x00000001 , 0x00000011 
+ 00029472  0x00008031 loop  0x00007316 
+ 00029473  0x00008032 branch  0x000074bd 
+ 00029474  0x00008035 force  0x00000008 , 0x00000039 
+ 00029475  0x00008036 arg  0x00000592 , 0x00000006 
+ 00029476  0x00008037 copy  0x00000006 , 0x00000005 
+ 00029477  0x00008039 ifetch  0x00000001 , 0x00000006 
+ 00029478  0x0000803a iforce  0x00000011 
+ 00029479  0x0000803b ifetch  0x00000001 , 0x00000006 
+ 00029480  0x0000803c iforce  0x00000012 
+ 00029481  0x0000803d lshift  0x00000011 , 0x0000003f 
+ 00029482  0x0000803e iadd  0x00000012 , 0x0000003f 
+ 00029483  0x0000803f istore  0x00000001 , 0x00000005 
+ 00029484  0x00008040 deposit  0x00000011 
+ 00029485  0x00008041 iadd  0x00000012 , 0x0000003f 
+ 00029486  0x00008042 istore  0x00000001 , 0x00000005 
+ 00029487  0x00008043 loop  0x00007325 
+ 00029488  0x00008044 rtn 
+ 00029489  0x00008048 setarg  0x008ae42c 
+ 00029490  0x00008049 iforce  0x00000002 
+ 00029491  0x0000804a force  0x00000007 , 0x00000039 
+ 00029492  0x0000804b call  0x00007340 
+ 00029493  0x0000804c setarg  0x000d751b 
+ 00029494  0x0000804d iforce  0x00000002 
+ 00029495  0x0000804e force  0x00000005 , 0x00000039 
+ 00029496  0x0000804f call  0x00007340 
+ 00029497  0x00008050 fetch  0x00000001 , 0x000005a1 
+ 00029498  0x00008051 iforce  0x00000011 
+ 00029499  0x00008052 fetch  0x00000001 , 0x00000595 
+ 00029500  0x00008053 store  0x00000001 , 0x000005a1 
+ 00029501  0x00008054 deposit  0x00000011 
+ 00029502  0x00008055 store  0x00000001 , 0x00000595 
+ 00029503  0x00008056 rtn 
+ 00029504  0x00008059 and  0x00000002 , 0x0000000f , 0x00000012 
+ 00029505  0x0000805b and  0x00000002 , 0x0000000f , 0x0000003f 
+ 00029506  0x0000805c arg  0x00000592 , 0x00000005 
+ 00029507  0x0000805d iadd  0x00000005 , 0x00000005 
+ 00029508  0x0000805e ifetch  0x00000001 , 0x00000005 
+ 00029509  0x0000805f iforce  0x00000013 
+ 00029510  0x00008060 deposit  0x00000011 
+ 00029511  0x00008061 istore  0x00000001 , 0x00000005 
+ 00029512  0x00008062 copy  0x00000013 , 0x00000011 
+ 00029513  0x00008063 rshift4  0x00000002 , 0x00000002 
+ 00029514  0x00008064 loop  0x00007341 
+ 00029515  0x00008065 setarg  0x00000592 
+ 00029516  0x00008066 iadd  0x00000012 , 0x00000005 
+ 00029517  0x00008067 deposit  0x00000011 
+ 00029518  0x00008068 istore  0x00000001 , 0x00000005 
+ 00029519  0x00008069 rtn 
+ 00029520  0x0000806c enable  0x00000028 
+ 00029521  0x0000806d branch  0x00007353 
+ 00029522  0x00008070 disable  0x00000028 
+ 00029523  0x00008072 force  0x00000010 , 0x00000039 
+ 00029524  0x00008074 ifetcht  0x00000001 , 0x00000011 
+ 00029525  0x00008075 ifetch  0x00000001 , 0x00000012 
+ 00029526  0x00008076 branch  0x00007359 , 0x00000028 
+ 00029527  0x00008077 ixor  0x00000002 , 0x0000003f 
+ 00029528  0x00008078 branch  0x0000735a 
+ 00029529  0x0000807a iadd  0x00000002 , 0x0000003f 
+ 00029530  0x0000807c istore  0x00000001 , 0x00000005 
+ 00029531  0x0000807d increase  0x00000001 , 0x00000011 
+ 00029532  0x0000807e increase  0x00000001 , 0x00000012 
+ 00029533  0x0000807f loop  0x00007354 
+ 00029534  0x00008080 rtn 
+ 00029535  0x00008084 arg  0x000005b2 , 0x00000005 
+ 00029536  0x00008085 ifetch  0x00000006 , 0x00000011 
+ 00029537  0x00008086 istore  0x00000006 , 0x00000005 
+ 00029538  0x00008087 branch  0x00007365 , 0x00000028 
+ 00029539  0x00008088 ifetch  0x00000006 , 0x00000011 
+ 00029540  0x00008089 branch  0x00007366 
+ 00029541  0x0000808b ifetch  0x00000006 , 0x00000006 
+ 00029542  0x0000808d istore  0x00000006 , 0x00000005 
+ 00029543  0x0000808e ifetch  0x00000004 , 0x00000011 
+ 00029544  0x0000808f istore  0x00000004 , 0x00000005 
+ 00029545  0x00008090 rtn 
+ 00029546  0x00008093 arg  0x000041be , 0x00000006 
+ 00029547  0x00008094 arg  0x000005a2 , 0x00000005 
+ 00029548  0x00008095 arg  0x00000000 , 0x00000002 
+ 00029549  0x00008096 setarg  0x008395a7 
+ 00029550  0x00008097 call  0x0000738b 
+ 00029551  0x00008098 setarg  0x00b3c1df 
+ 00029552  0x00008099 call  0x0000738b 
+ 00029553  0x0000809a setarg  0x0000e5e9 
+ 00029554  0x0000809b call  0x0000738c 
+ 00029555  0x0000809c copy  0x00000002 , 0x00000014 
+ 00029556  0x0000809d disable  0x00000028 
+ 00029557  0x0000809e call  0x00007379 
+ 00029558  0x0000809f copy  0x00000014 , 0x00000002 
+ 00029559  0x000080a0 enable  0x00000028 
+ 00029560  0x000080a1 branch  0x00007379 
+ 00029561  0x000080a4 force  0x00000008 , 0x00000039 
+ 00029562  0x000080a6 ifetch  0x00000001 , 0x00000006 
+ 00029563  0x000080a7 compare  0x00000001 , 0x00000039 , 0x00000001 
+ 00029564  0x000080a8 branch  0x00007380 , 0x00000028 
+ 00029565  0x000080a9 branch  0x00007381 , 0x00000001 
+ 00029566  0x000080ab iadd  0x00000002 , 0x0000003f 
+ 00029567  0x000080ac branch  0x00007382 
+ 00029568  0x000080ae branch  0x0000737e , 0x00000001 
+ 00029569  0x000080b0 ixor  0x00000002 , 0x0000003f 
+ 00029570  0x000080b2 istore  0x00000001 , 0x00000005 
+ 00029571  0x000080b3 rshift8  0x00000002 , 0x00000002 
+ 00029572  0x000080b4 loop  0x0000737a 
+ 00029573  0x000080b5 rtn 
+ 00029574  0x000080b8 fetch  0x00000006 , 0x00000596 
+ 00029575  0x000080b9 store  0x00000006 , 0x00000056 
+ 00029576  0x000080ba ifetch  0x00000006 , 0x00000006 
+ 00029577  0x000080bb istore  0x00000006 , 0x00000005 
+ 00029578  0x000080bc rtn 
+ 00029579  0x000080bf lshift8  0x00000002 , 0x00000002 
+ 00029580  0x000080c1 lshift16  0x00000002 , 0x00000002 
+ 00029581  0x000080c2 ior  0x00000002 , 0x00000002 
+ 00029582  0x000080c3 rtn 
+ 00029583  0x000080c8 branch  0x0000738f 
+ 00029584  0x000080cd bpatchx  0x000000e0 , 0x0000403c 
+ 00029585  0x000080ce call  0x0000742b 
+ 00029586  0x000080cf arg  0x00004419 , 0x00000005 
+ 00029587  0x000080d0 branch  0x00007497 
+ 00029588  0x000080d4 arg  0x0000443a , 0x00000005 
+ 00029589  0x000080d5 branch  0x00007397 , 0x00000029 
+ 00029590  0x000080d6 arg  0x0000042f , 0x00000005 
+ 00029591  0x000080d8 copy  0x00000006 , 0x00000011 
+ 00029592  0x000080d9 call  0x00007ebf 
+ 00029593  0x000080da call  0x00007440 
+ 00029594  0x000080db arg  0x0000442a , 0x00000006 
+ 00029595  0x000080dc branch  0x000074b0 
+ 00029596  0x000080df arg  0x0000042f , 0x00000011 
+ 00029597  0x000080e0 branch  0x0000739f , 0x00000029 
+ 00029598  0x000080e1 arg  0x0000443a , 0x00000011 
+ 00029599  0x000080e3 copy  0x00000011 , 0x00000005 
+ 00029600  0x000080e4 call  0x0000630c 
+ 00029601  0x000080e5 branch  0x00007440 
+ 00029602  0x000080e8 arg  0x000044aa , 0x00000006 
+ 00029603  0x000080e9 call  0x00007486 
+ 00029604  0x000080ea arg  0x00004419 , 0x00000006 
+ 00029605  0x000080eb call  0x00007487 
+ 00029606  0x000080ec force  0x00000038 , 0x00000036 
+ 00029607  0x000080ed force  0x00000000 , 0x00000036 
+ 00029608  0x000080ee call  0x0000741d 
+ 00029609  0x000080ef arg  0x0000047c , 0x00000005 
+ 00029610  0x000080f0 branch  0x00007497 
+ 00029611  0x000080f4 force  0x00000049 , 0x0000003f 
+ 00029612  0x000080f5 branch  0x000073ae 
+ 00029613  0x000080f7 force  0x00000001 , 0x0000003f 
+ 00029614  0x000080f9 force  0x00000000 , 0x00000038 
+ 00029615  0x000080fa lshift8  0x00000002 , 0x0000002f 
+ 00029616  0x000080fb ior  0x0000002f , 0x0000002f 
+ 00029617  0x000080fc increase  0x00000001 , 0x00000038 
+ 00029618  0x000080fd rshift8  0x00000002 , 0x0000002f 
+ 00029619  0x000080fe rshift16  0x0000002f , 0x0000002f 
+ 00029620  0x000080ff fetch  0x00000002 , 0x00004411 
+ 00029621  0x00008100 lshift16 , 0x0000003f , 0x0000003f 
+ 00029622  0x00008101 ior  0x0000002f , 0x0000002f 
+ 00029623  0x00008102 increase  0x00000001 , 0x00000038 
+ 00029624  0x00008103 ifetch  0x00000004 , 0x00000006 
+ 00029625  0x00008104 iforce  0x0000002f 
+ 00029626  0x00008105 increase  0x00000001 , 0x00000038 
+ 00029627  0x00008106 ifetch  0x00000002 , 0x00000006 
+ 00029628  0x00008107 byteswap  0x00000011 , 0x0000002f 
+ 00029629  0x00008108 lshift16  0x0000002f , 0x0000002f 
+ 00029630  0x00008109 ior  0x0000002f , 0x0000002f 
+ 00029631  0x0000810a increase  0x00000001 , 0x00000038 
+ 00029632  0x0000810b rtn 
+ 00029633  0x00008110 add  0x00000013 , 0x00000001 , 0x00000006 
+ 00029634  0x00008111 ifetch  0x00000001 , 0x00000006 
+ 00029635  0x00008112 iforce  0x00000011 
+ 00029636  0x00008113 call  0x000073ab 
+ 00029637  0x00008114 call  0x0000741f 
+ 00029638  0x00008116 force  0x00000000 , 0x00000038 
+ 00029639  0x00008117 ifetch  0x00000001 , 0x00000013 
+ 00029640  0x00008118 and_into  0x00000003 , 0x0000003f 
+ 00029641  0x00008119 lshift16  0x0000003f , 0x0000002f 
+ 00029642  0x0000811a set1  0x00000008 , 0x0000002f 
+ 00029643  0x0000811b call  0x0000748f 
+ 00029644  0x0000811c call  0x00007422 
+ 00029645  0x0000811e copy  0x00000011 , 0x00000039 
+ 00029646  0x0000811f add  0x00000013 , 0x00000002 , 0x00000006 
+ 00029647  0x00008120 call  0x0000746e 
+ 00029648  0x00008122 call  0x00007478 
+ 00029649  0x00008123 call  0x00007422 
+ 00029650  0x00008124 deposit  0x00000039 
+ 00029651  0x00008125 branch  0x000073d5 , 0x00000034 
+ 00029652  0x00008126 branch  0x000073d0 
+ 00029653  0x00008128 force  0x0000000c , 0x00000038 
+ 00029654  0x00008129 deposit  0x0000002f 
+ 00029655  0x0000812a store  0x00000004 , 0x00000417 
+ 00029656  0x0000812b rtn 
+ 00029657  0x0000812e increase  0x00000001 , 0x00000011 
+ 00029658  0x0000812f call  0x000073ad 
+ 00029659  0x00008130 copy  0x00000013 , 0x00000006 
+ 00029660  0x00008131 call  0x00007482 
+ 00029661  0x00008132 call  0x00007425 
+ 00029662  0x00008133 call  0x0000749e 
+ 00029663  0x00008134 increase  0x00000010 , 0x00000013 
+ 00029664  0x00008135 increase  0xfffffff0 , 0x00000012 
+ 00029665  0x00008136 branch  0x000073d9 , 0x00000002 
+ 00029666  0x00008137 rtn 
+ 00029667  0x0000813a bpatchx  0x000000e1 , 0x0000403c 
+ 00029668  0x0000813b arg  0x000043dc , 0x00000013 
+ 00029669  0x0000813c fetcht  0x00000005 , 0x00004403 
+ 00029670  0x0000813d call  0x000073c1 
+ 00029671  0x0000813e force  0x00000008 , 0x00000038 
+ 00029672  0x0000813f iforce  0x0000002f 
+ 00029673  0x00008140 force  0x00000000 , 0x00000011 
+ 00029674  0x00008141 call  0x000073ad 
+ 00029675  0x00008142 call  0x00007425 
+ 00029676  0x00008143 arg  0x000043de , 0x00000013 
+ 00029677  0x00008144 fetch  0x00000001 , 0x000043dd 
+ 00029678  0x00008145 add  0x0000003f , 0xffffffff , 0x00000012 
+ 00029679  0x00008146 iadd  0x00000013 , 0x00000005 
+ 00029680  0x00008147 force  0x0000000c , 0x00000038 
+ 00029681  0x00008148 deposit  0x0000002f 
+ 00029682  0x00008149 istore  0x00000004 , 0x00000005 
+ 00029683  0x0000814a call  0x000073d9 
+ 00029684  0x0000814b fetch  0x00000001 , 0x000043dd 
+ 00029685  0x0000814c increase  0x00000004 , 0x0000003f 
+ 00029686  0x0000814d store  0x00000001 , 0x000043dd 
+ 00029687  0x0000814e fetcht  0x00000005 , 0x00004403 
+ 00029688  0x0000814f increase  0x00000001 , 0x00000002 
+ 00029689  0x00008150 storet  0x00000005 , 0x00004403 
+ 00029690  0x00008151 rtn 
+ 00029691  0x00008154 bpatchx  0x000000e2 , 0x0000403c 
+ 00029692  0x00008155 fetch  0x00000001 , 0x000002da 
+ 00029693  0x00008156 sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00029694  0x00008157 branch  0x000073ff , 0x00000002 
+ 00029695  0x00008159 arg  0x000002db , 0x00000013 
+ 00029696  0x0000815a add  0x0000003f , 0xffffffff , 0x00000012 
+ 00029697  0x0000815b increase  0xfffffffc , 0x0000003f 
+ 00029698  0x0000815c store  0x00000001 , 0x000002da 
+ 00029699  0x0000815d iadd  0x00000013 , 0x00000006 
+ 00029700  0x0000815e ifetch  0x00000004 , 0x00000006 
+ 00029701  0x0000815f force  0x00000008 , 0x00000038 
+ 00029702  0x00008160 iforce  0x0000002f 
+ 00029703  0x00008161 force  0x00000000 , 0x00000011 
+ 00029704  0x00008162 fetcht  0x00000005 , 0x00004408 
+ 00029705  0x00008163 call  0x000073ad 
+ 00029706  0x00008164 call  0x00007425 
+ 00029707  0x00008165 force  0x0000000c , 0x00000038 
+ 00029708  0x00008166 deposit  0x0000002f 
+ 00029709  0x00008167 store  0x00000004 , 0x0000041b 
+ 00029710  0x00008168 call  0x000073d9 
+ 00029711  0x00008169 arg  0x000002d9 , 0x00000013 
+ 00029712  0x0000816a call  0x000073c1 
+ 00029713  0x0000816b fetcht  0x00000004 , 0x0000041b 
+ 00029714  0x0000816c isub  0x00000002 , 0x0000003f 
+ 00029715  0x0000816d nrtn  0x00000034 
+ 00029716  0x0000816e fetch  0x00000004 , 0x0000440d 
+ 00029717  0x0000816f isub  0x00000002 , 0x0000003f 
+ 00029718  0x00008170 rtn  0x00000034 
+ 00029719  0x00008171 storet  0x00000004 , 0x0000440d 
+ 00029720  0x00008172 fetch  0x00000005 , 0x00004408 
+ 00029721  0x00008173 increase  0x00000001 , 0x0000003f 
+ 00029722  0x00008174 store  0x00000005 , 0x00004408 
+ 00029723  0x00008175 force  0x00000000 , 0x0000003f 
+ 00029724  0x00008176 rtn 
+ 00029725  0x00008179 nbranch  0x0000741d , 0x00000037 
+ 00029726  0x0000817a rtn 
+ 00029727  0x0000817d force  0x00000030 , 0x00000036 
+ 00029728  0x0000817e force  0x00000000 , 0x00000036 
+ 00029729  0x0000817f branch  0x0000741d 
+ 00029730  0x00008182 force  0x00000032 , 0x00000036 
+ 00029731  0x00008183 force  0x00000002 , 0x00000036 
+ 00029732  0x00008184 branch  0x0000741d 
+ 00029733  0x00008187 force  0x00000034 , 0x00000036 
+ 00029734  0x00008188 force  0x00000004 , 0x00000036 
+ 00029735  0x00008189 branch  0x0000741d 
+ 00029736  0x0000818d force  0x00000001 , 0x00000036 
+ 00029737  0x0000818e force  0x00000000 , 0x00000036 
+ 00029738  0x0000818f rtn 
+ 00029739  0x00008191 force  0x00000000 , 0x00000038 
+ 00029740  0x00008192 fetch  0x00000004 , 0x0000042f 
+ 00029741  0x00008193 iforce  0x0000002f 
+ 00029742  0x00008194 increase  0x00000001 , 0x00000038 
+ 00029743  0x00008195 ifetch  0x00000004 , 0x00000006 
+ 00029744  0x00008196 iforce  0x0000002f 
+ 00029745  0x00008197 increase  0x00000001 , 0x00000038 
+ 00029746  0x00008198 fetch  0x00000004 , 0x0000443a 
+ 00029747  0x00008199 iforce  0x0000002f 
+ 00029748  0x0000819a increase  0x00000001 , 0x00000038 
+ 00029749  0x0000819b ifetch  0x00000004 , 0x00000006 
+ 00029750  0x0000819c iforce  0x0000002f 
+ 00029751  0x0000819d increase  0x00000001 , 0x00000038 
+ 00029752  0x0000819e call  0x00007492 
+ 00029753  0x0000819f increase  0xfffffffc , 0x00000038 
+ 00029754  0x000081a0 fetch  0x00000004 , 0x000044c7 
+ 00029755  0x000081a1 copy  0x0000003f , 0x0000002f 
+ 00029756  0x000081a2 increase  0x00000004 , 0x00000038 
+ 00029757  0x000081a3 force  0x00000038 , 0x00000036 
+ 00029758  0x000081a4 force  0x00000008 , 0x00000036 
+ 00029759  0x000081a5 branch  0x0000741d 
+ 00029760  0x000081a9 bpatchx  0x000000e3 , 0x0000403c 
+ 00029761  0x000081aa fetch  0x00000006 , 0x000044a0 
+ 00029762  0x000081ab fetcht  0x00000006 , 0x0000044f 
+ 00029763  0x000081ac branch  0x00007446 , 0x00000029 
+ 00029764  0x000081ad fetch  0x00000006 , 0x0000044f 
+ 00029765  0x000081ae fetcht  0x00000006 , 0x000044a0 
+ 00029766  0x000081b0 force  0x00000008 , 0x00000038 
+ 00029767  0x000081b1 copy  0x00000002 , 0x0000002f 
+ 00029768  0x000081b2 increase  0x00000001 , 0x00000038 
+ 00029769  0x000081b3 rshift32  0x00000002 , 0x0000002f 
+ 00029770  0x000081b4 lshift16  0x0000003f , 0x0000003f 
+ 00029771  0x000081b5 ior  0x0000002f , 0x0000002f 
+ 00029772  0x000081b6 increase  0x00000001 , 0x00000038 
+ 00029773  0x000081b7 rshift32  0x0000003f , 0x0000002f 
+ 00029774  0x000081b8 increase  0x00000001 , 0x00000038 
+ 00029775  0x000081b9 force  0x00000000 , 0x0000002f 
+ 00029776  0x000081ba force  0x00000000 , 0x0000003f 
+ 00029777  0x000081bb fetch  0x00000001 , 0x0000448e 
+ 00029778  0x000081bc fetcht  0x00000001 , 0x00004485 
+ 00029779  0x000081bd nbranch  0x00007456 , 0x00000029 
+ 00029780  0x000081bf fetch  0x00000001 , 0x00004495 
+ 00029781  0x000081c0 fetcht  0x00000001 , 0x0000448e 
+ 00029782  0x000081c2 store  0x00000001 , 0x0000444a 
+ 00029783  0x000081c3 storet  0x00000001 , 0x0000444b 
+ 00029784  0x000081c4 force  0x00000000 , 0x00000038 
+ 00029785  0x000081c5 arg  0x0000444a , 0x00000012 
+ 00029786  0x000081c6 force  0x00000004 , 0x00000039 
+ 00029787  0x000081c8 ifetch  0x00000004 , 0x00000011 
+ 00029788  0x000081c9 ifetcht  0x00000004 , 0x00000012 
+ 00029789  0x000081ca ixor  0x00000002 , 0x0000002f 
+ 00029790  0x000081cb increase  0x00000001 , 0x00000038 
+ 00029791  0x000081cc increase  0x00000004 , 0x00000011 
+ 00029792  0x000081cd increase  0x00000004 , 0x00000012 
+ 00029793  0x000081ce loop  0x0000745b 
+ 00029794  0x000081cf call  0x00007492 
+ 00029795  0x000081d0 increase  0xfffffffc , 0x00000038 
+ 00029796  0x000081d1 fetch  0x00000004 , 0x000044c7 
+ 00029797  0x000081d2 copy  0x0000003f , 0x0000002f 
+ 00029798  0x000081d3 increase  0x00000004 , 0x00000038 
+ 00029799  0x000081d4 force  0x00000038 , 0x00000036 
+ 00029800  0x000081d5 force  0x0000000c , 0x00000036 
+ 00029801  0x000081d6 call  0x0000741d 
+ 00029802  0x000081d8 call  0x00007491 
+ 00029803  0x000081d9 force  0x0000003a , 0x00000036 
+ 00029804  0x000081da force  0x00000008 , 0x00000036 
+ 00029805  0x000081db branch  0x0000741d 
+ 00029806  0x000081de compare  0x00000000 , 0x00000039 , 0x00000003 
+ 00029807  0x000081df rtn  0x00000001 
+ 00029808  0x000081e0 deposit  0x00000006 
+ 00029809  0x000081e1 iadd  0x00000039 , 0x00000005 
+ 00029810  0x000081e2 force  0x00000000 , 0x0000003f 
+ 00029811  0x000081e4 istore  0x00000001 , 0x00000005 
+ 00029812  0x000081e5 increase  0x00000001 , 0x00000039 
+ 00029813  0x000081e6 compare  0x00000000 , 0x00000039 , 0x00000003 
+ 00029814  0x000081e7 rtn  0x00000001 
+ 00029815  0x000081e8 branch  0x00007473 
+ 00029816  0x000081eb force  0x00000000 , 0x00000038 
+ 00029817  0x000081ed deposit  0x00000039 
+ 00029818  0x000081ee branch  0x0000747d , 0x00000034 
+ 00029819  0x000081ef ifetch  0x00000004 , 0x00000006 
+ 00029820  0x000081f0 increase  0xfffffffc , 0x00000039 
+ 00029821  0x000081f2 iforce  0x0000002f 
+ 00029822  0x000081f3 increase  0x00000001 , 0x00000038 
+ 00029823  0x000081f4 compare  0x00000004 , 0x00000038 , 0x0000000f 
+ 00029824  0x000081f5 rtn  0x00000001 
+ 00029825  0x000081f6 branch  0x00007479 
+ 00029826  0x000081f9 force  0x00000008 , 0x00000038 
+ 00029827  0x000081fa branch  0x00007487 
+ 00029828  0x000081fc force  0x00000004 , 0x00000038 
+ 00029829  0x000081fd branch  0x00007487 
+ 00029830  0x000081ff force  0x00000000 , 0x00000038 
+ 00029831  0x00008201 force  0x00000004 , 0x00000039 
+ 00029832  0x00008203 ifetch  0x00000004 , 0x00000006 
+ 00029833  0x00008204 iforce  0x0000002f 
+ 00029834  0x00008205 increase  0x00000001 , 0x00000038 
+ 00029835  0x00008206 loop  0x00007488 
+ 00029836  0x00008207 rtn 
+ 00029837  0x0000820a arg  0x0000047c , 0x00000006 
+ 00029838  0x0000820b branch  0x00007484 
+ 00029839  0x0000820e force  0x00000004 , 0x00000039 
+ 00029840  0x0000820f branch  0x00007494 
+ 00029841  0x00008212 force  0x00000000 , 0x00000038 
+ 00029842  0x00008214 force  0x00000004 , 0x00000039 
+ 00029843  0x00008216 force  0x00000000 , 0x0000002f 
+ 00029844  0x00008218 increase  0x00000001 , 0x00000038 
+ 00029845  0x00008219 loop  0x00007493 
+ 00029846  0x0000821a rtn 
+ 00029847  0x0000821d force  0x0000000c , 0x00000038 
+ 00029848  0x0000821e force  0x00000004 , 0x00000039 
+ 00029849  0x00008220 deposit  0x0000002f 
+ 00029850  0x00008221 istore  0x00000004 , 0x00000005 
+ 00029851  0x00008222 increase  0x00000001 , 0x00000038 
+ 00029852  0x00008223 loop  0x00007499 
+ 00029853  0x00008224 rtn 
+ 00029854  0x00008227 force  0x0000000c , 0x00000038 
+ 00029855  0x00008228 copy  0x00000013 , 0x00000005 
+ 00029856  0x00008229 add  0x00000012 , 0x00000001 , 0x00000039 
+ 00029857  0x0000822a sub  0x00000039 , 0x0000000f , 0x0000003e 
+ 00029858  0x0000822b branch  0x000074a4 , 0x00000002 
+ 00029859  0x0000822c force  0x00000010 , 0x00000039 
+ 00029860  0x0000822e deposit  0x0000002f 
+ 00029861  0x0000822f sub  0x00000039 , 0x00000003 , 0x0000003e 
+ 00029862  0x00008230 branch  0x000074ac , 0x00000002 
+ 00029863  0x00008231 istore  0x00000004 , 0x00000005 
+ 00029864  0x00008232 increase  0xfffffffc , 0x00000039 
+ 00029865  0x00008233 rtn  0x00000005 
+ 00029866  0x00008234 increase  0x00000001 , 0x00000038 
+ 00029867  0x00008235 branch  0x000074a4 
+ 00029868  0x00008237 istore  0x00000001 , 0x00000005 
+ 00029869  0x00008238 rshift8  0x0000003f , 0x0000003f 
+ 00029870  0x00008239 loop  0x000074ac 
+ 00029871  0x0000823a rtn 
+ 00029872  0x0000823e force  0x0000000c , 0x00000038 
+ 00029873  0x0000823f force  0x00000004 , 0x00000039 
+ 00029874  0x00008241 ifetch  0x00000004 , 0x00000006 
+ 00029875  0x00008242 isub  0x0000002f , 0x0000003e 
+ 00029876  0x00008243 nrtn  0x00000005 
+ 00029877  0x00008244 increase  0x00000001 , 0x00000038 
+ 00029878  0x00008245 loop  0x000074b2 
+ 00029879  0x00008246 force  0x00000000 , 0x0000003e 
+ 00029880  0x00008247 rtn 
+ 00029881  0x0000824a hfetch  0x00000001 , 0x00008050 
+ 00029882  0x0000824b set0  0x00000000 , 0x0000003f 
+ 00029883  0x0000824c hstore  0x00000001 , 0x00008050 
+ 00029884  0x0000824d rtn 
+ 00029885  0x00008250 hfetch  0x00000001 , 0x00008050 
+ 00029886  0x00008251 set1  0x00000000 , 0x0000003f 
+ 00029887  0x00008252 hstore  0x00000001 , 0x00008050 
+ 00029888  0x00008253 rtn 
+ 00029889  0x00008256 arg  0x00000886 , 0x00000005 
+ 00029890  0x00008257 setsect  0x00000000 , 0x0003ffff 
+ 00029891  0x00008258 setsect  0x00000001 , 0x0003ffff 
+ 00029892  0x00008259 setsect  0x00000002 , 0x0003ffff 
+ 00029893  0x0000825a setsect  0x00000003 , 0x0003fbff 
+ 00029894  0x0000825b istore  0x00000009 , 0x00000005 
+ 00029895  0x0000825c setsect  0x00000000 , 0x0003ffff 
+ 00029896  0x0000825d setsect  0x00000001 , 0x0003ffff 
+ 00029897  0x0000825e setsect  0x00000002 , 0x0003ffff 
+ 00029898  0x0000825f setsect  0x00000003 , 0x0003ffff 
+ 00029899  0x00008260 istore  0x00000009 , 0x00000005 
+ 00029900  0x00008261 setsect  0x00000000 , 0x0003ffff 
+ 00029901  0x00008262 setsect  0x00000001 , 0x0003ffff 
+ 00029902  0x00008263 setsect  0x00000002 , 0x0003cfff 
+ 00029903  0x00008264 setsect  0x00000003 , 0x0003ffff 
+ 00029904  0x00008265 istore  0x00000009 , 0x00000005 
+ 00029905  0x00008266 setsect  0x00000000 , 0x0003ffff 
+ 00029906  0x00008267 setsect  0x00000001 , 0x0003ffff 
+ 00029907  0x00008268 setsect  0x00000002 , 0x0003ffef 
+ 00029908  0x00008269 setsect  0x00000003 , 0x0003ffff 
+ 00029909  0x0000826a istore  0x00000009 , 0x00000005 
+ 00029910  0x0000826b setsect  0x00000000 , 0x0003ffff 
+ 00029911  0x0000826c setsect  0x00000001 , 0x0003ffff 
+ 00029912  0x0000826d setsect  0x00000002 , 0x0003ffff 
+ 00029913  0x0000826e setsect  0x00000003 , 0x0003ffff 
+ 00029914  0x0000826f istore  0x00000009 , 0x00000005 
+ 00029915  0x00008270 setsect  0x00000000 , 0x0003ffff 
+ 00029916  0x00008271 setsect  0x00000001 , 0x00026c7f 
+ 00029917  0x00008272 setsect  0x00000002 , 0x0000146b 
+ 00029918  0x00008273 setsect  0x00000003 , 0x00037bb3 
+ 00029919  0x00008274 istore  0x00000009 , 0x00000005 
+ 00029920  0x00008275 setsect  0x00000000 , 0x0001feb8 
+ 00029921  0x00008276 setsect  0x00000001 , 0x00010c12 
+ 00029922  0x00008277 setsect  0x00000002 , 0x0002b722 
+ 00029923  0x00008278 setsect  0x00000003 , 0x00029fa6 
+ 00029924  0x00008279 istore  0x00000009 , 0x00000005 
+ 00029925  0x0000827a setsect  0x00000000 , 0x0000e70f 
+ 00029926  0x0000827b setsect  0x00000001 , 0x00016720 
+ 00029927  0x0000827c setsect  0x00000002 , 0x0000519e 
+ 00029928  0x0000827d setsect  0x00000003 , 0x00019084 
+ 00029929  0x0000827e istore  0x00000009 , 0x00000005 
+ 00029930  0x0000827f setsect  0x00000000 , 0x00031012 
+ 00029931  0x00008280 setsect  0x00000001 , 0x000360bf 
+ 00029932  0x00008281 setsect  0x00000002 , 0x0003f0af 
+ 00029933  0x00008282 setsect  0x00000003 , 0x000003d3 
+ 00029934  0x00008283 istore  0x00000009 , 0x00000005 
+ 00029935  0x00008284 setsect  0x00000000 , 0x0003a188 
+ 00029936  0x00008285 setsect  0x00000001 , 0x00003ad0 
+ 00029937  0x00008286 setsect  0x00000002 , 0x0003cbf2 
+ 00029938  0x00008287 setsect  0x00000003 , 0x000243d9 
+ 00029939  0x00008288 istore  0x00000009 , 0x00000005 
+ 00029940  0x00008289 setsect  0x00000000 , 0x0002b030 
+ 00029941  0x0000828a setsect  0x00000001 , 0x00036a03 
+ 00029942  0x0000828b setsect  0x00000002 , 0x00011188 
+ 00029943  0x0000828c setsect  0x00000003 , 0x0001e520 
+ 00029944  0x0000828d istore  0x00000009 , 0x00000005 
+ 00029945  0x0000828e setsect  0x00000000 , 0x0003a11e 
+ 00029946  0x0000828f setsect  0x00000001 , 0x0000fe5d 
+ 00029947  0x00008290 setsect  0x00000002 , 0x0000dd57 
+ 00029948  0x00008291 setsect  0x00000003 , 0x0001ac93 
+ 00029949  0x00008292 istore  0x00000009 , 0x00000005 
+ 00029950  0x00008293 setsect  0x00000000 , 0x000011ed 
+ 00029951  0x00008294 setsect  0x00000001 , 0x000218c4 
+ 00029952  0x00008295 setsect  0x00000002 , 0x00008da7 
+ 00029953  0x00008296 setsect  0x00000003 , 0x000257ff 
+ 00029954  0x00008297 istore  0x00000009 , 0x00000005 
+ 00029955  0x00008298 setsect  0x00000000 , 0x0003192b 
+ 00029956  0x00008299 setsect  0x00000001 , 0x00034641 
+ 00029957  0x0000829a setsect  0x00000002 , 0x0001be0c 
+ 00029958  0x0000829b setsect  0x00000003 , 0x000366ad 
+ 00029959  0x0000829c istore  0x00000009 , 0x00000005 
+ 00029960  0x0000829d setsect  0x00000000 , 0x00001f83 
+ 00029961  0x0000829e setsect  0x00000001 , 0x00015a23 
+ 00029962  0x0000829f setsect  0x00000002 , 0x0003f9b0 
+ 00029963  0x000082a0 setsect  0x00000003 , 0x00003949 
+ 00029964  0x000082a1 istore  0x00000009 , 0x00000005 
+ 00029965  0x000082a2 setsect  0x00000000 , 0x00013a51 
+ 00029966  0x000082a3 setsect  0x00000001 , 0x000153fd 
+ 00029967  0x000082a4 setsect  0x00000002 , 0x0003372a 
+ 00029968  0x000082a5 setsect  0x00000003 , 0x0000f1bb 
+ 00029969  0x000082a6 istore  0x00000009 , 0x00000005 
+ 00029970  0x000082a7 setsect  0x00000000 , 0x0003ae85 
+ 00029971  0x000082a8 setsect  0x00000001 , 0x0001eed9 
+ 00029972  0x000082a9 setsect  0x00000002 , 0x00009e66 
+ 00029973  0x000082aa setsect  0x00000003 , 0x000001a8 
+ 00029974  0x000082ab istore  0x00000008 , 0x00000005 
+ 00029975  0x000082ac rtn 
+ 00029976  0x000082b1 arg  0x0000091e , 0x00000005 
+ 00029977  0x000082b2 setsect  0x00000000 , 0x0003ffff 
+ 00029978  0x000082b3 setsect  0x00000001 , 0x0003ffff 
+ 00029979  0x000082b4 setsect  0x00000002 , 0x0003ffff 
+ 00029980  0x000082b5 setsect  0x00000003 , 0x0003ffff 
+ 00029981  0x000082b6 istore  0x00000009 , 0x00000005 
+ 00029982  0x000082b7 setsect  0x00000000 , 0x0003ffff 
+ 00029983  0x000082b8 setsect  0x00000001 , 0x0000003f 
+ 00029984  0x000082b9 setsect  0x00000002 , 0x00000000 
+ 00029985  0x000082ba setsect  0x00000003 , 0x00000000 
+ 00029986  0x000082bb istore  0x00000009 , 0x00000005 
+ 00029987  0x000082bc setsect  0x00000000 , 0x00000000 
+ 00029988  0x000082bd setsect  0x00000001 , 0x00000000 
+ 00029989  0x000082be setsect  0x00000002 , 0x00001000 
+ 00029990  0x000082bf setsect  0x00000003 , 0x00000000 
+ 00029991  0x000082c0 istore  0x00000009 , 0x00000005 
+ 00029992  0x000082c1 setsect  0x00000000 , 0x0003ff00 
+ 00029993  0x000082c2 setsect  0x00000001 , 0x0003ffff 
+ 00029994  0x000082c3 setsect  0x00000002 , 0x0003ffcf 
+ 00029995  0x000082c4 setsect  0x00000003 , 0x0003ffff 
+ 00029996  0x000082c5 istore  0x00000009 , 0x00000005 
+ 00029997  0x000082c6 setsect  0x00000000 , 0x0003ffff 
+ 00029998  0x000082c7 setsect  0x00000001 , 0x0003ffff 
+ 00029999  0x000082c8 setsect  0x00000002 , 0x0003ffff 
+ 00030000  0x000082c9 setsect  0x00000003 , 0x000003ff 
+ 00030001  0x000082ca istore  0x00000009 , 0x00000005 
+ 00030002  0x000082cb setsect  0x00000000 , 0x00000000 
+ 00030003  0x000082cc setsect  0x00000001 , 0x00000000 
+ 00030004  0x000082cd setsect  0x00000002 , 0x00000000 
+ 00030005  0x000082ce setsect  0x00000003 , 0x00000000 
+ 00030006  0x000082cf istore  0x00000009 , 0x00000005 
+ 00030007  0x000082d0 setsect  0x00000000 , 0x00010000 
+ 00030008  0x000082d1 setsect  0x00000001 , 0x00000000 
+ 00030009  0x000082d2 setsect  0x00000002 , 0x0003f000 
+ 00030010  0x000082d3 setsect  0x00000003 , 0x0003ffff 
+ 00030011  0x000082d4 istore  0x00000009 , 0x00000005 
+ 00030012  0x000082d5 setsect  0x00000000 , 0x000296ff 
+ 00030013  0x000082d6 setsect  0x00000001 , 0x00022630 
+ 00030014  0x000082d7 setsect  0x00000002 , 0x0003945d 
+ 00030015  0x000082d8 setsect  0x00000003 , 0x0003d284 
+ 00030016  0x000082d9 istore  0x00000009 , 0x00000005 
+ 00030017  0x000082da setsect  0x00000000 , 0x000333a0 
+ 00030018  0x000082db setsect  0x00000001 , 0x00004b7a 
+ 00030019  0x000082dc setsect  0x00000002 , 0x000037d8 
+ 00030020  0x000082dd setsect  0x00000003 , 0x0003c9dc 
+ 00030021  0x000082de istore  0x00000009 , 0x00000005 
+ 00030022  0x000082df setsect  0x00000000 , 0x0003a440 
+ 00030023  0x000082e0 setsect  0x00000001 , 0x0001b958 
+ 00030024  0x000082e1 setsect  0x00000002 , 0x00038bce 
+ 00030025  0x000082e2 setsect  0x00000003 , 0x0001091f 
+ 00030026  0x000082e3 istore  0x00000009 , 0x00000005 
+ 00030027  0x000082e4 setsect  0x00000000 , 0x0002e12c 
+ 00030028  0x000082e5 setsect  0x00000001 , 0x0001f47c 
+ 00030029  0x000082e6 setsect  0x00000002 , 0x000356b1 
+ 00030030  0x000082e7 setsect  0x00000003 , 0x0002fd47 
+ 00030031  0x000082e8 istore  0x00000009 , 0x00000005 
+ 00030032  0x000082e9 setsect  0x00000000 , 0x00006837 
+ 00030033  0x000082ea setsect  0x00000001 , 0x0002ed90 
+ 00030034  0x000082eb setsect  0x00000002 , 0x0001ecec 
+ 00030035  0x000082ec setsect  0x00000003 , 0x0001acc5 
+ 00030036  0x000082ed istore  0x00000009 , 0x00000005 
+ 00030037  0x000082ee setsect  0x00000000 , 0x00023357 
+ 00030038  0x000082ef setsect  0x00000001 , 0x00018af3 
+ 00030039  0x000082f0 setsect  0x00000002 , 0x0000f9e1 
+ 00030040  0x000082f1 setsect  0x00000003 , 0x000129f0 
+ 00030041  0x000082f2 istore  0x00000009 , 0x00000005 
+ 00030042  0x000082f3 setsect  0x00000000 , 0x0002e7eb 
+ 00030043  0x000082f4 setsect  0x00000001 , 0x0003e6e3 
+ 00030044  0x000082f5 setsect  0x00000002 , 0x0003e1a7 
+ 00030045  0x000082f6 setsect  0x00000003 , 0x00010b8b 
+ 00030046  0x000082f7 istore  0x00000009 , 0x00000005 
+ 00030047  0x000082f8 setsect  0x00000000 , 0x00024fe3 
+ 00030048  0x000082f9 setsect  0x00000001 , 0x000020ef 
+ 00030049  0x000082fa setsect  0x00000002 , 0x0001b5a6 
+ 00030050  0x000082fb setsect  0x00000003 , 0x0000dc2f 
+ 00030051  0x000082fc istore  0x00000009 , 0x00000005 
+ 00030052  0x000082fd setsect  0x00000000 , 0x00013860 
+ 00030053  0x000082fe setsect  0x00000001 , 0x0002bd69 
+ 00030054  0x000082ff setsect  0x00000002 , 0x0000391a 
+ 00030055  0x00008300 setsect  0x00000003 , 0x0001b222 
+ 00030056  0x00008301 istore  0x00000009 , 0x00000005 
+ 00030057  0x00008302 rtn 
+ 00030058  0x00008306 fetch  0x00000001 , 0x0000465a 
+ 00030059  0x00008307 nbranch  0x0000757d , 0x00000034 
+ 00030060  0x00008308 branch  0x00007a77 
+ 00030061  0x0000830b bpatchx  0x000000e4 , 0x0000403c 
+ 00030062  0x0000830c fetch  0x00000001 , 0x0000465a 
+ 00030063  0x0000830d rtn  0x00000034 
+ 00030064  0x0000830e fetch  0x00000001 , 0x000045b1 
+ 00030065  0x0000830f rtnne  0x00000001 
+ 00030066  0x00008310 fetch  0x00000001 , 0x000044be 
+ 00030067  0x00008311 rtn  0x00000034 
+ 00030068  0x00008312 fetch  0x00000001 , 0x000044c3 
+ 00030069  0x00008313 rtneq  0x00000003 
+ 00030070  0x00008314 fetch  0x00000002 , 0x00004682 
+ 00030071  0x00008315 bbit1  0x00000000 , 0x0000757b 
+ 00030072  0x00008316 fetch  0x00000001 , 0x000044c0 
+ 00030073  0x00008317 beq  0x00000000 , 0x00007a77 
+ 00030074  0x00008318 rtn 
+ 00030075  0x0000831a jam  0x00000000 , 0x000044c0 
+ 00030076  0x0000831b rtn 
+ 00030077  0x0000831f bpatchx  0x000000e5 , 0x0000403c 
+ 00030078  0x00008320 fetch  0x00000001 , 0x0000465a 
+ 00030079  0x00008321 branch  0x0000612b , 0x00000034 
+ 00030080  0x00008322 call  0x00006124 
+ 00030081  0x00008323 call  0x00007583 
+ 00030082  0x00008324 branch  0x0000766d 
+ 00030083  0x00008327 setarg  0x00000000 
+ 00030084  0x00008328 store  0x00000008 , 0x000009ae 
+ 00030085  0x00008329 store  0x00000004 , 0x000009b6 
+ 00030086  0x0000832a store  0x00000007 , 0x0000465e 
+ 00030087  0x0000832b rtn 
+ 00030088  0x0000832e jam  0x00000001 , 0x000009b0 
+ 00030089  0x0000832f branch  0x0000758d 
+ 00030090  0x00008331 fetch  0x00000001 , 0x000045b1 
+ 00030091  0x00008332 beq  0x00000001 , 0x0000768a 
+ 00030092  0x00008333 branch  0x00002a8c 
+ 00030093  0x00008335 fetch  0x00000001 , 0x000045b1 
+ 00030094  0x00008336 beq  0x00000001 , 0x00007590 
+ 00030095  0x00008337 branch  0x0000766d 
+ 00030096  0x0000833a call  0x0000768a 
+ 00030097  0x0000833b fetch  0x00000001 , 0x000009af 
+ 00030098  0x0000833c nrtn  0x00000034 
+ 00030099  0x0000833d jam  0x00000003 , 0x000009ae 
+ 00030100  0x0000833e rtn 
+ 00030101  0x00008342 call  0x000075b0 
+ 00030102  0x00008343 arg  0x000009de , 0x00000011 
+ 00030103  0x00008344 arg  0x00000866 , 0x00000005 
+ 00030104  0x00008345 call  0x00007c79 
+ 00030105  0x00008346 arg  0x000009be , 0x00000011 
+ 00030106  0x00008347 arg  0x00000826 , 0x00000005 
+ 00030107  0x00008348 call  0x00007c79 
+ 00030108  0x00008349 arg  0x00000826 , 0x00000011 
+ 00030109  0x0000834a arg  0x000009be , 0x00000012 
+ 00030110  0x0000834b arg  0x00000826 , 0x00000005 
+ 00030111  0x0000834c call  0x00007be1 
+ 00030112  0x0000834d arg  0x0000093e , 0x00000011 
+ 00030113  0x0000834e arg  0x000009be , 0x00000012 
+ 00030114  0x0000834f arg  0x00000846 , 0x00000005 
+ 00030115  0x00008350 call  0x00007be1 
+ 00030116  0x00008351 arg  0x00000846 , 0x00000011 
+ 00030117  0x00008352 arg  0x00000826 , 0x00000012 
+ 00030118  0x00008353 arg  0x00000826 , 0x00000005 
+ 00030119  0x00008354 call  0x00007c7d 
+ 00030120  0x00008355 arg  0x00000806 , 0x00000011 
+ 00030121  0x00008356 arg  0x00000826 , 0x00000012 
+ 00030122  0x00008357 arg  0x00000806 , 0x00000005 
+ 00030123  0x00008358 call  0x00007c7d 
+ 00030124  0x00008359 arg  0x00000020 , 0x00000039 
+ 00030125  0x0000835a arg  0x00000866 , 0x00000011 
+ 00030126  0x0000835b arg  0x00000806 , 0x00000012 
+ 00030127  0x0000835c branch  0x00007f88 
+ 00030128  0x0000835f arg  0x0000097e , 0x00000011 
+ 00030129  0x00008360 arg  0x00000806 , 0x00000005 
+ 00030130  0x00008361 call  0x00007c79 
+ 00030131  0x00008362 arg  0x0000095e , 0x00000011 
+ 00030132  0x00008363 arg  0x00000826 , 0x00000005 
+ 00030133  0x00008364 call  0x00007c79 
+ 00030134  0x00008365 arg  0x00000826 , 0x00000011 
+ 00030135  0x00008366 arg  0x0000095e , 0x00000012 
+ 00030136  0x00008367 arg  0x00000826 , 0x00000005 
+ 00030137  0x00008368 call  0x00007be1 
+ 00030138  0x00008369 arg  0x0000093e , 0x00000011 
+ 00030139  0x0000836a arg  0x0000095e , 0x00000012 
+ 00030140  0x0000836b arg  0x00000846 , 0x00000005 
+ 00030141  0x0000836c call  0x00007be1 
+ 00030142  0x0000836d arg  0x00000846 , 0x00000011 
+ 00030143  0x0000836e arg  0x00000826 , 0x00000012 
+ 00030144  0x0000836f arg  0x00000826 , 0x00000005 
+ 00030145  0x00008370 call  0x00007c7d 
+ 00030146  0x00008371 arg  0x00000806 , 0x00000011 
+ 00030147  0x00008372 arg  0x00000826 , 0x00000012 
+ 00030148  0x00008373 arg  0x00000806 , 0x00000005 
+ 00030149  0x00008374 branch  0x00007c96 
+ 00030150  0x00008377 call  0x000075e1 
+ 00030151  0x00008378 arg  0x000009e6 , 0x00000011 
+ 00030152  0x00008379 arg  0x00000866 , 0x00000005 
+ 00030153  0x0000837a call  0x000077a8 
+ 00030154  0x0000837b arg  0x000009c6 , 0x00000011 
+ 00030155  0x0000837c arg  0x00000826 , 0x00000005 
+ 00030156  0x0000837d call  0x000077a8 
+ 00030157  0x0000837e arg  0x00000826 , 0x00000011 
+ 00030158  0x0000837f arg  0x000009c6 , 0x00000012 
+ 00030159  0x00008380 arg  0x00000826 , 0x00000005 
+ 00030160  0x00008381 call  0x00007786 
+ 00030161  0x00008382 arg  0x0000089e , 0x00000011 
+ 00030162  0x00008383 arg  0x000009c6 , 0x00000012 
+ 00030163  0x00008384 arg  0x00000846 , 0x00000005 
+ 00030164  0x00008385 call  0x00007786 
+ 00030165  0x00008386 arg  0x00000846 , 0x00000011 
+ 00030166  0x00008387 arg  0x00000826 , 0x00000012 
+ 00030167  0x00008388 arg  0x00000826 , 0x00000005 
+ 00030168  0x00008389 call  0x00007755 
+ 00030169  0x0000838a arg  0x00000806 , 0x00000011 
+ 00030170  0x0000838b arg  0x00000826 , 0x00000012 
+ 00030171  0x0000838c arg  0x00000806 , 0x00000005 
+ 00030172  0x0000838d call  0x00007755 
+ 00030173  0x0000838e arg  0x00000018 , 0x00000039 
+ 00030174  0x0000838f arg  0x00000866 , 0x00000011 
+ 00030175  0x00008390 arg  0x00000806 , 0x00000012 
+ 00030176  0x00008391 branch  0x00007f88 
+ 00030177  0x00008394 arg  0x000008e6 , 0x00000011 
+ 00030178  0x00008395 arg  0x00000806 , 0x00000005 
+ 00030179  0x00008396 call  0x000077a8 
+ 00030180  0x00008397 arg  0x000008ce , 0x00000011 
+ 00030181  0x00008398 arg  0x00000826 , 0x00000005 
+ 00030182  0x00008399 call  0x000077a8 
+ 00030183  0x0000839a arg  0x00000826 , 0x00000011 
+ 00030184  0x0000839b arg  0x000008ce , 0x00000012 
+ 00030185  0x0000839c arg  0x00000826 , 0x00000005 
+ 00030186  0x0000839d call  0x00007786 
+ 00030187  0x0000839e arg  0x0000089e , 0x00000011 
+ 00030188  0x0000839f arg  0x000008ce , 0x00000012 
+ 00030189  0x000083a0 arg  0x00000846 , 0x00000005 
+ 00030190  0x000083a1 call  0x00007786 
+ 00030191  0x000083a2 arg  0x00000846 , 0x00000011 
+ 00030192  0x000083a3 arg  0x00000826 , 0x00000012 
+ 00030193  0x000083a4 arg  0x00000826 , 0x00000005 
+ 00030194  0x000083a5 call  0x00007755 
+ 00030195  0x000083a6 arg  0x00000806 , 0x00000011 
+ 00030196  0x000083a7 arg  0x00000826 , 0x00000012 
+ 00030197  0x000083a8 arg  0x00000806 , 0x00000005 
+ 00030198  0x000083a9 branch  0x00007758 
+ 00030199  0x000083ad fetch  0x00000001 , 0x000009b2 
+ 00030200  0x000083ae bne  0x00000000 , 0x00007615 
+ 00030201  0x000083af call  0x00007612 
+ 00030202  0x000083b0 arg  0x00000a7e , 0x00000005 
+ 00030203  0x000083b1 setarg  0x00000a2e 
+ 00030204  0x000083b2 istore  0x00000002 , 0x00000005 
+ 00030205  0x000083b3 setarg  0x00004642 
+ 00030206  0x000083b4 istore  0x00000002 , 0x00000005 
+ 00030207  0x000083b5 setarg  0x000009de 
+ 00030208  0x000083b6 istore  0x00000002 , 0x00000005 
+ 00030209  0x000083b7 branch  0x00007609 
+ 00030210  0x000083b9 arg  0x00000a7e , 0x00000005 
+ 00030211  0x000083ba setarg  0x00000a3e 
+ 00030212  0x000083bb istore  0x00000002 , 0x00000005 
+ 00030213  0x000083bc setarg  0x000009de 
+ 00030214  0x000083bd istore  0x00000002 , 0x00000005 
+ 00030215  0x000083be setarg  0x00004642 
+ 00030216  0x000083bf istore  0x00000002 , 0x00000005 
+ 00030217  0x000083c1 call  0x000079a0 
+ 00030218  0x000083c2 fetch  0x00000001 , 0x000009af 
+ 00030219  0x000083c3 beq  0x00000004 , 0x0000760f 
+ 00030220  0x000083c4 jam  0x00000001 , 0x000009b0 
+ 00030221  0x000083c5 jam  0x00000005 , 0x000009ae 
+ 00030222  0x000083c6 rtn 
+ 00030223  0x000083c8 jam  0x00000014 , 0x000009af 
+ 00030224  0x000083c9 call  0x0000758a 
+ 00030225  0x000083ca branch  0x000076d8 
+ 00030226  0x000083cd arg  0x00000a1e , 0x00000005 
+ 00030227  0x000083ce force  0x00000008 , 0x00000007 
+ 00030228  0x000083cf branch  0x000076a2 
+ 00030229  0x000083d2 jam  0x00000001 , 0x000009b0 
+ 00030230  0x000083d3 rtn 
+ 00030231  0x000083d7 bpatchx  0x000000e6 , 0x0000403c 
+ 00030232  0x000083d8 arg  0x00000727 , 0x00000005 
+ 00030233  0x000083d9 fetch  0x00000006 , 0x000040a0 
+ 00030234  0x000083da istore  0x00000006 , 0x00000005 
+ 00030235  0x000083db fetch  0x00000006 , 0x00000040 
+ 00030236  0x000083dc istore  0x00000006 , 0x00000005 
+ 00030237  0x000083dd fetch  0x00000003 , 0x0000465e 
+ 00030238  0x000083de istore  0x00000003 , 0x00000005 
+ 00030239  0x000083e0 call  0x00007a0d 
+ 00030240  0x000083e2 arg  0x00000a4e , 0x00000011 
+ 00030241  0x000083e3 arg  0x00000a5e , 0x00000012 
+ 00030242  0x000083e4 force  0x00000004 , 0x00000007 
+ 00030243  0x000083e5 call  0x000076a7 
+ 00030244  0x000083e6 nbranch  0x00007631 , 0x00000001 
+ 00030245  0x000083e8 call  0x00007628 
+ 00030246  0x000083e9 jam  0x00000041 , 0x0000007d 
+ 00030247  0x000083ea branch  0x000062f8 
+ 00030248  0x000083ed fetch  0x00000001 , 0x000009af 
+ 00030249  0x000083ee beq  0x00000009 , 0x0000762e 
+ 00030250  0x000083ef jam  0x0000000a , 0x000009ae 
+ 00030251  0x000083f0 jam  0x00000001 , 0x000009b0 
+ 00030252  0x000083f1 jam  0x00000003 , 0x0000007c 
+ 00030253  0x000083f2 rtn 
+ 00030254  0x000083f4 jam  0x00000003 , 0x0000007c 
+ 00030255  0x000083f5 jam  0x00000015 , 0x000009af 
+ 00030256  0x000083f6 branch  0x000076d8 
+ 00030257  0x000083fa fetch  0x00000001 , 0x000009af 
+ 00030258  0x000083fb beq  0x00000009 , 0x00007637 
+ 00030259  0x000083fc jam  0x00000000 , 0x000009ae 
+ 00030260  0x000083fd jam  0x00000004 , 0x0000007c 
+ 00030261  0x000083ff jam  0x00000005 , 0x0000007e 
+ 00030262  0x00008400 rtn 
+ 00030263  0x00008402 jam  0x00000004 , 0x0000007c 
+ 00030264  0x00008403 jam  0x00000000 , 0x000009af 
+ 00030265  0x00008404 rtn 
+ 00030266  0x00008407 fetch  0x00000001 , 0x000009b3 
+ 00030267  0x00008408 beq  0x00000001 , 0x0000763e 
+ 00030268  0x00008409 jam  0x0000000a , 0x000009af 
+ 00030269  0x0000840a branch  0x000076d8 
+ 00030270  0x0000840c arg  0x00000727 , 0x00000005 
+ 00030271  0x0000840d fetch  0x00000006 , 0x00000040 
+ 00030272  0x0000840e istore  0x00000006 , 0x00000005 
+ 00030273  0x0000840f fetch  0x00000006 , 0x000040a0 
+ 00030274  0x00008410 istore  0x00000006 , 0x00000005 
+ 00030275  0x00008411 fetch  0x00000003 , 0x0000465b 
+ 00030276  0x00008412 istore  0x00000003 , 0x00000005 
+ 00030277  0x00008414 call  0x00007a24 
+ 00030278  0x00008415 fetch  0x00000001 , 0x000009af 
+ 00030279  0x00008416 beq  0x0000000a , 0x0000764b 
+ 00030280  0x00008417 jam  0x0000000b , 0x000009ae 
+ 00030281  0x00008418 jam  0x00000001 , 0x000009b0 
+ 00030282  0x00008419 rtn 
+ 00030283  0x0000841b jam  0x0000000b , 0x000009af 
+ 00030284  0x0000841c jam  0x00000001 , 0x000009b1 
+ 00030285  0x0000841d rtn 
+ 00030286  0x00008420 arg  0x00000a7e , 0x00000005 
+ 00030287  0x00008421 fetch  0x00000006 , 0x00000040 
+ 00030288  0x00008422 istore  0x00000006 , 0x00000005 
+ 00030289  0x00008423 fetch  0x00000006 , 0x000040a0 
+ 00030290  0x00008424 istore  0x00000006 , 0x00000005 
+ 00030291  0x00008425 setarg  0x00000a2e 
+ 00030292  0x00008426 istore  0x00000002 , 0x00000005 
+ 00030293  0x00008427 setarg  0x00000a3e 
+ 00030294  0x00008428 istore  0x00000002 , 0x00000005 
+ 00030295  0x00008429 branch  0x00007662 
+ 00030296  0x0000842b jam  0x0000000f , 0x000009ae 
+ 00030297  0x0000842c arg  0x00000a7e , 0x00000005 
+ 00030298  0x0000842d fetch  0x00000006 , 0x000040a0 
+ 00030299  0x0000842e istore  0x00000006 , 0x00000005 
+ 00030300  0x0000842f fetch  0x00000006 , 0x00000040 
+ 00030301  0x00008430 istore  0x00000006 , 0x00000005 
+ 00030302  0x00008431 setarg  0x00000a3e 
+ 00030303  0x00008432 istore  0x00000002 , 0x00000005 
+ 00030304  0x00008433 setarg  0x00000a2e 
+ 00030305  0x00008434 istore  0x00000002 , 0x00000005 
+ 00030306  0x00008437 arg  0x00000727 , 0x00000005 
+ 00030307  0x00008438 fetch  0x00000006 , 0x00000a7e 
+ 00030308  0x00008439 istore  0x00000006 , 0x00000005 
+ 00030309  0x0000843a fetch  0x00000006 , 0x00000a84 
+ 00030310  0x0000843b istore  0x00000006 , 0x00000005 
+ 00030311  0x0000843d call  0x000079d7 
+ 00030312  0x00008440 jam  0x00000001 , 0x000041bd 
+ 00030313  0x00008441 arg  0x000041be , 0x00000005 
+ 00030314  0x00008442 arg  0x00000a4e , 0x00000006 
+ 00030315  0x00008443 call  0x00007ebf 
+ 00030316  0x00008444 branch  0x000021c4 
+ 00030317  0x00008448 bpatchx  0x000000e7 , 0x0000403c 
+ 00030318  0x00008449 fetch  0x00000001 , 0x000045b1 
+ 00030319  0x0000844a rtnne  0x00000000 
+ 00030320  0x0000844b fetch  0x00000001 , 0x000009b2 
+ 00030321  0x0000844c rtnne  0x00000000 
+ 00030322  0x0000844d arg  0x00004612 , 0x00000005 
+ 00030323  0x0000844e force  0x0000000b , 0x00000007 
+ 00030324  0x0000844f call  0x000076a2 
+ 00030325  0x00008450 random  0x0000003f 
+ 00030326  0x00008451 rshift  0x0000003f , 0x0000003f 
+ 00030327  0x00008452 istore  0x00000002 , 0x00000005 
+ 00030328  0x00008454 arg  0x000006be , 0x00000005 
+ 00030329  0x00008455 arg  0x00004612 , 0x00000006 
+ 00030330  0x00008456 call  0x00007ebe 
+ 00030331  0x00008458 arg  0x000005e6 , 0x00000005 
+ 00030332  0x00008459 arg  0x000008ce , 0x00000006 
+ 00030333  0x0000845a call  0x00007ebc 
+ 00030334  0x0000845c arg  0x00000616 , 0x00000005 
+ 00030335  0x0000845d call  0x00007ec5 
+ 00030336  0x0000845e jam  0x00000001 , 0x00000616 
+ 00030337  0x00008460 call  0x00007a5d 
+ 00030338  0x00008461 jam  0x00000001 , 0x000009b2 
+ 00030339  0x00008462 rtn 
+ 00030340  0x00008465 arg  0x0000462a , 0x00000005 
+ 00030341  0x00008466 arg  0x0000062e , 0x00000006 
+ 00030342  0x00008467 call  0x00007ebc 
+ 00030343  0x00008468 jam  0x00000001 , 0x000045b1 
+ 00030344  0x00008469 jam  0x00000000 , 0x000009b2 
+ 00030345  0x0000846a rtn 
+ 00030346  0x0000846d bpatchx  0x000000e8 , 0x0000403d 
+ 00030347  0x0000846e fetch  0x00000001 , 0x000009b9 
+ 00030348  0x0000846f rtnne  0x00000000 
+ 00030349  0x00008470 fetch  0x00000001 , 0x000009b2 
+ 00030350  0x00008471 rtnne  0x00000000 
+ 00030351  0x00008473 arg  0x000006be , 0x00000005 
+ 00030352  0x00008474 arg  0x00004612 , 0x00000006 
+ 00030353  0x00008475 call  0x00007ebe 
+ 00030354  0x00008477 arg  0x000005e6 , 0x00000005 
+ 00030355  0x00008478 arg  0x000009c6 , 0x00000006 
+ 00030356  0x00008479 call  0x00007ebc 
+ 00030357  0x0000847b arg  0x00000616 , 0x00000005 
+ 00030358  0x0000847c call  0x00007ec5 
+ 00030359  0x0000847d jam  0x00000001 , 0x00000616 
+ 00030360  0x0000847f call  0x00007a5d 
+ 00030361  0x00008480 jam  0x00000002 , 0x000009b2 
+ 00030362  0x00008481 rtn 
+ 00030363  0x00008484 jam  0x00000001 , 0x000009b3 
+ 00030364  0x00008485 arg  0x00000a06 , 0x00000005 
+ 00030365  0x00008486 arg  0x0000062e , 0x00000006 
+ 00030366  0x00008487 call  0x00007ebe 
+ 00030367  0x00008488 jam  0x00000001 , 0x000009b9 
+ 00030368  0x00008489 jam  0x00000000 , 0x000009b2 
+ 00030369  0x0000848a rtn 
+ 00030370  0x0000848d increase  0xffffffff , 0x00000007 
+ 00030371  0x0000848e nrtn  0x00000002 
+ 00030372  0x0000848f random  0x0000003f 
+ 00030373  0x00008490 istore  0x00000002 , 0x00000005 
+ 00030374  0x00008491 branch  0x000076a2 
+ 00030375  0x00008493 increase  0xffffffff , 0x00000007 
+ 00030376  0x00008494 nbranch  0x000076b3 , 0x00000002 
+ 00030377  0x00008495 ifetch  0x00000004 , 0x00000011 
+ 00030378  0x00008496 copy  0x0000003f , 0x00000002 
+ 00030379  0x00008497 ifetch  0x00000004 , 0x00000012 
+ 00030380  0x00008498 iflip  0x00000002 , 0x0000003f 
+ 00030381  0x00008499 nbranch  0x000076b1 , 0x00000005 
+ 00030382  0x0000849a increase  0x00000004 , 0x00000011 
+ 00030383  0x0000849b increase  0x00000004 , 0x00000012 
+ 00030384  0x0000849c branch  0x000076a7 
+ 00030385  0x0000849e disable  0x00000001 
+ 00030386  0x0000849f rtn 
+ 00030387  0x000084a1 enable  0x00000001 
+ 00030388  0x000084a2 rtn 
+ 00030389  0x000084aa bpatchx  0x000000e9 , 0x0000403d 
+ 00030390  0x000084ab fetch  0x00000001 , 0x000009b0 
+ 00030391  0x000084ac rtn  0x00000034 
+ 00030392  0x000084ad call  0x000062bc 
+ 00030393  0x000084ae nrtn  0x00000034 
+ 00030394  0x000084af jam  0x00000000 , 0x000009b0 
+ 00030395  0x000084b0 fetch  0x00000001 , 0x000009ae 
+ 00030396  0x000084b1 beq  0x00000003 , 0x000061fd 
+ 00030397  0x000084b2 beq  0x00000005 , 0x0000621a 
+ 00030398  0x000084b3 beq  0x00000007 , 0x00006225 
+ 00030399  0x000084b4 beq  0x0000000b , 0x0000623a 
+ 00030400  0x000084b5 beq  0x00000002 , 0x00007588 
+ 00030401  0x000084b6 beq  0x00000004 , 0x000075f7 
+ 00030402  0x000084b7 beq  0x00000009 , 0x00007617 
+ 00030403  0x000084b8 beq  0x0000000a , 0x0000763a 
+ 00030404  0x000084b9 beq  0x0000000c , 0x00007658 
+ 00030405  0x000084bb rtn 
+ 00030406  0x000084be bpatchx  0x000000ea , 0x0000403d 
+ 00030407  0x000084bf fetch  0x00000001 , 0x000009b1 
+ 00030408  0x000084c0 rtn  0x00000034 
+ 00030409  0x000084c1 call  0x000062bc 
+ 00030410  0x000084c2 nrtn  0x00000034 
+ 00030411  0x000084c3 jam  0x00000000 , 0x000009b1 
+ 00030412  0x000084c4 fetch  0x00000001 , 0x000009af 
+ 00030413  0x000084c5 beq  0x00000012 , 0x000061e0 
+ 00030414  0x000084c6 beq  0x00000013 , 0x000061e5 
+ 00030415  0x000084c7 beq  0x00000003 , 0x000061e9 
+ 00030416  0x000084c8 beq  0x00000004 , 0x00007602 
+ 00030417  0x000084c9 beq  0x00000014 , 0x000061ed 
+ 00030418  0x000084ca beq  0x00000007 , 0x000061fb 
+ 00030419  0x000084cb beq  0x0000000a , 0x0000763a 
+ 00030420  0x000084cc beq  0x0000000b , 0x00006239 
+ 00030421  0x000084cd beq  0x00000009 , 0x00007617 
+ 00030422  0x000084ce beq  0x00000015 , 0x00006233 
+ 00030423  0x000084cf rtn 
+ 00030424  0x000084d2 jam  0x00000001 , 0x000009b1 
+ 00030425  0x000084d3 rtn 
+ 00030426  0x000084d6 jam  0x00000000 , 0x000009b1 
+ 00030427  0x000084d7 rtn 
+ 00030428  0x000084d9 bpatchx  0x000000eb , 0x0000403d 
+ 00030429  0x000084da fetch  0x00000001 , 0x0000465a 
+ 00030430  0x000084db rtn  0x00000034 
+ 00030431  0x000084dc fetch  0x00000001 , 0x000009b2 
+ 00030432  0x000084dd rtn  0x00000034 
+ 00030433  0x000084de increase  0x00000080 , 0x0000003f 
+ 00030434  0x000084df store  0x00000001 , 0x000009b2 
+ 00030435  0x000084e0 rtnbit1  0x00000007 
+ 00030436  0x000084e1 fetch  0x00000001 , 0x000005e3 
+ 00030437  0x000084e2 branch  0x000076e7 , 0x00000034 
+ 00030438  0x000084e3 branch  0x00007a68 
+ 00030439  0x000084e6 call  0x000078d3 
+ 00030440  0x000084e7 fetch  0x00000001 , 0x000009b2 
+ 00030441  0x000084e8 beq  0x00000001 , 0x00007684 
+ 00030442  0x000084e9 beq  0x00000002 , 0x0000769b 
+ 00030443  0x000084ea rtn 
+ 00030444  0x000084ee and  0x0000003f , 0x00000007 , 0x00000007 
+ 00030445  0x000084ef rshift3  0x0000003f , 0x0000003f 
+ 00030446  0x000084f0 iadd  0x00000006 , 0x00000006 
+ 00030447  0x000084f1 ifetch  0x00000001 , 0x00000006 
+ 00030448  0x000084f2 qisolate0  0x0000003f 
+ 00030449  0x000084f3 rtn 
+ 00030450  0x000084f7 call  0x00007ebe 
+ 00030451  0x000084f8 call  0x00007ebe 
+ 00030452  0x000084f9 branch  0x00007ebe 
+ 00030453  0x000084fd ifetch  0x00000008 , 0x00000006 
+ 00030454  0x000084fe nrtn  0x00000034 
+ 00030455  0x000084ff ifetch  0x00000008 , 0x00000006 
+ 00030456  0x00008500 nrtn  0x00000034 
+ 00030457  0x00008501 ifetch  0x00000008 , 0x00000006 
+ 00030458  0x00008502 rtn 
+ 00030459  0x00008508 ifetch  0x00000004 , 0x00000011 
+ 00030460  0x00008509 iforce  0x00000002 
+ 00030461  0x0000850a ifetch  0x00000004 , 0x00000012 
+ 00030462  0x0000850b isub  0x00000002 , 0x0000003e 
+ 00030463  0x0000850c nrtn  0x00000005 
+ 00030464  0x0000850d increase  0x00000004 , 0x00000011 
+ 00030465  0x0000850e increase  0x00000004 , 0x00000012 
+ 00030466  0x0000850f loop  0x000076fb 
+ 00030467  0x00008510 rtn 
+ 00030468  0x00008514 force  0x00000006 , 0x00000039 
+ 00030469  0x00008515 increase  0x00000014 , 0x00000011 
+ 00030470  0x00008516 increase  0x00000014 , 0x00000012 
+ 00030471  0x00008518 ifetch  0x00000004 , 0x00000012 
+ 00030472  0x00008519 iforce  0x00000002 
+ 00030473  0x0000851a ifetch  0x00000004 , 0x00000011 
+ 00030474  0x0000851b isub  0x00000002 , 0x0000003f 
+ 00030475  0x0000851c nrtn  0x00000002 
+ 00030476  0x0000851d nrtn  0x00000034 
+ 00030477  0x0000851e increase  0xfffffffc , 0x00000011 
+ 00030478  0x0000851f increase  0xfffffffc , 0x00000012 
+ 00030479  0x00008520 loop  0x00007707 
+ 00030480  0x00008521 rtn 
+ 00030481  0x00008524 force  0x00000006 , 0x00000039 
+ 00030482  0x00008525 force  0x00000000 , 0x00000013 
+ 00030483  0x00008527 ifetch  0x00000004 , 0x00000011 
+ 00030484  0x00008528 iforce  0x00000002 
+ 00030485  0x00008529 ifetch  0x00000004 , 0x00000012 
+ 00030486  0x0000852a iadd  0x00000002 , 0x0000003f 
+ 00030487  0x0000852b iadd  0x00000013 , 0x0000003f 
+ 00030488  0x0000852c istore  0x00000004 , 0x00000005 
+ 00030489  0x0000852d isolate1  0x00000020 , 0x0000003f 
+ 00030490  0x0000852e setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00030491  0x0000852f increase  0x00000004 , 0x00000011 
+ 00030492  0x00008530 increase  0x00000004 , 0x00000012 
+ 00030493  0x00008531 loop  0x00007713 
+ 00030494  0x00008532 rtn 
+ 00030495  0x00008535 force  0x00000006 , 0x00000039 
+ 00030496  0x00008536 force  0x00000000 , 0x00000013 
+ 00030497  0x00008538 ifetch  0x00000004 , 0x00000012 
+ 00030498  0x00008539 iforce  0x00000002 
+ 00030499  0x0000853a ifetch  0x00000004 , 0x00000011 
+ 00030500  0x0000853b isub  0x00000002 , 0x0000003f 
+ 00030501  0x0000853c isub  0x00000013 , 0x0000003f 
+ 00030502  0x0000853d istore  0x00000004 , 0x00000005 
+ 00030503  0x0000853e isolate1  0x00000020 , 0x0000003f 
+ 00030504  0x0000853f setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00030505  0x00008540 increase  0x00000004 , 0x00000011 
+ 00030506  0x00008541 increase  0x00000004 , 0x00000012 
+ 00030507  0x00008542 loop  0x00007721 
+ 00030508  0x00008543 rtn 
+ 00030509  0x00008546 force  0x00000006 , 0x00000039 
+ 00030510  0x00008547 increase  0x00000014 , 0x00000011 
+ 00030511  0x00008549 force  0x00000000 , 0x00000013 
+ 00030512  0x0000854b ifetch  0x00000004 , 0x00000011 
+ 00030513  0x0000854c isolate1  0x00000000 , 0x0000003f 
+ 00030514  0x0000854d setflag  0x00000001 , 0x00000001 , 0x00000013 
+ 00030515  0x0000854e rshift  0x0000003f , 0x0000003f 
+ 00030516  0x0000854f isolate1  0x00000000 , 0x00000013 
+ 00030517  0x00008550 setflag  0x00000001 , 0x0000001f , 0x0000003f 
+ 00030518  0x00008551 istore  0x00000004 , 0x00000011 
+ 00030519  0x00008552 increase  0xfffffffc , 0x00000011 
+ 00030520  0x00008553 rshift  0x00000013 , 0x00000013 
+ 00030521  0x00008554 loop  0x00007730 
+ 00030522  0x00008555 rtn 
+ 00030523  0x00008558 force  0x00000006 , 0x00000039 
+ 00030524  0x00008559 force  0x00000000 , 0x00000013 
+ 00030525  0x0000855b ifetch  0x00000004 , 0x00000011 
+ 00030526  0x0000855c isolate1  0x0000001f , 0x0000003f 
+ 00030527  0x0000855d setflag  0x00000001 , 0x00000001 , 0x00000013 
+ 00030528  0x0000855e lshift  0x0000003f , 0x0000003f 
+ 00030529  0x0000855f isolate1  0x00000000 , 0x00000013 
+ 00030530  0x00008560 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00030531  0x00008561 istore  0x00000004 , 0x00000011 
+ 00030532  0x00008562 increase  0x00000004 , 0x00000011 
+ 00030533  0x00008563 rshift  0x00000013 , 0x00000013 
+ 00030534  0x00008564 loop  0x0000773d 
+ 00030535  0x00008565 rtn 
+ 00030536  0x00008568 call  0x0000773b 
+ 00030537  0x0000856a isolate1  0x00000000 , 0x00000013 
+ 00030538  0x0000856b branch  0x00007751 , 0x00000001 
+ 00030539  0x0000856c arg  0x00000886 , 0x00000012 
+ 00030540  0x0000856d copy  0x00000011 , 0x00000013 
+ 00030541  0x0000856e increase  0xffffffe8 , 0x00000011 
+ 00030542  0x0000856f call  0x00007704 
+ 00030543  0x00008570 nrtn  0x00000002 
+ 00030544  0x00008571 copy  0x00000013 , 0x00000011 
+ 00030545  0x00008573 increase  0xffffffe8 , 0x00000011 
+ 00030546  0x00008574 arg  0x00000886 , 0x00000012 
+ 00030547  0x00008575 copy  0x00000011 , 0x00000005 
+ 00030548  0x00008576 branch  0x0000771f 
+ 00030549  0x0000857a call  0x00007711 
+ 00030550  0x0000857b copy  0x00000005 , 0x00000011 
+ 00030551  0x0000857c branch  0x00007749 
+ 00030552  0x0000857f call  0x0000771f 
+ 00030553  0x00008580 isolate0  0x00000000 , 0x00000013 
+ 00030554  0x00008581 rtn  0x00000001 
+ 00030555  0x00008582 arg  0x00000886 , 0x00000012 
+ 00030556  0x00008583 add  0x00000005 , 0xffffffe8 , 0x00000011 
+ 00030557  0x00008584 copy  0x00000011 , 0x00000005 
+ 00030558  0x00008585 branch  0x00007711 
+ 00030559  0x00008589 copy  0x00000005 , 0x0000000b 
+ 00030560  0x0000858a copy  0x00000011 , 0x00000030 
+ 00030561  0x0000858b arg  0x00000716 , 0x00000012 
+ 00030562  0x0000858c copy  0x00000012 , 0x00000005 
+ 00030563  0x0000858d add  0x00000011 , 0x00000018 , 0x00000006 
+ 00030564  0x0000858e ifetch  0x00000008 , 0x00000006 
+ 00030565  0x0000858f istore  0x00000008 , 0x00000005 
+ 00030566  0x00008590 istore  0x00000008 , 0x00000005 
+ 00030567  0x00008591 force  0x00000000 , 0x0000003f 
+ 00030568  0x00008592 istore  0x00000008 , 0x00000005 
+ 00030569  0x00008593 copy  0x0000000b , 0x00000005 
+ 00030570  0x00008594 call  0x00007755 
+ 00030571  0x00008595 arg  0x00000716 , 0x00000012 
+ 00030572  0x00008596 copy  0x00000012 , 0x00000005 
+ 00030573  0x00008597 force  0x00000000 , 0x0000003f 
+ 00030574  0x00008598 istore  0x00000008 , 0x00000005 
+ 00030575  0x00008599 add  0x00000030 , 0x00000020 , 0x00000006 
+ 00030576  0x0000859a ifetch  0x00000008 , 0x00000006 
+ 00030577  0x0000859b istore  0x00000008 , 0x00000005 
+ 00030578  0x0000859c istore  0x00000008 , 0x00000005 
+ 00030579  0x0000859d copy  0x0000000b , 0x00000011 
+ 00030580  0x0000859e copy  0x00000011 , 0x00000005 
+ 00030581  0x0000859f call  0x00007755 
+ 00030582  0x000085a0 arg  0x00000716 , 0x00000012 
+ 00030583  0x000085a1 copy  0x00000012 , 0x00000005 
+ 00030584  0x000085a2 add  0x00000030 , 0x00000028 , 0x00000006 
+ 00030585  0x000085a3 ifetch  0x00000008 , 0x00000006 
+ 00030586  0x000085a4 istore  0x00000008 , 0x00000005 
+ 00030587  0x000085a5 istore  0x00000008 , 0x00000005 
+ 00030588  0x000085a6 istore  0x00000008 , 0x00000005 
+ 00030589  0x000085a7 copy  0x0000000b , 0x00000011 
+ 00030590  0x000085a8 copy  0x00000011 , 0x00000005 
+ 00030591  0x000085a9 branch  0x00007755 
+ 00030592  0x000085ad force  0x00000006 , 0x00000039 
+ 00030593  0x000085af ifetch  0x00000004 , 0x00000006 
+ 00030594  0x000085b0 iforce  0x0000002f 
+ 00030595  0x000085b1 increase  0x00000001 , 0x00000038 
+ 00030596  0x000085b2 loop  0x00007781 
+ 00030597  0x000085b3 rtn 
+ 00030598  0x000085b8 copy  0x00000005 , 0x0000000b 
+ 00030599  0x000085b9 arg  0x000006e6 , 0x00000005 
+ 00030600  0x000085ba call  0x00007ec5 
+ 00030601  0x000085bb arg  0x000006e6 , 0x00000005 
+ 00030602  0x000085bc copy  0x00000011 , 0x00000006 
+ 00030603  0x000085bd force  0x00000000 , 0x00000038 
+ 00030604  0x000085be call  0x00007780 
+ 00030605  0x000085bf copy  0x00000012 , 0x00000006 
+ 00030606  0x000085c0 call  0x00007780 
+ 00030607  0x000085c1 force  0x00000000 , 0x00000012 
+ 00030608  0x000085c3 force  0x00000000 , 0x00000002 
+ 00030609  0x000085c4 force  0x00000006 , 0x00000013 
+ 00030610  0x000085c6 ifetch  0x00000004 , 0x00000005 
+ 00030611  0x000085c7 iforce  0x00000011 
+ 00030612  0x000085c8 copy  0x00000012 , 0x00000038 
+ 00030613  0x000085c9 deposit  0x0000002f 
+ 00030614  0x000085ca copy  0x00000013 , 0x00000038 
+ 00030615  0x000085cb imul32  0x0000002f , 0x0000003f 
+ 00030616  0x000085cc iadd  0x00000011 , 0x0000003f 
+ 00030617  0x000085cd iadd  0x00000002 , 0x0000003f 
+ 00030618  0x000085ce istore  0x00000004 , 0x00000005 
+ 00030619  0x000085cf rshift32  0x0000003f , 0x00000002 
+ 00030620  0x000085d0 increase  0x00000001 , 0x00000013 
+ 00030621  0x000085d1 compare  0x0000000c , 0x00000013 , 0x000000ff 
+ 00030622  0x000085d2 nbranch  0x00007792 , 0x00000001 
+ 00030623  0x000085d3 deposit  0x00000002 
+ 00030624  0x000085d4 istore  0x00000004 , 0x00000005 
+ 00030625  0x000085d5 increase  0xffffffe8 , 0x00000005 
+ 00030626  0x000085d6 increase  0x00000001 , 0x00000012 
+ 00030627  0x000085d7 compare  0x00000006 , 0x00000012 , 0x000000ff 
+ 00030628  0x000085d8 nbranch  0x00007790 , 0x00000001 
+ 00030629  0x000085d9 arg  0x000006e6 , 0x00000011 
+ 00030630  0x000085da copy  0x0000000b , 0x00000005 
+ 00030631  0x000085db branch  0x0000775f 
+ 00030632  0x000085df copy  0x00000011 , 0x00000012 
+ 00030633  0x000085e0 branch  0x00007786 
+ 00030634  0x000085e3 copy  0x00000011 , 0x00000030 
+ 00030635  0x000085e5 copy  0x00000030 , 0x00000011 
+ 00030636  0x000085e6 ifetch  0x00000001 , 0x00000011 
+ 00030637  0x000085e7 isolate1  0x00000000 , 0x0000003f 
+ 00030638  0x000085e8 rtn  0x00000001 
+ 00030639  0x000085e9 call  0x0000772d 
+ 00030640  0x000085ea ifetch  0x00000001 , 0x00000012 
+ 00030641  0x000085eb isolate0  0x00000000 , 0x0000003f 
+ 00030642  0x000085ec branch  0x000077ba , 0x00000001 
+ 00030643  0x000085ed arg  0x00000886 , 0x00000011 
+ 00030644  0x000085ee copy  0x00000012 , 0x00000005 
+ 00030645  0x000085ef call  0x00007711 
+ 00030646  0x000085f0 ifetch  0x00000001 , 0x00000012 
+ 00030647  0x000085f1 iadd  0x00000013 , 0x0000003f 
+ 00030648  0x000085f2 istore  0x00000001 , 0x00000012 
+ 00030649  0x000085f3 increase  0xffffffe8 , 0x00000012 
+ 00030650  0x000085f5 add  0x00000012 , 0x00000018 , 0x00000011 
+ 00030651  0x000085f6 force  0x00000007 , 0x00000039 
+ 00030652  0x000085f7 call  0x0000772f 
+ 00030653  0x000085f8 branch  0x000077ab 
+ 00030654  0x000085fc copy  0x00000005 , 0x0000000b 
+ 00030655  0x000085fd arg  0x00000746 , 0x00000005 
+ 00030656  0x000085fe call  0x00007ec5 
+ 00030657  0x000085ff force  0x00000000 , 0x0000003f 
+ 00030658  0x00008600 store  0x00000004 , 0x000006fe 
+ 00030659  0x00008601 store  0x00000004 , 0x0000075e 
+ 00030660  0x00008602 jam  0x00000001 , 0x00000746 
+ 00030661  0x00008603 arg  0x000006e6 , 0x00000005 
+ 00030662  0x00008604 call  0x00007ec5 
+ 00030663  0x00008605 arg  0x00000886 , 0x00000006 
+ 00030664  0x00008606 arg  0x00000716 , 0x00000005 
+ 00030665  0x00008607 call  0x00007ebe 
+ 00030666  0x00008608 copy  0x00000011 , 0x00000006 
+ 00030667  0x00008609 arg  0x0000072e , 0x00000005 
+ 00030668  0x0000860a call  0x00007ebe 
+ 00030669  0x0000860c arg  0x0000072e , 0x00000006 
+ 00030670  0x0000860d call  0x000076f5 
+ 00030671  0x0000860e branch  0x000077f6 , 0x00000034 
+ 00030672  0x0000860f arg  0x0000072e , 0x00000011 
+ 00030673  0x00008610 arg  0x00000746 , 0x00000012 
+ 00030674  0x00008611 call  0x000077aa 
+ 00030675  0x00008613 arg  0x00000716 , 0x00000011 
+ 00030676  0x00008614 arg  0x000006e6 , 0x00000012 
+ 00030677  0x00008615 call  0x000077aa 
+ 00030678  0x00008616 arg  0x0000072e , 0x00000011 
+ 00030679  0x00008617 arg  0x00000716 , 0x00000012 
+ 00030680  0x00008618 call  0x00007704 
+ 00030681  0x00008619 branch  0x000077e8 , 0x00000002 
+ 00030682  0x0000861a arg  0x00000716 , 0x00000011 
+ 00030683  0x0000861b arg  0x0000072e , 0x00000012 
+ 00030684  0x0000861c copy  0x00000011 , 0x00000005 
+ 00030685  0x0000861d call  0x0000771f 
+ 00030686  0x0000861e arg  0x00000746 , 0x00000011 
+ 00030687  0x0000861f arg  0x000006e6 , 0x00000012 
+ 00030688  0x00008620 copy  0x00000012 , 0x00000005 
+ 00030689  0x00008621 call  0x00007711 
+ 00030690  0x00008622 ifetch  0x00000001 , 0x00000011 
+ 00030691  0x00008623 iadd  0x00000013 , 0x00000013 
+ 00030692  0x00008624 ifetch  0x00000001 , 0x00000012 
+ 00030693  0x00008625 iadd  0x00000013 , 0x0000003f 
+ 00030694  0x00008626 istore  0x00000001 , 0x00000012 
+ 00030695  0x00008627 branch  0x000077cd 
+ 00030696  0x00008629 arg  0x0000072e , 0x00000011 
+ 00030697  0x0000862a arg  0x00000716 , 0x00000012 
+ 00030698  0x0000862b copy  0x00000011 , 0x00000005 
+ 00030699  0x0000862c call  0x0000771f 
+ 00030700  0x0000862d arg  0x000006e6 , 0x00000011 
+ 00030701  0x0000862e arg  0x00000746 , 0x00000012 
+ 00030702  0x0000862f copy  0x00000012 , 0x00000005 
+ 00030703  0x00008630 call  0x00007711 
+ 00030704  0x00008631 ifetch  0x00000001 , 0x00000011 
+ 00030705  0x00008632 iadd  0x00000013 , 0x00000013 
+ 00030706  0x00008633 ifetch  0x00000001 , 0x00000012 
+ 00030707  0x00008634 iadd  0x00000013 , 0x0000003f 
+ 00030708  0x00008635 istore  0x00000001 , 0x00000012 
+ 00030709  0x00008636 branch  0x000077cd 
+ 00030710  0x00008638 arg  0x00000746 , 0x00000005 
+ 00030711  0x00008639 call  0x00007ec5 
+ 00030712  0x0000863a fetch  0x00000001 , 0x000006fe 
+ 00030713  0x0000863b store  0x00000001 , 0x00000746 
+ 00030714  0x0000863c store  0x00000001 , 0x0000074e 
+ 00030715  0x0000863d arg  0x00000746 , 0x00000011 
+ 00030716  0x0000863e arg  0x000006e6 , 0x00000012 
+ 00030717  0x0000863f copy  0x00000012 , 0x00000005 
+ 00030718  0x00008640 call  0x00007755 
+ 00030719  0x00008641 arg  0x00000886 , 0x00000011 
+ 00030720  0x00008642 arg  0x000006e6 , 0x00000012 
+ 00030721  0x00008643 copy  0x0000000b , 0x00000005 
+ 00030722  0x00008644 branch  0x00007758 
+ 00030723  0x0000864a arg  0x000006a6 , 0x00000011 
+ 00030724  0x0000864b arg  0x0000075e , 0x00000005 
+ 00030725  0x0000864c call  0x000077a8 
+ 00030726  0x0000864d arg  0x0000075e , 0x00000011 
+ 00030727  0x0000864e arg  0x00000776 , 0x00000005 
+ 00030728  0x0000864f call  0x000077a8 
+ 00030729  0x00008650 arg  0x0000089e , 0x00000011 
+ 00030730  0x00008651 arg  0x00000776 , 0x00000012 
+ 00030731  0x00008652 arg  0x00000776 , 0x00000005 
+ 00030732  0x00008653 call  0x00007786 
+ 00030733  0x00008654 arg  0x00000676 , 0x00000011 
+ 00030734  0x00008655 arg  0x0000075e , 0x00000005 
+ 00030735  0x00008656 call  0x000077a8 
+ 00030736  0x00008657 arg  0x0000075e , 0x00000006 
+ 00030737  0x00008658 arg  0x0000072e , 0x00000005 
+ 00030738  0x00008659 call  0x00007ebe 
+ 00030739  0x0000865a arg  0x0000072e , 0x00000011 
+ 00030740  0x0000865b call  0x00007748 
+ 00030741  0x0000865c arg  0x0000075e , 0x00000011 
+ 00030742  0x0000865d arg  0x0000072e , 0x00000012 
+ 00030743  0x0000865e arg  0x0000075e , 0x00000005 
+ 00030744  0x0000865f call  0x00007755 
+ 00030745  0x00008660 arg  0x0000075e , 0x00000011 
+ 00030746  0x00008661 arg  0x00000776 , 0x00000012 
+ 00030747  0x00008662 arg  0x0000075e , 0x00000005 
+ 00030748  0x00008663 call  0x00007755 
+ 00030749  0x00008664 arg  0x00000676 , 0x00000006 
+ 00030750  0x00008665 arg  0x0000072e , 0x00000005 
+ 00030751  0x00008666 call  0x00007ebe 
+ 00030752  0x00008667 arg  0x0000068e , 0x00000011 
+ 00030753  0x00008668 arg  0x00000776 , 0x00000005 
+ 00030754  0x00008669 call  0x000077a8 
+ 00030755  0x0000866a arg  0x0000072e , 0x00000011 
+ 00030756  0x0000866b call  0x00007748 
+ 00030757  0x0000866c arg  0x0000072e , 0x00000011 
+ 00030758  0x0000866d call  0x00007748 
+ 00030759  0x0000866e arg  0x0000072e , 0x00000011 
+ 00030760  0x0000866f arg  0x00000776 , 0x00000012 
+ 00030761  0x00008670 arg  0x0000072e , 0x00000005 
+ 00030762  0x00008671 call  0x00007786 
+ 00030763  0x00008672 arg  0x00000776 , 0x00000011 
+ 00030764  0x00008673 arg  0x00000746 , 0x00000005 
+ 00030765  0x00008674 call  0x000077a8 
+ 00030766  0x00008675 arg  0x00000746 , 0x00000011 
+ 00030767  0x00008676 call  0x00007748 
+ 00030768  0x00008677 arg  0x00000746 , 0x00000011 
+ 00030769  0x00008678 call  0x00007748 
+ 00030770  0x00008679 arg  0x00000746 , 0x00000011 
+ 00030771  0x0000867a call  0x00007748 
+ 00030772  0x0000867b arg  0x0000068e , 0x00000006 
+ 00030773  0x0000867c arg  0x00000776 , 0x00000005 
+ 00030774  0x0000867d call  0x00007ebe 
+ 00030775  0x0000867e arg  0x00000776 , 0x00000011 
+ 00030776  0x0000867f call  0x00007748 
+ 00030777  0x00008680 arg  0x00000776 , 0x00000011 
+ 00030778  0x00008681 arg  0x000006a6 , 0x00000012 
+ 00030779  0x00008682 arg  0x000006a6 , 0x00000005 
+ 00030780  0x00008683 call  0x00007786 
+ 00030781  0x00008684 arg  0x0000075e , 0x00000011 
+ 00030782  0x00008685 arg  0x00000776 , 0x00000005 
+ 00030783  0x00008686 call  0x000077a8 
+ 00030784  0x00008687 arg  0x00000776 , 0x00000011 
+ 00030785  0x00008688 arg  0x0000072e , 0x00000012 
+ 00030786  0x00008689 arg  0x00000776 , 0x00000005 
+ 00030787  0x0000868a call  0x00007758 
+ 00030788  0x0000868b arg  0x00000776 , 0x00000011 
+ 00030789  0x0000868c arg  0x0000072e , 0x00000012 
+ 00030790  0x0000868d arg  0x00000676 , 0x00000005 
+ 00030791  0x0000868e call  0x00007758 
+ 00030792  0x0000868f arg  0x0000072e , 0x00000011 
+ 00030793  0x00008690 arg  0x00000676 , 0x00000012 
+ 00030794  0x00008691 arg  0x00000776 , 0x00000005 
+ 00030795  0x00008692 call  0x00007758 
+ 00030796  0x00008693 arg  0x00000776 , 0x00000011 
+ 00030797  0x00008694 arg  0x0000075e , 0x00000012 
+ 00030798  0x00008695 arg  0x00000776 , 0x00000005 
+ 00030799  0x00008696 call  0x00007786 
+ 00030800  0x00008697 arg  0x00000776 , 0x00000011 
+ 00030801  0x00008698 arg  0x00000746 , 0x00000012 
+ 00030802  0x00008699 arg  0x0000068e , 0x00000005 
+ 00030803  0x0000869a branch  0x00007758 
+ 00030804  0x0000869f arg  0x00000616 , 0x00000011 
+ 00030805  0x000086a0 arg  0x0000078e , 0x00000005 
+ 00030806  0x000086a1 call  0x000077a8 
+ 00030807  0x000086a2 arg  0x00000676 , 0x00000011 
+ 00030808  0x000086a3 arg  0x0000078e , 0x00000012 
+ 00030809  0x000086a4 arg  0x00000746 , 0x00000005 
+ 00030810  0x000086a5 call  0x00007786 
+ 00030811  0x000086a6 arg  0x00000616 , 0x00000011 
+ 00030812  0x000086a7 arg  0x0000078e , 0x00000012 
+ 00030813  0x000086a8 arg  0x0000078e , 0x00000005 
+ 00030814  0x000086a9 call  0x00007786 
+ 00030815  0x000086aa arg  0x0000068e , 0x00000011 
+ 00030816  0x000086ab arg  0x0000078e , 0x00000012 
+ 00030817  0x000086ac arg  0x0000072e , 0x00000005 
+ 00030818  0x000086ad call  0x00007786 
+ 00030819  0x000086ae arg  0x000006a6 , 0x00000011 
+ 00030820  0x000086af arg  0x0000078e , 0x00000005 
+ 00030821  0x000086b0 call  0x000077a8 
+ 00030822  0x000086b1 arg  0x000005e6 , 0x00000011 
+ 00030823  0x000086b2 arg  0x0000078e , 0x00000012 
+ 00030824  0x000086b3 arg  0x0000075e , 0x00000005 
+ 00030825  0x000086b4 call  0x00007786 
+ 00030826  0x000086b5 arg  0x000006a6 , 0x00000011 
+ 00030827  0x000086b6 arg  0x0000078e , 0x00000012 
+ 00030828  0x000086b7 arg  0x0000078e , 0x00000005 
+ 00030829  0x000086b8 call  0x00007786 
+ 00030830  0x000086b9 arg  0x000005fe , 0x00000011 
+ 00030831  0x000086ba arg  0x0000078e , 0x00000012 
+ 00030832  0x000086bb arg  0x00000776 , 0x00000005 
+ 00030833  0x000086bc call  0x00007786 
+ 00030834  0x000086bd arg  0x00000746 , 0x00000011 
+ 00030835  0x000086be arg  0x0000075e , 0x00000012 
+ 00030836  0x000086bf arg  0x0000078e , 0x00000005 
+ 00030837  0x000086c0 call  0x00007758 
+ 00030838  0x000086c1 arg  0x00000746 , 0x00000011 
+ 00030839  0x000086c2 arg  0x0000075e , 0x00000012 
+ 00030840  0x000086c3 arg  0x00000746 , 0x00000005 
+ 00030841  0x000086c4 call  0x00007755 
+ 00030842  0x000086c5 arg  0x0000072e , 0x00000011 
+ 00030843  0x000086c6 arg  0x00000776 , 0x00000012 
+ 00030844  0x000086c7 arg  0x0000075e , 0x00000005 
+ 00030845  0x000086c8 call  0x00007758 
+ 00030846  0x000086c9 arg  0x0000072e , 0x00000011 
+ 00030847  0x000086ca arg  0x00000776 , 0x00000012 
+ 00030848  0x000086cb arg  0x0000072e , 0x00000005 
+ 00030849  0x000086cc call  0x00007755 
+ 00030850  0x000086cd arg  0x0000072e , 0x00000011 
+ 00030851  0x000086ce arg  0x0000078e , 0x00000012 
+ 00030852  0x000086cf arg  0x0000072e , 0x00000005 
+ 00030853  0x000086d0 call  0x00007786 
+ 00030854  0x000086d1 arg  0x000006a6 , 0x00000011 
+ 00030855  0x000086d2 arg  0x00000616 , 0x00000012 
+ 00030856  0x000086d3 arg  0x00000776 , 0x00000005 
+ 00030857  0x000086d4 call  0x00007786 
+ 00030858  0x000086d5 arg  0x00000776 , 0x00000011 
+ 00030859  0x000086d6 arg  0x0000078e , 0x00000012 
+ 00030860  0x000086d7 arg  0x000006a6 , 0x00000005 
+ 00030861  0x000086d8 call  0x00007786 
+ 00030862  0x000086d9 arg  0x0000078e , 0x00000011 
+ 00030863  0x000086da arg  0x0000078e , 0x00000005 
+ 00030864  0x000086db call  0x000077a8 
+ 00030865  0x000086dc arg  0x0000078e , 0x00000011 
+ 00030866  0x000086dd arg  0x00000746 , 0x00000012 
+ 00030867  0x000086de arg  0x00000776 , 0x00000005 
+ 00030868  0x000086df call  0x00007786 
+ 00030869  0x000086e0 arg  0x0000078e , 0x00000011 
+ 00030870  0x000086e1 arg  0x0000072e , 0x00000012 
+ 00030871  0x000086e2 arg  0x0000072e , 0x00000005 
+ 00030872  0x000086e3 call  0x00007786 
+ 00030873  0x000086e4 arg  0x0000075e , 0x00000011 
+ 00030874  0x000086e5 arg  0x00000676 , 0x00000005 
+ 00030875  0x000086e6 call  0x000077a8 
+ 00030876  0x000086e7 arg  0x00000676 , 0x00000011 
+ 00030877  0x000086e8 arg  0x00000776 , 0x00000012 
+ 00030878  0x000086e9 arg  0x00000676 , 0x00000005 
+ 00030879  0x000086ea call  0x00007758 
+ 00030880  0x000086eb arg  0x00000676 , 0x00000006 
+ 00030881  0x000086ec arg  0x0000078e , 0x00000005 
+ 00030882  0x000086ed call  0x00007ebe 
+ 00030883  0x000086ee arg  0x0000078e , 0x00000011 
+ 00030884  0x000086ef call  0x00007748 
+ 00030885  0x000086f0 arg  0x00000776 , 0x00000011 
+ 00030886  0x000086f1 arg  0x0000078e , 0x00000012 
+ 00030887  0x000086f2 arg  0x00000776 , 0x00000005 
+ 00030888  0x000086f3 call  0x00007758 
+ 00030889  0x000086f4 arg  0x00000776 , 0x00000011 
+ 00030890  0x000086f5 arg  0x0000075e , 0x00000012 
+ 00030891  0x000086f6 arg  0x0000075e , 0x00000005 
+ 00030892  0x000086f7 call  0x00007786 
+ 00030893  0x000086f8 arg  0x0000075e , 0x00000011 
+ 00030894  0x000086f9 arg  0x0000072e , 0x00000012 
+ 00030895  0x000086fa arg  0x0000068e , 0x00000005 
+ 00030896  0x000086fb call  0x00007758 
+ 00030897  0x000086fc arg  0x0000068e , 0x00000011 
+ 00030898  0x000086fd arg  0x00000886 , 0x00000012 
+ 00030899  0x000086fe arg  0x0000068e , 0x00000005 
+ 00030900  0x000086ff force  0x00000000 , 0x00000013 
+ 00030901  0x00008700 fetch  0x00000001 , 0x0000068e 
+ 00030902  0x00008701 isolate1  0x00000000 , 0x0000003f 
+ 00030903  0x00008702 call  0x00007711 , 0x00000001 
+ 00030904  0x00008703 copy  0x00000013 , 0x00000030 
+ 00030905  0x00008704 arg  0x0000068e , 0x00000011 
+ 00030906  0x00008705 call  0x0000772d 
+ 00030907  0x00008706 fetch  0x00000001 , 0x000006a5 
+ 00030908  0x00008707 isolate1  0x00000000 , 0x00000030 
+ 00030909  0x00008708 setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00030910  0x00008709 store  0x00000001 , 0x000006a5 
+ 00030911  0x0000870a rtn 
+ 00030912  0x0000870f fetch  0x00000001 , 0x000005e3 
+ 00030913  0x00008710 increase  0xffffffff , 0x0000003f 
+ 00030914  0x00008711 nrtn  0x00000002 
+ 00030915  0x00008712 store  0x00000001 , 0x000005e3 
+ 00030916  0x00008713 fetch  0x00000001 , 0x000005e2 
+ 00030917  0x00008714 call  0x00007803 , 0x00000034 
+ 00030918  0x00008715 fetch  0x00000001 , 0x000005e3 
+ 00030919  0x00008716 arg  0x000006be , 0x00000006 
+ 00030920  0x00008717 call  0x000076ec 
+ 00030921  0x00008718 branch  0x000078c0 , 0x00000001 
+ 00030922  0x00008719 fetch  0x00000001 , 0x000005e2 
+ 00030923  0x0000871a nbranch  0x000078ce , 0x00000034 
+ 00030924  0x0000871b call  0x00007854 
+ 00030925  0x0000871c branch  0x000078c0 
+ 00030926  0x0000871e jam  0x00000000 , 0x000005e2 
+ 00030927  0x0000871f arg  0x000005e6 , 0x00000006 
+ 00030928  0x00008720 arg  0x00000676 , 0x00000005 
+ 00030929  0x00008721 call  0x000076f2 
+ 00030930  0x00008722 branch  0x000078c0 
+ 00030931  0x00008726 arg  0x000006a6 , 0x00000011 
+ 00030932  0x00008727 arg  0x00000776 , 0x00000005 
+ 00030933  0x00008728 call  0x000077be 
+ 00030934  0x00008729 arg  0x00000776 , 0x00000011 
+ 00030935  0x0000872a arg  0x0000072e , 0x00000005 
+ 00030936  0x0000872b call  0x000077a8 
+ 00030937  0x0000872c arg  0x00000676 , 0x00000011 
+ 00030938  0x0000872d arg  0x0000072e , 0x00000012 
+ 00030939  0x0000872e arg  0x0000062e , 0x00000005 
+ 00030940  0x0000872f call  0x00007786 
+ 00030941  0x00008730 arg  0x00000776 , 0x00000011 
+ 00030942  0x00008731 arg  0x0000072e , 0x00000012 
+ 00030943  0x00008732 arg  0x0000075e , 0x00000005 
+ 00030944  0x00008733 call  0x00007786 
+ 00030945  0x00008734 arg  0x0000068e , 0x00000011 
+ 00030946  0x00008735 arg  0x0000075e , 0x00000012 
+ 00030947  0x00008736 arg  0x00000646 , 0x00000005 
+ 00030948  0x00008737 branch  0x00007786 
+ 00030949  0x0000873c ifetch  0x00000004 , 0x00000006 
+ 00030950  0x0000873d force  0x00000004 , 0x00000011 
+ 00030951  0x0000873e increase  0x00000003 , 0x00000005 
+ 00030952  0x00008740 istore  0x00000001 , 0x00000005 
+ 00030953  0x00008741 rshift8  0x0000003f , 0x0000003f 
+ 00030954  0x00008742 increase  0xfffffffe , 0x00000005 
+ 00030955  0x00008743 increase  0xffffffff , 0x00000011 
+ 00030956  0x00008744 nbranch  0x000078e8 , 0x00000005 
+ 00030957  0x00008745 increase  0x00000005 , 0x00000005 
+ 00030958  0x00008746 loop  0x000078e5 
+ 00030959  0x00008747 rtn 
+ 00030960  0x0000874b lshift2  0x00000007 , 0x0000003f 
+ 00030961  0x0000874c iadd  0x0000000b , 0x00000006 
+ 00030962  0x0000874d ifetch  0x00000004 , 0x00000006 
+ 00030963  0x0000874e rtn 
+ 00030964  0x00008751 force  0x00000010 , 0x00000030 
+ 00030965  0x00008752 arg  0x000005e6 , 0x0000000b 
+ 00030966  0x00008754 add  0x00000030 , 0xfffffff9 , 0x00000007 
+ 00030967  0x00008755 call  0x000078f0 
+ 00030968  0x00008756 iforce  0x00000002 
+ 00030969  0x00008757 add  0x00000030 , 0xfffffff0 , 0x00000007 
+ 00030970  0x00008758 call  0x000078f0 
+ 00030971  0x00008759 iadd  0x00000002 , 0x00000002 
+ 00030972  0x0000875a add  0x00000030 , 0xfffffffe , 0x00000007 
+ 00030973  0x0000875b call  0x000078f0 
+ 00030974  0x0000875c shasx  0x0000003f , 0x00000001 , 0x0000003f 
+ 00030975  0x0000875d iadd  0x00000002 , 0x00000002 
+ 00030976  0x0000875e add  0x00000030 , 0xfffffff1 , 0x00000007 
+ 00030977  0x0000875f call  0x000078f0 
+ 00030978  0x00008760 shasx  0x0000003f , 0x00000000 , 0x0000003f 
+ 00030979  0x00008761 iadd  0x00000002 , 0x00000002 
+ 00030980  0x00008762 lshift2  0x00000030 , 0x0000003f 
+ 00030981  0x00008763 iadd  0x0000000b , 0x00000005 
+ 00030982  0x00008764 istoret  0x00000004 , 0x00000005 
+ 00030983  0x00008765 increase  0x00000001 , 0x00000030 
+ 00030984  0x00008766 compare  0x00000040 , 0x00000030 , 0x000000ff 
+ 00030985  0x00008767 nbranch  0x000078f6 , 0x00000001 
+ 00030986  0x00008768 rtn 
+ 00030987  0x0000876c arg  0x000008fe , 0x00000006 
+ 00030988  0x0000876d force  0x00000007 , 0x00000038 
+ 00030989  0x0000876f ifetch  0x00000004 , 0x00000006 
+ 00030990  0x00008770 iforce  0x0000002f 
+ 00030991  0x00008771 increase  0xffffffff , 0x00000038 
+ 00030992  0x00008772 branch  0x0000790d , 0x00000002 
+ 00030993  0x00008773 rtn 
+ 00030994  0x00008776 bpatchx  0x000000ec , 0x0000403d 
+ 00030995  0x00008777 call  0x000078f4 
+ 00030996  0x00008778 arg  0x000006e6 , 0x00000005 
+ 00030997  0x00008779 force  0x00000000 , 0x00000038 
+ 00030998  0x0000877b deposit  0x0000002f 
+ 00030999  0x0000877c istore  0x00000004 , 0x00000005 
+ 00031000  0x0000877d increase  0x00000001 , 0x00000038 
+ 00031001  0x0000877e compare  0x00000008 , 0x00000038 , 0x000000ff 
+ 00031002  0x0000877f nbranch  0x00007916 , 0x00000001 
+ 00031003  0x00008780 call  0x000074b9 
+ 00031004  0x00008781 arg  0x00008700 , 0x0000000b 
+ 00031005  0x00008782 arg  0x000005e6 , 0x00000030 
+ 00031006  0x00008783 force  0x00000040 , 0x00000039 
+ 00031007  0x00008785 ifetcht  0x00000004 , 0x00000030 
+ 00031008  0x00008786 ifetch  0x00000004 , 0x0000000b 
+ 00031009  0x00008787 increase  0x00000004 , 0x0000000b 
+ 00031010  0x00008788 increase  0x00000004 , 0x00000030 
+ 00031011  0x00008789 iadd  0x00000002 , 0x0000003f 
+ 00031012  0x0000878a force  0x00000007 , 0x00000038 
+ 00031013  0x0000878b iadd  0x0000002f , 0x00000002 
+ 00031014  0x0000878c force  0x00000004 , 0x00000038 
+ 00031015  0x0000878d shasx  0x0000002f , 0x00000003 , 0x0000003f 
+ 00031016  0x0000878e iadd  0x00000002 , 0x00000002 
+ 00031017  0x0000878f force  0x00000005 , 0x00000038 
+ 00031018  0x00008790 deposit  0x0000002f 
+ 00031019  0x00008791 force  0x00000006 , 0x00000038 
+ 00031020  0x00008792 ixor  0x0000002f , 0x0000003f 
+ 00031021  0x00008793 force  0x00000004 , 0x00000038 
+ 00031022  0x00008794 iand  0x0000002f , 0x0000003f 
+ 00031023  0x00008795 force  0x00000006 , 0x00000038 
+ 00031024  0x00008796 ixor  0x0000002f , 0x0000003f 
+ 00031025  0x00008797 iadd  0x00000002 , 0x00000002 
+ 00031026  0x00008798 force  0x00000007 , 0x00000038 
+ 00031027  0x00008799 copy  0x00000002 , 0x0000002f 
+ 00031028  0x0000879a force  0x00000003 , 0x00000038 
+ 00031029  0x0000879b deposit  0x0000002f 
+ 00031030  0x0000879c iadd  0x00000002 , 0x0000002f 
+ 00031031  0x0000879d force  0x00000000 , 0x00000038 
+ 00031032  0x0000879e deposit  0x0000002f 
+ 00031033  0x0000879f force  0x00000001 , 0x00000038 
+ 00031034  0x000087a0 iand  0x0000002f , 0x00000002 
+ 00031035  0x000087a1 ior  0x0000002f , 0x0000003f 
+ 00031036  0x000087a2 force  0x00000002 , 0x00000038 
+ 00031037  0x000087a3 iand  0x0000002f , 0x0000003f 
+ 00031038  0x000087a4 ior  0x00000002 , 0x00000002 
+ 00031039  0x000087a5 force  0x00000000 , 0x00000038 
+ 00031040  0x000087a6 shasx  0x0000002f , 0x00000002 , 0x0000003f 
+ 00031041  0x000087a7 iadd  0x00000002 , 0x0000003f 
+ 00031042  0x000087a8 force  0x00000007 , 0x00000038 
+ 00031043  0x000087a9 iadd  0x0000002f , 0x0000002f 
+ 00031044  0x000087aa regexrot 
+ 00031045  0x000087ab loop  0x0000791f 
+ 00031046  0x000087ac arg  0x000006e6 , 0x00000006 
+ 00031047  0x000087ad force  0x00000000 , 0x00000038 
+ 00031048  0x000087af ifetch  0x00000004 , 0x00000006 
+ 00031049  0x000087b0 iadd  0x0000002f , 0x0000002f 
+ 00031050  0x000087b1 increase  0x00000001 , 0x00000038 
+ 00031051  0x000087b2 compare  0x00000008 , 0x00000038 , 0x000000ff 
+ 00031052  0x000087b3 nbranch  0x00007948 , 0x00000001 
+ 00031053  0x000087b4 branch  0x000074bd 
+ 00031054  0x000087b8 arg  0x00000a3e , 0x00000005 
+ 00031055  0x000087b9 force  0x00000007 , 0x00000038 
+ 00031056  0x000087bb deposit  0x0000002f 
+ 00031057  0x000087bc istore  0x00000004 , 0x00000005 
+ 00031058  0x000087bd increase  0xffffffff , 0x00000038 
+ 00031059  0x000087be branch  0x00007950 , 0x00000002 
+ 00031060  0x000087bf rtn 
+ 00031061  0x000087c3 arg  0x000005e6 , 0x00000005 
+ 00031062  0x000087c4 increase  0xfffffffc , 0x00000006 
+ 00031063  0x000087c5 sub  0x00000039 , 0x00000010 , 0x00000011 
+ 00031064  0x000087c7 ifetch  0x00000004 , 0x00000006 
+ 00031065  0x000087c8 ixor  0x00000002 , 0x0000003f 
+ 00031066  0x000087c9 istore  0x00000004 , 0x00000005 
+ 00031067  0x000087ca increase  0xfffffff8 , 0x00000006 
+ 00031068  0x000087cb loop  0x00007958 
+ 00031069  0x000087cc copy  0x00000011 , 0x00000039 
+ 00031070  0x000087cd deposit  0x00000002 
+ 00031071  0x000087cf istore  0x00000004 , 0x00000005 
+ 00031072  0x000087d0 loop  0x0000795f 
+ 00031073  0x000087d1 rtn 
+ 00031074  0x000087d4 call  0x00007967 
+ 00031075  0x000087d5 call  0x0000794e 
+ 00031076  0x000087d6 branch  0x0000798d 
+ 00031077  0x000087d9 call  0x00007967 
+ 00031078  0x000087da branch  0x0000798d 
+ 00031079  0x000087dd arg  0x000009de , 0x00000006 
+ 00031080  0x000087de arg  0x000005e6 , 0x00000005 
+ 00031081  0x000087df force  0x00000006 , 0x00000039 
+ 00031082  0x000087e0 call  0x00007a71 
+ 00031083  0x000087e1 arg  0x00004642 , 0x00000006 
+ 00031084  0x000087e2 force  0x00000006 , 0x00000039 
+ 00031085  0x000087e3 call  0x00007a71 
+ 00031086  0x000087e4 arg  0x00000a3e , 0x00000006 
+ 00031087  0x000087e5 call  0x00007a70 
+ 00031088  0x000087e6 call  0x0000790b 
+ 00031089  0x000087e7 call  0x00007912 
+ 00031090  0x000087e8 arg  0x00000a2e , 0x00000006 
+ 00031091  0x000087e9 arg  0x000005e6 , 0x00000005 
+ 00031092  0x000087ea branch  0x00007984 
+ 00031093  0x000087ed arg  0x00004642 , 0x00000006 
+ 00031094  0x000087ee arg  0x000005e6 , 0x00000005 
+ 00031095  0x000087ef force  0x00000006 , 0x00000039 
+ 00031096  0x000087f0 call  0x00007a71 
+ 00031097  0x000087f1 arg  0x000009de , 0x00000006 
+ 00031098  0x000087f2 force  0x00000006 , 0x00000039 
+ 00031099  0x000087f3 call  0x00007a71 
+ 00031100  0x000087f4 arg  0x00000a2e , 0x00000006 
+ 00031101  0x000087f5 call  0x00007a70 
+ 00031102  0x000087f6 call  0x0000790b 
+ 00031103  0x000087f7 call  0x00007912 
+ 00031104  0x000087f8 arg  0x00000a3e , 0x00000006 
+ 00031105  0x000087f9 arg  0x000005e6 , 0x00000005 
+ 00031106  0x000087fa call  0x00007984 
+ 00031107  0x000087fb branch  0x0000798d 
+ 00031108  0x000087fe call  0x00007a70 
+ 00031109  0x000087ff setarg  0x00800000 
+ 00031110  0x00008800 lshift8  0x0000003f , 0x0000003f 
+ 00031111  0x00008801 istore  0x00000004 , 0x00000005 
+ 00031112  0x00008802 force  0x00000005 , 0x00000039 
+ 00031113  0x00008803 call  0x00007ec6 
+ 00031114  0x00008804 setarg  0x00000280 
+ 00031115  0x00008805 istore  0x00000004 , 0x00000005 
+ 00031116  0x00008806 branch  0x00007912 
+ 00031117  0x00008808 fetch  0x00000004 , 0x00000a3e 
+ 00031118  0x0000880a arg  0x000003e8 , 0x00000011 
+ 00031119  0x0000880b idiv  0x00000011 
+ 00031120  0x0000880c call  0x00007f86 
+ 00031121  0x0000880d remainder  0x0000003f 
+ 00031122  0x0000880e store  0x00000004 , 0x000009ba 
+ 00031123  0x0000880f quotient  0x0000003f 
+ 00031124  0x00008810 arg  0x000003e8 , 0x00000011 
+ 00031125  0x00008811 idiv  0x00000011 
+ 00031126  0x00008812 call  0x00007f86 
+ 00031127  0x00008813 remainder  0x0000003f 
+ 00031128  0x00008814 arg  0x000003e8 , 0x00000011 
+ 00031129  0x00008815 imul32  0x00000011 , 0x0000003f 
+ 00031130  0x00008816 fetcht  0x00000004 , 0x000009ba 
+ 00031131  0x00008817 iadd  0x00000002 , 0x0000003f 
+ 00031132  0x00008818 store  0x00000004 , 0x000009ba 
+ 00031133  0x00008819 rtn 
+ 00031134  0x0000881c jam  0x00000000 , 0x00004664 
+ 00031135  0x0000881d branch  0x000079a2 
+ 00031136  0x00008820 fetch  0x00000001 , 0x00004662 
+ 00031137  0x00008821 bne  0x00000002 , 0x0000799e 
+ 00031138  0x00008823 bpatchx  0x000000ed , 0x0000403d 
+ 00031139  0x00008824 setarg  0x00363636 
+ 00031140  0x00008825 lshift8  0x0000003f , 0x00000002 
+ 00031141  0x00008826 or_into  0x00000036 , 0x00000002 
+ 00031142  0x00008827 fetch  0x00000002 , 0x00000a7e 
+ 00031143  0x00008828 copy  0x0000003f , 0x00000006 
+ 00031144  0x00008829 force  0x00000004 , 0x00000039 
+ 00031145  0x0000882a call  0x00007955 
+ 00031146  0x0000882b call  0x0000790b 
+ 00031147  0x0000882c call  0x00007912 
+ 00031148  0x0000882d fetch  0x00000002 , 0x00000a80 
+ 00031149  0x0000882e copy  0x0000003f , 0x00000006 
+ 00031150  0x0000882f arg  0x000005e6 , 0x00000005 
+ 00031151  0x00008830 force  0x00000006 , 0x00000039 
+ 00031152  0x00008831 call  0x00007a71 
+ 00031153  0x00008832 fetch  0x00000002 , 0x00000a82 
+ 00031154  0x00008833 copy  0x0000003f , 0x00000006 
+ 00031155  0x00008834 force  0x00000006 , 0x00000039 
+ 00031156  0x00008835 call  0x00007a71 
+ 00031157  0x00008836 setarg  0x00800000 
+ 00031158  0x00008837 istore  0x00000003 , 0x00000005 
+ 00031159  0x00008839 fetch  0x00000001 , 0x00004664 
+ 00031160  0x0000883b istore  0x00000001 , 0x00000005 
+ 00031161  0x0000883c force  0x00000000 , 0x0000003f 
+ 00031162  0x0000883d istore  0x00000008 , 0x00000005 
+ 00031163  0x0000883e setarg  0x00000388 
+ 00031164  0x0000883f istore  0x00000004 , 0x00000005 
+ 00031165  0x00008840 call  0x00007912 
+ 00031166  0x00008841 call  0x0000794e 
+ 00031167  0x00008842 arg  0x00000a3e , 0x00000006 
+ 00031168  0x00008843 arg  0x00000706 , 0x00000005 
+ 00031169  0x00008844 call  0x00007ebd 
+ 00031170  0x00008846 setarg  0x005c5c5c 
+ 00031171  0x00008847 lshift8  0x0000003f , 0x00000002 
+ 00031172  0x00008848 or_into  0x0000005c , 0x00000002 
+ 00031173  0x00008849 fetch  0x00000002 , 0x00000a7e 
+ 00031174  0x0000884a copy  0x0000003f , 0x00000006 
+ 00031175  0x0000884b force  0x00000004 , 0x00000039 
+ 00031176  0x0000884c call  0x00007955 
+ 00031177  0x0000884d call  0x0000790b 
+ 00031178  0x0000884e call  0x00007912 
+ 00031179  0x0000884f arg  0x00000726 , 0x00000006 
+ 00031180  0x00008850 arg  0x000005e6 , 0x00000005 
+ 00031181  0x00008851 force  0x00000008 , 0x00000039 
+ 00031182  0x00008852 call  0x00007a71 
+ 00031183  0x00008853 setarg  0x00800000 
+ 00031184  0x00008854 lshift8  0x0000003f , 0x0000003f 
+ 00031185  0x00008855 istore  0x00000004 , 0x00000005 
+ 00031186  0x00008856 call  0x00007ec5 
+ 00031187  0x00008857 setarg  0x00000300 
+ 00031188  0x00008858 istore  0x00000004 , 0x00000005 
+ 00031189  0x00008859 call  0x00007912 
+ 00031190  0x0000885a branch  0x0000794e 
+ 00031191  0x0000885e setarg  0x00363636 
+ 00031192  0x0000885f lshift8  0x0000003f , 0x00000002 
+ 00031193  0x00008860 or_into  0x00000036 , 0x00000002 
+ 00031194  0x00008861 arg  0x00000a1e , 0x00000006 
+ 00031195  0x00008862 force  0x00000006 , 0x00000039 
+ 00031196  0x00008863 call  0x00007955 
+ 00031197  0x00008864 call  0x0000790b 
+ 00031198  0x00008865 call  0x00007912 
+ 00031199  0x00008866 fetch  0x00000002 , 0x00000a8a 
+ 00031200  0x00008867 copy  0x0000003f , 0x00000006 
+ 00031201  0x00008868 arg  0x000005e6 , 0x00000005 
+ 00031202  0x00008869 call  0x00007a70 
+ 00031203  0x0000886a fetch  0x00000002 , 0x00000a8c 
+ 00031204  0x0000886b copy  0x0000003f , 0x00000006 
+ 00031205  0x0000886c call  0x00007a70 
+ 00031206  0x0000886e setarg  0x0062746c 
+ 00031207  0x0000886f lshift8  0x0000003f , 0x0000003f 
+ 00031208  0x00008870 or_into  0x0000006b , 0x0000003f 
+ 00031209  0x00008871 istore  0x00000004 , 0x00000005 
+ 00031210  0x00008872 arg  0x00000733 , 0x00000006 
+ 00031211  0x00008873 force  0x00000003 , 0x00000039 
+ 00031212  0x00008874 call  0x00007a71 
+ 00031213  0x00008876 setarg  0x00800000 
+ 00031214  0x00008877 lshift8  0x0000003f , 0x0000003f 
+ 00031215  0x00008878 istore  0x00000004 , 0x00000005 
+ 00031216  0x00008879 force  0x00000000 , 0x0000003f 
+ 00031217  0x0000887a istore  0x00000008 , 0x00000005 
+ 00031218  0x0000887b setarg  0x00000380 
+ 00031219  0x0000887c istore  0x00000004 , 0x00000005 
+ 00031220  0x0000887d call  0x00007912 
+ 00031221  0x0000887f call  0x0000794e 
+ 00031222  0x00008880 arg  0x00000a3e , 0x00000006 
+ 00031223  0x00008881 arg  0x00000706 , 0x00000005 
+ 00031224  0x00008882 call  0x00007ebd 
+ 00031225  0x00008884 setarg  0x005c5c5c 
+ 00031226  0x00008885 lshift8  0x0000003f , 0x00000002 
+ 00031227  0x00008886 or_into  0x0000005c , 0x00000002 
+ 00031228  0x00008887 arg  0x00000a1e , 0x00000006 
+ 00031229  0x00008888 force  0x00000006 , 0x00000039 
+ 00031230  0x00008889 call  0x00007955 
+ 00031231  0x0000888a call  0x0000790b 
+ 00031232  0x0000888b call  0x00007912 
+ 00031233  0x0000888c arg  0x00000726 , 0x00000006 
+ 00031234  0x0000888d arg  0x000005e6 , 0x00000005 
+ 00031235  0x0000888e force  0x00000008 , 0x00000039 
+ 00031236  0x0000888f call  0x00007a71 
+ 00031237  0x00008890 setarg  0x00800000 
+ 00031238  0x00008891 lshift8  0x0000003f , 0x0000003f 
+ 00031239  0x00008892 istore  0x00000004 , 0x00000005 
+ 00031240  0x00008893 call  0x00007ec5 
+ 00031241  0x00008894 setarg  0x00000300 
+ 00031242  0x00008895 istore  0x00000004 , 0x00000005 
+ 00031243  0x00008896 call  0x00007912 
+ 00031244  0x00008897 branch  0x0000794e 
+ 00031245  0x0000889b fetch  0x00000001 , 0x00004662 
+ 00031246  0x0000889c bne  0x00000002 , 0x00007a1e 
+ 00031247  0x0000889e bpatchx  0x000000ee , 0x0000403d 
+ 00031248  0x0000889f setarg  0x00363636 
+ 00031249  0x000088a0 lshift8  0x0000003f , 0x00000002 
+ 00031250  0x000088a1 or_into  0x00000036 , 0x00000002 
+ 00031251  0x000088a2 arg  0x00000a1e , 0x00000006 
+ 00031252  0x000088a3 force  0x00000006 , 0x00000039 
+ 00031253  0x000088a4 call  0x00007955 
+ 00031254  0x000088a5 call  0x0000790b 
+ 00031255  0x000088a6 call  0x00007912 
+ 00031256  0x000088a7 arg  0x00000a3e , 0x00000006 
+ 00031257  0x000088a8 arg  0x000005e6 , 0x00000005 
+ 00031258  0x000088a9 call  0x00007a70 
+ 00031259  0x000088aa arg  0x00000a2e , 0x00000006 
+ 00031260  0x000088ab call  0x00007a70 
+ 00031261  0x000088ac branch  0x00007a33 
+ 00031262  0x000088af setarg  0x00000000 
+ 00031263  0x000088b0 store  0x00000004 , 0x0000468a 
+ 00031264  0x000088b1 branch  0x00007a0f 
+ 00031265  0x000088b4 setarg  0x00000000 
+ 00031266  0x000088b5 store  0x00000004 , 0x0000468a 
+ 00031267  0x000088b6 branch  0x00007a26 
+ 00031268  0x000088ba fetch  0x00000001 , 0x00004662 
+ 00031269  0x000088bb bne  0x00000002 , 0x00007a21 
+ 00031270  0x000088bd setarg  0x00363636 
+ 00031271  0x000088be lshift8  0x0000003f , 0x00000002 
+ 00031272  0x000088bf or_into  0x00000036 , 0x00000002 
+ 00031273  0x000088c0 arg  0x00000a1e , 0x00000006 
+ 00031274  0x000088c1 force  0x00000006 , 0x00000039 
+ 00031275  0x000088c2 call  0x00007955 
+ 00031276  0x000088c3 call  0x0000790b 
+ 00031277  0x000088c4 call  0x00007912 
+ 00031278  0x000088c6 arg  0x00000a2e , 0x00000006 
+ 00031279  0x000088c7 arg  0x000005e6 , 0x00000005 
+ 00031280  0x000088c8 call  0x00007a70 
+ 00031281  0x000088c9 arg  0x00000a3e , 0x00000006 
+ 00031282  0x000088ca call  0x00007a70 
+ 00031283  0x000088cc setarg  0x00000000 
+ 00031284  0x000088cd istore  0x00000008 , 0x00000005 
+ 00031285  0x000088ce istore  0x00000004 , 0x00000005 
+ 00031286  0x000088cf fetch  0x00000004 , 0x0000468a 
+ 00031287  0x000088d0 istore  0x00000004 , 0x00000005 
+ 00031288  0x000088d2 copy  0x00000005 , 0x00000002 
+ 00031289  0x000088d3 jam  0x00000080 , 0x00000726 
+ 00031290  0x000088d4 copy  0x00000002 , 0x00000005 
+ 00031291  0x000088d5 arg  0x00000736 , 0x00000006 
+ 00031292  0x000088d6 call  0x00007a70 
+ 00031293  0x000088d8 call  0x00007912 
+ 00031294  0x000088da arg  0x000005e6 , 0x00000005 
+ 00031295  0x000088db force  0x00000007 , 0x00000039 
+ 00031296  0x000088dc call  0x00007ec6 
+ 00031297  0x000088dd istore  0x00000004 , 0x00000005 
+ 00031298  0x000088de setarg  0x000003f8 
+ 00031299  0x000088df istore  0x00000004 , 0x00000005 
+ 00031300  0x000088e0 call  0x00007912 
+ 00031301  0x000088e1 call  0x0000794e 
+ 00031302  0x000088e3 arg  0x00000a3e , 0x00000006 
+ 00031303  0x000088e4 arg  0x00000706 , 0x00000005 
+ 00031304  0x000088e5 call  0x00007ebd 
+ 00031305  0x000088e7 setarg  0x005c5c5c 
+ 00031306  0x000088e8 lshift8  0x0000003f , 0x00000002 
+ 00031307  0x000088e9 or_into  0x0000005c , 0x00000002 
+ 00031308  0x000088ea arg  0x00000a1e , 0x00000006 
+ 00031309  0x000088eb force  0x00000006 , 0x00000039 
+ 00031310  0x000088ec call  0x00007955 
+ 00031311  0x000088ed call  0x0000790b 
+ 00031312  0x000088ee call  0x00007912 
+ 00031313  0x000088ef arg  0x00000726 , 0x00000006 
+ 00031314  0x000088f0 arg  0x000005e6 , 0x00000005 
+ 00031315  0x000088f1 force  0x00000008 , 0x00000039 
+ 00031316  0x000088f2 call  0x00007a71 
+ 00031317  0x000088f3 setarg  0x00800000 
+ 00031318  0x000088f4 lshift8  0x0000003f , 0x0000003f 
+ 00031319  0x000088f5 istore  0x00000004 , 0x00000005 
+ 00031320  0x000088f6 call  0x00007ec5 
+ 00031321  0x000088f7 setarg  0x00000300 
+ 00031322  0x000088f8 istore  0x00000004 , 0x00000005 
+ 00031323  0x000088f9 call  0x00007912 
+ 00031324  0x000088fa branch  0x0000794e 
+ 00031325  0x00008902 jam  0x000000c0 , 0x000005e3 
+ 00031326  0x00008904 fetch  0x00000001 , 0x000005e3 
+ 00031327  0x00008905 rtn  0x00000034 
+ 00031328  0x00008906 increase  0xffffffff , 0x0000003f 
+ 00031329  0x00008907 store  0x00000001 , 0x000005e3 
+ 00031330  0x00008908 arg  0x000006be , 0x00000006 
+ 00031331  0x00008909 call  0x000076ec 
+ 00031332  0x0000890a branch  0x00007a5e , 0x00000001 
+ 00031333  0x0000890b arg  0x000005e6 , 0x00000006 
+ 00031334  0x0000890c arg  0x00000676 , 0x00000005 
+ 00031335  0x0000890d branch  0x000076f2 
+ 00031336  0x00008910 call  0x00007803 
+ 00031337  0x00008911 fetch  0x00000001 , 0x000005e3 
+ 00031338  0x00008912 increase  0xffffffff , 0x0000003f 
+ 00031339  0x00008913 store  0x00000001 , 0x000005e3 
+ 00031340  0x00008914 arg  0x000006be , 0x00000006 
+ 00031341  0x00008915 call  0x000076ec 
+ 00031342  0x00008916 rtn  0x00000001 
+ 00031343  0x00008917 branch  0x00007854 
+ 00031344  0x0000891a force  0x00000004 , 0x00000039 
+ 00031345  0x0000891c increase  0xfffffffc , 0x00000006 
+ 00031346  0x0000891e ifetch  0x00000004 , 0x00000006 
+ 00031347  0x0000891f istore  0x00000004 , 0x00000005 
+ 00031348  0x00008920 increase  0xfffffff8 , 0x00000006 
+ 00031349  0x00008921 loop  0x00007a72 
+ 00031350  0x00008922 rtn 
+ 00031351  0x00008928 bpatchx  0x000000ef , 0x0000403d 
+ 00031352  0x00008929 fetch  0x00000001 , 0x000044be 
+ 00031353  0x0000892a branch  0x00005af0 , 0x00000034 
+ 00031354  0x0000892b call  0x00005aec 
+ 00031355  0x0000892c call  0x00007583 
+ 00031356  0x0000892e branch  0x00007a7d 
+ 00031357  0x00008934 fetch  0x00000001 , 0x000044c3 
+ 00031358  0x00008935 rtnne  0x00000000 
+ 00031359  0x00008936 fetch  0x00000001 , 0x000044c0 
+ 00031360  0x00008937 rtnne  0x00000000 
+ 00031361  0x00008939 arg  0x000045b2 , 0x00000005 
+ 00031362  0x0000893a force  0x0000000f , 0x00000007 
+ 00031363  0x0000893b call  0x000076a2 
+ 00031364  0x0000893c random  0x0000003f 
+ 00031365  0x0000893d rshift  0x0000003f , 0x0000003f 
+ 00031366  0x0000893e istore  0x00000002 , 0x00000005 
+ 00031367  0x00008940 arg  0x00000766 , 0x00000005 
+ 00031368  0x00008941 arg  0x000045b2 , 0x00000006 
+ 00031369  0x00008942 call  0x00007ebd 
+ 00031370  0x00008944 arg  0x00000646 , 0x00000005 
+ 00031371  0x00008945 arg  0x0000095e , 0x00000006 
+ 00031372  0x00008946 call  0x00007eb3 
+ 00031373  0x00008948 arg  0x00000686 , 0x00000005 
+ 00031374  0x00008949 call  0x00007ed0 
+ 00031375  0x0000894a jam  0x00000001 , 0x00000686 
+ 00031376  0x0000894c call  0x00007ac7 
+ 00031377  0x0000894d jam  0x00000003 , 0x000044c0 
+ 00031378  0x0000894e rtn 
+ 00031379  0x00008951 arg  0x000045d2 , 0x00000005 
+ 00031380  0x00008952 arg  0x000006a6 , 0x00000006 
+ 00031381  0x00008953 call  0x00007eb3 
+ 00031382  0x00008954 jam  0x00000003 , 0x000044c3 
+ 00031383  0x00008955 jam  0x00000000 , 0x000044c0 
+ 00031384  0x00008956 rtn 
+ 00031385  0x0000895b fetch  0x00000001 , 0x000009b9 
+ 00031386  0x0000895c rtnne  0x00000000 
+ 00031387  0x0000895d fetch  0x00000001 , 0x000044c0 
+ 00031388  0x0000895e rtnne  0x00000000 
+ 00031389  0x00008960 arg  0x00000766 , 0x00000005 
+ 00031390  0x00008961 arg  0x000045b2 , 0x00000006 
+ 00031391  0x00008962 call  0x00007ebd 
+ 00031392  0x00008964 arg  0x00000646 , 0x00000005 
+ 00031393  0x00008965 arg  0x000009be , 0x00000006 
+ 00031394  0x00008966 call  0x00007eb3 
+ 00031395  0x00008968 arg  0x00000686 , 0x00000005 
+ 00031396  0x00008969 call  0x00007ed0 
+ 00031397  0x0000896a jam  0x00000001 , 0x00000686 
+ 00031398  0x0000896c call  0x00007ac7 
+ 00031399  0x0000896d jam  0x00000004 , 0x000044c0 
+ 00031400  0x0000896e rtn 
+ 00031401  0x00008973 arg  0x000009fe , 0x00000005 
+ 00031402  0x00008974 arg  0x000006a6 , 0x00000006 
+ 00031403  0x00008975 call  0x00007ebd 
+ 00031404  0x00008976 jam  0x00000003 , 0x000009b9 
+ 00031405  0x00008977 jam  0x00000000 , 0x000044c0 
+ 00031406  0x00008978 rtn 
+ 00031407  0x0000897d fetch  0x00000001 , 0x000044be 
+ 00031408  0x0000897e rtn  0x00000034 
+ 00031409  0x0000897f fetch  0x00000001 , 0x000044c0 
+ 00031410  0x00008980 rtn  0x00000034 
+ 00031411  0x00008981 increase  0x00000080 , 0x0000003f 
+ 00031412  0x00008982 store  0x00000001 , 0x000044c0 
+ 00031413  0x00008983 rtnbit1  0x00000007 
+ 00031414  0x00008984 fetch  0x00000002 , 0x000005e3 
+ 00031415  0x00008985 branch  0x00007ab9 , 0x00000034 
+ 00031416  0x00008986 branch  0x00007abf 
+ 00031417  0x00008989 bpatchx  0x000000f0 , 0x0000403e 
+ 00031418  0x0000898a call  0x00007ad4 
+ 00031419  0x0000898b fetch  0x00000001 , 0x000044c0 
+ 00031420  0x0000898c beq  0x00000003 , 0x00007a93 
+ 00031421  0x0000898d beq  0x00000004 , 0x00007aa9 
+ 00031422  0x0000898e rtn 
+ 00031423  0x00008992 call  0x00007ae6 
+ 00031424  0x00008993 fetch  0x00000002 , 0x000005e3 
+ 00031425  0x00008994 increase  0xffffffff , 0x0000003f 
+ 00031426  0x00008995 store  0x00000002 , 0x000005e3 
+ 00031427  0x00008996 arg  0x00000766 , 0x00000006 
+ 00031428  0x00008997 call  0x000076ec 
+ 00031429  0x00008998 rtn  0x00000001 
+ 00031430  0x00008999 branch  0x00007b37 
+ 00031431  0x0000899c bpatchx  0x000000f1 , 0x0000403e 
+ 00031432  0x0000899d setarg  0x00000100 , 0x0000003f 
+ 00031433  0x0000899e store  0x00000002 , 0x000005e3 
+ 00031434  0x000089a0 fetch  0x00000002 , 0x000005e3 
+ 00031435  0x000089a1 rtn  0x00000034 
+ 00031436  0x000089a2 increase  0xffffffff , 0x0000003f 
+ 00031437  0x000089a3 store  0x00000002 , 0x000005e3 
+ 00031438  0x000089a4 arg  0x00000766 , 0x00000006 
+ 00031439  0x000089a5 call  0x000076ec 
+ 00031440  0x000089a6 branch  0x00007aca , 0x00000001 
+ 00031441  0x000089a7 arg  0x00000646 , 0x00000006 
+ 00031442  0x000089a8 arg  0x00000706 , 0x00000005 
+ 00031443  0x000089a9 branch  0x00007eb2 
+ 00031444  0x000089ad arg  0x00000746 , 0x00000011 
+ 00031445  0x000089ae arg  0x00000846 , 0x00000005 
+ 00031446  0x000089af call  0x00007ba3 
+ 00031447  0x000089b0 arg  0x00000846 , 0x00000011 
+ 00031448  0x000089b1 arg  0x000007e6 , 0x00000005 
+ 00031449  0x000089b2 call  0x00007c79 
+ 00031450  0x000089b3 arg  0x00000706 , 0x00000011 
+ 00031451  0x000089b4 arg  0x000007e6 , 0x00000012 
+ 00031452  0x000089b5 arg  0x000006a6 , 0x00000005 
+ 00031453  0x000089b6 call  0x00007be1 
+ 00031454  0x000089b7 arg  0x00000846 , 0x00000011 
+ 00031455  0x000089b8 arg  0x000007e6 , 0x00000012 
+ 00031456  0x000089b9 arg  0x00000826 , 0x00000005 
+ 00031457  0x000089ba call  0x00007be1 
+ 00031458  0x000089bb arg  0x00000726 , 0x00000011 
+ 00031459  0x000089bc arg  0x00000826 , 0x00000012 
+ 00031460  0x000089bd arg  0x000006c6 , 0x00000005 
+ 00031461  0x000089be branch  0x00007be1 
+ 00031462  0x000089c1 arg  0x00000746 , 0x00000011 
+ 00031463  0x000089c2 arg  0x00000826 , 0x00000005 
+ 00031464  0x000089c3 call  0x00007c79 
+ 00031465  0x000089c4 arg  0x00000826 , 0x00000011 
+ 00031466  0x000089c5 arg  0x00000846 , 0x00000005 
+ 00031467  0x000089c6 call  0x00007c79 
+ 00031468  0x000089c8 arg  0x0000093e , 0x00000011 
+ 00031469  0x000089c9 arg  0x00000846 , 0x00000012 
+ 00031470  0x000089ca arg  0x00000846 , 0x00000005 
+ 00031471  0x000089cb call  0x00007be1 
+ 00031472  0x000089cc arg  0x00000706 , 0x00000011 
+ 00031473  0x000089cd arg  0x00000826 , 0x00000005 
+ 00031474  0x000089ce call  0x00007c79 
+ 00031475  0x000089d0 arg  0x00000826 , 0x00000006 
+ 00031476  0x000089d1 arg  0x000007e6 , 0x00000005 
+ 00031477  0x000089d2 call  0x00007ebd 
+ 00031478  0x000089d3 arg  0x000007e6 , 0x00000011 
+ 00031479  0x000089d4 call  0x00007c80 
+ 00031480  0x000089d5 arg  0x00000826 , 0x00000011 
+ 00031481  0x000089d6 arg  0x000007e6 , 0x00000012 
+ 00031482  0x000089d7 arg  0x00000826 , 0x00000005 
+ 00031483  0x000089d8 call  0x00007c7d 
+ 00031484  0x000089da arg  0x00000826 , 0x00000011 
+ 00031485  0x000089db arg  0x00000846 , 0x00000012 
+ 00031486  0x000089dc arg  0x00000826 , 0x00000005 
+ 00031487  0x000089dd call  0x00007c7d 
+ 00031488  0x000089df arg  0x00000706 , 0x00000006 
+ 00031489  0x000089e0 arg  0x000007e6 , 0x00000005 
+ 00031490  0x000089e1 call  0x00007ebd 
+ 00031491  0x000089e2 arg  0x00000726 , 0x00000011 
+ 00031492  0x000089e3 arg  0x00000846 , 0x00000005 
+ 00031493  0x000089e4 call  0x00007c79 
+ 00031494  0x000089e5 arg  0x000007e6 , 0x00000011 
+ 00031495  0x000089e6 call  0x00007c80 
+ 00031496  0x000089e7 arg  0x000007e6 , 0x00000011 
+ 00031497  0x000089e8 call  0x00007c80 
+ 00031498  0x000089e9 arg  0x000007e6 , 0x00000011 
+ 00031499  0x000089ea arg  0x00000846 , 0x00000012 
+ 00031500  0x000089eb arg  0x000007e6 , 0x00000005 
+ 00031501  0x000089ec call  0x00007be1 
+ 00031502  0x000089ed arg  0x00000846 , 0x00000011 
+ 00031503  0x000089ee arg  0x00000806 , 0x00000005 
+ 00031504  0x000089ef call  0x00007c79 
+ 00031505  0x000089f0 arg  0x00000806 , 0x00000011 
+ 00031506  0x000089f1 call  0x00007c80 
+ 00031507  0x000089f2 arg  0x00000806 , 0x00000011 
+ 00031508  0x000089f3 call  0x00007c80 
+ 00031509  0x000089f4 arg  0x00000806 , 0x00000011 
+ 00031510  0x000089f5 call  0x00007c80 
+ 00031511  0x000089f6 arg  0x00000726 , 0x00000006 
+ 00031512  0x000089f7 arg  0x00000846 , 0x00000005 
+ 00031513  0x000089f8 call  0x00007ebd 
+ 00031514  0x000089f9 arg  0x00000846 , 0x00000011 
+ 00031515  0x000089fa call  0x00007c80 
+ 00031516  0x000089fb arg  0x00000846 , 0x00000011 
+ 00031517  0x000089fc arg  0x00000746 , 0x00000012 
+ 00031518  0x000089fd arg  0x00000746 , 0x00000005 
+ 00031519  0x000089fe call  0x00007be1 
+ 00031520  0x00008a01 arg  0x00000826 , 0x00000011 
+ 00031521  0x00008a02 arg  0x00000846 , 0x00000005 
+ 00031522  0x00008a03 call  0x00007c79 
+ 00031523  0x00008a05 arg  0x00000846 , 0x00000011 
+ 00031524  0x00008a06 arg  0x000007e6 , 0x00000012 
+ 00031525  0x00008a07 arg  0x00000846 , 0x00000005 
+ 00031526  0x00008a08 call  0x00007c96 
+ 00031527  0x00008a09 arg  0x00000846 , 0x00000011 
+ 00031528  0x00008a0a arg  0x000007e6 , 0x00000012 
+ 00031529  0x00008a0b arg  0x00000706 , 0x00000005 
+ 00031530  0x00008a0c call  0x00007c96 
+ 00031531  0x00008a0d arg  0x000007e6 , 0x00000011 
+ 00031532  0x00008a0e arg  0x00000706 , 0x00000012 
+ 00031533  0x00008a0f arg  0x00000846 , 0x00000005 
+ 00031534  0x00008a10 call  0x00007c96 
+ 00031535  0x00008a11 arg  0x00000846 , 0x00000011 
+ 00031536  0x00008a12 arg  0x00000826 , 0x00000012 
+ 00031537  0x00008a13 arg  0x00000846 , 0x00000005 
+ 00031538  0x00008a14 call  0x00007be1 
+ 00031539  0x00008a15 arg  0x00000846 , 0x00000011 
+ 00031540  0x00008a16 arg  0x00000806 , 0x00000012 
+ 00031541  0x00008a17 arg  0x00000726 , 0x00000005 
+ 00031542  0x00008a18 branch  0x00007c96 
+ 00031543  0x00008a1c arg  0x00000686 , 0x00000011 
+ 00031544  0x00008a1d arg  0x00000866 , 0x00000005 
+ 00031545  0x00008a1e call  0x00007c79 
+ 00031546  0x00008a1f arg  0x00000706 , 0x00000011 
+ 00031547  0x00008a20 arg  0x00000866 , 0x00000012 
+ 00031548  0x00008a21 arg  0x00000806 , 0x00000005 
+ 00031549  0x00008a22 call  0x00007be1 
+ 00031550  0x00008a25 arg  0x00000686 , 0x00000011 
+ 00031551  0x00008a26 arg  0x00000866 , 0x00000012 
+ 00031552  0x00008a27 arg  0x00000866 , 0x00000005 
+ 00031553  0x00008a28 call  0x00007be1 
+ 00031554  0x00008a29 arg  0x00000726 , 0x00000011 
+ 00031555  0x00008a2a arg  0x00000866 , 0x00000012 
+ 00031556  0x00008a2b arg  0x000007e6 , 0x00000005 
+ 00031557  0x00008a2c call  0x00007be1 
+ 00031558  0x00008a2f arg  0x00000746 , 0x00000011 
+ 00031559  0x00008a30 arg  0x00000866 , 0x00000005 
+ 00031560  0x00008a31 call  0x00007c79 
+ 00031561  0x00008a32 arg  0x00000646 , 0x00000011 
+ 00031562  0x00008a33 arg  0x00000866 , 0x00000012 
+ 00031563  0x00008a34 arg  0x00000826 , 0x00000005 
+ 00031564  0x00008a35 call  0x00007be1 
+ 00031565  0x00008a37 arg  0x00000746 , 0x00000011 
+ 00031566  0x00008a38 arg  0x00000866 , 0x00000012 
+ 00031567  0x00008a39 arg  0x00000866 , 0x00000005 
+ 00031568  0x00008a3a call  0x00007be1 
+ 00031569  0x00008a3b arg  0x00000666 , 0x00000011 
+ 00031570  0x00008a3c arg  0x00000866 , 0x00000012 
+ 00031571  0x00008a3d arg  0x00000846 , 0x00000005 
+ 00031572  0x00008a3e call  0x00007be1 
+ 00031573  0x00008a43 arg  0x00000806 , 0x00000012 
+ 00031574  0x00008a44 arg  0x00000826 , 0x00000011 
+ 00031575  0x00008a45 arg  0x00000866 , 0x00000005 
+ 00031576  0x00008a46 call  0x00007c96 
+ 00031577  0x00008a47 arg  0x00000806 , 0x00000011 
+ 00031578  0x00008a48 arg  0x00000826 , 0x00000012 
+ 00031579  0x00008a49 arg  0x00000806 , 0x00000005 
+ 00031580  0x00008a4a call  0x00007c7d 
+ 00031581  0x00008a4d arg  0x000007e6 , 0x00000012 
+ 00031582  0x00008a4e arg  0x00000846 , 0x00000011 
+ 00031583  0x00008a4f arg  0x00000826 , 0x00000005 
+ 00031584  0x00008a50 call  0x00007c96 
+ 00031585  0x00008a51 arg  0x000007e6 , 0x00000011 
+ 00031586  0x00008a52 arg  0x00000846 , 0x00000012 
+ 00031587  0x00008a53 arg  0x000007e6 , 0x00000005 
+ 00031588  0x00008a54 call  0x00007c7d 
+ 00031589  0x00008a55 arg  0x000007e6 , 0x00000011 
+ 00031590  0x00008a56 arg  0x00000866 , 0x00000012 
+ 00031591  0x00008a57 arg  0x000007e6 , 0x00000005 
+ 00031592  0x00008a58 call  0x00007be1 
+ 00031593  0x00008a59 arg  0x00000746 , 0x00000011 
+ 00031594  0x00008a5a arg  0x00000686 , 0x00000012 
+ 00031595  0x00008a5b arg  0x00000846 , 0x00000005 
+ 00031596  0x00008a5c call  0x00007be1 
+ 00031597  0x00008a5d arg  0x00000846 , 0x00000011 
+ 00031598  0x00008a5e arg  0x00000866 , 0x00000012 
+ 00031599  0x00008a5f arg  0x00000746 , 0x00000005 
+ 00031600  0x00008a60 call  0x00007be1 
+ 00031601  0x00008a62 arg  0x00000866 , 0x00000011 
+ 00031602  0x00008a63 arg  0x00000866 , 0x00000005 
+ 00031603  0x00008a64 call  0x00007c79 
+ 00031604  0x00008a65 arg  0x00000866 , 0x00000011 
+ 00031605  0x00008a66 arg  0x00000806 , 0x00000012 
+ 00031606  0x00008a67 arg  0x00000846 , 0x00000005 
+ 00031607  0x00008a68 call  0x00007be1 
+ 00031608  0x00008a69 arg  0x00000866 , 0x00000011 
+ 00031609  0x00008a6a arg  0x000007e6 , 0x00000012 
+ 00031610  0x00008a6b arg  0x000007e6 , 0x00000005 
+ 00031611  0x00008a6c call  0x00007be1 
+ 00031612  0x00008a6d arg  0x00000826 , 0x00000011 
+ 00031613  0x00008a6e arg  0x00000706 , 0x00000005 
+ 00031614  0x00008a6f call  0x00007c79 
+ 00031615  0x00008a70 arg  0x00000706 , 0x00000011 
+ 00031616  0x00008a71 arg  0x00000846 , 0x00000012 
+ 00031617  0x00008a72 arg  0x00000706 , 0x00000005 
+ 00031618  0x00008a73 call  0x00007c96 
+ 00031619  0x00008a74 arg  0x00000706 , 0x00000006 
+ 00031620  0x00008a75 arg  0x00000866 , 0x00000005 
+ 00031621  0x00008a76 call  0x00007ebd 
+ 00031622  0x00008a77 arg  0x00000866 , 0x00000011 
+ 00031623  0x00008a78 call  0x00007c80 
+ 00031624  0x00008a79 arg  0x00000846 , 0x00000011 
+ 00031625  0x00008a7a arg  0x00000866 , 0x00000012 
+ 00031626  0x00008a7b arg  0x00000846 , 0x00000005 
+ 00031627  0x00008a7c call  0x00007c96 
+ 00031628  0x00008a7d arg  0x00000846 , 0x00000011 
+ 00031629  0x00008a7e arg  0x00000826 , 0x00000012 
+ 00031630  0x00008a7f arg  0x00000826 , 0x00000005 
+ 00031631  0x00008a80 call  0x00007be1 
+ 00031632  0x00008a81 arg  0x00000826 , 0x00000011 
+ 00031633  0x00008a82 arg  0x000007e6 , 0x00000012 
+ 00031634  0x00008a83 arg  0x00000726 , 0x00000005 
+ 00031635  0x00008a84 call  0x00007c96 
+ 00031636  0x00008a85 arg  0x00000726 , 0x00000011 
+ 00031637  0x00008a86 arg  0x0000091e , 0x00000012 
+ 00031638  0x00008a87 arg  0x00000726 , 0x00000005 
+ 00031639  0x00008a88 force  0x00000000 , 0x00000013 
+ 00031640  0x00008a89 fetch  0x00000001 , 0x00000726 
+ 00031641  0x00008a8a isolate1  0x00000000 , 0x0000003f 
+ 00031642  0x00008a8b call  0x00007c7b , 0x00000001 
+ 00031643  0x00008a8c copy  0x00000013 , 0x00000030 
+ 00031644  0x00008a8d arg  0x00000726 , 0x00000011 
+ 00031645  0x00008a8e call  0x00007cab 
+ 00031646  0x00008a8f fetch  0x00000001 , 0x00000745 
+ 00031647  0x00008a90 isolate1  0x00000000 , 0x00000030 
+ 00031648  0x00008a91 setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00031649  0x00008a92 store  0x00000001 , 0x00000745 
+ 00031650  0x00008a93 rtn 
+ 00031651  0x00008a96 copy  0x00000005 , 0x0000000b 
+ 00031652  0x00008a97 arg  0x00000806 , 0x00000005 
+ 00031653  0x00008a98 call  0x00007ed0 
+ 00031654  0x00008a99 force  0x00000000 , 0x0000003f 
+ 00031655  0x00008a9b store  0x00000004 , 0x00000826 
+ 00031656  0x00008a9c jam  0x00000001 , 0x00000806 
+ 00031657  0x00008a9d arg  0x00000786 , 0x00000005 
+ 00031658  0x00008a9e call  0x00007ed2 
+ 00031659  0x00008a9f arg  0x0000091e , 0x00000006 
+ 00031660  0x00008aa0 arg  0x000007c6 , 0x00000005 
+ 00031661  0x00008aa1 call  0x00007ebd 
+ 00031662  0x00008aa2 copy  0x00000011 , 0x00000006 
+ 00031663  0x00008aa3 arg  0x000007e6 , 0x00000005 
+ 00031664  0x00008aa4 call  0x00007ebd 
+ 00031665  0x00008aab arg  0x000007e6 , 0x00000006 
+ 00031666  0x00008aac call  0x00007cb5 
+ 00031667  0x00008aad branch  0x00007bda , 0x00000034 
+ 00031668  0x00008ab2 arg  0x000007e6 , 0x00000011 
+ 00031669  0x00008ab3 arg  0x00000806 , 0x00000012 
+ 00031670  0x00008ab4 call  0x00007cb8 
+ 00031671  0x00008ab5 arg  0x000007c6 , 0x00000011 
+ 00031672  0x00008ab6 arg  0x00000786 , 0x00000012 
+ 00031673  0x00008ab7 call  0x00007cb8 
+ 00031674  0x00008ab9 arg  0x000007e6 , 0x00000011 
+ 00031675  0x00008aba arg  0x000007c6 , 0x00000012 
+ 00031676  0x00008abb call  0x00007cb1 
+ 00031677  0x00008abc branch  0x00007bcc , 0x00000002 
+ 00031678  0x00008abd arg  0x000007c6 , 0x00000011 
+ 00031679  0x00008abe arg  0x000007e6 , 0x00000012 
+ 00031680  0x00008abf copy  0x00000011 , 0x00000005 
+ 00031681  0x00008ac0 call  0x00007ca9 
+ 00031682  0x00008ac1 arg  0x00000806 , 0x00000011 
+ 00031683  0x00008ac2 arg  0x00000786 , 0x00000012 
+ 00031684  0x00008ac3 copy  0x00000012 , 0x00000005 
+ 00031685  0x00008ac4 call  0x00007c7b 
+ 00031686  0x00008ac5 ifetch  0x00000001 , 0x00000011 
+ 00031687  0x00008ac6 iadd  0x00000013 , 0x00000013 
+ 00031688  0x00008ac7 ifetch  0x00000001 , 0x00000012 
+ 00031689  0x00008ac8 iadd  0x00000013 , 0x0000003f 
+ 00031690  0x00008ac9 istore  0x00000001 , 0x00000012 
+ 00031691  0x00008aca branch  0x00007bb1 
+ 00031692  0x00008acc arg  0x000007e6 , 0x00000011 
+ 00031693  0x00008acd arg  0x000007c6 , 0x00000012 
+ 00031694  0x00008ace copy  0x00000011 , 0x00000005 
+ 00031695  0x00008acf call  0x00007ca9 
+ 00031696  0x00008ad0 arg  0x00000786 , 0x00000011 
+ 00031697  0x00008ad1 arg  0x00000806 , 0x00000012 
+ 00031698  0x00008ad2 copy  0x00000012 , 0x00000005 
+ 00031699  0x00008ad3 call  0x00007c7b 
+ 00031700  0x00008ad4 ifetch  0x00000001 , 0x00000011 
+ 00031701  0x00008ad5 iadd  0x00000013 , 0x00000013 
+ 00031702  0x00008ad6 ifetch  0x00000001 , 0x00000012 
+ 00031703  0x00008ad7 iadd  0x00000013 , 0x0000003f 
+ 00031704  0x00008ad8 istore  0x00000001 , 0x00000012 
+ 00031705  0x00008ad9 branch  0x00007bb1 
+ 00031706  0x00008adc arg  0x00000786 , 0x00000011 
+ 00031707  0x00008add copy  0x0000000b , 0x00000005 
+ 00031708  0x00008ade call  0x00007c0a 
+ 00031709  0x00008ae0 arg  0x0000091e , 0x00000011 
+ 00031710  0x00008ae1 copy  0x0000000b , 0x00000012 
+ 00031711  0x00008ae2 copy  0x0000000b , 0x00000005 
+ 00031712  0x00008ae3 branch  0x00007c96 
+ 00031713  0x00008ae7 copy  0x00000005 , 0x0000000b 
+ 00031714  0x00008ae9 force  0x00000000 , 0x00000038 
+ 00031715  0x00008aeb arg  0x00000786 , 0x00000005 
+ 00031716  0x00008aec call  0x00007ed2 
+ 00031717  0x00008aed arg  0x00000ad2 , 0x00000005 
+ 00031718  0x00008aee call  0x00007ed2 
+ 00031719  0x00008af2 copy  0x00000011 , 0x00000006 
+ 00031720  0x00008af4 jam  0x00000000 , 0x00000ad2 
+ 00031721  0x00008af5 setarg  0x00000000 
+ 00031722  0x00008af6 call  0x00007c73 
+ 00031723  0x00008af7 copy  0x00000012 , 0x00000006 
+ 00031724  0x00008af8 call  0x00007c77 
+ 00031725  0x00008afb force  0x00000000 , 0x00000007 
+ 00031726  0x00008afc arg  0x00000786 , 0x00000005 
+ 00031727  0x00008b00 arg  0x00000ad2 , 0x00000002 
+ 00031728  0x00008b01 copy  0x00000007 , 0x00000012 
+ 00031729  0x00008b02 lshift2  0x00000012 , 0x0000003f 
+ 00031730  0x00008b04 iadd  0x00000002 , 0x00000012 
+ 00031731  0x00008b05 force  0x00000000 , 0x00000002 
+ 00031732  0x00008b06 force  0x00000000 , 0x00000013 
+ 00031733  0x00008b0c ifetch  0x00000004 , 0x00000005 
+ 00031734  0x00008b0d iforce  0x00000011 
+ 00031735  0x00008b10 ifetch  0x00000004 , 0x00000012 
+ 00031736  0x00008b11 copy  0x00000013 , 0x00000038 
+ 00031737  0x00008b12 imul32  0x0000002f , 0x0000003f 
+ 00031738  0x00008b13 iadd  0x00000011 , 0x0000003f 
+ 00031739  0x00008b14 iadd  0x00000002 , 0x0000003f 
+ 00031740  0x00008b15 istore  0x00000004 , 0x00000005 
+ 00031741  0x00008b16 rshift32  0x0000003f , 0x00000002 
+ 00031742  0x00008b17 increase  0x00000001 , 0x00000013 
+ 00031743  0x00008b18 compare  0x00000008 , 0x00000013 , 0x000000ff 
+ 00031744  0x00008b19 nbranch  0x00007bf5 , 0x00000001 
+ 00031745  0x00008b1b deposit  0x00000002 
+ 00031746  0x00008b1c istore  0x00000004 , 0x00000005 
+ 00031747  0x00008b1d increase  0xffffffe0 , 0x00000005 
+ 00031748  0x00008b20 increase  0x00000001 , 0x00000007 
+ 00031749  0x00008b21 compare  0x00000008 , 0x00000007 , 0x000000ff 
+ 00031750  0x00008b22 nbranch  0x00007bef , 0x00000001 
+ 00031751  0x00008b23 arg  0x00000786 , 0x00000011 
+ 00031752  0x00008b24 copy  0x0000000b , 0x00000005 
+ 00031753  0x00008b25 branch  0x00007c0a 
+ 00031754  0x00008b28 bpatchx  0x000000f2 , 0x0000403e 
+ 00031755  0x00008b29 copy  0x00000005 , 0x0000000b 
+ 00031756  0x00008b2a copy  0x00000011 , 0x00000030 
+ 00031757  0x00008b2b arg  0x000007c6 , 0x00000012 
+ 00031758  0x00008b2c copy  0x00000012 , 0x00000005 
+ 00031759  0x00008b2d call  0x00007ecd 
+ 00031760  0x00008b2e istore  0x00000008 , 0x00000005 
+ 00031761  0x00008b2f add  0x00000011 , 0x0000002c , 0x00000006 
+ 00031762  0x00008b30 call  0x00007eb9 
+ 00031763  0x00008b31 call  0x00007eb5 
+ 00031764  0x00008b32 copy  0x00000012 , 0x00000011 
+ 00031765  0x00008b33 call  0x00007c80 
+ 00031766  0x00008b34 arg  0x000007c6 , 0x00000012 
+ 00031767  0x00008b35 copy  0x00000030 , 0x00000011 
+ 00031768  0x00008b36 copy  0x0000000b , 0x00000005 
+ 00031769  0x00008b37 call  0x00007c7d 
+ 00031770  0x00008b39 arg  0x000007c6 , 0x00000012 
+ 00031771  0x00008b3a copy  0x00000012 , 0x00000005 
+ 00031772  0x00008b3b call  0x00007ecd 
+ 00031773  0x00008b3c istore  0x00000008 , 0x00000005 
+ 00031774  0x00008b3d add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031775  0x00008b3e call  0x00007ebf 
+ 00031776  0x00008b3f call  0x00007ecd 
+ 00031777  0x00008b40 copy  0x00000012 , 0x00000011 
+ 00031778  0x00008b41 call  0x00007c80 
+ 00031779  0x00008b45 arg  0x000007c6 , 0x00000012 
+ 00031780  0x00008b46 copy  0x0000000b , 0x00000011 
+ 00031781  0x00008b47 copy  0x00000011 , 0x00000005 
+ 00031782  0x00008b48 call  0x00007c7d 
+ 00031783  0x00008b4c arg  0x000007c6 , 0x00000012 
+ 00031784  0x00008b4d copy  0x00000012 , 0x00000005 
+ 00031785  0x00008b4e add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031786  0x00008b4f call  0x00007eb5 
+ 00031787  0x00008b50 call  0x00007ecd 
+ 00031788  0x00008b51 istore  0x00000008 , 0x00000005 
+ 00031789  0x00008b52 add  0x00000030 , 0x00000038 , 0x00000006 
+ 00031790  0x00008b53 call  0x00007eb9 
+ 00031791  0x00008b54 copy  0x0000000b , 0x00000011 
+ 00031792  0x00008b55 copy  0x00000011 , 0x00000005 
+ 00031793  0x00008b56 call  0x00007c7d 
+ 00031794  0x00008b5a arg  0x000007c6 , 0x00000012 
+ 00031795  0x00008b5b copy  0x00000012 , 0x00000005 
+ 00031796  0x00008b5c add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031797  0x00008b5d call  0x00007eb5 
+ 00031798  0x00008b5e add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031799  0x00008b5f call  0x00007eb5 
+ 00031800  0x00008b60 add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031801  0x00008b61 call  0x00007eb6 
+ 00031802  0x00008b62 add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031803  0x00008b63 call  0x00007eb6 
+ 00031804  0x00008b64 copy  0x0000000b , 0x00000011 
+ 00031805  0x00008b65 copy  0x00000011 , 0x00000005 
+ 00031806  0x00008b66 call  0x00007c7d 
+ 00031807  0x00008b69 arg  0x000007c6 , 0x00000012 
+ 00031808  0x00008b6a copy  0x00000012 , 0x00000005 
+ 00031809  0x00008b6b add  0x00000030 , 0x0000002c , 0x00000006 
+ 00031810  0x00008b6c call  0x00007eb5 
+ 00031811  0x00008b6d call  0x00007ecd 
+ 00031812  0x00008b6e istore  0x00000008 , 0x00000005 
+ 00031813  0x00008b6f add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031814  0x00008b70 call  0x00007eb6 
+ 00031815  0x00008b71 add  0x00000030 , 0x00000028 , 0x00000006 
+ 00031816  0x00008b72 call  0x00007eb6 
+ 00031817  0x00008b73 copy  0x0000000b , 0x00000011 
+ 00031818  0x00008b74 copy  0x00000011 , 0x00000005 
+ 00031819  0x00008b75 call  0x00007c96 
+ 00031820  0x00008b78 arg  0x000007c6 , 0x00000012 
+ 00031821  0x00008b79 copy  0x00000012 , 0x00000005 
+ 00031822  0x00008b7a add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031823  0x00008b7b call  0x00007eb9 
+ 00031824  0x00008b7c call  0x00007eb9 
+ 00031825  0x00008b7d force  0x00000000 , 0x0000003f 
+ 00031826  0x00008b7e istore  0x00000008 , 0x00000005 
+ 00031827  0x00008b7f add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031828  0x00008b80 call  0x00007eb6 
+ 00031829  0x00008b81 add  0x00000030 , 0x0000002c , 0x00000006 
+ 00031830  0x00008b82 call  0x00007eb6 
+ 00031831  0x00008b83 copy  0x0000000b , 0x00000011 
+ 00031832  0x00008b84 copy  0x00000011 , 0x00000005 
+ 00031833  0x00008b85 call  0x00007c96 
+ 00031834  0x00008b88 arg  0x000007c6 , 0x00000012 
+ 00031835  0x00008b89 copy  0x00000012 , 0x00000005 
+ 00031836  0x00008b8a add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031837  0x00008b8b call  0x00007eb5 
+ 00031838  0x00008b8c add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031839  0x00008b8d call  0x00007eb5 
+ 00031840  0x00008b8e call  0x00007ecd 
+ 00031841  0x00008b8f add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031842  0x00008b90 call  0x00007eb6 
+ 00031843  0x00008b91 copy  0x0000000b , 0x00000011 
+ 00031844  0x00008b92 copy  0x00000011 , 0x00000005 
+ 00031845  0x00008b93 call  0x00007c96 
+ 00031846  0x00008b96 arg  0x000007c6 , 0x00000012 
+ 00031847  0x00008b97 copy  0x00000012 , 0x00000005 
+ 00031848  0x00008b98 add  0x00000030 , 0x00000038 , 0x00000006 
+ 00031849  0x00008b99 call  0x00007eb9 
+ 00031850  0x00008b9a call  0x00007ecd 
+ 00031851  0x00008b9b add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031852  0x00008b9c call  0x00007eb5 
+ 00031853  0x00008b9d call  0x00007ecd 
+ 00031854  0x00008b9e add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031855  0x00008b9f call  0x00007eb6 
+ 00031856  0x00008ba0 copy  0x0000000b , 0x00000011 
+ 00031857  0x00008ba1 copy  0x00000011 , 0x00000005 
+ 00031858  0x00008ba2 branch  0x00007c96 
+ 00031859  0x00008ba6 force  0x00000020 , 0x00000039 
+ 00031860  0x00008ba7 arg  0x00000ad2 , 0x00000005 
+ 00031861  0x00008ba8 iadd  0x00000005 , 0x00000005 
+ 00031862  0x00008ba9 branch  0x00007f01 
+ 00031863  0x00008bac force  0x00000008 , 0x00000039 
+ 00031864  0x00008bad branch  0x00007781 
+ 00031865  0x00008bb0 copy  0x00000011 , 0x00000012 
+ 00031866  0x00008bb1 branch  0x00007be1 
+ 00031867  0x00008bb4 force  0x00000008 , 0x00000039 
+ 00031868  0x00008bb5 branch  0x00007712 
+ 00031869  0x00008bb8 call  0x00007c7b 
+ 00031870  0x00008bb9 copy  0x00000005 , 0x00000011 
+ 00031871  0x00008bba branch  0x00007c81 
+ 00031872  0x00008bbd call  0x00007cae 
+ 00031873  0x00008bbf isolate1  0x00000000 , 0x00000013 
+ 00031874  0x00008bc0 branch  0x00007c8a , 0x00000001 
+ 00031875  0x00008bc1 arg  0x0000091e , 0x00000012 
+ 00031876  0x00008bc2 copy  0x00000011 , 0x00000013 
+ 00031877  0x00008bc3 increase  0xffffffe0 , 0x00000011 
+ 00031878  0x00008bc4 call  0x00007cb1 
+ 00031879  0x00008bc5 nrtn  0x00000002 
+ 00031880  0x00008bc6 copy  0x00000013 , 0x00000011 
+ 00031881  0x00008bc7 branch  0x00007c92 
+ 00031882  0x00008bca call  0x00007c92 
+ 00031883  0x00008bcc copy  0x00000011 , 0x00000013 
+ 00031884  0x00008bcd increase  0xffffffe0 , 0x00000011 
+ 00031885  0x00008bce arg  0x0000091e , 0x00000012 
+ 00031886  0x00008bcf call  0x00007cb1 
+ 00031887  0x00008bd0 nrtn  0x00000002 
+ 00031888  0x00008bd1 copy  0x00000013 , 0x00000011 
+ 00031889  0x00008bd2 branch  0x00007c92 
+ 00031890  0x00008bd6 increase  0xffffffe0 , 0x00000011 
+ 00031891  0x00008bd7 arg  0x0000091e , 0x00000012 
+ 00031892  0x00008bd8 copy  0x00000011 , 0x00000005 
+ 00031893  0x00008bd9 branch  0x00007ca9 
+ 00031894  0x00008bdf call  0x00007ca9 
+ 00031895  0x00008be1 branch  0x00007ca0 , 0x00000001 
+ 00031896  0x00008be4 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031897  0x00008be5 arg  0x0000091e , 0x00000012 
+ 00031898  0x00008be6 call  0x00007cb1 
+ 00031899  0x00008be7 nrtn  0x00000002 
+ 00031900  0x00008be8 arg  0x0000091e , 0x00000012 
+ 00031901  0x00008be9 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031902  0x00008beb copy  0x00000011 , 0x00000005 
+ 00031903  0x00008bec branch  0x00007ca9 
+ 00031904  0x00008bee add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031905  0x00008bef arg  0x0000091e , 0x00000012 
+ 00031906  0x00008bf0 copy  0x00000011 , 0x00000005 
+ 00031907  0x00008bf1 call  0x00007c7b 
+ 00031908  0x00008bf3 rtn  0x00000001 
+ 00031909  0x00008bf4 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031910  0x00008bf5 arg  0x0000091e , 0x00000012 
+ 00031911  0x00008bf6 copy  0x00000011 , 0x00000005 
+ 00031912  0x00008bf7 branch  0x00007c7b 
+ 00031913  0x00008bfc force  0x00000008 , 0x00000039 
+ 00031914  0x00008bfd branch  0x00007720 
+ 00031915  0x00008c00 force  0x00000008 , 0x00000039 
+ 00031916  0x00008c01 increase  0x0000001c , 0x00000011 
+ 00031917  0x00008c02 branch  0x0000772f 
+ 00031918  0x00008c05 force  0x00000008 , 0x00000039 
+ 00031919  0x00008c06 force  0x00000000 , 0x00000013 
+ 00031920  0x00008c07 branch  0x0000773d 
+ 00031921  0x00008c0a force  0x00000008 , 0x00000039 
+ 00031922  0x00008c0b increase  0x0000001c , 0x00000011 
+ 00031923  0x00008c0c increase  0x0000001c , 0x00000012 
+ 00031924  0x00008c0d branch  0x00007707 
+ 00031925  0x00008c11 ifetch  0x00000008 , 0x00000006 
+ 00031926  0x00008c12 nrtn  0x00000034 
+ 00031927  0x00008c13 branch  0x000076f5 
+ 00031928  0x00008c19 copy  0x00000011 , 0x00000030 
+ 00031929  0x00008c1b copy  0x00000030 , 0x00000011 
+ 00031930  0x00008c1c ifetch  0x00000001 , 0x00000011 
+ 00031931  0x00008c1d isolate1  0x00000000 , 0x0000003f 
+ 00031932  0x00008c1e rtn  0x00000001 
+ 00031933  0x00008c1f call  0x00007cab 
+ 00031934  0x00008c20 ifetch  0x00000001 , 0x00000012 
+ 00031935  0x00008c21 isolate0  0x00000000 , 0x0000003f 
+ 00031936  0x00008c22 branch  0x00007cc8 , 0x00000001 
+ 00031937  0x00008c23 arg  0x0000091e , 0x00000011 
+ 00031938  0x00008c24 copy  0x00000012 , 0x00000005 
+ 00031939  0x00008c25 call  0x00007c7b 
+ 00031940  0x00008c26 ifetch  0x00000001 , 0x00000012 
+ 00031941  0x00008c27 iadd  0x00000013 , 0x0000003f 
+ 00031942  0x00008c28 istore  0x00000001 , 0x00000012 
+ 00031943  0x00008c29 increase  0xffffffe0 , 0x00000012 
+ 00031944  0x00008c2b add  0x00000012 , 0x00000020 , 0x00000011 
+ 00031945  0x00008c2c force  0x00000009 , 0x00000039 
+ 00031946  0x00008c2d call  0x0000772f 
+ 00031947  0x00008c2e branch  0x00007cb9 
+ 00031948  0x00008c33 call  0x00002c65 
+ 00031949  0x00008c34 rtn  0x0000002b 
+ 00031950  0x00008c35 call  0x00007cd3 
+ 00031951  0x00008c36 call  0x00007d75 
+ 00031952  0x00008c37 branch  0x00007d08 
+ 00031953  0x00008c3a call  0x00007d29 
+ 00031954  0x00008c3c branch  0x00007d64 
+ 00031955  0x00008c3f fetch  0x00000001 , 0x00004686 
+ 00031956  0x00008c40 rtneq  0x000000ff 
+ 00031957  0x00008c41 iforce  0x00000002 
+ 00031958  0x00008c42 call  0x0000680e 
+ 00031959  0x00008c43 fetcht  0x00000001 , 0x00004686 
+ 00031960  0x00008c44 call  0x00006825 
+ 00031961  0x00008c45 nop  0x00000064 
+ 00031962  0x00008c46 fetcht  0x00000001 , 0x00004686 
+ 00031963  0x00008c47 call  0x000067fb 
+ 00031964  0x00008c48 branch  0x00007cdd 
+ 00031965  0x00008c4d bpatchx  0x000000f3 , 0x0000403e 
+ 00031966  0x00008c4e fetch  0x00000001 , 0x00004686 
+ 00031967  0x00008c4f rtneq  0x000000ff 
+ 00031968  0x00008c50 copy  0x0000003f , 0x00000002 
+ 00031969  0x00008c51 call  0x0000681d 
+ 00031970  0x00008c52 nbranch  0x00007cef , 0x00000001 
+ 00031971  0x00008c55 call  0x00007cf9 
+ 00031972  0x00008c56 fetch  0x00000002 , 0x00004682 
+ 00031973  0x00008c57 set1  0x0000000c 
+ 00031974  0x00008c58 store  0x00000002 , 0x00004682 
+ 00031975  0x00008c59 fetch  0x00000001 , 0x00004679 
+ 00031976  0x00008c5a rtneq  0x00000000 
+ 00031977  0x00008c5b jam  0x00000000 , 0x00004679 
+ 00031978  0x00008c5d fetch  0x00000001 , 0x00004685 
+ 00031979  0x00008c5e store  0x00000001 , 0x00004678 
+ 00031980  0x00008c5f call  0x00007d00 
+ 00031981  0x00008c60 jam  0x0000002c , 0x00000a99 
+ 00031982  0x00008c61 branch  0x00007d86 
+ 00031983  0x00008c63 fetch  0x00000002 , 0x00004682 
+ 00031984  0x00008c64 set0  0x0000000c 
+ 00031985  0x00008c65 store  0x00000002 , 0x00004682 
+ 00031986  0x00008c66 fetch  0x00000001 , 0x00004679 
+ 00031987  0x00008c67 rtneq  0x00000001 
+ 00031988  0x00008c68 jam  0x00000001 , 0x00004679 
+ 00031989  0x00008c6a jam  0x00000000 , 0x00004678 
+ 00031990  0x00008c6b call  0x00007d02 
+ 00031991  0x00008c6c jam  0x0000002d , 0x00000a99 
+ 00031992  0x00008c6d branch  0x00007d86 
+ 00031993  0x00008c70 fetch  0x00000001 , 0x00004678 
+ 00031994  0x00008c71 rtn  0x00000034 
+ 00031995  0x00008c72 increase  0xffffffff , 0x0000003f 
+ 00031996  0x00008c73 store  0x00000001 , 0x00004678 
+ 00031997  0x00008c74 nrtn  0x00000034 
+ 00031998  0x00008c76 jam  0x00000010 , 0x00000a99 
+ 00031999  0x00008c77 branch  0x00007d86 
+ 00032000  0x00008c7a arg  0x00000007 , 0x00000007 
+ 00032001  0x00008c7b branch  0x00002c32 
+ 00032002  0x00008c7e arg  0x00000007 , 0x00000007 
+ 00032003  0x00008c7f branch  0x00002c36 
+ 00032004  0x00008c96 fetch  0x00000002 , 0x0000421b 
+ 00032005  0x00008c97 mul32  0x00000011 , 0x0000000b , 0x00000012 
+ 00032006  0x00008c98 iadd  0x00000012 , 0x00000012 
+ 00032007  0x00008c99 rtn 
+ 00032008  0x00008c9d fetch  0x00000001 , 0x0000421a 
+ 00032009  0x00008c9e rtn  0x00000034 
+ 00032010  0x00008c9f copy  0x0000003f , 0x00000039 
+ 00032011  0x00008ca0 fetch  0x00000002 , 0x0000421b 
+ 00032012  0x00008ca1 copy  0x0000003f , 0x00000012 
+ 00032013  0x00008ca3 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032014  0x00008ca4 ifetcht  0x00000001 , 0x00000013 
+ 00032015  0x00008ca5 call  0x0000680e 
+ 00032016  0x00008ca6 call  0x00007d32 
+ 00032017  0x00008ca7 increase  0x0000000b , 0x00000012 
+ 00032018  0x00008ca8 loop  0x00007d0d 
+ 00032019  0x00008ca9 rtn 
+ 00032020  0x00008cae call  0x00007d04 
+ 00032021  0x00008caf setarg  0x00000002 
+ 00032022  0x00008cb0 istore  0x00000001 , 0x00000012 
+ 00032023  0x00008cb1 call  0x00007d5e 
+ 00032024  0x00008cb2 branch  0x00007d35 
+ 00032025  0x00008cb8 call  0x00007d04 
+ 00032026  0x00008cb9 setarg  0x00000003 
+ 00032027  0x00008cba istore  0x00000001 , 0x00000012 
+ 00032028  0x00008cbb call  0x00007d5e 
+ 00032029  0x00008cbc branch  0x00007d32 
+ 00032030  0x00008cc1 call  0x00007d04 
+ 00032031  0x00008cc2 setarg  0x00000001 
+ 00032032  0x00008cc3 istore  0x00000001 , 0x00000012 
+ 00032033  0x00008cc4 setarg  0x000000ff 
+ 00032034  0x00008cc5 istore  0x00000001 , 0x00000005 
+ 00032035  0x00008cc6 branch  0x00007d32 
+ 00032036  0x00008ccc call  0x00007d04 
+ 00032037  0x00008ccd arg  0x0000000b , 0x00000039 
+ 00032038  0x00008cce copy  0x00000013 , 0x00000006 
+ 00032039  0x00008ccf copy  0x00000012 , 0x00000005 
+ 00032040  0x00008cd0 branch  0x00007ef4 
+ 00032041  0x00008cd5 fetch  0x00000001 , 0x0000421a 
+ 00032042  0x00008cd6 rtn  0x00000034 
+ 00032043  0x00008cd7 arg  0x00000000 , 0x00000011 
+ 00032044  0x00008cd9 call  0x00007d38 
+ 00032045  0x00008cda increase  0x00000001 , 0x00000011 
+ 00032046  0x00008cdb fetch  0x00000001 , 0x0000421a 
+ 00032047  0x00008cdc isub  0x00000011 , 0x0000003e 
+ 00032048  0x00008cdd rtn  0x00000005 
+ 00032049  0x00008cde branch  0x00007d2c 
+ 00032050  0x00008ce2 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032051  0x00008ce3 ifetcht  0x00000001 , 0x00000013 
+ 00032052  0x00008ce4 branch  0x00006825 
+ 00032053  0x00008ce8 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032054  0x00008ce9 ifetcht  0x00000001 , 0x00000013 
+ 00032055  0x00008cea branch  0x00006829 
+ 00032056  0x00008cef add  0x00000011 , 0x0000000b , 0x00000007 
+ 00032057  0x00008cf0 call  0x00007f16 
+ 00032058  0x00008cf1 nrtn  0x00000034 
+ 00032059  0x00008cf3 call  0x00007d04 
+ 00032060  0x00008cf5 ifetch  0x00000001 , 0x00000012 
+ 00032061  0x00008cf7 beq  0x00000002 , 0x00007d35 
+ 00032062  0x00008cf8 beq  0x00000003 , 0x00007d32 
+ 00032063  0x00008cf9 beq  0x00000000 , 0x00007d32 
+ 00032064  0x00008cfa beq  0x00000005 , 0x00007d4c 
+ 00032065  0x00008cfc call  0x00007d35 
+ 00032066  0x00008cfd add  0x00000012 , 0x00000007 , 0x00000013 
+ 00032067  0x00008cfe call  0x00007e7c 
+ 00032068  0x00008cff ifetch  0x00000002 , 0x00000013 
+ 00032069  0x00008d00 call  0x00007f9c 
+ 00032070  0x00008d01 call  0x00007e8c 
+ 00032071  0x00008d02 setarg  0x00000005 
+ 00032072  0x00008d03 istore  0x00000001 , 0x00000012 
+ 00032073  0x00008d04 add  0x00000012 , 0x00000003 , 0x00000013 
+ 00032074  0x00008d05 ifetch  0x00000002 , 0x00000013 
+ 00032075  0x00008d06 branch  0x00007d5c 
+ 00032076  0x00008d0a call  0x00007d32 
+ 00032077  0x00008d0b add  0x00000012 , 0x00000009 , 0x00000013 
+ 00032078  0x00008d0c call  0x00007e7c 
+ 00032079  0x00008d0d ifetch  0x00000002 , 0x00000013 
+ 00032080  0x00008d0e call  0x00007f9c 
+ 00032081  0x00008d0f call  0x00007e8c 
+ 00032082  0x00008d11 add  0x00000012 , 0x00000001 , 0x00000013 
+ 00032083  0x00008d12 ifetch  0x00000001 , 0x00000013 
+ 00032084  0x00008d13 beq  0x000000ff , 0x00007d58 
+ 00032085  0x00008d14 increase  0xffffffff , 0x0000003f 
+ 00032086  0x00008d15 istore  0x00000001 , 0x00000013 
+ 00032087  0x00008d16 branch  0x00007d19 , 0x00000034 
+ 00032088  0x00008d18 setarg  0x00000004 
+ 00032089  0x00008d19 istore  0x00000001 , 0x00000012 
+ 00032090  0x00008d1a add  0x00000012 , 0x00000005 , 0x00000013 
+ 00032091  0x00008d1b ifetch  0x00000002 , 0x00000013 
+ 00032092  0x00008d1d add  0x00000011 , 0x0000000b , 0x00000007 
+ 00032093  0x00008d1e branch  0x00007f08 
+ 00032094  0x00008d21 setarg  0x00000000 
+ 00032095  0x00008d22 branch  0x00007d5c 
+ 00032096  0x00008d29 setarg  0x00001000 
+ 00032097  0x00008d2a lshift16  0x0000003f , 0x0000003f 
+ 00032098  0x00008d2b iadd  0x00000012 , 0x00000012 
+ 00032099  0x00008d2c rtn 
+ 00032100  0x00008d2f bpatchx  0x000000f4 , 0x0000403e 
+ 00032101  0x00008d30 arg  0x00000000 , 0x00000011 
+ 00032102  0x00008d31 fetcht  0x00000004 , 0x0000467a 
+ 00032103  0x00008d32 copy  0x00000022 , 0x00000012 
+ 00032104  0x00008d33 copy  0x00000012 , 0x0000003f 
+ 00032105  0x00008d34 isub  0x00000002 , 0x0000003e 
+ 00032106  0x00008d35 ncall  0x00007d60 , 0x00000002 
+ 00032107  0x00008d38 copy  0x00000012 , 0x0000003f 
+ 00032108  0x00008d39 increase  0x000000a0 , 0x00000002 
+ 00032109  0x00008d3a increase  0x000000a0 , 0x00000002 
+ 00032110  0x00008d3b isub  0x00000002 , 0x0000003e 
+ 00032111  0x00008d3c nbranch  0x00007d78 , 0x00000002 
+ 00032112  0x00008d3d increase  0x00000001 , 0x00000011 
+ 00032113  0x00008d3e and  0x00000011 , 0x0000000f , 0x0000003f 
+ 00032114  0x00008d3f nbranch  0x00007d6b , 0x00000034 
+ 00032115  0x00008d40 arg  0x00000000 , 0x00000011 
+ 00032116  0x00008d41 call  0x00007d7f 
+ 00032117  0x00008d43 copy  0x00000022 , 0x0000003f 
+ 00032118  0x00008d44 store  0x00000004 , 0x0000467a 
+ 00032119  0x00008d45 rtn 
+ 00032120  0x00008d47 bpatchx  0x000000f5 , 0x0000403e 
+ 00032121  0x00008d48 copy  0x00000011 , 0x0000003f 
+ 00032122  0x00008d49 rtn  0x00000034 
+ 00032123  0x00008d4a increase  0xffffff60 , 0x00000002 
+ 00032124  0x00008d4b increase  0xffffff60 , 0x00000002 
+ 00032125  0x00008d4c set0  0x0000001c , 0x00000002 
+ 00032126  0x00008d4d storet  0x00000004 , 0x0000467a 
+ 00032127  0x00008d4f branch  0x0000335f 
+ 00032128  0x00008d57 jam  0x00000001 , 0x00004666 
+ 00032129  0x00008d59 fetch  0x00000001 , 0x00004667 
+ 00032130  0x00008d5a nbranch  0x00007d81 , 0x00000034 
+ 00032131  0x00008d5b rtn 
+ 00032132  0x00008d5e jam  0x00000000 , 0x00004666 
+ 00032133  0x00008d5f rtn 
+ 00032134  0x00008d64 bpatchx  0x000000f6 , 0x0000403e 
+ 00032135  0x00008d65 call  0x00007d80 
+ 00032136  0x00008d66 copy  0x00000011 , 0x0000003f 
+ 00032137  0x00008d67 store  0x00000004 , 0x00000a91 
+ 00032138  0x00008d68 arg  0x00004668 , 0x00000011 
+ 00032139  0x00008d69 call  0x00007fb8 
+ 00032140  0x00008d6a fetch  0x00000004 , 0x00000a91 
+ 00032141  0x00008d6b copy  0x0000003f , 0x00000011 
+ 00032142  0x00008d6c branch  0x00007d84 
+ 00032143  0x00008d6f bpatchx  0x000000f7 , 0x0000403e 
+ 00032144  0x00008d70 call  0x00007d80 
+ 00032145  0x00008d71 copy  0x00000011 , 0x0000003f 
+ 00032146  0x00008d72 store  0x00000004 , 0x00000a91 
+ 00032147  0x00008d73 arg  0x00004670 , 0x00000011 
+ 00032148  0x00008d74 call  0x00007fb8 
+ 00032149  0x00008d75 fetch  0x00000004 , 0x00000a91 
+ 00032150  0x00008d76 copy  0x0000003f , 0x00000011 
+ 00032151  0x00008d77 branch  0x00007d84 
+ 00032152  0x00008d7a setarg  0x00000000 
+ 00032153  0x00008d7b store  0x00000008 , 0x00004670 
+ 00032154  0x00008d7c store  0x00000008 , 0x00004668 
+ 00032155  0x00008d7d rtn 
+ 00032156  0x00008d80 bpatchx  0x000000f8 , 0x0000403f 
+ 00032157  0x00008d81 fetch  0x00000001 , 0x000041ce 
+ 00032158  0x00008d82 nrtn  0x00000034 
+ 00032159  0x00008d83 arg  0x00004670 , 0x00000011 
+ 00032160  0x00008d84 call  0x00007fd0 
+ 00032161  0x00008d85 rtn  0x00000034 
+ 00032162  0x00008d86 jam  0x00000000 , 0x00000a90 
+ 00032163  0x00008d87 call  0x00007da7 
+ 00032164  0x00008d88 fetch  0x00000001 , 0x00000a90 
+ 00032165  0x00008d89 branch  0x00007d9c , 0x00000034 
+ 00032166  0x00008d8a rtn 
+ 00032167  0x00008d8d call  0x00007d80 
+ 00032168  0x00008d8e arg  0x00004670 , 0x00000011 
+ 00032169  0x00008d8f call  0x00007fc4 
+ 00032170  0x00008d90 copy  0x0000003f , 0x00000002 
+ 00032171  0x00008d91 call  0x00007d84 
+ 00032172  0x00008d92 bpatchx  0x000000f9 , 0x0000403f 
+ 00032173  0x00008d93 copy  0x00000002 , 0x0000003f 
+ 00032174  0x00008d94 rtn  0x00000034 
+ 00032175  0x00008d95 beq  0x00000001 , 0x00007ddd 
+ 00032176  0x00008d96 beq  0x00000002 , 0x00007de2 
+ 00032177  0x00008d97 beq  0x00000003 , 0x00007de8 
+ 00032178  0x00008d98 beq  0x00000007 , 0x00007ded 
+ 00032179  0x00008d99 beq  0x00000008 , 0x00007dee 
+ 00032180  0x00008d9a beq  0x00000009 , 0x00007def 
+ 00032181  0x00008d9b beq  0x0000000b , 0x00007df2 
+ 00032182  0x00008d9c beq  0x0000000c , 0x00007df3 
+ 00032183  0x00008d9d beq  0x0000000d , 0x00007df4 
+ 00032184  0x00008d9e beq  0x0000000e , 0x00007dfa 
+ 00032185  0x00008d9f beq  0x0000000f , 0x00007dff 
+ 00032186  0x00008da0 beq  0x00000010 , 0x00007e05 
+ 00032187  0x00008da1 beq  0x00000013 , 0x00007e0f 
+ 00032188  0x00008da2 beq  0x00000014 , 0x00007e11 
+ 00032189  0x00008da3 beq  0x00000015 , 0x00007e13 
+ 00032190  0x00008da4 beq  0x00000016 , 0x00007e15 
+ 00032191  0x00008da5 beq  0x00000017 , 0x00007e18 
+ 00032192  0x00008da6 beq  0x00000018 , 0x00007e1a 
+ 00032193  0x00008da7 beq  0x00000019 , 0x00007e1d 
+ 00032194  0x00008da8 beq  0x0000001b , 0x00007e25 
+ 00032195  0x00008da9 beq  0x0000001e , 0x00007e2f 
+ 00032196  0x00008dab store  0x00000001 , 0x00000a99 
+ 00032197  0x00008dac bpatchx  0x000000fa , 0x0000403f 
+ 00032198  0x00008dad call  0x000062bc 
+ 00032199  0x00008dae nbranch  0x00007ddb , 0x00000034 
+ 00032200  0x00008db0 fetch  0x00000001 , 0x00000a99 
+ 00032201  0x00008db1 bmark0  0x00000009 , 0x00007dd6 
+ 00032202  0x00008db2 beq  0x00000004 , 0x00007dea 
+ 00032203  0x00008db3 beq  0x00000005 , 0x00004d17 
+ 00032204  0x00008db4 beq  0x00000006 , 0x00004d26 
+ 00032205  0x00008db5 beq  0x0000000a , 0x00007df0 
+ 00032206  0x00008db6 beq  0x00000011 , 0x00007e0a 
+ 00032207  0x00008db7 beq  0x00000012 , 0x00007e0e 
+ 00032208  0x00008db8 beq  0x0000001d , 0x00007e26 
+ 00032209  0x00008db9 beq  0x0000001f , 0x000067cc 
+ 00032210  0x00008dba beq  0x00000020 , 0x000067d0 
+ 00032211  0x00008dbb beq  0x00000021 , 0x00007e31 
+ 00032212  0x00008dbc beq  0x00000025 , 0x0000670b 
+ 00032213  0x00008dbd rtn 
+ 00032214  0x00008dc0 store  0x00000001 , 0x00000a99 
+ 00032215  0x00008dc1 call  0x00002252 
+ 00032216  0x00008dc2 branch  0x00007ddb , 0x00000005 
+ 00032217  0x00008dc3 call  0x0000225a 
+ 00032218  0x00008dc4 nrtn  0x00000005 
+ 00032219  0x00008dc6 jam  0x00000001 , 0x00000a90 
+ 00032220  0x00008dc7 branch  0x00007d8f 
+ 00032221  0x00008dcd fetch  0x00000002 , 0x00004682 
+ 00032222  0x00008dce set1  0x00000006 
+ 00032223  0x00008dcf store  0x00000002 , 0x00004682 
+ 00032224  0x00008dd0 jam  0x00000003 , 0x00004093 
+ 00032225  0x00008dd1 rtn 
+ 00032226  0x00008dd6 jam  0x00000000 , 0x00004680 
+ 00032227  0x00008dd7 jam  0x00000000 , 0x00004093 
+ 00032228  0x00008dd8 fetch  0x00000002 , 0x00004682 
+ 00032229  0x00008dd9 set0  0x00000006 
+ 00032230  0x00008dda store  0x00000002 , 0x00004682 
+ 00032231  0x00008ddb rtn 
+ 00032232  0x00008de0 jam  0x00000005 , 0x000041ce 
+ 00032233  0x00008de1 rtn 
+ 00032234  0x00008de6 jam  0x00000007 , 0x0000007c 
+ 00032235  0x00008de7 jam  0x00000013 , 0x000004ca 
+ 00032236  0x00008de8 rtn 
+ 00032237  0x00008ded rtn 
+ 00032238  0x00008df2 rtn 
+ 00032239  0x00008df7 rtn 
+ 00032240  0x00008dfc jam  0x00000002 , 0x000004d4 
+ 00032241  0x00008dfd branch  0x00004d0a 
+ 00032242  0x00008e02 rtn 
+ 00032243  0x00008e07 rtn 
+ 00032244  0x00008e0c jam  0x00000001 , 0x0000436e 
+ 00032245  0x00008e0d jam  0x00000000 , 0x00004484 
+ 00032246  0x00008e0e fetch  0x00000002 , 0x00004682 
+ 00032247  0x00008e0f set1  0x0000000b , 0x0000003f 
+ 00032248  0x00008e10 store  0x00000002 , 0x00004682 
+ 00032249  0x00008e11 rtn 
+ 00032250  0x00008e16 fetch  0x00000002 , 0x00004682 
+ 00032251  0x00008e17 set0  0x0000000b , 0x0000003f 
+ 00032252  0x00008e18 store  0x00000002 , 0x00004682 
+ 00032253  0x00008e19 jam  0x00000000 , 0x0000436e 
+ 00032254  0x00008e1a rtn 
+ 00032255  0x00008e1f jam  0x00000001 , 0x0000436e 
+ 00032256  0x00008e20 jam  0x00000001 , 0x00004484 
+ 00032257  0x00008e21 fetch  0x00000002 , 0x00004682 
+ 00032258  0x00008e22 set1  0x0000000b , 0x0000003f 
+ 00032259  0x00008e23 store  0x00000002 , 0x00004682 
+ 00032260  0x00008e24 rtn 
+ 00032261  0x00008e29 fetch  0x00000002 , 0x00004682 
+ 00032262  0x00008e2a set0  0x0000000b , 0x0000003f 
+ 00032263  0x00008e2b store  0x00000002 , 0x00004682 
+ 00032264  0x00008e2c jam  0x00000000 , 0x0000436e 
+ 00032265  0x00008e2d rtn 
+ 00032266  0x00008e32 setarg  0x00000014 
+ 00032267  0x00008e33 store  0x00000002 , 0x0000046d 
+ 00032268  0x00008e34 store  0x00000002 , 0x000044ba 
+ 00032269  0x00008e35 branch  0x00005c92 
+ 00032270  0x00008e3a branch  0x00005abf 
+ 00032271  0x00008e3f arg  0x00000000 , 0x00000011 
+ 00032272  0x00008e40 branch  0x00007d19 
+ 00032273  0x00008e45 arg  0x00000000 , 0x00000011 
+ 00032274  0x00008e46 branch  0x00007d14 
+ 00032275  0x00008e4b arg  0x00000000 , 0x00000011 
+ 00032276  0x00008e4c branch  0x00007d1e 
+ 00032277  0x00008e51 jam  0x00000001 , 0x00004369 
+ 00032278  0x00008e52 jam  0x0000001b , 0x000041ce 
+ 00032279  0x00008e55 rtn 
+ 00032280  0x00008e5a jam  0x00000001 , 0x00004369 
+ 00032281  0x00008e5b rtn 
+ 00032282  0x00008e60 jam  0x00000000 , 0x00004369 
+ 00032283  0x00008e61 jam  0x00000000 , 0x000041ce 
+ 00032284  0x00008e62 rtn 
+ 00032285  0x00008e67 fetch  0x00000002 , 0x000041eb 
+ 00032286  0x00008e68 call  0x00007f9c 
+ 00032287  0x00008e69 fetch  0x00000001 , 0x00004686 
+ 00032288  0x00008e6a beq  0x000000ff , 0x00007e23 
+ 00032289  0x00008e6b copy  0x0000003f , 0x00000002 
+ 00032290  0x00008e6c call  0x000067fb 
+ 00032291  0x00008e6e call  0x00007d98 
+ 00032292  0x00008e6f branch  0x00002b1f 
+ 00032293  0x00008e74 branch  0x00005b02 
+ 00032294  0x00008e79 jam  0x00000034 , 0x0000007c 
+ 00032295  0x00008e7a set1  0x00000003 , 0x00000000 
+ 00032296  0x00008e7b nrtn  0x00000029 
+ 00032297  0x00008e7c jam  0x00000000 , 0x0000455b 
+ 00032298  0x00008e7d jam  0x00000013 , 0x0000007c 
+ 00032299  0x00008e7e fetch  0x00000001 , 0x0000016d 
+ 00032300  0x00008e7f set0  0x00000002 , 0x0000003f 
+ 00032301  0x00008e80 store  0x00000001 , 0x0000016d 
+ 00032302  0x00008e81 rtn 
+ 00032303  0x00008e86 force  0x00000003 , 0x00000007 
+ 00032304  0x00008e87 branch  0x00007f07 
+ 00032305  0x00008e8c call  0x000062f8 
+ 00032306  0x00008e8d jam  0x00000041 , 0x0000007d 
+ 00032307  0x00008e8e branch  0x00005f9d 
+ 00032308  0x00008e92 fetch  0x00000001 , 0x00004682 
+ 00032309  0x00008e93 rtnbit0  0x0000000c 
+ 00032310  0x00008e94 rtnbit0  0x00000007 
+ 00032311  0x00008e95 branch  0x00007e2f 
+ 00032312  0x00008e9b fetch  0x00000002 , 0x00004218 
+ 00032313  0x00008e9c add  0x0000003f , 0x00000002 , 0x00000005 
+ 00032314  0x00008e9d setarg  0x00000000 
+ 00032315  0x00008e9e istore  0x00000003 , 0x00000005 
+ 00032316  0x00008e9f rtn 
+ 00032317  0x00008ea4 call  0x00007fe9 
+ 00032318  0x00008ea5 call  0x00007e69 
+ 00032319  0x00008ea6 rtn  0x00000034 
+ 00032320  0x00008ea7 fetch  0x00000002 , 0x00004218 
+ 00032321  0x00008ea8 add  0x0000003f , 0x00000002 , 0x00000012 
+ 00032322  0x00008ea9 ifetcht  0x00000001 , 0x00000012 
+ 00032323  0x00008eaa increase  0x00000001 , 0x00000002 
+ 00032324  0x00008eab istoret  0x00000001 , 0x00000012 
+ 00032325  0x00008ead ifetcht  0x00000001 , 0x0000003f 
+ 00032326  0x00008eae copy  0x00000002 , 0x00000039 
+ 00032327  0x00008eaf add  0x0000003f , 0x00000004 , 0x00000012 
+ 00032328  0x00008eb0 ifetch  0x00000001 , 0x00000012 
+ 00032329  0x00008eb1 imul32  0x00000002 , 0x0000003f 
+ 00032330  0x00008eb2 iadd  0x00000006 , 0x00000005 
+ 00032331  0x00008eb3 copy  0x00000011 , 0x00000006 
+ 00032332  0x00008eb5 call  0x00007f01 
+ 00032333  0x00008eb6 call  0x00007e6d 
+ 00032334  0x00008eb7 pincrease  0xffffffff 
+ 00032335  0x00008eb8 ifetcht  0x00000001 , 0x00000012 
+ 00032336  0x00008eb9 increase  0x00000001 , 0x00000002 
+ 00032337  0x00008eba iand  0x00000002 , 0x00000002 
+ 00032338  0x00008ebb istoret  0x00000001 , 0x00000012 
+ 00032339  0x00008ebc branch  0x00007fe7 
+ 00032340  0x00008ec2 call  0x00007fe9 
+ 00032341  0x00008ec3 call  0x00007e65 
+ 00032342  0x00008ec4 rtn  0x00000034 
+ 00032343  0x00008ec5 fetch  0x00000002 , 0x00004218 
+ 00032344  0x00008ec6 add  0x0000003f , 0x00000002 , 0x00000012 
+ 00032345  0x00008ec7 ifetcht  0x00000001 , 0x00000012 
+ 00032346  0x00008ec8 increase  0xffffffff , 0x00000002 
+ 00032347  0x00008ec9 istoret  0x00000001 , 0x00000012 
+ 00032348  0x00008eca ifetcht  0x00000001 , 0x0000003f 
+ 00032349  0x00008ecb copy  0x00000002 , 0x00000039 
+ 00032350  0x00008ecc add  0x0000003f , 0x00000003 , 0x00000012 
+ 00032351  0x00008ecd ifetch  0x00000001 , 0x00000012 
+ 00032352  0x00008ece imul32  0x00000002 , 0x0000003f 
+ 00032353  0x00008ecf iadd  0x00000006 , 0x00000006 
+ 00032354  0x00008ed0 increase  0x00000001 , 0x00000006 
+ 00032355  0x00008ed1 copy  0x00000011 , 0x00000005 
+ 00032356  0x00008ed2 branch  0x00007e4c 
+ 00032357  0x00008ed7 fetch  0x00000002 , 0x00004218 
+ 00032358  0x00008ed8 add  0x0000003f , 0x00000002 , 0x00000006 
+ 00032359  0x00008ed9 ifetch  0x00000001 , 0x00000006 
+ 00032360  0x00008eda rtn 
+ 00032361  0x00008ede call  0x00007e6d 
+ 00032362  0x00008edf ifetcht  0x00000001 , 0x00000006 
+ 00032363  0x00008ee0 isub  0x00000002 , 0x0000003f 
+ 00032364  0x00008ee1 rtn 
+ 00032365  0x00008ee5 fetch  0x00000002 , 0x00004218 
+ 00032366  0x00008ee6 add  0x0000003f , 0x00000001 , 0x00000006 
+ 00032367  0x00008ee7 ifetch  0x00000001 , 0x00000006 
+ 00032368  0x00008ee8 rtn 
+ 00032369  0x00008ef1 sub  0x00000039 , 0x00000000 , 0x0000003e 
+ 00032370  0x00008ef2 rtn  0x00000005 
+ 00032371  0x00008ef4 rshift  0x0000003f , 0x0000003f 
+ 00032372  0x00008ef5 loop  0x00007e73 
+ 00032373  0x00008ef6 rtn 
+ 00032374  0x00008efa force  0x00000001 , 0x0000003f 
+ 00032375  0x00008efb sub  0x00000039 , 0x00000000 , 0x0000003e 
+ 00032376  0x00008efc rtn  0x00000005 
+ 00032377  0x00008efe lshift  0x0000003f , 0x0000003f 
+ 00032378  0x00008eff loop  0x00007e79 
+ 00032379  0x00008f00 rtn 
+ 00032380  0x00008f02 deposit  0x00000005 
+ 00032381  0x00008f03 store  0x00000002 , 0x00000abb 
+ 00032382  0x00008f04 storet  0x00000008 , 0x00000aa2 
+ 00032383  0x00008f05 deposit  0x0000000b 
+ 00032384  0x00008f06 store  0x00000004 , 0x00000aaa 
+ 00032385  0x00008f07 call  0x00007e85 
+ 00032386  0x00008f08 deposit  0x00000006 
+ 00032387  0x00008f09 store  0x00000002 , 0x00000ab9 
+ 00032388  0x00008f0a rtn 
+ 00032389  0x00008f0d deposit  0x00000011 
+ 00032390  0x00008f0e store  0x00000004 , 0x00000aae 
+ 00032391  0x00008f0f deposit  0x00000012 
+ 00032392  0x00008f10 store  0x00000004 , 0x00000ab2 
+ 00032393  0x00008f11 deposit  0x00000013 
+ 00032394  0x00008f12 store  0x00000003 , 0x00000ab6 
+ 00032395  0x00008f13 rtn 
+ 00032396  0x00008f16 fetcht  0x00000008 , 0x00000aa2 
+ 00032397  0x00008f17 fetch  0x00000004 , 0x00000aaa 
+ 00032398  0x00008f18 iforce  0x0000000b 
+ 00032399  0x00008f19 call  0x00007e95 
+ 00032400  0x00008f1a fetch  0x00000002 , 0x00000abb 
+ 00032401  0x00008f1b iforce  0x00000005 
+ 00032402  0x00008f1c fetch  0x00000002 , 0x00000ab9 
+ 00032403  0x00008f1d iforce  0x00000006 
+ 00032404  0x00008f1e rtn 
+ 00032405  0x00008f21 fetch  0x00000004 , 0x00000aae 
+ 00032406  0x00008f22 iforce  0x00000011 
+ 00032407  0x00008f23 fetch  0x00000004 , 0x00000ab2 
+ 00032408  0x00008f24 iforce  0x00000012 
+ 00032409  0x00008f25 fetch  0x00000003 , 0x00000ab6 
+ 00032410  0x00008f26 iforce  0x00000013 
+ 00032411  0x00008f27 rtn 
+ 00032412  0x00008f2a fetch  0x00000002 , 0x00000abb 
+ 00032413  0x00008f2b copy  0x0000003f , 0x00000005 
+ 00032414  0x00008f2c rtn 
+ 00032415  0x00008f2e fetch  0x00000002 , 0x00000ab9 
+ 00032416  0x00008f2f copy  0x0000003f , 0x00000006 
+ 00032417  0x00008f30 rtn 
+ 00032418  0x00008f32 copy  0x00000005 , 0x0000003f 
+ 00032419  0x00008f33 store  0x00000002 , 0x00000abb 
+ 00032420  0x00008f34 rtn 
+ 00032421  0x00008f36 copy  0x00000006 , 0x0000003f 
+ 00032422  0x00008f37 store  0x00000002 , 0x00000ab9 
+ 00032423  0x00008f38 rtn 
+ 00032424  0x00008f3d copy  0x00000005 , 0x0000003f 
+ 00032425  0x00008f3e store  0x00000002 , 0x00000a97 
+ 00032426  0x00008f3f copy  0x00000006 , 0x0000003f 
+ 00032427  0x00008f40 store  0x00000002 , 0x00000a95 
+ 00032428  0x00008f41 rtn 
+ 00032429  0x00008f43 fetch  0x00000002 , 0x00000a97 
+ 00032430  0x00008f44 copy  0x0000003f , 0x00000005 
+ 00032431  0x00008f45 fetch  0x00000002 , 0x00000a95 
+ 00032432  0x00008f46 copy  0x0000003f , 0x00000006 
+ 00032433  0x00008f47 rtn 
+ 00032434  0x00008f4a call  0x00007ebd 
+ 00032435  0x00008f4c call  0x00007ebd 
+ 00032436  0x00008f4d branch  0x00007ebd 
+ 00032437  0x00008f4f call  0x00007eb9 
+ 00032438  0x00008f51 ifetch  0x00000004 , 0x00000006 
+ 00032439  0x00008f52 istore  0x00000004 , 0x00000005 
+ 00032440  0x00008f53 rtn 
+ 00032441  0x00008f55 ifetch  0x00000008 , 0x00000006 
+ 00032442  0x00008f56 istore  0x00000008 , 0x00000005 
+ 00032443  0x00008f57 rtn 
+ 00032444  0x00008f5a call  0x00007ebf 
+ 00032445  0x00008f5c call  0x00007eb9 
+ 00032446  0x00008f5e call  0x00007eb9 
+ 00032447  0x00008f60 call  0x00007eb9 
+ 00032448  0x00008f61 branch  0x00007eb9 
+ 00032449  0x00008f66 arg  0x0000000a , 0x00000039 
+ 00032450  0x00008f68 nop  0x00002ee0 
+ 00032451  0x00008f69 loop  0x00007ec2 
+ 00032452  0x00008f6a rtn 
+ 00032453  0x00008f6d force  0x00000003 , 0x00000039 
+ 00032454  0x00008f6f force  0x00000000 , 0x0000003f 
+ 00032455  0x00008f71 istore  0x00000008 , 0x00000005 
+ 00032456  0x00008f72 loop  0x00007ec7 
+ 00032457  0x00008f73 rtn 
+ 00032458  0x00008f76 force  0x00000000 , 0x0000003f 
+ 00032459  0x00008f77 istore  0x00000008 , 0x00000005 
+ 00032460  0x00008f78 rtn 
+ 00032461  0x00008f7a force  0x00000000 , 0x0000003f 
+ 00032462  0x00008f7b istore  0x00000004 , 0x00000005 
+ 00032463  0x00008f7c rtn 
+ 00032464  0x00008f7f force  0x00000004 , 0x00000039 
+ 00032465  0x00008f80 branch  0x00007ec6 
+ 00032466  0x00008f82 force  0x00000008 , 0x00000039 
+ 00032467  0x00008f83 branch  0x00007ec6 
+ 00032468  0x00008f86 deposit  0x00000039 
+ 00032469  0x00008f87 rtn  0x00000034 
+ 00032470  0x00008f88 setarg  0x00000000 
+ 00032471  0x00008f8a istore  0x00000001 , 0x00000005 
+ 00032472  0x00008f8b loop  0x00007ed7 
+ 00032473  0x00008f8c rtn 
+ 00032474  0x00008f90 arg  0x00000020 , 0x00000039 
+ 00032475  0x00008f91 arg  0x00000ac2 , 0x00000005 
+ 00032476  0x00008f92 branch  0x00007ed4 
+ 00032477  0x00008f95 ifetch  0x00000004 , 0x00000013 
+ 00032478  0x00008f96 ifetcht  0x00000004 , 0x00000011 
+ 00032479  0x00008f97 ixor  0x00000002 , 0x0000003f 
+ 00032480  0x00008f98 istore  0x00000004 , 0x00000005 
+ 00032481  0x00008f99 increase  0x00000004 , 0x00000011 
+ 00032482  0x00008f9a increase  0x00000004 , 0x00000013 
+ 00032483  0x00008f9b loop  0x00007edd 
+ 00032484  0x00008f9c rtn 
+ 00032485  0x00008fa1 bpatchx  0x000000fb , 0x0000403f 
+ 00032486  0x00008fa2 copy  0x00000039 , 0x0000003f 
+ 00032487  0x00008fa3 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00032488  0x00008fa4 rtn  0x00000002 
+ 00032489  0x00008fa5 iadd  0x00000011 , 0x00000012 
+ 00032490  0x00008fa6 increase  0xffffffff , 0x00000012 
+ 00032491  0x00008fa7 rshift  0x00000039 , 0x00000039 
+ 00032492  0x00008fa9 ifetcht  0x00000001 , 0x00000011 
+ 00032493  0x00008faa ifetch  0x00000001 , 0x00000012 
+ 00032494  0x00008fab istore  0x00000001 , 0x00000011 
+ 00032495  0x00008fac istoret  0x00000001 , 0x00000012 
+ 00032496  0x00008fad increase  0xffffffff , 0x00000012 
+ 00032497  0x00008fae increase  0x00000001 , 0x00000011 
+ 00032498  0x00008faf loop  0x00007eec 
+ 00032499  0x00008fb0 rtn 
+ 00032500  0x00008fb4 deposit  0x00000039 
+ 00032501  0x00008fb5 rtn  0x00000034 
+ 00032502  0x00008fb7 increase  0xfffffff8 , 0x00000039 
+ 00032503  0x00008fb8 call  0x00007eb9 , 0x00000002 
+ 00032504  0x00008fb9 rtn  0x00000005 
+ 00032505  0x00008fba branch  0x00007ef6 , 0x00000002 
+ 00032506  0x00008fbb increase  0x00000008 , 0x00000039 
+ 00032507  0x00008fbd increase  0xfffffffc , 0x00000039 
+ 00032508  0x00008fbe call  0x00007eb6 , 0x00000002 
+ 00032509  0x00008fbf rtn  0x00000005 
+ 00032510  0x00008fc0 branch  0x00007efb , 0x00000002 
+ 00032511  0x00008fc1 increase  0x00000004 , 0x00000039 
+ 00032512  0x00008fc2 branch  0x00007f01 
+ 00032513  0x00008fc5 deposit  0x00000039 
+ 00032514  0x00008fc6 rtn  0x00000034 
+ 00032515  0x00008fc8 ifetch  0x00000001 , 0x00000006 
+ 00032516  0x00008fc9 istore  0x00000001 , 0x00000005 
+ 00032517  0x00008fca loop  0x00007f03 
+ 00032518  0x00008fcb rtn 
+ 00032519  0x00008fce setarg  0x00000000 
+ 00032520  0x00008fd0 rshift  0x00000022 , 0x00000002 
+ 00032521  0x00008fd1 storet  0x00000004 , 0x00004094 
+ 00032522  0x00008fd2 arg  0x0000419d , 0x00000005 
+ 00032523  0x00008fd3 iforce  0x00000002 
+ 00032524  0x00008fd4 lshift  0x00000007 , 0x0000003f 
+ 00032525  0x00008fd5 iadd  0x00000005 , 0x00000005 
+ 00032526  0x00008fd6 istoret  0x00000002 , 0x00000005 
+ 00032527  0x00008fd7 bpatchx  0x000000fc , 0x0000403f 
+ 00032528  0x00008fd8 rtn 
+ 00032529  0x00008fdb arg  0x00000800 , 0x0000000b 
+ 00032530  0x00008fdc lshift16  0x0000000b , 0x0000000b 
+ 00032531  0x00008fdd iadd  0x0000000b , 0x0000003f 
+ 00032532  0x00008fde rtn 
+ 00032533  0x00008fe2 arg  0x00000000 , 0x00000007 
+ 00032534  0x00008fe4 bpatchx  0x000000fd , 0x0000403f 
+ 00032535  0x00008fe5 fetcht  0x00000004 , 0x00004094 
+ 00032536  0x00008fe6 rshift  0x00000022 , 0x0000003f 
+ 00032537  0x00008fe7 store  0x00000004 , 0x00004094 
+ 00032538  0x00008fe8 isub  0x00000002 , 0x0000003e 
+ 00032539  0x00008fe9 ncall  0x00007f11 , 0x00000002 
+ 00032540  0x00008fea isub  0x00000002 , 0x0000000b 
+ 00032541  0x00008feb copy  0x0000000b , 0x00000002 
+ 00032542  0x00008fec arg  0x0000419d , 0x00000006 
+ 00032543  0x00008fed copy  0x00000006 , 0x00000005 
+ 00032544  0x00008fee arg  0x00000010 , 0x00000039 
+ 00032545  0x00008ff0 ifetch  0x00000002 , 0x00000006 
+ 00032546  0x00008ff1 isub  0x00000002 , 0x0000003f 
+ 00032547  0x00008ff2 branch  0x00007f25 , 0x00000002 
+ 00032548  0x00008ff3 force  0x00000000 , 0x0000003f 
+ 00032549  0x00008ff5 istore  0x00000002 , 0x00000005 
+ 00032550  0x00008ff6 loop  0x00007f21 
+ 00032551  0x00008ff7 arg  0x0000419d , 0x00000006 
+ 00032552  0x00008ff8 lshift  0x00000007 , 0x0000003f 
+ 00032553  0x00008ff9 iadd  0x00000006 , 0x00000006 
+ 00032554  0x00008ffa ifetch  0x00000002 , 0x00000006 
+ 00032555  0x00008ffb rtn 
+ 00032556  0x00009001 iadd  0x00000002 , 0x00000002 
+ 00032557  0x00009002 copy  0x00000002 , 0x00000039 
+ 00032558  0x00009003 setarg  0x00000ea6 
+ 00032559  0x00009004 isub  0x00000039 , 0x0000003f 
+ 00032560  0x00009005 rtn  0x00000002 
+ 00032561  0x00009006 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00032562  0x00009007 rshift16  0x00000002 , 0x00000002 
+ 00032563  0x00009008 increase  0x00000001 , 0x00000002 
+ 00032564  0x00009009 lshift16  0x00000002 , 0x00000002 
+ 00032565  0x0000900a ior  0x00000002 , 0x00000002 
+ 00032566  0x0000900b rtn 
+ 00032567  0x0000900e call  0x00007f39 
+ 00032568  0x0000900f branch  0x00007f43 
+ 00032569  0x00009013 disable  0x00000028 
+ 00032570  0x00009014 isub  0x00000002 , 0x0000003f 
+ 00032571  0x00009015 branch  0x00007f3e , 0x00000002 
+ 00032572  0x00009016 enable  0x00000028 
+ 00032573  0x00009017 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00032574  0x00009019 rtnbit0  0x0000000f 
+ 00032575  0x0000901a arg  0xffff0ea6 , 0x00000002 
+ 00032576  0x0000901b iadd  0x00000002 , 0x0000003f 
+ 00032577  0x0000901c set0  0x00000040 , 0x0000003f 
+ 00032578  0x0000901d rtn 
+ 00032579  0x00009020 iforce  0x00000006 
+ 00032580  0x00009021 rshift16  0x0000003f , 0x0000003f 
+ 00032581  0x00009022 arg  0x00000ea6 , 0x00000002 
+ 00032582  0x00009023 imul32  0x00000002 , 0x0000003f 
+ 00032583  0x00009024 iadd  0x00000006 , 0x0000003f 
+ 00032584  0x00009025 rtn 
+ 00032585  0x00009029 lshift8  0x0000003f , 0x0000003f 
+ 00032586  0x0000902a lshift4  0x0000003f , 0x0000003f 
+ 00032587  0x0000902b fetcht  0x00000003 , 0x0000416f 
+ 00032588  0x0000902c idiv  0x00000002 
+ 00032589  0x0000902d call  0x00007f86 
+ 00032590  0x0000902e quotient  0x00000002 
+ 00032591  0x0000902f rtn 
+ 00032592  0x00009033 arg  0x00000ea6 , 0x00000002 
+ 00032593  0x00009034 idiv  0x00000002 
+ 00032594  0x00009035 call  0x00007f86 
+ 00032595  0x00009036 quotient  0x0000003f 
+ 00032596  0x00009037 lshift16  0x0000003f , 0x0000003f 
+ 00032597  0x00009038 remainder  0x00000002 
+ 00032598  0x00009039 ior  0x00000002 , 0x00000002 
+ 00032599  0x0000903a rtn 
+ 00032600  0x00009042 arg  0x00000000 , 0x00000002 
+ 00032601  0x00009044 copy  0x00000002 , 0x00000013 
+ 00032602  0x00009045 ifetch  0x00000001 , 0x00000003 
+ 00032603  0x00009046 call  0x00007f64 
+ 00032604  0x00009047 copy  0x00000013 , 0x00000002 
+ 00032605  0x00009048 call  0x00007f95 
+ 00032606  0x00009049 arg  0x0000000a , 0x00000012 
+ 00032607  0x0000904a imul32  0x00000012 , 0x0000003f 
+ 00032608  0x0000904b iadd  0x00000002 , 0x0000003f 
+ 00032609  0x0000904c copy  0x0000003f , 0x00000002 
+ 00032610  0x0000904d loop  0x00007f59 
+ 00032611  0x0000904e rtn 
+ 00032612  0x00009053 arg  0x0000003a , 0x00000002 
+ 00032613  0x00009054 isub  0x00000002 , 0x0000003e 
+ 00032614  0x00009055 nbranch  0x00007f6d , 0x00000002 
+ 00032615  0x00009056 arg  0x00000061 , 0x00000002 
+ 00032616  0x00009057 isub  0x00000002 , 0x0000003e 
+ 00032617  0x00009058 branch  0x00007f70 , 0x00000002 
+ 00032618  0x00009059 arg  0x00000037 , 0x00000002 
+ 00032619  0x0000905a isub  0x00000002 , 0x0000003f 
+ 00032620  0x0000905b rtn 
+ 00032621  0x0000905d arg  0x00000030 , 0x00000002 
+ 00032622  0x0000905e isub  0x00000002 , 0x0000003f 
+ 00032623  0x0000905f rtn 
+ 00032624  0x00009061 arg  0x00000057 , 0x00000002 
+ 00032625  0x00009062 isub  0x00000002 , 0x0000003f 
+ 00032626  0x00009063 rtn 
+ 00032627  0x00009066 copy  0x00000002 , 0x00000030 
+ 00032628  0x00009067 setarg  0x000001ff 
+ 00032629  0x00009068 force  0x00000000 , 0x00000012 
+ 00032630  0x0000906a rshift3  0x0000003f , 0x00000011 
+ 00032631  0x0000906b rshift  0x00000011 , 0x00000011 
+ 00032632  0x0000906c ixor  0x00000011 , 0x00000011 
+ 00032633  0x0000906d isolate1  0x00000000 , 0x00000011 
+ 00032634  0x0000906e setflag  0x00000001 , 0x00000009 , 0x0000003f 
+ 00032635  0x0000906f rshift  0x00000002 , 0x00000002 
+ 00032636  0x00009070 isolate1  0x00000000 , 0x0000003f 
+ 00032637  0x00009071 setflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00032638  0x00009072 rshift  0x0000003f , 0x0000003f 
+ 00032639  0x00009073 increase  0x00000001 , 0x00000012 
+ 00032640  0x00009074 compare  0x00000000 , 0x00000012 , 0x00000007 
+ 00032641  0x00009075 nbranch  0x00007f76 , 0x00000001 
+ 00032642  0x00009076 istoret  0x00000001 , 0x00000005 
+ 00032643  0x00009077 loop  0x00007f76 
+ 00032644  0x00009078 copy  0x00000030 , 0x00000002 
+ 00032645  0x00009079 rtn 
+ 00032646  0x0000907d rtn  0x00000035 
+ 00032647  0x0000907e branch  0x00007f86 
+ 00032648  0x0000908a ifetch  0x00000001 , 0x00000011 
+ 00032649  0x0000908b ifetcht  0x00000001 , 0x00000012 
+ 00032650  0x0000908c isub  0x00000002 , 0x0000003e 
+ 00032651  0x0000908d nrtn  0x00000005 
+ 00032652  0x0000908e increase  0x00000001 , 0x00000011 
+ 00032653  0x0000908f increase  0x00000001 , 0x00000012 
+ 00032654  0x00009090 loop  0x00007f88 
+ 00032655  0x00009091 force  0x00000000 , 0x0000003e 
+ 00032656  0x00009092 rtn 
+ 00032657  0x00009096 isub  0x00000002 , 0x0000003e 
+ 00032658  0x00009097 nrtn  0x00000002 
+ 00032659  0x00009098 deposit  0x00000002 
+ 00032660  0x00009099 rtn 
+ 00032661  0x0000909c iadd  0x00000002 , 0x0000003f 
+ 00032662  0x0000909d isub  0x00000002 , 0x00000002 
+ 00032663  0x0000909e isub  0x00000002 , 0x0000003f 
+ 00032664  0x0000909f rtn 
+ 00032665  0x000090a2 arg  0x00000200 , 0x00000039 
+ 00032666  0x000090a3 arg  0x00004000 , 0x00000005 
+ 00032667  0x000090a4 branch  0x00007ec6 
+ 00032668  0x000090a8 rtn  0x00000034 
+ 00032669  0x000090a9 copy  0x0000003f , 0x0000003d 
+ 00032670  0x000090ad hfetch  0x00000002 , 0x0000810e 
+ 00032671  0x000090ae nbranch  0x00007f9e , 0x00000034 
+ 00032672  0x000090af rtn 
+ 00032673  0x000090b2 jam  0x00000001 , 0x00008203 
+ 00032674  0x000090b3 rtn 
+ 00032675  0x000090b6 hstore  0x00000002 , 0x00008205 
+ 00032676  0x000090b7 hfetch  0x00000001 , 0x00008203 
+ 00032677  0x000090b8 set1  0x00000004 , 0x0000003f 
+ 00032678  0x000090b9 hstore  0x00000001 , 0x00008203 
+ 00032679  0x000090ba rtn 
+ 00032680  0x000090bc hstore  0x00000002 , 0x00008207 
+ 00032681  0x000090bd hfetch  0x00000001 , 0x00008203 
+ 00032682  0x000090be set1  0x00000006 , 0x0000003f 
+ 00032683  0x000090bf hstore  0x00000001 , 0x00008203 
+ 00032684  0x000090c0 rtn 
+ 00032685  0x000090c3 hstore  0x00000002 , 0x00008205 
+ 00032686  0x000090c4 jam  0x00000030 , 0x00008203 
+ 00032687  0x000090c5 rtn 
+ 00032688  0x000090ca hfetch  0x00000001 , 0x00008043 
+ 00032689  0x000090cb set0  0x00000004 , 0x0000003f 
+ 00032690  0x000090cc hstore  0x00000001 , 0x00008043 
+ 00032691  0x000090cd rtn 
+ 00032692  0x000090d0 hfetch  0x00000002 , 0x0000810e 
+ 00032693  0x000090d1 arg  0x00000200 , 0x00000002 
+ 00032694  0x000090d3 isub  0x00000002 , 0x0000003e 
+ 00032695  0x000090d4 rtn 
+ 00032696  0x000090db bpatchx  0x000000fe , 0x0000403f 
+ 00032697  0x000090dc ifetcht  0x00000008 , 0x00000011 
+ 00032698  0x000090dd and  0x00000002 , 0x000000ff , 0x0000003f 
+ 00032699  0x000090de nbranch  0x00007fbe , 0x00000034 
+ 00032700  0x000090df rshift8  0x00000002 , 0x0000003f 
+ 00032701  0x000090e0 istore  0x00000008 , 0x00000011 
+ 00032702  0x000090e2 increase  0x00000007 , 0x00000011 
+ 00032703  0x000090e3 ifetch  0x00000001 , 0x00000011 
+ 00032704  0x000090e4 nbranch  0x00002a8c , 0x00000034 
+ 00032705  0x000090e5 fetch  0x00000001 , 0x00000a99 
+ 00032706  0x000090e6 istore  0x00000001 , 0x00000011 
+ 00032707  0x000090e7 rtn 
+ 00032708  0x000090ed bpatchx  0x000000ff , 0x0000403f 
+ 00032709  0x000090ee arg  0x00000008 , 0x00000039 
+ 00032710  0x000090ef ifetch  0x00000008 , 0x00000011 
+ 00032711  0x000090f0 rtn  0x00000034 
+ 00032712  0x000090f2 ifetch  0x00000001 , 0x00000011 
+ 00032713  0x000090f3 nbranch  0x00007fcd , 0x00000034 
+ 00032714  0x000090f4 increase  0x00000001 , 0x00000011 
+ 00032715  0x000090f5 loop  0x00007fc8 
+ 00032716  0x000090f6 branch  0x00002a8c 
+ 00032717  0x000090f8 arg  0x00000000 , 0x00000002 
+ 00032718  0x000090f9 istoret  0x00000001 , 0x00000011 
+ 00032719  0x000090fa rtn 
+ 00032720  0x00009100 ifetch  0x00000008 , 0x00000011 
+ 00032721  0x00009101 rtn 
+ 00032722  0x00009107 ifetch  0x00000001 , 0x00000011 
+ 00032723  0x00009108 rtn 
+ 00032724  0x0000910c ifetch  0x00000002 , 0x00000011 
+ 00032725  0x0000910d rtn 
+ 00032726  0x00009112 arg  0x00000000 , 0x00000002 
+ 00032727  0x00009114 fetch  0x00000001 , 0x00000006 
+ 00032728  0x00009115 loop  0x00007fd7 , 0x00000034 
+ 00032729  0x00009116 increase  0x00000001 , 0x00000002 
+ 00032730  0x00009117 loop  0x00007fd7 
+ 00032731  0x00009118 copy  0x00000002 , 0x0000003f 
+ 00032732  0x00009119 rtn 
+ 00032733  0x0000911c isub  0x00000002 , 0x0000003e 
+ 00032734  0x0000911d nrtn  0x00000002 
+ 00032735  0x0000911e copy  0x00000002 , 0x0000003f 
+ 00032736  0x0000911f rtn 
+ 00032737  0x00009123 force  0xffffffff , 0x0000003e 
+ 00032738  0x00009124 rtn 
+ 00032739  0x00009127 force  0x00000001 , 0x0000003e 
+ 00032740  0x00009128 rtn 
+ 00032741  0x0000912a force  0x00000000 , 0x0000003e 
+ 00032742  0x0000912b rtn 
+ 00032743  0x0000912e enable  0x00000028 
+ 00032744  0x0000912f rtn 
+ 00032745  0x00009132 disable  0x00000028 
+ 00032746  0x00009133 rtn 
+ 00032747  0x00009136 enable  0x0000002c 
+ 00032748  0x00009137 rtn 
+ 00032749  0x0000913a disable  0x0000002c 
+ 00032750  0x0000913b rtn 
+ 00032751  0x0000913e setarg  0x00000001 
+ 00032752  0x0000913f rtn 
+ 00032753  0x00009142 setarg  0x00000000 
+ 00032754  0x00009143 rtn 
+ 00032755  0x00009147 copy  0x00000039 , 0x0000003f 
+ 00032756  0x00009148 rtn  0x00000034 
+ 00032757  0x00009149 copy  0x00000006 , 0x0000003f 
+ 00032758  0x0000914a iadd  0x00000039 , 0x0000003f 
+ 00032759  0x0000914b increase  0xffffffff , 0x0000003f 
+ 00032760  0x0000914c copy  0x0000003f , 0x00000006 
+ 00032761  0x0000914e ifetch  0x00000001 , 0x00000006 
+ 00032762  0x0000914f increase  0xfffffffe , 0x00000006 
+ 00032763  0x00009150 istore  0x00000001 , 0x00000005 
+ 00032764  0x00009151 loop  0x00007ff9 
+ 00032765  0x00009152 rtn 
+ 00065537  0x00009158 beq  0x00000000 , 0x0001001f 
+ 00065538  0x00009159 beq  0x00000001 , 0x00010004 
+ 00065539  0x0000915a rtn 
+ 00065540  0x0000915d call  0x0000026b 
+ 00065541  0x0000915e nrtn  0x00000028 
+ 00065542  0x0000915f call  0x00010019 
+ 00065543  0x00009160 fetch  0x00000002 , 0x00004fc4 
+ 00065544  0x00009161 increase  0x00000001 , 0x0000003f 
+ 00065545  0x00009162 store  0x00000002 , 0x00004fc4 
+ 00065546  0x00009163 fetcht  0x00000002 , 0x00004fc6 
+ 00065547  0x00009164 isub  0x00000002 , 0x0000003e 
+ 00065548  0x00009165 call  0x0001000e , 0x00000005 
+ 00065549  0x00009166 branch  0x0000009c 
+ 00065550  0x00009169 jam  0x00000000 , 0x00004fc3 
+ 00065551  0x0000916a setarg  0x00000000 
+ 00065552  0x0000916b store  0x00000002 , 0x00004fc4 
+ 00065553  0x0000916c setarg  0x00000019 
+ 00065554  0x0000916d store  0x00000002 , 0x00004fc6 
+ 00065555  0x0000916f jam  0x00000000 , 0x00004ebe 
+ 00065556  0x00009170 fetch  0x00000001 , 0x00004ea9 
+ 00065557  0x00009172 store  0x00000001 , 0x00004ea8 
+ 00065558  0x00009173 rtn 
+ 00065559  0x00009175 fetch  0x00000001 , 0x00004eaa 
+ 00065560  0x00009176 branch  0x00010015 
+ 00065561  0x00009178 fetch  0x00000001 , 0x00004ebe 
+ 00065562  0x00009179 increase  0x00000001 , 0x0000003f 
+ 00065563  0x0000917a store  0x00000001 , 0x00004ebe 
+ 00065564  0x0000917b beq  0x00000004 , 0x00010017 
+ 00065565  0x0000917c beq  0x00000005 , 0x00010013 
+ 00065566  0x0000917d rtn 
+ 00065567  0x00009180 fetch  0x00000001 , 0x0000000e 
+ 00065568  0x00009181 increase  0x00000001 , 0x0000003f 
+ 00065569  0x00009182 store  0x00000001 , 0x0000000e 
+ 00065570  0x00009183 call  0x00002435 
+ 00065571  0x00009185 set1  0x0000002c , 0x00000000 
+ 00065572  0x00009186 call  0x000022f2 
+ 00065573  0x00009187 branch  0x0001002a , 0x00000018 
+ 00065574  0x00009188 set0  0x0000002c , 0x00000000 
+ 00065575  0x00009189 call  0x00002455 
+ 00065576  0x0000918a nbranch  0x00010023 , 0x00000034 
+ 00065577  0x0000918b branch  0x000020fc 
+ 00065578  0x0000918d set0  0x0000002c , 0x00000000 
+ 00065579  0x0000918e branch  0x0000215f 
+ 00131073  0x00009194 beq  0x00000010 , 0x00020004 
+ 00131074  0x00009195 beq  0x00000011 , 0x00020019 
+ 00131075  0x00009196 rtn 
+ 00131076  0x00009199 jam  0x00000000 , 0x000049e3 
+ 00131077  0x0000919a jam  0x0000000e , 0x000041e3 
+ 00131078  0x0000919b call  0x000041e7 
+ 00131079  0x0000919c fetch  0x00000002 , 0x00004208 
+ 00131080  0x0000919d bbit1  0x00000007 , 0x0002000e 
+ 00131081  0x0000919e bbit1  0x00000000 , 0x000033a9 
+ 00131082  0x0000919f bbit1  0x00000001 , 0x00020012 
+ 00131083  0x000091a0 bbit1  0x00000002 , 0x00020015 
+ 00131084  0x000091a1 bbit1  0x00000003 , 0x00020015 
+ 00131085  0x000091a2 branch  0x000042b0 
+ 00131086  0x000091a5 call  0x000041c1 
+ 00131087  0x000091a6 fetch  0x00000002 , 0x00004208 
+ 00131088  0x000091a7 bbit1  0x0000000a , 0x00000446 
+ 00131089  0x000091a8 branch  0x000041f7 
+ 00131090  0x000091ab bbit1  0x00000005 , 0x00020015 
+ 00131091  0x000091ac bbit1  0x00000003 , 0x00020015 
+ 00131092  0x000091ad branch  0x000042b0 
+ 00131093  0x000091af fetch  0x00000002 , 0x00004682 
+ 00131094  0x000091b0 bbit1  0x0000000c , 0x000042b0 
+ 00131095  0x000091b1 call  0x000033a9 
+ 00131096  0x000091bb branch  0x000033a7 
+ 00131097  0x000091bf fetch  0x00000002 , 0x00000264 
+ 00131098  0x000091c0 copy  0x0000003f , 0x00000006 
+ 00131099  0x000091c1 ifetch  0x00000001 , 0x00000006 
+ 00131100  0x000091c2 store  0x00000001 , 0x00004cdd 
+ 00131101  0x000091c3 and  0x0000003f , 0x0000000f , 0x00000002 
+ 00131102  0x000091c4 rshift4  0x0000003f , 0x0000003f 
+ 00131103  0x000091c5 beq  0x00000007 , 0x00020022 
+ 00131104  0x000091c6 beq  0x00000001 , 0x00020029 
+ 00131105  0x000091c7 branch  0x00004d39 
+ 00131106  0x000091c9 call  0x00004d53 
+ 00131107  0x000091ca jam  0x00000000 , 0x00004cde 
+ 00131108  0x000091cb fetch  0x00000001 , 0x00004cdd 
+ 00131109  0x000091cc isolate1  0x00000000 , 0x0000003f 
+ 00131110  0x000091cd rtn  0x00000001 
+ 00131111  0x000091ce jam  0x00000001 , 0x00004cde 
+ 00131112  0x000091cf rtn 
+ 00131113  0x000091d2 copy  0x00000002 , 0x0000003f 
+ 00131114  0x000091d3 beq  0x00000005 , 0x00000412 
+ 00131115  0x000091d4 branch  0x00004d41 
+ 00196609  0x000091d9 beq  0x00000020 , 0x0003001f 
+ 00196610  0x000091da beq  0x00000021 , 0x0003002c 
+ 00196611  0x000091db beq  0x00000022 , 0x00030005 
+ 00196612  0x000091dc rtn 
+ 00196613  0x000091e0 call  0x000002a3 
+ 00196614  0x000091e1 fetch  0x00000001 , 0x00004720 
+ 00196615  0x000091e2 beq  0x00000002 , 0x000001b5 
+ 00196616  0x000091e3 beq  0x000000ff , 0x000001b5 
+ 00196617  0x000091e4 call  0x000004f6 
+ 00196618  0x000091e5 fetch  0x00000001 , 0x00004210 
+ 00196619  0x000091e6 beq  0x00000033 , 0x0003000e 
+ 00196620  0x000091e7 beq  0x00000034 , 0x00030011 
+ 00196621  0x000091e8 branch  0x000002a0 
+ 00196622  0x000091eb fetch  0x00000006 , 0x000041d0 
+ 00196623  0x000091ec branch  0x000033eb , 0x00000034 
+ 00196624  0x000091ed branch  0x00004274 
+ 00196625  0x000091f1 jam  0x00000001 , 0x00004d45 
+ 00196626  0x000091f2 jam  0x00000001 , 0x000047a1 
+ 00196627  0x000091f3 arg  0x0000000a , 0x00000002 
+ 00196628  0x000091f4 fetch  0x00000001 , 0x00004d3e 
+ 00196629  0x000091f5 beq  0x000000ff , 0x00030017 
+ 00196630  0x000091f6 fetcht  0x00000002 , 0x000046a8 
+ 00196631  0x000091f8 storet  0x00000002 , 0x000046ae 
+ 00196632  0x000091f9 call  0x00003418 
+ 00196633  0x000091fa call  0x000002a6 
+ 00196634  0x000091fb setarg  0x00000004 
+ 00196635  0x000091fc istore  0x00000001 , 0x00000006 
+ 00196636  0x000091fe arg  0x00004390 , 0x00000006 
+ 00196637  0x000091ff call  0x000005ba 
+ 00196638  0x00009201 branch  0x00007df4 
+ 00196639  0x00009203 fetch  0x00000001 , 0x00000048 
+ 00196640  0x00009204 beq  0x00000084 , 0x00030023 
+ 00196641  0x00009205 beq  0x00000083 , 0x00030026 
+ 00196642  0x00009206 branch  0x0000603f 
+ 00196643  0x00009208 call  0x00030029 
+ 00196644  0x00009209 fetch  0x00000001 , 0x00000048 
+ 00196645  0x0000920a branch  0x00006099 
+ 00196646  0x0000920c call  0x00030029 
+ 00196647  0x0000920d fetch  0x00000001 , 0x00000048 
+ 00196648  0x0000920e branch  0x0000610d 
+ 00196649  0x00009210 fetch  0x00000001 , 0x0000465a 
+ 00196650  0x00009211 branch  0x0000612b , 0x00000034 
+ 00196651  0x00009212 branch  0x00006124 
+ 00196652  0x00009215 force  0x00000002 , 0x0000003f 
+ 00196653  0x00009216 call  0x00006298 
+ 00196654  0x00009217 fetch  0x00000001 , 0x00000049 
+ 00196655  0x00009218 istore  0x00000001 , 0x00000005 
+ 00196656  0x00009219 store  0x00000001 , 0x00004cd7 
+ 00196657  0x0000921a call  0x000062a7 
+ 00196658  0x0000921b fetch  0x00000001 , 0x00004cd7 
+ 00196659  0x0000921c beq  0x0000002e , 0x00030035 
+ 00196660  0x0000921d branch  0x00006051 
+ 00196661  0x00009220 fetch  0x00000001 , 0x00004cda 
+ 00196662  0x00009221 rtn  0x00000034 
+ 00196663  0x00009222 jam  0x00000000 , 0x00004cda 
+ 00196664  0x00009223 fetch  0x00000001 , 0x00004cdc 
+ 00196665  0x00009224 rtnne  0x00000002 
+ 00196666  0x00009225 jam  0x00000001 , 0x00004cdb 
+ 00196667  0x00009226 copy  0x00000022 , 0x0000003f 
+ 00196668  0x00009227 store  0x00000004 , 0x000004e9 
+ 00196669  0x00009228 rtn 
+ 00262145  0x0000922e beq  0x00000030 , 0x00040003 
+ 00262146  0x0000922f rtn 
+ 00262147  0x00009232 call  0x000062bc 
+ 00262148  0x00009233 nrtn  0x00000034 
+ 00262149  0x00009235 fetch  0x00000001 , 0x00000055 
+ 00262150  0x00009236 rtn  0x00000034 
+ 00262151  0x00009237 beq  0x00000004 , 0x00040025 
+ 00262152  0x00009238 beq  0x00000010 , 0x0004000a 
+ 00262153  0x00009239 branch  0x00006320 
+ 00262154  0x0000923d fetch  0x00000001 , 0x0000455b 
+ 00262155  0x0000923e rtneq  0x00000000 
+ 00262156  0x0000923f beq  0x00000001 , 0x0004000e 
+ 00262157  0x00009240 branch  0x0000635f 
+ 00262158  0x00009242 rtn  0x00000029 
+ 00262159  0x00009245 fetch  0x00000001 , 0x0000016d 
+ 00262160  0x00009246 bbit1  0x00000000 , 0x00040012 
+ 00262161  0x00009247 branch  0x00006399 
+ 00262162  0x00009249 fetch  0x00000001 , 0x00004cdc 
+ 00262163  0x0000924a beq  0x00000001 , 0x0000639d 
+ 00262164  0x0000924c fetch  0x00000001 , 0x000041bd 
+ 00262165  0x0000924d branch  0x000063a9 , 0x00000034 
+ 00262166  0x0000924e fetch  0x00000001 , 0x000004d1 
+ 00262167  0x0000924f rtnbit0  0x00000003 
+ 00262168  0x00009250 rtnbit0  0x00000002 
+ 00262169  0x00009251 fetch  0x00000001 , 0x00004cdb 
+ 00262170  0x00009252 rtn  0x00000034 
+ 00262171  0x00009253 jam  0x00000000 , 0x00004cdb 
+ 00262172  0x00009254 fetch  0x00000004 , 0x000004e9 
+ 00262173  0x00009255 arg  0x00000014 , 0x00000002 
+ 00262174  0x00009256 iadd  0x00000002 , 0x00000002 
+ 00262175  0x00009257 copy  0x00000022 , 0x0000003f 
+ 00262176  0x00009258 isub  0x00000002 , 0x0000003e 
+ 00262177  0x00009259 nbranch  0x00040023 , 0x00000002 
+ 00262178  0x0000925a branch  0x00006349 
+ 00262179  0x0000925d jam  0x00000001 , 0x00004cdb 
+ 00262180  0x0000925e rtn 
+ 00262181  0x00009261 jam  0x00000014 , 0x000049e4 
+ 00262182  0x00009262 branch  0x0000636f 
+ 00327681  0x00009268 beq  0x00000040 , 0x00050006 
+ 00327682  0x00009269 beq  0x00000041 , 0x00050018 
+ 00327683  0x0000926a beq  0x00000042 , 0x00050025 
+ 00327684  0x0000926b beq  0x00000043 , 0x0005002b 
+ 00327685  0x0000926c rtn 
+ 00327686  0x0000926f call  0x0005000e 
+ 00327687  0x00009270 branch  0x0000557d 
+ 00327688  0x00009272 fetch  0x00000001 , 0x000047c7 
+ 00327689  0x00009273 store  0x00000001 , 0x00004172 
+ 00327690  0x00009275 jam  0x00000000 , 0x000047c6 
+ 00327691  0x00009276 rtn 
+ 00327692  0x00009278 jam  0x00000001 , 0x000047c6 
+ 00327693  0x00009279 rtn 
+ 00327694  0x0000927b fetch  0x00000001 , 0x000043d6 
+ 00327695  0x0000927c sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00327696  0x0000927d nbranch  0x0005000c , 0x00000002 
+ 00327697  0x0000927e fetch  0x00000001 , 0x000043d8 
+ 00327698  0x0000927f fetcht  0x00000001 , 0x000047c7 
+ 00327699  0x00009280 isub  0x00000002 , 0x0000003e 
+ 00327700  0x00009281 branch  0x00050008 , 0x00000002 
+ 00327701  0x00009282 fetch  0x00000001 , 0x000043d8 
+ 00327702  0x00009283 store  0x00000001 , 0x00004172 
+ 00327703  0x00009284 branch  0x0005000a 
+ 00327704  0x00009287 fetch  0x00000001 , 0x0000043f 
+ 00327705  0x00009288 rtnbit0  0x00000006 
+ 00327706  0x00009289 call  0x0005001d 
+ 00327707  0x0000928a nrtn  0x00000028 
+ 00327708  0x0000928b branch  0x000055a0 
+ 00327709  0x0000928d enable  0x00000028 
+ 00327710  0x0000928e fetch  0x00000001 , 0x0000045a 
+ 00327711  0x0000928f rshift4  0x0000003f , 0x0000003f 
+ 00327712  0x00009290 rtnne  0x0000000f 
+ 00327713  0x00009291 fetch  0x00000001 , 0x00000460 
+ 00327714  0x00009292 rshift4  0x0000003f , 0x0000003f 
+ 00327715  0x00009293 rtnne  0x00000000 
+ 00327716  0x00009294 branch  0x00007fe9 
+ 00327717  0x00009297 fetch  0x00000001 , 0x000047a1 
+ 00327718  0x00009298 nrtn  0x00000034 
+ 00327719  0x00009299 fetch  0x00000001 , 0x00000478 
+ 00327720  0x0000929a sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00327721  0x0000929b nrtn  0x00000005 
+ 00327722  0x0000929c branch  0x00003d60 
+ 00327723  0x0000929f call  0x000033af 
+ 00327724  0x000092a0 call  0x000026e9 
+ 00327725  0x000092a1 jam  0x00000002 , 0x00000a99 
+ 00327726  0x000092a2 call  0x00007d86 
+ 00327727  0x000092a3 call  0x00005cf7 
+ 00327728  0x000092a4 call  0x00004d6b 
+ 00327729  0x000092a5 branch  0x0000246e 
+ 00393217  0x000092ab beq  0x00000050 , 0x00060003 
+ 00393218  0x000092ac rtn 
+ 00393219  0x000092af jam  0x00000000 , 0x00004d45 
+ 00393220  0x000092b0 call  0x000002a3 
+ 00393221  0x000092b1 jam  0x00000001 , 0x00004720 
+ 00393222  0x000092b2 jam  0x00000000 , 0x0000479e 
+ 00393223  0x000092b3 fetch  0x00000002 , 0x00004682 
+ 00393224  0x000092b4 bbit1  0x0000000b , 0x00060013 
+ 00393225  0x000092b5 fetch  0x00000004 , 0x000046d3 
+ 00393226  0x000092b6 bbit0  0x00000018 , 0x00060013 
+ 00393227  0x000092b7 call  0x000005b3 
+ 00393228  0x000092b8 fetcht  0x00000002 , 0x000047c4 
+ 00393229  0x000092b9 increase  0x00000001 , 0x00000002 
+ 00393230  0x000092ba storet  0x00000002 , 0x000047c4 
+ 00393231  0x000092bb storet  0x00000002 , 0x000044a1 
+ 00393232  0x000092bc call  0x000003e2 
+ 00393233  0x000092bd random  0x0000003f 
+ 00393234  0x000092be store  0x00000001 , 0x000044a0 
+ 00393235  0x000092c0 fetch  0x00000003 , 0x00004d3f 
+ 00393236  0x000092c1 store  0x00000003 , 0x000044a3 
+ 00393237  0x000092c2 call  0x000002ad 
+ 00393238  0x000092c3 call  0x00003418 
+ 00393239  0x000092c4 fetch  0x00000002 , 0x00004687 
+ 00393240  0x000092c5 store  0x00000002 , 0x000046ac 
+ 00393241  0x000092c6 jam  0x00000006 , 0x0000016d 
+ 00393242  0x000092c7 setarg  0x00000000 
+ 00393243  0x000092c8 store  0x00000002 , 0x000046b0 
+ 00393244  0x000092c9 store  0x00000002 , 0x000046ae 
+ 00393245  0x000092ca arg  0x00000007 , 0x00000007 
+ 00393246  0x000092cb call  0x000043ce 
+ 00393247  0x000092cc call  0x000043ca 
+ 00393248  0x000092cd fetch  0x00000001 , 0x00004092 
+ 00393249  0x000092ce isolate1  0x00000001 , 0x0000003f 
+ 00393250  0x000092cf call  0x00060027 , 0x00000001 
+ 00393251  0x000092d0 fetch  0x00000001 , 0x00004092 
+ 00393252  0x000092d1 isolate1  0x00000000 , 0x0000003f 
+ 00393253  0x000092d2 call  0x00007ddd , 0x00000001 
+ 00393254  0x000092d5 branch  0x000004fb 
+ 00393255  0x000092d8 jam  0x00000000 , 0x000047a1 
+ 00393256  0x000092d9 call  0x000002a6 
+ 00393257  0x000092da setarg  0x00000005 
+ 00393258  0x000092db istore  0x00000001 , 0x00000006 
+ 00393259  0x000092dc arg  0x00004ceb , 0x00000006 
+ 00393260  0x000092dd call  0x000005ba 
+ 00393261  0x000092de branch  0x00007df4 
+ 00458753  0x000092e3 beq  0x00000060 , 0x00070004 
+ 00458754  0x000092e4 beq  0x00000061 , 0x00070029 
+ 00458755  0x000092e5 rtn 
+ 00458756  0x000092e9 set0  0x00000026 , 0x00000000 
+ 00458757  0x000092ea fetch  0x00000001 , 0x00004d24 
+ 00458758  0x000092eb and  0x0000003f , 0x00000001 , 0x0000003f 
+ 00458759  0x000092ec ncall  0x00070020 , 0x00000034 
+ 00458760  0x000092ed call  0x0007001d , 0x00000034 
+ 00458761  0x000092ee fetch  0x00000001 , 0x00004e93 
+ 00458762  0x000092ef rtnne  0x000000ff 
+ 00458763  0x000092f0 setarg  0x00000000 
+ 00458764  0x000092f1 store  0x00000002 , 0x00004eb0 
+ 00458765  0x000092f2 call  0x000001bb 
+ 00458766  0x000092f5 nop  0x000007d0 
+ 00458767  0x000092f6 fetch  0x00000001 , 0x00004eb0 
+ 00458768  0x000092f7 beq  0x0000000a , 0x0000019a 
+ 00458769  0x000092f8 call  0x00000182 
+ 00458770  0x000092f9 nbranch  0x00070024 , 0x00000018 
+ 00458771  0x000092fa nbranch  0x00070024 , 0x0000002f 
+ 00458772  0x000092fc set1  0x00000026 , 0x00000000 
+ 00458773  0x000092fd setarg  0x00000000 
+ 00458774  0x000092fe store  0x00000002 , 0x00004eb0 
+ 00458775  0x000092ff store  0x00000001 , 0x00004d26 
+ 00458776  0x00009300 store  0x00000002 , 0x00004d24 
+ 00458777  0x00009301 jam  0x0000003c , 0x00000a99 
+ 00458778  0x00009302 call  0x00007d86 
+ 00458779  0x00009304 call  0x0000017f 
+ 00458780  0x00009305 branch  0x0000032a 
+ 00458781  0x00009315 call  0x000002a3 
+ 00458782  0x00009316 fetch  0x00000004 , 0x0000477b 
+ 00458783  0x00009317 branch  0x00070022 
+ 00458784  0x0000931a jam  0x00000020 , 0x000041de 
+ 00458785  0x0000931b fetch  0x00000004 , 0x00004d1e 
+ 00458786  0x0000931d call  0x000001da 
+ 00458787  0x0000931e branch  0x0000013a 
+ 00458788  0x00009322 fetch  0x00000002 , 0x00004eb0 
+ 00458789  0x00009323 increase  0x00000001 , 0x0000003f 
+ 00458790  0x00009324 store  0x00000002 , 0x00004eb0 
+ 00458791  0x00009325 call  0x0000013a 
+ 00458792  0x00009326 branch  0x0007000e 
+ 00458793  0x0000932a call  0x0000042a 
+ 00458794  0x0000932b fetch  0x00000002 , 0x00004d24 
+ 00458795  0x0000932c nbranch  0x0007003b , 0x00000034 
+ 00458796  0x0000932d jam  0x00000000 , 0x00004fc3 
+ 00458797  0x0000932e call  0x000002a3 
+ 00458798  0x0000932f call  0x000001c4 
+ 00458799  0x00009330 jam  0x00000000 , 0x000041bd 
+ 00458800  0x00009331 call  0x000000c5 
+ 00458801  0x00009332 branch  0x000004c0 
+ 00458802  0x00009335 fetch  0x00000001 , 0x00004e8b 
+ 00458803  0x00009336 nbranch  0x0000019a , 0x00000034 
+ 00458804  0x00009337 jam  0x00000001 , 0x00004e8b 
+ 00458805  0x00009338 fetch  0x00000001 , 0x00004241 
+ 00458806  0x00009339 bbit1  0x00000002 , 0x00070038 
+ 00458807  0x0000933a branch  0x000001b8 
+ 00458808  0x0000933d setarg  0x00000320 
+ 00458809  0x0000933e store  0x00000002 , 0x00004d24 
+ 00458810  0x0000933f branch  0x00070004 
+ 00458811  0x00009343 increase  0xffffffff , 0x0000003f 
+ 00458812  0x00009344 store  0x00000002 , 0x00004d24 
+ 00458813  0x00009345 branch  0x00070032 , 0x00000034 
+ 00458814  0x00009346 branch  0x00070004 
+ 00524289  0x0000934c beq  0x00000070 , 0x00080004 
+ 00524290  0x0000934d beq  0x00000071 , 0x00080034 
+ 00524291  0x0000934e rtn 
+ 00524292  0x00009351 set0  0x00000026 , 0x00000000 
+ 00524293  0x00009352 call  0x00080024 
+ 00524294  0x00009353 call  0x000001bb 
+ 00524295  0x00009356 nop  0x000007d0 
+ 00524296  0x00009357 fetch  0x00000001 , 0x00004eb1 
+ 00524297  0x00009358 beq  0x000000a0 , 0x0000019a 
+ 00524298  0x00009359 call  0x00000182 
+ 00524299  0x0000935a nbranch  0x0008001a , 0x00000018 
+ 00524300  0x0000935b nbranch  0x0008001a , 0x0000002f 
+ 00524301  0x0000935c call  0x000001a9 
+ 00524302  0x0000935d call  0x000002a3 
+ 00524303  0x0000935e fetch  0x00000004 , 0x00004eab 
+ 00524304  0x0000935f fetcht  0x00000004 , 0x00004e8f 
+ 00524305  0x00009360 isub  0x00000002 , 0x0000003e 
+ 00524306  0x00009361 branch  0x00080030 , 0x00000005 
+ 00524307  0x00009362 set1  0x00000026 , 0x00000000 
+ 00524308  0x00009363 setarg  0x00000000 
+ 00524309  0x00009364 store  0x00000002 , 0x00004eb0 
+ 00524310  0x00009365 jam  0x0000003c , 0x00000a99 
+ 00524311  0x00009366 call  0x00007d86 
+ 00524312  0x00009367 call  0x0000017f 
+ 00524313  0x00009368 branch  0x0000032a 
+ 00524314  0x00009378 fetch  0x00000001 , 0x00004e8b 
+ 00524315  0x00009379 increase  0x00000001 , 0x0000003f 
+ 00524316  0x0000937a store  0x00000001 , 0x00004e8b 
+ 00524317  0x0000937b sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00524318  0x0000937c branch  0x00080007 , 0x00000002 
+ 00524319  0x0000937d jam  0x00000000 , 0x00004e8b 
+ 00524320  0x0000937e fetch  0x00000002 , 0x00004eb0 
+ 00524321  0x0000937f increase  0x00000001 , 0x0000003f 
+ 00524322  0x00009380 store  0x00000002 , 0x00004eb0 
+ 00524323  0x00009381 branch  0x00080007 
+ 00524324  0x0000938d setarg  0x00000000 
+ 00524325  0x0000938e store  0x00000002 , 0x00004eb0 
+ 00524326  0x0000938f store  0x00000001 , 0x00004e8b 
+ 00524327  0x00009390 store  0x00000002 , 0x00004d24 
+ 00524328  0x00009391 jam  0x00000002 , 0x00004e84 
+ 00524329  0x00009392 jam  0x00000004 , 0x000041de 
+ 00524330  0x00009393 jam  0x00000000 , 0x00004e82 
+ 00524331  0x00009394 jam  0x0000004e , 0x00004e8d 
+ 00524332  0x00009395 fetch  0x00000004 , 0x00004e8f 
+ 00524333  0x00009396 branch  0x000001da 
+ 00524334  0x00009399 call  0x00080024 
+ 00524335  0x0000939a branch  0x00080007 
+ 00524336  0x0000939d set1  0x00000026 , 0x00000000 
+ 00524337  0x0000939e call  0x00080024 
+ 00524338  0x000093a0 jam  0x00000004 , 0x00004e93 
+ 00524339  0x000093a1 rtn 
+ 00524340  0x000093a5 call  0x000001c4 
+ 00524341  0x000093a6 call  0x0000042a 
+ 00524342  0x000093a7 arg  0x00000003 , 0x00000007 
+ 00524343  0x000093a8 call  0x000043ce 
+ 00524344  0x000093a9 setarg  0x00000000 
+ 00524345  0x000093aa store  0x00000002 , 0x000046ae 
+ 00524346  0x000093ab store  0x00000001 , 0x000046b4 
+ 00524347  0x000093ac store  0x00000002 , 0x00004d24 
+ 00524348  0x000093ad store  0x00000002 , 0x00004eb0 
+ 00524349  0x000093ae call  0x000042ca 
+ 00524350  0x000093af branch  0x00080030 
+ 00589825  0x000093c0 fetch  0x00000004 , 0x000040a0 
+ 00589826  0x000093c1 store  0x00000004 , 0x00004eba 
+ 00589827  0x000093c2 call  0x00003e6e 
+ 00589828  0x000093c3 call  0x000000d6 
+ 00589829  0x000093c4 fetcht  0x00000001 , 0x00004d17 
+ 00589830  0x000093c5 call  0x0000680e 
+ 00589831  0x000093c7 call  0x00003e1e 
+ 00589832  0x000093c8 call  0x0009001e 
+ 00589833  0x000093c9 setarg  0x000047c8 
+ 00589834  0x000093ca store  0x00000002 , 0x000044bc 
+ 00589835  0x000093cc setarg  0x00000000 
+ 00589836  0x000093cd store  0x00000002 , 0x00004154 
+ 00589837  0x000093d0 jam  0x00000000 , 0x000046f6 
+ 00589838  0x000093d2 setarg  0x00001802 
+ 00589839  0x000093d3 store  0x00000002 , 0x000040bd 
+ 00589840  0x000093d4 call  0x000068a8 
+ 00589841  0x000093d5 call  0x00003e54 
+ 00589842  0x000093d6 call  0x00005810 
+ 00589843  0x000093d7 call  0x00005839 
+ 00589844  0x000093d8 call  0x0000582c 
+ 00589845  0x000093d9 call  0x00005818 
+ 00589846  0x000093da call  0x0000038e 
+ 00589847  0x000093db call  0x00000325 
+ 00589848  0x000093dc call  0x000002ee 
+ 00589849  0x000093dd fetch  0x00000003 , 0x00004700 
+ 00589850  0x000093de iadd  0x00000012 , 0x0000003f 
+ 00589851  0x000093df call  0x00006562 
+ 00589852  0x000093e1 call  0x000002e0 
+ 00589853  0x000093e2 rtn 
+ 00589854  0x000093e6 call  0x000074b9 
+ 00589855  0x000093e7 arg  0x00008c00 , 0x00000006 
+ 00589856  0x000093e8 arg  0x00004a51 , 0x00000005 
+ 00589857  0x000093e9 arg  0x0000010b , 0x00000039 
+ 00589858  0x000093ea call  0x00007f01 
+ 00589859  0x000093ec arg  0x00004d9c , 0x00000006 
+ 00589860  0x000093ed arg  0x0000002d , 0x00000039 
+ 00589861  0x000093ee call  0x00007f01 
+ 00589862  0x000093f0 arg  0x00008d3f , 0x00000006 
+ 00589863  0x000093f1 arg  0x00000032 , 0x00000039 
+ 00589864  0x000093f2 call  0x00007f01 
+ 00589865  0x00009400 arg  0x00004de2 , 0x00000006 
+ 00589866  0x00009401 arg  0x0000000c , 0x00000039 
+ 00589867  0x00009402 call  0x00007f01 
+ 00589868  0x00009404 arg  0x00008d71 , 0x00000006 
+ 00589869  0x00009405 arg  0x00000109 , 0x00000039 
+ 00589870  0x00009406 call  0x00007f01 
+ 00589871  0x00009407 jam  0x00000000 , 0x00004a68 
+ 00589872  0x00009408 jam  0x00000066 , 0x00004a60 
+ 00589873  0x00009409 jam  0x00000074 , 0x00004b14 
+ 00589874  0x0000940a jam  0x00000078 , 0x00004b10 
+ 00589875  0x0000940b jam  0x0000007a , 0x00004b0e 
+ 00589876  0x0000940c setarg  0x0000401f 
+ 00589877  0x0000940d store  0x00000002 , 0x00004baf 
+ 00589878  0x0000940e setarg  0x00006d04 
+ 00589879  0x0000940f store  0x00000002 , 0x00004c18 
+ 00589880  0x00009410 setarg  0x000016b0 
+ 00589881  0x00009411 store  0x00000002 , 0x00004c1e 
+ 00589882  0x00009412 branch  0x00000660 
+ 00655361  0x0000941c beq  0x00000090 , 0x000a0005 
+ 00655362  0x0000941d beq  0x00000091 , 0x000a0023 
+ 00655363  0x0000941e beq  0x00000092 , 0x000a0033 
+ 00655364  0x0000941f rtn 
+ 00655365  0x00009422 fetch  0x00000001 , 0x00004e88 
+ 00655366  0x00009423 beq  0x00000001 , 0x00007fe7 
+ 00655367  0x00009424 fetch  0x00000001 , 0x00004e93 
+ 00655368  0x00009425 beq  0x00000004 , 0x000a000d 
+ 00655369  0x00009426 beq  0x00000001 , 0x000a0010 
+ 00655370  0x00009427 beq  0x00000002 , 0x000a0013 
+ 00655371  0x00009428 beq  0x00000003 , 0x000a0016 
+ 00655372  0x00009429 branch  0x00002a8c 
+ 00655373  0x0000942c jam  0x00000001 , 0x00004e93 
+ 00655374  0x0000942d jam  0x000000fa , 0x00004d26 
+ 00655375  0x0000942e branch  0x000a0005 
+ 00655376  0x00009430 jam  0x00000011 , 0x00004e93 
+ 00655377  0x00009431 jam  0x000000aa , 0x0000119e 
+ 00655378  0x00009432 branch  0x000a0018 
+ 00655379  0x00009434 jam  0x00000012 , 0x00004e93 
+ 00655380  0x00009435 jam  0x00000055 , 0x0000119e 
+ 00655381  0x00009436 branch  0x000a0018 
+ 00655382  0x00009438 jam  0x00000013 , 0x00004e93 
+ 00655383  0x00009439 jam  0x00000022 , 0x0000119e 
+ 00655384  0x0000943b fetch  0x00000001 , 0x00004e84 
+ 00655385  0x0000943c and_into  0x00000007 , 0x0000003f 
+ 00655386  0x0000943d store  0x00000001 , 0x0000119f 
+ 00655387  0x0000943e fetch  0x00000004 , 0x00004eba 
+ 00655388  0x0000943f store  0x00000004 , 0x000011a0 
+ 00655389  0x00009441 jam  0x00000000 , 0x000011a4 
+ 00655390  0x00009442 arg  0x0000119e , 0x00000011 
+ 00655391  0x00009443 arg  0x00000007 , 0x00000002 
+ 00655392  0x00009444 call  0x000001c8 
+ 00655393  0x00009445 call  0x0000014f 
+ 00655394  0x00009446 branch  0x00007fe7 
+ 00655395  0x00009449 fetch  0x00000001 , 0x00004e93 
+ 00655396  0x0000944a rtneq  0x000000ff 
+ 00655397  0x0000944b beq  0x00000011 , 0x000a0029 
+ 00655398  0x0000944c beq  0x00000012 , 0x000a002b 
+ 00655399  0x0000944d beq  0x00000013 , 0x000a002d 
+ 00655400  0x0000944e rtn 
+ 00655401  0x00009451 jam  0x00000002 , 0x00004e93 
+ 00655402  0x00009452 branch  0x00000113 
+ 00655403  0x00009454 jam  0x00000003 , 0x00004e93 
+ 00655404  0x00009455 branch  0x00000113 
+ 00655405  0x00009457 jam  0x000000ff , 0x00004e93 
+ 00655406  0x00009458 jam  0x00000039 , 0x00000a99 
+ 00655407  0x00009459 call  0x00007d86 
+ 00655408  0x0000945a fetch  0x00000004 , 0x00004e63 
+ 00655409  0x0000945b call  0x000001da 
+ 00655410  0x0000945c branch  0x00000113 
+ 00655411  0x00009460 call  0x0000032a 
+ 00655412  0x00009461 jam  0x00000001 , 0x0000478b 
+ 00655413  0x00009462 arg  0x00000003 , 0x00000007 
+ 00655414  0x00009463 call  0x000043d2 
+ 00655415  0x00009464 setarg  0x00000000 
+ 00655416  0x00009465 store  0x00000002 , 0x00004d24 
+ 00655417  0x00009466 jam  0x00000000 , 0x000046a7 
+ 00655418  0x00009467 call  0x0000405d 
+ 00655419  0x00009469 call  0x000002a3 
+ 00655420  0x0000946b fetch  0x00000004 , 0x00004eab 
+ 00655421  0x0000946c store  0x00000004 , 0x0000477b 
+ 00655422  0x0000946e call  0x00004366 
+ 00655423  0x0000946f branch  0x000003dd 
+ 00720897  0x00009475 beq  0x000000a1 , 0x000b0006 
+ 00720898  0x00009476 beq  0x000000a2 , 0x000b001b 
+ 00720899  0x00009477 beq  0x000000a3 , 0x000b0014 
+ 00720900  0x00009478 beq  0x000000a4 , 0x000b0025 
+ 00720901  0x00009479 rtn 
+ 00720902  0x0000947c fetch  0x00000002 , 0x00004509 
+ 00720903  0x0000947d rtneq  0x00000000 
+ 00720904  0x0000947e fetch  0x00000001 , 0x00000441 
+ 00720905  0x0000947f rshift2  0x0000003f , 0x0000003f 
+ 00720906  0x00009480 sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00720907  0x00009481 branch  0x000b0012 , 0x00000002 
+ 00720908  0x00009482 setarg  0x00000009 
+ 00720909  0x00009483 store  0x00000002 , 0x00004496 
+ 00720910  0x00009484 store  0x00000002 , 0x00004498 
+ 00720911  0x00009485 call  0x0000040a 
+ 00720912  0x00009486 jam  0x00000001 , 0x000047c6 
+ 00720913  0x00009487 rtn 
+ 00720914  0x0000948a jam  0x00000001 , 0x00004d48 
+ 00720915  0x0000948b branch  0x0000061d 
+ 00720916  0x0000948f fetch  0x00000002 , 0x00004682 
+ 00720917  0x00009490 rtnbit1  0x0000000c 
+ 00720918  0x00009491 rtnbit1  0x00000006 
+ 00720919  0x00009492 rtnbit1  0x0000000b 
+ 00720920  0x00009493 fetch  0x00000004 , 0x000046d3 
+ 00720921  0x00009494 rtnbit1  0x00000005 
+ 00720922  0x00009495 branch  0x000033a7 
+ 00720923  0x00009498 jam  0x00000000 , 0x00004d3d 
+ 00720924  0x00009499 setarg  0x00000007 
+ 00720925  0x0000949a store  0x00000002 , 0x00004496 
+ 00720926  0x0000949b store  0x00000002 , 0x00004498 
+ 00720927  0x0000949c jam  0x00000000 , 0x000047c6 
+ 00720928  0x0000949d jam  0x00000000 , 0x0000479e 
+ 00720929  0x0000949e call  0x0000036f 
+ 00720930  0x0000949f call  0x00005816 
+ 00720931  0x000094a0 call  0x000003dd 
+ 00720932  0x000094a1 branch  0x000041d9 
+ 00720933  0x000094a5 enable  0x00000028 
+ 00720934  0x000094a6 hfetch  0x00000004 , 0x00008138 
+ 00720935  0x000094a7 setflag  0x00000028 , 0x0000001a , 0x0000003f 
+ 00720936  0x000094a8 hstore  0x00000004 , 0x0000804c 
+ 00720937  0x000094a9 call  0x00002c21 
+ 00720938  0x000094aa call  0x000074bd 
+ 00720939  0x000094ac call  0x000003dd 
+ 00720940  0x000094ad call  0x00003e9f 
+ 00720941  0x000094ae call  0x000000c5 
+ 00720942  0x000094af fetch  0x00000001 , 0x00004720 
+ 00720943  0x000094b0 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00720944  0x000094b1 call  0x0000059a , 0x00000005 
+ 00720945  0x000094b2 call  0x0000031d 
+ 00720946  0x000094b3 hfetch  0x00000001 , 0x00008081 
+ 00720947  0x000094b4 and  0x0000003f , 0x000000f7 , 0x0000003f 
+ 00720948  0x000094b5 hstore  0x00000001 , 0x00008081 
+ 00720949  0x000094b6 hfetch  0x00000001 , 0x0000807f 
+ 00720950  0x000094b7 set1  0x00000000 , 0x0000003f 
+ 00720951  0x000094b8 hstore  0x00000001 , 0x0000807f 
+ 00720952  0x000094b9 rtn 
+ 00786433  0x000094c0 beq  0x000000b1 , 0x000c0007 
+ 00786434  0x000094c1 beq  0x000000b2 , 0x000c000d 
+ 00786435  0x000094c2 beq  0x000000b3 , 0x000c0012 
+ 00786436  0x000094c3 beq  0x000000b4 , 0x000c0019 
+ 00786437  0x000094c4 beq  0x000000b5 , 0x000c001e 
+ 00786438  0x000094c5 rtn 
+ 00786439  0x000094c8 fetch  0x00000001 , 0x000049e3 
+ 00786440  0x000094c9 rtneq  0x00000002 
+ 00786441  0x000094ca increase  0x00000001 , 0x0000003f 
+ 00786442  0x000094cb store  0x00000001 , 0x000049e3 
+ 00786443  0x000094cc jam  0x00000012 , 0x000041e3 
+ 00786444  0x000094cd branch  0x0000340e 
+ 00786445  0x000094d0 fetch  0x00000001 , 0x000049e3 
+ 00786446  0x000094d1 rtnne  0x00000002 
+ 00786447  0x000094d2 jam  0x00000000 , 0x000049e3 
+ 00786448  0x000094d3 jam  0x0000000e , 0x000041e3 
+ 00786449  0x000094d4 branch  0x0000340e 
+ 00786450  0x000094d7 fetch  0x00000001 , 0x000047a1 
+ 00786451  0x000094d8 beq  0x00000001 , 0x000c0015 
+ 00786452  0x000094d9 branch  0x000c0017 
+ 00786453  0x000094db call  0x0000040a 
+ 00786454  0x000094dc jam  0x00000005 , 0x000046c6 
+ 00786455  0x000094de arg  0x00000001 , 0x00000007 
+ 00786456  0x000094df branch  0x000041b9 
+ 00786457  0x000094e2 jam  0x00000000 , 0x00004cda 
+ 00786458  0x000094e3 jam  0x00000000 , 0x00004cdc 
+ 00786459  0x000094e4 jam  0x00000000 , 0x00004ce5 
+ 00786460  0x000094e5 call  0x000003dd 
+ 00786461  0x000094e6 branch  0x000041d9 
+ 00786462  0x000094e9 setarg  0x00000001 
+ 00786463  0x000094ea store  0x00000006 , 0x00000040 
+ 00786464  0x000094eb jam  0x00000033 , 0x00000185 
+ 00786465  0x000094ec jam  0x000000ff , 0x00004d3e 
+ 00786466  0x000094ed call  0x000042fb 
+ 00786467  0x000094ee jam  0x000000ff , 0x00004721 
+ 00786468  0x000094ef branch  0x000003dd 
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.list
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.list	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.list	(working copy)
@@ -0,0 +1,31779 @@
+              include "bt_format "
+              org 0x0000
+:      000067 p_start:
+0x0000 000068 branch p_patch_array 
+:      000071 p_zcode:
+:      000074 p_wake_from_power:
+0x0001 000075 call p_mouse_data_init 
+0x0002 000076 fetch 1 ,mem_tx_power 
+0x0003 000077 store 1 ,mem_tx_power_temp 
+0x0004 000078 call power_ctrl_pac_succ_cnt_init 
+0x0005 000079 fetch 1 ,mem_ui_button_timeout 
+0x0006 000080 store 1 ,mem_combination_ui_button_count 
+0x0007 000081 fetch 1 ,mem_bt_ui_button_timeout 
+0x0008 000082 store 1 ,mem_bt_ui_button_count 
+0x0009 000083 call mouse_bt_discovery_button_down_disable 
+0x000a 000084 call p_mouse_spi_init 
+0x000b 000085 call p_drawing_optima_init 
+0x000c 000086 call p_mouse_cb_fuction 
+0x000d 000087 call p_mouse_wakeup_from_power 
+0x000e 000088 call p_mouse_select_device_button_wakeup_check 
+:      000089 p_mouse_setting_config:
+0x000f 000090 jam zcode_80 ,mem_zcode_temp_param0 
+0x0010 000091 branch p_zcode_entrance 
+:      000094 p_mouse_cb_fuction:
+0x0011 000095 setarg p_mouse_g24_package_data 
+0x0012 000096 store 2 ,mem_cb_24g_data 
+0x0013 000097 setarg p_mouse_le 
+0x0014 000098 store 2 ,mem_cb_le_process 
+0x0015 000099 setarg p_le_mouse_bb_event_connect_complete 
+0x0016 000100 store 2 ,mem_cb_att_write 
+0x0017 000101 setarg p_mouse_bt 
+0x0018 000102 store 2 ,mem_cb_bt_process 
+0x0019 000103 setarg p_mouse_before_lpm 
+0x001a 000104 store 2 ,mem_cb_before_lpm 
+0x001b 000105 setarg p_mouse_priority_bb_event 
+0x001c 000106 store 2 ,mem_cb_bb_event_process 
+0x001d 000107 setarg p_mouse_idle 
+0x001e 000108 store 2 ,mem_cb_idle_process 
+0x001f 000109 setarg p_mouse_before_hibernate 
+0x0020 000110 store 2 ,mem_cb_before_hibernate 
+0x0021 000111 setarg p_mouse_bb_event_timer 
+0x0022 000112 store 2 ,mem_cb_event_timer 
+0x0023 000113 rtn 
+:      000115 p_mouse_wakeup_from_power:
+0x0024 000116 setarg 25 
+0x0025 000117 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0x0026 000118 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
+0x0027 000119 call p_mouse_sensor_powerdown 
+:      000120 p_mouse_wakeup_no_from_power:
+0x0028 000121 fetch 1 ,mem_reconn_times_init 
+0x0029 000122 store 1 ,mem_reconn_times 
+0x002a 000123 rtn 
+:      000124 p_mouse_24g_transmit_by_interrupt_exit_count_max:
+0x002b 000125 setarg 375 
+0x002c 000126 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0x002d 000127 rtn 
+0x002e 000129 nop 1 
+0x002f 000130 nop 1 
+0x0030 000131 nop 1 
+0x0031 000132 nop 1 
+0x0032 000133 nop 1 
+0x0033 000134 nop 1 
+0x0034 000135 nop 1 
+0x0035 000136 nop 1 
+0x0036 000137 nop 1 
+0x0037 000138 nop 1 
+0x0038 000139 nop 1 
+0x0039 000140 nop 1 
+0x003a 000141 nop 1 
+0x003b 000142 nop 1 
+0x003c 000143 nop 1 
+0x003d 000144 nop 1 
+0x003e 000145 nop 1 
+0x003f 000146 nop 1 
+:      000153 p_patch_array:
+0x0040 000154 bbit1 8 ,pf_patch_ext 
+0x0041 000156 beq patch00_1 ,p_soft_reset_1 
+0x0042 000157 beq patch00_2 ,p_soft_reset_2 
+0x0043 000158 beq patch10_5 ,p_shutdown_radio 
+0x0044 000159 beq patch11_1 ,p_set_freq_tx 
+0x0045 000160 beq patch11_2 ,p_initialize_radio_cont 
+0x0046 000161 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0x0047 000162 beq patch04_6 ,p_role_switch_master 
+0x0048 000163 beq patch09_0 ,p_quit_connection_cont 
+0x0049 000164 beq patch09_2 ,p_prepare_tx 
+0x004a 000165 beq patch0a_1 ,p_slave_conn_recv_packet 
+0x004b 000166 beq patch0b_1 ,p_process_dmh 
+0x004c 000167 beq patch14_7 ,p_lpm_dispatch 
+0x004d 000168 beq patch15_5 ,p_lpm_set_mult 
+0x004e 000169 beq patch19_3 ,app_bt_start_reconnect + 3 
+0x004f 000170 beq patch1d_1 ,p_mouse_bb_disconnected 
+0x0050 000171 beq patch14_1 ,p_init_param 
+0x0051 000172 beq patch16_1 ,p_lpm_check_wake_lock 
+0x0052 000173 beq patch16_2 ,p_g24_dispatch 
+0x0053 000174 beq patch18_4 ,p_device_init 
+0x0054 000175 beq patch1c_3 ,p_mouse_seting_dpi 
+0x0055 000176 beq patch1c_6 ,p_mouse_motion 
+0x0056 000177 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0x0057 000178 beq patch1d_3 ,p_mouse_start_discovery 
+0x0058 000179 beq patch1d_4 ,p_mouse_stop_discovery 
+0x0059 000180 branch loop 
+:      000181 pf_patch_ext:
+0x005a 000182 beq patch27_1 ,p_le_slave_match 
+0x005b 000183 beq patch28_3 ,p_le_next_adv_channel 
+0x005c 000184 beq patch29_2 ,p_le_receive_skip 
+0x005d 000185 beq patch2a_7 ,p_le_update_param 
+0x005e 000186 beq patch2b_1 ,p_le_update_channel_map 
+0x005f 000187 beq patch2c_3 ,p_le_prepare_tx 
+0x0060 000188 beq patch2c_6 ,p_le_parse 
+0x0061 000189 beq patch2c_7 ,p_le_parse_l2cap 
+0x0062 000190 beq patch2d_2 ,p_le_adv_not_match 
+0x0063 000191 beq patch2e_7 ,p_le_lpm_setmult 
+0x0064 000192 beq patch20_5 ,p_hid_rx_process 
+0x0065 000193 beq patch30_0 ,p_parse_lmp_accepted 
+0x0066 000194 beq patch30_2 ,p_send_lmp 
+0x0067 000195 beq patch31_0 ,p_process_conn_sm 
+0x0068 000196 beq patch31_4 ,p_twspi_reset 
+0x0069 000197 beq patch31_5 ,p_spid_init 
+0x006a 000198 beq patch3f_2 ,p_check_51cmd_once_continue 
+0x006b 000199 branch loop 
+:      000203 p_mouse_select_device_button_wakeup_check:
+0x006c 000204 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+0x006d 000205 call p_mouse_pb_button_check 
+0x006e 000206 nrtn true 
+0x006f 000207 call delay_10ms 
+0x0070 000208 call p_mouse_pb_button_check 
+0x0071 000209 nrtn true 
+0x0072 000210 jam 1 ,mem_mouse_select_device_button_wakeup_flag 
+0x0073 000211 rtn 
+:      000220 p_soft_reset_1:
+0x0074 000221 arg mem_sp_state ,contw 
+0x0075 000222 arg 12 ,loopcnt 
+0x0076 000223 call clear_mem 
+0x0077 000224 call p_mouse_le_txbuff_load 
+0x0078 000225 call rfcomm_init 
+0x0079 000226 call init_lmp 
+0x007a 000227 ncall lpm_disable_exen_output ,wake 
+0x007b 000228 call ui_init + 1 
+0x007c 000229 branch soft_reset + 11 
+:      000231 p_soft_reset_2:
+0x007d 000232 call app_lpm_init ,wake 
+0x007e 000233 call publickey_init 
+0x007f 000234 call lpm_recover_clk ,wake 
+:      000235 p_sp_cal_loop:
+0x0080 000236 call sp_calc_sequence 
+0x0081 000237 fetch 1 ,mem_ssp_enable 
+0x0082 000238 branch main_loop ,blank 
+0x0083 000239 fetch 1 ,mem_sp_local_key_invalid 
+0x0084 000240 branch p_sp_cal_loop ,blank 
+0x0085 000241 branch main_loop 
+:      000243 p_init_param:
+0x0086 000244 setarg param_le_version 
+0x0087 000245 store 3 ,mem_lmp_version 
+0x0088 000246 setarg param_le_subversion 
+0x0089 000247 store 2 ,mem_lmp_version + 3 
+0x008a 000248 branch init_param + 12 
+:      000250 p_lpm_check_wake_lock:
+0x008b 000251 rtnmark1 mark_24g 
+0x008c 000252 fetch 1 ,mem_mouse_multi_led_state 
+0x008d 000253 nbranch disable_blank ,blank 
+0x008e 000254 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x008f 000255 nbranch disable_blank ,blank 
+0x0090 000256 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x0091 000257 branch disable_blank ,blank 
+0x0092 000258 fetch 1 ,mem_mouse_le_conn_param_reject 
+0x0093 000259 beq le_lpm_disable ,disable_blank 
+0x0094 000260 fetch 2 ,mem_sdp_remote_cid 
+0x0095 000261 nbranch disable_blank ,blank 
+0x0096 000262 fetch 1 ,mem_mouse_wheel_trigger 
+0x0097 000263 nbranch disable_blank ,blank 
+0x0098 000264 branch enable_blank 
+:      000267 p_g24_dispatch:
+0x0099 000268 rtnmark0 mark_24g 
+0x009a 000269 fetch 1 ,mem_24g_transmit_by_interrupt 
+0x009b 000270 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
+:      000271 p_g24_transmit_process:
+0x009c 000272 call p_g24_txdata_prep 
+0x009d 000273 nbranch p_g24_nodata_transmit ,user 
+0x009e 000274 call p_g24_rf_sta_check 
+:      000275 p_g24_transmit_start:
+0x009f 000276 call p_g24_transmit_packet 
+0x00a0 000277 fetch 1 ,mem_24g_pairing_sm 
+0x00a1 000278 rtnne state_24g_pairing_success 
+0x00a2 000279 call power_ctrl_start 
+0x00a3 000280 setarg g24_long_sleep_step1 
+0x00a4 000281 store 3 ,mem_24g_enter_hibernate 
+0x00a5 000282 jam 20 ,mem_24g_long_sleep_param_update_timer 
+:      000285 p_g24_short_sleep:
+0x00a6 000286 call p_g24_lpm_wait 
+0x00a7 000287 nrtn user 
+0x00a8 000288 call p_clear_wake 
+0x00a9 000289 setarg 62500 
+0x00aa 000290 branch lpm_dispatch_sleep 
+:      000292 p_g24_transmit_by_interrupt:
+0x00ab 000293 jam zcode_01 ,mem_zcode_temp_param0 
+0x00ac 000294 branch p_zcode_entrance 
+:      000296 p_g24_nodata_transmit:
+0x00ad 000297 fetch 1 ,mem_24g_abort_pac 
+0x00ae 000298 call p_g24_send_abort_packet ,blank 
+0x00af 000299 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x00b0 000300 nrtn blank 
+0x00b1 000301 fetch 1 ,mem_mouse_multi_led_state 
+0x00b2 000302 rtneq on 
+0x00b3 000303 fetch 1 ,mem_24g_transmit_by_interrupt 
+0x00b4 000304 rtneq g24_tx_timer_int_enable 
+:      000305 p_g24_long_sleep:
+0x00b5 000306 call p_g24_lpm_wait 
+0x00b6 000307 nrtn user 
+0x00b7 000308 fetch 3 ,mem_24g_enter_hibernate 
+0x00b8 000309 call clk2lpo 
+0x00b9 000310 storet 4 ,mem_sleep_counter 
+0x00ba 000311 branch lpm_sleep 
+:      000313 p_g24_lpm_wait:
+0x00bb 000314 enable user 
+0x00bc 000315 call lpo_calibration 
+0x00bd 000316 fetch 3 ,mem_clks_per_lpo 
+0x00be 000317 branch disable_user ,blank 
+0x00bf 000318 fetch 1 ,mem_lpm_mode 
+0x00c0 000319 branch disable_user ,blank 
+0x00c1 000320 fetch 1 ,mem_24g_transmit_by_interrupt 
+0x00c2 000321 beq g24_tx_timer_int_enable ,disable_user 
+:      000322 p_mouse_setgpio_lpm:
+0x00c3 000323 call p_mouse_set_sdio_high 
+0x00c4 000324 call p_clear_wake 
+:      000325 p_mouse_setgpio_hibernate:
+0x00c5 000326 call mouse_lpm_before_common 
+0x00c6 000328 fetcht 1 ,mem_flash_ncs_gpio 
+0x00c7 000329 call gpio_out_inactive 
+0x00c8 000331 hfetch 4 ,core_gpio_oe0 
+0x00c9 000332 hfetcht 4 ,core_gpio_pu0 
+0x00ca 000333 ior temp ,temp 
+0x00cb 000334 invert temp ,temp 
+0x00cc 000335 hstoret 4 ,core_gpio_pd0 
+0x00cd 000336 hfetch 1 ,core_gpio_pd1 
+0x00ce 000337 set0 2 ,pdata 
+0x00cf 000338 hstore 1 ,core_gpio_pd1 
+0x00d0 000339 hfetch 1 ,core_gpio_pd2 
+0x00d1 000340 set0 6 ,pdata 
+0x00d2 000341 hstore 1 ,core_gpio_pd2 
+0x00d3 000343 hfetch 1 ,core_gpio_pd3 
+0x00d4 000344 set0 3 ,pdata 
+0x00d5 000345 hstore 1 ,core_gpio_pd3 
+:      000347 p_mouse_multi_led_gpio_set_float:
+0x00d6 000348 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x00d7 000349 set0 gpio_active_bit ,temp 
+0x00d8 000350 branch gpio_set_high_impedance 
+:      000351 p_g24_send_abort_packet:
+0x00d9 000352 jam type_ms ,mem_24g_data_type 
+0x00da 000353 jam 1 ,mem_24g_abort_pac 
+0x00db 000354 jam 0 ,mem_24g_rf_hop_ch 
+0x00dc 000355 call p_g24_transmit_rf_ctrl_clear 
+0x00dd 000356 store 1 ,mem_24g_txbuf 
+0x00de 000357 setarg 0 
+0x00df 000358 store 7 ,mem_24g_txbuf + 1 
+0x00e0 000359 fetch 4 ,mem_24g_device_addr 
+0x00e1 000360 store 4 ,mem_24g_txbuf + 8 
+0x00e2 000361 jam 12 ,mem_24g_datalen 
+0x00e3 000362 fetch 1 ,mem_24g_data_type 
+0x00e4 000363 set1 bit_abort ,pdata 
+0x00e5 000364 store 1 ,mem_24g_data_type 
+0x00e6 000365 call p_g24_txdata_enable_tx 
+0x00e7 000366 branch p_g24_transmit_start 
+:      000369 p_g24_transmit_rf_sta_init:
+0x00e8 000370 jam 1 ,mem_24g_rf_last_sta 
+0x00e9 000371 jam 0 ,mem_24g_sync_cnt 
+:      000372 p_g24_transmit_rf_ctrl_clear:
+0x00ea 000373 fetch 1 ,mem_24g_data_type 
+0x00eb 000374 and_into bits_data ,pdata 
+0x00ec 000375 store 1 ,mem_24g_data_type 
+0x00ed 000376 rtn 
+:      000378 p_g24_hop_ch_enable:
+0x00ee 000379 fetch 1 ,mem_24g_data_type 
+0x00ef 000380 set1 bit_hop ,pdata 
+0x00f0 000381 store 1 ,mem_24g_data_type 
+0x00f1 000383 store 1 ,mem_24g_txpayload 
+0x00f2 000384 rtn 
+:      000386 p_g24_hop_enable_packet:
+0x00f3 000387 fetch 1 ,mem_24g_data_type 
+0x00f4 000388 rtnbit0 bit_hop 
+:      000389 p_g24_hop_ch_disable:
+0x00f5 000390 fetch 1 ,mem_24g_data_type 
+0x00f6 000391 set0 bit_hop ,pdata 
+0x00f7 000392 store 1 ,mem_24g_data_type 
+0x00f8 000393 store 1 ,mem_24g_txpayload 
+0x00f9 000394 call power_ctrl_pac_succ_decrs 
+0x00fa 000395 branch p_g24_ch 
+:      000397 p_g24_rf_hop_attemp_again:
+0x00fb 000398 fetch 1 ,mem_24g_rf_hop_ch 
+0x00fc 000399 bne 1 ,p_g24_transmit_rf_ctrl_clear 
+:      000400 p_g24_rf_hop_fastly:
+0x00fd 000401 fetch 1 ,mem_24g_hop_fastly_cnt 
+0x00fe 000402 increase 1 ,pdata 
+0x00ff 000403 store 1 ,mem_24g_hop_fastly_cnt 
+0x0100 000404 beq 4 ,p_g24_rf_hop_fastly_exit 
+0x0101 000405 call p_g24_ch 
+0x0102 000406 jam 2 ,mem_24g_max_retry 
+:      000407 p_g24_transmit_packet:
+0x0103 000408 jam 0 ,mem_24g_retry 
+:      000409 p_g24_transmit_loop:
+0x0104 000410 arg param_rx_setup ,timeup 
+0x0105 000411 until clkn_rt ,meet 
+0x0106 000412 call p_g24_transmit_receive_ack 
+0x0107 000415 nbranch p_g24_retransmit ,sync 
+0x0108 000416 nbranch p_g24_retransmit ,user3 
+0x0109 000417 call p_g24_txbuf_clear 
+0x010a 000418 call p_g24_ackpayload_parse 
+0x010b 000419 call power_ctrl_pac_succ_incrs 
+:      000420 p_g24_transmit_next_packet:
+0x010c 000421 fetch 1 ,mem_24g_pid 
+0x010d 000422 increase 1 ,pdata 
+0x010e 000423 store 1 ,mem_24g_pid 
+0x010f 000424 call p_g24_hop_enable_packet 
+0x0110 000425 fetch 1 ,mem_24g_pairing_sm 
+0x0111 000426 bne state_24g_pairing_success ,p_g24_paring_mode_start 
+0x0112 000427 call p_g24_transmit_succ_rf_config 
+:      000428 p_g24_transmit_abandon:
+0x0113 000429 setarg 0 
+0x0114 000430 store 4 ,mem_24g_ensure 
+0x0115 000431 store 1 ,mem_24g_hop_pac_retry 
+0x0116 000432 rtn 
+:      000433 p_g24_rf_hop_fastly_exit:
+0x0117 000434 call power_ctrl_pac_succ_decrs 
+0x0118 000435 jam 0 ,mem_24g_hop_fastly_cnt 
+0x0119 000436 branch p_g24_transmit_rf_ctrl_clear 
+:      000438 p_g24_transmit_hop_pac_succ_wo_hop:
+0x011a 000439 jam 2 ,mem_24g_sync_cnt 
+:      000440 p_g24_transmit_hop_pac_succ:
+0x011b 000441 jam 1 ,mem_24g_rf_last_sta 
+0x011c 000442 jam 0 ,mem_24g_rf_hop_ch 
+0x011d 000443 branch p_g24_transmit_rf_ctrl_clear 
+:      000445 p_g24_transmit_succ_rf_config:
+0x011e 000446 fetch 1 ,mem_24g_rf_work_stage 
+0x011f 000447 beq 3 ,p_g24_transmit_hop_pac_succ 
+0x0120 000448 fetch 1 ,mem_24g_data_type 
+0x0121 000449 isolate0 bit_hop ,pdata 
+0x0122 000450 branch p_g24_transmit_rf_sta_init ,true 
+0x0123 000451 fetch 1 ,mem_24g_rf_work_stage 
+0x0124 000452 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
+0x0125 000453 beq 2 ,p_g24_transmit_hop_pac_succ 
+0x0126 000454 rtn 
+:      000456 p_g24_rf_sta_check:
+0x0127 000457 fetch 1 ,mem_24g_pairing_sm 
+0x0128 000458 rtnne state_24g_pairing_success 
+0x0129 000459 call p_g24_rf_laststa_synccnt_check 
+0x012a 000460 ncall p_g24_rf_sync_cnt_check ,user2 
+0x012b 000461 rtn 
+:      000463 p_g24_rf_laststa_synccnt_check:
+0x012c 000464 disable user2 
+0x012d 000465 fetch 1 ,mem_24g_rf_last_sta 
+0x012e 000466 rtnne 1 
+0x012f 000467 fetch 1 ,mem_24g_sync_cnt 
+0x0130 000468 rtnne 0 
+0x0131 000469 jam 1 ,mem_24g_rf_work_stage 
+0x0132 000470 jam 4 ,mem_24g_max_retry 
+0x0133 000471 branch enable_user2 
+:      000473 p_g24_rf_sync_cnt_check:
+0x0134 000474 fetch 1 ,mem_24g_sync_cnt 
+0x0135 000475 branch p_g24_rf_hop_attemp ,blank 
+0x0136 000476 increase -1 ,pdata 
+0x0137 000477 store 1 ,mem_24g_sync_cnt 
+0x0138 000478 jam 2 ,mem_24g_rf_work_stage 
+0x0139 000479 jam 4 ,mem_24g_max_retry 
+:      000480 p_g24_ch:
+0x013a 000481 fetcht 1 ,mem_24g_current_ch_number 
+0x013b 000482 fetch 1 ,mem_24g_addr 
+0x013c 000483 and_into 0x03 ,pdata 
+0x013d 000484 mul32 pdata ,4 ,rega 
+0x013e 000485 setarg mem_24g_ch_map1 
+0x013f 000486 iadd rega ,pdata 
+0x0140 000487 iadd temp ,contr 
+0x0141 000488 ifetch 1 ,contr 
+0x0142 000489 store 1 ,mem_24g_ch 
+0x0143 000490 increase 1 ,temp 
+0x0144 000491 and_into 3 ,temp 
+0x0145 000492 storet 1 ,mem_24g_current_ch_number 
+0x0146 000493 rtn 
+:      000495 p_g24_rf_hop_attemp:
+0x0147 000496 jam 3 ,mem_24g_rf_work_stage 
+0x0148 000497 fetch 1 ,mem_24g_rf_hop_ch 
+0x0149 000498 nbranch p_g24_rf_hop_attemp_again ,blank 
+0x014a 000499 jam 2 ,mem_24g_max_retry 
+0x014b 000500 branch p_g24_ch 
+:      000502 p_g24_txdata_prep:
+0x014c 000503 fetch 1 ,mem_24g_pairing_sm 
+0x014d 000504 bne state_24g_pairing_success ,p_g24_pairing_sm 
+:      000505 p_g24_txdata_prep_packeage_data:
+0x014e 000506 call p_g24_package_data 
+:      000507 p_g24_txdata_enable_tx:
+0x014f 000508 call p_g24_transmit_prep 
+0x0150 000509 jam ensure_on_24g ,mem_24g_ensure 
+0x0151 000510 rtn 
+:      000512 p_g24_package_data:
+0x0152 000513 fetch 2 ,mem_cb_24g_data 
+0x0153 000514 call callback_func 
+0x0154 000515 branch p_g24_accumulate_mouse_data ,user 
+0x0155 000516 fetch 7 ,mem_24g_txbuf + 1 
+0x0156 000517 rtn blank 
+0x0157 000518 branch enable_user 
+:      000519 p_g24_accumulate_mouse_data:
+0x0158 000520 fetch 1 ,mem_customer_key 
+0x0159 000521 nbranch p_g24_accumulate_customer_data ,blank 
+0x015a 000522 jam type_ms ,mem_24g_data_type 
+0x015b 000523 call p_mouse_data_xy_release 
+0x015c 000524 call p_g24_accumulate_data_head 
+0x015d 000525 ifetcht 1 ,contw 
+0x015e 000526 ifetch 1 ,regb 
+0x015f 000527 ior temp ,pdata 
+0x0160 000528 istore 1 ,contw 
+0x0161 000529 increase 1 ,regb 
+0x0162 000530 ifetch 4 ,regb 
+0x0163 000531 istore 4 ,contw 
+0x0164 000532 increase 4 ,regb 
+0x0165 000533 arg mem_24g_txbuf + 6 ,contw 
+0x0166 000534 arg 2 ,loopcnt 
+:      000535 p_g24_accumulation_loop:
+0x0167 000536 ifetch 1 ,regb 
+0x0168 000537 ifetcht 1 ,contw 
+0x0169 000538 iadd temp ,pdata 
+0x016a 000539 istore 1 ,contw 
+0x016b 000540 increase 1 ,regb 
+0x016c 000541 loop p_g24_accumulation_loop 
+0x016d 000542 rtn 
+:      000545 p_g24_accumulate_data_head:
+0x016e 000546 jam 0 ,mem_24g_abort_pac 
+0x016f 000547 add rega ,1 ,pdata 
+0x0170 000548 store 1 ,mem_24g_datalen 
+0x0171 000549 call p_g24_transmit_rf_ctrl_clear 
+0x0172 000550 store 1 ,mem_24g_txbuf 
+0x0173 000551 rtn 
+:      000553 p_g24_accumulate_customer_data:
+0x0174 000554 jam type_kb ,mem_24g_data_type 
+0x0175 000555 arg 9 ,rega 
+0x0176 000556 arg mem_customer_key_release ,regb 
+0x0177 000557 fetch 1 ,mem_customer_data_trigger 
+0x0178 000558 ncall p_mouse_customer_key_press ,blank 
+0x0179 000559 call p_g24_accumulate_data_head 
+0x017a 000560 copy regb ,contr 
+0x017b 000561 copy rega ,loopcnt 
+0x017c 000562 branch memcpy 
+:      000563 p_mouse_customer_key_press:
+0x017d 000564 arg mem_customer_key_press ,regb 
+0x017e 000565 rtn 
+:      000567 p_g24_txbuf_clear:
+0x017f 000568 arg 4 ,loopcnt 
+0x0180 000569 arg mem_24g_txbuf ,contw 
+0x0181 000570 branch memset0 
+:      000572 p_g24_transmit_receive_ack:
+0x0182 000573 disable user3 
+0x0183 000574 call p_g24_transmit 
+0x0184 000579 force 0 ,radio_ctrl 
+0x0185 000580 fetch 4 ,mem_24g_addr 
+0x0186 000581 iforce access 
+0x0187 000582 fetcht 1 ,mem_last_freq 
+0x0188 000583 call set_freq_rx 
+0x0189 000584 call rf_rx_enable 
+0x018a 000585 call p_g24_receive_rxon 
+0x018b 000586 call p_g24_end_of_packet ,user3 
+0x018c 000587 rtn 
+:      000592 p_g24_retransmit:
+0x018d 000593 fetch 2 ,mem_24g_txfail_cnt 
+0x018e 000594 increase 1 ,pdata 
+0x018f 000595 store 2 ,mem_24g_txfail_cnt 
+0x0190 000596 fetch 1 ,mem_24g_txfail_cnt + 1 
+0x0191 000597 bbit1 4 ,p_g24_stop_g24_mode 
+0x0192 000599 fetch 1 ,mem_24g_pairing_sm 
+0x0193 000600 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+0x0194 000601 call p_g24_tx_hop_ch_process 
+0x0195 000602 branch p_g24_transmit_loop 
+:      000604 p_g24_tx_paring_retry:
+0x0196 000605 fetch 1 ,mem_24g_txfail_cnt 
+0x0197 000606 rtnne 0xff 
+:      000607 p_g24_tx_attempt_fail:
+0x0198 000608 setarg 0 
+0x0199 000609 store 2 ,mem_24g_txfail_cnt 
+:      000610 p_g24_stop_g24_mode:
+0x019a 000611 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+0x019b 000612 branch ui_ipc_send_event 
+:      000614 p_g24_tx_fast_hop:
+0x019c 000615 call power_ctrl_txpower_incrs 
+0x019d 000616 call power_ctrl_pac_succ_decrs 
+0x019e 000617 branch p_g24_ch 
+:      000619 p_g24_tx_hop_ch_process:
+0x019f 000620 fetch 1 ,mem_24g_retry 
+0x01a0 000621 sub pdata ,11 ,null 
+0x01a1 000622 nbranch p_g24_tx_fast_hop ,positive 
+0x01a2 000623 increase 1 ,pdata 
+0x01a3 000624 store 1 ,mem_24g_retry 
+0x01a4 000625 beq 2 ,p_g24_hop_ch_enable 
+0x01a5 000626 beq 6 ,p_g24_hop_ch_disable 
+0x01a6 000627 beq 8 ,p_g24_hop_ch_enable 
+0x01a7 000628 beq 12 ,p_g24_hop_ch_disable 
+0x01a8 000629 rtn 
+:      000631 p_g24_ackpayload_parse:
+0x01a9 000632 call p_g24_read_len_pid_crc 
+0x01aa 000633 fetch 1 ,mem_24g_rxdata_length 
+0x01ab 000634 rtn blank 
+0x01ac 000635 iforce loopcnt 
+0x01ad 000636 arg mem_24g_rxbuf + 2 ,contr 
+0x01ae 000637 arg mem_24g_rxpayload ,contw 
+0x01af 000638 branch memcpy 
+:      000640 p_g24_pairing_sm:
+0x01b0 000641 jam zcode_90 ,mem_zcode_temp_param0 
+0x01b1 000642 branch p_zcode_entrance 
+:      000644 p_g24_paring_mode_start:
+0x01b2 000645 call power_ctrl_pac_succ_cnt_init 
+:      000646 p_g24_paring_mode:
+0x01b3 000647 jam zcode_91 ,mem_zcode_temp_param0 
+0x01b4 000648 branch p_zcode_entrance 
+:      000650 p_mouse_start_24g_mode:
+0x01b5 000651 call p_mouse_mode_24g_device_multi_led_on 
+0x01b6 000652 jam zcode_60 ,mem_zcode_temp_param0 
+0x01b7 000653 branch p_zcode_entrance 
+:      000655 p_g24_auto_pair_start:
+0x01b8 000656 jam 0 ,mem_mouse_long_button_select_device 
+0x01b9 000657 jam zcode_70 ,mem_zcode_temp_param0 
+0x01ba 000658 branch p_zcode_entrance 
+:      000661 p_g24_tx_attemp_data_prep:
+0x01bb 000662 jam 0xff ,mem_24g_common_temp 
+0x01bc 000663 fetch 1 ,mem_24g_data_type 
+0x01bd 000664 store 1 ,mem_24g_common_temp + 1 
+0x01be 000665 fetch 4 ,mem_24g_device_addr 
+0x01bf 000666 store 4 ,mem_24g_common_temp + 2 
+0x01c0 000667 arg 6 ,temp 
+0x01c1 000668 arg mem_24g_common_temp ,rega 
+0x01c2 000669 call p_g24_put_data_in_buff 
+0x01c3 000670 branch p_g24_transmit_prep 
+:      000673 p_g24_check_51cmd_stop_24g:
+0x01c4 000674 set0 mark_24g ,mark 
+0x01c5 000675 call le_disable 
+:      000676 p_mouse_disable_g24_pairing_flag:
+0x01c6 000677 arg mosue_24g_pairing_flag ,queue 
+0x01c7 000678 branch mouse_disable_function_flag 
+:      000680 p_g24_put_data_in_buff:
+0x01c8 000681 storet 1 ,mem_24g_datalen 
+0x01c9 000682 copy temp ,loopcnt 
+0x01ca 000683 arg mem_24g_txbuf ,contw 
+0x01cb 000684 copy rega ,contr 
+0x01cc 000685 branch memcpy 
+:      000687 p_g24_read_len_pid_crc:
+0x01cd 000689 fetch 1 ,mem_24g_rxbuf + 1 
+0x01ce 000690 rshift3 pdata ,pdata 
+0x01cf 000691 store 1 ,mem_24g_rxdata_length 
+0x01d0 000693 increase 1 ,pdata 
+0x01d1 000694 arg mem_24g_rxbuf + 1 ,contr 
+0x01d2 000695 iadd contr ,contr 
+0x01d3 000696 ifetch 3 ,contr 
+0x01d4 000697 store 3 ,mem_24g_sta_crc 
+0x01d5 000699 fetch 1 ,mem_24g_rxbuf + 1 
+0x01d6 000700 rshift pdata ,pdata 
+0x01d7 000701 and pdata ,0x03 ,pdata 
+0x01d8 000702 store 1 ,mem_24g_sta_pid 
+0x01d9 000703 rtn 
+:      000705 p_g24_update_addr_and_synccrc8:
+0x01da 000706 store 4 ,mem_24g_addr 
+:      000708 p_g24_syncword_crc8:
+0x01db 000709 arg 0 ,rega 
+0x01dc 000710 arg 4 ,loopcnt 
+0x01dd 000711 arg mem_24g_addr ,contr 
+:      000712 p_g24_syncword_crc8_loop:
+0x01de 000713 ifetch 1 ,contr 
+0x01df 000714 iadd rega ,rega 
+0x01e0 000715 loop p_g24_syncword_crc8_loop 
+0x01e1 000716 copy rega ,pdata 
+0x01e2 000717 store 2 ,mem_24g_syncword 
+0x01e3 000718 fetch 1 ,mem_24g_syncword 
+0x01e4 000719 fetcht 1 ,mem_24g_syncword + 1 
+0x01e5 000720 iadd temp ,pdata 
+0x01e6 000721 store 1 ,mem_24g_syncword_crc8 
+0x01e7 000722 rtn 
+:      000724 p_g24_transmit_prep:
+0x01e8 000727 fetch 1 ,mem_24g_datalen 
+0x01e9 000728 increase 2 ,pdata 
+0x01ea 000729 store 1 ,mem_24g_txlen 
+0x01eb 000731 fetch 1 ,mem_24g_data_type 
+0x01ec 000732 store 1 ,mem_24g_txpayload 
+0x01ed 000734 fetch 1 ,mem_24g_datalen 
+0x01ee 000735 lshift3 pdata ,pdata 
+0x01ef 000736 fetcht 1 ,mem_24g_pid 
+0x01f0 000737 and temp ,0x03 ,temp 
+0x01f1 000738 lshift temp ,temp 
+0x01f2 000739 ior temp ,pdata 
+0x01f3 000740 fetcht 1 ,mem_24g_no_ack 
+0x01f4 000741 iadd temp ,pdata 
+0x01f5 000742 istore 1 ,contw 
+0x01f6 000744 fetch 1 ,mem_24g_datalen 
+0x01f7 000745 iforce loopcnt 
+0x01f8 000746 arg mem_24g_txbuf ,contr 
+0x01f9 000747 branch memcpy 
+:      000781 p_g24_prep:
+0x01fa 000782 disable enable_crc 
+0x01fb 000783 disable enable_white 
+0x01fc 000784 setarg 0x555555 
+0x01fd 000785 iforce crc24_init 
+0x01fe 000786 fetch 1 ,mem_24g_ch 
+0x01ff 000787 reverse pdata ,temp 
+0x0200 000788 set1 1 ,temp 
+0x0201 000789 rshift temp ,white_init 
+0x0202 000790 rtn 
+:      000802 p_g24_receive_rxon:
+0x0203 000805 call p_g24_prep 
+0x0204 000806 disable user3 
+0x0205 000807 enable decode_fec0 
+0x0206 000808 enable is_rx 
+0x0207 000809 disable is_tx 
+0x0208 000810 enable swfine 
+0x0209 000811 fetch 2 ,mem_24g_rx_window 
+0x020a 000812 iforce stop_watch 
+0x020b 000813 correlate null ,timeout 
+0x020c 000814 nbranch p_g24_end_of_packet ,sync 
+0x020d 000817 disable decode_fec0 
+0x020e 000818 enable decode_fec1 
+0x020f 000819 enable enable_white 
+0x0210 000820 enable enable_crc 
+0x0211 000821 call p_g24_receive_byte 
+0x0212 000822 store 1 ,mem_24g_get_syncword_crc8 
+0x0213 000823 fetcht 1 ,mem_24g_syncword_crc8 
+0x0214 000824 isub temp ,null 
+0x0215 000825 nbranch p_g24_end_of_packet ,zero 
+0x0216 000826 call p_g24_receive_byte 
+0x0217 000827 store 1 ,mem_24g_rxbuf 
+0x0218 000831 fetch 1 ,mem_24g_rxbuf 
+0x0219 000832 fetcht 1 ,mem_24g_data_type 
+0x021a 000833 icompare bits_data ,temp 
+0x021b 000834 nbranch p_g24_end_of_packet ,true 
+:      000835 p_g24_receive_skip:
+0x021c 000836 call p_g24_receive_byte 
+0x021d 000837 istore 1 ,contw 
+0x021e 000838 rshift3 pdata ,pdata 
+0x021f 000839 and pdata ,0x1f ,loopcnt 
+0x0220 000840 branch p_g24rx_nopayload ,zero 
+:      000841 p_g24rx_loop:
+0x0221 000842 call p_g24_receive_byte 
+0x0222 000843 istore 1 ,contw 
+0x0223 000844 loop p_g24rx_loop 
+:      000845 p_g24rx_nopayload:
+0x0224 000847 copy contw ,rega 
+0x0225 000848 call p_g24_receive_byte 
+0x0226 000849 store 1 ,mem_rssi_hex_received 
+0x0227 000850 copy rega ,contw 
+0x0228 000851 parse demod ,bucket ,24 
+0x0229 000852 enable swfine 
+0x022a 000853 arg param_sifs ,stop_watch 
+0x022b 000854 rshift32 pdata ,pdata 
+0x022c 000855 rshift16 pdata ,pdata 
+0x022d 000856 istore 3 ,contw 
+0x022e 000857 disable decode_fec1 
+0x022f 000861 branch p_g24_end_of_packet ,crc_failed 
+0x0230 000864 enable user3 
+0x0231 000865 fetch 1 ,mem_last_freq 
+0x0232 000866 add pdata ,0 ,rega 
+0x0233 000867 call rf_write_freq 
+0x0234 000868 disable decode_fec0 
+0x0235 000869 call set_sync_on 
+0x0236 000874 fetch 1 ,mem_rssi_hex_received 
+:      000877 p_rssi_signal:
+0x0237 000878 copy pdata ,rega 
+0x0238 000879 fetcht 1 ,mem_rssi_signal_index 
+0x0239 000880 setarg mem_rssi_signal_buf 
+0x023a 000881 iadd temp ,contw 
+0x023b 000882 copy rega ,pdata 
+0x023c 000883 istore 1 ,contw 
+0x023d 000884 increase 1 ,temp 
+0x023e 000885 and_into rssi_buf_len_signal ,temp 
+0x023f 000886 storet 1 ,mem_rssi_signal_index 
+0x0240 000887 rtn 
+:      000891 p_g24_receive_byte:
+0x0241 000892 parse demod ,bucket ,8 
+0x0242 000893 rshift3 pwindow ,pdata 
+0x0243 000894 rtn 
+:      000896 p_g24_end_of_packet:
+0x0244 000897 disable encode_fec1 
+0x0245 000898 disable decode_fec1 
+0x0246 000899 call end_of_packet 
+0x0247 000900 rtn 
+:      000913 p_g24_transmit:
+0x0248 000914 call le_enable 
+0x0249 000915 fetch 4 ,mem_24g_addr 
+0x024a 000916 iforce access 
+0x024b 000917 call p_g24_prep 
+0x024c 000920 call set_sync_on 
+0x024d 000921 fetcht 1 ,mem_24g_ch 
+0x024e 000922 call set_freq_tx 
+0x024f 000924 set1 txgfsk ,radio_ctrl 
+0x0250 000925 enable encode_fec0 
+0x0251 000926 enable is_tx 
+0x0252 000927 disable is_rx 
+0x0253 000930 rshift16 access ,pdata 
+0x0254 000931 rshift8 pdata ,pdata 
+0x0255 000932 rshift4 pdata ,pdata 
+0x0256 000933 inject mod ,40 
+0x0257 000934 disable encode_fec0 
+0x0258 000935 enable encode_fec1 
+0x0259 000936 enable enable_white 
+0x025a 000937 enable enable_crc 
+0x025b 000938 fetch 1 ,mem_24g_syncword_crc8 
+0x025c 000939 inject mod ,8 
+0x025d 000940 fetch 1 ,mem_24g_txlen 
+0x025e 000941 iforce loopcnt 
+0x025f 000942 arg mem_24g_txpayload ,contr 
+:      000943 p_g24tr_loop:
+0x0260 000944 ifetch 1 ,contr 
+0x0261 000945 inject mod ,8 
+0x0262 000946 loop p_g24tr_loop 
+0x0263 000953 enable enable_parity 
+0x0264 000954 inject mod ,24 
+0x0265 000955 disable enable_parity 
+0x0266 000956 until null ,tx_clear 
+0x0267 000957 nop 100 
+0x0268 000958 disable encode_fec0 
+0x0269 000959 disable encode_fec1 
+0x026a 000960 rtn 
+:      000962 p_g24_timer_check:
+0x026b 000963 call disable_user 
+0x026c 000964 fetcht 4 ,mem_24g_tx_btclk 
+0x026d 000965 copy clkn_bt ,pdata 
+0x026e 000966 isub temp ,null 
+0x026f 000967 ncall g24_timer_timeout ,positive 
+0x0270 000968 copy pdata ,regb 
+0x0271 000969 fetch 4 ,mem_24g_tx_btclk 
+0x0272 000970 fetcht 1 ,mem_24g_interval 
+0x0273 000971 iadd temp ,temp 
+0x0274 000972 copy regb ,pdata 
+0x0275 000973 isub temp ,null 
+0x0276 000974 nrtn positive 
+0x0277 000975 set0 28 ,pdata 
+0x0278 000976 store 4 ,mem_24g_tx_btclk 
+0x0279 000977 branch enable_user 
+:      001001 p_rssi_average:
+0x027a 001002 arg 0 ,temp 
+0x027b 001006 arg rssi_buf_len_signal + 1 ,loopcnt 
+0x027c 001007 copy rega ,contr 
+:      001012 p_rssi_average_loop:
+0x027d 001013 ifetch 1 ,contr 
+0x027e 001014 iadd temp ,temp 
+0x027f 001015 loop p_rssi_average_loop 
+0x0280 001016 rshift3 temp ,pdata 
+0x0281 001017 copy pdata ,temp 
+0x0282 001018 rtnmark0 mark_24g 
+0x0283 001020 div pdata ,10 
+0x0284 001021 call wait_div_end 
+0x0285 001022 quotient pdata 
+0x0286 001023 lshift4 pdata ,pdata 
+0x0287 001024 remainder temp 
+0x0288 001025 ior temp ,temp 
+0x0289 001026 rtn 
+:      001031 p_mouse_before_lpm:
+0x028a 001032 rtnmark1 mark_24g 
+0x028b 001033 call p_mouse_le_txbuff_save 
+0x028c 001034 call p_mouse_setgpio_lpm 
+0x028d 001035 fetch 1 ,mem_context 
+0x028e 001036 bbit0 state_inconn ,p_clear_wake 
+0x028f 001037 fetch 1 ,mem_lpm_current_mult 
+0x0290 001038 nrtn blank 
+:      001039 p_clear_wake:
+0x0291 001040 setarg 0 
+0x0292 001041 store 8 ,mem_gpio_wakeup_low 
+0x0293 001042 rtn 
+:      001044 p_mouse_set_sdio_high:
+0x0294 001045 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0x0295 001046 rtn blank 
+0x0296 001047 branch p_mouse_seting_sensor_type 
+:      001049 p_device_init:
+0x0297 001050 call initialize_radio 
+0x0298 001051 call app_lpm_mult_enable 
+0x0299 001052 call enable_authrom 
+0x029a 001053 branch p_mouse_spi_init ,wake 
+:      001054 p_device_wake_from_power:
+0x029b 001055 fetch 3 ,mem_le_lap + 3 
+0x029c 001056 store 3 ,mem_le_lap_high_3b 
+0x029d 001057 call p_wake_from_power 
+:      001064 p_mouse_check_reconn_target:
+0x029e 001065 jam zcode_22 ,mem_zcode_temp_param0 
+0x029f 001066 branch p_zcode_entrance 
+:      001068 p_mouse_null_enter_hibernate_enable:
+0x02a0 001069 jam 1 ,mem_mouse_null_enter_hibernate_flag 
+0x02a1 001070 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+0x02a2 001071 rtn 
+:      001075 p_mouse_tx_power_init:
+0x02a3 001076 fetch 1 ,mem_tx_power_temp 
+0x02a4 001077 store 1 ,mem_tx_power 
+0x02a5 001078 rtn 
+:      001088 p_le_check_adv_flag:
+0x02a6 001089 arg mem_le_adv_data ,rega 
+:      001090 p_le_check_adv_flag_loop:
+0x02a7 001091 ifetch 1 ,rega 
+0x02a8 001092 rtn blank 
+0x02a9 001093 iadd contr ,rega 
+0x02aa 001094 ifetch 1 ,contr 
+0x02ab 001095 rtneq 0x01 
+0x02ac 001096 branch p_le_check_adv_flag_loop 
+:      001098 p_mouse_le_fast_conn_disable:
+0x02ad 001099 jam 0x5a ,mem_mouse_fast_conn_flag 
+0x02ae 001100 rtn 
+:      001102 p_mouse_fast_conn_init:
+0x02af 001103 jam 0xff ,mem_mouse_fast_conn_flag 
+0x02b0 001104 jam 0x34 ,mem_xrecord_mode 
+0x02b1 001105 fetch 6 ,mem_24g_allpowerful_addr 
+0x02b2 001106 store 6 ,mem_le_lap 
+0x02b3 001107 rtn 
+:      001110 p_mouse_init_sunt:
+0x02b4 001111 call p_mouse_spi_init 
+0x02b5 001112 call mouse_spi_sdio_gpio_pollup 
+:      001113 p_mouse_init_sensor:
+0x02b6 001114 call mouse_read_sensor_id 
+0x02b7 001115 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+0x02b8 001116 beq p3065_id1 ,p_mouse_p3065_init_param 
+0x02b9 001117 call mouse_twspi_reset 
+0x02ba 001118 nop 1000 
+0x02bb 001119 branch p_mouse_init_sensor 
+:      001121 p_mouse_init_p32xx_id2_judge:
+0x02bc 001122 call p_mouse_sensor_poweron 
+0x02bd 001123 fetch 1 ,mem_sensor_id2 
+0x02be 001125 beq pka8_id2 ,p_mouse_ka8_init_param 
+0x02bf 001127 branch mouse_init_p32xx_id2_judge 
+:      001138 p_mouse_ka8_init_param:
+0x02c0 001139 jam ka8 ,mem_config_sensor_type 
+0x02c1 001140 arg mem_sensor_ka8_init ,regc 
+:      001141 p_sensor_wr_seq:
+0x02c2 001142 ifetch 2 ,regc 
+0x02c3 001143 rtneq 0xff 
+0x02c4 001144 call twspi_write 
+0x02c5 001145 nop 12000 
+0x02c6 001146 increase 2 ,regc 
+0x02c7 001147 branch p_sensor_wr_seq 
+:      001166 p_mouse_p3065_init_param:
+0x02c8 001167 call p_mouse_sensor_poweron 
+0x02c9 001168 fetch 1 ,mem_sensor_id2 
+0x02ca 001169 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x02cb 001170 jam p3065 ,mem_config_sensor_type 
+0x02cc 001171 rtn 
+:      001173 p_mouse_dpi_config:
+0x02cd 001174 fetch 1 ,mem_mouse_dpi 
+0x02ce 001175 bne 0xff ,p_mouse_seting_dpi 
+:      001176 p_mouse_dpi_config_default:
+0x02cf 001177 fetch 1 ,mem_config_sensor_motion 
+0x02d0 001178 store 1 ,mem_mouse_dpi 
+0x02d1 001179 branch p_mouse_seting_dpi 
+:      001186 p_spid_init_flash:
+0x02d2 001187 jam 0x40 ,core_spid_ctrl 
+0x02d3 001188 jam 0x0 ,core_spid_delay 
+0x02d4 001189 hfetch 1 ,core_gpio_sel1 
+0x02d5 001190 set0 0 ,pdata 
+0x02d6 001191 set0 1 ,pdata 
+0x02d7 001192 set1 3 ,pdata 
+0x02d8 001193 set0 4 ,pdata 
+0x02d9 001194 hstore 1 ,core_gpio_sel1 
+0x02da 001195 setarg 0 
+0x02db 001196 store 4 ,mem_spid_tbuf 
+0x02dc 001197 hfetch 1 ,core_gpio_pd3 
+0x02dd 001198 set0 0 ,pdata 
+0x02de 001199 hstore 1 ,core_gpio_pd3 
+0x02df 001200 rtn 
+:      001202 p_mouse_load_flash_info_check:
+0x02e0 001203 call p_flash_release_deep_power_down 
+0x02e1 001204 call mouse_load_flash_flag 
+0x02e2 001205 fetch 2 ,mem_store_flag 
+0x02e3 001206 arg eeprom_init_flag ,temp 
+0x02e4 001207 isub temp ,null 
+0x02e5 001208 branch p_mouse_load_flash_device_info ,zero 
+0x02e6 001209 storet 2 ,mem_store_flag 
+0x02e7 001210 call mouse_ble_init_address 
+0x02e8 001211 fetch 1 ,mem_config_sensor_motion 
+0x02e9 001212 store 1 ,mem_mouse_dpi 
+0x02ea 001213 fetch 4 ,mem_mouse_24g_addr_init 
+0x02eb 001214 store 4 ,mem_mouse_24g_addr 
+0x02ec 001215 store 4 ,mem_24g_addr 
+0x02ed 001216 call p_mouse_fast_conn_init 
+:      001218 p_mouse_set_24g_addr_flash:
+0x02ee 001219 arg 4 ,temp 
+0x02ef 001220 arg mem_24g_addr ,rega 
+0x02f0 001221 arg mouse_g24_addr_eeprom_offect ,regb 
+0x02f1 001222 rtn 
+:      001224 p_flash_erase_sector:
+0x02f2 001225 fetch 3 ,mem_flash_base 
+0x02f3 001226 store 3 ,mem_spi_write_addr 
+0x02f4 001227 call flash_erase_sector + 2 
+:      001228 p_wait_flash_done:
+0x02f5 001229 setarg 100000 
+0x02f6 001230 call sleep 
+0x02f7 001231 call spid_unlock_flash 
+0x02f8 001232 setarg mem_spid_rbuf 
+0x02f9 001233 hstore 2 ,core_spid_rxaddr 
+0x02fa 001234 setarg flash_read_satus 
+0x02fb 001235 call spid_read_reg 
+0x02fc 001236 bbit1 flash_status_wip ,p_wait_flash_done 
+0x02fd 001237 rtn 
+:      001239 p_spid_write_flash:
+0x02fe 001240 copy pdata ,regc 
+0x02ff 001241 copy rega ,pdata 
+0x0300 001242 increase -4 ,pdata 
+0x0301 001243 copy pdata ,regb 
+0x0302 001244 ifetch 4 ,regb 
+0x0303 001245 store 4 ,mem_write_flash_head_temp 
+0x0304 001246 copy regc ,pdata 
+0x0305 001247 call spid_write_flash 
+0x0306 001248 fetch 4 ,mem_write_flash_head_temp 
+0x0307 001249 istore 4 ,regb 
+0x0308 001250 rtn 
+:      001252 p_mouse_information_flash_parameters:
+0x0309 001253 setarg mem_mouse_information_end 
+0x030a 001254 arg mem_mouse_information_start ,temp 
+0x030b 001255 isub temp ,temp 
+0x030c 001256 fetch 3 ,mem_flash_base 
+0x030d 001257 arg mem_mouse_information_start ,rega 
+0x030e 001258 rtn 
+:      001260 p_mouse_read_flash:
+0x030f 001261 call p_flash_release_deep_power_down 
+0x0310 001262 call p_mouse_information_flash_parameters 
+0x0311 001263 branch spid_read_flash 
+:      001265 p_mouse_load_flash_device_info:
+0x0312 001266 call p_mouse_read_flash 
+0x0313 001267 call p_mouse_load_random_addr_increase_count 
+0x0314 001268 call mouse_select_reconn_device 
+0x0315 001269 fetch 4 ,mem_mouse_24g_addr 
+0x0316 001270 store 4 ,mem_24g_addr 
+0x0317 001271 fetch 6 ,mem_device1_addr 
+0x0318 001272 fetcht 6 ,mem_mouse_fast_conn_addr 
+0x0319 001273 isub temp ,null 
+0x031a 001274 nbranch p_mouse_le_fast_conn_disable ,zero 
+0x031b 001275 call p_mouse_fast_conn_init 
+0x031c 001276 rtn 
+:      001278 p_flash_deep_power_down:
+0x031d 001279 jam flash_command_deep_power_down ,mem_temp 
+:      001280 p_spid_write_flash_cmd:
+0x031e 001281 call p_spid_init_flash 
+0x031f 001282 call delay_nop100 
+0x0320 001283 call spid_unlock_flash 
+0x0321 001284 arg mem_write_flash_head_temp ,rega 
+0x0322 001285 fetcht 1 ,mem_temp 
+0x0323 001286 call spid_write_flash_common 
+0x0324 001287 branch delay_nop100 
+:      001289 p_flash_release_deep_power_down:
+0x0325 001290 jam flash_command_release_deep_power_down ,mem_temp 
+0x0326 001291 branch p_spid_write_flash_cmd 
+:      001306 p_mouse_g24_package_data:
+0x0327 001307 call mouse_g24_package_data 
+0x0328 001308 fetch 2 ,mem_mouse_z 
+0x0329 001309 rtn blank 
+:      001310 p_g24_transmit_by_interrupt_enable:
+0x032a 001311 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+0x032b 001312 setarg 0 
+0x032c 001313 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0x032d 001314 rtn 
+:      001316 p_mouse_le_txbuff_save:
+0x032e 001317 arg mem_le_tx_buffer0 ,contr 
+0x032f 001318 arg mem_le_tx_buffer0_omemalloc ,contw 
+0x0330 001319 call p_mouse_le_txbuff_copy 
+0x0331 001320 arg mem_le_tx_buffer1 ,contr 
+0x0332 001321 call p_mouse_le_txbuff_copy 
+0x0333 001322 arg mem_le_tx_buffer2 ,contr 
+0x0334 001323 call p_mouse_le_txbuff_copy 
+0x0335 001324 arg mem_le_tx_buffer3 ,contr 
+:      001325 p_mouse_le_txbuff_copy:
+0x0336 001326 arg 27 ,loopcnt 
+0x0337 001327 branch memcpy 
+:      001329 p_mouse_le_txbuff_load:
+0x0338 001330 arg mem_le_tx_buffer0_omemalloc ,contr 
+0x0339 001331 arg mem_le_tx_buffer0 ,contw 
+0x033a 001332 call p_mouse_le_txbuff_copy 
+0x033b 001333 arg mem_le_tx_buffer1 ,contw 
+0x033c 001334 call p_mouse_le_txbuff_copy 
+0x033d 001335 arg mem_le_tx_buffer2 ,contw 
+0x033e 001336 call p_mouse_le_txbuff_copy 
+0x033f 001337 arg mem_le_tx_buffer3 ,contw 
+0x0340 001338 branch p_mouse_le_txbuff_copy 
+:      001340 p_mouse_le:
+0x0341 001341 call le_fifo_check_nearly_full 
+0x0342 001342 nrtn blank 
+0x0343 001343 fetch 1 ,mem_mouse_fast_conn_flag 
+0x0344 001344 beq 0xff ,p_mouse_le_next 
+0x0345 001345 fetch 1 ,mem_le_connect_status_flag 
+0x0346 001346 and pdata ,0x03 ,pdata 
+0x0347 001347 rtnne 0x03 
+:      001348 p_mouse_le_next:
+0x0348 001349 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x0349 001350 call p_mouse_clear_sensor_data ,blank 
+0x034a 001351 fetch mouse_flag_len ,mem_mouse_flag 
+0x034b 001352 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x034c 001353 call mouse_motion 
+0x034d 001354 nrtn user 
+0x034e 001355 call p_mouse_le_current_mult_update 
+0x034f 001356 call p_mouse_data_xy_release 
+0x0350 001357 call p_mouse_wheel_trigger 
+0x0351 001358 fetch 1 ,mem_customer_key 
+0x0352 001359 beq 1 ,p_mouse_le_send_customer_packet 
+:      001360 p_mouse_data_push:
+0x0353 001361 arg mem_mouse_key ,rega 
+0x0354 001362 call queue_push 
+0x0355 001363 call p_mouse_queue_increase ,user 
+0x0356 001365 rtn 
+:      001367 p_mouse_le_current_mult_update:
+0x0357 001368 jam 0 ,mem_lpm_mult 
+0x0358 001369 jam 30 ,mem_mouse_le_current_mult_timer 
+0x0359 001370 rtn 
+:      001372 p_mouse_data_xy_release:
+0x035a 001373 fetch 1 ,mem_mouse_long_mult_flag 
+0x035b 001374 rtnne 1 
+0x035c 001375 setarg 0 
+0x035d 001376 store 1 ,mem_mouse_long_mult_flag 
+0x035e 001377 store 4 ,mem_mouse_x 
+0x035f 001378 branch p_mouse_init_sensor_reset 
+:      001380 p_mouse_sensor_poweron:
+0x0360 001381 arg mem_sensor_poweron_init ,regc 
+0x0361 001382 call p_sensor_wr_seq 
+0x0362 001383 branch p_mouse_dpi_config 
+:      001385 p_mouse_le_send_customer_packet:
+0x0363 001386 fetch 1 ,mem_customer_data_trigger 
+0x0364 001387 branch p_mouse_le_release_customer_data ,blank 
+0x0365 001388 fetch 8 ,mem_customer_key_press + 1 
+:      001389 p_mouse_fill_customer_data_le:
+0x0366 001390 store 8 ,mem_pdatatemp 
+0x0367 001391 arg 8 ,rega 
+0x0368 001392 arg 0x15 ,temp 
+0x0369 001393 call le_att_malloc_tx_notify 
+0x036a 001394 fetch 8 ,mem_pdatatemp 
+0x036b 001395 istore 8 ,contw 
+0x036c 001396 rtn 
+:      001398 p_mouse_le_release_customer_data:
+0x036d 001399 fetch 8 ,mem_customer_key_release + 1 
+0x036e 001400 branch p_mouse_fill_customer_data_le 
+:      001404 p_mouse_data_init:
+0x036f 001405 jam 7 ,mem_mouse_data_queue 
+0x0370 001406 jam 4 ,mem_mouse_data_queue + 1 
+0x0371 001407 setarg mem_mouse_data_queue 
+0x0372 001408 store 2 ,mem_queue_ptr 
+0x0373 001409 branch queue_init 
+:      001411 p_mouse_queue_increase:
+0x0374 001412 fetch 1 ,mem_mouse_data_queue_num 
+0x0375 001413 increase 1 ,pdata 
+0x0376 001414 store 1 ,mem_mouse_data_queue_num 
+0x0377 001415 rtn 
+:      001417 p_mouse_data_pull:
+0x0378 001418 arg mem_mouse_key ,rega 
+0x0379 001419 call queue_pop 
+0x037a 001420 branch p_mouse_fill_data_le ,user 
+0x037b 001421 rtn 
+:      001423 p_mouse_fill_data_le:
+0x037c 001424 call le_clear_md 
+0x037d 001425 fetch 1 ,mem_mouse_data_queue_num 
+0x037e 001426 sub pdata ,1 ,null 
+0x037f 001427 ncall le_set_md ,positive 
+0x0380 001428 fetch 1 ,mem_mouse_data_queue_num 
+0x0381 001429 rtn blank 
+0x0382 001430 increase -1 ,pdata 
+0x0383 001431 store 1 ,mem_mouse_data_queue_num 
+0x0384 001432 branch mouse_fill_data_le 
+:      001435 p_mouse_wheel_trigger:
+0x0385 001436 fetch 2 ,mem_mouse_z 
+0x0386 001437 rtn blank 
+0x0387 001438 jam 1 ,mem_mouse_wheel_trigger 
+0x0388 001439 jam 2 ,mem_mouse_wheel_trigger_timer 
+0x0389 001440 rtn 
+:      001442 p_mouse_clear_sensor_data:
+0x038a 001443 jam 1 ,mem_mouse_clear_sensor_data_flag 
+0x038b 001444 call le_set_config_more_data 
+:      001445 p_mouse_init_sensor_reset:
+0x038c 001446 jam 1 ,mem_mouse_init_sensor_reset_flag 
+0x038d 001447 branch p_mouse_init_sunt 
+:      001449 p_le_addr_random_config:
+0x038e 001450 call load_adc_init 
+0x038f 001453 setarg 0x1122 
+:      001454 p_le_otp_adc_empty:
+0x0390 001455 store 2 ,mem_random_addr_increase_count 
+0x0391 001456 rtn 
+:      001458 p_mouse_bt:
+0x0392 001459 rtn attempt 
+0x0393 001460 fetch 1 ,mem_app_handshake_flag 
+0x0394 001461 rtn blank 
+0x0395 001462 call l2cap_malloc_is_fifo_nearly_full 
+0x0396 001463 nrtn blank 
+0x0397 001464 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x0398 001465 call p_mouse_clear_sensor_data ,blank 
+0x0399 001466 fetch mouse_flag_len ,mem_mouse_flag 
+0x039a 001467 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x039b 001468 bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+0x039c 001469 call mouse_motion 
+0x039d 001470 nrtn user 
+0x039e 001471 call p_mouse_le_current_mult_update 
+0x039f 001472 call p_mouse_data_xy_release 
+0x03a0 001473 call p_mouse_wheel_trigger 
+0x03a1 001474 fetch 1 ,mem_mouse_bt_boot_mode 
+0x03a2 001475 beq 1 ,p_mouse_send_data_boot_mode 
+0x03a3 001476 fetch 1 ,mem_mouse_bt_send_first_package_flag 
+0x03a4 001477 rtn blank 
+0x03a5 001478 fetch 1 ,mem_customer_key 
+0x03a6 001479 beq 1 ,p_mouse_bt_send_customer_packet 
+0x03a7 001480 branch mouse_send_data 
+:      001482 p_mouse_send_data_boot_mode:
+0x03a8 001483 fetch 1 ,mem_mouse_key 
+0x03a9 001484 store 1 ,mem_mouse_bt_boot_data 
+0x03aa 001485 fetch 1 ,mem_mouse_x 
+0x03ab 001486 istore 1 ,contw 
+0x03ac 001487 fetch 1 ,mem_mouse_y 
+0x03ad 001488 istore 1 ,contw 
+0x03ae 001489 fetch 2 ,mem_mouse_z 
+0x03af 001490 istore 2 ,contw 
+0x03b0 001492 arg 7 ,rega 
+0x03b1 001493 call hid_malloc_tx_buff 
+0x03b2 001494 fetch 2 ,mem_hid_int_remote_cid 
+0x03b3 001495 istore 2 ,contw 
+0x03b4 001496 setarg 0x02a1 
+0x03b5 001497 istore 2 ,contw 
+0x03b6 001498 fetch 5 ,mem_mouse_bt_boot_data 
+0x03b7 001499 istore 5 ,contw 
+0x03b8 001500 rtn 
+:      001502 p_mouse_bt_send_customer_packet:
+0x03b9 001503 fetch 1 ,mem_customer_data_trigger 
+0x03ba 001504 branch p_mouse_bt_release_customer_data ,blank 
+0x03bb 001505 fetch 8 ,mem_customer_key_press + 1 
+:      001506 p_mouse_bt_send_customer_data:
+0x03bc 001507 store 8 ,mem_pdatatemp 
+0x03bd 001508 arg 10 ,rega 
+0x03be 001509 call hid_malloc_tx_buff 
+0x03bf 001510 fetch 2 ,mem_hid_int_remote_cid 
+0x03c0 001511 istore 2 ,contw 
+0x03c1 001512 setarg 0x01a1 
+0x03c2 001513 istore 2 ,contw 
+0x03c3 001514 fetch 8 ,mem_pdatatemp 
+0x03c4 001515 istore 8 ,contw 
+0x03c5 001516 rtn 
+:      001518 p_mouse_bt_release_customer_data:
+0x03c6 001519 fetch 8 ,mem_customer_key_release + 1 
+0x03c7 001520 branch p_mouse_bt_send_customer_data 
+:      001523 p_mouse_idle:
+0x03c8 001524 call ui_check_paring_button 
+0x03c9 001525 call p_mouse_dpi_check 
+0x03ca 001526 branch mouse_wheel_check 
+:      001528 p_mouse_dpi_check:
+0x03cb 001529 jam 0x05 ,mem_mouse_key_temp 
+0x03cc 001530 fetcht 1 ,mem_dpi_button_gpio 
+0x03cd 001531 fetch 1 ,mem_mouse_dpikey_press_status 
+0x03ce 001532 call p_mouse_check_key 
+0x03cf 001533 store 1 ,mem_mouse_dpikey_press_status 
+0x03d0 001534 fetcht 1 ,mem_dpi_button_gpio 
+0x03d1 001535 call p_gpio_set_input_pu 
+0x03d2 001536 copy rega ,pdata 
+0x03d3 001537 bbit1 5 ,p_mouse_dpi_down 
+0x03d4 001538 branch mouse_dpi_up 
+:      001541 p_mouse_dpi_down:
+0x03d5 001542 fetch 1 ,mem_mouse_dpi_button_state 
+0x03d6 001543 rtneq dpi_button_state_down 
+0x03d7 001544 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+0x03d8 001545 fetch 1 ,mem_mouse_dpi 
+0x03d9 001546 increase 1 ,pdata 
+0x03da 001547 and pdata ,0x03 ,pdata 
+0x03db 001548 store 1 ,mem_mouse_dpi 
+0x03dc 001549 call mouse_seting_dpi 
+:      001551 p_mouse_store_flash_device_info:
+0x03dd 001552 call p_flash_release_deep_power_down 
+0x03de 001553 call p_flash_erase_sector 
+0x03df 001554 call p_mouse_information_flash_parameters 
+0x03e0 001555 call p_spid_write_flash 
+0x03e1 001556 call p_wait_flash_done 
+:      001557 p_mouse_store_random_addr_increase_count:
+0x03e2 001558 call p_spid_init_flash 
+0x03e3 001559 arg 2 ,temp 
+0x03e4 001560 arg mem_random_addr_increase_count ,rega 
+0x03e5 001561 arg mouse_random_addr_count_eeprom_offset ,regb 
+0x03e6 001562 fetch 3 ,mem_flash_base 
+0x03e7 001563 iadd regb ,pdata 
+0x03e8 001564 call p_spid_write_flash 
+0x03e9 001565 call p_wait_flash_done 
+0x03ea 001566 call p_flash_deep_power_down 
+:      001567 p_mouse_spi_init:
+0x03eb 001568 jam 0x76 ,mem_spi_init_clk 
+0x03ec 001569 branch mouse_spi_init 
+:      001571 p_mouse_priority_bb_event:
+0x03ed 001572 copy regc ,pdata 
+0x03ee 001573 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0x03ef 001574 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0x03f0 001575 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+0x03f1 001576 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0x03f2 001577 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0x03f3 001578 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+0x03f4 001579 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+0x03f5 001580 beq bt_evt_switch_not_accept ,app_bt_role_switch 
+0x03f6 001581 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+0x03f7 001582 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+0x03f8 001583 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+0x03f9 001584 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+0x03fa 001585 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0x03fb 001586 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0x03fc 001587 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0x03fd 001588 branch mouse_priority_bb_event + 1 
+:      001590 p_mouse_le_bb_event_connected:
+0x03fe 001591 call p_mouse_init_sensor_reset 
+0x03ff 001592 call app_ble_store_reconn_info 
+0x0400 001593 jam 1 ,mem_mouse_le_bb_connected_flag 
+0x0401 001594 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x0402 001595 nbranch p_mouse_le_bb_event_connected_next ,blank 
+0x0403 001596 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
+:      001597 p_mouse_le_bb_event_connected_next:
+0x0404 001598 call p_mouse_null_enter_hibernate_disable 
+0x0405 001599 call p_mouse_data_init 
+0x0406 001600 branch mouse_le_bb_event_connected 
+:      001602 p_mouse_le_bb_disconnected:
+0x0407 001603 call p_mouse_sensor_powerdown_check 
+0x0408 001604 jam zcode_a2 ,mem_zcode_temp_param0 
+0x0409 001605 branch p_zcode_entrance 
+:      001607 p_mouse_le_enc_info:
+:      001608 p_app_updata_le_param:
+0x040a 001609 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x040b 001610 branch ui_ipc_send_cmd 
+:      001612 p_mouse_le_ll_start_encryt:
+0x040c 001613 jam zcode_b3 ,mem_zcode_temp_param0 
+0x040d 001614 branch p_zcode_entrance 
+:      001616 p_mouse_le_conn_param_update_rsp_recieved:
+0x040e 001617 jam zcode_a1 ,mem_zcode_temp_param0 
+0x040f 001618 branch p_zcode_entrance 
+:      001621 p_mouse_bb_event_reconn_timeout:
+:      001622 p_mouse_bb_event_reconn_failed:
+0x0410 001623 jam zcode_a3 ,mem_zcode_temp_param0 
+0x0411 001624 branch p_zcode_entrance 
+:      001626 p_mouse_irtual_cable_unplug:
+0x0412 001627 jam zcode_b5 ,mem_zcode_temp_param0 
+0x0413 001628 branch p_zcode_entrance 
+:      001630 p_mouse_sniff_not_accept:
+0x0414 001631 jam zcode_b1 ,mem_zcode_temp_param0 
+0x0415 001632 branch p_zcode_entrance 
+:      001634 p_mouse_bb_event_connected:
+0x0416 001635 call p_mouse_init_sensor_reset 
+0x0417 001636 call p_mouse_null_enter_hibernate_disable 
+0x0418 001637 call p_mouse_discovey_led_blink_off 
+0x0419 001638 jam 0 ,mem_mouse_send_switch_req_timer 
+0x041a 001639 branch mouse_stop_discovery 
+:      001641 p_mouse_bb_event_disconnected:
+0x041b 001642 call p_mouse_sensor_powerdown_check 
+0x041c 001643 jam zcode_b4 ,mem_zcode_temp_param0 
+0x041d 001644 branch p_zcode_entrance 
+:      001646 p_mouse_enter_sniff_check:
+0x041e 001647 jam zcode_b2 ,mem_zcode_temp_param0 
+0x041f 001648 branch p_zcode_entrance 
+:      001650 p_mouse_24g_pairing_complete:
+0x0420 001651 call p_mouse_init_sensor_reset 
+0x0421 001652 jam zcode_92 ,mem_zcode_temp_param0 
+0x0422 001653 branch p_zcode_entrance 
+:      001655 p_mouse_24g_attempt_fail:
+0x0423 001656 jam zcode_61 ,mem_zcode_temp_param0 
+0x0424 001657 branch p_zcode_entrance 
+:      001659 p_mouse_24g_attempt_success:
+0x0425 001661 call p_mouse_init_sensor_reset 
+0x0426 001662 branch mouse_no_data_timer_init 
+:      001664 p_mouse_before_hibernate:
+0x0427 001665 call p_mouse_sensor_powerdown_check 
+0x0428 001666 jam zcode_a4 ,mem_zcode_temp_param0 
+0x0429 001667 branch p_zcode_entrance 
+:      001669 p_mouse_sensor_powerdown_check:
+0x042a 001670 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0x042b 001671 rtn blank 
+0x042c 001672 jam 0 ,mem_mouse_init_sensor_reset_flag 
+:      001673 p_mouse_sensor_powerdown:
+0x042d 001674 call p_mouse_init_sunt 
+0x042e 001675 setarg 0x06 
+0x042f 001676 call twspi_read 
+0x0430 001677 or pdata ,0x08 ,pdata 
+0x0431 001678 lshift8 pdata ,pdata 
+0x0432 001679 add pdata ,0x06 ,pdata 
+0x0433 001680 branch twspi_write 
+:      001682 p_mouse_bb_event_timer:
+0x0434 001683 call p_mouse_adc_read 
+0x0435 001685 call p_mouse_multi_led_blink_timer 
+0x0436 001686 call p_mouse_wheel_trigger_timer 
+0x0437 001687 call p_mouse_null_enter_hibernate_timer 
+0x0438 001688 call p_mouse_bt_discovery_check 
+0x0439 001689 call mouse_check_discovery_timeout_timer 
+0x043a 001690 call p_mouse_select_device 
+0x043b 001691 call p_mouse_g24_long_sleep_param_update_timer 
+0x043c 001693 call p_mouse_check_direct_timeout_timer 
+0x043d 001694 call p_mouse_le_enable_att_list_timer 
+0x043e 001695 call p_mouse_le_current_mult_update_timer 
+0x043f 001696 call p_le_send_smp_security_request_timer 
+0x0440 001697 call p_mouse_send_switch_req_timer 
+0x0441 001698 call mouse_check_hid_handshake_timer 
+0x0442 001699 call p_mouse_bt_check_sniff_req_timeout_timer 
+0x0443 001700 branch mouse_check_no_data_timeout_timer 
+:      001702 p_mouse_select_device:
+:      001703 p_mouse_select_device_by_button:
+0x0444 001704 call p_mouse_pb_button_check 
+0x0445 001705 branch p_mouse_select_device_button_down ,true 
+:      001706 p_mouse_select_device_button_up:
+0x0446 001707 fetch 1 ,mem_mouse_select_device_button_wakeup_flag 
+0x0447 001708 nbranch p_mouse_select_button_wakeup_firstup ,blank 
+0x0448 001709 fetch 1 ,mem_select_device_button_statue 
+0x0449 001710 rtneq dpi_button_state_up 
+0x044a 001712 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x044b 001713 jam on ,mem_mouse_multi_led_blink_enable 
+0x044c 001715 fetch 1 ,mem_mouse_long_button_select_device 
+0x044d 001716 branch p_mouse_long_button_state_clear ,blank 
+:      001717 p_mouse_ready_reconnection_by_button:
+0x044e 001718 call p_mouse_switch_device_flag 
+0x044f 001719 jam 0 ,mem_link_key_exists 
+0x0450 001720 call p_mouse_store_flash_device_info 
+0x0451 001721 branch mouse_ready_reconnection_by_button_next 
+:      001723 p_mouse_pb_button_check:
+0x0452 001724 fetcht 1 ,mem_config_select_device_button_gpio 
+0x0453 001725 call gpio_config_input 
+0x0454 001726 fetcht 1 ,mem_config_select_device_button_gpio 
+0x0455 001727 branch gpio_get_bit 
+:      001729 p_mouse_switch_device_flag:
+0x0456 001730 fetcht 1 ,mem_device_flag 
+0x0457 001731 increase 1 ,temp 
+0x0458 001732 fetch 1 ,mem_device_number 
+0x0459 001733 isub temp ,null 
+0x045a 001734 ncall mouse_select_device_count_clean ,positive 
+0x045b 001735 storet 1 ,mem_device_flag 
+0x045c 001736 rtn 
+:      001738 p_mouse_long_button_state_clear:
+0x045d 001739 jam 0xff ,mem_mouse_long_button_select_device 
+0x045e 001740 rtn 
+:      001742 p_mouse_select_button_wakeup_firstup:
+0x045f 001743 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+0x0460 001744 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x0461 001745 jam on ,mem_mouse_multi_led_blink_enable 
+0x0462 001746 rtn 
+:      001748 p_mouse_select_device_button_down:
+0x0463 001749 fetch 2 ,mem_ui_state_map 
+0x0464 001750 bbit1 ui_state_ble_adv ,p_mouse_select_device_button_down_next 
+0x0465 001751 jam off ,mem_mouse_multi_led_blink_enable 
+:      001752 p_mouse_select_device_button_down_next:
+0x0466 001753 fetch 1 ,mem_select_device_button_statue 
+0x0467 001754 rtneq dpi_button_state_down 
+0x0468 001755 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x0469 001757 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x046a 001758 rtnbit1 app_disc_pb_button 
+0x046b 001760 fetch 1 ,mem_device_flag 
+0x046c 001761 rtnne mode_bt_device1 
+:      001762 p_mouse_pb_button_2ble_disconnect:
+0x046d 001763 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x046e 001764 set1 app_disc_pb_button ,pdata 
+0x046f 001765 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x0470 001766 branch mouse_disconnect 
+:      001769 p_mouse_send_switch_req_timer:
+0x0471 001770 arg mem_mouse_send_switch_req_timer ,regc 
+0x0472 001771 arg host_create_conn_resend ,regb 
+0x0473 001772 branch timer_single_step 
+:      001774 p_mouse_bt_check_sniff_req_timeout_timer:
+0x0474 001775 arg mem_mouse_bt_send_first_package_timer ,regc 
+0x0475 001776 arg p_mouse_bt_send_first_package ,regb 
+0x0476 001777 branch timer_single_step 
+:      001778 p_mouse_bt_send_first_package:
+0x0477 001779 jam 1 ,mem_mouse_bt_send_first_package_flag 
+0x0478 001780 rtn 
+:      001783 p_mouse_le_enable_att_list_timer:
+0x0479 001784 arg mem_le_start_encrypt_timer ,regc 
+0x047a 001785 arg mouse_le_write_enable ,regb 
+0x047b 001786 branch timer_single_step 
+:      001789 p_mouse_check_direct_timeout_timer:
+0x047c 001790 arg mem_mouse_direct_timer ,regc 
+0x047d 001791 arg p_mouse_check_direct_timeout ,regb 
+0x047e 001792 branch timer_single_step_2b 
+:      001794 p_mouse_check_direct_timeout:
+0x047f 001795 fetch 1 ,mem_mouse_fast_conn_flag 
+0x0480 001796 beq 0xff ,p_mouse_long_button_bt_discovery 
+0x0481 001797 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x0482 001798 nrtn blank 
+0x0483 001799 branch mouse_check_direct_timeout 
+:      001801 p_mouse_le_current_mult_update_timer:
+0x0484 001802 arg mem_mouse_le_current_mult_timer ,regc 
+0x0485 001803 arg p_mouse_le_current_mult_reinit ,regb 
+0x0486 001804 branch timer_single_step 
+:      001805 p_mouse_le_current_mult_reinit:
+0x0487 001806 fetch 1 ,mem_lpm_mult_init 
+0x0488 001807 store 1 ,mem_lpm_mult 
+0x0489 001808 branch p_mouse_long_mult_flag_enable 
+:      001810 p_le_send_smp_security_request_timer:
+0x048a 001811 fetch 1 ,mem_mouse_le_bb_connected_flag 
+0x048b 001812 rtn blank 
+0x048c 001813 arg mem_mouse_send_secutiry_request_timer ,regc 
+0x048d 001814 arg p_le_pairing_sm_start_check ,regb 
+0x048e 001815 branch timer_single_step 
+:      001816 p_le_pairing_sm_start_check:
+0x048f 001817 fetch 1 ,mem_le_send_security_request_flag 
+0x0490 001818 nrtn blank 
+0x0491 001819 branch le_pairing_sm_start 
+:      001823 p_mouse_g24_long_sleep_param_update_timer:
+0x0492 001824 arg mem_24g_long_sleep_param_update_timer ,regc 
+0x0493 001825 arg p_mouse_g24_long_sleep_normal_param ,regb 
+0x0494 001826 branch timer_single_step 
+:      001827 p_mouse_g24_long_sleep_normal_param:
+0x0495 001828 setarg g24_long_sleep_step3 
+0x0496 001829 store 3 ,mem_24g_enter_hibernate 
+:      001830 p_mouse_long_mult_flag_enable:
+0x0497 001831 jam 1 ,mem_mouse_long_mult_flag 
+0x0498 001832 rtn 
+:      001836 p_mouse_wheel_trigger_timer:
+0x0499 001837 arg mem_mouse_wheel_trigger_timer ,regc 
+0x049a 001838 arg p_mouse_wheel_trigger_disable ,regb 
+0x049b 001839 branch timer_single_step 
+:      001840 p_mouse_wheel_trigger_disable:
+0x049c 001841 jam 0 ,mem_mouse_wheel_trigger 
+0x049d 001842 rtn 
+:      001844 p_mouse_bt_discovery_check:
+:      001845 p_mouse_bt_discovery_commbination_key:
+0x049e 001846 call p_mouse_pb_button_check 
+0x049f 001847 branch p_mouse_bt_discovery_commbination_key_down ,true 
+0x04a0 001849 call p_mouse_check_key_gpio 
+0x04a1 001850 beq mouse_lmr_button ,p_mouse_bt_discovery_commbination_key_down 
+:      001851 p_mouse_bt_discovery_commbination_key_up:
+0x04a2 001852 call mouse_bt_discovery_commbination_key_up 
+0x04a3 001853 arg mouse_bt_discovery_button_long_down_flag ,queue 
+0x04a4 001854 branch mouse_disable_function_flag 
+:      001856 p_mouse_bt_discovery_commbination_key_down:
+0x04a5 001857 call p_gpio_set_input_pu 
+0x04a6 001858 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+0x04a7 001859 call p_mouse_bt_discovery_timer 
+0x04a8 001860 branch mouse_bt_discovery_commbination_key_down + 1 
+:      001862 p_mouse_bt_discovery_timer:
+0x04a9 001863 arg mem_combination_ui_button_count ,regc 
+0x04aa 001864 arg p_mouse_long_button_bt_discovery ,regb 
+0x04ab 001865 branch timer_single_step 
+:      001866 p_mouse_long_button_bt_discovery:
+0x04ac 001867 fetch mouse_flag_len ,mem_mouse_flag 
+0x04ad 001868 rtnbit1 mouse_bt_discovery_button_long_down_flag 
+0x04ae 001869 jam 0 ,mem_mouse_long_button_select_device 
+0x04af 001870 fetch 2 ,mem_ui_state_map 
+0x04b0 001871 isolate1 ui_state_ble_adv ,pdata 
+0x04b1 001872 call mouse_stop_le_adv ,true 
+0x04b2 001873 fetch 2 ,mem_ui_state_map 
+0x04b3 001874 isolate1 ui_state_bt_reconnect ,pdata 
+0x04b4 001875 call mouse_cancel_reconnect ,true 
+0x04b5 001876 arg mouse_bt_discovery_button_long_down_flag ,queue 
+0x04b6 001877 call mouse_enable_function_flag 
+0x04b7 001878 branch mouse_long_button_bt_discovry 
+:      001880 p_mouse_null_enter_hibernate_timer:
+0x04b8 001881 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04b9 001882 nrtn blank 
+0x04ba 001883 fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+0x04bb 001884 rtn blank 
+0x04bc 001885 arg mem_mouse_null_enter_hibernate_timer ,regc 
+0x04bd 001886 arg p_mouse_null_enter_hibernate ,regb 
+0x04be 001887 branch timer_single_step 
+:      001889 p_mouse_null_enter_hibernate:
+0x04bf 001890 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+:      001891 p_app_enter_hibernate:
+0x04c0 001892 call p_mouse_sensor_powerdown 
+0x04c1 001893 branch app_enter_hibernate 
+:      001895 p_mouse_null_enter_hibernate_disable:
+0x04c2 001896 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0x04c3 001897 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+0x04c4 001898 rtn 
+:      001900 p_mouse_multi_led_blink_timer:
+0x04c5 001901 fetch 1 ,mem_mouse_multi_led_blink_enable 
+0x04c6 001902 rtn blank 
+0x04c7 001903 fetch 1 ,mem_mouse_multi_led_type 
+0x04c8 001904 beq multi_led_on ,p_mouse_multi_led_type_on 
+0x04c9 001905 beq multi_led_blink ,p_mouse_multi_led_type_blink 
+0x04ca 001906 rtn 
+:      001908 p_mouse_multi_led_type_on:
+0x04cb 001909 call p_mouse_multi_led_on 
+0x04cc 001910 fetch 1 ,mem_mouse_multi_led_on_timer 
+0x04cd 001911 increase 1 ,pdata 
+0x04ce 001912 store 1 ,mem_mouse_multi_led_on_timer 
+0x04cf 001913 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
+0x04d0 001914 isub temp ,null 
+0x04d1 001915 call p_mouse_multi_led_off_poweron2s ,zero 
+0x04d2 001916 rtn 
+:      001917 p_mouse_multi_led_off_poweron2s:
+0x04d3 001918 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04d4 001919 branch p_mouse_multi_led_off 
+:      001921 p_mouse_multi_led_type_blink:
+0x04d5 001922 arg mem_mouse_multi_led_blink_timer ,regc 
+0x04d6 001923 arg p_mouse_multi_led_type_blink_timeout ,regb 
+0x04d7 001924 branch timer_single_step 
+:      001925 p_mouse_multi_led_type_blink_timeout:
+0x04d8 001926 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+0x04d9 001927 store 1 ,mem_mouse_multi_led_blink_timer 
+:      001934 p_mouse_multi_led_blink_count_no_limited:
+0x04da 001935 fetch 1 ,mem_mouse_multi_led_state 
+0x04db 001936 beq on ,p_mouse_multi_led_off 
+0x04dc 001937 beq off ,p_mouse_multi_led_on 
+0x04dd 001938 rtn 
+:      001940 p_mouse_multi_led_on:
+0x04de 001941 jam on ,mem_mouse_multi_led_state 
+0x04df 001942 fetch 1 ,mem_device_flag 
+0x04e0 001943 beq mode_24g_device ,p_mouse_multi_down_led_on 
+:      001944 p_mouse_multi_up_led_on:
+0x04e1 001945 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04e2 001946 call gpio_config_output 
+0x04e3 001947 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04e4 001948 branch gpio_out_active 
+:      001949 p_mouse_multi_down_led_on:
+0x04e5 001950 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04e6 001951 call gpio_config_output 
+0x04e7 001952 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04e8 001953 branch gpio_out_inactive 
+:      001956 p_mouse_discovey_led_blink_off:
+0x04e9 001957 fetch 1 ,mem_mouse_multi_led_on_timer 
+0x04ea 001958 nrtn blank 
+0x04eb 001959 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04ec 001960 nrtn blank 
+:      001961 p_mouse_multi_led_blink_off:
+0x04ed 001962 setarg 0 
+0x04ee 001963 store 3 ,mem_mouse_multi_led_blink_timer 
+:      001964 p_mouse_multi_led_off:
+0x04ef 001965 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x04f0 001966 nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
+0x04f1 001967 jam 0 ,mem_mouse_multi_led_blink_enable 
+0x04f2 001968 jam 0 ,mem_mouse_multi_led_type 
+:      001969 p_mouse_multi_led_off_wait_blink_over:
+0x04f3 001970 jam 0 ,mem_mouse_multi_led_on_timer 
+0x04f4 001971 jam off ,mem_mouse_multi_led_state 
+0x04f5 001972 branch p_mouse_multi_led_gpio_set_float 
+:      001974 p_mouse_mode_bt_device1_multi_led_on:
+:      001975 p_mouse_mode_24g_device_multi_led_on:
+0x04f6 001976 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04f7 001977 jam on ,mem_mouse_multi_led_blink_enable 
+0x04f8 001978 jam multi_led_on ,mem_mouse_multi_led_type 
+0x04f9 001979 jam 0 ,mem_mouse_multi_led_on_timer 
+0x04fa 001980 rtn 
+:      001982 p_mouse_discovery_multi_led_blink:
+0x04fb 001983 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04fc 001984 jam 2 ,mem_mouse_multi_led_blink_timer_init 
+0x04fd 001986 jam 1 ,mem_mouse_multi_led_blink_count 
+:      001987 p_mouse_multi_led_blink_enable:
+0x04fe 001988 jam 2 ,mem_mouse_multi_led_blink_timer 
+0x04ff 001989 jam on ,mem_mouse_multi_led_blink_enable 
+0x0500 001990 jam multi_led_blink ,mem_mouse_multi_led_type 
+0x0501 001991 rtn 
+:      001994 p_mouse_adc_read:
+0x0502 001997 fetch 2 ,mem_mouse_multi_led_blink_count 
+0x0503 001998 nrtn blank 
+0x0504 001999 arg mem_adc_read_timer ,regc 
+0x0505 002000 arg p_mouse_adc_read_timeout ,regb 
+0x0506 002001 branch timer_single_step 
+:      002002 p_mouse_adc_read_timeout:
+0x0507 002003 jam 10 ,mem_adc_read_timer 
+0x0508 002004 call adc_set_mode 
+0x0509 002005 call vdd_calculate_by_mode 
+0x050a 002006 add pdata ,0x1c ,pdata 
+0x050b 002007 store 2 ,mem_mouse_vdd_now_vol 
+0x050c 002008 arg mem_mouse_vdd_calculate_set ,rega 
+:      002009 p_adc_bat_percent_lowpower_out:
+0x050d 002010 ifetch 8 ,rega 
+0x050e 002011 store 8 ,mem_pdatatemp 
+0x050f 002012 fetcht 2 ,mem_pdatatemp + 2 
+0x0510 002013 fetch 2 ,mem_pdatatemp + 6 
+0x0511 002014 isub temp ,null 
+0x0512 002015 nbranch p_app_enter_hibernate ,positive 
+0x0513 002016 rtn 
+:      002066 p_mouse_seting_dpi:
+:      002067 p_mouse_seting_sensor_type:
+0x0514 002068 fetch 1 ,mem_config_sensor_type 
+0x0515 002070 beq p3065_xy ,p_mouse_seting_3065xy_dpi 
+0x0516 002072 beq ka8 ,p_mouse_seting_3065xy_dpi 
+:      002074 p_mouse_seting_3205_dpi:
+0x0517 002075 fetch 1 ,mem_mouse_dpi 
+0x0518 002076 sub pdata ,mouse_dpi_level2 ,null 
+0x0519 002077 call p_mouse_3205_dpi_recount ,zero 
+0x051a 002078 fetch 1 ,mem_mouse_dpi 
+0x051b 002079 beq mouse_dpi_level1 ,p_mouse_3205_set_cpi1 
+0x051c 002080 beq mouse_dpi_level4 ,mouse_set_cpi3 
+0x051d 002081 branch mouse_set_cpi2 
+:      002082 p_mouse_3205_dpi_recount:
+0x051e 002083 jam mouse_dpi_level3 ,mem_mouse_dpi 
+0x051f 002084 rtn 
+:      002085 p_mouse_3205_set_cpi1:
+0x0520 002086 fetch 1 ,mem_320x_dpi_1 
+0x0521 002087 branch p_mouse_dpi_store 
+:      002089 p_mouse_seting_3065xy_dpi:
+0x0522 002090 fetch 1 ,mem_mouse_dpi 
+0x0523 002091 sub pdata ,mouse_dpi_level2 ,null 
+0x0524 002092 call p_mouse_3205_dpi_recount ,zero 
+0x0525 002093 fetch 1 ,mem_mouse_dpi 
+0x0526 002094 beq mouse_dpi_level1 ,p_mouse_3065xy_set_cpi1 
+0x0527 002095 beq mouse_dpi_level4 ,p_mouse_3065xy_set_cpi4 
+:      002096 p_mouse_3065xy_set_cpi3:
+0x0528 002097 fetch 1 ,mem_320x_dpi_3 
+0x0529 002098 increase -1 ,pdata 
+:      002099 p_mouse_dpi_store:
+0x052a 002100 store 1 ,mem_mouse_cpi_count 
+0x052b 002101 branch mouse_p3205_dpi + 3 
+:      002102 p_mouse_3065xy_set_cpi1:
+0x052c 002103 fetch 1 ,mem_320x_dpi_1 
+0x052d 002104 increase -1 ,pdata 
+0x052e 002105 branch p_mouse_dpi_store 
+:      002106 p_mouse_3065xy_set_cpi4:
+0x052f 002107 fetch 1 ,mem_320x_dpi_4 
+0x0530 002108 increase -1 ,pdata 
+0x0531 002109 branch p_mouse_dpi_store 
+:      002132 p_mouse_motion:
+0x0532 002133 disable user 
+0x0533 002134 setarg 0 
+0x0534 002135 store 6 ,mem_mouse_x 
+0x0535 002136 call p_mouse_cheak_sensor_data 
+0x0536 002137 call mouse_zwheel 
+0x0537 002139 call p_mouse_key 
+0x0538 002140 nbranch p_mouse_motion_nodata ,user 
+0x0539 002141 call p_drawing_optima 
+0x053a 002142 branch mouse_motion + 9 
+:      002144 p_mouse_motion_nodata:
+0x053b 002145 call p_drawing_optima_init 
+0x053c 002146 jam 0 ,mem_low_power_check_count 
+0x053d 002147 rtn 
+:      002149 p_mouse_key:
+0x053e 002150 call p_mouse_check_key_gpio 
+0x053f 002151 branch mouse_key + 1 
+:      002152 p_mouse_check_key_gpio:
+0x0540 002153 fetch 1 ,mem_mouse_key 
+0x0541 002154 copy pdata ,rega 
+0x0542 002155 call p_mouse_check_lkey_gpio 
+0x0543 002156 call p_mouse_check_rkey_gpio 
+0x0544 002157 call p_mouse_check_mkey_gpio 
+0x0545 002159 call p_mouse_check_fwkey_gpio 
+0x0546 002160 copy rega ,pdata 
+0x0547 002161 rtn 
+:      002165 p_mouse_check_key:
+0x0548 002166 store 1 ,mem_mouse_key_status 
+0x0549 002167 lshift pdata ,pdata 
+0x054a 002168 copy pdata ,regb 
+0x054b 002169 copy temp ,regc 
+0x054c 002170 fetch 1 ,mem_mouse_key_temp 
+0x054d 002171 sub pdata ,0x02 ,null 
+0x054e 002172 call p_gpio_set_input_pu ,positive 
+0x054f 002173 ncall p_gpio_set_input_pd ,positive 
+0x0550 002174 copy regc ,temp 
+0x0551 002175 call gpio_get_bit 
+0x0552 002176 setflag true ,0 ,regb 
+0x0553 002177 call p_mouse_check_press 
+0x0554 002178 and regb ,0x07 ,pdata 
+0x0555 002179 fetcht 1 ,mem_mouse_key_temp 
+0x0556 002180 copy temp ,queue 
+0x0557 002181 sub temp ,0x02 ,null 
+0x0558 002182 beq 0x07 ,p_mouse_key_press 
+0x0559 002183 beq 0x00 ,p_mouse_key_release 
+0x055a 002184 rtn 
+:      002186 p_mouse_check_press:
+0x055b 002187 fetcht 1 ,mem_mouse_key_status 
+0x055c 002188 and_into 0x01 ,temp 
+0x055d 002189 and regb ,0x01 ,pdata 
+0x055e 002190 isub temp ,null 
+0x055f 002191 nbranch p_mouse_le_current_mult_update ,zero 
+0x0560 002192 rtn 
+:      002194 p_mouse_check_lkey_gpio:
+0x0561 002195 jam 0x00 ,mem_mouse_key_temp 
+0x0562 002196 fetcht 1 ,mem_lbutton_gpio 
+0x0563 002197 fetch 1 ,mem_mouse_lkey_press_status 
+0x0564 002198 call p_mouse_check_key 
+0x0565 002200 store 1 ,mem_mouse_lkey_press_status 
+0x0566 002201 rtn 
+:      002203 p_mouse_check_rkey_gpio:
+0x0567 002204 jam 0x01 ,mem_mouse_key_temp 
+0x0568 002205 fetcht 1 ,mem_rbutton_gpio 
+0x0569 002206 fetch 1 ,mem_mouse_rkey_press_status 
+0x056a 002207 call p_mouse_check_key 
+0x056b 002209 store 1 ,mem_mouse_rkey_press_status 
+0x056c 002210 rtn 
+:      002212 p_mouse_check_mkey_gpio:
+0x056d 002213 jam 0x02 ,mem_mouse_key_temp 
+0x056e 002214 fetcht 1 ,mem_mbutton_gpio 
+0x056f 002215 fetch 1 ,mem_mouse_mkey_press_status 
+0x0570 002216 call p_mouse_check_key 
+0x0571 002218 store 1 ,mem_mouse_mkey_press_status 
+0x0572 002219 rtn 
+:      002232 p_mouse_check_fwkey_gpio:
+0x0573 002233 jam 0 ,mem_customer_key 
+0x0574 002234 jam 0x04 ,mem_mouse_key_temp 
+0x0575 002235 fetcht 1 ,mem_fw_button_gpio 
+0x0576 002236 fetch 1 ,mem_mouse_fwkey_press_status 
+0x0577 002237 call p_mouse_check_key 
+0x0578 002239 store 1 ,mem_mouse_fwkey_press_status 
+0x0579 002240 copy rega ,pdata 
+0x057a 002241 bbit1 4 ,p_customer_key_press 
+0x057b 002242 call p_customer_key_release 
+:      002244 p_mouse_check_fwkey_gpio_exit:
+0x057c 002245 copy rega ,pdata 
+0x057d 002246 and_into 0xef ,rega 
+0x057e 002247 fetch 1 ,mem_customer_data_trigger 
+0x057f 002248 store 1 ,mem_customer_data_trigger_last 
+0x0580 002249 fetcht 1 ,mem_fw_button_gpio 
+:      002250 p_gpio_set_input_pu:
+0x0581 002251 set1 gpio_active_bit ,temp 
+:      002252 p_gpio_set_input_pu1:
+0x0582 002253 arg core_gpio_pu0 ,contw 
+0x0583 002254 call gpio_set_bit 
+0x0584 002255 set0 gpio_active_bit ,temp 
+0x0585 002256 branch p_gpio_set_input_pd4 
+:      002258 p_mouse_key_press:
+0x0586 002259 branch p_qset1_rega ,positive 
+:      002260 p_qset0_rega:
+0x0587 002261 qset0 rega 
+0x0588 002262 rtn 
+:      002264 p_mouse_key_release:
+0x0589 002265 branch p_qset0_rega ,positive 
+:      002266 p_qset1_rega:
+0x058a 002267 qset1 rega 
+0x058b 002268 rtn 
+:      002271 p_gpio_set_input_pd:
+0x058c 002272 set0 gpio_active_bit ,temp 
+0x058d 002273 arg core_gpio_pu0 ,contw 
+0x058e 002274 call gpio_set_bit 
+0x058f 002275 set1 gpio_active_bit ,temp 
+:      002276 p_gpio_set_input_pd4:
+0x0590 002277 arg core_gpio_pd0 ,contw 
+0x0591 002278 branch gpio_set_high_impedance + 4 
+:      002280 p_customer_key_press:
+0x0592 002281 jam 1 ,mem_customer_data_trigger 
+0x0593 002282 call p_customer_key_need_send 
+0x0594 002283 branch p_mouse_check_fwkey_gpio_exit 
+:      002285 p_customer_key_release:
+0x0595 002286 jam 0 ,mem_customer_data_trigger 
+0x0596 002287 fetch 1 ,mem_customer_data_trigger_last 
+0x0597 002288 rtn blank 
+:      002289 p_customer_key_need_send:
+0x0598 002290 jam 1 ,mem_customer_key 
+0x0599 002291 branch enable_user 
+:      002294 p_mouse_select_device_button_gpio_set_suspend:
+0x059a 002295 fetcht 1 ,mem_config_select_device_button_gpio 
+:      002296 p_mouse_set_gpio_suspend:
+0x059b 002297 set0 gpio_active_bit ,temp 
+0x059c 002298 branch p_gpio_set_input_pu1 
+:      002300 p_mouse_cheak_sensor_data:
+0x059d 002301 fetch 1 ,mem_config_sensor_type 
+0x059e 002303 beq p8009 ,p_mouse_p8009_sensor_motion 
+:      002304 p_mouse_p32xx_sensor_motion:
+0x059f 002305 call mouse_clear_sensor_data 
+0x05a0 002306 disable user 
+0x05a1 002307 branch mouse_p32xx_sensor_motion_2 
+:      002312 p_mouse_p8009_sensor_motion:
+0x05a2 002313 call mouse_clear_sensor_data 
+0x05a3 002314 disable user 
+:      002318 p_mouse_p32xx_sensor_motion_1:
+0x05a4 002319 setarg pan_reg_motion_staus 
+0x05a5 002320 call twspi_read 
+0x05a6 002321 rtnbit0 7 
+0x05a7 002322 setarg pan_reg_opration_state 
+0x05a8 002323 call twspi_read 
+0x05a9 002324 branch mouse_p32xx_sensor_motion_1 + 3 ,blank 
+0x05aa 002325 setarg 0 
+0x05ab 002326 store 6 ,mem_mouse_x 
+0x05ac 002327 rtn 
+:      002329 p_mouse_bb_event_discovery_btn:
+0x05ad 002330 call p_mouse_null_enter_hibernate_disable 
+0x05ae 002331 isolate1 mark_24g ,mark 
+0x05af 002332 call p_g24_check_51cmd_stop_24g ,true 
+0x05b0 002333 branch mouse_bb_event_discovery_btn + 1 
+:      002339 p_mouse_start_discovery:
+0x05b1 002340 jam zcode_50 ,mem_zcode_temp_param0 
+0x05b2 002341 branch p_zcode_entrance 
+:      002343 p_mouse_load_random_addr_increase_count:
+0x05b3 002344 call p_flash_release_deep_power_down 
+0x05b4 002345 arg 2 ,temp 
+0x05b5 002346 arg mem_random_addr_increase_count ,rega 
+0x05b6 002347 arg mouse_random_addr_count_eeprom_offset ,regb 
+0x05b7 002348 fetch 3 ,mem_flash_base 
+0x05b8 002349 iadd regb ,pdata 
+0x05b9 002350 branch spid_read_flash 
+:      002352 p_le_adv_data_update:
+0x05ba 002353 arg mem_le_adv_data + 11 ,contw 
+0x05bb 002354 arg 19 ,loopcnt 
+0x05bc 002355 call memcpy 
+0x05bd 002356 branch le_modified_name_adv 
+:      002358 p_mouse_stop_discovery:
+0x05be 002372 call p_mouse_discovey_led_blink_off 
+0x05bf 002373 jam 1 ,mem_mouse_init_sensor_reset_flag 
+0x05c0 002374 call p_mouse_init_sensor_reset 
+0x05c1 002375 branch mouse_stop_discovery + 1 
+:      002378 p_le_slave_match:
+0x05c2 002379 fetch 1 ,mem_le_md_count 
+0x05c3 002380 pincrease 1 
+0x05c4 002381 store 1 ,mem_le_md_count 
+0x05c5 002382 beq le_md_max_count ,le_slave_cont 
+0x05c6 002383 call le_acknowledge 
+0x05c7 002384 call le_prepare_tx 
+0x05c8 002385 call power_ctrl_start 
+0x05c9 002386 branch le_slave_match + 7 
+:      002388 p_le_next_adv_channel:
+0x05ca 002389 fetch 1 ,mem_le_ch_mapped 
+0x05cb 002390 increase 1 ,pdata 
+0x05cc 002391 store 1 ,mem_le_ch_mapped 
+0x05cd 002392 rtnne 40 
+0x05ce 002393 jam 37 ,mem_le_ch_mapped 
+0x05cf 002394 rtn 
+:      002396 p_le_receive_skip:
+0x05d0 002397 call save_rssi 
+0x05d1 002398 call p_rssi_signal 
+0x05d2 002399 branch le_receive_skip + 2 
+:      002401 p_le_update_param:
+0x05d3 002402 jam zcode_40 ,mem_zcode_temp_param0 
+0x05d4 002403 branch p_zcode_entrance 
+:      002405 p_le_update_channel_map:
+0x05d5 002406 jam zcode_41 ,mem_zcode_temp_param0 
+0x05d6 002407 branch p_zcode_entrance 
+:      002409 p_le_prepare_tx:
+0x05d7 002410 fetch 1 ,mem_le_arq 
+0x05d8 002411 bbit1 wak ,p_le_prepare_tx_wak 
+0x05d9 002412 call power_ctrl_pac_succ_incrs 
+0x05da 002413 fetch 1 ,mem_empty_count 
+0x05db 002414 nbranch p_le_send_empyt ,blank 
+0x05dc 002415 fetch 1 ,mem_le_state 
+0x05dd 002416 bbit0 lestate_encryption ,p_le_tx_4 
+0x05de 002417 fetch 1 ,mem_le_rxbuf + 1 
+0x05df 002418 branch p_le_tx_4 ,blank 
+0x05e0 002419 branch le_send_empty 
+:      002420 p_le_send_empyt:
+0x05e1 002421 fetch 1 ,mem_empty_count 
+0x05e2 002422 increase -1 ,pdata 
+0x05e3 002423 store 1 ,mem_empty_count 
+0x05e4 002424 branch le_send_empty 
+:      002425 p_le_tx_4:
+0x05e5 002426 fetch 1 ,mem_le_pairing_state 
+0x05e6 002427 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+0x05e7 002428 jam 3 ,mem_empty_count 
+:      002429 p_in_le_tx_4:
+0x05e8 002430 call le_fifo_check_nearly_full 
+0x05e9 002431 call p_mouse_data_pull ,blank 
+0x05ea 002432 branch le_prepare_tx + 4 
+:      002434 p_le_check_tx_retransmit_setmd:
+0x05eb 002435 fetch 1 ,mem_le_connect_status_flag 
+0x05ec 002436 and pdata ,0x03 ,pdata 
+0x05ed 002437 rtnne 0x03 
+0x05ee 002438 fetch 1 ,mem_mouse_data_queue_num 
+0x05ef 002439 rtn blank 
+0x05f0 002440 fetch 1 ,mem_le_txlen 
+0x05f1 002441 rtn blank 
+0x05f2 002442 fetch 1 ,mem_le_txheader 
+0x05f3 002443 set1 md ,pdata 
+0x05f4 002444 store 1 ,mem_le_txheader 
+0x05f5 002445 call le_set_md 
+0x05f6 002446 rtn 
+:      002448 p_le_prepare_tx_wak:
+0x05f7 002449 call p_le_check_tx_retransmit_setmd 
+:      002450 p_le_power_ctrl_pac_succ_decrs:
+:      002451 power_ctrl_pac_succ_decrs:
+0x05f8 002452 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x05f9 002453 sub pdata ,2 ,null 
+0x05fa 002454 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0x05fb 002455 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x05fc 002456 rtneq 0 
+0x05fd 002457 increase -1 ,pdata 
+0x05fe 002458 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x05ff 002459 rtn 
+:      002461 p_mouse_le_reconn_write_enable_timer_reinit:
+0x0600 002462 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x0601 002463 rtn blank 
+0x0602 002464 fetch 1 ,mem_le_connect_status_flag 
+0x0603 002465 and pdata ,0x03 ,pdata 
+0x0604 002466 rtneq 0x03 
+0x0605 002467 jam 1 ,mem_le_start_encrypt_timer 
+0x0606 002468 rtn 
+:      002470 p_le_parse:
+0x0607 002471 rtnmark1 mark_old_packet 
+0x0608 002472 call le_fifo_check_full 
+0x0609 002473 nrtn blank 
+0x060a 002474 fetch 1 ,mem_le_rxbuf 
+0x060b 002475 and pdata ,0x3 ,pdata 
+0x060c 002476 store 1 ,mem_le_packet_llid 
+0x060d 002477 ifetch 1 ,contr 
+0x060e 002478 and pdata ,0x1f ,pdata 
+0x060f 002479 store 1 ,mem_le_packet_size 
+0x0610 002480 rtn blank 
+0x0611 002481 copy contr ,pdata 
+0x0612 002482 store 2 ,mem_le_payload_ptr 
+0x0613 002483 fetch 1 ,mem_le_packet_llid 
+0x0614 002484 beq llid_le_ll ,p_le_parse_ll 
+0x0615 002485 branch le_parse_l2cap 
+:      002486 p_le_parse_ll:
+0x0616 002487 fetch 1 ,mem_le_rxbuf + 2 
+0x0617 002488 beq ll_connection_update_req ,p_le_parse_connection_update_req 
+0x0618 002489 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+0x0619 002490 branch le_parse_ll + 1 
+:      002491 p_le_parse_connection_update_req:
+0x061a 002492 call le_parse_connection_update_req 
+0x061b 002493 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
+0x061c 002494 rtn blank 
+:      002496 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
+0x061d 002497 fetch 1 ,mem_le_new_connslavelatency 
+0x061e 002498 store 1 ,mem_lpm_mult 
+0x061f 002499 store 1 ,mem_lpm_mult_init 
+0x0620 002500 rtn 
+:      002502 p_le_parse_channel_map_req:
+0x0621 002503 ifetch 5 ,contr 
+0x0622 002504 store 5 ,mem_le_new_map 
+0x0623 002505 ifetch 2 ,contr 
+0x0624 002506 store 2 ,mem_le_instant 
+0x0625 002507 branch le_parse_channel_map_req + 7 
+:      002509 p_le_parse_l2cap:
+0x0626 002510 ifetch 2 ,contr 
+0x0627 002511 beq le_l2cap_cid_att ,p_le_parse_att 
+0x0628 002512 beq le_l2cap_cid_smp ,p_le_parse_smp 
+0x0629 002513 branch le_parse_l2cap + 11 
+:      002514 p_le_parse_att:
+0x062a 002515 call store_contr 
+0x062b 002516 call p_mouse_le_reconn_write_enable_timer_reinit 
+0x062c 002517 call get_contr 
+0x062d 002518 branch le_parse_att 
+:      002521 p_le_parse_smp:
+0x062e 002522 ifetch 1 ,contr 
+0x062f 002523 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0x0630 002524 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0x0631 002525 branch le_parse_smp + 2 
+:      002527 p_le_parse_smp_pairing_request:
+0x0632 002528 jam 1 ,mem_le_send_security_request_flag 
+0x0633 002529 branch le_parse_smp_pairing_request 
+:      002531 p_le_parse_smp_pairing_failed:
+0x0634 002532 jam zcode_82 ,mem_zcode_temp_param0 
+0x0635 002533 branch p_zcode_entrance 
+:      002535 p_le_adv_not_match:
+0x0636 002536 fetch 1 ,mem_le_ch_mapped 
+0x0637 002537 bne 39 ,le_adv_loop 
+0x0638 002538 call p_le_adv_random_delay 
+0x0639 002539 arg le_adv_interval_timer ,queue 
+0x063a 002540 fetch 2 ,mem_le_adv_interval 
+0x063b 002541 branch timer_init 
+:      002542 p_le_adv_random_delay:
+0x063c 002543 random pdata 
+0x063d 002544 arg 0x1ff ,temp 
+0x063e 002545 iand temp ,pdata 
+0x063f 002546 add pdata ,250 ,pdata 
+0x0640 002547 branch delay 
+:      002549 p_le_lpm_setmult:
+0x0641 002550 disable wake 
+0x0642 002551 branch p_le_lpm_set_mult_attempt ,attempt 
+0x0643 002552 nbranch le_lpm_lost ,match 
+:      002553 p_le_lpm_set_mult_attempt:
+0x0644 002554 call lpm_match 
+0x0645 002555 fetch 2 ,mem_rx_window_sniff 
+0x0646 002556 store 2 ,mem_le_receive_window 
+0x0647 002557 fetch 1 ,mem_le_connect_status_flag 
+0x0648 002558 compare 3 ,pdata ,3 
+0x0649 002559 nbranch lpm_mult_short ,true 
+0x064a 002560 branch le_lpm_set_mult_attempt + 3 
+:      002562 p_le_mouse_bb_event_connect_complete:
+0x064b 002563 jam zcode_42 ,mem_zcode_temp_param0 
+0x064c 002564 branch p_zcode_entrance 
+:      002568 p_twspi_reset:
+0x064d 002569 hfetch 1 ,core_gpio_out3 
+0x064e 002570 and_into 0xfd ,pdata 
+0x064f 002571 hstore 1 ,core_gpio_out3 
+0x0650 002572 hfetcht 1 ,core_gpio_oe3 
+0x0651 002573 or_into 0x2 ,temp 
+0x0652 002574 hstoret 1 ,core_gpio_oe3 
+0x0653 002575 call twspi_disable 
+0x0654 002576 and_into 0xfd ,temp 
+0x0655 002577 nop 13 
+0x0656 002578 call p_twspi_enable 
+0x0657 002579 hstoret 1 ,core_gpio_oe3 
+0x0658 002580 rtn 
+:      002582 p_spid_init:
+0x0659 002583 call spid_init_common 
+:      002584 p_twspi_enable:
+0x065a 002585 hfetch 1 ,core_gpio_sel1 
+0x065b 002586 set1 0 ,pdata 
+0x065c 002587 set0 1 ,pdata 
+0x065d 002588 set0 3 ,pdata 
+0x065e 002589 hstore 1 ,core_gpio_sel1 
+0x065f 002590 rtn 
+:      002594 p_mouse_bt_sdp_set:
+0x0660 002595 setarg mem_mouse_uuid_list 
+0x0661 002596 store 2 ,mem_ui_uuid_table 
+0x0662 002597 rtn 
+:      002599 p_page_wait_fhs_reply_ok:
+0x0663 002600 jam zcode_00 ,mem_zcode_temp_param0 
+0x0664 002601 branch p_zcode_entrance 
+:      002603 p_role_switch_master:
+0x0665 002604 call role_switch_check 
+0x0666 002605 nrtn user 
+:      002606 p_wait_role_switch_anchor:
+0x0667 002607 disable user 
+0x0668 002608 jam param_newconnto ,mem_newconnto_counter 
+0x0669 002609 set0 mark_fhs_already_good ,mark 
+0x066a 002610 set0 mark_role_switch_receive_fhs ,mark 
+:      002611 p_roles_waitfhs_loop:
+0x066b 002612 call rf_setup_time_master_slot 
+0x066c 002613 call master_recv_packet 
+0x066d 002614 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+0x066e 002615 call new_conn_timeout 
+0x066f 002616 nbranch p_roles_waitfhs_loop ,blank 
+0x0670 002617 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0x0671 002618 branch role_switch_fail_master 
+:      002620 p_roles_replyto_fhs:
+0x0672 002621 call rf_setup_time_slave_slot 
+0x0673 002622 arg type_id ,type 
+0x0674 002623 call master_send_packet 
+0x0675 002624 set1 mark_role_switch_receive_fhs ,mark 
+0x0676 002625 set0 mark_fhs_already_good ,mark 
+0x0677 002626 fetch 1 ,mem_amaddr 
+0x0678 002627 iforce am_addr 
+0x0679 002628 jam 2 ,mem_newconnto_counter 
+0x067a 002629 branch p_roles_waitfhs_loop 
+:      002631 p_roles_replyto_fhs1:
+0x067b 002632 fetch 4 ,mem_clke_bt 
+0x067c 002633 pincrease 8 
+0x067d 002634 store 4 ,mem_clke_bt 
+0x067e 002635 branch roles_replyto_fhs + 4 
+:      002637 p_process_dmh:
+0x067f 002638 bmark1 mark_first_packet ,end_of_packet 
+0x0680 002639 branch process_dmh + 1 
+:      002641 p_quit_connection_cont:
+0x0681 002642 jam zcode_43 ,mem_zcode_temp_param0 
+0x0682 002643 branch p_zcode_entrance 
+:      002645 p_prepare_tx:
+0x0683 002646 fetch 1 ,mem_state 
+0x0684 002647 isolate1 state_inconn ,pdata 
+0x0685 002648 call p_bt_power_ctrl ,true 
+0x0686 002649 branch prepare_tx + 1 
+:      002650 p_bt_power_ctrl:
+0x0687 002651 fetch 1 ,mem_arq 
+0x0688 002652 isolate1 wack ,pdata 
+0x0689 002653 call power_ctrl_pac_succ_decrs ,true 
+0x068a 002654 ncall power_ctrl_pac_succ_incrs ,true 
+0x068b 002655 branch power_ctrl_start 
+:      002657 p_slave_conn_recv_packet:
+0x068c 002658 call slave_receive_master_slot 
+0x068d 002659 nbranch shutdown_radio ,sync 
+0x068e 002660 call save_rssi 
+0x068f 002661 call p_rssi_signal 
+0x0690 002662 branch slave_conn_recv_packet + 4 
+:      002664 p_lpm_dispatch:
+0x0691 002665 rtnmark1 mark_24g 
+0x0692 002666 call lpo_calibration 
+0x0693 002667 fetch 3 ,mem_clks_per_lpo 
+0x0694 002668 rtn blank 
+0x0695 002669 fetch 1 ,mem_lpm_mode 
+0x0696 002670 rtn blank 
+0x0697 002671 fetch 1 ,mem_ssp_enable 
+0x0698 002672 branch p_lpm_dispatch_next ,blank 
+0x0699 002673 fetch 1 ,mem_sp_local_key_invalid 
+0x069a 002674 rtn blank 
+:      002675 p_lpm_dispatch_next:
+0x069b 002676 fetch 1 ,mem_le_sc_calc 
+0x069c 002677 nrtn blank 
+0x069d 002678 call lpm_check_wake_lock 
+0x069e 002679 nrtn blank 
+0x069f 002680 fetch 1 ,mem_context 
+0x06a0 002681 compare 3 ,pdata ,0x7 
+0x06a1 002682 nbranch lpm_dispatch_unconn ,true 
+0x06a2 002683 fetch 2 ,mem_context + coffset_tsniff 
+0x06a3 002684 arg 0xffff ,temp 
+0x06a4 002685 isub temp ,null 
+0x06a5 002686 rtn zero 
+0x06a6 002687 branch lpm_dispatch_next + 9 
+:      002689 p_lpm_set_mult:
+0x06a7 002690 disable wake 
+0x06a8 002691 fetch 1 ,mem_state 
+0x06a9 002692 rtnbit0 state_insniff 
+0x06aa 002693 nbranch lpm_not_match ,match 
+0x06ab 002694 call lpm_match 
+0x06ac 002695 fetch 2 ,mem_rx_window_sniff 
+0x06ad 002696 store 2 ,mem_rx_window 
+0x06ae 002697 fetch 1 ,mem_arq 
+0x06af 002698 bbit1 wack ,lpm_mult_short 
+0x06b0 002699 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x06b1 002700 call l2cap_malloc_is_fifo_empty 
+0x06b2 002701 nbranch lpm_mult_short ,blank 
+0x06b3 002702 call p_lpm_set_attemp_timeout ,blank 
+0x06b4 002703 branch lpm_set_mult + 13 
+:      002704 p_lpm_set_attemp_timeout:
+0x06b5 002705 jam 1 ,mem_current_sniff_attempt 
+0x06b6 002706 jam 0 ,mem_current_sniff_timeout 
+0x06b7 002707 rtn 
+:      002709 p_mouse_bb_disconnected:
+0x06b8 002710 jam zcode_10 ,mem_zcode_temp_param0 
+0x06b9 002711 branch p_zcode_entrance 
+:      002713 p_hid_rx_process:
+0x06ba 002714 jam zcode_11 ,mem_zcode_temp_param0 
+0x06bb 002715 branch p_zcode_entrance 
+:      002717 p_parse_lmp_accepted:
+0x06bc 002718 fetch 1 ,mem_rxbuf + 1 
+0x06bd 002719 store 1 ,mem_lmi_accepted_opcode 
+0x06be 002720 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+0x06bf 002721 branch parse_lmp_accepted + 3 
+:      002722 p_parse_lmp_accepted_switch:
+0x06c0 002723 call parse_lmp_accepted_switch 
+0x06c1 002724 jam 1 ,mem_bt_rcvd_switch_req_accept 
+0x06c2 002725 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x06c3 002726 rtn blank 
+0x06c4 002727 jam 2 ,mem_bt_send_lmp_setup_complete 
+0x06c5 002728 rtn 
+:      002730 p_send_lmp:
+0x06c6 002731 disable user 
+0x06c7 002732 call lmo_fifo_process 
+0x06c8 002735 fetch 1 ,mem_lmp_to_send 
+0x06c9 002736 rtn blank 
+0x06ca 002737 bbit1 7 ,p_send_lmp_escape 
+0x06cb 002738 beq lmp_accepted ,p_send_lmp_accepted 
+0x06cc 002739 beq lmp_setup_complete ,p_send_lmp_setup_complete 
+0x06cd 002740 beq lmp_sniff_req ,p_send_lmp_sniff_req 
+0x06ce 002741 branch send_lmp0 
+:      002743 p_send_lmp_escape:
+0x06cf 002744 jam zcode_20 ,mem_zcode_temp_param0 
+0x06d0 002745 branch p_zcode_entrance 
+:      002747 p_send_lmp_accepted:
+0x06d1 002748 jam zcode_21 ,mem_zcode_temp_param0 
+0x06d2 002749 branch p_zcode_entrance 
+:      002751 p_send_lmp_setup_complete:
+0x06d3 002752 jam 1 ,mem_bt_send_lmp_setup_complete 
+0x06d4 002753 branch send_lmp_setup_complete 
+:      002755 p_send_lmp_sniff_req:
+0x06d5 002756 jam 4 ,mem_mouse_bt_send_first_package_timer 
+0x06d6 002757 branch send_lmp_sniff_req 
+:      002759 p_process_conn_sm:
+0x06d7 002760 call lmo_fifo_check 
+0x06d8 002761 nrtn blank 
+:      002762 p_process_conn_sm_continue:
+0x06d9 002763 fetch 1 ,mem_conn_sm 
+0x06da 002764 rtn blank 
+0x06db 002765 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+0x06dc 002766 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+0x06dd 002767 branch process_conn_sm_continue + 2 
+:      002769 p_host_creat_conn_wait_switch:
+0x06de 002770 fetch 1 ,mem_switch_flag 
+0x06df 002771 rtneq switch_flag_init 
+0x06e0 002772 beq switch_flag_accept ,p_host_create_conn_switch_accept 
+0x06e1 002773 branch host_creat_conn_wait_switch + 3 
+:      002774 p_host_create_conn_switch_accept:
+0x06e2 002775 rtn master 
+:      002776 p_host_create_conn_auth_pair:
+0x06e3 002778 fetch 1 ,mem_connection_options 
+0x06e4 002779 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+0x06e5 002780 branch host_create_conn_auth_pair + 1 
+:      002781 p_host_create_conn_auth_pair_true:
+0x06e6 002782 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x06e7 002783 beq 1 ,host_create_conn_auth_pair_true 
+0x06e8 002785 fetch 1 ,mem_link_key_exists 
+0x06e9 002786 branch host_create_conn_auth_pair_nokey ,blank 
+0x06ea 002787 fetch 1 ,mem_lmp_conn_state 
+0x06eb 002788 rtnbit0 sent_setup_complete 
+0x06ec 002789 rtnbit0 received_setup_complete 
+0x06ed 002790 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06ee 002791 rtn blank 
+0x06ef 002792 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06f0 002793 fetch 4 ,mem_aurand_send_delay_time 
+0x06f1 002794 arg 20 ,temp 
+0x06f2 002795 iadd temp ,temp 
+0x06f3 002796 copy clkn_bt ,pdata 
+0x06f4 002797 isub temp ,null 
+0x06f5 002798 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+0x06f6 002799 branch host_create_conn_auth 
+:      002801 p_bt_send_max_slot_req_accept_after_switch_wait:
+0x06f7 002802 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06f8 002803 rtn 
+:      002805 p_host_create_conn_send_conn_req:
+0x06f9 002806 jam 20 ,mem_mouse_send_switch_req_timer 
+0x06fa 002807 branch host_create_conn_send_conn_req 
+:      002813 p_check_51cmd_once_continue:
+0x06fb 002814 call lmo_fifo_check 
+0x06fc 002815 nbranch check_51cmd_restore ,blank 
+0x06fd 002816 fetch 1 ,mem_fifo_temp 
+0x06fe 002817 bmark0 mark_context ,check_51cmd_check_idle 
+0x06ff 002818 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+0x0700 002819 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+0x0701 002820 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0x0702 002821 branch check_51cmd_once_continue + 2 
+:      002823 p_flash_store_le_reconn_info:
+0x0703 002824 jam rec_4_mode ,mem_record_bt_mode 
+0x0704 002825 fetch 6 ,mem_le_plap 
+0x0705 002826 branch p_flash_store_reconn_info 
+:      002827 p_flash_store_bd_reconn_info:
+0x0706 002828 jam rec_3_mode ,mem_record_bt_mode 
+0x0707 002829 fetch 6 ,mem_plap 
+:      002830 p_flash_store_reconn_info:
+0x0708 002831 store 6 ,mem_temp_lap 
+:      002832 p_mouse_store_remote_bdaddr:
+0x0709 002833 fetch mouse_flag_len ,mem_mouse_flag 
+0x070a 002834 rtnbit0 mouse_store_eeprom_flag 
+0x070b 002835 arg mouse_store_eeprom_flag ,queue 
+0x070c 002836 call mouse_disable_function_flag 
+0x070d 002837 call mouse_check_device_addr 
+:      002838 p_mouse_unplug_clean_bdaddr:
+0x070e 002839 call mouse_before_store_reconn_info 
+0x070f 002840 branch p_mouse_store_flash_device_info 
+:      002842 p_check_51cmd_ble_update_connect_param:
+0x0710 002843 call le_fifo_check_full 
+0x0711 002844 nrtn blank 
+0x0712 002845 branch le_l2cap_tx_update_req 
+:      002847 power_ctrl_pac_succ_cnt_init:
+0x0713 002848 jam 1 ,mem_power_ctrl_level 
+0x0714 002849 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0x0715 002850 rtn 
+:      002851 power_ctrl_pac_succ_incrs:
+0x0716 002852 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0717 002853 increase 1 ,pdata 
+0x0718 002854 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0719 002855 rtn 
+:      002857 power_ctrl_pac_succ_cnt_reinit:
+0x071a 002858 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0x071b 002859 rtn 
+:      002861 power_ctrl_start:
+0x071c 002862 fetch 2 ,mem_ui_state_map 
+0x071d 002863 rtnbit1 ui_state_ble_adv 
+0x071e 002864 rtnbit1 ui_state_bt_reconnect 
+0x071f 002865 rtnbit1 ui_state_bt_discovery 
+0x0720 002867 arg mem_rssi_signal_buf ,rega 
+0x0721 002868 call p_rssi_average 
+0x0722 002869 storet 1 ,mem_rssi_avg_received 
+0x0723 002871 setarg rssi_dis_max_24g 
+0x0724 002872 bmark1 mark_24g ,power_ctrl_start_next 
+0x0725 002873 setarg rssi_dis_max_ble 
+:      002874 power_ctrl_start_next:
+0x0726 002875 isub temp ,null 
+0x0727 002876 nbranch power_ctrl_txpower_incrs_force ,positive 
+0x0728 002878 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0729 002879 sub pdata ,2 ,null 
+0x072a 002880 nbranch power_ctrl_txpower_decrs_check ,positive 
+0x072b 002881 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x072c 002882 beq 0 ,power_ctrl_txpower_incrs 
+0x072d 002883 rtn 
+:      002885 power_ctrl_txpower_decrs_check:
+0x072e 002886 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x072f 002887 rtnne 50 
+0x0730 002888 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      002889 power_ctrl_txpower_decrs:
+0x0731 002890 fetcht 1 ,mem_rssi_avg_received 
+0x0732 002891 setarg rssi_dis_min_24g 
+0x0733 002892 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0x0734 002893 setarg rssi_dis_min_ble 
+:      002894 power_ctrl_txpower_decrs_next:
+0x0735 002895 isub temp ,null 
+0x0736 002896 nrtn positive 
+0x0737 002897 fetch 1 ,mem_power_ctrl_level 
+0x0738 002898 beq 0 ,power_ctrl_decrs_level0 
+0x0739 002899 increase -1 ,pdata 
+0x073a 002900 store 1 ,mem_power_ctrl_level 
+0x073b 002901 beq 0 ,power_ctrl_decrs_level0 
+:      002902 power_ctrl_decrs_level1:
+:      002903 power_ctrl_incrs_level1:
+0x073c 002904 jam tx_power_0db ,mem_tx_power 
+0x073d 002905 rtn 
+:      002907 power_ctrl_txpower_incrs_force:
+0x073e 002908 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      002909 power_ctrl_txpower_incrs:
+0x073f 002910 fetch 1 ,mem_power_ctrl_level 
+0x0740 002911 beq 2 ,power_ctrl_incrs_level2 
+0x0741 002912 increase 1 ,pdata 
+0x0742 002913 store 1 ,mem_power_ctrl_level 
+0x0743 002914 beq 1 ,power_ctrl_incrs_level1 
+:      002915 power_ctrl_incrs_level2:
+0x0744 002916 jam tx_power_5db ,mem_tx_power 
+0x0745 002917 rtn 
+:      002919 power_ctrl_decrs_level0:
+0x0746 002920 jam tx_power_f5db ,mem_tx_power 
+0x0747 002921 rtn 
+:      002924 p_set_freq_tx:
+0x0748 002925 storet 1 ,mem_last_freq 
+0x0749 002926 add temp ,0 ,rega 
+0x074a 002927 call rf_write_freq 
+0x074b 002928 setarg param_pll_setup 
+0x074c 002929 call sleep 
+:      002930 p_rf_tx_enable:
+0x074d 002931 jam 0x1 ,rfen_adc 
+0x074e 002932 jam 0x3c ,rfen_rx 
+0x074f 002933 jam 0xe0 ,rfen_tx 
+0x0750 002934 nop 10 
+0x0751 002935 jam 0x01 ,rfen_mdm 
+0x0752 002936 jam 0x3d ,rfen_mdm 
+0x0753 002937 nop 10 
+0x0754 002938 jam 0xb7 ,rfen_sn 
+0x0755 002939 nop 10 
+0x0756 002940 jam 0x7d ,rfen_mdm 
+0x0757 002941 fetch 1 ,mem_tx_power 
+0x0758 002944 beq tx_power_5db ,p_set_tx_power_5db 
+0x0759 002946 beq tx_power_f5db ,p_set_tx_power_f5db 
+0x075a 002947 beq tx_power_pair ,p_set_tx_power_pair 
+:      002949 p_set_tx_power_0db:
+0x075b 002950 call p_rx_low_sens 
+0x075c 002952 jam 0xd0 ,0x8955 
+0x075d 002953 jam 0xe0 ,0x8956 
+0x075e 002955 jam 0x6c ,0x8958 
+0x075f 002957 branch set_tx_power_0db 
+:      002969 p_set_tx_power_5db:
+:      002970 p_rx_high_sens:
+0x0760 002971 jam 0xfb ,0x894c 
+0x0761 002972 jam 0xef ,0x894d 
+0x0762 002973 jam 0xec ,0x894e 
+0x0763 002974 jam 0x5e ,0x894f 
+0x0764 002977 jam 0xd0 ,0x8955 
+0x0765 002978 jam 0xe0 ,0x8956 
+0x0766 002980 jam 0x3c ,0x8958 
+0x0767 002982 branch set_tx_power_5db 
+:      002994 p_set_tx_power_f5db:
+0x0768 002995 call p_rx_low_sens 
+0x0769 002997 jam 0xd0 ,0x8955 
+0x076a 002998 jam 0xc0 ,0x8956 
+0x076b 003000 jam 0x6c ,0x8958 
+0x076c 003002 branch set_tx_power_f5db 
+:      003004 p_rx_low_sens:
+0x076d 003005 jam 0x5b ,0x894c 
+0x076e 003006 jam 0x96 ,0x894d 
+0x076f 003007 jam 0x2c ,0x894e 
+0x0770 003008 jam 0x46 ,0x894f 
+0x0771 003009 rtn 
+:      003011 p_set_tx_power_pair:
+0x0772 003013 jam 0xc2 ,0x8956 
+0x0773 003014 jam 0xd0 ,0x8955 
+0x0774 003015 rtn 
+:      003017 p_shutdown_radio:
+0x0775 003018 force 8 ,radio_ctrl 
+0x0776 003019 branch shutdown_radio + 1 
+:      003021 p_initialize_radio_cont:
+0x0777 003022 call initialize_radio_cont + 1 
+0x0778 003023 jam clksel_dpll ,core_clksel 
+0x0779 003024 rtn 
+:      003028 p_zcode_entrance:
+0x077a 003029 fetcht 1 ,mem_zcode_temp_param0 
+0x077b 003030 rshift4 temp ,temp 
+0x077c 003031 fetch 1 ,mem_zcode_current_number 
+0x077d 003032 isub temp ,null 
+0x077e 003033 branch p_zcode_run ,zero 
+0x077f 003034 storet 1 ,mem_zcode_current_number 
+0x0780 003035 increase 1 ,temp 
+0x0781 003036 setarg zcode_buff_size 
+0x0782 003037 imul32 temp ,temp 
+0x0783 003038 fetch 3 ,mem_xip_flash_offset 
+0x0784 003039 isub temp ,pdata 
+0x0785 003041 fetcht 3 ,mem_flash_start_addr 
+0x0786 003042 iadd temp ,pdata 
+0x0787 003043 increase -5 ,pdata 
+0x0788 003044 store 3 ,mem_flash_address 
+0x0789 003046 call p_flash_release_deep_power_down 
+:      003047 p_zcode_read_loop:
+0x078a 003048 fetch 3 ,mem_flash_address 
+0x078b 003049 arg zcode_buff_size ,temp 
+0x078c 003050 arg mem_zcode_buff ,rega 
+0x078d 003051 call spid_read_flash 
+0x078e 003052 fetch 4 ,mem_zcode_buff 
+0x078f 003053 fetcht 4 ,mem_zcode_head 
+0x0790 003054 isub temp ,null 
+0x0791 003055 nbranch p_zcode_read_loop ,zero 
+0x0792 003056 call p_mouse_spi_init 
+0x0793 003058 setarg mem_zcode_buff 
+0x0794 003059 store 2 ,mem_patch_ptr 
+0x0795 003060 jam zcode_code_size ,mem_patch_len 
+0x0796 003061 call load_ucode 
+0x0797 003062 setarg 0 
+0x0798 003063 store 4 ,mem_patch_ptr 
+:      003064 p_zcode_run:
+0x0799 003065 fetch 1 ,mem_zcode_temp_param0 
+0x079a 003066 branch p_zcode 
+:      003073 p_drawing_optima:
+0x079b 003074 fetch 4 ,mem_mouse_x 
+0x079c 003075 rtn blank 
+0x079d 003076 call p_data_abs_check 
+0x079e 003077 setarg 0x03 
+0x079f 003078 call p_pdata_greater_than_check 
+0x07a0 003079 setarg 0x02 
+0x07a1 003080 call p_data_less_than_check 
+0x07a2 003081 fetch 1 ,mem_mouse_asm_flag 
+0x07a3 003082 beq 1 ,p_drawing_optima_modify 
+:      003083 p_drawing_optima_init:
+0x07a4 003084 arg 5 ,loopcnt 
+0x07a5 003085 arg mem_mouse_asm_flag ,contw 
+0x07a6 003086 branch clear_mem 
+:      003088 p_drawing_optima_modify:
+0x07a7 003090 fetch 2 ,mem_mouse_x_pre 
+0x07a8 003091 store 2 ,mem_data_pre 
+0x07a9 003092 fetch 2 ,mem_mouse_x 
+0x07aa 003093 store 2 ,mem_data_current 
+0x07ab 003094 call p_drawing_optima_data 
+0x07ac 003095 fetch 2 ,mem_data_pre 
+0x07ad 003096 store 2 ,mem_mouse_x_pre 
+0x07ae 003097 fetch 2 ,mem_data_current 
+0x07af 003098 store 2 ,mem_mouse_x 
+0x07b0 003100 fetch 2 ,mem_mouse_y_pre 
+0x07b1 003101 store 2 ,mem_data_pre 
+0x07b2 003102 fetch 2 ,mem_mouse_y 
+0x07b3 003103 store 2 ,mem_data_current 
+0x07b4 003104 call p_drawing_optima_data 
+0x07b5 003105 fetch 2 ,mem_data_pre 
+0x07b6 003106 store 2 ,mem_mouse_y_pre 
+0x07b7 003107 fetch 2 ,mem_data_current 
+0x07b8 003108 store 2 ,mem_mouse_y 
+0x07b9 003109 rtn 
+:      003117 p_drawing_optima_data:
+0x07ba 003118 fetch 2 ,mem_data_pre 
+0x07bb 003119 fetcht 2 ,mem_data_current 
+0x07bc 003120 iadd temp ,pdata 
+0x07bd 003121 store 3 ,mem_data_sum 
+0x07be 003122 isolate1 16 ,pdata 
+0x07bf 003123 branch p_data_sum_overflow ,true 
+0x07c0 003124 fetch 1 ,mem_data_sum + 1 
+0x07c1 003125 beq 0xff ,p_data_sum_n 
+0x07c2 003126 fetch 1 ,mem_data_sum 
+:      003127 p_data_store_pre:
+0x07c3 003128 rshift pdata ,pdata 
+0x07c4 003129 store 2 ,mem_data_pre 
+0x07c5 003130 store 2 ,mem_data_current 
+0x07c6 003131 rtn 
+:      003132 p_data_sum_overflow:
+0x07c7 003133 fetch 1 ,mem_data_sum + 1 
+0x07c8 003134 beq 0 ,p_data_sum_overflow_p 
+0x07c9 003135 fetch 3 ,mem_data_sum 
+0x07ca 003136 branch p_data_store_pre 
+:      003137 p_data_sum_overflow_p:
+0x07cb 003138 jam 0 ,mem_data_sum + 2 
+0x07cc 003139 fetch 1 ,mem_data_sum 
+0x07cd 003140 branch p_data_store_pre 
+:      003142 p_data_sum_n:
+0x07ce 003143 fetch 1 ,mem_data_sum 
+0x07cf 003144 call p_pdata_get_half 
+0x07d0 003145 store 1 ,mem_data_pre 
+0x07d1 003146 store 1 ,mem_data_current 
+0x07d2 003147 branch p_data_zero ,blank 
+0x07d3 003148 setarg 0xff 
+:      003149 p_data_set_direction:
+0x07d4 003150 store 1 ,mem_data_pre + 1 
+0x07d5 003151 store 1 ,mem_data_current + 1 
+0x07d6 003152 rtn 
+:      003153 p_data_zero:
+0x07d7 003154 setarg 0 
+0x07d8 003155 branch p_data_set_direction 
+:      003157 p_pdata_get_half:
+0x07d9 003158 call p_pdata_invert 
+0x07da 003159 rshift pdata ,pdata 
+:      003160 p_pdata_get_new_value:
+0x07db 003161 call p_rega_in_out 
+0x07dc 003162 sub pdata ,0 ,pdata 
+0x07dd 003163 store 1 ,mem_data_value 
+0x07de 003164 rtn 
+:      003166 p_pdata_invert:
+0x07df 003167 sub pdata ,0 ,pdata 
+:      003168 p_rega_in_out:
+0x07e0 003169 store 1 ,mem_rega 
+0x07e1 003170 fetch 1 ,mem_rega 
+0x07e2 003171 rtn 
+:      003174 p_pdata_greater_than_check:
+0x07e3 003175 isub rega ,null 
+0x07e4 003176 nbranch p_enable_asm ,positive 
+0x07e5 003177 isub regb ,null 
+0x07e6 003178 nbranch p_enable_asm ,positive 
+:      003179 p_disable_asm:
+0x07e7 003180 jam 0 ,mem_mouse_asm_flag 
+0x07e8 003181 rtn 
+:      003182 p_data_less_than_check:
+0x07e9 003183 isub rega ,null 
+0x07ea 003184 nrtn positive 
+0x07eb 003185 isub regb ,null 
+0x07ec 003186 nrtn positive 
+0x07ed 003187 branch p_disable_asm 
+:      003188 p_enable_asm:
+0x07ee 003189 jam 1 ,mem_mouse_asm_flag 
+0x07ef 003190 rtn 
+:      003192 p_data_abs_check:
+0x07f0 003193 fetch 2 ,mem_mouse_x 
+0x07f1 003194 call p_data_abs 
+0x07f2 003195 copy pdata ,rega 
+0x07f3 003196 fetch 2 ,mem_mouse_y 
+0x07f4 003197 call p_data_abs 
+0x07f5 003198 copy pdata ,regb 
+0x07f6 003199 rtn 
+:      003205 p_data_abs:
+0x07f7 003206 store 2 ,mem_data_current 
+0x07f8 003207 fetch 1 ,mem_data_current + 1 
+0x07f9 003208 beq 0xff ,p_data_reversal 
+0x07fa 003209 fetch 1 ,mem_data_current 
+:      003210 p_data_abs_store:
+0x07fb 003211 and_into 0xff ,pdata 
+0x07fc 003213 rtn 
+:      003214 p_data_reversal:
+0x07fd 003215 fetch 2 ,mem_data_current 
+0x07fe 003216 sub pdata ,0 ,pdata 
+0x07ff 003217 branch p_data_abs_store 
+              org 0x2000
+:      003228 start:
+0x2000 003229 call lpmstate 
+:      003231 soft_reset:
+0x2001 003232 bpatch patch00_0 ,mem_patch00 
+0x2002 003233 clear_stack 
+0x2003 003234 call spi_ncs_gpio_init 
+0x2004 003235 call initialize_radio 
+0x2005 003236 call iicd_init_12m 
+0x2006 003237 call init_param 
+0x2007 003238 call l2cap_init 
+0x2008 003239 bpatch patch00_1 ,mem_patch00 
+0x2009 003240 call rfcomm_init 
+0x200a 003241 call init_lmp 
+0x200b 003242 call ui_init 
+0x200c 003243 call app_init 
+0x200d 003244 ncall load_chip_option ,wake 
+0x200e 003245 bpatch patch00_2 ,mem_patch00 
+0x200f 003246 call app_lpm_init ,wake 
+0x2010 003247 call publickey_init 
+0x2011 003248 call lpm_recover_clk ,wake 
+:      003249 main_loop:
+0x2012 003250 bpatch patch00_3 ,mem_patch00 
+0x2013 003251 call sp_calc_sequence 
+0x2014 003252 call sp_calc_sequence_256 
+0x2015 003253 call sp_calc_sequence_256_check 
+0x2016 003254 call le_dispatch 
+0x2017 003255 bpatch patch00_4 ,mem_patch00 
+0x2018 003256 call idle_dispatch 
+0x2019 003257 call app_process_idle 
+0x201a 003258 call inquiry_dispatch 
+0x201b 003259 call inquiry_scan_dispatch 
+0x201c 003260 call page_scan_dispatch 
+0x201d 003261 call connection_dispatch 
+0x201e 003262 call lpm_dispatch 
+0x201f 003263 call g24_dispatch 
+0x2020 003264 branch main_loop 
+:      003266 connection_dispatch:
+0x2021 003267 call connection_incontext 
+0x2022 003268 rtnmark0 mark_context 
+0x2023 003269 set0 mark_context ,mark 
+0x2024 003270 call context_save 
+0x2025 003271 branch le_disable 
+:      003273 connection_incontext:
+0x2026 003274 bpatch patch00_5 ,mem_patch00 
+0x2027 003275 call context_search_insniff 
+0x2028 003276 nbranch connection_nosniff ,zero 
+0x2029 003277 call context_load 
+0x202a 003278 add rega ,coffset_mode ,contr 
+0x202b 003279 ifetch 1 ,contr 
+0x202c 003280 bbit1 mode_le ,le_conn_dispatch 
+0x202d 003281 bbit1 mode_master ,master_dispatch 
+0x202e 003282 branch slave_dispatch 
+:      003283 connection_nosniff:
+0x202f 003284 call context_get_next 
+0x2030 003285 copy loopcnt ,null 
+0x2031 003286 rtn zero 
+0x2032 003287 call context_load 
+0x2033 003288 fetch 1 ,mem_state 
+0x2034 003289 bbit1 state_inpage ,master_page 
+0x2035 003290 fetch 1 ,mem_mode 
+0x2036 003291 bbit1 mode_master ,master_dispatch 
+0x2037 003292 branch slave_dispatch 
+:      003300 idle_dispatch:
+0x2038 003301 fetch 1 ,mem_hci_cmd 
+0x2039 003302 rtn blank 
+0x203a 003303 beq hci_cmd_inquiry ,idle_inquiry 
+0x203b 003304 beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
+0x203c 003305 beq hci_cmd_remote_name_req ,idle_remote_name_req 
+0x203d 003306 beq hci_cmd_create_conn ,idle_create_conn 
+0x203e 003307 beq hci_cmd_le_create_conn ,idle_le_create_conn 
+0x203f 003308 call context_search_conn_handle 
+0x2040 003309 rtn zero 
+0x2041 003310 call context_search_plap 
+0x2042 003311 rtn zero 
+:      003312 idle_exit:
+0x2043 003313 jam 0 ,mem_hci_cmd 
+0x2044 003314 rtn 
+:      003316 idle_le_create_conn:
+0x2045 003317 jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
+0x2046 003318 jam 0 ,mem_hci_cmd 
+0x2047 003319 rtn 
+:      003321 idle_inquiry:
+0x2048 003322 set1 mark_inquiry_on ,mark 
+0x2049 003323 set0 mark_inquiry_trainb ,mark 
+0x204a 003324 jam param_ninquiry ,mem_ninqy_index 
+0x204b 003325 jam 31 ,mem_nfreq_index_inq 
+0x204c 003326 branch idle_exit 
+:      003328 idle_inquiry_cancel:
+0x204d 003329 set0 mark_inquiry_on ,mark 
+0x204e 003330 force 0 ,stop_watch 
+0x204f 003331 branch idle_exit 
+:      003333 idle_remote_name_req:
+0x2050 003334 call context_search_plap 
+0x2051 003335 rtn zero 
+0x2052 003336 force lmp_name_req ,temp 
+0x2053 003337 jam 5 ,mem_nameres_cnt 
+0x2054 003338 branch idle_start_page 
+:      003340 idle_create_conn:
+0x2055 003341 bpatch patch00_6 ,mem_patch00 
+:      003342 idle_create_conn_device:
+0x2056 003343 fetch 6 ,mem_hci_plap 
+0x2057 003344 branch idle_exit ,blank 
+0x2058 003345 jam reconnect_hid ,memui_reconnect_mode 
+0x2059 003347 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x205a 003348 branch idle_create_conn_cont 
+:      003350 idle_create_conn_cont:
+0x205b 003351 force lmp_version_req ,temp 
+:      003352 idle_start_page:
+0x205c 003353 bpatch patch00_7 ,mem_patch00 
+0x205d 003354 fetch 1 ,mem_page_mode 
+0x205e 003355 branch idle_page_mode_r0 ,blank 
+0x205f 003356 lshift3 pdata ,pdata 
+0x2060 003357 lshift4 pdata ,pdata 
+0x2061 003358 increase -1 ,pdata 
+:      003359 idle_page_mode_r0:
+0x2062 003360 store 1 ,mem_npage 
+0x2063 003361 store 1 ,mem_npage_index 
+0x2064 003362 jam 31 ,mem_nfreq_index_page 
+0x2065 003363 set0 mark_page_trainb ,mark 
+0x2066 003364 call context_new 
+0x2067 003365 nbranch idle_page_fail ,zero 
+0x2068 003366 call get_free_amaddr 
+0x2069 003367 store 1 ,mem_amaddr 
+0x206a 003368 storet 1 ,mem_lmo_opcode2 
+0x206b 003369 fetch 6 ,mem_hci_plap 
+0x206c 003370 store 6 ,mem_plap 
+0x206d 003371 bpatch patch01_0 ,mem_patch01 
+0x206e 003372 call timer_reinit 
+0x206f 003373 force 0 ,pdata 
+0x2070 003374 compare lmp_name_req ,temp ,0xff 
+0x2071 003375 nsetflag true ,state_init_seq ,pdata 
+0x2072 003376 set1 state_inpage ,pdata 
+0x2073 003377 store 1 ,mem_state 
+0x2074 003378 jam bt_evt_reconn_started ,mem_fifo_temp 
+0x2075 003379 call ui_ipc_send_event 
+0x2076 003380 force 0 ,pdata 
+0x2077 003381 setflag true ,smap_name_req ,pdata 
+0x2078 003382 store 1 ,mem_state_map 
+0x2079 003383 setarg 0 
+0x207a 003384 set1 mode_master ,pdata 
+0x207b 003385 store 1 ,mem_mode 
+0x207c 003386 enable master 
+0x207d 003387 call context_save 
+0x207e 003388 disable master 
+0x207f 003389 force page_length_timer ,queue 
+0x2080 003390 fetch 2 ,mem_page_to 
+0x2081 003391 call timer_init 
+0x2082 003392 branch idle_exit 
+:      003393 idle_page_fail:
+0x2083 003394 bpatch patch01_1 ,mem_patch01 
+0x2084 003395 fetch 6 ,mem_hci_plap 
+0x2085 003396 store 6 ,mem_plap 
+0x2086 003397 compare lmp_name_req ,temp ,0xff 
+0x2087 003398 branch idle_name_fail ,true 
+0x2088 003399 branch idle_exit 
+:      003400 idle_name_fail:
+0x2089 003401 arg mem_tmp_buffer ,contw 
+0x208a 003402 arg 8 ,loopcnt 
+0x208b 003403 call memset0 
+0x208c 003404 jam bt_evt_reconn_failed ,mem_fifo_temp 
+0x208d 003405 call ui_ipc_send_event 
+0x208e 003406 branch idle_exit 
+:      003413 inquiry_dispatch:
+0x208f 003414 rtnmark0 mark_inquiry_on 
+0x2090 003415 force inquiry_length_timer ,queue 
+0x2091 003416 call timer_check 
+0x2092 003417 nsetflag blank ,mark_inquiry_on ,mark 
+0x2093 003418 nbranch inquiry_start ,blank 
+0x2094 003419 rtn 
+:      003423 inquiry_start:
+0x2095 003424 bpatch patch01_2 ,mem_patch01 
+0x2096 003425 fetcht 2 ,mem_inq_window 
+0x2097 003426 force 4 ,queue 
+0x2098 003427 call sniff_check_window 
+0x2099 003428 rtn user 
+0x209a 003429 call afh_clear 
+0x209b 003430 force 0 ,freq_mode 
+:      003431 inquiry_restart:
+0x209c 003432 rtn timeout 
+0x209d 003433 set0 mark_fhs_already_good ,mark 
+0x209e 003434 set0 mark_fhs_eir ,mark 
+:      003435 inquiry_rx_restart:
+0x209f 003436 add clkn_bt ,1 ,bt_clk 
+0x20a0 003437 isolate1 mark_inquiry_trainb ,mark 
+0x20a1 003438 setflag true ,2 ,freq_mode 
+0x20a2 003439 compare 0x00 ,bt_clk ,0x02 
+0x20a3 003440 nbranch inquiry_receive ,true 
+:      003442 inquiry_transmit:
+0x20a4 003443 bpatch patch01_3 ,mem_patch01 
+0x20a5 003444 fetch 1 ,mem_inquiry_transmit 
+0x20a6 003445 increase 1 ,pdata 
+0x20a7 003446 store 1 ,mem_inquiry_transmit 
+0x20a8 003447 call fetch_giac 
+0x20a9 003448 call tx_radio_freq 
+0x20aa 003449 call fetch_diac 
+0x20ab 003450 call start_transmitter 
+0x20ac 003451 call start_tx_native 
+0x20ad 003452 call send_access_word 
+0x20ae 003453 call end_of_packet 
+0x20af 003454 call inquiry_check_train 
+0x20b0 003455 branch inquiry_restart 
+:      003457 inquiry_check_train:
+0x20b1 003458 bpatch patch01_4 ,mem_patch01 
+0x20b2 003459 fetch 1 ,mem_nfreq_index_inq 
+0x20b3 003460 increase -1 ,pdata 
+0x20b4 003461 store 1 ,mem_nfreq_index_inq 
+0x20b5 003462 rtn positive 
+0x20b6 003463 jam 31 ,mem_nfreq_index_inq 
+0x20b7 003464 fetch 1 ,mem_ninqy_index 
+0x20b8 003465 increase -1 ,pdata 
+0x20b9 003466 store 1 ,mem_ninqy_index 
+0x20ba 003467 rtn positive 
+0x20bb 003468 setflip mark_inquiry_trainb ,mark 
+0x20bc 003469 jam param_ninquiry ,mem_ninqy_index 
+0x20bd 003470 rtn 
+:      003472 inquiry_receive:
+0x20be 003473 bpatch patch01_5 ,mem_patch01 
+0x20bf 003474 call fetch_giac 
+0x20c0 003475 call rx_radio_freq 
+0x20c1 003476 call fetch_diac 
+0x20c2 003477 call start_rx_native 
+0x20c3 003478 call start_receiver 
+0x20c4 003479 call wait_access_clkn_rt 
+0x20c5 003480 branch inquiry_sync ,sync 
+0x20c6 003481 call inquiry_check_train 
+0x20c7 003482 branch inquiry_rx_restart 
+:      003483 inquiry_sync:
+0x20c8 003484 bpatch patch01_6 ,mem_patch01 
+0x20c9 003485 call save_rssi 
+0x20ca 003486 call scan_mode_whiten 
+0x20cb 003487 call receive_packet_whitened 
+0x20cc 003488 set0 mark_rxbuf_inuse ,mark 
+0x20cd 003489 rtnmark0 mark_fhs_already_good 
+:      003490 inquiry_receive_rtn:
+0x20ce 003491 bpatch patch01_7 ,mem_patch01 
+:      003492 inquiry_receive_eir_rtn:
+0x20cf 003493 fetch 1 ,mem_inquiry_rcv 
+0x20d0 003494 increase 1 ,pdata 
+0x20d1 003495 store 1 ,mem_inquiry_rcv 
+0x20d2 003496 rtn 
+:      003504 master_page:
+0x20d3 003505 bpatch patch02_0 ,mem_patch02 
+0x20d4 003506 enable master 
+0x20d5 003507 enable clknt 
+0x20d6 003508 fetch 2 ,mem_page_interval 
+0x20d7 003509 branch master_page_no_interval ,blank 
+0x20d8 003510 force page_interval_timer ,queue 
+0x20d9 003511 call timer_check 
+0x20da 003512 nrtn blank 
+:      003513 master_page_no_interval:
+0x20db 003514 bpatch patch02_1 ,mem_patch02 
+0x20dc 003515 fetcht 2 ,mem_page_window 
+0x20dd 003516 force 40 ,queue 
+0x20de 003517 call sniff_check_window 
+0x20df 003518 branch page_exit ,user 
+0x20e0 003519 force page_length_timer ,queue 
+0x20e1 003520 call timer_check 
+0x20e2 003521 nbranch page_start ,blank 
+0x20e3 003522 fetch 1 ,mem_state_map 
+0x20e4 003523 bbit1 smap_name_req ,master_npage_timeout 
+0x20e5 003524 branch master_page_timeout 
+:      003525 master_npage_timeout:
+0x20e6 003526 arg mem_tmp_buffer ,contw 
+0x20e7 003527 arg 8 ,loopcnt 
+0x20e8 003528 call memset0 
+:      003529 master_page_timeout:
+0x20e9 003530 bpatch patch02_2 ,mem_patch02 
+0x20ea 003531 jam 0 ,mem_state 
+0x20eb 003532 call init_lmp_work 
+0x20ec 003533 jam 0 ,memui_reconnect_mode 
+0x20ed 003534 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
+0x20ee 003535 call ui_ipc_send_event 
+0x20ef 003536 branch page_exit 
+:      003538 page_start:
+0x20f0 003539 bpatch patch02_3 ,mem_patch02 
+0x20f1 003540 force 0 ,timeup 
+0x20f2 003541 until clkn_rt ,meet 
+0x20f3 003542 fetch 1 ,mem_page_clk 
+0x20f4 003543 increase -1 ,pdata 
+0x20f5 003544 ixor clkn_bt ,pdata 
+0x20f6 003545 compare 0 ,pdata ,3 
+0x20f7 003546 nbranch page_start ,true 
+0x20f8 003547 deposit am_addr 
+0x20f9 003548 store 1 ,mem_fhs_am_addr 
+0x20fa 003549 force 0 ,n_tx_slot 
+0x20fb 003550 force 0 ,freq_mode 
+:      003552 page_restart:
+0x20fc 003553 bpatch patch02_4 ,mem_patch02 
+0x20fd 003554 branch page_exit ,timeout 
+0x20fe 003555 call fetch_page_bt_adr 
+0x20ff 003556 arg param_rf_setup ,timeup 
+0x2100 003557 until clkn_rt ,meet 
+:      003558 page_rx_restart:
+0x2101 003559 bpatch patch02_5 ,mem_patch02 
+0x2102 003560 fetch 4 ,mem_page_clk 
+0x2103 003561 iforce bt_clk 
+0x2104 003562 increase 1 ,pdata 
+0x2105 003563 store 4 ,mem_page_clk 
+0x2106 003564 isolate1 mark_page_trainb ,mark 
+0x2107 003565 setflag true ,2 ,freq_mode 
+0x2108 003566 compare 0x00 ,bt_clk ,0x02 
+0x2109 003567 nbranch page_receive ,true 
+0x210a 003568 fetch 1 ,mem_page_transmit 
+0x210b 003569 increase 1 ,pdata 
+0x210c 003570 store 1 ,mem_page_transmit 
+0x210d 003571 call tx_radio_freq 
+0x210e 003572 call start_transmitter 
+0x210f 003573 call start_tx_native 
+0x2110 003574 call send_access_word 
+0x2111 003575 call end_of_packet 
+0x2112 003576 call page_check_train 
+0x2113 003577 branch page_restart 
+:      003578 page_exit:
+0x2114 003579 bpatch patch02_6 ,mem_patch02 
+0x2115 003580 disable master 
+0x2116 003581 fetch 2 ,mem_page_interval 
+0x2117 003582 rtn blank 
+0x2118 003583 force page_interval_timer ,queue 
+0x2119 003584 branch timer_init 
+:      003586 page_check_train:
+0x211a 003587 bpatch patch02_7 ,mem_patch02 
+0x211b 003588 fetch 1 ,mem_nfreq_index_page 
+0x211c 003589 increase -1 ,pdata 
+0x211d 003590 store 1 ,mem_nfreq_index_page 
+0x211e 003591 rtn positive 
+0x211f 003592 jam 31 ,mem_nfreq_index_page 
+0x2120 003593 fetch 1 ,mem_npage_index 
+0x2121 003594 increase -1 ,pdata 
+0x2122 003595 store 1 ,mem_npage_index 
+0x2123 003596 rtn positive 
+0x2124 003597 setflip mark_page_trainb ,mark 
+0x2125 003598 fetch 1 ,mem_npage 
+0x2126 003599 store 1 ,mem_npage_index 
+0x2127 003600 rtn 
+:      003602 page_receive:
+0x2128 003603 bpatch patch03_0 ,mem_patch03 
+0x2129 003604 call rx_radio_freq 
+0x212a 003605 call start_rx_native 
+0x212b 003606 call start_receiver 
+0x212c 003607 call wait_access_clkn_rt 
+0x212d 003608 branch page_sync ,sync 
+0x212e 003609 call page_check_train 
+0x212f 003610 branch page_rx_restart 
+:      003611 page_sync:
+0x2130 003612 call end_of_packet 
+0x2131 003613 fetch 1 ,mem_page_rcv 
+0x2132 003614 increase 1 ,pdata 
+0x2133 003615 store 1 ,mem_page_rcv 
+0x2134 003616 force 0 ,stop_watch 
+0x2135 003617 fetch 4 ,mem_page_clk 
+:      003618 page_send_fhs:
+0x2136 003619 bpatch patch03_1 ,mem_patch03 
+0x2137 003620 call rf_setup_time_master_slot 
+0x2138 003621 call fetch_page_bt_adr 
+0x2139 003622 increase 1 ,n_tx_slot 
+:      003623 page_send_fhs_continue:
+0x213a 003624 and_into 0x1fd ,bt_clk 
+0x213b 003625 and_into 0x1fc ,freq_mode 
+0x213c 003626 call tx_radio_freq 
+0x213d 003627 call start_transmitter 
+0x213e 003628 call start_tx_native 
+0x213f 003629 call send_access_word 
+0x2140 003630 deposit clkn_bt 
+0x2141 003631 store 4 ,mem_clkn_bt 
+0x2142 003632 force 0 ,am_addr 
+0x2143 003633 force type_fhs ,type 
+0x2144 003634 call scan_mode_whiten 
+0x2145 003635 call transmit_packet_whitened 
+:      003636 page_wait_fhs_reply:
+0x2146 003637 bpatch patch03_2 ,mem_patch03 
+0x2147 003638 call rf_setup_time_slave_slot 
+0x2148 003639 or_into 0x02 ,bt_clk 
+0x2149 003640 and_into 0x1fc ,freq_mode 
+0x214a 003641 call rx_radio_freq 
+0x214b 003642 call start_rx_native 
+0x214c 003643 call start_receiver 
+0x214d 003644 call wait_access_clkn_rt 
+0x214e 003645 call end_of_packet ,sync 
+0x214f 003646 branch page_wait_fhs_reply_ok ,sync 
+0x2150 003647 fetch 1 ,mem_fhs_wait_counter 
+0x2151 003648 branch page_restart ,blank 
+0x2152 003649 increase -1 ,pdata 
+0x2153 003650 store 1 ,mem_fhs_wait_counter 
+0x2154 003651 branch page_send_fhs 
+:      003653 page_wait_fhs_reply_ok:
+0x2155 003654 bpatch patch03_3 ,mem_patch03 
+0x2156 003655 fetch 1 ,mem_page_rcv_fhs 
+0x2157 003656 increase 1 ,pdata 
+0x2158 003657 store 1 ,mem_page_rcv_fhs 
+0x2159 003658 call prepare_newconn 
+:      003659 master_newconn_loop:
+0x215a 003660 call master_newconn_once 
+0x215b 003661 branch newconn_poll_responded ,sync 
+0x215c 003662 call new_conn_timeout 
+0x215d 003663 nbranch master_newconn_loop ,blank 
+0x215e 003664 branch page_restart 
+:      003666 newconn_poll_responded:
+0x215f 003667 bpatch patch03_4 ,mem_patch03 
+0x2160 003668 fetch 1 ,mem_state 
+0x2161 003669 set0 state_inpage ,pdata 
+0x2162 003670 store 1 ,mem_state 
+0x2163 003671 call newconn_init 
+0x2164 003672 disable master 
+0x2165 003673 rtn 
+:      003676 master_dispatch:
+0x2166 003677 bpatch patch03_5 ,mem_patch03 
+0x2167 003678 enable master 
+0x2168 003679 enable clknt 
+0x2169 003680 call role_switch_master 
+0x216a 003681 rtn user 
+0x216b 003682 call check_bt_disabled 
+0x216c 003683 call rf_setup_time_master_slot 
+0x216d 003684 add clkn_bt ,1 ,bt_clk 
+0x216e 003685 call fetch_self_bt_adr 
+0x216f 003686 force 0x03 ,freq_mode 
+0x2170 003687 call scheduler_tx_l2cap_pkt 
+0x2171 003688 call prepare_tx 
+0x2172 003689 call tx_radio_freq 
+0x2173 003690 call start_transmitter 
+0x2174 003691 call start_tx_native 
+0x2175 003692 call send_access_word 
+0x2176 003693 call transmit_packet 
+:      003694 master_loop:
+0x2177 003695 bpatch patch03_6 ,mem_patch03 
+0x2178 003696 call parse_lmp 
+0x2179 003697 call master_conn_recv_packet 
+0x217a 003698 nbranch master_notmatch ,match 
+0x217b 003699 call supervision_flush 
+0x217c 003700 call parse_l2cap 
+0x217d 003701 fetch 1 ,mem_master_rcvcnt 
+0x217e 003702 increase 1 ,pdata 
+0x217f 003703 store 1 ,mem_master_rcvcnt 
+:      003704 master_notmatch:
+0x2180 003705 bpatch patch03_7 ,mem_patch03 
+0x2181 003706 call scheduler_process 
+0x2182 003707 call check_master_disconnect 
+0x2183 003708 nrtn master 
+0x2184 003709 call check_attempt 
+0x2185 003710 nbranch master_attempt ,blank 
+:      003711 master_exit:
+0x2186 003712 disable master 
+0x2187 003713 rtn 
+:      003715 master_attempt:
+0x2188 003716 call prepare_tx 
+0x2189 003717 call master_conn_send_packet 
+0x218a 003718 branch master_loop 
+:      003721 check_master_disconnect:
+0x218b 003722 branch check_master_match ,match 
+0x218c 003723 call supervision_update 
+0x218d 003724 branch master_disconnect ,positive 
+:      003725 check_master_match:
+0x218e 003726 call check_disconnect_timeout 
+0x218f 003727 nbranch master_disconnect ,user 
+0x2190 003728 fetch 1 ,mem_state_map 
+0x2191 003729 rtnbit0 smap_name_req 
+0x2192 003730 rtnbit1 smap_name_res 
+0x2193 003731 fetch 1 ,mem_op 
+0x2194 003732 rtnbit1 op_disconn 
+0x2195 003733 call conn_timer_expired 
+0x2196 003734 nrtn blank 
+0x2197 003735 fetch 1 ,mem_nameres_cnt 
+0x2198 003736 increase -1 ,pdata 
+0x2199 003737 store 1 ,mem_nameres_cnt 
+0x219a 003738 nrtn blank 
+0x219b 003739 branch lmp_disconnect 
+:      003741 master_disconnect:
+0x219c 003742 bpatch patch04_0 ,mem_patch04 
+0x219d 003743 call quit_connection 
+0x219e 003744 disable master 
+0x219f 003745 fetch 1 ,mem_state_map 
+0x21a0 003746 bbit1 smap_name_req ,master_name_disconnect 
+0x21a1 003747 rtn 
+:      003749 master_name_disconnect:
+0x21a2 003750 fetch 1 ,mem_state_map 
+0x21a3 003751 rtnbit1 smap_name_res 
+:      003752 master_name_error:
+0x21a4 003753 arg mem_tmp_buffer ,contw 
+0x21a5 003754 arg 8 ,loopcnt 
+0x21a6 003755 branch memset0 
+:      003757 check_disconnect_timeout:
+0x21a7 003758 bpatch patch04_1 ,mem_patch04 
+0x21a8 003759 enable user 
+0x21a9 003760 fetch 1 ,mem_op 
+0x21aa 003761 rtnbit0 op_disconn 
+0x21ab 003762 call conn_timer_expired 
+0x21ac 003763 nrtn blank 
+0x21ad 003764 branch disable_user 
+:      003766 conn_timer_expired:
+0x21ae 003767 fetch 1 ,mem_conn_timer 
+0x21af 003768 increase -1 ,pdata 
+0x21b0 003769 store 1 ,mem_conn_timer 
+0x21b1 003770 rtn 
+:      003772 linkkey_ready:
+0x21b2 003773 bpatch patch04_2 ,mem_patch04 
+0x21b3 003774 fetch 1 ,mem_state 
+0x21b4 003775 bbit1 state_linkkey ,linkkey_set 
+0x21b5 003776 fetch 1 ,mem_pairing_auth 
+0x21b6 003777 branch linkkey_set ,blank 
+0x21b7 003778 jam defalt_pairing_auth ,mem_pairing_auth 
+0x21b8 003779 jam bt_evt_linkkey_generate ,mem_fifo_temp 
+0x21b9 003780 call ui_ipc_send_event 
+0x21ba 003781 branch linkkey_set 
+:      003782 linkkey_set:
+0x21bb 003783 bpatch patch04_3 ,mem_patch04 
+0x21bc 003784 call context_traverse_linkkey 
+0x21bd 003785 fetch 1 ,mem_state 
+0x21be 003786 set1 state_linkkey ,pdata 
+0x21bf 003787 store 1 ,mem_state 
+0x21c0 003788 jam 1 ,mem_link_key_exists 
+0x21c1 003789 fetch 1 ,mem_conn_sm 
+0x21c2 003790 bne conn_sm_pairing ,linkkey_set_continue 
+:      003791 linkkey_set_continue:
+0x21c3 003792 rtn 
+:      003794 generate_linkkey_continue:
+0x21c4 003795 jam pairing_auth ,mem_pairing_auth 
+:      003796 clear_linkstate:
+0x21c5 003797 fetch 1 ,mem_state 
+0x21c6 003798 set0 state_linkkey ,pdata 
+0x21c7 003799 store 1 ,mem_state 
+0x21c8 003800 rtn 
+:      003804 role_switch_check:
+0x21c9 003805 bpatch patch04_4 ,mem_patch04 
+0x21ca 003806 disable user 
+0x21cb 003807 fetch 2 ,mem_tsniff 
+0x21cc 003808 arg 0xffff ,temp 
+0x21cd 003809 isub temp ,null 
+0x21ce 003810 nrtn zero 
+0x21cf 003811 fetch 4 ,mem_sniff_anchor 
+0x21d0 003812 branch role_switch_clkn ,clknt 
+0x21d1 003813 isub clke_bt ,pdata 
+0x21d2 003814 branch role_switch_clke 
+:      003815 role_switch_clkn:
+0x21d3 003816 isub clkn_bt ,pdata 
+:      003817 role_switch_clke:
+0x21d4 003818 sub pdata ,4 ,null 
+0x21d5 003819 nrtn positive 
+0x21d6 003820 force 0 ,pdata 
+0x21d7 003821 store 2 ,mem_tsniff 
+0x21d8 003822 branch enable_user 
+:      003826 role_switch_prepare:
+0x21d9 003827 copy pdata ,temp 
+0x21da 003828 bpatch patch04_5 ,mem_patch04 
+0x21db 003829 storet 4 ,mem_sniff_anchor 
+:      003830 role_switch_prepare0:
+0x21dc 003831 jam switch_flag_accept ,mem_switch_flag 
+0x21dd 003832 setarg 0xffff 
+0x21de 003833 store 2 ,mem_tsniff 
+0x21df 003834 jam 1 ,mem_sniff_attempt 
+0x21e0 003835 rtn 
+:      003838 role_switch_master:
+0x21e1 003839 bpatch patch04_6 ,mem_patch04 
+0x21e2 003840 call role_switch_check 
+0x21e3 003841 nrtn user 
+0x21e4 003842 disable user 
+0x21e5 003843 jam param_newconnto ,mem_newconnto_counter 
+0x21e6 003844 set0 mark_fhs_already_good ,mark 
+:      003845 roles_waitfhs_loop:
+0x21e7 003846 call rf_setup_time_master_slot 
+0x21e8 003847 call master_recv_packet 
+0x21e9 003848 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
+0x21ea 003849 call new_conn_timeout 
+0x21eb 003850 nbranch roles_waitfhs_loop ,blank 
+:      003851 role_switch_fail_master:
+0x21ec 003852 bpatch patch04_7 ,mem_patch04 
+0x21ed 003853 disable user 
+0x21ee 003854 deposit clkn_bt 
+0x21ef 003855 store 4 ,mem_next_btclk 
+0x21f0 003856 enable clknt 
+0x21f1 003857 enable master 
+0x21f2 003858 jam bt_evt_switch_fail_master ,mem_fifo_temp 
+0x21f3 003859 branch ui_ipc_send_event 
+:      003861 roles_replyto_fhs:
+0x21f4 003862 bpatch patch05_0 ,mem_patch05 
+0x21f5 003863 call rf_setup_time_slave_slot 
+0x21f6 003864 arg type_id ,type 
+0x21f7 003865 call master_send_packet 
+0x21f8 003866 disable clknt 
+0x21f9 003867 disable master 
+0x21fa 003868 call apply_switch_clke 
+0x21fb 003869 call prepare_newconn 
+:      003870 roles_newconns_loop:
+0x21fc 003871 bpatch patch05_1 ,mem_patch05 
+0x21fd 003872 call slave_newconn_once 
+0x21fe 003873 branch roles_newconns_responded ,match 
+0x21ff 003874 call new_conn_timeout 
+0x2200 003875 nbranch roles_newconns_loop ,blank 
+0x2201 003876 branch role_switch_fail_master 
+:      003877 roles_newconns_responded:
+0x2202 003878 fetch 1 ,mem_mode 
+0x2203 003879 set0 mode_master ,pdata 
+0x2204 003880 store 1 ,mem_mode 
+0x2205 003881 call supervision_flush 
+0x2206 003882 call calc_clke_offset 
+0x2207 003883 enable user 
+0x2208 003884 jam bt_evt_switch_success_master ,mem_fifo_temp 
+0x2209 003885 branch ui_ipc_send_event 
+:      003890 context_load:
+0x220a 003891 bpatch patch05_2 ,mem_patch05 
+0x220b 003892 set1 mark_context ,mark 
+0x220c 003893 deposit rega 
+0x220d 003894 store 2 ,mem_context_ptr 
+0x220e 003895 force context_size ,loopcnt 
+0x220f 003896 arg mem_le_state ,contw 
+0x2210 003897 add rega ,coffset_mode ,contr 
+0x2211 003898 ifetch 1 ,contr 
+0x2212 003899 copy rega ,contr 
+0x2213 003900 bbit1 mode_le ,memcpy 
+0x2214 003901 arg mem_state ,contw 
+0x2215 003902 call memcpy 
+0x2216 003903 disable attempt 
+0x2217 003904 fetch 1 ,mem_amaddr 
+0x2218 003905 iforce am_addr 
+0x2219 003906 jam 1 ,mem_current_sniff_attempt 
+0x221a 003907 branch context_load_master ,master 
+0x221b 003908 jam 1 ,mem_current_sniff_attempt 
+:      003909 context_load_master:
+0x221c 003910 fetch 1 ,mem_state 
+0x221d 003911 rtnbit0 state_insniff 
+0x221e 003912 fetch 1 ,mem_sniff_attempt 
+0x221f 003913 store 1 ,mem_current_sniff_attempt 
+0x2220 003914 fetch 1 ,mem_sniff_timeout 
+0x2221 003915 store 1 ,mem_current_sniff_timeout 
+0x2222 003916 rtn 
+:      003918 context_save:
+0x2223 003919 bpatch patch05_3 ,mem_patch05 
+0x2224 003920 fetch 2 ,mem_context_ptr 
+0x2225 003921 iforce contw 
+0x2226 003922 force context_size ,loopcnt 
+0x2227 003923 arg mem_le_state ,contr 
+0x2228 003924 branch memcpy ,le 
+0x2229 003925 arg mem_state ,contr 
+0x222a 003926 branch memcpy 
+:      003930 context_get_next:
+0x222b 003931 arg context_num ,loopcnt 
+0x222c 003932 fetcht 1 ,mem_current_context 
+:      003933 context_get_next_loop:
+0x222d 003934 increase 1 ,temp 
+0x222e 003935 compare context_num ,temp ,0xff 
+0x222f 003936 nbranch context_get_next_cont ,true 
+0x2230 003937 arg 0 ,temp 
+:      003938 context_get_next_cont:
+0x2231 003939 storet 1 ,mem_current_context 
+0x2232 003940 mul32 temp ,context_size ,pdata 
+0x2233 003941 arg mem_context ,rega 
+0x2234 003942 iadd rega ,rega 
+0x2235 003943 ifetch 1 ,rega 
+0x2236 003944 bbit1 state_insniff ,context_get_next_sniff 
+0x2237 003945 rtnbit1 state_inconn 
+0x2238 003946 rtnbit1 state_inpage 
+:      003947 context_get_next_sniff:
+0x2239 003948 loop context_get_next_loop 
+0x223a 003949 rtn 
+:      003951 context_new:
+0x223b 003952 bpatch patch05_4 ,mem_patch05 
+0x223c 003953 arg context_search_empty ,regc 
+0x223d 003954 call context_search 
+0x223e 003955 nrtn zero 
+0x223f 003956 deposit rega 
+0x2240 003957 store 2 ,mem_context_ptr 
+0x2241 003958 force 0 ,null 
+0x2242 003959 rtn 
+:      003963 context_check_all_wack:
+0x2243 003964 call check_esco_amaddr 
+0x2244 003965 branch context_check_esco_wack ,true 
+0x2245 003966 fetch 2 ,mem_context_ptr 
+0x2246 003967 add pdata ,coffset_arq ,contw 
+0x2247 003968 fetch 1 ,mem_arq 
+0x2248 003969 istore 1 ,contw 
+0x2249 003970 arg context_check_a_wack ,regc 
+0x224a 003971 branch context_search 
+:      003973 context_check_esco_wack:
+0x224b 003974 fetch 1 ,mem_arq 
+0x224c 003975 isolate1 wack ,pdata 
+0x224d 003976 branch context_esco_wack ,true 
+0x224e 003977 force 1 ,null 
+0x224f 003978 rtn 
+:      003979 context_esco_wack:
+0x2250 003980 force 0 ,null 
+0x2251 003981 rtn 
+:      003984 context_check_idle:
+0x2252 003985 arg context_check_inconn ,regc 
+0x2253 003986 branch context_search 
+:      003988 context_traverse_linkkey:
+0x2254 003989 fetcht 2 ,mem_context_ptr 
+0x2255 003990 arg context_traverse_clearkey ,regc 
+0x2256 003991 branch context_search 
+:      003995 context_search_conn_handle:
+0x2257 003996 fetcht 1 ,mem_hci_conn_handle 
+:      003997 context_search_conn_handle2:
+0x2258 003998 arg context_search_handle ,regc 
+0x2259 003999 branch context_search 
+:      004001 context_search_plap:
+0x225a 004002 bpatch patch05_5 ,mem_patch05 
+0x225b 004003 fetcht 6 ,mem_hci_plap 
+:      004004 context_search_plap2:
+0x225c 004005 arg context_search_lap ,regc 
+0x225d 004006 branch context_search 
+:      004008 context_search_insniff:
+0x225e 004009 arg context_search_sniff ,regc 
+0x225f 004010 branch context_search 
+:      004012 context_search_sniff_window:
+0x2260 004013 arg context_search_window ,regc 
+:      004014 context_search:
+0x2261 004015 bpatch patch05_6 ,mem_patch05 
+0x2262 004016 arg mem_context ,rega 
+0x2263 004017 arg context_num ,loopcnt 
+:      004018 context_search_loop:
+0x2264 004019 ifetch 1 ,rega 
+0x2265 004020 copy regc ,pc 
+:      004021 context_search_next:
+0x2266 004022 increase context_size ,rega 
+0x2267 004023 loop context_search_loop 
+0x2268 004024 force 1 ,null 
+0x2269 004025 rtn 
+:      004027 context_search_empty:
+0x226a 004028 bbit1 state_inconn ,context_search_next 
+0x226b 004029 bbit1 state_inpage ,context_search_next 
+0x226c 004030 force 0 ,null 
+0x226d 004031 rtn 
+:      004033 context_search_lap:
+0x226e 004034 bbit1 state_inpage ,context_search_lap_cont 
+0x226f 004035 bbit0 state_inconn ,context_search_next 
+:      004036 context_search_lap_cont:
+0x2270 004037 add rega ,coffset_plap ,contr 
+0x2271 004038 ifetch 6 ,contr 
+0x2272 004039 isub temp ,null 
+0x2273 004040 rtn zero 
+0x2274 004041 branch context_search_next 
+:      004043 context_search_handle:
+0x2275 004044 bbit0 state_inconn ,context_search_next 
+0x2276 004045 add rega ,coffset_conn_handle ,contr 
+0x2277 004046 ifetch 1 ,contr 
+0x2278 004047 isub temp ,null 
+0x2279 004048 rtn zero 
+0x227a 004049 branch context_search_next 
+:      004051 context_search_sniff:
+0x227b 004052 bbit0 state_insniff ,context_search_next 
+:      004053 context_search_sniff_loop:
+0x227c 004054 call context_get_anchor 
+0x227d 004055 call sign_pdata_temp 
+0x227e 004056 isub temp ,pdata 
+0x227f 004057 increase 1 ,pdata 
+0x2280 004058 branch context_search_sniff_miss ,positive 
+0x2281 004059 copy contr ,regb 
+0x2282 004060 store 9 ,mem_temp 
+0x2283 004061 fetch 1 ,mem_le_sc_calc 
+0x2284 004062 nbranch context_search_sniff_sc ,blank 
+0x2285 004063 fetch 9 ,mem_temp 
+0x2286 004064 copy regb ,contr 
+0x2287 004065 increase 5 ,pdata 
+0x2288 004066 branch context_search_meet1 
+:      004067 context_search_sniff_sc:
+0x2289 004068 fetch 9 ,mem_temp 
+0x228a 004069 copy regb ,contr 
+0x228b 004070 increase 20 ,pdata 
+:      004071 context_search_meet1:
+0x228c 004072 nbranch context_search_next ,positive 
+:      004073 context_search_meet:
+0x228d 004074 copy temp ,bt_clk 
+0x228e 004075 call context_next_anchor 
+0x228f 004076 force 0 ,null 
+0x2290 004077 rtn 
+:      004080 context_search_sniff_miss:
+0x2291 004081 iforce regb 
+0x2292 004082 add rega ,coffset_tsniff ,contr 
+0x2293 004083 ifetch 2 ,contr 
+0x2294 004084 branch context_search_meet ,blank 
+0x2295 004085 call context_next_anchor 
+0x2296 004086 branch context_search_sniff_loop 
+:      004088 sign_pdata_temp:
+0x2297 004089 rshift16 pdata ,timeup 
+0x2298 004090 rshift8 timeup ,timeup 
+0x2299 004091 branch sign_pdata_temp_p0 ,zero 
+0x229a 004092 compare 0xf ,timeup ,0xf 
+0x229b 004093 nrtn true 
+0x229c 004094 rshift16 temp ,timeup 
+0x229d 004095 rshift8 timeup ,timeup 
+0x229e 004096 nrtn zero 
+0x229f 004097 set1 28 ,temp 
+0x22a0 004098 rtn 
+:      004099 sign_pdata_temp_p0:
+0x22a1 004100 rshift16 temp ,timeup 
+0x22a2 004101 rshift8 timeup ,timeup 
+0x22a3 004102 compare 0xf ,timeup ,0xf 
+0x22a4 004103 nrtn true 
+0x22a5 004104 set1 28 ,pdata 
+0x22a6 004105 rtn 
+:      004107 context_check_inconn:
+0x22a7 004108 bbit0 state_inconn ,context_search_next 
+0x22a8 004109 force 0 ,null 
+0x22a9 004110 rtn 
+:      004112 context_check_a_wack:
+0x22aa 004113 bbit0 state_inconn ,context_search_next 
+0x22ab 004114 add rega ,coffset_mode ,contr 
+0x22ac 004115 ifetch 1 ,contr 
+0x22ad 004116 bbit1 mode_le ,context_search_next 
+0x22ae 004117 add rega ,coffset_arq ,contr 
+0x22af 004118 ifetch 1 ,contr 
+0x22b0 004119 bbit0 wack ,context_search_next 
+0x22b1 004120 force 0 ,null 
+0x22b2 004121 rtn 
+:      004123 context_get_anchor:
+0x22b3 004124 add rega ,coffset_mode ,contr 
+0x22b4 004125 ifetcht 1 ,contr 
+0x22b5 004126 deposit clkn_bt 
+0x22b6 004127 isolate1 mode_master ,temp 
+0x22b7 004128 add rega ,coffset_sniff_anchor ,contr 
+0x22b8 004129 ifetcht 4 ,contr 
+0x22b9 004130 rtn true 
+0x22ba 004131 add rega ,coffset_clk_offset ,contr 
+0x22bb 004132 ifetch 6 ,contr 
+0x22bc 004133 call calc_clke2 
+0x22bd 004134 deposit clke_bt 
+0x22be 004135 rtn 
+:      004137 context_next_anchor:
+0x22bf 004138 add rega ,coffset_tsniff ,contr 
+0x22c0 004139 add rega ,coffset_sniff_anchor ,contw 
+0x22c1 004140 ifetch 2 ,contr 
+0x22c2 004141 iadd temp ,timeup 
+0x22c3 004142 deposit timeup 
+0x22c4 004143 istore 4 ,contw 
+0x22c5 004144 branch le_context_nexthop 
+:      004147 context_search_window:
+0x22c6 004148 bbit0 state_insniff ,context_search_next 
+0x22c7 004149 call context_get_anchor 
+0x22c8 004150 iadd stop_watch ,pdata 
+0x22c9 004151 iadd stop_watch ,pdata 
+0x22ca 004152 iadd queue ,pdata 
+0x22cb 004153 isub temp ,null 
+0x22cc 004154 nbranch context_search_next ,positive 
+0x22cd 004155 force 0 ,null 
+0x22ce 004156 rtn 
+:      004158 context_traverse_clearkey:
+0x22cf 004159 bbit0 state_inconn ,context_search_next 
+0x22d0 004160 deposit temp 
+0x22d1 004161 isub rega ,null 
+0x22d2 004162 branch context_search_next ,null 
+0x22d3 004163 add rega ,coffset_mode ,contr 
+0x22d4 004164 ifetch 1 ,contr 
+0x22d5 004165 bbit1 mode_le ,context_search_next 
+0x22d6 004166 ifetch 1 ,rega 
+0x22d7 004167 set0 state_linkkey ,pdata 
+0x22d8 004168 istore 1 ,rega 
+0x22d9 004169 branch context_search_next 
+:      004172 master_conn_send_packet:
+0x22da 004173 bpatch patch05_7 ,mem_patch05 
+0x22db 004174 call rf_setup_time_master_slot 
+:      004175 master_send_packet:
+0x22dc 004176 add clkn_bt ,1 ,bt_clk 
+0x22dd 004177 call fetch_self_bt_adr 
+0x22de 004178 force 0x03 ,freq_mode 
+0x22df 004179 call tx_radio_freq 
+0x22e0 004180 call start_transmitter 
+0x22e1 004181 call start_tx_native 
+0x22e2 004182 call send_access_word 
+0x22e3 004183 branch transmit_packet 
+:      004185 master_conn_recv_packet:
+0x22e4 004186 bpatch patch06_0 ,mem_patch06 
+0x22e5 004187 call rf_setup_time_slave_slot 
+:      004188 master_recv_packet:
+0x22e6 004189 add clkn_bt ,1 ,bt_clk 
+0x22e7 004190 call fetch_self_bt_adr 
+0x22e8 004191 force 0x03 ,freq_mode 
+0x22e9 004192 call rx_radio_freq 
+0x22ea 004193 call init_rx_packet_flags 
+0x22eb 004194 call prep_crypt 
+0x22ec 004195 call start_rx_native 
+0x22ed 004196 call start_receiver 
+:      004197 master_rx_conn_finish_packet:
+0x22ee 004198 call wait_access_clkn_rt 
+0x22ef 004199 nrtn sync 
+0x22f0 004200 call save_rssi 
+0x22f1 004201 branch receive_packet 
+:      004205 master_newconn_once:
+0x22f2 004206 bpatch patch06_1 ,mem_patch06 
+0x22f3 004207 fetch 1 ,mem_fhs_am_addr 
+0x22f4 004208 iforce am_addr 
+0x22f5 004209 force type_poll ,type 
+0x22f6 004210 call master_conn_send_packet 
+0x22f7 004211 branch master_conn_recv_packet 
+:      004222 inquiry_scan_dispatch:
+0x22f8 004223 fetch 1 ,mem_scan_mode 
+0x22f9 004224 rtnbit0 inq_scan_mode 
+0x22fa 004225 force iscan_interval_timer ,queue 
+0x22fb 004226 call timer_check 
+0x22fc 004227 nrtn blank 
+0x22fd 004228 fetcht 2 ,mem_iscan_window 
+0x22fe 004229 force 4 ,queue 
+0x22ff 004230 call sniff_check_window 
+0x2300 004231 rtn user 
+0x2301 004232 call inquiry_scan_start 
+0x2302 004233 force iscan_interval_timer ,queue 
+0x2303 004234 fetch 2 ,mem_iscan_interval 
+0x2304 004235 nbranch timer_init ,sync 
+0x2305 004236 random pdata 
+0x2306 004237 iand mask3ff ,pdata 
+0x2307 004238 branch timer_init 
+:      004241 inquiry_scan_start:
+0x2308 004242 bpatch patch06_2 ,mem_patch06 
+0x2309 004243 jam 0 ,mem_fhs_am_addr 
+0x230a 004244 disable clknt 
+0x230b 004245 disable attempt 
+0x230c 004246 call afh_clear 
+0x230d 004247 and clkn_bt ,0x1fc ,bt_clk 
+0x230e 004248 force 0x01 ,freq_mode 
+0x230f 004249 call fetch_giac 
+0x2310 004250 call rx_radio_freq 
+0x2311 004251 setflip mark_inquiry_state ,mark 
+0x2312 004252 fetch 1 ,mem_inquiryscan_waitcnt 
+0x2313 004253 increase 1 ,pdata 
+0x2314 004254 store 1 ,mem_inquiryscan_waitcnt 
+0x2315 004255 call fetch_diac 
+0x2316 004256 call start_receiver 
+0x2317 004257 call wait_access_forever 
+0x2318 004258 nrtn sync 
+0x2319 004259 bpatch patch06_3 ,mem_patch06 
+0x231a 004260 force 0 ,stop_watch 
+0x231b 004261 call shutdown_radio 
+0x231c 004262 fetch 1 ,mem_inquiryscan_rcvcnt 
+0x231d 004263 increase 1 ,pdata 
+0x231e 004264 store 1 ,mem_inquiryscan_rcvcnt 
+0x231f 004265 call fetch_giac 
+0x2320 004266 call rf_setup_time_slave_slot 
+0x2321 004267 or_into 0x002 ,bt_clk 
+0x2322 004268 force 0x01 ,freq_mode 
+0x2323 004269 call tx_radio_freq 
+0x2324 004270 call fetch_diac 
+0x2325 004271 call start_transmitter 
+0x2326 004272 call start_tx_external 
+0x2327 004273 deposit clkn_bt 
+0x2328 004274 store 4 ,mem_clkn_bt 
+0x2329 004275 call send_access_word 
+0x232a 004276 force type_fhs ,type 
+0x232b 004277 force 0 ,am_addr 
+0x232c 004278 call scan_mode_whiten 
+0x232d 004279 call transmit_packet_whitened 
+0x232e 004280 call send_eir 
+0x232f 004281 and_into 0x1fd ,bt_clk 
+0x2330 004282 increase 1 ,n_tx_slot 
+0x2331 004283 rtn 
+:      004285 send_eir:
+0x2332 004286 bpatch patch06_4 ,mem_patch06 
+0x2333 004287 fetch 1 ,mem_eir_enable 
+0x2334 004288 rtn blank 
+0x2335 004289 arg mem_eir ,contw 
+0x2336 004290 fetch 1 ,mem_local_name_length 
+0x2337 004291 copy pdata ,loopcnt 
+0x2338 004292 increase 1 ,pdata 
+0x2339 004293 istore 1 ,contw 
+0x233a 004294 copy contw ,temp 
+0x233b 004295 increase 1 ,pdata 
+0x233c 004296 store 2 ,mem_tx_len 
+0x233d 004297 copy temp ,contw 
+0x233e 004298 setarg 0x09 
+0x233f 004299 istore 1 ,contw 
+0x2340 004300 arg mem_local_name ,contr 
+0x2341 004301 call memcpy 
+0x2342 004303 arg mem_all_uuid_128bits ,regc 
+0x2343 004304 arg 4 ,loopcnt 
+0x2344 004305 call get_all_uuid 
+0x2345 004306 arg mem_all_uuid_16bits ,regc 
+0x2346 004307 arg 1 ,loopcnt 
+0x2347 004308 call get_all_uuid 
+0x2348 004310 force type_dm3 ,type 
+0x2349 004311 jam 2 ,mem_tx_lch 
+0x234a 004312 setarg mem_eir 
+0x234b 004313 store 2 ,mem_txptr 
+0x234c 004314 call rf_setup_time_slave_slot 
+0x234d 004315 call tx_radio_freq 
+0x234e 004316 call start_transmitter 
+0x234f 004317 call start_tx_external 
+0x2350 004318 call send_access_word 
+0x2351 004319 call scan_mode_whiten 
+0x2352 004320 call transmit_packet_whitened 
+0x2353 004321 rtn 
+:      004324 get_all_uuid:
+0x2354 004325 copy contw ,temp 
+0x2355 004326 copy regc ,contr 
+0x2356 004327 ifetch 1 ,contr 
+0x2357 004328 rtn blank 
+:      004329 lshift_loop:
+0x2358 004330 lshift pdata ,pdata 
+0x2359 004331 loop lshift_loop 
+0x235a 004332 copy pdata ,rega 
+0x235b 004333 increase 2 ,pdata 
+0x235c 004334 copy pdata ,queue 
+0x235d 004335 fetch 2 ,mem_tx_len 
+0x235e 004336 iadd queue ,pdata 
+0x235f 004337 store 2 ,mem_tx_len 
+0x2360 004338 copy temp ,contw 
+0x2361 004339 copy rega ,pdata 
+0x2362 004340 increase 1 ,pdata 
+0x2363 004341 istore 1 ,contw 
+0x2364 004342 copy regc ,contr 
+0x2365 004343 ifetch 1 ,contr 
+0x2366 004344 ifetch 1 ,contr 
+0x2367 004345 istore 1 ,contw 
+0x2368 004346 copy rega ,loopcnt 
+0x2369 004347 branch memcpy 
+:      004353 page_scan_dispatch:
+0x236a 004354 fetch 1 ,mem_scan_mode 
+0x236b 004355 rtnbit0 page_scan_mode 
+0x236c 004356 force pscan_interval_timer ,queue 
+0x236d 004357 call timer_check 
+0x236e 004358 nrtn blank 
+0x236f 004359 fetcht 2 ,mem_pscan_window 
+0x2370 004360 force 40 ,queue 
+0x2371 004361 call sniff_check_window 
+0x2372 004362 rtn user 
+0x2373 004363 force 0 ,am_addr 
+0x2374 004364 jam param_pagerespto ,mem_fhs_wait_counter 
+0x2375 004365 set0 mark_fhs_already_good ,mark 
+0x2376 004366 call page_scan_start 
+0x2377 004367 force pscan_interval_timer ,queue 
+0x2378 004368 fetch 2 ,mem_pscan_interval 
+0x2379 004369 branch timer_init 
+:      004372 page_scan_start:
+0x237a 004373 bpatch patch06_5 ,mem_patch06 
+0x237b 004374 disable clknt 
+0x237c 004375 call afh_clear 
+0x237d 004376 fetch 1 ,mem_pagescan_waitcnt 
+0x237e 004377 increase 1 ,pdata 
+0x237f 004378 store 1 ,mem_pagescan_waitcnt 
+0x2380 004379 force 0 ,n_tx_slot 
+0x2381 004380 call fetch_self_bt_adr 
+0x2382 004381 add clkn_bt ,1 ,bt_clk 
+0x2383 004382 force 0x02 ,freq_mode 
+0x2384 004383 bpatch patch06_6 ,mem_patch06 
+0x2385 004384 call rx_radio_freq 
+0x2386 004385 call start_receiver 
+0x2387 004386 call wait_access_forever 
+0x2388 004387 nrtn sync 
+0x2389 004388 call shutdown_radio 
+0x238a 004389 fetch 1 ,mem_pagescan_rcvcnt 
+0x238b 004390 increase 1 ,pdata 
+0x238c 004391 store 1 ,mem_pagescan_rcvcnt 
+0x238d 004392 force 0 ,stop_watch 
+0x238e 004393 call rf_setup_time_slave_slot 
+0x238f 004394 or_into 0x002 ,bt_clk 
+0x2390 004395 force 0x01 ,freq_mode 
+0x2391 004396 call tx_radio_freq 
+0x2392 004397 call start_transmitter 
+0x2393 004398 call start_tx_external 
+0x2394 004399 call send_access_word 
+0x2395 004400 call end_of_packet 
+0x2396 004401 force 0 ,am_addr 
+0x2397 004402 arg param_rf_setup ,timeup 
+0x2398 004403 until clke_rt ,meet 
+0x2399 004404 or_into 0x03 ,clke_bt 
+0x239a 004405 and_into 0x1fd ,bt_clk 
+:      004406 page_scan_wait_fhs_restart:
+0x239b 004407 bpatch patch06_7 ,mem_patch06 
+0x239c 004408 increase 1 ,n_tx_slot 
+0x239d 004409 call rx_radio_freq 
+0x239e 004410 call start_receiver 
+0x239f 004411 call wait_access_mhalfbnd 
+0x23a0 004412 nbranch page_scan_wait_fhs_again ,sync 
+0x23a1 004413 call scan_mode_whiten 
+0x23a2 004414 call receive_packet_whitened 
+0x23a3 004415 bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
+:      004416 page_scan_wait_fhs_again:
+0x23a4 004417 bpatch patch07_0 ,mem_patch07 
+0x23a5 004418 fetch 1 ,mem_fhs_wait_counter 
+0x23a6 004419 rtn blank 
+0x23a7 004420 increase -1 ,pdata 
+0x23a8 004421 store 1 ,mem_fhs_wait_counter 
+0x23a9 004422 call rf_setup_time_master_slot 
+0x23aa 004423 branch page_scan_wait_fhs_restart 
+:      004426 page_scan_reply_to_fhs:
+0x23ab 004427 bpatch patch07_1 ,mem_patch07 
+0x23ac 004428 set0 1 ,clke_bt 
+0x23ad 004429 set1 0 ,clke_bt 
+0x23ae 004430 fetch 1 ,mem_pagescan_rcvfhscnt 
+0x23af 004431 increase 1 ,pdata 
+0x23b0 004432 store 1 ,mem_pagescan_rcvfhscnt 
+0x23b1 004433 call rf_setup_time_slave_slot 
+0x23b2 004434 or_into 0x02 ,bt_clk 
+0x23b3 004435 call tx_radio_freq 
+0x23b4 004436 call start_transmitter 
+0x23b5 004437 call start_tx_external 
+0x23b6 004438 call send_access_word 
+0x23b7 004439 call end_of_packet 
+:      004440 slave_apply_clke_bt:
+0x23b8 004441 compare 0x03 ,clke_bt ,0x03 
+0x23b9 004442 branch slave_apply_clke_bt_now ,true 
+0x23ba 004443 until null ,mhalfbnd 
+0x23bb 004444 branch slave_apply_clke_bt 
+:      004445 slave_apply_clke_bt_now:
+0x23bc 004446 fetch 4 ,mem_clke_bt 
+0x23bd 004447 or_into 0x03 ,pdata 
+0x23be 004448 icopy clke_bt 
+:      004450 start_slave_connection:
+0x23bf 004451 bpatch patch07_2 ,mem_patch07 
+0x23c0 004452 fetch 6 ,extm_lap 
+0x23c1 004453 store 6 ,mem_plap 
+0x23c2 004454 call prepare_newconn 
+:      004455 slave_newconn_loop:
+0x23c3 004456 call slave_newconn_once 
+0x23c4 004457 branch sconn_successful ,match 
+0x23c5 004458 call new_conn_timeout 
+0x23c6 004459 nbranch slave_newconn_loop ,blank 
+0x23c7 004460 rtn 
+:      004463 sconn_successful:
+0x23c8 004464 bpatch patch07_3 ,mem_patch07 
+0x23c9 004465 call newconn_init 
+0x23ca 004466 call context_new 
+0x23cb 004467 nrtn zero 
+0x23cc 004468 jam 0 ,mem_mode 
+0x23cd 004469 call calc_clke_offset 
+0x23ce 004470 branch context_save 
+:      004475 slave_dispatch:
+0x23cf 004476 bpatch patch07_4 ,mem_patch07 
+0x23d0 004477 call calc_clke 
+0x23d1 004478 call role_switch_slave 
+0x23d2 004479 rtn user 
+:      004480 slave_loop:
+0x23d3 004481 bpatch patch07_5 ,mem_patch07 
+0x23d4 004482 call check_bt_disabled 
+0x23d5 004483 call scheduler_process 
+0x23d6 004484 call slave_conn_recv_packet 
+0x23d7 004485 nbranch slave_notmatch ,match 
+0x23d8 004486 call supervision_flush 
+0x23d9 004487 call scheduler_tx_l2cap_pkt 
+0x23da 004488 call prepare_tx 
+0x23db 004489 call slave_conn_send_packet 
+0x23dc 004490 call parse_l2cap 
+0x23dd 004491 call parse_lmp 
+0x23de 004492 fetch 1 ,mem_slave_rcvcnt 
+0x23df 004493 increase 1 ,pdata 
+0x23e0 004494 store 1 ,mem_slave_rcvcnt 
+0x23e1 004495 call calc_clke_offset 
+:      004496 slave_notmatch:
+0x23e2 004497 bpatch patch07_6 ,mem_patch07 
+0x23e3 004498 call lpm_set_mult 
+0x23e4 004499 call supervision_update 
+0x23e5 004500 branch slave_disconnect ,positive 
+0x23e6 004501 call check_disconnect_timeout 
+0x23e7 004502 nbranch slave_disconnect ,user 
+0x23e8 004503 call check_attempt 
+0x23e9 004504 nbranch slave_loop ,blank 
+0x23ea 004505 rtn 
+:      004507 slave_disconnect:
+0x23eb 004508 bpatch patch07_7 ,mem_patch07 
+0x23ec 004509 jam 0 ,mem_tester_emulate 
+0x23ed 004510 jam 0 ,mem_debug_config 
+0x23ee 004511 call quit_connection 
+0x23ef 004512 set0 mark_testmode ,mark 
+0x23f0 004513 call test_enable_white 
+0x23f1 004514 fetch 1 ,mem_state 
+0x23f2 004515 rtn 
+:      004518 role_switch_slave:
+0x23f3 004519 bpatch patch08_0 ,mem_patch08 
+0x23f4 004520 call role_switch_check 
+0x23f5 004521 nrtn user 
+0x23f6 004522 copy am_addr ,temp 
+0x23f7 004523 call get_free_amaddr 
+0x23f8 004524 store 1 ,mem_fhs_am_addr 
+0x23f9 004525 copy temp ,am_addr 
+0x23fa 004526 jam param_newconnto ,mem_newconnto_counter 
+:      004527 roles_sendfhs_loop:
+0x23fb 004528 bpatch patch08_1 ,mem_patch08 
+0x23fc 004529 call rf_setup_time_master_slot 
+0x23fd 004530 force type_fhs ,type 
+0x23fe 004531 call slave_send_access 
+0x23ff 004532 deposit clkn_bt 
+0x2400 004533 store 4 ,mem_clkn_bt 
+0x2401 004534 call transmit_packet 
+0x2402 004535 call rf_setup_time_slave_slot 
+0x2403 004536 enable user3 
+0x2404 004537 call slave_receive_access 
+0x2405 004538 branch roles_got_fhs_reply ,sync 
+0x2406 004539 call shutdown_radio 
+0x2407 004540 call new_conn_timeout 
+0x2408 004541 nbranch roles_sendfhs_loop ,blank 
+0x2409 004542 rtnmark0 mark_accept_switch 
+0x240a 004543 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x240b 004544 set1 mark_switch_initiated ,mark 
+0x240c 004545 rtn 
+:      004546 roles_got_fhs_reply:
+0x240d 004547 enable clknt 
+0x240e 004548 call prepare_newconn 
+0x240f 004549 call afh_clear 
+:      004550 roles_newconn_loop:
+0x2410 004551 bpatch patch08_2 ,mem_patch08 
+0x2411 004552 call master_newconn_once 
+0x2412 004553 branch roles_newconn_responded ,sync 
+0x2413 004554 call new_conn_timeout 
+0x2414 004555 nbranch roles_newconn_loop ,blank 
+0x2415 004556 disable clknt 
+0x2416 004557 deposit clke_bt 
+0x2417 004558 store 4 ,mem_next_btclk 
+0x2418 004559 rtn 
+:      004560 roles_newconn_responded:
+0x2419 004561 enable master 
+0x241a 004562 bmark0 mark_accept_switch ,roles_newconn_nolmp 
+0x241b 004563 set0 mark_accept_switch ,mark 
+0x241c 004564 jam lmp_accepted ,mem_lmo_opcode2 
+0x241d 004565 jam lmp_host_connection_req ,mem_lmi_opcode2 
+0x241e 004566 call tid_set_reply 
+:      004567 roles_newconn_nolmp:
+0x241f 004568 deposit am_addr 
+0x2420 004569 store 1 ,mem_amaddr 
+0x2421 004570 force 0 ,pdata 
+0x2422 004571 store 6 ,mem_clk_offset 
+0x2423 004572 fetch 1 ,mem_mode 
+0x2424 004573 set1 mode_master ,pdata 
+0x2425 004574 store 1 ,mem_mode 
+0x2426 004575 call supervision_flush 
+0x2427 004576 disable master 
+0x2428 004577 enable user 
+0x2429 004578 rtn 
+:      004582 init_rx_packet_flags:
+0x242a 004583 bpatch patch08_3 ,mem_patch08 
+0x242b 004584 disable match 
+0x242c 004585 set0 mark_loopback ,mark 
+0x242d 004586 set0 mark_am_addr_broadcast ,mark 
+0x242e 004587 set0 mark_longpacket ,mark 
+0x242f 004588 set0 mark_old_packet ,mark 
+0x2430 004589 fetch 1 ,mem_arq 
+0x2431 004590 set0 arqnx ,pdata 
+0x2432 004591 set1 flowx ,pdata 
+0x2433 004592 store 1 ,mem_arq 
+0x2434 004593 rtn 
+:      004595 prepare_newconn:
+0x2435 004596 bpatch patch08_4 ,mem_patch08 
+0x2436 004597 jam param_newconnto ,mem_newconnto_counter 
+0x2437 004598 jam param_newconn_arq ,mem_arq 
+0x2438 004599 fetch 2 ,mem_rx_window_init 
+0x2439 004600 store 2 ,mem_rx_window 
+0x243a 004601 deposit clkn_bt 
+0x243b 004602 store 4 ,mem_next_btclk 
+0x243c 004603 rtn clknt 
+0x243d 004604 deposit clke_bt 
+0x243e 004605 store 4 ,mem_next_btclk 
+0x243f 004606 rtn 
+:      004608 newconn_init:
+0x2440 004609 bpatch patch08_5 ,mem_patch08 
+0x2441 004610 call init_lmp_reinit 
+0x2442 004611 call new_conn_handle 
+0x2443 004612 store 1 ,mem_conn_handle 
+0x2444 004613 setarg 0 
+0x2445 004614 store 2 ,mem_l2cap_rxbuff1_len 
+0x2446 004615 setarg param_supervision_to 
+0x2447 004616 store 2 ,mem_supervision_to 
+0x2448 004617 fetch 1 ,mem_state 
+0x2449 004618 set1 state_inconn ,pdata 
+0x244a 004619 store 1 ,mem_state 
+0x244b 004620 jam 0 ,mem_op 
+0x244c 004621 jam 0 ,mem_state_map 
+0x244d 004622 jam 0 ,mem_lpm_current_mult 
+0x244e 004623 branch supervision_flush 
+:      004626 clear_linkkey:
+0x244f 004627 bpatch patch08_6 ,mem_patch08 
+0x2450 004628 force 0 ,pdata 
+0x2451 004629 store 8 ,mem_link_key 
+0x2452 004630 istore 8 ,contw 
+0x2453 004631 call clear_linkstate 
+0x2454 004632 branch context_traverse_linkkey 
+:      004634 new_conn_timeout:
+0x2455 004635 fetch 1 ,mem_newconnto_counter 
+0x2456 004636 increase -1 ,pdata 
+0x2457 004637 store 1 ,mem_newconnto_counter 
+0x2458 004638 rtn 
+:      004640 new_conn_handle:
+0x2459 004641 fetch 1 ,mem_handle_num 
+0x245a 004642 increase 1 ,pdata 
+0x245b 004643 store 1 ,mem_handle_num 
+0x245c 004644 rtn 
+:      004647 quit_connection:
+0x245d 004648 bpatch patch08_7 ,mem_patch08 
+0x245e 004649 fetch 1 ,mem_hci_cmd 
+0x245f 004650 beq hci_cmd_remote_name_req ,quit_connection_name 
+0x2460 004651 fetch 1 ,mem_lmp_to_send 
+0x2461 004652 bne lmp_name_req ,quit_connection_cont 
+:      004653 quit_connection_name:
+0x2462 004654 call cmd_check_plap 
+0x2463 004655 nbranch quit_connection_cont ,zero 
+0x2464 004656 call master_name_error 
+0x2465 004657 jam 0 ,mem_hci_cmd 
+:      004658 quit_connection_cont:
+0x2466 004659 bpatch patch09_0 ,mem_patch09 
+0x2467 004660 call app_disconn_reason_collect_bt 
+0x2468 004661 call sniff_exit 
+0x2469 004662 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0x246a 004663 call ui_ipc_send_event 
+0x246b 004664 call init_lmp_work 
+0x246c 004665 call l2cap_init_work 
+0x246d 004666 call sp_initialize 
+0x246e 004667 fetch 1 ,mem_state 
+0x246f 004668 set0 state_inconn 
+0x2470 004669 store 1 ,mem_state 
+0x2471 004670 jam 0 ,memui_reconnect_mode 
+0x2472 004672 fetch 1 ,mem_state_map 
+0x2473 004673 compare 0x0 ,pdata ,0xc0 
+0x2474 004674 branch quit_connection_not_clear_mark ,true 
+0x2475 004675 set0 mark_rxbuf_inuse ,mark 
+:      004676 quit_connection_not_clear_mark:
+0x2476 004677 fetch 1 ,mem_arq 
+0x2477 004678 bbit0 wack ,quit_connection_not_clear_tx 
+:      004679 quit_connection_not_clear_tx:
+0x2478 004680 fetch 1 ,mem_op 
+0x2479 004681 rtnbit0 op_txl2cap 
+0x247a 004682 set0 mark_tx_l2cap ,mark 
+0x247b 004683 rtn 
+:      004685 slave_newconn_once:
+0x247c 004686 bpatch patch09_1 ,mem_patch09 
+0x247d 004687 fetch 1 ,extm_newconn_am_addr 
+0x247e 004688 rtn blank 
+0x247f 004689 icopy am_addr 
+0x2480 004690 call slave_conn_recv_packet 
+0x2481 004691 nrtn match 
+0x2482 004692 force type_null ,type 
+0x2483 004693 call slave_conn_send_packet 
+0x2484 004694 deposit am_addr 
+0x2485 004695 store 1 ,mem_amaddr 
+0x2486 004696 force 0 ,pdata 
+0x2487 004697 store 1 ,extm_newconn_am_addr 
+0x2488 004698 rtn 
+:      004704 prepare_tx:
+0x2489 004705 bpatch patch09_2 ,mem_patch09 
+0x248a 004706 fetch 1 ,mem_state 
+0x248b 004707 bbit0 state_insco ,prepare_tx_not_sco 
+0x248c 004708 force type_hv3 ,type 
+0x248d 004709 bmark0 mark_esco ,prepare_tx_not_esco 
+0x248e 004710 call check_esco_amaddr 
+0x248f 004711 nbranch prepare_tx_not_sco ,true 
+0x2490 004712 branch prepare_tx_not_sco ,attempt 
+0x2491 004713 call set_wait_ack 
+0x2492 004714 setarg 2 
+0x2493 004715 store 2 ,mem_retransmission_cnt 
+0x2494 004716 rtn 
+:      004717 prepare_tx_not_esco:
+0x2495 004718 nrtn attempt 
+:      004719 prepare_tx_not_sco:
+0x2496 004720 bpatch patch09_3 ,mem_patch09 
+0x2497 004721 call context_check_all_wack 
+0x2498 004722 nbranch prepare_tx_no_retransmit ,zero 
+0x2499 004723 fetch 1 ,mem_arq 
+0x249a 004724 bbit0 wack ,prepare_tx_pollnull 
+:      004725 prepare_tx_retransmit:
+0x249b 004726 bmark1 mark_loopback ,prepare_tx_loopback 
+0x249c 004727 fetch 1 ,mem_debug_config 
+0x249d 004728 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+0x249e 004729 fetch 2 ,mem_retransmission_cnt 
+0x249f 004730 increase -1 ,pdata 
+0x24a0 004731 store 2 ,mem_retransmission_cnt 
+0x24a1 004732 branch prepare_tx_nomore_retransmit ,blank 
+0x24a2 004733 fetch 1 ,mem_last_type 
+0x24a3 004734 iforce type 
+0x24a4 004735 rtn 
+:      004737 prepare_tx_nomore_retransmit:
+0x24a5 004738 bpatch patch09_4 ,mem_patch09 
+0x24a6 004739 call clear_got_tx 
+:      004740 prepare_tx_no_retransmit:
+0x24a7 004741 call check_esco_amaddr 
+0x24a8 004742 branch prepare_tx_pollnull ,true 
+0x24a9 004743 call send_lmp 
+0x24aa 004744 branch prepare_tx_sendlmp ,user 
+0x24ab 004745 fetch 1 ,mem_op 
+0x24ac 004746 bbit1 op_txl2cap ,prepare_tx_sendl2cap 
+0x24ad 004747 bmark1 mark_loopback ,prepare_tx_loopback 
+0x24ae 004748 fetch 1 ,mem_debug_config 
+0x24af 004749 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+:      004750 prepare_tx_pollnull:
+0x24b0 004751 force type_poll ,type 
+0x24b1 004752 rtn master 
+0x24b2 004753 force type_null ,type 
+0x24b3 004754 rtn 
+:      004755 prepare_tx_loopback:
+0x24b4 004756 bpatch patch09_5 ,mem_patch09 
+0x24b5 004757 fetch 1 ,mem_rx_type 
+0x24b6 004758 iforce type 
+0x24b7 004759 rtnne 1 
+0x24b8 004760 force type_null ,type 
+0x24b9 004761 rtn 
+:      004762 prepare_tx_txpat:
+0x24ba 004763 fetch 1 ,test_mode_packet_type 
+0x24bb 004764 and pdata ,0xf ,type 
+0x24bc 004765 set1 mark_loopback ,mark 
+0x24bd 004766 rtn 
+:      004767 prepare_tx_sendlmp:
+0x24be 004768 force type_lmp ,type 
+0x24bf 004769 branch set_wait_ack 
+:      004770 prepare_tx_sendl2cap:
+0x24c0 004771 call tx_l2cap_type 
+:      004773 set_wait_ack:
+0x24c1 004774 bpatch patch09_6 ,mem_patch09 
+0x24c2 004775 fetcht 1 ,mem_arq 
+0x24c3 004776 set1 wack ,temp 
+0x24c4 004777 storet 1 ,mem_arq 
+0x24c5 004778 deposit type 
+0x24c6 004779 store 1 ,mem_last_type 
+0x24c7 004780 setarg 0xffff 
+0x24c8 004781 store 2 ,mem_retransmission_cnt 
+0x24c9 004782 rtn 
+:      004784 tx_l2cap_type:
+0x24ca 004785 bpatch patch09_7 ,mem_patch09 
+0x24cb 004786 fetch 1 ,mem_state_map 
+0x24cc 004787 isolate1 smap_edr ,pdata 
+0x24cd 004788 fetch 2 ,mem_tx_len 
+0x24ce 004789 branch tx_l2cap_type_edr ,true 
+0x24cf 004790 force type_dm1 ,type 
+0x24d0 004791 sub pdata ,17 ,null 
+0x24d1 004792 rtn positive 
+0x24d2 004793 force type_dh1 ,type 
+0x24d3 004794 sub pdata ,27 ,null 
+0x24d4 004795 rtn positive 
+0x24d5 004796 force type_dm3 ,type 
+0x24d6 004797 sub pdata ,121 ,null 
+0x24d7 004798 rtn positive 
+0x24d8 004799 force type_dh3 ,type 
+0x24d9 004800 sub pdata ,183 ,null 
+0x24da 004801 rtn positive 
+0x24db 004802 force type_dm5 ,type 
+0x24dc 004803 sub pdata ,224 ,null 
+0x24dd 004804 rtn positive 
+0x24de 004805 force type_dh5 ,type 
+0x24df 004806 rtn 
+:      004807 tx_l2cap_type_edr:
+0x24e0 004808 force type_dm1 ,type 
+0x24e1 004809 sub pdata ,17 ,null 
+0x24e2 004810 rtn positive 
+0x24e3 004811 force type_dh1 ,type 
+0x24e4 004812 sub pdata ,54 ,null 
+0x24e5 004813 rtn positive 
+0x24e6 004814 force type_dm3 ,type 
+0x24e7 004815 arg 367 ,temp 
+0x24e8 004816 isub temp ,null 
+0x24e9 004817 nrtn positive 
+0x24ea 004818 force type_dm5 ,type 
+0x24eb 004819 arg 679 ,temp 
+0x24ec 004820 isub temp ,null 
+0x24ed 004821 nrtn positive 
+0x24ee 004822 force type_dh5 ,type 
+0x24ef 004823 rtn 
+:      004832 slave_receive_master_slot:
+0x24f0 004833 fetch 1 ,mem_state 
+0x24f1 004834 bbit0 state_insniff ,slave_receive_notsniff 
+0x24f2 004835 fetch 2 ,mem_tsniff 
+0x24f3 004836 branch slave_receive_notsniff ,blank 
+0x24f4 004837 nbranch slave_receive_sniff ,attempt 
+:      004838 slave_receive_notsniff:
+0x24f5 004839 call rf_setup_time_master_slot 
+:      004840 slave_receive_access:
+0x24f6 004841 add clke_bt ,1 ,bt_clk 
+:      004842 slave_receive_sniff:
+0x24f7 004843 enable swfine 
+0x24f8 004844 fetch 2 ,mem_rx_window 
+0x24f9 004845 rshift pdata ,pdata 
+0x24fa 004846 arg param_pll_setup ,temp 
+0x24fb 004847 iadd temp ,pdata 
+0x24fc 004848 call ahead_window 
+0x24fd 004849 call fetch_extm_bt_adr 
+0x24fe 004850 force 0x03 ,freq_mode 
+0x24ff 004851 call rx_radio_freq 
+0x2500 004852 call init_rx_packet_flags 
+0x2501 004853 call prep_crypt 
+0x2502 004854 bpatch patch0a_0 ,mem_patch0a 
+0x2503 004855 fetch 2 ,mem_rx_window 
+0x2504 004856 rshift pdata ,pdata 
+0x2505 004857 call ahead_window 
+0x2506 004858 call start_receiver 
+0x2507 004859 enable decode_fec0 
+0x2508 004860 fetch 2 ,mem_rx_window 
+0x2509 004861 arg param_clke_cal ,temp 
+0x250a 004862 iadd temp ,stop_watch 
+0x250b 004863 correlate null ,timeout 
+0x250c 004864 copy clke ,temp 
+0x250d 004865 storet 6 ,mem_sync_clke 
+0x250e 004866 disable decode_fec0 
+0x250f 004867 nrtn sync 
+0x2510 004868 arg param_clke_cal ,clke_rt 
+0x2511 004869 copy bt_clk ,clke_bt 
+0x2512 004870 branch lpm_adjust_clk ,wake 
+0x2513 004871 rtn 
+:      004874 slave_conn_recv_packet:
+0x2514 004875 bpatch patch0a_1 ,mem_patch0a 
+0x2515 004876 call slave_receive_master_slot 
+0x2516 004877 nbranch shutdown_radio ,sync 
+0x2517 004878 call save_rssi 
+0x2518 004879 bmark0 mark_testmode ,receive_packet 
+0x2519 004880 fetch 2 ,mem_tst_pktcnt_sync 
+0x251a 004881 increase 1 ,pdata 
+0x251b 004882 store 2 ,mem_tst_pktcnt_sync 
+:      004883 receive_packet:
+0x251c 004884 rshift bt_clk ,temp 
+0x251d 004885 or temp ,0x40 ,white_init 
+:      004886 receive_packet_whitened:
+0x251e 004887 bpatch patch0a_2 ,mem_patch0a 
+0x251f 004888 enable enable_white 
+0x2520 004889 enable enable_hec 
+0x2521 004890 enable decode_fec1 
+0x2522 004891 parse demod ,bucket ,3 
+0x2523 004892 rshift8 pwindow ,pdata 
+0x2524 004893 store 1 ,mem_temp_am_addr 
+0x2525 004894 parse demod ,bucket ,4 
+0x2526 004895 inject bucket ,7 
+0x2527 004896 copy pwindow ,pdata 
+0x2528 004897 store 1 ,mem_rx_type 
+0x2529 004898 parse demod ,bucket ,3 
+0x252a 004899 rshift8 pwindow ,pdata 
+0x252b 004900 store 1 ,mem_temp_arq 
+0x252c 004901 fetch 1 ,mem_rx_type 
+0x252d 004902 sub pdata ,3 ,null 
+0x252e 004903 branch receive_packet_noedr ,positive 
+0x252f 004904 beq 7 ,receive_packet_noedr 
+0x2530 004905 fetch 1 ,mem_state_map 
+0x2531 004906 isolate1 smap_edr ,pdata 
+0x2532 004907 setflag true ,psk ,radio_ctrl 
+:      004908 receive_packet_noedr:
+0x2533 004909 bpatch patch0a_3 ,mem_patch0a 
+0x2534 004910 parse demod ,bucket ,8 
+0x2535 004911 disable decode_fec1 
+0x2536 004912 disable enable_hec 
+0x2537 004913 branch error_header ,crc_failed 
+0x2538 004914 bmark0 mark_testmode ,receive_packet_amchk 
+0x2539 004915 fetch 2 ,mem_tst_pktcnt_hec 
+0x253a 004916 increase 1 ,pdata 
+0x253b 004917 store 2 ,mem_tst_pktcnt_hec 
+:      004918 receive_packet_amchk:
+0x253c 004919 bpatch patch0a_4 ,mem_patch0a 
+0x253d 004920 fetch 1 ,mem_temp_am_addr 
+0x253e 004921 compare 0 ,pdata ,0x07 
+0x253f 004922 setflag true ,mark_am_addr_broadcast ,mark 
+0x2540 004923 branch am_addr_ok ,true 
+0x2541 004924 icompare 0x07 ,am_addr 
+0x2542 004925 branch am_addr_match ,true 
+0x2543 004926 bmark0 mark_esco ,end_of_packet 
+0x2544 004927 fetcht 1 ,mem_saved_amaddr 
+0x2545 004928 icompare 0x7 ,temp 
+0x2546 004929 nbranch end_of_packet ,true 
+0x2547 004930 fetch 1 ,mem_arq 
+0x2548 004931 set0 arqnx ,pdata 
+0x2549 004932 set1 flowx ,pdata 
+0x254a 004933 store 1 ,mem_arq 
+:      004934 am_addr_match:
+0x254b 004935 enable match 
+:      004936 am_addr_ok:
+0x254c 004937 bpatch patch0a_5 ,mem_patch0a 
+0x254d 004938 fetch 1 ,mem_rx_type 
+0x254e 004939 icopy type 
+0x254f 004940 bmark1 mark_am_addr_broadcast ,arqn_bypass 
+0x2550 004941 fetcht 1 ,mem_temp_arq 
+0x2551 004942 fetch 1 ,mem_arq 
+0x2552 004943 set0 flow ,pdata 
+0x2553 004944 isolate1 flow ,temp 
+0x2554 004945 setflag true ,flow ,pdata 
+0x2555 004946 isolate1 arqn ,temp 
+0x2556 004947 setflag true ,arqn ,pdata 
+0x2557 004948 store 1 ,mem_arq 
+0x2558 004949 isolate0 arqn ,temp 
+0x2559 004950 branch arqn_bypass ,true 
+0x255a 004951 call clear_got_tx 
+:      004952 arqn_bypass:
+0x255b 004953 bpatch patch0a_6 ,mem_patch0a 
+0x255c 004954 arg 0 ,temp 
+0x255d 004955 call reserve_slot 
+0x255e 004956 and type ,0xf ,pdata 
+0x255f 004957 beq type_poll ,process_poll 
+0x2560 004958 beq type_null ,end_of_packet 
+0x2561 004959 beq type_fhs ,process_fhs 
+0x2562 004960 fetcht 1 ,mem_temp_arq 
+0x2563 004961 fetch 1 ,mem_arq 
+0x2564 004962 icompare 0x04 ,temp 
+0x2565 004963 nbranch rx_type_dispatch ,true 
+0x2566 004964 bmark0 mark_am_addr_broadcast ,failed_seqn 
+0x2567 004965 bbit0 bcast1 ,rx_type_dispatch 
+:      004966 failed_seqn:
+0x2568 004967 set1 mark_old_packet ,mark 
+:      004968 rx_type_dispatch:
+0x2569 004969 bpatch patch0a_7 ,mem_patch0a 
+0x256a 004970 deposit type 
+0x256b 004971 beq type_dm1 ,process_dm1 
+0x256c 004972 beq type_dh1 ,process_dh1 
+0x256d 004973 beq type_hv3 ,process_hev 
+0x256e 004974 beq type_3dh1 ,process_3dh1 
+0x256f 004975 arg 4 ,temp 
+0x2570 004976 call reserve_slot 
+0x2571 004977 beq type_dm3 ,process_dm3 
+0x2572 004978 beq type_dh3 ,process_dh3 
+0x2573 004979 arg 8 ,temp 
+0x2574 004980 call reserve_slot 
+0x2575 004981 beq type_dm5 ,process_dm5 
+0x2576 004982 beq type_dh5 ,process_dh5 
+0x2577 004983 rtn 
+:      004986 process_hev:
+0x2578 004987 bpatch patch0b_0 ,mem_patch0b 
+0x2579 004988 enable decode_fec0 
+0x257a 004989 enable enable_crc 
+0x257b 004990 enable encrypt 
+0x257c 004991 arg mem_sco_ibuf ,contw 
+0x257d 004992 force 30 ,loopcnt 
+:      004993 process_hev_loop:
+0x257e 004994 parse demod ,bucket ,8 
+0x257f 004995 rshift3 pwindow ,pdata 
+0x2580 004996 istore 1 ,contw 
+0x2581 004997 loop process_hev_loop 
+0x2582 004998 bmark0 mark_esco ,end_of_packet 
+0x2583 004999 parse demod ,bucket ,16 
+0x2584 005000 nsetflag crc_failed ,mark_esco_rxok ,mark 
+0x2585 005001 branch error_payload ,crc_failed 
+0x2586 005002 branch ack_payload 
+:      005005 process_poll:
+0x2587 005006 branch end_of_packet 
+:      005008 process_dm3:
+:      005009 process_dm5:
+0x2588 005010 set1 mark_longpacket ,mark 
+:      005011 process_dm1:
+0x2589 005012 enable decode_fec2 
+0x258a 005013 branch process_dmh 
+:      005015 process_dh3:
+:      005016 process_dh5:
+0x258b 005017 set1 mark_longpacket ,mark 
+:      005018 process_3dh1:
+0x258c 005019 set1 psk3m ,radio_ctrl 
+:      005020 process_dh1:
+0x258d 005021 enable decode_fec0 
+:      005022 process_dmh:
+0x258e 005023 bpatch patch0b_1 ,mem_patch0b 
+0x258f 005024 bmark1 mark_rxbuf_inuse ,end_of_packet 
+0x2590 005025 isolate0 psk ,radio_ctrl 
+0x2591 005026 branch process_dmh_noedr ,true 
+0x2592 005027 disable enable_white 
+0x2593 005028 enable decode_fec0 
+0x2594 005029 disable decode_fec2 
+0x2595 005030 add clkn_bt ,2 ,timeup 
+0x2596 005031 correlate clkn_bt ,meet 
+0x2597 005032 nbranch error_payload ,sync 
+0x2598 005033 set1 mark_longpacket ,mark 
+0x2599 005034 enable enable_white 
+:      005035 process_dmh_noedr:
+0x259a 005036 bpatch patch0b_2 ,mem_patch0b 
+0x259b 005037 enable encrypt 
+0x259c 005038 enable enable_crc 
+0x259d 005039 parse demod ,bucket ,3 
+0x259e 005040 rshift8 pwindow ,pdata 
+0x259f 005041 store 1 ,mem_lch_code 
+0x25a0 005042 parse demod ,bucket ,5 
+0x25a1 005043 bmark1 mark_longpacket ,process_dmh_long 
+0x25a2 005044 rshift3 pwindow ,loopcnt 
+0x25a3 005045 rshift3 loopcnt ,loopcnt 
+0x25a4 005046 branch process_dmh_common 
+:      005047 process_dmh_long:
+0x25a5 005048 parse demod ,bucket ,5 
+0x25a6 005049 rshift pwindow ,loopcnt 
+0x25a7 005050 parse demod ,bucket ,3 
+:      005051 process_dmh_common:
+0x25a8 005052 bpatch patch0b_3 ,mem_patch0b 
+0x25a9 005053 deposit loopcnt 
+0x25aa 005054 store 2 ,mem_len 
+0x25ab 005055 branch process_dmh_data_end ,blank 
+0x25ac 005056 isub mask3ff ,null 
+0x25ad 005057 branch error_payload ,positive 
+0x25ae 005058 bpatch patch0b_4 ,mem_patch0b 
+0x25af 005059 set0 mark_fhs_eir ,mark 
+0x25b0 005060 fetch 1 ,mem_lch_code 
+0x25b1 005061 and_into 0x03 ,pdata 
+0x25b2 005062 arg mem_rxbuf ,contw 
+0x25b3 005063 beq llid_lmp ,process_lmp 
+0x25b4 005064 bmark1 mark_testmode ,process_dmh_data 
+0x25b5 005066 fetch 1 ,mem_lch_code 
+0x25b6 005067 and_into 0x03 ,pdata 
+0x25b7 005068 beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
+0x25b8 005069 beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
+0x25b9 005070 branch error_payload 
+:      005072 process_lmp:
+0x25ba 005073 fetch 2 ,mem_len 
+0x25bb 005074 sub pdata ,0x70 ,null 
+0x25bc 005075 nbranch error_payload ,positive 
+0x25bd 005076 bmark1 mark_old_packet ,ack_payload 
+0x25be 005077 branch process_dmh_data 
+:      005080 process_dmh_data_l2cap_start_pkt:
+0x25bf 005081 bpatch patch0b_5 ,mem_patch0b 
+0x25c0 005082 bmark1 mark_old_packet ,ack_payload 
+0x25c1 005083 fetch 2 ,mem_len 
+0x25c2 005084 arg 0x2e0 ,temp 
+0x25c3 005085 isub temp ,null 
+0x25c4 005086 branch error_payload ,positive 
+0x25c5 005087 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x25c6 005088 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
+0x25c7 005089 bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
+0x25c8 005090 branch end_of_packet 
+:      005091 process_dmh_data_into_buff1:
+0x25c9 005092 jam 1 ,mem_l2cap_rxbuff_new 
+0x25ca 005093 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25cb 005094 bne 0 ,end_of_packet 
+0x25cc 005095 arg mem_l2cap_rxbuff1 ,contw 
+0x25cd 005096 branch process_dmh_data 
+:      005097 process_dmh_data_into_buff2:
+0x25ce 005098 jam 2 ,mem_l2cap_rxbuff_new 
+0x25cf 005099 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25d0 005100 bne 0 ,end_of_packet 
+0x25d1 005101 arg mem_l2cap_rxbuff2 ,contw 
+0x25d2 005102 branch process_dmh_data 
+:      005104 process_dmh_data_l2cap_continue_pkt:
+0x25d3 005105 bpatch patch0b_6 ,mem_patch0b 
+0x25d4 005106 bmark1 mark_old_packet ,ack_payload 
+0x25d5 005107 fetch 2 ,mem_len 
+0x25d6 005108 arg 0x2e0 ,temp 
+0x25d7 005109 isub temp ,null 
+0x25d8 005110 branch error_payload ,positive 
+0x25d9 005111 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25da 005112 beq 1 ,process_dmh_data_l2cap_continue_pkt1 
+0x25db 005113 beq 2 ,process_dmh_data_l2cap_continue_pkt2 
+0x25dc 005114 branch end_of_packet 
+:      005115 process_dmh_data_l2cap_continue_pkt1:
+0x25dd 005116 arg mem_l2cap_rxbuff1 ,contw 
+0x25de 005117 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25df 005118 iadd contw ,contw 
+0x25e0 005119 branch process_dmh_data 
+:      005120 process_dmh_data_l2cap_continue_pkt2:
+0x25e1 005121 arg mem_l2cap_rxbuff2 ,contw 
+0x25e2 005122 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25e3 005123 iadd contw ,contw 
+:      005124 process_dmh_data:
+0x25e4 005125 parse demod ,bucket ,8 
+0x25e5 005126 rshift3 pwindow ,pdata 
+0x25e6 005127 istore 1 ,contw 
+0x25e7 005128 loop process_dmh_data 
+:      005129 process_dmh_data_end:
+0x25e8 005130 bpatch patch0b_7 ,mem_patch0b 
+0x25e9 005131 parse demod ,bucket ,16 
+0x25ea 005132 branch error_payload_crc ,crc_failed 
+0x25eb 005133 fetch 1 ,mem_l2cap_flow_ctrl_flag 
+0x25ec 005134 beq l2cap_flow_ctrl_enable ,end_of_packet 
+0x25ed 005135 bmark1 mark_testmode ,process_dmh_cont 
+0x25ee 005136 bmark1 mark_old_packet ,redundant_payload 
+0x25ef 005137 fetch 1 ,mem_lch_code 
+0x25f0 005138 compare 3 ,pdata ,3 
+0x25f1 005139 branch process_dmh_cont ,true 
+0x25f2 005140 fetch 2 ,mem_len 
+0x25f3 005141 branch process_dmh_cont ,blank 
+0x25f4 005142 bpatch patch0c_0 ,mem_patch0c 
+0x25f5 005143 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25f6 005144 beq 1 ,process_l2cap_pass_crc_buff1 
+0x25f7 005145 beq 2 ,process_l2cap_pass_crc_buff2 
+0x25f8 005146 branch assert 
+:      005147 process_l2cap_pass_crc_buff1:
+0x25f9 005148 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25fa 005149 fetcht 2 ,mem_len 
+0x25fb 005150 iadd temp ,pdata 
+0x25fc 005151 store 2 ,mem_l2cap_rxbuff1_len 
+0x25fd 005152 beq 0 ,assert 
+0x25fe 005153 fetcht 2 ,mem_l2cap_rxbuff1 
+0x25ff 005154 increase 4 ,temp 
+0x2600 005155 isub temp ,null 
+0x2601 005156 call l2cap_buff1_inuse ,zero 
+0x2602 005157 branch process_dmh_cont 
+:      005158 process_l2cap_pass_crc_buff2:
+0x2603 005159 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x2604 005160 fetcht 2 ,mem_len 
+0x2605 005161 iadd temp ,pdata 
+0x2606 005162 store 2 ,mem_l2cap_rxbuff2_len 
+0x2607 005163 beq 0 ,assert 
+0x2608 005164 fetcht 2 ,mem_l2cap_rxbuff2 
+0x2609 005165 add temp ,4 ,temp 
+0x260a 005166 isub temp ,null 
+0x260b 005167 call l2cap_buff2_inuse ,zero 
+0x260c 005168 branch process_dmh_cont 
+:      005169 process_dmh_cont:
+0x260d 005170 bpatch patch0c_1 ,mem_patch0c 
+0x260e 005171 fetcht 1 ,mem_state_map 
+0x260f 005172 fetch 1 ,mem_lch_code 
+0x2610 005173 compare 3 ,pdata ,0x03 
+0x2611 005174 setflag true ,smap_rxlmp ,temp 
+0x2612 005175 nsetflag true ,smap_rxl2cap ,temp 
+0x2613 005176 storet 1 ,mem_state_map 
+0x2614 005177 nbranch process_dmh_cont_rxbuf_not_use ,true 
+0x2615 005178 set1 mark_rxbuf_inuse ,mark 
+:      005179 process_dmh_cont_rxbuf_not_use:
+0x2616 005180 bmark0 mark_testmode ,ack_payload 
+0x2617 005181 isolate1 smap_rxlmp ,temp 
+0x2618 005182 branch ack_payload ,true 
+0x2619 005183 fetch 2 ,mem_tst_pktcnt_crc 
+0x261a 005184 increase 1 ,pdata 
+0x261b 005185 store 2 ,mem_tst_pktcnt_crc 
+0x261c 005186 set1 mark_loopback ,mark 
+0x261d 005187 set0 smap_rxl2cap ,temp 
+0x261e 005188 set0 mark_rxbuf_inuse ,mark 
+0x261f 005189 storet 1 ,mem_state_map 
+:      005190 ack_payload:
+0x2620 005191 bpatch patch0c_2 ,mem_patch0c 
+0x2621 005192 fetcht 1 ,mem_temp_arq 
+0x2622 005193 fetch 1 ,mem_arq 
+0x2623 005194 set1 arqnx ,pdata 
+0x2624 005195 isolate1 seqn ,temp 
+0x2625 005196 setflag true ,seqn ,pdata 
+0x2626 005197 isolate1 mark_am_addr_broadcast ,mark 
+0x2627 005198 setflag true ,bcast1 ,pdata 
+0x2628 005199 store 1 ,mem_arq 
+0x2629 005200 fetch 2 ,mem_len 
+0x262a 005201 nbranch end_of_packet ,blank 
+0x262b 005202 fetch 1 ,mem_state_map 
+0x262c 005203 set0 smap_rxl2cap ,pdata 
+0x262d 005204 store 1 ,mem_state_map 
+0x262e 005205 fetch 1 ,mem_lch_code 
+0x262f 005206 compare 0x01 ,pdata ,0x07 
+0x2630 005208 branch end_of_packet 
+:      005210 error_header:
+0x2631 005211 bpatch patch0c_3 ,mem_patch0c 
+0x2632 005212 disable match 
+0x2633 005213 fetch 2 ,mem_rx_hec_err 
+0x2634 005214 increase 1 ,pdata 
+0x2635 005215 store 2 ,mem_rx_hec_err 
+0x2636 005216 branch end_of_packet 
+:      005217 error_payload_crc:
+0x2637 005218 fetch 2 ,mem_rx_crc_err 
+0x2638 005219 increase 1 ,pdata 
+0x2639 005220 store 2 ,mem_rx_crc_err 
+0x263a 005221 call discard_pkt 
+0x263b 005222 bmark0 mark_testmode ,error_payload 
+0x263c 005223 set1 mark_loopback ,mark 
+:      005224 error_payload:
+0x263d 005225 branch end_of_packet 
+:      005227 discard_pkt:
+0x263e 005228 bpatch patch0c_4 ,mem_patch0c 
+0x263f 005229 fetch 1 ,mem_lch_code 
+0x2640 005230 compare 3 ,pdata ,0x03 
+0x2641 005231 nbranch discard_pkt_l2cap ,true 
+:      005232 discard_pkt_lmp:
+0x2642 005233 fetcht 1 ,mem_state_map 
+0x2643 005234 set0 smap_rxlmp ,temp 
+0x2644 005235 storet 1 ,mem_state_map 
+0x2645 005236 rtn 
+:      005237 discard_pkt_l2cap:
+0x2646 005240 fetcht 1 ,mem_state_map 
+0x2647 005241 set0 smap_rxl2cap ,temp 
+0x2648 005242 storet 1 ,mem_state_map 
+0x2649 005243 branch h4_send_acl_trigger_clear 
+:      005245 redundant_payload:
+0x264a 005246 fetch 1 ,mem_arq 
+0x264b 005247 set1 arqnx ,pdata 
+0x264c 005248 store 1 ,mem_arq 
+:      005249 end_of_packet:
+0x264d 005250 bpatch patch0c_5 ,mem_patch0c 
+0x264e 005251 disable encode_fec0 
+0x264f 005252 disable encode_fec2 
+0x2650 005253 disable decode_fec0 
+0x2651 005254 disable decode_fec2 
+0x2652 005255 disable enable_crc 
+0x2653 005256 disable encrypt 
+0x2654 005257 disable enable_white 
+0x2655 005258 branch shutdown_radio ,is_rx 
+0x2656 005259 until null ,tx_clear 
+0x2657 005260 nop 100 
+0x2658 005261 branch shutdown_radio 
+:      005263 process_fhs:
+0x2659 005264 bpatch patch0c_6 ,mem_patch0c 
+0x265a 005265 enable enable_crc 
+0x265b 005266 enable decode_fec2 
+0x265c 005267 parse demod ,bucket ,72 
+0x265d 005268 isolate1 58 ,pdata 
+0x265e 005269 setflag true ,mark_fhs_eir ,mark 
+0x265f 005270 copy bt_adr ,temp 
+0x2660 005271 ialigned bt_adr 
+0x2661 005272 ialigned fhs0 
+0x2662 005273 pulse recalc 
+0x2663 005274 setsect 2 ,0xfffff 
+0x2664 005275 setsect 3 ,0x0ffff 
+0x2665 005276 nop 32 
+0x2666 005277 iverify fhs_parity 
+0x2667 005278 deposit lap 
+0x2668 005279 store 3 ,extm_lap 
+0x2669 005280 deposit uap 
+0x266a 005281 store 1 ,extm_uap 
+0x266b 005282 copy temp ,bt_adr 
+0x266c 005283 branch fhs_parity_ok ,true 
+0x266d 005284 branch error_payload 
+:      005285 fhs_parity_ok:
+0x266e 005286 bpatch patch0c_7 ,mem_patch0c 
+0x266f 005287 parse demod ,bucket ,72 
+0x2670 005288 ialigned fhs1 
+0x2671 005289 ialigned am_addr 
+0x2672 005290 ialigned nap 
+0x2673 005291 ialigned regb 
+0x2674 005292 force 0 ,pdata 
+0x2675 005293 parse demod ,bucket ,16 
+0x2676 005294 branch error_payload ,crc_failed 
+0x2677 005295 setarg 0x0ffffffc 
+0x2678 005296 iand regb ,pdata 
+0x2679 005297 store 4 ,mem_clke_bt 
+0x267a 005298 deposit fhs_class 
+0x267b 005299 store 3 ,extm_class 
+0x267c 005300 deposit fhs_misc 
+0x267d 005301 store 1 ,extm_fhs_misc 
+0x267e 005302 deposit am_addr 
+0x267f 005303 store 1 ,extm_newconn_am_addr 
+0x2680 005304 deposit nap 
+0x2681 005305 store 2 ,extm_nap 
+0x2682 005306 deposit bt_clk 
+0x2683 005307 inject rxf ,32 
+0x2684 005308 compare type_fhs ,type ,0x0f 
+0x2685 005309 setflag true ,mark_fhs_already_good ,mark 
+0x2686 005310 branch end_of_packet 
+:      005312 clear_got_tx:
+0x2687 005313 bpatch patch0d_0 ,mem_patch0d 
+0x2688 005314 fetch 1 ,mem_arq 
+0x2689 005315 rtnbit0 wack 
+0x268a 005316 set0 wack ,pdata 
+0x268b 005317 setflip seqnx ,pdata 
+0x268c 005318 store 1 ,mem_arq 
+0x268d 005319 fetch 1 ,mem_last_type 
+0x268e 005320 beq type_lmp ,clear_got_txlmp 
+0x268f 005321 rtneq type_hv3 
+0x2690 005322 fetch 1 ,mem_op 
+0x2691 005323 rtnbit0 op_txl2cap ,pdata 
+0x2692 005324 set0 op_txl2cap ,pdata 
+0x2693 005325 set1 op_pkt_comp ,pdata 
+0x2694 005326 store 1 ,mem_op 
+0x2695 005327 set0 mark_tx_l2cap ,mark 
+0x2696 005328 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x2697 005329 nrtn blank 
+0x2698 005330 fetch 1 ,mem_op 
+0x2699 005331 set0 op_pkt_comp ,pdata 
+0x269a 005332 store 1 ,mem_op 
+0x269b 005333 branch l2cap_malloc_free 
+:      005335 clear_got_txlmp:
+0x269c 005336 bpatch patch0d_1 ,mem_patch0d 
+0x269d 005337 fetch 1 ,mem_lmo_header_opcode 
+0x269e 005338 rshift pdata ,pdata 
+0x269f 005339 beq lmp_start_encryption_req ,start_encryption 
+0x26a0 005340 beq lmp_stop_encryption_req ,stop_encryption 
+0x26a1 005341 beq lmp_unsniff_req ,sniff_exit 
+0x26a2 005342 beq lmp_escape ,clear_lmp_escape 
+0x26a3 005343 rtnne lmp_accepted 
+0x26a4 005344 fetch 1 ,mem_lmo_payload 
+0x26a5 005345 beq lmp_sco_link_req ,sco_link_req_by_slave 
+0x26a6 005346 beq lmp_start_encryption_req ,clear_send_setup_complete 
+0x26a7 005347 rtn 
+:      005349 clear_lmp_escape:
+0x26a8 005350 fetch 1 ,mem_lmo_payload 
+0x26a9 005351 set1 7 ,pdata 
+0x26aa 005352 rtn 
+:      005353 clear_send_setup_complete:
+0x26ab 005354 rtn master 
+0x26ac 005355 fetch 1 ,mem_state 
+0x26ad 005356 rtnbit1 state_conn_comp 
+0x26ae 005357 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x26af 005358 rtn 
+:      005361 sco_link_req_by_slave:
+0x26b0 005362 rtn master 
+0x26b1 005363 fetch 1 ,mem_mode 
+0x26b2 005364 isolate1 send_sco_when_slave ,pdata 
+0x26b3 005365 branch clean_mem_mode ,true 
+0x26b4 005367 rtn 
+:      005368 clean_mem_mode:
+0x26b5 005369 set0 send_sco_when_slave ,pdata 
+0x26b6 005370 store 1 ,mem_mode 
+0x26b7 005371 rtn 
+:      005373 start_encryption:
+0x26b8 005374 bpatch patch0d_2 ,mem_patch0d 
+0x26b9 005375 fetch 1 ,mem_state_map 
+0x26ba 005376 set1 smap_encryption ,pdata 
+0x26bb 005377 store 1 ,mem_state_map 
+0x26bc 005378 jam 1 ,core_encrypt 
+0x26bd 005379 fetch 1 ,mem_state 
+0x26be 005380 isolate1 state_conn_comp ,pdata 
+0x26bf 005381 rtn 
+:      005383 stop_encryption:
+0x26c0 005384 bpatch patch0d_3 ,mem_patch0d 
+0x26c1 005385 fetch 1 ,mem_state_map 
+0x26c2 005386 set0 smap_encryption ,pdata 
+0x26c3 005387 store 1 ,mem_state_map 
+0x26c4 005388 jam 0 ,core_encrypt 
+0x26c5 005389 rtn 
+:      005392 sniff_init:
+0x26c6 005393 bpatch patch0d_4 ,mem_patch0d 
+0x26c7 005394 copy clkn_bt ,pdata 
+0x26c8 005395 store 4 ,mem_lpm_delay_after_sniff 
+0x26c9 005396 add clkn_bt ,3 ,rega 
+0x26ca 005397 branch sniff_init_master ,master 
+0x26cb 005398 add clke_bt ,3 ,rega 
+:      005399 sniff_init_master:
+0x26cc 005400 fetcht 2 ,mem_tsniff 
+0x26cd 005401 deposit rega 
+0x26ce 005402 set0 27 ,pdata 
+0x26cf 005403 idiv temp 
+0x26d0 005404 fetch 2 ,mem_dsniff 
+0x26d1 005405 call wait_div_end 
+0x26d2 005406 remainder regc 
+0x26d3 005407 isub regc ,pdata 
+0x26d4 005408 branch sniff_init_nowrap ,positive 
+0x26d5 005409 iadd temp ,pdata 
+:      005410 sniff_init_nowrap:
+0x26d6 005411 iadd rega ,pdata 
+0x26d7 005412 store 4 ,mem_sniff_anchor 
+0x26d8 005413 jam switch_flag_init ,mem_switch_flag 
+0x26d9 005414 fetch 1 ,mem_state 
+0x26da 005415 set1 state_insniff ,pdata 
+0x26db 005416 store 1 ,mem_state 
+0x26dc 005417 fetch 1 ,mem_sniff_attempt 
+0x26dd 005418 store 1 ,mem_current_sniff_attempt 
+0x26de 005419 setarg 0 
+0x26df 005420 store 3 ,mem_sniff_rcv 
+0x26e0 005421 store 3 ,mem_sniff_lost 
+0x26e1 005422 store 1 ,mem_sniff_unint_lost 
+0x26e2 005423 jam bt_evt_enter_sniff ,mem_fifo_temp 
+0x26e3 005424 call ui_ipc_send_event 
+0x26e4 005425 fetch 2 ,mem_rx_window_sniff 
+0x26e5 005426 store 2 ,mem_rx_window 
+0x26e6 005427 nrtn master 
+0x26e7 005428 add am_addr ,-1 ,queue 
+0x26e8 005429 rtn 
+:      005431 sniff_exit:
+0x26e9 005432 bpatch patch0d_5 ,mem_patch0d 
+0x26ea 005433 fetch 1 ,mem_state 
+0x26eb 005434 rtnbit0 state_insniff 
+0x26ec 005435 set0 state_insniff ,pdata 
+0x26ed 005436 store 1 ,mem_state 
+0x26ee 005437 fetch 2 ,mem_rx_window_init 
+0x26ef 005438 store 2 ,mem_rx_window 
+0x26f0 005439 disable wake 
+0x26f1 005440 jam bt_evt_exit_sniff ,mem_fifo_temp 
+0x26f2 005441 branch ui_ipc_send_event 
+:      005444 check_attempt:
+0x26f3 005445 bpatch patch0d_6 ,mem_patch0d 
+0x26f4 005446 enable attempt 
+0x26f5 005447 fetch 1 ,mem_state 
+0x26f6 005448 bbit1 state_insniff ,check_attempt_sniff 
+0x26f7 005449 rtnmark1 mark_testmode 
+0x26f8 005450 fetch 1 ,mem_arq 
+0x26f9 005451 rtnbit1 wack 
+0x26fa 005452 fetch 1 ,mem_lmp_to_send 
+0x26fb 005453 nrtn blank 
+0x26fc 005454 fetch 1 ,mem_op 
+0x26fd 005455 rtnbit1 op_txl2cap 
+:      005456 check_attempt_nomore:
+0x26fe 005457 force 0 ,pdata 
+0x26ff 005458 rtn 
+:      005460 check_attempt_sniff:
+0x2700 005461 bbit0 state_insco ,check_attempt_not_sco 
+0x2701 005462 fetch 1 ,mem_current_sniff_attempt 
+0x2702 005463 beq 2 ,check_attempt_sniff_restore_sco 
+0x2703 005464 fetch 1 ,mem_arq 
+0x2704 005465 bbit1 wack ,check_attempt_notimeout 
+0x2705 005466 bmark0 mark_esco_rxok ,check_attempt_notimeout 
+:      005467 check_attempt_sniff_restore_sco:
+0x2706 005468 nbranch check_attempt_notimeout ,master 
+0x2707 005469 fetch 1 ,mem_lmp_to_send 
+0x2708 005470 nbranch check_attempt_notimeout ,blank 
+:      005471 check_attempt_sco_master:
+0x2709 005472 fetch 1 ,mem_sco_poll 
+0x270a 005473 increase -1 ,pdata 
+0x270b 005474 store 1 ,mem_sco_poll 
+0x270c 005475 nbranch check_attempt_nomore ,blank 
+0x270d 005476 jam param_sco_poll ,mem_sco_poll 
+0x270e 005477 branch check_attempt_notimeout 
+:      005484 check_attempt_not_sco:
+0x270f 005485 fetch 1 ,mem_current_sniff_attempt 
+0x2710 005486 bne 1 ,check_attempt_notimeout 
+0x2711 005487 fetch 1 ,mem_current_sniff_timeout 
+0x2712 005488 branch check_attempt_notimeout ,blank 
+0x2713 005489 increase -1 ,pdata 
+0x2714 005490 store 1 ,mem_current_sniff_timeout 
+0x2715 005491 fetch 1 ,mem_arq 
+0x2716 005492 rtnbit1 wack 
+0x2717 005493 nrtn match 
+:      005494 check_attempt_notimeout:
+0x2718 005495 fetch 1 ,mem_current_sniff_attempt 
+0x2719 005496 increase -1 ,pdata 
+0x271a 005497 store 1 ,mem_current_sniff_attempt 
+0x271b 005498 rtn 
+:      005509 sniff_check_window:
+0x271c 005510 bpatch patch0d_7 ,mem_patch0d 
+0x271d 005511 disable swfine 
+0x271e 005512 copy temp ,stop_watch 
+0x271f 005513 call context_search_sniff_window 
+0x2720 005514 disable user 
+0x2721 005515 nrtn zero 
+0x2722 005516 force 0 ,stop_watch 
+0x2723 005517 enable user 
+0x2724 005518 rtn 
+:      005521 check_esco_amaddr:
+0x2725 005522 fetch 1 ,mem_esco_addr 
+0x2726 005523 icompare 0xff ,am_addr 
+0x2727 005524 rtn 
+:      005527 parse_l2cap:
+0x2728 005528 bpatch patch0e_0 ,mem_patch0e 
+0x2729 005529 set0 mark_rxbuf_inuse ,mark 
+:      005530 parse_l2cap_cont:
+0x272a 005531 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x272b 005532 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x272c 005533 rtn blank 
+0x272d 005534 isolate1 l2cap_inuse_buff1 ,pdata 
+0x272e 005535 arg mem_l2cap_rxbuff1 ,contr 
+0x272f 005536 call process_rx_l2cap_pkt ,true 
+0x2730 005537 bpatch patch0e_1 ,mem_patch0e 
+0x2731 005538 fetch 1 ,mem_l2cap_rx_done 
+0x2732 005539 beq l2cap_rx_done ,parse_l2cap_release_buff1 
+0x2733 005541 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x2734 005542 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2735 005543 rtnbit0 l2cap_inuse_buff2 
+0x2736 005544 arg mem_l2cap_rxbuff2 ,contr 
+0x2737 005545 call process_rx_l2cap_pkt 
+0x2738 005546 fetch 1 ,mem_l2cap_rx_done 
+0x2739 005547 beq l2cap_rx_done ,parse_l2cap_release_buff2 
+0x273a 005548 rtn 
+:      005550 parse_l2cap_release_buff1:
+0x273b 005551 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x273c 005552 set0 l2cap_inuse_buff1 ,pdata 
+0x273d 005553 store 1 ,mem_l2cap_rxbuff_inuse 
+0x273e 005554 setarg 0 
+0x273f 005555 store 2 ,mem_l2cap_rxbuff1_len 
+0x2740 005556 rtn 
+:      005557 parse_l2cap_release_buff2:
+0x2741 005558 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2742 005559 set0 l2cap_inuse_buff2 ,pdata 
+0x2743 005560 store 1 ,mem_l2cap_rxbuff_inuse 
+0x2744 005561 setarg 0 
+0x2745 005562 store 2 ,mem_l2cap_rxbuff2_len 
+0x2746 005563 rtn 
+:      005565 l2cap_buff1_inuse:
+0x2747 005566 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2748 005567 set1 l2cap_inuse_buff1 ,pdata 
+0x2749 005568 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274a 005569 rtn 
+:      005571 l2cap_buff2_inuse:
+0x274b 005572 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x274c 005573 set1 l2cap_inuse_buff2 ,pdata 
+0x274d 005574 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274e 005575 rtn 
+:      005581 slave_send_access:
+0x274f 005582 bpatch patch0e_2 ,mem_patch0e 
+0x2750 005583 add clke_bt ,1 ,bt_clk 
+0x2751 005584 call fetch_extm_bt_adr 
+0x2752 005585 force 0x03 ,freq_mode 
+0x2753 005586 call tx_radio_freq 
+0x2754 005587 call start_transmitter 
+0x2755 005588 call start_tx_external 
+0x2756 005589 branch send_access_word 
+:      005592 slave_conn_send_packet:
+0x2757 005593 bpatch patch0e_3 ,mem_patch0e 
+0x2758 005594 call rf_setup_time_slave_slot 
+0x2759 005595 deposit clke_bt 
+0x275a 005596 fetcht 4 ,mem_next_btclk 
+0x275b 005597 isub temp ,pdata 
+0x275c 005598 rtnne 1 
+0x275d 005599 compare type_null ,type ,0x1f 
+0x275e 005600 nbranch slave_conn_send_access ,true 
+0x275f 005601 fetch 1 ,mem_rx_type 
+0x2760 005602 rtn blank 
+:      005603 slave_conn_send_access:
+0x2761 005604 call slave_send_access 
+:      005605 transmit_packet:
+0x2762 005606 compare type_id ,type ,0x1f 
+0x2763 005607 branch end_of_packet ,true 
+0x2764 005608 rshift bt_clk ,temp 
+0x2765 005609 or temp ,0x40 ,white_init 
+:      005610 transmit_packet_whitened:
+0x2766 005611 bpatch patch0e_4 ,mem_patch0e 
+0x2767 005612 enable enable_white 
+0x2768 005613 enable enable_hec 
+0x2769 005614 enable encode_fec1 
+0x276a 005615 set0 mark_longpacket ,mark 
+0x276b 005616 deposit am_addr 
+0x276c 005617 inject mod ,3 
+0x276d 005618 deposit type 
+0x276e 005619 inject mod ,4 
+0x276f 005620 fetch 1 ,mem_arq 
+0x2770 005621 inject bucket ,4 
+0x2771 005622 inject mod ,3 
+0x2772 005623 enable enable_parity 
+0x2773 005624 inject mod ,8 
+0x2774 005625 disable encode_fec1 
+0x2775 005626 disable enable_parity 
+0x2776 005627 disable enable_hec 
+0x2777 005628 set0 psk3m ,radio_ctrl 
+0x2778 005629 arg 0 ,temp 
+0x2779 005630 call reserve_slot 
+0x277a 005631 bpatch patch0e_5 ,mem_patch0e 
+0x277b 005632 and type ,0x1f ,pdata 
+0x277c 005633 beq type_lmp ,transmit_lmp 
+0x277d 005634 beq type_null ,end_of_packet 
+0x277e 005635 beq type_poll ,end_of_packet 
+0x277f 005636 beq type_fhs ,transmit_fhs 
+0x2780 005637 beq type_dm1 ,transmit_dm1 
+0x2781 005638 beq type_dh1 ,transmit_dh1 
+0x2782 005639 beq type_hv3 ,transmit_hev 
+0x2783 005640 beq type_3dh1 ,transmit_3dh1 
+0x2784 005641 arg 4 ,temp 
+0x2785 005642 call reserve_slot 
+0x2786 005643 beq type_dm3 ,transmit_dm3 
+0x2787 005644 beq type_dh3 ,transmit_dh3 
+0x2788 005645 arg 8 ,temp 
+0x2789 005646 call reserve_slot 
+0x278a 005647 beq type_dh5 ,transmit_dh5 
+0x278b 005648 branch transmit_dm5 
+:      005651 transmit_hev:
+0x278c 005652 bpatch patch0e_6 ,mem_patch0e 
+0x278d 005653 enable encode_fec0 
+0x278e 005654 enable enable_crc 
+0x278f 005655 enable encrypt 
+0x2790 005656 force 30 ,loopcnt 
+0x2791 005657 arg mem_sco_obuf ,contr 
+:      005658 transmit_ev_loop:
+0x2792 005659 ifetch 1 ,contr 
+0x2793 005660 inject mod ,8 
+0x2794 005661 loop transmit_ev_loop 
+0x2795 005662 bmark1 mark_esco ,transmit_end 
+0x2796 005663 branch end_of_packet 
+:      005665 transmit_fhs:
+0x2797 005666 bpatch patch0e_7 ,mem_patch0e 
+0x2798 005667 fetch 1 ,mem_fhs_am_addr 
+0x2799 005668 icopy am_addr 
+0x279a 005669 fetch 1 ,mem_fhs_misc 
+0x279b 005670 icopy fhs_misc 
+0x279c 005671 fetch 3 ,mem_class 
+0x279d 005672 icopy fhs_class 
+0x279e 005673 fetch 2 ,mem_nap 
+0x279f 005674 icopy nap 
+0x27a0 005675 enable enable_crc 
+0x27a1 005676 enable encode_fec2 
+0x27a2 005677 copy bt_adr ,rega 
+0x27a3 005678 call fetch_self_bt_adr 
+0x27a4 005679 pulse recalc 
+0x27a5 005680 nop 32 
+0x27a6 005681 copy bt_clk ,timeup 
+0x27a7 005682 fetch 4 ,mem_clkn_bt 
+0x27a8 005683 icopy bt_clk 
+0x27a9 005684 preload fhs0 
+0x27aa 005685 set1 58 ,pdata 
+0x27ab 005686 inject mod ,72 
+0x27ac 005687 preload fhs1 
+0x27ad 005688 inject mod ,72 
+0x27ae 005689 copy timeup ,bt_clk 
+0x27af 005690 copy rega ,bt_adr 
+0x27b0 005691 enable enable_parity 
+0x27b1 005692 inject mod ,16 
+0x27b2 005693 disable enable_parity 
+0x27b3 005694 branch end_of_packet 
+:      005696 transmit_lmp:
+0x27b4 005697 bpatch patch0f_0 ,mem_patch0f 
+0x27b5 005698 enable encrypt 
+0x27b6 005699 enable enable_crc 
+0x27b7 005700 enable encode_fec2 
+0x27b8 005701 fetch 1 ,mem_lmo_header_length 
+0x27b9 005702 and pdata ,0x1f8 ,temp 
+0x27ba 005703 arg mem_lmo_header_length ,contr 
+0x27bb 005704 increase 8 ,temp 
+:      005705 transmit_lmp_loop:
+0x27bc 005706 add temp ,-72 ,regc 
+0x27bd 005707 nbranch transmit_lmp_finish ,positive 
+0x27be 005708 ifetch 9 ,contr 
+0x27bf 005709 inject mod ,72 
+0x27c0 005710 copy regc ,temp 
+0x27c1 005711 branch transmit_lmp_loop 
+:      005712 transmit_lmp_finish:
+0x27c2 005713 ifetch 9 ,contr 
+0x27c3 005714 iinject mod ,temp 
+0x27c4 005715 branch transmit_end 
+:      005717 transmit_dm1:
+0x27c5 005718 enable encode_fec2 
+0x27c6 005719 branch transmit_dmh 
+:      005720 transmit_dm3:
+:      005721 transmit_dm5:
+0x27c7 005722 enable encode_fec2 
+0x27c8 005723 set1 mark_longpacket ,mark 
+0x27c9 005724 branch transmit_dmh 
+:      005726 transmit_3dh1:
+0x27ca 005727 set1 psk3m ,radio_ctrl 
+:      005728 transmit_dh1:
+0x27cb 005729 enable encode_fec0 
+0x27cc 005730 branch transmit_dmh 
+:      005732 transmit_dh3:
+:      005733 transmit_dh5:
+0x27cd 005734 set1 psk3m ,radio_ctrl 
+0x27ce 005735 enable encode_fec0 
+0x27cf 005736 set1 mark_longpacket ,mark 
+:      005738 transmit_dmh:
+0x27d0 005739 bpatch patch0f_1 ,mem_patch0f 
+0x27d1 005740 fetch 1 ,mem_state_map 
+0x27d2 005741 bbit0 smap_edr ,transmit_noedr 
+0x27d3 005742 sub type ,3 ,null 
+0x27d4 005743 branch transmit_noedr ,positive 
+0x27d5 005744 disable encrypt 
+0x27d6 005745 disable encode_fec2 
+0x27d7 005746 enable encode_fec0 
+0x27d8 005747 disable enable_white 
+0x27d9 005748 set1 psk ,radio_ctrl 
+0x27da 005749 isolate1 psk3m ,radio_ctrl 
+0x27db 005750 branch transmit_edr3m ,true 
+0x27dc 005751 setarg 0xabeee 
+0x27dd 005752 inject mod ,20 
+0x27de 005753 branch transmit_edr_sync_end 
+:      005754 transmit_edr3m:
+0x27df 005755 setarg 0x5faeba 
+0x27e0 005756 inject mod ,24 
+0x27e1 005757 setarg 0x12 
+0x27e2 005758 inject mod ,6 
+:      005759 transmit_edr_sync_end:
+0x27e3 005760 enable enable_white 
+0x27e4 005761 set1 mark_longpacket ,mark 
+:      005762 transmit_noedr:
+0x27e5 005763 enable encrypt 
+0x27e6 005764 enable enable_crc 
+0x27e7 005765 bmark1 mark_loopback ,transmit_loopback 
+0x27e8 005766 fetch 1 ,mem_tx_lch 
+0x27e9 005767 inject mod ,3 
+0x27ea 005768 fetch 2 ,mem_tx_len 
+0x27eb 005769 iforce loopcnt 
+0x27ec 005770 bmark1 mark_longpacket ,transmit_long 
+0x27ed 005771 inject mod ,5 
+0x27ee 005772 branch transmit_stuff 
+:      005773 transmit_long:
+0x27ef 005774 inject mod ,13 
+:      005775 transmit_stuff:
+0x27f0 005776 deposit loopcnt 
+0x27f1 005777 branch transmit_end ,blank 
+0x27f2 005778 fetch 2 ,mem_txptr 
+0x27f3 005779 iforce contr 
+:      005780 transmit_stuff_loop:
+0x27f4 005781 ifetch 1 ,contr 
+0x27f5 005782 inject mod ,8 
+0x27f6 005783 loop transmit_stuff_loop 
+:      005786 transmit_end:
+0x27f7 005787 enable enable_parity 
+0x27f8 005788 inject mod ,16 
+0x27f9 005789 disable enable_parity 
+0x27fa 005790 call set_wait_ack 
+0x27fb 005791 fetch 1 ,mem_state_map 
+0x27fc 005792 bbit0 smap_edr ,end_of_packet 
+0x27fd 005793 force 0 ,pdata 
+0x27fe 005794 inject mod ,6 
+0x27ff 005795 branch end_of_packet 
+:      005798 transmit_loopback:
+0x2800 005799 bpatch patch0f_2 ,mem_patch0f 
+0x2801 005800 bmark1 mark_longpacket ,transmit_loopback_long 
+:      005801 transmit_loopback_short:
+0x2802 005802 fetch 1 ,mem_lch_code 
+0x2803 005803 inject mod ,3 
+0x2804 005804 fetch 1 ,mem_len 
+0x2805 005805 iforce regc 
+0x2806 005806 inject mod ,5 
+0x2807 005807 branch transmit_loopback_cont 
+:      005808 transmit_loopback_long:
+0x2808 005809 fetch 1 ,mem_lch_code 
+0x2809 005810 inject mod ,3 
+0x280a 005811 fetch 2 ,mem_len 
+0x280b 005812 iforce regc 
+0x280c 005813 inject mod ,13 
+:      005814 transmit_loopback_cont:
+0x280d 005815 arg mem_rxbuf ,contr 
+:      005816 transmit_loopback_loop:
+0x280e 005817 copy regc ,null 
+0x280f 005818 branch transmit_loopback_end ,zero 
+0x2810 005819 ifetch 1 ,contr 
+0x2811 005820 inject mod ,8 
+0x2812 005821 increase -1 ,regc 
+0x2813 005822 branch transmit_loopback_loop 
+:      005823 transmit_loopback_end:
+0x2814 005824 fetch 2 ,mem_tst_pktcnt_dmh 
+0x2815 005825 increase 1 ,pdata 
+0x2816 005826 store 2 ,mem_tst_pktcnt_dmh 
+0x2817 005827 branch transmit_end 
+:      005830 apply_switch_clke:
+0x2818 005831 fetch 4 ,mem_clke_bt 
+0x2819 005832 add pdata ,7 ,rega 
+0x281a 005833 fetch 2 ,mem_slot_offset 
+0x281b 005834 nbranch apply_switch_nozero ,blank 
+0x281c 005835 increase -3 ,rega 
+0x281d 005836 branch apply_switch_wait_loop 
+:      005837 apply_switch_nozero:
+0x281e 005838 mul32 pdata ,12 ,pdata 
+0x281f 005839 hfetcht 2 ,core_halfslot 
+0x2820 005840 increase 1 ,temp 
+:      005841 apply_switch_loop:
+0x2821 005842 isub temp ,pdata 
+0x2822 005843 nbranch apply_switch_bt ,positive 
+0x2823 005844 increase -1 ,rega 
+0x2824 005845 branch apply_switch_loop 
+:      005846 apply_switch_bt:
+0x2825 005847 sub pdata ,0 ,pdata 
+:      005848 apply_switch_wait_loop:
+0x2826 005849 until null ,oneslot 
+0x2827 005850 compare 0 ,clkn_bt ,3 
+0x2828 005851 nbranch apply_switch_wait_loop ,true 
+0x2829 005852 iforce clke_rt 
+0x282a 005853 copy rega ,clke_bt 
+0x282b 005854 iforce clke_rt 
+0x282c 005855 rtn 
+:      005858 calc_slot_offset:
+0x282d 005859 bpatch patch0f_3 ,mem_patch0f 
+0x282e 005860 until null ,halfslot 
+0x282f 005861 deposit clke 
+0x2830 005862 iforce contr 
+0x2831 005863 rshift16 ,pdata ,pdata 
+0x2832 005864 isub clkn_bt ,loopcnt 
+0x2833 005865 and_into 3 ,loopcnt 
+0x2834 005866 nbranch calc_bt_portion ,zero 
+0x2835 005867 force 0 ,pdata 
+0x2836 005868 branch calc_skip_bt 
+:      005869 calc_bt_portion:
+0x2837 005870 arg 3750 ,temp 
+0x2838 005871 force 0 ,pdata 
+:      005872 calc_slot_offset_loop:
+0x2839 005873 iadd temp ,pdata 
+0x283a 005874 loop calc_slot_offset_loop 
+:      005875 calc_skip_bt:
+0x283b 005876 iadd contr ,pdata 
+0x283c 005877 div pdata ,12 
+0x283d 005878 call wait_div_end 
+0x283e 005879 quotient pdata 
+0x283f 005880 store 2 ,mem_slot_offset 
+0x2840 005881 rtn 
+:      005883 calc_clke_offset:
+0x2841 005884 bpatch patch0f_4 ,mem_patch0f 
+0x2842 005885 deposit clke 
+0x2843 005886 copy clkn ,temp 
+0x2844 005887 isub temp ,null 
+0x2845 005888 nsetflag positive ,44 ,pdata 
+0x2846 005889 isub temp ,temp 
+0x2847 005890 setarg 3750 
+0x2848 005891 isolate0 15 ,temp 
+0x2849 005892 branch calc_clke_pos ,true 
+0x284a 005893 setarg -61786 
+0x284b 005894 iadd temp ,temp 
+:      005895 calc_clke_pos:
+0x284c 005896 storet 6 ,mem_le_clk_offset 
+0x284d 005897 rtn le 
+0x284e 005898 storet 6 ,mem_clk_offset 
+0x284f 005899 rtn 
+:      005901 calc_clke:
+0x2850 005902 disable clknt 
+0x2851 005903 fetch 6 ,mem_le_clk_offset 
+0x2852 005904 branch calc_clke2 ,le 
+0x2853 005905 fetch 6 ,mem_clk_offset 
+:      005906 calc_clke2:
+0x2854 005907 iadd clkn ,alarm 
+0x2855 005908 increase 10 ,alarm 
+0x2856 005909 setarg 3750 
+0x2857 005910 isub alarm ,pdata 
+0x2858 005911 isolate0 15 ,pdata 
+0x2859 005912 branch calc_clke_pos_adj ,true 
+0x285a 005913 setarg 0xf15a 
+0x285b 005914 iadd alarm ,alarm 
+:      005915 calc_clke_pos2:
+0x285c 005916 copy alarm ,clke 
+0x285d 005917 rtn 
+:      005918 calc_clke_pos_adj:
+0x285e 005919 force 0 ,null 
+0x285f 005920 branch calc_clke_pos2 
+:      005927 calc_radio_freq:
+0x2860 005928 bpatch patch0f_5 ,mem_patch0f 
+0x2861 005929 call set_sync_on 
+0x2862 005930 copy bt_clk ,pdata 
+0x2863 005931 and_into 0x180 ,pdata 
+0x2864 005932 compare 3 ,freq_mode ,0x07 
+0x2865 005933 nbranch freq_not_connection ,true 
+0x2866 005934 rshift3 pdata ,pdata 
+0x2867 005935 iadd freq_index ,pdata 
+0x2868 005936 branch do_hop_mod_now 
+:      005937 freq_not_connection:
+0x2869 005938 copy freq_index ,pdata 
+:      005939 do_hop_mod_now:
+0x286a 005940 div pdata ,79 
+0x286b 005941 pulse recalc 
+0x286c 005942 call wait_div_end 
+0x286d 005943 remainder rega 
+0x286e 005944 add rega ,-40 ,temp 
+0x286f 005945 branch odd_half ,positive 
+0x2870 005946 lshift rega ,temp 
+0x2871 005947 branch freq_result 
+:      005948 odd_half:
+0x2872 005949 lshift temp ,temp 
+0x2873 005950 increase 1 ,temp 
+:      005951 freq_result:
+0x2874 005952 bpatch patch0f_6 ,mem_patch0f 
+0x2875 005953 fetch 1 ,mem_mode 
+0x2876 005954 bbit0 afh_change ,afh_process_con 
+:      005955 afh_process_0:
+0x2877 005956 fetch 4 ,mem_afh_instant 
+0x2878 005957 isub bt_clk ,null 
+0x2879 005958 branch afh_process_con ,positive 
+0x287a 005959 call afh_clear 
+0x287b 005960 fetch 1 ,mem_afh_new_mod 
+0x287c 005961 rtn blank 
+0x287d 005962 fetch 1 ,mem_mode 
+0x287e 005963 set1 afh_enable ,pdata 
+0x287f 005964 store 1 ,mem_mode 
+0x2880 005965 fetch 5 ,mem_afh_map_new 
+0x2881 005966 store 5 ,mem_afh_map_lo 
+0x2882 005967 ifetch 5 ,contr 
+0x2883 005968 store 5 ,mem_afh_map_hi 
+0x2884 005969 call afh_process_freq_map 
+:      005970 afh_process_con:
+0x2885 005971 fetch 1 ,mem_mode 
+0x2886 005972 rtnbit0 afh_enable 
+0x2887 005973 isolate1 1 ,bt_clk 
+0x2888 005974 branch afh_same_channel ,true 
+0x2889 005975 rshift3 temp ,rega 
+0x288a 005976 and temp ,7 ,queue 
+0x288b 005977 setarg mem_afh_map_lo 
+0x288c 005978 iadd rega ,rega 
+0x288d 005979 ifetch 1 ,rega 
+0x288e 005980 qisolate0 pdata 
+0x288f 005981 branch afh_process_1 ,true 
+0x2890 005982 deposit temp 
+0x2891 005983 branch afh_process_end 
+:      005984 afh_process_1:
+0x2892 005985 fetch 1 ,mem_afh_used 
+0x2893 005986 iforce regb 
+0x2894 005987 deposit bt_clk 
+0x2895 005988 and_into 0x180 ,pdata 
+0x2896 005989 rshift3 pdata ,pdata 
+0x2897 005990 iadd freq_index ,pdata 
+0x2898 005991 idiv regb 
+0x2899 005992 setarg mem_afh_map 
+0x289a 005993 call wait_div_end 
+0x289b 005994 remainder rega 
+0x289c 005995 iadd rega ,contr 
+0x289d 005996 ifetch 1 ,contr 
+:      005997 afh_process_end:
+0x289e 005998 store 1 ,mem_afh_index 
+0x289f 005999 iforce temp 
+0x28a0 006000 rtn 
+:      006002 afh_same_channel:
+0x28a1 006003 fetch 1 ,mem_afh_index 
+0x28a2 006004 iforce temp 
+0x28a3 006005 rtn 
+:      006007 afh_clear:
+0x28a4 006008 fetch 1 ,mem_mode 
+0x28a5 006009 set0 afh_enable ,pdata 
+0x28a6 006010 set0 afh_change ,pdata 
+0x28a7 006011 store 1 ,mem_mode 
+0x28a8 006012 rtn 
+:      006018 afh_process_freq_map:
+0x28a9 006019 bpatch patch0f_7 ,mem_patch0f 
+0x28aa 006020 arg mem_afh_map ,contw 
+0x28ab 006021 force 10 ,loopcnt 
+0x28ac 006022 call memset0 
+0x28ad 006023 arg mem_afh_map ,contw 
+0x28ae 006024 force 0 ,regc 
+0x28af 006025 force 2 ,queue 
+:      006026 process_freq_3:
+0x28b0 006027 fetch 5 ,mem_afh_map_lo 
+0x28b1 006028 iforce temp 
+0x28b2 006029 compare 2 ,queue ,0xff 
+0x28b3 006030 branch process_freq_1 ,true 
+0x28b4 006031 rshift temp ,temp 
+:      006032 process_freq_1:
+0x28b5 006033 isolate0 0 ,temp 
+0x28b6 006034 branch process_freq_0 ,true 
+0x28b7 006035 deposit regc 
+0x28b8 006036 istore 1 ,contw 
+:      006037 process_freq_0:
+0x28b9 006038 rshift2 temp ,temp 
+0x28ba 006039 increase 2 ,regc 
+0x28bb 006040 compare 40 ,regc ,0xfe 
+0x28bc 006041 nbranch process_freq_2 ,true 
+0x28bd 006042 fetch 5 ,mem_afh_map_hi 
+0x28be 006043 iforce temp 
+0x28bf 006044 compare 2 ,queue ,0xff 
+0x28c0 006045 branch process_freq_2 ,true 
+0x28c1 006046 rshift temp ,temp 
+:      006047 process_freq_2:
+0x28c2 006048 sub regc ,78 ,null 
+0x28c3 006049 branch process_freq_1 ,positive 
+0x28c4 006050 force 1 ,regc 
+0x28c5 006051 increase -1 ,queue 
+0x28c6 006052 nbranch process_freq_3 ,zero 
+0x28c7 006053 arg mem_afh_map ,rega 
+0x28c8 006054 deposit contw 
+0x28c9 006055 isub rega ,pdata 
+0x28ca 006056 store 1 ,mem_afh_used 
+0x28cb 006057 rtn 
+:      006059 rx_radio_freq:
+0x28cc 006060 bpatch patch10_0 ,mem_patch10 
+0x28cd 006061 call calc_radio_freq 
+0x28ce 006062 fetch 1 ,mem_debug_config 
+0x28cf 006063 bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
+0x28d0 006064 fetcht 1 ,mem_rx_fixed_freq 
+:      006065 rx_radio_freq_now:
+0x28d1 006066 branch set_freq_rx 
+:      006069 tx_radio_freq:
+0x28d2 006070 bpatch patch10_1 ,mem_patch10 
+0x28d3 006071 call calc_radio_freq 
+0x28d4 006072 fetch 1 ,mem_debug_config 
+0x28d5 006073 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
+0x28d6 006074 fetcht 1 ,mem_tx_fixed_freq 
+:      006075 tx_radio_freq_now:
+0x28d7 006076 branch set_freq_tx 
+:      006079 fetch_giac:
+0x28d8 006080 force 0 ,uap 
+0x28d9 006081 fetch 3 ,mem_glap 
+0x28da 006082 iforce lap 
+0x28db 006083 rtn 
+:      006085 fetch_page_bt_adr:
+0x28dc 006086 bpatch patch10_2 ,mem_patch10 
+0x28dd 006087 fetch 1 ,mem_hci_puap 
+0x28de 006088 icopy uap 
+0x28df 006089 fetch 3 ,mem_hci_plap 
+0x28e0 006090 icopy lap 
+0x28e1 006091 rtn 
+:      006093 fetch_self_bt_adr:
+0x28e2 006094 bpatch patch10_3 ,mem_patch10 
+0x28e3 006095 fetch 2 ,mem_nap 
+0x28e4 006096 icopy nap 
+0x28e5 006097 fetch 1 ,mem_uap 
+0x28e6 006098 icopy uap 
+0x28e7 006099 fetch 3 ,mem_lap 
+0x28e8 006100 icopy lap 
+0x28e9 006101 rtn 
+:      006103 fetch_extm_bt_adr:
+0x28ea 006104 bpatch patch10_4 ,mem_patch10 
+0x28eb 006105 fetch 2 ,mem_pnap 
+0x28ec 006106 icopy nap 
+0x28ed 006107 fetch 1 ,mem_puap 
+0x28ee 006108 icopy uap 
+0x28ef 006109 fetch 3 ,mem_plap 
+0x28f0 006110 icopy lap 
+0x28f1 006111 rtn 
+:      006114 fetch_diac:
+0x28f2 006115 bmark1 mark_all_diac ,fetch_diac_do 
+0x28f3 006116 rtnmark0 mark_inquiry_state 
+0x28f4 006117 rtnmark0 mark_periodical_diac 
+:      006118 fetch_diac_do:
+0x28f5 006119 and_into -256 ,lap 
+0x28f6 006120 pulse recalc 
+0x28f7 006121 nop 32 
+0x28f8 006122 rtn 
+:      006125 shutdown_radio:
+0x28f9 006126 bpatch patch10_5 ,mem_patch10 
+0x28fa 006127 branch shutdown_radio0 ,is_rx 
+0x28fb 006128 jam 0xd4 ,rf_tx_pa_ib 
+0x28fc 006129 nop 4 
+0x28fd 006130 jam 0xd2 ,rf_tx_pa_ib 
+0x28fe 006131 nop 4 
+0x28ff 006132 jam 0xd1 ,rf_tx_pa_ib 
+0x2900 006133 nop 4 
+0x2901 006134 fetch 1 ,mem_tx_power 
+0x2902 006135 beq tx_power_0db ,shutdown_radio_0db 
+0x2903 006136 beq tx_power_3db ,shutdown_radio_3db 
+0x2904 006137 beq tx_power_5db ,shutdown_radio_5db 
+0x2905 006138 beq tx_power_f3db ,shutdown_radio_f3db 
+0x2906 006139 beq tx_power_f5db ,shutdown_radio_f5db 
+0x2907 006140 beq tx_power_pair ,shutdown_radio_pair 
+:      006141 shutdown_radio_5db:
+:      006142 shutdown_radio_0db:
+0x2908 006143 jam 0xd0 ,rf_tx_pa_ib 
+0x2909 006144 jam 0xe0 ,rf_tx_pa_gc 
+:      006145 shutdown_radio0:
+0x290a 006146 force 0 ,radio_ctrl 
+0x290b 006147 disable is_rx 
+0x290c 006148 disable is_tx 
+0x290d 006149 pulse packet_end 
+0x290e 006150 jam 0x0 ,rfen_mdm 
+0x290f 006151 jam 0x0 ,rfen_tx 
+0x2910 006152 jam 0x0 ,rfen_rx 
+0x2911 006153 jam 0 ,rfen_sn 
+0x2912 006154 jam 0x70 ,rfen_msc 
+0x2913 006155 jam 0x0 ,rfen_adc 
+0x2914 006156 rtn 
+:      006158 shutdown_radio_pair:
+:      006159 shutdown_radio_f5db:
+:      006160 shutdown_radio_f3db:
+:      006161 shutdown_radio_3db:
+0x2915 006162 jam 0xd0 ,rf_tx_pa_ib 
+0x2916 006163 jam 0xc0 ,rf_tx_pa_gc 
+0x2917 006164 branch shutdown_radio0 
+:      006166 set_sync_on:
+0x2918 006167 bpatch patch10_6 ,mem_patch10 
+0x2919 006168 jam 0x0 ,rfen_mdm 
+0x291a 006169 jam 0x0 ,rfen_tx 
+0x291b 006170 jam 0x18 ,rfen_rx 
+0x291c 006171 jam 0xa7 ,rfen_sn 
+0x291d 006172 jam 0x7f ,rfen_msc 
+0x291e 006173 rtn 
+:      006175 set_freq_rx:
+0x291f 006176 bpatch patch10_7 ,mem_patch10 
+0x2920 006178 storet 1 ,mem_last_freq 
+0x2921 006179 add temp ,rx_freq_offset ,rega 
+0x2922 006180 jam 0x07 ,rf_balun_ctrim 
+0x2923 006181 branch rf_write_freq 
+:      006182 rf_rx_enable:
+0x2924 006183 bpatch patch11_0 ,mem_patch11 
+0x2925 006184 jam 0xcf ,rfen_tx 
+0x2926 006185 nop 10 
+0x2927 006186 jam 0xff ,rfen_rx 
+0x2928 006187 jam 0xaf ,rfen_sn 
+0x2929 006188 jam 0xff ,rfen_msc 
+0x292a 006189 nop 10 
+0x292b 006190 jam 0xa0 ,rfen_mdm 
+0x292c 006191 rtn 
+:      006193 set_freq_tx_offset:
+0x292d 006194 fetch 1 ,mem_250k_freq_enable 
+0x292e 006195 branch set_freq_tx_2m_offset ,blank 
+:      006196 set_freq_tx_0m_offset:
+0x292f 006197 add temp ,2 ,rega 
+0x2930 006198 rtn 
+:      006199 set_freq_tx_2m_offset:
+0x2931 006200 add temp ,0 ,rega 
+0x2932 006201 rtn 
+:      006203 set_freq_tx:
+0x2933 006204 bpatch patch11_1 ,mem_patch11 
+0x2934 006205 storet 1 ,mem_last_freq 
+0x2935 006206 call set_freq_tx_offset 
+0x2936 006207 call rf_write_freq 
+0x2937 006208 setarg param_pll_setup 
+0x2938 006209 call sleep 
+:      006210 txon:
+0x2939 006211 jam 0x1 ,rfen_adc 
+0x293a 006212 jam 0x3c ,rfen_rx 
+0x293b 006213 jam 0xe0 ,rfen_tx 
+0x293c 006214 jam 0x12 ,rf_balun_ctrim 
+0x293d 006215 nop 10 
+0x293e 006216 jam 0x01 ,rfen_mdm 
+0x293f 006217 jam 0x3d ,rfen_mdm 
+0x2940 006218 nop 10 
+0x2941 006219 jam 0xb7 ,rfen_sn 
+0x2942 006220 nop 10 
+0x2943 006221 jam 0x7f ,rfen_mdm 
+:      006222 txon_power_select:
+0x2944 006223 fetch 1 ,mem_tx_power 
+0x2945 006224 beq tx_power_0db ,set_tx_power_0db 
+0x2946 006225 beq tx_power_3db ,set_tx_power_3db 
+0x2947 006226 beq tx_power_5db ,set_tx_power_5db 
+0x2948 006227 beq tx_power_f3db ,set_tx_power_f3db 
+0x2949 006228 beq tx_power_f5db ,set_tx_power_f5db 
+0x294a 006229 beq tx_power_pair ,set_tx_power_pair 
+:      006230 set_tx_power_0db:
+0x294b 006231 jam 0xf0 ,rf_tx_pa_gc 
+0x294c 006232 call txon_common 
+0x294d 006233 jam 0xd8 ,rf_tx_pa_ib 
+0x294e 006234 rtn 
+:      006236 set_tx_power_3db:
+0x294f 006237 jam 0xdf ,rf_tx_pa_gc 
+0x2950 006238 call txon_common 
+0x2951 006239 jam 0xdf ,rf_tx_pa_ib 
+0x2952 006240 rtn 
+:      006242 set_tx_power_5db:
+0x2953 006243 jam 0xff ,rf_tx_pa_gc 
+0x2954 006244 call txon_common 
+0x2955 006245 jam 0xdf ,rf_tx_pa_ib 
+0x2956 006246 rtn 
+:      006247 set_tx_power_f3db:
+0x2957 006248 jam 0xce ,rf_tx_pa_gc 
+0x2958 006249 call txon_common 
+0x2959 006250 jam 0xd8 ,rf_tx_pa_ib 
+0x295a 006251 rtn 
+:      006253 set_tx_power_f5db:
+0x295b 006254 jam 0xcb ,rf_tx_pa_gc 
+0x295c 006255 call txon_common 
+0x295d 006256 jam 0xd8 ,rf_tx_pa_ib 
+0x295e 006257 rtn 
+:      006259 set_tx_power_pair:
+0x295f 006260 jam 0xd0 ,rf_tx_pa_ib 
+0x2960 006261 jam 0xc0 ,rf_tx_pa_gc 
+0x2961 006262 jam 0x4c ,0x8957 
+0x2962 006263 jam 0x6c ,0x8958 
+0x2963 006264 jam 0x50 ,0x8959 
+0x2964 006265 rtn 
+:      006267 txon_common:
+0x2965 006268 nop 4 
+0x2966 006269 jam 0xd1 ,rf_tx_pa_ib 
+0x2967 006270 nop 4 
+0x2968 006271 jam 0xd2 ,rf_tx_pa_ib 
+0x2969 006272 nop 4 
+0x296a 006273 jam 0xd4 ,rf_tx_pa_ib 
+0x296b 006274 rtn 
+:      006277 initialize_radio:
+0x296c 006278 jam clksel_rc ,core_clksel 
+:      006279 initialize_radio_wait:
+0x296d 006280 fetch 2 ,mem_rf_init_ptr 
+0x296e 006281 bbit0 14 ,initialize_radio_wait 
+0x296f 006282 iforce contr 
+0x2970 006283 arg 0x8900 ,temp 
+:      006284 initialize_radio_loop:
+0x2971 006285 ifetch 1 ,contr 
+0x2972 006286 beq 0xff ,initialize_radio_cont 
+0x2973 006287 ior temp ,contw 
+0x2974 006288 ifetch 1 ,contr 
+0x2975 006289 istore 1 ,contw 
+0x2976 006290 branch initialize_radio_loop 
+:      006291 initialize_radio_cont:
+0x2977 006292 bpatch patch11_2 ,mem_patch11 
+0x2978 006293 call lpm_cal_xtal_startup 
+0x2979 006294 call switchto_dpllclk 
+0x297a 006296 setarg param_dpll_start_delay 
+0x297b 006297 iadd clkn_bt ,pdata 
+0x297c 006298 store 4 ,mem_dpll_clkn 
+0x297d 006299 set1 reset ,radio_ctrl 
+0x297e 006300 force 0 ,radio_ctrl 
+0x297f 006301 ncall do_rccal ,wake 
+0x2980 006302 branch set_rccal 
+:      006305 rf_write_freq:
+0x2981 006306 bpatch patch11_3 ,mem_patch11 
+0x2982 006307 setarg 2400 
+0x2983 006308 iadd rega ,temp 
+0x2984 006309 fetch 1 ,mem_fcomp_mul 
+0x2985 006310 jam 0x04 ,rf_pll_rstn 
+0x2986 006311 imul32 temp ,pdata 
+0x2987 006312 fetcht 1 ,mem_fcomp_div 
+0x2988 006313 idiv temp 
+0x2989 006314 call wait_div_end 
+0x298a 006315 quotient rega 
+0x298b 006316 remainder pdata 
+0x298c 006317 lshift16 pdata ,pdata 
+0x298d 006318 lshift4 pdata ,pdata 
+0x298e 006319 idiv temp 
+0x298f 006320 call wait_div_end 
+0x2990 006321 quotient pdata 
+0x2991 006322 lshift8 pdata ,pdata 
+0x2992 006323 lshift pdata ,pdata 
+0x2993 006324 ior rega ,pdata 
+0x2994 006325 hstore 4 ,rf_pll_intg 
+0x2995 006326 jam 0x44 ,rf_pll_rstn 
+0x2996 006327 jam 0xc4 ,rf_pll_rstn 
+0x2997 006328 rtn 
+:      006331 do_rccal:
+0x2998 006332 bpatch patch11_4 ,mem_patch11 
+0x2999 006333 jam 0x02 ,rfen_adc 
+0x299a 006334 setarg 250000 
+0x299b 006335 call sleep 
+0x299c 006336 jam 0x7f ,rfen_rx 
+0x299d 006337 nop 130 
+0x299e 006338 jam 0x30 ,rf_rccal_ctrl 
+0x299f 006339 jam 0xd0 ,rfen_tx 
+0x29a0 006340 jam 0x70 ,rf_rccal_ctrl 
+0x29a1 006341 jam 0xf0 ,rf_rccal_ctrl 
+0x29a2 006342 force 50 ,loopcnt 
+:      006343 do_rccal_loop:
+0x29a3 006344 hfetch 1 ,rf_rccal_result 
+0x29a4 006345 bbit1 5 ,do_rccal_end 
+0x29a5 006346 loop do_rccal_loop 
+:      006347 do_rccal_end:
+0x29a6 006348 store 1 ,mem_rf_rccal 
+0x29a7 006349 jam 0 ,rfen_tx 
+0x29a8 006350 jam 0 ,rfen_rx 
+0x29a9 006351 jam 0x00 ,rfen_adc 
+0x29aa 006352 rtn 
+:      006354 set_rccal:
+0x29ab 006355 bpatch patch11_5 ,mem_patch11 
+0x29ac 006356 fetch 1 ,mem_rf_rccal 
+0x29ad 006357 set1 5 ,pdata 
+0x29ae 006358 hstore 1 ,rf_rccal_ctrl 
+0x29af 006359 hfetcht 1 ,rf_bpf_ctrim 
+0x29b0 006360 and_into 7 ,temp 
+0x29b1 006361 lshift3 pdata ,pdata 
+0x29b2 006362 ior temp ,pdata 
+0x29b3 006363 hstore 1 ,rf_bpf_ctrim 
+0x29b4 006364 hfetch 1 ,rf_bpf_ib 
+0x29b5 006365 set0 bpf_rccal ,pdata 
+0x29b6 006366 hstore 1 ,rf_bpf_ib 
+0x29b7 006367 hfetch 1 ,rf_adc_rccal 
+0x29b8 006368 set0 adc_rccal ,pdata 
+0x29b9 006369 hstore 1 ,rf_adc_rccal 
+0x29ba 006370 rtn 
+:      006372 save_rssi:
+0x29bb 006373 bpatch patch11_6 ,mem_patch11 
+0x29bc 006374 hfetch 2 ,rf_afc_d2a 
+0x29bd 006375 rshift4 pdata ,pdata 
+0x29be 006376 rshift3 pdata ,pdata 
+0x29bf 006377 sub pdata ,0 ,pdata 
+:      006378 bcd:
+0x29c0 006379 and_into 0xff ,pdata 
+0x29c1 006380 div pdata ,10 
+0x29c2 006381 call wait_div_end 
+0x29c3 006382 quotient pdata 
+0x29c4 006383 lshift4 pdata ,pdata 
+0x29c5 006384 remainder temp 
+0x29c6 006385 ior temp ,pdata 
+0x29c7 006386 store 1 ,mem_rssi 
+0x29c8 006387 rtn 
+:      006390 switchto_dpllclk:
+0x29c9 006391 jam clksel_rc ,core_clksel 
+0x29ca 006392 hfetch 1 ,rf_clkpll_frac + 2 
+0x29cb 006393 set0 4 ,pdata 
+0x29cc 006394 set0 5 ,pdata 
+0x29cd 006395 hstore 1 ,rf_clkpll_frac + 2 
+0x29ce 006396 jam 0x00 ,rfen_ck 
+0x29cf 006397 jam 0x00 ,rfen_msc 
+0x29d0 006398 jam 0x70 ,rfen_msc 
+0x29d1 006399 jam 0xff ,rfen_ck 
+0x29d2 006400 hfetch 1 ,rf_clkpll_frac + 2 
+0x29d3 006401 set1 4 ,pdata 
+0x29d4 006402 set1 5 ,pdata 
+0x29d5 006403 hstore 1 ,rf_clkpll_frac + 2 
+0x29d6 006404 call init_lpm_ctrl 
+0x29d7 006405 hfetch 1 ,rf_clkpll_int 
+0x29d8 006406 set1 7 ,pdata 
+0x29d9 006407 hstore 1 ,rf_clkpll_int 
+0x29da 006408 set0 7 ,pdata 
+0x29db 006409 hstore 1 ,rf_clkpll_int 
+0x29dc 006410 set1 7 ,pdata 
+0x29dd 006411 hstore 1 ,rf_clkpll_int 
+0x29de 006412 jam clksel_dpll ,core_clksel 
+0x29df 006413 nop 1 
+0x29e0 006414 jam clksel_xtal ,core_clksel 
+0x29e1 006415 hfetch 1 ,rf_clkpll_frac + 2 
+0x29e2 006416 and_into 0xcf ,pdata 
+0x29e3 006417 hstore 1 ,rf_clkpll_frac + 2 
+0x29e4 006418 or_into 0x30 ,pdata 
+0x29e5 006419 hstore 1 ,rf_clkpll_frac + 2 
+0x29e6 006420 rtn 
+:      006423 xtal_fast_wake:
+0x29e7 006424 setarg 0xf0f 
+0x29e8 006425 branch lpm_write_config 
+:      006427 init_lpm_ctrl:
+0x29e9 006428 setarg 0x80f 
+0x29ea 006429 branch lpm_write_config 
+:      006433 start_receiver:
+0x29eb 006434 bpatch patch11_7 ,mem_patch11 
+0x29ec 006435 call rf_rx_enable 
+0x29ed 006436 disable is_tx 
+0x29ee 006437 enable is_rx 
+0x29ef 006438 pulse init_encrypt 
+0x29f0 006439 rtn 
+:      006441 prep_crypt:
+0x29f1 006442 bpatch patch12_0 ,mem_patch12 
+0x29f2 006443 fetch 1 ,mem_state_map 
+0x29f3 006444 isolate1 smap_encryption ,pdata 
+0x29f4 006445 setflag true ,0 ,pdata 
+0x29f5 006446 hstore 1 ,core_encrypt 
+0x29f6 006447 arg mem_kc ,contr 
+0x29f7 006448 ifetch 9 ,contr 
+0x29f8 006449 iforce kc_ls 
+0x29f9 006450 ifetch 7 ,contr 
+0x29fa 006451 iforce kc_ms 
+0x29fb 006452 fetch 1 ,mem_key_size 
+0x29fc 006453 add pdata ,-1 ,g1l 
+0x29fd 006454 pulse kc_p_activate 
+0x29fe 006455 rtn 
+:      006457 wait_access_end:
+0x29ff 006458 deposit clke 
+0x2a00 006459 store 6 ,mem_sync_clke 
+0x2a01 006460 disable decode_fec0 
+0x2a02 006461 nbranch shutdown_radio ,sync 
+0x2a03 006462 arg param_clke_cal ,clke_rt 
+0x2a04 006463 increase 1 ,clke_bt 
+0x2a05 006464 and_into 0x1fc ,clke_bt 
+0x2a06 006465 rtn 
+:      006469 wait_access_mhalfbnd:
+0x2a07 006470 enable decode_fec0 
+:      006471 wait_access_mhalfbnd_correlate:
+0x2a08 006472 correlate null ,mhalfbnd 
+0x2a09 006473 branch wait_access_end ,sync 
+0x2a0a 006474 compare 0x02 ,clke_bt ,0x02 
+0x2a0b 006475 nbranch wait_access_mhalfbnd_correlate ,true 
+0x2a0c 006476 branch wait_access_end 
+:      006478 wait_access_clkn_rt:
+0x2a0d 006479 bpatch patch12_1 ,mem_patch12 
+0x2a0e 006480 arg param_conn_access ,timeup 
+0x2a0f 006481 enable decode_fec0 
+0x2a10 006482 correlate clkn_rt ,meet 
+0x2a11 006483 disable decode_fec0 
+0x2a12 006484 nbranch shutdown_radio ,sync 
+0x2a13 006485 rtn 
+:      006487 wait_access_forever:
+0x2a14 006488 bpatch patch12_2 ,mem_patch12 
+0x2a15 006489 enable decode_fec0 
+0x2a16 006490 correlate null ,timeout 
+0x2a17 006491 disable decode_fec0 
+0x2a18 006492 nbranch shutdown_radio ,sync 
+0x2a19 006493 arg param_clke_cal ,clke_rt 
+0x2a1a 006494 and_into 0x1fc ,clke_bt 
+0x2a1b 006495 rtn 
+:      006498 reserve_slot:
+0x2a1c 006499 bpatch patch12_3 ,mem_patch12 
+0x2a1d 006500 iforce rega 
+0x2a1e 006501 deposit bt_clk 
+0x2a1f 006502 iadd temp ,timeup 
+0x2a20 006503 copy timeup ,pdata 
+0x2a21 006504 store 4 ,mem_next_btclk 
+0x2a22 006505 deposit rega 
+0x2a23 006506 rtn 
+:      006509 ahead_window:
+0x2a24 006510 copy pdata ,temp 
+0x2a25 006511 bpatch patch12_4 ,mem_patch12 
+0x2a26 006512 copy temp ,pdata 
+0x2a27 006513 call clk2bt 
+0x2a28 006514 lshift16 bt_clk ,pdata 
+0x2a29 006515 set1 44 ,pdata 
+0x2a2a 006516 call clk_diff 
+0x2a2b 006517 set0 44 ,pdata 
+0x2a2c 006518 call get_clk 
+0x2a2d 006519 call clk_diff 
+0x2a2e 006520 rtn user 
+0x2a2f 006521 call clk2rt 
+0x2a30 006522 iforce stop_watch 
+0x2a31 006523 until null ,timeout 
+0x2a32 006524 rtn 
+:      006527 setup_clk:
+0x2a33 006528 bpatch patch12_5 ,mem_patch12 
+0x2a34 006529 branch setup_clkn ,clknt 
+0x2a35 006530 until clke_rt ,meet 
+:      006531 skip_setup_clke:
+0x2a36 006532 copy clke_bt ,temp 
+0x2a37 006533 branch setup_clknbt 
+:      006534 setup_clkn:
+0x2a38 006535 branch skip_setup_clkn ,attempt 
+0x2a39 006536 until clkn_rt ,meet 
+:      006537 skip_setup_clkn:
+0x2a3a 006538 copy clkn_bt ,temp 
+:      006539 setup_clknbt:
+0x2a3b 006540 branch setup_clk11 ,user 
+0x2a3c 006541 compare 1 ,temp ,3 
+0x2a3d 006542 nbranch setup_clk ,true 
+:      006543 setup_complete:
+0x2a3e 006544 bpatch patch12_6 ,mem_patch12 
+0x2a3f 006545 fetch 1 ,mem_state 
+0x2a40 006546 rtnbit0 state_inconn 
+0x2a41 006547 fetch 4 ,mem_next_btclk 
+0x2a42 006548 isub temp ,pdata 
+0x2a43 006549 nrtn positive 
+0x2a44 006550 sub pdata ,0xff ,null 
+0x2a45 006551 branch setup_clk ,positive 
+0x2a46 006552 rtn 
+:      006553 setup_clk11:
+0x2a47 006554 compare 3 ,temp ,3 
+0x2a48 006555 nbranch setup_clk ,true 
+0x2a49 006556 branch setup_complete 
+:      006558 rf_setup_time:
+0x2a4a 006559 bpatch patch12_7 ,mem_patch12 
+0x2a4b 006560 arg param_rf_setup ,timeup 
+0x2a4c 006561 branch setup_clk 
+:      006563 rf_setup_time_slave_slot:
+0x2a4d 006564 disable user 
+0x2a4e 006565 branch rf_setup_time 
+:      006567 rf_setup_time_master_slot:
+0x2a4f 006568 enable user 
+0x2a50 006569 branch rf_setup_time 
+:      006571 start_transmitter:
+0x2a51 006572 bpatch patch13_0 ,mem_patch13 
+0x2a52 006573 call prep_crypt 
+0x2a53 006574 disable is_rx 
+0x2a54 006575 enable is_tx 
+0x2a55 006576 rtn 
+:      006580 start_tx_native:
+0x2a56 006581 bpatch patch13_1 ,mem_patch13 
+0x2a57 006582 arg param_tx_setup ,timeup 
+0x2a58 006583 until clkn_rt ,meet 
+0x2a59 006584 pulse init_encrypt 
+0x2a5a 006585 rtn 
+:      006587 start_rx_native:
+0x2a5b 006588 bpatch patch13_2 ,mem_patch13 
+0x2a5c 006589 arg param_rx_setup ,timeup 
+0x2a5d 006590 until clkn_rt ,meet 
+0x2a5e 006591 rtn 
+:      006594 start_tx_external:
+0x2a5f 006595 bpatch patch13_3 ,mem_patch13 
+0x2a60 006596 arg param_tx_setup ,timeup 
+0x2a61 006597 until clke_rt ,meet 
+0x2a62 006598 pulse init_encrypt 
+0x2a63 006599 rtn 
+:      006601 send_access_word:
+0x2a64 006602 bpatch patch13_4 ,mem_patch13 
+0x2a65 006603 preload access 
+0x2a66 006604 enable encode_fec0 
+0x2a67 006605 set1 txgfsk ,radio_ctrl 
+0x2a68 006606 inject mod ,72 
+0x2a69 006607 disable encode_fec0 
+0x2a6a 006608 rtn 
+:      006611 scan_mode_whiten:
+0x2a6b 006612 copy xin ,temp 
+0x2a6c 006613 or_into 0x60 ,temp 
+0x2a6d 006614 copy temp ,white_init 
+0x2a6e 006615 rtn 
+:      006620 get_free_amaddr:
+0x2a6f 006621 bpatch patch13_5 ,mem_patch13 
+0x2a70 006622 fetch 1 ,mem_current_amaddr 
+0x2a71 006623 increase 1 ,pdata 
+0x2a72 006624 bne param_esco_addr ,get_free_amaddr_cont 
+0x2a73 006625 force 1 ,pdata 
+:      006626 get_free_amaddr_cont:
+0x2a74 006627 store 1 ,mem_current_amaddr 
+0x2a75 006628 iforce am_addr 
+0x2a76 006629 rtn 
+:      006631 get_clk:
+0x2a77 006632 copy clkn ,temp 
+0x2a78 006633 rtn master 
+0x2a79 006634 copy clke ,temp 
+0x2a7a 006635 rtn 
+:      006637 get_clkbt:
+0x2a7b 006638 deposit clkn_bt 
+0x2a7c 006639 rtn master 
+0x2a7d 006640 deposit clke_bt 
+0x2a7e 006641 rtn 
+:      006644 supervision_update:
+0x2a7f 006645 bpatch patch13_6 ,mem_patch13 
+0x2a80 006646 fetcht 4 ,mem_supervision_timer 
+0x2a81 006647 call get_clkbt 
+0x2a82 006648 isub temp ,timeup 
+0x2a83 006649 deposit timeup 
+0x2a84 006650 fetcht 2 ,mem_supervision_to 
+0x2a85 006651 lshift temp ,temp 
+0x2a86 006652 isub temp ,pdata 
+0x2a87 006653 rtn 
+:      006655 supervision_flush:
+0x2a88 006656 bpatch patch13_7 ,mem_patch13 
+0x2a89 006657 call get_clkbt 
+0x2a8a 006658 store 4 ,mem_supervision_timer 
+0x2a8b 006659 rtn 
+:      006661 assert:
+0x2a8c 006662 bpatch patch14_0 ,mem_patch14 
+0x2a8d 006663 branch assert 
+:      006665 loop:
+0x2a8e 006666 branch loop 
+:      006668 sleep:
+0x2a8f 006669 rtn blank 
+0x2a90 006671 rshift pdata ,pdata 
+0x2a91 006672 increase -3 ,pdata 
+:      006673 sleep_loop:
+0x2a92 006674 increase -1 ,pdata 
+0x2a93 006675 nbranch sleep_loop ,zero 
+0x2a94 006676 force 0 ,pdata 
+0x2a95 006677 rtn 
+:      006681 init_param:
+0x2a96 006683 arg 0x10 ,loopcnt 
+0x2a97 006684 arg 0 ,contw 
+0x2a98 006685 call memset0 
+0x2a99 006686 arg mem_le_state ,contw 
+0x2a9a 006687 arg 10 ,loopcnt 
+0x2a9b 006688 call memset0 
+0x2a9c 006689 jam 0 ,mem_sp_calc 
+0x2a9d 006690 jam 0 ,mem_fifo_temp 
+0x2a9e 006691 jam 0 ,mem_le_testtype 
+0x2a9f 006692 jam 0 ,mem_debug_config 
+0x2aa0 006693 jam 0 ,mem_lmp_conn_state 
+0x2aa1 006694 bpatch patch14_1 ,mem_patch14 
+0x2aa2 006695 jam 0 ,mem_connection_options 
+0x2aa3 006696 jam 0 ,mem_tester_emulate 
+0x2aa4 006697 jam 0 ,mem_tester_cnt 
+0x2aa5 006698 setarg param_glap 
+0x2aa6 006699 store 3 ,mem_glap 
+0x2aa7 006700 setarg param_acl_pktlen 
+0x2aa8 006701 store 2 ,mem_acl_pktlen 
+0x2aa9 006702 jam param_sco_pktlen ,mem_sco_pktlen 
+0x2aaa 006703 jam param_acl_pktcnt ,mem_acl_pktcnt 
+0x2aab 006704 jam param_sco_pktcnt ,mem_sco_pktcnt 
+0x2aac 006705 setarg param_hci_version 
+0x2aad 006706 store 3 ,mem_hci_version 
+0x2aae 006711 jam 0x60 ,mem_fhs_misc 
+0x2aaf 006712 jam param_max_slot ,mem_max_slot 
+0x2ab0 006713 jam 0x02 ,mem_fw_ver 
+0x2ab1 006714 fetch 1 ,mem_ssp_enable 
+0x2ab2 006715 ncall init_memp ,blank 
+0x2ab3 006716 fetch 1 ,mem_le_secure_connect_enable 
+0x2ab4 006717 ncall init_memp_256 ,blank 
+0x2ab5 006718 bpatch patch14_2 ,mem_patch14 
+0x2ab6 006719 rtn wake 
+0x2ab7 006720 setarg 0 
+0x2ab8 006721 store 2 ,mem_tx_len 
+0x2ab9 006722 rshift clkn_bt ,pdata 
+0x2aba 006723 store 4 ,mem_last_clkn 
+0x2abb 006724 rtn 
+:      006731 lpmstate:
+0x2abc 006732 setarg 0xee21 
+0x2abd 006733 hstore 2 ,core_clkoff 
+0x2abe 006734 hfetch 4 ,core_gpio_in 
+0x2abf 006735 store 4 ,mem_saved_gpio_in 
+0x2ac0 006736 hfetch 1 ,core_lpm_ldocnt 
+0x2ac1 006737 store 1 ,mem_wakup_from_power_flag 
+0x2ac2 006738 bbit0 gpio_latch ,loadcode 
+0x2ac3 006739 enable wake 
+0x2ac4 006740 bbit0 cold_wake ,lpmwake 
+0x2ac5 006741 disable wake 
+0x2ac6 006742 deposit auxcnt 
+0x2ac7 006743 nbranch lpmwake ,blank 
+0x2ac8 006744 hfetch 1 ,core_lpm_ctrl + 3 
+0x2ac9 006745 bbit1 reload_code ,lpmwake 
+0x2aca 006746 arg param_hibernate_clks ,temp 
+0x2acb 006747 branch lpm_enter_sleep 
+:      006748 lpmwake:
+0x2acc 006749 hfetch 3 ,core_lpm_xtalcnt 
+0x2acd 006750 hstore 3 ,core_lpm_reg 
+0x2ace 006751 ifetch 1 ,contr 
+0x2acf 006752 or_into isogate_mask ,pdata 
+0x2ad0 006753 istore 1 ,contw 
+0x2ad1 006754 call lpm_write_ctrl2 
+0x2ad2 006755 hfetch 1 ,core_lpm_isogate 
+0x2ad3 006756 set1 enable_retmem ,pdata 
+0x2ad4 006757 hstore 1 ,core_lpm_isogate 
+0x2ad5 006758 call lpm_write_ctrl2 
+0x2ad6 006759 call lpm_load_context ,wake 
+0x2ad7 006760 hfetch 1 ,core_lpm_reg + 2 
+0x2ad8 006761 set0 gpio_latch ,pdata 
+0x2ad9 006762 hstore 1 ,core_lpm_reg + 2 
+0x2ada 006763 call lpm_write_ctrl2 
+0x2adb 006764 nbranch loadcode ,wake 
+0x2adc 006765 rtnmark0 mark_otp_encrypt 
+0x2add 006766 jam lock_otp ,core_misc_ctrl 
+0x2ade 006767 rtn 
+:      006769 lpm_load_context:
+0x2adf 006770 fetch 1 ,mem_saved_spidctrl 
+0x2ae0 006771 hstore 1 ,core_spid_ctrl 
+0x2ae1 006772 fetch 3 ,mem_saved_gsel 
+0x2ae2 006773 hstore 3 ,core_gpio_sel 
+0x2ae3 006774 fetch 4 ,mem_saved_gpio + 4 
+0x2ae4 006775 hstore 4 ,core_gpio_out0 
+0x2ae5 006776 fetch 4 ,mem_saved_gpio 
+0x2ae6 006777 hstore 4 ,core_gpio_oe0 
+0x2ae7 006778 fetch 8 ,mem_saved_gpio + 8 
+0x2ae8 006779 hstore 8 ,core_gpio_pu0 
+0x2ae9 006780 fetch 8 ,mem_saved_mark 
+0x2aea 006781 iforce mark 
+0x2aeb 006782 hfetch 8 ,core_gpio_wakeup_low 
+0x2aec 006783 store 8 ,mem_gpio_wakeup_low 
+0x2aed 006784 call load_ucode 
+0x2aee 006785 rtn 
+:      006787 lpm_save_context:
+0x2aef 006788 deposit mark 
+0x2af0 006789 store 8 ,mem_saved_mark 
+0x2af1 006790 hfetch 8 ,core_gpio_oe0 
+0x2af2 006791 store 8 ,mem_saved_gpio 
+0x2af3 006792 ifetch 8 ,contr 
+0x2af4 006793 istore 8 ,contw 
+0x2af5 006794 hfetch 3 ,core_gpio_sel 
+0x2af6 006795 store 3 ,mem_saved_gsel 
+0x2af7 006796 hfetch 1 ,core_spid_ctrl 
+0x2af8 006797 store 1 ,mem_saved_spidctrl 
+0x2af9 006798 branch lpm_write_gpio_wakeup 
+:      006800 lpo_calibration:
+0x2afa 006801 hfetch 1 ,core_bist_ctrl 
+0x2afb 006802 nbranch lpo_cal_inited ,blank 
+0x2afc 006803 fetch 3 ,mem_clks_per_lpo 
+0x2afd 006804 nrtn blank 
+0x2afe 006805 jam 0xc0 ,core_bist_ctrl 
+0x2aff 006806 jam ccnt_start ,core_misc_ctrl 
+:      006807 lpo_cal_inited:
+0x2b00 006808 hfetch 1 ,core_perf_status 
+0x2b01 006809 rtnbit0 1 
+0x2b02 006810 hfetch 3 ,core_clk_counter 
+0x2b03 006811 store 3 ,mem_clks_per_lpo 
+0x2b04 006812 rtn 
+:      006816 lpm_adjust_clk:
+0x2b05 006817 bpatch patch14_3 ,mem_patch14 
+0x2b06 006818 deposit clke 
+0x2b07 006819 call clk_diff_rt 
+0x2b08 006820 fetcht 4 ,mem_sleep_counter_all 
+0x2b09 006821 sub temp ,0xff ,null 
+0x2b0a 006822 rtn positive 
+0x2b0b 006823 lshift8 pdata ,pdata 
+0x2b0c 006824 lshift4 pdata ,pdata 
+0x2b0d 006825 idiv temp 
+0x2b0e 006826 call wait_div_end 
+0x2b0f 006827 quotient pdata 
+0x2b10 006828 arg param_lpm_adjmax ,temp 
+0x2b11 006829 call ceiling 
+0x2b12 006830 store 1 ,mem_lpm_adjust 
+0x2b13 006831 nbranch lpm_adjust_positive ,user 
+0x2b14 006832 sub pdata ,0 ,pdata 
+:      006833 lpm_adjust_positive:
+0x2b15 006834 fetcht 3 ,mem_clks_per_lpo 
+0x2b16 006835 iadd temp ,pdata 
+0x2b17 006836 store 3 ,mem_clks_per_lpo 
+:      006837 lpm_clear_counter:
+0x2b18 006838 setarg 0 
+0x2b19 006839 store 4 ,mem_sleep_counter_all 
+0x2b1a 006840 rtn 
+:      006844 lpm_doze:
+0x2b1b 006845 fetch 1 ,mem_lpm_config + 2 
+0x2b1c 006846 set1 reload_code ,pdata 
+0x2b1d 006847 store 1 ,mem_lpm_config + 2 
+0x2b1e 006848 branch lpm_hibernate_normal 
+:      006852 lpm_hibernate:
+0x2b1f 006853 arg param_hibernate_clks ,temp 
+0x2b20 006854 fetch 1 ,mem_lpm_config + 1 
+0x2b21 006855 set0 7 ,pdata 
+0x2b22 006856 store 1 ,mem_lpm_config + 1 
+:      006857 lpm_hibernate_normal:
+0x2b23 006858 bpatch patch14_4 ,mem_patch14 
+0x2b24 006859 call lpm_write_gpio_wakeup 
+0x2b25 006860 fetch 1 ,mem_lpm_hibernate_switch 
+0x2b26 006861 store 1 ,mem_lpm_xtalcnt + 4 
+0x2b27 006862 fetch 1 ,mem_lpm_xtalcnt + 2 
+0x2b28 006863 set1 cold_wake ,pdata 
+0x2b29 006864 store 1 ,mem_lpm_xtalcnt + 2 
+:      006867 lpm_sleep:
+0x2b2a 006868 bpatch patch14_5 ,mem_patch14 
+0x2b2b 006869 call xtal_fast_wake 
+0x2b2c 006870 fetch 4 ,mem_sleep_counter_all 
+0x2b2d 006871 iadd temp ,pdata 
+0x2b2e 006872 store 4 ,mem_sleep_counter_all 
+0x2b2f 006873 call lpm_save_context 
+0x2b30 006874 fetch 5 ,mem_lpm_xtalcnt 
+0x2b31 006875 hstore 4 ,core_lpm_reg 
+0x2b32 006876 rshift32 pdata ,rega 
+0x2b33 006877 until null ,lpo_edge 
+0x2b34 006878 deposit clkn 
+0x2b35 006879 store 6 ,mem_sleep_clkn 
+0x2b36 006880 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+0x2b37 006881 until null ,lpo_edge 
+0x2b38 006882 until null ,lpo_edge 
+0x2b39 006883 deposit rega 
+0x2b3a 006884 hstore 1 ,core_lpm_isogate 
+0x2b3b 006885 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+:      006886 lpm_enter_sleep:
+0x2b3c 006887 until null ,lpo_edge 
+0x2b3d 006888 until null ,lpo_edge 
+0x2b3e 006889 hstoret 4 ,core_lpm_reg 
+0x2b3f 006890 jam lpmreg_sel_counter ,core_lpm_wr 
+0x2b40 006891 until null ,never 
+:      006896 lpm_recover_clk:
+0x2b41 006897 bpatch patch14_6 ,mem_patch14 
+0x2b42 006898 setarg 0 
+0x2b43 006899 copy auxcnt ,null 
+0x2b44 006900 branch lpm_recover_timeout ,zero 
+0x2b45 006901 hfetch 1 ,core_lpm_xtalcnt 
+0x2b46 006902 hfetcht 1 ,core_lpm_buckcnt 
+0x2b47 006903 isub temp ,null 
+0x2b48 006904 branch lpm_recover_xtal ,positive 
+0x2b49 006905 deposit temp 
+:      006906 lpm_recover_xtal:
+0x2b4a 006907 isub auxcnt ,pdata 
+0x2b4b 006908 increase 1 ,pdata 
+:      006909 lpm_recover_timeout:
+0x2b4c 006910 increase 8 ,pdata 
+0x2b4d 006911 until null ,lpo_edge 
+0x2b4e 006912 iadd lpo_time ,pdata 
+0x2b4f 006913 fetcht 4 ,mem_sleep_counter 
+0x2b50 006914 iadd temp ,pdata 
+0x2b51 006915 fetcht 3 ,mem_clks_per_lpo 
+0x2b52 006916 imul32 temp ,pdata 
+0x2b53 006917 rshift8 pdata ,pdata 
+0x2b54 006918 rshift4 pdata ,pdata 
+0x2b55 006919 increase param_lpm_fix ,pdata 
+0x2b56 006920 arg 3750 ,temp 
+0x2b57 006921 idiv temp 
+0x2b58 006922 call wait_div_end 
+0x2b59 006923 quotient pdata 
+0x2b5a 006924 lshift16 pdata ,pdata 
+0x2b5b 006925 remainder temp 
+0x2b5c 006926 ior temp ,pdata 
+0x2b5d 006927 fetcht 6 ,mem_sleep_clkn 
+0x2b5e 006928 call clk_add 
+0x2b5f 006929 copy temp ,clkn 
+0x2b60 006930 fetch 6 ,mem_context + coffset_clk_offset 
+0x2b61 006931 call calc_clke2 
+0x2b62 006932 deposit clke 
+0x2b63 006933 store 6 ,mem_pdatatemp 
+0x2b64 006934 deposit auxcnt 
+0x2b65 006935 istore 1 ,contw 
+0x2b66 006936 hfetch 1 ,core_gpio_in1 
+0x2b67 006937 or_into 0xf0 ,pdata 
+0x2b68 006938 istore 1 ,contw 
+0x2b69 006939 rtn 
+:      006941 lpm_dispatch:
+0x2b6a 006942 bpatch patch14_7 ,mem_patch14 
+0x2b6b 006943 call lpo_calibration 
+0x2b6c 006944 fetch 3 ,mem_clks_per_lpo 
+0x2b6d 006945 rtn blank 
+0x2b6e 006946 fetch 1 ,mem_lpm_mode 
+0x2b6f 006947 rtn blank 
+0x2b70 006948 fetch 1 ,mem_ssp_enable 
+0x2b71 006949 branch lpm_dispatch_next ,blank 
+0x2b72 006950 fetch 1 ,mem_sp_local_key_invalid 
+0x2b73 006951 rtn blank 
+:      006952 lpm_dispatch_next:
+0x2b74 006953 fetch 1 ,mem_le_sc_calc 
+0x2b75 006954 nrtn blank 
+0x2b76 006955 call lpm_check_wake_lock 
+0x2b77 006956 nrtn blank 
+0x2b78 006957 fetch 1 ,mem_context 
+0x2b79 006958 compare 3 ,pdata ,0x7 
+0x2b7a 006959 nbranch lpm_dispatch_unconn ,true 
+0x2b7b 006960 fetch 2 ,mem_context + coffset_tsniff 
+0x2b7c 006961 rtn blank 
+0x2b7d 006962 rtn wake 
+0x2b7e 006963 bpatch patch15_0 ,mem_patch15 
+:      006964 lpm_dispatch_next2:
+0x2b7f 006965 fetcht 1 ,mem_lpm_current_mult 
+0x2b80 006966 fetch 2 ,mem_context + coffset_tsniff 
+0x2b81 006967 imul32 temp ,pdata 
+0x2b82 006968 rshift4 temp ,temp 
+0x2b83 006969 rshift2 temp ,temp 
+0x2b84 006970 isub temp ,pdata 
+0x2b85 006971 fetcht 4 ,mem_context + coffset_sniff_anchor 
+0x2b86 006972 iadd temp ,pdata 
+0x2b87 006973 fetcht 1 ,mem_lpm_overhead 
+0x2b88 006974 isub temp ,pdata 
+0x2b89 006975 lshift16 pdata ,alarm 
+0x2b8a 006976 bpatch patch15_1 ,mem_patch15 
+0x2b8b 006977 fetch 2 ,mem_context + coffset_rx_window 
+0x2b8c 006978 rshift pdata ,pdata 
+0x2b8d 006979 call clk2bt 
+0x2b8e 006980 deposit alarm 
+0x2b8f 006981 call clk_diff 
+0x2b90 006982 copy clke ,temp 
+0x2b91 006983 call clk_diff_rt 
+0x2b92 006984 rtn user 
+:      006985 lpm_dispatch_sleep:
+0x2b93 006986 call clk2lpo 
+:      006987 lpm_dispatch_lpo:
+0x2b94 006988 bpatch patch15_2 ,mem_patch15 
+0x2b95 006989 fetch 1 ,mem_lpm_xtalcnt 
+0x2b96 006990 isub temp ,null 
+0x2b97 006991 branch lpm_clear_counter ,positive 
+0x2b98 006992 storet 4 ,mem_sleep_counter 
+0x2b99 006993 call app_will_enter_lpm 
+0x2b9a 006994 call l2cap_lpm_save_txbuf 
+0x2b9b 006995 fetcht 4 ,mem_sleep_counter 
+0x2b9c 006996 branch lpm_sleep 
+:      006998 lpm_dispatch_unconn:
+0x2b9d 006999 bpatch patch15_3 ,mem_patch15 
+0x2b9e 007000 fetch 1 ,mem_context 
+0x2b9f 007001 rtnbit1 state_inconn 
+0x2ba0 007002 rtnbit1 state_inpage 
+0x2ba1 007003 fetch 1 ,mem_ssp_enable 
+0x2ba2 007004 branch lpm_unconn_nossp ,blank 
+0x2ba3 007005 fetch 1 ,mem_sp_local_key_invalid 
+0x2ba4 007006 rtn blank 
+:      007007 lpm_unconn_nossp:
+0x2ba5 007008 bpatch patch15_4 ,mem_patch15 
+0x2ba6 007009 fetch 1 ,mem_le_adv_enable 
+0x2ba7 007010 nbranch lpm_unconn_cont ,blank 
+0x2ba8 007011 fetch 1 ,mem_scan_mode 
+0x2ba9 007012 rtn blank 
+:      007013 lpm_unconn_cont:
+0x2baa 007014 fetch 2 ,mem_lpm_interval 
+0x2bab 007015 rtn blank 
+:      007016 lpm_sleep_btclk:
+0x2bac 007017 fetcht 1 ,mem_lpm_overhead 
+0x2bad 007018 isub temp ,pdata 
+0x2bae 007019 arg 7500 ,temp 
+0x2baf 007020 imul32 temp ,pdata 
+0x2bb0 007021 branch lpm_dispatch_sleep 
+:      007023 lpm_set_mult:
+0x2bb1 007024 bpatch patch15_5 ,mem_patch15 
+0x2bb2 007025 disable wake 
+0x2bb3 007026 fetch 1 ,mem_state 
+0x2bb4 007027 rtnbit0 state_insniff 
+0x2bb5 007028 nbranch lpm_not_match ,match 
+0x2bb6 007029 call lpm_match 
+0x2bb7 007030 fetch 2 ,mem_rx_window_sniff 
+0x2bb8 007031 store 2 ,mem_rx_window 
+0x2bb9 007032 fetch 1 ,mem_arq 
+0x2bba 007033 bbit1 wack ,lpm_mult_short 
+0x2bbb 007034 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bbc 007035 call l2cap_malloc_is_fifo_empty 
+0x2bbd 007036 nbranch lpm_mult_short ,blank 
+0x2bbe 007037 fetch 1 ,mem_classic_bt_flag 
+0x2bbf 007038 bbit1 short_mult_flag ,lpm_mult_short 
+:      007039 lpm_mult_wait_timeout:
+0x2bc0 007040 jam 0 ,mem_lpm_current_mult 
+0x2bc1 007041 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bc2 007042 fetch 1 ,mem_lpm_mult_cnt 
+0x2bc3 007043 branch lpm_mult_long ,blank 
+0x2bc4 007044 increase -1 ,pdata 
+0x2bc5 007045 store 1 ,mem_lpm_mult_cnt 
+0x2bc6 007046 rtn 
+:      007049 classic_bt_set_mult_short_flag:
+0x2bc7 007050 arg short_mult_flag ,queue 
+0x2bc8 007051 branch classic_bluetooth_set_flag 
+:      007053 classic_bt_clr_mult_short_flag:
+0x2bc9 007054 arg short_mult_flag ,queue 
+0x2bca 007055 branch classic_bluetooth_clr_flag 
+:      007059 lpm_match:
+0x2bcb 007060 jam 0 ,mem_sniff_unint_lost 
+0x2bcc 007061 fetch 3 ,mem_sniff_rcv 
+0x2bcd 007062 increase 1 ,pdata 
+0x2bce 007063 store 3 ,mem_sniff_rcv 
+0x2bcf 007064 rtn 
+:      007066 lpm_not_match:
+0x2bd0 007067 bpatch patch15_6 ,mem_patch15 
+0x2bd1 007068 fetcht 2 ,mem_rx_window_sniff 
+0x2bd2 007069 rshift temp ,temp 
+0x2bd3 007070 fetch 2 ,mem_rx_window 
+0x2bd4 007071 iadd temp ,pdata 
+0x2bd5 007072 store 2 ,mem_rx_window 
+:      007073 lpm_lost:
+0x2bd6 007074 jam 0 ,mem_lpm_current_mult 
+0x2bd7 007075 fetch 3 ,mem_sniff_lost 
+0x2bd8 007076 increase 1 ,pdata 
+0x2bd9 007077 store 3 ,mem_sniff_lost 
+0x2bda 007078 fetch 1 ,mem_sniff_unint_lost 
+0x2bdb 007079 increase 1 ,pdata 
+0x2bdc 007080 store 1 ,mem_sniff_unint_lost 
+0x2bdd 007081 rtn 
+:      007083 lpm_mult_short:
+0x2bde 007084 jam 0 ,mem_lpm_current_mult 
+0x2bdf 007085 fetch 1 ,mem_lpm_mult_timeout 
+0x2be0 007086 store 1 ,mem_lpm_mult_cnt 
+0x2be1 007087 rtn 
+:      007089 lpm_mult_long:
+0x2be2 007090 fetcht 1 ,mem_lpm_mult 
+0x2be3 007091 storet 1 ,mem_lpm_current_mult 
+0x2be4 007092 rtn 
+:      007094 lpm_cal_xtal_startup:
+0x2be5 007095 bpatch patch15_7 ,mem_patch15 
+0x2be6 007096 fetch 1 ,mem_lpm_xtalcnt 
+0x2be7 007097 nrtn blank 
+0x2be8 007098 jam clksel_rc ,core_clksel 
+0x2be9 007099 setarg 0xf0c 
+0x2bea 007100 call lpm_write_config 
+0x2beb 007101 setarg 200000 
+0x2bec 007102 call sleep 
+0x2bed 007103 until null ,lpo_edge 
+0x2bee 007104 copy lpo_time ,alarm 
+0x2bef 007105 call xtal_fast_wake 
+0x2bf0 007106 jam clksel_xtal ,core_clksel 
+0x2bf1 007107 nop 10 
+0x2bf2 007108 until null ,lpo_edge 
+0x2bf3 007109 deposit lpo_time 
+0x2bf4 007110 isub alarm ,pdata 
+0x2bf5 007111 increase 0x30 ,pdata 
+0x2bf6 007112 arg 0xff ,temp 
+0x2bf7 007113 call ceiling 
+0x2bf8 007114 store 1 ,mem_lpm_xtalcnt 
+0x2bf9 007115 nop 30000 
+0x2bfa 007116 nop 30000 
+0x2bfb 007117 nop 30000 
+0x2bfc 007118 rtn 
+:      007120 lpm_cal_xtal_startup_by_snooze:
+0x2bfd 007121 fetch 1 ,mem_lpm_xtalcnt 
+0x2bfe 007122 nrtn blank 
+0x2bff 007123 jam 0xff ,core_xtal_stable_time 
+0x2c00 007124 jam clksel_rc ,core_clksel 
+0x2c01 007125 call xtal_fast_wake 
+0x2c02 007126 setarg 1000 
+0x2c03 007127 iadd lpo_time ,alarm 
+0x2c04 007128 snooze 
+0x2c05 007129 deposit lpo_time 
+0x2c06 007130 nop 12000 
+0x2c07 007131 nop 12000 
+0x2c08 007132 nop 12000 
+0x2c09 007133 nop 12000 
+0x2c0a 007134 nop 12000 
+0x2c0b 007135 nop 12000 
+0x2c0c 007136 nop 12000 
+0x2c0d 007137 nop 12000 
+0x2c0e 007138 nop 12000 
+0x2c0f 007139 isub alarm ,pdata 
+0x2c10 007140 add pdata ,0x30 ,pdata 
+0x2c11 007141 arg 0xff ,temp 
+0x2c12 007142 call ceiling 
+0x2c13 007143 store 1 ,mem_lpm_xtalcnt 
+0x2c14 007144 nop 30000 
+0x2c15 007145 nop 30000 
+0x2c16 007146 nop 30000 
+0x2c17 007147 rtn 
+:      007152 lpm_write_config:
+0x2c18 007153 arg 0xfff ,contw 
+0x2c19 007154 iand contw ,contw 
+0x2c1a 007155 fetch 1 ,mem_lpm_config 
+0x2c1b 007156 and_into 0xf0 ,pdata 
+0x2c1c 007157 lshift8 pdata ,pdata 
+0x2c1d 007158 ior contw ,pdata 
+0x2c1e 007159 hstore 2 ,core_lpm_reg 
+0x2c1f 007160 ifetch 2 ,contr 
+0x2c20 007161 istore 2 ,contw 
+:      007163 lpm_write_ctrl:
+0x2c21 007164 setarg lpmreg_sel_ctrl 
+0x2c22 007165 branch lpm_write 
+:      007167 lpm_write_ctrl2:
+0x2c23 007168 setarg lpmreg_sel_ctrl2 
+:      007169 lpm_write:
+0x2c24 007170 until null ,lpo_edge 
+0x2c25 007171 hstore 1 ,core_lpm_wr 
+0x2c26 007172 until null ,lpo_edge 
+0x2c27 007173 until null ,lpo_edge 
+0x2c28 007174 rtn 
+:      007177 lpm_write_gpio_wakeup:
+0x2c29 007178 bpatch patch16_0 ,mem_patch16 
+0x2c2a 007179 fetch 4 ,mem_gpio_wakeup_low 
+0x2c2b 007180 hstore 4 ,core_lpm_reg 
+0x2c2c 007181 setarg lpmreg_sel_gpiolow 
+0x2c2d 007182 call lpm_write 
+0x2c2e 007183 fetch 4 ,mem_gpio_wakeup_high 
+0x2c2f 007184 hstore 4 ,core_lpm_reg 
+0x2c30 007185 setarg lpmreg_sel_gpiohigh 
+0x2c31 007186 branch lpm_write 
+:      007188 lpm_get_wake_lock:
+0x2c32 007189 fetch 2 ,mem_lpm_wake_lock 
+0x2c33 007190 qset1 pdata 
+0x2c34 007191 store 2 ,mem_lpm_wake_lock 
+0x2c35 007192 rtn 
+:      007194 lpm_put_wake_lock:
+0x2c36 007195 fetch 2 ,mem_lpm_wake_lock 
+0x2c37 007196 qset0 pdata 
+0x2c38 007197 store 2 ,mem_lpm_wake_lock 
+0x2c39 007198 rtn 
+:      007202 lpm_check_wake_lock:
+0x2c3a 007203 bpatch patch16_1 ,mem_patch16 
+0x2c3b 007204 call app_check_wake_lock 
+0x2c3c 007205 fetch 2 ,mem_lpm_wake_lock 
+0x2c3d 007206 copy pdata ,rega 
+0x2c3e 007207 fetch 1 ,mem_state_map 
+0x2c3f 007208 isolate1 smap_rxlmp ,pdata 
+0x2c40 007209 setflag true ,wake_lock_lmp_rx ,rega 
+0x2c41 007210 fetch 1 ,mem_lmo_opcode1 
+0x2c42 007211 fetcht 1 ,mem_lmo_opcode2 
+0x2c43 007212 iadd temp ,pdata 
+0x2c44 007213 fetcht 1 ,mem_lmp_to_send 
+0x2c45 007214 iadd temp ,pdata 
+0x2c46 007215 nsetflag blank ,wake_lock_lmp_tx ,rega 
+0x2c47 007216 fetch 1 ,mem_le_tx_buff_used 
+0x2c48 007217 nsetflag blank ,wake_lock_ble_tx ,rega 
+0x2c49 007218 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x2c4a 007219 fetcht 2 ,mem_l2cap_rxbuff2_len 
+0x2c4b 007220 iadd temp ,pdata 
+0x2c4c 007221 nsetflag blank ,wake_lock_l2cap_rx ,rega 
+0x2c4d 007222 fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
+0x2c4e 007223 nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
+0x2c4f 007224 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
+0x2c50 007225 nsetflag blank ,wake_lock_ipc_c512bt ,rega 
+0x2c51 007226 fetch 1 ,mem_hci_cmd 
+0x2c52 007227 nsetflag blank ,wake_lock_cmd ,rega 
+0x2c53 007228 fetch 1 ,mem_device_option 
+0x2c54 007229 compare dvc_op_module ,pdata ,0xff 
+0x2c55 007230 call lpm_uart_wake_lock ,true 
+0x2c56 007231 setarg -8 
+0x2c57 007232 iand rega ,rega 
+0x2c58 007233 copy rega ,pdata 
+0x2c59 007234 store 2 ,mem_lpm_wake_lock 
+0x2c5a 007235 rtn 
+:      007237 lpm_uart_wake_lock:
+0x2c5b 007238 hfetch 2 ,core_uart_rxitems 
+0x2c5c 007239 nsetflag blank ,wake_lock_uart_rx ,rega 
+0x2c5d 007240 hfetch 2 ,core_uart_txitems 
+0x2c5e 007241 nsetflag blank ,wake_lock_uart_tx ,rega 
+0x2c5f 007242 rtn 
+:      007244 lpm_shut_down:
+0x2c60 007245 hfetch 4 ,core_lpm_ctrl 
+0x2c61 007246 set0 27 ,pdata 
+0x2c62 007247 hstore 4 ,core_lpm_reg 
+0x2c63 007248 call lpm_write_ctrl 
+0x2c64 007249 branch assert 
+:      007251 lpm_disable_exen_output:
+0x2c65 007252 hfetch 4 ,core_lpm_xtalcnt 
+0x2c66 007253 set0 20 ,pdata 
+0x2c67 007254 hstore 4 ,core_lpm_reg 
+0x2c68 007255 branch lpm_write_ctrl2 
+:      007257 check_bt_disabled:
+0x2c69 007258 fetch 2 ,mem_chip_functions 
+0x2c6a 007259 bbit1 bt_disabled ,assert 
+0x2c6b 007260 rtn 
+:      007261 check_ble_disabled:
+0x2c6c 007262 fetch 2 ,mem_chip_functions 
+0x2c6d 007263 bbit1 ble_disabled ,assert 
+0x2c6e 007264 rtn 
+:      007265 check_module_disabled:
+0x2c6f 007266 fetch 2 ,mem_chip_functions 
+0x2c70 007267 bbit1 module_disable ,assert 
+0x2c71 007268 rtn 
+:      007329 g24_dispatch:
+0x2c72 007330 bpatch patch16_2 ,mem_patch16 
+0x2c73 007331 call g24_head_ptr2regc 
+0x2c74 007332 add regc ,offset_24g_mode ,regb 
+0x2c75 007333 ifetch 1 ,regb 
+0x2c76 007335 rtneq disable_24g 
+0x2c77 007336 beq tx_24g ,g24_transmit_process 
+0x2c78 007337 beq rx_24g ,g24_receive_process 
+0x2c79 007338 rtn 
+:      007340 g24_head_ptr2regc:
+0x2c7a 007341 fetcht 2 ,mem_24g_head_ptr 
+0x2c7b 007342 copy temp ,regc 
+0x2c7c 007343 rtn 
+:      007345 g24_receive_process_init:
+0x2c7d 007346 call g24_receive_init 
+0x2c7e 007347 branch g24_mode_switch_init 
+:      007349 g24_receive_process:
+0x2c7f 007350 call g24_mode_switch 
+0x2c80 007351 call g24_dongle_work_mode_auto 
+0x2c81 007352 call g24_dongle_bind_mode_auto 
+0x2c82 007353 branch g24_dongle_search_mode_auto 
+:      007356 g24_pair_init:
+0x2c83 007359 call g24_set0_mem_pid 
+0x2c84 007360 setarg g24_pair_ch 
+0x2c85 007361 call g24_store_mem_ch 
+0x2c86 007362 call g24_store_mem_pair_txpower 
+0x2c87 007365 add regc ,offset_24g_paring_addr ,rega 
+0x2c88 007366 ifetch 4 ,rega 
+0x2c89 007367 branch g24_store_mem_addr 
+:      007369 g24_ch:
+0x2c8a 007370 call g24_head_ptr2regc 
+0x2c8b 007371 add regc ,offset_24g_current_ch_number ,regb 
+0x2c8c 007372 ifetcht 1 ,regb 
+0x2c8d 007374 call g24_ch_temp_incre_size4 
+0x2c8e 007375 add regc ,offset_24g_current_ch_number ,contw 
+0x2c8f 007377 branch g24_contw_istoret_1byte 
+:      007379 g24_ch_temp_incre_size4:
+0x2c90 007380 call g24_ch_calc 
+0x2c91 007381 increase 1 ,temp 
+0x2c92 007382 and_into 3 ,temp 
+0x2c93 007383 rtn 
+:      007385 g24_ch_calc:
+0x2c94 007386 add regc ,offset_24g_addr ,regb 
+0x2c95 007387 ifetch 1 ,regb 
+0x2c96 007389 and_into 0x03 ,pdata 
+0x2c97 007390 mul32 pdata ,4 ,rega 
+0x2c98 007391 add regc ,offset_24g_ch_map1 ,pdata 
+0x2c99 007393 iadd rega ,pdata 
+0x2c9a 007394 iadd temp ,contr 
+0x2c9b 007395 ifetch 1 ,contr 
+0x2c9c 007397 branch g24_store_mem_ch 
+:      007399 g24_set_device_addr:
+0x2c9d 007400 call g24_store_mem_tx_power_temp 
+0x2c9e 007401 call otp_enable_chgpump 
+0x2c9f 007402 setarg 0x7e2 
+0x2ca0 007403 arg mem_temp ,rega 
+0x2ca1 007404 arg 4 ,temp 
+0x2ca2 007405 call otpd_read_data 
+0x2ca3 007406 call otp_disable_chgpump 
+0x2ca4 007407 fetch 4 ,mem_temp 
+0x2ca5 007408 call g24_store_mem_device_addr 
+0x2ca6 007410 nrtn blank 
+0x2ca7 007411 fetch 4 ,mem_lap 
+0x2ca8 007413 branch g24_store_mem_device_addr 
+:      007415 g24_transmit_rf_sta_init:
+0x2ca9 007416 call g24_set1_mem_rf_last_sta 
+0x2caa 007418 setarg 0 
+0x2cab 007419 call g24_store_mem_sync_cnt 
+:      007421 g24_transmit_rf_ctrl_clear:
+0x2cac 007422 call g24_fetch_mem_data_type 
+0x2cad 007424 and_into bits_data ,pdata 
+0x2cae 007426 branch g24_store_mem_data_type 
+:      007428 g24_hop_ch_enable:
+0x2caf 007429 call g24_fetch_mem_data_type 
+0x2cb0 007431 set1 bit_hop ,pdata 
+0x2cb1 007432 call g24_store_mem_data_type 
+0x2cb2 007435 branch g24_store_mem_txpayload 
+:      007437 g24_transmit_hop_pac_fail:
+0x2cb3 007438 call g24_fetch_mem_rf_work_stage 
+0x2cb4 007440 beq 1 ,g24_transmit_hop_pac_fail_wo_hop 
+0x2cb5 007441 beq 2 ,g24_transmit_hop_pac_fail_hop_stage2 
+0x2cb6 007442 rtn 
+:      007444 g24_transmit_hop_pac_fail_wo_hop:
+0x2cb7 007445 call g24_set2_mem_sync_cnt 
+:      007447 g24_transmit_hop_pac_fail_stage1:
+0x2cb8 007448 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2cb9 007449 call g24_mem_set0 
+0x2cba 007451 call g24_store_mem_rf_last_sta 
+0x2cbb 007453 branch g24_transmit_rf_ctrl_clear 
+:      007455 g24_transmit_hop_pac_fail_hop_stage2:
+0x2cbc 007456 call g24_set0_mem_rf_hop_ch 
+0x2cbd 007458 branch g24_transmit_hop_pac_fail_stage1 
+:      007460 g24_transmit_pac_fail_hop_stage3:
+0x2cbe 007461 add regc ,offset_24g_txfail_cnt ,rega 
+0x2cbf 007462 ifetch 1 ,rega 
+0x2cc0 007464 increase 1 ,pdata 
+0x2cc1 007465 add regc ,offset_24g_txfail_cnt ,contw 
+0x2cc2 007466 istore 1 ,contw 
+0x2cc3 007468 beq 0x20 ,g24_tx_attempt_fail 
+0x2cc4 007469 call g24_fetch_mem_rf_hop_ch 
+0x2cc5 007471 beq 1 ,g24_rf_hop_fastly 
+0x2cc6 007472 setarg 1 
+0x2cc7 007473 call g24_store_mem_rf_hop_ch 
+:      007475 g24_rf_hop_attemp_again:
+0x2cc8 007476 call g24_fetch_mem_rf_hop_ch 
+0x2cc9 007478 bne 1 ,g24_transmit_rf_ctrl_clear 
+:      007479 g24_rf_hop_fastly:
+0x2cca 007480 add regc ,offset_24g_hop_fastly_cnt ,rega 
+0x2ccb 007481 ifetch 1 ,rega 
+0x2ccc 007483 increase 1 ,pdata 
+0x2ccd 007484 call g24_store_mem_hop_fastly_cnt 
+0x2cce 007486 beq 4 ,g24_rf_hop_fastly_exit 
+0x2ccf 007487 call g24_ch 
+0x2cd0 007488 call g24_set2_mem_max_retry 
+0x2cd1 007490 branch g24_transmit_packet 
+:      007492 g24_rf_hop_fastly_exit:
+0x2cd2 007493 call g24_set0_mem_hop_fastly_cnt 
+0x2cd3 007495 branch g24_transmit_rf_ctrl_clear 
+:      007497 g24_set0_mem_hop_fastly_cnt:
+0x2cd4 007498 setarg 0 
+:      007499 g24_store_mem_hop_fastly_cnt:
+0x2cd5 007500 add regc ,offset_24g_hop_fastly_cnt ,contw 
+0x2cd6 007501 branch g24_contw_istore_1byte 
+:      007503 g24_transmit_hop_pac_succ_wo_hop:
+0x2cd7 007504 call g24_set2_mem_sync_cnt 
+:      007506 g24_transmit_hop_pac_succ:
+0x2cd8 007507 call g24_set0_mem_rf_hop_ch 
+0x2cd9 007509 call g24_set1_mem_rf_last_sta 
+0x2cda 007511 branch g24_transmit_rf_ctrl_clear 
+:      007513 g24_transmit_succ_rf_config:
+0x2cdb 007514 call g24_fetch_mem_rf_work_stage 
+0x2cdc 007516 beq 3 ,g24_transmit_hop_pac_succ 
+0x2cdd 007517 call g24_fetch_mem_data_type 
+0x2cde 007519 isolate0 bit_hop ,pdata 
+0x2cdf 007520 branch g24_transmit_rf_sta_init ,true 
+0x2ce0 007521 call g24_fetch_mem_rf_work_stage 
+0x2ce1 007523 beq 1 ,g24_transmit_hop_pac_succ_wo_hop 
+0x2ce2 007524 beq 2 ,g24_transmit_hop_pac_succ 
+0x2ce3 007525 rtn 
+:      007527 g24_rf_sta_check:
+0x2ce4 007528 call g24_fetch_mem_pairing_sm 
+0x2ce5 007530 rtnne state_24g_pairing_success 
+0x2ce6 007531 call g24_rf_laststa_synccnt_check 
+0x2ce7 007532 ncall g24_rf_sync_cnt_check ,user2 
+0x2ce8 007533 rtn 
+:      007535 g24_rf_laststa_synccnt_check:
+0x2ce9 007536 disable user2 
+0x2cea 007537 add regc ,offset_24g_rf_last_sta ,rega 
+0x2ceb 007538 ifetch 1 ,rega 
+0x2cec 007540 rtnne 1 
+0x2ced 007541 add regc ,offset_24g_sync_cnt ,rega 
+0x2cee 007542 ifetch 1 ,rega 
+0x2cef 007544 rtnne 0 
+0x2cf0 007545 setarg 1 
+0x2cf1 007546 call g24_store_mem_rf_work_stage 
+0x2cf2 007548 call g24_set4_mem_max_retry 
+0x2cf3 007550 branch enable_user2 
+:      007552 g24_rf_sync_cnt_check:
+0x2cf4 007553 add regc ,offset_24g_sync_cnt ,rega 
+0x2cf5 007554 ifetch 1 ,rega 
+0x2cf6 007556 branch g24_rf_hop_attemp ,blank 
+0x2cf7 007557 increase -1 ,pdata 
+0x2cf8 007558 call g24_store_mem_sync_cnt 
+0x2cf9 007560 setarg 2 
+0x2cfa 007561 call g24_store_mem_rf_work_stage 
+0x2cfb 007563 call g24_ch 
+0x2cfc 007565 branch g24_set4_mem_max_retry 
+:      007567 g24_store_mem_rf_work_stage:
+0x2cfd 007568 add regc ,offset_24g_rf_work_stage ,contw 
+0x2cfe 007569 branch g24_contw_istore_1byte 
+:      007572 g24_rf_hop_attemp:
+0x2cff 007573 setarg 3 
+0x2d00 007574 call g24_store_mem_rf_work_stage 
+0x2d01 007576 call g24_fetch_mem_rf_hop_ch 
+0x2d02 007578 nbranch g24_rf_hop_attemp_again ,blank 
+0x2d03 007579 call g24_ch 
+:      007581 g24_set2_mem_max_retry:
+0x2d04 007582 setarg 2 
+0x2d05 007583 branch g24_store_mem_max_retry 
+:      007585 g24_transmit_process:
+0x2d06 007586 rtnmark0 mark_24g 
+0x2d07 007587 set1 mark_24g_conext ,mark 
+0x2d08 007588 bpatch patch16_3 ,mem_patch16 
+0x2d09 007589 add regc ,offset_24g_tx_without_int ,rega 
+0x2d0a 007590 ifetch 1 ,rega 
+0x2d0b 007592 beq 1 ,g24_transmit_without_int 
+0x2d0c 007593 call g24_timer_check 
+0x2d0d 007594 nbranch g24_transmit_exit ,user 
+0x2d0e 007595 call g24_interval_calibrate 
+:      007596 g24_transmit_without_int:
+0x2d0f 007597 add regc ,offset_24g_tx_without_int ,contw 
+0x2d10 007598 call g24_mem_set0 
+0x2d11 007600 call g24_txdata_prep 
+0x2d12 007601 nbranch g24_enter_lpm ,user 
+0x2d13 007602 call g24_rf_sta_check 
+:      007603 g24_transmit_start:
+0x2d14 007604 call g24_transmit_packet 
+0x2d15 007605 call g24_power_ctrl 
+:      007606 g24_transmit_exit:
+0x2d16 007607 set0 mark_24g_conext ,mark 
+0x2d17 007608 rtn 
+:      007610 g24_timer_timeout:
+0x2d18 007611 rtn zero 
+0x2d19 007612 set1 28 ,pdata 
+0x2d1a 007613 rtn 
+:      007615 g24_interval_calibrate:
+0x2d1b 007616 add regc ,offset_24g_pac_index ,rega 
+0x2d1c 007617 ifetch 1 ,rega 
+0x2d1d 007619 increase 1 ,pdata 
+0x2d1e 007620 add regc ,offset_24g_pac_index ,contw 
+0x2d1f 007621 istore 1 ,contw 
+0x2d20 007623 beq 4 ,g24_interval_max 
+0x2d21 007624 beq 5 ,g24_interval_min 
+0x2d22 007625 rtn 
+:      007626 g24_interval_max:
+0x2d23 007627 add regc ,offset_24g_interval_max ,rega 
+0x2d24 007628 ifetch 1 ,rega 
+:      007630 g24_interval_update:
+0x2d25 007632 add regc ,offset_24g_interval ,contw 
+0x2d26 007633 branch g24_contw_istore_1byte 
+:      007635 g24_interval_min:
+0x2d27 007636 add regc ,offset_24g_pac_index ,contw 
+0x2d28 007637 call g24_mem_set0 
+0x2d29 007639 add regc ,offset_24g_interval_min ,rega 
+0x2d2a 007640 ifetch 1 ,rega 
+0x2d2b 007642 branch g24_interval_update 
+:      007644 g24_txdata_prep:
+0x2d2c 007645 call g24_fetch_mem_pairing_sm 
+0x2d2d 007647 bne state_24g_pairing_success ,g24_pairing_sm 
+0x2d2e 007648 bpatch patch16_4 ,mem_patch16 
+0x2d2f 007649 call g24_package_data 
+0x2d30 007650 nbranch g24_txdata_last_pac ,user 
+0x2d31 007651 call g24_transmit_prep 
+0x2d32 007652 call g24_power_ctrl_pac_incrs 
+:      007653 g24_txdata_enable_tx:
+0x2d33 007655 setarg ensure_on_24g 
+:      007656 g24_store_mem_ensure:
+0x2d34 007657 add regc ,offset_24g_ensure ,contw 
+0x2d35 007658 branch g24_contw_istore_1byte 
+:      007660 g24_txdata_last_pac:
+0x2d36 007661 add regc ,offset_24g_ensure ,rega 
+0x2d37 007662 ifetch 1 ,rega 
+0x2d38 007664 beq ensure_on_24g ,enable_user 
+0x2d39 007665 rtn 
+:      007667 g24_package_data:
+0x2d3a 007669 add regc ,offset_24g_cb_data ,temp 
+0x2d3b 007670 ifetch 2 ,temp 
+0x2d3c 007672 call callback_func 
+0x2d3d 007673 nrtn user 
+0x2d3e 007674 copy rega ,pdata 
+0x2d3f 007675 store 1 ,mem_rega 
+0x2d40 007676 add regc ,offset_24g_abort_pac ,contw 
+0x2d41 007677 call g24_mem_set0 
+0x2d42 007679 call g24_transmit_rf_ctrl_clear 
+0x2d43 007680 store 1 ,mem_24g_common_temp 
+0x2d44 007681 fetch 1 ,mem_rega 
+0x2d45 007682 copy pdata ,rega 
+0x2d46 007683 add rega ,1 ,temp 
+0x2d47 007684 arg mem_24g_common_temp + 1 ,contw 
+0x2d48 007685 copy rega ,loopcnt 
+0x2d49 007686 copy regb ,contr 
+0x2d4a 007687 call memcpy 
+0x2d4b 007688 arg mem_24g_common_temp ,rega 
+:      007689 g24_put_data_in_buff:
+0x2d4c 007690 rtnmark0 mark_24g_conext 
+0x2d4d 007691 add regc ,offset_24g_datalen ,contw 
+0x2d4e 007692 istoret 1 ,contw 
+0x2d4f 007694 copy temp ,loopcnt 
+0x2d50 007695 add regc ,offset_24g_txbuf ,contw 
+0x2d51 007697 copy rega ,contr 
+0x2d52 007698 branch memcpy 
+:      007700 g24_transmit_prep:
+0x2d53 007702 add regc ,offset_24g_datalen ,rega 
+0x2d54 007703 ifetch 1 ,rega 
+0x2d55 007705 increase 2 ,pdata 
+0x2d56 007706 add regc ,offset_24g_txlen ,contw 
+0x2d57 007707 istore 1 ,contw 
+0x2d58 007710 call g24_fetch_mem_data_type 
+0x2d59 007712 call g24_store_mem_txpayload 
+0x2d5a 007715 add regc ,offset_24g_datalen ,rega 
+0x2d5b 007716 ifetch 1 ,rega 
+0x2d5c 007718 lshift3 pdata ,pdata 
+0x2d5d 007719 add regc ,offset_24g_pid ,rega 
+0x2d5e 007720 ifetcht 1 ,rega 
+0x2d5f 007722 and temp ,0x03 ,temp 
+0x2d60 007723 lshift temp ,temp 
+0x2d61 007724 ior temp ,pdata 
+0x2d62 007725 add regc ,offset_24g_no_ack ,rega 
+0x2d63 007726 ifetcht 1 ,rega 
+0x2d64 007728 iadd temp ,pdata 
+0x2d65 007729 istore 1 ,contw 
+0x2d66 007731 add regc ,offset_24g_datalen ,rega 
+0x2d67 007732 ifetch 1 ,rega 
+0x2d68 007734 iforce loopcnt 
+0x2d69 007735 add regc ,offset_24g_txbuf ,contr 
+0x2d6a 007737 branch memcpy 
+:      007739 g24_send_abort_packet:
+0x2d6b 007740 call g24_set1_mem_abort_pac 
+0x2d6c 007742 call g24_set0_mem_rf_hop_ch 
+0x2d6d 007744 call g24_power_ctrl_reinit 
+0x2d6e 007745 call g24_transmit_rf_ctrl_clear 
+0x2d6f 007746 store 1 ,mem_24g_common_temp 
+0x2d70 007747 call g24_put_data_in_buff_pre 
+0x2d71 007748 call g24_fetch_mem_data_type 
+0x2d72 007750 set1 bit_abort ,pdata 
+0x2d73 007751 call g24_store_mem_data_type 
+0x2d74 007753 call g24_transmit_prep 
+0x2d75 007754 call g24_txdata_enable_tx 
+0x2d76 007755 branch g24_transmit_start 
+:      007757 g24_put_data_in_buff_pre:
+0x2d77 007758 store 1 ,mem_24g_common_temp + 1 
+0x2d78 007759 call g24_fetch_mem_device_addr 
+0x2d79 007761 store 4 ,mem_24g_common_temp + 2 
+0x2d7a 007762 arg 6 ,temp 
+0x2d7b 007763 arg mem_24g_common_temp ,rega 
+0x2d7c 007764 branch g24_put_data_in_buff 
+:      007766 g24_enter_lpm:
+0x2d7d 007767 add regc ,offset_24g_abort_pac ,rega 
+0x2d7e 007768 ifetch 1 ,rega 
+0x2d7f 007770 branch g24_send_abort_packet ,blank 
+:      007771 g24_enter_lpm_prepare:
+0x2d80 007773 add regc ,offset_24g_cb_lpm_prepare ,rega 
+0x2d81 007774 ifetch 2 ,rega 
+0x2d82 007776 branch callback_func 
+:      007778 g24_lpm_long_sleep:
+0x2d83 007779 call g24_head_ptr2regc 
+0x2d84 007781 call lpo_calibration 
+0x2d85 007782 fetch 3 ,mem_clks_per_lpo 
+0x2d86 007783 rtn blank 
+0x2d87 007784 add regc ,offset_24g_cb_lpm_before ,temp 
+0x2d88 007785 ifetch 2 ,temp 
+0x2d89 007787 call callback_func 
+0x2d8a 007788 add regc ,offset_24g_enter_hibernate ,temp 
+0x2d8b 007789 ifetch 8 ,temp 
+0x2d8c 007790 call clk2lpo 
+0x2d8d 007791 storet 4 ,mem_sleep_counter 
+0x2d8e 007792 branch lpm_sleep 
+:      007794 g24_transmit_packet:
+0x2d8f 007795 call g24_head_ptr2regc 
+0x2d90 007796 add regc ,offset_24g_retry ,contw 
+0x2d91 007797 call g24_mem_set0 
+:      007799 g24_transmit_loop:
+0x2d92 007800 call g24_transmit_receive_ack 
+0x2d93 007801 nbranch g24_retransmit ,sync 
+0x2d94 007802 nbranch g24_retransmit ,user3 
+0x2d95 007803 call g24_ackpayload_parse 
+0x2d96 007804 call g24_power_ctrl_ack_incrs 
+:      007805 g24_transmit_next_packet:
+0x2d97 007806 call g24_head_ptr2regc 
+0x2d98 007807 add regc ,offset_24g_pid ,rega 
+0x2d99 007808 ifetch 1 ,rega 
+0x2d9a 007810 increase 1 ,pdata 
+0x2d9b 007811 call g24_store_mem_pid 
+0x2d9c 007813 call g24_fetch_mem_pairing_sm 
+0x2d9d 007815 bne state_24g_pairing_success ,g24_paring_mode 
+0x2d9e 007816 call g24_transmit_succ_rf_config 
+:      007817 g24_transmit_abandon:
+0x2d9f 007818 setarg 0 
+0x2da0 007819 add regc ,offset_24g_txfail_cnt ,contw 
+0x2da1 007820 istore 2 ,contw 
+0x2da2 007824 setarg ensure_off_24g 
+0x2da3 007825 branch g24_store_mem_ensure 
+:      007828 g24_transmit_receive_ack:
+0x2da4 007829 disable user3 
+0x2da5 007830 call g24_transmit 
+0x2da6 007831 call g24_head_ptr2regc 
+0x2da7 007832 add regc ,offset_24g_no_ack ,rega 
+0x2da8 007833 ifetch 1 ,rega 
+0x2da9 007835 beq no_ack_24g ,g24_transmit_no_ack 
+0x2daa 007836 call g24_receive_packet 
+0x2dab 007837 branch g24_end_of_packet 
+:      007838 g24_transmit_no_ack:
+0x2dac 007839 call g24_end_of_packet 
+0x2dad 007840 branch g24_transmit_next_packet 
+:      007843 g24_retransmit:
+0x2dae 007844 bpatch patch16_5 ,mem_patch16 
+0x2daf 007845 add regc ,offset_24g_get_ack_fail ,rega 
+0x2db0 007846 ifetch 1 ,rega 
+0x2db1 007848 increase 1 ,pdata 
+0x2db2 007849 add regc ,offset_24g_get_ack_fail ,contw 
+0x2db3 007850 istore 1 ,contw 
+0x2db4 007852 call g24_fetch_mem_pairing_sm 
+0x2db5 007854 bne state_24g_pairing_success ,g24_tx_paring_retry 
+0x2db6 007855 add regc ,offset_24g_retry ,rega 
+0x2db7 007856 ifetcht 1 ,rega 
+0x2db8 007858 increase 1 ,temp 
+0x2db9 007859 add regc ,offset_24g_retry ,contw 
+0x2dba 007860 istoret 1 ,contw 
+0x2dbb 007862 add regc ,offset_24g_max_retry ,rega 
+0x2dbc 007863 ifetch 1 ,rega 
+0x2dbd 007865 isub temp ,pdata 
+0x2dbe 007866 nbranch g24_transmit_loop ,blank 
+0x2dbf 007867 bpatch patch16_6 ,mem_patch16 
+0x2dc0 007868 call g24_fetch_mem_rf_work_stage 
+0x2dc1 007870 beq 3 ,g24_transmit_pac_fail_hop_stage3 
+0x2dc2 007871 add regc ,offset_24g_hop_pac_retry ,rega 
+0x2dc3 007872 ifetch 1 ,rega 
+0x2dc4 007874 increase 1 ,pdata 
+0x2dc5 007875 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2dc6 007876 istore 1 ,contw 
+0x2dc7 007878 beq 2 ,g24_transmit_hop_pac_fail 
+0x2dc8 007879 call g24_hop_ch_enable 
+0x2dc9 007880 setarg 1 
+0x2dca 007881 call g24_store_mem_max_retry 
+0x2dcb 007883 branch g24_transmit_packet 
+:      007885 g24_tx_paring_retry:
+0x2dcc 007886 add regc ,offset_24g_get_ack_fail ,rega 
+0x2dcd 007887 ifetch 1 ,rega 
+0x2dce 007889 rtnne 0xff 
+0x2dcf 007890 add regc ,offset_24g_get_ack_fail ,contw 
+0x2dd0 007891 call g24_mem_set0 
+0x2dd1 007893 branch g24_stop_24g_mode 
+:      007895 g24_tx_attempt_fail:
+0x2dd2 007896 add regc ,offset_24g_txfail_cnt ,contw 
+0x2dd3 007897 call g24_mem_set0 
+:      007899 g24_stop_24g_mode:
+0x2dd4 007900 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+0x2dd5 007901 branch ui_ipc_send_event 
+:      007903 g24_ackpayload_parse:
+0x2dd6 007904 call g24_read_len_pid_crc 
+0x2dd7 007905 add regc ,offset_24g_rxdata_length ,rega 
+0x2dd8 007906 ifetch 1 ,rega 
+0x2dd9 007908 rtn blank 
+0x2dda 007909 iforce loopcnt 
+0x2ddb 007910 add regc ,offset_24g_rxbuf_add2 ,contr 
+0x2ddc 007912 add regc ,offset_24g_rxpayload ,contw 
+0x2ddd 007914 branch memcpy 
+:      007917 g24_read_len_pid_crc:
+0x2dde 007919 call g24_fetch_mem_rxbuf_add1 
+0x2ddf 007921 rshift3 pdata ,pdata 
+0x2de0 007922 add regc ,offset_24g_rxdata_length ,contw 
+0x2de1 007923 istore 1 ,contw 
+0x2de2 007926 increase 1 ,pdata 
+0x2de3 007927 add regc ,offset_24g_rxbuf_add1 ,contr 
+0x2de4 007929 iadd contr ,contr 
+0x2de5 007930 ifetch 3 ,contr 
+0x2de6 007931 add regc ,offset_24g_sta_crc ,contw 
+0x2de7 007932 istore 3 ,contw 
+0x2de8 007935 call g24_fetch_mem_rxbuf_add1 
+0x2de9 007937 rshift pdata ,pdata 
+0x2dea 007938 and pdata ,0x03 ,pdata 
+0x2deb 007939 add regc ,offset_24g_sta_pid ,contw 
+0x2dec 007940 istore 1 ,contw 
+0x2ded 007942 rtn 
+:      007944 g24_prep:
+0x2dee 007945 disable enable_crc 
+0x2def 007946 disable enable_white 
+0x2df0 007947 setarg 0x555555 
+0x2df1 007948 iforce crc24_init 
+0x2df2 007949 rtn 
+:      007951 g24_set_freq_tx:
+0x2df3 007952 call set_sync_on 
+0x2df4 007953 add regc ,offset_24g_ch ,rega 
+0x2df5 007954 ifetcht 1 ,rega 
+0x2df6 007956 branch set_freq_tx 
+:      007958 g24_transmit:
+0x2df7 007959 call g24_prep 
+0x2df8 007960 call g24_set_freq_tx 
+0x2df9 007961 set1 txgfsk ,radio_ctrl 
+0x2dfa 007962 enable encode_fec0 
+0x2dfb 007963 enable is_tx 
+0x2dfc 007964 disable is_rx 
+0x2dfd 007965 call le_enable 
+0x2dfe 007966 call g24_fetch_mem_addr 
+0x2dff 007968 iforce access 
+0x2e00 007969 inject mod ,32 
+0x2e01 007970 enable enable_crc 
+0x2e02 007971 add regc ,offset_24g_txlen ,rega 
+0x2e03 007972 ifetch 1 ,rega 
+0x2e04 007974 iforce loopcnt 
+0x2e05 007975 add regc ,offset_24g_txpayload ,contr 
+:      007977 g24tr_loop:
+0x2e06 007978 ifetch 1 ,contr 
+0x2e07 007979 inject mod ,8 
+0x2e08 007980 loop g24tr_loop 
+0x2e09 007981 enable enable_parity 
+0x2e0a 007982 inject mod ,24 
+0x2e0b 007983 disable enable_parity 
+0x2e0c 007984 until null ,tx_clear 
+0x2e0d 007985 bpatch patch16_7 ,mem_patch16 
+0x2e0e 007986 nop 100 
+0x2e0f 007987 disable encode_fec0 
+0x2e10 007988 rtn 
+:      007990 g24_receive_packet:
+0x2e11 007991 disable user3 
+0x2e12 007992 force 0 ,radio_ctrl 
+0x2e13 007993 add regc ,offset_24g_ch ,rega 
+0x2e14 007994 ifetcht 1 ,rega 
+0x2e15 007996 call set_freq_rx 
+0x2e16 007997 call rf_rx_enable 
+:      007998 g24_receive_rxon:
+0x2e17 007999 call g24_prep 
+0x2e18 008000 enable decode_fec0 
+0x2e19 008001 enable is_rx 
+0x2e1a 008002 disable is_tx 
+0x2e1b 008003 call le_enable 
+0x2e1c 008004 call g24_fetch_mem_addr 
+0x2e1d 008006 iforce access 
+0x2e1e 008007 enable swfine 
+0x2e1f 008008 add regc ,offset_24g_rx_window ,rega 
+0x2e20 008009 ifetch 2 ,rega 
+0x2e21 008011 iforce stop_watch 
+0x2e22 008012 correlate null ,timeout 
+0x2e23 008013 nbranch g24_sync_timeout ,sync 
+0x2e24 008014 enable enable_crc 
+0x2e25 008015 parse demod ,bucket ,8 
+0x2e26 008016 rshift3 pwindow ,pdata 
+0x2e27 008017 add regc ,offset_24g_rxbuf ,contw 
+0x2e28 008018 istore 1 ,contw 
+0x2e29 008020 add regc ,offset_24g_mode ,rega 
+0x2e2a 008021 ifetch 1 ,rega 
+0x2e2b 008023 beq rx_24g ,g24_receive_skip 
+0x2e2c 008024 bpatch patch17_0 ,mem_patch17 
+0x2e2d 008025 add regc ,offset_24g_rxbuf ,rega 
+0x2e2e 008026 ifetch 1 ,rega 
+0x2e2f 008028 add regc ,offset_24g_data_type ,rega 
+0x2e30 008029 ifetcht 1 ,rega 
+0x2e31 008031 icompare bits_data ,temp 
+0x2e32 008032 nbranch g24_end_of_packet ,true 
+:      008033 g24_receive_skip:
+0x2e33 008034 parse demod ,bucket ,8 
+0x2e34 008035 rshift3 pwindow ,pdata 
+0x2e35 008036 istore 1 ,contw 
+0x2e36 008037 rshift3 pdata ,pdata 
+0x2e37 008038 and pdata ,0x1f ,loopcnt 
+0x2e38 008039 branch g24rx_nopayload ,zero 
+:      008040 g24rx_loop:
+0x2e39 008041 parse demod ,bucket ,8 
+0x2e3a 008042 rshift3 pwindow ,pdata 
+0x2e3b 008043 istore 1 ,contw 
+0x2e3c 008044 loop g24rx_loop 
+:      008045 g24rx_nopayload:
+0x2e3d 008046 parse demod ,bucket ,24 
+0x2e3e 008047 rshift32 pdata ,pdata 
+0x2e3f 008048 rshift16 pdata ,pdata 
+0x2e40 008049 istore 3 ,contw 
+0x2e41 008050 branch g24_end_of_packet ,crc_failed 
+0x2e42 008051 enable user3 
+0x2e43 008052 disable decode_fec0 
+0x2e44 008053 rtn 
+:      008056 g24_end_of_packet:
+0x2e45 008057 disable encode_fec0 
+0x2e46 008058 disable decode_fec0 
+0x2e47 008059 disable enable_crc 
+0x2e48 008060 disable enable_white 
+0x2e49 008061 branch shutdown_radio ,is_rx 
+0x2e4a 008062 until null ,tx_clear 
+0x2e4b 008063 nop 100 
+0x2e4c 008064 branch shutdown_radio 
+:      008066 g24_sync_timeout:
+0x2e4d 008067 call rssi_noise 
+0x2e4e 008068 branch g24_end_of_packet 
+:      008070 rssi_noise:
+0x2e4f 008071 call save_rssi 
+0x2e50 008072 rtn blank 
+0x2e51 008073 add regc ,offset_rssi_noise_index ,rega 
+0x2e52 008074 ifetcht 1 ,rega 
+0x2e53 008076 arg mem_rssi_noise_buffer ,rega 
+0x2e54 008078 call rssi_noise_store 
+0x2e55 008079 add regc ,offset_rssi_noise_index ,contw 
+:      008081 g24_contw_istoret_1byte:
+0x2e56 008082 istoret 1 ,contw 
+0x2e57 008083 rtn 
+:      008085 rssi_noise_store:
+0x2e58 008086 arg rssi_buf_len_noise ,regb 
+0x2e59 008087 branch rssi_store 
+:      008105 rssi_store:
+0x2e5a 008106 copy rega ,pdata 
+0x2e5b 008107 iadd temp ,contw 
+0x2e5c 008108 fetch 1 ,mem_rssi 
+0x2e5d 008109 istore 1 ,contw 
+0x2e5e 008110 increase 1 ,temp 
+0x2e5f 008111 copy regb ,pdata 
+0x2e60 008112 iand_into temp 
+0x2e61 008113 rtn 
+:      008115 rssi_average:
+0x2e62 008116 arg 0 ,temp 
+0x2e63 008117 copy rega ,contr 
+:      008118 rssi_average_loop:
+0x2e64 008119 ifetch 1 ,contr 
+0x2e65 008120 iadd temp ,temp 
+0x2e66 008121 loop rssi_average_loop 
+0x2e67 008122 rshift8 temp ,temp 
+0x2e68 008123 rtn 
+:      008125 g24_power_ctrl_init:
+0x2e69 008126 call g24_head_ptr2regc 
+0x2e6a 008127 call g24_power_ctrl_incrs_level1 
+0x2e6b 008128 setarg 1 
+0x2e6c 008129 call g24_store_mem_power_ctrl_level 
+:      008131 g24_power_ctrl_reinit:
+0x2e6d 008132 setarg 0 
+0x2e6e 008133 call g24_store_mem_power_ctrl_pac 
+0x2e6f 008135 istore 1 ,contw 
+0x2e70 008137 rtn 
+:      008139 g24_power_ctrl_pac_incrs:
+0x2e71 008140 call g24_fetch_mem_power_ctrl_pac 
+0x2e72 008142 increase 1 ,pdata 
+:      008143 g24_store_mem_power_ctrl_pac:
+0x2e73 008145 add regc ,offset_power_ctrl_packet_cnt ,contw 
+0x2e74 008146 branch g24_contw_istore_1byte 
+:      008148 g24_power_ctrl_ack_incrs:
+0x2e75 008151 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e76 008152 ifetch 1 ,rega 
+0x2e77 008153 increase 1 ,pdata 
+0x2e78 008154 add regc ,offset_power_ctrl_ack_cnt ,contw 
+0x2e79 008155 branch g24_contw_istore_1byte 
+:      008157 g24_power_ctrl:
+0x2e7a 008158 bpatch patch17_1 ,mem_patch17 
+0x2e7b 008159 call g24_fetch_mem_power_ctrl_pac 
+0x2e7c 008161 sub pdata ,power_ctrl_max_packet_cnt ,null 
+0x2e7d 008162 rtn positive 
+0x2e7e 008163 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e7f 008164 ifetcht 1 ,rega 
+0x2e80 008166 isub temp ,temp 
+0x2e81 008167 call g24_power_ctrl_reinit 
+0x2e82 008168 setarg offset_power_ctrl_threshold_up 
+0x2e83 008169 iadd regc ,rega 
+0x2e84 008170 ifetch 1 ,rega 
+0x2e85 008172 isub temp ,null 
+0x2e86 008173 nbranch g24_power_ctrl_incrs ,positive 
+0x2e87 008174 setarg offset_power_ctrl_threshold_down 
+0x2e88 008175 iadd regc ,rega 
+0x2e89 008176 ifetch 1 ,rega 
+0x2e8a 008178 isub temp ,null 
+0x2e8b 008179 branch g24_power_ctrl_decrs ,positive 
+0x2e8c 008180 rtn 
+:      008182 g24_power_ctrl_incrs:
+0x2e8d 008183 add regc ,offset_power_ctrl_level ,rega 
+0x2e8e 008184 ifetch 1 ,rega 
+0x2e8f 008186 beq 2 ,g24_power_ctrl_incrs_level2 
+0x2e90 008187 increase 1 ,pdata 
+0x2e91 008188 call g24_store_mem_power_ctrl_level 
+0x2e92 008190 beq 1 ,g24_power_ctrl_incrs_level1 
+:      008191 g24_power_ctrl_incrs_level2:
+0x2e93 008192 setarg power_ctrl_losspac_thresh_up2 
+0x2e94 008193 call g24_store_mem_power_ctrl_threshold_up 
+0x2e95 008195 setarg power_ctrl_losspac_thresh_down2 
+0x2e96 008196 call g24_store_mem_power_ctrl_threshold_down 
+0x2e97 008199 add regc ,offset_power_ctrl_txpwr_level2 ,rega 
+0x2e98 008201 branch g24_ifetch_rega_store_mem_txpower 
+:      008203 g24_power_ctrl_decrs:
+0x2e99 008204 add regc ,offset_power_ctrl_level ,rega 
+0x2e9a 008205 ifetch 1 ,rega 
+0x2e9b 008207 beq 0 ,g24_power_ctrl_decrs_level0 
+0x2e9c 008208 increase -1 ,pdata 
+0x2e9d 008209 call g24_store_mem_power_ctrl_level 
+0x2e9e 008211 beq 0 ,g24_power_ctrl_decrs_level0 
+:      008212 g24_power_ctrl_decrs_level1:
+:      008215 g24_power_ctrl_incrs_level1:
+0x2e9f 008216 setarg power_ctrl_losspac_thresh_up1 
+0x2ea0 008217 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea1 008219 setarg power_ctrl_losspac_thresh_down1 
+0x2ea2 008220 call g24_store_mem_power_ctrl_threshold_down 
+0x2ea3 008223 setarg offset_power_ctrl_txpwr_level1 
+:      008224 g24_iadd_offset_mem_txpower:
+0x2ea4 008225 iadd regc ,rega 
+:      008226 g24_ifetch_rega_store_mem_txpower:
+0x2ea5 008227 ifetch 1 ,rega 
+0x2ea6 008229 branch g24_store_mem_txpower 
+:      008231 g24_power_ctrl_decrs_level0:
+0x2ea7 008234 setarg power_ctrl_losspac_thresh_up0 
+0x2ea8 008235 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea9 008237 setarg power_ctrl_losspac_thresh_down0 
+0x2eaa 008238 call g24_store_mem_power_ctrl_threshold_down 
+0x2eab 008241 setarg offset_power_ctrl_txpwr_level0 
+0x2eac 008243 branch g24_iadd_offset_mem_txpower 
+:      008257 g24_start_pairing_sm1:
+0x2ead 008258 set1 mark_24g ,mark 
+0x2eae 008259 call g24_pair_init 
+:      008260 g24_set_pairing_sm_1:
+0x2eaf 008262 setarg state_24g_pairing_1 
+0x2eb0 008263 branch g24_store_mem_pairing_sm 
+:      008265 g24_pairing_sm:
+0x2eb1 008266 add regc ,offset_24g_ensure ,rega 
+0x2eb2 008267 ifetch 1 ,rega 
+0x2eb3 008269 beq ensure_on_24g ,enable_user 
+0x2eb4 008270 call g24_fetch_mem_pairing_sm 
+0x2eb5 008272 beq state_24g_pairing_1 ,g24_pairing_sm_1 
+0x2eb6 008273 beq state_24g_pairing_2 ,g24_pairing_sm_2 
+0x2eb7 008274 beq state_24g_pairing_3 ,g24_pairing_sm_3 
+0x2eb8 008275 branch assert 
+:      008277 g24_pairing_sm_1:
+0x2eb9 008278 setarg state_24g_pairing_1_waiting_ack 
+0x2eba 008279 call g24_store_mem_pairing_sm 
+0x2ebb 008281 jam 0xaa ,mem_24g_common_temp 
+0x2ebc 008282 branch g24_pairing_sm_common 
+:      008283 g24_pairing_sm_2:
+0x2ebd 008284 setarg state_24g_pairing_2_waiting_ack 
+0x2ebe 008285 call g24_store_mem_pairing_sm 
+0x2ebf 008287 jam 0x55 ,mem_24g_common_temp 
+0x2ec0 008288 branch g24_pairing_sm_common 
+:      008289 g24_pairing_sm_3:
+0x2ec1 008290 setarg state_24g_pairing_3_waiting_ack 
+0x2ec2 008291 call g24_store_mem_pairing_sm 
+0x2ec3 008293 jam 0x22 ,mem_24g_common_temp 
+:      008294 g24_pairing_sm_common:
+0x2ec4 008295 call g24_fetch_mem_data_type 
+0x2ec5 008297 and_into bits_data ,pdata 
+0x2ec6 008298 store 1 ,mem_24g_common_temp + 1 
+0x2ec7 008299 call g24_fetch_mem_device_addr 
+0x2ec8 008301 store 4 ,mem_24g_common_temp + 2 
+:      008302 g24_put_pairing_data_in_buff:
+0x2ec9 008303 jam 0 ,mem_24g_common_temp + 6 
+0x2eca 008304 arg mem_24g_common_temp ,rega 
+0x2ecb 008305 arg 7 ,temp 
+0x2ecc 008306 call g24_put_data_in_buff 
+0x2ecd 008307 call g24_transmit_prep 
+0x2ece 008308 call g24_txdata_enable_tx 
+0x2ecf 008309 branch enable_user 
+:      008311 g24_paring_mode:
+0x2ed0 008312 call g24_fetch_mem_pairing_sm 
+0x2ed1 008314 rtneq state_24g_pairing_success 
+0x2ed2 008315 beq state_24g_pairing_1_waiting_ack ,g24_pairing_sm_1_waiting_ack 
+0x2ed3 008316 beq state_24g_pairing_2_waiting_ack ,g24_pairing_sm_2_waiting_ack 
+0x2ed4 008317 beq state_24g_pairing_3_waiting_ack ,g24_pairing_sm_3_waiting_ack 
+0x2ed5 008318 rtn 
+:      008320 g24_pairing_sm_1_waiting_ack:
+0x2ed6 008321 setarg state_24g_pairing_2 
+0x2ed7 008322 call g24_store_mem_pairing_sm 
+0x2ed8 008324 branch g24_transmit_abandon 
+:      008325 g24_pairing_sm_2_waiting_ack:
+0x2ed9 008326 setarg state_24g_pairing_3 
+0x2eda 008327 call g24_store_mem_pairing_sm 
+0x2edb 008329 branch g24_transmit_abandon 
+:      008330 g24_pairing_sm_3_waiting_ack:
+0x2edc 008331 setarg state_24g_pairing_success 
+0x2edd 008332 call g24_store_mem_pairing_sm 
+0x2ede 008334 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
+0x2edf 008335 call ui_ipc_send_event 
+0x2ee0 008336 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ee1 008337 ifetch 4 ,rega 
+0x2ee2 008339 call g24_store_mem_addr 
+0x2ee3 008341 branch g24_transmit_abandon 
+:      008343 g24_auto_pair_start:
+0x2ee4 008344 set0 mark_24g ,mark 
+0x2ee5 008345 call g24_auto_pair_set_device_info 
+0x2ee6 008346 call g24_tx_attemp_data_prep 
+:      008347 g24_auto_pair_restart:
+0x2ee7 008348 call g24_set0_mem_check_dongle_times 
+:      008349 g24_auto_pair_start_loop:
+0x2ee8 008350 nop 2000 
+0x2ee9 008351 call g24_fetch_mem_check_dongle_times 
+0x2eea 008352 beq 0xff ,g24_stop_24g_mode 
+0x2eeb 008353 call g24_transmit_receive_ack 
+0x2eec 008354 nbranch g24_auto_pair_retry ,sync 
+0x2eed 008355 nbranch g24_auto_pair_retry ,user3 
+0x2eee 008356 call g24_ackpayload_parse 
+0x2eef 008357 call g24_head_ptr2regc 
+0x2ef0 008358 add regc ,offset_24g_paring_addr ,rega 
+0x2ef1 008359 ifetcht 4 ,rega 
+0x2ef2 008360 call g24_fetch_mem_addr_isub_temp 
+0x2ef3 008361 branch g24_start_pairing_sm1 ,zero 
+0x2ef4 008362 call g24_head_ptr2regc 
+0x2ef5 008363 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ef6 008364 ifetch 4 ,rega 
+0x2ef7 008365 beq 0 ,g24_auto_pair_restart 
+0x2ef8 008366 call g24_store_mem_addr 
+0x2ef9 008367 branch g24_tx_attemp_dongle_succ 
+:      008369 g24_auto_pair_retry:
+0x2efa 008370 call g24_fetch_mem_check_dongle_times 
+0x2efb 008371 increase 1 ,pdata 
+0x2efc 008372 call g24_store_mem_check_dongle_times 
+0x2efd 008374 call g24_fetch_mem_auto_paring_switch 
+0x2efe 008375 increase 1 ,pdata 
+0x2eff 008376 and_into 1 ,pdata 
+0x2f00 008377 call g24_store_mem_auto_paring_switch 
+0x2f01 008378 beq 0 ,g24_auto_pair_device_attemp 
+0x2f02 008379 beq 1 ,g24_auto_pair_pair_attemp 
+0x2f03 008380 rtn 
+:      008382 g24_fetch_mem_auto_paring_switch:
+0x2f04 008383 setarg offset_24g_auto_pair_switch 
+0x2f05 008384 branch g24_set_rega_ifetch_1byte 
+:      008385 g24_store_mem_auto_paring_switch:
+0x2f06 008386 arg offset_24g_auto_pair_switch ,rega 
+0x2f07 008387 branch g24_set_contw_with_regb_store_1byte 
+:      008389 g24_auto_pair_set_device_info:
+0x2f08 008390 call g24_store_mem_tx_power 
+0x2f09 008391 call g24_fetch_mem_device_addr 
+0x2f0a 008392 call g24_store_mem_addr 
+0x2f0b 008393 branch g24_ch 
+:      008395 g24_auto_pair_device_attemp:
+0x2f0c 008396 call g24_auto_pair_set_device_info 
+0x2f0d 008397 branch g24_auto_pair_start_loop 
+:      008399 g24_auto_pair_pair_attemp:
+0x2f0e 008400 call g24_pair_init 
+0x2f0f 008401 branch g24_auto_pair_start_loop 
+:      008404 g24_start_24g_mode:
+0x2f10 008405 set0 mark_24g ,mark 
+0x2f11 008406 call g24_ch 
+0x2f12 008407 call g24_fetch_mem_pairing_sm 
+0x2f13 008409 rtnne state_24g_pairing_success 
+0x2f14 008410 call g24_tx_attemp_data_prep 
+0x2f15 008411 call g24_set0_mem_check_dongle_times 
+:      008413 g24_tx_attemp_dongle_loop:
+0x2f16 008414 nop 2000 
+0x2f17 008415 call g24_fetch_mem_check_dongle_times 
+0x2f18 008417 beq 0xff ,g24_stop_24g_mode 
+0x2f19 008418 call g24_transmit_receive_ack 
+0x2f1a 008419 nbranch g24_attemp_txdata_retry ,sync 
+0x2f1b 008420 nbranch g24_attemp_txdata_retry ,user3 
+:      008421 g24_tx_attemp_dongle_succ:
+0x2f1c 008422 set1 mark_24g ,mark 
+0x2f1d 008423 call g24_set0_mem_check_dongle_times 
+0x2f1e 008424 setarg state_24g_pairing_success 
+0x2f1f 008425 call g24_store_mem_pairing_sm 
+:      008427 g24_app_tx_attempt_success:
+0x2f20 008428 jam bt_evt_24g_attempt_success ,mem_fifo_temp 
+0x2f21 008429 branch ui_ipc_send_event 
+:      008431 g24_tx_attemp_data_prep:
+0x2f22 008432 set1 mark_24g_conext ,mark 
+0x2f23 008433 jam 0xff ,mem_24g_common_temp 
+0x2f24 008434 call g24_fetch_mem_data_type 
+0x2f25 008436 call g24_put_data_in_buff_pre 
+0x2f26 008437 branch g24_transmit_prep 
+:      008439 g24_attemp_txdata_retry:
+0x2f27 008440 call g24_fetch_mem_check_dongle_times 
+0x2f28 008442 increase 1 ,pdata 
+0x2f29 008443 call g24_store_mem_check_dongle_times 
+0x2f2a 008445 call g24_ch 
+0x2f2b 008446 branch g24_tx_attemp_dongle_loop 
+:      008448 g24_check_51cmd_start_24g:
+0x2f2c 008449 call g24_store_mem_tx_power 
+0x2f2d 008452 setarg state_24g_pairing_success 
+0x2f2e 008453 call g24_store_mem_pairing_sm 
+0x2f2f 008455 branch g24_start_24g_mode 
+:      008464 dongle_init:
+0x2f30 008465 bpatch patch17_2 ,mem_patch17 
+0x2f31 008466 call g24_head_ptr2regc 
+0x2f32 008467 setarg dongle_rxdata_type1 
+0x2f33 008468 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x2f34 008469 istore 2 ,contw 
+0x2f35 008471 call g24_receive_init 
+0x2f36 008472 call usb_init 
+0x2f37 008473 call g24_fetch_mem_pair_mode 
+0x2f38 008475 bpatch patch17_3 ,mem_patch17 
+0x2f39 008476 beq 0x00 ,dongle_auto_bind 
+0x2f3a 008477 beq 0x01 ,dongle_pc_bind 
+0x2f3b 008478 beq 0x0f ,dongle_all_powerful 
+0x2f3c 008479 branch assert 
+:      008481 g24_receive_init:
+0x2f3d 008482 call g24_store_mem_tx_power_temp 
+0x2f3e 008483 arg 0x80 ,loopcnt 
+0x2f3f 008484 arg mem_rssi_noise_buffer ,contw 
+0x2f40 008485 branch memset0 
+:      008487 dongle_all_powerful:
+0x2f41 008488 call dongle_check_mode 
+:      008489 dongle_all_powerful_loop:
+0x2f42 008490 call g24_dongle_work_mode 
+0x2f43 008491 call usb_isr 
+0x2f44 008492 branch dongle_all_powerful_loop 
+:      008494 dongle_pc_bind:
+0x2f45 008495 bpatch patch17_4 ,mem_patch17 
+0x2f46 008496 call dongle_check_mode 
+:      008497 dongle_pc_bind_loop:
+0x2f47 008498 call g24_dongle_work_mode 
+0x2f48 008499 call g24_dongle_bind_mode 
+0x2f49 008500 call usb_isr 
+0x2f4a 008501 call dongle_usb_dispatch 
+0x2f4b 008502 branch dongle_pc_bind_loop 
+:      008504 dongle_check_mode:
+0x2f4c 008508 call g24_set_work_mem_dongle_work_mode 
+0x2f4d 008509 call g24_set0_mem_dongle_mode_init 
+0x2f4e 008510 branch g24_set0_mem_ackpayload_enable 
+:      008512 g24_dongle_work_mode:
+0x2f4f 008513 call g24_fetch_mem_dongle_work_mode 
+0x2f50 008515 rtnne dongle_work 
+:      008516 g24_dongle_work_mode_start:
+0x2f51 008517 call g24_dongle_work_init 
+0x2f52 008518 call g24_ch_process 
+0x2f53 008519 call g24_receive_packet_start 
+0x2f54 008520 branch g24_blank_data_process 
+:      008522 g24_dongle_work_init:
+0x2f55 008523 call g24_fetch_mem_dongle_mode_init 
+0x2f56 008525 rtnbit1 dongle_work 
+0x2f57 008526 set1 dongle_work ,pdata 
+0x2f58 008527 call g24_store_mem_dongle_mode_init 
+0x2f59 008529 call g24_store_mem_tx_power 
+0x2f5a 008532 call g24_set0_mem_ackpayload_enable 
+0x2f5b 008534 jam 0 ,mem_usb_tx_enable 
+0x2f5c 008535 call g24_set1_mem_abort_pac 
+0x2f5d 008537 call g24_dongle_init 
+:      008538 g24_rx_interrupt_clear:
+0x2f5e 008539 add regc ,offset_24g_rxbuf ,contw 
+0x2f5f 008541 arg 66 ,loopcnt 
+0x2f60 008542 branch clear_mem 
+:      008544 g24_dongle_init:
+0x2f61 008545 call g24_set0_mem_pid 
+0x2f62 008547 call g24_fetch_mem_rx_addr 
+0x2f63 008549 call g24_store_mem_addr 
+0x2f64 008551 branch g24_ch 
+:      008553 g24_ch_process:
+0x2f65 008554 bpatch patch17_5 ,mem_patch17 
+0x2f66 008555 call g24_fetch_mem_abort_pac 
+0x2f67 008557 beq 1 ,g24_noise_rssi 
+0x2f68 008558 call g24_fetch_mem_hop_pac 
+0x2f69 008560 beq 1 ,g24_ch 
+0x2f6a 008561 setarg offset_24g_hop_btclk 
+0x2f6b 008562 iadd regc ,rega 
+0x2f6c 008563 ifetcht 4 ,rega 
+0x2f6d 008565 copy clkn_bt ,pdata 
+0x2f6e 008566 isub temp ,null 
+0x2f6f 008567 ncall g24_timer_timeout ,positive 
+0x2f70 008568 copy pdata ,regb 
+0x2f71 008569 setarg offset_24g_hop_btclk 
+0x2f72 008570 iadd regc ,rega 
+0x2f73 008571 ifetch 4 ,rega 
+0x2f74 008572 copy pdata ,temp 
+0x2f75 008574 setarg offset_24g_hop_interval 
+0x2f76 008575 iadd regc ,rega 
+0x2f77 008576 copy temp ,pdata 
+0x2f78 008577 ifetcht 1 ,rega 
+0x2f79 008579 iadd temp ,temp 
+0x2f7a 008580 copy regb ,pdata 
+0x2f7b 008581 isub temp ,null 
+0x2f7c 008582 nrtn positive 
+0x2f7d 008583 set0 28 ,pdata 
+0x2f7e 008584 setarg offset_24g_hop_btclk 
+0x2f7f 008585 iadd regc ,contw 
+0x2f80 008586 istore 4 ,contw 
+:      008588 g24_ch_update:
+0x2f81 008589 call g24_ch 
+0x2f82 008590 call g24_fetch_mem_rf_laststa 
+0x2f83 008592 increase 1 ,pdata 
+0x2f84 008593 call g24_store_mem_rf_laststa 
+0x2f85 008595 rtnne 2 
+0x2f86 008596 call g24_set0_mem_rf_laststa 
+0x2f87 008600 branch g24_set1_mem_abort_pac 
+:      008602 g24_ch_timer_reinit:
+0x2f88 008603 copy clkn_bt ,pdata 
+0x2f89 008604 arg offset_24g_hop_btclk ,rega 
+0x2f8a 008605 call g24_set_contw_with_temp 
+0x2f8b 008606 istore 4 ,contw 
+0x2f8c 008610 branch g24_set0_mem_rf_laststa 
+:      008612 g24_noise_rssi:
+0x2f8d 008613 arg mem_rssi_noise_buffer ,rega 
+0x2f8e 008614 call g24_noise_rssi_average 
+0x2f8f 008615 add regc ,offset_rssi_noise_avg ,contw 
+0x2f90 008616 istoret 1 ,contw 
+0x2f91 008618 sub temp ,rssi_thresh_noise ,null 
+0x2f92 008619 nrtn positive 
+0x2f93 008620 branch g24_ch 
+:      008622 g24_noise_rssi_average:
+0x2f94 008623 arg rssi_buf_len_noise + 1 ,loopcnt 
+0x2f95 008624 branch rssi_average 
+:      008626 g24_blank_data_process:
+0x2f96 008627 call g24_ms_blank_data 
+0x2f97 008628 call g24_kb_blank_data 
+0x2f98 008629 branch g24_kb_mul_blank_data 
+:      008631 g24_ms_blank_data:
+0x2f99 008632 setarg offset_24g_ms_blank_data_enable 
+0x2f9a 008633 call g24_set_rega_ifetch_1byte 
+0x2f9b 008635 rtn blank 
+0x2f9c 008636 arg timer_ms_blank ,queue 
+0x2f9d 008637 call timer_check 
+0x2f9e 008638 nrtn blank 
+0x2f9f 008639 call g24_set0_mem_ms_blank_data_enable 
+:      008641 g24_ms_blank_data_2usb:
+0x2fa0 008642 setarg ms_report_id 
+0x2fa1 008643 store 1 ,mem_usb_mouse_data 
+0x2fa2 008644 setarg 0 
+0x2fa3 008645 istore 7 ,contw 
+0x2fa4 008646 branch g24_data_type1_usbtx_enable 
+:      008648 g24_kb_blank_data:
+0x2fa5 008649 setarg offset_24g_kb_blank_data_enable 
+0x2fa6 008650 call g24_set_rega_ifetch_1byte 
+0x2fa7 008652 rtn blank 
+0x2fa8 008653 arg timer_kb_blank ,queue 
+0x2fa9 008654 call timer_check 
+0x2faa 008655 nrtn blank 
+0x2fab 008656 call g24_set0_mem_kb_blank_data_enable 
+:      008658 g24_kb_blank_data_2usb:
+0x2fac 008659 arg mem_usb_kb_data ,contw 
+0x2fad 008660 arg 2 ,loopcnt 
+0x2fae 008661 call memset0 
+0x2faf 008662 jam kb_normal_report_id ,mem_usb_kb_data 
+0x2fb0 008663 branch g24_kb_data_into_ep1_fifo 
+:      008665 g24_kb_mul_blank_data:
+0x2fb1 008666 setarg offset_24g_kb_mul_blank_data_enable 
+0x2fb2 008667 call g24_set_rega_ifetch_1byte 
+0x2fb3 008669 rtn blank 
+0x2fb4 008670 arg timer_kb_mul_blank ,queue 
+0x2fb5 008671 call timer_check 
+0x2fb6 008672 nrtn blank 
+0x2fb7 008673 call g24_set0_mem_kb_mul_blank_data_enable 
+:      008675 g24_kb_mul_blank_data_2usb:
+0x2fb8 008676 arg mem_usb_kb_multikey ,contw 
+0x2fb9 008677 arg 2 ,loopcnt 
+0x2fba 008678 call memset0 
+0x2fbb 008679 jam kb_multikey_report_id ,mem_usb_kb_multikey 
+0x2fbc 008680 branch g24_kb_mul_data_into_ep2_fifo 
+:      008682 g24_dongle_bind_mode:
+0x2fbd 008683 call g24_fetch_mem_dongle_work_mode 
+0x2fbe 008685 rtnne dongle_bind 
+0x2fbf 008686 call g24_dongle_bind_init 
+0x2fc0 008687 branch g24_dongle_bind_data_process 
+:      008689 g24_dongle_bind_init:
+0x2fc1 008690 call g24_fetch_mem_dongle_mode_init 
+0x2fc2 008692 rtnbit1 dongle_bind 
+0x2fc3 008693 set1 dongle_bind ,pdata 
+0x2fc4 008694 call g24_store_mem_dongle_mode_init 
+0x2fc5 008696 call g24_set1_mem_ackpayload_enable 
+0x2fc6 008698 call g24_pair_init 
+0x2fc7 008699 setarg 0 
+0x2fc8 008700 arg offset_dongle_ms_bind_step ,rega 
+0x2fc9 008701 call g24_set_contw_with_temp 
+0x2fca 008703 branch g24_contw_istore_3byte 
+:      008705 g24_dongle_bind_data_process:
+0x2fcb 008706 call g24_receive_transmit_ack 
+0x2fcc 008707 nbranch g24_rx_interrupt_clear ,user3 
+0x2fcd 008708 add regc ,offset_24g_rxbuf ,contr 
+0x2fce 008709 setarg offset_24g_rxdata_temp 
+0x2fcf 008710 iadd regc ,contw 
+0x2fd0 008711 arg 8 ,loopcnt 
+0x2fd1 008712 call memcpy 
+0x2fd2 008713 setarg offset_24g_rxdata_temp_add2 
+0x2fd3 008714 call g24_set_rega_ifetch_1byte 
+0x2fd4 008715 beq datatype_bind ,g24_dongle_bind_first_step 
+0x2fd5 008716 beq datatype_config ,g24_dongle_bind_second_step 
+0x2fd6 008717 beq datatype_ok ,g24_dongle_bind_third_step 
+0x2fd7 008718 beq 0xff ,g24_data_attemp 
+0x2fd8 008719 branch g24_rx_interrupt_clear 
+:      008721 g24_dongle_bind_first_step:
+0x2fd9 008722 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fda 008723 beq bind_mouse ,g24_dongle_bind_first_step_mouse 
+0x2fdb 008724 beq bind_keyboard ,g24_dongle_bind_first_step_keyboard 
+0x2fdc 008725 rtn 
+:      008726 g24_dongle_bind_first_step_mouse:
+0x2fdd 008727 setarg 1 
+0x2fde 008728 call g24_store_mem_ms_bind_step 
+:      008730 g24_dongle_bind_ms_payload_cfg:
+0x2fdf 008731 setarg datatype_mouse 
+0x2fe0 008732 call g24_store_mem_bind_payload 
+:      008734 g24_dongle_bind_payload_cfg:
+0x2fe1 008735 setarg 0x80 
+0x2fe2 008736 arg offset_24g_bind_payload_add1 ,rega 
+0x2fe3 008737 call g24_set_contw_with_regb_store_1byte 
+0x2fe4 008739 call g24_fetch_mem_rx_addr 
+0x2fe5 008741 arg offset_24g_bind_payload_add2 ,rega 
+0x2fe6 008742 call g24_set_contw_with_temp 
+0x2fe7 008744 branch g24_contw_istore_4byte 
+:      008746 g24_dongle_bind_first_step_keyboard:
+0x2fe8 008747 setarg 1 
+0x2fe9 008748 call g24_store_mem_kb_bind_step 
+:      008750 g24_dongle_bind_kb_payload_cfg:
+0x2fea 008751 setarg datatype_keyboard 
+0x2feb 008752 call g24_store_mem_bind_payload 
+0x2fec 008754 branch g24_dongle_bind_payload_cfg 
+:      008756 g24_dongle_bind_second_step:
+0x2fed 008757 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fee 008758 beq bind_mouse ,g24_dongle_bind_second_step_mouse 
+0x2fef 008759 beq bind_keyboard ,g24_dongle_bind_second_step_keyboard 
+0x2ff0 008760 rtn 
+:      008761 g24_dongle_bind_second_step_mouse:
+0x2ff1 008762 call g24_dongle_bind_ms_payload_cfg 
+0x2ff2 008763 setarg offset_dongle_ms_bind_step 
+0x2ff3 008764 call g24_set_rega_ifetch_1byte 
+0x2ff4 008766 beq 1 ,g24_dongle_ms_bind_step_set2 
+0x2ff5 008767 rtn 
+:      008768 g24_dongle_ms_bind_step_set2:
+0x2ff6 008769 setarg 2 
+:      008771 g24_store_mem_ms_bind_step:
+0x2ff7 008772 arg offset_dongle_ms_bind_step ,rega 
+0x2ff8 008773 branch g24_set_contw_with_regb_store_1byte 
+:      008775 g24_dongle_bind_second_step_keyboard:
+0x2ff9 008776 call g24_dongle_bind_kb_payload_cfg 
+0x2ffa 008777 setarg offset_dongle_kb_bind_step 
+0x2ffb 008778 call g24_set_rega_ifetch_1byte 
+0x2ffc 008780 beq 1 ,g24_dongle_kb_bind_step_set2 
+0x2ffd 008781 rtn 
+:      008782 g24_dongle_kb_bind_step_set2:
+0x2ffe 008783 setarg 2 
+:      008785 g24_store_mem_kb_bind_step:
+0x2fff 008786 arg offset_dongle_kb_bind_step ,rega 
+0x3000 008787 branch g24_set_contw_with_regb_store_1byte 
+:      008789 g24_dongle_bind_third_step:
+0x3001 008790 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3002 008791 beq bind_mouse ,g24_dongle_bind_third_step_mouse 
+0x3003 008792 beq bind_keyboard ,g24_dongle_bind_third_step_keyboard 
+0x3004 008793 rtn 
+:      008794 g24_dongle_bind_third_step_mouse:
+0x3005 008795 setarg offset_dongle_ms_bind_step 
+0x3006 008796 call g24_set_rega_ifetch_1byte 
+0x3007 008798 beq 2 ,g24_dongle_ms_bind_step_success 
+0x3008 008799 rtn 
+:      008800 g24_dongle_ms_bind_step_success:
+0x3009 008801 call g24_fetch_mem_bind_device_status 
+0x300a 008803 or_into 0x01 ,pdata 
+0x300b 008804 call g24_store_mem_bind_device_status 
+:      008806 g24_dongle_bind_exit:
+0x300c 008807 setarg 0 
+0x300d 008808 setarg offset_dongle_ms_bind_step 
+0x300e 008809 iadd regc ,contw 
+0x300f 008810 istore 2 ,contw 
+0x3010 008811 branch g24_rx_interrupt_clear 
+:      008813 g24_dongle_bind_third_step_keyboard:
+0x3011 008814 setarg offset_dongle_kb_bind_step 
+0x3012 008815 call g24_set_rega_ifetch_1byte 
+0x3013 008817 bne 0 ,g24_dongle_kb_bind_step_success 
+0x3014 008818 rtn 
+:      008819 g24_dongle_kb_bind_step_success:
+0x3015 008820 call g24_fetch_mem_bind_device_status 
+0x3016 008822 or_into 0x02 ,pdata 
+0x3017 008823 call g24_store_mem_bind_device_status 
+0x3018 008825 branch g24_dongle_bind_exit 
+:      008828 dongle_usb_dispatch:
+0x3019 008829 fetch 1 ,mem_usb0_get_set_report 
+0x301a 008830 rtn blank 
+0x301b 008831 jam 0 ,mem_usb0_get_set_report 
+0x301c 008832 fetch 2 ,mem_usb_setup_bvalue_temp 
+0x301d 008833 arg pc_set_report ,temp 
+0x301e 008834 isub temp ,null 
+0x301f 008835 nrtn zero 
+0x3020 008837 fetch 1 ,mem_usb0_set_report_data 
+0x3021 008838 rtnne pc_report_id 
+0x3022 008839 fetch 1 ,mem_usb0_set_report_data + 1 
+0x3023 008840 bpatch patch17_6 ,mem_patch17 
+0x3024 008841 beq command_mode ,dongle_dispose_cmd_mode 
+0x3025 008842 beq command_bind ,dongle_dispose_cmd_bind 
+0x3026 008843 beq command_current_project ,dongle_dispose_cmd_current_project 
+0x3027 008844 beq command_current_mode ,dongle_dispose_cmd_current_mode 
+0x3028 008845 beq command_current_fw_version ,dongle_dispose_cmd_current_fw_version 
+0x3029 008846 beq command_user_defined ,dongle_dispose_cmd_user_defined 
+:      008847 usb0_data_ready_report_set0:
+0x302a 008848 jam 0 ,mem_usb0_data_ready_report 
+0x302b 008849 rtn 
+:      008850 dongle_dispose_cmd_bind:
+0x302c 008851 fetch 1 ,mem_usb0_set_report_data + 2 
+0x302d 008852 beq com_bind_get ,dongle_dispose_cmd_get_bind 
+0x302e 008853 beq com_bind_exit ,dongle_dispose_cmd_exit_bind 
+0x302f 008854 beq com_read_mode ,dongle_dispose_cmd_read_mode 
+0x3030 008855 branch usb0_data_ready_report_set0 
+:      008856 dongle_dispose_cmd_get_bind:
+0x3031 008857 call g24_fetch_mem_bind_device_status 
+0x3032 008859 store 1 ,mem_usb0_get_report_data + 1 
+0x3033 008860 branch usb0_data_ready_report_set1 
+:      008861 dongle_dispose_cmd_exit_bind:
+0x3034 008862 call g24_set_work_mem_dongle_work_mode 
+0x3035 008864 call g24_set0_mem_dongle_mode_init 
+0x3036 008866 call g24_fetch_mem_bind_device_status 
+0x3037 008868 store 1 ,mem_usb0_get_report_data + 1 
+0x3038 008869 branch usb0_data_ready_report_set1 
+:      008871 dongle_dispose_cmd_read_mode:
+:      008872 dongle_dispose_in_bind_mode:
+0x3039 008873 jam command_bind ,mem_usb0_get_report_data + 1 
+0x303a 008874 branch usb0_data_ready_report_set1 
+:      008876 dongle_dispose_cmd_mode:
+0x303b 008877 fetch 1 ,mem_usb0_set_report_data + 2 
+0x303c 008878 beq com_mode_bind ,dongle_enter_bind_mode 
+0x303d 008880 branch usb0_data_ready_report_set0 
+:      008881 dongle_enter_bind_mode:
+0x303e 008884 call g24_bind_mode_enable 
+:      008885 usb0_data_ready_report_set1:
+0x303f 008886 jam 1 ,mem_usb0_data_ready_report 
+0x3040 008887 rtn 
+:      008892 dongle_dispose_cmd_current_project:
+0x3041 008893 jam product_id ,mem_usb0_get_report_data + 1 
+0x3042 008894 branch usb0_data_ready_report_set1 
+:      008896 dongle_dispose_cmd_current_mode:
+0x3043 008897 call g24_fetch_mem_dongle_work_mode 
+0x3044 008899 beq dongle_work ,dongle_dispose_in_work_mode 
+0x3045 008900 beq dongle_bind ,dongle_dispose_in_bind_mode 
+0x3046 008902 rtn 
+:      008903 dongle_dispose_in_work_mode:
+0x3047 008904 jam command_mode ,mem_usb0_get_report_data + 1 
+0x3048 008905 branch usb0_data_ready_report_set1 
+:      008910 dongle_dispose_cmd_current_fw_version:
+0x3049 008911 jam fw_version0 ,mem_usb0_get_report_data + 1 
+0x304a 008912 jam fw_version1 ,mem_usb0_get_report_data + 2 
+0x304b 008913 jam fw_version2 ,mem_usb0_get_report_data + 3 
+0x304c 008914 branch usb0_data_ready_report_set1 
+:      008916 dongle_dispose_cmd_user_defined:
+0x304d 008918 call g24_set1_mem_ackpayload_enable 
+0x304e 008919 fetch 1 ,mem_usb0_set_report_data + 2 
+0x304f 008920 increase 2 ,pdata 
+0x3050 008921 copy pdata ,loopcnt 
+0x3051 008922 arg mem_usb0_set_report_data ,contr 
+0x3052 008923 setarg offset_24g_ackpayload 
+0x3053 008924 iadd regc ,contw 
+0x3054 008925 branch memcpy 
+:      008928 dongle_auto_bind:
+0x3055 008929 bpatch patch17_7 ,mem_patch17 
+0x3056 008930 call g24_mode_switch_init 
+:      008931 dongle_auto_bind_loop:
+0x3057 008932 call g24_receive_process 
+0x3058 008933 call usb_isr 
+0x3059 008934 branch dongle_auto_bind_loop 
+:      008936 g24_dongle_work_mode_auto:
+0x305a 008937 call g24_fetch_mem_dongle_work_mode 
+0x305b 008939 rtnne dongle_work 
+0x305c 008940 call g24_dongle_work_mode_start 
+0x305d 008941 branch g24_rx_nodata_process 
+:      008943 g24_dongle_bind_mode_auto:
+0x305e 008944 call g24_fetch_mem_dongle_work_mode 
+0x305f 008946 rtnne dongle_bind 
+0x3060 008947 call g24_dongle_bind_init 
+0x3061 008948 call g24_dongle_bind_data_process 
+0x3062 008949 call g24_fetch_mem_bind_device_status 
+0x3063 008951 rtn blank 
+0x3064 008952 call g24_set0_mem_mode_switch 
+0x3065 008954 call dongle_check_mode 
+0x3066 008955 call g24_enable_nodata_timer 
+:      008956 g24_timer_init:
+0x3067 008957 setarg 0 
+0x3068 008958 add regc ,offset_24g_tx_btclk ,contw 
+0x3069 008960 branch g24_contw_istore_4byte 
+:      008962 g24_timer_check:
+0x306a 008963 call disable_user 
+0x306b 008964 add regc ,offset_24g_tx_btclk ,rega 
+0x306c 008965 ifetcht 4 ,rega 
+0x306d 008967 copy clkn_bt ,pdata 
+0x306e 008968 isub temp ,null 
+0x306f 008969 ncall g24_timer_timeout ,positive 
+0x3070 008970 copy pdata ,regb 
+0x3071 008971 add regc ,offset_24g_tx_btclk ,rega 
+0x3072 008972 ifetch 4 ,rega 
+0x3073 008974 add regc ,offset_24g_interval ,rega 
+0x3074 008975 ifetcht 1 ,rega 
+0x3075 008977 iadd temp ,temp 
+0x3076 008978 copy regb ,pdata 
+0x3077 008979 isub temp ,null 
+0x3078 008980 nrtn positive 
+0x3079 008981 set0 28 ,pdata 
+0x307a 008982 add regc ,offset_24g_tx_btclk ,contw 
+0x307b 008983 istore 4 ,contw 
+0x307c 008985 branch enable_user 
+:      008987 g24_mode_switch_init:
+0x307d 008988 setarg 1 
+0x307e 008989 call g24_store_mem_mode_switch 
+0x307f 008991 call g24_set0_mem_time_slice 
+0x3080 008993 setarg 0xff 
+0x3081 008994 add regc ,offset_24g_interval ,contw 
+0x3082 008995 istore 1 ,contw 
+0x3083 008997 branch g24_timer_init 
+:      008999 g24_mode_switch:
+0x3084 009000 setarg offset_24g_mode_switch 
+0x3085 009001 call g24_set_rega_ifetch_1byte 
+0x3086 009003 rtn blank 
+0x3087 009004 call g24_timer_check 
+0x3088 009005 nrtn user 
+0x3089 009006 call g24_fetch_mem_time_slice 
+0x308a 009008 increase 1 ,pdata 
+0x308b 009009 and_into 1 ,pdata 
+0x308c 009010 call g24_store_mem_time_slice 
+0x308d 009012 beq 0 ,dongle_check_mode 
+0x308e 009013 beq 1 ,g24_bind_mode_enable 
+0x308f 009014 rtn 
+:      009016 g24_bind_mode_enable:
+0x3090 009020 setarg dongle_bind 
+0x3091 009021 call g24_store_mem_dongle_work_mode 
+0x3092 009022 branch g24_set0_mem_dongle_mode_init 
+:      009024 g24_enable_nodata_timer:
+0x3093 009025 setarg 1 
+0x3094 009026 call g24_store_mem_nodata_timer_enable 
+:      009028 g24_enable_nodata_timer_init:
+0x3095 009029 setarg timer_nodata_delay 
+0x3096 009030 arg timer_nodata ,queue 
+0x3097 009031 branch timer_init 
+:      009033 g24_rx_nodata_process:
+0x3098 009034 call g24_fetch_mem_nodata_timer_enable 
+0x3099 009036 rtn blank 
+0x309a 009037 arg timer_nodata ,queue 
+0x309b 009038 call timer_check 
+0x309c 009039 nrtn blank 
+0x309d 009040 call g24_set0_mem_nodata_timer_enable 
+0x309e 009043 setarg dongle_search 
+0x309f 009044 call g24_store_mem_dongle_work_mode 
+0x30a0 009046 call g24_set0_mem_dongle_mode_init 
+0x30a1 009048 branch g24_rx_interrupt_clear 
+:      009050 g24_dongle_search_mode_auto:
+0x30a2 009051 bpatch patch18_0 ,mem_patch18 
+0x30a3 009052 call g24_fetch_mem_dongle_work_mode 
+0x30a4 009054 rtnne dongle_search 
+0x30a5 009055 call g24_dongle_search_mode_init 
+0x30a6 009056 call g24_rx_auto_addr_ch_search 
+0x30a7 009057 call g24_receive_transmit_ack 
+0x30a8 009058 nbranch g24_rx_interrupt_clear ,user3 
+0x30a9 009060 call g24_dongle_search_addr_check 
+0x30aa 009061 call g24_receive_packet_parse ,zero 
+0x30ab 009065 call dongle_check_mode 
+0x30ac 009066 call g24_fetch_mem_dongle_mode_init 
+0x30ad 009068 set1 dongle_work ,pdata 
+0x30ae 009069 call g24_store_mem_dongle_mode_init 
+0x30af 009071 call g24_rx_interrupt_clear 
+0x30b0 009072 call g24_enable_nodata_timer 
+0x30b1 009073 call g24_dongle_search_addr_check 
+0x30b2 009074 branch g24_dg_ch_num_reinit ,zero 
+0x30b3 009075 setarg offset_24g_kb_addr 
+0x30b4 009076 call g24_set_rega_ifetcht_4byte 
+0x30b5 009078 call g24_fetch_mem_addr_isub_temp 
+0x30b6 009079 branch g24_kb_ch_num_reinit ,zero 
+0x30b7 009080 setarg offset_24g_mouse_addr 
+0x30b8 009081 call g24_set_rega_ifetcht_4byte 
+0x30b9 009083 call g24_fetch_mem_addr_isub_temp 
+0x30ba 009084 branch g24_ms_ch_num_reinit ,zero 
+0x30bb 009085 rtn 
+:      009087 g24_dongle_search_addr_check:
+0x30bc 009088 setarg offset_24g_rx_addr 
+0x30bd 009089 call g24_set_rega_ifetcht_4byte 
+:      009091 g24_fetch_mem_addr_isub_temp:
+0x30be 009092 call g24_fetch_mem_addr 
+0x30bf 009094 isub temp ,null 
+0x30c0 009095 rtn 
+:      009097 g24_dg_ch_num_reinit:
+0x30c1 009098 setarg offset_24g_dg_ch_number 
+0x30c2 009099 call g24_set_rega_ifetch_1byte 
+:      009101 g24_current_ch_num_reinit:
+0x30c3 009103 add regc ,offset_24g_current_ch_number ,contw 
+0x30c4 009104 branch g24_contw_istore_1byte 
+:      009106 g24_kb_ch_num_reinit:
+0x30c5 009107 setarg offset_24g_kb_ch_number 
+0x30c6 009108 call g24_set_rega_ifetch_1byte 
+0x30c7 009110 branch g24_current_ch_num_reinit 
+:      009111 g24_ms_ch_num_reinit:
+0x30c8 009112 setarg offset_24g_ms_ch_number 
+0x30c9 009113 call g24_set_rega_ifetch_1byte 
+0x30ca 009115 branch g24_current_ch_num_reinit 
+:      009117 g24_dongle_search_mode_init:
+0x30cb 009118 call g24_fetch_mem_dongle_mode_init 
+0x30cc 009120 rtnbit1 dongle_search 
+0x30cd 009121 set1 dongle_search ,pdata 
+0x30ce 009122 call g24_store_mem_dongle_mode_init 
+0x30cf 009124 call g24_set0_mem_time_slice 
+0x30d0 009126 call g24_set1_mem_ackpayload_enable 
+0x30d1 009128 setarg 0 
+0x30d2 009129 add regc ,offset_rssi_noise_dg_index ,contw 
+0x30d3 009130 istore 3 ,contw 
+0x30d4 009132 arg offset_24g_dg_config_ch_once ,rega 
+0x30d5 009133 call g24_set_contw_with_temp 
+0x30d6 009134 istore 7 ,contw 
+0x30d7 009137 call g24_dongle_search_addr_check 
+0x30d8 009138 nrtn zero 
+0x30d9 009139 add regc ,offset_24g_current_ch_number ,rega 
+0x30da 009140 ifetch 1 ,rega 
+0x30db 009142 arg offset_24g_dg_ch_number ,rega 
+0x30dc 009143 call g24_set_contw_with_regb_store_1byte 
+0x30dd 009145 add regc ,offset_24g_ch ,rega 
+0x30de 009146 ifetch 1 ,rega 
+0x30df 009149 branch g24_store_mem_dg_last_ch 
+:      009151 g24_rx_auto_addr_ch_search:
+0x30e0 009152 bpatch patch18_1 ,mem_patch18 
+0x30e1 009153 call g24_fetch_mem_time_slice 
+0x30e2 009155 increase 1 ,pdata 
+0x30e3 009156 and_into 3 ,pdata 
+0x30e4 009157 call g24_store_mem_time_slice 
+0x30e5 009160 beq 0 ,g24_rx_auto_bind_config_kb 
+0x30e6 009161 beq 1 ,g24_rx_auto_bind_config_dongle 
+0x30e7 009162 beq 2 ,g24_rx_auto_bind_config_mouse 
+0x30e8 009163 beq 3 ,g24_rx_auto_bind_config_dongle 
+0x30e9 009164 rtn 
+:      009166 g24_rx_auto_bind_config_mouse:
+0x30ea 009167 call g24_dongle_bind_ms_payload_cfg 
+0x30eb 009168 setarg offset_24g_mouse_addr 
+0x30ec 009169 call g24_set_rega_ifetch_4byte 
+0x30ed 009171 branch g24_rx_auto_addr_ch_search ,blank 
+0x30ee 009172 call g24_store_mem_addr 
+0x30ef 009174 setarg offset_24g_ms_config_ch_once 
+0x30f0 009175 call g24_set_rega_ifetch_1byte 
+0x30f1 009177 call g24_ms_config_ch_once ,blank 
+0x30f2 009178 setarg offset_24g_ms_last_ch 
+0x30f3 009179 call g24_set_rega_ifetch_1byte 
+0x30f4 009181 call g24_store_mem_ch 
+0x30f5 009183 add regc ,offset_rssi_noise_ms_index ,rega 
+0x30f6 009184 ifetcht 1 ,rega 
+0x30f7 009186 arg mem_rssi_noise_ms_buffer ,rega 
+0x30f8 009187 call rssi_noise_store 
+0x30f9 009188 add regc ,offset_rssi_noise_ms_index ,contw 
+0x30fa 009189 istoret 1 ,contw 
+0x30fb 009191 call g24_noise_rssi_average 
+0x30fc 009192 add regc ,offset_rssi_noise_ms_avg ,contw 
+0x30fd 009193 istoret 1 ,contw 
+0x30fe 009195 sub temp ,rssi_thresh_noise ,null 
+0x30ff 009196 nrtn positive 
+0x3100 009197 setarg offset_24g_ms_ch_number 
+0x3101 009198 call g24_set_rega_ifetcht_1byte 
+0x3102 009200 call g24_ch_temp_incre_size4 
+0x3103 009201 arg offset_24g_ms_ch_number ,rega 
+0x3104 009202 call g24_set_contw_with_regb2 
+0x3105 009203 istoret 1 ,contw 
+:      009205 g24_store_mem_ms_last_ch:
+0x3106 009207 arg offset_24g_ms_last_ch ,rega 
+0x3107 009208 branch g24_set_contw_with_regb_store_1byte 
+:      009210 g24_ms_config_ch_once:
+0x3108 009211 setarg 1 
+0x3109 009212 arg offset_24g_ms_config_ch_once ,rega 
+0x310a 009213 call g24_set_contw_with_regb_store_1byte 
+0x310b 009215 arg 0 ,temp 
+0x310c 009216 call g24_ch_calc 
+0x310d 009219 branch g24_store_mem_ms_last_ch 
+:      009221 g24_rx_auto_bind_config_kb:
+0x310e 009222 call g24_dongle_bind_kb_payload_cfg 
+0x310f 009223 setarg offset_24g_kb_addr 
+0x3110 009224 call g24_set_rega_ifetch_4byte 
+0x3111 009226 branch g24_rx_auto_addr_ch_search ,blank 
+0x3112 009227 call g24_store_mem_addr 
+0x3113 009229 setarg offset_24g_kb_config_ch_once 
+0x3114 009230 call g24_set_rega_ifetch_1byte 
+0x3115 009232 call g24_kb_config_ch_once ,blank 
+0x3116 009233 setarg offset_24g_kb_last_ch 
+0x3117 009234 call g24_set_rega_ifetch_1byte 
+0x3118 009236 call g24_store_mem_ch 
+0x3119 009238 add regc ,offset_rssi_noise_kb_index ,rega 
+0x311a 009239 ifetcht 1 ,rega 
+0x311b 009241 arg mem_rssi_noise_kb_buffer ,rega 
+0x311c 009242 call rssi_noise_store 
+0x311d 009243 add regc ,offset_rssi_noise_kb_index ,contw 
+0x311e 009244 istoret 1 ,contw 
+0x311f 009246 call g24_noise_rssi_average 
+0x3120 009247 add regc ,offset_rssi_noise_kb_avg ,contw 
+0x3121 009248 istoret 1 ,contw 
+0x3122 009250 sub temp ,rssi_thresh_noise ,null 
+0x3123 009251 nrtn positive 
+0x3124 009252 setarg offset_24g_kb_ch_number 
+0x3125 009253 call g24_set_rega_ifetcht_1byte 
+0x3126 009255 call g24_ch_temp_incre_size4 
+0x3127 009256 arg offset_24g_kb_ch_number ,rega 
+0x3128 009257 call g24_set_contw_with_regb2 
+0x3129 009258 istoret 1 ,contw 
+:      009260 g24_store_mem_kb_last_ch:
+0x312a 009262 arg offset_24g_kb_last_ch ,rega 
+0x312b 009263 branch g24_set_contw_with_regb_store_1byte 
+:      009265 g24_kb_config_ch_once:
+0x312c 009266 setarg 1 
+0x312d 009267 arg offset_24g_kb_config_ch_once ,rega 
+0x312e 009268 call g24_set_contw_with_regb_store_1byte 
+0x312f 009270 arg 0 ,temp 
+0x3130 009271 call g24_ch_calc 
+0x3131 009274 branch g24_store_mem_kb_last_ch 
+:      009276 g24_rx_auto_bind_config_dongle:
+0x3132 009277 call g24_dongle_bind_ms_payload_cfg 
+0x3133 009278 call g24_fetch_mem_rx_addr 
+0x3134 009280 call g24_store_mem_addr 
+0x3135 009282 setarg offset_24g_dg_config_ch_once 
+0x3136 009283 call g24_set_rega_ifetch_1byte 
+0x3137 009285 call g24_dg_config_ch_once ,blank 
+0x3138 009286 call g24_dg_store_config_ch 
+0x3139 009287 add regc ,offset_rssi_noise_dg_index ,rega 
+0x313a 009288 ifetcht 1 ,rega 
+0x313b 009290 arg mem_rssi_noise_dg_buffer ,rega 
+0x313c 009291 call rssi_noise_store 
+0x313d 009292 add regc ,offset_rssi_noise_dg_index ,contw 
+0x313e 009293 istoret 1 ,contw 
+0x313f 009295 call g24_noise_rssi_average 
+0x3140 009296 add regc ,offset_rssi_noise_dg_avg ,contw 
+0x3141 009297 istoret 1 ,contw 
+0x3142 009299 sub temp ,rssi_thresh_noise ,null 
+0x3143 009300 nrtn positive 
+0x3144 009301 setarg offset_24g_dg_ch_number 
+0x3145 009302 call g24_set_rega_ifetcht_1byte 
+0x3146 009304 call g24_ch_temp_incre_size4 
+0x3147 009305 arg offset_24g_dg_ch_number ,rega 
+0x3148 009306 call g24_set_contw_with_regb2 
+0x3149 009307 istoret 1 ,contw 
+:      009309 g24_store_mem_dg_last_ch:
+0x314a 009312 arg offset_24g_dg_last_ch ,rega 
+0x314b 009313 branch g24_set_contw_with_regb_store_1byte 
+:      009316 g24_dg_config_ch_once:
+0x314c 009321 setarg 1 
+0x314d 009322 arg offset_24g_dg_config_ch_once ,rega 
+0x314e 009323 call g24_set_contw_with_regb_store_1byte 
+:      009324 g24_dg_store_config_ch:
+0x314f 009325 setarg offset_24g_dg_last_ch 
+0x3150 009326 call g24_set_rega_ifetch_1byte 
+0x3151 009327 branch g24_store_mem_ch 
+:      009330 g24_transmit_ack:
+0x3152 009332 add regc ,offset_24g_rxbuf ,rega 
+0x3153 009333 ifetch 1 ,rega 
+0x3154 009335 call g24_store_mem_data_type 
+0x3155 009338 call g24_read_len_pid_crc 
+0x3156 009340 call g24_fetch_mem_rxbuf_add1 
+0x3157 009342 isolate1 bit_ack_24g ,pdata 
+0x3158 009343 branch g24tx_no_ack ,true 
+:      009344 g24tx_with_ack:
+0x3159 009345 call g24_ackpayload_prep 
+0x315a 009346 call g24_transmit_prep 
+0x315b 009347 call g24_transmit 
+:      009348 g24tx_no_ack:
+0x315c 009349 branch g24_end_of_packet 
+:      009351 g24_ackpayload_prep:
+0x315d 009352 bpatch patch18_2 ,mem_patch18 
+0x315e 009353 add regc ,offset_24g_datalen ,contw 
+0x315f 009354 call g24_mem_set0 
+0x3160 009356 setarg offset_24g_ackpayload_enable 
+0x3161 009357 call g24_set_rega_ifetch_1byte 
+0x3162 009359 rtn blank 
+0x3163 009360 setarg 0x06 
+0x3164 009361 add regc ,offset_24g_datalen ,contw 
+0x3165 009362 istore 1 ,contw 
+0x3166 009364 arg 0x06 ,loopcnt 
+0x3167 009365 setarg offset_24g_bind_payload 
+0x3168 009366 iadd regc ,contr 
+0x3169 009368 add regc ,offset_24g_txbuf ,contw 
+0x316a 009370 branch memcpy 
+:      009373 g24_receive_packet_start:
+0x316b 009374 call g24_receive_transmit_ack 
+0x316c 009375 nbranch g24_rx_interrupt_clear ,user3 
+0x316d 009376 branch g24_receive_packet_parse 
+:      009378 g24_receive_transmit_ack:
+0x316e 009379 call g24_rx_interrupt_clear 
+0x316f 009380 call g24_receive_packet 
+0x3170 009381 nrtn user3 
+0x3171 009382 branch g24_transmit_ack 
+:      009384 g24_receive_packet_parse:
+0x3172 009385 bpatch patch18_3 ,mem_patch18 
+0x3173 009386 call g24_receive_packet_parse_pid_crc 
+0x3174 009387 nbranch g24_rx_interrupt_clear ,user 
+0x3175 009388 add regc ,offset_24g_rxdata_length ,rega 
+0x3176 009389 ifetch 1 ,rega 
+0x3177 009391 branch g24_rx_interrupt_clear ,blank 
+0x3178 009392 increase 2 ,pdata 
+0x3179 009393 iforce loopcnt 
+0x317a 009394 add regc ,offset_24g_rxbuf ,contr 
+0x317b 009396 setarg offset_24g_rxdata_temp 
+0x317c 009397 iadd regc ,contw 
+0x317d 009399 call memcpy 
+0x317e 009400 call g24_set0_mem_mode_switch 
+0x317f 009402 call g24_fetch_mem_pair_mode 
+0x3180 009404 call g24_enable_nodata_timer ,blank 
+0x3181 009405 setarg offset_24g_rxdata_temp_add2 
+0x3182 009406 call g24_set_rega_ifetch_1byte 
+0x3183 009408 beq 0x01 ,g24_data_type1 
+0x3184 009409 beq 0x02 ,g24_data_type2 
+0x3185 009410 beq 0x03 ,g24_data_type3 
+0x3186 009411 beq 0xff ,g24_data_attemp 
+0x3187 009412 branch g24_rx_interrupt_clear 
+:      009414 g24_receive_packet_parse_pid_crc:
+0x3188 009415 call g24_head_ptr2regc 
+0x3189 009416 call disable_user 
+0x318a 009417 add regc ,offset_24g_sta_pid ,rega 
+0x318b 009418 ifetch 1 ,rega 
+0x318c 009420 add regc ,offset_24g_last_pid ,rega 
+0x318d 009421 ifetcht 1 ,rega 
+0x318e 009423 isub temp ,null 
+0x318f 009424 ncall enable_user ,zero 
+0x3190 009425 add regc ,offset_24g_sta_pid ,rega 
+0x3191 009426 ifetch 1 ,rega 
+0x3192 009428 add regc ,offset_24g_last_pid ,contw 
+0x3193 009429 istore 1 ,contw 
+0x3194 009431 add regc ,offset_24g_sta_crc ,rega 
+0x3195 009432 ifetch 3 ,rega 
+0x3196 009434 add regc ,offset_24g_last_crc ,rega 
+0x3197 009435 ifetcht 3 ,rega 
+0x3198 009437 isub temp ,null 
+0x3199 009438 ncall enable_user ,zero 
+0x319a 009439 add regc ,offset_24g_sta_crc ,rega 
+0x319b 009440 ifetch 3 ,rega 
+0x319c 009442 add regc ,offset_24g_last_crc ,contw 
+0x319d 009444 branch g24_contw_istore_3byte 
+:      009446 g24_data_type1:
+0x319e 009447 call g24_ch_timer_reinit 
+0x319f 009448 call g24_fetch_mem_abort_pac 
+0x31a0 009449 store 1 ,mem_temp 
+0x31a1 009451 call g24_fetcht_mem_rxdata_temp 
+0x31a2 009452 fetch 1 ,mem_temp 
+0x31a3 009454 isolate1 bit_abort ,temp 
+0x31a4 009455 setflag true ,0 ,pdata 
+0x31a5 009456 add regc ,offset_24g_abort_pac ,contw 
+0x31a6 009457 istore 1 ,contw 
+0x31a7 009459 beq 1 ,g24_data_attemp_mouse 
+0x31a8 009460 call g24_fetch_mem_hop_pac 
+0x31a9 009462 call g24_fetcht_mem_rxdata_temp 
+0x31aa 009464 isolate1 bit_hop ,temp 
+0x31ab 009465 setflag true ,0 ,pdata 
+0x31ac 009466 call g24_store_mem_hop_pac 
+0x31ad 009468 add regc ,offset_24g_cb_rxdata_type1 ,rega 
+0x31ae 009469 ifetch 2 ,rega 
+0x31af 009471 branch callback_func 
+:      009473 dongle_rxdata_type1:
+0x31b0 009474 setarg ms_report_id 
+0x31b1 009475 store 1 ,mem_usb_mouse_data 
+0x31b2 009476 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b3 009478 istore 7 ,contw 
+0x31b4 009479 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b5 009481 ncall g24_ms_enable_blank_data_forcibly ,blank 
+0x31b6 009482 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b7 009484 call g24_ms_disable_blank_data_forcibly ,blank 
+:      009485 g24_data_type1_usbtx_enable:
+0x31b8 009486 jam usb_ep2_ms ,mem_usb_ep2_data 
+:      009487 g24_data_type1_usbtx_enable_ep2:
+0x31b9 009488 fetch 1 ,mem_usb_tx_enable 
+0x31ba 009489 set1 2 ,pdata 
+0x31bb 009490 store 1 ,mem_usb_tx_enable 
+0x31bc 009491 rtn 
+:      009493 g24_ms_enable_blank_data_forcibly:
+0x31bd 009494 setarg 1 
+0x31be 009495 call g24_store_mem_ms_blank_data_enable 
+:      009497 g24_ms_enable_blank_data_timer:
+0x31bf 009498 setarg timer_ms_blank_delay 
+0x31c0 009499 arg timer_ms_blank ,queue 
+0x31c1 009500 branch timer_init 
+:      009501 g24_ms_disable_blank_data_forcibly:
+0x31c2 009502 call g24_set0_mem_ms_blank_data_enable 
+:      009504 g24_ms_disable_blank_data_timer:
+0x31c3 009505 setarg 0 
+0x31c4 009506 arg timer_ms_blank ,queue 
+0x31c5 009507 branch timer_init 
+:      009509 g24_data_type2:
+0x31c6 009510 call g24_fetcht_mem_rxdata_temp 
+0x31c7 009512 isolate1 bit_abort ,temp 
+0x31c8 009513 branch g24_data_attemp_kbd ,true 
+0x31c9 009514 arg mem_usb_kb_data ,contw 
+0x31ca 009515 call g24_data_type2_reverse_data 
+0x31cb 009516 fetch 8 ,mem_usb_kb_data 
+0x31cc 009517 ncall g24_kb_enable_blank_data_forcibly ,blank 
+0x31cd 009518 fetch 8 ,mem_usb_kb_data 
+0x31ce 009519 call g24_kb_disable_blank_data_forcibly ,blank 
+0x31cf 009520 call g24_head_ptr2regc 
+0x31d0 009521 fetch 8 ,mem_usb_kb_data 
+0x31d1 009522 arg offset_24g_kb_data_sta_data ,rega 
+0x31d2 009523 call g24_set_contw_with_temp 
+0x31d3 009524 istore 8 ,contw 
+0x31d4 009526 setarg offset_24g_kb_data_last_data 
+0x31d5 009527 iadd regc ,rega 
+0x31d6 009528 ifetcht 8 ,rega 
+0x31d7 009530 isub temp ,null 
+0x31d8 009531 ncall g24_kb_data_dispose ,zero 
+0x31d9 009532 setarg offset_24g_kb_data_sta_data 
+0x31da 009533 iadd regc ,rega 
+0x31db 009534 ifetch 8 ,rega 
+0x31dc 009536 arg offset_24g_kb_data_last_data ,rega 
+0x31dd 009537 call g24_set_contw_with_temp 
+0x31de 009538 istore 8 ,contw 
+0x31df 009540 branch g24_rx_interrupt_clear 
+:      009542 g24_data_type2_reverse_data:
+0x31e0 009543 setarg offset_24g_rxdata_temp_add2 
+0x31e1 009544 iadd regc ,contr 
+0x31e2 009546 arg 9 ,loopcnt 
+0x31e3 009547 branch reverse_byte 
+:      009549 g24_kb_enable_blank_data_forcibly:
+0x31e4 009550 setarg 1 
+0x31e5 009551 call g24_store_mem_kb_blank_data_enable 
+:      009553 g24_kb_enable_blank_data_timer:
+0x31e6 009554 setarg timer_kb_blank_delay 
+0x31e7 009555 arg timer_kb_blank ,queue 
+0x31e8 009556 branch timer_init 
+:      009558 g24_kb_disable_blank_data_forcibly:
+0x31e9 009559 call g24_set0_mem_kb_blank_data_enable 
+:      009561 g24_kb_disable_blank_data_timer:
+0x31ea 009562 setarg 0 
+0x31eb 009563 arg timer_kb_blank ,queue 
+0x31ec 009564 branch timer_init 
+:      009566 g24_kb_data_dispose:
+:      009567 g24_kb_data_into_ep1_fifo:
+0x31ed 009568 jam usb_ep1_kb ,mem_usb_ep1_data 
+0x31ee 009569 fetch 1 ,mem_usb_tx_enable 
+0x31ef 009570 set1 1 ,pdata 
+0x31f0 009571 store 1 ,mem_usb_tx_enable 
+0x31f1 009572 rtn 
+:      009574 g24_data_type3:
+0x31f2 009575 arg mem_usb_kb_multikey ,contw 
+0x31f3 009576 call g24_data_type2_reverse_data 
+0x31f4 009577 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f5 009578 ncall g24_kb_mul_enable_blank_data_forcibly ,blank 
+0x31f6 009579 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f7 009580 call g24_kb_mul_disable_blank_data_forcibly ,blank 
+0x31f8 009581 call g24_head_ptr2regc 
+0x31f9 009582 fetch 3 ,mem_usb_kb_multikey 
+0x31fa 009583 arg offset_24g_kb_multikey_sta_data ,rega 
+0x31fb 009584 call g24_set_contw_with_temp_store_3byte 
+0x31fc 009586 setarg offset_24g_kb_multikey_last_data 
+0x31fd 009587 iadd regc ,rega 
+0x31fe 009588 ifetcht 3 ,rega 
+0x31ff 009590 isub temp ,null 
+0x3200 009591 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
+0x3201 009592 setarg offset_24g_kb_multikey_sta_data 
+0x3202 009593 iadd regc ,rega 
+0x3203 009594 ifetch 3 ,rega 
+0x3204 009596 arg offset_24g_kb_multikey_last_data ,rega 
+0x3205 009597 call g24_set_contw_with_temp_store_3byte 
+0x3206 009599 branch g24_rx_interrupt_clear 
+:      009601 g24_kb_mul_data_into_ep2_fifo:
+0x3207 009602 jam usb_ep2_multikey ,mem_usb_ep2_data 
+0x3208 009603 branch g24_data_type1_usbtx_enable_ep2 
+:      009605 g24_kb_mul_enable_blank_data_forcibly:
+0x3209 009606 setarg 1 
+0x320a 009607 call g24_store_mem_kb_mul_blank_data_enable 
+:      009609 g24_kb_mul_enable_blank_data_timer:
+0x320b 009610 setarg timer_kb_mul_blank_delay 
+0x320c 009611 arg timer_kb_mul_blank ,queue 
+0x320d 009612 branch timer_init 
+:      009614 g24_kb_mul_disable_blank_data_forcibly:
+0x320e 009615 call g24_set0_mem_kb_mul_blank_data_enable 
+:      009617 g24_kb_mul_disable_blank_data_timer:
+0x320f 009618 setarg 0 
+0x3210 009619 arg timer_kb_mul_blank ,queue 
+0x3211 009620 branch timer_init 
+:      009622 g24_data_attemp:
+0x3212 009623 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3213 009625 beq datatype_mouse ,g24_data_attemp_mouse 
+0x3214 009626 beq datatype_keyboard ,g24_data_attemp_kbd 
+0x3215 009627 rtn 
+:      009628 g24_data_attemp_mouse:
+0x3216 009629 setarg offset_24g_rxdata_temp_add4 
+0x3217 009630 call g24_set_rega_ifetch_4byte 
+0x3218 009631 arg offset_24g_mouse_addr ,rega 
+0x3219 009632 call g24_set_contw_with_temp 
+0x321a 009635 branch g24_contw_istore_4byte 
+:      009637 g24_data_attemp_kbd:
+0x321b 009638 setarg offset_24g_rxdata_temp_add4 
+0x321c 009639 call g24_set_rega_ifetch_4byte 
+0x321d 009640 arg offset_24g_kb_addr ,rega 
+0x321e 009641 call g24_set_contw_with_temp 
+0x321f 009644 branch g24_contw_istore_4byte 
+:      009646 g24_store_mem_24g_mode:
+0x3220 009647 call g24_head_ptr2regc 
+0x3221 009648 add regc ,offset_24g_mode ,contw 
+0x3222 009649 istore 1 ,contw 
+0x3223 009650 rtn 
+:      009652 g24_fetch_mem_device_addr:
+0x3224 009653 call g24_head_ptr2regc 
+0x3225 009654 add regc ,offset_24g_device_addr ,rega 
+0x3226 009655 branch g24_rega_ifetch_4byte 
+:      009656 g24_store_mem_device_addr:
+0x3227 009657 call g24_head_ptr2regc 
+0x3228 009658 add regc ,offset_24g_device_addr ,contw 
+0x3229 009659 branch g24_contw_istore_4byte 
+:      009661 g24_fetch_mem_addr:
+0x322a 009662 add regc ,offset_24g_addr ,rega 
+0x322b 009663 branch g24_rega_ifetch_4byte 
+:      009664 g24_store_mem_addr:
+0x322c 009665 add regc ,offset_24g_addr ,contw 
+:      009666 g24_contw_istore_4byte:
+0x322d 009667 istore 4 ,contw 
+0x322e 009668 rtn 
+:      009670 g24_store_mem_ch:
+0x322f 009671 add regc ,offset_24g_ch ,contw 
+0x3230 009672 branch g24_contw_istore_1byte 
+:      009674 g24_set0_mem_pid:
+0x3231 009675 setarg 0 
+:      009676 g24_store_mem_pid:
+0x3232 009677 call g24_head_ptr2regc 
+0x3233 009678 add regc ,offset_24g_pid ,contw 
+0x3234 009679 branch g24_contw_istore_1byte 
+:      009681 g24_store_mem_txpayload:
+0x3235 009682 add regc ,offset_24g_txpayload ,contw 
+0x3236 009683 branch g24_contw_istore_1byte 
+:      009685 g24_set4_mem_max_retry:
+0x3237 009686 setarg 4 
+:      009687 g24_store_mem_max_retry:
+0x3238 009688 add regc ,offset_24g_max_retry ,contw 
+0x3239 009689 branch g24_contw_istore_1byte 
+:      009691 g24_fetch_mem_data_type:
+0x323a 009692 add regc ,offset_24g_data_type ,rega 
+0x323b 009693 branch g24_rega_ifetch_1byte 
+:      009694 g24_store_mem_data_type:
+0x323c 009695 add regc ,offset_24g_data_type ,contw 
+0x323d 009696 branch g24_contw_istore_1byte 
+:      009698 g24_set2_mem_sync_cnt:
+0x323e 009699 setarg 2 
+:      009700 g24_store_mem_sync_cnt:
+0x323f 009701 add regc ,offset_24g_sync_cnt ,contw 
+0x3240 009702 branch g24_contw_istore_1byte 
+:      009704 g24_set1_mem_rf_last_sta:
+0x3241 009705 setarg 1 
+:      009706 g24_store_mem_rf_last_sta:
+0x3242 009707 call g24_head_ptr2regc 
+0x3243 009708 add regc ,offset_24g_rf_last_sta ,contw 
+0x3244 009709 branch g24_contw_istore_1byte 
+:      009711 g24_fetch_mem_hop_pac:
+0x3245 009712 call g24_head_ptr2regc 
+0x3246 009713 add regc ,offset_24g_hop_pac ,rega 
+0x3247 009714 branch g24_rega_ifetch_1byte 
+:      009715 g24_set1_mem_hop_pac:
+0x3248 009716 setarg 1 
+:      009717 g24_store_mem_hop_pac:
+0x3249 009718 call g24_head_ptr2regc 
+0x324a 009719 add regc ,offset_24g_hop_pac ,contw 
+0x324b 009720 branch g24_contw_istore_1byte 
+:      009722 g24_fetch_mem_abort_pac:
+0x324c 009723 call g24_head_ptr2regc 
+0x324d 009724 add regc ,offset_24g_abort_pac ,rega 
+0x324e 009725 branch g24_rega_ifetch_1byte 
+:      009726 g24_set1_mem_abort_pac:
+0x324f 009727 setarg 1 
+:      009728 g24_store_mem_abort_pac:
+0x3250 009729 call g24_head_ptr2regc 
+0x3251 009730 add regc ,offset_24g_abort_pac ,contw 
+0x3252 009731 branch g24_contw_istore_1byte 
+:      009733 g24_fetch_mem_pairing_sm:
+0x3253 009734 call g24_head_ptr2regc 
+0x3254 009735 add regc ,offset_24g_pairing_sm ,rega 
+0x3255 009736 branch g24_rega_ifetch_1byte 
+:      009737 g24_store_mem_pairing_sm:
+0x3256 009738 add regc ,offset_24g_pairing_sm ,contw 
+0x3257 009739 branch g24_contw_istore_1byte 
+:      009741 g24_fetch_mem_rf_hop_ch:
+0x3258 009742 add regc ,offset_24g_rf_hop_ch ,rega 
+0x3259 009743 branch g24_rega_ifetch_1byte 
+:      009744 g24_set0_mem_rf_hop_ch:
+0x325a 009745 setarg 0 
+:      009746 g24_store_mem_rf_hop_ch:
+0x325b 009747 add regc ,offset_24g_rf_hop_ch ,contw 
+0x325c 009748 branch g24_contw_istore_1byte 
+:      009750 g24_fetch_mem_rf_work_stage:
+0x325d 009751 add regc ,offset_24g_rf_work_stage ,rega 
+0x325e 009752 branch g24_rega_ifetch_1byte 
+:      009754 g24_fetch_mem_rxbuf_add1:
+0x325f 009755 add regc ,offset_24g_rxbuf_add1 ,rega 
+0x3260 009756 branch g24_rega_ifetch_1byte 
+:      009758 g24_fetch_mem_check_dongle_times:
+0x3261 009759 add regc ,offset_24g_check_dongle_times ,rega 
+0x3262 009760 branch g24_rega_ifetch_1byte 
+:      009761 g24_set0_mem_check_dongle_times:
+0x3263 009762 setarg 0 
+:      009763 g24_store_mem_check_dongle_times:
+0x3264 009764 call g24_head_ptr2regc 
+0x3265 009765 add regc ,offset_24g_check_dongle_times ,contw 
+0x3266 009766 branch g24_contw_istore_1byte 
+:      009768 g24_store_mem_tx_power:
+0x3267 009769 call g24_head_ptr2regc 
+0x3268 009770 add regc ,offset_tx_power_temp ,rega 
+0x3269 009771 ifetch 1 ,rega 
+:      009772 g24_store_mem_txpower:
+0x326a 009773 store 1 ,mem_tx_power 
+0x326b 009774 rtn 
+:      009776 g24_store_mem_tx_power_temp:
+0x326c 009777 call g24_head_ptr2regc 
+0x326d 009778 fetch 1 ,mem_tx_power 
+0x326e 009780 add regc ,offset_tx_power_temp ,contw 
+0x326f 009781 branch g24_contw_istore_1byte 
+:      009783 g24_fetch_mem_power_ctrl_pac:
+0x3270 009784 add regc ,offset_power_ctrl_packet_cnt ,rega 
+0x3271 009785 branch g24_rega_ifetch_1byte 
+:      009787 g24_store_mem_power_ctrl_level:
+0x3272 009788 add regc ,offset_power_ctrl_level ,contw 
+0x3273 009789 branch g24_contw_istore_1byte 
+:      009791 g24_fetcht_mem_rxdata_temp:
+0x3274 009792 setarg offset_24g_rxdata_temp 
+:      009793 g24_set_rega_ifetcht_1byte:
+0x3275 009794 iadd regc ,rega 
+0x3276 009795 ifetcht 1 ,rega 
+0x3277 009796 rtn 
+:      009798 g24_fetch_mem_rf_laststa:
+0x3278 009799 setarg offset_24g_rf_laststa 
+0x3279 009800 branch g24_set_rega_ifetch_1byte 
+:      009801 g24_set0_mem_rf_laststa:
+0x327a 009802 setarg 0 
+:      009803 g24_store_mem_rf_laststa:
+0x327b 009804 arg offset_24g_rf_laststa ,rega 
+0x327c 009805 branch g24_set_contw_with_regb_store_1byte 
+:      009807 g24_fetch_mem_rx_addr:
+0x327d 009808 setarg offset_24g_rx_addr 
+:      009809 g24_set_rega_ifetch_4byte:
+0x327e 009810 call g24_set_rega 
+:      009811 g24_rega_ifetch_4byte:
+0x327f 009812 ifetch 4 ,rega 
+0x3280 009813 rtn 
+:      009815 g24_fetch_mem_time_slice:
+0x3281 009816 setarg offset_24g_time_slice 
+0x3282 009817 branch g24_set_rega_ifetch_1byte 
+:      009818 g24_set0_mem_time_slice:
+0x3283 009819 setarg 0 
+:      009820 g24_store_mem_time_slice:
+0x3284 009821 arg offset_24g_time_slice ,rega 
+0x3285 009822 branch g24_set_contw_with_regb_store_1byte 
+:      009824 g24_set0_mem_mode_switch:
+0x3286 009825 setarg 0 
+:      009826 g24_store_mem_mode_switch:
+0x3287 009827 arg offset_24g_mode_switch ,rega 
+0x3288 009828 branch g24_set_contw_with_regb_store_1byte 
+:      009830 g24_store_mem_bind_payload:
+0x3289 009831 arg offset_24g_bind_payload ,rega 
+0x328a 009832 branch g24_set_contw_with_regb_store_1byte 
+:      009834 g24_fetch_mem_bind_device_status:
+0x328b 009835 setarg offset_dongle_bind_device_status 
+0x328c 009836 branch g24_set_rega_ifetch_1byte 
+:      009837 g24_store_mem_bind_device_status:
+0x328d 009838 arg offset_dongle_bind_device_status ,rega 
+0x328e 009839 branch g24_set_contw_with_regb_store_1byte 
+:      009841 g24_fetch_mem_dongle_work_mode:
+0x328f 009842 setarg offset_dongle_work_mode 
+0x3290 009843 branch g24_set_rega_ifetch_1byte 
+:      009844 g24_set_work_mem_dongle_work_mode:
+0x3291 009845 setarg dongle_work 
+:      009846 g24_store_mem_dongle_work_mode:
+0x3292 009847 arg offset_dongle_work_mode ,rega 
+0x3293 009848 branch g24_set_contw_with_regb_store_1byte 
+:      009850 g24_fetch_mem_dongle_mode_init:
+0x3294 009851 setarg offset_dongle_mode_init 
+0x3295 009852 branch g24_set_rega_ifetch_1byte 
+:      009853 g24_set0_mem_dongle_mode_init:
+0x3296 009854 setarg clear_init 
+:      009855 g24_store_mem_dongle_mode_init:
+0x3297 009856 arg offset_dongle_mode_init ,rega 
+0x3298 009857 branch g24_set_contw_with_regb_store_1byte 
+:      009859 g24_set0_mem_ackpayload_enable:
+0x3299 009860 setarg 0 
+:      009861 g24_store_mem_ackpayload_enable:
+0x329a 009862 arg offset_24g_ackpayload_enable ,rega 
+0x329b 009863 branch g24_set_contw_with_regb_store_1byte 
+:      009864 g24_set1_mem_ackpayload_enable:
+0x329c 009865 setarg 1 
+0x329d 009866 branch g24_store_mem_ackpayload_enable 
+:      009868 g24_fetch_mem_rxdata_temp_add3_7byte:
+0x329e 009869 setarg offset_24g_rxdata_temp_add3 
+0x329f 009870 call g24_set_rega 
+0x32a0 009871 ifetch 7 ,rega 
+0x32a1 009872 rtn 
+:      009874 g24_fetch_mem_nodata_timer_enable:
+0x32a2 009875 setarg offset_24g_nodata_timer_enable 
+0x32a3 009876 branch g24_set_rega_ifetch_1byte 
+:      009877 g24_set0_mem_nodata_timer_enable:
+0x32a4 009878 setarg 0 
+:      009879 g24_store_mem_nodata_timer_enable:
+0x32a5 009880 arg offset_24g_nodata_timer_enable ,rega 
+0x32a6 009881 branch g24_set_contw_with_regb_store_1byte 
+:      009883 g24_set0_mem_ms_blank_data_enable:
+0x32a7 009884 setarg 0 
+:      009885 g24_store_mem_ms_blank_data_enable:
+0x32a8 009886 arg offset_24g_ms_blank_data_enable ,rega 
+0x32a9 009887 branch g24_set_contw_with_regb_store_1byte 
+:      009889 g24_set0_mem_kb_blank_data_enable:
+0x32aa 009890 setarg 0 
+:      009891 g24_store_mem_kb_blank_data_enable:
+0x32ab 009892 arg offset_24g_kb_blank_data_enable ,rega 
+0x32ac 009893 branch g24_set_contw_with_regb_store_1byte 
+:      009895 g24_set0_mem_kb_mul_blank_data_enable:
+0x32ad 009896 setarg 0 
+:      009897 g24_store_mem_kb_mul_blank_data_enable:
+0x32ae 009898 arg offset_24g_kb_mul_blank_data_enable ,rega 
+0x32af 009899 branch g24_set_contw_with_regb_store_1byte 
+:      009901 g24_store_mem_power_ctrl_threshold_up:
+0x32b0 009902 arg offset_power_ctrl_threshold_up ,rega 
+0x32b1 009903 branch g24_set_contw_with_regb_store_1byte 
+:      009905 g24_store_mem_power_ctrl_threshold_down:
+0x32b2 009906 arg offset_power_ctrl_threshold_down ,rega 
+:      009907 g24_set_contw_with_regb_store_1byte:
+0x32b3 009908 call g24_set_contw_with_regb 
+:      009909 g24_contw_istore_1byte:
+0x32b4 009910 istore 1 ,contw 
+0x32b5 009911 rtn 
+:      009913 g24_fetch_mem_pair_mode:
+0x32b6 009914 setarg offset_24g_pair_mode 
+0x32b7 009915 branch g24_set_rega_ifetch_1byte 
+:      009917 g24_store_mem_pair_mode:
+0x32b8 009918 arg offset_24g_pair_mode ,rega 
+0x32b9 009919 branch g24_set_contw_with_regb_store_1byte 
+:      009921 g24_store_mem_pair_txpower:
+0x32ba 009922 setarg offset_24g_pair_txpower 
+0x32bb 009923 call g24_set_rega_ifetch_1byte 
+0x32bc 009924 branch g24_store_mem_txpower 
+:      009926 g24_fetch_mem_rxdata_temp_add3_1byte:
+0x32bd 009927 setarg offset_24g_rxdata_temp_add3 
+0x32be 009928 branch g24_set_rega_ifetch_1byte 
+:      009930 g24_set_contw_with_temp:
+0x32bf 009931 copy pdata ,temp 
+0x32c0 009932 copy rega ,pdata 
+0x32c1 009933 iadd regc ,contw 
+0x32c2 009934 copy temp ,pdata 
+0x32c3 009935 rtn 
+:      009937 g24_set_contw_with_temp_store_3byte:
+0x32c4 009938 call g24_set_contw_with_temp 
+:      009939 g24_contw_istore_3byte:
+0x32c5 009940 istore 3 ,contw 
+0x32c6 009941 rtn 
+:      009943 g24_set_contw_with_regb:
+0x32c7 009944 call g24_head_ptr2regc 
+:      009945 g24_set_contw_with_regb2:
+0x32c8 009946 copy pdata ,regb 
+0x32c9 009947 copy rega ,pdata 
+0x32ca 009948 iadd regc ,contw 
+0x32cb 009949 copy regb ,pdata 
+0x32cc 009950 rtn 
+:      009952 g24_set_rega:
+0x32cd 009953 call g24_head_ptr2regc 
+0x32ce 009954 iadd regc ,rega 
+0x32cf 009955 rtn 
+:      009957 g24_set_rega_ifetch_1byte:
+0x32d0 009958 call g24_set_rega 
+:      009959 g24_rega_ifetch_1byte:
+0x32d1 009960 ifetch 1 ,rega 
+0x32d2 009961 rtn 
+:      009963 g24_set_rega_ifetcht_4byte:
+0x32d3 009964 call g24_set_rega 
+0x32d4 009965 ifetcht 4 ,rega 
+0x32d5 009966 rtn 
+:      009968 g24_mem_set0:
+0x32d6 009969 setarg 0 
+0x32d7 009970 branch g24_contw_istore_1byte 
+:      009974 app_init:
+0x32d8 009975 bpatch patch18_4 ,mem_patch18 
+0x32d9 009976 fetch 1 ,mem_device_option 
+0x32da 009977 branch app_init ,blank 
+0x32db 009979 beq dvc_op_dongle ,dongle_init 
+0x32dc 009980 beq dvc_op_antilost ,antilost_init 
+0x32dd 009981 beq dvc_op_shutter ,shutter_init 
+0x32de 009982 beq dvc_op_module ,module_init 
+0x32df 009983 beq dvc_op_car ,car_init 
+0x32e0 009984 beq dvc_op_remote_car ,remote_car_init 
+0x32e1 009985 bbit1 dvc_op_mouse ,mouse_init 
+0x32e2 009986 rtn 
+:      009988 app_lpm_init:
+0x32e3 009989 bpatch patch18_5 ,mem_patch18 
+0x32e4 009990 jam 0 ,mem_tester_emulate 
+0x32e5 009991 jam 0 ,mem_debug_config 
+0x32e6 009992 jam 0 ,mem_lch_code 
+0x32e7 009993 setarg 0 
+0x32e8 009994 store 5 ,mem_sp_state_start 
+0x32e9 009995 fetch 1 ,mem_device_option 
+0x32ea 009996 branch app_lpm_init ,blank 
+0x32eb 009997 beq dvc_op_module ,module_lpm_init 
+:      009998 app_lpm_init0:
+0x32ec 009999 rtn 
+:      010002 app_process_idle:
+0x32ed 010003 call ui_dispatch 
+0x32ee 010004 call check_51cmd 
+0x32ef 010005 call app_process_bb_event 
+0x32f0 010006 fetch 2 ,mem_cb_idle_process 
+0x32f1 010007 branch callback_func 
+:      010009 app_process_bt:
+0x32f2 010010 fetch 2 ,mem_cb_bt_process 
+0x32f3 010011 branch callback_func 
+:      010013 app_process_ble:
+0x32f4 010014 fetch 2 ,mem_cb_le_process 
+0x32f5 010015 branch callback_func 
+:      010017 app_process_bb_event:
+0x32f6 010018 bpatch patch18_6 ,mem_patch18 
+0x32f7 010020 arg mem_ipc_fifo_bt2c51 ,rega 
+0x32f8 010021 call fifo_out 
+0x32f9 010022 rtn blank 
+0x32fa 010024 copy pdata ,regc 
+0x32fb 010025 call app_event_normal_process 
+0x32fc 010026 branch app_process_bb_event_priority 
+:      010028 app_discard_event:
+0x32fd 010029 arg 0 ,regc 
+0x32fe 010030 rtn 
+:      010035 app_event_normal_process:
+0x32ff 010036 beq bt_evt_bb_connected ,app_evt_bt_conn 
+0x3300 010037 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
+0x3301 010038 beq bt_evt_setup_complete ,app_evt_setup_complete 
+0x3302 010039 beq bt_evt_hid_handshake ,app_evt_hid_handshake 
+0x3303 010040 beq bt_evt_hid_connected ,app_bb_event_hid_connected 
+0x3304 010041 beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
+0x3305 010042 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
+0x3306 010043 beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
+0x3307 010044 beq bt_evt_le_connected ,app_le_event_bb_connected 
+0x3308 010045 beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
+0x3309 010046 beq bt_evt_reconn_started ,app_event_reconn_start 
+0x330a 010047 beq bt_evt_enter_sniff ,app_event_enter_sniff 
+0x330b 010048 beq bt_evt_exit_sniff ,app_event_exit_sniff 
+0x330c 010050 beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
+0x330d 010051 beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
+0x330e 010052 beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
+0x330f 010053 beq bt_evt_switch_success_master ,app_event_switch_success 
+0x3310 010054 rtn 
+:      010057 app_evt_bt_conn:
+0x3311 010058 fetch 2 ,mem_ui_state_map 
+0x3312 010059 set1 ui_state_bt_connected ,pdata 
+0x3313 010060 store 2 ,mem_ui_state_map 
+0x3314 010061 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3315 010062 set0 app_disc_by_button ,pdata 
+0x3316 010063 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3317 010064 rtn 
+:      010066 app_event_switch_success:
+0x3318 010067 jam 0 ,mem_switch_fail_master_count 
+0x3319 010068 rtn 
+:      010070 app_event_switch_fail_master:
+0x331a 010071 fetch 1 ,mem_switch_fail_master_count 
+0x331b 010072 increase 1 ,pdata 
+0x331c 010073 store 1 ,mem_switch_fail_master_count 
+0x331d 010074 sub pdata ,1 ,null 
+0x331e 010075 branch app_bt_role_switch ,positive 
+0x331f 010076 jam 0 ,mem_switch_fail_master_count 
+0x3320 010077 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3321 010078 set1 app_disc_switch_fail ,pdata 
+0x3322 010079 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3323 010080 branch app_bt_disconnect 
+:      010082 app_process_bb_event_priority:
+0x3324 010083 fetch 2 ,mem_cb_bb_event_process 
+0x3325 010084 branch callback_func 
+:      010086 app_check_wake_lock:
+0x3326 010087 fetch 2 ,mem_cb_check_wakelock 
+0x3327 010088 branch callback_func 
+:      010090 app_will_enter_lpm:
+0x3328 010091 fetch 2 ,mem_cb_before_lpm 
+0x3329 010092 branch callback_func 
+:      010094 app_event_linkkey_generate:
+0x332a 010095 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332b 010096 set1 app_disc_after_pairing ,pdata 
+0x332c 010097 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332d 010098 branch app_bt_store_reconn_info 
+:      010100 app_event_reconn_start:
+0x332e 010101 fetch 2 ,mem_ui_state_map 
+0x332f 010102 set1 ui_state_bt_reconnect ,pdata 
+0x3330 010103 store 2 ,mem_ui_state_map 
+0x3331 010104 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3332 010105 set1 app_disc_after_reconn ,pdata 
+0x3333 010106 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3334 010107 rtn 
+:      010109 app_evt_setup_complete:
+0x3335 010110 fetch 2 ,mem_ui_state_map 
+0x3336 010111 set1 ui_state_bt_setup_complete ,pdata 
+0x3337 010112 store 2 ,mem_ui_state_map 
+0x3338 010113 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3339 010114 set1 app_disc_after_setup_done ,pdata 
+0x333a 010115 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x333b 010116 rtn 
+:      010118 app_evt_hid_handshake:
+0x333c 010119 fetch 2 ,mem_ui_state_map 
+0x333d 010120 set1 ui_state_bt_hid_handshake ,pdata 
+0x333e 010121 store 2 ,mem_ui_state_map 
+0x333f 010122 rtn 
+:      010124 app_event_enter_sniff:
+0x3340 010125 fetch 2 ,mem_ui_state_map 
+0x3341 010126 set1 ui_state_bt_sniff ,pdata 
+0x3342 010127 store 2 ,mem_ui_state_map 
+0x3343 010128 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3344 010129 set1 app_disc_after_sniff ,pdata 
+0x3345 010130 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3346 010131 rtn 
+:      010133 app_event_exit_sniff:
+0x3347 010134 fetch 2 ,mem_ui_state_map 
+0x3348 010135 set0 ui_state_bt_sniff ,pdata 
+0x3349 010136 store 2 ,mem_ui_state_map 
+0x334a 010137 rtn 
+:      010139 app_le_event_bb_connected:
+0x334b 010140 fetch 2 ,mem_ui_state_map 
+0x334c 010141 set1 ui_state_ble_connected ,pdata 
+0x334d 010142 store 2 ,mem_ui_state_map 
+0x334e 010143 rtn 
+:      010145 app_le_event_bb_disconn:
+0x334f 010146 fetch 2 ,mem_ui_state_map 
+0x3350 010147 set0 ui_state_ble_connected ,pdata 
+0x3351 010148 store 2 ,mem_ui_state_map 
+0x3352 010149 branch app_lpm_mult_disable 
+:      010151 app_bb_event_hid_connected:
+0x3353 010152 fetch 2 ,mem_ui_state_map 
+0x3354 010153 set1 ui_state_bt_hid_conn ,pdata 
+0x3355 010154 store 2 ,mem_ui_state_map 
+0x3356 010155 rtn 
+:      010157 app_evt_button_long_pressed:
+0x3357 010158 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3358 010159 set1 app_disc_by_button ,pdata 
+0x3359 010160 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335a 010161 rtn 
+:      010163 app_event_ml2cap_conn_refused:
+0x335b 010164 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335c 010165 set1 app_disc_l2cap_refused ,pdata 
+0x335d 010166 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335e 010167 branch app_bt_disconnect 
+:      010170 app_evt_timer:
+0x335f 010171 bpatch patch18_7 ,mem_patch18 
+0x3360 010172 store 1 ,mem_app_evt_timer_count 
+:      010173 app_evt_100ms_loop:
+0x3361 010174 fetch 1 ,mem_app_evt_timer_count 
+0x3362 010175 rtn blank 
+0x3363 010176 increase -1 ,pdata 
+0x3364 010177 store 1 ,mem_app_evt_timer_count 
+0x3365 010178 call ui_button_polling 
+0x3366 010179 call app_lpm_wake_auto_lock_timer 
+0x3367 010180 call app_unsniff_delay_timer 
+0x3368 010181 call app_discovery_timer 
+0x3369 010182 call flash_write_spi_sm_timer 
+0x336a 010183 fetch 2 ,mem_cb_event_timer 
+0x336b 010184 call callback_func 
+0x336c 010185 branch app_evt_100ms_loop 
+:      010190 timer_single_step:
+0x336d 010191 ifetch 1 ,regc 
+0x336e 010192 rtn blank 
+0x336f 010193 pincrease -1 
+0x3370 010194 istore 1 ,regc 
+0x3371 010195 nrtn blank 
+0x3372 010196 copy regb ,pdata 
+0x3373 010197 branch callback_func 
+:      010201 timer_single_step_2b:
+0x3374 010202 ifetch 2 ,regc 
+0x3375 010203 rtn blank 
+0x3376 010204 pincrease -1 
+0x3377 010205 istore 2 ,regc 
+0x3378 010206 nrtn blank 
+0x3379 010207 copy regb ,pdata 
+0x337a 010208 branch callback_func 
+:      010210 app_power_timer:
+0x337b 010211 fetcht 2 ,mem_power_param_ptr 
+0x337c 010212 add temp ,power_timer_offset ,regc 
+0x337d 010213 arg app_power_timer_timeout ,regb 
+0x337e 010214 branch timer_single_step 
+:      010216 app_power_timer_timeout:
+0x337f 010217 call app_got_power_state_common 
+0x3380 010218 beq power_starting ,app_enter_power_stanby_state 
+:      010219 app_enter_power_off_state:
+0x3381 010220 branch app_enter_hibernate 
+:      010221 app_enter_power_stanby_state:
+0x3382 010222 setarg power_standby 
+0x3383 010223 istore 1 ,regc 
+0x3384 010224 add temp ,power_standby_cb_offset ,regb 
+:      010225 app_power_cb_common:
+0x3385 010226 ifetch 2 ,regb 
+0x3386 010227 branch callback_func 
+:      010229 app_unsniff_delay_timer:
+0x3387 010230 arg mem_unsniff2sniff_timer_count ,regc 
+0x3388 010231 arg app_unsniff_delay_timeout ,regb 
+0x3389 010232 branch timer_single_step 
+:      010234 app_unsniff_delay_timeout:
+0x338a 010235 call context_check_idle 
+0x338b 010236 branch app_bt_enter_sniff ,zero 
+0x338c 010237 rtn 
+:      010240 app_discovery_timer:
+0x338d 010241 arg mem_discovery_timeout_timer_count ,regc 
+0x338e 010242 arg app_discovery_timeout ,regb 
+0x338f 010243 branch timer_single_step_2b 
+:      010245 app_discovery_timeout:
+0x3390 010246 call app_bt_stop_discovery 
+0x3391 010247 call app_led_off 
+0x3392 010248 fetch 2 ,mem_cb_discovry_timeout 
+0x3393 010249 branch callback_func 
+:      010252 app_bb_event_reconn_failed:
+0x3394 010253 call app_disconn_reason_flag_clear 
+:      010254 app_clear_reconnect_flag:
+0x3395 010255 fetch 2 ,mem_ui_state_map 
+0x3396 010256 set0 ui_state_bt_reconnect ,pdata 
+0x3397 010257 store 2 ,mem_ui_state_map 
+0x3398 010258 rtn 
+:      010260 app_bb_event_bb_disconn:
+0x3399 010261 jam 0 ,mem_unsniff2sniff_timer_count 
+0x339a 010262 fetch 2 ,mem_ui_state_map 
+0x339b 010263 bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
+0x339c 010264 isolate0 ui_state_bt_setup_complete ,pdata 
+0x339d 010265 call app_discard_event ,true 
+:      010266 app_bb_event_bb_reconn_disconn:
+0x339e 010267 bpatch patch19_0 ,mem_patch19 
+0x339f 010268 fetch 2 ,mem_ui_state_map 
+0x33a0 010269 set0 ui_state_bt_connected ,pdata 
+0x33a1 010270 set0 ui_state_bt_setup_complete ,pdata 
+0x33a2 010271 set0 ui_state_bt_hid_conn ,pdata 
+0x33a3 010272 set0 ui_state_bt_hid_handshake ,pdata 
+0x33a4 010273 set0 ui_state_bt_reconnect ,pdata 
+0x33a5 010274 store 2 ,mem_ui_state_map 
+0x33a6 010275 branch app_lpm_mult_disable 
+:      010277 app_bb_hibernate:
+0x33a7 010278 call app_disconn_reason_clear 
+0x33a8 010279 branch app_enter_hibernate 
+:      010282 app_disconn_reason_clear:
+0x33a9 010283 setarg 0 
+0x33aa 010284 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33ab 010285 rtn 
+:      010286 app_disconn_reason_flag_clear:
+0x33ac 010287 setarg 0 
+0x33ad 010288 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33ae 010289 rtn 
+:      010291 app_disconn_reason_collect_bt:
+0x33af 010292 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b0 010293 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b1 010294 setarg 0 
+0x33b2 010295 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b3 010296 rtn 
+:      010298 app_disconn_reason_collect_ble:
+0x33b4 010299 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b5 010300 set1 app_disc_ble ,pdata 
+0x33b6 010301 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b7 010302 setarg 0 
+0x33b8 010303 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b9 010304 rtn 
+:      010312 app_check_sniff:
+0x33ba 010313 fetch 1 ,mem_ui_state_map 
+0x33bb 010314 isolate1 ui_state_bt_sniff ,pdata 
+0x33bc 010315 rtn 
+:      010323 app_initflag_store:
+0x33bd 010324 setarg eeprom_init_flag 
+:      010325 app_flag_store:
+0x33be 010326 store 2 ,mem_timeup 
+0x33bf 010327 bpatch patch19_1 ,mem_patch19 
+0x33c0 010328 arg 2 ,temp 
+0x33c1 010329 arg mem_timeup ,rega 
+0x33c2 010330 arg eeprom_module_init_flag ,regb 
+0x33c3 010331 branch iicd_write_eep_data 
+:      010334 app_initflag_check:
+0x33c4 010335 bpatch patch19_2 ,mem_patch19 
+0x33c5 010336 arg 2 ,temp 
+0x33c6 010337 arg mem_pdatatemp ,rega 
+0x33c7 010338 arg eeprom_module_init_flag ,regb 
+0x33c8 010339 call iicd_read_eep_data 
+0x33c9 010340 fetch 2 ,mem_pdatatemp 
+0x33ca 010341 arg eeprom_init_flag ,temp 
+0x33cb 010342 isub temp ,null 
+0x33cc 010343 rtn 
+:      010346 app_start_auto_sniff:
+0x33cd 010347 fetch 1 ,mem_unsniff2sniff_timer 
+0x33ce 010348 store 1 ,mem_unsniff2sniff_timer_count 
+0x33cf 010349 rtn 
+:      010351 app_get_lpm_wake_lock:
+0x33d0 010352 arg wake_lock_app ,queue 
+0x33d1 010353 branch lpm_get_wake_lock 
+:      010355 app_put_lpm_wake_lock:
+0x33d2 010356 arg wake_lock_app ,queue 
+0x33d3 010357 branch lpm_put_wake_lock 
+:      010359 app_lpm_wake_auto_lock:
+0x33d4 010360 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
+0x33d5 010361 branch app_get_lpm_wake_lock 
+:      010363 app_lpm_wake_auto_lock_timer:
+0x33d6 010364 arg mem_wake_up_delay_timer ,regc 
+0x33d7 010365 arg app_put_lpm_wake_lock ,regb 
+0x33d8 010366 branch timer_single_step 
+:      010368 app_l2cap_flow_control_enable:
+0x33d9 010369 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
+0x33da 010370 rtn 
+:      010372 app_l2cap_flow_control_disable:
+0x33db 010373 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
+0x33dc 010374 rtn 
+:      010376 app_bt_set_pincode:
+0x33dd 010377 jam bt_cmd_set_pin_code ,mem_fifo_temp 
+0x33de 010378 branch ui_ipc_send_cmd 
+:      010380 app_bt_role_switch:
+0x33df 010381 jam bt_cmd_role_switch ,mem_fifo_temp 
+0x33e0 010382 branch ui_ipc_send_cmd 
+:      010384 app_bt_start_reconnect:
+0x33e1 010385 bpatch patch19_3 ,mem_patch19 
+0x33e2 010386 fetch 1 ,mem_app_connection_options 
+0x33e3 010387 store 1 ,mem_connection_options 
+0x33e4 010388 jam app_flag_reconnect ,mem_reconnect_flag 
+0x33e5 010389 jam bt_cmd_reconnect ,mem_fifo_temp 
+0x33e6 010390 branch ui_ipc_send_cmd 
+:      010392 app_bt_reconnect_cancel:
+0x33e7 010393 jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
+0x33e8 010394 branch ui_ipc_send_cmd 
+:      010396 app_bt_disconnect:
+0x33e9 010397 jam bt_cmd_disconnect ,mem_fifo_temp 
+0x33ea 010398 branch ui_ipc_send_cmd 
+:      010400 app_bt_start_discovery_short:
+0x33eb 010401 fetch 2 ,mem_discovery_timeout 
+0x33ec 010402 store 2 ,mem_discovery_timeout_timer_count 
+:      010403 app_bt_start_discovery_led_blink:
+0x33ed 010404 call app_led_start_blink 
+:      010405 app_bt_start_discovery:
+0x33ee 010406 jam bt_cmd_start_discovery ,mem_fifo_temp 
+0x33ef 010407 branch ui_ipc_send_cmd 
+:      010409 app_bt_stop_discovery:
+0x33f0 010410 setarg 0 
+0x33f1 010411 store 2 ,mem_discovery_timeout_timer_count 
+0x33f2 010412 jam bt_cmd_stop_discovery ,mem_fifo_temp 
+0x33f3 010413 branch ui_ipc_send_cmd 
+:      010415 app_ble_start_direct_adv:
+0x33f4 010416 jam bt_cmd_start_direct_adv ,mem_fifo_temp 
+0x33f5 010417 branch ui_ipc_send_cmd 
+:      010419 app_ble_stop_direct_adv:
+0x33f6 010420 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
+0x33f7 010421 branch ui_ipc_send_cmd 
+:      010423 app_ble_stop_adv:
+0x33f8 010424 jam bt_cmd_stop_adv ,mem_fifo_temp 
+0x33f9 010425 branch ui_ipc_send_cmd 
+:      010427 app_ble_start_adv:
+0x33fa 010428 jam bt_cmd_start_adv ,mem_fifo_temp 
+0x33fb 010429 branch ui_ipc_send_cmd 
+:      010431 app_ble_start_scan:
+0x33fc 010432 jam bt_cmd_le_start_scan ,mem_fifo_temp 
+0x33fd 010433 branch ui_ipc_send_cmd 
+:      010435 app_ble_stop_scan:
+0x33fe 010436 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
+0x33ff 010437 branch ui_ipc_send_cmd 
+:      010439 app_ble_start_conn:
+0x3400 010440 jam bt_cmd_le_start_conn ,mem_fifo_temp 
+0x3401 010441 branch ui_ipc_send_cmd 
+:      010443 app_ble_disconnect:
+0x3402 010444 jam bt_cmd_le_disconnect ,mem_fifo_temp 
+0x3403 010445 branch ui_ipc_send_cmd 
+:      010447 app_led_start_blink:
+0x3404 010448 jam bt_cmd_led_blink ,mem_fifo_temp 
+0x3405 010449 branch ui_ipc_send_cmd 
+:      010451 app_led_on:
+0x3406 010452 jam bt_cmd_led_on ,mem_fifo_temp 
+0x3407 010453 branch ui_ipc_send_cmd 
+:      010455 app_led_stop_blink:
+:      010456 app_led_off:
+0x3408 010457 jam bt_cmd_led_off ,mem_fifo_temp 
+0x3409 010458 branch ui_ipc_send_cmd 
+:      010460 app_enter_hibernate:
+0x340a 010461 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
+0x340b 010462 branch ui_ipc_send_cmd 
+:      010464 app_bt_sniff_exit:
+0x340c 010465 jam bt_cmd_exit_sniff ,mem_fifo_temp 
+0x340d 010466 branch ui_ipc_send_cmd 
+:      010468 app_bt_enter_sniff:
+0x340e 010469 jam bt_cmd_enter_sniff ,mem_fifo_temp 
+0x340f 010470 branch ui_ipc_send_cmd 
+:      010472 app_ble_store_reconn_info:
+0x3410 010473 jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
+0x3411 010474 branch ui_ipc_send_cmd 
+:      010476 app_bt_store_reconn_info:
+0x3412 010477 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
+0x3413 010478 branch ui_ipc_send_cmd 
+:      010480 app_store_reconn_info:
+0x3414 010481 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
+0x3415 010482 branch ui_ipc_send_cmd 
+:      010484 app_lpm_mult_enable:
+0x3416 010485 set1 mark_lpm_mult_enable ,mark 
+0x3417 010486 rtn 
+:      010488 app_lpm_mult_disable:
+0x3418 010489 set0 mark_lpm_mult_enable ,mark 
+0x3419 010490 rtn 
+:      010510 app_button_long_pressed:
+0x341a 010511 call app_got_power_state_common 
+0x341b 010512 beq power_standby ,app_power_shutting_down 
+:      010513 app_power_starting:
+0x341c 010514 setarg power_starting 
+0x341d 010515 istore 1 ,regc 
+0x341e 010516 add temp ,power_starting_timeout_offset ,rega 
+0x341f 010517 add temp ,power_starting_cb_offset ,regb 
+:      010518 app_power_common:
+0x3420 010519 ifetcht 1 ,rega 
+0x3421 010520 increase 1 ,regc 
+0x3422 010521 istoret 1 ,regc 
+0x3423 010522 branch app_power_cb_common 
+:      010524 app_power_shutting_down:
+0x3424 010525 setarg power_off 
+0x3425 010526 istore 1 ,regc 
+0x3426 010527 fetch 2 ,mem_ui_state_map 
+0x3427 010528 bbit0 ui_state_ble_connected ,app_power_off_end 
+0x3428 010529 call app_ble_disconnect 
+:      010530 app_power_off_end:
+0x3429 010531 fetcht 2 ,mem_power_param_ptr 
+0x342a 010532 add temp ,power_off_timeout_offset ,rega 
+0x342b 010533 add temp ,power_off_cb_offset ,regb 
+0x342c 010534 branch app_power_common 
+:      010536 app_got_power_state_common:
+0x342d 010537 fetcht 2 ,mem_power_param_ptr 
+0x342e 010538 add temp ,power_state_offset ,regc 
+0x342f 010539 ifetch 1 ,regc 
+0x3430 010540 rtn 
+:      010542 app_event_button_up:
+0x3431 010543 call app_got_power_state_common 
+0x3432 010544 bne power_off ,app_power_release 
+0x3433 010545 branch app_enter_hibernate 
+:      010546 app_power_release:
+0x3434 010547 add temp ,ui_butten_up_cb_offset ,regb 
+0x3435 010548 branch app_power_cb_common 
+:      010550 antilost_init:
+0x3436 010551 rtn wake 
+0x3437 010552 jam 0x00 ,core_gpio_sel1 
+0x3438 010553 setarg antilost_le_before_hibernate 
+0x3439 010554 store 2 ,mem_cb_before_hibernate 
+0x343a 010555 setarg keyscan_process_lpm_before 
+0x343b 010556 store 2 ,mem_cb_before_lpm 
+0x343c 010557 setarg antilost_idle_process 
+0x343d 010558 store 2 ,mem_cb_idle_process 
+0x343e 010559 setarg antilost_le_conn_process 
+0x343f 010560 store 2 ,mem_cb_le_process 
+0x3440 010561 setarg antilost_bb_event_process 
+0x3441 010562 store 2 ,mem_cb_bb_event_process 
+0x3442 010563 setarg antilost_le_bb_event_timer 
+0x3443 010564 store 2 ,mem_cb_event_timer 
+0x3444 010565 setarg antilost_le_notification 
+0x3445 010566 store 2 ,mem_cb_ble_transmit 
+0x3446 010567 setarg antilost_lpm_lock_process 
+0x3447 010568 store 2 ,mem_cb_check_wakelock 
+0x3448 010569 setarg antilost_le_receive_data_process 
+0x3449 010570 store 2 ,mem_cb_att_write 
+0x344a 010571 bpatch patch19_4 ,mem_patch19 
+0x344b 010572 call antilost_buzzer_pwm_init 
+0x344c 010573 call keyscan_key_init 
+0x344d 010574 call antilost_adc_init 
+0x344e 010575 call ui_led_init_global 
+0x344f 010576 call ui_button_init 
+0x3450 010577 setarg antilost_key_up_down 
+0x3451 010578 store 2 ,mem_cb_antl_key 
+0x3452 010579 setarg antilost_power_off_cb 
+0x3453 010580 store 2 ,mem_antl_power_off_cb 
+0x3454 010581 setarg antilost_power_starting_cb 
+0x3455 010582 store 2 ,mem_antl_power_starting_cb 
+0x3456 010583 setarg antilost_power_standby_cb 
+0x3457 010584 store 2 ,mem_antl_power_standby_cb 
+0x3458 010585 setarg antilost_led_on_cb 
+0x3459 010586 store 2 ,mem_antl_led_cb_on 
+0x345a 010587 setarg antilost_led_off_cb 
+0x345b 010588 store 2 ,mem_antl_led_cb_off 
+0x345c 010589 setarg antilost_buzzer_on 
+0x345d 010590 store 2 ,mem_antl_buzzer_cb_on 
+0x345e 010591 setarg antilost_buzzer_off 
+0x345f 010592 store 2 ,mem_antl_buzzer_cb_off 
+0x3460 010593 fetch 2 ,mem_ui_state_map 
+0x3461 010594 rtnbit1 ui_state_btn_down 
+0x3462 010595 branch app_enter_hibernate 
+:      010597 antilost_le_before_hibernate:
+0x3463 010598 call antilost_led_buzzer_stop_blink 
+0x3464 010599 branch app_enter_hibernate 
+:      010601 antilost_le_notification:
+0x3465 010602 call le_fifo_check_nearly_full 
+0x3466 010603 nrtn blank 
+0x3467 010604 arg mem_temp_block5 ,rega 
+0x3468 010605 call queue_pop 
+0x3469 010606 nrtn user 
+0x346a 010607 arg mem_temp_block5 ,contr 
+0x346b 010608 branch le_send_notify_from_list 
+:      010610 antilost_power_standby_cb:
+0x346c 010611 fetch 2 ,mem_antl_le_sleep_timeout 
+0x346d 010612 store 2 ,mem_antl_le_sleep_timer 
+0x346e 010613 jam 1 ,mem_antl_key_scan_enable 
+0x346f 010614 branch antilost_fast_adv_start 
+:      010616 antilost_lpm_lock_process:
+0x3470 010617 fetch 1 ,mem_antl_key_state 
+0x3471 010618 beq 1 ,antilost_lpm_ctrl_for_led_buzzer 
+0x3472 010619 fetch 2 ,mem_ui_state_map 
+0x3473 010620 bbit0 ui_state_ble_connected ,antilost_lpm_ctrl_for_led_buzzer 
+0x3474 010621 fetch 1 ,mem_antl_lost_mode 
+0x3475 010622 beq 1 ,app_get_lpm_wake_lock 
+0x3476 010623 fetch 1 ,mem_antl_queue_curr_num 
+0x3477 010624 nbranch app_get_lpm_wake_lock ,blank 
+0x3478 010625 branch app_put_lpm_wake_lock 
+:      010627 antilost_lpm_ctrl_for_led_buzzer:
+0x3479 010628 fetch 1 ,mem_antl_led_state 
+0x347a 010629 fetcht 1 ,mem_antl_buzzer_state 
+0x347b 010630 ior temp ,pdata 
+0x347c 010631 beq 1 ,app_get_lpm_wake_lock 
+0x347d 010632 branch app_put_lpm_wake_lock 
+:      010634 antilost_bb_event_process:
+0x347e 010635 copy regc ,pdata 
+0x347f 010636 beq bt_evt_button_up ,app_event_button_up 
+0x3480 010637 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x3481 010638 beq bt_evt_le_connected ,antilost_le_process_conn 
+0x3482 010639 beq bt_evt_le_disconnected ,antilost_le_process_discon 
+0x3483 010640 beq bt_evt_le_parse_conn_papa_update_rsp ,antilost_le_conn_param_update_rsp_recieved 
+0x3484 010641 rtn 
+:      010642 antilost_le_conn_param_update_rsp_recieved:
+0x3485 010643 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x3486 010644 beq ble_signaling_connect_parameter_update_rejected ,antilost_le_conn_param_rejected 
+:      010645 antilost_le_conn_param_accepted:
+0x3487 010646 fetch 2 ,mem_le_new_connslavelatency 
+0x3488 010647 branch antilost_master_nonsupport_latency ,blank 
+:      010648 antilost_le_conn_param_updata_procedure_sucsess:
+0x3489 010649 jam conn_param_updata_procedure_complete ,mem_antl_conn_updata_procedure_state 
+0x348a 010650 jam 60 ,mem_antl_conn_update_timer 
+0x348b 010651 rtn 
+:      010653 antilost_le_conn_param_rejected:
+0x348c 010654 fetch 2 ,mem_le_latency 
+0x348d 010655 branch antilost_conn_param_updata_procedure_faild ,blank 
+:      010656 antilost_conn_param_retransimiting:
+0x348e 010657 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x348f 010658 fetcht 2 ,mem_interval_increment 
+0x3490 010659 fetch 2 ,mem_le_interval_min 
+0x3491 010660 iadd temp ,pdata 
+0x3492 010661 store 2 ,mem_le_interval_min 
+0x3493 010662 copy pdata ,rega 
+0x3494 010663 fetch 2 ,mem_le_interval_max 
+0x3495 010664 iadd temp ,pdata 
+0x3496 010665 store 2 ,mem_le_interval_max 
+0x3497 010666 iadd rega ,pdata 
+0x3498 010667 rshift pdata ,temp 
+0x3499 010668 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x349a 010669 idiv temp 
+0x349b 010670 call wait_div_end 
+0x349c 010671 quotient pdata 
+0x349d 010672 store 2 ,mem_le_latency 
+0x349e 010673 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x349f 010674 rtn 
+:      010675 antilost_conn_param_updata_procedure_faild:
+0x34a0 010676 jam conn_param_updata_procedure_faild ,mem_antl_conn_updata_procedure_state 
+0x34a1 010677 rtn 
+:      010679 antilost_master_nonsupport_latency:
+0x34a2 010680 jam 0 ,mem_lpm_mult 
+0x34a3 010681 jam 0 ,mem_antl_send_updata_le_param_timer 
+0x34a4 010682 fetch 2 ,mem_le_new_conninterval 
+0x34a5 010683 fetcht 2 ,mem_antl_le_unnormal_interval_min 
+0x34a6 010684 isub temp ,null 
+0x34a7 010685 setflag positive ,0 ,rega 
+0x34a8 010686 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x34a9 010687 fetcht 2 ,mem_le_new_conninterval 
+0x34aa 010688 isub temp ,pdata 
+0x34ab 010689 setflag positive ,1 ,rega 
+0x34ac 010690 compare 0x03 ,rega ,0x03 
+0x34ad 010691 rtn true 
+0x34ae 010692 fetch 8 ,mem_antl_le_unnormal_interval_min 
+0x34af 010693 store 8 ,mem_le_interval_min 
+0x34b0 010694 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34b1 010695 rtn 
+:      010698 antilost_le_bb_event_timer:
+0x34b2 010700 call app_power_timer 
+0x34b3 010701 call antilost_double_click_timer 
+0x34b4 010702 call antilost_le_fast_adv_timer 
+0x34b5 010703 call antilost_le_sleep_timer 
+0x34b6 010704 call antilost_app_updata_le_param_timer 
+0x34b7 010705 call antilost_conn_update_timer 
+0x34b8 010706 branch antilost_adc_check_timer 
+:      010709 antilost_double_click_timer:
+0x34b9 010710 arg mem_double_click_timer ,regc 
+0x34ba 010711 arg antilost_double_click_timeout ,regb 
+0x34bb 010712 branch timer_single_step 
+:      010713 antilost_double_click_timeout:
+0x34bc 010714 jam 0 ,mem_butten_click_cnt 
+0x34bd 010715 rtn 
+:      010716 antilost_le_fast_adv_timer:
+0x34be 010717 arg mem_antl_fast_adv_timer ,regc 
+0x34bf 010718 arg antilost_le_fast_adv_timeout ,regb 
+0x34c0 010719 branch timer_single_step_2b 
+:      010720 antilost_le_fast_adv_timeout:
+0x34c1 010721 arg mem_antl_slow_adv_led_style ,regc 
+0x34c2 010722 arg mem_antl_slow_adv_lpm_interval ,regb 
+0x34c3 010723 branch antilost_adv_start_common 
+:      010726 antilost_conn_update_timer:
+0x34c4 010727 arg mem_antl_conn_update_timer ,regc 
+0x34c5 010728 arg antilost_conn_update_timer_time_out ,regb 
+0x34c6 010729 branch timer_single_step 
+:      010731 antilost_conn_update_timer_time_out:
+0x34c7 010732 fetch 2 ,mem_le_latency 
+0x34c8 010733 store 1 ,mem_lpm_mult 
+0x34c9 010734 rtn 
+:      010735 antilost_app_updata_le_param_timer:
+0x34ca 010736 arg mem_antl_send_updata_le_param_timer ,regc 
+0x34cb 010737 arg antilost_app_updata_le_param_timeout ,regb 
+0x34cc 010738 branch timer_single_step 
+:      010739 antilost_app_updata_le_param_timeout:
+0x34cd 010740 fetch 1 ,mem_le_state 
+0x34ce 010741 compare 0 ,pdata ,0x60 
+0x34cf 010742 nbranch antilost_wait_for_updata_param_instant_expire ,true 
+0x34d0 010743 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x34d1 010744 call app_lpm_mult_enable 
+0x34d2 010745 branch le_l2cap_tx_update_req 
+:      010746 antilost_wait_for_updata_param_instant_expire:
+0x34d3 010747 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34d4 010748 rtn 
+:      010750 antilost_le_sleep_timer:
+0x34d5 010751 arg mem_antl_le_sleep_timer ,regc 
+0x34d6 010752 arg antilost_le_sleep_timer_timeout ,regb 
+0x34d7 010753 branch timer_single_step_2b 
+:      010756 antilost_le_sleep_timer_timeout:
+0x34d8 010757 branch app_button_long_pressed 
+:      010759 antilost_adc_check_timer:
+0x34d9 010762 arg mem_adc_timer ,regc 
+0x34da 010763 arg antilost_adc_check_timer_timeout ,regb 
+0x34db 010764 branch timer_single_step_2b 
+:      010765 antilost_adc_check_timer_timeout:
+0x34dc 010766 fetch 2 ,mem_adc_timeout 
+0x34dd 010767 store 2 ,mem_adc_timer 
+0x34de 010768 branch antilost_battery_process 
+:      010771 antilost_le_process_conn:
+0x34df 010772 fetch 2 ,mem_adc_timeout 
+0x34e0 010773 store 2 ,mem_adc_timer 
+0x34e1 010774 setarg 0 
+0x34e2 010775 store 2 ,mem_antl_fast_adv_timer 
+0x34e3 010776 store 2 ,mem_antl_le_sleep_timer 
+0x34e4 010777 call antilost_alert_off 
+0x34e5 010778 call antilost_led_buzzer_stop_blink 
+0x34e6 010779 jam 0 ,mem_lpm_mult 
+0x34e7 010780 branch app_ble_stop_adv 
+:      010783 antilost_le_process_discon:
+0x34e8 010786 setarg 0 
+0x34e9 010787 store 4 ,mem_adc_timer 
+0x34ea 010788 store 3 ,mem_antl_conn_updata_procedure_state 
+0x34eb 010789 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x34ec 010791 jam 1 ,mem_alarm_config_notfy_cnt 
+0x34ed 010792 fetch 2 ,mem_antl_le_sleep_timeout 
+0x34ee 010793 store 2 ,mem_antl_le_sleep_timer 
+0x34ef 010794 call queue_init 
+0x34f0 010795 fetch 1 ,mem_antl_power_state 
+0x34f1 010796 rtneq power_off 
+0x34f2 010797 call antilost_fast_adv_start 
+0x34f3 010798 branch antilost_on_off_alarm_after_disconn 
+:      010801 antilost_le_conn_process:
+0x34f4 010803 branch antilost_key_process 
+:      010805 antilost_idle_process:
+0x34f5 010807 fetch 1 ,mem_antl_power_state 
+0x34f6 010808 rtnne power_standby 
+0x34f7 010809 branch antilost_key_process 
+:      010814 antilost_power_starting_cb:
+0x34f8 010815 arg mem_antl_power_starting_buzzer_style ,regc 
+0x34f9 010816 call antilost_buzzer_configuration 
+0x34fa 010817 arg mem_antl_power_starting_led_style ,regc 
+:      010818 antilost_power_common:
+0x34fb 010819 branch antilost_led_configuration 
+:      010821 antilost_power_off_cb:
+0x34fc 010822 jam off ,mem_le_adv_enable 
+0x34fd 010823 arg mem_antl_power_off_buzzer_style ,regc 
+0x34fe 010824 call antilost_buzzer_configuration 
+0x34ff 010825 arg mem_antl_power_off_led_style ,regc 
+0x3500 010826 branch antilost_power_common 
+:      010828 antilost_le_receive_data_process:
+0x3501 010829 fetch 1 ,mem_le_att_opcode 
+0x3502 010830 beq attop_write_request ,antilost_le_parse_att_write_request 
+0x3503 010831 rtn 
+:      010832 antilost_le_parse_att_write_request:
+0x3504 010833 fetch 2 ,mem_le_att_handle 
+0x3505 010835 beq new_spec_write_handle ,antilost_cmd_parse_for_application 
+0x3506 010836 beq new_spec_notification_enable_handle ,antilost_notify_alarm_config_first_time 
+0x3507 010837 rtn 
+:      010842 antilost_key_process:
+0x3508 010843 fetch 1 ,mem_antl_key_scan_enable 
+0x3509 010844 rtn blank 
+0x350a 010845 branch keyscan_key_process 
+:      010849 antilost_key_up_down:
+0x350b 010850 copy rega ,pdata 
+0x350c 010851 branch antilost_key_is_up ,blank 
+:      010852 antilost_key_is_down:
+0x350d 010853 copy queue ,pdata 
+0x350e 010854 beq 0 ,antilost_key0_down 
+0x350f 010855 rtn 
+:      010856 antilost_key_is_up:
+0x3510 010857 copy queue ,pdata 
+0x3511 010858 beq 0 ,antilost_key0_up 
+0x3512 010859 rtn 
+:      010861 antilost_key0_down:
+0x3513 010862 jam 1 ,mem_antl_key_state 
+0x3514 010863 arg mem_antl_key_buzzer_style ,regc 
+0x3515 010864 call antilost_buzzer_configuration 
+0x3516 010865 arg mem_antl_key_led_style ,regc 
+0x3517 010866 call antilost_led_configuration 
+0x3518 010867 fetch 2 ,mem_ui_state_map 
+0x3519 010868 bbit0 ui_state_ble_connected ,antilost_butten_down_while_disconn 
+0x351a 010869 branch antilost_butten_down_after_conn 
+:      010871 antilost_key0_up:
+0x351b 010872 jam 0 ,mem_antl_key_state 
+0x351c 010873 branch antilost_double_click_timer_init 
+:      010877 antilost_double_click_timer_init:
+0x351d 010878 fetch 1 ,mem_butten_click_cnt 
+0x351e 010879 rtnne 1 
+0x351f 010880 jam 5 ,mem_double_click_timer 
+0x3520 010881 rtn 
+:      010883 antilost_butten_down_after_conn:
+0x3521 010884 fetch 1 ,mem_butten_click_cnt 
+0x3522 010885 pincrease 1 
+0x3523 010886 store 1 ,mem_butten_click_cnt 
+0x3524 010887 beq 1 ,antilost_click_once 
+0x3525 010888 beq 2 ,antilost_click_twice 
+0x3526 010889 rtn 
+:      010890 antilost_click_once:
+0x3527 010891 call antilost_alert_off 
+0x3528 010892 jam opcode1_butten_click_once ,mem_antl_key0_press + 5 
+0x3529 010893 arg mem_antl_key0_press ,regc 
+0x352a 010894 branch antilost_prepare_data_and_send 
+:      010895 antilost_click_twice:
+0x352b 010896 jam 0 ,mem_butten_click_cnt 
+0x352c 010897 jam opcode2_butten_double_click ,mem_antl_key0_press + 5 
+0x352d 010898 arg mem_antl_key0_press ,regc 
+0x352e 010899 call antilost_prepare_data_and_send 
+0x352f 010900 fetch 1 ,mem_antl_lost_mode 
+0x3530 010901 beq 1 ,antilost_alert_on 
+0x3531 010902 rtn 
+:      010904 antilost_butten_down_while_disconn:
+0x3532 010905 fetch 2 ,mem_antl_le_sleep_timeout 
+0x3533 010906 store 2 ,mem_antl_le_sleep_timer 
+0x3534 010907 call antilost_alert_off 
+0x3535 010908 branch antilost_fast_adv_start 
+:      010911 antilost_cmd_parse_for_application:
+0x3536 010912 bpatch patch19_5 ,mem_patch19 
+0x3537 010913 call le_app_receive_data 
+0x3538 010914 ifetch 1 ,rega 
+0x3539 010915 beq opcode3_antl_start_alram ,antilost_on_of_alram 
+0x353a 010916 beq opcode7_antl_config_alram ,antilost_configuration_for_alram 
+0x353b 010917 rtn 
+:      010919 antilost_on_of_alram:
+0x353c 010920 fetch 1 ,mem_antl_lost_mode 
+0x353d 010921 beq anti_le_alarm_off ,antilost_alert_on 
+0x353e 010922 beq anti_le_alarm_on ,antilost_alert_off 
+0x353f 010923 rtn 
+:      010925 antilost_configuration_for_alram:
+0x3540 010926 ifetch 1 ,regb 
+0x3541 010927 beq 1 ,antilost_set_start_alarm_after_disconn 
+0x3542 010928 beq 0 ,antilost_set_no_alarm_after_disconn 
+0x3543 010929 rtn 
+:      010936 antilost_prepare_data_and_send:
+0x3544 010937 bpatch patch19_6 ,mem_patch19 
+0x3545 010938 fetch 1 ,mem_client_characteristic_configuration_descriptor 
+0x3546 010939 isolate1 notification_enable_bit ,pdata 
+0x3547 010940 nrtn true 
+0x3548 010941 add regc ,6 ,contr 
+0x3549 010942 ifetch 2 ,contr 
+0x354a 010943 byteswap pdata ,pdata 
+0x354b 010944 add pdata ,5 ,loopcnt 
+0x354c 010945 add regc ,3 ,contr 
+0x354d 010946 call calc_check_sum_start 
+0x354e 010947 istore 1 ,contr 
+0x354f 010948 copy regc ,rega 
+0x3550 010949 branch queue_push 
+:      010955 antilost_alert_on:
+0x3551 010956 fetch 1 ,mem_antl_power_state 
+0x3552 010957 rtn blank 
+0x3553 010958 jam 1 ,mem_antl_lost_mode 
+0x3554 010959 arg mem_antl_alert_buzzer_stlye ,regc 
+0x3555 010960 call antilost_buzzer_configuration 
+0x3556 010961 arg mem_antl_alert_led_stlye ,regc 
+0x3557 010962 call antilost_led_configuration 
+0x3558 010963 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3559 010964 jam 1 ,mem_antl_key0_release + 8 
+0x355a 010965 arg mem_antl_key0_release ,regc 
+0x355b 010966 branch antilost_prepare_data_and_send 
+:      010967 antilost_alert_off:
+0x355c 010968 fetch 1 ,mem_antl_lost_mode 
+0x355d 010969 rtn blank 
+0x355e 010970 jam 0 ,mem_antl_lost_mode 
+0x355f 010971 call antilost_led_buzzer_stop_blink 
+0x3560 010972 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3561 010973 jam 0 ,mem_antl_key0_release + 8 
+0x3562 010974 arg mem_antl_key0_release ,regc 
+0x3563 010975 branch antilost_prepare_data_and_send 
+:      010977 antilost_set_start_alarm_after_disconn:
+0x3564 010978 jam 1 ,mem_alarm_config 
+0x3565 010979 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x3566 010980 jam 1 ,mem_antl_key0_release + 8 
+0x3567 010981 arg mem_antl_key0_release ,regc 
+0x3568 010982 branch antilost_prepare_data_and_send 
+:      010983 antilost_set_no_alarm_after_disconn:
+0x3569 010984 jam 0 ,mem_alarm_config 
+0x356a 010985 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x356b 010986 jam 0 ,mem_antl_key0_release + 8 
+0x356c 010987 arg mem_antl_key0_release ,regc 
+0x356d 010988 branch antilost_prepare_data_and_send 
+:      010989 antilost_on_off_alarm_after_disconn:
+0x356e 010990 fetch 1 ,mem_alarm_config 
+0x356f 010991 rtn blank 
+0x3570 010992 branch antilost_alert_on 
+:      010994 antilost_notify_alarm_config_first_time:
+0x3571 010995 ifetch 2 ,rega 
+0x3572 010996 store 2 ,mem_client_characteristic_configuration_descriptor 
+0x3573 010997 isolate1 notification_enable_bit ,pdata 
+0x3574 010998 nrtn true 
+0x3575 010999 fetch 1 ,mem_alarm_config_notfy_cnt 
+0x3576 011000 rtn blank 
+0x3577 011001 jam 0 ,mem_alarm_config_notfy_cnt 
+0x3578 011002 fetch 8 ,mem_antl_le_interval_min 
+0x3579 011003 store 8 ,mem_le_interval_min 
+0x357a 011004 jam 2 ,mem_antl_send_updata_le_param_timer 
+0x357b 011005 call antilost_battery_process 
+0x357c 011006 call antilost_battery_calculate_end 
+0x357d 011007 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x357e 011008 fetch 1 ,mem_alarm_config 
+0x357f 011009 store 1 ,mem_antl_key0_release + 8 
+0x3580 011010 arg mem_antl_key0_release ,regc 
+0x3581 011011 branch antilost_prepare_data_and_send 
+:      011015 antilost_buzzer_configuration:
+0x3582 011016 arg 1 ,rega 
+0x3583 011017 branch antilost_configuration_common 
+:      011018 antilost_led_configuration:
+0x3584 011019 arg 0 ,rega 
+:      011020 antilost_configuration_common:
+0x3585 011021 branch antilost_led_buzzer_style_configuration 
+:      011023 antilost_led_buzzer_stop_blink:
+0x3586 011024 arg 0 ,rega 
+0x3587 011025 call ui_led_blink_stop_global 
+0x3588 011026 arg 1 ,rega 
+0x3589 011027 call ui_led_blink_stop_global 
+0x358a 011028 fetch 1 ,mem_buzzer_pwm_conf 
+0x358b 011029 branch pwm_disable 
+:      011031 antilost_led_buzzer_style_configuration:
+0x358c 011032 call calc_curr_struct_prt 
+0x358d 011033 arg 7 ,loopcnt 
+0x358e 011034 branch ui_led_set_style_global + 2 
+:      011038 antilost_fast_adv_start:
+0x358f 011039 arg mem_antl_fast_adv_led_style ,regc 
+0x3590 011040 arg mem_antl_lpm_interval ,regb 
+:      011041 antilost_adv_start_common:
+0x3591 011042 call antilost_adv_interval_lpm_interval_set 
+0x3592 011043 call antilost_led_configuration 
+0x3593 011044 fetch 2 ,mem_antl_fast_adv_timeout 
+0x3594 011045 store 2 ,mem_antl_fast_adv_timer 
+0x3595 011046 branch app_ble_start_adv 
+:      011048 antilost_adv_interval_lpm_interval_set:
+0x3596 011049 ifetch 2 ,regb 
+0x3597 011050 store 2 ,mem_lpm_interval 
+0x3598 011051 ifetch 2 ,contr 
+0x3599 011052 store 2 ,mem_le_adv_interval 
+0x359a 011053 rtn 
+:      011055 antilost_buzzer_pwm_init:
+0x359b 011056 arg 0 ,rega 
+0x359c 011057 call pwm_init 
+0x359d 011058 fetch 6 ,mem_buzzer_pwm_conf 
+0x359e 011059 store 6 ,mem_pdatatemp 
+0x359f 011060 call pwm_out_set 
+0x35a0 011061 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a1 011062 branch pwm_disable 
+:      011064 antilost_led_on_cb:
+0x35a2 011065 jam 1 ,mem_antl_led_state 
+0x35a3 011066 rtn 
+:      011067 antilost_led_off_cb:
+0x35a4 011068 jam 0 ,mem_antl_led_state 
+0x35a5 011069 rtn 
+:      011073 antilost_buzzer_off:
+0x35a6 011074 jam 0 ,mem_antl_buzzer_state 
+0x35a7 011075 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a8 011076 branch pwm_disable 
+:      011078 antilost_buzzer_on:
+0x35a9 011079 jam 1 ,mem_antl_buzzer_state 
+0x35aa 011080 fetch 6 ,mem_buzzer_pwm_conf 
+0x35ab 011081 store 6 ,mem_pdatatemp 
+0x35ac 011082 branch pwm_out_set 
+:      011086 antilost_adc_init:
+0x35ad 011087 jam 0 ,mem_adc_config_flag 
+0x35ae 011088 branch adc_init_data 
+:      011090 antilost_battery_process:
+0x35af 011091 call adc_set_mode 
+0x35b0 011092 call vdd_calculate_by_mode 
+0x35b1 011093 store 2 ,mem_battery_current_voltage 
+0x35b2 011094 arg mem_battery_calculate_set ,rega 
+0x35b3 011095 call adc_bat_percent_lowpower_out 
+0x35b4 011096 store 1 ,mem_voltage_remain_percent 
+0x35b5 011097 beq 0 ,antilost_low_battery 
+0x35b6 011098 sub pdata ,0x64 ,null 
+0x35b7 011099 nbranch antilost_full_battery ,positive 
+0x35b8 011100 store 1 ,mem_antl_key0_release + 8 
+:      011101 antilost_battery_calculate_end:
+0x35b9 011102 jam opcode5_batter_information ,mem_antl_key0_release + 5 
+0x35ba 011103 arg mem_antl_key0_release ,regc 
+0x35bb 011104 branch antilost_prepare_data_and_send 
+:      011105 antilost_full_battery:
+0x35bc 011106 jam 100 ,mem_antl_key0_release + 8 
+0x35bd 011107 branch antilost_battery_calculate_end 
+:      011109 antilost_low_battery:
+0x35be 011110 branch app_button_long_pressed 
+:      011114 car_init:
+0x35bf 011115 rtn wake 
+0x35c0 011116 hfetch 1 ,core_gpio_sel1 
+0x35c1 011117 and_into 0xf0 ,pdata 
+0x35c2 011118 hstore 1 ,core_gpio_sel1 
+0x35c3 011119 setarg car_le_before_hibernate 
+0x35c4 011120 store 2 ,mem_cb_before_hibernate 
+0x35c5 011122 setarg car_le_process_lpm_before 
+0x35c6 011123 store 2 ,mem_cb_before_lpm 
+0x35c7 011125 setarg app_enter_hibernate 
+0x35c8 011126 store 2 ,mem_cb_discovry_timeout 
+0x35c9 011128 setarg car_scale_process_idle 
+0x35ca 011129 store 2 ,mem_cb_idle_process 
+0x35cb 011131 setarg car_scale_process_bb_event 
+0x35cc 011132 store 2 ,mem_cb_bb_event_process 
+0x35cd 011134 setarg app_get_lpm_wake_lock 
+0x35ce 011135 store 2 ,mem_cb_check_wakelock 
+0x35cf 011137 setarg car_le_receive_data 
+0x35d0 011138 store 2 ,mem_cb_att_write 
+0x35d1 011140 setarg car_le_bb_event_timer 
+0x35d2 011141 store 2 ,mem_cb_event_timer 
+0x35d3 011143 call g24_head_ptr2regc 
+0x35d4 011144 setarg car_24g_receive_data 
+0x35d5 011145 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x35d6 011146 istore 2 ,contw 
+0x35d7 011148 setarg car_power_off_signal 
+0x35d8 011149 store 2 ,mem_remote_car_power_off_cb 
+0x35d9 011151 setarg car_soft_switch_power_on_signal 
+0x35da 011152 store 2 ,mem_remote_car_power_standby_cb 
+0x35db 011154 bpatch patch19_7 ,mem_patch19 
+0x35dc 011155 call car_init_environment 
+0x35dd 011156 call queue_init 
+0x35de 011157 jam 2 ,mem_lpm_mult 
+0x35df 011158 jam power_on ,mem_car_24g_received_pac 
+0x35e0 011159 fetch 1 ,mem_car_config_soft_switch_enable 
+0x35e1 011160 store 1 ,mem_car_hard_soft_switch 
+0x35e2 011161 beq hard_switch ,car_hard_switch_power_on_signal 
+0x35e3 011162 fetch 1 ,mem_car_config_soft_switch_gpio 
+0x35e4 011163 store 1 ,mem_ui_button_gpio 
+0x35e5 011164 jam off ,mem_le_adv_enable 
+:      011165 car_soft_switch_power_on_init:
+0x35e6 011166 call car_ui_led_init 
+0x35e7 011167 call ui_button_init 
+0x35e8 011168 call ui_button_polling 
+0x35e9 011169 jam power_starting ,mem_car_power_state 
+0x35ea 011170 fetch 2 ,mem_ui_state_map 
+0x35eb 011171 rtnbit1 ui_state_btn_down 
+0x35ec 011172 branch app_enter_hibernate 
+:      011174 car_power_off_signal:
+0x35ed 011175 branch car_ui_led_init 
+:      011177 car_hard_switch_power_on_signal:
+0x35ee 011178 jam power_standby ,mem_car_power_state 
+:      011179 car_soft_switch_power_on_signal:
+0x35ef 011180 jam on ,mem_le_adv_enable 
+0x35f0 011181 call car_ui_led_init 
+0x35f1 011182 arg 0 ,rega 
+0x35f2 011183 call ui_led_blink_start_global 
+0x35f3 011185 setarg fast_adv_interval_value_car 
+0x35f4 011186 call shutter_ble_adv_interval_set 
+:      011187 car_le_modified_name_adv:
+0x35f5 011188 arg mem_le_name + 7 ,contw 
+0x35f6 011189 fetch 1 ,mem_le_lap 
+:      011190 car_name_loop:
+0x35f7 011191 and pdata ,0xF0 ,temp 
+0x35f8 011192 rshift4 temp ,temp 
+0x35f9 011193 call car_hex_to_ascii 
+0x35fa 011194 istoret 1 ,contw 
+0x35fb 011195 and pdata ,0x0F ,temp 
+0x35fc 011196 call car_hex_to_ascii 
+0x35fd 011197 istoret 1 ,contw 
+0x35fe 011198 call le_modified_name_att_list 
+0x35ff 011199 fetcht 1 ,mem_le_name_len 
+0x3600 011200 copy temp ,loopcnt 
+0x3601 011201 arg mem_le_adv_data + 2 ,contw 
+0x3602 011202 arg mem_le_name ,contr 
+0x3603 011203 call memcpy 
+:      011204 car_le_modified_name_scan:
+0x3604 011205 fetcht 1 ,mem_le_name_len 
+0x3605 011206 copy temp ,loopcnt 
+0x3606 011207 arg mem_le_scan_data + 2 ,contw 
+0x3607 011208 arg mem_le_name ,contr 
+0x3608 011209 branch memcpy 
+:      011210 car_hex_to_ascii:
+0x3609 011211 sub temp ,9 ,null 
+0x360a 011212 branch car_hex_num ,positive 
+0x360b 011213 add temp ,55 ,temp 
+0x360c 011214 rtn 
+:      011215 car_hex_num:
+0x360d 011216 add temp ,48 ,temp 
+0x360e 011217 rtn 
+:      011219 car_ui_led_init:
+0x360f 011220 fetch 1 ,mem_car_config_blood_led1_gpio 
+0x3610 011221 bne invalid_pin_num ,car_blood_led_gpio_set 
+:      011222 car_ui_led_init_1:
+0x3611 011223 fetch 1 ,mem_car_config_pairing_led_gpio 
+0x3612 011224 bne invalid_pin_num ,car_pairing_led_gpio_set 
+:      011225 car_ui_led_init_2:
+0x3613 011226 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x3614 011227 bne invalid_pin_num ,car_low_voltage_led_gpio_set 
+:      011228 car_ui_led_init_3:
+0x3615 011229 fetch 1 ,mem_car_led_num 
+0x3616 011230 copy pdata ,loopcnt 
+0x3617 011231 setarg mem_car_led_map 
+0x3618 011232 copy pdata ,rega 
+:      011233 car_in_lp1:
+0x3619 011234 copy rega ,contr 
+0x361a 011235 ifetch 1 ,contr 
+0x361b 011236 copy contr ,rega 
+0x361c 011237 beq invalid_pin_num ,car_in_lp1_end 
+0x361d 011238 copy pdata ,temp 
+0x361e 011239 call gpio_config_output 
+:      011240 car_in_lp1_end:
+0x361f 011241 loop car_in_lp1 
+:      011242 car_ui_led_init_end:
+0x3620 011243 rtn 
+:      011244 car_blood_led_gpio_set:
+0x3621 011245 fetch 8 ,mem_car_config_blood_led1_gpio 
+0x3622 011246 store 8 ,mem_car_led_map + 2 
+0x3623 011247 branch car_ui_led_init_1 
+:      011248 car_pairing_led_gpio_set:
+0x3624 011249 store 1 ,mem_car_led_map 
+0x3625 011250 branch car_ui_led_init_2 
+:      011251 car_low_voltage_led_gpio_set:
+0x3626 011252 store 1 ,mem_car_led_map + 1 
+0x3627 011253 branch car_ui_led_init_3 
+:      011256 car_init_environment:
+0x3628 011257 arg 0 ,rega 
+0x3629 011258 call pwm_init 
+0x362a 011259 call car_ir_rx_init 
+0x362b 011260 call g24_receive_process_init 
+0x362c 011261 branch car_init_adc_hvin 
+:      011263 car_init_adc_hvin:
+0x362d 011264 jam 100 ,mem_car_notify_vdd_value_last 
+0x362e 011265 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x362f 011266 store 1 ,mem_car_style2_struct_led_gpio 
+0x3630 011267 branch adc_init_data 
+:      011269 car_le_before_hibernate:
+0x3631 011270 call gpio_set_before_lpm_common 
+0x3632 011271 branch keyscan_process_lpm_before 
+:      011273 car_le_process_lpm_before:
+0x3633 011274 branch keyscan_process_lpm_before 
+:      011276 car_key_scan_process:
+0x3634 011279 branch keyscan_key_process 
+:      011281 car_scale_process_idle:
+0x3635 011282 call car_le_send_packet 
+0x3636 011283 call car_ir_receive_process 
+0x3637 011284 call car_g24_status_process 
+0x3638 011285 branch car_key_scan_process 
+:      011287 car_g24_status_process:
+0x3639 011288 fetch 2 ,mem_ui_state_map 
+0x363a 011289 rtnbit1 ui_state_ble_connected 
+0x363b 011290 fetch 1 ,mem_car_24g_received_pac 
+0x363c 011291 beq work_paired ,car_g24_connected_event 
+0x363d 011292 rtn 
+:      011293 car_g24_connected_event:
+0x363e 011294 fetch 1 ,mem_car_24g_status 
+0x363f 011295 rtneq work_paired 
+0x3640 011296 jam work_paired ,mem_car_24g_status 
+0x3641 011297 branch car_g24_connected 
+:      011299 car_le_send_packet:
+0x3642 011300 fetch 2 ,mem_ui_state_map 
+0x3643 011301 rtnbit0 ui_state_ble_connected 
+0x3644 011302 call le_fifo_check_nearly_full 
+0x3645 011303 nrtn blank 
+0x3646 011304 arg mem_car_pop_queue_buff ,rega 
+0x3647 011305 call queue_pop 
+0x3648 011306 nrtn user 
+0x3649 011307 arg mem_car_pop_queue_buff ,contr 
+0x364a 011308 branch le_send_notify_from_list 
+:      011310 car_scale_process_bb_event:
+0x364b 011311 copy regc ,pdata 
+0x364c 011312 beq bt_evt_button_up ,app_event_button_up 
+0x364d 011313 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x364e 011314 beq bt_evt_le_connected ,car_scale_event_le_conn 
+0x364f 011315 beq bt_evt_le_disconnected ,car_scale_event_le_discon 
+0x3650 011316 rtn 
+:      011318 car_scale_event_le_conn:
+0x3651 011319 setarg disable_24g 
+0x3652 011320 call g24_store_mem_24g_mode 
+0x3653 011321 branch car_scale_process_conn 
+:      011322 car_g24_connected:
+0x3654 011323 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3655 011324 store 2 ,mem_car_24g_no_data_timeout_timer 
+:      011325 car_scale_process_conn:
+0x3656 011326 jam 0x14 ,mem_car_notify_vdd_timer 
+0x3657 011327 jam 0 ,mem_lpm_mode 
+0x3658 011328 call app_ble_stop_adv 
+0x3659 011329 call app_lpm_mult_enable 
+0x365a 011330 fetch 1 ,mem_car_config_pairing_led_conn_status 
+0x365b 011331 beq 0x01 ,car_pairing_led_conn_status_setting 
+:      011332 car_scale_process_conn_next:
+0x365c 011333 arg 0 ,rega 
+0x365d 011334 branch ui_led_on_global 
+:      011335 car_pairing_led_conn_status_setting:
+0x365e 011336 arg 0 ,rega 
+0x365f 011337 branch ui_led_blink_stop_global 
+:      011339 car_scale_event_le_discon:
+0x3660 011340 setarg rx_24g 
+0x3661 011341 call g24_store_mem_24g_mode 
+:      011342 car_g24_disconnect:
+0x3662 011343 setarg 0 
+0x3663 011344 store 5 ,mem_car_led_control 
+0x3664 011345 setarg 4 
+0x3665 011346 call pwm_disable 
+0x3666 011347 setarg 5 
+0x3667 011348 call pwm_disable 
+0x3668 011349 setarg 20 
+0x3669 011350 call pwm_disable 
+0x366a 011351 setarg 21 
+0x366b 011352 call pwm_disable 
+0x366c 011353 setarg 22 
+0x366d 011354 call pwm_disable 
+0x366e 011355 setarg 7 
+0x366f 011356 call pwm_disable 
+0x3670 011357 call queue_init 
+0x3671 011358 jam 10 ,mem_motor1_speed 
+0x3672 011359 jam 10 ,mem_motor2_speed 
+0x3673 011360 jam 10 ,mem_motor3_speed 
+0x3674 011362 jam 2 ,mem_lpm_mult 
+0x3675 011363 arg 0 ,rega 
+0x3676 011364 call ui_led_blink_start_global 
+0x3677 011366 setarg fast_adv_interval_value_car 
+0x3678 011367 call shutter_ble_adv_interval_set 
+0x3679 011368 branch app_ble_start_adv 
+:      011370 car_le_bb_event_timer:
+0x367a 011372 call car_moto1_blank_data_timer 
+0x367b 011373 call car_moto2_blank_data_timer 
+0x367c 011374 call car_moto3_blank_data_timer 
+0x367d 011375 call app_power_timer 
+0x367e 011376 call car_led_control_timer 
+0x367f 011377 call car_notify_vdd_timer 
+0x3680 011378 call car_24g_no_data_timeout_timer 
+0x3681 011379 call car_ir_breakdown_timer 
+0x3682 011380 branch car_attack_shake_timer 
+:      011382 car_ir_breakdown_timer:
+0x3683 011383 arg mem_car_ir_breakdown_check_timer ,regc 
+0x3684 011384 arg car_ir_breakdown_timeout ,regb 
+0x3685 011385 branch timer_single_step 
+:      011386 car_ir_breakdown_timeout:
+0x3686 011387 call car_ir_gpio_get_status 
+0x3687 011388 nrtn true 
+0x3688 011389 jam 1 ,mem_car_ir_breakdown_flag 
+0x3689 011390 rtn 
+:      011392 car_24g_no_data_timeout_timer:
+0x368a 011393 arg mem_car_24g_no_data_timeout_timer ,regc 
+0x368b 011394 arg car_24g_no_data_timer_timeout ,regb 
+0x368c 011395 branch timer_single_step_2b 
+:      011396 car_24g_no_data_timer_timeout:
+0x368d 011397 jam work_search ,mem_car_24g_status 
+0x368e 011398 branch car_g24_disconnect 
+:      011400 car_attack_shake_timer:
+0x368f 011401 arg mem_car_attack_shake_timer ,regc 
+0x3690 011402 arg car_attack_shake ,regb 
+0x3691 011403 branch timer_single_step 
+:      011404 car_attack_shake:
+0x3692 011405 fetch 1 ,mem_car_attack_shake_flag 
+0x3693 011406 branch car_attack_shake_stop ,blank 
+0x3694 011407 jam 2 ,mem_car_attack_shake_timer 
+0x3695 011408 jam 0 ,mem_car_attack_shake_flag 
+0x3696 011409 setarg 0x0a02 
+0x3697 011410 store 2 ,mem_le_receive_payload 
+0x3698 011411 fetch 1 ,mem_car_config_device_select 
+0x3699 011412 beq device_battle_tank ,car_attack_shake_front_battle_tank 
+:      011413 car_attack_shake_front_battle_car:
+0x369a 011414 branch car_motor_control 
+:      011415 car_attack_shake_front_battle_tank:
+0x369b 011416 setarg 0x0a02 
+0x369c 011417 store 2 ,mem_le_receive_payload + 2 
+0x369d 011418 branch car_motor_control 
+:      011419 car_attack_shake_stop:
+0x369e 011420 setarg 0 
+0x369f 011421 store 4 ,mem_le_receive_payload 
+0x36a0 011422 branch car_motor_control 
+:      011424 car_notify_vdd_timer:
+0x36a1 011425 fetch 1 ,mem_car_config_bat_notify_enable 
+0x36a2 011426 rtn blank 
+0x36a3 011427 fetch 2 ,mem_ui_state_map 
+0x36a4 011428 bbit0 ui_state_ble_connected ,car_low_bat_led_off 
+0x36a5 011429 arg mem_car_notify_vdd_timer ,regc 
+0x36a6 011430 arg car_notify_vdd ,regb 
+0x36a7 011431 branch timer_single_step 
+:      011432 car_notify_vdd:
+0x36a8 011433 fetch 1 ,mem_car_notify_vdd_count 
+0x36a9 011434 store 1 ,mem_car_notify_vdd_timer 
+0x36aa 011435 fetch 1 ,mem_car_working_flag 
+0x36ab 011436 nrtn blank 
+:      011437 car_read_hvin:
+0x36ac 011438 call adc_set_mode 
+0x36ad 011439 call vdd_calculate_by_mode 
+0x36ae 011440 store 2 ,mem_vdd_now_vol 
+0x36af 011441 arg mem_vdd_calculate_set ,rega 
+0x36b0 011442 call adc_bat_percent_lowpower_out 
+0x36b1 011443 fetcht 1 ,mem_car_notify_vdd_value_last 
+0x36b2 011444 isub temp ,null 
+0x36b3 011445 branch car_notify_vdd_next2 ,positive 
+0x36b4 011446 store 1 ,mem_car_notify_vdd_value_last 
+0x36b5 011447 copy pdata ,temp 
+:      011448 car_notify_vdd_next2:
+0x36b6 011449 storet 1 ,mem_car_notify_vdd_percent 
+0x36b7 011450 fetch 1 ,mem_car_config_low_voltage_percent 
+0x36b8 011451 isub temp ,null 
+0x36b9 011452 call car_enter_low_bat ,positive 
+0x36ba 011453 storet 1 ,mem_notify_bat_payload 
+0x36bb 011454 arg 6 ,loopcnt 
+0x36bc 011455 arg mem_notify_bat_head ,contr 
+0x36bd 011456 call calc_check_sum_start 
+0x36be 011457 store 1 ,mem_notify_bat_check_sum 
+0x36bf 011458 arg mem_notify_bat_packet ,rega 
+0x36c0 011459 branch queue_push 
+:      011460 car_enter_low_bat:
+0x36c1 011461 fetch 1 ,mem_low_bat_flag 
+0x36c2 011462 nrtn blank 
+0x36c3 011463 jam 1 ,mem_low_bat_flag 
+0x36c4 011464 arg 1 ,rega 
+0x36c5 011465 branch ui_led_blink_start_global 
+:      011466 car_low_bat_led_off:
+0x36c6 011467 arg 1 ,rega 
+0x36c7 011468 branch ui_led_blink_stop_global 
+:      011470 car_led_control_timer:
+0x36c8 011471 arg mem_car_led_control_timer ,regc 
+0x36c9 011472 arg car_led_control ,regb 
+0x36ca 011473 branch timer_single_step 
+:      011474 car_led_control:
+0x36cb 011475 jam 5 ,mem_car_led_control_timer 
+0x36cc 011476 jam 0 ,mem_car_led_no 
+0x36cd 011477 fetch 1 ,mem_car_led_blink_status 
+0x36ce 011478 beq led_on ,car_led_control_blink_off 
+0x36cf 011479 beq led_off ,car_led_control_blink_on 
+:      011480 car_led_control_set:
+0x36d0 011481 arg mem_car_led_control ,contr 
+0x36d1 011482 copy contr ,rega 
+0x36d2 011483 arg 8 ,loopcnt 
+:      011484 car_led_control_timer_next:
+0x36d3 011485 copy rega ,contr 
+0x36d4 011486 ifetch 1 ,contr 
+0x36d5 011487 copy contr ,rega 
+0x36d6 011488 beq led_off ,car_led_control_off 
+0x36d7 011489 beq led_on ,car_led_control_on 
+0x36d8 011490 beq led_blink ,car_led_control_blink 
+:      011491 car_led_control_timer_next_2:
+0x36d9 011492 fetch 1 ,mem_car_led_no 
+0x36da 011493 increase 1 ,pdata 
+0x36db 011494 store 1 ,mem_car_led_no 
+0x36dc 011495 loop car_led_control_timer_next 
+0x36dd 011496 rtn 
+:      011497 car_led_switch:
+0x36de 011498 fetch 1 ,mem_car_led_no 
+0x36df 011499 arg mem_car_config_blood_led_gpio ,regb 
+0x36e0 011500 iadd regb ,regb 
+0x36e1 011501 ifetcht 1 ,regb 
+0x36e2 011502 rtn 
+:      011503 car_led_control_off:
+0x36e3 011504 call car_led_switch 
+0x36e4 011505 call gpio_out_inactive 
+0x36e5 011506 branch car_led_control_timer_next_2 
+:      011507 car_led_control_on:
+0x36e6 011508 call car_led_switch 
+0x36e7 011509 call gpio_out_active 
+0x36e8 011510 branch car_led_control_timer_next_2 
+:      011511 car_led_control_blink:
+0x36e9 011512 fetch 1 ,mem_car_led_blink_status 
+0x36ea 011513 beq led_on ,car_led_control_off 
+0x36eb 011514 branch car_led_control_on 
+:      011515 car_led_control_blink_on:
+0x36ec 011516 jam led_on ,mem_car_led_blink_status 
+0x36ed 011517 branch car_led_control_set 
+:      011518 car_led_control_blink_off:
+0x36ee 011519 jam led_off ,mem_car_led_blink_status 
+0x36ef 011520 branch car_led_control_set 
+:      011524 calc_check_sum_start:
+0x36f0 011525 arg 0 ,rega 
+:      011526 calc_check_sum_loop:
+0x36f1 011527 ifetch 1 ,contr 
+0x36f2 011528 iadd rega ,rega 
+0x36f3 011529 loop calc_check_sum_loop 
+:      011530 calc_check_sum_and:
+0x36f4 011531 and rega ,0xff ,pdata 
+0x36f5 011532 rtn 
+:      011534 car_le_receive_data:
+0x36f6 011535 fetch 1 ,mem_le_att_opcode 
+0x36f7 011536 beq attop_write_request ,car_le_parse_att_write_request 
+0x36f8 011537 rtn 
+:      011538 car_le_parse_att_write_request:
+0x36f9 011539 fetch 2 ,mem_le_att_handle 
+0x36fa 011540 beq att_car_control_handle ,car_control_le_receive 
+0x36fb 011541 rtn 
+:      011553 le_app_receive_data:
+0x36fc 011554 bpatch patch1a_0 ,mem_patch1a 
+0x36fd 011555 ifetch 5 ,rega 
+0x36fe 011556 store 5 ,mem_app_receive_temp 
+0x36ff 011557 fetch 2 ,mem_app_receive_temp 
+0x3700 011558 arg le_receive_packet_head ,temp 
+0x3701 011559 isub temp ,null 
+0x3702 011560 nrtn zero 
+0x3703 011561 fetch 2 ,mem_app_receive_temp + 3 
+0x3704 011562 byteswap pdata ,pdata 
+0x3705 011563 store 2 ,mem_app_receive_temp + 3 
+0x3706 011564 copy pdata ,loopcnt 
+0x3707 011565 increase 5 ,rega 
+0x3708 011566 copy rega ,contr 
+0x3709 011567 arg mem_app_receive_temp + 5 ,contw 
+0x370a 011568 call memcpy 
+0x370b 011569 ifetch 1 ,contr 
+0x370c 011570 store 1 ,mem_app_receive_temp + 15 
+0x370d 011571 arg mem_app_receive_temp + 2 ,rega 
+0x370e 011572 arg mem_app_receive_temp + 5 ,regb 
+0x370f 011573 rtn 
+:      011575 car_control_le_receive:
+0x3710 011576 setarg 0 
+0x3711 011577 store 5 ,mem_le_receive_payload 
+0x3712 011578 store 5 ,mem_le_receive_payload + 5 
+0x3713 011579 call le_app_receive_data 
+0x3714 011580 copy regb ,contr 
+0x3715 011581 arg mem_le_receive_payload ,contw 
+0x3716 011582 arg 10 ,loopcnt 
+0x3717 011583 call memcpy 
+:      011584 car_receive_cmd_select:
+0x3718 011585 bpatch patch1a_1 ,mem_patch1a 
+0x3719 011586 ifetch 1 ,rega 
+0x371a 011587 beq car_cmd_old_car_control ,car_drive_old 
+0x371b 011588 beq car_cmd_old_speed_control ,car_speed_set_old 
+0x371c 011589 beq car_cmd_l_r_motor_control ,car_motor_control 
+0x371d 011590 beq car_cmd_f_b_motor_control ,car_motor_control 
+0x371e 011591 beq car_cmd_ir_control ,car_ir_data_rx_from_app 
+0x371f 011592 beq car_cmd_led_control ,car_led_control_receive 
+0x3720 011593 beq car_cmd_device_info ,car_info_request 
+0x3721 011594 rtn 
+:      011596 car_24g_receive_data:
+0x3722 011597 fetch 2 ,mem_ui_state_map 
+0x3723 011598 rtnbit1 ui_state_ble_connected 
+0x3724 011600 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3725 011601 store 2 ,mem_car_24g_no_data_timeout_timer 
+0x3726 011603 jam work_paired ,mem_car_24g_received_pac 
+0x3727 011605 setarg offset_24g_rxdata_temp_add3 
+0x3728 011606 call g24_set_rega 
+0x3729 011607 call car_control_le_receive 
+0x372a 011609 fetch 1 ,mem_app_receive_temp + 2 
+0x372b 011610 beq car_cmd_l_r_motor_control ,car_24g_receive_data_next 
+0x372c 011611 beq car_cmd_f_b_motor_control ,car_24g_receive_data_next 
+0x372d 011612 rtn 
+:      011613 car_24g_receive_data_next:
+0x372e 011614 fetch 1 ,mem_le_receive_payload 
+0x372f 011615 ncall car_moto1_enable_blank_data_timer ,blank 
+0x3730 011616 fetch 1 ,mem_le_receive_payload + 2 
+0x3731 011617 ncall car_moto2_enable_blank_data_timer ,blank 
+0x3732 011618 fetch 1 ,mem_le_receive_payload + 4 
+0x3733 011619 ncall car_moto3_enable_blank_data_timer ,blank 
+0x3734 011620 rtn 
+:      011622 car_moto1_enable_blank_data_timer:
+0x3735 011623 jam 5 ,mem_car_moto1_blank_timer 
+0x3736 011624 rtn 
+:      011625 car_moto2_enable_blank_data_timer:
+0x3737 011626 jam 5 ,mem_car_moto2_blank_timer 
+0x3738 011627 rtn 
+:      011628 car_moto3_enable_blank_data_timer:
+0x3739 011629 jam 5 ,mem_car_moto3_blank_timer 
+0x373a 011630 rtn 
+:      011632 car_moto1_blank_data_timer:
+0x373b 011633 arg mem_car_moto1_blank_timer ,regc 
+0x373c 011634 arg car_moto1_blank_data ,regb 
+0x373d 011635 branch timer_single_step 
+:      011636 car_moto2_blank_data_timer:
+0x373e 011637 arg mem_car_moto2_blank_timer ,regc 
+0x373f 011638 arg car_moto2_blank_data ,regb 
+0x3740 011639 branch timer_single_step 
+:      011640 car_moto3_blank_data_timer:
+0x3741 011641 arg mem_car_moto3_blank_timer ,regc 
+0x3742 011642 arg car_moto3_blank_data ,regb 
+0x3743 011643 branch timer_single_step 
+:      011645 car_moto1_blank_data:
+0x3744 011646 jam 0 ,mem_le_receive_payload 
+0x3745 011647 branch car_motor_control 
+:      011648 car_moto2_blank_data:
+0x3746 011649 jam 0 ,mem_le_receive_payload + 2 
+0x3747 011650 branch car_motor_control 
+:      011651 car_moto3_blank_data:
+0x3748 011652 jam 0 ,mem_le_receive_payload + 4 
+0x3749 011653 branch car_motor_control 
+:      011658 car_drive_old:
+0x374a 011659 call car_left_right_control_old 
+0x374b 011660 branch car_front_back_control_old 
+:      011661 car_left_right_control_old:
+0x374c 011662 fetch 1 ,mem_le_receive_payload 
+0x374d 011663 store 1 ,mem_motor2_status 
+0x374e 011664 branch car_motor2_control 
+:      011665 car_front_back_control_old:
+0x374f 011666 fetch 1 ,mem_motor1_speed 
+0x3750 011667 call car_reset_old_speed 
+0x3751 011668 fetch 1 ,mem_le_receive_payload + 1 
+0x3752 011669 store 1 ,mem_motor1_status 
+0x3753 011670 branch car_motor1_control 
+:      011671 car_reset_old_speed:
+0x3754 011672 beq speed_level_2 ,car_reset_old_speed2 
+0x3755 011673 beq speed_level_3 ,car_reset_old_speed3 
+0x3756 011674 store 1 ,mem_motor1_speed 
+0x3757 011675 rtn 
+:      011676 car_reset_old_speed2:
+0x3758 011677 jam speed_level_5 ,mem_motor1_speed 
+0x3759 011678 rtn 
+:      011679 car_reset_old_speed3:
+0x375a 011680 jam speed_level_10 ,mem_motor1_speed 
+0x375b 011681 rtn 
+:      011682 car_speed_set_old:
+0x375c 011683 fetch 1 ,mem_le_receive_payload 
+0x375d 011684 call car_reset_old_speed 
+0x375e 011685 fetch 1 ,mem_motor1_speed 
+0x375f 011686 call car_motor_speed_duty_setting 
+0x3760 011687 call car_motor_speed_duty_transform 
+0x3761 011688 branch pwm_pwm0_duty_set 
+:      011690 car_motor_control:
+0x3762 011691 fetch 1 ,mem_car_24g_go_die_flag 
+0x3763 011692 nrtn blank 
+0x3764 011693 fetch 6 ,mem_le_receive_payload 
+0x3765 011694 store 6 ,mem_motor1_status 
+0x3766 011695 fetch 1 ,mem_motor1_speed 
+0x3767 011696 fetcht 1 ,mem_motor2_speed 
+0x3768 011697 iand temp ,pdata 
+0x3769 011698 fetcht 1 ,mem_motor3_speed 
+0x376a 011699 iand temp ,pdata 
+0x376b 011700 call car_motor_working_flag ,blank 
+0x376c 011701 bpatch patch1a_2 ,mem_patch1a 
+0x376d 011702 call car_motor1_control 
+0x376e 011703 call car_motor2_control 
+0x376f 011704 branch car_motor3_control 
+:      011705 car_motor1_control:
+0x3770 011706 arg mem_motor1_pwm_set ,regb 
+0x3771 011707 arg mem_motor1_status ,contr 
+0x3772 011708 branch car_motor_status_select 
+:      011709 car_motor2_control:
+0x3773 011710 arg mem_motor2_pwm_set ,regb 
+0x3774 011711 arg mem_motor2_status ,contr 
+0x3775 011712 branch car_motor_status_select 
+:      011713 car_motor3_control:
+0x3776 011714 arg mem_motor3_pwm_set ,regb 
+0x3777 011715 arg mem_motor3_status ,contr 
+0x3778 011716 branch car_motor_status_select 
+:      011717 car_motor_working_flag:
+0x3779 011718 jam 0 ,mem_car_working_flag 
+0x377a 011719 rtn 
+:      011721 car_motor_status_select:
+0x377b 011722 ifetch 1 ,contr 
+0x377c 011723 beq motor_stop ,car_motor_stop 
+0x377d 011724 beq go_front ,car_motor_positive 
+0x377e 011725 beq go_back ,car_motor_negative 
+0x377f 011726 rtn 
+:      011727 car_motor_positive:
+0x3780 011728 jam 0 ,mem_motor_select_p_n 
+0x3781 011729 branch car_motor_negative + 1 
+:      011730 car_motor_negative:
+0x3782 011731 jam 1 ,mem_motor_select_p_n 
+0x3783 011732 ifetch 1 ,contr 
+0x3784 011733 store 1 ,mem_car_motor_speed 
+0x3785 011734 ifetch 8 ,regb 
+0x3786 011735 branch car_motor_work 
+:      011737 car_motor_stop:
+0x3787 011738 ifetch 1 ,regb 
+0x3788 011739 call pwm_disable 
+0x3789 011740 increase 1 ,regb 
+0x378a 011741 ifetch 1 ,regb 
+0x378b 011742 branch pwm_disable 
+:      011743 car_motor_work:
+0x378c 011744 store 8 ,mem_motor_pwm_pin1_set 
+0x378d 011745 jam 1 ,mem_car_working_flag 
+0x378e 011746 fetch 1 ,mem_motor_select_p_n 
+0x378f 011747 beq 0 ,car_motor_select_positive 
+:      011748 car_motor_select_negative:
+0x3790 011749 fetch 1 ,mem_motor_pwm_pin2_set 
+0x3791 011750 store 1 ,mem_motor_pwm_pin_set 
+0x3792 011751 fetch 1 ,mem_motor_pwm_pin1_set 
+:      011752 car_motor_work_next:
+0x3793 011753 call pwm_disable 
+0x3794 011754 fetch 1 ,mem_car_motor_speed 
+0x3795 011755 call car_motor_speed_duty_setting 
+0x3796 011756 store 1 ,mem_motor_pwm_dute_set 
+0x3797 011757 fetch 6 ,mem_motor_pwm_pin_set 
+0x3798 011758 store 6 ,mem_pdatatemp 
+0x3799 011759 branch pwm_out_set 
+:      011760 car_motor_select_positive:
+0x379a 011761 fetch 1 ,mem_motor_pwm_pin1_set 
+0x379b 011762 store 1 ,mem_motor_pwm_pin_set 
+0x379c 011763 fetch 1 ,mem_motor_pwm_pin2_set 
+0x379d 011764 branch car_motor_work_next 
+:      011766 car_motor_speed_duty_setting:
+0x379e 011767 mul32 pdata ,5 ,pdata 
+0x379f 011768 add pdata ,50 ,pdata 
+0x37a0 011769 rtn 
+:      011770 car_motor_speed_duty_transform:
+0x37a1 011771 arg 12000 ,temp 
+0x37a2 011772 imul32 temp ,pdata 
+0x37a3 011773 div pdata ,100 
+0x37a4 011774 call wait_div_end 
+0x37a5 011775 quotient temp 
+0x37a6 011776 copy temp ,rega 
+0x37a7 011777 setarg 12000 
+0x37a8 011778 isub temp ,regb 
+0x37a9 011779 rtn 
+:      011782 car_ir_init:
+0x37aa 011783 hfetch 1 ,core_gpio_sel2 
+0x37ab 011784 set1 2 ,pdata 
+0x37ac 011785 hstore 1 ,core_gpio_sel2 
+0x37ad 011786 setarg 158 
+0x37ae 011787 hstore 2 ,core_pwm_pcnt4 
+0x37af 011788 hstore 2 ,core_pwm_ncnt4 
+0x37b0 011789 rtn 
+:      011791 car_ir_data_rx_from_app:
+0x37b1 011792 fetch 1 ,mem_car_24g_go_die_flag 
+0x37b2 011793 nrtn blank 
+0x37b3 011794 fetch 2 ,mem_le_receive_payload 
+0x37b4 011795 store 2 ,mem_ir_data 
+0x37b5 011796 fetch 1 ,mem_car_24g_status 
+0x37b6 011797 bne work_paired ,car_ir_data_tx 
+0x37b7 011798 fetch 2 ,mem_le_lap 
+0x37b8 011799 store 2 ,mem_ir_data 
+:      011800 car_ir_data_tx:
+0x37b9 011801 bpatch patch1a_3 ,mem_patch1a 
+0x37ba 011802 call car_ir_init 
+0x37bb 011803 call car_ir_enable 
+0x37bc 011804 setarg 48000 
+0x37bd 011805 call sleep 
+0x37be 011806 call car_ir_disable 
+0x37bf 011807 setarg 7200 
+0x37c0 011808 call sleep 
+0x37c1 011809 arg 16 ,loopcnt 
+:      011810 car_ir_send_loop:
+0x37c2 011811 call car_ir_enable 
+0x37c3 011812 fetch 2 ,mem_ir_data 
+0x37c4 011813 bbit1 0 ,car_ir_is_bit1 
+0x37c5 011814 setarg 7200 
+0x37c6 011815 call sleep 
+0x37c7 011816 call car_ir_disable 
+0x37c8 011817 branch car_ir_wait_finish 
+:      011819 car_ir_is_bit1:
+0x37c9 011820 setarg 14400 
+0x37ca 011821 call sleep 
+0x37cb 011822 call car_ir_disable 
+:      011823 car_ir_wait_finish:
+0x37cc 011824 setarg 7200 
+0x37cd 011825 call sleep 
+0x37ce 011826 fetch 2 ,mem_ir_data 
+0x37cf 011827 rshift pdata ,pdata 
+0x37d0 011828 store 2 ,mem_ir_data 
+0x37d1 011829 loop car_ir_send_loop 
+0x37d2 011831 jam 2 ,mem_car_attack_shake_timer 
+0x37d3 011832 jam 1 ,mem_car_attack_shake_flag 
+0x37d4 011833 setarg 0x0a01 
+0x37d5 011834 store 2 ,mem_le_receive_payload 
+0x37d6 011835 fetch 1 ,mem_car_config_device_select 
+0x37d7 011836 beq device_battle_tank ,car_attack_shake_back_battle_tank 
+:      011837 car_attack_shake_back_battle_car:
+0x37d8 011838 branch car_motor_control 
+:      011839 car_attack_shake_back_battle_tank:
+0x37d9 011840 setarg 0x0a01 
+0x37da 011841 store 2 ,mem_le_receive_payload + 2 
+0x37db 011842 branch car_motor_control 
+:      011844 car_ir_enable:
+0x37dc 011845 hfetch 1 ,core_gpio_key2 
+0x37dd 011846 or_into 0x40 ,pdata 
+0x37de 011847 hstore 1 ,core_gpio_key2 
+0x37df 011848 rtn 
+:      011849 car_ir_disable:
+0x37e0 011850 hfetch 1 ,core_gpio_key2 
+0x37e1 011851 and_into 0xbf ,pdata 
+0x37e2 011852 hstore 1 ,core_gpio_key2 
+0x37e3 011853 rtn 
+:      011855 car_ir_rx_init:
+0x37e4 011856 fetch 1 ,mem_car_config_ir_enable 
+0x37e5 011857 rtneq 0x00 
+0x37e6 011858 call lpm_disable_exen_output 
+0x37e7 011859 fetcht 1 ,mem_car_config_ir_rx_gpio 
+0x37e8 011860 storet 1 ,mem_ir_rx_gpio 
+0x37e9 011861 call gpio_config_input 
+0x37ea 011862 call car_ir_gpio_get_status 
+0x37eb 011863 nrtn true 
+0x37ec 011864 jam 1 ,mem_car_ir_breakdown_check_timer 
+0x37ed 011865 rtn 
+:      011867 car_ir_receive_process:
+0x37ee 011868 fetch 1 ,mem_car_config_ir_enable 
+0x37ef 011869 rtneq flag_ir_disable 
+0x37f0 011870 fetch 1 ,mem_car_ir_breakdown_flag 
+0x37f1 011871 nrtn blank 
+0x37f2 011872 fetch 2 ,mem_ui_state_map 
+0x37f3 011873 bbit1 ui_state_ble_connected ,car_ir_receive_process_next 
+0x37f4 011874 fetch 1 ,mem_car_24g_status 
+0x37f5 011875 rtnne work_paired 
+:      011876 car_ir_receive_process_next:
+0x37f6 011877 bpatch patch1a_4 ,mem_patch1a 
+0x37f7 011878 call car_ir_gpio_get_status 
+0x37f8 011879 nrtn true 
+0x37f9 011880 setarg 36000 
+0x37fa 011881 call sleep 
+0x37fb 011882 call car_ir_gpio_get_status 
+0x37fc 011883 nrtn true 
+0x37fd 011884 call car_ir_clk_get 
+:      011885 car_ir_packet_head_wait_end:
+0x37fe 011886 call car_ir_clk_check 
+0x37ff 011887 nrtn positive 
+0x3800 011888 call car_ir_gpio_get_status 
+0x3801 011889 branch car_ir_packet_head_wait_end ,true 
+0x3802 011890 arg 0 ,rega 
+0x3803 011891 arg 16 ,loopcnt 
+0x3804 011892 call car_ir_clk_get 
+:      011893 car_ir_receive_process_loop:
+0x3805 011894 call car_ir_clk_check 
+0x3806 011895 nrtn positive 
+0x3807 011896 call car_ir_gpio_get_status 
+0x3808 011897 nbranch car_ir_receive_process_loop ,true 
+0x3809 011898 setarg 10800 
+0x380a 011899 call sleep 
+0x380b 011900 call car_ir_gpio_get_status 
+0x380c 011901 branch car_ir_get_bit1 ,true 
+:      011902 car_ir_get_bit0:
+0x380d 011903 setarg 0 
+0x380e 011904 rshift rega ,rega 
+0x380f 011905 ior rega ,rega 
+0x3810 011906 loop car_ir_receive_process_loop 
+0x3811 011907 branch car_ir_receive_process_end 
+:      011908 car_ir_get_bit1:
+0x3812 011909 setarg 0x8000 
+0x3813 011910 rshift rega ,rega 
+0x3814 011911 ior rega ,rega 
+0x3815 011912 call car_ir_clk_get 
+:      011913 car_ir_get_bit1_wait_low_end:
+0x3816 011914 call car_ir_clk_check 
+0x3817 011915 nrtn positive 
+0x3818 011916 call car_ir_gpio_get_status 
+0x3819 011917 branch car_ir_get_bit1_wait_low_end ,true 
+0x381a 011918 loop car_ir_receive_process_loop 
+:      011919 car_ir_receive_process_end:
+0x381b 011920 bpatch patch1a_5 ,mem_patch1a 
+0x381c 011921 copy rega ,pdata 
+0x381d 011922 store 2 ,mem_ir_rx_buf 
+0x381e 011923 store 2 ,mem_ir_notify_data + 8 
+0x381f 011924 fetch 1 ,mem_car_24g_status 
+0x3820 011925 beq work_paired ,car_ir_24g_receive_attack 
+:      011926 car_ir_data_notify:
+0x3821 011927 arg 0x07 ,loopcnt 
+0x3822 011928 arg mem_ir_notify_data_head ,contr 
+0x3823 011929 call calc_check_sum_start 
+0x3824 011930 store 1 ,mem_ir_notify_data_check_sum 
+0x3825 011931 arg mem_ir_notify_data ,rega 
+0x3826 011932 branch queue_push 
+:      011934 car_ir_24g_receive_attack:
+0x3827 011935 fetch 1 ,mem_car_24g_ir_receive_attack_count 
+0x3828 011936 increase 1 ,pdata 
+0x3829 011937 store 1 ,mem_car_24g_ir_receive_attack_count 
+0x382a 011938 div pdata ,2 
+0x382b 011939 call wait_div_end 
+0x382c 011940 quotient temp 
+0x382d 011941 remainder pdata 
+0x382e 011942 nbranch car_ir_24g_receive_attack_blink ,blank 
+:      011943 car_ir_24g_receive_attack_off:
+0x382f 011944 fetch 1 ,mem_car_config_led_num 
+0x3830 011945 isub temp ,null 
+0x3831 011946 call car_ir_24g_go_die ,zero 
+0x3832 011947 arg mem_car_led_control ,pdata 
+0x3833 011948 increase -1 ,temp 
+0x3834 011949 iadd temp ,rega 
+0x3835 011950 arg 0 ,pdata 
+0x3836 011951 istore 1 ,rega 
+0x3837 011952 rtn 
+:      011953 car_ir_24g_receive_attack_blink:
+0x3838 011954 arg mem_car_led_control ,pdata 
+0x3839 011955 iadd temp ,rega 
+0x383a 011956 arg 2 ,pdata 
+0x383b 011957 istore 1 ,rega 
+0x383c 011958 rtn 
+:      011959 car_ir_24g_go_die:
+0x383d 011960 jam 1 ,mem_car_24g_go_die_flag 
+0x383e 011961 rtn 
+:      011962 car_ir_clk_get:
+0x383f 011963 copy clkn_bt ,pdata 
+0x3840 011964 store 4 ,mem_ir_receive_clkn 
+0x3841 011965 rtn 
+:      011966 car_ir_clk_check:
+0x3842 011967 copy clkn_bt ,pdata 
+0x3843 011968 fetcht 4 ,mem_ir_receive_clkn 
+0x3844 011969 isub temp ,pdata 
+0x3845 011970 sub pdata ,200 ,null 
+0x3846 011971 rtn 
+:      011973 car_ir_gpio_get_status:
+0x3847 011974 fetcht 1 ,mem_ir_rx_gpio 
+0x3848 011975 branch gpio_get_bit 
+:      011977 car_led_control_receive:
+0x3849 011978 fetch 8 ,mem_le_receive_payload 
+0x384a 011979 store 8 ,mem_car_led_control 
+0x384b 011980 rtn 
+:      011982 car_info_request:
+0x384c 011983 fetch 1 ,mem_car_config_device_select 
+0x384d 011984 store 1 ,mem_car_info_request_payload 
+0x384e 011985 fetch 1 ,mem_car_config_motor_layout 
+0x384f 011986 store 1 ,mem_car_info_request_payload + 1 
+0x3850 011987 fetch 1 ,mem_car_config_ir_enable 
+0x3851 011988 store 1 ,mem_car_info_request_payload + 2 
+0x3852 011989 arg 13 ,loopcnt 
+0x3853 011990 arg mem_car_info_request_head ,contr 
+0x3854 011991 call calc_check_sum_start 
+0x3855 011992 store 1 ,mem_car_info_request_checksum 
+0x3856 011993 arg mem_car_info_request ,rega 
+0x3857 011994 branch queue_push 
+:      012000 light_init:
+0x3858 012001 call clear_eeprom_size_2k 
+0x3859 012002 jam 0x7a ,mem_curr_packet_num 
+0x385a 012003 call light_load_controler_list 
+0x385b 012004 call light_init_crr_cmd_count 
+0x385c 012005 setarg light_pairing_timer 
+0x385d 012006 store 2 ,mem_cb_event_timer 
+0x385e 012007 arg 0 ,rega 
+0x385f 012008 branch pwm_init 
+:      012010 light_pairing_timer:
+0x3860 012011 fetch 2 ,mem_light_pairing_timer 
+0x3861 012012 rtn blank 
+0x3862 012013 increase -1 ,pdata 
+0x3863 012014 store 2 ,mem_light_pairing_timer 
+0x3864 012015 rtnne 0 
+0x3865 012016 jam 0 ,mem_light_pairing_enable 
+0x3866 012017 rtn 
+:      012019 light_init_crr_cmd_count:
+0x3867 012020 bpatch patch1a_6 ,mem_patch1a 
+0x3868 012021 fetch 1 ,mem_light_next_record 
+0x3869 012022 sub pdata ,40 ,null 
+0x386a 012023 rtn positive 
+0x386b 012024 jam 0 ,mem_light_next_record 
+0x386c 012025 rtn 
+:      012027 light_load_controler_list:
+0x386d 012028 arg mem_light_next_record ,rega 
+0x386e 012029 arg 0 ,regb 
+0x386f 012030 arg 81 ,temp 
+0x3870 012031 branch iicd_read_eep_data 
+:      012034 light_find_controler_pairing:
+0x3871 012035 disable user 
+0x3872 012036 fetch 1 ,mem_light_cnum 
+0x3873 012037 copy pdata ,loopcnt 
+0x3874 012039 arg mem_light_clist ,rega 
+0x3875 012040 copy regc ,regb 
+:      012041 light_find_controler_pairing_loop:
+0x3876 012042 bpatch patch1a_7 ,mem_patch1a 
+0x3877 012043 call light_compare_addr_record 
+0x3878 012044 branch enable_user ,zero 
+:      012045 light_find_single_pairing_diff:
+0x3879 012046 increase 4 ,rega 
+0x387a 012047 loop light_find_controler_pairing_loop 
+0x387b 012048 rtn 
+:      012051 light_compare_addr_record:
+0x387c 012052 bpatch patch1b_0 ,mem_patch1b 
+0x387d 012053 ifetch 3 ,rega 
+0x387e 012054 ifetcht 3 ,regb 
+0x387f 012055 isub temp ,null 
+0x3880 012056 rtn 
+:      012058 light_compare_single_record:
+0x3881 012059 bpatch patch1b_1 ,mem_patch1b 
+0x3882 012060 ifetch 3 ,rega 
+0x3883 012061 ifetcht 3 ,regb 
+0x3884 012062 isub temp ,null 
+0x3885 012063 nrtn zero 
+0x3886 012064 ifetch 1 ,contr 
+0x3887 012065 sub pdata ,0 ,null 
+0x3888 012066 rtn zero 
+0x3889 012067 add rega ,3 ,contr 
+0x388a 012068 ifetcht 1 ,contr 
+0x388b 012069 isub temp ,null 
+0x388c 012070 rtn 
+:      012073 light_find_controler_cmd:
+0x388d 012074 bpatch patch1b_2 ,mem_patch1b 
+0x388e 012075 disable user 
+0x388f 012076 fetch 1 ,mem_light_cnum 
+0x3890 012077 copy pdata ,loopcnt 
+0x3891 012079 arg mem_light_clist ,rega 
+0x3892 012080 copy regc ,regb 
+:      012081 light_find_controler_cmd_loop:
+0x3893 012082 call light_compare_single_record 
+0x3894 012083 branch enable_user ,zero 
+0x3895 012084 increase 4 ,rega 
+0x3896 012085 loop light_find_controler_cmd_loop 
+0x3897 012086 rtn 
+:      012089 light_recv_adv:
+0x3898 012090 fetch 1 ,mem_le_scanrsp_rcv 
+0x3899 012091 increase 1 ,pdata 
+0x389a 012092 store 1 ,mem_le_scanrsp_rcv 
+0x389b 012093 arg mem_le_rxbuf + 12 ,regc 
+:      012095 light_anylize_command:
+0x389c 012096 ifetch 2 ,regc 
+0x389d 012097 arg 0x55aa ,temp 
+0x389e 012098 isub temp ,null 
+0x389f 012099 nrtn zero 
+0x38a0 012100 copy contr ,regc 
+0x38a1 012101 ifetcht 3 ,regc 
+0x38a2 012102 setarg 0xffffff 
+0x38a3 012103 isub temp ,null 
+0x38a4 012104 branch light_parse_cmd ,zero 
+0x38a5 012105 call light_find_controler_cmd 
+0x38a6 012106 branch light_parse_cmd ,user 
+0x38a7 012107 rtn 
+:      012109 light_parse_cmd:
+0x38a8 012110 bpatch patch1b_3 ,mem_patch1b 
+0x38a9 012111 increase 4 ,regc 
+0x38aa 012112 ifetch 1 ,regc 
+0x38ab 012113 fetcht 1 ,mem_curr_packet_num 
+0x38ac 012114 isub temp ,null 
+0x38ad 012115 rtn zero 
+0x38ae 012116 store 1 ,mem_curr_packet_num 
+0x38af 012117 fetch 1 ,mem_le_req_rcv 
+0x38b0 012118 increase 1 ,pdata 
+0x38b1 012119 store 1 ,mem_le_req_rcv 
+0x38b2 012121 increase 1 ,regc 
+0x38b3 012122 ifetch 1 ,regc 
+0x38b4 012123 store 1 ,mem_light_crr_cmd_count 
+0x38b5 012124 copy pdata ,loopcnt 
+0x38b6 012125 rtn blank 
+:      012126 light_parse_cmd_loop:
+0x38b7 012127 ifetch 1 ,contr 
+0x38b8 012128 beq light_cmd_pwm0 ,light_parse_cmd_pwm0 
+0x38b9 012129 beq light_cmd_pwm1 ,light_parse_cmd_pwm1 
+0x38ba 012130 beq light_cmd_pwm2 ,light_parse_cmd_pwm2 
+0x38bb 012131 beq light_cmd_pwm3 ,light_parse_cmd_pwm3 
+0x38bc 012132 beq light_cmd_pwm4 ,light_parse_cmd_pwm4 
+0x38bd 012133 beq light_cmd_pwm5 ,light_parse_cmd_pwm5 
+0x38be 012134 beq light_cmd_auto_mode ,light_parse_auto_mode 
+0x38bf 012135 beq light_cmd_pairing ,light_parse_pairing 
+0x38c0 012136 loop light_parse_cmd_loop 
+0x38c1 012137 rtn 
+:      012139 light_parse_cmd_pwm0:
+0x38c2 012140 copy contr ,regc 
+0x38c3 012141 fetch 1 ,mem_light_pwm0 
+0x38c4 012142 store 1 ,mem_pdatatemp 
+0x38c5 012143 arg 0 ,temp 
+:      012144 light_parse_cmd_pwm_common:
+0x38c6 012145 storet 1 ,mem_pdatatemp + 1 
+0x38c7 012146 setarg 10000 
+0x38c8 012147 store 3 ,mem_pdatatemp + 2 
+0x38c9 012148 ifetch 1 ,regc 
+0x38ca 012149 store 1 ,mem_pdatatemp + 5 
+0x38cb 012150 call pwm_out_set 
+0x38cc 012151 and regc ,1 ,contr 
+0x38cd 012152 loop light_parse_cmd_loop 
+0x38ce 012153 rtn 
+:      012154 light_parse_cmd_pwm1:
+0x38cf 012155 copy regc ,contr 
+0x38d0 012156 fetch 1 ,mem_light_pwm1 
+0x38d1 012157 store 1 ,mem_pdatatemp 
+0x38d2 012158 arg 1 ,temp 
+0x38d3 012159 branch light_parse_cmd_pwm_common 
+:      012160 light_parse_cmd_pwm2:
+0x38d4 012161 copy regc ,contr 
+0x38d5 012162 fetch 1 ,mem_light_pwm2 
+0x38d6 012163 store 1 ,mem_pdatatemp 
+0x38d7 012164 arg 2 ,temp 
+0x38d8 012165 branch light_parse_cmd_pwm_common 
+:      012166 light_parse_cmd_pwm3:
+0x38d9 012167 copy regc ,contr 
+0x38da 012168 fetch 1 ,mem_light_pwm3 
+0x38db 012169 store 1 ,mem_pdatatemp 
+0x38dc 012170 arg 3 ,temp 
+0x38dd 012171 branch light_parse_cmd_pwm_common 
+:      012172 light_parse_cmd_pwm4:
+0x38de 012173 copy regc ,contr 
+0x38df 012174 fetch 1 ,mem_light_pwm4 
+0x38e0 012175 store 1 ,mem_pdatatemp 
+0x38e1 012176 arg 4 ,temp 
+0x38e2 012177 branch light_parse_cmd_pwm_common 
+:      012178 light_parse_cmd_pwm5:
+0x38e3 012179 copy regc ,contr 
+0x38e4 012180 fetch 1 ,mem_light_pwm5 
+0x38e5 012181 store 1 ,mem_pdatatemp 
+0x38e6 012182 arg 5 ,temp 
+0x38e7 012183 branch light_parse_cmd_pwm_common 
+:      012185 light_parse_auto_mode:
+0x38e8 012186 ifetch 1 ,contr 
+0x38e9 012187 rtn 
+:      012189 light_parse_pairing:
+0x38ea 012190 copy contr ,regc 
+0x38eb 012191 fetch 1 ,mem_light_pairing_enable 
+0x38ec 012192 bne 1 ,light_parse_pairing_abandon 
+0x38ed 012193 call update_controler_list 
+:      012194 light_parse_pairing_abandon:
+0x38ee 012195 and regc ,4 ,contr 
+0x38ef 012196 rtn 
+:      012197 update_controler_list:
+0x38f0 012198 bpatch patch1b_4 ,mem_patch1b 
+0x38f1 012199 call light_find_controler_pairing 
+0x38f2 012200 branch update_conrtoler_list_found ,user 
+0x38f3 012201 fetch 1 ,mem_light_next_record 
+0x38f4 012202 copy pdata ,temp 
+0x38f5 012203 increase 1 ,pdata 
+0x38f6 012204 store 1 ,mem_light_next_record 
+0x38f7 012205 call light_init_crr_cmd_count 
+0x38f8 012206 lshift2 temp ,temp 
+0x38f9 012207 setarg mem_light_clist 
+0x38fa 012208 iadd temp ,contw 
+0x38fb 012209 ifetch 4 ,regc 
+0x38fc 012210 istore 4 ,contw 
+0x38fd 012211 branch update_conrtoler_store_list 
+:      012212 update_conrtoler_list_found:
+0x38fe 012213 add regc ,3 ,contr 
+0x38ff 012214 ifetch 1 ,contr 
+0x3900 012215 rtn blank 
+0x3901 012216 ifetch 4 ,regc 
+0x3902 012217 istore 4 ,rega 
+:      012218 update_conrtoler_store_list:
+0x3903 012219 arg mem_light_next_record ,rega 
+0x3904 012220 arg 0 ,regb 
+0x3905 012221 arg 81 ,temp 
+0x3906 012222 branch iicd_write_eep_data 
+:      012226 lightc_init:
+0x3907 012230 fetcht 1 ,mem_lightc_led_gpio 
+0x3908 012231 call gpio_out_inactive 
+0x3909 012232 rtn 
+:      012235 lightc_dispatch:
+0x390a 012238 fetcht 1 ,mem_lightc_led_gpio 
+0x390b 012239 call gpio_out_active 
+0x390c 012242 fetcht 1 ,mem_lightc_led_gpio 
+0x390d 012243 call gpio_out_inactive 
+0x390e 012246 call lightc_start_adv 
+0x390f 012248 fetch 1 ,mem_adv_time 
+0x3910 012249 nrtn blank 
+0x3911 012251 call lpm_write_gpio_wakeup 
+0x3912 012252 hfetch 4 ,core_lpm_ctrl 
+0x3913 012253 set0 15 ,pdata 
+0x3914 012254 hstore 4 ,core_lpm_reg 
+0x3915 012255 call lpm_write_ctrl 
+0x3916 012256 arg param_hibernate_clks ,temp 
+0x3917 012257 branch lpm_sleep 
+:      012259 lightc_adv:
+0x3918 012260 fetch 1 ,mem_adv_time 
+0x3919 012261 branch le_adv_loop_tx ,blank 
+0x391a 012262 increase -1 ,pdata 
+0x391b 012263 store 1 ,mem_adv_time 
+0x391c 012264 branch le_adv_loop_tx 
+:      012266 lightc_start_adv:
+0x391d 012267 mul32 pdata ,20 ,pdata 
+0x391e 012268 arg mem_cmd0_string ,contr 
+0x391f 012269 iadd contr ,contr 
+0x3920 012270 ifetch 1 ,contr 
+0x3921 012271 rtn blank 
+0x3922 012272 copy pdata ,rega 
+0x3923 012273 copy rega ,loopcnt 
+0x3924 012274 arg mem_le_adv_data + 2 ,contw 
+0x3925 012275 call memcpy 
+0x3926 012276 copy rega ,pdata 
+0x3927 012277 increase 2 ,pdata 
+0x3928 012278 store 1 ,mem_le_adv_data_len 
+0x3929 012279 rtn 
+:      012286 module_init:
+0x392a 012288 rtn wake 
+0x392b 012289 call le_modified_name 
+0x392c 012290 call adc_init_data 
+0x392d 012291 setarg module_process_idle 
+0x392e 012292 store 2 ,mem_cb_idle_process 
+0x392f 012293 setarg module_bt_conn_process 
+0x3930 012294 store 2 ,mem_cb_bt_process 
+0x3931 012295 setarg module_process_bb_event 
+0x3932 012296 store 2 ,mem_cb_bb_event_process 
+0x3933 012297 setarg module_le_conn_process 
+0x3934 012298 store 2 ,mem_cb_le_process 
+0x3935 012299 setarg module_lpm_lock 
+0x3936 012300 store 2 ,mem_cb_check_wakelock 
+0x3937 012301 setarg module_hci_cmd_transmit_le_notify 
+0x3938 012302 store 2 ,mem_cb_ble_transmit 
+0x3939 012303 setarg module_hci_event_receive_spp_data 
+0x393a 012304 store 2 ,mem_cb_receive_spp_data 
+0x393b 012305 setarg module_le_receive_data 
+0x393c 012306 store 2 ,mem_cb_att_write 
+0x393d 012307 setarg module_bb_event_timer 
+0x393e 012308 store 2 ,mem_cb_event_timer 
+0x393f 012310 call module_spp_clear_last_transmite_clock 
+0x3940 012311 bpatch patch1b_5 ,mem_patch1b 
+0x3941 012312 call module_lpm_uart_init 
+0x3942 012313 call module_gpio_init 
+0x3943 012314 call check_module_disabled 
+0x3944 012315 branch module_hci_event_enter_standby_mode 
+:      012318 module_lpm_uart_init:
+0x3945 012319 fetch 4 ,mem_module_uart_rx_buffer 
+0x3946 012320 hstore 4 ,core_uart_rsaddr 
+0x3947 012322 fetch 4 ,mem_module_uart_tx_buffer 
+0x3948 012323 hstore 4 ,core_uart_tsaddr 
+0x3949 012325 hfetch 1 ,core_gpio_sel1 
+0x394a 012326 or_into 0x04 ,pdata 
+0x394b 012327 and_into 0xfc ,pdata 
+0x394c 012328 hstore 1 ,core_gpio_sel1 
+0x394d 012329 jam 0x00 ,core_uart_ctrl 
+0x394e 012331 fetch 2 ,mem_module_uart_rx_buffer 
+0x394f 012332 hstore 2 ,core_uart_rrptr 
+0x3950 012333 fetch 2 ,mem_module_uart_tx_buffer 
+0x3951 012334 hstore 2 ,core_uart_twptr 
+0x3952 012335 hstore 2 ,core_uart_trptrp 
+0x3953 012337 hfetch 4 ,core_gpio_pu0 
+0x3954 012338 set1 7 ,pdata 
+0x3955 012339 hstore 4 ,core_gpio_pu0 
+0x3956 012341 hfetch 2 ,core_clkoff 
+0x3957 012342 set0 clock_off_uart ,pdata 
+0x3958 012343 hstore 2 ,core_clkoff 
+0x3959 012344 call uart_set_baud_by_mem 
+0x395a 012345 jam uartclk_crystal ,core_uart_clksel 
+0x395b 012346 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x395c 012348 fetch 1 ,mem_module_flag 
+0x395d 012349 isolate1 module_flag_uart_flow_control ,pdata 
+0x395e 012350 hfetcht 1 ,core_uart_ctrl 
+0x395f 012351 setflag true ,4 ,temp 
+0x3960 012352 hstoret 1 ,core_uart_ctrl 
+0x3961 012353 rtn 
+:      012357 module_lpm_init:
+0x3962 012358 call module_spp_clear_last_transmite_clock 
+0x3963 012359 branch module_lpm_uart_init 
+:      012362 module_gpio_init:
+0x3964 012367 fetcht 1 ,mem_module_connect_state_gpio 
+0x3965 012368 call gpio_config_output 
+0x3966 012369 call module_set_conn_pin_low 
+0x3967 012371 fetcht 1 ,mem_module_wake_up_gpio 
+0x3968 012372 branch gpio_config_input 
+:      012374 module_lpm_lock:
+0x3969 012375 fetcht 1 ,mem_module_wake_up_gpio 
+0x396a 012376 call gpio_get_bit 
+0x396b 012377 nbranch app_put_lpm_wake_lock ,true 
+0x396c 012378 branch app_get_lpm_wake_lock 
+:      012381 module_le_conn_process:
+0x396d 012382 rtn 
+:      012384 module_bt_conn_process:
+0x396e 012385 call module_spp_enter_sniff 
+0x396f 012386 branch module_control_air_flow 
+:      012388 module_spp_enter_sniff:
+0x3970 012389 fetch 1 ,mem_ui_state_map 
+0x3971 012390 bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
+0x3972 012391 bpatch patch1b_6 ,mem_patch1b 
+0x3973 012392 setarg 0x3eff 
+0x3974 012393 fetcht 4 ,mem_last_transmite_clock 
+0x3975 012394 iadd temp ,temp 
+0x3976 012395 copy clkn_bt ,pdata 
+0x3977 012396 isub temp ,null 
+0x3978 012397 nrtn positive 
+0x3979 012398 fetch 2 ,mem_ui_state_map 
+0x397a 012399 bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
+0x397b 012400 fetch 1 ,mem_module_flag 
+0x397c 012401 rtnbit1 moudle_task_sniff 
+0x397d 012402 call module_set_sniff_task_flag 
+0x397e 012403 call app_bt_enter_sniff 
+:      012404 module_spp_clear_last_transmite_clock:
+0x397f 012405 copy clkn_bt ,pdata 
+0x3980 012406 store 4 ,mem_last_transmite_clock 
+0x3981 012407 rtn 
+:      012410 module_process_idle:
+0x3982 012411 call module_control_air_flow 
+0x3983 012412 call l2cap_malloc_is_fifo_full 
+0x3984 012413 nrtn blank 
+0x3985 012414 branch module_process 
+:      012417 module_process_bb_event:
+0x3986 012418 copy regc ,pdata 
+0x3987 012419 beq bt_evt_bb_connected ,module_process_bb_conn 
+0x3988 012420 beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
+0x3989 012421 beq bt_evt_reconn_failed ,module_process_reconn_fail 
+0x398a 012422 beq bt_evt_setup_complete ,module_process_setup_complete 
+0x398b 012423 beq bt_evt_spp_connected ,module_process_spp_connected 
+0x398c 012424 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
+0x398d 012425 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
+0x398e 012426 beq bt_evt_enter_sniff ,module_process_enter_sniff 
+0x398f 012427 beq bt_evt_exit_sniff ,module_process_exit_sniff 
+0x3990 012428 beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
+0x3991 012429 beq bt_evt_le_connected ,module_process_le_conn 
+0x3992 012430 beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
+0x3993 012431 beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
+0x3994 012432 beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
+0x3995 012433 beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
+0x3996 012434 beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
+0x3997 012435 beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
+0x3998 012436 beq bt_evt_le_start_enc ,module_hci_event_start_enc 
+0x3999 012437 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
+0x399a 012438 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
+0x399b 012439 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
+0x399c 012440 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
+0x399d 012441 beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
+0x399e 012442 beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
+0x399f 012443 beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
+0x39a0 012444 beq bt_evt_store_nvram ,module_hci_event_store_device 
+0x39a1 012445 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
+0x39a2 012446 rtn 
+:      012449 module_process_bb_event_disconned:
+0x39a3 012450 call module_spp_clear_last_transmite_clock 
+0x39a4 012451 fetch 1 ,mem_flag_pairing_state 
+0x39a5 012452 ncall module_hci_event_bt_pairing_fail ,blank 
+0x39a6 012453 call module_disconn_start 
+0x39a7 012454 fetch 2 ,mem_ui_state_map 
+0x39a8 012455 rtnbit0 ui_state_bt_spp_conn 
+0x39a9 012456 branch module_spp_disconnected 
+:      012458 module_process_spp_connected:
+0x39aa 012459 fetch 2 ,mem_ui_state_map 
+0x39ab 012460 set1 ui_state_bt_spp_conn ,pdata 
+0x39ac 012461 store 2 ,mem_ui_state_map 
+0x39ad 012462 fetch 1 ,mem_module_spp_lpm_mult 
+0x39ae 012463 store 1 ,mem_lpm_mult 
+0x39af 012464 call module_set_conn_pin_low 
+0x39b0 012465 branch module_hci_event_spp_connect 
+:      012467 module_process_spp_disconnected:
+:      012469 module_spp_disconnected:
+0x39b1 012470 fetch 2 ,mem_ui_state_map 
+0x39b2 012471 rtnbit0 ui_state_bt_spp_conn 
+0x39b3 012472 set0 ui_state_bt_spp_conn ,pdata 
+0x39b4 012473 store 2 ,mem_ui_state_map 
+0x39b5 012474 branch module_hci_event_spp_disconnect 
+:      012477 module_process_enter_sniff:
+:      012479 module_sniff_param_check:
+0x39b6 012480 call module_spp_clear_last_transmite_clock 
+0x39b7 012483 fetch 2 ,mem_context + coffset_tsniff 
+0x39b8 012484 rshift pdata ,pdata 
+0x39b9 012485 fetcht 2 ,mem_sniff_param_interval 
+0x39ba 012486 isub temp ,null 
+0x39bb 012487 nbranch module_sniff_param_check_unsniff ,zero 
+0x39bc 012488 branch app_lpm_mult_enable 
+:      012489 module_sniff_param_check_unsniff:
+0x39bd 012490 fetch 1 ,mem_module_flag 
+0x39be 012491 rtnbit1 moudle_task_unsniff 
+0x39bf 012492 hfetch 2 ,core_uart_rxitems 
+0x39c0 012493 ncall module_set_unsniff_task_flag ,blank 
+0x39c1 012494 branch app_bt_sniff_exit 
+:      012496 module_process_exit_sniff:
+0x39c2 012497 call module_clear_sniff_task_flag 
+0x39c3 012498 branch app_lpm_mult_disable 
+:      012500 module_process_setup_complete:
+0x39c4 012501 call module_spp_clear_last_transmite_clock 
+0x39c5 012502 branch module_conn_start 
+:      012504 module_process_bb_even_le_disconn:
+0x39c6 012505 call le_clr_config_more_data 
+0x39c7 012506 call module_disconn_start 
+0x39c8 012507 branch module_hci_event_le_disconnect 
+:      012509 module_process_evt_pincode_req:
+0x39c9 012510 branch app_bt_set_pincode 
+:      012513 module_process_sniff_not_accept:
+0x39ca 012514 branch module_clear_sniff_task_flag 
+:      012517 module_process_unsniff_accept:
+0x39cb 012518 fetch 1 ,mem_module_flag 
+0x39cc 012519 bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
+0x39cd 012520 branch module_clear_unsniff_task_flag 
+:      012523 module_process_unsniff_not_accept:
+0x39ce 012524 branch module_clear_unsniff_task_flag 
+:      012527 module_process_le_conn:
+0x39cf 012528 call le_send_att_exchange_mtu_requset 
+0x39d0 012529 call module_conn_start 
+0x39d1 012530 fetch 1 ,mem_module_le_lpm_mult 
+0x39d2 012531 store 1 ,mem_lpm_mult 
+0x39d3 012532 branch module_hci_event_le_connect 
+:      012535 module_process_bb_conn:
+0x39d4 012536 jam 0 ,mem_flag_mode_ssp_pin 
+0x39d5 012537 call module_clear_sniff_task_flag 
+0x39d6 012538 branch module_clear_unsniff_task_flag 
+:      012540 module_process_page_time_out:
+:      012541 module_process_reconn_fail:
+:      012542 module_disconn_start:
+0x39d7 012543 call module_start_adv_discovery_by_command 
+0x39d8 012544 branch module_set_conn_pin_high 
+:      012547 module_process_ble_ltk_lost:
+0x39d9 012548 call le_send_reject_ind 
+0x39da 012549 branch le_send_smp_security_request 
+:      012552 module_set_conn_pin_high:
+0x39db 012553 fetcht 1 ,mem_module_connect_state_gpio 
+0x39dc 012554 branch gpio_out_active 
+:      012556 module_conn_start:
+0x39dd 012557 call module_stop_adv_discovery 
+0x39de 012558 branch module_set_conn_pin_low 
+:      012560 module_stop_adv_discovery:
+0x39df 012561 fetch 1 ,mem_module_state 
+0x39e0 012562 isolate1 moudle_state_bt_bit ,pdata 
+0x39e1 012563 call app_bt_stop_discovery ,true 
+0x39e2 012564 fetch 1 ,mem_module_state 
+0x39e3 012565 isolate1 moudle_state_ble_bit ,pdata 
+0x39e4 012566 call app_ble_stop_adv ,true 
+0x39e5 012567 rtn 
+:      012568 module_set_conn_pin_low:
+0x39e6 012569 fetcht 1 ,mem_module_connect_state_gpio 
+0x39e7 012570 branch gpio_out_inactive 
+:      012572 module_process_with_credit:
+0x39e8 012573 fetch 1 ,mem_credit_flag 
+0x39e9 012574 rtneq credit_disable 
+0x39ea 012575 branch rfcomm_send_uih_without_payload 
+:      012577 module_process:
+0x39eb 012578 hfetch 1 ,core_uart_status 
+0x39ec 012579 bbit1 uart_status_rx_fifo_empty ,module_process_with_credit 
+0x39ed 012580 call uartd_prepare_rx 
+0x39ee 012581 ifetch 1 ,contru 
+0x39ef 012582 bne 0x01 ,module_hci_in_excp 
+0x39f0 012583 hfetch 2 ,core_uart_rxitems 
+0x39f1 012584 sub pdata ,2 ,null 
+0x39f2 012585 rtn positive 
+0x39f3 012586 ifetch 1 ,contru 
+0x39f4 012587 store 1 ,mem_module_uart_opcode 
+0x39f5 012588 ifetcht 1 ,contru 
+0x39f6 012589 copy contru ,rega 
+0x39f7 012590 storet 1 ,mem_module_uart_len 
+0x39f8 012591 add temp ,3 ,temp 
+0x39f9 012592 hfetch 2 ,core_uart_rxitems 
+0x39fa 012593 isub temp ,temp 
+0x39fb 012594 nrtn positive 
+0x39fc 012595 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x39fd 012596 call module_hci_cmd_control 
+0x39fe 012597 fetch 1 ,mem_module_temp_nl_discard_packet 
+0x39ff 012598 rtneq hci_not_discard_packet 
+0x3a00 012599 branch module_hci_dicard_packet 
+:      012601 module_hci_in_excp:
+0x3a01 012602 call delay_10ms 
+0x3a02 012603 call module_hci_event_invalid_packet 
+0x3a03 012604 branch module_hci_release_except 
+:      012607 module_hci_release_except:
+0x3a04 012608 bpatch patch1b_7 ,mem_patch1b 
+0x3a05 012609 hfetch 2 ,core_uart_rxitems 
+0x3a06 012610 rtn blank 
+0x3a07 012611 call uartd_prepare_rx 
+0x3a08 012612 ifetch 1 ,contru 
+0x3a09 012613 sub pdata ,0x01 ,null 
+0x3a0a 012614 ncall module_hci_dicard_bytes ,zero 
+0x3a0b 012615 nbranch module_hci_release_except ,zero 
+0x3a0c 012616 ifetch 1 ,contru 
+0x3a0d 012617 rtneq hci_cmd_spp_data_req 
+0x3a0e 012618 rtneq hci_cmd_set_credit_given 
+0x3a0f 012619 increase -1 ,contru 
+0x3a10 012620 call module_hci_dicard_bytes 
+0x3a11 012621 branch module_hci_release_except 
+:      012623 module_hci_dicard_packet:
+0x3a12 012624 call uartd_prepare_rx 
+0x3a13 012625 increase 2 ,contru 
+0x3a14 012626 ifetch 1 ,contru 
+0x3a15 012627 iadd contru ,contru 
+:      012628 module_hci_dicard_bytes:
+0x3a16 012629 branch uartd_rxdone 
+:      012632 module_hci_cmd_control:
+0x3a17 012633 bpatch patch1c_0 ,mem_patch1c 
+0x3a18 012634 fetch 1 ,mem_module_uart_opcode 
+0x3a19 012635 beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
+0x3a1a 012636 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
+0x3a1b 012637 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
+0x3a1c 012638 beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
+0x3a1d 012639 beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
+0x3a1e 012640 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
+0x3a1f 012641 beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
+0x3a20 012642 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
+0x3a21 012643 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
+0x3a22 012644 beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
+0x3a23 012645 beq hci_cmd_set_uartcontrol_req ,module_hci_cmd_set_uart_control_mode 
+0x3a24 012646 beq hci_cmd_set_uart_baud_req ,module_hci_cmd_set_uart_baud 
+0x3a25 012647 beq hci_cmd_version_req ,module_hci_cmd_version_request 
+0x3a26 012648 beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
+0x3a27 012649 beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
+0x3a28 012650 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
+0x3a29 012651 beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
+0x3a2a 012652 beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
+0x3a2b 012653 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
+0x3a2c 012654 beq hci_cmd_power_req ,module_hci_cmd_power_request 
+0x3a2d 012655 beq hci_cmd_power_set ,module_hci_cmd_power_set 
+0x3a2e 012656 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
+0x3a2f 012657 beq hci_cmd_set_gpio ,module_hci_cmd_set_gpio 
+0x3a30 012658 beq hci_cmd_read_gpio ,module_hci_cmd_read_gpio 
+0x3a31 012659 beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
+0x3a32 012660 beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
+0x3a33 012661 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
+0x3a34 012662 beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
+0x3a35 012663 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
+0x3a36 012664 beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
+0x3a37 012665 beq hci_cmd_set_wake_gpio ,module_hci_cmd_set_wake_gpio 
+0x3a38 012666 beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
+0x3a39 012667 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
+0x3a3a 012668 beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
+0x3a3b 012669 beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
+0x3a3c 012670 beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
+0x3a3d 012671 beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
+0x3a3e 012672 branch module_hci_event_receive_invalid_cmd 
+:      012677 module_hci_cmd_set_bt_addr:
+0x3a3f 012678 fetch 1 ,mem_module_uart_len 
+0x3a40 012679 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a41 012680 ifetch 6 ,contru 
+0x3a42 012681 store 6 ,mem_lap 
+0x3a43 012682 branch module_hci_event_receive_valid_cmd 
+:      012685 module_hci_cmd_set_le_addr:
+0x3a44 012686 fetch 1 ,mem_module_uart_len 
+0x3a45 012687 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a46 012688 ifetch 6 ,contru 
+0x3a47 012689 store 6 ,mem_le_lap 
+0x3a48 012690 branch module_hci_event_receive_valid_cmd 
+:      012694 module_hci_cmd_set_visibility:
+0x3a49 012695 fetch 1 ,mem_module_uart_len 
+0x3a4a 012696 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3a4b 012697 copy rega ,contru 
+0x3a4c 012698 call module_hci_event_receive_valid_cmd 
+0x3a4d 012699 ifetcht 1 ,contru 
+0x3a4e 012700 storet 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a4f 012701 fetch 2 ,mem_ui_state_map 
+0x3a50 012702 rtnbit1 ui_state_ble_connected 
+0x3a51 012703 rtnbit1 ui_state_bt_connected 
+:      012704 module_start_adv_discovery_by_command:
+0x3a52 012705 fetch 1 ,mem_module_state 
+0x3a53 012706 isolate1 moudle_state_bt_bit ,pdata 
+0x3a54 012707 nbranch moudle_start_adv_by_command ,true 
+0x3a55 012708 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a56 012709 and temp ,0x03 ,pdata 
+0x3a57 012710 store 1 ,mem_scan_mode 
+:      012711 moudle_start_adv_by_command:
+0x3a58 012712 fetch 1 ,mem_module_state 
+0x3a59 012713 isolate1 moudle_state_ble_bit ,pdata 
+0x3a5a 012714 nrtn true 
+0x3a5b 012715 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a5c 012716 isolate1 2 ,temp 
+0x3a5d 012717 branch app_ble_start_adv ,true 
+0x3a5e 012718 branch app_ble_stop_adv 
+:      012722 module_hci_cmd_set_bt_name:
+0x3a5f 012723 fetch 1 ,mem_module_uart_len 
+0x3a60 012724 sub pdata ,67 ,null 
+0x3a61 012725 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a62 012726 store 1 ,mem_local_name_length 
+0x3a63 012727 arg 8 ,loopcnt 
+0x3a64 012728 call memset0 
+0x3a65 012729 fetch 1 ,mem_module_uart_len 
+0x3a66 012730 copy pdata ,loopcnt 
+0x3a67 012731 copy rega ,contru 
+0x3a68 012732 arg mem_local_name ,contw 
+0x3a69 012733 call uart_copy_rx_bytes_fast 
+0x3a6a 012734 branch module_hci_event_receive_valid_cmd 
+:      012738 module_hci_cmd_set_le_name:
+0x3a6b 012739 fetch 1 ,mem_module_uart_len 
+0x3a6c 012740 sub pdata ,29 ,null 
+0x3a6d 012741 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a6e 012742 store 1 ,mem_le_name_len 
+0x3a6f 012743 copy pdata ,loopcnt 
+0x3a70 012744 copy rega ,contru 
+0x3a71 012745 arg mem_le_name ,contw 
+0x3a72 012746 call uart_copy_rx_bytes_fast 
+0x3a73 012747 call le_modified_name 
+0x3a74 012748 branch module_hci_event_receive_valid_cmd 
+:      012752 module_hci_cmd_receive_spp_data:
+0x3a75 012753 fetch 1 ,mem_ui_state_map 
+0x3a76 012754 bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
+0x3a77 012755 call app_check_sniff 
+0x3a78 012756 branch module_hci_cmd_spp_exit_sniff ,true 
+0x3a79 012757 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a7a 012759 call module_spp_clear_last_transmite_clock 
+0x3a7b 012760 fetch 1 ,mem_remote_credits 
+0x3a7c 012761 rtn blank 
+0x3a7d 012762 fetch 2 ,mem_nl_rx_len_all 
+0x3a7e 012763 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
+0x3a7f 012764 fetch 1 ,mem_module_uart_len 
+0x3a80 012765 store 2 ,mem_nl_rx_len_all 
+0x3a81 012767 copy rega ,contru 
+0x3a82 012770 copy contru ,pdata 
+0x3a83 012771 store 2 ,mem_nl_rx_data_src 
+:      012772 module_hci_cmd_pass_init_ng_rx_len_all:
+0x3a84 012773 call module_hci_cmd_get_current_packet_len_and_remain_len 
+0x3a85 012774 branch spp_tx_rfcomm_packet 
+:      012776 module_hci_cmd_spp_exit_sniff:
+0x3a86 012777 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a87 012778 branch module_exit_sniff 
+:      012780 module_hci_cmd_get_current_packet_len_and_remain_len:
+0x3a88 012781 call module_hci_cmd_get_current_patcket_len 
+0x3a89 012782 fetch 2 ,mem_nl_rx_len_all 
+0x3a8a 012783 fetcht 2 ,mem_current_packet_length 
+0x3a8b 012784 isub temp ,pdata 
+0x3a8c 012785 store 2 ,mem_nl_rx_len_all 
+0x3a8d 012786 rtn 
+:      012788 module_hci_cmd_get_current_patcket_len:
+0x3a8e 012789 fetch 2 ,mem_nl_rx_len_all 
+0x3a8f 012790 arg dm_refcom_buff_len ,temp 
+0x3a90 012791 call not_greater_than 
+0x3a91 012792 fetcht 2 ,mem_rfcomm_max_frame_size 
+0x3a92 012793 call not_greater_than 
+0x3a93 012794 fetcht 2 ,mem_pn_max_frame_size 
+0x3a94 012795 call not_greater_than 
+0x3a95 012796 store 2 ,mem_current_packet_length 
+0x3a96 012797 rtn 
+:      012799 module_hci_command_tx_spp_tx_complete:
+0x3a97 012800 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a98 012801 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
+0x3a99 012802 branch module_hci_event_receive_valid_cmd 
+:      012806 module_hci_cmd_receive_le_data:
+0x3a9a 012807 fetch 2 ,mem_ui_state_map 
+0x3a9b 012808 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3a9c 012809 call module_check_ble_encrypt_state 
+0x3a9d 012810 branch module_hci_event_receive_invalid_cmd ,user 
+0x3a9e 012811 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a9f 012812 fetch 1 ,mem_module_flag 
+0x3aa0 012813 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
+0x3aa1 012814 fetch 1 ,mem_module_hci_notify_len 
+0x3aa2 012815 nrtn blank 
+0x3aa3 012816 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aa4 012817 ifetch 2 ,contru 
+0x3aa5 012818 store 2 ,mem_module_hci_notify_handle 
+0x3aa6 012819 copy contru ,pdata 
+0x3aa7 012820 store 2 ,mem_module_hci_nofiy_addr 
+0x3aa8 012821 fetch 1 ,mem_module_uart_len 
+0x3aa9 012822 pincrease -2 
+0x3aaa 012823 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aab 012824 branch module_hci_event_receive_invalid_cmd ,zero 
+0x3aac 012825 store 1 ,mem_module_hci_notify_len 
+0x3aad 012826 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aae 012827 call le_set_config_more_data 
+0x3aaf 012828 call module_hci_cmd_transmit_le_notify 
+0x3ab0 012829 call module_hci_cmd_transmit_le_notify 
+0x3ab1 012830 call module_hci_cmd_transmit_le_notify 
+0x3ab2 012831 fetch 1 ,mem_module_flag 
+0x3ab3 012832 rtnbit0 module_flag_ble_data_finish 
+:      012833 module_hci_cmd_receive_le_data_finish:
+0x3ab4 012834 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3ab5 012835 call module_clear_le_tx_data_flag 
+0x3ab6 012836 branch module_hci_event_receive_valid_cmd 
+:      012838 module_hci_cmd_transmit_le_notify:
+0x3ab7 012839 fetch 1 ,mem_module_hci_notify_len 
+0x3ab8 012840 rtn blank 
+0x3ab9 012841 call le_fifo_check_nearly_full 
+0x3aba 012842 nrtn blank 
+0x3abb 012843 call module_get_le_remote_mtu 
+0x3abc 012844 bpatch patch1c_1 ,mem_patch1c 
+0x3abd 012845 add temp ,-3 ,pdata 
+0x3abe 012846 fetcht 1 ,mem_module_hci_notify_len 
+0x3abf 012847 call not_greater_than 
+0x3ac0 012848 copy pdata ,rega 
+0x3ac1 012849 copy temp ,pdata 
+0x3ac2 012850 isub rega ,pdata 
+0x3ac3 012851 store 1 ,mem_module_hci_notify_len 
+0x3ac4 012852 fetcht 2 ,mem_module_hci_notify_handle 
+0x3ac5 012853 call le_att_malloc_tx_notify 
+0x3ac6 012854 fetch 2 ,mem_module_hci_nofiy_addr 
+0x3ac7 012855 copy pdata ,contru 
+0x3ac8 012856 copy rega ,loopcnt 
+0x3ac9 012857 call uart_copy_rx_bytes_fast 
+0x3aca 012858 copy contru ,pdata 
+0x3acb 012859 store 2 ,mem_module_hci_nofiy_addr 
+0x3acc 012860 fetch 1 ,mem_module_hci_notify_len 
+0x3acd 012861 nrtn blank 
+0x3ace 012862 branch module_set_le_tx_data_flag 
+:      012866 module_get_le_remote_mtu:
+0x3acf 012867 arg 0x17 ,temp 
+0x3ad0 012868 fetch 1 ,mem_module_flag 
+0x3ad1 012869 rtnbit1 module_flag_ble_send_mtu23 
+0x3ad2 012870 fetcht 2 ,mem_le_remote_mtu 
+0x3ad3 012871 rtn 
+:      012873 module_check_ble_encrypt_state:
+0x3ad4 012874 fetch 1 ,mem_module_flag 
+0x3ad5 012875 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
+0x3ad6 012876 branch disable_user 
+:      012880 module_hci_cmd_inquire_status:
+0x3ad7 012881 branch module_hci_event_status_res 
+:      012885 module_hci_cmd_set_pairing_mode:
+0x3ad8 012886 copy rega ,contru 
+0x3ad9 012887 ifetch 1 ,contru 
+0x3ada 012888 beq pairing_pincode ,module_hci_pairing_pincode_mode 
+0x3adb 012889 beq pairing_justwork ,module_hci_pairing_just_work_mode 
+0x3adc 012890 beq pairing_passkey ,module_hci_pairing_passkey 
+0x3add 012891 beq pairing_confirm ,module_hci_pairing_numeric_comparison 
+0x3ade 012892 branch module_hci_event_receive_invalid_cmd 
+:      012893 module_hci_pairing_pincode_mode:
+0x3adf 012894 call ssp_disable 
+0x3ae0 012895 jam 0 ,mem_ssp_enable 
+0x3ae1 012896 branch module_hci_event_receive_valid_cmd 
+:      012897 module_hci_pairing_just_work_mode:
+0x3ae2 012898 setarg ssp_mode_just_work_io_cap_data 
+:      012899 module_hci_sspairing_mode:
+0x3ae3 012900 store 3 ,mem_sp_iocap_local 
+0x3ae4 012901 store 1 ,mem_ssp_mode_flag 
+0x3ae5 012902 call ssp_enable 
+0x3ae6 012903 jam 1 ,mem_ssp_enable 
+0x3ae7 012904 branch module_hci_event_receive_valid_cmd 
+:      012905 module_hci_pairing_passkey:
+0x3ae8 012906 setarg ssp_mode_passkey_io_cap_data 
+0x3ae9 012907 branch module_hci_sspairing_mode 
+:      012909 module_hci_pairing_numeric_comparison:
+0x3aea 012910 setarg ssp_mode_ssp_pin_io_cap_data 
+0x3aeb 012911 branch module_hci_sspairing_mode 
+:      012914 module_hci_cmd_set_pincode:
+0x3aec 012915 fetch 1 ,mem_module_uart_len 
+0x3aed 012916 sub pdata ,16 ,null 
+0x3aee 012917 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aef 012918 store 1 ,mem_pin_length 
+0x3af0 012919 copy pdata ,loopcnt 
+0x3af1 012920 arg mem_pin ,contw 
+0x3af2 012921 call uart_copy_rx_bytes 
+0x3af3 012922 branch module_hci_event_receive_valid_cmd 
+:      012926 module_hci_cmd_set_uart_control_mode:
+0x3af4 012927 copy rega ,contru 
+0x3af5 012928 ifetch 1 ,contru 
+0x3af6 012929 hfetcht 1 ,core_uart_ctrl 
+0x3af7 012930 nsetflag blank ,4 ,temp 
+0x3af8 012931 hstoret 1 ,core_uart_ctrl 
+0x3af9 012932 branch module_hci_event_receive_valid_cmd 
+:      012936 module_hci_cmd_set_uart_baud:
+0x3afa 012937 fetch 1 ,mem_module_uart_len 
+0x3afb 012938 copy pdata ,loopcnt 
+0x3afc 012939 copy rega ,contru 
+0x3afd 012940 call string2dec_from_uart 
+0x3afe 012941 setarg uart_clk_24 
+0x3aff 012942 idiv temp 
+0x3b00 012943 call wait_div_end 
+0x3b01 012944 quotient pdata 
+:      012945 module_hci_cmd_set_uart_baud_ok:
+0x3b02 012946 store uart_baud_len ,mem_baud 
+0x3b03 012947 call module_hci_event_receive_valid_cmd 
+0x3b04 012948 call wait_uarttx 
+0x3b05 012949 branch uart_set_baud_by_mem 
+:      012953 module_hci_cmd_version_request:
+0x3b06 012954 arg 2 ,rega 
+0x3b07 012955 arg mem_soft_version_num ,regb 
+0x3b08 012956 arg 0 ,temp 
+0x3b09 012957 branch module_hci_event_set_cmd 
+:      012958 module_hci_event_set_cmd_send_response:
+0x3b0a 012959 store 2 ,mem_event_cmd_response_content 
+0x3b0b 012960 arg mem_event_cmd_response_content ,regb 
+0x3b0c 012961 arg 0 ,temp 
+0x3b0d 012962 branch module_hci_event_set_cmd 
+:      012966 module_hci_cmd_bt_disconnect:
+0x3b0e 012967 fetch 2 ,mem_ui_state_map 
+0x3b0f 012968 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+:      012969 module_hci_cmd_bt_disconnect_doing:
+0x3b10 012970 call module_hci_event_receive_valid_cmd 
+0x3b11 012971 branch app_bt_disconnect 
+:      012975 module_hci_cmd_ble_disconnect:
+0x3b12 012976 fetch 2 ,mem_ui_state_map 
+0x3b13 012977 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+:      012978 module_hci_cmd_ble_disconnect_doing:
+0x3b14 012979 call module_hci_event_receive_valid_cmd 
+0x3b15 012980 branch app_ble_disconnect 
+:      012986 module_hci_cmd_set_nvram:
+0x3b16 012987 fetch 1 ,mem_module_uart_len 
+0x3b17 012988 copy pdata ,loopcnt 
+0x3b18 012989 copy rega ,contru 
+0x3b19 012990 fetch 2 ,mem_nv_data_ptr 
+0x3b1a 012991 icopy contw 
+0x3b1b 012992 call uart_copy_rx_bytes_fast 
+0x3b1c 012993 branch module_hci_event_receive_valid_cmd 
+:      012997 module_hci_cmd_confirm_gkey:
+0x3b1d 012998 fetch 1 ,mem_ui_state_map 
+0x3b1e 012999 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+0x3b1f 013000 ifetch 1 ,contru 
+0x3b20 013001 fetcht 1 ,mem_flag_mode_ssp_pin 
+0x3b21 013002 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
+0x3b22 013003 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
+0x3b23 013004 storet 1 ,mem_flag_mode_ssp_pin 
+0x3b24 013006 call module_hci_event_receive_valid_cmd 
+0x3b25 013008 fetch 1 ,mem_flag_mode_ssp_pin 
+0x3b26 013009 bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
+0x3b27 013010 rtn 
+:      013012 dhkey_not_accept:
+0x3b28 013013 jam 0 ,mem_flag_mode_ssp_pin 
+0x3b29 013014 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
+0x3b2a 013015 branch ui_ipc_send_cmd 
+:      013018 module_hci_cmd_spp_number_comparison_result_is1:
+0x3b2b 013019 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x3b2c 013020 branch dhkey_not_accept 
+:      013024 module_hci_cmd_set_credit_given:
+0x3b2d 013025 fetch 1 ,mem_ui_state_map 
+0x3b2e 013026 rtnbit0 ui_state_bt_spp_conn 
+0x3b2f 013027 fetch 1 ,mem_credit_flag 
+0x3b30 013028 rtneq credit_disable 
+0x3b31 013029 ifetch 1 ,contru 
+0x3b32 013030 fetcht 1 ,mem_credit_given 
+0x3b33 013031 iadd temp ,temp 
+0x3b34 013032 storet 1 ,mem_credit_given 
+0x3b35 013033 rtn 
+:      013037 module_hci_cmd_auto_adv:
+0x3b36 013038 arg 0x40 ,loopcnt 
+0x3b37 013039 arg mem_le_adv_data_len ,contw 
+0x3b38 013040 call clear_mem 
+0x3b39 013041 setarg 0 
+0x3b3a 013042 store 1 ,mem_regb 
+0x3b3b 013043 copy rega ,contru 
+:      013044 module_hci_cmd_auto_adv_loop:
+0x3b3c 013045 copy contru ,pdata 
+0x3b3d 013046 store 2 ,mem_regc 
+0x3b3e 013047 call module_hci_cmd_auto_adv_adv_analys 
+0x3b3f 013049 fetch 1 ,mem_regb 
+0x3b40 013050 fetcht 1 ,mem_temp 
+0x3b41 013051 increase 1 ,temp 
+0x3b42 013052 iadd temp ,pdata 
+0x3b43 013053 store 1 ,mem_regb 
+0x3b44 013055 sub pdata ,31 ,null 
+0x3b45 013056 nbranch module_hci_cmd_auto_adv_store_scan ,positive 
+:      013057 module_hci_cmd_auto_adv_store_adv:
+0x3b46 013058 fetcht 1 ,mem_le_adv_data_len 
+0x3b47 013059 setarg mem_le_adv_data 
+0x3b48 013060 iadd temp ,pdata 
+0x3b49 013061 store 2 ,mem_contw 
+0x3b4a 013062 fetcht 1 ,mem_temp 
+0x3b4b 013063 increase 1 ,temp 
+0x3b4c 013064 fetch 1 ,mem_le_adv_data_len 
+0x3b4d 013065 iadd temp ,pdata 
+0x3b4e 013066 store 1 ,mem_le_adv_data_len 
+0x3b4f 013067 branch module_hci_cmd_auto_adv_store_common 
+:      013068 module_hci_cmd_auto_adv_store_scan:
+0x3b50 013069 fetcht 1 ,mem_le_scan_data_len 
+0x3b51 013070 setarg mem_le_scan_data 
+0x3b52 013071 iadd temp ,pdata 
+0x3b53 013072 store 2 ,mem_contw 
+0x3b54 013073 fetcht 1 ,mem_temp 
+0x3b55 013074 increase 1 ,temp 
+0x3b56 013075 fetch 1 ,mem_le_scan_data_len 
+0x3b57 013076 iadd temp ,pdata 
+0x3b58 013077 store 1 ,mem_le_scan_data_len 
+:      013078 module_hci_cmd_auto_adv_store_common:
+0x3b59 013079 fetch 2 ,mem_contw 
+0x3b5a 013080 copy pdata ,contw 
+0x3b5b 013081 fetch 2 ,mem_regc 
+0x3b5c 013082 copy pdata ,contru 
+0x3b5d 013084 copy temp ,loopcnt 
+0x3b5e 013085 call uart_copy_rx_bytes_fast 
+0x3b5f 013087 fetch 1 ,mem_module_uart_len 
+0x3b60 013088 fetcht 1 ,mem_regb 
+0x3b61 013089 isub temp ,null 
+0x3b62 013090 nbranch module_hci_cmd_auto_adv_loop ,zero 
+0x3b63 013091 branch module_hci_event_receive_valid_cmd 
+:      013094 module_hci_cmd_auto_adv_adv_analys:
+0x3b64 013095 ifetch 1 ,contru 
+0x3b65 013096 store 1 ,mem_temp 
+0x3b66 013097 ifetch 1 ,contru 
+0x3b67 013098 store 1 ,mem_rega 
+0x3b68 013099 rtn 
+:      013103 module_hci_cmd_power_request:
+0x3b69 013104 arg 0 ,temp 
+0x3b6a 013105 arg 2 ,rega 
+0x3b6b 013106 fetch 2 ,mem_module_vdd_quotient 
+0x3b6c 013107 store 2 ,mem_event_cmd_response_content 
+0x3b6d 013108 arg mem_event_cmd_response_content ,regb 
+0x3b6e 013109 branch module_hci_event_set_cmd 
+:      013113 module_hci_cmd_power_set:
+0x3b6f 013114 fetch 1 ,mem_module_uart_len 
+0x3b70 013115 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b71 013116 ifetch 1 ,contru 
+0x3b72 013117 store 1 ,mem_module_read_vdd_flag 
+0x3b73 013118 setarg 0x00 
+0x3b74 013119 store 2 ,mem_module_vdd_quotient 
+0x3b75 013120 branch module_hci_event_receive_valid_cmd 
+:      013124 module_hci_cmd_passkey_entry:
+0x3b76 013125 ifetch 4 ,contru 
+0x3b77 013126 store 4 ,mem_pin 
+0x3b78 013127 jam 4 ,mem_pin_length 
+0x3b79 013128 jam 0 ,mem_authentication_passkey_times 
+0x3b7a 013129 call module_hci_event_receive_valid_cmd 
+0x3b7b 013130 branch authentication_passkey 
+:      013134 module_hci_cmd_set_gpio:
+0x3b7c 013135 fetch 1 ,mem_module_uart_len 
+0x3b7d 013136 bne 3 ,module_hci_event_receive_invalid_cmd 
+0x3b7e 013137 ifetch 1 ,contru 
+0x3b7f 013138 beq hci_cmd_config_gpio_input ,module_set_gpio_input 
+0x3b80 013139 beq hci_cmd_config_gpio_output ,module_set_gpio_output 
+0x3b81 013140 branch module_hci_event_receive_invalid_cmd 
+:      013142 module_set_gpio_input:
+0x3b82 013143 ifetcht 1 ,contru 
+0x3b83 013144 ifetch 1 ,contru 
+0x3b84 013145 beq gpio_input_high_impedance ,module_set_gpio_high_impedance 
+0x3b85 013146 nsetflag blank ,7 ,temp 
+0x3b86 013147 call gpio_config_input 
+0x3b87 013148 branch module_hci_event_receive_valid_cmd 
+:      013150 module_set_gpio_high_impedance:
+0x3b88 013151 call gpio_set_high_impedance 
+0x3b89 013152 branch module_hci_event_receive_valid_cmd 
+:      013154 module_set_gpio_output:
+0x3b8a 013155 ifetcht 1 ,contru 
+0x3b8b 013156 call gpio_config_output0 
+0x3b8c 013157 ifetch 1 ,contru 
+0x3b8d 013158 isolate1 0 ,pdata 
+0x3b8e 013159 call gpio_out_flag 
+0x3b8f 013160 branch module_hci_event_receive_valid_cmd 
+:      013164 module_hci_cmd_read_gpio:
+0x3b90 013165 fetch 1 ,mem_module_uart_len 
+0x3b91 013166 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b92 013167 ifetcht 1 ,contru 
+0x3b93 013168 call gpio_get_bit 
+0x3b94 013169 setarg 0x0 
+0x3b95 013170 nsetflag true ,0 ,pdata 
+0x3b96 013171 arg 1 ,rega 
+0x3b97 013172 branch module_hci_event_set_cmd_send_response 
+:      013176 module_hci_cmd_le_set_pairing_mode:
+0x3b98 013177 copy rega ,contru 
+0x3b99 013178 ifetch 1 ,contru 
+0x3b9a 013179 copy pdata ,temp 
+0x3b9b 013180 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
+0x3b9c 013181 beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
+0x3b9d 013182 beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
+0x3b9e 013183 store 1 ,mem_le_pairing_mode 
+0x3b9f 013184 beq le_pairing_mode_none ,module_le_set_no_pairing 
+0x3ba0 013185 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
+0x3ba1 013186 beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
+0x3ba2 013187 branch module_hci_event_receive_invalid_cmd 
+:      013189 module_le_set_pairing_mode_secure_justwork:
+0x3ba3 013190 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba4 013191 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3ba5 013192 storet 1 ,mem_le_pairing_mode 
+0x3ba6 013193 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3ba7 013194 branch module_le_set_noinputnooutput 
+:      013195 module_le_set_pairing_mode_secure_numeric:
+0x3ba8 013196 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba9 013197 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3baa 013198 storet 1 ,mem_le_pairing_mode 
+0x3bab 013199 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bac 013200 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x3bad 013201 branch module_hci_event_receive_valid_cmd 
+:      013202 module_le_set_pairing_mode_secure_passkey:
+0x3bae 013203 fetch 1 ,mem_le_secure_connect_enable 
+0x3baf 013204 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bb0 013205 storet 1 ,mem_le_pairing_mode 
+0x3bb1 013206 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bb2 013207 branch module_le_set_displayonly 
+:      013208 module_le_set_no_pairing:
+0x3bb3 013209 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      013210 module_le_set_noinputnooutput:
+0x3bb4 013211 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x3bb5 013212 branch module_hci_event_receive_valid_cmd 
+:      013213 module_le_set_pairing_mode_lagacy_just_work:
+0x3bb6 013214 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x3bb7 013215 branch module_le_set_noinputnooutput 
+:      013216 module_le_set_pairing_mode_lagacy_passkey:
+0x3bb8 013217 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      013218 module_le_set_displayonly:
+0x3bb9 013219 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x3bba 013220 branch module_hci_event_receive_valid_cmd 
+:      013224 module_hci_cmd_le_set_adv_data:
+0x3bbb 013225 fetch 1 ,mem_module_uart_len 
+0x3bbc 013226 sub pdata ,31 ,null 
+0x3bbd 013227 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bbe 013228 store 1 ,mem_le_adv_data_len 
+0x3bbf 013229 copy pdata ,loopcnt 
+0x3bc0 013230 copy rega ,contru 
+0x3bc1 013231 arg mem_le_adv_data ,contw 
+0x3bc2 013232 call uart_copy_rx_bytes_fast 
+0x3bc3 013233 branch module_hci_event_receive_valid_cmd 
+:      013237 module_hci_cmd_le_set_scan_data:
+0x3bc4 013238 fetch 1 ,mem_module_uart_len 
+0x3bc5 013239 sub pdata ,31 ,null 
+0x3bc6 013240 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bc7 013241 store 1 ,mem_le_scan_data_len 
+0x3bc8 013242 copy pdata ,loopcnt 
+0x3bc9 013243 copy rega ,contru 
+0x3bca 013244 arg mem_le_scan_data ,contw 
+0x3bcb 013245 call uart_copy_rx_bytes_fast 
+0x3bcc 013246 branch module_hci_event_receive_valid_cmd 
+:      013250 module_hci_cmd_le_send_conn_update_req:
+0x3bcd 013251 fetch 2 ,mem_ui_state_map 
+0x3bce 013252 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3bcf 013253 fetch 1 ,mem_module_uart_len 
+0x3bd0 013254 bne 0x08 ,module_hci_event_receive_invalid_cmd 
+0x3bd1 013255 copy rega ,contru 
+0x3bd2 013256 ifetch 8 ,contru 
+0x3bd3 013257 store 8 ,mem_le_interval_min 
+0x3bd4 013258 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3bd5 013259 call ui_ipc_send_cmd 
+0x3bd6 013260 branch module_hci_event_receive_valid_cmd 
+:      013264 module_hci_cmd_set_le_adv_parameter:
+0x3bd7 013265 ifetch 2 ,contru 
+0x3bd8 013266 store 2 ,mem_le_adv_interval 
+0x3bd9 013267 branch module_hci_event_receive_valid_cmd 
+:      013271 module_hci_cmd_le_start_pairing:
+0x3bda 013272 fetch 1 ,mem_le_pairing_mode 
+0x3bdb 013273 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bdc 013274 fetch 1 ,mem_le_pairing_state 
+0x3bdd 013275 bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
+0x3bde 013276 fetch 1 ,mem_le_enc_state 
+0x3bdf 013277 bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
+0x3be0 013278 call check_51cmd_le_smp_sec_req 
+0x3be1 013279 branch module_hci_event_receive_valid_cmd 
+:      013283 module_hci_cmd_set_wake_gpio:
+0x3be2 013284 fetch 1 ,mem_module_uart_len 
+0x3be3 013285 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3be4 013286 ifetch 1 ,contru 
+0x3be5 013287 store 1 ,mem_module_mcu_wake_pin 
+0x3be6 013288 ifetch 4 ,contru 
+0x3be7 013289 store 4 ,mem_module_mcu_wake_delay_us 
+0x3be8 013290 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3be9 013291 call gpio_config_output 
+0x3bea 013292 call module_set_mcu_wake_pin_low 
+0x3beb 013293 branch module_hci_event_receive_valid_cmd 
+:      013297 module_hci_cmd_set_tx_power:
+0x3bec 013298 fetch 1 ,mem_module_uart_len 
+0x3bed 013299 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bee 013300 ifetch 1 ,contru 
+0x3bef 013301 store 1 ,mem_tx_power 
+0x3bf0 013302 branch module_hci_event_receive_valid_cmd 
+:      013306 module_hci_cmd_le_confirm_gkey:
+0x3bf1 013307 ifetch 1 ,contru 
+0x3bf2 013308 beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
+0x3bf3 013309 fetch 1 ,mem_le_secure_connect_state 
+0x3bf4 013310 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf5 013311 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf6 013312 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf7 013313 branch module_hci_event_receive_invalid_cmd 
+:      013314 module_hci_cmd_le_confirm_gkey_ok:
+0x3bf8 013315 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
+0x3bf9 013316 branch module_hci_event_receive_valid_cmd 
+:      013318 module_hci_cmd_le_confirm_gkey_fail:
+0x3bfa 013319 call le_send_pairing_confirm_value_failed 
+0x3bfb 013320 branch module_hci_event_receive_valid_cmd 
+:      013324 module_hci_cmd_set_reject_justwork_flag:
+0x3bfc 013325 fetch 1 ,mem_module_uart_len 
+0x3bfd 013326 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bfe 013327 call module_hci_event_receive_valid_cmd 
+0x3bff 013328 ifetch 1 ,contru 
+0x3c00 013329 branch classic_bt_clr_reject_justwork_flag ,blank 
+0x3c01 013330 branch classic_bt_set_reject_justwork_flag 
+:      013334 module_hci_cmd_reset_chip:
+0x3c02 013335 call module_hci_event_receive_valid_cmd 
+0x3c03 013336 call wait_uarttx 
+0x3c04 013337 jam 0x01 ,core_reset 
+0x3c05 013338 branch loop 
+:      013342 module_hci_cmd_le_set_fixed_passkey:
+0x3c06 013343 fetch 1 ,mem_module_uart_len 
+0x3c07 013344 beq 0 ,module_hci_event_receive_invalid_cmd 
+0x3c08 013345 ifetch 1 ,contru 
+0x3c09 013346 branch module_hci_cmd_le_set_random_passkey ,blank 
+0x3c0a 013347 fetch 1 ,mem_module_uart_len 
+0x3c0b 013348 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3c0c 013349 ifetch 4 ,contru 
+0x3c0d 013350 arg 1000000 ,temp 
+0x3c0e 013351 isub temp ,null 
+0x3c0f 013352 branch module_hci_event_receive_invalid_cmd ,positive 
+0x3c10 013353 store 4 ,mem_le_tk 
+0x3c11 013354 call le_set_config_fixed_tk 
+0x3c12 013355 branch module_hci_event_receive_valid_cmd 
+:      013357 module_hci_cmd_le_set_random_passkey:
+0x3c13 013358 call le_clr_config_fixed_tk 
+0x3c14 013359 branch module_hci_event_receive_valid_cmd 
+:      013363 module_hci_test_cmde_close_lpm:
+0x3c15 013364 jam 0 ,mem_lpm_mode 
+0x3c16 013365 branch module_hci_event_receive_valid_cmd 
+:      013370 module_hci_event_receive_invalid_cmd:
+0x3c17 013371 arg 1 ,temp 
+0x3c18 013372 arg 0 ,rega 
+0x3c19 013373 branch module_hci_event_set_cmd 
+:      013376 module_hci_event_receive_valid_cmd:
+0x3c1a 013377 arg 0 ,temp 
+0x3c1b 013378 arg 0 ,rega 
+0x3c1c 013379 branch module_hci_event_set_cmd 
+:      013383 module_hci_event_spp_connect:
+0x3c1d 013384 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
+0x3c1e 013385 branch module_hci_event_enter_standby_mode_len0 
+:      013389 module_hci_event_le_connect:
+0x3c1f 013390 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
+0x3c20 013391 branch module_hci_event_enter_standby_mode_len0 
+:      013395 module_hci_event_spp_disconnect:
+0x3c21 013396 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
+0x3c22 013397 branch module_hci_event_enter_standby_mode_len0 
+:      013401 module_hci_event_le_disconnect:
+0x3c23 013402 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
+0x3c24 013403 branch module_hci_event_enter_standby_mode_len0 
+:      013411 module_hci_event_set_cmd:
+0x3c25 013412 fetch 1 ,mem_module_uart_opcode 
+0x3c26 013413 copy pdata ,regc 
+0x3c27 013414 jam hci_event_cmd_res ,mem_module_uart_opcode 
+0x3c28 013415 setarg 2 
+0x3c29 013416 iadd rega ,pdata 
+0x3c2a 013417 call module_hci_prepare_tx 
+0x3c2b 013418 copy regc ,pdata 
+0x3c2c 013419 istore 1 ,contwu 
+0x3c2d 013420 istoret 1 ,contwu 
+0x3c2e 013421 copy rega ,loopcnt 
+0x3c2f 013422 copy regb ,contr 
+0x3c30 013423 call uart_copy_tx_bytes 
+0x3c31 013424 branch uartd_send 
+:      013428 module_hci_event_receive_spp_data:
+0x3c32 013430 call module_spp_clear_last_transmite_clock 
+0x3c33 013431 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
+0x3c34 013432 fetch 1 ,mem_current_length 
+0x3c35 013433 rtn blank 
+0x3c36 013434 call module_hci_prepare_tx 
+0x3c37 013435 fetch 1 ,mem_current_length 
+0x3c38 013436 copy pdata ,loopcnt 
+0x3c39 013437 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x3c3a 013438 copy pdata ,contr 
+0x3c3b 013439 call uart_copy_tx_bytes_fast 
+0x3c3c 013440 branch uartd_send 
+:      013444 module_hci_event_receive_le_data:
+0x3c3d 013445 jam hci_event_le_data_rep ,mem_module_uart_opcode 
+0x3c3e 013446 fetch 1 ,mem_module_le_rx_data_len 
+0x3c3f 013447 icopy loopcnt 
+0x3c40 013448 increase 2 ,pdata 
+0x3c41 013449 call module_hci_prepare_tx 
+0x3c42 013450 fetch 2 ,mem_module_le_rx_data_handle 
+0x3c43 013451 istore 2 ,contwu 
+0x3c44 013452 fetch 2 ,mem_module_le_rx_data_address 
+0x3c45 013453 icopy contr 
+0x3c46 013454 call uart_copy_tx_bytes_fast 
+0x3c47 013455 branch uartd_send 
+:      013459 module_hci_event_enter_standby_mode:
+0x3c48 013460 jam hci_event_standby_rep ,mem_module_uart_opcode 
+:      013461 module_hci_event_enter_standby_mode_len0:
+0x3c49 013462 setarg 0 
+0x3c4a 013463 call module_hci_prepare_tx 
+0x3c4b 013464 branch uartd_send 
+:      013468 module_hci_event_status_res:
+0x3c4c 013469 jam hci_event_status_res ,mem_module_uart_opcode 
+0x3c4d 013470 setarg 1 
+0x3c4e 013471 call module_hci_prepare_tx 
+0x3c4f 013473 call module_hci_read_bt_status 
+0x3c50 013475 fetch 2 ,mem_ui_state_map 
+0x3c51 013476 arg ui_state_bt_hid_conn ,queue 
+0x3c52 013477 qisolate1 pdata 
+0x3c53 013478 setflag true ,3 ,temp 
+0x3c54 013480 arg ui_state_ble_connected ,queue 
+0x3c55 013481 qisolate1 pdata 
+0x3c56 013482 setflag true ,5 ,temp 
+0x3c57 013484 fetch 1 ,mem_ui_state_map 
+0x3c58 013485 arg ui_state_bt_spp_conn ,queue 
+0x3c59 013486 qisolate1 pdata 
+0x3c5a 013487 setflag true ,4 ,temp 
+0x3c5b 013489 istoret 1 ,contwu 
+0x3c5c 013490 branch uartd_send 
+:      013494 module_hci_read_bt_status:
+0x3c5d 013495 arg 0 ,temp 
+0x3c5e 013496 fetch 1 ,mem_scan_mode 
+0x3c5f 013497 arg inq_scan_mode ,queue 
+0x3c60 013498 qisolate1 pdata 
+0x3c61 013499 setflag true ,0 ,temp 
+0x3c62 013500 arg page_scan_mode ,queue 
+0x3c63 013501 qisolate1 pdata 
+0x3c64 013502 setflag true ,1 ,temp 
+0x3c65 013504 fetch 1 ,mem_le_adv_enable 
+0x3c66 013505 arg 0 ,queue 
+0x3c67 013506 qisolate1 pdata 
+0x3c68 013507 setflag true ,2 ,temp 
+0x3c69 013508 rtn 
+:      013512 module_hci_event_store_device:
+0x3c6a 013513 jam hci_event_nvram_rep ,mem_module_uart_opcode 
+0x3c6b 013514 fetch 1 ,mem_nv_data_number 
+0x3c6c 013515 mul32 pdata ,34 ,pdata 
+0x3c6d 013516 icopy loopcnt 
+0x3c6e 013517 call module_hci_prepare_tx 
+0x3c6f 013518 fetch 2 ,mem_nv_data_ptr 
+0x3c70 013519 icopy contr 
+0x3c71 013520 call uart_copy_tx_bytes_fast 
+0x3c72 013521 branch uartd_send 
+:      013525 module_hci_event_gkey_generate:
+0x3c73 013526 jam hci_event_gkey ,mem_module_uart_opcode 
+0x3c74 013527 setarg 4 
+0x3c75 013528 call module_hci_prepare_tx 
+0x3c76 013529 fetch 4 ,mem_gkey 
+0x3c77 013530 istore 4 ,contwu 
+0x3c78 013531 branch uartd_send 
+:      013535 module_hci_event_invalid_packet:
+0x3c79 013536 jam hci_event_invalid_packet ,mem_module_uart_opcode 
+0x3c7a 013537 hfetch 2 ,core_uart_rxitems 
+0x3c7b 013538 arg 0xff ,temp 
+0x3c7c 013539 call not_greater_than 
+0x3c7d 013540 copy pdata ,loopcnt 
+0x3c7e 013541 call module_hci_prepare_tx 
+0x3c7f 013542 call uartd_prepare_rx 
+0x3c80 013543 call uart_copy_rx2tx 
+0x3c81 013544 branch uartd_send 
+:      013548 module_hci_event_passkey_entry_mode:
+0x3c82 013549 jam hci_event_get_passkey ,mem_module_uart_opcode 
+0x3c83 013550 branch module_hci_event_enter_standby_mode_len0 
+:      013554 module_hci_event_le_tk:
+0x3c84 013555 jam hci_event_le_tk ,mem_module_uart_opcode 
+0x3c85 013556 setarg 4 
+0x3c86 013557 call module_hci_prepare_tx 
+0x3c87 013558 fetch 4 ,mem_le_tk 
+0x3c88 013559 istore 4 ,contwu 
+0x3c89 013560 branch uartd_send 
+:      013564 module_hci_event_le_pairing_fail:
+0x3c8a 013565 arg flag_ble_pairing_fail ,rega 
+0x3c8b 013566 branch module_hci_event_pairing_completed 
+:      013568 module_hci_event_le_pairing_success:
+0x3c8c 013569 arg flag_ble_pairing_success ,rega 
+0x3c8d 013570 branch module_hci_event_pairing_completed 
+:      013572 module_hci_event_bt_pairing_fail:
+0x3c8e 013573 arg flag_bt_pairing_fail ,rega 
+0x3c8f 013574 branch module_hci_event_pairing_completed 
+:      013576 module_hci_event_bt_pairing_success:
+0x3c90 013577 arg flag_bt_pairing_success ,rega 
+:      013579 module_hci_event_pairing_completed:
+0x3c91 013580 jam 0 ,mem_flag_mode_ssp_pin 
+0x3c92 013581 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
+0x3c93 013582 setarg 2 
+0x3c94 013583 call module_hci_prepare_tx 
+0x3c95 013584 copy rega ,pdata 
+0x3c96 013585 istore 2 ,contwu 
+0x3c97 013586 branch uartd_send 
+:      013590 module_hci_event_pause_enc:
+0x3c98 013591 arg flag_event_pause_enc ,regc 
+0x3c99 013592 branch module_hci_event_enc 
+:      013594 module_hci_event_start_enc:
+0x3c9a 013595 arg flag_event_start_enc ,regc 
+:      013597 module_hci_event_enc:
+0x3c9b 013598 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
+0x3c9c 013599 setarg 1 
+0x3c9d 013600 call module_hci_prepare_tx 
+0x3c9e 013601 copy regc ,pdata 
+0x3c9f 013602 istore 1 ,contwu 
+0x3ca0 013603 branch uartd_send 
+:      013607 module_hci_event_le_gkey:
+0x3ca1 013608 jam hci_event_le_gkey ,mem_module_uart_opcode 
+0x3ca2 013609 setarg 4 
+0x3ca3 013610 call module_hci_prepare_tx 
+0x3ca4 013611 fetch 4 ,mem_gkey 
+0x3ca5 013612 istore 4 ,contwu 
+0x3ca6 013613 branch uartd_send 
+:      013624 module_hci_prepare_tx:
+0x3ca7 013625 jam 0x02 ,mem_module_uart_cmd 
+0x3ca8 013626 store 1 ,mem_module_uart_len 
+0x3ca9 013627 storet 8 ,mem_temp 
+0x3caa 013628 bpatch patch1c_2 ,mem_patch1c 
+0x3cab 013629 call module_set_mcu_wake_pin_high_delay 
+0x3cac 013630 fetcht 8 ,mem_temp 
+0x3cad 013631 call uartd_prepare_tx 
+0x3cae 013632 fetch 3 ,mem_module_uart_cmd 
+0x3caf 013633 istore 3 ,contwu 
+0x3cb0 013634 rtn 
+:      013637 module_set_mcu_wake_pin_high_delay:
+0x3cb1 013638 call module_check_mcu_wake_pin_high 
+0x3cb2 013639 rtn true 
+:      013640 module_set_mcu_wake_pin_h_delay:
+0x3cb3 013641 call module_set_mcu_wake_pin_high 
+0x3cb4 013642 fetch 4 ,mem_module_mcu_wake_delay_us 
+0x3cb5 013643 rshift2 pdata ,pdata 
+0x3cb6 013644 rtn blank 
+0x3cb7 013645 branch delay 
+:      013647 module_set_mcu_wake_pin_high:
+0x3cb8 013649 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cb9 013650 branch gpio_out_active 
+:      013652 module_check_mcu_wake_pin_high:
+0x3cba 013653 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbb 013654 branch gpio_check_active 
+:      013656 module_set_mcu_wake_pin_low:
+0x3cbc 013657 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbd 013658 branch gpio_out_inactive 
+:      013661 delay:
+0x3cbe 013662 increase -1 ,pdata 
+0x3cbf 013663 nop 38 
+0x3cc0 013664 nbranch delay ,blank 
+0x3cc1 013665 rtn 
+:      013674 module_le_receive_data:
+0x3cc2 013675 call module_check_ble_encrypt_state 
+0x3cc3 013676 rtn user 
+0x3cc4 013677 copy rega ,pdata 
+0x3cc5 013678 store 2 ,mem_module_le_rx_data_address 
+0x3cc6 013679 copy regb ,pdata 
+0x3cc7 013680 store 1 ,mem_module_le_rx_data_len 
+0x3cc8 013681 fetch 2 ,mem_le_att_handle 
+0x3cc9 013682 fetcht 2 ,mem_module_data_write_handle 
+0x3cca 013683 isub temp ,null 
+0x3ccb 013684 branch module_le_receive_data_ok ,zero 
+0x3ccc 013685 fetcht 2 ,mem_module_data_write_handle2 
+0x3ccd 013686 isub temp ,null 
+0x3cce 013687 nrtn zero 
+:      013688 module_le_receive_data_ok:
+0x3ccf 013689 store 2 ,mem_module_le_rx_data_handle 
+0x3cd0 013690 branch module_hci_event_receive_le_data 
+:      013695 module_exit_sniff:
+0x3cd1 013696 fetch 1 ,mem_module_flag 
+0x3cd2 013697 rtnbit1 moudle_task_unsniff 
+0x3cd3 013698 call module_set_unsniff_task_flag 
+0x3cd4 013699 branch app_bt_sniff_exit 
+:      013702 module_set_lpm_mult_2:
+0x3cd5 013703 jam 2 ,mem_lpm_mult 
+0x3cd6 013704 rtn 
+:      013708 module_bb_event_timer:
+0x3cd7 013709 branch module_read_vdd_timer 
+:      013711 module_read_vdd_timer:
+0x3cd8 013712 fetch 1 ,mem_module_read_vdd_flag 
+0x3cd9 013713 rtn blank 
+0x3cda 013714 fetch 1 ,mem_module_read_vdd_count 
+0x3cdb 013715 rtn blank 
+0x3cdc 013716 increase -1 ,pdata 
+0x3cdd 013717 store 1 ,mem_module_read_vdd_count 
+0x3cde 013718 nrtn blank 
+0x3cdf 013719 jam flag_module_read_vdd_count ,mem_module_read_vdd_count 
+0x3ce0 013720 call adc_set_mode 
+0x3ce1 013721 call vdd_calculate_by_mode 
+0x3ce2 013722 div pdata ,0x64 
+0x3ce3 013723 call wait_div_end 
+0x3ce4 013724 quotient pdata 
+0x3ce5 013725 remainder temp 
+0x3ce6 013726 store 1 ,mem_module_vdd_quotient 
+0x3ce7 013727 storet 1 ,mem_module_vdd_remainder 
+0x3ce8 013728 rtn 
+:      013731 module_control_air_flow:
+0x3ce9 013732 call check_uart_tx_buff 
+0x3cea 013733 branch app_l2cap_flow_control_enable ,positive 
+0x3ceb 013734 branch app_l2cap_flow_control_disable 
+:      013738 module_set_sniff_task_flag:
+0x3cec 013739 arg moudle_task_sniff ,queue 
+0x3ced 013740 branch module_set_state 
+:      013742 module_clear_sniff_task_flag:
+0x3cee 013743 arg moudle_task_sniff ,queue 
+0x3cef 013744 branch module_clr_state 
+:      013746 module_set_unsniff_task_flag:
+0x3cf0 013747 arg moudle_task_unsniff ,queue 
+0x3cf1 013748 branch module_set_state 
+:      013750 module_clear_unsniff_task_flag:
+0x3cf2 013751 arg moudle_task_unsniff ,queue 
+0x3cf3 013752 branch module_clr_state 
+:      013754 module_set_le_tx_data_flag:
+0x3cf4 013755 arg module_flag_ble_data_finish ,queue 
+0x3cf5 013756 branch module_set_state 
+:      013758 module_clear_le_tx_data_flag:
+0x3cf6 013759 arg module_flag_ble_data_finish ,queue 
+0x3cf7 013760 branch module_clr_state 
+:      013762 module_clr_state:
+0x3cf8 013763 fetch 1 ,mem_module_flag 
+0x3cf9 013764 qset0 pdata 
+0x3cfa 013765 store 1 ,mem_module_flag 
+0x3cfb 013766 rtn 
+:      013768 module_set_state:
+0x3cfc 013769 fetch 1 ,mem_module_flag 
+0x3cfd 013770 qset1 pdata 
+0x3cfe 013771 store 1 ,mem_module_flag 
+0x3cff 013772 rtn 
+:      013782 mouse_init:
+0x3d00 013783 call mouse_setting_config 
+0x3d01 013784 call spi_ncs_enable 
+0x3d02 013785 call mouse_init_sunt 
+0x3d03 013786 call mouse_dpi_config 
+0x3d04 013787 call spi_ncs_disable 
+0x3d05 013788 rtn wake 
+0x3d06 013789 call mouse_cheak_enable_usb 
+0x3d07 013790 call mouse_cb_fuction 
+0x3d08 013793 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d09 013794 rtnbit1 mouse_enable_usb 
+0x3d0a 013795 call mouse_wakeup_from_power 
+0x3d0b 013796 rtnmark1 mark_24g 
+0x3d0c 013797 fetch 2 ,mem_ui_state_map 
+0x3d0d 013798 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x3d0e 013799 branch mouse_check_reconn_target 
+:      013802 mouse_delay_4s:
+0x3d0f 013803 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d10 013804 rtnbit0 mouse_enable_init_delay 
+0x3d11 013805 arg 20 ,loopcnt 
+:      013806 mouse_delay_20ms:
+0x3d12 013807 setarg 200000 
+0x3d13 013808 call sleep 
+0x3d14 013809 loop delay_10ms 
+0x3d15 013810 rtn 
+:      013813 mouse_cheak_enable_usb:
+0x3d16 013814 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d17 013815 rtnbit0 mouse_enable_usb 
+0x3d18 013816 branch usb_init 
+:      013819 mouse_cb_fuction:
+0x3d19 013820 setarg mouse_le 
+0x3d1a 013821 store 2 ,mem_cb_le_process 
+0x3d1b 013822 setarg mouse_send_process 
+0x3d1c 013823 store 2 ,mem_cb_bt_process 
+0x3d1d 013824 setarg mouse_process_lpm_before 
+0x3d1e 013825 store 2 ,mem_cb_before_lpm 
+0x3d1f 013826 setarg mouse_priority_bb_event 
+0x3d20 013827 store 2 ,mem_cb_bb_event_process 
+0x3d21 013828 setarg mouse_idle 
+0x3d22 013829 store 2 ,mem_cb_idle_process 
+0x3d23 013830 setarg mouse_before_hibernate 
+0x3d24 013831 store 2 ,mem_cb_before_hibernate 
+0x3d25 013832 setarg le_mouse_bb_event_connect_complete 
+0x3d26 013833 store 2 ,mem_cb_att_write 
+0x3d27 013835 call g24_head_ptr2regc 
+0x3d28 013836 setarg mouse_g24_package_data 
+0x3d29 013837 add regc ,offset_24g_cb_data ,contw 
+0x3d2a 013838 istore 2 ,contw 
+0x3d2b 013839 setarg mouse_g24_enter_lpm 
+0x3d2c 013840 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x3d2d 013841 istore 2 ,contw 
+0x3d2e 013842 setarg mouse_lpm_before_common 
+0x3d2f 013843 add regc ,offset_24g_cb_lpm_before ,contw 
+0x3d30 013844 istore 2 ,contw 
+0x3d31 013846 setarg mouse_bb_event_timer 
+0x3d32 013847 store 2 ,mem_cb_event_timer 
+0x3d33 013848 setarg mouse_spi_write_flash_cb 
+0x3d34 013849 store 2 ,mem_cb_spi_flash_write_complate 
+0x3d35 013850 rtn 
+:      013851 mouse_spi_write_flash_cb:
+:      013852 mouse_spi_init:
+0x3d36 013853 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d37 013854 bbit0 mouse_enable_spi2 ,spid_init 
+0x3d38 013855 branch spid_init2 
+:      013857 mouse_setting_config:
+0x3d39 013858 rtn wake 
+0x3d3a 013859 call g24_set_device_addr 
+0x3d3b 013860 call mouse_gpio_init 
+0x3d3c 013861 call mouse_param_init 
+0x3d3d 013862 call mouse_adc_init 
+0x3d3e 013863 call le_set_config_fixed_ltk 
+0x3d3f 013864 call le_set_justwork 
+0x3d40 013865 call le_set_fixed_ltk 
+0x3d41 013866 call le_set_config_read_authentication 
+0x3d42 013867 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d43 013868 bbit1 mouse_enable_eeprom ,mouse_init_iic 
+0x3d44 013869 bbit1 mouse_enable_flash ,mouse_load_flash_info_cheak 
+0x3d45 013870 rtn 
+:      013872 mouse_init_iic:
+0x3d46 013873 call iic_init_390k 
+0x3d47 013874 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d48 013875 isolate1 mouse_enable_2k_eeprom ,pdata 
+0x3d49 013876 ncall clear_eeprom_size_2k ,true 
+0x3d4a 013877 call mouse_load_eeprom_dpi 
+0x3d4b 013878 call mouse_init_environment 
+0x3d4c 013879 call mouse_set_24g_addr_eeprom 
+0x3d4d 013880 branch iicd_read_eep_data 
+:      013882 mouse_wakeup_from_power:
+0x3d4e 013883 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d4f 013884 bbit0 mouse_enable_wakeup_from_power ,mouse_wakeup_no_from_power 
+0x3d50 013885 fetch 1 ,mem_wakup_from_power_flag 
+0x3d51 013886 isolate0 gpio_latch ,pdata 
+0x3d52 013887 nrtn true 
+:      013888 mouse_wakeup_no_from_power:
+0x3d53 013889 fetch 1 ,mem_reconn_times_init 
+0x3d54 013890 store 1 ,mem_reconn_times 
+0x3d55 013891 fetch 1 ,mem_config_function_enable 
+0x3d56 013892 rtnbit1 enable_select_device_by_switch 
+:      013893 mouse_start_24g_mode:
+0x3d57 013894 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d58 013895 rtnbit0 mouse_enable_24g 
+0x3d59 013896 bbit1 mouse_enable_auto_24g_paring ,g24_auto_pair_start 
+0x3d5a 013897 branch g24_check_51cmd_start_24g 
+:      013898 le_mouse_bb_event_connect_complete:
+0x3d5b 013899 fetch 1 ,mem_le_att_handle 
+0x3d5c 013900 sub pdata ,26 ,pdata 
+0x3d5d 013901 nrtn zero 
+0x3d5e 013902 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3d5f 013903 call ui_ipc_send_cmd 
+:      013904 mouse_le_write_enable:
+0x3d60 013905 arg write_req_enable_flag ,queue 
+0x3d61 013906 branch mouse_le_enable_connect_flag 
+:      013908 mouse_dpi_up:
+0x3d62 013909 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d63 013910 rtneq dpi_button_state_up 
+0x3d64 013911 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
+0x3d65 013912 rtn 
+:      013913 mouse_dpi_config:
+0x3d66 013914 fetch 1 ,mem_config_sensor_motion 
+0x3d67 013915 and pdata ,0x0f ,pdata 
+0x3d68 013916 store 1 ,mem_mouse_dpi 
+0x3d69 013917 branch mouse_seting_dpi + 2 
+:      013920 mouse_dpi_cheak:
+0x3d6a 013921 fetcht 1 ,mem_dpi_button_gpio 
+0x3d6b 013922 call gpio_get_bit 
+0x3d6c 013923 nbranch mouse_dpi_up ,true 
+:      013924 mouse_dpi_down:
+0x3d6d 013925 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d6e 013926 rtneq dpi_button_state_down 
+0x3d6f 013927 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+0x3d70 013928 fetch 1 ,mem_mouse_dpi 
+0x3d71 013929 increase 1 ,pdata 
+0x3d72 013930 and pdata ,0x03 ,pdata 
+0x3d73 013931 store 1 ,mem_mouse_dpi 
+0x3d74 013932 call mouse_seting_dpi 
+0x3d75 013933 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d76 013934 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+0x3d77 013935 bbit1 mouse_enable_flash ,mouse_before_store_flash_cpi 
+0x3d78 013936 rtn 
+:      013937 mouse_before_store_flash_cpi:
+0x3d79 013938 arg mouse_spi2_clk_gpio ,temp 
+0x3d7a 013939 call gpio_config_output 
+0x3d7b 013940 arg mouse_spi2_sdio_gpio ,temp 
+0x3d7c 013941 call gpio_config_output 
+0x3d7d 013942 branch mouse_store_flash_device_info 
+:      013944 mouse_seting_dpi:
+0x3d7e 013945 bpatch patch1c_3 ,mem_patch1c 
+0x3d7f 013946 call mosue_dpi_led_blink_init 
+0x3d80 013947 fetch 1 ,mem_config_sensor_type 
+0x3d81 013948 beq p3610 ,mouse_seting_3610_dpi 
+0x3d82 013949 beq p3212 ,mouse_seting_3212_dpi 
+0x3d83 013950 fetch 1 ,mem_mouse_dpi 
+0x3d84 013951 beq mouse_dpi_level1 ,mouse_set_cpi1 
+0x3d85 013952 beq mouse_dpi_level2 ,mouse_set_cpi2 
+0x3d86 013953 beq mouse_dpi_level3 ,mouse_set_cpi3 
+0x3d87 013954 beq mouse_dpi_level4 ,mouse_set_cpi4 
+:      013955 mouse_set_cpi2:
+0x3d88 013956 fetch 1 ,mem_320x_dpi_2 
+0x3d89 013957 branch mouse_p3205_dpi 
+:      013958 mouse_set_cpi1:
+0x3d8a 013959 fetch 1 ,mem_320x_dpi_1 
+0x3d8b 013960 branch mouse_p3205_dpi 
+:      013961 mouse_set_cpi3:
+0x3d8c 013962 fetch 1 ,mem_320x_dpi_3 
+0x3d8d 013963 branch mouse_p3205_dpi 
+:      013964 mouse_set_cpi4:
+0x3d8e 013965 fetch 1 ,mem_320x_dpi_4 
+0x3d8f 013966 branch mouse_p3205_dpi 
+:      013967 moue_seting_cpi_count:
+0x3d90 013968 fetch 1 ,mem_config_sensor_type 
+0x3d91 013969 rtneq p3065_xy 
+0x3d92 013970 fetch 1 ,mem_mouse_cpi_count 
+0x3d93 013971 increase 1 ,pdata 
+0x3d94 013972 store 1 ,mem_mouse_cpi_count 
+0x3d95 013973 rtn 
+:      013975 mouse_seting_3212_dpi:
+0x3d96 013976 fetch 1 ,mem_mouse_dpi 
+0x3d97 013977 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
+0x3d98 013978 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
+0x3d99 013979 beq mouse_dpi_level3 ,mouse_set_p3212_cpi3 
+0x3d9a 013980 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
+:      013981 mouse_set_p3212_cpi2:
+0x3d9b 013982 fetch 1 ,mem_3212_dpi_2 
+0x3d9c 013983 branch mouse_p3212_dpi 
+:      013984 mouse_set_p3212_cpi1:
+0x3d9d 013985 fetch 1 ,mem_3212_dpi_1 
+0x3d9e 013986 branch mouse_p3212_dpi 
+:      013987 mouse_set_p3212_cpi3:
+0x3d9f 013988 fetch 1 ,mem_3212_dpi_3 
+0x3da0 013989 branch mouse_p3212_dpi 
+:      013990 mouse_set_p3212_cpi4:
+0x3da1 013991 fetch 1 ,mem_3212_dpi_4 
+:      013992 mouse_p3212_dpi:
+0x3da2 013993 store 1 ,mem_mouse_cpi_count 
+0x3da3 013994 lshift8 pdata ,pdata 
+0x3da4 013995 copy pdata ,rega 
+0x3da5 013996 add pdata ,mouse_p3212_dpi_xaddress ,pdata 
+0x3da6 013997 call twspi_write 
+0x3da7 013998 copy rega ,pdata 
+0x3da8 013999 add pdata ,mouse_p3212_dpi_yaddress ,pdata 
+0x3da9 014000 branch twspi_write 
+:      014002 mouse_seting_3610_dpi:
+0x3daa 014003 fetch 1 ,mem_mouse_dpi 
+0x3dab 014004 beq mouse_dpi_level1 ,mouse_set_p3610_cpi1 
+0x3dac 014005 beq mouse_dpi_level2 ,mouse_set_p3610_cpi2 
+0x3dad 014006 beq mouse_dpi_level3 ,mouse_set_p3610_cpi3 
+0x3dae 014007 beq mouse_dpi_level4 ,mouse_set_p3610_cpi4 
+:      014008 mouse_set_p3610_cpi2:
+0x3daf 014009 fetch 1 ,mem_3610_dpi_2 
+0x3db0 014010 branch mouse_p3610_dpi 
+:      014011 mouse_set_p3610_cpi1:
+0x3db1 014012 fetch 1 ,mem_3610_dpi_1 
+0x3db2 014013 branch mouse_p3610_dpi 
+:      014014 mouse_set_p3610_cpi3:
+0x3db3 014015 fetch 1 ,mem_3610_dpi_3 
+0x3db4 014016 branch mouse_p3610_dpi 
+:      014017 mouse_set_p3610_cpi4:
+0x3db5 014018 fetch 1 ,mem_3610_dpi_4 
+:      014019 mouse_p3610_dpi:
+0x3db6 014020 store 1 ,mem_mouse_cpi_count 
+0x3db7 014021 call mouse_spi_sdio_gpio_pollup 
+0x3db8 014022 fetch 1 ,mem_mouse_cpi_count 
+:      014023 mouse_reset_p3610_dpi:
+0x3db9 014024 add pdata ,0x80 ,pdata 
+0x3dba 014025 lshift8 pdata ,pdata 
+0x3dbb 014026 add pdata ,mouse_p3610_dpi_address ,pdata 
+0x3dbc 014027 copy pdata ,rega 
+0x3dbd 014028 branch mouse_set_sensor_reg 
+:      014030 mouse_p3205_dpi:
+0x3dbe 014031 store 1 ,mem_mouse_cpi_count 
+0x3dbf 014032 call moue_seting_cpi_count 
+0x3dc0 014033 fetch 1 ,mem_mouse_cpi_count 
+0x3dc1 014034 setarg mouse_dpi_address 
+0x3dc2 014035 call twspi_read 
+0x3dc3 014036 and pdata ,0xf8 ,temp 
+0x3dc4 014037 fetch 1 ,mem_mouse_cpi_count 
+0x3dc5 014038 iadd temp ,pdata 
+0x3dc6 014039 lshift8 pdata ,pdata 
+0x3dc7 014040 add pdata ,mouse_dpi_address ,pdata 
+0x3dc8 014041 branch twspi_write 
+:      014044 mouse_init_environment:
+0x3dc9 014045 call app_initflag_check 
+0x3dca 014046 branch mouse_eeprom_load_recon_info ,zero 
+0x3dcb 014047 call mouse_ble_init_address 
+0x3dcc 014048 call mouse_store_eeprom_device_info 
+0x3dcd 014049 branch app_initflag_store 
+:      014052 mouse_24g_pairing_button:
+0x3dce 014053 fetch 2 ,mem_24g_pairing_timer_count 
+0x3dcf 014054 rtn blank 
+0x3dd0 014055 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dd1 014056 rtnbit0 mouse_enable_24g 
+0x3dd2 014057 rtnbit1 mosue_24g_pairing_flag 
+0x3dd3 014058 rtnmark1 mark_24g 
+0x3dd4 014059 call mouse_check_key_gpio 
+0x3dd5 014060 rtnne mouse_lmr_button 
+0x3dd6 014061 call mouse_devce_led_off 
+0x3dd7 014062 arg mosue_24g_pairing_flag ,queue 
+0x3dd8 014063 call mouse_enable_function_flag 
+0x3dd9 014064 setarg 0 
+0x3dda 014065 store 2 ,mem_mouse_direct_timer 
+0x3ddb 014066 store 1 ,mem_mouse_send_blank_timer 
+0x3ddc 014067 call g24_set0_mem_check_dongle_times 
+0x3ddd 014069 fetch 2 ,mem_ui_state_map 
+0x3dde 014070 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x3ddf 014071 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x3de0 014072 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x3de1 014073 call mouse_stop_discovery 
+0x3de2 014074 branch g24_start_pairing_sm1 
+:      014077 mouse_idle:
+0x3de3 014078 call mouse_24g_pairing_button 
+0x3de4 014079 call ui_check_paring_button 
+0x3de5 014080 call mouse_dpi_cheak 
+0x3de6 014081 call mouse_usb_isr 
+0x3de7 014082 call mouse_wheel_check 
+0x3de8 014083 branch mouse_usb_mode 
+:      014084 mouse_usb_isr:
+0x3de9 014085 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dea 014086 rtnbit0 mouse_enable_usb 
+0x3deb 014087 call usb_isr 
+0x3dec 014088 branch usb_offline_state 
+:      014090 mouse_cheak_usb:
+0x3ded 014091 hfetch 1 ,core_usb_addr 
+0x3dee 014092 bbit0 7 ,mouse_usb_no_exsit 
+0x3def 014093 bbit1 7 ,mouse_usb_exsit 
+0x3df0 014094 rtn 
+:      014095 mouse_usb_no_exsit:
+0x3df1 014096 fetch 1 ,mem_usb_addr 
+0x3df2 014097 rtnbit0 7 
+0x3df3 014098 branch soft_reset_chip 
+:      014099 mouse_usb_exsit:
+0x3df4 014100 fetch 1 ,mem_usb_addr 
+0x3df5 014101 rtnbit1 7 
+0x3df6 014102 branch mouse_stop_bluetooth_mode 
+:      014104 mouse_usb_mode:
+0x3df7 014105 call mouse_cheak_usb 
+0x3df8 014106 hfetch 1 ,core_usb_addr 
+0x3df9 014107 store 1 ,mem_usb_addr 
+0x3dfa 014108 rtnbit0 7 
+0x3dfb 014109 call mouse_clkn_check 
+0x3dfc 014110 fetch 4 ,mem_btclk_sensor 
+0x3dfd 014111 fetcht 1 ,mem_wire_usb_interval 
+0x3dfe 014112 iadd temp ,temp 
+0x3dff 014113 copy clkn_bt ,pdata 
+0x3e00 014114 isub temp ,null 
+0x3e01 014115 nrtn positive 
+0x3e02 014116 store 4 ,mem_btclk_sensor 
+0x3e03 014117 call mouse_motion 
+0x3e04 014118 nrtn user 
+0x3e05 014119 jam 4 ,mem_usb_tx_enable 
+0x3e06 014120 branch mouse_wired_to_usb 
+:      014122 mouse_clkn_check:
+0x3e07 014123 fetcht 4 ,mem_btclk_sensor 
+0x3e08 014124 copy clkn_bt ,pdata 
+0x3e09 014125 isub temp ,null 
+0x3e0a 014126 ncall mouse_clkn_timeout ,positive 
+0x3e0b 014127 rtn 
+:      014128 mouse_clkn_timeout:
+0x3e0c 014129 setarg 0 
+0x3e0d 014130 store 4 ,mem_btclk_sensor 
+0x3e0e 014131 rtn 
+:      014135 mouse_wired_to_usb:
+0x3e0f 014136 fetch 1 ,mem_usb_tx_enable 
+0x3e10 014137 rtnbit0 2 
+0x3e11 014138 branch mouse_data_push 
+:      014139 mouse_data_push:
+0x3e12 014140 hfetch 1 ,core_usb_addr 
+0x3e13 014141 rtnbit0 7 
+0x3e14 014142 jam usb_ep2_ms ,mem_usb_ep2_data 
+0x3e15 014143 setarg ms_report_id 
+0x3e16 014144 store 1 ,mem_usb_mouse_data 
+0x3e17 014145 fetch 7 ,mem_mouse_key 
+0x3e18 014146 istore 7 ,contw 
+0x3e19 014147 rtn 
+:      014150 mouse_enable_clock_qdecoder:
+0x3e1a 014151 hfetch 2 ,core_clkoff 
+0x3e1b 014152 set0 clock_off_qdecoder ,pdata 
+0x3e1c 014153 hstore 2 ,core_clkoff 
+0x3e1d 014154 rtn 
+:      014156 mouse_param_init:
+0x3e1e 014157 setarg 0x8c00 
+0x3e1f 014158 store 2 ,mem_ui_uuid_table 
+0x3e20 014159 setarg 0x8e7a 
+0x3e21 014160 store 2 ,mem_ui_le_uuid_table 
+0x3e22 014161 setarg 0x2402 
+0x3e23 014162 store 2 ,mem_fcomp_mul 
+0x3e24 014163 setarg 0x2580 
+0x3e25 014164 store 3 ,mem_class 
+0x3e26 014165 jam 3 ,mem_lpm_mult_timeout 
+0x3e27 014166 jam 8 ,mem_lpm_overhead 
+0x3e28 014167 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x3e29 014168 setarg 0x0200 
+0x3e2a 014169 store 2 ,mem_lpm_interval 
+0x3e2b 014170 jam 0x17 ,mem_le_local_mtu 
+0x3e2c 014171 jam 0x17 ,mem_le_remote_mtu 
+0x3e2d 014173 setarg 0x0a77 
+0x3e2e 014174 store 2 ,mem_spi_init_clk 
+0x3e2f 014190 setsect 0 ,0x306 
+0x3e30 014191 setsect 1 ,0x4440 
+0x3e31 014192 setsect 2 ,0x10000 
+0x3e32 014193 setsect 3 ,0x4408 
+0x3e33 014194 store 9 ,mem_all_uuid_16bits 
+0x3e34 014195 setsect 0 ,0x1224 
+0x3e35 014196 setsect 1 ,0x4000 
+0x3e36 014197 setsect 2 ,0x0 
+0x3e37 014198 istore 5 ,contw 
+0x3e38 014200 setsect 0 ,0x3ffff 
+0x3e39 014201 setsect 1 ,0x2fe23 
+0x3e3a 014202 setsect 2 ,0x199d9 
+0x3e3b 014203 setsect 3 ,0x20d 
+0x3e3c 014204 store 8 ,mem_features 
+0x3e3d 014206 setarg 0x012c 
+0x3e3e 014207 store 2 ,mem_24g_pairing_timer_count 
+0x3e3f 014208 call le_modified_name 
+0x3e40 014209 fetch mouse_flag_len ,mem_mouse_flag 
+0x3e41 014210 rtnbit0 mouse_enable_gpio_control_adc_sensor 
+0x3e42 014211 call mouse_sensor_set_angle 
+0x3e43 014212 branch mouse_select_adc 
+:      014214 mouse_sensor_set_angle:
+0x3e44 014215 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e45 014216 call gpio_config_input 
+0x3e46 014217 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e47 014218 call gpio_get_bit 
+0x3e48 014219 jam mouse_3clk_angle ,mem_config_sensor_angle 
+0x3e49 014220 rtn true 
+0x3e4a 014221 jam mouse_12clk_angle ,mem_config_sensor_angle 
+0x3e4b 014222 rtn 
+:      014224 mouse_select_adc:
+0x3e4c 014225 fetcht 1 ,mem_select_adc_gpio 
+0x3e4d 014226 call gpio_config_input 
+0x3e4e 014227 fetcht 1 ,mem_select_adc_gpio 
+0x3e4f 014228 call gpio_get_bit 
+0x3e50 014229 jam adc_config_vinlpm ,mem_adc_config_flag 
+0x3e51 014230 rtn true 
+0x3e52 014231 jam adc_config_gpio ,mem_adc_config_flag 
+0x3e53 014232 rtn 
+:      014235 mouse_adc_init:
+0x3e54 014236 fetch 1 ,mem_adc_config_flag 
+0x3e55 014237 beq adc_config_vinlpm ,mouse_adc_init_data_vinlpm 
+0x3e56 014238 beq adc_config_hvin ,mouse_adc_init_data_hvin 
+0x3e57 014239 beq adc_config_gpio ,mouse_adc_init_data_io 
+0x3e58 014240 branch mouse_adc_init_data_vinlpm 
+:      014242 mouse_adc_init_data_vinlpm:
+0x3e59 014243 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x3e5a 014244 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x3e5b 014245 isub temp ,pdata 
+0x3e5c 014246 mul32 pdata ,20 ,pdata 
+0x3e5d 014247 div pdata ,100 
+0x3e5e 014248 call wait_div_end 
+0x3e5f 014249 quotient pdata 
+0x3e60 014250 store 2 ,mem_adc_reference_voltage 
+0x3e61 014251 rtn 
+:      014252 mouse_adc_init_data_hvin:
+0x3e62 014253 fetcht 2 ,mem_1v_adc_hvin_data 
+0x3e63 014254 fetch 2 ,mem_5v_adc_hvin_data 
+0x3e64 014255 isub temp ,pdata 
+0x3e65 014256 mul32 pdata ,230 ,pdata 
+0x3e66 014257 div pdata ,400 
+0x3e67 014258 call wait_div_end 
+0x3e68 014259 quotient pdata 
+0x3e69 014260 store 2 ,mem_adc_reference_voltage 
+0x3e6a 014261 rtn 
+:      014262 mouse_adc_init_data_io:
+0x3e6b 014263 fetch 2 ,mem_1v_adc_io_data 
+0x3e6c 014264 store 2 ,mem_adc_reference_voltage 
+0x3e6d 014265 rtn 
+:      014266 mouse_gpio_init:
+0x3e6e 014267 fetcht 1 ,mem_eeprom_wp_gpio 
+0x3e6f 014268 call gpio_config_output 
+0x3e70 014269 call usb_offline_check_init 
+0x3e71 014270 fetcht 1 ,mem_lbutton_gpio 
+0x3e72 014271 call gpio_config_input 
+0x3e73 014272 fetcht 1 ,mem_rbutton_gpio 
+0x3e74 014273 call gpio_config_input 
+0x3e75 014274 fetcht 1 ,mem_mbutton_gpio 
+0x3e76 014275 call gpio_config_input 
+0x3e77 014276 fetcht 1 ,mem_sensor_data_gpio 
+0x3e78 014277 call gpio_config_input 
+0x3e79 014279 fetcht 1 ,mem_sensor_reset_gpio 
+0x3e7a 014280 call gpio_config_output 
+0x3e7b 014282 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e7c 014283 call gpio_config_input 
+0x3e7d 014285 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e7e 014286 call gpio_config_input 
+0x3e7f 014288 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e80 014289 call gpio_config_input 
+0x3e81 014290 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e82 014291 call gpio_config_input 
+0x3e83 014293 fetcht 1 ,mem_bk_button_gpio 
+0x3e84 014294 call gpio_config_input 
+0x3e85 014295 fetcht 1 ,mem_fw_button_gpio 
+0x3e86 014296 call gpio_config_input 
+0x3e87 014298 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
+0x3e88 014299 call gpio_config_output 
+0x3e89 014301 fetcht 1 ,mem_config_device1_led_gpio 
+0x3e8a 014302 call gpio_config_output 
+0x3e8b 014304 fetcht 1 ,mem_config_device2_led_gpio 
+0x3e8c 014305 call gpio_config_output 
+0x3e8d 014307 fetcht 1 ,mem_config_device3_led_gpio 
+0x3e8e 014308 call gpio_config_output 
+0x3e8f 014310 fetcht 1 ,mem_dpi_led_gpio 
+0x3e90 014311 call gpio_config_output 
+0x3e91 014313 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3e92 014314 call gpio_config_input 
+0x3e93 014316 fetcht 1 ,mem_config_bt_button_gpio 
+0x3e94 014317 call gpio_config_input 
+0x3e95 014319 fetcht 1 ,mem_dpi_button_gpio 
+0x3e96 014320 branch gpio_config_input 
+:      014322 mouse_wheel_gpio_set_wake:
+0x3e97 014323 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e98 014324 call gpio_set_wake_by_current_state 
+0x3e99 014325 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e9a 014326 call gpio_set_wake_by_current_state 
+0x3e9b 014327 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e9c 014328 call gpio_set_wake_by_current_state 
+0x3e9d 014329 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e9e 014330 branch gpio_set_wake_by_current_state 
+:      014332 mouse_before_hibernate_wheel_gpio_set:
+0x3e9f 014333 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ea0 014334 call mouse_gpio_set_pupd_by_input 
+0x3ea1 014335 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ea2 014336 call mouse_gpio_set_pupd_by_input 
+0x3ea3 014337 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ea4 014338 call mouse_gpio_set_pupd_by_input 
+0x3ea5 014339 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ea6 014340 branch mouse_gpio_set_pupd_by_input 
+:      014342 mouse_gpio_set_pupd_by_input:
+0x3ea7 014343 sub temp ,ui_button_gpio_disable ,null 
+0x3ea8 014344 rtn zero 
+0x3ea9 014345 and temp ,0x7f ,queue 
+0x3eaa 014346 hfetch 4 ,core_gpio_in 
+0x3eab 014347 qisolate1 pdata 
+0x3eac 014348 hfetch 4 ,core_gpio_pu0 
+0x3ead 014349 qsetflag true ,pdata 
+0x3eae 014350 hstore 4 ,core_gpio_pu0 
+0x3eaf 014351 hfetch 4 ,core_gpio_pd0 
+0x3eb0 014352 nqsetflag true ,pdata 
+0x3eb1 014353 hstore 4 ,core_gpio_pd0 
+0x3eb2 014354 rtn 
+:      014356 mouse_before_hibernate:
+0x3eb3 014357 enable user 
+0x3eb4 014358 hfetch 4 ,0x8138 
+0x3eb5 014359 setflag user ,26 ,pdata 
+0x3eb6 014360 hstore 4 ,core_lpm_reg 
+0x3eb7 014361 call lpm_write_ctrl 
+0x3eb8 014362 call mouse_devce_led_off 
+0x3eb9 014363 call mouse_before_hibernate_wheel_gpio_set 
+0x3eba 014365 branch mouse_lpm_before_common 
+:      014369 mouse_process_lpm_before:
+0x3ebb 014370 call mouse_lpm_before_common 
+0x3ebc 014371 fetch 1 ,mem_lpm_current_mult 
+0x3ebd 014372 nrtn blank 
+0x3ebe 014373 branch gpio_clr_wake 
+:      014375 mouse_lpm_before_common:
+0x3ebf 014376 call mouse_wheel_check 
+0x3ec0 014377 arg mouse_spi1_clk_gpio ,temp 
+0x3ec1 014378 fetch mouse_flag_len ,mem_mouse_flag 
+0x3ec2 014379 isolate1 mouse_enable_spi2 ,pdata 
+0x3ec3 014380 call mouse_spi_clk_gpio ,true 
+0x3ec4 014381 call gpio_config_output 
+0x3ec5 014382 call twspi_disable 
+0x3ec6 014386 fetcht 1 ,mem_lbutton_gpio 
+0x3ec7 014387 call gpio_set_wake_by_current_state 
+0x3ec8 014388 fetcht 1 ,mem_rbutton_gpio 
+0x3ec9 014389 call gpio_set_wake_by_current_state 
+0x3eca 014390 fetcht 1 ,mem_mbutton_gpio 
+0x3ecb 014391 call gpio_set_wake_by_current_state 
+0x3ecc 014393 fetcht 1 ,mem_bk_button_gpio 
+0x3ecd 014394 call gpio_set_wake_by_current_state 
+0x3ece 014395 fetcht 1 ,mem_fw_button_gpio 
+0x3ecf 014396 call gpio_set_wake_by_current_state 
+0x3ed0 014397 fetcht 1 ,mem_dpi_button_gpio 
+0x3ed1 014398 call gpio_set_wake_by_current_state 
+0x3ed2 014399 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3ed3 014400 call gpio_set_wake_by_current_state 
+0x3ed4 014401 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ed5 014402 call gpio_set_wake_by_current_state 
+0x3ed6 014403 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ed7 014404 call gpio_set_wake_by_current_state 
+0x3ed8 014405 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ed9 014406 call gpio_set_wake_by_current_state 
+0x3eda 014407 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3edb 014408 call gpio_set_wake_by_current_state 
+0x3edc 014409 fetcht 1 ,mem_sensor_data_gpio 
+0x3edd 014410 branch gpio_set_wake 
+:      014414 mouse_spi_clk_gpio:
+0x3ede 014415 arg mouse_spi2_clk_gpio ,temp 
+0x3edf 014416 rtn 
+:      014418 mouse_wheel_check:
+0x3ee0 014419 bpatch patch1c_4 ,mem_patch1c 
+0x3ee1 014420 call mouse_t_wheel_scan 
+0x3ee2 014421 call mouse_wheel_scan 
+0x3ee3 014422 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3ee4 014423 fetcht 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee5 014424 store 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee6 014425 isub temp ,null 
+0x3ee7 014426 nbranch app_lpm_wake_auto_lock ,zero 
+0x3ee8 014427 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3ee9 014428 fetcht 1 ,mem_mwheel_b_old_pinlevel 
+0x3eea 014429 store 1 ,mem_mwheel_b_old_pinlevel 
+0x3eeb 014430 isub temp ,null 
+0x3eec 014431 nbranch app_lpm_wake_auto_lock ,zero 
+0x3eed 014432 rtn 
+:      014433 mouse_t_wheel_scan:
+0x3eee 014434 fetch 1 ,mem_whee_ta_data_gpio 
+0x3eef 014435 rtneq gpio_disable 
+0x3ef0 014436 arg 0 ,rega 
+0x3ef1 014437 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ef2 014438 call gpio_get_bit 
+0x3ef3 014439 setflag true ,0 ,rega 
+0x3ef4 014440 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ef5 014441 call gpio_get_bit 
+0x3ef6 014442 setflag true ,1 ,rega 
+0x3ef7 014443 copy rega ,pdata 
+0x3ef8 014444 store 1 ,mem_wheel_tb_new_pinlevel 
+0x3ef9 014445 beq 0x01 ,mouse_t_wheel_scan_judge1 
+0x3efa 014446 beq 0x02 ,mouse_t_wheel_scan_judge2 
+0x3efb 014447 fetch 1 ,mem_wheel_tog 
+0x3efc 014448 bbit1 7 ,mouse_t_wheel_scan_judge3 
+0x3efd 014449 rtn 
+:      014451 mouse_t_wheel_scan_judge1:
+0x3efe 014452 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3eff 014453 beq 0 ,mouse_t_wheel_scan_judge11 
+0x3f00 014454 beq 3 ,mouse_t_wheel_scan_judge12 
+0x3f01 014455 rtn 
+:      014456 mouse_t_wheel_scan_judge2:
+0x3f02 014457 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3f03 014458 beq 0 ,mouse_t_wheel_scan_judge21 
+0x3f04 014459 beq 3 ,mouse_t_wheel_scan_judge22 
+0x3f05 014460 rtn 
+:      014461 mouse_t_wheel_scan_judge11:
+0x3f06 014462 jam 0x82 ,mem_wheel_tog 
+0x3f07 014463 rtn 
+:      014464 mouse_t_wheel_scan_judge12:
+0x3f08 014465 jam 0x81 ,mem_wheel_tog 
+0x3f09 014466 rtn 
+:      014467 mouse_t_wheel_scan_judge21:
+0x3f0a 014468 jam 0x80 ,mem_wheel_tog 
+0x3f0b 014469 rtn 
+:      014470 mouse_t_wheel_scan_judge22:
+0x3f0c 014471 jam 0x83 ,mem_wheel_tog 
+0x3f0d 014472 rtn 
+:      014473 mouse_t_wheel_scan_judge3:
+0x3f0e 014474 fetch 1 ,mem_wheel_tog 
+0x3f0f 014475 set0 7 ,pdata 
+0x3f10 014476 store 1 ,mem_wheel_tog 
+0x3f11 014477 beq 0 ,mouse_t_wheel_scan_judge30 
+0x3f12 014478 beq 1 ,mouse_t_wheel_scan_judge31 
+0x3f13 014479 beq 2 ,mouse_t_wheel_scan_judge32 
+0x3f14 014480 beq 3 ,mouse_t_wheel_scan_judge33 
+0x3f15 014481 rtn 
+:      014482 mouse_t_wheel_scan_judge30:
+0x3f16 014483 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f17 014484 beq 3 ,mouse_wheel_t_forward 
+0x3f18 014485 rtn 
+:      014486 mouse_t_wheel_scan_judge31:
+0x3f19 014487 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1a 014488 beq 0 ,mouse_wheel_t_forward 
+0x3f1b 014489 rtn 
+:      014490 mouse_t_wheel_scan_judge32:
+0x3f1c 014491 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1d 014492 beq 3 ,mouse_wheel_t_back 
+0x3f1e 014493 rtn 
+:      014494 mouse_t_wheel_scan_judge33:
+0x3f1f 014495 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f20 014496 beq 0 ,mouse_wheel_t_back 
+0x3f21 014497 rtn 
+:      014498 mouse_wheel_t_forward:
+0x3f22 014499 fetch 1 ,mem_mouse_tz_data_count1 
+0x3f23 014500 increase 1 ,pdata 
+0x3f24 014501 store 1 ,mem_mouse_tz_data_count1 
+0x3f25 014502 sub pdata ,1 ,null 
+0x3f26 014503 rtn positive 
+0x3f27 014504 jam 0 ,mem_mouse_tz_data_count1 
+0x3f28 014505 fetch 1 ,mem_mouse_tz_data 
+0x3f29 014506 increase 1 ,pdata 
+0x3f2a 014507 store 1 ,mem_mouse_tz_data 
+0x3f2b 014508 rtn 
+:      014509 mouse_wheel_t_back:
+0x3f2c 014510 fetch 1 ,mem_mouse_tz_data_count 
+0x3f2d 014511 increase 1 ,pdata 
+0x3f2e 014512 store 1 ,mem_mouse_tz_data_count 
+0x3f2f 014513 sub pdata ,1 ,null 
+0x3f30 014514 rtn positive 
+0x3f31 014515 jam 0 ,mem_mouse_tz_data_count 
+0x3f32 014516 fetch 1 ,mem_mouse_tz_data 
+0x3f33 014517 increase -1 ,pdata 
+0x3f34 014518 store 1 ,mem_mouse_tz_data 
+0x3f35 014519 rtn 
+:      014522 mouse_wheel_scan:
+0x3f36 014523 fetch 1 ,mem_whee_a_data_gpio 
+0x3f37 014524 rtneq gpio_disable 
+0x3f38 014525 arg 0 ,rega 
+0x3f39 014526 fetcht 1 ,mem_whee_a_data_gpio 
+0x3f3a 014527 call gpio_get_bit 
+0x3f3b 014528 setflag true ,0 ,rega 
+0x3f3c 014529 fetcht 1 ,mem_whee_b_data_gpio 
+0x3f3d 014530 call gpio_get_bit 
+0x3f3e 014531 setflag true ,1 ,rega 
+0x3f3f 014532 copy rega ,pdata 
+0x3f40 014533 store 1 ,mem_mwheel_b_new_pinlevel 
+0x3f41 014534 beq 0x01 ,mouse_wheel_scan_judge1 
+0x3f42 014535 beq 0x02 ,mouse_wheel_scan_judge2 
+0x3f43 014536 fetch 1 ,mem_mwheel_tog 
+0x3f44 014537 bbit1 7 ,mouse_wheel_scan_judge3 
+0x3f45 014538 rtn 
+:      014540 mouse_wheel_scan_judge1:
+0x3f46 014541 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f47 014542 beq 0 ,mouse_wheel_scan_judge11 
+0x3f48 014543 beq 3 ,mouse_wheel_scan_judge12 
+0x3f49 014544 rtn 
+:      014545 mouse_wheel_scan_judge2:
+0x3f4a 014546 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f4b 014547 beq 0 ,mouse_wheel_scan_judge21 
+0x3f4c 014548 beq 3 ,mouse_wheel_scan_judge22 
+0x3f4d 014549 rtn 
+:      014550 mouse_wheel_scan_judge11:
+0x3f4e 014551 jam 0x82 ,mem_mwheel_tog 
+0x3f4f 014552 rtn 
+:      014553 mouse_wheel_scan_judge12:
+0x3f50 014554 jam 0x81 ,mem_mwheel_tog 
+0x3f51 014555 rtn 
+:      014556 mouse_wheel_scan_judge21:
+0x3f52 014557 jam 0x80 ,mem_mwheel_tog 
+0x3f53 014558 rtn 
+:      014559 mouse_wheel_scan_judge22:
+0x3f54 014560 jam 0x83 ,mem_mwheel_tog 
+0x3f55 014561 rtn 
+:      014562 mouse_wheel_scan_judge3:
+0x3f56 014563 fetch 1 ,mem_mwheel_tog 
+0x3f57 014564 set0 7 ,pdata 
+0x3f58 014565 store 1 ,mem_mwheel_tog 
+0x3f59 014566 beq 0 ,mouse_wheel_scan_judge30 
+0x3f5a 014567 beq 1 ,mouse_wheel_scan_judge31 
+0x3f5b 014568 beq 2 ,mouse_wheel_scan_judge32 
+0x3f5c 014569 beq 3 ,mouse_wheel_scan_judge33 
+0x3f5d 014570 rtn 
+:      014571 mouse_wheel_scan_judge30:
+0x3f5e 014572 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f5f 014573 beq 3 ,mouse_wheel_forward 
+0x3f60 014574 rtn 
+:      014575 mouse_wheel_scan_judge31:
+0x3f61 014576 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f62 014577 beq 0 ,mouse_wheel_forward 
+0x3f63 014578 rtn 
+:      014579 mouse_wheel_scan_judge32:
+0x3f64 014580 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f65 014581 beq 3 ,mouse_wheel_back 
+0x3f66 014582 rtn 
+:      014583 mouse_wheel_scan_judge33:
+0x3f67 014584 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f68 014585 beq 0 ,mouse_wheel_back 
+0x3f69 014586 rtn 
+:      014587 mouse_wheel_forward:
+0x3f6a 014588 jam 0 ,mem_mouse_z_data_count1 
+0x3f6b 014589 fetch 1 ,mem_mouse_z_data 
+0x3f6c 014590 increase 1 ,pdata 
+0x3f6d 014591 store 1 ,mem_mouse_z_data 
+0x3f6e 014592 rtn 
+:      014593 mouse_wheel_back:
+0x3f6f 014594 jam 0 ,mem_mouse_z_data_count 
+0x3f70 014595 fetch 1 ,mem_mouse_z_data 
+0x3f71 014596 increase -1 ,pdata 
+0x3f72 014597 store 1 ,mem_mouse_z_data 
+0x3f73 014598 rtn 
+:      014601 mouse_hid_connected:
+0x3f74 014602 setarg hid_handshake_timeout 
+0x3f75 014603 store 1 ,mem_hid_handshake_timer_count 
+0x3f76 014604 rtn 
+:      014606 mouse_send_process:
+0x3f77 014607 fetch 1 ,mem_app_handshake_flag 
+0x3f78 014608 rtn blank 
+0x3f79 014609 call l2cap_malloc_is_fifo_nearly_full 
+0x3f7a 014610 nrtn blank 
+0x3f7b 014611 fetch mouse_flag_len ,mem_mouse_flag 
+0x3f7c 014612 bbit1 mosue_24g_pairing_flag ,mouse_send_empty_data 
+0x3f7d 014613 bbit1 mouse_select_device_flag ,mouse_send_empty_data 
+0x3f7e 014614 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x3f7f 014615 call mouse_motion 
+0x3f80 014616 nrtn user 
+:      014617 mouse_send_data:
+0x3f81 014618 arg 9 ,rega 
+0x3f82 014619 call hid_malloc_tx_buff 
+0x3f83 014620 fetch 2 ,mem_hid_int_remote_cid 
+0x3f84 014621 istore 2 ,contw 
+0x3f85 014622 setarg 0x02a1 
+0x3f86 014623 istore 2 ,contw 
+0x3f87 014624 fetch 7 ,mem_mouse_key 
+0x3f88 014625 istore 7 ,contw 
+0x3f89 014626 rtn 
+:      014629 mouse_send_empty_data:
+0x3f8a 014630 setarg 0 
+0x3f8b 014631 store 7 ,mem_mouse_key 
+0x3f8c 014632 branch mouse_send_data 
+:      014635 mouse_no_data_timer_init:
+0x3f8d 014636 fetch 2 ,mem_mouse_no_data_timeout 
+0x3f8e 014637 store 2 ,mem_mouse_no_data_timer 
+0x3f8f 014638 rtn 
+:      014641 mouse_fill_data_le:
+0x3f90 014642 bpatch patch1c_5 ,mem_patch1c 
+0x3f91 014643 arg 7 ,rega 
+0x3f92 014644 fetcht 2 ,mem_le_notify_handle 
+0x3f93 014645 call le_att_malloc_tx_notify 
+0x3f94 014646 fetch 7 ,mem_mouse_key 
+0x3f95 014647 istore 7 ,contw 
+0x3f96 014648 rtn 
+:      014650 mouse_motion:
+0x3f97 014651 bpatch patch1c_6 ,mem_patch1c 
+0x3f98 014652 disable user 
+0x3f99 014653 setarg 0 
+0x3f9a 014654 store 6 ,mem_mouse_x 
+0x3f9b 014655 call mouse_cheak_sensor_data 
+0x3f9c 014656 call mouse_zwheel 
+0x3f9d 014657 call mouse_t_zwheel 
+0x3f9e 014658 call mouse_key 
+0x3f9f 014659 nrtn user 
+0x3fa0 014660 call mouse_no_data_timer_init 
+0x3fa1 014661 arg mouse_statue_up_flag ,queue 
+0x3fa2 014662 branch mouse_enable_function_flag 
+:      014664 motion_6clk_direction_dispose:
+0x3fa3 014665 fetch 2 ,mem_mouse_x 
+0x3fa4 014666 sub pdata ,0 ,pdata 
+0x3fa5 014667 store 2 ,mem_mouse_x 
+0x3fa6 014668 branch enable_user 
+:      014669 motion_12clk_direction_dispose:
+0x3fa7 014670 fetch 2 ,mem_mouse_y 
+0x3fa8 014671 sub pdata ,0 ,pdata 
+0x3fa9 014672 store 2 ,mem_mouse_y 
+0x3faa 014673 branch enable_user 
+:      014674 motion_9clk_direction_dispose:
+0x3fab 014675 fetch 2 ,mem_mouse_y 
+0x3fac 014676 sub pdata ,0 ,pdata 
+0x3fad 014677 store 2 ,mem_mouse_y 
+0x3fae 014678 fetch 2 ,mem_mouse_x 
+0x3faf 014679 sub pdata ,0 ,pdata 
+0x3fb0 014680 store 2 ,mem_mouse_x 
+0x3fb1 014681 call mouse_sensor_data_swap_places 
+0x3fb2 014682 branch enable_user 
+:      014683 motion_3clk_direction_dispose:
+0x3fb3 014684 call mouse_sensor_data_swap_places 
+0x3fb4 014685 branch enable_user 
+:      014686 mouse_cheak_sensor_data:
+0x3fb5 014687 fetch 1 ,mem_spi_write_flash_sm 
+0x3fb6 014688 rtnne flash_sm_no_buys 
+0x3fb7 014689 fetch 1 ,mem_config_sensor_type 
+0x3fb8 014690 beq p3205 ,mouse_p32xx_sensor_motion 
+0x3fb9 014691 beq p3065 ,mouse_p32xx_sensor_motion 
+0x3fba 014692 beq ka8 ,mouse_p32xx_sensor_motion 
+0x3fbb 014693 beq p3204 ,mouse_p32xx_sensor_motion 
+0x3fbc 014694 beq p3212 ,mouse_p3212_sensor_motion 
+0x3fbd 014695 beq p3610 ,mouse_p3610_sensor_motion 
+0x3fbe 014696 beq p3065_xy ,mouse_p32xx_sensor_motion 
+0x3fbf 014697 branch mouse_p32xx_sensor_motion 
+:      014699 mouse_clear_sensor_data:
+0x3fc0 014700 fetch 1 ,mem_mouse_move_flag 
+0x3fc1 014701 call mouse_read_sensor_common ,blank 
+0x3fc2 014702 jam 1 ,mem_mouse_move_flag 
+0x3fc3 014703 rtn 
+:      014706 mouse_p3212_sensor_motion:
+0x3fc4 014707 call mouse_clear_sensor_data 
+0x3fc5 014708 fetcht 1 ,mem_sensor_data_gpio 
+0x3fc6 014709 call gpio_get_bit 
+0x3fc7 014710 nrtn true 
+:      014711 mouse_p3212_sensor_motion_1:
+0x3fc8 014712 setarg pan_reg_pid_l 
+0x3fc9 014713 call twspi_read 
+0x3fca 014714 bne p32xx_id1 ,mouse_twspi_reset 
+0x3fcb 014715 setarg pan_reg_motion_staus 
+0x3fcc 014716 call twspi_read 
+0x3fcd 014717 rtnbit0 7 
+0x3fce 014718 call mouse_read_sensor_common 
+0x3fcf 014719 call mouse_read_3212sensor_xy_high 
+0x3fd0 014720 store 1 ,mem_mouse_xy_h 
+0x3fd1 014721 rshift4 pdata ,pdata 
+0x3fd2 014722 call extsign_bit3 
+0x3fd3 014723 store 1 ,mem_mouse_x + 1 
+0x3fd4 014724 fetch 1 ,mem_mouse_xy_h 
+0x3fd5 014725 and pdata ,0x0f ,pdata 
+0x3fd6 014726 call extsign_bit3 
+0x3fd7 014727 store 1 ,mem_mouse_y + 1 
+0x3fd8 014728 fetch 1 ,mem_config_sensor_angle 
+0x3fd9 014729 beq mouse_6clk_angle ,motion_6clk_direction_dispose 
+0x3fda 014730 beq mouse_9clk_angle ,motion_9clk_direction_dispose 
+0x3fdb 014731 beq mouse_12clk_angle ,motion_12clk_direction_dispose 
+0x3fdc 014732 beq mouse_3clk_angle ,motion_3clk_direction_dispose 
+0x3fdd 014733 rtn 
+:      014735 mouse_read_3212sensor_xy_high:
+0x3fde 014736 setarg 0x12 
+0x3fdf 014737 branch twspi_read 
+:      014739 mouse_p3065_judge:
+0x3fe0 014740 beq p3065_id1 ,mouse_p32xx_sensor_motion_1 
+0x3fe1 014741 branch mouse_twspi_reset 
+:      014743 mouse_p32xx_sensor_motion:
+0x3fe2 014744 call mouse_clear_sensor_data 
+0x3fe3 014745 disable user 
+0x3fe4 014746 fetcht 1 ,mem_sensor_data_gpio 
+0x3fe5 014747 call gpio_get_bit 
+0x3fe6 014748 nrtn true 
+:      014749 mouse_p32xx_sensor_motion_2:
+0x3fe7 014750 setarg pan_reg_pid_l 
+0x3fe8 014751 call twspi_read 
+0x3fe9 014752 bne p32xx_id1 ,mouse_p3065_judge 
+:      014753 mouse_p32xx_sensor_motion_1:
+0x3fea 014754 setarg pan_reg_motion_staus 
+0x3feb 014755 call twspi_read 
+0x3fec 014756 rtnbit0 7 
+0x3fed 014757 call mouse_read_sensor_common 
+0x3fee 014758 fetch 1 ,mem_mouse_x 
+0x3fef 014759 call extsign 
+0x3ff0 014760 store 2 ,mem_mouse_x 
+0x3ff1 014761 fetch 1 ,mem_mouse_y 
+0x3ff2 014762 call extsign 
+0x3ff3 014763 store 2 ,mem_mouse_y 
+0x3ff4 014764 fetch 1 ,mem_config_sensor_angle 
+0x3ff5 014765 beq mouse_6clk_angle ,motion32xx_6clk_direction_selection 
+0x3ff6 014766 beq mouse_9clk_angle ,motion32xx_9clk_direction_selection 
+0x3ff7 014767 beq mouse_12clk_angle ,motion32xx_12clk_direction_selection 
+0x3ff8 014768 beq mouse_3clk_angle ,motion32xx_3clk_direction_selection 
+0x3ff9 014769 rtn 
+:      014771 motion32xx_6clk_direction_selection:
+0x3ffa 014772 call motion_6clk_direction_dispose 
+0x3ffb 014773 branch mouse_sensor_sdio_low 
+:      014774 motion32xx_9clk_direction_selection:
+0x3ffc 014775 call motion_9clk_direction_dispose 
+0x3ffd 014776 branch mouse_sensor_sdio_low 
+:      014777 motion32xx_12clk_direction_selection:
+0x3ffe 014778 call motion_12clk_direction_dispose 
+0x3fff 014779 branch mouse_sensor_sdio_low 
+:      014780 motion32xx_3clk_direction_selection:
+0x4000 014781 call motion_3clk_direction_dispose 
+0x4001 014782 branch mouse_sensor_sdio_low 
+:      014784 mouse_sensor_data_swap_places:
+0x4002 014785 fetch 2 ,mem_mouse_y 
+0x4003 014786 fetcht 2 ,mem_mouse_x 
+0x4004 014787 store 2 ,mem_mouse_x 
+0x4005 014788 storet 2 ,mem_mouse_y 
+0x4006 014789 rtn 
+:      014791 mouse_p3610sensor_read:
+0x4007 014792 call spi_ncs_enable 
+0x4008 014793 nop 100 
+0x4009 014794 copy regb ,pdata 
+0x400a 014795 call twspi_read 
+0x400b 014796 copy pdata ,regb 
+0x400c 014797 call spi_ncs_disable 
+0x400d 014798 nop 100 
+0x400e 014799 copy regb ,pdata 
+0x400f 014800 rtn 
+:      014801 mouse_p3610_sensor_motion:
+0x4010 014802 disable user 
+0x4011 014803 fetcht 1 ,mem_sensor_data_gpio 
+0x4012 014804 call gpio_get_bit 
+0x4013 014805 nrtn true 
+0x4014 014806 arg pan_reg_motion_staus ,regb 
+0x4015 014807 call mouse_p3610sensor_read 
+0x4016 014808 rtnbit0 7 
+0x4017 014809 arg pan_reg_pid_l ,regb 
+0x4018 014810 call mouse_p3610sensor_read 
+0x4019 014811 store 1 ,mem_sensor_id1 
+0x401a 014812 bne p3610_id1 ,mouse_init_3610sensor_reset 
+0x401b 014813 fetch 1 ,mem_mouse_move_flag 
+0x401c 014814 call mouse_read_sensor3610_data ,blank 
+0x401d 014815 jam 1 ,mem_mouse_move_flag 
+0x401e 014816 call mouse_read_sensor3610_data 
+0x401f 014817 fetch 1 ,mem_mouse_xy_h 
+0x4020 014818 rshift4 pdata ,pdata 
+0x4021 014819 call extsign_bit3 
+0x4022 014820 store 1 ,mem_mouse_x + 1 
+0x4023 014821 fetch 1 ,mem_mouse_xy_h 
+0x4024 014822 and pdata ,0x0f ,pdata 
+0x4025 014823 call extsign_bit3 
+0x4026 014824 store 1 ,mem_mouse_y + 1 
+0x4027 014825 fetch 1 ,mem_config_sensor_angle 
+0x4028 014826 beq 0 ,motion3610_6clk_direction_selection 
+0x4029 014827 beq 1 ,motion3610_9clk_direction_selection 
+0x402a 014828 beq 2 ,motion3610_12clk_direction_selection 
+0x402b 014829 beq 3 ,motion3610_3clk_direction_selection 
+0x402c 014830 rtn 
+:      014832 mouse_3610_smart_select:
+0x402d 014833 fetch 1 ,mem_sensor_smart_flag 
+0x402e 014834 beq p3610_smart_enable ,mouse_3610_smart_disable 
+0x402f 014835 beq p3610_smart_disable ,mouse_3610_smart_enable 
+0x4030 014836 rtn 
+:      014839 motion3610_6clk_direction_selection:
+0x4031 014840 call motion_6clk_direction_dispose 
+0x4032 014841 branch mouse_3610_smart_select 
+:      014843 motion3610_12clk_direction_selection:
+0x4033 014844 call motion_12clk_direction_dispose 
+0x4034 014845 branch mouse_3610_smart_select 
+:      014847 motion3610_9clk_direction_selection:
+0x4035 014848 call motion_9clk_direction_dispose 
+0x4036 014849 branch mouse_3610_smart_select 
+:      014851 motion3610_3clk_direction_selection:
+0x4037 014852 call motion_3clk_direction_dispose 
+0x4038 014853 branch mouse_3610_smart_select 
+:      014855 mouse_read_sensor3610_data:
+0x4039 014856 call spi_ncs_enable 
+0x403a 014857 call mouse_read_sensor_common 
+0x403b 014858 arg 5 ,pdata 
+0x403c 014859 call twspi_read 
+0x403d 014860 store 1 ,mem_mouse_xy_h 
+0x403e 014861 arg 7 ,pdata 
+0x403f 014862 call twspi_read 
+0x4040 014863 store 1 ,mem_sensor_shutter_hi 
+0x4041 014864 arg 8 ,pdata 
+0x4042 014865 call twspi_read 
+0x4043 014866 store 1 ,mem_sensor_shutter_lo 
+0x4044 014867 branch spi_ncs_disable 
+:      014870 mouse_3610_smart_enable:
+0x4045 014871 fetch 1 ,mem_sensor_shutter_hi 
+0x4046 014872 rtnne 0 
+0x4047 014873 fetch 1 ,mem_sensor_shutter_lo 
+0x4048 014874 sub pdata ,45 ,null 
+0x4049 014875 rtn positive 
+0x404a 014876 jam p3610_smart_enable ,mem_sensor_smart_flag 
+0x404b 014877 setarg 0xba41 
+0x404c 014878 call sensor_write 
+0x404d 014879 setarg 0x0032 
+0x404e 014880 call sensor_write 
+0x404f 014881 setarg 0xb541 
+0x4050 014882 branch sensor_write 
+:      014883 mouse_3610_smart_disable:
+0x4051 014884 fetch 1 ,mem_sensor_shutter_hi 
+0x4052 014885 rtnne 0 
+0x4053 014886 fetch 1 ,mem_sensor_shutter_lo 
+0x4054 014887 sub pdata ,45 ,null 
+0x4055 014888 nrtn positive 
+0x4056 014889 jam p3610_smart_disable ,mem_sensor_smart_flag 
+0x4057 014890 setarg 0xba41 
+0x4058 014891 call sensor_write 
+0x4059 014892 setarg 0x8032 
+0x405a 014893 call sensor_write 
+0x405b 014894 setarg 0xb541 
+0x405c 014895 branch sensor_write 
+:      014899 mouse_read_sensor_common:
+0x405d 014900 arg pan_reg_delta_x ,pdata 
+0x405e 014901 call twspi_read 
+0x405f 014902 store 2 ,mem_mouse_x 
+0x4060 014903 arg pan_reg_delta_y ,pdata 
+0x4061 014904 call twspi_read 
+0x4062 014905 store 2 ,mem_mouse_y 
+0x4063 014906 rtn 
+:      014908 mouse_set_qdecoder_x:
+0x4064 014909 arg mouse_default_xa_gpio ,temp 
+0x4065 014910 call gpio_config_input 
+0x4066 014911 arg mouse_default_xa_gpio ,temp 
+0x4067 014912 call gpio_get_bit 
+0x4068 014913 rtn true 
+0x4069 014914 hfetch 1 ,core_qdec_cntx 
+0x406a 014915 set1 4 ,pdata 
+0x406b 014916 hstore 1 ,core_qdec_cntx 
+0x406c 014917 rtn 
+:      014919 mouse_hardware_zwheel:
+0x406d 014920 fetcht 1 ,mem_mouse_z_data 
+0x406e 014921 hfetch 1 ,core_qdec_cntx 
+0x406f 014922 iadd temp ,pdata 
+0x4070 014923 rtn blank 
+0x4071 014924 store 1 ,mem_mouse_z 
+0x4072 014925 jam 0 ,mem_mouse_z_data 
+0x4073 014926 branch enable_user 
+:      014927 mouse_hardware_zwheel_beforelpm:
+0x4074 014928 fetcht 1 ,mem_mouse_z_data 
+0x4075 014929 hfetch 1 ,core_qdec_cntx 
+0x4076 014930 iadd temp ,pdata 
+0x4077 014931 store 1 ,mem_mouse_z_data 
+0x4078 014932 rtn 
+:      014933 mouse_zwheel:
+0x4079 014934 fetch 1 ,mem_mouse_z_data 
+0x407a 014935 rtn blank 
+0x407b 014936 store 1 ,mem_mouse_z 
+0x407c 014937 jam 0 ,mem_mouse_z_data 
+0x407d 014938 branch enable_user 
+:      014940 mouse_t_zwheel:
+0x407e 014941 fetch 1 ,mem_mouse_tz_data 
+0x407f 014942 rtn blank 
+0x4080 014943 store 1 ,mem_mouse_tz 
+0x4081 014944 jam 0 ,mem_mouse_tz_data 
+0x4082 014945 branch enable_user 
+:      014947 mouse_check_key_gpio:
+0x4083 014948 arg 0 ,rega 
+0x4084 014949 fetcht 1 ,mem_lbutton_gpio 
+0x4085 014950 call gpio_get_bit 
+0x4086 014951 setflag true ,0 ,rega 
+0x4087 014952 fetcht 1 ,mem_rbutton_gpio 
+0x4088 014953 call gpio_get_bit 
+0x4089 014954 setflag true ,1 ,rega 
+0x408a 014955 fetcht 1 ,mem_mbutton_gpio 
+0x408b 014956 call gpio_get_bit 
+0x408c 014957 setflag true ,2 ,rega 
+0x408d 014958 call mouse_check_s_key_gpio 
+:      014959 mouse_check_key_gpio_output:
+0x408e 014960 copy rega ,pdata 
+0x408f 014961 rtn 
+:      014962 mouse_check_s_key_gpio:
+0x4090 014963 fetch 1 ,mem_bk_button_gpio 
+0x4091 014964 rtneq gpio_disable 
+0x4092 014965 fetcht 1 ,mem_bk_button_gpio 
+0x4093 014966 call gpio_get_bit 
+0x4094 014967 setflag true ,3 ,rega 
+0x4095 014968 fetcht 1 ,mem_fw_button_gpio 
+0x4096 014969 call gpio_get_bit 
+0x4097 014970 setflag true ,4 ,rega 
+0x4098 014971 rtn 
+:      014973 mouse_key:
+0x4099 014974 call mouse_check_key_gpio 
+0x409a 014975 call mouse_set_mult 
+0x409b 014976 call mouse_24g_key 
+0x409c 014977 copy rega ,pdata 
+0x409d 014978 fetcht 1 ,mem_mouse_key 
+0x409e 014979 store 1 ,mem_mouse_key 
+0x409f 014980 ixor temp ,pdata 
+0x40a0 014981 sub pdata ,0 ,null 
+0x40a1 014982 rtn zero 
+0x40a2 014983 branch enable_user 
+:      014985 mouse_24g_key:
+0x40a3 014986 rtnmark0 mark_24g 
+0x40a4 014987 copy rega ,pdata 
+0x40a5 014988 rtn blank 
+0x40a6 014989 store 1 ,mem_mouse_key 
+0x40a7 014990 branch enable_user 
+:      014993 mouse_set_mult:
+0x40a8 014994 fetch 2 ,mem_ui_state_map 
+0x40a9 014995 bbit1 ui_state_ble_connected ,mouse_set_ble_mult 
+0x40aa 014996 fetch 2 ,mem_ui_state_map 
+0x40ab 014997 bbit1 ui_state_bt_connected ,mouse_set_bt_mult 
+0x40ac 014998 rtn 
+:      014999 mouse_set_ble_mult:
+0x40ad 015000 copy rega ,pdata 
+0x40ae 015001 nbranch le_set_config_short_mult ,blank 
+0x40af 015002 branch le_clr_config_short_mult 
+:      015003 mouse_set_bt_mult:
+0x40b0 015004 copy rega ,pdata 
+0x40b1 015005 nbranch classic_bt_set_mult_short_flag ,blank 
+0x40b2 015006 branch classic_bt_clr_mult_short_flag 
+:      015009 mouse_sensor_sdio_low:
+0x40b3 015010 bpatch patch1c_7 ,mem_patch1c 
+0x40b4 015011 arg mouse_spi1_sdio_gpio ,temp 
+0x40b5 015012 fetch mouse_flag_len ,mem_mouse_flag 
+0x40b6 015013 isolate1 mouse_enable_spi2 ,pdata 
+0x40b7 015014 call mouse_sensor_sdio_low2 ,true 
+0x40b8 015015 call gpio_get_bit 
+0x40b9 015016 rtn true 
+0x40ba 015017 setarg 0x0a 
+0x40bb 015018 call twspi_read 
+0x40bc 015019 nop 1000 
+0x40bd 015020 branch mouse_sensor_sdio_low 
+:      015021 mouse_sensor_sdio_low2:
+0x40be 015022 arg mouse_spi2_sdio_gpio ,temp 
+0x40bf 015023 rtn 
+:      015025 mouse_spi_sdio_gpio_pollup:
+0x40c0 015026 fetch mouse_flag_len ,mem_mouse_flag 
+0x40c1 015027 bbit1 mouse_enable_spi2 ,mouse_spi2_sdio_gpio_pollup 
+:      015028 mouse_spi1_sdio_gpio_pollup:
+0x40c2 015029 arg mouse_spi1_sdio_gpio ,temp 
+0x40c3 015030 branch gpio_config_input_without_wake 
+:      015031 mouse_spi2_sdio_gpio_pollup:
+0x40c4 015032 arg mouse_spi2_sdio_gpio ,temp 
+0x40c5 015033 branch gpio_config_input_without_wake 
+:      015036 mouse_init_sunt:
+0x40c6 015037 call mouse_spi_init 
+0x40c7 015038 rtn wake 
+0x40c8 015039 call mouse_spi_sdio_gpio_pollup 
+0x40c9 015040 fetch 1 ,mem_config_sensor_type 
+0x40ca 015041 beq p3610 ,mouse_init_3610sensor 
+:      015042 mouse_init_sensor:
+0x40cb 015043 call mouse_read_sensor_id 
+0x40cc 015044 beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
+0x40cd 015045 beq p3065_id1 ,mouse_p3065_init_param 
+0x40ce 015046 call mouse_twspi_reset 
+0x40cf 015047 nop 1000 
+0x40d0 015048 branch mouse_init_sensor 
+:      015049 mouse_twspi_reset:
+0x40d1 015050 bpatch patch1d_0 ,mem_patch1d 
+0x40d2 015051 fetch mouse_flag_len ,mem_mouse_flag 
+0x40d3 015052 bbit1 mouse_enable_spi2 ,twspi_reset2 
+0x40d4 015053 branch twspi_reset 
+:      015055 mouse_init_3610sensor:
+0x40d5 015056 call mouse_read_sensor_id 
+0x40d6 015057 beq p3610_id1 ,mouse_init_p3610 
+0x40d7 015058 call mouse_init_3610sensor_reset 
+0x40d8 015059 branch mouse_init_3610sensor 
+:      015061 mouse_read_sensor_id:
+0x40d9 015062 setarg pan_reg_pid_h 
+0x40da 015063 call twspi_read 
+0x40db 015064 store 1 ,mem_sensor_id2 
+0x40dc 015065 setarg pan_reg_pid_l 
+0x40dd 015066 call twspi_read 
+0x40de 015067 store 1 ,mem_sensor_id1 
+0x40df 015068 rtn 
+:      015069 mouse_init_p32xx_id2_judge:
+0x40e0 015070 fetch 1 ,mem_sensor_id2 
+0x40e1 015071 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
+0x40e2 015072 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
+0x40e3 015073 beq p3212_id2 ,mouse_3212_init_param 
+0x40e4 015074 beq pka8_id2 ,mouse_ka8_init_param 
+0x40e5 015075 rtn 
+:      015076 mouse_ka8_init_param:
+0x40e6 015077 jam ka8 ,mem_config_sensor_type 
+0x40e7 015078 rtn 
+:      015079 mouse_p3065xy_init_param:
+0x40e8 015080 jam p3065_xy ,mem_config_sensor_type 
+0x40e9 015081 rtn 
+:      015082 mouse_p3065_init_param:
+0x40ea 015083 fetch 1 ,mem_sensor_id2 
+0x40eb 015084 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x40ec 015085 jam p3065 ,mem_config_sensor_type 
+0x40ed 015086 rtn 
+:      015087 mouse_3212_init_param:
+0x40ee 015088 jam p3212 ,mem_config_sensor_type 
+0x40ef 015089 call mouse_sensor_disable_wp 
+0x40f0 015090 setarg 0x3426 
+0x40f1 015091 call twspi_write 
+0x40f2 015092 setarg 0x0419 
+0x40f3 015093 call twspi_write 
+:      015094 mouse_sensor_enable_wp:
+0x40f4 015095 setarg 0x0009 
+0x40f5 015096 branch twspi_write 
+:      015097 mouse_sensor_disable_wp:
+0x40f6 015098 setarg 0x5a09 
+0x40f7 015099 branch twspi_write 
+:      015101 mouse_3204_3l_init_param:
+0x40f8 015102 jam p3204 ,mem_config_sensor_type 
+0x40f9 015103 call mouse_sensor_disable_wp 
+0x40fa 015104 setarg 0x0f0d 
+0x40fb 015105 call twspi_write 
+0x40fc 015106 setarg 0xe31d 
+0x40fd 015107 call twspi_write 
+0x40fe 015108 setarg 0xd27d 
+0x40ff 015109 call twspi_write 
+0x4100 015110 call mouse_32xx_init_param 
+0x4101 015111 branch mouse_32xx_init_param_1 
+:      015113 mouse_32xx_init_param:
+0x4102 015114 setarg 0x351b 
+0x4103 015115 call twspi_write 
+0x4104 015116 setarg 0xb428 
+0x4105 015117 call twspi_write 
+0x4106 015118 setarg 0x4629 
+0x4107 015119 call twspi_write 
+0x4108 015120 setarg 0x962a 
+0x4109 015121 call twspi_write 
+0x410a 015122 setarg 0x8c2b 
+0x410b 015123 call twspi_write 
+0x410c 015124 setarg 0x6e2c 
+0x410d 015125 call twspi_write 
+0x410e 015126 setarg 0x642d 
+0x410f 015127 call twspi_write 
+0x4110 015128 setarg 0x5f38 
+0x4111 015129 call twspi_write 
+0x4112 015130 setarg 0x0f39 
+0x4113 015131 call twspi_write 
+0x4114 015132 setarg 0x323a 
+0x4115 015133 call twspi_write 
+0x4116 015134 setarg 0x473b 
+0x4117 015135 call twspi_write 
+0x4118 015136 setarg 0x1042 
+0x4119 015137 branch twspi_write 
+:      015138 mouse_32xx_init_param_1:
+0x411a 015139 setarg 0x2e54 
+0x411b 015140 call twspi_write 
+0x411c 015141 setarg 0xf255 
+0x411d 015142 call twspi_write 
+0x411e 015143 setarg 0xf461 
+0x411f 015144 call twspi_write 
+0x4120 015145 setarg 0x7063 
+0x4121 015146 call twspi_write 
+0x4122 015147 setarg 0x5275 
+0x4123 015148 call twspi_write 
+0x4124 015149 setarg 0x4176 
+0x4125 015150 call twspi_write 
+0x4126 015151 setarg 0xed77 
+0x4127 015152 call twspi_write 
+0x4128 015153 setarg 0x2378 
+0x4129 015154 call twspi_write 
+0x412a 015155 setarg 0x4679 
+0x412b 015156 call twspi_write 
+0x412c 015157 setarg 0xe57a 
+0x412d 015158 call twspi_write 
+0x412e 015159 setarg 0x487c 
+0x412f 015160 call twspi_write 
+0x4130 015161 setarg 0x777e 
+0x4131 015162 call twspi_write 
+0x4132 015163 setarg 0x017f 
+0x4133 015164 call twspi_write 
+0x4134 015165 setarg 0x000b 
+0x4135 015166 call twspi_write 
+0x4136 015167 setarg 0x007f 
+0x4137 015168 call twspi_write 
+0x4138 015169 branch mouse_sensor_enable_wp 
+:      015172 mouse_3205_3t_init_param:
+0x4139 015173 jam p3205 ,mem_config_sensor_type 
+0x413a 015174 call mouse_sensor_disable_wp 
+0x413b 015175 setarg 0x100d 
+0x413c 015176 call twspi_write 
+0x413d 015177 setarg 0xed1d 
+0x413e 015178 call twspi_write 
+0x413f 015179 setarg 0x807d 
+0x4140 015180 call twspi_write 
+0x4141 015181 call mouse_32xx_init_param 
+0x4142 015182 setarg 0x0943 
+0x4143 015183 call twspi_write 
+0x4144 015184 branch mouse_32xx_init_param_1 
+:      015187 mouse_init_3610sensor_reset:
+0x4145 015188 fetcht 1 ,mem_sensor_reset_gpio 
+0x4146 015189 call gpio_out_active 
+0x4147 015190 call delay_10ms 
+0x4148 015191 fetcht 1 ,mem_sensor_reset_gpio 
+0x4149 015192 call gpio_out_inactive 
+0x414a 015193 branch delay_10ms 
+:      015195 mouse_init_p3610:
+0x414b 015196 jam p3610 ,mem_config_sensor_type 
+0x414c 015197 setarg 0xba41 
+0x414d 015198 call sensor_write 
+0x414e 015199 setarg 0x0d11 
+0x414f 015200 call sensor_write 
+0x4150 015201 setarg 0x041b 
+0x4151 015202 call sensor_write 
+0x4152 015203 setarg 0x041c 
+0x4153 015204 call sensor_write 
+0x4154 015205 setarg 0x0f1d 
+0x4155 015206 call sensor_write 
+0x4156 015207 setarg 0x0032 
+0x4157 015208 call sensor_write 
+0x4158 015209 setarg 0xb541 
+0x4159 015210 branch sensor_write 
+:      015214 mouse_set_sensor_reg:
+0x415a 015215 setarg 0xba41 
+0x415b 015216 call sensor_write 
+0x415c 015217 nop 4000 
+0x415d 015218 setarg 0xff7f 
+0x415e 015219 call sensor_write 
+0x415f 015220 copy rega ,pdata 
+0x4160 015221 call sensor_write 
+0x4161 015222 setarg 0x007f 
+0x4162 015223 call sensor_write 
+0x4163 015224 setarg 0xb541 
+0x4164 015225 branch sensor_write 
+:      015227 extsign:
+0x4165 015228 rtnbit0 7 
+0x4166 015229 arg 0xff00 ,temp 
+0x4167 015230 ior temp ,pdata 
+0x4168 015231 rtn 
+:      015233 extsign_bit3:
+0x4169 015234 rtnbit0 3 
+0x416a 015235 arg 0xf0 ,temp 
+0x416b 015236 ior temp ,pdata 
+0x416c 015237 rtn 
+:      015240 mouse_le:
+0x416d 015241 call le_fifo_check_nearly_full 
+0x416e 015242 nrtn blank 
+0x416f 015243 fetch 1 ,mem_le_connect_status_flag 
+0x4170 015244 and pdata ,0x03 ,pdata 
+0x4171 015245 rtnne 0x03 
+0x4172 015246 fetch mouse_flag_len ,mem_mouse_flag 
+0x4173 015247 bbit1 mosue_24g_pairing_flag ,mouse_le_send_empty_packet 
+0x4174 015248 bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+0x4175 015249 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x4176 015250 call mouse_motion 
+0x4177 015251 nrtn user 
+0x4178 015252 branch mouse_fill_data_le 
+:      015254 mouse_le_send_empty_packet:
+0x4179 015255 setarg 0 
+0x417a 015256 store 7 ,mem_mouse_key 
+0x417b 015257 branch mouse_fill_data_le 
+:      015259 mouse_priority_bb_event:
+0x417c 015260 copy regc ,pdata 
+0x417d 015261 beq bt_evt_le_connected ,mouse_le_bb_event_connected 
+0x417e 015262 beq bt_evt_bb_connected ,mouse_stop_discovery 
+0x417f 015263 beq bt_evt_le_disconnected ,mouse_bb_disconnected 
+0x4180 015264 beq bt_evt_bb_disconnected ,mouse_bb_disconnected 
+0x4181 015265 beq bt_evt_setup_complete ,mouse_bt_event_setup_complete 
+0x4182 015266 beq bt_evt_button_long_pressed ,mouse_bb_event_discovery_btn 
+0x4183 015267 beq bt_evt_hid_handshake ,mouse_bt_hid_handshake 
+0x4184 015268 beq bt_evt_hid_connected ,mouse_bt_hid_connected 
+0x4185 015269 beq bt_evt_reconn_failed ,mouse_bb_event_reconn_failed 
+0x4186 015270 beq bt_evt_reconn_page_timeout ,mouse_bb_event_reconn_timeout 
+0x4187 015271 beq bt_evt_pincode_req ,mouse_bb_event_pincode 
+0x4188 015272 beq bt_evt_remote_unsniff ,app_start_auto_sniff 
+0x4189 015273 beq bt_evt_le_pairing_success ,mouse_le_pairing_success 
+0x418a 015274 beq bt_evt_le_start_enc ,mouse_le_ll_start_encryt 
+0x418b 015275 beq bt_evt_le_pairing_complete ,mouse_le_pairing_complete 
+0x418c 015276 beq bt_evt_virtual_cable_unplug ,mouse_irtual_cable_unplug 
+0x418d 015277 beq bt_evt_24g_pairing_complete ,mouse_24g_pairing_complete 
+0x418e 015278 beq bt_evt_24g_attempt_fail ,mouse_24g_attempt_fail 
+0x418f 015279 beq bt_evt_24g_attempt_success ,mouse_24g_attempt_success 
+0x4190 015280 rtn 
+:      015283 mouse_le_pairing_complete:
+0x4191 015284 branch app_ble_store_reconn_info 
+:      015286 mouse_24g_attempt_fail:
+0x4192 015287 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4193 015288 fetch 1 ,mem_reconn_times 
+0x4194 015289 nbranch mouse_polling_device ,blank 
+0x4195 015290 fetch 1 ,mem_device_flag 
+0x4196 015291 fetcht 1 ,mem_24g_device_number 
+0x4197 015292 isub temp ,null 
+0x4198 015293 branch app_enter_hibernate ,zero 
+0x4199 015294 rtn 
+:      015295 mouse_24g_attempt_success:
+0x419a 015296 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419b 015297 rtn 
+:      015298 mouse_24g_pairing_complete:
+0x419c 015299 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419d 015300 arg mosue_24g_pairing_flag ,queue 
+0x419e 015301 call mouse_disable_function_flag 
+0x419f 015302 setarg 0 
+0x41a0 015303 store 2 ,mem_24g_pairing_timer_count 
+0x41a1 015304 jam 0 ,mem_mouse_move_flag 
+0x41a2 015306 fetch 1 ,mem_config_sensor_type 
+0x41a3 015307 sub pdata ,p3610 ,null 
+0x41a4 015308 call mouse_read_sensor3610_data ,zero 
+0x41a5 015309 ncall mouse_read_sensor_common ,zero 
+0x41a6 015311 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x41a7 015312 bbit1 mouse_enable_flash ,mouse_store_flash_24g_address 
+0x41a8 015313 call mouse_set_24g_addr_eeprom 
+0x41a9 015314 branch iicd_write_protect_eep_data 
+:      015316 mouse_set_24g_addr_eeprom:
+0x41aa 015317 call g24_head_ptr2regc 
+0x41ab 015318 add regc ,offset_24g_addr ,rega 
+0x41ac 015319 arg mouse_g24_addr_eeprom_offect ,regb 
+0x41ad 015320 arg 4 ,temp 
+0x41ae 015321 rtn 
+:      015323 mouse_store_flash_24g_address:
+0x41af 015324 call g24_head_ptr2regc 
+0x41b0 015325 add regc ,offset_24g_addr ,regb 
+0x41b1 015326 ifetch 1 ,regb 
+0x41b2 015327 store 1 ,mem_mouse_24g_addr 
+0x41b3 015328 branch mouse_store_flash_device_info 
+:      015331 mouse_le_pairing_success:
+0x41b4 015332 arg ll_pairing_success_flag ,queue 
+0x41b5 015333 branch mouse_le_enable_connect_flag 
+:      015334 mouse_le_ll_start_encryt:
+0x41b6 015335 jam 2 ,mem_le_start_encrypt_timer 
+0x41b7 015336 arg ll_start_enc_flag ,queue 
+0x41b8 015337 branch mouse_le_enable_connect_flag 
+:      015340 mouse_le_enable_connect_flag:
+0x41b9 015341 fetch 1 ,mem_le_connect_status_flag 
+0x41ba 015342 qset1 pdata 
+0x41bb 015343 store 1 ,mem_le_connect_status_flag 
+0x41bc 015344 rtn 
+:      015346 mouse_le_disable_connect_flag:
+0x41bd 015347 fetch 1 ,mem_le_connect_status_flag 
+0x41be 015348 qset0 pdata 
+0x41bf 015349 store 1 ,mem_le_connect_status_flag 
+0x41c0 015350 rtn 
+:      015351 mouse_le_clean_connect_flag:
+0x41c1 015352 jam 0 ,mem_le_connect_status_flag 
+0x41c2 015353 rtn 
+:      015355 mouse_le_bb_event_connected:
+0x41c3 015356 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c4 015357 set0 app_disc_by_button ,pdata 
+0x41c5 015358 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c6 015359 setarg 0 
+0x41c7 015360 store 2 ,mem_mouse_direct_timer 
+0x41c8 015361 call mouse_no_data_timer_init 
+0x41c9 015362 branch mouse_stop_discovery 
+:      015364 mouse_bb_event_pincode:
+0x41ca 015365 call pincode_reinit 
+0x41cb 015366 branch app_bt_set_pincode 
+:      015367 mouse_bb_event_reconn_timeout:
+:      015368 mouse_bb_event_reconn_failed:
+0x41cc 015369 fetch 1 ,mem_reconn_times 
+0x41cd 015370 nbranch mouse_polling_device ,blank 
+0x41ce 015371 fetch 2 ,mem_ui_state_map 
+0x41cf 015372 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41d0 015373 fetch mouse_flag_len ,mem_mouse_flag 
+0x41d1 015374 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41d2 015375 bbit1 mouse_bt_discovery_button_down_flag ,mouse_start_discovery 
+0x41d3 015376 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41d4 015377 branch app_bb_hibernate 
+:      015380 mouse_bt_hid_connected:
+0x41d5 015381 branch mouse_hid_connected 
+:      015383 mouse_bt_event_setup_complete:
+0x41d6 015384 rtn 
+:      015386 mouse_soft_reset:
+0x41d7 015387 call mouse_select_device_enable 
+0x41d8 015388 branch soft_reset_chip 
+:      015390 mouse_bb_disconnected:
+0x41d9 015391 bpatch patch1d_1 ,mem_patch1d 
+0x41da 015392 call mouse_bb_discon_clear_stack 
+0x41db 015393 fetch mouse_flag_len ,mem_mouse_flag 
+0x41dc 015394 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41dd 015395 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41de 015396 fetch 1 ,mem_reconn_times 
+0x41df 015397 nbranch mouse_polling_device ,blank 
+0x41e0 015398 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41e1 015399 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
+0x41e2 015400 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41e3 015401 bbit1 app_disc_after_pairing ,mouse_event_light_state_pairing 
+0x41e4 015402 bbit1 app_disc_after_reconn ,mouse_event_light_state_hibernate 
+0x41e5 015403 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41e6 015404 branch mouse_start_discovery 
+:      015405 mouse_bb_discon_clear_stack:
+0x41e7 015406 setarg 0 
+0x41e8 015407 store 8 ,mem_wheel_tb_old_pinlevel 
+0x41e9 015408 istore 4 ,contw 
+0x41ea 015409 jam 0 ,mem_mouse_send_blank_timer 
+0x41eb 015410 jam 0 ,mem_mouse_move_flag 
+0x41ec 015411 jam app_handshake_null ,mem_app_handshake_flag 
+0x41ed 015412 jam 0 ,mem_ltk_exists 
+0x41ee 015413 rtn 
+:      015415 mouse_event_light_state_pairing:
+0x41ef 015416 bbit1 app_disc_after_handshake ,mouse_event_light_state_hibernate 
+0x41f0 015417 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41f1 015418 branch mouse_start_discovery 
+:      015419 mouse_event_light_state_hibernate:
+0x41f2 015420 fetch 2 ,mem_ui_state_map 
+0x41f3 015421 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41f4 015422 branch app_bb_hibernate 
+:      015424 mouse4_0_event_bb_disconn:
+0x41f5 015425 call mouse_le_clean_connect_flag 
+0x41f6 015426 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41f7 015427 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41f8 015428 branch app_bb_hibernate 
+:      015430 mouse_bb_event_timer:
+0x41f9 015431 call mouse_adc_read 
+0x41fa 015432 call mouse_24g_delay_timer 
+0x41fb 015433 call mouse_ban_24g_pairing_timer 
+0x41fc 015434 call mouse_dpi_led_blink_delay_timer 
+0x41fd 015435 call mouse_statue_up_timer 
+0x41fe 015437 call mouse_statue_cheak_timer 
+0x41ff 015438 call mouse_select_device 
+0x4200 015439 call mouse_bt_discovery_cheak 
+0x4201 015440 call mouse_low_voltage_led_timer 
+0x4202 015441 call mouse_sensor_led_contrl_timer 
+0x4203 015442 call mouse_check_hid_handshake_timer 
+0x4204 015443 call mouse_check_discovery_timeout_timer 
+0x4205 015444 call mouse_check_direct_timeout_timer 
+0x4206 015445 call mouse_check_no_data_timeout_timer 
+0x4207 015446 call mouse_check_mouse_state_timer 
+0x4208 015447 branch mouse_le_enable_att_list_timer 
+:      015451 mouse_sensor_led_contrl_timer:
+0x4209 015452 fetch 1 ,mem_mouse_sensor_timer_count 
+0x420a 015453 rtn blank 
+0x420b 015454 increase -1 ,pdata 
+0x420c 015455 store 1 ,mem_mouse_sensor_timer_count 
+0x420d 015456 nrtn blank 
+0x420e 015457 branch mouse_sensor_led_contrl 
+:      015458 mouse_sensor_led_contrl:
+0x420f 015459 fetch 1 ,mem_sensor_led_style 
+0x4210 015460 rtneq ui_led_state_blink_stop 
+0x4211 015461 beq ui_led_state_blink_darking ,mouse_sensor_led_blink_state_darking 
+:      015462 mouse_sensor_led_blink_state_lighting:
+0x4212 015463 call mouse_sensor_led_on 
+0x4213 015464 jam ui_led_state_blink_darking ,mem_sensor_led_style 
+0x4214 015465 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4215 015466 rtn 
+:      015467 mouse_sensor_led_blink_state_darking:
+0x4216 015468 call mouse_sensor_led_off 
+0x4217 015469 jam ui_led_state_blink_lighting ,mem_sensor_led_style 
+0x4218 015470 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4219 015471 rtn 
+:      015473 mouse_sensor_led_blink_stop:
+:      015474 mouse_sensor_reset:
+0x421a 015475 setarg 0x8006 
+0x421b 015476 call twspi_write 
+0x421c 015477 nop 1000 
+0x421d 015478 jam 0x00 ,mem_mouse_sensor_timer_count 
+0x421e 015479 jam ui_led_state_blink_stop ,mem_sensor_led_style 
+0x421f 015480 branch mouse_init_p32xx_id2_judge 
+:      015482 mouse_p3212sensor_led_on:
+0x4220 015483 setarg 0xa006 
+0x4221 015484 call twspi_write 
+0x4222 015485 setarg 0xa005 
+0x4223 015486 branch twspi_write 
+:      015487 mouse_sensor_led_on_global:
+0x4224 015488 jam 0 ,mem_mouse_sensor_timer_count 
+:      015489 mouse_sensor_led_on:
+0x4225 015490 fetch 1 ,mem_config_sensor_type 
+0x4226 015491 beq p3212 ,mouse_p3212sensor_led_on 
+0x4227 015492 setarg 0x0106 
+0x4228 015493 call twspi_write 
+0x4229 015494 setarg 0xa105 
+0x422a 015495 branch twspi_write 
+:      015497 mouse_sensor_led_off_global:
+0x422b 015498 jam 0 ,mem_mouse_sensor_timer_count 
+:      015499 mouse_sensor_led_off:
+0x422c 015500 setarg 0x0906 
+0x422d 015501 branch twspi_write 
+:      015502 mouse_sensor_start_blink:
+0x422e 015503 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x422f 015504 jam ui_led_state_blink_start ,mem_sensor_led_style 
+0x4230 015505 rtn 
+:      015507 mouse_check_hid_handshake_timer:
+0x4231 015508 arg mem_hid_handshake_timer_count ,regc 
+0x4232 015509 arg mouse_bt_hid_handshake ,regb 
+0x4233 015510 branch timer_single_step 
+:      015512 mouse_check_discovery_timeout_timer:
+0x4234 015513 arg mem_mouse_discovery_timer ,regc 
+0x4235 015514 arg mouse_check_discovery_timeout ,regb 
+0x4236 015515 branch timer_single_step_2b 
+:      015517 mouse_check_direct_timeout_timer:
+0x4237 015518 arg mem_mouse_direct_timer ,regc 
+0x4238 015519 arg mouse_check_direct_timeout ,regb 
+0x4239 015520 branch timer_single_step_2b 
+:      015522 mouse_check_no_data_timeout_timer:
+0x423a 015523 arg mem_mouse_no_data_timer ,regc 
+0x423b 015524 arg mouse_check_no_data_timeout ,regb 
+0x423c 015525 branch timer_single_step_2b 
+:      015527 mouse_check_mouse_state_timer:
+0x423d 015528 arg mem_mouse_statue_led_timer ,regc 
+0x423e 015529 arg mouse_statue_led_off ,regb 
+0x423f 015530 branch timer_single_step 
+:      015534 mouse_le_enable_att_list_timer:
+0x4240 015535 arg mem_le_start_encrypt_timer ,regc 
+0x4241 015536 arg mouse_le_enable_att_list ,regb 
+0x4242 015537 branch timer_single_step 
+:      015539 mouse_24g_delay_timer:
+0x4243 015540 arg mem_24g_enter_lpm_timer ,regc 
+0x4244 015541 arg mouse_24g_delay ,regb 
+0x4245 015542 branch timer_single_step 
+:      015544 mouse_ban_24g_pairing_timer:
+0x4246 015545 arg mem_24g_pairing_timer_count ,regc 
+0x4247 015546 arg mouse_ban_24g_pairing ,regb 
+0x4248 015547 branch timer_single_step_2b 
+:      015548 mouse_ban_24g_pairing:
+:      015549 mouse_24g_delay:
+0x4249 015550 rtn 
+:      015553 mosue_dpi_led_blink_init:
+0x424a 015554 fetch mouse_flag_len ,mem_mouse_flag 
+0x424b 015555 rtnbit0 mouse_enable_dpi_led_blink 
+0x424c 015556 jam 10 ,mem_mouse_dpi_led_delay_count 
+0x424d 015557 fetch 1 ,mem_dpi_led_gpio 
+0x424e 015558 store 1 ,mem_mouse_struct_led_gpio 
+0x424f 015559 rtn 
+:      015562 mouse_dpi_led_blink_delay_timer:
+0x4250 015563 arg mem_mouse_dpi_led_delay_count ,regc 
+0x4251 015564 arg mouse_dpi_led_setting ,regb 
+0x4252 015565 branch timer_single_step 
+:      015566 mouse_dpi_led_setting:
+0x4253 015567 fetch 1 ,mem_dpi_led_gpio 
+0x4254 015568 store 1 ,mem_mouse_struct_led_gpio 
+0x4255 015569 setarg led_dpi_blink 
+0x4256 015570 store 2 ,mem_mouse_on_time 
+0x4257 015571 store 2 ,mem_mouse_off_time 
+0x4258 015572 arg 0 ,rega 
+0x4259 015573 fetcht 1 ,mem_mouse_dpi 
+0x425a 015574 increase 1 ,temp 
+0x425b 015575 storet 1 ,mem_mouse_blink_count 
+0x425c 015576 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x425d 015577 rtn 
+:      015579 mouse_le_enable_att_list:
+0x425e 015580 fetch 1 ,mem_le_connect_status_flag 
+0x425f 015581 rtnbit1 ll_pairing_success_flag 
+0x4260 015582 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x4261 015583 call ui_ipc_send_cmd 
+0x4262 015584 arg write_req_enable_flag ,queue 
+0x4263 015585 branch mouse_le_enable_connect_flag 
+:      015588 mouse_check_discovery_timeout:
+0x4264 015589 call mouse_stop_discovery 
+0x4265 015590 branch app_enter_hibernate 
+:      015592 mouse_check_direct_timeout:
+0x4266 015593 call app_ble_stop_direct_adv 
+0x4267 015594 fetch 1 ,mem_reconn_times 
+0x4268 015595 nbranch mouse_polling_device ,blank 
+0x4269 015596 branch app_enter_hibernate 
+:      015598 mouse_check_no_data_timeout:
+0x426a 015599 bmark1 mark_24g ,check_51cmd_hibernate 
+0x426b 015600 branch mouse_disconnect 
+:      015604 mouse_bb_event_discovery_btn:
+0x426c 015605 bpatch patch1d_2 ,mem_patch1d 
+0x426d 015606 jam 0 ,mem_mouse_send_blank_timer 
+0x426e 015607 call mouse_disconnect 
+0x426f 015608 call mouse_le_clean_connect_flag 
+0x4270 015609 branch mouse_start_discovery 
+:      015613 mouse3_0_check_reconn_target:
+0x4271 015614 fetch 6 ,mem_hci_plap 
+0x4272 015615 branch app_bt_start_discovery_short ,blank 
+0x4273 015616 call mouse_reconn_setting_led_gpio 
+0x4274 015617 jam 0x17 ,mem_connection_options 
+0x4275 015618 fetch 1 ,mem_ssp_enable 
+0x4276 015619 nbranch app_bt_start_reconnect ,blank 
+0x4277 015620 jam 0x04 ,mem_connection_options 
+0x4278 015621 branch app_bt_start_reconnect 
+:      015623 mouse4_0_check_reconn_target:
+0x4279 015624 fetch 2 ,mem_mouse_direct_timeout 
+0x427a 015625 store 2 ,mem_mouse_direct_timer 
+0x427b 015626 call mouse_reconn_setting_led_gpio 
+0x427c 015627 call app_lpm_mult_disable 
+0x427d 015628 branch check_51cmd_adv 
+:      015630 mouse_reconn_setting_led_gpio:
+0x427e 015631 setarg led_reconnect_blink 
+0x427f 015632 store 2 ,mem_mouse_on_time 
+0x4280 015633 store 2 ,mem_mouse_off_time 
+0x4281 015634 branch mouse_setting_led_gpio_comman 
+:      015636 mouse_discover_setting_led_gpio:
+0x4282 015637 setarg led_discovery_blink 
+0x4283 015638 store 2 ,mem_mouse_on_time 
+0x4284 015639 store 2 ,mem_mouse_off_time 
+:      015640 mouse_setting_led_gpio_comman:
+0x4285 015641 fetch 1 ,mem_device_flag 
+0x4286 015642 beq mode_bt_device1 ,mouse_device_led1 
+0x4287 015643 beq mode_bt_device2 ,mouse_device_led2 
+0x4288 015644 beq mode_bt_device3 ,mouse_device_led3 
+0x4289 015645 rtn 
+:      015646 mouse_device_led1:
+0x428a 015647 fetch 1 ,mem_config_device1_led_gpio 
+0x428b 015648 branch mouse_led_blink 
+:      015649 mouse_device_led2:
+0x428c 015650 fetch 1 ,mem_config_device2_led_gpio 
+0x428d 015651 branch mouse_led_blink 
+:      015652 mouse_device_led3:
+0x428e 015653 fetch 1 ,mem_config_device3_led_gpio 
+:      015654 mouse_led_blink:
+0x428f 015655 store 1 ,mem_temp 
+0x4290 015656 call mouse_devce_led_off 
+0x4291 015657 fetch 1 ,mem_temp 
+0x4292 015658 store 1 ,mem_mouse_struct_led_gpio 
+0x4293 015659 arg 0 ,rega 
+0x4294 015660 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x4295 015661 branch ui_led_blink_start_global 
+:      015663 mouse_led_off:
+0x4296 015664 arg 0 ,rega 
+0x4297 015665 branch ui_led_off_global 
+:      015666 mouse_led_on:
+0x4298 015667 arg 0 ,rega 
+0x4299 015668 branch ui_led_on_global 
+:      015670 mouse4_0_bb_event_discovery_btn:
+0x429a 015671 branch mouse_le_clean_connect_flag 
+:      015673 mouse_bt_hid_handshake:
+0x429b 015674 jam app_handshake_done ,mem_app_handshake_flag 
+0x429c 015675 call app_lpm_mult_enable 
+0x429d 015676 call app_bt_store_reconn_info 
+0x429e 015677 setarg 0 
+0x429f 015678 store 2 ,mem_discovery_timeout_timer_count 
+0x42a0 015679 store 1 ,mem_hid_handshake_timer_count 
+0x42a1 015680 branch app_bt_enter_sniff 
+:      015682 mouse_check_reconn_target:
+0x42a2 015683 call mouse_cheak_select_device_by_switch 
+0x42a3 015684 fetch 1 ,mem_device_flag 
+0x42a4 015685 fetcht 1 ,mem_24g_device_number 
+0x42a5 015686 isub temp ,null 
+0x42a6 015687 branch mouse_connect_24g_mode ,zero 
+0x42a7 015688 fetch 1 ,mem_xrecord_mode 
+0x42a8 015689 beq rec_3_mode ,mouse3_0_check_reconn_target 
+0x42a9 015690 beq rec_4_mode ,mouse4_0_check_reconn_target 
+0x42aa 015691 branch mouse_start_discovery 
+:      015692 mouse_connect_24g_mode:
+0x42ab 015693 call mouse_start_24g_mode 
+0x42ac 015694 rtnmark1 mark_24g 
+0x42ad 015695 fetch 1 ,mem_reconn_times 
+0x42ae 015696 nbranch mouse_polling_device ,blank 
+0x42af 015697 rtn 
+:      015699 mouse_start_discovery:
+0x42b0 015700 bpatch patch1d_3 ,mem_patch1d 
+0x42b1 015701 fetch 2 ,mem_ui_state_map 
+0x42b2 015702 bbit1 ui_state_ble_adv ,mouse_start_discovery_norandom 
+0x42b3 015703 fetch mouse_flag_len ,mem_mouse_flag 
+0x42b4 015704 bbit0 mouse_enable_ble_random_addre ,mouse_start_discovery_norandom 
+0x42b5 015705 random pdata 
+0x42b6 015706 store 1 ,mem_le_lap + 1 
+:      015707 mouse_start_discovery_norandom:
+0x42b7 015708 call app_lpm_mult_disable 
+0x42b8 015709 fetch 2 ,mem_discovery_timeout 
+0x42b9 015710 store 2 ,mem_mouse_discovery_timer 
+0x42ba 015711 jam 6 ,mem_connection_options 
+0x42bb 015712 setarg 0 
+0x42bc 015713 store 2 ,mem_mouse_no_data_timer 
+0x42bd 015714 store 2 ,mem_mouse_direct_timer 
+0x42be 015715 arg mouse_store_eeprom_flag ,queue 
+0x42bf 015716 call mouse_enable_function_flag 
+0x42c0 015717 call mouse_bt_discovery_button_down_disable 
+0x42c1 015718 fetch 1 ,mem_device_option 
+0x42c2 015719 isolate1 mode_4_mouse ,pdata 
+0x42c3 015720 call check_51cmd_adv ,true 
+0x42c4 015721 fetch 1 ,mem_device_option 
+0x42c5 015722 isolate1 mode_3_mouse ,pdata 
+0x42c6 015723 call check_51cmd_start_discovery ,true 
+0x42c7 015724 fetch mouse_flag_len ,mem_mouse_flag 
+0x42c8 015725 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_start_blink 
+0x42c9 015726 branch mouse_discover_setting_led_gpio 
+:      015728 mouse_stop_discovery:
+0x42ca 015729 bpatch patch1d_4 ,mem_patch1d 
+0x42cb 015730 fetch 1 ,mem_device_option 
+0x42cc 015731 isolate1 mode_4_mouse ,pdata 
+0x42cd 015732 call mouse_stop_le_adv ,true 
+0x42ce 015733 fetch 1 ,mem_device_option 
+0x42cf 015734 isolate1 mode_3_mouse ,pdata 
+0x42d0 015735 call mouse_stop_bt3_discovery ,true 
+0x42d1 015736 fetch mouse_flag_len ,mem_mouse_flag 
+0x42d2 015737 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_led_blink_stop 
+0x42d3 015738 branch mouse_devce_led_off 
+:      015739 mouse_stop_le_adv:
+0x42d4 015740 setarg 0 
+0x42d5 015741 store 2 ,mem_mouse_direct_timer 
+0x42d6 015742 branch check_51cmd_stop_adv 
+:      015743 mouse_stop_bt3_discovery:
+0x42d7 015744 setarg 0 
+0x42d8 015745 store 2 ,mem_mouse_discovery_timer 
+0x42d9 015746 branch check_51cmd_stop_discovery 
+:      015752 mouse_store_remote_bdaddr:
+0x42da 015753 fetch mouse_flag_len ,mem_mouse_flag 
+0x42db 015754 rtnbit0 mouse_store_eeprom_flag 
+0x42dc 015755 arg mouse_store_eeprom_flag ,queue 
+0x42dd 015756 call mouse_disable_function_flag 
+0x42de 015757 call mouse_check_device_addr 
+:      015758 mouse_unplug_clean_bdaddr:
+0x42df 015759 call mouse_before_store_reconn_info 
+0x42e0 015760 fetch mouse_flag_len ,mem_mouse_flag 
+0x42e1 015761 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
+0x42e2 015762 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+0x42e3 015763 rtn 
+:      015764 mouse_store_eeprom_device_info:
+0x42e4 015765 arg 88 ,temp 
+0x42e5 015766 arg mem_device_flag ,rega 
+0x42e6 015767 arg mouse_info_eeprom_offect ,regb 
+0x42e7 015768 branch iicd_write_protect_eep_data 
+:      015770 mouse_check_device_addr:
+0x42e8 015771 fetch 1 ,mem_record_bt_mode 
+0x42e9 015772 beq rec_4_mode ,mouse_check_le_device_addr 
+0x42ea 015773 beq rec_3_mode ,mouse_check_bt_device_addr 
+0x42eb 015774 rtn 
+:      015775 mouse_check_le_device_addr:
+0x42ec 015776 store 1 ,mem_device_addr_temp 
+0x42ed 015777 fetch 6 ,mem_le_plap 
+0x42ee 015778 branch mouse_check_bt_device_addr_common 
+:      015779 mouse_check_bt_device_addr:
+0x42ef 015780 store 1 ,mem_device_addr_temp 
+0x42f0 015781 fetch 6 ,mem_plap 
+:      015782 mouse_check_bt_device_addr_common:
+0x42f1 015783 store 6 ,mem_device_addr_temp + 1 
+0x42f2 015784 fetch 7 ,mem_device_addr_temp 
+0x42f3 015785 arg mem_device1_type ,contr 
+0x42f4 015786 arg 3 ,loopcnt 
+:      015787 mouse_check_device_addr_end:
+0x42f5 015788 ifetcht 7 ,contr 
+0x42f6 015789 isub temp ,null 
+0x42f7 015790 branch mouse_clean_addr ,zero 
+0x42f8 015791 increase 22 ,contr 
+0x42f9 015792 loop mouse_check_device_addr_end 
+0x42fa 015793 rtn 
+:      015794 mouse_before_store_reconn_info:
+0x42fb 015795 arg mem_device1_type ,rega 
+0x42fc 015796 fetch 1 ,mem_device_flag 
+0x42fd 015797 increase -1 ,pdata 
+0x42fe 015798 mul32 pdata ,29 ,pdata 
+0x42ff 015799 iadd rega ,rega 
+0x4300 015800 fetch 1 ,mem_record_bt_mode 
+0x4301 015801 istore 1 ,rega 
+0x4302 015802 beq rec_4_mode ,mouse_store_le_device 
+0x4303 015803 beq rec_3_mode ,mouse_store_bt_device 
+0x4304 015804 rtn 
+:      015806 mouse_store_le_device:
+0x4305 015807 fetch 6 ,mem_le_plap 
+0x4306 015808 istore 6 ,contw 
+0x4307 015809 arg mem_le_ltk ,contr 
+0x4308 015810 call memcpy16 
+0x4309 015811 fetch 6 ,mem_le_lap 
+0x430a 015812 istore 6 ,contw 
+0x430b 015813 rtn 
+:      015814 mouse_store_bt_device:
+0x430c 015815 fetch 6 ,mem_plap 
+0x430d 015816 istore 6 ,contw 
+0x430e 015817 arg mem_link_key ,contr 
+0x430f 015818 branch memcpy16 
+:      015820 mouse_clean_addr:
+0x4310 015821 increase -6 ,contr 
+0x4311 015822 copy contr ,contw 
+0x4312 015823 fetcht 6 ,mem_device_addr_temp + 1 
+0x4313 015824 increase 3 ,temp 
+0x4314 015825 istoret 6 ,contw 
+0x4315 015826 rtn 
+:      015830 mouse_eeprom_load_recon_info:
+0x4316 015831 arg 88 ,temp 
+0x4317 015832 arg mem_device_flag ,rega 
+0x4318 015833 arg mouse_info_eeprom_offect ,regb 
+0x4319 015834 call iicd_read_eep_data 
+:      015835 mouse_select_reconn_device:
+0x431a 015836 arg mem_device1_type ,rega 
+0x431b 015837 fetch 1 ,mem_device_flag 
+0x431c 015838 fetcht 1 ,mem_24g_device_number 
+0x431d 015839 isub temp ,null 
+0x431e 015840 rtn zero 
+0x431f 015841 increase -1 ,pdata 
+0x4320 015842 mul32 pdata ,29 ,pdata 
+0x4321 015843 iadd rega ,rega 
+0x4322 015844 ifetch 1 ,rega 
+0x4323 015845 store 1 ,mem_xrecord_mode 
+0x4324 015846 beq rec_3_mode ,mouse_load_bt_device 
+0x4325 015847 beq rec_4_mode ,mouse_load_le_device 
+0x4326 015848 rtn 
+:      015850 mouse_load_bt_device:
+0x4327 015851 ifetch 6 ,contr 
+:      015852 mouse_load_bt_device_end:
+0x4328 015853 store 6 ,mem_hci_plap 
+0x4329 015854 arg mem_link_key ,contw 
+0x432a 015855 call memcpy16 
+0x432b 015856 branch check_link_key_load 
+:      015858 mouse_load_le_device:
+0x432c 015859 ifetch 6 ,contr 
+:      015860 mouse_load_le_device_end:
+0x432d 015861 store 6 ,mem_hci_plap 
+0x432e 015862 arg mem_le_ltk ,contw 
+0x432f 015863 call memcpy16 
+0x4330 015864 ifetch 6 ,contr 
+0x4331 015865 store 6 ,mem_le_lap 
+0x4332 015866 rtn 
+:      015869 mouse_select_device:
+0x4333 015870 fetch 1 ,mem_config_function_enable 
+0x4334 015871 bbit1 enable_select_device_by_gpio_button ,mouse_select_device_by_button 
+0x4335 015872 bbit1 enable_select_device_by_switch ,mouse_select_device_by_switch 
+0x4336 015873 branch mouse_select_device_by_combination_key 
+:      015875 mouse_select_device_by_combination_key:
+0x4337 015876 call mouse_check_key_gpio 
+0x4338 015877 beq mouse_rm_button ,mouse_select_device_commbination_key_down 
+:      015878 mouse_select_device_commbination_key_up:
+0x4339 015879 jam 30 ,mem_combination_select_device_count 
+0x433a 015880 fetch 1 ,mem_select_device_button_statue 
+0x433b 015881 rtneq dpi_button_state_up 
+0x433c 015882 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x433d 015883 rtn 
+:      015885 mouse_select_device_commbination_key_down:
+0x433e 015886 call mouse_combination_select_device_timer 
+0x433f 015887 fetch 1 ,mem_select_device_button_statue 
+0x4340 015888 rtneq dpi_button_state_down 
+0x4341 015889 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4342 015890 branch mouse_select_device_enable 
+:      015892 mouse_combination_select_device_timer:
+0x4343 015893 fetch 1 ,mem_combination_select_device_count 
+0x4344 015894 rtn blank 
+0x4345 015895 pincrease -1 
+0x4346 015896 store 1 ,mem_combination_select_device_count 
+0x4347 015897 nrtn blank 
+0x4348 015898 branch mouse_ready_reconnection_by_button 
+:      015900 mouse_select_device_by_button:
+0x4349 015901 fetch 1 ,mem_config_select_device_button_gpio 
+0x434a 015902 rtneq gpio_disable 
+0x434b 015903 fetcht 1 ,mem_config_select_device_button_gpio 
+0x434c 015904 call gpio_get_bit 
+0x434d 015905 branch mouse_select_device_button_down ,true 
+:      015906 mouse_select_device_button_up:
+0x434e 015907 fetch 1 ,mem_select_device_button_statue 
+0x434f 015908 rtneq dpi_button_state_up 
+0x4350 015909 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x4351 015910 fetch mouse_flag_len ,mem_mouse_flag 
+0x4352 015911 rtnbit1 mouse_long_bt_button_flag 
+0x4353 015912 branch mouse_ready_reconnection_by_button 
+:      015914 mouse_select_device_button_down:
+0x4354 015915 fetch 1 ,mem_select_device_button_statue 
+0x4355 015916 rtneq dpi_button_state_down 
+0x4356 015917 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4357 015918 arg mouse_long_bt_button_flag ,queue 
+0x4358 015919 branch mouse_disable_function_flag 
+:      015923 mouse_select_device_by_switch:
+0x4359 015924 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x435a 015925 rtnbit0 enable_select_device_by_switch 
+0x435b 015926 fetch 1 ,mem_device_flag 
+0x435c 015927 beq mode_bt_device1 ,mouse_select1_device 
+0x435d 015928 beq mode_24g_device ,mouse_select2_device 
+0x435e 015929 rtn 
+:      015930 mouse_cheak_select_device_by_switch:
+0x435f 015931 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x4360 015932 rtnbit0 enable_select_device_by_switch 
+0x4361 015933 fetcht 1 ,mem_config_select_device_button_gpio 
+0x4362 015934 call gpio_get_bit 
+0x4363 015935 branch mouse_cheak_select_24gdevice ,true 
+:      015936 mouse_select_btdevice:
+0x4364 015937 jam mode_bt_device1 ,mem_device_flag 
+0x4365 015938 rtn 
+:      015939 mouse_cheak_select_24gdevice:
+0x4366 015940 fetch 1 ,mem_24g_device_number 
+0x4367 015941 store 1 ,mem_device_flag 
+0x4368 015942 rtn 
+:      015943 mouse_select1_device:
+0x4369 015944 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436a 015945 nbranch mouse_ready_reconnection_by_button ,true 
+0x436b 015946 rtn 
+:      015947 mouse_select2_device:
+0x436c 015948 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436d 015949 call gpio_get_bit 
+0x436e 015950 branch mouse_select_device_button_down ,true 
+0x436f 015951 rtn 
+:      015956 mouse_ready_reconnection_by_button:
+0x4370 015957 fetcht 1 ,mem_device_flag 
+0x4371 015958 increase 1 ,temp 
+0x4372 015959 fetch 1 ,mem_device_number 
+0x4373 015960 isub temp ,null 
+0x4374 015961 ncall mouse_select_device_count_clean ,positive 
+0x4375 015962 storet 1 ,mem_device_flag 
+0x4376 015963 jam 0 ,mem_link_key_exists 
+0x4377 015964 call mouse_store_device_number2eeprom 
+:      015965 mouse_ready_reconnection_by_button_next:
+0x4378 015966 call mouse_select_device_enable 
+0x4379 015968 branch mouse_set_reconnection 
+:      015970 mouse_store_device_number2eeprom:
+0x437a 015971 arg 1 ,temp 
+0x437b 015972 arg mem_device_flag ,rega 
+0x437c 015973 arg 0 ,regb 
+0x437d 015974 branch iicd_write_eep_data 
+:      015976 mouse_set_reconnection:
+0x437e 015977 call mouse_stop_bluetooth_mode 
+0x437f 015978 call mouse_select_device_disable 
+0x4380 015979 branch mouse_soft_reset 
+:      015980 mouse_stop_bluetooth_mode:
+0x4381 015981 fetch 2 ,mem_ui_state_map 
+0x4382 015982 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x4383 015983 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x4384 015984 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x4385 015985 branch mouse_stop_discovery 
+:      015987 mouse_disconnect:
+0x4386 015988 bpatch patch1d_5 ,mem_patch1d 
+0x4387 015989 setarg 0 
+0x4388 015990 store 2 ,mem_mouse_no_data_timer 
+0x4389 015991 fetch 2 ,mem_ui_state_map 
+0x438a 015992 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x438b 015993 fetch 2 ,mem_ui_state_map 
+0x438c 015994 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x438d 015995 rtn 
+:      015997 mouse_irtual_cable_unplug:
+0x438e 015998 setarg 0x01 
+0x438f 015999 store 6 ,mem_plap 
+0x4390 016000 jam rec_3_mode ,mem_record_bt_mode 
+0x4391 016001 branch mouse_unplug_clean_bdaddr 
+:      016004 mouse_cancel_reconnect:
+0x4392 016005 call mouse_bt_cannel_reconn_enable 
+0x4393 016006 branch check_51cmd_bb_reconn_cancel 
+:      016008 mouse_bt_discovery_by_button:
+0x4394 016009 fetch 1 ,mem_config_bt_button_gpio 
+0x4395 016010 rtneq gpio_disable 
+0x4396 016011 fetcht 1 ,mem_config_bt_button_gpio 
+0x4397 016012 call gpio_get_bit 
+0x4398 016013 branch mouse_bt_discovery_button_down ,true 
+:      016014 mouse_bt_discovery_button_up:
+0x4399 016015 fetch 1 ,mem_ui_button_timeout 
+0x439a 016016 store 1 ,mem_combination_ui_button_count 
+0x439b 016017 fetch 1 ,mem_bt_discovey_button_statue 
+0x439c 016018 rtneq dpi_button_state_up 
+0x439d 016019 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x439e 016020 branch mouse_bt_discovery_button_down_disable 
+:      016021 mouse_bt_discovery_button_down:
+0x439f 016022 call mouse_bt_discovry_timer 
+0x43a0 016023 fetch 1 ,mem_bt_discovey_button_statue 
+0x43a1 016024 rtneq dpi_button_state_down 
+0x43a2 016025 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43a3 016026 call check_51cmd_bb_reconn_cancel 
+0x43a4 016027 branch mouse_bt_discovery_button_down_enable 
+:      016030 mouse_bt_discovery_cheak:
+0x43a5 016031 fetch 1 ,mem_config_function_enable 
+0x43a6 016032 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
+:      016033 mouse_bt_discovery_commbination_key:
+0x43a7 016034 call mouse_check_key_gpio 
+0x43a8 016035 beq mouse_lmr_button ,mouse_bt_discovery_commbination_key_down 
+:      016036 mouse_bt_discovery_commbination_key_up:
+0x43a9 016037 fetch 1 ,mem_ui_button_timeout 
+0x43aa 016038 store 1 ,mem_combination_ui_button_count 
+0x43ab 016039 fetch 1 ,mem_bt_discovey_button_statue 
+0x43ac 016040 rtneq dpi_button_state_up 
+0x43ad 016041 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x43ae 016042 branch mouse_bt_discovery_button_down_disable 
+:      016045 mouse_bt_discovery_commbination_key_down:
+0x43af 016046 call mouse_bt_discovry_timer 
+0x43b0 016047 fetch 1 ,mem_bt_discovey_button_statue 
+0x43b1 016048 rtneq dpi_button_state_down 
+0x43b2 016049 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43b3 016050 call check_51cmd_bb_reconn_cancel 
+0x43b4 016051 branch mouse_bt_discovery_button_down_enable 
+:      016053 mouse_bt_discovry_timer:
+0x43b5 016054 arg mem_combination_ui_button_count ,regc 
+0x43b6 016055 arg mouse_long_button_bt_discovry ,regb 
+0x43b7 016056 branch timer_single_step 
+:      016058 mouse_long_button_bt_discovry:
+0x43b8 016059 arg mouse_long_bt_button_flag ,queue 
+0x43b9 016060 call mouse_enable_function_flag 
+0x43ba 016061 call app_evt_button_long_pressed 
+0x43bb 016062 branch mouse_bb_event_discovery_btn 
+:      016065 mouse_cpi_enable:
+0x43bc 016066 arg mouse_cpi_flag ,queue 
+0x43bd 016067 branch mouse_enable_function_flag 
+:      016068 mouse_cpi_disable:
+0x43be 016069 arg mouse_cpi_flag ,queue 
+0x43bf 016070 branch mouse_disable_function_flag 
+:      016071 mouse_select_device_enable:
+0x43c0 016072 arg mouse_select_device_flag ,queue 
+0x43c1 016073 branch mouse_enable_function_flag 
+:      016074 mouse_select_device_disable:
+0x43c2 016075 arg mouse_select_device_flag ,queue 
+0x43c3 016076 branch mouse_disable_function_flag 
+:      016077 mouse_bt_cannel_reconn_enable:
+0x43c4 016078 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c5 016079 branch mouse_enable_function_flag 
+:      016080 mouse_bt_cannel_reconn_disable:
+0x43c6 016081 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c7 016082 branch mouse_disable_function_flag 
+:      016083 mouse_bt_discovery_button_down_enable:
+0x43c8 016084 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43c9 016085 branch mouse_enable_function_flag 
+:      016086 mouse_bt_discovery_button_down_disable:
+0x43ca 016087 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43cb 016088 branch mouse_disable_function_flag 
+:      016092 mouse_select_device_count_clean:
+0x43cc 016093 arg 1 ,temp 
+0x43cd 016094 rtn 
+:      016096 mouse_enable_function_flag:
+0x43ce 016097 fetch mouse_flag_len ,mem_mouse_flag 
+0x43cf 016098 qset1 pdata 
+0x43d0 016099 store mouse_flag_len ,mem_mouse_flag 
+0x43d1 016100 rtn 
+:      016102 mouse_disable_function_flag:
+0x43d2 016103 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d3 016104 qset0 pdata 
+0x43d4 016105 store mouse_flag_len ,mem_mouse_flag 
+0x43d5 016106 rtn 
+:      016108 mouse_adc_read:
+0x43d6 016109 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d7 016110 rtnbit0 mouse_enable_adc 
+0x43d8 016111 fetch 1 ,mem_adc_read_timer 
+0x43d9 016112 increase 1 ,pdata 
+0x43da 016113 store 1 ,mem_adc_read_timer 
+0x43db 016114 sub pdata ,10 ,null 
+0x43dc 016115 rtn positive 
+0x43dd 016116 jam 0 ,mem_adc_read_timer 
+0x43de 016117 call adc_set_mode 
+0x43df 016118 call vdd_calculate_by_mode 
+0x43e0 016119 store 2 ,mem_mouse_vdd_now_vol 
+0x43e1 016120 arg mem_mouse_vdd_calculate_set ,rega 
+0x43e2 016121 call adc_bat_percent_lowpower_out 
+0x43e3 016122 fetch 1 ,mem_adc_power_flag 
+0x43e4 016123 bbit1 1 ,mouse_power_down 
+0x43e5 016124 bbit0 0 ,mouse_adc_no_low_voltage 
+0x43e6 016125 branch mouse_adc_low_voltage 
+:      016126 mouse_adc_low_voltage:
+0x43e7 016127 arg mouse_low_voltage_flag ,queue 
+0x43e8 016128 branch mouse_enable_function_flag 
+:      016129 mouse_adc_no_low_voltage:
+0x43e9 016130 arg mouse_low_voltage_flag ,queue 
+0x43ea 016131 branch mouse_disable_function_flag 
+:      016133 mouse_low_voltage_led_timer:
+0x43eb 016134 fetch mouse_flag_len ,mem_mouse_flag 
+0x43ec 016135 rtnbit0 mouse_low_voltage_flag 
+0x43ed 016136 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x43ee 016137 store 1 ,mem_mouse_struct_led_gpio 
+0x43ef 016138 fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f0 016139 pincrease 1 
+0x43f1 016140 store 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f2 016141 sub pdata ,20 ,null 
+0x43f3 016142 ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0x43f4 016143 beq 2 ,mouse_low_voltage_led_on 
+0x43f5 016144 beq 4 ,mouse_low_voltage_led_off 
+0x43f6 016145 beq 6 ,mouse_low_voltage_led_on 
+0x43f7 016146 beq 8 ,mouse_low_voltage_led_off 
+0x43f8 016147 rtn 
+:      016148 mouse_adc_low_volatage_led_timer_count_clean:
+0x43f9 016149 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0x43fa 016150 branch mouse_low_voltage_led_off 
+:      016151 mouse_low_voltage_led_on:
+0x43fb 016152 arg 0 ,rega 
+0x43fc 016153 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x43fd 016154 branch ui_led_on_global 
+:      016155 mouse_low_voltage_led_off:
+0x43fe 016156 arg 0 ,rega 
+0x43ff 016157 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x4400 016158 branch ui_led_off_global 
+:      016160 mouse_g24_package_data:
+0x4401 016161 call mouse_motion 
+0x4402 016162 nrtn user 
+0x4403 016163 arg 7 ,rega 
+0x4404 016164 arg mem_mouse_key ,regb 
+0x4405 016165 rtn 
+:      016167 mouse_g24_enter_lpm:
+0x4406 016168 fetch 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4407 016169 rtn blank 
+0x4408 016171 fetcht 1 ,mem_dpi_button_gpio 
+0x4409 016172 call gpio_get_bit 
+0x440a 016173 call mouse_24g_dpi_delay_init ,true 
+0x440b 016174 fetch 1 ,mem_24g_enter_lpm_timer 
+0x440c 016175 nrtn blank 
+0x440d 016176 call mouse_check_key_gpio 
+0x440e 016177 nrtn blank 
+0x440f 016178 branch g24_lpm_long_sleep 
+:      016180 mouse_24g_dpi_delay_init:
+0x4410 016181 fetch 1 ,mem_dpi_button_gpio 
+0x4411 016182 rtneq ui_button_gpio_disable 
+0x4412 016183 jam 10 ,mem_24g_enter_lpm_timer 
+0x4413 016184 rtn 
+:      016187 mouse_load_flash_info_cheak:
+0x4414 016188 call mouse_load_flash_flag 
+0x4415 016189 fetch 2 ,mem_store_flag 
+0x4416 016190 arg eeprom_init_flag ,temp 
+0x4417 016191 isub temp ,null 
+0x4418 016192 branch mouse_load_flash_device_info ,zero 
+0x4419 016193 storet 2 ,mem_store_flag 
+0x441a 016194 call mouse_ble_init_address 
+0x441b 016195 branch mouse_store_flash_device_info 
+:      016196 mouse_ble_init_address:
+0x441c 016197 fetch 6 ,mem_le_lap 
+0x441d 016198 store 6 ,mem_device1_locall_addr 
+0x441e 016199 add pdata ,0x0100 ,pdata 
+0x441f 016200 store 6 ,mem_device2_locall_addr 
+0x4420 016201 add pdata ,0x0100 ,pdata 
+0x4421 016202 store 6 ,mem_device3_locall_addr 
+0x4422 016203 rtn 
+:      016206 mouse_load_flash_flag:
+0x4423 016207 setarg mem_store_flag 
+0x4424 016208 arg mem_mouse_information_start ,temp 
+0x4425 016209 isub temp ,temp 
+0x4426 016210 fetch 3 ,mem_flash_base 
+0x4427 016211 iadd temp ,pdata 
+0x4428 016212 arg 2 ,temp 
+0x4429 016213 arg mem_store_flag ,rega 
+0x442a 016214 branch spid_read_flash 
+:      016217 mouse_load_flash_device_info:
+0x442b 016218 setarg mem_mouse_information_end 
+0x442c 016219 arg mem_mouse_information_start ,temp 
+0x442d 016220 isub temp ,temp 
+0x442e 016221 fetch 3 ,mem_flash_base 
+0x442f 016222 arg mem_mouse_information_start ,rega 
+0x4430 016223 call spid_read_flash 
+0x4431 016224 call mouse_select_reconn_device 
+0x4432 016225 fetch 4 ,mem_mouse_24g_addr 
+0x4433 016226 call g24_head_ptr2regc 
+0x4434 016227 branch g24_store_mem_addr 
+:      016229 mouse_store_flash_device_info:
+0x4435 016230 setarg mem_mouse_information_end 
+0x4436 016231 arg mem_mouse_information_start ,temp 
+0x4437 016232 isub temp ,temp 
+0x4438 016233 arg mem_mouse_information_start ,rega 
+0x4439 016234 fetch 3 ,mem_flash_base 
+0x443a 016235 branch flash_write 
+:      016237 mouse_store_eerpom_dpi:
+0x443b 016238 arg 1 ,temp 
+0x443c 016239 arg mem_mouse_dpi ,rega 
+0x443d 016240 arg mouse_dpi_eeprom_offect ,regb 
+0x443e 016241 branch iicd_write_protect_eep_data 
+:      016243 mouse_load_eeprom_dpi:
+0x443f 016244 arg 1 ,temp 
+0x4440 016245 arg mem_mouse_dpi ,rega 
+0x4441 016246 arg mouse_dpi_eeprom_offect ,regb 
+0x4442 016247 branch iicd_read_eep_data 
+:      016249 mouse_statue_cheak_timer:
+0x4443 016250 rtnmark1 mark_24g 
+0x4444 016251 fetch mouse_flag_len ,mem_mouse_flag 
+0x4445 016252 rtnbit0 mouse_enable_statue_up 
+0x4446 016253 fetch 1 ,mem_mouse_1step_up_count 
+0x4447 016254 pincrease 1 
+0x4448 016255 and pdata ,0x07 ,pdata 
+0x4449 016256 store 1 ,mem_mouse_1step_up_count 
+0x444a 016257 rtnne 0x07 
+0x444b 016258 fetch 2 ,mem_ui_state_map 
+0x444c 016259 bbit1 ui_state_bt_connected ,mouse_check_statue_up 
+0x444d 016260 bbit1 ui_state_ble_connected ,mouse_check_statue_up 
+0x444e 016261 rtn 
+:      016266 mouse_check_statue_up:
+0x444f 016267 bpatch patch1d_6 ,mem_patch1d 
+0x4450 016268 fetch 1 ,mem_mouse_2step_up_count 
+0x4451 016269 nrtn blank 
+0x4452 016270 fetch mouse_flag_len ,mem_mouse_flag 
+0x4453 016271 rtnbit0 mouse_statue_up_flag 
+0x4454 016272 fetch 1 ,mem_sensor_squal_reg 
+0x4455 016273 call sensor_read 
+0x4456 016274 store 1 ,mem_sensor_iqc 
+0x4457 016275 sub pdata ,0x10 ,null 
+0x4458 016276 branch mouse_statue_up_timer_init ,positive 
+0x4459 016277 jam 0 ,mem_mouse_2step_up_count 
+0x445a 016278 rtn 
+:      016280 mouse_statue_up_timer_init:
+0x445b 016281 jam 30 ,mem_mouse_2step_up_count 
+0x445c 016282 rtn 
+:      016283 mouse_statue_up_timer:
+0x445d 016284 arg mem_mouse_2step_up_count ,regc 
+0x445e 016285 arg mouse_statue_up ,regb 
+0x445f 016286 branch timer_single_step 
+:      016288 mouse_statue_up:
+0x4460 016289 fetch 1 ,mem_sensor_squal_reg 
+0x4461 016290 call twspi_read 
+0x4462 016291 sub pdata ,0x10 ,null 
+0x4463 016292 nrtn positive 
+0x4464 016293 fetch mouse_flag_len ,mem_mouse_flag 
+0x4465 016294 rtnbit0 mouse_statue_up_flag 
+0x4466 016295 arg mouse_statue_up_flag ,queue 
+0x4467 016296 call mouse_disable_function_flag 
+0x4468 016297 jam 0 ,mem_lpm_mult 
+0x4469 016298 jam 30 ,mem_mouse_statue_led_timer 
+0x446a 016299 call mouse_devce_led_off 
+0x446b 016300 fetch mouse_flag_len ,mem_mouse_flag 
+0x446c 016301 bbit1 mouse_enable_statue_up_three_led ,mouse_three_device_statue_up 
+:      016302 mouse_two_device_statue_up:
+0x446d 016303 fetch 1 ,mem_device_flag 
+0x446e 016304 beq mode_bt_device1 ,mouse_device1_led_on 
+0x446f 016305 beq mode_bt_device2 ,mouse_device_blink_led_init 
+0x4470 016306 rtn 
+:      016307 mouse_three_device_statue_up:
+0x4471 016308 fetch 1 ,mem_device_flag 
+0x4472 016309 beq mode_bt_device1 ,mouse_device1_led_on 
+0x4473 016310 beq mode_bt_device2 ,mouse_device2_led_on 
+0x4474 016311 beq mode_bt_device3 ,mouse_device3_led_on 
+0x4475 016312 rtn 
+:      016314 mouse_device_blink_led_init:
+0x4476 016315 fetch 1 ,mem_config_device1_led_gpio 
+0x4477 016316 branch mouse_led_blink 
+:      016320 mouse_statue_led_off:
+0x4478 016321 jam 0x20 ,mem_lpm_mult 
+0x4479 016322 branch mouse_devce_led_off 
+:      016326 mouse_devce1_led_off:
+0x447a 016327 fetch 1 ,mem_config_device1_led_gpio 
+0x447b 016328 rtneq gpio_disable 
+0x447c 016329 store 1 ,mem_mouse_struct_led_gpio 
+0x447d 016330 branch mouse_led_off 
+:      016332 mouse_devce2_led_off:
+0x447e 016333 fetch 1 ,mem_config_device2_led_gpio 
+0x447f 016334 rtneq gpio_disable 
+0x4480 016335 store 1 ,mem_mouse_struct_led_gpio 
+0x4481 016336 branch mouse_led_off 
+:      016338 mouse_devce_led_off:
+0x4482 016339 call mouse_led_off 
+0x4483 016340 call mouse_devce1_led_off 
+0x4484 016341 call mouse_devce2_led_off 
+:      016342 mouse_devce3_led_off:
+0x4485 016343 fetch 1 ,mem_config_device3_led_gpio 
+0x4486 016344 rtneq gpio_disable 
+0x4487 016345 store 1 ,mem_mouse_struct_led_gpio 
+0x4488 016346 branch mouse_led_off 
+:      016348 mouse_device1_led_on:
+0x4489 016349 fetch 1 ,mem_config_device1_led_gpio 
+0x448a 016350 store 1 ,mem_mouse_struct_led_gpio 
+0x448b 016351 branch mouse_led_on 
+:      016352 mouse_device2_led_on:
+0x448c 016353 fetch 1 ,mem_config_device2_led_gpio 
+0x448d 016354 store 1 ,mem_mouse_struct_led_gpio 
+0x448e 016355 branch mouse_led_on 
+:      016356 mouse_device3_led_on:
+0x448f 016357 fetch 1 ,mem_config_device3_led_gpio 
+0x4490 016358 store 1 ,mem_mouse_struct_led_gpio 
+0x4491 016359 branch mouse_led_on 
+:      016363 mouse_polling_device:
+0x4492 016364 bpatch patch1d_7 ,mem_patch1d 
+0x4493 016365 fetch 1 ,mem_reconn_times 
+0x4494 016366 increase -1 ,pdata 
+0x4495 016367 store 1 ,mem_reconn_times 
+0x4496 016368 fetcht 1 ,mem_device_flag 
+0x4497 016369 increase 1 ,temp 
+0x4498 016370 fetch 1 ,mem_device_number 
+0x4499 016371 isub temp ,null 
+0x449a 016372 ncall mouse_select_device_count_clean ,positive 
+0x449b 016373 storet 1 ,mem_device_flag 
+0x449c 016374 jam 0 ,mem_link_key_exists 
+0x449d 016375 call mouse_store_device_number2eeprom 
+0x449e 016376 call mouse_before_store_reconn_info 
+0x449f 016377 branch mouse_check_reconn_target 
+:      016379 mouse_power_down:
+0x44a0 016380 call mouse_devce_led_off 
+0x44a1 016381 setarg 0 
+0x44a2 016382 store 8 ,mem_gpio_wakeup_low 
+0x44a3 016383 branch lpm_hibernate 
+:      016394 remote_car_init:
+0x44a4 016395 rtn wake 
+0x44a5 016396 hfetch 1 ,core_gpio_sel1 
+0x44a6 016397 and_into 0xf0 ,pdata 
+0x44a7 016398 hstore 1 ,core_gpio_sel1 
+0x44a8 016399 call keyscan_key_init 
+0x44a9 016400 setarg remote_car_le_before_hibernate 
+0x44aa 016401 store 2 ,mem_cb_before_hibernate 
+0x44ab 016403 setarg remote_car_process_lpm_before 
+0x44ac 016404 store 2 ,mem_cb_before_lpm 
+0x44ad 016406 setarg remote_car_scale_process_idle 
+0x44ae 016407 store 2 ,mem_cb_idle_process 
+0x44af 016409 setarg remote_car_scale_process_bb_event 
+0x44b0 016410 store 2 ,mem_cb_bb_event_process 
+0x44b1 016412 setarg app_get_lpm_wake_lock 
+0x44b2 016413 store 2 ,mem_cb_check_wakelock 
+0x44b3 016415 call g24_head_ptr2regc 
+0x44b4 016416 setarg remote_car_g24_package_data 
+0x44b5 016417 add regc ,offset_24g_cb_data ,contw 
+0x44b6 016418 istore 2 ,contw 
+0x44b7 016420 setarg remote_car_g24_enter_lpm 
+0x44b8 016421 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x44b9 016422 istore 2 ,contw 
+0x44ba 016424 setarg remote_car_process_lpm_before 
+0x44bb 016425 add regc ,offset_24g_cb_lpm_before ,contw 
+0x44bc 016426 istore 2 ,contw 
+0x44bd 016428 setarg remote_car_event_timer 
+0x44be 016429 store 2 ,mem_cb_event_timer 
+0x44bf 016431 setarg remote_car_power_off_signal 
+0x44c0 016432 store 2 ,mem_remote_car_power_off_cb 
+0x44c1 016434 setarg remote_car_soft_switch_power_on_signal 
+0x44c2 016435 store 2 ,mem_remote_car_power_standby_cb 
+0x44c3 016437 setarg remote_car_send_key_data 
+0x44c4 016438 store 2 ,mem_cb_remote_car_keyscan 
+0x44c5 016440 bpatch patch1e_0 ,mem_patch1e 
+0x44c6 016441 call remote_car_init_environment 
+0x44c7 016442 call queue_init 
+0x44c8 016443 jam 2 ,mem_lpm_mult 
+0x44c9 016444 fetch 1 ,mem_remote_car_config_soft_switch_enable 
+0x44ca 016445 store 1 ,mem_remote_car_hard_soft_switch 
+0x44cb 016446 beq hard_switch ,remote_car_hard_switch_power_on_signal 
+0x44cc 016447 fetch 1 ,mem_remote_car_config_soft_switch_gpio 
+0x44cd 016448 store 1 ,mem_ui_button_gpio 
+:      016449 remote_car_soft_switch_power_on_init:
+0x44ce 016450 call remote_car_ui_led_init 
+0x44cf 016451 call ui_button_init 
+0x44d0 016452 call ui_button_polling 
+0x44d1 016453 jam power_starting ,mem_remote_car_power_state 
+0x44d2 016454 fetch 2 ,mem_ui_state_map 
+0x44d3 016455 rtnbit1 ui_state_btn_down 
+0x44d4 016456 branch app_enter_hibernate 
+:      016460 remote_car_hard_switch_power_on_signal:
+0x44d5 016461 jam power_standby ,mem_remote_car_power_state 
+:      016462 remote_car_soft_switch_power_on_signal:
+0x44d6 016463 call remote_car_ui_led_init 
+0x44d7 016465 arg 0 ,rega 
+0x44d8 016466 call ui_led_blink_start_global 
+:      016467 remote_car_connect_24g_mode:
+0x44d9 016468 branch g24_auto_pair_start 
+:      016470 remote_car_power_off_signal:
+0x44da 016471 branch remote_car_ui_led_init 
+:      016473 remote_car_ui_led_init:
+0x44db 016474 bpatch patch1e_1 ,mem_patch1e 
+0x44dc 016475 fetch 1 ,mem_remote_car_config_connect_led_gpio 
+0x44dd 016476 bne invalid_pin_num ,remote_car_pairing_led_gpio_set 
+:      016477 remote_car_ui_led_init_1:
+0x44de 016478 fetcht 1 ,mem_remote_car_led_map 
+0x44df 016479 branch gpio_config_output 
+:      016480 remote_car_pairing_led_gpio_set:
+0x44e0 016481 store 1 ,mem_remote_car_led_map 
+0x44e1 016482 branch remote_car_ui_led_init_1 
+:      016485 remote_car_init_environment:
+0x44e2 016486 call g24_set_device_addr 
+0x44e3 016487 fetch 2 ,mem_remote_car_no_data_timeout 
+0x44e4 016488 store 2 ,mem_remote_car_no_data_timer 
+0x44e5 016489 branch remote_car_get_adc_default_data 
+:      016491 remote_car_le_before_hibernate:
+:      016496 remote_car_in_enter_hibernate:
+0x44e6 016497 call gpio_set_before_lpm_common 
+0x44e7 016498 call remote_car_process_lpm_before 
+0x44e8 016499 branch app_enter_hibernate 
+:      016501 remote_car_process_lpm_before:
+0x44e9 016502 branch keyscan_process_lpm_before 
+:      016504 remote_car_g24_enter_lpm:
+0x44ea 016505 fetch 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44eb 016506 rtn blank 
+0x44ec 016508 branch g24_lpm_long_sleep 
+:      016510 remote_car_process_auto_pair_exit:
+0x44ed 016511 rtn 
+:      016513 remote_car_key_scan_process:
+0x44ee 016514 branch keyscan_key_process 
+:      016516 remote_car_scale_process_idle:
+0x44ef 016517 call remote_car_rocker_process 
+0x44f0 016518 call remote_car_24g_status_process 
+0x44f1 016519 branch remote_car_key_scan_process 
+:      016521 remote_car_scale_process_bb_event:
+0x44f2 016522 copy regc ,pdata 
+0x44f3 016523 beq bt_evt_button_up ,app_event_button_up 
+0x44f4 016524 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x44f5 016525 beq bt_evt_24g_pairing_complete ,remote_car_24g_pairing_complete 
+0x44f6 016526 beq bt_evt_24g_attempt_success ,remote_car_24g_attempt_success 
+0x44f7 016527 beq bt_evt_24g_attempt_fail ,remote_car_24g_attempt_fail 
+0x44f8 016528 rtn 
+:      016530 remote_car_24g_attempt_fail:
+0x44f9 016531 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fa 016532 rtn 
+:      016534 remote_car_24g_pairing_complete:
+0x44fb 016535 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fc 016536 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x44fd 016537 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x44fe 016538 rtn 
+:      016540 remote_car_24g_attempt_success:
+0x44ff 016541 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x4500 016542 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x4501 016543 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x4502 016544 rtn 
+:      016546 remote_car_24g_status_process:
+0x4503 016547 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4504 016548 rtneq power_on 
+0x4505 016549 fetch 1 ,mem_remote_car_24g_status 
+0x4506 016550 rtneq work_paired 
+0x4507 016551 jam work_paired ,mem_remote_car_24g_status 
+:      016552 remote_car_scale_process_paired:
+0x4508 016553 arg 0 ,rega 
+0x4509 016554 branch ui_led_off_global 
+:      016555 remote_car_scale_process_shutdown:
+0x450a 016556 arg 0 ,rega 
+0x450b 016557 call ui_led_off_global 
+0x450c 016558 call remote_car_ui_led_init 
+0x450d 016559 branch app_enter_hibernate 
+:      016561 remote_car_event_timer:
+0x450e 016562 call app_power_timer 
+0x450f 016563 branch remote_car_no_data_timer 
+:      016565 remote_car_no_data_timer:
+0x4510 016566 fetch 1 ,mem_remote_car_config_timeout_shutdown_enable 
+0x4511 016567 rtn blank 
+0x4512 016568 arg mem_remote_car_no_data_timer ,regc 
+0x4513 016569 arg remote_car_scale_process_shutdown ,regb 
+0x4514 016570 branch timer_single_step_2b 
+:      016573 remote_car_get_adc_default_data:
+0x4515 016574 call remote_car_rocker_get_x 
+0x4516 016575 storet 2 ,mem_current_vdd_value_default_mid_x 
+0x4517 016576 call remote_car_rocker_get_y 
+0x4518 016577 storet 2 ,mem_current_vdd_value_default_mid_y 
+0x4519 016578 rtn 
+:      016579 remote_car_rocker_data_get:
+:      016580 remote_car_rocker_get_x:
+0x451a 016581 fetch 2 ,mem_current_vdd_value_default_mid_x 
+0x451b 016582 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x451c 016583 call remote_car_get_adc_from_gpio6 
+0x451d 016584 call remote_car_rocker_get_value 
+0x451e 016585 store 1 ,mem_rocker_status 
+:      016586 remote_car_rocker_get_y:
+0x451f 016587 fetch 2 ,mem_current_vdd_value_default_mid_y 
+0x4520 016588 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x4521 016589 call remote_car_get_adc_from_gpio7 
+0x4522 016590 call remote_car_rocker_get_value 
+0x4523 016591 store 1 ,mem_rocker_status + 1 
+0x4524 016592 rtn 
+:      016593 remote_car_rocker_get_value:
+0x4525 016594 fetch 2 ,mem_current_vdd_default_range 
+0x4526 016595 copy pdata ,rega 
+0x4527 016596 fetch 2 ,mem_current_vdd_value_default_mid_temp 
+0x4528 016597 call remote_car_rocker_mid_value_adjust 
+0x4529 016598 fetch 1 ,mem_rocker_work_status 
+0x452a 016599 nbranch remote_car_rocker_translate_key ,blank 
+0x452b 016600 nrtn positive 
+0x452c 016601 fetcht 2 ,mem_current_vdd_value_default_mid_temp 
+0x452d 016602 rtn 
+:      016603 remote_car_rocker_mid_value_adjust:
+0x452e 016604 isub temp ,pdata 
+0x452f 016605 branch remote_car_rocker_mid_adjust_positive ,positive 
+0x4530 016606 sub pdata ,0 ,pdata 
+0x4531 016607 jam 1 ,mem_rocker_negative_flag 
+0x4532 016608 isub rega ,null 
+0x4533 016609 rtn 
+:      016610 remote_car_rocker_mid_adjust_positive:
+0x4534 016611 jam 0 ,mem_rocker_negative_flag 
+0x4535 016612 isub rega ,null 
+0x4536 016613 rtn 
+:      016614 remote_car_rocker_translate_key:
+0x4537 016615 nbranch remote_car_rocker_middle_key ,positive 
+0x4538 016616 fetch 1 ,mem_rocker_negative_flag 
+0x4539 016617 nbranch remote_car_rocker_negative_key ,blank 
+:      016618 remote_car_rocker_positive_key:
+0x453a 016619 setarg rocker_positive_key 
+0x453b 016620 rtn 
+:      016621 remote_car_rocker_negative_key:
+0x453c 016622 setarg rocker_negative_key 
+0x453d 016623 rtn 
+:      016624 remote_car_rocker_middle_key:
+0x453e 016625 setarg rocker_middle_key 
+0x453f 016626 rtn 
+:      016627 remote_car_get_adc_from_gpio6:
+0x4540 016628 jam 0x33 ,mem_adc_channel 
+0x4541 016629 branch adc_set_mode 
+:      016630 remote_car_get_adc_from_gpio7:
+0x4542 016631 jam 0x34 ,mem_adc_channel 
+0x4543 016632 branch adc_set_mode 
+:      016635 remote_car_rocker_process:
+0x4544 016636 fetch 1 ,mem_remote_car_config_check_way 
+0x4545 016637 rtnne car_remote_check_rocker 
+:      016638 remote_car_read_rocker_check_start:
+0x4546 016639 bpatch patch1e_2 ,mem_patch1e 
+0x4547 016640 jam 1 ,mem_rocker_work_status 
+0x4548 016641 call remote_car_rocker_data_get 
+0x4549 016642 fetch 2 ,mem_rocker_status 
+0x454a 016643 fetcht 2 ,mem_rocker_last_status 
+0x454b 016644 isub temp ,null 
+0x454c 016645 rtn zero 
+0x454d 016646 store 2 ,mem_rocker_last_status 
+0x454e 016647 call remote_car_rocker_x_to_key 
+0x454f 016648 branch remote_car_rocker_y_to_key 
+:      016650 remote_car_rocker_x_to_key:
+0x4550 016651 fetch 1 ,mem_rocker_x_status 
+0x4551 016652 branch rocker_to_queue_set_0 ,blank 
+0x4552 016653 increase -1 ,pdata 
+0x4553 016654 branch remote_car_rocker_to_key 
+:      016655 remote_car_rocker_y_to_key:
+0x4554 016656 fetch 1 ,mem_rocker_y_status 
+0x4555 016657 branch rocker_to_queue_set_2 ,blank 
+0x4556 016658 increase 1 ,pdata 
+:      016659 remote_car_rocker_to_key:
+0x4557 016660 copy pdata ,queue 
+0x4558 016661 arg 1 ,rega 
+0x4559 016662 branch remote_car_send_key_data 
+:      016664 rocker_to_queue_set_0:
+0x455a 016665 arg 0 ,queue 
+0x455b 016666 arg 0 ,rega 
+0x455c 016667 branch remote_car_send_key_data 
+:      016668 rocker_to_queue_set_2:
+0x455d 016669 arg 2 ,queue 
+0x455e 016670 arg 0 ,rega 
+0x455f 016671 branch remote_car_send_key_data 
+:      016673 remote_car_send_key_data:
+0x4560 016674 copy rega ,pdata 
+0x4561 016675 store 1 ,mem_remote_key_status 
+0x4562 016676 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4563 016677 beq power_on ,g24_auto_pair_start 
+0x4564 016678 fetch 2 ,mem_remote_car_no_data_timeout 
+0x4565 016679 store 2 ,mem_remote_car_no_data_timer 
+0x4566 016680 fetch 1 ,mem_remote_key_status 
+0x4567 016681 branch remote_car_key_is_release ,blank 
+:      016682 remote_car_key_is_press:
+0x4568 016683 bpatch patch1e_3 ,mem_patch1e 
+0x4569 016684 arg 0 ,rega 
+0x456a 016685 call ui_led_on_global 
+:      016686 remote_car_attack_key_press:
+0x456b 016687 copy queue ,pdata 
+0x456c 016688 beq 4 ,remote_car_send_attack_key4_press 
+0x456d 016689 beq 5 ,remote_car_send_attack_key5_press 
+0x456e 016690 beq 6 ,remote_car_send_fire_key6_press 
+:      016693 remote_car_motor_key_press:
+0x456f 016694 call remote_car_device_layout_select 
+0x4570 016695 beq control_f_b_ten ,remote_car_single_motor_key_is_press 
+0x4571 016696 beq control_l_r_ten ,remote_car_double_motor_key_press 
+0x4572 016697 beq control_l_r_lr ,remote_car_single_motor_key_is_press 
+0x4573 016698 rtn 
+:      016700 remote_car_single_motor_key_is_press:
+0x4574 016701 copy queue ,pdata 
+0x4575 016702 beq 0 ,remote_car_send_motor1_key0_press 
+0x4576 016703 beq 1 ,remote_car_send_motor1_key1_press 
+0x4577 016704 beq 2 ,remote_car_send_motor2_key2_press 
+0x4578 016705 beq 3 ,remote_car_send_motor2_key3_press 
+0x4579 016706 rtn 
+:      016708 remote_car_double_motor_key_press:
+0x457a 016709 copy queue ,pdata 
+0x457b 016710 beq 0 ,remote_car_send_double_motor_key0_press 
+0x457c 016711 beq 1 ,remote_car_send_double_motor_key1_press 
+0x457d 016712 beq 2 ,remote_car_send_double_motor_key2_press 
+0x457e 016713 beq 3 ,remote_car_send_double_motor_key3_press 
+0x457f 016714 rtn 
+:      016716 remote_car_key_is_release:
+0x4580 016717 bpatch patch1e_4 ,mem_patch1e 
+0x4581 016718 arg 0 ,rega 
+0x4582 016719 call ui_led_off_global 
+:      016720 remote_car_attack_key_release:
+0x4583 016721 copy queue ,pdata 
+0x4584 016722 beq 4 ,remote_car_send_attack_key4_rel 
+0x4585 016723 beq 5 ,remote_car_send_attack_key5_rel 
+:      016726 remote_car_motor_key_release:
+0x4586 016727 call remote_car_device_layout_select 
+0x4587 016728 beq control_f_b_ten ,remote_car_single_motor_key_rel 
+0x4588 016729 beq control_l_r_ten ,remote_car_double_motor_key_rel 
+0x4589 016730 beq control_l_r_lr ,remote_car_single_motor_key_rel 
+0x458a 016731 rtn 
+:      016733 remote_car_device_layout_select:
+0x458b 016734 fetch 1 ,mem_remote_car_config_layout 
+0x458c 016735 fetcht 1 ,mem_remote_car_config_key_map 
+0x458d 016736 ior temp ,pdata 
+0x458e 016737 rtn 
+:      016740 remote_car_send_motor1_key0_press:
+0x458f 016741 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4590 016742 branch remote_car_send_key 
+:      016743 remote_car_send_motor1_key1_press:
+0x4591 016744 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x4592 016745 branch remote_car_send_key 
+:      016746 remote_car_send_motor2_key2_press:
+0x4593 016747 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4594 016748 branch remote_car_send_key 
+:      016749 remote_car_send_motor2_key3_press:
+0x4595 016750 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x4596 016751 branch remote_car_send_key 
+:      016754 remote_car_send_double_motor_key0_press:
+0x4597 016755 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4598 016756 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4599 016757 branch remote_car_send_key 
+:      016758 remote_car_send_double_motor_key1_press:
+0x459a 016759 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459b 016760 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x459c 016761 branch remote_car_send_key 
+:      016762 remote_car_send_double_motor_key2_press:
+0x459d 016763 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459e 016764 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x459f 016765 branch remote_car_send_key 
+:      016766 remote_car_send_double_motor_key3_press:
+0x45a0 016767 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x45a1 016768 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x45a2 016769 branch remote_car_send_key 
+:      016772 remote_car_send_attack_key4_press:
+0x45a3 016773 jam motor_positive ,mem_remote_car_24g_motor3_payload 
+0x45a4 016774 branch remote_car_send_key 
+:      016775 remote_car_send_attack_key5_press:
+0x45a5 016776 jam motor_negative ,mem_remote_car_24g_motor3_payload 
+0x45a6 016777 branch remote_car_send_key 
+:      016779 remote_car_send_fire_key6_press:
+0x45a7 016780 jam 0x01 ,mem_remote_car_24g_fire_send_payload 
+0x45a8 016781 branch remote_car_send_attack 
+:      016783 remote_car_single_motor_key_rel:
+0x45a9 016784 copy queue ,pdata 
+0x45aa 016785 beq 0 ,remote_car_send_motor1_key0_rel 
+0x45ab 016786 beq 1 ,remote_car_send_motor1_key1_rel 
+0x45ac 016787 beq 2 ,remote_car_send_motor2_key2_rel 
+0x45ad 016788 beq 3 ,remote_car_send_motor2_key3_rel 
+0x45ae 016789 rtn 
+:      016791 remote_car_double_motor_key_rel:
+0x45af 016792 copy queue ,pdata 
+0x45b0 016793 beq 0 ,remote_car_send_double_motor_key0_rel 
+0x45b1 016794 beq 1 ,remote_car_send_double_motor_key1_rel 
+0x45b2 016795 beq 2 ,remote_car_send_double_motor_key2_rel 
+0x45b3 016796 beq 3 ,remote_car_send_double_motor_key3_rel 
+0x45b4 016797 rtn 
+:      016799 remote_car_send_motor1_key0_rel:
+:      016800 remote_car_send_motor1_key1_rel:
+0x45b5 016801 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45b6 016802 branch remote_car_send_key 
+:      016803 remote_car_send_motor2_key2_rel:
+:      016804 remote_car_send_motor2_key3_rel:
+0x45b7 016805 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45b8 016806 branch remote_car_send_key 
+:      016808 remote_car_send_double_motor_key0_rel:
+:      016809 remote_car_send_double_motor_key1_rel:
+:      016810 remote_car_send_double_motor_key2_rel:
+:      016811 remote_car_send_double_motor_key3_rel:
+0x45b9 016812 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45ba 016813 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45bb 016814 branch remote_car_send_key 
+:      016816 remote_car_send_attack_key4_rel:
+:      016817 remote_car_send_attack_key5_rel:
+0x45bc 016818 jam motor_stop ,mem_remote_car_24g_motor3_payload 
+0x45bd 016819 branch remote_car_send_key 
+:      016821 remote_car_send_key:
+0x45be 016822 arg mem_remote_car_24g_motor_packet ,rega 
+0x45bf 016823 branch queue_push 
+:      016824 remote_car_send_attack:
+0x45c0 016825 arg mem_remote_car_24g_fire_packet ,rega 
+0x45c1 016826 branch queue_push 
+:      016828 remote_car_g24_package_data:
+0x45c2 016829 fetch 1 ,mem_remote_car_24g_pair_success_flag 
+0x45c3 016830 beq work_paired ,remote_car_g24_send_empty 
+0x45c4 016831 arg mem_remote_car_24g_tx_temp ,rega 
+0x45c5 016832 call queue_pop 
+0x45c6 016833 nbranch remote_car_moto_data ,user 
+:      016834 remote_car_g24_package_data_continue:
+0x45c7 016835 arg mem_remote_car_24g_tx_temp ,contr 
+0x45c8 016836 ifetch 1 ,contr 
+0x45c9 016837 copy pdata ,rega 
+0x45ca 016838 arg mem_remote_car_24g_tx_temp + 1 ,regb 
+0x45cb 016841 rtn 
+:      016843 remote_car_g24_send_empty:
+0x45cc 016844 jam 0 ,mem_remote_car_24g_pair_success_flag 
+0x45cd 016845 enable user 
+0x45ce 016846 arg 1 ,rega 
+0x45cf 016847 arg mem_remote_car_empty_packet ,regb 
+0x45d0 016848 rtn 
+:      016850 remote_car_moto_data:
+0x45d1 016851 fetch 1 ,mem_remote_car_24g_tx_temp + 3 
+0x45d2 016852 beq car_cmd_l_r_motor_control ,remote_car_moto_data_next 
+0x45d3 016853 beq car_cmd_f_b_motor_control ,remote_car_moto_data_next 
+0x45d4 016854 rtn 
+:      016855 remote_car_moto_data_next:
+0x45d5 016856 fetch 1 ,mem_remote_car_24g_tx_temp + 6 
+0x45d6 016857 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d7 016858 fetch 1 ,mem_remote_car_24g_tx_temp + 8 
+0x45d8 016859 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d9 016860 fetch 1 ,mem_remote_car_24g_tx_temp + 10 
+0x45da 016861 nbranch remote_car_moto_data_enable_user ,blank 
+0x45db 016862 rtn 
+:      016863 remote_car_moto_data_enable_user:
+0x45dc 016864 enable user 
+0x45dd 016865 branch remote_car_g24_package_data_continue 
+:      016873 shutter_init:
+0x45de 016874 rtn wake 
+0x45df 016875 hfetch 1 ,core_gpio_sel1 
+0x45e0 016876 and_into 0xfc ,pdata 
+0x45e1 016877 hstore 1 ,core_gpio_sel1 
+0x45e2 016878 setarg shutter_le_before_hibernate 
+0x45e3 016879 store 2 ,mem_cb_before_hibernate 
+0x45e4 016881 setarg shutter_process_lpm_before 
+0x45e5 016882 store 2 ,mem_cb_before_lpm 
+0x45e6 016884 setarg app_enter_hibernate 
+0x45e7 016885 store 2 ,mem_cb_discovry_timeout 
+0x45e8 016887 setarg shutter_process_idle 
+0x45e9 016888 store 2 ,mem_cb_idle_process 
+0x45ea 016890 setarg shutter_process_bb_event 
+0x45eb 016891 store 2 ,mem_cb_bb_event_process 
+0x45ec 016893 setarg shutter_le_scale_lpm_lock 
+0x45ed 016894 store 2 ,mem_cb_check_wakelock 
+0x45ee 016896 setarg ble_shutter_receive_data 
+0x45ef 016897 store 2 ,mem_cb_att_write 
+0x45f0 016899 setarg shutter_le_bb_event_timer 
+0x45f1 016900 store 2 ,mem_cb_event_timer 
+0x45f2 016902 setarg shutter_key_change 
+0x45f3 016903 store 2 ,mem_cb_shutter_keycan 
+0x45f4 016905 setarg shutter_soft_swtich_power_on 
+0x45f5 016906 store 2 ,mem_shutter_soft_switch_poweron_callback_function 
+0x45f6 016907 setarg shutter_soft_swtich_power_off 
+0x45f7 016908 store 2 ,mem_shutter_soft_switch_poweroff_callback_function 
+0x45f8 016910 call le_modified_name 
+0x45f9 016911 call shutter_load_bluetooth_config_by_user_config 
+0x45fa 016912 call shutter_init_bluetooth_config 
+0x45fb 016913 call shutter_init_param 
+0x45fc 016914 call keyscan_key_init 
+0x45fd 016915 call shutter_load_buffer_config_form_datarom 
+0x45fe 016916 call queue_init 
+0x45ff 016917 call ui_led_init_global 
+0x4600 016918 call shutter_load_bluetooth_config 
+0x4601 016919 call shutter_load_bluetooth_config_by_eeprom 
+0x4602 016921 bpatch patch1e_5 ,mem_patch1e 
+0x4603 016922 call classic_shutter_load_reconn_info 
+0x4604 016923 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4605 016924 beq hard_switch ,shutter_hart_swtich_power_on 
+0x4606 016925 fetch 1 ,mem_shutter_soft_switch_button_gpio 
+0x4607 016926 store 1 ,mem_ui_button_gpio 
+0x4608 016927 branch ui_soft_swtich_init 
+:      016930 shutter_hart_swtich_power_on:
+0x4609 016931 jam ui_button_gpio_disable ,mem_ui_button_gpio 
+0x460a 016932 jam ss_state_power_on ,mem_shutter_soft_switch_power_state 
+0x460b 016933 branch shutter_start_reconnect 
+:      016937 shutter_le_scale_lpm_lock:
+0x460c 016938 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x460d 016939 beq ss_state_power_off ,app_get_lpm_wake_lock 
+0x460e 016940 call l2cap_malloc_get_full_map 
+0x460f 016941 fetch 1 ,mem_used_map 
+0x4610 016942 nbranch app_get_lpm_wake_lock ,blank 
+0x4611 016943 branch app_put_lpm_wake_lock 
+:      016947 shutter_process_bb_event:
+0x4612 016948 copy regc ,pdata 
+0x4613 016950 beq bt_evt_bb_connected ,classic_shutter_process_baseband_connect 
+0x4614 016951 beq bt_evt_bb_disconnected ,classic_shutter_process_baseband_disconnect 
+0x4615 016952 beq bt_evt_reconn_failed ,classic_shutter_process_reconnect_failed 
+0x4616 016953 beq bt_evt_setup_complete ,classic_shutter_process_setup_complete 
+0x4617 016954 beq bt_evt_hid_connected ,classic_shutter_process_hid_connect 
+0x4618 016955 beq bt_evt_hid_disconnected ,classic_shutter_process_hid_disconnect 
+0x4619 016956 beq bt_evt_hid_handshake ,classic_shutter_process_hid_handshake 
+0x461a 016957 beq bt_evt_reconn_page_timeout ,classic_shutter_process_reconnect_page_timeout 
+0x461b 016958 beq bt_evt_virtual_cable_unplug ,classic_shutter_process_virtual_cable_unplug 
+0x461c 016959 beq bt_evt_remote_unsniff ,classic_shutter_process_remote_unsniff 
+0x461d 016960 beq bt_evt_store_nvram ,classic_shutter_process_store_reconnect_information 
+0x461e 016962 beq bt_evt_le_connected ,ble_shutter_process_baseband_connect 
+0x461f 016963 beq bt_evt_le_disconnected ,ble_shutter_process_baseband_disconnect 
+0x4620 016964 beq bt_evt_le_reconnect_complete ,ble_shutter_process_reconnect_complete 
+0x4621 016965 beq bt_evt_le_parse_conn_papa_update_rsp ,ble_shutter_process_parse_connect_parameter_update_response 
+0x4622 016967 beq bt_evt_button_long_pressed ,shutter_process_soft_swtich_button_long_press 
+0x4623 016968 beq bt_evt_button_down ,shutter_process_soft_swtich_button_down 
+0x4624 016969 beq bt_evt_button_up ,shutter_process_soft_swtich_button_up 
+0x4625 016970 rtn 
+:      016975 classic_shutter_process_baseband_connect:
+0x4626 016976 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4627 016977 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4628 016978 rtn 
+:      016981 classic_shutter_process_baseband_disconnect:
+0x4629 016982 call classic_shutter_disconnect_clear_flag 
+0x462a 016983 branch classic_shutter_process_reconnect_failed 
+:      016985 classic_shutter_disconnect_clear_flag:
+0x462b 016986 jam app_handshake_null ,mem_app_handshake_flag 
+0x462c 016987 jam 0 ,mem_hid_handshake_timer_count 
+0x462d 016988 jam 0 ,mem_unsniff2sniff_timer_count 
+0x462e 016989 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x462f 016990 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4630 016991 branch queue_init 
+:      016994 classic_shutter_process_reconnect_failed:
+0x4631 016995 call app_disconn_reason_clear 
+0x4632 016996 branch shutter_start_bluetooth_discovery 
+:      016999 classic_shutter_process_setup_complete:
+0x4633 017000 call shutter_stop_bluetooth_discovery 
+0x4634 017001 branch app_led_stop_blink 
+:      017004 classic_shutter_process_hid_connect:
+0x4635 017005 setarg hid_handshake_timeout 
+0x4636 017006 store 1 ,mem_hid_handshake_timer_count 
+0x4637 017007 rtn 
+:      017010 classic_shutter_process_hid_disconnect:
+0x4638 017011 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4639 017012 setarg flag_shutter_hid_disconn_timeout 
+0x463a 017013 store 1 ,mem_classic_shutter_hid_disconn_count 
+0x463b 017014 rtn 
+:      017017 classic_shutter_process_hid_handshake:
+0x463c 017018 fetch 1 ,mem_app_handshake_flag 
+0x463d 017019 rtneq app_handshake_done 
+0x463e 017020 jam app_handshake_done ,mem_app_handshake_flag 
+0x463f 017021 call app_lpm_mult_enable 
+0x4640 017022 call app_store_reconn_info 
+0x4641 017023 call shutter_stop_bluetooth_discovery 
+0x4642 017024 call app_led_off 
+0x4643 017025 branch app_bt_enter_sniff 
+:      017028 classic_shutter_process_reconnect_page_timeout:
+0x4644 017029 branch classic_shutter_process_reconnect_failed 
+:      017032 classic_shutter_process_virtual_cable_unplug:
+0x4645 017033 setarg flag_shutter_cable_unplug_timeout 
+0x4646 017034 store 1 ,mem_classic_shutter_cable_unplug_conut 
+0x4647 017035 rtn 
+:      017038 classic_shutter_process_remote_unsniff:
+0x4648 017039 branch app_start_auto_sniff 
+:      017043 classic_shutter_process_store_reconnect_information:
+0x4649 017044 arg nvram_eeprom_offset ,regb 
+0x464a 017045 fetch 1 ,mem_nv_data_number 
+0x464b 017046 mul32 pdata ,34 ,temp 
+0x464c 017047 fetch 2 ,mem_nv_data_ptr 
+0x464d 017048 copy pdata ,rega 
+0x464e 017049 branch iicd_write_eep_data 
+:      017051 classic_shutter_load_reconn_info:
+0x464f 017052 arg nvram_eeprom_offset ,regb 
+0x4650 017053 fetch 1 ,mem_shutter_bluetooth_type 
+0x4651 017054 rtnbit0 classic_shutter 
+0x4652 017055 fetch 1 ,mem_nv_data_number 
+0x4653 017056 rtn blank 
+0x4654 017057 mul32 pdata ,34 ,temp 
+0x4655 017058 fetch 2 ,mem_nv_data_ptr 
+0x4656 017059 copy pdata ,rega 
+0x4657 017060 branch iicd_read_eep_data 
+:      017064 ble_shutter_process_baseband_connect:
+0x4658 017065 call shutter_stop_bluetooth_discovery 
+0x4659 017066 setarg 0 
+0x465a 017067 store 2 ,mem_ble_shutter_reconn_timer 
+0x465b 017068 branch app_led_off 
+:      017071 ble_shutter_process_baseband_disconnect:
+0x465c 017072 call queue_init 
+0x465d 017073 jam 0 ,mem_ble_shutter_enable_notify 
+0x465e 017074 branch shutter_start_reconnect 
+:      017077 ble_shutter_process_reconnect_complete:
+0x465f 017078 call queue_init 
+0x4660 017079 jam 1 ,mem_ble_shutter_enable_notify 
+0x4661 017080 fetch 8 ,mem_ble_shutter_interval_min 
+0x4662 017081 store 8 ,mem_le_interval_min 
+0x4663 017082 call app_lpm_mult_enable 
+0x4664 017083 branch le_l2cap_tx_update_req 
+:      017086 ble_shutter_process_parse_connect_parameter_update_response:
+0x4665 017087 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x4666 017088 rtneq ble_signaling_connect_parameter_update_accepted 
+0x4667 017089 fetch 8 ,mem_ble_shutter_interval_min_new 
+0x4668 017090 rtn blank 
+0x4669 017091 store 8 ,mem_le_interval_min 
+0x466a 017092 branch le_l2cap_tx_update_req 
+:      017096 shutter_process_soft_swtich_button_long_press:
+0x466b 017097 branch ui_soft_switch_botton_long_press 
+:      017099 shutter_process_soft_swtich_button_down:
+0x466c 017100 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x466d 017101 rtneq hard_switch 
+0x466e 017102 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x466f 017103 rtnne ss_state_power_on 
+0x4670 017104 call shutter_store_currenct_led_state 
+0x4671 017105 branch app_led_on 
+:      017107 shutter_store_currenct_led_state:
+0x4672 017108 jam 1 ,mem_shutter_soft_swtich_botton_down 
+0x4673 017109 arg 11 ,loopcnt 
+0x4674 017110 arg mem_shutter_soft_swtich_led_struct_temp ,contw 
+0x4675 017111 arg mem_shutter_led_struct_app_led ,contr 
+0x4676 017112 branch memcpy 
+:      017114 shutter_process_soft_swtich_button_up:
+0x4677 017115 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4678 017116 rtneq hard_switch 
+0x4679 017117 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x467a 017118 beq ss_state_power_on ,shutter_load_currenct_led_state 
+0x467b 017119 branch ui_soft_switch_botton_up 
+:      017121 shutter_load_currenct_led_state:
+0x467c 017122 fetch 1 ,mem_shutter_soft_swtich_botton_down 
+0x467d 017123 rtnne 1 
+0x467e 017124 jam 0 ,mem_shutter_soft_swtich_botton_down 
+0x467f 017125 fetch 2 ,mem_ui_state_map 
+0x4680 017126 bbit1 ui_state_bt_connected ,app_led_off 
+0x4681 017127 bbit1 ui_state_ble_connected ,app_led_off 
+0x4682 017128 arg 11 ,loopcnt 
+0x4683 017129 arg mem_shutter_soft_swtich_led_struct_temp ,contr 
+0x4684 017130 arg mem_shutter_led_struct_app_led ,contw 
+0x4685 017131 branch memcpy 
+:      017136 shutter_le_bb_event_timer:
+0x4686 017138 call shutter_check_sleep_timer 
+0x4687 017141 call shutter_check_power_off_timer 
+0x4688 017144 call classic_shutter_check_unplug_timer 
+0x4689 017145 call classic_shutter_hid_handshake_timer 
+0x468a 017146 call classic_shutter_hid_disconn_timer 
+0x468b 017149 branch ble_shutter_reconn_timer 
+:      017153 shutter_check_sleep_timer:
+0x468c 017154 arg mem_shutter_sleep_timer ,regc 
+0x468d 017155 arg shutter_sleep_timeout ,regb 
+0x468e 017156 branch timer_single_step_2b 
+:      017157 shutter_sleep_timeout:
+0x468f 017158 jam ss_state_power_off ,mem_shutter_soft_switch_power_state 
+0x4690 017159 call app_led_off 
+0x4691 017160 call shutter_disconnect_current_connection 
+0x4692 017161 branch shutter_wait_power_off 
+:      017164 shutter_check_power_off_timer:
+0x4693 017165 arg mem_shutter_power_off_timer ,regc 
+0x4694 017166 arg shutter_check_power_off_timeout ,regb 
+0x4695 017167 branch timer_single_step 
+:      017169 shutter_check_power_off_timeout:
+0x4696 017170 fetch 2 ,mem_ui_state_map 
+0x4697 017171 bbit1 ui_state_ble_connected ,shutter_wait_power_off 
+0x4698 017172 bbit1 ui_state_bt_connected ,shutter_wait_power_off 
+0x4699 017173 fetch 1 ,mem_shutter_led_struct_app_led_type 
+0x469a 017174 beq ui_led_state_blink_start ,shutter_wait_power_off 
+0x469b 017175 beq ui_led_state_blink_lighting ,shutter_wait_power_off 
+0x469c 017176 beq ui_led_state_blink_darking ,shutter_wait_power_off 
+0x469d 017177 branch app_enter_hibernate 
+:      017181 classic_shutter_check_unplug_timer:
+0x469e 017182 arg mem_classic_shutter_cable_unplug_conut ,regc 
+0x469f 017183 arg classic_shutter_unplug_timeout ,regb 
+0x46a0 017184 branch timer_single_step 
+:      017186 classic_shutter_unplug_timeout:
+0x46a1 017187 fetch 1 ,mem_control_tasks 
+0x46a2 017188 set1 l2cap_disconnect_interrupt ,pdata 
+0x46a3 017189 set1 l2cap_disconnect_control ,pdata 
+0x46a4 017190 store 1 ,mem_control_tasks 
+0x46a5 017191 rtn 
+:      017193 classic_shutter_hid_handshake_timer:
+0x46a6 017194 arg mem_hid_handshake_timer_count ,regc 
+0x46a7 017195 arg classic_shutter_process_hid_handshake ,regb 
+0x46a8 017196 branch timer_single_step 
+:      017198 classic_shutter_hid_disconn_timer:
+0x46a9 017199 arg mem_classic_shutter_hid_disconn_count ,regc 
+0x46aa 017200 arg app_bt_disconnect ,regb 
+0x46ab 017201 branch timer_single_step 
+:      017206 ble_shutter_reconn_timer:
+0x46ac 017207 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46ad 017208 rtnne ss_state_power_on 
+0x46ae 017209 arg mem_ble_shutter_reconn_timer ,regc 
+0x46af 017210 arg shutter_start_bluetooth_discovery ,regb 
+0x46b0 017211 branch timer_single_step_2b 
+:      017214 shutter_process_idle:
+0x46b1 017215 call shutter_send_data_to_master 
+0x46b2 017216 branch keyscan_key_process 
+:      017219 shutter_process_lpm_before:
+0x46b3 017220 branch keyscan_process_lpm_before 
+:      017222 shutter_le_before_hibernate:
+0x46b4 017223 call gpio_set_before_lpm_common 
+0x46b5 017224 branch shutter_process_lpm_before 
+:      017230 shutter_stop_bluetooth_discovery:
+0x46b6 017231 fetch 1 ,mem_shutter_bluetooth_type 
+0x46b7 017232 bbit1 classic_shutter ,classic_shutter_stop_bluetooth_discovery 
+0x46b8 017233 bbit1 ble_shutter ,ble_shutter_stop_bluetooth_discovery 
+0x46b9 017234 rtn 
+:      017236 ble_shutter_stop_bluetooth_discovery:
+0x46ba 017237 fetch 2 ,mem_ble_shutter_connect_timeout 
+0x46bb 017238 store 2 ,mem_shutter_sleep_timeout 
+0x46bc 017239 store 2 ,mem_shutter_sleep_timer 
+0x46bd 017240 branch app_ble_stop_adv 
+:      017242 classic_shutter_stop_bluetooth_discovery:
+0x46be 017243 fetch 2 ,mem_classic_shutter_connect_timeout 
+0x46bf 017244 store 2 ,mem_shutter_sleep_timeout 
+0x46c0 017245 store 2 ,mem_shutter_sleep_timer 
+0x46c1 017246 branch app_bt_stop_discovery 
+:      017248 shutter_start_bluetooth_discovery:
+0x46c2 017249 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46c3 017250 rtnne ss_state_power_on 
+0x46c4 017251 fetch 1 ,mem_shutter_bluetooth_type 
+0x46c5 017252 bbit1 classic_shutter ,classic_shutter_start_discovery 
+0x46c6 017253 bbit1 ble_shutter ,ble_shutter_start_discovery 
+0x46c7 017254 rtn 
+:      017256 classic_shutter_start_discovery:
+0x46c8 017257 fetch 2 ,mem_classic_shutter_discovery_timeout ,
+0x46c9 017258 store 2 ,mem_shutter_sleep_timeout 
+0x46ca 017259 store 2 ,mem_shutter_sleep_timer 
+0x46cb 017260 branch app_bt_start_discovery_short 
+:      017262 ble_shutter_start_discovery:
+0x46cc 017263 fetch 2 ,mem_ui_state_map 
+0x46cd 017264 rtnbit1 ui_state_ble_connected 
+0x46ce 017265 fetch 2 ,mem_ble_shutter_discovery_timeout 
+0x46cf 017266 store 2 ,mem_shutter_sleep_timeout 
+0x46d0 017267 store 2 ,mem_shutter_sleep_timer 
+0x46d1 017268 fetch 2 ,mem_ble_shutter_discovery_adv_interval 
+0x46d2 017269 call shutter_ble_adv_interval_set 
+0x46d3 017270 call app_led_start_blink 
+0x46d4 017271 fetch 4 ,mem_ble_shutter_discovery_blink_on_time 
+0x46d5 017272 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46d6 017273 fetch 2 ,mem_ui_state_map 
+0x46d7 017274 rtnbit1 ui_state_ble_adv 
+0x46d8 017275 branch app_ble_start_adv 
+:      017278 shutter_start_reconnect:
+0x46d9 017279 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46da 017280 rtnne ss_state_power_on 
+0x46db 017281 fetch 1 ,mem_shutter_bluetooth_type 
+0x46dc 017282 bbit1 classic_shutter ,classic_shutter_start_reconnect 
+0x46dd 017283 bbit1 ble_shutter ,ble_shutter_start_reconnect 
+0x46de 017284 rtn 
+:      017286 classic_shutter_start_reconnect:
+0x46df 017287 call app_check_reconn_target 
+0x46e0 017288 branch shutter_start_bluetooth_discovery ,blank 
+0x46e1 017289 call app_led_on 
+0x46e2 017290 call app_bt_stop_discovery 
+0x46e3 017291 branch app_bt_start_reconnect 
+:      017293 ble_shutter_start_reconnect:
+0x46e4 017294 fetch 2 ,mem_ble_shutter_reconn_timer 
+0x46e5 017295 fetcht 2 ,mem_ble_shutter_reconn_timeout 
+0x46e6 017296 storet 2 ,mem_ble_shutter_reconn_timer 
+0x46e7 017297 nrtn blank 
+0x46e8 017298 fetch 2 ,mem_ble_shutter_reconn_dav_interval 
+0x46e9 017299 call shutter_ble_adv_interval_set 
+0x46ea 017300 call app_led_start_blink 
+0x46eb 017301 fetch 4 ,mem_ble_shutter_reconn_blink_on_time 
+0x46ec 017302 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46ed 017303 fetch 2 ,mem_ui_state_map 
+0x46ee 017304 rtnbit1 ui_state_ble_adv 
+0x46ef 017305 branch app_ble_start_adv 
+:      017308 shutter_ble_adv_interval_set:
+0x46f0 017309 store 2 ,mem_lpm_interval 
+0x46f1 017310 increase -4 ,pdata 
+0x46f2 017311 store 2 ,mem_le_adv_interval 
+0x46f3 017312 rtn 
+:      017315 shutter_disconnect_current_connection:
+0x46f4 017316 fetch 2 ,mem_ui_state_map 
+0x46f5 017317 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x46f6 017318 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x46f7 017319 branch shutter_stop_bluetooth_discovery 
+:      017323 app_check_reconn_target:
+0x46f8 017324 fetch 1 ,mem_nv_data_number 
+0x46f9 017325 copy pdata ,loopcnt 
+0x46fa 017326 fetch 2 ,mem_nv_data_ptr 
+0x46fb 017327 copy pdata ,rega 
+:      017328 app_check_reconn_target_loop:
+0x46fc 017329 ifetch 2 ,rega 
+0x46fd 017330 beq 0 ,found_reconn_device 
+0x46fe 017331 increase nv_data_len ,rega 
+0x46ff 017332 loop app_check_reconn_target_loop 
+0x4700 017333 branch enable_blank 
+:      017335 found_reconn_device:
+0x4701 017336 ifetch 6 ,contr 
+0x4702 017337 store 6 ,mem_hci_plap 
+0x4703 017338 increase 10 ,contr 
+0x4704 017339 arg mem_link_key ,contw 
+0x4705 017340 call memcpy16 
+0x4706 017341 call check_link_key_load 
+0x4707 017342 branch disable_blank 
+:      017348 shutter_check_data_enable:
+0x4708 017349 call disable_user 
+0x4709 017350 fetch 2 ,mem_ui_state_map 
+0x470a 017351 bbit1 ui_state_bt_connected ,shutter_check_bt_data_enable 
+0x470b 017352 bbit1 ui_state_ble_connected ,shutter_check_ble_data_enable 
+0x470c 017353 rtn 
+:      017355 shutter_check_bt_data_enable:
+0x470d 017356 fetch 1 ,mem_hid_interrupt_state 
+0x470e 017357 rtnne 0x3f 
+0x470f 017358 branch enable_user 
+:      017360 shutter_check_ble_data_enable:
+0x4710 017361 fetch 1 ,mem_ble_shutter_enable_notify 
+0x4711 017362 rtn blank 
+0x4712 017363 branch enable_user 
+:      017368 shutter_check_bluetooth_conn:
+0x4713 017369 call disable_user 
+0x4714 017370 fetch 2 ,mem_ui_state_map 
+0x4715 017371 rtnbit1 ui_state_bt_connected 
+0x4716 017372 rtnbit1 ui_state_ble_connected 
+0x4717 017373 branch enable_user 
+:      017377 shutter_change_bluetooth_status_bt_disconn:
+0x4718 017378 fetch 1 ,mem_shutter_bluetooth_type 
+0x4719 017379 bbit1 classic_shutter ,classic_shutter_change_bluetooth_status_bt_disconn 
+0x471a 017380 bbit1 ble_shutter ,ble_shutter_change_bluetooth_status_bt_disconn 
+0x471b 017381 rtn 
+:      017383 classic_shutter_change_bluetooth_status_bt_disconn:
+0x471c 017384 fetch 1 ,mem_scan_mode 
+0x471d 017385 rtnne 0x03 
+0x471e 017386 branch shutter_start_reconnect 
+:      017388 ble_shutter_change_bluetooth_status_bt_disconn:
+0x471f 017389 branch shutter_start_reconnect 
+:      017392 shutter_check_send_data:
+0x4720 017393 disable user2 
+0x4721 017394 fetch 2 ,mem_shutter_sleep_timeout 
+0x4722 017395 store 2 ,mem_shutter_sleep_timer 
+0x4723 017397 call shutter_check_bluetooth_conn 
+0x4724 017398 branch shutter_change_bluetooth_status_bt_disconn ,user 
+0x4725 017400 call shutter_check_data_enable 
+0x4726 017401 nrtn user 
+0x4727 017402 enable user2 
+0x4728 017403 rtn 
+:      017407 shutter_key_change:
+0x4729 017408 call shutter_check_send_data 
+0x472a 017409 nrtn user2 
+0x472b 017410 deposit rega 
+0x472c 017411 branch shutter_key_release ,blank 
+:      017412 shutter_key_press:
+0x472d 017413 call app_led_on 
+0x472e 017414 arg mem_key0_press ,regc 
+0x472f 017415 branch push_queue_press_or_release 
+:      017417 shutter_key_release:
+0x4730 017418 call app_led_off 
+0x4731 017419 arg mem_key0_release ,regc 
+:      017421 push_queue_press_or_release:
+0x4732 017422 arg max_queue_num ,pdata 
+0x4733 017423 imul32 queue ,pdata 
+0x4734 017424 iadd regc ,regc 
+:      017427 push_buffer_in_queue:
+0x4735 017428 ifetch 1 ,regc 
+0x4736 017429 rtn blank 
+0x4737 017430 call queue_push_one_byte 
+0x4738 017431 increase 1 ,regc 
+0x4739 017432 branch push_buffer_in_queue 
+:      017435 shutter_send_data_to_master:
+0x473a 017436 fetch 2 ,mem_ui_state_map 
+0x473b 017437 bbit1 ui_state_ble_connected ,pop_queue_to_ble_data 
+0x473c 017438 bbit1 ui_state_bt_connected ,pop_queue_to_classic_data 
+0x473d 017439 rtn 
+:      017441 pop_queue_to_ble_data:
+0x473e 017442 call le_fifo_check_nearly_full 
+0x473f 017443 nrtn blank 
+0x4740 017444 call queue_pop_one_byte 
+0x4741 017445 nrtn user 
+0x4742 017446 pincrease -1 
+0x4743 017447 mul32 pdata ,shutter_ble_data_buffer ,pdata 
+0x4744 017448 arg mem_ble_data_buffer1 ,temp 
+0x4745 017449 iadd temp ,contr 
+:      017450 le_send_notify_from_list:
+0x4746 017451 ifetch 1 ,contr 
+0x4747 017452 copy pdata ,rega 
+0x4748 017453 ifetcht 2 ,contr 
+0x4749 017454 call store_contr 
+0x474a 017455 call le_att_malloc_tx_notify 
+0x474b 017456 copy rega ,loopcnt 
+0x474c 017457 call get_contr 
+0x474d 017458 branch memcpy 
+:      017461 pop_queue_to_classic_data:
+0x474e 017462 call l2cap_malloc_is_fifo_nearly_full 
+0x474f 017463 nrtn blank 
+0x4750 017464 call queue_pop_one_byte 
+0x4751 017465 nrtn user 
+0x4752 017466 pincrease -1 
+0x4753 017467 mul32 pdata ,shutter_classic_data_buffer ,pdata 
+0x4754 017468 arg mem_classic_data_buffer1 ,temp 
+0x4755 017469 iadd temp ,contr 
+0x4756 017470 ifetch 5 ,contr 
+0x4757 017471 store 5 ,mem_classic_data_buffer 
+:      017472 classic_send_hid_data:
+0x4758 017473 fetch 1 ,mem_classic_data_buffer 
+0x4759 017474 copy pdata ,rega 
+0x475a 017475 call hid_malloc_tx_buff 
+0x475b 017476 fetch 2 ,mem_hid_int_remote_cid 
+0x475c 017477 istore 2 ,contw 
+0x475d 017478 setarg 0xa1 
+0x475e 017479 istore 1 ,contw 
+0x475f 017480 fetch 4 ,mem_classic_data_buffer + 1 
+0x4760 017481 istore 9 ,contw 
+0x4761 017482 rtn 
+:      017486 queue_push_one_byte:
+0x4762 017487 store 1 ,mem_pdatatemp 
+0x4763 017488 arg mem_pdatatemp ,rega 
+0x4764 017489 branch queue_push 
+:      017491 queue_pop_one_byte:
+0x4765 017492 arg mem_pdatatemp ,rega 
+0x4766 017493 call queue_pop 
+0x4767 017494 nrtn user 
+0x4768 017495 fetch 1 ,mem_pdatatemp 
+0x4769 017496 rtn 
+:      017499 ble_shutter_receive_data:
+0x476a 017500 fetch 2 ,mem_le_att_handle 
+0x476b 017501 beq gatt_keyboard_write_handle ,ble_shutter_process_reconnect_complete 
+0x476c 017502 rtn 
+:      017504 shutter_init_param:
+0x476d 017505 setarg 0x02 
+0x476e 017506 store 1 ,mem_shutter_power_off_timeout 
+0x476f 017508 setarg 0x00200008 
+0x4770 017509 store 4 ,mem_ble_shutter_interval_min 
+0x4771 017510 setarg 0x012c0005 
+0x4772 017511 istore 4 ,contw 
+0x4773 017514 jam 0x17 ,mem_le_local_mtu 
+0x4774 017517 setarg 0x1b 
+0x4775 017518 store 2 ,mem_le_pairing_handle 
+0x4776 017519 call le_set_config_fixed_ltk 
+0x4777 017520 call le_set_fixed_ltk 
+0x4778 017521 call le_set_justwork 
+0x4779 017522 branch le_set_config_read_authentication 
+:      017525 shutter_load_buffer_config_form_datarom:
+0x477a 017527 arg ble_key_value_list_size ,loopcnt 
+0x477b 017528 arg mem_ble_data_buffer1 ,contw 
+0x477c 017529 arg ble_shutter_key_value_list ,contr 
+0x477d 017530 call memcpy_fast 
+0x477e 017531 arg bt_key_value_list_size ,loopcnt 
+0x477f 017532 arg mem_classic_data_buffer1 ,contw 
+0x4780 017533 arg classic_shutter_key_value_list ,contr 
+0x4781 017534 branch memcpy_fast 
+:      017537 shutter_load_ble_gatt_form_datarom:
+0x4782 017538 arg ble_gatt_list_size ,loopcnt 
+0x4783 017539 arg ble_shutter_gatt_list ,contr 
+0x4784 017540 branch memcpy_fast 
+:      017543 shutter_load_bt_sdp_form_datarom:
+0x4785 017544 arg bt_sdp_list_size ,loopcnt 
+0x4786 017545 arg classic_shutter_sdp_list ,contr 
+0x4787 017546 branch memcpy_fast 
+:      017550 shutter_init_bluetooth_config:
+0x4788 017551 call shutter_check_load_config_flag 
+0x4789 017552 nrtn user 
+0x478a 017553 fetch 1 ,mem_shutter_config_select_gpio1 
+0x478b 017554 call shutter_init_bluetooth_config_gpio_input 
+0x478c 017555 fetch 1 ,mem_shutter_config_select_gpio2 
+0x478d 017556 call shutter_init_bluetooth_config_gpio_input 
+0x478e 017557 fetch 1 ,mem_shutter_config_select_gpio3 
+0x478f 017558 branch shutter_init_bluetooth_config_gpio_input 
+:      017560 shutter_init_bluetooth_config_gpio_input:
+0x4790 017561 rtn blank 
+0x4791 017562 or pdata ,0x80 ,temp 
+0x4792 017563 branch gpio_config_input_nowake 
+:      017566 shutter_load_bluetooth_config:
+0x4793 017567 call shutter_check_load_config_flag 
+0x4794 017568 nrtn user 
+0x4795 017569 call shutter_load_bluetooth_config_label 
+0x4796 017570 branch shutter_load_bluetooth_config_by_otp 
+:      017572 shutter_load_bluetooth_config_label:
+0x4797 017573 arg 0 ,rega 
+0x4798 017574 fetch 1 ,mem_shutter_config_select_gpio1 
+0x4799 017575 call shutter_load_bluetooth_config_read_gpio_input 
+0x479a 017576 nsetflag blank ,0 ,rega 
+0x479b 017577 fetch 1 ,mem_shutter_config_select_gpio2 
+0x479c 017578 call shutter_load_bluetooth_config_read_gpio_input 
+0x479d 017579 nsetflag blank ,1 ,rega 
+0x479e 017580 fetch 1 ,mem_shutter_config_select_gpio3 
+0x479f 017581 call shutter_load_bluetooth_config_read_gpio_input 
+0x47a0 017582 nsetflag blank ,2 ,rega 
+0x47a1 017583 copy rega ,pdata 
+0x47a2 017584 store 1 ,mem_shutter_config_label 
+0x47a3 017585 fetch 1 ,mem_shutter_config_size 
+0x47a4 017586 imul32 rega ,pdata 
+0x47a5 017587 fetcht 2 ,mem_shutter_config_otp_base_address 
+0x47a6 017588 iadd temp ,pdata 
+0x47a7 017589 store 2 ,mem_shutter_config_otp_addr 
+0x47a8 017590 rtn 
+:      017592 shutter_load_bluetooth_config_read_gpio_input:
+0x47a9 017593 rtn blank 
+0x47aa 017594 or pdata ,0x80 ,temp 
+0x47ab 017595 call gpio_get_bit 
+0x47ac 017596 nbranch enable_blank ,true 
+0x47ad 017597 branch disable_blank 
+:      017600 shutter_check_load_config_flag:
+0x47ae 017601 call disable_user 
+0x47af 017602 fetch 1 ,mem_shutter_config_user_size 
+0x47b0 017603 nrtn blank 
+0x47b1 017604 fetch 1 ,mem_shutter_config_enable 
+0x47b2 017605 rtn blank 
+0x47b3 017606 branch enable_user 
+:      017609 shutter_load_bluetooth_config_by_otp:
+0x47b4 017610 call otp_enable_chgpump 
+0x47b5 017611 fetch 2 ,mem_shutter_config_otp_addr 
+0x47b6 017612 arg mem_shutter_config_data_temp ,rega 
+0x47b7 017613 fetcht 1 ,mem_shutter_config_size 
+0x47b8 017614 call otpd_read_data 
+0x47b9 017615 call otp_disable_chgpump 
+:      017616 shutter_load_bluetooth_config_store_name:
+0x47ba 017617 fetch 1 ,mem_shutter_config_data_temp 
+0x47bb 017618 copy pdata ,loopcnt 
+0x47bc 017619 store 1 ,mem_le_name_len 
+0x47bd 017620 call memcpy_fast 
+0x47be 017621 fetch 1 ,mem_shutter_config_data_temp 
+0x47bf 017622 copy pdata ,loopcnt 
+0x47c0 017623 store 1 ,mem_local_name_length 
+0x47c1 017624 call memcpy_fast 
+0x47c2 017625 ifetch 1 ,contr 
+0x47c3 017626 store 1 ,mem_shutter_key_num 
+0x47c4 017627 ifetch 1 ,contr 
+0x47c5 017628 store 1 ,mem_shutter_hard_soft_switch_case 
+0x47c6 017629 rtn 
+:      017632 shutter_load_bluetooth_config_by_eeprom:
+0x47c7 017633 fetch 1 ,mem_shutter_bluetooth_type 
+0x47c8 017634 rtnbit0 classic_shutter 
+0x47c9 017635 arg 3 ,temp 
+0x47ca 017636 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47cb 017637 copy pdata ,regb 
+0x47cc 017638 arg mem_shutter_config_eeprom_start_flag ,rega 
+0x47cd 017639 call iicd_read_eep_data 
+0x47ce 017640 fetcht 2 ,mem_shutter_config_eeprom_start_flag 
+0x47cf 017641 setarg shutter_eeprom_config_crc 
+0x47d0 017642 isub temp ,null 
+0x47d1 017643 nrtn zero 
+0x47d2 017644 fetch 1 ,mem_shutter_config_user_size 
+0x47d3 017645 rtn blank 
+0x47d4 017646 copy pdata ,temp 
+0x47d5 017647 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47d6 017648 add pdata ,3 ,regb 
+0x47d7 017649 arg mem_shutter_config_data_temp ,rega 
+0x47d8 017650 call iicd_read_eep_data 
+0x47d9 017651 branch shutter_store_config 
+:      017653 shutter_load_bluetooth_config_by_user_config:
+0x47da 017654 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47db 017655 rtn blank 
+0x47dc 017656 call otp_enable_chgpump 
+0x47dd 017657 arg 1 ,temp 
+0x47de 017658 arg mem_shutter_config_user_size ,rega 
+0x47df 017659 call otpd_read_data 
+0x47e0 017661 fetch 1 ,mem_shutter_config_user_size 
+0x47e1 017662 rtn blank 
+0x47e2 017664 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47e3 017665 pincrease 1 
+0x47e4 017666 arg mem_shutter_config_data_temp ,rega 
+0x47e5 017667 fetcht 1 ,mem_shutter_config_user_size 
+0x47e6 017668 call otpd_read_data 
+0x47e7 017669 call otp_disable_chgpump 
+:      017670 shutter_store_config:
+0x47e8 017671 call shutter_load_bluetooth_config_store_name 
+:      017672 shutter_load_bluetooth_config_custom:
+0x47e9 017673 ifetch 2 ,contr 
+0x47ea 017674 rtn blank 
+0x47eb 017675 copy pdata ,contw 
+0x47ec 017676 ifetcht 1 ,contr 
+0x47ed 017677 copy temp ,loopcnt 
+0x47ee 017678 call memcpy 
+0x47ef 017679 branch shutter_load_bluetooth_config_custom 
+:      017683 shutter_random_mac_addr:
+0x47f0 017684 fetch 1 ,mem_shutter_bluetooth_type 
+0x47f1 017685 rtnbit0 classic_shutter 
+0x47f2 017686 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47f3 017687 copy pdata ,regb 
+0x47f4 017688 arg 4 ,temp 
+0x47f5 017689 arg mem_shutter_random_mac_data_temp ,rega 
+0x47f6 017690 call iicd_read_eep_data 
+0x47f7 017691 fetch 1 ,mem_shutter_random_mac_data_temp 
+0x47f8 017692 bne 1 ,shutter_write_random_mac_addr_to_eeprom 
+:      017693 shutter_write_random_mac_addr_to_eeprom:
+0x47f9 017694 setarg 1 
+0x47fa 017695 store 1 ,mem_shutter_random_mac_data_temp 
+0x47fb 017696 force 3 ,loopcnt 
+0x47fc 017697 call generate_random_loop 
+0x47fd 017698 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47fe 017699 copy pdata ,regb 
+0x47ff 017700 arg 4 ,temp 
+0x4800 017701 arg mem_shutter_random_mac_data_temp ,rega 
+0x4801 017702 call iicd_write_eep_data 
+:      017703 shutter_write_random_mac_addr:
+0x4802 017704 fetch 3 ,mem_shutter_random_mac_data_temp + 1 
+0x4803 017705 store 3 ,mem_lap 
+0x4804 017706 store 3 ,mem_le_lap 
+0x4805 017707 rtn 
+:      017710 shutter_soft_swtich_power_on:
+0x4806 017711 branch shutter_start_reconnect 
+:      017714 shutter_soft_swtich_power_off:
+0x4807 017715 arg 0 ,rega 
+0x4808 017716 arg mem_shutter_power_off_led_style ,regc 
+0x4809 017717 call ui_led_set_style_global 
+0x480a 017718 call shutter_disconnect_current_connection 
+:      017719 shutter_wait_power_off:
+0x480b 017720 fetch 1 ,mem_shutter_power_off_timeout 
+0x480c 017721 store 1 ,mem_shutter_power_off_timer 
+0x480d 017722 rtn 
+:      017726 ui_soft_swtich_init:
+0x480e 017727 setarg ss_state_power_up 
+0x480f 017728 call ui_soft_swtich_init_power_on_time 
+0x4810 017729 jam ui_button_state_up ,mem_ui_button_last_state 
+0x4811 017730 call ui_button_init 
+0x4812 017731 call ui_button_polling 
+0x4813 017732 fetch 2 ,mem_ui_state_map 
+0x4814 017733 rtnbit1 ui_state_btn_down 
+0x4815 017734 branch app_enter_hibernate 
+:      017736 ui_soft_swtich_init_power_on_time:
+0x4816 017737 fetcht 2 ,mem_power_param_ptr 
+0x4817 017738 istore 1 ,temp 
+0x4818 017739 ifetch 1 ,contw 
+0x4819 017740 store 1 ,mem_ui_button_timeout 
+0x481a 017741 rtn 
+:      017744 ui_soft_switch_botton_up:
+0x481b 017745 fetch 2 ,mem_power_param_ptr 
+0x481c 017746 ifetch 1 ,pdata 
+0x481d 017747 rtnne ss_state_power_up 
+0x481e 017748 branch app_enter_hibernate 
+:      017751 ui_soft_switch_botton_long_press:
+0x481f 017752 fetcht 2 ,mem_power_param_ptr 
+0x4820 017753 ifetch 1 ,temp 
+0x4821 017754 beq ss_state_power_on ,ui_soft_switch_power_off 
+:      017755 ui_soft_switch_power_on:
+0x4822 017756 setarg ss_state_power_on 
+0x4823 017757 fetcht 2 ,mem_power_param_ptr 
+0x4824 017758 istore 1 ,temp 
+0x4825 017759 add temp ,ss_power_off_time ,contr 
+0x4826 017760 ifetch 1 ,contr 
+0x4827 017761 istore 1 ,mem_ui_button_timeout 
+0x4828 017762 ifetch 2 ,contr 
+0x4829 017763 branch callback_func 
+:      017765 ui_soft_switch_power_off:
+0x482a 017766 setarg ss_state_power_off 
+0x482b 017767 call ui_soft_swtich_init_power_on_time 
+0x482c 017768 add temp ,ss_power_off_cb ,contr 
+0x482d 017769 ifetch 2 ,contr 
+0x482e 017770 branch app_enter_hibernate ,blank 
+0x482f 017771 branch callback_func 
+:      017777 shutter_byteswap:
+0x4830 017778 store 6 ,mem_tmp_buffer 
+0x4831 017779 fetch 1 ,mem_tmp_buffer 
+0x4832 017780 store 1 ,mem_tmp_buffer + 11 
+0x4833 017781 ifetch 1 ,contr 
+0x4834 017782 store 1 ,mem_tmp_buffer + 10 
+0x4835 017783 ifetch 1 ,contr 
+0x4836 017784 store 1 ,mem_tmp_buffer + 9 
+0x4837 017785 ifetch 1 ,contr 
+0x4838 017786 store 1 ,mem_tmp_buffer + 8 
+0x4839 017787 ifetch 1 ,contr 
+0x483a 017788 store 1 ,mem_tmp_buffer + 7 
+0x483b 017789 ifetch 1 ,contr 
+0x483c 017790 store 1 ,mem_tmp_buffer + 6 
+0x483d 017791 fetch 6 ,mem_tmp_buffer + 6 
+0x483e 017792 rtn 
+:      017794 shutter_random_addr_by_otp:
+0x483f 017795 call load_adc_init 
+0x4840 017796 fetch 1 ,mem_1v_adc_io_data 
+0x4841 017797 store 1 ,mem_le_lap 
+0x4842 017798 fetch 1 ,mem_5v_adc_hvin_data 
+0x4843 017799 istore 1 ,contw 
+0x4844 017800 fetch 1 ,mem_3v_adc_vinlpm_data 
+0x4845 017801 istore 1 ,contw 
+0x4846 017802 fetch 3 ,mem_le_lap 
+0x4847 017803 store 3 ,mem_lap 
+0x4848 017804 rtn 
+:      017816 sim_iic_read_eep_data:
+0x4849 017817 fetch 2 ,mem_eeprom_base 
+0x484a 017818 iadd regb ,pdata 
+0x484b 017819 byteswap pdata ,pdata 
+0x484c 017820 store 2 ,mem_addr_mi 
+0x484d 017821 copy temp ,regb 
+0x484e 017823 call sim_iic_start 
+0x484f 017824 setarg 0xa0 
+0x4850 017825 call sim_iic_send_byte 
+0x4851 017826 fetch 1 ,mem_addr_mi 
+0x4852 017827 call sim_iic_send_byte 
+0x4853 017828 bmark1 mark_eeprom_size ,sim_iic_read_eep_data_2k 
+0x4854 017829 fetch 1 ,mem_addr_mi + 1 
+0x4855 017830 call sim_iic_send_byte 
+:      017831 sim_iic_read_eep_data_2k:
+0x4856 017832 call sim_iic_stop 
+0x4857 017834 call sim_iic_start 
+0x4858 017835 setarg 0xa1 
+0x4859 017836 call sim_iic_send_byte 
+:      017838 sim_iic_read_eep_data_loop:
+0x485a 017839 call sim_iic_read_byte 
+0x485b 017840 istore 1 ,rega 
+0x485c 017841 increase 1 ,rega 
+0x485d 017842 increase -1 ,regb 
+0x485e 017843 nbranch sim_iic_read_eep_data_loop ,zero 
+0x485f 017844 branch sim_iic_stop 
+:      017855 sim_iic_write_eep_data:
+0x4860 017856 byteswap regb ,pdata 
+0x4861 017857 store 2 ,mem_addr_mi 
+0x4862 017858 copy temp ,regb 
+0x4863 017860 call sim_iic_start 
+0x4864 017861 setarg 0xa0 
+0x4865 017862 call sim_iic_send_byte 
+0x4866 017864 fetch 1 ,mem_addr_mi 
+0x4867 017865 call sim_iic_send_byte 
+0x4868 017866 bmark1 mark_eeprom_size ,sim_iic_write_eep_data_loop 
+0x4869 017867 fetch 1 ,mem_addr_mi + 1 
+0x486a 017868 call sim_iic_send_byte 
+:      017869 sim_iic_write_eep_data_loop:
+0x486b 017870 ifetch 1 ,rega 
+0x486c 017871 call sim_iic_send_byte 
+0x486d 017872 increase 1 ,rega 
+0x486e 017873 increase -1 ,regb 
+0x486f 017874 nbranch sim_iic_write_eep_data_loop ,zero 
+0x4870 017875 branch sim_iic_stop 
+:      017879 sim_iic_wait_ack:
+0x4871 017880 arg 10 ,loopcnt 
+0x4872 017881 call sim_iic_release_sda 
+0x4873 017882 call sim_iic_scl_output_high 
+0x4874 017883 call sim_iic_delay 
+:      017884 sim_iic_wait_ack_loop:
+0x4875 017885 call sim_iic_read_sda_level 
+0x4876 017886 branch sim_iic_scl_output_low ,blank 
+0x4877 017887 loop sim_iic_wait_ack_loop 
+0x4878 017888 branch sim_iic_scl_output_low 
+:      017892 sim_iic_ack_slave:
+0x4879 017893 call sim_iic_scl_output_low 
+0x487a 017894 call sim_iic_sda_output_low 
+0x487b 017895 call sim_iic_delay 
+0x487c 017896 call sim_iic_scl_output_high 
+0x487d 017897 call sim_iic_delay 
+0x487e 017898 branch sim_iic_scl_output_low 
+:      017903 sim_iic_read_byte:
+0x487f 017904 arg 8 ,loopcnt 
+0x4880 017905 arg 0 ,regc 
+0x4881 017906 call sim_iic_release_sda 
+:      017907 sim_iic_read_byte_loop:
+0x4882 017908 call sim_iic_scl_output_high 
+0x4883 017909 call sim_iic_delay 
+0x4884 017910 lshift regc ,regc 
+0x4885 017911 call sim_iic_read_sda_level 
+0x4886 017912 iadd regc ,regc 
+0x4887 017913 call sim_iic_delay 
+0x4888 017914 call sim_iic_scl_output_low 
+0x4889 017915 loop sim_iic_read_byte_loop 
+0x488a 017916 call sim_iic_ack_slave 
+0x488b 017917 copy regc ,pdata 
+0x488c 017918 rtn 
+:      017922 sim_iic_send_byte:
+0x488d 017923 arg 8 ,loopcnt 
+0x488e 017924 copy pdata ,regc 
+0x488f 017925 call sim_iic_scl_output_low 
+:      017926 sim_iic_send_byte_loop:
+0x4890 017927 isolate1 7 ,regc 
+0x4891 017928 call sim_iic_sda_output_high ,true 
+0x4892 017929 ncall sim_iic_sda_output_low ,true 
+0x4893 017930 lshift regc ,regc 
+0x4894 017931 call sim_iic_delay 
+0x4895 017932 call sim_iic_scl_output_high 
+0x4896 017933 call sim_iic_delay 
+0x4897 017934 call sim_iic_scl_output_low 
+0x4898 017935 call sim_iic_delay 
+0x4899 017936 loop sim_iic_send_byte_loop 
+0x489a 017937 branch sim_iic_wait_ack 
+:      017941 sim_iic_start:
+0x489b 017942 call sim_iic_sda_output_high 
+0x489c 017943 call sim_iic_scl_output_high 
+0x489d 017944 call sim_iic_delay 
+0x489e 017945 call sim_iic_sda_output_low 
+0x489f 017946 call sim_iic_delay 
+0x48a0 017947 branch sim_iic_scl_output_low 
+:      017951 sim_iic_stop:
+0x48a1 017952 call sim_iic_sda_output_low 
+0x48a2 017953 call sim_iic_scl_output_high 
+0x48a3 017954 call sim_iic_delay 
+0x48a4 017955 call sim_iic_sda_output_high 
+0x48a5 017956 branch sim_iic_delay 
+:      017960 sim_iic_scl_output_high:
+0x48a6 017961 enable user 
+0x48a7 017962 fetch 1 ,sim_iic_scl_gpio_num 
+0x48a8 017963 branch sim_iic_config_gpio 
+:      017966 sim_iic_scl_output_low:
+0x48a9 017967 disable user 
+0x48aa 017968 fetch 1 ,sim_iic_scl_gpio_num 
+0x48ab 017969 branch sim_iic_config_gpio 
+:      017972 sim_iic_sda_output_high:
+0x48ac 017973 enable user 
+0x48ad 017974 fetch 1 ,sim_iic_sda_gpio_num 
+0x48ae 017975 branch sim_iic_config_gpio 
+:      017978 sim_iic_sda_output_low:
+0x48af 017979 disable user 
+0x48b0 017980 fetch 1 ,sim_iic_sda_gpio_num 
+0x48b1 017981 branch sim_iic_config_gpio 
+:      017986 sim_iic_config_gpio:
+0x48b2 017987 and pdata ,0x07 ,queue 
+0x48b3 017988 rshift3 pdata ,pdata 
+0x48b4 017989 arg core_gpio_oe0 ,temp 
+0x48b5 017990 iadd temp ,temp 
+0x48b6 017991 ifetch 1 ,temp 
+0x48b7 017992 qset1 pdata 
+0x48b8 017993 istore 1 ,temp 
+0x48b9 017994 increase 4 ,temp 
+0x48ba 017995 ifetch 1 ,temp 
+0x48bb 017996 qsetflag user ,pdata 
+0x48bc 017997 istore 1 ,temp 
+0x48bd 017998 rtn 
+:      018001 sim_iic_release_sda:
+0x48be 018002 fetch 1 ,sim_iic_sda_gpio_num 
+0x48bf 018003 and pdata ,0x07 ,queue 
+0x48c0 018004 rshift3 pdata ,pdata 
+0x48c1 018005 arg core_gpio_oe0 ,temp 
+0x48c2 018006 iadd temp ,temp 
+0x48c3 018007 ifetch 1 ,temp 
+0x48c4 018008 qset0 pdata 
+0x48c5 018009 istore 1 ,temp 
+0x48c6 018010 rtn 
+:      018015 sim_iic_read_sda_level:
+0x48c7 018016 nop 4 
+0x48c8 018017 fetch 1 ,sim_iic_sda_gpio_num 
+0x48c9 018018 and pdata ,0x07 ,queue 
+0x48ca 018019 rshift3 pdata ,pdata 
+0x48cb 018020 arg core_gpio_in ,temp 
+0x48cc 018021 iadd temp ,temp 
+0x48cd 018022 setarg 0 
+0x48ce 018023 ifetcht 1 ,temp 
+0x48cf 018024 qisolate1 temp 
+0x48d0 018025 setflag true ,0 ,pdata 
+0x48d1 018026 rtn 
+:      018029 sim_iic_delay:
+0x48d2 018031 rtn 
+:      018037 usb_isr:
+0x48d3 018038 bpatch patch1e_6 ,mem_patch1e 
+0x48d4 018039 hfetch 1 ,core_usb_status 
+0x48d5 018040 isolate1 7 ,pdata 
+0x48d6 018041 call usb_init ,true 
+0x48d7 018042 call usb_nak_state_judge 
+0x48d8 018043 hfetch 1 ,core_usb_status 
+0x48d9 018044 store 1 ,mem_usb_status 
+0x48da 018045 hfetch 1 ,core_usb_fifo_empty 
+0x48db 018046 store 1 ,mem_usb_fifo_empty 
+0x48dc 018047 hstore 1 ,core_usb_fifo_empty 
+0x48dd 018048 pinvert 
+0x48de 018049 fetcht 1 ,mem_usb_tx_wait 
+0x48df 018050 iand temp ,pdata 
+0x48e0 018051 store 1 ,mem_usb_tx_wait 
+0x48e1 018052 jam 0xe0 ,core_usb_status 
+0x48e2 018053 fetch 1 ,mem_usb_fifo_empty 
+0x48e3 018054 compare 0x1 ,pdata ,0x1 
+0x48e4 018055 call usb0_fifo_empty ,true 
+0x48e5 018056 fetch 1 ,mem_usb_status 
+0x48e6 018057 compare 0x1 ,pdata ,0x1 
+0x48e7 018058 call usb_status1 ,true 
+0x48e8 018059 call usb_tx 
+0x48e9 018060 branch usb_nak_state 
+:      018062 usb_init:
+0x48ea 018063 bpatch patch1e_7 ,mem_patch1e 
+0x48eb 018064 call usb_init_param 
+0x48ec 018065 jam 0x00 ,core_usb_config 
+0x48ed 018066 nop 10000 
+0x48ee 018067 jam 0xc0 ,core_usb_trig 
+0x48ef 018068 hfetch 2 ,core_clkoff 
+0x48f0 018069 set0 clock_off_usb ,pdata 
+0x48f1 018070 hstore 2 ,core_clkoff 
+0x48f2 018071 jam 0x3c ,core_usb_config 
+0x48f3 018072 jam 0xff ,core_usb_status 
+0x48f4 018073 jam 0xff ,core_usb_fifo_empty 
+0x48f5 018074 jam 0 ,core_usb_addr 
+0x48f6 018075 jam dev_default ,mem_usb0_state 
+0x48f7 018076 setarg mem_usb_clear_mem_end 
+0x48f8 018077 arg mem_usb_clear_mem_start ,contw 
+0x48f9 018078 isub contw ,loopcnt 
+0x48fa 018079 branch clear_mem 
+:      018081 usb_offline_check_init:
+0x48fb 018082 fetcht 1 ,mem_usb_offline_check_gpio 
+0x48fc 018083 branch gpio_config_input 
+:      018084 usb_offline_state:
+0x48fd 018085 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x48fe 018086 rtn blank 
+0x48ff 018087 fetcht 1 ,mem_usb_offline_check_gpio 
+0x4900 018088 call gpio_get_bit 
+0x4901 018089 branch usb_init ,true 
+0x4902 018090 rtn 
+:      018093 usb_nak_state:
+0x4903 018094 arg timer_nak ,queue 
+0x4904 018095 call timer_check 
+0x4905 018096 nrtn blank 
+0x4906 018097 fetch 1 ,mem_usb_wakestate_onetime_flag 
+0x4907 018098 nrtn blank 
+0x4908 018099 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4909 018100 ncall usb_mac_wakeup_judge ,blank 
+0x490a 018101 rtn 
+:      018103 usb_mem_devicedesc_init:
+0x490b 018104 arg mem_devicedesc ,contw 
+0x490c 018105 setsect 0 ,0x11212 
+0x490d 018106 setsect 1 ,0x8000 
+0x490e 018107 setsect 2 ,0x0 
+0x490f 018108 setsect 3 ,0x10000 
+0x4910 018109 istore 9 ,contw 
+0x4911 018110 setsect 0 ,0x22412 
+0x4912 018111 setsect 1 ,0x8604 
+0x4913 018112 setsect 2 ,0x1000 
+0x4914 018113 setsect 3 ,0x8 
+0x4915 018114 istore 9 ,contw 
+0x4916 018115 setsect 0 ,0x1 
+0x4917 018116 istore 1 ,contw 
+0x4918 018117 rtn 
+:      018119 usb_init_param:
+0x4919 018120 jam 2 ,mem_usb0_state 
+0x491a 018121 setarg 0x0 
+0x491b 018122 store 1 ,mem_remain 
+0x491c 018123 store 2 ,mem_usb_zero_packet 
+0x491d 018124 pincrease 1 
+0x491e 018125 store 2 ,mem_usb_ones_packet 
+0x491f 018126 pincrease 1 
+0x4920 018127 store 2 ,mem_usb_two_packet 
+0x4921 018128 setarg hid_kbdata_addr 
+0x4922 018129 store 2 ,mem_hidreportdesc_kb 
+0x4923 018130 setarg hid_msdata_addr 
+0x4924 018131 store 2 ,mem_hidreportdesc_m 
+0x4925 018132 arg mem_confdesc ,contw 
+0x4926 018133 arg hid_confdata_addr ,contr 
+0x4927 018134 call memcpy64 
+0x4928 018135 fetch 1 ,mem_usb_tx_interval 
+0x4929 018136 ncall usb_tx_interval_config ,blank 
+0x492a 018137 branch usb_mem_devicedesc_init 
+:      018139 usb_tx_interval_config:
+0x492b 018140 store 1 ,mem_confdesc + 34 
+0x492c 018141 store 1 ,mem_confdesc + 59 
+0x492d 018142 rtn 
+:      018143 usb_nak_state_judge:
+0x492e 018144 hfetch 1 ,core_usb_status 
+0x492f 018145 bbit1 usb_status_nak ,usb_nak_state_timer_init 
+0x4930 018146 rtn 
+:      018148 usb_nak_state_timer_init:
+0x4931 018149 call usb0_attached_state_judge 
+0x4932 018150 call timer_reinit 
+0x4933 018151 setarg timer_nak_delay 
+0x4934 018152 arg timer_nak ,queue 
+0x4935 018153 branch timer_init 
+:      018155 usb0_attached_state_judge:
+0x4936 018156 fetch 1 ,mem_usb_state 
+0x4937 018157 bne usb_connected ,usb_clear_halt_dispose 
+0x4938 018158 jam 0 ,mem_usb_wakestate_onetime_flag 
+0x4939 018159 jam 0 ,mem_usb_mac_wakeup_trig 
+0x493a 018160 rtn 
+:      018161 usb_clear_halt_dispose:
+0x493b 018162 fetch 1 ,mem_usb_clear_halt 
+0x493c 018163 rtn blank 
+0x493d 018164 jam 0 ,mem_usb_clear_halt 
+0x493e 018165 jam usb_connected ,mem_usb_state 
+0x493f 018166 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4940 018167 rtn 
+:      018169 usb0_fifo_empty:
+0x4941 018170 jam 0x1 ,core_usb_fifo_empty 
+0x4942 018171 branch usb0_tx 
+:      018173 usb_rx_no_data:
+0x4943 018174 fetch 1 ,mem_usb_status 
+0x4944 018175 bbit1 usb_status_setup ,usb_class_type 
+0x4945 018176 rtn 
+:      018178 usb_rx_read:
+0x4946 018179 hfetch 1 ,core_usb_ep 
+0x4947 018180 istore 1 ,contw 
+0x4948 018181 loop usb_rx_read 
+0x4949 018182 rtn 
+:      018184 usb_status1:
+0x494a 018185 bpatch patch1f_0 ,mem_patch1f 
+0x494b 018186 jam 0x11 ,core_usb_status 
+0x494c 018187 hfetch 1 ,core_usb_ep_len 
+0x494d 018188 store 1 ,mem_usb_read_len 
+0x494e 018189 copy pdata ,loopcnt 
+0x494f 018190 branch usb_rx_no_data ,blank 
+0x4950 018191 arg mem_usb_setup ,contw 
+0x4951 018192 call usb_rx_read 
+0x4952 018193 fetch 1 ,mem_usb_read_len 
+0x4953 018194 sub pdata ,7 ,null 
+0x4954 018195 rtn positive 
+:      018196 usb_class_type:
+0x4955 018197 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4956 018198 and_into 0x80 ,pdata 
+0x4957 018199 beq in_device ,usb_in_device 
+0x4958 018200 beq out_device ,usb_out_device 
+0x4959 018201 branch assert 
+:      018203 usb_in_device:
+0x495a 018204 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x495b 018205 rshift4 pdata ,pdata 
+0x495c 018206 rshift pdata ,pdata 
+0x495d 018207 and_into 0x03 ,pdata 
+0x495e 018208 beq standard_req ,usb_in_standard_req 
+0x495f 018209 beq class_req ,usb_in_class_req 
+0x4960 018210 beq manufacturer_req ,usb_in_manufacturer_req 
+0x4961 018211 branch assert 
+:      018213 usb_out_device:
+0x4962 018214 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4963 018215 rshift4 pdata ,pdata 
+0x4964 018216 rshift pdata ,pdata 
+0x4965 018217 and_into 0x03 ,pdata 
+0x4966 018218 beq standard_req ,usb_out_standard_req 
+0x4967 018219 beq class_req ,usb_out_class_req 
+0x4968 018220 beq manufacturer_req ,usb_out_manufacturer_req 
+0x4969 018221 branch assert 
+:      018223 usb_in_standard_req:
+0x496a 018224 fetch 1 ,mem_usb_setup_brequest 
+0x496b 018225 beq get_configuration ,usb0_request_get_configuration 
+0x496c 018226 beq get_descriptor ,usb0_request_get_descriptor 
+0x496d 018227 beq get_interface ,usb0_request_get_interface 
+0x496e 018228 beq get_status ,usb0_request_get_status 
+0x496f 018229 branch usb0_force_stall 
+:      018231 usb_in_class_req:
+0x4970 018232 fetch 1 ,mem_usb_setup_brequest 
+0x4971 018233 beq get_idle ,usb_get_idle 
+0x4972 018234 beq get_report ,usb_get_report 
+0x4973 018235 beq get_protocol ,usb_get_protocol_req 
+0x4974 018236 branch usb0_force_stall 
+:      018238 usb_in_manufacturer_req:
+0x4975 018239 branch usb0_force_stall 
+:      018241 usb_out_standard_req:
+0x4976 018242 fetch 1 ,mem_usb_setup_brequest 
+0x4977 018243 beq clear_feature ,usb0_request_clear_feature 
+0x4978 018244 beq set_feature ,usb0_request_set_feature 
+0x4979 018245 beq set_address ,usb0_request_set_address 
+0x497a 018246 beq set_configuration ,usb0_request_set_configuration 
+0x497b 018247 beq set_interface ,usb0_request_set_interface 
+0x497c 018248 beq set_descriptor ,usb0_force_stall 
+0x497d 018249 branch usb0_force_stall 
+:      018251 usb_out_class_req:
+0x497e 018252 fetch 1 ,mem_usb_setup_brequest 
+0x497f 018253 beq set_idle ,usb_set_idle 
+0x4980 018254 beq set_report ,usb_set_report 
+0x4981 018255 beq set_protocol ,usb_set_protocol_req 
+0x4982 018256 branch usb0_force_stall 
+:      018258 usb_out_manufacturer_req:
+0x4983 018259 branch usb0_force_stall 
+:      018261 usb0_force_stall:
+0x4984 018262 hfetch 1 ,core_usb_stall 
+0x4985 018263 set1 0 ,pdata 
+0x4986 018264 hstore 1 ,core_usb_stall 
+0x4987 018265 branch usb0_reply_zerolen 
+:      018267 usb0_reply_zerolen:
+0x4988 018268 jam 0x40 ,core_usb_clear 
+0x4989 018269 rtn 
+:      018271 usb0_request_get_configuration:
+0x498a 018272 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x498b 018273 bne in_device ,usb0_force_stall 
+0x498c 018274 fetch 1 ,mem_usb_setup_windex 
+0x498d 018275 bne 0 ,usb0_force_stall 
+0x498e 018276 fetch 1 ,mem_usb_setup_windex + 1 
+0x498f 018277 bne 0 ,usb0_force_stall 
+0x4990 018278 fetch 1 ,mem_usb_setup_blength 
+0x4991 018279 bne 1 ,usb0_force_stall 
+0x4992 018280 fetch 1 ,mem_usb_setup_blengthh 
+0x4993 018281 bne 0 ,usb0_force_stall 
+0x4994 018282 fetch 1 ,mem_usb_setup_bvalue 
+0x4995 018283 bne 0 ,usb0_force_stall 
+0x4996 018284 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4997 018285 bne 0 ,usb0_force_stall 
+0x4998 018286 fetch 1 ,mem_usb0_state 
+0x4999 018287 beq dev_configured ,usb0_request_get_cfg_dev_cfg 
+0x499a 018288 beq dev_address ,usb0_request_get_cfg_dev_addr 
+0x499b 018289 branch usb0_force_stall 
+:      018291 usb0_request_get_cfg_dev_cfg:
+0x499c 018292 arg 1 ,regb 
+0x499d 018293 branch usb_send_ones_packet 
+:      018295 usb0_request_get_cfg_dev_addr:
+0x499e 018296 arg 1 ,regb 
+0x499f 018297 branch usb_send_zero_packet 
+:      018299 usb0_request_get_descriptor:
+0x49a0 018300 bpatch patch1f_1 ,mem_patch1f 
+0x49a1 018301 set0 mark_isstr ,mark 
+0x49a2 018302 fetch 1 ,mem_usb_setup_bvalueh 
+0x49a3 018303 beq dsc_device ,dsc_device_info 
+0x49a4 018304 beq dsc_config ,dsc_config_info 
+0x49a5 018305 beq dsc_string ,dsc_string_info 
+0x49a6 018306 beq dsc_hid ,dsc_hid_info 
+0x49a7 018307 beq dsc_hid_report ,dsc_hid_report_info 
+0x49a8 018308 branch usb0_force_stall 
+:      018310 dsc_hid_info:
+0x49a9 018311 jam 0 ,mem_usb_get_protocol_flag 
+0x49aa 018312 fetch 1 ,mem_usb_setup_windex 
+0x49ab 018313 beq 0 ,dsc_hid_info_interface0 
+0x49ac 018314 beq 1 ,dsc_hid_info_interface1 
+0x49ad 018315 branch usb0_force_stall 
+:      018317 dsc_hid_info_interface0:
+0x49ae 018318 arg mem_confdesc + 19 ,rega 
+0x49af 018319 ifetch 1 ,rega 
+0x49b0 018320 iforce regb 
+0x49b1 018321 branch usb0_respond 
+:      018323 dsc_hid_info_interface1:
+0x49b2 018324 arg mem_confdesc + 44 ,rega 
+0x49b3 018325 ifetch 1 ,rega 
+0x49b4 018326 iforce regb 
+0x49b5 018327 branch usb0_respond 
+:      018329 dsc_device_info:
+0x49b6 018333 fetch 1 ,mem_usb_set_high_addr_flag 
+0x49b7 018334 ncall usb_set_high_addr ,blank 
+0x49b8 018335 setarg mem_devicedesc 
+0x49b9 018336 fetcht 1 ,mem_devicedesc 
+:      018337 dsc_info_set_data_len:
+0x49ba 018338 store 2 ,mem_dsc_info_data_pointer 
+0x49bb 018339 storet 1 ,mem_dsc_info_len 
+0x49bc 018340 fetch 1 ,mem_usb_setup_blength 
+0x49bd 018341 isub temp ,null 
+0x49be 018342 nbranch dsc_info_set_current_data_len ,positive 
+:      018343 dsc_info_set_initial_data_len:
+0x49bf 018344 fetch 1 ,mem_dsc_info_len 
+:      018345 dsc_info_set_data_size_completed:
+0x49c0 018346 iforce regb 
+0x49c1 018347 fetch 2 ,mem_dsc_info_data_pointer 
+0x49c2 018348 add pdata ,1 ,pdata 
+0x49c3 018349 iforce rega 
+0x49c4 018350 branch usb0_respond 
+:      018351 dsc_info_set_current_data_len:
+0x49c5 018352 fetch 1 ,mem_usb_setup_blength 
+0x49c6 018353 branch dsc_info_set_data_size_completed 
+:      018355 usb_set_high_addr:
+0x49c7 018356 hfetch 1 ,core_usb_addr 
+0x49c8 018357 ncall usb0_set_addr ,blank 
+0x49c9 018358 jam 0 ,mem_usb_set_high_addr_flag 
+0x49ca 018359 rtn 
+:      018360 usb0_set_addr:
+0x49cb 018361 hfetch 1 ,core_usb_addr 
+0x49cc 018362 set1 7 ,pdata 
+0x49cd 018363 hstore 1 ,core_usb_addr 
+0x49ce 018364 rtn 
+:      018366 dsc_config_info:
+0x49cf 018367 setarg mem_confdesc 
+0x49d0 018368 fetcht 1 ,mem_confdesc 
+0x49d1 018369 branch dsc_info_set_data_len 
+:      018371 dsc_string_info:
+0x49d2 018372 fetch 1 ,mem_usb_setup_bvalue 
+0x49d3 018373 sub pdata ,3 ,null 
+0x49d4 018374 nbranch usb0_force_stall ,positive 
+0x49d5 018375 fetch 1 ,mem_usb_setup_bvalue 
+0x49d6 018376 arg mem_string0 ,rega 
+0x49d7 018377 beq 0 ,usb0_respond_length 
+0x49d8 018378 set1 mark_isstr ,mark 
+0x49d9 018379 arg mem_string1 ,rega 
+0x49da 018380 beq 1 ,usb0_respond_length 
+0x49db 018381 arg mem_string2 ,rega 
+0x49dc 018382 beq 2 ,usb0_respond_length 
+0x49dd 018383 arg mem_string3 ,rega 
+0x49de 018384 beq 3 ,usb0_respond_length 
+0x49df 018385 rtn 
+:      018387 dsc_hid_report_info:
+0x49e0 018388 fetch 2 ,mem_usb_setup_windex 
+0x49e1 018389 beq 1 ,dsc_hid_report_info0 
+0x49e2 018390 fetch 2 ,mem_hidreportdesc_kb 
+0x49e3 018391 copy pdata ,rega 
+0x49e4 018393 branch usb0_respond_length 
+:      018394 dsc_hid_report_info0:
+0x49e5 018395 jam 1 ,mem_usb_device_enumeration_endflag 
+0x49e6 018396 jam usb_got_report_req ,mem_usb_state 
+0x49e7 018397 fetch 2 ,mem_hidreportdesc_m 
+0x49e8 018398 copy pdata ,rega 
+0x49e9 018400 branch usb0_respond_length 
+:      018403 usb0_request_get_interface:
+0x49ea 018404 fetch 1 ,mem_usb0_state 
+0x49eb 018405 bne dev_configured ,usb0_force_stall 
+0x49ec 018406 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x49ed 018407 bne in_interface ,usb0_force_stall 
+0x49ee 018408 fetch 1 ,mem_usb_setup_bvalue 
+0x49ef 018409 bne 0 ,usb0_force_stall 
+0x49f0 018410 fetch 1 ,mem_usb_setup_bvalueh 
+0x49f1 018411 bne 0 ,usb0_force_stall 
+0x49f2 018412 fetch 1 ,mem_usb_setup_blength 
+0x49f3 018413 bne 1 ,usb0_force_stall 
+0x49f4 018414 fetch 1 ,mem_usb_setup_blengthh 
+0x49f5 018415 bne 0 ,usb0_force_stall 
+0x49f6 018416 fetch 1 ,mem_usb_setup_windex 
+0x49f7 018417 bne 0 ,usb0_force_stall 
+0x49f8 018418 fetch 1 ,mem_usb_setup_windex + 1 
+0x49f9 018419 bne 0 ,usb0_force_stall 
+0x49fa 018420 arg 1 ,regb 
+0x49fb 018421 branch usb_send_zero_packet 
+:      018424 usb0_request_get_status:
+0x49fc 018425 fetch 1 ,mem_usb0_state 
+0x49fd 018426 beq dev_default ,usb0_force_stall 
+0x49fe 018427 fetch 1 ,mem_usb_setup_bvalue 
+0x49ff 018428 bne 0 ,usb0_force_stall 
+0x4a00 018429 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a01 018430 bne 0 ,usb0_force_stall 
+0x4a02 018431 fetch 1 ,mem_usb_setup_blength 
+0x4a03 018432 bne 2 ,usb0_force_stall 
+0x4a04 018433 fetch 1 ,mem_usb_setup_blengthh 
+0x4a05 018434 bne 0 ,usb0_force_stall 
+0x4a06 018435 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a07 018436 bne 0 ,usb0_force_stall 
+0x4a08 018437 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a09 018438 beq in_device ,usb0_get_status_in_device 
+0x4a0a 018439 beq in_interface ,usb0_get_status_in_interface 
+0x4a0b 018440 beq in_endpoint ,usb0_get_status_in_endpoint 
+0x4a0c 018441 branch usb0_force_stall 
+:      018443 usb0_get_status_in_device:
+0x4a0d 018444 fetch 1 ,mem_usb_setup_windex 
+0x4a0e 018445 bne 0 ,usb0_force_stall 
+0x4a0f 018446 arg 2 ,regb 
+0x4a10 018447 fetch 1 ,mem_usb_remote_wakeup 
+0x4a11 018448 beq 0x01 ,usb_send_two_packet 
+:      018450 usb_send_zero_packet:
+0x4a12 018451 arg mem_usb_zero_packet ,rega 
+0x4a13 018452 branch usb0_respond 
+:      018453 usb_send_ones_packet:
+0x4a14 018454 arg mem_usb_ones_packet ,rega 
+0x4a15 018455 branch usb0_respond 
+:      018456 usb_send_two_packet:
+0x4a16 018457 arg mem_usb_two_packet ,rega 
+0x4a17 018458 branch usb0_respond 
+:      018460 usb0_get_status_in_interface:
+0x4a18 018461 fetch 1 ,mem_usb0_state 
+0x4a19 018462 bne dev_configured ,usb0_force_stall 
+0x4a1a 018463 arg 2 ,regb 
+0x4a1b 018464 branch usb_send_zero_packet 
+:      018466 usb0_get_status_in_endpoint:
+0x4a1c 018467 fetch 1 ,mem_usb0_state 
+0x4a1d 018468 bne dev_configured ,usb0_force_stall 
+0x4a1e 018469 fetch 1 ,mem_usb_setup_windex 
+0x4a1f 018470 beq in_ep1 ,usb0_get_status_in_ep_in_ep1 
+0x4a20 018471 beq in_ep2 ,usb0_get_status_in_ep_in_ep2 
+0x4a21 018472 beq in_ep3 ,usb0_get_status_in_ep_in_ep3 
+0x4a22 018473 and_into 0x7f ,pdata 
+0x4a23 018474 beq 0x00 ,usb0_get_status_in_ep_in_ep0 
+0x4a24 018475 branch usb0_force_stall 
+:      018477 usb0_get_status_in_ep_in_ep0:
+0x4a25 018478 fetch 1 ,mem_usb_ep0_stall_status 
+:      018479 usb0_get_status_in_ep_in_ack:
+0x4a26 018480 arg 2 ,regb 
+0x4a27 018481 beq 1 ,usb_send_ones_packet 
+0x4a28 018482 branch usb_send_zero_packet 
+:      018483 usb0_get_status_in_ep_in_ep1:
+0x4a29 018484 fetch 1 ,mem_usb_ep1_stall_status 
+0x4a2a 018485 branch usb0_get_status_in_ep_in_ack 
+:      018486 usb0_get_status_in_ep_in_ep2:
+0x4a2b 018487 fetch 1 ,mem_usb_ep2_stall_status 
+0x4a2c 018488 branch usb0_get_status_in_ep_in_ack 
+:      018489 usb0_get_status_in_ep_in_ep3:
+0x4a2d 018490 fetch 1 ,mem_usb_ep3_stall_status 
+0x4a2e 018491 branch usb0_get_status_in_ep_in_ack 
+:      018493 usb_get_idle:
+0x4a2f 018494 jam 1 ,mem_usb_idle_flag 
+0x4a30 018495 arg mem_usb_idle_rate ,rega 
+0x4a31 018496 arg 1 ,regb 
+0x4a32 018497 branch usb0_respond 
+:      018499 usb_get_report:
+0x4a33 018500 fetch 2 ,mem_usb_setup_bvalue 
+0x4a34 018501 arg pc_get_report ,temp 
+0x4a35 018502 isub temp ,null 
+0x4a36 018503 nbranch usb0_force_stall ,zero 
+0x4a37 018504 set0 mark_isstr ,mark 
+:      018505 usb_get_report_dispose:
+0x4a38 018506 fetch 1 ,mem_usb0_data_ready_report 
+0x4a39 018507 nbranch usb_get_report_data_success ,blank 
+0x4a3a 018508 jam pc_get_nondata ,mem_usb0_get_report_data 
+:      018509 usb_get_report_send_data:
+0x4a3b 018510 fetch 1 ,mem_usb_setup_blength 
+0x4a3c 018511 iforce regb 
+0x4a3d 018512 arg mem_usb0_get_report_data ,rega 
+0x4a3e 018513 call usb0_respond 
+:      018514 usb_get_report_data_release:
+0x4a3f 018515 arg mem_usb0_get_report_data ,contw 
+0x4a40 018516 arg 8 ,loopcnt 
+0x4a41 018517 branch memset0 
+:      018518 usb_get_report_data_success:
+0x4a42 018519 jam 0 ,mem_usb0_data_ready_report 
+0x4a43 018520 jam pc_get_data ,mem_usb0_get_report_data 
+0x4a44 018521 branch usb_get_report_send_data 
+:      018523 usb_get_protocol_req:
+0x4a45 018524 fetch 1 ,mem_usb_setup_blength 
+0x4a46 018525 bne 1 ,usb0_force_stall 
+0x4a47 018526 jam 1 ,mem_usb_get_protocol_flag 
+0x4a48 018527 arg 1 ,regb 
+0x4a49 018528 fetch 1 ,mem_usb_set_protocol_value 
+0x4a4a 018529 beq 0 ,usb_get_report_protocol 
+0x4a4b 018530 beq 1 ,usb_get_boot_protocol 
+0x4a4c 018531 branch usb_send_zero_packet 
+:      018532 usb_get_report_protocol:
+0x4a4d 018533 branch usb_send_ones_packet 
+:      018534 usb_get_boot_protocol:
+0x4a4e 018535 branch usb_send_zero_packet 
+:      018540 usb0_request_clear_feature:
+0x4a4f 018541 fetch 1 ,mem_usb0_state 
+0x4a50 018542 bne dev_configured ,usb0_force_stall 
+0x4a51 018543 fetch 1 ,mem_usb_setup_blength 
+0x4a52 018544 bne 0 ,usb0_force_stall 
+0x4a53 018545 fetch 1 ,mem_usb_setup_blengthh 
+0x4a54 018546 bne 0 ,usb0_force_stall 
+0x4a55 018547 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a56 018548 bne 0 ,usb0_force_stall 
+0x4a57 018549 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a58 018550 bne 0 ,usb0_force_stall 
+0x4a59 018551 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a5a 018552 beq out_device ,usb0_request_clear_feature_out_device 
+0x4a5b 018553 beq out_interface ,usb0_request_clear_feature_out_interface 
+0x4a5c 018554 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
+0x4a5d 018555 branch usb0_force_stall 
+:      018557 usb0_request_clear_feature_out_device:
+0x4a5e 018558 fetch 1 ,mem_usb_setup_bvalue 
+0x4a5f 018559 bne device_remote_wakeup ,usb0_force_stall 
+0x4a60 018560 hfetch 1 ,core_usb_config 
+0x4a61 018561 set0 7 ,pdata 
+0x4a62 018562 hstore 1 ,core_usb_config 
+0x4a63 018563 jam 0 ,mem_usb_remote_wakeup 
+0x4a64 018564 jam 1 ,mem_usb_clear_remote_wakeup 
+0x4a65 018565 branch usb0_reply_zerolen 
+:      018567 usb0_request_clear_feature_out_interface:
+0x4a66 018568 branch usb0_force_stall 
+:      018570 usb0_request_clear_feature_out_endpoint:
+0x4a67 018571 fetch 1 ,mem_usb_setup_bvalue 
+0x4a68 018572 bne endpoint_halt ,usb0_force_stall 
+0x4a69 018573 fetch 1 ,mem_usb_setup_windex 
+0x4a6a 018574 beq in_ep1 ,usb0_force_stall_ep1_in_off 
+0x4a6b 018575 beq in_ep2 ,usb0_force_stall_ep2_in_off 
+0x4a6c 018576 beq in_ep3 ,usb0_force_stall_ep3_in_off 
+0x4a6d 018577 and_into 0x7f ,pdata 
+0x4a6e 018578 beq 0x00 ,usb0_force_stall_ep0_in_off 
+0x4a6f 018579 branch usb0_force_stall 
+:      018581 usb0_force_stall_ep0_in_off:
+0x4a70 018582 jam 0 ,mem_usb_ep0_stall_status 
+0x4a71 018583 branch usb0_reply_zerolen 
+:      018584 usb0_force_stall_ep1_in_off:
+0x4a72 018585 jam 0 ,mem_usb_ep1_stall_status 
+:      018586 usb0_force_stall_ep1_in_off_reply:
+0x4a73 018587 jam 1 ,mem_usb_clear_halt 
+0x4a74 018588 branch usb0_reply_zerolen 
+:      018589 usb0_force_stall_ep2_in_off:
+0x4a75 018590 jam 0 ,mem_usb_ep2_stall_status 
+0x4a76 018591 branch usb0_force_stall_ep1_in_off_reply 
+:      018592 usb0_force_stall_ep3_in_off:
+0x4a77 018593 jam 0 ,mem_usb_ep3_stall_status 
+0x4a78 018594 branch usb0_force_stall_ep1_in_off_reply 
+:      018597 usb0_request_set_feature:
+0x4a79 018598 fetch 1 ,mem_usb_setup_blength 
+0x4a7a 018599 bne 0 ,usb0_force_stall 
+0x4a7b 018600 fetch 1 ,mem_usb_setup_blengthh 
+0x4a7c 018601 bne 0 ,usb0_force_stall 
+0x4a7d 018602 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a7e 018603 beq out_device ,usb0_request_set_feature_out_device 
+0x4a7f 018604 beq out_interface ,usb0_request_set_feature_out_interface 
+0x4a80 018605 beq out_endpoint ,usb0_request_set_feature_out_endpoint 
+0x4a81 018606 branch usb0_force_stall 
+:      018608 usb0_request_set_feature_out_device:
+0x4a82 018609 fetch 1 ,mem_usb_setup_bvalue 
+0x4a83 018610 bne device_remote_wakeup ,usb0_force_stall 
+0x4a84 018611 hfetch 1 ,core_usb_config 
+0x4a85 018612 set1 7 ,pdata 
+0x4a86 018613 hstore 1 ,core_usb_config 
+0x4a87 018614 jam 1 ,mem_usb_remote_wakeup 
+0x4a88 018615 jam usb_sleep ,mem_usb_state 
+0x4a89 018616 jam 0 ,mem_usb_tx_win_enable 
+0x4a8a 018617 call usb0_reply_zerolen 
+:      018618 usb_wakeup_timer_reinit:
+0x4a8b 018619 call timer_reinit 
+0x4a8c 018620 setarg timer_wakeup_delay 
+0x4a8d 018621 arg timer_wakeup ,queue 
+0x4a8e 018622 branch timer_init 
+:      018624 usb0_request_set_feature_out_interface:
+0x4a8f 018625 branch usb0_force_stall 
+:      018627 usb0_request_set_feature_out_endpoint:
+0x4a90 018628 fetch 1 ,mem_usb_setup_bvalue 
+0x4a91 018629 bne endpoint_halt ,usb0_force_stall 
+0x4a92 018630 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a93 018631 bne 0 ,usb0_force_stall 
+0x4a94 018632 fetch 1 ,mem_usb_setup_windex 
+0x4a95 018633 beq in_ep1 ,usb0_force_stall_ep1_in_on 
+0x4a96 018634 beq in_ep2 ,usb0_force_stall_ep2_in_on 
+0x4a97 018635 beq in_ep3 ,usb0_force_stall_ep3_in_on 
+0x4a98 018636 and_into 0x7f ,pdata 
+0x4a99 018637 beq 0x00 ,usb0_force_stall_ep0_in_on 
+0x4a9a 018638 branch usb0_force_stall 
+:      018640 usb0_force_stall_ep0_in_on:
+0x4a9b 018641 jam 1 ,mem_usb_ep0_stall_status 
+0x4a9c 018642 branch usb0_reply_zerolen 
+:      018643 usb0_force_stall_ep1_in_on:
+0x4a9d 018644 jam 1 ,mem_usb_ep1_stall_status 
+0x4a9e 018645 branch usb0_reply_zerolen 
+:      018646 usb0_force_stall_ep2_in_on:
+0x4a9f 018647 jam 1 ,mem_usb_ep2_stall_status 
+0x4aa0 018648 branch usb0_reply_zerolen 
+:      018649 usb0_force_stall_ep3_in_on:
+0x4aa1 018650 jam 1 ,mem_usb_ep3_stall_status 
+0x4aa2 018651 branch usb0_reply_zerolen 
+:      018654 usb0_request_set_address:
+0x4aa3 018655 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4aa4 018656 bne out_device ,usb0_force_stall 
+0x4aa5 018657 fetch 1 ,mem_usb_setup_windex 
+0x4aa6 018658 bne 0 ,usb0_force_stall 
+0x4aa7 018659 fetch 1 ,mem_usb_setup_windex + 1 
+0x4aa8 018660 bne 0 ,usb0_force_stall 
+0x4aa9 018661 fetch 1 ,mem_usb_setup_blength 
+0x4aaa 018662 bne 0 ,usb0_force_stall 
+0x4aab 018663 fetch 1 ,mem_usb_setup_blengthh 
+0x4aac 018664 bne 0 ,usb0_force_stall 
+0x4aad 018665 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aae 018666 bne 0 ,usb0_force_stall 
+0x4aaf 018667 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab0 018668 and_into 0x80 ,pdata 
+0x4ab1 018669 bne 0 ,usb0_force_stall 
+0x4ab2 018670 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab3 018671 bne 0 ,usb_usb0_state_set_dev_addr 
+:      018672 usb_usb0_state_set_dev_default:
+0x4ab4 018673 jam dev_default ,mem_usb0_state 
+:      018674 usb0_request_set_wait_address:
+0x4ab5 018675 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab6 018676 hstore 1 ,core_usb_addr 
+0x4ab7 018677 call usb0_reply_zerolen 
+0x4ab8 018678 jam 1 ,mem_usb_set_high_addr_flag 
+0x4ab9 018679 rtn 
+:      018680 usb_usb0_state_set_dev_addr:
+0x4aba 018681 jam dev_address ,mem_usb0_state 
+0x4abb 018682 branch usb0_request_set_wait_address 
+:      018685 usb0_request_set_configuration:
+0x4abc 018686 fetch 1 ,mem_usb0_state 
+0x4abd 018687 beq dev_default ,usb0_force_stall 
+0x4abe 018688 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4abf 018689 bne out_device ,usb0_force_stall 
+0x4ac0 018690 fetch 1 ,mem_usb_setup_windex 
+0x4ac1 018691 bne 0 ,usb0_force_stall 
+0x4ac2 018692 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ac3 018693 bne 0 ,usb0_force_stall 
+0x4ac4 018694 fetch 1 ,mem_usb_setup_blength 
+0x4ac5 018695 bne 0 ,usb0_force_stall 
+0x4ac6 018696 fetch 1 ,mem_usb_setup_blengthh 
+0x4ac7 018697 bne 0 ,usb0_force_stall 
+0x4ac8 018698 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4ac9 018699 bne 0 ,usb0_force_stall 
+0x4aca 018700 fetch 1 ,mem_usb_setup_bvalue 
+0x4acb 018701 sub pdata ,usb_max_num_cfg ,null 
+0x4acc 018702 nbranch usb0_force_stall ,positive 
+0x4acd 018703 fetch 1 ,mem_usb0_state 
+0x4ace 018704 beq dev_address ,usb0_request_set_cfg_addr_state 
+0x4acf 018705 beq dev_configured ,usb0_request_set_cfg_cfg_state 
+0x4ad0 018706 branch usb0_force_stall 
+:      018708 usb0_request_set_cfg_addr_state:
+:      018709 usb0_request_set_cfg_cfg_state:
+0x4ad1 018710 fetch 1 ,mem_usb_setup_bvalue 
+0x4ad2 018711 beq 0 ,usb0_request_set_cfg_stay_addr_state 
+0x4ad3 018712 jam dev_configured ,mem_usb0_state 
+0x4ad4 018713 branch usb0_reply_zerolen 
+:      018714 usb0_request_set_cfg_stay_addr_state:
+0x4ad5 018715 jam dev_address ,mem_usb0_state 
+0x4ad6 018716 branch usb0_reply_zerolen 
+:      018719 usb0_request_set_interface:
+0x4ad7 018720 fetch 1 ,mem_usb0_state 
+0x4ad8 018721 bne dev_configured ,usb0_force_stall 
+0x4ad9 018722 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4ada 018723 bne out_interface ,usb0_force_stall 
+0x4adb 018724 fetch 1 ,mem_usb_setup_bvalue 
+0x4adc 018725 bne 0 ,usb0_force_stall 
+0x4add 018726 fetch 1 ,mem_usb_setup_bvalueh 
+0x4ade 018727 bne 0 ,usb0_force_stall 
+0x4adf 018728 fetch 1 ,mem_usb_setup_blength 
+0x4ae0 018729 bne 0 ,usb0_force_stall 
+0x4ae1 018730 fetch 1 ,mem_usb_setup_blengthh 
+0x4ae2 018731 bne 0 ,usb0_force_stall 
+0x4ae3 018732 fetch 1 ,mem_usb_setup_windex 
+0x4ae4 018733 bne 0 ,usb0_force_stall 
+0x4ae5 018734 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ae6 018735 bne 0 ,usb0_force_stall 
+0x4ae7 018736 branch usb0_reply_zerolen 
+:      018739 usb_set_idle:
+0x4ae8 018740 jam 1 ,mem_usb_idle_flag 
+0x4ae9 018741 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aea 018742 store 1 ,mem_usb_idle_rate 
+0x4aeb 018743 fetch 1 ,mem_usb_setup_windex 
+0x4aec 018744 sub pdata ,1 ,null 
+0x4aed 018745 call usb_clear_remote_wakeup_set0 ,zero 
+0x4aee 018746 fetch 1 ,mem_usb_state 
+0x4aef 018747 bne usb_resume ,usb0_reply_zerolen 
+0x4af0 018748 jam usb_connected ,mem_usb_state 
+0x4af1 018749 call usb0_reply_zerolen 
+0x4af2 018750 nop 30000 
+0x4af3 018751 nop 30000 
+0x4af4 018752 rtn 
+:      018753 usb_clear_remote_wakeup_set0:
+0x4af5 018754 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4af6 018755 jam 0 ,mem_usb_clear_remote_wakeup 
+0x4af7 018756 jam usb_resume ,mem_usb_state 
+0x4af8 018757 rtn 
+:      018760 usb_set_report:
+0x4af9 018761 jam 1 ,mem_usb0_get_set_report 
+0x4afa 018762 call usb_set_report_resume_judge 
+0x4afb 018763 fetch 2 ,mem_usb_setup_bvalue 
+0x4afc 018764 store 2 ,mem_usb_setup_bvalue_temp 
+0x4afd 018765 fetch 1 ,mem_usb_setup_blength 
+0x4afe 018766 iforce loopcnt 
+0x4aff 018767 arg mem_usb0_setup ,contr 
+0x4b00 018768 arg mem_usb0_set_report_data ,contw 
+0x4b01 018769 call memcpy 
+0x4b02 018770 branch usb0_reply_zerolen 
+:      018772 usb_set_report_resume_judge:
+0x4b03 018773 fetch 2 ,mem_usb_setup_bvalue 
+0x4b04 018774 arg pc_set_report_bvalue ,temp 
+0x4b05 018775 isub temp ,null 
+0x4b06 018776 nrtn zero 
+0x4b07 018777 fetch 2 ,mem_usb_setup_windex 
+0x4b08 018778 arg pc_set_report_windex ,temp 
+0x4b09 018779 isub temp ,null 
+0x4b0a 018780 nrtn zero 
+0x4b0b 018781 fetch 2 ,mem_usb_setup_blength 
+0x4b0c 018782 arg pc_set_report_blength ,temp 
+0x4b0d 018783 isub temp ,null 
+0x4b0e 018784 nrtn zero 
+0x4b0f 018785 jam 1 ,mem_usb_tx_win_enable 
+0x4b10 018786 rtn 
+:      018789 usb_set_protocol_req:
+0x4b11 018790 fetch 1 ,mem_usb_setup_blength 
+0x4b12 018791 bne 0 ,usb0_force_stall 
+0x4b13 018792 fetch 1 ,mem_usb_setup_bvalue 
+0x4b14 018793 beq boot_protocol ,usb_set_boot_protocol 
+0x4b15 018794 beq report_protocol ,usb_set_report_protocol 
+0x4b16 018795 branch usb0_force_stall 
+:      018796 usb_set_boot_protocol:
+0x4b17 018797 jam 0 ,mem_usb_set_protocol_status 
+0x4b18 018798 jam 1 ,mem_usb_set_protocol_value 
+0x4b19 018799 branch usb0_reply_zerolen 
+:      018800 usb_set_report_protocol:
+0x4b1a 018801 jam 1 ,mem_usb_tx_mac_enable 
+0x4b1b 018802 jam 1 ,mem_usb_set_protocol_status 
+0x4b1c 018803 jam 0 ,mem_usb_set_protocol_value 
+0x4b1d 018804 branch usb0_reply_zerolen 
+:      018807 usb0_respond_length:
+0x4b1e 018808 ifetch 1 ,rega 
+0x4b1f 018809 iforce regb 
+0x4b20 018810 increase 1 ,rega 
+:      018812 usb0_respond:
+0x4b21 018813 bpatch patch1f_2 ,mem_patch1f 
+0x4b22 018814 bmark0 mark_isstr ,usb0_respond0 
+0x4b23 018815 add regb ,1 ,pdata 
+0x4b24 018816 lshift pdata ,pdata 
+0x4b25 018817 hstore 1 ,core_usb_dfifo0 
+0x4b26 018818 jam 3 ,core_usb_dfifo0 
+0x4b27 018819 fetch 1 ,mem_usb_setup_blength 
+0x4b28 018820 increase -2 ,pdata 
+0x4b29 018821 rshift pdata ,pdata 
+0x4b2a 018822 store 1 ,mem_usb_setup_blength 
+0x4b2b 018823 beq 0 ,usb_no_respond_data 
+:      018824 usb0_respond0:
+0x4b2c 018825 fetch 2 ,mem_usb_setup_blength 
+0x4b2d 018826 isub regb ,null 
+0x4b2e 018827 branch usb0_respond1 ,positive 
+0x4b2f 018828 copy pdata ,regb 
+:      018829 usb0_respond1:
+0x4b30 018830 deposit rega 
+0x4b31 018831 store 2 ,mem_bufptr 
+0x4b32 018832 deposit regb 
+0x4b33 018833 store 1 ,mem_remain 
+0x4b34 018834 branch usb0_tx 
+:      018836 usb_no_respond_data:
+0x4b35 018837 arg 0 ,queue 
+0x4b36 018838 branch usb_trig 
+:      018841 usb0_tx:
+0x4b37 018842 bpatch patch1f_3 ,mem_patch1f 
+0x4b38 018843 fetch 1 ,mem_remain 
+0x4b39 018844 rtn blank 
+0x4b3a 018845 copy pdata ,loopcnt 
+0x4b3b 018846 sub pdata ,ep0_packet_size ,null 
+0x4b3c 018847 branch usb0_tx_info ,positive 
+0x4b3d 018848 arg ep0_packet_size ,loopcnt 
+:      018849 usb0_tx_info:
+0x4b3e 018850 fetch 1 ,mem_remain 
+0x4b3f 018851 isub loopcnt ,pdata 
+0x4b40 018852 store 1 ,mem_remain 
+0x4b41 018853 fetch 2 ,mem_bufptr 
+0x4b42 018854 copy pdata ,contr 
+:      018855 usb0_tx0:
+0x4b43 018856 ifetch 1 ,contr 
+0x4b44 018857 hstore 1 ,core_usb_dfifo0 
+0x4b45 018858 bmark0 mark_isstr ,usb0_tx1 
+0x4b46 018859 jam 0 ,core_usb_dfifo0 
+:      018860 usb0_tx1:
+0x4b47 018861 loop usb0_tx0 
+0x4b48 018862 copy contr ,pdata 
+0x4b49 018863 store 2 ,mem_bufptr 
+0x4b4a 018864 arg 0 ,queue 
+0x4b4b 018865 call usb_trig 
+0x4b4c 018866 fetch 1 ,mem_remain 
+0x4b4d 018867 nrtn blank 
+0x4b4e 018868 fetch 1 ,mem_usb_state 
+0x4b4f 018869 rtnne usb_got_report_req 
+0x4b50 018870 jam usb_connected ,mem_usb_state 
+0x4b51 018871 rtn 
+:      018874 usb_tx_ep1:
+0x4b52 018875 arg core_usb_dfifo1 ,rega 
+0x4b53 018876 arg 1 ,queue 
+:      018877 usb_tx_loop:
+0x4b54 018878 ifetch 1 ,contr 
+0x4b55 018879 istore 1 ,rega 
+0x4b56 018880 loop usb_tx_loop 
+:      018881 usb_trig:
+0x4b57 018882 setarg 0 
+0x4b58 018883 qset1 pdata 
+0x4b59 018884 hstore 1 ,core_usb_trig 
+0x4b5a 018885 fetcht 1 ,mem_usb_tx_wait 
+0x4b5b 018886 ior temp ,pdata 
+0x4b5c 018887 store 1 ,mem_usb_tx_wait 
+0x4b5d 018888 rtn 
+:      018890 usb_tx_ep2:
+0x4b5e 018891 arg 2 ,queue 
+0x4b5f 018892 arg core_usb_dfifo2 ,rega 
+0x4b60 018893 branch usb_tx_loop 
+:      018895 usb_tx:
+0x4b61 018896 bpatch patch1f_4 ,mem_patch1f 
+0x4b62 018897 fetch 1 ,mem_usb_tx_enable 
+0x4b63 018898 rtn blank 
+0x4b64 018899 fetch 1 ,mem_usb_tx_wait 
+0x4b65 018900 nbranch usb_inwake_state_tx_dispose ,blank 
+0x4b66 018901 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4b67 018902 branch usb_tx_fifo_release ,blank 
+0x4b68 018903 fetch 1 ,mem_usb_state 
+0x4b69 018904 beq usb_sleep ,usb_windows_wakeup 
+0x4b6a 018905 bne usb_connected ,usb_tx_fifo_release 
+0x4b6b 018906 fetch 1 ,mem_usb_clear_remote_wakeup 
+0x4b6c 018907 nbranch usb_tx_fifo_release ,blank 
+0x4b6d 018908 call usb_tx_data_ep1 
+0x4b6e 018909 branch usb_tx_data_ep2 
+:      018911 usb_tx_data_ep1:
+0x4b6f 018912 fetch 1 ,mem_usb_tx_enable 
+0x4b70 018913 rtnbit0 1 
+0x4b71 018914 fetch 1 ,mem_usb_tx_wait 
+0x4b72 018915 rtnbit1 1 
+0x4b73 018916 fetch 1 ,mem_usb_tx_enable 
+0x4b74 018917 set0 1 ,pdata 
+0x4b75 018918 store 1 ,mem_usb_tx_enable 
+0x4b76 018919 fetch 1 ,mem_usb_ep1_data 
+0x4b77 018920 rtn blank 
+0x4b78 018921 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+0x4b79 018922 branch assert 
+:      018924 usb_tx_data_ep2:
+0x4b7a 018925 fetch 1 ,mem_usb_tx_enable 
+0x4b7b 018926 rtnbit0 2 
+0x4b7c 018927 fetch 1 ,mem_usb_tx_wait 
+0x4b7d 018928 rtnbit1 2 
+0x4b7e 018929 fetch 1 ,mem_usb_tx_enable 
+0x4b7f 018930 set0 2 ,pdata 
+0x4b80 018931 store 1 ,mem_usb_tx_enable 
+0x4b81 018932 fetch 1 ,mem_usb_ep2_data 
+0x4b82 018933 rtn blank 
+0x4b83 018934 beq usb_ep2_ms ,usb_tx_ms_data 
+0x4b84 018935 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
+0x4b85 018936 branch assert 
+:      018938 usb_tx_fifo_release:
+0x4b86 018940 arg mem_usb_mouse_data ,contw 
+0x4b87 018941 arg 6 ,loopcnt 
+0x4b88 018942 branch memset0 
+:      018944 usb_tx_ms_data:
+0x4b89 018945 fetch 1 ,mem_usb_idle_flag 
+0x4b8a 018946 fetcht 1 ,mem_usb_get_protocol_flag 
+0x4b8b 018947 iand temp ,pdata 
+0x4b8c 018948 branch usb_tx_ms_data_normal_mode ,blank 
+0x4b8d 018949 fetcht 1 ,mem_usb_set_protocol_status 
+0x4b8e 018950 iadd temp ,pdata 
+0x4b8f 018951 beq mac_boot_mode ,usb_tx_ms_data_mac_boot_mode 
+0x4b90 018952 branch usb_tx_ms_data_normal_mode 
+:      018954 usb_tx_ms_data_mac_boot_mode:
+0x4b91 018955 jam 0 ,mem_usb_ep2_data 
+:      018956 usb_tx_ms_data_mac_boot_regroup:
+0x4b92 018957 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b93 018958 beq r_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b94 018959 beq lr_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b95 018960 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b96 018961 store 1 ,mem_usb_mouse_data 
+0x4b97 018962 fetch 1 ,mem_usb_mouse_data + 2 
+0x4b98 018963 istore 1 ,contw 
+0x4b99 018964 fetch 1 ,mem_usb_mouse_data + 4 
+0x4b9a 018965 istore 1 ,contw 
+0x4b9b 018966 fetch 1 ,mem_usb_mouse_data + 6 
+0x4b9c 018967 istore 1 ,contw 
+0x4b9d 018968 arg 4 ,loopcnt 
+0x4b9e 018969 arg mem_usb_mouse_data ,contr 
+0x4b9f 018970 branch usb_tx_ep2 
+:      018972 usb_tx_ms_data_normal_mode:
+0x4ba0 018973 jam 0 ,mem_usb_ep2_data 
+:      018974 usb_tx_mac_boot_ms_regroup_r_or_lrkey:
+0x4ba1 018975 arg 8 ,loopcnt 
+0x4ba2 018976 arg mem_usb_mouse_data ,contr 
+0x4ba3 018977 branch usb_tx_ep2 
+:      018979 usb_tx_kb_multikey_data:
+0x4ba4 018980 jam 0 ,mem_usb_ep2_data 
+0x4ba5 018981 arg 3 ,loopcnt 
+0x4ba6 018982 arg mem_usb_kb_multikey ,contr 
+0x4ba7 018983 branch usb_tx_ep2 
+:      018985 usb_tx_kb_normal_data:
+0x4ba8 018986 jam 0 ,mem_usb_ep1_data 
+0x4ba9 018987 arg 8 ,loopcnt 
+0x4baa 018988 arg mem_usb_kb_data ,contr 
+0x4bab 018989 branch usb_tx_ep1 
+:      018991 usb_inwake_state_tx_dispose:
+0x4bac 018992 fetch 1 ,mem_usb_state 
+0x4bad 018993 beq usb_sleep ,usb_clear_tx_wait 
+0x4bae 018994 beq usb_connected ,usb_mac_wakeup_trig 
+0x4baf 018995 rtn 
+:      018996 usb_clear_tx_wait:
+0x4bb0 018997 jam 0 ,mem_usb_tx_wait 
+0x4bb1 018998 rtn 
+:      018999 usb_mac_wakeup_trig:
+0x4bb2 019000 hfetch 1 ,core_usb_config 
+0x4bb3 019001 set1 7 ,pdata 
+0x4bb4 019002 hstore 1 ,core_usb_config 
+0x4bb5 019003 jam 1 ,mem_usb_mac_wakeup_trig 
+0x4bb6 019004 rtn 
+:      019006 usb_mac_wakeup_judge:
+0x4bb7 019007 fetch 1 ,mem_usb_state 
+0x4bb8 019008 rtneq usb_sleep 
+0x4bb9 019009 beq usb_connected ,usb_mac_wakeup 
+0x4bba 019010 rtn 
+:      019011 usb_mac_wakeup:
+0x4bbb 019012 fetch 1 ,mem_usb_mac_wakeup_trig 
+0x4bbc 019013 rtn blank 
+0x4bbd 019014 jam 1 ,mem_usb_wakestate_onetime_flag 
+0x4bbe 019015 branch usb_wakeup 
+:      019017 usb_windows_wakeup:
+0x4bbf 019018 arg timer_wakeup ,queue 
+0x4bc0 019019 call timer_check 
+0x4bc1 019020 nrtn blank 
+:      019021 usb_wakeup:
+0x4bc2 019022 hfetch 1 ,core_usb_config 
+0x4bc3 019023 rtnbit0 7 
+0x4bc4 019024 jam 0xfc ,core_usb_config 
+0x4bc5 019025 nop 30000 
+0x4bc6 019026 jam 0x3c ,core_usb_config 
+0x4bc7 019027 rtn 
+:      019034 hci_rx_h4:
+0x4bc8 019035 bpatch patch1f_5 ,mem_patch1f 
+0x4bc9 019036 fetch 1 ,mem_hci_cmd 
+0x4bca 019037 nrtn blank 
+:      019038 hci_rx_h4_1:
+0x4bcb 019039 call hci_h4_parse_packet 
+0x4bcc 019040 ncall h4_rx_discard_packet ,user 
+0x4bcd 019041 rtn 
+:      019043 hci_h4_parse_packet:
+0x4bce 019044 bpatch patch1f_6 ,mem_patch1f 
+0x4bcf 019045 copy contru ,rega 
+0x4bd0 019046 arg 4 ,temp 
+0x4bd1 019047 ifetch 1 ,contru 
+0x4bd2 019048 beq hci_h4_type_cmd ,hci_h4_parse_packet_wait_len 
+0x4bd3 019049 increase 1 ,temp 
+0x4bd4 019050 beq hci_h4_type_acl ,hci_h4_parse_packet_wait_len 
+0x4bd5 019051 copy contru ,pdata 
+0x4bd6 019052 hstore 2 ,core_uart_rrptr 
+0x4bd7 019053 rtn 
+:      019054 hci_h4_parse_packet_wait_len:
+0x4bd8 019055 hfetch 2 ,core_uart_rxitems 
+0x4bd9 019056 isub temp ,null 
+0x4bda 019057 nbranch hci_h4_parse_packet_wait_len ,positive 
+0x4bdb 019059 disable user 
+0x4bdc 019060 copy rega ,contru 
+0x4bdd 019061 call h4_get_rx_payload_len 
+0x4bde 019062 iadd temp ,temp 
+:      019063 hci_h4_parse_packet_wait:
+0x4bdf 019064 hfetch 2 ,core_uart_rxitems 
+0x4be0 019065 isub temp ,null 
+0x4be1 019066 nbranch hci_h4_parse_packet_wait ,positive 
+0x4be2 019067 copy rega ,contru 
+0x4be3 019068 ifetch 1 ,contru 
+0x4be4 019069 beq hci_h4_type_cmd ,process_hci_cmd 
+0x4be5 019070 branch assert 
+:      019072 h4_rx_discard_packet:
+0x4be6 019073 bpatch patch1f_7 ,mem_patch1f 
+0x4be7 019074 hfetch 2 ,core_uart_rrptr 
+0x4be8 019075 iforce contru 
+0x4be9 019076 call h4_get_rx_payload_len 
+0x4bea 019077 iadd contru ,contru 
+0x4beb 019078 deposit contru 
+0x4bec 019079 hstore 2 ,core_uart_rrptr 
+0x4bed 019080 rtn 
+:      019085 h4_get_rx_payload_len:
+0x4bee 019086 ifetch 1 ,contru 
+0x4bef 019087 increase 2 ,contru 
+0x4bf0 019088 beq hci_h4_type_acl ,h4_get_rx_payload_len_acl 
+0x4bf1 019089 ifetch 1 ,contru 
+0x4bf2 019090 rtn 
+:      019091 h4_get_rx_payload_len_acl:
+0x4bf3 019092 ifetch 2 ,contru 
+0x4bf4 019093 rtn 
+:      019095 h4_get_tx_ptr:
+0x4bf5 019096 hfetch 2 ,core_uart_twptr 
+0x4bf6 019097 increase -5 ,contwu 
+0x4bf7 019098 iadd contwu ,contwu 
+0x4bf8 019099 rtn 
+:      019101 h4_send_packet_event:
+0x4bf9 019102 arg hci_h4_type_event ,temp 
+0x4bfa 019103 branch h4_send_packet 
+:      019104 h4_send_packet_acl:
+0x4bfb 019105 arg hci_h4_type_acl ,temp 
+:      019106 h4_send_packet:
+0x4bfc 019107 bpatchx patch20_0 ,mem_patch20 
+0x4bfd 019108 increase 1 ,loopcnt 
+0x4bfe 019109 hfetch 2 ,core_uart_twptr 
+0x4bff 019110 copy pdata ,contwu 
+0x4c00 019111 copy loopcnt ,pdata 
+0x4c01 019112 istoret 1 ,contwu 
+0x4c02 019113 increase -1 ,pdata 
+0x4c03 019114 iadd contwu ,contwu 
+0x4c04 019115 copy contwu ,pdata 
+0x4c05 019116 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c06 019117 copy temp ,pdata 
+0x4c07 019118 rtneq hci_h4_type_acl 
+0x4c08 019119 fetch 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c09 019120 hstore 2 ,core_uart_twptr 
+0x4c0a 019121 branch h4_send_acl_trigger_clear 
+:      019124 h4_send_acl_trigger_clear:
+0x4c0b 019125 setarg 0 
+0x4c0c 019126 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c0d 019127 rtn 
+:      019134 hci_init:
+0x4c0e 019135 rtn wake 
+0x4c0f 019136 setarg hci_idle_dispatch 
+0x4c10 019137 store 2 ,mem_cb_idle_process 
+0x4c11 019139 setarg uart_baud_115200 
+0x4c12 019140 store uart_baud_len ,mem_baud 
+:      019141 hci_lpm_init:
+0x4c13 019142 setarg mem_h5rx_buf 
+0x4c14 019143 hstore 2 ,core_uart_rsaddr 
+0x4c15 019144 setarg mem_h5rx_buf_end 
+0x4c16 019145 hstore 2 ,core_uart_readdr 
+0x4c17 019146 setarg mem_h5tx_buf 
+0x4c18 019147 hstore 2 ,core_uart_tsaddr 
+0x4c19 019148 call hci_sel_init 
+:      019149 hci_reinit:
+0x4c1a 019150 jam 0x0 ,core_uart_ctrl 
+0x4c1b 019151 setarg mem_h5tx_buf 
+0x4c1c 019152 hstore 2 ,core_uart_twptr 
+0x4c1d 019153 hstore 2 ,core_uart_trptrp 
+0x4c1e 019154 setarg mem_h5rx_buf 
+0x4c1f 019155 hstore 2 ,core_uart_rrptr 
+0x4c20 019156 store 2 ,mem_h5rx_rptr 
+:      019157 hci_init_common:
+0x4c21 019158 hfetch 2 ,core_clkoff 
+0x4c22 019159 set0 clock_off_uart ,pdata 
+0x4c23 019160 hstore 2 ,core_clkoff 
+0x4c24 019161 call uart_set_baud_by_mem 
+0x4c25 019162 jam uartclk_dpll ,core_uart_clksel 
+0x4c26 019163 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x4c27 019164 rtn 
+:      019166 hci_sel_init:
+0x4c28 019167 setarg mem_h5tx_buf_end 
+0x4c29 019168 hstore 2 ,core_uart_teaddr 
+0x4c2a 019169 hfetch 1 ,core_gpio_sel1 
+0x4c2b 019170 or_into 0x07 ,pdata 
+0x4c2c 019171 hstore 1 ,core_gpio_sel1 
+0x4c2d 019172 rtn 
+:      019175 hci_rx_packet:
+0x4c2e 019176 bpatchx patch20_1 ,mem_patch20 
+0x4c2f 019177 hfetch 1 ,core_uart_status 
+0x4c30 019178 iforce regb 
+0x4c31 019179 bbit0 uart_status_rx_fifo_empty ,hci_rx_packet_cont 
+0x4c32 019180 hfetch 2 ,core_uart_rxitems 
+0x4c33 019181 iforce regc 
+0x4c34 019182 arg 0x44f ,temp 
+0x4c35 019183 isub temp ,null 
+0x4c36 019184 nrtn zero 
+:      019185 hci_rx_packet_cont:
+0x4c37 019186 hfetch 2 ,core_uart_rrptr 
+0x4c38 019187 iforce contru 
+0x4c39 019188 branch hci_rx_h4 
+:      019190 uart_send_byte:
+0x4c3a 019191 hfetcht 1 ,core_uart_status 
+0x4c3b 019192 isolate1 6 ,temp 
+0x4c3c 019193 branch uart_send_byte ,true 
+0x4c3d 019194 hstore 1 ,core_uart_txd 
+0x4c3e 019195 rtn 
+:      019197 process_hci_cmd:
+0x4c3f 019198 bpatchx patch20_2 ,mem_patch20 
+0x4c40 019199 fetch 1 ,mem_hci_cmd 
+0x4c41 019200 branch process_hci_cmd_cont ,blank 
+0x4c42 019201 enable user 
+0x4c43 019202 rtn 
+:      019203 process_hci_cmd_cont:
+0x4c44 019204 ifetch 2 ,contru 
+0x4c45 019205 iforce alarm 
+0x4c46 019206 iforce queue 
+0x4c47 019207 ifetch 1 ,contru 
+0x4c48 019208 iforce temp 
+0x4c49 019209 rshift2 alarm ,pdata 
+0x4c4a 019210 rshift8 pdata ,pdata 
+0x4c4b 019211 beq hci_ogf_vendor_specific ,phci_grp_vendor_specific 
+0x4c4c 019212 rtn 
+:      019215 phci_grp_vendor_specific:
+0x4c4d 019216 bpatchx patch20_3 ,mem_patch20 
+0x4c4e 019217 deposit queue 
+0x4c4f 019218 beq hci_vendor_cmd_reset ,hci_normal_reply 
+0x4c50 019219 beq hci_vendor_cmd_chipid ,phci_grp_vendor_chipid 
+0x4c51 019220 beq hci_vendor_cmd_baud ,phci_grp_vendor_baud 
+0x4c52 019221 beq hci_vendor_cmd_patch ,phci_grp_vendor_patch 
+0x4c53 019222 beq hci_vendor_cmd_patch_done ,phci_grp_vendor_done 
+0x4c54 019223 beq hci_vendor_cmd_echo ,hci_normal_reply 
+0x4c55 019224 beq hci_vendor_cmd_bdaddr ,phci_grp_vendor_bdaddr 
+0x4c56 019225 beq hci_vendor_cmd_enter_lpm ,phci_grp_vendor_enter_lpm 
+0x4c57 019227 beq hci_vendor_cmd_mem ,phci_grp_vendor_mem 
+0x4c58 019228 beq hci_vendor_cmd_eep ,phci_grp_vendor_eep 
+0x4c59 019229 beq hci_vendor_cmd_patch_sec_init ,phci_grp_vendor_patch_sec_init 
+0x4c5a 019230 beq hci_vendor_cmd_patch_sec ,phci_grp_vendor_patch_sec 
+0x4c5b 019231 branch hci_normal_reply 
+:      019233 phci_grp_vendor_enter_lpm:
+0x4c5c 019234 call hci_normal_reply 
+0x4c5d 019235 call wait_uarttx 
+0x4c5e 019236 call gpio_pu_uart_tx 
+:      019237 hci_enter_lpm:
+0x4c5f 019238 call app_put_lpm_wake_lock 
+0x4c60 019239 call app_l2cap_flow_control_enable 
+0x4c61 019240 branch gpio_rx_config_input_with_pu 
+:      019242 hci_exit_lpm:
+0x4c62 019243 jam hci_rx_ready ,mem_hci_lt_rx_state 
+0x4c63 019244 call app_get_lpm_wake_lock 
+0x4c64 019245 call hci_lpm_init 
+0x4c65 019246 branch app_l2cap_flow_control_disable 
+:      019248 phci_grp_vendor_chipid:
+0x4c66 019249 call hci_get_cmd_complete_ptr 
+0x4c67 019250 hfetch 2 ,core_chipid 
+0x4c68 019251 istore 2 ,contwu 
+0x4c69 019252 force 6 ,loopcnt 
+0x4c6a 019253 branch hci_command_complete 
+:      019255 phci_grp_vendor_baud:
+0x4c6b 019256 ifetch 2 ,contru 
+0x4c6c 019257 store 2 ,mem_baud 
+0x4c6d 019258 hstore 2 ,core_uart_baud 
+0x4c6e 019259 rtn 
+:      019262 phci_grp_vendor_patch_common:
+0x4c6f 019264 ifetch 1 ,contru 
+0x4c70 019265 copy pdata ,temp 
+0x4c71 019266 hstore 1 ,core_ucode_low 
+0x4c72 019267 ifetch 1 ,contru 
+0x4c73 019268 iadd temp ,temp 
+0x4c74 019269 set1 7 ,pdata 
+0x4c75 019270 hstore 1 ,core_ucode_ctrl 
+0x4c76 019271 ifetch 1 ,contru 
+0x4c77 019272 iadd temp ,temp 
+0x4c78 019273 copy pdata ,loopcnt 
+0x4c79 019274 rtn 
+:      019276 phci_grp_vendor_patch:
+0x4c7a 019277 bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c7b 019278 call phci_grp_vendor_patch_common 
+:      019279 phci_grp_vendor_patch_loop:
+0x4c7c 019280 ifetch 1 ,contru 
+0x4c7d 019281 hstore 1 ,core_ucode_data 
+0x4c7e 019282 iadd temp ,temp 
+0x4c7f 019283 loop phci_grp_vendor_patch_loop 
+:      019284 phci_grp_vendor_patch_check_sum:
+0x4c80 019285 and temp ,0xff ,temp 
+0x4c81 019286 ifetch 1 ,contru 
+0x4c82 019287 isub temp ,null 
+0x4c83 019288 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4c84 019289 branch hci_normal_reply 
+:      019292 phci_grp_vendor_patch_sec:
+0x4c85 019293 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c86 019294 call phci_grp_vendor_patch_common 
+0x4c87 019295 store 8 ,mem_pdatatemp 
+:      019296 phci_grp_vendor_patch_sec_loop:
+0x4c88 019297 call do_aes_cbc 
+0x4c89 019298 arg 16 ,loopcnt 
+0x4c8a 019299 arg mem_temp_block0 ,contw 
+0x4c8b 019300 call load_uart_sum_loop 
+0x4c8c 019301 storet 8 ,mem_temp 
+0x4c8d 019302 arg mem_temp_block2 ,contw 
+0x4c8e 019303 call store_aes_result 
+0x4c8f 019304 arg mem_temp_block2 ,rega 
+0x4c90 019305 arg mem_temp_block0 ,regb 
+0x4c91 019306 arg mem_temp_block3 ,contw 
+0x4c92 019307 call xor16 
+0x4c93 019308 arg 16 ,loopcnt 
+0x4c94 019309 arg mem_temp_block3 ,contr 
+0x4c95 019310 call load_ucode_only_loop 
+0x4c96 019311 fetcht 8 ,mem_temp 
+0x4c97 019312 fetch 8 ,mem_pdatatemp 
+0x4c98 019313 increase -16 ,pdata 
+0x4c99 019314 store 8 ,mem_pdatatemp 
+0x4c9a 019315 nbranch phci_grp_vendor_patch_sec_loop ,blank 
+0x4c9b 019316 branch phci_grp_vendor_patch_check_sum 
+:      019318 load_ucode_only_loop:
+0x4c9c 019319 ifetch 1 ,contr 
+0x4c9d 019320 hstore 1 ,core_ucode_data 
+0x4c9e 019321 loop load_ucode_only_loop 
+0x4c9f 019322 rtn 
+:      019324 load_uart_sum_loop:
+0x4ca0 019325 ifetch 1 ,contru 
+0x4ca1 019326 istore 1 ,contw 
+0x4ca2 019327 iadd temp ,temp 
+0x4ca3 019328 loop load_uart_sum_loop 
+0x4ca4 019329 rtn 
+:      019331 phci_grp_vendor_patch_sec_init:
+0x4ca5 019332 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4ca6 019333 arg 0 ,temp 
+0x4ca7 019334 arg 16 ,loopcnt 
+0x4ca8 019335 arg mem_temp_block0 ,contw 
+0x4ca9 019336 call load_uart_sum_loop 
+0x4caa 019337 hfetch 1 ,core_gpio_key2 
+0x4cab 019338 and_into 0xfd ,pdata 
+0x4cac 019339 hstore 1 ,core_gpio_key2 
+0x4cad 019340 arg mem_temp_block0 ,contr 
+0x4cae 019341 arg 16 ,loopcnt 
+0x4caf 019342 call aes_load_data 
+0x4cb0 019343 call aes_init 
+0x4cb1 019344 call aes_clear_data 
+0x4cb2 019345 branch phci_grp_vendor_patch_check_sum 
+:      019348 phci_grp_vendor_done:
+0x4cb3 019349 arg 0x20 ,loopcnt 
+0x4cb4 019350 arg mem_patch00 ,contw 
+0x4cb5 019351 arg 0 ,temp 
+:      019352 phci_grp_vendor_done_loop:
+0x4cb6 019353 ifetch 1 ,contru 
+0x4cb7 019354 istore 1 ,contw 
+0x4cb8 019355 iadd temp ,temp 
+0x4cb9 019356 loop phci_grp_vendor_done_loop 
+0x4cba 019357 and temp ,0xff ,temp 
+0x4cbb 019358 ifetch 1 ,contru 
+0x4cbc 019359 isub temp ,null 
+0x4cbd 019360 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4cbe 019361 jam 0 ,core_ucode_ctrl 
+0x4cbf 019362 call hci_normal_reply 
+0x4cc0 019363 call h4_rx_discard_packet 
+0x4cc1 019364 call clear_key_buf 
+0x4cc2 019365 call wait_uarttx 
+0x4cc3 019366 branch soft_reset 
+:      019368 phci_grp_vendor_patch_bad:
+0x4cc4 019369 jam 0 ,core_ucode_ctrl 
+0x4cc5 019370 branch start 
+:      019372 phci_grp_vendor_bdaddr:
+0x4cc6 019373 ifetch 6 ,contru 
+0x4cc7 019374 store 6 ,mem_lap 
+0x4cc8 019375 branch hci_normal_reply 
+:      019378 phci_grp_vendor_mem:
+0x4cc9 019379 ifetch 1 ,contru 
+0x4cca 019380 store 1 ,mem_hci_curr_len 
+0x4ccb 019381 copy pdata ,loopcnt 
+0x4ccc 019382 ifetch 2 ,contru 
+0x4ccd 019383 store 2 ,mem_hci_curr_target 
+0x4cce 019384 copy pdata ,contw 
+0x4ccf 019385 call uart_copy_rx_bytes 
+0x4cd0 019386 branch hci_normal_reply 
+:      019389 phci_grp_vendor_eep:
+0x4cd1 019390 ifetch 1 ,contru 
+0x4cd2 019391 store 1 ,mem_hci_curr_len 
+0x4cd3 019392 copy pdata ,loopcnt 
+0x4cd4 019393 ifetch 2 ,contru 
+0x4cd5 019394 store 2 ,mem_hci_curr_target 
+0x4cd6 019395 arg mem_l2cap_rxbuff1 ,contw 
+0x4cd7 019396 call uart_copy_rx_bytes 
+0x4cd8 019397 fetcht 1 ,mem_hci_curr_len 
+0x4cd9 019398 arg mem_l2cap_rxbuff1 ,rega 
+0x4cda 019399 fetch 2 ,mem_hci_curr_target 
+0x4cdb 019400 branch iicd_write_ota_data 
+:      019405 hci_normal_reply:
+0x4cdc 019406 force 4 ,loopcnt 
+:      019407 hci_command_complete:
+0x4cdd 019408 call hci_get_payload_ptr 
+0x4cde 019409 force 0x1 ,pdata 
+0x4cdf 019410 istore 1 ,contwu 
+0x4ce0 019411 deposit alarm 
+0x4ce1 019412 istore 3 ,contwu 
+0x4ce2 019413 force hci_event_command_complete ,queue 
+:      019414 hci_send_event:
+0x4ce3 019415 bpatchx patch20_4 ,mem_patch20 
+0x4ce4 019416 call hci_get_packet_ptr 
+0x4ce5 019417 deposit queue 
+0x4ce6 019418 istore 1 ,contwu 
+0x4ce7 019419 deposit loopcnt 
+0x4ce8 019420 istore 1 ,contwu 
+:      019421 hci_send_event_raw:
+0x4ce9 019422 force 5 ,queue 
+0x4cea 019423 increase 2 ,loopcnt 
+:      019424 hci_send_packet:
+0x4ceb 019425 branch h4_send_packet_event 
+:      019427 hci_send_commu_ready_event:
+0x4cec 019428 force hci_event_vendor_specific ,queue 
+0x4ced 019429 call hci_get_payload_ptr 
+0x4cee 019430 setarg hci_vendor_event_commu_ready 
+0x4cef 019431 istore 1 ,contwu 
+0x4cf0 019432 force 1 ,loopcnt 
+0x4cf1 019433 branch hci_send_event 
+:      019435 hci_get_cmd_complete_ptr:
+0x4cf2 019436 force 12 ,contwu 
+0x4cf3 019437 branch hci_get_tx_ptr 
+:      019439 hci_get_payload_ptr:
+0x4cf4 019440 force 8 ,contwu 
+0x4cf5 019441 branch hci_get_tx_ptr 
+:      019443 hci_get_packet_ptr:
+0x4cf6 019444 force 6 ,contwu 
+:      019445 hci_get_tx_ptr:
+0x4cf7 019446 branch h4_get_tx_ptr 
+:      019450 calc_tx_crc16:
+0x4cf8 019451 pulse crc16 
+0x4cf9 019452 enable enable_crc 
+:      019453 crcloop:
+0x4cfa 019454 ifetch 1 ,contwu 
+0x4cfb 019455 inject bucket ,8 
+0x4cfc 019456 loop crcloop 
+0x4cfd 019457 enable enable_parity 
+0x4cfe 019458 inject bucket ,16 
+0x4cff 019459 disable enable_parity 
+0x4d00 019460 disable enable_crc 
+0x4d01 019461 disable crc16 
+0x4d02 019462 byteswap pdata ,pdata 
+0x4d03 019463 rtn 
+:      019467 cmd_exit:
+0x4d04 019468 jam 0 ,mem_hci_cmd 
+0x4d05 019469 rtn 
+:      019470 cmd_check_plap:
+0x4d06 019471 fetch 6 ,mem_hci_plap 
+0x4d07 019472 fetcht 6 ,mem_plap 
+0x4d08 019473 isub temp ,null 
+0x4d09 019474 rtn 
+:      019479 cmd_pair:
+0x4d0a 019480 fetch 1 ,mem_op 
+0x4d0b 019481 bbit1 op_inrand_req ,cmd_pair_passive 
+0x4d0c 019482 call tid_initiate 
+0x4d0d 019483 jam lmp_in_rand ,mem_lmo_opcode2 
+0x4d0e 019484 branch cmd_exit 
+:      019485 cmd_pair_passive:
+0x4d0f 019486 set0 op_inrand_req ,pdata 
+0x4d10 019487 store 1 ,mem_op 
+0x4d11 019488 call lmp_accept_inrand 
+0x4d12 019489 setarg 0 
+0x4d13 019490 setflag master ,smap_lmptid ,pdata 
+0x4d14 019491 store 1 ,mem_lmo_tid2 
+0x4d15 019492 branch cmd_exit 
+0x4d16 019493 rtn 
+:      019494 cmd_in_sniff:
+0x4d17 019495 jam lmp_sniff_req ,mem_lmo_opcode2 
+0x4d18 019496 arg mem_sniff_payload ,contw 
+0x4d19 019497 setarg 0 
+0x4d1a 019498 isolate1 27 ,clke_bt 
+0x4d1b 019499 setflag true ,1 ,pdata 
+0x4d1c 019500 istore 1 ,contw 
+0x4d1d 019501 setarg 0 
+0x4d1e 019502 istore 2 ,contw 
+0x4d1f 019503 fetch 2 ,mem_sniff_param_interval 
+0x4d20 019504 istore 2 ,contw 
+0x4d21 019505 fetch 1 ,mem_sniff_param_attempt 
+0x4d22 019506 istore 2 ,contw 
+0x4d23 019507 fetch 1 ,mem_sniff_param_timeout 
+0x4d24 019508 istore 2 ,contw 
+0x4d25 019509 branch cmd_exit 
+:      019511 cmd_exit_sniff:
+0x4d26 019512 jam lmp_unsniff_req ,mem_lmo_opcode2 
+0x4d27 019513 branch cmd_exit 
+:      019515 hci_idle_dispatch:
+0x4d28 019516 call gpio_check_uart_state 
+0x4d29 019517 rtn true 
+0x4d2a 019518 arg uart_wakeup_rx ,temp 
+0x4d2b 019519 call gpio_get_bit 
+0x4d2c 019520 nbranch uart_wake_up ,true 
+0x4d2d 019521 jam hci_rx_wake ,mem_hci_lt_rx_state 
+0x4d2e 019522 rtn 
+:      019523 uart_wake_up:
+0x4d2f 019524 fetch 1 ,mem_hci_lt_rx_state 
+0x4d30 019525 rtnne hci_rx_wake 
+0x4d31 019526 call hci_exit_lpm 
+0x4d32 019527 branch hci_send_commu_ready_event 
+:      019541 hid_rx_process:
+0x4d33 019542 bpatchx patch20_5 ,mem_patch20 
+0x4d34 019543 fetch 2 ,mem_l2cap_payload_ptr 
+0x4d35 019544 copy pdata ,contr 
+0x4d36 019545 ifetch 1 ,contr 
+0x4d37 019546 and pdata ,0x0f ,temp 
+0x4d38 019547 rshift4 pdata ,pdata 
+0x4d39 019548 beq hid_type_set_idle ,hid_rx_process_handshake 
+0x4d3a 019549 beq hid_type_set_protocol ,hid_rx_process_handshake 
+0x4d3b 019550 beq hid_type_data ,hid_rx_process_data 
+0x4d3c 019551 beq hid_type_set_report ,hid_rx_process_set_report 
+0x4d3d 019552 beq hid_type_control ,hid_rx_process_hid_control 
+0x4d3e 019553 rtn 
+:      019555 hid_rx_process_hid_control:
+0x4d3f 019556 copy temp ,pdata 
+0x4d40 019557 beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
+0x4d41 019558 beq hid_control_p_suspend ,hid_rx_process_suspend 
+0x4d42 019559 rtn 
+:      019561 hid_rx_process_virtual_cable_unplug:
+0x4d43 019562 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
+0x4d44 019563 call ui_ipc_send_event 
+0x4d45 019564 fetch 1 ,mem_device_option 
+0x4d46 019565 rtnbit0 dvc_op_mouse 
+0x4d47 019566 copy temp ,pdata 
+0x4d48 019567 beq hid_control_p_virtualcableunplug ,mouse_irtual_cable_unplug 
+0x4d49 019568 rtn 
+:      019569 hid_rx_process_suspend:
+0x4d4a 019570 rtn 
+:      019572 hid_rx_process_set_report:
+0x4d4b 019573 call hid_rx_process_data 
+0x4d4c 019574 arg 0x01 ,rega 
+0x4d4d 019575 call hid_malloc_tx_buff 
+0x4d4e 019576 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d4f 019577 istore 2 ,contw 
+0x4d50 019578 setarg 0x00 
+0x4d51 019579 istore 1 ,contw 
+0x4d52 019580 rtn 
+:      019582 hid_rx_process_handshake:
+0x4d53 019583 arg 1 ,rega 
+0x4d54 019584 call hid_malloc_tx_buff 
+0x4d55 019585 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d56 019586 istore 2 ,contw 
+0x4d57 019587 setarg 0 
+0x4d58 019588 istore 1 ,contw 
+0x4d59 019589 jam 1 ,mem_ui_data_txbuff_length 
+0x4d5a 019590 fetch 1 ,mem_hid_control_state 
+0x4d5b 019591 set1 l2cap_channel_hid_handshake_done 
+0x4d5c 019592 store 1 ,mem_hid_control_state 
+0x4d5d 019593 jam bt_evt_hid_handshake ,mem_fifo_temp 
+0x4d5e 019594 branch ui_ipc_send_event 
+:      019596 hid_rx_process_data:
+0x4d5f 019597 ifetch 1 ,contr 
+0x4d60 019598 beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
+0x4d61 019599 rtn 
+:      019601 hid_rx_process_data_hid_kb:
+0x4d62 019602 rtn 
+:      019605 hid_malloc_tx_buff:
+0x4d63 019606 call l2cap_malloc 
+0x4d64 019607 copy rega ,temp 
+0x4d65 019608 storet 1 ,mem_ui_data_txbuff_length 
+0x4d66 019609 copy pdata ,contw 
+0x4d67 019610 copy rega ,pdata 
+0x4d68 019611 istore 2 ,contw 
+0x4d69 019612 rtn 
+:      019629 l2cap_init:
+0x4d6a 019630 branch l2cap_init_wake ,wake 
+:      019631 l2cap_init_work:
+0x4d6b 019632 setarg mem_l2cap_xmem_end 
+0x4d6c 019633 arg mem_l2cap_xmem_start ,contw 
+0x4d6d 019634 isub contw ,loopcnt 
+0x4d6e 019635 call clear_mem 
+:      019636 l2cap_init_wake:
+0x4d6f 019637 bpatchx patch20_6 ,mem_patch20 
+0x4d70 019638 setarg mem_sdp_mem_end 
+0x4d71 019639 arg mem_sdp_mem_start ,contw 
+0x4d72 019640 isub contw ,loopcnt 
+0x4d73 019641 call clear_mem 
+0x4d74 019642 setarg mem_l2cap_mem_end 
+0x4d75 019643 arg mem_l2cap_mem_start ,contw 
+0x4d76 019644 isub contw ,loopcnt 
+0x4d77 019645 call clear_mem 
+0x4d78 019646 branch l2cap_lpm_load_txbuf 
+:      019648 process_rx_l2cap_pkt:
+0x4d79 019649 bpatchx patch20_7 ,mem_patch20 
+0x4d7a 019650 copy contr ,temp 
+0x4d7b 019653 copy temp ,contr 
+0x4d7c 019654 ifetch 2 ,contr 
+0x4d7d 019655 store 2 ,mem_l2cap_rx_pkt_length 
+0x4d7e 019656 ifetch 2 ,contr 
+0x4d7f 019657 store 2 ,mem_l2cap_rx_cid 
+0x4d80 019658 deposit contr 
+0x4d81 019659 store 2 ,mem_l2cap_payload_ptr 
+0x4d82 019660 fetch 1 ,memui_reconnect_mode 
+0x4d83 019661 beq no_reconnection ,l2cap_rx_multiplexing 
+0x4d84 019662 branch ml2cap_rx_multiplexing 
+:      019664 l2cap_rx_multiplexing:
+0x4d85 019665 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4d86 019666 branch l2cap_rx_reset_state ,blank 
+0x4d87 019667 bpatchx patch21_0 ,mem_patch21 
+0x4d88 019668 fetch 1 ,mem_l2cap_rx_cid 
+0x4d89 019669 beq l2cap_signal_channel ,l2cap_call_proc_signal 
+:      019670 l2cap_rx_multiplexing0:
+0x4d8a 019671 beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
+0x4d8b 019672 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x4d8c 019673 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x4d8d 019674 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x4d8e 019675 branch l2cap_rx_reset_state 
+:      019677 l2cap_check_map:
+0x4d8f 019680 bpatchx patch21_1 ,mem_patch21 
+0x4d90 019681 call l2cap_malloc_get_full_map 
+0x4d91 019682 fetch 1 ,mem_used_map 
+0x4d92 019683 beq 0 ,set_pdata_0 
+0x4d93 019684 beq 1 ,set_pdata_0 
+0x4d94 019685 beq 2 ,set_pdata_0 
+0x4d95 019686 beq 3 ,set_pdata_0 
+0x4d96 019687 beq 0x81 ,set_pdata_0 
+0x4d97 019688 beq 0xc0 ,set_pdata_0 
+0x4d98 019689 beq 0x80 ,set_pdata_0 
+0x4d99 019690 beq 0x40 ,set_pdata_0 
+0x4d9a 019691 rtn 
+:      019693 set_pdata_0:
+0x4d9b 019694 setarg 0 
+0x4d9c 019695 rtn 
+:      019698 l2cap_call_proc_signal:
+0x4d9d 019699 call l2cap_check_map 
+0x4d9e 019700 nrtn blank 
+:      019701 l2cap_call_proc_signal0:
+0x4d9f 019702 call l2cap_malloc_signal_channel 
+0x4da0 019703 call l2cap_process_signal_pkt 
+0x4da1 019704 fetcht 2 ,mem_l2cap_signal_tx_length 
+0x4da2 019705 branch l2cap_call_proc_no_reply ,blank 
+0x4da3 019706 call l2cap_get_signal_tx_buff 
+0x4da4 019707 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4da5 019708 istore 2 ,contw 
+0x4da6 019709 force l2cap_signal_channel ,pdata 
+0x4da7 019710 istore 2 ,contw 
+0x4da8 019711 branch l2cap_rx_reset_state 
+:      019713 l2cap_call_proc_sigal_pending:
+0x4da9 019714 fetch 1 ,mem_l2cap_pending_item 
+0x4daa 019715 rtn blank 
+0x4dab 019716 copy pdata ,rega 
+0x4dac 019717 bpatchx patch21_2 ,mem_patch21 
+0x4dad 019718 fetch 4 ,mem_l2cap_sdpres_delay_time 
+0x4dae 019719 arg 0x100 ,temp 
+0x4daf 019720 iadd temp ,temp 
+0x4db0 019721 copy clkn_bt ,pdata 
+0x4db1 019722 isub temp ,null 
+0x4db2 019723 nrtn positive 
+0x4db3 019724 jam 0 ,mem_l2cap_pending_item 
+0x4db4 019725 copy rega ,pdata 
+0x4db5 019726 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
+0x4db6 019727 branch assert 
+:      019728 l2cap_sdp_conn_succ:
+0x4db7 019729 arg 0 ,debug 
+0x4db8 019730 call l2cap_malloc_signal_channel 
+0x4db9 019731 call restore_l2cap_req_param 
+0x4dba 019732 call l2cap_get_signal_tx_payload 
+0x4dbb 019733 call save_cont_pointers 
+0x4dbc 019734 call send_connection_sdp_res 
+0x4dbd 019735 call l2cap_get_signal_tx_buff 
+0x4dbe 019737 setarg 0x000c 
+0x4dbf 019738 istore 2 ,contw 
+0x4dc0 019739 force l2cap_signal_channel ,pdata 
+0x4dc1 019740 istore 2 ,contw 
+0x4dc2 019741 branch l2cap_rx_reset_state 
+:      019745 l2cap_reset_sdp_map:
+0x4dc3 019746 bpatchx patch21_3 ,mem_patch21 
+0x4dc4 019747 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dc5 019748 increase 4 ,pdata 
+0x4dc6 019749 rshift4 pdata ,pdata 
+0x4dc7 019750 rshift3 pdata ,pdata 
+0x4dc8 019751 add pdata ,1 ,temp 
+0x4dc9 019752 arg mem_tx_fifo3 ,contr 
+0x4dca 019753 ifetch 3 ,contr 
+0x4dcb 019754 rtn blank 
+0x4dcc 019755 store 3 ,mem_tx_fifo_map_temp 
+0x4dcd 019756 fetch 1 ,mem_tx_fifo_map_temp 
+0x4dce 019757 copy pdata ,rega 
+0x4dcf 019758 call check_l2cap_map 
+0x4dd0 019759 copy regb ,pdata 
+0x4dd1 019760 store 1 ,mem_tx_fifo3 
+0x4dd2 019761 rtn 
+:      019763 check_l2cap_map:
+0x4dd3 019764 arg 0 ,queue 
+0x4dd4 019765 arg 0 ,regb 
+:      019767 check_l2cap_map_loop:
+0x4dd5 019768 sub queue ,7 ,null 
+0x4dd6 019769 nrtn positive 
+0x4dd7 019770 qisolate1 rega 
+0x4dd8 019771 branch check_l2cap_map_used ,true 
+0x4dd9 019772 branch check_l2cap_map_used2 
+:      019774 check_l2cap_map_used:
+0x4dda 019775 copy temp ,pdata 
+0x4ddb 019776 branch check_l2cap_map_used2 ,blank 
+0x4ddc 019777 qset1 regb 
+0x4ddd 019778 increase -1 ,temp 
+:      019780 check_l2cap_map_used2:
+0x4dde 019781 increase 1 ,queue 
+0x4ddf 019782 branch check_l2cap_map_loop 
+:      019784 l2cap_call_proc_sdp:
+0x4de0 019785 call l2cap_malloc_is_fifo_empty 
+0x4de1 019786 nrtn blank 
+0x4de2 019787 call l2cap_check_map 
+0x4de3 019788 nrtn blank 
+0x4de4 019789 call l2cap_malloc_sdp_channel 
+0x4de5 019790 call sdp_process 
+0x4de6 019791 call l2cap_reset_sdp_map 
+0x4de7 019792 branch l2cap_call_proc_sdp_common 
+:      019795 ml2cap_call_proc_sdp:
+0x4de8 019796 call l2cap_malloc_is_fifo_empty 
+0x4de9 019797 nrtn blank 
+0x4dea 019798 call l2cap_malloc_sdp_channel 
+0x4deb 019799 call sdp_process 
+:      019800 l2cap_call_proc_sdp_common:
+0x4dec 019801 call l2cap_get_sdp_tx_buff 
+0x4ded 019802 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dee 019803 branch l2cap_call_proc_no_reply ,blank 
+0x4def 019804 istore 2 ,contw 
+0x4df0 019805 fetch 2 ,mem_sdp_remote_cid 
+0x4df1 019806 istore 2 ,contw 
+0x4df2 019807 branch l2cap_rx_reset_state 
+:      019809 l2cap_call_proc_hid:
+0x4df3 019810 call hid_rx_process 
+0x4df4 019811 branch l2cap_rx_reset_state 
+:      019813 l2cap_call_proc_rfcomm:
+0x4df5 019814 bpatchx patch21_4 ,mem_patch21 
+0x4df6 019815 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x4df7 019816 call rfcomm_rx_process 
+0x4df8 019817 fetch 1 ,mem_rfcomm_malloc_fail_flag 
+0x4df9 019818 rtneq rfcomm_malloc_fail 
+0x4dfa 019819 branch l2cap_rx_reset_state 
+:      019820 l2cap_call_proc_no_reply:
+0x4dfb 019821 call l2cap_malloc_discard 
+:      019823 l2cap_rx_reset_state:
+0x4dfc 019824 setarg 0 
+0x4dfd 019825 store 2 ,mem_l2cap_rx_pkt_length 
+0x4dfe 019826 store 2 ,mem_l2cap_rx_cid 
+0x4dff 019827 jam l2cap_rx_done ,mem_l2cap_rx_done 
+0x4e00 019828 rtn 
+:      019830 l2cap_process_signal_pkt:
+0x4e01 019831 bpatchx patch21_5 ,mem_patch21 
+0x4e02 019832 call l2cap_get_signal_tx_payload 
+0x4e03 019833 force 0 ,regb 
+0x4e04 019834 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4e05 019835 copy pdata ,regc 
+0x4e06 019836 fetch 2 ,mem_l2cap_payload_ptr 
+0x4e07 019837 iforce contr 
+:      019838 l2cap_process_signal_pkt_loop:
+0x4e08 019839 call l2cap_process_one_signal 
+0x4e09 019840 deposit regc 
+0x4e0a 019841 increase -4 ,regc 
+0x4e0b 019842 increase -4 ,pdata 
+0x4e0c 019843 nbranch l2cap_process_signal_pkt_loop ,blank 
+0x4e0d 019844 copy regb ,pdata 
+0x4e0e 019845 store 2 ,mem_l2cap_signal_tx_length 
+0x4e0f 019846 rtn 
+:      019848 l2cap_process_one_signal:
+0x4e10 019849 bpatchx patch21_6 ,mem_patch21 
+0x4e11 019850 ifetch 1 ,contr 
+0x4e12 019851 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
+0x4e13 019852 beq signal_connect_req ,l2cap_proc_signal_connect_req 
+0x4e14 019853 beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
+0x4e15 019854 beq signal_config_req ,l2cap_proc_signal_config_req 
+0x4e16 019855 beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
+0x4e17 019856 beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
+0x4e18 019857 beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
+0x4e19 019858 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x4e1a 019859 beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
+0x4e1b 019860 beq signal_info_req ,l2cap_proc_signal_info_req 
+0x4e1c 019861 beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
+0x4e1d 019862 call l2cap_reject_command 
+:      019863 l2cap_process_one_signal_rtn:
+0x4e1e 019864 rtn 
+:      019866 l2cap_proc_signal_info_req:
+0x4e1f 019867 ifetch 1 ,contr 
+0x4e20 019868 copy pdata ,queue 
+0x4e21 019869 ifetch 2 ,contr 
+0x4e22 019870 copy pdata ,rega 
+0x4e23 019871 copy regc ,pdata 
+0x4e24 019872 isub rega ,regc 
+0x4e25 019873 setarg signal_info_rsp 
+0x4e26 019874 istore 1 ,contw 
+0x4e27 019875 copy queue ,pdata 
+0x4e28 019876 istore 1 ,contw 
+0x4e29 019877 ifetch 2 ,contr 
+:      019878 l2cap_proc_signal_info_req_reply:
+0x4e2a 019879 beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
+0x4e2b 019880 beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
+0x4e2c 019881 rtn 
+:      019882 l2cap_proc_signal_info_req_ext:
+0x4e2d 019883 setarg 0x020008 
+0x4e2e 019884 istore 6 ,contw 
+0x4e2f 019885 setarg 0x0280 
+0x4e30 019886 istore 4 ,contw 
+0x4e31 019887 force 12 ,pdata 
+0x4e32 019888 branch l2cap_proc_signal_info_req_common 
+:      019889 l2cap_proc_signal_info_req_fix:
+0x4e33 019890 setarg 0x3000c 
+0x4e34 019891 istore 6 ,contw 
+0x4e35 019892 setarg 0x0006 
+0x4e36 019893 istore 8 ,contw 
+0x4e37 019894 force 16 ,pdata 
+:      019895 l2cap_proc_signal_info_req_common:
+0x4e38 019896 iadd regb ,regb 
+0x4e39 019897 branch l2cap_process_one_signal_rtn 
+:      019899 ml2cap_proc_signal_info_req:
+0x4e3a 019900 ifetch 1 ,contr 
+0x4e3b 019901 copy pdata ,queue 
+0x4e3c 019902 ifetch 2 ,contr 
+0x4e3d 019903 copy pdata ,rega 
+0x4e3e 019904 ifetch 2 ,contr 
+0x4e3f 019905 store 2 ,mem_temp 
+0x4e40 019906 copy regc ,pdata 
+0x4e41 019907 isub rega ,regc 
+0x4e42 019908 call l2cap_get_signal_tx_payload 
+0x4e43 019909 setarg signal_info_rsp 
+0x4e44 019910 istore 1 ,contw 
+0x4e45 019911 copy queue ,pdata 
+0x4e46 019912 istore 1 ,contw 
+0x4e47 019913 fetch 2 ,mem_temp 
+0x4e48 019914 branch l2cap_proc_signal_info_req_reply 
+:      019918 l2cap_proc_signal_cmd_reject:
+0x4e49 019919 ifetch 1 ,contr 
+0x4e4a 019920 copy pdata ,queue 
+0x4e4b 019921 ifetch 2 ,contr 
+0x4e4c 019922 copy pdata ,rega 
+0x4e4d 019923 iadd contr ,contr 
+0x4e4e 019924 copy regc ,pdata 
+0x4e4f 019925 isub rega ,regc 
+:      019926 l2cap_proc_signal_cmd_reject_rtn:
+0x4e50 019927 branch l2cap_process_one_signal_rtn 
+:      019929 l2cap_proc_signal_connect_req:
+0x4e51 019930 call save_cont_pointers 
+0x4e52 019933 call load_cont_pointers 
+0x4e53 019934 arg 0 ,debug 
+0x4e54 019935 ifetch 1 ,contr 
+0x4e55 019936 copy pdata ,queue 
+0x4e56 019937 ifetch 2 ,contr 
+0x4e57 019938 copy pdata ,rega 
+0x4e58 019939 ifetch 2 ,contr 
+0x4e59 019940 copy pdata ,temp 
+0x4e5a 019941 ifetch 2 ,contr 
+0x4e5b 019942 copy pdata ,timeup 
+0x4e5c 019943 bpatchx patch21_7 ,mem_patch21 
+0x4e5d 019944 copy temp ,pdata 
+0x4e5e 019945 beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
+0x4e5f 019946 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
+0x4e60 019947 beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
+0x4e61 019948 beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
+0x4e62 019949 call l2cap_reject_command 
+0x4e63 019950 branch l2cap_proc_signal_connect_req_rtn 
+:      019952 l2cap_proc_signal_connect_req_sdp:
+0x4e64 019953 call save_cont_pointers 
+0x4e65 019954 arg l2cap_sdp_channel ,temp 
+0x4e66 019955 fetch 2 ,mem_sdp_remote_cid 
+0x4e67 019956 nbranch already_connected ,blank 
+0x4e68 019957 copy timeup ,pdata 
+0x4e69 019958 store 2 ,mem_sdp_remote_cid 
+0x4e6a 019959 copy clkn_bt ,pdata 
+0x4e6b 019960 store 4 ,mem_l2cap_sdpres_delay_time 
+0x4e6c 019961 call store_l2cap_req_param 
+0x4e6d 019962 branch send_connection_pending 
+:      019964 store_l2cap_req_param:
+0x4e6e 019965 storet 2 ,mem_psm 
+0x4e6f 019966 deposit timeup 
+0x4e70 019967 store 2 ,mem_scid 
+0x4e71 019968 deposit rega 
+0x4e72 019969 store 2 ,mem_cmd_length 
+0x4e73 019970 deposit regb 
+0x4e74 019971 store 2 ,mem_tt2 
+0x4e75 019972 deposit regc 
+0x4e76 019973 store 2 ,mem_tt3 
+0x4e77 019974 deposit queue 
+0x4e78 019975 store 2 ,mem_id 
+0x4e79 019976 rtn 
+:      019978 restore_l2cap_req_param:
+0x4e7a 019979 fetcht 2 ,mem_psm 
+0x4e7b 019980 fetch 2 ,mem_scid 
+0x4e7c 019981 copy pdata ,timeup 
+0x4e7d 019982 fetch 2 ,mem_cmd_length 
+0x4e7e 019983 copy pdata ,rega 
+0x4e7f 019984 fetch 2 ,mem_tt2 
+0x4e80 019985 copy pdata ,regb 
+0x4e81 019986 fetch 2 ,mem_tt3 
+0x4e82 019987 copy pdata ,regc 
+0x4e83 019988 fetch 2 ,mem_id 
+0x4e84 019989 copy pdata ,queue 
+0x4e85 019990 rtn 
+:      019992 l2cap_proc_signal_connect_req_rfcomm:
+0x4e86 019993 call save_cont_pointers 
+0x4e87 019994 setarg l2cap_rfcomm_channel 
+0x4e88 019995 arg l2cap_rfcomm_channel ,temp 
+0x4e89 019996 fetch 2 ,mem_rfcomm_remote_cid 
+0x4e8a 019997 nbranch already_connected ,blank 
+0x4e8b 019998 copy timeup ,pdata 
+0x4e8c 019999 store 2 ,mem_rfcomm_remote_cid 
+0x4e8d 020000 fetch 1 ,mem_rfcomm_state 
+0x4e8e 020001 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e8f 020002 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e90 020003 store 1 ,mem_rfcomm_state 
+0x4e91 020004 branch send_connection_res 
+:      020005 l2cap_proc_signal_connect_req_hid_ctrl:
+0x4e92 020006 call save_cont_pointers 
+0x4e93 020007 arg l2cap_hid_control_channel ,temp 
+0x4e94 020008 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4e95 020009 nbranch already_connected ,blank 
+0x4e96 020010 copy timeup ,pdata 
+0x4e97 020011 store 2 ,mem_hid_ctrl_remote_cid 
+0x4e98 020012 fetch 1 ,mem_hid_control_state 
+0x4e99 020013 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e9a 020014 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e9b 020015 store 1 ,mem_hid_control_state 
+0x4e9c 020016 branch send_connection_res 
+:      020017 l2cap_proc_signal_connect_req_hid_int:
+0x4e9d 020018 call save_cont_pointers 
+0x4e9e 020019 deposit clke 
+0x4e9f 020020 arg l2cap_hid_interrupt_channel ,temp 
+0x4ea0 020021 fetch 2 ,mem_hid_int_remote_cid 
+0x4ea1 020022 nbranch already_connected ,blank 
+0x4ea2 020023 copy timeup ,pdata 
+0x4ea3 020024 store 2 ,mem_hid_int_remote_cid 
+0x4ea4 020025 fetch 1 ,mem_hid_interrupt_state 
+0x4ea5 020026 set1 l2cap_channel_state_conn_req ,pdata 
+0x4ea6 020027 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ea7 020028 store 1 ,mem_hid_interrupt_state 
+0x4ea8 020029 branch send_connection_res 
+:      020031 send_connection_pending:
+0x4ea9 020032 setarg l2cap_connect_pending 
+0x4eaa 020033 store 2 ,meml2cap_t1 
+0x4eab 020034 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
+0x4eac 020035 branch send_connection_res0 
+:      020036 send_connection_sdp_res:
+0x4ead 020037 fetch 1 ,mem_sdp_state 
+0x4eae 020038 set1 l2cap_channel_state_conn_req ,pdata 
+0x4eaf 020039 set1 l2cap_channel_state_conn_res ,pdata 
+0x4eb0 020040 store 1 ,mem_sdp_state 
+:      020041 send_connection_res:
+0x4eb1 020042 setarg l2cap_connect_successful 
+0x4eb2 020043 store 2 ,meml2cap_t1 
+:      020044 send_connection_res0:
+0x4eb3 020045 bpatchx patch22_0 ,mem_patch22 
+0x4eb4 020046 call load_cont_pointers 
+0x4eb5 020047 setarg signal_connect_rsp 
+0x4eb6 020048 istore 1 ,contw 
+0x4eb7 020049 copy queue ,pdata 
+0x4eb8 020050 istore 1 ,contw 
+0x4eb9 020051 setarg 0x0008 
+0x4eba 020052 istore 2 ,contw 
+0x4ebb 020053 copy temp ,pdata 
+0x4ebc 020054 istore 2 ,contw 
+0x4ebd 020055 copy timeup ,pdata 
+0x4ebe 020056 istore 2 ,contw 
+0x4ebf 020057 fetch 2 ,meml2cap_t1 
+0x4ec0 020058 beq l2cap_connect_pending ,connect_pending 
+0x4ec1 020059 isolate0 0 ,debug 
+0x4ec2 020060 branch connect_suc ,true 
+0x4ec3 020061 setarg l2cap_connect_refused_no_resources 
+:      020062 connect_suc:
+0x4ec4 020063 istore 2 ,contw 
+0x4ec5 020064 force 0x0000 ,pdata 
+0x4ec6 020065 istore 2 ,contw 
+0x4ec7 020066 setarg 12 
+0x4ec8 020067 branch connect_req_update_byte_counts 
+:      020068 connect_pending:
+0x4ec9 020069 istore 2 ,contw 
+0x4eca 020070 force 0x0002 ,pdata 
+0x4ecb 020071 istore 2 ,contw 
+0x4ecc 020072 setarg 12 
+0x4ecd 020073 branch connect_req_update_byte_counts 
+:      020075 already_connected:
+0x4ece 020076 set1 0 ,debug 
+0x4ecf 020077 branch send_connection_res 
+:      020078 connect_req_update_byte_counts:
+0x4ed0 020079 iadd regb ,regb 
+0x4ed1 020080 copy regc ,pdata 
+0x4ed2 020081 isub rega ,regc 
+0x4ed3 020082 branch l2cap_proc_signal_connect_req_rtn 
+:      020083 l2cap_proc_signal_connect_req_rtn:
+0x4ed4 020084 branch l2cap_process_one_signal_rtn 
+:      020086 l2cap_proc_signal_connect_rsp:
+0x4ed5 020087 ifetch 1 ,contr 
+0x4ed6 020088 copy pdata ,queue 
+0x4ed7 020089 ifetch 2 ,contr 
+0x4ed8 020090 copy pdata ,rega 
+0x4ed9 020091 copy regc ,pdata 
+0x4eda 020092 isub rega ,regc 
+0x4edb 020093 ifetch 2 ,contr 
+0x4edc 020094 copy pdata ,timeup 
+0x4edd 020095 ifetch 2 ,contr 
+0x4ede 020096 copy pdata ,temp 
+0x4edf 020097 bpatchx patch22_1 ,mem_patch22 
+0x4ee0 020098 setarg l2cap_sdp_channel 
+0x4ee1 020099 isub temp ,null 
+0x4ee2 020100 branch l2cap_proc_signal_connect_rsp_sdp ,zero 
+0x4ee3 020101 setarg l2cap_rfcomm_channel 
+0x4ee4 020102 isub temp ,null 
+0x4ee5 020103 branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x4ee6 020104 setarg l2cap_hid_control_channel 
+0x4ee7 020105 isub temp ,null 
+0x4ee8 020106 branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x4ee9 020107 setarg l2cap_hid_interrupt_channel 
+0x4eea 020108 isub temp ,null 
+0x4eeb 020109 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x4eec 020110 rtn 
+:      020112 l2cap_proc_signal_connect_rsp_sdp:
+0x4eed 020113 copy timeup ,pdata 
+0x4eee 020114 store 2 ,mem_sdp_remote_cid 
+0x4eef 020115 fetch 1 ,mem_sdp_state 
+0x4ef0 020116 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef1 020117 store 1 ,mem_sdp_state 
+0x4ef2 020118 branch l2cap_process_one_signal_rtn 
+:      020119 l2cap_proc_signal_connect_rsp_rfcomm:
+0x4ef3 020120 copy timeup ,pdata 
+0x4ef4 020121 store 2 ,mem_rfcomm_remote_cid 
+0x4ef5 020122 fetch 1 ,mem_rfcomm_state 
+0x4ef6 020123 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef7 020124 store 1 ,mem_rfcomm_state 
+0x4ef8 020125 rtn 
+:      020126 l2cap_proc_signal_connect_rsp_hid_int:
+0x4ef9 020127 copy timeup ,pdata 
+0x4efa 020128 store 2 ,mem_hid_ctrl_remote_cid 
+0x4efb 020129 fetch 1 ,mem_hid_interrupt_state 
+0x4efc 020130 set1 l2cap_channel_state_conn_res ,pdata 
+0x4efd 020131 store 1 ,mem_hid_interrupt_state 
+0x4efe 020132 rtn 
+:      020133 l2cap_proc_signal_connect_rsp_hid_ctrl:
+0x4eff 020134 copy timeup ,pdata 
+0x4f00 020135 store 2 ,mem_hid_int_remote_cid 
+0x4f01 020136 fetch 1 ,mem_hid_control_state 
+0x4f02 020137 set1 l2cap_channel_state_conn_res ,pdata 
+0x4f03 020138 store 1 ,mem_hid_control_state 
+0x4f04 020139 rtn 
+:      020141 l2cap_proc_signal_config_req:
+0x4f05 020142 ifetch 1 ,contr 
+0x4f06 020143 copy pdata ,queue 
+0x4f07 020144 ifetch 2 ,contr 
+0x4f08 020145 copy pdata ,rega 
+0x4f09 020146 copy regc ,pdata 
+0x4f0a 020147 isub rega ,regc 
+0x4f0b 020148 ifetch 2 ,contr 
+0x4f0c 020149 copy pdata ,temp 
+0x4f0d 020150 copy temp ,rega 
+0x4f0e 020151 bpatchx patch22_2 ,mem_patch22 
+0x4f0f 020152 setarg l2cap_sdp_channel 
+0x4f10 020153 isub temp ,null 
+0x4f11 020154 branch l2cap_proc_signal_config_req_sdp ,zero 
+0x4f12 020155 setarg l2cap_rfcomm_channel 
+0x4f13 020156 isub temp ,null 
+0x4f14 020157 branch l2cap_proc_signal_config_req_rfcomm ,zero 
+0x4f15 020158 setarg l2cap_hid_control_channel 
+0x4f16 020159 isub temp ,null 
+0x4f17 020160 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x4f18 020161 setarg l2cap_hid_interrupt_channel 
+0x4f19 020162 isub temp ,null 
+0x4f1a 020163 branch l2cap_proc_signal_config_req_hid_int ,zero 
+0x4f1b 020164 branch l2cap_reject_command 
+:      020166 l2cap_proc_signal_config_req_sdp:
+0x4f1c 020167 copy contw ,timeup 
+0x4f1d 020168 fetch 1 ,mem_sdp_state 
+0x4f1e 020169 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f1f 020170 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f20 020172 store 1 ,mem_sdp_state 
+0x4f21 020173 copy timeup ,contw 
+0x4f22 020174 arg l2cap_sdp_channel ,timeup 
+0x4f23 020175 fetch 2 ,mem_sdp_remote_cid 
+0x4f24 020176 copy pdata ,temp 
+0x4f25 020177 branch l2cap_send_config_rsp 
+:      020178 l2cap_proc_signal_config_req_hid_ctrl:
+0x4f26 020179 copy contw ,timeup 
+0x4f27 020180 fetch 1 ,mem_hid_control_state 
+0x4f28 020181 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f29 020182 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f2a 020184 store 1 ,mem_hid_control_state 
+0x4f2b 020185 copy timeup ,contw 
+0x4f2c 020186 arg l2cap_hid_control_channel ,timeup 
+0x4f2d 020187 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f2e 020188 copy pdata ,temp 
+0x4f2f 020189 branch l2cap_send_config_rsp 
+:      020190 l2cap_proc_signal_config_req_hid_int:
+0x4f30 020191 copy contw ,timeup 
+0x4f31 020192 fetch 1 ,mem_hid_interrupt_state 
+0x4f32 020193 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f33 020194 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f34 020196 store 1 ,mem_hid_interrupt_state 
+0x4f35 020197 copy timeup ,contw 
+0x4f36 020198 arg l2cap_hid_interrupt_channel ,timeup 
+0x4f37 020199 fetch 2 ,mem_hid_int_remote_cid 
+0x4f38 020200 copy pdata ,temp 
+0x4f39 020201 branch l2cap_send_config_rsp 
+:      020202 l2cap_proc_signal_config_req_rfcomm:
+0x4f3a 020203 copy contw ,timeup 
+0x4f3b 020204 fetch 1 ,mem_rfcomm_state 
+0x4f3c 020205 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f3d 020206 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f3e 020208 store 1 ,mem_rfcomm_state 
+0x4f3f 020210 copy timeup ,contw 
+0x4f40 020211 arg l2cap_rfcomm_channel ,timeup 
+0x4f41 020212 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f42 020213 copy pdata ,temp 
+:      020214 l2cap_send_config_rsp:
+0x4f43 020215 bpatchx patch22_3 ,mem_patch22 
+0x4f44 020216 setarg signal_config_rsp 
+0x4f45 020217 istore 1 ,contw 
+0x4f46 020218 copy queue ,pdata 
+0x4f47 020219 istore 1 ,contw 
+0x4f48 020220 setarg 0x0006 
+0x4f49 020221 istore 2 ,contw 
+0x4f4a 020222 copy temp ,pdata 
+0x4f4b 020223 istore 2 ,contw 
+0x4f4c 020224 force 0x00 ,pdata 
+0x4f4d 020225 istore 2 ,contw 
+0x4f4e 020226 force l2cap_config_success ,pdata 
+0x4f4f 020227 istore 2 ,contw 
+0x4f50 020228 force 10 ,pdata 
+0x4f51 020229 iadd regb ,regb 
+0x4f52 020231 storet 2 ,mem_config_req_dest_cid 
+0x4f53 020232 copy queue ,pdata 
+0x4f54 020233 store 1 ,mem_config_identifier 
+0x4f55 020234 force l2cap_sdp_channel ,pdata 
+0x4f56 020235 icompare 0xff ,timeup 
+0x4f57 020236 branch l2cap_send_config_rsp_is_sdp ,true 
+0x4f58 020237 increase 1 ,pdata 
+:      020238 l2cap_send_config_rsp_is_sdp:
+0x4f59 020240 rtn 
+:      020241 l2cap_check_channel_state:
+0x4f5a 020242 disable user 
+0x4f5b 020243 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5c 020244 rtnbit0 l2cap_channel_state_conn_req ,pdata 
+0x4f5d 020245 rtnbit0 l2cap_channel_state_conn_res ,pdata 
+0x4f5e 020246 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5f 020247 copy contr ,contw 
+0x4f60 020248 increase -1 ,contw 
+0x4f61 020249 istore 1 ,contw 
+0x4f62 020250 enable user 
+0x4f63 020251 rtn 
+:      020252 l2cap_send_config_req:
+:      020253 l2cap_send_config_req_sdp:
+0x4f64 020254 fetch 1 ,mem_sdp_state 
+0x4f65 020255 call l2cap_check_channel_state 
+0x4f66 020256 nbranch l2cap_send_config_req_rfcomm ,user 
+0x4f67 020257 jam l2cap_sdp_channel ,mem_send_config_req 
+0x4f68 020258 fetch 2 ,mem_sdp_remote_cid 
+0x4f69 020259 store 2 ,mem_config_req_dest_cid 
+0x4f6a 020260 branch l2cap_generate_config_req 
+:      020261 l2cap_send_config_req_rfcomm:
+0x4f6b 020262 fetch 1 ,mem_rfcomm_state 
+0x4f6c 020263 call l2cap_check_channel_state 
+0x4f6d 020264 nbranch l2cap_send_config_req_hid_ctrl ,user 
+0x4f6e 020265 jam l2cap_rfcomm_channel ,mem_send_config_req 
+0x4f6f 020266 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f70 020267 store 2 ,mem_config_req_dest_cid 
+0x4f71 020268 branch l2cap_generate_config_req 
+:      020269 l2cap_send_config_req_hid_ctrl:
+0x4f72 020270 fetch 1 ,mem_hid_control_state 
+0x4f73 020271 call l2cap_check_channel_state 
+0x4f74 020272 nbranch l2cap_send_config_req_hid_int ,user 
+0x4f75 020273 jam l2cap_hid_control_channel ,mem_send_config_req 
+0x4f76 020274 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f77 020275 store 2 ,mem_config_req_dest_cid 
+0x4f78 020276 branch l2cap_generate_config_req 
+:      020277 l2cap_send_config_req_hid_int:
+0x4f79 020278 fetch 1 ,mem_hid_interrupt_state 
+0x4f7a 020279 call l2cap_check_channel_state 
+0x4f7b 020280 nrtn user 
+0x4f7c 020281 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
+0x4f7d 020282 fetch 2 ,mem_hid_int_remote_cid 
+0x4f7e 020283 store 2 ,mem_config_req_dest_cid 
+:      020286 l2cap_generate_config_req:
+0x4f7f 020287 bpatchx patch22_4 ,mem_patch22 
+0x4f80 020288 call l2cap_get_req_id 
+0x4f81 020289 call l2cap_malloc_signal_channel 
+0x4f82 020290 force 0 ,regb 
+0x4f83 020291 call l2cap_get_signal_tx_payload 
+0x4f84 020292 force signal_config_req ,pdata 
+0x4f85 020293 istore 1 ,contw 
+0x4f86 020294 fetch 1 ,mem_ml2cap_comm_id 
+0x4f87 020295 istore 1 ,contw 
+0x4f88 020296 setarg 0x0008 
+0x4f89 020297 istore 2 ,contw 
+0x4f8a 020298 fetch 2 ,mem_config_req_dest_cid 
+0x4f8b 020299 istore 2 ,contw 
+0x4f8c 020300 setarg 0x0000 
+0x4f8d 020301 istore 2 ,contw 
+0x4f8e 020302 force 1 ,pdata 
+0x4f8f 020303 istore 1 ,contw 
+0x4f90 020304 force 2 ,pdata 
+0x4f91 020305 istore 1 ,contw 
+0x4f92 020306 fetch 1 ,mem_send_config_req 
+0x4f93 020307 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
+0x4f94 020308 setarg l2cap_config_mtu_sdp 
+0x4f95 020309 istore 2 ,contw 
+0x4f96 020310 branch l2cap_generate_config_req_done 
+:      020311 l2cap_generate_config_req_rfcomm:
+0x4f97 020312 setarg l2cap_config_mtu_rfcomm 
+0x4f98 020313 istore 2 ,contw 
+:      020314 l2cap_generate_config_req_done:
+0x4f99 020315 arg 0x0c ,temp 
+0x4f9a 020316 storet 2 ,mem_l2cap_signal_tx_length 
+0x4f9b 020317 call l2cap_get_signal_tx_buff 
+0x4f9c 020318 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4f9d 020319 istore 2 ,contw 
+0x4f9e 020320 force l2cap_signal_channel ,pdata 
+0x4f9f 020321 istore 2 ,contw 
+0x4fa0 020322 jam 0 ,mem_send_config_req 
+:      020323 l2cap_proc_signal_config_req_rtn:
+0x4fa1 020324 branch l2cap_process_one_signal_rtn 
+:      020326 l2cap_proc_signal_config_rsp:
+0x4fa2 020327 increase 1 ,contr 
+0x4fa3 020328 ifetch 2 ,contr 
+0x4fa4 020329 copy pdata ,rega 
+0x4fa5 020330 copy regc ,pdata 
+0x4fa6 020331 isub rega ,regc 
+0x4fa7 020332 ifetch 2 ,contr 
+0x4fa8 020333 copy pdata ,rega 
+0x4fa9 020334 bpatchx patch22_5 ,mem_patch22 
+0x4faa 020335 setarg l2cap_sdp_channel 
+0x4fab 020336 isub rega ,null 
+0x4fac 020337 branch l2cap_proc_signal_config_rsp_sdp ,zero 
+0x4fad 020338 setarg l2cap_rfcomm_channel 
+0x4fae 020339 isub rega ,null 
+0x4faf 020340 branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x4fb0 020341 setarg l2cap_hid_control_channel 
+0x4fb1 020342 isub rega ,null 
+0x4fb2 020343 branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x4fb3 020344 setarg l2cap_hid_interrupt_channel 
+0x4fb4 020345 isub rega ,null 
+0x4fb5 020346 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
+0x4fb6 020347 increase 2 ,contr 
+0x4fb7 020348 ifetch 2 ,contr 
+0x4fb8 020349 iforce null 
+0x4fb9 020350 branch l2cap_process_one_signal_rtn 
+:      020351 l2cap_proc_signal_config_rsp_sdp:
+0x4fba 020352 fetch 1 ,mem_sdp_state 
+0x4fbb 020353 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fbc 020354 store 1 ,mem_sdp_state 
+0x4fbd 020355 branch l2cap_process_one_signal_rtn 
+:      020356 l2cap_proc_signal_config_rsp_rfcomm:
+0x4fbe 020357 fetch 1 ,mem_rfcomm_state 
+0x4fbf 020358 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc0 020359 store 1 ,mem_rfcomm_state 
+0x4fc1 020360 branch l2cap_process_one_signal_rtn 
+:      020361 l2cap_proc_signal_config_rsp_hid_ctrl:
+0x4fc2 020362 fetch 1 ,mem_hid_control_state 
+0x4fc3 020363 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc4 020364 store 1 ,mem_hid_control_state 
+0x4fc5 020365 branch l2cap_process_one_signal_rtn 
+:      020366 l2cap_proc_signal_config_rsp_hid_int:
+0x4fc6 020367 fetch 1 ,mem_hid_interrupt_state 
+0x4fc7 020368 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc8 020369 store 1 ,mem_hid_interrupt_state 
+0x4fc9 020370 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x4fca 020371 branch ui_ipc_send_event 
+:      020375 l2cap_proc_signal_disconnect_req:
+0x4fcb 020376 ifetch 1 ,contr 
+0x4fcc 020377 copy pdata ,queue 
+0x4fcd 020378 ifetch 2 ,contr 
+0x4fce 020379 copy pdata ,rega 
+0x4fcf 020380 copy regc ,pdata 
+0x4fd0 020381 isub rega ,regc 
+0x4fd1 020382 ifetch 2 ,contr 
+0x4fd2 020383 copy pdata ,rega 
+0x4fd3 020384 ifetch 2 ,contr 
+0x4fd4 020385 copy pdata ,timeup 
+0x4fd5 020386 copy rega ,temp 
+0x4fd6 020387 call save_cont_pointers 
+0x4fd7 020388 bpatchx patch22_6 ,mem_patch22 
+0x4fd8 020389 setarg l2cap_sdp_channel 
+0x4fd9 020390 isub temp ,null 
+0x4fda 020391 branch l2cap_proc_signal_disconnect_req_sdp ,zero 
+0x4fdb 020392 setarg l2cap_rfcomm_channel 
+0x4fdc 020393 isub temp ,null 
+0x4fdd 020394 branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
+0x4fde 020395 setarg l2cap_hid_control_channel 
+0x4fdf 020396 isub temp ,null 
+0x4fe0 020397 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
+0x4fe1 020398 setarg l2cap_hid_interrupt_channel 
+0x4fe2 020399 isub temp ,null 
+0x4fe3 020400 branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
+0x4fe4 020401 call l2cap_reject_command 
+0x4fe5 020402 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020403 l2cap_proc_signal_disconnect_req_hid_ctrl:
+0x4fe6 020404 copy timeup ,temp 
+0x4fe7 020405 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4fe8 020406 isub temp ,null 
+0x4fe9 020407 branch l2cap_disconnect_hid_control_now ,zero 
+0x4fea 020408 call l2cap_reject_command 
+0x4feb 020409 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020410 l2cap_proc_signal_disconnect_req_hid_int:
+0x4fec 020411 copy timeup ,temp 
+0x4fed 020412 fetch 2 ,mem_hid_int_remote_cid 
+0x4fee 020413 isub temp ,null 
+0x4fef 020414 branch l2cap_disconnect_hid_interrupt_now ,zero 
+0x4ff0 020415 call l2cap_reject_command 
+0x4ff1 020416 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020418 l2cap_proc_signal_disconnect_req_sdp:
+0x4ff2 020419 copy timeup ,temp 
+0x4ff3 020420 fetch 2 ,mem_sdp_remote_cid 
+0x4ff4 020421 isub temp ,null 
+0x4ff5 020422 branch l2cap_disconnect_sdp_now ,zero 
+0x4ff6 020423 call l2cap_reject_command 
+0x4ff7 020424 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020425 l2cap_disconnect_hid_control_now:
+0x4ff8 020426 call l2cap_reset_hid_ctrl_state 
+0x4ff9 020427 branch l2cap_send_disconnect_rsp_pkt 
+:      020428 l2cap_disconnect_hid_interrupt_now:
+0x4ffa 020429 call l2cap_reset_hid_int_state 
+0x4ffb 020430 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4ffc 020431 branch l2cap_send_disconnect_rsp_pkt ,blank 
+0x4ffd 020439 branch l2cap_send_disconnect_rsp_pkt 
+:      020441 l2cap_disconnect_sdp_now:
+0x4ffe 020442 call l2cap_reset_sdp_channel_state 
+0x4fff 020443 fetch 1 ,mem_upper_sm_ss 
+0x5000 020444 nbranch l2cap_send_disconnect_rsp_pkt ,blank 
+0x5001 020447 branch l2cap_send_disconnect_rsp_pkt 
+:      020448 l2cap_proc_signal_disconnect_req_rfcomm:
+0x5002 020449 copy timeup ,temp 
+0x5003 020450 fetch 2 ,mem_rfcomm_remote_cid 
+0x5004 020451 isub temp ,null 
+0x5005 020452 branch l2cap_disconnect_rfcomm_now ,zero 
+0x5006 020453 call l2cap_reject_command 
+0x5007 020454 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020455 l2cap_disconnect_rfcomm_now:
+0x5008 020456 call l2cap_reset_rfcomm_channel_state 
+0x5009 020457 branch l2cap_send_disconnect_rsp_pkt 
+:      020458 l2cap_send_disconnect_rsp_pkt:
+0x500a 020459 call load_cont_pointers 
+0x500b 020460 setarg signal_disconnect_rsp 
+0x500c 020461 istore 1 ,contw 
+0x500d 020462 copy queue ,pdata 
+0x500e 020463 istore 1 ,contw 
+0x500f 020464 setarg 0x0004 
+0x5010 020465 istore 2 ,contw 
+0x5011 020466 copy rega ,pdata 
+0x5012 020467 istore 2 ,contw 
+0x5013 020468 copy timeup ,pdata 
+0x5014 020469 istore 2 ,contw 
+0x5015 020470 force 8 ,pdata 
+0x5016 020471 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020472 l2cap_proc_signal_disconnect_req_err_rtn:
+0x5017 020473 call load_cont_pointers 
+0x5018 020474 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020475 l2cap_proc_signal_disconnect_req_rtn:
+0x5019 020476 iadd regb ,regb 
+0x501a 020477 branch l2cap_process_one_signal_rtn 
+:      020478 l2cap_proc_signal_disconnect_rsp:
+0x501b 020479 ifetch 1 ,contr 
+0x501c 020480 copy pdata ,queue 
+0x501d 020481 ifetch 2 ,contr 
+0x501e 020482 copy pdata ,rega 
+0x501f 020483 copy regc ,pdata 
+0x5020 020484 isub rega ,regc 
+0x5021 020485 ifetch 2 ,contr 
+0x5022 020486 copy pdata ,timeup 
+0x5023 020487 ifetch 2 ,contr 
+0x5024 020488 copy pdata ,temp 
+0x5025 020489 call save_cont_pointers 
+0x5026 020490 bpatchx patch22_7 ,mem_patch22 
+0x5027 020491 setarg l2cap_sdp_channel 
+0x5028 020492 isub temp ,null 
+0x5029 020493 branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
+0x502a 020494 setarg l2cap_rfcomm_channel 
+0x502b 020495 isub temp ,null 
+0x502c 020496 branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
+0x502d 020497 setarg l2cap_hid_control_channel 
+0x502e 020498 isub temp ,null 
+0x502f 020499 branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
+0x5030 020500 setarg l2cap_hid_interrupt_channel 
+0x5031 020501 isub temp ,null 
+0x5032 020502 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
+0x5033 020503 call l2cap_reject_command 
+0x5034 020504 branch l2cap_proc_signal_disconnect_rsp_err_rtn 
+:      020505 l2cap_proc_signal_disconnect_rsp_sdp:
+0x5035 020506 copy temp ,rega 
+0x5036 020507 copy timeup ,temp 
+0x5037 020508 fetch 2 ,mem_sdp_remote_cid 
+0x5038 020509 isub temp ,null 
+0x5039 020510 call l2cap_reset_sdp_channel_state ,zero 
+0x503a 020511 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020512 l2cap_proc_signal_disconnect_rsp_rfcomm:
+0x503b 020513 copy temp ,rega 
+0x503c 020514 copy timeup ,temp 
+0x503d 020515 fetch 2 ,mem_rfcomm_remote_cid 
+0x503e 020516 isub temp ,null 
+0x503f 020517 call l2cap_reset_rfcomm_channel_state ,zero 
+0x5040 020518 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020519 l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+0x5041 020520 copy temp ,rega 
+0x5042 020521 copy timeup ,temp 
+0x5043 020522 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5044 020523 isub temp ,null 
+0x5045 020524 call l2cap_reset_hid_ctrl_state ,zero 
+0x5046 020525 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020526 l2cap_proc_signal_disconnect_rsp_hid_int:
+0x5047 020527 copy temp ,rega 
+0x5048 020528 copy timeup ,temp 
+0x5049 020529 fetch 2 ,mem_hid_int_remote_cid 
+0x504a 020530 isub temp ,null 
+0x504b 020531 call l2cap_reset_hid_int_state ,zero 
+0x504c 020532 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020533 l2cap_proc_signal_disconnect_rsp_rtn:
+0x504d 020534 call load_cont_pointers 
+0x504e 020535 branch l2cap_process_one_signal_rtn 
+:      020536 l2cap_proc_signal_disconnect_rsp_err_rtn:
+0x504f 020537 branch l2cap_process_one_signal_rtn 
+:      020540 l2cap_proc_signal_echo_req:
+0x5050 020541 ifetch 1 ,contr 
+0x5051 020542 copy pdata ,queue 
+0x5052 020543 ifetch 2 ,contr 
+0x5053 020544 copy pdata ,rega 
+0x5054 020545 iadd contr ,contr 
+0x5055 020546 setarg 9 
+0x5056 020547 istore 1 ,contw 
+0x5057 020548 copy queue ,pdata 
+0x5058 020549 istore 1 ,contw 
+0x5059 020550 force 0x0000 ,pdata 
+0x505a 020551 istore 2 ,contw 
+0x505b 020552 force 4 ,pdata 
+0x505c 020553 iadd regb ,regb 
+0x505d 020554 copy regc ,pdata 
+0x505e 020555 isub rega ,regc 
+0x505f 020556 branch l2cap_process_one_signal_rtn 
+:      020557 l2cap_proc_signal_echo_rsp:
+0x5060 020558 branch l2cap_process_one_signal_rtn 
+:      020560 l2cap_proc_signal_info_rsp:
+0x5061 020561 branch l2cap_process_one_signal_rtn 
+:      020562 l2cap_reject_command:
+0x5062 020563 force 0 ,regb 
+0x5063 020564 call l2cap_get_signal_tx_payload 
+0x5064 020565 setarg signal_cmd_reject 
+0x5065 020566 istore 1 ,contw 
+0x5066 020567 copy queue ,pdata 
+0x5067 020568 istore 1 ,contw 
+0x5068 020569 setarg 2 
+0x5069 020570 istore 2 ,contw 
+0x506a 020571 setarg cmd_not_understood 
+0x506b 020572 istore 2 ,contw 
+0x506c 020573 increase 6 ,regb 
+0x506d 020574 arg 4 ,regc 
+0x506e 020575 branch l2cap_process_one_signal_rtn 
+:      020579 l2cap_reset_rfcomm_channel_state:
+0x506f 020580 setarg 0 
+0x5070 020581 store 2 ,mem_rfcomm_tx_pkt_length 
+0x5071 020582 store 2 ,mem_rfcomm_remote_cid 
+0x5072 020583 jam 0 ,mem_rfcomm_state 
+0x5073 020584 rtn 
+:      020585 l2cap_reset_sdp_channel_state:
+0x5074 020586 setarg 0 
+0x5075 020587 store 2 ,mem_sdp_tx_pkt_length 
+0x5076 020588 store 2 ,mem_sdp_remote_cid 
+0x5077 020589 jam 0 ,mem_sdp_state 
+0x5078 020590 rtn 
+:      020591 l2cap_reset_hid_ctrl_state:
+0x5079 020592 setarg 0 
+0x507a 020593 store 2 ,mem_hid_ctrl_remote_cid 
+0x507b 020594 jam 0 ,mem_hid_control_state 
+0x507c 020595 fetch 1 ,mem_hid_interrupt_state 
+0x507d 020596 beq 0 ,l2cap_reset_hid_disconnected 
+0x507e 020597 rtn 
+:      020599 l2cap_reset_hid_int_state:
+0x507f 020600 setarg 0 
+0x5080 020601 store 2 ,mem_hid_int_remote_cid 
+0x5081 020602 jam 0 ,mem_hid_interrupt_state 
+0x5082 020603 fetch 1 ,mem_hid_control_state 
+0x5083 020604 beq 0 ,l2cap_reset_hid_disconnected 
+0x5084 020605 rtn 
+:      020607 l2cap_reset_hid_disconnected:
+0x5085 020608 jam bt_evt_hid_disconnected ,mem_fifo_temp 
+0x5086 020609 branch ui_ipc_send_event 
+:      020611 l2cap_disconnect_interrupt_req:
+0x5087 020612 fetch 1 ,mem_control_tasks 
+0x5088 020613 set0 l2cap_disconnect_interrupt ,pdata 
+0x5089 020614 store 1 ,mem_control_tasks 
+0x508a 020615 fetch 2 ,mem_hid_int_remote_cid 
+0x508b 020616 rtn blank 
+0x508c 020617 call l2cap_malloc_signal_channel 
+0x508d 020618 fetch 2 ,mem_hid_int_remote_cid 
+0x508e 020619 copy pdata ,rega 
+0x508f 020620 force l2cap_hid_interrupt_channel ,regb 
+0x5090 020621 branch l2cap_generate_disconnect_req 
+:      020622 l2cap_disconnect_control_req:
+0x5091 020623 fetch 1 ,mem_control_tasks 
+0x5092 020624 set0 l2cap_disconnect_control ,pdata 
+0x5093 020625 store 1 ,mem_control_tasks 
+0x5094 020626 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5095 020627 rtn blank 
+0x5096 020628 call l2cap_malloc_signal_channel 
+0x5097 020629 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5098 020630 copy pdata ,rega 
+0x5099 020631 force l2cap_hid_control_channel ,regb 
+:      020632 l2cap_generate_disconnect_req:
+0x509a 020633 call l2cap_get_req_id 
+0x509b 020634 call l2cap_get_signal_tx_payload 
+0x509c 020635 force signal_disconnect_req ,pdata 
+0x509d 020636 istore 1 ,contw 
+0x509e 020637 fetch 1 ,mem_ml2cap_comm_id 
+0x509f 020638 istore 1 ,contw 
+0x50a0 020639 setarg 0x0004 
+0x50a1 020640 istore 2 ,contw 
+0x50a2 020641 copy rega ,pdata 
+0x50a3 020642 istore 2 ,contw 
+0x50a4 020643 copy regb ,pdata 
+0x50a5 020644 istore 2 ,contw 
+0x50a6 020645 force 0x08 ,temp 
+0x50a7 020646 branch ml2cap_send_signal 
+:      020648 ml2cap_send_signal_connect_req:
+0x50a8 020649 bpatchx patch23_0 ,mem_patch23 
+0x50a9 020650 call l2cap_get_req_id 
+0x50aa 020651 call l2cap_get_signal_tx_payload 
+0x50ab 020652 setarg signal_connect_req 
+0x50ac 020653 istore 1 ,contw 
+0x50ad 020654 fetch 1 ,mem_ml2cap_comm_id 
+0x50ae 020655 istore 1 ,contw 
+0x50af 020656 setarg 0x0004 
+0x50b0 020657 istore 2 ,contw 
+0x50b1 020658 copy temp ,pdata 
+0x50b2 020659 istore 2 ,contw 
+0x50b3 020660 copy timeup ,pdata 
+0x50b4 020661 istore 2 ,contw 
+0x50b5 020662 arg 8 ,temp 
+0x50b6 020663 branch ml2cap_send_signal 
+:      020664 ml2cap_send_signal_config_req:
+0x50b7 020665 bpatchx patch23_1 ,mem_patch23 
+0x50b8 020666 call l2cap_get_req_id 
+0x50b9 020667 call l2cap_get_signal_tx_payload 
+0x50ba 020668 setarg signal_config_req 
+0x50bb 020669 istore 1 ,contw 
+0x50bc 020670 fetch 1 ,mem_ml2cap_comm_id 
+0x50bd 020671 istore 1 ,contw 
+0x50be 020672 setarg 0x0008 
+0x50bf 020673 istore 2 ,contw 
+0x50c0 020675 copy temp ,pdata 
+0x50c1 020677 istore 2 ,contw 
+0x50c2 020678 setarg 0x0000 
+0x50c3 020679 istore 2 ,contw 
+0x50c4 020680 setarg 0x01 
+0x50c5 020681 istore 1 ,contw 
+0x50c6 020682 setarg 0x02 
+0x50c7 020683 istore 1 ,contw 
+0x50c8 020684 setarg l2cap_config_mtu_rfcomm 
+0x50c9 020685 istore 2 ,contw 
+0x50ca 020686 arg 0xc ,temp 
+0x50cb 020687 branch ml2cap_send_signal 
+:      020688 ml2cap_send_signal_disconn_req:
+0x50cc 020689 bpatchx patch23_2 ,mem_patch23 
+0x50cd 020690 call l2cap_get_req_id 
+0x50ce 020691 call l2cap_get_signal_tx_payload 
+0x50cf 020692 setarg signal_disconnect_req 
+0x50d0 020693 istore 1 ,contw 
+0x50d1 020694 fetch 1 ,mem_ml2cap_comm_id 
+0x50d2 020695 increase 1 ,pdata 
+0x50d3 020696 copy contw ,rega 
+0x50d4 020697 store 1 ,mem_ml2cap_comm_id 
+0x50d5 020698 copy rega ,contw 
+0x50d6 020699 istore 1 ,contw 
+0x50d7 020700 setarg 0x0004 
+0x50d8 020701 istore 2 ,contw 
+0x50d9 020702 copy temp ,pdata 
+0x50da 020703 istore 2 ,contw 
+0x50db 020704 copy timeup ,pdata 
+0x50dc 020705 istore 2 ,contw 
+0x50dd 020706 arg 0x8 ,temp 
+:      020709 ml2cap_send_signal:
+0x50de 020710 storet 2 ,mem_l2cap_signal_tx_length 
+0x50df 020711 copy temp ,pdata 
+0x50e0 020712 branch l2cap_malloc_discard ,blank 
+0x50e1 020713 call l2cap_get_signal_tx_buff 
+0x50e2 020714 fetch 2 ,mem_l2cap_signal_tx_length 
+0x50e3 020715 istore 2 ,contw 
+0x50e4 020716 force l2cap_signal_channel ,pdata 
+0x50e5 020717 istore 2 ,contw 
+0x50e6 020718 rtn 
+:      020720 msdp_send_req_done:
+0x50e7 020721 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50e8 020722 branch assert ,blank 
+0x50e9 020723 call l2cap_get_sdp_tx_buff 
+0x50ea 020724 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50eb 020725 istore 2 ,contw 
+0x50ec 020726 fetch 2 ,mem_sdp_remote_cid 
+0x50ed 020727 istore 2 ,contw 
+0x50ee 020728 rtn 
+:      020729 ml2cap_rx_multiplexing:
+0x50ef 020730 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50f0 020731 branch l2cap_rx_reset_state ,blank 
+0x50f1 020732 bpatchx patch23_3 ,mem_patch23 
+0x50f2 020733 fetch 1 ,mem_l2cap_rx_cid 
+0x50f3 020734 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
+0x50f4 020735 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
+0x50f5 020736 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x50f6 020737 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x50f7 020738 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x50f8 020739 branch l2cap_rx_reset_state 
+:      020741 ml2cap_call_proc_signal:
+0x50f9 020742 bpatchx patch23_4 ,mem_patch23 
+0x50fa 020743 call l2cap_malloc_signal_channel 
+0x50fb 020744 force 0 ,regb 
+0x50fc 020745 call l2cap_get_signal_tx_payload 
+0x50fd 020746 copy pdata ,contw 
+0x50fe 020747 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50ff 020748 copy pdata ,regc 
+0x5100 020749 fetch 2 ,mem_l2cap_payload_ptr 
+0x5101 020750 iforce contr 
+:      020751 ml2cap_proc_one_comm_loop:
+0x5102 020752 call ml2cap_proc_one_comm 
+0x5103 020753 increase -4 ,regc 
+0x5104 020754 nbranch ml2cap_proc_one_comm_loop ,zero 
+0x5105 020755 copy regb ,temp 
+0x5106 020756 call ml2cap_send_signal 
+0x5107 020757 branch l2cap_rx_reset_state 
+:      020759 ml2cap_proc_one_comm:
+0x5108 020760 ifetch 1 ,contr 
+0x5109 020761 beq signal_connect_req ,ml2cap_proc_signal_connect_req 
+0x510a 020762 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
+0x510b 020763 beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
+0x510c 020764 beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
+0x510d 020765 beq signal_config_req ,ml2cap_proc_signal_config_req 
+0x510e 020766 beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
+0x510f 020767 beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
+0x5110 020768 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x5111 020769 beq signal_info_req ,ml2cap_proc_signal_info_req 
+0x5112 020770 branch ml2cap_proc_send_reject 
+:      020772 ml2cap_proc_signal_connect_req:
+0x5113 020773 call save_cont_pointers 
+0x5114 020775 call load_cont_pointers 
+0x5115 020776 branch l2cap_proc_signal_connect_req 
+:      020777 ml2cap_proc_signal_cmd_reject:
+0x5116 020778 ifetch 1 ,contr 
+0x5117 020779 copy pdata ,queue 
+0x5118 020780 ifetch 2 ,contr 
+0x5119 020781 copy pdata ,rega 
+0x511a 020782 copy regc ,pdata 
+0x511b 020783 isub rega ,regc 
+:      020784 mvptr:
+0x511c 020785 ifetch 1 ,contr 
+0x511d 020786 increase -1 ,rega 
+0x511e 020787 nbranch mvptr ,zero 
+0x511f 020788 rtn 
+:      020789 ml2cap_proc_signal_connect_rsp:
+0x5120 020790 ifetch 1 ,contr 
+0x5121 020791 copy pdata ,queue 
+0x5122 020792 ifetch 2 ,contr 
+0x5123 020793 copy pdata ,rega 
+0x5124 020794 ifetch 2 ,contr 
+0x5125 020795 copy pdata ,timeup 
+0x5126 020796 ifetch 2 ,contr 
+0x5127 020797 copy pdata ,temp 
+0x5128 020798 ifetch 2 ,contr 
+0x5129 020799 sub pdata ,0 ,null 
+0x512a 020800 branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
+0x512b 020801 beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
+0x512c 020802 beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
+0x512d 020803 branch ml2cap_proc_signal_connect_rsp_mnosucc 
+:      020804 ml2cap_proc_signal_connect_refused_result:
+0x512e 020805 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
+0x512f 020806 call ui_ipc_send_event 
+:      020807 ml2cap_proc_signal_connect_rsp_mnosucc:
+0x5130 020808 ifetch 2 ,contr 
+0x5131 020809 branch mnosucc 
+:      020810 ml2cap_proc_signal_connect_rsp_sucessful:
+0x5132 020811 call save_cont_pointers 
+0x5133 020815 bpatchx patch23_5 ,mem_patch23 
+0x5134 020816 setarg l2cap_sdp_channel 
+0x5135 020817 isub temp ,null 
+0x5136 020818 branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
+0x5137 020819 setarg l2cap_rfcomm_channel 
+0x5138 020820 isub temp ,null 
+0x5139 020821 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x513a 020822 setarg l2cap_hid_interrupt_channel 
+0x513b 020823 isub temp ,null 
+0x513c 020824 branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x513d 020825 setarg l2cap_hid_control_channel 
+0x513e 020826 isub temp ,null 
+0x513f 020827 branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x5140 020828 branch mnosucc 
+:      020829 ml2cap_proc_signal_connect_rsp_sdp:
+0x5141 020830 copy timeup ,pdata 
+0x5142 020831 store 2 ,mem_sdp_remote_cid 
+0x5143 020832 fetch 1 ,mem_sdp_state 
+0x5144 020833 set1 l2cap_channel_state_conn_res 
+0x5145 020834 store 1 ,mem_sdp_state 
+0x5146 020835 branch mnosucc1 
+:      020836 ml2cap_proc_signal_connect_rsp_rfcomm:
+0x5147 020837 copy timeup ,pdata 
+0x5148 020838 store 2 ,mem_rfcomm_remote_cid 
+0x5149 020839 fetch 1 ,mem_rfcomm_state 
+0x514a 020840 set1 l2cap_channel_state_conn_res 
+0x514b 020841 store 1 ,mem_rfcomm_state 
+0x514c 020842 branch mnosucc1 
+:      020843 ml2cap_proc_signal_connect_rsp_hid_ctrl:
+0x514d 020844 copy timeup ,pdata 
+0x514e 020845 store 2 ,mem_hid_ctrl_remote_cid 
+0x514f 020846 fetch 1 ,mem_hid_control_state 
+0x5150 020847 set1 l2cap_channel_state_conn_res 
+0x5151 020848 store 1 ,mem_hid_control_state 
+0x5152 020849 branch mnosucc1 
+:      020850 ml2cap_proc_signal_connect_rsp_hid_int:
+0x5153 020851 copy timeup ,pdata 
+0x5154 020852 store 2 ,mem_hid_int_remote_cid 
+0x5155 020853 fetch 1 ,mem_hid_interrupt_state 
+0x5156 020854 set1 l2cap_channel_state_conn_res 
+0x5157 020855 store 1 ,mem_hid_interrupt_state 
+:      020858 mnosucc1:
+0x5158 020859 call load_cont_pointers 
+:      020860 mnosucc:
+0x5159 020861 copy regc ,pdata 
+0x515a 020862 isub rega ,regc 
+0x515b 020863 rtn 
+:      020865 ml2cap_proc_signal_config_rsp:
+0x515c 020866 ifetch 1 ,contr 
+0x515d 020867 copy pdata ,queue 
+0x515e 020868 ifetch 2 ,contr 
+0x515f 020869 copy pdata ,rega 
+0x5160 020870 copy regc ,pdata 
+0x5161 020871 isub rega ,regc 
+0x5162 020872 ifetch 2 ,contr 
+0x5163 020873 copy pdata ,timeup 
+0x5164 020874 ifetch 2 ,contr 
+0x5165 020875 ifetch 2 ,contr 
+0x5166 020876 nbranch mcrsdone1 ,blank 
+0x5167 020877 call save_cont_pointers 
+0x5168 020881 copy timeup ,temp 
+0x5169 020882 bpatchx patch23_6 ,mem_patch23 
+0x516a 020883 setarg l2cap_sdp_channel 
+0x516b 020884 isub temp ,null 
+0x516c 020885 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
+0x516d 020886 setarg l2cap_rfcomm_channel 
+0x516e 020887 isub temp ,null 
+0x516f 020888 branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x5170 020889 setarg l2cap_hid_control_channel 
+0x5171 020890 isub temp ,null 
+0x5172 020891 branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x5173 020892 setarg l2cap_hid_interrupt_channel 
+0x5174 020893 isub temp ,null 
+0x5175 020894 branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
+:      020895 ml2cap_proc_signal_config_rsp_sdp:
+0x5176 020896 fetch 1 ,mem_sdp_state 
+0x5177 020897 set1 l2cap_channel_state_rcv_cfg_res 
+0x5178 020898 store 1 ,mem_sdp_state 
+0x5179 020899 rtn 
+:      020900 ml2cap_proc_signal_config_rsp_rfcomm:
+0x517a 020901 fetch 1 ,mem_rfcomm_state 
+0x517b 020902 set1 l2cap_channel_state_rcv_cfg_res 
+0x517c 020903 store 1 ,mem_rfcomm_state 
+0x517d 020904 rtn 
+:      020905 ml2cap_proc_signal_config_rsp_hid_ctrl:
+0x517e 020906 fetch 1 ,mem_hid_control_state 
+0x517f 020907 set1 l2cap_channel_state_rcv_cfg_res 
+0x5180 020908 store 1 ,mem_hid_control_state 
+0x5181 020909 rtn 
+:      020910 ml2cap_proc_signal_config_rsp_hid_int:
+0x5182 020911 fetch 1 ,mem_hid_interrupt_state 
+0x5183 020912 set1 l2cap_channel_state_rcv_cfg_res 
+0x5184 020913 store 1 ,mem_hid_interrupt_state 
+0x5185 020914 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x5186 020915 branch ui_ipc_send_event 
+:      020918 mcfrsdone:
+0x5187 020919 call load_cont_pointers 
+:      020920 mcrsdone1:
+0x5188 020921 increase -6 ,rega 
+:      020922 mloop2:
+0x5189 020923 branch mcrsdone ,zero 
+0x518a 020924 increase 1 ,contr 
+0x518b 020925 increase -1 ,rega 
+0x518c 020926 branch mloop2 
+:      020927 mcrsdone:
+0x518d 020928 rtn 
+:      020929 ml2cap_proc_signal_config_req:
+0x518e 020930 ifetch 1 ,contr 
+0x518f 020931 copy pdata ,queue 
+0x5190 020932 ifetch 2 ,contr 
+0x5191 020933 copy pdata ,rega 
+0x5192 020934 copy regc ,pdata 
+0x5193 020935 isub rega ,regc 
+0x5194 020936 ifetch 2 ,contr 
+0x5195 020937 increase 2 ,contr 
+0x5196 020938 copy pdata ,temp 
+0x5197 020939 setarg signal_config_rsp 
+0x5198 020940 istore 1 ,contw 
+0x5199 020941 copy queue ,pdata 
+0x519a 020942 istore 1 ,contw 
+0x519b 020943 increase 2 ,rega 
+0x519c 020944 copy rega ,pdata 
+0x519d 020945 istore 2 ,contw 
+0x519e 020946 call save_cont_pointers 
+0x519f 020947 bpatchx patch23_7 ,mem_patch23 
+0x51a0 020948 setarg l2cap_sdp_channel 
+0x51a1 020949 isub temp ,null 
+0x51a2 020950 branch ml2cap_proc_signal_config_req_sdp ,zero 
+0x51a3 020951 setarg l2cap_rfcomm_channel 
+0x51a4 020952 isub temp ,null 
+0x51a5 020953 branch ml2cap_proc_signal_config_req_rfcomm ,zero 
+0x51a6 020954 setarg l2cap_hid_control_channel 
+0x51a7 020955 isub temp ,null 
+0x51a8 020956 branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x51a9 020957 setarg l2cap_hid_interrupt_channel 
+0x51aa 020958 isub temp ,null 
+0x51ab 020959 branch ml2cap_proc_signal_config_req_hid_int ,zero 
+0x51ac 020960 branch mcfgrq_done 
+:      020961 ml2cap_proc_signal_config_req_sdp:
+0x51ad 020962 fetch 1 ,mem_sdp_state 
+0x51ae 020963 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51af 020964 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51b0 020965 store 1 ,mem_sdp_state 
+0x51b1 020966 bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
+0x51b2 020967 fetcht 1 ,mem_control_tasks 
+0x51b3 020968 set1 l2cap_init_config_req ,temp 
+0x51b4 020969 storet 1 ,mem_control_tasks 
+0x51b5 020970 copy queue ,pdata 
+0x51b6 020971 increase 1 ,pdata 
+0x51b7 020972 store 1 ,mem_config_identifier 
+0x51b8 020973 fetch 1 ,mem_sdp_state 
+0x51b9 020974 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x51ba 020975 store 1 ,mem_sdp_state 
+:      020976 ml2cap_proc_signal_config_req_sdp_nsndreq:
+0x51bb 020977 fetch 2 ,mem_sdp_remote_cid 
+0x51bc 020978 store 2 ,mem_config_req_dest_cid 
+0x51bd 020979 branch mcfgrq_done 
+:      020980 ml2cap_proc_signal_config_req_rfcomm:
+0x51be 020981 fetch 1 ,mem_rfcomm_state 
+0x51bf 020982 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c0 020983 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c1 020984 store 1 ,mem_rfcomm_state 
+0x51c2 020985 fetch 2 ,mem_rfcomm_remote_cid 
+0x51c3 020986 branch mcfgrq_done 
+:      020987 ml2cap_proc_signal_config_req_hid_ctrl:
+0x51c4 020988 fetch 1 ,mem_hid_control_state 
+0x51c5 020989 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c6 020990 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c7 020991 store 1 ,mem_hid_control_state 
+0x51c8 020992 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x51c9 020993 branch mcfgrq_done 
+:      020994 ml2cap_proc_signal_config_req_hid_int:
+0x51ca 020995 fetch 1 ,mem_hid_interrupt_state 
+0x51cb 020996 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51cc 020997 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51cd 020998 store 1 ,mem_hid_interrupt_state 
+0x51ce 020999 fetch 2 ,mem_hid_int_remote_cid 
+:      021002 mcfgrq_done:
+0x51cf 021003 copy pdata ,timeup 
+0x51d0 021004 call load_cont_pointers 
+0x51d1 021006 copy timeup ,pdata 
+0x51d2 021008 istore 2 ,contw 
+0x51d3 021009 force 0x0000 ,pdata 
+0x51d4 021010 istore 2 ,contw 
+0x51d5 021011 force 0x0000 ,pdata 
+0x51d6 021012 istore 2 ,contw 
+0x51d7 021013 force 10 ,pdata 
+0x51d8 021014 iadd regb ,regb 
+0x51d9 021015 increase -6 ,rega 
+:      021016 mloop1:
+0x51da 021017 branch mcrqdone ,zero 
+0x51db 021018 ifetch 1 ,contr 
+0x51dc 021019 istore 1 ,contw 
+0x51dd 021020 increase 1 ,regb 
+0x51de 021021 increase -1 ,rega 
+0x51df 021022 branch mloop1 
+:      021023 mcrqdone:
+0x51e0 021024 rtn 
+:      021025 ml2cap_proc_signal_disconn_req:
+0x51e1 021026 ifetch 1 ,contr 
+0x51e2 021027 copy pdata ,queue 
+0x51e3 021028 ifetch 2 ,contr 
+0x51e4 021029 copy pdata ,rega 
+0x51e5 021030 copy regc ,pdata 
+0x51e6 021031 isub rega ,regc 
+0x51e7 021033 ifetch 2 ,contr 
+0x51e8 021034 copy pdata ,rega 
+0x51e9 021035 ifetch 2 ,contr 
+0x51ea 021036 copy pdata ,timeup 
+0x51eb 021037 call save_cont_pointers 
+0x51ec 021038 bpatchx patch24_0 ,mem_patch24 
+0x51ed 021039 setarg l2cap_sdp_channel 
+0x51ee 021040 copy rega ,temp 
+0x51ef 021041 isub temp ,null 
+0x51f0 021042 branch ml2cap_proc_signal_disconn_sdp ,zero 
+0x51f1 021043 setarg l2cap_hid_control_channel 
+0x51f2 021044 copy rega ,temp 
+0x51f3 021045 isub temp ,null 
+0x51f4 021046 branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
+0x51f5 021047 setarg l2cap_hid_interrupt_channel 
+0x51f6 021048 copy rega ,temp 
+0x51f7 021049 isub temp ,null 
+0x51f8 021050 branch ml2cap_proc_signal_disconn_hid_int ,zero 
+0x51f9 021051 branch mclsrfc 
+:      021052 ml2cap_proc_signal_disconn_sdp:
+0x51fa 021053 setarg 0x0000 
+0x51fb 021054 store 2 ,mem_sdp_tx_pkt_length 
+0x51fc 021055 store 2 ,mem_sdp_remote_cid 
+0x51fd 021056 store 1 ,mem_sdp_state 
+0x51fe 021057 branch mclssdp 
+:      021058 ml2cap_proc_signal_disconn_hid_ctrl:
+0x51ff 021059 call l2cap_reset_hid_ctrl_state 
+0x5200 021060 branch mclssdp 
+:      021061 ml2cap_proc_signal_disconn_hid_int:
+0x5201 021062 call l2cap_reset_hid_int_state 
+0x5202 021068 branch mclssdp 
+:      021069 mclsrfc:
+0x5203 021070 setarg 0x0000 
+0x5204 021071 store 2 ,mem_rfcomm_tx_pkt_length 
+:      021072 mclssdp:
+0x5205 021073 call load_cont_pointers 
+0x5206 021074 setarg signal_disconnect_rsp 
+0x5207 021075 istore 1 ,contw 
+0x5208 021076 copy queue ,pdata 
+0x5209 021077 istore 1 ,contw 
+0x520a 021078 setarg 0x0004 
+0x520b 021079 istore 2 ,contw 
+0x520c 021080 copy rega ,pdata 
+0x520d 021081 istore 2 ,contw 
+0x520e 021082 copy timeup ,pdata 
+0x520f 021083 istore 2 ,contw 
+0x5210 021084 force 8 ,pdata 
+0x5211 021085 iadd regb ,regb 
+0x5212 021086 rtn 
+:      021088 ml2cap_proc_signal_disconn_rsp:
+0x5213 021089 ifetch 1 ,contr 
+0x5214 021090 copy pdata ,queue 
+0x5215 021091 ifetch 2 ,contr 
+0x5216 021092 copy pdata ,rega 
+0x5217 021093 ifetch 2 ,contr 
+0x5218 021094 copy pdata ,timeup 
+0x5219 021095 ifetch 2 ,contr 
+0x521a 021096 copy pdata ,temp 
+0x521b 021097 call save_cont_pointers 
+0x521c 021098 bpatchx patch24_1 ,mem_patch24 
+0x521d 021099 fetch 1 ,mem_ml2cap_comm_id 
+0x521e 021100 icompare 0xff ,queue 
+0x521f 021101 nbranch mdisdone ,true 
+0x5220 021102 setarg l2cap_sdp_channel 
+0x5221 021103 isub temp ,null 
+0x5222 021104 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
+0x5223 021105 setarg l2cap_rfcomm_channel 
+0x5224 021106 isub temp ,null 
+0x5225 021107 branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
+0x5226 021108 branch mdisdone 
+:      021109 ml2cap_proc_signal_disconn_rsp_sdp:
+0x5227 021110 jam 0 ,mem_sdp_remote_cid 
+0x5228 021111 jam 0 ,mem_sdp_state 
+0x5229 021112 branch mdisdone 
+:      021113 ml2cap_proc_signal_disconn_rsp_rfcomm:
+:      021116 mdisdone:
+0x522a 021117 call load_cont_pointers 
+0x522b 021118 copy regc ,pdata 
+0x522c 021119 isub rega ,regc 
+0x522d 021120 rtn 
+:      021122 ml2cap_proc_send_reject:
+0x522e 021123 setarg signal_cmd_reject 
+0x522f 021124 istore 1 ,contw 
+0x5230 021125 ifetch 1 ,contr 
+0x5231 021126 istore 1 ,contw 
+0x5232 021127 setarg 0x0002 
+0x5233 021128 istore 2 ,contw 
+0x5234 021129 setarg 0x0000 
+0x5235 021130 istore 2 ,contw 
+0x5236 021131 setarg 0x0006 
+0x5237 021132 iadd regb ,regb 
+0x5238 021133 force 4 ,regc 
+0x5239 021134 rtn 
+:      021137 l2cap_get_req_id:
+0x523a 021138 fetch 1 ,mem_ml2cap_comm_id 
+0x523b 021139 increase 1 ,pdata 
+0x523c 021140 bne 0 ,l2cap_get_req_id_ok 
+0x523d 021141 increase 1 ,pdata 
+:      021142 l2cap_get_req_id_ok:
+0x523e 021143 store 1 ,mem_ml2cap_comm_id 
+0x523f 021144 rtn 
+:      021154 l2cap_malloc:
+0x5240 021155 bpatchx patch24_2 ,mem_patch24 
+0x5241 021156 arg 0 ,regb 
+0x5242 021157 call l2cap_malloc_is_fifo_full 
+0x5243 021158 nbranch assert ,blank 
+0x5244 021159 call l2cap_malloc_get_full_map 
+0x5245 021160 arg mem_tx_buff0 ,regb 
+0x5246 021161 arg 0 ,queue 
+:      021162 l2cap_malloc_loop:
+0x5247 021163 fetcht 1 ,mem_used_map 
+0x5248 021164 qisolate1 temp 
+0x5249 021165 branch l2cap_malloc_next ,true 
+0x524a 021166 call l2cap_malloc_enough 
+0x524b 021167 sub timeup ,0 ,null 
+0x524c 021168 branch l2cap_malloc_next ,positive 
+0x524d 021169 call l2cap_malloc_into_fifo 
+0x524e 021170 branch l2cap_malloc_rtn 
+:      021171 l2cap_malloc_next:
+0x524f 021172 increase 128 ,regb 
+0x5250 021173 increase 1 ,queue 
+0x5251 021174 setarg 8 
+0x5252 021175 isub queue ,null 
+0x5253 021176 branch l2cap_malloc_loop ,positive 
+0x5254 021177 arg 0 ,regb 
+:      021178 l2cap_malloc_rtn:
+0x5255 021179 copy regb ,pdata 
+0x5256 021180 branch assert ,blank 
+0x5257 021181 rtn 
+:      021189 l2cap_malloc_fifo_out:
+0x5258 021190 bpatchx patch24_3 ,mem_patch24 
+0x5259 021191 call l2cap_malloc_fifo_get_first_ptr 
+0x525a 021192 increase 1 ,contr 
+0x525b 021193 ifetch 2 ,contr 
+0x525c 021194 rtn 
+:      021200 l2cap_malloc_free:
+0x525d 021201 bpatchx patch24_4 ,mem_patch24 
+0x525e 021202 call l2cap_malloc_fifo_get_first_ptr 
+0x525f 021203 copy contr ,contw 
+0x5260 021204 copy contr ,temp 
+0x5261 021205 setarg 0 
+0x5262 021206 istore 3 ,contw 
+0x5263 021207 rtn 
+:      021212 l2cap_malloc_discard:
+0x5264 021213 bpatchx patch24_5 ,mem_patch24 
+0x5265 021214 call l2cap_malloc_is_fifo_empty 
+0x5266 021215 branch assert ,blank 
+0x5267 021216 fetch 3 ,mem_tx_fifo2 
+0x5268 021217 store 3 ,mem_tx_fifo3 
+0x5269 021218 fetch 3 ,mem_tx_fifo1 
+0x526a 021219 store 3 ,mem_tx_fifo2 
+0x526b 021220 fetch 3 ,mem_tx_fifo0 
+0x526c 021221 store 3 ,mem_tx_fifo1 
+0x526d 021222 rtn 
+:      021228 l2cap_malloc_is_fifo_full:
+0x526e 021229 bpatchx patch24_6 ,mem_patch24 
+0x526f 021230 fetch 3 ,mem_tx_fifo0 
+0x5270 021231 rtn 
+:      021237 l2cap_malloc_is_fifo_nearly_full:
+0x5271 021238 bpatchx patch24_7 ,mem_patch24 
+0x5272 021239 fetch 3 ,mem_tx_fifo1 
+0x5273 021240 rtn 
+:      021246 l2cap_malloc_is_fifo_empty:
+0x5274 021247 bpatchx patch25_0 ,mem_patch25 
+0x5275 021248 fetch 3 ,mem_tx_fifo3 
+0x5276 021249 rtn 
+:      021254 l2cap_malloc_fifo_get_first_ptr:
+0x5277 021255 call l2cap_malloc_is_fifo_empty 
+0x5278 021256 branch assert ,blank 
+0x5279 021257 arg mem_tx_fifo0 ,contr 
+:      021258 l2cap_malloc_free_loop:
+0x527a 021259 ifetch 3 ,contr 
+0x527b 021260 branch l2cap_malloc_free_loop ,blank 
+0x527c 021261 increase -3 ,contr 
+0x527d 021262 rtn 
+:      021269 l2cap_malloc_get_full_map:
+0x527e 021270 bpatchx patch25_1 ,mem_patch25 
+0x527f 021271 arg 4 ,loopcnt 
+0x5280 021272 arg mem_tx_fifo0_map ,contr 
+0x5281 021273 arg 0 ,temp 
+:      021274 l2cap_malloc_get_full_map_loop:
+0x5282 021275 ifetch 3 ,contr 
+0x5283 021276 and pdata ,0xff ,pdata 
+0x5284 021277 ior temp ,temp 
+0x5285 021278 loop l2cap_malloc_get_full_map_loop 
+0x5286 021279 storet 1 ,mem_used_map 
+0x5287 021280 rtn 
+:      021288 l2cap_malloc_into_fifo:
+0x5288 021289 bpatchx patch25_2 ,mem_patch25 
+0x5289 021290 call l2cap_malloc_is_fifo_full 
+0x528a 021291 nbranch assert ,blank 
+0x528b 021292 call l2cap_malloc_is_fifo_empty 
+0x528c 021293 branch l2cap_malloc_into_fifo_no_push ,blank 
+0x528d 021294 fetch 3 ,mem_tx_fifo1 
+0x528e 021295 store 3 ,mem_tx_fifo0 
+0x528f 021296 ifetch 3 ,contr 
+0x5290 021297 istore 3 ,contw 
+0x5291 021298 ifetch 3 ,contr 
+0x5292 021299 istore 3 ,contw 
+0x5293 021300 setarg 0 
+0x5294 021301 istore 3 ,contw 
+:      021302 l2cap_malloc_into_fifo_no_push:
+0x5295 021303 arg 0 ,temp 
+0x5296 021304 copy timeup ,pdata 
+0x5297 021305 iadd queue ,pdata 
+:      021306 l2cap_malloc_into_fifo_loop:
+0x5298 021307 qset1 temp 
+0x5299 021308 increase 1 ,queue 
+0x529a 021309 isub queue ,null 
+0x529b 021310 nbranch l2cap_malloc_into_fifo_loop ,zero 
+0x529c 021312 lshift8 regb ,pdata 
+0x529d 021313 ior temp ,pdata 
+0x529e 021314 store 3 ,mem_tx_fifo3 
+0x529f 021315 rtn 
+:      021325 l2cap_malloc_enough:
+0x52a0 021326 bpatchx patch25_3 ,mem_patch25 
+0x52a1 021327 call l2cap_malloc_get_full_map 
+0x52a2 021328 copy queue ,regc 
+0x52a3 021329 arg 0 ,temp 
+0x52a4 021330 arg 0 ,timeup 
+:      021332 l2cap_malloc_enough_loop:
+0x52a5 021333 copy queue ,pdata 
+0x52a6 021334 beq 8 ,l2cap_malloc_enough_end 
+0x52a7 021335 fetch 1 ,mem_used_map 
+0x52a8 021336 qisolate1 pdata 
+0x52a9 021337 branch l2cap_malloc_enough_end ,true 
+0x52aa 021338 increase 128 ,temp 
+0x52ab 021339 increase 1 ,queue 
+0x52ac 021340 copy rega ,pdata 
+0x52ad 021341 isub temp ,null 
+0x52ae 021342 branch l2cap_malloc_enough_end ,zero 
+0x52af 021343 branch l2cap_malloc_enough_loop ,positive 
+:      021344 l2cap_malloc_enough_end:
+0x52b0 021345 copy temp ,pdata 
+0x52b1 021346 isub rega ,null 
+0x52b2 021347 nbranch l2cap_malloc_enough_rtn ,positive 
+0x52b3 021348 copy queue ,pdata 
+0x52b4 021349 copy regc ,temp 
+0x52b5 021350 isub temp ,timeup 
+:      021351 l2cap_malloc_enough_rtn:
+0x52b6 021352 copy regc ,queue 
+0x52b7 021353 rtn 
+:      021356 l2cap_malloc_signal_channel:
+0x52b8 021357 bpatchx patch25_4 ,mem_patch25 
+0x52b9 021358 arg l2cap_signal_malloc_size ,rega 
+0x52ba 021359 call l2cap_malloc 
+0x52bb 021360 store 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52bc 021361 increase 4 ,pdata 
+0x52bd 021362 store 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52be 021363 setarg 0 
+0x52bf 021364 store 2 ,mem_l2cap_signal_tx_length 
+0x52c0 021365 rtn 
+:      021367 l2cap_get_signal_tx_buff:
+0x52c1 021368 fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52c2 021369 branch l2cap_util_pdata_to_contw 
+:      021371 l2cap_get_signal_tx_payload:
+0x52c3 021372 fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52c4 021373 branch l2cap_util_pdata_to_contw 
+:      021376 l2cap_malloc_sdp_channel:
+0x52c5 021377 bpatchx patch25_5 ,mem_patch25 
+0x52c6 021378 arg sdp_malloc_size ,rega 
+0x52c7 021379 call l2cap_malloc 
+0x52c8 021380 store 2 ,mem_sdp_tx_buff_ptr 
+0x52c9 021381 increase 4 ,pdata 
+0x52ca 021382 store 2 ,mem_sdp_tx_payload_ptr 
+0x52cb 021383 setarg 0 
+0x52cc 021384 store 2 ,mem_sdp_tx_pkt_length 
+0x52cd 021385 rtn 
+:      021387 l2cap_get_sdp_tx_buff:
+0x52ce 021388 fetch 2 ,mem_sdp_tx_buff_ptr 
+0x52cf 021389 branch l2cap_util_pdata_to_contw 
+:      021391 l2cap_get_sdp_tx_payload:
+0x52d0 021392 fetch 2 ,mem_sdp_tx_payload_ptr 
+0x52d1 021393 branch l2cap_util_pdata_to_contw 
+:      021396 l2cap_malloc_rfcomm_channel:
+0x52d2 021397 bpatchx patch25_6 ,mem_patch25 
+0x52d3 021398 call push_stack 
+0x52d4 021399 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
+0x52d5 021400 call l2cap_malloc_is_fifo_full 
+0x52d6 021401 nrtn blank 
+0x52d7 021402 arg rfcomm_malloc_size ,rega 
+0x52d8 021403 call l2cap_malloc 
+0x52d9 021404 store 2 ,mem_rfcomm_tx_buff_ptr 
+0x52da 021405 increase 4 ,pdata 
+0x52db 021406 store 2 ,mem_rfcomm_tx_payload_ptr 
+0x52dc 021407 setarg 0 
+0x52dd 021408 store 2 ,mem_rfcomm_tx_pkt_length 
+0x52de 021409 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x52df 021410 branch pop_stack 
+:      021412 l2cap_get_rfcomm_tx_buff:
+0x52e0 021413 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+0x52e1 021414 branch l2cap_util_pdata_to_contw 
+:      021416 l2cap_util_pdata_to_contw:
+0x52e2 021417 branch assert ,blank 
+0x52e3 021418 copy pdata ,contw 
+0x52e4 021419 rtn 
+:      021422 l2cap_lpm_save_calc_len:
+0x52e5 021423 bpatchx patch25_7 ,mem_patch25 
+0x52e6 021424 arg 0 ,regb 
+0x52e7 021425 arg mem_tx_fifo0_map ,rega 
+0x52e8 021426 increase -2 ,rega 
+:      021427 l2cap_lpm_save_calc_len_loop:
+0x52e9 021428 increase 2 ,rega 
+0x52ea 021429 setarg mem_tx_fifo_end 
+0x52eb 021430 isub rega ,null 
+0x52ec 021431 branch l2cap_lpm_save_calc_len_end ,zero 
+0x52ed 021432 ifetch 1 ,rega 
+0x52ee 021433 increase 1 ,rega 
+0x52ef 021434 branch l2cap_lpm_save_calc_len_loop ,blank 
+0x52f0 021435 ifetcht 2 ,rega 
+0x52f1 021436 ifetch 2 ,temp 
+0x52f2 021437 iadd regb ,regb 
+0x52f3 021438 increase 4 ,regb 
+0x52f4 021439 branch l2cap_lpm_save_calc_len_loop 
+:      021440 l2cap_lpm_save_calc_len_end:
+0x52f5 021441 copy regb ,pdata 
+0x52f6 021442 rtn 
+:      021445 l2cap_lpm_get_wake_lock:
+0x52f7 021446 arg wake_lock_l2cap_tx ,queue 
+0x52f8 021447 branch lpm_get_wake_lock 
+:      021449 l2cap_lpm_put_wake_lock:
+0x52f9 021450 arg wake_lock_l2cap_tx ,queue 
+0x52fa 021451 branch lpm_put_wake_lock 
+:      021453 l2cap_lpm_save_txbuf:
+0x52fb 021454 bpatchx patch26_0 ,mem_patch26 
+0x52fc 021455 call l2cap_malloc_get_full_map 
+0x52fd 021456 fetch 1 ,mem_used_map 
+0x52fe 021457 rtn blank 
+0x52ff 021458 call l2cap_lpm_save_calc_len 
+0x5300 021459 arg l2cap_lpm_txbuf_len ,temp 
+0x5301 021460 isub temp ,null 
+0x5302 021461 branch l2cap_lpm_get_wake_lock ,positive 
+0x5303 021462 call l2cap_lpm_put_wake_lock 
+0x5304 021463 arg mem_l2cap_lpm_txbuf ,contw 
+0x5305 021464 arg mem_tx_fifo0 ,rega 
+:      021465 l2cap_lpm_save_txbuf_loop:
+0x5306 021466 setarg mem_tx_fifo_end 
+0x5307 021467 isub rega ,null 
+0x5308 021468 rtn zero 
+0x5309 021469 ifetch 1 ,rega 
+0x530a 021470 increase 1 ,rega 
+0x530b 021471 nbranch l2cap_lpm_save_txbuf_nempty ,blank 
+0x530c 021472 istore 2 ,contw 
+0x530d 021473 increase 2 ,rega 
+0x530e 021474 branch l2cap_lpm_save_txbuf_loop 
+:      021475 l2cap_lpm_save_txbuf_nempty:
+0x530f 021476 ifetch 2 ,rega 
+0x5310 021477 increase 2 ,rega 
+0x5311 021478 copy pdata ,contr 
+0x5312 021479 ifetch 2 ,contr 
+0x5313 021480 istore 2 ,contw 
+0x5314 021481 copy pdata ,loopcnt 
+0x5315 021482 increase 2 ,loopcnt 
+0x5316 021483 call memcpy 
+0x5317 021484 branch l2cap_lpm_save_txbuf_loop 
+:      021486 l2cap_lpm_load_txbuf:
+0x5318 021487 bpatchx patch26_1 ,mem_patch26 
+0x5319 021488 call l2cap_malloc_get_full_map 
+0x531a 021489 fetch 1 ,mem_used_map 
+0x531b 021490 rtn blank 
+0x531c 021491 arg mem_tx_fifo0_ptr ,rega 
+0x531d 021492 increase -3 ,rega 
+0x531e 021493 arg mem_l2cap_lpm_txbuf ,contr 
+:      021494 l2cap_lpm_load_txbuf_loop:
+0x531f 021495 increase 3 ,rega 
+0x5320 021496 setarg mem_tx_fifo_end + 1 
+0x5321 021497 isub rega ,null 
+0x5322 021498 rtn zero 
+0x5323 021499 ifetch 2 ,contr 
+0x5324 021500 branch l2cap_lpm_load_txbuf_loop ,blank 
+0x5325 021501 increase 4 ,pdata 
+0x5326 021502 copy pdata ,loopcnt 
+0x5327 021503 copy contr ,regb 
+0x5328 021504 ifetch 2 ,rega 
+0x5329 021505 copy pdata ,contw 
+0x532a 021506 copy regb ,contr 
+0x532b 021507 increase -2 ,contr 
+0x532c 021508 call memcpy 
+0x532d 021509 branch l2cap_lpm_load_txbuf_loop 
+:      021519 le_init_conn:
+0x532e 021520 bpatchx patch26_2 ,mem_patch26 
+0x532f 021521 disable wake 
+0x5330 021522 jam 1 ,mem_le_conn_handle 
+0x5331 021523 jam 3 ,mem_le_state 
+0x5332 021524 jam 1 ,mem_le_arq 
+0x5333 021525 setarg -1 
+0x5334 021526 store 2 ,mem_le_event_count 
+0x5335 021527 force 0 ,pdata 
+0x5336 021528 store 1 ,mem_le_ch 
+0x5337 021529 store 1 ,mem_le_op 
+0x5338 021530 store 3 ,mem_sniff_rcv 
+0x5339 021531 store 3 ,mem_sniff_lost 
+0x533a 021532 store 5 ,mem_le_pcnt_tx 
+0x533b 021533 set1 39 ,pdata 
+0x533c 021534 store 5 ,mem_le_pcnt_rx 
+0x533d 021535 jam 1 ,mem_le_txheader 
+0x533e 021536 jam 0 ,mem_le_txlen 
+0x533f 021537 branch le_supervision_flush 
+:      021539 le_init_master:
+0x5340 021540 bpatchx patch26_3 ,mem_patch26 
+0x5341 021541 enable master 
+0x5342 021542 jam lemode_master ,mem_le_mode 
+0x5343 021543 jam 1 ,mem_le_att_handle 
+0x5344 021544 jam 1 ,mem_le_search_handle_start 
+0x5345 021545 setarg 0xffff 
+0x5346 021546 store 2 ,mem_le_search_handle_end 
+0x5347 021547 force 0 ,pdata 
+0x5348 021548 store 5 ,mem_le_pcnt_rx 
+0x5349 021549 set1 39 ,pdata 
+0x534a 021550 store 5 ,mem_le_pcnt_tx 
+0x534b 021551 branch le_init_conn 
+:      021554 le_init_slave:
+0x534c 021555 bpatchx patch26_4 ,mem_patch26 
+0x534d 021556 disable master 
+0x534e 021557 setarg 0x17 
+0x534f 021558 store 2 ,mem_le_remote_mtu 
+0x5350 021559 jam lemode_slave ,mem_le_mode 
+0x5351 021560 jam 0 ,mem_le_adv_enable 
+0x5352 021561 jam 0 ,mem_lpm_current_mult 
+0x5353 021562 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5354 021563 jam flag_le_enc_null ,mem_le_enc_state 
+0x5355 021564 fetch 2 ,mem_le_superto 
+0x5356 021565 store 2 ,mem_le_init_superto 
+0x5357 021566 fetch 2 ,mem_le_tsniff 
+0x5358 021567 mul32 pdata ,5 ,pdata 
+0x5359 021568 rshift4 pdata ,pdata 
+0x535a 021569 store 2 ,mem_le_superto 
+0x535b 021570 branch le_init_conn 
+:      021576 le_dispatch:
+0x535c 021577 call le_enable 
+0x535d 021578 call le_scan 
+0x535e 021579 call le_adv 
+0x535f 021580 branch le_disable 
+:      021582 le_conn_dispatch:
+0x5360 021583 bpatchx patch26_5 ,mem_patch26 
+0x5361 021584 call le_enable 
+0x5362 021585 call app_process_ble 
+0x5363 021586 fetch 1 ,mem_le_mode 
+0x5364 021587 beq lemode_master ,le_master_dispatch 
+0x5365 021588 branch le_slave_dispatch 
+:      021594 le_master_dispatch:
+0x5366 021595 bpatchx patch26_6 ,mem_patch26 
+0x5367 021596 enable master 
+0x5368 021597 call le_supervision_update 
+0x5369 021598 branch le_master_disconn ,positive 
+0x536a 021599 call check_ble_disabled 
+0x536b 021600 call le_setup 
+0x536c 021601 call le_prepare_tx 
+0x536d 021602 disable match 
+0x536e 021603 call le_transmit_receive_sifs 
+0x536f 021604 nrtn match 
+0x5370 021605 bpatchx patch26_7 ,mem_patch26 
+0x5371 021606 fetch 1 ,mem_le_conn_rcv 
+0x5372 021607 increase 1 ,pdata 
+0x5373 021608 store 1 ,mem_le_conn_rcv 
+0x5374 021609 call le_acknowledge 
+0x5375 021610 disable master 
+0x5376 021611 rtn 
+:      021613 le_master_disconn:
+0x5377 021614 call le_disconnect 
+0x5378 021615 disable master 
+0x5379 021616 rtn 
+:      021621 le_slave_dispatch:
+0x537a 021622 bpatchx patch27_0 ,mem_patch27 
+0x537b 021623 jam 0 ,mem_le_md_count 
+0x537c 021624 call sp_calc_sequence_256 
+0x537d 021625 call le_secure_connect_sm 
+0x537e 021626 disable attempt 
+0x537f 021627 call le_supervision_update 
+0x5380 021628 branch le_slave_disconn ,positive 
+0x5381 021629 call check_ble_disabled 
+0x5382 021630 call le_setup 
+0x5383 021631 call le_receive_slave 
+0x5384 021632 nbranch le_slave_unsync ,sync 
+0x5385 021633 call le_got_first_packet 
+0x5386 021634 branch le_slave_match ,match 
+0x5387 021635 branch le_slave_cont 
+:      021638 le_slave_match:
+0x5388 021639 bpatchx patch27_1 ,mem_patch27 
+0x5389 021640 fetch 1 ,mem_le_md_count 
+0x538a 021641 pincrease 1 
+0x538b 021642 store 1 ,mem_le_md_count 
+0x538c 021643 beq le_md_max_count ,le_slave_cont 
+0x538d 021644 call le_acknowledge 
+0x538e 021645 call le_prepare_tx 
+0x538f 021646 call le_transmit_norx 
+0x5390 021647 call le_parse 
+0x5391 021648 fetch 2 ,mem_cb_ble_transmit 
+0x5392 021649 call callback_func 
+0x5393 021650 call le_check_md 
+0x5394 021651 branch le_slave_more_data ,user 
+:      021652 le_slave_cont:
+0x5395 021653 bpatchx patch27_2 ,mem_patch27 
+0x5396 021654 call le_pairing_sm 
+0x5397 021655 call le_check_paring_time 
+0x5398 021656 call check_51cmd 
+0x5399 021657 fetch 1 ,mem_le_op 
+0x539a 021658 bbit1 op_disconn ,le_slave_disconn 
+:      021659 le_slave_unsync:
+0x539b 021660 bpatchx patch27_3 ,mem_patch27 
+0x539c 021661 call le_lpm_set_mult 
+0x539d 021662 call le_update_channel_map 
+0x539e 021663 call le_update_param 
+0x539f 021664 branch calc_clke_offset 
+:      021667 le_check_md:
+0x53a0 021668 disable user 
+0x53a1 021669 bmark1 mark_ble_rx_md ,enable_user 
+0x53a2 021670 bmark1 mark_ble_tx_md ,enable_user 
+0x53a3 021671 rtn 
+:      021674 le_slave_more_data:
+0x53a4 021675 bpatchx patch27_4 ,mem_patch27 
+0x53a5 021676 enable attempt 
+0x53a6 021677 call le_transmit_receive_sifs_notx 
+0x53a7 021678 branch le_slave_match ,match 
+0x53a8 021679 branch le_slave_cont 
+:      021681 le_slave_disconn:
+:      021684 le_disconnect:
+0x53a9 021685 bpatchx patch27_5 ,mem_patch27 
+0x53aa 021686 call le_clear_connection_info 
+0x53ab 021687 call app_disconn_reason_collect_ble 
+0x53ac 021688 call sp_initialize_256 
+0x53ad 021689 jam bt_evt_le_disconnected ,mem_fifo_temp 
+0x53ae 021690 branch ui_ipc_send_event 
+:      021692 le_clear_connection_info:
+0x53af 021693 setarg 0 
+0x53b0 021694 store 9 ,mem_le_tx_buff_used 
+0x53b1 021695 jam 0 ,mem_le_conn_handle 
+0x53b2 021696 jam lemode_idle ,mem_le_mode 
+0x53b3 021697 jam 0 ,mem_le_state 
+0x53b4 021698 jam flag_le_enc_null ,mem_le_enc_state 
+0x53b5 021699 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x53b6 021700 rtn 
+:      021702 le_got_first_packet:
+0x53b7 021703 bpatchx patch27_6 ,mem_patch27 
+0x53b8 021704 fetch 1 ,mem_le_conn_rcv 
+0x53b9 021705 increase 1 ,pdata 
+0x53ba 021706 store 1 ,mem_le_conn_rcv 
+0x53bb 021707 fetch 1 ,mem_le_state 
+0x53bc 021708 rtnbit1 lestate_got_first_packet 
+0x53bd 021709 set1 lestate_got_first_packet 
+0x53be 021710 store 1 ,mem_le_state 
+0x53bf 021711 fetch 2 ,mem_le_init_superto 
+0x53c0 021712 store 2 ,mem_le_superto 
+0x53c1 021713 setarg 0 
+0x53c2 021714 store 4 ,mem_le_transmit_window 
+0x53c3 021715 rtn 
+:      021718 le_enable:
+0x53c4 021719 bpatchx patch27_7 ,mem_patch27 
+0x53c5 021720 jam 0x36 ,rf_adc_goff 
+0x53c6 021721 jam 0x5f ,rf_agc_nsat 
+0x53c7 021722 enable le 
+0x53c8 021723 jam 7 ,rfen_ulp 
+0x53c9 021724 call check_ble_disabled 
+0x53ca 021725 fetch 1 ,mem_250k_freq_enable 
+0x53cb 021726 rtn blank 
+0x53cc 021727 jam 0xb8 ,rf_iq_gain 
+0x53cd 021728 rtn 
+:      021730 le_disable:
+0x53ce 021731 bpatchx patch28_0 ,mem_patch28 
+0x53cf 021732 jam 0x2e ,rf_adc_goff 
+0x53d0 021733 jam 0xff ,rf_agc_nsat 
+0x53d1 021734 disable le 
+0x53d2 021735 jam 3 ,rfen_ulp 
+0x53d3 021736 arg 0 ,stop_watch 
+0x53d4 021737 rtn 
+:      021739 le_prep:
+0x53d5 021740 disable enable_crc 
+0x53d6 021741 disable enable_white 
+0x53d7 021742 fetch 3 ,mem_le_crcinit 
+0x53d8 021743 iforce crc24_init 
+0x53d9 021744 fetch 1 ,mem_le_ch_mapped 
+0x53da 021745 reverse pdata ,temp 
+0x53db 021746 set1 1 ,temp 
+0x53dc 021747 rshift temp ,white_init 
+0x53dd 021748 rtn 
+:      021751 lerx_setfreq:
+0x53de 021752 call le_setfreq 
+0x53df 021753 call set_freq_rx 
+0x53e0 021754 setarg param_pll_setup 
+0x53e1 021755 call sleep 
+0x53e2 021756 branch rf_rx_enable 
+:      021758 letx_setfreq:
+0x53e3 021759 branch txon ,match 
+:      021760 letx_setfreq0:
+0x53e4 021761 call le_setfreq 
+0x53e5 021762 branch set_freq_tx 
+:      021763 le_setfreq:
+0x53e6 021764 bpatchx patch28_1 ,mem_patch28 
+0x53e7 021765 call set_sync_on 
+0x53e8 021766 fetch 1 ,mem_le_testtype 
+0x53e9 021767 nbranch le_ctf_test ,blank 
+0x53ea 021768 fetch 1 ,mem_le_ch_mapped 
+0x53eb 021769 sub pdata ,36 ,null 
+0x53ec 021770 branch le_ctf_normal ,positive 
+0x53ed 021771 force 0 ,temp 
+0x53ee 021772 rtneq 37 
+0x53ef 021773 force 24 ,temp 
+0x53f0 021774 rtneq 38 
+0x53f1 021775 force 78 ,temp 
+0x53f2 021776 rtn 
+:      021778 le_ctf_normal:
+0x53f3 021779 sub pdata ,10 ,null 
+0x53f4 021780 branch le_ctf_low ,positive 
+0x53f5 021781 increase 1 ,pdata 
+:      021783 le_ctf_low:
+0x53f6 021784 lshift pdata ,pdata 
+0x53f7 021785 add pdata ,2 ,temp 
+0x53f8 021786 rtn 
+:      021788 le_ctf_test:
+0x53f9 021789 fetch 1 ,mem_le_ch_mapped 
+0x53fa 021790 lshift pdata ,temp 
+0x53fb 021791 rtn 
+:      021793 le_sca_map:
+0x53fc 021794 arg 500 ,temp 
+0x53fd 021795 rtn blank 
+0x53fe 021796 arg 250 ,temp 
+0x53ff 021797 rtneq 1 
+0x5400 021798 arg 150 ,temp 
+0x5401 021799 rtneq 2 
+0x5402 021800 arg 100 ,temp 
+0x5403 021801 rtneq 3 
+0x5404 021802 arg 75 ,temp 
+0x5405 021803 rtneq 4 
+0x5406 021804 arg 50 ,temp 
+0x5407 021805 rtneq 5 
+0x5408 021806 arg 40 ,temp 
+0x5409 021807 rtneq 6 
+0x540a 021808 arg 20 ,temp 
+0x540b 021809 rtn 
+:      021813 le_adv_access:
+0x540c 021814 setarg 0x8e89be 
+0x540d 021815 lshift8 pdata ,pdata 
+0x540e 021816 or_into 0xd6 ,pdata 
+0x540f 021817 iforce access 
+0x5410 021818 setarg 0x555555 
+0x5411 021819 store 3 ,mem_le_crcinit 
+0x5412 021820 rtn 
+:      021822 le_setup:
+0x5413 021823 bpatchx patch28_2 ,mem_patch28 
+0x5414 021824 enable swfine 
+0x5415 021825 fetch 4 ,mem_le_access 
+0x5416 021826 iforce access 
+0x5417 021827 call le_map_channel 
+0x5418 021828 setarg 0x200 
+0x5419 021829 branch le_setup_master ,master 
+0x541a 021830 fetch 2 ,mem_le_receive_window 
+0x541b 021831 rshift pdata ,pdata 
+:      021832 le_setup_master:
+0x541c 021833 arg param_pll_setup ,temp 
+0x541d 021834 iadd temp ,pdata 
+0x541e 021835 call ahead_window 
+0x541f 021836 deposit clke 
+0x5420 021837 store 6 ,mem_le_rxon_ts 
+0x5421 021838 rtn 
+:      021840 le_next_adv_channel:
+0x5422 021841 bpatchx patch28_3 ,mem_patch28 
+0x5423 021842 fetch 1 ,mem_le_ch_mapped 
+0x5424 021843 beq 37 ,le_next_adv_channel_curr_channel_37 
+0x5425 021844 beq 38 ,le_next_adv_channel_curr_channel_38 
+0x5426 021845 beq 39 ,le_next_adv_channel_curr_channel_39 
+0x5427 021846 branch le_next_adv_channel_curr_channel_39 
+:      021848 le_next_adv_channel_curr_channel_37:
+0x5428 021849 fetcht 1 ,mem_le_adv_channel_map 
+0x5429 021850 isolate1 bit_adv_channel_map_38 ,temp 
+0x542a 021851 branch set_le_next_adv_channel_38 ,true 
+0x542b 021852 isolate1 bit_adv_channel_map_39 ,temp 
+0x542c 021853 branch set_le_next_adv_channel_39 ,true 
+0x542d 021854 branch set_le_next_adv_channel_37 
+:      021857 le_next_adv_channel_curr_channel_38:
+0x542e 021858 fetcht 1 ,mem_le_adv_channel_map 
+0x542f 021859 isolate1 bit_adv_channel_map_39 ,temp 
+0x5430 021860 branch set_le_next_adv_channel_39 ,true 
+0x5431 021861 isolate1 bit_adv_channel_map_37 ,temp 
+0x5432 021862 branch set_le_next_adv_channel_37 ,true 
+0x5433 021863 branch set_le_next_adv_channel_38 
+:      021866 le_next_adv_channel_curr_channel_39:
+0x5434 021867 fetcht 1 ,mem_le_adv_channel_map 
+0x5435 021868 isolate1 bit_adv_channel_map_37 ,temp 
+0x5436 021869 branch set_le_next_adv_channel_37 ,true 
+0x5437 021870 isolate1 bit_adv_channel_map_38 ,temp 
+0x5438 021871 branch set_le_next_adv_channel_38 ,true 
+0x5439 021872 branch set_le_next_adv_channel_39 
+:      021876 set_le_next_adv_channel_37:
+0x543a 021877 jam 37 ,mem_le_ch_mapped 
+0x543b 021878 fetch 1 ,mem_le_adv_channel_map_temp 
+0x543c 021879 set1 bit_adv_channel_map_37 ,pdata 
+0x543d 021880 store 1 ,mem_le_adv_channel_map_temp 
+0x543e 021881 rtn 
+:      021883 set_le_next_adv_channel_38:
+0x543f 021884 jam 38 ,mem_le_ch_mapped 
+0x5440 021885 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5441 021886 set1 bit_adv_channel_map_38 ,pdata 
+0x5442 021887 store 1 ,mem_le_adv_channel_map_temp 
+0x5443 021888 rtn 
+:      021890 set_le_next_adv_channel_39:
+0x5444 021891 jam 39 ,mem_le_ch_mapped 
+0x5445 021892 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5446 021893 set1 bit_adv_channel_map_39 ,pdata 
+0x5447 021894 store 1 ,mem_le_adv_channel_map_temp 
+0x5448 021895 rtn 
+:      021899 le_context_nexthop:
+0x5449 021900 bpatchx patch28_4 ,mem_patch28 
+0x544a 021901 add rega ,coffset_mode ,contr 
+0x544b 021902 ifetch 1 ,contr 
+0x544c 021903 rtnbit0 mode_le 
+0x544d 021904 add rega ,coffset_le_event_cnt ,contw 
+0x544e 021905 ifetch 2 ,contw 
+0x544f 021906 increase 1 ,pdata 
+0x5450 021907 istore 2 ,contw 
+0x5451 021908 add rega ,coffset_le_hop ,contr 
+0x5452 021909 ifetch 1 ,contr 
+0x5453 021910 add rega ,coffset_le_ch ,contw 
+0x5454 021911 ifetcht 1 ,contw 
+0x5455 021912 iadd temp ,pdata 
+0x5456 021913 sub pdata ,36 ,null 
+0x5457 021914 branch le_nexthop_nowrap ,positive 
+0x5458 021915 increase -37 ,pdata 
+:      021916 le_nexthop_nowrap:
+0x5459 021917 istore 1 ,contw 
+0x545a 021918 rtn 
+:      021921 le_calc_channel_map:
+0x545b 021922 bpatchx patch28_5 ,mem_patch28 
+0x545c 021923 fetch 5 ,mem_le_channel_map 
+0x545d 021924 force 0 ,temp 
+0x545e 021925 force 37 ,loopcnt 
+:      021926 le_count_channels_loop:
+0x545f 021927 bbit0 0 ,le_count_channels_notused 
+0x5460 021928 increase 1 ,temp 
+:      021929 le_count_channels_notused:
+0x5461 021930 rshift pdata ,pdata 
+0x5462 021931 loop le_count_channels_loop 
+0x5463 021932 add temp ,-1 ,pdata 
+0x5464 021933 store 1 ,mem_le_channels 
+0x5465 021934 rtn 
+:      021936 le_map_channel:
+0x5466 021937 bpatchx patch28_6 ,mem_patch28 
+0x5467 021938 fetch 1 ,mem_le_ch 
+0x5468 021939 iforce queue 
+0x5469 021940 fetcht 5 ,mem_le_channel_map 
+0x546a 021941 qisolate1 temp 
+0x546b 021942 branch le_map_channel_end ,true 
+:      021943 le_map_channel_next:
+0x546c 021944 bpatchx patch28_7 ,mem_patch28 
+0x546d 021945 fetch 1 ,mem_le_channels 
+0x546e 021946 isub queue ,pdata 
+0x546f 021947 branch le_map_channel_cont ,positive 
+0x5470 021948 sub pdata ,-1 ,queue 
+0x5471 021949 branch le_map_channel_next 
+:      021950 le_map_channel_cont:
+0x5472 021951 copy queue ,loopcnt 
+0x5473 021952 force 0 ,queue 
+:      021953 le_map_channel_loop:
+0x5474 021954 qisolate1 temp 
+0x5475 021955 branch le_map_channel_skip ,true 
+0x5476 021956 increase 1 ,loopcnt 
+:      021957 le_map_channel_skip:
+0x5477 021958 deposit loopcnt 
+0x5478 021959 branch le_map_channel_end ,blank 
+0x5479 021960 increase 1 ,queue 
+0x547a 021961 increase -1 ,loopcnt 
+0x547b 021962 branch le_map_channel_loop 
+:      021963 le_map_channel_end:
+0x547c 021964 deposit queue 
+0x547d 021965 store 1 ,mem_le_ch_mapped 
+0x547e 021966 rtn 
+:      021969 le_wait_tx:
+0x547f 021970 branch le_wait_master ,master 
+0x5480 021971 until null ,timeout 
+0x5481 021972 rtn 
+:      021974 le_wait_master:
+0x5482 021975 arg 0xea0 ,timeup 
+0x5483 021976 until clkn_rt ,meet 
+0x5484 021977 rtn 
+:      021979 le_receive_adv:
+0x5485 021980 disable swfine 
+0x5486 021981 fetch 2 ,mem_le_scan_window 
+0x5487 021982 copy pdata ,timeup 
+0x5488 021983 branch le_receive_packet 
+:      021986 le_receive_slave:
+0x5489 021987 bpatchx patch29_0 ,mem_patch29 
+0x548a 021988 enable swfine 
+0x548b 021989 fetch 2 ,mem_le_receive_window 
+0x548c 021990 fetcht 4 ,mem_le_transmit_window 
+0x548d 021991 iadd temp ,timeup 
+:      021992 le_receive_packet:
+0x548e 021993 call lerx_setfreq 
+:      021994 le_receive_rxon:
+0x548f 021995 bpatchx patch29_1 ,mem_patch29 
+0x5490 021996 call le_prep 
+0x5491 021997 disable match 
+0x5492 021998 enable decode_fec0 
+0x5493 021999 enable is_rx 
+0x5494 022000 disable is_tx 
+0x5495 022001 copy timeup ,stop_watch 
+0x5496 022002 correlate null ,timeout 
+0x5497 022003 branch le_receive_on_attempt ,attempt 
+0x5498 022004 copy clke ,temp 
+0x5499 022005 storet 6 ,mem_sync_clke 
+:      022006 le_receive_on_attempt:
+0x549a 022007 nbranch end_of_packet ,sync 
+0x549b 022008 branch le_receive_skip ,attempt 
+0x549c 022009 arg param_clke_cal_le ,clke_rt 
+0x549d 022010 copy bt_clk ,clke_bt 
+0x549e 022011 fetch 1 ,mem_le_state 
+0x549f 022012 bbit0 lestate_got_first_packet ,le_receive_skip 
+0x54a0 022013 call lpm_adjust_clk ,wake 
+:      022014 le_receive_skip:
+0x54a1 022015 bpatchx patch29_2 ,mem_patch29 
+0x54a2 022016 call save_rssi 
+0x54a3 022017 enable enable_white 
+0x54a4 022018 enable enable_crc 
+0x54a5 022019 parse demod ,bucket ,8 
+0x54a6 022020 rshift3 pwindow ,pdata 
+0x54a7 022021 store 1 ,mem_le_rxbuf 
+0x54a8 022022 parse demod ,bucket ,8 
+0x54a9 022023 rshift3 pwindow ,pdata 
+0x54aa 022024 istore 1 ,contw 
+0x54ab 022025 and pdata ,0x3f ,loopcnt 
+0x54ac 022026 branch lerx_nopayload ,zero 
+:      022028 lerx_loop:
+0x54ad 022029 parse demod ,bucket ,8 
+0x54ae 022030 rshift3 pwindow ,pdata 
+0x54af 022031 istore 1 ,contw 
+0x54b0 022032 loop lerx_loop 
+:      022034 lerx_nopayload:
+0x54b1 022035 bpatchx patch29_3 ,mem_patch29 
+0x54b2 022036 parse demod ,bucket ,24 
+0x54b3 022037 enable swfine 
+0x54b4 022038 arg param_sifs ,stop_watch 
+0x54b5 022039 rshift32 pdata ,pdata 
+0x54b6 022040 rshift16 pdata ,pdata 
+0x54b7 022041 istore 3 ,contw 
+0x54b8 022042 branch end_of_packet ,crc_failed 
+0x54b9 022043 enable match 
+0x54ba 022044 fetch 1 ,mem_last_freq 
+0x54bb 022045 add pdata ,0 ,rega 
+0x54bc 022046 call rf_write_freq 
+0x54bd 022047 disable decode_fec0 
+0x54be 022048 branch set_sync_on 
+:      022050 le_transmit_receive_sifs:
+0x54bf 022051 bpatchx patch29_4 ,mem_patch29 
+0x54c0 022052 call le_transmit 
+:      022053 le_transmit_receive_sifs_notx:
+0x54c1 022054 fetcht 1 ,mem_last_freq 
+0x54c2 022055 call set_freq_rx 
+0x54c3 022056 call rf_rx_enable 
+0x54c4 022057 enable swfine 
+0x54c5 022058 arg 5500 ,timeup 
+0x54c6 022059 branch le_receive_rxon 
+:      022061 le_transmit_norx:
+0x54c7 022062 call le_transmit 
+0x54c8 022063 branch end_of_packet 
+:      022065 le_transmit:
+0x54c9 022066 bpatchx patch29_5 ,mem_patch29 
+0x54ca 022067 call le_prep 
+0x54cb 022068 call letx_setfreq 
+0x54cc 022069 branch le_transmit0 
+:      022071 le_transmit0:
+0x54cd 022072 set1 txgfsk ,radio_ctrl 
+0x54ce 022073 enable encode_fec0 
+0x54cf 022074 enable is_tx 
+0x54d0 022075 disable is_rx 
+0x54d1 022076 call le_wait_tx 
+0x54d2 022077 rshift16 access ,pdata 
+0x54d3 022078 rshift8 pdata ,pdata 
+0x54d4 022079 rshift4 pdata ,pdata 
+0x54d5 022080 inject mod ,40 
+0x54d6 022081 enable enable_white 
+0x54d7 022082 enable enable_crc 
+0x54d8 022083 bpatchx patch29_6 ,mem_patch29 
+0x54d9 022084 fetch 1 ,mem_le_txheader 
+0x54da 022085 inject mod ,8 
+0x54db 022086 ifetch 1 ,contr 
+0x54dc 022087 and pdata ,0x3f ,loopcnt 
+0x54dd 022088 inject mod ,8 
+0x54de 022089 branch letr_nopayload ,zero 
+:      022090 letr_loop:
+0x54df 022091 ifetch 1 ,contr 
+0x54e0 022092 inject mod ,8 
+0x54e1 022093 loop letr_loop 
+:      022095 letr_nopayload:
+0x54e2 022096 enable enable_parity 
+0x54e3 022097 inject mod ,24 
+0x54e4 022098 disable enable_parity 
+0x54e5 022099 until null ,tx_clear 
+0x54e6 022100 nop 100 
+0x54e7 022101 disable encode_fec0 
+0x54e8 022102 rtn 
+:      022104 le_send_adv_ind:
+0x54e9 022105 bpatchx patch29_7 ,mem_patch29 
+0x54ea 022106 fetch 1 ,mem_le_adv_type 
+0x54eb 022107 beq adv_direct_ind ,le_send_adv_direct_ind 
+0x54ec 022108 fetch 1 ,mem_le_adv_own_addr_type 
+0x54ed 022109 lshift4 pdata ,pdata 
+0x54ee 022110 lshift2 pdata ,pdata 
+0x54ef 022111 store 1 ,mem_le_txheader 
+0x54f0 022112 fetcht 1 ,mem_le_adv_data_len 
+0x54f1 022113 add temp ,6 ,pdata 
+0x54f2 022114 store 1 ,mem_le_txlen 
+0x54f3 022115 fetch 6 ,mem_le_lap 
+0x54f4 022116 store 6 ,mem_le_txpayload 
+0x54f5 022117 copy temp ,loopcnt 
+0x54f6 022118 arg mem_le_adv_data ,contr 
+0x54f7 022119 call memcpy_fast 
+0x54f8 022120 branch le_send_adv_transmit 
+:      022121 le_send_adv_direct_ind:
+0x54f9 022122 fetch 1 ,mem_le_adv_direct_addr_type 
+0x54fa 022123 lshift4 pdata ,pdata 
+0x54fb 022124 lshift2 pdata ,pdata 
+0x54fc 022125 increase 1 ,pdata 
+0x54fd 022126 store 1 ,mem_le_txheader 
+0x54fe 022127 setarg 12 
+0x54ff 022128 store 1 ,mem_le_txlen 
+0x5500 022129 fetch 6 ,mem_le_lap 
+0x5501 022130 store 6 ,mem_le_txpayload 
+0x5502 022131 fetch 6 ,mem_hci_plap 
+0x5503 022132 istore 6 ,contw 
+:      022133 le_send_adv_transmit:
+0x5504 022134 bpatchx patch2a_0 ,mem_patch2a 
+0x5505 022135 fetch 1 ,mem_le_adv_transmit 
+0x5506 022136 increase 1 ,pdata 
+0x5507 022137 store 1 ,mem_le_adv_transmit 
+0x5508 022138 arg 1800 ,stop_watch 
+0x5509 022139 disable match 
+0x550a 022140 branch le_transmit_receive_sifs 
+:      022142 le_send_scan_request:
+0x550b 022143 bpatchx patch2a_1 ,mem_patch2a 
+0x550c 022144 fetch 1 ,mem_le_scan_type 
+0x550d 022145 rtnne le_scan_type_active 
+0x550e 022146 fetch 1 ,mem_le_adv_transmit 
+0x550f 022147 increase 1 ,pdata 
+0x5510 022148 store 1 ,mem_le_adv_transmit 
+0x5511 022149 arg 0x0c03 ,temp 
+0x5512 022150 fetch 1 ,mem_le_scan_own_addr_type 
+0x5513 022151 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5514 022152 copy rega ,pdata 
+0x5515 022153 nsetflag blank ,le_receiver_addr_bit ,temp 
+0x5516 022154 storet 2 ,mem_le_txheader 
+0x5517 022155 fetch 6 ,mem_le_lap 
+0x5518 022156 istore 6 ,contw 
+0x5519 022157 fetch 6 ,mem_le_plap 
+0x551a 022158 istore 6 ,contw 
+0x551b 022159 branch le_transmit_receive_sifs 
+:      022162 le_send_scan_response:
+0x551c 022163 bpatchx patch2a_2 ,mem_patch2a 
+0x551d 022164 arg scan_rsp ,temp 
+0x551e 022165 fetch 1 ,mem_le_adv_own_addr_type 
+0x551f 022166 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5520 022167 storet 1 ,mem_le_txheader 
+0x5521 022168 fetcht 1 ,mem_le_scan_data_len 
+0x5522 022169 add temp ,6 ,pdata 
+0x5523 022170 store 1 ,mem_le_txlen 
+0x5524 022171 fetch 6 ,mem_le_lap 
+0x5525 022172 store 6 ,mem_le_txpayload 
+0x5526 022173 arg mem_le_scan_data ,contr 
+0x5527 022174 copy temp ,loopcnt 
+0x5528 022175 call memcpy_fast 
+0x5529 022176 call le_transmit_norx 
+0x552a 022177 branch le_adv_not_match 
+:      022179 le_connect_request:
+0x552b 022180 bpatchx patch2a_3 ,mem_patch2a 
+0x552c 022181 force -1 ,pdata 
+0x552d 022182 setsect 2 ,1 
+0x552e 022183 store 5 ,mem_le_channel_map 
+0x552f 022184 call le_calc_channel_map 
+0x5530 022185 force 4 ,loopcnt 
+0x5531 022186 arg mem_le_access ,contw 
+0x5532 022187 call generate_random_loop 
+0x5533 022188 fetch 2 ,mem_le_timeout 
+0x5534 022189 store 2 ,mem_le_superto 
+:      022190 le_con_req_hop_retry:
+0x5535 022191 random pdata 
+0x5536 022192 and_into 0xf ,pdata 
+0x5537 022193 sub pdata ,4 ,null 
+0x5538 022194 branch le_con_req_hop_retry ,positive 
+0x5539 022195 store 1 ,mem_le_hop 
+0x553a 022196 store 1 ,mem_tmp1 
+0x553b 022197 bpatchx patch2a_4 ,mem_patch2a 
+0x553c 022198 fetcht 2 ,mem_le_conn_interval 
+0x553d 022199 storet 2 ,mem_le_tsniff 
+0x553e 022200 copy temp ,regc 
+0x553f 022201 add clkn_bt ,7 ,pdata 
+0x5540 022202 idiv regc 
+0x5541 022203 call wait_div_end 
+0x5542 022204 remainder rega 
+0x5543 022205 isub rega ,pdata 
+0x5544 022206 iadd regc ,pdata 
+0x5545 022207 fetcht 2 ,mem_le_dsniff 
+0x5546 022208 iadd temp ,pdata 
+0x5547 022209 store 4 ,mem_le_anchor 
+0x5548 022210 isub clkn_bt ,rega 
+0x5549 022211 increase -6 ,rega 
+0x554a 022212 arg 0x2205 ,regb 
+0x554b 022213 fetch 1 ,mem_le_conn_own_addr_type 
+0x554c 022214 nsetflag blank ,le_sender_addr_bit ,regb 
+0x554d 022215 fetch 1 ,mem_le_conn_peer_addr_type 
+0x554e 022216 nsetflag blank ,le_receiver_addr_bit ,regb 
+0x554f 022217 copy regb ,pdata 
+0x5550 022218 store 2 ,mem_le_txheader 
+0x5551 022219 fetch 6 ,mem_le_lap 
+0x5552 022220 istore 6 ,contw 
+0x5553 022221 fetch 6 ,mem_le_plap 
+0x5554 022222 istore 6 ,contw 
+0x5555 022223 fetch 4 ,mem_le_access 
+0x5556 022224 istore 4 ,contw 
+0x5557 022225 random pdata 
+0x5558 022226 istore 2 ,contw 
+0x5559 022227 random pdata 
+0x555a 022228 istore 1 ,contw 
+0x555b 022229 force 2 ,pdata 
+0x555c 022230 istore 1 ,contw 
+0x555d 022231 rshift2 rega ,pdata 
+0x555e 022232 istore 2 ,contw 
+0x555f 022233 rshift2 regc ,pdata 
+0x5560 022234 istore 2 ,contw 
+0x5561 022235 bpatchx patch2a_5 ,mem_patch2a 
+0x5562 022236 setarg 0 
+0x5563 022237 istore 2 ,contw 
+0x5564 022238 fetch 2 ,mem_le_timeout 
+0x5565 022239 istore 2 ,contw 
+0x5566 022240 fetch 5 ,mem_le_channel_map 
+0x5567 022241 istore 5 ,contw 
+0x5568 022242 fetch 1 ,mem_le_hop 
+0x5569 022243 arg param_le_sca ,temp 
+0x556a 022244 ior temp ,pdata 
+0x556b 022245 istore 1 ,contw 
+0x556c 022246 call le_transmit_norx 
+0x556d 022247 setarg mem_le_txheader 
+0x556e 022248 add pdata ,18 ,contr 
+0x556f 022249 ifetch 3 ,contr 
+0x5570 022250 store 3 ,mem_le_crcinit 
+0x5571 022251 rtn 
+:      022253 le_init_adv:
+0x5572 022254 bpatchx patch2a_6 ,mem_patch2a 
+0x5573 022255 disable master 
+0x5574 022256 branch le_adv_access 
+:      022260 le_update_param:
+0x5575 022261 fetch 1 ,mem_le_state 
+0x5576 022262 rtnbit0 lestate_update_param 
+0x5577 022263 fetch 2 ,mem_le_event_count 
+0x5578 022264 fetcht 2 ,mem_le_instant 
+0x5579 022265 isub temp ,pdata 
+0x557a 022266 nrtn positive 
+0x557b 022267 store 2 ,mem_pdatatemp 
+0x557c 022268 bpatchx patch2a_7 ,mem_patch2a 
+0x557d 022269 fetch 1 ,mem_le_state 
+0x557e 022270 set0 lestate_update_param ,pdata 
+0x557f 022271 set0 lestate_got_first_packet ,pdata 
+0x5580 022272 store 1 ,mem_le_state 
+0x5581 022273 fetch 4 ,mem_le_anchor 
+0x5582 022274 fetcht 2 ,mem_le_tsniff 
+0x5583 022275 storet 2 ,mem_temp 
+0x5584 022276 isub temp ,rega 
+0x5585 022277 bpatchx patch2b_0 ,mem_patch2b 
+0x5586 022278 fetch 1 ,mem_le_new_param 
+0x5587 022279 store 1 ,mem_le_window_size 
+0x5588 022280 ifetcht 2 ,contr 
+0x5589 022281 ifetch 2 ,contr 
+0x558a 022282 lshift2 pdata ,pdata 
+0x558b 022283 store 2 ,mem_le_tsniff 
+0x558c 022284 lshift2 temp ,temp 
+0x558d 022285 iadd temp ,pdata 
+0x558e 022286 ifetcht 4 ,contr 
+0x558f 022287 storet 4 ,mem_le_slave_latency 
+0x5590 022288 iadd rega ,pdata 
+0x5591 022289 copy pdata ,regab 
+0x5592 022290 fetch 2 ,mem_le_tsniff 
+0x5593 022291 fetcht 2 ,mem_temp 
+0x5594 022292 isub temp ,pdata 
+0x5595 022293 fetcht 2 ,mem_pdatatemp 
+0x5596 022294 imul32 temp ,pdata 
+0x5597 022295 iadd regab ,pdata 
+0x5598 022296 store 4 ,mem_le_anchor 
+0x5599 022297 call le_receive_window_size 
+0x559a 022298 fetch 2 ,mem_le_superto 
+0x559b 022299 store 2 ,mem_le_init_superto 
+0x559c 022300 rtn 
+:      022303 le_update_channel_map:
+0x559d 022304 bpatchx patch2b_1 ,mem_patch2b 
+0x559e 022305 fetch 1 ,mem_le_state 
+0x559f 022306 rtnbit0 lestate_update_map 
+0x55a0 022307 fetch 2 ,mem_le_event_count 
+0x55a1 022308 fetcht 2 ,mem_le_instant 
+0x55a2 022309 isub temp ,pdata 
+0x55a3 022310 nrtn positive 
+0x55a4 022311 fetch 1 ,mem_le_state 
+0x55a5 022312 set0 lestate_update_map ,pdata 
+0x55a6 022313 store 1 ,mem_le_state 
+0x55a7 022314 fetch 5 ,mem_le_new_map 
+0x55a8 022315 store 5 ,mem_le_channel_map 
+0x55a9 022316 branch le_calc_channel_map 
+:      022319 le_acknowledge:
+0x55aa 022320 bpatchx patch2b_2 ,mem_patch2b 
+0x55ab 022321 call le_supervision_flush 
+0x55ac 022322 call le_check_wak 
+0x55ad 022323 fetch 1 ,mem_le_rxbuf 
+0x55ae 022324 isolate1 md ,pdata 
+0x55af 022325 setflag true ,mark_ble_rx_md ,mark 
+0x55b0 022326 rshift pdata ,pdata 
+0x55b1 022327 ixor temp ,pdata 
+0x55b2 022328 isolate1 nesn ,pdata 
+0x55b3 022329 setflag true ,mark_old_packet ,mark 
+0x55b4 022330 rtnmark1 mark_old_packet 
+0x55b5 022331 fetch 1 ,mem_le_rxbuf + 1 
+0x55b6 022332 branch le_ack_unenc ,blank 
+0x55b7 022333 fetch 1 ,mem_le_state 
+0x55b8 022334 bbit0 lestate_encryption ,le_ack_unenc 
+0x55b9 022335 call load_sk 
+0x55ba 022336 call le_decrypt 
+0x55bb 022337 nrtn blank 
+:      022338 le_ack_unenc:
+0x55bc 022339 fetcht 1 ,mem_le_arq 
+0x55bd 022340 setflip nesn ,temp 
+0x55be 022341 storet 1 ,mem_le_arq 
+0x55bf 022342 rtn 
+:      022345 le_check_wak:
+0x55c0 022346 bpatchx patch2b_3 ,mem_patch2b 
+0x55c1 022347 fetcht 1 ,mem_le_arq 
+0x55c2 022348 isolate0 wak ,temp 
+0x55c3 022349 rtn true 
+0x55c4 022350 fetch 1 ,mem_le_rxbuf 
+0x55c5 022351 lshift pdata ,pdata 
+0x55c6 022352 ixor temp ,pdata 
+0x55c7 022353 rtnbit0 sn 
+0x55c8 022354 set0 wak ,temp 
+0x55c9 022355 setflip sn ,temp 
+0x55ca 022356 storet 1 ,mem_le_arq 
+0x55cb 022357 compare 3 ,temp ,3 
+0x55cc 022358 nrtn true 
+0x55cd 022359 fetch 1 ,mem_le_txpayload 
+0x55ce 022360 beq ll_start_enc_req ,le_set_enc 
+0x55cf 022361 fetch 1 ,mem_le_enc_state 
+0x55d0 022362 beq flag_le_enc_pause ,le_clear_enc 
+0x55d1 022363 rtn 
+:      022366 le_set_enc:
+0x55d2 022367 fetch 1 ,mem_le_state 
+0x55d3 022368 set1 lestate_encryption ,pdata 
+0x55d4 022369 store 1 ,mem_le_state 
+0x55d5 022370 rtn 
+:      022372 le_clear_enc:
+0x55d6 022373 bpatchx patch2b_4 ,mem_patch2b 
+0x55d7 022374 jam flag_le_enc_null ,mem_le_enc_state 
+0x55d8 022375 arg 0 ,pdata 
+0x55d9 022376 store 4 ,mem_le_last_mic 
+0x55da 022377 store 5 ,mem_le_pcnt_tx 
+0x55db 022378 set1 39 ,pdata 
+0x55dc 022379 store 5 ,mem_le_pcnt_rx 
+0x55dd 022380 fetch 1 ,mem_le_state 
+0x55de 022381 set0 lestate_encryption ,pdata 
+0x55df 022382 store 1 ,mem_le_state 
+0x55e0 022383 rtn 
+:      022386 le_wait_adv:
+0x55e1 022387 bpatchx patch2b_5 ,mem_patch2b 
+0x55e2 022388 call le_next_adv_channel 
+0x55e3 022389 call le_receive_adv 
+0x55e4 022390 fetch 1 ,mem_le_adv_waitcnt 
+0x55e5 022391 increase 1 ,pdata 
+0x55e6 022392 store 1 ,mem_le_adv_waitcnt 
+0x55e7 022393 rtn 
+:      022396 le_scan:
+0x55e8 022397 bpatchx patch2b_6 ,mem_patch2b 
+0x55e9 022398 fetch 1 ,mem_le_scan_enable 
+0x55ea 022399 rtnne le_scan_enable 
+0x55eb 022400 arg le_scan_interval_timer ,queue 
+0x55ec 022401 call timer_check 
+0x55ed 022402 nrtn blank 
+0x55ee 022403 fetch 2 ,mem_le_scan_interval 
+0x55ef 022404 fetcht 2 ,mem_le_scan_window 
+0x55f0 022405 isub temp ,pdata 
+0x55f1 022406 arg le_scan_interval_timer ,queue 
+0x55f2 022407 call timer_init 
+0x55f3 022408 disable master 
+0x55f4 022409 call le_init_adv 
+0x55f5 022410 call le_wait_adv 
+0x55f6 022411 nrtn match 
+0x55f7 022412 bpatchx patch2b_7 ,mem_patch2b 
+0x55f8 022413 fetch 6 ,mem_le_rxbuf + 2 
+0x55f9 022414 store 6 ,mem_le_plap 
+0x55fa 022417 fetch 1 ,mem_le_adv_rcv 
+0x55fb 022418 increase 1 ,pdata 
+0x55fc 022419 store 1 ,mem_le_adv_rcv 
+0x55fd 022420 call le_create_conn 
+0x55fe 022421 rtn master 
+0x55ff 022422 call le_send_scan_request 
+0x5600 022423 nrtn match 
+0x5601 022424 bpatchx patch2c_0 ,mem_patch2c 
+0x5602 022425 fetch 1 ,mem_le_scanrsp_rcv 
+0x5603 022426 increase 1 ,pdata 
+0x5604 022427 store 1 ,mem_le_scanrsp_rcv 
+0x5605 022428 fetch 9 ,mem_le_rxbuf + 8 
+0x5606 022429 store 9 ,mem_tmp_buffer 
+0x5607 022430 rtn 
+:      022432 le_create_conn:
+0x5608 022433 bpatchx patch2c_1 ,mem_patch2c 
+0x5609 022434 fetch 1 ,mem_cmd_le_create_conn 
+0x560a 022435 rtnne hci_cmd_le_create_conn 
+0x560b 022436 fetch 6 ,mem_le_plap 
+0x560c 022437 fetcht 6 ,mem_le_conn_peer_addr 
+0x560d 022438 isub temp ,null 
+0x560e 022439 nrtn zero 
+0x560f 022440 call context_new 
+0x5610 022441 nrtn zero 
+0x5611 022442 call le_connect_request 
+0x5612 022443 call le_init_master 
+0x5613 022444 bpatchx patch2c_2 ,mem_patch2c 
+0x5614 022445 jam 0 ,mem_hci_cmd 
+0x5615 022446 jam 0 ,mem_le_peer_sca 
+0x5616 022447 jam 0 ,mem_le_scan_enable 
+0x5617 022448 jam 0 ,mem_cmd_le_create_conn 
+0x5618 022449 branch context_save 
+:      022451 le_scan_check_sender_addr_type:
+0x5619 022452 arg 1 ,rega 
+0x561a 022453 fetch 1 ,mem_le_rxbuf 
+0x561b 022454 rtnbit1 le_sender_addr_bit 
+0x561c 022455 arg 0 ,rega 
+0x561d 022456 rtn 
+:      022460 le_prepare_tx:
+0x561e 022461 bpatchx patch2c_3 ,mem_patch2c 
+0x561f 022462 fetch 1 ,mem_le_arq 
+0x5620 022463 rtnbit1 wak 
+0x5621 022464 call le_check_tx_md 
+0x5622 022465 call le_fifo_get_first_tx_ptr 
+0x5623 022466 branch le_send_empty ,blank 
+0x5624 022467 ifetch 1 ,contr 
+0x5625 022468 ifetcht 1 ,contr 
+0x5626 022469 copy temp ,rega 
+0x5627 022470 isub rega ,pdata 
+0x5628 022471 arg le_max_paket_len ,temp 
+0x5629 022472 call not_greater_than 
+0x562a 022473 copy pdata ,temp 
+0x562b 022474 ifetch 1 ,contr 
+0x562c 022475 copy pdata ,type 
+0x562d 022476 copy rega ,pdata 
+0x562e 022477 iadd contr ,contr 
+0x562f 022478 arg mem_le_txpayload ,contw 
+0x5630 022479 copy temp ,loopcnt 
+0x5631 022480 call memcpy 
+0x5632 022481 call le_update_tx_type 
+0x5633 022482 call le_send_packet 
+0x5634 022484 call le_fifo_get_first_tx_ptr 
+0x5635 022485 ifetch 1 ,contr 
+0x5636 022486 copy pdata ,rega 
+0x5637 022487 copy contr ,regc 
+0x5638 022488 ifetcht 1 ,contr 
+0x5639 022489 copy temp ,regb 
+0x563a 022490 isub regb ,pdata 
+0x563b 022491 arg le_max_paket_len ,temp 
+0x563c 022492 call not_greater_than 
+0x563d 022493 iadd regb ,pdata 
+0x563e 022494 istore 1 ,regc 
+0x563f 022495 isub rega ,null 
+0x5640 022496 nrtn zero 
+0x5641 022497 branch le_fifo_release_first_node 
+:      022500 le_check_tx_md:
+0x5642 022501 call le_check_continue 
+0x5643 022502 rtnmark1 mark_ble_tx_md 
+0x5644 022503 fetch 1 ,mem_le_configuration 
+0x5645 022504 bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
+0x5646 022505 call le_fifo_get_second_tx_ptr 
+0x5647 022506 branch le_clear_md ,blank 
+0x5648 022507 branch le_set_md 
+:      022510 le_check_continue:
+0x5649 022511 call le_fifo_get_first_tx_ptr 
+0x564a 022512 branch le_clear_md ,blank 
+0x564b 022513 ifetch 1 ,contr 
+0x564c 022514 ifetcht 1 ,contr 
+0x564d 022515 isub temp ,pdata 
+0x564e 022516 sub pdata ,le_max_paket_len ,null 
+0x564f 022517 branch le_clear_md ,positive 
+:      022518 le_set_md:
+0x5650 022519 set1 mark_ble_tx_md ,mark 
+0x5651 022520 rtn 
+:      022522 le_clear_md:
+0x5652 022523 set0 mark_ble_tx_md ,mark 
+0x5653 022524 rtn 
+:      022526 le_update_tx_type:
+0x5654 022527 copy rega ,pdata 
+0x5655 022528 rtn blank 
+0x5656 022529 arg llid_continue ,type 
+0x5657 022530 rtn 
+:      022533 le_att_check_notification_enable:
+0x5658 022534 bpatchx patch2c_4 ,mem_patch2c 
+0x5659 022535 increase 1 ,temp 
+0x565a 022536 call le_att_get_handle_ptr 
+0x565b 022537 increase -2 ,contr 
+0x565c 022538 ifetch 2 ,contr 
+0x565d 022539 arg client_charactertic_configuration ,temp 
+0x565e 022540 isub temp ,null 
+0x565f 022541 nrtn zero 
+0x5660 022542 increase 1 ,contr 
+0x5661 022543 copy contr ,rega 
+0x5662 022544 ifetch 1 ,contr 
+0x5663 022545 rtn 
+:      022548 le_send_empty:
+0x5664 022549 force 0 ,temp 
+0x5665 022550 force 1 ,type 
+:      022552 le_send_packet:
+0x5666 022553 bpatchx patch2c_5 ,mem_patch2c 
+0x5667 022554 storet 1 ,mem_le_txlen 
+0x5668 022555 fetcht 1 ,mem_le_arq 
+0x5669 022556 set1 wak ,temp 
+0x566a 022557 and temp ,0xfc ,pdata 
+0x566b 022558 ior type ,pdata 
+0x566c 022559 store 1 ,mem_le_arq 
+0x566d 022560 and_into 0x1f ,pdata 
+0x566e 022561 isolate1 mark_ble_tx_md ,mark 
+0x566f 022562 setflag true ,md ,pdata 
+0x5670 022563 store 1 ,mem_le_txheader 
+0x5671 022565 fetch 1 ,mem_le_txheader 
+0x5672 022566 compare 1 ,type ,3 
+0x5673 022567 nbranch le_send_no_txlen ,true 
+0x5674 022568 fetch 1 ,mem_le_txlen 
+0x5675 022569 rtn blank 
+:      022570 le_send_no_txlen:
+0x5676 022571 fetch 1 ,mem_le_state 
+0x5677 022572 rtnbit0 lestate_encryption 
+0x5678 022573 call load_sk 
+0x5679 022574 branch le_encrypt 
+:      022577 get_lpm_wake_ble_rx_lock:
+0x567a 022578 arg wake_lock_ble_rx ,queue 
+0x567b 022579 branch lpm_get_wake_lock 
+:      022581 put_lpm_wake_ble_rx_lock:
+0x567c 022582 arg wake_lock_ble_rx ,queue 
+0x567d 022583 branch lpm_put_wake_lock 
+:      022586 le_parse:
+0x567e 022587 bpatchx patch2c_6 ,mem_patch2c 
+0x567f 022588 rtnmark1 mark_old_packet 
+0x5680 022589 call le_fifo_check_full 
+0x5681 022590 nrtn blank 
+0x5682 022591 fetch 1 ,mem_le_rxbuf 
+0x5683 022592 and pdata ,0x3 ,pdata 
+0x5684 022593 store 1 ,mem_le_packet_llid 
+0x5685 022594 ifetch 1 ,contr 
+0x5686 022595 and pdata ,0x1f ,pdata 
+0x5687 022596 store 1 ,mem_le_packet_size 
+0x5688 022597 rtn blank 
+0x5689 022598 copy contr ,pdata 
+0x568a 022599 store 2 ,mem_le_payload_ptr 
+0x568b 022600 fetch 1 ,mem_le_packet_llid 
+0x568c 022601 beq llid_le_ll ,le_parse_ll 
+:      022602 le_parse_l2cap:
+0x568d 022603 call le_check_l2cap_complete 
+0x568e 022604 nbranch get_lpm_wake_ble_rx_lock ,user 
+0x568f 022605 call put_lpm_wake_ble_rx_lock 
+0x5690 022606 fetch 2 ,mem_le_payload_ptr 
+0x5691 022607 copy pdata ,contr 
+0x5692 022608 ifetch 2 ,contr 
+0x5693 022609 store 2 ,mem_le_l2cap_size 
+0x5694 022610 bpatchx patch2c_7 ,mem_patch2c 
+0x5695 022611 ifetch 2 ,contr 
+0x5696 022612 beq le_l2cap_cid_att ,le_parse_att 
+0x5697 022613 beq le_l2cap_cid_smp ,le_parse_smp 
+0x5698 022614 beq le_l2cap_cid_signal ,le_parse_signaling 
+0x5699 022615 rtn 
+:      022618 le_check_l2cap_complete:
+0x569a 022619 fetch 1 ,mem_le_packet_llid 
+0x569b 022620 beq llid_start ,le_check_l2cap_llid_start 
+0x569c 022621 beq llid_continue ,le_check_l2cap_llid_continue 
+0x569d 022622 rtn 
+:      022627 le_check_l2cap_cid_legal:
+0x569e 022628 call enable_user 
+0x569f 022629 arg le_l2cap_cid_att ,temp 
+0x56a0 022630 isub pdata ,null 
+0x56a1 022631 rtn zero 
+0x56a2 022632 arg le_l2cap_cid_signal ,temp 
+0x56a3 022633 isub pdata ,null 
+0x56a4 022634 rtn zero 
+0x56a5 022635 arg le_l2cap_cid_smp ,temp 
+0x56a6 022636 isub pdata ,null 
+0x56a7 022637 rtn zero 
+0x56a8 022638 branch disable_user 
+:      022641 le_check_l2cap_llid_start:
+0x56a9 022642 fetch 2 ,mem_le_payload_ptr 
+0x56aa 022643 copy pdata ,contr 
+0x56ab 022644 ifetch 2 ,contr 
+0x56ac 022645 store 2 ,mem_le_l2cap_size 
+0x56ad 022646 ifetch 2 ,contr 
+0x56ae 022647 call le_check_l2cap_cid_legal 
+0x56af 022648 nrtn user 
+0x56b0 022649 fetcht 1 ,mem_le_packet_size 
+0x56b1 022650 storet 1 ,mem_le_packet_len_recved 
+0x56b2 022651 fetch 2 ,mem_le_l2cap_size 
+0x56b3 022652 increase 4 ,pdata 
+0x56b4 022653 isub temp ,null 
+0x56b5 022654 branch enable_user ,zero 
+0x56b6 022655 fetch 1 ,mem_le_packet_size 
+0x56b7 022656 copy pdata ,loopcnt 
+0x56b8 022657 arg mem_le_l2capbuf ,contw 
+0x56b9 022658 fetch 2 ,mem_le_payload_ptr 
+0x56ba 022659 copy pdata ,contr 
+0x56bb 022660 call memcpy 
+0x56bc 022661 branch disable_user 
+:      022666 le_check_l2cap_continue_legal:
+0x56bd 022667 call enable_user 
+0x56be 022668 fetch 1 ,mem_le_packet_len_recved 
+0x56bf 022669 nrtn blank 
+0x56c0 022670 branch disable_user 
+:      022672 le_check_l2cap_llid_continue:
+0x56c1 022673 call le_check_l2cap_continue_legal 
+0x56c2 022674 nrtn user 
+0x56c3 022675 fetch 1 ,mem_le_packet_len_recved 
+0x56c4 022676 arg mem_le_l2capbuf ,contw 
+0x56c5 022677 iadd contw ,rega 
+0x56c6 022678 fetcht 1 ,mem_le_packet_size 
+0x56c7 022679 iadd temp ,pdata 
+0x56c8 022680 store 1 ,mem_le_packet_len_recved 
+0x56c9 022681 fetch 1 ,mem_le_packet_size 
+0x56ca 022682 copy pdata ,loopcnt 
+0x56cb 022683 copy rega ,contw 
+0x56cc 022684 fetch 2 ,mem_le_payload_ptr 
+0x56cd 022685 copy pdata ,contr 
+0x56ce 022686 call memcpy_fast 
+0x56cf 022687 setarg mem_le_l2capbuf 
+0x56d0 022688 store 2 ,mem_le_payload_ptr 
+0x56d1 022689 fetch 2 ,mem_le_l2cap_size 
+0x56d2 022690 increase 4 ,pdata 
+0x56d3 022691 fetcht 1 ,mem_le_packet_len_recved 
+0x56d4 022692 isub temp ,null 
+0x56d5 022693 branch enable_user ,zero 
+0x56d6 022694 branch disable_user 
+:      022700 le_get_search_att_type:
+0x56d7 022701 call store_contr 
+0x56d8 022702 arg mem_le_search_att_type_length ,contw 
+:      022703 le_get_search_common:
+0x56d9 022704 fetch 2 ,mem_le_l2cap_size 
+0x56da 022705 increase -5 ,pdata 
+:      022706 le_get_search_common2:
+0x56db 022707 istore 1 ,contw 
+0x56dc 022708 copy pdata ,loopcnt 
+0x56dd 022709 call get_contr 
+0x56de 022710 branch memcpy_fast 
+:      022712 le_get_search_att_uuid:
+0x56df 022713 call store_contr 
+0x56e0 022714 arg mem_le_search_uuid_length ,contw 
+0x56e1 022715 branch le_get_search_common 
+:      022719 le_writeatt_cb:
+0x56e2 022720 fetch 2 ,mem_cb_att_write 
+0x56e3 022721 branch callback_func 
+:      022723 le_supervision_update:
+0x56e4 022724 fetcht 4 ,mem_le_supervision_timer 
+0x56e5 022725 call get_clkbt 
+0x56e6 022726 isub temp ,timeup 
+0x56e7 022727 deposit timeup 
+0x56e8 022728 fetcht 2 ,mem_le_superto 
+0x56e9 022729 lshift4 temp ,temp 
+0x56ea 022730 lshift temp ,temp 
+0x56eb 022731 isub temp ,pdata 
+0x56ec 022732 rtn 
+:      022734 le_supervision_flush:
+0x56ed 022735 call get_clkbt 
+0x56ee 022736 store 4 ,mem_le_supervision_timer 
+0x56ef 022737 rtn 
+:      022740 le_adv:
+0x56f0 022741 jam 36 ,mem_le_ch_mapped 
+0x56f1 022742 jam 0 ,mem_le_adv_channel_map_temp 
+:      022743 le_adv_loop:
+0x56f2 022744 bpatchx patch2d_0 ,mem_patch2d 
+0x56f3 022745 fetch 1 ,mem_le_adv_enable 
+0x56f4 022746 rtn blank 
+0x56f5 022747 arg le_adv_interval_timer ,queue 
+0x56f6 022748 call timer_check 
+0x56f7 022749 nrtn blank 
+0x56f8 022750 bpatchx patch2d_1 ,mem_patch2d 
+:      022751 le_adv_loop_tx:
+0x56f9 022752 disable master 
+0x56fa 022753 enable swfine 
+0x56fb 022754 call le_init_adv 
+0x56fc 022755 call le_next_adv_channel 
+0x56fd 022756 call le_send_adv_ind 
+0x56fe 022757 nbranch le_adv_not_match ,match 
+0x56ff 022758 fetch 1 ,mem_le_req_rcv 
+0x5700 022759 increase 1 ,pdata 
+0x5701 022760 store 1 ,mem_le_req_rcv 
+0x5702 022761 fetch 1 ,mem_le_rxbuf 
+0x5703 022762 and pdata ,0x0f ,pdata 
+0x5704 022763 beq scan_req ,le_send_scan_response 
+0x5705 022764 beq connect_req ,le_parse_connect_req 
+:      022765 le_adv_not_match:
+0x5706 022766 bpatchx patch2d_2 ,mem_patch2d 
+0x5707 022767 random pdata 
+0x5708 022768 arg 0x1ff ,temp 
+0x5709 022769 iand temp ,pdata 
+0x570a 022770 add pdata ,250 ,pdata 
+0x570b 022771 call delay 
+0x570c 022772 fetch 1 ,mem_le_adv_channel_map_temp 
+0x570d 022773 fetcht 1 ,mem_le_adv_channel_map 
+0x570e 022774 isub temp ,null 
+0x570f 022775 nbranch le_adv_loop ,zero 
+0x5710 022776 arg le_adv_interval_timer ,queue 
+0x5711 022777 fetch 2 ,mem_le_adv_interval 
+0x5712 022778 branch timer_init 
+:      022781 le_receive_window_size:
+0x5713 022782 bpatchx patch2d_3 ,mem_patch2d 
+0x5714 022783 fetch 1 ,mem_le_peer_sca 
+0x5715 022784 call le_sca_map 
+0x5716 022785 fetch 2 ,mem_le_tsniff 
+0x5717 022786 imul32 temp ,pdata 
+0x5718 022787 arg 375 ,temp 
+0x5719 022788 imul32 temp ,pdata 
+0x571a 022789 arg 100000 ,temp 
+0x571b 022790 idiv temp 
+0x571c 022791 fetch 1 ,mem_le_window_size 
+0x571d 022792 arg 20000 ,temp 
+0x571e 022793 imul32 temp ,pdata 
+0x571f 022794 iadd temp ,pdata 
+0x5720 022795 store 4 ,mem_le_transmit_window 
+0x5721 022796 bpatchx patch2d_4 ,mem_patch2d 
+0x5722 022797 fetch 2 ,mem_rx_window_sniff 
+0x5723 022798 call wait_div_end 
+0x5724 022799 quotient temp 
+0x5725 022800 iadd temp ,pdata 
+0x5726 022801 store 2 ,mem_le_receive_window 
+0x5727 022802 rtn 
+:      022804 le_parse_connect_req:
+0x5728 022805 bpatchx patch2d_5 ,mem_patch2d 
+0x5729 022806 fetch 6 ,mem_le_rxbuf + 8 
+0x572a 022807 fetcht 6 ,mem_le_lap 
+0x572b 022808 isub temp ,null 
+0x572c 022809 nrtn zero 
+0x572d 022810 call le_scan_check_sender_addr_type 
+0x572e 022811 copy rega ,pdata 
+0x572f 022812 store 1 ,mem_le_conn_peer_addr_type 
+0x5730 022813 fetch 7 ,mem_le_rxbuf + 21 
+0x5731 022814 store 7 ,mem_tmp_buffer 
+0x5732 022815 ifetch 8 ,contr 
+0x5733 022816 istore 8 ,contw 
+0x5734 022817 fetch 6 ,mem_le_rxbuf + 2 
+0x5735 022818 store 6 ,mem_le_plap 
+0x5736 022819 increase 6 ,contr 
+0x5737 022820 ifetch 8 ,contr 
+0x5738 022821 store 8 ,mem_le_access 
+0x5739 022822 ifetcht 2 ,contr 
+0x573a 022823 bpatchx patch2d_6 ,mem_patch2d 
+0x573b 022824 lshift2 temp ,temp 
+0x573c 022825 ifetch 2 ,contr 
+0x573d 022826 lshift2 pdata ,pdata 
+0x573e 022827 store 2 ,mem_le_tsniff 
+0x573f 022828 store 4 ,mem_le_anchor 
+0x5740 022829 isub temp ,pdata 
+0x5741 022830 add pdata ,-2 ,clke_bt 
+0x5742 022831 ifetch 9 ,contr 
+0x5743 022832 store 9 ,mem_le_slave_latency 
+0x5744 022833 bpatchx patch2d_7 ,mem_patch2d 
+0x5745 022834 ifetch 1 ,contr 
+0x5746 022835 rshift4 pdata ,temp 
+0x5747 022836 rshift temp ,temp 
+0x5748 022837 storet 1 ,mem_le_peer_sca 
+0x5749 022838 and_into 0x1f ,pdata 
+0x574a 022839 store 1 ,mem_le_hop 
+0x574b 022840 call le_receive_window_size 
+0x574c 022841 call le_calc_channel_map 
+0x574d 022842 call le_init_slave 
+0x574e 022843 call context_new 
+0x574f 022844 nrtn zero 
+0x5750 022845 bpatchx patch2e_0 ,mem_patch2e 
+0x5751 022846 call calc_clke_offset 
+0x5752 022847 call le_l2cap_reset_signaling_identifier 
+0x5753 022848 jam bt_evt_le_connected ,mem_fifo_temp 
+0x5754 022849 call ui_ipc_send_event 
+0x5755 022850 branch context_save 
+:      022853 le_init_attlist_search:
+0x5756 022854 bpatchx patch2e_1 ,mem_patch2e 
+0x5757 022855 fetch 2 ,mem_le_search_handle_start 
+0x5758 022856 iforce regb 
+0x5759 022857 fetch 2 ,mem_le_search_handle_end 
+0x575a 022858 iforce regc 
+0x575b 022859 fetch 2 ,mem_ui_le_uuid_table 
+0x575c 022860 iforce contr 
+0x575d 022861 enable user 
+0x575e 022862 rtn 
+:      022865 le_att_handle_inrange:
+0x575f 022866 ifetch 2 ,contr 
+0x5760 022867 rtn blank 
+0x5761 022868 isub regb ,null 
+0x5762 022869 nrtn positive 
+0x5763 022870 isub regc ,null 
+0x5764 022871 rtn zero 
+0x5765 022872 branch le_att_handle_blank ,positive 
+0x5766 022873 force 1 ,null 
+0x5767 022874 rtn 
+:      022875 le_att_handle_blank:
+0x5768 022876 force 0 ,pdata 
+0x5769 022877 rtn 
+:      022881 le_att_get_handle_ptr:
+0x576a 022882 call le_att_get_handle_ptr2 
+0x576b 022883 branch le_att_get_handle_ptr_found ,zero 
+0x576c 022884 rtn 
+:      022886 le_att_get_handle_ptr2:
+0x576d 022887 bpatchx patch2e_2 ,mem_patch2e 
+0x576e 022888 fetch 2 ,mem_ui_le_uuid_table 
+0x576f 022889 iforce contr 
+:      022890 le_att_get_handle_loop1:
+0x5770 022891 ifetch 2 ,contr 
+0x5771 022892 rtn blank 
+0x5772 022893 isub temp ,null 
+0x5773 022894 rtn zero 
+0x5774 022895 ifetch 1 ,contr 
+0x5775 022896 iadd contr ,contr 
+0x5776 022897 ifetch 1 ,contr 
+0x5777 022898 iadd contr ,contr 
+0x5778 022899 branch le_att_get_handle_loop1 
+:      022900 le_att_get_handle_ptr_found:
+0x5779 022901 ifetch 1 ,contr 
+0x577a 022902 iadd contr ,contr 
+0x577b 022903 rtn 
+:      022907 le_att_get_short_uuid_ptr:
+0x577c 022908 bpatchx patch2e_3 ,mem_patch2e 
+0x577d 022909 fetch 2 ,mem_ui_le_uuid_table 
+0x577e 022910 iforce contr 
+:      022911 le_att_get_short_uuid_loop:
+0x577f 022912 ifetch 2 ,contr 
+0x5780 022913 rtn blank 
+0x5781 022914 ifetch 1 ,contr 
+0x5782 022915 iadd contr ,contr 
+0x5783 022916 increase -2 ,contr 
+0x5784 022917 ifetch 2 ,contr 
+0x5785 022918 isub temp ,null 
+0x5786 022919 rtn zero 
+0x5787 022920 ifetch 1 ,contr 
+0x5788 022921 iadd contr ,contr 
+0x5789 022922 branch le_att_get_short_uuid_loop 
+:      022926 le_att_get_handle_info_from_ptr:
+0x578a 022927 fetch 2 ,mem_le_cur_attlist_start_ptr 
+0x578b 022928 branch le_att_get_handle_info_fast 
+:      022930 le_att_get_handle_info:
+0x578c 022931 bpatchx patch2e_4 ,mem_patch2e 
+0x578d 022932 fetch 2 ,mem_ui_le_uuid_table 
+:      022933 le_att_get_handle_info_fast:
+0x578e 022934 iforce contr 
+0x578f 022935 copy temp ,rega 
+:      022936 le_att_get_handle_loop:
+0x5790 022937 ifetch 2 ,contr 
+0x5791 022938 branch le_att_unfind_handle ,blank 
+0x5792 022939 isub rega ,null 
+0x5793 022940 branch le_att_finded_handle ,zero 
+0x5794 022941 ifetch 1 ,contr 
+0x5795 022942 iadd contr ,contr 
+0x5796 022943 ifetch 1 ,contr 
+0x5797 022944 iadd contr ,contr 
+0x5798 022945 branch le_att_get_handle_loop 
+:      022946 le_att_unfind_handle:
+0x5799 022947 branch disable_blank 
+:      022949 le_att_finded_handle:
+0x579a 022950 ifetch 1 ,contr 
+0x579b 022951 store 1 ,mem_le_cur_uuid_length 
+0x579c 022952 copy pdata ,loopcnt 
+0x579d 022953 arg mem_le_cur_uuid ,contw 
+0x579e 022954 call memcpy_fast 
+0x579f 022955 ifetch 1 ,contr 
+0x57a0 022956 store 1 ,mem_le_curr_att_len 
+0x57a1 022957 call store_contr 
+0x57a2 022958 branch enable_blank 
+:      022961 le_modified_name:
+0x57a3 022962 bpatchx patch2e_5 ,mem_patch2e 
+0x57a4 022963 call le_modified_name_att_list 
+0x57a5 022964 branch le_modified_name_adv 
+:      022966 le_modified_name_att_list:
+0x57a6 022967 arg uuid_chrctr_device_name ,temp 
+0x57a7 022968 call le_att_get_short_uuid_ptr 
+0x57a8 022969 rtn blank 
+0x57a9 022970 ifetch 1 ,contr 
+0x57aa 022971 copy contr ,contw 
+0x57ab 022972 fetcht 1 ,mem_le_name_len 
+0x57ac 022973 copy temp ,loopcnt 
+0x57ad 022974 isub temp ,null 
+0x57ae 022975 nbranch le_name_length_longer_than_att ,positive 
+0x57af 022976 isub temp ,temp 
+0x57b0 022977 arg mem_le_name ,contr 
+0x57b1 022978 call memcpy 
+0x57b2 022979 copy temp ,loopcnt 
+0x57b3 022980 ncall memcpy_empty ,zero 
+0x57b4 022981 rtn 
+:      022982 le_name_length_longer_than_att:
+0x57b5 022983 copy pdata ,loopcnt 
+0x57b6 022984 arg mem_le_name ,contr 
+0x57b7 022985 branch memcpy_fast 
+:      022988 le_modified_name_adv:
+0x57b8 022989 arg mem_le_adv_data_len + 32 ,regc 
+0x57b9 022990 arg mem_le_adv_data ,rega 
+0x57ba 022991 call le_modified_name_adv_and_scan 
+0x57bb 022992 setarg 0 
+0x57bc 022993 setflag user ,0 ,pdata 
+0x57bd 022994 store 1 ,mem_pdatatemp 
+0x57be 022995 arg mem_le_scan_data_len + 32 ,regc 
+0x57bf 022996 arg mem_le_scan_data ,rega 
+0x57c0 022997 call le_modified_name_adv_and_scan 
+0x57c1 022998 rtn user 
+0x57c2 022999 fetch 1 ,mem_pdatatemp 
+0x57c3 023000 branch assert ,blank 
+0x57c4 023001 rtn 
+:      023004 le_modified_name_adv_and_scan:
+0x57c5 023005 bpatchx patch2e_6 ,mem_patch2e 
+0x57c6 023006 call enable_user 
+0x57c7 023007 call clear_temp_block 
+0x57c8 023008 arg 0 ,regb 
+0x57c9 023009 arg mem_le_data_temp ,contw 
+0x57ca 023010 call le_modified_name_adv_loop 
+0x57cb 023011 fetch 1 ,mem_le_name_len 
+0x57cc 023012 add pdata ,1 ,temp 
+0x57cd 023013 iadd regb ,rega 
+0x57ce 023014 increase 2 ,rega 
+0x57cf 023015 sub rega ,0x1f ,null 
+0x57d0 023016 nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
+0x57d1 023017 istoret 1 ,contw 
+0x57d2 023018 arg gap_adtype_local_name_complete ,temp 
+0x57d3 023019 istoret 1 ,contw 
+0x57d4 023020 iforce loopcnt 
+0x57d5 023021 call memcpy_fast 
+0x57d6 023022 copy rega ,regb 
+:      023023 le_modified_name_adv_and_scan_store_data:
+0x57d7 023024 deposit regb 
+0x57d8 023025 store 1 ,mem_le_data_len_temp 
+0x57d9 023026 arg mem_le_data_len_temp ,contr 
+0x57da 023027 setarg -32 
+0x57db 023028 iadd regc ,contw 
+0x57dc 023029 branch memcpy32 
+:      023031 le_modified_name_adv_and_scan_name_overflow:
+0x57dd 023032 call disable_user 
+0x57de 023033 branch le_modified_name_adv_and_scan_store_data 
+:      023035 le_modified_name_adv_loop:
+0x57df 023036 ifetch 1 ,rega 
+0x57e0 023037 rtn blank 
+0x57e1 023038 pincrease 1 
+0x57e2 023039 ifetcht 1 ,contr 
+0x57e3 023040 sub temp ,gap_adtype_local_name_complete ,null 
+0x57e4 023041 branch le_modified_name_adv_found_name ,zero 
+0x57e5 023042 iadd regb ,regb 
+0x57e6 023043 copy rega ,contr 
+0x57e7 023044 iforce loopcnt 
+0x57e8 023045 call memcpy_fast 
+0x57e9 023046 copy contr ,rega 
+:      023047 le_modified_name_adv_loop2:
+0x57ea 023048 deposit rega 
+0x57eb 023049 isub regc ,null 
+0x57ec 023050 rtn positive 
+0x57ed 023051 branch le_modified_name_adv_loop 
+:      023053 le_modified_name_adv_found_name:
+0x57ee 023054 iadd rega ,rega 
+0x57ef 023055 branch le_modified_name_adv_loop2 
+:      023058 memcpy_empty:
+0x57f0 023059 setarg space 
+0x57f1 023060 istore 1 ,contw 
+0x57f2 023061 loop memcpy_empty 
+0x57f3 023062 rtn 
+:      023065 le_lpm_set_mult:
+0x57f4 023066 bpatchx patch2e_7 ,mem_patch2e 
+0x57f5 023067 disable wake 
+0x57f6 023068 branch le_lpm_set_mult_attempt ,attempt 
+0x57f7 023069 nbranch le_lpm_lost ,match 
+:      023070 le_lpm_set_mult_attempt:
+0x57f8 023071 call lpm_match 
+0x57f9 023072 fetch 2 ,mem_rx_window_sniff 
+0x57fa 023073 store 2 ,mem_le_receive_window 
+0x57fb 023075 nbranch lpm_mult_short ,match 
+0x57fc 023076 bmark1 mark_old_packet ,lpm_mult_short 
+0x57fd 023078 fetch 1 ,mem_le_packet_size 
+0x57fe 023079 nbranch lpm_mult_short ,blank 
+0x57ff 023080 fetch 1 ,mem_le_txlen 
+0x5800 023081 nbranch lpm_mult_short ,blank 
+0x5801 023083 fetch 1 ,mem_le_configuration 
+0x5802 023084 bbit1 bit_ble_short_mult ,lpm_mult_short 
+0x5803 023086 fetch 1 ,mem_le_state 
+0x5804 023087 bbit1 lestate_update_param ,lpm_mult_short 
+0x5805 023088 branch lpm_mult_wait_timeout 
+:      023090 le_lpm_lost:
+0x5806 023091 fetcht 2 ,mem_rx_window_sniff 
+0x5807 023092 rshift temp ,temp 
+0x5808 023093 fetch 2 ,mem_le_receive_window 
+0x5809 023094 iadd temp ,pdata 
+0x580a 023095 store 2 ,mem_le_receive_window 
+0x580b 023096 branch lpm_lost 
+:      023099 le_set_config_fixed_tk:
+0x580c 023100 arg bit_ble_passkey_fixed_key ,queue 
+0x580d 023101 branch le_set_config 
+:      023103 le_clr_config_fixed_tk:
+0x580e 023104 arg bit_ble_passkey_fixed_key ,queue 
+0x580f 023105 branch le_clr_config 
+:      023107 le_set_config_fixed_ltk:
+0x5810 023108 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5811 023109 branch le_set_config 
+:      023111 le_clr_config_fixed_ltk:
+0x5812 023112 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5813 023113 branch le_clr_config 
+:      023115 le_set_config_more_data:
+0x5814 023116 arg bit_ble_transmit_packet_by_md ,queue 
+0x5815 023117 branch le_set_config 
+:      023119 le_clr_config_more_data:
+0x5816 023120 arg bit_ble_transmit_packet_by_md ,queue 
+0x5817 023121 branch le_clr_config 
+:      023123 le_set_config_read_authentication:
+0x5818 023124 arg bit_ble_read_auth ,queue 
+0x5819 023125 branch le_set_config 
+:      023127 le_clr_config_read_authentication:
+0x581a 023128 arg bit_ble_read_auth ,queue 
+0x581b 023129 branch le_clr_config 
+:      023131 le_set_config_write_authentication:
+0x581c 023132 arg bit_ble_write_auth ,queue 
+0x581d 023133 branch le_set_config 
+:      023135 le_clr_config_write_authentication:
+0x581e 023136 arg bit_ble_write_auth ,queue 
+0x581f 023137 branch le_clr_config 
+:      023139 le_set_config_short_mult:
+0x5820 023140 arg bit_ble_short_mult ,queue 
+0x5821 023141 branch le_set_config 
+:      023143 le_clr_config_short_mult:
+0x5822 023144 arg bit_ble_short_mult ,queue 
+0x5823 023145 branch le_clr_config 
+:      023148 le_set_config:
+0x5824 023149 fetch 1 ,mem_le_configuration 
+0x5825 023150 qset1 pdata 
+0x5826 023151 store 1 ,mem_le_configuration 
+0x5827 023152 rtn 
+:      023154 le_clr_config:
+0x5828 023155 fetch 1 ,mem_le_configuration 
+0x5829 023156 qset0 pdata 
+0x582a 023157 store 1 ,mem_le_configuration 
+0x582b 023158 rtn 
+:      023160 le_set_fixed_ltk:
+0x582c 023161 setarg 0x112233 
+0x582d 023162 store 3 ,mem_le_fixed_ltk 
+0x582e 023163 setarg 0x445566 
+0x582f 023164 istore 3 ,contw 
+0x5830 023165 setarg 0x778899 
+0x5831 023166 istore 3 ,contw 
+0x5832 023167 setarg 0x001122 
+0x5833 023168 istore 3 ,contw 
+0x5834 023169 setarg 0x334455 
+0x5835 023170 istore 3 ,contw 
+0x5836 023171 setarg 0x66 
+0x5837 023172 istore 1 ,contw 
+0x5838 023173 rtn 
+:      023176 le_set_justwork:
+0x5839 023177 setarg 0x01000302 
+0x583a 023178 store 4 ,mem_le_pres 
+0x583b 023179 setarg 0x010010 
+0x583c 023180 store 3 ,mem_le_pres_max_keysize 
+0x583d 023181 jam 1 ,mem_le_pairing_mode 
+0x583e 023182 rtn 
+:      023186 le_fifo_malloc_tx_empty:
+0x583f 023187 arg 0 ,rega 
+0x5840 023188 arg llid_empty ,type 
+0x5841 023189 branch le_fifo_malloc_tx 
+:      023193 le_fifo_malloc_tx_ll:
+0x5842 023194 arg llid_le_ll ,type 
+0x5843 023195 call le_fifo_malloc_tx 
+0x5844 023196 copy regb ,pdata 
+0x5845 023197 istore 1 ,contw 
+0x5846 023198 rtn 
+:      023202 le_fifo_malloc_tx_l2cap:
+0x5847 023203 force llid_l2cap_start ,type 
+0x5848 023204 increase 4 ,rega 
+0x5849 023205 call le_fifo_malloc_tx 
+0x584a 023206 increase -4 ,rega 
+0x584b 023207 copy rega ,pdata 
+0x584c 023208 istore 2 ,contw 
+0x584d 023209 copy regb ,pdata 
+0x584e 023210 istore 2 ,contw 
+0x584f 023211 rtn 
+:      023215 le_fifo_malloc_tx:
+0x5850 023216 sub rega ,240 ,null 
+0x5851 023217 nbranch assert ,positive 
+0x5852 023218 fetch 1 ,mem_le_tx_buff_used 
+0x5853 023219 arg 1 ,temp 
+0x5854 023220 arg le_tx_buff_count ,loopcnt 
+:      023221 le_fifo_malloc_tx_loop:
+0x5855 023222 iand temp ,null 
+0x5856 023223 branch le_fifo_malloc_tx_got_empty ,zero 
+0x5857 023224 lshift temp ,temp 
+0x5858 023225 loop le_fifo_malloc_tx_loop 
+0x5859 023226 branch assert 
+:      023227 le_fifo_malloc_tx_got_empty:
+0x585a 023228 ixor temp ,pdata 
+0x585b 023229 store 1 ,mem_le_tx_buff_used 
+0x585c 023230 sub loopcnt ,le_tx_buff_count ,pdata 
+0x585d 023231 lshift4 pdata ,pdata 
+0x585e 023232 lshift4 pdata ,pdata 
+0x585f 023233 arg mem_le_tx_buffer0 ,temp 
+0x5860 023234 iadd temp ,temp 
+:      023235 le_fifo_tx_find_empty_ptr:
+0x5861 023236 arg 0 ,loopcnt 
+0x5862 023237 arg mem_le_tx_ptr0 ,contr 
+:      023238 le_fifo_tx_find_empty_ptr_loop:
+0x5863 023239 ifetch 2 ,contr 
+0x5864 023240 branch le_fifo_tx_found_empty_ptr ,blank 
+0x5865 023241 copy loopcnt ,pdata 
+0x5866 023242 increase 1 ,loopcnt 
+0x5867 023243 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
+0x5868 023244 branch assert 
+:      023247 le_fifo_tx_found_empty_ptr:
+0x5869 023248 increase -2 ,contr 
+0x586a 023249 istoret 2 ,contr 
+0x586b 023250 copy temp ,contw 
+0x586c 023251 copy rega ,pdata 
+0x586d 023252 istore 1 ,contw 
+0x586e 023253 setarg 0 
+0x586f 023254 istore 1 ,contw 
+0x5870 023255 copy type ,pdata 
+0x5871 023256 istore 1 ,contw 
+0x5872 023257 rtn 
+:      023261 le_fifo_get_first_tx_ptr:
+0x5873 023262 fetch 2 ,mem_le_tx_ptr0 
+0x5874 023263 copy pdata ,contr 
+0x5875 023264 rtn 
+:      023266 le_fifo_get_second_tx_ptr:
+0x5876 023267 fetch 2 ,mem_le_tx_ptr1 
+0x5877 023268 copy pdata ,contr 
+0x5878 023269 rtn 
+:      023271 le_fifo_get_last_tx_ptr:
+0x5879 023272 call le_fifo_get_last_tx_ptr0 
+0x587a 023273 copy pdata ,contr 
+0x587b 023274 rtn 
+:      023275 le_fifo_get_last_tx_ptr0:
+0x587c 023276 fetch 2 ,mem_le_tx_ptr3 
+0x587d 023277 nrtn blank 
+0x587e 023278 fetch 2 ,mem_le_tx_ptr2 
+0x587f 023279 nrtn blank 
+0x5880 023280 fetch 2 ,mem_le_tx_ptr1 
+0x5881 023281 nrtn blank 
+0x5882 023282 fetch 2 ,mem_le_tx_ptr0 
+0x5883 023283 rtn 
+:      023285 le_fifo_get_first_l2cap_ptr:
+0x5884 023286 call le_fifo_get_first_tx_ptr 
+0x5885 023287 increase 3 ,contr 
+0x5886 023288 rtn 
+:      023290 le_fifo_get_first_att_ptr:
+0x5887 023291 call le_fifo_get_first_tx_ptr 
+0x5888 023292 increase 7 ,contr 
+0x5889 023293 rtn 
+:      023295 le_fifo_get_last_att_ptr:
+0x588a 023296 call le_fifo_get_last_tx_ptr 
+0x588b 023297 increase 7 ,contr 
+0x588c 023298 rtn 
+:      023300 le_fifo_get_last_l2cap_ptr:
+0x588d 023301 call le_fifo_get_last_tx_ptr 
+0x588e 023302 increase 3 ,contr 
+0x588f 023303 rtn 
+:      023307 le_fifo_check_full:
+0x5890 023308 fetch 2 ,mem_le_tx_ptr3 
+0x5891 023309 rtn 
+:      023312 le_fifo_check_nearly_full:
+0x5892 023313 fetch 2 ,mem_le_tx_ptr2 
+0x5893 023314 rtn 
+:      023317 le_fifo_check_empty:
+0x5894 023318 fetch 2 ,mem_le_tx_ptr0 
+0x5895 023319 rtn 
+:      023322 le_fifo_release_first_node:
+0x5896 023323 fetch 2 ,mem_le_tx_ptr0 
+0x5897 023324 arg mem_le_tx_buffer0 ,temp 
+0x5898 023325 isub temp ,pdata 
+0x5899 023326 rshift4 pdata ,pdata 
+0x589a 023327 rshift4 pdata ,queue 
+0x589b 023328 fetch 1 ,mem_le_tx_buff_used 
+0x589c 023329 qset0 pdata 
+0x589d 023330 store 1 ,mem_le_tx_buff_used 
+0x589e 023331 arg 0 ,loopcnt 
+:      023332 le_fifo_release_first_node_loop:
+0x589f 023333 lshift loopcnt ,pdata 
+0x58a0 023334 arg mem_le_tx_ptr1 ,temp 
+0x58a1 023335 iadd temp ,temp 
+0x58a2 023336 ifetch 2 ,temp 
+0x58a3 023337 increase -2 ,temp 
+0x58a4 023338 istore 2 ,temp 
+0x58a5 023339 copy loopcnt ,pdata 
+0x58a6 023340 increase 1 ,loopcnt 
+0x58a7 023341 bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
+0x58a8 023342 setarg 0 
+0x58a9 023343 istore 2 ,temp 
+0x58aa 023344 rtn 
+:      023350 le_parse_att:
+0x58ab 023351 ifetch 3 ,contr 
+0x58ac 023352 store 3 ,mem_le_att_opcode 
+0x58ad 023353 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
+0x58ae 023354 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
+0x58af 023355 beq attop_find_information_request ,le_parse_att_find_information_request 
+0x58b0 023356 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
+0x58b1 023357 beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
+0x58b2 023358 beq attop_read_request ,le_parse_att_read_request 
+0x58b3 023359 beq attop_read_blob_request ,le_parse_att_read_blob_request 
+0x58b4 023360 beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
+0x58b5 023361 beq attop_write_request ,le_parse_att_write_request 
+0x58b6 023362 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
+0x58b7 023363 beq attop_execute_write_request ,le_parse_att_execute_write_request 
+0x58b8 023364 beq attop_write_command ,le_parse_att_write_command 
+0x58b9 023365 rtn 
+:      023368 le_send_att_exchange_mtu_requset:
+0x58ba 023369 force 3 ,rega 
+0x58bb 023370 call le_fifo_malloc_tx_l2cap_gatt 
+0x58bc 023371 setarg attop_exchange_mtu_request 
+0x58bd 023372 istore 1 ,contw 
+0x58be 023373 fetch 2 ,mem_le_local_mtu 
+0x58bf 023374 istore 2 ,contw 
+0x58c0 023375 rtn 
+:      023378 le_parse_att_exchange_mtu_request:
+0x58c1 023379 call le_parse_att_exchange_mtu_response 
+:      023380 le_send_att_exchange_mtu_response:
+0x58c2 023381 force 3 ,rega 
+0x58c3 023382 call le_fifo_malloc_tx_l2cap_gatt 
+0x58c4 023383 setarg attop_exchange_mtu_response 
+0x58c5 023384 istore 1 ,contw 
+0x58c6 023385 fetch 2 ,mem_le_local_mtu 
+0x58c7 023386 istore 2 ,contw 
+0x58c8 023387 rtn 
+:      023389 le_parse_att_exchange_mtu_response:
+0x58c9 023390 rshift8 pdata ,pdata 
+0x58ca 023391 store 2 ,mem_le_remote_mtu 
+0x58cb 023392 rtn 
+:      023394 le_parse_att_find_information_request:
+0x58cc 023395 call le_get_search_handle_start_end_common 
+0x58cd 023396 call enable_user 
+0x58ce 023397 branch le_send_att_find_information_response 
+:      023399 le_send_att_find_information_response:
+0x58cf 023400 arg 3 ,timeup 
+0x58d0 023401 call le_init_attlist_search 
+:      023402 le_send_att_find_information_res_loop:
+0x58d1 023403 call le_att_handle_inrange 
+0x58d2 023404 branch le_send_att_find_information_res_end ,blank 
+0x58d3 023405 nbranch le_send_att_find_information_res_next ,positive 
+0x58d4 023406 increase -2 ,contr 
+0x58d5 023407 call store_contr 
+0x58d6 023408 call get_contw 
+0x58d7 023409 nbranch le_send_att_find_information_res_store_info ,user 
+0x58d8 023410 call push_stack_rega_b_c 
+0x58d9 023411 call disable_user 
+0x58da 023412 force 20 ,rega 
+0x58db 023413 call le_fifo_malloc_tx_l2cap_gatt 
+0x58dc 023414 call pop_stack_rega_b_c 
+0x58dd 023415 setarg attop_find_information_response 
+0x58de 023416 istore 1 ,contw 
+0x58df 023417 setarg uuid_size_16bit 
+0x58e0 023418 istore 1 ,contw 
+:      023419 le_send_att_find_information_res_store_info:
+0x58e1 023420 call get_contr 
+0x58e2 023421 ifetch 2 ,contr 
+0x58e3 023422 istore 2 ,contw 
+0x58e4 023423 ifetch 1 ,contr 
+0x58e5 023424 copy pdata ,loopcnt 
+0x58e6 023425 call memcpy 
+0x58e7 023426 call store_contw 
+0x58e8 023427 increase -1 ,timeup 
+0x58e9 023428 branch le_send_att_find_information_res_end ,zero 
+:      023429 le_send_att_find_information_res_cont:
+0x58ea 023430 ifetch 1 ,contr 
+0x58eb 023431 iadd contr ,contr 
+0x58ec 023432 branch le_send_att_find_information_res_loop 
+:      023433 le_send_att_find_information_res_next:
+0x58ed 023434 ifetch 1 ,contr 
+0x58ee 023435 iadd contr ,contr 
+0x58ef 023436 branch le_send_att_find_information_res_cont 
+:      023437 le_send_att_find_information_res_end:
+0x58f0 023438 branch le_send_att_error_response_notfound ,user 
+0x58f1 023439 branch le_send_auto_len_by_mem 
+:      023442 le_parse_att_find_by_type_value_request:
+0x58f2 023443 call le_get_search_handle_start_end_common 
+0x58f3 023444 ifetch 2 ,contr 
+0x58f4 023445 store 2 ,mem_le_search_uuid 
+0x58f5 023446 call store_contr 
+0x58f6 023447 arg mem_le_search_att_type_length ,contw 
+0x58f7 023448 fetch 2 ,mem_le_l2cap_size 
+0x58f8 023449 increase -7 ,pdata 
+0x58f9 023450 call le_get_search_common2 
+0x58fa 023451 branch le_send_att_find_by_type_value_response 
+:      023454 le_start_end_handle_check_1:
+0x58fb 023455 disable user 
+0x58fc 023456 fetcht 2 ,mem_le_search_handle_start 
+0x58fd 023457 fetch 2 ,mem_le_search_handle_end 
+0x58fe 023458 isub temp ,null 
+0x58ff 023459 nbranch le_start_end_handle_check_1_fail ,positive 
+0x5900 023460 deposit temp 
+0x5901 023461 rtnne 0 
+:      023462 le_start_end_handle_check_1_fail:
+0x5902 023463 enable user 
+0x5903 023464 jam att_err_invalid_handle ,mem_le_err_code 
+0x5904 023465 branch le_send_att_error_response 
+:      023468 le_send_att_find_by_type_value_response:
+0x5905 023469 call le_start_end_handle_check_1 
+0x5906 023470 rtn user 
+0x5907 023471 fetcht 2 ,mem_le_search_uuid 
+0x5908 023472 setarg uuid_gatt_primary_service 
+0x5909 023473 isub temp ,null 
+0x590a 023474 branch le_send_att_find_by_type_value_res_primary ,zero 
+0x590b 023475 branch le_send_att_error_response_notfound 
+:      023478 le_send_att_find_by_type_value_res_primary:
+0x590c 023479 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
+0x590d 023480 fetcht 2 ,mem_le_search_handle_start 
+0x590e 023481 storet 2 ,mem_temp 
+0x590f 023482 call le_att_get_handle_info 
+0x5910 023483 nbranch le_send_att_error_response_notfound ,blank 
+:      023484 le_send_att_find_primary_search_loop:
+0x5911 023485 fetcht 2 ,mem_temp 
+0x5912 023486 call le_att_get_handle_info 
+0x5913 023487 nbranch le_send_att_error_response_notfound2 ,blank 
+0x5914 023488 copy contr ,rega 
+0x5915 023489 fetch 1 ,mem_le_curr_att_len 
+0x5916 023490 copy pdata ,loopcnt 
+0x5917 023491 fetcht 1 ,mem_le_search_att_type_length 
+0x5918 023492 isub temp ,null 
+0x5919 023493 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x591a 023494 arg mem_le_search_att_type ,regb 
+0x591b 023495 call string_compare 
+0x591c 023497 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
+0x591d 023499 fetch 2 ,mem_le_cur_uuid 
+0x591e 023500 fetcht 2 ,mem_le_search_uuid 
+0x591f 023501 isub temp ,null 
+0x5920 023502 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
+:      023503 le_send_att_find_primary_search_loop1:
+0x5921 023504 fetch 2 ,mem_temp 
+0x5922 023505 increase 1 ,pdata 
+0x5923 023506 store 2 ,mem_temp 
+0x5924 023507 branch le_send_att_find_primary_search_loop 
+:      023509 le_send_att_error_response_notfound2:
+0x5925 023510 fetch 1 ,mem_le_search_res 
+0x5926 023511 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
+0x5927 023512 branch le_send_att_error_response_notfound 
+:      023515 le_send_att_find_primary_search_end_start_handle_found:
+0x5928 023516 fetch 2 ,mem_le_cur_uuid 
+0x5929 023517 fetcht 2 ,mem_le_search_uuid 
+0x592a 023518 isub temp ,null 
+0x592b 023519 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x592c 023520 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
+0x592d 023522 fetcht 2 ,mem_temp 
+0x592e 023523 storet 2 ,mem_le_cur_handle_start 
+0x592f 023524 branch le_send_att_find_primary_search_loop1 
+:      023526 le_send_att_find_primary_search_end_ending_handle_found:
+0x5930 023527 fetch 1 ,mem_le_search_res 
+0x5931 023528 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
+0x5932 023529 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
+0x5933 023530 fetcht 2 ,mem_temp 
+0x5934 023531 increase -1 ,temp 
+0x5935 023532 storet 2 ,mem_le_cur_handle_end 
+:      023534 le_send_att_find_primary_search_end:
+0x5936 023535 arg 5 ,rega 
+0x5937 023536 call le_fifo_malloc_tx_l2cap_gatt 
+0x5938 023537 setarg attop_find_by_type_value_response 
+0x5939 023538 istore 1 ,contw 
+0x593a 023539 fetch 2 ,mem_le_cur_handle_start 
+0x593b 023540 istore 2 ,contw 
+0x593c 023541 fetch 2 ,mem_le_cur_handle_end 
+0x593d 023542 istore 2 ,contw 
+0x593e 023543 rtn 
+:      023547 le_parse_att_read_by_type_request:
+0x593f 023548 call le_get_search_handle_start_end_common 
+0x5940 023549 call le_get_search_att_uuid 
+0x5941 023550 branch le_send_att_read_by_type_response 
+:      023552 le_send_att_read_by_type_response:
+0x5942 023553 fetcht 2 ,mem_le_search_handle_start 
+0x5943 023554 storet 2 ,mem_temp 
+0x5944 023555 call le_init_attlist_search 
+0x5945 023556 call le_att_get_handle_ptr2 
+0x5946 023557 increase -2 ,contr 
+0x5947 023558 copy contr ,pdata 
+0x5948 023559 store 2 ,mem_le_cur_attlist_start_ptr 
+0x5949 023561 fetcht 2 ,mem_le_search_uuid 
+0x594a 023562 setarg uuid_chrctr_device_name 
+0x594b 023563 isub temp ,null 
+0x594c 023564 branch le_send_att_read_by_type_res_device_name ,zero 
+0x594d 023565 setarg uuid_gatt_characteristic 
+0x594e 023566 isub temp ,null 
+0x594f 023567 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
+0x5950 023568 arg 2 ,timeup 
+:      023569 le_send_att_read_by_type_response_loop:
+0x5951 023570 call le_att_check_handle_end 
+0x5952 023571 nbranch le_send_att_read_by_type_response_end ,positive 
+0x5953 023572 fetcht 2 ,mem_temp 
+0x5954 023573 call le_att_get_handle_info_from_ptr 
+0x5955 023574 beq 1 ,le_send_att_read_by_type_response_end 
+0x5956 023575 call le_att_same_uuid 
+0x5957 023576 nbranch le_send_att_read_by_type_response_next_handle ,zero 
+0x5958 023577 nbranch le_send_att_read_by_type_res_found_next ,user 
+0x5959 023578 disable user 
+0x595a 023579 arg 20 ,rega 
+0x595b 023580 call le_fifo_malloc_tx_l2cap_gatt 
+0x595c 023581 setarg attop_read_by_type_response 
+0x595d 023582 istore 1 ,contw 
+0x595e 023583 copy contw ,alarm 
+0x595f 023584 increase 1 ,contw 
+0x5960 023586 call le_send_att_read_by_type_write_properties 
+0x5961 023587 call le_att_next_handle 
+0x5962 023588 call le_att_get_handle_info_from_ptr 
+0x5963 023589 call le_send_att_read_by_type_write_uuid 
+0x5964 023590 fetch 1 ,mem_le_cur_uuid_length 
+0x5965 023591 increase 5 ,pdata 
+0x5966 023592 istore 1 ,alarm 
+0x5967 023593 fetch 1 ,mem_le_cur_uuid_length 
+0x5968 023594 beq 16 ,le_send_att_read_by_type_response_end 
+0x5969 023595 increase -1 ,timeup 
+0x596a 023596 branch le_send_att_read_by_type_response_end ,zero 
+:      023597 le_send_att_read_by_type_response_next_handle:
+0x596b 023598 call le_att_next_handle 
+0x596c 023599 branch le_send_att_read_by_type_response_loop 
+:      023600 le_send_att_read_by_type_response_end:
+0x596d 023601 branch le_send_att_error_response_notfound ,user 
+0x596e 023602 branch le_send_auto_len_by_mem 
+:      023604 le_send_att_read_by_type_res_found_next:
+0x596f 023605 call le_store_att_record 
+0x5970 023606 call le_att_next_handle 
+0x5971 023607 call le_att_get_handle_info_from_ptr 
+0x5972 023608 fetch 1 ,mem_le_cur_uuid_length 
+0x5973 023609 beq 16 ,le_send_att_read_by_type_response_end 
+0x5974 023611 call get_contw 
+0x5975 023612 fetch 2 ,mem_temp 
+0x5976 023613 increase -1 ,pdata 
+0x5977 023614 istore 2 ,contw 
+0x5978 023615 call le_write_att_record_common 
+0x5979 023616 call le_send_att_read_by_type_write_uuid 
+0x597a 023617 increase -1 ,timeup 
+0x597b 023618 branch le_send_att_read_by_type_response_end ,zero 
+0x597c 023619 branch le_send_att_read_by_type_response_next_handle 
+:      023622 le_send_att_read_by_type_write_properties:
+0x597d 023623 fetch 2 ,mem_temp 
+0x597e 023624 istore 2 ,contw 
+0x597f 023626 fetch 1 ,mem_le_curr_att_len 
+0x5980 023627 copy pdata ,loopcnt 
+0x5981 023628 call get_contr 
+0x5982 023629 call memcpy_fast 
+0x5983 023630 branch store_contw 
+:      023631 le_send_att_read_by_type_write_uuid:
+0x5984 023632 call get_contw 
+0x5985 023633 fetch 2 ,mem_temp 
+0x5986 023634 istore 2 ,contw 
+0x5987 023635 call store_contw 
+0x5988 023636 fetch 1 ,mem_le_cur_uuid_length 
+0x5989 023637 copy pdata ,loopcnt 
+0x598a 023638 call get_contw 
+0x598b 023639 call get_contr 
+0x598c 023640 isub loopcnt ,contr 
+0x598d 023641 increase -1 ,contr 
+0x598e 023642 call memcpy_fast 
+0x598f 023643 branch store_contw 
+:      023647 le_send_att_read_by_type_res_not_characteristic:
+0x5990 023648 fetcht 2 ,mem_le_search_handle_start 
+0x5991 023649 storet 2 ,mem_temp 
+:      023650 le_send_att_read_by_type_res_not_char_loop:
+0x5992 023651 call le_att_check_handle_end 
+0x5993 023652 nbranch le_send_att_error_response_notfound ,positive 
+0x5994 023653 call le_att_get_handle_info_from_ptr 
+0x5995 023654 beq 1 ,le_send_att_error_response_notfound 
+0x5996 023655 call le_att_same_uuid 
+0x5997 023656 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
+:      023658 le_send_att_read_by_type_res_not_char_common:
+0x5998 023659 arg 20 ,rega 
+0x5999 023660 call le_fifo_malloc_tx_l2cap_gatt 
+0x599a 023661 setarg attop_read_by_type_response 
+0x599b 023662 istore 1 ,contw 
+0x599c 023663 fetch 1 ,mem_le_curr_att_len 
+0x599d 023664 copy pdata ,loopcnt 
+0x599e 023665 increase 2 ,pdata 
+0x599f 023666 istore 1 ,contw 
+0x59a0 023667 fetch 2 ,mem_temp 
+0x59a1 023668 istore 2 ,contw 
+0x59a2 023669 call get_contr 
+0x59a3 023670 call memcpy_fast 
+0x59a4 023671 call store_contw 
+0x59a5 023672 branch le_send_auto_len_by_mem 
+:      023674 le_send_att_read_by_type_res_not_char_next:
+0x59a6 023675 call le_att_next_handle 
+0x59a7 023676 branch le_send_att_read_by_type_res_not_char_loop 
+:      023679 le_send_att_read_by_type_res_device_name:
+0x59a8 023680 arg uuid_chrctr_device_name ,temp 
+0x59a9 023681 call le_att_get_short_uuid_ptr 
+0x59aa 023682 rtn blank 
+0x59ab 023683 increase -5 ,contr 
+0x59ac 023684 ifetch 2 ,contr 
+0x59ad 023685 store 2 ,mem_temp 
+0x59ae 023686 arg 20 ,rega 
+0x59af 023687 call le_fifo_malloc_tx_l2cap_gatt 
+0x59b0 023688 setarg attop_read_by_type_response 
+0x59b1 023689 istore 1 ,contw 
+0x59b2 023690 fetch 1 ,mem_le_name_len 
+0x59b3 023691 copy pdata ,loopcnt 
+0x59b4 023692 increase 2 ,pdata 
+0x59b5 023693 istore 1 ,contw 
+0x59b6 023694 fetch 2 ,mem_temp 
+0x59b7 023695 istore 2 ,contw 
+0x59b8 023696 arg mem_le_name ,contr 
+0x59b9 023697 call memcpy_fast 
+0x59ba 023698 call store_contw 
+0x59bb 023699 branch le_send_auto_len_by_mem 
+:      023703 le_parse_att_read_request:
+0x59bc 023704 fetcht 2 ,mem_le_att_handle 
+0x59bd 023705 fetch 1 ,mem_le_configuration 
+0x59be 023706 bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
+:      023708 le_send_att_read_response:
+0x59bf 023709 call le_att_get_handle_ptr 
+0x59c0 023710 branch le_send_att_error_response_notfound ,blank 
+0x59c1 023711 increase -2 ,contr 
+0x59c2 023712 ifetch 2 ,contr 
+0x59c3 023713 arg uuid_chrctr_device_name ,temp 
+0x59c4 023714 isub temp ,null 
+0x59c5 023715 branch le_send_device_name ,zero 
+0x59c6 023716 ifetch 1 ,contr 
+0x59c7 023717 sub pdata ,22 ,null 
+0x59c8 023718 branch le_send_att_read_response_less ,positive 
+0x59c9 023719 force 22 ,pdata 
+:      023720 le_send_att_read_response_less:
+0x59ca 023721 copy pdata ,regc 
+0x59cb 023722 call store_contr 
+0x59cc 023723 add regc ,1 ,rega 
+0x59cd 023724 call le_fifo_malloc_tx_l2cap_gatt 
+0x59ce 023725 setarg attop_read_response 
+0x59cf 023726 istore 1 ,contw 
+0x59d0 023727 copy regc ,loopcnt 
+0x59d1 023728 call get_contr 
+0x59d2 023729 branch memcpy 
+:      023731 le_send_device_name:
+0x59d3 023732 call store_contr 
+0x59d4 023733 fetch 1 ,mem_le_name_len 
+0x59d5 023734 add pdata ,1 ,rega 
+0x59d6 023735 call le_fifo_malloc_tx_l2cap_gatt 
+0x59d7 023736 setarg attop_read_response 
+0x59d8 023737 istore 1 ,contw 
+0x59d9 023738 fetch 1 ,mem_le_name_len 
+0x59da 023739 copy pdata ,loopcnt 
+0x59db 023740 arg mem_le_name ,contr 
+0x59dc 023741 branch memcpy 
+:      023744 le_send_att_read_response_check_auth:
+0x59dd 023745 fetch 2 ,mem_le_pairing_handle 
+0x59de 023746 isub temp ,null 
+0x59df 023747 nbranch le_send_att_read_response ,zero 
+0x59e0 023749 call le_check_encrypt_state 
+0x59e1 023750 nbranch le_send_att_read_response ,user 
+0x59e2 023751 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x59e3 023752 branch le_send_att_error_response 
+:      023755 le_parse_att_read_blob_request:
+0x59e4 023756 ifetch 2 ,contr 
+0x59e5 023757 store 2 ,mem_le_att_offset 
+:      023758 le_send_att_read_blob_response:
+0x59e6 023759 arg 20 ,rega 
+0x59e7 023760 call le_fifo_malloc_tx_l2cap_gatt 
+0x59e8 023761 setarg attop_read_blob_response 
+0x59e9 023762 istore 1 ,contw 
+0x59ea 023763 fetch 2 ,mem_le_att_offset 
+0x59eb 023764 iforce rega 
+0x59ec 023765 fetcht 2 ,mem_le_att_handle 
+0x59ed 023766 call le_att_get_handle_ptr 
+0x59ee 023767 branch le_send_att_error_response_notfound ,blank 
+0x59ef 023768 ifetch 1 ,contr 
+0x59f0 023769 isub rega ,loopcnt 
+0x59f1 023770 nbranch le_send_att_error_response_notfound ,positive 
+0x59f2 023771 sub loopcnt ,22 ,null 
+0x59f3 023772 branch le_send_att_read_blob_response_less ,positive 
+0x59f4 023773 force 22 ,loopcnt 
+:      023774 le_send_att_read_blob_response_less:
+0x59f5 023775 deposit rega 
+0x59f6 023776 iadd contr ,contr 
+0x59f7 023777 call memcpy_fast 
+0x59f8 023778 call store_contw 
+0x59f9 023779 branch le_send_auto_len_by_mem 
+:      023782 le_parse_att_read_by_group_type_request:
+0x59fa 023783 call le_get_search_handle_start_end_common 
+0x59fb 023784 call le_get_search_att_type 
+0x59fc 023785 branch le_send_att_read_by_group_type_response 
+:      023790 le_send_att_read_by_group_type_response:
+0x59fd 023791 arg 2 ,timeup 
+0x59fe 023792 fetcht 2 ,mem_le_search_handle_start 
+0x59ff 023796 storet 2 ,mem_temp 
+0x5a00 023797 call le_init_attlist_search 
+0x5a01 023798 call le_att_get_handle_ptr2 
+0x5a02 023799 increase -2 ,contr 
+0x5a03 023800 copy contr ,pdata 
+0x5a04 023801 store 2 ,mem_le_cur_attlist_start_ptr 
+:      023802 le_send_att_read_by_group_type_response_loop:
+0x5a05 023803 call le_att_check_handle_end 
+0x5a06 023804 nbranch le_send_att_read_by_group_type_end0 ,positive 
+0x5a07 023805 fetcht 2 ,mem_temp 
+0x5a08 023806 call le_att_get_handle_info_from_ptr 
+0x5a09 023807 beq 1 ,le_send_att_read_by_group_type_end1 
+0x5a0a 023809 call le_att_same_type 
+0x5a0b 023810 nbranch le_send_att_read_by_group_type_next_handle ,zero 
+0x5a0c 023811 copy timeup ,pdata 
+0x5a0d 023812 beq 0 ,le_send_att_read_by_group_type_end1 
+0x5a0e 023813 nbranch le_send_att_read_by_group_type_store_write_record ,user 
+0x5a0f 023814 disable user 
+0x5a10 023816 arg 20 ,rega 
+0x5a11 023817 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a12 023818 setarg attop_read_by_group_type_response 
+0x5a13 023819 istore 1 ,contw 
+0x5a14 023820 fetch 1 ,mem_le_curr_att_len 
+0x5a15 023821 increase 4 ,pdata 
+0x5a16 023822 istore 1 ,contw 
+0x5a17 023823 call store_contw 
+0x5a18 023824 branch le_send_att_read_by_group_type_store_record 
+:      023825 le_send_att_read_by_group_type_store_write_record:
+0x5a19 023826 fetch 1 ,mem_le_curr_att_len 
+0x5a1a 023827 beq 16 ,le_send_att_read_by_group_type_end1 
+0x5a1b 023828 fetch 2 ,mem_temp 
+0x5a1c 023829 increase -1 ,pdata 
+0x5a1d 023830 store 2 ,mem_le_cur_handle_end 
+0x5a1e 023831 call le_write_att_record 
+:      023832 le_send_att_read_by_group_type_store_record:
+0x5a1f 023833 fetch 2 ,mem_temp 
+0x5a20 023834 store 2 ,mem_le_cur_handle_start 
+0x5a21 023835 call le_store_att_record 
+0x5a22 023836 increase -1 ,timeup 
+:      023838 le_send_att_read_by_group_type_next_handle:
+0x5a23 023839 call le_att_next_handle 
+0x5a24 023840 branch le_send_att_read_by_group_type_response_loop 
+:      023842 le_send_att_read_by_group_type_end0:
+0x5a25 023843 fetch 2 ,mem_temp 
+0x5a26 023844 store 2 ,mem_le_cur_handle_end 
+0x5a27 023845 branch le_send_att_read_by_group_type_end_common 
+:      023846 le_send_att_read_by_group_type_end1:
+0x5a28 023847 fetch 2 ,mem_temp 
+0x5a29 023848 increase -1 ,pdata 
+0x5a2a 023849 store 2 ,mem_le_cur_handle_end 
+0x5a2b 023850 branch le_send_att_read_by_group_type_end_common 
+:      023851 le_send_att_read_by_group_type_end_common:
+0x5a2c 023852 branch le_send_att_error_response_notfound ,user 
+0x5a2d 023853 call le_write_att_record 
+0x5a2e 023854 branch le_send_auto_len_by_mem 
+:      023859 le_parse_att_write_request:
+0x5a2f 023860 copy contr ,rega 
+0x5a30 023861 fetch 2 ,mem_le_l2cap_size 
+0x5a31 023862 add pdata ,-3 ,regb 
+0x5a32 023863 call le_writeatt_cb 
+:      023864 le_send_att_write_response_check_auth:
+0x5a33 023865 fetch 1 ,mem_le_configuration 
+0x5a34 023866 bbit0 bit_ble_write_auth ,le_send_att_write_response 
+0x5a35 023868 fetcht 2 ,mem_le_att_handle 
+0x5a36 023869 fetch 2 ,mem_le_pairing_handle 
+0x5a37 023870 isub temp ,null 
+0x5a38 023871 nbranch le_send_att_write_response ,zero 
+0x5a39 023872 call le_check_encrypt_state 
+0x5a3a 023873 nbranch le_send_att_write_response ,user 
+0x5a3b 023874 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x5a3c 023875 branch le_send_att_error_response 
+:      023877 le_send_att_write_response:
+0x5a3d 023878 force 1 ,rega 
+0x5a3e 023879 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a3f 023880 setarg attop_write_response 
+0x5a40 023881 istore 1 ,contw 
+0x5a41 023882 rtn 
+:      023884 le_check_encrypt_state:
+0x5a42 023885 call disable_user 
+0x5a43 023886 fetch 1 ,mem_le_pairing_mode 
+0x5a44 023887 rtneq le_pairing_mode_none 
+0x5a45 023888 fetch 1 ,mem_context 
+0x5a46 023889 rtnbit1 lestate_encryption 
+0x5a47 023890 branch enable_user 
+:      023893 le_parse_att_prepare_write_request:
+0x5a48 023894 add contr ,2 ,rega 
+0x5a49 023895 fetch 2 ,mem_le_l2cap_size 
+0x5a4a 023896 add pdata ,-5 ,regb 
+0x5a4b 023897 call le_writeatt_cb 
+0x5a4c 023898 branch le_send_att_prepare_write_response 
+:      023901 le_send_att_prepare_write_response:
+0x5a4d 023902 fetch 2 ,mem_le_l2cap_size 
+0x5a4e 023903 copy pdata ,rega 
+0x5a4f 023904 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a50 023905 setarg attop_prepare_write_response 
+0x5a51 023906 istore 1 ,contw 
+0x5a52 023907 fetch 2 ,mem_le_att_handle 
+0x5a53 023908 istore 2 ,contw 
+0x5a54 023909 fetch 2 ,mem_le_l2cap_size 
+0x5a55 023910 add pdata ,-5 ,loopcnt 
+0x5a56 023911 fetch 2 ,mem_le_payload_ptr 
+0x5a57 023912 add pdata ,7 ,contr 
+0x5a58 023913 ifetch 2 ,contr 
+0x5a59 023914 istore 2 ,contw 
+0x5a5a 023915 branch memcpy_fast 
+:      023919 le_parse_att_execute_write_request:
+:      023921 le_send_att_execute_write_response:
+0x5a5b 023922 force 1 ,rega 
+0x5a5c 023923 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a5d 023924 setarg attop_execute_write_response 
+0x5a5e 023925 istore 1 ,contw 
+0x5a5f 023926 rtn 
+:      023930 le_parse_att_write_command:
+0x5a60 023931 copy contr ,rega 
+0x5a61 023932 fetch 2 ,mem_le_l2cap_size 
+0x5a62 023933 add pdata ,-3 ,regb 
+0x5a63 023934 branch le_writeatt_cb 
+:      023939 le_att_malloc_tx_notify:
+0x5a64 023940 copy temp ,regc 
+0x5a65 023941 increase 3 ,rega 
+0x5a66 023942 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a67 023943 increase -3 ,rega 
+0x5a68 023944 setarg attop_handle_value_notification 
+0x5a69 023945 istore 1 ,contw 
+0x5a6a 023946 copy regc ,temp 
+0x5a6b 023947 istoret 2 ,contw 
+0x5a6c 023948 rtn 
+:      023951 le_att_malloc_tx_indication:
+0x5a6d 023952 copy temp ,regc 
+0x5a6e 023953 increase 3 ,rega 
+0x5a6f 023954 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a70 023955 increase -3 ,rega 
+0x5a71 023956 setarg attop_handle_value_indication 
+0x5a72 023957 istore 1 ,contw 
+0x5a73 023958 copy regc ,temp 
+0x5a74 023959 istoret 2 ,contw 
+0x5a75 023960 rtn 
+:      023965 le_send_att_error_response_notfound:
+0x5a76 023966 jam att_err_attribute_not_found ,mem_le_err_code 
+:      023967 le_send_att_error_response:
+0x5a77 023968 force 5 ,rega 
+0x5a78 023969 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a79 023970 setarg attop_error_response 
+0x5a7a 023971 istore 1 ,contw 
+0x5a7b 023972 fetch 1 ,mem_le_att_opcode 
+0x5a7c 023973 istore 1 ,contw 
+0x5a7d 023974 fetch 2 ,mem_le_att_handle 
+0x5a7e 023975 istore 2 ,contw 
+0x5a7f 023976 fetch 1 ,mem_le_err_code 
+0x5a80 023977 istore 1 ,contw 
+0x5a81 023978 rtn 
+:      023981 le_fifo_malloc_tx_l2cap_gatt:
+0x5a82 023982 force le_l2cap_cid_att ,regb 
+0x5a83 023983 branch le_fifo_malloc_tx_l2cap 
+:      023986 le_att_next_handle:
+0x5a84 023987 fetcht 2 ,mem_temp 
+0x5a85 023988 increase 1 ,temp 
+0x5a86 023989 storet 2 ,mem_temp 
+0x5a87 023990 rtn 
+:      023992 le_att_check_handle_end:
+0x5a88 023993 fetcht 2 ,mem_temp 
+0x5a89 023994 fetch 2 ,mem_le_search_handle_end 
+0x5a8a 023995 isub temp ,null 
+0x5a8b 023996 rtn 
+:      023999 le_att_same_type:
+0x5a8c 024000 fetcht 1 ,mem_le_search_att_type_length 
+0x5a8d 024001 arg mem_le_search_att_type ,rega 
+:      024002 le_att_check_same_common:
+0x5a8e 024003 fetch 1 ,mem_le_cur_uuid_length 
+0x5a8f 024004 copy pdata ,loopcnt 
+0x5a90 024005 isub temp ,null 
+0x5a91 024006 nrtn zero 
+0x5a92 024007 arg mem_le_cur_uuid ,regb 
+0x5a93 024008 branch string_compare 
+:      024010 le_att_same_uuid:
+0x5a94 024011 fetcht 1 ,mem_le_search_uuid_length 
+0x5a95 024012 arg mem_le_search_uuid ,rega 
+0x5a96 024013 branch le_att_check_same_common 
+:      024016 le_store_att_record:
+0x5a97 024017 fetch 1 ,mem_le_curr_att_len 
+0x5a98 024018 store 1 ,mem_tmp_buffer 
+0x5a99 024019 copy pdata ,loopcnt 
+0x5a9a 024020 call get_contr 
+0x5a9b 024021 branch memcpy_fast 
+:      024024 le_write_att_record:
+0x5a9c 024025 call get_contw 
+0x5a9d 024026 fetch 2 ,mem_le_cur_handle_start 
+0x5a9e 024027 istore 2 ,contw 
+0x5a9f 024028 fetch 2 ,mem_le_cur_handle_end 
+0x5aa0 024029 istore 2 ,contw 
+:      024030 le_write_att_record_common:
+0x5aa1 024031 fetch 1 ,mem_tmp_buffer 
+0x5aa2 024032 copy pdata ,loopcnt 
+0x5aa3 024033 call memcpy_fast 
+0x5aa4 024034 branch store_contw 
+:      024038 le_send_auto_len_by_mem:
+0x5aa5 024039 call get_contw 
+0x5aa6 024040 call le_fifo_get_last_att_ptr 
+0x5aa7 024041 copy contw ,pdata 
+0x5aa8 024042 isub contr ,rega 
+0x5aa9 024043 call le_fifo_get_last_l2cap_ptr 
+0x5aaa 024044 copy rega ,pdata 
+0x5aab 024045 istore 2 ,contr 
+0x5aac 024046 increase 4 ,rega 
+0x5aad 024047 call le_fifo_get_last_tx_ptr 
+0x5aae 024048 copy rega ,pdata 
+0x5aaf 024049 istore 1 ,contr 
+0x5ab0 024050 rtn 
+:      024053 le_get_search_handle_start_end_common:
+0x5ab1 024054 rshift8 pdata ,pdata 
+0x5ab2 024055 store 2 ,mem_le_search_handle_start 
+0x5ab3 024056 ifetch 2 ,contr 
+0x5ab4 024057 store 2 ,mem_le_search_handle_end 
+0x5ab5 024058 rtn 
+:      024063 le_parse_signaling:
+0x5ab6 024064 ifetch 1 ,contr 
+0x5ab7 024065 ifetcht 1 ,contr 
+0x5ab8 024066 ifetcht 2 ,contr 
+0x5ab9 024067 beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
+0x5aba 024068 rtn 
+:      024069 le_l2cap_parse_conn_parameter_update_rsp:
+0x5abb 024070 ifetch 2 ,contr 
+0x5abc 024071 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x5abd 024072 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
+0x5abe 024073 branch ui_ipc_send_event 
+:      024079 le_l2cap_tx_update_req:
+0x5abf 024080 arg 0x0c ,rega 
+0x5ac0 024081 arg l2cap_connection_parameter_update_request ,regc 
+0x5ac1 024082 call le_fifo_malloc_tx_l2cap_signaling 
+0x5ac2 024083 setarg 0x08 
+0x5ac3 024084 istore 2 ,contw 
+0x5ac4 024085 fetch 8 ,mem_le_interval_min 
+0x5ac5 024086 istore 8 ,contw 
+0x5ac6 024087 rtn 
+:      024091 le_fifo_malloc_tx_l2cap_signaling:
+0x5ac7 024092 call le_l2cap_update_signaling_identifier 
+0x5ac8 024093 arg le_l2cap_cid_signal ,regb 
+0x5ac9 024094 call le_fifo_malloc_tx_l2cap 
+0x5aca 024095 copy regc ,pdata 
+0x5acb 024096 istore 1 ,contw 
+0x5acc 024097 fetch 1 ,mem_le_signaling_identifier 
+0x5acd 024098 istore 1 ,contw 
+0x5ace 024099 rtn 
+:      024102 le_l2cap_update_signaling_identifier:
+0x5acf 024103 fetch 1 ,mem_le_signaling_identifier 
+0x5ad0 024105 pincrease 1 
+0x5ad1 024106 store 1 ,mem_le_signaling_identifier 
+0x5ad2 024107 rtnne 0 
+:      024109 le_l2cap_reset_signaling_identifier:
+0x5ad3 024110 jam 1 ,mem_le_signaling_identifier 
+0x5ad4 024111 rtn 
+:      024116 le_pairing_mode_init:
+0x5ad5 024117 fetch 1 ,mem_le_pairing_mode 
+0x5ad6 024118 beq le_pairing_mode_none ,le_set_no_pairing 
+0x5ad7 024119 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
+0x5ad8 024120 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
+0x5ad9 024121 beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
+0x5ada 024122 beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
+0x5adb 024123 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
+0x5adc 024124 rtn 
+:      024126 le_set_pairing_mode_secure_justwork:
+0x5add 024127 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ade 024128 branch le_set_noinputnooutput 
+:      024129 le_set_pairing_mode_secure_numeric:
+0x5adf 024130 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae0 024131 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x5ae1 024132 rtn 
+:      024133 le_set_pairing_mode_secure_passkey:
+0x5ae2 024134 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae3 024135 branch le_set_displayonly 
+:      024136 le_set_no_pairing:
+0x5ae4 024137 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      024138 le_set_noinputnooutput:
+0x5ae5 024139 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x5ae6 024140 rtn 
+:      024141 le_set_pairing_mode_lagacy_just_work:
+0x5ae7 024142 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x5ae8 024143 branch le_set_noinputnooutput 
+:      024144 le_set_pairing_mode_lagacy_passkey:
+0x5ae9 024145 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      024146 le_set_displayonly:
+0x5aea 024147 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x5aeb 024148 rtn 
+:      024151 le_secure_connection_enable:
+0x5aec 024152 fetch 1 ,mem_le_pres_auth 
+0x5aed 024153 set1 le_auth_secure_connection_pairing_bit ,pdata 
+0x5aee 024154 store 1 ,mem_le_pres_auth 
+0x5aef 024155 rtn 
+:      024156 le_secure_connection_disable:
+0x5af0 024157 fetch 1 ,mem_le_pres_auth 
+0x5af1 024158 set0 le_auth_secure_connection_pairing_bit ,pdata 
+0x5af2 024159 store 1 ,mem_le_pres_auth 
+0x5af3 024160 rtn 
+:      024162 le_parse_smp:
+0x5af4 024163 ifetch 1 ,contr 
+0x5af5 024164 beq smp_pairing_request ,le_parse_smp_pairing_request 
+0x5af6 024166 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
+0x5af7 024167 beq smp_pairing_random ,le_parse_smp_pairing_random 
+0x5af8 024168 beq smp_pairing_failed ,le_parse_smp_pairing_failed 
+0x5af9 024169 beq smp_encryption_information ,le_parse_smp_encryption_information 
+0x5afa 024170 beq smp_master_identification ,le_parse_smp_master_identification 
+0x5afb 024171 beq smp_identity_information ,le_parse_smp_identity_information 
+0x5afc 024172 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
+0x5afd 024173 beq smp_signing_information ,le_parse_smp_signing_information 
+0x5afe 024174 beq smp_security_request ,le_parse_smp_security_request 
+0x5aff 024175 beq smp_pairing_public_key ,le_parse_smp_public_key 
+0x5b00 024176 beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
+0x5b01 024177 rtn 
+:      024181 le_send_smp_security_request:
+0x5b02 024182 force 2 ,rega 
+0x5b03 024183 call le_fifo_malloc_tx_l2cap_smp 
+0x5b04 024184 setarg smp_security_request 
+0x5b05 024185 istore 1 ,contw 
+0x5b06 024186 fetch 1 ,mem_le_pres_auth 
+0x5b07 024187 istore 1 ,contw 
+0x5b08 024188 rtn 
+:      024190 le_parse_smp_pairing_request:
+0x5b09 024191 store 1 ,mem_le_preq 
+0x5b0a 024192 ifetch 6 ,contr 
+0x5b0b 024193 istore 6 ,contw 
+0x5b0c 024194 fetch 1 ,mem_le_pairing_mode 
+0x5b0d 024195 beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
+0x5b0e 024196 call le_send_smp_pairing_response 
+0x5b0f 024197 call le_check_master_support_secure_connect 
+0x5b10 024198 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
+0x5b11 024199 fetch 1 ,mem_le_preq_iocap 
+0x5b12 024200 beq flag_iocap_displayonly ,le_set_tk_0 
+0x5b13 024201 beq flag_iocap_displayyesno ,le_set_tk_0 
+0x5b14 024202 beq flag_iocap_noinputnooutput ,le_set_tk_0 
+0x5b15 024203 fetch 1 ,mem_le_pairing_mode 
+0x5b16 024204 beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
+0x5b17 024205 rtneq le_pairing_mode_secure_connect_passkey 
+:      024206 le_set_tk_0:
+0x5b18 024207 arg 0 ,pdata 
+0x5b19 024208 store 4 ,mem_le_tk 
+0x5b1a 024209 rtn 
+:      024211 le_parse_smp_pairing_req_passkey:
+0x5b1b 024212 fetch 1 ,mem_le_configuration 
+0x5b1c 024213 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
+:      024214 le_genernate_tk:
+0x5b1d 024215 arg mem_le_tk ,rega 
+0x5b1e 024216 copy rega ,contw 
+0x5b1f 024217 arg 3 ,loopcnt 
+0x5b20 024218 call generate_random_loop 
+0x5b21 024219 fetch 2 ,mem_le_tk + 2 
+0x5b22 024220 and_into 0x7 ,pdata 
+0x5b23 024221 store 2 ,mem_le_tk + 2 
+:      024222 le_parse_smp_pairing_req_fixed_passkey:
+0x5b24 024223 jam bt_evt_le_tk_generate ,mem_fifo_temp 
+0x5b25 024224 branch ui_ipc_send_event 
+:      024226 le_check_master_support_secure_connect:
+0x5b26 024227 fetch 1 ,mem_le_preq_auth 
+0x5b27 024228 rtnbit1 le_auth_secure_connection_pairing_bit 
+0x5b28 024229 fetch 1 ,mem_le_pairing_mode 
+0x5b29 024230 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5b2a 024231 branch app_ble_disconnect 
+:      024233 le_send_smp_pairing_response:
+0x5b2b 024234 force 7 ,rega 
+0x5b2c 024235 call le_fifo_malloc_tx_l2cap_smp 
+0x5b2d 024236 fetch 7 ,mem_le_pres 
+0x5b2e 024237 istore 7 ,contw 
+0x5b2f 024238 rtn 
+:      024241 le_parse_smp_pairing_confirm:
+0x5b30 024242 copy contr ,rega 
+0x5b31 024243 fetch 1 ,mem_le_pairing_mode 
+0x5b32 024244 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
+0x5b33 024245 copy rega ,contr 
+0x5b34 024246 arg mem_le_rconfirm ,contw 
+0x5b35 024247 call memcpy16 
+0x5b36 024248 branch le_send_smp_pairing_confirm 
+:      024249 le_parse_smp_pairing_confirm_secure_passkey:
+0x5b37 024250 copy rega ,contr 
+0x5b38 024251 arg mem_le_rconfirm ,contw 
+0x5b39 024252 call memcpy16 
+0x5b3a 024253 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5b3b 024254 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
+0x5b3c 024255 rtn 
+:      024258 le_send_smp_pairing_confirm:
+0x5b3d 024259 fetch 1 ,mem_le_pairing_mode 
+0x5b3e 024260 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
+0x5b3f 024261 call generate_confirm 
+0x5b40 024262 force 17 ,rega 
+0x5b41 024263 call le_fifo_malloc_tx_l2cap_smp 
+0x5b42 024264 setarg smp_pairing_confirm 
+0x5b43 024265 istore 1 ,contw 
+0x5b44 024266 branch store_aes_result 
+:      024269 le_send_smp_pairing_confirm_sc:
+0x5b45 024270 arg mem_le_srand ,contw 
+0x5b46 024271 call generate_random 
+0x5b47 024272 call function_f4_cb 
+0x5b48 024273 force 17 ,rega 
+0x5b49 024274 call le_fifo_malloc_tx_l2cap_smp 
+0x5b4a 024275 setarg smp_pairing_confirm 
+0x5b4b 024276 istore 1 ,contw 
+0x5b4c 024277 branch load_inverse_result 
+:      024281 le_parse_smp_pairing_random:
+0x5b4d 024282 copy contr ,rega 
+0x5b4e 024283 fetch 1 ,mem_le_pairing_mode 
+0x5b4f 024284 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
+0x5b50 024285 copy rega ,contr 
+0x5b51 024286 call authenticate_rconfirm 
+0x5b52 024287 branch le_parse_smp_pairing_random_success ,zero 
+:      024288 le_send_pairing_confirm_value_failed:
+0x5b53 024289 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
+:      024290 le_send_pairing_failed:
+0x5b54 024291 force 2 ,rega 
+0x5b55 024292 call le_fifo_malloc_tx_l2cap_smp 
+0x5b56 024293 setarg smp_pairing_failed 
+0x5b57 024294 istore 1 ,contw 
+0x5b58 024295 fetch 1 ,mem_le_ll_pairing_fail_reason 
+0x5b59 024296 istore 1 ,contw 
+:      024297 le_parse_smp_pairing_failed:
+0x5b5a 024298 force smp_pairing_timer ,queue 
+0x5b5b 024299 call timer_stop 
+0x5b5c 024300 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5b5d 024301 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
+0x5b5e 024302 branch ui_ipc_send_event 
+:      024304 le_smp_pairing_fail_reason_not_support_pairing:
+0x5b5f 024305 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
+0x5b60 024306 branch le_send_pairing_failed 
+:      024309 le_parse_smp_pairing_random_sc:
+0x5b61 024310 arg mem_le_mrand ,contw 
+0x5b62 024311 copy rega ,contr 
+0x5b63 024312 call memcpy16 
+0x5b64 024313 fetch 1 ,mem_le_pairing_mode 
+0x5b65 024314 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
+0x5b66 024315 call function_g2 
+0x5b67 024318 call le_send_smp_pairing_random 
+0x5b68 024319 fetch 1 ,mem_le_pairing_mode 
+0x5b69 024320 rtnne le_pairing_mode_secure_connect_numeric 
+0x5b6a 024321 jam bt_evt_le_gkey_generate ,mem_fifo_temp 
+0x5b6b 024322 branch ui_ipc_send_event 
+:      024324 le_parse_smp_pairing_random_sc_passkey:
+0x5b6c 024325 call function_f4_ca 
+0x5b6d 024326 arg mem_aes_cmac_temp ,contw 
+0x5b6e 024327 call load_inverse_result 
+0x5b6f 024328 arg mem_aes_cmac_temp ,rega 
+0x5b70 024329 arg mem_le_rconfirm ,regb 
+0x5b71 024330 arg 16 ,loopcnt 
+0x5b72 024331 call string_compare 
+0x5b73 024332 nbranch le_send_pairing_confirm_value_failed ,zero 
+0x5b74 024333 branch le_send_smp_pairing_random 
+:      024335 le_parse_smp_pairing_random_success:
+0x5b75 024336 call generate_stk 
+0x5b76 024337 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5b77 024338 call ui_ipc_send_event 
+0x5b78 024339 jam 1 ,mem_ltk_exists 
+0x5b79 024340 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+:      024342 le_send_smp_pairing_random:
+0x5b7a 024343 force 17 ,rega 
+0x5b7b 024344 call le_fifo_malloc_tx_l2cap_smp 
+0x5b7c 024345 setarg smp_pairing_random 
+0x5b7d 024346 istore 1 ,contw 
+0x5b7e 024347 arg mem_le_srand ,contr 
+0x5b7f 024348 branch memcpy16 
+:      024350 le_parse_smp_encryption_information:
+0x5b80 024351 arg mem_le_peer_ltk ,contw 
+0x5b81 024352 branch memcpy16 
+:      024354 le_send_smp_encryption_information:
+0x5b82 024355 force 17 ,rega 
+0x5b83 024356 call le_fifo_malloc_tx_l2cap_smp 
+0x5b84 024357 setarg smp_encryption_information 
+0x5b85 024358 istore 1 ,contw 
+0x5b86 024359 fetch 1 ,mem_le_configuration 
+0x5b87 024360 bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
+0x5b88 024361 arg mem_le_ltk ,contr 
+0x5b89 024362 branch memcpy16 
+:      024364 le_send_fixed_ltk:
+0x5b8a 024365 arg mem_le_fixed_ltk ,contr 
+0x5b8b 024366 branch memcpy16 
+:      024369 le_send_smp_master_identification:
+0x5b8c 024370 arg mem_le_ediv ,contw 
+0x5b8d 024371 force 10 ,loopcnt 
+0x5b8e 024372 call generate_random_loop 
+0x5b8f 024373 force 11 ,rega 
+0x5b90 024374 call le_fifo_malloc_tx_l2cap_smp 
+0x5b91 024375 setarg smp_master_identification 
+0x5b92 024376 istore 1 ,contw 
+0x5b93 024377 fetch 2 ,mem_le_ediv 
+0x5b94 024378 istore 2 ,contw 
+0x5b95 024379 fetch 8 ,mem_le_rand 
+0x5b96 024380 istore 8 ,contw 
+0x5b97 024381 rtn 
+:      024383 le_send_smp_identity_information:
+0x5b98 024384 force 17 ,rega 
+0x5b99 024385 call le_fifo_malloc_tx_l2cap_smp 
+0x5b9a 024386 setarg smp_identity_information 
+0x5b9b 024387 istore 1 ,contw 
+0x5b9c 024388 setarg 0 
+0x5b9d 024389 istore 8 ,contw 
+0x5b9e 024390 istore 8 ,contw 
+0x5b9f 024391 rtn 
+:      024394 le_send_smp_identity_address_information:
+0x5ba0 024395 force 8 ,rega 
+0x5ba1 024396 call le_fifo_malloc_tx_l2cap_smp 
+0x5ba2 024397 setarg smp_identity_address_information 
+0x5ba3 024398 istore 1 ,contw 
+0x5ba4 024399 fetch 1 ,mem_le_conn_own_addr_type 
+0x5ba5 024400 istore 1 ,contw 
+0x5ba6 024401 fetch 6 ,mem_le_lap 
+0x5ba7 024402 istore 6 ,contw 
+0x5ba8 024403 rtn 
+:      024406 le_send_pairing_fail_unspecified_reason:
+0x5ba9 024407 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
+0x5baa 024408 branch le_send_pairing_failed 
+:      024410 le_check_init_key_distribution:
+0x5bab 024411 fetch 1 ,mem_le_pres_init_key_distribution 
+0x5bac 024412 fetcht 1 ,mem_le_pres_init_key_distribution 
+0x5bad 024413 iand temp ,pdata 
+0x5bae 024414 rtn 
+:      024416 le_parse_smp_identity_information:
+0x5baf 024417 arg mem_le_irk ,contw 
+0x5bb0 024418 call memcpy16 
+0x5bb1 024419 call le_check_init_key_distribution 
+0x5bb2 024420 isolate0 le_initator_irk_bit ,pdata 
+0x5bb3 024421 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bb4 024422 fetch 1 ,mem_device_option 
+0x5bb5 024423 rtnne dvc_op_module 
+0x5bb6 024424 call le_check_master_addr_type 
+0x5bb7 024425 nrtn user 
+0x5bb8 024426 branch app_ble_store_reconn_info 
+:      024429 le_check_master_addr_type:
+0x5bb9 024430 call disable_user 
+0x5bba 024431 fetch 1 ,mem_le_conn_peer_addr_type 
+0x5bbb 024432 rtneq master_public_addr 
+0x5bbc 024433 fetch 1 ,mem_le_plap + 5 
+0x5bbd 024434 compare 0xc0 ,pdata ,0xc0 
+0x5bbe 024435 rtn true 
+0x5bbf 024436 branch enable_user 
+:      024438 le_parse_smp_identity_address_information:
+0x5bc0 024439 call le_check_init_key_distribution 
+0x5bc1 024440 isolate0 le_initator_irk_bit ,pdata 
+0x5bc2 024441 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bc3 024442 rtn 
+:      024444 le_parse_smp_master_identification:
+:      024445 le_parse_smp_signing_information:
+:      024446 le_parse_smp_security_request:
+0x5bc4 024447 rtn 
+:      024449 le_parse_smp_public_key:
+0x5bc5 024450 arg mem_le_pubkey_remote_x_256 ,contw 
+0x5bc6 024451 call memcpy64 
+0x5bc7 024452 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bc8 024453 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
+0x5bc9 024454 rtn 
+:      024456 le_parse_smp_dhkey_check:
+0x5bca 024457 arg mem_sp_confirm_remote ,contw 
+0x5bcb 024458 call memcpy16 
+0x5bcc 024459 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
+0x5bcd 024460 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bce 024461 rtn 
+:      024463 le_send_smp_pairing_public_key:
+0x5bcf 024464 force 65 ,rega 
+0x5bd0 024465 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd1 024466 setarg smp_pairing_public_key 
+0x5bd2 024467 istore 1 ,contw 
+0x5bd3 024468 arg mem_le_pubkey_local_x_256 ,contr 
+0x5bd4 024469 branch memcpy64 
+:      024471 le_send_smp_pairing_dhkey_check:
+0x5bd5 024472 call function_f6_eb 
+0x5bd6 024473 force 17 ,rega 
+0x5bd7 024474 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd8 024475 setarg smp_pairing_dhkey_check 
+0x5bd9 024476 istore 1 ,contw 
+0x5bda 024477 branch load_inverse_result 
+:      024480 le_check_paring_time:
+0x5bdb 024481 fetch 1 ,mem_le_pairing_state 
+0x5bdc 024482 rtneq flag_le_pairing_end 
+0x5bdd 024483 arg flag_le_pairing_rcv_pairing_req ,temp 
+0x5bde 024484 isub temp ,null 
+0x5bdf 024485 nrtn positive 
+0x5be0 024486 arg smp_pairing_timer ,queue 
+0x5be1 024487 call timer_check 
+0x5be2 024488 nrtn blank 
+0x5be3 024489 branch le_send_pairing_fail_unspecified_reason 
+:      024491 le_pairing_sm:
+0x5be4 024492 bpatchx patch2f_0 ,mem_patch2f 
+0x5be5 024493 fetch 1 ,mem_le_pairing_state 
+0x5be6 024494 beq flag_le_pairing_null ,le_pairing_sm_null 
+0x5be7 024495 beq flag_le_pairing_start ,le_pairing_sm_start 
+0x5be8 024496 beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
+0x5be9 024497 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
+0x5bea 024498 beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
+0x5beb 024499 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
+0x5bec 024500 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
+0x5bed 024501 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
+0x5bee 024502 rtn 
+:      024504 le_pairing_sm_null:
+:      024505 le_pairing_sm_send_sec_req:
+0x5bef 024506 fetch 1 ,mem_le_enc_state 
+0x5bf0 024507 rtnne flag_le_send_start_enc_rsp 
+0x5bf1 024508 jam flag_le_enc_end ,mem_le_enc_state 
+0x5bf2 024509 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5bf3 024510 jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
+0x5bf4 024511 branch ui_ipc_send_event 
+:      024514 le_pairing_sm_start:
+0x5bf5 024515 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
+0x5bf6 024516 branch le_send_smp_security_request 
+:      024518 le_pairing_sm_rcv_pairing_req:
+0x5bf7 024519 jam flag_le_pairing_auth ,mem_le_pairing_state 
+0x5bf8 024520 setarg timer_smp_pairing_timeout 
+0x5bf9 024521 arg smp_pairing_timer ,queue 
+0x5bfa 024522 branch timer_init 
+:      024524 le_pairing_sm_after_auth:
+0x5bfb 024525 fetch 1 ,mem_le_enc_state 
+0x5bfc 024526 beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
+0x5bfd 024527 rtn 
+:      024529 le_pairing_sm_after_auth_start_enc:
+0x5bfe 024530 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
+0x5bff 024531 jam bt_evt_le_enc_info ,mem_fifo_temp 
+0x5c00 024532 call ui_ipc_send_event 
+0x5c01 024533 call le_send_smp_encryption_information 
+0x5c02 024534 fetch 1 ,mem_device_option 
+0x5c03 024535 rtnne dvc_op_module 
+0x5c04 024536 call le_check_master_addr_type 
+0x5c05 024537 rtn user 
+0x5c06 024538 branch app_ble_store_reconn_info 
+:      024541 le_pairng_sm_send_enc_information:
+0x5c07 024542 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
+0x5c08 024543 branch le_send_smp_master_identification 
+:      024545 le_pairng_sm_send_master_indentification:
+0x5c09 024546 fetch 1 ,mem_le_preq_resp_key_distribution 
+0x5c0a 024547 fetcht 1 ,mem_le_pres_resp_key_distribution 
+0x5c0b 024548 iand temp ,pdata 
+0x5c0c 024549 isolate0 le_initator_irk_bit ,pdata 
+0x5c0d 024550 branch le_parse_start_enc_rsp_after_auth_end ,true 
+0x5c0e 024551 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
+0x5c0f 024552 branch le_send_smp_identity_information 
+:      024554 le_pairng_sm_send_indentity_information:
+0x5c10 024555 call le_send_smp_identity_address_information 
+0x5c11 024556 branch le_parse_start_enc_rsp_after_auth_end 
+:      024559 le_parse_start_enc_rsp_after_auth_end:
+0x5c12 024560 force smp_pairing_timer ,queue 
+0x5c13 024561 call timer_stop 
+0x5c14 024562 jam flag_le_enc_end ,mem_le_enc_state 
+0x5c15 024563 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5c16 024564 jam bt_evt_le_pairing_complete ,mem_fifo_temp 
+0x5c17 024565 branch ui_ipc_send_event 
+:      024569 le_secure_connect_sm:
+0x5c18 024570 bpatchx patch2f_1 ,mem_patch2f 
+0x5c19 024571 fetch 1 ,mem_le_pairing_mode 
+0x5c1a 024572 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5c1b 024573 fetch 1 ,mem_le_secure_connect_flag 
+0x5c1c 024574 rtnne le_sp_flag_commit_256 
+0x5c1d 024575 jam sp_flag_standby ,mem_le_secure_connect_flag 
+0x5c1e 024576 fetch 1 ,mem_le_secure_connect_state 
+0x5c1f 024577 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
+0x5c20 024578 beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
+0x5c21 024579 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
+0x5c22 024580 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
+0x5c23 024581 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
+0x5c24 024582 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
+0x5c25 024583 rtn 
+:      024586 le_sc_sm_passkey_wait_confirm:
+0x5c26 024587 fetch 1 ,mem_authentication_passkey_times 
+0x5c27 024588 copy pdata ,queue 
+0x5c28 024589 increase 1 ,pdata 
+0x5c29 024590 store 1 ,mem_authentication_passkey_times 
+0x5c2a 024591 fetch 4 ,mem_le_tk 
+0x5c2b 024592 qisolate1 pdata 
+0x5c2c 024593 setarg 0x80 
+0x5c2d 024594 setflag true ,0 ,pdata 
+0x5c2e 024595 store 1 ,mem_passkey_1bit 
+0x5c2f 024596 branch le_sc_sm_ready_send_pairing_confirm 
+:      024598 le_sc_sm_wait_confirm_gkey:
+0x5c30 024599 fetch 1 ,mem_le_sc_confirm_gkey_flag 
+0x5c31 024600 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
+0x5c32 024601 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
+0x5c33 024602 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c34 024603 rtn 
+:      024605 le_sc_confirm_gkey_ok:
+0x5c35 024606 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5c36 024607 call ui_ipc_send_event 
+0x5c37 024608 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+0x5c38 024609 branch le_send_smp_pairing_dhkey_check 
+:      024611 le_sc_sm_receive_dhkey:
+0x5c39 024612 fetch 1 ,mem_sp_dhkey_invalid 
+0x5c3a 024613 beq sp_key_valid_256 ,le_dhkey_ready 
+0x5c3b 024614 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c3c 024615 rtn 
+:      024617 le_dhkey_ready:
+0x5c3d 024618 call function_f5 
+0x5c3e 024622 fetch 1 ,mem_le_pairing_mode 
+0x5c3f 024623 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
+0x5c40 024624 call le_set_tk_0 
+:      024625 le_dhkey_ready_common:
+0x5c41 024626 call function_f6_ea 
+0x5c42 024627 arg mem_aes_cmac_temp ,rega 
+0x5c43 024628 arg mem_sp_confirm_remote ,regb 
+0x5c44 024629 arg 16 ,loopcnt 
+0x5c45 024630 call string_compare 
+0x5c46 024631 branch le_dhkey_check_ok ,zero 
+:      024632 le_dhkey_check_fail:
+0x5c47 024633 jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
+0x5c48 024634 branch le_send_pairing_failed 
+:      024637 le_dhkey_check_ok:
+0x5c49 024638 call sp_calc_check_publickey_256 
+0x5c4a 024639 nbranch le_dhkey_check_fail ,zero 
+0x5c4b 024640 jam 1 ,mem_ltk_exists 
+0x5c4c 024641 fetch 1 ,mem_le_pairing_mode 
+0x5c4d 024642 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
+0x5c4e 024643 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
+0x5c4f 024644 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c50 024645 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
+0x5c51 024646 rtn 
+:      024648 le_sc_sm_send_public_key:
+0x5c52 024649 fetch 1 ,mem_le_pairing_mode 
+0x5c53 024650 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
+0x5c54 024651 jam 0 ,mem_passkey_1bit 
+:      024652 le_sc_sm_ready_send_pairing_confirm:
+0x5c55 024653 branch le_send_smp_pairing_confirm 
+:      024655 le_sc_sm_send_public_key_passkey:
+0x5c56 024659 jam 0 ,mem_authentication_passkey_times 
+0x5c57 024660 branch le_parse_smp_pairing_req_passkey 
+:      024663 le_sc_sm_receive_public_key:
+0x5c58 024664 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c59 024665 fetch 1 ,mem_le_sc_local_key_invalid 
+0x5c5a 024666 beq sp_key_valid_256 ,le_public_key_ready 
+0x5c5b 024668 rtn 
+:      024670 le_public_key_ready:
+0x5c5c 024671 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
+0x5c5d 024672 jam sp_key_invalid ,mem_sp_dhkey_invalid 
+0x5c5e 024673 branch sp_dhkey_calc_256 
+:      024675 le_sc_sm_wait_send_public_key:
+0x5c5f 024676 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c60 024677 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
+0x5c61 024678 branch le_send_smp_pairing_public_key 
+:      024682 le_fifo_malloc_tx_l2cap_smp:
+0x5c62 024683 force le_l2cap_cid_smp ,regb 
+0x5c63 024684 branch le_fifo_malloc_tx_l2cap 
+:      024688 le_parse_ll:
+0x5c64 024689 fetch 1 ,mem_le_rxbuf + 2 
+0x5c65 024690 beq ll_connection_update_req ,le_parse_connection_update_req 
+0x5c66 024691 beq ll_channel_map_req ,le_parse_channel_map_req 
+0x5c67 024692 beq ll_terminate_ind ,le_parse_terminate_ind 
+0x5c68 024693 beq ll_enc_req ,le_parse_enc_req 
+0x5c69 024694 beq ll_enc_rsp ,le_parse_enc_rsp 
+0x5c6a 024695 beq ll_start_enc_req ,le_parse_start_enc_req 
+0x5c6b 024696 beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
+0x5c6c 024697 beq ll_unknown_rsp ,le_parse_unknown_rsp 
+0x5c6d 024698 beq ll_feature_req ,le_parse_feature_req 
+0x5c6e 024699 beq ll_feature_rsp ,le_parse_feature_rsp 
+0x5c6f 024700 beq ll_pause_enc_req ,le_parse_pause_enc_req 
+0x5c70 024701 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
+0x5c71 024702 beq ll_version_ind ,le_parse_version_ind 
+0x5c72 024703 beq ll_reject_ind ,le_parse_reject_ind 
+0x5c73 024704 beq ll_ping_req ,le_parse_ping_req 
+0x5c74 024705 beq ll_ping_rsp ,le_parse_ping_rsp 
+0x5c75 024706 arg 2 ,rega 
+0x5c76 024707 arg ll_unknown_rsp ,regb 
+0x5c77 024708 call le_fifo_malloc_tx_ll 
+0x5c78 024709 fetch 1 ,mem_le_rxbuf + 2 
+0x5c79 024710 istore 1 ,contw 
+0x5c7a 024711 rtn 
+:      024714 le_parse_connection_update_req:
+0x5c7b 024715 ifetch 9 ,contr 
+0x5c7c 024716 store 9 ,mem_le_new_param 
+0x5c7d 024717 ifetch 2 ,contr 
+0x5c7e 024718 store 2 ,mem_le_instant 
+0x5c7f 024719 fetch 1 ,mem_le_state 
+0x5c80 024720 set1 lestate_update_param ,pdata 
+0x5c81 024721 store 1 ,mem_le_state 
+0x5c82 024722 rtn 
+:      024724 le_parse_channel_map_req:
+0x5c83 024725 ifetch 5 ,contr 
+0x5c84 024726 store 5 ,mem_le_new_map 
+0x5c85 024727 ifetch 2 ,contr 
+0x5c86 024728 store 2 ,mem_le_instant 
+0x5c87 024729 fetcht 2 ,mem_le_event_count 
+0x5c88 024730 isub temp ,null 
+0x5c89 024731 nbranch le_parse_terminate_ind ,positive 
+0x5c8a 024732 fetch 1 ,mem_le_state 
+0x5c8b 024733 set1 lestate_update_map ,pdata 
+0x5c8c 024734 store 1 ,mem_le_state 
+0x5c8d 024735 rtn 
+:      024738 le_parse_terminate_ind:
+0x5c8e 024739 setarg 20 
+0x5c8f 024740 store 2 ,mem_le_superto 
+0x5c90 024741 store 2 ,mem_le_init_superto 
+0x5c91 024742 rtn 
+:      024744 le_send_terminate_ind_user_terminated:
+0x5c92 024745 arg error_remote_user_terminated_connection ,regc 
+:      024748 le_send_terminate_ind:
+0x5c93 024749 arg 2 ,rega 
+0x5c94 024750 arg ll_terminate_ind ,regb 
+0x5c95 024751 call le_fifo_malloc_tx_ll 
+0x5c96 024752 copy regc ,pdata 
+0x5c97 024753 istore 1 ,contw 
+0x5c98 024754 rtn 
+:      024756 le_parse_feature_req:
+:      024758 le_send_feature_rsp:
+0x5c99 024759 arg 9 ,rega 
+0x5c9a 024760 arg ll_feature_rsp ,regb 
+0x5c9b 024761 call le_fifo_malloc_tx_ll 
+0x5c9c 024762 setarg param_le_features 
+0x5c9d 024763 istore 8 ,contw 
+0x5c9e 024764 rtn 
+:      024767 le_parse_version_ind:
+0x5c9f 024768 rtn master 
+:      024769 le_send_version_ind:
+0x5ca0 024770 arg 6 ,rega 
+0x5ca1 024771 arg ll_version_ind ,regb 
+0x5ca2 024772 call le_fifo_malloc_tx_ll 
+0x5ca3 024773 fetch 5 ,mem_lmp_version 
+0x5ca4 024774 istore 5 ,contw 
+0x5ca5 024775 rtn 
+:      024778 le_parse_ping_req:
+0x5ca6 024779 arg ll_ping_rsp ,regb 
+0x5ca7 024780 branch le_send_ll_one_lenth 
+:      024783 le_send_ll_one_lenth:
+0x5ca8 024784 arg 1 ,rega 
+0x5ca9 024785 branch le_fifo_malloc_tx_ll 
+:      024788 le_parse_enc_req:
+0x5caa 024789 ifetch 8 ,contr 
+0x5cab 024790 store 8 ,mem_le_rand 
+0x5cac 024791 ifetch 2 ,contr 
+0x5cad 024792 store 2 ,mem_le_ediv 
+0x5cae 024793 ifetch 8 ,contr 
+0x5caf 024794 store 8 ,mem_le_skdm 
+0x5cb0 024795 ifetch 4 ,contr 
+0x5cb1 024796 store 4 ,mem_le_ivm 
+0x5cb2 024797 call le_send_enc_rsp 
+0x5cb3 024798 bpatchx patch2f_2 ,mem_patch2f 
+0x5cb4 024799 fetch 1 ,mem_le_pairing_state 
+0x5cb5 024800 beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
+0x5cb6 024801 fetch 1 ,mem_le_configuration 
+0x5cb7 024802 bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
+0x5cb8 024803 fetch 1 ,mem_nv_data_number 
+0x5cb9 024804 ncall load_device_list_mode_4 ,blank 
+0x5cba 024805 fetch 1 ,mem_ltk_exists 
+0x5cbb 024806 beq 0 ,le_ltk_lost 
+:      024807 le_parse_enc_req_after_auth:
+0x5cbc 024808 jam flag_le_rcv_enc_start ,mem_le_enc_state 
+0x5cbd 024809 call le_send_start_enc_req 
+0x5cbe 024810 branch generate_sk 
+:      024812 le_parse_enc_req_fixed_ltk:
+0x5cbf 024813 jam 1 ,mem_ltk_exists 
+0x5cc0 024814 arg mem_le_fixed_ltk ,contr 
+0x5cc1 024815 arg mem_le_ltk ,contw 
+0x5cc2 024816 call memcpy16 
+0x5cc3 024817 branch le_parse_enc_req_after_auth 
+:      024820 le_ltk_lost:
+0x5cc4 024821 bpatchx patch2f_3 ,mem_patch2f 
+0x5cc5 024822 jam flag_le_enc_null ,mem_le_enc_state 
+0x5cc6 024823 jam flag_le_enc_null ,mem_le_pairing_state 
+0x5cc7 024824 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
+0x5cc8 024825 branch ui_ipc_send_event 
+:      024827 le_send_reject_ind:
+0x5cc9 024828 arg 2 ,rega 
+0x5cca 024829 arg ll_reject_ind ,regb 
+0x5ccb 024830 call le_fifo_malloc_tx_ll 
+0x5ccc 024831 setarg le_err_pin_or_key_missing 
+0x5ccd 024832 istore 1 ,contw 
+0x5cce 024833 rtn 
+:      024835 le_send_enc_rsp:
+0x5ccf 024836 arg mem_le_skds ,contw 
+0x5cd0 024837 force 8 ,loopcnt 
+0x5cd1 024838 call generate_random_loop 
+0x5cd2 024839 arg mem_le_ivs ,contw 
+0x5cd3 024840 force 4 ,loopcnt 
+0x5cd4 024841 call generate_random_loop 
+0x5cd5 024842 arg 13 ,rega 
+0x5cd6 024843 arg ll_enc_rsp ,regb 
+0x5cd7 024844 call le_fifo_malloc_tx_ll 
+0x5cd8 024845 fetch 8 ,mem_le_skds 
+0x5cd9 024846 istore 8 ,contw 
+0x5cda 024847 fetch 4 ,mem_le_ivs 
+0x5cdb 024848 istore 4 ,contw 
+0x5cdc 024849 rtn 
+:      024851 le_send_start_enc_req:
+0x5cdd 024852 arg ll_start_enc_req ,regb 
+0x5cde 024853 branch le_send_ll_one_lenth 
+:      024855 le_send_start_enc_rsp:
+0x5cdf 024856 arg ll_start_enc_rsp ,regb 
+0x5ce0 024857 branch le_send_ll_one_lenth 
+:      024860 le_parse_enc_rsp:
+0x5ce1 024861 ifetch 8 ,contr 
+0x5ce2 024862 store 8 ,mem_le_skds 
+0x5ce3 024863 ifetch 4 ,contr 
+0x5ce4 024864 store 4 ,mem_le_ivs 
+0x5ce5 024865 branch generate_sk 
+:      024867 le_parse_start_enc_req:
+0x5ce6 024868 fetch 1 ,mem_le_state 
+0x5ce7 024869 set1 lestate_encryption ,pdata 
+0x5ce8 024870 store 1 ,mem_le_state 
+0x5ce9 024871 rtn 
+:      024873 le_parse_start_enc_rsp:
+0x5cea 024874 rtn master 
+0x5ceb 024875 jam bt_evt_le_start_enc ,mem_fifo_temp 
+0x5cec 024876 call ui_ipc_send_event 
+0x5ced 024877 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
+0x5cee 024878 branch le_send_start_enc_rsp 
+:      024880 le_parse_pause_enc_req:
+0x5cef 024881 jam flag_le_enc_pause ,mem_le_enc_state 
+0x5cf0 024882 call le_send_pause_enc_rsp 
+0x5cf1 024883 jam bt_evt_le_pause_enc ,mem_fifo_temp 
+0x5cf2 024884 branch ui_ipc_send_event 
+:      024886 le_send_pause_enc_rsp:
+0x5cf3 024887 arg ll_pause_enc_rsp ,regb 
+0x5cf4 024888 branch le_send_ll_one_lenth 
+:      024891 le_parse_feature_rsp:
+:      024892 le_parse_unknown_rsp:
+:      024893 le_parse_pause_enc_rsp:
+:      024894 le_parse_reject_ind:
+:      024895 le_parse_ping_rsp:
+0x5cf5 024896 rtn 
+:      024903 init_lmp:
+0x5cf6 024904 rtn wake 
+:      024905 init_lmp_work:
+0x5cf7 024906 bpatchx patch2f_4 ,mem_patch2f 
+0x5cf8 024907 setarg 0 
+0x5cf9 024908 store 1 ,mem_lmp_to_send 
+0x5cfa 024909 store 1 ,mem_conn_sm 
+0x5cfb 024910 store 1 ,mem_lmo_opcode1 
+0x5cfc 024911 store 1 ,mem_lmo_opcode2 
+0x5cfd 024912 store 1 ,mem_esco_addr 
+0x5cfe 024913 store 1 ,mem_auth_enable 
+0x5cff 024914 store 1 ,mem_connection_options 
+0x5d00 024915 store 1 ,mem_pairing_auth 
+0x5d01 024916 jam switch_flag_init ,mem_switch_flag 
+0x5d02 024917 jam 0 ,mem_switch_fail_master_count 
+0x5d03 024918 jam null_encryp ,mem_wait_encryption 
+:      024919 init_lmp_reinit:
+0x5d04 024920 jam 0 ,mem_pairing_auth 
+0x5d05 024921 jam 0 ,mem_sp_localsm 
+0x5d06 024922 jam 0 ,mem_lmp_conn_state 
+:      024924 parse_rx_done:
+0x5d07 024925 rtn 
+:      024927 parse_lmp:
+0x5d08 024928 bpatchx patch2f_5 ,mem_patch2f 
+0x5d09 024929 call setlocalsm_master ,master 
+0x5d0a 024930 ncall setlocalsm_slave ,master 
+0x5d0b 024931 call lmo_fifo_check 
+0x5d0c 024932 nrtn blank 
+0x5d0d 024933 fetch 1 ,mem_state_map 
+0x5d0e 024934 rtnbit0 smap_rxlmp 
+0x5d0f 024935 set0 smap_rxlmp ,pdata 
+0x5d10 024936 set0 mark_rxbuf_inuse ,mark 
+0x5d11 024937 store 1 ,mem_state_map 
+0x5d12 024938 fetch 1 ,mem_rxbuf 
+0x5d13 024939 fetcht 1 ,mem_state_map 
+0x5d14 024940 isolate1 smap_lmptidinit ,pdata 
+0x5d15 024941 setflag true ,smap_lmptid ,temp 
+0x5d16 024942 storet 1 ,mem_state_map 
+0x5d17 024943 and_into 0x2 ,temp 
+0x5d18 024944 storet 1 ,mem_lmo_tid2 
+0x5d19 024945 fetcht 1 ,mem_state_map 
+0x5d1a 024946 rshift pdata ,pdata 
+0x5d1b 024947 store 1 ,mem_lmi_opcode2 
+0x5d1c 024948 bpatchx patch2f_6 ,mem_patch2f 
+0x5d1d 024949 fetch 1 ,mem_lmi_opcode2 
+0x5d1e 024950 beq lmp_escape ,parse_lmp_escape 
+0x5d1f 024951 beq lmp_accepted ,parse_lmp_accepted 
+0x5d20 024952 beq lmp_not_accepted ,parse_lmp_not_accepted 
+0x5d21 024953 beq lmp_set_afh ,parse_lmp_set_afh 
+0x5d22 024954 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
+0x5d23 024955 beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
+0x5d24 024956 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
+0x5d25 024957 beq lmp_auto_rate ,parse_lmp_auto_rate 
+0x5d26 024958 beq lmp_test_control ,parse_lmp_test_control 
+0x5d27 024959 beq lmp_test_activate ,parse_lmp_test_activate 
+0x5d28 024960 beq lmp_setup_complete ,parse_lmp_setup_complete 
+0x5d29 024961 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
+0x5d2a 024962 beq lmp_features_req ,parse_lmp_features_req 
+0x5d2b 024963 beq lmp_host_connection_req ,parse_lmp_conn_req 
+0x5d2c 024964 beq lmp_version_req ,parse_lmp_version_req 
+0x5d2d 024965 beq lmp_version_res ,parse_lmp_version_res 
+0x5d2e 024966 beq lmp_detach ,parse_lmp_detach 
+0x5d2f 024967 beq lmp_max_slot ,parse_lmp_max_slot 
+0x5d30 024968 beq lmp_max_slot_req ,parse_lmp_max_slot_req 
+0x5d31 024969 beq lmp_name_req ,parse_lmp_name_req 
+0x5d32 024970 beq lmp_name_res ,parse_lmp_name_res 
+0x5d33 024971 beq lmp_features_res ,parse_lmp_features_res 
+0x5d34 024972 beq lmp_comb_key ,parse_lmp_comb_key 
+0x5d35 024973 beq lmp_au_rand ,parse_lmp_au_rand 
+0x5d36 024974 beq lmp_in_rand ,parse_lmp_in_rand 
+0x5d37 024975 beq lmp_sres ,parse_lmp_sres 
+0x5d38 024976 beq lmp_incr_power_req ,parse_lmp_incr_power 
+0x5d39 024977 beq lmp_decr_power_req ,parse_lmp_decr_power 
+0x5d3a 024978 beq lmp_max_power ,parse_lmp_max_power 
+0x5d3b 024979 beq lmp_min_power ,parse_lmp_min_power 
+0x5d3c 024980 beq lmp_page_mode_req ,parse_lmp_page_mode_req 
+0x5d3d 024981 beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
+0x5d3e 024982 beq lmp_preferred_rate ,parse_lmp_preferred_rate 
+0x5d3f 024983 beq lmp_slot_offset ,parse_lmp_slot_offset 
+0x5d40 024984 beq lmp_sniff_req ,parse_lmp_sniff_req 
+0x5d41 024985 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
+0x5d42 024986 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
+0x5d43 024987 beq lmp_switch_req ,parse_lmp_switch_req 
+0x5d44 024988 beq lmp_temp_rand ,parse_lmp_temp_rand 
+0x5d45 024989 beq lmp_temp_key ,parse_lmp_temp_key 
+0x5d46 024990 beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
+0x5d47 024991 beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
+0x5d48 024992 beq lmp_unit_key ,parse_lmp_unit_key 
+0x5d49 024993 beq lmp_unsniff_req ,parse_lmp_unsniff_req 
+0x5d4a 024994 beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
+0x5d4b 024995 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
+0x5d4c 024996 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
+0x5d4d 024997 beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
+0x5d4e 024998 beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
+0x5d4f 024999 beq lmp_dhkey_check ,parse_dhkey_check 
+0x5d50 025000 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
+0x5d51 025001 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
+:      025004 reject_unknown_packet:
+0x5d52 025005 jam unknown_lmp_pdu ,mem_lmo_reason2 
+:      025006 reject_lmp_packet:
+0x5d53 025007 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5d54 025008 rtn 
+:      025010 parse_lmp_clkoffset_req:
+0x5d55 025011 jam lmp_clkoffset_res ,mem_lmo_opcode2 
+0x5d56 025012 rtn 
+:      025014 parse_enc_key_size_mask_req:
+0x5d57 025015 jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
+0x5d58 025016 rtn 
+:      025018 parse_lmp_set_afh:
+0x5d59 025019 fetch 4 ,mem_rxbuf + 1 
+0x5d5a 025020 lshift pdata ,pdata 
+0x5d5b 025021 store 4 ,mem_afh_instant 
+0x5d5c 025022 fetch 1 ,mem_rxbuf + 5 
+0x5d5d 025023 store 1 ,mem_afh_new_mod 
+0x5d5e 025024 fetch 5 ,mem_rxbuf + 6 
+0x5d5f 025025 store 5 ,mem_afh_map_new 
+0x5d60 025026 fetch 5 ,mem_rxbuf + 11 
+0x5d61 025027 istore 5 ,contw 
+0x5d62 025028 fetch 1 ,mem_mode 
+0x5d63 025029 set1 afh_change ,pdata 
+0x5d64 025030 store 1 ,mem_mode 
+0x5d65 025031 rtn 
+:      025032 parse_lmp_escape:
+0x5d66 025033 bpatchx patch2f_7 ,mem_patch2f 
+0x5d67 025034 fetch 1 ,mem_rxbuf + 1 
+0x5d68 025035 set1 7 ,pdata 
+0x5d69 025036 store 1 ,mem_lmi_opcode2 
+0x5d6a 025037 beq lmp_ext_accepted ,parse_lmpext_accepted 
+0x5d6b 025038 beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
+0x5d6c 025039 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
+0x5d6d 025040 beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
+0x5d6e 025041 beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
+0x5d6f 025042 beq lmp_ext_features_req ,parse_lmpext_features_req 
+0x5d70 025043 beq lmp_ext_features_res ,parse_lmpext_features_res 
+0x5d71 025044 beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
+0x5d72 025045 beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
+0x5d73 025046 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
+0x5d74 025047 beq lmp_io_cap_req ,parse_lmpext_iocap_req 
+0x5d75 025048 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
+0x5d76 025049 rtneq lmp_ext_features_res 
+:      025052 reject_unknown_ext_packet:
+0x5d77 025053 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d78 025054 jam unknown_lmp_pdu ,mem_lmo_reason2 
+0x5d79 025056 rtn 
+:      025057 parse_lmpext_chn_classification_req:
+0x5d7a 025058 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d7b 025059 jam not_support_chn_classification ,mem_lmo_reason2 
+0x5d7c 025060 rtn 
+:      025062 parse_lmpext_iocap_req:
+0x5d7d 025063 call iocap_lmpext_load 
+0x5d7e 025064 jam lmp_io_cap_res ,mem_lmo_opcode2 
+0x5d7f 025065 rtn 
+:      025067 parse_lmpext_iocap_res:
+0x5d80 025068 call iocap_lmpext_load 
+0x5d81 025069 branch iocap_lmpext_common 
+:      025071 iocap_lmpext_load:
+0x5d82 025072 arg mem_sp_iocap_remote ,contw 
+0x5d83 025073 fetch 3 ,mem_rxbuf + 2 
+0x5d84 025074 istore 3 ,contw 
+0x5d85 025075 rtn 
+:      025077 iocap_lmpext_common:
+0x5d86 025078 branch master_set_mem_master_sp_flag ,true 
+0x5d87 025079 rtn 
+:      025080 parse_lmpext_accepted:
+0x5d88 025081 fetch 1 ,mem_rxbuf + 3 
+0x5d89 025082 set1 7 ,pdata 
+0x5d8a 025083 store 1 ,mem_lmi_accepted_opcode 
+0x5d8b 025084 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
+0x5d8c 025085 rtn 
+:      025088 parse_lmpext_not_accepted:
+0x5d8d 025089 fetch 1 ,mem_rxbuf + 3 
+0x5d8e 025090 set1 7 ,pdata 
+0x5d8f 025091 store 1 ,mem_lmi_accepted_opcode 
+0x5d90 025092 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
+0x5d91 025093 rtn 
+:      025095 parse_lmpext_accepted_ptt:
+0x5d92 025096 fetch 1 ,mem_ptt 
+0x5d93 025097 fetcht 1 ,mem_state_map 
+0x5d94 025098 nsetflag blank ,smap_edr ,temp 
+0x5d95 025099 storet 1 ,mem_state_map 
+:      025100 parse_lmpext_not_accepted_ptt:
+0x5d96 025101 fetch 1 ,mem_state 
+0x5d97 025102 rtnbit0 state_init_seq 
+0x5d98 025103 set0 state_init_seq ,pdata 
+0x5d99 025104 store 1 ,mem_state 
+0x5d9a 025105 fetch 1 ,mem_auth_enable 
+0x5d9b 025106 nrtn blank 
+0x5d9c 025107 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5d9d 025108 rtn 
+:      025110 parse_lmpext_pause_encrypt:
+0x5d9e 025111 nbranch parse_lmpext_pause_encrypt_slave ,master 
+0x5d9f 025112 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5da0 025113 branch tid_reply 
+:      025115 parse_lmpext_pause_encrypt_slave:
+0x5da1 025116 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
+0x5da2 025117 rtn 
+:      025119 parse_lmpext_resume_encrypt:
+0x5da3 025122 call tid_reply 
+0x5da4 025123 branch lmp_start_encryption 
+:      025125 parse_lmpext_features_req:
+0x5da5 025126 jam lmp_ext_features_res ,mem_lmo_opcode2 
+0x5da6 025127 rtn 
+:      025129 parse_lmpext_features_res:
+0x5da7 025130 fetcht 1 ,mem_rxbuf + 4 
+0x5da8 025131 and temp ,0x1 ,temp 
+0x5da9 025132 storet 1 ,mem_remote_sppcap 
+0x5daa 025133 fetch 1 ,mem_hci_cmd 
+0x5dab 025134 bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
+0x5dac 025135 jam 0 ,mem_hci_cmd 
+:      025136 parse_lmpext_features_res_not_hci:
+0x5dad 025137 fetch 1 ,mem_conn_sm 
+0x5dae 025138 rtnne conn_sm_wait_features_ext 
+0x5daf 025139 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5db0 025140 branch process_conn_sm 
+:      025142 parse_lmp_accepted:
+0x5db1 025143 bpatchx patch30_0 ,mem_patch30 
+0x5db2 025144 fetch 1 ,mem_rxbuf + 1 
+0x5db3 025145 store 1 ,mem_lmi_accepted_opcode 
+0x5db4 025146 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
+0x5db5 025147 beq lmp_in_rand ,parse_lmp_accepted_inrand 
+0x5db6 025148 beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
+0x5db7 025149 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
+0x5db8 025150 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
+0x5db9 025151 beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
+0x5dba 025152 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
+0x5dbb 025153 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
+0x5dbc 025154 beq lmp_switch_req ,parse_lmp_accepted_switch 
+0x5dbd 025156 beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
+0x5dbe 025157 beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
+0x5dbf 025158 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
+0x5dc0 025159 beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
+0x5dc1 025160 rtn 
+:      025162 parse_lmp_not_accepted:
+0x5dc2 025163 bpatchx patch30_1 ,mem_patch30 
+0x5dc3 025164 fetch 1 ,mem_rxbuf + 1 
+0x5dc4 025165 store 1 ,mem_lmi_accepted_opcode 
+0x5dc5 025166 beq lmp_name_req ,parse_lmp_not_accepted_name_req 
+0x5dc6 025167 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
+0x5dc7 025168 beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
+0x5dc8 025169 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
+0x5dc9 025170 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
+0x5dca 025172 beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
+0x5dcb 025173 beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
+0x5dcc 025174 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
+0x5dcd 025175 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
+0x5dce 025176 rtn 
+:      025178 parse_lmp_accepted_switch:
+0x5dcf 025179 jam bt_evt_switch_accept ,mem_fifo_temp 
+0x5dd0 025180 call ui_ipc_send_event 
+0x5dd1 025181 branch role_switch_prepare0 
+:      025182 parse_lmp_not_accepted_switch:
+0x5dd2 025183 jam bt_evt_switch_not_accept ,mem_fifo_temp 
+0x5dd3 025184 call ui_ipc_send_event 
+0x5dd4 025185 jam switch_flag_not_accept ,mem_switch_flag 
+0x5dd5 025186 setarg timer_switch_waite 
+0x5dd6 025187 arg switch_wait_timer ,queue 
+0x5dd7 025188 branch timer_init 
+:      025191 parse_lmp_accepted_hostconn:
+0x5dd8 025194 fetch 1 ,mem_lmp_conn_state 
+0x5dd9 025195 set1 received_conn_req ,pdata 
+0x5dda 025196 store 1 ,mem_lmp_conn_state 
+0x5ddb 025197 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x5ddc 025198 call ui_ipc_send_event 
+0x5ddd 025199 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+:      025201 parse_lmp_accepted_hostconn_ctn:
+0x5dde 025203 fetch 1 ,mem_conn_sm 
+0x5ddf 025204 bne conn_sm_wait_conn_accept ,parse_rx_done 
+0x5de0 025207 jam conn_sm_auth_pair ,mem_conn_sm 
+0x5de1 025208 rtn 
+:      025216 parse_lmp_not_accepted_hostconn:
+0x5de2 025217 jam acl_connection_already_exists ,mem_disconn_reason_send 
+0x5de3 025218 jam lmp_detach ,mem_lmo_opcode2 
+0x5de4 025220 jam conn_sm_standby ,mem_conn_sm 
+0x5de5 025222 branch parse_rx_done ,true 
+0x5de6 025223 rtn 
+:      025225 parse_lmp_accepted_inrand:
+0x5de7 025226 fetch 1 ,mem_link_key_exists 
+0x5de8 025227 nrtn blank 
+0x5de9 025228 call clear_linkkey 
+0x5dea 025229 call lmp_generate_key 
+0x5deb 025230 rtn master 
+0x5dec 025231 set1 mark_slave_in_rand_accepted ,mark 
+0x5ded 025232 rtn 
+:      025234 parse_lmp_accepted_enc_mode:
+0x5dee 025235 nrtn master 
+0x5def 025236 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x5df0 025237 fetch 1 ,mem_state_map 
+0x5df1 025238 rtnbit0 smap_encryption 
+0x5df2 025239 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5df3 025240 rtn 
+:      025242 parse_lmp_accepted_enc_keysize:
+0x5df4 025243 branch lmp_start_encryption 
+:      025245 parse_lmp_accepted_start_enc:
+0x5df5 025246 call send_create_conn_start_l2cap_timer_sm 
+0x5df6 025247 fetch 1 ,mem_state 
+0x5df7 025248 rtnbit1 state_conn_comp 
+0x5df8 025249 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5df9 025250 fetch 1 ,mem_conn_sm 
+0x5dfa 025251 rtnne conn_sm_encrypt_wait 
+0x5dfb 025252 jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
+0x5dfc 025253 rtn 
+:      025255 parse_lmp_accepted_stop_enc:
+0x5dfd 025263 rtn 
+:      025265 parse_lmp_not_accepted_aurand:
+:      025266 parse_lmp_not_accepted_aurand_send_detach:
+0x5dfe 025267 jam lmp_detach ,mem_lmo_opcode2 
+0x5dff 025268 jam other_end_terminated ,mem_disconn_reason_send 
+0x5e00 025269 rtn 
+:      025271 parse_lmp_not_accepted_inrand:
+0x5e01 025272 fetch 1 ,mem_rxbuf + 2 
+0x5e02 025273 beq key_missing ,parse_lmp_inrand_key_missing 
+0x5e03 025274 rtnne pairing_not_allowed 
+0x5e04 025275 jam pairing_not_allowed ,mem_disconn_reason_send 
+0x5e05 025276 jam lmp_detach ,mem_lmo_opcode2 
+0x5e06 025277 rtn 
+:      025278 parse_lmp_inrand_key_missing:
+0x5e07 025279 jam key_missing ,mem_disconn_reason_send 
+0x5e08 025280 jam lmp_detach ,mem_lmo_opcode2 
+0x5e09 025281 rtn 
+:      025283 parse_lmp_not_accepted_name_req:
+0x5e0a 025284 rtn 
+:      025286 parse_lmp_not_accepted_simple_pairing_number:
+0x5e0b 025287 jam sp_stat_null ,mem_sp_state 
+0x5e0c 025288 jam lmp_detach ,mem_lmo_opcode2 
+0x5e0d 025289 branch parse_rx_done 
+:      025291 parse_lmp_not_accepted_dhkey_check:
+0x5e0e 025292 jam sp_stat_null ,mem_sp_state 
+0x5e0f 025293 jam lmp_detach ,mem_lmo_opcode2 
+0x5e10 025294 branch parse_rx_done 
+:      025295 parse_lmp_not_accepted_unsniff_req:
+0x5e11 025296 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
+0x5e12 025297 branch ui_ipc_send_event 
+:      025299 parse_lmp_accepted_unsniff_req:
+0x5e13 025300 jam bt_evt_unsniff_accept ,mem_fifo_temp 
+0x5e14 025301 call ui_ipc_send_event 
+0x5e15 025302 branch sniff_exit 
+:      025304 parse_lmp_accepted_sniff_req:
+0x5e16 025305 jam bt_evt_sniff_accept ,mem_fifo_temp 
+0x5e17 025306 call ui_ipc_send_event 
+0x5e18 025307 setarg 0 
+0x5e19 025308 store 2 ,mem_dsniff 
+0x5e1a 025309 fetch 2 ,mem_sniff_param_interval 
+0x5e1b 025310 lshift pdata ,pdata 
+0x5e1c 025311 store 2 ,mem_tsniff 
+0x5e1d 025312 fetch 1 ,mem_sniff_param_attempt 
+0x5e1e 025313 store 1 ,mem_sniff_attempt 
+0x5e1f 025314 fetch 1 ,mem_sniff_param_timeout 
+0x5e20 025315 store 1 ,mem_sniff_timeout 
+0x5e21 025316 branch sniff_init 
+:      025318 parse_lmp_not_acdcept_sniff_req:
+0x5e22 025319 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
+0x5e23 025320 branch ui_ipc_send_event 
+:      025322 parse_lmp_crypt_key:
+0x5e24 025323 fetcht 1 ,mem_rxbuf + 1 
+0x5e25 025324 storet 1 ,mem_key_size 
+0x5e26 025325 branch accept_lmp_msg 
+:      025327 parse_lmp_setup_complete:
+0x5e27 025328 fetch 1 ,mem_lmp_conn_state 
+0x5e28 025329 set1 received_setup_complete ,pdata 
+0x5e29 025330 store 1 ,mem_lmp_conn_state 
+0x5e2a 025331 rtnbit1 sent_setup_complete 
+0x5e2b 025332 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5e2c 025333 branch parse_rx_done 
+:      025335 parse_lmp_max_slot:
+0x5e2d 025338 rtn 
+:      025340 parse_lmp_max_slot_req:
+0x5e2e 025341 fetch 1 ,mem_max_slot 
+0x5e2f 025342 fetcht 1 ,mem_rxbuf + 1 
+0x5e30 025343 isub temp ,null 
+0x5e31 025345 branch accept_lmp_msg ,positive 
+0x5e32 025346 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e33 025347 jam unspecified_error ,mem_lmo_reason2 
+0x5e34 025348 jam lmp_max_slot_req ,mem_lmi_opcode2 
+0x5e35 025349 rtn 
+:      025351 parse_lmp_detach:
+0x5e36 025352 call prepare_disconnect 
+0x5e37 025353 branch accept_lmp_msg 
+:      025355 accept_lmp_msg:
+0x5e38 025356 jam lmp_accepted ,mem_lmo_opcode2 
+0x5e39 025357 rtn 
+:      025359 parse_lmp_incr_power:
+0x5e3a 025360 jam lmp_max_power ,mem_lmo_opcode2 
+0x5e3b 025361 rtn 
+:      025363 parse_lmp_decr_power:
+0x5e3c 025364 jam lmp_min_power ,mem_lmo_opcode2 
+0x5e3d 025365 rtn 
+:      025367 parse_lmp_version_res:
+0x5e3e 025368 fetch 1 ,mem_conn_sm 
+0x5e3f 025369 rtneq conn_sm_wait_version 
+0x5e40 025371 jam conn_sm_send_features ,mem_conn_sm 
+0x5e41 025373 rtn 
+:      025376 parse_lmp_auto_rate:
+0x5e42 025377 rtn 
+:      025379 parse_lmp_in_rand:
+0x5e43 025380 call lmp_copy_rand 
+0x5e44 025381 jam pincode_state_wait_pincode ,mem_pincode_state 
+0x5e45 025382 jam bt_evt_pincode_req ,mem_fifo_temp 
+0x5e46 025383 call ui_ipc_send_event 
+0x5e47 025385 call tid_check 
+0x5e48 025386 nbranch lmp_accept_inrand ,true 
+0x5e49 025388 nbranch parse_lmp_inrand_res ,master 
+0x5e4a 025389 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e4b 025390 jam lmp_in_rand ,mem_lmi_opcode2 
+0x5e4c 025391 jam transaction_collision ,mem_lmo_reason2 
+0x5e4d 025392 rtn 
+:      025393 parse_lmp_inrand_res:
+0x5e4e 025394 fetch 1 ,mem_op 
+0x5e4f 025395 set1 op_inrand_req ,pdata 
+0x5e50 025396 store 1 ,mem_op 
+0x5e51 025397 rtn 
+:      025400 pop_tid_follow:
+0x5e52 025401 fetcht 1 ,mem_state_map 
+0x5e53 025402 nsetflag blank ,smap_lmptid ,temp 
+0x5e54 025403 storet 1 ,mem_state_map 
+0x5e55 025404 rtn 
+:      025407 push_tid_follow:
+0x5e56 025408 fetch 1 ,mem_lmo_tid2 
+0x5e57 025409 rshift pdata ,pdata 
+0x5e58 025410 and_into 1 ,pdata 
+0x5e59 025411 rtn 
+:      025413 parse_lmp_au_rand_moudle:
+0x5e5a 025414 fetch 1 ,mem_nv_data_number 
+0x5e5b 025415 rtn blank 
+0x5e5c 025416 fetch 1 ,mem_pairing_auth 
+0x5e5d 025417 call load_device_list ,blank 
+0x5e5e 025418 rtn 
+:      025420 parse_lmp_au_rand:
+0x5e5f 025421 call parse_lmp_au_rand_moudle 
+0x5e60 025422 call push_tid_follow 
+0x5e61 025423 store 1 ,mem_sres_tid 
+0x5e62 025424 call lmp_copy_rand 
+0x5e63 025425 jam lmp_sres ,mem_lmo_opcode2 
+0x5e64 025426 fetch 1 ,mem_link_key_exists 
+0x5e65 025427 nrtn blank 
+0x5e66 025428 fetch 1 ,mem_state 
+0x5e67 025429 rtnbit1 state_combkey 
+0x5e68 025430 jam key_missing ,mem_lmo_reason2 
+0x5e69 025431 branch reject_lmp_packet 
+:      025433 parse_lmp_sres:
+0x5e6a 025434 arg mem_plap ,rega 
+0x5e6b 025435 call function_e1 
+0x5e6c 025436 fetch 4 ,mem_rxbuf + 1 
+0x5e6d 025437 fetcht 4 ,mem_input_store 
+0x5e6e 025438 isub temp ,null 
+0x5e6f 025439 branch authentication_ok ,zero 
+0x5e70 025440 jam lmp_detach ,mem_lmo_opcode2 
+0x5e71 025441 jam authentication_failure_error ,mem_disconn_reason_send 
+0x5e72 025442 rtn 
+:      025443 authentication_ok:
+0x5e73 025444 call authentication_ok_common 
+0x5e74 025445 fetch 1 ,mem_ssp_enable 
+0x5e75 025446 branch pairing_success ,blank 
+0x5e76 025447 rtn 
+:      025450 authentication_ok_common:
+0x5e77 025451 call copy_aco 
+0x5e78 025452 call linkkey_ready 
+0x5e79 025453 fetch 1 ,mem_op 
+0x5e7a 025454 isolate1 op_auth_req ,pdata 
+0x5e7b 025455 set0 op_auth_req ,pdata 
+0x5e7c 025456 store 1 ,mem_op 
+0x5e7d 025457 fetch 1 ,mem_conn_sm 
+0x5e7e 025458 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
+0x5e7f 025459 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
+0x5e80 025460 rtn 
+:      025461 authentication_ok_conn_sm:
+0x5e81 025462 fetch 1 ,mem_pairing_auth 
+0x5e82 025463 rtnne defalt_pairing_auth 
+0x5e83 025464 fetch 1 ,mem_state_map 
+0x5e84 025465 rtnbit1 smap_encryption 
+0x5e85 025466 branch host_create_conn_encrypt 
+:      025468 parse_lmp_comb_key:
+0x5e86 025469 arg mem_rxbuf + 1 ,rega 
+0x5e87 025470 arg mem_kinit ,regb 
+0x5e88 025471 arg mem_random_number ,contw 
+0x5e89 025472 call xor16 
+0x5e8a 025473 arg mem_plap ,rega 
+0x5e8b 025474 call generate_linkkey 
+0x5e8c 025475 jam lmp_au_rand ,mem_lmo_opcode2 
+0x5e8d 025476 fetch 1 ,mem_state 
+0x5e8e 025477 bbit0 state_combkey ,lmp_generate_key 
+0x5e8f 025478 rtn 
+:      025480 parse_lmp_name_res:
+0x5e90 025481 fetch 2 ,mem_len 
+0x5e91 025482 add pdata ,-3 ,loopcnt 
+0x5e92 025483 fetcht 1 ,mem_rxbuf + 1 
+0x5e93 025484 setarg mem_tmp_buffer 
+0x5e94 025485 iadd temp ,contw 
+0x5e95 025486 arg mem_rxbuf + 3 ,contr 
+0x5e96 025487 call memcpy 
+0x5e97 025488 fetcht 1 ,mem_name_offset 
+0x5e98 025489 fetch 1 ,mem_rxbuf + 2 
+0x5e99 025490 isub temp ,pdata 
+0x5e9a 025491 sub pdata ,14 ,null 
+0x5e9b 025492 branch parse_lmp_name_res_end ,positive 
+0x5e9c 025493 add temp ,14 ,pdata 
+0x5e9d 025494 store 1 ,mem_name_offset 
+0x5e9e 025495 jam lmp_name_req ,mem_lmo_opcode2 
+0x5e9f 025496 rtn 
+:      025497 parse_lmp_name_res_end:
+0x5ea0 025498 fetch 1 ,mem_state_map 
+0x5ea1 025499 set1 smap_name_res ,pdata 
+0x5ea2 025500 store 1 ,mem_state_map 
+0x5ea3 025501 bbit1 smap_name_req ,lmp_disconnect 
+0x5ea4 025502 rtn 
+:      025503 parse_lmp_name_req:
+0x5ea5 025504 fetch 1 ,mem_rxbuf + 1 
+0x5ea6 025505 store 1 ,mem_lmi_opcode2 
+0x5ea7 025506 jam lmp_name_res ,mem_lmo_opcode2 
+0x5ea8 025507 rtn 
+:      025509 parse_lmp_conn_req:
+0x5ea9 025510 branch accept_lmp_msg 
+:      025512 parse_lmp_timing_accuracy_req:
+0x5eaa 025513 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
+0x5eab 025514 rtn 
+:      025516 parse_lmp_features_req:
+0x5eac 025517 jam lmp_features_res ,mem_lmo_opcode2 
+0x5ead 025518 rtn 
+:      025520 parse_lmp_version_req:
+0x5eae 025521 jam lmp_version_res ,mem_lmo_opcode2 
+0x5eaf 025522 rtn 
+:      025524 parse_lmp_supervision_timeout:
+0x5eb0 025527 rtn 
+:      025531 parse_lmp_sniff_subrating_req:
+0x5eb1 025532 fetch 2 ,mem_tsniff 
+0x5eb2 025533 iforce temp 
+0x5eb3 025534 fetch 1 ,mem_rxbuf + 2 
+0x5eb4 025535 store 1 ,mem_subsniff_rate 
+0x5eb5 025536 imul32 temp ,temp 
+0x5eb6 025537 fetch 2 ,mem_rxbuf + 3 
+0x5eb7 025538 lshift pdata ,pdata 
+0x5eb8 025539 store 2 ,mem_subsniff_tcmax 
+0x5eb9 025540 fetch 4 ,mem_rxbuf + 5 
+0x5eba 025541 lshift pdata ,pdata 
+0x5ebb 025542 store 4 ,mem_subsniff_instant 
+0x5ebc 025544 deposit temp 
+0x5ebd 025545 store 2 ,mem_subsniff_tsniff 
+0x5ebe 025546 rtn 
+:      025547 parse_lmpext_packet_type_table_req:
+0x5ebf 025548 fetcht 1 ,mem_ptt 
+0x5ec0 025549 fetch 1 ,mem_rxbuf + 2 
+0x5ec1 025550 ixor temp ,null 
+0x5ec2 025551 nbranch reject_unknown_ext_packet ,zero 
+0x5ec3 025552 isolate1 0 ,pdata 
+0x5ec4 025553 fetch 1 ,mem_state_map 
+0x5ec5 025554 setflag true ,smap_edr ,pdata 
+0x5ec6 025555 store 1 ,mem_state_map 
+0x5ec7 025556 jam lmp_ext_accepted ,mem_lmo_opcode2 
+0x5ec8 025557 jam lmp_packet_type_table_req ,mem_lmi_opcode2 
+0x5ec9 025558 rtn 
+:      025561 parse_lmp_sniff_subrating_res:
+:      025562 parse_lmp_preferred_rate:
+:      025563 parse_lmp_max_power:
+:      025564 parse_lmp_min_power:
+0x5eca 025565 rtn 
+:      025566 parse_lmp_page_mode_req:
+0x5ecb 025568 branch accept_lmp_msg 
+:      025569 parse_lmp_page_scan_mode_req:
+0x5ecc 025572 branch accept_lmp_msg 
+:      025576 parse_lmp_slot_offset:
+0x5ecd 025577 fetch 2 ,mem_rxbuf + 1 
+0x5ece 025578 store 2 ,mem_slot_offset 
+0x5ecf 025579 rtn 
+:      025581 parse_lmp_sniff_req_check_sniff_para:
+0x5ed0 025582 fetch 2 ,mem_rxbuf + 4 
+0x5ed1 025583 fetcht 1 ,mem_lpm_mult 
+0x5ed2 025584 imul32 temp ,pdata 
+0x5ed3 025585 arg 0x640 ,temp 
+0x5ed4 025586 isub temp ,null 
+0x5ed5 025588 rtn 
+:      025590 parse_lmp_sniff_req:
+0x5ed6 025591 fetch 2 ,mem_rxbuf + 6 
+0x5ed7 025592 branch lmp_reject_sniff ,blank 
+0x5ed8 025593 call parse_lmp_sniff_req_check_sniff_para 
+0x5ed9 025594 branch lmp_reject_sniff ,positive 
+0x5eda 025595 fetch 1 ,mem_device_option 
+0x5edb 025596 sub pdata ,dvc_op_module ,null 
+0x5edc 025597 call module_set_lpm_mult_2 ,zero 
+0x5edd 025598 fetch 1 ,mem_state 
+0x5ede 025599 bbit1 state_insniff ,lmp_reject_sniff 
+0x5edf 025600 fetch 2 ,mem_rxbuf + 2 
+0x5ee0 025601 lshift pdata ,pdata 
+0x5ee1 025602 store 2 ,mem_dsniff 
+0x5ee2 025603 fetch 2 ,mem_rxbuf + 4 
+0x5ee3 025604 lshift pdata ,pdata 
+0x5ee4 025605 store 2 ,mem_tsniff 
+0x5ee5 025606 fetch 2 ,mem_rxbuf + 6 
+0x5ee6 025607 store 1 ,mem_sniff_attempt 
+0x5ee7 025608 iforce temp 
+0x5ee8 025609 fetch 2 ,mem_rxbuf + 8 
+0x5ee9 025610 store 1 ,mem_sniff_timeout 
+0x5eea 025611 isub temp ,null 
+0x5eeb 025612 nbranch set_big_value_to_attempt ,positive 
+0x5eec 025613 store 1 ,mem_sniff_attempt 
+:      025614 set_big_value_to_attempt:
+0x5eed 025616 jam lmp_accepted ,mem_lmo_opcode2 
+0x5eee 025617 jam lmp_sniff_req ,mem_lmi_opcode2 
+0x5eef 025618 rtn 
+:      025620 lmp_reject_sniff:
+0x5ef0 025621 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5ef1 025622 branch reject_lmp_packet 
+:      025624 parse_lmp_start_encryption_req:
+0x5ef2 025625 call accept_lmp_msg 
+0x5ef3 025626 call lmp_copy_rand 
+0x5ef4 025627 call function_e3 
+0x5ef5 025628 branch start_encryption 
+:      025630 parse_lmp_stop_encryption_req:
+0x5ef6 025631 call accept_lmp_msg 
+0x5ef7 025632 branch stop_encryption 
+:      025635 parse_lmp_switch_req:
+0x5ef8 025636 fetch 4 ,mem_rxbuf + 1 
+0x5ef9 025637 lshift pdata ,pdata 
+0x5efa 025639 branch parse_lmp_switch_accept ,master 
+0x5efb 025640 fetcht 1 ,mem_link_key_exists 
+0x5efc 025641 nbranch parse_lmp_switch_req_clear_mark ,blank 
+:      025642 parse_lmp_switch_req_not_accept:
+0x5efd 025643 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5efe 025644 jam lmp_switch_req ,mem_lmi_opcode2 
+0x5eff 025645 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f00 025646 rtn 
+:      025647 parse_lmp_switch_req_clear_mark:
+0x5f01 025648 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x5f02 025649 jam 0 ,mem_conn_sm 
+0x5f03 025650 branch role_switch_prepare 
+:      025652 parse_lmp_switch_accept:
+0x5f04 025653 call role_switch_prepare 
+0x5f05 025654 set1 mark_reconn_recieve_switch ,mark 
+0x5f06 025655 fetch 1 ,mem_connection_options 
+0x5f07 025656 set0 connection_switch ,pdata 
+0x5f08 025657 store 1 ,mem_connection_options 
+0x5f09 025658 branch accept_lmp_msg 
+:      025662 parse_lmp_temp_rand:
+:      025663 parse_lmp_temp_key:
+:      025664 parse_lmp_timing_accuracy_res:
+:      025665 parse_lmp_unit_key:
+:      025666 parse_lmp_use_semi_permanend_key:
+0x5f0a 025667 rtn 
+:      025670 parse_lmp_unsniff_req:
+0x5f0b 025671 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f0c 025672 jam lmp_unsniff_req ,mem_lmi_opcode2 
+0x5f0d 025673 jam bt_evt_remote_unsniff ,mem_fifo_temp 
+0x5f0e 025674 call ui_ipc_send_event 
+0x5f0f 025675 branch sniff_exit 
+:      025677 parse_lmp_encapsulated_header:
+0x5f10 025678 fetch 1 ,mem_rxbuf + 1 
+0x5f11 025679 bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f12 025680 fetch 1 ,mem_rxbuf + 2 
+0x5f13 025681 bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f14 025682 fetch 1 ,mem_rxbuf + 3 
+0x5f15 025683 bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f16 025684 call check_localsm 
+0x5f17 025685 branch parse_lmp_encapsulated_header_master ,true 
+0x5f18 025686 jam sp_stat_key_recv ,mem_sp_state 
+:      025687 parse_lmp_encapsulated_header_master:
+0x5f19 025688 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f1a 025689 jam lmp_encapsulated_header ,mem_lmi_opcode2 
+0x5f1b 025690 branch parse_rx_done 
+:      025692 parse_lmp_encapsulated_header_reject:
+0x5f1c 025693 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f1d 025694 branch reject_lmp_packet 
+:      025696 parse_lmp_accepted_encapsulated_header:
+0x5f1e 025699 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f1f 025701 rtn 
+:      025702 parse_lmp_accepted_simple_pairing_number:
+0x5f20 025703 fetch 1 ,mem_ssp_mode_flag 
+0x5f21 025704 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
+0x5f22 025705 beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
+:      025706 parse_lmp_accepted_simple_pairing_number_common:
+0x5f23 025707 call check_localsm 
+0x5f24 025708 rtn true 
+0x5f25 025709 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f26 025710 rtn 
+:      025712 parse_lmp_accepted_simple_pairing_number_ssp_pin:
+0x5f27 025713 call g_noninit_number_confirm 
+0x5f28 025714 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
+0x5f29 025715 call ui_ipc_send_event 
+0x5f2a 025716 branch parse_lmp_accepted_simple_pairing_number_common 
+:      025719 parse_lmp_accepted_simple_pairing_number_passkey:
+0x5f2b 025720 call check_localsm 
+0x5f2c 025721 rtn true 
+0x5f2d 025722 fetch 1 ,mem_authentication_passkey_times 
+0x5f2e 025723 beq 19 ,authentication_passkey_end 
+0x5f2f 025724 increase 1 ,pdata 
+0x5f30 025725 store 1 ,mem_authentication_passkey_times 
+:      025728 authentication_passkey:
+0x5f31 025729 jam sp_flag_commit ,mem_sp_flag 
+0x5f32 025730 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f33 025731 fetch 1 ,mem_authentication_passkey_times 
+0x5f34 025732 copy pdata ,queue 
+0x5f35 025733 fetch 6 ,mem_pin 
+0x5f36 025734 qisolate1 pdata 
+0x5f37 025735 setarg 0x80 
+0x5f38 025736 setflag true ,0 ,pdata 
+0x5f39 025737 store 1 ,mem_passkey_1bit 
+0x5f3a 025738 rtn 
+:      025740 authentication_passkey_end:
+0x5f3b 025741 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f3c 025742 rtn 
+:      025744 parse_lmp_accepted_dhkey_check:
+0x5f3d 025745 call parse_lmp_accepted_dhkey_check_common 
+:      025746 pairing_success:
+0x5f3e 025747 fetch 1 ,mem_flag_pairing_state 
+0x5f3f 025748 rtn blank 
+0x5f40 025749 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
+0x5f41 025750 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
+0x5f42 025751 branch ui_ipc_send_event 
+:      025754 parse_lmp_accepted_dhkey_check_common:
+0x5f43 025756 call check_localsm 
+0x5f44 025757 ncall g_noninit ,true 
+0x5f45 025758 call g_init ,true 
+0x5f46 025759 call check_localsm 
+0x5f47 025760 rtn true 
+0x5f48 025761 jam sp_stat_link_key_calc ,mem_sp_state 
+0x5f49 025762 jam sp_flag_commit ,mem_sp_flag 
+0x5f4a 025763 rtn 
+:      025765 parse_simple_pairing_confirm:
+0x5f4b 025766 arg mem_sp_confirm_remote ,contw 
+0x5f4c 025767 arg mem_rxbuf + 1 ,contr 
+0x5f4d 025768 call memcpy16 
+0x5f4e 025769 fetch 1 ,mem_ssp_mode_flag 
+0x5f4f 025770 rtneq ssp_mode_passkey_entry_flag 
+0x5f50 025771 branch master_set_mem_master_sp_flag 
+:      025773 parse_lmp_encapsulated_payload:
+0x5f51 025774 fetch 1 ,mem_master_sp_state 
+0x5f52 025775 beq sp_stat_random_send ,parse_encapsulated_payload_master 
+0x5f53 025776 fetch 1 ,mem_sp_state 
+0x5f54 025777 bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
+:      025778 parse_encapsulated_payload_master:
+0x5f55 025779 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f56 025780 sub pdata ,0x20 ,contw 
+0x5f57 025781 nbranch parse_lmp_encapsulated_payload_reject ,positive 
+0x5f58 025782 arg mem_sp_pubkey_remote ,contw 
+0x5f59 025783 iadd contw ,contw 
+0x5f5a 025784 fetch 8 ,mem_rxbuf + 1 
+0x5f5b 025785 istore 8 ,contw 
+0x5f5c 025786 fetch 8 ,mem_rxbuf + 9 
+0x5f5d 025787 istore 8 ,contw 
+0x5f5e 025788 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f5f 025789 increase 16 ,pdata 
+0x5f60 025790 store 1 ,mem_sp_remote_key_recv_count 
+0x5f61 025791 bne encapsulated_len_p192 ,accept_lmp_msg 
+:      025792 parse_lmp_encapsulated_payload_completed:
+0x5f62 025793 call check_localsm 
+0x5f63 025794 branch accept_lmp_msg ,true 
+0x5f64 025795 jam sp_key_valid ,mem_sp_remote_key_invalid 
+0x5f65 025796 jam sp_stat_key_generate ,mem_sp_state 
+0x5f66 025797 jam sp_flag_commit ,mem_sp_flag 
+0x5f67 025798 branch accept_lmp_msg 
+:      025799 parse_lmp_encapsulated_payload_reject:
+0x5f68 025800 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f69 025801 branch reject_lmp_packet 
+:      025802 parse_lmp_accepted_encapsulated_payload:
+0x5f6a 025803 fetch 1 ,mem_sp_local_key_send_count 
+0x5f6b 025804 beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
+0x5f6c 025805 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f6d 025806 branch parse_rx_done 
+:      025808 parse_lmp_encapsulated_payload_all_accepted:
+0x5f6e 025809 call check_localsm 
+0x5f6f 025810 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
+0x5f70 025811 fetch 1 ,mem_ssp_mode_flag 
+0x5f71 025812 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
+0x5f72 025813 jam sp_flag_commit ,mem_sp_flag 
+0x5f73 025814 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f74 025815 branch parse_rx_done 
+:      025817 parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+0x5f75 025818 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
+0x5f76 025819 branch ui_ipc_send_event 
+:      025822 parse_lmp_encapsulated_payload_all_accepted_master:
+0x5f77 025824 branch parse_rx_done 
+:      025826 parse_lmp_simple_pairing_number:
+0x5f78 025827 fetch 1 ,mem_master_sp_state 
+0x5f79 025828 beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
+0x5f7a 025829 fetch 1 ,mem_sp_state 
+0x5f7b 025830 bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
+:      025831 parse_lmp_simple_pairing_number_master:
+0x5f7c 025832 arg mem_sp_random_remote ,contw 
+0x5f7d 025833 fetch 8 ,mem_rxbuf + 1 
+0x5f7e 025834 istore 8 ,contw 
+0x5f7f 025835 fetch 8 ,mem_rxbuf + 9 
+0x5f80 025836 istore 8 ,contw 
+0x5f81 025837 call check_localsm 
+0x5f82 025838 branch parse_lmp_simple_pairing_number_master0 ,true 
+0x5f83 025839 jam sp_stat_random_send ,mem_sp_state 
+0x5f84 025840 jam sp_flag_commit ,mem_sp_flag 
+0x5f85 025841 branch accept_lmp_msg 
+:      025842 parse_lmp_simple_pairing_number_master0:
+0x5f86 025843 jam sp_stat_commit_calc ,mem_master_sp_state 
+0x5f87 025844 branch master_set_mem_master_sp_flag 
+:      025847 parse_lmp_simple_pairing_number_reject:
+0x5f88 025848 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f89 025849 branch reject_lmp_packet 
+:      025851 parse_dhkey_check:
+0x5f8a 025852 fetch 1 ,mem_master_sp_state 
+0x5f8b 025853 beq sp_stat_confirm_send ,parse_dhkey_check_master 
+0x5f8c 025854 fetch 1 ,mem_sp_state 
+0x5f8d 025855 bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
+:      025856 parse_dhkey_check_master:
+0x5f8e 025857 arg mem_sp_check_result ,contw 
+0x5f8f 025858 arg mem_rxbuf + 1 ,contr 
+0x5f90 025859 call memcpy16 
+0x5f91 025860 call check_localsm 
+0x5f92 025861 branch parse_dhkey_check_master0 ,true 
+0x5f93 025862 fetch 1 ,mem_ssp_mode_flag 
+0x5f94 025863 beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
+:      025864 number_comparison_successed:
+0x5f95 025865 jam 0 ,mem_flag_mode_ssp_pin 
+0x5f96 025866 jam sp_stat_confirm_check ,mem_sp_state 
+0x5f97 025867 jam sp_flag_commit ,mem_sp_flag 
+0x5f98 025868 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x5f99 025869 branch parse_rx_done 
+:      025871 parse_dhkey_check_master0:
+0x5f9a 025872 jam sp_stat_confirm_check ,mem_master_sp_state 
+0x5f9b 025873 jam sp_flag_commit ,mem_master_sp_flag 
+0x5f9c 025874 branch parse_rx_done 
+:      025875 parse_lmp_dhkey_check_reject:
+0x5f9d 025876 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f9e 025877 branch reject_lmp_packet 
+:      025879 number_comparison_mode:
+0x5f9f 025880 fetch 1 ,mem_flag_mode_ssp_pin 
+0x5fa0 025881 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
+0x5fa1 025882 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
+0x5fa2 025883 store 1 ,mem_flag_mode_ssp_pin 
+0x5fa3 025884 rtn 
+:      025886 comparison_result:
+0x5fa4 025887 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x5fa5 025888 jam 0 ,mem_flag_mode_ssp_pin 
+0x5fa6 025889 branch parse_lmp_dhkey_check_reject 
+:      025892 parse_lmp_clkoffset_res:
+0x5fa7 025893 branch parse_rx_done 
+:      025895 parse_lmp_encryption_mode_req:
+0x5fa8 025896 fetch 1 ,mem_connection_options 
+0x5fa9 025897 set0 connection_encrypt 
+0x5faa 025898 store 1 ,mem_connection_options 
+0x5fab 025899 call accept_lmp_msg 
+0x5fac 025900 nrtn master 
+0x5fad 025901 fetch 1 ,mem_rxbuf + 1 
+0x5fae 025902 fetcht 1 ,mem_op 
+0x5faf 025903 setflag blank ,op_stop_enc ,temp 
+0x5fb0 025904 nsetflag blank ,op_start_enc ,temp 
+0x5fb1 025905 storet 1 ,mem_op 
+0x5fb2 025906 rtn 
+:      025908 parse_lmp_features_res:
+0x5fb3 025909 fetcht 8 ,mem_rxbuf + 1 
+:      025910 parse_lmp_features_res_not_hci:
+0x5fb4 025911 fetch 1 ,mem_conn_sm 
+0x5fb5 025912 rtnne conn_sm_wait_features_res 
+0x5fb6 025914 fetch 1 ,mem_connection_options 
+0x5fb7 025915 bbit0 connection_feature_ext ,parse_lmp_send_conn 
+0x5fb8 025917 jam conn_sm_send_features_ext ,mem_conn_sm 
+0x5fb9 025918 rtn 
+:      025919 parse_lmp_send_conn:
+0x5fba 025920 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5fbb 025921 rtn 
+:      025922 parse_lmp_test_activate:
+0x5fbc 025923 fetch 1 ,mem_debug_config 
+0x5fbd 025924 store 1 ,mem_test_mode_old_debug_config 
+0x5fbe 025925 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fbf 025926 jam lmp_test_activate ,mem_lmi_opcode2 
+0x5fc0 025927 rtn 
+:      025928 parse_lmp_test_control:
+0x5fc1 025931 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fc2 025932 jam lmp_test_control ,mem_lmi_opcode2 
+0x5fc3 025933 force 9 ,loopcnt 
+0x5fc4 025934 arg mem_rxbuf + 1 ,contr 
+0x5fc5 025935 arg mem_temp_payload ,contw 
+:      025936 parse_lmp_test_xor:
+0x5fc6 025937 ifetch 1 ,contr 
+0x5fc7 025938 xor_into 0x55 ,pdata 
+0x5fc8 025939 istore 1 ,contw 
+0x5fc9 025940 loop parse_lmp_test_xor 
+0x5fca 025941 fetch 1 ,test_mode_scenario 
+0x5fcb 025942 fetcht 1 ,mem_tester_emulate 
+0x5fcc 025943 set0 tester_no_whitening ,temp 
+0x5fcd 025944 set0 tester_pattern_test ,temp 
+0x5fce 025945 beq exit_test_mode ,parse_lmp_test_control_exit 
+0x5fcf 025946 beq pause_test_mode ,parse_lmp_test_control_pause 
+0x5fd0 025947 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
+0x5fd1 025948 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd2 025949 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
+0x5fd3 025950 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd4 025951 beq zero_pattern ,parse_lmp_test_control_pattern 
+0x5fd5 025952 beq one_pattern ,parse_lmp_test_control_pattern 
+0x5fd6 025953 beq alt_pattern ,parse_lmp_test_control_pattern 
+0x5fd7 025954 beq alt2_pattern ,parse_lmp_test_control_pattern 
+0x5fd8 025955 beq pseudorandom ,parse_lmp_test_control_pattern 
+0x5fd9 025956 rtn 
+:      025957 parse_lmp_test_control_exit:
+0x5fda 025959 fetch 1 ,mem_tester_emulate 
+0x5fdb 025960 set1 tester_exit ,pdata 
+0x5fdc 025961 set1 tester_change ,pdata 
+0x5fdd 025962 store 1 ,mem_tester_emulate 
+0x5fde 025963 rtn 
+:      025964 parse_lmp_test_control_pattern:
+0x5fdf 025965 set1 tester_pattern_test ,temp 
+0x5fe0 025966 jam 5 ,mem_lch_code 
+0x5fe1 025967 fetch 2 ,test_mode_data_length 
+0x5fe2 025968 iforce loopcnt 
+0x5fe3 025969 store 2 ,mem_len 
+0x5fe4 025970 arg mem_rxbuf ,contw 
+0x5fe5 025971 call pn9 
+:      025972 parse_lmp_test_control_loopback_nowhite:
+0x5fe6 025973 set1 tester_no_whitening ,temp 
+:      025974 parse_lmp_test_control_loopback:
+0x5fe7 025975 set1 tester_change ,temp 
+0x5fe8 025976 force 0 ,pdata 
+0x5fe9 025977 store 1 ,mem_slave_rcvcnt 
+0x5fea 025978 store 2 ,mem_tst_pktcnt_crc 
+0x5feb 025979 store 2 ,mem_tst_pktcnt_dmh 
+0x5fec 025980 store 2 ,mem_tst_pktcnt_hec 
+0x5fed 025981 store 2 ,mem_tst_pktcnt_sync 
+0x5fee 025982 fetch 1 ,test_mode_hopping_mode 
+0x5fef 025983 compare fixed_freq ,pdata ,0xff 
+0x5ff0 025984 setflag true ,tester_fixed_freq ,temp 
+0x5ff1 025985 storet 1 ,mem_tester_emulate 
+0x5ff2 025986 rtn 
+:      025988 parse_lmp_test_control_pause:
+0x5ff3 025989 set0 mark_testmode ,mark 
+0x5ff4 025990 jam 0 ,mem_tester_emulate 
+0x5ff5 025991 fetch 1 ,mem_debug_config 
+0x5ff6 025992 set0 debug_tx_pattern ,pdata 
+0x5ff7 025993 store 1 ,mem_debug_config 
+0x5ff8 025994 rtn 
+:      026000 lmp_copy_rand:
+0x5ff9 026001 arg mem_rxbuf + 1 ,contr 
+0x5ffa 026002 arg mem_random_number ,contw 
+0x5ffb 026003 branch memcpy16 
+:      026005 lmp_generate_key:
+0x5ffc 026006 jam lmp_comb_key ,mem_lmo_opcode2 
+0x5ffd 026007 rtn 
+:      026009 lmp_start_encryption:
+0x5ffe 026010 nrtn master 
+0x5fff 026011 jam lmp_start_encryption_req ,mem_lmo_opcode2 
+0x6000 026012 rtn 
+:      026014 lmp_accept_inrand:
+0x6001 026015 arg mem_lap ,rega 
+0x6002 026016 call generate_kinit 
+0x6003 026017 jam lmp_accepted ,mem_lmo_opcode2 
+0x6004 026018 jam lmp_in_rand ,mem_lmi_opcode2 
+0x6005 026019 rtn 
+:      026021 lmp_disconnect:
+0x6006 026022 jam 10 ,mem_conn_timer 
+0x6007 026023 jam lmp_detach ,mem_lmo_opcode2 
+0x6008 026024 jam local_host ,mem_disconn_reason_send 
+0x6009 026025 rtn 
+:      026031 send_lmp:
+0x600a 026032 bpatchx patch30_2 ,mem_patch30 
+0x600b 026033 disable user 
+0x600c 026034 call lmo_fifo_process 
+0x600d 026035 fetch 1 ,mem_lmp_to_send 
+0x600e 026036 rtn blank 
+0x600f 026041 bbit1 7 ,send_lmp_escape 
+:      026042 send_lmp0:
+0x6010 026043 beq lmp_name_req ,send_lmp_name_req 
+0x6011 026044 beq lmp_name_res ,send_lmp_name_res 
+0x6012 026045 beq lmp_accepted ,send_lmp_accepted 
+0x6013 026046 beq lmp_not_accepted ,send_lmp_not_accepted 
+0x6014 026047 beq lmp_features_req ,send_lmp_features_req 
+0x6015 026048 beq lmp_features_res ,send_lmp_features_res 
+0x6016 026049 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
+0x6017 026050 beq lmp_version_req ,send_lmp_version_req 
+0x6018 026051 beq lmp_version_res ,send_lmp_version_res 
+0x6019 026052 beq lmp_setup_complete ,send_lmp_setup_complete 
+0x601a 026053 beq lmp_supervision_timeout ,send_lmp_superto 
+0x601b 026054 beq lmp_host_connection_req ,send_lmp_no_payload 
+0x601c 026055 beq lmp_in_rand ,send_lmp_inrand 
+0x601d 026056 beq lmp_comb_key ,send_lmp_comb_key 
+0x601e 026057 beq lmp_au_rand ,send_lmp_aurand 
+0x601f 026058 beq lmp_sres ,send_lmp_sres 
+0x6020 026059 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
+0x6021 026060 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
+0x6022 026061 beq lmp_start_encryption_req ,send_lmp_start_encryption 
+0x6023 026062 beq lmp_detach ,send_lmp_detach 
+0x6024 026063 beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
+0x6025 026064 beq lmp_unit_key ,send_lmp_unit_key 
+0x6026 026066 beq lmp_incr_power_req ,send_lmp_inc_power 
+0x6027 026067 beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
+0x6028 026068 beq lmp_max_power ,send_lmp_nopayload_reply 
+0x6029 026069 beq lmp_max_slot ,send_lmp_max_slot 
+0x602a 026070 beq lmp_max_slot_req ,send_lmp_max_slot_req 
+0x602b 026071 beq lmp_min_power ,send_lmp_nopayload_reply 
+0x602c 026072 beq lmp_slot_offset ,send_lmp_slot_offset 
+0x602d 026073 beq lmp_switch_req ,send_lmp_switch_req 
+0x602e 026074 beq lmp_sniff_req ,send_lmp_sniff_req 
+0x602f 026075 beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
+0x6030 026076 beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
+0x6031 026077 beq lmp_unsniff_req ,send_lmp_unsniff_req 
+0x6032 026078 beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
+0x6033 026079 beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
+0x6034 026080 beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
+0x6035 026081 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
+0x6036 026082 beq lmp_dhkey_check ,send_lmp_dhkey_check 
+0x6037 026083 beq lmp_auto_rate ,send_lmp_auto_rate 
+0x6038 026084 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
+0x6039 026086 beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
+0x603a 026087 beq lmp_quality_of_service ,send_lmp_quality_of_service 
+0x603b 026088 beq lmp_test_activate ,send_lmp_test_activate 
+0x603c 026089 beq lmp_test_control ,send_lmp_test_control 
+:      026090 send_lmp_error:
+0x603d 026091 branch assert 
+0x603e 026092 rtn 
+:      026093 send_lmp_escape:
+0x603f 026094 beq lmp_ext_accepted ,send_lmpext_accepted 
+0x6040 026095 beq lmp_ext_features_res ,send_lmpext_features_res 
+0x6041 026096 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
+0x6042 026097 beq lmp_ext_features_req ,send_lmpext_features_req 
+0x6043 026098 beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
+0x6044 026099 beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
+0x6045 026100 beq lmp_io_cap_req ,send_lmp_io_cap_req 
+0x6046 026101 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
+0x6047 026102 beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
+0x6048 026103 beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
+0x6049 026104 branch assert 
+:      026110 send_lmp_accepted:
+0x604a 026111 force 2 ,pdata 
+0x604b 026112 call msg_send_lmp 
+0x604c 026113 fetch 1 ,mem_lmi_opcode 
+0x604d 026114 istore 1 ,contw 
+0x604e 026115 call send_lmp_follow 
+0x604f 026116 bpatchx patch30_3 ,mem_patch30 
+0x6050 026117 fetch 1 ,mem_lmi_opcode 
+0x6051 026118 beq lmp_in_rand ,send_lmp_accepted_inrand 
+0x6052 026119 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
+0x6053 026120 beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
+0x6054 026121 beq lmp_sniff_req ,send_lmp_accept_sniff_req 
+0x6055 026122 beq lmp_host_connection_req ,send_lmp_accepted_connection 
+0x6056 026123 beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
+0x6057 026124 beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
+0x6058 026125 rtn 
+:      026127 send_create_conn_start_l2cap_timer_sm:
+0x6059 026128 fetch 1 ,mem_conn_sm 
+0x605a 026129 rtn blank 
+0x605b 026130 jam conn_sm_wait_done ,mem_conn_sm 
+0x605c 026131 setarg timer_enpt_waite 
+0x605d 026132 arg enpt_delay_timer ,queue 
+0x605e 026133 branch timer_init 
+:      026135 send_lmp_accept_sniff_req:
+0x605f 026136 branch sniff_init 
+:      026137 send_lmp_not_accepted:
+0x6060 026138 force 3 ,pdata 
+0x6061 026139 call msg_send_lmp 
+0x6062 026140 fetch 1 ,mem_lmi_opcode 
+0x6063 026141 beq lmp_au_rand ,send_not_accept_aurand 
+0x6064 026142 istore 1 ,contw 
+0x6065 026143 fetch 1 ,mem_lmo_reason 
+0x6066 026144 istore 1 ,contw 
+0x6067 026145 branch send_lmp_follow 
+:      026147 send_not_accept_aurand:
+0x6068 026148 istore 1 ,contw 
+0x6069 026149 fetch 1 ,mem_lmo_reason 
+0x606a 026150 istore 1 ,contw 
+0x606b 026151 arg mem_sres_tid ,temp 
+0x606c 026152 branch special_tid_store 
+:      026154 send_lmpext_accepted:
+0x606d 026155 force 4 ,queue 
+0x606e 026156 call send_lmpext 
+0x606f 026157 setarg lmp_escape 
+0x6070 026158 istore 1 ,contw 
+0x6071 026159 fetch 1 ,mem_lmi_opcode 
+0x6072 026160 set0 7 ,pdata 
+0x6073 026161 istore 1 ,contw 
+0x6074 026162 fetch 1 ,mem_lmi_opcode 
+0x6075 026163 branch send_lmp_follow 
+:      026165 send_lmpext_not_accepted:
+0x6076 026166 force 5 ,queue 
+0x6077 026167 call send_lmpext 
+0x6078 026168 setarg lmp_escape 
+0x6079 026169 istore 1 ,contw 
+0x607a 026170 fetch 1 ,mem_lmi_opcode 
+0x607b 026171 set0 7 ,pdata 
+0x607c 026172 istore 1 ,contw 
+0x607d 026173 fetch 1 ,mem_lmo_reason 
+0x607e 026174 istore 1 ,contw 
+0x607f 026175 branch send_lmp_follow 
+:      026178 send_lmp_accepted_inrand:
+0x6080 026179 call clear_linkkey 
+0x6081 026180 call tid_check 
+0x6082 026181 rtn true 
+0x6083 026182 branch lmp_generate_key 
+:      026184 send_lmp_accepted_enc_mode:
+0x6084 026185 fetch 1 ,mem_op 
+0x6085 026186 bbit1 op_start_enc ,send_lmp_accepted_enc_start 
+0x6086 026187 rtnbit0 op_stop_enc 
+0x6087 026188 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x6088 026189 set0 op_stop_enc ,pdata 
+0x6089 026190 call tid_reply 
+0x608a 026191 branch send_lmp_accepted_enc_exit 
+:      026192 send_lmp_accepted_enc_start:
+0x608b 026193 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x608c 026194 set0 op_start_enc ,pdata 
+:      026195 send_lmp_accepted_enc_exit:
+0x608d 026196 store 1 ,mem_op 
+0x608e 026197 rtn 
+:      026199 send_lmp_accepted_enc_key:
+0x608f 026200 call check_localsm 
+0x6090 026201 branch lmp_start_encryption ,true 
+0x6091 026202 rtn 
+:      026204 send_lmp_accepted_connection:
+0x6092 026205 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+0x6093 026207 fetch 1 ,mem_lmp_conn_state 
+0x6094 026208 set1 received_conn_req ,pdata 
+0x6095 026209 store 1 ,mem_lmp_conn_state 
+0x6096 026210 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x6097 026211 branch ui_ipc_send_event 
+:      026214 send_lmp_accept_dhkey_check:
+0x6098 026215 rtn 
+:      026219 send_lmpext_features_res:
+0x6099 026220 force 12 ,queue 
+0x609a 026221 call send_lmpext 
+0x609b 026222 setarg 0x01 
+0x609c 026223 istore 1 ,contw 
+0x609d 026224 fetch 2 ,mem_lmpext_ssp_enable 
+0x609e 026225 istore 2 ,contw 
+0x609f 026226 setarg 0 
+0x60a0 026227 istore 3 ,contw 
+0x60a1 026228 setarg 0x00 
+0x60a2 026229 istore 4 ,contw 
+0x60a3 026230 branch send_lmp_reply 
+:      026231 send_lmpext_io_cap_res:
+0x60a4 026232 force 5 ,queue 
+0x60a5 026233 call send_lmpext 
+0x60a6 026234 fetch 3 ,mem_sp_iocap_local 
+0x60a7 026235 istore 3 ,contw 
+0x60a8 026236 call send_lmp_reply 
+0x60a9 026237 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
+0x60aa 026238 fetch 1 ,mem_sp_iocap_local 
+0x60ab 026239 beq display_yesno ,responder_iocap_display_yesno 
+0x60ac 026240 beq keyboard_only ,responder_iocap_keyboard_only 
+0x60ad 026241 beq no_input_no_output ,responder_iocap_no_input_no_output 
+0x60ae 026242 rtn 
+:      026244 responder_iocap_keyboard_only:
+0x60af 026245 fetch 1 ,mem_sp_iocap_remote 
+0x60b0 026246 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
+0x60b1 026247 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
+0x60b2 026248 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
+0x60b3 026249 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
+0x60b4 026250 rtn 
+:      026253 responder_iocap_display_yesno:
+0x60b5 026254 fetch 1 ,mem_sp_iocap_remote 
+0x60b6 026255 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
+0x60b7 026256 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
+0x60b8 026257 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
+0x60b9 026258 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
+0x60ba 026259 rtn 
+:      026262 responder_iocap_no_input_no_output:
+0x60bb 026263 fetch 1 ,mem_sp_iocap_remote 
+0x60bc 026264 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
+0x60bd 026265 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
+0x60be 026266 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
+0x60bf 026267 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
+0x60c0 026268 rtn 
+:      026270 responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+:      026271 responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+:      026272 responder_iocap_display_yesno_initiator_iocap_display_only:
+:      026273 responder_iocap_no_input_no_output_initiator_iocap_display_only:
+:      026274 responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+:      026275 responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+:      026276 responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+:      026277 set_ssp_mode_justwork:
+0x60c1 026278 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
+0x60c2 026279 fetch 1 ,mem_classic_bt_flag 
+0x60c3 026280 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
+0x60c4 026281 rtn 
+:      026283 responder_iocap_display_yesno_initiator_iocap_display_yesno:
+:      026284 set_ssp_mode_numeric_comparison:
+0x60c5 026285 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
+0x60c6 026286 rtn 
+:      026288 responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+:      026289 responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
+:      026290 responder_iocap_keyboard_only_initiator_iocap_display_only:
+:      026291 responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+:      026292 set_ssp_mode_passkey:
+0x60c7 026293 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
+0x60c8 026294 rtn 
+:      026297 classic_bt_set_reject_justwork_flag:
+0x60c9 026298 arg flag_ssp_reject_justwork ,queue 
+0x60ca 026299 branch classic_bluetooth_set_flag 
+:      026301 classic_bt_clr_reject_justwork_flag:
+0x60cb 026302 arg flag_ssp_reject_justwork ,queue 
+0x60cc 026303 branch classic_bluetooth_clr_flag 
+:      026305 classic_bluetooth_set_flag:
+0x60cd 026306 fetch 1 ,mem_classic_bt_flag 
+0x60ce 026307 qset1 pdata 
+0x60cf 026308 store 1 ,mem_classic_bt_flag 
+0x60d0 026309 rtn 
+:      026311 classic_bluetooth_clr_flag:
+0x60d1 026312 fetch 1 ,mem_classic_bt_flag 
+0x60d2 026313 qset0 pdata 
+0x60d3 026314 store 1 ,mem_classic_bt_flag 
+0x60d4 026315 rtn 
+:      026318 send_lmp_io_cap_req:
+0x60d5 026319 force 5 ,queue 
+0x60d6 026320 call send_lmpext 
+0x60d7 026321 fetch 3 ,mem_sp_iocap_local 
+0x60d8 026322 istore 3 ,contw 
+0x60d9 026323 branch send_lmp_request 
+:      026326 send_lmpext_sniff_subrating_req:
+0x60da 026328 rtn 
+:      026329 send_lmpext_sniff_subrating_res:
+0x60db 026330 force 9 ,queue 
+0x60dc 026331 call send_lmpext 
+0x60dd 026332 fetch 1 ,mem_subsniff_rate 
+0x60de 026333 istore 1 ,contw 
+0x60df 026334 fetch 2 ,mem_subsniff_tcmax 
+0x60e0 026335 istore 2 ,contw 
+0x60e1 026336 fetch 4 ,mem_subsniff_instant 
+0x60e2 026337 istore 4 ,contw 
+0x60e3 026338 branch send_lmp_reply 
+:      026340 send_lmp_name_res:
+0x60e4 026341 force 17 ,pdata 
+0x60e5 026342 call msg_send_lmp 
+0x60e6 026343 fetch 1 ,mem_lmi_opcode 
+0x60e7 026344 copy pdata ,temp 
+0x60e8 026345 beq 0x00 ,send_lmp_name_res_offset_ok 
+0x60e9 026346 beq 0x0e ,send_lmp_name_res_offset_ok 
+0x60ea 026347 beq 0x1c ,send_lmp_name_res_offset_ok 
+0x60eb 026348 rtn 
+:      026349 send_lmp_name_res_offset_ok:
+0x60ec 026350 istore 1 ,contw 
+0x60ed 026351 fetch 1 ,mem_local_name_length 
+0x60ee 026352 istore 1 ,contw 
+0x60ef 026353 arg 14 ,loopcnt 
+0x60f0 026354 setarg mem_local_name 
+0x60f1 026355 iadd temp ,contr 
+0x60f2 026356 call memcpy 
+0x60f3 026357 branch send_lmp_reply 
+:      026360 send_lmp_timing_accuracy_res:
+0x60f4 026361 force 3 ,pdata 
+0x60f5 026362 call msg_send_lmp 
+0x60f6 026363 setarg 0x0114 
+0x60f7 026364 istore 2 ,contw 
+0x60f8 026365 branch send_lmp_reply 
+:      026367 send_lmp_clkoffset_res:
+0x60f9 026369 force 3 ,pdata 
+0x60fa 026370 call msg_send_lmp 
+0x60fb 026371 fetch 4 ,mem_clke_bt 
+0x60fc 026372 isub clkn_bt ,pdata 
+0x60fd 026373 branch send_lmp_clkoffset_res_master ,master 
+0x60fe 026374 sub pdata ,0 ,pdata 
+:      026375 send_lmp_clkoffset_res_master:
+0x60ff 026377 rshift2 pdata ,pdata 
+0x6100 026378 set0 15 ,pdata 
+0x6101 026379 istore 2 ,contw 
+0x6102 026380 branch send_lmp_reply 
+:      026382 send_lmp_version_res:
+0x6103 026383 force 6 ,pdata 
+0x6104 026384 call msg_send_lmp 
+0x6105 026385 fetch 5 ,mem_lmp_version 
+0x6106 026386 istore 5 ,contw 
+0x6107 026387 branch send_lmp_reply 
+:      026389 send_lmp_features_res:
+0x6108 026390 force 9 ,pdata 
+0x6109 026391 call msg_send_lmp 
+0x610a 026392 fetch 8 ,mem_features 
+0x610b 026393 istore 8 ,contw 
+0x610c 026394 branch send_lmp_reply 
+:      026401 send_lmpext_features_req:
+0x610d 026402 force 12 ,queue 
+0x610e 026403 call send_lmpext 
+0x610f 026404 setarg 0x01 
+0x6110 026405 istore 1 ,contw 
+0x6111 026406 fetch 2 ,mem_lmpext_ssp_enable 
+0x6112 026407 istore 2 ,contw 
+0x6113 026408 setarg 0 
+0x6114 026409 istore 3 ,contw 
+0x6115 026410 setarg 0x00 
+0x6116 026411 istore 4 ,contw 
+0x6117 026412 branch send_lmp_request 
+:      026414 send_lmpext_packet_type_table_req:
+0x6118 026415 force 3 ,queue 
+0x6119 026416 call send_lmpext 
+0x611a 026417 fetch 1 ,mem_ptt 
+0x611b 026418 istore 1 ,contw 
+0x611c 026419 disable user 
+0x611d 026420 call send_lmp_request 
+0x611e 026421 nrtn user 
+0x611f 026422 nrtn master 
+0x6120 026423 fetch 1 ,mem_afh_cfg 
+0x6121 026424 rtnbit0 afh_cfg_on 
+0x6122 026425 call afh_init 
+0x6123 026426 branch afh_open_all_channels 
+:      026429 ssp_enable:
+0x6124 026430 bpatchx patch30_4 ,mem_patch30 
+0x6125 026431 fetch 1 ,mem_features + 6 
+0x6126 026432 set1 param_featrue_ssp ,pdata 
+0x6127 026433 store 1 ,mem_features + 6 
+0x6128 026434 setarg param_lmpext_ssp_enable 
+0x6129 026435 store 2 ,mem_lmpext_ssp_enable 
+0x612a 026436 rtn 
+:      026438 ssp_disable:
+0x612b 026439 bpatchx patch30_5 ,mem_patch30 
+0x612c 026440 fetch 1 ,mem_features + 6 
+0x612d 026441 set0 param_featrue_ssp ,pdata 
+0x612e 026442 store 1 ,mem_features + 6 
+0x612f 026443 setarg 0 
+0x6130 026444 store 2 ,mem_lmpext_ssp_enable 
+0x6131 026445 rtn 
+:      026447 afh_init:
+0x6132 026448 jam 0x3 ,mem_afh_cfg 
+0x6133 026449 setarg 0 
+0x6134 026450 store 4 ,mem_afh_timer 
+0x6135 026451 arg mem_afh_map_lo ,contw 
+0x6136 026452 call afh_reset_map 
+0x6137 026453 arg mem_afh_map_new ,contw 
+0x6138 026454 call afh_reset_map 
+0x6139 026455 arg mem_afh_classify_channel_map ,contw 
+0x613a 026456 call afh_reset_map 
+0x613b 026457 branch afh_clear_error_counter 
+:      026458 afh_open_all_channels:
+0x613c 026459 arg mem_afh_map_new ,contw 
+0x613d 026460 call afh_reset_map 
+0x613e 026461 call afh_clear_error_counter 
+0x613f 026462 branch afh_set_send_flag 
+:      026465 afh_reset_map:
+0x6140 026466 setarg 0xffffff 
+0x6141 026467 istore 3 ,contw 
+0x6142 026468 istore 3 ,contw 
+0x6143 026469 istore 3 ,contw 
+0x6144 026470 setarg 0x7f 
+0x6145 026471 istore 1 ,contw 
+0x6146 026472 rtn 
+:      026473 afh_clear_error_counter:
+0x6147 026474 setarg 0 
+0x6148 026475 store 2 ,mem_afh_error_total 
+0x6149 026476 rtn 
+:      026477 afh_set_send_flag:
+0x614a 026478 fetch 1 ,mem_afh_cfg 
+0x614b 026479 set1 send_lmp_set_afh ,pdata 
+0x614c 026480 store 1 ,mem_afh_cfg 
+0x614d 026481 rtn 
+:      026484 send_lmpext_pause_encryption_req:
+0x614e 026485 force 2 ,queue 
+0x614f 026486 call send_lmpext 
+0x6150 026487 nbranch send_lmp_reply ,master 
+0x6151 026489 branch send_lmp_request 
+:      026493 send_lmp_detach:
+0x6152 026494 force 2 ,pdata 
+0x6153 026495 call msg_send_lmp 
+0x6154 026496 fetch 1 ,mem_disconn_reason_send 
+0x6155 026497 istore 1 ,contw 
+0x6156 026498 call send_lmp_request 
+:      026499 prepare_disconnect:
+0x6157 026500 fetch 1 ,mem_op 
+0x6158 026501 set1 op_disconn ,pdata 
+0x6159 026502 store 1 ,mem_op 
+0x615a 026503 jam 50 ,mem_conn_timer 
+0x615b 026504 rtn 
+:      026507 send_lmp_no_payload:
+0x615c 026508 force 1 ,pdata 
+0x615d 026509 call msg_send_lmp 
+0x615e 026510 branch send_lmp_request 
+:      026511 send_lmp_nopayload_reply:
+0x615f 026512 force 1 ,pdata 
+0x6160 026513 call msg_send_lmp 
+0x6161 026514 branch send_lmp_reply 
+:      026517 send_lmp_encryption_mode_req:
+0x6162 026518 force 2 ,pdata 
+0x6163 026519 call msg_send_lmp 
+0x6164 026520 fetch 1 ,mem_state_map 
+0x6165 026521 isolate0 smap_encryption ,pdata 
+0x6166 026522 setflag true ,0 ,pdata 
+0x6167 026523 and_into 1 ,pdata 
+0x6168 026524 istore 1 ,contw 
+0x6169 026525 branch send_lmp_request 
+:      026528 send_lmp_superto:
+0x616a 026529 force 3 ,pdata 
+0x616b 026530 call msg_send_lmp 
+0x616c 026531 fetch 2 ,mem_supervision_to 
+0x616d 026532 istore 2 ,contw 
+0x616e 026533 branch send_lmp_request 
+:      026535 send_lmp_name_req:
+0x616f 026536 jam 250 ,mem_conn_timer 
+0x6170 026537 force 2 ,pdata 
+0x6171 026538 call msg_send_lmp 
+0x6172 026539 fetch 1 ,mem_name_offset 
+0x6173 026540 istore 1 ,contw 
+0x6174 026541 branch send_lmp_request 
+:      026543 send_lmp_test_control:
+0x6175 026544 force 10 ,pdata 
+0x6176 026545 call msg_send_lmp 
+0x6177 026546 arg mem_temp_payload ,contr 
+0x6178 026547 force 9 ,loopcnt 
+:      026548 send_lmp_test_control_loop:
+0x6179 026549 ifetch 1 ,contr 
+0x617a 026550 xor_into 0x55 ,pdata 
+0x617b 026551 istore 1 ,contw 
+0x617c 026552 loop send_lmp_test_control_loop 
+0x617d 026553 branch send_lmp_request 
+:      026555 send_lmp_quality_of_service_req:
+0x617e 026556 branch send_lmp_request 
+:      026557 send_lmp_unit_key:
+0x617f 026558 branch send_lmp_request 
+:      026560 send_lmp_slot_offset:
+0x6180 026561 rtn master 
+0x6181 026562 call calc_slot_offset 
+0x6182 026563 force 9 ,pdata 
+0x6183 026564 call msg_send_lmp 
+0x6184 026565 fetch 2 ,mem_slot_offset 
+0x6185 026566 istore 2 ,contw 
+0x6186 026567 fetch 3 ,mem_lap 
+0x6187 026568 istore 3 ,contw 
+0x6188 026569 fetch 1 ,mem_uap 
+0x6189 026570 istore 1 ,contw 
+0x618a 026571 fetch 2 ,mem_nap 
+0x618b 026572 istore 2 ,contw 
+0x618c 026573 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
+0x618d 026574 set0 mark_switch_initiated ,mark 
+0x618e 026575 call send_lmp_request 
+0x618f 026576 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6190 026577 rtn 
+:      026578 send_lmp_slot_offset_reply:
+0x6191 026579 call send_lmp_reply 
+0x6192 026580 jam lmp_accepted ,mem_lmo_opcode2 
+0x6193 026581 jam lmp_switch_req ,mem_lmi_opcode2 
+0x6194 026582 rtn 
+:      026584 send_lmp_switch_req:
+0x6195 026585 arg 0x200 ,temp 
+0x6196 026586 branch switch_on_native ,master 
+0x6197 026587 deposit clke_bt 
+0x6198 026588 branch switch_slack 
+:      026589 switch_on_native:
+0x6199 026590 deposit clkn_bt 
+:      026591 switch_slack:
+0x619a 026592 deposit bt_clk 
+0x619b 026593 iadd temp ,pdata 
+0x619c 026594 and_into 0x1fc ,pdata 
+0x619d 026595 store 4 ,mem_sniff_anchor 
+0x619e 026596 force 5 ,pdata 
+0x619f 026597 call msg_send_lmp 
+0x61a0 026598 fetch 4 ,mem_sniff_anchor 
+0x61a1 026599 rshift pdata ,pdata 
+0x61a2 026600 istore 4 ,contw 
+0x61a3 026601 branch send_lmp_request 
+:      026603 send_lmp_sniff_req:
+0x61a4 026604 force 10 ,pdata 
+0x61a5 026605 call msg_send_lmp 
+0x61a6 026606 arg mem_sniff_payload ,contr 
+0x61a7 026607 ifetch 9 ,contr 
+0x61a8 026608 istore 9 ,contw 
+0x61a9 026609 branch send_lmp_request 
+:      026612 send_lmp_timing_accuracy_req:
+0x61aa 026614 force 3 ,pdata 
+0x61ab 026615 call msg_send_lmp 
+0x61ac 026616 setarg 0x0114 
+0x61ad 026617 istore 2 ,contw 
+0x61ae 026618 branch send_lmp_request 
+:      026620 send_lmp_unsniff_req:
+0x61af 026622 force 1 ,pdata 
+0x61b0 026623 call msg_send_lmp 
+0x61b1 026632 branch send_lmp_request 
+:      026635 send_lmp_max_slot:
+0x61b2 026636 force 2 ,pdata 
+0x61b3 026637 call msg_send_lmp 
+0x61b4 026638 fetch 1 ,mem_max_slot 
+0x61b5 026639 istore 1 ,contw 
+0x61b6 026640 branch send_lmp_request 
+:      026643 send_lmp_max_slot_req:
+0x61b7 026644 force 2 ,pdata 
+0x61b8 026645 call msg_send_lmp 
+0x61b9 026646 setarg 0x05 
+0x61ba 026647 istore 1 ,contw 
+0x61bb 026648 branch send_lmp_request 
+:      026651 send_lmp_inc_power:
+0x61bc 026652 force 2 ,pdata 
+0x61bd 026653 call msg_send_lmp 
+0x61be 026654 setarg 0x00 
+0x61bf 026655 istore 1 ,contw 
+0x61c0 026656 branch send_lmp_request 
+:      026659 send_lmp_setup_complete_by_module:
+0x61c1 026660 jam lmp_max_slot_req ,mem_lmo_opcode2 
+0x61c2 026661 rtn 
+:      026662 send_lmp_setup_complete:
+0x61c3 026663 fetch 1 ,mem_device_option 
+0x61c4 026664 sub pdata ,dvc_op_module ,null 
+0x61c5 026665 call send_lmp_setup_complete_by_module ,zero 
+0x61c6 026666 fetch 1 ,mem_state 
+0x61c7 026667 set1 state_conn_comp ,pdata 
+0x61c8 026668 store 1 ,mem_state 
+0x61c9 026669 copy clkn_bt ,pdata 
+0x61ca 026670 store 4 ,mem_aurand_send_delay_time 
+0x61cb 026671 fetch 1 ,mem_lmp_conn_state 
+0x61cc 026672 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
+0x61cd 026673 set1 sent_setup_complete ,pdata 
+0x61ce 026674 store 1 ,mem_lmp_conn_state 
+0x61cf 026675 jam bt_evt_setup_complete ,mem_fifo_temp 
+0x61d0 026676 call ui_ipc_send_event 
+0x61d1 026677 force 1 ,pdata 
+0x61d2 026678 call msg_send_lmp 
+0x61d3 026679 branch send_lmp_request 
+:      026680 send_lmp_setup_complete_has_sent:
+0x61d4 026681 jam 0 ,mem_lmp_to_send 
+0x61d5 026682 rtn 
+:      026684 send_lmp_version_req:
+0x61d6 026685 force 6 ,pdata 
+0x61d7 026686 call msg_send_lmp 
+0x61d8 026687 fetch 5 ,mem_lmp_version 
+0x61d9 026688 istore 5 ,contw 
+0x61da 026689 branch send_lmp_request 
+:      026691 send_lmp_features_req:
+0x61db 026692 force 9 ,pdata 
+0x61dc 026693 call msg_send_lmp 
+0x61dd 026694 fetch 8 ,mem_features 
+0x61de 026695 istore 8 ,contw 
+0x61df 026696 branch send_lmp_request 
+:      026698 sp_master_send_io_cap_get:
+0x61e0 026699 jam sp_flag_commit ,mem_master_sp_flag 
+0x61e1 026700 fetch 1 ,mem_sp_local_key_invalid 
+0x61e2 026701 rtnne sp_key_valid 
+0x61e3 026702 jam sp_master_stat_start_done ,mem_master_sp_state 
+0x61e4 026703 rtn 
+:      026705 sp_master_send_io_cap_send:
+0x61e5 026706 call tid_initiate 
+0x61e6 026707 jam lmp_io_cap_req ,mem_lmo_opcode2 
+0x61e7 026708 jam sp_stat_key_send ,mem_master_sp_state 
+0x61e8 026709 rtn 
+:      026712 sp_master_send_lmp_encapsulated_header:
+0x61e9 026713 call tid_initiate 
+0x61ea 026714 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61eb 026715 jam sp_stat_random_send ,mem_master_sp_state 
+0x61ec 026716 rtn 
+:      026718 sp_master_commitment_compare:
+0x61ed 026719 arg mem_sp_calc_result_high ,rega 
+0x61ee 026720 arg mem_sp_confirm_remote ,regb 
+0x61ef 026721 arg 16 ,loopcnt 
+0x61f0 026722 call string_compare 
+0x61f1 026723 branch sp_master_commitment_compare_success ,zero 
+0x61f2 026724 jam sp_stat_null ,mem_master_sp_state 
+0x61f3 026725 call master_clear_mem_master_sp_flag 
+0x61f4 026726 jam pdu_not_allowed ,mem_lmo_reason2 
+0x61f5 026727 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61f6 026728 branch reject_lmp_packet 
+:      026729 sp_master_commitment_compare_success:
+0x61f7 026730 jam sp_stat_confirm_calc ,mem_master_sp_state 
+0x61f8 026731 call master_set_mem_master_sp_flag 
+0x61f9 026732 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61fa 026733 branch accept_lmp_msg 
+:      026737 sp_master_send_lmp_simple_pairing_number:
+0x61fb 026738 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x61fc 026739 rtn 
+:      026743 sp_send_lmp_encapsulated_header:
+0x61fd 026746 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61fe 026748 rtn 
+:      026754 send_lmp_encapsulated_header:
+0x61ff 026755 jam 0 ,mem_sp_local_key_send_count 
+0x6200 026756 force 4 ,pdata 
+0x6201 026757 call msg_send_lmp 
+0x6202 026758 force encapsulated_major_type_p192 ,pdata 
+0x6203 026759 istore 1 ,contw 
+0x6204 026760 force encapsulated_minor_type_p192 ,pdata 
+0x6205 026761 istore 1 ,contw 
+0x6206 026762 force encapsulated_len_p192 ,pdata 
+0x6207 026763 istore 1 ,contw 
+0x6208 026764 call check_localsm 
+0x6209 026765 branch send_lmp_request ,true 
+0x620a 026766 branch send_lmp_reply 
+:      026768 send_lmp_encapsulated_payload:
+0x620b 026770 force 17 ,pdata 
+0x620c 026771 call msg_send_lmp 
+0x620d 026772 fetch 1 ,mem_sp_local_key_send_count 
+0x620e 026773 arg mem_sp_pubkey_local ,contr 
+0x620f 026774 iadd contr ,contr 
+0x6210 026775 ifetch 8 ,contr 
+0x6211 026776 istore 8 ,contw 
+0x6212 026777 ifetch 8 ,contr 
+0x6213 026778 istore 8 ,contw 
+0x6214 026779 fetch 1 ,mem_sp_local_key_send_count 
+0x6215 026780 increase 16 ,pdata 
+0x6216 026781 store 1 ,mem_sp_local_key_send_count 
+0x6217 026782 call check_localsm 
+0x6218 026783 branch send_lmp_request ,true 
+0x6219 026784 branch send_lmp_reply 
+:      026787 sp_send_lmp_simple_pairing_comfirm:
+0x621a 026788 jam sp_stat_random_recv ,mem_sp_state 
+0x621b 026789 jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
+0x621c 026790 rtn 
+:      026791 send_lmp_simple_pairing_comfirm:
+0x621d 026794 force 17 ,pdata 
+0x621e 026795 call msg_send_lmp 
+0x621f 026796 arg mem_sp_calc_result_high ,contr 
+0x6220 026797 ifetch 8 ,contr 
+0x6221 026798 istore 8 ,contw 
+0x6222 026799 ifetch 8 ,contr 
+0x6223 026800 istore 8 ,contw 
+0x6224 026801 branch send_lmp_reply 
+:      026803 sp_send_lmp_simple_pairing_number:
+0x6225 026804 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x6226 026805 rtn 
+:      026807 send_lmp_simple_pairing_number:
+0x6227 026809 call check_localsm 
+0x6228 026810 call sp_local_random_key_generator ,true 
+0x6229 026811 force 17 ,pdata 
+0x622a 026812 call msg_send_lmp 
+0x622b 026813 arg mem_sp_random_local ,contr 
+0x622c 026814 ifetch 8 ,contr 
+0x622d 026815 istore 8 ,contw 
+0x622e 026816 ifetch 8 ,contr 
+0x622f 026817 istore 8 ,contw 
+0x6230 026818 call check_localsm 
+0x6231 026819 nbranch send_lmp_reply ,true 
+0x6232 026820 branch send_lmp_request ,true 
+:      026822 master_sp_sm_end:
+0x6233 026824 jam sp_stat_done ,mem_master_sp_state 
+:      026825 sp_aurand_send:
+0x6234 026826 call tid_initiate 
+0x6235 026827 jam lmp_au_rand ,mem_lmo_opcode2 
+0x6236 026828 call check_localsm_master 
+0x6237 026829 branch sp_master_key_prarm_push ,true 
+0x6238 026830 branch sp_link_key_prarm_push 
+:      026831 master_sp_send_lmp_dhkey_check:
+0x6239 026832 call tid_reply 
+:      026833 sp_send_lmp_dhkey_check:
+0x623a 026834 jam lmp_dhkey_check ,mem_lmo_opcode2 
+0x623b 026835 rtn 
+:      026836 send_lmp_dhkey_check:
+0x623c 026838 force 17 ,pdata 
+0x623d 026839 call msg_send_lmp 
+0x623e 026840 arg mem_sp_calc_result_high ,contr 
+0x623f 026841 ifetch 8 ,contr 
+0x6240 026842 istore 8 ,contw 
+0x6241 026843 ifetch 8 ,contr 
+0x6242 026844 istore 8 ,contw 
+0x6243 026845 call check_localsm 
+0x6244 026846 nbranch send_lmp_reply ,true 
+0x6245 026847 branch send_lmp_request ,true 
+:      026849 send_lmp_enc_key_size_mask_res:
+0x6246 026850 force 3 ,pdata 
+0x6247 026851 call msg_send_lmp 
+0x6248 026852 setarg 0xfffe 
+0x6249 026853 istore 2 ,contw 
+0x624a 026854 branch send_lmp_reply 
+:      026856 send_lmp_auto_rate:
+0x624b 026857 branch send_lmp_request 
+:      026858 send_lmp_clkoffset_req:
+0x624c 026859 branch send_lmp_request 
+:      026860 send_lmp_quality_of_service:
+0x624d 026861 branch send_lmp_request 
+:      026862 send_lmp_test_activate:
+0x624e 026863 branch send_lmp_request 
+:      026868 send_lmp_comb_key:
+0x624f 026869 call generate_random_number 
+0x6250 026870 arg mem_lap ,rega 
+0x6251 026871 call generate_linkkey 
+0x6252 026872 force 17 ,pdata 
+0x6253 026873 call msg_send_lmp 
+0x6254 026874 arg mem_kinit ,rega 
+0x6255 026875 arg mem_random_number ,regb 
+0x6256 026876 call xor16 
+0x6257 026877 nbranch send_lmp_follow ,master 
+0x6258 026878 branch send_lmp_tid 
+:      026880 send_lmp_inrand:
+0x6259 026881 call generate_random_number 
+0x625a 026882 arg mem_plap ,rega 
+0x625b 026883 call generate_kinit 
+:      026884 send_lmp_rand:
+0x625c 026885 force 17 ,pdata 
+0x625d 026886 call msg_send_lmp 
+0x625e 026887 arg mem_random_number ,contr 
+0x625f 026888 call memcpy16 
+0x6260 026889 fetch 1 ,mem_conn_sm 
+0x6261 026890 beq conn_sm_auth_wait ,send_lmp_request 
+0x6262 026891 beq conn_sm_pairing_wait ,send_lmp_request 
+0x6263 026892 branch send_lmp_tid 
+:      026894 send_lmp_aurand:
+0x6264 026895 fetch 1 ,mem_pairing_auth 
+0x6265 026896 branch send_lmp_aurand_notpairing ,blank 
+0x6266 026897 call check_localsm 
+0x6267 026898 call tid_initiate ,true 
+0x6268 026899 ncall tid_reply ,true 
+0x6269 026900 branch send_lmp_aurand_common 
+:      026901 send_lmp_aurand_notpairing:
+0x626a 026902 call tid_initiate 
+:      026903 send_lmp_aurand_common:
+0x626b 026904 call generate_random_number 
+0x626c 026905 branch send_lmp_rand 
+:      026907 send_lmp_sres:
+0x626d 026908 arg mem_lap ,rega 
+0x626e 026909 call function_e1 
+0x626f 026910 force 5 ,pdata 
+0x6270 026911 call msg_send_lmp 
+0x6271 026912 fetch 4 ,mem_input_store 
+0x6272 026913 istore 4 ,contw 
+0x6273 026914 arg mem_sres_tid ,temp 
+0x6274 026915 call special_tid_store 
+0x6275 026916 call copy_aco 
+0x6276 026917 call check_localsm 
+0x6277 026918 branch send_lmp_sres_master ,true 
+0x6278 026919 jam done_encryp ,mem_wait_encryption 
+0x6279 026920 fetch 1 ,mem_pairing_auth 
+0x627a 026921 rtn blank 
+0x627b 026922 jam lmp_au_rand ,mem_lmo_opcode2 
+:      026923 send_lmp_sres_master:
+0x627c 026924 fetch 1 ,mem_link_key_exists 
+0x627d 026925 rtn blank 
+:      026926 send_lmp_sres_startenc:
+0x627e 026927 call check_localsm 
+0x627f 026928 nbranch send_lmp_sres_startenc_slave ,true 
+0x6280 026929 fetch 1 ,mem_auth_enable 
+0x6281 026930 rtn blank 
+0x6282 026931 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6283 026932 rtn 
+:      026933 send_lmp_sres_startenc_slave:
+0x6284 026934 rtnmark0 mark_slave_in_rand_accepted 
+0x6285 026935 set0 mark_slave_in_rand_accepted ,mark 
+0x6286 026936 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6287 026937 rtn 
+:      026941 send_lmp_start_encryption:
+0x6288 026942 call generate_random_number 
+0x6289 026943 call function_e3 
+0x628a 026944 force 17 ,pdata 
+0x628b 026945 call msg_send_lmp 
+0x628c 026946 arg mem_random_number ,contr 
+0x628d 026947 call memcpy16 
+0x628e 026948 branch send_lmp_tid 
+:      026950 send_lmp_stop_encryption_req:
+0x628f 026951 force 1 ,pdata 
+0x6290 026952 call msg_send_lmp 
+0x6291 026953 branch send_lmp_tid 
+:      026955 send_lmp_encryption_key_size_req:
+0x6292 026956 force 2 ,pdata 
+0x6293 026957 call msg_send_lmp 
+0x6294 026958 force 16 ,pdata 
+0x6295 026959 istore 1 ,contw 
+0x6296 026960 store 1 ,mem_key_size 
+0x6297 026961 branch send_lmp_tid 
+:      026963 msg_send_lmp:
+0x6298 026965 lshift3 pdata ,pdata 
+0x6299 026966 or_into 0x07 ,pdata 
+0x629a 026967 store 1 ,mem_lmo_header_length 
+0x629b 026968 arg 17 ,loopcnt 
+0x629c 026969 arg mem_lmo_payload ,contw 
+0x629d 026970 call clear_mem 
+0x629e 026971 arg mem_lmo_payload ,contw 
+0x629f 026972 rtn 
+:      026974 send_lmpext:
+0x62a0 026975 and pdata ,0x7f ,rega 
+0x62a1 026976 jam lmp_escape ,mem_lmp_to_send 
+0x62a2 026977 deposit queue 
+0x62a3 026978 call msg_send_lmp 
+0x62a4 026979 deposit rega 
+0x62a5 026980 istore 1 ,contw 
+0x62a6 026981 rtn 
+:      026983 send_lmp_follow:
+0x62a7 026984 fetch 1 ,mem_lmp_to_send 
+0x62a8 026985 lshift pdata ,pdata 
+0x62a9 026986 fetcht 1 ,mem_state_map 
+0x62aa 026987 isolate1 smap_lmptid ,temp 
+0x62ab 026988 setflag true ,0 ,pdata 
+0x62ac 026989 branch send_lmp_exit 
+:      026992 send_lmp_tid:
+0x62ad 026993 fetcht 1 ,mem_state_map 
+0x62ae 026994 and_into 1 ,temp 
+0x62af 026995 branch send_lmp_end 
+:      026997 send_lmp_reply:
+0x62b0 026998 force 0 ,temp 
+0x62b1 026999 branch send_lmp_end 
+:      027001 send_lmp_request:
+0x62b2 027002 force 1 ,temp 
+:      027003 send_lmp_end:
+0x62b3 027004 fetch 1 ,mem_lmp_to_send 
+0x62b4 027005 lshift pdata ,pdata 
+0x62b5 027006 setflag master ,0 ,pdata 
+0x62b6 027007 ixor temp ,pdata 
+:      027008 send_lmp_exit:
+0x62b7 027009 store 1 ,mem_lmo_header_opcode 
+0x62b8 027010 jam 0 ,mem_lmp_to_send 
+0x62b9 027011 call lmo_fifo_process_lmo0empty 
+0x62ba 027012 enable user 
+0x62bb 027013 rtn 
+:      027016 lmo_fifo_check:
+0x62bc 027017 fetch 1 ,mem_lmo_opcode2 
+0x62bd 027018 rtn blank 
+0x62be 027019 call lmo_fifo_process 
+0x62bf 027020 fetch 1 ,mem_lmo_opcode2 
+0x62c0 027021 rtn 
+:      027023 lmo_fifo_process:
+0x62c1 027024 bpatchx patch30_6 ,mem_patch30 
+0x62c2 027025 fetch 1 ,mem_lmp_to_send 
+0x62c3 027026 branch lmo_fifo_process_lmo0empty ,blank 
+0x62c4 027027 fetch 1 ,mem_lmo_opcode1 
+0x62c5 027028 nrtn blank 
+0x62c6 027029 branch lmo_fifo_process_lmo2to1 
+:      027030 lmo_fifo_process_lmo0empty:
+0x62c7 027031 fetch 1 ,mem_lmo_opcode1 
+0x62c8 027032 branch lmo_fifo_process_lmo1_empty ,blank 
+0x62c9 027033 fetch 3 ,mem_lmo_opcode1 
+0x62ca 027034 store 3 ,mem_lmp_to_send 
+0x62cb 027035 fetcht 1 ,mem_lmo_tid1 
+0x62cc 027036 fetch 1 ,mem_state_map 
+0x62cd 027037 set0 smap_lmptid ,pdata 
+0x62ce 027038 ior temp ,pdata 
+0x62cf 027039 store 1 ,mem_state_map 
+0x62d0 027040 jam 0 ,mem_lmo_opcode1 
+:      027041 lmo_fifo_process_lmo2to1:
+0x62d1 027042 fetch 1 ,mem_lmo_opcode2 
+0x62d2 027043 rtn blank 
+0x62d3 027044 fetch 4 ,mem_lmo_opcode2 
+0x62d4 027045 store 4 ,mem_lmo_opcode1 
+0x62d5 027046 jam 0 ,mem_lmo_opcode2 
+0x62d6 027047 rtn 
+:      027048 lmo_fifo_process_lmo1_empty:
+0x62d7 027049 fetch 1 ,mem_lmo_opcode2 
+0x62d8 027050 rtn blank 
+0x62d9 027051 fetch 3 ,mem_lmo_opcode2 
+0x62da 027052 store 3 ,mem_lmp_to_send 
+0x62db 027053 fetcht 1 ,mem_lmo_tid2 
+0x62dc 027054 fetch 1 ,mem_state_map 
+0x62dd 027055 set0 smap_lmptid ,pdata 
+0x62de 027056 ior temp ,pdata 
+0x62df 027057 store 1 ,mem_state_map 
+0x62e0 027058 jam 0 ,mem_lmo_opcode2 
+0x62e1 027059 rtn 
+:      027062 special_tid_store:
+0x62e2 027063 bpatchx patch30_7 ,mem_patch30 
+0x62e3 027064 fetch 1 ,mem_state_map 
+0x62e4 027065 copy pdata ,regc 
+0x62e5 027066 ifetch 1 ,temp 
+0x62e6 027067 call pop_tid_follow 
+0x62e7 027068 call send_lmp_follow 
+0x62e8 027069 copy regc ,pdata 
+0x62e9 027070 store 1 ,mem_state_map 
+0x62ea 027071 rtn 
+:      027073 tid_reply:
+0x62eb 027074 fetcht 1 ,mem_state_map 
+0x62ec 027075 set0 smap_lmptidinit ,temp 
+0x62ed 027076 storet 1 ,mem_state_map 
+0x62ee 027077 rtn 
+:      027079 tid_initiate:
+0x62ef 027080 fetcht 1 ,mem_state_map 
+0x62f0 027081 set1 smap_lmptidinit ,temp 
+0x62f1 027082 storet 1 ,mem_state_map 
+0x62f2 027083 rtn 
+:      027086 tid_check:
+0x62f3 027087 nsetflag master ,smap_lmptid ,pdata 
+0x62f4 027088 fetcht 1 ,mem_state_map 
+0x62f5 027089 ixor temp ,pdata 
+0x62f6 027090 isolate1 smap_lmptid ,pdata 
+0x62f7 027091 rtn 
+:      027094 tid_set_reply:
+0x62f8 027095 fetch 1 ,mem_state_map 
+0x62f9 027096 setflag master ,smap_lmptid ,pdata 
+0x62fa 027097 store 1 ,mem_state_map 
+0x62fb 027098 rtn 
+:      027101 check_localsm:
+0x62fc 027102 fetch 1 ,mem_sp_localsm 
+0x62fd 027103 compare local_statemachine ,pdata ,0x7f 
+0x62fe 027104 rtn 
+:      027105 setlocalsm_master:
+0x62ff 027106 fetch 1 ,mem_sp_localsm 
+0x6300 027107 set1 7 ,pdata 
+0x6301 027108 store 1 ,mem_sp_localsm 
+0x6302 027109 rtn 
+:      027110 setlocalsm_slave:
+0x6303 027111 fetch 1 ,mem_sp_localsm 
+0x6304 027112 set0 7 ,pdata 
+0x6305 027113 store 1 ,mem_sp_localsm 
+0x6306 027114 rtn 
+:      027115 check_localsm_master:
+0x6307 027116 fetch 1 ,mem_sp_localsm 
+0x6308 027117 isolate1 7 ,pdata 
+0x6309 027118 store 1 ,mem_sp_localsm 
+0x630a 027119 rtn 
+:      027121 generate_random_number:
+0x630b 027123 arg mem_random_number ,contw 
+:      027124 generate_random:
+0x630c 027125 force 16 ,loopcnt 
+:      027126 generate_random_another:
+:      027127 generate_random_loop:
+0x630d 027128 random pdata 
+0x630e 027129 istore 1 ,contw 
+0x630f 027130 loop generate_random_another 
+0x6310 027131 rtn 
+:      027133 generate_linkkey:
+0x6311 027134 call function_e21 
+0x6312 027135 arg mem_link_key ,rega 
+0x6313 027136 arg mem_input_store ,regb 
+0x6314 027137 ifetch 8 ,rega 
+0x6315 027138 fetcht 1 ,mem_state 
+0x6316 027139 nsetflag blank ,state_combkey ,temp 
+0x6317 027140 storet 1 ,mem_state 
+0x6318 027141 copy rega ,contw 
+0x6319 027142 call xor16 
+0x631a 027143 branch generate_linkkey_continue 
+:      027149 process_conn_sm:
+0x631b 027151 bpatchx patch31_0 ,mem_patch31 
+0x631c 027153 call lmo_fifo_check 
+0x631d 027154 nrtn blank 
+:      027155 process_conn_sm_continue:
+0x631e 027156 fetch 1 ,mem_conn_sm 
+0x631f 027157 rtn blank 
+0x6320 027161 beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
+0x6321 027162 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
+0x6322 027163 beq conn_sm_send_features ,host_create_conn_send_features 
+0x6323 027164 beq conn_sm_wait_features_res ,host_create_conn_waiting 
+0x6324 027165 beq conn_sm_send_switch ,host_create_conn_send_switch 
+0x6325 027166 beq conn_sm_auth_pair ,host_create_conn_auth_pair 
+0x6326 027167 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
+0x6327 027168 beq conn_sm_encrypt ,host_create_conn_encrypt 
+0x6328 027169 beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
+0x6329 027170 beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
+0x632a 027171 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
+0x632b 027172 beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
+0x632c 027173 beq conn_sm_detach_delay ,host_create_conn_master_detach 
+0x632d 027174 beq conn_sm_send_version ,host_create_conn_send_version 
+0x632e 027175 beq conn_sm_wait_version ,host_create_conn_waiting 
+0x632f 027176 beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
+0x6330 027177 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
+0x6331 027178 beq conn_sm_wait_features_ext ,host_create_conn_waiting 
+0x6332 027179 beq conn_sm_pairing ,host_create_conn_pairing 
+0x6333 027180 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
+0x6334 027181 beq conn_sm_auth ,host_create_conn_auth 
+0x6335 027182 beq conn_sm_auth_wait ,host_create_conn_auth_wait 
+0x6336 027183 beq conn_sm_done ,host_create_conn_done 
+0x6337 027184 beq conn_sm_wait_done ,host_create_conn_done_wait 
+0x6338 027185 jam conn_sm_standby ,mem_conn_sm 
+0x6339 027187 rtn 
+:      027188 host_create_conn_done:
+0x633a 027189 fetch 1 ,mem_lmp_conn_state 
+0x633b 027190 rtnbit0 received_setup_complete 
+0x633c 027191 rtnbit0 sent_setup_complete 
+0x633d 027192 jam conn_sm_standby ,mem_conn_sm 
+0x633e 027193 call host_conn_judge_encrypt 
+0x633f 027194 branch scheduler_start_upper_sm 
+:      027196 host_conn_judge_encrypt:
+0x6340 027197 fetch 1 ,mem_connection_options 
+0x6341 027198 rtnbit0 connection_encrypt 
+0x6342 027199 jam conn_sm_encrypt_wait ,mem_conn_sm 
+0x6343 027200 rtn 
+:      027202 host_create_conn_done_wait:
+0x6344 027203 arg enpt_delay_timer ,queue 
+0x6345 027204 call timer_check 
+0x6346 027205 nrtn blank 
+0x6347 027206 jam conn_sm_done ,mem_conn_sm 
+0x6348 027207 rtn 
+:      027209 host_create_conn_auth:
+0x6349 027210 fetch 1 ,mem_connection_options 
+0x634a 027211 set0 connection_auth ,pdata 
+0x634b 027212 store 1 ,mem_connection_options 
+0x634c 027213 jam conn_sm_auth_wait ,mem_conn_sm 
+0x634d 027214 jam lmp_au_rand ,mem_lmo_opcode2 
+0x634e 027215 rtn 
+:      027216 host_create_conn_auth_wait:
+0x634f 027217 rtn 
+:      027218 host_create_conn_pairing:
+0x6350 027219 fetch 1 ,mem_pincode_state 
+0x6351 027220 rtnne pincode_state_pincode_ready 
+0x6352 027221 call host_auth 
+0x6353 027222 jam conn_sm_pairing_wait ,mem_conn_sm 
+0x6354 027223 rtn 
+:      027225 host_create_conn_pairing_wait:
+0x6355 027226 rtn 
+:      027227 host_creat_conn_send_feat_ext:
+0x6356 027228 jam conn_sm_wait_features_ext ,mem_conn_sm 
+0x6357 027229 jam lmp_ext_features_req ,mem_lmo_opcode2 
+0x6358 027230 rtn 
+:      027231 host_create_conn_send_version:
+0x6359 027232 jam conn_sm_wait_version ,mem_conn_sm 
+0x635a 027233 jam lmp_version_req ,mem_lmo_opcode2 
+0x635b 027234 rtn 
+:      027236 host_creat_conn_wait_switch:
+0x635c 027237 fetch 1 ,mem_switch_flag 
+0x635d 027238 rtneq switch_flag_init 
+0x635e 027239 beq switch_flag_accept ,host_create_conn_switch_accept 
+0x635f 027240 arg switch_wait_timer ,queue 
+0x6360 027241 call timer_check 
+0x6361 027242 nrtn blank 
+0x6362 027243 jam switch_flag_init ,mem_switch_flag 
+0x6363 027244 branch host_create_conn_switch 
+:      027245 host_create_conn_switch_accept:
+0x6364 027246 rtn master 
+0x6365 027247 branch host_create_conn_auth_pair 
+:      027249 host_create_conn_send_features:
+0x6366 027250 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x6367 027251 jam lmp_features_req ,mem_lmo_opcode2 
+0x6368 027252 rtn 
+:      027253 host_create_conn_send_switch:
+0x6369 027254 jam lmp_switch_req ,mem_lmo_opcode2 
+0x636a 027255 set1 mark_switch_initiated ,mark 
+0x636b 027256 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x636c 027257 setarg 0x1ff 
+0x636d 027258 store 2 ,mem_soft_timer 
+0x636e 027259 rtn 
+:      027260 host_create_conn_send_conn_req:
+0x636f 027261 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x6370 027262 jam 0xff ,mem_soft_timer 
+0x6371 027263 set0 mark_reconn_recieve_switch ,mark 
+0x6372 027264 jam lmp_host_connection_req ,mem_lmo_opcode2 
+0x6373 027265 branch init_lmp_reinit 
+:      027266 host_create_conn_wait_accept:
+0x6374 027267 rtnmark1 mark_reconn_recieve_switch 
+0x6375 027268 fetch 2 ,mem_soft_timer 
+0x6376 027269 sub pdata ,1 ,pdata 
+0x6377 027270 branch host_create_conn_resend ,zero 
+0x6378 027271 store 2 ,mem_soft_timer 
+0x6379 027272 rtn 
+:      027273 host_create_conn_resend:
+0x637a 027274 jam conn_sm_send_switch ,mem_conn_sm 
+0x637b 027275 rtn 
+:      027276 host_create_conn_waiting:
+0x637c 027278 rtn 
+:      027280 host_create_conn_switch:
+0x637d 027281 fetch 1 ,mem_lmp_conn_state 
+0x637e 027282 rtnbit0 sent_setup_complete 
+0x637f 027283 rtnbit0 received_setup_complete 
+0x6380 027284 fetch 1 ,mem_connection_options 
+0x6381 027285 set0 connection_switch ,pdata 
+0x6382 027286 store 1 ,mem_connection_options 
+0x6383 027287 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6384 027288 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
+0x6385 027289 rtn 
+:      027291 host_create_conn_send_setup_complete:
+0x6386 027292 jam conn_sm_wait_setup_complete ,mem_conn_sm 
+0x6387 027293 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x6388 027294 rtn 
+:      027296 host_create_conn_wait_setup_complete:
+0x6389 027297 fetch 1 ,mem_lmp_conn_state 
+0x638a 027298 rtnbit0 received_setup_complete 
+0x638b 027299 jam conn_sm_standby ,mem_conn_sm 
+0x638c 027301 rtn 
+:      027302 host_create_conn_wait_setup_complete_rtn:
+0x638d 027303 jam conn_sm_auth_pair ,mem_conn_sm 
+0x638e 027304 rtn 
+:      027306 host_create_conn_master_detach:
+0x638f 027307 fetch 1 ,mem_soft_timer 
+0x6390 027308 increase -1 ,pdata 
+0x6391 027309 branch host_create_conn_send_detach ,blank 
+0x6392 027310 store 1 ,mem_soft_timer 
+0x6393 027311 rtn 
+:      027312 host_create_conn_send_detach:
+0x6394 027313 jam lmp_detach ,mem_lmo_opcode2 
+0x6395 027314 jam local_host ,mem_disconn_reason_send 
+0x6396 027315 jam 0 ,mem_conn_sm 
+0x6397 027316 rtn 
+:      027317 host_create_conn_auth_pair:
+0x6398 027319 fetch 1 ,mem_connection_options 
+0x6399 027320 bbit1 connection_switch ,host_create_conn_switch 
+0x639a 027321 bbit1 connection_auth ,host_create_conn_auth_pair_true 
+:      027322 host_create_conn_sm_done:
+0x639b 027323 jam conn_sm_done ,mem_conn_sm 
+0x639c 027324 rtn 
+:      027325 host_create_conn_auth_pair_true:
+0x639d 027326 fetch 1 ,mem_link_key_exists 
+0x639e 027327 branch host_create_conn_auth_pair_nokey ,blank 
+0x639f 027328 fetch 1 ,mem_lmp_conn_state 
+0x63a0 027329 rtnbit0 sent_setup_complete 
+0x63a1 027330 rtnbit0 received_setup_complete 
+0x63a2 027331 fetch 4 ,mem_aurand_send_delay_time 
+0x63a3 027332 arg 100 ,temp 
+0x63a4 027333 iadd temp ,temp 
+0x63a5 027334 copy clkn_bt ,pdata 
+0x63a6 027335 isub temp ,null 
+0x63a7 027336 nrtn positive 
+0x63a8 027337 branch host_create_conn_auth 
+:      027341 host_create_conn_auth_pair_nokey:
+0x63a9 027342 jam conn_sm_pairing ,mem_conn_sm 
+0x63aa 027343 jam 4 ,mem_pin_length 
+0x63ab 027344 setarg 0x3030 
+0x63ac 027345 store 2 ,mem_pin 
+0x63ad 027346 istore 2 ,contw 
+0x63ae 027347 jam pincode_state_pincode_ready ,mem_pincode_state 
+0x63af 027348 branch host_create_conn_pairing 
+:      027350 host_create_conn_auth_pair_wait:
+0x63b0 027351 rtn 
+:      027352 host_create_conn_encrypt:
+0x63b1 027353 fetch 1 ,mem_connection_options 
+0x63b2 027354 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
+0x63b3 027355 jam conn_sm_done ,mem_conn_sm 
+0x63b4 027356 rtn 
+:      027358 host_create_conn_encrypt_start:
+0x63b5 027359 fetch 1 ,mem_connection_options 
+0x63b6 027360 set0 connection_encrypt ,pdata 
+0x63b7 027361 store 1 ,mem_connection_options 
+0x63b8 027362 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x63b9 027363 rtn 
+:      027365 host_create_conn_encrypt_wait:
+0x63ba 027366 fetch 1 ,mem_wait_encryption 
+0x63bb 027367 rtn blank 
+0x63bc 027368 jam conn_sm_standby ,mem_conn_sm 
+0x63bd 027369 branch host_create_conn_encrypt_start 
+:      027371 host_create_conn_encrypt_wait_clear:
+0x63be 027372 jam conn_sm_send_setup_complete ,mem_conn_sm 
+0x63bf 027373 rtn 
+:      027375 host_auth:
+0x63c0 027376 fetch 1 ,mem_op 
+0x63c1 027377 bbit1 op_inrand_req ,remote_auth 
+0x63c2 027378 call tid_initiate 
+0x63c3 027379 jam lmp_in_rand ,mem_lmo_opcode2 
+0x63c4 027380 branch cmd_exit 
+:      027381 remote_auth:
+0x63c5 027382 fetch 1 ,mem_op 
+0x63c6 027383 set0 op_inrand_req ,pdata 
+0x63c7 027384 store 1 ,mem_op 
+0x63c8 027385 call lmp_accept_inrand 
+0x63c9 027386 call tid_set_reply 
+0x63ca 027387 branch cmd_exit 
+:      027389 pincode_reinit:
+0x63cb 027390 setarg 4 
+0x63cc 027391 store 1 ,mem_pin_length 
+0x63cd 027392 setarg 0x3030 
+0x63ce 027393 istore 2 ,contw 
+0x63cf 027394 istore 2 ,contw 
+0x63d0 027395 rtn 
+:      027401 twspi_reset:
+0x63d1 027402 bpatchx patch31_4 ,mem_patch31 
+0x63d2 027403 hfetch 1 ,core_gpio_oe3 
+0x63d3 027404 arg 0x06 ,temp 
+0x63d4 027405 ior temp ,pdata 
+0x63d5 027406 hstore 1 ,core_gpio_oe3 
+0x63d6 027407 hfetch 1 ,core_gpio_out3 
+0x63d7 027408 ior temp ,pdata 
+0x63d8 027409 hstore 1 ,core_gpio_out3 
+0x63d9 027410 call twspi_disable 
+0x63da 027411 hfetch 1 ,core_gpio_out3 
+0x63db 027412 set0 1 ,pdata 
+0x63dc 027413 set0 2 ,pdata 
+0x63dd 027414 hstore 1 ,core_gpio_out3 
+0x63de 027415 nop 30 
+0x63df 027416 branch twspi_enable 
+:      027418 twspi_reset2:
+0x63e0 027419 hfetch 1 ,core_gpio_oe3 
+0x63e1 027420 arg 0xc0 ,temp 
+0x63e2 027421 ior temp ,pdata 
+0x63e3 027422 hstore 1 ,core_gpio_oe3 
+0x63e4 027423 hfetch 1 ,core_gpio_out3 
+0x63e5 027424 ior temp ,pdata 
+0x63e6 027425 hstore 1 ,core_gpio_out3 
+0x63e7 027426 call twspi_disable 
+0x63e8 027427 hfetch 1 ,core_gpio_out3 
+0x63e9 027428 set0 6 ,pdata 
+0x63ea 027429 set0 7 ,pdata 
+0x63eb 027430 hstore 1 ,core_gpio_out3 
+0x63ec 027431 nop 30 
+0x63ed 027432 branch twspi_enable2 
+:      027434 twspi_disable:
+0x63ee 027435 hfetch 1 ,core_gpio_sel1 
+0x63ef 027436 and pdata ,0xfc ,pdata 
+0x63f0 027437 hstore 1 ,core_gpio_sel1 
+0x63f1 027438 rtn 
+:      027439 twspi_enable:
+0x63f2 027440 hfetch 1 ,core_gpio_sel1 
+0x63f3 027441 or pdata ,0x01 ,pdata 
+0x63f4 027442 hstore 1 ,core_gpio_sel1 
+0x63f5 027443 rtn 
+:      027444 twspi_enable2:
+0x63f6 027445 hfetch 1 ,core_gpio_sel1 
+0x63f7 027446 or pdata ,0x03 ,pdata 
+0x63f8 027447 set0 4 ,pdata 
+0x63f9 027448 hstore 1 ,core_gpio_sel1 
+0x63fa 027449 rtn 
+:      027453 sensor_read:
+0x63fb 027454 copy pdata ,regb 
+0x63fc 027455 call spi_ncs_enable 
+0x63fd 027456 nop 100 
+0x63fe 027457 copy regb ,pdata 
+0x63ff 027458 call twspi_read 
+0x6400 027459 copy pdata ,regb 
+0x6401 027460 call spi_ncs_disable 
+0x6402 027461 nop 100 
+0x6403 027462 copy regb ,pdata 
+0x6404 027463 rtn 
+:      027465 sensor_write:
+0x6405 027466 copy pdata ,regb 
+0x6406 027467 call spi_ncs_enable 
+0x6407 027468 nop 100 
+0x6408 027469 copy regb ,pdata 
+0x6409 027470 call twspi_write 
+0x640a 027471 call spi_ncs_disable 
+0x640b 027472 nop 100 
+0x640c 027473 rtn 
+:      027476 spi_ncs_gpio_init:
+0x640d 027477 fetcht 1 ,mem_spi_ncs_gpio 
+0x640e 027478 branch gpio_config_output 
+:      027481 spi_ncs_enable:
+0x640f 027482 fetcht 1 ,mem_spi_ncs_gpio 
+0x6410 027483 branch gpio_out_active 
+:      027486 spi_ncs_disable:
+0x6411 027487 fetcht 1 ,mem_spi_ncs_gpio 
+0x6412 027488 branch gpio_out_inactive 
+:      027491 twspi_write:
+0x6413 027492 branch spid_write_reg 
+:      027494 twspi_read:
+0x6414 027495 branch spid_read_reg 
+:      027502 read_function_aes:
+0x6415 027503 nbranch read_function ,user 
+0x6416 027504 hfetch 1 ,core_gpio_key2 
+0x6417 027505 or_into 0x2 ,pdata 
+0x6418 027506 hstore 1 ,core_gpio_key2 
+:      027507 read_function:
+0x6419 027508 copy temp ,null 
+0x641a 027509 branch read_fuction_zero ,zero 
+0x641b 027510 copy regc ,pc 
+:      027511 read_fuction_zero:
+0x641c 027512 isolate0 0 ,null 
+0x641d 027513 branch set_ucode_status 
+:      027516 get_block_header:
+0x641e 027517 force 4 ,temp 
+:      027518 get_block_header0:
+0x641f 027519 arg mem_ucode_buf ,rega 
+0x6420 027520 hfetch 1 ,core_gpio_key2 
+0x6421 027521 and_into 0xfd ,pdata 
+0x6422 027522 hstore 1 ,core_gpio_key2 
+0x6423 027523 call read_function 
+0x6424 027524 arg 0x55aa ,rega 
+0x6425 027525 fetch 2 ,mem_ucode_buf 
+0x6426 027526 ifetcht 2 ,contr 
+0x6427 027527 isub rega ,null 
+0x6428 027528 rtn 
+:      027530 read_first_block:
+0x6429 027531 arg 2 ,temp 
+0x642a 027532 arg mem_ucode_ptr ,rega 
+0x642b 027533 call read_function 
+0x642c 027534 fetch 2 ,mem_ucode_ptr 
+0x642d 027535 store 2 ,mem_addr_mi 
+0x642e 027536 call get_iv ,user 
+0x642f 027537 rtn 
+:      027539 get_iv:
+0x6430 027540 arg 16 ,temp 
+0x6431 027541 arg mem_ucode_keybuf ,rega 
+0x6432 027542 hfetch 1 ,core_gpio_key2 
+0x6433 027543 and_into 0xfd ,pdata 
+0x6434 027544 hstore 1 ,core_gpio_key2 
+0x6435 027545 call read_function 
+0x6436 027546 arg mem_ucode_keybuf ,contr 
+0x6437 027547 arg 16 ,loopcnt 
+0x6438 027548 call aes_load_data 
+0x6439 027549 call aes_init 
+0x643a 027550 call aes_clear_data 
+0x643b 027551 branch do_aes_cbc 
+:      027553 load_storage:
+0x643c 027554 disable match 
+0x643d 027555 call get_block_header 
+0x643e 027556 nrtn zero 
+0x643f 027557 enable match 
+0x6440 027558 jam 0x80 ,core_ucode_ctrl 
+0x6441 027559 jam 0 ,core_ucode_hi 
+0x6442 027560 jam 0 ,core_ucode_low 
+0x6443 027561 arg core_ucode_data ,rega 
+0x6444 027562 call read_function_aes 
+0x6445 027563 jam 0x0 ,core_ucode_ctrl 
+:      027564 load_storage_loop:
+0x6446 027565 arg 6 ,temp 
+0x6447 027566 call get_block_header0 
+0x6448 027567 nrtn zero 
+0x6449 027568 ifetch 2 ,contr 
+0x644a 027569 iforce rega 
+0x644b 027570 call read_function 
+0x644c 027571 branch load_storage_loop 
+:      027575 reload_eeprom:
+0x644d 027576 call clean_mem 
+0x644e 027577 setarg 0x1000 
+0x644f 027578 store 2 ,mem_addr_mi 
+0x6450 027579 arg iicd_read_eep ,regc 
+0x6451 027580 arg 2 ,loopcnt 
+:      027581 reload_eeprom_loop:
+0x6452 027582 call get_block_header 
+0x6453 027583 nrtn zero 
+0x6454 027584 fetch 2 ,mem_addr_mi 
+0x6455 027585 byteswap pdata ,pdata 
+0x6456 027586 iadd temp ,pdata 
+0x6457 027587 byteswap pdata ,pdata 
+0x6458 027588 store 2 ,mem_addr_mi 
+0x6459 027589 loop reload_eeprom_loop 
+0x645a 027590 branch load_storage_loop 
+:      027592 loadcode:
+0x645b 027593 call clean_mem 
+0x645c 027594 disable user 
+0x645d 027595 call otp_enable_chgpump 
+0x645e 027596 setarg otp_ucode_flag 
+0x645f 027597 arg mem_otp_ucode_flag ,rega 
+0x6460 027598 arg 2 ,temp 
+0x6461 027599 call otpd_read_data 
+0x6462 027600 fetch 2 ,mem_otp_ucode_flag 
+0x6463 027601 bbit0 otp_uflag_aes ,loadcode_otp 
+0x6464 027602 jam 0x25 ,core_clkoff 
+0x6465 027603 setarg otp_ucode_aeskey 
+0x6466 027604 arg mem_ucode_keybuf ,rega 
+0x6467 027605 arg 16 ,temp 
+0x6468 027606 call otpd_read_data 
+0x6469 027607 jam lock_otp ,core_misc_ctrl 
+0x646a 027608 set1 mark_otp_encrypt ,mark 
+0x646b 027609 arg mem_ucode_keybuf ,contr 
+0x646c 027610 call load_key 
+0x646d 027611 enable user 
+:      027612 loadcode_otp:
+0x646e 027613 jam 0 ,mem_loadcode_times 
+:      027614 loadcode_otp_2:
+0x646f 027615 call loadcode_check_times 
+0x6470 027616 fetch 2 ,mem_otp_ucode_flag 
+0x6471 027617 byteswap pdata ,pdata 
+0x6472 027618 arg 0x7ff ,temp 
+0x6473 027619 iand temp ,pdata 
+0x6474 027620 branch loadcode_iic ,zero 
+0x6475 027621 call otp_set_addr 
+0x6476 027622 arg otpd_read_code ,regc 
+0x6477 027623 call get_iv ,user 
+0x6478 027624 call load_storage 
+0x6479 027625 fetch 1 ,mem_ucode_status 
+0x647a 027626 bbit0 0 ,loadcode_otp_2 
+:      027628 loadcode_iic:
+0x647b 027629 call otp_disable_chgpump 
+0x647c 027630 jam 0 ,mem_loadcode_times 
+:      027631 loadcode_iic_2:
+0x647d 027632 call loadcode_check_times 
+0x647e 027633 call clear_eeprom_size_2k 
+0x647f 027634 fetch 1 ,mem_otp_ucode_flag 
+0x6480 027635 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6481 027636 call loadcode_iic_by_eeprom 
+0x6482 027637 nbranch loadcode_iic_eeprom_2k ,match 
+0x6483 027638 fetch 1 ,mem_ucode_status 
+0x6484 027639 bbit0 0 ,loadcode_iic_2 
+0x6485 027640 branch loadcode_hci 
+:      027641 loadcode_iic_eeprom_2k:
+0x6486 027642 call set_eeprom_size_2k 
+0x6487 027643 fetch 1 ,mem_otp_ucode_flag 
+0x6488 027644 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6489 027645 call loadcode_iic_by_eeprom 
+0x648a 027646 nbranch loadcode_spi ,match 
+0x648b 027647 fetch 1 ,mem_ucode_status 
+0x648c 027648 bbit0 0 ,loadcode_iic_2 
+0x648d 027649 branch loadcode_hci 
+:      027651 loadcode_spi:
+0x648e 027652 jam 0 ,mem_loadcode_times 
+:      027653 loadcode_spi_2:
+0x648f 027654 call loadcode_check_times 
+0x6490 027655 fetch 1 ,mem_otp_ucode_flag 
+0x6491 027656 bbit1 otp_uflag_skip_flash ,loadcode_hci 
+0x6492 027657 setarg 0x0 
+0x6493 027658 store 3 ,mem_addr_hi 
+0x6494 027659 call spid_init_flash 
+0x6495 027660 arg spid_load_flash ,regc 
+0x6496 027661 call read_first_block 
+0x6497 027662 call load_storage 
+0x6498 027663 nbranch loadcode_hci ,match 
+0x6499 027664 fetch 1 ,mem_ucode_status 
+0x649a 027665 bbit0 0 ,loadcode_spi_2 
+:      027667 loadcode_hci:
+0x649b 027668 bmark1 mark_otp_encrypt ,loadcode_hci_enc 
+0x649c 027669 call clear_key_buf 
+:      027670 loadcode_hci_enc:
+0x649d 027671 fetch 1 ,mem_otp_ucode_flag 
+0x649e 027672 bbit0 otp_uflag_hci ,clear_key_buf 
+0x649f 027673 jam 0x21 ,core_clkoff 
+0x64a0 027674 call hci_init 
+:      027675 loadcode_hci_loop:
+0x64a1 027676 call hci_rx_packet 
+0x64a2 027677 branch loadcode_hci_loop 
+:      027679 clear_key_buf:
+0x64a3 027680 setarg 0 
+0x64a4 027681 store 8 ,mem_ucode_keybuf 
+0x64a5 027682 store 8 ,mem_ucode_keybuf + 8 
+0x64a6 027683 force regidx_key ,regext_index 
+0x64a7 027684 call aes_clear 
+0x64a8 027685 jam 0x21 ,core_clkoff 
+0x64a9 027686 rtn 
+:      027689 loadcode_iic_by_eeprom:
+0x64aa 027690 setarg 0x0 
+0x64ab 027691 store 2 ,mem_addr_mi 
+0x64ac 027692 arg iicd_read_eep ,regc 
+0x64ad 027693 call iicd_init_12m 
+0x64ae 027694 call read_first_block 
+0x64af 027695 branch load_storage 
+:      027698 loadcode_check_times:
+0x64b0 027699 fetch 1 ,mem_loadcode_times 
+0x64b1 027700 increase 1 ,pdata 
+0x64b2 027701 sub pdata ,3 ,null 
+0x64b3 027702 nbranch loadcode_error ,positive 
+0x64b4 027703 store 1 ,mem_loadcode_times 
+0x64b5 027704 rtn 
+:      027706 loadcode_error:
+0x64b6 027707 call clear_key_buf 
+0x64b7 027708 call ice_break 
+0x64b8 027709 rtn 
+:      027713 set_ucode_status:
+0x64b9 027714 fetch 1 ,mem_ucode_status 
+0x64ba 027715 lshift pdata ,pdata 
+0x64bb 027716 setflag true ,0 ,pdata 
+0x64bc 027717 isolate0 15 ,rega 
+0x64bd 027718 rtn true 
+0x64be 027719 store 1 ,mem_ucode_status 
+0x64bf 027720 rtn 
+:      027723 decrypt_code:
+0x64c0 027724 hfetch 1 ,core_gpio_key2 
+0x64c1 027725 rtnbit0 1 
+0x64c2 027726 branch decrypt_code_skip 
+:      027727 decrypt_code_loop:
+0x64c3 027728 hfetch 1 ,core_dma_status 
+0x64c4 027729 qisolate1 pdata 
+0x64c5 027730 rtn true 
+:      027731 decrypt_code_skip:
+0x64c6 027732 hfetch 1 ,core_misc_status 
+0x64c7 027733 bbit0 1 ,decrypt_code_loop 
+0x64c8 027734 call do_aes_cbc 
+0x64c9 027735 branch decrypt_code_loop 
+:      027739 load_ucode:
+0x64ca 027740 fetch 2 ,mem_patch_ptr 
+0x64cb 027741 rtn blank 
+0x64cc 027742 jam 0x80 ,core_ucode_ctrl 
+0x64cd 027743 jam 0 ,core_ucode_hi 
+0x64ce 027744 jam 0 ,core_ucode_low 
+0x64cf 027745 fetcht 2 ,mem_patch_len 
+0x64d0 027746 lshift2 temp ,loopcnt 
+0x64d1 027747 iforce contr 
+:      027748 load_ucode_loop:
+0x64d2 027749 ifetch 1 ,contr 
+0x64d3 027750 hstore 1 ,core_ucode_data 
+0x64d4 027751 loop load_ucode_loop 
+0x64d5 027752 jam 0x0 ,core_ucode_ctrl 
+0x64d6 027753 rtn 
+:      027758 spid_init:
+0x64d7 027759 bpatchx patch31_5 ,mem_patch31 
+0x64d8 027760 call spid_init_common 
+0x64d9 027761 branch twspi_enable 
+:      027763 spid_init2:
+0x64da 027764 call spid_init_common 
+0x64db 027765 call twspi_disable 
+0x64dc 027766 branch twspi_enable2 
+:      027768 spid_init_common:
+0x64dd 027769 fetch 1 ,mem_spi_init_clk 
+0x64de 027770 hstore 1 ,core_spid_ctrl 
+0x64df 027771 fetch 1 ,mem_spi_init_delay_time 
+0x64e0 027772 hstore 1 ,core_spid_delay 
+0x64e1 027773 setarg mem_spid_tbuf 
+0x64e2 027774 hstore 2 ,core_spid_txaddr 
+0x64e3 027775 setarg mem_spid_rbuf 
+0x64e4 027776 hstore 2 ,core_spid_rxaddr 
+0x64e5 027777 branch twspi_disable 
+:      027779 spid_reset:
+0x64e6 027780 hfetch 1 ,core_spid_ctrl 
+0x64e7 027781 set1 7 ,pdata 
+0x64e8 027782 hstore 1 ,core_spid_ctrl 
+0x64e9 027783 set0 7 ,pdata 
+0x64ea 027784 hstore 1 ,core_spid_ctrl 
+0x64eb 027785 rtn 
+:      027789 spid_write_reg:
+0x64ec 027790 set1 7 ,pdata 
+0x64ed 027791 store 2 ,mem_spid_tbuf 
+0x64ee 027792 bpatchx patch31_6 ,mem_patch31 
+0x64ef 027793 jam 2 ,core_spid_txlen 
+0x64f0 027794 jam 0 ,core_spid_rxlen 
+0x64f1 027795 jam spid_start ,core_misc_ctrl 
+0x64f2 027796 branch wait_spid_done 
+:      027799 spid_read_reg:
+0x64f3 027800 force 1 ,temp 
+:      027802 spid_read_regs:
+0x64f4 027804 store 1 ,mem_spid_tbuf 
+0x64f5 027805 bpatchx patch31_7 ,mem_patch31 
+0x64f6 027806 jam 1 ,core_spid_txlen 
+0x64f7 027807 hstoret 2 ,core_spid_rxlen 
+0x64f8 027808 jam spid_start ,core_misc_ctrl 
+0x64f9 027809 call wait_spid_done 
+0x64fa 027810 fetch 1 ,mem_spid_rbuf 
+0x64fb 027811 rtn 
+:      027813 wait_spid_done:
+0x64fc 027814 fetch 2 ,mem_afh_error_total 
+0x64fd 027815 increase 1 ,pdata 
+0x64fe 027816 store 2 ,mem_afh_error_total 
+0x64ff 027817 hfetch 1 ,core_dma_status 
+0x6500 027818 bbit0 spid_done ,wait_spid_done 
+0x6501 027819 rtn 
+:      027821 spid_init_flash:
+0x6502 027822 jam 0x40 ,core_spid_ctrl 
+0x6503 027823 jam 0x0 ,core_spid_delay 
+0x6504 027824 hfetch 1 ,core_gpio_sel1 
+0x6505 027825 set0 0 ,pdata 
+0x6506 027826 set1 1 ,pdata 
+0x6507 027827 hstore 1 ,core_gpio_sel1 
+0x6508 027828 setarg 0 
+0x6509 027829 store 4 ,mem_spid_tbuf 
+0x650a 027830 rtn 
+:      027833 spid_unlock_flash:
+0x650b 027834 setarg 0 
+0x650c 027835 hstore 2 ,core_spid_rxlen 
+0x650d 027836 setarg 1 
+0x650e 027837 hstore 2 ,core_spid_txlen 
+0x650f 027838 setarg mem_spid_tbuf 
+0x6510 027839 hstore 2 ,core_spid_txaddr 
+0x6511 027840 jam 6 ,mem_spid_tbuf 
+0x6512 027841 jam spid_start ,core_misc_ctrl 
+0x6513 027842 branch wait_spid_done 
+:      027857 flash_write:
+0x6514 027858 disable user 
+0x6515 027859 copy pdata ,regb 
+0x6516 027860 fetch 1 ,mem_spi_write_flash_sm 
+0x6517 027861 rtnne flash_sm_no_buys 
+0x6518 027862 enable user 
+0x6519 027863 copy regb ,pdata 
+0x651a 027864 branch flash_write_start 
+:      027867 flash_write_spi_sm_timer:
+0x651b 027868 fetch 1 ,mem_spi_write_flash_sm 
+0x651c 027869 beq flash_sm_start ,flash_write_start 
+0x651d 027870 beq flash_sm_erase_sector ,flash_erase_sector 
+0x651e 027871 beq flash_sm_wait_erase_sector ,flash_wait_erase_sector 
+0x651f 027872 beq flash_sm_write_data ,flash_write_data 
+0x6520 027873 beq flash_sm_wait_write_data ,flash_wait_write_data 
+0x6521 027874 rtn 
+:      027876 flash_write_start:
+0x6522 027877 store 3 ,mem_spi_write_addr 
+0x6523 027878 copy rega ,pdata 
+0x6524 027879 store 2 ,mem_spi_write_ptr 
+0x6525 027880 storet 2 ,mem_spi_write_len 
+0x6526 027881 jam flash_sm_erase_sector ,mem_spi_write_flash_sm 
+0x6527 027882 branch spid_init_flash 
+:      027883 flash_erase_sector:
+0x6528 027884 call spid_init_flash 
+0x6529 027885 jam flash_sm_wait_erase_sector ,mem_spi_write_flash_sm 
+0x652a 027886 call spid_unlock_flash 
+0x652b 027887 arg mem_spid_tbuf ,rega 
+0x652c 027888 fetch 3 ,mem_spi_write_addr 
+0x652d 027889 jam 4 ,core_spid_txlen 
+0x652e 027890 arg flash_command_sector_erase ,temp 
+0x652f 027891 branch spid_write_flash_common 
+:      027893 flash_wait_erase_sector:
+0x6530 027894 call spid_init_flash 
+0x6531 027895 call spid_unlock_flash 
+0x6532 027896 setarg flash_read_satus 
+0x6533 027897 call spid_read_reg 
+0x6534 027898 rtnbit1 flash_status_wip 
+0x6535 027899 jam flash_sm_write_data ,mem_spi_write_flash_sm 
+0x6536 027900 rtn 
+:      027901 flash_write_data:
+0x6537 027902 call spid_init_flash 
+0x6538 027903 jam flash_sm_wait_write_data ,mem_spi_write_flash_sm 
+0x6539 027904 call spid_unlock_flash 
+0x653a 027905 call flash_data_preserve 
+0x653b 027906 call spid_write_flash 
+0x653c 027907 branch flash_data_recover 
+:      027908 flash_wait_write_data:
+0x653d 027909 call spid_init_flash 
+0x653e 027910 call spid_unlock_flash 
+0x653f 027911 setarg flash_read_satus 
+0x6540 027912 call spid_read_reg 
+0x6541 027913 rtnbit1 flash_status_wip 
+0x6542 027914 jam flash_sm_no_buys ,mem_spi_write_flash_sm 
+0x6543 027915 fetch 2 ,mem_cb_spi_flash_write_complate 
+0x6544 027916 branch callback_func 
+:      027917 flash_data_recover:
+0x6545 027918 fetch 4 ,mem_temp 
+0x6546 027919 fetcht 2 ,mem_spi_write_ptr 
+0x6547 027920 increase -4 ,temp 
+0x6548 027921 istore 4 ,temp 
+0x6549 027922 rtn 
+:      027923 flash_data_preserve:
+0x654a 027924 fetcht 2 ,mem_spi_write_ptr 
+0x654b 027925 copy temp ,rega 
+0x654c 027926 increase -4 ,temp 
+0x654d 027927 ifetch 4 ,temp 
+0x654e 027928 store 4 ,mem_temp 
+0x654f 027929 fetcht 2 ,mem_spi_write_len 
+0x6550 027930 fetch 3 ,mem_spi_write_addr 
+0x6551 027931 rtn 
+:      027935 spid_write_flash:
+0x6552 027936 increase 4 ,temp 
+0x6553 027937 hstoret 2 ,core_spid_txlen 
+0x6554 027938 arg flash_command_write_data ,temp 
+0x6555 027939 increase -4 ,rega 
+:      027940 spid_write_flash_common:
+0x6556 027942 istoret 1 ,rega 
+0x6557 027943 rshift16 pdata ,temp 
+0x6558 027944 istoret 1 ,contw 
+0x6559 027945 rshift8 pdata ,temp 
+0x655a 027946 istoret 1 ,contw 
+0x655b 027947 istore 1 ,contw 
+0x655c 027948 deposit rega 
+0x655d 027949 hstore 2 ,core_spid_txaddr 
+0x655e 027950 setarg 0 
+0x655f 027951 hstore 2 ,core_spid_rxlen 
+0x6560 027952 jam spid_start ,core_misc_ctrl 
+0x6561 027953 branch wait_spid_done 
+:      027957 spid_read_flash:
+0x6562 027958 hstoret 2 ,core_spid_rxlen 
+0x6563 027959 rshift16 pdata ,temp 
+0x6564 027960 storet 1 ,mem_addr_hi 
+0x6565 027961 rshift8 pdata ,temp 
+0x6566 027962 storet 1 ,mem_addr_mi 
+0x6567 027963 store 1 ,mem_addr_lo 
+0x6568 027964 setarg 4 
+0x6569 027965 hstore 2 ,core_spid_txlen 
+0x656a 027966 jam flash_command_read_data ,mem_spid_tbuf 
+0x656b 027967 setarg mem_spid_tbuf 
+0x656c 027968 hstore 2 ,core_spid_txaddr 
+0x656d 027969 deposit rega 
+0x656e 027970 hstore 2 ,core_spid_rxaddr 
+0x656f 027971 hfetch 1 ,core_spid_ctrl 
+0x6570 027972 isolate0 15 ,rega 
+0x6571 027973 setflag true ,6 ,pdata 
+0x6572 027974 hstore 1 ,core_spid_ctrl 
+0x6573 027975 jam spid_start ,core_misc_ctrl 
+:      027976 spi_read_flash_wait:
+0x6574 027977 hfetch 1 ,core_dma_status 
+0x6575 027978 bbit1 7 ,spi_read_flash_wait 
+0x6576 027979 arg spid_done ,queue 
+0x6577 027980 branch wait_spid_done 
+:      027984 spid_load_flash:
+0x6578 027985 hstoret 2 ,core_spid_rxlen 
+0x6579 027986 setarg 4 
+0x657a 027987 hstore 2 ,core_spid_txlen 
+0x657b 027988 jam 3 ,mem_spid_tbuf 
+0x657c 027989 setarg mem_spid_tbuf 
+0x657d 027990 hstore 2 ,core_spid_txaddr 
+0x657e 027991 deposit rega 
+0x657f 027992 hstore 2 ,core_spid_rxaddr 
+0x6580 027993 hfetch 1 ,core_spid_ctrl 
+0x6581 027994 isolate0 15 ,rega 
+0x6582 027995 setflag true ,6 ,pdata 
+0x6583 027996 hstore 1 ,core_spid_ctrl 
+0x6584 027997 jam spid_start ,core_misc_ctrl 
+:      027998 spi_load_flash_wait:
+0x6585 027999 hfetch 1 ,core_dma_status 
+0x6586 028000 bbit1 7 ,spi_load_flash_wait 
+0x6587 028001 arg spid_done ,queue 
+0x6588 028002 call decrypt_code 
+0x6589 028003 call wait_spid_done 
+0x658a 028004 isolate1 spid_crcok ,pdata 
+0x658b 028005 call set_ucode_status 
+0x658c 028006 fetch 1 ,mem_addr_hi 
+0x658d 028007 lshift16 pdata ,regb 
+0x658e 028008 fetch 1 ,mem_addr_mi 
+0x658f 028009 lshift8 pdata ,pdata 
+0x6590 028010 ior regb ,regb 
+0x6591 028011 fetch 1 ,mem_addr_lo 
+0x6592 028012 ior regb ,pdata 
+0x6593 028013 iadd temp ,pdata 
+0x6594 028014 store 1 ,mem_addr_lo 
+0x6595 028015 rshift8 pdata ,pdata 
+0x6596 028016 store 1 ,mem_addr_mi 
+0x6597 028017 rshift8 pdata ,pdata 
+0x6598 028018 store 1 ,mem_addr_hi 
+0x6599 028019 rtn 
+:      028024 soft_reset_chip:
+0x659a 028025 jam 1 ,core_reset 
+0x659b 028026 rtn 
+:      028032 iic_init_390k:
+0x659c 028033 jam 12 ,core_iicd_scl_low 
+0x659d 028034 jam 13 ,core_iicd_scl_high 
+0x659e 028035 jam 13 ,core_iicd_start_setup 
+0x659f 028036 jam 13 ,core_iicd_start_hold 
+0x65a0 028037 jam 13 ,core_iicd_stop_setup 
+0x65a1 028038 jam 12 ,core_iicd_data_setup 
+0x65a2 028039 branch iicd_init_gpio 
+:      028042 iicd_init_12m:
+0x65a3 028043 jam 5 ,core_iicd_scl_low 
+0x65a4 028044 jam 7 ,core_iicd_scl_high 
+0x65a5 028045 jam 7 ,core_iicd_start_setup 
+0x65a6 028046 jam 7 ,core_iicd_start_hold 
+0x65a7 028047 jam 7 ,core_iicd_stop_setup 
+0x65a8 028048 jam 5 ,core_iicd_data_setup 
+:      028049 iicd_init_gpio:
+0x65a9 028050 hfetch 1 ,core_gpio_pu3 
+0x65aa 028051 or_into 0xc0 ,pdata 
+0x65ab 028052 hstore 1 ,core_gpio_pu3 
+0x65ac 028053 hfetch 1 ,core_gpio_sel1 
+0x65ad 028054 or_into 0x10 ,pdata 
+0x65ae 028055 hstore 1 ,core_gpio_sel1 
+0x65af 028056 rtn 
+:      028060 wait_iicd_done:
+0x65b0 028061 hfetch 1 ,core_dma_status 
+0x65b1 028062 bbit0 iicd_done ,wait_iicd_done 
+0x65b2 028063 rtn 
+:      028071 iicd_read_data:
+0x65b3 028072 hstore 2 ,core_iicd_txlen 
+0x65b4 028073 deposit rega 
+0x65b5 028074 hstore 2 ,core_iicd_txaddr 
+0x65b6 028075 deposit regb 
+0x65b7 028076 hstore 2 ,core_iicd_rxaddr 
+0x65b8 028077 deposit temp 
+0x65b9 028078 hstore 2 ,core_iicd_rxlen 
+0x65ba 028079 arg 1 ,temp 
+0x65bb 028080 nsetflag blank ,1 ,temp 
+0x65bc 028081 hstore 1 ,core_iicd_ctrl 
+0x65bd 028082 jam iicd_start ,core_misc_ctrl 
+0x65be 028083 branch wait_iicd_done 
+:      028086 set_eeprom_size_2k:
+0x65bf 028087 set1 mark_eeprom_size ,mark 
+0x65c0 028088 jam 0x08 ,mem_eeprom_block_size 
+0x65c1 028089 rtn 
+:      028091 clear_eeprom_size_2k:
+0x65c2 028092 set0 mark_eeprom_size ,mark 
+0x65c3 028093 jam 0x20 ,mem_eeprom_block_size 
+0x65c4 028094 rtn 
+:      028097 iicd_read_eep_data_size_2k:
+0x65c5 028098 fetch 1 ,mem_eeprom_base 
+0x65c6 028099 iadd regb ,pdata 
+0x65c7 028100 store 1 ,mem_addr_mi 
+0x65c8 028101 branch iicd_read_eep_size_2k 
+:      028103 iicd_read_eep_size_2k_lcadcode:
+0x65c9 028104 fetch 2 ,mem_addr_mi 
+0x65ca 028105 byteswap pdata ,pdata 
+0x65cb 028106 store 1 ,mem_addr_mi 
+:      028111 iicd_read_eep_size_2k:
+0x65cc 028112 setarg 3 
+0x65cd 028113 hstore 2 ,core_iicd_txlen 
+0x65ce 028114 jam 0xa0 ,mem_iicd_tbuf 
+0x65cf 028115 jam 0xa1 ,mem_iicd_tbuf + 2 
+0x65d0 028116 branch iicd_read_eep_common 
+:      028122 iicd_write_protect_eep_data:
+0x65d1 028123 storet 2 ,mem_temp 
+0x65d2 028124 call iicd_eeprom_write_enable 
+0x65d3 028125 fetcht 2 ,mem_temp 
+0x65d4 028126 call iicd_write_eep_data 
+0x65d5 028127 branch iicd_eeprom_write_disable 
+:      028129 iicd_eeprom_write_enable:
+0x65d6 028130 fetch 1 ,mem_eeprom_wp_gpio 
+0x65d7 028131 rtneq gpio_disable 
+0x65d8 028132 bbit0 6 ,iicd_wp_gpio_output_low 
+0x65d9 028133 setarg 150000 
+0x65da 028134 call sleep 
+:      028135 iicd_wp_gpio_output_low:
+0x65db 028136 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65dc 028137 branch gpio_out_active 
+:      028139 iicd_eeprom_write_disable:
+0x65dd 028140 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65de 028141 branch gpio_out_inactive 
+:      028146 iicd_read_eep_data:
+0x65df 028147 bpatchx patch32_0 ,mem_patch32 
+0x65e0 028148 bmark1 mark_eeprom_size ,iicd_read_eep_data_size_2k 
+0x65e1 028149 fetch 2 ,mem_eeprom_base 
+0x65e2 028150 iadd regb ,pdata 
+0x65e3 028151 byteswap pdata ,pdata 
+0x65e4 028152 store 2 ,mem_addr_mi 
+:      028155 iicd_read_eep:
+0x65e5 028156 bpatchx patch32_1 ,mem_patch32 
+0x65e6 028157 bmark1 mark_eeprom_size ,iicd_read_eep_size_2k_lcadcode 
+0x65e7 028158 setarg 4 
+0x65e8 028159 hstore 2 ,core_iicd_txlen 
+0x65e9 028160 jam 0xa0 ,mem_iicd_tbuf 
+0x65ea 028161 jam 0xa1 ,mem_iicd_tbuf + 3 
+:      028162 iicd_read_eep_common:
+0x65eb 028163 setarg mem_iicd_tbuf 
+0x65ec 028164 hstore 2 ,core_iicd_txaddr 
+0x65ed 028165 hstoret 2 ,core_iicd_rxlen 
+0x65ee 028166 deposit rega 
+0x65ef 028167 hstore 2 ,core_iicd_rxaddr 
+0x65f0 028168 setarg 2 
+0x65f1 028169 isolate0 15 ,rega 
+0x65f2 028170 setflag true ,0 ,pdata 
+0x65f3 028171 hstore 1 ,core_iicd_ctrl 
+0x65f4 028172 jam iicd_start ,core_misc_ctrl 
+0x65f5 028173 arg iicd_done ,queue 
+0x65f6 028174 call decrypt_code 
+0x65f7 028175 call wait_iicd_done 
+0x65f8 028176 isolate1 iicd_crcok ,pdata 
+0x65f9 028177 call set_ucode_status 
+0x65fa 028178 bmark1 mark_eeprom_size ,iicd_read_eep_load_code_size_2k 
+0x65fb 028179 fetch 2 ,mem_addr_mi 
+0x65fc 028180 byteswap pdata ,pdata 
+0x65fd 028181 iadd temp ,pdata 
+0x65fe 028182 byteswap pdata ,pdata 
+0x65ff 028183 store 2 ,mem_addr_mi 
+0x6600 028184 rtn 
+:      028186 iicd_read_eep_load_code_size_2k:
+0x6601 028187 fetch 1 ,mem_addr_mi 
+0x6602 028188 iadd temp ,pdata 
+0x6603 028189 byteswap pdata ,pdata 
+0x6604 028190 store 2 ,mem_addr_mi 
+0x6605 028191 rtn 
+:      028197 iicd_write_eep_data:
+0x6606 028198 fetch 2 ,mem_eeprom_base 
+0x6607 028199 iadd regb ,pdata 
+:      028202 iicd_write_ota_data:
+0x6608 028203 store 2 ,mem_pdatatemp 
+0x6609 028204 bpatchx patch32_2 ,mem_patch32 
+0x660a 028205 storet 2 ,mem_temp 
+0x660b 028206 copy rega ,pdata 
+0x660c 028207 store 2 ,mem_contr 
+:      028208 iicd_write_eep_loop:
+0x660d 028209 call iicd_eep_transparency 
+0x660e 028211 fetcht 2 ,mem_regb 
+0x660f 028212 fetch 2 ,mem_contr 
+0x6610 028213 copy pdata ,rega 
+0x6611 028214 fetch 2 ,mem_pdatatemp 
+0x6612 028216 call iicd_write_eep 
+0x6613 028218 fetch 2 ,mem_regb 
+0x6614 028219 fetcht 2 ,mem_contr 
+0x6615 028220 iadd temp ,temp 
+0x6616 028221 storet 2 ,mem_contr 
+0x6617 028222 fetcht 2 ,mem_pdatatemp 
+0x6618 028223 iadd temp ,temp 
+0x6619 028224 storet 2 ,mem_pdatatemp 
+0x661a 028225 fetch 2 ,mem_temp 
+0x661b 028226 nbranch iicd_write_eep_loop ,blank 
+0x661c 028227 rtn 
+:      028235 iicd_eep_transparency:
+0x661d 028236 bpatchx patch32_3 ,mem_patch32 
+0x661e 028237 fetch 1 ,mem_eeprom_block_size 
+0x661f 028238 increase -1 ,pdata 
+0x6620 028239 fetcht 2 ,mem_pdatatemp 
+0x6621 028240 ior temp ,pdata 
+0x6622 028241 increase 1 ,pdata 
+0x6623 028242 store 3 ,mem_regc 
+0x6624 028244 fetch 2 ,mem_temp 
+0x6625 028245 iadd temp ,pdata 
+0x6626 028247 fetcht 3 ,mem_regc 
+0x6627 028248 isub temp ,pdata 
+0x6628 028249 nbranch iicd_eep_deal_short_packet ,positive 
+0x6629 028250 store 2 ,mem_temp 
+0x662a 028251 fetch 3 ,mem_regc 
+0x662b 028252 fetcht 2 ,mem_pdatatemp 
+0x662c 028253 isub temp ,pdata 
+0x662d 028254 store 2 ,mem_regb 
+0x662e 028255 rtn 
+:      028256 iicd_eep_deal_short_packet:
+0x662f 028257 fetch 2 ,mem_temp 
+0x6630 028258 store 2 ,mem_regb 
+0x6631 028259 setarg 0 
+0x6632 028260 store 2 ,mem_temp 
+0x6633 028261 rtn 
+:      028263 iicd_write_eep_size_2k:
+0x6634 028264 increase 2 ,temp 
+0x6635 028265 hstoret 2 ,core_iicd_txlen 
+0x6636 028266 increase -2 ,rega 
+0x6637 028267 ifetcht 3 ,rega 
+0x6638 028268 copy temp ,regb 
+0x6639 028269 arg 0xa0 ,temp 
+0x663a 028270 istoret 1 ,rega 
+0x663b 028272 istore 1 ,contw 
+0x663c 028273 branch iicd_write_eep_common 
+:      028276 iicd_write_eep:
+0x663d 028277 copy pdata ,regb 
+0x663e 028278 bpatchx patch32_4 ,mem_patch32 
+0x663f 028279 bmark1 mark_eeprom_size ,iicd_write_eep_size_2k 
+0x6640 028280 copy regb ,pdata 
+0x6641 028281 increase 3 ,temp 
+0x6642 028282 hstoret 2 ,core_iicd_txlen 
+0x6643 028283 increase -3 ,rega 
+0x6644 028284 ifetcht 3 ,rega 
+0x6645 028285 copy temp ,regb 
+0x6646 028286 arg 0xa0 ,temp 
+0x6647 028287 istoret 1 ,rega 
+0x6648 028288 byteswap pdata ,pdata 
+0x6649 028289 istore 2 ,contw 
+:      028290 iicd_write_eep_common:
+0x664a 028291 deposit rega 
+0x664b 028292 hstore 2 ,core_iicd_txaddr 
+0x664c 028293 setarg 0 
+0x664d 028294 hstore 2 ,core_iicd_rxlen 
+0x664e 028295 jam 1 ,core_iicd_ctrl 
+0x664f 028296 jam iicd_start ,core_misc_ctrl 
+0x6650 028297 call wait_iicd_done 
+0x6651 028298 copy regb ,pdata 
+0x6652 028299 istore 3 ,rega 
+:      028301 iic_check_eeprom_standby:
+0x6653 028302 bpatchx patch32_5 ,mem_patch32 
+0x6654 028303 jam 0 ,mem_iicd_tbuf + 3 
+:      028304 iic_check_eeprom_standby_wait:
+0x6655 028305 setarg 1 
+0x6656 028306 hstore 2 ,core_iicd_txlen 
+0x6657 028307 jam 0xa0 ,mem_iicd_tbuf 
+0x6658 028308 setarg mem_iicd_tbuf 
+0x6659 028309 hstore 2 ,core_iicd_txaddr 
+0x665a 028310 setarg 0 
+0x665b 028311 hstore 2 ,core_iicd_rxlen 
+0x665c 028312 hstore 2 ,core_iicd_rxaddr 
+0x665d 028313 setarg 3 
+0x665e 028314 hstore 1 ,core_iicd_ctrl 
+0x665f 028315 jam iicd_start ,core_misc_ctrl 
+0x6660 028316 call wait_iicd_done 
+0x6661 028317 hfetch 1 ,core_dma_status 
+0x6662 028318 rtnbit0 iicd_ack 
+0x6663 028319 nop 1500 
+0x6664 028320 fetch 1 ,mem_iicd_tbuf + 3 
+0x6665 028321 increase 1 ,pdata 
+0x6666 028322 store 1 ,mem_iicd_tbuf + 3 
+0x6667 028323 sub pdata ,40 ,null 
+0x6668 028324 nrtn positive 
+0x6669 028325 branch iic_check_eeprom_standby_wait 
+:      028329 otp_enable_chgpump:
+0x666a 028330 jam 0x70 ,rfen_chgpump 
+0x666b 028331 nop param_chgpump_delay 
+0x666c 028332 rtn 
+:      028334 otp_disable_chgpump:
+0x666d 028335 jam 0x30 ,rfen_chgpump 
+0x666e 028336 rtn 
+:      028338 otp_set_addr:
+0x666f 028339 lshift3 pdata ,pdata 
+0x6670 028340 hstore 2 ,core_otp_addr 
+0x6671 028341 jam 0 ,core_otpd_ctrl 
+0x6672 028342 rtn 
+:      028345 otp_write:
+0x6673 028346 call otp_set_addr 
+0x6674 028347 call otp_ce 
+:      028348 otp_program:
+0x6675 028349 ifetcht 1 ,rega 
+0x6676 028350 increase 1 ,rega 
+0x6677 028351 force 0 ,queue 
+:      028352 otp_program_bit:
+0x6678 028353 qisolate0 temp 
+0x6679 028354 branch otp_skip_0 ,true 
+0x667a 028355 hfetch 1 ,core_otp_din 
+0x667b 028356 set1 6 ,pdata 
+0x667c 028357 set1 7 ,pdata 
+0x667d 028358 hstore 1 ,core_otp_din 
+0x667e 028359 jam 0x02 ,core_otp_ctrl 
+0x667f 028360 jam 0x82 ,core_otp_ctrl 
+0x6680 028361 set0 7 ,pdata 
+0x6681 028362 hstore 1 ,core_otp_din 
+0x6682 028363 jam 0x8a ,core_otp_ctrl 
+0x6683 028364 nop 11 
+0x6684 028365 jam 0xca ,core_otp_ctrl 
+0x6685 028366 nop 33 
+0x6686 028367 jam 0x4a ,core_otp_ctrl 
+0x6687 028368 nop 44 
+0x6688 028369 jam 0xca ,core_otp_ctrl 
+0x6689 028370 nop 22 
+0x668a 028371 jam 0x8a ,core_otp_ctrl 
+0x668b 028372 nop 33 
+0x668c 028373 jam 0x82 ,core_otp_ctrl 
+0x668d 028374 nop 1 
+0x668e 028375 jam 0x92 ,core_otp_ctrl 
+0x668f 028376 nop 10 
+0x6690 028377 jam 0xb2 ,core_otp_ctrl 
+0x6691 028378 hfetch 1 ,core_otp_rdata 
+0x6692 028379 jam 0x92 ,core_otp_ctrl 
+0x6693 028380 nop 1 
+0x6694 028381 jam 0x82 ,core_otp_ctrl 
+0x6695 028382 qisolate0 pdata 
+0x6696 028383 branch otp_program_bit ,true 
+:      028384 otp_skip_0:
+0x6697 028385 hfetch 2 ,core_otp_addr 
+0x6698 028386 increase 1 ,pdata 
+0x6699 028387 hstore 2 ,core_otp_addr 
+0x669a 028388 increase 1 ,queue 
+0x669b 028389 compare 8 ,queue ,0xf 
+0x669c 028390 nbranch otp_program_bit ,true 
+0x669d 028391 loop otp_program 
+0x669e 028392 jam 0x83 ,core_otp_ctrl 
+0x669f 028393 rtn 
+:      028395 otp_ce:
+0x66a0 028396 jam 0x82 ,core_otp_ctrl 
+0x66a1 028397 nop 12 
+0x66a2 028398 jam 0x80 ,core_otp_ctrl 
+0x66a3 028399 jam 0x82 ,core_otp_ctrl 
+0x66a4 028400 nop 150 
+0x66a5 028401 rtn 
+:      028404 otpd_read_init:
+0x66a6 028405 call otp_ce 
+0x66a7 028406 jam 0xa2 ,core_otp_ctrl 
+0x66a8 028407 deposit rega 
+0x66a9 028408 hstore 2 ,core_otpd_addr 
+0x66aa 028409 set1 11 ,temp 
+0x66ab 028410 isolate0 15 ,pdata 
+0x66ac 028411 setflag true ,15 ,temp 
+0x66ad 028412 hstoret 2 ,core_otpd_len 
+0x66ae 028413 jam otpd_start ,core_misc_ctrl 
+0x66af 028414 rtn 
+:      028416 otpd_wait_end:
+0x66b0 028417 hfetch 1 ,core_dma_status 
+0x66b1 028418 bbit0 otpd_done ,otpd_wait_end 
+0x66b2 028419 rtn 
+:      028422 otpd_read_data:
+0x66b3 028423 call otp_set_addr 
+0x66b4 028424 call otpd_read_init 
+0x66b5 028425 call otpd_wait_end 
+0x66b6 028426 jam 0x83 ,core_otp_ctrl 
+0x66b7 028427 rtn 
+:      028432 otpd_read_code:
+0x66b8 028433 hfetch 2 ,core_current_otp_addr 
+0x66b9 028434 hstore 2 ,core_otp_addr 
+0x66ba 028435 call otpd_read_init 
+0x66bb 028436 arg otpd_done ,queue 
+0x66bc 028437 call decrypt_code 
+0x66bd 028438 call otpd_wait_end 
+0x66be 028439 isolate1 otpd_crcok ,pdata 
+0x66bf 028440 call set_ucode_status 
+0x66c0 028441 jam 0x83 ,core_otp_ctrl 
+0x66c1 028442 rtn 
+:      028445 uartd_prepare_tx:
+0x66c2 028446 hfetch 2 ,core_uart_twptr 
+0x66c3 028447 iforce contwu 
+0x66c4 028448 rtn 
+:      028450 uartd_send:
+0x66c5 028451 deposit contwu 
+0x66c6 028452 hstore 2 ,core_uart_twptr 
+0x66c7 028453 rtn 
+:      028455 uartd_rxdone:
+0x66c8 028456 deposit contru 
+0x66c9 028457 hstore 2 ,core_uart_rrptr 
+0x66ca 028458 rtn 
+:      028460 uartd_prepare_rx:
+0x66cb 028461 hfetch 2 ,core_uart_rrptr 
+0x66cc 028462 copy pdata ,contru 
+0x66cd 028463 rtn 
+:      028465 uart_set_baud_by_mem:
+0x66ce 028466 fetch uart_baud_len ,mem_baud 
+0x66cf 028467 hstore uart_baud_len ,core_uart_baud 
+0x66d0 028468 rtn 
+:      028470 uart_copy_tx_bytes_fast:
+0x66d1 028471 deposit loopcnt 
+0x66d2 028472 rtn blank 
+:      028473 uart_copy_tx_bytes_fast_loop:
+0x66d3 028474 increase -8 ,loopcnt 
+0x66d4 028475 call uart_tx_8_bytes ,positive 
+0x66d5 028476 rtn zero 
+0x66d6 028477 branch uart_copy_tx_bytes_fast_loop ,positive 
+0x66d7 028478 increase 8 ,loopcnt 
+:      028479 uart_copy_tx_bytes_fast_loop_four:
+0x66d8 028480 increase -4 ,loopcnt 
+0x66d9 028481 call uart_tx_4_bytes ,positive 
+0x66da 028482 rtn zero 
+0x66db 028483 branch uart_copy_tx_bytes_fast_loop_four ,positive 
+0x66dc 028484 increase 4 ,loopcnt 
+0x66dd 028485 branch uart_copy_tx_bytes 
+:      028487 uart_tx_8_bytes:
+0x66de 028488 ifetch 8 ,contr 
+0x66df 028489 istore 8 ,contwu 
+0x66e0 028490 rtn 
+:      028492 uart_tx_4_bytes:
+0x66e1 028493 ifetch 4 ,contr 
+0x66e2 028494 istore 4 ,contwu 
+0x66e3 028495 rtn 
+:      028497 uart_copy_tx_bytes:
+0x66e4 028498 deposit loopcnt 
+0x66e5 028499 rtn blank 
+:      028500 uart_copy_tx_bytes_loop:
+0x66e6 028501 ifetch 1 ,contr 
+0x66e7 028502 istore 1 ,contwu 
+0x66e8 028503 loop uart_copy_tx_bytes_loop 
+0x66e9 028504 rtn 
+:      028506 uart_copy_rx_bytes_fast:
+0x66ea 028507 deposit loopcnt 
+0x66eb 028508 rtn blank 
+:      028509 uart_copy_rx_bytes_fast_loop:
+0x66ec 028510 increase -8 ,loopcnt 
+0x66ed 028511 call uart_rx_8_bytes ,positive 
+0x66ee 028512 rtn zero 
+0x66ef 028513 branch uart_copy_rx_bytes_fast_loop ,positive 
+0x66f0 028514 increase 8 ,loopcnt 
+:      028515 uart_copy_rx_bytes_fast_loop_four:
+0x66f1 028516 increase -4 ,loopcnt 
+0x66f2 028517 call uart_rx_4_bytes ,positive 
+0x66f3 028518 rtn zero 
+0x66f4 028519 branch uart_copy_rx_bytes_fast_loop_four ,positive 
+0x66f5 028520 increase 4 ,loopcnt 
+0x66f6 028521 branch uart_copy_rx_bytes 
+:      028523 uart_rx_8_bytes:
+0x66f7 028524 ifetch 8 ,contru 
+0x66f8 028525 istore 8 ,contw 
+0x66f9 028526 rtn 
+:      028528 uart_rx_4_bytes:
+0x66fa 028529 ifetch 4 ,contru 
+0x66fb 028530 istore 4 ,contw 
+0x66fc 028531 rtn 
+:      028534 uart_copy_rx_bytes:
+0x66fd 028535 deposit loopcnt 
+0x66fe 028536 rtn blank 
+:      028537 uart_copy_rx_bytes_loop:
+0x66ff 028538 ifetch 1 ,contru 
+0x6700 028539 istore 1 ,contw 
+0x6701 028540 loop uart_copy_rx_bytes_loop 
+0x6702 028541 rtn 
+:      028544 uart_copy_rx2tx:
+0x6703 028545 deposit loopcnt 
+0x6704 028546 rtn blank 
+:      028547 uart_copy_rx2tx_loop:
+0x6705 028548 ifetch 1 ,contru 
+0x6706 028549 istore 1 ,contwu 
+0x6707 028550 loop uart_copy_rx2tx_loop 
+0x6708 028551 rtn 
+:      028556 app_store_nvram_event:
+0x6709 028557 jam bt_evt_store_nvram ,mem_fifo_temp 
+0x670a 028558 branch ui_ipc_send_event 
+:      028560 check_51cmd_store_reconn_info:
+:      028561 check_51cmd_update_device_record:
+0x670b 028562 bpatchx patch32_6 ,mem_patch32 
+0x670c 028563 fetch 1 ,mem_nv_data_number 
+0x670d 028564 rtn blank 
+0x670e 028565 call check_nvram 
+0x670f 028566 call init_device_list ,zero 
+0x6710 028567 call nvram_find_addr_from_bd_list 
+:      028568 write_device_record:
+0x6711 028569 fetch 1 ,mem_nv_data_number 
+0x6712 028570 icopy regc 
+0x6713 028571 fetcht 2 ,mem_nv_data_ptr 
+0x6714 028572 storet 2 ,mem_list_item_ptr 
+:      028573 write_device_loop_find:
+0x6715 028574 copy regc ,pdata 
+0x6716 028575 branch app_store_nvram_event ,blank 
+0x6717 028576 increase -1 ,regc 
+0x6718 028577 copy temp ,rega 
+0x6719 028578 ifetch 1 ,rega 
+0x671a 028579 fetcht 1 ,mem_select_list_item 
+0x671b 028580 isub temp ,null 
+0x671c 028581 call set_index_finded_device ,zero 
+0x671d 028582 branch write_device_loop_find0 ,positive 
+0x671e 028583 ifetch 1 ,rega 
+0x671f 028584 increase 1 ,pdata 
+0x6720 028585 istore 1 ,rega 
+:      028586 write_device_loop_find0:
+0x6721 028587 fetcht 2 ,mem_list_item_ptr 
+0x6722 028588 increase nv_data_len ,temp 
+0x6723 028589 storet 2 ,mem_list_item_ptr 
+0x6724 028590 branch write_device_loop_find 
+:      028592 set_index_finded_device:
+0x6725 028593 setarg 0 
+0x6726 028594 istore 1 ,rega 
+0x6727 028595 fetch 1 ,mem_temp_reconn_record 
+0x6728 028596 istore 1 ,contw 
+0x6729 028597 bne rec_3_mode ,set_index_finded_device_ble_mode 
+0x672a 028598 arg mem_link_key ,regb 
+:      028599 set_index_find_device_master_addr:
+0x672b 028600 ifetch 6 ,contr 
+0x672c 028601 istore 8 ,contw 
+0x672d 028602 setarg 0 
+0x672e 028603 istore 8 ,contw 
+0x672f 028604 copy regb ,contr 
+:      028605 store_rec_data_common:
+0x6730 028606 call memcpy16 
+0x6731 028607 force 1 ,null 
+0x6732 028608 rtn 
+:      028610 set_index_finded_device_ble_mode:
+0x6733 028611 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
+0x6734 028612 beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
+0x6735 028613 arg mem_le_ltk ,regb 
+0x6736 028614 branch set_index_find_device_master_addr 
+:      028616 set_index_finded_device_irk:
+0x6737 028617 arg mem_le_irk ,contr 
+0x6738 028618 call memcpy16 
+:      028619 store_ble_rec_data_common:
+0x6739 028620 arg mem_le_ltk ,contr 
+0x673a 028621 branch store_rec_data_common 
+:      028623 set_index_finded_device_ediv:
+0x673b 028624 arg mem_le_rand ,contr 
+0x673c 028625 call memcpy16 
+0x673d 028626 branch store_ble_rec_data_common 
+:      028629 nvram_find_addr_from_bd_list:
+0x673e 028630 call disable_user 
+0x673f 028631 fetch 1 ,mem_nv_data_number 
+0x6740 028632 rtn blank 
+0x6741 028633 fetch 2 ,mem_ui_state_map 
+0x6742 028634 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
+:      028635 find_addr_from_bd_list_ble_mode:
+0x6743 028636 bpatchx patch32_7 ,mem_patch32 
+0x6744 028637 fetch 1 ,mem_le_conn_peer_addr_type 
+0x6745 028638 beq master_public_addr ,find_addr_from_bd_list_static_addr 
+0x6746 028639 fetch 1 ,mem_le_plap + 5 
+0x6747 028640 compare 0xc0 ,pdata ,0xc0 
+0x6748 028641 branch find_addr_from_bd_list_static_addr ,true 
+0x6749 028642 compare 0x40 ,pdata ,0xc0 
+0x674a 028643 branch find_addr_from_bd_list_random_addr ,true 
+0x674b 028644 compare 0x00 ,pdata ,0xc0 
+0x674c 028645 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
+:      028646 find_addr_from_bd_list_static_addr:
+0x674d 028647 jam rec_4_mode_static_address ,mem_temp_reconn_record 
+0x674e 028648 fetch 6 ,mem_le_plap 
+0x674f 028649 branch find_addr_from_bd_list_common 
+:      028651 find_addr_from_bd_list_random_non_resolvable_private_address:
+0x6750 028652 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
+0x6751 028653 branch find_addr_from_bd_list_common 
+:      028656 find_addr_from_bd_list_random_addr:
+0x6752 028657 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
+0x6753 028658 branch find_addr_from_bd_list_common 
+:      028661 find_addr_from_bd_list_spp_mode:
+0x6754 028662 bpatchx patch33_0 ,mem_patch33 
+0x6755 028663 jam rec_3_mode ,mem_temp_reconn_record 
+0x6756 028664 fetch 6 ,mem_plap 
+:      028665 find_addr_from_bd_list_common:
+0x6757 028666 store 6 ,mem_temp_reconn_record + 1 
+0x6758 028667 fetch 2 ,mem_nv_data_ptr 
+0x6759 028668 ifetcht 1 ,pdata 
+0x675a 028669 pincrease 1 
+0x675b 028670 store 2 ,mem_list_item_ptr 
+0x675c 028671 storet 1 ,mem_select_list_item 
+0x675d 028672 fetch 1 ,mem_nv_data_number 
+0x675e 028673 icopy regc 
+:      028674 nvram_find_addr_from_list:
+0x675f 028675 fetch 2 ,mem_list_item_ptr 
+0x6760 028676 copy pdata ,rega 
+0x6761 028677 call nvram_find_addr_from_list_compare 
+0x6762 028678 rtn user 
+0x6763 028679 fetcht 2 ,mem_list_item_ptr 
+0x6764 028680 increase nv_data_len ,temp 
+0x6765 028681 storet 2 ,mem_list_item_ptr 
+0x6766 028682 increase -1 ,temp 
+0x6767 028683 ifetch 1 ,temp 
+0x6768 028684 store 1 ,mem_select_list_item 
+0x6769 028685 increase -1 ,regc 
+0x676a 028686 nbranch nvram_find_addr_from_list ,zero 
+0x676b 028687 fetch 1 ,mem_nv_data_number 
+0x676c 028688 pincrease decreased_one 
+0x676d 028689 store 1 ,mem_select_list_item 
+0x676e 028690 rtn 
+:      028691 nvram_find_addr_from_list_compare:
+0x676f 028692 fetch 1 ,mem_temp_reconn_record 
+0x6770 028693 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
+:      028694 find_master_addr_from_list_compare:
+0x6771 028695 arg mem_temp_reconn_record ,regb 
+0x6772 028696 arg 7 ,loopcnt 
+0x6773 028697 call string_compare 
+0x6774 028698 branch enable_user ,zero 
+0x6775 028699 rtn 
+:      028701 find_addr_from_list_compare_ble_mode:
+0x6776 028702 beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
+0x6777 028703 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
+0x6778 028704 branch find_master_addr_from_list_compare 
+:      028706 find_irk_form_list_compare:
+0x6779 028707 ifetcht 1 ,rega 
+0x677a 028708 isub temp ,null 
+0x677b 028709 nrtn zero 
+0x677c 028710 arg mem_le_prand ,contw 
+0x677d 028711 arg 16 ,loopcnt 
+0x677e 028712 call clear_mem 
+0x677f 028713 fetch 3 ,mem_le_plap + 3 
+0x6780 028714 store 3 ,mem_le_prand 
+0x6781 028715 call genernate_master_macaddress 
+0x6782 028716 fetch 2 ,mem_le_aes_128 + 13 
+0x6783 028717 byteswap pdata ,pdata 
+0x6784 028718 lshift8 pdata ,temp 
+0x6785 028719 ifetch 1 ,contr 
+0x6786 028720 iadd temp ,pdata 
+0x6787 028721 fetcht 3 ,mem_le_plap 
+0x6788 028722 isub temp ,null 
+0x6789 028723 branch enable_user ,zero 
+0x678a 028724 rtn 
+:      028727 genernate_master_macaddress:
+0x678b 028728 arg mem_le_prand ,contr 
+0x678c 028729 call load_data128 
+0x678d 028731 ifetch 1 ,rega 
+0x678e 028732 call load_regext 
+0x678f 028733 force 0x38 ,aes_ctrl 
+0x6790 028734 force 0x0 ,aes_ctrl 
+0x6791 028735 call wait_aes 
+0x6792 028736 arg mem_le_aes_128 ,contw 
+0x6793 028737 branch store_aes_result 
+:      028739 find_ediv_form_list_compare:
+0x6794 028740 ifetcht 1 ,rega 
+0x6795 028741 isub temp ,null 
+0x6796 028742 nrtn zero 
+0x6797 028743 copy contr ,rega 
+0x6798 028744 add contr ,8 ,regc 
+0x6799 028745 arg mem_le_rand ,regb 
+0x679a 028746 arg 8 ,loopcnt 
+0x679b 028747 call string_compare 
+0x679c 028748 branch enable_user ,zero 
+0x679d 028749 copy regc ,rega 
+0x679e 028750 arg mem_le_irk ,regb 
+0x679f 028751 arg 8 ,loopcnt 
+0x67a0 028752 call string_compare 
+0x67a1 028753 branch enable_user ,zero 
+0x67a2 028754 rtn 
+:      028756 check_nvram:
+0x67a3 028757 fetch 2 ,mem_nv_data_ptr 
+0x67a4 028758 ifetcht 1 ,pdata 
+0x67a5 028759 pincrease nv_data_len 
+0x67a6 028760 ifetch 1 ,pdata 
+0x67a7 028761 isub temp ,null 
+0x67a8 028762 rtn 
+:      028764 init_device_list:
+0x67a9 028765 fetch 1 ,mem_nv_data_number 
+0x67aa 028766 icopy loopcnt 
+0x67ab 028767 fetcht 2 ,mem_nv_data_ptr 
+0x67ac 028768 setarg 0 
+:      028769 init_device_list_loop:
+0x67ad 028770 istore 1 ,temp 
+0x67ae 028771 increase nv_data_len ,temp 
+0x67af 028772 pincrease 1 
+0x67b0 028773 loop init_device_list_loop 
+0x67b1 028774 rtn 
+:      028776 load_device_list:
+0x67b2 028777 bpatchx patch33_1 ,mem_patch33 
+0x67b3 028778 call nvram_find_addr_from_bd_list 
+0x67b4 028779 fetch 1 ,mem_state 
+0x67b5 028780 setflag user ,state_combkey ,pdata 
+0x67b6 028781 store 1 ,mem_state 
+0x67b7 028782 nbranch clear_key_exists ,user 
+0x67b8 028783 add rega ,10 ,contr 
+0x67b9 028785 arg mem_link_key ,contw 
+0x67ba 028786 call memcpy16 
+0x67bb 028787 branch check_link_key_load 
+:      028788 clear_key_exists:
+0x67bc 028789 jam 0 ,mem_link_key_exists 
+0x67bd 028790 rtn 
+:      028792 load_device_list_mode_4:
+0x67be 028793 fetch 9 ,mem_le_ediv 
+0x67bf 028794 branch clear_ltk_exists ,blank 
+0x67c0 028795 call nvram_find_addr_from_bd_list 
+0x67c1 028796 nbranch clear_ltk_exists ,user 
+0x67c2 028797 fetch 2 ,mem_list_item_ptr 
+0x67c3 028798 add pdata ,1 ,contr 
+0x67c4 028799 arg mem_le_irk ,contw 
+0x67c5 028800 call memcpy16 
+0x67c6 028801 arg mem_le_ltk ,contw 
+0x67c7 028802 call memcpy16 
+0x67c8 028803 jam 1 ,mem_ltk_exists 
+0x67c9 028804 rtn 
+:      028806 clear_ltk_exists:
+0x67ca 028807 jam 0 ,mem_ltk_exists 
+0x67cb 028808 rtn 
+:      028811 eeprom_store_le_reconn_info:
+0x67cc 028812 fetch 6 ,mem_le_plap 
+0x67cd 028813 store 6 ,mem_temp_lap 
+0x67ce 028814 jam rec_4_mode ,mem_record_bt_mode 
+0x67cf 028815 branch eeprom_store_reconn_info 
+:      028816 eeprom_store_bd_reconn_info:
+0x67d0 028817 fetch 6 ,mem_plap 
+0x67d1 028818 store 6 ,mem_temp_lap 
+0x67d2 028819 jam rec_3_mode ,mem_record_bt_mode 
+:      028820 eeprom_store_reconn_info:
+0x67d3 028821 fetch 1 ,mem_device_option 
+0x67d4 028822 beq dvc_op_module ,check_51cmd_update_device_record 
+0x67d5 028823 bbit1 dvc_op_mouse ,mouse_store_remote_bdaddr 
+0x67d6 028824 rtn 
+:      028827 check_link_key_load:
+0x67d7 028828 fetch 8 ,mem_link_key 
+0x67d8 028829 fetcht 8 ,mem_link_key + 8 
+0x67d9 028830 ior temp ,pdata 
+0x67da 028831 rtn blank 
+0x67db 028832 jam 1 ,mem_link_key_exists 
+0x67dc 028833 rtn 
+:      028840 gpio_set_wake_by_current_state:
+0x67dd 028841 bpatchx patch33_2 ,mem_patch33 
+0x67de 028842 set1 7 ,temp 
+0x67df 028843 call gpio_get_bit 
+0x67e0 028844 nsetflag true ,7 ,temp 
+:      028849 gpio_set_wake:
+0x67e1 028850 bpatchx patch33_3 ,mem_patch33 
+0x67e2 028851 sub temp ,ui_button_gpio_disable ,null 
+0x67e3 028852 rtn zero 
+0x67e4 028853 isolate0 7 ,temp 
+0x67e5 028854 and temp ,0x1f ,queue 
+0x67e6 028855 fetch 4 ,mem_gpio_wakeup_low 
+0x67e7 028856 qsetflag true ,pdata 
+0x67e8 028857 store 4 ,mem_gpio_wakeup_low 
+0x67e9 028858 fetch 4 ,mem_gpio_wakeup_high 
+0x67ea 028859 nqsetflag true ,pdata 
+0x67eb 028860 store 4 ,mem_gpio_wakeup_high 
+0x67ec 028861 rtn 
+:      028864 gpio_clr_wake:
+0x67ed 028865 bpatchx patch33_4 ,mem_patch33 
+0x67ee 028866 sub temp ,ui_button_gpio_disable ,null 
+0x67ef 028867 rtn zero 
+0x67f0 028868 isolate0 7 ,temp 
+0x67f1 028869 and temp ,0x1f ,queue 
+0x67f2 028870 fetch 4 ,mem_gpio_wakeup_low 
+0x67f3 028871 qset0 pdata 
+0x67f4 028872 store 4 ,mem_gpio_wakeup_low 
+0x67f5 028873 fetch 4 ,mem_gpio_wakeup_high 
+0x67f6 028874 qset0 pdata 
+0x67f7 028875 store 4 ,mem_gpio_wakeup_high 
+0x67f8 028876 rtn 
+:      028879 gpio_config_input_nowake:
+0x67f9 028880 call gpio_clr_wake 
+0x67fa 028881 branch gpio_config_input_without_wake 
+:      028884 gpio_config_input:
+0x67fb 028885 sub temp ,ui_button_gpio_disable ,null 
+0x67fc 028886 rtn zero 
+0x67fd 028887 ncall gpio_set_wake ,wake 
+:      028889 gpio_config_input_without_wake:
+0x67fe 028890 arg core_gpio_pd0 ,contw 
+0x67ff 028891 call gpio_set_bit 
+0x6800 028892 setflip gpio_active_bit ,temp 
+0x6801 028893 arg core_gpio_pu0 ,contw 
+0x6802 028894 call gpio_set_bit 
+0x6803 028895 set0 gpio_active_bit ,temp 
+0x6804 028896 arg core_gpio_oe0 ,contw 
+0x6805 028897 branch gpio_set_bit 
+:      028900 gpio_set_high_impedance:
+0x6806 028901 arg core_gpio_pd0 ,contw 
+0x6807 028902 call gpio_set_bit 
+0x6808 028903 set0 gpio_active_bit ,temp 
+0x6809 028904 arg core_gpio_pu0 ,contw 
+0x680a 028905 call gpio_set_bit 
+0x680b 028906 set0 gpio_active_bit ,temp 
+0x680c 028907 arg core_gpio_oe0 ,contw 
+0x680d 028908 branch gpio_set_bit 
+:      028912 gpio_config_output:
+0x680e 028913 sub temp ,ui_button_gpio_disable ,null 
+0x680f 028914 rtn zero 
+0x6810 028915 setflip gpio_active_bit ,temp 
+0x6811 028916 call gpio_out 
+:      028917 gpio_config_output0:
+0x6812 028918 set1 gpio_active_bit ,temp 
+0x6813 028919 arg core_gpio_oe0 ,contw 
+0x6814 028920 branch gpio_set_bit 
+:      028922 gpio_common:
+0x6815 028923 and temp ,0x07 ,queue 
+0x6816 028924 rshift3 temp ,pdata 
+0x6817 028925 and_into 3 ,pdata 
+0x6818 028926 iadd contw ,contw 
+0x6819 028927 ifetch 1 ,contw 
+0x681a 028928 rtn 
+:      028930 gpio_check_active:
+0x681b 028931 arg core_gpio_out0 ,contw 
+0x681c 028932 branch get_bit_common 
+:      028936 gpio_get_bit:
+0x681d 028937 arg core_gpio_in ,contw 
+:      028938 get_bit_common:
+0x681e 028939 call gpio_common 
+0x681f 028940 isolate1 gpio_active_bit ,temp 
+0x6820 028941 branch gpio_get_bit_reverse ,true 
+0x6821 028942 qisolate0 pdata 
+0x6822 028943 rtn 
+:      028944 gpio_get_bit_reverse:
+0x6823 028945 qisolate1 pdata 
+0x6824 028946 rtn 
+:      028948 gpio_out_inactive:
+0x6825 028949 sub temp ,ui_button_gpio_disable ,null 
+0x6826 028950 rtn zero 
+0x6827 028951 isolate1 7 ,null 
+0x6828 028952 branch gpio_out_flag 
+:      028954 gpio_out_active:
+0x6829 028955 sub temp ,ui_button_gpio_disable ,null 
+0x682a 028956 rtn zero 
+0x682b 028957 isolate0 7 ,null 
+:      028960 gpio_out_flag:
+0x682c 028961 setarg 0 
+0x682d 028962 nsetflag true ,gpio_active_bit ,pdata 
+0x682e 028963 ixor temp ,temp 
+:      028966 gpio_out:
+0x682f 028967 arg core_gpio_out0 ,contw 
+:      028970 gpio_set_bit:
+0x6830 028971 call gpio_common 
+0x6831 028972 isolate1 gpio_active_bit ,temp 
+0x6832 028973 qsetflag true ,pdata 
+0x6833 028974 istore 1 ,contw 
+0x6834 028975 rtn 
+:      028977 gpio_set_before_lpm_common:
+0x6835 028978 arg -1 ,rega 
+0x6836 028979 hfetch 1 ,core_gpio_sel1 
+0x6837 028980 compare 0x02 ,pdata ,0x03 
+0x6838 028981 call neglact4_from_23_pin ,true 
+0x6839 028983 compare 0x01 ,pdata ,0x03 
+0x683a 028984 call neglact2_form_25_pin ,true 
+0x683b 028986 compare 0x03 ,pdata ,0x03 
+0x683c 028987 call neglact2_form_25_pin ,true 
+0x683d 028989 isolate1 2 ,pdata 
+0x683e 028990 call neglect2_from_6_pin ,true 
+0x683f 028992 isolate1 3 ,pdata 
+0x6840 028993 call neglect4_from_9_pin ,true 
+0x6841 028995 isolate1 4 ,pdata 
+0x6842 028996 call neglact2_form_30_pin ,true 
+0x6843 028998 isolate1 6 ,pdata 
+0x6844 028999 nsetflag true ,04 ,rega 
+0x6845 029001 isolate1 7 ,pdata 
+0x6846 029002 nsetflag true ,05 ,rega 
+0x6847 029004 hfetch 1 ,core_gpio_sel2 
+0x6848 029005 isolate1 0 ,pdata 
+0x6849 029006 nsetflag true ,27 ,rega 
+0x684a 029007 isolate1 1 ,pdata 
+0x684b 029008 nsetflag true ,28 ,rega 
+0x684c 029009 isolate1 2 ,pdata 
+0x684d 029010 nsetflag true ,03 ,rega 
+0x684e 029011 isolate1 3 ,pdata 
+0x684f 029012 nsetflag true ,08 ,rega 
+0x6850 029013 isolate1 4 ,pdata 
+0x6851 029014 nsetflag true ,20 ,rega 
+0x6852 029015 isolate1 5 ,pdata 
+0x6853 029016 nsetflag true ,21 ,rega 
+0x6854 029017 isolate1 6 ,pdata 
+0x6855 029018 nsetflag true ,22 ,rega 
+0x6856 029019 isolate1 7 ,pdata 
+0x6857 029020 nsetflag true ,23 ,rega 
+0x6858 029022 hfetch 1 ,core_gpio_sel 
+0x6859 029023 isolate1 0 ,pdata 
+0x685a 029024 nsetflag true ,05 ,rega 
+0x685b 029025 isolate1 1 ,pdata 
+0x685c 029026 nsetflag true ,06 ,rega 
+0x685d 029027 isolate1 2 ,pdata 
+0x685e 029028 nsetflag true ,07 ,rega 
+0x685f 029029 isolate1 3 ,pdata 
+0x6860 029030 nsetflag true ,18 ,rega 
+0x6861 029031 isolate1 4 ,pdata 
+0x6862 029032 nsetflag true ,19 ,rega 
+0x6863 029033 isolate1 5 ,pdata 
+0x6864 029034 nsetflag true ,20 ,rega 
+0x6865 029035 isolate1 6 ,pdata 
+0x6866 029036 nsetflag true ,21 ,rega 
+0x6867 029037 isolate1 7 ,pdata 
+0x6868 029038 nsetflag true ,22 ,rega 
+0x6869 029040 hfetch 1 ,core_uart_ctrl 
+0x686a 029041 isolate1 4 ,pdata 
+0x686b 029042 call neglact2_form_2_pin ,true 
+0x686c 029043 bpatchx patch33_5 ,mem_patch33 
+0x686d 029045 hfetch 4 ,core_gpio_pu0 
+0x686e 029046 hfetcht 4 ,core_gpio_pd0 
+0x686f 029047 ior temp ,pdata 
+0x6870 029048 invert pdata ,pdata 
+0x6871 029049 iand rega ,pdata 
+0x6872 029051 hstore 4 ,core_gpio_oe0 
+0x6873 029052 rtn 
+:      029055 neglect2_from_6_pin:
+0x6874 029056 arg 6 ,queue 
+0x6875 029057 branch neglect_2_pin 
+:      029058 neglect4_from_9_pin:
+0x6876 029059 arg 9 ,queue 
+0x6877 029060 branch neglact_4_pin 
+:      029061 neglact4_from_23_pin:
+0x6878 029062 arg 23 ,queue 
+0x6879 029063 branch neglact_4_pin 
+:      029064 neglact2_form_25_pin:
+0x687a 029065 arg 25 ,queue 
+0x687b 029066 branch neglect_2_pin 
+:      029067 neglact2_form_30_pin:
+0x687c 029068 arg 30 ,queue 
+0x687d 029069 branch neglect_2_pin 
+:      029070 neglact2_form_2_pin:
+0x687e 029071 arg 2 ,queue 
+0x687f 029072 branch neglect_2_pin 
+:      029073 neglact_1_pin:
+0x6880 029074 arg 1 ,loopcnt 
+0x6881 029075 branch neglect_pin_loop 
+:      029076 neglact_4_pin:
+0x6882 029077 arg 4 ,loopcnt 
+0x6883 029078 branch neglect_pin_loop 
+:      029079 neglect_2_pin:
+0x6884 029080 arg 2 ,loopcnt 
+:      029081 neglect_pin_loop:
+0x6885 029082 qset0 rega 
+0x6886 029083 increase 1 ,queue 
+0x6887 029084 loop neglect_pin_loop 
+0x6888 029085 rtn 
+:      029093 gpio_cfg_uart_tx_output:
+0x6889 029094 call gpio_uart2gpio 
+0x688a 029095 arg uart_wakeup_tx ,temp 
+0x688b 029096 branch gpio_config_output 
+:      029098 gpio_pu_uart_tx:
+0x688c 029099 call gpio_cfg_uart_tx_output 
+0x688d 029100 arg uart_wakeup_tx ,temp 
+0x688e 029101 branch gpio_out_inactive 
+:      029105 gpio_rx_config_input_with_pu:
+0x688f 029106 call gpio_uart2gpio 
+0x6890 029107 hfetch 1 ,core_gpio_pu0 
+0x6891 029108 set1 uart_wakeup_rx ,pdata 
+0x6892 029109 hstore 1 ,core_gpio_pu0 
+0x6893 029110 arg uart_wakeup_rx ,temp 
+0x6894 029111 branch gpio_config_input 
+:      029113 gpio_uart2gpio:
+0x6895 029114 hfetch 1 ,core_gpio_sel1 
+0x6896 029115 and_into 0xfb ,pdata 
+0x6897 029116 hstore 1 ,core_gpio_sel1 
+0x6898 029117 rtn 
+:      029119 gpio_check_uart_state:
+0x6899 029120 hfetch 1 ,core_gpio_sel1 
+0x689a 029121 isolate1 2 ,pdata 
+0x689b 029122 rtn 
+:      029124 load_chip_option:
+0x689c 029125 call otp_enable_chgpump 
+0x689d 029126 setarg otp_chip_functions 
+0x689e 029127 arg mem_chip_functions ,rega 
+0x689f 029128 arg 0x02 ,temp 
+0x68a0 029129 call otpd_read_data 
+0x68a1 029130 branch otp_disable_chgpump 
+:      029133 load_adc_init:
+0x68a2 029134 call otp_enable_chgpump 
+0x68a3 029135 setarg otp_adc_io_0_5v_addr 
+0x68a4 029136 arg mem_0_5_adc_io_data ,rega 
+0x68a5 029137 arg 14 ,temp 
+0x68a6 029138 call otpd_read_data 
+0x68a7 029139 branch otp_disable_chgpump 
+:      029143 adc_init_data:
+0x68a8 029144 bpatchx patch33_6 ,mem_patch33 
+0x68a9 029146 call load_adc_init 
+0x68aa 029148 fetch 1 ,mem_adc_config_flag 
+0x68ab 029149 beq adc_config_vinlpm ,adc_init_data_vinlpm 
+0x68ac 029150 beq adc_config_hvin ,adc_init_data_hvin 
+0x68ad 029151 beq adc_config_gpio ,adc_init_data_io 
+0x68ae 029152 rtn 
+:      029154 adc_init_data_vinlpm:
+0x68af 029155 fetcht 2 ,mem_otp_adc_flag 
+0x68b0 029156 setarg otp_adc_flag 
+0x68b1 029157 isub temp ,null 
+0x68b2 029158 branch adc_check_data_vinlpm ,zero 
+0x68b3 029159 setarg 0x4dfa 
+0x68b4 029160 store 2 ,mem_3v_adc_vinlpm_data 
+0x68b5 029161 setarg 0x4894 
+0x68b6 029162 store 2 ,mem_2v_adc_vinlpm_data 
+0x68b7 029163 branch set_vdd_reference_voltage_1v 
+:      029165 adc_check_data_vinlpm:
+0x68b8 029166 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x68b9 029167 nbranch adc_check_2v_vinlpm ,blank 
+0x68ba 029168 setarg 0x4dfa 
+0x68bb 029169 store 2 ,mem_3v_adc_vinlpm_data 
+:      029170 adc_check_2v_vinlpm:
+0x68bc 029171 fetch 2 ,mem_2v_adc_vinlpm_data 
+0x68bd 029172 nbranch set_vdd_reference_voltage_1v ,blank 
+0x68be 029173 setarg 0x4894 
+0x68bf 029174 store 2 ,mem_2v_adc_vinlpm_data 
+:      029175 set_vdd_reference_voltage_1v:
+0x68c0 029176 setarg 100 
+0x68c1 029177 store 2 ,mem_reference_voltage 
+0x68c2 029178 rtn 
+:      029180 adc_init_data_hvin:
+0x68c3 029181 fetcht 2 ,mem_otp_adc_flag 
+0x68c4 029182 setarg otp_adc_flag 
+0x68c5 029183 isub temp ,null 
+0x68c6 029184 branch adc_check_data_hvin ,zero 
+0x68c7 029185 setarg 0x5932 
+0x68c8 029186 store 2 ,mem_5v_adc_hvin_data 
+0x68c9 029187 setarg 0x4323 
+0x68ca 029188 store 2 ,mem_1v_adc_hvin_data 
+0x68cb 029189 branch set_vdd_reference_voltage_4v 
+:      029191 adc_check_data_hvin:
+0x68cc 029192 fetch 2 ,mem_5v_adc_hvin_data 
+0x68cd 029193 nbranch adc_check_1v_hvin ,blank 
+0x68ce 029194 setarg 0x5932 
+0x68cf 029195 store 2 ,mem_5v_adc_hvin_data 
+:      029196 adc_check_1v_hvin:
+0x68d0 029197 fetch 2 ,mem_1v_adc_hvin_data 
+0x68d1 029198 nbranch set_vdd_reference_voltage_4v ,blank 
+0x68d2 029199 setarg 0x4323 
+0x68d3 029200 store 2 ,mem_1v_adc_hvin_data 
+:      029201 set_vdd_reference_voltage_4v:
+0x68d4 029202 setarg 400 
+0x68d5 029203 store 2 ,mem_reference_voltage 
+0x68d6 029204 rtn 
+:      029206 adc_init_data_io:
+0x68d7 029207 fetcht 2 ,mem_otp_adc_flag 
+0x68d8 029208 setarg otp_adc_flag 
+0x68d9 029209 isub temp ,null 
+0x68da 029210 branch adc_check_data_io ,zero 
+0x68db 029211 setarg 0x6946 
+0x68dc 029212 store 2 ,mem_1v_adc_io_data 
+0x68dd 029213 setarg 0x5377 
+0x68de 029214 store 2 ,mem_0_5_adc_io_data 
+0x68df 029215 branch set_vdd_reference_voltage_0_5v 
+:      029217 adc_check_data_io:
+0x68e0 029218 fetch 2 ,mem_1v_adc_io_data 
+0x68e1 029219 nbranch adc_check_0_5v_io ,blank 
+0x68e2 029220 setarg 0x6946 
+0x68e3 029221 store 2 ,mem_1v_adc_io_data 
+:      029222 adc_check_0_5v_io:
+0x68e4 029223 fetch 2 ,mem_0_5_adc_io_data 
+0x68e5 029224 nbranch set_vdd_reference_voltage_0_5v ,blank 
+0x68e6 029225 setarg 0x5377 
+0x68e7 029226 store 2 ,mem_0_5_adc_io_data 
+:      029227 set_vdd_reference_voltage_0_5v:
+0x68e8 029228 setarg 50 
+0x68e9 029229 store 2 ,mem_reference_voltage 
+0x68ea 029230 rtn 
+:      029233 adc_set_mode:
+0x68eb 029234 fetch 1 ,mem_adc_config_flag 
+0x68ec 029235 beq adc_config_vinlpm ,adc_check_vinlpm 
+0x68ed 029236 beq adc_config_hvin ,adc_check_hvin 
+0x68ee 029237 beq adc_config_gpio ,adc_check_gpio 
+0x68ef 029238 rtn 
+:      029239 adc_check_vinlpm:
+0x68f0 029240 jam 0xbf ,rf_adc_mode 
+0x68f1 029241 branch read_adc 
+:      029242 adc_check_hvin:
+0x68f2 029243 jam 0xaf ,rf_adc_mode 
+0x68f3 029244 branch read_adc 
+:      029245 adc_check_gpio:
+0x68f4 029246 jam 0x8f ,rf_adc_mode 
+0x68f5 029247 fetch 1 ,mem_adc_channel 
+0x68f6 029248 hstore 1 ,rf_adc_ch 
+0x68f7 029249 branch read_adc 
+:      029250 read_adc:
+0x68f8 029251 bpatchx patch33_7 ,mem_patch33 
+0x68f9 029252 hfetch 1 ,core_uart_baud + 1 
+0x68fa 029253 set1 7 ,pdata 
+0x68fb 029254 hstore 1 ,core_uart_baud + 1 
+0x68fc 029255 hfetch 1 ,rf_adc_ch 
+0x68fd 029256 or_into 0x30 ,pdata 
+0x68fe 029257 hstore 1 ,rf_adc_ch 
+0x68ff 029258 jam 0x7c ,rfen_adc 
+0x6900 029259 jam 0xaa ,rf_adc_gc 
+0x6901 029260 nop 5000 
+0x6902 029261 hfetcht 2 ,core_adc_sum 
+0x6903 029262 hfetch 1 ,core_uart_baud + 1 
+0x6904 029263 set0 7 ,pdata 
+0x6905 029264 hstore 1 ,core_uart_baud + 1 
+0x6906 029265 storet 2 ,mem_adc_current_value 
+0x6907 029266 rtn 
+:      029268 vdd_calculate_by_mode:
+0x6908 029269 bpatchx patch34_0 ,mem_patch34 
+0x6909 029270 fetch 1 ,mem_adc_config_flag 
+0x690a 029271 beq adc_config_vinlpm ,vdd_calculate_vinlpm 
+0x690b 029272 beq adc_config_hvin ,vdd_calculate_hvin 
+0x690c 029273 beq adc_config_gpio ,vdd_calculate_io 
+0x690d 029274 rtn 
+:      029276 vdd_calculate_vinlpm:
+0x690e 029277 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x690f 029278 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x6910 029279 arg 200 ,regc 
+0x6911 029280 branch vdd_calculate 
+:      029282 vdd_calculate_hvin:
+0x6912 029283 fetch 2 ,mem_5v_adc_hvin_data 
+0x6913 029284 fetcht 2 ,mem_1v_adc_hvin_data 
+0x6914 029285 arg 100 ,regc 
+0x6915 029286 branch vdd_calculate 
+:      029288 vdd_calculate_io:
+0x6916 029289 fetch 2 ,mem_1v_adc_io_data 
+0x6917 029290 fetcht 2 ,mem_0_5_adc_io_data 
+0x6918 029291 arg 50 ,regc 
+0x6919 029292 branch vdd_calculate 
+:      029294 vdd_calculate:
+0x691a 029295 isub temp ,rega 
+0x691b 029296 fetch 2 ,mem_adc_current_value 
+0x691c 029297 isub temp ,pdata 
+0x691d 029298 nbranch vdd_calculate1 ,positive 
+0x691e 029299 fetcht 2 ,mem_reference_voltage 
+0x691f 029300 imul32 temp ,regb 
+0x6920 029301 copy regc ,pdata 
+0x6921 029302 imul32 rega ,pdata 
+0x6922 029303 iadd regb ,pdata 
+:      029304 vdd_calculate2:
+0x6923 029305 idiv rega 
+0x6924 029306 call wait_div_end 
+0x6925 029307 quotient pdata 
+0x6926 029308 rtn 
+:      029310 vdd_calculate1:
+0x6927 029311 copy temp ,pdata 
+0x6928 029312 fetcht 2 ,mem_adc_current_value 
+0x6929 029313 isub temp ,pdata 
+0x692a 029314 fetcht 2 ,mem_reference_voltage 
+0x692b 029315 imul32 temp ,regb 
+0x692c 029316 copy regc ,pdata 
+0x692d 029317 imul32 rega ,pdata 
+0x692e 029318 isub regb ,pdata 
+0x692f 029319 branch vdd_calculate2 
+:      029330 adc_bat_percent_lowpower_out:
+0x6930 029331 ifetch 8 ,rega 
+0x6931 029332 store 8 ,mem_pdatatemp 
+0x6932 029333 fetch 2 ,mem_pdatatemp 
+0x6933 029334 fetcht 2 ,mem_pdatatemp + 2 
+0x6934 029335 isub temp ,rega 
+0x6935 029336 fetch 2 ,mem_pdatatemp + 6 
+0x6936 029337 isub temp ,regb 
+0x6937 029338 fetcht 2 ,mem_pdatatemp + 4 
+0x6938 029339 isub temp ,null 
+0x6939 029340 ncall adc_set_low_power_flag ,positive 
+0x693a 029341 mul32 regb ,100 ,pdata 
+0x693b 029342 idiv rega 
+0x693c 029343 call wait_div_end 
+0x693d 029344 quotient pdata 
+0x693e 029345 call adc_set_no_power_flag ,blank 
+0x693f 029346 rtn 
+:      029347 adc_set_low_power_flag:
+0x6940 029348 fetch 1 ,mem_adc_power_flag 
+0x6941 029349 set1 0 ,pdata 
+0x6942 029350 store 1 ,mem_adc_power_flag 
+0x6943 029351 rtn 
+:      029352 adc_set_no_power_flag:
+0x6944 029353 fetcht 1 ,mem_adc_power_flag 
+0x6945 029354 set1 1 ,temp 
+0x6946 029355 storet 1 ,mem_adc_power_flag 
+0x6947 029356 rtn 
+:      029361 keyscan_key_init:
+0x6948 029362 fetch 2 ,mem_key_num_ptr 
+0x6949 029363 ifetch 1 ,pdata 
+:      029364 keyscan_key_init_next:
+0x694a 029365 rtn blank 
+0x694b 029366 copy pdata ,loopcnt 
+0x694c 029368 fetch 2 ,mem_keyscan_ptr 
+0x694d 029369 increase 3 ,pdata 
+0x694e 029370 copy pdata ,rega 
+:      029371 keyscan_key_init_lp1:
+0x694f 029372 ifetcht 1 ,rega 
+0x6950 029373 call gpio_config_input 
+0x6951 029374 increase key_conf_struct_len ,rega 
+0x6952 029375 loop keyscan_key_init_lp1 
+:      029376 keyscan_key_init_end:
+0x6953 029377 rtn 
+:      029379 keyscan_scan_key:
+0x6954 029380 fetch 2 ,mem_keyscan_ptr 
+0x6955 029381 increase 3 ,pdata 
+0x6956 029382 copy pdata ,rega 
+0x6957 029384 force 0 ,regb 
+0x6958 029385 jam 0 ,mem_key_value_temp 
+:      029386 keyscan_scan_key_lp1:
+0x6959 029387 ifetcht 1 ,rega 
+0x695a 029388 call gpio_get_bit 
+0x695b 029389 bpatchx patch34_1 ,mem_patch34 
+0x695c 029390 fetch 2 ,mem_key_value_temp 
+0x695d 029391 copy regb ,queue 
+0x695e 029392 qsetflag true ,pdata 
+0x695f 029393 store 2 ,mem_key_value_temp 
+0x6960 029394 increase key_conf_struct_len ,rega 
+0x6961 029395 increase 1 ,regb 
+0x6962 029396 fetch 2 ,mem_key_num_ptr 
+0x6963 029397 ifetch 1 ,pdata 
+:      029398 keyscan_scan_key_lp1_next:
+0x6964 029399 ixor regb ,null 
+0x6965 029400 nbranch keyscan_scan_key_lp1 ,zero 
+0x6966 029401 fetch 2 ,mem_key_value_temp 
+0x6967 029402 fetcht 2 ,mem_key_value 
+0x6968 029403 ixor temp ,null 
+0x6969 029404 rtn zero 
+0x696a 029405 enable user 
+0x696b 029406 rtn 
+:      029408 keyscan_process_lpm_before:
+0x696c 029409 fetch 2 ,mem_key_num_ptr 
+0x696d 029410 ifetch 1 ,pdata 
+:      029411 keyscan_process_lpm_before_next:
+0x696e 029412 rtn blank 
+0x696f 029413 copy pdata ,loopcnt 
+0x6970 029414 fetch 2 ,mem_keyscan_ptr 
+0x6971 029415 increase 3 ,pdata 
+0x6972 029416 copy pdata ,rega 
+:      029417 keyscan_process_lpm_before_lp1:
+0x6973 029418 ifetcht 1 ,rega 
+0x6974 029419 call gpio_set_wake_by_current_state 
+0x6975 029420 increase key_conf_struct_len ,rega 
+0x6976 029421 loop keyscan_process_lpm_before_lp1 
+:      029422 keyscan_process_lpm_before_end:
+0x6977 029423 rtn 
+:      029425 keyscan_key_process:
+0x6978 029426 arg key_scan_timer ,queue 
+0x6979 029427 call timer_check 
+0x697a 029428 nrtn blank 
+0x697b 029429 setarg 0x20 
+0x697c 029430 arg key_scan_timer ,queue 
+0x697d 029431 call timer_init 
+0x697e 029432 disable user 
+0x697f 029433 call keyscan_process_lpm_before 
+0x6980 029434 bpatchx patch34_2 ,mem_patch34 
+0x6981 029435 fetch 2 ,mem_key_num_ptr 
+0x6982 029436 ifetch 1 ,pdata 
+:      029437 keyscan_key_process_next:
+0x6983 029438 rtn blank 
+0x6984 029439 call keyscan_scan_key 
+0x6985 029440 nbranch lpm_button_clean_wake_lock ,user 
+0x6986 029441 call lpm_button_get_wake_lock 
+0x6987 029442 disable user 
+0x6988 029443 fetch 2 ,mem_key_value_temp 
+0x6989 029444 store 2 ,mem_key_value_temp4 
+0x698a 029445 jam 0 ,mem_key_value_temp6 
+0x698b 029446 force 0 ,queue 
+:      029447 keyscan_key_lp1:
+0x698c 029448 fetch 2 ,mem_key_value 
+0x698d 029449 rshift pdata ,temp 
+0x698e 029450 storet 2 ,mem_key_value 
+0x698f 029451 and pdata ,0x01 ,pdata 
+0x6990 029452 fetcht 2 ,mem_key_value_temp4 
+0x6991 029453 and temp ,0x01 ,rega 
+0x6992 029454 rshift temp ,temp 
+0x6993 029455 storet 2 ,mem_key_value_temp4 
+0x6994 029456 ixor rega ,null 
+0x6995 029457 ncall keyscan_send_key_data ,zero 
+0x6996 029458 fetch 2 ,mem_key_num_ptr 
+0x6997 029459 ifetch 1 ,pdata 
+:      029460 keyscan_key_lp1_next:
+0x6998 029461 fetcht 1 ,mem_key_value_temp6 
+0x6999 029462 increase 1 ,temp 
+0x699a 029463 storet 1 ,mem_key_value_temp6 
+0x699b 029464 copy temp ,queue 
+0x699c 029465 ixor queue ,null 
+0x699d 029466 nbranch keyscan_key_lp1 ,zero 
+0x699e 029467 fetch 2 ,mem_key_value_temp 
+0x699f 029468 store 2 ,mem_key_value 
+0x69a0 029469 rtn 
+:      029470 keyscan_send_key_data:
+0x69a1 029471 bpatchx patch34_3 ,mem_patch34 
+0x69a2 029472 fetch 2 ,mem_keyscan_ptr 
+0x69a3 029473 increase 1 ,pdata 
+0x69a4 029474 ifetch 2 ,pdata 
+0x69a5 029475 branch callback_func 
+:      029486 pwm_init:
+0x69a6 029487 hfetch 1 ,core_clksel 
+0x69a7 029488 ior rega ,pdata 
+0x69a8 029489 hstore 1 ,core_clksel 
+0x69a9 029490 hfetch 2 ,core_clkoff 
+0x69aa 029491 set0 clock_off_pwm ,pdata 
+0x69ab 029492 hstore 2 ,core_clkoff 
+:      029493 delay_nop100:
+0x69ac 029494 nop 100 
+0x69ad 029495 rtn 
+:      029506 pwm_out_set:
+0x69ae 029507 fetcht 3 ,mem_pdatatemp + 2 
+0x69af 029508 setarg pwm_12mhz 
+0x69b0 029509 idiv temp 
+0x69b1 029510 call wait_div_end 
+0x69b2 029511 quotient temp 
+0x69b3 029512 fetch 1 ,mem_pdatatemp + 5 
+0x69b4 029513 imul32 temp ,pdata 
+0x69b5 029514 div pdata ,100 
+0x69b6 029515 call wait_div_end 
+0x69b7 029516 quotient rega 
+0x69b8 029517 copy temp ,pdata 
+0x69b9 029518 isub rega ,regb 
+0x69ba 029519 fetch 1 ,mem_pdatatemp + 1 
+0x69bb 029520 call pwm_duty_cycle_set 
+0x69bc 029521 fetch 1 ,mem_pdatatemp 
+0x69bd 029522 branch pwm_enable 
+:      029525 pwm_duty_cycle_set:
+0x69be 029526 beq 0 ,pwm_pwm0_duty_set 
+0x69bf 029527 beq 1 ,pwm_pwm1_duty_set 
+0x69c0 029528 beq 2 ,pwm_pwm2_duty_set 
+0x69c1 029529 beq 3 ,pwm_pwm3_duty_set 
+0x69c2 029530 beq 4 ,pwm_pwm4_duty_set 
+0x69c3 029531 beq 5 ,pwm_pwm5_duty_set 
+:      029532 pwm_pwm0_duty_set:
+0x69c4 029533 arg core_pwm_pcnt0 ,contw 
+0x69c5 029534 branch pwm_set_pncnt 
+:      029535 pwm_pwm1_duty_set:
+0x69c6 029536 arg core_pwm_pcnt1 ,contw 
+0x69c7 029537 branch pwm_set_pncnt 
+:      029538 pwm_pwm2_duty_set:
+0x69c8 029539 arg core_pwm_pcnt2 ,contw 
+0x69c9 029540 branch pwm_set_pncnt 
+:      029541 pwm_pwm3_duty_set:
+0x69ca 029542 arg core_pwm_pcnt3 ,contw 
+0x69cb 029543 branch pwm_set_pncnt 
+:      029544 pwm_pwm4_duty_set:
+0x69cc 029545 arg core_pwm_pcnt4 ,contw 
+0x69cd 029546 branch pwm_set_pncnt 
+:      029547 pwm_pwm5_duty_set:
+0x69ce 029548 arg core_pwm_pcnt5 ,contw 
+0x69cf 029549 branch pwm_set_pncnt 
+:      029550 pwm_set_pncnt:
+0x69d0 029551 copy rega ,pdata 
+0x69d1 029552 istore 2 ,contw 
+0x69d2 029553 copy regb ,pdata 
+0x69d3 029554 istore 2 ,contw 
+0x69d4 029555 rtn 
+:      029559 pwm_enable:
+0x69d5 029560 enable user 
+0x69d6 029561 branch pwm_gpio_set 
+:      029562 pwm_disable:
+0x69d7 029563 disable user 
+:      029564 pwm_gpio_set:
+0x69d8 029565 beq 4 ,pwm_gpio4_set 
+0x69d9 029566 beq 5 ,pwm_gpio5_set 
+0x69da 029567 beq 27 ,pwm_gpio27_set 
+0x69db 029568 beq 28 ,pwm_gpio28_set 
+0x69dc 029569 beq 3 ,pwm_gpio3_set 
+0x69dd 029570 beq 8 ,pwm_gpio8_set 
+0x69de 029571 beq 20 ,pwm_gpio20_set 
+0x69df 029572 beq 21 ,pwm_gpio21_set 
+0x69e0 029573 beq 22 ,pwm_gpio22_set 
+0x69e1 029574 beq 23 ,pwm_gpio23_set 
+0x69e2 029575 rtn 
+:      029578 pwm_gpio4_set:
+0x69e3 029579 arg 6 ,queue 
+0x69e4 029580 branch pwm_one_set_select 
+:      029581 pwm_gpio5_set:
+0x69e5 029582 arg 7 ,queue 
+0x69e6 029583 branch pwm_one_set_select 
+:      029584 pwm_gpio27_set:
+0x69e7 029585 arg 8 ,queue 
+0x69e8 029586 branch pwm_one_set_select 
+:      029587 pwm_gpio28_set:
+0x69e9 029588 arg 9 ,queue 
+0x69ea 029589 branch pwm_one_set_select 
+:      029590 pwm_gpio3_set:
+0x69eb 029591 arg 10 ,queue 
+0x69ec 029592 branch pwm_one_set_select 
+:      029593 pwm_gpio8_set:
+0x69ed 029594 arg 11 ,queue 
+0x69ee 029595 branch pwm_one_set_select 
+:      029596 pwm_gpio20_set:
+0x69ef 029597 arg 12 ,queue 
+0x69f0 029598 branch pwm_tw0_set_select 
+:      029599 pwm_gpio21_set:
+0x69f1 029600 arg 13 ,queue 
+0x69f2 029601 branch pwm_tw0_set_select 
+:      029602 pwm_gpio22_set:
+0x69f3 029603 arg 14 ,queue 
+0x69f4 029604 branch pwm_tw0_set_select 
+:      029605 pwm_gpio23_set:
+0x69f5 029606 arg 15 ,queue 
+0x69f6 029607 branch pwm_tw0_set_select 
+:      029609 pwm_set_select:
+0x69f7 029610 hfetch 2 ,core_gpio_sel1 
+0x69f8 029611 qsetflag user ,pdata 
+0x69f9 029612 hstore 2 ,core_gpio_sel1 
+0x69fa 029613 copy rega ,queue 
+0x69fb 029614 hfetch 1 ,core_gpio_key2 
+0x69fc 029615 qsetflag user ,pdata 
+0x69fd 029616 hstore 1 ,core_gpio_key2 
+0x69fe 029617 rtn 
+:      029619 pwm_one_set_select:
+0x69ff 029620 add queue ,-4 ,rega 
+0x6a00 029621 branch pwm_set_select 
+:      029623 pwm_tw0_set_select:
+0x6a01 029624 add queue ,-10 ,rega 
+0x6a02 029625 branch pwm_set_select 
+:      029630 rfcomm_init:
+0x6a03 029631 rtn wake 
+0x6a04 029632 jam 0 ,mem_rfcomm_send_more_pkt 
+0x6a05 029633 jam bits9600 ,memremoterpnbitrate 
+0x6a06 029634 jam databits8 ,memremoteprndatabits 
+0x6a07 029635 jam 0x11 ,memremoteprnxon 
+0x6a08 029636 jam 0x13 ,memremoteprnxoff 
+0x6a09 029637 setarg 0 
+0x6a0a 029638 store 3 ,memremoteprnstopbit 
+0x6a0b 029639 store 1 ,mem_spp_state 
+0x6a0c 029640 jam 0 ,memui_reconnect_mode 
+:      029642 rfcomm_init_spp:
+0x6a0d 029643 bpatchx patch34_4 ,mem_patch34 
+0x6a0e 029644 setarg 0 
+0x6a0f 029645 store 1 ,mem_spp_state 
+0x6a10 029646 store 1 ,mem_remote_spp_channel 
+0x6a11 029647 store 1 ,mem_pn_dlci 
+0x6a12 029648 fetch 1 ,mem_credit_flag 
+0x6a13 029649 beq credit_enable ,rfcomm_init_spp_with_credit 
+0x6a14 029650 jam 0x50 ,mem_credit_given 
+0x6a15 029651 rtn 
+:      029653 rfcomm_init_spp_with_credit:
+0x6a16 029654 jam 0x00 ,mem_credit_given 
+0x6a17 029655 rtn 
+:      029657 set_cr_bit:
+0x6a18 029658 or_into 0x02 ,temp 
+0x6a19 029659 rtn 
+:      029671 rfcomm_calculate_fcs_sabm:
+0x6a1a 029672 copy temp ,pdata 
+0x6a1b 029673 reverse pdata ,pdata 
+0x6a1c 029674 store 1 ,memfcstemp3 
+0x6a1d 029675 force ini_tx_sabm ,pdata 
+0x6a1e 029676 reverse pdata ,pdata 
+0x6a1f 029677 store 1 ,memfcstemp2 
+0x6a20 029678 force 0x01 ,pdata 
+0x6a21 029679 reverse pdata ,pdata 
+0x6a22 029680 store 1 ,memfcstemp1 
+0x6a23 029681 call caculate_fcs 
+0x6a24 029682 copy temp ,pdata 
+0x6a25 029683 rtn 
+:      029684 rfcomm_calculate_fcs_ua:
+0x6a26 029685 reverse pdata ,pdata 
+0x6a27 029686 store 1 ,memfcstemp3 
+0x6a28 029687 force rsp_tx_ua ,pdata 
+0x6a29 029688 reverse pdata ,pdata 
+0x6a2a 029689 store 1 ,memfcstemp2 
+0x6a2b 029690 force 0x01 ,pdata 
+0x6a2c 029691 reverse pdata ,pdata 
+0x6a2d 029692 store 1 ,memfcstemp1 
+0x6a2e 029693 branch caculate_fcs 
+:      029695 rfcomm_calculate_fcs_dlci0:
+0x6a2f 029696 fetch 1 ,mem_rfcomm_initiator 
+0x6a30 029697 branch rfcomm_calculate_fcs_dlci0_res ,blank 
+0x6a31 029698 setarg 0x70 
+0x6a32 029699 rtn 
+:      029700 rfcomm_calculate_fcs_dlci0_res:
+0x6a33 029701 setarg 0xaa 
+0x6a34 029702 rtn 
+:      029704 rfcomm_save_fcs_uih:
+0x6a35 029705 reverse pdata ,pdata 
+0x6a36 029706 store 1 ,memfcstemp3 
+0x6a37 029707 force rsp_rx_uih ,pdata 
+0x6a38 029708 call caculate_uihdata_fcs 
+0x6a39 029709 fetcht 2 ,mem_contw_temp 
+0x6a3a 029710 copy temp ,contw 
+0x6a3b 029711 istore 1 ,contw 
+0x6a3c 029712 copy contw ,temp 
+0x6a3d 029713 storet 2 ,mem_contw_temp 
+0x6a3e 029714 force rsp_rx_uih_wdata ,pdata 
+0x6a3f 029715 call caculate_uihdata_fcs 
+0x6a40 029716 fetcht 2 ,mem_contw_temp 
+0x6a41 029717 copy temp ,contw 
+0x6a42 029718 istore 1 ,contw 
+0x6a43 029719 rtn 
+:      029728 caculate_uihdata_fcs:
+0x6a44 029729 reverse pdata ,pdata 
+0x6a45 029730 store 1 ,memfcstemp2 
+0x6a46 029731 fetch 2 ,memfcstemp2 
+0x6a47 029732 lshift8 pdata ,pdata 
+0x6a48 029733 store 3 ,mem_mod2div_temp 
+0x6a49 029734 arg 0x107 ,rega 
+0x6a4a 029735 arg 0xf ,regb 
+0x6a4b 029736 call mod2div 
+0x6a4c 029737 xor_into 0xd7 ,pdata 
+0x6a4d 029738 invert pdata ,pdata 
+0x6a4e 029739 reverse pdata ,pdata 
+0x6a4f 029740 rtn 
+:      029750 caculate_fcs:
+0x6a50 029751 fetch 3 ,memfcstemp1 
+0x6a51 029752 store 3 ,mem_mod2div_temp 
+0x6a52 029753 arg 0x107 ,rega 
+0x6a53 029754 arg 0xf ,regb 
+0x6a54 029755 call mod2div 
+0x6a55 029756 lshift8 pdata ,pdata 
+0x6a56 029757 arg 0x7 ,regb 
+0x6a57 029758 call mod2div 
+0x6a58 029759 xor_into 0x2b ,pdata 
+0x6a59 029760 invert pdata ,pdata 
+0x6a5a 029761 reverse pdata ,pdata 
+0x6a5b 029762 copy pdata ,temp 
+0x6a5c 029763 rtn 
+:      029765 mod2div:
+0x6a5d 029766 arg 0 ,regc 
+0x6a5e 029767 copy regb ,loopcnt 
+0x6a5f 029768 call right_shift_n 
+0x6a60 029769 icopy temp 
+:      029770 mod2div_loop:
+0x6a61 029775 copy temp ,pdata 
+0x6a62 029776 lshift regc ,regc 
+0x6a63 029777 bbit0 8 ,mod2div_not_enough_reduction 
+0x6a64 029778 ixor rega ,temp 
+0x6a65 029779 increase 1 ,regc 
+:      029780 mod2div_not_enough_reduction:
+0x6a66 029781 lshift temp ,temp 
+0x6a67 029782 fetch 3 ,mem_mod2div_temp 
+0x6a68 029783 increase -1 ,regb 
+0x6a69 029784 compare 0xff ,regb ,0xff 
+0x6a6a 029785 branch mod2div_end ,true 
+0x6a6b 029786 copy regb ,loopcnt 
+0x6a6c 029787 call right_shift_n 
+0x6a6d 029788 isolate1 0 ,pdata 
+0x6a6e 029789 setflag true ,0 ,temp 
+0x6a6f 029790 branch mod2div_loop 
+:      029791 mod2div_end:
+0x6a70 029793 rshift temp ,pdata 
+0x6a71 029794 rtn 
+:      029796 get_rfcomm_snd_adss:
+0x6a72 029797 fetcht 1 ,mem_pn_dlci 
+:      029798 dlci_to_address_cmd:
+0x6a73 029800 lshift2 temp ,temp 
+0x6a74 029801 set1 rfcomm_address_ext_len ,temp 
+0x6a75 029802 fetch 1 ,mem_rfcomm_initiator 
+0x6a76 029803 ncall set_cr_bit ,blank 
+0x6a77 029804 storet 1 ,mem_rfcomm_send_adss 
+0x6a78 029805 rtn 
+:      029807 channel_to_dlci:
+0x6a79 029809 lshift temp ,temp 
+0x6a7a 029810 fetch 1 ,mem_rfcomm_initiator 
+0x6a7b 029811 setflag blank ,0 ,temp 
+0x6a7c 029813 rtn 
+:      029814 rfcomm_rx_process_dlci0_sabm:
+0x6a7d 029815 fetcht 1 ,mem_current_channel 
+0x6a7e 029816 jam 0xd7 ,mem_current_fcs 
+0x6a7f 029817 call rfcomm_send_ua 
+0x6a80 029818 fetch 1 ,mem_rfcomm_state 
+0x6a81 029819 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+0x6a82 029820 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+0x6a83 029821 store 1 ,mem_rfcomm_state 
+0x6a84 029822 jam 0 ,mem_rfcomm_initiator 
+0x6a85 029823 branch rfcomm_rx_process_end 
+:      029824 rfcomm_rx_process_dlci0_ua:
+0x6a86 029825 fetch 1 ,mem_rfcomm_state 
+0x6a87 029826 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+0x6a88 029827 store 1 ,mem_rfcomm_state 
+0x6a89 029828 branch rfcomm_rx_process_end 
+:      029831 rfcomm_rx_process:
+0x6a8a 029832 bpatchx patch34_5 ,mem_patch34 
+0x6a8b 029833 fetch 1 ,memui_reconnect_mode 
+0x6a8c 029834 beq no_reconnection ,rfcomm_rx_process_remote_page 
+0x6a8d 029835 branch rfcomm_rx_process_reconn 
+:      029837 rfcomm_rx_process_remote_page:
+0x6a8e 029838 fetch 2 ,mem_l2cap_payload_ptr 
+0x6a8f 029839 copy pdata ,contr 
+0x6a90 029840 call get_rfcomm_head_struct 
+0x6a91 029841 fetch 1 ,mem_current_channel 
+0x6a92 029842 beq 0 ,parse_dlci0_rp 
+0x6a93 029843 branch parse_uih_rp 
+:      029844 parse_dlci0_rp:
+0x6a94 029845 bpatchx patch34_6 ,mem_patch34 
+0x6a95 029846 fetch 1 ,mem_current_frame_type 
+0x6a96 029847 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+0x6a97 029848 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+0x6a98 029849 beq rfcomm_frame_type_uih ,parse_dlci0_rp_uih 
+0x6a99 029850 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
+0x6a9a 029851 rtn 
+:      029854 parse_dlci0_rp_uih:
+0x6a9b 029855 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6a9c 029856 copy pdata ,contr 
+0x6a9d 029857 call get_rfcomm_uih_head_struct 
+0x6a9e 029858 fetch 1 ,mem_uih_cmd_type 
+0x6a9f 029859 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
+0x6aa0 029860 beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
+0x6aa1 029861 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
+0x6aa2 029862 beq uih_modem_status_res ,parse_dlci0_rp_uih_ms_res 
+0x6aa3 029863 beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
+0x6aa4 029864 branch rfcomm_rx_process_end 
+:      029866 parse_dlci0_rp_uih_pn_cmd:
+0x6aa5 029867 call parse_dlci0_rp_uih_pn_res_common 
+0x6aa6 029869 branch parse_dlci0_rp_uih_pn_cmd_spp 
+:      029871 parse_dlci0_rp_uih_pn_cmd_spp:
+0x6aa7 029872 fetch 1 ,mem_spp_state 
+0x6aa8 029873 set1 rfcomm_channel_state_pn_cmd ,pdata 
+0x6aa9 029874 set1 rfcomm_channel_state_pn_res ,pdata 
+0x6aaa 029875 store 1 ,mem_spp_state 
+0x6aab 029876 call rfcomm_send_param_neg_res 
+0x6aac 029877 branch rfcomm_rx_process_end 
+:      029879 parse_dlci0_rp_uih_pn_res:
+0x6aad 029880 call parse_dlci0_rp_uih_pn_res_common 
+0x6aae 029881 branch rfcomm_rx_process_end 
+:      029883 parse_dlci0_rp_uih_pn_res_common:
+0x6aaf 029884 call get_param_payload_ptr 
+0x6ab0 029885 branch get_rfcomm_prarmer_negotiation 
+:      029887 get_rfcomm_param_modem_status:
+0x6ab1 029888 call get_param_payload_ptr 
+0x6ab2 029889 ifetch 1 ,contr 
+0x6ab3 029890 rshift3 pdata ,pdata 
+0x6ab4 029891 store 1 ,mem_ms_channel 
+0x6ab5 029892 ifetch 1 ,contr 
+0x6ab6 029893 store 1 ,mem_ms_param 
+0x6ab7 029894 rtn 
+:      029897 get_rfcomm_head_struct:
+0x6ab8 029898 ifetch 1 ,contr 
+0x6ab9 029899 store 1 ,mem_current_adss 
+0x6aba 029900 rshift3 pdata ,pdata 
+0x6abb 029901 store 1 ,mem_current_channel 
+0x6abc 029902 ifetch 1 ,contr 
+0x6abd 029903 store 1 ,mem_current_frame_type 
+:      029904 get_rfcomm_current_length:
+0x6abe 029905 call get_rfcomm_length_common 
+0x6abf 029906 storet 2 ,mem_current_length 
+0x6ac0 029907 copy contr ,pdata 
+0x6ac1 029908 store 2 ,mem_rfcomm_uih_payload_ptr 
+0x6ac2 029909 rtn 
+:      029911 get_rfcomm_uih_head_struct:
+0x6ac3 029912 ifetch 1 ,contr 
+0x6ac4 029913 rshift pdata ,pdata 
+0x6ac5 029914 store 1 ,mem_uih_cmd_type 
+0x6ac6 029915 call get_rfcomm_length_common 
+0x6ac7 029916 storet 2 ,mem_uih_length 
+0x6ac8 029917 copy contr ,pdata 
+0x6ac9 029918 store 2 ,mem_param_payload_ptr 
+0x6aca 029919 rtn 
+:      029922 get_param_payload_ptr:
+0x6acb 029923 fetch 2 ,mem_param_payload_ptr 
+0x6acc 029924 copy pdata ,contr 
+0x6acd 029925 rtn 
+:      029927 get_rfcomm_length_common:
+0x6ace 029928 ifetch 1 ,contr 
+0x6acf 029929 copy pdata ,temp 
+0x6ad0 029930 rshift temp ,temp 
+0x6ad1 029931 rtnbit1 0 
+0x6ad2 029932 ifetch 1 ,contr 
+0x6ad3 029933 lshift3 pdata ,pdata 
+0x6ad4 029934 lshift4 pdata ,pdata 
+0x6ad5 029935 iadd temp ,temp 
+0x6ad6 029936 rtn 
+:      029938 get_rfcomm_prarmer_negotiation:
+0x6ad7 029939 ifetch 1 ,contr 
+0x6ad8 029940 store 1 ,mem_pn_dlci 
+0x6ad9 029941 ifetch 1 ,contr 
+0x6ada 029942 store 1 ,mem_pn_credit_flow_type_info 
+0x6adb 029943 ifetch 1 ,contr 
+0x6adc 029944 store 1 ,mem_pn_priority 
+0x6add 029945 ifetch 1 ,contr 
+0x6ade 029946 store 1 ,mem_pn_acknowledg_timer 
+0x6adf 029947 ifetch 2 ,contr 
+0x6ae0 029948 store 2 ,mem_pn_max_frame_size 
+0x6ae1 029949 ifetch 1 ,contr 
+0x6ae2 029950 store 1 ,mem_pn_max_retrans 
+0x6ae3 029951 ifetch 1 ,contr 
+0x6ae4 029952 store 1 ,mem_remote_credits 
+0x6ae5 029953 rtn 
+:      029956 parse_dlci0_rp_uih_ms_cmd:
+0x6ae6 029957 call get_rfcomm_param_modem_status 
+0x6ae7 029959 branch parse_dlci0_rp_uih_ms_cmd_spp 
+:      029961 parse_dlci0_rp_uih_ms_cmd_spp:
+0x6ae8 029962 fetch 1 ,mem_spp_state 
+0x6ae9 029963 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+0x6aea 029964 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+0x6aeb 029965 store 1 ,mem_spp_state 
+0x6aec 029966 fetcht 1 ,mem_pn_dlci 
+0x6aed 029967 lshift2 temp ,temp 
+0x6aee 029968 or_into 3 ,temp 
+0x6aef 029969 call rfcomm_send_modem_status_res 
+0x6af0 029970 jam more_pkt_msc_cmd_spp ,mem_rfcomm_send_more_pkt 
+0x6af1 029971 branch rfcomm_rx_process_end 
+:      029973 parse_dlci0_rp_uih_ms_res:
+0x6af2 029974 jam bt_evt_spp_connected ,mem_fifo_temp 
+0x6af3 029975 call ui_ipc_send_event 
+0x6af4 029976 call get_rfcomm_param_modem_status 
+0x6af5 029977 fetch 1 ,mem_ms_channel 
+0x6af6 029978 sub pdata ,1 ,null 
+0x6af7 029979 branch parse_dlci0_rp_uih_ms_res_spp ,zero 
+0x6af8 029980 branch assert 
+:      029981 parse_dlci0_rp_uih_ms_res_spp:
+0x6af9 029982 fetch 1 ,mem_spp_state 
+0x6afa 029983 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+0x6afb 029984 store 1 ,mem_spp_state 
+0x6afc 029985 branch rfcomm_rx_process_end 
+:      029987 parse_dlci0_rp_uih_cmd_port:
+0x6afd 029988 call get_param_payload_ptr 
+0x6afe 029989 ifetch 1 ,contr 
+0x6aff 029990 store 1 ,mem_rpn_dlci 
+0x6b00 029991 call l2cap_malloc_rfcomm_channel 
+0x6b01 029992 call l2cap_get_rfcomm_tx_buff 
+0x6b02 029993 setarg 0x000e 
+0x6b03 029994 istore 2 ,contw 
+0x6b04 029995 fetch 2 ,mem_rfcomm_remote_cid 
+0x6b05 029996 istore 2 ,contw 
+0x6b06 029997 fetch 1 ,mem_rfcomm_initiator 
+0x6b07 029999 lshift pdata ,pdata 
+0x6b08 030000 set1 0 ,pdata 
+0x6b09 030001 istore 1 ,contw 
+0x6b0a 030002 bpatchx patch34_7 ,mem_patch34 
+0x6b0b 030003 setarg 0x15ef 
+0x6b0c 030004 istore 2 ,contw 
+0x6b0d 030005 setarg 0x1191 
+0x6b0e 030006 istore 2 ,contw 
+0x6b0f 030009 fetch 1 ,mem_rpn_dlci 
+0x6b10 030010 istore 1 ,contw 
+0x6b11 030011 setarg 0x000007 
+0x6b12 030012 istore 5 ,contw 
+0x6b13 030015 setarg 0x01 
+0x6b14 030016 istore 2 ,contw 
+0x6b15 030019 call rfcomm_calculate_fcs_dlci0 
+0x6b16 030020 istore 1 ,contw 
+0x6b17 030021 rtn 
+:      030025 parse_uih_rp:
+0x6b18 030026 branch parse_uih_rp_spp 
+:      030028 parse_uih_rp_spp:
+0x6b19 030029 bpatchx patch35_0 ,mem_patch35 
+0x6b1a 030030 fetch 1 ,mem_current_frame_type 
+0x6b1b 030031 beq rfcomm_frame_type_ua ,parse_uih_rp_spp_ua 
+0x6b1c 030032 beq rfcomm_frame_type_sabm ,parse_uih_rp_spp_sabm 
+0x6b1d 030033 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+0x6b1e 030034 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+0x6b1f 030035 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn 
+0x6b20 030036 rtn 
+:      030037 parse_uih_rp_spp_ua:
+0x6b21 030038 fetch 1 ,mem_spp_state 
+0x6b22 030039 set1 rfcomm_channel_state_ua ,pdata 
+0x6b23 030040 store 1 ,mem_spp_state 
+0x6b24 030041 branch rfcomm_rx_process_end 
+:      030042 parse_uih_rp_spp_sabm:
+0x6b25 030043 fetch 1 ,mem_spp_state 
+0x6b26 030044 set1 rfcomm_channel_state_ua ,pdata 
+0x6b27 030045 set1 rfcomm_channel_state_sabm ,pdata 
+0x6b28 030046 store 1 ,mem_spp_state 
+0x6b29 030047 fetch 1 ,mem_current_adss 
+0x6b2a 030048 call rfcomm_calculate_fcs_ua 
+0x6b2b 030049 store 1 ,mem_current_fcs 
+0x6b2c 030050 call rfcomm_send_ua 
+0x6b2d 030051 fetch 1 ,mem_current_adss 
+0x6b2e 030052 rshift2 pdata ,pdata 
+0x6b2f 030053 store 1 ,mem_pn_dlci 
+0x6b30 030054 lshift2 pdata ,pdata 
+0x6b31 030055 set0 rfcomm_address_cr ,pdata 
+0x6b32 030056 set1 rfcomm_address_ext_len ,pdata 
+0x6b33 030057 arg mem_hiufcs_spp ,temp 
+0x6b34 030058 storet 2 ,mem_contw_temp 
+0x6b35 030059 call rfcomm_save_fcs_uih 
+0x6b36 030060 branch rfcomm_rx_process_end 
+:      030062 parse_uih_spp_uih_credits:
+0x6b37 030063 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b38 030064 copy pdata ,contr 
+0x6b39 030065 increase 1 ,pdata 
+0x6b3a 030066 store 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b3b 030067 ifetch 1 ,contr 
+0x6b3c 030068 fetcht 1 ,mem_remote_credits 
+0x6b3d 030069 iadd temp ,pdata 
+0x6b3e 030070 store 1 ,mem_remote_credits 
+:      030071 parse_uih_spp_uih:
+0x6b3f 030072 call rfcomm_increase_credit_given 
+:      030073 parse_uih_spp_uih_cont:
+0x6b40 030074 call get_rfcomm_snd_adss 
+0x6b41 030075 call rfcomm_send_uih_without_payload 
+0x6b42 030076 call spp_process_rx_data 
+0x6b43 030077 branch rfcomm_rx_process_end 
+:      030079 parse_uih_rp_spp_disconn_send_event:
+0x6b44 030080 jam bt_evt_spp_disconnected ,mem_fifo_temp 
+0x6b45 030081 call ui_ipc_send_event 
+:      030082 parse_uih_rp_spp_disconn:
+0x6b46 030083 call rfcomm_init_spp 
+0x6b47 030084 fetch 1 ,mem_current_adss 
+0x6b48 030085 call rfcomm_calculate_fcs_ua 
+0x6b49 030086 store 1 ,mem_current_fcs 
+0x6b4a 030087 call rfcomm_send_ua 
+0x6b4b 030088 branch rfcomm_rx_process_end 
+:      030093 rfcomm_rx_process_reconn:
+0x6b4c 030094 fetch 2 ,mem_l2cap_payload_ptr 
+0x6b4d 030095 copy pdata ,contr 
+0x6b4e 030096 call get_rfcomm_head_struct 
+0x6b4f 030097 fetch 1 ,mem_current_channel 
+0x6b50 030098 beq 0 ,parse_dlci0_reconn 
+0x6b51 030099 branch parse_uih_reconn 
+:      030101 parse_dlci0_reconn:
+0x6b52 030102 bpatchx patch35_1 ,mem_patch35 
+0x6b53 030103 fetch 1 ,mem_current_frame_type 
+0x6b54 030104 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+0x6b55 030105 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+0x6b56 030106 beq rfcomm_frame_type_uih ,parse_dlci0_reconn_uih 
+0x6b57 030107 branch rfcomm_rx_process_end 
+:      030108 parse_dlci0_reconn_uih:
+0x6b58 030109 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b59 030110 copy pdata ,contr 
+0x6b5a 030111 call get_rfcomm_uih_head_struct 
+0x6b5b 030112 fetch 1 ,mem_uih_cmd_type 
+0x6b5c 030113 beq uih_param_neg_cmd ,parse_dlci0_reconn_uih_pn_cmd 
+0x6b5d 030114 beq uih_param_neg_res ,parse_dlci0_reconn_uih_pn_cmd 
+0x6b5e 030115 beq uih_modem_status_cmd ,parse_dlci0_reconn_uih_ms_cmd 
+0x6b5f 030116 beq uih_modem_status_res ,parse_dlci0_reconn_uih_ms_res 
+0x6b60 030117 branch rfcomm_rx_process_end 
+:      030119 parse_dlci0_reconn_uih_pn_cmd:
+0x6b61 030120 call parse_dlci0_rp_uih_pn_res_common 
+0x6b62 030121 fetch 1 ,mem_pn_dlci 
+0x6b63 030122 rshift pdata ,pdata 
+0x6b64 030123 fetcht 1 ,mem_remote_spp_channel 
+0x6b65 030124 isub temp ,null 
+0x6b66 030125 branch parse_dlci0_reconn_uih_pn_cmd_spp ,zero 
+0x6b67 030126 branch assert 
+:      030127 parse_dlci0_reconn_uih_pn_cmd_spp:
+0x6b68 030128 fetch 1 ,mem_spp_state 
+0x6b69 030129 set1 rfcomm_channel_state_pn_res ,pdata 
+0x6b6a 030130 store 1 ,mem_spp_state 
+0x6b6b 030131 branch rfcomm_rx_process_end 
+:      030133 parse_dlci0_reconn_uih_ms_cmd:
+0x6b6c 030134 call get_rfcomm_param_modem_status 
+0x6b6d 030135 fetch 1 ,mem_ms_channel 
+0x6b6e 030136 fetcht 1 ,mem_remote_spp_channel 
+0x6b6f 030137 isub temp ,null 
+0x6b70 030138 branch parse_dlci0_reconn_uih_ms_cmd_spp ,zero 
+0x6b71 030139 branch assert 
+0x6b72 030140 branch rfcomm_rx_process_end 
+:      030141 parse_dlci0_reconn_uih_ms_cmd_spp:
+0x6b73 030142 fetch 1 ,mem_spp_state 
+0x6b74 030143 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+0x6b75 030144 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+0x6b76 030145 store 1 ,mem_spp_state 
+0x6b77 030146 fetcht 1 ,mem_pn_dlci 
+0x6b78 030147 lshift2 temp ,temp 
+0x6b79 030148 or_into 3 ,temp 
+0x6b7a 030149 call rfcomm_send_modem_status_res 
+0x6b7b 030150 branch rfcomm_rx_process_end 
+:      030152 parse_dlci0_reconn_uih_ms_res:
+0x6b7c 030153 call get_rfcomm_param_modem_status 
+0x6b7d 030154 fetch 1 ,mem_ms_channel 
+0x6b7e 030155 fetcht 1 ,mem_remote_spp_channel 
+0x6b7f 030156 isub temp ,null 
+0x6b80 030157 branch parse_dlci0_reconn_uih_ms_res_spp ,zero 
+0x6b81 030158 branch assert 
+:      030159 parse_dlci0_reconn_uih_ms_res_spp:
+0x6b82 030160 fetch 1 ,mem_spp_state 
+0x6b83 030161 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+0x6b84 030162 store 1 ,mem_spp_state 
+0x6b85 030163 branch rfcomm_rx_process_end 
+:      030165 parse_uih_reconn:
+0x6b86 030166 fetch 1 ,mem_current_channel 
+0x6b87 030167 fetcht 1 ,mem_remote_spp_channel 
+0x6b88 030168 isub temp ,null 
+0x6b89 030169 branch parse_uih_reconn_spp ,zero 
+0x6b8a 030170 branch assert 
+0x6b8b 030171 branch rfcomm_rx_process_end 
+:      030173 parse_uih_reconn_spp:
+0x6b8c 030174 fetch 1 ,mem_current_frame_type 
+0x6b8d 030175 beq rfcomm_frame_type_ua ,parse_uih_reconn_spp_ua 
+0x6b8e 030176 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+0x6b8f 030177 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+0x6b90 030178 beq rfcomm_frame_type_disconn ,parse_uih_reconn_spp_disconn 
+:      030179 parse_uih_reconn_spp_ua:
+0x6b91 030180 fetch 1 ,mem_spp_state 
+0x6b92 030181 set1 rfcomm_channel_state_ua ,pdata 
+0x6b93 030182 store 1 ,mem_spp_state 
+0x6b94 030183 branch rfcomm_rx_process_end 
+:      030184 parse_uih_reconn_spp_sabm:
+0x6b95 030185 branch parse_uih_reconn_spp_sabm 
+:      030186 parse_uih_reconn_spp_disconn:
+0x6b96 030187 branch parse_uih_rp_spp_disconn 
+:      030188 rfcomm_rx_process_end:
+0x6b97 030189 rtn 
+:      030191 rfcomm_send_more_pkt:
+0x6b98 030192 fetch 1 ,mem_rfcomm_send_more_pkt 
+0x6b99 030193 rtn blank 
+0x6b9a 030194 beq more_pkt_msc_cmd_spp ,rfcomm_send_more_pkt_msc_cmd_spp 
+0x6b9b 030195 branch assert 
+:      030197 rfcomm_send_more_pkt_msc_cmd_spp:
+0x6b9c 030198 jam 0 ,mem_rfcomm_send_more_pkt 
+0x6b9d 030199 call l2cap_malloc_rfcomm_channel 
+0x6b9e 030200 arg spp_slave_channel ,temp 
+0x6b9f 030201 fetcht 1 ,mem_pn_dlci 
+0x6ba0 030202 lshift2 temp ,temp 
+:      030203 rfcomm_send_more_pkt_msc_cmd_spp0:
+0x6ba1 030204 or_into 0x03 ,temp 
+0x6ba2 030205 arg 0xaa ,rega 
+0x6ba3 030206 call rfcomm_send_modem_status_cmd 
+0x6ba4 030207 call l2cap_get_rfcomm_tx_buff 
+0x6ba5 030208 copy contw ,contr 
+0x6ba6 030209 ifetch 2 ,contr 
+0x6ba7 030210 branch assert ,blank 
+0x6ba8 030211 rtn 
+:      030213 rfcomm_send_sabm:
+0x6ba9 030214 call l2cap_get_rfcomm_tx_buff 
+0x6baa 030215 setarg 0x0004 
+0x6bab 030216 istore 2 ,contw 
+0x6bac 030217 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bad 030218 istore 2 ,contw 
+0x6bae 030219 fetch 1 ,mem_current_adss 
+0x6baf 030220 istore 1 ,contw 
+0x6bb0 030221 bpatchx patch35_2 ,mem_patch35 
+0x6bb1 030222 setarg 0x013f 
+0x6bb2 030223 istore 2 ,contw 
+0x6bb3 030224 fetch 1 ,mem_current_fcs 
+0x6bb4 030225 istore 1 ,contw 
+0x6bb5 030226 rtn 
+:      030227 rfcomm_send_ua:
+0x6bb6 030228 call l2cap_malloc_rfcomm_channel 
+0x6bb7 030229 call l2cap_get_rfcomm_tx_buff 
+0x6bb8 030230 setarg 0x0004 
+0x6bb9 030231 istore 2 ,contw 
+0x6bba 030232 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bbb 030233 istore 2 ,contw 
+0x6bbc 030234 fetch 1 ,mem_current_adss 
+0x6bbd 030235 istore 1 ,contw 
+0x6bbe 030236 bpatchx patch35_3 ,mem_patch35 
+0x6bbf 030237 setarg 0x0173 
+0x6bc0 030238 istore 2 ,contw 
+0x6bc1 030239 fetch 1 ,mem_current_fcs 
+0x6bc2 030240 istore 1 ,contw 
+0x6bc3 030241 rtn 
+:      030242 rfcomm_send_param_neg_cmd:
+0x6bc4 030243 call l2cap_get_rfcomm_tx_buff 
+0x6bc5 030244 setarg 0x000e 
+0x6bc6 030245 istore 2 ,contw 
+0x6bc7 030246 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bc8 030247 istore 2 ,contw 
+0x6bc9 030248 fetch 1 ,mem_rfcomm_initiator 
+0x6bca 030249 lshift pdata ,pdata 
+0x6bcb 030250 set1 0 ,pdata 
+0x6bcc 030251 istore 1 ,contw 
+0x6bcd 030252 bpatchx patch35_4 ,mem_patch35 
+0x6bce 030253 setarg 0x15ef 
+0x6bcf 030254 istore 2 ,contw 
+0x6bd0 030255 setarg 0x1183 
+0x6bd1 030256 istore 2 ,contw 
+0x6bd2 030257 copy temp ,pdata 
+0x6bd3 030258 istore 1 ,contw 
+0x6bd4 030259 setarg 0x0000f0 
+0x6bd5 030260 istore 3 ,contw 
+0x6bd6 030261 setarg rfcomm_max_frame_size 
+0x6bd7 030262 istore 2 ,contw 
+0x6bd8 030263 setarg 0 
+0x6bd9 030264 istore 1 ,contw 
+0x6bda 030265 setarg 0x01 
+0x6bdb 030266 istore 1 ,contw 
+0x6bdc 030267 call rfcomm_calculate_fcs_dlci0 
+0x6bdd 030268 istore 1 ,contw 
+0x6bde 030269 jam 0x10 ,mem_credit_given 
+0x6bdf 030270 rtn 
+:      030271 rfcomm_send_param_neg_res:
+0x6be0 030272 call l2cap_malloc_rfcomm_channel 
+0x6be1 030273 call l2cap_get_rfcomm_tx_buff 
+0x6be2 030274 setarg 0x000e 
+0x6be3 030275 istore 2 ,contw 
+0x6be4 030276 fetch 2 ,mem_rfcomm_remote_cid 
+0x6be5 030277 istore 2 ,contw 
+0x6be6 030278 fetch 1 ,mem_rfcomm_initiator 
+0x6be7 030279 lshift pdata ,pdata 
+0x6be8 030280 set1 0 ,pdata 
+0x6be9 030281 istore 1 ,contw 
+0x6bea 030282 bpatchx patch35_5 ,mem_patch35 
+0x6beb 030283 setarg 0x15ef 
+0x6bec 030284 istore 2 ,contw 
+0x6bed 030285 setarg 0x1181 
+0x6bee 030286 istore 2 ,contw 
+0x6bef 030287 fetch 1 ,mem_pn_dlci 
+0x6bf0 030288 istore 1 ,contw 
+0x6bf1 030289 setarg 0x0000e0 
+0x6bf2 030290 istore 3 ,contw 
+0x6bf3 030291 fetch 2 ,mem_rfcomm_max_frame_size 
+0x6bf4 030292 istore 2 ,contw 
+0x6bf5 030293 setarg 0x00 
+0x6bf6 030294 istore 1 ,contw 
+0x6bf7 030295 fetch 1 ,mem_rfcomm_credit_init_data 
+0x6bf8 030296 istore 1 ,contw 
+0x6bf9 030297 call rfcomm_calculate_fcs_dlci0 
+0x6bfa 030298 istore 1 ,contw 
+0x6bfb 030299 rtn 
+:      030300 rfcomm_send_modem_status_cmd:
+0x6bfc 030301 call l2cap_get_rfcomm_tx_buff 
+0x6bfd 030302 setarg 0x0008 
+0x6bfe 030303 istore 2 ,contw 
+0x6bff 030304 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c00 030305 istore 2 ,contw 
+0x6c01 030306 fetch 1 ,mem_rfcomm_initiator 
+0x6c02 030307 lshift pdata ,pdata 
+0x6c03 030308 set1 0 ,pdata 
+0x6c04 030309 istore 1 ,contw 
+0x6c05 030310 bpatchx patch35_6 ,mem_patch35 
+0x6c06 030311 setarg 0x09ef 
+0x6c07 030312 istore 2 ,contw 
+0x6c08 030313 setarg 0x05e3 
+0x6c09 030314 istore 2 ,contw 
+0x6c0a 030315 copy temp ,pdata 
+0x6c0b 030316 istore 1 ,contw 
+0x6c0c 030317 setarg 0x8d 
+0x6c0d 030318 istore 1 ,contw 
+0x6c0e 030319 call rfcomm_calculate_fcs_dlci0 
+0x6c0f 030320 istore 1 ,contw 
+0x6c10 030321 rtn 
+:      030323 rfcomm_send_modem_status_res:
+0x6c11 030324 call l2cap_malloc_rfcomm_channel 
+0x6c12 030325 call l2cap_get_rfcomm_tx_buff 
+0x6c13 030326 setarg 0x0008 
+0x6c14 030327 istore 2 ,contw 
+0x6c15 030328 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c16 030329 istore 2 ,contw 
+0x6c17 030330 copy temp ,timeup 
+0x6c18 030331 fetch 1 ,mem_rfcomm_initiator 
+0x6c19 030332 lshift pdata ,pdata 
+0x6c1a 030333 set1 0 ,pdata 
+0x6c1b 030334 istore 1 ,contw 
+0x6c1c 030335 bpatchx patch35_7 ,mem_patch35 
+0x6c1d 030336 setarg 0x09ef 
+0x6c1e 030337 istore 2 ,contw 
+0x6c1f 030338 setarg 0x05e1 
+0x6c20 030339 istore 2 ,contw 
+0x6c21 030340 copy timeup ,pdata 
+0x6c22 030341 istore 1 ,contw 
+0x6c23 030342 setarg 0x8d 
+0x6c24 030343 istore 1 ,contw 
+0x6c25 030344 call rfcomm_calculate_fcs_dlci0 
+0x6c26 030345 istore 1 ,contw 
+0x6c27 030346 rtn 
+:      030348 rfcomm_send_uih_without_payload:
+0x6c28 030349 bpatchx patch36_0 ,mem_patch36 
+0x6c29 030350 fetch 1 ,mem_credit_given 
+0x6c2a 030351 rtn blank 
+0x6c2b 030352 hfetch 2 ,core_uart_rxitems 
+0x6c2c 030353 nrtn blank 
+0x6c2d 030354 copy rega ,pdata 
+0x6c2e 030355 store 1 ,mem_pdatatemp + 1 
+0x6c2f 030356 storet 1 ,mem_pdatatemp 
+0x6c30 030357 call l2cap_malloc_is_fifo_full 
+0x6c31 030358 nrtn blank 
+0x6c32 030359 call l2cap_malloc_rfcomm_channel 
+0x6c33 030360 call l2cap_get_rfcomm_tx_buff 
+0x6c34 030361 setarg 0x05 
+0x6c35 030362 istore 2 ,contw 
+0x6c36 030363 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c37 030364 istore 2 ,contw 
+0x6c38 030365 fetch 1 ,mem_rfcomm_send_adss 
+0x6c39 030366 istore 1 ,contw 
+0x6c3a 030367 setarg 0x01ff 
+0x6c3b 030368 istore 2 ,contw 
+0x6c3c 030369 fetch 1 ,mem_credit_given 
+0x6c3d 030370 istore 1 ,contw 
+0x6c3e 030371 fetch 1 ,mem_hiufcs_spp_wcredits 
+0x6c3f 030372 istore 1 ,contw 
+0x6c40 030373 jam 0 ,mem_credit_given 
+0x6c41 030374 rtn 
+:      030376 rfcomm_increase_credit_given:
+0x6c42 030377 bpatchx patch36_1 ,mem_patch36 
+0x6c43 030378 fetch 1 ,mem_credit_flag 
+0x6c44 030379 rtneq credit_enable 
+0x6c45 030380 fetch 2 ,mem_current_length 
+0x6c46 030381 rtn blank 
+0x6c47 030382 fetch 1 ,mem_credit_given 
+0x6c48 030383 increase 1 ,pdata 
+0x6c49 030384 store 1 ,mem_credit_given 
+0x6c4a 030385 rtn 
+:      030387 spp_process_rx_data:
+0x6c4b 030388 fetch 2 ,mem_cb_receive_spp_data 
+0x6c4c 030389 branch callback_func 
+:      030391 spp_tx_rfcomm_packet:
+0x6c4d 030392 bpatchx patch36_2 ,mem_patch36 
+0x6c4e 030394 fetch 1 ,mem_remote_credits 
+0x6c4f 030395 rtn blank 
+0x6c50 030396 increase -1 ,pdata 
+0x6c51 030397 store 1 ,mem_remote_credits 
+0x6c52 030398 fetch 2 ,mem_pn_max_frame_size 
+0x6c53 030399 fetcht 2 ,mem_current_packet_length 
+0x6c54 030400 isub temp ,null 
+0x6c55 030401 branch ssp_tx_rfcomm_from_uart ,positive 
+0x6c56 030402 store 2 ,mem_current_packet_length 
+:      030403 ssp_tx_rfcomm_from_uart:
+0x6c57 030404 fetch 1 ,mem_credit_given 
+0x6c58 030405 branch ssp_tx_rfcomm_from_uart_without_credit ,blank 
+0x6c59 030406 jam 1 ,mem_rfcomm_send_offset 
+0x6c5a 030407 fetch 1 ,mem_hiufcs_spp_wcredits 
+0x6c5b 030408 store 1 ,mem_rfcomm_send_fcs 
+0x6c5c 030409 setarg rsp_rx_uih_wdata 
+0x6c5d 030410 store 1 ,mem_rfcomm_send_frame_type 
+0x6c5e 030411 branch ssp_tx_rfcomm_from_uart_common 
+:      030412 ssp_tx_rfcomm_from_uart_without_credit:
+0x6c5f 030413 jam 0 ,mem_rfcomm_send_offset 
+0x6c60 030414 fetch 1 ,mem_hiufcs_spp 
+0x6c61 030415 store 1 ,mem_rfcomm_send_fcs 
+0x6c62 030416 setarg rsp_tx_uih 
+0x6c63 030417 store 1 ,mem_rfcomm_send_frame_type 
+:      030418 ssp_tx_rfcomm_from_uart_common:
+0x6c64 030419 bpatchx patch36_3 ,mem_patch36 
+0x6c65 030420 fetch 2 ,mem_current_packet_length 
+0x6c66 030421 sub pdata ,127 ,null 
+0x6c67 030422 branch ssp_tx_rfcomm_from_uart_common0 ,positive 
+0x6c68 030423 fetch 1 ,mem_rfcomm_send_offset 
+0x6c69 030424 increase 1 ,pdata 
+0x6c6a 030425 store 1 ,mem_rfcomm_send_offset 
+:      030426 ssp_tx_rfcomm_from_uart_common0:
+0x6c6b 030427 call get_rfcomm_snd_adss 
+0x6c6c 030428 fetch 2 ,mem_current_packet_length 
+0x6c6d 030429 increase 8 ,pdata 
+0x6c6e 030430 fetcht 1 ,mem_rfcomm_send_offset 
+0x6c6f 030431 iadd temp ,rega 
+0x6c70 030433 call l2cap_malloc 
+0x6c71 030434 store 2 ,mem_rfcomm_tx_buff_ptr 
+0x6c72 030435 increase 4 ,pdata 
+0x6c73 030436 store 2 ,mem_rfcomm_tx_payload_ptr 
+0x6c74 030437 copy pdata ,contw 
+0x6c75 030438 fetch 1 ,mem_rfcomm_send_adss 
+0x6c76 030439 istore 1 ,contw 
+0x6c77 030440 fetch 1 ,mem_rfcomm_send_frame_type 
+0x6c78 030441 istore 1 ,contw 
+0x6c79 030442 call ssp_tx_write_length 
+0x6c7a 030443 call ssp_tx_write_given_credit 
+0x6c7b 030444 bpatchx patch36_4 ,mem_patch36 
+0x6c7c 030445 fetch 2 ,mem_nl_rx_data_src 
+0x6c7d 030446 copy pdata ,contru 
+0x6c7e 030447 fetch 2 ,mem_current_packet_length 
+0x6c7f 030448 copy pdata ,loopcnt 
+0x6c80 030449 call uart_copy_rx_bytes_fast 
+0x6c81 030450 copy contw ,temp 
+0x6c82 030451 copy contru ,pdata 
+0x6c83 030452 store 2 ,mem_nl_rx_data_src 
+0x6c84 030453 copy temp ,contw 
+0x6c85 030454 fetch 1 ,mem_rfcomm_send_fcs 
+0x6c86 030455 istore 1 ,contw 
+0x6c87 030456 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+0x6c88 030457 copy pdata ,contw 
+0x6c89 030458 fetch 2 ,mem_current_packet_length 
+0x6c8a 030459 fetcht 1 ,mem_rfcomm_send_offset 
+0x6c8b 030460 iadd temp ,pdata 
+0x6c8c 030461 increase 4 ,pdata 
+0x6c8d 030462 istore 2 ,contw 
+0x6c8e 030463 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c8f 030464 istore 2 ,contw 
+0x6c90 030465 jam 0 ,mem_credit_given 
+0x6c91 030466 fetch 2 ,mem_nl_rx_len_all 
+0x6c92 030467 beq 0 ,module_hci_command_tx_spp_tx_complete 
+0x6c93 030468 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x6c94 030469 rtn 
+:      030471 ssp_tx_write_length:
+0x6c95 030472 bpatchx patch36_5 ,mem_patch36 
+0x6c96 030473 fetch 2 ,mem_current_packet_length 
+0x6c97 030474 sub pdata ,0x7f ,null 
+0x6c98 030475 nbranch ssp_tx_write_long_packet ,positive 
+0x6c99 030476 lshift pdata ,pdata 
+0x6c9a 030477 set1 0 ,pdata 
+0x6c9b 030478 istore 1 ,contw 
+0x6c9c 030479 rtn 
+:      030480 ssp_tx_write_long_packet:
+0x6c9d 030481 fetch 2 ,mem_current_packet_length 
+0x6c9e 030482 rshift3 pdata ,pdata 
+0x6c9f 030483 rshift4 pdata ,temp 
+0x6ca0 030484 and_into 0x7f ,pdata 
+0x6ca1 030485 lshift pdata ,pdata 
+0x6ca2 030486 set0 0 ,pdata 
+0x6ca3 030487 istore 1 ,contw 
+0x6ca4 030488 istoret 1 ,contw 
+0x6ca5 030489 rtn 
+:      030490 ssp_tx_write_given_credit:
+0x6ca6 030491 fetch 1 ,mem_credit_given 
+0x6ca7 030492 rtn blank 
+0x6ca8 030493 istore 1 ,contw 
+0x6ca9 030494 rtn 
+:      030499 scheduler_process:
+0x6caa 030500 bpatchx patch36_6 ,mem_patch36 
+0x6cab 030501 call check_51cmd 
+0x6cac 030502 call app_process_bb_event 
+0x6cad 030503 call process_conn_sm 
+0x6cae 030505 bpatchx patch36_7 ,mem_patch36 
+0x6caf 030506 call sp_calc_sequence 
+0x6cb0 030507 call simple_pairing_sequence 
+0x6cb1 030508 call master_simple_paring_sequence 
+0x6cb2 030511 call l2cap_malloc_is_fifo_full 
+0x6cb3 030512 nrtn blank 
+0x6cb4 030514 call l2cap_call_proc_sigal_pending 
+0x6cb5 030515 call l2cap_malloc_is_fifo_full 
+0x6cb6 030516 nrtn blank 
+0x6cb7 030517 bpatchx patch37_0 ,mem_patch37 
+0x6cb8 030519 call process_upper_sm 
+0x6cb9 030520 call l2cap_send_config_req 
+0x6cba 030521 call rfcomm_send_more_pkt 
+:      030522 scheduler_process0:
+0x6cbb 030523 call scheduler_tx_disconnect_hid 
+0x6cbc 030524 bpatchx patch37_1 ,mem_patch37 
+0x6cbd 030527 branch app_process_bt 
+:      030529 scheduler_tx_disconnect_hid:
+0x6cbe 030530 fetch 1 ,mem_control_tasks 
+0x6cbf 030531 bbit1 l2cap_disconnect_interrupt ,l2cap_disconnect_interrupt_req 
+0x6cc0 030532 bbit1 l2cap_disconnect_control ,l2cap_disconnect_control_req 
+0x6cc1 030533 rtn 
+:      030535 scheduler_tx_l2cap_pkt:
+0x6cc2 030536 bpatchx patch37_2 ,mem_patch37 
+0x6cc3 030537 call l2cap_malloc_is_fifo_empty 
+0x6cc4 030538 rtn blank 
+0x6cc5 030539 fetch 1 ,mem_op 
+0x6cc6 030540 rtnbit1 op_txl2cap 
+0x6cc7 030541 call l2cap_malloc_fifo_out 
+0x6cc8 030542 store 2 ,mem_txptr 
+0x6cc9 030543 copy pdata ,contr 
+0x6cca 030544 ifetch 2 ,contr 
+0x6ccb 030545 increase 4 ,pdata 
+0x6ccc 030546 store 2 ,mem_tx_len 
+0x6ccd 030547 jam 6 ,mem_tx_lch 
+0x6cce 030548 bpatchx patch37_3 ,mem_patch37 
+0x6ccf 030549 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x6cd0 030550 branch scheduler_tx_l2cap_start_pkt ,blank 
+0x6cd1 030551 fetch 1 ,mem_op 
+0x6cd2 030552 rtnbit0 op_pkt_comp 
+0x6cd3 030553 set0 op_pkt_comp ,pdata 
+0x6cd4 030554 store 1 ,mem_op 
+0x6cd5 030555 jam 5 ,mem_tx_lch 
+0x6cd6 030556 fetcht 2 ,mem_l2cap_tx_multi_offset 
+0x6cd7 030557 fetch 2 ,mem_txptr 
+0x6cd8 030558 iadd temp ,pdata 
+0x6cd9 030559 store 2 ,mem_txptr 
+0x6cda 030560 fetch 2 ,mem_tx_len 
+0x6cdb 030561 isub temp ,pdata 
+0x6cdc 030562 store 2 ,mem_tx_len 
+:      030563 scheduler_tx_l2cap_start_pkt:
+0x6cdd 030564 bpatchx patch37_4 ,mem_patch37 
+0x6cde 030565 fetch 2 ,mem_tx_len 
+0x6cdf 030566 branch assert ,blank 
+0x6ce0 030567 arg l2cap_max_pkt_len ,temp 
+0x6ce1 030568 isub temp ,pdata 
+0x6ce2 030569 nbranch scheduler_tx_l2cap_last_pkt ,positive 
+0x6ce3 030570 bpatchx patch37_5 ,mem_patch37 
+0x6ce4 030571 storet 2 ,mem_tx_len 
+0x6ce5 030572 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x6ce6 030573 iadd temp ,pdata 
+0x6ce7 030574 store 2 ,mem_l2cap_tx_multi_offset 
+0x6ce8 030575 branch scheduler_tx_l2cap_pkt_end 
+:      030576 scheduler_tx_l2cap_last_pkt:
+0x6ce9 030577 setarg 0 
+0x6cea 030578 store 2 ,mem_l2cap_tx_multi_offset 
+:      030579 scheduler_tx_l2cap_pkt_end:
+0x6ceb 030580 fetch 1 ,mem_op 
+0x6cec 030581 set1 op_txl2cap ,pdata 
+0x6ced 030582 store 1 ,mem_op 
+0x6cee 030583 rtn 
+:      030585 scheduler_start_upper_sm:
+0x6cef 030586 fetch 1 ,mem_ui_profile_supported 
+0x6cf0 030587 bbit1 support_hid ,scheduler_start_upper_sm_hid 
+0x6cf1 030588 jam uppersm_reconn_sdp_conn ,mem_upper_sm_reconn 
+0x6cf2 030589 rtn 
+:      030590 scheduler_start_upper_sm_hid:
+0x6cf3 030591 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+0x6cf4 030592 rtn 
+:      030594 process_upper_sm:
+0x6cf5 030595 fetch 1 ,memui_reconnect_mode 
+0x6cf6 030596 nbranch process_upper_sm_reconn ,blank 
+:      030597 process_upper_sm_remote_page:
+0x6cf7 030598 fetch 1 ,mem_upper_sm_remote_page 
+0x6cf8 030600 rtn blank 
+0x6cf9 030602 jam 0 ,mem_upper_sm_remote_page 
+:      030603 process_upper_sm_rp_wait:
+0x6cfa 030604 rtn 
+:      030607 process_upper_sm_reconn:
+0x6cfb 030608 bpatchx patch37_6 ,mem_patch37 
+0x6cfc 030609 fetch 1 ,mem_upper_sm_reconn 
+0x6cfd 030610 rtn blank 
+0x6cfe 030611 beq uppersm_reconn_sdp_conn ,process_upper_sm_reconn_sdp_conn 
+0x6cff 030612 beq uppersm_reconn_sdp_conn_wait ,process_upper_sm_reconn_sdp_conn_wait 
+0x6d00 030613 beq uppersm_reconn_sdp_cfg ,process_upper_sm_reconn_sdp_cfg 
+0x6d01 030614 beq uppersm_reconn_sdp_cfg_wait ,process_upper_sm_reconn_sdp_cfg_wait 
+0x6d02 030615 beq uppersm_reconn_ss_spp ,process_upper_sm_reconn_ss_spp 
+0x6d03 030616 beq uppersm_reconn_ss_spp_wait ,process_upper_sm_reconn_ss_spp_wait 
+0x6d04 030617 beq uppersm_reconn_sdp_disconn ,process_upper_sm_reconn_sdp_disconn 
+0x6d05 030618 beq uppersm_reconn_sdp_disconn_wait ,process_upper_sm_reconn_sdp_disconn_wait 
+0x6d06 030619 beq uppersm_reconn_hid_ctrl_conn ,process_upper_sm_reconn_hid_ctrl_conn 
+0x6d07 030620 beq uppersm_reconn_hid_ctrl_conn_wait ,process_upper_sm_reconn_hid_ctrl_conn_wait 
+0x6d08 030621 beq uppersm_reconn_hid_ctrl_cfg ,process_upper_sm_reconn_hid_ctrl_cfg 
+0x6d09 030622 beq uppersm_reconn_hid_ctrl_cfg_wait ,process_upper_sm_reconn_hid_ctrl_cfg_wait 
+0x6d0a 030623 beq uppersm_reconn_hid_int_conn ,process_upper_sm_reconn_hid_int_conn 
+0x6d0b 030624 beq uppersm_reconn_hid_int_conn_wait ,process_upper_sm_reconn_hid_int_conn_wait 
+0x6d0c 030625 beq uppersm_reconn_hid_int_cfg ,process_upper_sm_reconn_hid_int_cfg 
+0x6d0d 030626 beq uppersm_reconn_hid_int_cfg_wait ,process_upper_sm_reconn_hid_int_cfg_wait 
+0x6d0e 030627 beq uppersm_reconn_rfcomm_conn ,process_upper_sm_reconn_rfcomm_conn 
+0x6d0f 030628 beq uppersm_reconn_rfcomm_conn_wait ,process_upper_sm_reconn_rfcomm_conn_wait 
+0x6d10 030629 beq uppersm_reconn_rfcomm_cfg ,process_upper_sm_reconn_rfcomm_cfg 
+0x6d11 030630 beq uppersm_reconn_rfcomm_cfg_wait ,process_upper_sm_reconn_rfcomm_cfg_wait 
+0x6d12 030631 beq uppersm_reconn_rfcomm_sabm ,process_upper_sm_reconn_rfcomm_sabm 
+0x6d13 030632 beq uppersm_reconn_rfcomm_sabm_wait ,process_upper_sm_reconn_rfcomm_sabm_wait 
+0x6d14 030633 beq uppersm_reconn_spp_cmd_pn ,process_upper_sm_reconn_spp_cmd_pn 
+0x6d15 030634 beq uppersm_reconn_spp_cmd_pn_wait ,process_upper_sm_reconn_spp_cmd_pn_wait 
+0x6d16 030635 beq uppersm_reconn_spp_sabm ,process_upper_sm_reconn_spp_sabm 
+0x6d17 030636 beq uppersm_reconn_spp_sabm_wait ,process_upper_sm_reconn_spp_sabm_wait 
+0x6d18 030637 beq uppersm_reconn_spp_cmd_ms ,process_upper_sm_reconn_spp_cmd_ms 
+0x6d19 030638 beq uppersm_reconn_spp_cmd_ms_wait ,process_upper_sm_reconn_spp_cmd_ms_wait 
+:      030639 process_upper_sm_reconn_wait:
+0x6d1a 030640 rtn 
+:      030641 process_upper_sm_reconn_sdp_conn:
+0x6d1b 030642 call upper_sm_send_sdp_conn 
+0x6d1c 030643 jam uppersm_reconn_sdp_conn_wait ,mem_upper_sm_reconn 
+0x6d1d 030644 fetch 1 ,mem_sdp_state 
+0x6d1e 030645 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d1f 030646 store 1 ,mem_sdp_state 
+0x6d20 030647 rtn 
+:      030648 process_upper_sm_reconn_sdp_cfg:
+0x6d21 030649 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+0x6d22 030650 fetch 1 ,mem_sdp_state 
+0x6d23 030651 rtnbit1 l2cap_channel_state_snd_cfg_req 
+0x6d24 030652 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+0x6d25 030653 call upper_sm_send_sdp_cfg 
+0x6d26 030654 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+0x6d27 030655 fetch 1 ,mem_sdp_state 
+0x6d28 030656 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d29 030657 store 1 ,mem_sdp_state 
+0x6d2a 030658 rtn 
+:      030659 process_upper_sm_reconn_ss_spp:
+0x6d2b 030660 call l2cap_malloc_is_fifo_empty 
+0x6d2c 030661 nrtn blank 
+0x6d2d 030662 call upper_sm_send_ss_spp 
+0x6d2e 030663 jam uppersm_reconn_ss_spp_wait ,mem_upper_sm_reconn 
+0x6d2f 030664 rtn 
+:      030665 process_upper_sm_reconn_sdp_disconn:
+0x6d30 030666 call upper_sm_send_sdp_disconn 
+0x6d31 030667 jam uppersm_reconn_sdp_disconn_wait ,mem_upper_sm_reconn 
+0x6d32 030668 rtn 
+:      030669 process_upper_sm_reconn_hid_ctrl_conn:
+0x6d33 030670 call upper_sm_send_hid_ctrl_conn 
+0x6d34 030671 jam uppersm_reconn_hid_ctrl_conn_wait ,mem_upper_sm_reconn 
+0x6d35 030672 fetch 1 ,mem_hid_control_state 
+0x6d36 030673 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d37 030674 store 1 ,mem_hid_control_state 
+0x6d38 030675 rtn 
+:      030676 process_upper_sm_reconn_hid_ctrl_cfg:
+0x6d39 030677 call upper_sm_send_hid_ctrl_cfg 
+0x6d3a 030678 jam uppersm_reconn_hid_ctrl_cfg_wait ,mem_upper_sm_reconn 
+0x6d3b 030679 fetch 1 ,mem_hid_control_state 
+0x6d3c 030680 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d3d 030681 store 1 ,mem_hid_control_state 
+0x6d3e 030682 rtn 
+:      030683 process_upper_sm_reconn_hid_int_conn:
+0x6d3f 030684 call upper_sm_send_hid_int_conn 
+0x6d40 030685 jam uppersm_reconn_hid_int_conn_wait ,mem_upper_sm_reconn 
+0x6d41 030686 fetch 1 ,mem_hid_interrupt_state 
+0x6d42 030687 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d43 030688 store 1 ,mem_hid_interrupt_state 
+0x6d44 030689 rtn 
+:      030690 process_upper_sm_reconn_hid_int_cfg:
+0x6d45 030691 call upper_sm_send_hid_int_cfg 
+0x6d46 030692 jam uppersm_reconn_hid_int_cfg_wait ,mem_upper_sm_reconn 
+0x6d47 030693 fetch 1 ,mem_hid_interrupt_state 
+0x6d48 030694 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d49 030695 store 1 ,mem_hid_interrupt_state 
+0x6d4a 030696 rtn 
+:      030697 process_upper_sm_reconn_rfcomm_conn:
+0x6d4b 030698 call upper_sm_send_rfcomm_conn 
+0x6d4c 030699 jam uppersm_reconn_rfcomm_conn_wait ,mem_upper_sm_reconn 
+0x6d4d 030700 fetch 1 ,mem_rfcomm_state 
+0x6d4e 030701 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d4f 030702 store 1 ,mem_rfcomm_state 
+0x6d50 030703 rtn 
+:      030704 process_upper_sm_reconn_rfcomm_cfg:
+0x6d51 030705 call upper_sm_send_rfcomm_cfg 
+0x6d52 030706 jam uppersm_reconn_rfcomm_cfg_wait ,mem_upper_sm_reconn 
+0x6d53 030707 fetch 1 ,mem_rfcomm_state 
+0x6d54 030708 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d55 030709 store 1 ,mem_rfcomm_state 
+0x6d56 030710 rtn 
+:      030711 process_upper_sm_reconn_rfcomm_sabm:
+0x6d57 030712 call upper_sm_send_rfcomm_sabm 
+0x6d58 030713 jam uppersm_reconn_rfcomm_sabm_wait ,mem_upper_sm_reconn 
+0x6d59 030714 fetch 1 ,mem_rfcomm_state 
+0x6d5a 030715 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+0x6d5b 030716 store 1 ,mem_rfcomm_state 
+0x6d5c 030717 rtn 
+:      030718 process_upper_sm_reconn_spp_cmd_pn:
+0x6d5d 030719 call upper_sm_send_spp_cmd_pn 
+0x6d5e 030720 fetch 1 ,mem_spp_state 
+0x6d5f 030721 set1 rfcomm_channel_state_pn_cmd 
+0x6d60 030722 store 1 ,mem_spp_state 
+0x6d61 030723 jam uppersm_reconn_spp_cmd_pn_wait ,mem_upper_sm_reconn 
+0x6d62 030724 rtn 
+:      030725 process_upper_sm_reconn_spp_sabm:
+0x6d63 030726 call upper_sm_send_spp_sabm 
+0x6d64 030727 fetch 1 ,mem_spp_state 
+0x6d65 030728 set1 rfcomm_channel_state_sabm 
+0x6d66 030729 store 1 ,mem_spp_state 
+0x6d67 030730 jam uppersm_reconn_spp_sabm_wait ,mem_upper_sm_reconn 
+0x6d68 030731 fetch 1 ,mem_remote_spp_channel 
+0x6d69 030732 lshift3 pdata ,pdata 
+0x6d6a 030733 or_into 3 ,pdata 
+0x6d6b 030734 arg mem_hiufcs_spp ,temp 
+0x6d6c 030735 storet 2 ,mem_contw_temp 
+0x6d6d 030736 branch rfcomm_save_fcs_uih 
+:      030737 process_upper_sm_reconn_spp_cmd_ms:
+0x6d6e 030738 call upper_sm_send_spp_cmd_ms 
+0x6d6f 030739 fetch 1 ,mem_spp_state 
+0x6d70 030740 set1 rfcomm_channel_state_snd_ms_cmd 
+0x6d71 030741 store 1 ,mem_spp_state 
+0x6d72 030742 jam uppersm_reconn_spp_cmd_ms_wait ,mem_upper_sm_reconn 
+0x6d73 030743 rtn 
+:      030745 process_upper_sm_reconn_sdp_conn_wait:
+0x6d74 030746 fetch 1 ,mem_sdp_state 
+0x6d75 030747 rtnbit0 l2cap_channel_state_conn_res 
+0x6d76 030748 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+0x6d77 030749 branch process_upper_sm_reconn 
+:      030750 process_upper_sm_reconn_sdp_cfg_wait:
+0x6d78 030751 fetch 1 ,mem_sdp_state 
+0x6d79 030752 rtnne l2cap_channel_setup_complete 
+0x6d7a 030753 jam uppersm_reconn_ss_spp ,mem_upper_sm_reconn 
+:      030754 process_upper_sm_reconn_ss_spp_wait:
+0x6d7b 030755 fetch 1 ,mem_message_to_uppersm 
+0x6d7c 030756 rtnne recieve_ss_reasult_hf 
+0x6d7d 030757 jam 0 ,mem_message_to_uppersm 
+0x6d7e 030758 jam uppersm_reconn_sdp_disconn ,mem_upper_sm_reconn 
+0x6d7f 030759 branch process_upper_sm_reconn 
+:      030760 process_upper_sm_reconn_sdp_disconn_wait:
+0x6d80 030761 fetch 1 ,mem_sdp_state 
+0x6d81 030762 nrtn blank 
+0x6d82 030763 fetch 1 ,mem_ui_profile_supported 
+0x6d83 030764 bbit1 support_hid ,process_upper_sm_reconn_setup_hid 
+0x6d84 030765 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+0x6d85 030766 branch process_upper_sm_reconn_termination 
+:      030767 process_upper_sm_reconn_hid_ctrl_conn_wait:
+0x6d86 030768 fetch 1 ,mem_hid_control_state 
+0x6d87 030769 rtnbit0 l2cap_channel_state_conn_res 
+0x6d88 030770 jam uppersm_reconn_hid_ctrl_cfg ,mem_upper_sm_reconn 
+0x6d89 030771 branch process_upper_sm_reconn 
+:      030772 process_upper_sm_reconn_hid_ctrl_cfg_wait:
+0x6d8a 030773 fetch 1 ,mem_hid_control_state 
+0x6d8b 030774 rtnne l2cap_channel_setup_complete 
+0x6d8c 030775 jam uppersm_reconn_hid_int_conn ,mem_upper_sm_reconn 
+0x6d8d 030776 branch process_upper_sm_reconn 
+:      030777 process_upper_sm_reconn_hid_int_conn_wait:
+0x6d8e 030778 fetch 1 ,mem_hid_interrupt_state 
+0x6d8f 030779 rtnbit0 l2cap_channel_state_conn_res 
+0x6d90 030780 jam uppersm_reconn_hid_int_cfg ,mem_upper_sm_reconn 
+0x6d91 030781 branch process_upper_sm_reconn 
+:      030782 process_upper_sm_reconn_hid_int_cfg_wait:
+0x6d92 030783 fetch 1 ,mem_hid_interrupt_state 
+0x6d93 030784 rtnne l2cap_channel_setup_complete 
+0x6d94 030785 fetch 1 ,mem_ui_profile_supported 
+0x6d95 030786 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+0x6d96 030787 branch process_upper_sm_reconn_termination 
+:      030788 process_upper_sm_reconn_rfcomm_conn_wait:
+0x6d97 030789 fetch 1 ,mem_rfcomm_state 
+0x6d98 030790 rtnbit0 l2cap_channel_state_conn_res 
+0x6d99 030791 jam uppersm_reconn_rfcomm_cfg ,mem_upper_sm_reconn 
+0x6d9a 030792 branch process_upper_sm_reconn 
+:      030793 process_upper_sm_reconn_rfcomm_cfg_wait:
+0x6d9b 030794 fetch 1 ,mem_rfcomm_state 
+0x6d9c 030795 rtnne l2cap_channel_setup_complete 
+0x6d9d 030796 jam uppersm_reconn_rfcomm_sabm ,mem_upper_sm_reconn 
+0x6d9e 030797 branch process_upper_sm_reconn 
+:      030798 process_upper_sm_reconn_rfcomm_sabm_wait:
+0x6d9f 030799 fetch 1 ,mem_rfcomm_state 
+0x6da0 030800 rtnne l2cap_channel_rfcomm_dlci0_opened 
+0x6da1 030801 fetch 1 ,mem_ui_profile_supported 
+0x6da2 030802 bbit1 support_spp ,process_upper_sm_reconn_setup_spp 
+0x6da3 030803 branch process_upper_sm_reconn_termination 
+:      030804 process_upper_sm_reconn_spp_cmd_pn_wait:
+0x6da4 030805 fetch 1 ,mem_spp_state 
+0x6da5 030806 rtnbit0 rfcomm_channel_state_pn_res 
+0x6da6 030807 jam uppersm_reconn_spp_sabm ,mem_upper_sm_reconn 
+0x6da7 030808 branch process_upper_sm_reconn 
+:      030809 process_upper_sm_reconn_spp_sabm_wait:
+0x6da8 030810 fetch 1 ,mem_spp_state 
+0x6da9 030811 rtnbit0 rfcomm_channel_state_ua 
+0x6daa 030812 jam uppersm_reconn_spp_cmd_ms ,mem_upper_sm_reconn 
+0x6dab 030813 branch process_upper_sm_reconn 
+:      030814 process_upper_sm_reconn_spp_cmd_ms_wait:
+0x6dac 030815 fetch 1 ,mem_spp_state 
+0x6dad 030816 rtnne rfcomm_channel_setup_complete 
+0x6dae 030817 branch process_upper_sm_reconn_termination 
+:      030819 process_upper_sm_reconn_setup_hid:
+0x6daf 030820 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+0x6db0 030821 branch process_upper_sm_reconn 
+:      030823 process_upper_sm_reconn_setup_rfcomm:
+0x6db1 030824 jam uppersm_reconn_rfcomm_conn ,mem_upper_sm_reconn 
+0x6db2 030825 branch process_upper_sm_reconn 
+:      030826 process_upper_sm_reconn_setup_spp:
+0x6db3 030827 jam uppersm_reconn_spp_cmd_pn ,mem_upper_sm_reconn 
+0x6db4 030828 branch process_upper_sm_reconn 
+:      030832 process_upper_sm_reconn_termination:
+0x6db5 030833 jam 0 ,mem_upper_sm_reconn 
+0x6db6 030834 rtn 
+:      030835 upper_sm_send_sdp_conn:
+0x6db7 030836 bpatchx patch37_7 ,mem_patch37 
+0x6db8 030837 call l2cap_malloc_signal_channel 
+0x6db9 030838 setarg psm_sdp 
+0x6dba 030839 copy pdata ,temp 
+0x6dbb 030840 setarg l2cap_sdp_channel 
+0x6dbc 030841 copy pdata ,timeup 
+0x6dbd 030842 branch ml2cap_send_signal_connect_req 
+:      030844 upper_sm_send_sdp_cfg:
+0x6dbe 030845 bpatchx patch38_0 ,mem_patch38 
+0x6dbf 030846 call l2cap_malloc_signal_channel 
+0x6dc0 030847 fetch 2 ,mem_sdp_remote_cid 
+0x6dc1 030848 copy pdata ,temp 
+0x6dc2 030849 branch ml2cap_send_signal_config_req 
+:      030851 upper_sm_send_sdp_disconn:
+0x6dc3 030852 bpatchx patch38_1 ,mem_patch38 
+0x6dc4 030853 call l2cap_malloc_signal_channel 
+0x6dc5 030854 fetch 2 ,mem_sdp_remote_cid 
+0x6dc6 030855 copy pdata ,temp 
+0x6dc7 030856 arg l2cap_sdp_channel ,timeup 
+0x6dc8 030857 call ml2cap_send_signal_disconn_req 
+0x6dc9 030858 fetch 1 ,mem_sdp_state 
+0x6dca 030859 set0 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x6dcb 030860 store 1 ,mem_sdp_state 
+0x6dcc 030861 rtn 
+:      030863 upper_sm_send_ss_spp:
+0x6dcd 030864 bpatchx patch38_2 ,mem_patch38 
+0x6dce 030865 call l2cap_malloc_sdp_channel 
+0x6dcf 030866 call sdp_send_spp_request 
+0x6dd0 030867 branch msdp_send_req_done 
+:      030869 upper_sm_send_rfcomm_conn:
+0x6dd1 030870 bpatchx patch38_3 ,mem_patch38 
+0x6dd2 030871 call l2cap_malloc_signal_channel 
+0x6dd3 030872 setarg psm_rfcomm 
+0x6dd4 030873 copy pdata ,temp 
+0x6dd5 030874 setarg l2cap_rfcomm_channel 
+0x6dd6 030875 copy pdata ,timeup 
+0x6dd7 030876 branch ml2cap_send_signal_connect_req 
+:      030878 upper_sm_send_rfcomm_cfg:
+0x6dd8 030879 bpatchx patch38_4 ,mem_patch38 
+0x6dd9 030880 call l2cap_malloc_signal_channel 
+0x6dda 030881 fetch 2 ,mem_rfcomm_remote_cid 
+0x6ddb 030882 copy pdata ,temp 
+0x6ddc 030883 branch ml2cap_send_signal_config_req 
+:      030885 upper_sm_send_hid_ctrl_conn:
+0x6ddd 030886 bpatchx patch38_5 ,mem_patch38 
+0x6dde 030887 call l2cap_malloc_signal_channel 
+0x6ddf 030888 setarg psm_hid_control 
+0x6de0 030889 copy pdata ,temp 
+0x6de1 030890 setarg l2cap_hid_control_channel 
+0x6de2 030891 copy pdata ,timeup 
+0x6de3 030892 branch ml2cap_send_signal_connect_req 
+:      030894 upper_sm_send_hid_ctrl_cfg:
+0x6de4 030895 bpatchx patch38_6 ,mem_patch38 
+0x6de5 030896 call l2cap_malloc_signal_channel 
+0x6de6 030897 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x6de7 030898 copy pdata ,temp 
+0x6de8 030899 branch ml2cap_send_signal_config_req 
+:      030901 upper_sm_send_hid_int_conn:
+0x6de9 030902 bpatchx patch38_7 ,mem_patch38 
+0x6dea 030903 call l2cap_malloc_signal_channel 
+0x6deb 030904 setarg psm_hid_interrupt 
+0x6dec 030905 copy pdata ,temp 
+0x6ded 030906 setarg l2cap_hid_interrupt_channel 
+0x6dee 030907 copy pdata ,timeup 
+0x6def 030908 branch ml2cap_send_signal_connect_req 
+:      030910 upper_sm_send_hid_int_cfg:
+0x6df0 030911 bpatchx patch39_0 ,mem_patch39 
+0x6df1 030912 call l2cap_malloc_signal_channel 
+0x6df2 030913 fetch 2 ,mem_hid_int_remote_cid 
+0x6df3 030914 copy pdata ,temp 
+0x6df4 030915 branch ml2cap_send_signal_config_req 
+:      030917 upper_sm_send_rfcomm_sabm:
+0x6df5 030918 bpatchx patch39_1 ,mem_patch39 
+0x6df6 030919 call l2cap_malloc_rfcomm_channel 
+0x6df7 030921 jam 3 ,mem_current_adss 
+0x6df8 030922 jam 0x1c ,mem_current_fcs 
+0x6df9 030923 call rfcomm_send_sabm 
+0x6dfa 030924 jam 1 ,mem_rfcomm_initiator 
+0x6dfb 030925 rtn 
+:      030927 upper_sm_send_spp_cmd_pn:
+0x6dfc 030928 bpatchx patch39_2 ,mem_patch39 
+0x6dfd 030929 call l2cap_malloc_rfcomm_channel 
+0x6dfe 030930 fetcht 1 ,mem_remote_spp_channel 
+0x6dff 030931 call channel_to_dlci 
+0x6e00 030932 storet 1 ,mem_pn_dlci 
+0x6e01 030933 branch rfcomm_send_param_neg_cmd 
+:      030935 upper_sm_send_spp_sabm:
+0x6e02 030936 bpatchx patch39_3 ,mem_patch39 
+0x6e03 030937 call l2cap_malloc_rfcomm_channel 
+0x6e04 030938 fetcht 1 ,mem_pn_dlci 
+0x6e05 030939 call dlci_to_address_cmd 
+0x6e06 030940 call rfcomm_calculate_fcs_sabm 
+0x6e07 030941 store 1 ,mem_current_fcs 
+0x6e08 030942 fetcht 1 ,mem_pn_dlci 
+0x6e09 030943 call dlci_to_address_cmd 
+0x6e0a 030944 storet 1 ,mem_current_adss 
+0x6e0b 030945 branch rfcomm_send_sabm 
+:      030947 upper_sm_send_spp_cmd_ms:
+0x6e0c 030948 bpatchx patch39_4 ,mem_patch39 
+0x6e0d 030949 call l2cap_malloc_rfcomm_channel 
+0x6e0e 030950 fetcht 1 ,mem_pn_dlci 
+0x6e0f 030951 call dlci_to_address_cmd 
+0x6e10 030952 branch rfcomm_send_modem_status_cmd 
+:      030965 sdp_process:
+0x6e11 030966 bpatchx patch39_5 ,mem_patch39 
+0x6e12 030967 fetch 2 ,mem_l2cap_payload_ptr 
+0x6e13 030968 iforce contr 
+0x6e14 030971 ifetch 1 ,contr 
+0x6e15 030972 copy pdata ,regb 
+0x6e16 030973 store 1 ,mem_sdp_pduid 
+0x6e17 030974 ifetch 2 ,contr 
+0x6e18 030975 store 2 ,mem_sdp_transactionid 
+0x6e19 030976 ifetch 1 ,contr 
+0x6e1a 030977 lshift8 pdata ,timeup 
+0x6e1b 030978 ifetch 1 ,contr 
+0x6e1c 030979 iadd timeup ,timeup 
+0x6e1d 030980 bpatchx patch39_6 ,mem_patch39 
+0x6e1e 030981 copy contr ,temp 
+0x6e1f 030982 arg 4 ,loopcnt 
+0x6e20 030983 arg mem_sdp_handle_list ,contw 
+0x6e21 030984 call memset0 
+0x6e22 030985 copy temp ,contr 
+0x6e23 030986 deposit regb 
+0x6e24 030987 beq sdp_error_res ,sdp_process_error_res 
+0x6e25 030988 beq sdp_search_req ,sdp_process_ss_req 
+0x6e26 030989 beq sdp_search_res ,sdp_process_ss_res 
+0x6e27 030990 beq sdp_attribute_req ,sdp_process_sa_req 
+0x6e28 030991 beq sdp_attribute_res ,sdp_process_sa_res 
+0x6e29 030992 beq sdp_searchattrib_req ,sdp_process_ssa_req 
+0x6e2a 030993 beq sdp_searchattrib_res ,sdp_process_ssa_res 
+0x6e2b 030994 branch sdp_insufficient_resource 
+:      031005 sdp_process_ss_req:
+0x6e2c 031006 bpatchx patch39_7 ,mem_patch39 
+0x6e2d 031007 call ask_serviceclassid 
+0x6e2e 031008 compare 1 ,temp ,0xff 
+0x6e2f 031009 branch ss_empty_rsp ,true 
+0x6e30 031010 compare 0xff ,temp ,0xff 
+0x6e31 031011 branch sdp_invalid_request_syntax ,true 
+0x6e32 031013 ifetch 2 ,contr 
+0x6e33 031014 store 2 ,mem_sdp_record_maxcnt 
+0x6e34 031015 increase -2 ,timeup 
+0x6e35 031017 increase -1 ,timeup 
+0x6e36 031018 nbranch sdp_invalid_pdu_size ,zero 
+0x6e37 031019 arg mem_sdp_uuid_search_ptr ,timeup 
+0x6e38 031020 ifetch 2 ,timeup 
+0x6e39 031021 rtn blank 
+0x6e3a 031022 call search_all_uuid 
+0x6e3b 031023 call l2cap_get_sdp_tx_payload 
+0x6e3c 031024 force 3 ,pdata 
+0x6e3d 031025 istore 1 ,contw 
+0x6e3e 031026 fetch 2 ,mem_sdp_transactionid 
+0x6e3f 031027 istore 2 ,contw 
+0x6e40 031028 lshift2 queue ,pdata 
+0x6e41 031029 add pdata ,5 ,pdata 
+0x6e42 031030 add pdata ,5 ,regc 
+0x6e43 031031 byteswap pdata ,pdata 
+0x6e44 031032 istore 2 ,contw 
+0x6e45 031033 deposit queue 
+0x6e46 031034 byteswap pdata ,pdata 
+0x6e47 031035 istore 2 ,contw 
+0x6e48 031036 istore 2 ,contw 
+0x6e49 031037 arg mem_sdp_handle_list ,contr 
+0x6e4a 031038 copy queue ,loopcnt 
+0x6e4b 031039 branch ss_req_blank ,zero 
+:      031040 ss_req_loop:
+0x6e4c 031041 ifetch 4 ,contr 
+0x6e4d 031042 istore 4 ,contw 
+0x6e4e 031043 loop ss_req_loop 
+:      031044 ss_req_blank:
+0x6e4f 031045 force 0 ,pdata 
+0x6e50 031046 istore 1 ,contw 
+0x6e51 031047 deposit regc 
+0x6e52 031048 store 2 ,mem_sdp_tx_pkt_length 
+0x6e53 031050 rtn 
+:      031061 sdp_process_sa_req:
+0x6e54 031062 bpatchx patch3a_0 ,mem_patch3a 
+0x6e55 031063 ifetch 4 ,contr 
+0x6e56 031064 store 4 ,mem_sdp_record_handle 
+0x6e57 031065 increase -4 ,timeup 
+0x6e58 031066 call sdp_store_maxbyte 
+0x6e59 031067 store 2 ,mem_sdp_attribute_maxbyte 
+0x6e5a 031068 increase -2 ,timeup 
+0x6e5b 031069 call dataelementtype6 
+0x6e5c 031070 branch sdp_invalid_request_syntax ,zero 
+0x6e5d 031071 compare 5 ,rega ,0xff 
+0x6e5e 031073 branch sa_judge_wholerange ,true 
+:      031074 sa_isnot_wholerange:
+0x6e5f 031075 arg mem_sdp_attrib_list ,contw 
+0x6e60 031076 force 0 ,queue 
+0x6e61 031077 branch sa_req_loop 
+:      031078 sa_judge_wholerange:
+0x6e62 031079 ifetch 1 ,contr 
+0x6e63 031080 bne sdp_attribute_range ,sdp_invalid_request_syntax 
+0x6e64 031081 ifetch 2 ,contr 
+0x6e65 031082 nbranch sa_judge_wholerange_false1 ,blank 
+0x6e66 031083 ifetch 1 ,contr 
+0x6e67 031084 bne 0xff ,sa_judge_wholerange_false2 
+0x6e68 031085 ifetch 1 ,contr 
+0x6e69 031086 bne 0xff ,sa_judge_wholerange_false3 
+0x6e6a 031087 branch sa_req_all 
+:      031088 sa_judge_wholerange_false3:
+0x6e6b 031089 increase -5 ,contr 
+0x6e6c 031090 branch sa_isnot_wholerange 
+:      031091 sa_judge_wholerange_false2:
+0x6e6d 031092 increase -4 ,contr 
+0x6e6e 031093 branch sa_isnot_wholerange 
+:      031094 sa_judge_wholerange_false1:
+0x6e6f 031095 increase -3 ,contr 
+0x6e70 031096 branch sa_isnot_wholerange 
+:      031097 sa_req_loop:
+0x6e71 031098 ifetch 1 ,contr 
+0x6e72 031099 beq sdp_attribute_id ,sa_req_one_id 
+0x6e73 031100 beq sdp_attribute_range ,sa_req_range 
+:      031101 sa_req_range:
+0x6e74 031102 ifetch 2 ,contr 
+0x6e75 031103 istore 2 ,contw 
+0x6e76 031104 increase 1 ,queue 
+0x6e77 031105 byteswap pdata ,regb 
+0x6e78 031106 ifetch 2 ,contr 
+0x6e79 031107 byteswap pdata ,pdata 
+:      031108 sa_req_range_id_increase:
+0x6e7a 031109 increase 1 ,regb 
+0x6e7b 031110 isub regb ,null 
+0x6e7c 031111 nbranch sa_req_range_id_finish ,positive 
+0x6e7d 031112 copy pdata ,regc 
+0x6e7e 031113 byteswap regb ,pdata 
+0x6e7f 031114 istore 2 ,contw 
+0x6e80 031115 increase 1 ,queue 
+0x6e81 031116 copy regc ,pdata 
+0x6e82 031117 branch sa_req_range_id_increase 
+:      031118 sa_req_range_id_finish:
+0x6e83 031119 increase -5 ,timeup 
+0x6e84 031120 increase -5 ,rega 
+0x6e85 031121 branch sa_req_check_next_id 
+:      031122 sa_req_one_id:
+0x6e86 031123 ifetch 2 ,contr 
+0x6e87 031124 istore 2 ,contw 
+0x6e88 031125 increase 1 ,queue 
+0x6e89 031126 increase -3 ,timeup 
+0x6e8a 031127 increase -3 ,rega 
+:      031128 sa_req_check_next_id:
+0x6e8b 031129 nbranch sdp_invalid_request_syntax ,positive 
+0x6e8c 031130 nbranch sa_req_loop ,zero 
+0x6e8d 031131 increase -1 ,timeup 
+0x6e8e 031132 nbranch sdp_invalid_request_syntax ,zero 
+0x6e8f 031134 call l2cap_get_sdp_tx_payload 
+0x6e90 031135 increase 10 ,contw 
+0x6e91 031136 arg mem_sdp_attrib_list ,rega 
+:      031137 sa_req_handle_attributelist_next:
+0x6e92 031138 copy queue ,pdata 
+0x6e93 031139 branch sa_req_handle_attributelist_end ,blank 
+0x6e94 031140 ifetch 2 ,rega 
+0x6e95 031141 branch sa_req_handle_attributelist_end ,blank 
+0x6e96 031142 iforce regb 
+0x6e97 031143 fetch 4 ,mem_sdp_record_handle 
+0x6e98 031144 iforce temp 
+0x6e99 031145 call search_handle_attrib 
+0x6e9a 031146 copy contr ,pdata 
+0x6e9b 031147 branch sa_req_handle_attributelist_notfound ,blank 
+0x6e9c 031148 increase -3 ,contr 
+0x6e9d 031149 ifetch 3 ,contr 
+0x6e9e 031150 istore 3 ,contw 
+0x6e9f 031151 call sdp_data_len 
+0x6ea0 031152 iforce loopcnt 
+0x6ea1 031153 call memcpy 
+:      031154 sa_req_handle_attributelist_notfound:
+0x6ea2 031155 increase 2 ,rega 
+0x6ea3 031156 increase -1 ,queue 
+0x6ea4 031157 branch sa_req_handle_attributelist_next 
+:      031159 sa_req_handle_attributelist_end:
+0x6ea5 031160 arg sdp_attribute_res ,rega 
+0x6ea6 031161 call ssa_req_range_lastfreg_common 
+0x6ea7 031162 fetch 2 ,mem_sdp_tx_pkt_length 
+0x6ea8 031163 beq 11 ,sa_empty_rsp 
+0x6ea9 031164 branch ssa_req_range_attrbutes_length_no_continue 
+:      031167 sdp_store_continue_common:
+0x6eaa 031168 ifetch 1 ,contr 
+0x6eab 031169 beq 0 ,sdp_store_continue_0byte 
+0x6eac 031170 beq 1 ,sdp_store_continue_1byte 
+0x6ead 031171 beq 2 ,sdp_store_continue_2byte 
+:      031172 sdp_store_continue_0byte:
+0x6eae 031173 increase -1 ,timeup 
+0x6eaf 031174 branch sdp_store_continue_end 
+:      031175 sdp_store_continue_1byte:
+0x6eb0 031176 ifetch 1 ,contr 
+0x6eb1 031177 increase -2 ,timeup 
+0x6eb2 031178 branch sdp_store_continue_end 
+:      031179 sdp_store_continue_2byte:
+0x6eb3 031180 ifetch 2 ,contr 
+0x6eb4 031181 byteswap pdata ,pdata 
+0x6eb5 031182 increase -3 ,timeup 
+:      031183 sdp_store_continue_end:
+0x6eb6 031184 store 2 ,mem_sdp_continue_byte 
+0x6eb7 031185 rtn 
+:      031187 sa_req_all:
+0x6eb8 031188 increase -5 ,timeup 
+0x6eb9 031189 call sdp_store_continue_common 
+0x6eba 031190 nbranch sdp_invalid_pdu_size ,zero 
+0x6ebb 031191 fetcht 4 ,mem_sdp_record_handle 
+0x6ebc 031192 call search_handle 
+0x6ebd 031193 nbranch sdp_invalid_service_record_handle ,zero 
+0x6ebe 031194 copy contr ,rega 
+0x6ebf 031195 call l2cap_get_sdp_tx_payload 
+0x6ec0 031196 copy rega ,contr 
+0x6ec1 031197 increase 3 ,contw 
+0x6ec2 031198 copy contr ,timeup 
+0x6ec3 031199 call sdp_get_data 
+0x6ec4 031200 copy pdata ,rega 
+0x6ec5 031202 fetch 2 ,mem_sdp_continue_byte 
+0x6ec6 031203 copy pdata ,regb 
+0x6ec7 031204 copy rega ,pdata 
+0x6ec8 031205 isub regb ,regb 
+0x6ec9 031206 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6eca 031207 isub regb ,null 
+0x6ecb 031208 nbranch sa_req_all_fragment_sdp ,positive 
+0x6ecc 031210 disable user 
+0x6ecd 031211 fetch 2 ,mem_sdp_continue_byte 
+0x6ece 031212 branch sa_req_all_fisrt_fragment ,blank 
+0x6ecf 031213 iadd timeup ,contr 
+0x6ed0 031214 increase 3 ,regb 
+0x6ed1 031215 copy regb ,loopcnt 
+0x6ed2 031216 copy loopcnt ,pdata 
+0x6ed3 031217 increase 3 ,pdata 
+0x6ed4 031218 byteswap pdata ,pdata 
+0x6ed5 031219 istore 2 ,contw 
+0x6ed6 031220 copy loopcnt ,pdata 
+0x6ed7 031221 byteswap pdata ,pdata 
+0x6ed8 031222 istore 2 ,contw 
+0x6ed9 031223 branch sa_req_all_answer_attributelist_full_loop 
+:      031224 sa_req_all_fisrt_fragment:
+0x6eda 031225 add rega ,6 ,loopcnt 
+0x6edb 031226 branch sa_req_all_parlength_continue_byte ,user 
+0x6edc 031227 byteswap loopcnt ,pdata 
+0x6edd 031228 branch sa_req_all_parlength_continue_byte_end 
+:      031229 sa_req_all_parlength_continue_byte:
+0x6ede 031230 copy loopcnt ,pdata 
+0x6edf 031231 increase 2 ,pdata 
+0x6ee0 031232 byteswap pdata ,pdata 
+:      031233 sa_req_all_parlength_continue_byte_end:
+0x6ee1 031234 istore 2 ,contw 
+0x6ee2 031235 increase -3 ,loopcnt 
+0x6ee3 031236 byteswap loopcnt ,pdata 
+0x6ee4 031237 istore 2 ,contw 
+0x6ee5 031238 copy timeup ,contr 
+0x6ee6 031239 branch sa_req_all_answer_attributelist_full_loop 
+:      031240 sa_req_all_fragment_sdp:
+0x6ee7 031241 enable user 
+0x6ee8 031243 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6ee9 031244 copy pdata ,rega 
+0x6eea 031245 copy rega ,loopcnt 
+0x6eeb 031246 fetch 2 ,mem_sdp_continue_byte 
+0x6eec 031247 branch sa_req_all_fisrt_fragment ,blank 
+0x6eed 031248 iadd timeup ,contr 
+0x6eee 031249 copy rega ,pdata 
+0x6eef 031250 increase 5 ,pdata 
+0x6ef0 031251 byteswap pdata ,pdata 
+0x6ef1 031252 istore 2 ,contw 
+0x6ef2 031253 copy rega ,pdata 
+0x6ef3 031254 byteswap pdata ,pdata 
+0x6ef4 031255 istore 2 ,contw 
+:      031256 sa_req_all_answer_attributelist_full_loop:
+0x6ef5 031257 call memcpy 
+0x6ef6 031258 nbranch sa_req_all_last_frag_continue ,user 
+0x6ef7 031259 force 2 ,pdata 
+0x6ef8 031260 istore 1 ,contw 
+0x6ef9 031261 copy contr ,pdata 
+0x6efa 031262 isub timeup ,pdata 
+0x6efb 031263 byteswap pdata ,pdata 
+0x6efc 031264 istore 2 ,contw 
+0x6efd 031265 branch sa_req_all_frag_end 
+:      031266 sa_req_all_last_frag_continue:
+0x6efe 031267 force 0 ,pdata 
+0x6eff 031268 istore 1 ,contw 
+:      031269 sa_req_all_frag_end:
+0x6f00 031270 arg sdp_attribute_res ,rega 
+0x6f01 031271 branch ssa_req_range_common 
+:      031282 sdp_process_ssa_req:
+0x6f02 031283 bpatchx patch3a_1 ,mem_patch3a 
+0x6f03 031284 call ask_serviceclassid 
+0x6f04 031285 compare 0xff ,temp ,0xff 
+0x6f05 031286 branch sdp_invalid_request_syntax ,true 
+0x6f06 031287 call sdp_store_maxbyte 
+0x6f07 031288 store 2 ,mem_sdp_attribute_maxbyte 
+0x6f08 031289 increase -2 ,timeup 
+0x6f09 031290 call dataelementtype6 
+0x6f0a 031291 arg mem_sdp_attrib_list ,contw 
+0x6f0b 031292 force 0 ,queue 
+:      031293 ssa_req_loop:
+0x6f0c 031294 ifetch 1 ,contr 
+0x6f0d 031295 beq sdp_attribute_range ,ssa_req_range 
+0x6f0e 031296 ifetch 2 ,contr 
+0x6f0f 031297 istore 2 ,contw 
+0x6f10 031298 increase 1 ,queue 
+0x6f11 031299 increase -3 ,timeup 
+0x6f12 031300 increase -3 ,rega 
+0x6f13 031301 nbranch sdp_invalid_request_syntax ,positive 
+0x6f14 031302 nbranch ssa_req_loop ,zero 
+0x6f15 031303 increase -1 ,timeup 
+0x6f16 031304 nbranch sdp_invalid_request_syntax ,zero 
+0x6f17 031305 call l2cap_get_sdp_tx_payload 
+0x6f18 031306 increase 13 ,contw 
+0x6f19 031307 fetch 2 ,mem_sdp_uuid_search_ptr 
+0x6f1a 031308 iforce regc 
+0x6f1b 031309 arg mem_sdp_attrib_list ,rega 
+:      031310 ssa_req_attributelist_next:
+0x6f1c 031311 ifetch 2 ,rega 
+0x6f1d 031312 branch ssa_req_attributelist_end ,blank 
+0x6f1e 031313 iforce regb 
+0x6f1f 031314 call search_attrib 
+0x6f20 031315 branch ssa_req_attributelist_notfound ,blank 
+0x6f21 031316 increase -3 ,contr 
+0x6f22 031317 ifetch 3 ,contr 
+0x6f23 031318 istore 3 ,contw 
+0x6f24 031319 call sdp_data_len 
+0x6f25 031320 iforce loopcnt 
+0x6f26 031321 call memcpy 
+:      031322 ssa_req_attributelist_notfound:
+0x6f27 031323 increase 2 ,rega 
+0x6f28 031324 branch ssa_req_attributelist_next 
+:      031326 ssa_req_attributelist_end:
+0x6f29 031327 call ssa_req_range_lastfreg 
+0x6f2a 031328 fetch 2 ,mem_sdp_tx_pkt_length 
+0x6f2b 031329 beq 14 ,ssa_empty_rsp 
+0x6f2c 031330 call ssa_req_range_attrbutes_length_no_continue 
+0x6f2d 031331 branch ssa_req_range_attrbutes_length_no_continue 
+:      031334 sdp_store_maxbyte:
+0x6f2e 031335 ifetch 2 ,contr 
+0x6f2f 031336 byteswap pdata ,pdata 
+0x6f30 031337 increase -3 ,pdata 
+0x6f31 031338 arg 200 ,temp 
+0x6f32 031339 isub temp ,null 
+0x6f33 031340 nrtn positive 
+0x6f34 031341 setarg 200 
+0x6f35 031342 rtn 
+:      031345 ssa_req_range:
+0x6f36 031346 increase 4 ,contr 
+0x6f37 031347 increase -5 ,timeup 
+0x6f38 031348 increase -5 ,rega 
+0x6f39 031349 nbranch sdp_invalid_request_syntax ,zero 
+0x6f3a 031350 call sdp_store_continue_common 
+0x6f3b 031351 nbranch sdp_invalid_pdu_size ,zero 
+0x6f3c 031352 arg mem_sdp_uuid_search_ptr ,timeup 
+0x6f3d 031353 call search_all_uuid 
+0x6f3e 031354 deposit queue 
+0x6f3f 031355 branch ssa_empty_rsp ,blank 
+0x6f40 031356 store 1 ,mem_handle_humber 
+0x6f41 031358 copy regb ,pdata 
+0x6f42 031359 store 2 ,mem_sdp_all_length 
+0x6f43 031360 arg 0 ,queue 
+0x6f44 031361 arg 0 ,rega 
+0x6f45 031362 call l2cap_get_sdp_tx_payload 
+0x6f46 031363 increase 10 ,contw 
+:      031364 ssa_req_range_find_handle:
+0x6f47 031365 call ssa_req_range_get_length 
+0x6f48 031366 nbranch assert ,user 
+0x6f49 031367 copy contr ,timeup 
+0x6f4a 031368 copy pdata ,regc 
+0x6f4b 031369 iadd rega ,rega 
+0x6f4c 031372 fetch 2 ,mem_sdp_continue_byte 
+0x6f4d 031373 copy pdata ,regb 
+0x6f4e 031374 branch ssa_req_range_first_freg ,blank 
+:      031375 ssa_req_range_later_freg_with_continue:
+0x6f4f 031376 copy rega ,pdata 
+0x6f50 031377 isub regb ,regb 
+0x6f51 031378 branch ssa_req_range_next_handle ,zero 
+0x6f52 031379 nbranch ssa_req_range_next_handle ,positive 
+0x6f53 031380 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6f54 031381 isub regb ,null 
+0x6f55 031382 branch ssa_req_range_maxbyte_with_continue ,zero 
+0x6f56 031383 nbranch ssa_req_range_maxbyte_with_continue ,positive 
+:      031386 ssa_req_range_send_not_maxbyte:
+0x6f57 031387 copy regb ,loopcnt 
+0x6f58 031388 call ssa_req_range_maxbyte_with_continue_cpy 
+0x6f59 031389 fetch 1 ,mem_handle_humber 
+0x6f5a 031390 increase 1 ,queue 
+0x6f5b 031391 isub queue ,null 
+0x6f5c 031392 branch ssa_req_range_lastfreg ,zero 
+0x6f5d 031393 branch ssa_req_range_freg_with_continue 
+:      031395 ssa_req_range_maxbyte_with_continue:
+0x6f5e 031396 copy pdata ,loopcnt 
+0x6f5f 031397 call ssa_req_range_maxbyte_with_continue_cpy 
+0x6f60 031398 branch ssa_req_range_freg_with_continue 
+:      031400 ssa_req_range_maxbyte_with_continue_cpy:
+0x6f61 031401 increase -3 ,contw 
+0x6f62 031402 copy loopcnt ,temp 
+0x6f63 031403 copy regc ,pdata 
+0x6f64 031404 isub regb ,pdata 
+0x6f65 031405 iadd timeup ,contr 
+0x6f66 031406 branch memcpy 
+:      031408 ssa_req_range_next_handle:
+0x6f67 031409 fetch 1 ,mem_handle_humber 
+0x6f68 031410 increase 1 ,queue 
+0x6f69 031411 isub queue ,null 
+0x6f6a 031412 rtn zero 
+0x6f6b 031413 branch ssa_req_range_find_handle 
+:      031415 ssa_req_range_get_length:
+0x6f6c 031416 call disable_user 
+0x6f6d 031417 arg mem_sdp_handle_list ,contr 
+0x6f6e 031418 lshift2 queue ,pdata 
+0x6f6f 031419 iadd contr ,contr 
+0x6f70 031420 ifetcht 4 ,contr 
+0x6f71 031421 call search_handle 
+0x6f72 031422 nrtn zero 
+0x6f73 031423 call sdp_data_len 
+0x6f74 031424 branch enable_user 
+:      031426 ssa_req_range_first_freg:
+0x6f75 031427 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6f76 031428 isub rega ,null 
+0x6f77 031429 nbranch ssa_req_range_firstfreg_maxbyte_with_continue ,positive 
+0x6f78 031430 copy rega ,loopcnt 
+0x6f79 031431 copy loopcnt ,temp 
+0x6f7a 031432 copy timeup ,contr 
+0x6f7b 031433 call memcpy 
+0x6f7c 031434 fetch 2 ,mem_sdp_all_length 
+0x6f7d 031435 isub rega ,null 
+0x6f7e 031436 branch ssa_req_range_freg_no_continue ,zero 
+:      031437 ssa_req_range_firstfreg_not_maxbyte_with_continue:
+0x6f7f 031438 call ssa_req_range_freg_with_continue 
+0x6f80 031439 branch ssa_req_range_attrbutes_length 
+:      031441 ssa_req_range_freg_no_continue:
+0x6f81 031442 call ssa_req_range_lastfreg 
+0x6f82 031443 branch ssa_req_range_attrbutes_length 
+:      031445 ssa_req_range_lastfreg:
+0x6f83 031446 arg sdp_searchattrib_res ,rega 
+:      031447 ssa_req_range_lastfreg_common:
+0x6f84 031448 force 0 ,pdata 
+0x6f85 031449 istore 1 ,contw 
+0x6f86 031450 call ssa_req_range_common 
+0x6f87 031451 fetcht 2 ,mem_sdp_tx_pkt_length 
+0x6f88 031452 increase -5 ,temp 
+0x6f89 031453 byteswap temp ,pdata 
+0x6f8a 031454 istore 2 ,contw 
+0x6f8b 031455 increase -3 ,temp 
+0x6f8c 031456 byteswap temp ,pdata 
+0x6f8d 031457 istore 2 ,contw 
+0x6f8e 031458 rtn 
+:      031460 ssa_req_range_firstfreg_maxbyte_with_continue:
+0x6f8f 031461 copy pdata ,loopcnt 
+0x6f90 031462 copy loopcnt ,temp 
+0x6f91 031463 copy timeup ,contr 
+0x6f92 031464 call memcpy 
+0x6f93 031465 call ssa_req_range_freg_with_continue 
+:      031466 ssa_req_range_attrbutes_length:
+0x6f94 031467 setarg 0x36 
+0x6f95 031468 istore 1 ,contw 
+0x6f96 031469 fetch 2 ,mem_sdp_all_length 
+0x6f97 031470 byteswap pdata ,pdata 
+0x6f98 031471 istore 2 ,contw 
+0x6f99 031472 rtn 
+:      031474 ssa_req_range_attrbutes_length_no_continue:
+0x6f9a 031475 setarg 0x36 
+0x6f9b 031476 istore 1 ,contw 
+0x6f9c 031477 increase -3 ,temp 
+0x6f9d 031478 byteswap temp ,pdata 
+0x6f9e 031479 istore 2 ,contw 
+0x6f9f 031480 rtn 
+:      031482 ssa_req_range_freg_with_continue:
+0x6fa0 031483 arg sdp_searchattrib_res ,rega 
+0x6fa1 031484 setarg 2 
+0x6fa2 031485 istore 1 ,contw 
+0x6fa3 031486 fetch 2 ,mem_sdp_continue_byte 
+0x6fa4 031487 iadd temp ,temp 
+0x6fa5 031488 byteswap temp ,pdata 
+0x6fa6 031489 istore 2 ,contw 
+0x6fa7 031490 call ssa_req_range_common 
+0x6fa8 031491 fetcht 2 ,mem_sdp_tx_pkt_length 
+0x6fa9 031492 increase -5 ,temp 
+0x6faa 031493 byteswap temp ,pdata 
+0x6fab 031494 istore 2 ,contw 
+0x6fac 031495 increase -5 ,temp 
+0x6fad 031496 byteswap temp ,pdata 
+0x6fae 031497 istore 2 ,contw 
+0x6faf 031498 rtn 
+:      031500 ssa_req_range_common:
+0x6fb0 031501 fetch 2 ,mem_sdp_tx_payload_ptr 
+0x6fb1 031502 isub contw ,pdata 
+0x6fb2 031503 sub pdata ,0 ,pdata 
+0x6fb3 031504 store 2 ,mem_sdp_tx_pkt_length 
+0x6fb4 031505 call l2cap_get_sdp_tx_payload 
+0x6fb5 031506 copy rega ,pdata 
+0x6fb6 031507 istore 1 ,contw 
+0x6fb7 031508 fetch 2 ,mem_sdp_transactionid 
+0x6fb8 031509 istore 2 ,contw 
+0x6fb9 031510 rtn 
+:      031523 sdp_process_ssa_res:
+:      031524 sdp_process_ss_res:
+:      031525 sdp_process_sa_res:
+:      031526 sdp_process_error_res:
+0x6fba 031527 rtn 
+:      031560 sdp_invalid_service_record_handle:
+0x6fbb 031561 setarg 0x0200 
+0x6fbc 031562 store 2 ,mem_sdp_error_code 
+0x6fbd 031563 branch sdp_error_response 
+:      031564 sdp_invalid_pdu_size:
+0x6fbe 031565 setarg 0x0400 
+0x6fbf 031566 store 2 ,mem_sdp_error_code 
+0x6fc0 031567 branch sdp_error_response 
+:      031568 sdp_insufficient_resource:
+0x6fc1 031569 setarg 0x0600 
+0x6fc2 031570 store 2 ,mem_sdp_error_code 
+0x6fc3 031571 branch sdp_error_response 
+:      031572 sdp_invalid_request_syntax:
+0x6fc4 031573 setarg 0x0300 
+0x6fc5 031574 store 2 ,mem_sdp_error_code 
+:      031575 sdp_error_response:
+0x6fc6 031576 call l2cap_get_sdp_tx_payload 
+0x6fc7 031577 istore 1 ,contw 
+0x6fc8 031578 fetch 2 ,mem_sdp_transactionid 
+0x6fc9 031579 istore 2 ,contw 
+0x6fca 031580 setarg 0x0200 
+0x6fcb 031581 istore 2 ,contw 
+0x6fcc 031582 fetch 2 ,mem_sdp_error_code 
+0x6fcd 031583 istore 2 ,contw 
+0x6fce 031584 jam 7 ,mem_sdp_tx_pkt_length 
+0x6fcf 031585 rtn 
+:      031590 ask_serviceclassid:
+0x6fd0 031591 arg 0 ,regb 
+0x6fd1 031592 force 0 ,temp 
+0x6fd2 031593 arg mem_sdp_uuid_search_ptr ,contw 
+0x6fd3 031594 call dataelementtype6 
+0x6fd4 031595 branch asksrv_error ,zero 
+:      031596 classidloop:
+0x6fd5 031597 increase 1 ,regb 
+0x6fd6 031598 ifetch 1 ,contr 
+0x6fd7 031599 increase -1 ,rega 
+0x6fd8 031600 increase -1 ,timeup 
+0x6fd9 031601 compare 0x18 ,pdata ,0xf8 
+0x6fda 031602 nbranch asksrv_error ,true 
+0x6fdb 031603 compare 0x04 ,pdata ,0x07 
+0x6fdc 031604 nbranch cmp032 ,true 
+0x6fdd 031605 force 1 ,temp 
+:      031606 skip2bytes:
+0x6fde 031607 ifetch 1 ,contr 
+0x6fdf 031608 increase -1 ,rega 
+0x6fe0 031609 increase -1 ,timeup 
+0x6fe1 031610 bne 0x00 ,frstbwrong 
+0x6fe2 031611 ifetch 1 ,contr 
+0x6fe3 031612 increase -1 ,rega 
+0x6fe4 031613 increase -1 ,timeup 
+0x6fe5 031614 beq 0x00 ,cmpuuid 
+0x6fe6 031615 branch scndbwrong 
+:      031616 frstbwrong:
+0x6fe7 031617 increase 1 ,contr 
+0x6fe8 031618 increase -1 ,rega 
+0x6fe9 031619 increase -1 ,timeup 
+:      031620 scndbwrong:
+0x6fea 031621 increase 2 ,contr 
+0x6feb 031622 increase -2 ,rega 
+0x6fec 031623 increase -2 ,timeup 
+0x6fed 031624 compare 0x00 ,temp ,0xff 
+0x6fee 031625 branch loopornot ,true 
+0x6fef 031626 increase 12 ,contr 
+0x6ff0 031627 increase -12 ,rega 
+0x6ff1 031628 increase -12 ,timeup 
+0x6ff2 031629 branch loopornot 
+:      031630 cmp032:
+0x6ff3 031631 compare 0x02 ,pdata ,0x07 
+0x6ff4 031632 nbranch cmp016 ,true 
+0x6ff5 031633 branch skip2bytes 
+:      031634 cmp016:
+0x6ff6 031635 compare 0x01 ,pdata ,0x07 
+0x6ff7 031636 nbranch asksrv_error ,true 
+:      031637 cmpuuid:
+0x6ff8 031638 increase -2 ,rega 
+0x6ff9 031639 increase -2 ,timeup 
+0x6ffa 031640 ifetch 2 ,contr 
+0x6ffb 031641 sub regb ,4 ,null 
+0x6ffc 031642 branch uuidsize ,zero 
+0x6ffd 031643 istore 2 ,contw 
+:      031644 uuidsize:
+0x6ffe 031645 compare 0x00 ,temp ,0xff 
+0x6fff 031646 branch loopornot ,true 
+0x7000 031647 copy contr ,temp 
+0x7001 031648 ifetch 1 ,contr 
+0x7002 031649 bne 0x00 ,wrong12b 
+0x7003 031650 ifetch 1 ,contr 
+0x7004 031651 bne 0x00 ,wrong12b 
+0x7005 031652 ifetch 1 ,contr 
+0x7006 031653 bne 0x10 ,wrong12b 
+0x7007 031654 ifetch 1 ,contr 
+0x7008 031655 bne 0x00 ,wrong12b 
+0x7009 031656 ifetch 1 ,contr 
+0x700a 031657 bne 0x80 ,wrong12b 
+0x700b 031658 ifetch 1 ,contr 
+0x700c 031659 bne 0x00 ,wrong12b 
+0x700d 031660 ifetch 1 ,contr 
+0x700e 031661 bne 0x00 ,wrong12b 
+0x700f 031662 ifetch 1 ,contr 
+0x7010 031663 bne 0x80 ,wrong12b 
+0x7011 031664 ifetch 1 ,contr 
+0x7012 031665 bne 0x5f ,wrong12b 
+0x7013 031666 ifetch 1 ,contr 
+0x7014 031667 bne 0x9b ,wrong12b 
+0x7015 031668 ifetch 1 ,contr 
+0x7016 031669 bne 0x34 ,wrong12b 
+0x7017 031670 ifetch 1 ,contr 
+0x7018 031671 beq 0xfb ,chck12dn 
+:      031672 wrong12b:
+0x7019 031673 copy temp ,contr 
+:      031674 wrong12b1:
+0x701a 031675 increase 12 ,contr 
+0x701b 031676 force 0x00 ,queue 
+0x701c 031677 force 0x00 ,temp 
+0x701d 031678 branch chck12dn 
+:      031680 chck12dn:
+0x701e 031681 increase -12 ,timeup 
+0x701f 031682 increase -12 ,rega 
+:      031683 loopornot:
+0x7020 031684 force 0x00 ,temp 
+0x7021 031685 compare 0x00 ,rega ,0xff 
+0x7022 031686 nbranch classidloop ,true 
+0x7023 031687 force 0 ,pdata 
+0x7024 031688 istore 2 ,contw 
+0x7025 031689 rtn 
+:      031690 asksrv_error:
+0x7026 031691 arg 0xff ,temp 
+0x7027 031692 rtn 
+:      031702 dataelementtype6:
+0x7028 031703 bpatchx patch3a_4 ,mem_patch3a 
+0x7029 031704 ifetch 1 ,contr 
+0x702a 031705 increase -1 ,timeup 
+0x702b 031706 compare 0x30 ,pdata ,0xf8 
+0x702c 031707 nbranch dsize_error ,true 
+0x702d 031708 compare 0x07 ,pdata ,0x07 
+0x702e 031709 branch dsize32 ,true 
+0x702f 031710 compare 0x06 ,pdata ,0x07 
+0x7030 031711 branch dsize16 ,true 
+0x7031 031712 compare 0x05 ,pdata ,0x07 
+0x7032 031713 nbranch dsize_error ,true 
+0x7033 031715 ifetch 1 ,contr 
+0x7034 031716 copy pdata ,rega 
+0x7035 031717 increase -1 ,timeup 
+0x7036 031718 branch dsize 
+:      031719 dsize32:
+0x7037 031720 increase 2 ,contr 
+0x7038 031721 increase -2 ,timeup 
+:      031722 dsize16:
+0x7039 031723 ifetch 2 ,contr 
+0x703a 031724 byteswap pdata ,rega 
+0x703b 031725 increase -2 ,timeup 
+:      031726 dsize:
+0x703c 031727 force 0x01 ,pdata 
+0x703d 031728 rtn 
+:      031729 dsize_error:
+0x703e 031730 force 0x00 ,pdata 
+0x703f 031731 rtn 
+:      031741 ss_empty_rsp:
+0x7040 031742 setarg sdp_search_res 
+0x7041 031743 store 1 ,mem_sdp_pduid 
+0x7042 031744 branch empty_response 
+:      031745 sa_empty_rsp:
+0x7043 031746 setarg sdp_attribute_res 
+0x7044 031747 store 1 ,mem_sdp_pduid 
+0x7045 031748 branch empty_response 
+:      031749 ssa_empty_rsp:
+0x7046 031750 setarg sdp_searchattrib_res 
+0x7047 031751 store 1 ,mem_sdp_pduid 
+:      031752 empty_response:
+0x7048 031753 call l2cap_get_sdp_tx_payload 
+0x7049 031756 fetch 1 ,mem_sdp_pduid 
+0x704a 031757 copy pdata ,regb 
+0x704b 031758 istore 1 ,contw 
+0x704c 031759 fetch 2 ,mem_sdp_transactionid 
+0x704d 031760 istore 2 ,contw 
+0x704e 031761 setarg 0x0500 
+0x704f 031762 istore 2 ,contw 
+0x7050 031763 compare sdp_attribute_res ,regb ,0xff 
+0x7051 031764 branch fullsearch ,true 
+0x7052 031765 compare sdp_searchattrib_res ,regb ,0xff 
+0x7053 031766 branch fullsearch ,true 
+0x7054 031767 setarg 0x000000 
+0x7055 031768 istore 5 ,contw 
+0x7056 031769 branch outempty 
+:      031771 fullsearch:
+0x7057 031772 setarg 0x350200 
+0x7058 031773 istore 5 ,contw 
+:      031774 outempty:
+0x7059 031775 jam 10 ,mem_sdp_tx_pkt_length 
+0x705a 031776 rtn 
+:      031779 sdp_data_len:
+0x705b 031780 call store_contw 
+0x705c 031781 call store_contr 
+0x705d 031782 call sdp_get_data 
+0x705e 031783 call get_contw 
+0x705f 031784 call get_contr 
+0x7060 031785 copy temp ,pdata 
+0x7061 031786 rtn 
+:      031789 sdp_get_data:
+0x7062 031790 ifetch 1 ,contr 
+0x7063 031791 and pdata ,0x7 ,loopcnt 
+0x7064 031792 rshift3 pdata ,pdata 
+0x7065 031793 bne 0 ,sdp_get_data_type_not0 
+:      031794 sdp_get_data_type0:
+0x7066 031795 force 1 ,pdata 
+0x7067 031796 force 1 ,temp 
+0x7068 031797 rtn 
+:      031799 sdp_get_data_type_not0_sizeindex01234:
+0x7069 031800 call left_shift_n 
+0x706a 031801 add pdata ,1 ,temp 
+0x706b 031802 rtn 
+:      031803 sdp_get_data_type_not0:
+0x706c 031804 deposit loopcnt 
+0x706d 031805 sub pdata ,4 ,null 
+0x706e 031806 branch sdp_get_data_type_not0_sizeindex01234 ,positive 
+0x706f 031807 beq 5 ,sdp_get_data_type_not0_sizeindex5 
+0x7070 031808 beq 6 ,sdp_get_data_type_not0_sizeindex6 
+0x7071 031809 beq 7 ,sdp_get_data_type_not0_sizeindex7 
+0x7072 031810 rtn 
+:      031812 sdp_get_data_type_not0_sizeindex5:
+0x7073 031813 ifetch 1 ,contr 
+0x7074 031814 add pdata ,2 ,temp 
+0x7075 031815 rtn 
+:      031816 sdp_get_data_type_not0_sizeindex6:
+0x7076 031817 ifetch 2 ,contr 
+0x7077 031818 byteswap pdata ,pdata 
+0x7078 031819 add pdata ,3 ,temp 
+0x7079 031820 rtn 
+:      031821 sdp_get_data_type_not0_sizeindex7:
+0x707a 031822 ifetch 2 ,contr 
+0x707b 031823 byteswap pdata ,pdata 
+0x707c 031824 ifetcht 2 ,contr 
+0x707d 031825 byteswap temp ,temp 
+0x707e 031826 lshift16 temp ,temp 
+0x707f 031827 iadd temp ,pdata 
+0x7080 031828 add pdata ,5 ,temp 
+0x7081 031829 rtn 
+:      031835 search_all_uuid:
+0x7082 031836 bpatchx patch3a_5 ,mem_patch3a 
+0x7083 031837 force 0 ,queue 
+0x7084 031838 arg 0 ,regb 
+0x7085 031839 arg mem_sdp_handle_list ,contw 
+:      031840 search_all_uuid_llop:
+0x7086 031841 ifetch 2 ,timeup 
+0x7087 031842 rtn blank 
+0x7088 031843 call search_uuid 
+0x7089 031844 copy queue ,pdata 
+0x708a 031845 rtneq sdp_max_handle_number 
+0x708b 031846 increase 2 ,timeup 
+0x708c 031847 branch search_all_uuid_llop 
+:      031849 search_uuid:
+0x708d 031851 iforce regc 
+0x708e 031853 fetch 2 ,mem_ui_uuid_table 
+0x708f 031854 iforce contr 
+:      031855 search_uuid_next:
+0x7090 031856 copy queue ,pdata 
+0x7091 031857 rtneq sdp_max_handle_number 
+0x7092 031858 disable user 
+0x7093 031859 ifetch 1 ,contr 
+0x7094 031860 rtn blank 
+0x7095 031861 iforce loopcnt 
+:      031862 search_uuid_loop:
+0x7096 031863 ifetch 2 ,contr 
+0x7097 031864 isub regc ,null 
+0x7098 031865 nbranch search_uuid_not_found ,zero 
+0x7099 031866 enable user 
+:      031867 search_uuid_not_found:
+0x709a 031868 loop search_uuid_loop 
+0x709b 031869 ifetcht 4 ,contr 
+0x709c 031870 copy contr ,rega 
+0x709d 031871 nbranch search_uuid_nomatch ,user 
+0x709e 031872 arg mem_sdp_handle_list ,contr 
+0x709f 031873 arg sdp_max_handle_number ,loopcnt 
+:      031874 search_uuid_check_same_handle:
+0x70a0 031875 ifetch 4 ,contr 
+0x70a1 031876 branch search_uuid_store_handle ,blank 
+0x70a2 031877 isub temp ,null 
+0x70a3 031878 branch search_uuid_nomatch ,zero 
+0x70a4 031879 loop search_uuid_check_same_handle 
+0x70a5 031880 rtn 
+:      031881 search_uuid_store_handle:
+0x70a6 031882 istoret 4 ,contw 
+0x70a7 031883 increase 1 ,queue 
+0x70a8 031884 copy rega ,contr 
+0x70a9 031885 call sdp_data_len 
+0x70aa 031886 iadd regb ,regb 
+0x70ab 031887 iadd contr ,contr 
+0x70ac 031888 branch search_uuid_next 
+:      031889 search_uuid_nomatch:
+0x70ad 031890 copy rega ,contr 
+0x70ae 031891 call sdp_get_data 
+0x70af 031892 iadd contr ,contr 
+0x70b0 031893 branch search_uuid_next 
+:      031899 search_handle:
+0x70b1 031900 bpatchx patch3a_6 ,mem_patch3a 
+0x70b2 031901 fetch 2 ,mem_ui_uuid_table 
+0x70b3 031902 iforce contr 
+:      031903 search_handle_loop:
+0x70b4 031904 ifetch 1 ,contr 
+0x70b5 031905 branch disable_zero ,blank 
+0x70b6 031906 lshift pdata ,pdata 
+0x70b7 031907 iadd contr ,contr 
+0x70b8 031908 ifetch 4 ,contr 
+0x70b9 031909 isub temp ,null 
+0x70ba 031910 rtn zero 
+0x70bb 031911 deposit contw 
+0x70bc 031912 store 2 ,mem_contw 
+0x70bd 031913 storet 8 ,mem_temp 
+0x70be 031914 call sdp_get_data 
+0x70bf 031915 iadd contr ,contr 
+0x70c0 031916 copy contr ,pdata 
+0x70c1 031917 fetcht 2 ,mem_contw 
+0x70c2 031918 copy temp ,contw 
+0x70c3 031919 fetcht 8 ,mem_temp 
+0x70c4 031920 copy pdata ,contr 
+0x70c5 031921 branch search_handle_loop 
+:      031927 search_attrib:
+0x70c6 031928 bpatchx patch3a_7 ,mem_patch3a 
+0x70c7 031929 fetch 2 ,mem_ui_uuid_table 
+0x70c8 031930 iforce contr 
+:      031931 search_attrib_next:
+0x70c9 031932 ifetch 1 ,contr 
+0x70ca 031933 branch search_attrib_end ,blank 
+0x70cb 031934 iforce loopcnt 
+:      031935 search_attrib_loop:
+0x70cc 031936 ifetch 2 ,contr 
+0x70cd 031937 isub regc ,null 
+0x70ce 031938 branch search_attrib_found_uuid ,zero 
+0x70cf 031939 loop search_attrib_loop 
+0x70d0 031940 increase 4 ,contr 
+0x70d1 031941 call sdp_get_data 
+0x70d2 031942 iadd contr ,contr 
+0x70d3 031943 branch search_attrib_next 
+:      031944 search_attrib_found_uuid:
+0x70d4 031945 increase -1 ,loopcnt 
+0x70d5 031946 lshift loopcnt ,pdata 
+0x70d6 031947 iadd contr ,contr 
+0x70d7 031948 increase 4 ,contr 
+0x70d8 031949 call sdp_get_data 
+0x70d9 031950 iadd contr ,timeup 
+:      031951 search_attrib_loop_attribs:
+0x70da 031952 increase 1 ,contr 
+0x70db 031953 ifetch 2 ,contr 
+0x70dc 031954 isub regb ,null 
+0x70dd 031958 branch disable_blank ,zero 
+0x70de 031959 call sdp_data_len 
+0x70df 031960 iadd contr ,contr 
+0x70e0 031961 deposit timeup 
+0x70e1 031962 isub contr ,null 
+0x70e2 031963 branch search_attrib_end ,zero 
+0x70e3 031964 branch search_attrib_loop_attribs 
+:      031965 search_attrib_end:
+0x70e4 031966 force 0 ,contr 
+0x70e5 031967 force 0 ,pdata 
+0x70e6 031968 rtn 
+:      031974 search_handle_attrib:
+0x70e7 031975 bpatchx patch3b_0 ,mem_patch3b 
+0x70e8 031976 fetch 2 ,mem_ui_uuid_table 
+0x70e9 031977 iforce contr 
+:      031978 search_handle_attrib_next:
+0x70ea 031979 ifetch 1 ,contr 
+0x70eb 031980 branch search_handle_attrib_end ,blank 
+0x70ec 031981 lshift pdata ,pdata 
+0x70ed 031982 iadd contr ,contr 
+0x70ee 031983 ifetch 4 ,contr 
+0x70ef 031984 isub temp ,null 
+0x70f0 031985 branch search_handl_attrib_found_handle ,zero 
+0x70f1 031986 call sdp_get_data 
+0x70f2 031987 iadd contr ,contr 
+0x70f3 031988 branch search_handle_attrib_next 
+:      031989 search_handl_attrib_found_handle:
+0x70f4 031990 call sdp_get_data 
+0x70f5 031991 iadd contr ,timeup 
+:      031992 search_handle_attrib_loop_attribs:
+0x70f6 031993 increase 1 ,contr 
+0x70f7 031994 ifetch 2 ,contr 
+0x70f8 031995 isub regb ,null 
+0x70f9 031996 rtn zero 
+0x70fa 031997 call sdp_data_len 
+0x70fb 031998 iadd contr ,contr 
+0x70fc 031999 deposit timeup 
+0x70fd 032000 isub contr ,null 
+0x70fe 032001 branch search_handle_attrib_end ,zero 
+0x70ff 032002 branch search_handle_attrib_loop_attribs 
+:      032003 search_handle_attrib_end:
+0x7100 032004 force 0 ,contr 
+0x7101 032005 rtn 
+:      032009 search_rfcomm_cn:
+0x7102 032010 arg 0x0400 ,regb 
+0x7103 032011 call search_handl_attrib_found_handle 
+0x7104 032012 arg 0x0300 ,regb 
+0x7105 032013 call search_uuid_in_data 
+0x7106 032014 nrtn user 
+0x7107 032015 sub rega ,3 ,null 
+0x7108 032016 branch disable_user ,positive 
+0x7109 032017 ifetch 1 ,contr 
+0x710a 032018 bne 0x08 ,disable_user 
+0x710b 032019 ifetch 1 ,contr 
+0x710c 032020 rtn 
+:      032025 search_uuid_in_data:
+0x710d 032026 bpatchx patch3b_1 ,mem_patch3b 
+0x710e 032027 call sdp_get_data 
+0x710f 032028 copy pdata ,rega 
+:      032029 search_uuid_in_data_loop:
+0x7110 032030 ifetch 1 ,contr 
+0x7111 032031 and pdata ,0x7 ,loopcnt 
+0x7112 032032 rshift3 pdata ,pdata 
+0x7113 032033 sub pdata ,3 ,null 
+0x7114 032034 branch search_uuid_in_data_found_uuid ,zero 
+0x7115 032035 copy loopcnt ,pdata 
+0x7116 032036 beq 5 ,search_uuid_in_data_found_element_index5 
+0x7117 032037 beq 6 ,search_uuid_in_data_found_element_index6 
+0x7118 032038 beq 7 ,search_uuid_in_data_found_element_index7 
+0x7119 032039 increase -1 ,contr 
+0x711a 032040 call sdp_get_data 
+0x711b 032041 iadd contr ,contr 
+0x711c 032042 copy rega ,pdata 
+0x711d 032043 isub temp ,rega 
+0x711e 032044 branch disable_user ,zero 
+0x711f 032045 branch search_uuid_in_data_loop 
+:      032047 search_uuid_in_data_found_element_index5:
+0x7120 032048 increase -2 ,rega 
+0x7121 032049 increase 1 ,contr 
+0x7122 032050 branch search_uuid_in_data_loop 
+:      032051 search_uuid_in_data_found_element_index6:
+0x7123 032052 increase -3 ,rega 
+0x7124 032053 increase 2 ,contr 
+0x7125 032054 branch search_uuid_in_data_loop 
+:      032055 search_uuid_in_data_found_element_index7:
+0x7126 032056 increase -5 ,rega 
+0x7127 032057 increase 4 ,contr 
+0x7128 032058 branch search_uuid_in_data_loop 
+:      032060 search_uuid_in_data_found_uuid:
+0x7129 032061 increase -1 ,rega 
+0x712a 032062 copy loopcnt ,pdata 
+0x712b 032063 beq 1 ,search_uuid_in_data_type_uuid_16 
+0x712c 032064 beq 2 ,search_uuid_in_data_type_uuid_32 
+0x712d 032065 beq 4 ,search_uuid_in_data_type_uuid_128 
+0x712e 032066 branch disable_user 
+:      032067 search_uuid_in_data_type_uuid_128:
+0x712f 032068 increase -12 ,rega 
+:      032069 search_uuid_in_data_type_uuid_32:
+0x7130 032070 ifetch 2 ,contr 
+0x7131 032071 increase -2 ,rega 
+:      032072 search_uuid_in_data_type_uuid_16:
+0x7132 032073 ifetch 2 ,contr 
+0x7133 032074 isub regb ,null 
+0x7134 032075 branch enable_user ,zero 
+0x7135 032076 increase -2 ,rega 
+0x7136 032077 branch disable_user ,zero 
+0x7137 032078 branch search_uuid_in_data_loop 
+:      032137 sdp_send_spp_request:
+0x7138 032138 call l2cap_get_sdp_tx_payload 
+0x7139 032139 copy pdata ,contw 
+0x713a 032140 setarg 6 
+0x713b 032141 istore 1 ,contw 
+0x713c 032142 setarg sdp_tid_spp 
+0x713d 032143 istore 2 ,contw 
+0x713e 032144 setarg 0x0f00 
+0x713f 032145 istore 2 ,contw 
+0x7140 032146 setarg 0x1a0535 
+0x7141 032147 istore 3 ,contw 
+0x7142 032148 setarg 0x0111 
+0x7143 032149 lshift16 pdata ,pdata 
+0x7144 032150 istore 4 ,contw 
+0x7145 032151 setarg 0x2600 
+0x7146 032152 istore 2 ,contw 
+0x7147 032153 setarg 0x0335 
+0x7148 032154 istore 2 ,contw 
+0x7149 032155 setarg 0x0009 
+0x714a 032156 istore 2 ,contw 
+0x714b 032157 setarg 0x0004 
+0x714c 032158 istore 2 ,contw 
+0x714d 032159 jam 0x14 ,mem_sdp_tx_pkt_length 
+0x714e 032160 rtn 
+:      032164 function_g2:
+0x714f 032165 bpatchx patch3b_2 ,mem_patch3b 
+0x7150 032166 jam 80 ,mem_aes_cmac_data_length 
+0x7151 032167 arg memdat ,contw 
+0x7152 032168 arg mem_le_srand ,contr 
+0x7153 032169 call memcpy16 
+0x7154 032170 arg mem_le_pubkey_local_x_256 ,contr 
+0x7155 032171 call memcpy32 
+0x7156 032172 arg mem_le_pubkey_remote_x_256 ,contr 
+0x7157 032173 call memcpy32 
+0x7158 032174 call inverse_memdat 
+0x7159 032175 arg mem_le_mrand ,contr 
+0x715a 032176 call store_inverse_k 
+0x715b 032177 call function_aes_cmac 
+0x715c 032179 arg mem_aes_cmac_temp ,contw 
+0x715d 032180 call load_inverse_result 
+0x715e 032181 setarg 1000000 
+0x715f 032182 copy pdata ,rega 
+0x7160 032183 fetch 4 ,mem_aes_cmac_temp 
+0x7161 032184 idiv rega 
+0x7162 032185 call wait_div_end 
+0x7163 032186 remainder pdata 
+0x7164 032187 store 4 ,mem_gkey 
+0x7165 032189 rtn 
+:      032191 function_f6_eb:
+0x7166 032192 jam 65 ,mem_aes_cmac_data_length 
+0x7167 032193 arg memdat ,contw 
+0x7168 032194 call store_addr_common_a 
+0x7169 032195 call store_addr_common_b 
+0x716a 032196 fetch 3 ,mem_le_pres + 1 
+0x716b 032197 istore 3 ,contw 
+0x716c 032200 call get_r 
+0x716d 032202 arg mem_le_mrand ,contr 
+0x716e 032203 call memcpy16 
+0x716f 032204 arg mem_le_srand ,contr 
+0x7170 032205 call memcpy16 
+0x7171 032206 call inverse_memdat 
+0x7172 032207 arg mem_le_mackey ,contr 
+0x7173 032208 arg mem_aes_cmac_k ,contw 
+0x7174 032209 call memcpy16 
+0x7175 032211 branch function_aes_cmac 
+:      032215 get_r:
+0x7176 032216 fetch 4 ,mem_le_tk 
+0x7177 032217 istore 4 ,contw 
+0x7178 032218 call memset0_4 
+0x7179 032219 branch memset0_8 
+:      032221 function_f6_ea:
+0x717a 032222 bpatchx patch3b_3 ,mem_patch3b 
+0x717b 032223 jam 65 ,mem_aes_cmac_data_length 
+0x717c 032224 arg memdat ,contw 
+0x717d 032225 call store_addr_common_b 
+0x717e 032226 call store_addr_common_a 
+0x717f 032227 fetch 3 ,mem_le_preq + 1 
+0x7180 032228 istore 3 ,contw 
+0x7181 032231 call get_r 
+0x7182 032232 arg mem_le_srand ,contr 
+0x7183 032233 call memcpy16 
+0x7184 032234 arg mem_le_mrand ,contr 
+0x7185 032235 call memcpy16 
+0x7186 032236 call inverse_memdat 
+0x7187 032237 arg mem_le_mackey ,contr 
+0x7188 032238 arg mem_aes_cmac_k ,contw 
+0x7189 032239 call memcpy16 
+0x718a 032241 call function_aes_cmac 
+0x718b 032242 arg mem_aes_cmac_temp ,contw 
+0x718c 032243 branch load_inverse_result 
+:      032245 function_f5:
+0x718d 032246 jam 32 ,mem_aes_cmac_data_length 
+0x718e 032247 arg mem_le_dhkey_256 ,contr 
+0x718f 032248 arg memdat ,contw 
+0x7190 032249 call memcpy32 
+0x7191 032250 call inverse_memdat 
+0x7192 032251 arg mem_le_slat ,contr 
+0x7193 032252 call store_inverse_k 
+0x7194 032253 call function_aes_cmac 
+0x7195 032254 arg mem_aes_cmac_k ,contw 
+0x7196 032255 call store_aes_result 
+0x7197 032256 arg 1 ,temp 
+0x7198 032257 call function_f5_common 
+0x7199 032258 arg mem_le_ltk ,contw 
+0x719a 032259 call load_inverse_result 
+0x719b 032260 arg 0 ,temp 
+0x719c 032261 call function_f5_common 
+0x719d 032262 arg mem_le_mackey ,contw 
+0x719e 032264 branch store_aes_result 
+:      032267 function_f5_common:
+0x719f 032268 bpatchx patch3b_4 ,mem_patch3b 
+0x71a0 032269 jam 53 ,mem_aes_cmac_data_length 
+0x71a1 032270 setarg 0x100 
+0x71a2 032271 store 2 ,memdat 
+0x71a3 032272 call store_addr_common_b 
+0x71a4 032273 call store_addr_common_a 
+0x71a5 032274 arg mem_le_srand ,contr 
+0x71a6 032275 call memcpy16 
+0x71a7 032276 arg mem_le_mrand ,contr 
+0x71a8 032277 call memcpy16 
+0x71a9 032279 setarg 0x6c65 
+0x71aa 032280 istore 2 ,contw 
+0x71ab 032281 setarg 0x6274 
+0x71ac 032282 istore 2 ,contw 
+0x71ad 032283 istoret 1 ,contw 
+0x71ae 032284 call inverse_memdat 
+0x71af 032285 branch function_aes_cmac 
+:      032287 store_addr_common_b:
+0x71b0 032288 fetch 6 ,mem_le_lap 
+0x71b1 032289 istore 6 ,contw 
+0x71b2 032290 fetch 1 ,mem_le_conn_own_addr_type 
+0x71b3 032291 istore 1 ,contw 
+0x71b4 032292 rtn 
+:      032294 store_addr_common_a:
+0x71b5 032295 fetch 6 ,mem_le_plap 
+0x71b6 032296 istore 6 ,contw 
+0x71b7 032301 fetch 1 ,mem_le_conn_peer_addr_type 
+0x71b8 032302 istore 1 ,contw 
+0x71b9 032303 rtn 
+:      032305 function_f4_ca:
+0x71ba 032306 jam 65 ,mem_aes_cmac_data_length 
+0x71bb 032307 fetch 1 ,mem_passkey_1bit 
+0x71bc 032308 store 1 ,memdat 
+0x71bd 032309 arg mem_le_pubkey_local_x_256 ,contr 
+0x71be 032310 call memcpy32 
+0x71bf 032311 arg mem_le_pubkey_remote_x_256 ,contr 
+0x71c0 032312 call memcpy32 
+0x71c1 032313 call inverse_memdat 
+0x71c2 032314 arg mem_le_mrand ,contr 
+0x71c3 032315 call store_inverse_k 
+0x71c4 032316 branch function_aes_cmac 
+:      032319 function_f4_cb:
+0x71c5 032320 jam 65 ,mem_aes_cmac_data_length 
+0x71c6 032321 fetch 1 ,mem_passkey_1bit 
+0x71c7 032322 store 1 ,memdat 
+0x71c8 032323 arg mem_le_pubkey_remote_x_256 ,contr 
+0x71c9 032324 call memcpy32 
+0x71ca 032325 arg mem_le_pubkey_local_x_256 ,contr 
+0x71cb 032326 call memcpy32 
+0x71cc 032327 call inverse_memdat 
+0x71cd 032328 arg mem_le_srand ,contr 
+0x71ce 032329 call store_inverse_k 
+0x71cf 032330 branch function_aes_cmac 
+:      032332 function_aes_cmac:
+0x71d0 032333 bpatchx patch3b_5 ,mem_patch3b 
+0x71d1 032334 call function_aes_cmac_generate_subkey 
+0x71d2 032338 fetch 1 ,mem_aes_cmac_data_length 
+0x71d3 032339 copy pdata ,temp 
+:      032340 function_ceil16:
+0x71d4 032341 increase 15 ,pdata 
+0x71d5 032342 rshift4 pdata ,pdata 
+0x71d6 032343 copy pdata ,regb 
+0x71d7 032344 branch function_aes_cmac_set_flag_0_balnk ,blank 
+0x71d8 032345 and temp ,0x0f ,pdata 
+0x71d9 032346 nbranch function_aes_cmac_set_flag_0 ,blank 
+0x71da 032348 arg mem_aes_cmac_k1 ,regc 
+0x71db 032349 arg memdat ,pdata 
+0x71dc 032350 increase -16 ,pdata 
+0x71dd 032353 iadd temp ,rega 
+0x71de 032354 arg mem_aes_cmac_m_last ,contw 
+0x71df 032355 arg 4 ,loopcnt 
+0x71e0 032356 call xor_loop 
+0x71e1 032360 branch function_aes_cmac_aes 
+:      032362 function_aes_cmac_set_flag_0_balnk:
+0x71e2 032363 arg 1 ,regb 
+0x71e3 032364 arg 0 ,rega 
+0x71e4 032366 branch function_aes_cmac_set_flag_0_common 
+:      032369 function_aes_cmac_set_flag_0:
+0x71e5 032371 and temp ,0x0f ,rega 
+:      032372 function_aes_cmac_set_flag_0_common:
+0x71e6 032373 arg memdat ,pdata 
+0x71e7 032374 iadd temp ,pdata 
+0x71e8 032375 isub rega ,contr 
+0x71e9 032377 arg mem_aes_cmac_temp ,contw 
+0x71ea 032378 call function_aes_cmac_padding 
+0x71eb 032380 arg mem_aes_cmac_k2 ,regc 
+0x71ec 032381 arg mem_aes_cmac_temp ,rega 
+0x71ed 032382 arg mem_aes_cmac_m_last ,contw 
+0x71ee 032383 arg 4 ,loopcnt 
+0x71ef 032384 call xor_loop 
+:      032391 function_aes_cmac_aes:
+0x71f0 032396 call aes_clear_data 
+0x71f1 032397 call aes_init 
+0x71f2 032400 arg memdat ,contr 
+:      032401 function_aes_cmac_aes_loop:
+0x71f3 032403 increase -1 ,regb 
+0x71f4 032404 deposit regb 
+0x71f5 032405 branch function_aes_cmac_aes_loop_end ,blank 
+0x71f6 032406 call load_data128 
+0x71f7 032407 call do_aes_cbc 
+0x71f8 032408 branch function_aes_cmac_aes_loop 
+:      032410 function_aes_cmac_aes_loop_end:
+0x71f9 032411 arg mem_aes_cmac_temp ,contw 
+0x71fa 032412 call store_aes_result 
+0x71fb 032413 arg mem_aes_cmac_m_last ,contr 
+0x71fc 032414 call load_data128 
+0x71fd 032415 call aes_init 
+0x71fe 032416 arg mem_aes_cmac_temp ,contr 
+0x71ff 032417 call load_data128 
+0x7200 032418 branch do_aes_cbc 
+:      032422 load_inverse_result:
+0x7201 032424 copy contw ,rega 
+0x7202 032425 call store_aes_result 
+0x7203 032427 arg 16 ,loopcnt 
+0x7204 032428 branch inverse_data 
+:      032430 store_inverse_k:
+0x7205 032431 arg mem_aes_cmac_k ,contw 
+0x7206 032432 call memcpy16 
+:      032433 inverse_k:
+0x7207 032434 arg 16 ,loopcnt 
+0x7208 032435 arg mem_aes_cmac_k ,rega 
+0x7209 032436 branch inverse_data 
+:      032438 inverse_memdat:
+0x720a 032439 fetch 1 ,mem_aes_cmac_data_length 
+0x720b 032440 copy pdata ,loopcnt 
+0x720c 032441 arg memdat ,rega 
+0x720d 032442 branch inverse_data 
+:      032444 bn_lshift_0_inverse:
+0x720e 032445 ifetch 1 ,rega 
+0x720f 032446 lshift pdata ,pdata 
+0x7210 032447 isolate1 0 ,regc 
+0x7211 032448 setflag true ,0 ,pdata 
+0x7212 032449 isolate1 8 ,pdata 
+0x7213 032450 setflag true ,0 ,regc 
+0x7214 032451 istore 1 ,rega 
+0x7215 032452 increase -1 ,rega 
+0x7216 032453 loop bn_lshift_0_inverse 
+0x7217 032454 rtn 
+:      032456 function_aes_cmac_k1_inverse:
+0x7218 032457 arg mem_aes_cmac_k1 ,rega 
+:      032458 function_aes_cmac_inverse_common:
+0x7219 032459 increase 15 ,rega 
+0x721a 032460 force 16 ,loopcnt 
+0x721b 032461 force 0 ,regc 
+0x721c 032462 branch bn_lshift_0_inverse 
+:      032464 function_aes_cmac_k2_inverse:
+0x721d 032465 arg mem_aes_cmac_k2 ,rega 
+0x721e 032466 branch function_aes_cmac_inverse_common 
+:      032469 function_aes_cmac_generate_subkey:
+0x721f 032470 arg mem_aes_cmac_k ,contr 
+0x7220 032471 call load_key 
+0x7221 032474 force regidx_xor ,regext_index 
+0x7222 032475 call aes_clear 
+0x7223 032476 call aes_clear_data 
+0x7224 032477 call do_aes_ocb 
+0x7225 032482 arg mem_aes_cmac_k1 ,contw 
+0x7226 032483 call store_aes_result 
+:      032484 function_aes_cmac_k1:
+0x7227 032485 bpatchx patch3b_6 ,mem_patch3b 
+0x7228 032486 fetch 1 ,mem_aes_cmac_k1 
+0x7229 032487 isolate1 7 ,pdata 
+0x722a 032488 nbranch function_aes_cmac_k1_0 ,true 
+0x722b 032489 call function_aes_cmac_k1_inverse 
+0x722c 032492 arg mem_aes_cmac_k1 ,regc 
+0x722d 032494 arg mem_aes_cmac_k1 ,contw 
+0x722e 032497 call function_aes_cmac_xor_rb 
+0x722f 032498 branch function_aes_cmac_k2 
+:      032499 function_aes_cmac_k1_0:
+0x7230 032500 call function_aes_cmac_k1_inverse 
+:      032501 function_aes_cmac_k2:
+0x7231 032503 arg mem_aes_cmac_k1 ,contr 
+0x7232 032504 arg mem_aes_cmac_k2 ,contw 
+0x7233 032505 call memcpy16 
+0x7234 032506 fetch 1 ,mem_aes_cmac_k2 
+0x7235 032507 isolate1 7 ,pdata 
+0x7236 032508 nbranch function_aes_cmac_k2_inverse ,true 
+0x7237 032509 call function_aes_cmac_k2_inverse 
+0x7238 032511 arg mem_aes_cmac_k2 ,regc 
+0x7239 032513 arg mem_aes_cmac_k2 ,contw 
+:      032519 function_aes_cmac_xor_rb:
+0x723a 032520 arg 3 ,loopcnt 
+:      032521 function_aes_cmac_xor_rb_loop:
+0x723b 032522 arg 0 ,temp 
+0x723c 032523 call function_aes_cmac_xor_loop_common 
+0x723d 032524 increase 4 ,regc 
+0x723e 032525 loop function_aes_cmac_xor_rb_loop 
+0x723f 032526 arg 0x8700 ,temp 
+0x7240 032527 lshift16 temp ,temp 
+:      032528 function_aes_cmac_xor_loop_common:
+0x7241 032529 ifetch 4 ,regc 
+0x7242 032530 ixor temp ,pdata 
+0x7243 032531 istore 4 ,contw 
+0x7244 032532 rtn 
+:      032538 function_aes_cmac_padding:
+0x7245 032539 bpatchx patch3b_7 ,mem_patch3b 
+0x7246 032540 arg 16 ,loopcnt 
+0x7247 032541 arg 0 ,pdata 
+:      032542 function_aes_cmac_padding_loop:
+0x7248 032543 isub rega ,null 
+0x7249 032544 branch function_aes_cmac_padding_beq_length ,zero 
+0x724a 032545 branch function_aes_cmac_padding_big_length ,positive 
+0x724b 032546 ifetcht 1 ,contr 
+0x724c 032547 istoret 1 ,contw 
+:      032548 function_aes_cmac_padding_loop2:
+0x724d 032549 increase 1 ,pdata 
+0x724e 032550 loop function_aes_cmac_padding_loop 
+0x724f 032551 rtn 
+:      032552 function_aes_cmac_padding_beq_length:
+0x7250 032553 arg 0x80 ,temp 
+:      032554 function_aes_cmac_padding_common:
+0x7251 032555 istoret 1 ,contw 
+0x7252 032556 branch function_aes_cmac_padding_loop2 
+:      032558 function_aes_cmac_padding_big_length:
+0x7253 032559 arg 0 ,temp 
+0x7254 032560 branch function_aes_cmac_padding_common 
+:      032563 generate_kinit:
+0x7255 032564 call function_e22 
+0x7256 032565 arg mem_input_store ,contr 
+0x7257 032566 arg mem_kinit ,contw 
+0x7258 032567 branch memcpy16 
+:      032570 function_e21:
+0x7259 032571 disable user 
+0x725a 032572 call function_expand 
+0x725b 032573 arg mem_random_number ,contr 
+0x725c 032574 arg mem_x ,contw 
+0x725d 032575 force 15 ,loopcnt 
+0x725e 032576 call memcpy 
+0x725f 032577 ifetch 1 ,contr 
+0x7260 032578 xor_into 6 ,pdata 
+0x7261 032579 istore 1 ,contw 
+0x7262 032580 setarg mem_y 
+0x7263 032581 store 2 ,memp_ar_input 
+0x7264 032582 setarg mem_x 
+0x7265 032583 store 2 ,memp_ar_key 
+0x7266 032584 set1 mark_ar2 ,mark 
+0x7267 032585 branch function_ar 
+:      032589 function_e22:
+0x7268 032590 fetcht 1 ,mem_pin_length 
+0x7269 032591 force 16 ,regb 
+0x726a 032592 add temp ,6 ,regc 
+0x726b 032593 sub regc ,16 ,null 
+0x726c 032594 branch function_e22_pin_init ,positive 
+0x726d 032595 force 16 ,regc 
+:      032596 function_e22_pin_init:
+0x726e 032597 arg mem_x ,contw 
+:      032598 function_e22_genx_pin:
+0x726f 032599 arg mem_pin ,contr 
+0x7270 032600 copy temp ,loopcnt 
+0x7271 032601 disable user 
+:      032602 function_e22_genx_loop:
+0x7272 032603 ifetch 1 ,contr 
+0x7273 032604 istore 1 ,contw 
+0x7274 032605 increase -1 ,regb 
+0x7275 032606 branch function_e22_genx_end ,zero 
+0x7276 032607 loop function_e22_genx_loop 
+0x7277 032608 branch function_e22_genx_pin ,user 
+0x7278 032609 enable user 
+0x7279 032610 force 6 ,loopcnt 
+0x727a 032611 copy rega ,contr 
+0x727b 032612 branch function_e22_genx_loop 
+:      032613 function_e22_genx_end:
+0x727c 032614 arg mem_random_number ,contr 
+0x727d 032615 arg mem_y ,contw 
+0x727e 032616 call memcpy16 
+0x727f 032617 fetch 1 ,mem_y15 
+0x7280 032618 ixor regc ,pdata 
+0x7281 032619 store 1 ,mem_y15 
+0x7282 032620 setarg mem_y 
+0x7283 032621 store 2 ,memp_ar_input 
+0x7284 032622 setarg mem_x 
+0x7285 032623 store 2 ,memp_ar_key 
+0x7286 032624 set1 mark_ar2 ,mark 
+0x7287 032625 branch function_ar 
+:      032630 function_e1:
+0x7288 032631 disable user 
+0x7289 032632 call function_expand 
+0x728a 032633 branch function_hash 
+:      032635 function_e3:
+0x728b 032636 arg mem_aco ,rega 
+0x728c 032637 enable user 
+0x728d 032638 call function_expand 
+0x728e 032639 call function_hash 
+0x728f 032640 arg mem_input_store ,contr 
+0x7290 032641 arg mem_kc ,contw 
+0x7291 032642 branch memcpy16 
+:      032645 function_hash:
+0x7292 032646 setarg mem_random_number 
+0x7293 032647 store 2 ,memp_ar_input 
+0x7294 032648 setarg mem_link_key 
+0x7295 032649 store 2 ,memp_ar_key 
+0x7296 032650 set0 mark_ar2 ,mark 
+0x7297 032651 call function_ar 
+0x7298 032652 arg mem_input_store ,rega 
+0x7299 032653 arg mem_random_number ,regb 
+0x729a 032654 arg mem_x ,contw 
+0x729b 032655 call xor16 
+0x729c 032656 arg mem_x ,rega 
+0x729d 032657 arg mem_y ,regb 
+0x729e 032658 copy regb ,contw 
+0x729f 032659 enable user 
+0x72a0 032660 call add16 
+0x72a1 032661 call key_offset 
+0x72a2 032662 setarg mem_y 
+0x72a3 032663 store 2 ,memp_ar_input 
+0x72a4 032664 setarg mem_x 
+0x72a5 032665 store 2 ,memp_ar_key 
+0x72a6 032666 set1 mark_ar2 ,mark 
+0x72a7 032667 branch function_ar 
+:      032671 function_ar:
+0x72a8 032672 jam 0 ,mem_ar_hround 
+0x72a9 032673 fetch 2 ,memp_ar_key 
+0x72aa 032674 iforce contr 
+0x72ab 032675 arg mem_key_store ,contw 
+0x72ac 032676 call memcpy16 
+0x72ad 032677 fetch 2 ,memp_ar_input 
+0x72ae 032678 iforce contr 
+0x72af 032679 arg mem_input_store ,contw 
+0x72b0 032680 call memcpy16 
+:      032682 function_ar_loop:
+0x72b1 032683 call key_scheduling 
+0x72b2 032684 disable user 
+0x72b3 032685 bmark0 mark_ar2 ,function_ar_original 
+0x72b4 032686 fetch 1 ,mem_ar_hround 
+0x72b5 032687 bne 4 ,function_ar_original 
+0x72b6 032688 fetch 2 ,memp_ar_input 
+0x72b7 032689 iforce regb 
+0x72b8 032690 call xor_mod32_ar2 
+:      032691 function_ar_original:
+0x72b9 032692 call xor_mod32 
+0x72ba 032693 call el_boxes 
+0x72bb 032694 fetch 1 ,mem_ar_hround 
+0x72bc 032695 increase 1 ,pdata 
+0x72bd 032696 store 1 ,mem_ar_hround 
+0x72be 032698 call key_scheduling 
+0x72bf 032699 enable user 
+0x72c0 032700 call xor_mod32 
+0x72c1 032701 call pht 
+0x72c2 032702 call permute 
+0x72c3 032703 call pht 
+0x72c4 032704 call permute 
+0x72c5 032705 call pht 
+0x72c6 032706 call permute 
+0x72c7 032707 call pht 
+0x72c8 032708 fetch 1 ,mem_ar_hround 
+0x72c9 032709 increase 1 ,pdata 
+0x72ca 032710 store 1 ,mem_ar_hround 
+0x72cb 032711 bne 16 ,function_ar_loop 
+0x72cc 032712 call key_scheduling 
+0x72cd 032713 disable user 
+0x72ce 032714 branch xor_mod32 
+:      032718 key_scheduling:
+0x72cf 032719 fetch 1 ,mem_ar_hround 
+0x72d0 032720 arg mem_key_store ,contr 
+0x72d1 032721 branch key_sched_zero ,blank 
+0x72d2 032722 iforce regb 
+0x72d3 032723 force 17 ,loopcnt 
+0x72d4 032724 copy contr ,contw 
+:      032725 key_rotateloop:
+0x72d5 032726 ifetch 1 ,contr 
+0x72d6 032727 lshift3 pdata ,temp 
+0x72d7 032728 rshift2 pdata ,pdata 
+0x72d8 032729 rshift3 pdata ,pdata 
+0x72d9 032730 ior temp ,pdata 
+0x72da 032731 istore 1 ,contw 
+0x72db 032732 loop key_rotateloop 
+0x72dc 032733 setarg mem_key_store 
+0x72dd 032734 iadd regb ,contr 
+0x72de 032735 force 16 ,loopcnt 
+0x72df 032736 arg mem_round_key ,contw 
+:      032737 key_select_octet_loop:
+0x72e0 032738 ifetch 1 ,contr 
+0x72e1 032739 istore 1 ,contw 
+0x72e2 032740 compare mem_key_store_end ,contr ,0xff 
+0x72e3 032741 nbranch key_select_octet_nwrap ,true 
+0x72e4 032742 increase -17 ,contr 
+:      032743 key_select_octet_nwrap:
+0x72e5 032744 loop key_select_octet_loop 
+0x72e6 032745 force 0 ,rega 
+0x72e7 032746 add regb ,-1 ,regc 
+0x72e8 032747 lshift2 regc ,regc 
+0x72e9 032748 lshift2 regc ,regc 
+0x72ea 032749 call enable_authrom 
+0x72eb 032750 setarg mem_b_box 
+0x72ec 032751 iadd regc ,regc 
+0x72ed 032752 arg mem_round_key ,contw 
+0x72ee 032753 force 16 ,loopcnt 
+:      032754 bias_round_key_loop:
+0x72ef 032755 ifetcht 1 ,regc 
+0x72f0 032756 ifetch 1 ,contw 
+0x72f1 032757 iadd temp ,pdata 
+0x72f2 032758 istore 1 ,contw 
+0x72f3 032759 increase 1 ,regc 
+0x72f4 032760 loop bias_round_key_loop 
+0x72f5 032761 branch disable_authrom 
+:      032763 key_sched_zero:
+0x72f6 032764 force 16 ,loopcnt 
+0x72f7 032765 force 0 ,temp 
+:      032766 create_byte_16_loop:
+0x72f8 032767 ifetch 1 ,contr 
+0x72f9 032768 ixor temp ,temp 
+0x72fa 032769 loop create_byte_16_loop 
+0x72fb 032770 deposit temp 
+0x72fc 032771 istore 1 ,contr 
+0x72fd 032772 arg mem_key_store ,contr 
+0x72fe 032773 arg mem_round_key ,contw 
+0x72ff 032774 branch memcpy16 
+:      032776 xor_mod32:
+0x7300 032777 arg mem_round_key ,regb 
+:      032778 xor_mod32_ar2:
+0x7301 032779 force 16 ,loopcnt 
+0x7302 032780 arg mem_input_store ,rega 
+0x7303 032781 copy rega ,contw 
+:      032782 xor_mod32_loop:
+0x7304 032783 ifetcht 1 ,rega 
+0x7305 032784 ifetch 1 ,regb 
+0x7306 032785 ixor temp ,alarm 
+0x7307 032786 and loopcnt ,3 ,regc 
+0x7308 032787 nbranch xor_mod32_invert ,user 
+0x7309 032788 xor_into 3 ,regc 
+:      032789 xor_mod32_invert:
+0x730a 032790 sub regc ,1 ,regc 
+0x730b 032791 branch xor_even ,positive 
+0x730c 032792 iadd temp ,alarm 
+:      032793 xor_even:
+0x730d 032794 deposit alarm 
+0x730e 032795 istore 1 ,contw 
+0x730f 032796 increase 1 ,rega 
+0x7310 032797 increase 1 ,regb 
+0x7311 032798 loop xor_mod32_loop 
+0x7312 032799 rtn 
+:      032801 el_boxes:
+0x7313 032802 call enable_authrom 
+0x7314 032803 force 16 ,loopcnt 
+0x7315 032804 arg mem_input_store ,rega 
+:      032805 el_box_loop:
+0x7316 032806 ifetch 1 ,rega 
+0x7317 032807 arg mem_e_box ,contr 
+0x7318 032808 and loopcnt ,3 ,regc 
+0x7319 032809 sub regc ,1 ,null 
+0x731a 032810 branch e_boxes ,positive 
+0x731b 032811 arg mem_l_box ,contr 
+:      032812 e_boxes:
+0x731c 032813 iadd contr ,contr 
+0x731d 032814 ifetch 1 ,contr 
+0x731e 032815 istore 1 ,rega 
+0x731f 032816 increase 1 ,rega 
+0x7320 032817 loop el_box_loop 
+0x7321 032818 branch disable_authrom 
+:      032820 pht:
+0x7322 032821 force 8 ,loopcnt 
+0x7323 032822 arg mem_input_store ,contr 
+0x7324 032823 copy contr ,contw 
+:      032824 pht_loop:
+0x7325 032825 ifetch 1 ,contr 
+0x7326 032826 iforce rega 
+0x7327 032827 ifetch 1 ,contr 
+0x7328 032828 iforce regb 
+0x7329 032829 lshift rega ,pdata 
+0x732a 032830 iadd regb ,pdata 
+0x732b 032831 istore 1 ,contw 
+0x732c 032832 deposit rega 
+0x732d 032833 iadd regb ,pdata 
+0x732e 032834 istore 1 ,contw 
+0x732f 032835 loop pht_loop 
+0x7330 032836 rtn 
+:      032839 permute:
+0x7331 032840 setarg 0x8ae42c 
+0x7332 032841 iforce temp 
+0x7333 032842 force 7 ,loopcnt 
+0x7334 032843 call permute_exchange 
+0x7335 032844 setarg 0xd751b 
+0x7336 032845 iforce temp 
+0x7337 032846 force 5 ,loopcnt 
+0x7338 032847 call permute_exchange 
+0x7339 032848 fetch 1 ,mem_input_store + 15 
+0x733a 032849 iforce rega 
+0x733b 032850 fetch 1 ,mem_input_store + 3 
+0x733c 032851 store 1 ,mem_input_store + 15 
+0x733d 032852 deposit rega 
+0x733e 032853 store 1 ,mem_input_store + 3 
+0x733f 032854 rtn 
+:      032856 permute_exchange:
+0x7340 032857 and temp ,0xf ,regb 
+:      032858 permute_loop:
+0x7341 032859 and temp ,0xf ,pdata 
+0x7342 032860 arg mem_input_store ,contw 
+0x7343 032861 iadd contw ,contw 
+0x7344 032862 ifetch 1 ,contw 
+0x7345 032863 iforce regc 
+0x7346 032864 deposit rega 
+0x7347 032865 istore 1 ,contw 
+0x7348 032866 copy regc ,rega 
+0x7349 032867 rshift4 temp ,temp 
+0x734a 032868 loop permute_loop 
+0x734b 032869 setarg mem_input_store 
+0x734c 032870 iadd regb ,contw 
+0x734d 032871 deposit rega 
+0x734e 032872 istore 1 ,contw 
+0x734f 032873 rtn 
+:      032875 add16:
+0x7350 032876 enable user 
+0x7351 032877 branch xor_add16 
+:      032879 xor16:
+0x7352 032880 disable user 
+:      032881 xor_add16:
+0x7353 032882 force 16 ,loopcnt 
+:      032883 xoradd_loop:
+0x7354 032884 ifetcht 1 ,rega 
+0x7355 032885 ifetch 1 ,regb 
+0x7356 032886 branch xoradd_add ,user 
+0x7357 032887 ixor temp ,pdata 
+0x7358 032888 branch xoradd_store 
+:      032889 xoradd_add:
+0x7359 032890 iadd temp ,pdata 
+:      032891 xoradd_store:
+0x735a 032892 istore 1 ,contw 
+0x735b 032893 increase 1 ,rega 
+0x735c 032894 increase 1 ,regb 
+0x735d 032895 loop xoradd_loop 
+0x735e 032896 rtn 
+:      032899 function_expand:
+0x735f 032900 arg mem_y ,contw 
+0x7360 032901 ifetch 6 ,rega 
+0x7361 032902 istore 6 ,contw 
+0x7362 032903 branch expand_12 ,user 
+0x7363 032904 ifetch 6 ,rega 
+0x7364 032905 branch expand_cont 
+:      032906 expand_12:
+0x7365 032907 ifetch 6 ,contr 
+:      032908 expand_cont:
+0x7366 032909 istore 6 ,contw 
+0x7367 032910 ifetch 4 ,rega 
+0x7368 032911 istore 4 ,contw 
+0x7369 032912 rtn 
+:      032914 key_offset:
+0x736a 032915 arg mem_link_key ,contr 
+0x736b 032916 arg mem_x ,contw 
+0x736c 032917 arg 0 ,temp 
+0x736d 032918 setarg 0x8395a7 
+0x736e 032919 call concatenate_temp24 
+0x736f 032920 setarg 0xb3c1df 
+0x7370 032921 call concatenate_temp24 
+0x7371 032922 setarg 0xe5e9 
+0x7372 032923 call concatenate_temp16 
+0x7373 032924 copy temp ,regab 
+0x7374 032925 disable user 
+0x7375 032926 call key_addxor 
+0x7376 032927 copy regab ,temp 
+0x7377 032928 enable user 
+0x7378 032929 branch key_addxor 
+:      032931 key_addxor:
+0x7379 032932 force 8 ,loopcnt 
+:      032933 key_addxor_loop:
+0x737a 032934 ifetch 1 ,contr 
+0x737b 032935 compare 1 ,loopcnt ,1 
+0x737c 032936 branch key_high ,user 
+0x737d 032937 branch key_xor ,true 
+:      032938 key_add:
+0x737e 032939 iadd temp ,pdata 
+0x737f 032940 branch key_store 
+:      032941 key_high:
+0x7380 032942 branch key_add ,true 
+:      032943 key_xor:
+0x7381 032944 ixor temp ,pdata 
+:      032945 key_store:
+0x7382 032946 istore 1 ,contw 
+0x7383 032947 rshift8 temp ,temp 
+0x7384 032948 loop key_addxor_loop 
+0x7385 032949 rtn 
+:      032951 copy_aco:
+0x7386 032952 fetch 6 ,mem_input_store + 4 
+0x7387 032953 store 6 ,mem_aco 
+0x7388 032954 ifetch 6 ,contr 
+0x7389 032955 istore 6 ,contw 
+0x738a 032956 rtn 
+:      032958 concatenate_temp24:
+0x738b 032959 lshift8 temp ,temp 
+:      032960 concatenate_temp16:
+0x738c 032961 lshift16 temp ,temp 
+0x738d 032962 ior temp ,temp 
+0x738e 032963 rtn 
+:      032967 loop1:
+0x738f 032968 branch loop1 
+:      032972 generate_stk:
+0x7390 032973 bpatchx patch3c_0 ,mem_patch3c 
+0x7391 032974 call function_s1 
+0x7392 032975 arg mem_le_ltk ,contw 
+0x7393 032976 branch store_aes_result 
+:      032979 authenticate_rconfirm:
+0x7394 032980 arg mem_le_srand ,contw 
+0x7395 032981 branch authenticate_mconfirm ,master 
+0x7396 032982 arg mem_le_mrand ,contw 
+:      032983 authenticate_mconfirm:
+0x7397 032984 copy contr ,rega 
+0x7398 032985 call memcpy16 
+0x7399 032986 call function_c1 
+0x739a 032987 arg mem_le_rconfirm ,contr 
+0x739b 032988 branch compare_res 
+:      032990 generate_confirm:
+0x739c 032991 arg mem_le_mrand ,rega 
+0x739d 032992 branch generate_mrand ,master 
+0x739e 032993 arg mem_le_srand ,rega 
+:      032994 generate_mrand:
+0x739f 032995 copy rega ,contw 
+0x73a0 032996 call generate_random 
+0x73a1 032997 branch function_c1 
+:      032999 generate_sk:
+0x73a2 033000 arg mem_le_skdm ,contr 
+0x73a3 033001 call load_data128 
+0x73a4 033002 arg mem_le_ltk ,contr 
+0x73a5 033003 call load_regext 
+0x73a6 033004 force 0x38 ,aes_ctrl 
+0x73a7 033005 force 0x0 ,aes_ctrl 
+0x73a8 033006 call wait_aes 
+0x73a9 033007 arg mem_le_sk ,contw 
+0x73aa 033008 branch store_aes_result 
+:      033011 first_block_counter:
+0x73ab 033012 force 0x49 ,pdata 
+0x73ac 033013 branch first_block 
+:      033014 first_block_data:
+0x73ad 033015 force 1 ,pdata 
+:      033016 first_block:
+0x73ae 033017 force regidx_data ,regext_index 
+0x73af 033018 lshift8 temp ,regext 
+0x73b0 033019 ior regext ,regext 
+0x73b1 033020 increase 1 ,regext_index 
+0x73b2 033021 rshift8 temp ,regext 
+0x73b3 033022 rshift16 regext ,regext 
+0x73b4 033023 fetch 2 ,mem_le_ivm 
+0x73b5 033024 lshift16 ,pdata ,pdata 
+0x73b6 033025 ior regext ,regext 
+0x73b7 033026 increase 1 ,regext_index 
+0x73b8 033027 ifetch 4 ,contr 
+0x73b9 033028 iforce regext 
+0x73ba 033029 increase 1 ,regext_index 
+0x73bb 033030 ifetch 2 ,contr 
+0x73bc 033031 byteswap rega ,regext 
+0x73bd 033032 lshift16 regext ,regext 
+0x73be 033033 ior regext ,regext 
+0x73bf 033034 increase 1 ,regext_index 
+0x73c0 033035 rtn 
+:      033039 generate_mic:
+0x73c1 033040 add regc ,1 ,contr 
+0x73c2 033041 ifetch 1 ,contr 
+0x73c3 033042 iforce rega 
+0x73c4 033043 call first_block_counter 
+0x73c5 033044 call do_aes_ocb 
+0x73c6 033046 force regidx_data ,regext_index 
+0x73c7 033047 ifetch 1 ,regc 
+0x73c8 033048 and_into 0x3 ,pdata 
+0x73c9 033049 lshift16 pdata ,regext 
+0x73ca 033050 set1 8 ,regext 
+0x73cb 033051 call clear_hidata 
+0x73cc 033052 call do_aes_cbc 
+0x73cd 033054 copy rega ,loopcnt 
+0x73ce 033055 add regc ,2 ,contr 
+0x73cf 033056 call padding_data 
+:      033057 generate_mic_loop:
+0x73d0 033058 call aes_load_data 
+0x73d1 033059 call do_aes_cbc 
+0x73d2 033060 deposit loopcnt 
+0x73d3 033061 branch generate_mic_end ,blank 
+0x73d4 033062 branch generate_mic_loop 
+:      033063 generate_mic_end:
+0x73d5 033064 force regidx_result ,regext_index 
+0x73d6 033065 deposit regext 
+0x73d7 033066 store 4 ,mem_le_mic 
+0x73d8 033067 rtn 
+:      033069 aes_crypt_data:
+0x73d9 033070 increase 1 ,rega 
+0x73da 033071 call first_block_data 
+0x73db 033072 copy regc ,contr 
+0x73dc 033073 call aes_load_xor 
+0x73dd 033074 call do_aes_ctr 
+0x73de 033075 call store_enc_data 
+0x73df 033076 increase 16 ,regc 
+0x73e0 033077 increase -16 ,regb 
+0x73e1 033078 branch aes_crypt_data ,positive 
+0x73e2 033079 rtn 
+:      033081 le_encrypt:
+0x73e3 033082 bpatchx patch3c_1 ,mem_patch3c 
+0x73e4 033083 arg mem_le_txheader ,regc 
+0x73e5 033084 fetcht 5 ,mem_le_pcnt_tx 
+0x73e6 033085 call generate_mic 
+0x73e7 033086 force regidx_xor ,regext_index 
+0x73e8 033087 iforce regext 
+0x73e9 033088 force 0 ,rega 
+0x73ea 033089 call first_block_data 
+0x73eb 033090 call do_aes_ctr 
+0x73ec 033091 arg mem_le_txpayload ,regc 
+0x73ed 033092 fetch 1 ,mem_le_txlen 
+0x73ee 033093 add pdata ,-1 ,regb 
+0x73ef 033094 iadd regc ,contw 
+0x73f0 033095 force regidx_result ,regext_index 
+0x73f1 033096 deposit regext 
+0x73f2 033097 istore 4 ,contw 
+0x73f3 033098 call aes_crypt_data 
+0x73f4 033099 fetch 1 ,mem_le_txlen 
+0x73f5 033100 increase 4 ,pdata 
+0x73f6 033101 store 1 ,mem_le_txlen 
+0x73f7 033102 fetcht 5 ,mem_le_pcnt_tx 
+0x73f8 033103 increase 1 ,temp 
+0x73f9 033104 storet 5 ,mem_le_pcnt_tx 
+0x73fa 033105 rtn 
+:      033107 le_decrypt:
+0x73fb 033108 bpatchx patch3c_2 ,mem_patch3c 
+0x73fc 033109 fetch 1 ,mem_le_rxbuf + 1 
+0x73fd 033110 sub pdata ,20 ,null 
+0x73fe 033111 branch le_dec_cont ,positive 
+:      033112 le_dec_cont:
+0x73ff 033113 arg mem_le_rxbuf + 2 ,regc 
+0x7400 033114 add pdata ,-1 ,regb 
+0x7401 033115 increase -4 ,pdata 
+0x7402 033116 store 1 ,mem_le_rxbuf + 1 
+0x7403 033117 iadd regc ,contr 
+0x7404 033118 ifetch 4 ,contr 
+0x7405 033119 force regidx_xor ,regext_index 
+0x7406 033120 iforce regext 
+0x7407 033121 force 0 ,rega 
+0x7408 033122 fetcht 5 ,mem_le_pcnt_rx 
+0x7409 033123 call first_block_data 
+0x740a 033124 call do_aes_ctr 
+0x740b 033125 force regidx_result ,regext_index 
+0x740c 033126 deposit regext 
+0x740d 033127 store 4 ,mem_le_peer_mic 
+0x740e 033128 call aes_crypt_data 
+0x740f 033129 arg mem_le_rxbuf ,regc 
+0x7410 033130 call generate_mic 
+0x7411 033131 fetcht 4 ,mem_le_peer_mic 
+0x7412 033132 isub temp ,pdata 
+0x7413 033133 nrtn blank 
+0x7414 033134 fetch 4 ,mem_le_last_mic 
+0x7415 033135 isub temp ,pdata 
+0x7416 033136 rtn blank 
+0x7417 033137 storet 4 ,mem_le_last_mic 
+0x7418 033138 fetch 5 ,mem_le_pcnt_rx 
+0x7419 033139 increase 1 ,pdata 
+0x741a 033140 store 5 ,mem_le_pcnt_rx 
+0x741b 033141 force 0 ,pdata 
+0x741c 033142 rtn 
+:      033144 wait_aes:
+0x741d 033145 nbranch wait_aes ,aes_ready 
+0x741e 033146 rtn 
+:      033148 do_aes_ocb:
+0x741f 033149 force 0x30 ,aes_ctrl 
+0x7420 033150 force 0x0 ,aes_ctrl 
+0x7421 033151 branch wait_aes 
+:      033153 do_aes_cbc:
+0x7422 033154 force 0x32 ,aes_ctrl 
+0x7423 033155 force 0x2 ,aes_ctrl 
+0x7424 033156 branch wait_aes 
+:      033158 do_aes_ctr:
+0x7425 033159 force 0x34 ,aes_ctrl 
+0x7426 033160 force 0x4 ,aes_ctrl 
+0x7427 033161 branch wait_aes 
+:      033164 aes_init:
+0x7428 033165 force 1 ,aes_ctrl 
+0x7429 033166 force 0 ,aes_ctrl 
+0x742a 033167 rtn 
+:      033168 function_s1:
+0x742b 033169 force regidx_data ,regext_index 
+0x742c 033170 fetch 4 ,mem_le_mrand 
+0x742d 033171 iforce regext 
+0x742e 033172 increase 1 ,regext_index 
+0x742f 033173 ifetch 4 ,contr 
+0x7430 033174 iforce regext 
+0x7431 033175 increase 1 ,regext_index 
+0x7432 033176 fetch 4 ,mem_le_srand 
+0x7433 033177 iforce regext 
+0x7434 033178 increase 1 ,regext_index 
+0x7435 033179 ifetch 4 ,contr 
+0x7436 033180 iforce regext 
+0x7437 033181 increase 1 ,regext_index 
+0x7438 033182 call aes_clear 
+0x7439 033183 increase -4 ,regext_index 
+0x743a 033184 fetch 4 ,mem_le_tk 
+0x743b 033185 copy pdata ,regext 
+0x743c 033186 increase 4 ,regext_index 
+0x743d 033187 force 0x38 ,aes_ctrl 
+0x743e 033188 force 0x8 ,aes_ctrl 
+0x743f 033189 branch wait_aes 
+:      033192 function_c1:
+0x7440 033193 bpatchx patch3c_3 ,mem_patch3c 
+0x7441 033194 fetch 6 ,mem_le_lap 
+0x7442 033195 fetcht 6 ,mem_le_plap 
+0x7443 033196 branch function_c1_master ,master 
+0x7444 033197 fetch 6 ,mem_le_plap 
+0x7445 033198 fetcht 6 ,mem_le_lap 
+:      033199 function_c1_master:
+0x7446 033200 force regidx_xor ,regext_index 
+0x7447 033201 copy temp ,regext 
+0x7448 033202 increase 1 ,regext_index 
+0x7449 033203 rshift32 temp ,regext 
+0x744a 033204 lshift16 pdata ,pdata 
+0x744b 033205 ior regext ,regext 
+0x744c 033206 increase 1 ,regext_index 
+0x744d 033207 rshift32 pdata ,regext 
+0x744e 033208 increase 1 ,regext_index 
+0x744f 033209 force 0 ,regext 
+0x7450 033210 force 0 ,pdata 
+0x7451 033211 fetch 1 ,mem_le_conn_peer_addr_type 
+0x7452 033212 fetcht 1 ,mem_le_adv_own_addr_type 
+0x7453 033213 nbranch function_c1_irat ,master 
+0x7454 033215 fetch 1 ,mem_le_conn_own_addr_type 
+0x7455 033216 fetcht 1 ,mem_le_conn_peer_addr_type 
+:      033217 function_c1_irat:
+0x7456 033218 store 1 ,mem_le_iat 
+0x7457 033219 storet 1 ,mem_le_rat 
+0x7458 033220 force regidx_data ,regext_index 
+0x7459 033221 arg mem_le_iat ,regb 
+0x745a 033222 force 4 ,loopcnt 
+:      033223 function_c1_loop1:
+0x745b 033224 ifetch 4 ,rega 
+0x745c 033225 ifetcht 4 ,regb 
+0x745d 033226 ixor temp ,regext 
+0x745e 033227 increase 1 ,regext_index 
+0x745f 033228 increase 4 ,rega 
+0x7460 033229 increase 4 ,regb 
+0x7461 033230 loop function_c1_loop1 
+0x7462 033231 call aes_clear 
+0x7463 033232 increase -4 ,regext_index 
+0x7464 033233 fetch 4 ,mem_le_tk 
+0x7465 033234 copy pdata ,regext 
+0x7466 033235 increase 4 ,regext_index 
+0x7467 033236 force 0x38 ,aes_ctrl 
+0x7468 033237 force 0xc ,aes_ctrl 
+0x7469 033238 call wait_aes 
+0x746a 033240 call aes_clear_data 
+0x746b 033241 force 0x3a ,aes_ctrl 
+0x746c 033242 force 0x8 ,aes_ctrl 
+0x746d 033243 branch wait_aes 
+:      033245 padding_data:
+0x746e 033246 compare 0 ,loopcnt ,3 
+0x746f 033247 rtn true 
+0x7470 033248 deposit contr 
+0x7471 033249 iadd loopcnt ,contw 
+0x7472 033250 force 0 ,pdata 
+:      033251 padding_loop:
+0x7473 033252 istore 1 ,contw 
+0x7474 033253 increase 1 ,loopcnt 
+0x7475 033254 compare 0 ,loopcnt ,3 
+0x7476 033255 rtn true 
+0x7477 033256 branch padding_loop 
+:      033258 aes_load_data:
+0x7478 033259 force regidx_data ,regext_index 
+:      033260 load_data_loop:
+0x7479 033261 deposit loopcnt 
+0x747a 033262 branch load_data_padding ,blank 
+0x747b 033263 ifetch 4 ,contr 
+0x747c 033264 increase -4 ,loopcnt 
+:      033265 load_data_padding:
+0x747d 033266 iforce regext 
+0x747e 033267 increase 1 ,regext_index 
+0x747f 033268 compare regidx_key ,regext_index ,0xf 
+0x7480 033269 rtn true 
+0x7481 033270 branch load_data_loop 
+:      033272 aes_load_xor:
+0x7482 033273 force regidx_xor ,regext_index 
+0x7483 033274 branch load_regext 
+:      033275 load_key:
+0x7484 033276 force regidx_key ,regext_index 
+0x7485 033277 branch load_regext 
+:      033278 load_data128:
+0x7486 033279 force regidx_data ,regext_index 
+:      033280 load_regext:
+0x7487 033281 force 4 ,loopcnt 
+:      033282 load_regext_loop:
+0x7488 033283 ifetch 4 ,contr 
+0x7489 033284 iforce regext 
+0x748a 033285 increase 1 ,regext_index 
+0x748b 033286 loop load_regext_loop 
+0x748c 033287 rtn 
+:      033289 load_sk:
+0x748d 033290 arg mem_le_sk ,contr 
+0x748e 033291 branch load_key 
+:      033293 clear_hidata:
+0x748f 033294 force 4 ,loopcnt 
+0x7490 033295 branch clear_data_rest 
+:      033297 aes_clear_data:
+0x7491 033298 force regidx_data ,regext_index 
+:      033299 aes_clear:
+0x7492 033300 force 4 ,loopcnt 
+:      033301 clear_loop:
+0x7493 033302 force 0 ,regext 
+:      033303 clear_data_rest:
+0x7494 033304 increase 1 ,regext_index 
+0x7495 033305 loop clear_loop 
+0x7496 033306 rtn 
+:      033308 store_aes_result:
+0x7497 033309 force regidx_result ,regext_index 
+0x7498 033310 force 4 ,loopcnt 
+:      033311 send_aes_result_loop:
+0x7499 033312 deposit regext 
+0x749a 033313 istore 4 ,contw 
+0x749b 033314 increase 1 ,regext_index 
+0x749c 033315 loop send_aes_result_loop 
+0x749d 033316 rtn 
+:      033318 store_enc_data:
+0x749e 033319 force regidx_result ,regext_index 
+0x749f 033320 copy regc ,contw 
+0x74a0 033321 add regb ,1 ,loopcnt 
+0x74a1 033322 sub loopcnt ,15 ,null 
+0x74a2 033323 branch store_enc_loop ,positive 
+0x74a3 033324 force 16 ,loopcnt 
+:      033325 store_enc_loop:
+0x74a4 033326 deposit regext 
+0x74a5 033327 sub loopcnt ,3 ,null 
+0x74a6 033328 branch store_enc_byte ,positive 
+0x74a7 033329 istore 4 ,contw 
+0x74a8 033330 increase -4 ,loopcnt 
+0x74a9 033331 rtn zero 
+0x74aa 033332 increase 1 ,regext_index 
+0x74ab 033333 branch store_enc_loop 
+:      033334 store_enc_byte:
+0x74ac 033335 istore 1 ,contw 
+0x74ad 033336 rshift8 pdata ,pdata 
+0x74ae 033337 loop store_enc_byte 
+0x74af 033338 rtn 
+:      033341 compare_res:
+0x74b0 033342 force regidx_result ,regext_index 
+0x74b1 033343 force 4 ,loopcnt 
+:      033344 compare_res_loop:
+0x74b2 033345 ifetch 4 ,contr 
+0x74b3 033346 isub regext ,null 
+0x74b4 033347 nrtn zero 
+0x74b5 033348 increase 1 ,regext_index 
+0x74b6 033349 loop compare_res_loop 
+0x74b7 033350 force 0 ,null 
+0x74b8 033351 rtn 
+:      033353 enable_authrom:
+0x74b9 033354 hfetch 1 ,core_clkoff 
+0x74ba 033355 set0 clock_off_auth_rom ,pdata 
+0x74bb 033356 hstore 1 ,core_clkoff 
+0x74bc 033357 rtn 
+:      033359 disable_authrom:
+0x74bd 033360 hfetch 1 ,core_clkoff 
+0x74be 033361 set1 clock_off_auth_rom ,pdata 
+0x74bf 033362 hstore 1 ,core_clkoff 
+0x74c0 033363 rtn 
+:      033365 init_memp:
+0x74c1 033366 arg mem_p ,contw 
+0x74c2 033367 setsect 0 ,0x3ffff 
+0x74c3 033368 setsect 1 ,0x3ffff 
+0x74c4 033369 setsect 2 ,0x3ffff 
+0x74c5 033370 setsect 3 ,0x3fbff 
+0x74c6 033371 istore 9 ,contw 
+0x74c7 033372 setsect 0 ,0x3ffff 
+0x74c8 033373 setsect 1 ,0x3ffff 
+0x74c9 033374 setsect 2 ,0x3ffff 
+0x74ca 033375 setsect 3 ,0x3ffff 
+0x74cb 033376 istore 9 ,contw 
+0x74cc 033377 setsect 0 ,0x3ffff 
+0x74cd 033378 setsect 1 ,0x3ffff 
+0x74ce 033379 setsect 2 ,0x3cfff 
+0x74cf 033380 setsect 3 ,0x3ffff 
+0x74d0 033381 istore 9 ,contw 
+0x74d1 033382 setsect 0 ,0x3ffff 
+0x74d2 033383 setsect 1 ,0x3ffff 
+0x74d3 033384 setsect 2 ,0x3ffef 
+0x74d4 033385 setsect 3 ,0x3ffff 
+0x74d5 033386 istore 9 ,contw 
+0x74d6 033387 setsect 0 ,0x3ffff 
+0x74d7 033388 setsect 1 ,0x3ffff 
+0x74d8 033389 setsect 2 ,0x3ffff 
+0x74d9 033390 setsect 3 ,0x3ffff 
+0x74da 033391 istore 9 ,contw 
+0x74db 033392 setsect 0 ,0x3ffff 
+0x74dc 033393 setsect 1 ,0x26c7f 
+0x74dd 033394 setsect 2 ,0x146b 
+0x74de 033395 setsect 3 ,0x37bb3 
+0x74df 033396 istore 9 ,contw 
+0x74e0 033397 setsect 0 ,0x1feb8 
+0x74e1 033398 setsect 1 ,0x10c12 
+0x74e2 033399 setsect 2 ,0x2b722 
+0x74e3 033400 setsect 3 ,0x29fa6 
+0x74e4 033401 istore 9 ,contw 
+0x74e5 033402 setsect 0 ,0xe70f 
+0x74e6 033403 setsect 1 ,0x16720 
+0x74e7 033404 setsect 2 ,0x519e 
+0x74e8 033405 setsect 3 ,0x19084 
+0x74e9 033406 istore 9 ,contw 
+0x74ea 033407 setsect 0 ,0x31012 
+0x74eb 033408 setsect 1 ,0x360bf 
+0x74ec 033409 setsect 2 ,0x3f0af 
+0x74ed 033410 setsect 3 ,0x3d3 
+0x74ee 033411 istore 9 ,contw 
+0x74ef 033412 setsect 0 ,0x3a188 
+0x74f0 033413 setsect 1 ,0x3ad0 
+0x74f1 033414 setsect 2 ,0x3cbf2 
+0x74f2 033415 setsect 3 ,0x243d9 
+0x74f3 033416 istore 9 ,contw 
+0x74f4 033417 setsect 0 ,0x2b030 
+0x74f5 033418 setsect 1 ,0x36a03 
+0x74f6 033419 setsect 2 ,0x11188 
+0x74f7 033420 setsect 3 ,0x1e520 
+0x74f8 033421 istore 9 ,contw 
+0x74f9 033422 setsect 0 ,0x3a11e 
+0x74fa 033423 setsect 1 ,0xfe5d 
+0x74fb 033424 setsect 2 ,0xdd57 
+0x74fc 033425 setsect 3 ,0x1ac93 
+0x74fd 033426 istore 9 ,contw 
+0x74fe 033427 setsect 0 ,0x11ed 
+0x74ff 033428 setsect 1 ,0x218c4 
+0x7500 033429 setsect 2 ,0x8da7 
+0x7501 033430 setsect 3 ,0x257ff 
+0x7502 033431 istore 9 ,contw 
+0x7503 033432 setsect 0 ,0x3192b 
+0x7504 033433 setsect 1 ,0x34641 
+0x7505 033434 setsect 2 ,0x1be0c 
+0x7506 033435 setsect 3 ,0x366ad 
+0x7507 033436 istore 9 ,contw 
+0x7508 033437 setsect 0 ,0x1f83 
+0x7509 033438 setsect 1 ,0x15a23 
+0x750a 033439 setsect 2 ,0x3f9b0 
+0x750b 033440 setsect 3 ,0x3949 
+0x750c 033441 istore 9 ,contw 
+0x750d 033442 setsect 0 ,0x13a51 
+0x750e 033443 setsect 1 ,0x153fd 
+0x750f 033444 setsect 2 ,0x3372a 
+0x7510 033445 setsect 3 ,0xf1bb 
+0x7511 033446 istore 9 ,contw 
+0x7512 033447 setsect 0 ,0x3ae85 
+0x7513 033448 setsect 1 ,0x1eed9 
+0x7514 033449 setsect 2 ,0x9e66 
+0x7515 033450 setsect 3 ,0x1a8 
+0x7516 033451 istore 8 ,contw 
+0x7517 033452 rtn 
+:      033456 init_memp_256:
+0x7518 033457 arg mem_p_256 ,contw 
+0x7519 033458 setsect 0 ,0x3ffff 
+0x751a 033459 setsect 1 ,0x3ffff 
+0x751b 033460 setsect 2 ,0x3ffff 
+0x751c 033461 setsect 3 ,0x3ffff 
+0x751d 033462 istore 9 ,contw 
+0x751e 033463 setsect 0 ,0x3ffff 
+0x751f 033464 setsect 1 ,0x3f 
+0x7520 033465 setsect 2 ,0x0 
+0x7521 033466 setsect 3 ,0x0 
+0x7522 033467 istore 9 ,contw 
+0x7523 033468 setsect 0 ,0x0 
+0x7524 033469 setsect 1 ,0x0 
+0x7525 033470 setsect 2 ,0x1000 
+0x7526 033471 setsect 3 ,0x0 
+0x7527 033472 istore 9 ,contw 
+0x7528 033473 setsect 0 ,0x3ff00 
+0x7529 033474 setsect 1 ,0x3ffff 
+0x752a 033475 setsect 2 ,0x3ffcf 
+0x752b 033476 setsect 3 ,0x3ffff 
+0x752c 033477 istore 9 ,contw 
+0x752d 033478 setsect 0 ,0x3ffff 
+0x752e 033479 setsect 1 ,0x3ffff 
+0x752f 033480 setsect 2 ,0x3ffff 
+0x7530 033481 setsect 3 ,0x3ff 
+0x7531 033482 istore 9 ,contw 
+0x7532 033483 setsect 0 ,0x0 
+0x7533 033484 setsect 1 ,0x0 
+0x7534 033485 setsect 2 ,0x0 
+0x7535 033486 setsect 3 ,0x0 
+0x7536 033487 istore 9 ,contw 
+0x7537 033488 setsect 0 ,0x10000 
+0x7538 033489 setsect 1 ,0x0 
+0x7539 033490 setsect 2 ,0x3f000 
+0x753a 033491 setsect 3 ,0x3ffff 
+0x753b 033492 istore 9 ,contw 
+0x753c 033493 setsect 0 ,0x296ff 
+0x753d 033494 setsect 1 ,0x22630 
+0x753e 033495 setsect 2 ,0x3945d 
+0x753f 033496 setsect 3 ,0x3d284 
+0x7540 033497 istore 9 ,contw 
+0x7541 033498 setsect 0 ,0x333a0 
+0x7542 033499 setsect 1 ,0x4b7a 
+0x7543 033500 setsect 2 ,0x37d8 
+0x7544 033501 setsect 3 ,0x3c9dc 
+0x7545 033502 istore 9 ,contw 
+0x7546 033503 setsect 0 ,0x3a440 
+0x7547 033504 setsect 1 ,0x1b958 
+0x7548 033505 setsect 2 ,0x38bce 
+0x7549 033506 setsect 3 ,0x1091f 
+0x754a 033507 istore 9 ,contw 
+0x754b 033508 setsect 0 ,0x2e12c 
+0x754c 033509 setsect 1 ,0x1f47c 
+0x754d 033510 setsect 2 ,0x356b1 
+0x754e 033511 setsect 3 ,0x2fd47 
+0x754f 033512 istore 9 ,contw 
+0x7550 033513 setsect 0 ,0x6837 
+0x7551 033514 setsect 1 ,0x2ed90 
+0x7552 033515 setsect 2 ,0x1ecec 
+0x7553 033516 setsect 3 ,0x1acc5 
+0x7554 033517 istore 9 ,contw 
+0x7555 033518 setsect 0 ,0x23357 
+0x7556 033519 setsect 1 ,0x18af3 
+0x7557 033520 setsect 2 ,0xf9e1 
+0x7558 033521 setsect 3 ,0x129f0 
+0x7559 033522 istore 9 ,contw 
+0x755a 033523 setsect 0 ,0x2e7eb 
+0x755b 033524 setsect 1 ,0x3e6e3 
+0x755c 033525 setsect 2 ,0x3e1a7 
+0x755d 033526 setsect 3 ,0x10b8b 
+0x755e 033527 istore 9 ,contw 
+0x755f 033528 setsect 0 ,0x24fe3 
+0x7560 033529 setsect 1 ,0x20ef 
+0x7561 033530 setsect 2 ,0x1b5a6 
+0x7562 033531 setsect 3 ,0xdc2f 
+0x7563 033532 istore 9 ,contw 
+0x7564 033533 setsect 0 ,0x13860 
+0x7565 033534 setsect 1 ,0x2bd69 
+0x7566 033535 setsect 2 ,0x391a 
+0x7567 033536 setsect 3 ,0x1b222 
+0x7568 033537 istore 9 ,contw 
+0x7569 033538 rtn 
+:      033541 publickey_init:
+0x756a 033542 fetch 1 ,mem_ssp_enable 
+0x756b 033543 nbranch sp_initialize ,blank 
+0x756c 033544 branch sp_initialize_256 
+:      033546 sp_calc_sequence_256_check:
+0x756d 033547 bpatchx patch3c_4 ,mem_patch3c 
+0x756e 033548 fetch 1 ,mem_ssp_enable 
+0x756f 033549 rtn blank 
+0x7570 033550 fetch 1 ,mem_sp_local_key_invalid 
+0x7571 033551 rtnne sp_key_valid 
+0x7572 033552 fetch 1 ,mem_le_secure_connect_enable 
+0x7573 033553 rtn blank 
+0x7574 033554 fetch 1 ,mem_le_sc_local_key_invalid 
+0x7575 033555 rtneq sp_key_valid_256 
+0x7576 033556 fetch 2 ,mem_ui_state_map 
+0x7577 033557 bbit1 ui_state_bt_connected ,stop_publickey_calc_256 
+0x7578 033558 fetch 1 ,mem_le_sc_calc 
+0x7579 033559 beq sp_calc_standby ,sp_initialize_256 
+0x757a 033560 rtn 
+:      033561 stop_publickey_calc_256:
+0x757b 033562 jam sp_calc_standby ,mem_le_sc_calc 
+0x757c 033563 rtn 
+:      033566 sp_initialize:
+0x757d 033567 bpatchx patch3c_5 ,mem_patch3c 
+0x757e 033568 fetch 1 ,mem_ssp_enable 
+0x757f 033569 branch ssp_disable ,blank 
+0x7580 033570 call ssp_enable 
+0x7581 033571 call sp_clear_flags 
+0x7582 033572 branch sp_pubkey_calc 
+:      033574 sp_clear_flags:
+0x7583 033575 setarg 0 
+0x7584 033576 store 8 ,mem_sp_state_start 
+0x7585 033577 store 4 ,mem_sp_flag_start 
+0x7586 033578 store 7 ,mem_sp_iocap_remote 
+0x7587 033579 rtn 
+:      033581 sp_generate_local_key:
+0x7588 033582 jam sp_flag_commit ,mem_sp_flag 
+0x7589 033583 branch sp_generate_local_key0 
+:      033584 sp_master_generate_local_key:
+0x758a 033585 fetch 1 ,mem_sp_local_key_invalid 
+0x758b 033586 beq sp_key_valid ,sp_dhkey_calc 
+0x758c 033587 branch assert 
+:      033588 sp_generate_local_key0:
+0x758d 033589 fetch 1 ,mem_sp_local_key_invalid 
+0x758e 033590 beq sp_key_valid ,sp_start_send_pubkey 
+0x758f 033591 branch sp_pubkey_calc 
+:      033593 sp_start_send_pubkey:
+0x7590 033594 call sp_dhkey_calc 
+0x7591 033595 fetch 1 ,mem_master_sp_state 
+0x7592 033596 nrtn blank 
+0x7593 033597 jam sp_stat_key_send ,mem_sp_state 
+0x7594 033598 rtn 
+:      033601 sp_calc_check_publickey_256:
+0x7595 033602 call sp_calc_b256 
+0x7596 033603 arg mem_le_pubkey_remote_y_256 ,rega 
+0x7597 033604 arg mem_t7_256 ,contw 
+0x7598 033605 call bn_sqrmod_256 
+0x7599 033606 arg mem_le_pubkey_remote_x_256 ,rega 
+0x759a 033607 arg mem_t2_256 ,contw 
+0x759b 033608 call bn_sqrmod_256 
+0x759c 033609 arg mem_t2_256 ,rega 
+0x759d 033610 arg mem_le_pubkey_remote_x_256 ,regb 
+0x759e 033611 arg mem_t2_256 ,contw 
+0x759f 033612 call bn_mulmod_256 
+0x75a0 033613 arg mem_a_256 ,rega 
+0x75a1 033614 arg mem_le_pubkey_remote_x_256 ,regb 
+0x75a2 033615 arg mem_t3_256 ,contw 
+0x75a3 033616 call bn_mulmod_256 
+0x75a4 033617 arg mem_t3_256 ,rega 
+0x75a5 033618 arg mem_t2_256 ,regb 
+0x75a6 033619 arg mem_t2_256 ,contw 
+0x75a7 033620 call bn_addmod_256 
+0x75a8 033621 arg mem_t0_256 ,rega 
+0x75a9 033622 arg mem_t2_256 ,regb 
+0x75aa 033623 arg mem_t0_256 ,contw 
+0x75ab 033624 call bn_addmod_256 
+0x75ac 033625 arg 32 ,loopcnt 
+0x75ad 033626 arg mem_t7_256 ,rega 
+0x75ae 033627 arg mem_t0_256 ,regb 
+0x75af 033628 branch string_compare 
+:      033630 sp_calc_b256:
+0x75b0 033631 arg mem_gy_256 ,rega 
+0x75b1 033632 arg mem_t0_256 ,contw 
+0x75b2 033633 call bn_sqrmod_256 
+0x75b3 033634 arg mem_gx_256 ,rega 
+0x75b4 033635 arg mem_t2_256 ,contw 
+0x75b5 033636 call bn_sqrmod_256 
+0x75b6 033637 arg mem_t2_256 ,rega 
+0x75b7 033638 arg mem_gx_256 ,regb 
+0x75b8 033639 arg mem_t2_256 ,contw 
+0x75b9 033640 call bn_mulmod_256 
+0x75ba 033641 arg mem_a_256 ,rega 
+0x75bb 033642 arg mem_gx_256 ,regb 
+0x75bc 033643 arg mem_t3_256 ,contw 
+0x75bd 033644 call bn_mulmod_256 
+0x75be 033645 arg mem_t3_256 ,rega 
+0x75bf 033646 arg mem_t2_256 ,regb 
+0x75c0 033647 arg mem_t2_256 ,contw 
+0x75c1 033648 call bn_addmod_256 
+0x75c2 033649 arg mem_t0_256 ,rega 
+0x75c3 033650 arg mem_t2_256 ,regb 
+0x75c4 033651 arg mem_t0_256 ,contw 
+0x75c5 033652 branch bn_submod_256 
+:      033654 sp_calc_check_publickey:
+0x75c6 033655 call sp_calc_b 
+0x75c7 033656 arg mem_sp_pubkey_remote_y ,rega 
+0x75c8 033657 arg mem_t7_256 ,contw 
+0x75c9 033658 call bn_sqrmod 
+0x75ca 033659 arg mem_sp_pubkey_remote_x ,rega 
+0x75cb 033660 arg mem_t2_256 ,contw 
+0x75cc 033661 call bn_sqrmod 
+0x75cd 033662 arg mem_t2_256 ,rega 
+0x75ce 033663 arg mem_sp_pubkey_remote_x ,regb 
+0x75cf 033664 arg mem_t2_256 ,contw 
+0x75d0 033665 call bn_mulmod 
+0x75d1 033666 arg mem_a ,rega 
+0x75d2 033667 arg mem_sp_pubkey_remote_x ,regb 
+0x75d3 033668 arg mem_t3_256 ,contw 
+0x75d4 033669 call bn_mulmod 
+0x75d5 033670 arg mem_t3_256 ,rega 
+0x75d6 033671 arg mem_t2_256 ,regb 
+0x75d7 033672 arg mem_t2_256 ,contw 
+0x75d8 033673 call bn_addmod 
+0x75d9 033674 arg mem_t0_256 ,rega 
+0x75da 033675 arg mem_t2_256 ,regb 
+0x75db 033676 arg mem_t0_256 ,contw 
+0x75dc 033677 call bn_addmod 
+0x75dd 033678 arg 24 ,loopcnt 
+0x75de 033679 arg mem_t7_256 ,rega 
+0x75df 033680 arg mem_t0_256 ,regb 
+0x75e0 033681 branch string_compare 
+:      033683 sp_calc_b:
+0x75e1 033684 arg mem_gy ,rega 
+0x75e2 033685 arg mem_t0_256 ,contw 
+0x75e3 033686 call bn_sqrmod 
+0x75e4 033687 arg mem_gx ,rega 
+0x75e5 033688 arg mem_t2_256 ,contw 
+0x75e6 033689 call bn_sqrmod 
+0x75e7 033690 arg mem_t2_256 ,rega 
+0x75e8 033691 arg mem_gx ,regb 
+0x75e9 033692 arg mem_t2_256 ,contw 
+0x75ea 033693 call bn_mulmod 
+0x75eb 033694 arg mem_a ,rega 
+0x75ec 033695 arg mem_gx ,regb 
+0x75ed 033696 arg mem_t3_256 ,contw 
+0x75ee 033697 call bn_mulmod 
+0x75ef 033698 arg mem_t3_256 ,rega 
+0x75f0 033699 arg mem_t2_256 ,regb 
+0x75f1 033700 arg mem_t2_256 ,contw 
+0x75f2 033701 call bn_addmod 
+0x75f3 033702 arg mem_t0_256 ,rega 
+0x75f4 033703 arg mem_t2_256 ,regb 
+0x75f5 033704 arg mem_t0_256 ,contw 
+0x75f6 033705 branch bn_submod 
+:      033708 sp_calculate_commitment:
+0x75f7 033709 fetch 1 ,mem_sp_calc 
+0x75f8 033710 bne sp_calc_standby ,sp_calculate_commitment_wait_dhkey_calc 
+0x75f9 033711 call sp_local_random_key_generator 
+0x75fa 033712 arg mem_sp_prarm_stack ,contw 
+0x75fb 033713 setarg mem_sp_random_local_end 
+0x75fc 033714 istore 2 ,contw 
+0x75fd 033715 setarg mem_sp_pubkey_local_x_end 
+0x75fe 033716 istore 2 ,contw 
+0x75ff 033717 setarg mem_sp_pubkey_remote_x_end 
+0x7600 033718 istore 2 ,contw 
+0x7601 033719 branch sp_calculate_commitment0 
+:      033720 master_sp_calculate_commitment:
+0x7602 033721 arg mem_sp_prarm_stack ,contw 
+0x7603 033722 setarg mem_sp_random_remote_end 
+0x7604 033723 istore 2 ,contw 
+0x7605 033724 setarg mem_sp_pubkey_remote_x_end 
+0x7606 033725 istore 2 ,contw 
+0x7607 033726 setarg mem_sp_pubkey_local_x_end 
+0x7608 033727 istore 2 ,contw 
+:      033728 sp_calculate_commitment0:
+0x7609 033729 call function_f1 
+0x760a 033730 fetch 1 ,mem_master_sp_state 
+0x760b 033731 beq sp_stat_commit_calc ,master_sp_calculate_commitment0 
+0x760c 033732 jam sp_flag_commit ,mem_sp_flag 
+0x760d 033733 jam sp_stat_commit_send ,mem_sp_state 
+0x760e 033734 rtn 
+:      033735 master_sp_calculate_commitment0:
+0x760f 033736 jam sp_stat_commitment_compare ,mem_master_sp_state 
+0x7610 033737 call sp_master_generate_local_key 
+0x7611 033738 branch master_set_mem_master_sp_flag 
+:      033740 sp_local_random_key_generator:
+0x7612 033741 arg mem_sp_random_local ,contw 
+0x7613 033742 force 8 ,queue 
+0x7614 033743 branch random_generator 
+:      033745 sp_calculate_commitment_wait_dhkey_calc:
+0x7615 033746 jam sp_flag_commit ,mem_sp_flag 
+0x7616 033747 rtn 
+:      033749 sp_confirm_check:
+0x7617 033751 bpatchx patch3c_6 ,mem_patch3c 
+0x7618 033752 arg mem_addr_value ,contw 
+0x7619 033753 fetch 6 ,mem_lap 
+0x761a 033754 istore 6 ,contw 
+0x761b 033755 fetch 6 ,mem_plap 
+0x761c 033756 istore 6 ,contw 
+0x761d 033757 fetch 3 ,mem_sp_iocap_remote 
+0x761e 033758 istore 3 ,contw 
+0x761f 033760 call function_f3a 
+0x7620 033762 arg mem_sp_calc_result_high ,rega 
+0x7621 033763 arg mem_sp_check_result ,regb 
+0x7622 033764 force 4 ,queue 
+0x7623 033765 call compare4 
+0x7624 033766 nbranch sp_confirm_check_failed ,true 
+0x7625 033768 call sp_confirm_check_success 
+0x7626 033769 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x7627 033770 branch tid_set_reply 
+:      033772 sp_confirm_check_success:
+0x7628 033773 fetch 1 ,mem_master_sp_state 
+0x7629 033774 beq sp_stat_confirm_check ,sp_confirm_check_success_master 
+0x762a 033775 jam sp_stat_confirm_calc ,mem_sp_state 
+0x762b 033776 jam sp_flag_commit ,mem_sp_flag 
+0x762c 033777 jam lmp_accepted ,mem_lmo_opcode2 
+0x762d 033778 rtn 
+:      033779 sp_confirm_check_success_master:
+0x762e 033780 jam lmp_accepted ,mem_lmo_opcode2 
+0x762f 033781 jam sp_state_end ,mem_master_sp_state 
+0x7630 033782 branch master_set_mem_master_sp_flag 
+:      033785 sp_confirm_check_failed:
+0x7631 033786 fetch 1 ,mem_master_sp_state 
+0x7632 033787 beq sp_stat_confirm_check ,sp_confirm_check_failed_master 
+0x7633 033788 jam sp_stat_null ,mem_sp_state 
+0x7634 033789 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x7635 033791 jam authentication_failure_error ,mem_lmo_reason2 
+0x7636 033792 rtn 
+:      033793 sp_confirm_check_failed_master:
+0x7637 033794 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x7638 033795 jam sp_stat_null ,mem_master_sp_state 
+0x7639 033796 rtn 
+:      033798 sp_confirm_calc:
+0x763a 033799 fetch 1 ,mem_sp_dh_ready 
+0x763b 033800 beq sp_flag_commit ,sp_confirm_calc_ready 
+0x763c 033801 jam sp_stat_confirm_calc ,mem_master_sp_state 
+0x763d 033802 branch master_set_mem_master_sp_flag 
+:      033803 sp_confirm_calc_ready:
+0x763e 033804 arg mem_addr_value ,contw 
+0x763f 033805 fetch 6 ,mem_plap 
+0x7640 033806 istore 6 ,contw 
+0x7641 033807 fetch 6 ,mem_lap 
+0x7642 033808 istore 6 ,contw 
+0x7643 033809 fetch 3 ,mem_sp_iocap_local 
+0x7644 033810 istore 3 ,contw 
+0x7645 033812 call function_f3b 
+0x7646 033813 fetch 1 ,mem_master_sp_state 
+0x7647 033814 beq sp_stat_confirm_calc ,sp_confirm_calc_master 
+0x7648 033815 jam sp_stat_confirm_send ,mem_sp_state 
+0x7649 033816 jam sp_flag_commit ,mem_sp_flag 
+0x764a 033817 rtn 
+:      033818 sp_confirm_calc_master:
+0x764b 033819 jam sp_stat_confirm_send ,mem_master_sp_state 
+0x764c 033820 jam sp_flag_commit ,mem_master_sp_flag 
+0x764d 033821 rtn 
+:      033823 sp_master_key_prarm_push:
+0x764e 033824 arg mem_sp_prarm_stack ,contw 
+0x764f 033825 fetch 6 ,mem_plap 
+0x7650 033826 istore 6 ,contw 
+0x7651 033827 fetch 6 ,mem_lap 
+0x7652 033828 istore 6 ,contw 
+0x7653 033829 setarg mem_sp_random_local_end 
+0x7654 033830 istore 2 ,contw 
+0x7655 033831 setarg mem_sp_random_remote_end 
+0x7656 033832 istore 2 ,contw 
+0x7657 033833 branch sp_link_key_calc 
+:      033834 sp_link_key_prarm_push:
+0x7658 033835 jam sp_stat_done ,mem_sp_state 
+0x7659 033836 arg mem_sp_prarm_stack ,contw 
+0x765a 033837 fetch 6 ,mem_lap 
+0x765b 033838 istore 6 ,contw 
+0x765c 033839 fetch 6 ,mem_plap 
+0x765d 033840 istore 6 ,contw 
+0x765e 033841 setarg mem_sp_random_remote_end 
+0x765f 033842 istore 2 ,contw 
+0x7660 033843 setarg mem_sp_random_local_end 
+0x7661 033844 istore 2 ,contw 
+:      033845 sp_link_key_calc:
+0x7662 033847 arg mem_addr_value ,contw 
+0x7663 033848 fetch 6 ,mem_sp_prarm_stack 
+0x7664 033849 istore 6 ,contw 
+0x7665 033850 fetch 6 ,mem_sp_prarm_stack + 6 
+0x7666 033851 istore 6 ,contw 
+0x7667 033853 call function_f2 
+0x7668 033856 jam 1 ,mem_link_key_exists 
+0x7669 033857 arg mem_link_key ,contw 
+0x766a 033858 arg mem_sp_calc_result_high ,contr 
+0x766b 033859 call memcpy16 
+0x766c 033860 branch generate_linkkey_continue 
+:      033863 sp_pubkey_calc:
+0x766d 033864 bpatchx patch3c_7 ,mem_patch3c 
+0x766e 033865 fetch 1 ,mem_sp_local_key_invalid 
+0x766f 033866 rtnne sp_key_invalid 
+0x7670 033867 fetch 1 ,mem_sp_calc 
+0x7671 033868 rtnne sp_calc_standby 
+0x7672 033869 arg mem_sp_private_key ,contw 
+0x7673 033870 force 11 ,queue 
+0x7674 033871 call random_generator 
+0x7675 033872 random pdata 
+0x7676 033873 rshift pdata ,pdata 
+0x7677 033874 istore 2 ,contw 
+0x7678 033876 arg mem_k ,contw 
+0x7679 033877 arg mem_sp_private_key ,contr 
+0x767a 033878 call memcpy24 
+0x767b 033880 arg mem_ax ,contw 
+0x767c 033881 arg mem_gx ,contr 
+0x767d 033882 call memcpy48 
+0x767e 033884 arg mem_az ,contw 
+0x767f 033885 call bn_zero 
+0x7680 033886 jam 1 ,mem_az 
+0x7681 033888 call eckp_calc_init 
+0x7682 033889 jam sp_calc_pubkey ,mem_sp_calc 
+0x7683 033890 rtn 
+:      033892 sp_pubkey_generated:
+0x7684 033893 arg mem_sp_pubkey_local ,contw 
+0x7685 033894 arg mem_bx ,contr 
+0x7686 033895 call memcpy48 
+0x7687 033896 jam sp_key_valid ,mem_sp_local_key_invalid 
+0x7688 033897 jam sp_calc_standby ,mem_sp_calc 
+0x7689 033898 rtn 
+:      033900 sp_dhkey_calc:
+0x768a 033901 bpatchx patch3d_0 ,mem_patch3d 
+0x768b 033902 fetch 1 ,mem_sp_dhkey_invalid 
+0x768c 033903 rtnne sp_key_invalid 
+0x768d 033904 fetch 1 ,mem_sp_calc 
+0x768e 033905 rtnne sp_calc_standby 
+0x768f 033907 arg mem_k ,contw 
+0x7690 033908 arg mem_sp_private_key ,contr 
+0x7691 033909 call memcpy24 
+0x7692 033911 arg mem_ax ,contw 
+0x7693 033912 arg mem_sp_pubkey_remote ,contr 
+0x7694 033913 call memcpy48 
+0x7695 033915 arg mem_az ,contw 
+0x7696 033916 call bn_zero 
+0x7697 033917 jam 1 ,mem_az 
+0x7698 033919 call eckp_calc_init 
+0x7699 033920 jam sp_calc_dhkey ,mem_sp_calc 
+0x769a 033921 rtn 
+:      033923 sp_dhkey_generated:
+0x769b 033924 jam sp_flag_commit ,mem_sp_dh_ready 
+0x769c 033925 arg mem_sp_dhkey ,contw 
+0x769d 033926 arg mem_bx ,contr 
+0x769e 033927 call memcpy24 
+0x769f 033928 jam sp_key_valid ,mem_sp_dhkey_invalid 
+0x76a0 033929 jam sp_calc_standby ,mem_sp_calc 
+0x76a1 033930 rtn 
+:      033932 random_generator:
+0x76a2 033933 increase -1 ,queue 
+0x76a3 033934 nrtn positive 
+0x76a4 033935 random pdata 
+0x76a5 033936 istore 2 ,contw 
+0x76a6 033937 branch random_generator 
+:      033938 compare4:
+0x76a7 033939 increase -1 ,queue 
+0x76a8 033940 nbranch compare4_success ,positive 
+0x76a9 033941 ifetch 4 ,rega 
+0x76aa 033942 copy pdata ,temp 
+0x76ab 033943 ifetch 4 ,regb 
+0x76ac 033944 iflip temp ,pdata 
+0x76ad 033945 nbranch compare4_failed ,zero 
+0x76ae 033946 increase 4 ,rega 
+0x76af 033947 increase 4 ,regb 
+0x76b0 033948 branch compare4 
+:      033949 compare4_failed:
+0x76b1 033950 disable true 
+0x76b2 033951 rtn 
+:      033952 compare4_success:
+0x76b3 033953 enable true 
+0x76b4 033954 rtn 
+:      033961 simple_pairing_sequence:
+0x76b5 033962 bpatchx patch3d_1 ,mem_patch3d 
+0x76b6 033963 fetch 1 ,mem_sp_flag 
+0x76b7 033964 rtn blank 
+0x76b8 033965 call lmo_fifo_check 
+0x76b9 033966 nrtn blank 
+0x76ba 033967 jam sp_flag_standby ,mem_sp_flag 
+0x76bb 033968 fetch 1 ,mem_sp_state 
+0x76bc 033969 beq sp_stat_key_send ,sp_send_lmp_encapsulated_header 
+0x76bd 033970 beq sp_stat_commit_send ,sp_send_lmp_simple_pairing_comfirm 
+0x76be 033971 beq sp_stat_random_send ,sp_send_lmp_simple_pairing_number 
+0x76bf 033972 beq sp_stat_confirm_send ,sp_send_lmp_dhkey_check 
+0x76c0 033973 beq sp_stat_key_generate ,sp_generate_local_key 
+0x76c1 033974 beq sp_stat_commit_calc ,sp_calculate_commitment 
+0x76c2 033975 beq sp_stat_confirm_check ,sp_confirm_check 
+0x76c3 033976 beq sp_stat_confirm_calc ,sp_confirm_calc 
+0x76c4 033977 beq sp_stat_link_key_calc ,sp_link_key_prarm_push 
+0x76c5 033979 rtn 
+:      033981 master_simple_paring_sequence:
+0x76c6 033982 bpatchx patch3d_2 ,mem_patch3d 
+0x76c7 033983 fetch 1 ,mem_master_sp_flag 
+0x76c8 033984 rtn blank 
+0x76c9 033985 call lmo_fifo_check 
+0x76ca 033986 nrtn blank 
+0x76cb 033987 jam sp_flag_standby ,mem_master_sp_flag 
+0x76cc 033988 fetch 1 ,mem_master_sp_state 
+0x76cd 033989 beq sp_master_stat_start_skip ,sp_master_send_io_cap_get 
+0x76ce 033990 beq sp_master_stat_start_done ,sp_master_send_io_cap_send 
+0x76cf 033991 beq sp_stat_key_send ,sp_master_send_lmp_encapsulated_header 
+0x76d0 033992 beq sp_stat_commit_calc ,master_sp_calculate_commitment 
+0x76d1 033993 beq sp_stat_commitment_compare ,sp_master_commitment_compare 
+0x76d2 033994 beq sp_stat_random_send ,sp_master_send_lmp_simple_pairing_number 
+0x76d3 033995 beq sp_stat_confirm_calc ,sp_confirm_calc 
+0x76d4 033996 beq sp_stat_confirm_send ,master_sp_send_lmp_dhkey_check 
+0x76d5 033997 beq sp_stat_confirm_check ,sp_confirm_check 
+0x76d6 033998 beq sp_state_end ,master_sp_sm_end 
+0x76d7 033999 rtn 
+:      034001 master_set_mem_master_sp_flag:
+0x76d8 034002 jam sp_flag_commit ,mem_master_sp_flag 
+0x76d9 034003 rtn 
+:      034005 master_clear_mem_master_sp_flag:
+0x76da 034006 jam sp_flag_standby ,mem_master_sp_flag 
+0x76db 034007 rtn 
+:      034008 sp_calc_sequence:
+0x76dc 034009 bpatchx patch3d_3 ,mem_patch3d 
+0x76dd 034010 fetch 1 ,mem_ssp_enable 
+0x76de 034011 rtn blank 
+0x76df 034012 fetch 1 ,mem_sp_calc 
+0x76e0 034013 rtn blank 
+0x76e1 034014 increase 0x80 ,pdata 
+0x76e2 034015 store 1 ,mem_sp_calc 
+0x76e3 034016 rtnbit1 7 
+0x76e4 034017 fetch 1 ,mem_ec_loopc 
+0x76e5 034018 branch sp_calc_sequence_done ,blank 
+0x76e6 034019 branch eckp_calc 
+:      034021 sp_calc_sequence_done:
+0x76e7 034022 call ecunmapz 
+0x76e8 034023 fetch 1 ,mem_sp_calc 
+0x76e9 034024 beq sp_calc_pubkey ,sp_pubkey_generated 
+0x76ea 034025 beq sp_calc_dhkey ,sp_dhkey_generated 
+0x76eb 034026 rtn 
+:      034029 bn_testbit:
+0x76ec 034030 and pdata ,7 ,queue 
+0x76ed 034031 rshift3 pdata ,pdata 
+0x76ee 034032 iadd contr ,contr 
+0x76ef 034033 ifetch 1 ,contr 
+0x76f0 034034 qisolate0 pdata 
+0x76f1 034035 rtn 
+:      034038 ec_copy:
+0x76f2 034039 call memcpy24 
+0x76f3 034040 call memcpy24 
+0x76f4 034041 branch memcpy24 
+:      034044 bn_eq_zero:
+0x76f5 034045 ifetch 8 ,contr 
+0x76f6 034046 nrtn blank 
+0x76f7 034047 ifetch 8 ,contr 
+0x76f8 034048 nrtn blank 
+0x76f9 034049 ifetch 8 ,contr 
+0x76fa 034050 rtn 
+:      034055 bn_eq_0:
+0x76fb 034056 ifetch 4 ,rega 
+0x76fc 034057 iforce temp 
+0x76fd 034058 ifetch 4 ,regb 
+0x76fe 034059 isub temp ,null 
+0x76ff 034060 nrtn zero 
+0x7700 034061 increase 4 ,rega 
+0x7701 034062 increase 4 ,regb 
+0x7702 034063 loop bn_eq_0 
+0x7703 034064 rtn 
+:      034067 bn_bigeq:
+0x7704 034068 force 6 ,loopcnt 
+0x7705 034069 increase 20 ,rega 
+0x7706 034070 increase 20 ,regb 
+:      034071 bn_bigeq_0:
+0x7707 034072 ifetch 4 ,regb 
+0x7708 034073 iforce temp 
+0x7709 034074 ifetch 4 ,rega 
+0x770a 034075 isub temp ,pdata 
+0x770b 034076 nrtn positive 
+0x770c 034077 nrtn blank 
+0x770d 034078 increase -4 ,rega 
+0x770e 034079 increase -4 ,regb 
+0x770f 034080 loop bn_bigeq_0 
+0x7710 034081 rtn 
+:      034083 bn_add:
+0x7711 034084 force 6 ,loopcnt 
+0x7712 034085 force 0 ,regc 
+:      034086 bn_add_0:
+0x7713 034087 ifetch 4 ,rega 
+0x7714 034088 iforce temp 
+0x7715 034089 ifetch 4 ,regb 
+0x7716 034090 iadd temp ,pdata 
+0x7717 034091 iadd regc ,pdata 
+0x7718 034092 istore 4 ,contw 
+0x7719 034093 isolate1 32 ,pdata 
+0x771a 034094 setflag true ,0 ,regc 
+0x771b 034095 increase 4 ,rega 
+0x771c 034096 increase 4 ,regb 
+0x771d 034097 loop bn_add_0 
+0x771e 034098 rtn 
+:      034100 bn_sub:
+0x771f 034101 force 6 ,loopcnt 
+0x7720 034102 force 0 ,regc 
+:      034103 bn_sub_0:
+0x7721 034104 ifetch 4 ,regb 
+0x7722 034105 iforce temp 
+0x7723 034106 ifetch 4 ,rega 
+0x7724 034107 isub temp ,pdata 
+0x7725 034108 isub regc ,pdata 
+0x7726 034109 istore 4 ,contw 
+0x7727 034110 isolate1 32 ,pdata 
+0x7728 034111 setflag true ,0 ,regc 
+0x7729 034112 increase 4 ,rega 
+0x772a 034113 increase 4 ,regb 
+0x772b 034114 loop bn_sub_0 
+0x772c 034115 rtn 
+:      034117 bn_rshift6:
+0x772d 034118 force 6 ,loopcnt 
+0x772e 034119 increase 20 ,rega 
+:      034120 bn_rshift:
+0x772f 034121 force 0 ,regc 
+:      034122 bn_rshift_0:
+0x7730 034123 ifetch 4 ,rega 
+0x7731 034124 isolate1 0 ,pdata 
+0x7732 034125 setflag true ,1 ,regc 
+0x7733 034126 rshift pdata ,pdata 
+0x7734 034127 isolate1 0 ,regc 
+0x7735 034128 setflag true ,31 ,pdata 
+0x7736 034129 istore 4 ,rega 
+0x7737 034130 increase -4 ,rega 
+0x7738 034131 rshift regc ,regc 
+0x7739 034132 loop bn_rshift_0 
+0x773a 034133 rtn 
+:      034135 bn_lshift:
+0x773b 034136 force 6 ,loopcnt 
+0x773c 034137 force 0 ,regc 
+:      034138 bn_lshift_0:
+0x773d 034139 ifetch 4 ,rega 
+0x773e 034140 isolate1 31 ,pdata 
+0x773f 034141 setflag true ,1 ,regc 
+0x7740 034142 lshift pdata ,pdata 
+0x7741 034143 isolate1 0 ,regc 
+0x7742 034144 setflag true ,0 ,pdata 
+0x7743 034145 istore 4 ,rega 
+0x7744 034146 increase 4 ,rega 
+0x7745 034147 rshift regc ,regc 
+0x7746 034148 loop bn_lshift_0 
+0x7747 034149 rtn 
+:      034151 bn_lshiftmod:
+0x7748 034152 call bn_lshift 
+:      034153 bn_lshiftmod_ismod:
+0x7749 034154 isolate1 0 ,regc 
+0x774a 034155 branch bn_lshiftmod_0 ,true 
+0x774b 034156 arg mem_p ,regb 
+0x774c 034157 copy rega ,regc 
+0x774d 034158 increase -24 ,rega 
+0x774e 034159 call bn_bigeq 
+0x774f 034160 nrtn positive 
+0x7750 034161 copy regc ,rega 
+:      034162 bn_lshiftmod_0:
+0x7751 034163 increase -24 ,rega 
+0x7752 034164 arg mem_p ,regb 
+0x7753 034165 copy rega ,contw 
+0x7754 034166 branch bn_sub 
+:      034169 bn_addmod:
+0x7755 034170 call bn_add 
+0x7756 034171 copy contw ,rega 
+0x7757 034172 branch bn_lshiftmod_ismod 
+:      034174 bn_submod:
+0x7758 034175 call bn_sub 
+0x7759 034176 isolate0 0 ,regc 
+0x775a 034177 rtn true 
+0x775b 034178 arg mem_p ,regb 
+0x775c 034179 add contw ,-24 ,rega 
+0x775d 034180 copy rega ,contw 
+0x775e 034181 branch bn_add 
+:      034184 bn_p192mod:
+0x775f 034185 copy contw ,timeup 
+0x7760 034186 copy rega ,alarm 
+0x7761 034187 arg mem_tmp2 ,regb 
+0x7762 034188 copy regb ,contw 
+0x7763 034189 add rega ,24 ,contr 
+0x7764 034190 ifetch 8 ,contr 
+0x7765 034191 istore 8 ,contw 
+0x7766 034192 istore 8 ,contw 
+0x7767 034193 force 0 ,pdata 
+0x7768 034194 istore 8 ,contw 
+0x7769 034195 copy timeup ,contw 
+0x776a 034196 call bn_addmod 
+0x776b 034197 arg mem_tmp2 ,regb 
+0x776c 034198 copy regb ,contw 
+0x776d 034199 force 0 ,pdata 
+0x776e 034200 istore 8 ,contw 
+0x776f 034201 add alarm ,32 ,contr 
+0x7770 034202 ifetch 8 ,contr 
+0x7771 034203 istore 8 ,contw 
+0x7772 034204 istore 8 ,contw 
+0x7773 034205 copy timeup ,rega 
+0x7774 034206 copy rega ,contw 
+0x7775 034207 call bn_addmod 
+0x7776 034208 arg mem_tmp2 ,regb 
+0x7777 034209 copy regb ,contw 
+0x7778 034210 add alarm ,40 ,contr 
+0x7779 034211 ifetch 8 ,contr 
+0x777a 034212 istore 8 ,contw 
+0x777b 034213 istore 8 ,contw 
+0x777c 034214 istore 8 ,contw 
+0x777d 034215 copy timeup ,rega 
+0x777e 034216 copy rega ,contw 
+0x777f 034217 branch bn_addmod 
+:      034220 bn_load:
+0x7780 034221 force 6 ,loopcnt 
+:      034222 bn_load_0:
+0x7781 034223 ifetch 4 ,contr 
+0x7782 034224 iforce regext 
+0x7783 034225 increase 1 ,regext_index 
+0x7784 034226 loop bn_load_0 
+0x7785 034227 rtn 
+:      034231 bn_mulmod:
+0x7786 034232 copy contw ,timeup 
+0x7787 034233 arg mem_tmp1 ,contw 
+0x7788 034234 call bn_zero 
+0x7789 034235 arg mem_tmp1 ,contw 
+0x778a 034236 copy rega ,contr 
+0x778b 034237 force 0 ,regext_index 
+0x778c 034238 call bn_load 
+0x778d 034239 copy regb ,contr 
+0x778e 034240 call bn_load 
+0x778f 034241 force 0 ,regb 
+:      034242 bn_mulmod_1:
+0x7790 034243 force 0 ,temp 
+0x7791 034244 force 6 ,regc 
+:      034245 bn_mulmod_0:
+0x7792 034246 ifetch 4 ,contw 
+0x7793 034247 iforce rega 
+0x7794 034248 copy regb ,regext_index 
+0x7795 034249 deposit regext 
+0x7796 034250 copy regc ,regext_index 
+0x7797 034251 imul32 regext ,pdata 
+0x7798 034252 iadd rega ,pdata 
+0x7799 034253 iadd temp ,pdata 
+0x779a 034254 istore 4 ,contw 
+0x779b 034255 rshift32 pdata ,temp 
+0x779c 034256 increase 1 ,regc 
+0x779d 034257 compare 12 ,regc ,0xff 
+0x779e 034258 nbranch bn_mulmod_0 ,true 
+0x779f 034259 deposit temp 
+0x77a0 034260 istore 4 ,contw 
+0x77a1 034261 increase -24 ,contw 
+0x77a2 034262 increase 1 ,regb 
+0x77a3 034263 compare 6 ,regb ,0xff 
+0x77a4 034264 nbranch bn_mulmod_1 ,true 
+0x77a5 034265 arg mem_tmp1 ,rega 
+0x77a6 034266 copy timeup ,contw 
+0x77a7 034267 branch bn_p192mod 
+:      034270 bn_sqrmod:
+0x77a8 034271 copy rega ,regb 
+0x77a9 034272 branch bn_mulmod 
+:      034274 bn_rshifteven:
+0x77aa 034275 copy rega ,alarm 
+:      034276 bn_rshifteven_1:
+0x77ab 034277 copy alarm ,rega 
+0x77ac 034278 ifetch 1 ,rega 
+0x77ad 034279 isolate1 0 ,pdata 
+0x77ae 034280 rtn true 
+0x77af 034281 call bn_rshift6 
+0x77b0 034282 ifetch 1 ,regb 
+0x77b1 034283 isolate0 0 ,pdata 
+0x77b2 034284 branch bn_rshifteven_0 ,true 
+0x77b3 034285 arg mem_p ,rega 
+0x77b4 034286 copy regb ,contw 
+0x77b5 034287 call bn_add 
+0x77b6 034288 ifetch 1 ,regb 
+0x77b7 034289 iadd regc ,pdata 
+0x77b8 034290 istore 1 ,regb 
+0x77b9 034291 increase -24 ,regb 
+:      034292 bn_rshifteven_0:
+0x77ba 034293 add regb ,24 ,rega 
+0x77bb 034294 force 7 ,loopcnt 
+0x77bc 034295 call bn_rshift 
+0x77bd 034296 branch bn_rshifteven_1 
+:      034299 bn_invmod:
+0x77be 034300 copy contw ,timeup 
+0x77bf 034301 arg mem_tmp0 ,contw 
+0x77c0 034302 call bn_zero 
+0x77c1 034303 force 0 ,pdata 
+0x77c2 034304 store 4 ,mem_tmp5 
+0x77c3 034305 store 4 ,mem_t2 
+0x77c4 034306 jam 1 ,mem_tmp0 
+0x77c5 034307 arg mem_tmp1 ,contw 
+0x77c6 034308 call bn_zero 
+0x77c7 034309 arg mem_p ,contr 
+0x77c8 034310 arg mem_tmp2 ,contw 
+0x77c9 034311 call memcpy24 
+0x77ca 034312 copy rega ,contr 
+0x77cb 034313 arg mem_tmp3 ,contw 
+0x77cc 034314 call memcpy24 
+:      034315 bn_invmod_2:
+0x77cd 034316 arg mem_tmp3 ,contr 
+0x77ce 034317 call bn_eq_zero 
+0x77cf 034318 branch bn_invmod_0 ,blank 
+0x77d0 034319 arg mem_tmp3 ,rega 
+0x77d1 034320 arg mem_tmp0 ,regb 
+0x77d2 034321 call bn_rshifteven 
+0x77d3 034323 arg mem_tmp2 ,rega 
+0x77d4 034324 arg mem_tmp1 ,regb 
+0x77d5 034325 call bn_rshifteven 
+0x77d6 034326 arg mem_tmp3 ,rega 
+0x77d7 034327 arg mem_tmp2 ,regb 
+0x77d8 034328 call bn_bigeq 
+0x77d9 034329 branch bn_invmod_1 ,positive 
+0x77da 034330 arg mem_tmp2 ,rega 
+0x77db 034331 arg mem_tmp3 ,regb 
+0x77dc 034332 copy rega ,contw 
+0x77dd 034333 call bn_sub 
+0x77de 034334 arg mem_tmp0 ,rega 
+0x77df 034335 arg mem_tmp1 ,regb 
+0x77e0 034336 copy regb ,contw 
+0x77e1 034337 call bn_add 
+0x77e2 034338 ifetch 1 ,rega 
+0x77e3 034339 iadd regc ,regc 
+0x77e4 034340 ifetch 1 ,regb 
+0x77e5 034341 iadd regc ,pdata 
+0x77e6 034342 istore 1 ,regb 
+0x77e7 034343 branch bn_invmod_2 
+:      034344 bn_invmod_1:
+0x77e8 034345 arg mem_tmp3 ,rega 
+0x77e9 034346 arg mem_tmp2 ,regb 
+0x77ea 034347 copy rega ,contw 
+0x77eb 034348 call bn_sub 
+0x77ec 034349 arg mem_tmp1 ,rega 
+0x77ed 034350 arg mem_tmp0 ,regb 
+0x77ee 034351 copy regb ,contw 
+0x77ef 034352 call bn_add 
+0x77f0 034353 ifetch 1 ,rega 
+0x77f1 034354 iadd regc ,regc 
+0x77f2 034355 ifetch 1 ,regb 
+0x77f3 034356 iadd regc ,pdata 
+0x77f4 034357 istore 1 ,regb 
+0x77f5 034358 branch bn_invmod_2 
+:      034359 bn_invmod_0:
+0x77f6 034360 arg mem_tmp0 ,contw 
+0x77f7 034361 call bn_zero 
+0x77f8 034362 fetch 1 ,mem_tmp5 
+0x77f9 034363 store 1 ,mem_tmp0 
+0x77fa 034364 store 1 ,mem_tmp0a 
+0x77fb 034365 arg mem_tmp0 ,rega 
+0x77fc 034366 arg mem_tmp1 ,regb 
+0x77fd 034367 copy regb ,contw 
+0x77fe 034368 call bn_addmod 
+0x77ff 034369 arg mem_p ,rega 
+0x7800 034370 arg mem_tmp1 ,regb 
+0x7801 034371 copy timeup ,contw 
+0x7802 034372 branch bn_submod 
+:      034377 ecdbl:
+0x7803 034378 arg mem_cz ,rega 
+0x7804 034379 arg mem_t2 ,contw 
+0x7805 034380 call bn_sqrmod 
+0x7806 034381 arg mem_t2 ,rega 
+0x7807 034382 arg mem_t3 ,contw 
+0x7808 034383 call bn_sqrmod 
+0x7809 034384 arg mem_a ,rega 
+0x780a 034385 arg mem_t3 ,regb 
+0x780b 034386 arg mem_t3 ,contw 
+0x780c 034387 call bn_mulmod 
+0x780d 034388 arg mem_cx ,rega 
+0x780e 034389 arg mem_t2 ,contw 
+0x780f 034390 call bn_sqrmod 
+0x7810 034391 arg mem_t2 ,contr 
+0x7811 034392 arg mem_t1 ,contw 
+0x7812 034393 call memcpy24 
+0x7813 034394 arg mem_t1 ,rega 
+0x7814 034395 call bn_lshiftmod 
+0x7815 034396 arg mem_t2 ,rega 
+0x7816 034397 arg mem_t1 ,regb 
+0x7817 034398 arg mem_t2 ,contw 
+0x7818 034399 call bn_addmod 
+0x7819 034400 arg mem_t2 ,rega 
+0x781a 034401 arg mem_t3 ,regb 
+0x781b 034402 arg mem_t2 ,contw 
+0x781c 034403 call bn_addmod 
+0x781d 034404 arg mem_cx ,contr 
+0x781e 034405 arg mem_t1 ,contw 
+0x781f 034406 call memcpy24 
+0x7820 034407 arg mem_cy ,rega 
+0x7821 034408 arg mem_t3 ,contw 
+0x7822 034409 call bn_sqrmod 
+0x7823 034410 arg mem_t1 ,rega 
+0x7824 034411 call bn_lshiftmod 
+0x7825 034412 arg mem_t1 ,rega 
+0x7826 034413 call bn_lshiftmod 
+0x7827 034414 arg mem_t1 ,rega 
+0x7828 034415 arg mem_t3 ,regb 
+0x7829 034416 arg mem_t1 ,contw 
+0x782a 034417 call bn_mulmod 
+0x782b 034418 arg mem_t3 ,rega 
+0x782c 034419 arg mem_t0 ,contw 
+0x782d 034420 call bn_sqrmod 
+0x782e 034421 arg mem_t0 ,rega 
+0x782f 034422 call bn_lshiftmod 
+0x7830 034423 arg mem_t0 ,rega 
+0x7831 034424 call bn_lshiftmod 
+0x7832 034425 arg mem_t0 ,rega 
+0x7833 034426 call bn_lshiftmod 
+0x7834 034427 arg mem_cy ,contr 
+0x7835 034428 arg mem_t3 ,contw 
+0x7836 034429 call memcpy24 
+0x7837 034430 arg mem_t3 ,rega 
+0x7838 034431 call bn_lshiftmod 
+0x7839 034432 arg mem_t3 ,rega 
+0x783a 034433 arg mem_cz ,regb 
+0x783b 034434 arg mem_cz ,contw 
+0x783c 034435 call bn_mulmod 
+0x783d 034436 arg mem_t2 ,rega 
+0x783e 034437 arg mem_t3 ,contw 
+0x783f 034438 call bn_sqrmod 
+0x7840 034439 arg mem_t3 ,rega 
+0x7841 034440 arg mem_t1 ,regb 
+0x7842 034441 arg mem_t3 ,contw 
+0x7843 034442 call bn_submod 
+0x7844 034443 arg mem_t3 ,rega 
+0x7845 034444 arg mem_t1 ,regb 
+0x7846 034445 arg mem_cx ,contw 
+0x7847 034446 call bn_submod 
+0x7848 034447 arg mem_t1 ,rega 
+0x7849 034448 arg mem_cx ,regb 
+0x784a 034449 arg mem_t3 ,contw 
+0x784b 034450 call bn_submod 
+0x784c 034451 arg mem_t3 ,rega 
+0x784d 034452 arg mem_t2 ,regb 
+0x784e 034453 arg mem_t3 ,contw 
+0x784f 034454 call bn_mulmod 
+0x7850 034455 arg mem_t3 ,rega 
+0x7851 034456 arg mem_t0 ,regb 
+0x7852 034457 arg mem_cy ,contw 
+0x7853 034458 branch bn_submod 
+:      034462 ecadd:
+0x7854 034463 arg mem_az ,rega 
+0x7855 034464 arg mem_t7 ,contw 
+0x7856 034465 call bn_sqrmod 
+0x7857 034466 arg mem_cx ,rega 
+0x7858 034467 arg mem_t7 ,regb 
+0x7859 034468 arg mem_t0 ,contw 
+0x785a 034469 call bn_mulmod 
+0x785b 034470 arg mem_az ,rega 
+0x785c 034471 arg mem_t7 ,regb 
+0x785d 034472 arg mem_t7 ,contw 
+0x785e 034473 call bn_mulmod 
+0x785f 034474 arg mem_cy ,rega 
+0x7860 034475 arg mem_t7 ,regb 
+0x7861 034476 arg mem_t1 ,contw 
+0x7862 034477 call bn_mulmod 
+0x7863 034478 arg mem_cz ,rega 
+0x7864 034479 arg mem_t7 ,contw 
+0x7865 034480 call bn_sqrmod 
+0x7866 034481 arg mem_ax ,rega 
+0x7867 034482 arg mem_t7 ,regb 
+0x7868 034483 arg mem_t2 ,contw 
+0x7869 034484 call bn_mulmod 
+0x786a 034485 arg mem_cz ,rega 
+0x786b 034486 arg mem_t7 ,regb 
+0x786c 034487 arg mem_t7 ,contw 
+0x786d 034488 call bn_mulmod 
+0x786e 034489 arg mem_ay ,rega 
+0x786f 034490 arg mem_t7 ,regb 
+0x7870 034491 arg mem_t3 ,contw 
+0x7871 034492 call bn_mulmod 
+0x7872 034493 arg mem_t0 ,rega 
+0x7873 034494 arg mem_t2 ,regb 
+0x7874 034495 arg mem_t7 ,contw 
+0x7875 034496 call bn_submod 
+0x7876 034497 arg mem_t0 ,rega 
+0x7877 034498 arg mem_t2 ,regb 
+0x7878 034499 arg mem_t0 ,contw 
+0x7879 034500 call bn_addmod 
+0x787a 034501 arg mem_t1 ,rega 
+0x787b 034502 arg mem_t3 ,regb 
+0x787c 034503 arg mem_t2 ,contw 
+0x787d 034504 call bn_submod 
+0x787e 034505 arg mem_t1 ,rega 
+0x787f 034506 arg mem_t3 ,regb 
+0x7880 034507 arg mem_t1 ,contw 
+0x7881 034508 call bn_addmod 
+0x7882 034509 arg mem_t1 ,rega 
+0x7883 034510 arg mem_t7 ,regb 
+0x7884 034511 arg mem_t1 ,contw 
+0x7885 034512 call bn_mulmod 
+0x7886 034513 arg mem_cz ,rega 
+0x7887 034514 arg mem_az ,regb 
+0x7888 034515 arg mem_t3 ,contw 
+0x7889 034516 call bn_mulmod 
+0x788a 034517 arg mem_t3 ,rega 
+0x788b 034518 arg mem_t7 ,regb 
+0x788c 034519 arg mem_cz ,contw 
+0x788d 034520 call bn_mulmod 
+0x788e 034521 arg mem_t7 ,rega 
+0x788f 034522 arg mem_t7 ,contw 
+0x7890 034523 call bn_sqrmod 
+0x7891 034524 arg mem_t7 ,rega 
+0x7892 034525 arg mem_t0 ,regb 
+0x7893 034526 arg mem_t3 ,contw 
+0x7894 034527 call bn_mulmod 
+0x7895 034528 arg mem_t7 ,rega 
+0x7896 034529 arg mem_t1 ,regb 
+0x7897 034530 arg mem_t1 ,contw 
+0x7898 034531 call bn_mulmod 
+0x7899 034532 arg mem_t2 ,rega 
+0x789a 034533 arg mem_cx ,contw 
+0x789b 034534 call bn_sqrmod 
+0x789c 034535 arg mem_cx ,rega 
+0x789d 034536 arg mem_t3 ,regb 
+0x789e 034537 arg mem_cx ,contw 
+0x789f 034538 call bn_submod 
+0x78a0 034539 arg mem_cx ,contr 
+0x78a1 034540 arg mem_t7 ,contw 
+0x78a2 034541 call memcpy24 
+0x78a3 034542 arg mem_t7 ,rega 
+0x78a4 034543 call bn_lshiftmod 
+0x78a5 034544 arg mem_t3 ,rega 
+0x78a6 034545 arg mem_t7 ,regb 
+0x78a7 034546 arg mem_t3 ,contw 
+0x78a8 034547 call bn_submod 
+0x78a9 034548 arg mem_t3 ,rega 
+0x78aa 034549 arg mem_t2 ,regb 
+0x78ab 034550 arg mem_t2 ,contw 
+0x78ac 034551 call bn_mulmod 
+0x78ad 034552 arg mem_t2 ,rega 
+0x78ae 034553 arg mem_t1 ,regb 
+0x78af 034554 arg mem_cy ,contw 
+0x78b0 034555 call bn_submod 
+0x78b1 034556 arg mem_cy ,rega 
+0x78b2 034557 arg mem_p ,regb 
+0x78b3 034558 arg mem_cy ,contw 
+0x78b4 034559 force 0 ,regc 
+0x78b5 034560 fetch 1 ,mem_cy 
+0x78b6 034561 isolate1 0 ,pdata 
+0x78b7 034562 call bn_add ,true 
+0x78b8 034563 copy regc ,alarm 
+0x78b9 034564 arg mem_cy ,rega 
+0x78ba 034565 call bn_rshift6 
+0x78bb 034566 fetch 1 ,mem_cy5 
+0x78bc 034567 isolate1 0 ,alarm 
+0x78bd 034568 setflag true ,7 ,pdata 
+0x78be 034569 store 1 ,mem_cy5 
+0x78bf 034570 rtn 
+:      034574 eckp_0:
+0x78c0 034575 fetch 1 ,mem_ec_loopc 
+0x78c1 034576 increase -1 ,pdata 
+0x78c2 034577 nrtn positive 
+0x78c3 034578 store 1 ,mem_ec_loopc 
+0x78c4 034579 fetch 1 ,mem_ec_infinite 
+0x78c5 034580 call ecdbl ,blank 
+0x78c6 034581 fetch 1 ,mem_ec_loopc 
+0x78c7 034582 arg mem_k ,contr 
+0x78c8 034583 call bn_testbit 
+0x78c9 034584 branch eckp_0 ,true 
+0x78ca 034585 fetch 1 ,mem_ec_infinite 
+0x78cb 034586 nbranch eckp_1 ,blank 
+0x78cc 034587 call ecadd 
+0x78cd 034588 branch eckp_0 
+:      034589 eckp_1:
+0x78ce 034590 jam 0 ,mem_ec_infinite 
+0x78cf 034591 arg mem_ax ,contr 
+0x78d0 034592 arg mem_cx ,contw 
+0x78d1 034593 call ec_copy 
+0x78d2 034594 branch eckp_0 
+:      034597 ecunmapz:
+0x78d3 034598 arg mem_cz ,rega 
+0x78d4 034599 arg mem_t3 ,contw 
+0x78d5 034600 call bn_invmod 
+0x78d6 034601 arg mem_t3 ,rega 
+0x78d7 034602 arg mem_t1 ,contw 
+0x78d8 034603 call bn_sqrmod 
+0x78d9 034604 arg mem_cx ,rega 
+0x78da 034605 arg mem_t1 ,regb 
+0x78db 034606 arg mem_bx ,contw 
+0x78dc 034607 call bn_mulmod 
+0x78dd 034608 arg mem_t3 ,rega 
+0x78de 034609 arg mem_t1 ,regb 
+0x78df 034610 arg mem_t2 ,contw 
+0x78e0 034611 call bn_mulmod 
+0x78e1 034612 arg mem_cy ,rega 
+0x78e2 034613 arg mem_t2 ,regb 
+0x78e3 034614 arg mem_by ,contw 
+0x78e4 034615 branch bn_mulmod 
+:      034619 sha_endian_swap2:
+0x78e5 034620 ifetch 4 ,contr 
+0x78e6 034621 force 4 ,rega 
+0x78e7 034622 increase 3 ,contw 
+:      034623 sha_endian_loop:
+0x78e8 034624 istore 1 ,contw 
+0x78e9 034625 rshift8 pdata ,pdata 
+0x78ea 034626 increase -2 ,contw 
+0x78eb 034627 increase -1 ,rega 
+0x78ec 034628 nbranch sha_endian_loop ,zero 
+0x78ed 034629 increase 5 ,contw 
+0x78ee 034630 loop sha_endian_swap2 
+0x78ef 034631 rtn 
+:      034634 sha_getw:
+0x78f0 034635 lshift2 queue ,pdata 
+0x78f1 034636 iadd timeup ,contr 
+0x78f2 034637 ifetch 4 ,contr 
+0x78f3 034638 rtn 
+:      034640 sha_r:
+0x78f4 034641 force 16 ,alarm 
+0x78f5 034642 arg memdat ,timeup 
+:      034643 sha_r_loop:
+0x78f6 034644 add alarm ,-7 ,queue 
+0x78f7 034645 call sha_getw 
+0x78f8 034646 iforce temp 
+0x78f9 034647 add alarm ,-16 ,queue 
+0x78fa 034648 call sha_getw 
+0x78fb 034649 iadd temp ,temp 
+0x78fc 034650 add alarm ,-2 ,queue 
+0x78fd 034651 call sha_getw 
+0x78fe 034652 shasx pdata ,1 ,pdata 
+0x78ff 034653 iadd temp ,temp 
+0x7900 034654 add alarm ,-15 ,queue 
+0x7901 034655 call sha_getw 
+0x7902 034656 shasx pdata ,0 ,pdata 
+0x7903 034657 iadd temp ,temp 
+0x7904 034658 lshift2 alarm ,pdata 
+0x7905 034659 iadd timeup ,contw 
+0x7906 034660 istoret 4 ,contw 
+0x7907 034661 increase 1 ,alarm 
+0x7908 034662 compare 64 ,alarm ,0xff 
+0x7909 034663 nbranch sha_r_loop ,true 
+0x790a 034664 rtn 
+:      034667 sha_init:
+0x790b 034668 arg memh0 ,contr 
+0x790c 034669 force 7 ,regext_index 
+:      034670 sha_init_0:
+0x790d 034671 ifetch 4 ,contr 
+0x790e 034672 iforce regext 
+0x790f 034673 increase -1 ,regext_index 
+0x7910 034674 branch sha_init_0 ,positive 
+0x7911 034675 rtn 
+:      034677 sha:
+0x7912 034678 bpatchx patch3d_4 ,mem_patch3d 
+0x7913 034679 call sha_r 
+0x7914 034680 arg memahbak ,contw 
+0x7915 034681 force 0 ,regext_index 
+:      034682 sha_0:
+0x7916 034683 deposit regext 
+0x7917 034684 istore 4 ,contw 
+0x7918 034685 increase 1 ,regext_index 
+0x7919 034686 compare 8 ,regext_index ,0xff 
+0x791a 034687 nbranch sha_0 ,true 
+0x791b 034688 call enable_authrom 
+0x791c 034689 arg memk ,timeup 
+0x791d 034690 arg memdat ,alarm 
+0x791e 034691 force 64 ,loopcnt 
+:      034692 sha_loop:
+0x791f 034693 ifetcht 4 ,alarm 
+0x7920 034694 ifetch 4 ,timeup 
+0x7921 034695 increase 4 ,timeup 
+0x7922 034696 increase 4 ,alarm 
+0x7923 034697 iadd temp ,pdata 
+0x7924 034698 force 7 ,regext_index 
+0x7925 034699 iadd regext ,temp 
+0x7926 034700 force 4 ,regext_index 
+0x7927 034701 shasx regext ,3 ,pdata 
+0x7928 034702 iadd temp ,temp 
+0x7929 034703 force 5 ,regext_index 
+0x792a 034704 deposit regext 
+0x792b 034705 force 6 ,regext_index 
+0x792c 034706 ixor regext ,pdata 
+0x792d 034707 force 4 ,regext_index 
+0x792e 034708 iand regext ,pdata 
+0x792f 034709 force 6 ,regext_index 
+0x7930 034710 ixor regext ,pdata 
+0x7931 034711 iadd temp ,temp 
+0x7932 034712 force 7 ,regext_index 
+0x7933 034713 copy temp ,regext 
+0x7934 034714 force 3 ,regext_index 
+0x7935 034715 deposit regext 
+0x7936 034716 iadd temp ,regext 
+0x7937 034717 force 0 ,regext_index 
+0x7938 034718 deposit regext 
+0x7939 034719 force 1 ,regext_index 
+0x793a 034720 iand regext ,temp 
+0x793b 034721 ior regext ,pdata 
+0x793c 034722 force 2 ,regext_index 
+0x793d 034723 iand regext ,pdata 
+0x793e 034724 ior temp ,temp 
+0x793f 034725 force 0 ,regext_index 
+0x7940 034726 shasx regext ,2 ,pdata 
+0x7941 034727 iadd temp ,pdata 
+0x7942 034728 force 7 ,regext_index 
+0x7943 034729 iadd regext ,regext 
+0x7944 034730 regexrot 
+0x7945 034731 loop sha_loop 
+0x7946 034732 arg memahbak ,contr 
+0x7947 034733 force 0 ,regext_index 
+:      034734 sha_1:
+0x7948 034735 ifetch 4 ,contr 
+0x7949 034736 iadd regext ,regext 
+0x794a 034737 increase 1 ,regext_index 
+0x794b 034738 compare 8 ,regext_index ,0xff 
+0x794c 034739 nbranch sha_1 ,true 
+0x794d 034740 branch disable_authrom 
+:      034743 sha_result:
+0x794e 034744 arg memresult ,contw 
+0x794f 034745 force 7 ,regext_index 
+:      034746 sha_regext_save:
+0x7950 034747 deposit regext 
+0x7951 034748 istore 4 ,contw 
+0x7952 034749 increase -1 ,regext_index 
+0x7953 034750 branch sha_regext_save ,positive 
+0x7954 034751 rtn 
+:      034753 pad_xor:
+0x7955 034755 arg memdat ,contw 
+0x7956 034756 increase -4 ,contr 
+0x7957 034757 sub loopcnt ,16 ,rega 
+:      034758 pad_xor_0:
+0x7958 034759 ifetch 4 ,contr 
+0x7959 034760 ixor temp ,pdata 
+0x795a 034761 istore 4 ,contw 
+0x795b 034762 increase -8 ,contr 
+0x795c 034763 loop pad_xor_0 
+0x795d 034764 copy rega ,loopcnt 
+0x795e 034765 deposit temp 
+:      034766 pad_xor_1:
+0x795f 034767 istore 4 ,contw 
+0x7960 034768 loop pad_xor_1 
+0x7961 034769 rtn 
+:      034771 g_noninit_number_confirm:
+0x7962 034772 call g_noninit0 
+0x7963 034773 call sha_result 
+0x7964 034774 branch g_common0 
+:      034776 g_noninit:
+0x7965 034777 call g_noninit0 
+0x7966 034778 branch g_common0 
+:      034780 g_noninit0:
+0x7967 034781 arg mem_sp_pubkey_remote_x_end ,contr 
+0x7968 034782 arg memdat ,contw 
+0x7969 034783 force 6 ,loopcnt 
+0x796a 034784 call memcpy_dword_swap 
+0x796b 034785 arg mem_sp_pubkey_local_x_end ,contr 
+0x796c 034786 force 6 ,loopcnt 
+0x796d 034787 call memcpy_dword_swap 
+0x796e 034788 arg mem_sp_random_remote_end ,contr 
+0x796f 034789 call memcpy_dword_swap4 
+0x7970 034790 call sha_init 
+0x7971 034791 call sha 
+0x7972 034792 arg mem_sp_random_local_end ,contr 
+0x7973 034793 arg memdat ,contw 
+0x7974 034794 branch g_common 
+:      034796 g_init:
+0x7975 034797 arg mem_sp_pubkey_local_x_end ,contr 
+0x7976 034798 arg memdat ,contw 
+0x7977 034799 force 6 ,loopcnt 
+0x7978 034800 call memcpy_dword_swap 
+0x7979 034801 arg mem_sp_pubkey_remote_x_end ,contr 
+0x797a 034802 force 6 ,loopcnt 
+0x797b 034803 call memcpy_dword_swap 
+0x797c 034804 arg mem_sp_random_local_end ,contr 
+0x797d 034805 call memcpy_dword_swap4 
+0x797e 034806 call sha_init 
+0x797f 034807 call sha 
+0x7980 034808 arg mem_sp_random_remote_end ,contr 
+0x7981 034809 arg memdat ,contw 
+0x7982 034810 call g_common 
+0x7983 034811 branch g_common0 
+:      034813 g_common:
+0x7984 034814 call memcpy_dword_swap4 
+0x7985 034815 setarg 0x800000 
+0x7986 034816 lshift8 pdata ,pdata 
+0x7987 034817 istore 4 ,contw 
+0x7988 034818 force 5 ,loopcnt 
+0x7989 034819 call memset0 
+0x798a 034820 setarg 640 
+0x798b 034821 istore 4 ,contw 
+0x798c 034822 branch sha 
+:      034823 g_common0:
+0x798d 034824 fetch 4 ,memresult 
+0x798e 034826 arg 1000 ,rega 
+0x798f 034827 idiv rega 
+0x7990 034828 call wait_div_end 
+0x7991 034829 remainder pdata 
+0x7992 034830 store 4 ,mem_gkey 
+0x7993 034831 quotient pdata 
+0x7994 034832 arg 1000 ,rega 
+0x7995 034833 idiv rega 
+0x7996 034834 call wait_div_end 
+0x7997 034835 remainder pdata 
+0x7998 034836 arg 1000 ,rega 
+0x7999 034837 imul32 rega ,pdata 
+0x799a 034838 fetcht 4 ,mem_gkey 
+0x799b 034839 iadd temp ,pdata 
+0x799c 034840 store 4 ,mem_gkey 
+0x799d 034841 rtn 
+:      034843 function_f1_no_key:
+0x799e 034844 jam 0 ,mem_passkey_1bit 
+0x799f 034845 branch function_f1_common 
+:      034847 function_f1:
+0x79a0 034848 fetch 1 ,mem_ssp_mode_flag 
+0x79a1 034849 bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
+:      034850 function_f1_common:
+0x79a2 034851 bpatchx patch3d_5 ,mem_patch3d 
+0x79a3 034852 setarg 0x363636 
+0x79a4 034853 lshift8 pdata ,temp 
+0x79a5 034854 or_into 0x36 ,temp 
+0x79a6 034855 fetch 2 ,mem_sp_prarm_stack 
+0x79a7 034856 copy pdata ,contr 
+0x79a8 034857 force 4 ,loopcnt 
+0x79a9 034858 call pad_xor 
+0x79aa 034859 call sha_init 
+0x79ab 034860 call sha 
+0x79ac 034861 fetch 2 ,mem_sp_prarm_stack + 2 
+0x79ad 034862 copy pdata ,contr 
+0x79ae 034863 arg memdat ,contw 
+0x79af 034864 force 6 ,loopcnt 
+0x79b0 034865 call memcpy_dword_swap 
+0x79b1 034866 fetch 2 ,mem_sp_prarm_stack + 4 
+0x79b2 034867 copy pdata ,contr 
+0x79b3 034868 force 6 ,loopcnt 
+0x79b4 034869 call memcpy_dword_swap 
+0x79b5 034870 setarg 0x800000 
+0x79b6 034871 istore 3 ,contw 
+0x79b7 034873 fetch 1 ,mem_passkey_1bit 
+0x79b8 034875 istore 1 ,contw 
+0x79b9 034876 force 0 ,pdata 
+0x79ba 034877 istore 8 ,contw 
+0x79bb 034878 setarg 0x0388 
+0x79bc 034879 istore 4 ,contw 
+0x79bd 034880 call sha 
+0x79be 034881 call sha_result 
+0x79bf 034882 arg memresult ,contr 
+0x79c0 034883 arg memahsave ,contw 
+0x79c1 034884 call memcpy32 
+0x79c2 034886 setarg 0x5c5c5c 
+0x79c3 034887 lshift8 pdata ,temp 
+0x79c4 034888 or_into 0x5c ,temp 
+0x79c5 034889 fetch 2 ,mem_sp_prarm_stack 
+0x79c6 034890 copy pdata ,contr 
+0x79c7 034891 force 4 ,loopcnt 
+0x79c8 034892 call pad_xor 
+0x79c9 034893 call sha_init 
+0x79ca 034894 call sha 
+0x79cb 034895 arg memahsave_end ,contr 
+0x79cc 034896 arg memdat ,contw 
+0x79cd 034897 force 8 ,loopcnt 
+0x79ce 034898 call memcpy_dword_swap 
+0x79cf 034899 setarg 0x800000 
+0x79d0 034900 lshift8 pdata ,pdata 
+0x79d1 034901 istore 4 ,contw 
+0x79d2 034902 call bn_zero 
+0x79d3 034903 setarg 0x0300 
+0x79d4 034904 istore 4 ,contw 
+0x79d5 034905 call sha 
+0x79d6 034906 branch sha_result 
+:      034909 function_f2:
+0x79d7 034910 setarg 0x363636 
+0x79d8 034911 lshift8 pdata ,temp 
+0x79d9 034912 or_into 0x36 ,temp 
+0x79da 034913 arg mem_sp_dhkey_end ,contr 
+0x79db 034914 force 6 ,loopcnt 
+0x79dc 034915 call pad_xor 
+0x79dd 034916 call sha_init 
+0x79de 034917 call sha 
+0x79df 034918 fetch 2 ,mem_sp_prarm_stack + 12 
+0x79e0 034919 copy pdata ,contr 
+0x79e1 034920 arg memdat ,contw 
+0x79e2 034921 call memcpy_dword_swap4 
+0x79e3 034922 fetch 2 ,mem_sp_prarm_stack + 14 
+0x79e4 034923 copy pdata ,contr 
+0x79e5 034924 call memcpy_dword_swap4 
+0x79e6 034926 setarg 0x62746c 
+0x79e7 034927 lshift8 pdata ,pdata 
+0x79e8 034928 or_into 0x6b ,pdata 
+0x79e9 034929 istore 4 ,contw 
+0x79ea 034930 arg mem_addr_value_end ,contr 
+0x79eb 034931 force 3 ,loopcnt 
+0x79ec 034932 call memcpy_dword_swap 
+0x79ed 034934 setarg 0x800000 
+0x79ee 034935 lshift8 pdata ,pdata 
+0x79ef 034936 istore 4 ,contw 
+0x79f0 034937 force 0 ,pdata 
+0x79f1 034938 istore 8 ,contw 
+0x79f2 034939 setarg 0x0380 
+0x79f3 034940 istore 4 ,contw 
+0x79f4 034941 call sha 
+0x79f5 034943 call sha_result 
+0x79f6 034944 arg memresult ,contr 
+0x79f7 034945 arg memahsave ,contw 
+0x79f8 034946 call memcpy32 
+0x79f9 034948 setarg 0x5c5c5c 
+0x79fa 034949 lshift8 pdata ,temp 
+0x79fb 034950 or_into 0x5c ,temp 
+0x79fc 034951 arg mem_sp_dhkey_end ,contr 
+0x79fd 034952 force 6 ,loopcnt 
+0x79fe 034953 call pad_xor 
+0x79ff 034954 call sha_init 
+0x7a00 034955 call sha 
+0x7a01 034956 arg memahsave_end ,contr 
+0x7a02 034957 arg memdat ,contw 
+0x7a03 034958 force 8 ,loopcnt 
+0x7a04 034959 call memcpy_dword_swap 
+0x7a05 034960 setarg 0x800000 
+0x7a06 034961 lshift8 pdata ,pdata 
+0x7a07 034962 istore 4 ,contw 
+0x7a08 034963 call bn_zero 
+0x7a09 034964 setarg 0x0300 
+0x7a0a 034965 istore 4 ,contw 
+0x7a0b 034966 call sha 
+0x7a0c 034967 branch sha_result 
+:      034970 function_f3a:
+0x7a0d 034971 fetch 1 ,mem_ssp_mode_flag 
+0x7a0e 034972 bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
+:      034973 function_f3a_common:
+0x7a0f 034974 bpatchx patch3d_6 ,mem_patch3d 
+0x7a10 034975 setarg 0x363636 
+0x7a11 034976 lshift8 pdata ,temp 
+0x7a12 034977 or_into 0x36 ,temp 
+0x7a13 034978 arg mem_sp_dhkey_end ,contr 
+0x7a14 034979 force 6 ,loopcnt 
+0x7a15 034980 call pad_xor 
+0x7a16 034981 call sha_init 
+0x7a17 034982 call sha 
+0x7a18 034983 arg mem_sp_random_remote_end ,contr 
+0x7a19 034984 arg memdat ,contw 
+0x7a1a 034985 call memcpy_dword_swap4 
+0x7a1b 034986 arg mem_sp_random_local_end ,contr 
+0x7a1c 034987 call memcpy_dword_swap4 
+0x7a1d 034988 branch function_f3_common 
+:      034990 function_f3a_no_pin:
+0x7a1e 034991 setarg 0 
+0x7a1f 034992 store 4 ,mem_pin 
+0x7a20 034993 branch function_f3a_common 
+:      034995 function_f3b_no_pin:
+0x7a21 034996 setarg 0 
+0x7a22 034997 store 4 ,mem_pin 
+0x7a23 034998 branch function_f3b_common 
+:      035001 function_f3b:
+0x7a24 035002 fetch 1 ,mem_ssp_mode_flag 
+0x7a25 035003 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
+:      035004 function_f3b_common:
+0x7a26 035005 setarg 0x363636 
+0x7a27 035006 lshift8 pdata ,temp 
+0x7a28 035007 or_into 0x36 ,temp 
+0x7a29 035008 arg mem_sp_dhkey_end ,contr 
+0x7a2a 035009 force 6 ,loopcnt 
+0x7a2b 035010 call pad_xor 
+0x7a2c 035011 call sha_init 
+0x7a2d 035012 call sha 
+0x7a2e 035014 arg mem_sp_random_local_end ,contr 
+0x7a2f 035015 arg memdat ,contw 
+0x7a30 035016 call memcpy_dword_swap4 
+0x7a31 035017 arg mem_sp_random_remote_end ,contr 
+0x7a32 035018 call memcpy_dword_swap4 
+:      035019 function_f3_common:
+0x7a33 035020 setarg 0x0 
+0x7a34 035021 istore 8 ,contw 
+0x7a35 035022 istore 4 ,contw 
+0x7a36 035023 fetch 4 ,mem_pin 
+0x7a37 035024 istore 4 ,contw 
+0x7a38 035026 copy contw ,temp 
+0x7a39 035027 jam 0x80 ,mem_addr_padding 
+0x7a3a 035028 copy temp ,contw 
+0x7a3b 035029 arg mem_addr_iocap_end ,contr 
+0x7a3c 035030 call memcpy_dword_swap4 
+0x7a3d 035032 call sha 
+0x7a3e 035034 arg memdat ,contw 
+0x7a3f 035035 force 7 ,loopcnt 
+0x7a40 035036 call memset0 
+0x7a41 035037 istore 4 ,contw 
+0x7a42 035038 setarg 0x03F8 
+0x7a43 035039 istore 4 ,contw 
+0x7a44 035040 call sha 
+0x7a45 035041 call sha_result 
+0x7a46 035043 arg memresult ,contr 
+0x7a47 035044 arg memahsave ,contw 
+0x7a48 035045 call memcpy32 
+0x7a49 035047 setarg 0x5c5c5c 
+0x7a4a 035048 lshift8 pdata ,temp 
+0x7a4b 035049 or_into 0x5c ,temp 
+0x7a4c 035050 arg mem_sp_dhkey_end ,contr 
+0x7a4d 035051 force 6 ,loopcnt 
+0x7a4e 035052 call pad_xor 
+0x7a4f 035053 call sha_init 
+0x7a50 035054 call sha 
+0x7a51 035055 arg memahsave_end ,contr 
+0x7a52 035056 arg memdat ,contw 
+0x7a53 035057 force 8 ,loopcnt 
+0x7a54 035058 call memcpy_dword_swap 
+0x7a55 035059 setarg 0x800000 
+0x7a56 035060 lshift8 pdata ,pdata 
+0x7a57 035061 istore 4 ,contw 
+0x7a58 035062 call bn_zero 
+0x7a59 035063 setarg 0x0300 
+0x7a5a 035064 istore 4 ,contw 
+0x7a5b 035065 call sha 
+0x7a5c 035066 branch sha_result 
+:      035073 eckp_calc_init:
+0x7a5d 035074 jam 192 ,mem_ec_loopc 
+:      035075 eckp_calc_init_1:
+0x7a5e 035076 fetch 1 ,mem_ec_loopc 
+0x7a5f 035077 rtn blank 
+0x7a60 035078 increase -1 ,pdata 
+0x7a61 035079 store 1 ,mem_ec_loopc 
+0x7a62 035080 arg mem_k ,contr 
+0x7a63 035081 call bn_testbit 
+0x7a64 035082 branch eckp_calc_init_1 ,true 
+0x7a65 035083 arg mem_ax ,contr 
+0x7a66 035084 arg mem_cx ,contw 
+0x7a67 035085 branch ec_copy 
+:      035087 eckp_calc:
+0x7a68 035088 call ecdbl 
+0x7a69 035089 fetch 1 ,mem_ec_loopc 
+0x7a6a 035090 increase -1 ,pdata 
+0x7a6b 035091 store 1 ,mem_ec_loopc 
+0x7a6c 035092 arg mem_k ,contr 
+0x7a6d 035093 call bn_testbit 
+0x7a6e 035094 rtn true 
+0x7a6f 035095 branch ecadd 
+:      035097 memcpy_dword_swap4:
+0x7a70 035098 force 4 ,loopcnt 
+:      035099 memcpy_dword_swap:
+0x7a71 035100 increase -4 ,contr 
+:      035101 memcpy_dword_swap_loop:
+0x7a72 035102 ifetch 4 ,contr 
+0x7a73 035103 istore 4 ,contw 
+0x7a74 035104 increase -8 ,contr 
+0x7a75 035105 loop memcpy_dword_swap_loop 
+0x7a76 035106 rtn 
+:      035111 sp_initialize_256:
+0x7a77 035112 bpatchx patch3d_7 ,mem_patch3d 
+0x7a78 035113 fetch 1 ,mem_le_secure_connect_enable 
+0x7a79 035114 branch le_secure_connection_disable ,blank 
+0x7a7a 035115 call le_secure_connection_enable 
+0x7a7b 035116 call sp_clear_flags 
+0x7a7c 035118 branch sp_pubkey_calc_256 
+:      035123 sp_pubkey_calc_256:
+0x7a7d 035124 fetch 1 ,mem_le_sc_local_key_invalid 
+0x7a7e 035125 rtnne sp_key_invalid 
+0x7a7f 035126 fetch 1 ,mem_le_sc_calc 
+0x7a80 035127 rtnne sp_calc_standby 
+0x7a81 035129 arg mem_le_private_key_256 ,contw 
+0x7a82 035130 force 15 ,queue 
+0x7a83 035131 call random_generator 
+0x7a84 035132 random pdata 
+0x7a85 035133 rshift pdata ,pdata 
+0x7a86 035134 istore 2 ,contw 
+0x7a87 035136 arg mem_k_256 ,contw 
+0x7a88 035137 arg mem_le_private_key_256 ,contr 
+0x7a89 035138 call memcpy32 
+0x7a8a 035140 arg mem_ax_256 ,contw 
+0x7a8b 035141 arg mem_gx_256 ,contr 
+0x7a8c 035142 call memcpy64 
+0x7a8d 035144 arg mem_az_256 ,contw 
+0x7a8e 035145 call clear_mem_256 
+0x7a8f 035146 jam 1 ,mem_az_256 
+0x7a90 035148 call eckp_calc_init_256 
+0x7a91 035149 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
+0x7a92 035150 rtn 
+:      035152 sp_pubkey_generated_256:
+0x7a93 035153 arg mem_le_pubkey_local_x_256 ,contw 
+0x7a94 035154 arg mem_bx_256 ,contr 
+0x7a95 035155 call memcpy64 
+0x7a96 035156 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
+0x7a97 035157 jam sp_calc_standby ,mem_le_sc_calc 
+0x7a98 035158 rtn 
+:      035162 sp_dhkey_calc_256:
+0x7a99 035163 fetch 1 ,mem_sp_dhkey_invalid 
+0x7a9a 035164 rtnne sp_key_invalid 
+0x7a9b 035165 fetch 1 ,mem_le_sc_calc 
+0x7a9c 035166 rtnne sp_calc_standby 
+0x7a9d 035168 arg mem_k_256 ,contw 
+0x7a9e 035169 arg mem_le_private_key_256 ,contr 
+0x7a9f 035170 call memcpy32 
+0x7aa0 035172 arg mem_ax_256 ,contw 
+0x7aa1 035173 arg mem_le_pubkey_remote_x_256 ,contr 
+0x7aa2 035174 call memcpy64 
+0x7aa3 035176 arg mem_az_256 ,contw 
+0x7aa4 035177 call clear_mem_256 
+0x7aa5 035178 jam 1 ,mem_az_256 
+0x7aa6 035180 call eckp_calc_init_256 
+0x7aa7 035181 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
+0x7aa8 035182 rtn 
+:      035185 sp_dhkey_generated_256:
+0x7aa9 035187 arg mem_le_dhkey_256 ,contw 
+0x7aaa 035188 arg mem_bx_256 ,contr 
+0x7aab 035189 call memcpy32 
+0x7aac 035190 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
+0x7aad 035191 jam sp_calc_standby ,mem_le_sc_calc 
+0x7aae 035192 rtn 
+:      035196 sp_calc_sequence_256:
+0x7aaf 035197 fetch 1 ,mem_le_secure_connect_enable 
+0x7ab0 035198 rtn blank 
+0x7ab1 035199 fetch 1 ,mem_le_sc_calc 
+0x7ab2 035200 rtn blank 
+0x7ab3 035201 increase 0x80 ,pdata 
+0x7ab4 035202 store 1 ,mem_le_sc_calc 
+0x7ab5 035203 rtnbit1 7 
+0x7ab6 035204 fetch 2 ,mem_ec_loopc 
+0x7ab7 035205 branch sp_calc_sequence_done_256 ,blank 
+0x7ab8 035206 branch eckp_calc_256 
+:      035208 sp_calc_sequence_done_256:
+0x7ab9 035209 bpatchx patch3e_0 ,mem_patch3e 
+0x7aba 035210 call ecunmapz_256 
+0x7abb 035211 fetch 1 ,mem_le_sc_calc 
+0x7abc 035212 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
+0x7abd 035213 beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
+0x7abe 035214 rtn 
+:      035217 eckp_calc_256:
+0x7abf 035218 call ecdbl_256 
+0x7ac0 035219 fetch 2 ,mem_ec_loopc 
+0x7ac1 035220 increase -1 ,pdata 
+0x7ac2 035221 store 2 ,mem_ec_loopc 
+0x7ac3 035222 arg mem_k_256 ,contr 
+0x7ac4 035223 call bn_testbit 
+0x7ac5 035224 rtn true 
+0x7ac6 035225 branch ecadd_256 
+:      035227 eckp_calc_init_256:
+0x7ac7 035228 bpatchx patch3e_1 ,mem_patch3e 
+0x7ac8 035229 setarg 256 ,pdata 
+0x7ac9 035230 store 2 ,mem_ec_loopc 
+:      035231 eckp_calc_init_256_1:
+0x7aca 035232 fetch 2 ,mem_ec_loopc 
+0x7acb 035233 rtn blank 
+0x7acc 035234 increase -1 ,pdata 
+0x7acd 035235 store 2 ,mem_ec_loopc 
+0x7ace 035236 arg mem_k_256 ,contr 
+0x7acf 035237 call bn_testbit 
+0x7ad0 035238 branch eckp_calc_init_256_1 ,true 
+0x7ad1 035239 arg mem_ax_256 ,contr 
+0x7ad2 035240 arg mem_cx_256 ,contw 
+0x7ad3 035241 branch memcpy96 
+:      035244 ecunmapz_256:
+0x7ad4 035245 arg mem_cz_256 ,rega 
+0x7ad5 035246 arg mem_t3_256 ,contw 
+0x7ad6 035247 call bn_invmod_256 
+0x7ad7 035248 arg mem_t3_256 ,rega 
+0x7ad8 035249 arg mem_t1_256 ,contw 
+0x7ad9 035250 call bn_sqrmod_256 
+0x7ada 035251 arg mem_cx_256 ,rega 
+0x7adb 035252 arg mem_t1_256 ,regb 
+0x7adc 035253 arg mem_bx_256 ,contw 
+0x7add 035254 call bn_mulmod_256 
+0x7ade 035255 arg mem_t3_256 ,rega 
+0x7adf 035256 arg mem_t1_256 ,regb 
+0x7ae0 035257 arg mem_t2_256 ,contw 
+0x7ae1 035258 call bn_mulmod_256 
+0x7ae2 035259 arg mem_cy_256 ,rega 
+0x7ae3 035260 arg mem_t2_256 ,regb 
+0x7ae4 035261 arg mem_by_256 ,contw 
+0x7ae5 035262 branch bn_mulmod_256 
+:      035264 ecdbl_256:
+0x7ae6 035265 arg mem_cz_256 ,rega 
+0x7ae7 035266 arg mem_t2_256 ,contw 
+0x7ae8 035267 call bn_sqrmod_256 
+0x7ae9 035268 arg mem_t2_256 ,rega 
+0x7aea 035269 arg mem_t3_256 ,contw 
+0x7aeb 035270 call bn_sqrmod_256 
+0x7aec 035272 arg mem_a_256 ,rega 
+0x7aed 035273 arg mem_t3_256 ,regb 
+0x7aee 035274 arg mem_t3_256 ,contw 
+0x7aef 035275 call bn_mulmod_256 
+0x7af0 035276 arg mem_cx_256 ,rega 
+0x7af1 035277 arg mem_t2_256 ,contw 
+0x7af2 035278 call bn_sqrmod_256 
+0x7af3 035280 arg mem_t2_256 ,contr 
+0x7af4 035281 arg mem_t1_256 ,contw 
+0x7af5 035282 call memcpy32 
+0x7af6 035283 arg mem_t1_256 ,rega 
+0x7af7 035284 call bn_lshiftmod_256 
+0x7af8 035285 arg mem_t2_256 ,rega 
+0x7af9 035286 arg mem_t1_256 ,regb 
+0x7afa 035287 arg mem_t2_256 ,contw 
+0x7afb 035288 call bn_addmod_256 
+0x7afc 035290 arg mem_t2_256 ,rega 
+0x7afd 035291 arg mem_t3_256 ,regb 
+0x7afe 035292 arg mem_t2_256 ,contw 
+0x7aff 035293 call bn_addmod_256 
+0x7b00 035295 arg mem_cx_256 ,contr 
+0x7b01 035296 arg mem_t1_256 ,contw 
+0x7b02 035297 call memcpy32 
+0x7b03 035298 arg mem_cy_256 ,rega 
+0x7b04 035299 arg mem_t3_256 ,contw 
+0x7b05 035300 call bn_sqrmod_256 
+0x7b06 035301 arg mem_t1_256 ,rega 
+0x7b07 035302 call bn_lshiftmod_256 
+0x7b08 035303 arg mem_t1_256 ,rega 
+0x7b09 035304 call bn_lshiftmod_256 
+0x7b0a 035305 arg mem_t1_256 ,rega 
+0x7b0b 035306 arg mem_t3_256 ,regb 
+0x7b0c 035307 arg mem_t1_256 ,contw 
+0x7b0d 035308 call bn_mulmod_256 
+0x7b0e 035309 arg mem_t3_256 ,rega 
+0x7b0f 035310 arg mem_t0_256 ,contw 
+0x7b10 035311 call bn_sqrmod_256 
+0x7b11 035312 arg mem_t0_256 ,rega 
+0x7b12 035313 call bn_lshiftmod_256 
+0x7b13 035314 arg mem_t0_256 ,rega 
+0x7b14 035315 call bn_lshiftmod_256 
+0x7b15 035316 arg mem_t0_256 ,rega 
+0x7b16 035317 call bn_lshiftmod_256 
+0x7b17 035318 arg mem_cy_256 ,contr 
+0x7b18 035319 arg mem_t3_256 ,contw 
+0x7b19 035320 call memcpy32 
+0x7b1a 035321 arg mem_t3_256 ,rega 
+0x7b1b 035322 call bn_lshiftmod_256 
+0x7b1c 035323 arg mem_t3_256 ,rega 
+0x7b1d 035324 arg mem_cz_256 ,regb 
+0x7b1e 035325 arg mem_cz_256 ,contw 
+0x7b1f 035326 call bn_mulmod_256 
+0x7b20 035329 arg mem_t2_256 ,rega 
+0x7b21 035330 arg mem_t3_256 ,contw 
+0x7b22 035331 call bn_sqrmod_256 
+0x7b23 035333 arg mem_t3_256 ,rega 
+0x7b24 035334 arg mem_t1_256 ,regb 
+0x7b25 035335 arg mem_t3_256 ,contw 
+0x7b26 035336 call bn_submod_256 
+0x7b27 035337 arg mem_t3_256 ,rega 
+0x7b28 035338 arg mem_t1_256 ,regb 
+0x7b29 035339 arg mem_cx_256 ,contw 
+0x7b2a 035340 call bn_submod_256 
+0x7b2b 035341 arg mem_t1_256 ,rega 
+0x7b2c 035342 arg mem_cx_256 ,regb 
+0x7b2d 035343 arg mem_t3_256 ,contw 
+0x7b2e 035344 call bn_submod_256 
+0x7b2f 035345 arg mem_t3_256 ,rega 
+0x7b30 035346 arg mem_t2_256 ,regb 
+0x7b31 035347 arg mem_t3_256 ,contw 
+0x7b32 035348 call bn_mulmod_256 
+0x7b33 035349 arg mem_t3_256 ,rega 
+0x7b34 035350 arg mem_t0_256 ,regb 
+0x7b35 035351 arg mem_cy_256 ,contw 
+0x7b36 035352 branch bn_submod_256 
+:      035354 ecadd_256:
+0x7b37 035356 arg mem_az_256 ,rega 
+0x7b38 035357 arg mem_t7_256 ,contw 
+0x7b39 035358 call bn_sqrmod_256 
+0x7b3a 035359 arg mem_cx_256 ,rega 
+0x7b3b 035360 arg mem_t7_256 ,regb 
+0x7b3c 035361 arg mem_t0_256 ,contw 
+0x7b3d 035362 call bn_mulmod_256 
+0x7b3e 035365 arg mem_az_256 ,rega 
+0x7b3f 035366 arg mem_t7_256 ,regb 
+0x7b40 035367 arg mem_t7_256 ,contw 
+0x7b41 035368 call bn_mulmod_256 
+0x7b42 035369 arg mem_cy_256 ,rega 
+0x7b43 035370 arg mem_t7_256 ,regb 
+0x7b44 035371 arg mem_t1_256 ,contw 
+0x7b45 035372 call bn_mulmod_256 
+0x7b46 035375 arg mem_cz_256 ,rega 
+0x7b47 035376 arg mem_t7_256 ,contw 
+0x7b48 035377 call bn_sqrmod_256 
+0x7b49 035378 arg mem_ax_256 ,rega 
+0x7b4a 035379 arg mem_t7_256 ,regb 
+0x7b4b 035380 arg mem_t2_256 ,contw 
+0x7b4c 035381 call bn_mulmod_256 
+0x7b4d 035383 arg mem_cz_256 ,rega 
+0x7b4e 035384 arg mem_t7_256 ,regb 
+0x7b4f 035385 arg mem_t7_256 ,contw 
+0x7b50 035386 call bn_mulmod_256 
+0x7b51 035387 arg mem_ay_256 ,rega 
+0x7b52 035388 arg mem_t7_256 ,regb 
+0x7b53 035389 arg mem_t3_256 ,contw 
+0x7b54 035390 call bn_mulmod_256 
+0x7b55 035395 arg mem_t0_256 ,regb 
+0x7b56 035396 arg mem_t2_256 ,rega 
+0x7b57 035397 arg mem_t7_256 ,contw 
+0x7b58 035398 call bn_submod_256 
+0x7b59 035399 arg mem_t0_256 ,rega 
+0x7b5a 035400 arg mem_t2_256 ,regb 
+0x7b5b 035401 arg mem_t0_256 ,contw 
+0x7b5c 035402 call bn_addmod_256 
+0x7b5d 035405 arg mem_t1_256 ,regb 
+0x7b5e 035406 arg mem_t3_256 ,rega 
+0x7b5f 035407 arg mem_t2_256 ,contw 
+0x7b60 035408 call bn_submod_256 
+0x7b61 035409 arg mem_t1_256 ,rega 
+0x7b62 035410 arg mem_t3_256 ,regb 
+0x7b63 035411 arg mem_t1_256 ,contw 
+0x7b64 035412 call bn_addmod_256 
+0x7b65 035413 arg mem_t1_256 ,rega 
+0x7b66 035414 arg mem_t7_256 ,regb 
+0x7b67 035415 arg mem_t1_256 ,contw 
+0x7b68 035416 call bn_mulmod_256 
+0x7b69 035417 arg mem_cz_256 ,rega 
+0x7b6a 035418 arg mem_az_256 ,regb 
+0x7b6b 035419 arg mem_t3_256 ,contw 
+0x7b6c 035420 call bn_mulmod_256 
+0x7b6d 035421 arg mem_t3_256 ,rega 
+0x7b6e 035422 arg mem_t7_256 ,regb 
+0x7b6f 035423 arg mem_cz_256 ,contw 
+0x7b70 035424 call bn_mulmod_256 
+0x7b71 035426 arg mem_t7_256 ,rega 
+0x7b72 035427 arg mem_t7_256 ,contw 
+0x7b73 035428 call bn_sqrmod_256 
+0x7b74 035429 arg mem_t7_256 ,rega 
+0x7b75 035430 arg mem_t0_256 ,regb 
+0x7b76 035431 arg mem_t3_256 ,contw 
+0x7b77 035432 call bn_mulmod_256 
+0x7b78 035433 arg mem_t7_256 ,rega 
+0x7b79 035434 arg mem_t1_256 ,regb 
+0x7b7a 035435 arg mem_t1_256 ,contw 
+0x7b7b 035436 call bn_mulmod_256 
+0x7b7c 035437 arg mem_t2_256 ,rega 
+0x7b7d 035438 arg mem_cx_256 ,contw 
+0x7b7e 035439 call bn_sqrmod_256 
+0x7b7f 035440 arg mem_cx_256 ,rega 
+0x7b80 035441 arg mem_t3_256 ,regb 
+0x7b81 035442 arg mem_cx_256 ,contw 
+0x7b82 035443 call bn_submod_256 
+0x7b83 035444 arg mem_cx_256 ,contr 
+0x7b84 035445 arg mem_t7_256 ,contw 
+0x7b85 035446 call memcpy32 
+0x7b86 035447 arg mem_t7_256 ,rega 
+0x7b87 035448 call bn_lshiftmod_256 
+0x7b88 035449 arg mem_t3_256 ,rega 
+0x7b89 035450 arg mem_t7_256 ,regb 
+0x7b8a 035451 arg mem_t3_256 ,contw 
+0x7b8b 035452 call bn_submod_256 
+0x7b8c 035453 arg mem_t3_256 ,rega 
+0x7b8d 035454 arg mem_t2_256 ,regb 
+0x7b8e 035455 arg mem_t2_256 ,contw 
+0x7b8f 035456 call bn_mulmod_256 
+0x7b90 035457 arg mem_t2_256 ,rega 
+0x7b91 035458 arg mem_t1_256 ,regb 
+0x7b92 035459 arg mem_cy_256 ,contw 
+0x7b93 035460 call bn_submod_256 
+0x7b94 035461 arg mem_cy_256 ,rega 
+0x7b95 035462 arg mem_p_256 ,regb 
+0x7b96 035463 arg mem_cy_256 ,contw 
+0x7b97 035464 force 0 ,regc 
+0x7b98 035465 fetch 1 ,mem_cy_256 
+0x7b99 035466 isolate1 0 ,pdata 
+0x7b9a 035467 call bn_add_256 ,true 
+0x7b9b 035468 copy regc ,alarm 
+0x7b9c 035469 arg mem_cy_256 ,rega 
+0x7b9d 035470 call bn_rshift_256 
+0x7b9e 035471 fetch 1 ,mem_cy5_256 
+0x7b9f 035472 isolate1 0 ,alarm 
+0x7ba0 035473 setflag true ,7 ,pdata 
+0x7ba1 035474 store 1 ,mem_cy5_256 
+0x7ba2 035475 rtn 
+:      035477 bn_invmod_256:
+0x7ba3 035478 copy contw ,timeup 
+0x7ba4 035479 arg mem_tmp0_256 ,contw 
+0x7ba5 035480 call clear_mem_256 
+0x7ba6 035481 force 0 ,pdata 
+0x7ba7 035483 store 4 ,mem_t2_256 
+0x7ba8 035484 jam 1 ,mem_tmp0_256 
+0x7ba9 035485 arg mem_tmp1_256 ,contw 
+0x7baa 035486 call clear_mem_512 
+0x7bab 035487 arg mem_p_256 ,contr 
+0x7bac 035488 arg mem_tmp2_256 ,contw 
+0x7bad 035489 call memcpy32 
+0x7bae 035490 copy rega ,contr 
+0x7baf 035491 arg mem_tmp3_256 ,contw 
+0x7bb0 035492 call memcpy32 
+:      035498 bn_invmod_256_2:
+0x7bb1 035499 arg mem_tmp3_256 ,contr 
+0x7bb2 035500 call bn_eq_zero_256 
+0x7bb3 035501 branch bn_invmod_256_0 ,blank 
+0x7bb4 035506 arg mem_tmp3_256 ,rega 
+0x7bb5 035507 arg mem_tmp0_256 ,regb 
+0x7bb6 035508 call bn_rshifteven_256 
+0x7bb7 035509 arg mem_tmp2_256 ,rega 
+0x7bb8 035510 arg mem_tmp1_256 ,regb 
+0x7bb9 035511 call bn_rshifteven_256 
+0x7bba 035513 arg mem_tmp3_256 ,rega 
+0x7bbb 035514 arg mem_tmp2_256 ,regb 
+0x7bbc 035515 call bn_bigeq_256 
+0x7bbd 035516 branch bn_invmod_256_1 ,positive 
+0x7bbe 035517 arg mem_tmp2_256 ,rega 
+0x7bbf 035518 arg mem_tmp3_256 ,regb 
+0x7bc0 035519 copy rega ,contw 
+0x7bc1 035520 call bn_sub_256 
+0x7bc2 035521 arg mem_tmp0_256 ,rega 
+0x7bc3 035522 arg mem_tmp1_256 ,regb 
+0x7bc4 035523 copy regb ,contw 
+0x7bc5 035524 call bn_add_256 
+0x7bc6 035525 ifetch 1 ,rega 
+0x7bc7 035526 iadd regc ,regc 
+0x7bc8 035527 ifetch 1 ,regb 
+0x7bc9 035528 iadd regc ,pdata 
+0x7bca 035529 istore 1 ,regb 
+0x7bcb 035530 branch bn_invmod_256_2 
+:      035531 bn_invmod_256_1:
+0x7bcc 035532 arg mem_tmp3_256 ,rega 
+0x7bcd 035533 arg mem_tmp2_256 ,regb 
+0x7bce 035534 copy rega ,contw 
+0x7bcf 035535 call bn_sub_256 
+0x7bd0 035536 arg mem_tmp1_256 ,rega 
+0x7bd1 035537 arg mem_tmp0_256 ,regb 
+0x7bd2 035538 copy regb ,contw 
+0x7bd3 035539 call bn_add_256 
+0x7bd4 035540 ifetch 1 ,rega 
+0x7bd5 035541 iadd regc ,regc 
+0x7bd6 035542 ifetch 1 ,regb 
+0x7bd7 035543 iadd regc ,pdata 
+0x7bd8 035544 istore 1 ,regb 
+0x7bd9 035545 branch bn_invmod_256_2 
+:      035546 bn_invmod_256_0:
+0x7bda 035548 arg mem_tmp1_256 ,rega 
+0x7bdb 035549 copy timeup ,contw 
+0x7bdc 035550 call bn_p256mod 
+0x7bdd 035552 arg mem_p_256 ,rega 
+0x7bde 035553 copy timeup ,regb 
+0x7bdf 035554 copy timeup ,contw 
+0x7be0 035555 branch bn_submod_256 
+:      035558 bn_mulmod_256:
+0x7be1 035559 copy contw ,timeup 
+0x7be2 035561 force 0 ,regext_index 
+0x7be3 035563 arg mem_tmp1_256 ,contw 
+0x7be4 035564 call clear_mem_512 
+0x7be5 035565 arg mem_regext ,contw 
+0x7be6 035566 call clear_mem_512 
+0x7be7 035570 copy rega ,contr 
+0x7be8 035572 jam 0 ,mem_regext 
+0x7be9 035573 setarg 0 
+0x7bea 035574 call bn_load_mem 
+0x7beb 035575 copy regb ,contr 
+0x7bec 035576 call bn_load_256 
+0x7bed 035579 force 0 ,queue 
+0x7bee 035580 arg mem_tmp1_256 ,contw 
+:      035581 bn_mulmod_256_1:
+0x7bef 035584 arg mem_regext ,temp 
+0x7bf0 035585 copy queue ,regb 
+0x7bf1 035586 lshift2 regb ,pdata 
+0x7bf2 035588 iadd temp ,regb 
+0x7bf3 035589 force 0 ,temp 
+0x7bf4 035590 force 0 ,regc 
+:      035591 bn_mulmod_256_0:
+0x7bf5 035596 ifetch 4 ,contw 
+0x7bf6 035597 iforce rega 
+0x7bf7 035600 ifetch 4 ,regb 
+0x7bf8 035601 copy regc ,regext_index 
+0x7bf9 035602 imul32 regext ,pdata 
+0x7bfa 035603 iadd rega ,pdata 
+0x7bfb 035604 iadd temp ,pdata 
+0x7bfc 035605 istore 4 ,contw 
+0x7bfd 035606 rshift32 pdata ,temp 
+0x7bfe 035607 increase 1 ,regc 
+0x7bff 035608 compare 8 ,regc ,0xff 
+0x7c00 035609 nbranch bn_mulmod_256_0 ,true 
+0x7c01 035611 deposit temp 
+0x7c02 035612 istore 4 ,contw 
+0x7c03 035613 increase -32 ,contw 
+0x7c04 035616 increase 1 ,queue 
+0x7c05 035617 compare 8 ,queue ,0xff 
+0x7c06 035618 nbranch bn_mulmod_256_1 ,true 
+0x7c07 035619 arg mem_tmp1_256 ,rega 
+0x7c08 035620 copy timeup ,contw 
+0x7c09 035621 branch bn_p256mod 
+:      035623 bn_p256mod:
+0x7c0a 035624 bpatchx patch3e_2 ,mem_patch3e 
+0x7c0b 035625 copy contw ,timeup 
+0x7c0c 035626 copy rega ,alarm 
+0x7c0d 035627 arg mem_tmp2_256 ,regb 
+0x7c0e 035628 copy regb ,contw 
+0x7c0f 035629 call memset0_4 
+0x7c10 035630 istore 8 ,contw 
+0x7c11 035631 add rega ,44 ,contr 
+0x7c12 035632 call memcpy8 
+0x7c13 035633 call memcpy12 
+0x7c14 035634 copy regb ,rega 
+0x7c15 035635 call bn_lshiftmod_256 
+0x7c16 035636 arg mem_tmp2_256 ,regb 
+0x7c17 035637 copy alarm ,rega 
+0x7c18 035638 copy timeup ,contw 
+0x7c19 035639 call bn_addmod_256 
+0x7c1a 035641 arg mem_tmp2_256 ,regb 
+0x7c1b 035642 copy regb ,contw 
+0x7c1c 035643 call memset0_4 
+0x7c1d 035644 istore 8 ,contw 
+0x7c1e 035645 add alarm ,48 ,contr 
+0x7c1f 035646 call memcpy16 
+0x7c20 035647 call memset0_4 
+0x7c21 035648 copy regb ,rega 
+0x7c22 035649 call bn_lshiftmod_256 
+0x7c23 035653 arg mem_tmp2_256 ,regb 
+0x7c24 035654 copy timeup ,rega 
+0x7c25 035655 copy rega ,contw 
+0x7c26 035656 call bn_addmod_256 
+0x7c27 035660 arg mem_tmp2_256 ,regb 
+0x7c28 035661 copy regb ,contw 
+0x7c29 035662 add alarm ,32 ,contr 
+0x7c2a 035663 call memcpy12 
+0x7c2b 035664 call memset0_4 
+0x7c2c 035665 istore 8 ,contw 
+0x7c2d 035666 add alarm ,56 ,contr 
+0x7c2e 035667 call memcpy8 
+0x7c2f 035668 copy timeup ,rega 
+0x7c30 035669 copy rega ,contw 
+0x7c31 035670 call bn_addmod_256 
+0x7c32 035674 arg mem_tmp2_256 ,regb 
+0x7c33 035675 copy regb ,contw 
+0x7c34 035676 add alarm ,36 ,contr 
+0x7c35 035677 call memcpy12 
+0x7c36 035678 add alarm ,52 ,contr 
+0x7c37 035679 call memcpy12 
+0x7c38 035680 add alarm ,52 ,contr 
+0x7c39 035681 call memcpy4 
+0x7c3a 035682 add alarm ,32 ,contr 
+0x7c3b 035683 call memcpy4 
+0x7c3c 035684 copy timeup ,rega 
+0x7c3d 035685 copy rega ,contw 
+0x7c3e 035686 call bn_addmod_256 
+0x7c3f 035689 arg mem_tmp2_256 ,regb 
+0x7c40 035690 copy regb ,contw 
+0x7c41 035691 add alarm ,44 ,contr 
+0x7c42 035692 call memcpy12 
+0x7c43 035693 call memset0_4 
+0x7c44 035694 istore 8 ,contw 
+0x7c45 035695 add alarm ,32 ,contr 
+0x7c46 035696 call memcpy4 
+0x7c47 035697 add alarm ,40 ,contr 
+0x7c48 035698 call memcpy4 
+0x7c49 035699 copy timeup ,rega 
+0x7c4a 035700 copy rega ,contw 
+0x7c4b 035701 call bn_submod_256 
+0x7c4c 035704 arg mem_tmp2_256 ,regb 
+0x7c4d 035705 copy regb ,contw 
+0x7c4e 035706 add alarm ,48 ,contr 
+0x7c4f 035707 call memcpy8 
+0x7c50 035708 call memcpy8 
+0x7c51 035709 force 0 ,pdata 
+0x7c52 035710 istore 8 ,contw 
+0x7c53 035711 add alarm ,36 ,contr 
+0x7c54 035712 call memcpy4 
+0x7c55 035713 add alarm ,44 ,contr 
+0x7c56 035714 call memcpy4 
+0x7c57 035715 copy timeup ,rega 
+0x7c58 035716 copy rega ,contw 
+0x7c59 035717 call bn_submod_256 
+0x7c5a 035720 arg mem_tmp2_256 ,regb 
+0x7c5b 035721 copy regb ,contw 
+0x7c5c 035722 add alarm ,52 ,contr 
+0x7c5d 035723 call memcpy12 
+0x7c5e 035724 add alarm ,32 ,contr 
+0x7c5f 035725 call memcpy12 
+0x7c60 035726 call memset0_4 
+0x7c61 035727 add alarm ,48 ,contr 
+0x7c62 035728 call memcpy4 
+0x7c63 035729 copy timeup ,rega 
+0x7c64 035730 copy rega ,contw 
+0x7c65 035731 call bn_submod_256 
+0x7c66 035734 arg mem_tmp2_256 ,regb 
+0x7c67 035735 copy regb ,contw 
+0x7c68 035736 add alarm ,56 ,contr 
+0x7c69 035737 call memcpy8 
+0x7c6a 035738 call memset0_4 
+0x7c6b 035739 add alarm ,36 ,contr 
+0x7c6c 035740 call memcpy12 
+0x7c6d 035741 call memset0_4 
+0x7c6e 035742 add alarm ,52 ,contr 
+0x7c6f 035743 call memcpy4 
+0x7c70 035744 copy timeup ,rega 
+0x7c71 035745 copy rega ,contw 
+0x7c72 035746 branch bn_submod_256 
+:      035749 bn_load_mem:
+0x7c73 035750 force 32 ,loopcnt 
+0x7c74 035751 arg mem_regext ,contw 
+0x7c75 035752 iadd contw ,contw 
+0x7c76 035753 branch memcpy 
+:      035755 bn_load_256:
+0x7c77 035756 force 8 ,loopcnt 
+0x7c78 035757 branch bn_load_0 
+:      035759 bn_sqrmod_256:
+0x7c79 035760 copy rega ,regb 
+0x7c7a 035761 branch bn_mulmod_256 
+:      035763 bn_add_256:
+0x7c7b 035764 force 8 ,loopcnt 
+0x7c7c 035765 branch bn_add + 1 
+:      035767 bn_addmod_256:
+0x7c7d 035768 call bn_add_256 
+0x7c7e 035769 copy contw ,rega 
+0x7c7f 035770 branch bn_lshiftmod_ismod_256 
+:      035772 bn_lshiftmod_256:
+0x7c80 035773 call bn_lshift_256 
+:      035774 bn_lshiftmod_ismod_256:
+0x7c81 035775 isolate1 0 ,regc 
+0x7c82 035776 branch bn_lshiftmod_p_256 ,true 
+0x7c83 035777 arg mem_p_256 ,regb 
+0x7c84 035778 copy rega ,regc 
+0x7c85 035779 increase -32 ,rega 
+0x7c86 035780 call bn_bigeq_256 
+0x7c87 035781 nrtn positive 
+0x7c88 035782 copy regc ,rega 
+0x7c89 035783 branch sub_p2_256 
+:      035785 bn_lshiftmod_p_256:
+0x7c8a 035786 call sub_p2_256 
+0x7c8b 035788 copy rega ,regc 
+0x7c8c 035789 increase -32 ,rega 
+0x7c8d 035790 arg mem_p_256 ,regb 
+0x7c8e 035791 call bn_bigeq_256 
+0x7c8f 035792 nrtn positive 
+0x7c90 035793 copy regc ,rega 
+0x7c91 035794 branch sub_p2_256 
+:      035797 sub_p2_256:
+0x7c92 035798 increase -32 ,rega 
+0x7c93 035799 arg mem_p_256 ,regb 
+0x7c94 035800 copy rega ,contw 
+0x7c95 035801 branch bn_sub_256 
+:      035806 bn_submod_256:
+0x7c96 035807 call bn_sub_256 
+0x7c97 035809 branch bn_submod_256_np ,true 
+0x7c98 035812 add contw ,-32 ,rega 
+0x7c99 035813 arg mem_p_256 ,regb 
+0x7c9a 035814 call bn_bigeq_256 
+0x7c9b 035815 nrtn positive 
+0x7c9c 035816 arg mem_p_256 ,regb 
+0x7c9d 035817 add contw ,-32 ,rega 
+0x7c9e 035819 copy rega ,contw 
+0x7c9f 035820 branch bn_sub_256 
+:      035821 bn_submod_256_np:
+0x7ca0 035822 add contw ,-32 ,rega 
+0x7ca1 035823 arg mem_p_256 ,regb 
+0x7ca2 035824 copy rega ,contw 
+0x7ca3 035825 call bn_add_256 
+0x7ca4 035827 rtn true 
+0x7ca5 035828 add contw ,-32 ,rega 
+0x7ca6 035829 arg mem_p_256 ,regb 
+0x7ca7 035830 copy rega ,contw 
+0x7ca8 035831 branch bn_add_256 
+:      035835 bn_sub_256:
+0x7ca9 035836 force 8 ,loopcnt 
+0x7caa 035837 branch bn_sub + 1 
+:      035839 bn_rshift_256:
+0x7cab 035840 force 8 ,loopcnt 
+0x7cac 035841 increase 28 ,rega 
+0x7cad 035842 branch bn_rshift 
+:      035844 bn_lshift_256:
+0x7cae 035845 force 8 ,loopcnt 
+0x7caf 035846 force 0 ,regc 
+0x7cb0 035847 branch bn_lshift_0 
+:      035849 bn_bigeq_256:
+0x7cb1 035850 force 8 ,loopcnt 
+0x7cb2 035851 increase 28 ,rega 
+0x7cb3 035852 increase 28 ,regb 
+0x7cb4 035853 branch bn_bigeq_0 
+:      035856 bn_eq_zero_256:
+0x7cb5 035857 ifetch 8 ,contr 
+0x7cb6 035858 nrtn blank 
+0x7cb7 035859 branch bn_eq_zero 
+:      035864 bn_rshifteven_256:
+0x7cb8 035865 copy rega ,alarm 
+:      035866 bn_rshifteven_256_1:
+0x7cb9 035867 copy alarm ,rega 
+0x7cba 035868 ifetch 1 ,rega 
+0x7cbb 035869 isolate1 0 ,pdata 
+0x7cbc 035870 rtn true 
+0x7cbd 035871 call bn_rshift_256 
+0x7cbe 035872 ifetch 1 ,regb 
+0x7cbf 035873 isolate0 0 ,pdata 
+0x7cc0 035874 branch bn_rshifteven_256_0 ,true 
+0x7cc1 035875 arg mem_p_256 ,rega 
+0x7cc2 035876 copy regb ,contw 
+0x7cc3 035877 call bn_add_256 
+0x7cc4 035878 ifetch 1 ,regb 
+0x7cc5 035879 iadd regc ,pdata 
+0x7cc6 035880 istore 1 ,regb 
+0x7cc7 035881 increase -32 ,regb 
+:      035882 bn_rshifteven_256_0:
+0x7cc8 035883 add regb ,32 ,rega 
+0x7cc9 035884 force 9 ,loopcnt 
+0x7cca 035885 call bn_rshift 
+0x7ccb 035886 branch bn_rshifteven_256_1 
+:      035890 ui_init:
+0x7ccc 035891 call lpm_disable_exen_output 
+0x7ccd 035892 rtn wake 
+0x7cce 035893 call ui_button_init 
+0x7ccf 035894 call ui_timer_init 
+0x7cd0 035895 branch ui_led_init_global 
+:      035897 ui_dispatch:
+0x7cd1 035898 call ui_led_dispatch 
+0x7cd2 035900 branch ui_timer_check 
+:      035902 ui_button_init:
+0x7cd3 035903 fetch 1 ,mem_ui_button_gpio 
+0x7cd4 035904 rtneq ui_button_gpio_disable 
+0x7cd5 035905 iforce temp 
+0x7cd6 035906 call gpio_config_output 
+0x7cd7 035907 fetcht 1 ,mem_ui_button_gpio 
+0x7cd8 035908 call gpio_out_inactive 
+0x7cd9 035909 nop 100 
+0x7cda 035910 fetcht 1 ,mem_ui_button_gpio 
+0x7cdb 035911 call gpio_config_input 
+0x7cdc 035912 branch ui_button_polling 
+:      035916 ui_button_polling:
+0x7cdd 035917 bpatchx patch3e_3 ,mem_patch3e 
+0x7cde 035918 fetch 1 ,mem_ui_button_gpio 
+0x7cdf 035919 rtneq ui_button_gpio_disable 
+0x7ce0 035920 copy pdata ,temp 
+0x7ce1 035921 call gpio_get_bit 
+0x7ce2 035922 nbranch ui_button_up ,true 
+:      035924 ui_button_down:
+0x7ce3 035925 call ui_button_check_long_press 
+0x7ce4 035926 fetch 2 ,mem_ui_state_map 
+0x7ce5 035927 set1 ui_state_btn_down 
+0x7ce6 035928 store 2 ,mem_ui_state_map 
+0x7ce7 035929 fetch 1 ,mem_ui_button_last_state 
+0x7ce8 035930 rtneq ui_button_state_down 
+0x7ce9 035931 jam ui_button_state_down ,mem_ui_button_last_state 
+0x7cea 035933 fetch 1 ,mem_ui_button_timeout 
+0x7ceb 035934 store 1 ,mem_ui_button_timer 
+0x7cec 035935 call lpm_button_get_wake_lock 
+0x7ced 035936 jam bt_evt_button_down ,mem_fifo_temp 
+0x7cee 035937 branch ui_ipc_send_event 
+:      035938 ui_button_up:
+0x7cef 035939 fetch 2 ,mem_ui_state_map 
+0x7cf0 035940 set0 ui_state_btn_down 
+0x7cf1 035941 store 2 ,mem_ui_state_map 
+0x7cf2 035942 fetch 1 ,mem_ui_button_last_state 
+0x7cf3 035943 rtneq ui_button_state_up 
+0x7cf4 035944 jam ui_button_state_up ,mem_ui_button_last_state 
+0x7cf5 035946 jam 0 ,mem_ui_button_timer 
+0x7cf6 035947 call lpm_button_clean_wake_lock 
+0x7cf7 035948 jam bt_evt_button_up ,mem_fifo_temp 
+0x7cf8 035949 branch ui_ipc_send_event 
+:      035951 ui_button_check_long_press:
+0x7cf9 035952 fetch 1 ,mem_ui_button_timer 
+0x7cfa 035953 rtn blank 
+0x7cfb 035954 increase -1 ,pdata 
+0x7cfc 035955 store 1 ,mem_ui_button_timer 
+0x7cfd 035956 nrtn blank 
+0x7cfe 035958 jam bt_evt_button_long_pressed ,mem_fifo_temp 
+0x7cff 035959 branch ui_ipc_send_event 
+:      035961 lpm_button_get_wake_lock:
+0x7d00 035962 arg wake_lock_button ,queue 
+0x7d01 035963 branch lpm_get_wake_lock 
+:      035965 lpm_button_clean_wake_lock:
+0x7d02 035966 arg wake_lock_button ,queue 
+0x7d03 035967 branch lpm_put_wake_lock 
+:      035989 calc_curr_struct_prt:
+0x7d04 035990 fetch 2 ,mem_ui_led_struct_ptr 
+0x7d05 035991 mul32 rega ,led_offset_length ,regb 
+0x7d06 035992 iadd regb ,regb 
+0x7d07 035993 rtn 
+:      035996 ui_led_init_global:
+0x7d08 035997 fetch 1 ,mem_ui_led_struct_num 
+0x7d09 035998 rtn blank 
+0x7d0a 035999 copy pdata ,loopcnt 
+0x7d0b 036000 fetch 2 ,mem_ui_led_struct_ptr 
+0x7d0c 036001 copy pdata ,regb 
+:      036002 ui_led_init_loop:
+0x7d0d 036003 add regb ,led_offset_led_gpio ,regc 
+0x7d0e 036004 ifetcht 1 ,regc 
+0x7d0f 036005 call gpio_config_output 
+0x7d10 036006 call ui_led_off_static 
+0x7d11 036007 increase led_offset_length ,regb 
+0x7d12 036008 loop ui_led_init_loop 
+0x7d13 036009 rtn 
+:      036013 ui_led_on_global:
+0x7d14 036014 call calc_curr_struct_prt 
+0x7d15 036015 setarg ui_led_state_lighting 
+0x7d16 036016 istore 1 ,regb 
+0x7d17 036017 call ui_led_stop_timer 
+0x7d18 036018 branch ui_led_on_static 
+:      036022 ui_led_blink_stop_global:
+:      036023 ui_led_off_global:
+0x7d19 036024 call calc_curr_struct_prt 
+0x7d1a 036025 setarg ui_led_state_darking 
+0x7d1b 036026 istore 1 ,regb 
+0x7d1c 036027 call ui_led_stop_timer 
+0x7d1d 036028 branch ui_led_off_static 
+:      036032 ui_led_blink_start_global:
+0x7d1e 036033 call calc_curr_struct_prt 
+0x7d1f 036034 setarg ui_led_state_blink_start 
+0x7d20 036035 istore 1 ,regb 
+0x7d21 036036 setarg led_infinite_flash_num 
+0x7d22 036037 istore 1 ,contw 
+0x7d23 036038 branch ui_led_off_static 
+:      036043 ui_led_set_style_global:
+0x7d24 036044 call calc_curr_struct_prt 
+0x7d25 036045 arg led_offset_length ,loopcnt 
+0x7d26 036046 copy regc ,contr 
+0x7d27 036047 copy regb ,contw 
+0x7d28 036048 branch memcpy_fast 
+:      036052 ui_led_dispatch:
+0x7d29 036053 fetch 1 ,mem_ui_led_struct_num 
+0x7d2a 036054 rtn blank 
+0x7d2b 036055 arg 0 ,rega 
+:      036056 ui_led_blink_polling:
+0x7d2c 036057 call ui_led_change_style_by_type 
+0x7d2d 036058 increase 1 ,rega 
+0x7d2e 036059 fetch 1 ,mem_ui_led_struct_num 
+0x7d2f 036060 isub rega ,null 
+0x7d30 036061 rtn zero 
+0x7d31 036062 branch ui_led_blink_polling 
+:      036065 ui_led_off_static:
+0x7d32 036066 add regb ,led_offset_led_gpio ,regc 
+0x7d33 036067 ifetcht 1 ,regc 
+0x7d34 036068 branch gpio_out_inactive 
+:      036071 ui_led_on_static:
+0x7d35 036072 add regb ,led_offset_led_gpio ,regc 
+0x7d36 036073 ifetcht 1 ,regc 
+0x7d37 036074 branch gpio_out_active 
+:      036078 ui_led_change_style_by_type:
+0x7d38 036079 add rega ,ui_led_blink ,queue 
+0x7d39 036080 call timer_check 
+0x7d3a 036081 nrtn blank 
+0x7d3b 036083 call calc_curr_struct_prt 
+0x7d3c 036085 ifetch 1 ,regb 
+0x7d3d 036087 beq ui_led_state_lighting ,ui_led_on_static 
+0x7d3e 036088 beq ui_led_state_darking ,ui_led_off_static 
+0x7d3f 036089 beq ui_led_state_blink_stop ,ui_led_off_static 
+0x7d40 036090 beq ui_led_state_blink_darking ,ui_led_blink_state_darking 
+:      036091 ui_led_blink_state_lighting:
+0x7d41 036092 call ui_led_on_static 
+0x7d42 036093 add regb ,led_offset_cb_ledon ,regc 
+0x7d43 036094 call push_stack 
+0x7d44 036095 ifetch 2 ,regc 
+0x7d45 036096 call callback_func 
+0x7d46 036097 call pop_stack 
+0x7d47 036098 setarg ui_led_state_blink_darking 
+0x7d48 036099 istore 1 ,regb 
+0x7d49 036100 add regb ,led_offset_on_time ,regc 
+0x7d4a 036101 ifetch 2 ,regc 
+0x7d4b 036102 branch ui_led_blink_timer_start 
+:      036105 ui_led_blink_state_darking:
+0x7d4c 036106 call ui_led_off_static 
+0x7d4d 036107 add regb ,led_offset_cb_ledoff ,regc 
+0x7d4e 036108 call push_stack 
+0x7d4f 036109 ifetch 2 ,regc 
+0x7d50 036110 call callback_func 
+0x7d51 036111 call pop_stack 
+0x7d52 036113 add regb ,led_offset_blink_count ,regc 
+0x7d53 036114 ifetch 1 ,regc 
+0x7d54 036115 beq led_infinite_flash_num ,ui_led_blink_infinite 
+0x7d55 036116 increase -1 ,pdata 
+0x7d56 036117 istore 1 ,regc 
+0x7d57 036118 branch ui_led_blink_stop_global ,blank 
+:      036119 ui_led_blink_infinite:
+0x7d58 036120 setarg ui_led_state_blink_lighting 
+0x7d59 036121 istore 1 ,regb 
+0x7d5a 036122 add regb ,led_offset_off_time ,regc 
+0x7d5b 036123 ifetch 2 ,regc 
+:      036124 ui_led_blink_timer_start:
+0x7d5c 036125 add rega ,ui_led_blink ,queue 
+0x7d5d 036126 branch timer_init 
+:      036128 ui_led_stop_timer:
+0x7d5e 036129 setarg 0 
+0x7d5f 036130 branch ui_led_blink_timer_start 
+:      036136 ui_timer_timeout:
+0x7d60 036137 setarg 0x1000 
+0x7d61 036138 lshift16 pdata ,pdata 
+0x7d62 036139 iadd regb ,regb 
+0x7d63 036140 rtn 
+:      036142 ui_timer_check:
+0x7d64 036143 bpatchx patch3e_4 ,mem_patch3e 
+0x7d65 036144 arg 0 ,rega 
+0x7d66 036145 fetcht 4 ,mem_ui_timer_last_btclk 
+0x7d67 036146 copy clkn_bt ,regb 
+0x7d68 036147 copy regb ,pdata 
+0x7d69 036148 isub temp ,null 
+0x7d6a 036149 ncall ui_timer_timeout ,positive 
+:      036151 ui_timer_check_loop:
+0x7d6b 036152 copy regb ,pdata 
+0x7d6c 036153 increase 160 ,temp 
+0x7d6d 036154 increase 160 ,temp 
+0x7d6e 036155 isub temp ,null 
+0x7d6f 036156 nbranch ui_timer_check_end ,positive 
+0x7d70 036157 increase 1 ,rega 
+0x7d71 036158 and rega ,0x0f ,pdata 
+0x7d72 036159 nbranch ui_timer_check_loop ,blank 
+0x7d73 036160 arg 0 ,rega 
+0x7d74 036161 call ui_timer_check_send_evt 
+:      036162 ui_timer_init:
+0x7d75 036163 copy clkn_bt ,pdata 
+0x7d76 036164 store 4 ,mem_ui_timer_last_btclk 
+0x7d77 036165 rtn 
+:      036166 ui_timer_check_end:
+0x7d78 036167 bpatchx patch3e_5 ,mem_patch3e 
+0x7d79 036168 copy rega ,pdata 
+0x7d7a 036169 rtn blank 
+0x7d7b 036170 increase -160 ,temp 
+0x7d7c 036171 increase -160 ,temp 
+0x7d7d 036172 set0 28 ,temp 
+0x7d7e 036173 storet 4 ,mem_ui_timer_last_btclk 
+:      036174 ui_timer_check_send_evt:
+0x7d7f 036175 branch app_evt_timer 
+:      036182 ui_ipc_get_lock:
+0x7d80 036183 jam 1 ,mem_ipc_lock_bt 
+:      036184 ui_ipc_get_lock_wait:
+0x7d81 036185 fetch 1 ,mem_ipc_lock_c51 
+0x7d82 036186 nbranch ui_ipc_get_lock_wait ,blank 
+0x7d83 036187 rtn 
+:      036189 ui_ipc_put_lock:
+0x7d84 036190 jam 0 ,mem_ipc_lock_bt 
+0x7d85 036191 rtn 
+:      036195 ui_ipc_send_event:
+0x7d86 036196 bpatchx patch3e_6 ,mem_patch3e 
+0x7d87 036197 call ui_ipc_get_lock 
+0x7d88 036198 copy rega ,pdata 
+0x7d89 036199 store 4 ,mem_ipc_rega_temp 
+0x7d8a 036200 arg mem_ipc_fifo_bt2c51 ,rega 
+0x7d8b 036201 call fifo_in 
+0x7d8c 036202 fetch 4 ,mem_ipc_rega_temp 
+0x7d8d 036203 copy pdata ,rega 
+0x7d8e 036204 branch ui_ipc_put_lock 
+:      036206 ui_ipc_send_cmd:
+0x7d8f 036207 bpatchx patch3e_7 ,mem_patch3e 
+0x7d90 036208 call ui_ipc_get_lock 
+0x7d91 036209 copy rega ,pdata 
+0x7d92 036210 store 4 ,mem_ipc_rega_temp 
+0x7d93 036211 arg mem_ipc_fifo_c512bt ,rega 
+0x7d94 036212 call fifo_in 
+0x7d95 036213 fetch 4 ,mem_ipc_rega_temp 
+0x7d96 036214 copy pdata ,rega 
+0x7d97 036215 branch ui_ipc_put_lock 
+:      036217 ui_ipc_clean_all_fifo:
+0x7d98 036218 setarg 0 
+0x7d99 036219 store util_fifo_len ,mem_ipc_fifo_c512bt 
+0x7d9a 036220 store util_fifo_len ,mem_ipc_fifo_bt2c51 
+0x7d9b 036221 rtn 
+:      036223 check_51cmd:
+0x7d9c 036224 bpatchx patch3f_0 ,mem_patch3f 
+0x7d9d 036225 fetch 1 ,mem_hci_cmd 
+0x7d9e 036226 nrtn blank 
+0x7d9f 036227 arg mem_ipc_fifo_c512bt ,rega 
+0x7da0 036228 call fifo_is_empty 
+0x7da1 036229 rtn blank 
+0x7da2 036230 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
+0x7da3 036231 call check_51cmd_once 
+0x7da4 036232 fetch 1 ,mem_ipc_skip_continue_proc 
+0x7da5 036233 branch check_51cmd ,blank 
+0x7da6 036234 rtn 
+:      036236 check_51cmd_once:
+0x7da7 036237 call ui_ipc_get_lock 
+0x7da8 036238 arg mem_ipc_fifo_c512bt ,rega 
+0x7da9 036239 call fifo_out 
+0x7daa 036240 copy pdata ,temp 
+0x7dab 036241 call ui_ipc_put_lock 
+0x7dac 036242 bpatchx patch3f_1 ,mem_patch3f 
+0x7dad 036243 copy temp ,pdata 
+0x7dae 036244 rtn blank 
+0x7daf 036245 beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
+0x7db0 036246 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
+0x7db1 036247 beq bt_cmd_reconnect ,check_51cmd_reconnect 
+0x7db2 036248 beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
+0x7db3 036249 beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
+0x7db4 036250 beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
+0x7db5 036251 beq bt_cmd_start_inquiry ,check_51cmd_inq 
+0x7db6 036252 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
+0x7db7 036253 beq bt_cmd_start_adv ,check_51cmd_adv 
+0x7db8 036254 beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
+0x7db9 036255 beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
+0x7dba 036256 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
+0x7dbb 036257 beq bt_cmd_led_off ,check_51cmd_led_off 
+0x7dbc 036258 beq bt_cmd_led_on ,check_51cmd_led_on 
+0x7dbd 036259 beq bt_cmd_led_blink ,check_51cmd_led_start_blink 
+0x7dbe 036260 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
+0x7dbf 036261 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
+0x7dc0 036262 beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
+0x7dc1 036263 beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
+0x7dc2 036264 beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
+0x7dc3 036265 beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
+0x7dc4 036267 store 1 ,mem_fifo_temp 
+0x7dc5 036268 bpatchx patch3f_2 ,mem_patch3f 
+0x7dc6 036269 call lmo_fifo_check 
+0x7dc7 036270 nbranch check_51cmd_restore ,blank 
+:      036271 check_51cmd_once_continue:
+0x7dc8 036272 fetch 1 ,mem_fifo_temp 
+0x7dc9 036273 bmark0 mark_context ,check_51cmd_check_idle 
+0x7dca 036274 beq bt_cmd_disconnect ,check_51cmd_disconnect 
+0x7dcb 036275 beq bt_cmd_enter_sniff ,cmd_in_sniff 
+0x7dcc 036276 beq bt_cmd_exit_sniff ,cmd_exit_sniff 
+0x7dcd 036277 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
+0x7dce 036278 beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
+0x7dcf 036279 beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
+0x7dd0 036280 beq bt_cmd_role_switch ,check_51cmd_role_switch 
+0x7dd1 036281 beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
+0x7dd2 036282 beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
+0x7dd3 036283 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
+0x7dd4 036284 beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
+0x7dd5 036285 rtn 
+:      036287 check_51cmd_check_idle:
+0x7dd6 036288 store 1 ,mem_fifo_temp 
+0x7dd7 036289 call context_check_idle 
+0x7dd8 036290 branch check_51cmd_restore ,zero 
+0x7dd9 036291 call context_search_plap 
+0x7dda 036292 nrtn zero 
+:      036293 check_51cmd_restore:
+0x7ddb 036294 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
+0x7ddc 036295 branch ui_ipc_send_cmd 
+:      036300 check_51cmd_start_discovery:
+0x7ddd 036301 fetch 2 ,mem_ui_state_map 
+0x7dde 036302 set1 ui_state_bt_discovery 
+0x7ddf 036303 store 2 ,mem_ui_state_map 
+0x7de0 036304 jam 3 ,mem_scan_mode 
+0x7de1 036305 rtn 
+:      036309 check_51cmd_stop_discovery:
+0x7de2 036310 jam 0 ,mem_hid_handshake_timer_count 
+0x7de3 036311 jam 0 ,mem_scan_mode 
+0x7de4 036312 fetch 2 ,mem_ui_state_map 
+0x7de5 036313 set0 ui_state_bt_discovery 
+0x7de6 036314 store 2 ,mem_ui_state_map 
+0x7de7 036315 rtn 
+:      036319 check_51cmd_reconnect:
+0x7de8 036320 jam hci_cmd_create_conn ,mem_hci_cmd 
+0x7de9 036321 rtn 
+:      036325 check_51cmd_disconnect:
+0x7dea 036326 jam lmp_detach ,mem_lmo_opcode2 
+0x7deb 036327 jam other_end_terminated ,mem_disconn_reason_send 
+0x7dec 036328 rtn 
+:      036332 check_51cmd_enter_sniff_subrating:
+0x7ded 036333 rtn 
+:      036337 check_51cmd_exit_sniff_subrating:
+0x7dee 036338 rtn 
+:      036342 check_51cmd_sniff_test:
+0x7def 036343 rtn 
+:      036347 check_51cmd_pincode:
+0x7df0 036348 jam pincode_state_pincode_ready ,mem_pincode_state 
+0x7df1 036349 branch cmd_pair 
+:      036353 check_51cmd_inq:
+0x7df2 036354 rtn 
+:      036358 check_51cmd_stop_inq:
+0x7df3 036359 rtn 
+:      036363 check_51cmd_adv:
+0x7df4 036364 jam on ,mem_le_adv_enable 
+0x7df5 036365 jam adv_ind ,mem_le_adv_type 
+0x7df6 036366 fetch 2 ,mem_ui_state_map 
+0x7df7 036367 set1 ui_state_ble_adv ,pdata 
+0x7df8 036368 store 2 ,mem_ui_state_map 
+0x7df9 036369 rtn 
+:      036373 check_51cmd_stop_adv:
+0x7dfa 036374 fetch 2 ,mem_ui_state_map 
+0x7dfb 036375 set0 ui_state_ble_adv ,pdata 
+0x7dfc 036376 store 2 ,mem_ui_state_map 
+0x7dfd 036377 jam off ,mem_le_adv_enable 
+0x7dfe 036378 rtn 
+:      036382 check_51cmd_direct_adv:
+0x7dff 036383 jam on ,mem_le_adv_enable 
+0x7e00 036384 jam adv_direct_ind ,mem_le_adv_type 
+0x7e01 036385 fetch 2 ,mem_ui_state_map 
+0x7e02 036386 set1 ui_state_ble_adv ,pdata 
+0x7e03 036387 store 2 ,mem_ui_state_map 
+0x7e04 036388 rtn 
+:      036392 check_51cmd_stop_direct_adv:
+0x7e05 036393 fetch 2 ,mem_ui_state_map 
+0x7e06 036394 set0 ui_state_ble_adv ,pdata 
+0x7e07 036395 store 2 ,mem_ui_state_map 
+0x7e08 036396 jam off ,mem_le_adv_enable 
+0x7e09 036397 rtn 
+:      036401 check_51cmd_le_disconnect:
+0x7e0a 036402 setarg 20 
+0x7e0b 036403 store 2 ,mem_le_superto 
+0x7e0c 036404 store 2 ,mem_le_init_superto 
+0x7e0d 036405 branch le_send_terminate_ind_user_terminated 
+:      036409 check_51cmd_ble_update_connect_param:
+0x7e0e 036410 branch le_l2cap_tx_update_req 
+:      036414 check_51cmd_led_off:
+0x7e0f 036415 arg 0 ,rega 
+0x7e10 036416 branch ui_led_off_global 
+:      036420 check_51cmd_led_on:
+0x7e11 036421 arg 0 ,rega 
+0x7e12 036422 branch ui_led_on_global 
+:      036426 check_51cmd_led_start_blink:
+0x7e13 036427 arg 0 ,rega 
+0x7e14 036428 branch ui_led_blink_start_global 
+:      036432 check_51cmd_le_start_con:
+0x7e15 036433 jam on ,mem_le_scan_enable 
+0x7e16 036434 jam hci_cmd_le_create_conn ,mem_hci_cmd 
+0x7e17 036437 rtn 
+:      036441 check_51cmd_start_scan:
+0x7e18 036442 jam on ,mem_le_scan_enable 
+0x7e19 036443 rtn 
+:      036447 check_51cmd_stop_scan:
+0x7e1a 036448 jam off ,mem_le_scan_enable 
+0x7e1b 036449 jam 0 ,mem_hci_cmd 
+0x7e1c 036450 rtn 
+:      036454 check_51cmd_hibernate:
+0x7e1d 036455 fetch 2 ,mem_cb_before_hibernate 
+0x7e1e 036456 call callback_func 
+0x7e1f 036457 fetch 1 ,mem_ui_button_gpio 
+0x7e20 036458 beq ui_button_gpio_disable ,check_51cmd_hibernate_btn_disabled 
+0x7e21 036459 copy pdata ,temp 
+0x7e22 036460 call gpio_config_input 
+:      036461 check_51cmd_hibernate_btn_disabled:
+0x7e23 036462 call ui_ipc_clean_all_fifo 
+0x7e24 036463 branch lpm_hibernate 
+:      036467 check_51cmd_le_smp_sec_req:
+0x7e25 036468 branch le_send_smp_security_request 
+:      036472 check_51cmd_role_switch:
+0x7e26 036473 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x7e27 036474 set1 mark_switch_initiated ,mark 
+0x7e28 036475 nrtn master 
+0x7e29 036476 jam switch_flag_init ,mem_switch_flag 
+0x7e2a 036477 jam lmp_switch_req ,mem_lmo_opcode2 
+0x7e2b 036478 fetch 1 ,mem_connection_options 
+0x7e2c 036479 set0 connection_switch ,pdata 
+0x7e2d 036480 store 1 ,mem_connection_options 
+0x7e2e 036481 rtn 
+:      036485 check_51cmd_bb_reconn_cancel:
+0x7e2f 036486 force page_length_timer ,queue 
+0x7e30 036487 branch timer_stop 
+:      036491 check_51cmd_dhkey_not_accept:
+0x7e31 036492 call tid_set_reply 
+0x7e32 036493 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x7e33 036494 branch parse_lmp_dhkey_check_reject 
+:      036497 ui_check_paring_button:
+0x7e34 036498 fetch 1 ,mem_ui_state_map 
+0x7e35 036499 rtnbit0 ui_state_btn_down 
+0x7e36 036500 rtnbit0 ui_state_bt_reconnect 
+0x7e37 036501 branch check_51cmd_bb_reconn_cancel 
+:      036506 queue_init:
+0x7e38 036507 fetch 2 ,mem_queue_ptr 
+0x7e39 036508 add pdata ,queue_offset_curr_num ,contw 
+0x7e3a 036509 setarg 0 
+0x7e3b 036510 istore 3 ,contw 
+0x7e3c 036511 rtn 
+:      036515 queue_push:
+0x7e3d 036516 call disable_user 
+0x7e3e 036517 call queue_full 
+0x7e3f 036518 rtn blank 
+0x7e40 036519 fetch 2 ,mem_queue_ptr 
+0x7e41 036520 add pdata ,queue_offset_curr_num ,regb 
+0x7e42 036521 ifetcht 1 ,regb 
+0x7e43 036522 increase 1 ,temp 
+0x7e44 036523 istoret 1 ,regb 
+0x7e45 036525 ifetcht 1 ,pdata 
+0x7e46 036526 copy temp ,loopcnt 
+0x7e47 036527 add pdata ,queue_offset_write_ptr ,regb 
+0x7e48 036528 ifetch 1 ,regb 
+0x7e49 036529 imul32 temp ,pdata 
+0x7e4a 036530 iadd contr ,contw 
+0x7e4b 036531 copy rega ,contr 
+:      036532 calc_queue_next_ptr:
+0x7e4c 036533 call memcpy 
+0x7e4d 036534 call queue_get_size 
+0x7e4e 036535 pincrease -1 
+0x7e4f 036536 ifetcht 1 ,regb 
+0x7e50 036537 increase 1 ,temp 
+0x7e51 036538 iand temp ,temp 
+0x7e52 036539 istoret 1 ,regb 
+0x7e53 036540 branch enable_user 
+:      036545 queue_pop:
+0x7e54 036546 call disable_user 
+0x7e55 036547 call queue_empty 
+0x7e56 036548 rtn blank 
+0x7e57 036549 fetch 2 ,mem_queue_ptr 
+0x7e58 036550 add pdata ,queue_offset_curr_num ,regb 
+0x7e59 036551 ifetcht 1 ,regb 
+0x7e5a 036552 increase -1 ,temp 
+0x7e5b 036553 istoret 1 ,regb 
+0x7e5c 036554 ifetcht 1 ,pdata 
+0x7e5d 036555 copy temp ,loopcnt 
+0x7e5e 036556 add pdata ,queue_offset_read_ptr ,regb 
+0x7e5f 036557 ifetch 1 ,regb 
+0x7e60 036558 imul32 temp ,pdata 
+0x7e61 036559 iadd contr ,contr 
+0x7e62 036560 increase 1 ,contr 
+0x7e63 036561 copy rega ,contw 
+0x7e64 036562 branch calc_queue_next_ptr 
+:      036566 queue_empty:
+0x7e65 036567 fetch 2 ,mem_queue_ptr 
+0x7e66 036568 add pdata ,queue_offset_curr_num ,contr 
+0x7e67 036569 ifetch 1 ,contr 
+0x7e68 036570 rtn 
+:      036573 queue_full:
+0x7e69 036574 call queue_get_size 
+0x7e6a 036575 ifetcht 1 ,contr 
+0x7e6b 036576 isub temp ,pdata 
+0x7e6c 036577 rtn 
+:      036580 queue_get_size:
+0x7e6d 036581 fetch 2 ,mem_queue_ptr 
+0x7e6e 036582 add pdata ,queue_offset_length ,contr 
+0x7e6f 036583 ifetch 1 ,contr 
+0x7e70 036584 rtn 
+:      036592 right_shift_n:
+0x7e71 036593 sub loopcnt ,0 ,null 
+0x7e72 036594 rtn zero 
+:      036595 right_shift_n_loop:
+0x7e73 036596 rshift pdata ,pdata 
+0x7e74 036597 loop right_shift_n_loop 
+0x7e75 036598 rtn 
+:      036601 left_shift_n:
+0x7e76 036602 force 1 ,pdata 
+0x7e77 036603 sub loopcnt ,0 ,null 
+0x7e78 036604 rtn zero 
+:      036605 left_shift_n_loop:
+0x7e79 036606 lshift pdata ,pdata 
+0x7e7a 036607 loop left_shift_n_loop 
+0x7e7b 036608 rtn 
+:      036609 push_stack:
+0x7e7c 036610 deposit contw 
+0x7e7d 036611 store 2 ,mem_contw 
+0x7e7e 036612 storet 8 ,mem_temp 
+0x7e7f 036613 deposit timeup 
+0x7e80 036614 store 4 ,mem_timeup 
+0x7e81 036615 call push_stack_rega_b_c 
+0x7e82 036616 deposit contr 
+0x7e83 036617 store 2 ,mem_contr 
+0x7e84 036618 rtn 
+:      036620 push_stack_rega_b_c:
+0x7e85 036621 deposit rega 
+0x7e86 036622 store 4 ,mem_rega 
+0x7e87 036623 deposit regb 
+0x7e88 036624 store 4 ,mem_regb 
+0x7e89 036625 deposit regc 
+0x7e8a 036626 store 3 ,mem_regc 
+0x7e8b 036627 rtn 
+:      036629 pop_stack:
+0x7e8c 036630 fetcht 8 ,mem_temp 
+0x7e8d 036631 fetch 4 ,mem_timeup 
+0x7e8e 036632 iforce timeup 
+0x7e8f 036633 call pop_stack_rega_b_c 
+0x7e90 036634 fetch 2 ,mem_contw 
+0x7e91 036635 iforce contw 
+0x7e92 036636 fetch 2 ,mem_contr 
+0x7e93 036637 iforce contr 
+0x7e94 036638 rtn 
+:      036640 pop_stack_rega_b_c:
+0x7e95 036641 fetch 4 ,mem_rega 
+0x7e96 036642 iforce rega 
+0x7e97 036643 fetch 4 ,mem_regb 
+0x7e98 036644 iforce regb 
+0x7e99 036645 fetch 3 ,mem_regc 
+0x7e9a 036646 iforce regc 
+0x7e9b 036647 rtn 
+:      036649 get_contw:
+0x7e9c 036650 fetch 2 ,mem_contw 
+0x7e9d 036651 copy pdata ,contw 
+0x7e9e 036652 rtn 
+:      036653 get_contr:
+0x7e9f 036654 fetch 2 ,mem_contr 
+0x7ea0 036655 copy pdata ,contr 
+0x7ea1 036656 rtn 
+:      036657 store_contw:
+0x7ea2 036658 copy contw ,pdata 
+0x7ea3 036659 store 2 ,mem_contw 
+0x7ea4 036660 rtn 
+:      036661 store_contr:
+0x7ea5 036662 copy contr ,pdata 
+0x7ea6 036663 store 2 ,mem_contr 
+0x7ea7 036664 rtn 
+:      036668 save_cont_pointers:
+0x7ea8 036669 copy contw ,pdata 
+0x7ea9 036670 store 2 ,mem_hold_contw 
+0x7eaa 036671 copy contr ,pdata 
+0x7eab 036672 store 2 ,mem_hold_contr 
+0x7eac 036673 rtn 
+:      036674 load_cont_pointers:
+0x7ead 036675 fetch 2 ,mem_hold_contw 
+0x7eae 036676 copy pdata ,contw 
+0x7eaf 036677 fetch 2 ,mem_hold_contr 
+0x7eb0 036678 copy pdata ,contr 
+0x7eb1 036679 rtn 
+:      036681 memcpy96:
+0x7eb2 036682 call memcpy32 
+:      036683 memcpy64:
+0x7eb3 036684 call memcpy32 
+0x7eb4 036685 branch memcpy32 
+:      036686 memcpy12:
+0x7eb5 036687 call memcpy8 
+:      036688 memcpy4:
+0x7eb6 036689 ifetch 4 ,contr 
+0x7eb7 036690 istore 4 ,contw 
+0x7eb8 036691 rtn 
+:      036692 memcpy8:
+0x7eb9 036693 ifetch 8 ,contr 
+0x7eba 036694 istore 8 ,contw 
+0x7ebb 036695 rtn 
+:      036697 memcpy48:
+0x7ebc 036698 call memcpy16 
+:      036699 memcpy32:
+0x7ebd 036700 call memcpy8 
+:      036701 memcpy24:
+0x7ebe 036702 call memcpy8 
+:      036703 memcpy16:
+0x7ebf 036704 call memcpy8 
+0x7ec0 036705 branch memcpy8 
+:      036709 delay_10ms:
+0x7ec1 036710 arg 10 ,loopcnt 
+:      036711 delay_ms_wait:
+0x7ec2 036712 nop 12000 
+0x7ec3 036713 loop delay_ms_wait 
+0x7ec4 036714 rtn 
+:      036716 bn_zero:
+0x7ec5 036717 force 3 ,loopcnt 
+:      036718 memset0:
+0x7ec6 036719 force 0 ,pdata 
+:      036720 memset8:
+0x7ec7 036721 istore 8 ,contw 
+0x7ec8 036722 loop memset8 
+0x7ec9 036723 rtn 
+:      036725 memset0_8:
+0x7eca 036726 force 0 ,pdata 
+0x7ecb 036727 istore 8 ,contw 
+0x7ecc 036728 rtn 
+:      036729 memset0_4:
+0x7ecd 036730 force 0 ,pdata 
+0x7ece 036731 istore 4 ,contw 
+0x7ecf 036732 rtn 
+:      036734 clear_mem_256:
+0x7ed0 036735 force 4 ,loopcnt 
+0x7ed1 036736 branch memset0 
+:      036737 clear_mem_512:
+0x7ed2 036738 force 8 ,loopcnt 
+0x7ed3 036739 branch memset0 
+:      036741 clear_mem:
+0x7ed4 036742 deposit loopcnt 
+0x7ed5 036743 rtn blank 
+0x7ed6 036744 setarg 0 
+:      036745 clear_mem_loop:
+0x7ed7 036746 istore 1 ,contw 
+0x7ed8 036747 loop clear_mem_loop 
+0x7ed9 036748 rtn 
+:      036751 clear_temp_block:
+0x7eda 036752 arg 32 ,loopcnt 
+0x7edb 036753 arg mem_temp_block0 ,contw 
+0x7edc 036754 branch clear_mem 
+:      036756 xor_loop:
+0x7edd 036757 ifetch 4 ,regc 
+0x7ede 036758 ifetcht 4 ,rega 
+0x7edf 036759 ixor temp ,pdata 
+0x7ee0 036760 istore 4 ,contw 
+0x7ee1 036761 increase 4 ,rega 
+0x7ee2 036762 increase 4 ,regc 
+0x7ee3 036763 loop xor_loop 
+0x7ee4 036764 rtn 
+:      036768 inverse_data:
+0x7ee5 036769 bpatchx patch3f_3 ,mem_patch3f 
+0x7ee6 036770 copy loopcnt ,pdata 
+0x7ee7 036771 sub pdata ,1 ,null 
+0x7ee8 036772 rtn positive 
+0x7ee9 036773 iadd rega ,regb 
+0x7eea 036774 increase -1 ,regb 
+0x7eeb 036775 rshift loopcnt ,loopcnt 
+:      036776 inverse_loop:
+0x7eec 036777 ifetcht 1 ,rega 
+0x7eed 036778 ifetch 1 ,regb 
+0x7eee 036779 istore 1 ,rega 
+0x7eef 036780 istoret 1 ,regb 
+0x7ef0 036781 increase -1 ,regb 
+0x7ef1 036782 increase 1 ,rega 
+0x7ef2 036783 loop inverse_loop 
+0x7ef3 036784 rtn 
+:      036787 memcpy_fast:
+0x7ef4 036788 deposit loopcnt 
+0x7ef5 036789 rtn blank 
+:      036790 memcpy_fast_loop:
+0x7ef6 036791 increase -8 ,loopcnt 
+0x7ef7 036792 call memcpy8 ,positive 
+0x7ef8 036793 rtn zero 
+0x7ef9 036794 branch memcpy_fast_loop ,positive 
+0x7efa 036795 increase 8 ,loopcnt 
+:      036796 memcpy_fast_loop_four:
+0x7efb 036797 increase -4 ,loopcnt 
+0x7efc 036798 call memcpy4 ,positive 
+0x7efd 036799 rtn zero 
+0x7efe 036800 branch memcpy_fast_loop_four ,positive 
+0x7eff 036801 increase 4 ,loopcnt 
+0x7f00 036802 branch memcpy 
+:      036804 memcpy:
+0x7f01 036805 deposit loopcnt 
+0x7f02 036806 rtn blank 
+:      036807 memcpy_loop:
+0x7f03 036808 ifetch 1 ,contr 
+0x7f04 036809 istore 1 ,contw 
+0x7f05 036810 loop memcpy_loop 
+0x7f06 036811 rtn 
+:      036813 timer_stop:
+0x7f07 036814 setarg 0 
+:      036815 timer_init:
+0x7f08 036816 rshift clkn_bt ,temp 
+0x7f09 036817 storet 4 ,mem_last_clkn 
+0x7f0a 036818 arg mem_timers ,contw 
+0x7f0b 036819 iforce temp 
+0x7f0c 036820 lshift queue ,pdata 
+0x7f0d 036821 iadd contw ,contw 
+0x7f0e 036822 istoret 2 ,contw 
+0x7f0f 036823 bpatchx patch3f_4 ,mem_patch3f 
+0x7f10 036824 rtn 
+:      036826 timer_check_timeout:
+0x7f11 036827 arg 0x800 ,timeup 
+0x7f12 036828 lshift16 timeup ,timeup 
+0x7f13 036829 iadd timeup ,pdata 
+0x7f14 036830 rtn 
+:      036833 timer_reinit:
+0x7f15 036834 arg 0 ,queue 
+:      036835 timer_check:
+0x7f16 036836 bpatchx patch3f_5 ,mem_patch3f 
+0x7f17 036837 fetcht 4 ,mem_last_clkn 
+0x7f18 036838 rshift clkn_bt ,pdata 
+0x7f19 036839 store 4 ,mem_last_clkn 
+0x7f1a 036840 isub temp ,null 
+0x7f1b 036841 ncall timer_check_timeout ,positive 
+0x7f1c 036842 isub temp ,timeup 
+0x7f1d 036843 copy timeup ,temp 
+0x7f1e 036844 arg mem_timers ,contr 
+0x7f1f 036845 copy contr ,contw 
+0x7f20 036846 arg 16 ,loopcnt 
+:      036847 timer_loop:
+0x7f21 036848 ifetch 2 ,contr 
+0x7f22 036849 isub temp ,pdata 
+0x7f23 036850 branch timer_counting ,positive 
+0x7f24 036851 force 0 ,pdata 
+:      036852 timer_counting:
+0x7f25 036853 istore 2 ,contw 
+0x7f26 036854 loop timer_loop 
+0x7f27 036855 arg mem_timers ,contr 
+0x7f28 036856 lshift queue ,pdata 
+0x7f29 036857 iadd contr ,contr 
+0x7f2a 036858 ifetch 2 ,contr 
+0x7f2b 036859 rtn 
+:      036864 clk_add:
+0x7f2c 036865 iadd temp ,temp 
+0x7f2d 036866 copy temp ,loopcnt 
+0x7f2e 036867 setarg 3750 
+0x7f2f 036868 isub loopcnt ,pdata 
+0x7f30 036869 rtn positive 
+0x7f31 036870 sub pdata ,0 ,pdata 
+0x7f32 036871 rshift16 temp ,temp 
+0x7f33 036872 increase 1 ,temp 
+0x7f34 036873 lshift16 temp ,temp 
+0x7f35 036874 ior temp ,temp 
+0x7f36 036875 rtn 
+:      036877 clk_diff_rt:
+0x7f37 036878 call clk_diff 
+0x7f38 036879 branch clk2rt 
+:      036882 clk_diff:
+0x7f39 036883 disable user 
+0x7f3a 036884 isub temp ,pdata 
+0x7f3b 036885 branch clk_diff_pos ,positive 
+0x7f3c 036886 enable user 
+0x7f3d 036887 sub pdata ,0 ,pdata 
+:      036888 clk_diff_pos:
+0x7f3e 036889 rtnbit0 15 
+0x7f3f 036890 arg -61786 ,temp 
+0x7f40 036891 iadd temp ,pdata 
+0x7f41 036892 set0 64 ,pdata 
+0x7f42 036893 rtn 
+:      036895 clk2rt:
+0x7f43 036896 iforce contr 
+0x7f44 036897 rshift16 pdata ,pdata 
+0x7f45 036898 arg 3750 ,temp 
+0x7f46 036899 imul32 temp ,pdata 
+0x7f47 036900 iadd contr ,pdata 
+0x7f48 036901 rtn 
+:      036904 clk2lpo:
+0x7f49 036905 lshift8 pdata ,pdata 
+0x7f4a 036906 lshift4 pdata ,pdata 
+0x7f4b 036907 fetcht 3 ,mem_clks_per_lpo 
+0x7f4c 036908 idiv temp 
+0x7f4d 036909 call wait_div_end 
+0x7f4e 036910 quotient temp 
+0x7f4f 036911 rtn 
+:      036914 clk2bt:
+0x7f50 036915 arg 3750 ,temp 
+0x7f51 036916 idiv temp 
+0x7f52 036917 call wait_div_end 
+0x7f53 036918 quotient pdata 
+0x7f54 036919 lshift16 pdata ,pdata 
+0x7f55 036920 remainder temp 
+0x7f56 036921 ior temp ,temp 
+0x7f57 036922 rtn 
+:      036929 string2dec_from_uart:
+0x7f58 036930 arg 0 ,temp 
+:      036931 string2dec_from_uart_done:
+0x7f59 036932 copy temp ,regc 
+0x7f5a 036933 ifetch 1 ,contru 
+0x7f5b 036934 call uchar2dialog 
+0x7f5c 036935 copy regc ,temp 
+0x7f5d 036936 call swap 
+0x7f5e 036937 arg 10 ,regb 
+0x7f5f 036938 imul32 regb ,pdata 
+0x7f60 036939 iadd temp ,pdata 
+0x7f61 036940 copy pdata ,temp 
+0x7f62 036941 loop string2dec_from_uart_done 
+0x7f63 036942 rtn 
+:      036946 uchar2dialog:
+0x7f64 036947 arg 0x3a ,temp 
+0x7f65 036948 isub temp ,null 
+0x7f66 036949 nbranch uchar2dialog_number ,positive 
+0x7f67 036950 arg 0x61 ,temp 
+0x7f68 036951 isub temp ,null 
+0x7f69 036952 branch uchar2dialog_a2f ,positive 
+0x7f6a 036953 arg 0x37 ,temp 
+0x7f6b 036954 isub temp ,pdata 
+0x7f6c 036955 rtn 
+:      036956 uchar2dialog_number:
+0x7f6d 036957 arg 0x30 ,temp 
+0x7f6e 036958 isub temp ,pdata 
+0x7f6f 036959 rtn 
+:      036960 uchar2dialog_a2f:
+0x7f70 036961 arg 0x57 ,temp 
+0x7f71 036962 isub temp ,pdata 
+0x7f72 036963 rtn 
+:      036965 pn9:
+0x7f73 036966 copy temp ,alarm 
+0x7f74 036967 setarg 0x1ff 
+0x7f75 036968 force 0 ,regb 
+:      036969 pn9_loop:
+0x7f76 036970 rshift3 pdata ,rega 
+0x7f77 036971 rshift rega ,rega 
+0x7f78 036972 ixor rega ,rega 
+0x7f79 036973 isolate1 0 ,rega 
+0x7f7a 036974 setflag true ,9 ,pdata 
+0x7f7b 036975 rshift temp ,temp 
+0x7f7c 036976 isolate1 0 ,pdata 
+0x7f7d 036977 setflag true ,7 ,temp 
+0x7f7e 036978 rshift pdata ,pdata 
+0x7f7f 036979 increase 1 ,regb 
+0x7f80 036980 compare 0 ,regb ,0x7 
+0x7f81 036981 nbranch pn9_loop ,true 
+0x7f82 036982 istoret 1 ,contw 
+0x7f83 036983 loop pn9_loop 
+0x7f84 036984 copy alarm ,temp 
+0x7f85 036985 rtn 
+:      036988 wait_div_end:
+0x7f86 036989 rtn modone 
+0x7f87 036990 branch wait_div_end 
+:      037000 compare_loop:
+:      037001 string_compare:
+0x7f88 037002 ifetch 1 ,rega 
+0x7f89 037003 ifetcht 1 ,regb 
+0x7f8a 037004 isub temp ,null 
+0x7f8b 037005 nrtn zero 
+0x7f8c 037006 increase 1 ,rega 
+0x7f8d 037007 increase 1 ,regb 
+0x7f8e 037008 loop string_compare 
+0x7f8f 037009 force 0 ,null 
+0x7f90 037010 rtn 
+:      037013 ceiling:
+0x7f91 037014 isub temp ,null 
+0x7f92 037015 nrtn positive 
+0x7f93 037016 deposit temp 
+0x7f94 037017 rtn 
+:      037019 swap:
+0x7f95 037020 iadd temp ,pdata 
+0x7f96 037021 isub temp ,temp 
+0x7f97 037022 isub temp ,pdata 
+0x7f98 037023 rtn 
+:      037025 clean_mem:
+0x7f99 037026 arg 0x200 ,loopcnt 
+0x7f9a 037027 arg 0x4000 ,contw 
+0x7f9b 037028 branch memset0 
+:      037031 callback_func:
+0x7f9c 037032 rtn blank 
+0x7f9d 037033 copy pdata ,pc 
+:      037036 wait_uarttx:
+0x7f9e 037037 hfetch 2 ,core_uart_txitems 
+0x7f9f 037038 nbranch wait_uarttx ,blank 
+0x7fa0 037039 rtn 
+:      037041 ice_break:
+0x7fa1 037042 jam 0x1 ,core_ice_ctrl 
+0x7fa2 037043 rtn 
+:      037045 ice_setbp:
+0x7fa3 037046 hstore 2 ,core_ice_break0 
+0x7fa4 037047 hfetch 1 ,core_ice_ctrl 
+0x7fa5 037048 set1 4 ,pdata 
+0x7fa6 037049 hstore 1 ,core_ice_ctrl 
+0x7fa7 037050 rtn 
+:      037051 ice_setbp2:
+0x7fa8 037052 hstore 2 ,core_ice_break1 
+0x7fa9 037053 hfetch 1 ,core_ice_ctrl 
+0x7faa 037054 set1 6 ,pdata 
+0x7fab 037055 hstore 1 ,core_ice_ctrl 
+0x7fac 037056 rtn 
+:      037058 ice_set_write_bp:
+0x7fad 037059 hstore 2 ,core_ice_break0 
+0x7fae 037060 jam 0x30 ,core_ice_ctrl 
+0x7faf 037061 rtn 
+:      037065 test_enable_white:
+0x7fb0 037066 hfetch 1 ,core_config 
+0x7fb1 037067 set0 whiteoff_bit ,pdata 
+0x7fb2 037068 hstore 1 ,core_config 
+0x7fb3 037069 rtn 
+:      037071 check_uart_tx_buff:
+0x7fb4 037072 hfetch 2 ,core_uart_txitems 
+0x7fb5 037073 arg uart_air_control_threshold ,temp 
+:      037074 pdata_sub_temp:
+0x7fb6 037075 isub temp ,null 
+0x7fb7 037076 rtn 
+:      037082 fifo_in:
+0x7fb8 037083 bpatchx patch3f_6 ,mem_patch3f 
+0x7fb9 037084 ifetcht util_fifo_len ,rega 
+0x7fba 037085 and temp ,0xff ,pdata 
+0x7fbb 037086 nbranch fifo_in_push ,blank 
+0x7fbc 037087 rshift8 temp ,pdata 
+0x7fbd 037088 istore util_fifo_len ,rega 
+:      037089 fifo_in_push:
+0x7fbe 037090 increase util_fifo_len + util_fifo_offset ,rega 
+0x7fbf 037091 ifetch 1 ,rega 
+0x7fc0 037092 nbranch assert ,blank 
+0x7fc1 037093 fetch 1 ,mem_fifo_temp 
+0x7fc2 037094 istore 1 ,rega 
+0x7fc3 037095 rtn 
+:      037100 fifo_out:
+0x7fc4 037101 bpatchx patch3f_7 ,mem_patch3f 
+0x7fc5 037102 arg util_fifo_len ,loopcnt 
+0x7fc6 037103 ifetch util_fifo_len ,rega 
+0x7fc7 037104 rtn blank 
+:      037105 fifo_out_loop:
+0x7fc8 037106 ifetch 1 ,rega 
+0x7fc9 037107 nbranch fifo_out_end ,blank 
+0x7fca 037108 increase 1 ,rega 
+0x7fcb 037109 loop fifo_out_loop 
+0x7fcc 037110 branch assert 
+:      037111 fifo_out_end:
+0x7fcd 037112 arg 0 ,temp 
+0x7fce 037113 istoret 1 ,rega 
+0x7fcf 037114 rtn 
+:      037119 fifo_is_empty:
+0x7fd0 037120 ifetch util_fifo_len ,rega 
+0x7fd1 037121 rtn 
+:      037126 fifo_is_full:
+0x7fd2 037127 ifetch 1 ,rega 
+0x7fd3 037128 rtn 
+:      037131 fifo_is_near_full:
+0x7fd4 037132 ifetch 2 ,rega 
+0x7fd5 037133 rtn 
+:      037137 fifo_content_count:
+0x7fd6 037138 arg 0 ,temp 
+:      037139 fifo_content_count_loop:
+0x7fd7 037140 fetch 1 ,contr 
+0x7fd8 037141 loop fifo_content_count_loop ,blank 
+0x7fd9 037142 increase 1 ,temp 
+0x7fda 037143 loop fifo_content_count_loop 
+0x7fdb 037144 copy temp ,pdata 
+0x7fdc 037145 rtn 
+:      037147 not_greater_than:
+0x7fdd 037148 isub temp ,null 
+0x7fde 037149 nrtn positive 
+0x7fdf 037150 copy temp ,pdata 
+0x7fe0 037151 rtn 
+:      037154 disable_positive:
+0x7fe1 037155 force -1 ,null 
+0x7fe2 037156 rtn 
+:      037157 enable_positive:
+:      037158 disable_zero:
+0x7fe3 037159 force 1 ,null 
+0x7fe4 037160 rtn 
+:      037161 enable_zero:
+0x7fe5 037162 force 0 ,null 
+0x7fe6 037163 rtn 
+:      037165 enable_user:
+0x7fe7 037166 enable user 
+0x7fe8 037167 rtn 
+:      037169 disable_user:
+0x7fe9 037170 disable user 
+0x7fea 037171 rtn 
+:      037173 enable_user2:
+0x7feb 037174 enable user2 
+0x7fec 037175 rtn 
+:      037177 disable_user2:
+0x7fed 037178 disable user2 
+0x7fee 037179 rtn 
+:      037181 disable_blank:
+0x7fef 037182 setarg 1 
+0x7ff0 037183 rtn 
+:      037185 enable_blank:
+0x7ff1 037186 setarg 0 
+0x7ff2 037187 rtn 
+:      037190 reverse_byte:
+0x7ff3 037191 copy loopcnt ,pdata 
+0x7ff4 037192 rtn blank 
+0x7ff5 037193 copy contr ,pdata 
+0x7ff6 037194 iadd loopcnt ,pdata 
+0x7ff7 037195 increase -1 ,pdata 
+0x7ff8 037196 copy pdata ,contr 
+:      037197 reverse_loop:
+0x7ff9 037198 ifetch 1 ,contr 
+0x7ffa 037199 increase -2 ,contr 
+0x7ffb 037200 istore 1 ,contw 
+0x7ffc 037201 loop reverse_loop 
+0x7ffd 037202 rtn 
+              org 0x10001
+:      037207 z_entrance0:
+0x10001 037208 beq zcode_00 ,z_page_wait_fhs_reply_ok
+0x10002 037209 beq zcode_01 ,z_g24_transmit_by_interrupt
+0x10003 037210 rtn
+:      037212 z_g24_transmit_by_interrupt:
+0x10004 037213 call p_g24_timer_check
+0x10005 037214 nrtn user
+0x10006 037215 call z_g24_interval_calibrate
+0x10007 037216 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count
+0x10008 037217 increase 1 ,pdata
+0x10009 037218 store 2 ,mem_24g_transmit_by_interrupt_exit_count
+0x1000a 037219 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init
+0x1000b 037220 isub temp ,null
+0x1000c 037221 call z_g24_transmit_by_interrupt_exit ,zero
+0x1000d 037222 branch p_g24_transmit_process
+:      037224 z_g24_transmit_by_interrupt_exit:
+0x1000e 037225 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+0x1000f 037226 setarg 0
+0x10010 037227 store 2 ,mem_24g_transmit_by_interrupt_exit_count
+0x10011 037228 setarg 25
+0x10012 037229 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init
+:      037230 z_g24_interval_min:
+0x10013 037231 jam 0 ,mem_24g_pac_index
+0x10014 037232 fetch 1 ,mem_24g_interval_min
+:      037233 z_g24_current_interval_store:
+0x10015 037234 store 1 ,mem_24g_interval
+0x10016 037235 rtn
+:      037236 z_g24_interval_max:
+0x10017 037237 fetch 1 ,mem_24g_interval_max
+0x10018 037238 branch z_g24_current_interval_store
+:      037239 z_g24_interval_calibrate:
+0x10019 037240 fetch 1 ,mem_24g_pac_index
+0x1001a 037241 increase 1 ,pdata
+0x1001b 037242 store 1 ,mem_24g_pac_index
+0x1001c 037243 beq 4 ,z_g24_interval_max
+0x1001d 037244 beq 5 ,z_g24_interval_min
+0x1001e 037245 rtn
+:      037247 z_page_wait_fhs_reply_ok:
+0x1001f 037248 fetch 1 ,mem_page_rcv_fhs
+0x10020 037249 increase 1 ,pdata
+0x10021 037250 store 1 ,mem_page_rcv_fhs
+0x10022 037251 call prepare_newconn
+:      037252 z_master_newconn_loop:
+0x10023 037253 set1 mark_first_packet ,mark
+0x10024 037254 call master_newconn_once
+0x10025 037255 branch z_newconn_poll_responded ,sync
+0x10026 037256 set0 mark_first_packet ,mark
+0x10027 037257 call new_conn_timeout
+0x10028 037258 nbranch z_master_newconn_loop ,blank
+0x10029 037259 branch page_restart
+:      037260 z_newconn_poll_responded:
+0x1002a 037261 set0 mark_first_packet ,mark
+0x1002b 037262 branch newconn_poll_responded
+              org 0x20001
+:      037267 z_entrance1:
+0x20001 037268 beq zcode_10 ,z_mouse_bb_disconnected
+0x20002 037269 beq zcode_11 ,z_hid_rx_process
+0x20003 037270 rtn
+:      037272 z_mouse_bb_disconnected:
+0x20004 037273 jam 0 ,mem_mouse_enter_sniff_count
+0x20005 037274 jam 0x0e ,mem_sniff_param_interval
+0x20006 037275 call mouse_bb_discon_clear_stack
+0x20007 037276 fetch app_disc_rsn_size ,mem_app_disconn_reason
+0x20008 037277 bbit1 app_disc_ble ,z_mouse4_0_event_bb_disconn
+0x20009 037278 bbit1 app_disc_by_button ,app_disconn_reason_clear
+0x2000a 037279 bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing
+0x2000b 037280 bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate
+0x2000c 037281 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x2000d 037282 branch mouse_start_discovery
+:      037284 z_mouse4_0_event_bb_disconn:
+0x2000e 037285 call mouse_le_clean_connect_flag
+0x2000f 037286 fetch app_disc_rsn_size ,mem_app_disconn_reason
+0x20010 037287 bbit1 app_disc_pb_button ,p_mouse_select_device_button_up
+0x20011 037288 branch mouse4_0_event_bb_disconn + 2
+:      037290 z_mouse_event_light_state_pairing:
+0x20012 037291 bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate
+0x20013 037292 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x20014 037293 branch mouse_start_discovery
+:      037294 z_mouse_event_light_state_hibernate:
+0x20015 037295 fetch 2 ,mem_ui_state_map
+0x20016 037296 bbit1 ui_state_btn_down ,mouse_start_discovery
+0x20017 037297 call app_disconn_reason_clear
+0x20018 037307 branch app_bb_hibernate
+:      037310 z_hid_rx_process:
+0x20019 037311 fetch 2 ,mem_l2cap_payload_ptr
+0x2001a 037312 copy pdata ,contr
+0x2001b 037313 ifetch 1 ,contr
+0x2001c 037314 store 1 ,mem_l2cap_rcv
+0x2001d 037315 and pdata ,0x0f ,temp
+0x2001e 037316 rshift4 pdata ,pdata
+0x2001f 037317 beq hid_type_set_protocol ,z_hid_rx_set_protocol
+0x20020 037318 beq hid_type_control ,z_hid_rx_process_hid_control
+0x20021 037319 branch hid_rx_process + 6
+:      037320 z_hid_rx_set_protocol:
+0x20022 037321 call hid_rx_process_handshake
+0x20023 037322 jam 0 ,mem_mouse_bt_boot_mode
+0x20024 037323 fetch 1 ,mem_l2cap_rcv
+0x20025 037324 isolate1 0 ,pdata
+0x20026 037325 rtn true
+0x20027 037326 jam 1 ,mem_mouse_bt_boot_mode
+0x20028 037327 rtn
+:      037329 z_hid_rx_process_hid_control:
+0x20029 037330 copy temp ,pdata
+0x2002a 037331 beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug
+0x2002b 037332 branch hid_rx_process_hid_control + 2
+              org 0x30001
+:      037336 z_entrance2:
+0x30001 037337 beq zcode_20 ,z_send_lmp_escape
+0x30002 037338 beq zcode_21 ,z_send_lmp_accepted
+0x30003 037339 beq zcode_22 ,z_mouse_check_reconn_target
+0x30004 037340 rtn
+:      037343 z_mouse_check_reconn_target:
+0x30005 037344 call p_mouse_tx_power_init
+0x30006 037345 fetch 1 ,mem_device_flag
+0x30007 037346 beq mode_24g_device ,p_mouse_start_24g_mode
+0x30008 037347 beq 0xff ,p_mouse_start_24g_mode
+0x30009 037348 call p_mouse_mode_bt_device1_multi_led_on
+0x3000a 037349 fetch 1 ,mem_xrecord_mode
+0x3000b 037350 beq rec_3_mode ,z_mouse3_0_check_reconn_target
+0x3000c 037351 beq rec_4_mode ,z_mouse4_0_check_reconn_target
+0x3000d 037352 branch p_mouse_null_enter_hibernate_enable
+:      037354 z_mouse3_0_check_reconn_target:
+0x3000e 037355 fetch 6 ,mem_hci_plap
+0x3000f 037356 branch app_bt_start_discovery_short ,blank
+0x30010 037357 branch mouse3_0_check_reconn_target + 3
+:      037360 z_mouse4_0_check_reconn_target:
+0x30011 037361 jam 1 ,mem_le_send_security_request_flag
+0x30012 037362 jam 1 ,mem_mouse_le_reconnect_flag
+0x30013 037363 arg 10 ,temp
+0x30014 037364 fetch 1 ,mem_mouse_fast_conn_flag
+0x30015 037365 beq 0xff ,z_mouse4_0_check_reconn_target_next
+0x30016 037366 fetcht 2 ,mem_mouse_direct_timeout
+:      037367 z_mouse4_0_check_reconn_target_next:
+0x30017 037368 storet 2 ,mem_mouse_direct_timer
+0x30018 037369 call app_lpm_mult_disable
+0x30019 037370 call p_le_check_adv_flag
+0x3001a 037371 setarg adv_flag_bredr_not_supported
+0x3001b 037372 istore 1 ,contr
+0x3001c 037374 arg mem_le_scan_data ,contr
+0x3001d 037375 call p_le_adv_data_update
+0x3001e 037377 branch check_51cmd_adv
+:      037378 z_send_lmp_escape:
+0x3001f 037379 fetch 1 ,mem_lmp_to_send
+0x30020 037380 beq lmp_ext_features_res ,z_send_lmpext_features_res
+0x30021 037381 beq lmp_ext_features_req ,z_send_lmpext_features_req
+0x30022 037382 branch send_lmp_escape
+:      037383 z_send_lmpext_features_res:
+0x30023 037384 call z_check_ssp_enable
+0x30024 037385 fetch 1 ,mem_lmp_to_send
+0x30025 037386 branch send_lmpext_features_res
+:      037387 z_send_lmpext_features_req:
+0x30026 037388 call z_check_ssp_enable
+0x30027 037389 fetch 1 ,mem_lmp_to_send
+0x30028 037390 branch send_lmpext_features_req
+:      037391 z_check_ssp_enable:
+0x30029 037392 fetch 1 ,mem_ssp_enable
+0x3002a 037393 branch ssp_disable ,blank
+0x3002b 037394 branch ssp_enable
+:      037396 z_send_lmp_accepted:
+0x3002c 037397 force 2 ,pdata
+0x3002d 037398 call msg_send_lmp
+0x3002e 037399 fetch 1 ,mem_lmi_opcode
+0x3002f 037400 istore 1 ,contw
+0x30030 037401 store 1 ,mem_lmi_opcode_temp
+0x30031 037402 call send_lmp_follow
+0x30032 037403 fetch 1 ,mem_lmi_opcode_temp
+0x30033 037404 beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
+0x30034 037405 branch send_lmp_accepted + 7
+:      037407 z_send_lmp_accepted_max_slot_req:
+0x30035 037408 fetch 1 ,mem_bt_rcvd_switch_req_accept
+0x30036 037409 rtn blank
+0x30037 037410 jam 0 ,mem_bt_rcvd_switch_req_accept
+0x30038 037411 fetch 1 ,mem_bt_send_lmp_setup_complete
+0x30039 037412 rtnne 2
+0x3003a 037413 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x3003b 037414 copy clkn_bt ,pdata
+0x3003c 037415 store 4 ,mem_aurand_send_delay_time
+0x3003d 037416 rtn
+              org 0x40001
+:      037421 z_entrance3:
+0x40001 037422 beq zcode_30 ,z_process_conn_sm
+0x40002 037423 rtn
+:      037425 z_process_conn_sm:
+0x40003 037426 call lmo_fifo_check
+0x40004 037427 nrtn blank
+:      037428 z_process_conn_sm_continue:
+0x40005 037429 fetch 1 ,mem_conn_sm
+0x40006 037430 rtn blank
+0x40007 037431 beq conn_sm_send_conn_req ,z_host_create_conn_send_conn_req
+0x40008 037432 beq conn_sm_wait_switch_after_host_connection ,z_host_creat_conn_wait_switch
+0x40009 037433 branch process_conn_sm_continue + 2
+:      037436 z_host_creat_conn_wait_switch:
+0x4000a 037437 fetch 1 ,mem_switch_flag
+0x4000b 037438 rtneq switch_flag_init
+0x4000c 037439 beq switch_flag_accept ,z_host_create_conn_switch_accept
+0x4000d 037440 branch host_creat_conn_wait_switch + 3
+:      037441 z_host_create_conn_switch_accept:
+0x4000e 037442 rtn master
+:      037443 z_host_create_conn_auth_pair:
+0x4000f 037445 fetch 1 ,mem_connection_options
+0x40010 037446 bbit1 connection_auth ,z_host_create_conn_auth_pair_true
+0x40011 037447 branch host_create_conn_auth_pair + 1
+:      037448 z_host_create_conn_auth_pair_true:
+0x40012 037449 fetch 1 ,mem_bt_send_lmp_setup_complete
+0x40013 037450 beq 1 ,host_create_conn_auth_pair_true
+0x40014 037452 fetch 1 ,mem_link_key_exists
+0x40015 037453 branch host_create_conn_auth_pair_nokey ,blank
+0x40016 037454 fetch 1 ,mem_lmp_conn_state
+0x40017 037455 rtnbit0 sent_setup_complete
+0x40018 037456 rtnbit0 received_setup_complete
+0x40019 037457 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x4001a 037458 rtn blank
+0x4001b 037459 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch
+0x4001c 037460 fetch 4 ,mem_aurand_send_delay_time
+0x4001d 037461 arg 20 ,temp
+0x4001e 037462 iadd temp ,temp
+0x4001f 037463 copy clkn_bt ,pdata
+0x40020 037464 isub temp ,null
+0x40021 037465 nbranch z_bt_send_max_slot_req_accept_after_switch_wait ,positive
+0x40022 037466 branch host_create_conn_auth
+:      037468 z_bt_send_max_slot_req_accept_after_switch_wait:
+0x40023 037469 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x40024 037470 rtn
+:      037472 z_host_create_conn_send_conn_req:
+0x40025 037473 jam 20 ,mem_mouse_send_switch_req_timer
+0x40026 037474 branch host_create_conn_send_conn_req
+              org 0x50001
+:      037479 z_entrance4:
+0x50001 037480 beq zcode_40 ,z_le_update_param
+0x50002 037481 beq zcode_41 ,z_le_update_channel_map
+0x50003 037482 beq zcode_42 ,z_le_mouse_bb_event_connect_complete
+0x50004 037483 beq zcode_43 ,z_quit_connection_cont
+0x50005 037484 rtn
+:      037486 z_le_update_param:
+0x50006 037487 call z_mouse_le_conn_param_check
+0x50007 037488 branch le_update_param + 8
+:      037489 z_mouse_le_lpm_mult_reinit:
+0x50008 037490 fetch 1 ,mem_lpm_mult_init
+0x50009 037491 store 1 ,mem_lpm_mult
+:      037492 z_mouse_le_conn_param_lpm_enable:
+0x5000a 037493 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0x5000b 037494 rtn
+:      037495 z_mouse_le_conn_param_lpm_disable:
+0x5000c 037496 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0x5000d 037497 rtn
+:      037498 z_mouse_le_conn_param_check:
+0x5000e 037499 fetch 1 ,mem_le_new_conninterval
+0x5000f 037500 sub pdata ,le_interval_15ms ,null
+0x50010 037501 nbranch z_mouse_le_conn_param_lpm_disable ,positive
+0x50011 037502 fetch 1 ,mem_le_new_connslavelatency
+0x50012 037503 fetcht 1 ,mem_lpm_mult_init
+0x50013 037504 isub temp ,null
+0x50014 037505 branch z_mouse_le_lpm_mult_reinit ,positive
+0x50015 037506 fetch 1 ,mem_le_new_connslavelatency
+0x50016 037507 store 1 ,mem_lpm_mult
+0x50017 037508 branch z_mouse_le_conn_param_lpm_enable
+:      037510 z_le_update_channel_map:
+0x50018 037511 fetch 1 ,mem_le_state
+0x50019 037512 rtnbit0 lestate_update_map
+0x5001a 037513 call z_le_channel_map_overflow_check
+0x5001b 037514 nrtn user
+0x5001c 037515 branch le_update_channel_map + 3
+:      037516 z_le_channel_map_overflow_check:
+0x5001d 037517 enable user
+0x5001e 037518 fetch 1 ,mem_le_event_count + 1
+0x5001f 037519 rshift4 pdata ,pdata
+0x50020 037520 rtnne 0x0f
+0x50021 037521 fetch 1 ,mem_le_instant + 1
+0x50022 037522 rshift4 pdata ,pdata
+0x50023 037523 rtnne 0x00
+0x50024 037524 branch disable_user
+:      037526 z_le_mouse_bb_event_connect_complete:
+0x50025 037527 fetch 1 ,mem_mouse_le_reconnect_flag
+0x50026 037528 nrtn blank
+0x50027 037529 fetch 1 ,mem_le_att_handle
+0x50028 037530 sub pdata ,26 ,pdata
+0x50029 037531 nrtn zero
+0x5002a 037532 branch mouse_le_write_enable
+:      037534 z_quit_connection_cont:
+0x5002b 037535 call app_disconn_reason_collect_bt
+0x5002c 037536 call sniff_exit
+0x5002d 037537 jam bt_evt_bb_disconnected ,mem_fifo_temp
+0x5002e 037538 call ui_ipc_send_event
+0x5002f 037539 call init_lmp_work
+0x50030 037540 call l2cap_init_work
+0x50031 037541 branch quit_connection_cont + 8
+              org 0x60001
+:      037546 z_entrance5:
+0x60001 037547 beq zcode_50 ,z_mouse_start_discovery
+0x60002 037548 rtn
+:      037550 z_mouse_start_discovery:
+0x60003 037551 jam 0 ,mem_le_send_security_request_flag
+0x60004 037552 call p_mouse_tx_power_init
+0x60005 037553 jam mode_bt_device1 ,mem_device_flag
+0x60006 037554 jam 0 ,mem_mouse_clear_sensor_data_flag
+0x60007 037555 fetch 2 ,mem_ui_state_map
+0x60008 037556 bbit1 ui_state_ble_adv ,z_mouse_start_discovery_norandom
+0x60009 037557 fetch mouse_flag_len ,mem_mouse_flag
+0x6000a 037558 bbit0 mouse_enable_ble_random_addre ,z_mouse_start_discovery_norandom
+0x6000b 037559 call p_mouse_load_random_addr_increase_count
+0x6000c 037560 fetcht 2 ,mem_random_addr_increase_count
+0x6000d 037561 increase 1 ,temp
+0x6000e 037562 storet 2 ,mem_random_addr_increase_count
+0x6000f 037563 storet 2 ,mem_le_lap + 1
+0x60010 037564 call p_mouse_store_random_addr_increase_count
+0x60011 037565 random pdata
+0x60012 037566 store 1 ,mem_le_lap
+:      037567 z_mouse_start_discovery_norandom:
+0x60013 037568 fetch 3 ,mem_le_lap_high_3b
+0x60014 037569 store 3 ,mem_le_lap + 3
+0x60015 037570 call p_mouse_le_fast_conn_disable
+0x60016 037571 call app_lpm_mult_disable
+0x60017 037572 fetch 2 ,mem_discovery_timeout
+0x60018 037573 store 2 ,mem_mouse_discovery_timer
+0x60019 037574 jam 6 ,mem_connection_options
+0x6001a 037575 setarg 0
+0x6001b 037576 store 2 ,mem_mouse_no_data_timer
+0x6001c 037577 store 2 ,mem_mouse_direct_timer
+0x6001d 037578 arg mouse_store_eeprom_flag ,queue
+0x6001e 037579 call mouse_enable_function_flag
+0x6001f 037580 call mouse_bt_discovery_button_down_disable
+0x60020 037581 fetch 1 ,mem_device_option
+0x60021 037582 isolate1 mode_4_mouse ,pdata
+0x60022 037583 call z_check_51cmd_adv ,true
+0x60023 037584 fetch 1 ,mem_device_option
+0x60024 037585 isolate1 mode_3_mouse ,pdata
+0x60025 037586 call check_51cmd_start_discovery ,true
+0x60026 037589 branch p_mouse_discovery_multi_led_blink
+:      037591 z_check_51cmd_adv:
+0x60027 037592 jam 0 ,mem_mouse_le_reconnect_flag
+0x60028 037593 call p_le_check_adv_flag
+0x60029 037594 setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
+0x6002a 037595 istore 1 ,contr
+0x6002b 037596 arg mem_le_adv_swift_pair ,contr
+0x6002c 037597 call p_le_adv_data_update
+0x6002d 037598 branch check_51cmd_adv
+              org 0x70001
+:      037602 z_entrance6:
+0x70001 037603 beq zcode_60 ,z_mouse_start_24g_mode
+0x70002 037604 beq zcode_61 ,z_mouse_24g_attempt_fail
+0x70003 037605 rtn
+:      037607 z_mouse_start_24g_mode:
+0x70004 037609 set0 mark_24g ,mark
+0x70005 037610 fetch 1 ,mem_24g_attempt_count
+0x70006 037611 and pdata ,0x01 ,pdata
+0x70007 037612 ncall z_g24_fast_conn_all_powerful ,blank
+0x70008 037613 call z_g24_normal_connect ,blank
+0x70009 037614 fetch 1 ,mem_24g_pairing_sm
+0x7000a 037615 rtnne state_24g_pairing_success
+0x7000b 037616 setarg 0
+0x7000c 037617 store 2 ,mem_24g_check_dongle_times
+0x7000d 037618 call p_g24_tx_attemp_data_prep
+:      037619 z_g24_tx_attemp_dongle_loop:
+0x7000e 037621 nop 2000
+0x7000f 037622 fetch 1 ,mem_24g_check_dongle_times
+0x70010 037623 beq 10 ,p_g24_stop_g24_mode
+0x70011 037624 call p_g24_transmit_receive_ack
+0x70012 037625 nbranch z_g24_attemp_txdata_retry ,sync
+0x70013 037626 nbranch z_g24_attemp_txdata_retry ,user3
+:      037627 z_g24_tx_attemp_dongle_succ:
+0x70014 037628 set1 mark_24g ,mark
+0x70015 037629 setarg 0
+0x70016 037630 store 2 ,mem_24g_check_dongle_times
+0x70017 037631 store 1 ,mem_mouse_24g_pair_timer
+0x70018 037632 store 2 ,mem_24g_attempt_count
+0x70019 037633 jam bt_evt_24g_attempt_success ,mem_fifo_temp
+0x7001a 037634 call ui_ipc_send_event
+:      037635 z_g24_tx_attemp_dongle_loop_exit:
+0x7001b 037636 call p_g24_txbuf_clear
+0x7001c 037637 branch p_g24_transmit_by_interrupt_enable
+:      037652 z_g24_normal_connect:
+0x7001d 037653 call p_mouse_tx_power_init
+0x7001e 037654 fetch 4 ,mem_mouse_24g_addr
+0x7001f 037655 branch z6_g24_ch_syncword_crc8_init
+:      037657 z_g24_fast_conn_all_powerful:
+0x70020 037658 jam tx_power_pair ,mem_tx_power
+0x70021 037659 fetch 4 ,mem_mouse_24g_addr_init
+:      037660 z6_g24_ch_syncword_crc8_init:
+0x70022 037661 call p_g24_update_addr_and_synccrc8
+0x70023 037662 branch p_g24_ch
+:      037665 z_g24_attemp_txdata_retry:
+0x70024 037666 fetch 2 ,mem_24g_check_dongle_times
+0x70025 037667 increase 1 ,pdata
+0x70026 037668 store 2 ,mem_24g_check_dongle_times
+0x70027 037669 call p_g24_ch
+0x70028 037670 branch z_g24_tx_attemp_dongle_loop
+:      037673 z_mouse_24g_attempt_fail:
+0x70029 037674 call p_mouse_sensor_powerdown_check
+0x7002a 037675 fetch 2 ,mem_24g_attempt_count
+0x7002b 037676 nbranch z_mouse_24g_attempt_fail_again ,blank
+0x7002c 037677 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+0x7002d 037678 call p_mouse_tx_power_init
+0x7002e 037679 call p_g24_check_51cmd_stop_24g
+0x7002f 037680 jam 0 ,mem_link_key_exists
+0x70030 037681 call p_mouse_setgpio_hibernate
+0x70031 037682 branch p_app_enter_hibernate
+:      037684 z_mouse_power_on_check:
+0x70032 037685 fetch 1 ,mem_24g_get_ack_fail
+0x70033 037686 nbranch p_g24_stop_g24_mode ,blank
+0x70034 037687 jam 1 ,mem_24g_get_ack_fail
+0x70035 037688 fetch 1 ,mem_power_on_flag
+0x70036 037689 bbit1 2 ,z_mouse_wakeup_from_hibernate
+0x70037 037690 branch p_g24_auto_pair_start
+:      037692 z_mouse_wakeup_from_hibernate:
+0x70038 037693 setarg 800
+0x70039 037694 store 2 ,mem_24g_attempt_count
+0x7003a 037695 branch z_mouse_start_24g_mode
+:      037698 z_mouse_24g_attempt_fail_again:
+0x7003b 037699 increase -1 ,pdata
+0x7003c 037700 store 2 ,mem_24g_attempt_count
+0x7003d 037701 branch z_mouse_power_on_check ,blank
+0x7003e 037702 branch z_mouse_start_24g_mode
+              org 0x80001
+:      037707 z_entrance7:
+0x80001 037708 beq zcode_70 ,z_g24_auto_pair_start
+0x80002 037709 beq zcode_71 ,z_mouse_24g_pairing_button
+0x80003 037710 rtn
+:      037712 z_g24_auto_pair_start:
+0x80004 037713 set0 mark_24g ,mark
+0x80005 037714 call z_g24_pair_init
+0x80006 037715 call p_g24_tx_attemp_data_prep
+:      037716 z_g24_auto_pair_start_loop:
+0x80007 037718 nop 2000
+0x80008 037719 fetch 1 ,mem_24g_check_dongle_times + 1
+0x80009 037720 beq 0xa0 ,p_g24_stop_g24_mode
+0x8000a 037721 call p_g24_transmit_receive_ack
+0x8000b 037722 nbranch z_g24_auto_pair_retry ,sync
+0x8000c 037723 nbranch z_g24_auto_pair_retry ,user3
+0x8000d 037724 call p_g24_ackpayload_parse
+0x8000e 037725 call p_mouse_tx_power_init
+0x8000f 037726 fetch 4 ,mem_24g_addr
+0x80010 037727 fetcht 4 ,mem_24g_paring_addr
+0x80011 037728 isub temp ,null
+0x80012 037729 branch z_g24_start_pairing_sm1 ,zero
+0x80013 037730 set1 mark_24g ,mark
+0x80014 037731 setarg 0
+0x80015 037732 store 2 ,mem_24g_check_dongle_times
+0x80016 037733 jam bt_evt_24g_attempt_success ,mem_fifo_temp
+0x80017 037734 call ui_ipc_send_event
+0x80018 037735 call p_g24_txbuf_clear
+0x80019 037736 branch p_g24_transmit_by_interrupt_enable
+:      037751 z_g24_auto_pair_retry:
+0x8001a 037752 fetch 1 ,mem_24g_get_ack_fail
+0x8001b 037753 increase 1 ,pdata
+0x8001c 037754 store 1 ,mem_24g_get_ack_fail
+0x8001d 037755 sub pdata ,3 ,null
+0x8001e 037756 branch z_g24_auto_pair_start_loop ,positive
+0x8001f 037757 jam 0 ,mem_24g_get_ack_fail
+0x80020 037758 fetch 2 ,mem_24g_check_dongle_times
+0x80021 037759 increase 1 ,pdata
+0x80022 037760 store 2 ,mem_24g_check_dongle_times
+0x80023 037761 branch z_g24_auto_pair_start_loop
+:      037772 z_g24_pair_init:
+0x80024 037773 setarg 0
+0x80025 037774 store 2 ,mem_24g_check_dongle_times
+0x80026 037775 store 1 ,mem_24g_get_ack_fail
+0x80027 037776 store 2 ,mem_24g_attempt_count
+0x80028 037777 jam type_kb ,mem_24g_data_type
+0x80029 037778 jam tx_power_f5db ,mem_tx_power
+0x8002a 037779 jam 0 ,mem_24g_pid
+0x8002b 037780 jam g24_pair_ch ,mem_24g_ch
+0x8002c 037781 fetch 4 ,mem_24g_paring_addr
+0x8002d 037782 branch p_g24_update_addr_and_synccrc8
+:      037784 z_g24_auto_pair_pair_attemp:
+0x8002e 037785 call z_g24_pair_init
+0x8002f 037786 branch z_g24_auto_pair_start_loop
+:      037788 z_g24_start_pairing_sm1:
+0x80030 037789 set1 mark_24g ,mark
+0x80031 037790 call z_g24_pair_init
+:      037791 z_g24_set_pairing_sm_1:
+0x80032 037792 jam state_24g_pairing_0 ,mem_24g_pairing_sm
+0x80033 037793 rtn
+:      037795 z_mouse_24g_pairing_button:
+0x80034 037797 call p_g24_check_51cmd_stop_24g
+0x80035 037798 call p_mouse_sensor_powerdown_check
+0x80036 037799 arg mosue_24g_pairing_flag ,queue
+0x80037 037800 call mouse_enable_function_flag
+0x80038 037801 setarg 0
+0x80039 037802 store 2 ,mem_mouse_direct_timer
+0x8003a 037803 store 1 ,mem_mouse_send_blank_timer
+0x8003b 037804 store 2 ,mem_24g_attempt_count
+0x8003c 037805 store 2 ,mem_24g_check_dongle_times
+0x8003d 037806 call mouse_stop_discovery
+0x8003e 037807 branch z_g24_start_pairing_sm1
+              org 0x90001
+:      037811 z_entrance8:
+:      037823 z_mouse_setting_config:
+0x90001 037824 fetch 4 ,mem_lap
+0x90002 037825 store 4 ,mem_24g_device_addr
+0x90003 037826 call mouse_gpio_init
+0x90004 037827 call p_mouse_multi_led_gpio_set_float
+0x90005 037828 fetcht 1 ,mem_flash_ncs_gpio
+0x90006 037829 call gpio_config_output
+0x90007 037831 call mouse_param_init
+0x90008 037832 call z_mouse_bt_sdp_update
+0x90009 037833 setarg mem_mouse_le_uuid_sup
+0x9000a 037834 store 2 ,mem_ui_le_uuid_table
+0x9000b 037836 setarg 0
+0x9000c 037837 store 2 ,mem_lpm_interval
+0x9000d 037840 jam mouse_6clk_angle ,mem_config_sensor_angle
+0x9000e 037842 setarg 0x1802
+0x9000f 037843 store 2 ,mem_fcomp_mul
+0x90010 037844 call adc_init_data
+0x90011 037845 call mouse_adc_init
+0x90012 037846 call le_set_config_fixed_ltk
+0x90013 037847 call le_set_justwork
+0x90014 037848 call le_set_fixed_ltk
+0x90015 037849 call le_set_config_read_authentication
+0x90016 037850 call p_le_addr_random_config
+0x90017 037851 call p_flash_release_deep_power_down
+0x90018 037852 call p_mouse_set_24g_addr_flash
+0x90019 037853 fetch 3 ,mem_flash_base
+0x9001a 037854 iadd regb ,pdata
+0x9001b 037855 call spid_read_flash
+0x9001c 037857 call p_mouse_load_flash_info_check
+0x9001d 037858 rtn
+:      037861 z_mouse_bt_sdp_update:
+0x9001e 037862 call enable_authrom
+0x9001f 037863 arg 0x8c00 ,contr
+0x90020 037864 arg mem_mouse_uuid_list ,contw
+0x90021 037865 arg 267 ,loopcnt
+0x90022 037866 call memcpy
+0x90023 037868 arg mem_keyboard_hid_descriptor ,contr
+0x90024 037869 arg 45 ,loopcnt
+0x90025 037870 call memcpy
+0x90026 037872 arg 0x8d3f ,contr
+0x90027 037873 arg 50 ,loopcnt
+0x90028 037874 call memcpy
+0x90029 037888 arg mem_sdp_updata_list ,contr
+0x9002a 037889 arg 12 ,loopcnt
+0x9002b 037890 call memcpy
+0x9002c 037892 arg 0x8d71 ,contr
+0x9002d 037893 arg 265 ,loopcnt
+0x9002e 037894 call memcpy
+0x9002f 037895 jam 0 ,mem_mouse_uuid_list + 23
+0x90030 037896 jam 0x66 ,mem_mouse_uuid_list + 15
+0x90031 037897 jam 0x74 ,mem_mouse_uuid_list + 195
+0x90032 037898 jam 0x78 ,mem_mouse_uuid_list + 191
+0x90033 037899 jam 0x7a ,mem_mouse_uuid_list + 189
+0x90034 037900 setarg 0x401f
+0x90035 037901 store 2 ,mem_mouse_uuid_list + 350
+0x90036 037902 setarg 0x6d04
+0x90037 037903 store 2 ,mem_mouse_uuid_list + 455
+0x90038 037904 setarg 0x16b0
+0x90039 037905 store 2 ,mem_mouse_uuid_list + 461
+0x9003a 037906 branch p_mouse_bt_sdp_set
+              org 0xa0001
+:      037915 z_entrance9:
+0xa0001 037916 beq zcode_90 ,z_g24_pairing_sm
+0xa0002 037917 beq zcode_91 ,z_g24_paring_mode
+0xa0003 037918 beq zcode_92 ,z_mouse_24g_pairing_complete
+0xa0004 037919 rtn
+:      037921 z_g24_pairing_sm:
+0xa0005 037922 fetch 1 ,mem_24g_ensure
+0xa0006 037923 beq ensure_on_24g ,enable_user
+0xa0007 037924 fetch 1 ,mem_24g_pairing_sm
+0xa0008 037925 beq state_24g_pairing_0 ,z_g24_pairing_sm_0
+0xa0009 037926 beq state_24g_pairing_1 ,z_g24_pairing_sm_1
+0xa000a 037927 beq state_24g_pairing_2 ,z_g24_pairing_sm_2
+0xa000b 037928 beq state_24g_pairing_3 ,z_g24_pairing_sm_3
+0xa000c 037929 branch assert
+:      037931 z_g24_pairing_sm_0:
+0xa000d 037932 jam state_24g_pairing_1 ,mem_24g_pairing_sm
+0xa000e 037933 jam 250 ,mem_mouse_24g_pair_timer
+0xa000f 037934 branch z_g24_pairing_sm
+:      037935 z_g24_pairing_sm_1:
+0xa0010 037936 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
+0xa0011 037937 jam 0xaa ,mem_24g_common_temp
+0xa0012 037938 branch z_g24_pairing_sm_common
+:      037939 z_g24_pairing_sm_2:
+0xa0013 037940 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
+0xa0014 037941 jam 0x55 ,mem_24g_common_temp
+0xa0015 037942 branch z_g24_pairing_sm_common
+:      037943 z_g24_pairing_sm_3:
+0xa0016 037944 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
+0xa0017 037945 jam 0x22 ,mem_24g_common_temp
+:      037946 z_g24_pairing_sm_common:
+0xa0018 037947 fetch 1 ,mem_24g_data_type
+0xa0019 037948 and_into bits_data ,pdata
+0xa001a 037949 store 1 ,mem_24g_common_temp + 1
+0xa001b 037950 fetch 4 ,mem_24g_device_addr
+0xa001c 037951 store 4 ,mem_24g_common_temp + 2
+:      037952 z_g24_put_pairing_data_in_buff:
+0xa001d 037953 jam 0 ,mem_24g_common_temp + 6
+0xa001e 037954 arg mem_24g_common_temp ,rega
+0xa001f 037955 arg 7 ,temp
+0xa0020 037956 call p_g24_put_data_in_buff
+0xa0021 037957 call p_g24_txdata_enable_tx
+0xa0022 037958 branch enable_user
+:      037960 z_g24_paring_mode:
+0xa0023 037961 fetch 1 ,mem_24g_pairing_sm
+0xa0024 037962 rtneq state_24g_pairing_success
+0xa0025 037963 beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
+0xa0026 037964 beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
+0xa0027 037965 beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
+0xa0028 037966 rtn
+:      037968 z_g24_pairing_sm_1_waiting_ack:
+0xa0029 037969 jam state_24g_pairing_2 ,mem_24g_pairing_sm
+0xa002a 037970 branch p_g24_transmit_abandon
+:      037971 z_g24_pairing_sm_2_waiting_ack:
+0xa002b 037972 jam state_24g_pairing_3 ,mem_24g_pairing_sm
+0xa002c 037973 branch p_g24_transmit_abandon
+:      037974 z_g24_pairing_sm_3_waiting_ack:
+0xa002d 037975 jam state_24g_pairing_success ,mem_24g_pairing_sm
+0xa002e 037976 jam bt_evt_24g_pairing_complete ,mem_fifo_temp
+0xa002f 037977 call ui_ipc_send_event
+0xa0030 037978 fetch 4 ,mem_24g_rxpayload + 2
+0xa0031 037979 call p_g24_update_addr_and_synccrc8
+0xa0032 037980 branch p_g24_transmit_abandon
+:      037983 z_mouse_24g_pairing_complete:
+0xa0033 037984 call p_g24_transmit_by_interrupt_enable
+0xa0034 037985 jam 1 ,mem_mouse_24g_enter_lpm_enable
+0xa0035 037986 arg mosue_24g_pairing_flag ,queue
+0xa0036 037987 call mouse_disable_function_flag
+0xa0037 037988 setarg 0
+0xa0038 037989 store 2 ,mem_24g_attempt_count
+0xa0039 037990 jam 0 ,mem_mouse_move_flag
+0xa003a 037991 call mouse_read_sensor_common
+0xa003b 037993 call p_mouse_tx_power_init
+0xa003c 037995 fetch 4 ,mem_24g_addr
+0xa003d 037996 store 4 ,mem_mouse_24g_addr
+0xa003e 037998 call mouse_cheak_select_24gdevice
+0xa003f 037999 branch p_mouse_store_flash_device_info
+              org 0xb0001
+:      038004 z_entrancea:
+0xb0001 038005 beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
+0xb0002 038006 beq zcode_a2 ,z_mouse_le_bb_disconnected
+0xb0003 038007 beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
+0xb0004 038008 beq zcode_a4 ,z_mouse_before_hibernate
+0xb0005 038009 rtn
+:      038011 z_mouse_le_conn_param_update_rsp_recieved:
+0xb0006 038012 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
+0xb0007 038013 rtneq ble_signaling_connect_parameter_update_accepted
+0xb0008 038014 fetch 1 ,mem_le_tsniff
+0xb0009 038015 rshift2 pdata ,pdata
+0xb000a 038016 sub pdata ,le_interval_15ms ,null
+0xb000b 038017 branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
+0xb000c 038018 setarg le_interval_11_25ms
+0xb000d 038019 store 2 ,mem_le_interval_min
+0xb000e 038020 store 2 ,mem_le_interval_min + 2
+0xb000f 038021 call p_app_updata_le_param
+0xb0010 038022 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0xb0011 038023 rtn
+:      038025 z_mouse_le_conn_param_update_rsp_not_accepted:
+0xb0012 038026 jam 1 ,mem_mouse_le_updata_not_accepted_flag
+0xb0013 038027 branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+:      038029 z_mouse_bb_event_reconn_timeout:
+:      038030 z_mouse_bb_event_reconn_failed:
+0xb0014 038031 fetch 2 ,mem_ui_state_map
+0xb0015 038032 rtnbit1 ui_state_btn_down
+0xb0016 038033 rtnbit1 ui_state_bt_discovery
+0xb0017 038034 rtnbit1 ui_state_ble_adv
+0xb0018 038035 fetch mouse_flag_len ,mem_mouse_flag
+0xb0019 038036 rtnbit1 mouse_bt_discovery_button_down_flag
+0xb001a 038037 branch app_bb_hibernate
+:      038039 z_mouse_le_bb_disconnected:
+0xb001b 038040 jam 0 ,mem_mouse_le_bb_connected_flag
+0xb001c 038041 setarg le_interval_8_75ms
+0xb001d 038042 store 2 ,mem_le_interval_min
+0xb001e 038043 store 2 ,mem_le_interval_min + 2
+0xb001f 038044 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0xb0020 038045 jam 0 ,mem_mouse_clear_sensor_data_flag
+0xb0021 038046 call p_mouse_data_init
+0xb0022 038047 call le_clr_config_more_data
+0xb0023 038048 call p_mouse_store_flash_device_info
+0xb0024 038049 branch mouse_bb_disconnected
+:      038052 z_mouse_before_hibernate:
+0xb0025 038053 enable user
+0xb0026 038054 hfetch 4 ,0x8138
+0xb0027 038055 setflag user ,26 ,pdata
+0xb0028 038056 hstore 4 ,core_lpm_reg
+0xb0029 038057 call lpm_write_ctrl
+0xb002a 038058 call disable_authrom
+0xb002b 038060 call p_mouse_store_flash_device_info
+0xb002c 038061 call mouse_before_hibernate_wheel_gpio_set
+0xb002d 038062 call p_mouse_setgpio_hibernate
+0xb002e 038063 fetch 1 ,mem_device_flag
+0xb002f 038064 sub pdata ,mode_24g_device ,null
+0xb0030 038065 call p_mouse_select_device_button_gpio_set_suspend ,zero
+0xb0031 038066 call p_flash_deep_power_down
+0xb0032 038067 hfetch 1 ,core_gpio_sel1
+0xb0033 038068 and pdata ,0xf7 ,pdata
+0xb0034 038069 hstore 1 ,core_gpio_sel1
+0xb0035 038070 hfetch 1 ,core_gpio_pd3
+0xb0036 038071 set1 0 ,pdata
+0xb0037 038072 hstore 1 ,core_gpio_pd3
+0xb0038 038073 rtn
+              org 0xc0001
+:      038078 z_entranceb:
+0xc0001 038080 beq zcode_b1 ,z_mouse_sniff_not_accept
+0xc0002 038081 beq zcode_b2 ,z_mouse_enter_sniff_check
+0xc0003 038082 beq zcode_b3 ,z_mouse_le_ll_start_encryt
+0xc0004 038083 beq zcode_b4 ,z_mouse_bb_event_disconnected
+0xc0005 038084 beq zcode_b5 ,z_mouse_irtual_cable_unplug
+0xc0006 038085 rtn
+:      038087 z_mouse_sniff_not_accept:
+0xc0007 038088 fetch 1 ,mem_mouse_enter_sniff_count
+0xc0008 038089 rtneq 2
+0xc0009 038090 increase 1 ,pdata
+0xc000a 038091 store 1 ,mem_mouse_enter_sniff_count
+0xc000b 038092 jam 0x12 ,mem_sniff_param_interval
+0xc000c 038093 branch app_bt_enter_sniff
+:      038095 z_mouse_enter_sniff_check:
+0xc000d 038096 fetch 1 ,mem_mouse_enter_sniff_count
+0xc000e 038097 rtnne 2
+0xc000f 038098 jam 0 ,mem_mouse_enter_sniff_count
+0xc0010 038099 jam 0x0e ,mem_sniff_param_interval
+0xc0011 038100 branch app_bt_enter_sniff
+:      038102 z_mouse_le_ll_start_encryt:
+0xc0012 038103 fetch 1 ,mem_mouse_le_reconnect_flag
+0xc0013 038104 beq 1 ,z_mouse_le_ll_reconn_start_encryt
+0xc0014 038105 branch z_mouse_le_ll_enable_start_enc_flag
+:      038106 z_mouse_le_ll_reconn_start_encryt:
+0xc0015 038107 call p_app_updata_le_param
+0xc0016 038108 jam 5 ,mem_le_start_encrypt_timer
+:      038109 z_mouse_le_ll_enable_start_enc_flag:
+0xc0017 038110 arg ll_start_enc_flag ,queue
+0xc0018 038111 branch mouse_le_enable_connect_flag
+:      038113 z_mouse_bb_event_disconnected:
+0xc0019 038114 jam 0 ,mem_bt_rcvd_switch_req_accept
+0xc001a 038115 jam 0 ,mem_bt_send_lmp_setup_complete
+0xc001b 038116 jam 0 ,mem_mouse_bt_send_first_package_flag
+0xc001c 038117 call p_mouse_store_flash_device_info
+0xc001d 038118 branch mouse_bb_disconnected
+:      038120 z_mouse_irtual_cable_unplug:
+0xc001e 038121 setarg 0x01
+0xc001f 038122 store 6 ,mem_plap
+0xc0020 038123 jam rec_3_mode ,mem_record_bt_mode
+0xc0021 038124 jam 0xff ,mem_mouse_fast_conn_flag
+0xc0022 038125 call mouse_before_store_reconn_info
+0xc0023 038126 jam 0xff ,mem_device1_type
+0xc0024 038127 branch p_mouse_store_flash_device_info
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.meta
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.meta	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.meta	(working copy)
@@ -0,0 +1,38127 @@
+define REVD
+//define FPGA
+define ROMCODE
+define PATCH
+define ADC
+//define RAM_VERSION
+//define CLK24M
+//define DEBUG_MALLOC
+//define DEBUG_H4LOG_ENABLE
+//define DEBUG_LIGHT_STATE
+//define E2_LOG
+//define LMP_DBG
+//define ACL_DEBUG
+//define DCDC
+define NVRAM
+define RELEASE
+define SECURE_CONNECTION
+define DEBUG_RF_INIT
+//define SPI_SIMULATE
+//define ROM_RESPIN_OPTIONAL
+
+define SIMPLE_PAIRING
+define COMPILE_RFCOMM
+define COMPILE_SHUTTER
+define COMPILE_AntiLost
+//define COMPILE_IR
+define COMPILE_KEYBOARD
+define COMPILE_MOUSE
+define COMPILE_MODULE
+//define COMPILE_AT
+//define COMPILE_PRCP
+//define COMPILE_USB
+//define COMPILE_DONGLE
+define COMPILE_LE
+define COMPILE_24G
+define COMPILE_CAR
+define COMPILE_REMOTE_CAR
+
+
+INCLUDE "bt_format"
+
+org 0x0000		// start from patch ram address start
+//define DONGLE
+define MOUSE
+define G24
+define BLE
+define CLASSIC_BT
+define MOUSE_SMOOTHER
+define ADC_ENABLE
+//define P24G_LOG
+//define RF_DEBUG
+define BLE_FAST_CONN_ENABLE
+
+
+//define DEBUGLOG
+//define DEBUGLOG_CALLBACK
+//define DEBUGLOG_EVENT
+//define DEBUGLOG_CMD
+//define DEBUGLOG_MISC
+//define DEBUGLOG_STATUS
+//define DEBUGLOG_PARSE_LMP
+//define DEBUGLOG_SEND_LMP
+//define DEBUGLOG_CONN_SM
+//define DEBUGLOG_UPPER_SM
+
+
+p_start:
+	branch p_patch_array
+
+// zcode start
+p_zcode:
+
+//only for power on once
+p_wake_from_power:
+	call p_mouse_data_init
+	fetch 1,mem_tx_power
+	store 1,mem_tx_power_temp
+	call power_ctrl_pac_succ_cnt_init
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_combination_ui_button_count	//combination key timer init
+	fetch 1,mem_bt_ui_button_timeout
+	store 1,mem_bt_ui_button_count	//bt key timer init
+	call mouse_bt_discovery_button_down_disable
+	call p_mouse_spi_init
+	call p_drawing_optima_init
+	call p_mouse_cb_fuction
+	call p_mouse_wakeup_from_power
+	call p_mouse_select_device_button_wakeup_check	//hibernate wakeup need 190ms
+p_mouse_setting_config:
+	jam ZCODE_80,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+
+p_mouse_cb_fuction:
+	setarg p_mouse_g24_package_data
+	store 2,mem_cb_24g_data
+	setarg p_mouse_le
+	store 2,mem_cb_le_process
+	setarg p_le_mouse_bb_event_connect_complete
+	store 2,mem_cb_att_write
+	setarg p_mouse_bt
+	store 2,mem_cb_bt_process
+	setarg p_mouse_before_lpm
+	store 2,mem_cb_before_lpm
+	setarg p_mouse_priority_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg p_mouse_idle
+	store 2,mem_cb_idle_process
+	setarg p_mouse_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg p_mouse_bb_event_timer
+	store 2,mem_cb_event_timer
+	rtn	
+
+p_mouse_wakeup_from_power:
+	setarg 25
+	store 2,mem_24g_transmit_by_interrupt_exit_count_init
+	ncall p_mouse_24g_transmit_by_interrupt_exit_count_max,wake
+	call p_mouse_sensor_powerdown
+p_mouse_wakeup_no_from_power:
+	fetch 1,mem_reconn_times_init
+	store 1,mem_reconn_times
+	rtn
+p_mouse_24g_transmit_by_interrupt_exit_count_max:
+	setarg 375
+	store 2,mem_24g_transmit_by_interrupt_exit_count_init
+	rtn
+
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+//	nop 1
+//	nop 1
+//	nop 1
+	
+	
+	
+p_patch_array:
+	bbit1 8,pf_patch_ext
+	//patch00_0 and patch11_2 are unuseful because of otp
+	beq patch00_1,p_soft_reset_1
+	beq patch00_2,p_soft_reset_2
+	beq patch10_5,p_shutdown_radio
+	beq patch11_1,p_set_freq_tx
+	beq patch11_2,p_initialize_radio_cont
+	beq patch03_3,p_page_wait_fhs_reply_ok
+	beq patch04_6,p_role_switch_master
+	beq patch09_0,p_quit_connection_cont
+	beq patch09_2,p_prepare_tx
+	beq patch0a_1,p_slave_conn_recv_packet
+ 	beq patch0b_1,p_process_dmh
+	beq patch14_7,p_lpm_dispatch
+	beq patch15_5,p_lpm_set_mult
+	beq patch19_3,app_bt_start_reconnect+3
+	beq patch1d_1,p_mouse_bb_disconnected
+	beq patch14_1,p_init_param
+	beq patch16_1,p_lpm_check_wake_lock
+	beq patch16_2,p_g24_dispatch
+	beq patch18_4,p_device_init
+	beq patch1c_3,p_mouse_seting_dpi
+	beq patch1c_6,p_mouse_motion
+	beq patch1d_2,p_mouse_bb_event_discovery_btn
+	beq patch1d_3,p_mouse_start_discovery
+	beq patch1d_4,p_mouse_stop_discovery
+	branch loop
+pf_patch_ext:
+	beq patch27_1,p_le_slave_match
+	beq patch28_3,p_le_next_adv_channel
+	beq patch29_2,p_le_receive_skip
+	beq patch2a_7,p_le_update_param
+	beq patch2b_1,p_le_update_channel_map
+	beq patch2c_3,p_le_prepare_tx
+	beq patch2c_6,p_le_parse
+	beq patch2c_7,p_le_parse_l2cap
+	beq patch2d_2,p_le_adv_not_match
+	beq patch2e_7,p_le_lpm_setmult
+	beq patch20_5,p_hid_rx_process
+	beq patch30_0,p_parse_lmp_accepted
+	beq patch30_2,p_send_lmp
+	beq patch31_0,p_process_conn_sm
+	beq patch31_4,p_twspi_reset
+	beq patch31_5,p_spid_init
+	beq patch3f_2,p_check_51cmd_once_continue
+	branch loop
+	
+
+
+p_mouse_select_device_button_wakeup_check:
+	jam 0,mem_mouse_select_device_button_wakeup_flag
+	call p_mouse_pb_button_check
+	nrtn true
+	call delay_10ms
+	call p_mouse_pb_button_check
+	nrtn true
+	jam 1,mem_mouse_select_device_button_wakeup_flag
+	rtn
+
+
+//p_mouse_switch_Hwakeup_byPB:
+//	fetch 1,mem_mouse_select_device_button_wakeup_flag
+//	rtn blank
+//	call p_mouse_switch_device_flag
+//	branch p_mouse_store_flash_device_info	
+
+p_soft_reset_1:
+	arg mem_sp_state,contw
+	arg 12,loopcnt
+	call clear_mem
+	call p_mouse_le_txbuff_load
+	call rfcomm_init
+	call init_lmp
+	ncall lpm_disable_exen_output,wake
+	call ui_init+1
+	branch soft_reset+11
+	
+p_soft_reset_2:
+	call app_lpm_init,wake
+	call publickey_init
+	call lpm_recover_clk,wake
+p_sp_cal_loop:
+	call sp_calc_sequence
+	fetch 1,mem_ssp_enable
+	branch main_loop,blank
+	fetch 1,mem_sp_local_key_invalid // simple pairing is not ready
+	branch p_sp_cal_loop,blank
+	branch main_loop
+
+p_init_param:
+	setarg param_le_version
+	store 3,mem_lmp_version
+	setarg param_le_subversion
+	store 2,mem_lmp_version+3
+	branch init_param+12
+
+p_lpm_check_wake_lock:
+	rtnmark1 mark_24g
+	fetch 1,mem_mouse_multi_led_state
+	nbranch disable_blank,blank
+	fetch 1,mem_mouse_multi_led_blink_count
+	nbranch disable_blank,blank
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	branch disable_blank,blank
+	fetch 1,mem_mouse_le_conn_param_reject
+	beq LE_LPM_DISABLE,disable_blank
+	fetch 2,mem_sdp_remote_cid
+	nbranch disable_blank,blank
+	fetch 1,mem_mouse_wheel_trigger
+	nbranch disable_blank,blank
+	branch enable_blank
+
+
+p_g24_dispatch:
+	rtnmark0 mark_24g
+	fetch 1,mem_24g_transmit_by_interrupt
+	beq G24_TX_TIMER_INT_ENABLE,p_g24_transmit_by_interrupt
+p_g24_transmit_process:
+	call p_g24_txdata_prep
+	nbranch p_g24_nodata_transmit,user
+	call p_g24_rf_sta_check
+p_g24_transmit_start:
+	call p_g24_transmit_packet
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call power_ctrl_start
+	setarg G24_LONG_SLEEP_STEP1
+	store 3,mem_24g_enter_hibernate
+	jam 20,mem_24g_long_sleep_param_update_timer
+//	fetch 1,mem_mouse_multi_led_state
+//	beq ON,p_g24_transmit_by_interrupt_enable
+p_g24_short_sleep:	
+	call p_g24_lpm_wait
+	nrtn user
+	call p_clear_wake
+	setarg 62500
+	branch lpm_dispatch_sleep
+
+p_g24_transmit_by_interrupt:
+	jam ZCODE_01,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_g24_nodata_transmit:
+	fetch 1,mem_24g_abort_pac
+	call p_g24_send_abort_packet,blank
+	fetch 1,mem_mouse_multi_led_blink_count
+	nrtn blank
+	fetch 1,mem_mouse_multi_led_state
+	rtneq ON
+	fetch 1,mem_24g_transmit_by_interrupt
+	rtneq G24_TX_TIMER_INT_ENABLE
+p_g24_long_sleep:
+	call p_g24_lpm_wait
+	nrtn user
+	fetch 3,mem_24g_enter_hibernate
+	call clk2lpo
+	storet 4,mem_sleep_counter
+  	branch lpm_sleep
+
+p_g24_lpm_wait:
+	enable user
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	branch disable_user,blank
+	fetch 1,mem_lpm_mode
+	branch disable_user,blank
+	fetch 1,mem_24g_transmit_by_interrupt
+	beq G24_TX_TIMER_INT_ENABLE,disable_user
+p_mouse_setgpio_lpm:
+	call p_mouse_set_sdio_high
+	call p_clear_wake
+p_mouse_setgpio_hibernate:	
+	call mouse_lpm_before_common
+
+	fetcht 1,mem_flash_ncs_gpio
+	call gpio_out_inactive
+	
+	hfetch 4,core_gpio_oe0
+	hfetcht 4,core_gpio_pu0
+	ior temp,temp
+	invert temp,temp
+	hstoret 4,core_gpio_pd0
+	hfetch 1,core_gpio_pd1
+	set0 2,pdata
+	hstore 1,core_gpio_pd1
+	hfetch 1,core_gpio_pd2	//flash hold pin gpio22
+	set0 6,pdata
+	hstore 1,core_gpio_pd2	
+	
+	hfetch 1,core_gpio_pd3//hold pin gpio27  //no led sm light
+	set0 3,pdata
+	hstore 1,core_gpio_pd3
+	
+p_mouse_multi_led_gpio_set_float:
+	fetcht 1,mem_mouse_multi_led_gpio
+	set0 gpio_active_bit,temp
+	branch gpio_set_high_impedance
+p_g24_send_abort_packet:
+	jam TYPE_MS,mem_24g_data_type
+	jam 1,mem_24g_abort_pac
+	jam 0,mem_24g_rf_hop_ch
+	call p_g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_txbuf
+	setarg 0
+	store 7,mem_24g_txbuf+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_txbuf+8
+	jam 12,mem_24g_datalen
+	fetch 1,mem_24g_data_type
+	set1 bit_abort,pdata
+	store 1,mem_24g_data_type
+	call p_g24_txdata_enable_tx
+	branch p_g24_transmit_start
+
+
+p_g24_transmit_rf_sta_init:
+	jam 1,mem_24g_rf_last_sta
+	jam 0,mem_24g_sync_cnt
+p_g24_transmit_rf_ctrl_clear:	
+	fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	store 1,mem_24g_data_type
+	rtn
+	
+p_g24_hop_ch_enable:
+	fetch 1,mem_24g_data_type
+	set1 bit_hop,pdata
+	store 1,mem_24g_data_type
+	//update txpayload
+	store 1,mem_24g_txpayload
+	rtn
+
+p_g24_hop_enable_packet:
+	fetch 1,mem_24g_data_type
+	rtnbit0 bit_hop
+p_g24_hop_ch_disable:
+	fetch 1,mem_24g_data_type
+	set0 bit_hop,pdata
+	store 1,mem_24g_data_type
+	store 1,mem_24g_txpayload
+	call power_ctrl_pac_succ_decrs
+	branch p_g24_ch
+
+p_g24_rf_hop_attemp_again:
+	fetch 1,mem_24g_rf_hop_ch
+	bne 1,p_g24_transmit_rf_ctrl_clear
+p_g24_rf_hop_fastly:
+	fetch 1,mem_24g_hop_fastly_cnt
+	increase 1,pdata
+	store 1,mem_24g_hop_fastly_cnt
+	beq 4,p_g24_rf_hop_fastly_exit
+	call p_g24_ch
+	jam 2,mem_24g_max_retry
+p_g24_transmit_packet:
+	jam 0,mem_24g_retry
+p_g24_transmit_loop:
+	arg param_rx_setup,timeup
+	until clkn_rt,meet
+	call p_g24_transmit_receive_ack
+//	fetch 1,mem_24g_no_ack	//tx noack
+//	rtneq no_ack_24g
+	nbranch p_g24_retransmit,sync
+	nbranch p_g24_retransmit,user3
+	call p_g24_txbuf_clear
+	call p_g24_ackpayload_parse
+	call power_ctrl_pac_succ_incrs
+p_g24_transmit_next_packet:
+	fetch 1,mem_24g_pid
+	increase 1,pdata
+	store 1,mem_24g_pid
+	call p_g24_hop_enable_packet
+	fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,p_g24_paring_mode_start
+	call p_g24_transmit_succ_rf_config
+p_g24_transmit_abandon:
+	setarg 0
+	store 4,mem_24g_ensure
+	store 1,mem_24g_hop_pac_retry
+	rtn
+p_g24_rf_hop_fastly_exit:
+	call power_ctrl_pac_succ_decrs
+	jam 0,mem_24g_hop_fastly_cnt
+	branch p_g24_transmit_rf_ctrl_clear
+
+p_g24_transmit_hop_pac_succ_wo_hop:
+	jam 2,mem_24g_sync_cnt
+p_g24_transmit_hop_pac_succ:
+	jam 1,mem_24g_rf_last_sta
+	jam 0,mem_24g_rf_hop_ch
+	branch p_g24_transmit_rf_ctrl_clear
+
+p_g24_transmit_succ_rf_config:
+	fetch 1,mem_24g_rf_work_stage
+	beq 3,p_g24_transmit_hop_pac_succ
+	fetch 1,mem_24g_data_type
+	isolate0 bit_hop,pdata
+	branch p_g24_transmit_rf_sta_init,true
+	fetch 1,mem_24g_rf_work_stage
+	beq 1,p_g24_transmit_hop_pac_succ_wo_hop
+	beq 2,p_g24_transmit_hop_pac_succ
+	rtn
+
+p_g24_rf_sta_check:
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call p_g24_rf_laststa_synccnt_check
+	ncall p_g24_rf_sync_cnt_check,user2
+	rtn
+
+p_g24_rf_laststa_synccnt_check:
+	disable user2
+	fetch 1,mem_24g_rf_last_sta
+	rtnne 1
+	fetch 1,mem_24g_sync_cnt
+	rtnne 0
+	jam 1,mem_24g_rf_work_stage
+	jam 4,mem_24g_max_retry
+	branch enable_user2
+
+p_g24_rf_sync_cnt_check:
+	fetch 1,mem_24g_sync_cnt
+	branch p_g24_rf_hop_attemp,blank
+	increase -1,pdata
+	store 1,mem_24g_sync_cnt
+	jam 2,mem_24g_rf_work_stage
+	jam 4,mem_24g_max_retry
+p_g24_ch:
+	fetcht 1,mem_24g_current_ch_number
+	fetch 1,mem_24g_addr	
+	and_into 0x03,pdata
+	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+	setarg mem_24g_ch_map1
+	iadd rega,pdata
+	iadd temp,contr
+	ifetch 1,contr
+	store 1,mem_24g_ch
+	increase 1,temp
+	and_into 3,temp //map size =4
+	storet 1,mem_24g_current_ch_number
+	rtn
+
+p_g24_rf_hop_attemp:
+	jam 3,mem_24g_rf_work_stage
+	fetch 1,mem_24g_rf_hop_ch
+	nbranch p_g24_rf_hop_attemp_again,blank
+	jam 2,mem_24g_max_retry
+	branch p_g24_ch
+
+p_g24_txdata_prep:
+	fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,p_g24_pairing_sm	
+p_g24_txdata_prep_packeage_data:
+	call p_g24_package_data
+p_g24_txdata_enable_tx:	
+	call p_g24_transmit_prep
+	jam ENSURE_ON_24G,mem_24g_ensure
+	rtn
+
+p_g24_package_data:
+	fetch 2,mem_cb_24g_data
+	call callback_func
+	branch p_g24_accumulate_mouse_data,user
+	fetch 7,mem_24g_txbuf+1	//mouse data
+	rtn blank
+	branch enable_user	// retransmit
+p_g24_accumulate_mouse_data:
+	fetch 1,mem_customer_key
+	nbranch p_g24_accumulate_customer_data,blank
+	jam TYPE_MS,mem_24g_data_type
+	call p_mouse_data_xy_release
+	call p_g24_accumulate_data_head
+	ifetcht 1,contw
+	ifetch 1,regb
+	ior temp,pdata
+	istore 1,contw	//key
+	increase 1,regb
+	ifetch 4,regb
+	istore 4,contw	//x,y
+	increase 4,regb
+	arg mem_24g_txbuf+6,contw
+	arg 2,loopcnt
+p_g24_accumulation_loop:
+	ifetch 1,regb
+	ifetcht 1,contw	//wheel,twheel
+	iadd temp,pdata
+	istore 1,contw
+	increase 1,regb
+	loop p_g24_accumulation_loop
+	rtn
+
+	
+p_g24_accumulate_data_head:
+	jam 0,mem_24g_abort_pac
+	add rega,1,pdata
+	store 1,mem_24g_datalen
+	call p_g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_txbuf
+	rtn
+	
+p_g24_accumulate_customer_data:
+	jam TYPE_KB,mem_24g_data_type
+	arg 9,rega
+	arg mem_customer_key_release,regb
+	fetch 1,mem_customer_data_trigger
+	ncall p_mouse_customer_key_press,blank
+	call p_g24_accumulate_data_head
+	copy regb,contr
+	copy rega,loopcnt
+	branch memcpy
+p_mouse_customer_key_press:
+	arg mem_customer_key_press,regb
+	rtn
+
+p_g24_txbuf_clear:
+	arg 4,loopcnt
+	arg mem_24g_txbuf,contw
+	branch memset0
+
+p_g24_transmit_receive_ack:
+	disable user3
+	call p_g24_transmit
+	
+
+//	fetch 1,mem_24g_no_ack
+//	beq no_ack_24g,p_g24_transmit_no_ack	//tx no ack
+	force 0,radio_ctrl
+	fetch 4,mem_24g_addr
+	iforce access
+	fetcht 1,mem_last_freq
+	call set_freq_rx
+	call rf_rx_enable
+	call p_g24_receive_rxon
+	call p_g24_end_of_packet,user3
+	rtn
+//p_g24_transmit_no_ack:
+//	call p_g24_end_of_packet
+//	branch p_g24_transmit_next_packet
+
+p_g24_retransmit:
+	fetch 2,mem_24g_txfail_cnt
+	increase 1,pdata
+	store 2,mem_24g_txfail_cnt	
+	fetch 1,mem_24g_txfail_cnt+1
+	bbit1 4,p_g24_stop_g24_mode
+
+	fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,p_g24_tx_paring_retry
+	call p_g24_tx_hop_ch_process
+	branch p_g24_transmit_loop
+
+p_g24_tx_paring_retry:
+	fetch 1,mem_24g_txfail_cnt
+	rtnne 0xff
+p_g24_tx_attempt_fail:
+	setarg 0
+	store 2,mem_24g_txfail_cnt
+p_g24_stop_g24_mode:
+	jam BT_EVT_24G_ATTEMPT_FAIL,mem_fifo_temp
+	branch ui_ipc_send_event
+
+p_g24_tx_fast_hop:
+	call power_ctrl_txpower_incrs
+	call power_ctrl_pac_succ_decrs
+	branch p_g24_ch
+
+p_g24_tx_hop_ch_process:
+	fetch 1,mem_24g_retry
+	sub pdata,11,null
+	nbranch  p_g24_tx_fast_hop,positive		// >= 6+6 hop fast    fail packet count >= 2
+	increase 1,pdata
+	store 1,mem_24g_retry
+	beq 2,p_g24_hop_ch_enable
+	beq 6,p_g24_hop_ch_disable
+	beq 8,p_g24_hop_ch_enable
+	beq 12,p_g24_hop_ch_disable
+	rtn
+
+p_g24_ackpayload_parse:
+	call p_g24_read_len_pid_crc
+	fetch 1,mem_24g_rxdata_length	//ack payload length 
+	rtn blank
+	iforce loopcnt
+	arg mem_24g_rxbuf+2,contr
+	arg mem_24g_rxpayload,contw	//ack payload buffer 
+	branch memcpy
+
+p_g24_pairing_sm:
+	jam ZCODE_90,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_g24_paring_mode_start:
+	call power_ctrl_pac_succ_cnt_init
+p_g24_paring_mode:
+	jam ZCODE_91,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_start_24g_mode:
+	call p_mouse_mode_24g_device_multi_led_on
+	jam ZCODE_60,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_g24_auto_pair_start:
+	jam 0,mem_mouse_long_button_select_device
+	jam ZCODE_70,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+
+p_g24_tx_attemp_data_prep:
+	jam 0xff,mem_24g_common_temp
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	call p_g24_put_data_in_buff
+	branch p_g24_transmit_prep
+
+
+p_g24_check_51cmd_stop_24g:
+	set0 mark_24g,mark
+	call le_disable
+p_mouse_disable_g24_pairing_flag:
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	branch mouse_disable_function_flag
+
+p_g24_put_data_in_buff:
+	storet 1,mem_24g_datalen
+	copy temp,loopcnt
+	arg mem_24g_txbuf,contw
+	copy rega,contr
+	branch memcpy
+
+p_g24_read_len_pid_crc:
+//read control
+	fetch 1,mem_24g_rxbuf+1
+	rshift3 pdata,pdata
+	store 1,mem_24g_rxdata_length
+//get crc
+	increase 1,pdata
+	arg mem_24g_rxbuf+1,contr
+	iadd contr,contr
+	ifetch 3,contr
+	store 3,mem_24g_sta_crc
+//read pid
+	fetch 1,mem_24g_rxbuf+1
+	rshift pdata,pdata
+	and pdata,0x03,pdata
+	store 1,mem_24g_sta_pid
+	rtn
+
+p_g24_update_addr_and_synccrc8:	
+	store 4,mem_24g_addr
+//output: 1BYTE crc8
+p_g24_syncword_crc8:
+	arg 0,rega
+	arg 4,loopcnt
+	arg mem_24g_addr,contr
+p_g24_syncword_crc8_loop:
+	ifetch 1,contr
+	iadd rega,rega
+	loop p_g24_syncword_crc8_loop
+	copy rega,pdata
+	store 2,mem_24g_syncword
+	fetch 1,mem_24g_syncword
+	fetcht 1,mem_24g_syncword+1
+	iadd temp,pdata
+	store 1,mem_24g_syncword_crc8
+	rtn
+
+p_g24_transmit_prep:
+
+// total length
+	fetch 1,mem_24g_datalen
+	increase 2,pdata
+	store 1,mem_24g_txlen
+// data type
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_txpayload
+//prepare 5bit payload length, 2bit PID, 1bit NO_ACK
+	fetch 1,mem_24g_datalen
+	lshift3 pdata,pdata
+	fetcht 1,mem_24g_pid
+	and temp,0x03,temp
+	lshift temp,temp
+	ior temp,pdata
+	fetcht 1,mem_24g_no_ack
+	iadd temp,pdata
+	istore 1,contw
+//prepare payload data
+	fetch 1,mem_24g_datalen
+	iforce loopcnt
+	arg mem_24g_txbuf,contr
+	branch memcpy
+
+//p_g24_ch:
+//	fetcht 1,mem_24g_current_ch_number
+//	fetch 1,mem_24g_addr	
+//	and_into 0x03,pdata
+//	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+//	setarg mem_24g_ch_map1
+//	iadd rega,pdata
+//	iadd temp,contr
+//	ifetch 1,contr
+//	store 1,mem_24g_ch
+//	increase 1,temp
+//	and_into 3,temp //map size =4
+//	storet 1,mem_24g_current_ch_number
+//	rtn
+
+//p_g24_ch_map_size:
+//	call p_g24_ch_calc
+//	increase 1,temp
+//	and_into 3,temp //map size =4
+//	rtn
+	
+//p_g24_ch_calc:
+//	fetch 1,mem_24g_addr	
+//	and_into 0x03,pdata
+//	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+//	setarg mem_24g_ch_map1
+//	iadd rega,pdata
+//	iadd temp,contr
+//	ifetch 1,contr
+//	store 1,mem_24g_ch
+//	rtn
+	
+p_g24_prep:
+	disable enable_crc
+	disable enable_white
+	setarg 0x555555
+	iforce crc24_init
+	fetch 1,mem_24g_ch
+	reverse pdata,temp
+	set1 1,temp
+	rshift temp,white_init
+	rtn
+
+//p_g24_receive_packet:
+//	call le_enable
+//	fetch 4,mem_24g_addr
+//	iforce access
+//	call set_sync_on
+//	fetcht 1,mem_24g_ch
+//	call set_freq_rx
+//	setarg param_pll_setup
+//	call sleep
+//	call rf_rx_enable
+p_g24_receive_rxon:
+
+
+	call p_g24_prep
+	disable user3
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	enable swfine
+	fetch 2,mem_24g_rx_window
+	iforce stop_watch
+	correlate null,timeout
+	nbranch p_g24_end_of_packet,sync
+
+
+	disable decode_fec0
+	enable decode_fec1
+	enable enable_white
+	enable enable_crc
+	call p_g24_receive_byte
+	store 1,mem_24g_get_syncword_crc8
+	fetcht 1,mem_24g_syncword_crc8
+	isub temp,null
+	nbranch p_g24_end_of_packet,zero
+	call p_g24_receive_byte
+	store 1,mem_24g_rxbuf	//device id
+//	fetch 1,mem_24g_mode
+//	sub pdata,rx_24g,null
+//	branch p_g24_receive_skip,zero
+	fetch 1,mem_24g_rxbuf
+	fetcht 1,mem_24g_data_type
+	icompare bits_data,temp
+	nbranch p_g24_end_of_packet,true
+p_g24_receive_skip:
+	call p_g24_receive_byte
+	istore 1,contw
+	rshift3 pdata,pdata
+	and pdata,0x1f,loopcnt	//max payload: 32bytes
+	branch p_g24rx_nopayload,zero
+p_g24rx_loop:
+	call p_g24_receive_byte
+	istore 1,contw
+	loop p_g24rx_loop
+p_g24rx_nopayload:
+	//receive rssi hex
+	copy contw,rega
+	call p_g24_receive_byte
+	store 1,mem_rssi_hex_received
+	copy rega,contw
+	parse demod,bucket,24
+	enable swfine
+	arg param_sifs,stop_watch	
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	disable decode_fec1
+//ifdef DONGLE
+//	call save_rssi
+//endif	
+	branch p_g24_end_of_packet,crc_failed
+
+
+	enable user3
+	fetch 1,mem_last_freq
+	add pdata,0,rega
+	call rf_write_freq
+	disable decode_fec0
+	call set_sync_on
+//ifdef DONGLE
+//	rtn
+//endif
+//ifdef MOUSE
+	fetch 1,mem_rssi_hex_received
+//	branch p_rssi_signal
+
+p_rssi_signal:
+	copy pdata,rega
+	fetcht 1,mem_rssi_signal_index
+	setarg mem_rssi_signal_buf
+	iadd temp,contw
+	copy rega,pdata
+	istore 1,contw
+	increase 1,temp
+	and_into RSSI_BUF_LEN_SIGNAL,temp
+	storet 1,mem_rssi_signal_index
+	rtn
+//endif
+//	rtn
+
+p_g24_receive_byte:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	rtn
+	
+p_g24_end_of_packet:
+	disable encode_fec1
+	disable decode_fec1
+	call end_of_packet
+	rtn
+
+//p_g24_sync_timeout:
+//ifdef DONGLE
+//	call p_rssi_noise
+//endif
+//	branch p_g24_end_of_packet
+
+//p_g24_set_freq_tx:
+//	call set_sync_on
+//	fetcht 1,mem_24g_ch
+//	branch set_freq_tx
+
+p_g24_transmit:
+	call le_enable
+	fetch 4,mem_24g_addr
+	iforce access
+	call p_g24_prep
+//	call p_g24_set_freq_tx
+
+	call set_sync_on
+	fetcht 1,mem_24g_ch
+	call set_freq_tx
+
+	set1 TXGFSK,radio_ctrl
+	enable encode_fec0
+	enable is_tx
+	disable is_rx
+
+	
+	rshift16 access,pdata
+	rshift8 pdata,pdata
+	rshift4 pdata,pdata
+	inject mod,40
+	disable encode_fec0
+	enable encode_fec1
+	enable enable_white
+	enable enable_crc
+	fetch 1,mem_24g_syncword_crc8
+	inject mod,8
+	fetch 1,mem_24g_txlen
+	iforce loopcnt
+	arg mem_24g_txpayload,contr
+p_g24tr_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop p_g24tr_loop
+//ifdef DONGLE
+//	fetch 1,mem_rssi_hex
+//	inject mod,8
+//endif
+
+
+	enable enable_parity
+	inject mod,24	//crc
+	disable enable_parity
+	until null,tx_clear
+	nop 100
+	disable encode_fec0
+	disable encode_fec1
+	rtn
+
+p_g24_timer_check:
+	call disable_user
+	fetcht 4,mem_24g_tx_btclk
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall g24_timer_timeout,positive
+	copy pdata,regb
+	fetch 4,mem_24g_tx_btclk
+	fetcht 1,mem_24g_interval
+	iadd temp,temp
+	copy regb,pdata
+	isub temp,null
+	nrtn positive
+	set0 28,pdata
+	store 4,mem_24g_tx_btclk
+	branch enable_user
+
+//p_rssi_noise:
+//	call save_rssi
+//	rtn blank
+//	fetcht 1,mem_rssi_noise_index
+//	arg mem_rssi_noise_buffer,rega
+//	call p_rssi_store
+//	storet 1,mem_rssi_noise_index
+//	rtn
+	
+//p_rssi_store:
+//	copy rega,pdata
+//	iadd temp,contw
+//	fetch 1,mem_rssi
+//	istore 1,contw
+//	increase 1,temp
+//ifdef DONGLE
+//	and_into RSSI_BUF_LEN_NOISE,temp
+//endif
+//ifdef MOUSE
+//	and_into RSSI_BUF_LEN_SIGNAL,temp
+//endif
+//	rtn
+p_rssi_average:
+	arg 0,temp
+//ifdef DONGLE
+//	arg RSSI_BUF_LEN_NOISE+1,loopcnt
+//endif
+	arg RSSI_BUF_LEN_SIGNAL+1,loopcnt
+	copy rega,contr
+//ifdef DONGLE
+//	branch rssi_average_loop
+//endif
+//ifdef MOUSE
+p_rssi_average_loop:
+	ifetch 1,contr
+	iadd temp,temp
+	loop p_rssi_average_loop
+	rshift3 temp,pdata
+	copy pdata,temp
+	rtnmark0 mark_24g
+	//2BCD
+	div pdata,10
+	call wait_div_end
+	quotient pdata
+	lshift4 pdata,pdata
+	remainder temp
+	ior temp,temp
+	rtn
+//endif
+//	rtn
+
+
+p_mouse_before_lpm:
+	rtnmark1 mark_24g
+	call p_mouse_le_txbuff_save
+	call p_mouse_setgpio_lpm
+	fetch 1,mem_context
+	bbit0 state_inconn,p_clear_wake
+	fetch 1,mem_lpm_current_mult
+	nrtn blank
+p_clear_wake:
+	setarg 0
+	store 8,mem_gpio_wakeup_low
+	rtn
+
+p_mouse_set_sdio_high:
+	fetch 1,mem_mouse_init_sensor_reset_flag
+	rtn blank
+	branch p_mouse_seting_sensor_type// make sdio high to make 100uA less	
+
+p_device_init:
+	call initialize_radio
+	call app_lpm_mult_enable
+	call enable_authrom
+	branch p_mouse_spi_init,wake
+p_device_wake_from_power:
+	fetch 3,mem_le_lap+3
+	store 3,mem_le_lap_high_3B
+	call p_wake_from_power
+
+//	call p_mouse_switch_Hwakeup_byPB
+//ifdef G24
+//	call p_mouse_check_key_gpio
+//	beq MOUSE_LM_BUTTON,p_mouse_24g_pairing_button
+//endif
+p_mouse_check_reconn_target:
+	jam ZCODE_22,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_null_enter_hibernate_enable:	//ble never connected
+	jam 1,mem_mouse_null_enter_hibernate_flag
+	jam 40,mem_mouse_null_enter_hibernate_timer	//lmr 3s
+	rtn
+	
+
+
+p_mouse_tx_power_init:
+	fetch 1,mem_tx_power_temp
+	store 1,mem_tx_power
+	rtn
+
+//p_mouse_check_select_device_by_switch:
+//	fetch 1,mem_config_function_enable
+//	branch mouse_cheak_select_device_by_switch+1
+
+//p_mouse_24g_pairing_button:
+//	jam ZCODE_71,mem_zcode_temp_param0
+//	branch p_zcode_entrance
+
+p_le_check_adv_flag:
+	arg mem_le_adv_data,rega
+p_le_check_adv_flag_loop:
+	ifetch 1,rega	//length
+	rtn blank
+	iadd contr,rega
+	ifetch 1,contr	//type
+	rtneq 0x01
+	branch p_le_check_adv_flag_loop
+
+p_mouse_le_fast_conn_disable:
+	jam 0x5a,mem_mouse_fast_conn_flag
+	rtn
+	
+p_mouse_fast_conn_init:
+	jam 0xff,mem_mouse_fast_conn_flag
+	jam 0x34,mem_xrecord_mode
+	fetch 6,mem_24g_allpowerful_addr
+	store 6,mem_le_lap
+	rtn	
+	
+	
+p_mouse_init_sunt:
+	call p_mouse_spi_init
+	call mouse_spi_sdio_gpio_pollup
+p_mouse_init_sensor:
+	call mouse_read_sensor_id
+	beq P32XX_ID1,p_mouse_init_p32xx_id2_judge
+	beq P3065_ID1,p_mouse_p3065_init_param
+	call mouse_twspi_reset
+	nop 1000
+	branch p_mouse_init_sensor
+
+p_mouse_init_p32xx_id2_judge:
+	call p_mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+//	beq P_MX8650,p_mouse_mx8650_init_param
+	beq PKA8_ID2,p_mouse_ka8_init_param
+//	beq P8009_ID2,p_mouse_8009_init_param
+	branch mouse_init_p32xx_id2_judge
+
+//p_mouse_mx8650_init_param:
+//	jam MX8650,mem_config_sensor_type
+//	setarg 0x8006
+//	call twspi_write
+//	call delay_10ms
+//	arg mem_sensor_8650_init,regc
+//	call p_sensor_wr_seq
+//	branch p_mouse_dpi_config
+
+p_mouse_ka8_init_param:
+	jam KA8,mem_config_sensor_type	
+	arg mem_sensor_ka8_init,regc
+p_sensor_wr_seq:
+	ifetch 2,regc
+	rtneq 0xff
+	call twspi_write
+	nop 12000
+	increase 2,regc
+	branch p_sensor_wr_seq
+
+//p_mouse_8009_init_param:
+//	setarg 0x16
+//	call twspi_read
+//	sub pdata,0xbd,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x19
+//	call twspi_read
+//	sub pdata,0x55,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x1b
+//	call twspi_read
+//	sub pdata,0x1d,null 
+//	nbranch p_mouse_init_sensor,zero
+//	jam P8009,mem_config_sensor_type
+//	arg mem_sensor_8009_init,regc
+//	branch p_sensor_wr_seq
+
+p_mouse_p3065_init_param:
+	call p_mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+	beq P3065_XY_ID2,mouse_p3065xy_init_param
+	jam P3065,mem_config_sensor_type
+	rtn
+
+p_mouse_dpi_config:
+	fetch 1,mem_mouse_dpi
+	bne 0xff,p_mouse_seting_dpi
+p_mouse_dpi_config_default:
+	fetch 1,mem_config_sensor_motion
+	store 1,mem_mouse_dpi
+	branch p_mouse_seting_dpi
+	
+//ncs gpio output high
+//p_flash_ncs_disable:
+//	fetcht 1,mem_flash_ncs_gpio
+//	branch gpio_out_inactive
+
+p_spid_init_flash:
+	jam 0x40,core_spid_ctrl
+	jam 0x0,core_spid_delay
+	hfetch 1,core_gpio_sel1
+	set0 0,pdata
+	set0 1,pdata
+	set1 3,pdata
+	set0 4,pdata
+	hstore 1,core_gpio_sel1
+	setarg 0
+	store 4,mem_spid_tbuf
+	hfetch 1,core_gpio_pd3	//gpio24 can not be set pulldown
+	set0 0,pdata
+	hstore 1,core_gpio_pd3
+	rtn
+
+p_mouse_load_flash_info_check:
+	call p_flash_release_deep_power_down
+	call mouse_load_flash_flag
+	fetch 2,mem_store_flag
+	arg EEPROM_INIT_FLAG,temp
+	isub temp,null
+	branch p_mouse_load_flash_device_info,zero
+	storet 2,mem_store_flag
+	call mouse_ble_init_address
+	fetch 1,mem_config_sensor_motion
+	store 1,mem_mouse_dpi
+	fetch 4,mem_mouse_24g_addr_init
+	store 4,mem_mouse_24g_addr
+	store 4,mem_24g_addr
+	call p_mouse_fast_conn_init
+
+p_mouse_set_24g_addr_flash:
+	arg 4,temp
+	arg mem_24g_addr,rega
+	arg MOUSE_G24_ADDR_EEPROM_OFFECT,regb
+	rtn
+	
+p_flash_erase_sector:
+	fetch 3,mem_flash_base
+	store 3,mem_spi_write_addr
+	call flash_erase_sector+2
+p_wait_flash_done:
+	setarg 100000	
+	call sleep
+	call spid_unlock_flash
+	setarg mem_spid_rbuf
+	hstore 2,core_spid_rxaddr
+	setarg FLASH_READ_SATUS
+	call spid_read_reg
+	bbit1 FLASH_STATUS_WIP,p_wait_flash_done
+	rtn
+
+p_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
+
+p_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
+
+p_mouse_read_flash:
+	call p_flash_release_deep_power_down
+	call p_mouse_information_flash_parameters
+	branch spid_read_flash
+
+p_mouse_load_flash_device_info:	
+	call p_mouse_read_flash
+	call p_mouse_load_random_addr_increase_count
+	call mouse_select_reconn_device
+	fetch 4,mem_mouse_24g_addr
+	store 4,mem_24g_addr
+	fetch 6,mem_device1_addr
+	fetcht 6,mem_mouse_fast_conn_addr
+	isub temp,null
+	nbranch p_mouse_le_fast_conn_disable,zero
+	call p_mouse_fast_conn_init
+	rtn
+
+p_flash_deep_power_down:
+	jam FLASH_COMMAND_DEEP_POWER_DOWN,mem_temp
+p_spid_write_flash_cmd:
+	call p_spid_init_flash
+	call delay_nop100
+	call spid_unlock_flash
+	arg mem_write_flash_head_temp,rega
+	fetcht 1,mem_temp
+	call spid_write_flash_common
+	branch delay_nop100
+
+p_flash_release_deep_power_down:
+	jam FLASH_COMMAND_RELEASE_DEEP_POWER_DOWN,mem_temp
+	branch p_spid_write_flash_cmd
+	
+//p_g24_factory_check:
+//	arg 2,loopcnt
+//	arg mem_24g_addr,contr
+//p_pdata_0xff_check:
+//	call enable_user
+//	setarg 0xffff
+//p_pdata_0xff_check_loop:
+//	ifetcht 2,contr
+//	isub temp,null
+//	ncall disable_user,zero
+//	loop p_pdata_0xff_check_loop
+//	rtn
+
+p_mouse_g24_package_data:
+	call mouse_g24_package_data
+	fetch 2,mem_mouse_z
+	rtn blank
+p_g24_transmit_by_interrupt_enable:
+	jam G24_TX_TIMER_INT_ENABLE,mem_24g_transmit_by_interrupt
+	setarg 0
+	store 2,mem_24g_transmit_by_interrupt_exit_count
+	rtn
+	
+p_mouse_le_txbuff_save:
+	arg mem_le_tx_buffer0,contr
+	arg mem_le_tx_buffer0_omemalloc,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer1,contr
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer2,contr
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer3,contr
+p_mouse_le_txbuff_copy:	
+	arg 27,loopcnt
+	branch memcpy
+
+p_mouse_le_txbuff_load:
+	arg mem_le_tx_buffer0_omemalloc,contr
+	arg mem_le_tx_buffer0,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer1,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer2,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer3,contw
+	branch p_mouse_le_txbuff_copy
+
+p_mouse_le:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,p_mouse_le_next
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+p_mouse_le_next:
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	call p_mouse_clear_sensor_data,blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_le_send_empty_packet
+	call mouse_motion
+	nrtn user
+	call p_mouse_le_current_mult_update
+	call p_mouse_data_xy_release
+	call p_mouse_wheel_trigger
+	fetch 1,mem_customer_key
+	beq 1,p_mouse_le_send_customer_packet
+p_mouse_data_push:
+	arg mem_mouse_key,rega
+	call queue_push
+	call p_mouse_queue_increase,user
+	
+	rtn
+
+p_mouse_le_current_mult_update:
+	jam 0,mem_lpm_mult
+	jam 30,mem_mouse_le_current_mult_timer
+	rtn	
+
+p_mouse_data_xy_release:
+	fetch 1,mem_mouse_long_mult_flag
+	rtnne 1
+	setarg 0
+	store 1,mem_mouse_long_mult_flag
+	store 4,mem_mouse_x
+	branch p_mouse_init_sensor_reset
+	
+p_mouse_sensor_poweron:
+	arg mem_sensor_poweron_init,regc
+	call p_sensor_wr_seq
+	branch p_mouse_dpi_config
+
+p_mouse_le_send_customer_packet:
+	fetch 1,mem_customer_data_trigger
+	branch p_mouse_le_release_customer_data,blank
+	fetch 8,mem_customer_key_press+1
+p_mouse_fill_customer_data_le:
+	store 8,mem_pdatatemp
+	arg 8,rega //len
+	arg 0x15,temp
+	call le_att_malloc_tx_notify
+	fetch 8,mem_pdatatemp
+	istore 8,contw
+	rtn
+
+p_mouse_le_release_customer_data:
+	fetch 8,mem_customer_key_release+1
+	branch p_mouse_fill_customer_data_le	
+
+	
+
+p_mouse_data_init:
+	jam 7,mem_mouse_data_queue	//data length
+	jam 4,mem_mouse_data_queue+1	//fifo depth
+	setarg mem_mouse_data_queue
+	store 2,mem_queue_ptr
+	branch queue_init
+
+p_mouse_queue_increase:
+	fetch 1,mem_mouse_data_queue_num
+	increase 1,pdata
+	store 1, mem_mouse_data_queue_num
+	rtn
+	
+p_mouse_data_pull:
+	arg mem_mouse_key,rega
+	call queue_pop
+	branch p_mouse_fill_data_le,user
+	rtn
+
+p_mouse_fill_data_le:
+	call le_clear_md
+	fetch 1,mem_mouse_data_queue_num
+	sub pdata,1,null
+	ncall le_set_md,positive
+	fetch 1,mem_mouse_data_queue_num
+	rtn blank
+	increase -1,pdata
+	store 1, mem_mouse_data_queue_num
+	branch mouse_fill_data_le
+	
+
+p_mouse_wheel_trigger:
+	fetch 2,mem_mouse_z
+	rtn blank
+	jam 1,mem_mouse_wheel_trigger
+	jam 2,mem_mouse_wheel_trigger_timer
+	rtn
+
+p_mouse_clear_sensor_data:
+	jam 1,mem_mouse_clear_sensor_data_flag
+	call le_set_config_more_data
+p_mouse_init_sensor_reset:
+	jam 1,mem_mouse_init_sensor_reset_flag
+	branch p_mouse_init_sunt
+
+p_le_addr_random_config:
+	call load_adc_init
+//	fetch 2,mem_0_5_adc_io_data	//adc data from otp
+//	nbranch z_le_otp_adc_empty,blank
+	setarg 0x1122
+p_le_otp_adc_empty:
+	store 2,mem_random_addr_increase_count
+	rtn
+	
+p_mouse_bt:
+	rtn attempt
+	fetch 1,mem_app_handshake_flag
+	rtn blank
+	call l2cap_malloc_is_fifo_nearly_full
+	nrtn blank
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	call p_mouse_clear_sensor_data,blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_send_empty_data
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,mouse_send_empty_data
+	call mouse_motion
+	nrtn user
+	call p_mouse_le_current_mult_update
+	call p_mouse_data_xy_release
+	call p_mouse_wheel_trigger
+	fetch 1,mem_mouse_bt_boot_mode
+	beq 1,p_mouse_send_data_boot_mode	//boot
+	fetch 1,mem_mouse_bt_send_first_package_flag
+	rtn blank
+	fetch 1,mem_customer_key
+	beq 1,p_mouse_bt_send_customer_packet
+	branch mouse_send_data	//report
+
+p_mouse_send_data_boot_mode:
+	fetch 1,mem_mouse_key
+	store 1,mem_mouse_bt_boot_data
+	fetch 1,mem_mouse_x
+	istore 1,contw
+	fetch 1,mem_mouse_y
+	istore 1,contw
+	fetch 2,mem_mouse_z
+	istore 2,contw
+
+	arg 7,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0x02a1
+	istore 2,contw
+	fetch 5,mem_mouse_bt_boot_data
+	istore 5,contw
+	rtn
+	
+p_mouse_bt_send_customer_packet:
+	fetch 1,mem_customer_data_trigger
+	branch p_mouse_bt_release_customer_data,blank
+	fetch 8,mem_customer_key_press+1
+p_mouse_bt_send_customer_data:
+	store 8,mem_pdatatemp
+	arg 10,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0x01a1
+	istore 2,contw
+	fetch 8,mem_pdatatemp
+	istore 8,contw
+	rtn
+	
+p_mouse_bt_release_customer_data:
+	fetch 8,mem_customer_key_release+1
+	branch p_mouse_bt_send_customer_data	
+	
+
+p_mouse_idle:
+	call ui_check_paring_button
+	call p_mouse_dpi_check
+	branch mouse_wheel_check
+
+p_mouse_dpi_check:
+	jam 0x05,mem_mouse_key_temp
+	fetcht 1,mem_dpi_button_gpio
+	fetch 1,mem_mouse_dpikey_press_status
+	call p_mouse_check_key
+	store 1,mem_mouse_dpikey_press_status
+	fetcht 1,mem_dpi_button_gpio
+	call p_gpio_set_input_pu
+	copy rega,pdata
+	bbit1 5,p_mouse_dpi_down
+	branch mouse_dpi_up
+
+
+p_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 1,mem_mouse_dpi
+	increase 1,pdata
+	and pdata,0x03,pdata
+	store 1,mem_mouse_dpi
+	call mouse_seting_dpi
+//	branch p_mouse_store_flash_device_info	
+p_mouse_store_flash_device_info:
+	call p_flash_release_deep_power_down
+	call p_flash_erase_sector
+	call p_mouse_information_flash_parameters
+	call p_spid_write_flash
+	call p_wait_flash_done
+p_mouse_store_random_addr_increase_count:
+	call p_spid_init_flash
+	arg 2,temp
+	arg mem_random_addr_increase_count,rega
+	arg MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET,regb
+	fetch 3,mem_flash_base
+	iadd regb,pdata
+	call p_spid_write_flash
+	call p_wait_flash_done
+	call p_flash_deep_power_down
+p_mouse_spi_init:
+	jam 0x76,mem_spi_init_clk
+	branch mouse_spi_init
+
+p_mouse_priority_bb_event:
+	copy regc,pdata
+	beq BT_EVT_LE_CONNECTED,p_mouse_le_bb_event_connected
+	beq BT_EVT_LE_DISCONNECTED,p_mouse_le_bb_disconnected
+	beq BT_EVT_LE_ENC_INFO,p_mouse_le_enc_info
+	beq BT_EVT_LE_START_ENC,p_mouse_le_ll_start_encryt
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,p_mouse_le_conn_param_update_rsp_recieved
+	beq BT_EVT_RECONN_FAILED,p_mouse_bb_event_reconn_failed
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,p_mouse_bb_event_reconn_timeout
+	beq BT_EVT_SWITCH_NOT_ACCEPT,app_bt_role_switch
+	beq BT_EVT_SNIFF_NOT_ACCEPT,p_mouse_sniff_not_accept
+	beq BT_EVT_BB_CONNECTED,p_mouse_bb_event_connected
+	beq BT_EVT_BB_DISCONNECTED,p_mouse_bb_event_disconnected
+	beq BT_EVT_SWITCH_SUCCESS_MASTER,p_mouse_enter_sniff_check
+	beq BT_EVT_24G_PAIRING_COMPLETE,p_mouse_24g_pairing_complete
+	beq BT_EVT_24G_ATTEMPT_FAIL,p_mouse_24g_attempt_fail
+	beq BT_EVT_24G_ATTEMPT_SUCCESS,p_mouse_24g_attempt_success
+	branch mouse_priority_bb_event+1
+
+p_mouse_le_bb_event_connected:
+	call p_mouse_init_sensor_reset
+	call app_ble_store_reconn_info
+	jam 1,mem_mouse_le_bb_connected_flag
+	fetch 1,mem_mouse_le_reconnect_flag
+	nbranch p_mouse_le_bb_event_connected_next,blank
+	jam 0x14,mem_mouse_send_secutiry_request_timer
+p_mouse_le_bb_event_connected_next:
+	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_data_init
+	branch mouse_le_bb_event_connected
+
+p_mouse_le_bb_disconnected:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	jam ZCODE_A2,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_le_enc_info:
+p_app_updata_le_param:
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+p_mouse_le_ll_start_encryt:
+	jam ZCODE_B3,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_le_conn_param_update_rsp_recieved:
+	jam ZCODE_A1,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+
+p_mouse_bb_event_reconn_timeout:
+p_mouse_bb_event_reconn_failed:
+	jam ZCODE_A3,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_irtual_cable_unplug:
+	jam ZCODE_B5,mem_zcode_temp_param0
+	branch p_zcode_entrance
+	
+p_mouse_sniff_not_accept:
+	jam ZCODE_B1,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_bb_event_connected:
+	call p_mouse_init_sensor_reset
+	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_discovey_led_blink_off
+	jam 0,mem_mouse_send_switch_req_timer
+	branch mouse_stop_discovery
+
+p_mouse_bb_event_disconnected:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	jam ZCODE_B4,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_enter_sniff_check:
+	jam ZCODE_B2,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_pairing_complete:
+	call p_mouse_init_sensor_reset
+	jam ZCODE_92,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_fail:
+	jam ZCODE_61,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_success:
+//	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_init_sensor_reset
+	branch mouse_no_data_timer_init
+
+p_mouse_before_hibernate:
+	call p_mouse_sensor_powerdown_check
+	jam ZCODE_A4,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_sensor_powerdown_check:
+	fetch 1,mem_mouse_init_sensor_reset_flag
+	rtn blank
+	jam 0,mem_mouse_init_sensor_reset_flag
+p_mouse_sensor_powerdown:
+	call p_mouse_init_sunt
+	setarg 0x06
+	call twspi_read
+	or pdata,0x08,pdata
+	lshift8 pdata,pdata
+	add pdata,0x06,pdata
+	branch twspi_write	//make sdio high
+
+p_mouse_bb_event_timer:
+	call p_mouse_adc_read
+//	call p_mouse_low_voltage_led_timer
+	call p_mouse_multi_led_blink_timer
+	call p_mouse_wheel_trigger_timer
+	call p_mouse_null_enter_hibernate_timer	
+	call p_mouse_bt_discovery_check
+	call mouse_check_discovery_timeout_timer
+	call p_mouse_select_device	
+	call p_mouse_g24_long_sleep_param_update_timer
+	//call p_mouse_g24_stop_pair_mode_timeout_timer
+	call p_mouse_check_direct_timeout_timer
+	call p_mouse_le_enable_att_list_timer
+	call p_mouse_le_current_mult_update_timer
+	call p_le_send_smp_security_request_timer
+	call p_mouse_send_switch_req_timer
+	call mouse_check_hid_handshake_timer
+	call p_mouse_bt_check_sniff_req_timeout_timer
+	branch mouse_check_no_data_timeout_timer
+
+p_mouse_select_device:
+p_mouse_select_device_by_button:
+	call p_mouse_pb_button_check
+	branch p_mouse_select_device_button_down,true
+p_mouse_select_device_button_up:
+	fetch 1,mem_mouse_select_device_button_wakeup_flag	
+	nbranch p_mouse_select_button_wakeup_firstUp,blank
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue
+	jam ON,mem_mouse_multi_led_blink_enable
+	
+	fetch 1,mem_mouse_long_button_select_device
+	branch p_mouse_long_button_state_clear,blank
+p_mouse_ready_reconnection_by_button:
+	call p_mouse_switch_device_flag
+	jam 0,mem_link_key_exists
+	call p_mouse_store_flash_device_info
+	branch mouse_ready_reconnection_by_button_next
+
+p_mouse_pb_button_check:
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_config_input
+	fetcht 1,mem_config_select_device_button_gpio
+	branch gpio_get_bit
+
+p_mouse_switch_device_flag:
+	fetcht 1,mem_device_flag
+	increase 1,temp
+	fetch 1,mem_device_number
+	isub temp,null
+	ncall mouse_select_device_count_clean,positive
+	storet 1,mem_device_flag
+	rtn	
+
+p_mouse_long_button_state_clear:
+	jam 0xff,mem_mouse_long_button_select_device
+	rtn
+
+p_mouse_select_button_wakeup_firstUp:
+	jam 0,mem_mouse_select_device_button_wakeup_flag	//when waked from hibernate by PB key ,first key up does not change mode 
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue
+	jam ON,mem_mouse_multi_led_blink_enable
+	rtn	
+
+p_mouse_select_device_button_down:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_ADV,p_mouse_select_device_button_down_next
+	jam OFF,mem_mouse_multi_led_blink_enable
+p_mouse_select_device_button_down_next:
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_select_device_button_statue
+
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	rtnbit1 APP_DISC_PB_BUTTON
+
+	fetch 1,mem_device_flag
+	rtnne MODE_BT_DEVICE1
+p_mouse_pb_button_2ble_disconnect:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_PB_BUTTON,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch mouse_disconnect
+
+	
+p_mouse_send_switch_req_timer:
+	arg mem_mouse_send_switch_req_timer,regc
+	arg host_create_conn_resend,regb
+	branch timer_single_step
+
+p_mouse_bt_check_sniff_req_timeout_timer:
+	arg mem_mouse_bt_send_first_package_timer,regc
+	arg p_mouse_bt_send_first_package,regb
+	branch timer_single_step
+p_mouse_bt_send_first_package:
+	jam 1,mem_mouse_bt_send_first_package_flag
+	rtn
+
+
+p_mouse_le_enable_att_list_timer:
+	arg mem_le_start_encrypt_timer,regc
+	arg mouse_le_write_enable,regb
+	branch timer_single_step
+
+
+p_mouse_check_direct_timeout_timer:
+	arg mem_mouse_direct_timer,regc
+	arg p_mouse_check_direct_timeout,regb
+	branch timer_single_step_2B
+
+p_mouse_check_direct_timeout:
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,p_mouse_long_button_bt_discovery
+	fetch 1,mem_mouse_multi_led_on_poweron2s_flag
+	nrtn blank
+	branch mouse_check_direct_timeout
+
+p_mouse_le_current_mult_update_timer:
+	arg mem_mouse_le_current_mult_timer,regc
+	arg p_mouse_le_current_mult_reinit,regb
+	branch timer_single_step
+p_mouse_le_current_mult_reinit:
+	fetch 1,mem_lpm_mult_init
+	store 1,mem_lpm_mult
+	branch p_mouse_long_mult_flag_enable
+
+p_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 p_le_pairing_sm_start_check,regb
+	branch timer_single_step
+p_le_pairing_sm_start_check:
+	fetch 1,mem_le_send_security_request_flag
+	nrtn blank
+	branch le_pairing_sm_start
+
+
+
+p_mouse_g24_long_sleep_param_update_timer:
+	arg mem_24g_long_sleep_param_update_timer,regc
+	arg p_mouse_g24_long_sleep_normal_param,regb
+	branch timer_single_step
+p_mouse_g24_long_sleep_normal_param:
+	setarg G24_LONG_SLEEP_STEP3
+	store 3,mem_24g_enter_hibernate
+p_mouse_long_mult_flag_enable:	
+	jam 1,mem_mouse_long_mult_flag
+	rtn	
+
+
+
+p_mouse_wheel_trigger_timer:
+	arg mem_mouse_wheel_trigger_timer,regc
+	arg p_mouse_wheel_trigger_disable,regb
+	branch timer_single_step
+p_mouse_wheel_trigger_disable:
+	jam 0,mem_mouse_wheel_trigger
+	rtn
+
+p_mouse_bt_discovery_check:
+p_mouse_bt_discovery_commbination_key:
+	call p_mouse_pb_button_check
+	branch p_mouse_bt_discovery_commbination_key_down,true
+//	call p_gpio_set_input_pu
+	call p_mouse_check_key_gpio
+	beq MOUSE_LMR_BUTTON,p_mouse_bt_discovery_commbination_key_down
+p_mouse_bt_discovery_commbination_key_up:
+	call mouse_bt_discovery_commbination_key_up
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	branch mouse_disable_function_flag
+	
+p_mouse_bt_discovery_commbination_key_down:
+	call p_gpio_set_input_pu
+	jam 40,mem_mouse_null_enter_hibernate_timer
+	call p_mouse_bt_discovery_timer
+	branch mouse_bt_discovery_commbination_key_down+1
+
+p_mouse_bt_discovery_timer:
+	arg mem_combination_ui_button_count,regc
+	arg p_mouse_long_button_bt_discovery,regb
+	branch timer_single_step
+p_mouse_long_button_bt_discovery:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+	jam 0,mem_mouse_long_button_select_device
+	fetch 2,mem_ui_state_map
+	isolate1 UI_STATE_BLE_ADV,pdata
+	call mouse_stop_le_adv,true		//reconnect adv
+	fetch 2,mem_ui_state_map
+	isolate1 UI_STATE_BT_RECONNECT,pdata
+	call mouse_cancel_reconnect,true
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	call mouse_enable_function_flag
+	branch mouse_long_button_bt_discovry
+
+p_mouse_null_enter_hibernate_timer:
+	fetch 1,mem_mouse_multi_led_on_poweron2s_flag
+	nrtn blank
+	fetch 1,mem_mouse_null_enter_hibernate_flag
+	rtn blank
+	arg mem_mouse_null_enter_hibernate_timer,regc
+	arg p_mouse_null_enter_hibernate,regb
+	branch timer_single_step
+
+p_mouse_null_enter_hibernate:
+	jam 0,mem_mouse_null_enter_hibernate_flag
+p_app_enter_hibernate:
+	call p_mouse_sensor_powerdown
+	branch app_enter_hibernate
+	
+p_mouse_null_enter_hibernate_disable:	//ble never connected
+	jam 0,mem_mouse_null_enter_hibernate_flag
+	jam 0,mem_mouse_null_enter_hibernate_timer	//lmr 3s
+	rtn	
+
+p_mouse_multi_led_blink_timer:
+	fetch 1,mem_mouse_multi_led_blink_enable
+	rtn blank
+	fetch 1,mem_mouse_multi_led_type
+	beq MULTI_LED_ON,p_mouse_multi_led_type_on
+	beq MULTI_LED_BLINK,p_mouse_multi_led_type_blink
+	rtn
+
+p_mouse_multi_led_type_on:
+	call p_mouse_multi_led_on
+	fetch 1,mem_mouse_multi_led_on_timer
+	increase 1,pdata
+	store 1,mem_mouse_multi_led_on_timer
+	fetcht 1,mem_mouse_multi_led_on_timer_init
+	isub temp,null
+	call p_mouse_multi_led_off_poweron2s,zero
+	rtn
+p_mouse_multi_led_off_poweron2s:
+	jam 0,mem_mouse_multi_led_on_poweron2s_flag
+	branch p_mouse_multi_led_off
+	
+p_mouse_multi_led_type_blink:
+	arg mem_mouse_multi_led_blink_timer,regc
+	arg p_mouse_multi_led_type_blink_timeout,regb
+	branch timer_single_step
+p_mouse_multi_led_type_blink_timeout:
+	fetch 1,mem_mouse_multi_led_blink_timer_init
+	store 1,mem_mouse_multi_led_blink_timer
+//	fetch 1,mem_mouse_multi_led_blink_count_limited
+//	branch p_mouse_multi_led_blink_count_no_limited,blank
+//	fetch 1,mem_mouse_multi_led_blink_count
+//	branch p_mouse_multi_led_blink_off,blank
+//	increase -1,pdata
+//	store 1,mem_mouse_multi_led_blink_count
+p_mouse_multi_led_blink_count_no_limited:
+	fetch 1,mem_mouse_multi_led_state
+	beq ON,p_mouse_multi_led_off
+	beq OFF,p_mouse_multi_led_on
+	rtn
+
+p_mouse_multi_led_on:
+	jam ON,mem_mouse_multi_led_state
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_mouse_multi_down_led_on
+p_mouse_multi_up_led_on:
+	fetcht 1,mem_mouse_multi_led_gpio 
+	call gpio_config_output 
+	fetcht 1,mem_mouse_multi_led_gpio
+	branch gpio_out_active
+p_mouse_multi_down_led_on:
+	fetcht 1,mem_mouse_multi_led_gpio
+	call gpio_config_output 
+	fetcht 1,mem_mouse_multi_led_gpio 
+	branch gpio_out_inactive
+
+
+p_mouse_discovey_led_blink_off:
+	fetch 1,mem_mouse_multi_led_on_timer
+	nrtn blank
+	fetch 1,mem_mouse_multi_led_on_poweron2s_flag
+	nrtn blank
+p_mouse_multi_led_blink_off:
+	setarg 0
+	store 3,mem_mouse_multi_led_blink_timer
+p_mouse_multi_led_off:
+	fetch 1,mem_mouse_multi_led_blink_count
+	nbranch p_mouse_multi_led_off_wait_blink_over,blank
+	jam 0,mem_mouse_multi_led_blink_enable
+	jam 0,mem_mouse_multi_led_type
+p_mouse_multi_led_off_wait_blink_over:
+	jam 0,mem_mouse_multi_led_on_timer
+	jam OFF,mem_mouse_multi_led_state
+	branch p_mouse_multi_led_gpio_set_float
+	
+p_mouse_mode_bt_device1_multi_led_on:
+p_mouse_mode_24g_device_multi_led_on:
+	jam 1,mem_mouse_multi_led_on_poweron2s_flag
+	jam ON,mem_mouse_multi_led_blink_enable
+	jam MULTI_LED_ON,mem_mouse_multi_led_type
+	jam 0,mem_mouse_multi_led_on_timer
+	rtn
+
+p_mouse_discovery_multi_led_blink:
+	jam 0,mem_mouse_multi_led_on_poweron2s_flag
+	jam 2,mem_mouse_multi_led_blink_timer_init	//200ms
+//	jam 0,mem_mouse_multi_led_blink_count_limited
+	jam 1,mem_mouse_multi_led_blink_count//0 will clear mem_mouse_multi_led_blink_enable/mem_mouse_multi_led_type
+p_mouse_multi_led_blink_enable:
+	jam 2,mem_mouse_multi_led_blink_timer
+	jam ON,mem_mouse_multi_led_blink_enable
+	jam MULTI_LED_BLINK,mem_mouse_multi_led_type
+	rtn
+	
+	
+p_mouse_adc_read:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_ENABLE_ADC
+	fetch 2,mem_mouse_multi_led_blink_count
+	nrtn blank
+	arg mem_adc_read_timer,regc
+	arg p_mouse_adc_read_timeout,regb
+	branch timer_single_step
+p_mouse_adc_read_timeout:
+	jam 10,mem_adc_read_timer
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	add pdata,0x1c,pdata
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+p_adc_bat_percent_lowpower_out:
+	ifetch 8,rega
+	store 8,mem_pdatatemp
+	fetcht 2,mem_pdatatemp+2	//shutdown voltage 0.9v
+	fetch 2,mem_pdatatemp+6		//now voltage
+	isub temp,null
+	nbranch p_app_enter_hibernate,positive
+	rtn
+//	fetcht 2,mem_pdatatemp+4	//low voltage 1.0v
+//	isub temp,null
+//	nbranch adc_set_low_power_flag,positive
+//p_adc_clear_low_power_flag:
+//	fetch 1,mem_adc_power_flag
+//	set0 0,pdata
+//	store 1,mem_adc_power_flag
+//	rtn
+
+//p_mouse_low_voltage_led_timer:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+//	fetch 2,mem_ui_state_map
+//	rtnbit1 UI_STATE_BLE_ADV
+//	rtnbit1 UI_STATE_BT_DISCOVERY
+//	fetch 2,mem_mouse_multi_led_blink_count
+//	nrtn blank
+
+//	fetch 1,mem_adc_low_volatage_led_timer_count
+//	pincrease 1
+//	store 1,mem_adc_low_volatage_led_timer_count
+//	beq 5,p_mouse_multi_led_on
+//	sub pdata,10,null
+//	nbranch p_mouse_adc_low_volatage_led_timer_count_clean,positive
+//	rtn
+//p_mouse_adc_low_volatage_led_timer_count_clean:
+//	jam 1,mem_adc_low_volatage_led_timer_count
+//	branch p_mouse_multi_led_off
+
+//p_low_power_no_data_off_led_time:
+//	fetch 1,mem_low_power_check_count
+//	increase 1,pdata
+//	store 1,mem_low_power_check_count
+//	sub pdata,LOW_VOLTAGE_LED_COUNT,null
+//	rtn positive
+//p_low_power_no_data_off_led_time_nolimited:
+//	jam 0,mem_low_power_led_blink_flag
+//	jam 0x96,mem_low_power_no_data_off_led_time
+//	rtn
+//p_low_power_nodata_off_led_time_check:
+//	arg mem_low_power_no_data_off_led_time,regc
+//	arg p_mouse_check_low_power_nodata_timeout,regb
+//	branch timer_single_step
+//p_mouse_check_low_power_nodata_timeout:
+//	setarg G24_LONG_SLEEP_STEP3
+//	store 3,mem_24g_enter_hibernate
+//	jam 1,mem_low_power_led_blink_flag
+//	branch p_mouse_adc_low_volatage_led_off
+
+p_mouse_seting_dpi:
+p_mouse_seting_sensor_type:
+	fetch 1,mem_config_sensor_type
+//	beq P3212,p_mouse_seting_3212_dpi
+	beq P3065_XY,p_mouse_seting_3065XY_dpi
+//	beq MX8650,p_mouse_seting_3065XY_dpi
+	beq KA8,p_mouse_seting_3065XY_dpi
+//	beq P8009,p_mouse_seting_3205_dpi
+p_mouse_seting_3205_dpi:
+	fetch 1,mem_mouse_dpi
+	sub pdata,MOUSE_DPI_LEVEL2,null
+	call p_mouse_3205_dpi_recount,zero
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,p_mouse_3205_set_cpi1
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi3	//1600
+	branch mouse_set_cpi2					//1200
+p_mouse_3205_dpi_recount:
+	jam MOUSE_DPI_LEVEL3,mem_mouse_dpi
+	rtn
+p_mouse_3205_set_cpi1:		//800
+	fetch 1,mem_320x_dpi_1
+	branch p_mouse_dpi_store
+
+p_mouse_seting_3065XY_dpi:
+	fetch 1,mem_mouse_dpi
+	sub pdata,MOUSE_DPI_LEVEL2,null
+	call p_mouse_3205_dpi_recount,zero
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,p_mouse_3065xy_set_cpi1
+	beq MOUSE_DPI_LEVEL4,p_mouse_3065xy_set_cpi4
+p_mouse_3065xy_set_cpi3:
+	fetch 1,mem_320x_dpi_3
+	increase -1,pdata
+p_mouse_dpi_store:
+	store 1,mem_mouse_cpi_count
+	branch mouse_p3205_dpi+3
+p_mouse_3065xy_set_cpi1:
+	fetch 1,mem_320x_dpi_1
+	increase -1,pdata
+	branch p_mouse_dpi_store
+p_mouse_3065xy_set_cpi4:
+	fetch 1,mem_320x_dpi_4
+	increase -1,pdata
+	branch p_mouse_dpi_store
+
+//p_mouse_seting_3212_dpi:
+//	fetch 1,mem_mouse_dpi
+//	sub pdata,MOUSE_DPI_LEVEL2,null
+//	call p_mouse_3205_dpi_recount,zero
+//	fetch 1,mem_mouse_dpi
+//	beq MOUSE_DPI_LEVEL1,mouse_set_p3212_cpi1
+//	beq MOUSE_DPI_LEVEL4,mouse_set_p3212_cpi4
+//	branch mouse_set_p3212_cpi3
+
+//p_mouse_seting_ka8_dpi:
+//	fetch 1,mem_mouse_dpi
+//	call p_mouse_3205_dpi_recount,blank
+//	fetch 1,mem_mouse_dpi
+//	beq MOUSE_DPI_LEVEL2,mouse_set_cpi2			//800
+//	beq MOUSE_DPI_LEVEL4,p_mouse_ka8_set_cpi3		//1600
+//	branch mouse_set_cpi4							//1200
+//p_mouse_ka8_set_cpi3:	
+//	setarg 5
+//	branch mouse_p3205_dpi
+
+
+p_mouse_motion:
+	disable user
+	setarg 0
+	store 6,mem_mouse_x
+	call p_mouse_cheak_sensor_data
+	call mouse_zwheel
+//	call mouse_t_zwheel
+	call p_mouse_key
+	nbranch p_mouse_motion_nodata,user
+	call p_drawing_optima
+	branch mouse_motion+9
+
+p_mouse_motion_nodata:	
+	call p_drawing_optima_init
+	jam 0,mem_low_power_check_count
+	rtn
+
+p_mouse_key:
+	call p_mouse_check_key_gpio
+	branch mouse_key+1
+p_mouse_check_key_gpio:
+	fetch 1,mem_mouse_key
+	copy pdata,rega
+	call p_mouse_check_lkey_gpio
+	call p_mouse_check_rkey_gpio
+	call p_mouse_check_mkey_gpio
+//	call p_mouse_check_bkkey_gpio
+	call p_mouse_check_fwkey_gpio
+	copy rega,pdata
+	rtn
+
+
+/* temp is gpio number, pdata  is key status param */
+p_mouse_check_key:
+	store 1,mem_mouse_key_status
+	lshift pdata,pdata
+	copy pdata,regb
+	copy temp,regc
+	fetch 1,mem_mouse_key_temp
+	sub pdata,0x02,null
+	call p_gpio_set_input_pu,positive		// lmr key
+	ncall p_gpio_set_input_pd,positive		// b4 b5 dpi key
+	copy regc,temp
+	call gpio_get_bit
+	setflag true,0,regb		//true = 1,input low level
+	call p_mouse_check_press
+	and regb,0x07,pdata
+	fetcht 1,mem_mouse_key_temp
+	copy temp,queue
+	sub temp,0x02,null
+	beq 0x07,p_mouse_key_press		//  about 17~22ms three times
+	beq 0x00,p_mouse_key_release
+	rtn
+
+p_mouse_check_press:
+	fetcht 1,mem_mouse_key_status
+	and_into 0x01,temp
+	and regb,0x01,pdata
+	isub temp,null
+	nbranch p_mouse_le_current_mult_update,zero
+	rtn
+	
+p_mouse_check_lkey_gpio:
+	jam 0x00,mem_mouse_key_temp
+	fetcht 1,mem_lbutton_gpio
+	fetch 1,mem_mouse_lkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_lkey_press_status
+	rtn
+
+p_mouse_check_rkey_gpio:
+	jam 0x01,mem_mouse_key_temp
+	fetcht 1,mem_rbutton_gpio
+	fetch 1,mem_mouse_rkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_rkey_press_status
+	rtn
+	
+p_mouse_check_mkey_gpio:
+	jam 0x02,mem_mouse_key_temp
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_mouse_mkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_mkey_press_status
+	rtn
+/*
+p_mouse_check_bkkey_gpio:
+	jam 0x03,mem_mouse_key_temp
+	fetcht 1,mem_bk_button_gpio
+	fetch 1,mem_mouse_bkkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_bkkey_press_status
+	fetcht 1,mem_bk_button_gpio
+	branch p_gpio_set_input_pu
+*/
+
+p_mouse_check_fwkey_gpio:
+	jam 0,mem_customer_key
+	jam 0x04,mem_mouse_key_temp
+	fetcht 1,mem_fw_button_gpio
+	fetch 1,mem_mouse_fwkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_fwkey_press_status
+	copy rega,pdata
+	bbit1 4,p_customer_key_press
+	call p_customer_key_release
+
+p_mouse_check_fwkey_gpio_exit:	
+	copy rega,pdata
+	and_into 0xef,rega
+	fetch 1,mem_customer_data_trigger
+	store 1,mem_customer_data_trigger_last
+	fetcht 1,mem_fw_button_gpio
+p_gpio_set_input_pu:
+	set1 gpio_active_bit,temp	
+p_gpio_set_input_pu1:
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	branch p_gpio_set_input_pd4
+
+p_mouse_key_press:
+	branch p_qset1_rega,positive
+p_qset0_rega:	
+	qset0 rega
+	rtn		
+
+p_mouse_key_release:
+	branch p_qset0_rega,positive
+p_qset1_rega:	
+	qset1 rega
+	rtn
+
+
+p_gpio_set_input_pd:
+	set0 gpio_active_bit,temp
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set1 gpio_active_bit,temp
+p_gpio_set_input_pd4:	
+	arg core_gpio_pd0,contw
+	branch gpio_set_high_impedance+4
+	
+p_customer_key_press:
+	jam 1,mem_customer_data_trigger
+	call p_customer_key_need_send
+	branch p_mouse_check_fwkey_gpio_exit
+
+p_customer_key_release:
+	jam 0,mem_customer_data_trigger
+	fetch 1,mem_customer_data_trigger_last
+	rtn blank
+p_customer_key_need_send:	
+	jam 1,mem_customer_key
+	branch enable_user	
+	
+
+p_mouse_select_device_button_gpio_set_suspend:
+	fetcht 1,mem_config_select_device_button_gpio
+p_mouse_set_gpio_suspend:
+	set0 gpio_active_bit,temp
+	branch p_gpio_set_input_pu1
+
+p_mouse_cheak_sensor_data:
+	fetch 1,mem_config_sensor_type
+//	beq P3212,p_mouse_p3212_sensor_motion
+	beq P8009,p_mouse_p8009_sensor_motion
+p_mouse_p32xx_sensor_motion:	
+	call mouse_clear_sensor_data
+	disable user
+	branch mouse_p32xx_sensor_motion_2
+//p_mouse_p3212_sensor_motion:
+//	call mouse_clear_sensor_data
+//	branch mouse_p3212_sensor_motion_1
+	
+p_mouse_p8009_sensor_motion:
+	call mouse_clear_sensor_data
+	disable user
+//	fetcht 1,mem_sensor_data_gpio
+//	call gpio_get_bit
+//	nrtn true 
+p_mouse_p32xx_sensor_motion_1:
+	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
+
+p_mouse_bb_event_discovery_btn:
+	call p_mouse_null_enter_hibernate_disable
+	isolate1 mark_24g,mark
+	call p_g24_check_51cmd_stop_24g,true
+	branch mouse_bb_event_discovery_btn+1
+
+//p_le_addr_random_config:
+//	jam ZCODE_81,mem_zcode_temp_param0
+//	branch p_zcode_entrance	
+
+p_mouse_start_discovery:
+	jam ZCODE_50,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_load_random_addr_increase_count:
+	call p_flash_release_deep_power_down
+	arg 2,temp
+	arg mem_random_addr_increase_count,rega
+	arg MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET,regb
+	fetch 3,mem_flash_base
+	iadd regb,pdata
+	branch spid_read_flash
+
+p_le_adv_data_update:
+	arg mem_le_adv_data+11,contw
+	arg 19,loopcnt
+	call memcpy
+	branch le_modified_name_adv
+
+p_mouse_stop_discovery:
+//	setarg 0
+//	store 2,mem_mouse_discovery_timer
+//	call p_mouse_sensor_poweron		//clear sensor data,confirm the motion pin high
+//	fetch 1,mem_device_option
+//	isolate1 MODE_4_MOUSE,pdata
+//	call mouse_stop_le_adv,true
+//	fetch 1,mem_device_option
+//	isolate1 MODE_3_MOUSE,pdata
+//	call mouse_stop_bt3_discovery,true
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_led_blink_stop
+//	branch p_mouse_discovey_led_blink_off
+
+	call p_mouse_discovey_led_blink_off
+	jam 1,mem_mouse_init_sensor_reset_flag
+	call p_mouse_init_sensor_reset		//clear sensor data,confirm the motion pin high
+	branch mouse_stop_discovery+1
+
+
+p_le_slave_match:
+	fetch 1,mem_le_md_count
+	pincrease 1
+	store 1,mem_le_md_count
+	beq LE_MD_MAX_COUNT,le_slave_cont
+	call le_acknowledge
+	call le_prepare_tx
+	call power_ctrl_start
+	branch le_slave_match+7
+
+p_le_next_adv_channel:
+	fetch 1,mem_le_ch_mapped
+	increase 1,pdata
+	store 1,mem_le_ch_mapped
+	rtnne 40
+	jam 37,mem_le_ch_mapped
+	rtn
+
+p_le_receive_skip:
+	call save_rssi
+	call p_rssi_signal
+	branch le_receive_skip+2
+
+p_le_update_param:
+	jam ZCODE_40,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_le_update_channel_map:
+	jam ZCODE_41,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_le_prepare_tx:
+	fetch 1,mem_le_arq
+	bbit1 wak,p_le_prepare_tx_wak
+	call power_ctrl_pac_succ_incrs	
+	fetch 1,mem_empty_count
+	nbranch p_le_send_empyt,blank
+	fetch 1,mem_le_state 
+	bbit0 lestate_encryption,p_le_tx_4
+	fetch 1,mem_le_rxbuf+1  
+	branch p_le_tx_4,blank  
+	branch le_send_empty      // send empty data when got non empty packet
+p_le_send_empyt:
+	fetch 1,mem_empty_count
+	increase -1,pdata
+	store 1,mem_empty_count
+	branch le_send_empty
+p_le_tx_4:	
+	fetch 1,mem_le_pairing_state
+	bne FLAG_LE_PAIRING_AFTER_AUTH,p_in_le_tx_4
+	jam 3,mem_empty_count
+p_in_le_tx_4:
+	call le_fifo_check_nearly_full
+	call p_mouse_data_pull,blank
+	branch le_prepare_tx+4
+
+p_le_check_tx_retransmit_setmd:
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+	fetch 1,mem_mouse_data_queue_num
+	rtn blank
+	fetch 1,mem_le_txlen
+	rtn blank
+	fetch 1,mem_le_txheader
+	set1 md,pdata
+	store 1,mem_le_txheader
+	call le_set_md
+	rtn
+
+p_le_prepare_tx_wak:
+	call p_le_check_tx_retransmit_setmd
+p_le_power_ctrl_pac_succ_decrs:
+power_ctrl_pac_succ_decrs:
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	sub pdata,2,null
+	ncall power_ctrl_pac_succ_cnt_reinit,positive
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	rtneq 0
+	increase -1,pdata
+	store 1,mem_power_ctrl_pac_succ_cnt
+	rtn
+
+p_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 1,mem_le_start_encrypt_timer
+	rtn
+
+p_le_parse:
+	rtnmark1 mark_old_packet
+	call le_fifo_check_full
+	nrtn blank
+	fetch 1,mem_le_rxbuf
+	and pdata,0x3,pdata
+	store 1,mem_le_packet_llid
+	ifetch 1,contr
+	and pdata,0x1f,pdata
+	store 1,mem_le_packet_size
+	rtn blank							//empty rtn
+	copy contr,pdata
+	store 2,mem_le_payload_ptr
+	fetch 1,mem_le_packet_llid
+	beq LLID_LE_LL,p_le_parse_ll
+	branch le_parse_l2cap
+p_le_parse_ll:
+	fetch 1,mem_le_rxbuf+2
+	beq LL_CONNECTION_UPDATE_REQ,p_le_parse_connection_update_req
+	beq LL_CHANNEL_MAP_REQ,p_le_parse_channel_map_req
+	branch le_parse_ll+1
+p_le_parse_connection_update_req:
+	call le_parse_connection_update_req
+	fetch 1,mem_mouse_le_updata_not_accepted_flag
+	rtn blank
+//ipad not accepted updata, need reinit mem_lpm_mult.   mem_lpm_mult = LL_CONNECTION_UPDATE_REQ latency = 04	
+p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:	
+	fetch 1,mem_le_new_connslavelatency
+	store 1,mem_lpm_mult
+	store 1,mem_lpm_mult_init
+	rtn		
+
+p_le_parse_channel_map_req:
+	ifetch 5,contr
+	store 5,mem_le_new_map
+	ifetch 2,contr
+	store 2,mem_le_instant
+	branch le_parse_channel_map_req+7	
+	
+p_le_parse_l2cap:
+	ifetch 2,contr
+	beq LE_L2CAP_CID_ATT,p_le_parse_att
+	beq LE_L2CAP_CID_SMP,p_le_parse_smp
+	branch le_parse_l2cap+11
+p_le_parse_att:
+	call store_contr
+	call p_mouse_le_reconn_write_enable_timer_reinit
+	call get_contr
+	branch le_parse_att
+	
+	
+p_le_parse_smp:
+	ifetch 1,contr
+	beq SMP_PAIRING_REQUEST,p_le_parse_smp_pairing_request
+	beq SMP_PAIRING_FAILED,p_le_parse_smp_pairing_failed
+	branch le_parse_smp+2
+
+p_le_parse_smp_pairing_request:
+	jam 1,mem_le_send_security_request_flag
+	branch le_parse_smp_pairing_request
+	
+p_le_parse_smp_pairing_failed:
+	jam ZCODE_82,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_le_adv_not_match:
+	fetch 1,mem_le_ch_mapped
+	bne 39,le_adv_loop
+	call p_le_adv_random_delay
+	arg le_adv_interval_timer,queue
+	fetch 2,mem_le_adv_interval
+	branch timer_init
+p_le_adv_random_delay:
+	random pdata
+	arg 0x1ff,temp
+	iand temp,pdata
+	add pdata,250,pdata
+	branch delay
+
+p_le_lpm_setmult:
+	disable wake
+	branch p_le_lpm_set_mult_attempt,attempt
+	nbranch le_lpm_lost,match
+p_le_lpm_set_mult_attempt:
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_le_receive_window
+	fetch 1,mem_le_connect_status_flag
+	compare 3,pdata,3
+	nbranch lpm_mult_short,true
+	branch le_lpm_set_mult_attempt+3
+
+p_le_mouse_bb_event_connect_complete:
+	jam ZCODE_42,mem_zcode_temp_param0
+	branch p_zcode_entrance
+	
+	
+
+p_twspi_reset:
+	hfetch 1,core_gpio_out3
+	and_into 0xfd,pdata
+	hstore 1,core_gpio_out3
+	hfetcht 1,core_gpio_oe3
+	or_into 0x2,temp
+	hstoret 1,core_gpio_oe3
+	call twspi_disable
+	and_into 0xfd,temp
+	nop 13
+	call p_twspi_enable
+	hstoret 1,core_gpio_oe3
+	rtn
+
+p_spid_init:
+	call spid_init_common
+p_twspi_enable:
+	hfetch 1,core_gpio_sel1
+	set1 0,pdata
+	set0 1,pdata
+	set0 3,pdata
+	hstore 1,core_gpio_sel1  //enable spi
+	rtn
+
+
+
+p_mouse_bt_sdp_set:
+	setarg mem_mouse_uuid_list				//bt sdp start address
+	store 2,mem_ui_uuid_table
+	rtn
+
+p_page_wait_fhs_reply_ok:
+	jam ZCODE_00,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_role_switch_master:
+	call role_switch_check
+	nrtn user
+p_wait_role_switch_anchor:
+	disable user
+	jam param_newconnto,mem_newconnto_counter
+	set0 mark_fhs_already_good,mark
+	set0 mark_role_switch_receive_fhs,mark
+p_roles_waitfhs_loop:
+	call rf_setup_time_master_slot
+	call master_recv_packet
+	bmark1 mark_fhs_already_good,p_roles_replyto_fhs
+	call new_conn_timeout
+	nbranch p_roles_waitfhs_loop,blank
+	bmark1 mark_role_switch_receive_fhs,p_roles_replyto_fhs1
+	branch role_switch_fail_master
+	
+p_roles_replyto_fhs:
+	call rf_setup_time_slave_slot
+	arg type_id,type
+	call master_send_packet
+	set1 mark_role_switch_receive_fhs,mark
+	set0 mark_fhs_already_good,mark
+	fetch 1,mem_amaddr
+	iforce am_addr	//use current LT_ADDR
+	jam 2,mem_newconnto_counter
+	branch p_roles_waitfhs_loop
+
+p_roles_replyto_fhs1:
+	fetch 4,mem_clke_bt		//wait for 2 fhs,need 2.5ms
+	pincrease 8
+	store 4,mem_clke_bt
+	branch roles_replyto_fhs+4
+
+p_process_dmh:
+	bmark1 mark_first_packet,end_of_packet
+	branch process_dmh+1
+
+p_quit_connection_cont:
+	jam ZCODE_43,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_prepare_tx:
+	fetch 1,mem_state
+	isolate1 state_inconn,pdata
+	call p_bt_power_ctrl,true
+	branch prepare_tx+1
+p_bt_power_ctrl:
+	fetch 1,mem_arq
+	isolate1 wack,pdata
+	call power_ctrl_pac_succ_decrs,true
+	ncall power_ctrl_pac_succ_incrs,true
+	branch power_ctrl_start
+
+p_slave_conn_recv_packet:
+	call slave_receive_master_slot
+	nbranch shutdown_radio,sync
+	call save_rssi
+	call p_rssi_signal
+	branch slave_conn_recv_packet+4
+
+p_lpm_dispatch:
+	rtnmark1 mark_24g
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	fetch 1,mem_lpm_mode
+	rtn blank
+	fetch 1,mem_ssp_enable
+	branch p_lpm_dispatch_next,blank
+	fetch 1,mem_sp_local_key_invalid	// simple pairing is not ready
+	rtn blank
+p_lpm_dispatch_next:
+	fetch 1,mem_le_sc_calc
+	nrtn blank
+	call lpm_check_wake_lock
+	nrtn blank
+	fetch 1,mem_context
+	compare 3,pdata,0x7							//sco won't sleep 
+	nbranch lpm_dispatch_unconn,true
+	fetch 2,mem_context + coffset_tsniff	//role switch 
+	arg 0xffff,temp
+	isub temp,null
+	rtn zero
+	branch lpm_dispatch_next+9
+
+p_lpm_set_mult:
+	disable wake
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	nbranch lpm_not_match,match
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_rx_window
+	fetch 1,mem_arq
+	bbit1 wack,lpm_mult_short
+	bmark0 mark_lpm_mult_enable,lpm_mult_short
+	call l2cap_malloc_is_fifo_empty
+	nbranch lpm_mult_short,blank
+	call p_lpm_set_attemp_timeout,blank	//fixed bt3.0 connected high current
+	branch lpm_set_mult+13	
+p_lpm_set_attemp_timeout:
+	jam 1,mem_current_sniff_attempt
+	jam 0,mem_current_sniff_timeout
+	rtn	
+
+p_mouse_bb_disconnected:
+	jam ZCODE_10,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_hid_rx_process:
+	jam ZCODE_11,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_parse_lmp_accepted:
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_SWITCH_REQ,p_parse_lmp_accepted_switch
+	branch parse_lmp_accepted+3
+p_parse_lmp_accepted_switch:
+	call parse_lmp_accepted_switch
+	jam 1,mem_bt_rcvd_switch_req_accept
+	fetch 1,mem_bt_send_lmp_setup_complete
+	rtn blank
+	jam 2,mem_bt_send_lmp_setup_complete
+	rtn
+
+p_send_lmp:
+	disable user
+	call lmo_fifo_process
+
+	
+	fetch 1,mem_lmp_to_send
+	rtn blank
+	bbit1 7,p_send_lmp_escape
+	beq LMP_ACCEPTED,p_send_lmp_accepted
+	beq LMP_SETUP_COMPLETE,p_send_lmp_setup_complete
+	beq LMP_SNIFF_REQ, p_send_lmp_sniff_req
+	branch send_lmp0
+
+p_send_lmp_escape:
+	jam ZCODE_20,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_send_lmp_accepted:
+	jam ZCODE_21,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_send_lmp_setup_complete:
+	jam 1,mem_bt_send_lmp_setup_complete
+	branch send_lmp_setup_complete
+
+p_send_lmp_sniff_req:
+	jam 4,mem_mouse_bt_send_first_package_timer
+	branch send_lmp_sniff_req
+	
+p_process_conn_sm:
+	call lmo_fifo_check
+	nrtn blank
+p_process_conn_sm_continue:
+	fetch 1,mem_conn_sm
+	rtn blank
+	beq CONN_SM_SEND_CONN_REQ, p_host_create_conn_send_conn_req
+	beq CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION,p_host_creat_conn_wait_switch
+	branch process_conn_sm_continue+2
+
+p_host_creat_conn_wait_switch:
+	fetch 1,mem_switch_flag
+	rtneq SWITCH_FLAG_INIT
+	beq SWITCH_FLAG_ACCEPT,p_host_create_conn_switch_accept
+	branch host_creat_conn_wait_switch+3
+p_host_create_conn_switch_accept:
+	rtn master
+p_host_create_conn_auth_pair:
+	/* checking whether or not to do m/s switch */
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_AUTH,p_host_create_conn_auth_pair_true
+	branch host_create_conn_auth_pair+1
+p_host_create_conn_auth_pair_true:
+	fetch 1,mem_bt_send_lmp_setup_complete
+	beq 1,host_create_conn_auth_pair_true
+	//sumsung a5100 patch
+	fetch 1,mem_link_key_exists
+	branch host_create_conn_auth_pair_nokey,blank
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn blank
+	jam 0,mem_bt_send_max_slot_req_accept_after_switch	
+	fetch 4,mem_aurand_send_delay_time
+	arg 20,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nbranch p_bt_send_max_slot_req_accept_after_switch_wait,positive
+	branch host_create_conn_auth
+
+p_bt_send_max_slot_req_accept_after_switch_wait:
+	jam 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn
+
+p_host_create_conn_send_conn_req:
+	jam 20,mem_mouse_send_switch_req_timer
+	branch host_create_conn_send_conn_req
+
+	
+
+	
+
+p_check_51cmd_once_continue:
+	call lmo_fifo_check
+	nbranch check_51cmd_restore,blank  //process this cmd next time while lmo fifo is full
+	fetch 1,mem_fifo_temp
+	bmark0 mark_context,check_51cmd_check_idle
+	beq BT_CMD_STORE_RECONN_INFO_LE,p_flash_store_le_reconn_info
+	beq BT_CMD_STORE_RECONN_INFO_BT,p_flash_store_bd_reconn_info
+	beq BT_CMD_LE_UPDATE_CONN,p_check_51cmd_ble_update_connect_param
+	branch check_51cmd_once_continue+2
+
+p_flash_store_le_reconn_info:
+	jam REC_4_MODE,mem_record_bt_mode
+	fetch 6,mem_le_plap
+	branch p_flash_store_reconn_info
+p_flash_store_bd_reconn_info:
+	jam REC_3_MODE,mem_record_bt_mode
+	fetch 6,mem_plap	
+p_flash_store_reconn_info:
+	store 6,mem_temp_lap
+p_mouse_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 mouse_check_device_addr
+p_mouse_unplug_clean_bdaddr:
+	call mouse_before_store_reconn_info
+	branch p_mouse_store_flash_device_info
+
+p_check_51cmd_ble_update_connect_param:
+	call le_fifo_check_full
+	nrtn blank
+	branch le_l2cap_tx_update_req
+
+power_ctrl_pac_succ_cnt_init:
+	jam 1,mem_power_ctrl_level
+	jam 0,mem_power_ctrl_pac_succ_cnt
+	rtn
+power_ctrl_pac_succ_incrs:
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	increase 1,pdata
+	store 1,mem_power_ctrl_pac_succ_cnt
+	rtn
+
+power_ctrl_pac_succ_cnt_reinit:
+	jam 3,mem_power_ctrl_pac_succ_cnt
+	rtn
+
+power_ctrl_start:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_ADV
+	rtnbit1 UI_STATE_BT_RECONNECT
+	rtnbit1 UI_STATE_BT_DISCOVERY
+	
+	arg mem_rssi_signal_buf,rega
+	call p_rssi_average
+	storet 1,mem_rssi_avg_received
+
+	setarg RSSI_DIS_MAX_24G
+	bmark1 mark_24g,power_ctrl_start_next
+	setarg RSSI_DIS_MAX_BLE
+power_ctrl_start_next:	
+	isub temp,null
+	nbranch power_ctrl_txpower_incrs_force,positive
+
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	sub pdata,2,null
+	nbranch power_ctrl_txpower_decrs_check,positive
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	beq 0,power_ctrl_txpower_incrs
+	rtn
+
+power_ctrl_txpower_decrs_check:
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	rtnne 50
+	jam 0,mem_power_ctrl_pac_succ_cnt
+power_ctrl_txpower_decrs:
+	fetcht 1,mem_rssi_avg_received
+	setarg RSSI_DIS_MIN_24G
+	bmark1 mark_24g,power_ctrl_txpower_decrs_next
+	setarg RSSI_DIS_MIN_BLE	
+power_ctrl_txpower_decrs_next:	
+	isub temp,null
+	nrtn positive
+	fetch 1,mem_power_ctrl_level
+	beq 0,power_ctrl_decrs_level0
+	increase -1,pdata
+	store 1,mem_power_ctrl_level
+	beq 0,power_ctrl_decrs_level0
+power_ctrl_decrs_level1:
+power_ctrl_incrs_level1:	//0dBm
+	jam TX_POWER_0DB,mem_tx_power
+	rtn
+
+power_ctrl_txpower_incrs_force:
+	jam 0,mem_power_ctrl_pac_succ_cnt
+power_ctrl_txpower_incrs:
+	fetch 1,mem_power_ctrl_level
+	beq 2,power_ctrl_incrs_level2
+	increase 1,pdata
+	store 1,mem_power_ctrl_level
+	beq 1,power_ctrl_incrs_level1
+power_ctrl_incrs_level2:	//+6dBm
+	jam TX_POWER_5DB,mem_tx_power
+	rtn
+	
+power_ctrl_decrs_level0: //-5dBm
+	jam TX_POWER_f5DB,mem_tx_power
+	rtn
+
+
+p_set_freq_tx:
+	storet 1,mem_last_freq
+	add temp,0,rega			/* index to frequency */
+	call rf_write_freq
+	setarg param_pll_setup	//128us
+	call sleep
+p_rf_tx_enable:
+	jam 0x1,rfen_adc
+	jam 0x3c,rfen_rx
+	jam 0xe0,rfen_tx
+	nop 10 /* wait LDOs to turn ON*/
+	jam 0x01, rfen_mdm
+	jam 0x3d, rfen_mdm
+	nop 10 /* wait tx blocks to turn ON*/
+	jam 0xb7,rfen_sn
+	nop 10 /* wait tx lo buffer to turn ON*/
+	jam 0x7d, rfen_mdm
+	fetch 1,mem_tx_power
+//	beq TX_POWER_0DB,p_set_tx_power_0db
+//	beq TX_POWER_3DB,p_set_tx_power_3db	
+	beq TX_POWER_5DB,p_set_tx_power_5db
+//	beq TX_POWER_f3DB,p_set_tx_power_f3db	
+	beq TX_POWER_f5DB,p_set_tx_power_f5db
+	beq TX_POWER_PAIR,p_set_tx_power_pair
+//	branch p_set_tx_power_0db
+p_set_tx_power_0db:
+	call p_rx_low_sens
+//	jam 0xba,0x894b
+	jam 0xd0,0x8955
+	jam 0xe0,0x8956
+//	jam 0x88,0x8957
+	jam 0x6c,0x8958
+//	jam 0x10,0x8959
+	branch set_tx_power_0db	
+
+//p_set_tx_power_3db:
+//	call p_rx_high_sens
+//	jam 0xba,0x894b
+//	jam 0xd0,0x8955
+//	jam 0xe0,0x8956
+//	jam 0x88,0x8957
+//	jam 0x3c,0x8958
+//	jam 0x10,0x8959
+//	branch set_tx_power_3db
+	
+p_set_tx_power_5db:
+p_rx_high_sens:
+	jam 0xfb,0x894c 
+	jam 0xef,0x894d
+	jam 0xec,0x894e 
+	jam 0x5e,0x894f
+	
+//	jam 0xba,0x894b
+	jam 0xd0,0x8955
+	jam 0xe0,0x8956
+//	jam 0x88,0x8957
+	jam 0x3c,0x8958
+//	jam 0x10,0x8959
+	branch set_tx_power_5db
+
+//p_set_tx_power_f3db:
+//	call p_rx_low_sens
+//	jam 0xba,0x894b
+//	jam 0xd0,0x8955
+//	jam 0xc0,0x8956
+//	jam 0x88,0x8957
+//	jam 0x6c,0x8958
+//	jam 0x10,0x8959
+//	branch set_tx_power_f3db
+	
+p_set_tx_power_f5db:
+	call p_rx_low_sens
+//	jam 0xba,0x894b
+	jam 0xd0,0x8955
+	jam 0xc0,0x8956
+//	jam 0x88,0x8957
+	jam 0x6c,0x8958
+//	jam 0x10,0x8959
+	branch set_tx_power_f5db
+
+p_rx_low_sens:
+	jam 0x5b,0x894c
+	jam 0x96,0x894d
+	jam 0x2c,0x894e 
+	jam 0x46,0x894f
+	rtn
+		
+p_set_tx_power_pair:	//50-100cm distance
+//	jam 0xba,0x894b
+ 	jam 0xc2,0x8956
+ 	jam 0xd0,0x8955
+	rtn	
+
+p_shutdown_radio:
+	force 8,radio_ctrl
+	branch shutdown_radio+1
+
+p_initialize_radio_cont:
+	call initialize_radio_cont+1
+	jam clksel_dpll,core_clksel
+	rtn
+
+
+// input : mem_zcode_temp_param0 ---- zocde number(0~1f)
+p_zcode_entrance:
+	fetcht 1,mem_zcode_temp_param0 // zcode number @ high 4bit
+	rshift4 temp,temp
+	fetch 1,mem_zcode_current_number
+	isub temp,null
+	branch p_zcode_run,zero // if this zcode is already loaded, do not load again
+	storet 1,mem_zcode_current_number
+	increase 1,temp
+	setarg ZCODE_BUFF_SIZE
+	imul32 temp,temp
+	fetch 3,mem_xip_flash_offset
+	isub temp,pdata
+
+	fetcht 3,mem_flash_start_addr
+	iadd temp,pdata
+	increase -5,pdata
+	store 3,mem_flash_address
+	
+	call p_flash_release_deep_power_down
+p_zcode_read_loop:
+	fetch 3,mem_flash_address
+	arg ZCODE_BUFF_SIZE,temp
+	arg mem_zcode_buff,rega
+	call spid_read_flash
+	fetch 4,mem_zcode_buff
+	fetcht 4,mem_zcode_head	//p_start
+	isub temp,null
+	nbranch p_zcode_read_loop,zero	//sometimes we will lost p_start,read flash again
+	call p_mouse_spi_init
+
+	setarg mem_zcode_buff
+	store 2,mem_patch_ptr
+	jam ZCODE_CODE_SIZE,mem_patch_len
+	call load_ucode
+	setarg 0
+	store 4,mem_patch_ptr
+p_zcode_run:
+	fetch 1,mem_zcode_temp_param0
+	branch p_zcode
+
+
+
+
+
+//notice: need to call p_mouse_drawing_optima_init when waked from mult
+p_drawing_optima:
+	fetch 4,mem_mouse_x
+	rtn blank
+	call p_data_abs_check
+	setarg 0x03	//asm_flag enable condition
+	call p_pdata_greater_than_check
+	setarg 0x02	//asm_flag disable condition
+	call p_data_less_than_check
+	fetch 1,mem_mouse_asm_flag
+	beq 1,p_drawing_optima_modify
+p_drawing_optima_init:
+	arg 5,loopcnt
+	arg mem_mouse_asm_flag,contw
+	branch clear_mem
+
+p_drawing_optima_modify:
+
+	fetch 2,mem_mouse_x_pre
+	store 2,mem_data_pre
+	fetch 2,mem_mouse_x
+	store 2,mem_data_current
+	call p_drawing_optima_data
+	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 p_drawing_optima_data
+	fetch 2,mem_data_pre
+	store 2,mem_mouse_y_pre
+	fetch 2,mem_data_current
+	store 2,mem_mouse_y
+	rtn	
+
+
+
+/**********
+input:data_pre,data_current
+output:data_pre,data_current after optima
+***********/
+p_drawing_optima_data:
+	fetch 2,mem_data_pre
+	fetcht 2,mem_data_current
+	iadd temp,pdata
+	store 3,mem_data_sum
+	isolate1 16,pdata
+	branch p_data_sum_overflow,true
+	fetch 1,mem_data_sum+1
+	beq 0xff,p_data_sum_n
+	fetch 1,mem_data_sum
+p_data_store_pre:
+	rshift pdata,pdata
+	store 2,mem_data_pre
+	store 2,mem_data_current
+	rtn
+p_data_sum_overflow:
+	fetch 1,mem_data_sum+1	//sum positive
+	beq 0,p_data_sum_overflow_p
+	fetch 3,mem_data_sum	//全负相加
+	branch p_data_store_pre
+p_data_sum_overflow_p:
+	jam 0,mem_data_sum+2
+	fetch 1,mem_data_sum
+	branch p_data_store_pre
+
+p_data_sum_n:
+	fetch 1,mem_data_sum	//sum negetive
+	call p_pdata_get_half
+	store 1,mem_data_pre
+	store 1,mem_data_current
+	branch p_data_zero,blank
+	setarg 0xff
+p_data_set_direction:	
+	store 1,mem_data_pre+1
+	store 1,mem_data_current+1
+	rtn
+p_data_zero:
+	setarg 0
+	branch p_data_set_direction
+
+p_pdata_get_half:
+	call p_pdata_invert
+	rshift pdata,pdata
+p_pdata_get_new_value:	
+	call p_rega_in_out
+	sub pdata,0,pdata
+	store 1,mem_data_value
+	rtn
+
+p_pdata_invert:
+	sub pdata,0,pdata
+p_rega_in_out:	
+	store 1,mem_rega
+	fetch 1,mem_rega
+	rtn
+
+//rega mouse_x, regb mouse_y, pdata refer
+p_pdata_greater_than_check:
+	isub rega,null
+	nbranch p_enable_asm,positive
+	isub regb,null
+	nbranch p_enable_asm,positive
+p_disable_asm:
+	jam 0,mem_mouse_asm_flag
+	rtn
+p_data_less_than_check:
+	isub rega,null
+	nrtn positive
+	isub regb,null
+	nrtn positive
+	branch p_disable_asm
+p_enable_asm:
+	jam 1,mem_mouse_asm_flag
+	rtn
+
+p_data_abs_check:
+	fetch 2,mem_mouse_x
+	call p_data_abs
+	copy pdata,rega
+	fetch 2,mem_mouse_y
+	call p_data_abs
+	copy pdata,regb
+	rtn
+
+/***********
+input: data_current
+output:pdata,abs
+************/
+p_data_abs:
+	store 2,mem_data_current
+	fetch 1,mem_data_current+1
+	beq 0xff,p_data_reversal
+	fetch 1,mem_data_current
+p_data_abs_store:
+	and_into 0xff,pdata
+	//output:pdata
+	rtn
+p_data_reversal:
+	fetch 2,mem_data_current
+	sub pdata,0,pdata
+	branch p_data_abs_store
+
+
+
+
+
+/******************************************/
+/***********   ROM Start   ***************/
+/******************************************/
+
+org 0x2000		// start from rom address start
+start:
+	call lpmstate
+
+soft_reset:
+	bpatch patch00_0,mem_patch00
+	clear_stack
+	call spi_ncs_gpio_init  // 0xff disable spi ncs gpio init
+	call initialize_radio
+	call iicd_init_12m
+	call init_param
+	call l2cap_init
+	bpatch patch00_1,mem_patch00
+	call rfcomm_init
+	call init_lmp
+	call ui_init
+	call app_init
+	ncall load_chip_option,wake
+	bpatch patch00_2,mem_patch00
+	call app_lpm_init,wake
+	call publickey_init
+	call lpm_recover_clk,wake
+main_loop:	
+	bpatch patch00_3,mem_patch00
+	call sp_calc_sequence
+	call sp_calc_sequence_256
+	call sp_calc_sequence_256_check
+	call le_dispatch
+	bpatch patch00_4,mem_patch00
+	call idle_dispatch
+	call app_process_idle
+	call inquiry_dispatch
+	call inquiry_scan_dispatch
+	call page_scan_dispatch
+	call connection_dispatch
+	call lpm_dispatch
+	call g24_dispatch
+	branch main_loop
+
+connection_dispatch:
+	call connection_incontext
+	rtnmark0 mark_context
+	set0 mark_context,mark
+	call context_save
+	branch le_disable
+	
+connection_incontext:
+	bpatch patch00_5,mem_patch00
+	call context_search_insniff
+	nbranch connection_nosniff,zero
+	call context_load
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	bbit1 mode_le,le_conn_dispatch
+	bbit1 mode_master, master_dispatch
+	branch slave_dispatch
+connection_nosniff:
+	call context_get_next
+	copy loopcnt,null
+	rtn zero
+	call context_load
+	fetch 1,mem_state
+	bbit1 state_inpage,master_page
+	fetch 1,mem_mode
+	bbit1 mode_master, master_dispatch
+	branch slave_dispatch
+
+
+
+/**************************************/
+/**************idle dispatch*********/
+/**************************************/
+	
+idle_dispatch:
+	fetch 1,mem_hci_cmd
+	rtn blank
+	beq hci_cmd_inquiry,idle_inquiry
+	beq hci_cmd_inquiry_cancel,idle_inquiry_cancel
+	beq hci_cmd_remote_name_req,idle_remote_name_req
+	beq hci_cmd_create_conn,idle_create_conn
+	beq hci_cmd_le_create_conn,idle_le_create_conn
+	call context_search_conn_handle
+	rtn zero
+	call context_search_plap
+	rtn zero
+idle_exit:
+	jam 0,mem_hci_cmd
+	rtn
+
+idle_le_create_conn:
+	jam hci_cmd_le_create_conn,mem_cmd_le_create_conn
+	jam 0,mem_hci_cmd
+	rtn
+	
+idle_inquiry:
+	set1 mark_inquiry_on,mark
+	set0 mark_inquiry_trainb,mark
+	jam param_ninquiry,mem_ninqy_index
+	jam 31,mem_nfreq_index_inq
+	branch idle_exit
+
+idle_inquiry_cancel:
+	set0 mark_inquiry_on,mark
+	force 0,stop_watch
+	branch idle_exit
+
+idle_remote_name_req:
+	call context_search_plap
+	rtn zero
+	force LMP_NAME_REQ,temp
+	jam 5,mem_nameres_cnt
+	branch idle_start_page
+
+idle_create_conn:
+	bpatch patch00_6,mem_patch00
+idle_create_conn_device:
+	fetch 6,mem_hci_plap
+	branch idle_exit,blank
+	jam RECONNECT_HID,memui_reconnect_mode
+	//jam HS_INIT_CALL,mem_hs_mode //init as master
+	jam CONN_SM_WAIT_FEATURES_RES,mem_conn_sm
+	branch idle_create_conn_cont
+	
+idle_create_conn_cont:
+	force LMP_VERSION_REQ,temp
+idle_start_page:
+	bpatch patch00_7,mem_patch00
+	fetch 1,mem_page_mode
+	branch idle_page_mode_r0,blank
+	lshift3 pdata,pdata
+	lshift4 pdata,pdata
+	increase -1,pdata
+idle_page_mode_r0:
+	store 1,mem_npage
+	store 1,mem_npage_index
+	jam 31,mem_nfreq_index_page
+	set0 mark_page_trainb,mark
+	call context_new
+	nbranch idle_page_fail,zero
+	call get_free_amaddr
+	store 1,mem_amaddr
+	storet 1,mem_lmo_opcode2
+	fetch 6,mem_hci_plap
+	store 6,mem_plap
+	bpatch patch01_0,mem_patch01
+	call timer_reinit
+	force 0,pdata
+	compare LMP_NAME_REQ,temp,0xff
+	nsetflag true,state_init_seq,pdata
+	set1 state_inpage,pdata
+	store 1,mem_state
+	jam BT_EVT_RECONN_STARTED,mem_fifo_temp
+	call ui_ipc_send_event
+	force 0,pdata
+	setflag true,smap_name_req,pdata
+	store 1,mem_state_map
+	setarg 0
+	set1 mode_master,pdata
+	store 1,mem_mode
+	enable master
+	call context_save
+	disable master
+	force page_length_timer,queue
+	fetch 2,mem_page_to
+	call timer_init
+	branch idle_exit
+idle_page_fail:
+	bpatch patch01_1,mem_patch01
+	fetch 6,mem_hci_plap
+	store 6,mem_plap
+	compare LMP_NAME_REQ,temp,0xff
+	branch idle_name_fail,true
+	branch idle_exit
+idle_name_fail:
+	arg mem_tmp_buffer,contw
+	arg 8,loopcnt
+	call memset0
+	jam BT_EVT_RECONN_FAILED,mem_fifo_temp
+	call ui_ipc_send_event
+	branch idle_exit
+	
+
+/******************************************/
+/**************  Inquiry  *****************/
+/******************************************/
+
+inquiry_dispatch:
+	rtnmark0 mark_inquiry_on
+	force inquiry_length_timer,queue
+	call timer_check
+	nsetflag blank,mark_inquiry_on,mark
+	nbranch inquiry_start,blank
+	rtn
+	
+
+
+inquiry_start:
+	bpatch patch01_2,mem_patch01
+	fetcht 2,mem_inq_window
+	force 4,queue
+	call sniff_check_window
+	rtn user
+	call afh_clear
+	force 0,freq_mode
+inquiry_restart:
+	rtn timeout
+	set0 mark_fhs_already_good,mark
+	set0 mark_fhs_eir,mark
+inquiry_rx_restart:
+	add clkn_bt,1,bt_clk
+	isolate1 mark_inquiry_trainb,mark
+	setflag true,2,freq_mode
+	compare 0x00,bt_clk,0x02      /* see if this is even slot */
+	nbranch inquiry_receive,true
+
+inquiry_transmit:
+	bpatch patch01_3,mem_patch01
+	fetch 1,mem_inquiry_transmit
+	increase 1,pdata
+	store 1,mem_inquiry_transmit
+	call fetch_giac
+	call tx_radio_freq
+	call fetch_diac
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_native
+	call send_access_word
+	call end_of_packet
+	call inquiry_check_train
+	branch inquiry_restart
+
+inquiry_check_train:
+	bpatch patch01_4,mem_patch01
+	fetch 1,mem_nfreq_index_inq
+	increase -1,pdata
+	store 1,mem_nfreq_index_inq
+	rtn positive  /* if it's time to incremnt N */
+	jam 31,mem_nfreq_index_inq
+	fetch 1,mem_ninqy_index
+	increase -1,pdata
+	store 1,mem_ninqy_index
+	rtn positive      /* if it's time to change train */
+	setflip mark_inquiry_trainb,mark
+	jam param_ninquiry,mem_ninqy_index
+	rtn
+
+inquiry_receive:
+	bpatch patch01_5,mem_patch01
+	call fetch_giac
+	call rx_radio_freq
+	call fetch_diac
+	call start_rx_native
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_clkn_rt
+	branch inquiry_sync,sync   /* try look for id packet again if not found */
+	call inquiry_check_train
+	branch inquiry_rx_restart
+inquiry_sync:
+	bpatch patch01_6,mem_patch01
+	call save_rssi
+	call scan_mode_whiten
+	call receive_packet_whitened
+	set0 mark_rxbuf_inuse,mark
+	rtnmark0 mark_fhs_already_good
+inquiry_receive_rtn:
+	bpatch patch01_7,mem_patch01
+inquiry_receive_eir_rtn:
+	fetch 1,mem_inquiry_rcv
+	increase 1,pdata
+	store 1,mem_inquiry_rcv
+	rtn
+		
+/******************************************/
+/**************  Master Dispatch  *************/
+/******************************************/
+
+
+
+master_page:
+	bpatch patch02_0,mem_patch02
+	enable master
+	enable clknt
+	fetch 2,mem_page_interval
+	branch master_page_no_interval,blank
+	force page_interval_timer,queue
+	call timer_check               
+	nrtn blank
+master_page_no_interval:
+	bpatch patch02_1,mem_patch02
+	fetcht 2,mem_page_window
+	force 40,queue
+	call sniff_check_window
+	branch page_exit,user
+	force page_length_timer,queue
+	call timer_check
+	nbranch page_start,blank
+	fetch 1,mem_state_map
+	bbit1 smap_name_req,master_npage_timeout
+	branch master_page_timeout
+master_npage_timeout:
+	arg mem_tmp_buffer,contw
+	arg 8,loopcnt
+	call memset0
+master_page_timeout:
+	bpatch patch02_2,mem_patch02
+	jam 0,mem_state
+	call init_lmp_work
+	jam 0,memui_reconnect_mode
+	jam BT_EVT_RECONN_PAGE_TIMEOUT,mem_fifo_temp
+	call ui_ipc_send_event	
+	branch page_exit
+
+page_start:
+	bpatch patch02_3,mem_patch02
+	force 0,timeup
+	until clkn_rt,meet
+	fetch 1,mem_page_clk
+	increase -1,pdata
+	ixor clkn_bt,pdata
+	compare 0,pdata,3
+	nbranch page_start,true
+	deposit am_addr
+	store 1,mem_fhs_am_addr
+	force 0,N_tx_slot
+	force 0,freq_mode
+
+page_restart:
+	bpatch patch02_4,mem_patch02
+	branch page_exit,timeout
+	call fetch_page_bt_adr
+	arg param_rf_setup, timeup
+	until clkn_rt,meet         /* wait for the start_receiver time against native real clk  */
+page_rx_restart:
+	bpatch patch02_5,mem_patch02
+	fetch 4,mem_page_clk    /* deposit clk_estimate */
+	iforce bt_clk
+	increase 1,pdata
+	store 4,mem_page_clk
+	isolate1 mark_page_trainb,mark
+	setflag true,2,freq_mode
+	compare 0x00,bt_clk,0x02      /* see if this is even slot */
+	nbranch page_receive,true
+	fetch 1, mem_page_transmit
+	increase 1,pdata
+	store 1, mem_page_transmit
+	call tx_radio_freq
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_native
+	call send_access_word
+	call end_of_packet
+	call page_check_train
+	branch page_restart	
+page_exit:
+	bpatch patch02_6,mem_patch02
+	disable master
+	fetch 2,mem_page_interval      
+	rtn blank
+	force page_interval_timer,queue
+	branch timer_init              
+
+page_check_train:
+	bpatch patch02_7,mem_patch02
+	fetch 1,mem_nfreq_index_page
+	increase -1,pdata
+	store 1,mem_nfreq_index_page
+	rtn positive
+	jam 31,mem_nfreq_index_page
+	fetch 1,mem_npage_index
+	increase -1,pdata                 /* increment N */
+	store 1,mem_npage_index
+	rtn positive      			/* if it's time to change train */
+	setflip mark_page_trainb,mark             /* change train */
+	fetch 1,mem_npage
+	store 1,mem_npage_index
+	rtn
+	
+page_receive:
+	bpatch patch03_0,mem_patch03
+	call rx_radio_freq
+	call start_rx_native
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_clkn_rt	/* try id look for id packet again */
+	branch page_sync,sync         /* restart if didn't receive anything */
+	call page_check_train
+	branch page_rx_restart
+page_sync:
+	call end_of_packet
+	fetch 1, mem_page_rcv
+	increase 1,pdata
+	store 1, mem_page_rcv
+	force 0,stop_watch
+	fetch 4,mem_page_clk
+page_send_fhs:
+	bpatch patch03_1,mem_patch03
+	call rf_setup_time_master_slot
+	call fetch_page_bt_adr
+	increase 1,N_tx_slot
+page_send_fhs_continue:
+	and_into 0x1fd,bt_clk
+	and_into 0x1fc,freq_mode               /* master response = x00, even_train settin must remain the same */
+	call tx_radio_freq
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_native
+	call send_access_word
+	deposit clkn_bt
+	store 4,mem_clkn_bt
+	force 0,am_addr
+	force type_fhs,type
+	call scan_mode_whiten
+	call transmit_packet_whitened
+page_wait_fhs_reply:
+	bpatch patch03_2,mem_patch03
+	call rf_setup_time_slave_slot
+	or_into 0x02,bt_clk
+	and_into 0x1fc,freq_mode               /* master response sequence = x00, even train setting must be preserved */
+	call rx_radio_freq
+	call start_rx_native
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_clkn_rt	/* look for that reply */
+	call end_of_packet,sync              /* id reply is enough */
+	branch page_wait_fhs_reply_ok,sync           /* no reply then send fhs again */
+	fetch 1,mem_fhs_wait_counter
+	branch page_restart,blank
+	increase -1,pdata
+	store 1,mem_fhs_wait_counter
+	branch page_send_fhs
+	
+page_wait_fhs_reply_ok:
+	bpatch patch03_3,mem_patch03
+	fetch 1, mem_page_rcv_fhs
+	increase 1,pdata
+	store 1, mem_page_rcv_fhs
+	call prepare_newconn
+master_newconn_loop:
+	call master_newconn_once
+	branch newconn_poll_responded,sync
+	call new_conn_timeout
+	nbranch master_newconn_loop,blank
+	branch page_restart
+
+newconn_poll_responded:
+	bpatch patch03_4,mem_patch03
+	fetch 1,mem_state
+	set0 state_inpage,pdata
+	store 1,mem_state
+	call newconn_init
+	disable master
+	rtn
+	
+
+master_dispatch:
+	bpatch patch03_5,mem_patch03
+	enable master
+	enable clknt
+	call role_switch_master
+	rtn user
+	call check_bt_disabled
+	call rf_setup_time_master_slot
+	add clkn_bt,1,bt_clk
+	call fetch_self_bt_adr
+	force 0x03,freq_mode
+	call scheduler_tx_l2cap_pkt
+	call prepare_tx
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_native
+	call send_access_word
+	call transmit_packet
+master_loop:
+	bpatch patch03_6,mem_patch03
+	call parse_lmp
+	call master_conn_recv_packet
+	nbranch master_notmatch,match
+	call supervision_flush
+	call parse_l2cap
+	fetch 1,mem_master_rcvcnt
+	increase 1,pdata
+	store 1,mem_master_rcvcnt
+master_notmatch:
+	bpatch patch03_7,mem_patch03
+	call scheduler_process
+	call check_master_disconnect
+	nrtn master					/* disconnected */
+	call check_attempt
+	nbranch master_attempt,blank
+master_exit:
+	disable master
+	rtn
+
+master_attempt:
+	call prepare_tx
+	call master_conn_send_packet
+	branch master_loop
+
+
+check_master_disconnect:
+	branch check_master_match,match
+	call supervision_update
+	branch master_disconnect,positive
+check_master_match:
+	call check_disconnect_timeout
+	nbranch master_disconnect,user
+	fetch 1,mem_state_map
+	rtnbit0 smap_name_req
+	rtnbit1 smap_name_res
+	fetch 1,mem_op
+	rtnbit1 op_disconn
+	call conn_timer_expired
+	nrtn blank
+	fetch 1,mem_nameres_cnt
+	increase -1,pdata
+	store 1,mem_nameres_cnt
+	nrtn blank
+	branch lmp_disconnect
+
+master_disconnect:
+	bpatch patch04_0,mem_patch04
+	call quit_connection
+	disable master
+	fetch 1,mem_state_map
+	bbit1 smap_name_req,master_name_disconnect
+	rtn
+	
+master_name_disconnect:
+	fetch 1,mem_state_map
+	rtnbit1 smap_name_res
+master_name_error:
+	arg mem_tmp_buffer,contw
+	arg 8,loopcnt
+	branch memset0
+	
+check_disconnect_timeout:
+	bpatch patch04_1,mem_patch04
+	enable user
+	fetch 1,mem_op
+	rtnbit0 op_disconn
+	call conn_timer_expired
+	nrtn blank
+	branch disable_user
+
+conn_timer_expired:
+	fetch 1,mem_conn_timer
+	increase -1,pdata
+	store 1,mem_conn_timer
+	rtn
+
+linkkey_ready:
+	bpatch patch04_2,mem_patch04
+	fetch 1,mem_state
+	bbit1 state_linkkey,linkkey_set
+	fetch 1,mem_pairing_auth
+	branch linkkey_set,blank
+	jam DEFALT_PAIRING_AUTH,mem_pairing_auth
+	jam BT_EVT_LINKKEY_GENERATE,mem_fifo_temp
+	call ui_ipc_send_event
+	branch linkkey_set
+linkkey_set:
+	bpatch patch04_3,mem_patch04
+	call context_traverse_linkkey
+	fetch 1,mem_state
+	set1 state_linkkey,pdata
+	store 1,mem_state
+	jam 1,mem_link_key_exists
+	fetch 1,mem_conn_sm
+	bne CONN_SM_PAIRING,linkkey_set_continue
+linkkey_set_continue:
+	rtn
+
+generate_linkkey_continue:
+	jam PAIRING_AUTH,mem_pairing_auth
+clear_linkstate:
+	fetch 1,mem_state
+	set0 state_linkkey,pdata
+	store 1,mem_state
+	rtn
+	
+
+	/* rtn user if switch */
+role_switch_check:
+	bpatch patch04_4,mem_patch04
+	disable user
+	fetch 2,mem_tsniff
+	arg 0xffff,temp
+	isub temp,null
+	nrtn zero
+	fetch 4,mem_sniff_anchor
+	branch role_switch_clkn,clknt
+	isub clke_bt,pdata
+	branch role_switch_clke
+role_switch_clkn:
+	isub clkn_bt,pdata
+role_switch_clke:
+	sub pdata,4,null
+	nrtn positive
+	force 0,pdata
+	store 2,mem_tsniff
+	branch enable_user
+
+
+	/* pdata: switch instant, set tsniff=0 for special sniff */	
+role_switch_prepare:
+	copy pdata,temp
+	bpatch patch04_5,mem_patch04
+	storet 4,mem_sniff_anchor
+role_switch_prepare0:
+	jam SWITCH_FLAG_ACCEPT,mem_switch_flag
+	setarg 0xffff
+	store 2,mem_tsniff
+	jam 1,mem_sniff_attempt
+	rtn
+
+
+role_switch_master:
+	bpatch patch04_6,mem_patch04
+	call role_switch_check
+	nrtn user
+	disable user
+	jam param_newconnto,mem_newconnto_counter
+	set0 mark_fhs_already_good,mark
+roles_waitfhs_loop:
+	call rf_setup_time_master_slot
+	call master_recv_packet
+	bmark1 mark_fhs_already_good,roles_replyto_fhs
+	call new_conn_timeout
+	nbranch roles_waitfhs_loop,blank
+role_switch_fail_master:
+	bpatch patch04_7,mem_patch04
+	disable user
+	deposit clkn_bt
+	store 4,mem_next_btclk
+	enable clknt
+	enable master
+	jam BT_EVT_SWITCH_FAIL_MASTER,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+roles_replyto_fhs:
+	bpatch patch05_0,mem_patch05
+	call rf_setup_time_slave_slot
+	arg type_id,type
+	call master_send_packet
+	disable clknt
+	disable master
+	call apply_switch_clke
+	call prepare_newconn
+roles_newconns_loop:
+	bpatch patch05_1,mem_patch05
+	call slave_newconn_once
+	branch roles_newconns_responded,match
+	call new_conn_timeout
+	nbranch roles_newconns_loop,blank
+	branch role_switch_fail_master
+roles_newconns_responded:
+	fetch 1,mem_mode
+	set0 mode_master,pdata
+	store 1,mem_mode
+	call supervision_flush
+	call calc_clke_offset
+	enable user
+	jam BT_EVT_SWITCH_SUCCESS_MASTER,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+
+
+context_load:
+	bpatch patch05_2,mem_patch05
+	set1 mark_context,mark
+	deposit rega
+	store 2,mem_context_ptr
+	force context_size,loopcnt
+	arg mem_le_state,contw
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	copy rega,contr
+	bbit1 mode_le,memcpy
+	arg mem_state,contw
+	call memcpy
+	disable attempt
+	fetch 1,mem_amaddr
+	iforce am_addr
+	jam 1,mem_current_sniff_attempt
+	branch context_load_master,master
+	jam 1,mem_current_sniff_attempt
+context_load_master:
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	fetch 1,mem_sniff_attempt
+	store 1,mem_current_sniff_attempt
+	fetch 1,mem_sniff_timeout
+	store 1,mem_current_sniff_timeout
+	rtn
+	
+context_save:
+	bpatch patch05_3,mem_patch05
+	fetch 2,mem_context_ptr
+	iforce contw
+	force context_size,loopcnt
+	arg mem_le_state,contr
+	branch memcpy,le
+	arg mem_state,contr
+	branch memcpy
+
+	
+
+context_get_next:
+	arg context_num,loopcnt
+	fetcht 1,mem_current_context
+context_get_next_loop:
+	increase 1,temp
+	compare context_num,temp,0xff
+	nbranch context_get_next_cont,true
+	arg 0,temp
+context_get_next_cont:
+	storet 1,mem_current_context
+	mul32 temp,context_size,pdata
+	arg mem_context,rega
+	iadd rega,rega
+	ifetch 1,rega
+	bbit1 state_insniff,context_get_next_sniff
+	rtnbit1 state_inconn
+	rtnbit1 state_inpage
+context_get_next_sniff:
+	loop context_get_next_loop
+	rtn
+	
+context_new:
+	bpatch patch05_4,mem_patch05
+	arg context_search_empty,regc
+	call context_search
+	nrtn zero					// all occupied
+	deposit rega
+	store 2,mem_context_ptr
+	force 0,null
+	rtn
+	
+	//return zero if anyone's wack is 1.
+	//return nzero if all wack is 0
+context_check_all_wack:
+	call check_esco_amaddr
+	branch context_check_esco_wack,true
+	fetch 2,mem_context_ptr
+	add pdata,coffset_arq,contw
+	fetch 1,mem_arq
+	istore 1,contw
+	arg context_check_a_wack,regc
+	branch context_search
+
+context_check_esco_wack:
+	fetch 1,mem_arq
+	isolate1 wack,pdata
+	branch context_esco_wack,true
+	force 1,null
+	rtn
+context_esco_wack:
+	force 0,null
+	rtn
+	
+	//rtn nzero if idle(no conn)
+context_check_idle:
+	arg context_check_inconn,regc
+	branch context_search
+	
+context_traverse_linkkey:
+	fetcht 2,mem_context_ptr
+	arg context_traverse_clearkey,regc
+	branch context_search
+	
+	
+	/* return zero if conn handle is found */
+context_search_conn_handle:
+	fetcht 1,mem_hci_conn_handle
+context_search_conn_handle2:
+	arg context_search_handle,regc
+	branch context_search
+	/* return zero if plap is found */
+context_search_plap:
+	bpatch patch05_5,mem_patch05
+	fetcht 6,mem_hci_plap
+context_search_plap2:
+	arg context_search_lap,regc
+	branch context_search
+	/* return zero if sniff anchor is meet and rega pointers to context */
+context_search_insniff:
+	arg context_search_sniff,regc
+	branch context_search
+	/* return zero if sniff window is in content with current transaction */
+context_search_sniff_window:
+	arg context_search_window,regc
+context_search:
+	bpatch patch05_6,mem_patch05
+	arg mem_context,rega
+	arg context_num,loopcnt
+context_search_loop:
+	ifetch 1,rega
+	copy regc,pc
+context_search_next:
+	increase context_size,rega
+	loop context_search_loop
+	force 1,null
+	rtn
+
+context_search_empty:
+	bbit1 state_inconn,context_search_next
+	bbit1 state_inpage,context_search_next
+	force 0,null
+	rtn
+	
+context_search_lap:
+	bbit1 state_inpage,context_search_lap_cont
+	bbit0 state_inconn,context_search_next
+context_search_lap_cont:
+	add rega,coffset_plap,contr
+	ifetch 6,contr
+	isub temp,null
+	rtn zero
+	branch context_search_next
+
+context_search_handle:
+	bbit0 state_inconn,context_search_next
+	add rega,coffset_conn_handle,contr
+	ifetch 1,contr
+	isub temp,null
+	rtn zero
+	branch context_search_next
+
+context_search_sniff:
+	bbit0 state_insniff,context_search_next
+context_search_sniff_loop:
+	call context_get_anchor
+	call sign_pdata_temp
+	isub temp,pdata
+	increase 1,pdata
+	branch context_search_sniff_miss,positive
+	copy contr,regb
+	store 9,mem_temp
+	fetch 1,mem_le_sc_calc
+	nbranch context_search_sniff_sc,blank
+	fetch 9,mem_temp
+	copy regb,contr
+	increase 5,pdata  
+	branch context_search_meet1
+context_search_sniff_sc:
+	fetch 9,mem_temp
+	copy regb,contr	
+	increase 20,pdata  
+context_search_meet1:
+	nbranch context_search_next,positive
+context_search_meet:
+	copy temp,bt_clk
+	call context_next_anchor
+	force 0,null
+	rtn
+	
+	
+context_search_sniff_miss:
+	iforce regb
+	add rega,coffset_tsniff,contr
+	ifetch 2,contr
+	branch context_search_meet,blank
+	call context_next_anchor
+	branch context_search_sniff_loop
+
+sign_pdata_temp:
+	rshift16 pdata,timeup    
+	rshift8 timeup,timeup    
+	branch sign_pdata_temp_p0,zero    
+	compare 0xf,timeup,0xf    
+	nrtn true    
+	rshift16 temp,timeup    
+	rshift8 timeup,timeup    
+	nrtn zero    
+	set1 28,temp    
+	rtn
+sign_pdata_temp_p0:    
+	rshift16 temp,timeup    
+	rshift8 timeup,timeup    
+	compare 0xf,timeup,0xf    
+	nrtn true    
+	set1 28,pdata    
+	rtn
+
+context_check_inconn:
+	bbit0 state_inconn,context_search_next
+	force 0,null 				// found
+	rtn
+	
+context_check_a_wack:
+	bbit0 state_inconn,context_search_next
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	bbit1 mode_le,context_search_next
+	add rega,coffset_arq,contr
+	ifetch 1,contr
+	bbit0 wack,context_search_next
+	force 0,null 				// found
+	rtn
+
+context_get_anchor:
+	add rega,coffset_mode,contr
+	ifetcht 1,contr
+	deposit clkn_bt
+	isolate1 mode_master,temp
+	add rega,coffset_sniff_anchor,contr
+	ifetcht 4,contr
+	rtn true
+	add rega,coffset_clk_offset,contr
+	ifetch 6,contr
+	call calc_clke2
+	deposit clke_bt
+	rtn
+
+context_next_anchor:
+	add rega,coffset_tsniff,contr
+	add rega,coffset_sniff_anchor,contw
+	ifetch 2,contr
+	iadd temp,timeup			/* wrap to 28 bits */
+	deposit timeup
+	istore 4,contw
+	branch le_context_nexthop
+	
+
+context_search_window:
+	bbit0 state_insniff,context_search_next
+	call context_get_anchor
+	iadd stop_watch,pdata
+	iadd stop_watch,pdata
+	iadd queue,pdata
+	isub temp,null
+	nbranch context_search_next,positive
+	force 0,null
+	rtn
+
+context_traverse_clearkey:
+	bbit0 state_inconn,context_search_next
+	deposit temp
+	isub rega,null
+	branch context_search_next,null
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	bbit1 mode_le,context_search_next
+	ifetch 1,rega
+	set0 state_linkkey,pdata
+	istore 1,rega
+	branch context_search_next
+
+	
+master_conn_send_packet:
+	bpatch patch05_7,mem_patch05
+	call rf_setup_time_master_slot
+master_send_packet:
+	add clkn_bt,1,bt_clk          /* master start to use native clock */
+	call fetch_self_bt_adr
+	force 0x03,freq_mode          /* we are in connection!! */
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_native
+	call send_access_word
+	branch transmit_packet
+
+master_conn_recv_packet:
+	bpatch patch06_0,mem_patch06
+	call rf_setup_time_slave_slot
+master_recv_packet:
+	add clkn_bt,1,bt_clk          /* master start to use native clock */
+	call fetch_self_bt_adr
+	force 0x03,freq_mode          /* we are in connection!! */
+	call rx_radio_freq
+	call init_rx_packet_flags
+	call prep_crypt
+	call start_rx_native	/* start listening at start_rx time */
+	call start_receiver
+master_rx_conn_finish_packet:
+	call wait_access_clkn_rt	/* master use native clock */
+	nrtn sync
+	call save_rssi
+	branch receive_packet
+	
+	
+
+master_newconn_once:
+	bpatch patch06_1,mem_patch06
+	fetch 1,mem_fhs_am_addr
+	iforce am_addr			//review
+	force type_poll,type
+	call master_conn_send_packet
+	branch master_conn_recv_packet
+
+
+
+
+
+
+/******************************************/
+/************* Inquiry Scan ***************/
+/******************************************/
+
+inquiry_scan_dispatch:
+	fetch 1,mem_scan_mode
+	rtnbit0 inq_scan_mode
+	force iscan_interval_timer,queue
+	call timer_check
+	nrtn blank
+	fetcht 2,mem_iscan_window
+	force 4,queue
+	call sniff_check_window
+	rtn user
+	call inquiry_scan_start
+	force iscan_interval_timer,queue
+	fetch 2,mem_iscan_interval
+	nbranch timer_init,sync
+	random pdata				/* inquiry scan backoff */
+	iand mask3ff,pdata
+	branch timer_init
+	
+
+inquiry_scan_start:
+	bpatch patch06_2,mem_patch06
+	jam 0,mem_fhs_am_addr
+	disable clknt
+	disable attempt
+	call afh_clear
+	and clkn_bt,0x1fc,bt_clk      /* freeze the clock, set bit[1] 0, this is version 1.1 */
+	force 0x01,freq_mode     /* slave in inquiry scan, kind of same as inquriy_response, this is version 1.1 */
+	call fetch_giac
+	call rx_radio_freq
+	setflip mark_inquiry_state,mark
+	fetch 1,mem_inquiryscan_waitcnt
+	increase 1,pdata
+	store 1,mem_inquiryscan_waitcnt
+	call fetch_diac
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_forever	/* until there is timeout, or matched (true) */
+	nrtn sync
+	bpatch patch06_3,mem_patch06
+	force 0,stop_watch
+	call shutdown_radio	/* must have heard */
+	fetch 1,mem_inquiryscan_rcvcnt
+	increase 1,pdata
+	store 1,mem_inquiryscan_rcvcnt
+	call fetch_giac
+	call rf_setup_time_slave_slot
+	or_into 0x002,bt_clk               /* put clk(1) to 1 */
+	force 0x01,freq_mode               /* slave in inquriy and page, response only */
+	call tx_radio_freq
+	call fetch_diac
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_external
+	deposit clkn_bt
+	store 4,mem_clkn_bt
+	call send_access_word
+	force type_fhs,type
+	force 0,am_addr                       /* put 0 into am_addr field for fhs */
+	call scan_mode_whiten
+	call transmit_packet_whitened
+	call send_eir
+	and_into 0x1fd,bt_clk                 /* put clk(1) back to 0 */
+	increase 1,N_tx_slot
+	rtn
+
+send_eir:
+	bpatch patch06_4,mem_patch06
+	fetch 1,mem_eir_enable
+	rtn blank
+	arg mem_eir,contw
+	fetch 1,mem_local_name_length
+	copy pdata,loopcnt
+	increase 1,pdata
+	istore 1,contw	
+	copy contw,temp
+	increase 1,pdata
+	store 2,mem_tx_len	
+	copy temp,contw
+	setarg 0x09  //type:name
+	istore 1,contw		
+	arg  mem_local_name,contr
+	call memcpy       //name
+
+	arg mem_all_uuid_128bits,regc
+	arg 4,loopcnt
+	call get_all_uuid
+	arg mem_all_uuid_16bits,regc
+	arg 1,loopcnt
+	call get_all_uuid
+
+	force type_dm3,type		/* DM3 */
+	jam 2,mem_tx_lch
+	setarg mem_eir
+	store 2,mem_txptr
+	call rf_setup_time_slave_slot
+	call tx_radio_freq
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_external
+	call send_access_word
+	call scan_mode_whiten
+	call transmit_packet_whitened
+	rtn
+
+
+get_all_uuid:
+	copy contw,temp
+	copy regc,contr
+	ifetch 1,contr
+	rtn blank
+lshift_loop:
+	lshift pdata,pdata
+	loop lshift_loop
+	copy pdata,rega
+	increase 2,pdata
+	copy pdata,queue
+	fetch 2,mem_tx_len
+	iadd queue,pdata
+	store 2,mem_tx_len
+	copy temp,contw
+	copy rega,pdata
+	increase 1,pdata
+	istore 1,contw
+	copy regc,contr
+	ifetch 1,contr
+	ifetch 1,contr	//fetch type
+	istore 1,contw
+	copy rega,loopcnt
+	branch memcpy  //copy uuid
+	
+/******************************************/
+/******** Slave dispatch ***********/
+/******************************************/
+
+page_scan_dispatch:	
+	fetch 1,mem_scan_mode
+	rtnbit0 page_scan_mode
+	force pscan_interval_timer,queue
+	call timer_check
+	nrtn blank
+	fetcht 2,mem_pscan_window
+	force 40,queue
+	call sniff_check_window
+	rtn user
+	force 0,am_addr
+	jam param_pagerespto,mem_fhs_wait_counter
+	set0 mark_fhs_already_good,mark
+	call page_scan_start
+	force pscan_interval_timer,queue
+	fetch 2,mem_pscan_interval
+	branch timer_init
+	
+
+page_scan_start:
+	bpatch patch06_5,mem_patch06
+	disable clknt
+	call afh_clear
+	fetch 1,mem_pagescan_waitcnt
+	increase 1,pdata
+	store 1,mem_pagescan_waitcnt
+	force 0,N_tx_slot
+	call fetch_self_bt_adr
+	add clkn_bt,1,bt_clk      /* freeze the clock on native clock until scan window is up */
+	force 0x02, freq_mode     /* slave in inquiry and page, not response */
+	bpatch patch06_6,mem_patch06
+	call rx_radio_freq
+	call start_receiver	/* wait for that id packet from master */
+	call wait_access_forever
+	nrtn sync                          /* pscan window timeout occured, back to dispatch */
+	call shutdown_radio	/* got the id packet */
+	fetch 1,mem_pagescan_rcvcnt
+	increase 1,pdata
+	store 1,mem_pagescan_rcvcnt
+	force 0,stop_watch
+	call rf_setup_time_slave_slot
+	or_into 0x002,bt_clk               /* put clk(1) to 1 */
+	force 0x01,freq_mode               /* slave in inquriy and page, response only */
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_external
+	call send_access_word
+	call end_of_packet
+	force 0,am_addr
+	arg param_rf_setup, timeup
+	until clke_rt,meet
+	or_into 0x03,clke_bt
+	and_into 0x1fd,bt_clk
+page_scan_wait_fhs_restart:
+	bpatch patch06_7,mem_patch06
+	increase 1,N_tx_slot
+	call rx_radio_freq
+	call start_receiver
+	call wait_access_mhalfbnd
+	nbranch page_scan_wait_fhs_again,sync	/* go back if didn't find access code */
+	call scan_mode_whiten
+	call receive_packet_whitened
+	bmark1 mark_fhs_already_good,page_scan_reply_to_fhs
+page_scan_wait_fhs_again:
+	bpatch patch07_0,mem_patch07
+	fetch 1,mem_fhs_wait_counter
+	rtn blank
+	increase -1,pdata
+	store 1,mem_fhs_wait_counter
+	call rf_setup_time_master_slot	/* set up expiration time */
+	branch page_scan_wait_fhs_restart
+
+
+page_scan_reply_to_fhs:
+	bpatch patch07_1,mem_patch07
+	set0 1,clke_bt
+	set1 0,clke_bt
+	fetch 1,mem_pagescan_rcvfhscnt
+	increase 1,pdata
+	store 1,mem_pagescan_rcvfhscnt
+	call rf_setup_time_slave_slot
+	or_into 0x02,bt_clk
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_external
+	call send_access_word
+	call end_of_packet
+slave_apply_clke_bt:
+	compare 0x03,clke_bt,0x03
+	branch slave_apply_clke_bt_now,true
+	until null,mhalfbnd
+	branch slave_apply_clke_bt
+slave_apply_clke_bt_now:
+	fetch 4,mem_clke_bt
+	or_into 0x03,pdata
+	icopy clke_bt
+
+start_slave_connection:
+	bpatch patch07_2,mem_patch07
+	fetch 6,extm_lap
+	store 6,mem_plap
+	call prepare_newconn
+slave_newconn_loop:
+	call slave_newconn_once
+	branch sconn_successful,match     /* we were talked to */
+	call new_conn_timeout
+	nbranch slave_newconn_loop,blank
+	rtn
+
+	
+sconn_successful:
+	bpatch patch07_3,mem_patch07
+	call newconn_init
+	call context_new
+	nrtn zero
+	jam 0,mem_mode
+	call calc_clke_offset
+	branch context_save
+
+
+
+
+slave_dispatch:
+	bpatch patch07_4,mem_patch07
+	call calc_clke
+	call role_switch_slave
+	rtn user
+slave_loop:
+	bpatch patch07_5,mem_patch07
+	call check_bt_disabled
+	call scheduler_process
+	call slave_conn_recv_packet	/* go listen for a packet */
+	nbranch slave_notmatch,match
+	call supervision_flush
+	call scheduler_tx_l2cap_pkt
+	call prepare_tx
+	call slave_conn_send_packet
+	call parse_l2cap
+	call parse_lmp
+	fetch 1,mem_slave_rcvcnt
+	increase 1,pdata
+	store 1,mem_slave_rcvcnt
+	call calc_clke_offset
+slave_notmatch:
+	bpatch patch07_6,mem_patch07
+	call lpm_set_mult
+	call supervision_update
+	branch slave_disconnect,positive
+	call check_disconnect_timeout
+	nbranch slave_disconnect,user
+	call check_attempt
+	nbranch slave_loop,blank
+	rtn
+
+slave_disconnect:
+	bpatch patch07_7,mem_patch07
+	jam 0,mem_tester_emulate
+	jam 0,mem_debug_config
+	call quit_connection
+	set0 mark_testmode,mark
+	call test_enable_white
+	fetch 1,mem_state
+	rtn
+
+
+role_switch_slave:
+	bpatch patch08_0,mem_patch08
+	call role_switch_check
+	nrtn user
+	copy am_addr,temp
+	call get_free_amaddr
+	store 1,mem_fhs_am_addr
+	copy temp,am_addr
+	jam param_newconnto,mem_newconnto_counter
+roles_sendfhs_loop:
+	bpatch patch08_1,mem_patch08
+	call rf_setup_time_master_slot
+	force type_fhs,type
+	call slave_send_access
+	deposit clkn_bt
+	store 4,mem_clkn_bt
+	call transmit_packet
+	call rf_setup_time_slave_slot
+	enable user3
+	call slave_receive_access
+	branch roles_got_fhs_reply,sync
+	call shutdown_radio
+	call new_conn_timeout
+	nbranch roles_sendfhs_loop,blank
+	rtnmark0 mark_accept_switch
+	jam LMP_SLOT_OFFSET,mem_lmo_opcode2
+	set1 mark_switch_initiated,mark
+	rtn
+roles_got_fhs_reply:
+	enable clknt
+	call prepare_newconn
+	call afh_clear
+roles_newconn_loop:
+	bpatch patch08_2,mem_patch08
+	call master_newconn_once
+	branch roles_newconn_responded,sync
+	call new_conn_timeout
+	nbranch roles_newconn_loop,blank
+	disable clknt
+	deposit clke_bt
+	store 4,mem_next_btclk
+	rtn
+roles_newconn_responded:
+	enable master
+	bmark0 mark_accept_switch,roles_newconn_nolmp
+	set0 mark_accept_switch,mark
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_HOST_CONNECTION_REQ,mem_lmi_opcode2
+	call tid_set_reply
+roles_newconn_nolmp:
+	deposit am_addr
+	store 1,mem_amaddr
+	force 0,pdata
+	store 6,mem_clk_offset
+	fetch 1,mem_mode
+	set1 mode_master,pdata
+	store 1,mem_mode
+	call supervision_flush
+	disable master
+	enable user
+	rtn
+
+	
+
+init_rx_packet_flags:
+	bpatch patch08_3,mem_patch08
+	disable match
+	set0 mark_loopback,mark
+	set0 mark_am_addr_broadcast,mark          /* initialize slave flags */
+	set0 mark_longpacket,mark
+	set0 mark_old_packet,mark
+	fetch 1,mem_arq    /* mem_arq + am_addr */
+	set0 arqnx,pdata
+	set1 flowx,pdata
+	store 1,mem_arq
+	rtn
+
+prepare_newconn:
+	bpatch patch08_4,mem_patch08
+	jam param_newconnto,mem_newconnto_counter
+	jam param_newconn_arq,mem_arq
+	fetch 2,mem_rx_window_init
+	store 2,mem_rx_window
+	deposit clkn_bt
+	store 4,mem_next_btclk
+	rtn clknt
+	deposit clke_bt
+	store 4,mem_next_btclk
+	rtn
+
+newconn_init:
+	bpatch patch08_5,mem_patch08
+	call init_lmp_reinit
+	call new_conn_handle
+	store 1,mem_conn_handle
+	setarg 0
+	store 2,mem_l2cap_rxbuff1_len
+	setarg param_supervision_to
+	store 2,mem_supervision_to
+	fetch 1,mem_state
+	set1 state_inconn,pdata
+	store 1,mem_state
+	jam 0,mem_op
+	jam 0,mem_state_map
+	jam 0,mem_lpm_current_mult
+	branch supervision_flush
+	
+
+clear_linkkey:
+	bpatch patch08_6,mem_patch08
+	force 0,pdata
+	store 8,mem_link_key
+	istore 8,contw
+	call clear_linkstate
+	branch context_traverse_linkkey
+	
+new_conn_timeout:
+	fetch 1,mem_newconnto_counter
+	increase -1,pdata
+	store 1,mem_newconnto_counter
+	rtn
+
+new_conn_handle:
+	fetch 1,mem_handle_num
+	increase 1,pdata
+	store 1,mem_handle_num
+	rtn
+
+
+quit_connection:
+	bpatch patch08_7,mem_patch08
+	fetch 1,mem_hci_cmd
+	beq hci_cmd_remote_name_req,quit_connection_name
+	fetch 1,mem_lmp_to_send
+	bne LMP_NAME_REQ,quit_connection_cont
+quit_connection_name:
+	call cmd_check_plap
+	nbranch quit_connection_cont,zero
+	call master_name_error
+	jam 0,mem_hci_cmd
+quit_connection_cont:
+	bpatch patch09_0,mem_patch09
+	call app_disconn_reason_collect_bt
+	call sniff_exit
+	jam BT_EVT_BB_DISCONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	call init_lmp_work
+	call l2cap_init_work
+	call sp_initialize
+	fetch 1,mem_state
+	set0 state_inconn
+	store 1,mem_state
+	jam 0,memui_reconnect_mode
+
+	fetch 1,mem_state_map
+	compare 0x0,pdata,0xc0
+	branch quit_connection_not_clear_mark,true
+	set0 mark_rxbuf_inuse,mark
+quit_connection_not_clear_mark:
+	fetch 1,mem_arq
+	bbit0 wack,quit_connection_not_clear_tx
+quit_connection_not_clear_tx:
+	fetch 1,mem_op
+	rtnbit0 op_txl2cap
+	set0 mark_tx_l2cap,mark
+	rtn
+
+slave_newconn_once:
+	bpatch patch09_1,mem_patch09
+	fetch 1,extm_newconn_am_addr
+	rtn blank     
+	icopy am_addr
+	call slave_conn_recv_packet
+	nrtn match
+	force type_null,type
+	call slave_conn_send_packet
+	deposit am_addr
+	store 1,mem_amaddr                 /* now the new am_addr is official */
+	force 0,pdata
+	store 1,extm_newconn_am_addr
+	rtn
+
+
+/******************************************/
+/********  Time consuming task  ***********/
+/******************************************/
+prepare_tx:
+	bpatch patch09_2,mem_patch09
+	fetch 1,mem_state
+	bbit0 state_insco,prepare_tx_not_sco
+	force type_hv3,type
+	bmark0 mark_esco,prepare_tx_not_esco
+	call check_esco_amaddr
+	nbranch prepare_tx_not_sco,true
+	branch prepare_tx_not_sco,attempt	
+	call set_wait_ack					/* send esco only at the first attempt */
+	setarg 2		/* esco only has 1 retry */
+	store 2,mem_retransmission_cnt
+	rtn
+prepare_tx_not_esco:
+	nrtn attempt						/* send sco only at the first attempt */
+prepare_tx_not_sco:
+	bpatch patch09_3,mem_patch09
+	call context_check_all_wack			 //abandon mark_retransmit, use context_check_all_wack instead.
+	nbranch prepare_tx_no_retransmit,zero
+	fetch 1,mem_arq
+	bbit0 wack,prepare_tx_pollnull		/* other wack, tx buffer in use, but not me */
+prepare_tx_retransmit:
+	bmark1 mark_loopback,prepare_tx_loopback
+	fetch 1,mem_debug_config
+	bbit1 debug_tx_pattern,prepare_tx_txpat
+	fetch 2,mem_retransmission_cnt
+	increase -1,pdata
+	store 2,mem_retransmission_cnt
+	branch prepare_tx_nomore_retransmit,blank
+	fetch 1,mem_last_type
+	iforce type
+	rtn
+
+prepare_tx_nomore_retransmit:
+	bpatch patch09_4,mem_patch09
+	call clear_got_tx
+prepare_tx_no_retransmit:
+	call check_esco_amaddr
+	branch prepare_tx_pollnull,true
+	call send_lmp
+	branch prepare_tx_sendlmp,user
+	fetch 1,mem_op
+	bbit1 op_txl2cap,prepare_tx_sendl2cap
+	bmark1 mark_loopback,prepare_tx_loopback
+	fetch 1,mem_debug_config
+	bbit1 debug_tx_pattern,prepare_tx_txpat
+prepare_tx_pollnull:
+	force type_poll,type				/* POLL for master */
+	rtn master
+	force type_null,type				/* default is NULL */
+	rtn
+prepare_tx_loopback:
+	bpatch patch09_5,mem_patch09
+	fetch 1,mem_rx_type
+	iforce type
+	rtnne 1
+	force type_null,type
+	rtn
+prepare_tx_txpat:
+	fetch 1,test_mode_packet_type
+	and pdata,0xf,type
+	set1 mark_loopback,mark
+	rtn
+prepare_tx_sendlmp:
+	force type_lmp,type
+	branch set_wait_ack
+prepare_tx_sendl2cap:
+	call tx_l2cap_type
+
+set_wait_ack:
+	bpatch patch09_6,mem_patch09
+	fetcht 1,mem_arq
+	set1 wack,temp
+	storet 1,mem_arq
+	deposit type
+	store 1,mem_last_type
+	setarg 0xffff
+	store 2,mem_retransmission_cnt
+	rtn
+
+tx_l2cap_type:
+	bpatch patch09_7,mem_patch09
+	fetch 1,mem_state_map
+	isolate1 smap_edr,pdata
+	fetch 2,mem_tx_len
+	branch tx_l2cap_type_edr,true
+	force type_dm1,type		/* DM1 */
+	sub pdata,17,null			
+	rtn positive
+	force type_dh1,type		/* DH1 */
+	sub pdata,27,null				
+	rtn positive
+	force type_dm3,type		/* DM3 */
+	sub pdata,121,null
+	rtn positive
+	force type_dh3,type		/* DH3 */
+	sub pdata,183,null
+	rtn positive	
+	force type_dm5,type		/* DM5 */
+	sub pdata,224,null
+	rtn positive
+	force type_dh5,type		/* DH5 */
+	rtn
+tx_l2cap_type_edr:
+	force type_dm1,type
+	sub pdata,17,null
+	rtn positive
+	force type_dh1,type		/*2-DH1*/
+	sub pdata,54,null
+	rtn positive
+	force type_dm3,type		/*2-DH3*/
+	arg 367,temp
+	isub temp,null
+	nrtn positive
+	force type_dm5,type		/*2-DH5*/
+	arg 679,temp
+	isub temp,null
+	nrtn positive
+	force type_dh5,type		/*3-DH5*/
+	rtn
+
+
+/******************************************/
+/***********  Receive Packet  *************/
+/******************************************/
+
+
+
+slave_receive_master_slot:
+	fetch 1,mem_state
+	bbit0 state_insniff,slave_receive_notsniff
+	fetch 2,mem_tsniff
+	branch slave_receive_notsniff,blank		/* role switch */
+	nbranch slave_receive_sniff,attempt
+slave_receive_notsniff:
+	call rf_setup_time_master_slot
+slave_receive_access:
+	add clke_bt,1,bt_clk
+slave_receive_sniff:
+	enable swfine
+	fetch 2,mem_rx_window
+	rshift pdata,pdata
+	arg param_pll_setup,temp
+	iadd temp,pdata
+	call ahead_window
+	call fetch_extm_bt_adr
+	force 0x03,freq_mode          /* connection hop */
+	call rx_radio_freq
+	call init_rx_packet_flags
+	call prep_crypt
+	bpatch patch0a_0,mem_patch0a
+	fetch 2,mem_rx_window
+	rshift pdata,pdata
+	call ahead_window
+	call start_receiver
+	enable decode_fec0
+	fetch 2,mem_rx_window
+	arg param_clke_cal,temp
+	iadd temp,stop_watch
+	correlate null,timeout
+	copy clke,temp
+	storet 6,mem_sync_clke
+	disable decode_fec0
+	nrtn sync
+	arg param_clke_cal,clke_rt
+	copy bt_clk,clke_bt
+	branch lpm_adjust_clk,wake
+	rtn
+	
+
+slave_conn_recv_packet:
+	bpatch patch0a_1,mem_patch0a
+	call slave_receive_master_slot
+	nbranch shutdown_radio,sync
+	call save_rssi
+	bmark0 mark_testmode,receive_packet
+	fetch 2,mem_tst_pktcnt_sync
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_sync
+receive_packet:
+	rshift bt_clk,temp
+	or temp,0x40,white_init
+receive_packet_whitened:
+	bpatch patch0a_2,mem_patch0a
+	enable enable_white
+	enable enable_hec
+	enable decode_fec1
+	parse demod,bucket,3  /* get am_addr */
+	rshift8 pwindow,pdata
+	store 1,mem_temp_am_addr
+	parse demod,bucket,4  /* get type */
+	inject bucket,7       /* align up to pwindow */
+	copy pwindow,pdata
+	store 1,mem_rx_type
+	parse demod,bucket,3  /* get arq */
+	rshift8 pwindow,pdata
+	store 1,mem_temp_arq
+	fetch 1,mem_rx_type
+	sub pdata,3,null
+	branch receive_packet_noedr,positive
+	beq 7,receive_packet_noedr		/* esco packet */
+	fetch 1,mem_state_map
+	isolate1 smap_edr,pdata
+	setflag true,PSK,radio_ctrl
+receive_packet_noedr:
+	bpatch patch0a_3,mem_patch0a
+	parse demod,bucket,8   /* cycle thru hec */
+	disable decode_fec1
+	disable enable_hec   /* at this moment, 1 seqn + 8 hec is in shift */
+	branch error_header,crc_failed  /* if hec error, nothing is valid */
+	bmark0 mark_testmode,receive_packet_amchk
+	fetch 2,mem_tst_pktcnt_hec
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_hec
+receive_packet_amchk:	
+	bpatch patch0a_4,mem_patch0a
+	fetch 1,mem_temp_am_addr
+	compare 0,pdata,0x07           /* check for broadcast */
+	setflag true,mark_am_addr_broadcast,mark   /* received a broadcast message, can fire ar_addr if during unpark_req */
+	branch am_addr_ok,true
+	icompare 0x07,am_addr
+	branch am_addr_match,true
+	bmark0 mark_esco,end_of_packet
+	fetcht 1,mem_saved_amaddr
+	icompare 0x7,temp
+	nbranch end_of_packet,true
+	fetch 1,mem_arq    /* mem_arq + am_addr */
+	set0 arqnx,pdata
+	set1 flowx,pdata
+	store 1,mem_arq
+am_addr_match:
+	enable match
+am_addr_ok:
+	bpatch patch0a_5,mem_patch0a
+	fetch 1,mem_rx_type
+	icopy type
+	bmark1 mark_am_addr_broadcast,arqn_bypass        /* arqn doesn't make sense */
+	fetcht 1,mem_temp_arq
+	fetch 1,mem_arq
+	set0 flow,pdata
+	isolate1 flow,temp
+	setflag true,flow,pdata
+	isolate1 arqn,temp
+	setflag true,arqn,pdata
+	store 1,mem_arq
+	isolate0 arqn,temp
+	branch arqn_bypass,true
+	call clear_got_tx
+arqn_bypass:
+	bpatch patch0a_6,mem_patch0a
+	arg 0,temp
+	call reserve_slot
+	and type,0xf,pdata
+	beq type_poll,process_poll
+	beq type_null,end_of_packet	/* null */
+	beq type_fhs,process_fhs
+	fetcht 1,mem_temp_arq
+	fetch 1,mem_arq
+	icompare 0x04,temp    /* bit 2 is seqn */
+	nbranch rx_type_dispatch,true   /* different then it's new */
+	bmark0 mark_am_addr_broadcast,failed_seqn         /* seqn failed, and not broadcast */
+	bbit0 bcast1,rx_type_dispatch           /* first broadcast never fail seqn */
+failed_seqn:
+	set1 mark_old_packet,mark
+rx_type_dispatch:
+	bpatch patch0a_7,mem_patch0a
+	deposit type
+	beq type_dm1, process_dm1
+	beq type_dh1, process_dh1
+	beq type_hv3, process_hev
+	beq type_3dh1, process_3dh1
+	arg 4,temp
+	call reserve_slot
+	beq type_dm3, process_dm3
+	beq type_dh3, process_dh3
+	arg 8,temp
+	call reserve_slot
+	beq type_dm5, process_dm5
+	beq type_dh5, process_dh5
+	rtn
+
+
+process_hev:
+	bpatch patch0b_0,mem_patch0b
+	enable decode_fec0
+	enable enable_crc
+	enable encrypt
+	arg mem_sco_ibuf,contw
+	force 30,loopcnt
+process_hev_loop:	
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop process_hev_loop
+	bmark0 mark_esco,end_of_packet
+	parse demod,bucket,16  /* cycle through the crc */
+	nsetflag crc_failed,mark_esco_rxok,mark
+	branch error_payload,crc_failed
+	branch ack_payload
+
+
+process_poll:
+	branch end_of_packet
+
+process_dm3:
+process_dm5:
+	set1 mark_longpacket,mark
+process_dm1:
+	enable decode_fec2
+	branch process_dmh
+	
+process_dh3:
+process_dh5:
+	set1 mark_longpacket,mark
+process_3dh1:
+	set1 PSK3M,radio_ctrl
+process_dh1:
+	enable decode_fec0
+process_dmh:
+	bpatch patch0b_1,mem_patch0b
+	bmark1 mark_rxbuf_inuse,end_of_packet			/* buffer in use, nack */
+	isolate0 PSK,radio_ctrl
+	branch process_dmh_noedr,true
+	disable enable_white
+	enable decode_fec0
+	disable decode_fec2
+	add clkn_bt,2,timeup
+	correlate clkn_bt,meet
+	nbranch error_payload,sync
+	set1 mark_longpacket,mark
+	enable enable_white
+process_dmh_noedr:
+	bpatch patch0b_2,mem_patch0b
+	enable encrypt
+	enable enable_crc
+	parse demod,bucket,3  /* parse in lch+l2cap flow */
+	rshift8 pwindow,pdata
+	store 1,mem_lch_code		/* for loopback */
+	parse demod,bucket,5  /* parse in 5 bit packetlength */
+	bmark1 mark_longpacket,process_dmh_long
+	rshift3 pwindow,loopcnt
+	rshift3 loopcnt,loopcnt
+	branch process_dmh_common
+process_dmh_long:
+	parse demod,bucket,5		/* multi slot packet length of dh3 dh5 dm3 dm5 */
+	rshift pwindow,loopcnt
+	parse demod,bucket,3  /* undefined+bit 9 of length */
+process_dmh_common:	
+	bpatch patch0b_3,mem_patch0b
+	deposit loopcnt
+	store 2,mem_len
+	branch process_dmh_data_end,blank
+	isub mask3ff,null
+	branch error_payload,positive	/* packet too large, discard */
+	bpatch patch0b_4,mem_patch0b
+	set0 mark_fhs_eir,mark
+	fetch 1,mem_lch_code
+	and_into 0x03,pdata
+	arg mem_rxbuf,contw //lmp_data or test packet
+	beq LLID_LMP,process_lmp
+	bmark1 mark_testmode,process_dmh_data
+	//non-HCI mode
+	fetch 1,mem_lch_code
+	and_into 0x03,pdata
+	beq LLID_L2CAP_START,process_dmh_data_l2cap_start_pkt
+	beq LLID_L2CAP_CONT,process_dmh_data_l2cap_continue_pkt
+	branch error_payload
+
+process_lmp:
+	fetch 2,mem_len
+	sub pdata,0x70,null		//lmp buffer size
+	nbranch error_payload,positive
+	bmark1 mark_old_packet,ack_payload
+	branch process_dmh_data
+
+	
+process_dmh_data_l2cap_start_pkt:
+	bpatch patch0b_5,mem_patch0b
+	bmark1 mark_old_packet,ack_payload
+	fetch 2,mem_len
+	arg 0x2e0,temp //l2cap buffer size
+	isub temp,null
+	branch error_payload,positive
+	fetch 1,mem_l2cap_rxbuff_inuse
+	bbit0 L2CAP_INUSE_BUFF1,process_dmh_data_into_buff1
+	bbit0 L2CAP_INUSE_BUFF2,process_dmh_data_into_buff2
+	branch end_of_packet
+process_dmh_data_into_buff1:
+	jam 1,mem_l2cap_rxbuff_new //new data in buff 1
+	fetch 2,mem_l2cap_rxbuff1_len
+	bne 0,end_of_packet			//baseband head error
+	arg mem_l2cap_rxbuff1,contw
+	branch process_dmh_data
+process_dmh_data_into_buff2:
+	jam 2,mem_l2cap_rxbuff_new //new data in buff 2
+	fetch 2,mem_l2cap_rxbuff2_len
+	bne 0,end_of_packet
+	arg mem_l2cap_rxbuff2,contw
+	branch process_dmh_data
+	
+process_dmh_data_l2cap_continue_pkt:
+	bpatch patch0b_6,mem_patch0b
+	bmark1 mark_old_packet,ack_payload
+	fetch 2,mem_len
+	arg 0x2e0,temp //l2cap buffer size
+	isub temp,null
+	branch error_payload,positive
+	fetch 1,mem_l2cap_rxbuff_new
+	beq 1,process_dmh_data_l2cap_continue_pkt1
+	beq 2,process_dmh_data_l2cap_continue_pkt2
+	branch end_of_packet
+process_dmh_data_l2cap_continue_pkt1:
+	arg mem_l2cap_rxbuff1,contw
+	fetch 2,mem_l2cap_rxbuff1_len
+	iadd contw,contw
+	branch process_dmh_data
+process_dmh_data_l2cap_continue_pkt2:
+	arg mem_l2cap_rxbuff2,contw
+	fetch 2,mem_l2cap_rxbuff2_len
+	iadd contw,contw
+process_dmh_data:	
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop process_dmh_data
+process_dmh_data_end:	
+	bpatch patch0b_7,mem_patch0b
+	parse demod,bucket,16  /* cycle through the crc */
+	branch error_payload_crc,crc_failed
+	fetch 1,mem_l2cap_flow_ctrl_flag
+	beq L2CAP_FLOW_CTRL_ENABLE,end_of_packet
+	bmark1 mark_testmode,process_dmh_cont
+	bmark1 mark_old_packet,redundant_payload
+	fetch 1,mem_lch_code
+	compare 3,pdata,3
+	branch process_dmh_cont,true
+	fetch 2,mem_len
+	branch process_dmh_cont,blank
+	bpatch patch0c_0,mem_patch0c
+	fetch 1,mem_l2cap_rxbuff_new
+	beq 1,process_l2cap_pass_crc_buff1
+	beq 2,process_l2cap_pass_crc_buff2
+	branch assert
+process_l2cap_pass_crc_buff1:
+	fetch 2,mem_l2cap_rxbuff1_len
+	fetcht 2,mem_len
+	iadd temp,pdata
+	store 2,mem_l2cap_rxbuff1_len
+	beq 0,assert
+	fetcht 2,mem_l2cap_rxbuff1// l2cap payload length
+	increase 4,temp
+	isub temp,null
+	call l2cap_buff1_inuse,zero //l2cap pkts not ended
+	branch process_dmh_cont
+process_l2cap_pass_crc_buff2:
+	fetch 2,mem_l2cap_rxbuff2_len
+	fetcht 2,mem_len
+	iadd temp,pdata
+	store 2,mem_l2cap_rxbuff2_len
+	beq 0,assert
+	fetcht 2,mem_l2cap_rxbuff2// l2cap payload length 
+	add temp,4,temp
+	isub temp,null
+	call l2cap_buff2_inuse,zero //l2cap pkts not ended
+	branch process_dmh_cont
+process_dmh_cont:
+	bpatch patch0c_1,mem_patch0c
+	fetcht 1,mem_state_map
+	fetch 1,mem_lch_code
+	compare 3,pdata,0x03
+	setflag true,smap_rxlmp,temp
+	nsetflag true,smap_rxl2cap,temp
+	storet 1,mem_state_map
+	nbranch process_dmh_cont_rxbuf_not_use,true
+	set1 mark_rxbuf_inuse,mark
+process_dmh_cont_rxbuf_not_use:
+	bmark0 mark_testmode,ack_payload
+	isolate1 smap_rxlmp,temp
+	branch ack_payload,true
+	fetch 2,mem_tst_pktcnt_crc
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_crc
+	set1 mark_loopback,mark
+	set0 smap_rxl2cap,temp
+	set0 mark_rxbuf_inuse,mark
+	storet 1,mem_state_map
+ack_payload:
+	bpatch patch0c_2,mem_patch0c
+	fetcht 1,mem_temp_arq
+	fetch 1,mem_arq
+	set1 arqnx,pdata
+	isolate1 seqn,temp            /* if accept, seqn always copies from the header */
+	setflag true,seqn,pdata
+	isolate1 mark_am_addr_broadcast,mark
+	setflag true,bcast1,pdata
+	store 1,mem_arq
+	fetch 2,mem_len
+	nbranch end_of_packet,blank
+	fetch 1,mem_state_map
+	set0 smap_rxl2cap,pdata//better to do this in l2cap_flow_ctrl_stop
+	store 1,mem_state_map
+	fetch 1,mem_lch_code
+	compare 0x01,pdata,0x07
+	//call l2cap_flow_ctrl_stop,true
+	branch end_of_packet
+	
+error_header:
+	bpatch patch0c_3,mem_patch0c
+	disable match
+	fetch 2,mem_rx_hec_err
+	increase 1,pdata
+	store 2,mem_rx_hec_err
+	branch end_of_packet
+error_payload_crc:
+	fetch 2,mem_rx_crc_err
+	increase 1,pdata
+	store 2,mem_rx_crc_err
+	call discard_pkt
+	bmark0 mark_testmode,error_payload
+	set1 mark_loopback,mark
+error_payload:
+	branch end_of_packet
+	
+discard_pkt:
+	bpatch patch0c_4,mem_patch0c
+	fetch 1,mem_lch_code
+	compare 3,pdata,0x03
+	nbranch discard_pkt_l2cap,true
+discard_pkt_lmp:	
+	fetcht 1,mem_state_map
+	set0 smap_rxlmp,temp
+	storet 1,mem_state_map
+	rtn
+discard_pkt_l2cap:
+//	isolate1 mark_testmode,mark
+//	setflag true,mark_loopback,mark
+	fetcht 1,mem_state_map
+	set0 smap_rxl2cap,temp
+	storet 1,mem_state_map
+	branch  h4_send_acl_trigger_clear
+
+redundant_payload:
+	fetch 1,mem_arq
+	set1 arqnx,pdata
+	store 1,mem_arq
+end_of_packet:
+	bpatch patch0c_5,mem_patch0c
+	disable encode_fec0
+	disable encode_fec2
+	disable decode_fec0
+	disable decode_fec2
+	disable enable_crc
+	disable encrypt
+	disable enable_white
+	branch shutdown_radio,is_rx
+	until null,tx_clear
+	nop 100          /* flush out the last bit */
+	branch shutdown_radio
+	
+process_fhs:
+	bpatch patch0c_6,mem_patch0c
+	enable enable_crc
+	enable decode_fec2
+	parse demod,bucket,72
+	isolate1 58,pdata
+	setflag true,mark_fhs_eir,mark
+	copy bt_adr,temp             /* save current address to aside */
+	ialigned bt_adr            /* send it to access gen */
+	ialigned fhs0			/* get fhs_misc */
+	pulse recalc                /* calc the lap just received from the other guy */
+	setsect 2,0xfffff             /* preset ms of shift reg as big mask */
+	setsect 3,0x0ffff             /* preset ms of shift reg as big mask */
+	nop 32                       /* 30 cycles after recalc */
+	iverify fhs_parity             /* check fhs_parity against ls 34 bits at shift reg, with msb 36 bits as mask */
+	deposit lap
+	store 3,extm_lap
+	deposit uap
+	store 1,extm_uap
+	copy temp,bt_adr             /* put the address back */
+	branch fhs_parity_ok,true     /* fhs parity failed */
+	branch error_payload
+fhs_parity_ok:
+	bpatch patch0c_7,mem_patch0c
+	parse demod,bucket,72
+	ialigned fhs1                   /* give host the information on class and fhs_misc */
+	ialigned am_addr                /* store the am_addr the master assigned us */
+	ialigned nap
+	ialigned regb                   /* store external clock in regb according to clock format */
+	force 0,pdata
+	parse demod,bucket,16  /* cycle through the crc */
+	branch error_payload,crc_failed
+	setarg 0x0ffffffc
+	iand regb,pdata
+	store 4,mem_clke_bt
+	deposit fhs_class
+	store 3,extm_class
+	deposit fhs_misc
+	store 1,extm_fhs_misc
+	deposit am_addr
+	store 1,extm_newconn_am_addr
+	deposit nap
+	store 2,extm_nap
+	deposit bt_clk
+	inject rxf,32
+	compare type_fhs,type,0x0f         /* see if this was fhs packet */
+	setflag true,mark_fhs_already_good,mark
+	branch end_of_packet
+
+clear_got_tx:
+	bpatch patch0d_0,mem_patch0d
+	fetch 1,mem_arq
+	rtnbit0 wack
+	set0 wack,pdata
+	setflip seqnx,pdata
+	store 1,mem_arq
+	fetch 1,mem_last_type
+	beq type_lmp,clear_got_txlmp
+	rtneq type_hv3
+	fetch 1,mem_op
+	rtnbit0 op_txl2cap,pdata
+	set0 op_txl2cap,pdata
+	set1 op_pkt_comp,pdata
+	store 1,mem_op
+	set0 mark_tx_l2cap,mark
+	fetch 2,mem_l2cap_tx_multi_offset
+	nrtn blank
+	fetch 1,mem_op
+	set0 op_pkt_comp,pdata
+	store 1,mem_op
+	branch l2cap_malloc_free
+
+clear_got_txlmp:
+	bpatch patch0d_1,mem_patch0d
+	fetch 1,mem_lmo_header_opcode
+	rshift pdata,pdata
+	beq LMP_START_ENCRYPTION_REQ,start_encryption
+	beq LMP_STOP_ENCRYPTION_REQ,stop_encryption
+	beq LMP_UNSNIFF_REQ, sniff_exit
+	beq LMP_ESCAPE,clear_lmp_escape
+	rtnne LMP_ACCEPTED
+	fetch 1,mem_lmo_payload
+	beq LMP_SCO_LINK_REQ,sco_link_req_by_slave
+	beq LMP_START_ENCRYPTION_REQ,clear_send_setup_complete
+	rtn
+
+clear_lmp_escape:
+	fetch 1,mem_lmo_payload
+	set1 7,pdata
+	rtn
+clear_send_setup_complete:
+	rtn master
+	fetch 1,mem_state
+	rtnbit1 state_conn_comp
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	rtn
+	
+// nokia BH-105  CALLING when reconnection
+sco_link_req_by_slave:
+	rtn master
+	fetch 1,mem_mode
+	isolate1 send_sco_when_slave,pdata
+	branch clean_mem_mode,true
+	//jam LMP_REMOVE_SCO_LINK_REQ,mem_lmo_opcode2
+	rtn
+clean_mem_mode:
+	set0 send_sco_when_slave,pdata
+	store 1,mem_mode
+	rtn
+	
+start_encryption:
+	bpatch patch0d_2,mem_patch0d
+	fetch 1,mem_state_map
+	set1 smap_encryption,pdata
+	store 1,mem_state_map
+	jam 1,core_encrypt
+	fetch 1,mem_state
+	isolate1 state_conn_comp,pdata
+	rtn
+
+stop_encryption:
+	bpatch patch0d_3,mem_patch0d
+	fetch 1,mem_state_map
+	set0 smap_encryption,pdata
+	store 1,mem_state_map
+	jam 0,core_encrypt
+	rtn
+
+
+sniff_init:
+	bpatch patch0d_4,mem_patch0d
+	copy clkn_bt,pdata
+	store 4,mem_lpm_delay_after_sniff
+	add clkn_bt,3,rega
+	branch sniff_init_master,master
+	add clke_bt,3,rega
+sniff_init_master:
+	fetcht 2,mem_tsniff
+	deposit rega
+	set0 27,pdata
+	idiv temp
+	fetch 2,mem_dsniff
+	call wait_div_end
+	remainder regc
+	isub regc,pdata
+	branch sniff_init_nowrap,positive
+	iadd temp,pdata
+sniff_init_nowrap:
+	iadd rega,pdata
+	store 4,mem_sniff_anchor
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	fetch 1,mem_state
+	set1 state_insniff,pdata
+	store 1,mem_state
+	fetch 1,mem_sniff_attempt
+	store 1,mem_current_sniff_attempt
+	setarg 0
+	store 3,mem_sniff_rcv
+	store 3,mem_sniff_lost
+	store 1,mem_sniff_unint_lost
+	jam BT_EVT_ENTER_SNIFF,mem_fifo_temp
+	call ui_ipc_send_event
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_rx_window
+	nrtn master
+	add am_addr,-1,queue
+	rtn
+
+sniff_exit:
+	bpatch patch0d_5,mem_patch0d
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	set0 state_insniff,pdata
+	store 1,mem_state
+	fetch 2,mem_rx_window_init
+	store 2,mem_rx_window
+	disable wake
+	jam BT_EVT_EXIT_SNIFF,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+check_attempt:
+	bpatch patch0d_6,mem_patch0d
+	enable attempt
+	fetch 1,mem_state
+	bbit1 state_insniff,check_attempt_sniff
+	rtnmark1 mark_testmode						/* pdata won't be blank now, try attempt */
+	fetch 1,mem_arq
+	rtnbit1 wack
+	fetch 1,mem_lmp_to_send
+	nrtn blank
+	fetch 1,mem_op
+	rtnbit1 op_txl2cap
+check_attempt_nomore:
+	force 0,pdata
+	rtn
+
+check_attempt_sniff:
+	bbit0 state_insco,check_attempt_not_sco
+	fetch 1,mem_current_sniff_attempt
+	beq 2,check_attempt_sniff_restore_sco
+	fetch 1,mem_arq
+	bbit1 wack,check_attempt_notimeout
+	bmark0 mark_esco_rxok,check_attempt_notimeout
+check_attempt_sniff_restore_sco:
+	nbranch check_attempt_notimeout,master
+	fetch 1,mem_lmp_to_send
+	nbranch check_attempt_notimeout,blank
+check_attempt_sco_master:
+	fetch 1,mem_sco_poll
+	increase -1,pdata
+	store 1,mem_sco_poll
+	nbranch check_attempt_nomore,blank
+	jam param_sco_poll,mem_sco_poll
+	branch check_attempt_notimeout
+
+
+
+
+
+	
+check_attempt_not_sco:
+	fetch 1,mem_current_sniff_attempt
+	bne 1,check_attempt_notimeout
+	fetch 1,mem_current_sniff_timeout
+	branch check_attempt_notimeout,blank
+	increase -1,pdata
+	store 1,mem_current_sniff_timeout
+	fetch 1,mem_arq
+	rtnbit1 wack						// waiting for next ack
+	nrtn match						// waiting for next poll
+check_attempt_notimeout:
+	fetch 1,mem_current_sniff_attempt
+	increase -1,pdata
+	store 1,mem_current_sniff_attempt
+	rtn
+
+
+
+
+
+
+
+
+
+	/* enable user if sniff window vialation, queue is extra overhead */
+sniff_check_window:
+	bpatch patch0d_7,mem_patch0d
+	disable swfine
+	copy temp,stop_watch
+	call context_search_sniff_window
+	disable user
+	nrtn zero
+	force 0,stop_watch
+	enable user
+	rtn
+
+	//return true if it is esco context
+check_esco_amaddr:
+	fetch 1,mem_esco_addr
+	icompare 0xff,am_addr
+	rtn
+	
+
+parse_l2cap:	
+	bpatch patch0e_0,mem_patch0e
+	set0 mark_rxbuf_inuse,mark 
+parse_l2cap_cont:
+	jam L2CAP_RX_CLEAR,mem_l2cap_rx_done
+	fetch 1,mem_l2cap_rxbuff_inuse
+	rtn blank
+	isolate1 L2CAP_INUSE_BUFF1,pdata
+	arg mem_l2cap_rxbuff1,contr
+	call process_rx_l2cap_pkt,true
+	bpatch patch0e_1,mem_patch0e
+	fetch 1,mem_l2cap_rx_done
+	beq L2CAP_RX_DONE,parse_l2cap_release_buff1
+	
+	jam L2CAP_RX_CLEAR,mem_l2cap_rx_done
+	fetch 1,mem_l2cap_rxbuff_inuse
+	rtnbit0 L2CAP_INUSE_BUFF2
+	arg mem_l2cap_rxbuff2,contr	
+	call process_rx_l2cap_pkt
+	fetch 1,mem_l2cap_rx_done
+	beq L2CAP_RX_DONE,parse_l2cap_release_buff2
+	rtn
+		
+parse_l2cap_release_buff1:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set0 L2CAP_INUSE_BUFF1,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	setarg 0
+	store 2,mem_l2cap_rxbuff1_len
+	rtn
+parse_l2cap_release_buff2:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set0 L2CAP_INUSE_BUFF2,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	setarg 0
+	store 2,mem_l2cap_rxbuff2_len
+	rtn
+
+l2cap_buff1_inuse:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set1 L2CAP_INUSE_BUFF1,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	rtn
+
+l2cap_buff2_inuse:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set1 L2CAP_INUSE_BUFF2,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	rtn
+
+/******************************************/
+/**********  Transmit Packet  *************/
+/******************************************/
+
+slave_send_access:
+	bpatch patch0e_2,mem_patch0e
+	add clke_bt,1,bt_clk          /* slave start to use native clock */
+	call fetch_extm_bt_adr
+	force 0x03,freq_mode          /* connection frequency */
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_external
+	branch send_access_word
+	
+
+slave_conn_send_packet:
+	bpatch patch0e_3,mem_patch0e
+	call rf_setup_time_slave_slot
+	deposit clke_bt
+	fetcht 4,mem_next_btclk
+	isub temp,pdata
+	rtnne 1					/* missed slave slot */
+	compare type_null,type,0x1f
+	nbranch slave_conn_send_access,true
+	fetch 1,mem_rx_type
+	rtn blank					/* null packet, do nothing */
+slave_conn_send_access:
+	call slave_send_access
+transmit_packet:
+	compare type_id,type,0x1f        /* is this id only ? */
+	branch end_of_packet,true
+	rshift bt_clk,temp
+	or temp,0x40,white_init
+transmit_packet_whitened:
+	bpatch patch0e_4,mem_patch0e
+	enable enable_white
+	enable enable_hec
+	enable encode_fec1
+	set0 mark_longpacket,mark
+	deposit am_addr
+	inject mod,3             /* am_addr, temp is disabled */
+	deposit type
+	inject mod,4
+	fetch 1,mem_arq   /* aka mem_arq */
+	inject bucket,4  /* align up to flowx, arqnx, seqnx */
+	inject mod,3
+	enable enable_parity
+	inject mod,8   /* transmit parity */
+	disable encode_fec1
+	disable enable_parity
+	disable enable_hec
+	set0 PSK3M,radio_ctrl
+	arg 0,temp
+	call reserve_slot
+	bpatch patch0e_5,mem_patch0e
+	and type,0x1f,pdata
+	beq type_lmp, transmit_lmp
+	beq type_null, end_of_packet
+	beq type_poll, end_of_packet
+	beq type_fhs, transmit_fhs  /* master mode fhs need got_tx and ack */
+	beq type_dm1, transmit_dm1
+	beq type_dh1, transmit_dh1
+	beq type_hv3, transmit_hev
+	beq type_3dh1, transmit_3dh1
+	arg 4,temp
+	call reserve_slot
+	beq type_dm3, transmit_dm3
+	beq type_dh3, transmit_dh3
+	arg 8,temp
+	call reserve_slot
+	beq type_dh5, transmit_dh5
+	branch transmit_dm5	/* must be 14, dm5 */
+
+
+transmit_hev:
+	bpatch patch0e_6,mem_patch0e
+	enable encode_fec0
+	enable enable_crc
+	enable encrypt
+	force 30,loopcnt
+	arg mem_sco_obuf,contr
+transmit_ev_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop transmit_ev_loop
+	bmark1 mark_esco,transmit_end
+	branch end_of_packet
+	
+transmit_fhs:
+	bpatch patch0e_7,mem_patch0e
+	fetch 1,mem_fhs_am_addr            /* this is the am_addr to assign to slave */
+	icopy am_addr
+	fetch 1,mem_fhs_misc
+	icopy fhs_misc    /* [7:6]SR [5:4]SP [3:1]PS [0]undef  */
+	fetch 3,mem_class   /* store away class */
+	icopy fhs_class
+	fetch 2,mem_nap
+	icopy nap
+	enable enable_crc
+	enable encode_fec2
+	copy bt_adr,rega
+	call fetch_self_bt_adr
+	pulse recalc
+	nop 32                    /* 30 cycles after recalc for sync word generation */
+	copy bt_clk,timeup
+	fetch 4,mem_clkn_bt
+	icopy bt_clk
+	preload fhs0
+	set1 58,pdata		/* eir */
+	inject mod,72
+	preload fhs1
+	inject mod,72
+	copy timeup,bt_clk
+	copy rega,bt_adr
+	enable enable_parity
+	inject mod,16   /* generate CRC */
+	disable enable_parity
+	branch end_of_packet
+
+transmit_lmp:    /* expect the payload ready as in bb spec */
+	bpatch patch0f_0,mem_patch0f
+	enable encrypt
+	enable enable_crc
+	enable encode_fec2
+	fetch 1,mem_lmo_header_length   /* this is the payload header */
+	and pdata,0x1f8,temp       /* temp is number of bits, check payload header format */
+	arg mem_lmo_header_length,contr
+	increase 8,temp   /* temp is in bits */
+transmit_lmp_loop:
+	add temp,-72,regc   /* regc is remainder */
+	nbranch transmit_lmp_finish,positive
+	ifetch 9,contr
+	inject mod,72
+	copy regc,temp
+	branch transmit_lmp_loop
+transmit_lmp_finish:
+	ifetch 9,contr
+	iinject mod,temp
+	branch transmit_end
+
+transmit_dm1:
+	enable encode_fec2
+	branch transmit_dmh
+transmit_dm3:
+transmit_dm5:
+	enable encode_fec2
+	set1 mark_longpacket,mark
+	branch transmit_dmh
+
+transmit_3dh1:
+	set1 PSK3M,radio_ctrl
+transmit_dh1:
+	enable encode_fec0
+	branch transmit_dmh
+	
+transmit_dh3:
+transmit_dh5:
+	set1 PSK3M,radio_ctrl
+	enable encode_fec0
+	set1 mark_longpacket,mark
+
+transmit_dmh:
+	bpatch patch0f_1,mem_patch0f
+	fetch 1,mem_state_map
+	bbit0 smap_edr,transmit_noedr
+	sub type,3,null
+	branch transmit_noedr,positive
+	disable encrypt
+	disable encode_fec2
+	enable encode_fec0
+	disable enable_white
+	set1 PSK,radio_ctrl
+	isolate1 PSK3M,radio_ctrl
+	branch transmit_edr3m,true
+	setarg 0xabeee
+	inject mod,20
+	branch transmit_edr_sync_end
+transmit_edr3m:
+	setarg 0x5faeba
+	inject mod,24
+	setarg 0x12
+	inject mod,6
+transmit_edr_sync_end:	
+	enable enable_white
+	set1 mark_longpacket,mark
+transmit_noedr:
+	enable encrypt
+	enable enable_crc
+	bmark1 mark_loopback,transmit_loopback
+	fetch 1,mem_tx_lch
+	inject mod,3
+	fetch 2,mem_tx_len
+	iforce loopcnt
+	bmark1 mark_longpacket,transmit_long
+	inject mod,5
+	branch transmit_stuff
+transmit_long:	
+	inject mod,13
+transmit_stuff:
+	deposit loopcnt
+	branch transmit_end,blank
+	fetch 2,mem_txptr
+	iforce contr
+transmit_stuff_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop transmit_stuff_loop
+//	branch transmit_end
+
+transmit_end:
+	enable enable_parity
+	inject mod,16
+	disable enable_parity
+	call set_wait_ack
+	fetch 1,mem_state_map
+	bbit0 smap_edr,end_of_packet
+	force 0,pdata
+	inject mod,6				/* edr trailer */
+	branch end_of_packet
+
+
+transmit_loopback:
+	bpatch patch0f_2,mem_patch0f
+	bmark1 mark_longpacket,transmit_loopback_long
+transmit_loopback_short:
+	fetch 1,mem_lch_code
+	inject mod,3						/* LLID and FLOW */
+	fetch 1,mem_len	/* take packet length */
+	iforce regc
+	inject mod,5
+	branch transmit_loopback_cont
+transmit_loopback_long:
+	fetch 1,mem_lch_code
+	inject mod,3						/* LLID and FLOW */
+	fetch 2,mem_len	/* take packet length */
+	iforce regc
+	inject mod,13
+transmit_loopback_cont:
+	arg mem_rxbuf,contr
+transmit_loopback_loop:	
+	copy regc,null
+	branch transmit_loopback_end,zero
+	ifetch 1,contr
+	inject mod,8
+	increase -1,regc
+	branch transmit_loopback_loop
+transmit_loopback_end:
+	fetch 2,mem_tst_pktcnt_dmh
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_dmh
+	branch transmit_end
+	
+
+apply_switch_clke:
+	fetch 4,mem_clke_bt
+	add pdata,7,rega
+	fetch 2,mem_slot_offset
+	nbranch apply_switch_nozero,blank
+	increase -3,rega
+	branch apply_switch_wait_loop
+apply_switch_nozero:
+	mul32 pdata,12,pdata
+	hfetcht 2,core_halfslot
+	increase 1,temp
+apply_switch_loop:
+	isub temp,pdata
+	nbranch apply_switch_bt,positive
+	increase -1,rega
+	branch apply_switch_loop
+apply_switch_bt:
+	sub pdata,0,pdata
+apply_switch_wait_loop:
+	until null,oneslot
+	compare 0,clkn_bt,3
+	nbranch apply_switch_wait_loop,true
+	iforce clke_rt
+	copy rega,clke_bt
+	iforce clke_rt
+	rtn
+	
+
+calc_slot_offset:
+	bpatch patch0f_3,mem_patch0f
+	until null,halfslot
+	deposit clke
+	iforce contr
+	rshift16,pdata,pdata
+	isub clkn_bt,loopcnt
+	and_into 3,loopcnt			/* bt portion */
+	nbranch calc_bt_portion,zero
+	force 0,pdata
+	branch calc_skip_bt
+calc_bt_portion:
+	arg 3750,temp
+	force 0,pdata
+calc_slot_offset_loop:
+	iadd temp,pdata
+	loop calc_slot_offset_loop
+calc_skip_bt:
+	iadd contr,pdata			/* add rt portion */
+	div pdata,12
+	call wait_div_end
+	quotient pdata
+	store 2,mem_slot_offset
+	rtn
+
+calc_clke_offset:
+	bpatch patch0f_4,mem_patch0f
+	deposit clke
+	copy clkn,temp
+	isub temp,null
+	nsetflag positive,44,pdata
+	isub temp,temp
+	setarg 3750
+	isolate0 15,temp
+	branch calc_clke_pos,true
+	setarg -61786
+	iadd temp,temp
+calc_clke_pos:
+	storet 6,mem_le_clk_offset
+	rtn le
+	storet 6,mem_clk_offset
+	rtn
+
+calc_clke:
+	disable clknt
+	fetch 6,mem_le_clk_offset
+	branch calc_clke2,le
+	fetch 6,mem_clk_offset
+calc_clke2:
+	iadd clkn,alarm
+	increase 10,alarm
+	setarg 3750
+	isub alarm,pdata
+	isolate0 15,pdata
+	branch calc_clke_pos_adj,true
+	setarg 0xf15a
+	iadd alarm,alarm
+calc_clke_pos2:
+	copy alarm,clke
+	rtn
+calc_clke_pos_adj:		/* add 2 clock */
+	force 0,null
+	branch calc_clke_pos2
+	
+/******************************************/
+/********* RF related functions ***********/
+/******************************************/
+
+
+calc_radio_freq:
+	bpatch patch0f_5,mem_patch0f
+	call set_sync_on
+	copy bt_clk,pdata
+	and_into 0x180,pdata
+	compare 3,freq_mode,0x07
+	nbranch freq_not_connection,true    /* don't do the hack if not in connection */
+	rshift3 pdata,pdata
+	iadd freq_index,pdata
+	branch do_hop_mod_now
+freq_not_connection:	
+	copy freq_index,pdata
+do_hop_mod_now:
+	div pdata,79
+	pulse recalc         /* now is good time to recalc id */
+	call wait_div_end
+	remainder rega
+	add rega,-40,temp
+	branch odd_half,positive
+	lshift rega,temp
+	branch freq_result
+odd_half:
+	lshift temp,temp
+	increase 1,temp
+freq_result:	
+	bpatch patch0f_6,mem_patch0f
+	fetch 1,mem_mode
+	bbit0 afh_change,afh_process_con
+afh_process_0:	
+	fetch 4, mem_afh_instant   
+	isub bt_clk, null
+	branch afh_process_con,positive
+	call afh_clear
+	fetch 1,mem_afh_new_mod
+	rtn blank
+	fetch 1,mem_mode
+	set1 afh_enable,pdata
+	store 1,mem_mode
+	fetch 5,mem_afh_map_new
+	store 5,mem_afh_map_lo
+	ifetch 5,contr
+	store 5,mem_afh_map_hi
+	call afh_process_freq_map
+afh_process_con:
+	fetch 1,mem_mode
+	rtnbit0 afh_enable
+	isolate1 1,bt_clk
+	branch afh_same_channel,true	/* at odd slot, use the same as last even */
+	rshift3 temp,rega
+	and temp,7,queue
+	setarg mem_afh_map_lo  
+	iadd rega, rega
+	ifetch 1, rega
+	qisolate0 pdata
+	branch afh_process_1,true		/* not in map, do afh */
+	deposit temp
+	branch afh_process_end
+afh_process_1:
+	fetch 1, mem_afh_used
+	iforce regb                     
+	deposit bt_clk
+	and_into 0x180, pdata
+	rshift3 pdata,pdata
+	iadd freq_index,pdata
+	idiv regb
+	setarg mem_afh_map     
+	call wait_div_end
+	remainder rega
+	iadd rega,contr
+	ifetch 1,contr
+afh_process_end:	
+	store 1,mem_afh_index
+	iforce temp  
+  	rtn
+
+afh_same_channel:
+	fetch 1, mem_afh_index           /* last afh index  */
+	iforce temp
+	rtn
+
+afh_clear:
+	fetch 1,mem_mode
+	set0 afh_enable,pdata
+	set0 afh_change,pdata
+	store 1,mem_mode
+	rtn
+/*
+fixed_frequency:
+	fetcht 1,mem_fixed_freq
+	rtn
+*/
+afh_process_freq_map:
+	bpatch patch0f_7,mem_patch0f
+	arg mem_afh_map,contw
+	force 10,loopcnt
+	call memset0
+	arg mem_afh_map,contw
+	force 0,regC
+	force 2,queue
+process_freq_3:	
+	fetch 5,mem_afh_map_lo
+	iforce temp
+	compare 2,queue,0xff
+	branch process_freq_1,true
+	rshift temp,temp
+process_freq_1:	
+	isolate0 0,temp
+	branch process_freq_0,true
+	deposit regC
+	istore 1,contw
+process_freq_0:
+	rshift2 temp,temp
+	increase 2,regC
+	compare 40,regC,0xfe
+	nbranch process_freq_2,true
+	fetch 5,mem_afh_map_hi
+	iforce temp
+	compare 2,queue,0xff
+	branch process_freq_2,true
+	rshift temp,temp
+process_freq_2:	
+	sub regC,78,null
+	branch process_freq_1,positive
+	force 1,regC
+	increase -1,queue
+	nbranch process_freq_3,zero
+	arg mem_afh_map,rega
+	deposit contw
+	isub rega,pdata
+	store 1,mem_afh_used
+	rtn
+
+rx_radio_freq:
+	bpatch patch10_0,mem_patch10
+	call calc_radio_freq
+	fetch 1,mem_debug_config
+	bbit0 debug_rx_fixed_freq,rx_radio_freq_now
+	fetcht 1,mem_rx_fixed_freq
+rx_radio_freq_now:
+	branch set_freq_rx
+	
+
+tx_radio_freq:
+	bpatch patch10_1,mem_patch10
+	call calc_radio_freq
+	fetch 1,mem_debug_config
+	bbit0 debug_tx_fixed_freq,tx_radio_freq_now
+	fetcht 1,mem_tx_fixed_freq
+tx_radio_freq_now:
+	branch set_freq_tx
+	
+
+fetch_giac:
+	force 0,uap
+	fetch 3,mem_glap
+	iforce lap
+	rtn
+
+fetch_page_bt_adr:
+	bpatch patch10_2,mem_patch10
+	fetch 1,mem_hci_puap
+	icopy uap
+	fetch 3,mem_hci_plap
+	icopy lap
+	rtn
+
+fetch_self_bt_adr:
+	bpatch patch10_3,mem_patch10
+	fetch 2,mem_nap
+	icopy nap
+	fetch 1,mem_uap
+	icopy uap
+	fetch 3,mem_lap
+	icopy lap                 /* copy self_adr,bt_adr */      /* use own address */
+	rtn
+
+fetch_extm_bt_adr:
+	bpatch patch10_4,mem_patch10
+	fetch 2,mem_pnap
+	icopy nap
+	fetch 1,mem_puap
+	icopy uap
+	fetch 3,mem_plap
+	icopy lap         
+	rtn
+
+
+fetch_diac:
+	bmark1 mark_all_diac,fetch_diac_do
+	rtnmark0 mark_inquiry_state
+	rtnmark0 mark_periodical_diac
+fetch_diac_do:
+	and_into -256,lap
+	pulse recalc
+	nop 32
+	rtn
+
+
+shutdown_radio:
+	bpatch patch10_5,mem_patch10
+	branch shutdown_radio0,is_rx
+	jam 0xd4, rf_tx_pa_ib
+	nop 4
+	jam 0xd2, rf_tx_pa_ib
+	nop 4
+	jam 0xd1, rf_tx_pa_ib
+	nop 4	
+	fetch 1,mem_tx_power
+	beq TX_POWER_0DB,shutdown_radio_0db
+	beq TX_POWER_3DB,shutdown_radio_3db
+	beq TX_POWER_5DB,shutdown_radio_5db
+	beq TX_POWER_f3DB,shutdown_radio_f3db
+	beq TX_POWER_f5DB,shutdown_radio_f5db
+	beq TX_POWER_PAIR,shutdown_radio_pair
+shutdown_radio_5db:	
+shutdown_radio_0db:
+	jam 0xd0, rf_tx_pa_ib
+	jam 0xe0, rf_tx_pa_gc
+shutdown_radio0:
+	force 0,radio_ctrl
+	disable is_rx
+	disable is_tx
+	pulse packet_end
+	jam 0x0,rfen_mdm
+	jam 0x0,rfen_tx
+	jam 0x0,rfen_rx
+	jam 0,rfen_sn
+	jam 0x70,rfen_msc
+	jam 0x0,rfen_adc
+	rtn
+	
+shutdown_radio_pair:
+shutdown_radio_f5db:
+shutdown_radio_f3db:
+shutdown_radio_3db:
+	jam 0xd0,rf_tx_pa_ib
+	jam 0xc0,rf_tx_pa_gc
+	branch shutdown_radio0
+
+set_sync_on:
+	bpatch patch10_6,mem_patch10
+	jam 0x0,rfen_mdm					/* if called from tx or rx */
+	jam 0x0,rfen_tx
+	jam 0x18,rfen_rx
+	jam 0xa7,rfen_sn
+	jam 0x7f,rfen_msc
+	rtn
+
+set_freq_rx:
+	bpatch patch10_7,mem_patch10
+		/* IF is +2MHz */
+	storet 1,mem_last_freq
+	add temp,rx_freq_offset,rega			/* index to frequency */
+	jam 0x07,rf_balun_ctrim                                         /*Max added, for best sensitivity*/
+	branch rf_write_freq
+rf_rx_enable:
+	bpatch patch11_0,mem_patch11
+	jam 0xcf,rfen_tx
+	nop 10					/* wait adc clk48 ready */
+	jam 0xff,rfen_rx
+	jam 0xaf,rfen_sn
+	jam 0xff,rfen_msc
+	nop 10
+	jam 0xa0,rfen_mdm
+	rtn
+	
+set_freq_tx_offset:
+	fetch 1,mem_250k_freq_enable	//default: 0
+	branch set_freq_tx_2M_offset,blank
+set_freq_tx_0M_offset:
+	add temp,2,rega			//250k
+	rtn
+set_freq_tx_2M_offset:
+	add temp,0,rega			// bt 2M Medium Frequency
+	rtn
+
+set_freq_tx:
+	bpatch patch11_1,mem_patch11
+	storet 1,mem_last_freq
+	call set_freq_tx_offset
+	call rf_write_freq
+	setarg param_pll_setup
+	call sleep
+txon:	
+	jam 0x1,rfen_adc
+	jam 0x3c,rfen_rx
+	jam 0xe0,rfen_tx
+	jam 0x12,rf_balun_ctrim
+	nop 10
+	jam 0x01,rfen_mdm
+	jam 0x3d,rfen_mdm
+	nop 10
+	jam 0xb7,rfen_sn
+	nop 10
+	jam 0x7f, rfen_mdm
+txon_power_select:	
+	fetch 1,mem_tx_power
+	beq TX_POWER_0DB,set_tx_power_0db
+	beq TX_POWER_3DB,set_tx_power_3db	
+	beq TX_POWER_5DB,set_tx_power_5db
+	beq TX_POWER_f3DB,set_tx_power_f3db	
+	beq TX_POWER_f5DB,set_tx_power_f5db
+	beq TX_POWER_PAIR,set_tx_power_pair
+set_tx_power_0db:	
+	jam 0xf0,rf_tx_pa_gc
+	call txon_common
+	jam 0xd8,rf_tx_pa_ib
+	rtn
+
+set_tx_power_3db:
+	jam 0xdf,rf_tx_pa_gc
+	call txon_common
+	jam 0xdf,rf_tx_pa_ib
+	rtn
+
+set_tx_power_5db:
+	jam 0xff,rf_tx_pa_gc
+	call txon_common
+	jam 0xdf,rf_tx_pa_ib
+	rtn
+set_tx_power_f3db:
+	jam 0xce,rf_tx_pa_gc
+	call txon_common
+	jam 0xd8,rf_tx_pa_ib
+	rtn
+
+set_tx_power_f5db:
+	jam 0xcb,rf_tx_pa_gc
+	call txon_common
+	jam 0xd8,rf_tx_pa_ib
+	rtn
+
+set_tx_power_pair:
+	jam 0xd0,rf_tx_pa_ib
+	jam 0xc0,rf_tx_pa_gc
+	jam 0x4c,0x8957
+	jam 0x6c,0x8958
+	jam 0x50,0x8959
+	rtn
+
+txon_common:
+	nop 4
+	jam 0xd1,rf_tx_pa_ib
+	nop 4
+	jam 0xd2,rf_tx_pa_ib
+	nop 4
+	jam 0xd4,rf_tx_pa_ib
+	rtn
+
+
+initialize_radio:
+	jam clksel_rc,core_clksel
+initialize_radio_wait:
+	fetch 2,mem_rf_init_ptr
+	bbit0 14,initialize_radio_wait
+	iforce contr
+	arg 0x8900,temp
+initialize_radio_loop:
+	ifetch 1,contr
+	beq 0xff,initialize_radio_cont
+	ior temp,contw
+	ifetch 1,contr
+	istore 1,contw
+	branch initialize_radio_loop
+initialize_radio_cont:
+	bpatch patch11_2,mem_patch11
+	call lpm_cal_xtal_startup
+	call switchto_dpllclk
+//	ncall check_dpll,wake
+	setarg param_dpll_start_delay
+	iadd clkn_bt,pdata
+	store 4,mem_dpll_clkn
+	set1 RESET,radio_ctrl
+	force 0,radio_ctrl
+	ncall do_rccal,wake
+	branch set_rccal
+
+	/* rega is frequency, 00=2400Mhz */
+rf_write_freq:
+	bpatch patch11_3,mem_patch11
+	setarg 2400
+	iadd rega,temp
+	fetch 1,mem_fcomp_mul
+	jam 0x04,rf_pll_rstn
+	imul32 temp,pdata
+	fetcht 1,mem_fcomp_div
+	idiv temp
+	call wait_div_end
+	quotient rega			/* rega is FLOOR(FVCO/fcomp) */
+	remainder pdata		
+	lshift16 pdata,pdata
+	lshift4 pdata,pdata		/* pdata is frac * 2^20 */
+	idiv temp
+	call wait_div_end
+	quotient pdata		/* pdata is frac *2^20/fcomp */
+	lshift8 pdata,pdata
+	lshift pdata,pdata
+	ior rega,pdata
+	hstore 4,rf_pll_intg
+	jam 0x44,rf_pll_rstn
+	jam 0xc4,rf_pll_rstn
+	rtn
+
+	
+do_rccal:
+	bpatch patch11_4,mem_patch11
+	jam 0x02,rfen_adc
+	setarg 250000
+	call sleep					/* wait clkpll&xtal stable */
+	jam 0x7f,rfen_rx
+	nop 130
+	jam 0x30,rf_rccal_ctrl
+	jam 0xd0,rfen_tx
+	jam 0x70,rf_rccal_ctrl
+	jam 0xf0,rf_rccal_ctrl
+	force 50,loopcnt
+do_rccal_loop:
+	hfetch 1,rf_rccal_result
+	bbit1 5,do_rccal_end
+	loop do_rccal_loop
+do_rccal_end:
+	store 1,mem_rf_rccal
+	jam 0,rfen_tx
+	jam 0,rfen_rx
+	jam 0x00,rfen_adc
+	rtn
+
+set_rccal:
+	bpatch patch11_5,mem_patch11
+	fetch 1,mem_rf_rccal
+	set1 5,pdata
+	hstore 1,rf_rccal_ctrl
+	hfetcht 1,rf_bpf_ctrim
+	and_into 7,temp
+	lshift3 pdata,pdata
+	ior temp,pdata
+	hstore 1,rf_bpf_ctrim
+	hfetch 1,rf_bpf_ib
+	set0 bpf_rccal,pdata
+	hstore 1,rf_bpf_ib
+	hfetch 1,rf_adc_rccal
+	set0 adc_rccal,pdata
+	hstore 1,rf_adc_rccal
+	rtn
+
+save_rssi:
+	bpatch patch11_6,mem_patch11
+	hfetch 2,rf_afc_d2a
+	rshift4 pdata,pdata
+	rshift3 pdata,pdata
+	sub pdata,0,pdata
+bcd:
+	and_into 0xff,pdata
+	div pdata,10
+	call wait_div_end
+	quotient pdata
+	lshift4 pdata,pdata
+	remainder temp
+	ior temp,pdata
+	store 1,mem_rssi			/* bcd value */
+	rtn
+
+	
+switchto_dpllclk:
+	jam clksel_rc,core_clksel
+	hfetch 1,rf_clkpll_frac+2
+	set0 4,pdata
+	set0 5,pdata
+	hstore 1,rf_clkpll_frac+2
+	jam 0x00,rfen_ck
+	jam 0x00,rfen_msc
+	jam 0x70,rfen_msc
+	jam 0xff,rfen_ck
+	hfetch 1,rf_clkpll_frac+2
+	set1 4,pdata
+	set1 5,pdata
+	hstore 1,rf_clkpll_frac+2
+	call init_lpm_ctrl
+	hfetch 1,rf_clkpll_int
+	set1 7,pdata
+	hstore 1,rf_clkpll_int
+	set0 7,pdata
+	hstore 1,rf_clkpll_int
+	set1 7,pdata
+	hstore 1,rf_clkpll_int
+	jam clksel_dpll,core_clksel
+	nop 1
+	jam clksel_xtal,core_clksel
+	hfetch 1,rf_clkpll_frac+2
+	and_into 0xcf,pdata
+	hstore 1,rf_clkpll_frac+2
+	or_into 0x30,pdata
+	hstore 1,rf_clkpll_frac+2
+	rtn
+
+	
+xtal_fast_wake:
+	setarg 0xf0f
+	branch lpm_write_config
+
+init_lpm_ctrl:
+	setarg 0x80f
+	branch lpm_write_config
+
+
+
+start_receiver:
+	bpatch patch11_7,mem_patch11
+	call rf_rx_enable
+	disable is_tx
+	enable is_rx
+	pulse init_encrypt
+	rtn
+
+prep_crypt:
+	bpatch patch12_0,mem_patch12
+	fetch 1,mem_state_map
+	isolate1 smap_encryption,pdata
+	setflag true,0,pdata
+	hstore 1,core_encrypt
+	arg mem_kc,contr
+	ifetch 9,contr
+	iforce kc_ls
+	ifetch 7,contr
+	iforce kc_ms
+	fetch 1,mem_key_size
+	add pdata,-1,g1l
+	pulse kc_p_activate               /* immediately start calculating primary Key */
+	rtn
+	
+wait_access_end:
+	deposit clke
+	store 6,mem_sync_clke
+	disable decode_fec0
+	nbranch shutdown_radio,sync
+	arg param_clke_cal,clke_rt
+	increase 1,clke_bt
+	and_into 0x1fc,clke_bt
+	rtn
+
+
+
+wait_access_mhalfbnd:
+	enable decode_fec0
+wait_access_mhalfbnd_correlate:
+	correlate null,mhalfbnd    /* keep correlating until sync is found, or clke half */
+	branch wait_access_end,sync
+	compare 0x02,clke_bt,0x02
+	nbranch wait_access_mhalfbnd_correlate,true
+	branch wait_access_end
+
+wait_access_clkn_rt:
+	bpatch patch12_1,mem_patch12
+	arg param_conn_access,timeup	/* found sync must occur within this time */
+	enable decode_fec0
+	correlate clkn_rt,meet    /* keep correlating until sync is found, or until clkn_rt timeup */
+	disable decode_fec0
+	nbranch shutdown_radio,sync
+	rtn
+
+wait_access_forever:
+	bpatch patch12_2,mem_patch12
+	enable decode_fec0
+	correlate null,timeout    /* keep correlating until sync is found, or timeout */
+	disable decode_fec0
+	nbranch shutdown_radio,sync
+	arg param_clke_cal,clke_rt
+	and_into 0x1fc,clke_bt
+	rtn
+
+	/* reserve slots for mult-slot packet */
+reserve_slot:
+	bpatch patch12_3,mem_patch12
+	iforce rega
+	deposit bt_clk
+	iadd temp,timeup
+	copy timeup,pdata
+	store 4,mem_next_btclk
+	deposit rega
+	rtn
+
+	/* pdata = clks ahead of bt_clk */
+ahead_window:
+	copy pdata,temp
+	bpatch patch12_4,mem_patch12
+	copy temp,pdata
+	call clk2bt
+	lshift16 bt_clk,pdata
+	set1 44,pdata
+	call clk_diff
+	set0 44,pdata
+	call get_clk
+	call clk_diff
+	rtn user
+	call clk2rt
+	iforce stop_watch
+	until null,timeout
+	rtn
+
+
+setup_clk:
+	bpatch patch12_5,mem_patch12
+	branch setup_clkn,clknt
+	until clke_rt,meet
+skip_setup_clke:
+	copy clke_bt,temp
+	branch setup_clknbt
+setup_clkn:
+	branch skip_setup_clkn,attempt
+	until clkn_rt,meet
+skip_setup_clkn:
+	copy clkn_bt,temp
+setup_clknbt:
+	branch setup_clk11,user
+	compare 1,temp,3
+	nbranch setup_clk,true
+setup_complete:
+	bpatch patch12_6,mem_patch12
+	fetch 1,mem_state
+	rtnbit0 state_inconn
+	fetch 4,mem_next_btclk
+	isub temp,pdata
+	nrtn positive
+	sub pdata,0xff,null
+	branch setup_clk,positive
+	rtn
+setup_clk11:
+	compare 3,temp,3
+	nbranch setup_clk,true
+	branch setup_complete
+
+rf_setup_time:
+	bpatch patch12_7,mem_patch12
+	arg param_rf_setup,timeup
+	branch setup_clk
+	
+rf_setup_time_slave_slot:
+	disable user
+	branch rf_setup_time
+
+rf_setup_time_master_slot:
+	enable user
+	branch rf_setup_time
+	
+start_transmitter:
+	bpatch patch13_0,mem_patch13
+	call prep_crypt
+	disable is_rx
+	enable is_tx
+	rtn
+
+
+
+start_tx_native:
+	bpatch patch13_1,mem_patch13
+	arg param_tx_setup,timeup
+	until clkn_rt,meet         /* wait until start_tx time */
+	pulse init_encrypt
+	rtn
+
+start_rx_native:
+	bpatch patch13_2,mem_patch13
+	arg param_rx_setup,timeup
+	until clkn_rt,meet
+	rtn
+
+
+start_tx_external:
+	bpatch patch13_3,mem_patch13
+	arg param_tx_setup,timeup
+	until clke_rt,meet         /* wait until start_tx time */
+	pulse init_encrypt
+	rtn
+
+send_access_word:
+	bpatch patch13_4,mem_patch13
+	preload access          /* load in access word ready to be sent */
+	enable encode_fec0
+	set1 TXGFSK,radio_ctrl
+	inject mod,72
+	disable encode_fec0
+	rtn
+
+
+scan_mode_whiten:
+	copy xin,temp
+	or_into 0x60,temp                /* extend xin with 5->1, 6->1 */
+	copy temp,white_init
+	rtn
+
+
+
+	/* return blank if free amaddr is found */
+get_free_amaddr:
+	bpatch patch13_5,mem_patch13
+	fetch 1,mem_current_amaddr
+	increase 1,pdata
+	bne param_esco_addr,get_free_amaddr_cont
+	force 1,pdata
+get_free_amaddr_cont:
+	store 1,mem_current_amaddr
+	iforce am_addr
+	rtn
+
+get_clk:
+	copy clkn,temp
+	rtn master
+	copy clke,temp
+	rtn
+
+get_clkbt:
+	deposit clkn_bt
+	rtn master
+	deposit clke_bt
+	rtn
+
+
+supervision_update:
+	bpatch patch13_6,mem_patch13
+	fetcht 4,mem_supervision_timer
+	call get_clkbt
+	isub temp,timeup					/* and to 28 bits */
+	deposit timeup
+	fetcht 2,mem_supervision_to
+	lshift temp,temp
+	isub temp,pdata
+	rtn
+	
+supervision_flush:
+	bpatch patch13_7,mem_patch13
+	call get_clkbt
+	store 4,mem_supervision_timer
+	rtn
+
+assert:
+	bpatch patch14_0,mem_patch14
+	branch assert
+	
+loop:
+	branch loop
+
+sleep:	
+	rtn blank
+	/* sleep pdata clocks, only even clocks are accurate */
+	rshift pdata,pdata
+	increase -3,pdata
+sleep_loop:	
+	increase -1,pdata
+	nbranch sleep_loop,zero
+	force 0,pdata
+	rtn
+
+
+
+init_param:
+	/* clear specified sched ram */
+	arg 0x10,loopcnt
+	arg 0,contw
+	call memset0
+	arg mem_le_state,contw
+	arg 10,loopcnt
+	call memset0
+	jam 0,mem_sp_calc
+	jam 0,mem_fifo_temp
+	jam 0,mem_le_testtype
+	jam 0,mem_debug_config
+	jam 0,mem_lmp_conn_state
+	bpatch patch14_1,mem_patch14
+	jam 0,mem_connection_options
+	jam 0,mem_tester_emulate
+	jam 0,mem_tester_cnt
+	setarg param_glap
+	store 3,mem_glap
+	setarg param_acl_pktlen
+	store 2,mem_acl_pktlen
+	jam param_sco_pktlen,mem_sco_pktlen
+	jam param_acl_pktcnt,mem_acl_pktcnt
+	jam param_sco_pktcnt,mem_sco_pktcnt
+	setarg param_hci_version
+	store 3,mem_hci_version
+//	setarg param_lmp_version
+//	store 3,mem_lmp_version
+//	setarg param_lmp_subversion
+//	store 2,mem_lmp_subversion
+	jam 0x60,mem_fhs_misc		/* R1 for 1.28s ps interval,P2 */
+	jam param_max_slot,mem_max_slot
+	jam 0x02,mem_fw_ver		/* set firmware version */
+	fetch 1,mem_ssp_enable
+	ncall init_memp,blank
+	fetch 1,mem_le_secure_connect_enable
+	ncall init_memp_256,blank
+	bpatch patch14_2,mem_patch14
+	rtn wake
+	setarg 0
+	store 2,mem_tx_len
+	rshift clkn_bt,pdata
+	store 4,mem_last_clkn
+	rtn
+
+
+
+
+/*****************************************LPO************************************************/
+
+lpmstate:
+	setarg 0xee21
+	hstore 2,core_clkoff			// disable unused peripherals
+	hfetch 4,core_gpio_in
+	store 4,mem_saved_gpio_in
+	hfetch 1,core_lpm_ldocnt
+	store 1,mem_wakup_from_power_flag
+	bbit0 gpio_latch,loadcode		// power up boot
+	enable wake
+	bbit0 cold_wake,lpmwake		
+	disable wake
+	deposit auxcnt
+	nbranch lpmwake,blank		// sleep interrupted, wakeup
+	hfetch 1,core_lpm_ctrl + 3
+	bbit1 reload_code,lpmwake
+	arg param_hibernate_clks,temp
+	branch lpm_enter_sleep
+lpmwake:
+	hfetch 3,core_lpm_xtalcnt
+	hstore 3,core_lpm_reg
+	ifetch 1,contr
+	or_into isogate_mask,pdata		// open all isolation gate&power switch
+	istore 1,contw
+	call lpm_write_ctrl2
+	hfetch 1,core_lpm_isogate
+	set1 enable_retmem,pdata
+	hstore 1,core_lpm_isogate
+	call lpm_write_ctrl2
+	call lpm_load_context,wake
+	hfetch 1,core_lpm_reg+2
+	set0 gpio_latch,pdata			// enable gpio fuction
+	hstore 1,core_lpm_reg+2
+	call lpm_write_ctrl2
+	nbranch loadcode,wake		// wakeup from hibernate
+	rtnmark0 mark_otp_encrypt
+	jam lock_otp,core_misc_ctrl	// disable further read/write of key
+	rtn 
+
+lpm_load_context:
+	fetch 1,mem_saved_spidctrl
+	hstore 1,core_spid_ctrl
+	fetch 3,mem_saved_gsel
+	hstore 3,core_gpio_sel
+	fetch 4,mem_saved_gpio+4
+	hstore 4,core_gpio_out0
+	fetch 4,mem_saved_gpio
+	hstore 4,core_gpio_oe0
+	fetch 8,mem_saved_gpio+8
+	hstore 8,core_gpio_pu0	
+	fetch 8,mem_saved_mark
+	iforce mark
+	hfetch 8,core_gpio_wakeup_low
+	store 8,mem_gpio_wakeup_low
+	call load_ucode
+	rtn
+
+lpm_save_context:
+	deposit mark
+	store 8,mem_saved_mark
+	hfetch 8,core_gpio_oe0
+	store 8,mem_saved_gpio
+	ifetch 8,contr
+	istore 8,contw
+	hfetch 3,core_gpio_sel
+	store 3,mem_saved_gsel
+	hfetch 1,core_spid_ctrl
+	store 1,mem_saved_spidctrl
+	branch lpm_write_gpio_wakeup
+
+lpo_calibration:
+	hfetch 1,core_bist_ctrl
+	nbranch lpo_cal_inited,blank
+	fetch 3,mem_clks_per_lpo
+	nrtn blank
+	jam 0xc0,core_bist_ctrl
+	jam ccnt_start,core_misc_ctrl
+lpo_cal_inited:
+	hfetch 1,core_perf_status
+	rtnbit0 1
+	hfetch 3,core_clk_counter
+	store 3,mem_clks_per_lpo
+	rtn
+
+
+	/* temp is synced clke */
+lpm_adjust_clk:
+	bpatch patch14_3,mem_patch14
+	deposit clke
+	call clk_diff_rt
+	fetcht 4,mem_sleep_counter_all
+	sub temp,0xff,null
+	rtn positive				// interval too small
+	lshift8 pdata,pdata
+	lshift4 pdata,pdata
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	arg param_lpm_adjmax,temp
+	call ceiling
+	store 1,mem_lpm_adjust
+	nbranch lpm_adjust_positive,user
+	sub pdata,0,pdata
+lpm_adjust_positive:
+	fetcht 3,mem_clks_per_lpo
+	iadd temp,pdata
+	store 3,mem_clks_per_lpo
+lpm_clear_counter:
+	setarg 0
+	store 4,mem_sleep_counter_all
+	rtn
+
+
+	/* temp is lpo counter for doze */
+lpm_doze:
+	fetch 1,mem_lpm_config+2
+	set1 reload_code,pdata
+	store 1,mem_lpm_config+2
+	branch lpm_hibernate_normal
+	
+
+	/* no retention memory at all */
+lpm_hibernate:
+	arg param_hibernate_clks,temp
+	fetch 1,mem_lpm_config+1
+	set0 7,pdata					/* lowest lpo */
+	store 1,mem_lpm_config+1
+lpm_hibernate_normal:
+	bpatch patch14_4,mem_patch14
+	call lpm_write_gpio_wakeup
+	fetch 1,mem_lpm_hibernate_switch
+	store 1,mem_lpm_xtalcnt + 4
+	fetch 1,mem_lpm_xtalcnt + 2
+	set1 cold_wake,pdata
+	store 1,mem_lpm_xtalcnt + 2
+
+	/* temp is lpo clocks to sleep */
+lpm_sleep:
+	bpatch patch14_5,mem_patch14
+	call xtal_fast_wake
+	fetch 4,mem_sleep_counter_all
+	iadd temp,pdata
+	store 4,mem_sleep_counter_all
+	call lpm_save_context
+	fetch 5,mem_lpm_xtalcnt
+	hstore 4,core_lpm_reg
+	rshift32 pdata,rega
+	until null,lpo_edge
+	deposit clkn
+	store 6,mem_sleep_clkn
+	jam lpmreg_sel_ctrl2,core_lpm_wr
+	until null,lpo_edge
+	until null,lpo_edge
+	deposit rega
+	hstore 1,core_lpm_isogate
+	jam lpmreg_sel_ctrl2,core_lpm_wr
+lpm_enter_sleep:
+	until null,lpo_edge
+	until null,lpo_edge
+	hstoret 4,core_lpm_reg
+	jam lpmreg_sel_counter,core_lpm_wr
+	until null,never
+
+
+
+
+lpm_recover_clk:
+	bpatch patch14_6,mem_patch14
+	setarg 0
+	copy auxcnt,null
+	branch lpm_recover_timeout,zero
+	hfetch 1,core_lpm_xtalcnt
+	hfetcht 1,core_lpm_buckcnt
+	isub temp,null
+	branch lpm_recover_xtal,positive
+	deposit temp
+lpm_recover_xtal:
+	isub auxcnt,pdata
+	increase 1,pdata
+lpm_recover_timeout:
+	increase 8,pdata
+	until null,lpo_edge
+	iadd lpo_time,pdata
+	fetcht 4,mem_sleep_counter
+	iadd temp,pdata
+	fetcht 3,mem_clks_per_lpo
+	imul32 temp,pdata
+	rshift8 pdata,pdata
+	rshift4 pdata,pdata
+	increase param_lpm_fix,pdata
+	arg 3750,temp
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	lshift16 pdata,pdata
+	remainder temp
+	ior temp,pdata
+	fetcht 6,mem_sleep_clkn
+	call clk_add
+	copy temp,clkn
+	fetch 6,mem_context + coffset_clk_offset
+	call calc_clke2
+	deposit clke
+	store 6,mem_pdatatemp
+	deposit auxcnt
+	istore 1,contw
+	hfetch 1,core_gpio_in1
+	or_into 0xf0,pdata
+	istore 1,contw
+	rtn
+	
+lpm_dispatch:
+	bpatch patch14_7,mem_patch14
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	fetch 1,mem_lpm_mode
+	rtn blank
+	fetch 1,mem_ssp_enable
+	branch lpm_dispatch_next,blank
+	fetch 1,mem_sp_local_key_invalid	// simple pairing is not ready
+	rtn blank
+lpm_dispatch_next:
+	fetch 1,mem_le_sc_calc
+	nrtn blank	
+	call lpm_check_wake_lock
+	nrtn blank
+	fetch 1,mem_context
+	compare 3,pdata,0x7							/* sco won't sleep */
+	nbranch lpm_dispatch_unconn,true
+	fetch 2,mem_context + coffset_tsniff
+	rtn blank										/* role switch */
+	rtn wake
+	bpatch patch15_0,mem_patch15
+lpm_dispatch_next2:
+	fetcht 1,mem_lpm_current_mult
+	fetch 2,mem_context + coffset_tsniff
+	imul32 temp,pdata
+	rshift4 temp,temp
+	rshift2 temp,temp
+	isub temp,pdata
+	fetcht 4,mem_context + coffset_sniff_anchor
+	iadd temp,pdata
+	fetcht 1,mem_lpm_overhead
+	isub temp,pdata
+	lshift16 pdata,alarm
+	bpatch patch15_1,mem_patch15
+	fetch 2,mem_context + coffset_rx_window
+	rshift pdata,pdata
+	call clk2bt
+	deposit alarm
+	call clk_diff
+	copy clke,temp
+	call clk_diff_rt
+	rtn user
+lpm_dispatch_sleep:
+	call clk2lpo
+lpm_dispatch_lpo:
+	bpatch patch15_2,mem_patch15
+	fetch 1,mem_lpm_xtalcnt
+	isub temp,null
+	branch lpm_clear_counter,positive
+	storet 4,mem_sleep_counter
+	call app_will_enter_lpm
+	call l2cap_lpm_save_txbuf
+	fetcht 4,mem_sleep_counter
+	branch lpm_sleep
+	
+lpm_dispatch_unconn:
+	bpatch patch15_3,mem_patch15
+	fetch 1,mem_context
+	rtnbit1 state_inconn					// wont sleep in connection
+	rtnbit1 state_inpage					// wont sleep when paging
+	fetch 1,mem_ssp_enable
+	branch lpm_unconn_nossp,blank
+	fetch 1,mem_sp_local_key_invalid	// simple pairing is not ready
+	rtn blank
+lpm_unconn_nossp:
+	bpatch patch15_4,mem_patch15
+	fetch 1,mem_le_adv_enable
+	nbranch lpm_unconn_cont,blank
+	fetch 1,mem_scan_mode
+	rtn blank
+lpm_unconn_cont:
+	fetch 2,mem_lpm_interval
+	rtn blank
+lpm_sleep_btclk:
+	fetcht 1,mem_lpm_overhead
+	isub temp,pdata
+	arg 7500,temp				/* 1.25ms */
+	imul32 temp,pdata
+	branch lpm_dispatch_sleep
+
+lpm_set_mult:
+	bpatch patch15_5,mem_patch15
+	disable wake
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	nbranch lpm_not_match,match
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_rx_window
+	fetch 1,mem_arq
+	bbit1 wack,lpm_mult_short
+	bmark0 mark_lpm_mult_enable,lpm_mult_short
+	call l2cap_malloc_is_fifo_empty
+	nbranch lpm_mult_short,blank
+	fetch 1,mem_classic_bt_flag
+	bbit1 SHORT_MULT_FLAG,lpm_mult_short
+lpm_mult_wait_timeout:
+	jam 0,mem_lpm_current_mult
+	bmark0 mark_lpm_mult_enable,lpm_mult_short
+	fetch 1,mem_lpm_mult_cnt
+	branch lpm_mult_long,blank
+	increase -1,pdata
+	store 1,mem_lpm_mult_cnt
+	rtn
+
+
+classic_bt_set_mult_short_flag:
+	arg SHORT_MULT_FLAG,queue
+	branch classic_bluetooth_set_flag
+	
+classic_bt_clr_mult_short_flag:
+	arg SHORT_MULT_FLAG,queue
+	branch classic_bluetooth_clr_flag
+
+
+
+lpm_match:
+	jam 0,mem_sniff_unint_lost
+	fetch 3,mem_sniff_rcv
+	increase 1,pdata
+	store 3,mem_sniff_rcv
+	rtn
+
+lpm_not_match:
+	bpatch patch15_6,mem_patch15
+	fetcht 2,mem_rx_window_sniff
+	rshift temp,temp
+	fetch 2,mem_rx_window
+	iadd temp,pdata
+	store 2,mem_rx_window
+lpm_lost:
+	jam 0,mem_lpm_current_mult
+	fetch 3,mem_sniff_lost
+	increase 1,pdata
+	store 3,mem_sniff_lost
+	fetch 1,mem_sniff_unint_lost
+	increase 1,pdata
+	store 1,mem_sniff_unint_lost
+	rtn
+
+lpm_mult_short:
+	jam 0,mem_lpm_current_mult
+	fetch 1,mem_lpm_mult_timeout
+	store 1,mem_lpm_mult_cnt
+	rtn
+
+lpm_mult_long:
+	fetcht 1,mem_lpm_mult
+	storet 1,mem_lpm_current_mult
+	rtn
+
+lpm_cal_xtal_startup:
+	bpatch patch15_7,mem_patch15
+	fetch 1,mem_lpm_xtalcnt
+	nrtn blank
+	jam clksel_rc,core_clksel
+	setarg 0xf0c
+	call lpm_write_config
+	setarg 200000
+	call sleep
+	until null,lpo_edge
+	copy lpo_time,alarm
+	call xtal_fast_wake
+	jam clksel_xtal,core_clksel
+	nop 10
+	until null,lpo_edge
+	deposit lpo_time
+	isub alarm,pdata
+	increase 0x30,pdata
+	arg 0xff,temp
+	call ceiling
+	store 1,mem_lpm_xtalcnt
+	nop 30000
+	nop 30000
+	nop 30000	
+	rtn
+
+lpm_cal_xtal_startup_by_snooze:
+	fetch 1,mem_lpm_xtalcnt
+	nrtn blank
+	jam 0xff,core_xtal_stable_time
+	jam clksel_rc,core_clksel
+	call xtal_fast_wake
+	setarg 1000
+	iadd lpo_time,alarm
+	snooze
+	deposit lpo_time
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	isub alarm,pdata
+	add pdata,0x30,pdata
+	arg 0xff,temp
+	call ceiling
+	store 1,mem_lpm_xtalcnt
+	nop 30000
+	nop 30000
+	nop 30000	//delay 90000 nop
+	rtn
+
+
+
+	/* pdata is lpm_reg[11:0] */
+lpm_write_config:
+	arg 0xfff,contw
+	iand contw,contw
+	fetch 1,mem_lpm_config
+	and_into 0xf0,pdata
+	lshift8 pdata,pdata
+	ior contw,pdata
+	hstore 2,core_lpm_reg
+	ifetch 2,contr
+	istore 2,contw
+
+lpm_write_ctrl:
+	setarg lpmreg_sel_ctrl
+	branch lpm_write
+
+lpm_write_ctrl2:
+	setarg lpmreg_sel_ctrl2
+lpm_write:
+	until null,lpo_edge
+	hstore 1,core_lpm_wr
+	until null,lpo_edge
+	until null,lpo_edge
+	rtn
+
+
+lpm_write_gpio_wakeup:
+	bpatch patch16_0,mem_patch16
+	fetch 4,mem_gpio_wakeup_low
+	hstore 4,core_lpm_reg
+	setarg lpmreg_sel_gpiolow
+	call lpm_write
+	fetch 4,mem_gpio_wakeup_high
+	hstore 4,core_lpm_reg
+	setarg lpmreg_sel_gpiohigh
+	branch lpm_write
+
+lpm_get_wake_lock:
+	fetch 2,mem_lpm_wake_lock
+	qset1 pdata
+	store 2,mem_lpm_wake_lock
+	rtn
+
+lpm_put_wake_lock:
+	fetch 2,mem_lpm_wake_lock
+	qset0 pdata
+	store 2,mem_lpm_wake_lock
+	rtn
+
+
+
+lpm_check_wake_lock:
+	bpatch patch16_1,mem_patch16
+	call app_check_wake_lock
+	fetch 2,mem_lpm_wake_lock
+	copy pdata,rega
+	fetch 1,mem_state_map
+	isolate1 smap_rxlmp,pdata
+	setflag true,wake_lock_lmp_rx,rega
+	fetch 1,mem_lmo_opcode1
+	fetcht 1,mem_lmo_opcode2
+	iadd temp,pdata
+	fetcht 1,mem_lmp_to_send
+	iadd temp,pdata
+	nsetflag blank,wake_lock_lmp_tx,rega
+	fetch 1,mem_le_tx_buff_used
+	nsetflag blank,wake_lock_ble_tx,rega
+	fetch 2,mem_l2cap_rxbuff1_len
+	fetcht 2,mem_l2cap_rxbuff2_len
+	iadd temp,pdata
+	nsetflag blank,wake_lock_l2cap_rx,rega
+	fetch UTIL_FIFO_LEN,mem_ipc_fifo_bt2c51
+	nsetflag blank,wake_lock_ipc_bt2c51,rega
+	fetch UTIL_FIFO_LEN,mem_ipc_fifo_c512bt
+	nsetflag blank,wake_lock_ipc_c512bt,rega
+	fetch 1,mem_hci_cmd
+	nsetflag blank,wake_lock_cmd,rega
+	fetch 1,mem_device_option
+	compare dvc_op_module,pdata,0xff
+	call lpm_uart_wake_lock,true
+	setarg -8
+	iand rega,rega
+	copy rega,pdata
+	store 2,mem_lpm_wake_lock
+	rtn
+
+lpm_uart_wake_lock:
+	hfetch 2,core_uart_rxitems
+	nsetflag blank,wake_lock_uart_rx ,rega
+	hfetch 2,core_uart_txitems
+	nsetflag blank,wake_lock_uart_tx ,rega
+	rtn
+
+lpm_shut_down:
+	hfetch 4,core_lpm_ctrl
+	set0 27,pdata
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	branch assert
+	
+lpm_disable_exen_output:
+	hfetch 4,core_lpm_xtalcnt
+	set0 20,pdata
+	hstore 4,core_lpm_reg
+	branch lpm_write_ctrl2
+
+check_bt_disabled:
+	fetch 2,mem_chip_functions
+	bbit1 bt_disabled,assert
+	rtn
+check_ble_disabled:
+	fetch 2,mem_chip_functions
+	bbit1 ble_disabled,assert
+	rtn
+check_module_disabled:
+	fetch 2,mem_chip_functions
+	bbit1 module_disable,assert
+	rtn
+
+
+
+
+
+
+
+//p_check_attempt_sniff:
+//	bbit0 state_insco,p_check_attempt_not_sco
+//	fetch 1,mem_current_sniff_attempt
+//	beq 2,p_check_attempt_sniff_restore_sco
+//	fetch 1,mem_arq
+//	bbit1 wack,p_check_attempt_notimeout
+//	bmark0 mark_esco_rxok,p_check_attempt_notimeout
+//p_check_attempt_sniff_restore_sco:
+//	nbranch p_check_attempt_notimeout,master
+//	fetch 1,mem_lmp_to_send
+//	nbranch p_check_attempt_notimeout,blank
+//p_check_attempt_sco_master:
+//	fetch 1,mem_sco_poll
+//	increase -1,pdata
+//	store 1,mem_sco_poll
+//	nbranch check_attempt_nomore,blank
+//	jam param_sco_poll,mem_sco_poll
+//	branch check_attempt_notimeout
+//p_check_attempt_not_sco:
+//	compare type_null,type,0x1f
+//	branch check_timeout,true
+//	compare type_poll,type,0x1f
+//	branch check_timeout,true
+//	branch check_anchor_end
+//p_check_attempt_notimeout:
+//check_atttemp_decrease:
+//	fetch 1,mem_current_sniff_attempt
+//	increase -1,pdata
+//	store 1,mem_current_sniff_attempt
+//	rtn
+//check_timeout:
+//	fetch 1,mem_sniff_timeout_temp
+//	increase 1,pdata
+//	store 1,mem_sniff_timeout_temp
+//check_anchor_end:
+//	fetch 1,mem_current_sniff_attempt
+//	branch check_anchor_end_attempt0,blank
+//	call check_atttemp_decrease
+//	nrtn blank
+//check_anchor_end_attempt0:  
+//	fetch 1,mem_sniff_timeout_temp
+//	fetcht 1,mem_current_sniff_timeout
+//	isub temp,null
+//	branch p_blank,positive
+//	arg 1,pdata
+//	rtn
+//p_blank:
+//	arg 0,pdata
+//	rtn
+
+
+
+
+g24_dispatch:
+	bpatch patch16_2,mem_patch16
+	call g24_head_ptr2regc
+	add regc,offset_24g_mode,regb
+	ifetch 1,regb
+	//fetch 1,mem_24g_mode
+	rtneq disable_24g
+	beq tx_24g,g24_transmit_process
+	beq rx_24g,g24_receive_process
+	rtn
+
+g24_head_ptr2regc:
+	fetcht 2,mem_24g_head_ptr
+	copy temp,regc
+	rtn
+
+g24_receive_process_init:
+	call g24_receive_init
+	branch g24_mode_switch_init
+
+g24_receive_process:
+	call g24_mode_switch
+	call g24_dongle_work_mode_auto
+	call g24_dongle_bind_mode_auto
+	branch g24_dongle_search_mode_auto
+	
+
+g24_pair_init:
+	//jam 0,mem_24g_pid
+	//jam G24_PAIR_CH,mem_24g_ch
+	call g24_set0_mem_pid
+	setarg G24_PAIR_CH
+	call g24_store_mem_ch
+	call g24_store_mem_pair_txpower
+	//fetch 4,mem_24g_paring_addr
+	//store 4,mem_24g_addr
+	add regc,offset_24g_paring_addr,rega
+	ifetch 4,rega
+	branch g24_store_mem_addr
+		
+g24_ch:
+	call g24_head_ptr2regc
+	add regc,offset_24g_current_ch_number,regb
+	ifetcht 1,regb
+	//fetcht 1,mem_24g_current_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	add regc,offset_24g_current_ch_number,contw
+	//storet 1,mem_24g_current_ch_number
+	branch g24_contw_istoret_1byte
+
+g24_ch_temp_incre_size4:
+	call g24_ch_calc
+	increase 1,temp
+	and_into 3,temp
+	rtn
+
+g24_ch_calc:
+	add regc,offset_24g_addr,regb
+	ifetch 1,regb
+	//fetch 1,mem_24g_addr
+	and_into 0x03,pdata
+	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+	add regc,offset_24g_ch_map1,pdata
+	//setarg mem_24g_ch_map1
+	iadd rega,pdata
+	iadd temp,contr
+	ifetch 1,contr
+	//store 1,mem_24g_ch
+	branch g24_store_mem_ch
+
+g24_set_device_addr:
+	call g24_store_mem_tx_power_temp
+	call otp_enable_chgpump
+	setarg 0x7e2
+	arg mem_temp,rega
+	arg 4,temp
+	call otpd_read_data
+	call otp_disable_chgpump
+	fetch 4,mem_temp	//adc data from otp
+	call g24_store_mem_device_addr
+	//store 4,mem_24g_device_addr	
+	nrtn blank
+	fetch 4,mem_lap
+	//store 4,mem_24g_device_addr
+	branch g24_store_mem_device_addr
+
+g24_transmit_rf_sta_init:
+	call g24_set1_mem_rf_last_sta
+	//jam 1,mem_24g_rf_last_sta
+	setarg 0
+	call g24_store_mem_sync_cnt
+	//jam 0,mem_24g_sync_cnt
+g24_transmit_rf_ctrl_clear:	
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	//store 1,mem_24g_data_type
+	branch g24_store_mem_data_type
+	
+g24_hop_ch_enable:
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	set1 bit_hop,pdata
+	call g24_store_mem_data_type
+	//store 1,mem_24g_data_type
+	//store 1,mem_24g_txpayload
+	branch g24_store_mem_txpayload
+	
+g24_transmit_hop_pac_fail:
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 1,g24_transmit_hop_pac_fail_wo_hop
+	beq 2,g24_transmit_hop_pac_fail_hop_stage2
+	rtn
+	
+g24_transmit_hop_pac_fail_wo_hop:
+	call g24_set2_mem_sync_cnt
+	//jam 2,mem_24g_sync_cnt
+g24_transmit_hop_pac_fail_stage1:
+	add regc,offset_24g_hop_pac_retry,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_hop_pac_retry
+	call g24_store_mem_rf_last_sta
+	//jam 0,mem_24g_rf_last_sta
+	branch g24_transmit_rf_ctrl_clear
+
+g24_transmit_hop_pac_fail_hop_stage2:
+	call g24_set0_mem_rf_hop_ch
+	//jam 0,mem_24g_rf_hop_ch
+	branch g24_transmit_hop_pac_fail_stage1
+
+g24_transmit_pac_fail_hop_stage3:
+	add regc,offset_24g_txfail_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_txfail_cnt
+	increase 1,pdata
+	add regc,offset_24g_txfail_cnt,contw
+	istore 1,contw
+	//store 1,mem_24g_txfail_cnt
+	beq 0x20,g24_tx_attempt_fail
+	call g24_fetch_mem_rf_hop_ch
+	//fetch 1,mem_24g_rf_hop_ch
+	beq 1,g24_rf_hop_fastly
+	setarg 1
+	call g24_store_mem_rf_hop_ch
+	//jam 1,mem_24g_rf_hop_ch
+g24_rf_hop_attemp_again:
+	call g24_fetch_mem_rf_hop_ch
+	//fetch 1,mem_24g_rf_hop_ch
+	bne 1,g24_transmit_rf_ctrl_clear
+g24_rf_hop_fastly:
+	add regc,offset_24g_hop_fastly_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_hop_fastly_cnt
+	increase 1,pdata
+	call g24_store_mem_hop_fastly_cnt
+	//store 1,mem_24g_hop_fastly_cnt
+	beq 4,g24_rf_hop_fastly_exit
+	call g24_ch
+	call g24_set2_mem_max_retry
+	//jam 2,mem_24g_max_retry
+	branch g24_transmit_packet
+
+g24_rf_hop_fastly_exit:
+	call g24_set0_mem_hop_fastly_cnt
+	//jam 0,mem_24g_hop_fastly_cnt
+	branch g24_transmit_rf_ctrl_clear
+
+g24_set0_mem_hop_fastly_cnt:
+	setarg 0
+g24_store_mem_hop_fastly_cnt:
+	add regc,offset_24g_hop_fastly_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_transmit_hop_pac_succ_wo_hop:
+	call g24_set2_mem_sync_cnt
+	//jam 2,mem_24g_sync_cnt
+g24_transmit_hop_pac_succ:
+	call g24_set0_mem_rf_hop_ch
+	//jam 0,mem_24g_rf_hop_ch
+	call g24_set1_mem_rf_last_sta
+	//jam 1,mem_24g_rf_last_sta
+	branch g24_transmit_rf_ctrl_clear
+
+g24_transmit_succ_rf_config:
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 3,g24_transmit_hop_pac_succ
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	isolate0 bit_hop,pdata
+	branch g24_transmit_rf_sta_init,true
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 1,g24_transmit_hop_pac_succ_wo_hop
+	beq 2,g24_transmit_hop_pac_succ
+	rtn
+
+g24_rf_sta_check:
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call g24_rf_laststa_synccnt_check
+	ncall g24_rf_sync_cnt_check,user2
+	rtn
+
+g24_rf_laststa_synccnt_check:
+	disable user2
+	add regc,offset_24g_rf_last_sta,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rf_last_sta
+	rtnne 1
+	add regc,offset_24g_sync_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_sync_cnt
+	rtnne 0
+	setarg 1
+	call g24_store_mem_rf_work_stage
+	//jam 1,mem_24g_rf_work_stage
+	call g24_set4_mem_max_retry
+	//jam 4,mem_24g_max_retry
+	branch enable_user2
+
+g24_rf_sync_cnt_check:
+	add regc,offset_24g_sync_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_sync_cnt
+	branch g24_rf_hop_attemp,blank
+	increase -1,pdata
+	call g24_store_mem_sync_cnt
+	//store 1,mem_24g_sync_cnt
+	setarg 2
+	call g24_store_mem_rf_work_stage
+	//jam 2,mem_24g_rf_work_stage
+	call g24_ch
+	//jam 4,mem_24g_max_retry
+	branch g24_set4_mem_max_retry
+
+g24_store_mem_rf_work_stage:
+	add regc,offset_24g_rf_work_stage,contw
+	branch g24_contw_istore_1byte
+
+
+g24_rf_hop_attemp:
+	setarg 3
+	call g24_store_mem_rf_work_stage
+	//jam 3,mem_24g_rf_work_stage
+	call g24_fetch_mem_rf_hop_ch
+	//fetch 1,mem_24g_rf_hop_ch
+	nbranch g24_rf_hop_attemp_again,blank
+	call g24_ch
+	//jam 2,mem_24g_max_retry
+g24_set2_mem_max_retry:	
+	setarg 2
+	branch g24_store_mem_max_retry
+
+g24_transmit_process:
+	rtnmark0 mark_24g
+	set1 mark_24g_conext,mark
+	bpatch patch16_3,mem_patch16
+	add regc,offset_24g_tx_without_int,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_tx_without_int
+	beq 1,g24_transmit_without_int
+	call g24_timer_check
+	nbranch g24_transmit_exit,user
+	call g24_interval_calibrate
+g24_transmit_without_int:
+	add regc,offset_24g_tx_without_int,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_tx_without_int
+	call g24_txdata_prep
+	nbranch g24_enter_lpm,user
+	call g24_rf_sta_check
+g24_transmit_start:
+	call g24_transmit_packet
+	call g24_power_ctrl
+g24_transmit_exit:
+	set0 mark_24g_conext,mark
+	rtn
+
+g24_timer_timeout:
+	rtn zero
+	set1 28,pdata
+	rtn
+
+g24_interval_calibrate:
+	add regc,offset_24g_pac_index,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_pac_index
+	increase 1,pdata
+	add regc,offset_24g_pac_index,contw
+	istore 1,contw
+	//store 1,mem_24g_pac_index
+	beq 4,g24_interval_max
+	beq 5,g24_interval_min
+	rtn
+g24_interval_max:
+	add regc,offset_24g_interval_max,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_interval_max
+g24_interval_update:	
+	//store 1,mem_24g_interval
+	add regc,offset_24g_interval,contw
+	branch g24_contw_istore_1byte
+
+g24_interval_min:
+	add regc,offset_24g_pac_index,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_pac_index
+	add regc,offset_24g_interval_min,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_interval_min
+	branch g24_interval_update
+
+g24_txdata_prep:
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,g24_pairing_sm
+	bpatch patch16_4,mem_patch16
+	call g24_package_data
+	nbranch g24_txdata_last_pac,user
+	call g24_transmit_prep
+	call g24_power_ctrl_pac_incrs
+g24_txdata_enable_tx:
+	//jam ENSURE_ON_24G,mem_24g_ensure
+	setarg ENSURE_ON_24G
+g24_store_mem_ensure:	
+	add regc,offset_24g_ensure,contw
+	branch g24_contw_istore_1byte
+
+g24_txdata_last_pac:
+	add regc,offset_24g_ensure,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_ensure
+	beq ENSURE_ON_24G,enable_user
+	rtn
+
+g24_package_data:
+	//rega:length,regb:contr
+	add regc,offset_24g_cb_data,temp
+	ifetch 2,temp
+	//fetch 2,mem_24g_cb_data
+	call callback_func
+	nrtn user
+	copy rega,pdata
+	store 1,mem_rega
+	add regc,offset_24g_abort_pac,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_abort_pac
+	call g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_common_temp
+	fetch 1,mem_rega
+	copy pdata,rega
+	add rega,1,temp
+	arg mem_24g_common_temp+1,contw
+	copy rega,loopcnt
+	copy regb,contr
+	call memcpy
+	arg mem_24g_common_temp,rega
+g24_put_data_in_buff:
+	rtnmark0 mark_24g_conext
+	add regc,offset_24g_datalen,contw
+	istoret 1,contw
+	//storet 1,mem_24g_datalen
+	copy temp,loopcnt
+	add regc,offset_24g_txbuf,contw
+	//arg mem_24g_txbuf,contw
+	copy rega,contr
+	branch memcpy
+
+g24_transmit_prep:
+// total length
+	add regc,offset_24g_datalen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_datalen
+	increase 2,pdata
+	add regc,offset_24g_txlen,contw
+	istore 1,contw
+	//store 1,mem_24g_txlen
+// data type
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	call g24_store_mem_txpayload
+	//store 1,mem_24g_txpayload
+//prepare 5bit payload length, 2bit PID, 1bit NO_ACK
+	add regc,offset_24g_datalen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_datalen
+	lshift3 pdata,pdata
+	add regc,offset_24g_pid,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_pid
+	and temp,0x03,temp
+	lshift temp,temp
+	ior temp,pdata
+	add regc,offset_24g_no_ack,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_no_ack
+	iadd temp,pdata
+	istore 1,contw
+//prepare payload data
+	add regc,offset_24g_datalen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_datalen
+	iforce loopcnt
+	add regc,offset_24g_txbuf,contr
+	//arg mem_24g_txbuf,contr
+	branch memcpy
+
+g24_send_abort_packet:
+	call g24_set1_mem_abort_pac
+	//jam 1,mem_24g_abort_pac
+	call g24_set0_mem_rf_hop_ch
+	//jam 0,mem_24g_rf_hop_ch
+	call g24_power_ctrl_reinit
+	call g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_common_temp
+	call g24_put_data_in_buff_pre
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	set1 bit_abort,pdata
+	call g24_store_mem_data_type
+	//store 1,mem_24g_data_type
+	call g24_transmit_prep
+	call g24_txdata_enable_tx
+	branch g24_transmit_start
+
+g24_put_data_in_buff_pre:
+	store 1,mem_24g_common_temp+1
+	call g24_fetch_mem_device_addr
+	//fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	branch g24_put_data_in_buff
+
+g24_enter_lpm:
+	add regc,offset_24g_abort_pac,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_abort_pac
+	branch g24_send_abort_packet,blank
+g24_enter_lpm_prepare:
+ 	// some thing need to do and do not enter 24g long sleep
+	add regc,offset_24g_cb_lpm_prepare,rega
+	ifetch 2,rega
+	//fetch 2,mem_24g_cb_lpm_prepare
+	branch callback_func
+
+g24_lpm_long_sleep:
+	call g24_head_ptr2regc
+	//fetch 8,mem_24g_enter_hibernate
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	add regc,offset_24g_cb_lpm_before,temp
+	ifetch 2,temp
+	//fetch 2,mem_24g_cb_lpm_before
+	call callback_func
+	add regc,offset_24g_enter_hibernate,temp
+	ifetch 8,temp
+	call clk2lpo
+	storet 4,mem_sleep_counter
+  	branch lpm_sleep
+
+g24_transmit_packet:
+	call g24_head_ptr2regc
+	add regc,offset_24g_retry,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_retry
+g24_transmit_loop:
+	call g24_transmit_receive_ack
+	nbranch g24_retransmit,sync
+	nbranch g24_retransmit,user3
+	call g24_ackpayload_parse
+	call g24_power_ctrl_ack_incrs
+g24_transmit_next_packet:
+	call g24_head_ptr2regc
+	add regc,offset_24g_pid,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_pid
+	increase 1,pdata
+	call g24_store_mem_pid
+	//store 1,mem_24g_pid
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,g24_paring_mode
+	call g24_transmit_succ_rf_config
+g24_transmit_abandon:
+	setarg 0
+	add regc,offset_24g_txfail_cnt,contw
+	istore 2,contw	//include mem_24g_get_ack_fail
+	//store 1,mem_24g_txfail_cnt
+	//store 1,mem_24g_get_ack_fail
+	//jam ENSURE_OFF_24G,mem_24g_ensure
+	setarg ENSURE_OFF_24G
+	branch g24_store_mem_ensure
+
+	
+g24_transmit_receive_ack:
+	disable user3
+	call g24_transmit
+	call g24_head_ptr2regc
+	add regc,offset_24g_no_ack,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_no_ack
+	beq no_ack_24g,g24_transmit_no_ack	//tx no ack
+	call g24_receive_packet
+	branch g24_end_of_packet
+g24_transmit_no_ack:
+	call g24_end_of_packet
+	branch g24_transmit_next_packet
+
+
+g24_retransmit:
+	bpatch patch16_5,mem_patch16
+	add regc,offset_24g_get_ack_fail,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_get_ack_fail
+	increase 1,pdata
+	add regc,offset_24g_get_ack_fail,contw
+	istore 1,contw
+	//store 1,mem_24g_get_ack_fail
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,g24_tx_paring_retry
+	add regc,offset_24g_retry,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_retry
+	increase 1,temp
+	add regc,offset_24g_retry,contw
+	istoret 1,contw
+	//storet 1,mem_24g_retry
+	add regc,offset_24g_max_retry,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_max_retry
+	isub temp,pdata
+	nbranch g24_transmit_loop,blank
+	bpatch patch16_6,mem_patch16
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 3,g24_transmit_pac_fail_hop_stage3
+	add regc,offset_24g_hop_pac_retry,rega
+	ifetch 1,rega	
+	//fetch 1,mem_24g_hop_pac_retry
+	increase 1,pdata
+	add regc,offset_24g_hop_pac_retry,contw
+	istore 1,contw
+	//store 1,mem_24g_hop_pac_retry
+	beq 2,g24_transmit_hop_pac_fail
+	call g24_hop_ch_enable
+	setarg 1
+	call g24_store_mem_max_retry
+	//jam 1,mem_24g_max_retry
+	branch g24_transmit_packet
+
+g24_tx_paring_retry:
+	add regc,offset_24g_get_ack_fail,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_get_ack_fail
+	rtnne 0xff
+	add regc,offset_24g_get_ack_fail,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_get_ack_fail
+	branch g24_stop_24g_mode
+
+g24_tx_attempt_fail:
+	add regc,offset_24g_txfail_cnt,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_txfail_cnt
+g24_stop_24g_mode:
+	jam BT_EVT_24G_ATTEMPT_FAIL,mem_fifo_temp
+	branch ui_ipc_send_event
+
+g24_ackpayload_parse:
+	call g24_read_len_pid_crc
+	add regc,offset_24g_rxdata_length,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxdata_length	//ack payload length 
+	rtn blank
+	iforce loopcnt
+	add regc,offset_24g_rxbuf_add2,contr
+	//arg mem_24g_rxbuf+2,contr
+	add regc,offset_24g_rxpayload,contw	
+	//arg mem_24g_rxpayload,contw	//ack payload buffer 
+	branch memcpy
+
+
+g24_read_len_pid_crc:
+//read control
+	call g24_fetch_mem_rxbuf_add1
+	//fetch 1,mem_24g_rxbuf+1
+	rshift3 pdata,pdata
+	add regc,offset_24g_rxdata_length,contw
+	istore 1,contw
+	//store 1,mem_24g_rxdata_length
+//get crc
+	increase 1,pdata
+	add regc,offset_24g_rxbuf_add1,contr
+	//arg mem_24g_rxbuf+1,contr
+	iadd contr,contr
+	ifetch 3,contr
+	add regc,offset_24g_sta_crc,contw
+	istore 3,contw
+	//store 3,mem_24g_sta_crc
+//read pid
+	call g24_fetch_mem_rxbuf_add1
+	//fetch 1,mem_24g_rxbuf+1
+	rshift pdata,pdata
+	and pdata,0x03,pdata
+	add regc,offset_24g_sta_pid,contw
+	istore 1,contw
+	//store 1,mem_24g_sta_pid
+	rtn
+
+g24_prep:
+	disable enable_crc
+	disable enable_white
+	setarg 0x555555
+	iforce crc24_init
+	rtn
+
+g24_set_freq_tx:
+	call set_sync_on
+	add regc,offset_24g_ch,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_ch
+	branch set_freq_tx
+
+g24_transmit:
+	call g24_prep
+	call g24_set_freq_tx
+	set1 TXGFSK,radio_ctrl
+	enable encode_fec0
+	enable is_tx
+	disable is_rx
+	call le_enable
+	call g24_fetch_mem_addr
+	//fetch 4,mem_24g_addr
+	iforce access
+	inject mod,32
+	enable enable_crc
+	add regc,offset_24g_txlen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_txlen
+	iforce loopcnt
+	add regc,offset_24g_txpayload,contr
+	//arg mem_24g_txpayload,contr
+g24tr_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop g24tr_loop
+	enable enable_parity
+	inject mod,24	//crc
+	disable enable_parity
+	until null,tx_clear
+	bpatch patch16_7,mem_patch16
+	nop 100
+	disable encode_fec0
+	rtn
+
+g24_receive_packet:
+	disable user3
+	force 0,radio_ctrl
+	add regc,offset_24g_ch,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_ch
+	call set_freq_rx
+	call rf_rx_enable
+g24_receive_rxon:
+	call g24_prep
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	call le_enable
+	call g24_fetch_mem_addr
+	//fetch 4,mem_24g_addr
+	iforce access
+	enable swfine
+	add regc,offset_24g_rx_window,rega
+	ifetch 2,rega
+	//fetch 2,mem_24g_rx_window
+	iforce stop_watch
+	correlate null,timeout
+	nbranch g24_sync_timeout,sync
+	enable enable_crc
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	add regc,offset_24g_rxbuf,contw
+	istore 1,contw	
+	//store 1,mem_24g_rxbuf	//device id
+	add regc,offset_24g_mode,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_mode
+	beq rx_24g,g24_receive_skip
+	bpatch patch17_0,mem_patch17
+	add regc,offset_24g_rxbuf,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxbuf
+	add regc,offset_24g_data_type,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_data_type
+	icompare bits_data,temp
+	nbranch g24_end_of_packet,true
+g24_receive_skip:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	rshift3 pdata,pdata
+	and pdata,0x1f,loopcnt	//max payload: 32bytes
+	branch g24rx_nopayload,zero
+g24rx_loop:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop g24rx_loop
+g24rx_nopayload:
+	parse demod,bucket,24
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	branch g24_end_of_packet,crc_failed
+	enable user3
+	disable decode_fec0
+	rtn
+//	branch rssi_signal
+
+g24_end_of_packet:
+	disable encode_fec0
+	disable decode_fec0
+	disable enable_crc
+	disable enable_white
+	branch shutdown_radio,is_rx
+	until null,tx_clear
+	nop 100          /* flush out the last bit */
+	branch shutdown_radio
+
+g24_sync_timeout:
+	call rssi_noise
+	branch g24_end_of_packet
+
+rssi_noise:
+	call save_rssi
+	rtn blank
+	add regc,offset_rssi_noise_index,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_rssi_noise_index
+	arg mem_rssi_noise_buffer,rega
+	//arg mem_rssi_noise_buf,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_index,contw
+	//storet 1,mem_rssi_noise_index
+g24_contw_istoret_1byte:	
+	istoret 1,contw
+	rtn
+
+rssi_noise_store:
+	arg RSSI_BUF_LEN_NOISE,regb
+	branch rssi_store
+	
+/*	
+rssi_signal:
+	call save_rssi
+	rtn blank
+	add regc,offset_rssi_signal_index,rega
+	ifetcht 1,rega	
+	//fetcht 1,mem_rssi_signal_index
+	add regc,offset_rssi_signal_buf,rega
+	//arg mem_rssi_signal_buf,rega
+	arg RSSI_BUF_LEN_SIGNAL,regb
+	call rssi_store
+	add regc,offset_rssi_signal_index,contw
+	istoret 1,contw	
+	//storet 1,mem_rssi_signal_index
+	rtn
+*/	
+rssi_store:	
+	copy rega,pdata
+	iadd temp,contw
+	fetch 1,mem_rssi
+	istore 1,contw
+	increase 1,temp
+	copy regb,pdata
+	iand_into temp
+	rtn
+	
+rssi_average:
+	arg 0,temp
+	copy rega,contr
+rssi_average_loop:	
+	ifetch 1,contr
+	iadd temp,temp
+	loop rssi_average_loop
+	rshift8 temp,temp
+	rtn
+
+g24_power_ctrl_init:
+	call g24_head_ptr2regc
+	call g24_power_ctrl_incrs_level1
+	setarg 1
+	call g24_store_mem_power_ctrl_level
+	//jam 1,mem_power_ctrl_level
+g24_power_ctrl_reinit:
+	setarg 0
+	call g24_store_mem_power_ctrl_pac
+	//jam 0,mem_power_ctrl_packet_cnt
+	istore 1,contw
+	//jam 0,mem_power_ctrl_ack_cnt
+	rtn
+
+g24_power_ctrl_pac_incrs:
+	call g24_fetch_mem_power_ctrl_pac
+	//fetch 1,mem_power_ctrl_packet_cnt
+	increase 1,pdata
+g24_store_mem_power_ctrl_pac:	
+	//store 1,mem_power_ctrl_packet_cnt
+	add regc,offset_power_ctrl_packet_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_power_ctrl_ack_incrs:
+	//fetch 1,mem_power_ctrl_ack_cnt
+	//store 1,mem_power_ctrl_ack_cnt
+	add regc,offset_power_ctrl_ack_cnt,rega
+	ifetch 1,rega
+	increase 1,pdata
+	add regc,offset_power_ctrl_ack_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_power_ctrl:
+	bpatch patch17_1,mem_patch17
+	call g24_fetch_mem_power_ctrl_pac
+	//fetch 1,mem_power_ctrl_packet_cnt
+	sub pdata,POWER_CTRL_MAX_PACKET_CNT,null
+	rtn positive
+	add regc,offset_power_ctrl_ack_cnt,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_power_ctrl_ack_cnt
+	isub temp,temp	//loss packet cnt
+	call g24_power_ctrl_reinit
+	setarg offset_power_ctrl_threshold_up
+	iadd regc,rega
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_threshold_up
+	isub temp,null
+	nbranch g24_power_ctrl_incrs,positive
+	setarg offset_power_ctrl_threshold_down
+	iadd regc,rega
+	ifetch 1,rega	
+	//fetch 1,mem_power_ctrl_threshold_down
+	isub temp,null
+	branch g24_power_ctrl_decrs,positive
+	rtn
+
+g24_power_ctrl_incrs:	
+	add regc,offset_power_ctrl_level,rega
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_level
+	beq 2,g24_power_ctrl_incrs_level2
+	increase 1,pdata
+	call g24_store_mem_power_ctrl_level
+	//store 1,mem_power_ctrl_level
+	beq 1,g24_power_ctrl_incrs_level1
+g24_power_ctrl_incrs_level2:
+	setarg POWER_CTRL_LOSSPAC_THRESH_UP2
+	call g24_store_mem_power_ctrl_threshold_up
+	//jam POWER_CTRL_LOSSPAC_THRESH_UP2,mem_power_ctrl_threshold_up
+	setarg POWER_CTRL_LOSSPAC_THRESH_DOWN2
+	call g24_store_mem_power_ctrl_threshold_down
+	//jam POWER_CTRL_LOSSPAC_THRESH_DOWN2,mem_power_ctrl_threshold_down
+//	jam POWER_CTRL_RSSI_THRESH_DOWN2,mem_rssi_ctrl_threshold_down
+	add regc,offset_power_ctrl_txpwr_level2,rega
+	//fetch 1,mem_power_ctrl_txpwr_level2
+	branch g24_ifetch_rega_store_mem_txpower
+
+g24_power_ctrl_decrs:
+	add regc,offset_power_ctrl_level,rega
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_level
+	beq 0,g24_power_ctrl_decrs_level0
+	increase -1,pdata
+	call g24_store_mem_power_ctrl_level
+	//store 1,mem_power_ctrl_level
+	beq 0,g24_power_ctrl_decrs_level0
+g24_power_ctrl_decrs_level1:
+//	call rssi_check_distance
+//	nrtn user
+g24_power_ctrl_incrs_level1:
+	setarg POWER_CTRL_LOSSPAC_THRESH_UP1
+	call g24_store_mem_power_ctrl_threshold_up
+	//jam POWER_CTRL_LOSSPAC_THRESH_UP1,mem_power_ctrl_threshold_up
+	setarg POWER_CTRL_LOSSPAC_THRESH_DOWN1
+	call g24_store_mem_power_ctrl_threshold_down
+	//jam POWER_CTRL_LOSSPAC_THRESH_DOWN1,mem_power_ctrl_threshold_down
+//	jam POWER_CTRL_RSSI_THRESH_DOWN1,mem_rssi_ctrl_threshold_down
+	setarg offset_power_ctrl_txpwr_level1
+g24_iadd_offset_mem_txpower:	
+	iadd regc,rega
+g24_ifetch_rega_store_mem_txpower:	
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_txpwr_level1
+	branch g24_store_mem_txpower
+	
+g24_power_ctrl_decrs_level0:
+//	call rssi_check_distance
+//	nrtn user
+	setarg POWER_CTRL_LOSSPAC_THRESH_UP0
+	call g24_store_mem_power_ctrl_threshold_up
+	//jam POWER_CTRL_LOSSPAC_THRESH_UP0,mem_power_ctrl_threshold_up
+	setarg POWER_CTRL_LOSSPAC_THRESH_DOWN0
+	call g24_store_mem_power_ctrl_threshold_down
+	//jam POWER_CTRL_LOSSPAC_THRESH_DOWN0,mem_power_ctrl_threshold_down
+//	jam POWER_CTRL_RSSI_THRESH_DOWN0,mem_rssi_ctrl_threshold_down
+	setarg offset_power_ctrl_txpwr_level0
+	//fetch 1,mem_power_ctrl_txpwr_level0
+	branch g24_iadd_offset_mem_txpower
+
+/*
+rssi_check_distance:
+	disable user
+	arg mem_rssi_signal_buf,rega
+	arg RSSI_BUF_LEN_SIGNAL+1,loopcnt
+	call rssi_average
+	storet 1,mem_rssi_signal_avg
+	fetch 1,mem_rssi_ctrl_threshold_down
+	isub temp,null
+	branch enable_user,positive
+	rtn
+*/
+g24_start_pairing_sm1:
+	set1 mark_24g,mark
+	call g24_pair_init
+g24_set_pairing_sm_1:
+	//jam STATE_24G_PAIRING_1,mem_24g_pairing_sm
+	setarg STATE_24G_PAIRING_1
+	branch g24_store_mem_pairing_sm
+
+g24_pairing_sm:
+	add regc,offset_24g_ensure,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_ensure
+	beq ENSURE_ON_24G,enable_user
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	beq STATE_24G_PAIRING_1,g24_pairing_sm_1
+	beq STATE_24G_PAIRING_2,g24_pairing_sm_2
+	beq STATE_24G_PAIRING_3,g24_pairing_sm_3
+	branch assert
+
+g24_pairing_sm_1:
+	setarg STATE_24G_PAIRING_1_WAITING_ACK
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_1_WAITING_ACK,mem_24g_pairing_sm
+	jam 0xaa,mem_24g_common_temp
+	branch g24_pairing_sm_common
+g24_pairing_sm_2:
+	setarg STATE_24G_PAIRING_2_WAITING_ACK
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_2_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x55,mem_24g_common_temp
+	branch g24_pairing_sm_common
+g24_pairing_sm_3:
+	setarg STATE_24G_PAIRING_3_WAITING_ACK
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_3_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x22,mem_24g_common_temp
+g24_pairing_sm_common:
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	store 1,mem_24g_common_temp+1
+	call g24_fetch_mem_device_addr
+	//fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+g24_put_pairing_data_in_buff:
+	jam 0,mem_24g_common_temp+6
+	arg mem_24g_common_temp,rega
+	arg 7,temp
+	call g24_put_data_in_buff	
+	call g24_transmit_prep
+	call g24_txdata_enable_tx
+	branch enable_user
+
+g24_paring_mode:
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	rtneq STATE_24G_PAIRING_SUCCESS
+	beq STATE_24G_PAIRING_1_WAITING_ACK,g24_pairing_sm_1_waiting_ack
+	beq STATE_24G_PAIRING_2_WAITING_ACK,g24_pairing_sm_2_waiting_ack
+	beq STATE_24G_PAIRING_3_WAITING_ACK,g24_pairing_sm_3_waiting_ack
+	rtn
+
+g24_pairing_sm_1_waiting_ack:
+	setarg STATE_24G_PAIRING_2
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_2,mem_24g_pairing_sm
+	branch g24_transmit_abandon
+g24_pairing_sm_2_waiting_ack:
+	setarg STATE_24G_PAIRING_3
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_3,mem_24g_pairing_sm
+	branch g24_transmit_abandon
+g24_pairing_sm_3_waiting_ack:
+	setarg STATE_24G_PAIRING_SUCCESS
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_SUCCESS,mem_24g_pairing_sm
+	jam BT_EVT_24G_PAIRING_COMPLETE,mem_fifo_temp
+	call ui_ipc_send_event
+	add regc,offset_24g_rxpayload_add2,rega
+	ifetch 4,rega
+	//fetch 4,mem_24g_rxpayload+2
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	branch g24_transmit_abandon
+
+g24_auto_pair_start:
+	set0 mark_24g,mark
+	call g24_auto_pair_set_device_info
+	call g24_tx_attemp_data_prep
+g24_auto_pair_restart:	
+	call g24_set0_mem_check_dongle_times
+g24_auto_pair_start_loop:
+	nop 2000
+	call g24_fetch_mem_check_dongle_times
+	beq 0xff,g24_stop_24g_mode
+	call g24_transmit_receive_ack
+	nbranch g24_auto_pair_retry,sync
+	nbranch g24_auto_pair_retry,user3
+	call g24_ackpayload_parse
+	call g24_head_ptr2regc
+	add regc,offset_24g_paring_addr,rega
+	ifetcht 4,rega
+	call g24_fetch_mem_addr_isub_temp
+	branch g24_start_pairing_sm1,zero
+	call g24_head_ptr2regc
+	add regc,offset_24g_rxpayload_add2,rega
+	ifetch 4,rega
+	beq 0,g24_auto_pair_restart
+	call g24_store_mem_addr
+	branch g24_tx_attemp_dongle_succ
+
+g24_auto_pair_retry:
+	call g24_fetch_mem_check_dongle_times
+	increase 1,pdata
+	call g24_store_mem_check_dongle_times
+
+	call g24_fetch_mem_auto_paring_switch
+	increase 1,pdata
+	and_into 1,pdata
+	call g24_store_mem_auto_paring_switch
+	beq 0,g24_auto_pair_device_attemp
+	beq 1,g24_auto_pair_pair_attemp
+	rtn
+
+g24_fetch_mem_auto_paring_switch:
+	setarg offset_24g_auto_pair_switch
+	branch g24_set_rega_ifetch_1byte
+g24_store_mem_auto_paring_switch:
+	arg offset_24g_auto_pair_switch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_auto_pair_set_device_info:
+	call g24_store_mem_tx_power
+	call g24_fetch_mem_device_addr
+	call g24_store_mem_addr
+	branch g24_ch
+
+g24_auto_pair_device_attemp:
+	call g24_auto_pair_set_device_info
+	branch g24_auto_pair_start_loop
+
+g24_auto_pair_pair_attemp:
+	call g24_pair_init
+	branch g24_auto_pair_start_loop
+
+
+g24_start_24g_mode:
+	set0 mark_24g,mark
+	call g24_ch
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call g24_tx_attemp_data_prep
+	call g24_set0_mem_check_dongle_times
+	//jam 0,mem_24g_check_dongle_times
+g24_tx_attemp_dongle_loop:
+	nop 2000
+	call g24_fetch_mem_check_dongle_times
+	//fetch 1,mem_24g_check_dongle_times
+	beq 0xff,g24_stop_24g_mode
+	call g24_transmit_receive_ack
+	nbranch g24_attemp_txdata_retry,sync
+	nbranch g24_attemp_txdata_retry,user3
+g24_tx_attemp_dongle_succ:	
+	set1 mark_24g,mark
+	call g24_set0_mem_check_dongle_times
+	setarg STATE_24G_PAIRING_SUCCESS
+	call g24_store_mem_pairing_sm
+	//jam 0,mem_24g_check_dongle_times
+g24_app_tx_attempt_success:
+	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
+	branch ui_ipc_send_event
+
+g24_tx_attemp_data_prep:
+	set1 mark_24g_conext,mark
+	jam 0xff,mem_24g_common_temp
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	call g24_put_data_in_buff_pre
+	branch g24_transmit_prep
+	
+g24_attemp_txdata_retry:
+	call g24_fetch_mem_check_dongle_times
+	//fetch 1,mem_24g_check_dongle_times
+	increase 1,pdata
+	call g24_store_mem_check_dongle_times
+	//store 1,mem_24g_check_dongle_times
+	call g24_ch
+	branch g24_tx_attemp_dongle_loop
+
+g24_check_51cmd_start_24g:
+	call g24_store_mem_tx_power
+	//fetch 1,mem_tx_power_temp
+	//store 1,mem_tx_power
+	setarg STATE_24G_PAIRING_SUCCESS
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_SUCCESS,mem_24g_pairing_sm
+	branch g24_start_24g_mode
+/*	
+g24_check_51cmd_stop_24g:
+	call g24_store_mem_tx_power
+	set0 mark_24g,mark
+	branch le_disable
+*/
+
+
+dongle_init:
+	bpatch patch17_2,mem_patch17
+	call g24_head_ptr2regc
+	setarg dongle_rxdata_type1
+	add regc,offset_24g_cb_rxdata_type1,contw
+	istore 2,contw
+	//store 2,mem_24g_cb_rxdata_type1
+	call g24_receive_init
+	call usb_init
+	call g24_fetch_mem_pair_mode
+	//fetch 1,mem_24g_pair_mode
+	bpatch patch17_3,mem_patch17
+	beq 0x00,dongle_auto_bind
+	beq 0x01,dongle_pc_bind
+	beq 0x0f,dongle_all_powerful
+	branch assert
+
+g24_receive_init:
+	call g24_store_mem_tx_power_temp
+	arg 0x80,loopcnt
+	arg mem_rssi_noise_buffer,contw
+	branch memset0
+
+dongle_all_powerful:
+	call dongle_check_mode
+dongle_all_powerful_loop:
+	call g24_dongle_work_mode
+	call usb_isr
+	branch dongle_all_powerful_loop
+
+dongle_pc_bind:
+	bpatch patch17_4,mem_patch17
+	call dongle_check_mode
+dongle_pc_bind_loop:	
+	call g24_dongle_work_mode
+	call g24_dongle_bind_mode
+	call usb_isr
+	call dongle_usb_dispatch
+	branch dongle_pc_bind_loop
+
+dongle_check_mode:
+	//jam DONGLE_WORK,mem_dongle_work_mode
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	//jam 0,mem_24g_ackpayload_enable
+	call g24_set_work_mem_dongle_work_mode
+	call g24_set0_mem_dongle_mode_init
+	branch g24_set0_mem_ackpayload_enable
+	
+g24_dongle_work_mode:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_WORK
+g24_dongle_work_mode_start:
+	call g24_dongle_work_init
+	call g24_ch_process
+	call g24_receive_packet_start
+	branch g24_blank_data_process
+
+g24_dongle_work_init:
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	rtnbit1 DONGLE_WORK
+	set1 DONGLE_WORK,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_store_mem_tx_power
+	//fetch 1,mem_tx_power_temp
+	//store 1,mem_tx_power
+	call g24_set0_mem_ackpayload_enable
+	//jam 0,mem_24g_ackpayload_enable
+	jam 0,mem_usb_tx_enable
+	call g24_set1_mem_abort_pac
+	//jam 1,mem_24g_abort_pac
+	call g24_dongle_init
+g24_rx_interrupt_clear:
+	add regc,offset_24g_rxbuf,contw
+	//arg mem_24g_rxbuf,contw
+	arg 66,loopcnt
+	branch clear_mem
+
+g24_dongle_init:
+	call g24_set0_mem_pid
+	//jam 0,mem_24g_pid
+	call g24_fetch_mem_rx_addr
+	//fetch 4,mem_24g_rx_addr
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	branch g24_ch
+
+g24_ch_process:
+	bpatch patch17_5,mem_patch17
+	call g24_fetch_mem_abort_pac
+	//fetch 1,mem_24g_abort_pac
+	beq 1,g24_noise_rssi
+	call g24_fetch_mem_hop_pac
+	//fetch 1,mem_24g_hop_pac
+	beq 1,g24_ch	
+	setarg offset_24g_hop_btclk
+	iadd regc,rega
+	ifetcht 4,rega
+	//fetcht 4,mem_24g_hop_btclk
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall g24_timer_timeout,positive
+	copy pdata,regb
+	setarg offset_24g_hop_btclk
+	iadd regc,rega
+	ifetch 4,rega
+	copy pdata,temp
+	//fetch 4,mem_24g_hop_btclk
+	setarg offset_24g_hop_interval
+	iadd regc,rega
+	copy temp,pdata
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_hop_interval
+	iadd temp,temp
+	copy regb,pdata
+	isub temp,null
+	nrtn positive
+	set0 28,pdata
+	setarg offset_24g_hop_btclk
+	iadd regc,contw
+	istore 4,contw
+	//store 4,mem_24g_hop_btclk
+g24_ch_update:
+	call g24_ch
+	call g24_fetch_mem_rf_laststa
+	//fetch 1,mem_24g_rf_laststa
+	increase 1,pdata
+	call g24_store_mem_rf_laststa
+	//store 1,mem_24g_rf_laststa
+	rtnne 2
+	call g24_set0_mem_rf_laststa
+	//jam 0,mem_24g_rf_laststa
+	//jam 1,mem_24g_abort_pac
+	//rtn
+	branch g24_set1_mem_abort_pac
+	
+g24_ch_timer_reinit:
+	copy clkn_bt,pdata
+	arg offset_24g_hop_btclk,rega
+	call g24_set_contw_with_temp
+	istore 4,contw
+	//store 4,mem_24g_hop_btclk
+	//jam 0,mem_24g_rf_laststa
+	//rtn
+	branch g24_set0_mem_rf_laststa
+
+g24_noise_rssi:
+	arg mem_rssi_noise_buffer,rega
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive	
+	branch g24_ch
+
+g24_noise_rssi_average:
+	arg RSSI_BUF_LEN_NOISE+1,loopcnt
+	branch rssi_average
+
+g24_blank_data_process:
+	call g24_ms_blank_data
+	call g24_kb_blank_data
+	branch g24_kb_mul_blank_data
+
+g24_ms_blank_data:
+	setarg offset_24g_ms_blank_data_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_blank_data_enable
+	rtn blank
+	arg TIMER_MS_BLANK,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_ms_blank_data_enable
+	//jam 0,mem_24g_ms_blank_data_enable
+g24_ms_blank_data_2usb:
+	setarg MS_REPORT_ID
+	store 1,mem_usb_mouse_data
+	setarg 0
+	istore 7,contw
+	branch g24_data_type1_usbtx_enable
+
+g24_kb_blank_data:
+	setarg offset_24g_kb_blank_data_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_blank_data_enable
+	rtn blank
+	arg TIMER_KB_BLANK,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_kb_blank_data_enable
+	//jam 0,mem_24g_kb_blank_data_enable
+g24_kb_blank_data_2usb:	
+	arg mem_usb_kb_data,contw
+	arg 2,loopcnt
+	call memset0
+	jam KB_NORMAL_REPORT_ID,mem_usb_kb_data
+	branch g24_kb_data_into_ep1_fifo
+
+g24_kb_mul_blank_data:
+	setarg offset_24g_kb_mul_blank_data_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_mul_blank_data_enable
+	rtn blank
+	arg TIMER_KB_MUL_BLANK,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_kb_mul_blank_data_enable
+	//jam 0,mem_24g_kb_mul_blank_data_enable
+g24_kb_mul_blank_data_2usb:
+	arg mem_usb_kb_multikey,contw
+	arg 2,loopcnt
+	call memset0
+	jam KB_MULTIKEY_REPORT_ID,mem_usb_kb_multikey
+	branch g24_kb_mul_data_into_ep2_fifo
+
+g24_dongle_bind_mode:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_BIND
+	call g24_dongle_bind_init
+	branch g24_dongle_bind_data_process
+
+g24_dongle_bind_init:
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	rtnbit1 DONGLE_BIND
+	set1 DONGLE_BIND,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_set1_mem_ackpayload_enable
+	//jam 1,mem_24g_ackpayload_enable
+	call g24_pair_init
+	setarg 0
+	arg offset_dongle_ms_bind_step,rega
+	call g24_set_contw_with_temp
+	//store 3,mem_dongle_ms_bind_step
+	branch g24_contw_istore_3byte
+
+g24_dongle_bind_data_process:
+	call g24_receive_transmit_ack
+	nbranch g24_rx_interrupt_clear,user3	
+	add regc,offset_24g_rxbuf,contr
+	setarg offset_24g_rxdata_temp
+	iadd regc,contw
+	arg 8,loopcnt
+	call memcpy
+	setarg offset_24g_rxdata_temp_add2
+	call g24_set_rega_ifetch_1byte
+	beq DATATYPE_BIND,g24_dongle_bind_first_step	//bind step 1
+	beq DATATYPE_CONFIG,g24_dongle_bind_second_step
+	beq DATATYPE_OK,g24_dongle_bind_third_step
+	beq 0xff,g24_data_attemp
+	branch g24_rx_interrupt_clear
+
+g24_dongle_bind_first_step:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	beq BIND_MOUSE,g24_dongle_bind_first_step_mouse
+	beq BIND_KEYBOARD,g24_dongle_bind_first_step_keyboard
+	rtn
+g24_dongle_bind_first_step_mouse:
+	setarg 1
+	call g24_store_mem_ms_bind_step
+	//jam 1,mem_dongle_ms_bind_step
+g24_dongle_bind_ms_payload_cfg:
+	setarg DATATYPE_MOUSE
+	call g24_store_mem_bind_payload
+	//jam DATATYPE_MOUSE,mem_24g_bind_payload
+g24_dongle_bind_payload_cfg:	
+	setarg 0x80
+	arg offset_24g_bind_payload_add1,rega
+	call g24_set_contw_with_regb_store_1byte
+	//jam 0x80,mem_24g_bind_payload+1
+	call g24_fetch_mem_rx_addr
+	//fetch 4,mem_24g_rx_addr
+	arg offset_24g_bind_payload_add2,rega
+	call g24_set_contw_with_temp
+	//store 4,mem_24g_bind_payload+2
+	branch g24_contw_istore_4byte
+
+g24_dongle_bind_first_step_keyboard:
+	setarg 1
+	call g24_store_mem_kb_bind_step
+	//jam 1,mem_dongle_kb_bind_step
+g24_dongle_bind_kb_payload_cfg:
+	setarg DATATYPE_KEYBOARD
+	call g24_store_mem_bind_payload
+	//jam DATATYPE_KEYBOARD,mem_24g_bind_payload
+	branch g24_dongle_bind_payload_cfg
+		
+g24_dongle_bind_second_step:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	beq BIND_MOUSE,g24_dongle_bind_second_step_mouse
+	beq BIND_KEYBOARD,g24_dongle_bind_second_step_keyboard
+	rtn
+g24_dongle_bind_second_step_mouse:
+	call g24_dongle_bind_ms_payload_cfg
+	setarg offset_dongle_ms_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_ms_bind_step
+	beq 1,g24_dongle_ms_bind_step_set2
+	rtn
+g24_dongle_ms_bind_step_set2:
+	setarg 2
+	//jam 2,mem_dongle_ms_bind_step
+g24_store_mem_ms_bind_step:
+	arg offset_dongle_ms_bind_step,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_dongle_bind_second_step_keyboard:
+	call g24_dongle_bind_kb_payload_cfg
+	setarg offset_dongle_kb_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_kb_bind_step
+	beq 1,g24_dongle_kb_bind_step_set2
+	rtn
+g24_dongle_kb_bind_step_set2:
+	setarg 2
+	//jam 2,mem_dongle_kb_bind_step
+g24_store_mem_kb_bind_step:
+	arg offset_dongle_kb_bind_step,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_dongle_bind_third_step:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	beq BIND_MOUSE,g24_dongle_bind_third_step_mouse
+	beq BIND_KEYBOARD,g24_dongle_bind_third_step_keyboard
+	rtn
+g24_dongle_bind_third_step_mouse:
+	setarg offset_dongle_ms_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_ms_bind_step
+	beq 2,g24_dongle_ms_bind_step_success
+	rtn
+g24_dongle_ms_bind_step_success:
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	or_into 0x01,pdata
+	call g24_store_mem_bind_device_status
+	//store 1,mem_dongle_bind_device_status
+g24_dongle_bind_exit:	
+	setarg 0
+	setarg offset_dongle_ms_bind_step
+	iadd regc,contw
+	istore 2,contw
+	branch g24_rx_interrupt_clear
+
+g24_dongle_bind_third_step_keyboard:
+	setarg offset_dongle_kb_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_kb_bind_step
+	bne 0,g24_dongle_kb_bind_step_success
+	rtn
+g24_dongle_kb_bind_step_success:
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	or_into 0x02,pdata
+	call g24_store_mem_bind_device_status
+	//store 1,mem_dongle_bind_device_status
+	branch g24_dongle_bind_exit
+
+	
+dongle_usb_dispatch:
+	fetch 1,mem_usb0_get_set_report
+	rtn blank
+	jam 0,mem_usb0_get_set_report
+	fetch 2,mem_usb_setup_bValue_temp
+	arg PC_SET_REPORT,temp
+	isub temp,null
+	nrtn zero
+	//get usb host command
+	fetch 1,mem_usb0_set_report_data
+	rtnne PC_REPORT_ID
+	fetch 1,mem_usb0_set_report_data+1
+	bpatch patch17_6,mem_patch17
+	beq COMMAND_MODE,dongle_dispose_cmd_mode
+	beq COMMAND_BIND,dongle_dispose_cmd_bind
+	beq COMMAND_CURRENT_PROJECT,dongle_dispose_cmd_current_project
+	beq COMMAND_CURRENT_MODE,dongle_dispose_cmd_current_mode
+	beq COMMAND_CURRENT_FW_VERSION,dongle_dispose_cmd_current_fw_version
+	beq COMMAND_USER_DEFINED,dongle_dispose_cmd_user_defined
+usb0_data_ready_report_set0:
+	jam 0,mem_usb0_data_ready_report
+	rtn
+dongle_dispose_cmd_bind:
+	fetch 1,mem_usb0_set_report_data+2
+	beq COM_BIND_GET,dongle_dispose_cmd_get_bind
+	beq COM_BIND_EXIT,dongle_dispose_cmd_exit_bind
+	beq COM_READ_MODE,dongle_dispose_cmd_read_mode
+	branch usb0_data_ready_report_set0
+dongle_dispose_cmd_get_bind:
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	store 1,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+dongle_dispose_cmd_exit_bind:
+	call g24_set_work_mem_dongle_work_mode
+	//jam DONGLE_WORK,mem_dongle_work_mode
+	call g24_set0_mem_dongle_mode_init
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	store 1,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_read_mode:
+dongle_dispose_in_bind_mode:
+	jam COMMAND_BIND,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_mode:
+	fetch 1,mem_usb0_set_report_data+2
+	beq COM_MODE_BIND,dongle_enter_bind_mode
+//	beq COM_MODE_TEST,dongle_enter_test_mode
+	branch usb0_data_ready_report_set0
+dongle_enter_bind_mode:
+	//jam DONGLE_BIND,mem_dongle_work_mode
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	call g24_bind_mode_enable
+usb0_data_ready_report_set1:
+	jam 1,mem_usb0_data_ready_report
+	rtn
+//dongle_enter_test_mode:
+//	jam DONGLE_TEST,mem_dongle_work_mode
+//	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_current_project:
+	jam PRODUCT_ID,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_current_mode:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	beq DONGLE_WORK,dongle_dispose_in_work_mode
+	beq DONGLE_BIND,dongle_dispose_in_bind_mode
+//	beq DONGLE_TEST,dongle_dispose_in_test_mode
+	rtn
+dongle_dispose_in_work_mode:
+	jam COMMAND_MODE,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+//dongle_dispose_in_test_mode:
+//	jam COMMAND_TEST,mem_usb0_get_report_data+1
+//	branch usb0_data_ready_report_set1
+	
+dongle_dispose_cmd_current_fw_version:
+	jam FW_VERSION0,mem_usb0_get_report_data+1
+	jam FW_VERSION1,mem_usb0_get_report_data+2
+	jam FW_VERSION2,mem_usb0_get_report_data+3
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_user_defined:
+	//report_id|cmd|data_len|data
+	call g24_set1_mem_ackpayload_enable
+	fetch 1,mem_usb0_set_report_data+2	//data_len:max 30bytes
+	increase 2,pdata
+	copy pdata,loopcnt
+	arg mem_usb0_set_report_data,contr
+	setarg offset_24g_ackpayload
+	iadd regc,contw
+	branch memcpy
+
+
+dongle_auto_bind:
+	bpatch patch17_7,mem_patch17
+	call g24_mode_switch_init
+dongle_auto_bind_loop:
+	call g24_receive_process
+	call usb_isr
+	branch dongle_auto_bind_loop
+
+g24_dongle_work_mode_auto:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_WORK
+	call g24_dongle_work_mode_start
+	branch g24_rx_nodata_process
+
+g24_dongle_bind_mode_auto:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_BIND
+	call g24_dongle_bind_init
+	call g24_dongle_bind_data_process
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	rtn blank
+	call g24_set0_mem_mode_switch
+	//jam 0,mem_24g_mode_switch
+	call dongle_check_mode
+	call g24_enable_nodata_timer
+g24_timer_init:
+	setarg 0
+	add regc,offset_24g_tx_btclk,contw
+	//store 4,mem_24g_tx_btclk
+	branch g24_contw_istore_4byte
+
+g24_timer_check:
+	call disable_user
+	add regc,offset_24g_tx_btclk,rega
+	ifetcht 4,rega	
+	//fetcht 4,mem_24g_tx_btclk
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall g24_timer_timeout,positive
+	copy pdata,regb
+	add regc,offset_24g_tx_btclk,rega
+	ifetch 4,rega
+	//fetch 4,mem_24g_tx_btclk
+	add regc,offset_24g_interval,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_interval
+	iadd temp,temp
+	copy regb,pdata
+	isub temp,null
+	nrtn positive
+	set0 28,pdata
+	add regc,offset_24g_tx_btclk,contw
+	istore 4,contw
+	//store 4,mem_24g_tx_btclk
+	branch enable_user
+
+g24_mode_switch_init:
+	setarg 1
+	call g24_store_mem_mode_switch
+	//jam 1,mem_24g_mode_switch
+	call g24_set0_mem_time_slice
+	//jam 0,mem_24g_time_slice
+	setarg 0xff
+	add regc,offset_24g_interval,contw
+	istore 1,contw
+	//jam 0xff,mem_24g_interval
+	branch g24_timer_init
+
+g24_mode_switch:
+	setarg offset_24g_mode_switch
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_mode_switch
+	rtn blank
+	call g24_timer_check
+	nrtn user
+	call g24_fetch_mem_time_slice
+	//fetch 1,mem_24g_time_slice
+	increase 1,pdata
+	and_into 1,pdata
+	call g24_store_mem_time_slice
+	//store 1,mem_24g_time_slice
+	beq 0,dongle_check_mode
+	beq 1,g24_bind_mode_enable
+	rtn
+
+g24_bind_mode_enable:
+	//jam DONGLE_BIND,mem_dongle_work_mode
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	//rtn
+	setarg DONGLE_BIND
+	call g24_store_mem_dongle_work_mode
+	branch g24_set0_mem_dongle_mode_init
+
+g24_enable_nodata_timer:
+	setarg 1
+	call g24_store_mem_nodata_timer_enable
+	//jam 1,mem_24g_nodata_timer_enable
+g24_enable_nodata_timer_init:
+	setarg TIMER_NODATA_DELAY
+	arg TIMER_NODATA,queue
+	branch timer_init
+
+g24_rx_nodata_process:
+	call g24_fetch_mem_nodata_timer_enable
+	//fetch 1,mem_24g_nodata_timer_enable
+	rtn blank
+	arg TIMER_NODATA,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_nodata_timer_enable
+	//jam 0,mem_24g_nodata_timer_enable
+	//no data for more than 100ms,then go to search
+	setarg DONGLE_SEARCH
+	call g24_store_mem_dongle_work_mode	
+	//jam DONGLE_SEARCH,mem_dongle_work_mode
+	call g24_set0_mem_dongle_mode_init
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	branch g24_rx_interrupt_clear
+
+g24_dongle_search_mode_auto:
+	bpatch patch18_0,mem_patch18
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_SEARCH
+	call g24_dongle_search_mode_init
+	call g24_rx_auto_addr_ch_search
+	call g24_receive_transmit_ack
+	nbranch g24_rx_interrupt_clear,user3
+	//dongle addr,then parse rxdata
+	call g24_dongle_search_addr_check
+	call g24_receive_packet_parse,zero
+	//receive data,then go to paired
+	//jam DONGLE_WORK,mem_dongle_work_mode
+	//jam 0,mem_24g_ackpayload_enable
+	call dongle_check_mode
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	set1 DONGLE_WORK,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_rx_interrupt_clear
+	call g24_enable_nodata_timer
+	call g24_dongle_search_addr_check
+	branch g24_dg_ch_num_reinit,zero
+	setarg offset_24g_kb_addr
+	call g24_set_rega_ifetcht_4byte
+	//fetcht 4,mem_24g_kb_addr
+	call g24_fetch_mem_addr_isub_temp
+	branch g24_kb_ch_num_reinit,zero		
+	setarg offset_24g_mouse_addr
+	call g24_set_rega_ifetcht_4byte
+	//fetcht 4,mem_24g_mouse_addr
+	call g24_fetch_mem_addr_isub_temp
+	branch g24_ms_ch_num_reinit,zero
+	rtn
+
+g24_dongle_search_addr_check:
+	setarg offset_24g_rx_addr
+	call g24_set_rega_ifetcht_4byte
+	//fetcht 4,mem_24g_rx_addr
+g24_fetch_mem_addr_isub_temp:
+	call g24_fetch_mem_addr
+	//fetch 4,mem_24g_addr
+	isub temp,null
+	rtn
+
+g24_dg_ch_num_reinit:
+	setarg offset_24g_dg_ch_number
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_dg_ch_number
+g24_current_ch_num_reinit:
+	//store 1,mem_24g_current_ch_number
+	add regc,offset_24g_current_ch_number,contw
+	branch g24_contw_istore_1byte
+
+g24_kb_ch_num_reinit:
+	setarg offset_24g_kb_ch_number
+	call g24_set_rega_ifetch_1byte	
+	//fetch 1,mem_24g_kb_ch_number
+	branch g24_current_ch_num_reinit
+g24_ms_ch_num_reinit:
+	setarg offset_24g_ms_ch_number
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_ch_number
+	branch g24_current_ch_num_reinit
+
+g24_dongle_search_mode_init:
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	rtnbit1 DONGLE_SEARCH
+	set1 DONGLE_SEARCH,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_set0_mem_time_slice
+	//jam 0,mem_24g_time_slice
+	call g24_set1_mem_ackpayload_enable
+	//jam 1,mem_24g_ackpayload_enable
+	setarg 0
+	add regc,offset_rssi_noise_dg_index,contw
+	istore 3,contw
+	//store 3,mem_rssi_noise_dg_index
+	arg offset_24g_dg_config_ch_once,rega
+	call g24_set_contw_with_temp
+	istore 7,contw
+	//store 7,mem_24g_dg_config_ch_once
+
+	call g24_dongle_search_addr_check
+	nrtn zero
+	add regc,offset_24g_current_ch_number,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_current_ch_number
+	arg offset_24g_dg_ch_number,rega
+	call g24_set_contw_with_regb_store_1byte
+	//store 1,mem_24g_dg_ch_number
+	add regc,offset_24g_ch,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_ch
+	//store 1,mem_24g_dg_last_ch
+	branch g24_store_mem_dg_last_ch
+
+g24_rx_auto_addr_ch_search:
+	bpatch patch18_1,mem_patch18
+	call g24_fetch_mem_time_slice
+	//fetch 1,mem_24g_time_slice
+	increase 1,pdata
+	and_into 3,pdata
+	call g24_store_mem_time_slice
+	//store 1,mem_24g_time_slice
+	//pairing address and channel come first
+	beq 0,g24_rx_auto_bind_config_kb
+	beq 1,g24_rx_auto_bind_config_dongle
+	beq 2,g24_rx_auto_bind_config_mouse
+	beq 3,g24_rx_auto_bind_config_dongle
+	rtn
+
+g24_rx_auto_bind_config_mouse:
+	call g24_dongle_bind_ms_payload_cfg
+	setarg offset_24g_mouse_addr
+	call g24_set_rega_ifetch_4byte
+	//fetch 4,mem_24g_mouse_addr
+	branch g24_rx_auto_addr_ch_search,blank
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	setarg offset_24g_ms_config_ch_once
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_config_ch_once
+	call g24_ms_config_ch_once,blank
+	setarg offset_24g_ms_last_ch
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_last_ch
+	call g24_store_mem_ch
+	//store 1,mem_24g_ch
+	add regc,offset_rssi_noise_ms_index,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_rssi_noise_ms_index
+	arg mem_rssi_noise_ms_buffer,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_ms_index,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_ms_index
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_ms_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_ms_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive
+	setarg offset_24g_ms_ch_number	
+	call g24_set_rega_ifetcht_1byte
+	//fetcht 1,mem_24g_ms_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	arg offset_24g_ms_ch_number,rega
+	call g24_set_contw_with_regb2
+	istoret 1,contw
+	//storet 1,mem_24g_ms_ch_number
+g24_store_mem_ms_last_ch:
+	//store 1,mem_24g_ms_last_ch
+	arg offset_24g_ms_last_ch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_ms_config_ch_once:
+	setarg 1
+	arg offset_24g_ms_config_ch_once,rega
+	call g24_set_contw_with_regb_store_1byte
+	//jam 1,mem_24g_ms_config_ch_once
+	arg 0,temp
+	call g24_ch_calc
+	//store 1,mem_24g_ms_last_ch
+	//rtn
+	branch g24_store_mem_ms_last_ch
+	
+g24_rx_auto_bind_config_kb:
+	call g24_dongle_bind_kb_payload_cfg
+	setarg offset_24g_kb_addr
+	call g24_set_rega_ifetch_4byte
+	//fetch 4,mem_24g_kb_addr
+	branch g24_rx_auto_addr_ch_search,blank
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	setarg offset_24g_kb_config_ch_once
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_config_ch_once
+	call g24_kb_config_ch_once,blank
+	setarg offset_24g_kb_last_ch
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_last_ch
+	call g24_store_mem_ch
+	//store 1,mem_24g_ch
+	add regc,offset_rssi_noise_kb_index,rega
+	ifetcht 1,rega	
+	//fetcht 1,mem_rssi_noise_kb_index
+	arg mem_rssi_noise_kb_buffer,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_kb_index,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_kb_index
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_kb_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_kb_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive
+	setarg offset_24g_kb_ch_number	
+	call g24_set_rega_ifetcht_1byte	
+	//fetcht 1,mem_24g_kb_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	arg offset_24g_kb_ch_number,rega
+	call g24_set_contw_with_regb2	
+	istoret 1,contw
+	//storet 1,mem_24g_kb_ch_number
+g24_store_mem_kb_last_ch:
+	//store 1,mem_24g_kb_last_ch
+	arg offset_24g_kb_last_ch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_kb_config_ch_once:
+	setarg 1
+	arg offset_24g_kb_config_ch_once,rega
+	call g24_set_contw_with_regb_store_1byte
+	//jam 1,mem_24g_kb_config_ch_once
+	arg 0,temp
+	call g24_ch_calc
+	//store 1,mem_24g_kb_last_ch
+	//rtn
+	branch g24_store_mem_kb_last_ch
+
+g24_rx_auto_bind_config_dongle:
+	call g24_dongle_bind_ms_payload_cfg
+	call g24_fetch_mem_rx_addr
+	//fetch 4,mem_24g_rx_addr
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	setarg offset_24g_dg_config_ch_once
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_dg_config_ch_once
+	call g24_dg_config_ch_once,blank
+	call g24_dg_store_config_ch
+	add regc,offset_rssi_noise_dg_index,rega
+	ifetcht 1,rega	
+	//fetcht 1,mem_rssi_noise_dg_index
+	arg mem_rssi_noise_dg_buffer,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_dg_index,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_dg_index
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_dg_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_dg_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive
+	setarg offset_24g_dg_ch_number	
+	call g24_set_rega_ifetcht_1byte	
+	//fetcht 1,mem_24g_dg_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	arg offset_24g_dg_ch_number,rega
+	call g24_set_contw_with_regb2
+	istoret 1,contw
+	//storet 1,mem_24g_dg_ch_number
+g24_store_mem_dg_last_ch:
+	//store 1,mem_24g_dg_last_ch
+	//rtn
+	arg offset_24g_dg_last_ch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+
+g24_dg_config_ch_once:
+	//jam 1,mem_24g_dg_config_ch_once
+	//fetch 1,mem_24g_dg_last_ch
+	//store 1,mem_24g_ch
+	//rtn
+	setarg 1
+	arg offset_24g_dg_config_ch_once,rega
+	call g24_set_contw_with_regb_store_1byte
+g24_dg_store_config_ch:
+	setarg offset_24g_dg_last_ch
+	call g24_set_rega_ifetch_1byte
+	branch g24_store_mem_ch
+
+
+g24_transmit_ack:
+//data type
+	add regc,offset_24g_rxbuf,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxbuf
+	call g24_store_mem_data_type
+	//store 1,mem_24g_data_type
+//read len pid crc
+	call g24_read_len_pid_crc
+//read ack
+	call g24_fetch_mem_rxbuf_add1
+	//fetch 1,mem_24g_rxbuf+1
+	isolate1 bit_ack_24g,pdata
+	branch g24tx_no_ack,true
+g24tx_with_ack:
+	call g24_ackpayload_prep
+	call g24_transmit_prep
+	call g24_transmit
+g24tx_no_ack:
+	branch g24_end_of_packet
+
+g24_ackpayload_prep:
+	bpatch patch18_2,mem_patch18
+	add regc,offset_24g_datalen,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_datalen
+	setarg offset_24g_ackpayload_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ackpayload_enable
+	rtn blank
+	setarg 0x06
+	add regc,offset_24g_datalen,contw
+	istore 1,contw
+	//jam 0x06,mem_24g_datalen
+	arg 0x06,loopcnt
+	setarg offset_24g_bind_payload
+	iadd regc,contr
+	//arg mem_24g_bind_payload,contr
+	add regc,offset_24g_txbuf,contw
+	//arg mem_24g_txbuf,contw
+	branch memcpy
+
+
+g24_receive_packet_start:
+	call g24_receive_transmit_ack
+	nbranch g24_rx_interrupt_clear,user3
+	branch g24_receive_packet_parse
+
+g24_receive_transmit_ack:
+	call g24_rx_interrupt_clear
+	call g24_receive_packet
+	nrtn user3
+	branch g24_transmit_ack
+
+g24_receive_packet_parse:
+	bpatch patch18_3,mem_patch18
+	call g24_receive_packet_parse_pid_crc
+	nbranch g24_rx_interrupt_clear,user
+	add regc,offset_24g_rxdata_length,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxdata_length
+	branch g24_rx_interrupt_clear,blank
+	increase 2,pdata
+	iforce loopcnt
+	add regc,offset_24g_rxbuf,contr
+	//arg mem_24g_rxbuf,contr
+	setarg offset_24g_rxdata_temp
+	iadd regc,contw
+	//arg mem_24g_rxdata_temp,contw
+	call memcpy
+	call g24_set0_mem_mode_switch
+	//jam 0,mem_24g_mode_switch
+	call g24_fetch_mem_pair_mode
+	//fetch 1,mem_24g_pair_mode
+	call g24_enable_nodata_timer,blank
+	setarg offset_24g_rxdata_temp_add2
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_rxdata_temp+2
+	beq 0x01,g24_data_type1
+	beq 0x02,g24_data_type2
+	beq 0x03,g24_data_type3
+	beq 0xff,g24_data_attemp
+	branch g24_rx_interrupt_clear
+
+g24_receive_packet_parse_pid_crc:
+	call g24_head_ptr2regc
+	call disable_user
+	add regc,offset_24g_sta_pid,rega
+	ifetch 1,rega		
+	//fetch 1,mem_24g_sta_pid
+	add regc,offset_24g_last_pid,rega
+	ifetcht 1,rega		
+	//fetcht 1,mem_24g_last_pid
+	isub temp,null
+	ncall enable_user,zero
+	add regc,offset_24g_sta_pid,rega
+	ifetch 1,rega	
+	//fetch 1,mem_24g_sta_pid
+	add regc,offset_24g_last_pid,contw
+	istore 1,contw	
+	//store 1,mem_24g_last_pid
+	add regc,offset_24g_sta_crc,rega
+	ifetch 3,rega	
+	//fetch 3,mem_24g_sta_crc
+	add regc,offset_24g_last_crc,rega
+	ifetcht 3,rega	
+	//fetcht 3,mem_24g_last_crc
+	isub temp,null
+	ncall enable_user,zero
+	add regc,offset_24g_sta_crc,rega
+	ifetch 3,rega
+	//fetch 3,mem_24g_sta_crc
+	add regc,offset_24g_last_crc,contw
+	//store 3,mem_24g_last_crc
+	branch g24_contw_istore_3byte
+
+g24_data_type1:
+	call g24_ch_timer_reinit
+	call g24_fetch_mem_abort_pac
+	store 1,mem_temp
+	//fetch 1,mem_24g_abort_pac
+	call g24_fetcht_mem_rxdata_temp
+	fetch 1,mem_temp
+	//fetcht 1,mem_24g_rxdata_temp
+	isolate1 bit_abort,temp
+	setflag true,0,pdata
+	add regc,offset_24g_abort_pac,contw
+	istore 1,contw
+	//store 1,mem_24g_abort_pac
+	beq 1,g24_data_attemp_mouse
+	call g24_fetch_mem_hop_pac
+	//fetch 1,mem_24g_hop_pac
+	call g24_fetcht_mem_rxdata_temp
+	//fetcht 1,mem_24g_rxdata_temp
+	isolate1 bit_hop,temp
+	setflag true,0,pdata
+	call g24_store_mem_hop_pac
+	//store 1,mem_24g_hop_pac
+	add regc,offset_24g_cb_rxdata_type1,rega
+	ifetch 2,rega
+	//fetch 2,mem_24g_cb_rxdata_type1
+	branch callback_func
+
+dongle_rxdata_type1:
+	setarg MS_REPORT_ID
+	store 1,mem_usb_mouse_data	//report id
+	call g24_fetch_mem_rxdata_temp_add3_7byte
+	//fetch 7,mem_24g_rxdata_temp+3	//key
+	istore 7,contw
+	call g24_fetch_mem_rxdata_temp_add3_7byte
+	//fetch 7,mem_24g_rxdata_temp+3	//key
+	ncall g24_ms_enable_blank_data_forcibly,blank//get kb data
+	call g24_fetch_mem_rxdata_temp_add3_7byte
+	//fetch 7,mem_24g_rxdata_temp+3	//key
+	call g24_ms_disable_blank_data_forcibly,blank
+g24_data_type1_usbtx_enable:
+	jam USB_EP2_MS,mem_usb_ep2_data
+g24_data_type1_usbtx_enable_ep2:	
+	fetch 1,mem_usb_tx_enable
+	set1 2,pdata
+	store 1,mem_usb_tx_enable
+	rtn
+	
+g24_ms_enable_blank_data_forcibly:
+	setarg 1
+	call g24_store_mem_ms_blank_data_enable	
+	//jam 1,mem_24g_ms_blank_data_enable
+g24_ms_enable_blank_data_timer:
+	setarg TIMER_MS_BLANK_DELAY
+	arg TIMER_MS_BLANK,queue
+	branch timer_init
+g24_ms_disable_blank_data_forcibly:
+	call g24_set0_mem_ms_blank_data_enable
+	//jam 0,mem_24g_ms_blank_data_enable
+g24_ms_disable_blank_data_timer:	
+	setarg 0
+	arg TIMER_MS_BLANK,queue
+	branch timer_init
+	
+g24_data_type2:
+	call g24_fetcht_mem_rxdata_temp
+	//fetcht 1,mem_24g_rxdata_temp
+	isolate1 bit_abort,temp
+	branch g24_data_attemp_kbd,true
+	arg mem_usb_kb_data,contw
+	call g24_data_type2_reverse_data
+	fetch 8,mem_usb_kb_data
+	ncall g24_kb_enable_blank_data_forcibly,blank//get kb data
+	fetch 8,mem_usb_kb_data
+	call g24_kb_disable_blank_data_forcibly,blank
+	call g24_head_ptr2regc
+	fetch 8,mem_usb_kb_data
+	arg offset_24g_kb_data_sta_data,rega
+	call g24_set_contw_with_temp
+	istore 8,contw
+	//store 8,mem_24g_kb_data_sta_data
+	setarg offset_24g_kb_data_last_data
+	iadd regc,rega
+	ifetcht 8,rega
+	//fetcht 8,mem_24g_kb_data_last_data
+	isub temp,null
+	ncall g24_kb_data_dispose,zero
+	setarg offset_24g_kb_data_sta_data
+	iadd regc,rega
+	ifetch 8,rega
+	//fetch 8,mem_24g_kb_data_sta_data
+	arg offset_24g_kb_data_last_data,rega
+	call g24_set_contw_with_temp
+	istore 8,contw
+	//store 8,mem_24g_kb_data_last_data
+	branch g24_rx_interrupt_clear
+
+g24_data_type2_reverse_data:
+	setarg offset_24g_rxdata_temp_add2
+	iadd regc,contr
+	//arg mem_24g_rxdata_temp+2,contr
+	arg 9,loopcnt
+	branch reverse_byte
+
+g24_kb_enable_blank_data_forcibly:
+	setarg 1
+	call g24_store_mem_kb_blank_data_enable
+	//jam 1,mem_24g_kb_blank_data_enable
+g24_kb_enable_blank_data_timer:	
+	setarg TIMER_KB_BLANK_DELAY
+	arg TIMER_KB_BLANK,queue
+	branch timer_init
+
+g24_kb_disable_blank_data_forcibly:
+	call g24_set0_mem_kb_blank_data_enable
+	//jam 0,mem_24g_kb_blank_data_enable
+g24_kb_disable_blank_data_timer:	
+	setarg 0
+	arg TIMER_KB_BLANK,queue
+	branch timer_init
+
+g24_kb_data_dispose:
+g24_kb_data_into_ep1_fifo:
+	jam USB_EP1_KB,mem_usb_ep1_data
+	fetch 1,mem_usb_tx_enable
+	set1 1,pdata
+	store 1,mem_usb_tx_enable
+	rtn
+
+g24_data_type3:
+	arg mem_usb_kb_multikey,contw
+	call g24_data_type2_reverse_data
+	fetch 2,mem_usb_kb_multikey+1
+	ncall g24_kb_mul_enable_blank_data_forcibly,blank//get multikey data
+	fetch 2,mem_usb_kb_multikey+1
+	call g24_kb_mul_disable_blank_data_forcibly,blank
+	call g24_head_ptr2regc
+	fetch 3,mem_usb_kb_multikey
+	arg offset_24g_kb_multikey_sta_data,rega
+	call g24_set_contw_with_temp_store_3byte
+	//store 3,mem_24g_kb_multikey_sta_data
+	setarg offset_24g_kb_multikey_last_data
+	iadd regc,rega
+	ifetcht 3,rega
+	//fetcht 3,mem_24g_kb_multikey_last_data
+	isub temp,null
+	ncall g24_kb_mul_data_into_ep2_fifo,zero
+	setarg offset_24g_kb_multikey_sta_data
+	iadd regc,rega
+	ifetch 3,rega
+	//fetch 3,mem_24g_kb_multikey_sta_data
+	arg offset_24g_kb_multikey_last_data,rega
+	call g24_set_contw_with_temp_store_3byte
+	//store 3,mem_24g_kb_multikey_last_data
+	branch g24_rx_interrupt_clear
+
+g24_kb_mul_data_into_ep2_fifo:
+	jam USB_EP2_MULTIKEY,mem_usb_ep2_data
+	branch g24_data_type1_usbtx_enable_ep2
+
+g24_kb_mul_enable_blank_data_forcibly:
+	setarg 1
+	call g24_store_mem_kb_mul_blank_data_enable
+	//jam 1,mem_24g_kb_mul_blank_data_enable
+g24_kb_mul_enable_blank_data_timer:	
+	setarg TIMER_KB_MUL_BLANK_DELAY
+	arg TIMER_KB_MUL_BLANK,queue
+	branch timer_init
+
+g24_kb_mul_disable_blank_data_forcibly:
+	call g24_set0_mem_kb_mul_blank_data_enable
+	//jam 0,mem_24g_kb_mul_blank_data_enable
+g24_kb_mul_disable_blank_data_timer:	
+	setarg 0
+	arg TIMER_KB_MUL_BLANK,queue
+	branch timer_init
+	
+g24_data_attemp:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	//fetch 1,mem_24g_rxdata_temp+3
+	beq DATATYPE_MOUSE,g24_data_attemp_mouse
+	beq DATATYPE_KEYBOARD,g24_data_attemp_kbd
+	rtn
+g24_data_attemp_mouse:
+	setarg offset_24g_rxdata_temp_add4
+	call g24_set_rega_ifetch_4byte
+	arg offset_24g_mouse_addr,rega
+	call g24_set_contw_with_temp
+	//fetch 4,mem_24g_rxdata_temp+4
+	//store 4,mem_24g_mouse_addr
+	branch g24_contw_istore_4byte
+
+g24_data_attemp_kbd:
+	setarg offset_24g_rxdata_temp_add4
+	call g24_set_rega_ifetch_4byte
+	arg offset_24g_kb_addr,rega
+	call g24_set_contw_with_temp
+	//fetch 4,mem_24g_rxdata_temp+4
+	//store 4,mem_24g_kb_addr
+	branch g24_contw_istore_4byte
+
+g24_store_mem_24g_mode:
+	call g24_head_ptr2regc
+	add regc,offset_24g_mode,contw
+	istore 1,contw
+	rtn
+
+g24_fetch_mem_device_addr:
+	call g24_head_ptr2regc
+	add regc,offset_24g_device_addr,rega
+	branch g24_rega_ifetch_4byte
+g24_store_mem_device_addr:
+	call g24_head_ptr2regc
+	add regc,offset_24g_device_addr,contw
+	branch g24_contw_istore_4byte
+
+g24_fetch_mem_addr:
+	add regc,offset_24g_addr,rega
+	branch g24_rega_ifetch_4byte
+g24_store_mem_addr:
+	add regc,offset_24g_addr,contw
+g24_contw_istore_4byte:	
+	istore 4,contw
+	rtn
+
+g24_store_mem_ch:
+	add regc,offset_24g_ch,contw
+	branch g24_contw_istore_1byte
+
+g24_set0_mem_pid:
+	setarg 0
+g24_store_mem_pid:
+	call g24_head_ptr2regc
+	add regc,offset_24g_pid,contw
+	branch g24_contw_istore_1byte
+
+g24_store_mem_txpayload:
+	add regc,offset_24g_txpayload,contw
+	branch g24_contw_istore_1byte
+
+g24_set4_mem_max_retry:
+	setarg 4
+g24_store_mem_max_retry:
+	add regc,offset_24g_max_retry,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_data_type:
+	add regc,offset_24g_data_type,rega
+	branch g24_rega_ifetch_1byte
+g24_store_mem_data_type:
+	add regc,offset_24g_data_type,contw
+	branch g24_contw_istore_1byte
+
+g24_set2_mem_sync_cnt:
+	setarg 2
+g24_store_mem_sync_cnt:
+	add regc,offset_24g_sync_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_set1_mem_rf_last_sta:
+	setarg 1
+g24_store_mem_rf_last_sta:
+	call g24_head_ptr2regc
+	add regc,offset_24g_rf_last_sta,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_hop_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_hop_pac,rega
+	branch g24_rega_ifetch_1byte
+g24_set1_mem_hop_pac:
+	setarg 1
+g24_store_mem_hop_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_hop_pac,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_abort_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_abort_pac,rega
+	branch g24_rega_ifetch_1byte
+g24_set1_mem_abort_pac:
+	setarg 1
+g24_store_mem_abort_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_abort_pac,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_pairing_sm:
+	call g24_head_ptr2regc
+	add regc,offset_24g_pairing_sm,rega
+	branch g24_rega_ifetch_1byte
+g24_store_mem_pairing_sm:
+	add regc,offset_24g_pairing_sm,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_rf_hop_ch:
+	add regc,offset_24g_rf_hop_ch,rega
+	branch g24_rega_ifetch_1byte
+g24_set0_mem_rf_hop_ch:
+	setarg 0
+g24_store_mem_rf_hop_ch:
+	add regc,offset_24g_rf_hop_ch,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_rf_work_stage:
+	add regc,offset_24g_rf_work_stage,rega
+	branch g24_rega_ifetch_1byte
+	
+g24_fetch_mem_rxbuf_add1:
+	add regc,offset_24g_rxbuf_add1,rega
+	branch g24_rega_ifetch_1byte
+
+g24_fetch_mem_check_dongle_times:
+	add regc,offset_24g_check_dongle_times,rega
+	branch g24_rega_ifetch_1byte
+g24_set0_mem_check_dongle_times:
+	setarg 0
+g24_store_mem_check_dongle_times:
+	call g24_head_ptr2regc
+	add regc,offset_24g_check_dongle_times,contw
+	branch g24_contw_istore_1byte
+
+g24_store_mem_tx_power:
+	call g24_head_ptr2regc
+	add regc,offset_tx_power_temp,rega
+	ifetch 1,rega
+g24_store_mem_txpower:
+	store 1,mem_tx_power
+	rtn
+
+g24_store_mem_tx_power_temp:
+	call g24_head_ptr2regc
+	fetch 1,mem_tx_power
+	//store 1,mem_tx_power_temp
+	add regc,offset_tx_power_temp,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_power_ctrl_pac:	
+	add regc,offset_power_ctrl_packet_cnt,rega
+	branch g24_rega_ifetch_1byte
+
+g24_store_mem_power_ctrl_level:
+	add regc,offset_power_ctrl_level,contw
+	branch g24_contw_istore_1byte
+
+g24_fetcht_mem_rxdata_temp:
+	setarg offset_24g_rxdata_temp
+g24_set_rega_ifetcht_1byte:	
+	iadd regc,rega
+	ifetcht 1,rega
+	rtn
+
+g24_fetch_mem_rf_laststa:
+	setarg offset_24g_rf_laststa
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_rf_laststa:
+	setarg 0
+g24_store_mem_rf_laststa:
+	arg offset_24g_rf_laststa,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_fetch_mem_rx_addr:
+	setarg offset_24g_rx_addr
+g24_set_rega_ifetch_4byte:	
+	call g24_set_rega
+g24_rega_ifetch_4byte:
+	ifetch 4,rega
+	rtn
+
+g24_fetch_mem_time_slice:
+	setarg offset_24g_time_slice
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_time_slice:
+	setarg 0
+g24_store_mem_time_slice:
+	arg offset_24g_time_slice,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_set0_mem_mode_switch:
+	setarg 0
+g24_store_mem_mode_switch:
+	arg offset_24g_mode_switch,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_bind_payload:
+	arg offset_24g_bind_payload,rega
+	branch g24_set_contw_with_regb_store_1byte	
+	
+g24_fetch_mem_bind_device_status:
+	setarg offset_dongle_bind_device_status
+	branch g24_set_rega_ifetch_1byte
+g24_store_mem_bind_device_status:
+	arg offset_dongle_bind_device_status,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_fetch_mem_dongle_work_mode:
+	setarg offset_dongle_work_mode
+	branch g24_set_rega_ifetch_1byte
+g24_set_work_mem_dongle_work_mode:
+	setarg DONGLE_WORK
+g24_store_mem_dongle_work_mode:
+	arg offset_dongle_work_mode,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_fetch_mem_dongle_mode_init:
+	setarg offset_dongle_mode_init
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_dongle_mode_init:
+	setarg CLEAR_INIT
+g24_store_mem_dongle_mode_init:
+	arg offset_dongle_mode_init,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_set0_mem_ackpayload_enable:
+	setarg 0
+g24_store_mem_ackpayload_enable:
+	arg offset_24g_ackpayload_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+g24_set1_mem_ackpayload_enable:
+	setarg 1
+	branch g24_store_mem_ackpayload_enable
+
+g24_fetch_mem_rxdata_temp_add3_7byte:
+	setarg offset_24g_rxdata_temp_add3
+	call g24_set_rega
+	ifetch 7,rega
+	rtn
+
+g24_fetch_mem_nodata_timer_enable:
+	setarg offset_24g_nodata_timer_enable
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_nodata_timer_enable:
+	setarg 0
+g24_store_mem_nodata_timer_enable:
+	arg offset_24g_nodata_timer_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_set0_mem_ms_blank_data_enable:
+	setarg 0
+g24_store_mem_ms_blank_data_enable:
+	arg offset_24g_ms_blank_data_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_set0_mem_kb_blank_data_enable:
+	setarg 0
+g24_store_mem_kb_blank_data_enable:
+	arg offset_24g_kb_blank_data_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_set0_mem_kb_mul_blank_data_enable:
+	setarg 0
+g24_store_mem_kb_mul_blank_data_enable:
+	arg offset_24g_kb_mul_blank_data_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_power_ctrl_threshold_up:
+	arg offset_power_ctrl_threshold_up,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_power_ctrl_threshold_down:
+	arg offset_power_ctrl_threshold_down,rega
+g24_set_contw_with_regb_store_1byte:
+	call g24_set_contw_with_regb
+g24_contw_istore_1byte:
+	istore 1,contw
+	rtn
+
+g24_fetch_mem_pair_mode:
+	setarg offset_24g_pair_mode
+	branch g24_set_rega_ifetch_1byte
+
+g24_store_mem_pair_mode:
+	arg offset_24g_pair_mode,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_pair_txpower:
+	setarg offset_24g_pair_txpower
+	call g24_set_rega_ifetch_1byte
+	branch g24_store_mem_txpower
+
+g24_fetch_mem_rxdata_temp_add3_1byte:
+	setarg offset_24g_rxdata_temp_add3
+	branch g24_set_rega_ifetch_1byte
+
+g24_set_contw_with_temp:
+	copy pdata,temp
+	copy rega,pdata
+	iadd regc,contw
+	copy temp,pdata
+	rtn
+	
+g24_set_contw_with_temp_store_3byte:
+	call g24_set_contw_with_temp
+g24_contw_istore_3byte:	
+	istore 3,contw
+	rtn
+
+g24_set_contw_with_regb:
+	call g24_head_ptr2regc
+g24_set_contw_with_regb2:
+	copy pdata,regb
+	copy rega,pdata
+	iadd regc,contw
+	copy regb,pdata
+	rtn
+
+g24_set_rega:
+	call g24_head_ptr2regc
+	iadd regc,rega
+	rtn
+
+g24_set_rega_ifetch_1byte:
+	call g24_set_rega
+g24_rega_ifetch_1byte:
+	ifetch 1,rega
+	rtn
+
+g24_set_rega_ifetcht_4byte:
+	call g24_set_rega
+	ifetcht 4,rega
+	rtn
+
+g24_mem_set0:
+	setarg 0
+	branch g24_contw_istore_1byte
+
+
+
+app_init:
+	bpatch patch18_4,mem_patch18
+	fetch 1,mem_device_option
+	branch app_init,blank				/* wait ram to be initialized */
+//	beq dvc_op_ukey,le_ukey_init
+	beq dvc_op_dongle,dongle_init
+	beq dvc_op_AntiLost,antilost_init
+	beq dvc_op_shutter,shutter_init
+	beq dvc_op_module,module_init
+	beq dvc_op_car,car_init
+	beq dvc_op_remote_car,remote_car_init
+	bbit1 dvc_op_mouse,mouse_init
+	rtn
+	
+app_lpm_init:
+	bpatch patch18_5,mem_patch18
+	jam 0,mem_tester_emulate
+	jam 0,mem_debug_config
+	jam 0, mem_lch_code
+	setarg 0
+	store 5,mem_sp_state_start
+	fetch 1,mem_device_option
+	branch app_lpm_init,blank				/* wait ram to be initialized */
+	beq dvc_op_module,module_lpm_init
+app_lpm_init0:
+	rtn
+
+	
+app_process_idle:
+	call ui_dispatch
+	call check_51cmd
+	call app_process_bb_event
+	fetch 2,mem_cb_idle_process
+	branch callback_func
+	
+app_process_bt:
+	fetch 2,mem_cb_bt_process
+	branch callback_func
+	
+app_process_ble:
+	fetch 2,mem_cb_le_process
+	branch callback_func
+
+app_process_bb_event:
+	bpatch patch18_6,mem_patch18
+	//return if c51 need to process bb event
+	arg mem_ipc_fifo_bt2c51,rega
+	call fifo_out
+	rtn blank
+	//reaching here mains c51 cannot get bb event.
+	copy pdata,regc
+	call app_event_normal_process
+	branch app_process_bb_event_priority
+	
+app_discard_event:
+	arg 0,regc
+	rtn
+
+//************************************************//
+//*APP BB EVENT NORMAL PROCESS**//
+//************************************************//
+app_event_normal_process:
+	beq BT_EVT_BB_CONNECTED,app_evt_bt_conn
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_evt_button_long_pressed
+	beq BT_EVT_SETUP_COMPLETE,app_evt_setup_complete
+	beq BT_EVT_HID_HANDSHAKE,app_evt_hid_handshake
+	beq BT_EVT_HID_CONNECTED,app_bb_event_hid_connected
+	beq BT_EVT_RECONN_FAILED,app_bb_event_reconn_failed
+	beq BT_EVT_BB_DISCONNECTED,app_bb_event_bb_disconn
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,app_bb_event_reconn_failed	
+	beq BT_EVT_LE_CONNECTED,app_le_event_bb_connected
+	beq BT_EVT_LE_DISCONNECTED,app_le_event_bb_disconn
+	beq BT_EVT_RECONN_STARTED,app_event_reconn_start
+	beq BT_EVT_ENTER_SNIFF,app_event_enter_sniff
+	beq BT_EVT_EXIT_SNIFF,app_event_exit_sniff
+	
+	beq BT_EVT_ML2CAP_CONN_REFUSED,app_event_ml2cap_conn_refused
+	beq BT_EVT_LINKKEY_GENERATE,app_event_linkkey_generate
+	beq BT_EVT_SWITCH_FAIL_MASTER,app_event_switch_fail_master
+	beq BT_EVT_SWITCH_SUCCESS_MASTER,app_event_switch_success
+	rtn
+
+
+app_evt_bt_conn:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_CONNECTED,pdata
+	store 2,mem_ui_state_map
+	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
+	rtn
+
+app_event_switch_success:
+	jam 0,mem_switch_fail_master_count
+	rtn	
+
+app_event_switch_fail_master:
+	fetch 1,mem_switch_fail_master_count
+	increase 1,pdata
+	store 1,mem_switch_fail_master_count
+	sub pdata,1,null
+	branch app_bt_role_switch,positive
+	jam 0,mem_switch_fail_master_count
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_SWITCH_FAIL,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch app_bt_disconnect
+	
+app_process_bb_event_priority:
+	fetch 2,mem_cb_bb_event_process
+	branch callback_func
+
+app_check_wake_lock:
+	fetch 2,mem_cb_check_wakelock
+	branch callback_func
+	
+app_will_enter_lpm:
+	fetch 2,mem_cb_before_lpm
+	branch callback_func
+
+app_event_linkkey_generate:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_PAIRING ,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch app_bt_store_reconn_info
+	
+app_event_reconn_start:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_RECONNECT,pdata
+	store 2,mem_ui_state_map
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_RECONN,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+app_evt_setup_complete:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_SETUP_COMPLETE,pdata
+	store 2,mem_ui_state_map
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_SETUP_DONE,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+app_evt_hid_handshake:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_HID_HANDSHAKE,pdata
+	store 2,mem_ui_state_map
+	rtn
+	
+app_event_enter_sniff:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_SNIFF,pdata
+	store 2,mem_ui_state_map
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_SNIFF,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+	
+app_event_exit_sniff:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_SNIFF,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+app_le_event_bb_connected:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BLE_CONNECTED,pdata
+	store 2,mem_ui_state_map
+	rtn
+	
+app_le_event_bb_disconn:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BLE_CONNECTED,pdata
+	store 2,mem_ui_state_map
+	branch app_lpm_mult_disable
+	
+app_bb_event_hid_connected:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_HID_CONN,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+app_evt_button_long_pressed:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_BY_BUTTON,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+	
+app_event_ml2cap_conn_refused:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_L2CAP_REFUSED,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch  app_bt_disconnect
+
+
+app_evt_timer:
+	bpatch patch18_7,mem_patch18
+	store 1,mem_app_evt_timer_count
+app_evt_100ms_loop:
+	fetch 1,mem_app_evt_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_app_evt_timer_count
+	call ui_button_polling
+	call app_lpm_wake_auto_lock_timer
+	call app_unsniff_delay_timer
+	call app_discovery_timer
+	call flash_write_spi_sm_timer
+	fetch 2,mem_cb_event_timer
+	call callback_func
+	branch app_evt_100ms_loop
+
+
+//regc:timer addr
+//regb:timer up call back fuction
+timer_single_step:
+	ifetch 1,regc
+	rtn blank
+	pincrease -1
+	istore 1,regc
+	nrtn blank
+	copy regb,pdata
+	branch callback_func
+
+//regc:timer addr
+//regb:timer up call back fuction
+timer_single_step_2B:
+	ifetch 2,regc
+	rtn blank
+	pincrease -1
+	istore 2,regc
+	nrtn blank
+	copy regb,pdata
+	branch callback_func
+	
+app_power_timer:
+	fetcht 2,mem_power_param_ptr
+	add temp,power_timer_offset,regc
+	arg app_power_timer_timeout,regb
+	branch timer_single_step
+	
+app_power_timer_timeout:
+	call app_got_power_state_common
+	beq POWER_STARTING,app_enter_power_stanby_state
+app_enter_power_off_state:
+	branch app_enter_hibernate
+app_enter_power_stanby_state:
+	setarg POWER_STANDBY
+	istore 1,regc
+	add temp,power_standby_cb_offset,regb
+app_power_cb_common:
+	ifetch 2,regb
+	branch callback_func
+
+app_unsniff_delay_timer:
+	arg mem_unsniff2sniff_timer_count,regc
+	arg app_unsniff_delay_timeout,regb
+	branch timer_single_step
+	
+app_unsniff_delay_timeout:
+	call context_check_idle
+	branch app_bt_enter_sniff,zero
+	rtn
+
+
+app_discovery_timer:
+	arg mem_discovery_timeout_timer_count,regc
+	arg app_discovery_timeout,regb
+	branch timer_single_step_2B
+	
+app_discovery_timeout:
+	call app_bt_stop_discovery
+	call app_led_off
+	fetch 2,mem_cb_discovry_timeout
+	branch callback_func
+
+	
+app_bb_event_reconn_failed:
+	call app_disconn_reason_flag_clear
+app_clear_reconnect_flag:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_RECONNECT,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+app_bb_event_bb_disconn:
+	jam 0,mem_unsniff2sniff_timer_count
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_RECONNECT,app_bb_event_bb_reconn_disconn
+	isolate0 UI_STATE_BT_SETUP_COMPLETE,pdata
+ 	call app_discard_event,true
+app_bb_event_bb_reconn_disconn:
+	bpatch patch19_0,mem_patch19
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_CONNECTED,pdata
+	set0 UI_STATE_BT_SETUP_COMPLETE,pdata
+	set0 UI_STATE_BT_HID_CONN,pdata
+	set0 UI_STATE_BT_HID_HANDSHAKE,pdata
+	set0 UI_STATE_BT_RECONNECT,pdata
+	store 2,mem_ui_state_map
+	branch app_lpm_mult_disable
+	
+app_bb_hibernate:
+	call app_disconn_reason_clear
+	branch app_enter_hibernate
+
+	
+app_disconn_reason_clear:
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	rtn
+app_disconn_reason_flag_clear:
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+app_disconn_reason_collect_bt:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+	
+app_disconn_reason_collect_ble:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_BLE,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+	
+//************************************************//
+//********APP SHARED FUNCSIONS*******//
+//************************************************//
+
+
+app_check_sniff:
+	fetch 1,mem_ui_state_map
+	isolate1 UI_STATE_BT_SNIFF,pdata
+	rtn
+
+//*****************************************//
+//*****************API********************//
+//*****************************************//
+//app_clearflag_store:
+//	setarg 0
+//	branch app_flag_store
+app_initflag_store:
+	setarg EEPROM_INIT_FLAG
+app_flag_store:
+	store 2,mem_timeup
+	bpatch patch19_1,mem_patch19
+	arg 2,temp
+	arg mem_timeup,rega
+	arg eeprom_module_init_flag,regb
+	branch iicd_write_eep_data
+
+//initflag is in eeprom to sure is eeprom nead to init
+app_initflag_check:
+	bpatch patch19_2,mem_patch19
+	arg 2,temp
+	arg mem_pdatatemp,rega
+	arg eeprom_module_init_flag,regb
+	call iicd_read_eep_data
+	fetch 2,mem_pdatatemp
+	arg EEPROM_INIT_FLAG,temp
+	isub  temp,null
+	rtn
+
+
+app_start_auto_sniff:
+	fetch 1,mem_unsniff2sniff_timer
+	store 1,mem_unsniff2sniff_timer_count
+	rtn	
+	
+app_get_lpm_wake_lock:
+	arg wake_lock_app,queue
+	branch lpm_get_wake_lock
+
+app_put_lpm_wake_lock:
+	arg wake_lock_app,queue
+	branch lpm_put_wake_lock
+	
+app_lpm_wake_auto_lock:
+	jam  LPM_WAKE_UP_DELAY_TIMER,mem_wake_up_delay_timer
+	branch app_get_lpm_wake_lock
+	
+app_lpm_wake_auto_lock_timer:
+	arg mem_wake_up_delay_timer,regc
+	arg app_put_lpm_wake_lock,regb
+	branch timer_single_step
+
+app_l2cap_flow_control_enable:
+	jam L2CAP_FLOW_CTRL_ENABLE,mem_l2cap_flow_ctrl_flag
+	rtn
+
+app_l2cap_flow_control_disable:
+	jam L2CAP_FLOW_CTRL_DISABLE,mem_l2cap_flow_ctrl_flag
+	rtn
+	
+app_bt_set_pincode:
+	jam BT_CMD_SET_PIN_CODE,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_bt_role_switch:
+	jam BT_CMD_ROLE_SWITCH,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_bt_start_reconnect:
+	bpatch patch19_3,mem_patch19
+	fetch 1,mem_app_connection_options
+	store 1,mem_connection_options
+	jam APP_FLAG_RECONNECT,mem_reconnect_flag
+	jam BT_CMD_RECONNECT,mem_fifo_temp
+	branch ui_ipc_send_cmd	
+	
+app_bt_reconnect_cancel:
+	jam BT_CMD_BB_RECONN_CANCEL,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_bt_disconnect:
+	jam BT_CMD_DISCONNECT,mem_fifo_temp
+	branch ui_ipc_send_cmd	
+
+app_bt_start_discovery_short:
+	fetch 2,mem_discovery_timeout
+	store 2,mem_discovery_timeout_timer_count
+app_bt_start_discovery_led_blink:
+	call app_led_start_blink
+app_bt_start_discovery:
+	jam BT_CMD_START_DISCOVERY,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_bt_stop_discovery:
+	setarg 0
+	store 2,mem_discovery_timeout_timer_count
+	jam BT_CMD_STOP_DISCOVERY,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_direct_adv:
+	jam BT_CMD_START_DIRECT_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_ble_stop_direct_adv:
+	jam BT_CMD_STOP_DIRECT_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_stop_adv:
+	jam BT_CMD_STOP_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_adv:	
+	jam BT_CMD_START_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_scan:
+	jam BT_CMD_LE_START_SCAN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_stop_scan:
+	jam BT_CMD_LE_STOP_SCAN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_conn:
+	jam BT_CMD_LE_START_CONN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_disconnect:
+	jam BT_CMD_LE_DISCONNECT,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_led_start_blink:	
+	jam BT_CMD_LED_BLINK,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_led_on:
+	jam BT_CMD_LED_ON,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_led_stop_blink:
+app_led_off:
+	jam BT_CMD_LED_OFF,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_enter_hibernate:
+	jam BT_CMD_ENTER_HIBERNATE,mem_fifo_temp 
+	branch ui_ipc_send_cmd
+	
+app_bt_sniff_exit:
+	jam BT_CMD_EXIT_SNIFF,mem_fifo_temp
+	branch  ui_ipc_send_cmd
+	
+app_bt_enter_sniff:
+	jam BT_CMD_ENTER_SNIFF,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_ble_store_reconn_info:
+	jam BT_CMD_STORE_RECONN_INFO_LE,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_bt_store_reconn_info:
+	jam BT_CMD_STORE_RECONN_INFO_BT,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_store_reconn_info:
+	jam BT_CMD_STORE_RECONN_INFO,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_lpm_mult_enable:
+	set1 mark_lpm_mult_enable,mark
+	rtn
+
+app_lpm_mult_disable:
+	set0 mark_lpm_mult_enable,mark
+	rtn
+
+
+/*
+
+mem_power_param struct
+{
+	usigned char     mem_power_state
+	usigned char     mem_power_timer
+	usigned char	 mem_power_off_timeout
+	usigned char	 mem_power_starting_timeout
+	usigned long	 mem_power_off_cb
+	usigned long	 mem_power_starting_cb
+	usigned long	 mem_power_standby_cb
+	usigned long 	 mem_ui_butten_up_cb
+}
+    	functions:power state switching by mem_app_power_timer timeout or by button_long_pressed event
+    	(power off -> power starting->power standby->power off) and power timer initialization 
+ input parameters:mem_power_param_ptr should be point to the variable(mem_power_param) address where the input parameters stored in with its format
+output parameters:switched power state will be stored in variable mem_power_state*/
+app_button_long_pressed:
+	call app_got_power_state_common
+	beq POWER_STANDBY,app_power_shutting_down
+app_power_starting:
+	setarg POWER_STARTING
+	istore 1,regc
+	add temp,power_starting_timeout_offset,rega
+	add temp,power_starting_cb_offset,regb
+app_power_common:
+	ifetcht 1,rega
+	increase 1,regc
+	istoret 1,regc
+	branch app_power_cb_common
+	
+app_power_shutting_down:
+	setarg POWER_OFF
+	istore 1,regc
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,app_power_off_end
+	call app_ble_disconnect
+app_power_off_end:
+	fetcht 2,mem_power_param_ptr
+	add temp,power_off_timeout_offset,rega
+	add temp,power_off_cb_offset,regb
+	branch app_power_common
+	
+app_got_power_state_common:
+	fetcht 2,mem_power_param_ptr
+	add temp,power_state_offset,regc
+	ifetch 1,regc
+	rtn
+
+app_event_button_up:
+	call app_got_power_state_common
+	bne POWER_OFF,app_power_release
+	branch app_enter_hibernate
+app_power_release:
+	add temp,ui_butten_up_cb_offset,regb
+	branch app_power_cb_common
+
+antilost_init:
+	rtn wake	
+	jam 0x00,core_gpio_sel1//1: GPIO[26:25] is two wire SPI, 2: GPIO[26:23] is SPI, 3: GPIO[26:23] is PCM
+	setarg antilost_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg keyscan_process_lpm_before
+	store 2,mem_cb_before_lpm
+	setarg antilost_idle_process	//
+	store 2,mem_cb_idle_process
+	setarg antilost_le_conn_process	//
+	store 2,mem_cb_le_process
+	setarg antilost_bb_event_process 
+	store 2,mem_cb_bb_event_process
+	setarg antilost_le_bb_event_timer
+	store 2,mem_cb_event_timer
+	setarg antilost_le_notification
+	store 2,mem_cb_ble_transmit
+	setarg antilost_lpm_lock_process
+	store 2,mem_cb_check_wakelock
+	setarg antilost_le_receive_data_process
+	store 2,mem_cb_att_write
+	bpatch patch19_4,mem_patch19
+	call antilost_buzzer_pwm_init
+	call keyscan_key_init
+	call antilost_adc_init
+	call ui_led_init_global
+	call ui_button_init
+	setarg antilost_key_up_down
+	store 2,mem_cb_antl_key
+	setarg antilost_power_off_cb
+	store 2,mem_antl_power_off_cb
+	setarg antilost_power_starting_cb
+	store 2,mem_antl_power_starting_cb
+	setarg antilost_power_standby_cb
+	store 2,mem_antl_power_standby_cb
+	setarg antilost_led_on_cb
+	store 2,mem_antl_led_cb_on
+	setarg antilost_led_off_cb
+	store 2,mem_antl_led_cb_off
+	setarg antilost_buzzer_on
+	store 2,mem_antl_buzzer_cb_on
+	setarg antilost_buzzer_off
+	store 2,mem_antl_buzzer_cb_off
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	branch app_enter_hibernate
+
+antilost_le_before_hibernate:
+	call antilost_led_buzzer_stop_blink
+	branch  app_enter_hibernate
+
+antilost_le_notification:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	arg mem_temp_block5,rega
+	call queue_pop
+	nrtn user
+	arg mem_temp_block5,contr
+	branch le_send_notify_from_list
+
+antilost_power_standby_cb:
+	fetch 2,mem_antl_le_sleep_timeout
+	store 2,mem_antl_le_sleep_timer
+	jam 1,mem_antl_key_scan_enable
+	branch antilost_fast_adv_start
+	
+antilost_lpm_lock_process:
+	fetch 1,mem_antl_key_state
+	beq 1,antilost_lpm_ctrl_for_led_buzzer
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,antilost_lpm_ctrl_for_led_buzzer
+	fetch 1,mem_antl_lost_mode
+	beq 1,app_get_lpm_wake_lock
+	fetch 1, mem_antl_queue_curr_num
+	nbranch app_get_lpm_wake_lock,blank 
+	branch app_put_lpm_wake_lock
+	
+antilost_lpm_ctrl_for_led_buzzer:
+	fetch 1,mem_antl_led_state
+	fetcht 1,mem_antl_buzzer_state
+	ior temp,pdata
+	beq 1,app_get_lpm_wake_lock
+	branch app_put_lpm_wake_lock
+
+antilost_bb_event_process:
+	copy regc,pdata
+	beq BT_EVT_BUTTON_UP,app_event_button_up
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_button_long_pressed
+	beq BT_EVT_LE_CONNECTED,antilost_le_process_conn
+	beq BT_EVT_LE_DISCONNECTED,antilost_le_process_discon
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,antilost_le_conn_param_update_rsp_recieved
+	rtn
+antilost_le_conn_param_update_rsp_recieved:
+	fetch 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	beq BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_REJECTED,antilost_le_conn_param_rejected
+antilost_le_conn_param_accepted:
+	fetch 2,mem_le_new_connslavelatency
+	branch antilost_master_nonsupport_latency,blank
+antilost_le_conn_param_updata_procedure_sucsess:
+	jam CONN_PARAM_UPDATA_PROCEDURE_COMPLETE,mem_antl_conn_updata_procedure_state
+	jam 60,mem_antl_conn_update_timer
+	rtn
+
+antilost_le_conn_param_rejected:
+	fetch 2,mem_le_latency
+	branch antilost_conn_param_updata_procedure_faild,blank
+antilost_conn_param_retransimiting:
+	jam CONN_PARAM_UPDATA_PROCEDURE_STARTING,mem_antl_conn_updata_procedure_state
+	fetcht 2,mem_interval_increment
+	fetch 2,mem_le_interval_min
+	iadd temp,pdata
+	store 2,mem_le_interval_min
+	copy pdata,rega
+	fetch 2,mem_le_interval_max
+	iadd temp,pdata
+	store 2,mem_le_interval_max
+	iadd rega,pdata
+	rshift pdata,temp
+	fetch 2,mem_antl_le_unnormal_interval_max
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	store 2,mem_le_latency
+	jam 1,mem_antl_send_updata_le_param_timer
+	rtn
+antilost_conn_param_updata_procedure_faild:
+	jam CONN_PARAM_UPDATA_PROCEDURE_FAILD,mem_antl_conn_updata_procedure_state
+	rtn
+
+antilost_master_nonsupport_latency:
+	jam 0,mem_lpm_mult
+	jam 0,mem_antl_send_updata_le_param_timer
+	fetch 2,mem_le_new_conninterval	//interval from master
+	fetcht 2,mem_antl_le_unnormal_interval_min
+	isub temp,null
+	setflag positive,0,rega 
+	fetch 2,mem_antl_le_unnormal_interval_max //local intervalmax
+	fetcht 2,mem_le_new_conninterval//interval form master
+	isub temp,pdata
+	setflag positive,1,rega
+	compare	0x03,rega,0x03
+	rtn true //return if the new conn_interval in range through conn_interval_min to conn_interval_max already
+	fetch 8,mem_antl_le_unnormal_interval_min
+	store 8,mem_le_interval_min
+	jam 1,mem_antl_send_updata_le_param_timer
+	rtn                               
+
+
+antilost_le_bb_event_timer:
+	//call ui_button_check_long_press
+	call app_power_timer
+	call antilost_double_click_timer
+	call antilost_le_fast_adv_timer
+	call antilost_le_sleep_timer
+	call antilost_app_updata_le_param_timer
+	call antilost_conn_update_timer
+	branch antilost_adc_check_timer
+
+
+antilost_double_click_timer:
+	arg mem_double_click_timer,regc
+	arg antilost_double_click_timeout,regb
+	branch timer_single_step
+antilost_double_click_timeout:
+	jam 0,mem_butten_click_cnt
+	rtn
+antilost_le_fast_adv_timer:
+	arg mem_antl_fast_adv_timer,regc
+	arg antilost_le_fast_adv_timeout,regb
+	branch timer_single_step_2B
+antilost_le_fast_adv_timeout:
+	arg mem_antl_slow_adv_led_style,regc
+	arg mem_antl_slow_adv_lpm_interval,regb
+	branch antilost_adv_start_common
+	
+
+antilost_conn_update_timer:
+	arg mem_antl_conn_update_timer,regc
+	arg antilost_conn_update_timer_time_out,regb
+	branch timer_single_step
+	
+antilost_conn_update_timer_time_out:
+	fetch 2,mem_le_latency
+	store 1,mem_lpm_mult
+	rtn
+antilost_app_updata_le_param_timer:
+	arg mem_antl_send_updata_le_param_timer,regc
+	arg antilost_app_updata_le_param_timeout,regb
+	branch timer_single_step
+antilost_app_updata_le_param_timeout:
+	fetch 1,mem_le_state
+	compare 0,pdata,0x60
+	nbranch antilost_wait_for_updata_param_instant_expire,true
+	jam CONN_PARAM_UPDATA_PROCEDURE_STARTING,mem_antl_conn_updata_procedure_state
+	call  app_lpm_mult_enable
+	branch le_l2cap_tx_update_req	
+antilost_wait_for_updata_param_instant_expire:
+	jam 1,mem_antl_send_updata_le_param_timer
+	rtn
+	
+antilost_le_sleep_timer:
+	arg mem_antl_le_sleep_timer,regc
+	arg antilost_le_sleep_timer_timeout,regb
+	branch timer_single_step_2B
+
+
+antilost_le_sleep_timer_timeout:
+	branch app_button_long_pressed
+
+antilost_adc_check_timer:
+	//fetch 1,mem_antl_power_timer
+	//rtneq SHUTTER_POWER_OFF
+	arg mem_adc_timer,regc
+	arg antilost_adc_check_timer_timeout,regb
+	branch timer_single_step_2B
+antilost_adc_check_timer_timeout:
+	fetch 2,mem_adc_timeout
+	store 2,mem_adc_timer
+	branch antilost_battery_process
+
+
+antilost_le_process_conn:
+	fetch 2,mem_adc_timeout
+	store 2,mem_adc_timer
+	setarg 0
+	store 2,mem_antl_fast_adv_timer
+	store 2,mem_antl_le_sleep_timer
+	call antilost_alert_off
+	call antilost_led_buzzer_stop_blink
+	jam 0,mem_lpm_mult
+	branch app_ble_stop_adv
+	                                                      
+
+antilost_le_process_discon:
+	//setarg 0
+	//store 1,mem_hci_curr_len
+	setarg 0
+	store 4,mem_adc_timer
+	store 3,mem_antl_conn_updata_procedure_state
+	store 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	
+	jam 1,mem_alarm_config_notfy_cnt
+	fetch 2,mem_antl_le_sleep_timeout
+	store 2,mem_antl_le_sleep_timer
+	call queue_init
+	fetch 1,mem_antl_power_state
+	rtneq POWER_OFF
+	call antilost_fast_adv_start
+	branch antilost_on_off_alarm_after_disconn
+
+
+antilost_le_conn_process:
+//bpatch
+	branch antilost_key_process
+
+antilost_idle_process:
+
+	fetch 1,mem_antl_power_state
+	rtnne POWER_STANDBY
+	branch antilost_key_process
+
+
+//////////////////////////////////////////////////////////////////////////////////////////
+/////SOFT WTICH////////
+antilost_power_starting_cb:
+	arg mem_antl_power_starting_buzzer_style,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_power_starting_led_style,regc
+antilost_power_common:
+	branch antilost_led_configuration
+
+antilost_power_off_cb:
+	jam OFF,mem_le_adv_enable
+	arg mem_antl_power_off_buzzer_style,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_power_off_led_style,regc
+	branch antilost_power_common
+	
+antilost_le_receive_data_process:
+	fetch 1,mem_le_att_opcode
+	beq ATTOP_WRITE_REQUEST,antilost_le_parse_att_write_request
+	rtn
+antilost_le_parse_att_write_request:
+	fetch 2,mem_le_att_handle
+//	beq  ATT_WRITE_REQUEST_HANDLE,antilost_key_data_send
+	beq NEW_SPEC_WRITE_HANDLE,antilost_cmd_parse_for_application
+	beq NEW_SPEC_NOTIFICATION_ENABLE_HANDLE,antilost_notify_alarm_config_first_time
+	rtn
+/////////////////////////////////////////////////////////
+
+
+/////////key scan
+antilost_key_process:
+	fetch 1,mem_antl_key_scan_enable
+	rtn blank
+	branch keyscan_key_process
+
+	//queue = key index
+	//rega =1 press, =0 release
+antilost_key_up_down:
+	copy rega,pdata
+	branch antilost_key_is_up,blank
+antilost_key_is_down:
+	copy queue,pdata
+	beq 0,antilost_key0_down
+	rtn
+antilost_key_is_up:
+	copy queue,pdata
+	beq 0,antilost_key0_up
+	rtn
+
+antilost_key0_down:
+	jam 1,mem_antl_key_state
+	arg mem_antl_key_buzzer_style,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_key_led_style,regc
+	call antilost_led_configuration
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,antilost_butten_down_while_disconn
+	branch antilost_butten_down_after_conn
+	
+antilost_key0_up:
+	jam 0,mem_antl_key_state
+	branch antilost_double_click_timer_init
+
+//////////////process for double-click
+
+antilost_double_click_timer_init:
+	fetch 1,mem_butten_click_cnt
+	rtnne 1
+	jam 5,mem_double_click_timer
+	rtn
+
+antilost_butten_down_after_conn:
+	fetch 1,mem_butten_click_cnt
+	pincrease 1
+	store 1,mem_butten_click_cnt
+	beq 1,antilost_click_once
+	beq 2,antilost_click_twice
+	rtn
+antilost_click_once:
+	call antilost_alert_off
+	jam OPCODE1_BUTTEN_CLICK_ONCE,mem_antl_key0_press+5//5 represent opcode offset
+	arg mem_antl_key0_press,regc
+	branch antilost_prepare_data_and_send
+antilost_click_twice:
+	jam 0,mem_butten_click_cnt
+	jam OPCODE2_BUTTEN_DOUBLE_CLICK,mem_antl_key0_press+5
+	arg mem_antl_key0_press,regc
+	call antilost_prepare_data_and_send
+	fetch 1,mem_antl_lost_mode
+	beq 1,antilost_alert_on
+	rtn   //rtn should be retaind
+	
+antilost_butten_down_while_disconn:
+	fetch 2,mem_antl_le_sleep_timeout
+	store 2,mem_antl_le_sleep_timer
+	call antilost_alert_off
+	branch antilost_fast_adv_start
+	
+///////////////////////NEW App Spcecific///////
+antilost_cmd_parse_for_application:
+	bpatch patch19_5,mem_patch19
+	call le_app_receive_data
+	ifetch 1,rega
+	beq OPCODE3_ANTL_START_ALRAM,antilost_on_of_alram
+	beq OPCODE7_ANTL_CONFIG_ALRAM,antilost_configuration_for_alram
+	rtn
+
+antilost_on_of_alram:
+	fetch 1,mem_antl_lost_mode
+	beq ANTI_LE_ALARM_OFF,antilost_alert_on
+	beq ANTI_LE_ALARM_ON,antilost_alert_off
+	rtn
+
+antilost_configuration_for_alram:
+	ifetch 1,regb
+	beq 1,antilost_set_start_alarm_after_disconn
+	beq 0,antilost_set_no_alarm_after_disconn
+	rtn
+/////////////////check////////////////////////
+
+/*input: 1)package data addr in regc
+output:no
+function:calculate check_out value and send data*/
+//mem_temp_block5
+antilost_prepare_data_and_send:
+	bpatch patch19_6,mem_patch19
+	fetch 1,mem_client_characteristic_configuration_descriptor
+	isolate1 NOTIFICATION_ENABLE_BIT,pdata
+	nrtn true
+	add regc,6,contr
+	ifetch 2,contr
+	byteswap pdata,pdata
+	add pdata,5,loopcnt
+	add regc,3,contr
+	call calc_check_sum_start
+	istore 1,contr
+	copy regc,rega
+	branch queue_push
+
+/////////////////NEW APP SPECIFIC check end////////////////////
+
+
+/////////alarm//////////////////////////////
+antilost_alert_on:
+	fetch 1,mem_antl_power_state
+	rtn blank
+	jam 1,mem_antl_lost_mode
+	arg mem_antl_alert_buzzer_stlye,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_alert_led_stlye,regc
+	call antilost_led_configuration
+	jam OPCODE4_CURRENT_ALARM_STATE,mem_antl_key0_release+5//5 represent opcode offset
+	jam 1,mem_antl_key0_release+8 //8 represent data offset,digit 1 represent alarm is on at present
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_alert_off:
+	fetch 1,mem_antl_lost_mode
+	rtn blank
+	jam 0,mem_antl_lost_mode
+	call antilost_led_buzzer_stop_blink
+	jam OPCODE4_CURRENT_ALARM_STATE,mem_antl_key0_release+5//5 represent opcode offset
+	jam 0,mem_antl_key0_release+8 //8 represent data offset,digit 0 represent alarm is off at present
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+
+antilost_set_start_alarm_after_disconn:
+	jam 1,mem_alarm_config
+	jam OPCODE7_ANTL_CONFIG_ALRAM,mem_antl_key0_release+5
+	jam 1,mem_antl_key0_release+8
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_set_no_alarm_after_disconn:
+	jam 0,mem_alarm_config
+	jam OPCODE7_ANTL_CONFIG_ALRAM,mem_antl_key0_release+5
+	jam 0,mem_antl_key0_release+8
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_on_off_alarm_after_disconn:
+	fetch 1,mem_alarm_config
+	rtn blank
+	branch antilost_alert_on
+	
+antilost_notify_alarm_config_first_time:
+	ifetch 2,rega
+	store 2,mem_client_characteristic_configuration_descriptor
+	isolate1 NOTIFICATION_ENABLE_BIT,pdata
+	nrtn true
+	fetch 1,mem_alarm_config_notfy_cnt
+	rtn blank
+	jam 0,mem_alarm_config_notfy_cnt
+	fetch 8,mem_antl_le_interval_min
+	store 8,mem_le_interval_min
+	jam 2,mem_antl_send_updata_le_param_timer
+	call antilost_battery_process
+	call antilost_battery_calculate_end //send twice to combat the failure of reception first time
+	jam OPCODE7_ANTL_CONFIG_ALRAM,mem_antl_key0_release+5
+	fetch 1,mem_alarm_config
+	store 1,mem_antl_key0_release+8
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+
+//////////////alarm end//////////////////////////
+//sytle address in regc
+antilost_buzzer_configuration:
+	arg 1,rega
+	branch antilost_configuration_common
+antilost_led_configuration:
+	arg 0,rega
+antilost_configuration_common:
+	branch antilost_led_buzzer_style_configuration
+	
+antilost_led_buzzer_stop_blink:
+	arg 0,rega
+	call ui_led_blink_stop_global
+	arg 1,rega
+	call ui_led_blink_stop_global
+	fetch 1,mem_buzzer_pwm_conf
+	branch pwm_disable
+	
+antilost_led_buzzer_style_configuration:
+	call calc_curr_struct_prt
+	arg 7,loopcnt
+	branch ui_led_set_style_global+2
+
+
+
+antilost_fast_adv_start:
+	arg mem_antl_fast_adv_led_style,regc
+	arg mem_antl_lpm_interval,regb
+antilost_adv_start_common:
+	call antilost_adv_interval_lpm_interval_set
+	call antilost_led_configuration
+	fetch 2,mem_antl_fast_adv_timeout
+	store 2,mem_antl_fast_adv_timer
+	branch app_ble_start_adv
+	
+antilost_adv_interval_lpm_interval_set:
+	ifetch 2,regb
+	store 2,mem_lpm_interval
+	ifetch 2,contr
+	store 2,mem_le_adv_interval
+	rtn
+///////////////beep////////////
+antilost_buzzer_pwm_init:
+	arg 0,rega //sys clk 12mhz
+	call pwm_init
+	fetch 6,mem_buzzer_pwm_conf
+	store 6,mem_pdatatemp
+	call pwm_out_set
+	fetch 1,mem_buzzer_pwm_conf
+	branch pwm_disable
+	
+antilost_led_on_cb:
+	jam 1,mem_antl_led_state
+	rtn	
+antilost_led_off_cb:
+	jam 0,mem_antl_led_state
+	rtn
+
+
+
+antilost_buzzer_off:
+	jam 0,mem_antl_buzzer_state
+	fetch 1,mem_buzzer_pwm_conf
+	branch pwm_disable
+	
+antilost_buzzer_on:
+	jam 1,mem_antl_buzzer_state
+	fetch 6,mem_buzzer_pwm_conf
+	store 6,mem_pdatatemp
+	branch pwm_out_set
+
+////////////////beep end///////////////////////////
+/////////////adc start////////////////////////
+antilost_adc_init:
+	jam 0,mem_adc_config_flag
+	branch adc_init_data
+
+antilost_battery_process:
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	store 2,mem_battery_current_voltage
+	arg mem_battery_calculate_set,rega
+	call adc_bat_percent_lowpower_out
+	store 1,mem_voltage_remain_percent //for debug
+	beq 0,antilost_low_battery
+	sub pdata,0x64,null
+	nbranch antilost_full_battery,positive
+	store 1,mem_antl_key0_release+8
+antilost_battery_calculate_end:
+	jam OPCODE5_BATTER_INFORMATION,mem_antl_key0_release+5
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_full_battery:
+	jam 100,mem_antl_key0_release+8
+	branch antilost_battery_calculate_end
+
+antilost_low_battery:
+	branch app_button_long_pressed
+
+
+
+car_init:
+	rtn wake	
+	hfetch 1,core_gpio_sel1
+	and_into 0xf0,pdata
+	hstore 1,core_gpio_sel1
+	setarg car_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+	
+	setarg car_le_process_lpm_before
+	store 2,mem_cb_before_lpm	
+	
+	setarg app_enter_hibernate
+	store 2,mem_cb_discovry_timeout
+	
+	setarg car_scale_process_idle	
+	store 2,mem_cb_idle_process	
+	
+	setarg car_scale_process_bb_event 
+	store 2,mem_cb_bb_event_process	
+	
+	setarg app_get_lpm_wake_lock
+	store 2,mem_cb_check_wakelock
+	
+	setarg car_le_receive_data
+	store 2,mem_cb_att_write
+	
+	setarg car_le_bb_event_timer
+	store 2,mem_cb_event_timer
+	
+	call g24_head_ptr2regc
+	setarg car_24g_receive_data
+	add regc,offset_24g_cb_rxdata_type1,contw
+	istore 2,contw
+
+	setarg car_power_off_signal
+	store 2,mem_remote_car_power_off_cb
+	
+	setarg car_soft_switch_power_on_signal
+	store 2,mem_remote_car_power_standby_cb
+	
+	bpatch patch19_7,mem_patch19
+	call car_init_environment
+	call queue_init
+	jam 2,mem_lpm_mult
+	jam POWER_ON,mem_car_24g_received_pac
+	fetch 1,mem_car_config_soft_switch_enable
+	store 1,mem_car_hard_soft_switch
+	beq HARD_SWITCH, car_hard_switch_power_on_signal
+	fetch 1,mem_car_config_soft_switch_gpio
+	store 1,mem_ui_button_gpio
+	jam OFF,mem_le_adv_enable
+car_soft_switch_power_on_init:
+	call car_ui_led_init
+	call ui_button_init
+	call ui_button_polling
+	jam POWER_STARTING,mem_car_power_state
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+ 	branch app_enter_hibernate
+
+car_power_off_signal:	
+	branch car_ui_led_init
+	
+car_hard_switch_power_on_signal:
+	jam POWER_STANDBY,mem_car_power_state
+car_soft_switch_power_on_signal:
+	jam ON,mem_le_adv_enable
+	call car_ui_led_init
+	arg 0,rega
+	call ui_led_blink_start_global
+	
+	setarg FAST_ADV_INTERVAL_VALUE_CAR
+	call shutter_ble_adv_interval_set
+car_le_modified_name_adv:
+	arg mem_le_name+7,contw
+	fetch 1,mem_le_lap
+car_name_loop:
+	and pdata,0xF0,temp
+	rshift4 temp,temp
+	call car_hex_to_ascii
+	istoret 1, contw
+	and pdata,0x0F,temp
+	call car_hex_to_ascii
+	istoret 1, contw
+	call le_modified_name_att_list
+	fetcht 1,mem_le_name_len
+	copy temp,loopcnt
+	arg mem_le_adv_data+2,contw
+	arg mem_le_name,contr
+	call memcpy
+car_le_modified_name_scan:
+	fetcht 1,mem_le_name_len
+	copy temp,loopcnt
+	arg mem_le_scan_data+2,contw
+	arg mem_le_name,contr
+	branch memcpy
+car_hex_to_ascii:
+	sub temp,9,null
+	branch car_hex_num,positive
+	add temp,55,temp
+	rtn
+car_hex_num:	
+	add temp,48,temp
+	rtn
+
+car_ui_led_init:
+	fetch 1,mem_car_config_blood_led1_gpio
+	bne INVALID_PIN_NUM,car_blood_led_gpio_set
+car_ui_led_init_1:
+	fetch 1,mem_car_config_pairing_led_gpio
+	bne INVALID_PIN_NUM,car_pairing_led_gpio_set
+car_ui_led_init_2:
+	fetch 1,mem_car_config_low_voltage_led_gpio
+	bne INVALID_PIN_NUM,car_low_voltage_led_gpio_set
+car_ui_led_init_3:
+	fetch 1, mem_car_led_num
+	copy pdata,loopcnt
+	setarg mem_car_led_map
+	copy pdata,rega
+car_in_lp1:
+	copy rega,contr
+	ifetch 1,contr
+	copy contr,rega
+	beq INVALID_PIN_NUM,car_in_lp1_end
+	copy pdata,temp
+	call gpio_config_output
+car_in_lp1_end:
+	loop car_in_lp1
+car_ui_led_init_end:
+	rtn
+car_blood_led_gpio_set:
+	fetch 8,mem_car_config_blood_led1_gpio
+	store 8,mem_car_led_map+2
+	branch car_ui_led_init_1
+car_pairing_led_gpio_set:
+	store 1,mem_car_led_map
+	branch car_ui_led_init_2
+car_low_voltage_led_gpio_set:
+	store 1,mem_car_led_map+1
+	branch car_ui_led_init_3
+
+
+car_init_environment:
+	arg 0,rega
+	call pwm_init
+	call car_ir_rx_init
+	call g24_receive_process_init
+	branch car_init_adc_hvin
+
+car_init_adc_hvin:
+	jam 100,mem_car_notify_vdd_value_last
+	fetch 1,mem_car_config_low_voltage_led_gpio
+	store 1,mem_car_style2_struct_led_gpio
+	branch adc_init_data
+	
+car_le_before_hibernate:
+	call gpio_set_before_lpm_common
+	branch keyscan_process_lpm_before
+
+car_le_process_lpm_before:
+	branch keyscan_process_lpm_before
+
+car_key_scan_process:
+//	fetch 1,mem_enable_key_scan
+//	rtn blank
+	branch keyscan_key_process
+
+car_scale_process_idle:
+	call car_le_send_packet
+	call car_ir_receive_process
+	call car_g24_status_process
+	branch car_key_scan_process
+
+car_g24_status_process:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	fetch 1,mem_car_24g_received_pac
+	beq WORK_PAIRED,car_g24_connected_event
+	rtn
+car_g24_connected_event:
+	fetch 1,mem_car_24g_status
+	rtneq WORK_PAIRED
+	jam WORK_PAIRED,mem_car_24g_status
+	branch car_g24_connected
+
+car_le_send_packet:
+	fetch 2,mem_ui_state_map
+	rtnbit0 UI_STATE_BLE_CONNECTED
+	call le_fifo_check_nearly_full
+	nrtn blank
+	arg mem_car_pop_queue_buff,rega
+	call queue_pop
+	nrtn user
+	arg mem_car_pop_queue_buff,contr
+	branch le_send_notify_from_list
+ 
+car_scale_process_bb_event:
+	copy regc,pdata
+	beq BT_EVT_BUTTON_UP,app_event_button_up
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_button_long_pressed
+	beq BT_EVT_LE_CONNECTED,car_scale_event_le_conn
+	beq BT_EVT_LE_DISCONNECTED,car_scale_event_le_discon
+	rtn
+
+car_scale_event_le_conn:
+	setarg disable_24g
+	call g24_store_mem_24g_mode
+	branch car_scale_process_conn
+car_g24_connected:
+	fetch 2,mem_car_24g_no_data_timeout_count
+	store 2,mem_car_24g_no_data_timeout_timer
+car_scale_process_conn:
+	jam 0x14,mem_car_notify_vdd_timer
+	jam 0,mem_lpm_mode
+	call app_ble_stop_adv
+	call app_lpm_mult_enable
+	fetch 1,mem_car_config_pairing_led_conn_status
+	beq 0x01,car_pairing_led_conn_status_setting
+car_scale_process_conn_next:
+	arg 0,rega
+	branch ui_led_on_global
+car_pairing_led_conn_status_setting:
+	arg 0,rega
+	branch ui_led_blink_stop_global
+
+car_scale_event_le_discon:
+	setarg rx_24g
+	call g24_store_mem_24g_mode
+car_g24_disconnect:
+	setarg 0
+	store 5,mem_car_led_control
+	setarg 4
+	call pwm_disable
+	setarg 5
+	call pwm_disable
+	setarg 20
+	call pwm_disable
+	setarg 21
+	call pwm_disable
+	setarg 22
+	call pwm_disable
+	setarg 7
+	call pwm_disable
+	call queue_init
+	jam 10,mem_motor1_speed
+	jam 10,mem_motor2_speed
+	jam 10,mem_motor3_speed
+//	jam 1,mem_lpm_mode
+	jam 2,mem_lpm_mult
+	arg 0,rega
+	call ui_led_blink_start_global
+
+	setarg FAST_ADV_INTERVAL_VALUE_CAR
+	call shutter_ble_adv_interval_set
+	branch app_ble_start_adv
+
+car_le_bb_event_timer:
+//	call car_ui_power_timeout_timer
+	call car_moto1_blank_data_timer
+	call car_moto2_blank_data_timer
+	call car_moto3_blank_data_timer
+	call app_power_timer
+	call car_led_control_timer
+	call car_notify_vdd_timer
+	call car_24g_no_data_timeout_timer
+	call car_ir_breakdown_timer
+	branch car_attack_shake_timer
+
+car_ir_breakdown_timer:
+	arg mem_car_ir_breakdown_check_timer,regc
+	arg car_ir_breakdown_timeout,regb
+	branch timer_single_step
+car_ir_breakdown_timeout:
+	call car_ir_gpio_get_status
+	nrtn true
+	jam 1,mem_car_ir_breakdown_flag
+	rtn
+	
+car_24g_no_data_timeout_timer:
+	arg mem_car_24g_no_data_timeout_timer,regc
+	arg car_24g_no_data_timer_timeout,regb
+	branch timer_single_step_2B
+car_24g_no_data_timer_timeout:
+	jam WORK_SEARCH,mem_car_24g_status
+	branch car_g24_disconnect
+
+car_attack_shake_timer:
+	arg mem_car_attack_shake_timer,regc
+	arg car_attack_shake,regb
+	branch timer_single_step
+car_attack_shake:
+	fetch 1, mem_car_attack_shake_flag
+	branch car_attack_shake_stop,blank
+	jam 2,mem_car_attack_shake_timer
+	jam 0, mem_car_attack_shake_flag
+	setarg 0x0a02
+	store 2,mem_le_receive_payload
+	fetch 1,mem_car_config_device_select
+	beq DEVICE_BATTLE_TANK,car_attack_shake_front_battle_tank
+car_attack_shake_front_battle_car:
+	branch car_motor_control
+car_attack_shake_front_battle_tank:
+	setarg 0x0a02
+	store 2,mem_le_receive_payload+2
+	branch car_motor_control
+car_attack_shake_stop:
+	setarg 0
+	store 4,mem_le_receive_payload
+	branch car_motor_control
+
+car_notify_vdd_timer:
+	fetch 1,mem_car_config_bat_notify_enable
+	rtn blank
+ 	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,car_low_bat_led_off
+	arg mem_car_notify_vdd_timer,regc
+	arg car_notify_vdd,regb
+	branch timer_single_step
+car_notify_vdd:
+	fetch 1,mem_car_notify_vdd_count
+	store 1,mem_car_notify_vdd_timer
+ 	fetch 1,mem_car_working_flag
+ 	nrtn blank
+car_read_hvin:
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	store 2,mem_vdd_now_vol
+	arg mem_vdd_calculate_set,rega
+	call adc_bat_percent_lowpower_out
+	fetcht 1,mem_car_notify_vdd_value_last
+	isub temp,null
+	branch car_notify_vdd_next2,positive
+	store 1,mem_car_notify_vdd_value_last
+	copy pdata,temp
+car_notify_vdd_next2:
+	storet 1,mem_car_notify_vdd_percent
+	fetch 1,mem_car_config_low_voltage_percent
+	isub temp,null
+	call car_enter_low_bat,positive
+	storet 1,mem_notify_bat_payload 
+	arg 6,loopcnt
+	arg mem_notify_bat_head,contr
+	call calc_check_sum_start
+	store 1,mem_notify_bat_check_sum
+	arg mem_notify_bat_packet,rega
+	branch queue_push
+car_enter_low_bat:
+	fetch 1,mem_low_bat_flag
+	nrtn blank
+	jam 1,mem_low_bat_flag
+	arg 1,rega
+	branch ui_led_blink_start_global
+car_low_bat_led_off:
+	arg 1,rega
+	branch ui_led_blink_stop_global
+
+car_led_control_timer:
+	arg mem_car_led_control_timer,regc
+	arg car_led_control,regb
+	branch timer_single_step
+car_led_control:
+	jam 5,mem_car_led_control_timer
+	jam 0,mem_car_led_no
+	fetch 1,mem_car_led_blink_status
+	beq LED_ON,car_led_control_blink_off
+	beq LED_OFF,car_led_control_blink_on
+car_led_control_set:
+	arg mem_car_led_control,contr
+	copy contr,rega
+	arg 8,loopcnt
+car_led_control_timer_next:
+	copy rega,contr
+	ifetch 1,contr
+	copy contr,rega
+	beq LED_OFF,car_led_control_off
+	beq LED_ON,car_led_control_on
+	beq LED_BLINK,car_led_control_blink
+car_led_control_timer_next_2:
+	fetch 1,mem_car_led_no
+	increase 1,pdata
+	store 1,mem_car_led_no
+	loop car_led_control_timer_next
+	rtn
+car_led_switch:
+	fetch 1,mem_car_led_no
+	arg mem_car_config_blood_led_gpio,regb
+	iadd regb,regb
+	ifetcht 1,regb
+	rtn
+car_led_control_off:
+	call car_led_switch
+	call gpio_out_inactive
+	branch car_led_control_timer_next_2
+car_led_control_on:
+	call car_led_switch
+	call gpio_out_active
+	branch car_led_control_timer_next_2
+car_led_control_blink:
+	fetch 1,mem_car_led_blink_status
+	beq LED_ON,car_led_control_off
+	branch car_led_control_on
+car_led_control_blink_on:
+	jam LED_ON,mem_car_led_blink_status
+	branch car_led_control_set
+car_led_control_blink_off:
+	jam LED_OFF,mem_car_led_blink_status
+	branch car_led_control_set
+	
+////////////////////////check sum////////////////////////
+//loopcnt = sum number,contr = ptr
+calc_check_sum_start:
+	arg 0,rega
+calc_check_sum_loop:
+	ifetch 1,contr
+	iadd rega,rega
+	loop calc_check_sum_loop
+calc_check_sum_and:
+	and rega,0xff,pdata
+	rtn
+
+car_le_receive_data:	
+	fetch 1,mem_le_att_opcode
+	beq ATTOP_WRITE_REQUEST,car_le_parse_att_write_request
+	rtn
+car_le_parse_att_write_request:
+	fetch 2,mem_le_att_handle
+	beq ATT_CAR_CONTROL_HANDLE,car_control_le_receive
+	rtn
+
+/*
+*	typedef struct
+*	{
+*		2byte	packet_head				(mem_app_receive_temp)
+*		1byte	packet_cmd				(mem_app_receive_temp+2)
+*		2byte	packet_payload_length	(mem_app_receive_temp+3)
+*		10byte	packet_payload			(mem_app_receive_temp+5)
+*		1byte	packet_check_sum		(mem_app_receive_temp+15)
+*	}
+*/
+le_app_receive_data:
+	bpatch patch1a_0,mem_patch1a
+	ifetch 5,rega
+	store 5,mem_app_receive_temp
+	fetch 2,mem_app_receive_temp
+	arg LE_RECEIVE_PACKET_HEAD,temp
+	isub temp,null
+	nrtn zero
+	fetch 2,mem_app_receive_temp+3
+	byteswap pdata,pdata
+	store 2,mem_app_receive_temp+3
+	copy pdata,loopcnt
+	increase 5,rega
+	copy rega,contr
+	arg mem_app_receive_temp+5,contw
+	call memcpy
+	ifetch 1,contr
+	store 1,mem_app_receive_temp+15
+	arg mem_app_receive_temp+2,rega
+	arg mem_app_receive_temp+5,regb
+	rtn
+
+car_control_le_receive:
+	setarg 0
+	store 5,mem_le_receive_payload
+	store 5,mem_le_receive_payload+5
+	call le_app_receive_data
+	copy regb,contr
+	arg mem_le_receive_payload,contw
+	arg 10,loopcnt
+	call memcpy
+car_receive_cmd_select:
+	bpatch patch1a_1,mem_patch1a
+	ifetch 1,rega
+	beq CAR_CMD_OLD_CAR_CONTROL,car_drive_old
+	beq CAR_CMD_OLD_SPEED_CONTROL,car_speed_set_old
+	beq CAR_CMD_L_R_MOTOR_CONTROL,car_motor_control
+	beq CAR_CMD_F_B_MOTOR_CONTROL,car_motor_control
+	beq CAR_CMD_IR_CONTROL,car_ir_data_rx_from_app
+	beq CAR_CMD_LED_CONTROL,car_led_control_receive
+	beq CAR_CMD_DEVICE_INFO,car_info_request
+	rtn
+
+car_24g_receive_data:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	
+	fetch 2,mem_car_24g_no_data_timeout_count
+	store 2,mem_car_24g_no_data_timeout_timer
+	
+	jam WORK_PAIRED,mem_car_24g_received_pac
+	
+	setarg offset_24g_rxdata_temp_add3
+	call g24_set_rega
+	call car_control_le_receive
+
+	fetch 1,mem_app_receive_temp+2	//cmd
+	beq CAR_CMD_L_R_MOTOR_CONTROL,car_24g_receive_data_next
+	beq CAR_CMD_F_B_MOTOR_CONTROL,car_24g_receive_data_next
+	rtn
+car_24g_receive_data_next:
+	fetch 1,mem_le_receive_payload	//moto1
+	ncall car_moto1_enable_blank_data_timer,blank
+	fetch 1,mem_le_receive_payload+2	//moto2
+	ncall car_moto2_enable_blank_data_timer,blank
+	fetch 1,mem_le_receive_payload+4	//moto3
+	ncall car_moto3_enable_blank_data_timer,blank
+	rtn
+
+car_moto1_enable_blank_data_timer:
+	jam 5,mem_car_moto1_blank_timer
+	rtn
+car_moto2_enable_blank_data_timer:
+	jam 5,mem_car_moto2_blank_timer
+	rtn
+car_moto3_enable_blank_data_timer:
+	jam 5,mem_car_moto3_blank_timer
+	rtn
+
+car_moto1_blank_data_timer:
+	arg mem_car_moto1_blank_timer,regc
+	arg car_moto1_blank_data,regb
+	branch timer_single_step
+car_moto2_blank_data_timer:	
+	arg mem_car_moto2_blank_timer,regc
+	arg car_moto2_blank_data,regb
+	branch timer_single_step
+car_moto3_blank_data_timer:		
+	arg mem_car_moto3_blank_timer,regc
+	arg car_moto3_blank_data,regb
+	branch timer_single_step
+
+car_moto1_blank_data:
+	jam 0,mem_le_receive_payload
+	branch car_motor_control
+car_moto2_blank_data:
+	jam 0,mem_le_receive_payload+2
+	branch car_motor_control
+car_moto3_blank_data:
+	jam 0,mem_le_receive_payload+4
+	branch car_motor_control
+	
+	
+///////////////////////Motor//////////////////////////////////////////
+
+car_drive_old:	
+	call car_left_right_control_old
+	branch car_front_back_control_old
+car_left_right_control_old:
+	fetch 1,mem_le_receive_payload
+	store 1,mem_motor2_status
+	branch car_motor2_control
+car_front_back_control_old:
+	fetch 1,mem_motor1_speed
+	call car_reset_old_speed
+	fetch 1,mem_le_receive_payload+1
+	store 1,mem_motor1_status
+	branch car_motor1_control
+car_reset_old_speed:
+	beq SPEED_LEVEL_2,car_reset_old_speed2
+	beq SPEED_LEVEL_3,car_reset_old_speed3
+	store 1,mem_motor1_speed
+	rtn
+car_reset_old_speed2:
+	jam SPEED_LEVEL_5,mem_motor1_speed
+	rtn
+car_reset_old_speed3:
+	jam SPEED_LEVEL_10,mem_motor1_speed
+	rtn
+car_speed_set_old:
+	fetch 1,mem_le_receive_payload
+	call car_reset_old_speed
+	fetch 1,mem_motor1_speed
+	call car_motor_speed_duty_setting
+	call car_motor_speed_duty_transform
+	branch pwm_pwm0_duty_set
+
+car_motor_control:
+	fetch 1,mem_car_24g_go_die_flag
+	nrtn blank
+	fetch 6,mem_le_receive_payload
+	store 6,mem_motor1_status
+	fetch 1,mem_motor1_speed
+	fetcht 1,mem_motor2_speed
+	iand temp,pdata
+	fetcht 1,mem_motor3_speed
+	iand temp,pdata
+	call car_motor_working_flag,blank
+	bpatch patch1a_2,mem_patch1a
+	call car_motor1_control
+	call car_motor2_control
+	branch car_motor3_control
+car_motor1_control:
+	arg mem_motor1_pwm_set,regb
+	arg mem_motor1_status,contr
+	branch car_motor_status_select
+car_motor2_control:
+	arg mem_motor2_pwm_set,regb
+	arg mem_motor2_status,contr
+	branch car_motor_status_select
+car_motor3_control:
+	arg mem_motor3_pwm_set,regb
+	arg mem_motor3_status,contr
+	branch car_motor_status_select
+car_motor_working_flag:
+	jam 0,mem_car_working_flag
+	rtn
+
+car_motor_status_select:
+	ifetch 1,contr
+	beq MOTOR_STOP,car_motor_stop
+	beq GO_FRONT,car_motor_positive
+	beq GO_BACK,car_motor_negative
+	rtn
+car_motor_positive:
+	jam 0,mem_motor_select_p_n
+	branch car_motor_negative+1
+car_motor_negative:
+	jam 1,mem_motor_select_p_n
+	ifetch 1,contr
+	store 1,mem_car_motor_speed
+	ifetch 8,regb
+	branch car_motor_work
+
+car_motor_stop:
+	ifetch 1,regb
+	call pwm_disable
+	increase 1,regb
+	ifetch 1,regb
+	branch pwm_disable
+car_motor_work:
+	store 8,mem_motor_pwm_pin1_set
+	jam 1,mem_car_working_flag
+	fetch 1,mem_motor_select_p_n
+	beq 0,car_motor_select_positive
+car_motor_select_negative:
+	fetch 1,mem_motor_pwm_pin2_set
+	store 1,mem_motor_pwm_pin_set
+	fetch 1,mem_motor_pwm_pin1_set
+car_motor_work_next:
+	call pwm_disable
+	fetch 1,mem_car_motor_speed
+	call car_motor_speed_duty_setting
+	store 1,mem_motor_pwm_dute_set
+	fetch 6,mem_motor_pwm_pin_set
+	store 6,mem_pdatatemp
+	branch pwm_out_set
+car_motor_select_positive:
+	fetch 1,mem_motor_pwm_pin1_set
+	store 1,mem_motor_pwm_pin_set
+	fetch 1,mem_motor_pwm_pin2_set
+	branch car_motor_work_next
+
+car_motor_speed_duty_setting:
+	mul32 pdata,5,pdata
+	add pdata,50,pdata
+	rtn
+car_motor_speed_duty_transform:
+	arg 12000,temp
+	imul32 temp,pdata
+	div pdata,100
+	call wait_div_end
+	quotient temp
+	copy temp,rega
+	setarg 12000
+	isub temp,regb
+	rtn
+
+/////////////////////IR PROCESS/////////////////////
+car_ir_init:
+	hfetch 1,core_gpio_sel2		// select GPIO3 as pwm4
+	set1 2,pdata
+	hstore 1,core_gpio_sel2
+	setarg 158
+	hstore 2,core_pwm_pcnt4
+	hstore 2,core_pwm_ncnt4
+	rtn
+
+car_ir_data_rx_from_app:
+	fetch 1,mem_car_24g_go_die_flag
+	nrtn blank
+	fetch 2,mem_le_receive_payload
+	store 2,mem_ir_data
+	fetch 1,mem_car_24g_status
+	bne WORK_PAIRED,car_ir_data_tx
+	fetch 2,mem_le_lap
+	store 2,mem_ir_data
+car_ir_data_tx:
+	bpatch patch1a_3,mem_patch1a
+	call car_ir_init
+	call car_ir_enable
+	setarg 48000
+	call sleep
+	call car_ir_disable
+	setarg 7200
+	call sleep
+	arg 16,loopcnt
+car_ir_send_loop:
+	call car_ir_enable
+	fetch 2,mem_ir_data
+	bbit1 0,car_ir_is_bit1
+	setarg 7200
+	call sleep
+	call car_ir_disable
+	branch car_ir_wait_finish
+	
+car_ir_is_bit1:
+	setarg 14400
+	call sleep
+	call car_ir_disable
+car_ir_wait_finish:
+	setarg 7200
+	call sleep
+	fetch 2,mem_ir_data
+	rshift pdata,pdata	
+	store 2,mem_ir_data
+	loop car_ir_send_loop
+
+	jam 2,mem_car_attack_shake_timer
+	jam 1, mem_car_attack_shake_flag
+	setarg 0x0a01
+	store 2,mem_le_receive_payload
+	fetch 1,mem_car_config_device_select
+	beq DEVICE_BATTLE_TANK,car_attack_shake_back_battle_tank
+car_attack_shake_back_battle_car:
+	branch car_motor_control
+car_attack_shake_back_battle_tank:
+	setarg 0x0a01
+	store 2,mem_le_receive_payload+2
+	branch car_motor_control
+	
+car_ir_enable:
+	hfetch 1,core_gpio_key2			// PWM4_enable
+	or_into 0x40,pdata
+	hstore 1,core_gpio_key2	
+	rtn
+car_ir_disable:
+	hfetch 1,core_gpio_key2			// PWM4_disable
+	and_into 0xbf,pdata
+	hstore 1,core_gpio_key2
+	rtn
+	
+car_ir_rx_init:
+	fetch 1,mem_car_config_ir_enable
+	rtneq 0x00
+	call lpm_disable_exen_output
+	fetcht 1,mem_car_config_ir_rx_gpio
+	storet 1,mem_ir_rx_gpio
+	call gpio_config_input
+	call car_ir_gpio_get_status
+	nrtn true
+	jam 1,mem_car_ir_breakdown_check_timer
+	rtn
+
+car_ir_receive_process:
+	fetch 1,mem_car_config_ir_enable
+	rtneq FLAG_IR_DISABLE	
+	fetch 1,mem_car_ir_breakdown_flag
+	nrtn blank
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,car_ir_receive_process_next
+	fetch 1,mem_car_24g_status
+	rtnne WORK_PAIRED
+car_ir_receive_process_next:
+	bpatch patch1a_4,mem_patch1a
+	call car_ir_gpio_get_status
+	nrtn true
+	setarg 36000
+	call sleep
+	call car_ir_gpio_get_status
+	nrtn true
+	call car_ir_clk_get
+car_ir_packet_head_wait_end:
+	call car_ir_clk_check
+	nrtn positive
+	call car_ir_gpio_get_status
+	branch car_ir_packet_head_wait_end,true
+	arg 0,rega
+	arg 16,loopcnt
+	call car_ir_clk_get
+car_ir_receive_process_loop:
+	call car_ir_clk_check
+	nrtn positive
+	call car_ir_gpio_get_status
+	nbranch car_ir_receive_process_loop,true
+	setarg 10800
+	call sleep
+	call car_ir_gpio_get_status
+	branch car_ir_get_bit1,true
+car_ir_get_bit0:
+	setarg 0
+ 	rshift rega,rega
+	ior rega,rega
+	loop car_ir_receive_process_loop
+	branch car_ir_receive_process_end
+car_ir_get_bit1:
+	setarg 0x8000
+	rshift rega,rega
+	ior rega,rega
+	call car_ir_clk_get
+car_ir_get_bit1_wait_low_end:
+	call car_ir_clk_check
+	nrtn positive
+	call car_ir_gpio_get_status
+	branch car_ir_get_bit1_wait_low_end,true
+	loop car_ir_receive_process_loop
+car_ir_receive_process_end:
+	bpatch patch1a_5,mem_patch1a
+	copy rega,pdata
+	store 2,mem_ir_rx_buf
+	store 2,mem_ir_notify_data+8
+	fetch 1,mem_car_24g_status
+	beq WORK_PAIRED,car_ir_24g_receive_attack
+car_ir_data_notify:
+	arg 0x07,loopcnt
+	arg mem_ir_notify_data_head,contr
+	call calc_check_sum_start
+	store 1,mem_ir_notify_data_check_sum
+	arg mem_ir_notify_data,rega
+	branch queue_push
+
+car_ir_24g_receive_attack:
+	fetch 1,mem_car_24g_ir_receive_attack_count
+	increase 1,pdata
+	store 1,mem_car_24g_ir_receive_attack_count
+	div pdata,2
+	call wait_div_end
+	quotient temp
+	remainder pdata
+	nbranch car_ir_24g_receive_attack_blink,blank
+car_ir_24g_receive_attack_off:
+	fetch 1,mem_car_config_led_num
+	isub temp,null
+	call car_ir_24g_go_die,zero
+	arg mem_car_led_control,pdata
+	increase -1,temp
+	iadd temp,rega
+	arg 0,pdata
+	istore 1,rega
+	rtn
+car_ir_24g_receive_attack_blink:
+	arg mem_car_led_control,pdata
+	iadd temp,rega
+	arg 2,pdata
+	istore 1,rega
+	rtn
+car_ir_24g_go_die:
+	jam 1,mem_car_24g_go_die_flag
+	rtn
+car_ir_clk_get:
+	copy clkn_bt,pdata
+	store 4,mem_ir_receive_clkn
+	rtn
+car_ir_clk_check:
+	copy clkn_bt,pdata
+	fetcht 4,mem_ir_receive_clkn
+	isub temp,pdata
+	sub pdata,200,null
+	rtn
+
+car_ir_gpio_get_status:
+	fetcht 1,mem_ir_rx_gpio
+	branch gpio_get_bit
+
+car_led_control_receive:
+	fetch 8,mem_le_receive_payload
+	store 8,mem_car_led_control
+	rtn
+
+car_info_request:
+	fetch 1,mem_car_config_device_select
+	store 1,mem_car_info_request_payload
+	fetch 1,mem_car_config_motor_layout
+	store 1,mem_car_info_request_payload+1
+	fetch 1,mem_car_config_ir_enable
+	store 1,mem_car_info_request_payload+2
+	arg 13,loopcnt
+	arg mem_car_info_request_head,contr
+	call calc_check_sum_start
+	store 1,mem_car_info_request_checksum
+	arg mem_car_info_request,rega
+	branch queue_push
+    
+
+
+
+
+light_init:
+	call clear_eeprom_size_2k
+	jam 0x7a,mem_curr_packet_num
+	call light_load_controler_list
+	call light_init_crr_cmd_count
+	setarg light_pairing_timer
+	store 2,mem_cb_event_timer
+	arg 0,rega
+	branch pwm_init
+
+light_pairing_timer:
+	fetch 2,mem_light_pairing_timer
+	rtn blank
+	increase -1,pdata
+	store 2,mem_light_pairing_timer
+	rtnne 0
+	jam 0,mem_light_pairing_enable
+	rtn
+
+light_init_crr_cmd_count:
+	bpatch patch1a_6,mem_patch1a
+	fetch 1,mem_light_next_record
+	sub pdata,40,null
+	rtn positive
+	jam 0,mem_light_next_record
+	rtn
+
+light_load_controler_list:
+	arg mem_light_next_record,rega
+	arg 0,regb
+	arg 81,temp
+	branch iicd_read_eep_data
+
+//output user:group record find
+light_find_controler_pairing:
+	disable user
+	fetch 1,mem_light_cnum
+	copy pdata,loopcnt
+	
+	arg mem_light_clist,rega
+	copy regc,regb
+light_find_controler_pairing_loop:
+	bpatch patch1a_7,mem_patch1a
+	call light_compare_addr_record
+	branch enable_user,zero
+light_find_single_pairing_diff:
+	increase 4,rega
+	loop light_find_controler_pairing_loop
+	rtn
+
+//rega: regb:
+light_compare_addr_record:
+	bpatch patch1b_0,mem_patch1b
+	ifetch 3,rega
+	ifetcht 3,regb
+	isub temp,null
+	rtn
+//rega: regb:
+light_compare_single_record:
+	bpatch patch1b_1,mem_patch1b
+	ifetch 3,rega
+	ifetcht 3,regb
+	isub temp,null
+	nrtn zero
+	ifetch 1,contr
+	sub pdata,0,null //0 zero
+	rtn zero
+	add rega,3,contr
+	ifetcht 1,contr
+	isub temp,null
+	rtn
+
+//output:find single controler
+light_find_controler_cmd:
+	bpatch patch1b_2,mem_patch1b
+	disable user
+	fetch 1,mem_light_cnum
+	copy pdata,loopcnt
+	
+	arg mem_light_clist,rega
+	copy regc,regb
+light_find_controler_cmd_loop:
+	call light_compare_single_record
+	branch enable_user,zero
+	increase 4,rega
+	loop light_find_controler_cmd_loop
+	rtn
+
+//regc
+light_recv_adv:
+	fetch 1,mem_le_scanrsp_rcv
+	increase 1,pdata
+	store 1,mem_le_scanrsp_rcv
+	arg mem_le_rxbuf+12,regc
+
+light_anylize_command:
+	ifetch 2,regc
+	arg 0x55aa,temp
+	isub temp,null
+	nrtn zero
+	copy contr,regc
+	ifetcht 3,regc
+	setarg 0xffffff
+	isub temp,null
+	branch light_parse_cmd,zero
+	call light_find_controler_cmd
+	branch light_parse_cmd,user
+	rtn
+
+light_parse_cmd:
+	bpatch patch1b_3,mem_patch1b
+	increase 4,regc
+	ifetch 1,regc
+	fetcht 1,mem_curr_packet_num
+	isub temp,null
+	rtn zero
+	store 1,mem_curr_packet_num
+	fetch 1,mem_le_req_rcv
+	increase 1,pdata
+	store 1,mem_le_req_rcv
+	
+	increase 1,regc
+	ifetch 1,regc
+	store 1,mem_light_crr_cmd_count
+	copy pdata,loopcnt
+	rtn blank
+light_parse_cmd_loop:
+	ifetch 1,contr
+	beq LIGHT_CMD_PWM0,light_parse_cmd_pwm0
+	beq LIGHT_CMD_PWM1,light_parse_cmd_pwm1
+	beq LIGHT_CMD_PWM2,light_parse_cmd_pwm2
+	beq LIGHT_CMD_PWM3,light_parse_cmd_pwm3
+	beq LIGHT_CMD_PWM4,light_parse_cmd_pwm4
+	beq LIGHT_CMD_PWM5,light_parse_cmd_pwm5
+	beq LIGHT_CMD_AUTO_MODE,light_parse_auto_mode
+	beq LIGHT_CMD_PAIRING,light_parse_pairing
+	loop light_parse_cmd_loop
+	rtn
+
+light_parse_cmd_pwm0:
+	copy contr,regc
+	fetch 1,mem_light_pwm0
+	store 1,mem_pdatatemp
+	arg 0,temp
+light_parse_cmd_pwm_common:
+	storet 1,mem_pdatatemp+1
+	setarg 10000
+	store 3,mem_pdatatemp+2
+	ifetch 1,regc
+	store 1,mem_pdatatemp+5
+	call  pwm_out_set
+	and regc,1,contr
+	loop light_parse_cmd_loop
+	rtn
+light_parse_cmd_pwm1:
+	copy regc,contr
+	fetch 1,mem_light_pwm1
+	store 1,mem_pdatatemp
+	arg 1,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm2:
+	copy regc,contr
+	fetch 1,mem_light_pwm2
+	store 1,mem_pdatatemp
+	arg 2,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm3:
+	copy regc,contr
+	fetch 1,mem_light_pwm3
+	store 1,mem_pdatatemp
+	arg 3,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm4:
+	copy regc,contr
+	fetch 1,mem_light_pwm4
+	store 1,mem_pdatatemp
+	arg 4,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm5:
+	copy regc,contr
+	fetch 1,mem_light_pwm5
+	store 1,mem_pdatatemp
+	arg 5,temp
+	branch light_parse_cmd_pwm_common
+
+light_parse_auto_mode:
+	ifetch 1,contr
+	rtn
+
+light_parse_pairing:
+	copy contr,regc
+	fetch 1,mem_light_pairing_enable
+	bne 1,light_parse_pairing_abandon
+	call update_controler_list
+light_parse_pairing_abandon:
+	and regc,4,contr
+	rtn
+update_controler_list:
+	bpatch patch1b_4,mem_patch1b
+	call light_find_controler_pairing
+	branch update_conrtoler_list_found,user
+	fetch 1,mem_light_next_record
+	copy pdata,temp
+	increase 1,pdata
+	store 1,mem_light_next_record
+	call light_init_crr_cmd_count
+	lshift2 temp,temp
+	setarg mem_light_clist
+	iadd temp,contw
+	ifetch 4,regc
+	istore 4,contw
+	branch update_conrtoler_store_list
+update_conrtoler_list_found:
+	add regc,3,contr
+	ifetch 1,contr
+	rtn blank
+	ifetch 4,regc
+	istore 4,rega
+update_conrtoler_store_list:
+	arg mem_light_next_record,rega
+	arg 0,regb
+	arg 81,temp
+	branch iicd_write_eep_data
+
+
+
+lightc_init:
+	//key scan init
+
+	//gpio init
+	fetcht 1,mem_lightc_led_gpio
+	call gpio_out_inactive
+	rtn
+
+
+lightc_dispatch:
+	//key scan 
+	
+	fetcht 1,mem_lightc_led_gpio
+	call gpio_out_active
+
+
+	fetcht 1,mem_lightc_led_gpio
+	call gpio_out_inactive
+
+	//
+	call lightc_start_adv
+
+	fetch 1,mem_adv_time
+	nrtn blank
+	//sleep 
+	call lpm_write_gpio_wakeup
+	hfetch 4,core_lpm_ctrl
+	set0 15,pdata						/* lowest lpo */
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	arg param_hibernate_clks,temp
+	branch lpm_sleep
+
+lightc_adv:
+	fetch 1,mem_adv_time
+	branch le_adv_loop_tx,blank
+	increase -1,pdata
+	store 1,mem_adv_time
+	branch le_adv_loop_tx
+
+lightc_start_adv:
+	mul32 pdata,20,pdata
+	arg mem_cmd0_string,contr
+	iadd contr,contr
+	ifetch 1,contr
+	rtn blank
+	copy pdata,rega
+	copy rega,loopcnt
+	arg mem_le_adv_data+2,contw
+	call memcpy
+	copy rega,pdata
+	increase 2,pdata
+	store 1,mem_le_adv_data_len
+	rtn
+
+
+
+
+
+
+module_init:
+	
+	rtn wake
+	call le_modified_name
+	call adc_init_data
+	setarg module_process_idle
+	store 2,mem_cb_idle_process
+	setarg module_bt_conn_process
+	store 2,mem_cb_bt_process
+	setarg module_process_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg module_le_conn_process
+	store 2,mem_cb_le_process
+	setarg module_lpm_lock
+	store 2,mem_cb_check_wakelock
+	setarg module_hci_cmd_transmit_le_notify
+	store 2,mem_cb_ble_transmit
+	setarg module_hci_event_receive_spp_data
+	store 2,mem_cb_receive_spp_data
+	setarg module_le_receive_data
+	store 2,mem_cb_att_write
+	setarg module_bb_event_timer
+	store 2,mem_cb_event_timer
+
+	call module_spp_clear_last_transmite_clock
+	bpatch patch1b_5,mem_patch1b
+	call module_lpm_uart_init
+	call module_gpio_init
+	call check_module_disabled
+	branch module_hci_event_enter_standby_mode
+
+
+module_lpm_uart_init:
+	fetch 4,mem_module_uart_rx_buffer
+	hstore 4,core_uart_rsaddr
+
+	fetch 4,mem_module_uart_tx_buffer
+	hstore 4,core_uart_tsaddr
+
+	hfetch 1,core_gpio_sel1
+	or_into 0x04,pdata
+	and_into 0xfc,pdata
+	hstore 1,core_gpio_sel1
+	jam 0x00,core_uart_ctrl
+
+	fetch 2,mem_module_uart_rx_buffer
+	hstore 2,core_uart_rrptr
+	fetch 2,mem_module_uart_tx_buffer
+	hstore 2,core_uart_twptr
+	hstore 2,core_uart_trptrp
+
+	hfetch 4,core_gpio_pu0
+	set1 7,pdata
+	hstore 4,core_gpio_pu0
+	
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_UART,pdata
+	hstore 2,core_clkoff
+	call uart_set_baud_by_mem
+	jam uartclk_crystal,core_uart_clksel
+	jam uart_ctrl_h4,core_uart_ctrl
+
+	fetch 1,mem_module_flag
+	isolate1 MODULE_FLAG_UART_FLOW_CONTROL,pdata
+	hfetcht 1,core_uart_ctrl
+	setflag true,4,temp
+	hstoret 1,core_uart_ctrl
+	rtn
+	
+
+
+module_lpm_init:
+	call module_spp_clear_last_transmite_clock
+	branch module_lpm_uart_init
+//	branch module_gpio_init
+	
+module_gpio_init:
+	//module state pin
+//	call ui_led_init	
+//	call app_led_start_blink
+	//module conn state pin
+	fetcht 1,mem_module_connect_state_gpio
+	call gpio_config_output
+	call module_set_conn_pin_low
+	
+	fetcht 1,mem_module_wake_up_gpio
+	branch gpio_config_input
+
+module_lpm_lock:
+	fetcht 1,mem_module_wake_up_gpio
+	call gpio_get_bit
+	nbranch app_put_lpm_wake_lock,true
+	branch app_get_lpm_wake_lock
+
+	
+module_le_conn_process:
+	rtn
+
+module_bt_conn_process:
+	call module_spp_enter_sniff
+	branch module_control_air_flow
+
+module_spp_enter_sniff:
+	fetch 1,mem_ui_state_map
+	bbit0 UI_STATE_BT_SPP_CONN,module_spp_clear_last_transmite_clock
+	bpatch patch1b_6,mem_patch1b
+	setarg 0x3eff
+	fetcht 4,mem_last_transmite_clock
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_SNIFF,module_spp_clear_last_transmite_clock
+	fetch 1,mem_module_flag
+	rtnbit1 MOUDLE_TASK_SNIFF
+	call module_set_sniff_task_flag
+	call app_bt_enter_sniff
+module_spp_clear_last_transmite_clock:
+	copy clkn_bt,pdata
+	store 4,mem_last_transmite_clock
+	rtn
+	
+
+module_process_idle:
+	call module_control_air_flow
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	branch module_process
+
+	
+module_process_bb_event:
+	copy regc,pdata
+	beq BT_EVT_BB_CONNECTED,module_process_bb_conn
+	beq BT_EVT_BB_DISCONNECTED,module_process_bb_event_disconned
+	beq BT_EVT_RECONN_FAILED,module_process_reconn_fail
+	beq BT_EVT_SETUP_COMPLETE,module_process_setup_complete
+	beq BT_EVT_SPP_CONNECTED,module_process_spp_connected
+	beq BT_EVT_SPP_DISCONNECTED,module_process_spp_disconnected
+	beq BT_EVT_PINCODE_REQ,module_process_evt_pincode_req
+	beq BT_EVT_ENTER_SNIFF,module_process_enter_sniff
+	beq BT_EVT_EXIT_SNIFF,module_process_exit_sniff
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,module_process_page_time_out
+	beq BT_EVT_LE_CONNECTED,module_process_le_conn
+	beq BT_EVT_LE_DISCONNECTED,module_process_bb_even_le_disconn
+	beq BT_EVT_SNIFF_NOT_ACCEPT,module_process_sniff_not_accept
+	beq BT_EVT_UNSNIFF_ACCEPT,module_process_unsniff_accept
+	beq BT_EVT_UNSNIFF_NOT_ACCEPT,module_process_unsniff_not_accept
+	beq BT_EVT_LE_PAIRING_FAIL,module_hci_event_le_pairing_fail
+	beq BT_EVT_LE_PAIRING_SUCCESS,module_hci_event_le_pairing_success
+	beq BT_EVT_LE_START_ENC,module_hci_event_start_enc
+	beq BT_EVT_LE_PAUSE_ENC,module_hci_event_pause_enc
+	beq BT_EVT_LE_TK_GENERATE,module_hci_event_le_tk
+	beq BT_EVT_BT_GKEY_GENERATE,module_hci_event_gkey_generate
+	beq BT_EVT_BT_GET_PASSKEY,module_hci_event_passkey_entry_mode
+	beq BT_EVT_BT_PAIRING_FAIL,module_hci_event_bt_pairing_fail	
+	beq BT_EVT_BT_PAIRING_SUCCESS,module_hci_event_bt_pairing_success
+	beq BT_EVT_LE_GKEY_GENERATE,module_hci_event_le_gkey
+	beq BT_EVT_STORE_NVRAM,module_hci_event_store_device
+	beq BT_EVT_LE_LTK_LOST,module_process_ble_ltk_lost
+	rtn
+
+	
+module_process_bb_event_disconned:
+	call module_spp_clear_last_transmite_clock
+	fetch 1,mem_flag_pairing_state
+	ncall module_hci_event_bt_pairing_fail,blank
+	call module_disconn_start
+	fetch 2,mem_ui_state_map
+	rtnbit0 UI_STATE_BT_SPP_CONN
+	branch  module_spp_disconnected
+
+module_process_spp_connected:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_SPP_CONN,pdata
+	store 2,mem_ui_state_map
+	fetch 1,mem_module_spp_lpm_mult
+	store 1,mem_lpm_mult
+	call module_set_conn_pin_low
+	branch module_hci_event_spp_connect
+
+module_process_spp_disconnected:
+//	branch module_spp_disconnected
+module_spp_disconnected:
+	fetch 2,mem_ui_state_map
+	rtnbit0 UI_STATE_BT_SPP_CONN
+	set0 UI_STATE_BT_SPP_CONN ,pdata
+	store 2,mem_ui_state_map
+	branch module_hci_event_spp_disconnect
+
+
+module_process_enter_sniff:
+
+module_sniff_param_check:
+	call module_spp_clear_last_transmite_clock
+	//fetch 1,mem_context
+	//rtnbit0 state_insniff
+	fetch 2,mem_context+coffset_tsniff
+	rshift pdata,pdata
+	fetcht 2,mem_sniff_param_interval
+	isub temp,null
+	nbranch module_sniff_param_check_unsniff,zero
+	branch app_lpm_mult_enable
+module_sniff_param_check_unsniff:
+	fetch 1,mem_module_flag
+	rtnbit1 MOUDLE_TASK_UNSNIFF
+	hfetch 2,core_uart_rxitems    //*
+	ncall module_set_unsniff_task_flag,blank    //*仰
+	branch app_bt_sniff_exit
+
+module_process_exit_sniff:
+	call module_clear_sniff_task_flag
+	branch app_lpm_mult_disable
+ 	
+module_process_setup_complete:
+	call module_spp_clear_last_transmite_clock
+	branch module_conn_start
+	
+module_process_bb_even_le_disconn:
+	call le_clr_config_more_data
+	call module_disconn_start
+	branch module_hci_event_le_disconnect
+
+module_process_evt_pincode_req:
+	branch  app_bt_set_pincode
+	
+
+module_process_sniff_not_accept:
+	branch module_clear_sniff_task_flag
+
+
+module_process_unsniff_accept:
+	fetch 1,mem_module_flag
+	bbit0 MOUDLE_TASK_UNSNIFF,app_bt_enter_sniff
+	branch module_clear_unsniff_task_flag
+
+	
+module_process_unsniff_not_accept:
+	branch module_clear_unsniff_task_flag
+
+	
+module_process_le_conn:
+	call le_send_att_exchange_mtu_requset
+	call module_conn_start
+	fetch 1,mem_module_le_lpm_mult
+	store 1,mem_lpm_mult
+	branch module_hci_event_le_connect
+
+
+module_process_bb_conn:
+	jam 0,mem_flag_mode_ssp_pin
+	call module_clear_sniff_task_flag
+	branch module_clear_unsniff_task_flag
+
+module_process_page_time_out:
+module_process_reconn_fail:
+module_disconn_start:
+	call module_start_adv_discovery_by_command
+	branch module_set_conn_pin_high
+
+
+module_process_ble_ltk_lost:
+	call le_send_reject_ind
+	branch le_send_smp_security_request
+
+
+module_set_conn_pin_high:
+	fetcht 1,mem_module_connect_state_gpio
+	branch gpio_out_active
+
+module_conn_start:
+	call module_stop_adv_discovery
+	branch module_set_conn_pin_low
+	
+module_stop_adv_discovery:
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BT_BIT,pdata
+	call app_bt_stop_discovery,true
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BLE_BIT,pdata
+	call app_ble_stop_adv,true
+	rtn
+module_set_conn_pin_low:
+	fetcht 1,mem_module_connect_state_gpio
+	branch gpio_out_inactive
+
+module_process_with_credit:
+	fetch 1,mem_credit_flag
+	rtneq CREDIT_DISABLE
+	branch rfcomm_send_uih_without_payload
+
+module_process:
+	hfetch 1,core_uart_status
+	bbit1 uart_status_rx_fifo_empty,module_process_with_credit  //rx no data
+	call uartd_prepare_rx
+	ifetch 1,contru
+	bne 0x01,module_hci_in_excp
+	hfetch 2,core_uart_rxitems
+	sub pdata,2,null
+	rtn positive
+	ifetch 1,contru
+	store 1,mem_module_uart_opcode
+	ifetcht 1,contru
+	copy contru,rega
+	storet 1,mem_module_uart_len
+	add temp,3,temp
+	hfetch 2,core_uart_rxitems
+	isub temp,temp
+	nrtn positive
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	call module_hci_cmd_control
+	fetch 1,mem_module_temp_nl_discard_packet
+	rtneq HCI_NOT_DISCARD_PACKET
+	branch module_hci_dicard_packet //discard this packet
+
+module_hci_in_excp:
+	call delay_10ms
+	call module_hci_event_invalid_packet
+	branch module_hci_release_except
+
+
+module_hci_release_except:
+	bpatch patch1b_7,mem_patch1b
+	hfetch 2,core_uart_rxitems
+	rtn blank
+	call uartd_prepare_rx
+	ifetch 1,contru
+	sub pdata,0x01,null
+	ncall module_hci_dicard_bytes,zero
+	nbranch module_hci_release_except,zero
+	ifetch 1,contru
+	rtneq HCI_CMD_SPP_DATA_REQ
+	rtneq HCI_CMD_SET_CREDIT_GIVEN
+	increase -1,contru
+	call module_hci_dicard_bytes
+	branch module_hci_release_except
+
+module_hci_dicard_packet:
+	call uartd_prepare_rx
+	increase 2,contru
+	ifetch 1,contru
+	iadd contru,contru
+module_hci_dicard_bytes:
+	branch uartd_rxdone
+	
+/*********************HCI CONTROL*********************/
+module_hci_cmd_control:
+	bpatch patch1c_0,mem_patch1c
+	fetch 1,mem_module_uart_opcode
+	beq HCI_CMD_SET_BT_ADDR_REQ,module_hci_cmd_set_bt_addr
+	beq HCI_CMD_SET_LE_ADDR_REQ,module_hci_cmd_set_le_addr
+	beq HCI_CMD_SET_VISIBILITY_REQ,module_hci_cmd_set_visibility	
+	beq HCI_CMD_SET_BT_NAME_REQ,module_hci_cmd_set_bt_name
+	beq HCI_CMD_SET_LE_NAME_REQ,module_hci_cmd_set_le_name
+	beq HCI_CMD_SPP_DATA_REQ,module_hci_cmd_receive_spp_data
+	beq HCI_CMD_LE_DATA_REQ,module_hci_cmd_receive_le_data
+	beq HCI_CMD_STATUS_IRQ,module_hci_cmd_inquire_status
+	beq HCI_CMD_SET_PAIRING_REQ,module_hci_cmd_set_pairing_mode
+	beq HCI_CMD_SET_PINCODE_REQ,module_hci_cmd_set_pincode	
+	beq HCI_CMD_SET_UARTCONTROL_REQ,module_hci_cmd_set_uart_control_mode
+	beq HCI_CMD_SET_UART_BAUD_REQ,module_hci_cmd_set_uart_baud
+	beq HCI_CMD_VERSION_REQ,module_hci_cmd_version_request
+	beq HCI_CMD_BT_DISCONNECT,module_hci_cmd_bt_disconnect
+	beq HCI_CMD_BLE_DISCONNECT,module_hci_cmd_ble_disconnect
+	beq HCI_CMD_SET_NVRAM_REQ,module_hci_cmd_set_nvram
+	beq HCI_CMD_CONFIRM_GKEY,module_hci_cmd_confirm_gkey
+	beq HCI_CMD_SET_CREDIT_GIVEN,module_hci_cmd_set_credit_given
+	beq HCI_CMD_AUTO_ADV_SCAN,module_hci_cmd_auto_adv
+	beq HCI_CMD_POWER_REQ,module_hci_cmd_power_request
+	beq HCI_CMD_POWER_SET,module_hci_cmd_power_set
+	beq HCI_CMD_PASSKEY_ENTRY,module_hci_cmd_passkey_entry
+	beq HCI_CMD_SET_GPIO,module_hci_cmd_set_gpio
+	beq HCI_CMD_READ_GPIO,module_hci_cmd_read_gpio
+	beq HCI_CMD_LE_SET_PAIRING,module_hci_cmd_le_set_pairing_mode
+	beq HCI_CMD_LE_SET_ADV_DATA,module_hci_cmd_le_set_adv_data
+	beq HCI_CMD_LE_SET_SCAN_DATA,module_hci_cmd_le_set_scan_data
+	beq HCI_CMD_LE_SEND_CONN_UPDATE_REQ,module_hci_cmd_le_send_conn_update_req
+	beq HCI_CMD_LE_SET_ADV_PARM,module_hci_cmd_set_le_adv_parameter
+	beq HCI_CMD_LE_START_PAIRING,module_hci_cmd_le_start_pairing
+	beq HCI_CMD_SET_WAKE_GPIO,module_hci_cmd_set_wake_gpio
+	beq HCI_CMD_SET_TX_POWER,module_hci_cmd_set_tx_power
+	beq HCI_CMD_LE_CONFIRM_GKEY,module_hci_cmd_le_confirm_gkey
+	beq HCI_CMD_REJECT_JUSTWORK,module_hci_cmd_set_reject_justwork_flag
+	beq HCI_CMD_RESET_CHIP_REQ,module_hci_cmd_reset_chip
+	beq HCI_CMD_LE_SET_FIXED_PASSKEY,module_hci_cmd_le_set_fixed_passkey
+	beq HCI_TEST_CMD_CLOSE_LPM,module_hci_test_cmde_close_lpm
+	branch  module_hci_event_receive_invalid_cmd
+
+/*********************HCI COMMAND*********************/
+
+//command opcode 0x00
+module_hci_cmd_set_bt_addr:
+	fetch 1,mem_module_uart_len
+	bne 6,module_hci_event_receive_invalid_cmd
+	ifetch 6,contru
+	store 6,mem_lap
+	branch module_hci_event_receive_valid_cmd
+
+//command opcode 0x01
+module_hci_cmd_set_le_addr:
+	fetch 1,mem_module_uart_len
+	bne 6,module_hci_event_receive_invalid_cmd
+	ifetch 6,contru
+	store 6,mem_le_lap
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x02
+module_hci_cmd_set_visibility:
+	fetch 1,mem_module_uart_len
+	bne 1,module_hci_event_receive_invalid_cmd
+	copy rega,contru
+	call module_hci_event_receive_valid_cmd
+	ifetcht 1,contru
+	storet 1,mem_module_bluetooth_stauts_by_command
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	rtnbit1 UI_STATE_BT_CONNECTED
+module_start_adv_discovery_by_command:
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BT_BIT,pdata
+	nbranch moudle_start_adv_by_command,true
+	fetcht 1,mem_module_bluetooth_stauts_by_command
+	and temp,0x03,pdata
+	store 1,mem_scan_mode
+moudle_start_adv_by_command:
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BLE_BIT,pdata
+	nrtn true
+	fetcht 1,mem_module_bluetooth_stauts_by_command
+	isolate1 2,temp
+	branch app_ble_start_adv,true
+	branch app_ble_stop_adv
+
+
+//command opcode 0x03
+module_hci_cmd_set_bt_name:
+	fetch 1,mem_module_uart_len
+	sub pdata,67,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_local_name_length
+	arg 8,loopcnt
+	call memset0
+	fetch 1,mem_module_uart_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_local_name,contw
+	call uart_copy_rx_bytes_fast
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x04
+module_hci_cmd_set_le_name:
+	fetch 1,mem_module_uart_len
+	sub pdata,29,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_le_name_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_le_name,contw
+	call uart_copy_rx_bytes_fast
+	call le_modified_name
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x05
+module_hci_cmd_receive_spp_data:
+	fetch 1,mem_ui_state_map
+	bbit0 UI_STATE_BT_SPP_CONN,module_hci_event_receive_invalid_cmd
+	call app_check_sniff
+	branch module_hci_cmd_spp_exit_sniff,true
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+//	call p_nl_clear_last_transmite_clock
+	call module_spp_clear_last_transmite_clock
+	fetch 1,mem_remote_credits
+	rtn blank
+	fetch 2,mem_nl_rx_len_all
+	bne 0,module_hci_cmd_pass_init_ng_rx_len_all
+	fetch 1,mem_module_uart_len
+	store 2,mem_nl_rx_len_all
+
+	copy rega,contru
+//	ifetch 2,contru
+//	store 2,mem_nl_rx_handle
+	copy contru,pdata
+	store 2,mem_nl_rx_data_src
+module_hci_cmd_pass_init_ng_rx_len_all:
+	call module_hci_cmd_get_current_packet_len_and_remain_len
+	branch spp_tx_rfcomm_packet
+	
+module_hci_cmd_spp_exit_sniff:
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	branch module_exit_sniff
+
+module_hci_cmd_get_current_packet_len_and_remain_len:
+	call module_hci_cmd_get_current_patcket_len
+	fetch 2,mem_nl_rx_len_all
+	fetcht 2,mem_current_packet_length
+	isub temp,pdata
+	store 2,mem_nl_rx_len_all
+	rtn
+
+module_hci_cmd_get_current_patcket_len:
+	fetch 2,mem_nl_rx_len_all
+	arg DM_REFCOM_BUFF_LEN,temp
+	call not_greater_than
+	fetcht 2,mem_rfcomm_max_frame_size
+	call not_greater_than
+	fetcht 2,mem_pn_max_frame_size
+	call not_greater_than
+	store 2,mem_current_packet_length
+	rtn
+
+module_hci_command_tx_spp_tx_complete:
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	jam HCI_CMD_SPP_DATA_REQ,mem_module_uart_opcode
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x09
+module_hci_cmd_receive_le_data:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,module_hci_event_receive_invalid_cmd
+	call module_check_ble_encrypt_state
+	branch module_hci_event_receive_invalid_cmd,user
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet 
+	fetch 1,mem_module_flag
+	bbit1 MODULE_FLAG_BLE_DATA_FINISH,module_hci_cmd_receive_le_data_finish
+	fetch 1,mem_module_hci_notify_len
+	nrtn blank
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet 
+	ifetch 2,contru		//handle
+	store 2,mem_module_hci_notify_handle
+	copy contru,pdata
+	store 2,mem_module_hci_nofiy_addr
+	fetch 1,mem_module_uart_len
+	pincrease -2
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	branch module_hci_event_receive_invalid_cmd,zero
+	store 1,mem_module_hci_notify_len
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	call le_set_config_more_data
+	call module_hci_cmd_transmit_le_notify
+	call module_hci_cmd_transmit_le_notify
+	call module_hci_cmd_transmit_le_notify
+	fetch 1,mem_module_flag
+	rtnbit0 MODULE_FLAG_BLE_DATA_FINISH
+module_hci_cmd_receive_le_data_finish:
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet 
+	call module_clear_le_tx_data_flag
+	branch module_hci_event_receive_valid_cmd
+
+module_hci_cmd_transmit_le_notify:
+	fetch 1,mem_module_hci_notify_len
+	rtn blank
+	call le_fifo_check_nearly_full
+	nrtn blank				//no fifo
+	call module_get_le_remote_mtu
+	bpatch patch1c_1,mem_patch1c
+	add temp,-3,pdata		//sub handle and opcode
+	fetcht 1,mem_module_hci_notify_len
+	call not_greater_than
+	copy pdata,rega
+	copy temp,pdata
+	isub rega,pdata
+	store 1,mem_module_hci_notify_len
+	fetcht 2,mem_module_hci_notify_handle
+	call le_att_malloc_tx_notify
+	fetch 2,mem_module_hci_nofiy_addr
+	copy pdata,contru
+	copy rega,loopcnt
+	call uart_copy_rx_bytes_fast
+	copy contru,pdata
+	store 2,mem_module_hci_nofiy_addr
+	fetch 1,mem_module_hci_notify_len
+	nrtn blank
+	branch module_set_le_tx_data_flag
+
+
+//output: temp is master mtu
+module_get_le_remote_mtu:
+	arg 0x17,temp
+	fetch 1,mem_module_flag
+	rtnbit1 MODULE_FLAG_BLE_SEND_MTU23
+	fetcht 2,mem_le_remote_mtu
+	rtn
+
+module_check_ble_encrypt_state:
+	fetch 1,mem_module_flag
+	bbit1 MODULE_FLAG_BLE_DATA_ENCRYPT,le_check_encrypt_state
+	branch disable_user
+	
+
+//command opcode 0x0b
+module_hci_cmd_inquire_status:
+	branch module_hci_event_status_res
+
+
+//command opcode 0x0c
+module_hci_cmd_set_pairing_mode:
+	copy rega,contru
+	ifetch 1,contru
+	beq PAIRING_PINCODE,module_hci_pairing_pincode_mode
+	beq PAIRING_JUSTWORK,module_hci_pairing_just_work_mode
+	beq PAIRING_PASSKEY,module_hci_pairing_passkey
+	beq PAIRING_CONFIRM,module_hci_pairing_numeric_comparison
+	branch module_hci_event_receive_invalid_cmd
+module_hci_pairing_pincode_mode:
+	call ssp_disable
+	jam 0,mem_ssp_enable
+	branch module_hci_event_receive_valid_cmd
+module_hci_pairing_just_work_mode:
+	setarg SSP_MODE_JUST_WORK_IO_CAP_DATA
+module_hci_sspairing_mode:	
+	store 3,mem_sp_iocap_local
+	store 1,mem_ssp_mode_flag
+	call ssp_enable
+	jam 1,mem_ssp_enable
+	branch module_hci_event_receive_valid_cmd
+module_hci_pairing_passkey:
+	setarg SSP_MODE_PASSKEY_IO_CAP_DATA
+	branch module_hci_sspairing_mode
+
+module_hci_pairing_numeric_comparison:
+	setarg SSP_MODE_SSP_PIN_IO_CAP_DATA
+	branch module_hci_sspairing_mode
+
+//command opcode 0x0d
+module_hci_cmd_set_pincode:
+	fetch 1,mem_module_uart_len
+	sub pdata,16,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_pin_length
+	copy pdata,loopcnt
+	arg mem_pin,contw
+	call uart_copy_rx_bytes
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x0e
+module_hci_cmd_set_uart_control_mode:
+	copy rega,contru
+	ifetch 1,contru
+	hfetcht 1,core_uart_ctrl
+	nsetflag blank,4,temp
+	hstoret 1,core_uart_ctrl
+ 	branch module_hci_event_receive_valid_cmd
+
+ 	
+//command opcode 0x0f
+module_hci_cmd_set_uart_baud:
+	fetch 1,mem_module_uart_len
+	copy pdata,loopcnt
+	copy rega,contru
+	call string2dec_from_uart
+	setarg uart_clk_24
+	idiv temp
+	call wait_div_end
+	quotient pdata
+module_hci_cmd_set_uart_baud_ok:
+	store uart_baud_len,mem_baud
+	call module_hci_event_receive_valid_cmd
+	call wait_uarttx
+	branch uart_set_baud_by_mem
+
+
+//command opcode 0x10
+module_hci_cmd_version_request:
+	arg 2,rega
+	arg mem_soft_version_num,regb
+	arg 0,temp
+	branch module_hci_event_set_cmd
+module_hci_event_set_cmd_send_response:
+	store 2,mem_event_cmd_response_content
+	arg mem_event_cmd_response_content,regb
+	arg 0,temp
+	branch module_hci_event_set_cmd
+
+
+//command opcode 0x11
+module_hci_cmd_bt_disconnect:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BT_CONNECTED,module_hci_event_receive_invalid_cmd
+module_hci_cmd_bt_disconnect_doing:
+	call module_hci_event_receive_valid_cmd
+	branch app_bt_disconnect
+
+	
+//command opcode 0x12
+module_hci_cmd_ble_disconnect:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,module_hci_event_receive_invalid_cmd
+module_hci_cmd_ble_disconnect_doing:
+	call module_hci_event_receive_valid_cmd
+	branch app_ble_disconnect
+
+
+
+
+//command opcode 0x26
+module_hci_cmd_set_nvram:
+	fetch 1,mem_module_uart_len
+	copy pdata,loopcnt
+	copy rega,contru
+	fetch 2,mem_nv_data_ptr
+	icopy contw
+	call uart_copy_rx_bytes_fast
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x28
+module_hci_cmd_confirm_gkey:
+	fetch 1,mem_ui_state_map
+	bbit0 UI_STATE_BT_CONNECTED,module_hci_event_receive_invalid_cmd	
+	ifetch 1,contru
+	fetcht 1,mem_flag_mode_ssp_pin
+	setflag blank,FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT,temp
+	set1 FLAG_MODE_SSP_PIN_REVICEVE_COMPARISON_BIT ,temp
+	storet 1,mem_flag_mode_ssp_pin
+
+	call module_hci_event_receive_valid_cmd
+
+	fetch 1,mem_flag_mode_ssp_pin
+	bbit1 FLAG_MODE_SSP_PIN_RECIEVE_DHKEY_BIT,module_hci_cmd_spp_number_comparison_result_is1
+	rtn
+
+dhkey_not_accept:
+	jam 0,mem_flag_mode_ssp_pin
+	jam BT_CMD_DHKEY_NOT_ACCEPT,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+
+module_hci_cmd_spp_number_comparison_result_is1:
+	bbit1 FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT,number_comparison_successed
+	branch dhkey_not_accept	
+
+
+//command opcode 0x29
+module_hci_cmd_set_credit_given:
+	fetch 1,mem_ui_state_map
+	rtnbit0 UI_STATE_BT_SPP_CONN
+	fetch 1,mem_credit_flag
+	rtneq CREDIT_DISABLE
+	ifetch 1,contru
+	fetcht 1,mem_credit_given
+	iadd temp,temp
+	storet 1,mem_credit_given
+	rtn
+
+	
+//command opcode 0x2a
+module_hci_cmd_auto_adv:
+	arg 0x40,loopcnt
+	arg mem_le_adv_data_len,contw
+	call clear_mem
+	setarg 0
+	store 1,mem_regb
+	copy rega,contru
+module_hci_cmd_auto_adv_loop:
+	copy contru,pdata
+	store 2,mem_regc
+	call module_hci_cmd_auto_adv_adv_analys
+
+	fetch 1,mem_regb
+	fetcht 1,mem_temp
+	increase 1,temp
+	iadd temp,pdata
+	store 1,mem_regb
+
+	sub pdata,31,null
+	nbranch module_hci_cmd_auto_adv_store_scan,positive
+module_hci_cmd_auto_adv_store_adv:
+	fetcht 1,mem_le_adv_data_len
+	setarg mem_le_adv_data
+	iadd temp,pdata
+	store 2,mem_contw
+	fetcht 1,mem_temp
+	increase 1,temp
+	fetch 1,mem_le_adv_data_len
+	iadd temp,pdata
+	store 1,mem_le_adv_data_len
+	branch module_hci_cmd_auto_adv_store_common
+module_hci_cmd_auto_adv_store_scan:
+	fetcht 1,mem_le_scan_data_len
+	setarg mem_le_scan_data
+	iadd temp,pdata
+	store 2,mem_contw
+	fetcht 1,mem_temp
+	increase 1,temp
+	fetch 1,mem_le_scan_data_len
+	iadd temp,pdata
+	store 1,mem_le_scan_data_len
+module_hci_cmd_auto_adv_store_common:
+	fetch 2,mem_contw
+	copy pdata,contw
+	fetch 2,mem_regc
+	copy pdata,contru
+
+	copy temp,loopcnt
+	call uart_copy_rx_bytes_fast
+
+	fetch 1,mem_module_uart_len
+	fetcht 1,mem_regb
+	isub temp,null
+	nbranch  module_hci_cmd_auto_adv_loop,zero
+	branch module_hci_event_receive_valid_cmd
+
+//block of adv len in mem_temp
+module_hci_cmd_auto_adv_adv_analys:
+	ifetch 1,contru
+	store 1,mem_temp
+	ifetch 1,contru
+	store 1,mem_rega
+	rtn
+
+
+//command opcode 0x2b
+module_hci_cmd_power_request:
+	arg 0,temp
+	arg 2,rega
+	fetch 2,mem_module_vdd_quotient
+	store 2,mem_event_cmd_response_content
+	arg mem_event_cmd_response_content,regb
+	branch module_hci_event_set_cmd
+
+
+//command opcode 0x2c
+module_hci_cmd_power_set:
+	fetch 1,mem_module_uart_len
+	bne 1,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	store 1,mem_module_read_vdd_flag
+	setarg 0x00
+	store 2,mem_module_vdd_quotient
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x30
+module_hci_cmd_passkey_entry:
+	ifetch 4,contru
+	store 4,mem_pin
+	jam 4,mem_pin_length
+	jam 0,mem_authentication_passkey_times
+	call module_hci_event_receive_valid_cmd
+	branch authentication_passkey
+
+
+//command opcode 0x31
+module_hci_cmd_set_gpio:
+	fetch 1,mem_module_uart_len
+	bne 3,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	beq HCI_CMD_CONFIG_GPIO_INPUT,module_set_gpio_input
+	beq HCI_CMD_CONFIG_GPIO_OUTPUT,module_set_gpio_output
+	branch module_hci_event_receive_invalid_cmd
+
+module_set_gpio_input:
+	ifetcht 1,contru
+	ifetch 1,contru
+	beq GPIO_INPUT_HIGH_IMPEDANCE,module_set_gpio_high_impedance
+	nsetflag blank,7,temp
+	call gpio_config_input
+	branch module_hci_event_receive_valid_cmd
+
+module_set_gpio_high_impedance:
+	call gpio_set_high_impedance
+	branch module_hci_event_receive_valid_cmd
+	
+module_set_gpio_output:
+	ifetcht 1,contru
+	call gpio_config_output0
+	ifetch 1,contru	
+	isolate1 0,pdata
+	call gpio_out_flag
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x32
+module_hci_cmd_read_gpio:
+	fetch 1,mem_module_uart_len
+	bne 1,module_hci_event_receive_invalid_cmd
+	ifetcht 1,contru
+	call gpio_get_bit
+	setarg 0x0
+	nsetflag true,0,pdata
+	arg 1,rega
+	branch module_hci_event_set_cmd_send_response
+
+
+//command opcode 0x33
+module_hci_cmd_le_set_pairing_mode:
+	copy rega,contru
+	ifetch 1,contru
+	copy pdata,temp
+	beq LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK,module_le_set_pairing_mode_secure_justwork
+	beq LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC,module_le_set_pairing_mode_secure_numeric
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,module_le_set_pairing_mode_secure_passkey
+	store 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_NONE, module_le_set_no_pairing
+	beq LE_PAIRING_MODE_LAGACY_JUSTWORK,module_le_set_pairing_mode_lagacy_just_work
+	beq LE_PAIRING_MODE_LAGACY_PASSKEY,module_le_set_pairing_mode_lagacy_passkey
+	branch module_hci_event_receive_invalid_cmd
+		
+module_le_set_pairing_mode_secure_justwork:
+	fetch 1,mem_le_secure_connect_enable
+	branch module_hci_event_receive_invalid_cmd,blank
+	storet 1,mem_le_pairing_mode
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch module_le_set_noinputnooutput
+module_le_set_pairing_mode_secure_numeric:
+	fetch 1,mem_le_secure_connect_enable
+	branch module_hci_event_receive_invalid_cmd,blank
+	storet 1,mem_le_pairing_mode
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	jam FLAG_IOCAP_DISPLAYYESNO,mem_le_pres_iocap
+	branch module_hci_event_receive_valid_cmd	
+module_le_set_pairing_mode_secure_passkey:	
+	fetch 1,mem_le_secure_connect_enable
+	branch module_hci_event_receive_invalid_cmd,blank
+	storet 1,mem_le_pairing_mode
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch module_le_set_displayonly
+module_le_set_no_pairing:
+	jam FLAG_LE_NO_BONDING_NO_MITM,mem_le_pres_auth
+module_le_set_noinputnooutput:	
+	jam FLAG_IOCAP_NOINPUTNOOUTPUT,mem_le_pres_iocap
+	branch module_hci_event_receive_valid_cmd	
+module_le_set_pairing_mode_lagacy_just_work:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+	branch module_le_set_noinputnooutput
+module_le_set_pairing_mode_lagacy_passkey:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+module_le_set_displayonly:	
+	jam FLAG_IOCAP_DISPLAYONLY,mem_le_pres_iocap
+	branch module_hci_event_receive_valid_cmd	
+
+	
+//command opcode 0x34
+module_hci_cmd_le_set_adv_data:
+	fetch 1,mem_module_uart_len
+	sub pdata,31,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_le_adv_data_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_le_adv_data,contw
+	call uart_copy_rx_bytes_fast
+	branch module_hci_event_receive_valid_cmd
+	
+
+//command opcode 0x35
+module_hci_cmd_le_set_scan_data:
+	fetch 1,mem_module_uart_len
+	sub pdata,31,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_le_scan_data_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_le_scan_data,contw
+	call uart_copy_rx_bytes_fast	
+	branch module_hci_event_receive_valid_cmd	
+
+	
+//command opcode 0x36
+module_hci_cmd_le_send_conn_update_req:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,module_hci_event_receive_invalid_cmd
+	fetch 1,mem_module_uart_len
+	bne 0x08,module_hci_event_receive_invalid_cmd
+	copy rega,contru
+	ifetch 8,contru
+	store 8,mem_le_interval_min
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	call  ui_ipc_send_cmd
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x37
+module_hci_cmd_set_le_adv_parameter:
+	ifetch 2,contru
+	store 2,mem_le_adv_interval
+	branch module_hci_event_receive_valid_cmd
+	
+	
+//command opcode 0x38
+module_hci_cmd_le_start_pairing:
+	fetch 1,mem_le_pairing_mode
+	branch module_hci_event_receive_invalid_cmd,blank
+	fetch 1,mem_le_pairing_state
+	bne FLAG_LE_PAIRING_NULL,module_hci_event_receive_invalid_cmd
+	fetch 1,mem_le_enc_state
+	bne FLAG_LE_ENC_NULL,module_hci_event_receive_invalid_cmd
+	call check_51cmd_le_smp_sec_req
+	branch module_hci_event_receive_valid_cmd	
+
+
+//command opcode 0x40
+module_hci_cmd_set_wake_gpio:
+	fetch 1,mem_module_uart_len
+	bne 5,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	store 1,mem_module_mcu_wake_pin
+	ifetch 4,contru
+	store 4, mem_module_mcu_wake_delay_us
+	fetcht 1,mem_module_mcu_wake_pin
+	call gpio_config_output
+	call module_set_mcu_wake_pin_low
+	branch module_hci_event_receive_valid_cmd
+	
+
+//command opcode 0x42
+module_hci_cmd_set_tx_power:
+	fetch 1,mem_module_uart_len
+	bne 0x01,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	store 1,mem_tx_power
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x48
+module_hci_cmd_le_confirm_gkey:
+	ifetch 1,contru
+	beq 0x01,module_hci_cmd_le_confirm_gkey_fail
+	fetch 1,mem_le_secure_connect_state
+	beq LE_SC_STAT_SEND_PUBLIC_KEY,module_hci_cmd_le_confirm_gkey_ok
+	beq LE_SC_STAT_RECEIVE_DHKEY,module_hci_cmd_le_confirm_gkey_ok
+	beq LE_SC_STAT_WAIT_CONFIRM_GKEY,module_hci_cmd_le_confirm_gkey_ok
+	branch module_hci_event_receive_invalid_cmd		
+module_hci_cmd_le_confirm_gkey_ok:
+	jam FLAG_LE_SC_CONFRIM_GKEY_OK,mem_le_sc_confirm_gkey_flag
+	branch module_hci_event_receive_valid_cmd	
+	
+module_hci_cmd_le_confirm_gkey_fail:
+	call le_send_pairing_confirm_value_failed
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x49
+module_hci_cmd_set_reject_justwork_flag:
+	fetch 1,mem_module_uart_len
+	bne 0x01,module_hci_event_receive_invalid_cmd
+	call module_hci_event_receive_valid_cmd
+	ifetch 1,contru
+	branch classic_bt_clr_reject_justwork_flag,blank
+	branch classic_bt_set_reject_justwork_flag
+
+
+//command opcode 0x51
+module_hci_cmd_reset_chip:
+	call module_hci_event_receive_valid_cmd
+	call wait_uarttx
+	jam 0x01,core_reset // rest YC1021
+	branch loop
+
+
+//command opcode 0x61
+module_hci_cmd_le_set_fixed_passkey:
+	fetch 1,mem_module_uart_len
+	beq 0,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	branch module_hci_cmd_le_set_random_passkey,blank
+	fetch 1,mem_module_uart_len
+	bne 5,module_hci_event_receive_invalid_cmd
+	ifetch 4,contru
+	arg 1000000,temp
+	isub temp,null
+	branch module_hci_event_receive_invalid_cmd,positive
+	store 4,mem_le_tk
+	call le_set_config_fixed_tk
+	branch module_hci_event_receive_valid_cmd
+
+module_hci_cmd_le_set_random_passkey:
+	call le_clr_config_fixed_tk
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0xff
+module_hci_test_cmde_close_lpm:
+	jam 0,mem_lpm_mode
+	branch module_hci_event_receive_valid_cmd
+	
+
+/*********************HCI EVENT*********************/
+
+module_hci_event_receive_invalid_cmd:
+	arg 1,temp
+	arg 0,rega
+	branch module_hci_event_set_cmd
+
+
+module_hci_event_receive_valid_cmd:
+	arg 0,temp
+	arg 0,rega
+	branch module_hci_event_set_cmd
+
+
+//event opcode 0x00
+module_hci_event_spp_connect:
+	jam  HCI_EVENT_SPP_CONN_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x02
+module_hci_event_le_connect:
+	jam  HCI_EVENT_LE_CONN_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x03
+module_hci_event_spp_disconnect:
+	jam  HCI_EVENT_SPP_DIS_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x05
+module_hci_event_le_disconnect:
+	jam  HCI_EVENT_LE_DIS_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x06
+//input:
+//	temp: success 0; fail 1
+//	rega:Response Content length
+//	regb:Response Content address
+module_hci_event_set_cmd:
+	fetch 1,mem_module_uart_opcode
+	copy pdata,regc
+	jam  HCI_EVENT_CMD_RES,mem_module_uart_opcode
+	setarg 2
+	iadd rega,pdata
+	call module_hci_prepare_tx
+	copy regc,pdata
+	istore 1,contwu
+	istoret 1,contwu
+	copy rega,loopcnt
+	copy regb,contr
+	call uart_copy_tx_bytes
+	branch uartd_send
+
+
+//event opcode 0x07
+module_hci_event_receive_spp_data:
+//	call p_nl_clear_last_transmite_clock
+	call module_spp_clear_last_transmite_clock
+	jam HCI_EVENT_SPP_DATA_REP,mem_module_uart_opcode
+	fetch 1,mem_current_length
+	rtn blank
+	call module_hci_prepare_tx
+	fetch 1,mem_current_length
+	copy pdata,loopcnt
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call uart_copy_tx_bytes_fast
+	branch uartd_send
+
+
+//event opcode 0x08
+module_hci_event_receive_le_data:
+	jam HCI_EVENT_LE_DATA_REP,mem_module_uart_opcode
+	fetch 1,mem_module_le_rx_data_len
+	icopy loopcnt
+	increase 2,pdata
+	call module_hci_prepare_tx
+	fetch 2,mem_module_le_rx_data_handle // Attribute handle
+	istore 2,contwu
+	fetch 2,mem_module_le_rx_data_address
+	icopy contr
+	call uart_copy_tx_bytes_fast
+	branch uartd_send
+
+
+//event opcode 0x09
+module_hci_event_enter_standby_mode:
+	jam HCI_EVENT_STANDBY_REP,mem_module_uart_opcode
+module_hci_event_enter_standby_mode_len0:
+	setarg 0
+	call module_hci_prepare_tx
+	branch uartd_send
+
+
+//event opcode 0x0a
+module_hci_event_status_res:
+	jam HCI_EVENT_STATUS_RES,mem_module_uart_opcode
+	setarg 1
+	call module_hci_prepare_tx
+	
+	call module_hci_read_bt_status
+	
+	fetch 2,mem_ui_state_map	
+	arg UI_STATE_BT_HID_CONN,queue
+	qisolate1 pdata
+	setflag true,3,temp
+
+	arg UI_STATE_BLE_CONNECTED,queue
+	qisolate1 pdata
+	setflag true,5,temp	
+	
+	fetch 1,mem_ui_state_map
+	arg UI_STATE_BT_SPP_CONN,queue
+	qisolate1 pdata
+	setflag true,4,temp	
+	
+	istoret 1,contwu
+	branch uartd_send
+
+//	temp: bit0 3.0 inquiry;bit1 3.0 scan;bit2 ble adv;
+
+module_hci_read_bt_status:
+	arg 0,temp
+	fetch 1,mem_scan_mode
+	arg inq_scan_mode,queue
+	qisolate1 pdata
+	setflag true,0,temp
+	arg page_scan_mode,queue
+	qisolate1 pdata
+	setflag true,1,temp	
+
+	fetch 1,mem_le_adv_enable
+	arg 0,queue
+	qisolate1 pdata
+	setflag true,2,temp	
+	rtn
+
+
+//event opcode 0x0d
+module_hci_event_store_device:
+	jam HCI_EVENT_NVRAM_REP,mem_module_uart_opcode
+	fetch 1,mem_nv_data_number
+	mul32 pdata,34,pdata
+	icopy loopcnt
+	call module_hci_prepare_tx
+	fetch 2,mem_nv_data_ptr
+	icopy contr
+	call uart_copy_tx_bytes_fast
+	branch uartd_send
+
+
+//event opcode 0x0e
+module_hci_event_gkey_generate:
+	jam HCI_EVENT_GKEY,mem_module_uart_opcode
+	setarg 4
+	call module_hci_prepare_tx
+	fetch 4,mem_gkey
+	istore 4,contwu
+	branch uartd_send
+
+
+//event opcode 0x0f
+module_hci_event_invalid_packet:
+	jam HCI_EVENT_INVALID_PACKET,mem_module_uart_opcode
+	hfetch 2,core_uart_rxitems
+	arg 0xff,temp
+	call not_greater_than
+	copy pdata,loopcnt
+	call module_hci_prepare_tx
+	call uartd_prepare_rx
+	call uart_copy_rx2tx
+	branch uartd_send
+
+
+//event opcode 0x10
+module_hci_event_passkey_entry_mode:
+	jam  HCI_EVENT_GET_PASSKEY,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x11
+module_hci_event_le_tk:
+	jam HCI_EVENT_LE_TK,mem_module_uart_opcode
+	setarg 4
+	call module_hci_prepare_tx
+	fetch 4,mem_le_tk
+	istore 4,contwu
+	branch uartd_send
+
+
+//event opcode 0x14
+module_hci_event_le_pairing_fail:
+	arg FLAG_BLE_PAIRING_FAIL,rega
+	branch module_hci_event_pairing_completed
+
+module_hci_event_le_pairing_success:
+	arg FLAG_BLE_PAIRING_SUCCESS,rega
+	branch module_hci_event_pairing_completed
+
+module_hci_event_bt_pairing_fail:
+	arg FLAG_BT_PAIRING_FAIL,rega
+	branch module_hci_event_pairing_completed
+
+module_hci_event_bt_pairing_success:
+	arg FLAG_BT_PAIRING_SUCCESS,rega
+
+module_hci_event_pairing_completed:
+	jam 0,mem_flag_mode_ssp_pin
+	jam HCI_EVENT_LE_PAIRING_STATE,mem_module_uart_opcode
+	setarg 2
+	call module_hci_prepare_tx
+	copy rega,pdata
+	istore 2,contwu
+	branch uartd_send
+
+
+//event opcode 0x15
+module_hci_event_pause_enc:
+	arg FLAG_EVENT_PAUSE_ENC,regc
+	branch module_hci_event_enc
+
+module_hci_event_start_enc:
+	arg FLAG_EVENT_START_ENC,regc
+
+module_hci_event_enc:
+	jam HCI_EVENT_LE_ENCRYPTION_STATE,mem_module_uart_opcode
+	setarg 1
+	call module_hci_prepare_tx
+	copy regc,pdata
+	istore 1,contwu
+	branch uartd_send
+
+
+//event opcode 0x1d
+module_hci_event_le_gkey:
+	jam HCI_EVENT_LE_GKEY,mem_module_uart_opcode
+	setarg 4
+	call module_hci_prepare_tx
+	fetch 4,mem_gkey
+	istore 4,contwu
+	branch uartd_send
+
+
+//****************************************************************//
+	//module_hci_prepare_tx
+	//function:write hci packet header
+	//input: pdata-----packet length  (1byte)
+	//input: mem_uart_opcode------opcode (1byte)
+	//output:contwu --- pointer to packet payload
+	//use reg: contwu,pdata
+//****************************************************************//	
+module_hci_prepare_tx:
+	jam 0x02,mem_module_uart_cmd
+	store 1,mem_module_uart_len
+	storet 8,mem_temp
+	bpatch patch1c_2,mem_patch1c
+	call module_set_mcu_wake_pin_high_delay
+	fetcht 8,mem_temp
+	call uartd_prepare_tx
+	fetch 3,mem_module_uart_cmd
+	istore 3,contwu
+	rtn
+
+
+module_set_mcu_wake_pin_high_delay:
+	call module_check_mcu_wake_pin_high
+	rtn true
+module_set_mcu_wake_pin_h_delay:
+	call module_set_mcu_wake_pin_high
+	fetch 4,mem_module_mcu_wake_delay_us
+	rshift2 pdata,pdata
+	rtn blank
+	branch delay
+
+module_set_mcu_wake_pin_high:
+	//call ice_break
+	fetcht 1,mem_module_mcu_wake_pin
+	branch gpio_out_active
+
+module_check_mcu_wake_pin_high:
+	fetcht 1,mem_module_mcu_wake_pin
+	branch gpio_check_active
+
+module_set_mcu_wake_pin_low:
+	fetcht 1,mem_module_mcu_wake_pin
+	branch gpio_out_inactive
+
+
+delay:
+	increase -1,pdata
+	nop 38
+	nbranch delay,blank
+	rtn
+
+/*********************hci command end*********************/
+
+/*********************hci ble receive data start*********************/
+
+//rega is le rx data address
+//regb is le rx data length
+//mem_le_att_handle is write handle
+module_le_receive_data:
+	call module_check_ble_encrypt_state
+	rtn user
+	copy rega,pdata
+	store 2,mem_module_le_rx_data_address
+	copy regb,pdata
+	store 1,mem_module_le_rx_data_len
+	fetch 2,mem_le_att_handle
+	fetcht 2,mem_module_data_write_handle
+	isub temp,null
+	branch module_le_receive_data_ok,zero
+	fetcht 2,mem_module_data_write_handle2
+	isub temp,null
+	nrtn zero
+module_le_receive_data_ok:	
+	store 2,mem_module_le_rx_data_handle
+	branch module_hci_event_receive_le_data
+
+
+/*********************hci ble receive data end*********************/
+
+module_exit_sniff:
+	fetch 1,mem_module_flag
+	rtnbit1 MOUDLE_TASK_UNSNIFF
+	call module_set_unsniff_task_flag	
+	branch app_bt_sniff_exit
+
+
+module_set_lpm_mult_2:
+	jam 2,mem_lpm_mult
+	rtn
+
+
+
+module_bb_event_timer:
+	branch module_read_vdd_timer
+
+module_read_vdd_timer:
+	fetch 1,mem_module_read_vdd_flag
+	rtn blank
+	fetch 1,mem_module_read_vdd_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_module_read_vdd_count
+	nrtn blank
+	jam FLAG_MODULE_READ_VDD_COUNT,mem_module_read_vdd_count
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	div pdata,0x64
+	call wait_div_end
+	quotient pdata
+	remainder temp
+	store 1,mem_module_vdd_quotient
+	storet 1,mem_module_vdd_remainder
+	rtn	
+	
+
+module_control_air_flow:
+	call check_uart_tx_buff
+	branch app_l2cap_flow_control_enable,positive
+	branch app_l2cap_flow_control_disable
+
+
+/**************module state *******************/
+module_set_sniff_task_flag:
+	arg MOUDLE_TASK_SNIFF,queue
+	branch module_set_state
+
+module_clear_sniff_task_flag:
+	arg MOUDLE_TASK_SNIFF,queue
+	branch module_clr_state
+
+module_set_unsniff_task_flag:
+	arg MOUDLE_TASK_UNSNIFF,queue
+	branch module_set_state
+
+module_clear_unsniff_task_flag:
+	arg MOUDLE_TASK_UNSNIFF,queue
+	branch module_clr_state
+
+module_set_le_tx_data_flag:
+	arg MODULE_FLAG_BLE_DATA_FINISH,queue
+	branch module_set_state
+	
+module_clear_le_tx_data_flag:
+	arg MODULE_FLAG_BLE_DATA_FINISH,queue
+	branch module_clr_state
+
+module_clr_state:
+	fetch 1,mem_module_flag
+	qset0 pdata
+	store 1,mem_module_flag
+	rtn
+
+module_set_state:
+	fetch 1,mem_module_flag
+	qset1 pdata
+	store 1,mem_module_flag
+	rtn
+	
+/**************module state end*******************/
+
+
+
+
+//define FPGA_DEBUG
+
+
+mouse_init:
+	call mouse_setting_config
+	call spi_ncs_enable
+	call mouse_init_sunt
+	call mouse_dpi_config
+	call spi_ncs_disable
+	rtn wake
+	call mouse_cheak_enable_usb
+	call mouse_cb_fuction
+//	fetch 1,mem_wakup_from_power_flag
+//	isolate0 gpio_latch,pdata
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_USB
+	call mouse_wakeup_from_power//,true	// enter 
+	rtnmark1 mark_24g
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	branch mouse_check_reconn_target
+
+
+mouse_delay_4s:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_INIT_DELAY
+	arg 20,loopcnt
+mouse_delay_20ms:
+	setarg 200000
+	call sleep
+	loop delay_10ms
+	rtn
+
+	
+mouse_cheak_enable_usb:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_USB
+	branch usb_init
+	
+
+mouse_cb_fuction:
+	setarg mouse_le
+	store 2,mem_cb_le_process
+	setarg mouse_send_process
+	store 2,mem_cb_bt_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 le_mouse_bb_event_connect_complete
+	store 2,mem_cb_att_write
+
+	call g24_head_ptr2regc
+	setarg mouse_g24_package_data
+	add regc,offset_24g_cb_data,contw
+	istore 2,contw
+	setarg mouse_g24_enter_lpm
+	add regc,offset_24g_cb_lpm_prepare,contw
+	istore 2,contw
+	setarg mouse_lpm_before_common
+	add regc,offset_24g_cb_lpm_before,contw
+	istore 2,contw
+	
+	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
+	rtn
+mouse_spi_write_flash_cb:
+mouse_spi_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_SPI2,spid_init
+	branch spid_init2
+
+mouse_setting_config:
+	rtn wake
+	call g24_set_device_addr
+	call mouse_gpio_init
+	call mouse_param_init
+	call mouse_adc_init
+	call le_set_config_fixed_ltk
+	call le_set_justwork
+	call le_set_fixed_ltk
+	call le_set_config_read_authentication
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_init_iic
+	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_cheak
+	rtn
+
+mouse_init_iic:
+	call iic_init_390k
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_2K_EEPROM,pdata
+	ncall clear_eeprom_size_2k,true
+	call mouse_load_eeprom_dpi
+	call mouse_init_environment
+	call mouse_set_24g_addr_eeprom
+	branch iicd_read_eep_data
+
+mouse_wakeup_from_power:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_WAKEUP_FROM_POWER,mouse_wakeup_no_from_power
+	fetch 1,mem_wakup_from_power_flag
+	isolate0 gpio_latch,pdata
+	nrtn true
+mouse_wakeup_no_from_power:
+	fetch 1,mem_reconn_times_init
+	store 1,mem_reconn_times
+	fetch 1,mem_config_function_enable
+	rtnbit1 ENABLE_SELECT_DEVICE_BY_SWITCH
+mouse_start_24g_mode:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_24G
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,g24_auto_pair_start
+	branch g24_check_51cmd_start_24g
+le_mouse_bb_event_connect_complete:
+	fetch 1,mem_le_att_handle
+	sub pdata,26,pdata
+	nrtn zero
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	call ui_ipc_send_cmd
+mouse_le_write_enable:	
+	arg WRITE_REQ_ENABLE_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+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
+	rtn
+mouse_dpi_config:
+	fetch 1,mem_config_sensor_motion
+	and pdata,0x0f,pdata
+	store 1,mem_mouse_dpi
+	branch mouse_seting_dpi+2
+
+
+mouse_dpi_cheak:
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_get_bit
+	nbranch mouse_dpi_up,true
+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 1,mem_mouse_dpi
+	increase 1,pdata
+	and pdata,0x03,pdata
+	store 1,mem_mouse_dpi
+	call mouse_seting_dpi
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eerpom_dpi
+	bbit1 MOUSE_ENABLE_FLASH,mouse_before_store_flash_cpi
+	rtn
+mouse_before_store_flash_cpi:
+	arg MOUSE_SPI2_CLK_GPIO,temp
+	call gpio_config_output				//hold high
+	arg MOUSE_SPI2_SDIO_GPIO,temp
+	call gpio_config_output 			//hold high 
+	branch mouse_store_flash_device_info
+
+mouse_seting_dpi:
+	bpatch patch1c_3,mem_patch1c
+	call mosue_dpi_led_blink_init
+	fetch 1,mem_config_sensor_type
+	beq P3610,mouse_seting_3610_dpi
+	beq P3212,mouse_seting_3212_dpi
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_cpi1
+	beq MOUSE_DPI_LEVEL2,mouse_set_cpi2
+	beq MOUSE_DPI_LEVEL3,mouse_set_cpi3
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi4
+mouse_set_cpi2:
+	fetch 1,mem_320x_dpi_2
+	branch mouse_p3205_dpi
+mouse_set_cpi1:
+	fetch 1,mem_320x_dpi_1
+	branch mouse_p3205_dpi
+mouse_set_cpi3:
+	fetch 1,mem_320x_dpi_3
+	branch mouse_p3205_dpi
+mouse_set_cpi4:
+	fetch 1,mem_320x_dpi_4
+	branch mouse_p3205_dpi
+moue_seting_cpi_count:
+	fetch 1,mem_config_sensor_type
+	rtneq P3065_XY
+	fetch 1 ,mem_mouse_cpi_count
+	increase 1,pdata
+	store 1,mem_mouse_cpi_count
+	rtn
+
+mouse_seting_3212_dpi:
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_p3212_cpi1
+	beq MOUSE_DPI_LEVEL2,mouse_set_p3212_cpi2
+	beq MOUSE_DPI_LEVEL3,mouse_set_p3212_cpi3
+	beq MOUSE_DPI_LEVEL4,mouse_set_p3212_cpi4
+mouse_set_p3212_cpi2:
+	fetch 1,mem_3212_dpi_2
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi1:
+	fetch 1,mem_3212_dpi_1
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi3:
+	fetch 1,mem_3212_dpi_3
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi4:
+	fetch 1,mem_3212_dpi_4
+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_3610_dpi:
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_p3610_cpi1
+	beq MOUSE_DPI_LEVEL2,mouse_set_p3610_cpi2
+	beq MOUSE_DPI_LEVEL3,mouse_set_p3610_cpi3
+	beq MOUSE_DPI_LEVEL4,mouse_set_p3610_cpi4
+mouse_set_p3610_cpi2:
+	fetch 1,mem_3610_dpi_2
+	branch mouse_p3610_dpi
+mouse_set_p3610_cpi1:
+	fetch 1,mem_3610_dpi_1
+	branch mouse_p3610_dpi
+mouse_set_p3610_cpi3:
+	fetch 1,mem_3610_dpi_3
+	branch mouse_p3610_dpi
+mouse_set_p3610_cpi4:
+	fetch 1,mem_3610_dpi_4
+mouse_p3610_dpi:
+	store 1,mem_mouse_cpi_count
+	call mouse_spi_sdio_gpio_pollup
+	fetch 1,mem_mouse_cpi_count
+mouse_reset_p3610_dpi:
+	add pdata,0x80,pdata
+	lshift8 pdata,pdata
+	add pdata,MOUSE_P3610_DPI_ADDRESS,pdata
+	copy pdata,rega
+	branch mouse_set_sensor_reg
+	
+mouse_p3205_dpi:
+	store 1,mem_mouse_cpi_count
+	call moue_seting_cpi_count
+	fetch 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_init_environment:
+	call app_initflag_check
+	branch mouse_eeprom_load_recon_info,zero
+	call mouse_ble_init_address
+	call mouse_store_eeprom_device_info
+	branch app_initflag_store
+
+
+mouse_24g_pairing_button:
+	fetch 2,mem_24g_pairing_timer_count
+	rtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_24G
+	rtnbit1 MOSUE_24G_PAIRING_FLAG
+	rtnmark1 mark_24g
+	call mouse_check_key_gpio
+	rtnne MOUSE_LMR_BUTTON
+	call mouse_devce_led_off
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_enable_function_flag
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	store 1,mem_mouse_send_blank_timer
+	call g24_set0_mem_check_dongle_times
+	
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_RECONNECT,mouse_cancel_reconnect
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	call mouse_stop_discovery
+	branch g24_start_pairing_sm1
+	
+
+mouse_idle:
+	call mouse_24g_pairing_button
+	call ui_check_paring_button
+	call mouse_dpi_cheak
+	call mouse_usb_isr
+	call mouse_wheel_check
+	branch mouse_usb_mode
+mouse_usb_isr:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_USB
+	call usb_isr	
+	branch usb_offline_state
+
+mouse_cheak_usb:
+	hfetch 1,core_usb_addr
+	bbit0 7,mouse_usb_no_exsit
+	bbit1 7,mouse_usb_exsit
+	rtn
+mouse_usb_no_exsit:
+	fetch 1,mem_usb_addr
+	rtnbit0 7
+	branch soft_reset_chip
+mouse_usb_exsit:
+	fetch 1,mem_usb_addr
+	rtnbit1 7
+	branch mouse_stop_bluetooth_mode
+	
+mouse_usb_mode:
+	call mouse_cheak_usb
+	hfetch 1,core_usb_addr
+	store 1,mem_usb_addr
+	rtnbit0 7
+	call mouse_clkn_check 
+	fetch 4,mem_btclk_sensor
+	fetcht 1,mem_wire_usb_interval
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	store 4,mem_btclk_sensor
+	call mouse_motion
+	nrtn user
+	jam 4,mem_usb_tx_enable
+	branch mouse_wired_to_usb
+
+mouse_clkn_check:
+	fetcht 4,mem_btclk_sensor
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall mouse_clkn_timeout,positive
+	rtn
+mouse_clkn_timeout:
+	setarg 0
+	store 4,mem_btclk_sensor
+	rtn
+
+
+	
+mouse_wired_to_usb:
+	fetch 1,mem_usb_tx_enable
+	rtnbit0 2
+	branch mouse_data_push
+mouse_data_push:
+	hfetch 1,core_usb_addr
+	rtnbit0 7
+	jam USB_EP2_MS,mem_usb_ep2_data
+	setarg MS_REPORT_ID
+	store 1,mem_usb_mouse_data	
+	fetch 7,mem_mouse_key
+	istore 7,contw
+	rtn
+
+
+mouse_enable_clock_qdecoder:
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_QDECODER,pdata
+	hstore 2,core_clkoff
+	rtn
+
+mouse_param_init:
+	setarg 0x8c00				//bt sdp start address
+	store 2,mem_ui_uuid_table
+	setarg 0x8e7a				//ble attlist start address
+	store 2,mem_ui_le_uuid_table
+	setarg 0x2402
+	store 2,mem_fcomp_mul
+	setarg 0x2580
+	store 3,mem_class
+	jam 3,mem_lpm_mult_timeout
+	jam 8,mem_lpm_overhead
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue
+	setarg 0x0200
+	store 2,mem_lpm_interval
+	jam 0x17,mem_le_local_mtu
+	jam 0x17,mem_le_remote_mtu
+//===========init spi param==============================
+	setarg 0x0a77
+	store 2,mem_spi_init_clk
+//===========default bt reconnect address===================	
+//	jam 1,mem_device_flag
+//	setarg 0x332211
+//	store 3,mem_device1_addr
+//	store 3,mem_device2_addr
+//	store 3,mem_device3_addr
+//	setarg 0x665544
+//	store 3,mem_device1_addr+3
+//	store 3,mem_device2_addr+3
+//	store 3,mem_device3_addr+3
+//	setarg 0x34
+//	store 1,mem_device1_type
+//	store 1,mem_device2_type
+//	store 1,mem_device3_type
+//===========all 16bit uuid==================================
+	setsect 0,0x306
+	setsect 1,0x4440
+	setsect 2,0x10000
+	setsect 3,0x4408
+	store 9,mem_all_uuid_16bits
+	setsect 0,0x1224
+	setsect 1,0x4000
+	setsect 2,0x0
+	istore 5,contw
+//===========features=====================================
+	setsect 0,0x3ffff
+	setsect 1,0x2fe23
+	setsect 2,0x199d9
+	setsect 3,0x20d
+	store 8,mem_features
+//======================================================	
+	setarg 0x012c  				//24g ban pairing timer init
+	store 2,mem_24g_pairing_timer_count
+	call le_modified_name
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
+	rtnbit0 MOUSE_ENABLE_GPIO_CONTROL_ADC_SENSOR
+	call mouse_sensor_set_angle
+	branch mouse_select_adc
+
+mouse_sensor_set_angle:
+	fetcht 1,mem_select_sensor_angle_gpio
+	call gpio_config_input
+	fetcht 1,mem_select_sensor_angle_gpio
+	call gpio_get_bit
+	jam MOUSE_3CLK_ANGLE,mem_config_sensor_angle
+	rtn true
+	jam MOUSE_12CLK_ANGLE,mem_config_sensor_angle
+	rtn
+
+mouse_select_adc:
+	fetcht 1,mem_select_adc_gpio
+	call gpio_config_input
+	fetcht 1,mem_select_adc_gpio
+	call gpio_get_bit
+	jam ADC_CONFIG_VINLPM,mem_adc_config_flag
+	rtn true
+	jam ADC_CONFIG_GPIO,mem_adc_config_flag
+	rtn
+	
+	
+mouse_adc_init:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,mouse_adc_init_data_vinlpm
+	beq ADC_CONFIG_HVIN,mouse_adc_init_data_hvin
+	beq ADC_CONFIG_GPIO,mouse_adc_init_data_io
+	branch mouse_adc_init_data_vinlpm
+	
+mouse_adc_init_data_vinlpm:
+	fetcht 2,mem_2v_adc_vinlpm_data
+	fetch 2,mem_3v_adc_vinlpm_data
+	isub temp,pdata
+	mul32 pdata,20,pdata 
+	div pdata,100
+	call wait_div_end
+	quotient pdata
+	store 2,mem_adc_reference_voltage //vinlpm :2v2 low alter
+	rtn
+mouse_adc_init_data_hvin:
+	fetcht 2,mem_1v_adc_hvin_data
+	fetch 2,mem_5v_adc_hvin_data
+	isub temp,pdata
+	mul32 pdata,230,pdata 
+	div pdata,400
+	call wait_div_end
+	quotient pdata
+	store 2,mem_adc_reference_voltage //hvin :3v3 low alter
+	rtn
+mouse_adc_init_data_io:
+	fetch 2,mem_1v_adc_io_data
+	store 2,mem_adc_reference_voltage  //vio :1v low alter
+	rtn
+mouse_gpio_init:
+	fetcht 1,mem_eeprom_wp_gpio
+	call gpio_config_output
+	call usb_offline_check_init
+	fetcht 1,mem_lbutton_gpio
+	call gpio_config_input
+	fetcht 1,mem_rbutton_gpio
+	call gpio_config_input
+	fetcht 1,mem_mbutton_gpio
+	call gpio_config_input
+	fetcht 1,mem_sensor_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_sensor_reset_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_whee_ta_data_gpio
+	call gpio_config_input
+	fetcht 1,mem_whee_tb_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_bk_button_gpio
+	call gpio_config_input
+	fetcht 1,mem_fw_button_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_config_low_voltage_alarm_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_config_device1_led_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_config_device2_led_gpio
+	call gpio_config_output
+	
+	fetcht 1,mem_config_device3_led_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_dpi_led_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_config_input
+	
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_config_input	
+
+	fetcht 1,mem_dpi_button_gpio
+	branch gpio_config_input
+
+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_gpio_set_pupd_by_input:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	and temp,0x7f,queue
+	hfetch 4,core_gpio_in
+	qisolate1 pdata
+	hfetch 4,core_gpio_pu0
+	qsetflag true,pdata
+	hstore 4,core_gpio_pu0
+	hfetch 4,core_gpio_pd0
+	nqsetflag true,pdata
+	hstore 4,core_gpio_pd0
+	rtn
+	
+mouse_before_hibernate:
+	enable user
+	hfetch 4,0x8138
+	setflag user,26,pdata
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	call mouse_devce_led_off
+	call mouse_before_hibernate_wheel_gpio_set
+//	call gpio_set_before_lpm_common
+	branch mouse_lpm_before_common
+
+
+	
+mouse_process_lpm_before:
+	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:
+	call mouse_wheel_check
+	arg MOUSE_SPI1_CLK_GPIO,temp					// set sclk high
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_SPI2,pdata
+	call mouse_spi_clk_gpio,true
+	call gpio_config_output
+	call twspi_disable
+
+
+
+	fetcht 1,mem_lbutton_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_rbutton_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_mbutton_gpio
+	call gpio_set_wake_by_current_state
+
+	fetcht 1,mem_bk_button_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_fw_button_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_set_wake_by_current_state
+	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_data_gpio
+	branch gpio_set_wake
+	
+
+	
+mouse_spi_clk_gpio:
+	arg MOUSE_SPI2_CLK_GPIO,temp
+	rtn
+
+mouse_wheel_check:
+	bpatch patch1c_4,mem_patch1c
+	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_count1
+	increase 1,pdata
+	store 1,mem_mouse_tz_data_count1
+	sub pdata,1,null
+	rtn positive
+	jam 0,mem_mouse_tz_data_count1
+	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_count
+	increase 1,pdata
+	store 1,mem_mouse_tz_data_count
+	sub pdata,1,null
+	rtn positive
+	jam 0,mem_mouse_tz_data_count
+	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:
+	jam 0,mem_mouse_z_data_count1
+	fetch 1,mem_mouse_z_data
+	increase 1,pdata
+	store 1,mem_mouse_z_data
+	rtn
+mouse_wheel_back:
+	jam 0,mem_mouse_z_data_count
+	fetch 1,mem_mouse_z_data
+	increase -1,pdata
+	store 1,mem_mouse_z_data
+	rtn
+	
+	
+mouse_hid_connected:
+	setarg HID_HANDSHAKE_TIMEOUT
+	store 1,mem_hid_handshake_timer_count
+	rtn
+	
+mouse_send_process:
+	fetch 1,mem_app_handshake_flag
+	rtn blank
+	call l2cap_malloc_is_fifo_nearly_full
+	nrtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOSUE_24G_PAIRING_FLAG,mouse_send_empty_data
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_send_empty_data
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_send_empty_data
+	call mouse_motion
+	nrtn user
+mouse_send_data:
+	arg 9,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0x02a1
+	istore 2,contw
+	fetch 7,mem_mouse_key
+	istore 7,contw
+	rtn
+
+	
+mouse_send_empty_data:
+	setarg 0
+	store 7,mem_mouse_key
+	branch mouse_send_data
+
+
+mouse_no_data_timer_init:
+	fetch 2,mem_mouse_no_data_timeout
+	store 2,mem_mouse_no_data_timer
+	rtn
+
+	
+mouse_fill_data_le:
+	bpatch patch1c_5,mem_patch1c
+	arg 7,rega //len
+	fetcht 2,mem_le_notify_handle
+	call le_att_malloc_tx_notify
+	fetch 7,mem_mouse_key
+	istore 7,contw
+	rtn
+
+mouse_motion:
+	bpatch patch1c_6,mem_patch1c
+	disable user
+	setarg 0
+	store 6,mem_mouse_x
+	call mouse_cheak_sensor_data
+	call mouse_zwheel
+	call mouse_t_zwheel
+	call mouse_key
+	nrtn user
+	call mouse_no_data_timer_init
+	arg MOUSE_STATUE_UP_FLAG,queue
+	branch mouse_enable_function_flag
+	
+motion_6clk_direction_dispose:
+	fetch 2,mem_mouse_x
+	sub pdata,0,pdata
+	store 2,mem_mouse_x
+	branch enable_user
+motion_12clk_direction_dispose:
+	fetch 2,mem_mouse_y
+	sub pdata,0,pdata
+	store 2,mem_mouse_y
+	branch enable_user
+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
+motion_3clk_direction_dispose:
+	call mouse_sensor_data_swap_places
+	branch enable_user
+mouse_cheak_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 P3610,mouse_p3610_sensor_motion
+	beq P3065_xy,mouse_p32xx_sensor_motion
+	branch mouse_p32xx_sensor_motion
+	
+mouse_clear_sensor_data:
+	fetch 1,mem_mouse_move_flag
+	call mouse_read_sensor_common,blank
+	jam 1,mem_mouse_move_flag
+	rtn
+
+
+mouse_p3212_sensor_motion:
+	call mouse_clear_sensor_data
+	fetcht 1,mem_sensor_data_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
+	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 extsign_bit3
+	store 1,mem_mouse_x+1
+	fetch 1,mem_mouse_xy_h
+	and pdata,0x0f,pdata
+	call extsign_bit3
+	store 1,mem_mouse_y+1
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_6CLK_ANGLE,motion_6clk_direction_dispose
+	beq MOUSE_9CLK_ANGLE,motion_9clk_direction_dispose
+	beq MOUSE_12CLK_ANGLE,motion_12clk_direction_dispose
+	beq MOUSE_3CLK_ANGLE,motion_3clk_direction_dispose
+	rtn
+
+mouse_read_3212sensor_xy_high:
+	setarg 0x12
+	branch twspi_read
+	
+mouse_p3065_judge:
+	beq P3065_ID1,mouse_p32xx_sensor_motion_1
+	branch mouse_twspi_reset
+	
+mouse_p32xx_sensor_motion:
+	call mouse_clear_sensor_data
+	disable user
+	fetcht 1,mem_sensor_data_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 extsign
+	store 2,mem_mouse_x
+	fetch 1,mem_mouse_y
+	call extsign
+	store 2,mem_mouse_y
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_6CLK_ANGLE,motion32xx_6clk_direction_selection
+	beq MOUSE_9CLK_ANGLE,motion32xx_9clk_direction_selection
+	beq MOUSE_12CLK_ANGLE,motion32xx_12clk_direction_selection
+	beq MOUSE_3CLK_ANGLE,motion32xx_3clk_direction_selection
+	rtn
+	
+motion32xx_6clk_direction_selection:
+	call motion_6clk_direction_dispose
+	branch mouse_sensor_sdio_low
+motion32xx_9clk_direction_selection:
+	call motion_9clk_direction_dispose
+	branch mouse_sensor_sdio_low
+motion32xx_12clk_direction_selection:
+	call motion_12clk_direction_dispose
+	branch mouse_sensor_sdio_low
+motion32xx_3clk_direction_selection:
+	call motion_3clk_direction_dispose
+	branch mouse_sensor_sdio_low
+	
+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
+//input regb  output:pdata
+mouse_p3610sensor_read:
+	call spi_ncs_enable
+	nop 100
+	copy regb,pdata
+	call twspi_read
+	copy pdata,regb
+	call spi_ncs_disable
+	nop 100
+	copy regb,pdata
+	rtn	
+mouse_p3610_sensor_motion:
+	disable user
+	fetcht 1,mem_sensor_data_gpio
+	call gpio_get_bit
+	nrtn true
+	arg PAN_REG_MOTION_STAUS,regb
+	call mouse_p3610sensor_read
+	rtnbit0 7
+	arg PAN_REG_PID_L,regb
+	call mouse_p3610sensor_read
+	store 1,mem_sensor_id1
+	bne P3610_ID1,mouse_init_3610sensor_reset
+	fetch 1,mem_mouse_move_flag
+	call mouse_read_sensor3610_data,blank
+	jam 1,mem_mouse_move_flag
+	call mouse_read_sensor3610_data
+	fetch 1,mem_mouse_xy_h
+	rshift4 pdata,pdata
+	call extsign_bit3
+	store 1,mem_mouse_x+1
+	fetch 1,mem_mouse_xy_h
+	and pdata,0x0f,pdata
+	call extsign_bit3
+	store 1,mem_mouse_y+1
+	fetch 1,mem_config_sensor_angle
+	beq 0,motion3610_6clk_direction_selection
+	beq 1,motion3610_9clk_direction_selection
+	beq 2,motion3610_12clk_direction_selection
+	beq 3,motion3610_3clk_direction_selection
+	rtn
+
+mouse_3610_smart_select:
+	fetch 1,mem_sensor_smart_flag
+	beq P3610_SMART_ENABLE,mouse_3610_smart_disable
+	beq P3610_SMART_DISABLE,mouse_3610_smart_enable
+	rtn
+
+
+motion3610_6clk_direction_selection:
+	call motion_6clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+motion3610_12clk_direction_selection:
+	call motion_12clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+motion3610_9clk_direction_selection:
+	call motion_9clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+motion3610_3clk_direction_selection:
+	call motion_3clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+mouse_read_sensor3610_data:
+	call spi_ncs_enable
+	call mouse_read_sensor_common
+	arg 5,pdata
+	call twspi_read
+	store 1,mem_mouse_xy_h
+	arg 7,pdata
+	call twspi_read
+	store 1,mem_sensor_shutter_hi
+	arg 8,pdata
+	call twspi_read
+	store 1,mem_sensor_shutter_lo
+	branch spi_ncs_disable
+
+
+mouse_3610_smart_enable:
+	fetch 1,mem_sensor_shutter_hi
+	rtnne 0
+	fetch 1,mem_sensor_shutter_lo
+	sub pdata,45,null
+	rtn positive
+	jam P3610_SMART_ENABLE,mem_sensor_smart_flag
+	setarg 0xba41
+	call sensor_write
+	setarg 0x0032
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+mouse_3610_smart_disable:
+	fetch 1,mem_sensor_shutter_hi
+	rtnne 0
+	fetch 1,mem_sensor_shutter_lo
+	sub pdata,45,null
+	nrtn positive
+	jam P3610_SMART_DISABLE,mem_sensor_smart_flag
+	setarg 0xba41
+	call sensor_write
+	setarg 0x8032
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+
+
+
+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
+
+mouse_set_qdecoder_x:
+	arg MOUSE_DEFAULT_XA_GPIO,temp
+	call gpio_config_input
+	arg MOUSE_DEFAULT_XA_GPIO,temp
+	call gpio_get_bit
+	rtn true
+	hfetch 1,core_qdec_cntx
+	set1 4,pdata
+	hstore 1,core_qdec_cntx
+	rtn
+
+mouse_hardware_zwheel:
+	fetcht 1,mem_mouse_z_data
+	hfetch 1,core_qdec_cntx
+	iadd temp,pdata
+	rtn blank
+	store 1,mem_mouse_z
+	jam 0,mem_mouse_z_data
+	branch enable_user
+mouse_hardware_zwheel_beforelpm:
+	fetcht 1,mem_mouse_z_data
+	hfetch 1,core_qdec_cntx
+	iadd temp,pdata
+	store 1,mem_mouse_z_data
+	rtn
+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_check_key_gpio:
+	arg 0,rega
+	fetcht 1,mem_lbutton_gpio
+	call gpio_get_bit
+	setflag true,0,rega
+	fetcht 1,mem_rbutton_gpio
+	call gpio_get_bit
+	setflag true,1,rega
+	fetcht 1,mem_mbutton_gpio
+	call gpio_get_bit
+	setflag true,2,rega
+	call mouse_check_s_key_gpio
+mouse_check_key_gpio_output:
+	copy rega,pdata
+	rtn
+mouse_check_s_key_gpio:
+	fetch 1,mem_bk_button_gpio
+	rtneq GPIO_DISABLE
+	fetcht 1,mem_bk_button_gpio
+	call gpio_get_bit
+	setflag true,3,rega
+	fetcht 1,mem_fw_button_gpio
+	call gpio_get_bit
+	setflag true,4,rega
+	rtn
+
+mouse_key:
+	call mouse_check_key_gpio
+	call mouse_set_mult
+	call mouse_24g_key
+	copy rega,pdata
+	fetcht 1,mem_mouse_key
+	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
+
+//short mult: no key 
+mouse_set_mult:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,mouse_set_ble_mult
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,mouse_set_bt_mult
+	rtn
+mouse_set_ble_mult:
+	copy rega,pdata
+	nbranch le_set_config_short_mult,blank
+	branch le_clr_config_short_mult
+mouse_set_bt_mult:
+	copy rega,pdata
+	nbranch classic_bt_set_mult_short_flag,blank
+	branch classic_bt_clr_mult_short_flag
+	
+	/* sdio high will cost extra 9mA */
+mouse_sensor_sdio_low:
+	bpatch patch1c_7,mem_patch1c
+	arg MOUSE_SPI1_SDIO_GPIO,temp
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_SPI2,pdata
+	call mouse_sensor_sdio_low2,true
+	call gpio_get_bit
+	rtn true
+	setarg 0x0a
+	call twspi_read
+	nop 1000
+	branch mouse_sensor_sdio_low
+mouse_sensor_sdio_low2:
+	arg MOUSE_SPI2_SDIO_GPIO,temp
+	rtn
+
+mouse_spi_sdio_gpio_pollup:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_SPI2,mouse_spi2_sdio_gpio_pollup
+mouse_spi1_sdio_gpio_pollup:
+	arg MOUSE_SPI1_SDIO_GPIO,temp
+	branch gpio_config_input_without_wake
+mouse_spi2_sdio_gpio_pollup:
+	arg MOUSE_SPI2_SDIO_GPIO,temp
+	branch gpio_config_input_without_wake
+
+	
+mouse_init_sunt:
+	call mouse_spi_init
+	rtn wake
+	call mouse_spi_sdio_gpio_pollup
+	fetch 1,mem_config_sensor_type
+	beq P3610,mouse_init_3610sensor
+mouse_init_sensor:
+	call mouse_read_sensor_id
+	beq P32XX_ID1,mouse_init_p32xx_id2_judge
+	beq P3065_ID1,mouse_p3065_init_param
+	call mouse_twspi_reset
+	nop 1000
+	branch mouse_init_sensor
+mouse_twspi_reset:
+	bpatch patch1d_0,mem_patch1d
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_SPI2,twspi_reset2
+	branch twspi_reset
+
+mouse_init_3610sensor:
+	call mouse_read_sensor_id
+	beq P3610_ID1,mouse_init_p3610
+	call mouse_init_3610sensor_reset
+	branch mouse_init_3610sensor
+	
+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 P3205_TJ3T_ID2,mouse_3205_3t_init_param
+	beq P3204_TJ3L_ID2,mouse_3204_3l_init_param
+	beq P3212_ID2,mouse_3212_init_param
+	beq PKA8_ID2,mouse_ka8_init_param
+	rtn
+mouse_ka8_init_param:
+	jam KA8,mem_config_sensor_type
+	rtn
+mouse_p3065xy_init_param:
+	jam P3065_XY,mem_config_sensor_type
+	rtn
+mouse_p3065_init_param:
+	fetch 1,mem_sensor_id2
+	beq P3065_XY_ID2,mouse_p3065xy_init_param
+	jam P3065,mem_config_sensor_type
+	rtn
+mouse_3212_init_param:
+	jam P3212,mem_config_sensor_type
+	call mouse_sensor_disable_wp
+	setarg 0x3426
+	call twspi_write
+	setarg 0x0419
+	call twspi_write
+mouse_sensor_enable_wp:
+	setarg 0x0009
+	branch twspi_write
+mouse_sensor_disable_wp:
+	setarg 0x5a09
+	branch twspi_write
+
+mouse_3204_3l_init_param:
+	jam P3204,mem_config_sensor_type
+	call mouse_sensor_disable_wp
+	setarg 0x0f0d//
+	call twspi_write
+	setarg 0xe31d//
+	call twspi_write
+	setarg 0xd27d
+	call twspi_write
+	call mouse_32xx_init_param
+	branch mouse_32xx_init_param_1
+	
+mouse_32xx_init_param:
+	setarg 0x351b
+	call twspi_write
+	setarg 0xb428
+	call twspi_write
+	setarg 0x4629
+	call twspi_write
+	setarg 0x962a
+	call twspi_write
+	setarg 0x8c2b
+	call twspi_write
+	setarg 0x6e2c
+	call twspi_write
+	setarg 0x642d
+	call twspi_write
+	setarg 0x5f38
+	call twspi_write
+	setarg 0x0f39
+	call twspi_write
+	setarg 0x323a
+	call twspi_write
+	setarg 0x473b
+	call twspi_write
+	setarg 0x1042
+	branch twspi_write
+mouse_32xx_init_param_1:	
+	setarg 0x2e54
+	call twspi_write
+	setarg 0xf255
+	call twspi_write
+	setarg 0xf461
+	call twspi_write
+	setarg 0x7063
+	call twspi_write
+	setarg 0x5275
+	call twspi_write
+	setarg 0x4176
+	call twspi_write
+	setarg 0xed77
+	call twspi_write
+	setarg 0x2378
+	call twspi_write
+	setarg 0x4679
+	call twspi_write
+	setarg 0xe57a
+	call twspi_write
+	setarg 0x487c
+	call twspi_write
+	setarg 0x777e
+	call twspi_write
+	setarg 0x017f
+	call twspi_write
+	setarg 0x000b
+	call twspi_write
+	setarg 0x007f
+	call twspi_write
+	branch mouse_sensor_enable_wp
+	
+
+mouse_3205_3t_init_param:
+	jam P3205,mem_config_sensor_type
+	call mouse_sensor_disable_wp
+	setarg 0x100d//
+	call twspi_write
+	setarg 0xed1d//
+	call twspi_write
+	setarg 0x807d
+	call twspi_write
+	call mouse_32xx_init_param
+	setarg 0x0943
+	call twspi_write
+	branch mouse_32xx_init_param_1
+	
+	
+mouse_init_3610sensor_reset:
+	fetcht 1,mem_sensor_reset_gpio
+	call gpio_out_active
+	call delay_10ms
+	fetcht 1,mem_sensor_reset_gpio
+	call gpio_out_inactive
+	branch delay_10ms
+
+mouse_init_p3610:
+	jam P3610,mem_config_sensor_type
+	setarg 0xba41
+	call sensor_write
+	setarg 0x0d11
+	call sensor_write
+	setarg 0x041b
+	call sensor_write
+	setarg 0x041c
+	call sensor_write
+	setarg 0x0f1d
+	call sensor_write
+	setarg 0x0032
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+	
+	
+//input-rega
+mouse_set_sensor_reg:
+	setarg 0xba41
+	call sensor_write
+	nop 4000
+	setarg 0xff7f
+	call sensor_write
+	copy rega,pdata
+	call sensor_write
+	setarg 0x007f
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+
+extsign:
+	rtnbit0 7
+	arg 0xff00,temp
+	ior temp,pdata
+	rtn
+
+extsign_bit3:
+	rtnbit0 3
+	arg 0xf0,temp
+	ior temp,pdata
+	rtn
+
+
+mouse_le:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOSUE_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
+	call mouse_motion
+	nrtn user
+	branch mouse_fill_data_le
+
+mouse_le_send_empty_packet:
+	setarg 0
+	store 7,mem_mouse_key
+	branch mouse_fill_data_le
+
+mouse_priority_bb_event:	
+	copy regc,pdata
+	beq BT_EVT_LE_CONNECTED,mouse_le_bb_event_connected
+	beq BT_EVT_BB_CONNECTED,mouse_stop_discovery
+	beq BT_EVT_LE_DISCONNECTED,mouse_bb_disconnected
+	beq BT_EVT_BB_DISCONNECTED,mouse_bb_disconnected
+	beq BT_EVT_SETUP_COMPLETE,mouse_bt_event_setup_complete
+	beq BT_EVT_BUTTON_LONG_PRESSED,mouse_bb_event_discovery_btn
+	beq BT_EVT_HID_HANDSHAKE,mouse_bt_hid_handshake
+	beq BT_EVT_HID_CONNECTED,mouse_bt_hid_connected
+	beq BT_EVT_RECONN_FAILED,mouse_bb_event_reconn_failed
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,mouse_bb_event_reconn_timeout
+	beq BT_EVT_PINCODE_REQ,mouse_bb_event_pincode
+	beq BT_EVT_REMOTE_UNSNIFF,app_start_auto_sniff
+	beq BT_EVT_LE_PAIRING_SUCCESS,mouse_le_pairing_success
+	beq BT_EVT_LE_START_ENC,mouse_le_ll_start_encryt
+	beq BT_EVT_LE_PAIRING_COMPLETE,mouse_le_pairing_complete
+	beq BT_EVT_VIRTUAL_CABLE_UNPLUG,mouse_irtual_cable_unplug
+	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
+	rtn
+
+
+mouse_le_pairing_complete:
+	branch app_ble_store_reconn_info
+
+mouse_24g_attempt_fail:
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	branch app_enter_hibernate,zero
+	rtn
+mouse_24g_attempt_success:
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	rtn
+mouse_24g_pairing_complete:
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_disable_function_flag
+	setarg 0
+	store 2,mem_24g_pairing_timer_count
+	jam 0,mem_mouse_move_flag
+	
+	fetch 1,mem_config_sensor_type
+	sub pdata,P3610,null
+	call mouse_read_sensor3610_data,zero
+	ncall mouse_read_sensor_common,zero
+
+	fetch 1,MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_FLASH,mouse_store_flash_24g_address
+	call mouse_set_24g_addr_eeprom	//store rx dongle addr to eeprom
+	branch iicd_write_protect_eep_data
+
+mouse_set_24g_addr_eeprom:
+	call g24_head_ptr2regc
+	add regc,offset_24g_addr,rega
+	arg MOUSE_G24_ADDR_EEPROM_OFFECT,regb
+	arg 4,temp
+	rtn
+
+mouse_store_flash_24g_address:
+	call g24_head_ptr2regc
+	add regc,offset_24g_addr,regb
+	ifetch 1,regb
+	store 1,mem_mouse_24g_addr
+	branch mouse_store_flash_device_info
+	
+
+mouse_le_pairing_success:
+	arg LL_PAIRING_SUCCESS_FLAG,queue
+	branch mouse_le_enable_connect_flag
+mouse_le_ll_start_encryt:
+	jam 2,mem_le_start_encrypt_timer
+	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_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_bb_event_connected:
+	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
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	call mouse_no_data_timer_init
+	branch mouse_stop_discovery
+
+mouse_bb_event_pincode:
+	call pincode_reinit
+	branch app_bt_set_pincode
+mouse_bb_event_reconn_timeout:
+mouse_bb_event_reconn_failed:
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_soft_reset
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_start_discovery
+	bbit1 MOSUE_24G_PAIRING_FLAG,g24_start_pairing_sm1
+	branch app_bb_hibernate
+
+	
+mouse_bt_hid_connected:
+	branch mouse_hid_connected
+
+mouse_bt_event_setup_complete:
+	rtn
+
+mouse_soft_reset:
+	call mouse_select_device_enable
+	branch soft_reset_chip
+
+mouse_bb_disconnected:
+	bpatch patch1d_1,mem_patch1d
+	call mouse_bb_discon_clear_stack
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_soft_reset
+	bbit1 MOSUE_24G_PAIRING_FLAG,g24_start_pairing_sm1
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	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
+	bbit1 APP_DISC_AFTER_PAIRING,mouse_event_light_state_pairing
+	bbit1 APP_DISC_AFTER_RECONN,mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,mouse_event_light_state_hibernate
+	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_send_blank_timer
+	jam 0,mem_mouse_move_flag
+	jam APP_HANDSHAKE_NULL,mem_app_handshake_flag
+	jam 0,mem_ltk_exists
+	rtn
+
+mouse_event_light_state_pairing:
+	bbit1 APP_DISC_AFTER_HANDSHAKE,mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,mouse_event_light_state_hibernate
+	branch mouse_start_discovery
+mouse_event_light_state_hibernate:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	branch app_bb_hibernate
+
+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 app_bb_hibernate
+
+mouse_bb_event_timer:
+	call mouse_adc_read
+	call mouse_24g_delay_timer
+	call mouse_ban_24g_pairing_timer
+	call mouse_dpi_led_blink_delay_timer
+	call mouse_statue_up_timer
+	//poll
+	call mouse_statue_cheak_timer
+	call mouse_select_device
+	call mouse_bt_discovery_cheak
+	call mouse_low_voltage_led_timer
+	call mouse_sensor_led_contrl_timer
+	call mouse_check_hid_handshake_timer
+	call mouse_check_discovery_timeout_timer
+	call mouse_check_direct_timeout_timer
+	call mouse_check_no_data_timeout_timer
+	call mouse_check_mouse_state_timer
+	branch mouse_le_enable_att_list_timer
+
+
+
+mouse_sensor_led_contrl_timer:
+	fetch 1,mem_mouse_sensor_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_mouse_sensor_timer_count
+	nrtn blank
+	branch mouse_sensor_led_contrl
+mouse_sensor_led_contrl:
+	fetch 1,mem_sensor_led_style
+	rtneq UI_LED_STATE_BLINK_STOP
+	beq UI_LED_STATE_BLINK_DARKING,mouse_sensor_led_blink_state_darking
+mouse_sensor_led_blink_state_lighting:
+	call mouse_sensor_led_on
+	jam UI_LED_STATE_BLINK_DARKING,mem_sensor_led_style
+	jam LED_SENSOR_BLINK_CNT,mem_mouse_sensor_timer_count
+	rtn
+mouse_sensor_led_blink_state_darking:
+	call mouse_sensor_led_off
+	jam UI_LED_STATE_BLINK_LIGHTING,mem_sensor_led_style
+	jam LED_SENSOR_BLINK_CNT,mem_mouse_sensor_timer_count
+	rtn
+	
+mouse_sensor_led_blink_stop:
+mouse_sensor_reset:
+	setarg 0x8006
+	call twspi_write
+    nop 1000
+	jam 0x00,mem_mouse_sensor_timer_count
+	jam UI_LED_STATE_BLINK_STOP,mem_sensor_led_style
+	branch mouse_init_p32xx_id2_judge
+	
+mouse_p3212sensor_led_on:
+	setarg 0xa006
+	call twspi_write
+	setarg 0xa005
+	branch twspi_write
+mouse_sensor_led_on_global:
+	jam 0,mem_mouse_sensor_timer_count
+mouse_sensor_led_on:
+	fetch 1,mem_config_sensor_type
+	beq P3212,mouse_p3212sensor_led_on
+	setarg 0x0106
+	call twspi_write
+	setarg 0xa105
+	branch twspi_write
+	
+mouse_sensor_led_off_global:
+	jam 0,mem_mouse_sensor_timer_count	
+mouse_sensor_led_off:
+	setarg 0x0906
+	branch twspi_write
+mouse_sensor_start_blink:
+	jam LED_SENSOR_BLINK_CNT,mem_mouse_sensor_timer_count
+	jam UI_LED_STATE_BLINK_START,mem_sensor_led_style
+	rtn
+	
+mouse_check_hid_handshake_timer:
+	arg mem_hid_handshake_timer_count,regc
+	arg mouse_bt_hid_handshake,regb
+	branch timer_single_step
+
+mouse_check_discovery_timeout_timer:	
+	arg mem_mouse_discovery_timer,regc
+	arg mouse_check_discovery_timeout,regb
+	branch timer_single_step_2B
+
+mouse_check_direct_timeout_timer:	
+	arg mem_mouse_direct_timer,regc
+	arg mouse_check_direct_timeout,regb
+	branch timer_single_step_2B
+	
+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_mouse_state_timer:
+	arg mem_mouse_statue_led_timer,regc
+	arg mouse_statue_led_off,regb
+	branch timer_single_step
+
+
+
+mouse_le_enable_att_list_timer:
+	arg mem_le_start_encrypt_timer,regc
+	arg mouse_le_enable_att_list,regb
+	branch timer_single_step
+
+mouse_24g_delay_timer:
+	arg mem_24g_enter_lpm_timer,regc
+	arg mouse_24g_delay,regb
+	branch timer_single_step
+
+mouse_ban_24g_pairing_timer:
+	arg mem_24g_pairing_timer_count,regc
+	arg mouse_ban_24g_pairing,regb
+	branch timer_single_step_2B
+mouse_ban_24g_pairing:
+mouse_24g_delay:
+	rtn
+
+
+mosue_dpi_led_blink_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_DPI_LED_BLINK
+	jam 10,mem_mouse_dpi_led_delay_count  //delay 1s led blink
+	fetch 1,mem_dpi_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	rtn
+
+
+mouse_dpi_led_blink_delay_timer:
+	arg mem_mouse_dpi_led_delay_count,regc
+	arg mouse_dpi_led_setting,regb
+	branch timer_single_step	
+mouse_dpi_led_setting:
+	fetch 1,mem_dpi_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	setarg LED_DPI_BLINK
+	store 2,mem_mouse_on_time
+	store 2,mem_mouse_off_time
+	arg 0,rega
+	fetcht 1,mem_mouse_dpi
+	increase 1,temp
+	storet 1,mem_mouse_blink_count
+	jam UI_LED_STATE_BLINK_START,mem_mouse_led_type
+	rtn
+	
+mouse_le_enable_att_list:	
+	fetch 1,mem_le_connect_status_flag
+	rtnbit1 LL_PAIRING_SUCCESS_FLAG
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	call ui_ipc_send_cmd
+	arg WRITE_REQ_ENABLE_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+
+mouse_check_discovery_timeout:
+	call mouse_stop_discovery
+	branch app_enter_hibernate
+
+mouse_check_direct_timeout:
+	call app_ble_stop_direct_adv
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	branch app_enter_hibernate
+
+mouse_check_no_data_timeout:
+	bmark1 mark_24g,check_51cmd_hibernate
+	branch mouse_disconnect
+
+	
+
+mouse_bb_event_discovery_btn:
+	bpatch patch1d_2,mem_patch1d
+	jam 0,mem_mouse_send_blank_timer
+	call mouse_disconnect
+	call mouse_le_clean_connect_flag
+	branch mouse_start_discovery
+
+
+
+mouse3_0_check_reconn_target:
+	fetch 6,mem_hci_plap
+	branch app_bt_start_discovery_short,blank
+	call mouse_reconn_setting_led_gpio
+	jam 0x17,mem_connection_options  //ssp
+	fetch 1,mem_ssp_enable
+	nbranch app_bt_start_reconnect,blank
+	jam 0x04,mem_connection_options  //no ssp
+	branch app_bt_start_reconnect
+	
+mouse4_0_check_reconn_target:
+	fetch 2,mem_mouse_direct_timeout
+	store 2,mem_mouse_direct_timer
+	call mouse_reconn_setting_led_gpio
+	call app_lpm_mult_disable
+	branch check_51cmd_adv
+
+mouse_reconn_setting_led_gpio:
+	setarg LED_RECONNECT_BLINK
+	store 2,mem_mouse_on_time
+	store 2,mem_mouse_off_time
+	branch mouse_setting_led_gpio_comman
+	
+mouse_discover_setting_led_gpio:
+	setarg LED_DISCOVERY_BLINK
+	store 2,mem_mouse_on_time
+	store 2,mem_mouse_off_time	
+mouse_setting_led_gpio_comman:
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_device_led1
+	beq MODE_BT_DEVICE2,mouse_device_led2
+	beq MODE_BT_DEVICE3,mouse_device_led3
+	rtn
+mouse_device_led1:
+	fetch 1,mem_config_device1_led_gpio
+	branch mouse_led_blink
+mouse_device_led2:
+	fetch 1,mem_config_device2_led_gpio
+	branch mouse_led_blink
+mouse_device_led3:
+	fetch 1,mem_config_device3_led_gpio
+mouse_led_blink:
+	store 1,mem_temp
+	call mouse_devce_led_off
+	fetch 1,mem_temp
+	store 1,mem_mouse_struct_led_gpio
+	arg 0,rega
+	jam UI_LED_STATE_BLINK_START,mem_mouse_led_type
+	branch ui_led_blink_start_global
+
+mouse_led_off:
+	arg 0,rega
+	branch ui_led_off_global
+mouse_led_on:
+	arg 0,rega
+	branch ui_led_on_global
+
+mouse4_0_bb_event_discovery_btn:
+	branch mouse_le_clean_connect_flag
+	
+mouse_bt_hid_handshake:
+	jam APP_HANDSHAKE_DONE,mem_app_handshake_flag
+	call app_lpm_mult_enable
+	call app_bt_store_reconn_info
+	setarg 0
+	store 2,mem_discovery_timeout_timer_count
+	store 1,mem_hid_handshake_timer_count
+	branch app_bt_enter_sniff
+
+mouse_check_reconn_target:
+	call mouse_cheak_select_device_by_switch
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	branch mouse_connect_24g_mode,zero
+	fetch 1,mem_xrecord_mode
+	beq REC_3_MODE,mouse3_0_check_reconn_target
+	beq REC_4_MODE,mouse4_0_check_reconn_target
+	branch mouse_start_discovery
+mouse_connect_24g_mode:
+	call mouse_start_24g_mode
+	rtnmark1 mark_24g
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	rtn
+	
+mouse_start_discovery:
+	bpatch patch1d_3,mem_patch1d
+	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
+	random pdata					//random ble addr
+	store 1,mem_le_lap+1
+mouse_start_discovery_norandom:
+	call app_lpm_mult_disable
+	fetch 2,mem_discovery_timeout
+	store 2,mem_mouse_discovery_timer
+	jam 6,mem_connection_options
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	store 2,mem_mouse_direct_timer
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_enable_function_flag
+	call mouse_bt_discovery_button_down_disable
+	fetch 1,mem_device_option
+	isolate1 MODE_4_MOUSE,pdata
+	call check_51cmd_adv,true
+	fetch 1,mem_device_option
+	isolate1 MODE_3_MOUSE,pdata
+	call check_51cmd_start_discovery,true
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_start_blink
+	branch mouse_discover_setting_led_gpio
+
+mouse_stop_discovery:
+	bpatch patch1d_4,mem_patch1d
+	fetch 1,mem_device_option
+	isolate1 MODE_4_MOUSE,pdata
+	call mouse_stop_le_adv,true
+	fetch 1,mem_device_option
+	isolate1 MODE_3_MOUSE,pdata
+	call mouse_stop_bt3_discovery,true
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_led_blink_stop
+	branch mouse_devce_led_off
+mouse_stop_le_adv:
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	branch check_51cmd_stop_adv
+mouse_stop_bt3_discovery:
+	setarg 0
+	store 2,mem_mouse_discovery_timer
+	branch check_51cmd_stop_discovery
+
+	
+
+
+
+mouse_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 mouse_check_device_addr
+mouse_unplug_clean_bdaddr:
+	call mouse_before_store_reconn_info
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_FLASH,mouse_store_flash_device_info
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eeprom_device_info	
+	rtn
+mouse_store_eeprom_device_info:
+	arg 88,temp
+	arg mem_device_flag,rega
+	arg MOUSE_INFO_EEPROM_OFFECT,regb
+	branch iicd_write_protect_eep_data
+
+mouse_check_device_addr:
+	fetch 1,mem_record_bt_mode
+	beq REC_4_MODE,mouse_check_le_device_addr
+	beq REC_3_MODE,mouse_check_bt_device_addr
+	rtn
+mouse_check_le_device_addr:
+	store 1,mem_device_addr_temp
+	fetch 6,mem_le_plap
+	branch mouse_check_bt_device_addr_common
+mouse_check_bt_device_addr:
+	store 1,mem_device_addr_temp
+	fetch 6,mem_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
+	beq REC_3_MODE,mouse_store_bt_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_store_bt_device:
+	fetch 6,mem_plap
+	istore 6,contw
+	arg mem_link_key,contr
+	branch memcpy16
+
+mouse_clean_addr:
+	increase -6,contr
+	copy contr,contw
+	fetcht 6,mem_device_addr_temp+1
+	increase 3,temp
+	istoret 6,contw
+	rtn
+
+
+
+mouse_eeprom_load_recon_info:
+	arg 88,temp
+	arg mem_device_flag,rega
+	arg MOUSE_INFO_EEPROM_OFFECT,regb
+	call iicd_read_eep_data
+mouse_select_reconn_device:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	rtn zero
+	increase -1,pdata
+	mul32 pdata,29,pdata
+	iadd rega,rega
+	ifetch 1,rega
+	store 1,mem_xrecord_mode
+	beq REC_3_MODE,mouse_load_bt_device
+	beq REC_4_MODE,mouse_load_le_device
+	rtn
+
+mouse_load_bt_device:
+	ifetch 6,contr
+mouse_load_bt_device_end:
+	store 6,mem_hci_plap
+	arg mem_link_key,contw
+	call memcpy16
+	branch check_link_key_load
+
+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_select_device:
+	fetch 1,mem_config_function_enable
+	bbit1 ENABLE_SELECT_DEVICE_BY_GPIO_BUTTON,mouse_select_device_by_button
+	bbit1 ENABLE_SELECT_DEVICE_BY_SWITCH,mouse_select_device_by_switch
+	branch mouse_select_device_by_combination_key
+
+mouse_select_device_by_combination_key:
+	call mouse_check_key_gpio
+	beq MOUSE_RM_BUTTON,mouse_select_device_commbination_key_down
+mouse_select_device_commbination_key_up:
+	jam 30,mem_combination_select_device_count	//combination key timer init 
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue	
+	rtn
+	
+mouse_select_device_commbination_key_down:
+	call mouse_combination_select_device_timer
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_select_device_button_statue
+	branch mouse_select_device_enable
+
+mouse_combination_select_device_timer:
+	fetch 1,mem_combination_select_device_count
+	rtn blank
+	pincrease -1
+	store 1,mem_combination_select_device_count
+	nrtn blank
+	branch mouse_ready_reconnection_by_button
+	
+mouse_select_device_by_button:
+	fetch 1,mem_config_select_device_button_gpio
+	rtneq GPIO_DISABLE
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	branch mouse_select_device_button_down,true
+mouse_select_device_button_up:
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue	
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LONG_BT_BUTTON_FLAG
+	branch mouse_ready_reconnection_by_button
+
+mouse_select_device_button_down:
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_select_device_button_statue
+	arg MOUSE_LONG_BT_BUTTON_FLAG,queue
+	branch mouse_disable_function_flag
+
+
+
+mouse_select_device_by_switch:
+	fetch 1,MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 ENABLE_SELECT_DEVICE_BY_SWITCH
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_select1_device
+	beq MODE_24G_DEVICE,mouse_select2_device
+	rtn
+mouse_cheak_select_device_by_switch:
+	fetch 1,MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 ENABLE_SELECT_DEVICE_BY_SWITCH
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	branch mouse_cheak_select_24gdevice,true
+mouse_select_btdevice:
+	jam MODE_BT_DEVICE1,mem_device_flag
+	rtn
+mouse_cheak_select_24gdevice:
+	fetch 1,mem_24g_device_number
+	store 1,mem_device_flag
+	rtn
+mouse_select1_device:
+	fetcht 1,mem_config_select_device_button_gpio
+	nbranch mouse_ready_reconnection_by_button,true
+	rtn
+mouse_select2_device:
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	branch mouse_select_device_button_down,true
+	rtn
+
+
+	
+
+mouse_ready_reconnection_by_button:
+	fetcht 1,mem_device_flag
+	increase 1,temp
+	fetch 1,mem_device_number
+	isub temp,null
+	ncall mouse_select_device_count_clean,positive
+	storet 1,mem_device_flag
+	jam 0,mem_link_key_exists
+	call mouse_store_device_number2eeprom
+mouse_ready_reconnection_by_button_next:
+	call mouse_select_device_enable
+//	call p_select_reconn_device
+	branch mouse_set_reconnection
+
+mouse_store_device_number2eeprom:
+	arg 1,temp
+	arg mem_device_flag,rega
+	arg 0,regb
+	branch iicd_write_eep_data
+
+mouse_set_reconnection:
+	call mouse_stop_bluetooth_mode
+	call mouse_select_device_disable
+	branch mouse_soft_reset
+mouse_stop_bluetooth_mode:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_RECONNECT,mouse_cancel_reconnect
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	branch mouse_stop_discovery
+
+mouse_disconnect:
+	bpatch patch1d_5,mem_patch1d
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	rtn
+
+mouse_irtual_cable_unplug:
+	setarg 0x01
+	store 6,mem_plap
+	jam REC_3_MODE,mem_record_bt_mode
+	branch mouse_unplug_clean_bdaddr
+
+	
+mouse_cancel_reconnect:
+	call mouse_bt_cannel_reconn_enable
+	branch check_51cmd_bb_reconn_cancel
+
+mouse_bt_discovery_by_button:
+	fetch 1,mem_config_bt_button_gpio
+	rtneq GPIO_DISABLE
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_get_bit
+	branch mouse_bt_discovery_button_down,true
+mouse_bt_discovery_button_up:
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_combination_ui_button_count	//combination key timer init 	
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_bt_discovey_button_statue	
+	branch mouse_bt_discovery_button_down_disable
+mouse_bt_discovery_button_down:
+	call mouse_bt_discovry_timer
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_bt_discovey_button_statue
+	call check_51cmd_bb_reconn_cancel
+	branch mouse_bt_discovery_button_down_enable
+
+	
+mouse_bt_discovery_cheak:
+	fetch 1,mem_config_function_enable
+	bbit1 ENABLE_BT_BUTTON,mouse_bt_discovery_by_button
+mouse_bt_discovery_commbination_key:
+	call mouse_check_key_gpio
+	beq MOUSE_LMR_BUTTON,mouse_bt_discovery_commbination_key_down
+mouse_bt_discovery_commbination_key_up:
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_combination_ui_button_count	//combination key timer init 
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_bt_discovey_button_statue	
+	branch mouse_bt_discovery_button_down_disable
+	
+	
+mouse_bt_discovery_commbination_key_down:
+	call mouse_bt_discovry_timer
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_bt_discovey_button_statue
+	call check_51cmd_bb_reconn_cancel
+	branch mouse_bt_discovery_button_down_enable
+
+mouse_bt_discovry_timer:
+	arg mem_combination_ui_button_count,regc
+	arg mouse_long_button_bt_discovry,regb
+	branch timer_single_step
+	
+mouse_long_button_bt_discovry:
+	arg MOUSE_LONG_BT_BUTTON_FLAG,queue
+	call mouse_enable_function_flag
+	call app_evt_button_long_pressed
+	branch mouse_bb_event_discovery_btn
+
+
+mouse_cpi_enable:
+	arg MOUSE_CPI_FLAG,queue
+	branch mouse_enable_function_flag
+mouse_cpi_disable:
+	arg MOUSE_CPI_FLAG,queue
+	branch mouse_disable_function_flag
+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_select_device_count_clean:
+	arg 1,temp
+	rtn
+
+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_adc_read:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_ADC
+	fetch 1,mem_adc_read_timer
+	increase 1,pdata
+	store 1,mem_adc_read_timer
+	sub pdata,10,null              //1s read adc
+	rtn positive
+	jam 0,mem_adc_read_timer
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+	call adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,mouse_power_down
+	bbit0 0,mouse_adc_no_low_voltage
+	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
+	branch mouse_disable_function_flag
+
+mouse_low_voltage_led_timer:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+	fetch 1,mem_config_low_voltage_alarm_gpio
+	store 1,mem_mouse_struct_led_gpio
+	fetch 1,mem_adc_low_volatage_led_timer_count
+	pincrease 1
+	store 1,mem_adc_low_volatage_led_timer_count
+	sub pdata,20,null
+	ncall mouse_adc_low_volatage_led_timer_count_clean,positive
+	beq 2,mouse_low_voltage_led_on
+	beq 4,mouse_low_voltage_led_off
+	beq 6,mouse_low_voltage_led_on
+	beq 8,mouse_low_voltage_led_off
+	rtn
+mouse_adc_low_volatage_led_timer_count_clean:
+	jam 1,mem_adc_low_volatage_led_timer_count
+	branch mouse_low_voltage_led_off
+mouse_low_voltage_led_on:
+	arg 0,rega
+	jam UI_LED_STATE_LIGHTING,mem_mouse_led_type
+	branch ui_led_on_global
+mouse_low_voltage_led_off:
+	arg 0,rega
+	jam UI_LED_STATE_LIGHTING,mem_mouse_led_type
+	branch ui_led_off_global
+
+mouse_g24_package_data:
+	call mouse_motion
+	nrtn user
+	arg 7,rega	//length
+	arg mem_mouse_key,regb //tx buff
+	rtn
+	
+mouse_g24_enter_lpm:
+	fetch 1,mem_mouse_24g_enter_lpm_enable
+	rtn blank
+	//do not enter lpm when condition is unallowed
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_get_bit
+	call mouse_24g_dpi_delay_init,true
+	fetch 1,mem_24g_enter_lpm_timer
+	nrtn blank
+	call mouse_check_key_gpio
+	nrtn blank
+	branch g24_lpm_long_sleep
+
+mouse_24g_dpi_delay_init:
+	fetch 1,mem_dpi_button_gpio
+	rtneq UI_BUTTON_GPIO_DISABLE
+	jam 10,mem_24g_enter_lpm_timer
+	rtn
+
+	
+mouse_load_flash_info_cheak:
+	call mouse_load_flash_flag
+	fetch 2,mem_store_flag
+	arg EEPROM_INIT_FLAG,temp
+	isub temp,null
+	branch mouse_load_flash_device_info,zero
+	storet 2,mem_store_flag
+	call mouse_ble_init_address
+	branch mouse_store_flash_device_info
+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
+	
+	
+mouse_load_flash_flag:
+	setarg mem_store_flag
+	arg mem_mouse_information_start,temp
+	isub temp,temp
+	fetch 3,mem_flash_base
+	iadd temp,pdata
+	arg 2,temp
+	arg mem_store_flag,rega
+	branch spid_read_flash
+
+	
+mouse_load_flash_device_info:
+	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
+	call spid_read_flash
+	call mouse_select_reconn_device
+	fetch 4,mem_mouse_24g_addr
+	call g24_head_ptr2regc
+	branch g24_store_mem_addr
+
+mouse_store_flash_device_info:	
+	setarg mem_mouse_information_end
+	arg mem_mouse_information_start,temp
+	isub temp,temp
+	arg mem_mouse_information_start,rega
+	fetch 3,mem_flash_base
+	branch flash_write
+
+mouse_store_eerpom_dpi:
+	arg 1,temp
+	arg mem_mouse_dpi,rega
+	arg MOUSE_DPI_EEPROM_OFFECT,regb
+	branch iicd_write_protect_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
+
+mouse_statue_cheak_timer:
+	rtnmark1 mark_24g
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_STATUE_UP
+	fetch 1,mem_mouse_1step_up_count
+	pincrease 1
+	and pdata,0x07,pdata
+	store 1,mem_mouse_1step_up_count
+	rtnne 0x07         //800ms read sensor
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,mouse_check_statue_up
+	bbit1 UI_STATE_BLE_CONNECTED,mouse_check_statue_up
+	rtn
+
+
+
+//mosue 
+mouse_check_statue_up:
+	bpatch patch1d_6,mem_patch1d
+	fetch 1,mem_mouse_2step_up_count
+	nrtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_STATUE_UP_FLAG
+	fetch 1,mem_sensor_squal_reg
+	call sensor_read
+	store 1,mem_sensor_iqc
+	sub pdata,0x10,null
+	branch mouse_statue_up_timer_init,positive
+	jam 0,mem_mouse_2step_up_count
+	rtn
+
+mouse_statue_up_timer_init:
+	jam 30,mem_mouse_2step_up_count
+	rtn
+mouse_statue_up_timer:
+	arg mem_mouse_2step_up_count,regc
+	arg mouse_statue_up,regb
+	branch timer_single_step
+
+mouse_statue_up:
+	fetch 1,mem_sensor_squal_reg
+	call twspi_read
+	sub pdata,0x10,null
+	nrtn positive
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_STATUE_UP_FLAG
+	arg MOUSE_STATUE_UP_FLAG,queue
+	call mouse_disable_function_flag
+	jam 0,mem_lpm_mult
+	jam 30,mem_mouse_statue_led_timer         // led on3s
+	call mouse_devce_led_off
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_STATUE_UP_THREE_LED,mouse_three_device_statue_up
+mouse_two_device_statue_up:
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_device1_led_on  		//device_1
+	beq MODE_BT_DEVICE2,mouse_device_blink_led_init		//device_2
+	rtn
+mouse_three_device_statue_up:
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_device1_led_on  		//device_1
+	beq MODE_BT_DEVICE2,mouse_device2_led_on		//device_2
+	beq MODE_BT_DEVICE3,mouse_device3_led_on		//device_3
+	rtn
+	
+mouse_device_blink_led_init:
+	fetch 1,mem_config_device1_led_gpio
+	branch mouse_led_blink
+
+
+
+mouse_statue_led_off:
+	jam 0x20,mem_lpm_mult
+	branch mouse_devce_led_off
+
+
+
+mouse_devce1_led_off:
+	fetch 1,mem_config_device1_led_gpio
+	rtneq GPIO_DISABLE
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_off
+
+mouse_devce2_led_off:
+	fetch 1,mem_config_device2_led_gpio
+	rtneq GPIO_DISABLE
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_off
+	
+mouse_devce_led_off:
+	call mouse_led_off
+	call mouse_devce1_led_off
+	call mouse_devce2_led_off
+mouse_devce3_led_off:
+	fetch 1,mem_config_device3_led_gpio
+	rtneq GPIO_DISABLE
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_off
+
+mouse_device1_led_on:
+	fetch 1,mem_config_device1_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_on
+mouse_device2_led_on:
+	fetch 1,mem_config_device2_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_on
+mouse_device3_led_on:
+	fetch 1,mem_config_device3_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_on
+
+
+
+mouse_polling_device:
+	bpatch patch1d_7,mem_patch1d
+	fetch 1,mem_reconn_times
+	increase -1,pdata
+	store 1,mem_reconn_times
+	fetcht 1,mem_device_flag
+	increase 1,temp
+	fetch 1,mem_device_number
+	isub temp,null
+	ncall mouse_select_device_count_clean,positive
+	storet 1,mem_device_flag
+	jam 0,mem_link_key_exists
+	call mouse_store_device_number2eeprom
+	call mouse_before_store_reconn_info
+	branch mouse_check_reconn_target
+	
+mouse_power_down:
+	call mouse_devce_led_off
+	setarg 0
+	store 8,mem_gpio_wakeup_low
+	branch lpm_hibernate
+
+
+
+
+
+
+
+
+
+
+remote_car_init:
+	rtn wake	
+	hfetch 1,core_gpio_sel1
+	and_into 0xf0,pdata
+	hstore 1,core_gpio_sel1
+	call keyscan_key_init
+	setarg remote_car_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+	
+	setarg remote_car_process_lpm_before
+	store 2,mem_cb_before_lpm	
+	
+	setarg remote_car_scale_process_idle	
+	store 2,mem_cb_idle_process	
+	
+	setarg remote_car_scale_process_bb_event 
+	store 2,mem_cb_bb_event_process	
+	
+	setarg app_get_lpm_wake_lock
+	store 2,mem_cb_check_wakelock	
+
+	call g24_head_ptr2regc
+	setarg remote_car_g24_package_data
+	add regc,offset_24g_cb_data,contw
+	istore 2,contw
+	
+	setarg remote_car_g24_enter_lpm
+	add regc,offset_24g_cb_lpm_prepare,contw
+	istore 2,contw
+	
+	setarg remote_car_process_lpm_before
+	add regc,offset_24g_cb_lpm_before,contw
+	istore 2,contw
+
+	setarg remote_car_event_timer
+	store 2,mem_cb_event_timer
+	
+	setarg remote_car_power_off_signal
+	store 2,mem_remote_car_power_off_cb
+	
+	setarg remote_car_soft_switch_power_on_signal
+	store 2,mem_remote_car_power_standby_cb
+	
+	setarg remote_car_send_key_data
+	store 2,mem_cb_remote_car_keyscan
+	
+	bpatch patch1e_0,mem_patch1e
+	call remote_car_init_environment
+	call queue_init
+	jam 2,mem_lpm_mult
+	fetch 1,mem_remote_car_config_soft_switch_enable
+	store 1,mem_remote_car_hard_soft_switch
+	beq HARD_SWITCH, remote_car_hard_switch_power_on_signal
+	fetch 1,mem_remote_car_config_soft_switch_gpio
+	store 1,mem_ui_button_gpio
+remote_car_soft_switch_power_on_init:
+	call remote_car_ui_led_init
+	call ui_button_init
+	call ui_button_polling
+	jam POWER_STARTING,mem_remote_car_power_state
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	branch app_enter_hibernate
+
+
+
+remote_car_hard_switch_power_on_signal:
+	jam POWER_STANDBY,mem_remote_car_power_state
+remote_car_soft_switch_power_on_signal:
+	call remote_car_ui_led_init
+//	fetch 1,mem_remote_car_led_map
+	arg 0,rega
+	call ui_led_blink_start_global
+remote_car_connect_24g_mode:
+	branch g24_auto_pair_start
+
+remote_car_power_off_signal:	
+	branch remote_car_ui_led_init
+	
+remote_car_ui_led_init:
+	bpatch patch1e_1,mem_patch1e
+	fetch 1,mem_remote_car_config_connect_led_gpio
+	bne INVALID_PIN_NUM,remote_car_pairing_led_gpio_set
+remote_car_ui_led_init_1:
+	fetcht 1, mem_remote_car_led_map
+	branch gpio_config_output
+remote_car_pairing_led_gpio_set:
+	store 1,mem_remote_car_led_map
+	branch remote_car_ui_led_init_1
+
+
+remote_car_init_environment:
+	call g24_set_device_addr
+	fetch 2,mem_remote_car_no_data_timeout
+	store 2,mem_remote_car_no_data_timer
+	branch remote_car_get_adc_default_data
+
+remote_car_le_before_hibernate:
+//	call keyscan_scan_key
+//	fetch 2, mem_key_value_temp
+//	branch remote_car_in_enter_hibernate,blank
+//	branch app_enter_hibernate
+remote_car_in_enter_hibernate:	
+	call gpio_set_before_lpm_common
+	call remote_car_process_lpm_before
+	branch app_enter_hibernate
+
+remote_car_process_lpm_before:
+	branch keyscan_process_lpm_before
+
+remote_car_g24_enter_lpm:
+	fetch 1,mem_remote_car_24g_enter_lpm_enable
+	rtn blank
+	//do not enter lpm when condition is unallowed
+	branch g24_lpm_long_sleep
+
+remote_car_process_auto_pair_exit:
+	rtn
+
+remote_car_key_scan_process:
+	branch keyscan_key_process
+
+remote_car_scale_process_idle:
+	call remote_car_rocker_process
+	call remote_car_24g_status_process
+	branch remote_car_key_scan_process
+
+remote_car_scale_process_bb_event:
+	copy regc,pdata
+	beq BT_EVT_BUTTON_UP,app_event_button_up
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_button_long_pressed
+	beq BT_EVT_24G_PAIRING_COMPLETE,remote_car_24g_pairing_complete
+	beq BT_EVT_24G_ATTEMPT_SUCCESS,remote_car_24g_attempt_success
+	beq BT_EVT_24G_ATTEMPT_FAIL,remote_car_24g_attempt_fail
+	rtn
+
+remote_car_24g_attempt_fail:
+	jam 1,mem_remote_car_24g_enter_lpm_enable
+	rtn
+
+remote_car_24g_pairing_complete:
+	jam 1,mem_remote_car_24g_enter_lpm_enable
+	jam WORK_PAIRED,mem_remote_car_24g_auto_work_step
+	jam WORK_PAIRED,mem_remote_car_24g_pair_success_flag
+	rtn
+
+remote_car_24g_attempt_success:
+	jam 1,mem_remote_car_24g_enter_lpm_enable
+	jam WORK_PAIRED,mem_remote_car_24g_auto_work_step
+	jam WORK_PAIRED,mem_remote_car_24g_pair_success_flag
+	rtn
+
+remote_car_24g_status_process:
+	fetch 1,mem_remote_car_24g_auto_work_step
+	rtneq POWER_ON
+	fetch 1,mem_remote_car_24g_status
+	rtneq WORK_PAIRED
+	jam WORK_PAIRED,mem_remote_car_24g_status
+remote_car_scale_process_paired:
+	arg 0,rega
+	branch ui_led_off_global
+remote_car_scale_process_shutdown:
+	arg 0,rega
+	call ui_led_off_global
+	call remote_car_ui_led_init
+	branch app_enter_hibernate
+	
+remote_car_event_timer:
+	call app_power_timer
+	branch remote_car_no_data_timer
+
+remote_car_no_data_timer:
+	fetch 1,mem_remote_car_config_timeout_shutdown_enable
+	rtn blank
+	arg mem_remote_car_no_data_timer,regc
+	arg remote_car_scale_process_shutdown,regb
+	branch timer_single_step_2B
+	
+////////////////////////////////////rocker/////////////////////////////
+remote_car_get_adc_default_data:
+	call remote_car_rocker_get_x
+	storet 2,mem_current_vdd_value_default_mid_x
+	call remote_car_rocker_get_y
+	storet 2,mem_current_vdd_value_default_mid_y
+	rtn
+remote_car_rocker_data_get:
+remote_car_rocker_get_x:
+	fetch 2,mem_current_vdd_value_default_mid_x
+	store 2,mem_current_vdd_value_default_mid_temp
+	call remote_car_get_adc_from_gpio6
+	call remote_car_rocker_get_value
+	store 1,mem_rocker_status
+remote_car_rocker_get_y:
+	fetch 2,mem_current_vdd_value_default_mid_y
+	store 2,mem_current_vdd_value_default_mid_temp
+	call remote_car_get_adc_from_gpio7
+	call remote_car_rocker_get_value
+	store 1,mem_rocker_status+1
+	rtn
+remote_car_rocker_get_value:
+	fetch 2,mem_current_vdd_default_range
+	copy pdata,rega
+	fetch 2,mem_current_vdd_value_default_mid_temp
+	call remote_car_rocker_mid_value_adjust
+	fetch 1,mem_rocker_work_status
+	nbranch remote_car_rocker_translate_key,blank
+	nrtn positive
+	fetcht 2,mem_current_vdd_value_default_mid_temp
+	rtn	
+remote_car_rocker_mid_value_adjust:
+	isub temp,pdata
+	branch remote_car_rocker_mid_adjust_positive,positive
+	sub pdata,0,pdata		//negative adjust
+	jam 1,mem_rocker_negative_flag
+	isub rega,null
+	rtn
+remote_car_rocker_mid_adjust_positive:
+	jam 0,mem_rocker_negative_flag
+	isub rega,null
+	rtn
+remote_car_rocker_translate_key:
+	nbranch remote_car_rocker_middle_key,positive
+	fetch 1,mem_rocker_negative_flag
+	nbranch remote_car_rocker_negative_key,blank
+remote_car_rocker_positive_key:	
+	setarg ROCKER_POSITIVE_KEY
+	rtn
+remote_car_rocker_negative_key:
+	setarg ROCKER_NEGATIVE_KEY
+	rtn
+remote_car_rocker_middle_key:
+	setarg ROCKER_MIDDLE_KEY
+	rtn
+remote_car_get_adc_from_gpio6:
+	jam 0x33,mem_adc_channel
+	branch adc_set_mode
+remote_car_get_adc_from_gpio7:
+	jam 0x34,mem_adc_channel
+	branch adc_set_mode
+
+
+remote_car_rocker_process:
+	fetch 1,mem_remote_car_config_check_way
+	rtnne CAR_REMOTE_CHECK_ROCKER	
+remote_car_read_rocker_check_start:
+	bpatch patch1e_2,mem_patch1e
+	jam 1,mem_rocker_work_status
+	call remote_car_rocker_data_get
+	fetch 2,mem_rocker_status
+	fetcht 2,mem_rocker_last_status
+	isub temp,null
+	rtn zero
+	store 2,mem_rocker_last_status
+	call remote_car_rocker_x_to_key
+	branch remote_car_rocker_y_to_key
+	
+remote_car_rocker_x_to_key:
+	fetch 1,mem_rocker_x_status
+	branch rocker_to_queue_set_0,blank
+	increase -1,pdata
+	branch remote_car_rocker_to_key
+remote_car_rocker_y_to_key:
+	fetch 1,mem_rocker_y_status
+	branch rocker_to_queue_set_2,blank
+	increase 1,pdata
+remote_car_rocker_to_key:
+	copy pdata,queue
+	arg 1,rega
+	branch remote_car_send_key_data
+	
+rocker_to_queue_set_0:
+	arg 0,queue
+	arg 0,rega
+	branch remote_car_send_key_data
+rocker_to_queue_set_2:
+	arg 2,queue
+	arg 0,rega
+	branch remote_car_send_key_data
+	
+remote_car_send_key_data:
+	copy rega,pdata
+	store 1,mem_remote_key_status
+	fetch 1,mem_remote_car_24g_auto_work_step
+	beq POWER_ON,g24_auto_pair_start
+	fetch 2,mem_remote_car_no_data_timeout
+	store 2,mem_remote_car_no_data_timer
+	fetch 1,mem_remote_key_status
+	branch remote_car_key_is_release,blank
+remote_car_key_is_press:
+	bpatch patch1e_3,mem_patch1e
+	arg 0,rega
+	call ui_led_on_global
+remote_car_attack_key_press:
+	copy queue,pdata
+	beq 4,remote_car_send_attack_key4_press
+	beq 5,remote_car_send_attack_key5_press
+	beq 6,remote_car_send_fire_key6_press
+//	fetch 1,mem_remote_car_config_check_way
+//	rtneq CAR_REMOTE_CHECK_ROCKER
+remote_car_motor_key_press:
+	call remote_car_device_layout_select
+	beq CONTROL_F_B_TEN,remote_car_single_motor_key_is_press
+	beq CONTROL_L_R_TEN,remote_car_double_motor_key_press
+	beq CONTROL_L_R_LR,remote_car_single_motor_key_is_press
+	rtn
+	
+remote_car_single_motor_key_is_press:
+	copy queue,pdata
+	beq 0,remote_car_send_motor1_key0_press
+	beq 1,remote_car_send_motor1_key1_press
+	beq 2,remote_car_send_motor2_key2_press
+	beq 3,remote_car_send_motor2_key3_press
+	rtn
+	
+remote_car_double_motor_key_press:
+	copy queue,pdata
+	beq 0,remote_car_send_double_motor_key0_press
+	beq 1,remote_car_send_double_motor_key1_press
+	beq 2,remote_car_send_double_motor_key2_press
+	beq 3,remote_car_send_double_motor_key3_press
+	rtn
+
+remote_car_key_is_release:
+	bpatch patch1e_4,mem_patch1e
+	arg 0,rega
+	call ui_led_off_global
+remote_car_attack_key_release:
+	copy queue,pdata
+	beq 4,remote_car_send_attack_key4_rel
+	beq 5,remote_car_send_attack_key5_rel
+//	fetch 1,mem_remote_car_config_check_way
+//	rtneq CAR_REMOTE_CHECK_ROCKER
+remote_car_motor_key_release:
+	call remote_car_device_layout_select
+	beq CONTROL_F_B_TEN,remote_car_single_motor_key_rel
+	beq CONTROL_L_R_TEN,remote_car_double_motor_key_rel
+	beq CONTROL_L_R_LR,remote_car_single_motor_key_rel
+	rtn
+
+remote_car_device_layout_select:
+	fetch 1,mem_remote_car_config_layout
+	fetcht 1,mem_remote_car_config_key_map
+	ior temp,pdata
+	rtn
+
+//cross key,control front-back motor layout
+remote_car_send_motor1_key0_press:	//front
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor1_payload
+	branch remote_car_send_key
+remote_car_send_motor1_key1_press:	//back
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor1_payload
+	branch remote_car_send_key
+remote_car_send_motor2_key2_press:	//left
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_motor2_key3_press:	//right
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+
+//cross key,control left-right motor layout
+remote_car_send_double_motor_key0_press:	//front
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_double_motor_key1_press:	//back
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_double_motor_key2_press:	//left
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_double_motor_key3_press:	//right
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+	
+//attack motor control
+remote_car_send_attack_key4_press:	//attack left
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor3_payload
+	branch remote_car_send_key
+remote_car_send_attack_key5_press:	//attack right
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor3_payload
+	branch remote_car_send_key
+
+remote_car_send_fire_key6_press:
+	jam 0x01,mem_remote_car_24g_fire_send_payload
+	branch remote_car_send_attack
+
+remote_car_single_motor_key_rel:
+	copy queue,pdata
+	beq 0,remote_car_send_motor1_key0_rel
+	beq 1,remote_car_send_motor1_key1_rel
+	beq 2,remote_car_send_motor2_key2_rel
+	beq 3,remote_car_send_motor2_key3_rel
+	rtn
+
+remote_car_double_motor_key_rel:
+	copy queue,pdata
+	beq 0,remote_car_send_double_motor_key0_rel
+	beq 1,remote_car_send_double_motor_key1_rel
+	beq 2,remote_car_send_double_motor_key2_rel
+	beq 3,remote_car_send_double_motor_key3_rel
+	rtn
+
+remote_car_send_motor1_key0_rel:
+remote_car_send_motor1_key1_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor1_payload
+	branch remote_car_send_key
+remote_car_send_motor2_key2_rel:
+remote_car_send_motor2_key3_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+	
+remote_car_send_double_motor_key0_rel:
+remote_car_send_double_motor_key1_rel:
+remote_car_send_double_motor_key2_rel:
+remote_car_send_double_motor_key3_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor1_payload
+	jam MOTOR_STOP,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+	
+remote_car_send_attack_key4_rel:
+remote_car_send_attack_key5_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor3_payload
+	branch remote_car_send_key
+
+remote_car_send_key:
+	arg mem_remote_car_24g_motor_packet,rega
+	branch queue_push
+remote_car_send_attack:
+	arg mem_remote_car_24g_fire_packet,rega
+	branch queue_push
+
+remote_car_g24_package_data:
+	fetch 1,mem_remote_car_24g_pair_success_flag
+	beq WORK_PAIRED,remote_car_g24_send_empty
+	arg mem_remote_car_24g_tx_temp,rega
+	call queue_pop
+	nbranch remote_car_moto_data,user
+remote_car_g24_package_data_continue:
+	arg mem_remote_car_24g_tx_temp,contr
+	ifetch 1,contr
+	copy pdata,rega
+	arg mem_remote_car_24g_tx_temp+1,regb
+	//rega: length
+	//regb: tx buffer
+	rtn
+	
+remote_car_g24_send_empty:
+	jam 0,mem_remote_car_24g_pair_success_flag
+	enable user
+	arg 1,rega
+	arg mem_remote_car_empty_packet,regb
+	rtn
+	
+remote_car_moto_data:
+	fetch 1,mem_remote_car_24g_tx_temp+3	//cmd
+	beq CAR_CMD_L_R_MOTOR_CONTROL,remote_car_moto_data_next
+	beq CAR_CMD_F_B_MOTOR_CONTROL,remote_car_moto_data_next
+	rtn
+remote_car_moto_data_next:
+	fetch 1,mem_remote_car_24g_tx_temp+6	//data moto1
+	nbranch remote_car_moto_data_enable_user,blank
+	fetch 1,mem_remote_car_24g_tx_temp+8	//data moto2
+	nbranch remote_car_moto_data_enable_user,blank
+	fetch 1,mem_remote_car_24g_tx_temp+10	//data moto3
+	nbranch remote_car_moto_data_enable_user,blank
+	rtn
+remote_car_moto_data_enable_user:
+	enable user
+	branch remote_car_g24_package_data_continue
+
+
+
+
+
+
+
+shutter_init:
+	rtn wake	
+	hfetch 1,core_gpio_sel1
+	and_into 0xfc,pdata
+	hstore 1,core_gpio_sel1
+	setarg shutter_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+
+	setarg shutter_process_lpm_before
+	store 2,mem_cb_before_lpm
+	
+	setarg app_enter_hibernate
+	store 2,mem_cb_discovry_timeout
+	
+	setarg shutter_process_idle
+	store 2,mem_cb_idle_process
+		
+	setarg shutter_process_bb_event 
+	store 2,mem_cb_bb_event_process
+
+	setarg shutter_le_scale_lpm_lock
+	store 2,mem_cb_check_wakelock
+	
+	setarg ble_shutter_receive_data
+	store 2,mem_cb_att_write
+
+	setarg shutter_le_bb_event_timer
+	store 2,mem_cb_event_timer
+
+	setarg shutter_key_change
+	store 2,mem_cb_shutter_keycan
+
+	setarg shutter_soft_swtich_power_on
+	store 2,mem_shutter_soft_switch_poweron_callback_function
+	setarg shutter_soft_swtich_power_off
+	store 2,mem_shutter_soft_switch_poweroff_callback_function
+
+	call le_modified_name
+	call shutter_load_bluetooth_config_by_user_config
+	call shutter_init_bluetooth_config
+	call shutter_init_param	
+	call keyscan_key_init
+	call shutter_load_buffer_config_form_DataRom
+	call queue_init
+	call ui_led_init_global
+	call shutter_load_bluetooth_config
+	call shutter_load_bluetooth_config_by_eeprom
+	
+	bpatch patch1e_5,mem_patch1e
+	call classic_shutter_load_reconn_info
+	fetch 1, mem_shutter_hard_soft_switch_case
+	beq HARD_SWITCH, shutter_hart_swtich_power_on
+	fetch 1,mem_shutter_soft_switch_button_gpio
+	store 1,mem_ui_button_gpio
+	branch ui_soft_swtich_init
+
+/**************hard swtich function**************/
+shutter_hart_swtich_power_on:
+	jam UI_BUTTON_GPIO_DISABLE,mem_ui_button_gpio
+	jam SS_STATE_POWER_ON,mem_shutter_soft_switch_power_state
+	branch shutter_start_reconnect
+/****************************/
+
+/**************lpm lock callback function**************/
+shutter_le_scale_lpm_lock:
+	fetch 1,mem_shutter_soft_switch_power_state
+	beq SS_STATE_POWER_OFF,app_get_lpm_wake_lock
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	nbranch app_get_lpm_wake_lock,blank
+	branch app_put_lpm_wake_lock
+/****************************/
+
+/**************c512bt event callback function*************/
+shutter_process_bb_event:
+	copy regc,pdata
+/**************classic shutter event*****************/
+	beq BT_EVT_BB_CONNECTED,classic_shutter_process_baseband_connect
+	beq BT_EVT_BB_DISCONNECTED,classic_shutter_process_baseband_disconnect
+	beq BT_EVT_RECONN_FAILED,classic_shutter_process_reconnect_failed
+	beq BT_EVT_SETUP_COMPLETE,classic_shutter_process_setup_complete
+	beq BT_EVT_HID_CONNECTED,classic_shutter_process_hid_connect
+	beq BT_EVT_HID_DISCONNECTED,classic_shutter_process_hid_disconnect
+	beq BT_EVT_HID_HANDSHAKE,classic_shutter_process_hid_handshake
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,classic_shutter_process_reconnect_page_timeout
+	beq BT_EVT_VIRTUAL_CABLE_UNPLUG,classic_shutter_process_virtual_cable_unplug
+	beq BT_EVT_REMOTE_UNSNIFF,classic_shutter_process_remote_unsniff
+	beq BT_EVT_STORE_NVRAM,classic_shutter_process_store_reconnect_information
+/**************ble shutter event*****************/
+	beq BT_EVT_LE_CONNECTED,ble_shutter_process_baseband_connect
+	beq BT_EVT_LE_DISCONNECTED,ble_shutter_process_baseband_disconnect
+	beq BT_EVT_LE_RECONNECT_COMPLETE,ble_shutter_process_reconnect_complete
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,ble_shutter_process_parse_connect_parameter_update_response
+/***************soft swtich event****************/
+	beq BT_EVT_BUTTON_LONG_PRESSED,shutter_process_soft_swtich_button_long_press
+	beq BT_EVT_BUTTON_DOWN,shutter_process_soft_swtich_button_down
+	beq BT_EVT_BUTTON_UP,shutter_process_soft_swtich_button_up
+	rtn
+/****************************/
+
+
+/******************classic shutter event**********************/
+classic_shutter_process_baseband_connect:
+	jam 0,mem_classic_shutter_hid_disconn_count
+	jam 0,mem_classic_shutter_cable_unplug_conut	
+	rtn
+
+
+classic_shutter_process_baseband_disconnect:
+	call classic_shutter_disconnect_clear_flag
+	branch classic_shutter_process_reconnect_failed
+
+classic_shutter_disconnect_clear_flag:
+	jam APP_HANDSHAKE_NULL,mem_app_handshake_flag
+	jam 0,mem_hid_handshake_timer_count
+	jam 0,mem_unsniff2sniff_timer_count
+	jam 0,mem_classic_shutter_cable_unplug_conut
+	jam 0,mem_classic_shutter_hid_disconn_count
+	branch queue_init
+
+
+classic_shutter_process_reconnect_failed:
+	call app_disconn_reason_clear
+	branch shutter_start_bluetooth_discovery
+
+
+classic_shutter_process_setup_complete:
+	call shutter_stop_bluetooth_discovery
+	branch app_led_stop_blink
+
+
+classic_shutter_process_hid_connect:
+	setarg HID_HANDSHAKE_TIMEOUT
+	store 1,mem_hid_handshake_timer_count
+	rtn	
+
+
+classic_shutter_process_hid_disconnect:
+	jam 0,mem_classic_shutter_cable_unplug_conut	
+	setarg FLAG_SHUTTER_HID_DISCONN_TIMEOUT
+	store 1,mem_classic_shutter_hid_disconn_count
+	rtn
+
+
+classic_shutter_process_hid_handshake:
+	fetch 1,mem_app_handshake_flag
+	rtneq APP_HANDSHAKE_DONE
+	jam APP_HANDSHAKE_DONE,mem_app_handshake_flag
+	call app_lpm_mult_enable
+	call app_store_reconn_info
+	call shutter_stop_bluetooth_discovery
+	call app_led_off
+	branch app_bt_enter_sniff
+
+
+classic_shutter_process_reconnect_page_timeout:
+	branch classic_shutter_process_reconnect_failed
+
+
+classic_shutter_process_virtual_cable_unplug:
+	setarg FLAG_SHUTTER_CABLE_UNPLUG_TIMEOUT
+	store 1,mem_classic_shutter_cable_unplug_conut
+	rtn
+
+
+classic_shutter_process_remote_unsniff:
+	branch app_start_auto_sniff
+
+
+/***************classic shutter store reconn info***********************/
+classic_shutter_process_store_reconnect_information:
+	arg NVRAM_EEPROM_OFFSET,regb
+	fetch 1,mem_nv_data_number
+	mul32 pdata,34,temp
+	fetch 2,mem_nv_data_ptr
+	copy pdata,rega
+	branch iicd_write_eep_data
+
+classic_shutter_load_reconn_info:
+	arg NVRAM_EEPROM_OFFSET,regb
+	fetch 1,mem_shutter_bluetooth_type
+	rtnbit0 CLASSIC_SHUTTER
+	fetch 1,mem_nv_data_number
+	rtn blank
+	mul32 pdata,34,temp
+	fetch 2,mem_nv_data_ptr
+	copy pdata,rega
+	branch iicd_read_eep_data
+/**************************************/
+
+/******************ble shutter event**********************/
+ble_shutter_process_baseband_connect:
+	call shutter_stop_bluetooth_discovery
+	setarg 0
+	store 2,mem_ble_shutter_reconn_timer
+	branch app_led_off
+
+
+ble_shutter_process_baseband_disconnect:
+	call queue_init
+	jam 0,mem_ble_shutter_enable_notify
+	branch shutter_start_reconnect
+
+
+ble_shutter_process_reconnect_complete:
+	call queue_init
+	jam 1,mem_ble_shutter_enable_notify
+	fetch 8,mem_ble_shutter_interval_min
+	store 8,mem_le_interval_min
+	call app_lpm_mult_enable
+	branch le_l2cap_tx_update_req
+
+
+ble_shutter_process_parse_connect_parameter_update_response:
+	fetch 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	rtneq BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_ACCEPTED
+	fetch 8,mem_ble_shutter_interval_min_new
+	rtn blank
+	store 8,mem_le_interval_min
+	branch le_l2cap_tx_update_req
+/**************************************/
+
+/******************soft swtich event**********************/
+shutter_process_soft_swtich_button_long_press:
+	branch ui_soft_switch_botton_long_press
+
+shutter_process_soft_swtich_button_down:
+	fetch 1,mem_shutter_hard_soft_switch_case
+	rtneq HARD_SWITCH
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	call shutter_store_currenct_led_state
+	branch app_led_on
+	
+shutter_store_currenct_led_state:
+	jam 1,mem_shutter_soft_swtich_botton_down
+	arg 11,loopcnt
+	arg mem_shutter_soft_swtich_led_struct_temp,contw
+	arg mem_shutter_led_struct_app_led,contr
+	branch memcpy
+	
+shutter_process_soft_swtich_button_up:
+	fetch 1,mem_shutter_hard_soft_switch_case
+	rtneq HARD_SWITCH
+	fetch 1,mem_shutter_soft_switch_power_state
+	beq SS_STATE_POWER_ON,shutter_load_currenct_led_state
+	branch ui_soft_switch_botton_up
+
+shutter_load_currenct_led_state:
+	fetch 1,mem_shutter_soft_swtich_botton_down
+	rtnne 1
+	jam 0,mem_shutter_soft_swtich_botton_down
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,app_led_off
+	bbit1 UI_STATE_BLE_CONNECTED,app_led_off
+	arg 11,loopcnt
+	arg mem_shutter_soft_swtich_led_struct_temp,contr
+	arg mem_shutter_led_struct_app_led,contw
+	branch memcpy
+	
+/**************************************/
+
+
+shutter_le_bb_event_timer:
+/**************shutter check sleep timer**********************/
+	call shutter_check_sleep_timer
+/************************************/
+/**************soft reset power off timer**********************/
+	call shutter_check_power_off_timer
+/************************************/
+/**************classic shutter timer**********************/
+	call classic_shutter_check_unplug_timer
+	call classic_shutter_hid_handshake_timer
+	call classic_shutter_hid_disconn_timer
+/************************************/
+/**************ble shutter timer**********************/
+	branch ble_shutter_reconn_timer
+/************************************/
+
+/**************shutter check sleep timer**********************/
+shutter_check_sleep_timer:
+	arg mem_shutter_sleep_timer,regc
+	arg shutter_sleep_timeout,regb
+	branch timer_single_step_2B
+shutter_sleep_timeout:
+	jam SS_STATE_POWER_OFF,mem_shutter_soft_switch_power_state
+	call app_led_off
+	call shutter_disconnect_current_connection
+	branch shutter_wait_power_off
+
+/**************soft reset power off timer**********************/
+shutter_check_power_off_timer:
+	arg mem_shutter_power_off_timer,regc
+	arg shutter_check_power_off_timeout,regb
+	branch timer_single_step
+
+shutter_check_power_off_timeout:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,shutter_wait_power_off
+	bbit1 UI_STATE_BT_CONNECTED,shutter_wait_power_off
+	fetch 1,mem_shutter_led_struct_app_led_type
+	beq UI_LED_STATE_BLINK_START,shutter_wait_power_off
+	beq UI_LED_STATE_BLINK_LIGHTING,shutter_wait_power_off
+	beq UI_LED_STATE_BLINK_DARKING,shutter_wait_power_off
+	branch app_enter_hibernate
+/************************************/
+
+/**************classic shutter timer**********************/
+classic_shutter_check_unplug_timer:
+	arg mem_classic_shutter_cable_unplug_conut,regc
+	arg classic_shutter_unplug_timeout,regb
+	branch timer_single_step
+	
+classic_shutter_unplug_timeout:
+	fetch 1,mem_CONTROL_tasks
+	set1  L2CAP_DISCONNECT_INTERRUPT, pdata
+	set1  L2CAP_DISCONNECT_CONTROL, pdata
+	store 1,mem_CONTROL_tasks	
+	rtn
+
+classic_shutter_hid_handshake_timer:
+	arg mem_hid_handshake_timer_count,regc
+	arg classic_shutter_process_hid_handshake,regb
+	branch timer_single_step
+
+classic_shutter_hid_disconn_timer:
+	arg mem_classic_shutter_hid_disconn_count,regc
+	arg app_bt_disconnect,regb
+	branch timer_single_step
+
+/************************************/
+
+/**************ble shutter timer**********************/
+ble_shutter_reconn_timer:
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	arg mem_ble_shutter_reconn_timer,regc
+	arg shutter_start_bluetooth_discovery,regb
+	branch timer_single_step_2B
+/************************************/
+
+shutter_process_idle:
+	call shutter_send_data_to_master
+	branch keyscan_key_process
+
+
+shutter_process_lpm_before:
+	branch keyscan_process_lpm_before
+
+shutter_le_before_hibernate:
+	call gpio_set_before_lpm_common
+	branch shutter_process_lpm_before
+
+//////////////////////////////////////////////////////////////////////////////////////////
+
+
+/****************shutter bluetooth control**********************/
+shutter_stop_bluetooth_discovery:
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_stop_bluetooth_discovery
+	bbit1 BLE_SHUTTER,ble_shutter_stop_bluetooth_discovery
+	rtn
+
+ble_shutter_stop_bluetooth_discovery:
+	fetch 2,mem_ble_shutter_connect_timeout
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	branch app_ble_stop_adv
+	
+classic_shutter_stop_bluetooth_discovery:
+	fetch 2,mem_classic_shutter_connect_timeout
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	branch app_bt_stop_discovery
+
+shutter_start_bluetooth_discovery:
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_start_discovery
+	bbit1 BLE_SHUTTER,ble_shutter_start_discovery
+	rtn
+	
+classic_shutter_start_discovery:
+	fetch 2,mem_classic_shutter_discovery_timeout,
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	branch app_bt_start_discovery_short
+
+ble_shutter_start_discovery:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	fetch 2,mem_ble_shutter_discovery_timeout
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	fetch 2,mem_ble_shutter_discovery_adv_interval
+	call shutter_ble_adv_interval_set
+	call app_led_start_blink
+	fetch 4,mem_ble_shutter_discovery_blink_on_time
+	store 4,mem_shutter_led_struct_app_led_on_time
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_ADV
+	branch app_ble_start_adv
+
+
+shutter_start_reconnect:
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_start_reconnect
+	bbit1 BLE_SHUTTER,ble_shutter_start_reconnect
+	rtn
+
+classic_shutter_start_reconnect:
+	call app_check_reconn_target
+	branch shutter_start_bluetooth_discovery,blank
+	call app_led_on	
+	call app_bt_stop_discovery
+	branch app_bt_start_reconnect	
+
+ble_shutter_start_reconnect:
+	fetch 2,mem_ble_shutter_reconn_timer
+	fetcht 2,mem_ble_shutter_reconn_timeout
+	storet 2,mem_ble_shutter_reconn_timer
+	nrtn blank
+	fetch 2,mem_ble_shutter_reconn_dav_interval
+	call shutter_ble_adv_interval_set
+	call app_led_start_blink
+	fetch 4,mem_ble_shutter_reconn_blink_on_time
+	store 4,mem_shutter_led_struct_app_led_on_time
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_ADV
+	branch app_ble_start_adv
+
+//pdata:adv interval value
+shutter_ble_adv_interval_set:
+	store 2,mem_lpm_interval
+	increase -4,pdata
+	store 2,mem_le_adv_interval
+	rtn
+
+
+shutter_disconnect_current_connection:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	branch shutter_stop_bluetooth_discovery
+/**************************************/
+
+/******************classic shutter load reconnect*********************/
+app_check_reconn_target:
+	fetch 1,mem_nv_data_number
+	copy pdata,loopcnt
+	fetch 2,mem_nv_data_ptr
+	copy pdata,rega
+app_check_reconn_target_loop:
+	ifetch 2,rega
+	beq 0,found_reconn_device
+	increase NV_DATA_LEN,rega
+	loop app_check_reconn_target_loop
+	branch enable_blank
+
+found_reconn_device:
+	ifetch 6,contr
+	store 6,mem_hci_plap
+	increase 10,contr
+	arg mem_link_key,contw
+	call  memcpy16
+	call check_link_key_load
+	branch disable_blank
+	
+/**************************************/
+
+/////////////////////////////////////////////////////////////////////////
+//output:if user is enable,mean,can send data
+shutter_check_data_enable:
+	call disable_user
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,shutter_check_bt_data_enable
+	bbit1 UI_STATE_BLE_CONNECTED,shutter_check_ble_data_enable
+	rtn
+
+shutter_check_bt_data_enable:
+	fetch 1,mem_hid_interrupt_state
+	rtnne 0x3f	
+	branch enable_user
+
+shutter_check_ble_data_enable:
+	fetch 1,mem_ble_shutter_enable_notify
+	rtn blank
+	branch enable_user
+/////////////////////////////////////////////////////////////////////////
+
+/////////////////////////////////////////////////////////////////////////
+//output:if user is enable,mean,bluetooth disconnect
+shutter_check_bluetooth_conn:
+	call disable_user
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BT_CONNECTED
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	branch enable_user
+/////////////////////////////////////////////////////////////////////////
+
+/////////////////////////////////////////////////////////////////////////
+shutter_change_bluetooth_status_bt_disconn:
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_change_bluetooth_status_bt_disconn
+	bbit1 BLE_SHUTTER,ble_shutter_change_bluetooth_status_bt_disconn
+	rtn
+	
+classic_shutter_change_bluetooth_status_bt_disconn:
+	fetch 1,mem_scan_mode
+	rtnne 0x03
+	branch shutter_start_reconnect
+	
+ble_shutter_change_bluetooth_status_bt_disconn:
+	branch shutter_start_reconnect
+
+/////////////////////////////////////////////////////////////////////////
+shutter_check_send_data:
+	disable user2
+	fetch 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+
+	call shutter_check_bluetooth_conn
+	branch shutter_change_bluetooth_status_bt_disconn,user
+	
+	call shutter_check_data_enable
+	nrtn user
+	enable user2
+	rtn
+
+//queue = key index
+//rega =1 press, =0 release
+shutter_key_change:
+	call shutter_check_send_data
+	nrtn user2
+	deposit rega
+	branch shutter_key_release,blank
+shutter_key_press:
+	call app_led_on
+	arg mem_key0_press,regc
+	branch push_queue_press_or_release
+
+shutter_key_release:
+	call app_led_off
+	arg mem_key0_release,regc
+
+push_queue_press_or_release:
+	arg MAX_QUEUE_NUM,pdata
+	imul32 queue,pdata
+	iadd regc,regc
+	
+//input:regc the address that want push to queue buffer
+push_buffer_in_queue:
+	ifetch 1,regc
+	rtn blank
+	call queue_push_one_byte
+	increase 1,regc
+	branch push_buffer_in_queue
+
+
+shutter_send_data_to_master:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,pop_queue_to_ble_data
+	bbit1 UI_STATE_BT_CONNECTED,pop_queue_to_classic_data
+	rtn
+
+pop_queue_to_ble_data:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	call queue_pop_one_byte
+	nrtn user
+	pincrease -1
+	mul32 pdata,SHUTTER_BLE_DATA_BUFFER,pdata
+	arg mem_ble_data_buffer1,temp
+	iadd temp,contr
+le_send_notify_from_list:
+	ifetch 1,contr	//length 
+	copy pdata,rega
+	ifetcht 2,contr	//handle
+	call store_contr
+	call le_att_malloc_tx_notify
+	copy rega,loopcnt
+	call get_contr
+	branch memcpy
+
+
+pop_queue_to_classic_data:
+	call l2cap_malloc_is_fifo_nearly_full
+	nrtn blank
+	call queue_pop_one_byte
+	nrtn user
+	pincrease -1
+	mul32 pdata,SHUTTER_CLASSIC_DATA_BUFFER,pdata
+	arg mem_classic_data_buffer1,temp
+	iadd temp,contr
+	ifetch 5,contr
+	store 5,mem_classic_data_buffer
+classic_send_hid_data:
+	fetch 1,mem_classic_data_buffer
+	copy pdata,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0xa1
+	istore 1,contw
+	fetch 4,mem_classic_data_buffer + 1
+	istore 9,contw
+	rtn
+
+///////////queue function////////////
+//input:pdata is data that want push
+queue_push_one_byte:
+	store 1,mem_pdatatemp
+	arg mem_pdatatemp,rega
+	branch queue_push
+
+queue_pop_one_byte:
+	arg mem_pdatatemp,rega
+	call queue_pop
+	nrtn user
+	fetch 1,mem_pdatatemp
+	rtn
+
+///////////queue function ending////////////
+ble_shutter_receive_data:
+	fetch 2,mem_le_att_handle
+	beq GATT_KEYBOARD_WRITE_HANDLE,ble_shutter_process_reconnect_complete
+	rtn
+
+shutter_init_param:
+	setarg 0x02
+	store 1,mem_shutter_power_off_timeout
+/////////////ble connect interval//////////////
+	setarg 0x00200008
+	store 4,mem_ble_shutter_interval_min		//set min interval is 10ms,set max interval is 40ms
+	setarg 0x012c0005
+	istore 4,contw
+///////////////////////////////////////
+//////////////////MTU/////////////
+	jam 0x17,mem_le_local_mtu
+///////////////////////////////////////
+////////////////justwork/////////
+	setarg 0x1b
+ 	store 2,mem_le_pairing_handle
+ 	call le_set_config_fixed_ltk
+	call le_set_fixed_ltk
+	call le_set_justwork
+	branch le_set_config_read_authentication
+///////////////////////////////////////
+
+shutter_load_buffer_config_form_DataRom:
+///////load data Rom/////////
+	arg BLE_KEY_VALUE_LIST_SIZE,loopcnt
+	arg mem_ble_data_buffer1,contw
+	arg BLE_SHUTTER_KEY_VALUE_LIST,contr
+	call memcpy_fast
+	arg BT_KEY_VALUE_LIST_SIZE,loopcnt
+	arg mem_classic_data_buffer1,contw
+	arg CLASSIC_SHUTTER_KEY_VALUE_LIST,contr
+	branch memcpy_fast	
+
+
+shutter_load_ble_gatt_form_DataRom:
+	arg BLE_GATT_LIST_SIZE,loopcnt
+	arg BLE_SHUTTER_GATT_LIST,contr
+	branch memcpy_fast
+
+
+shutter_load_bt_sdp_form_DataRom:
+	arg BT_SDP_LIST_SIZE,loopcnt
+	arg CLASSIC_SHUTTER_SDP_LIST,contr
+	branch memcpy_fast
+	
+
+///////////////////////////////gpio config////////////////////////////////////
+shutter_init_bluetooth_config:
+	call shutter_check_load_config_flag
+	nrtn user
+	fetch 1,mem_shutter_config_select_gpio1
+	call shutter_init_bluetooth_config_gpio_input
+	fetch 1,mem_shutter_config_select_gpio2
+	call shutter_init_bluetooth_config_gpio_input
+	fetch 1,mem_shutter_config_select_gpio3
+	branch shutter_init_bluetooth_config_gpio_input
+	
+shutter_init_bluetooth_config_gpio_input:
+	rtn blank
+	or pdata,0x80,temp
+	branch gpio_config_input_nowake
+	
+
+shutter_load_bluetooth_config:
+	call shutter_check_load_config_flag
+	nrtn user
+	call shutter_load_bluetooth_config_label
+	branch shutter_load_bluetooth_config_by_otp
+
+shutter_load_bluetooth_config_label:
+	arg 0,rega
+	fetch 1,mem_shutter_config_select_gpio1
+	call shutter_load_bluetooth_config_read_gpio_input
+	nsetflag blank,0,rega
+	fetch 1,mem_shutter_config_select_gpio2
+	call shutter_load_bluetooth_config_read_gpio_input
+	nsetflag blank,1,rega
+	fetch 1,mem_shutter_config_select_gpio3
+	call shutter_load_bluetooth_config_read_gpio_input
+	nsetflag blank,2,rega
+	copy rega,pdata
+	store 1,mem_shutter_config_label
+	fetch 1,mem_shutter_config_size
+	imul32 rega,pdata
+	fetcht 2,mem_shutter_config_otp_base_address		//base address
+	iadd temp,pdata
+	store 2,mem_shutter_config_otp_addr
+	rtn
+
+shutter_load_bluetooth_config_read_gpio_input:
+	rtn blank
+	or pdata,0x80,temp
+	call gpio_get_bit
+	nbranch enable_blank,true
+	branch disable_blank
+	
+
+shutter_check_load_config_flag:
+	call disable_user
+	fetch 1,mem_shutter_config_user_size
+	nrtn blank
+	fetch 1,mem_shutter_config_enable
+	rtn blank
+	branch enable_user
+
+
+shutter_load_bluetooth_config_by_otp:
+	call otp_enable_chgpump
+	fetch 2,mem_shutter_config_otp_addr
+	arg mem_shutter_config_data_temp,rega
+	fetcht 1,mem_shutter_config_size
+	call otpd_read_data
+	call otp_disable_chgpump
+shutter_load_bluetooth_config_store_name:
+	fetch 1,mem_shutter_config_data_temp
+	copy pdata,loopcnt
+	store 1,mem_le_name_len
+	call memcpy_fast
+	fetch 1,mem_shutter_config_data_temp
+	copy pdata,loopcnt
+	store 1,mem_local_name_length
+	call memcpy_fast
+	ifetch 1,contr
+	store 1,mem_shutter_key_num
+	ifetch 1,contr
+	store 1,mem_shutter_hard_soft_switch_case
+	rtn
+
+
+shutter_load_bluetooth_config_by_eeprom:
+	fetch 1,mem_shutter_bluetooth_type
+	rtnbit0 CLASSIC_SHUTTER
+	arg 3,temp
+	fetch 2,mem_shutter_config_eeprom_offset_addr
+	copy pdata,regb
+	arg mem_shutter_config_eeprom_start_flag,rega
+	call iicd_read_eep_data
+	fetcht 2,mem_shutter_config_eeprom_start_flag
+	setarg SHUTTER_EEPROM_CONFIG_CRC
+	isub temp,null
+	nrtn zero
+	fetch 1,mem_shutter_config_user_size
+	rtn blank
+	copy pdata,temp
+	fetch 2,mem_shutter_config_eeprom_offset_addr
+	add pdata,3,regb
+	arg mem_shutter_config_data_temp,rega
+	call iicd_read_eep_data
+	branch shutter_store_config
+
+shutter_load_bluetooth_config_by_user_config:
+	fetch 2,mem_shutter_config_user_otp_address
+	rtn blank
+	call otp_enable_chgpump
+	arg 1,temp
+	arg mem_shutter_config_user_size,rega
+	call otpd_read_data
+	
+	fetch 1,mem_shutter_config_user_size
+	rtn blank
+	
+	fetch 2,mem_shutter_config_user_otp_address
+	pincrease 1
+	arg mem_shutter_config_data_temp,rega
+	fetcht 1,mem_shutter_config_user_size
+	call otpd_read_data
+	call otp_disable_chgpump
+shutter_store_config:
+	call shutter_load_bluetooth_config_store_name
+shutter_load_bluetooth_config_custom:
+	ifetch 2,contr
+	rtn blank
+	copy pdata,contw
+	ifetcht 1,contr
+	copy temp,loopcnt
+	call memcpy
+	branch shutter_load_bluetooth_config_custom
+///////////////////////////////////////////////////////////////////
+
+//////////////////////////random mac address//////////////////////////////
+shutter_random_mac_addr:
+	fetch 1,mem_shutter_bluetooth_type
+	rtnbit0 CLASSIC_SHUTTER
+	fetch 2,mem_classic_shutter_random_mac_offset_addr
+	copy pdata,regb
+	arg 4,temp
+	arg mem_shutter_random_mac_data_temp,rega
+	call iicd_read_eep_data
+	fetch 1,mem_shutter_random_mac_data_temp
+	bne 1,shutter_write_random_mac_addr_to_eeprom
+shutter_write_random_mac_addr_to_eeprom:
+	setarg 1
+	store 1,mem_shutter_random_mac_data_temp
+	force 3,loopcnt
+	call generate_random_loop
+	fetch 2,mem_classic_shutter_random_mac_offset_addr
+	copy pdata,regb
+	arg 4,temp
+	arg mem_shutter_random_mac_data_temp,rega
+	call iicd_write_eep_data
+shutter_write_random_mac_addr:
+	fetch 3,mem_shutter_random_mac_data_temp + 1
+	store 3,mem_lap
+	store 3,mem_le_lap
+	rtn
+	
+/////////////////////////////////////////////////////////////////
+shutter_soft_swtich_power_on:
+	branch shutter_start_reconnect
+
+
+shutter_soft_swtich_power_off:
+	arg 0,rega
+	arg mem_shutter_power_off_led_style,regc
+	call ui_led_set_style_global
+	call shutter_disconnect_current_connection
+shutter_wait_power_off:
+	fetch 1,mem_shutter_power_off_timeout
+	store 1,mem_shutter_power_off_timer
+	rtn
+	
+
+/*************soft swtich ui config*********************/
+ui_soft_swtich_init:
+	setarg SS_STATE_POWER_UP
+	call ui_soft_swtich_init_power_on_time
+	jam UI_BUTTON_STATE_UP,mem_ui_button_last_state
+	call ui_button_init
+	call ui_button_polling
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	branch app_enter_hibernate
+
+ui_soft_swtich_init_power_on_time:
+	fetcht 2,mem_power_param_ptr
+	istore 1,temp		//init power state 
+	ifetch 1,contw		//power on time
+	store 1,mem_ui_button_timeout
+	rtn
+
+
+ui_soft_switch_botton_up:
+	fetch 2,mem_power_param_ptr
+	ifetch 1,pdata
+	rtnne SS_STATE_POWER_UP
+	branch app_enter_hibernate
+
+
+ui_soft_switch_botton_long_press:
+	fetcht 2,mem_power_param_ptr
+	ifetch 1,temp
+	beq SS_STATE_POWER_ON,ui_soft_switch_power_off
+ui_soft_switch_power_on:
+	setarg SS_STATE_POWER_ON
+	fetcht 2,mem_power_param_ptr
+	istore 1,temp		//init power state 
+	add temp,SS_POWER_OFF_TIME,contr
+	ifetch 1,contr
+	istore 1,mem_ui_button_timeout
+	ifetch 2,contr
+	branch callback_func
+
+ui_soft_switch_power_off:
+	setarg SS_STATE_POWER_OFF
+	call ui_soft_swtich_init_power_on_time
+	add temp,SS_POWER_OFF_CB,contr
+	ifetch 2,contr
+	branch app_enter_hibernate,blank		//no call back function , just enter hibernate
+	branch callback_func
+	
+/*************soft swtich ui config ending*********************/
+
+
+/*************unkown function*********************/
+shutter_byteswap:
+	store 6,mem_tmp_buffer
+	fetch 1,mem_tmp_buffer
+	store 1,mem_tmp_buffer+11
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+10
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+9
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+8
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+7
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+6
+	fetch 6,mem_tmp_buffer+6
+	rtn
+
+shutter_random_addr_by_otp:
+	call load_adc_init
+	fetch 1,mem_1v_adc_io_data
+	store 1,mem_le_lap
+	fetch 1,mem_5v_adc_hvin_data
+	istore 1,contw
+	fetch 1,mem_3v_adc_vinlpm_data
+	istore 1,contw
+	fetch 3,mem_le_lap
+	store 3,mem_lap
+	rtn
+
+
+
+//iic read function
+//function name:sim_iic_read_eep_data
+//input:
+//temp:the length that simulation iic want to read eeprom data
+//rega:the memmory point that simulation iic read data store
+//regb:the eeprom address offset
+//mark_eeprom_size:select 02 or other
+//output:nc
+sim_iic_read_eep_data:
+	fetch 2,mem_eeprom_base
+	iadd regb,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	copy temp,regb
+	
+	call sim_iic_start
+	setarg 0xa0
+	call sim_iic_send_byte
+	fetch 1,mem_addr_mi
+	call sim_iic_send_byte
+	bmark1 mark_eeprom_size,sim_iic_read_eep_data_2k
+	fetch 1,mem_addr_mi + 1
+	call sim_iic_send_byte
+sim_iic_read_eep_data_2k:
+	call sim_iic_stop
+
+	call sim_iic_start
+	setarg 0xa1
+	call sim_iic_send_byte
+
+sim_iic_read_eep_data_loop:
+	call sim_iic_read_byte
+	istore 1,rega
+	increase 1,rega
+	increase -1,regb
+	nbranch sim_iic_read_eep_data_loop,zero
+	branch sim_iic_stop
+
+
+//iic write data function
+//function name:sim_iic_write_eep_data
+//input:
+//temp:the length that simulation iic want to write eeprom data
+//rega:the memmory point that simulation iic write data read
+//regb:the eeprom address
+//mark_eeprom_size:select 02 or other
+//output:nc
+sim_iic_write_eep_data:
+	byteswap regb,pdata
+	store 2,mem_addr_mi
+	copy temp,regb
+
+	call sim_iic_start
+	setarg 0xa0
+	call sim_iic_send_byte
+
+	fetch 1,mem_addr_mi
+	call sim_iic_send_byte
+	bmark1 mark_eeprom_size,sim_iic_write_eep_data_loop
+	fetch 1,mem_addr_mi + 1
+	call sim_iic_send_byte
+sim_iic_write_eep_data_loop:
+	ifetch 1,rega
+	call sim_iic_send_byte
+	increase 1,rega
+	increase -1,regb
+	nbranch sim_iic_write_eep_data_loop,zero
+	branch sim_iic_stop
+//	bmark1 mark_eeprom_size
+
+//use reg:pdata,contr,contw,loopcnt
+sim_iic_wait_ack:
+	arg 10,loopcnt
+	call sim_iic_release_sda
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+sim_iic_wait_ack_loop:
+	call sim_iic_read_sda_level
+	branch sim_iic_scl_output_low,blank	//scl = 0
+	loop sim_iic_wait_ack_loop
+	branch sim_iic_scl_output_low		//scl = 0	
+
+
+//use reg:pdata,contr,contw,rega,queue
+sim_iic_ack_slave:
+	call sim_iic_scl_output_low		//scl = 0	
+	call sim_iic_sda_output_low		//sda = 0
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	branch sim_iic_scl_output_low	//scl = 0	
+
+
+//output:pdata receive byte data
+//use reg:pdata,contr,contw,loopcnt,regc,rega
+sim_iic_read_byte:
+	arg 8,loopcnt
+	arg 0,regc
+	call sim_iic_release_sda
+sim_iic_read_byte_loop:
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	lshift regc,regc	
+	call sim_iic_read_sda_level
+	iadd regc,regc
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_low		//scl = 0	
+	loop sim_iic_read_byte_loop
+	call sim_iic_ack_slave
+	copy regc,pdata
+	rtn
+
+//input:pdata send byte data
+//use reg:pdata,contr,contw,loopcnt,regc,rega
+sim_iic_send_byte:
+	arg 8,loopcnt
+	copy pdata,regc
+	call sim_iic_scl_output_low		//scl = 0	
+sim_iic_send_byte_loop:
+	isolate1 7,regc
+	call sim_iic_sda_output_high,true	//sda = 1
+	ncall sim_iic_sda_output_low,true	//sda = 0
+	lshift regc,regc
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_low		//scl = 0	
+	call sim_iic_delay				//delay 2.5us
+	loop sim_iic_send_byte_loop
+	branch sim_iic_wait_ack
+
+
+//use reg:pdata,contr,contw,rega
+sim_iic_start:
+	call sim_iic_sda_output_high	//sda = 1
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_sda_output_low		//sda = 0
+	call sim_iic_delay				//delay 2.5us
+	branch sim_iic_scl_output_low		//scl = 0
+
+
+//use reg:pdata,contr,contw,rega
+sim_iic_stop:
+	call sim_iic_sda_output_low		//sda = 0
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_sda_output_high	//sda = 1
+	branch sim_iic_delay				//delay 2.5us
+
+
+//scl = 1
+sim_iic_scl_output_high:
+	enable user
+	fetch 1,SIM_IIC_SCL_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//scl = 0
+sim_iic_scl_output_low:
+	disable user
+	fetch 1,SIM_IIC_SCL_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//sda = 1
+sim_iic_sda_output_high:
+	enable user
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//sda = 0
+sim_iic_sda_output_low:
+	disable user
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//input:pdata the gpio number
+//input:user flag, if enable user,config gpio output high level; if disable user, config gpio output low level
+//use reg:pdata,contr,contw,queue,rega
+sim_iic_config_gpio:
+	and pdata,0x07,queue
+	rshift3 pdata,pdata
+	arg core_gpio_oe0,temp
+	iadd temp,temp
+	ifetch 1,temp
+	qset1 pdata
+	istore 1,temp
+	increase 4,temp
+	ifetch 1,temp
+	qsetflag user,pdata
+	istore 1,temp
+	rtn
+
+
+sim_iic_release_sda:
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	and pdata,0x07,queue
+	rshift3 pdata,pdata
+	arg core_gpio_oe0,temp
+	iadd temp,temp
+	ifetch 1,temp
+	qset0 pdata
+	istore 1,temp
+	rtn	
+
+//get sda level
+//output:if sda high level ,pdata is 1;if sda low level ,pdata is 0
+//use reg:pdata,contr,contw,queue,rega,temp
+sim_iic_read_sda_level:
+	nop 4
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	and pdata,0x07,queue
+	rshift3 pdata,pdata
+	arg core_gpio_in,temp
+	iadd temp,temp
+	setarg 0
+	ifetcht 1,temp
+	qisolate1 temp
+	setflag true,0,pdata
+	rtn	
+
+//delay 2.5us
+sim_iic_delay:
+//	nop 1
+	rtn
+
+/**********************************/
+
+
+
+usb_isr:
+	bpatch patch1e_6,mem_patch1e
+	hfetch 1,core_usb_status
+	isolate1 7,pdata
+	call usb_init,true
+	call usb_nak_state_judge
+	hfetch 1,core_usb_status
+	store 1,mem_usb_status
+	hfetch 1,core_usb_fifo_empty
+	store 1,mem_usb_fifo_empty
+	hstore 1,core_usb_fifo_empty
+	pinvert
+	fetcht 1,mem_usb_tx_wait
+	iand temp,pdata
+	store 1,mem_usb_tx_wait
+	jam 0xe0,core_usb_status
+	fetch 1,mem_usb_fifo_empty
+	compare 0x1,pdata,0x1
+	call usb0_fifo_empty,true
+	fetch 1,mem_usb_status	
+	compare 0x1,pdata,0x1  
+	call usb_status1,true
+	call usb_tx
+	branch usb_nak_state
+
+usb_init:
+	bpatch patch1e_7,mem_patch1e
+	call usb_init_param
+	jam 0x00,core_usb_config
+	nop 10000
+	jam 0xc0,core_usb_trig
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_USB,pdata
+	hstore 2,core_clkoff
+	jam 0x3c,core_usb_config
+	jam 0xff,core_usb_status
+	jam 0xff,core_usb_fifo_empty
+	jam 0,core_usb_addr
+	jam DEV_DEFAULT,mem_usb0_state
+	setarg mem_usb_clear_mem_end
+	arg mem_usb_clear_mem_start,contw
+	isub contw,loopcnt
+	branch clear_mem
+
+usb_offline_check_init:
+	fetcht 1,mem_usb_offline_check_gpio
+	branch gpio_config_input
+usb_offline_state:
+	fetch 1,mem_usb_device_enumeration_endflag
+	rtn blank
+	fetcht 1,mem_usb_offline_check_gpio
+	call gpio_get_bit
+	branch usb_init,true
+	rtn
+
+
+usb_nak_state:
+	arg TIMER_NAK,queue
+	call timer_check
+	nrtn blank
+	fetch 1 ,mem_usb_wakestate_onetime_flag
+	nrtn blank
+	fetch 1,mem_usb_device_enumeration_endflag
+	ncall usb_mac_wakeup_judge,blank
+	rtn
+
+usb_mem_devicedesc_init:
+	arg mem_devicedesc,contw
+	setsect 0,0x11212
+	setsect 1,0x8000
+	setsect 2,0x0
+	setsect 3,0x10000
+	istore 9,contw
+	setsect 0,0x22412
+	setsect 1,0x8604
+	setsect 2,0x1000
+	setsect 3,0x8
+	istore 9,contw
+	setsect 0,0x1
+	istore 1,contw
+	rtn
+	
+usb_init_param:
+	jam 2,mem_usb0_state
+	setarg 0x0
+	store 1,mem_remain
+	store 2,mem_usb_zero_packet
+	pincrease 1
+	store 2,mem_usb_ones_packet
+	pincrease 1
+	store 2,mem_usb_two_packet
+	setarg HID_KBDATA_ADDR
+	store 2,mem_hidreportdesc_kb
+	setarg HID_MSDATA_ADDR
+	store 2,mem_hidreportdesc_m
+	arg mem_confdesc,contw
+	arg HID_CONFDATA_ADDR,contr
+	call memcpy64
+	fetch 1,mem_usb_tx_interval
+	ncall usb_tx_interval_config,blank
+	branch usb_mem_devicedesc_init
+	
+usb_tx_interval_config:
+	store 1,mem_confdesc+34
+	store 1,mem_confdesc+59
+	rtn
+usb_nak_state_judge:
+	hfetch 1,core_usb_status
+	bbit1 USB_STATUS_NAK,usb_nak_state_timer_init
+	rtn
+	
+usb_nak_state_timer_init:
+	call usb0_attached_state_judge
+	call timer_reinit
+	setarg TIMER_NAK_DELAY
+	arg TIMER_NAK,queue
+	branch timer_init
+	
+usb0_attached_state_judge:
+	fetch 1,mem_usb_state
+	bne USB_CONNECTED,usb_clear_halt_dispose
+	jam 0,mem_usb_wakestate_onetime_flag
+	jam 0,mem_usb_mac_wakeup_trig
+	rtn
+usb_clear_halt_dispose:
+	fetch 1,mem_usb_clear_halt
+	rtn blank
+	jam 0,mem_usb_clear_halt
+	jam USB_CONNECTED,mem_usb_state
+	jam 1,mem_usb_device_enumeration_endflag
+	rtn
+    	
+usb0_fifo_empty:
+	jam 0x1,core_usb_fifo_empty
+	branch usb0_tx
+
+usb_rx_no_data:
+	fetch 1,mem_usb_status
+	bbit1 USB_STATUS_SETUP,usb_class_type
+	rtn
+
+usb_rx_read:
+	hfetch 1,core_usb_ep
+	istore 1,contw
+	loop usb_rx_read
+	rtn
+
+usb_status1:
+	bpatch patch1f_0,mem_patch1f
+	jam 0x11,core_usb_status
+	hfetch 1,core_usb_ep_len
+	store 1,mem_usb_read_len
+	copy pdata,loopcnt
+	branch usb_rx_no_data,blank
+	arg mem_usb_setup,contw
+	call usb_rx_read
+	fetch 1,mem_usb_read_len
+	sub pdata,7,null
+	rtn positive
+usb_class_type:
+	fetch 1,mem_usb_setup_bmRequestType
+	and_into 0x80,pdata
+	beq IN_DEVICE,usb_in_device
+	beq OUT_DEVICE,usb_out_device
+	branch assert
+
+usb_in_device:
+	fetch 1,mem_usb_setup_bmRequestType
+	rshift4 pdata,pdata
+	rshift pdata,pdata
+	and_into 0x03,pdata
+	beq STANDARD_REQ,usb_in_standard_req
+	beq CLASS_REQ,usb_in_class_req
+	beq MANUFACTURER_REQ,usb_in_manufacturer_req
+	branch assert
+
+usb_out_device:
+	fetch 1,mem_usb_setup_bmRequestType
+	rshift4 pdata,pdata
+	rshift pdata,pdata
+	and_into 0x03,pdata
+	beq STANDARD_REQ,usb_out_standard_req
+	beq CLASS_REQ,usb_out_class_req	
+	beq MANUFACTURER_REQ,usb_out_manufacturer_req
+	branch assert
+
+usb_in_standard_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq GET_CONFIGURATION,usb0_request_get_configuration
+	beq GET_DESCRIPTOR,usb0_request_get_descriptor
+	beq GET_INTERFACE,usb0_request_get_interface
+	beq GET_STATUS,usb0_request_get_status
+	branch usb0_force_stall
+
+usb_in_class_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq GET_IDLE,usb_get_idle
+	beq GET_REPORT,usb_get_report
+	beq GET_PROTOCOL,usb_get_protocol_req
+	branch usb0_force_stall
+
+usb_in_manufacturer_req:
+	branch usb0_force_stall
+
+usb_out_standard_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq CLEAR_FEATURE,usb0_request_clear_feature
+	beq SET_FEATURE,usb0_request_set_feature
+	beq SET_ADDRESS,usb0_request_set_address
+	beq SET_CONFIGURATION,usb0_request_set_configuration
+	beq SET_INTERFACE,usb0_request_set_interface
+	beq SET_DESCRIPTOR,usb0_force_stall
+	branch usb0_force_stall
+
+usb_out_class_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq SET_IDLE,usb_set_idle
+	beq SET_REPORT,usb_set_report
+	beq SET_PROTOCOL,usb_set_protocol_req
+	branch usb0_force_stall
+
+usb_out_manufacturer_req:
+	branch usb0_force_stall
+
+usb0_force_stall:
+	hfetch 1,core_usb_stall
+	set1 0,pdata
+	hstore 1,core_usb_stall
+	branch usb0_reply_zerolen
+	
+usb0_reply_zerolen:
+	jam 0x40,core_usb_clear
+	rtn
+
+usb0_request_get_configuration:
+	fetch 1,mem_usb_setup_bmRequestType
+	bne IN_DEVICE,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 1,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb0_state
+	beq DEV_CONFIGURED,usb0_request_get_cfg_dev_cfg
+	beq DEV_ADDRESS,usb0_request_get_cfg_dev_addr
+	branch usb0_force_stall
+//Return current config : 1
+usb0_request_get_cfg_dev_cfg:
+	arg 1,regb
+	branch usb_send_ones_packet
+//Config do not work, return default config : 0
+usb0_request_get_cfg_dev_addr:
+	arg 1,regb
+	branch usb_send_zero_packet
+
+usb0_request_get_descriptor:
+	bpatch patch1f_1,mem_patch1f
+	set0 mark_isstr,mark
+	fetch 1,mem_usb_setup_bValueH
+	beq DSC_DEVICE,dsc_device_info
+	beq DSC_CONFIG,dsc_config_info	
+	beq DSC_STRING,dsc_string_info
+	beq DSC_HID,dsc_hid_info
+	beq DSC_HID_REPORT,dsc_hid_report_info
+	branch usb0_force_stall
+
+dsc_hid_info:
+	jam 0,mem_usb_get_protocol_flag
+	fetch 1,mem_usb_setup_wIndex
+	beq 0,dsc_hid_info_interface0
+	beq 1,dsc_hid_info_interface1
+	branch usb0_force_stall
+//class_descriptor hid_descriptor--keyboard 
+dsc_hid_info_interface0:	
+	arg mem_confdesc+19,rega
+	ifetch 1,rega
+	iforce regb
+	branch usb0_respond
+//class_descriptor hid_descriptor--mouse 
+dsc_hid_info_interface1:	
+	arg mem_confdesc+44,rega
+	ifetch 1,rega
+	iforce regb
+	branch usb0_respond
+
+dsc_device_info:
+//input : pdata : data poniter 
+//input : temp: data len
+//sets the data pointer and len to correct descriptor
+	fetch 1,mem_usb_set_high_addr_flag
+	ncall usb_set_high_addr,blank
+	setarg mem_devicedesc
+	fetcht 1,mem_devicedesc
+dsc_info_set_data_len:
+	store 2,mem_dsc_info_data_pointer
+	storet 1,mem_dsc_info_len
+	fetch 1,mem_usb_setup_bLength
+	isub temp,null
+	nbranch dsc_info_set_current_data_len,positive
+dsc_info_set_initial_data_len:
+	fetch 1,mem_dsc_info_len
+dsc_info_set_data_size_completed:	
+	iforce regb
+	fetch 2,mem_dsc_info_data_pointer
+	add pdata,1,pdata
+	iforce rega
+	branch usb0_respond
+dsc_info_set_current_data_len:
+	fetch 1,mem_usb_setup_bLength
+	branch dsc_info_set_data_size_completed
+
+usb_set_high_addr:
+	hfetch 1,core_usb_addr
+	ncall usb0_set_addr,blank
+	jam 0,mem_usb_set_high_addr_flag
+	rtn
+usb0_set_addr:
+	hfetch 1,core_usb_addr
+   	set1 7,pdata
+	hstore 1,core_usb_addr
+	rtn
+
+dsc_config_info:
+	setarg mem_confdesc
+	fetcht 1,mem_confdesc
+	branch dsc_info_set_data_len
+
+dsc_string_info:
+	fetch 1,mem_usb_setup_bValue
+	sub pdata,3,null
+	nbranch usb0_force_stall,positive
+	fetch 1,mem_usb_setup_bValue
+	arg mem_string0,rega
+	beq 0,usb0_respond_length	
+	set1 mark_isstr,mark
+	arg mem_string1,rega
+	beq 1,usb0_respond_length
+	arg mem_string2,rega
+	beq 2,usb0_respond_length
+	arg mem_string3,rega
+	beq 3,usb0_respond_length
+	rtn
+
+dsc_hid_report_info:
+	fetch 2,mem_usb_setup_wIndex
+	beq 1,dsc_hid_report_info0
+	fetch 2,mem_hidreportdesc_kb
+	copy pdata,rega
+//	arg mem_hidreportdesc_kb,rega
+	branch usb0_respond_length
+dsc_hid_report_info0:
+	jam 1,mem_usb_device_enumeration_endflag
+	jam USB_GOT_REPORT_REQ,mem_usb_state
+	fetch 2,mem_hidreportdesc_m
+	copy pdata,rega
+//	arg mem_hidreportdesc_m,rega
+	branch usb0_respond_length
+
+
+usb0_request_get_interface:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall		
+	fetch 1,mem_usb_setup_bmRequestType
+	bne IN_INTERFACE,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 1,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	arg 1,regb
+	branch usb_send_zero_packet
+
+
+usb0_request_get_status:
+	fetch 1,mem_usb0_state
+	beq DEV_DEFAULT,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 2,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	beq IN_DEVICE,usb0_get_status_in_device
+	beq IN_INTERFACE,usb0_get_status_in_interface
+	beq IN_ENDPOINT,usb0_get_status_in_endpoint
+	branch usb0_force_stall
+
+usb0_get_status_in_device:
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	arg 2,regb
+	fetch 1,mem_usb_remote_wakeup
+	beq 0x01,usb_send_two_packet
+//regb:length
+usb_send_zero_packet:
+	arg mem_usb_zero_packet,rega
+	branch usb0_respond
+usb_send_ones_packet:
+	arg mem_usb_ones_packet,rega
+	branch usb0_respond
+usb_send_two_packet:
+	arg mem_usb_two_packet,rega
+	branch usb0_respond
+
+usb0_get_status_in_interface:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall
+	arg 2,regb
+	branch usb_send_zero_packet
+
+usb0_get_status_in_endpoint:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	beq IN_EP1,usb0_get_status_in_ep_in_ep1
+	beq IN_EP2,usb0_get_status_in_ep_in_ep2
+	beq IN_EP3,usb0_get_status_in_ep_in_ep3
+	and_into 0x7f,pdata
+	beq 0x00,usb0_get_status_in_ep_in_ep0
+	branch usb0_force_stall
+	
+usb0_get_status_in_ep_in_ep0:
+	fetch 1,mem_usb_ep0_stall_status
+usb0_get_status_in_ep_in_ack:
+	arg 2,regb
+	beq 1,usb_send_ones_packet
+	branch usb_send_zero_packet
+usb0_get_status_in_ep_in_ep1:
+	fetch 1,mem_usb_ep1_stall_status
+	branch usb0_get_status_in_ep_in_ack
+usb0_get_status_in_ep_in_ep2:
+	fetch 1,mem_usb_ep2_stall_status
+	branch usb0_get_status_in_ep_in_ack
+usb0_get_status_in_ep_in_ep3:
+	fetch 1,mem_usb_ep3_stall_status
+	branch usb0_get_status_in_ep_in_ack
+
+usb_get_idle:
+	jam 1,mem_usb_idle_flag
+	arg mem_usb_idle_rate,rega
+	arg 1,regb
+	branch usb0_respond
+
+usb_get_report:
+	fetch 2,mem_usb_setup_bValue
+	arg PC_GET_REPORT,temp
+	isub temp,null
+	nbranch usb0_force_stall,zero
+	set0 mark_isstr,mark
+usb_get_report_dispose:	
+	fetch 1,mem_usb0_data_ready_report
+	nbranch usb_get_report_data_success,blank
+	jam PC_GET_NONDATA,mem_usb0_get_report_data
+usb_get_report_send_data:
+	fetch 1,mem_usb_setup_bLength
+	iforce regb
+	arg mem_usb0_get_report_data,rega
+	call usb0_respond
+usb_get_report_data_release:	
+	arg mem_usb0_get_report_data,contw
+	arg 8,loopcnt
+	branch memset0
+usb_get_report_data_success:
+	jam 0,mem_usb0_data_ready_report
+	jam PC_GET_DATA,mem_usb0_get_report_data
+	branch usb_get_report_send_data
+
+usb_get_protocol_req:
+	fetch 1,mem_usb_setup_bLength
+	bne 1,usb0_force_stall
+	jam 1,mem_usb_get_protocol_flag
+	arg 1,regb //length
+	fetch 1,mem_usb_set_protocol_value
+	beq 0,usb_get_report_protocol
+	beq 1,usb_get_boot_protocol
+	branch usb_send_zero_packet
+usb_get_report_protocol:
+	branch usb_send_ones_packet
+usb_get_boot_protocol:
+	branch usb_send_zero_packet
+
+
+
+//in device
+usb0_request_clear_feature:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	beq OUT_DEVICE,usb0_request_clear_feature_out_device
+	beq OUT_INTERFACE,usb0_request_clear_feature_out_interface
+	beq OUT_ENDPOINT,usb0_request_clear_feature_out_endpoint
+	branch usb0_force_stall
+
+usb0_request_clear_feature_out_device:
+	fetch 1,mem_usb_setup_bValue
+	bne DEVICE_REMOTE_WAKEUP,usb0_force_stall
+	hfetch 1,core_usb_config
+	set0 7,pdata
+	hstore 1,core_usb_config
+	jam 0,mem_usb_remote_wakeup
+	jam 1,mem_usb_clear_remote_wakeup
+	branch usb0_reply_zerolen
+
+usb0_request_clear_feature_out_interface:
+	branch usb0_force_stall
+
+usb0_request_clear_feature_out_endpoint:
+	fetch 1,mem_usb_setup_bValue
+	bne ENDPOINT_HALT,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	beq IN_EP1,usb0_force_stall_ep1_in_off
+	beq IN_EP2,usb0_force_stall_ep2_in_off
+	beq IN_EP3,usb0_force_stall_ep3_in_off
+	and_into 0x7f,pdata
+	beq 0x00,usb0_force_stall_ep0_in_off
+	branch usb0_force_stall
+
+usb0_force_stall_ep0_in_off:
+	jam 0,mem_usb_ep0_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep1_in_off:
+	jam 0,mem_usb_ep1_stall_status
+usb0_force_stall_ep1_in_off_reply:	
+	jam 1,mem_usb_clear_halt
+	branch usb0_reply_zerolen
+usb0_force_stall_ep2_in_off:
+	jam 0,mem_usb_ep2_stall_status
+	branch usb0_force_stall_ep1_in_off_reply
+usb0_force_stall_ep3_in_off:
+	jam 0,mem_usb_ep3_stall_status
+	branch usb0_force_stall_ep1_in_off_reply
+
+
+usb0_request_set_feature:
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	beq OUT_DEVICE,usb0_request_set_feature_out_device
+	beq OUT_INTERFACE,usb0_request_set_feature_out_interface
+	beq OUT_ENDPOINT,usb0_request_set_feature_out_endpoint
+	branch usb0_force_stall
+
+usb0_request_set_feature_out_device:
+	fetch 1,mem_usb_setup_bValue
+	bne DEVICE_REMOTE_WAKEUP,usb0_force_stall
+	hfetch 1,core_usb_config
+	set1 7,pdata
+	hstore 1,core_usb_config
+	jam 1,mem_usb_remote_wakeup
+	jam USB_SLEEP,mem_usb_state
+	jam 0,mem_usb_tx_win_enable
+	call usb0_reply_zerolen
+usb_wakeup_timer_reinit:
+	call timer_reinit
+	setarg TIMER_WAKEUP_DELAY
+	arg TIMER_WAKEUP,queue
+	branch timer_init
+	
+usb0_request_set_feature_out_interface:
+	branch usb0_force_stall
+
+usb0_request_set_feature_out_endpoint:
+	fetch 1,mem_usb_setup_bValue
+	bne ENDPOINT_HALT,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	beq IN_EP1,usb0_force_stall_ep1_in_on
+	beq IN_EP2,usb0_force_stall_ep2_in_on
+	beq IN_EP3,usb0_force_stall_ep3_in_on
+	and_into 0x7f,pdata
+	beq 0x00,usb0_force_stall_ep0_in_on
+	branch usb0_force_stall
+
+usb0_force_stall_ep0_in_on:
+	jam 1,mem_usb_ep0_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep1_in_on:
+	jam 1,mem_usb_ep1_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep2_in_on:
+	jam 1,mem_usb_ep2_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep3_in_on:
+	jam 1,mem_usb_ep3_stall_status
+	branch usb0_reply_zerolen
+
+
+usb0_request_set_address:
+	fetch 1,mem_usb_setup_bmRequestType
+	bne OUT_DEVICE,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	and_into 0x80,pdata
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb_usb0_state_set_dev_addr
+usb_usb0_state_set_dev_default:	
+	jam DEV_DEFAULT,mem_usb0_state
+usb0_request_set_wait_address:
+	fetch 1,mem_usb_setup_bValue
+	hstore 1,core_usb_addr
+	call usb0_reply_zerolen
+	jam 1,mem_usb_set_high_addr_flag
+	rtn
+usb_usb0_state_set_dev_addr:
+	jam DEV_ADDRESS,mem_usb0_state
+	branch usb0_request_set_wait_address
+
+
+usb0_request_set_configuration:
+	fetch 1,mem_usb0_state
+	beq DEV_DEFAULT,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	bne OUT_DEVICE,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	sub pdata,USB_MAX_NUM_CFG,null
+	nbranch usb0_force_stall,positive
+	fetch 1,mem_usb0_state
+	beq DEV_ADDRESS,usb0_request_set_cfg_addr_state
+	beq DEV_CONFIGURED,usb0_request_set_cfg_cfg_state
+	branch usb0_force_stall
+ // This software only supports config = 0,1
+usb0_request_set_cfg_addr_state:
+usb0_request_set_cfg_cfg_state:
+	fetch 1,mem_usb_setup_bValue	//1:Configured state   0:Address state
+	beq 0,usb0_request_set_cfg_stay_addr_state
+	jam DEV_CONFIGURED,mem_usb0_state
+	branch usb0_reply_zerolen
+usb0_request_set_cfg_stay_addr_state:
+	jam DEV_ADDRESS,mem_usb0_state
+	branch usb0_reply_zerolen
+
+
+usb0_request_set_interface:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall		
+	fetch 1,mem_usb_setup_bmRequestType
+	bne OUT_INTERFACE,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	branch usb0_reply_zerolen
+
+
+usb_set_idle:
+	jam 1,mem_usb_idle_flag
+	fetch 1,mem_usb_setup_bValueH
+	store 1,mem_usb_idle_rate
+	fetch 1,mem_usb_setup_wIndex
+	sub pdata,1,null
+	call usb_clear_remote_wakeup_set0,zero
+	fetch 1,mem_usb_state
+	bne USB_RESUME,usb0_reply_zerolen
+	jam USB_CONNECTED,mem_usb_state
+	call usb0_reply_zerolen
+	nop 30000
+	nop 30000
+	rtn
+usb_clear_remote_wakeup_set0:
+	jam 1,mem_usb_device_enumeration_endflag
+	jam 0,mem_usb_clear_remote_wakeup
+	jam USB_RESUME,mem_usb_state
+	rtn
+
+
+usb_set_report:
+	jam 1,mem_usb0_get_set_report
+	call usb_set_report_resume_judge
+	fetch 2,mem_usb_setup_bValue
+	store 2,mem_usb_setup_bValue_temp
+	fetch 1,mem_usb_setup_bLength	//max 0x40
+	iforce loopcnt
+	arg mem_usb0_setup,contr
+	arg mem_usb0_set_report_data,contw
+	call memcpy
+	branch usb0_reply_zerolen
+	
+usb_set_report_resume_judge:
+	fetch 2,mem_usb_setup_bValue
+	arg PC_SET_REPORT_bValue,temp
+	isub temp,null
+	nrtn zero
+	fetch 2,mem_usb_setup_wIndex
+	arg PC_SET_REPORT_wIndex,temp
+	isub temp,null
+	nrtn zero
+	fetch 2,mem_usb_setup_bLength
+	arg PC_SET_REPORT_bLength,temp
+	isub temp,null
+	nrtn zero
+	jam 1,mem_usb_tx_win_enable
+	rtn
+
+
+usb_set_protocol_req:
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	beq BOOT_PROTOCOL,usb_set_boot_protocol
+	beq REPORT_PROTOCOL,usb_set_report_protocol
+	branch usb0_force_stall
+usb_set_boot_protocol:
+	jam 0,mem_usb_set_protocol_status
+	jam 1,mem_usb_set_protocol_value
+	branch usb0_reply_zerolen
+usb_set_report_protocol:
+	jam 1,mem_usb_tx_mac_enable
+	jam 1,mem_usb_set_protocol_status
+	jam 0,mem_usb_set_protocol_value
+	branch usb0_reply_zerolen
+
+
+usb0_respond_length:
+	ifetch 1,rega
+	iforce regb
+	increase 1,rega
+//rega=*buff,reb=size	
+usb0_respond:
+	bpatch patch1f_2,mem_patch1f
+	bmark0 mark_isstr,usb0_respond0
+	add regb,1,pdata
+	lshift pdata,pdata
+	hstore 1,core_usb_dfifo0 
+	jam 3,core_usb_dfifo0
+	fetch 1,mem_usb_setup_bLength
+	increase -2,pdata
+	rshift pdata,pdata
+	store 1,mem_usb_setup_bLength
+	beq 0,usb_no_respond_data
+usb0_respond0:
+	fetch 2,mem_usb_setup_bLength
+	isub regb,null
+	branch usb0_respond1,positive
+	copy pdata,regb	
+usb0_respond1:
+	deposit rega
+	store 2,mem_bufptr
+	deposit regb
+	store 1,mem_remain
+	branch usb0_tx
+
+usb_no_respond_data:
+	arg 0,queue
+	branch usb_trig
+
+//mem_bufptr=*buff,mem_remain=size,loopcnt=i,rega=len
+usb0_tx:
+	bpatch patch1f_3,mem_patch1f
+	fetch 1,mem_remain
+	rtn blank
+	copy pdata,loopcnt
+	sub pdata,EP0_PACKET_SIZE,null
+	branch usb0_tx_info,positive
+	arg EP0_PACKET_SIZE,loopcnt	
+usb0_tx_info:
+	fetch 1,mem_remain
+	isub loopcnt,pdata
+	store 1,mem_remain//mem_remain -= len
+	fetch 2,mem_bufptr
+	copy pdata,contr	
+usb0_tx0:
+	ifetch 1,contr
+	hstore 1,core_usb_dfifo0
+	bmark0 mark_isstr,usb0_tx1
+	jam 0,core_usb_dfifo0
+usb0_tx1:
+	loop usb0_tx0
+	copy contr,pdata
+	store 2,mem_bufptr//mem_bufptr += len
+	arg 0,queue
+	call usb_trig
+	fetch 1,mem_remain
+	nrtn blank
+	fetch 1,mem_usb_state
+	rtnne USB_GOT_REPORT_REQ
+	jam USB_CONNECTED,mem_usb_state
+	rtn
+
+
+usb_tx_ep1:
+	arg core_usb_dfifo1,rega
+	arg 1,queue
+usb_tx_loop:
+	ifetch 1,contr
+	istore 1,rega
+	loop usb_tx_loop
+usb_trig:
+	setarg 0
+	qset1 pdata
+	hstore 1,core_usb_trig
+	fetcht 1,mem_usb_tx_wait
+	ior temp,pdata
+	store 1,mem_usb_tx_wait
+	rtn
+
+usb_tx_ep2:
+	arg 2,queue
+	arg core_usb_dfifo2,rega
+	branch usb_tx_loop
+
+usb_tx:
+	bpatch patch1f_4,mem_patch1f
+	fetch 1,mem_usb_tx_enable
+	rtn blank
+	fetch 1,mem_usb_tx_wait
+	nbranch usb_inwake_state_tx_dispose,blank
+	fetch 1,mem_usb_device_enumeration_endflag
+	branch usb_tx_fifo_release,blank
+	fetch 1,mem_usb_state
+	beq USB_SLEEP,usb_windows_wakeup
+	bne USB_CONNECTED,usb_tx_fifo_release
+	fetch 1,mem_usb_clear_remote_wakeup
+	nbranch usb_tx_fifo_release,blank
+	call usb_tx_data_ep1
+	branch usb_tx_data_ep2
+
+usb_tx_data_ep1:
+	fetch 1,mem_usb_tx_enable
+	rtnbit0 1
+	fetch 1,mem_usb_tx_wait
+	rtnbit1 1
+	fetch 1,mem_usb_tx_enable
+	set0 1,pdata
+	store 1,mem_usb_tx_enable
+	fetch 1,mem_usb_ep1_data
+	rtn blank
+	beq USB_EP1_KB,usb_tx_kb_normal_data
+	branch assert
+
+usb_tx_data_ep2:
+	fetch 1,mem_usb_tx_enable
+	rtnbit0 2
+	fetch 1,mem_usb_tx_wait
+	rtnbit1 2
+	fetch 1,mem_usb_tx_enable
+	set0 2,pdata
+	store 1,mem_usb_tx_enable
+	fetch 1,mem_usb_ep2_data
+	rtn blank
+	beq USB_EP2_MS,usb_tx_ms_data
+	beq USB_EP2_MULTIKEY,usb_tx_kb_multikey_data
+	branch assert
+
+usb_tx_fifo_release:
+	//clear mem_usb_mouse_data/mem_usb_kb_data/mem_usb_kb_multikey
+	arg mem_usb_mouse_data,contw
+	arg 6,loopcnt
+	branch memset0
+	
+usb_tx_ms_data:
+	fetch 1,mem_usb_idle_flag
+	fetcht 1,mem_usb_get_protocol_flag
+	iand temp,pdata
+	branch usb_tx_ms_data_normal_mode,blank
+	fetcht 1,mem_usb_set_protocol_status
+	iadd temp,pdata
+	beq MAC_BOOT_MODE,usb_tx_ms_data_mac_boot_mode
+	branch usb_tx_ms_data_normal_mode
+
+usb_tx_ms_data_mac_boot_mode:
+	jam 0,mem_usb_ep2_data
+usb_tx_ms_data_mac_boot_regroup:
+	fetch 1,mem_usb_mouse_data+1	//key
+	beq R_KEY,usb_tx_mac_boot_ms_regroup_r_or_lrkey
+	beq LR_KEY,usb_tx_mac_boot_ms_regroup_r_or_lrkey
+	fetch 1,mem_usb_mouse_data+1	//key
+	store 1,mem_usb_mouse_data
+	fetch 1,mem_usb_mouse_data+2	//x low
+	istore 1,contw
+	fetch 1,mem_usb_mouse_data+4	//y low
+	istore 1,contw
+	fetch 1,mem_usb_mouse_data+6	//wheel
+	istore 1,contw
+	arg 4,loopcnt
+	arg mem_usb_mouse_data,contr
+	branch usb_tx_ep2
+	
+usb_tx_ms_data_normal_mode:
+	jam 0,mem_usb_ep2_data
+usb_tx_mac_boot_ms_regroup_r_or_lrkey:	
+	arg 8,loopcnt		
+	arg mem_usb_mouse_data,contr
+	branch usb_tx_ep2
+
+usb_tx_kb_multikey_data:
+	jam 0,mem_usb_ep2_data
+	arg 3,loopcnt
+	arg mem_usb_kb_multikey,contr
+	branch usb_tx_ep2
+
+usb_tx_kb_normal_data:
+	jam 0,mem_usb_ep1_data
+	arg 8,loopcnt
+	arg mem_usb_kb_data,contr
+	branch usb_tx_ep1
+
+usb_inwake_state_tx_dispose:
+	fetch 1,mem_usb_state
+	beq USB_SLEEP,usb_clear_tx_wait
+	beq USB_CONNECTED, usb_mac_wakeup_trig
+	rtn
+usb_clear_tx_wait:
+	jam 0,mem_usb_tx_wait
+	rtn	
+usb_mac_wakeup_trig:
+	hfetch 1,core_usb_config
+	set1 7,pdata
+	hstore 1,core_usb_config
+	jam 1,mem_usb_mac_wakeup_trig
+	rtn
+
+usb_mac_wakeup_judge:
+	fetch 1,mem_usb_state
+	rtneq USB_SLEEP
+	beq USB_CONNECTED,usb_mac_wakeup
+	rtn
+usb_mac_wakeup:
+	fetch 1,mem_usb_mac_wakeup_trig
+	rtn blank
+	jam 1,mem_usb_wakestate_onetime_flag
+	branch usb_wakeup
+
+usb_windows_wakeup:
+	arg TIMER_WAKEUP,queue
+	call timer_check
+	nrtn blank
+usb_wakeup:
+	hfetch 1,core_usb_config
+	rtnbit0 7	//endpoint wakeup enable
+	jam 0xfc,core_usb_config
+	nop 30000
+	jam 0x3c,core_usb_config
+	rtn
+
+
+
+
+
+
+hci_rx_h4:
+	bpatch patch1f_5,mem_patch1f
+	fetch 1,mem_hci_cmd
+	nrtn blank
+hci_rx_h4_1:
+	call hci_h4_parse_packet
+	ncall h4_rx_discard_packet,user
+	rtn
+	
+hci_h4_parse_packet:
+	bpatch patch1f_6,mem_patch1f
+	copy contru,rega
+	arg 4,temp
+	ifetch 1,contru //type
+	beq HCI_H4_TYPE_CMD,hci_h4_parse_packet_wait_len
+	increase 1,temp //acl packet has 2 bytes for length
+	beq HCI_H4_TYPE_ACL,hci_h4_parse_packet_wait_len
+	copy contru,pdata
+	hstore 2,core_uart_rrptr
+	rtn
+hci_h4_parse_packet_wait_len:
+	hfetch 2,core_uart_rxitems
+	isub temp,null
+	nbranch hci_h4_parse_packet_wait_len,positive // while(rxitems >= 4 or 5);
+	//Make sure length has been recieved.
+	disable user
+	copy rega,contru
+	call h4_get_rx_payload_len
+	iadd temp,temp
+hci_h4_parse_packet_wait:
+	hfetch 2,core_uart_rxitems
+	isub temp,null
+	nbranch hci_h4_parse_packet_wait,positive//wait for rcv a complete packet
+	copy rega,contru
+	ifetch 1,contru //HCI packet type
+	beq  HCI_H4_TYPE_CMD,process_hci_cmd
+	branch assert
+	
+h4_rx_discard_packet:
+	bpatch patch1f_7,mem_patch1f
+	hfetch 2,core_uart_rrptr
+	iforce contru
+	call h4_get_rx_payload_len
+	iadd contru,contru
+	deposit contru
+	hstore 2,core_uart_rrptr
+	rtn
+
+
+//contru = pointer to packet start
+//return len via pdata
+h4_get_rx_payload_len:
+	ifetch 1,contru
+	increase 2,contru
+	beq HCI_H4_TYPE_ACL,h4_get_rx_payload_len_acl
+	ifetch 1,contru
+	rtn
+h4_get_rx_payload_len_acl:
+	ifetch 2,contru
+	rtn
+
+h4_get_tx_ptr:
+	hfetch 2,core_uart_twptr
+	increase -5,contwu
+	iadd contwu,contwu
+	rtn
+
+h4_send_packet_event:
+	arg HCI_H4_TYPE_EVENT,temp //type
+	branch h4_send_packet
+h4_send_packet_acl: //upgoing ACL
+	arg HCI_H4_TYPE_ACL,temp //type
+h4_send_packet:
+	bpatchx patch20_0,mem_patch20
+	increase 1,loopcnt
+	hfetch 2,core_uart_twptr
+	copy pdata,contwu
+	copy loopcnt,pdata //length
+	istoret 1,contwu //packet type in temp
+	increase -1,pdata
+	iadd contwu,contwu
+	copy contwu,pdata
+	store 2,mem_hci_acl_tx_trigger_wptr
+	copy temp,pdata
+	rtneq HCI_H4_TYPE_ACL //not send acl packet immediately
+	fetch 2,mem_hci_acl_tx_trigger_wptr
+	hstore 2,core_uart_twptr
+	branch h4_send_acl_trigger_clear
+	
+	
+h4_send_acl_trigger_clear:
+	setarg 0
+	store 2,mem_hci_acl_tx_trigger_wptr
+	rtn
+
+	
+/*********************************/
+/**********   HCI  *****************/
+/*********************************/
+
+hci_init:
+	rtn wake
+	setarg hci_idle_dispatch
+	store 2,mem_cb_idle_process
+
+	setarg uart_baud_115200
+	store uart_baud_len,mem_baud
+hci_lpm_init:
+	setarg mem_h5rx_buf
+	hstore 2,core_uart_rsaddr
+	setarg mem_h5rx_buf_end
+	hstore 2,core_uart_readdr
+	setarg mem_h5tx_buf
+	hstore 2,core_uart_tsaddr
+	call hci_sel_init
+hci_reinit:
+	jam 0x0,core_uart_ctrl
+ 	setarg mem_h5tx_buf
+	hstore 2,core_uart_twptr
+	hstore 2,core_uart_trptrp
+	setarg mem_h5rx_buf
+	hstore 2,core_uart_rrptr
+	store 2,mem_h5rx_rptr
+hci_init_common:
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_UART,pdata
+	hstore 2,core_clkoff
+	call uart_set_baud_by_mem
+	jam uartclk_dpll,core_uart_clksel
+	jam uart_ctrl_h4,core_uart_ctrl
+	rtn
+
+hci_sel_init:
+	setarg mem_h5tx_buf_end
+	hstore 2,core_uart_teaddr
+	hfetch 1,core_gpio_sel1
+	or_into 0x07,pdata
+	hstore 1,core_gpio_sel1
+	rtn
+	
+	
+hci_rx_packet:
+	bpatchx patch20_1,mem_patch20
+	hfetch 1,core_uart_status
+	iforce regb
+	bbit0 uart_status_rx_fifo_empty,hci_rx_packet_cont
+	hfetch 2,core_uart_rxitems
+	iforce regc
+	arg 0x44f,temp
+	isub temp,null
+	nrtn zero
+hci_rx_packet_cont:
+	hfetch 2,core_uart_rrptr
+	iforce contru
+	branch hci_rx_h4
+	
+uart_send_byte:
+	hfetcht 1,core_uart_status
+	isolate1 6,temp
+	branch uart_send_byte,true
+	hstore 1,core_uart_txd
+	rtn
+	
+process_hci_cmd:
+	bpatchx patch20_2,mem_patch20
+	fetch 1,mem_hci_cmd
+	branch process_hci_cmd_cont,blank
+	enable user					/* last command still there */
+	rtn
+process_hci_cmd_cont:
+	ifetch 2,contru
+	iforce alarm				/* alarm is used for sending */
+	iforce queue				/* queue is OCF */
+	ifetch 1,contru		/* skip hci length */
+	iforce temp			/* temp has the length */
+	rshift2 alarm,pdata
+	rshift8 pdata,pdata
+	beq HCI_OGF_VENDOR_SPECIFIC,phci_grp_vendor_specific
+	rtn
+
+
+phci_grp_vendor_specific:
+	bpatchx patch20_3,mem_patch20
+	deposit queue
+	beq HCI_VENDOR_CMD_RESET,hci_normal_reply
+	beq HCI_VENDOR_CMD_CHIPID,phci_grp_vendor_chipid
+	beq HCI_VENDOR_CMD_BAUD,phci_grp_vendor_baud
+	beq HCI_VENDOR_CMD_PATCH,phci_grp_vendor_patch
+	beq HCI_VENDOR_CMD_PATCH_DONE,phci_grp_vendor_done
+	beq HCI_VENDOR_CMD_ECHO,hci_normal_reply
+	beq HCI_VENDOR_CMD_BDADDR,phci_grp_vendor_bdaddr
+	beq HCI_VENDOR_CMD_ENTER_LPM,phci_grp_vendor_enter_lpm
+	
+	beq HCI_VENDOR_CMD_MEM,phci_grp_vendor_mem
+	beq HCI_VENDOR_CMD_EEP,phci_grp_vendor_eep
+	beq HCI_VENDOR_CMD_PATCH_SEC_INIT,phci_grp_vendor_patch_sec_init
+	beq HCI_VENDOR_CMD_PATCH_SEC,phci_grp_vendor_patch_sec
+	branch hci_normal_reply
+
+phci_grp_vendor_enter_lpm:
+	call hci_normal_reply
+	call wait_uarttx
+	call gpio_pu_uart_tx
+hci_enter_lpm:
+	call app_put_lpm_wake_lock
+	call app_l2cap_flow_control_enable
+	branch gpio_rx_config_input_with_pu
+
+hci_exit_lpm:
+	jam HCI_RX_READY,mem_hci_lt_rx_state
+	call app_get_lpm_wake_lock
+	call hci_lpm_init
+	branch app_l2cap_flow_control_disable
+	
+phci_grp_vendor_chipid:
+	call hci_get_cmd_complete_ptr
+	hfetch 2,core_chipid
+	istore 2,contwu
+	force 6,loopcnt
+	branch hci_command_complete
+	
+phci_grp_vendor_baud:
+	ifetch 2,contru
+	store 2,mem_baud
+	hstore 2,core_uart_baud
+	rtn
+
+
+phci_grp_vendor_patch_common:
+	//jam 0x80,core_ucode_ctrl
+	ifetch 1,contru
+	copy pdata,temp //check sum via temp
+	hstore 1,core_ucode_low
+	ifetch 1,contru
+	iadd temp,temp
+	set1 7,pdata
+	hstore 1,core_ucode_ctrl
+	ifetch 1,contru
+	iadd temp,temp
+	copy pdata,loopcnt
+	rtn
+	
+phci_grp_vendor_patch:
+	bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad
+	call phci_grp_vendor_patch_common
+phci_grp_vendor_patch_loop:
+	ifetch 1,contru
+	hstore 1,core_ucode_data
+	iadd temp,temp
+	loop phci_grp_vendor_patch_loop
+phci_grp_vendor_patch_check_sum:	
+	and temp,0xff,temp
+	ifetch 1,contru
+	isub temp,null
+	nbranch phci_grp_vendor_patch_bad,zero
+	branch hci_normal_reply
+
+	
+phci_grp_vendor_patch_sec:
+	bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad
+	call phci_grp_vendor_patch_common
+	store 8,mem_pdatatemp
+phci_grp_vendor_patch_sec_loop:
+	call do_aes_cbc	
+	arg 16,loopcnt
+	arg mem_temp_block0,contw
+	call load_uart_sum_loop
+	storet 8,mem_temp
+	arg mem_temp_block2,contw
+	call store_aes_result
+	arg mem_temp_block2,rega
+	arg mem_temp_block0,regb
+	arg mem_temp_block3,contw
+	call xor16	
+	arg 16,loopcnt
+	arg mem_temp_block3,contr
+	call load_ucode_only_loop
+	fetcht 8,mem_temp
+	fetch 8,mem_pdatatemp
+	increase -16,pdata
+	store 8,mem_pdatatemp
+	nbranch phci_grp_vendor_patch_sec_loop,blank
+	branch phci_grp_vendor_patch_check_sum	
+	
+load_ucode_only_loop:
+	ifetch 1,contr
+	hstore 1,core_ucode_data
+	loop load_ucode_only_loop
+	rtn
+
+load_uart_sum_loop:
+	ifetch 1,contru
+	istore 1,contw
+	iadd temp,temp
+	loop load_uart_sum_loop
+	rtn
+
+phci_grp_vendor_patch_sec_init:
+	bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad
+	arg 0,temp
+	arg 16,loopcnt
+	arg mem_temp_block0,contw
+	call load_uart_sum_loop
+	hfetch 1,core_gpio_key2
+	and_into 0xfd,pdata   // disable aes for iv
+	hstore 1,core_gpio_key2
+	arg mem_temp_block0,contr
+	arg 16,loopcnt
+	call aes_load_data
+	call aes_init
+	call aes_clear_data
+	branch phci_grp_vendor_patch_check_sum
+
+
+phci_grp_vendor_done:
+	arg 0x20,loopcnt    //patch switch length
+	arg mem_patch00,contw
+	arg 0,temp //checksum
+phci_grp_vendor_done_loop:
+	ifetch 1,contru
+	istore 1,contw
+	iadd temp,temp
+	loop phci_grp_vendor_done_loop
+	and temp,0xff,temp
+	ifetch 1,contru
+	isub temp,null
+	nbranch phci_grp_vendor_patch_bad,zero
+	jam 0,core_ucode_ctrl
+	call hci_normal_reply
+	call h4_rx_discard_packet
+	call clear_key_buf
+	call wait_uarttx
+	branch soft_reset
+
+phci_grp_vendor_patch_bad:
+	jam 0,core_ucode_ctrl
+	branch start
+	
+phci_grp_vendor_bdaddr:
+	ifetch 6,contru
+	store 6,mem_lap
+	branch hci_normal_reply
+
+
+phci_grp_vendor_mem:
+	ifetch 1,contru
+	store 1,mem_hci_curr_len
+	copy pdata,loopcnt
+	ifetch 2,contru
+	store 2,mem_hci_curr_target
+	copy pdata,contw
+	call uart_copy_rx_bytes
+	branch hci_normal_reply
+
+
+phci_grp_vendor_eep:
+	ifetch 1,contru
+	store 1,mem_hci_curr_len
+	copy pdata,loopcnt
+	ifetch 2,contru
+	store 2,mem_hci_curr_target
+	arg mem_l2cap_rxbuff1,contw
+	call uart_copy_rx_bytes
+	fetcht 1,mem_hci_curr_len
+	arg mem_l2cap_rxbuff1,rega
+	fetch 2,mem_hci_curr_target
+	branch iicd_write_ota_data
+	
+	
+
+	
+hci_normal_reply:
+	force 4,loopcnt
+hci_command_complete:	/* loopcnt is hci length */
+	call hci_get_payload_ptr
+	force 0x1,pdata
+	istore 1,contwu
+	deposit alarm
+	istore 3,contwu
+	force HCI_EVENT_COMMAND_COMPLETE,queue
+hci_send_event:		/* queue:event code, loopcnt: length */
+	bpatchx patch20_4,mem_patch20
+	call hci_get_packet_ptr
+	deposit queue
+	istore 1,contwu
+	deposit loopcnt
+	istore 1,contwu
+hci_send_event_raw:
+	force 5,queue
+	increase 2,loopcnt
+hci_send_packet:
+	branch h4_send_packet_event
+
+hci_send_commu_ready_event:
+	force HCI_EVENT_VENDOR_SPECIFIC,queue
+	call hci_get_payload_ptr
+	setarg HCI_VENDOR_EVENT_COMMU_READY
+	istore 1,contwu
+	force 1,loopcnt
+	branch hci_send_event
+
+hci_get_cmd_complete_ptr:
+	force 12,contwu
+	branch hci_get_tx_ptr
+
+hci_get_payload_ptr:
+	force 8,contwu
+	branch hci_get_tx_ptr
+
+hci_get_packet_ptr:
+	force 6,contwu
+hci_get_tx_ptr:
+	branch h4_get_tx_ptr
+
+	
+
+calc_tx_crc16:
+	pulse crc16
+	enable enable_crc
+crcloop:
+	ifetch 1,contwu
+	inject bucket,8
+	loop crcloop
+	enable enable_parity
+	inject bucket,16
+	disable enable_parity
+	disable enable_crc
+	disable crc16
+	byteswap pdata,pdata
+	rtn
+
+
+
+cmd_exit:
+	jam 0,mem_hci_cmd
+	rtn
+cmd_check_plap:
+	fetch 6,mem_hci_plap
+	fetcht 6,mem_plap
+	isub temp,null
+	rtn
+
+	
+	
+//enable ssp master sm
+cmd_pair:
+	fetch 1,mem_op
+	bbit1 op_inrand_req,cmd_pair_passive
+	call tid_initiate
+	jam LMP_IN_RAND,mem_lmo_opcode2
+	branch cmd_exit
+cmd_pair_passive:
+	set0 op_inrand_req,pdata
+	store 1,mem_op
+	call lmp_accept_inrand
+	setarg 0
+	setflag master,smap_lmptid,pdata		
+	store 1,mem_lmo_tid2
+	branch cmd_exit
+	rtn
+cmd_in_sniff:
+	jam LMP_SNIFF_REQ,mem_lmo_opcode2
+	arg mem_sniff_payload,contw
+	setarg 0
+	isolate1 27,clke_bt
+	setflag true,1,pdata		/* use init 2 if bit27 of clke is 1 */
+	istore 1,contw	
+	setarg 0	/* dsniff */
+	istore 2,contw
+	fetch 2,mem_sniff_param_interval	/* tsniff */
+	istore 2,contw
+	fetch 1,mem_sniff_param_attempt	/* attempt */
+	istore 2,contw
+	fetch 1,mem_sniff_param_timeout	/* timeout */
+	istore 2,contw
+	branch cmd_exit
+	
+cmd_exit_sniff:
+	jam LMP_UNSNIFF_REQ,mem_lmo_opcode2
+	branch cmd_exit
+
+hci_idle_dispatch:
+	call gpio_check_uart_state
+	rtn true
+	arg UART_WAKEUP_RX,temp
+	call gpio_get_bit
+	nbranch uart_wake_up,true
+	jam HCI_RX_WAKE,mem_hci_lt_rx_state
+	rtn
+uart_wake_up:
+	fetch 1,mem_hci_lt_rx_state
+	rtnne HCI_RX_WAKE
+	call hci_exit_lpm
+	branch hci_send_commu_ready_event
+	
+	
+/**
+* the following API is to send the HID data
+* 
+*/
+
+/**
+* the following API is to process the hid  rx data
+* 
+*/
+//handle the hid data
+
+hid_rx_process:
+	bpatchx patch20_5,mem_patch20
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	ifetch 1,contr
+	and pdata,0x0f,temp
+	rshift4 pdata,pdata //hidtype
+	beq hid_type_set_idle,hid_rx_process_handshake
+	beq hid_type_set_protocol,hid_rx_process_handshake
+	beq hid_type_data,hid_rx_process_data
+	beq HID_TYPE_SET_REPORT,hid_rx_process_set_report
+	beq HID_TYPE_CONTROL,hid_rx_process_hid_control
+	rtn
+
+hid_rx_process_hid_control:
+	copy temp,pdata
+	beq HID_CONTROL_P_VIRTUALCABLEUNPLUG,hid_rx_process_virtual_cable_unplug
+	beq HID_CONTROL_P_SUSPEND,hid_rx_process_suspend
+	rtn
+	
+hid_rx_process_virtual_cable_unplug:
+	jam BT_EVT_VIRTUAL_CABLE_UNPLUG,mem_fifo_temp
+	call ui_ipc_send_event
+	fetch 1,mem_device_option
+	rtnbit0 dvc_op_mouse
+	copy temp,pdata
+	beq HID_CONTROL_P_VIRTUALCABLEUNPLUG,mouse_irtual_cable_unplug
+	rtn
+hid_rx_process_suspend:
+	rtn
+
+hid_rx_process_set_report:
+	call hid_rx_process_data
+	arg 0x01,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_ctrl_remote_cid
+	istore 2,contw
+	setarg 0x00
+	istore 1,contw
+	rtn
+
+hid_rx_process_handshake:
+	arg 1,regA//payload length
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_ctrl_remote_cid
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	jam 1,mem_ui_data_txbuff_length
+	fetch 1,mem_hid_control_state
+	set1 l2cap_channel_hid_handshake_done
+	store 1,mem_hid_control_state
+	jam BT_EVT_HID_HANDSHAKE,mem_fifo_temp
+	branch ui_ipc_send_event
+
+hid_rx_process_data:
+	ifetch 1,contr
+	beq HID_REPORT_ID_KB,hid_rx_process_data_hid_kb
+	rtn
+
+hid_rx_process_data_hid_kb:
+	rtn
+
+	
+hid_malloc_tx_buff:
+	call l2cap_malloc
+	copy rega,temp
+	storet 1,mem_ui_data_txbuff_length
+	copy pdata,contw
+	copy rega,pdata
+	istore 2,contw //hid payload length
+	rtn
+
+
+
+
+	
+	
+
+
+
+	
+    
+	
+
+/************************************/
+/*initialize L2CAP related variables*/
+/************************************/
+l2cap_init:
+	branch l2cap_init_wake,wake
+l2cap_init_work:
+	setarg mem_l2cap_xmem_end
+	arg mem_l2cap_xmem_start,contw
+	isub contw,loopcnt
+	call clear_mem
+l2cap_init_wake:	
+	bpatchx patch20_6,mem_patch20
+	setarg mem_sdp_mem_end
+	arg mem_sdp_mem_start,contw
+	isub contw,loopcnt
+	call clear_mem
+	setarg mem_l2cap_mem_end
+	arg mem_l2cap_mem_start,contw
+	isub contw,loopcnt
+	call clear_mem
+	branch l2cap_lpm_load_txbuf
+	
+process_rx_l2cap_pkt:
+	bpatchx patch20_7,mem_patch20
+	copy contr,temp
+	//call l2cap_malloc_is_fifo_full
+	//nrtn blank
+	copy temp,contr
+	ifetch 2,contr
+	store 2,mem_l2cap_rx_pkt_length
+	ifetch 2,contr
+	store 2,mem_l2cap_rx_cid
+	deposit contr
+	store 2,mem_l2cap_payload_ptr
+	fetch 1,memui_reconnect_mode
+	beq NO_RECONNECTION,l2cap_rx_multiplexing
+	branch ml2cap_rx_multiplexing
+
+l2cap_rx_multiplexing:
+	fetch 2, mem_l2cap_rx_pkt_length
+	branch l2cap_rx_reset_state,blank
+	bpatchx patch21_0,mem_patch21
+	fetch 1,mem_l2cap_rx_cid
+	beq L2CAP_signal_channel,l2cap_call_proc_signal
+l2cap_rx_multiplexing0:
+	beq L2CAP_SDP_channel,l2cap_call_proc_sdp
+	beq L2CAP_RFCOMM_channel,l2cap_call_proc_rfcomm
+	beq L2CAP_HID_Control_channel,l2cap_call_proc_hid
+	beq L2CAP_HID_Interrupt_channel,l2cap_call_proc_hid
+	branch l2cap_rx_reset_state
+
+l2cap_check_map:
+//	call l2cap_malloc_is_fifo_full
+//	nrtn blank
+	bpatchx patch21_1,mem_patch21
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	beq 0,set_pdata_0
+	beq 1,set_pdata_0
+	beq 2,set_pdata_0
+	beq 3,set_pdata_0
+	beq 0x81,set_pdata_0
+	beq 0xc0,set_pdata_0
+	beq 0x80,set_pdata_0
+	beq 0x40,set_pdata_0
+	rtn
+
+set_pdata_0:
+	setarg 0
+	rtn
+
+
+l2cap_call_proc_signal:
+	call l2cap_check_map
+	nrtn blank
+l2cap_call_proc_signal0:
+	call l2cap_malloc_signal_channel
+	call l2cap_process_signal_pkt
+	fetcht 2,mem_l2cap_signal_tx_length
+	branch l2cap_call_proc_no_reply,blank
+	call l2cap_get_signal_tx_buff
+	fetch 2,mem_l2cap_signal_tx_length
+	istore 2,contw
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	branch l2cap_rx_reset_state
+	
+l2cap_call_proc_sigal_pending:
+	fetch 1,mem_l2cap_pending_item
+	rtn blank
+	copy pdata,rega
+	bpatchx patch21_2,mem_patch21
+	fetch 4,mem_l2cap_sdpres_delay_time
+	arg 0x100,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	jam 0,mem_l2cap_pending_item
+	copy rega,pdata
+	beq L2CAP_SDP_channel,l2cap_sdp_conn_succ
+	branch assert
+l2cap_sdp_conn_succ:
+	arg 0,debug
+	call l2cap_malloc_signal_channel
+	call restore_l2cap_req_param
+	call l2cap_get_signal_tx_payload
+	call save_cont_pointers
+	call send_connection_sdp_res
+	call l2cap_get_signal_tx_buff
+	//fetch 2,mem_l2cap_signal_tx_length
+	setarg 0x000c
+	istore 2,contw
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	branch l2cap_rx_reset_state
+
+
+
+l2cap_reset_sdp_map:
+	bpatchx patch21_3,mem_patch21
+	fetch 2,mem_sdp_tx_pkt_length
+	increase 4,pdata
+	rshift4 pdata,pdata
+	rshift3 pdata,pdata
+	add pdata,1,temp ///temp: how many128
+	arg mem_tx_fifo3,contr
+	ifetch 3,contr
+	rtn blank
+	store 3,mem_tx_fifo_map_temp
+	fetch 1,mem_tx_fifo_map_temp
+	copy pdata,rega
+	call check_l2cap_map
+	copy regb,pdata
+	store 1,mem_tx_fifo3
+	rtn
+
+check_l2cap_map:
+	arg 0,queue
+	arg 0,regb
+
+check_l2cap_map_loop:
+	sub queue,7,null
+	nrtn positive
+	qisolate1 rega
+	branch check_l2cap_map_used,true
+	branch check_l2cap_map_used2
+
+check_l2cap_map_used:
+	copy temp,pdata
+	branch check_l2cap_map_used2,blank
+	qset1 regb
+	increase -1,temp
+
+check_l2cap_map_used2:
+	increase 1,queue
+	branch check_l2cap_map_loop
+
+l2cap_call_proc_sdp:
+	call l2cap_malloc_is_fifo_empty
+	nrtn blank// not process this packet until fifo empty
+	call l2cap_check_map
+	nrtn blank
+	call l2cap_malloc_sdp_channel
+	call sdp_process
+	call l2cap_reset_sdp_map
+	branch l2cap_call_proc_sdp_common
+
+	
+ml2cap_call_proc_sdp:
+	call l2cap_malloc_is_fifo_empty
+	nrtn blank// not process this packet until fifo empty
+	call l2cap_malloc_sdp_channel
+	call sdp_process
+l2cap_call_proc_sdp_common:
+	call l2cap_get_sdp_tx_buff
+	fetch 2,mem_sdp_tx_pkt_length
+	branch l2cap_call_proc_no_reply,blank
+	istore 2,contw
+	fetch 2,mem_sdp_remote_cid
+	istore 2,contw
+	branch l2cap_rx_reset_state
+
+l2cap_call_proc_hid:
+	call hid_rx_process
+	branch l2cap_rx_reset_state
+
+l2cap_call_proc_rfcomm:
+	bpatchx patch21_4,mem_patch21
+	jam RFCOMM_MALLOC_SUCCEED,mem_rfcomm_malloc_fail_flag
+	call rfcomm_rx_process
+	fetch 1,mem_rfcomm_malloc_fail_flag
+	rtneq RFCOMM_MALLOC_FAIL
+	branch l2cap_rx_reset_state
+l2cap_call_proc_no_reply:
+	call l2cap_malloc_discard
+	//fall through
+l2cap_rx_reset_state:
+	setarg 0
+	store 2,mem_l2cap_rx_pkt_length
+	store 2,mem_l2cap_rx_cid
+	jam L2CAP_RX_DONE,mem_l2cap_rx_done
+	rtn
+/* To process one L2CAP signalling pkt consisting of 1 or more signalling commands.	*/
+l2cap_process_signal_pkt:
+	bpatchx patch21_5,mem_patch21
+	call l2cap_get_signal_tx_payload
+	force 0,regB
+	fetch 2,mem_l2cap_rx_pkt_length
+	copy pdata,regC
+	fetch 2,mem_l2cap_payload_ptr
+	iforce contr
+l2cap_process_signal_pkt_loop:
+	call l2cap_process_one_signal
+	deposit regC
+	increase -4,regC
+	increase -4,pdata
+	nbranch l2cap_process_signal_pkt_loop,blank
+	copy regB,pdata
+	store 2,mem_l2cap_signal_tx_length
+	rtn
+
+l2cap_process_one_signal:
+	bpatchx patch21_6,mem_patch21
+	ifetch 1,contr
+	beq signal_cmd_reject,l2cap_proc_signal_cmd_reject
+	beq signal_connect_req,l2cap_proc_signal_connect_req
+	beq signal_connect_rsp,l2cap_proc_signal_connect_rsp
+	beq signal_config_req,l2cap_proc_signal_config_req
+	beq signal_config_rsp,l2cap_proc_signal_config_rsp
+	beq signal_disconnect_req,l2cap_proc_signal_disconnect_req
+	beq signal_disconnect_rsp,l2cap_proc_signal_disconnect_rsp
+	beq signal_echo_req,l2cap_proc_signal_echo_req
+	beq signal_echo_rsp,l2cap_proc_signal_echo_rsp
+	beq signal_info_req,l2cap_proc_signal_info_req
+	beq signal_info_rsp,l2cap_proc_signal_info_rsp
+	call l2cap_reject_command
+l2cap_process_one_signal_rtn:
+	rtn
+
+l2cap_proc_signal_info_req:
+	ifetch 1,contr //IDs
+	copy pdata,queue
+	ifetch 2,contr //length
+	copy pdata,rega
+	copy regc,pdata
+	isub rega,regc
+	setarg signal_info_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1, contw
+	ifetch 2,contr 
+l2cap_proc_signal_info_req_reply:
+	beq L2CAP_SIG_EXT_FEATRUE,l2cap_proc_signal_info_req_ext
+	beq L2CAP_SIG_FIX_FEATRUE,l2cap_proc_signal_info_req_fix
+	rtn
+l2cap_proc_signal_info_req_ext:
+	setarg 0x020008
+	istore 6, contw
+	setarg 0x0280
+	istore 4, contw
+	force 12,pdata
+	branch l2cap_proc_signal_info_req_common
+l2cap_proc_signal_info_req_fix:
+	setarg 0x3000c
+	istore 6, contw
+	setarg 0x0006
+	istore 8, contw
+	force 16,pdata
+l2cap_proc_signal_info_req_common:
+	iadd regb,regb
+	branch l2cap_process_one_signal_rtn
+	
+ml2cap_proc_signal_info_req:
+	ifetch 1,contr //IDs
+	copy pdata,queue
+	ifetch 2,contr //length
+	copy pdata,rega
+	ifetch 2,contr
+	store 2,mem_temp
+	copy regc,pdata
+	isub rega,regc 
+	call l2cap_get_signal_tx_payload
+	setarg signal_info_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw 
+	fetch 2,mem_temp
+	branch l2cap_proc_signal_info_req_reply
+
+
+/*  Respond to the command reject signal sent from the remote BD.   */
+l2cap_proc_signal_cmd_reject:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	iadd contr,contr
+	copy regC,pdata
+	isub regA,regC
+l2cap_proc_signal_cmd_reject_rtn:
+	branch l2cap_process_one_signal_rtn
+/* Respond to an L2CAP connection request from remote BD. (generate a connection_rsp)	*/
+l2cap_proc_signal_connect_req:
+	call save_cont_pointers
+	//fetch 6,mem_inquiry_bd_addr
+  	//store 6,mem_master_paged_bd_addr
+  	call load_cont_pointers
+	arg 0,debug
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,temp //PSM
+	ifetch 2,contr
+	copy pdata,timeup
+	bpatchx patch21_7,mem_patch21
+	copy temp,pdata
+	beq PSM_SDP,l2cap_proc_signal_connect_req_sdp
+	beq PSM_RFCOMM,l2cap_proc_signal_connect_req_rfcomm
+	beq PSM_HID_control,l2cap_proc_signal_connect_req_hid_ctrl
+	beq PSM_HID_interrupt,l2cap_proc_signal_connect_req_hid_int
+	call l2cap_reject_command
+	branch l2cap_proc_signal_connect_req_rtn
+
+l2cap_proc_signal_connect_req_sdp:
+	call save_cont_pointers
+	arg L2CAP_SDP_channel,temp
+	fetch 2,mem_sdp_remote_cid
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_sdp_remote_cid
+	copy clkn_bt,pdata
+	store 4,mem_l2cap_sdpres_delay_time
+	call store_l2cap_req_param
+	branch  send_connection_pending
+
+store_l2cap_req_param:
+	storet 2,mem_psm
+	deposit timeup
+	store 2,mem_scid
+	deposit rega
+	store 2,mem_cmd_length
+	deposit regb
+	store 2,mem_tt2
+	deposit regc
+	store 2,mem_tt3
+	deposit queue
+	store 2,mem_id
+	rtn
+
+restore_l2cap_req_param:
+	fetcht 2,mem_psm
+	fetch 2,mem_scid
+	copy pdata,timeup
+	fetch 2,mem_cmd_length
+	copy pdata,rega
+	fetch 2,mem_tt2
+	copy pdata,regb
+	fetch 2,mem_tt3
+	copy pdata,regc
+	fetch 2,mem_id
+	copy pdata,queue
+	rtn
+
+l2cap_proc_signal_connect_req_rfcomm:
+	call save_cont_pointers
+	setarg L2CAP_RFCOMM_channel
+	arg L2CAP_RFCOMM_channel,temp
+	fetch 2,mem_RFCOMM_remote_CID
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_RFCOMM_remote_CID
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_rfcomm_state
+	branch send_connection_res
+l2cap_proc_signal_connect_req_hid_ctrl:
+	call save_cont_pointers
+	arg L2CAP_HID_Control_channel,temp
+	fetch 2,mem_hid_ctrl_remote_cid
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_hid_ctrl_remote_cid
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_control_state
+	branch send_connection_res
+l2cap_proc_signal_connect_req_hid_int:
+	call save_cont_pointers
+	deposit clke
+	arg L2CAP_HID_Interrupt_channel,temp
+	fetch 2,mem_hid_int_remote_cid
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_hid_int_remote_cid
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_interrupt_state
+	branch send_connection_res
+
+send_connection_pending:
+	setarg L2CAP_connect_pending
+	store 2,memL2CAP_T1
+	jam L2CAP_SDP_channel,mem_l2cap_pending_item
+	branch send_connection_res0
+send_connection_sdp_res:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_sdp_state
+send_connection_res:
+	setarg L2CAP_connect_successful
+	store 2,memL2CAP_T1
+send_connection_res0:
+	bpatchx patch22_0,mem_patch22
+	call load_cont_pointers
+	setarg signal_connect_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0008
+	istore 2,contw
+	copy temp,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	fetch 2,memL2CAP_T1
+	beq L2CAP_connect_pending,connect_pending
+	isolate0 0,debug
+	branch connect_suc,true
+	setarg L2CAP_connect_refused_no_resources
+connect_suc:
+	istore 2,contw
+	force 0x0000,pdata
+	istore 2,contw
+	setarg 12
+	branch connect_req_update_byte_counts
+connect_pending:
+	istore 2,contw
+	force 0x0002,pdata
+	istore 2,contw
+	setarg 12
+	branch connect_req_update_byte_counts
+	
+already_connected:
+	set1 0,debug
+	branch send_connection_res
+connect_req_update_byte_counts:
+	iadd regB,regB
+	copy regC,pdata
+	isub regA,regC
+	branch l2cap_proc_signal_connect_req_rtn
+l2cap_proc_signal_connect_req_rtn:
+	branch l2cap_process_one_signal_rtn
+
+l2cap_proc_signal_connect_rsp:
+	ifetch 1,contr //identifier
+	copy pdata,queue
+	ifetch 2,contr //length
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr //remote cid
+	copy pdata,timeup
+	ifetch 2,contr //local cid
+	copy pdata,temp
+	bpatchx patch22_1,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_hid_int,zero
+	rtn
+
+l2cap_proc_signal_connect_rsp_sdp:
+	copy timeup,pdata
+	store 2,mem_sdp_remote_cid
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_sdp_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_connect_rsp_rfcomm:
+	copy timeup,pdata
+	store 2,mem_rfcomm_remote_CID
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_rfcomm_state
+	rtn
+l2cap_proc_signal_connect_rsp_hid_int:
+	copy timeup,pdata
+	store 2,mem_hid_ctrl_remote_cid
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_interrupt_state
+	rtn
+l2cap_proc_signal_connect_rsp_hid_ctrl:
+	copy timeup,pdata
+	store 2,mem_hid_int_remote_cid
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_control_state
+	rtn
+
+l2cap_proc_signal_config_req:
+	ifetch 1,contr//identifier
+	copy pdata,queue
+	ifetch 2,contr//length
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr//dest cid
+	copy pdata,temp
+	copy temp,regA
+	bpatchx patch22_2,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_hid_int,zero
+	branch l2cap_reject_command
+	//branch L2CAP_proc_signal_config_req_rtn
+l2cap_proc_signal_config_req_sdp:
+	copy contw, timeup
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_sdp_state
+	copy timeup,contw
+	arg L2CAP_SDP_channel,timeup
+	fetch 2,mem_sdp_remote_cid
+	copy pdata,temp
+	branch l2cap_send_config_rsp
+l2cap_proc_signal_config_req_hid_ctrl:
+	copy contw, timeup
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_control_state
+	copy timeup,contw
+	arg L2CAP_HID_Control_channel,timeup
+	fetch 2,mem_hid_ctrl_remote_cid
+	copy pdata,temp
+	branch l2cap_send_config_rsp
+l2cap_proc_signal_config_req_hid_int:
+	copy contw, timeup
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_interrupt_state
+	copy timeup,contw
+	arg L2CAP_HID_Interrupt_channel,timeup
+	fetch 2,mem_hid_int_remote_cid
+	copy pdata,temp
+	branch l2cap_send_config_rsp
+l2cap_proc_signal_config_req_rfcomm:
+	copy contw, timeup
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_rfcomm_state
+//	jam UPPERSM_RP_SDP_CONN,mem_upper_sm_remote_page
+	copy timeup,contw
+	arg L2CAP_RFCOMM_channel,timeup
+	fetch 2,mem_RFCOMM_remote_CID
+	copy pdata,temp
+l2cap_send_config_rsp:
+	bpatchx patch22_3,mem_patch22
+	setarg  signal_config_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0006
+	istore 2,contw
+	copy temp,pdata
+	istore 2,contw
+	force 0x00,pdata
+	istore 2,contw
+	force L2CAP_config_success,pdata
+	istore 2,contw
+	force 10,pdata
+	iadd regB,regB
+	//copy temp,pdata
+	storet 2,mem_config_req_dest_CID
+	copy queue,pdata
+	store 1,mem_config_identifier
+	force L2CAP_SDP_channel,pdata
+	icompare 0xff,timeup
+	branch l2cap_send_config_rsp_is_sdp,true
+	increase 1,pdata
+l2cap_send_config_rsp_is_sdp:
+	//store 1,mem_send_config_req
+	rtn
+l2cap_check_channel_state:
+	disable user
+	rtnbit1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	copy contr,contw
+	increase -1,contw
+	istore 1,contw
+	enable user
+	rtn
+l2cap_send_config_req:
+l2cap_send_config_req_sdp:
+	fetch 1,mem_sdp_state
+	call l2cap_check_channel_state
+	nbranch l2cap_send_config_req_rfcomm,user
+	jam L2CAP_SDP_channel,mem_send_config_req
+	fetch 2,mem_sdp_remote_cid
+	store 2,mem_config_req_dest_CID
+	branch l2cap_generate_config_req
+l2cap_send_config_req_rfcomm:
+	fetch 1,mem_rfcomm_state
+	call l2cap_check_channel_state
+	nbranch l2cap_send_config_req_hid_ctrl,user
+	jam L2CAP_RFCOMM_channel,mem_send_config_req
+	fetch 2,mem_RFCOMM_remote_CID
+	store 2,mem_config_req_dest_CID
+	branch l2cap_generate_config_req
+l2cap_send_config_req_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	call l2cap_check_channel_state
+	nbranch l2cap_send_config_req_hid_int,user
+	jam L2CAP_HID_Control_channel,mem_send_config_req
+	fetch 2,mem_hid_ctrl_remote_cid
+	store 2,mem_config_req_dest_CID
+	branch l2cap_generate_config_req
+l2cap_send_config_req_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	call l2cap_check_channel_state
+	nrtn user//End of sending config req
+	jam L2CAP_HID_Interrupt_channel,mem_send_config_req
+	fetch 2,mem_hid_int_remote_cid
+	store 2,mem_config_req_dest_CID
+	//branch L2CAP_generate_config_req
+
+l2cap_generate_config_req:
+	bpatchx patch22_4,mem_patch22
+	call l2cap_get_req_id
+	call l2cap_malloc_signal_channel
+	force 0,regB
+	call l2cap_get_signal_tx_payload
+	force signal_config_req,pdata
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0008
+	istore 2,contw
+	fetch 2,mem_config_req_dest_CID
+	istore 2,contw
+	setarg 0x0000
+	istore 2,contw
+	force 1,pdata
+	istore 1,contw
+	force 2,pdata
+	istore 1,contw
+	fetch 1,mem_send_config_req
+	beq L2CAP_RFCOMM_channel,l2cap_generate_config_req_rfcomm
+	setarg L2CAP_config_MTU_SDP
+	istore 2,contw
+	branch l2cap_generate_config_req_done
+l2cap_generate_config_req_rfcomm:
+	setarg L2CAP_config_MTU_RFCOMM
+	istore 2,contw
+l2cap_generate_config_req_done:
+	arg 0x0c,temp
+	storet 2,mem_l2cap_signal_tx_length
+	call l2cap_get_signal_tx_buff
+	fetch 2,mem_l2cap_signal_tx_length
+	istore 2,contw
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	jam 0,mem_send_config_req
+l2cap_proc_signal_config_req_rtn:
+	branch l2cap_process_one_signal_rtn
+
+l2cap_proc_signal_config_rsp:
+	increase 1,contr
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr //source cid
+	copy pdata,regA
+	bpatchx patch22_5,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_hid_int,zero
+	increase 2,contr
+	ifetch 2,contr
+	iforce null
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_sdp:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_sdp_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_rfcomm:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_rfcomm_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_hid_control_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_hid_interrupt_state
+	jam BT_EVT_HID_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+
+
+l2cap_proc_signal_disconnect_req:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,timeup
+	copy regA,temp
+	call save_cont_pointers
+	bpatchx patch22_6,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_hid_int,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_proc_signal_disconnect_req_hid_ctrl:
+	copy timeup,temp
+	fetch 2,mem_hid_ctrl_remote_cid
+	isub temp,null
+	branch l2cap_disconnect_hid_control_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_proc_signal_disconnect_req_hid_int:
+	copy timeup,temp
+	fetch 2,mem_hid_int_remote_cid
+	isub temp,null
+	branch l2cap_disconnect_hid_interrupt_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+
+l2cap_proc_signal_disconnect_req_sdp:
+	copy timeup,temp
+	fetch 2,mem_sdp_remote_cid
+	isub temp,null
+	branch l2cap_disconnect_sdp_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_disconnect_hid_control_now:
+	call l2cap_reset_hid_ctrl_state
+	branch l2cap_send_disconnect_rsp_pkt
+l2cap_disconnect_hid_interrupt_now:
+	call l2cap_reset_hid_int_state
+	fetch 2, mem_hid_ctrl_remote_cid
+	branch l2cap_send_disconnect_rsp_pkt, blank
+	//set the flag,hid channel close
+	//should we set here?
+	//call HID_mem_lock
+	//fetch 1, mem_hid_cb1
+	//set1 HID_CB_APP_HID_DISCONNECTED,pdata
+	//store 1, mem_hid_cb1
+	//call HID_mem_unlock
+	branch l2cap_send_disconnect_rsp_pkt
+
+l2cap_disconnect_sdp_now:
+	call l2cap_reset_sdp_channel_state
+	fetch 1,mem_upper_sm_ss
+	nbranch l2cap_send_disconnect_rsp_pkt,blank
+	//jam LMP_ENCRYPTION_MODE_REQ,mem_lmo_opcode2
+	//jam UPPERSM_RP_SDP_CONN,mem_upper_sm_remote_page
+	branch l2cap_send_disconnect_rsp_pkt
+l2cap_proc_signal_disconnect_req_rfcomm:
+	copy timeup,temp
+	fetch 2, mem_RFCOMM_remote_CID
+	isub temp,null
+	branch l2cap_disconnect_rfcomm_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_disconnect_rfcomm_now:
+	call l2cap_reset_rfcomm_channel_state
+	branch l2cap_send_disconnect_rsp_pkt
+l2cap_send_disconnect_rsp_pkt:
+	call load_cont_pointers
+	setarg signal_disconnect_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy regA,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	force 8,pdata
+	branch l2cap_proc_signal_disconnect_req_rtn
+l2cap_proc_signal_disconnect_req_err_rtn:
+	call load_cont_pointers
+	branch l2cap_proc_signal_disconnect_req_rtn
+l2cap_proc_signal_disconnect_req_rtn:
+	iadd regB,regB
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_disconnect_rsp:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr
+	copy pdata,timeup
+	ifetch 2,contr
+	copy pdata,temp
+	call save_cont_pointers
+	bpatchx patch22_7,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_hid_int,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_rsp_err_rtn
+l2cap_proc_signal_disconnect_rsp_sdp:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_sdp_remote_cid
+	isub temp,null
+	call l2cap_reset_sdp_channel_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_rfcomm:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_rfcomm_remote_CID
+	isub temp,null
+	call l2cap_reset_rfcomm_channel_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_hid_ctrl_remote_cid
+	isub temp,null
+	call  l2cap_reset_hid_ctrl_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_hid_int:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_hid_int_remote_cid
+	isub temp,null
+	call l2cap_reset_hid_int_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_rtn:
+	call load_cont_pointers
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_disconnect_rsp_err_rtn:
+	branch l2cap_process_one_signal_rtn
+
+/* received an echo request from remote BD.  Will echo the 1st 1 byte back,		*/
+l2cap_proc_signal_echo_req:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	iadd contr,contr
+	setarg 9
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	force 0x0000,pdata
+	istore 2,contw
+	force 4,pdata
+	iadd regB,regB
+	copy regC,pdata
+	isub regA,regC
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_echo_rsp:
+	branch l2cap_process_one_signal_rtn
+
+l2cap_proc_signal_info_rsp:
+	branch l2cap_process_one_signal_rtn
+l2cap_reject_command:
+	force 0,regB
+	call l2cap_get_signal_tx_payload
+	setarg signal_cmd_reject
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 2
+	istore 2,contw
+	setarg cmd_not_understood
+	istore 2,contw
+	increase 6,regB
+	arg 4,regC
+	branch l2cap_process_one_signal_rtn
+
+
+
+l2cap_reset_rfcomm_channel_state:
+	setarg 0
+	store 2,mem_RFCOMM_Tx_pkt_length
+	store 2,mem_RFCOMM_remote_CID
+	jam 0,mem_rfcomm_state
+	rtn
+l2cap_reset_sdp_channel_state:
+	setarg 0
+	store 2,mem_sdp_tx_pkt_length
+	store 2,mem_sdp_remote_cid
+	jam 0,mem_sdp_state
+	rtn
+l2cap_reset_hid_ctrl_state:
+	setarg 0
+	store 2,mem_hid_ctrl_remote_cid
+	jam 0,mem_hid_control_state
+	fetch 1,mem_hid_interrupt_state
+	beq 0,l2cap_reset_hid_disconnected
+	rtn
+
+l2cap_reset_hid_int_state:
+	setarg 0
+	store 2,mem_hid_int_remote_cid
+	jam 0,mem_hid_interrupt_state
+	fetch 1,mem_hid_control_state
+	beq 0,l2cap_reset_hid_disconnected
+	rtn
+	
+l2cap_reset_hid_disconnected:
+	jam BT_EVT_HID_DISCONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event	
+
+l2cap_disconnect_interrupt_req:
+	fetch 1,mem_CONTROL_tasks
+	set0  L2CAP_DISCONNECT_INTERRUPT, pdata
+	store 1,mem_CONTROL_tasks
+	fetch 2, mem_hid_int_remote_cid
+	rtn blank
+	call l2cap_malloc_signal_channel
+	fetch 2, mem_hid_int_remote_cid
+	copy pdata,regA
+	force L2CAP_HID_Interrupt_channel,regB
+	branch l2cap_generate_disconnect_req
+l2cap_disconnect_control_req:
+	fetch 1,mem_CONTROL_tasks
+	set0  L2CAP_DISCONNECT_CONTROL, pdata
+	store 1,mem_CONTROL_tasks
+	fetch 2, mem_hid_ctrl_remote_cid
+	rtn blank
+	call l2cap_malloc_signal_channel
+	fetch 2, mem_hid_ctrl_remote_cid
+	copy pdata,regA
+	force L2CAP_HID_Control_channel,regB
+l2cap_generate_disconnect_req:
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	force signal_disconnect_req,pdata
+	istore 1,contw
+	fetch  1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy regA,pdata
+	istore 2,contw
+	copy regB,pdata
+	istore 2,contw
+	force 0x08,temp //signal tx length in temp
+	branch ml2cap_send_signal
+
+ml2cap_send_signal_connect_req:
+	bpatchx patch23_0,mem_patch23
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	setarg signal_connect_req
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy temp,pdata	 //PSM
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	arg 8,temp
+	branch ml2cap_send_signal
+ml2cap_send_signal_config_req:
+	bpatchx patch23_1,mem_patch23
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	setarg signal_config_req
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0008
+	istore 2,contw
+	/****modigy for nokia*****/
+	copy temp,pdata
+	/*setarg 0x0040*/
+	istore 2,contw
+	setarg 0x0000
+	istore 2,contw
+	setarg 0x01
+	istore 1,contw
+	setarg 0x02
+	istore 1,contw
+	setarg L2CAP_config_MTU_RFCOMM
+	istore 2,contw
+	arg 0xc,temp
+	branch ml2cap_send_signal
+ml2cap_send_signal_disconn_req:
+	bpatchx patch23_2,mem_patch23
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	setarg signal_disconnect_req
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	increase 1,pdata
+	copy contw,regA
+	store 1,mem_ML2CAP_comm_id
+	copy regA,contw
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy temp,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	arg 0x8,temp
+	//branch ml2cap_send_signal
+	//Fall through
+ml2cap_send_signal:
+	storet 2,mem_l2cap_signal_tx_length
+	copy temp,pdata
+	branch l2cap_malloc_discard,blank
+	call l2cap_get_signal_tx_buff
+	fetch 2,mem_l2cap_signal_tx_length
+	istore 2,contw //make sure that length is still in temp!
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	rtn
+
+msdp_send_req_done:
+	fetch 2,mem_sdp_tx_pkt_length
+	branch assert,blank
+	call l2cap_get_sdp_tx_buff
+	fetch 2,mem_sdp_tx_pkt_length
+	istore 2,contw
+	fetch 2,mem_sdp_remote_cid
+	istore 2,contw
+	rtn
+ml2cap_rx_multiplexing:
+	fetch 2, mem_l2cap_rx_pkt_length
+	branch l2cap_rx_reset_state,blank
+	bpatchx patch23_3,mem_patch23
+	fetch 1,mem_l2cap_rx_cid
+	beq L2CAP_signal_channel,ml2cap_call_proc_signal
+	beq L2CAP_SDP_channel,ml2cap_call_proc_sdp
+	beq L2CAP_RFCOMM_channel,l2cap_call_proc_rfcomm
+	beq L2CAP_HID_Control_channel,l2cap_call_proc_hid
+	beq L2CAP_HID_Interrupt_channel,l2cap_call_proc_hid
+	branch l2cap_rx_reset_state
+
+ml2cap_call_proc_signal:
+	bpatchx patch23_4,mem_patch23
+	call l2cap_malloc_signal_channel
+	force 0,regB
+	call l2cap_get_signal_tx_payload
+	copy pdata,contw
+	fetch 2,mem_l2cap_rx_pkt_length
+	copy pdata,regC
+	fetch 2,mem_l2cap_payload_ptr
+	iforce contr
+ml2cap_proc_one_comm_loop:
+	call ml2cap_proc_one_comm
+	increase -4,regC
+	nbranch ml2cap_proc_one_comm_loop,zero
+	copy regB,temp
+	call ml2cap_send_signal
+	branch l2cap_rx_reset_state
+	
+ml2cap_proc_one_comm:
+	ifetch 1,contr
+	beq signal_connect_req,ml2cap_proc_signal_connect_req
+	beq signal_cmd_reject,ml2cap_proc_signal_cmd_reject
+	beq signal_connect_rsp,ml2cap_proc_signal_connect_rsp
+	beq signal_config_rsp,ml2cap_proc_signal_config_rsp
+	beq signal_config_req,ml2cap_proc_signal_config_req
+	beq signal_disconnect_rsp,ml2cap_proc_signal_disconn_rsp
+	beq signal_disconnect_req,ml2cap_proc_signal_disconn_req
+	beq signal_echo_req,l2cap_proc_signal_echo_req
+	beq signal_info_req,ml2cap_proc_signal_info_req
+	branch ml2cap_proc_send_reject
+
+ml2cap_proc_signal_connect_req:
+	call save_cont_pointers
+	//jam NO_RECONNECTION,memui_reconnect_mode
+	call load_cont_pointers
+	branch l2cap_proc_signal_connect_req
+ml2cap_proc_signal_cmd_reject:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+mvptr:
+	ifetch 1,contr
+	increase -1,regA
+	nbranch mvptr,zero
+	rtn
+ml2cap_proc_signal_connect_rsp:
+	ifetch 1,contr //id
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA	//length
+	ifetch 2,contr
+	copy pdata,timeup	//destination	cid
+	ifetch 2,contr
+	copy pdata,temp	//source	cid
+	ifetch 2,contr 		// result
+	sub pdata,0,null
+	branch ml2cap_proc_signal_connect_rsp_sucessful,zero
+	beq L2CAP_connect_refused_PSM_unsupported,ml2cap_proc_signal_connect_refused_result
+	beq L2CAP_connect_refused_no_resources,ml2cap_proc_signal_connect_refused_result
+	branch ml2cap_proc_signal_connect_rsp_mnosucc
+ml2cap_proc_signal_connect_refused_result:
+	jam BT_EVT_ML2CAP_CONN_REFUSED,mem_fifo_temp
+	call ui_ipc_send_event
+ml2cap_proc_signal_connect_rsp_mnosucc:
+	ifetch 2,contr //reason
+	branch mnosucc
+ml2cap_proc_signal_connect_rsp_sucessful:
+	call save_cont_pointers
+	//fetch 1,mem_ML2CAP_comm_id
+	//icompare 0xff,queue
+	//nbranch mnosucc1,true
+	bpatchx patch23_5,mem_patch23
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_rfcomm,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_hid_int,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_hid_ctrl,zero
+	branch mnosucc
+ml2cap_proc_signal_connect_rsp_sdp:
+	copy timeup,pdata
+	store 2,mem_sdp_remote_cid
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_sdp_state
+	branch mnosucc1
+ml2cap_proc_signal_connect_rsp_rfcomm:
+	copy timeup,pdata
+	store 2,mem_RFCOMM_remote_CID
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_rfcomm_state
+	branch mnosucc1
+ml2cap_proc_signal_connect_rsp_hid_ctrl:
+	copy timeup,pdata
+	store 2,mem_hid_ctrl_remote_cid
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_hid_control_state
+	branch mnosucc1
+ml2cap_proc_signal_connect_rsp_hid_int:
+	copy timeup,pdata
+	store 2,mem_hid_int_remote_cid
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_hid_interrupt_state
+	//branch mnosucc1
+
+mnosucc1:
+	call load_cont_pointers
+mnosucc:
+	copy regC,pdata
+	isub regA,regC
+	rtn
+
+ml2cap_proc_signal_config_rsp:
+	ifetch 1,contr		//	Ident
+	copy pdata,queue
+	ifetch 2,contr		//	SigLen
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr		//	DestnCID
+	copy pdata,timeup
+	ifetch 2,contr
+	ifetch 2,contr		//	Get the result value, check success
+	nbranch mcrsdone1,blank
+	call save_cont_pointers
+	//fetch 1,mem_ML2CAP_comm_id
+	//icompare 0xff,queue
+	//nbranch mcfrsdone,true
+	copy timeup,temp
+	bpatchx patch23_6,mem_patch23
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_hid_int,zero
+ml2cap_proc_signal_config_rsp_sdp:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_sdp_state
+	rtn
+ml2cap_proc_signal_config_rsp_rfcomm:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_rfcomm_state
+	rtn
+ml2cap_proc_signal_config_rsp_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_hid_control_state
+	rtn
+ml2cap_proc_signal_config_rsp_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_hid_interrupt_state
+	jam BT_EVT_HID_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+mcfrsdone:
+	call load_cont_pointers
+mcrsdone1:
+	increase -6,regA
+mloop2:
+	branch mcrsdone,zero
+	increase 1,contr
+	increase -1,regA
+	branch mloop2
+mcrsdone:
+	rtn
+ml2cap_proc_signal_config_req:
+	ifetch 1,contr		//	Ident
+	copy pdata,queue
+	ifetch 2,contr		//	SigLen
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr		//	DestnCID
+	increase 2,contr
+	copy pdata,temp
+	setarg  signal_config_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	increase 2,regA
+	copy regA,pdata
+	istore 2,contw
+	call save_cont_pointers
+	bpatchx patch23_7,mem_patch23
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_hid_int,zero
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_sdp:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_sdp_state
+	bbit1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,ml2cap_proc_signal_config_req_sdp_nsndreq
+	fetcht 1,mem_CONTROL_tasks
+	set1 L2CAP_init_Config_Req,temp
+	storet 1,mem_CONTROL_tasks
+	copy queue,pdata
+	increase 1,pdata
+	store 1,mem_config_identifier
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_sdp_state
+ml2cap_proc_signal_config_req_sdp_nsndreq:
+	fetch 2,mem_sdp_remote_cid
+	store 2,mem_config_req_dest_CID
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_rfcomm:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_rfcomm_state
+	fetch 2,mem_RFCOMM_remote_CID
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_hid_control_state
+	fetch 2,mem_hid_ctrl_remote_cid
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_hid_interrupt_state
+	fetch 2,mem_hid_int_remote_cid
+	//branch mcfgrq_done
+
+mcfgrq_done:
+	copy pdata,timeup
+	call load_cont_pointers
+/*******for Nokia**************/
+	copy timeup,pdata
+	/*setarg 0x0040*/
+	istore 2,contw
+	force 0x0000,pdata
+	istore 2,contw
+	force 0x0000,pdata
+	istore 2,contw
+	force 10,pdata
+	iadd regB,regB
+	increase -6,regA
+mloop1:
+	branch mcrqdone,zero
+	ifetch 1,contr
+	istore 1,contw
+	increase 1,regB
+	increase -1,regA
+	branch mloop1
+mcrqdone:
+	rtn
+ml2cap_proc_signal_disconn_req:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,timeup
+	call save_cont_pointers
+	bpatchx patch24_0,mem_patch24
+	setarg L2CAP_SDP_channel
+	copy regA,temp
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_sdp,zero
+	setarg L2CAP_HID_Control_channel
+	copy regA,temp
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	copy regA,temp
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_hid_int,zero
+	branch mclsrfc
+ml2cap_proc_signal_disconn_sdp:
+	setarg 0x0000
+	store 2,mem_sdp_tx_pkt_length
+	store 2,mem_sdp_remote_cid
+	store 1,mem_sdp_state
+	branch mclssdp
+ml2cap_proc_signal_disconn_hid_ctrl:
+	call l2cap_reset_hid_ctrl_state
+	branch mclssdp
+ml2cap_proc_signal_disconn_hid_int:
+	call l2cap_reset_hid_int_state
+	//call HID_mem_lock
+	//fetch 1, mem_hid_cb1
+	//set1 HID_CB_APP_HID_DISCONNECTED,pdata
+	//store 1, mem_hid_cb1
+	//call HID_mem_unlock
+	branch mclssdp
+mclsrfc:
+	setarg 0x0000
+	store 2,mem_RFCOMM_Tx_pkt_length
+mclssdp:
+	call load_cont_pointers
+	setarg signal_disconnect_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy regA,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	force 8,pdata
+	iadd regB,regB
+	rtn
+
+ml2cap_proc_signal_disconn_rsp:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,timeup
+	ifetch 2,contr
+	copy pdata,temp
+	call save_cont_pointers
+	bpatchx patch24_1,mem_patch24
+	fetch 1,mem_ML2CAP_comm_id
+	icompare 0xff,queue
+	nbranch mdisdone,true
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_rsp_rfcomm,zero
+	branch mdisdone
+ml2cap_proc_signal_disconn_rsp_sdp:
+	jam 0,mem_sdp_remote_cid
+	jam 0,mem_sdp_state
+	branch mdisdone
+ml2cap_proc_signal_disconn_rsp_rfcomm:
+	//
+	//
+mdisdone:
+	call load_cont_pointers
+	copy regC,pdata
+	isub regA,regC
+	rtn
+
+ml2cap_proc_send_reject:
+	setarg signal_cmd_reject
+	istore 1,contw
+	ifetch 1,contr
+	istore 1,contw
+	setarg 0x0002
+	istore 2,contw
+	setarg 0x0000
+	istore 2,contw
+	setarg 0x0006
+	iadd regB,regB
+	force 4,regC
+	rtn
+	
+//l2cap command id, 0 is not allowed
+l2cap_get_req_id:
+	fetch 1,mem_ML2CAP_comm_id
+	increase 1,pdata
+	bne 0,l2cap_get_req_id_ok
+	increase 1,pdata
+l2cap_get_req_id_ok:
+	store 1,mem_ML2CAP_comm_id
+	rtn
+
+
+/*********************************************************/
+//char* malloc(short len)
+//input: regA -> len
+//rtn: regB -> pbuff;return from pdata
+//val: queue -> i
+//val: timeup -> buff_cnt
+/*********************************************************/
+l2cap_malloc:
+	bpatchx patch24_2,mem_patch24
+	arg 0,regb
+	call l2cap_malloc_is_fifo_full
+	nbranch assert,blank//assert when fifo full
+	call l2cap_malloc_get_full_map
+	arg mem_tx_buff0,regB//pbuff = buff0;
+	arg 0,queue // i = 0;
+l2cap_malloc_loop:
+	fetcht 1,mem_used_map
+	qisolate1 temp
+	branch l2cap_malloc_next,true//if(1 == (used_map & (1 << i)))goto next;
+	call l2cap_malloc_enough
+	sub timeup,0,null// (0 - timeup)
+	branch l2cap_malloc_next,positive//if(buff_cnt <= 0)goto next;
+	call l2cap_malloc_into_fifo
+	branch l2cap_malloc_rtn//return (pbuff);
+l2cap_malloc_next:
+	increase 128,regB//pbuff += BUFF_SIZE;//point to next buff
+	increase 1,queue
+	setarg 8//BUFF_MAX_COUNT
+	isub queue,null //BUFF_MAX_COUNT - i
+	branch l2cap_malloc_loop,positive//while(i < buff_max_count)
+	arg 0,regB//return NULL
+l2cap_malloc_rtn:
+	copy regB,pdata
+	branch assert,blank
+	rtn//return pointer via pdata
+	
+/*********************************************************/
+//void* l2cap_malloc_fifo_out(void)
+//output:len -> temp
+//output:ptr ->pdata
+//only get ptr,not free
+/*********************************************************/
+l2cap_malloc_fifo_out:
+	bpatchx patch24_3,mem_patch24
+	call l2cap_malloc_fifo_get_first_ptr
+	increase 1,contr
+	ifetch 2,contr //ptr ->pdata
+	rtn 
+
+/*********************************************************/
+//void free_first_buff_in_fifo(void)
+//only free the first one
+/*********************************************************/
+l2cap_malloc_free:
+	bpatchx patch24_4,mem_patch24
+	call l2cap_malloc_fifo_get_first_ptr
+	copy contr,contw
+	copy contr,temp
+	setarg 0
+	istore 3,contw
+	rtn
+/*********************************************************/
+//void l2cap_malloc_discard(void)
+//discard the latest malloc
+/*********************************************************/
+l2cap_malloc_discard:
+	bpatchx patch24_5,mem_patch24
+	call l2cap_malloc_is_fifo_empty
+	branch assert,blank
+	fetch 3,mem_tx_fifo2
+	store 3,mem_tx_fifo3
+	fetch 3,mem_tx_fifo1
+	store 3,mem_tx_fifo2
+	fetch 3,mem_tx_fifo0
+	store 3,mem_tx_fifo1
+	rtn
+/*********************************************************/
+//bool fifo_is_full(void)
+//blank == 1: not full
+//blank == 0: full
+/*********************************************************/
+l2cap_malloc_is_fifo_full:
+	bpatchx patch24_6,mem_patch24
+	fetch 3,mem_tx_fifo0
+	rtn
+/*********************************************************/
+//bool fifo_nearly_full(void)
+//blank == 1: nearly full
+//blank == 0: not nearly full
+/*********************************************************/
+l2cap_malloc_is_fifo_nearly_full:
+	bpatchx patch24_7,mem_patch24
+	fetch 3,mem_tx_fifo1
+	rtn
+/*********************************************************/
+//bool fifo_is_empty(void)
+//blank == 1: empty
+//blank == 0: not empty
+/*********************************************************/
+l2cap_malloc_is_fifo_empty:
+	bpatchx patch25_0,mem_patch25
+	fetch 3,mem_tx_fifo3
+	rtn
+/*********************************************************/
+//char* l2cap_malloc_fifo_get_first_ptr(void)
+//output:contr  -->ptr
+/*********************************************************/	
+l2cap_malloc_fifo_get_first_ptr:
+	call l2cap_malloc_is_fifo_empty
+	branch assert,blank // fifo is empty
+	arg mem_tx_fifo0,contr
+l2cap_malloc_free_loop:
+	ifetch 3,contr
+	branch l2cap_malloc_free_loop,blank
+	increase -3,contr
+	rtn
+
+/*********************************************************/
+//char* l2cap_malloc_get_full_map(void)
+//output:mem_used_map  -->full_map
+//add all maps into one
+/*********************************************************/	
+l2cap_malloc_get_full_map:
+	bpatchx patch25_1,mem_patch25
+	arg 4,loopcnt
+	arg mem_tx_fifo0_map,contr
+	arg 0,temp
+l2cap_malloc_get_full_map_loop:	
+	ifetch 3,contr
+	and pdata,0xff,pdata
+	ior temp,temp
+	loop l2cap_malloc_get_full_map_loop
+	storet 1,mem_used_map
+	rtn
+/*********************************************************/
+//void buff_into_fifo(char buff_index, char buff_cnt, short len)
+//input: regA -> len
+//input: regC -> buff_index
+//input: timeup -> buff_cnt
+//val:temp ->   (fifo->map)
+/*********************************************************/
+l2cap_malloc_into_fifo:
+	bpatchx patch25_2,mem_patch25
+	call l2cap_malloc_is_fifo_full
+	nbranch assert,blank //fifo full
+	call l2cap_malloc_is_fifo_empty
+	branch l2cap_malloc_into_fifo_no_push,blank//fifo empty, no need to push
+	fetch 3,mem_tx_fifo1
+	store 3,mem_tx_fifo0
+	ifetch 3,contr//mem_tx_fifo2
+	istore 3,contw//mem_tx_fifo1
+	ifetch 3,contr//mem_tx_fifo3
+	istore 3,contw//mem_tx_fifo2
+	setarg 0
+	istore 3,contw//mem_tx_fifo3
+l2cap_malloc_into_fifo_no_push:
+	arg 0,temp
+	copy timeup,pdata
+	iadd queue,pdata
+l2cap_malloc_into_fifo_loop:
+	qset1 temp//fifo->map |= 1 << i;
+	increase 1,queue
+	isub queue,null
+	nbranch l2cap_malloc_into_fifo_loop,zero
+	//map in temp
+	lshift8 regB,pdata
+	ior temp,pdata
+	store 3,mem_tx_fifo3
+	rtn
+
+/*********************************************************/
+//char is_size_enough(char buff_index, short len)
+//input: regA -> len
+//input: queue -> buff_index
+//rtn: timeup -> buff_cnt
+//val: max_size_fom_buff_index -> temp
+//val: i -> loopcnt
+/*********************************************************/
+l2cap_malloc_enough:
+	bpatchx patch25_3,mem_patch25
+	call l2cap_malloc_get_full_map
+	copy queue,regC//restore buff_index to regC
+	arg 0,temp
+	arg 0,timeup//default return val
+	//increase 1,queue
+l2cap_malloc_enough_loop:
+	copy queue,pdata
+	beq 8,l2cap_malloc_enough_end
+	fetch 1,mem_used_map
+	qisolate1 pdata
+	branch l2cap_malloc_enough_end,true
+	increase 128,temp
+	increase 1,queue
+	copy regA,pdata
+	isub temp,null
+	branch l2cap_malloc_enough_end,zero//(max_size_fom_buff_index ==  len)
+	branch l2cap_malloc_enough_loop,positive//(max_size_fom_buff_index <  len)
+l2cap_malloc_enough_end:
+	copy temp,pdata
+	isub regA,null
+	nbranch l2cap_malloc_enough_rtn,positive// max_size_fom_buff_index - len > 0
+	copy queue,pdata//i
+	copy regC,temp//buff_index
+	isub temp,timeup//return (i - buff_index)
+l2cap_malloc_enough_rtn:
+	copy regC,queue//restore buff_index to queue
+	rtn
+	
+
+l2cap_malloc_signal_channel:
+	bpatchx patch25_4,mem_patch25
+	arg L2CAP_SIGNAL_MALLOC_SIZE,regA
+	call l2cap_malloc
+	store 2,mem_l2cap_signal_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_l2cap_signal_tx_payload_ptr
+	setarg 0
+	store 2,mem_l2cap_signal_tx_length
+	rtn
+
+l2cap_get_signal_tx_buff:
+	fetch 2,mem_l2cap_signal_tx_buff_ptr
+	branch l2cap_util_pdata_to_contw
+
+l2cap_get_signal_tx_payload:
+	fetch 2,mem_l2cap_signal_tx_payload_ptr
+	branch l2cap_util_pdata_to_contw
+
+
+l2cap_malloc_sdp_channel:
+	bpatchx patch25_5,mem_patch25
+	arg SDP_MALLOC_SIZE,regA
+	call l2cap_malloc
+	store 2,mem_sdp_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_sdp_tx_payload_ptr
+	setarg 0
+	store 2,mem_sdp_tx_pkt_length
+	rtn
+
+l2cap_get_sdp_tx_buff:
+	fetch 2,mem_sdp_tx_buff_ptr
+	branch l2cap_util_pdata_to_contw
+
+l2cap_get_sdp_tx_payload:
+	fetch 2,mem_sdp_tx_payload_ptr
+	branch l2cap_util_pdata_to_contw
+
+
+l2cap_malloc_rfcomm_channel:
+	bpatchx patch25_6,mem_patch25
+	call push_stack
+	jam RFCOMM_MALLOC_FAIL,mem_rfcomm_malloc_fail_flag
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	arg RFCOMM_MALLOC_SIZE,regA
+	call l2cap_malloc
+	store 2,mem_rfcomm_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_rfcomm_tx_payload_ptr
+	setarg 0
+	store 2,mem_rfcomm_tx_pkt_length
+	jam RFCOMM_MALLOC_SUCCEED,mem_rfcomm_malloc_fail_flag
+	branch pop_stack
+
+l2cap_get_rfcomm_tx_buff:
+	fetch 2,mem_rfcomm_tx_buff_ptr
+	branch l2cap_util_pdata_to_contw
+	
+l2cap_util_pdata_to_contw:
+	branch assert,blank
+	copy pdata,contw
+	rtn
+	
+
+l2cap_lpm_save_calc_len:
+	bpatchx patch25_7,mem_patch25
+	arg 0,regb
+	arg mem_tx_fifo0_map,rega
+	increase -2,rega
+l2cap_lpm_save_calc_len_loop:
+	increase 2,rega
+	setarg mem_tx_fifo_end
+	isub rega,null
+	branch l2cap_lpm_save_calc_len_end,zero //end of 2lcap tx fifo
+	ifetch 1,rega
+	increase 1,rega
+	branch l2cap_lpm_save_calc_len_loop,blank
+	ifetcht 2,rega
+	ifetch 2,temp
+	iadd regb,regb
+	increase 4,regb //l2cap header len
+	branch l2cap_lpm_save_calc_len_loop
+l2cap_lpm_save_calc_len_end:
+	copy regb,pdata
+	rtn
+
+
+l2cap_lpm_get_wake_lock:
+	arg wake_lock_l2cap_tx,queue
+	branch lpm_get_wake_lock
+
+l2cap_lpm_put_wake_lock:
+	arg wake_lock_l2cap_tx,queue
+	branch lpm_put_wake_lock
+	
+l2cap_lpm_save_txbuf:
+	bpatchx patch26_0,mem_patch26
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	rtn blank
+	call l2cap_lpm_save_calc_len
+	arg l2cap_lpm_txbuf_len,temp
+	isub temp,null
+	branch l2cap_lpm_get_wake_lock,positive //no enougth space to save l2cap tx data
+	call l2cap_lpm_put_wake_lock
+	arg mem_l2cap_lpm_txbuf,contw
+	arg mem_tx_fifo0,rega
+l2cap_lpm_save_txbuf_loop:
+	setarg mem_tx_fifo_end
+	isub rega,null
+	rtn zero //end of 2lcap tx fifo
+	ifetch 1,rega  //mem_tx_fifoX_map
+	increase 1,rega
+	nbranch l2cap_lpm_save_txbuf_nempty,blank
+	istore 2,contw // length = 0
+	increase 2,rega
+	branch l2cap_lpm_save_txbuf_loop
+l2cap_lpm_save_txbuf_nempty:
+	ifetch 2,rega //ptr
+	increase 2,rega
+	copy pdata,contr
+	ifetch 2,contr  //l2cap len
+	istore 2,contw
+	copy pdata,loopcnt
+	increase 2,loopcnt //add CID len
+	call memcpy
+	branch l2cap_lpm_save_txbuf_loop
+	
+l2cap_lpm_load_txbuf:
+	bpatchx patch26_1,mem_patch26
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	rtn blank
+	arg mem_tx_fifo0_ptr,rega
+	increase -3,rega //mem_tx_fifo0_ptr -3
+	arg mem_l2cap_lpm_txbuf,contr
+l2cap_lpm_load_txbuf_loop:
+	increase 3,rega //mem_tx_fifoX_ptr
+	setarg mem_tx_fifo_end+1
+	isub rega,null
+	rtn zero //end of 2lcap tx fifo
+	ifetch 2,contr
+	branch l2cap_lpm_load_txbuf_loop,blank
+	increase 4,pdata //l2cap header len
+	copy pdata,loopcnt
+	copy contr,regb
+	ifetch 2,rega //ptr
+	copy pdata,contw
+	copy regb,contr
+	increase -2,contr
+	call memcpy
+	branch l2cap_lpm_load_txbuf_loop
+	
+
+
+	
+//******************************************//
+//*************LE INIT ****************//
+//******************************************//
+
+
+le_init_conn:
+	bpatchx patch26_2,mem_patch26
+	disable wake
+	jam 1,mem_le_conn_handle
+	jam 3,mem_le_state
+	jam 1,mem_le_arq
+	setarg -1
+	store 2,mem_le_event_count
+	force 0,pdata
+	store 1,mem_le_ch
+	store 1,mem_le_op
+	store 3,mem_sniff_rcv
+	store 3,mem_sniff_lost
+	store 5,mem_le_pcnt_tx
+	set1 39,pdata
+	store 5,mem_le_pcnt_rx
+	jam 1,mem_le_txheader
+	jam 0,mem_le_txlen
+	branch le_supervision_flush
+
+le_init_master:
+	bpatchx patch26_3,mem_patch26
+	enable master
+	jam lemode_master,mem_le_mode
+	jam 1,mem_le_att_handle
+	jam 1,mem_le_search_handle_start
+	setarg 0xffff
+	store 2,mem_le_search_handle_end
+	force 0,pdata
+	store 5,mem_le_pcnt_rx
+	set1 39,pdata
+	store 5,mem_le_pcnt_tx	
+	branch le_init_conn
+
+
+le_init_slave:
+	bpatchx patch26_4,mem_patch26
+	disable master
+ 	setarg 0x17
+ 	store 2,mem_le_remote_mtu
+	jam lemode_slave,mem_le_mode
+	jam 0,mem_le_adv_enable
+	jam 0,mem_lpm_current_mult
+	jam FLAG_LE_PAIRING_NULL,mem_le_pairing_state
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	fetch 2,mem_le_superto
+	store 2,mem_le_init_superto
+	fetch 2,mem_le_tsniff
+	mul32 pdata,5,pdata
+	rshift4 pdata,pdata
+	store 2,mem_le_superto			// vol.6 part B 4.5.2 only 6*conninterval before establish
+	branch le_init_conn
+	
+
+//******************************************//
+//*************LE main process*********//
+//******************************************//
+le_dispatch:
+	call le_enable
+	call le_scan
+	call le_adv
+	branch le_disable
+
+le_conn_dispatch:
+	bpatchx patch26_5,mem_patch26
+	call le_enable
+	call app_process_ble
+	fetch 1,mem_le_mode
+	beq lemode_master,le_master_dispatch
+	branch le_slave_dispatch
+	
+//******************************************//
+//***********LE master process*********//
+//******************************************//
+	
+le_master_dispatch:
+	bpatchx patch26_6,mem_patch26
+	enable master
+	call le_supervision_update
+	branch le_master_disconn,positive
+	call check_ble_disabled
+	call le_setup
+	call le_prepare_tx
+	disable match
+	call le_transmit_receive_sifs
+	nrtn match
+	bpatchx patch26_7,mem_patch26
+	fetch 1,mem_le_conn_rcv
+	increase 1,pdata
+	store 1,mem_le_conn_rcv
+	call le_acknowledge
+	disable master
+	rtn
+	
+le_master_disconn:
+	call le_disconnect
+	disable master
+	rtn
+	
+//******************************************//
+//***********LE slave process***********//
+//******************************************//
+le_slave_dispatch:
+	bpatchx patch27_0,mem_patch27
+	jam 0,mem_le_md_count
+	call sp_calc_sequence_256
+	call le_secure_connect_sm
+	disable attempt
+	call le_supervision_update
+	branch le_slave_disconn,positive
+	call check_ble_disabled
+	call le_setup
+	call le_receive_slave
+	nbranch le_slave_unsync,sync	// vol.6 part B 4.5.1 respond even crc error
+	call le_got_first_packet
+	branch le_slave_match,match
+	branch le_slave_cont
+	
+
+le_slave_match:
+	bpatchx patch27_1,mem_patch27
+	fetch 1,mem_le_md_count
+	pincrease 1
+	store 1,mem_le_md_count
+	beq LE_MD_MAX_COUNT,le_slave_cont
+	call le_acknowledge
+	call le_prepare_tx
+	call le_transmit_norx
+	call le_parse
+	fetch 2,mem_cb_ble_transmit
+	call callback_func
+	call le_check_md
+	branch le_slave_more_data,user
+le_slave_cont:
+	bpatchx patch27_2,mem_patch27
+	call le_pairing_sm
+ 	call le_check_paring_time
+	call check_51cmd
+	fetch 1,mem_le_op
+	bbit1 op_disconn,le_slave_disconn
+le_slave_unsync:
+	bpatchx patch27_3,mem_patch27
+	call le_lpm_set_mult
+	call le_update_channel_map
+	call le_update_param
+	branch calc_clke_offset
+
+
+le_check_md:
+	disable user
+	bmark1 mark_ble_rx_md,enable_user
+	bmark1 mark_ble_tx_md,enable_user
+	rtn
+
+
+le_slave_more_data:
+	bpatchx patch27_4,mem_patch27
+	enable attempt
+	call le_transmit_receive_sifs_notx
+	branch le_slave_match,match
+	branch le_slave_cont
+
+le_slave_disconn:
+
+	//fall through
+le_disconnect:
+	bpatchx patch27_5,mem_patch27
+	call le_clear_connection_info
+	call app_disconn_reason_collect_ble
+	call sp_initialize_256
+	jam BT_EVT_LE_DISCONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_clear_connection_info:
+	setarg 0
+	store 9,mem_le_tx_buff_used
+	jam 0,mem_le_conn_handle
+	jam lemode_idle,mem_le_mode
+	jam 0,mem_le_state
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	jam FLAG_LE_PAIRING_NULL,mem_le_pairing_state
+	rtn
+	
+le_got_first_packet:
+	bpatchx patch27_6,mem_patch27
+	fetch 1,mem_le_conn_rcv
+	increase 1,pdata
+	store 1,mem_le_conn_rcv
+	fetch 1,mem_le_state
+	rtnbit1 lestate_got_first_packet
+	set1 lestate_got_first_packet
+	store 1,mem_le_state
+	fetch 2,mem_le_init_superto
+	store 2,mem_le_superto
+	setarg 0
+	store 4,mem_le_transmit_window
+	rtn
+
+
+le_enable:
+	bpatchx patch27_7,mem_patch27
+	jam 0x36,rf_adc_goff        /*For BLE, tune AGC_gain_offset, Max added*/
+	jam 0x5f,rf_agc_nsat        //for BLE
+	enable le
+	jam 7,rfen_ulp			/* enable ulp */
+	call check_ble_disabled
+	fetch 1,mem_250k_freq_enable	//default: 0
+	rtn blank
+	jam 0xb8,rf_iq_gain
+	rtn
+	
+le_disable:
+	bpatchx patch28_0,mem_patch28
+	jam 0x2e,rf_adc_goff        /*For BR/EDR, tune AGC_gain_offset, Max added*/
+	jam 0xff,rf_agc_nsat         //for EDR&BR
+	disable le
+	jam 3,rfen_ulp
+	arg 0,stop_watch
+	rtn
+	
+le_prep:
+	disable enable_crc
+	disable enable_white
+	fetch 3,mem_le_crcinit
+	iforce crc24_init
+	fetch 1,mem_le_ch_mapped
+	reverse pdata,temp
+	set1 1,temp
+	rshift temp,white_init
+	rtn
+	
+
+lerx_setfreq:
+	call le_setfreq
+	call set_freq_rx
+	setarg param_pll_setup
+	call sleep
+	branch rf_rx_enable
+
+letx_setfreq:
+	branch txon,match
+letx_setfreq0:
+	call le_setfreq
+	branch set_freq_tx
+le_setfreq:
+	bpatchx patch28_1,mem_patch28
+	call set_sync_on
+	fetch 1, mem_le_testtype
+	nbranch le_ctf_test,blank
+	fetch 1,mem_le_ch_mapped
+	sub pdata,36,null
+	branch le_ctf_normal,positive
+	force 0,temp
+	rtneq 37
+	force 24,temp
+	rtneq 38
+	force 78,temp
+	rtn
+	
+le_ctf_normal:
+	sub pdata,10,null
+	branch le_ctf_low,positive
+	increase 1,pdata
+	
+le_ctf_low:	
+	lshift pdata,pdata
+	add pdata,2,temp
+	rtn
+	
+le_ctf_test:
+	fetch 1,mem_le_ch_mapped
+	lshift pdata,temp
+	rtn
+
+le_sca_map:
+	arg 500,temp
+	rtn blank
+	arg 250,temp
+	rtneq 1
+	arg 150,temp
+	rtneq 2
+	arg 100,temp
+	rtneq 3
+	arg 75,temp
+	rtneq 4
+	arg 50,temp
+	rtneq 5
+	arg 40,temp
+	rtneq 6
+	arg 20,temp
+	rtn
+
+
+	
+le_adv_access:
+	setarg 0x8e89be
+	lshift8 pdata,pdata
+	or_into 0xd6,pdata
+	iforce access
+	setarg 0x555555
+	store 3,mem_le_crcinit
+	rtn
+
+le_setup:
+	bpatchx patch28_2,mem_patch28
+	enable swfine
+	fetch 4,mem_le_access
+	iforce access
+	call le_map_channel
+	setarg 0x200
+	branch le_setup_master,master
+	fetch 2,mem_le_receive_window
+	rshift pdata,pdata
+le_setup_master:
+	arg param_pll_setup,temp
+	iadd temp,pdata
+	call ahead_window
+	deposit clke
+	store 6,mem_le_rxon_ts
+	rtn
+
+le_next_adv_channel:
+	bpatchx patch28_3,mem_patch28
+	fetch 1,mem_le_ch_mapped
+	beq 37,le_next_adv_channel_curr_channel_37
+	beq 38,le_next_adv_channel_curr_channel_38
+	beq 39,le_next_adv_channel_curr_channel_39
+	branch le_next_adv_channel_curr_channel_39
+
+le_next_adv_channel_curr_channel_37:
+	fetcht 1,mem_le_adv_channel_map
+	isolate1 BIT_ADV_CHANNEL_MAP_38,temp		//check 38 channel enable
+	branch set_le_next_adv_channel_38,true
+	isolate1 BIT_ADV_CHANNEL_MAP_39,temp		//check 39 channel enable
+	branch set_le_next_adv_channel_39,true
+	branch set_le_next_adv_channel_37
+
+
+le_next_adv_channel_curr_channel_38:
+	fetcht 1,mem_le_adv_channel_map
+	isolate1 BIT_ADV_CHANNEL_MAP_39,temp		//check 39 channel enable
+	branch set_le_next_adv_channel_39,true
+	isolate1 BIT_ADV_CHANNEL_MAP_37,temp		//check 37 channel enable
+	branch set_le_next_adv_channel_37,true
+	branch set_le_next_adv_channel_38
+
+
+le_next_adv_channel_curr_channel_39:
+	fetcht 1,mem_le_adv_channel_map
+	isolate1 BIT_ADV_CHANNEL_MAP_37,temp		//check 37 channel enable
+	branch set_le_next_adv_channel_37,true
+	isolate1 BIT_ADV_CHANNEL_MAP_38,temp		//check 38 channel enable
+	branch set_le_next_adv_channel_38,true
+	branch set_le_next_adv_channel_39
+
+
+
+set_le_next_adv_channel_37:
+	jam 37,mem_le_ch_mapped
+	fetch 1,mem_le_adv_channel_map_temp
+	set1 BIT_ADV_CHANNEL_MAP_37,pdata
+	store 1,mem_le_adv_channel_map_temp
+	rtn
+
+set_le_next_adv_channel_38:
+	jam 38,mem_le_ch_mapped
+	fetch 1,mem_le_adv_channel_map_temp
+	set1 BIT_ADV_CHANNEL_MAP_38,pdata
+	store 1,mem_le_adv_channel_map_temp
+	rtn
+
+set_le_next_adv_channel_39:
+	jam 39,mem_le_ch_mapped
+	fetch 1,mem_le_adv_channel_map_temp
+	set1 BIT_ADV_CHANNEL_MAP_39,pdata
+	store 1,mem_le_adv_channel_map_temp
+	rtn
+
+
+
+le_context_nexthop:
+	bpatchx patch28_4,mem_patch28
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	rtnbit0 mode_le
+	add rega,coffset_le_event_cnt,contw
+	ifetch 2,contw
+	increase 1,pdata
+	istore 2,contw
+	add rega,coffset_le_hop,contr
+	ifetch 1,contr
+	add rega,coffset_le_ch,contw
+	ifetcht 1,contw
+	iadd temp,pdata
+	sub pdata,36,null
+	branch le_nexthop_nowrap,positive
+	increase -37,pdata
+le_nexthop_nowrap:
+	istore 1,contw
+	rtn
+
+
+le_calc_channel_map:
+	bpatchx patch28_5,mem_patch28
+	fetch 5,mem_le_channel_map
+	force 0,temp
+	force 37,loopcnt
+le_count_channels_loop:
+	bbit0 0,le_count_channels_notused
+	increase 1,temp
+le_count_channels_notused:
+	rshift pdata,pdata
+	loop le_count_channels_loop
+	add temp,-1,pdata
+	store 1,mem_le_channels
+	rtn
+
+le_map_channel:
+	bpatchx patch28_6,mem_patch28
+	fetch 1,mem_le_ch
+	iforce queue
+	fetcht 5,mem_le_channel_map
+	qisolate1 temp
+	branch le_map_channel_end,true
+le_map_channel_next:
+	bpatchx patch28_7,mem_patch28
+	fetch 1,mem_le_channels
+	isub queue,pdata
+	branch le_map_channel_cont,positive
+	sub pdata,-1,queue
+	branch le_map_channel_next
+le_map_channel_cont:
+	copy queue,loopcnt
+	force 0,queue
+le_map_channel_loop:
+	qisolate1 temp
+	branch le_map_channel_skip,true
+	increase 1,loopcnt
+le_map_channel_skip:
+	deposit loopcnt
+	branch le_map_channel_end,blank
+	increase 1,queue
+	increase -1,loopcnt
+	branch le_map_channel_loop
+le_map_channel_end:
+	deposit queue
+	store 1,mem_le_ch_mapped
+	rtn
+
+
+le_wait_tx:
+	branch le_wait_master,master
+	until null,timeout
+	rtn
+	
+le_wait_master:
+	arg 0xea0,timeup
+	until clkn_rt,meet
+	rtn
+
+le_receive_adv:
+	disable swfine
+	fetch 2,mem_le_scan_window
+	copy pdata,timeup
+	branch le_receive_packet
+
+
+le_receive_slave:
+	bpatchx patch29_0,mem_patch29
+	enable swfine
+	fetch 2,mem_le_receive_window
+	fetcht 4,mem_le_transmit_window
+	iadd temp,timeup
+le_receive_packet:
+	call lerx_setfreq
+le_receive_rxon:
+	bpatchx patch29_1,mem_patch29
+	call le_prep
+	disable match
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	copy timeup,stop_watch
+	correlate null,timeout
+	branch le_receive_on_attempt,attempt
+	copy clke,temp
+	storet 6,mem_sync_clke
+le_receive_on_attempt:
+	nbranch end_of_packet,sync
+	branch le_receive_skip,attempt
+	arg param_clke_cal_le,clke_rt
+	copy bt_clk,clke_bt
+	fetch 1,mem_le_state
+	bbit0 lestate_got_first_packet,le_receive_skip
+	call lpm_adjust_clk,wake
+le_receive_skip:
+	bpatchx patch29_2,mem_patch29
+	call save_rssi
+	enable enable_white
+	enable enable_crc
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	store 1,mem_le_rxbuf
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	and pdata,0x3f,loopcnt
+	branch lerx_nopayload,zero
+	
+lerx_loop:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop lerx_loop
+	
+lerx_nopayload:
+	bpatchx patch29_3,mem_patch29
+	parse demod,bucket,24	
+	enable swfine
+	arg param_sifs,stop_watch		// start SIFS timer after last bit of crc
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	branch end_of_packet,crc_failed
+	enable match
+	fetch 1,mem_last_freq
+	add pdata,0,rega				// ble 2M Medium Frequency
+	call rf_write_freq				/* set frequency to tx mode freq */
+	disable decode_fec0
+	branch set_sync_on
+
+le_transmit_receive_sifs:
+	bpatchx patch29_4,mem_patch29
+	call le_transmit
+le_transmit_receive_sifs_notx:
+	fetcht 1,mem_last_freq
+	call set_freq_rx
+	call rf_rx_enable
+	enable swfine
+	arg 5500,timeup 
+	branch le_receive_rxon
+
+le_transmit_norx:
+	call le_transmit
+	branch end_of_packet
+	
+le_transmit:
+	bpatchx patch29_5,mem_patch29
+	call le_prep
+	call letx_setfreq
+	branch le_transmit0
+	
+le_transmit0:
+	set1 TXGFSK,radio_ctrl
+	enable encode_fec0
+	enable is_tx
+	disable is_rx
+	call le_wait_tx
+	rshift16 access,pdata
+	rshift8 pdata,pdata
+	rshift4 pdata,pdata
+	inject mod,40
+	enable enable_white
+	enable enable_crc
+	bpatchx patch29_6,mem_patch29
+	fetch 1,mem_le_txheader
+	inject mod,8
+	ifetch 1,contr
+	and pdata,0x3f,loopcnt
+	inject mod,8
+	branch letr_nopayload,zero
+letr_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop letr_loop
+	
+letr_nopayload:
+	enable enable_parity
+	inject mod,24
+	disable enable_parity
+	until null,tx_clear
+	nop 100          /* flush out the last bit */
+	disable encode_fec0
+	rtn
+	
+le_send_adv_ind:
+	bpatchx patch29_7,mem_patch29
+	fetch 1,mem_le_adv_type
+	beq ADV_DIRECT_IND,le_send_adv_direct_ind
+	fetch 1,mem_le_adv_own_addr_type
+	lshift4 pdata,pdata
+	lshift2 pdata,pdata
+	store 1,mem_le_txheader
+	fetcht 1,mem_le_adv_data_len
+	add temp,6,pdata
+	store 1,mem_le_txlen
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload
+	copy temp,loopcnt
+	arg mem_le_adv_data,contr
+	call memcpy_fast
+	branch le_send_adv_transmit
+le_send_adv_direct_ind:
+	fetch 1,mem_le_adv_direct_addr_type
+	lshift4 pdata,pdata
+	lshift2 pdata,pdata
+	increase 1,pdata
+	store 1,mem_le_txheader
+	setarg 12
+	store 1,mem_le_txlen
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload
+	fetch 6,mem_hci_plap
+	istore 6,contw
+le_send_adv_transmit:
+	bpatchx patch2a_0,mem_patch2a
+	fetch 1,mem_le_adv_transmit
+	increase 1,pdata
+	store 1,mem_le_adv_transmit
+	arg 1800,stop_watch
+	disable match
+	branch le_transmit_receive_sifs
+	
+le_send_scan_request:
+	bpatchx patch2a_1,mem_patch2a
+	fetch 1,mem_le_scan_type
+	rtnne LE_SCAN_TYPE_ACTIVE
+	fetch 1,mem_le_adv_transmit
+	increase 1,pdata
+	store 1,mem_le_adv_transmit
+	arg 0x0c03,temp// length + SCAN_REQ PDU
+	fetch 1,mem_le_scan_own_addr_type
+	nsetflag blank,LE_SENDER_ADDR_BIT,temp
+	copy regA,pdata
+	nsetflag blank,LE_RECEIVER_ADDR_BIT,temp	
+	storet 2,mem_le_txheader
+	fetch 6,mem_le_lap
+	istore 6,contw
+	fetch 6,mem_le_plap
+	istore 6,contw
+	branch le_transmit_receive_sifs
+
+
+le_send_scan_response:
+	bpatchx patch2a_2,mem_patch2a
+	arg SCAN_RSP,temp
+	fetch 1,mem_le_adv_own_addr_type
+	nsetflag blank,LE_SENDER_ADDR_BIT,temp
+	storet 1,mem_le_txheader
+	fetcht 1,mem_le_scan_data_len
+	add temp,6,pdata
+	store 1,mem_le_txlen
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload
+	arg mem_le_scan_data,contr
+	copy temp,loopcnt
+	call memcpy_fast
+	call le_transmit_norx
+	branch le_adv_not_match
+
+le_connect_request:
+	bpatchx patch2a_3,mem_patch2a
+	force -1,pdata
+	setsect 2,1
+	store 5,mem_le_channel_map
+	call le_calc_channel_map	
+	force 4,loopcnt
+	arg mem_le_access,contw
+	call generate_random_loop	
+	fetch 2,mem_le_timeout
+	store 2,mem_le_superto
+le_con_req_hop_retry:
+	random pdata
+	and_into 0xf,pdata
+	sub pdata,4,null
+	branch le_con_req_hop_retry,positive
+	store 1,mem_le_hop
+	store 1,mem_tmp1
+	bpatchx patch2a_4,mem_patch2a
+	fetcht 2,mem_le_conn_interval
+	storet 2,mem_le_tsniff	
+	copy temp,regc			// tsniff in regc
+	add clkn_bt,7,pdata			// leave space for offset
+	idiv regc
+	call wait_div_end
+	remainder rega
+	isub rega,pdata
+	iadd regc,pdata
+	fetcht 2,mem_le_dsniff
+	iadd temp,pdata
+	store 4,mem_le_anchor
+	isub clkn_bt,rega
+	increase -6,rega			// window offset
+	arg 0x2205,regb			// length & CONN_REQ PDU
+	fetch 1,mem_le_conn_own_addr_type
+	nsetflag blank,LE_SENDER_ADDR_BIT,regb
+	fetch 1,mem_le_conn_peer_addr_type
+	nsetflag blank,LE_RECEIVER_ADDR_BIT,regb
+	copy regb,pdata
+	store 2,mem_le_txheader
+	fetch 6,mem_le_lap
+	istore 6,contw//own addr
+	fetch 6,mem_le_plap
+	istore 6,contw// peer addr
+	fetch 4,mem_le_access
+	istore 4,contw
+	random pdata
+	istore 2,contw				/* crc init */
+	random pdata
+	istore 1,contw
+	force 2,pdata				/* window size */	
+	istore 1,contw
+	rshift2 rega,pdata
+	istore 2,contw				/* window offset */
+	rshift2 regc,pdata			
+	istore 2,contw				/* conn Interval */
+	bpatchx patch2a_5,mem_patch2a
+	setarg 0					/* slave latency */
+	istore 2,contw
+	fetch 2,mem_le_timeout
+	istore 2,contw
+	fetch 5,mem_le_channel_map
+	istore 5,contw				/* channel map */
+	fetch 1,mem_le_hop
+	arg param_le_sca,temp
+	ior temp,pdata
+	istore 1,contw
+	call le_transmit_norx
+	setarg mem_le_txheader
+	add pdata,18,contr
+	ifetch 3,contr
+	store 3,mem_le_crcinit
+	rtn
+		
+le_init_adv:
+	bpatchx patch2a_6,mem_patch2a
+	disable master
+	branch le_adv_access
+	
+
+
+le_update_param:
+	fetch 1,mem_le_state
+	rtnbit0 lestate_update_param
+	fetch 2,mem_le_event_count
+	fetcht 2,mem_le_instant
+	isub temp,pdata
+	nrtn positive
+	store 2,mem_pdatatemp
+	bpatchx patch2a_7,mem_patch2a
+	fetch 1,mem_le_state
+	set0 lestate_update_param,pdata
+	set0 lestate_got_first_packet,pdata
+	store 1,mem_le_state
+	fetch 4,mem_le_anchor
+	fetcht 2,mem_le_tsniff
+	storet 2,mem_temp
+	isub temp,rega
+	bpatchx patch2b_0,mem_patch2b
+	fetch 1,mem_le_new_param
+	store 1,mem_le_window_size
+	ifetcht 2,contr
+	ifetch 2,contr
+	lshift2 pdata,pdata
+	store 2,mem_le_tsniff
+	lshift2 temp,temp
+	iadd temp,pdata
+	ifetcht 4,contr
+	storet 4,mem_le_slave_latency	// and superTO
+	iadd rega,pdata
+	copy pdata,regab
+	fetch 2,mem_le_tsniff
+	fetcht 2,mem_temp	//last sniff
+	isub temp,pdata		//last sniff - new sniff
+	fetcht 2,mem_pdatatemp
+	imul32 temp,pdata
+	iadd regab,pdata
+	store 4,mem_le_anchor
+	call le_receive_window_size
+	fetch 2,mem_le_superto
+	store 2,mem_le_init_superto
+	rtn
+
+
+le_update_channel_map:
+	bpatchx patch2b_1,mem_patch2b
+	fetch 1,mem_le_state
+	rtnbit0 lestate_update_map
+	fetch 2,mem_le_event_count
+	fetcht 2,mem_le_instant
+	isub temp,pdata
+	nrtn positive
+	fetch 1,mem_le_state
+	set0 lestate_update_map,pdata
+	store 1,mem_le_state
+ 	fetch 5,mem_le_new_map
+	store 5,mem_le_channel_map
+	branch le_calc_channel_map	
+	
+	
+le_acknowledge:
+	bpatchx patch2b_2,mem_patch2b
+	call le_supervision_flush
+	call le_check_wak
+	fetch 1,mem_le_rxbuf
+	isolate1 md,pdata
+	setflag true,mark_ble_rx_md,mark
+	rshift pdata,pdata
+	ixor temp,pdata
+	isolate1 nesn,pdata
+	setflag true,mark_old_packet,mark	/* retransmit */
+	rtnmark1 mark_old_packet
+	fetch 1,mem_le_rxbuf+1			
+	branch le_ack_unenc,blank		/* empty packet, no decryption */
+	fetch 1,mem_le_state
+	bbit0 lestate_encryption,le_ack_unenc
+	call load_sk
+	call le_decrypt
+	nrtn blank
+le_ack_unenc:
+	fetcht 1,mem_le_arq
+	setflip nesn,temp
+	storet 1,mem_le_arq
+	rtn
+
+	
+le_check_wak:
+	bpatchx patch2b_3,mem_patch2b
+	fetcht 1,mem_le_arq
+	isolate0 wak,temp
+	rtn true
+	fetch 1,mem_le_rxbuf
+	lshift pdata,pdata
+	ixor temp,pdata
+	rtnbit0 sn			/* received NESN is same as SN, NAK */
+	set0 wak,temp
+	setflip sn,temp
+	storet 1,mem_le_arq
+	compare 3,temp,3
+	nrtn true
+	fetch 1,mem_le_txpayload
+	beq LL_START_ENC_REQ,le_set_enc
+	fetch 1,mem_le_enc_state
+	beq FLAG_LE_ENC_PAUSE,le_clear_enc
+	rtn
+	
+
+le_set_enc:
+	fetch 1,mem_le_state
+	set1 lestate_encryption,pdata
+	store 1,mem_le_state
+	rtn	
+	
+le_clear_enc:
+	bpatchx patch2b_4,mem_patch2b
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	arg 0,pdata
+	store 4,mem_le_last_mic
+	store 5,mem_le_pcnt_tx
+	set1 39,pdata
+	store 5,mem_le_pcnt_rx
+	fetch 1,mem_le_state
+	set0 lestate_encryption,pdata
+	store 1,mem_le_state
+	rtn
+
+
+le_wait_adv:
+	bpatchx patch2b_5,mem_patch2b
+	call le_next_adv_channel
+	call le_receive_adv
+	fetch 1,mem_le_adv_waitcnt
+	increase 1,pdata
+	store 1,mem_le_adv_waitcnt
+	rtn
+
+
+le_scan:
+	bpatchx patch2b_6,mem_patch2b
+	fetch 1,mem_le_scan_enable
+	rtnne LE_SCAN_ENABLE
+	arg le_scan_interval_timer,queue
+	call timer_check
+	nrtn blank
+	fetch 2,mem_le_scan_interval
+	fetcht 2,mem_le_scan_window
+	isub temp,pdata
+	arg le_scan_interval_timer,queue
+	call timer_init
+	disable master
+	call le_init_adv
+	call le_wait_adv
+	nrtn match
+	bpatchx patch2b_7,mem_patch2b
+	fetch 6,mem_le_rxbuf+2
+	store 6,mem_le_plap
+//	call le_scan_dongle
+
+	fetch 1,mem_le_adv_rcv
+	increase 1,pdata
+	store 1,mem_le_adv_rcv
+	call le_create_conn
+	rtn master
+	call le_send_scan_request
+	nrtn match
+	bpatchx patch2c_0,mem_patch2c
+	fetch 1,mem_le_scanrsp_rcv
+	increase 1,pdata
+	store 1,mem_le_scanrsp_rcv
+	fetch 9,mem_le_rxbuf+8
+	store 9,mem_tmp_buffer
+	rtn
+	
+le_create_conn:
+	bpatchx patch2c_1,mem_patch2c
+	fetch 1,mem_cmd_le_create_conn
+	rtnne hci_cmd_le_create_conn
+	fetch 6,mem_le_plap
+	fetcht 6,mem_le_conn_peer_addr
+	isub temp,null
+	nrtn zero
+	call context_new
+	nrtn zero
+	call le_connect_request
+	call le_init_master
+	bpatchx patch2c_2,mem_patch2c
+	jam 0,mem_hci_cmd
+	jam 0,mem_le_peer_sca
+	jam 0,mem_le_scan_enable
+	jam 0,mem_cmd_le_create_conn
+	branch context_save
+	
+le_scan_check_sender_addr_type:
+	arg 1,rega// sender_addr_type
+	fetch 1,mem_le_rxbuf
+	rtnbit1 LE_SENDER_ADDR_BIT
+	arg 0,rega
+	rtn
+
+
+
+le_prepare_tx:
+	bpatchx patch2c_3,mem_patch2c
+	fetch 1,mem_le_arq
+	rtnbit1 wak
+	call le_check_tx_md
+	call le_fifo_get_first_tx_ptr	//no packet to send
+	branch le_send_empty,blank
+	ifetch 1,contr
+	ifetcht 1,contr
+	copy temp,rega
+	isub rega,pdata
+	arg LE_MAX_PAKET_LEN,temp
+	call not_greater_than
+	copy pdata,temp
+	ifetch 1,contr
+	copy pdata,type
+	copy rega,pdata
+	iadd contr,contr
+	arg mem_le_txpayload,contw
+	copy temp,loopcnt
+	call memcpy
+	call le_update_tx_type
+	call le_send_packet
+	
+	call le_fifo_get_first_tx_ptr
+	ifetch 1,contr
+	copy pdata,rega
+	copy contr,regc
+	ifetcht 1,contr
+	copy temp,regb
+	isub regb,pdata
+	arg LE_MAX_PAKET_LEN,temp
+	call not_greater_than
+	iadd regb,pdata
+	istore 1,regc
+	isub rega,null
+	nrtn zero
+	branch le_fifo_release_first_node
+
+	
+le_check_tx_md:
+	call le_check_continue
+	rtnmark1 mark_ble_tx_md
+	fetch 1,mem_le_configuration
+	bbit0 BIT_BLE_TRANSMIT_PACKET_BY_MD,le_clear_md
+	call le_fifo_get_second_tx_ptr	//no packet to send
+	branch le_clear_md,blank
+	branch le_set_md
+
+	
+le_check_continue:
+	call le_fifo_get_first_tx_ptr	//no packet to send
+	branch le_clear_md,blank
+	ifetch 1,contr				//pdata:length
+	ifetcht 1,contr				//temp:offest
+	isub temp,pdata			//pdata:length - offset
+	sub pdata,LE_MAX_PAKET_LEN,null	
+	branch le_clear_md,positive				//27 > length -offset
+le_set_md:
+	set1 mark_ble_tx_md,mark
+	rtn
+
+le_clear_md:
+	set0 mark_ble_tx_md,mark
+	rtn
+
+le_update_tx_type:
+	copy rega,pdata
+	rtn blank
+	arg LLID_CONTINUE,type
+	rtn
+
+
+le_att_check_notification_enable: // temp ->handle,output-> pdata,output :contr->rega
+	bpatchx patch2c_4,mem_patch2c
+	increase 1,temp
+	call le_att_get_handle_ptr
+	increase -2,contr
+	ifetch 2,contr
+	arg CLIENT_CHARACTERTIC_CONFIGURATION,temp
+	isub temp,null
+	nrtn zero
+	increase 1,contr
+	copy contr,rega
+	ifetch 1,contr
+	rtn
+	
+
+le_send_empty:
+	force 0,temp
+	force 1,type
+	
+le_send_packet:
+	bpatchx patch2c_5,mem_patch2c
+	storet 1,mem_le_txlen
+	fetcht 1,mem_le_arq
+	set1 wak,temp
+	and temp,0xfc,pdata
+	ior type,pdata
+	store 1,mem_le_arq
+	and_into 0x1f,pdata
+	isolate1 mark_ble_tx_md,mark
+	setflag true,md,pdata
+	store 1,mem_le_txheader
+
+	fetch 1,mem_le_txheader
+	compare 1,type,3
+	nbranch le_send_no_txlen,true
+	fetch 1,mem_le_txlen
+	rtn blank
+le_send_no_txlen:	
+	fetch 1,mem_le_state
+	rtnbit0 lestate_encryption
+	call load_sk
+	branch le_encrypt
+
+
+get_lpm_wake_ble_rx_lock:
+	arg wake_lock_ble_rx,queue
+	branch lpm_get_wake_lock
+
+put_lpm_wake_ble_rx_lock:
+	arg wake_lock_ble_rx,queue
+	branch lpm_put_wake_lock
+
+
+le_parse:
+	bpatchx patch2c_6,mem_patch2c
+	rtnmark1 mark_old_packet
+	call le_fifo_check_full
+	nrtn blank
+	fetch 1,mem_le_rxbuf
+	and pdata,0x3,pdata
+	store 1,mem_le_packet_llid
+	ifetch 1,contr
+	and pdata,0x1f,pdata
+	store 1,mem_le_packet_size
+	rtn blank							//empty rtn
+	copy contr,pdata
+	store 2,mem_le_payload_ptr
+	fetch 1,mem_le_packet_llid
+	beq LLID_LE_LL,le_parse_ll
+le_parse_l2cap:
+	call le_check_l2cap_complete
+	nbranch get_lpm_wake_ble_rx_lock,user
+	call put_lpm_wake_ble_rx_lock
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	ifetch 2,contr	//l2cap len
+	store 2,mem_le_l2cap_size
+	bpatchx patch2c_7,mem_patch2c
+	ifetch 2,contr
+	beq LE_L2CAP_CID_ATT,le_parse_att
+	beq LE_L2CAP_CID_SMP,le_parse_smp
+	beq LE_L2CAP_CID_SIGNAL,le_parse_signaling
+	rtn
+
+
+le_check_l2cap_complete:
+	fetch 1,mem_le_packet_llid
+	beq LLID_START,le_check_l2cap_llid_start
+	beq LLID_CONTINUE,le_check_l2cap_llid_continue
+	rtn
+
+//input: pdata is CID number
+//output: 	if CID is legal ,enable user
+//		if ICD is illegal,disable user 
+le_check_l2cap_CID_legal:
+	call enable_user
+	arg LE_L2CAP_CID_ATT,temp
+	isub pdata,null
+	rtn zero
+	arg LE_L2CAP_CID_SIGNAL,temp
+	isub pdata,null
+	rtn zero
+	arg LE_L2CAP_CID_SMP,temp
+	isub pdata,null
+	rtn zero
+	branch disable_user
+
+	
+le_check_l2cap_llid_start:
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	ifetch 2,contr
+	store 2,mem_le_l2cap_size
+	ifetch 2,contr			//CID
+	call le_check_l2cap_CID_legal
+	nrtn user
+	fetcht 1,mem_le_packet_size
+	storet 1,mem_le_packet_len_recved
+	fetch 2,mem_le_l2cap_size
+	increase 4,pdata
+	isub temp,null
+	branch enable_user,zero
+	fetch 1,mem_le_packet_size
+	copy pdata,loopcnt
+	arg mem_le_l2capbuf,contw
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	call memcpy
+	branch disable_user
+
+//no input
+//output: 	if CID is legal ,enable user
+//		if ICD is illegal,disable user 
+le_check_l2cap_continue_legal:
+	call enable_user
+	fetch 1,mem_le_packet_len_recved
+	nrtn blank
+	branch disable_user
+
+le_check_l2cap_llid_continue:
+	call le_check_l2cap_continue_legal
+	nrtn user
+	fetch 1,mem_le_packet_len_recved
+	arg mem_le_l2capbuf,contw
+	iadd contw,rega
+	fetcht 1,mem_le_packet_size
+	iadd temp,pdata
+	store 1,mem_le_packet_len_recved
+	fetch 1,mem_le_packet_size
+	copy pdata,loopcnt
+	copy rega,contw
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	call memcpy_fast
+	setarg mem_le_l2capbuf
+	store 2,mem_le_payload_ptr		//update ptr->mem_le_l2capbuff
+	fetch 2,mem_le_l2cap_size
+	increase 4,pdata
+	fetcht 1,mem_le_packet_len_recved
+	isub temp,null
+	branch enable_user,zero
+	branch disable_user
+
+
+
+
+	
+le_get_search_att_type:
+	call store_contr
+	arg mem_le_search_att_type_length,contw
+le_get_search_common:	
+	fetch 2,mem_le_l2cap_size
+	increase -5,pdata
+le_get_search_common2:		
+	istore 1,contw
+	copy pdata,loopcnt
+	call get_contr
+	branch memcpy_fast	
+	
+le_get_search_att_uuid:
+	call store_contr
+	arg mem_le_search_uuid_length,contw
+	branch le_get_search_common
+
+
+	/* rega pointers to data, regb is length */
+le_writeatt_cb:
+	fetch 2,mem_cb_att_write
+	branch callback_func
+	
+le_supervision_update:
+	fetcht 4,mem_le_supervision_timer
+	call get_clkbt
+	isub temp,timeup					/* and to 28 bits */
+	deposit timeup
+	fetcht 2,mem_le_superto
+	lshift4 temp,temp
+	lshift temp,temp
+	isub temp,pdata
+	rtn
+	
+le_supervision_flush:
+	call get_clkbt
+	store 4,mem_le_supervision_timer
+	rtn
+
+
+le_adv:
+	jam 36,mem_le_ch_mapped
+	jam 0,mem_le_adv_channel_map_temp
+le_adv_loop:
+	bpatchx patch2d_0,mem_patch2d
+	fetch 1,mem_le_adv_enable
+	rtn blank
+	arg le_adv_interval_timer,queue
+	call timer_check
+	nrtn blank
+	bpatchx patch2d_1,mem_patch2d
+le_adv_loop_tx:
+	disable master
+	enable swfine
+	call le_init_adv
+	call le_next_adv_channel
+	call le_send_adv_ind
+	nbranch le_adv_not_match,match
+	fetch 1,mem_le_req_rcv
+	increase 1,pdata
+	store 1,mem_le_req_rcv
+	fetch 1,mem_le_rxbuf
+	and pdata,0x0f,pdata
+	beq SCAN_REQ,le_send_scan_response
+	beq CONNECT_REQ,le_parse_connect_req
+le_adv_not_match:
+	bpatchx patch2d_2,mem_patch2d
+	random pdata 
+	arg 0x1ff,temp
+	iand temp,pdata
+	add pdata,250,pdata
+	call delay
+	fetch 1,mem_le_adv_channel_map_temp
+	fetcht 1,mem_le_adv_channel_map
+	isub temp,null
+	nbranch le_adv_loop,zero
+	arg le_adv_interval_timer,queue
+	fetch 2,mem_le_adv_interval
+	branch timer_init
+	
+
+le_receive_window_size:
+	bpatchx patch2d_3,mem_patch2d
+	fetch 1,mem_le_peer_sca
+	call le_sca_map
+	fetch 2,mem_le_tsniff
+	imul32 temp,pdata
+	arg 375,temp
+	imul32 temp,pdata
+	arg 100000,temp
+	idiv temp
+	fetch 1,mem_le_window_size
+	arg 20000,temp
+	imul32 temp,pdata
+	iadd temp,pdata
+	store 4,mem_le_transmit_window
+	bpatchx patch2d_4,mem_patch2d
+	fetch 2,mem_rx_window_sniff
+	call wait_div_end
+	quotient temp
+	iadd temp,pdata
+	store 2,mem_le_receive_window
+	rtn
+
+le_parse_connect_req:
+	bpatchx patch2d_5,mem_patch2d
+	fetch 6,mem_le_rxbuf+8
+	fetcht 6,mem_le_lap
+	isub temp,null
+	nrtn zero
+	call le_scan_check_sender_addr_type
+	copy rega,pdata
+	store 1,mem_le_conn_peer_addr_type
+	fetch 7,mem_le_rxbuf+21
+	store 7,mem_tmp_buffer
+	ifetch 8,contr
+	istore 8,contw
+	fetch 6,mem_le_rxbuf+2
+	store 6,mem_le_plap
+	increase 6,contr
+	ifetch 8,contr
+	store 8,mem_le_access 	// and crcinit & window size
+	ifetcht 2,contr				// transmit offset
+	bpatchx patch2d_6,mem_patch2d
+	lshift2 temp,temp			
+	ifetch 2,contr				// connInterval
+	lshift2 pdata,pdata
+	store 2,mem_le_tsniff
+	store 4,mem_le_anchor
+	isub temp,pdata
+	add pdata,-2,clke_bt
+	ifetch 9,contr
+	store 9,mem_le_slave_latency// and super to & channel map
+	bpatchx patch2d_7,mem_patch2d
+	ifetch 1,contr
+	rshift4 pdata,temp
+	rshift temp,temp
+	storet 1,mem_le_peer_sca
+	and_into 0x1f,pdata
+	store 1,mem_le_hop
+	call le_receive_window_size
+	call le_calc_channel_map
+	call le_init_slave
+	call context_new
+	nrtn zero
+	bpatchx patch2e_0,mem_patch2e
+	call calc_clke_offset
+	call le_l2cap_reset_signaling_identifier
+	jam BT_EVT_LE_CONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	branch context_save
+	
+
+le_init_attlist_search:
+	bpatchx patch2e_1,mem_patch2e
+	fetch 2,mem_le_search_handle_start
+	iforce regb
+	fetch 2,mem_le_search_handle_end
+	iforce regc
+	fetch 2,mem_ui_le_uuid_table
+	iforce contr
+	enable user
+	rtn
+
+	/* return handle in pdata, blank:end of list, positive:in range */
+le_att_handle_inrange:
+	ifetch 2,contr
+	rtn blank
+	isub regb,null			/* less than start ? */
+	nrtn positive
+	isub regc,null			/* greater than end ? */
+	rtn zero
+	branch le_att_handle_blank,positive
+	force 1,null
+	rtn
+le_att_handle_blank:
+	force 0,pdata
+	rtn
+
+
+	/* handle in temp, return pointer in contr to length, blank not found */
+le_att_get_handle_ptr:
+	call le_att_get_handle_ptr2
+	branch le_att_get_handle_ptr_found,zero
+	rtn
+	
+le_att_get_handle_ptr2:
+	bpatchx patch2e_2,mem_patch2e
+	fetch 2,mem_ui_le_uuid_table
+	iforce contr
+le_att_get_handle_loop1:
+	ifetch 2,contr
+	rtn blank
+	isub temp,null
+	rtn zero
+	ifetch 1,contr
+	iadd contr,contr	
+	ifetch 1,contr			// length  
+	iadd contr,contr
+	branch le_att_get_handle_loop1
+le_att_get_handle_ptr_found:
+	ifetch 1,contr
+	iadd contr,contr	
+	rtn	
+
+
+
+le_att_get_short_uuid_ptr:
+	bpatchx patch2e_3,mem_patch2e
+	fetch 2,mem_ui_le_uuid_table
+	iforce contr
+le_att_get_short_uuid_loop:
+	ifetch 2,contr
+	rtn blank
+	ifetch 1,contr
+	iadd contr,contr
+	increase -2,contr
+	ifetch 2,contr
+	isub temp,null
+	rtn zero
+	ifetch 1,contr			 
+	iadd contr,contr
+	branch le_att_get_short_uuid_loop	
+
+
+
+le_att_get_handle_info_from_ptr:
+	fetch 2, mem_le_cur_attlist_start_ptr
+	branch le_att_get_handle_info_fast
+
+le_att_get_handle_info:
+	bpatchx patch2e_4,mem_patch2e
+	fetch 2,mem_ui_le_uuid_table
+le_att_get_handle_info_fast:
+	iforce contr
+	copy temp,rega
+le_att_get_handle_loop:
+	ifetch 2,contr
+	branch le_att_unfind_handle,blank
+	isub rega,null
+	branch le_att_finded_handle, zero
+	ifetch 1,contr			// length  
+	iadd contr,contr	
+	ifetch 1,contr			//length 
+	iadd contr,contr
+	branch le_att_get_handle_loop
+le_att_unfind_handle:
+	branch disable_blank
+
+le_att_finded_handle:
+	ifetch 1,contr
+	store 1,mem_le_cur_uuid_length
+	copy pdata,loopcnt
+	arg mem_le_cur_uuid,contw
+	call memcpy_fast
+	ifetch 1,contr
+	store 1,mem_le_curr_att_len
+	call store_contr
+	branch enable_blank
+
+	
+le_modified_name:
+	bpatchx patch2e_5,mem_patch2e
+	call le_modified_name_att_list
+	branch le_modified_name_adv
+
+le_modified_name_att_list:
+	arg UUID_CHRCTR_DEVICE_NAME,temp
+	call le_att_get_short_uuid_ptr
+	rtn blank
+	ifetch 1,contr						// attribute length
+	copy contr,contw
+	fetcht 1,mem_le_name_len
+	copy temp,loopcnt
+	isub temp,null
+	nbranch le_name_length_longer_than_att,positive
+	isub temp,temp
+	arg mem_le_name,contr
+	call memcpy
+	copy temp,loopcnt
+	ncall memcpy_empty,zero
+	rtn
+le_name_length_longer_than_att:
+	copy pdata,loopcnt
+	arg mem_le_name,contr
+	branch memcpy_fast
+
+
+le_modified_name_adv:
+	arg mem_le_adv_data_len+32,regc
+	arg mem_le_adv_data,rega
+	call le_modified_name_adv_and_scan
+	setarg 0
+	setflag user,0,pdata
+	store 1,mem_pdatatemp
+	arg mem_le_scan_data_len+32,regc
+	arg mem_le_scan_data,rega
+	call le_modified_name_adv_and_scan
+	rtn user
+	fetch 1,mem_pdatatemp
+	branch assert,blank
+	rtn
+
+
+le_modified_name_adv_and_scan:
+	bpatchx patch2e_6,mem_patch2e
+	call enable_user
+	call clear_temp_block
+	arg 0,regb	//current length
+	arg mem_le_data_temp,contw
+	call le_modified_name_adv_loop
+	fetch 1,mem_le_name_len
+	add pdata,1,temp
+	iadd regb,rega	
+	increase 2,rega
+	sub rega,0x1f,null
+	nbranch le_modified_name_adv_and_scan_name_overflow,positive
+	istoret 1,contw		//store ble name length
+	arg GAP_ADTYPE_LOCAL_NAME_COMPLETE,temp
+	istoret 1,contw		//store ble name type
+	iforce loopcnt
+	call memcpy_fast
+	copy rega,regb
+le_modified_name_adv_and_scan_store_data:
+	deposit regb
+	store 1,mem_le_data_len_temp
+	arg mem_le_data_len_temp,contr
+	setarg -32
+	iadd regc,contw
+	branch memcpy32
+
+le_modified_name_adv_and_scan_name_overflow:
+	call disable_user
+	branch le_modified_name_adv_and_scan_store_data
+	
+le_modified_name_adv_loop:
+	ifetch 1,rega		//pdata:length
+	rtn blank			//length is zero,ending find
+	pincrease 1		//length += 1
+	ifetcht 1,contr		//pdata:type
+	sub temp,GAP_ADTYPE_LOCAL_NAME_COMPLETE,null
+	branch le_modified_name_adv_found_name,zero
+	iadd regb,regb	
+	copy rega,contr
+	iforce loopcnt
+	call memcpy_fast
+	copy contr,rega
+le_modified_name_adv_loop2:
+	deposit rega
+	isub regc,null
+	rtn positive
+	branch le_modified_name_adv_loop
+
+le_modified_name_adv_found_name:
+	iadd rega,rega
+	branch le_modified_name_adv_loop2
+
+
+memcpy_empty:
+	setarg SPACE
+	istore 1,contw
+	loop memcpy_empty
+	rtn
+
+	
+le_lpm_set_mult:
+	bpatchx patch2e_7,mem_patch2e
+	disable wake
+	branch le_lpm_set_mult_attempt,attempt
+	nbranch le_lpm_lost,match
+le_lpm_set_mult_attempt:
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_le_receive_window
+
+	nbranch lpm_mult_short,match
+	bmark1 mark_old_packet,lpm_mult_short
+
+	fetch 1,mem_le_packet_size
+	nbranch lpm_mult_short,blank		// rx not empty, short interval
+	fetch 1,mem_le_txlen
+	nbranch lpm_mult_short,blank		// tx not empty, short interval
+	
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_SHORT_MULT,lpm_mult_short	//check flag,if flag is 1,always short mult
+	
+	fetch 1,mem_le_state
+	bbit1 lestate_update_param,lpm_mult_short
+	branch lpm_mult_wait_timeout
+	
+le_lpm_lost:
+	fetcht 2,mem_rx_window_sniff
+	rshift temp,temp
+	fetch 2,mem_le_receive_window
+	iadd temp,pdata
+	store 2,mem_le_receive_window
+	branch lpm_lost
+
+///////////////////////////////BLE CONFIG//////////////////////////////////////////
+le_set_config_fixed_tk:
+	arg BIT_BLE_PASSKEY_FIXED_KEY,queue
+	branch le_set_config
+
+le_clr_config_fixed_tk:
+	arg BIT_BLE_PASSKEY_FIXED_KEY,queue
+	branch le_clr_config
+
+le_set_config_fixed_ltk:
+	arg BIT_BLE_PAIRING_FIXED_LTK,queue
+	branch le_set_config
+
+le_clr_config_fixed_ltk:
+	arg BIT_BLE_PAIRING_FIXED_LTK,queue
+	branch le_clr_config
+
+le_set_config_more_data:
+	arg BIT_BLE_TRANSMIT_PACKET_BY_MD,queue
+	branch le_set_config
+
+le_clr_config_more_data:
+	arg BIT_BLE_TRANSMIT_PACKET_BY_MD,queue
+	branch le_clr_config
+
+le_set_config_read_authentication:
+	arg BIT_BLE_READ_AUTH,queue
+	branch le_set_config
+
+le_clr_config_read_authentication:
+	arg BIT_BLE_READ_AUTH,queue
+	branch le_clr_config
+
+le_set_config_write_authentication:
+	arg BIT_BLE_WRITE_AUTH,queue
+	branch le_set_config
+
+le_clr_config_write_authentication:
+	arg BIT_BLE_WRITE_AUTH,queue
+	branch le_clr_config
+
+le_set_config_short_mult:
+	arg BIT_BLE_SHORT_MULT,queue
+	branch le_set_config
+
+le_clr_config_short_mult:
+	arg BIT_BLE_SHORT_MULT,queue
+	branch le_clr_config
+
+
+le_set_config:
+	fetch 1,mem_le_configuration
+	qset1 pdata
+	store 1,mem_le_configuration
+	rtn
+
+le_clr_config:
+	fetch 1,mem_le_configuration
+	qset0 pdata
+	store 1,mem_le_configuration
+	rtn
+
+le_set_fixed_ltk:
+	setarg 0x112233
+	store 3,mem_le_fixed_ltk
+	setarg 0x445566
+	istore 3,contw
+	setarg 0x778899
+	istore 3,contw
+	setarg 0x001122
+	istore 3,contw
+	setarg 0x334455
+	istore 3,contw
+	setarg 0x66
+	istore 1,contw
+	rtn
+
+
+le_set_justwork:
+	setarg 0x01000302
+	store 4,mem_le_pres
+	setarg 0x010010
+	store 3,mem_le_pres_max_keysize
+	jam 1,mem_le_pairing_mode
+	rtn
+
+/////////////////////////////////////////////////////////////////////////
+
+le_fifo_malloc_tx_empty:
+	arg 0,rega
+	arg LLID_EMPTY,type
+	branch le_fifo_malloc_tx
+
+
+//rega:len regb:ll opcode
+le_fifo_malloc_tx_ll:
+	arg LLID_LE_LL,type
+	call le_fifo_malloc_tx
+	copy regb,pdata
+	istore 1,contw
+	rtn
+	
+
+//rega:len regb:cid
+le_fifo_malloc_tx_l2cap:
+	force LLID_L2CAP_START,type
+	increase 4,rega
+	call le_fifo_malloc_tx
+	increase -4,rega
+	copy rega,pdata
+	istore 2,contw
+	copy regb,pdata
+	istore 2,contw
+	rtn
+
+
+//rega:len type:llid
+le_fifo_malloc_tx:
+	sub rega,240,null			//check max len
+	nbranch assert,positive
+	fetch 1,mem_le_tx_buff_used
+	arg 1,temp
+	arg LE_TX_BUFF_COUNT,loopcnt
+le_fifo_malloc_tx_loop:
+	iand temp,null
+	branch le_fifo_malloc_tx_got_empty,zero
+	lshift temp,temp
+	loop le_fifo_malloc_tx_loop
+	branch assert				//no empty buff
+le_fifo_malloc_tx_got_empty:
+	ixor temp,pdata
+	store 1,mem_le_tx_buff_used
+	sub loopcnt,LE_TX_BUFF_COUNT,pdata
+	lshift4 pdata,pdata
+	lshift4 pdata,pdata
+	arg mem_le_tx_buffer0,temp
+	iadd temp,temp
+le_fifo_tx_find_empty_ptr:
+	arg 0,loopcnt
+	arg mem_le_tx_ptr0,contr
+le_fifo_tx_find_empty_ptr_loop:
+	ifetch 2,contr
+	branch le_fifo_tx_found_empty_ptr,blank
+	copy loopcnt,pdata
+	increase 1,loopcnt
+	bne LE_TX_BUFF_COUNT,le_fifo_tx_find_empty_ptr_loop
+	branch assert
+
+	
+le_fifo_tx_found_empty_ptr:
+	increase -2,contr
+	istoret 2,contr
+	copy temp,contw
+	copy rega,pdata
+	istore 1,contw				//lengh
+	setarg 0
+	istore 1,contw				//offset
+	copy type,pdata
+	istore 1,contw				//LLID
+	rtn
+
+
+
+le_fifo_get_first_tx_ptr:
+	fetch 2,mem_le_tx_ptr0
+	copy pdata,contr
+	rtn
+
+le_fifo_get_second_tx_ptr:
+	fetch 2,mem_le_tx_ptr1
+	copy pdata,contr
+	rtn
+
+le_fifo_get_last_tx_ptr:
+	call le_fifo_get_last_tx_ptr0
+	copy pdata,contr
+	rtn
+le_fifo_get_last_tx_ptr0:
+	fetch 2,mem_le_tx_ptr3
+	nrtn blank
+	fetch 2,mem_le_tx_ptr2
+	nrtn blank
+	fetch 2,mem_le_tx_ptr1
+	nrtn blank
+	fetch 2,mem_le_tx_ptr0
+	rtn
+
+le_fifo_get_first_l2cap_ptr:
+	call le_fifo_get_first_tx_ptr
+	increase 3,contr
+	rtn
+
+le_fifo_get_first_att_ptr:
+	call le_fifo_get_first_tx_ptr
+	increase 7,contr
+	rtn
+
+le_fifo_get_last_att_ptr:
+	call le_fifo_get_last_tx_ptr
+	increase 7,contr
+	rtn
+
+le_fifo_get_last_l2cap_ptr:
+	call le_fifo_get_last_tx_ptr
+	increase 3,contr
+	rtn
+
+	
+
+le_fifo_check_full:
+	fetch 2,mem_le_tx_ptr3
+	rtn
+
+
+le_fifo_check_nearly_full:
+	fetch 2,mem_le_tx_ptr2
+	rtn
+
+	
+le_fifo_check_empty:
+	fetch 2,mem_le_tx_ptr0
+	rtn
+
+
+le_fifo_release_first_node:
+	fetch 2,mem_le_tx_ptr0
+	arg mem_le_tx_buffer0,temp
+	isub temp,pdata
+	rshift4 pdata,pdata
+	rshift4 pdata,queue
+	fetch 1,mem_le_tx_buff_used
+	qset0 pdata
+	store 1,mem_le_tx_buff_used
+	arg 0,loopcnt
+le_fifo_release_first_node_loop:
+	lshift loopcnt,pdata
+	arg mem_le_tx_ptr1,temp
+	iadd temp,temp
+	ifetch 2,temp
+	increase -2,temp
+	istore 2,temp
+	copy loopcnt,pdata
+	increase 1,loopcnt
+	bne LE_TX_BUFF_UPDATE_LOOPCNT,le_fifo_release_first_node_loop
+	setarg 0
+	istore 2,temp
+	rtn
+
+
+
+
+
+le_parse_att:
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+	beq ATTOP_EXCHANGE_MTU_REQUEST,le_parse_att_exchange_mtu_request
+	beq ATTOP_EXCHANGE_MTU_RESPONSE,le_parse_att_exchange_mtu_response
+	beq ATTOP_FIND_INFORMATION_REQUEST,le_parse_att_find_information_request
+	beq ATTOP_FIND_BY_TYPE_VALUE_REQUEST,le_parse_att_find_by_type_value_request
+	beq ATTOP_READ_BY_TYPE_REQUEST,le_parse_att_read_by_type_request
+	beq ATTOP_READ_REQUEST,le_parse_att_read_request
+	beq ATTOP_READ_BLOB_REQUEST,le_parse_att_read_blob_request
+	beq ATTOP_READ_BY_GROUP_TYPE_REQUEST,le_parse_att_read_by_group_type_request
+	beq ATTOP_WRITE_REQUEST,le_parse_att_write_request
+	beq ATTOP_PREPARE_WRITE_REQUEST,le_parse_att_prepare_write_request
+	beq ATTOP_EXECUTE_WRITE_REQUEST,le_parse_att_execute_write_request
+	beq ATTOP_WRITE_COMMAND,le_parse_att_write_command
+	rtn
+
+
+le_send_att_exchange_mtu_requset:
+	force 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_EXCHANGE_MTU_REQUEST
+	istore 1,contw
+	fetch 2,mem_le_local_mtu
+	istore 2,contw
+	rtn
+
+
+le_parse_att_exchange_mtu_request:
+	call le_parse_att_exchange_mtu_response
+le_send_att_exchange_mtu_response:
+	force 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_EXCHANGE_MTU_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_local_mtu
+	istore 2,contw
+	rtn
+
+le_parse_att_exchange_mtu_response:
+	rshift8 pdata,pdata
+	store 2,mem_le_remote_mtu
+	rtn
+
+le_parse_att_find_information_request:
+	call le_get_search_handle_start_end_common
+	call enable_user
+	branch le_send_att_find_information_response
+	
+le_send_att_find_information_response:
+	arg 3,timeup
+	call le_init_attlist_search
+le_send_att_find_information_res_loop:
+	call le_att_handle_inrange
+	branch le_send_att_find_information_res_end,blank
+	nbranch le_send_att_find_information_res_next,positive
+	increase -2,contr
+	call store_contr
+	call get_contw
+	nbranch le_send_att_find_information_res_store_info,user
+	call push_stack_rega_b_c
+	call disable_user
+	force 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	call pop_stack_rega_b_c
+	setarg ATTOP_FIND_INFORMATION_RESPONSE
+	istore 1,contw
+	setarg UUID_SIZE_16BIT
+	istore 1,contw
+le_send_att_find_information_res_store_info:
+	call get_contr
+	ifetch 2,contr
+	istore 2,contw
+	ifetch 1,contr
+	copy pdata,loopcnt
+	call memcpy
+	call store_contw
+	increase -1,timeup
+	branch le_send_att_find_information_res_end,zero
+le_send_att_find_information_res_cont:
+	ifetch 1,contr
+	iadd contr,contr
+	branch le_send_att_find_information_res_loop
+le_send_att_find_information_res_next:
+	ifetch 1,contr
+	iadd contr,contr
+	branch le_send_att_find_information_res_cont
+le_send_att_find_information_res_end:
+	branch le_send_att_error_response_notfound,user
+	branch le_send_auto_len_by_mem
+
+
+le_parse_att_find_by_type_value_request:
+	call le_get_search_handle_start_end_common
+	ifetch 2,contr
+	store 2,mem_le_search_uuid
+	call store_contr
+	arg mem_le_search_att_type_length,contw
+	fetch 2,mem_le_l2cap_size
+	increase -7,pdata
+	call le_get_search_common2
+	branch le_send_att_find_by_type_value_response
+
+
+le_start_end_handle_check_1:
+	disable user
+	fetcht 2,mem_le_search_handle_start
+	fetch 2,mem_le_search_handle_end
+	isub temp,null
+	nbranch le_start_end_handle_check_1_fail,positive
+	deposit temp
+	rtnne 0
+le_start_end_handle_check_1_fail:
+	enable user
+	jam ATT_ERR_INVALID_HANDLE,mem_le_err_code
+	branch le_send_att_error_response
+
+
+le_send_att_find_by_type_value_response:
+	call le_start_end_handle_check_1
+	rtn user
+	fetcht 2,mem_le_search_uuid
+	setarg UUID_GATT_PRIMARY_SERVICE
+	isub temp,null
+	branch le_send_att_find_by_type_value_res_primary,zero
+	branch le_send_att_error_response_notfound
+	
+
+le_send_att_find_by_type_value_res_primary:
+	jam LE_FIND_BY_TYPE_VAL_RES_NOT_FOUND,mem_le_search_res
+	fetcht 2,mem_le_search_handle_start
+	storet 2,mem_temp
+	call le_att_get_handle_info
+	nbranch le_send_att_error_response_notfound,blank
+le_send_att_find_primary_search_loop:
+	fetcht 2,mem_temp
+	call le_att_get_handle_info
+	nbranch le_send_att_error_response_notfound2,blank	
+	copy contr,rega
+	fetch 1,mem_le_curr_att_len
+	copy pdata,loopcnt
+	fetcht 1,mem_le_search_att_type_length
+	isub temp,null
+	nbranch le_send_att_find_primary_search_loop1,zero
+	arg mem_le_search_att_type,regb
+	call string_compare
+
+	branch le_send_att_find_primary_search_end_start_handle_found,zero
+
+	fetch 2,mem_le_cur_uuid
+	fetcht 2,mem_le_search_uuid
+	isub temp,null
+	branch le_send_att_find_primary_search_end_ending_handle_found,zero
+le_send_att_find_primary_search_loop1:
+	fetch 2,mem_temp
+	increase 1,pdata
+	store 2,mem_temp
+	branch le_send_att_find_primary_search_loop
+
+le_send_att_error_response_notfound2:
+	fetch 1,mem_le_search_res
+	beq LE_FIND_BY_TYPE_VAL_RES_FOUND_STARTING_HANDLE,le_send_att_find_primary_search_end_ending_handle_found
+	branch le_send_att_error_response_notfound
+
+	
+le_send_att_find_primary_search_end_start_handle_found:
+	fetch 2,mem_le_cur_uuid
+	fetcht 2,mem_le_search_uuid
+	isub temp,null
+	nbranch  le_send_att_find_primary_search_loop1,zero
+	jam LE_FIND_BY_TYPE_VAL_RES_FOUND_STARTING_HANDLE,mem_le_search_res
+//	copy rega,temp
+	fetcht 2,mem_temp
+	storet 2,mem_le_cur_handle_start
+	branch le_send_att_find_primary_search_loop1
+
+le_send_att_find_primary_search_end_ending_handle_found:
+	fetch 1,mem_le_search_res
+	beq LE_FIND_BY_TYPE_VAL_RES_NOT_FOUND,le_send_att_find_primary_search_loop1
+	jam LE_FIND_BY_TYPE_VAL_RES_FOUND_ENDING_HANDLE,mem_le_search_res
+	fetcht 2,mem_temp
+	increase -1,temp
+	storet 2,mem_le_cur_handle_end
+	
+le_send_att_find_primary_search_end:
+	arg 5,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_FIND_BY_TYPE_VALUE_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_cur_handle_start
+	istore 2,contw
+	fetch 2,mem_le_cur_handle_end
+	istore 2,contw
+	rtn
+
+
+
+le_parse_att_read_by_type_request:
+	call le_get_search_handle_start_end_common
+	call le_get_search_att_uuid
+	branch le_send_att_read_by_type_response
+	
+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_uuid
+	setarg UUID_CHRCTR_DEVICE_NAME
+	isub temp,null
+	branch le_send_att_read_by_type_res_device_name,zero
+	setarg UUID_GATT_CHARACTERISTIC
+	isub temp,null
+	nbranch le_send_att_read_by_type_res_not_characteristic,zero
+	arg 2,timeup
+le_send_att_read_by_type_response_loop:
+	call le_att_check_handle_end
+	nbranch le_send_att_read_by_type_response_end,positive
+	fetcht 2,mem_temp
+	call le_att_get_handle_info_from_ptr
+	beq 1,le_send_att_read_by_type_response_end
+	call le_att_same_uuid
+	nbranch le_send_att_read_by_type_response_next_handle,zero
+	nbranch le_send_att_read_by_type_res_found_next,user
+	disable user
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_TYPE_RESPONSE
+	istore 1,contw
+	copy contw,alarm
+	increase 1,contw
+	
+	call le_send_att_read_by_type_write_properties
+	call le_att_next_handle
+	call le_att_get_handle_info_from_ptr
+	call le_send_att_read_by_type_write_uuid
+	fetch 1,mem_le_cur_uuid_length
+	increase 5,pdata
+	istore 1,alarm
+	fetch 1,mem_le_cur_uuid_length
+	beq 16,le_send_att_read_by_type_response_end
+	increase -1,timeup
+	branch le_send_att_read_by_type_response_end,zero
+le_send_att_read_by_type_response_next_handle:
+	call le_att_next_handle
+	branch le_send_att_read_by_type_response_loop
+le_send_att_read_by_type_response_end:
+	branch le_send_att_error_response_notfound,user
+	branch le_send_auto_len_by_mem
+
+le_send_att_read_by_type_res_found_next:
+	call le_store_att_record
+	call le_att_next_handle
+	call le_att_get_handle_info_from_ptr
+	fetch 1,mem_le_cur_uuid_length
+	beq 16,le_send_att_read_by_type_response_end
+	
+	call get_contw
+	fetch 2,mem_temp
+	increase -1,pdata
+	istore 2,contw
+	call le_write_att_record_common
+	call le_send_att_read_by_type_write_uuid
+	increase -1,timeup
+	branch le_send_att_read_by_type_response_end,zero
+	branch le_send_att_read_by_type_response_next_handle
+
+	
+le_send_att_read_by_type_write_properties:
+	fetch 2,mem_temp
+	istore 2,contw
+	
+	fetch 1,mem_le_curr_att_len
+	copy pdata,loopcnt
+	call get_contr
+	call memcpy_fast
+	branch store_contw
+le_send_att_read_by_type_write_uuid:
+	call get_contw
+	fetch 2,mem_temp
+	istore 2,contw
+	call store_contw
+	fetch 1,mem_le_cur_uuid_length
+	copy pdata,loopcnt
+	call get_contw	
+	call get_contr
+	isub loopcnt,contr
+	increase -1,contr
+	call memcpy_fast
+	branch store_contw
+
+
+
+le_send_att_read_by_type_res_not_characteristic:
+	fetcht 2,mem_le_search_handle_start
+	storet 2,mem_temp
+le_send_att_read_by_type_res_not_char_loop:
+	call le_att_check_handle_end
+	nbranch le_send_att_error_response_notfound,positive
+	call le_att_get_handle_info_from_ptr
+	beq 1,le_send_att_error_response_notfound
+	call le_att_same_uuid
+	nbranch le_send_att_read_by_type_res_not_char_next,zero
+
+le_send_att_read_by_type_res_not_char_common:
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_TYPE_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_curr_att_len
+	copy pdata,loopcnt
+	increase 2,pdata
+	istore 1,contw
+	fetch 2,mem_temp
+	istore 2,contw
+	call get_contr
+	call memcpy_fast
+	call store_contw
+	branch le_send_auto_len_by_mem
+	
+le_send_att_read_by_type_res_not_char_next:
+ 	call le_att_next_handle
+	branch le_send_att_read_by_type_res_not_char_loop
+
+
+le_send_att_read_by_type_res_device_name:
+	arg UUID_CHRCTR_DEVICE_NAME,temp
+	call le_att_get_short_uuid_ptr
+	rtn blank
+	increase -5,contr // point to handle
+	ifetch 2,contr		
+	store 2,mem_temp
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_TYPE_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_name_len
+	copy pdata,loopcnt
+	increase 2,pdata
+	istore 1,contw
+	fetch 2,mem_temp
+	istore 2,contw
+	arg mem_le_name,contr
+	call memcpy_fast
+	call store_contw
+	branch le_send_auto_len_by_mem
+
+
+
+le_parse_att_read_request:
+	fetcht 2,mem_le_att_handle
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_READ_AUTH,le_send_att_read_response_check_auth
+
+le_send_att_read_response:
+	call le_att_get_handle_ptr
+	branch le_send_att_error_response_notfound,blank
+	increase -2,contr
+	ifetch 2,contr
+	arg UUID_CHRCTR_DEVICE_NAME,temp
+	isub temp,null
+	branch le_send_device_name,zero
+	ifetch 1,contr
+	sub pdata,22,null
+	branch le_send_att_read_response_less,positive
+	force 22,pdata
+le_send_att_read_response_less:
+	copy pdata,regc
+	call store_contr
+	add regc,1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_RESPONSE
+	istore 1,contw
+	copy regc,loopcnt
+	call get_contr
+	branch memcpy
+
+le_send_device_name:
+	call store_contr
+	fetch 1,mem_le_name_len
+	add pdata,1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_name_len
+	copy pdata,loopcnt
+	arg mem_le_name,contr
+	branch memcpy
+	
+	
+le_send_att_read_response_check_auth:
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch le_send_att_read_response,zero
+//le_send_att_read_response_error_insufficient_auth:
+	call le_check_encrypt_state
+	nbranch le_send_att_read_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
+
+
+le_parse_att_read_blob_request:
+	ifetch 2,contr
+	store 2,mem_le_att_offset
+le_send_att_read_blob_response:
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BLOB_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_att_offset
+	iforce rega
+	fetcht 2,mem_le_att_handle
+	call le_att_get_handle_ptr 
+	branch le_send_att_error_response_notfound,blank
+	ifetch 1,contr
+	isub rega,loopcnt
+	nbranch le_send_att_error_response_notfound,positive
+	sub loopcnt,22,null
+	branch le_send_att_read_blob_response_less,positive
+	force 22,loopcnt
+le_send_att_read_blob_response_less:
+	deposit rega
+	iadd contr,contr
+	call memcpy_fast
+	call store_contw
+	branch le_send_auto_len_by_mem
+
+
+le_parse_att_read_by_group_type_request:
+	call le_get_search_handle_start_end_common
+ 	call le_get_search_att_type
+	branch le_send_att_read_by_group_type_response
+	
+//mem_le_search_att_type
+//mem_le_search_handle_start
+//mem_le_search_handle_end
+le_send_att_read_by_group_type_response:
+	arg 2,timeup
+	fetcht 2,mem_le_search_handle_start
+//	arg 23,pdata
+//	isub temp,null
+//	call ice_break,zero
+	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
+le_send_att_read_by_group_type_response_loop:
+	call le_att_check_handle_end
+	nbranch le_send_att_read_by_group_type_end0,positive
+	fetcht 2,mem_temp
+	call le_att_get_handle_info_from_ptr
+	beq 1,le_send_att_read_by_group_type_end1
+
+	call le_att_same_type
+	nbranch le_send_att_read_by_group_type_next_handle,zero
+	copy timeup,pdata
+	beq 0,le_send_att_read_by_group_type_end1
+	nbranch le_send_att_read_by_group_type_store_write_record,user		//un first
+	disable user
+	//first att uuid
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_GROUP_TYPE_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_curr_att_len
+	increase 4,pdata
+	istore 1,contw
+	call store_contw
+	branch le_send_att_read_by_group_type_store_record
+le_send_att_read_by_group_type_store_write_record:
+	fetch 1,mem_le_curr_att_len
+	beq 16,le_send_att_read_by_group_type_end1
+	fetch 2,mem_temp
+	increase -1,pdata
+	store 2,mem_le_cur_handle_end
+	call le_write_att_record
+le_send_att_read_by_group_type_store_record:
+	fetch 2,mem_temp
+	store 2,mem_le_cur_handle_start
+	call le_store_att_record
+	increase -1,timeup
+//	branch le_send_att_read_by_group_type_last_find,zero		
+le_send_att_read_by_group_type_next_handle:
+	call le_att_next_handle
+	branch le_send_att_read_by_group_type_response_loop
+
+le_send_att_read_by_group_type_end0:	//> att handle end
+	fetch 2,mem_temp
+	store 2,mem_le_cur_handle_end
+	branch le_send_att_read_by_group_type_end_common
+le_send_att_read_by_group_type_end1:	//>att max list handle or diff len 
+	fetch 2,mem_temp
+	increase -1,pdata
+	store 2,mem_le_cur_handle_end
+	branch le_send_att_read_by_group_type_end_common
+le_send_att_read_by_group_type_end_common:
+	branch le_send_att_error_response_notfound,user
+	call le_write_att_record
+	branch le_send_auto_len_by_mem
+
+
+
+
+le_parse_att_write_request:
+	copy contr,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-3,regb
+	call le_writeatt_cb
+le_send_att_write_response_check_auth:
+	fetch 1,mem_le_configuration
+	bbit0 BIT_BLE_WRITE_AUTH,le_send_att_write_response
+	
+	fetcht 2,mem_le_att_handle
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch le_send_att_write_response,zero
+	call le_check_encrypt_state
+	nbranch le_send_att_write_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
+
+le_send_att_write_response:
+	force 1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_WRITE_RESPONSE
+	istore 1,contw
+	rtn
+
+le_check_encrypt_state:
+	call disable_user
+	fetch 1,mem_le_pairing_mode
+	rtneq LE_PAIRING_MODE_NONE
+	fetch 1,mem_context
+	rtnbit1 lestate_encryption
+	branch enable_user
+
+
+le_parse_att_prepare_write_request:
+	add contr,2,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-5,regb
+	call le_writeatt_cb
+	branch le_send_att_prepare_write_response
+
+
+le_send_att_prepare_write_response:
+	fetch 2,mem_le_l2cap_size
+	copy pdata,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_PREPARE_WRITE_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_att_handle
+	istore 2,contw
+	fetch 2,mem_le_l2cap_size
+	add pdata,-5,loopcnt	
+	fetch 2,mem_le_payload_ptr
+	add pdata,7,contr
+	ifetch 2,contr		//offset
+	istore 2,contw
+	branch memcpy_fast
+
+
+
+le_parse_att_execute_write_request:
+
+le_send_att_execute_write_response:
+	force 1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_EXECUTE_WRITE_RESPONSE
+	istore 1,contw
+	rtn
+
+
+
+le_parse_att_write_command:
+	copy contr,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-3,regb
+	branch le_writeatt_cb
+
+
+
+//rga:len temp:handle;rgea,regb,regc already used
+le_att_malloc_tx_notify:
+	copy temp,regc
+	increase 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	increase -3,rega
+	setarg ATTOP_HANDLE_VALUE_NOTIFICATION
+	istore 1,contw
+	copy regc,temp
+	istoret 2,contw
+	rtn
+
+//rga:len temp:handle;rgea,regb,regc already used
+le_att_malloc_tx_indication:
+	copy temp,regc
+	increase 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	increase -3,rega
+	setarg ATTOP_HANDLE_VALUE_INDICATION
+	istore 1,contw
+	copy regc,temp
+	istoret 2,contw
+	rtn
+
+
+///////////////////////////ATT common function////////////////////////////////////
+
+le_send_att_error_response_notfound:	
+	jam ATT_ERR_ATTRIBUTE_NOT_FOUND,mem_le_err_code
+le_send_att_error_response:	
+	force 5,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_ERROR_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_att_opcode
+	istore 1,contw
+	fetch 2,mem_le_att_handle
+	istore 2,contw
+	fetch 1,mem_le_err_code
+	istore 1,contw
+	rtn
+
+
+le_fifo_malloc_tx_l2cap_gatt:
+	force LE_L2CAP_CID_ATT,regb
+	branch le_fifo_malloc_tx_l2cap
+
+
+le_att_next_handle:
+	fetcht 2,mem_temp
+	increase 1,temp
+	storet 2,mem_temp
+	rtn
+
+le_att_check_handle_end:
+	fetcht 2,mem_temp
+	fetch 2,mem_le_search_handle_end
+	isub temp,null
+	rtn
+
+
+le_att_same_type:
+	fetcht 1,mem_le_search_att_type_length
+	arg mem_le_search_att_type,rega
+le_att_check_same_common:
+	fetch 1,mem_le_cur_uuid_length
+	copy pdata,loopcnt
+	isub temp,null
+	nrtn zero
+	arg mem_le_cur_uuid ,regb
+	branch string_compare
+
+le_att_same_uuid:
+	fetcht 1,mem_le_search_uuid_length
+	arg mem_le_search_uuid,rega
+	branch le_att_check_same_common
+
+
+le_store_att_record:
+	fetch 1,mem_le_curr_att_len
+	store 1, mem_tmp_buffer
+	copy pdata,loopcnt
+	call get_contr
+	branch memcpy_fast
+
+
+le_write_att_record:
+	call get_contw
+	fetch 2,mem_le_cur_handle_start
+	istore 2,contw
+	fetch 2,mem_le_cur_handle_end
+	istore 2,contw
+le_write_att_record_common:
+	fetch 1,mem_tmp_buffer
+	copy pdata,loopcnt
+	call memcpy_fast
+	branch store_contw
+
+
+
+le_send_auto_len_by_mem:
+	call get_contw
+	call le_fifo_get_last_att_ptr
+	copy contw,pdata
+	isub contr,rega
+	call le_fifo_get_last_l2cap_ptr
+	copy rega,pdata
+	istore 2,contr
+	increase 4,rega
+	call le_fifo_get_last_tx_ptr
+	copy rega,pdata
+	istore 1,contr
+	rtn
+
+
+le_get_search_handle_start_end_common:
+	rshift8 pdata,pdata
+	store 2,mem_le_search_handle_start
+	ifetch 2,contr
+	store 2,mem_le_search_handle_end
+	rtn
+
+
+
+
+le_parse_signaling:
+	ifetch 1,contr
+	ifetcht 1,contr //id
+	ifetcht 2,contr //length
+	beq L2CAP_CONNECTION_PARAMETER_UPDATE_RESPONSE,le_l2cap_parse_conn_parameter_update_rsp
+	rtn
+le_l2cap_parse_conn_parameter_update_rsp:
+	ifetch 2,contr	//result
+	store 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	jam BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+//mem_le_interval_min:the ptr that connection parameter,
+//include 	ConnIntervalMin,ConnIntervalMax,
+//		ConnSlaveLatency,ConnSupervisionTimeout
+le_l2cap_tx_update_req:
+	arg 0x0c,rega
+	arg L2CAP_CONNECTION_PARAMETER_UPDATE_REQUEST,regc
+	call le_fifo_malloc_tx_l2cap_signaling
+	setarg 0x08
+	istore 2,contw
+	fetch 8,mem_le_interval_min
+	istore 8,contw
+	rtn
+
+
+//rega:len regc:signaling opcode
+le_fifo_malloc_tx_l2cap_signaling:
+	call le_l2cap_update_signaling_identifier
+	arg LE_L2CAP_CID_SIGNAL,regb
+	call le_fifo_malloc_tx_l2cap
+	copy regc,pdata
+	istore 1,contw
+	fetch 1,mem_le_signaling_identifier
+	istore 1,contw
+	rtn
+
+
+le_l2cap_update_signaling_identifier:
+	fetch 1,mem_le_signaling_identifier
+	//beq 0xff,le_l2cap_signaling_identifier_set_1
+	pincrease 1
+	store 1,mem_le_signaling_identifier
+	rtnne 0
+	
+le_l2cap_reset_signaling_identifier:
+	jam 1,mem_le_signaling_identifier
+	rtn
+
+
+
+
+le_pairing_mode_init:
+	fetch  1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_NONE, le_set_no_pairing
+	beq LE_PAIRING_MODE_LAGACY_JUSTWORK,le_set_pairing_mode_lagacy_just_work
+	beq LE_PAIRING_MODE_LAGACY_PASSKEY,le_set_pairing_mode_lagacy_passkey
+	beq LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK,le_set_pairing_mode_secure_justwork
+	beq LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC,le_set_pairing_mode_secure_numeric
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_set_pairing_mode_secure_passkey
+	rtn
+
+le_set_pairing_mode_secure_justwork:
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch le_set_noinputnooutput
+le_set_pairing_mode_secure_numeric:
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	jam FLAG_IOCAP_DISPLAYYESNO,mem_le_pres_iocap
+	rtn
+le_set_pairing_mode_secure_passkey:	
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch le_set_displayonly
+le_set_no_pairing:
+	jam FLAG_LE_NO_BONDING_NO_MITM,mem_le_pres_auth
+le_set_noinputnooutput:	
+	jam FLAG_IOCAP_NOINPUTNOOUTPUT,mem_le_pres_iocap
+	rtn
+le_set_pairing_mode_lagacy_just_work:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+	branch le_set_noinputnooutput
+le_set_pairing_mode_lagacy_passkey:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+le_set_displayonly:	
+	jam FLAG_IOCAP_DISPLAYONLY,mem_le_pres_iocap
+	rtn
+
+	
+le_secure_connection_enable:
+	fetch 1,mem_le_pres_auth
+	set1 LE_AUTH_SECURE_CONNECTION_PAIRING_BIT,pdata
+	store 1,mem_le_pres_auth
+	rtn
+le_secure_connection_disable:
+	fetch 1,mem_le_pres_auth
+	set0 LE_AUTH_SECURE_CONNECTION_PAIRING_BIT,pdata
+	store 1,mem_le_pres_auth
+	rtn
+
+le_parse_smp:
+	ifetch 1,contr
+	beq SMP_PAIRING_REQUEST,le_parse_smp_pairing_request
+//	beq SMP_PAIRING_RESPONSE,le_parse_smp_pairing_response
+	beq SMP_PAIRING_CONFIRM,le_parse_smp_pairing_confirm
+	beq SMP_PAIRING_RANDOM,le_parse_smp_pairing_random
+	beq SMP_PAIRING_FAILED,le_parse_smp_pairing_failed
+	beq SMP_ENCRYPTION_INFORMATION,le_parse_smp_encryption_information
+	beq SMP_MASTER_IDENTIFICATION,le_parse_smp_master_identification
+	beq SMP_IDENTITY_INFORMATION,le_parse_smp_identity_information
+	beq SMP_IDENTITY_ADDRESS_INFORMATION,le_parse_smp_identity_address_information
+	beq SMP_SIGNING_INFORMATION,le_parse_smp_signing_information
+	beq SMP_SECURITY_REQUEST,le_parse_smp_security_request
+	beq SMP_PAIRING_PUBLIC_KEY,le_parse_smp_public_key
+	beq SMP_PAIRING_DHKEY_CHECK,le_parse_smp_dhkey_check
+	rtn
+
+
+
+le_send_smp_security_request:
+	force 2,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_SECURITY_REQUEST
+	istore 1,contw
+	fetch 1,mem_le_pres_auth
+	istore 1,contw
+	rtn
+		
+le_parse_smp_pairing_request:
+	store 1,mem_le_preq
+	ifetch 6,contr
+	istore 6,contw
+	fetch 1,mem_le_pairing_mode
+	beq  LE_PAIRING_MODE_NONE,le_smp_pairing_fail_reason_not_support_pairing
+	call le_send_smp_pairing_response
+	call le_check_master_support_secure_connect
+	jam FLAG_LE_PAIRING_RCV_PAIRING_REQ,mem_le_pairing_state
+	fetch 1,mem_le_preq_iocap
+	beq  FLAG_IOCAP_DISPlAYONLY,le_set_tk_0
+	beq  FLAG_IOCAP_DISPLAYYESNO,le_set_tk_0
+	beq  FLAG_IOCAP_NOINPUTNOOUTPUT,le_set_tk_0
+	fetch 1,mem_le_pairing_mode	
+	beq LE_PAIRING_MODE_LAGACY_PASSKEY,le_parse_smp_pairing_req_passkey
+	rtneq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY
+le_set_tk_0:
+	arg 0,pdata
+	store 4,mem_le_tk
+	rtn
+
+le_parse_smp_pairing_req_passkey:
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_PASSKEY_FIXED_KEY,le_parse_smp_pairing_req_fixed_passkey
+le_genernate_tk:
+	arg mem_le_tk,rega
+	copy rega,contw
+	arg 3,loopcnt
+	call generate_random_loop
+	fetch 2,mem_le_tk + 2
+	and_into 0x7,pdata
+	store 2,mem_le_tk + 2
+le_parse_smp_pairing_req_fixed_passkey:
+	jam BT_EVT_LE_TK_GENERATE,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_check_master_support_secure_connect:
+	fetch 1,mem_le_preq_auth
+	rtnbit1  LE_AUTH_SECURE_CONNECTION_PAIRING_BIT
+	fetch 1,mem_le_pairing_mode
+	rtnbit0 LE_PAIRING_MODE_SECURE_CONNECT_BIT
+	branch app_ble_disconnect	
+
+le_send_smp_pairing_response:
+	force 7,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	fetch 7,mem_le_pres
+	istore 7,contw
+	rtn
+		
+
+le_parse_smp_pairing_confirm:
+	copy contr,rega
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_parse_smp_pairing_confirm_secure_passkey
+	copy rega,contr
+	arg mem_le_rconfirm,contw
+	call memcpy16
+	branch le_send_smp_pairing_confirm
+le_parse_smp_pairing_confirm_secure_passkey:
+	copy rega,contr
+	arg mem_le_rconfirm,contw
+	call memcpy16
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_PASSKEY_WAIT_CONFIRM,mem_le_secure_connect_state	
+	rtn
+
+
+le_send_smp_pairing_confirm:
+	fetch 1,mem_le_pairing_mode
+	bbit1 LE_PAIRING_MODE_SECURE_CONNECT_BIT,le_send_smp_pairing_confirm_sc
+	call generate_confirm
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_CONFIRM
+	istore 1,contw
+	branch  store_aes_result
+
+	
+le_send_smp_pairing_confirm_sc:
+	arg mem_le_srand,contw	
+	call generate_random
+	call function_f4_cb
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_CONFIRM
+	istore 1,contw
+	branch  load_inverse_result
+
+
+	
+le_parse_smp_pairing_random:	
+	copy contr,rega
+	fetch 1,mem_le_pairing_mode
+	bbit1 LE_PAIRING_MODE_SECURE_CONNECT_BIT,le_parse_smp_pairing_random_sc
+	copy rega,contr
+	call authenticate_rconfirm
+	branch le_parse_smp_pairing_random_success,zero
+le_send_pairing_confirm_value_failed:
+	jam PAIRING_FAILED_CONFIRM_VALUE_FAILED,mem_le_ll_pairing_fail_reason
+le_send_pairing_failed:
+	force 2,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_FAILED
+	istore 1,contw
+	fetch 1,mem_le_ll_pairing_fail_reason
+	istore 1,contw	
+le_parse_smp_pairing_failed:
+	force smp_pairing_timer,queue
+	call timer_stop
+	jam FLAG_LE_PAIRING_NULL,mem_le_pairing_state
+	jam BT_EVT_LE_PAIRING_FAIL,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_smp_pairing_fail_reason_not_support_pairing:
+	jam PAIRING_FAILED_PAIRING_NOT_SUPPORTED,mem_le_ll_pairing_fail_reason
+	branch le_send_pairing_failed
+	
+	
+le_parse_smp_pairing_random_sc:
+	arg mem_le_mrand,contw
+	copy rega,contr
+	call memcpy16	
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_parse_smp_pairing_random_sc_passkey
+	call function_g2
+//	jam LE_SC_STAT_RECEIVE_RANDOM,mem_le_secure_connect_state
+//	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	call le_send_smp_pairing_random
+	fetch 1,mem_le_pairing_mode
+	rtnne LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC
+	jam BT_EVT_LE_GKEY_GENERATE,mem_fifo_temp
+	branch ui_ipc_send_event	
+	
+le_parse_smp_pairing_random_sc_passkey:
+	call function_f4_ca
+	arg mem_AES_CMAC_temp,contw
+	call load_inverse_result	
+	arg mem_AES_CMAC_temp,rega
+	arg mem_le_rconfirm ,regb
+	arg 16,loopcnt
+	call string_compare
+	nbranch le_send_pairing_confirm_value_failed,zero
+	branch le_send_smp_pairing_random
+	
+le_parse_smp_pairing_random_success:
+	call generate_stk
+	jam BT_EVT_LE_PAIRING_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event
+	jam 1,mem_ltk_exists
+	jam FLAG_LE_PAIRING_AFTER_AUTH,mem_le_pairing_state
+	
+le_send_smp_pairing_random:
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_RANDOM
+	istore 1,contw
+	arg mem_le_srand,contr
+	branch memcpy16
+	
+le_parse_smp_encryption_information:
+	arg mem_le_peer_ltk,contw
+	branch memcpy16
+
+le_send_smp_encryption_information:
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_ENCRYPTION_INFORMATION
+	istore 1,contw
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_PAIRING_FIXED_LTK,le_send_fixed_ltk
+	arg mem_le_ltk,contr
+	branch memcpy16
+
+le_send_fixed_ltk:
+	arg mem_le_fixed_ltk,contr
+	branch memcpy16
+
+
+le_send_smp_master_identification:
+	arg mem_le_ediv,contw
+	force 10,loopcnt
+	call generate_random_loop
+	force 11,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_MASTER_IDENTIFICATION
+	istore 1,contw
+	fetch 2,mem_le_ediv
+	istore 2,contw
+	fetch 8,mem_le_rand
+	istore 8,contw
+	rtn
+
+le_send_smp_identity_information:
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_IDENTITY_INFORMATION
+	istore 1,contw
+	setarg 0
+	istore 8,contw
+	istore 8,contw
+	rtn
+	
+
+le_send_smp_identity_address_information:
+	force 8,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_IDENTITY_ADDRESS_INFORMATION
+	istore 1,contw
+	fetch 1,mem_le_conn_own_addr_type
+	istore 1,contw
+	fetch 6,mem_le_lap	
+	istore 6,contw
+	rtn	
+
+
+le_send_pairing_fail_unspecified_reason:
+	jam PAIRING_FAILED_UNSPECIFIED_REASON,mem_le_ll_pairing_fail_reason
+	branch le_send_pairing_failed
+
+le_check_init_key_distribution:
+	fetch 1,mem_le_pres_init_key_distribution
+	fetcht 1,mem_le_pres_init_key_distribution
+	iand temp,pdata
+	rtn	
+
+le_parse_smp_identity_information:
+	arg mem_le_irk,contw
+	call memcpy16
+	call le_check_init_key_distribution
+	isolate0 LE_INITATOR_IRK_BIT,pdata
+	branch le_send_pairing_fail_unspecified_reason,true
+	fetch 1,mem_device_option
+	rtnne dvc_op_module
+	call le_check_master_addr_type
+	nrtn user
+	branch app_ble_store_reconn_info
+
+//output:user is enable ,random addr type
+le_check_master_addr_type:
+	call disable_user
+	fetch 1,mem_le_conn_peer_addr_type
+	rtneq MASTER_PUBLIC_ADDR
+	fetch 1,mem_le_plap+5
+	compare 0xc0,pdata,0xc0
+	rtn true
+	branch enable_user
+
+le_parse_smp_identity_address_information:
+	call le_check_init_key_distribution
+	isolate0 LE_INITATOR_IRK_BIT,pdata
+	branch le_send_pairing_fail_unspecified_reason,true
+	rtn
+
+le_parse_smp_master_identification:
+le_parse_smp_signing_information:	
+le_parse_smp_security_request:
+	rtn
+	
+le_parse_smp_public_key:
+	arg mem_le_pubkey_remote_x_256,contw	
+	call memcpy64
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_RECEIVE_PUBLIC_KEY,mem_le_secure_connect_state
+	rtn
+
+le_parse_smp_dhkey_check:
+	arg mem_sp_confirm_remote,contw
+	call memcpy16	
+	jam LE_SC_STAT_RECEIVE_DHKEY,mem_le_secure_connect_state
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn	
+
+le_send_smp_pairing_public_key:
+	force 65,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_PUBLIC_KEY
+	istore 1,contw	
+	arg mem_le_pubkey_local_x_256,contr
+	branch memcpy64
+	
+le_send_smp_pairing_dhkey_check:
+	call function_f6_eb	
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_DHKEY_CHECK
+	istore 1,contw
+	branch load_inverse_result
+	
+
+le_check_paring_time:
+	fetch 1,mem_le_pairing_state
+	rtneq FLAG_LE_PAIRING_END
+	arg FLAG_LE_PAIRING_RCV_PAIRING_REQ,temp
+	isub temp,null
+	nrtn positive
+	arg smp_pairing_timer,queue
+	call timer_check
+	nrtn blank
+	branch le_send_pairing_fail_unspecified_reason
+
+le_pairing_sm:
+	bpatchx patch2f_0,mem_patch2f
+	fetch 1,mem_le_pairing_state
+	beq FLAG_LE_PAIRING_NULL,le_pairing_sm_null
+	beq FLAG_LE_PAIRING_START,le_pairing_sm_start
+	beq FLAG_LE_PAIRING_SEND_RECURITY_REQ,le_pairing_sm_send_sec_req
+	beq FLAG_LE_PAIRING_RCV_PAIRING_REQ,le_pairing_sm_rcv_pairing_req
+	beq FLAG_LE_PAIRING_AFTER_AUTH,le_pairing_sm_after_auth
+	beq FLAG_LE_PARING_SEND_ENC_INFORMATION,le_pairng_sm_send_enc_information
+	beq FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION,le_pairng_sm_send_master_indentification
+	beq FLAG_LE_PARING_SEND_INDENTITY_INFORMATION,le_pairng_sm_send_indentity_information
+	rtn
+
+le_pairing_sm_null:
+le_pairing_sm_send_sec_req:
+	fetch 1,mem_le_enc_state
+	rtnne FLAG_LE_SEND_START_ENC_RSP
+	jam FLAG_LE_ENC_END,mem_le_enc_state
+	jam FLAG_LE_PAIRING_END,mem_le_pairing_state
+	jam BT_EVT_LE_RECONNECT_COMPLETE ,mem_fifo_temp
+	branch ui_ipc_send_event	
+	
+	
+le_pairing_sm_start:
+	jam FLAG_LE_PAIRING_SEND_RECURITY_REQ,mem_le_pairing_state
+	branch le_send_smp_security_request
+
+le_pairing_sm_rcv_pairing_req:
+	jam FLAG_LE_PAIRING_AUTH,mem_le_pairing_state
+	setarg TIMER_SMP_PAIRING_TIMEOUT
+	arg smp_pairing_timer,queue
+	branch timer_init
+	
+le_pairing_sm_after_auth:
+	fetch 1,mem_le_enc_state
+	beq FLAG_LE_SEND_START_ENC_RSP,le_pairing_sm_after_auth_start_enc
+	rtn
+	
+le_pairing_sm_after_auth_start_enc:
+	jam FLAG_LE_PARING_SEND_ENC_INFORMATION,mem_le_pairing_state
+	jam BT_EVT_LE_ENC_INFO,mem_fifo_temp
+	call ui_ipc_send_event
+	call le_send_smp_encryption_information
+	fetch 1,mem_device_option
+	rtnne dvc_op_module
+	call le_check_master_addr_type
+	rtn user
+	branch app_ble_store_reconn_info
+
+
+le_pairng_sm_send_enc_information:	
+	jam FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION,mem_le_pairing_state
+	branch le_send_smp_master_identification
+
+le_pairng_sm_send_master_indentification:	
+	fetch 1,mem_le_preq_resp_key_distribution
+	fetcht 1,mem_le_pres_resp_key_distribution
+	iand temp,pdata
+	isolate0 LE_INITATOR_IRK_BIT,pdata
+	branch le_parse_start_enc_rsp_after_auth_end,true
+	jam FLAG_LE_PARING_SEND_INDENTITY_INFORMATION,mem_le_pairing_state
+	branch le_send_smp_identity_information
+
+le_pairng_sm_send_indentity_information:		
+	call le_send_smp_identity_address_information
+	branch le_parse_start_enc_rsp_after_auth_end
+
+
+le_parse_start_enc_rsp_after_auth_end:
+	force smp_pairing_timer,queue
+	call timer_stop
+	jam FLAG_LE_ENC_END,mem_le_enc_state
+	jam FLAG_LE_PAIRING_END,mem_le_pairing_state
+	jam BT_EVT_LE_PAIRING_COMPLETE ,mem_fifo_temp
+	branch ui_ipc_send_event	
+	
+
+
+le_secure_connect_sm:
+	bpatchx patch2f_1,mem_patch2f
+	fetch 1,mem_le_pairing_mode
+	rtnbit0 LE_PAIRING_MODE_SECURE_CONNECT_BIT
+	fetch 1,mem_le_secure_connect_flag
+	rtnne LE_SP_FLAG_COMMIT_256
+	jam SP_FLAG_STANDBY,mem_le_secure_connect_flag
+	fetch    1,mem_le_secure_connect_state
+	beq  LE_SC_STAT_RECEIVE_PUBLIC_KEY,le_sc_sm_receive_public_key
+	beq LE_SC_STAT_WAIT_SEND_PUBLIC_KEY,le_sc_sm_wait_send_public_key
+	beq LE_SC_STAT_SEND_PUBLIC_KEY,le_sc_sm_send_public_key
+	beq LE_SC_STAT_RECEIVE_DHKEY,le_sc_sm_receive_dhkey
+	beq LE_SC_STAT_WAIT_CONFIRM_GKEY,le_sc_sm_wait_confirm_gkey
+	beq  LE_SC_STAT_PASSKEY_WAIT_CONFIRM,le_sc_sm_passkey_wait_confirm
+	rtn	
+
+
+le_sc_sm_passkey_wait_confirm:
+	fetch 1,mem_authentication_passkey_times
+	copy pdata,queue
+	increase 1,pdata
+	store 1,mem_authentication_passkey_times
+	fetch 4,mem_le_tk
+	qisolate1 pdata
+	setarg 0x80
+	setflag true,0,pdata
+	store 1,mem_passkey_1bit
+	branch le_sc_sm_ready_send_pairing_confirm
+	
+le_sc_sm_wait_confirm_gkey:
+	fetch 1,mem_le_sc_confirm_gkey_flag
+	jam FLAG_LE_SC_CONFRIM_NULL,mem_le_sc_confirm_gkey_flag
+	beq FLAG_LE_SC_CONFRIM_GKEY_OK,le_sc_confirm_gkey_ok
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn
+	
+le_sc_confirm_gkey_ok:
+	jam BT_EVT_LE_PAIRING_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event	
+	jam FLAG_LE_PAIRING_AFTER_AUTH,mem_le_pairing_state
+	branch le_send_smp_pairing_dhkey_check
+
+le_sc_sm_receive_dhkey:
+	fetch 1,mem_sp_dhkey_invalid
+	beq SP_KEY_VALID_256,le_dhkey_ready
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn
+
+le_dhkey_ready:
+	call function_f5
+//	arg mem_le_r,contw
+//	force 2,loopcnt
+//	call memset0
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY ,le_dhkey_ready_common
+	call le_set_tk_0 
+le_dhkey_ready_common:
+	call function_f6_ea
+	arg mem_AES_CMAC_temp,rega
+	arg mem_sp_confirm_remote ,regb
+	arg 16,loopcnt
+	call string_compare
+	branch le_dhkey_check_ok,zero
+le_dhkey_check_fail:	
+	jam PAIRING_FAILED_DHKEY_CHECK_FAILED,mem_le_ll_pairing_fail_reason
+	branch le_send_pairing_failed
+
+	
+le_dhkey_check_ok:
+	call sp_calc_check_publickey_256
+	nbranch le_dhkey_check_fail,zero
+	jam 1,mem_ltk_exists
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK,le_sc_confirm_gkey_ok
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY ,le_sc_confirm_gkey_ok	
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_WAIT_CONFIRM_GKEY,mem_le_secure_connect_state	
+	rtn	
+
+le_sc_sm_send_public_key:
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_sc_sm_send_public_key_passkey
+	jam 0,mem_passkey_1bit
+le_sc_sm_ready_send_pairing_confirm:
+	branch le_send_smp_pairing_confirm
+
+le_sc_sm_send_public_key_passkey:
+//	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+//	jam LE_SC_STAT_PASSKEY_WAIT_CONFIRM,mem_le_secure_connect_state	
+//	branch p_ng_event_le_get_passkey
+	jam 0,mem_authentication_passkey_times
+	branch le_parse_smp_pairing_req_passkey
+
+	
+le_sc_sm_receive_public_key:
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	fetch 1,mem_le_sc_local_key_invalid
+	beq SP_KEY_VALID_256,le_public_key_ready
+//	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn
+	
+le_public_key_ready:
+	jam LE_SC_STAT_WAIT_SEND_PUBLIC_KEY,mem_le_secure_connect_state	
+	jam SP_KEY_INVALID,mem_sp_dhkey_invalid
+	branch sp_dhkey_calc_256	
+
+le_sc_sm_wait_send_public_key:
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_SEND_PUBLIC_KEY,mem_le_secure_connect_state
+	branch le_send_smp_pairing_public_key
+
+
+
+le_fifo_malloc_tx_l2cap_smp:
+	force LE_L2CAP_CID_SMP,regb
+	branch le_fifo_malloc_tx_l2cap
+
+
+
+le_parse_ll:
+	fetch 1,mem_le_rxbuf+2
+	beq LL_CONNECTION_UPDATE_REQ,le_parse_connection_update_req
+	beq LL_CHANNEL_MAP_REQ,le_parse_channel_map_req
+	beq LL_TERMINATE_IND,le_parse_terminate_ind
+	beq LL_ENC_REQ,le_parse_enc_req
+	beq LL_ENC_RSP,le_parse_enc_rsp
+	beq LL_START_ENC_REQ,le_parse_start_enc_req
+	beq LL_START_ENC_RSP,le_parse_start_enc_rsp
+	beq LL_UNKNOWN_RSP,le_parse_unknown_rsp
+	beq LL_FEATURE_REQ,le_parse_feature_req
+	beq LL_FEATURE_RSP,le_parse_feature_rsp
+	beq LL_PAUSE_ENC_REQ,le_parse_pause_enc_req
+	beq LL_PAUSE_ENC_RSP,le_parse_pause_enc_rsp
+	beq LL_VERSION_IND,le_parse_version_ind
+	beq LL_REJECT_IND,le_parse_reject_ind
+	beq LL_PING_REQ,le_parse_ping_req
+	beq LL_PING_RSP,le_parse_ping_rsp
+	arg 2,rega
+	arg LL_UNKNOWN_RSP,regb
+	call le_fifo_malloc_tx_ll
+	fetch 1,mem_le_rxbuf+2
+	istore 1,contw
+	rtn	
+
+
+le_parse_connection_update_req:
+	ifetch 9,contr
+	store 9,mem_le_new_param
+	ifetch 2,contr
+	store 2,mem_le_instant
+	fetch 1,mem_le_state
+	set1 lestate_update_param,pdata
+	store 1,mem_le_state
+	rtn
+
+le_parse_channel_map_req:
+	ifetch 5,contr
+	store 5,mem_le_new_map
+	ifetch 2,contr
+	store 2,mem_le_instant
+	fetcht 2,mem_le_event_count
+	isub temp,null
+	nbranch le_parse_terminate_ind,positive
+	fetch 1,mem_le_state
+	set1 lestate_update_map,pdata
+	store 1,mem_le_state
+	rtn
+
+
+le_parse_terminate_ind:
+	setarg 20 // 200ms
+	store 2,mem_le_superto
+	store 2,mem_le_init_superto
+	rtn
+
+le_send_terminate_ind_user_terminated:
+	arg ERROR_REMOTE_USER_TERMINATED_CONNECTION,regc
+
+//regc:The ErrorCode field shall be set to inform the remote device why the connection is about to be terminated.
+le_send_terminate_ind:
+	arg 2,rega
+	arg LL_TERMINATE_IND,regb
+	call le_fifo_malloc_tx_ll
+	copy regc,pdata
+	istore 1,contw
+	rtn
+
+le_parse_feature_req:
+
+le_send_feature_rsp:
+	arg 9,rega
+	arg LL_FEATURE_RSP,regb
+	call le_fifo_malloc_tx_ll
+	setarg param_le_features
+	istore 8,contw
+	rtn
+
+
+le_parse_version_ind:
+	rtn master
+le_send_version_ind:
+	arg 6,rega
+	arg LL_VERSION_IND,regb
+	call le_fifo_malloc_tx_ll
+	fetch 5,mem_lmp_version
+	istore 5,contw
+	rtn
+
+
+le_parse_ping_req:
+	arg LL_PING_RSP,regb
+	branch le_send_ll_one_lenth
+
+//regb:ll opcode
+le_send_ll_one_lenth:
+	arg 1,rega
+	branch le_fifo_malloc_tx_ll
+
+	
+le_parse_enc_req:
+	ifetch 8,contr
+	store 8,mem_le_rand
+	ifetch 2,contr
+	store 2,mem_le_ediv
+	ifetch 8,contr
+	store 8,mem_le_skdm
+	ifetch 4,contr
+	store 4,mem_le_ivm
+	call le_send_enc_rsp
+	bpatchx patch2f_2,mem_patch2f
+	fetch 1,mem_le_pairing_state
+	beq FLAG_LE_PAIRING_AFTER_AUTH,le_parse_enc_req_after_auth
+	fetch 1,mem_le_configuration
+	bbit1  BIT_BLE_PAIRING_FIXED_LTK,le_parse_enc_req_fixed_ltk
+	fetch 1,mem_nv_data_number
+	ncall load_device_list_mode_4,blank
+	fetch 1,mem_ltk_exists
+	beq 0,le_ltk_lost
+le_parse_enc_req_after_auth:
+	jam FLAG_LE_RCV_ENC_START,mem_le_enc_state
+	call  le_send_start_enc_req
+	branch generate_sk
+
+le_parse_enc_req_fixed_ltk:
+	jam 1,mem_ltk_exists
+	arg mem_le_fixed_ltk,contr
+	arg mem_le_ltk,contw
+	call memcpy16
+	branch le_parse_enc_req_after_auth
+
+
+le_ltk_lost:
+	bpatchx patch2f_3,mem_patch2f
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	jam FLAG_LE_ENC_NULL,mem_le_pairing_state
+	jam BT_EVT_LE_LTK_LOST,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_send_reject_ind:
+	arg 2,rega
+	arg LL_REJECT_IND,regb
+	call le_fifo_malloc_tx_ll
+	setarg LE_ERR_PIN_OR_KEY_MISSING
+	istore 1,contw
+	rtn		
+	
+le_send_enc_rsp:
+	arg mem_le_skds,contw
+	force 8,loopcnt
+	call generate_random_loop
+	arg mem_le_ivs,contw
+	force 4,loopcnt
+	call generate_random_loop
+	arg 13,rega
+	arg LL_ENC_RSP,regb
+	call le_fifo_malloc_tx_ll
+	fetch 8,mem_le_skds
+	istore 8,contw
+	fetch 4,mem_le_ivs
+	istore 4,contw
+	rtn
+
+le_send_start_enc_req:
+	arg LL_START_ENC_REQ,regb
+	branch le_send_ll_one_lenth
+
+le_send_start_enc_rsp:
+	arg LL_START_ENC_RSP,regb
+	branch le_send_ll_one_lenth
+	
+	
+le_parse_enc_rsp:
+	ifetch 8,contr
+	store 8,mem_le_skds
+	ifetch 4,contr
+	store 4,mem_le_ivs
+	branch generate_sk
+	
+le_parse_start_enc_req:
+	fetch 1,mem_le_state
+	set1 lestate_encryption,pdata
+	store 1,mem_le_state
+	rtn
+	
+le_parse_start_enc_rsp:
+	rtn master
+	jam BT_EVT_LE_START_ENC,mem_fifo_temp
+	call ui_ipc_send_event	
+	jam FLAG_LE_SEND_START_ENC_RSP,mem_le_enc_state
+	branch le_send_start_enc_rsp
+	
+le_parse_pause_enc_req:
+	jam FLAG_LE_ENC_PAUSE,mem_le_enc_state
+	call le_send_pause_enc_rsp	
+	jam BT_EVT_LE_PAUSE_ENC,mem_fifo_temp
+	branch ui_ipc_send_event	
+
+le_send_pause_enc_rsp:
+	arg LL_PAUSE_ENC_RSP,regb
+	branch le_send_ll_one_lenth	
+			
+
+le_parse_feature_rsp:
+le_parse_unknown_rsp:
+le_parse_pause_enc_rsp:
+le_parse_reject_ind:
+le_parse_ping_rsp:
+	rtn
+
+
+	
+/******************************************/
+/*************   LMP Parse   **************/
+/******************************************/
+init_lmp:
+	rtn wake
+init_lmp_work:
+	bpatchx patch2f_4,mem_patch2f
+	setarg 0
+	store 1,mem_lmp_to_send
+	store 1,mem_conn_sm
+	store 1,mem_lmo_opcode1
+	store 1,mem_lmo_opcode2
+	store 1,mem_esco_addr
+	store 1,mem_auth_enable
+	store 1,mem_connection_options
+	store 1,mem_pairing_auth
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	jam 0,mem_switch_fail_master_count
+	jam NULL_ENCRYP,mem_wait_encryption
+init_lmp_reinit:	
+	jam 0,mem_pairing_auth
+	jam 0,mem_sp_localsm
+	jam 0,mem_lmp_conn_state
+	//fall through
+parse_rx_done:
+	rtn
+
+parse_lmp:
+	bpatchx patch2f_5,mem_patch2f
+	call setlocalsm_master,master	//use this flag in hci
+	ncall setlocalsm_slave,master
+	call lmo_fifo_check
+	nrtn blank
+	fetch 1,mem_state_map
+	rtnbit0 smap_rxlmp
+	set0 smap_rxlmp,pdata
+	set0 mark_rxbuf_inuse,mark
+	store 1,mem_state_map
+	fetch 1,mem_rxbuf
+	fetcht 1,mem_state_map
+	isolate1 smap_lmptidinit,pdata
+	setflag true,smap_lmptid,temp
+	storet 1,mem_state_map
+	and_into 0x2,temp //smap_lmptid only
+	storet 1,mem_lmo_tid2
+	fetcht 1,mem_state_map
+	rshift pdata,pdata			/* align lmp_opcode */
+  	store 1,mem_lmi_opcode2
+	bpatchx patch2f_6,mem_patch2f
+  	fetch 1,mem_lmi_opcode2
+  	beq LMP_ESCAPE,parse_lmp_escape//multi
+  	beq LMP_ACCEPTED,parse_lmp_accepted//multi
+	beq LMP_NOT_ACCEPTED,parse_lmp_not_accepted//multi
+  	beq LMP_SET_AFH, parse_lmp_set_afh
+  	beq LMP_CLKOFFSET_REQ, parse_lmp_clkoffset_req
+ 	beq LMP_ENCRYPTION_MODE_REQ, parse_lmp_encryption_mode_req
+ 	beq LMP_ENCRYPTION_KEY_SIZE_REQ,parse_lmp_crypt_key
+	beq LMP_AUTO_RATE,parse_lmp_auto_rate
+	beq LMP_TEST_CONTROL,parse_lmp_test_control//multi
+	beq LMP_TEST_ACTIVATE,parse_lmp_test_activate
+	beq LMP_SETUP_COMPLETE,parse_lmp_setup_complete
+	beq LMP_SUPERVISION_TIMEOUT,parse_lmp_supervision_timeout
+	beq LMP_FEATURES_REQ,parse_lmp_features_req
+	beq LMP_HOST_CONNECTION_REQ,parse_lmp_conn_req
+	beq LMP_VERSION_REQ,parse_lmp_version_req
+	beq LMP_VERSION_RES,parse_lmp_version_res
+	beq LMP_DETACH,parse_lmp_detach
+	beq LMP_MAX_SLOT,parse_lmp_max_slot
+	beq LMP_MAX_SLOT_REQ,parse_lmp_max_slot_req
+	beq LMP_NAME_REQ,parse_lmp_name_req
+	beq LMP_NAME_RES,parse_lmp_name_res
+	beq LMP_FEATURES_RES,parse_lmp_features_res
+	beq LMP_COMB_KEY,parse_lmp_comb_key
+	beq LMP_AU_RAND, parse_lmp_au_rand
+	beq LMP_IN_RAND,parse_lmp_in_rand
+	beq LMP_SRES,parse_lmp_sres
+	beq LMP_INCR_POWER_REQ,parse_lmp_incr_power
+	beq LMP_DECR_POWER_REQ,parse_lmp_decr_power
+	beq LMP_MAX_POWER, parse_lmp_max_power
+	beq LMP_MIN_POWER, parse_lmp_min_power
+	beq LMP_PAGE_MODE_REQ, parse_lmp_page_mode_req
+	beq LMP_PAGE_SCAN_MODE_REQ, parse_lmp_page_scan_mode_req
+	beq LMP_PREFERRED_RATE, parse_lmp_preferred_rate
+	beq LMP_SLOT_OFFSET, parse_lmp_slot_offset
+	beq LMP_SNIFF_REQ, parse_lmp_sniff_req
+	beq LMP_START_ENCRYPTION_REQ, parse_lmp_start_encryption_req
+	beq LMP_STOP_ENCRYPTION_REQ, parse_lmp_stop_encryption_req
+	beq LMP_SWITCH_REQ, parse_lmp_switch_req
+	beq LMP_TEMP_RAND, parse_lmp_temp_rand
+	beq LMP_TEMP_KEY, parse_lmp_temp_key
+	beq LMP_TIMING_ACCURACY_REQ, parse_lmp_timing_accuracy_req
+	beq LMP_TIMING_ACCURACY_RES, parse_lmp_timing_accuracy_res
+	beq LMP_UNIT_KEY, parse_lmp_unit_key
+	beq LMP_UNSNIFF_REQ, parse_lmp_unsniff_req
+	beq LMP_USE_SEMI_PERMANENT_KEY, parse_lmp_use_semi_permanend_key
+	beq  LMP_ENCAPSULATED_HEADER,parse_lmp_encapsulated_header
+	beq  LMP_ENCAPSULATED_PAYLOAD,parse_lmp_encapsulated_payload
+	beq	LMP_SIMPLE_PAIRING_CONFIRM,parse_simple_pairing_confirm
+	beq  LMP_SIMPLE_PAIRING_NUMBER,parse_lmp_simple_pairing_number
+	beq  LMP_DHKEY_CHECK,parse_dhkey_check
+	beq LMP_CLKOFFSET_RES, parse_lmp_clkoffset_res
+	beq LMP_ENC_KEY_SIZE_MASK_REQ,parse_enc_key_size_mask_req
+/* lmp is not recognized, check to see if we respond to all messages */ 
+/* rejecting the unrecognized message with PDU not recognized */
+reject_unknown_packet:
+	jam UNKNOWN_LMP_PDU,mem_lmo_reason2
+reject_lmp_packet:
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	rtn
+
+parse_lmp_clkoffset_req:
+	jam LMP_CLKOFFSET_RES,mem_lmo_opcode2
+	rtn	
+
+parse_enc_key_size_mask_req:
+	jam LMP_ENC_KEY_SIZE_MASK_RES,mem_lmo_opcode2
+	rtn
+	
+parse_lmp_set_afh:
+	fetch 4,mem_rxbuf+1
+	lshift pdata,pdata
+	store 4,mem_afh_instant
+	fetch 1,mem_rxbuf+5
+	store 1,mem_afh_new_mod
+	fetch 5,mem_rxbuf+6
+	store 5,mem_afh_map_new
+	fetch 5,mem_rxbuf+11
+	istore 5,contw
+	fetch 1,mem_mode
+	set1 afh_change,pdata
+	store 1,mem_mode
+	rtn
+parse_lmp_escape:
+	bpatchx patch2f_7,mem_patch2f
+	fetch 1,mem_rxbuf+1
+	set1 7,pdata
+	store 1,mem_lmi_opcode2
+	beq LMP_EXT_ACCEPTED,parse_lmpext_accepted
+	beq LMP_NOT_ACCEPTED_EXT,parse_lmpext_not_accepted
+	beq LMP_SNIFF_SUBRATING_REQ, parse_lmp_sniff_subrating_req
+	beq LMP_SNIFF_SUBRATING_RES, parse_lmp_sniff_subrating_res
+	beq LMP_PACKET_TYPE_TABLE_REQ,parse_lmpext_packet_type_table_req
+	beq LMP_EXT_FEATURES_REQ,parse_lmpext_features_req
+	beq LMP_EXT_FEATURES_RES,parse_lmpext_features_res
+	beq LMP_EXT_CHN_CLASSIFICATION_REQ,parse_lmpext_chn_classification_req
+	beq LMP_PAUSE_ENCRYPTION_REQ,parse_lmpext_pause_encrypt
+	beq LMP_RESUME_ENCRYPTION_REQ,parse_lmpext_resume_encrypt
+	beq LMP_IO_CAP_REQ,parse_lmpext_iocap_req
+	beq LMP_IO_CAP_RES,parse_lmpext_iocap_res
+	rtneq LMP_EXT_FEATURES_RES
+
+
+reject_unknown_ext_packet:
+	jam LMP_NOT_ACCEPTED_EXT,mem_lmo_opcode2
+	jam UNKNOWN_LMP_PDU,mem_lmo_reason2
+	
+	rtn
+parse_lmpext_chn_classification_req:
+	jam LMP_NOT_ACCEPTED_EXT,mem_lmo_opcode2
+	jam NOT_SUPPORT_CHN_CLASSIFICATION,mem_lmo_reason2
+	rtn
+	
+parse_lmpext_iocap_req:
+	call iocap_lmpext_load
+	jam LMP_IO_CAP_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmpext_iocap_res:
+	call iocap_lmpext_load
+	branch iocap_lmpext_common
+	
+iocap_lmpext_load:
+	arg      mem_sp_iocap_remote,contw
+	fetch 3, mem_rxbuf+2
+	istore    3,contw
+	rtn
+	
+iocap_lmpext_common:
+	branch master_set_mem_master_sp_flag,true//is un very ok to use master flag,but we have to add many codes if wo don't
+	rtn
+parse_lmpext_accepted:
+	fetch 1,mem_rxbuf+3
+	set1 7,pdata
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_PACKET_TYPE_TABLE_REQ,parse_lmpext_accepted_ptt
+	rtn
+
+	
+parse_lmpext_not_accepted:
+	fetch 1,mem_rxbuf+3
+	set1 7,pdata
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_PACKET_TYPE_TABLE_REQ,parse_lmpext_not_accepted_ptt
+	rtn
+
+parse_lmpext_accepted_ptt:
+	fetch 1,mem_ptt
+	fetcht 1,mem_state_map
+	nsetflag blank,smap_edr,temp
+	storet 1,mem_state_map
+parse_lmpext_not_accepted_ptt:
+	fetch 1,mem_state
+	rtnbit0 state_init_seq
+	set0 state_init_seq,pdata
+	store 1,mem_state
+	fetch 1,mem_auth_enable
+	nrtn blank
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	rtn
+
+parse_lmpext_pause_encrypt:
+	nbranch parse_lmpext_pause_encrypt_slave, master
+	jam LMP_STOP_ENCRYPTION_REQ,mem_lmo_opcode2
+	branch tid_reply
+
+parse_lmpext_pause_encrypt_slave:	
+	jam LMP_PAUSE_ENCRYPTION_REQ, mem_lmo_opcode2
+	rtn
+
+parse_lmpext_resume_encrypt:
+//trans file to pc may cause pause/resume encrypt
+//if ms is conn_sm_wait_end the controllor won't send ack after recieved start_encypt_accept
+	call tid_reply
+	branch lmp_start_encryption
+
+parse_lmpext_features_req:
+	jam LMP_EXT_FEATURES_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmpext_features_res:
+	fetcht 1,mem_rxbuf+4
+	and temp,0x1,temp
+	storet 1,mem_remote_sppcap
+	fetch 1,mem_hci_cmd
+	bne hci_cmd_wait_remote_ext_feature,parse_lmpext_features_res_not_hci
+	jam 0,mem_hci_cmd
+parse_lmpext_features_res_not_hci:
+	fetch 1,mem_conn_sm
+	rtnne CONN_SM_WAIT_FEATURES_EXT
+	jam CONN_SM_SEND_CONN_REQ,mem_conn_sm
+	branch process_conn_sm
+
+parse_lmp_accepted:
+	bpatchx patch30_0,mem_patch30
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_HOST_CONNECTION_REQ,parse_lmp_accepted_hostconn//ok
+	beq LMP_IN_RAND,parse_lmp_accepted_inrand//ok
+	beq LMP_ENCRYPTION_MODE_REQ,parse_lmp_accepted_enc_mode//ok
+	beq LMP_ENCRYPTION_KEY_SIZE_REQ,parse_lmp_accepted_enc_keysize//ok
+	beq LMP_START_ENCRYPTION_REQ,parse_lmp_accepted_start_enc//ok
+	beq LMP_STOP_ENCRYPTION_REQ,parse_lmp_accepted_stop_enc//ok
+	beq LMP_UNSNIFF_REQ,parse_lmp_accepted_unsniff_req//ok
+	beq LMP_SNIFF_REQ,parse_lmp_accepted_sniff_req//ok
+	beq LMP_SWITCH_REQ,parse_lmp_accepted_switch
+	// simple pairing 
+	beq LMP_ENCAPSULATED_HEADER,parse_lmp_accepted_encapsulated_header//ok
+	beq LMP_ENCAPSULATED_PAYLOAD,parse_lmp_accepted_encapsulated_payload//ok
+	beq LMP_SIMPLE_PAIRING_NUMBER,parse_lmp_accepted_simple_pairing_number//ok
+	beq LMP_DHKEY_CHECK,parse_lmp_accepted_dhkey_check//ok
+	rtn
+	
+parse_lmp_not_accepted:
+	bpatchx patch30_1,mem_patch30
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_NAME_REQ,parse_lmp_not_accepted_name_req//ok
+	beq LMP_HOST_CONNECTION_REQ,parse_lmp_not_accepted_hostconn//ok
+	beq LMP_AU_RAND,parse_lmp_not_accepted_aurand//ok
+	beq LMP_IN_RAND,parse_lmp_not_accepted_inrand//ok
+	beq LMP_SWITCH_REQ,parse_lmp_not_accepted_switch//ok
+	/* simple pairing support */
+	beq  LMP_SIMPLE_PAIRING_NUMBER,parse_lmp_not_accepted_simple_pairing_number//ok
+	beq  LMP_DHKEY_CHECK,parse_lmp_not_accepted_dhkey_check//ok
+	beq LMP_UNSNIFF_REQ,parse_lmp_not_accepted_unsniff_req
+	beq LMP_SNIFF_REQ,parse_lmp_not_acdcept_sniff_req
+	rtn
+
+parse_lmp_accepted_switch:
+	jam BT_EVT_SWITCH_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	branch role_switch_prepare0
+parse_lmp_not_accepted_switch:
+	jam BT_EVT_SWITCH_NOT_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	jam SWITCH_FLAG_NOT_ACCEPT,mem_switch_flag
+	setarg TIMER_SWITCH_WAITE
+	arg switch_wait_timer,queue
+	branch timer_init
+
+
+parse_lmp_accepted_hostconn:
+	//fetch 1,mem_state
+	//rtnbit0 state_init_seq
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_CONN_REQ,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_BB_CONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmo_opcode2
+	//nbranch parse_lmp_accepted_hostconn_ctn,master
+parse_lmp_accepted_hostconn_ctn:
+	/* checking to see if we requested host connection */
+	fetch 1,mem_conn_sm
+	bne CONN_SM_WAIT_CONN_ACCEPT, parse_rx_done
+	//branch parse_lmp_accepted_hostconn_master,master
+	/* continuing on with host connection state machine */
+	jam CONN_SM_AUTH_PAIR,mem_conn_sm
+	rtn
+	//branch host_create_conn_auth_pair
+
+	/* we need to move fast and send au_rand...jumping to next part of state machine for conn */
+//parse_lmp_accepted_hostconn_master:
+	//jam CONN_SM_AUTH_PAIR ,mem_conn_sm
+//	rtn
+
+parse_lmp_not_accepted_hostconn:
+	jam ACL_CONNECTION_ALREADY_EXISTS,mem_disconn_reason_send
+	jam LMP_DETACH,mem_lmo_opcode2
+	/* clearing connection state machine */
+	jam CONN_SM_STANDBY,mem_conn_sm
+	/* sending error message to host */
+	branch parse_rx_done,true
+	rtn
+
+parse_lmp_accepted_inrand:
+	fetch 1,mem_link_key_exists
+	nrtn blank
+	call clear_linkkey
+	call  lmp_generate_key
+	rtn master
+	set1 mark_slave_in_rand_accepted,mark
+	rtn
+
+parse_lmp_accepted_enc_mode:
+	nrtn master
+	jam LMP_ENCRYPTION_KEY_SIZE_REQ,mem_lmo_opcode2
+	fetch 1,mem_state_map
+	rtnbit0 smap_encryption
+	jam LMP_STOP_ENCRYPTION_REQ,mem_lmo_opcode2
+	rtn
+
+parse_lmp_accepted_enc_keysize:
+	branch lmp_start_encryption
+	
+parse_lmp_accepted_start_enc:
+	call send_create_conn_start_l2cap_timer_sm
+	fetch 1,mem_state
+	rtnbit1 state_conn_comp
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	fetch 1,mem_conn_sm
+	rtnne CONN_SM_ENCRYPT_WAIT
+	jam CONN_SM_ENCRYPT_WAIT_CLEAR,mem_conn_sm
+	rtn
+	
+parse_lmp_accepted_stop_enc:
+	/* again this won't work with multipoint. keep track of anyone else encrypting */
+	//jam HOST_STOP_ENCRYPTION,message_queue_B0
+	//jam 1,message_queue_B1
+	//jam HOST_RETURN_SUCCESS,message_queue_B2
+	//fetch 1,mem_lmp_state2
+	//set1 MESSAGE_QUEUE,pdata
+	//store 1,mem_lmp_state2
+	rtn
+
+parse_lmp_not_accepted_aurand:	
+parse_lmp_not_accepted_aurand_send_detach:	
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam OTHER_END_TERMINATED,mem_disconn_reason_send
+	rtn
+/*in pair remote cancel the pair*/
+parse_lmp_not_accepted_inrand:
+	fetch 1,mem_rxbuf+2
+	beq KEY_MISSING,parse_lmp_inrand_key_missing
+	rtnne PAIRING_NOT_ALLOWED
+	jam PAIRING_NOT_ALLOWED,mem_disconn_reason_send
+	jam LMP_DETACH,mem_lmo_opcode2
+	rtn	
+parse_lmp_inrand_key_missing:
+	jam KEY_MISSING,mem_disconn_reason_send
+	jam LMP_DETACH,mem_lmo_opcode2
+	rtn
+	
+parse_lmp_not_accepted_name_req:
+	rtn
+	
+parse_lmp_not_accepted_simple_pairing_number:
+	jam      SP_STAT_NULL,mem_sp_state
+	jam LMP_DETACH,mem_lmo_opcode2
+	branch   parse_rx_done
+	
+parse_lmp_not_accepted_dhkey_check:
+	jam      SP_STAT_NULL,mem_sp_state
+	jam LMP_DETACH,mem_lmo_opcode2
+	branch   parse_rx_done
+parse_lmp_not_accepted_unsniff_req:
+	jam BT_EVT_UNSNIFF_NOT_ACCEPT,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+parse_lmp_accepted_unsniff_req:
+	jam BT_EVT_UNSNIFF_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	branch sniff_exit
+	
+parse_lmp_accepted_sniff_req:
+	jam BT_EVT_SNIFF_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	setarg 0
+	store 2,mem_dsniff
+	fetch 2,mem_sniff_param_interval
+	lshift pdata,pdata
+	store 2,mem_tsniff
+	fetch 1,mem_sniff_param_attempt
+	store 1,mem_sniff_attempt
+	fetch 1,mem_sniff_param_timeout
+	store 1,mem_sniff_timeout
+	branch sniff_init
+	
+parse_lmp_not_acdcept_sniff_req:
+	jam BT_EVT_SNIFF_NOT_ACCEPT,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+parse_lmp_crypt_key:
+	fetcht 1,mem_rxbuf+1
+	storet 1,mem_key_size
+	branch accept_lmp_msg
+	
+parse_lmp_setup_complete:
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_SETUP_COMPLETE,pdata
+	store 1,mem_lmp_conn_state
+	rtnbit1 SENT_SETUP_COMPLETE
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	branch parse_rx_done
+	
+parse_lmp_max_slot:
+	//jam LMP_MAX_SLOT,mem_lmi_opcode2
+	//branch accept_lmp_msg
+	rtn
+	
+parse_lmp_max_slot_req:
+	fetch 1,mem_max_slot
+	fetcht 1,mem_rxbuf+1
+	isub temp,null
+	//jam LMP_MAX_SLOT_REQ,mem_lmi_opcode2
+	branch accept_lmp_msg,positive
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam UNSPECIFIED_ERROR,mem_lmo_reason2
+	jam LMP_MAX_SLOT_REQ,mem_lmi_opcode2
+	rtn
+	
+parse_lmp_detach:
+	call prepare_disconnect
+	branch accept_lmp_msg
+	
+accept_lmp_msg:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	rtn
+
+parse_lmp_incr_power:
+	jam LMP_MAX_POWER,mem_lmo_opcode2
+	rtn
+
+parse_lmp_decr_power:
+	jam LMP_MIN_POWER,mem_lmo_opcode2
+	rtn
+	
+parse_lmp_version_res:
+	fetch 1,mem_conn_sm
+	rtneq CONN_SM_WAIT_VERSION
+	/* continuing on with host connection state machine */
+	jam CONN_SM_SEND_FEATURES ,mem_conn_sm
+	/* we need to move fast and send au_rand...jumping to next part of state machine for conn */
+	rtn
+
+
+parse_lmp_auto_rate:
+	rtn	
+
+parse_lmp_in_rand:
+	call lmp_copy_rand
+	jam pincode_state_wait_pincode,mem_pincode_state
+	jam BT_EVT_PINCODE_REQ,mem_fifo_temp
+	call ui_ipc_send_event
+
+	call tid_check
+	nbranch lmp_accept_inrand,true
+	//fetch 1,mem_auth_enable
+	nbranch parse_lmp_inrand_res,master // ignore this because of not ssp temporary
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam LMP_IN_RAND,mem_lmi_opcode2
+	jam TRANSACTION_COLLISION,mem_lmo_reason2
+	rtn
+parse_lmp_inrand_res:
+	fetch 1,mem_op
+	set1 op_inrand_req,pdata
+	store 1,mem_op
+	rtn
+
+//store current tid
+pop_tid_follow:
+	fetcht 1,mem_state_map
+	nsetflag blank,smap_lmptid,temp
+	storet 1,mem_state_map
+	rtn
+	
+//restore current tid
+push_tid_follow:
+	fetch 1,mem_lmo_tid2
+	rshift pdata,pdata
+	and_into 1,pdata
+	rtn
+
+parse_lmp_au_rand_moudle:
+	fetch 1,mem_nv_data_number
+	rtn blank
+	fetch 1,mem_pairing_auth
+	call load_device_list,blank
+	rtn	
+
+parse_lmp_au_rand:
+	call parse_lmp_au_rand_moudle
+	call push_tid_follow
+	store 1,mem_sres_tid
+	call lmp_copy_rand
+	jam LMP_SRES,mem_lmo_opcode2
+	fetch 1,mem_link_key_exists
+	nrtn blank
+	fetch 1,mem_state
+	rtnbit1 state_combkey		/* we have comb key, but not verified */
+	jam KEY_MISSING,mem_lmo_reason2
+	branch reject_lmp_packet
+
+parse_lmp_sres:	
+	arg mem_plap,rega
+	call function_e1
+	fetch 4,mem_rxbuf+1
+	fetcht 4,mem_input_store
+	isub temp,null
+	branch authentication_ok,zero
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam AUTHENTICATION_FAILURE_ERROR,mem_disconn_reason_send	
+	rtn
+authentication_ok:
+	call authentication_ok_common
+	fetch 1,mem_ssp_enable
+	branch  pairing_success,blank
+	rtn
+
+	
+authentication_ok_common:
+	call copy_aco
+	call linkkey_ready///save link key
+	fetch 1,mem_op
+	isolate1 op_auth_req,pdata
+	set0 op_auth_req,pdata
+	store 1,mem_op
+	fetch 1,mem_conn_sm
+	beq CONN_SM_AUTH_WAIT,authentication_ok_conn_sm
+	beq CONN_SM_PAIRING_WAIT,authentication_ok_conn_sm
+	rtn
+authentication_ok_conn_sm:
+	fetch 1,mem_pairing_auth
+	rtnne DEFALT_PAIRING_AUTH
+	fetch 1,mem_state_map
+	rtnbit1 smap_encryption
+	branch host_create_conn_encrypt
+
+parse_lmp_comb_key:
+	arg mem_rxbuf+1,rega
+	arg mem_kinit,regb
+	arg mem_random_number,contw
+	call xor16
+	arg mem_plap,rega
+	call generate_linkkey
+	jam LMP_AU_RAND,mem_lmo_opcode2
+	fetch 1,mem_state
+	bbit0 state_combkey,lmp_generate_key
+	rtn
+	
+parse_lmp_name_res:
+	fetch 2,mem_len
+	add pdata,-3,loopcnt	//for remote name length error
+	fetcht 1,mem_rxbuf+1
+	setarg mem_tmp_buffer
+	iadd temp,contw
+	arg mem_rxbuf+3,contr
+	call memcpy
+	fetcht 1,mem_name_offset
+	fetch 1,mem_rxbuf+2
+	isub temp,pdata
+	sub pdata,14,null
+	branch parse_lmp_name_res_end,positive
+	add temp,14,pdata
+	store 1,mem_name_offset
+	jam LMP_NAME_REQ,mem_lmo_opcode2
+	rtn
+parse_lmp_name_res_end:
+	fetch 1,mem_state_map
+	set1 smap_name_res,pdata
+	store 1,mem_state_map
+	bbit1 smap_name_req,lmp_disconnect
+	rtn
+parse_lmp_name_req:
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_opcode2 //offset 
+	jam LMP_NAME_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_conn_req:
+	branch accept_lmp_msg
+
+parse_lmp_timing_accuracy_req:
+	jam LMP_TIMING_ACCURACY_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_features_req:
+	jam LMP_FEATURES_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_version_req:
+	jam LMP_VERSION_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_supervision_timeout:
+//	fetch 2,mem_rxbuf+1
+//	store 2,mem_supervision_to
+	rtn
+	
+
+
+parse_lmp_sniff_subrating_req:
+	fetch 2,mem_tsniff
+	iforce temp
+	fetch 1,mem_rxbuf+2
+	store 1,mem_subsniff_rate
+	imul32 temp,temp
+	fetch 2,mem_rxbuf+3
+	lshift pdata,pdata
+	store 2,mem_subsniff_tcmax
+	fetch 4,mem_rxbuf+5
+	lshift pdata,pdata
+ 	store 4,mem_subsniff_instant
+	//product pdata
+	deposit temp
+	store 2,mem_subsniff_tsniff
+	rtn
+parse_lmpext_packet_type_table_req:
+	fetcht 1,mem_ptt
+	fetch 1,mem_rxbuf+2
+	ixor temp,null
+	nbranch reject_unknown_ext_packet,zero
+	isolate1 0,pdata
+	fetch 1,mem_state_map
+	setflag true,smap_edr,pdata
+	store 1,mem_state_map
+	jam LMP_EXT_ACCEPTED,mem_lmo_opcode2
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmi_opcode2
+	rtn
+
+	
+parse_lmp_sniff_subrating_res:
+parse_lmp_preferred_rate:
+parse_lmp_max_power:
+parse_lmp_min_power:
+	rtn
+parse_lmp_page_mode_req:
+	//jam LMP_PAGE_MODE_REQ,mem_lmi_opcode2
+	branch accept_lmp_msg
+parse_lmp_page_scan_mode_req:
+	//this can influence connection. need accepted
+	//jam LMP_PAGE_SCAN_MODE_REQ,mem_lmi_opcode2
+	branch accept_lmp_msg
+
+
+	
+parse_lmp_slot_offset:
+	fetch 2,mem_rxbuf+1
+	store 2,mem_slot_offset
+	rtn
+
+parse_lmp_sniff_req_check_sniff_para:
+	fetch 2,mem_rxbuf+4 /* tsniff */
+	fetcht 1,mem_lpm_mult
+	imul32 temp,pdata
+	arg 0x640,temp
+	isub temp,null
+//	branch lmp_reject_sniff,positive
+	rtn
+	
+parse_lmp_sniff_req:
+	fetch 2,mem_rxbuf+6
+	branch lmp_reject_sniff,blank
+	call parse_lmp_sniff_req_check_sniff_para
+	branch lmp_reject_sniff,positive
+	fetch 1,mem_device_option
+	sub pdata,dvc_op_module,null
+	call module_set_lpm_mult_2,zero
+	fetch 1,mem_state
+	bbit1 state_insniff,lmp_reject_sniff
+	fetch 2,mem_rxbuf+2 /* dsniff */
+	lshift pdata,pdata
+	store 2,mem_dsniff	
+	fetch 2,mem_rxbuf+4 /* tsniff */
+	lshift pdata,pdata
+	store 2,mem_tsniff
+	fetch 2,mem_rxbuf+6 /* sniff attempt */
+	store 1,mem_sniff_attempt
+	iforce temp
+	fetch 2,mem_rxbuf+8 /* sniff timeout */
+	store 1,mem_sniff_timeout
+	isub temp,null
+	nbranch set_big_value_to_attempt,positive
+	store 1,mem_sniff_attempt
+set_big_value_to_attempt:	
+	//call sniff_init
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_SNIFF_REQ,mem_lmi_opcode2
+	rtn
+
+lmp_reject_sniff:
+	jam PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch reject_lmp_packet
+
+parse_lmp_start_encryption_req:
+	call accept_lmp_msg
+	call lmp_copy_rand
+	call function_e3
+	branch start_encryption
+	
+parse_lmp_stop_encryption_req:
+	call accept_lmp_msg
+	branch stop_encryption
+	
+
+parse_lmp_switch_req:
+	fetch 4,mem_rxbuf+1
+	lshift pdata,pdata
+	//branch parse_lmp_switch_req_not_accept
+	branch parse_lmp_switch_accept,master
+	fetcht 1,mem_link_key_exists
+	nbranch parse_lmp_switch_req_clear_mark,blank
+parse_lmp_switch_req_not_accept:
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam LMP_SWITCH_REQ,mem_lmi_opcode2
+	jam PDU_NOT_ALLOWED,mem_lmo_reason2
+	rtn
+parse_lmp_switch_req_clear_mark:
+	jam LMP_SLOT_OFFSET,mem_lmo_opcode2
+	jam 0,mem_conn_sm
+	branch role_switch_prepare
+
+parse_lmp_switch_accept:
+	call role_switch_prepare
+	set1 mark_reconn_recieve_switch,mark
+	fetch 1,mem_connection_options
+	set0 CONNECTION_SWITCH,pdata
+	store 1,mem_connection_options
+	branch accept_lmp_msg
+
+	
+
+parse_lmp_temp_rand:
+parse_lmp_temp_key:
+parse_lmp_timing_accuracy_res:	
+parse_lmp_unit_key:	
+parse_lmp_use_semi_permanend_key:
+	rtn
+
+	
+parse_lmp_unsniff_req:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_UNSNIFF_REQ,mem_lmi_opcode2
+	jam BT_EVT_REMOTE_UNSNIFF,mem_fifo_temp
+	call ui_ipc_send_event
+	branch sniff_exit
+	
+parse_lmp_encapsulated_header:
+	fetch 1,mem_rxbuf+1
+	bne ENCAPSULATED_MAJOR_TYPE_P192,parse_lmp_encapsulated_header_reject
+	fetch 1,mem_rxbuf+2
+	bne ENCAPSULATED_MINOR_TYPE_P192,parse_lmp_encapsulated_header_reject
+	fetch 1,mem_rxbuf+3
+	bne ENCAPSULATED_LEN_P192,parse_lmp_encapsulated_header_reject
+	call check_localsm
+	branch parse_lmp_encapsulated_header_master,true
+	jam SP_STAT_KEY_RECV,mem_sp_state
+parse_lmp_encapsulated_header_master:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_ENCAPSULATED_HEADER,mem_lmi_opcode2
+	branch parse_rx_done
+	
+parse_lmp_encapsulated_header_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch   reject_lmp_packet
+	
+parse_lmp_accepted_encapsulated_header:
+	//jam LMP_ENCAPSULATED_PAYLOAD,mem_lmi_opcode2
+	//branch   accept_lmp_msg  	
+	jam LMP_ENCAPSULATED_PAYLOAD,mem_lmo_opcode2
+      //   branch   accept_lmp_msg  	
+         rtn
+parse_lmp_accepted_simple_pairing_number:
+	fetch 1,mem_ssp_mode_flag
+	beq SSP_MODE_SSP_PIN_FLAG,parse_lmp_accepted_simple_pairing_number_ssp_pin
+	beq SSP_MODE_PASSKEY_ENTRY_FLAG,parse_lmp_accepted_simple_pairing_number_passkey
+parse_lmp_accepted_simple_pairing_number_common:
+	call check_localsm
+	rtn true
+	jam SP_STAT_CONFIRM_RECV,mem_sp_state
+	rtn
+
+parse_lmp_accepted_simple_pairing_number_ssp_pin:
+	call g_noninit_number_confirm
+	jam BT_EVT_BT_GKEY_GENERATE,mem_fifo_temp
+	call ui_ipc_send_event
+	branch parse_lmp_accepted_simple_pairing_number_common
+
+
+parse_lmp_accepted_simple_pairing_number_passkey:
+	call check_localsm
+	rtn true
+	fetch 1,mem_authentication_passkey_times
+	beq 19,authentication_passkey_end
+	increase 1,pdata
+	store 1,mem_authentication_passkey_times
+//	branch p_authentication_passkey
+
+authentication_passkey:
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	jam      SP_STAT_COMMIT_CALC,mem_sp_state 
+	fetch 1,mem_authentication_passkey_times
+	copy pdata,queue
+	fetch 6,mem_pin
+	qisolate1 pdata
+	setarg 0x80
+	setflag true,0,pdata
+	store 1,mem_passkey_1bit
+	rtn
+
+authentication_passkey_end:	
+	jam SP_STAT_CONFIRM_RECV,mem_sp_state
+	rtn
+
+parse_lmp_accepted_dhkey_check:
+	call parse_lmp_accepted_dhkey_check_common
+pairing_success:
+	fetch 1,mem_flag_pairing_state
+	rtn blank
+	jam FLAG_PAIRING_STATE_NOT_PAIRING,mem_flag_pairing_state
+	jam BT_EVT_BT_PAIRING_SUCCESS,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+parse_lmp_accepted_dhkey_check_common:
+	//here must be change***  shyd
+	call check_localsm
+	ncall g_noninit,true	//when be master  call g_init
+	call g_init,true
+	call check_localsm
+	rtn true
+	jam SP_STAT_LINK_KEY_CALC,mem_sp_state
+	jam SP_FLAG_COMMIT,mem_sp_flag
+	rtn
+
+parse_simple_pairing_confirm:
+	arg mem_sp_confirm_remote,contw
+	arg mem_rxbuf+1,contr
+	call memcpy16
+	fetch 1,mem_ssp_mode_flag
+	rtneq  SSP_MODE_PASSKEY_ENTRY_FLAG
+	branch master_set_mem_master_sp_flag
+	
+parse_lmp_encapsulated_payload:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_RANDOM_SEND,parse_encapsulated_payload_master
+	fetch    1,mem_sp_state
+	bne SP_STAT_KEY_RECV,parse_lmp_encapsulated_payload_reject
+parse_encapsulated_payload_master:
+	fetch    1,mem_sp_remote_key_recv_count
+	sub      pdata,0x20,contw
+	nbranch  parse_lmp_encapsulated_payload_reject,positive
+	arg      mem_sp_pubkey_remote,contw
+	iadd     contw,contw
+	fetch 8,mem_rxbuf+1
+	istore   8,contw
+	fetch 8,mem_rxbuf+9
+	istore   8,contw
+	fetch    1,mem_sp_remote_key_recv_count
+	increase 16,pdata
+	store    1,mem_sp_remote_key_recv_count
+	bne ENCAPSULATED_LEN_P192,accept_lmp_msg
+parse_lmp_encapsulated_payload_completed:
+	call check_localsm
+	branch accept_lmp_msg,true
+	jam      SP_KEY_VALID,mem_sp_remote_key_invalid
+	jam      SP_STAT_KEY_GENERATE,mem_sp_state
+	jam      SP_FLAG_COMMIT,mem_sp_flag  
+	branch   accept_lmp_msg
+parse_lmp_encapsulated_payload_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch   reject_lmp_packet	
+parse_lmp_accepted_encapsulated_payload: 
+	fetch 1,mem_sp_local_key_send_count
+	beq	ENCAPSULATED_LEN_P192,parse_lmp_encapsulated_payload_all_accepted
+	jam LMP_ENCAPSULATED_PAYLOAD,mem_lmo_opcode2
+	branch   parse_rx_done 
+	
+parse_lmp_encapsulated_payload_all_accepted:   
+	call check_localsm
+	branch parse_lmp_encapsulated_payload_all_accepted_master,true
+	fetch 1,mem_ssp_mode_flag
+	beq SSP_MODE_PASSKEY_ENTRY_FLAG,parse_lmp_encapsulated_payload_all_accepted_get_passkey
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	jam      SP_STAT_COMMIT_CALC,mem_sp_state 
+	branch   parse_rx_done
+
+parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+	jam BT_EVT_BT_GET_PASSKEY,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+parse_lmp_encapsulated_payload_all_accepted_master:
+	//call sp_master_generate_local_key
+	branch   parse_rx_done   
+
+parse_lmp_simple_pairing_number:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_RANDOM_SEND,parse_lmp_simple_pairing_number_master
+	fetch    1,mem_sp_state
+	bne SP_STAT_RANDOM_RECV,parse_lmp_simple_pairing_number_reject
+parse_lmp_simple_pairing_number_master:
+	arg      mem_sp_random_remote,contw
+	fetch 8,mem_rxbuf+1
+	istore   8,contw
+	fetch 8,mem_rxbuf+9
+	istore   8,contw
+	call check_localsm
+	branch parse_lmp_simple_pairing_number_master0,true
+	jam      SP_STAT_RANDOM_SEND,mem_sp_state
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	branch accept_lmp_msg  
+parse_lmp_simple_pairing_number_master0:
+	jam SP_STAT_COMMIT_CALC,mem_master_sp_state
+	branch master_set_mem_master_sp_flag
+	//jam LMP_SIMPLE_PAIRING_NUMBER,mem_lmi_opcode2
+	//branch accept_lmp_msg  
+parse_lmp_simple_pairing_number_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch reject_lmp_packet
+	
+parse_dhkey_check:
+	fetch    1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_SEND,parse_dhkey_check_master
+	fetch    1,mem_sp_state
+	bne SP_STAT_CONFIRM_RECV,parse_lmp_dhkey_check_reject
+parse_dhkey_check_master:
+	arg      mem_sp_check_result,contw
+	arg mem_rxbuf+1,contr
+	call memcpy16
+	call check_localsm
+	branch parse_dhkey_check_master0,true
+	fetch 1,mem_ssp_mode_flag
+	beq SSP_MODE_SSP_PIN_FLAG,number_comparison_mode
+number_comparison_successed:
+	jam 0,mem_flag_mode_ssp_pin
+	jam SP_STAT_CONFIRM_CHECK,mem_sp_state
+	jam SP_FLAG_COMMIT,mem_sp_flag
+	jam LMP_DHKey_Check,mem_lmi_opcode2
+	branch   parse_rx_done
+	
+parse_dhkey_check_master0:
+	jam      SP_STAT_CONFIRM_CHECK,mem_master_sp_state
+	jam      SP_FLAG_COMMIT,mem_master_sp_flag
+	branch   parse_rx_done
+parse_lmp_dhkey_check_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch reject_lmp_packet
+
+number_comparison_mode:
+	fetch 1,mem_flag_mode_ssp_pin
+	bbit1 FLAG_MODE_SSP_PIN_REVICEVE_COMPARISON_BIT ,comparison_result
+	set1 FLAG_MODE_SSP_PIN_RECIEVE_DHKEY_BIT,pdata
+	store 1,mem_flag_mode_ssp_pin
+	rtn
+	
+comparison_result:
+	bbit1 FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT,number_comparison_successed
+	jam 0,mem_flag_mode_ssp_pin
+	branch parse_lmp_dhkey_check_reject
+
+	
+parse_lmp_clkoffset_res:
+	branch parse_rx_done
+		
+parse_lmp_encryption_mode_req:
+	fetch 1,mem_connection_options
+	set0 CONNECTION_ENCRYPT
+	store 1,mem_connection_options
+	call accept_lmp_msg
+	nrtn master					/* do sth only if we're master */
+	fetch 1,mem_rxbuf+1
+	fetcht 1,mem_op
+	setflag blank,op_stop_enc,temp
+	nsetflag blank,op_start_enc,temp
+	storet 1,mem_op
+	rtn 
+	
+parse_lmp_features_res:
+	fetcht 8,mem_rxbuf+1		/*fix bcp(baoshijie) err*/
+parse_lmp_features_res_not_hci:	
+	fetch 1,mem_conn_sm
+	rtnne CONN_SM_WAIT_FEATURES_RES
+
+	fetch 1,mem_connection_options
+	bbit0 CONNECTION_FEATURE_EXT,parse_lmp_send_conn
+
+	jam CONN_SM_SEND_FEATURES_EXT,mem_conn_sm
+	rtn
+parse_lmp_send_conn:
+	jam CONN_SM_SEND_CONN_REQ,mem_conn_sm
+	rtn
+parse_lmp_test_activate:
+	fetch 1,mem_debug_config
+	store 1,mem_test_mode_old_debug_config
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_TEST_ACTIVATE,mem_lmi_opcode2
+	rtn
+parse_lmp_test_control:
+	/* the 9 test control parameters are XORed with 0x55 */
+	/* doing the XOR here and storing in mem_temp_payload */
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_TEST_CONTROL,mem_lmi_opcode2
+	force 9,loopcnt
+	arg mem_rxbuf+1,contr
+	arg mem_temp_payload,contw
+parse_lmp_test_xor:
+	ifetch 1,contr
+	xor_into 0x55,pdata
+	istore 1,contw
+	loop parse_lmp_test_xor
+	fetch 1,test_mode_scenario
+	fetcht 1,mem_tester_emulate
+	set0 tester_no_whitening,temp
+	set0 tester_pattern_test,temp
+	beq EXIT_TEST_MODE,	 parse_lmp_test_control_exit
+	beq PAUSE_TEST_MODE,	 parse_lmp_test_control_pause
+	beq CLOSED_LOOP_BACK_ACL,	 parse_lmp_test_control_loopback
+	beq ACL_WITHOUT_WHITENING,	 parse_lmp_test_control_loopback_nowhite
+	beq CLOSED_LOOP_BACK_SCO,	 parse_lmp_test_control_loopback
+	beq SCO_WITHOUT_WHITENING,	 parse_lmp_test_control_loopback_nowhite
+	beq ZERO_PATTERN,	 parse_lmp_test_control_pattern
+	beq ONE_PATTERN,	 parse_lmp_test_control_pattern
+	beq ALT_PATTERN,	 parse_lmp_test_control_pattern
+	beq ALT2_PATTERN,	 parse_lmp_test_control_pattern
+	beq PSEUDORANDOM,	 parse_lmp_test_control_pattern
+	rtn
+parse_lmp_test_control_exit:
+	/* restoring old parameters */
+	fetch 1,mem_tester_emulate
+	set1 tester_exit,pdata
+	set1 tester_change,pdata
+	store 1,mem_tester_emulate
+	rtn
+parse_lmp_test_control_pattern:
+	set1 tester_pattern_test,temp
+	jam 5,mem_lch_code
+	fetch 2,test_mode_data_length
+	iforce loopcnt
+	store 2,mem_len
+	arg mem_rxbuf,contw
+	call pn9
+parse_lmp_test_control_loopback_nowhite:
+	set1 tester_no_whitening,temp
+parse_lmp_test_control_loopback:
+	set1 tester_change,temp
+	force 0,pdata
+	store 1,mem_slave_rcvcnt
+	store 2,mem_tst_pktcnt_crc
+	store 2,mem_tst_pktcnt_dmh
+	store 2,mem_tst_pktcnt_hec
+	store 2,mem_tst_pktcnt_sync
+	fetch 1,test_mode_hopping_mode
+	compare FIXED_FREQ,pdata,0xff
+	setflag true,tester_fixed_freq,temp
+	storet 1,mem_tester_emulate
+	rtn
+
+parse_lmp_test_control_pause:
+	set0 mark_testmode,mark
+	jam 0,mem_tester_emulate
+	fetch 1,mem_debug_config
+	set0 debug_tx_pattern,pdata
+	store 1,mem_debug_config
+	rtn
+
+
+	
+	
+
+lmp_copy_rand:	
+	arg mem_rxbuf+1,contr
+	arg mem_random_number,contw
+	branch memcpy16
+
+lmp_generate_key:
+	jam LMP_COMB_KEY,mem_lmo_opcode2
+	rtn
+
+lmp_start_encryption:
+	nrtn master
+	jam LMP_START_ENCRYPTION_REQ,mem_lmo_opcode2
+	rtn
+	
+lmp_accept_inrand:
+	arg mem_lap,rega
+	call generate_kinit
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_IN_RAND,mem_lmi_opcode2
+	rtn
+
+lmp_disconnect:
+	jam 10,mem_conn_timer
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam LOCAL_HOST,mem_disconn_reason_send	
+	rtn
+
+/*********************************/
+/*********lmp send*************/
+/********************************/
+	/* enable user if a lmp packet is to send */
+send_lmp:
+	bpatchx patch30_2,mem_patch30
+	disable user
+	call lmo_fifo_process
+	fetch 1,mem_lmp_to_send
+	rtn blank
+/* lmp message to be processed. this will either be because host??? */
+/* wants to send a lmp message or because one resulted from the LMP */
+/* processing section */
+/********* outgoing lmp lookup table *************/
+	bbit1 7,send_lmp_escape
+send_lmp0:
+	beq LMP_NAME_REQ,	 send_lmp_name_req
+	beq LMP_NAME_RES,	 send_lmp_name_res
+	beq LMP_ACCEPTED,	 send_lmp_accepted
+	beq LMP_NOT_ACCEPTED,	 send_lmp_not_accepted
+	beq LMP_FEATURES_REQ,	 send_lmp_features_req
+	beq LMP_FEATURES_RES,	 send_lmp_features_res
+	beq LMP_TIMING_ACCURACY_RES,	 send_lmp_timing_accuracy_res
+	beq LMP_VERSION_REQ,	 send_lmp_version_req
+	beq LMP_VERSION_RES,	 send_lmp_version_res
+	beq LMP_SETUP_COMPLETE,	 send_lmp_setup_complete
+	beq LMP_SUPERVISION_TIMEOUT,	 send_lmp_superto
+	beq LMP_HOST_CONNECTION_REQ,send_lmp_no_payload
+	beq LMP_IN_RAND,send_lmp_inrand
+	beq LMP_COMB_KEY,send_lmp_comb_key
+	beq LMP_AU_RAND,send_lmp_aurand
+	beq LMP_SRES,send_lmp_sres
+	beq LMP_ENCRYPTION_MODE_REQ,send_lmp_encryption_mode_req
+	beq LMP_ENCRYPTION_KEY_SIZE_REQ,send_lmp_encryption_key_size_req
+	beq LMP_START_ENCRYPTION_REQ,send_lmp_start_encryption
+	beq LMP_DETACH,send_lmp_detach
+	beq LMP_QUALITY_OF_SERVICE_REQ, send_lmp_quality_of_service_req
+	beq LMP_UNIT_KEY,send_lmp_unit_key
+	//Optional (O)
+	beq LMP_INCR_POWER_REQ,send_lmp_inc_power	
+	beq LMP_CLKOFFSET_RES, send_lmp_clkoffset_res	
+	beq LMP_MAX_POWER,send_lmp_nopayload_reply
+	beq LMP_MAX_SLOT, send_lmp_max_slot
+	beq LMP_MAX_SLOT_REQ, send_lmp_max_slot_req
+	beq LMP_MIN_POWER,send_lmp_nopayload_reply
+	beq LMP_SLOT_OFFSET, send_lmp_slot_offset
+	beq LMP_SWITCH_REQ, send_lmp_switch_req
+	beq LMP_SNIFF_REQ, send_lmp_sniff_req
+	beq LMP_STOP_ENCRYPTION_REQ, send_lmp_stop_encryption_req	
+	beq LMP_TIMING_ACCURACY_REQ, send_lmp_timing_accuracy_req
+	beq LMP_UNSNIFF_REQ, send_lmp_unsniff_req
+	beq LMP_ENCAPSULATED_HEADER,send_lmp_encapsulated_header
+	beq LMP_ENCAPSULATED_PAYLOAD,send_lmp_encapsulated_payload
+	beq LMP_SIMPLE_PAIRING_CONFIRM,send_lmp_simple_pairing_comfirm
+	beq LMP_SIMPLE_PAIRING_NUMBER,send_lmp_simple_pairing_number
+	beq LMP_DHKEY_CHECK,send_lmp_dhkey_check
+	beq LMP_AUTO_RATE,send_lmp_auto_rate
+	beq LMP_ENC_KEY_SIZE_MASK_RES,send_lmp_enc_key_size_mask_res
+	//master only must(M)
+	beq LMP_CLKOFFSET_REQ, send_lmp_clkoffset_req
+	beq LMP_QUALITY_OF_SERVICE, send_lmp_quality_of_service
+	beq LMP_TEST_ACTIVATE, send_lmp_test_activate
+	beq LMP_TEST_CONTROL, send_lmp_test_control
+send_lmp_error:
+	branch assert
+	rtn
+send_lmp_escape:
+	beq LMP_EXT_ACCEPTED,send_lmpext_accepted
+	beq LMP_EXT_FEATURES_RES,send_lmpext_features_res
+	beq LMP_NOT_ACCEPTED_EXT,send_lmpext_not_accepted
+	beq LMP_EXT_FEATURES_REQ,send_lmpext_features_req
+	beq LMP_PACKET_TYPE_TABLE_REQ,send_lmpext_packet_type_table_req
+	beq LMP_PAUSE_ENCRYPTION_REQ,send_lmpext_pause_encryption_req
+	beq LMP_IO_CAP_REQ,send_lmp_io_cap_req
+         beq LMP_IO_CAP_RES,send_lmpext_io_cap_res
+         beq LMP_SNIFF_SUBRATING_REQ,send_lmpext_sniff_subrating_req
+         beq LMP_SNIFF_SUBRATING_RES,send_lmpext_sniff_subrating_res
+	branch assert
+
+
+/******** LMP follow messages **********/
+/****** TID follow received packet  *******/
+
+send_lmp_accepted:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode
+	istore 1,contw
+	call send_lmp_follow
+	bpatchx patch30_3,mem_patch30
+	fetch 1,mem_lmi_opcode
+	beq LMP_IN_RAND,send_lmp_accepted_inrand
+	beq LMP_ENCRYPTION_MODE_REQ,send_lmp_accepted_enc_mode
+	beq LMP_ENCRYPTION_KEY_SIZE_REQ,send_lmp_accepted_enc_key
+	beq LMP_SNIFF_REQ,send_lmp_accept_sniff_req
+	beq LMP_HOST_CONNECTION_REQ,send_lmp_accepted_connection
+	beq LMP_DHKEY_CHECK,send_lmp_accept_dhkey_check
+	beq LMP_START_ENCRYPTION_REQ,send_create_conn_start_l2cap_timer_sm  
+	rtn	
+	
+send_create_conn_start_l2cap_timer_sm:
+	fetch 1,mem_conn_sm
+	rtn blank
+	jam CONN_SM_WAIT_DONE,mem_conn_sm
+	setarg TIMER_ENPT_WAITE
+	arg enpt_delay_timer,queue
+	branch timer_init
+	
+send_lmp_accept_sniff_req:
+	branch sniff_init
+send_lmp_not_accepted:
+	force 3,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode
+	beq LMP_AU_RAND,send_not_accept_aurand
+	istore 1,contw
+	fetch 1,mem_lmo_reason
+	istore 1,contw
+	branch send_lmp_follow
+
+send_not_accept_aurand:
+	istore 1,contw
+	fetch 1,mem_lmo_reason
+	istore 1,contw
+	arg mem_sres_tid,temp
+	branch special_tid_store
+
+send_lmpext_accepted:	
+	force 4,queue
+	call send_lmpext
+	setarg LMP_ESCAPE
+	istore 1,contw
+	fetch 1,mem_lmi_opcode
+	set0 7,pdata
+	istore 1,contw
+	fetch 1,mem_lmi_opcode
+	branch send_lmp_follow
+
+send_lmpext_not_accepted:
+	force 5,queue
+	call send_lmpext
+	setarg LMP_ESCAPE
+	istore 1,contw
+	fetch 1,mem_lmi_opcode
+	set0 7,pdata
+	istore 1,contw
+	fetch 1,mem_lmo_reason
+	istore 1,contw
+	branch send_lmp_follow
+	
+
+send_lmp_accepted_inrand:
+	call clear_linkkey
+	call tid_check	
+	rtn true
+	branch lmp_generate_key
+
+send_lmp_accepted_enc_mode:
+	fetch 1,mem_op
+	bbit1 op_start_enc,send_lmp_accepted_enc_start
+	rtnbit0 op_stop_enc
+	jam LMP_STOP_ENCRYPTION_REQ,mem_lmo_opcode2
+	set0 op_stop_enc,pdata
+	call tid_reply
+	branch send_lmp_accepted_enc_exit
+send_lmp_accepted_enc_start:
+	jam LMP_ENCRYPTION_KEY_SIZE_REQ,mem_lmo_opcode2
+	set0 op_start_enc,pdata
+send_lmp_accepted_enc_exit:
+	store 1,mem_op
+	rtn
+
+send_lmp_accepted_enc_key:
+	call check_localsm
+	branch lmp_start_encryption,true
+	rtn
+
+send_lmp_accepted_connection:
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmo_opcode2
+	//jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_CONN_REQ,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_BB_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+send_lmp_accept_dhkey_check:
+	rtn
+/******** LMP reply messages **********/
+/****** TID always set to remote  *******/
+
+send_lmpext_features_res:
+	force 12,queue
+	call send_lmpext
+	setarg 0x01
+	istore 1,contw
+	fetch 2,mem_lmpext_ssp_enable
+	istore 2,contw
+	setarg 0
+	istore 3,contw
+	setarg 0x00
+	istore 4,contw
+	branch send_lmp_reply
+send_lmpext_io_cap_res:     
+	force 5,queue
+         call send_lmpext
+       	fetch 3,mem_sp_iocap_local
+         istore 3,contw
+	call send_lmp_reply
+	jam FLAG_PAIRING_STATE_PAIRING,mem_flag_pairing_state
+	fetch 1,mem_sp_iocap_local
+	beq DISPLAY_YESNO,responder_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_no_input_no_output
+	rtn
+
+responder_iocap_keyboard_only:
+	fetch 1,mem_sp_iocap_remote
+	beq DISPLAY_ONLY,responder_iocap_keyboard_only_initiator_iocap_display_only
+	beq DISPLAY_YESNO,responder_iocap_keyboard_only_initiator_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_keyboard_only_initiator_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output
+	rtn
+
+
+responder_iocap_display_yesno:
+	fetch 1,mem_sp_iocap_remote
+	beq DISPLAY_ONLY,responder_iocap_display_yesno_initiator_iocap_display_only
+	beq DISPLAY_YESNO,responder_iocap_display_yesno_initiator_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_display_yesno_initiator_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_display_yesno_initiator_iocap_no_input_no_output
+	rtn
+
+	
+responder_iocap_no_input_no_output:
+	fetch 1,mem_sp_iocap_remote
+	beq DISPLAY_ONLY,responder_iocap_no_input_no_output_initiator_iocap_display_only
+	beq DISPLAY_YESNO,responder_iocap_no_input_no_output_initiator_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output
+	rtn
+
+responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+responder_iocap_display_yesno_initiator_iocap_display_only:
+responder_iocap_no_input_no_output_initiator_iocap_display_only:
+responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+set_ssp_mode_justwork: 
+	jam SSP_MODE_JUST_WORK_FLAG,mem_ssp_mode_flag
+	fetch 1,mem_classic_bt_flag
+	bbit1 FLAG_SSP_REJECT_JUSTWORK,app_bt_disconnect
+	rtn
+
+responder_iocap_display_yesno_initiator_iocap_display_yesno:
+set_ssp_mode_numeric_comparison: 
+	jam SSP_MODE_SSP_PIN_FLAG,mem_ssp_mode_flag
+	rtn
+
+responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+responder_iocap_keyboard_only_initiator_iocap_keyboard_only:	
+responder_iocap_keyboard_only_initiator_iocap_display_only:	
+responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+set_ssp_mode_passkey: 
+	jam SSP_MODE_PASSKEY_ENTRY_FLAG,mem_ssp_mode_flag
+	rtn
+
+
+classic_bt_set_reject_justwork_flag:
+	arg FLAG_SSP_REJECT_JUSTWORK,queue
+	branch classic_bluetooth_set_flag
+
+classic_bt_clr_reject_justwork_flag:
+	arg FLAG_SSP_REJECT_JUSTWORK,queue
+	branch classic_bluetooth_clr_flag
+
+classic_bluetooth_set_flag:
+	fetch 1,mem_classic_bt_flag
+	qset1 pdata
+	store 1,mem_classic_bt_flag
+	rtn
+
+classic_bluetooth_clr_flag:
+	fetch 1,mem_classic_bt_flag
+	qset0 pdata
+	store 1,mem_classic_bt_flag
+	rtn
+
+         
+send_lmp_io_cap_req:
+	force 5,queue
+	call send_lmpext
+	fetch 3,mem_sp_iocap_local
+	istore 3,contw
+	branch send_lmp_request
+	
+
+send_lmpext_sniff_subrating_req: 
+
+	rtn
+send_lmpext_sniff_subrating_res: 
+         force 9,queue
+         call send_lmpext
+         fetch 1,mem_subsniff_rate
+         istore 1,contw
+         fetch 2,mem_subsniff_tcmax
+         istore 2,contw
+         fetch 4,mem_subsniff_instant
+         istore 4,contw
+	branch send_lmp_reply
+
+send_lmp_name_res:
+	force 17,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode  /* loading name offset */
+	copy pdata,temp
+	beq 0x00,send_lmp_name_res_offset_ok
+	beq 0x0e,send_lmp_name_res_offset_ok
+	beq 0x1c,send_lmp_name_res_offset_ok
+	rtn
+send_lmp_name_res_offset_ok:
+	istore 1,contw	/* writing name offset */
+	fetch 1,mem_local_name_length
+	istore 1,contw	/* writing name length */
+	arg 14,loopcnt
+	setarg mem_local_name
+	iadd temp,contr	/* setting read location */
+	call memcpy
+	branch send_lmp_reply
+
+
+send_lmp_timing_accuracy_res:
+	force 3,pdata
+	call msg_send_lmp
+	setarg 0x0114
+	istore 2,contw
+	branch send_lmp_reply
+
+send_lmp_clkoffset_res:
+	// dopod s505 must wait for this res
+	force 3,pdata
+	call msg_send_lmp
+	fetch 4,mem_clke_bt
+	isub clkn_bt,pdata
+	branch send_lmp_clkoffset_res_master,master
+	sub pdata,0,pdata		/* our role is slave */
+send_lmp_clkoffset_res_master:	
+	// bit 16-2 of clkslave-clkmaster
+	rshift2 pdata,pdata
+	set0 15,pdata
+	istore 2,contw
+	branch send_lmp_reply
+
+send_lmp_version_res:
+	force 6,pdata
+	call msg_send_lmp
+	fetch 5,mem_lmp_version
+	istore 5,contw
+	branch send_lmp_reply
+
+send_lmp_features_res:
+	force 9,pdata
+	call msg_send_lmp
+	fetch 8,mem_features
+	istore 8,contw
+	branch send_lmp_reply  
+
+
+/******** LMP request messages **********/
+/****** TID always set to local initiated *******/
+	
+
+send_lmpext_features_req:
+	force 12,queue
+	call send_lmpext
+	setarg 0x01
+	istore 1,contw
+	fetch 2,mem_lmpext_ssp_enable
+	istore 2,contw
+	setarg 0
+	istore 3,contw
+	setarg 0x00
+	istore 4,contw
+	branch send_lmp_request
+
+send_lmpext_packet_type_table_req:
+	force 3,queue
+	call send_lmpext
+	fetch 1,mem_ptt
+	istore 1,contw
+	disable user
+	call send_lmp_request
+	nrtn user
+	nrtn master
+	fetch 1,mem_afh_cfg
+	rtnbit0 AFH_CFG_ON
+	call afh_init
+	branch afh_open_all_channels
+	
+//default:featrue is enable,extfeature is disable
+ssp_enable:
+	bpatchx patch30_4,mem_patch30
+	fetch 1,mem_features+6
+	set1 param_featrue_ssp,pdata
+	store 1,mem_features+6
+	setarg param_lmpext_ssp_enable
+	store 2,mem_lmpext_ssp_enable
+	rtn
+
+ssp_disable:
+	bpatchx patch30_5,mem_patch30
+	fetch 1,mem_features+6
+	set0 param_featrue_ssp,pdata
+	store 1,mem_features+6
+	setarg 0
+	store 2,mem_lmpext_ssp_enable
+	rtn
+	
+afh_init:
+	jam 0x3,mem_afh_cfg
+	setarg 0
+	store 4,mem_afh_timer
+	arg mem_afh_map_lo,contw
+	call afh_reset_map
+	arg mem_afh_map_new,contw
+	call afh_reset_map
+	arg mem_afh_classify_channel_map,contw
+	call afh_reset_map
+	branch afh_clear_error_counter
+afh_open_all_channels:
+	arg mem_afh_map_new,contw
+	call afh_reset_map
+	call afh_clear_error_counter
+	branch afh_set_send_flag
+
+
+afh_reset_map:
+	setarg 0xffffff
+	istore 3,contw
+	istore 3,contw
+	istore 3,contw
+	setarg 0x7f
+	istore 1,contw
+	rtn
+afh_clear_error_counter:
+	setarg 0
+	store 2,mem_afh_error_total
+	rtn
+afh_set_send_flag:
+	fetch 1,mem_afh_cfg
+	set1 send_lmp_set_afh,pdata
+	store 1,mem_afh_cfg
+	rtn
+
+
+send_lmpext_pause_encryption_req:
+	force 2,queue
+	call send_lmpext
+	nbranch send_lmp_reply,master
+	// assume slave will not send pause req firstly???
+	branch send_lmp_request
+
+
+	
+send_lmp_detach:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_disconn_reason_send
+	istore 1,contw
+	call send_lmp_request
+prepare_disconnect:
+	fetch 1,mem_op
+	set1 op_disconn,pdata
+	store 1,mem_op
+	jam 50,mem_conn_timer
+	rtn
+	
+
+send_lmp_no_payload:
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_request
+send_lmp_nopayload_reply:
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_reply
+	
+	
+send_lmp_encryption_mode_req:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_state_map
+	isolate0 smap_encryption,pdata
+	setflag true,0,pdata
+	and_into 1,pdata
+	istore 1,contw
+	branch send_lmp_request
+
+
+send_lmp_superto:
+	force 3,pdata
+	call msg_send_lmp
+	fetch 2,mem_supervision_to
+	istore 2,contw
+	branch send_lmp_request
+
+send_lmp_name_req:
+	jam 250,mem_conn_timer
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_name_offset
+	istore 1,contw
+	branch send_lmp_request
+
+send_lmp_test_control:
+	force 10,pdata
+	call msg_send_lmp
+	arg mem_temp_payload,contr
+	force 9,loopcnt
+send_lmp_test_control_loop:	
+	ifetch 1,contr
+	xor_into 0x55,pdata
+	istore 1,contw
+	loop send_lmp_test_control_loop
+	branch send_lmp_request  
+
+send_lmp_quality_of_service_req:
+	branch send_lmp_request
+send_lmp_unit_key:
+	branch send_lmp_request
+
+send_lmp_slot_offset:
+	rtn master
+	call calc_slot_offset
+	force 9,pdata
+	call msg_send_lmp
+	fetch 2,mem_slot_offset
+	istore 2,contw
+	fetch 3,mem_lap
+	istore 3,contw
+	fetch 1,mem_uap
+	istore 1,contw
+	fetch 2,mem_nap
+	istore 2,contw
+	bmark0 mark_switch_initiated,send_lmp_slot_offset_reply
+	set0 mark_switch_initiated,mark
+	call send_lmp_request
+	jam LMP_SWITCH_REQ,mem_lmo_opcode2
+	rtn
+send_lmp_slot_offset_reply:
+	call send_lmp_reply
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_SWITCH_REQ,mem_lmi_opcode2
+	rtn
+	
+send_lmp_switch_req:
+	arg 0x200,temp
+	branch switch_on_native,master
+	deposit clke_bt
+	branch switch_slack
+switch_on_native:
+	deposit clkn_bt
+switch_slack:
+	deposit bt_clk
+	iadd temp,pdata
+	and_into 0x1fc,pdata
+	store 4,mem_sniff_anchor
+	force 5,pdata
+	call msg_send_lmp
+	fetch 4,mem_sniff_anchor		/* reused as switch instant */
+	rshift pdata,pdata
+	istore 4,contw
+	branch send_lmp_request
+	
+send_lmp_sniff_req:
+	force 10,pdata
+	call msg_send_lmp
+	arg mem_sniff_payload,contr
+	ifetch 9,contr
+	istore 9,contw
+	branch send_lmp_request
+
+	
+send_lmp_timing_accuracy_req:
+/* default to TID_NORM_SEND */
+	force 3,pdata
+	call msg_send_lmp
+	setarg 0x0114
+	istore 2,contw
+	branch send_lmp_request
+	
+send_lmp_unsniff_req:
+//--------------------need to completa
+	force 1,pdata
+	call msg_send_lmp
+	//fetch 1,mem_unsniff_pending
+	//nbranch send_msg_done,blank
+	//jam 1,mem_unsniff_pending
+	//fetch 2,mem_sniff_attempt
+	//fetch 2,mem_nsniff_attempt
+	//lshift3 pdata,pdata
+	//lshift pdata,pdata
+	//store 1,mem_unsniff_cnt
+	branch send_lmp_request
+
+	
+send_lmp_max_slot:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_max_slot
+	istore 1,contw
+	branch send_lmp_request
+	
+	
+send_lmp_max_slot_req:
+	force 2,pdata
+	call msg_send_lmp
+	setarg 0x05		/*5 slot*/
+	istore 1,contw
+	branch send_lmp_request
+
+
+send_lmp_inc_power:
+	force 2,pdata
+	call msg_send_lmp
+	setarg 0x00		/*5 slot*/
+	istore 1,contw
+	branch send_lmp_request
+
+
+send_lmp_setup_complete_by_module:
+	jam LMP_MAX_SLOT_REQ,mem_lmo_opcode2
+	rtn
+send_lmp_setup_complete:
+	fetch 1,mem_device_option
+	sub pdata,dvc_op_module,null
+	call send_lmp_setup_complete_by_module,zero
+	fetch 1,mem_state
+	set1 state_conn_comp,pdata
+	store 1,mem_state
+	copy clkn_bt,pdata
+	store 4,mem_aurand_send_delay_time
+	fetch 1,mem_lmp_conn_state
+	bbit1 SENT_SETUP_COMPLETE,send_lmp_setup_complete_has_sent
+	set1 SENT_SETUP_COMPLETE,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_SETUP_COMPLETE,mem_fifo_temp
+	call ui_ipc_send_event
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_request
+send_lmp_setup_complete_has_sent:
+	jam 0,mem_lmp_to_send
+	rtn
+	
+send_lmp_version_req:
+	force 6,pdata
+	call msg_send_lmp
+	fetch 5,mem_lmp_version
+	istore 5,contw
+	branch send_lmp_request
+
+send_lmp_features_req:
+	force 9,pdata
+	call msg_send_lmp
+	fetch 8,mem_features
+	istore 8,contw
+	branch send_lmp_request  
+
+sp_master_send_io_cap_get:
+	jam SP_FLAG_COMMIT,mem_master_sp_flag
+	fetch 1,mem_sp_local_key_invalid
+	rtnne SP_KEY_VALID
+	jam SP_MASTER_STAT_START_DONE,mem_master_sp_state
+	rtn
+
+sp_master_send_io_cap_send:
+	call tid_initiate
+	jam LMP_IO_CAP_REQ,mem_lmo_opcode2
+	jam SP_STAT_KEY_SEND,mem_master_sp_state
+	rtn
+	
+	
+sp_master_send_LMP_ENCAPSULATED_HEADER:
+	call tid_initiate
+	jam      LMP_ENCAPSULATED_HEADER,mem_lmo_opcode2
+	jam SP_STAT_RANDOM_SEND,mem_master_sp_state
+	rtn
+	
+sp_master_commitment_compare:
+	arg mem_sp_calc_result_high,rega
+	arg mem_sp_confirm_remote,regb
+	arg 16,loopcnt
+	call string_compare
+	branch sp_master_commitment_compare_success,zero
+	jam SP_STAT_NULL,mem_master_sp_state
+	call master_clear_mem_master_sp_flag
+	jam   PDU_NOT_ALLOWED,mem_lmo_reason2
+	jam 	LMP_SIMPLE_PAIRING_NUMBER,mem_lmi_opcode2 
+	branch reject_lmp_packet
+sp_master_commitment_compare_success:
+	jam 	SP_STAT_CONFIRM_CALC,mem_master_sp_state
+	call master_set_mem_master_sp_flag
+	jam LMP_SIMPLE_PAIRING_NUMBER,mem_lmi_opcode2
+	branch accept_lmp_msg  
+	
+
+	
+sp_master_send_lmp_simple_pairing_number:
+	jam LMP_SIMPLE_PAIRING_NUMBER,mem_lmo_opcode2
+	rtn
+	
+
+
+sp_send_lmp_encapsulated_header:
+	// calculate the private & public key here
+	//jam      LMP_ENCAPSULATED_HEADER,mem_lmp_to_send
+	jam      LMP_ENCAPSULATED_HEADER,mem_lmo_opcode2
+	//jam      TID_PAIRING,mem_lmp_tid
+	rtn
+	//fetch 1,mem_tid_table
+	//set1 TID_PAIRING,pdata
+	//store 1,mem_tid_table
+     
+    
+send_lmp_encapsulated_header: 
+	jam 0,mem_sp_local_key_send_count
+	force 4,pdata
+	call msg_send_lmp
+	force ENCAPSULATED_MAJOR_TYPE_P192,pdata
+	istore 1,contw
+	force ENCAPSULATED_MINOR_TYPE_P192,pdata
+	istore 1,contw  
+	force ENCAPSULATED_LEN_P192,pdata
+	istore 1,contw 
+	call check_localsm
+	branch send_lmp_request,true
+	branch send_lmp_reply
+
+send_lmp_encapsulated_payload:
+	//jam      TID_PAIRING,mem_lmp_tid
+	 force 17,pdata
+	call msg_send_lmp
+	fetch 1,mem_sp_local_key_send_count
+	arg mem_sp_pubkey_local,contr
+	iadd contr,contr    
+	ifetch   8,contr
+	istore   8,contw
+	ifetch   8,contr
+	istore   8,contw
+	fetch    1,mem_sp_local_key_send_count
+	increase 16,pdata
+	store    1,mem_sp_local_key_send_count
+	call check_localsm
+	branch send_lmp_request,true
+	branch send_lmp_reply
+	//branch send_lmp_request
+	
+sp_send_lmp_simple_pairing_comfirm:
+        jam      SP_STAT_RANDOM_RECV,mem_sp_state
+        jam      LMP_SIMPLE_PAIRING_CONFIRM,mem_lmo_opcode2
+        rtn
+send_lmp_simple_pairing_comfirm:
+        //jam      SP_STAT_RANDOM_RECV,mem_sp_state
+        //jam      TID_PAIRING,mem_lmp_tid
+        force    17,pdata
+        call msg_send_lmp   
+        arg      mem_sp_calc_result_high,contr
+        ifetch   8,contr
+        istore   8,contw
+        ifetch   8,contr
+        istore   8,contw 
+        branch send_lmp_reply
+
+sp_send_lmp_simple_pairing_number:
+	jam      LMP_SIMPLE_PAIRING_NUMBER,mem_lmo_opcode2
+	rtn
+
+send_lmp_simple_pairing_number:
+	//jam      TID_PAIRING,mem_lmp_tid
+	call check_localsm
+	call sp_local_random_key_generator,true
+	force    17,pdata
+	call msg_send_lmp
+	arg      mem_sp_random_local,contr
+	ifetch   8,contr
+	istore   8,contw
+	ifetch   8,contr
+	istore   8,contw
+	call check_localsm
+	nbranch send_lmp_reply,true
+	branch send_lmp_request,true
+
+master_sp_sm_end:
+	//jam DEFAULT_STATEMACHINE,mem_sp_localsm
+	jam SP_STAT_DONE,mem_master_sp_state
+sp_aurand_send:
+	call tid_initiate
+	jam LMP_AU_RAND,mem_lmo_opcode2
+	call check_localsm_master
+	branch sp_master_key_prarm_push,true
+	branch sp_link_key_prarm_push
+master_sp_send_lmp_dhkey_check:
+	call tid_reply
+sp_send_lmp_dhkey_check: 
+	jam      LMP_DHKEY_CHECK,mem_lmo_opcode2
+	rtn
+send_lmp_dhkey_check: 
+	//jam      TID_PAIRING,mem_lmp_tid
+	force    17,pdata
+	call     msg_send_lmp
+	arg      mem_sp_calc_result_high,contr
+	ifetch   8,contr
+	istore   8,contw
+	ifetch   8,contr
+	istore   8,contw 
+	call check_localsm
+	nbranch send_lmp_reply,true
+	branch send_lmp_request,true
+
+send_lmp_enc_key_size_mask_res:
+	force 3,pdata
+	call msg_send_lmp   
+	setarg 0xfffe //enc key size mask
+	istore 2,contw
+	branch send_lmp_reply
+
+send_lmp_auto_rate:
+	branch send_lmp_request
+send_lmp_clkoffset_req:
+	branch send_lmp_request
+send_lmp_quality_of_service:
+	branch send_lmp_request
+send_lmp_test_activate:
+	branch send_lmp_request
+
+/******** LMP request/reply messages **********/
+/****** TID transaction specific *******/
+
+send_lmp_comb_key:
+	call generate_random_number
+	arg mem_lap,rega
+	call generate_linkkey
+	force 17,pdata
+	call msg_send_lmp
+	arg mem_kinit,rega
+	arg mem_random_number,regb
+	call xor16
+	nbranch send_lmp_follow,master
+	branch send_lmp_tid
+
+send_lmp_inrand:
+	call generate_random_number
+	arg mem_plap,rega
+	call generate_kinit
+send_lmp_rand:	/* used by in_rand,au_rand,start_encrypt */
+	force 17,pdata
+	call msg_send_lmp
+	arg mem_random_number,contr
+	call memcpy16
+	fetch 1,mem_conn_sm 
+	beq CONN_SM_AUTH_WAIT,send_lmp_request
+	beq CONN_SM_PAIRING_WAIT,send_lmp_request
+	branch send_lmp_tid
+
+send_lmp_aurand:
+	fetch 1,mem_pairing_auth
+	branch send_lmp_aurand_notpairing,blank
+	call check_localsm
+	call tid_initiate,true
+	ncall tid_reply,true
+	branch send_lmp_aurand_common
+send_lmp_aurand_notpairing:
+	call tid_initiate
+send_lmp_aurand_common:
+	call generate_random_number
+	branch send_lmp_rand
+
+send_lmp_sres:
+	arg mem_lap,rega
+	call function_e1
+	force 5,pdata
+	call msg_send_lmp
+	fetch 4,mem_input_store
+	istore 4,contw
+	arg mem_sres_tid,temp
+	call special_tid_store
+	call copy_aco
+	call check_localsm
+	branch send_lmp_sres_master,true
+	jam DONE_ENCRYP,mem_wait_encryption
+	fetch 1,mem_pairing_auth
+	rtn blank
+	jam LMP_AU_RAND,mem_lmo_opcode2
+send_lmp_sres_master:
+	fetch 1,mem_link_key_exists
+	rtn blank
+send_lmp_sres_startenc:
+	call check_localsm
+	nbranch send_lmp_sres_startenc_slave,true
+	fetch 1,mem_auth_enable
+	rtn blank
+	jam LMP_ENCRYPTION_MODE_REQ, mem_lmo_opcode2
+	rtn
+send_lmp_sres_startenc_slave:
+	rtnmark0 mark_slave_in_rand_accepted
+	set0 mark_slave_in_rand_accepted,mark
+	jam LMP_ENCRYPTION_MODE_REQ, mem_lmo_opcode2
+	rtn
+	
+
+	
+send_lmp_start_encryption:
+	call generate_random_number
+	call function_e3
+	force 17,pdata
+	call msg_send_lmp
+	arg mem_random_number,contr
+	call memcpy16
+	branch send_lmp_tid
+
+send_lmp_stop_encryption_req:
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_tid
+
+send_lmp_encryption_key_size_req:
+	force 2,pdata
+	call msg_send_lmp
+	force 16,pdata
+	istore 1,contw
+	store 1,mem_key_size
+	branch send_lmp_tid
+
+msg_send_lmp:
+/* FLOW is set high and LMP is indicated */
+	lshift3 pdata,pdata
+	or_into 0x07,pdata
+	store 1,mem_lmo_header_length
+	arg 17,loopcnt
+	arg mem_lmo_payload,contw
+	call clear_mem
+	arg mem_lmo_payload,contw
+	rtn
+
+send_lmpext:
+	and pdata,0x7f,rega
+	jam LMP_ESCAPE,mem_lmp_to_send
+	deposit queue
+	call msg_send_lmp
+	deposit rega
+	istore 1,contw
+	rtn
+
+send_lmp_follow:
+	fetch 1,mem_lmp_to_send
+	lshift pdata,pdata
+	fetcht 1,mem_state_map
+	isolate1 smap_lmptid,temp
+	setflag true,0,pdata
+	branch send_lmp_exit
+
+
+send_lmp_tid:
+	fetcht 1,mem_state_map
+	and_into 1,temp
+	branch send_lmp_end
+
+send_lmp_reply:
+	force 0,temp
+	branch send_lmp_end
+	
+send_lmp_request:
+	force 1,temp
+send_lmp_end:
+	fetch 1,mem_lmp_to_send
+	lshift pdata,pdata
+	setflag master,0,pdata
+	ixor temp,pdata
+send_lmp_exit:
+	store 1,mem_lmo_header_opcode
+	jam 0,mem_lmp_to_send
+	call lmo_fifo_process_lmo0empty
+	enable user
+	rtn
+
+//blank : not full 
+lmo_fifo_check:
+	fetch 1,mem_lmo_opcode2
+	rtn blank
+	call lmo_fifo_process
+	fetch 1,mem_lmo_opcode2
+	rtn
+
+lmo_fifo_process:
+	bpatchx patch30_6,mem_patch30
+	fetch 1,mem_lmp_to_send
+	branch lmo_fifo_process_lmo0empty,blank
+	fetch 1,mem_lmo_opcode1
+	nrtn blank
+	branch lmo_fifo_process_lmo2to1
+lmo_fifo_process_lmo0empty:
+	fetch 1,mem_lmo_opcode1
+	branch lmo_fifo_process_lmo1_empty,blank
+	fetch 3,mem_lmo_opcode1
+	store 3,mem_lmp_to_send//1=>0
+	fetcht 1,mem_lmo_tid1
+	fetch 1,mem_state_map
+	set0 smap_lmptid,pdata
+	ior temp,pdata
+	store 1,mem_state_map
+	jam 0,mem_lmo_opcode1
+lmo_fifo_process_lmo2to1:
+	fetch 1,mem_lmo_opcode2
+	rtn blank
+	fetch 4,mem_lmo_opcode2
+	store 4,mem_lmo_opcode1//2=>1
+	jam 0,mem_lmo_opcode2
+	rtn
+lmo_fifo_process_lmo1_empty:
+	fetch 1,mem_lmo_opcode2
+	rtn blank
+	fetch 3,mem_lmo_opcode2
+	store 3,mem_lmp_to_send//2=>0	
+	fetcht 1,mem_lmo_tid2
+	fetch 1,mem_state_map
+	set0 smap_lmptid,pdata
+	ior temp,pdata
+	store 1,mem_state_map
+	jam 0,mem_lmo_opcode2
+	rtn
+	
+//input:temp
+special_tid_store:
+	bpatchx patch30_7,mem_patch30
+	fetch 1,mem_state_map
+	copy pdata,regc
+	ifetch 1,temp
+	call pop_tid_follow
+	call send_lmp_follow
+	copy regc,pdata
+	store 1,mem_state_map
+	rtn
+	
+tid_reply:
+	fetcht 1,mem_state_map
+	set0 smap_lmptidinit,temp
+	storet 1,mem_state_map
+	rtn
+	
+tid_initiate:
+	fetcht 1,mem_state_map
+	set1 smap_lmptidinit,temp
+	storet 1,mem_state_map
+	rtn
+	
+	/* true if transaction from remote */
+tid_check:
+	nsetflag master,smap_lmptid,pdata //it is ok
+	fetcht 1,mem_state_map
+	ixor temp,pdata
+	isolate1 smap_lmptid,pdata
+	rtn	
+
+	/* set to remote */
+tid_set_reply:
+	fetch 1,mem_state_map
+	setflag master,smap_lmptid,pdata //it is ok
+	store 1,mem_state_map
+	rtn
+
+	/*rtn true when we lead lmp*/
+check_localsm:
+	fetch 1,mem_sp_localsm
+	compare 	LOCAL_STATEMACHINE,pdata,0x7f
+	rtn
+setlocalsm_master:
+	fetch 1,mem_sp_localsm
+	set1 7,pdata
+	store 1,mem_sp_localsm
+	rtn
+setlocalsm_slave:
+	fetch 1,mem_sp_localsm
+	set0 7,pdata
+	store 1,mem_sp_localsm
+	rtn
+check_localsm_master:
+	fetch 1,mem_sp_localsm
+	isolate1 7,pdata
+	store 1,mem_sp_localsm
+	rtn
+	
+generate_random_number:
+	/* generating a 16 byte random number,storing in ape_random_number */
+	arg mem_random_number,contw
+generate_random:
+	force 16,loopcnt
+generate_random_another:
+generate_random_loop:
+	random pdata
+	istore 1,contw
+	loop generate_random_another
+	rtn
+
+generate_linkkey:
+	call function_e21
+	arg mem_link_key,rega
+	arg mem_input_store,regb
+	ifetch 8,rega					/* check if already got comb key */
+	fetcht 1,mem_state
+	nsetflag blank,state_combkey,temp
+	storet 1,mem_state
+	copy rega,contw
+	call  xor16
+	branch generate_linkkey_continue
+
+/*********************************/
+/*********lmp send*************/
+/********************************/
+
+process_conn_sm:
+	//nrtn master
+	bpatchx patch31_0,mem_patch31
+
+	call lmo_fifo_check
+	nrtn blank
+process_conn_sm_continue:
+	fetch 1,mem_conn_sm
+	rtn blank
+	/* state machine begins in standby */
+	//beq CONN_SM_STANDBY, host_create_conn_begin
+	//beq CONN_SM_WAIT_PAGE, host_create_conn_wait_page
+	beq CONN_SM_SEND_CONN_REQ, host_create_conn_send_conn_req
+	beq CONN_SM_WAIT_CONN_ACCEPT, host_create_conn_wait_accept
+	beq CONN_SM_SEND_FEATURES, host_create_conn_send_features
+	beq CONN_SM_WAIT_FEATURES_RES, host_create_conn_waiting
+	beq CONN_SM_SEND_SWITCH,host_create_conn_send_switch
+	beq CONN_SM_AUTH_PAIR, host_create_conn_auth_pair
+	beq CONN_SM_AUTH_PAIR_WAIT, host_create_conn_auth_pair_wait
+	beq CONN_SM_ENCRYPT, host_create_conn_encrypt
+	beq CONN_SM_ENCRYPT_WAIT, host_create_conn_encrypt_wait
+	beq CONN_SM_ENCRYPT_WAIT_CLEAR, host_create_conn_encrypt_wait_clear
+	beq CONN_SM_SEND_SETUP_COMPLETE, host_create_conn_send_setup_complete
+	beq CONN_SM_WAIT_SETUP_COMPLETE, host_create_conn_wait_setup_complete
+	beq CONN_SM_DETACH_DELAY,host_create_conn_master_detach
+	beq CONN_SM_SEND_VERSION, host_create_conn_send_version
+	beq CONN_SM_WAIT_VERSION, host_create_conn_waiting
+	beq CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION, host_creat_conn_wait_switch
+	beq CONN_SM_SEND_FEATURES_EXT,host_creat_conn_send_feat_ext
+	beq CONN_SM_WAIT_FEATURES_EXT,host_create_conn_waiting
+	beq CONN_SM_PAIRING,host_create_conn_pairing
+	beq CONN_SM_PAIRING_WAIT,host_create_conn_pairing_wait
+	beq CONN_SM_AUTH,host_create_conn_auth
+	beq CONN_SM_AUTH_WAIT,host_create_conn_auth_wait
+	beq CONN_SM_DONE,host_create_conn_done
+	beq CONN_SM_WAIT_DONE,host_create_conn_done_wait
+	jam CONN_SM_STANDBY,mem_conn_sm
+	/* sending error message to host */
+	rtn
+host_create_conn_done:
+	fetch 1,mem_lmp_conn_state		
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	rtnbit0 SENT_SETUP_COMPLETE
+	jam CONN_SM_STANDBY,mem_conn_sm
+	call host_conn_judge_encrypt
+	branch scheduler_start_upper_sm
+	
+host_conn_judge_encrypt:
+	fetch 1,mem_connection_options
+	rtnbit0 CONNECTION_ENCRYPT
+	jam CONN_SM_ENCRYPT_WAIT,mem_conn_sm
+	rtn
+
+host_create_conn_done_wait:
+	arg enpt_delay_timer,queue
+	call timer_check
+	nrtn blank
+	jam CONN_SM_DONE,mem_conn_sm
+	rtn
+	
+host_create_conn_auth:
+	fetch 1,mem_connection_options
+	set0 CONNECTION_AUTH,pdata
+	store 1,mem_connection_options
+	jam CONN_SM_AUTH_WAIT,mem_conn_sm
+	jam LMP_AU_RAND,mem_lmo_opcode2
+	rtn 
+host_create_conn_auth_wait:
+	rtn
+host_create_conn_pairing:
+	fetch 1,mem_pincode_state
+	rtnne pincode_state_pincode_ready //wait for pincode
+	call host_auth
+	jam CONN_SM_PAIRING_WAIT,mem_conn_sm
+	rtn
+
+host_create_conn_pairing_wait:
+	rtn
+host_creat_conn_send_feat_ext:
+	jam CONN_SM_WAIT_FEATURES_EXT,mem_conn_sm
+	jam LMP_EXT_FEATURES_REQ,mem_lmo_opcode2
+	rtn
+host_create_conn_send_version:
+	jam CONN_SM_WAIT_VERSION,mem_conn_sm
+	jam LMP_VERSION_REQ,mem_lmo_opcode2
+	rtn 
+	
+host_creat_conn_wait_switch:
+	fetch 1,mem_switch_flag
+	rtneq SWITCH_FLAG_INIT
+	beq SWITCH_FLAG_ACCEPT,host_create_conn_switch_accept
+	arg switch_wait_timer,queue
+	call timer_check
+	nrtn blank
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	branch host_create_conn_switch
+host_create_conn_switch_accept:
+	rtn master
+	branch host_create_conn_auth_pair
+
+host_create_conn_send_features:
+	jam CONN_SM_WAIT_FEATURES_RES,mem_conn_sm
+	jam LMP_FEATURES_REQ,mem_lmo_opcode2
+	rtn 
+host_create_conn_send_switch:
+	jam LMP_SWITCH_REQ,mem_lmo_opcode2
+	set1 mark_switch_initiated,mark
+	jam CONN_SM_WAIT_CONN_ACCEPT,mem_conn_sm
+	setarg 0x1ff
+	store 2, mem_soft_timer
+	rtn
+host_create_conn_send_conn_req:
+	jam CONN_SM_WAIT_CONN_ACCEPT,mem_conn_sm
+	jam 0xff,mem_soft_timer
+	set0 mark_reconn_recieve_switch,mark
+	jam LMP_HOST_CONNECTION_REQ,mem_lmo_opcode2
+	branch init_lmp_reinit
+host_create_conn_wait_accept:
+	rtnmark1 mark_reconn_recieve_switch
+	fetch 2,mem_soft_timer
+	sub pdata,1,pdata
+	branch host_create_conn_resend,zero
+	store 2, mem_soft_timer
+	rtn
+host_create_conn_resend:
+	jam CONN_SM_SEND_SWITCH,mem_conn_sm
+	rtn
+host_create_conn_waiting:
+	/* we will exit waiting for connection request accepted, features res, or other commands to finish */
+	rtn 
+
+host_create_conn_switch:
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 1,mem_connection_options
+	set0 CONNECTION_SWITCH,pdata
+	store 1,mem_connection_options
+	jam LMP_SWITCH_REQ,mem_lmo_opcode2
+	jam CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION,mem_conn_sm
+	rtn 
+
+host_create_conn_send_setup_complete:
+	jam CONN_SM_WAIT_SETUP_COMPLETE,mem_conn_sm	
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	rtn 
+
+host_create_conn_wait_setup_complete:
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	jam CONN_SM_STANDBY,mem_conn_sm	
+
+	rtn
+host_create_conn_wait_setup_complete_rtn:	
+	jam CONN_SM_AUTH_PAIR ,mem_conn_sm
+	rtn
+
+host_create_conn_master_detach:
+	fetch 1, mem_soft_timer
+	increase -1,pdata
+	branch host_create_conn_send_detach,blank//detach
+	store 1, mem_soft_timer
+	rtn 
+host_create_conn_send_detach:
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam LOCAL_HOST,mem_disconn_reason_send
+	jam 0,mem_conn_sm
+	rtn
+host_create_conn_auth_pair:
+	/* checking whether or not to do m/s switch */
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_SWITCH,host_create_conn_switch
+	bbit1 CONNECTION_AUTH,host_create_conn_auth_pair_true
+host_create_conn_sm_done:
+	jam CONN_SM_DONE,mem_conn_sm
+	rtn
+host_create_conn_auth_pair_true:
+	fetch 1,mem_link_key_exists
+	branch host_create_conn_auth_pair_nokey,blank
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 4,mem_aurand_send_delay_time
+	arg 100,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	branch host_create_conn_auth
+
+
+
+host_create_conn_auth_pair_nokey:
+	jam CONN_SM_PAIRING,mem_conn_sm
+	jam 4,mem_pin_length
+	setarg 0x3030
+	store 2,mem_pin
+	istore 2,contw
+	jam pincode_state_pincode_ready,mem_pincode_state
+	branch host_create_conn_pairing
+
+host_create_conn_auth_pair_wait:
+	rtn
+host_create_conn_encrypt:
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_ENCRYPT,host_create_conn_encrypt_start
+	jam CONN_SM_DONE,mem_conn_sm
+	rtn 
+
+host_create_conn_encrypt_start:
+	fetch 1,mem_connection_options
+	set0 CONNECTION_ENCRYPT,pdata
+	store 1,mem_connection_options
+	jam LMP_ENCRYPTION_MODE_REQ,mem_lmo_opcode2  
+	rtn
+
+host_create_conn_encrypt_wait:
+	fetch 1, mem_wait_encryption
+	rtn blank
+	jam CONN_SM_STANDBY,mem_conn_sm
+	branch host_create_conn_encrypt_start 
+
+host_create_conn_encrypt_wait_clear:
+	jam CONN_SM_SEND_SETUP_COMPLETE,mem_conn_sm
+	rtn 
+
+host_auth:
+	fetch 1,mem_op
+	bbit1 op_inrand_req,remote_auth
+	call tid_initiate
+	jam LMP_IN_RAND,mem_lmo_opcode2
+	branch cmd_exit
+remote_auth:
+	fetch 1,mem_op
+	set0 op_inrand_req,pdata
+	store 1,mem_op
+	call lmp_accept_inrand
+	call tid_set_reply
+	branch cmd_exit
+
+pincode_reinit:
+	setarg 4
+	store 1,mem_pin_length
+	setarg 0x3030
+	istore 2,contw
+	istore 2,contw
+	rtn
+	
+
+
+/* ===================== two wire SPI gpio ======================= */
+
+twspi_reset:
+	bpatchx patch31_4,mem_patch31
+	hfetch 1,core_gpio_oe3
+	arg 0x06,temp
+	ior temp,pdata
+	hstore 1,core_gpio_oe3
+	hfetch 1,core_gpio_out3
+	ior temp,pdata
+	hstore 1,core_gpio_out3
+	call twspi_disable
+	hfetch 1,core_gpio_out3
+	set0 1,pdata
+	set0 2,pdata
+	hstore 1,core_gpio_out3	
+	nop 30  
+	branch twspi_enable
+
+twspi_reset2:
+	hfetch 1,core_gpio_oe3
+	arg 0xc0,temp
+	ior temp,pdata
+	hstore 1,core_gpio_oe3
+	hfetch 1,core_gpio_out3
+	ior temp,pdata
+	hstore 1,core_gpio_out3
+	call twspi_disable
+	hfetch 1,core_gpio_out3
+	set0 6,pdata
+	set0 7,pdata
+	hstore 1,core_gpio_out3	
+	nop 30  
+	branch twspi_enable2
+
+twspi_disable:
+	hfetch 1,core_gpio_sel1
+	and pdata,0xfc,pdata
+	hstore 1,core_gpio_sel1  //disable spi
+	rtn
+twspi_enable:
+	hfetch 1,core_gpio_sel1
+	or pdata,0x01,pdata
+	hstore 1,core_gpio_sel1  //enable spi
+	rtn
+twspi_enable2:
+	hfetch 1,core_gpio_sel1
+	or pdata,0x03,pdata
+	set0 4,pdata
+	hstore 1,core_gpio_sel1  //enable spi2
+	rtn
+
+// input read reg number: pdata 
+//output reg data: pdata
+sensor_read:
+	copy pdata,regb
+	call spi_ncs_enable
+	nop 100
+	copy regb,pdata
+	call twspi_read
+	copy pdata,regb
+	call spi_ncs_disable
+	nop 100
+	copy regb,pdata
+	rtn
+// input write reg number: pdata 
+sensor_write:
+	copy pdata,regb
+	call spi_ncs_enable
+	nop 100
+	copy regb,pdata
+	call twspi_write
+	call spi_ncs_disable
+	nop 100
+	rtn
+//spi gpio init .
+//0xff :disable spi ncs gpio init
+spi_ncs_gpio_init:
+	fetcht 1,mem_spi_ncs_gpio
+	branch gpio_config_output
+
+//nsc gpio ouput low
+spi_ncs_enable:
+	fetcht 1,mem_spi_ncs_gpio
+	branch gpio_out_active
+
+//ncs gpio output high
+spi_ncs_disable:
+	fetcht 1,mem_spi_ncs_gpio
+	branch gpio_out_inactive
+
+
+twspi_write:
+	branch spid_write_reg
+	
+twspi_read:
+	branch spid_read_reg
+
+
+
+/* ===================== code loading ======================= */
+
+
+read_function_aes:
+	nbranch read_function,user
+	hfetch 1,core_gpio_key2
+	or_into 0x2,pdata   	// enable aes 
+	hstore 1,core_gpio_key2
+read_function:
+	copy temp,null
+	branch read_fuction_zero,zero
+	copy regc,pc
+read_fuction_zero:
+	isolate0 0,null
+	branch set_ucode_status
+	
+/* return temp = block length */
+get_block_header:
+	force 4,temp
+get_block_header0:
+	arg mem_ucode_buf,rega
+	hfetch 1,core_gpio_key2
+	and_into 0xfd,pdata   	// disable aes for header
+	hstore 1,core_gpio_key2
+	call read_function
+	arg 0x55aa,rega
+	fetch 2,mem_ucode_buf
+	ifetcht 2,contr
+	isub rega,null
+	rtn	
+
+read_first_block:
+	arg 2,temp
+	arg mem_ucode_ptr,rega
+	call read_function
+	fetch 2,mem_ucode_ptr
+	store 2,mem_addr_mi
+	call get_iv,user
+	rtn
+	
+get_iv:
+	arg 16,temp
+	arg mem_ucode_keybuf,rega
+	hfetch 1,core_gpio_key2
+	and_into 0xfd,pdata   // disable aes for iv
+	hstore 1,core_gpio_key2
+	call read_function
+	arg mem_ucode_keybuf,contr
+	arg 16,loopcnt
+	call aes_load_data
+	call aes_init
+	call aes_clear_data
+	branch do_aes_cbc					/* generate first IV */
+
+load_storage:
+	disable match
+	call get_block_header
+	nrtn zero
+	enable match
+	jam 0x80, core_ucode_ctrl
+	jam 0,core_ucode_hi
+	jam 0,core_ucode_low
+	arg core_ucode_data,rega
+	call read_function_aes
+	jam 0x0, core_ucode_ctrl
+load_storage_loop:
+	arg 6,temp
+	call get_block_header0
+	nrtn zero
+	ifetch 2,contr
+	iforce rega
+	call read_function
+	branch load_storage_loop
+
+	
+	/* only load memory data from eeprom */
+reload_eeprom:
+	call clean_mem
+	setarg 0x1000
+	store 2,mem_addr_mi
+	arg iicd_read_eep,regc
+	arg 2,loopcnt
+reload_eeprom_loop:
+	call get_block_header
+	nrtn zero
+	fetch 2,mem_addr_mi
+	byteswap pdata,pdata
+	iadd temp,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	loop reload_eeprom_loop
+	branch load_storage_loop
+	
+loadcode:
+	call clean_mem
+	disable user
+	call otp_enable_chgpump
+	setarg otp_ucode_flag
+	arg mem_otp_ucode_flag,rega
+	arg 2,temp
+	call otpd_read_data
+	fetch 2,mem_otp_ucode_flag
+	bbit0 otp_uflag_aes, loadcode_otp
+	jam 0x25,core_clkoff			// disable debug uart
+	setarg otp_ucode_aeskey
+	arg mem_ucode_keybuf,rega
+	arg 16,temp
+	call otpd_read_data
+	jam lock_otp,core_misc_ctrl	// disable further read/write of key
+	set1 mark_otp_encrypt,mark	
+	arg mem_ucode_keybuf,contr
+	call load_key
+	enable user					// set user for aes
+loadcode_otp:
+	jam 0,mem_loadcode_times
+loadcode_otp_2:
+	call loadcode_check_times
+	fetch 2,mem_otp_ucode_flag
+	byteswap pdata,pdata
+	arg 0x7ff,temp
+	iand temp,pdata
+	branch loadcode_iic, zero
+	call otp_set_addr
+	arg otpd_read_code,regc
+	call get_iv,user
+	call load_storage
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_otp_2			// crc error, try again
+	
+loadcode_iic:
+	call otp_disable_chgpump
+	jam 0,mem_loadcode_times
+loadcode_iic_2:	
+	call loadcode_check_times
+	call clear_eeprom_size_2k
+	fetch 1,mem_otp_ucode_flag
+	bbit1 otp_uflag_skip_eep,loadcode_spi
+	call loadcode_iic_by_eeprom
+	nbranch loadcode_iic_eeprom_2k,match
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_iic_2			// crc error, try again
+	branch loadcode_hci
+loadcode_iic_eeprom_2k:
+	call set_eeprom_size_2k
+	fetch 1,mem_otp_ucode_flag
+	bbit1 otp_uflag_skip_eep,loadcode_spi
+	call loadcode_iic_by_eeprom
+	nbranch loadcode_spi,match
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_iic_2			// crc error, try again
+	branch loadcode_hci
+	
+loadcode_spi:
+	jam 0,mem_loadcode_times
+loadcode_spi_2:
+	call loadcode_check_times
+	fetch 1,mem_otp_ucode_flag
+	bbit1 otp_uflag_skip_flash, loadcode_hci
+	setarg 0x0
+	store 3,mem_addr_hi
+	call spid_init_flash
+	arg spid_load_flash,regc
+	call read_first_block
+	call load_storage
+	nbranch loadcode_hci,match
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_spi_2			// crc error, try again
+
+loadcode_hci:
+	bmark1 mark_otp_encrypt,loadcode_hci_enc
+	call clear_key_buf
+loadcode_hci_enc:
+	fetch 1,mem_otp_ucode_flag
+	bbit0 otp_uflag_hci,clear_key_buf
+	jam 0x21,core_clkoff			// enable debug uart
+	call hci_init
+loadcode_hci_loop:
+	call hci_rx_packet
+	branch loadcode_hci_loop
+
+clear_key_buf:
+	setarg 0
+	store 8,mem_ucode_keybuf
+	store 8,mem_ucode_keybuf+8
+	force regidx_key,regext_index
+	call aes_clear
+	jam 0x21,core_clkoff		// enable debug uart
+	rtn
+	
+
+loadcode_iic_by_eeprom:
+	setarg 0x0
+	store 2,mem_addr_mi
+	arg iicd_read_eep,regc
+	call iicd_init_12m
+	call read_first_block
+	branch load_storage
+
+
+loadcode_check_times:
+	fetch 1,mem_loadcode_times
+	increase 1,pdata
+	sub pdata,3,null
+	nbranch loadcode_error,positive
+	store 1,mem_loadcode_times
+	rtn
+
+loadcode_error:
+	call clear_key_buf
+	call ice_break
+	rtn
+
+
+/* true flag is set into status */
+set_ucode_status:
+	fetch 1,mem_ucode_status
+	lshift pdata,pdata
+	setflag true,0,pdata
+	isolate0 15,rega
+	rtn true
+	store 1,mem_ucode_status
+	rtn
+
+	/* queue is bit position of hw done status */
+decrypt_code:
+	hfetch 1,core_gpio_key2
+	rtnbit0 1
+	branch decrypt_code_skip	/* skip to key generation at first for speed */
+decrypt_code_loop:
+	hfetch 1,core_dma_status
+	qisolate1 pdata
+	rtn true
+decrypt_code_skip:
+	hfetch 1,core_misc_status
+	bbit0 1,decrypt_code_loop
+	call do_aes_cbc
+	branch decrypt_code_loop
+
+
+
+load_ucode:
+	fetch 2,mem_patch_ptr
+	rtn blank
+	jam 0x80, core_ucode_ctrl
+	jam 0,core_ucode_hi
+	jam 0,core_ucode_low
+	fetcht 2,mem_patch_len
+	lshift2 temp,loopcnt
+	iforce contr
+load_ucode_loop:
+	ifetch 1,contr
+	hstore 1,core_ucode_data
+	loop load_ucode_loop
+	jam 0x0, core_ucode_ctrl
+	rtn
+
+
+/* ===================== SPI dma ======================= */
+
+spid_init:
+	bpatchx patch31_5,mem_patch31
+	call spid_init_common
+	branch twspi_enable
+
+spid_init2:
+	call spid_init_common
+	call twspi_disable
+	branch twspi_enable2
+	
+spid_init_common:
+	fetch 1,mem_spi_init_clk
+	hstore 1,core_spid_ctrl	// A7530 should at least 34, or write fail
+	fetch 1,mem_spi_init_delay_time
+	hstore 1,core_spid_delay	// 4us delay
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	setarg mem_spid_rbuf
+	hstore 2,core_spid_rxaddr
+	branch twspi_disable
+	
+spid_reset:
+	hfetch 1,core_spid_ctrl
+	set1 7,pdata
+	hstore 1,core_spid_ctrl
+	set0 7,pdata
+	hstore 1,core_spid_ctrl
+	rtn
+
+
+/* pdata 6:0 is reg address, 15:8 is data to write */
+spid_write_reg:
+	set1 7,pdata
+	store 2,mem_spid_tbuf
+	bpatchx patch31_6,mem_patch31
+	jam 2,core_spid_txlen
+	jam 0,core_spid_rxlen
+	jam spid_start,core_misc_ctrl
+	branch wait_spid_done
+
+/* pdata 6:0 is reg address */
+spid_read_reg:
+	force 1,temp
+/* pdata 6:0 is burst reg address, temp is bytes to read */
+spid_read_regs:
+//	nop 100
+	store 1,mem_spid_tbuf
+	bpatchx patch31_7,mem_patch31
+	jam 1,core_spid_txlen
+	hstoret 2,core_spid_rxlen
+	jam spid_start,core_misc_ctrl
+	call wait_spid_done
+	fetch 1,mem_spid_rbuf
+	rtn
+
+wait_spid_done:
+	fetch 2,mem_afh_error_total
+	increase 1,pdata
+	store 2,mem_afh_error_total
+	hfetch 1,core_dma_status
+	bbit0 spid_done,wait_spid_done
+	rtn
+
+spid_init_flash:
+	jam 0x40,core_spid_ctrl
+	jam 0x0,core_spid_delay
+	hfetch 1,core_gpio_sel1
+	set0 0,pdata
+	set1 1,pdata
+	hstore 1,core_gpio_sel1
+	setarg 0
+	store 4,mem_spid_tbuf
+	rtn
+
+
+spid_unlock_flash:
+	setarg 0
+	hstore 2,core_spid_rxlen
+	setarg 1
+	hstore 2,core_spid_txlen
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	jam 6,mem_spid_tbuf
+	jam spid_start,core_misc_ctrl
+	branch wait_spid_done
+
+
+/**
+ ******************************************************************************
+ ** \brief  write flash
+ **
+ ** \param [in]  rega: 2byte write ptr    
+ **			pdata:3byte flash address  
+ ** 			temp:2byte write data length
+ **
+ ** \retval user  0: flash buys 1:write flash setting complate
+ **
+ ******************************************************************************/
+
+flash_write:
+	disable user
+	copy pdata,regb
+	fetch 1,mem_spi_write_flash_sm
+	rtnne FLASH_SM_NO_BUYS
+	enable user
+	copy regb,pdata
+	branch flash_write_start
+
+
+flash_write_spi_sm_timer:
+	fetch 1,mem_spi_write_flash_sm 	
+	beq FLASH_SM_START,flash_write_start
+	beq FLASH_SM_ERASE_SECTOR,flash_erase_sector
+	beq FLASH_SM_WAIT_ERASE_SECTOR,flash_wait_erase_sector
+	beq FLASH_SM_WRITE_DATA,flash_write_data
+	beq FLASH_SM_WAIT_WRITE_DATA,flash_wait_write_data
+	rtn
+
+flash_write_start:
+	store 3,mem_spi_write_addr
+	copy rega,pdata
+	store 2,mem_spi_write_ptr
+	storet 2,mem_spi_write_len
+	jam FLASH_SM_ERASE_SECTOR,mem_spi_write_flash_sm
+	branch spid_init_flash
+flash_erase_sector:
+	call spid_init_flash
+	jam FLASH_SM_WAIT_ERASE_SECTOR,mem_spi_write_flash_sm
+	call spid_unlock_flash
+	arg mem_spid_tbuf,rega
+	fetch 3,mem_spi_write_addr
+	jam 4,core_spid_txlen
+	arg FLASH_COMMAND_SECTOR_ERASE,temp
+	branch spid_write_flash_common
+	
+flash_wait_erase_sector:
+	call spid_init_flash
+	call spid_unlock_flash
+	setarg FLASH_READ_SATUS
+	call spid_read_reg
+	rtnbit1 FLASH_STATUS_WIP
+	jam FLASH_SM_WRITE_DATA,mem_spi_write_flash_sm
+	rtn
+flash_write_data:
+	call spid_init_flash
+	jam FLASH_SM_WAIT_WRITE_DATA,mem_spi_write_flash_sm
+	call spid_unlock_flash
+	call flash_data_preserve
+	call spid_write_flash
+	branch flash_data_recover
+flash_wait_write_data:
+	call spid_init_flash
+	call spid_unlock_flash
+	setarg FLASH_READ_SATUS
+	call spid_read_reg
+	rtnbit1 FLASH_STATUS_WIP
+	jam FLASH_SM_NO_BUYS,mem_spi_write_flash_sm
+	fetch 2,mem_cb_spi_flash_write_complate
+	branch callback_func
+flash_data_recover:
+	fetch 4,mem_temp
+	fetcht 2,mem_spi_write_ptr
+	increase -4,temp
+	istore 4,temp
+	rtn
+flash_data_preserve:
+	fetcht 2,mem_spi_write_ptr
+	copy temp,rega
+	increase -4,temp
+	ifetch 4,temp
+	store 4,mem_temp
+	fetcht 2,mem_spi_write_len
+	fetch 3,mem_spi_write_addr
+	rtn
+
+
+/* pdata is flash address, rega pointers to txdata(4 ahead bytes should be left), temp is length */
+spid_write_flash:
+	increase 4,temp
+	hstoret 2,core_spid_txlen
+	arg FLASH_COMMAND_WRITE_DATA,temp
+	increase -4,rega
+spid_write_flash_common:
+
+	istoret 1,rega
+	rshift16 pdata,temp
+	istoret 1,contw
+	rshift8 pdata,temp
+	istoret 1,contw
+	istore 1,contw
+	deposit rega
+	hstore 2,core_spid_txaddr
+	setarg 0
+	hstore 2,core_spid_rxlen
+	jam spid_start,core_misc_ctrl
+	branch wait_spid_done
+
+
+/* temp is length, rega pointers to buf   */
+spid_read_flash:
+	hstoret 2,core_spid_rxlen
+	rshift16 pdata,temp
+	storet 1,mem_addr_hi
+	rshift8 pdata,temp
+	storet 1,mem_addr_mi
+	store 1,mem_addr_lo
+	setarg 4
+	hstore 2,core_spid_txlen
+	jam FLASH_COMMAND_READ_DATA,mem_spid_tbuf
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	deposit rega
+	hstore 2,core_spid_rxaddr
+	hfetch 1,core_spid_ctrl
+	isolate0 15,rega
+	setflag true,6,pdata
+	hstore 1,core_spid_ctrl
+	jam spid_start,core_misc_ctrl
+spi_read_flash_wait:
+	hfetch 1,core_dma_status
+	bbit1 7,spi_read_flash_wait			// waiting for spid write
+	arg spid_done,queue
+	branch wait_spid_done
+
+
+/* temp is length, rega pointers to buf  */
+spid_load_flash:
+	hstoret 2,core_spid_rxlen
+	setarg 4
+	hstore 2,core_spid_txlen
+	jam 3,mem_spid_tbuf
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	deposit rega
+	hstore 2,core_spid_rxaddr
+	hfetch 1,core_spid_ctrl
+	isolate0 15,rega
+	setflag true,6,pdata
+	hstore 1,core_spid_ctrl
+	jam spid_start,core_misc_ctrl
+spi_load_flash_wait:
+	hfetch 1,core_dma_status
+	bbit1 7,spi_load_flash_wait			// waiting for spid write
+	arg spid_done,queue
+	call decrypt_code
+	call wait_spid_done
+	isolate1 spid_crcok,pdata
+	call set_ucode_status
+	fetch 1,mem_addr_hi
+	lshift16 pdata,regb
+	fetch 1,mem_addr_mi
+	lshift8 pdata,pdata
+	ior regb,regb
+	fetch 1,mem_addr_lo
+	ior regb,pdata
+	iadd temp,pdata
+	store 1,mem_addr_lo
+	rshift8 pdata,pdata
+	store 1,mem_addr_mi
+	rshift8 pdata,pdata
+	store 1,mem_addr_hi
+	rtn
+
+/*****************************************************************************
+*soft reset chip
+*****************************************************************************/
+soft_reset_chip:
+	jam 1,core_reset
+	rtn
+
+
+
+/* ===================== I2C dma ======================= */
+
+iic_init_390k:	//390khz
+	jam 12,core_iicd_scl_low
+	jam 13,core_iicd_scl_high
+	jam 13,core_iicd_start_setup
+	jam 13,core_iicd_start_hold
+	jam 13,core_iicd_stop_setup
+	jam 12,core_iicd_data_setup
+  	branch iicd_init_gpio	
+
+
+iicd_init_12m:
+	jam 5,core_iicd_scl_low
+ 	jam 7,core_iicd_scl_high
+	jam 7,core_iicd_start_setup
+	jam 7,core_iicd_start_hold
+	jam 7,core_iicd_stop_setup
+	jam 5,core_iicd_data_setup
+iicd_init_gpio:	
+	hfetch 1,core_gpio_pu3
+	or_into 0xc0,pdata
+	hstore 1,core_gpio_pu3
+	hfetch 1,core_gpio_sel1
+	or_into 0x10,pdata
+	hstore 1,core_gpio_sel1
+	rtn
+
+
+
+wait_iicd_done:
+	hfetch 1,core_dma_status
+	bbit0 iicd_done,wait_iicd_done
+	rtn
+
+/*
+pdata is tx length
+rega is points to tx buffer
+regb is points to rx buffer
+temp is rx length
+*/
+iicd_read_data:
+	hstore 2,core_iicd_txlen
+	deposit rega
+	hstore 2,core_iicd_txaddr	
+	deposit regb
+	hstore 2,core_iicd_rxaddr
+	deposit temp	
+	hstore 2,core_iicd_rxlen
+	arg 1,temp
+	nsetflag blank,1,temp
+	hstore 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	branch wait_iicd_done
+
+
+set_eeprom_size_2k:
+	set1 mark_eeprom_size,mark
+	jam 0x08,mem_eeprom_block_size
+	rtn
+
+clear_eeprom_size_2k:
+	set0 mark_eeprom_size,mark
+	jam 0x20,mem_eeprom_block_size
+	rtn
+
+
+iicd_read_eep_data_size_2k:
+ 	fetch 1,mem_eeprom_base
+	iadd regb,pdata
+	store 1,mem_addr_mi
+	branch iicd_read_eep_size_2k
+
+iicd_read_eep_size_2k_lcadcode:
+	fetch 2,mem_addr_mi
+	byteswap pdata,pdata
+	store 1,mem_addr_mi
+	
+//length:temp 
+//mem ptr:rega
+//eeprom addr:pdata
+iicd_read_eep_size_2k:
+ 	setarg 3
+	hstore 2,core_iicd_txlen
+	jam 0xa0,mem_iicd_tbuf
+	jam 0xa1,mem_iicd_tbuf+2
+	branch iicd_read_eep_common
+
+
+//length:temp 
+//mem ptr:rega
+//eeprom addr:regb
+iicd_write_protect_eep_data:
+	storet 2,mem_temp
+	call iicd_eeprom_write_enable
+	fetcht 2,mem_temp
+	call iicd_write_eep_data
+	branch iicd_eeprom_write_disable
+	
+iicd_eeprom_write_enable:
+	fetch 1,mem_eeprom_wp_gpio
+	rtneq GPIO_DISABLE
+	bbit0 6,iicd_wp_gpio_output_low
+	setarg 150000
+	call sleep
+iicd_wp_gpio_output_low:
+	fetcht 1,mem_eeprom_wp_gpio
+	branch gpio_out_active
+	
+iicd_eeprom_write_disable:
+	fetcht 1,mem_eeprom_wp_gpio
+	branch gpio_out_inactive
+	
+//length:temp 
+//mem ptr:rega
+//eeprom addr offset:regb
+iicd_read_eep_data:
+	bpatchx patch32_0,mem_patch32
+	bmark1 mark_eeprom_size,iicd_read_eep_data_size_2k
+	fetch 2,mem_eeprom_base
+	iadd regb,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+
+/* rega pointers to buf, temp is length  */
+iicd_read_eep:
+	bpatchx patch32_1,mem_patch32
+	bmark1 mark_eeprom_size,iicd_read_eep_size_2k_lcadcode
+	setarg 4
+	hstore 2,core_iicd_txlen
+	jam 0xa0,mem_iicd_tbuf
+	jam 0xa1,mem_iicd_tbuf+3
+iicd_read_eep_common:	
+	setarg mem_iicd_tbuf
+	hstore 2,core_iicd_txaddr
+	hstoret 2,core_iicd_rxlen
+	deposit rega
+	hstore 2,core_iicd_rxaddr
+	setarg 2
+	isolate0 15,rega
+	setflag true,0,pdata
+	hstore 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	arg iicd_done,queue
+	call decrypt_code
+	call wait_iicd_done
+	isolate1 iicd_crcok,pdata
+	call set_ucode_status
+	bmark1 mark_eeprom_size,iicd_read_eep_load_code_size_2k
+	fetch 2,mem_addr_mi
+	byteswap pdata,pdata
+	iadd temp,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	rtn
+
+iicd_read_eep_load_code_size_2k:
+	fetch 1,mem_addr_mi
+	iadd temp,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	rtn
+	
+
+//length:temp 
+//mem ptr:rega
+//eeprom addr offset:regb
+iicd_write_eep_data:
+	fetch 2,mem_eeprom_base
+	iadd regb,pdata
+
+//cuur ptr:pdata length:temp buf:rega
+iicd_write_ota_data:
+	store 2,mem_pdatatemp //curr ptr
+	bpatchx patch32_2,mem_patch32
+	storet 2,mem_temp	//len
+	copy rega,pdata
+	store 2,mem_contr
+iicd_write_eep_loop:
+	call iicd_eep_transparency
+
+	fetcht 2,mem_regb
+	fetch 2,mem_contr
+	copy pdata,rega
+	fetch 2,mem_pdatatemp
+	
+	call iicd_write_eep
+	
+	fetch 2,mem_regb
+	fetcht 2,mem_contr
+	iadd temp,temp
+	storet 2,mem_contr
+	fetcht 2,mem_pdatatemp
+	iadd temp,temp
+	storet 2,mem_pdatatemp
+	fetch 2,mem_temp
+	nbranch iicd_write_eep_loop,blank
+	rtn
+	
+//in:
+//1.size 2.len 3.src 4.des
+//mem_regc page's area
+//mem_pdatatemp curr ptr
+//mem_temp all len      
+//mem_regb curr len
+iicd_eep_transparency:
+	bpatchx patch32_3,mem_patch32
+	fetch 1,mem_eeprom_block_size
+	increase -1,pdata
+	fetcht 2,mem_pdatatemp
+	ior temp,pdata
+	increase 1,pdata
+	store 3,mem_regc
+
+	fetch 2,mem_temp
+	iadd temp,pdata
+
+	fetcht 3,mem_regc
+	isub temp,pdata
+	nbranch iicd_eep_deal_short_packet,positive
+	store 2,mem_temp
+	fetch 3,mem_regc
+	fetcht 2,mem_pdatatemp
+	isub temp,pdata
+	store 2,mem_regb
+	rtn
+iicd_eep_deal_short_packet:
+	fetch 2,mem_temp
+	store 2,mem_regb
+	setarg 0
+	store 2,mem_temp
+	rtn
+
+iicd_write_eep_size_2k:
+	increase 2,temp
+	hstoret 2,core_iicd_txlen
+	increase -2,rega
+	ifetcht 3,rega
+	copy temp,regb
+	arg 0xa0,temp
+	istoret 1,rega
+//	byteswap pdata,pdata
+	istore 1,contw
+	branch iicd_write_eep_common
+
+	/* pdata is eeprom address, rega pointers to txdata(3 ahead bytes should be left), temp is length */
+iicd_write_eep:
+	copy pdata,regb
+	bpatchx patch32_4,mem_patch32
+	bmark1 mark_eeprom_size,iicd_write_eep_size_2k
+	copy regb,pdata
+	increase 3,temp
+	hstoret 2,core_iicd_txlen
+	increase -3,rega
+	ifetcht 3,rega
+	copy temp,regb
+	arg 0xa0,temp
+	istoret 1,rega
+	byteswap pdata,pdata
+	istore 2,contw
+iicd_write_eep_common:	
+	deposit rega
+	hstore 2,core_iicd_txaddr
+	setarg 0
+	hstore 2,core_iicd_rxlen
+	jam 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	call wait_iicd_done
+	copy regb,pdata
+	istore 3,rega
+	
+iic_check_eeprom_standby:
+	bpatchx patch32_5,mem_patch32
+	jam 0,mem_iicd_tbuf+3
+iic_check_eeprom_standby_wait:
+	setarg 1
+	hstore 2,core_iicd_txlen
+	jam 0xa0,mem_iicd_tbuf
+	setarg mem_iicd_tbuf
+	hstore 2,core_iicd_txaddr
+	setarg 0
+	hstore 2,core_iicd_rxlen
+	hstore 2,core_iicd_rxaddr
+	setarg 3
+	hstore 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	call wait_iicd_done
+	hfetch 1,core_dma_status
+	rtnbit0 iicd_ack
+	nop 1500
+	fetch 1,mem_iicd_tbuf+3
+	increase 1,pdata
+	store 1,mem_iicd_tbuf+3
+	sub pdata,40,null
+	nrtn positive//polling timeout 6ms
+	branch iic_check_eeprom_standby_wait
+
+/* ===================== OTP ======================= */
+
+otp_enable_chgpump:
+	jam 0x70,rfen_chgpump
+	nop param_chgpump_delay
+	rtn
+
+otp_disable_chgpump:
+	jam 0x30,rfen_chgpump
+	rtn
+	
+otp_set_addr:
+	lshift3 pdata,pdata
+	hstore 2,core_otp_addr
+	jam 0,core_otpd_ctrl
+	rtn	
+
+/* pdata = otp address, rega pointers data, loopcnt is count */
+otp_write:
+	call otp_set_addr
+	call otp_ce
+otp_program:
+	ifetcht 1,rega
+	increase 1,rega
+	force 0,queue
+otp_program_bit:
+	qisolate0 temp
+	branch otp_skip_0,true
+	hfetch 1,core_otp_din
+	set1 6,pdata				/* din */
+	set1 7,pdata				/* dle */
+	hstore 1,core_otp_din
+	jam 0x02,core_otp_ctrl	/* web */
+	jam 0x82,core_otp_ctrl
+	set0 7,pdata				/* dle */
+	hstore 1,core_otp_din
+	jam 0x8a,core_otp_ctrl	/* pgmen */
+	nop 11
+	jam 0xca,core_otp_ctrl	/* vppen */
+	nop 33
+	jam 0x4a,core_otp_ctrl	/* web 2nd */
+	nop 44
+	jam 0xca,core_otp_ctrl	/* release web */
+	nop 22
+	jam 0x8a,core_otp_ctrl	/* release vppen */
+	nop 33
+	jam 0x82,core_otp_ctrl	/* release pgmen */
+	nop 1
+	jam 0x92,core_otp_ctrl	/* pgmvfy */
+	nop 10
+	jam 0xb2,core_otp_ctrl	/* readen */
+	hfetch 1,core_otp_rdata
+	jam 0x92,core_otp_ctrl	/* release readen */
+	nop 1
+	jam 0x82,core_otp_ctrl	/* release pgmvfy */
+	qisolate0 pdata
+	branch otp_program_bit,true	/* program error */
+otp_skip_0:
+	hfetch 2,core_otp_addr
+	increase 1,pdata
+	hstore 2,core_otp_addr
+	increase 1,queue
+	compare 8,queue,0xf
+	nbranch otp_program_bit,true
+	loop otp_program
+	jam 0x83,core_otp_ctrl
+	rtn
+
+otp_ce:
+	jam 0x82,core_otp_ctrl	/* ceb */
+	nop 12
+	jam 0x80,core_otp_ctrl	/* rstn */
+	jam 0x82,core_otp_ctrl	/* release rstn */
+	nop 150					/* waiting for vdd25 stable */
+	rtn
+
+	/* rega points to data, temp is count */
+otpd_read_init:
+	call otp_ce
+	jam 0xa2,core_otp_ctrl	/* readen */
+	deposit rega
+	hstore 2,core_otpd_addr
+	set1 11,temp
+	isolate0 15,pdata
+	setflag true,15,temp
+	hstoret 2,core_otpd_len
+	jam otpd_start,core_misc_ctrl
+	rtn
+
+otpd_wait_end:
+	hfetch 1,core_dma_status
+	bbit0 otpd_done,otpd_wait_end
+	rtn
+	
+	/* pdata=otp address, rega points to data, temp is count */
+otpd_read_data:
+	call otp_set_addr
+	call otpd_read_init
+	call otpd_wait_end
+	jam 0x83,core_otp_ctrl	/* release ceb */
+	rtn
+
+
+
+/* rega pointers to buf, temp is length */
+otpd_read_code:	
+	hfetch 2,core_current_otp_addr
+	hstore 2,core_otp_addr
+	call otpd_read_init
+	arg otpd_done,queue
+	call decrypt_code
+	call otpd_wait_end
+	isolate1 otpd_crcok,pdata	
+	call set_ucode_status
+	jam 0x83,core_otp_ctrl	/* release ceb */
+	rtn
+
+/* ===================== uart dma ======================= */
+uartd_prepare_tx:
+	hfetch 2,core_uart_twptr
+	iforce contwu
+	rtn
+
+uartd_send:
+	deposit contwu
+	hstore 2,core_uart_twptr
+	rtn
+
+uartd_rxdone:
+	deposit contru
+	hstore 2,core_uart_rrptr
+	rtn
+
+uartd_prepare_rx:
+	hfetch 2,core_uart_rrptr
+	copy pdata,contru
+	rtn
+
+uart_set_baud_by_mem:
+	fetch uart_baud_len,mem_baud
+	hstore uart_baud_len,core_uart_baud
+	rtn
+
+uart_copy_tx_bytes_fast:
+	deposit loopcnt
+	rtn blank
+uart_copy_tx_bytes_fast_loop:
+	increase -8,loopcnt
+	call uart_tx_8_bytes,positive
+	rtn zero
+	branch uart_copy_tx_bytes_fast_loop,positive
+	increase 8,loopcnt
+uart_copy_tx_bytes_fast_loop_four:
+	increase -4,loopcnt
+	call uart_tx_4_bytes,positive
+	rtn zero
+	branch uart_copy_tx_bytes_fast_loop_four,positive
+	increase 4,loopcnt
+	branch uart_copy_tx_bytes
+
+uart_tx_8_bytes:
+	ifetch 8,contr
+	istore 8,contwu
+	rtn
+
+uart_tx_4_bytes:
+	ifetch 4,contr
+	istore 4,contwu
+	rtn
+
+uart_copy_tx_bytes:
+	deposit loopcnt
+	rtn blank
+uart_copy_tx_bytes_loop:
+	ifetch 1,contr
+	istore 1,contwu
+	loop uart_copy_tx_bytes_loop
+	rtn
+
+uart_copy_rx_bytes_fast:
+	deposit loopcnt
+	rtn blank
+uart_copy_rx_bytes_fast_loop:
+	increase -8,loopcnt
+	call uart_rx_8_bytes,positive
+	rtn zero
+	branch uart_copy_rx_bytes_fast_loop,positive
+	increase 8,loopcnt
+uart_copy_rx_bytes_fast_loop_four:
+	increase -4,loopcnt
+	call uart_rx_4_bytes,positive
+	rtn zero
+	branch uart_copy_rx_bytes_fast_loop_four,positive
+	increase 4,loopcnt
+	branch uart_copy_rx_bytes
+
+uart_rx_8_bytes:
+	ifetch 8,contru
+	istore 8,contw
+	rtn
+
+uart_rx_4_bytes:
+	ifetch 4,contru
+	istore 4,contw
+	rtn
+
+
+uart_copy_rx_bytes:
+	deposit loopcnt
+	rtn blank
+uart_copy_rx_bytes_loop:
+	ifetch 1,contru
+	istore 1,contw
+	loop uart_copy_rx_bytes_loop
+	rtn
+
+
+uart_copy_rx2tx:
+	deposit loopcnt
+	rtn blank
+uart_copy_rx2tx_loop:
+	ifetch 1,contru
+	istore 1,contwu
+	loop uart_copy_rx2tx_loop
+	rtn
+
+
+/* ===================== eeprom data ======================= */
+
+app_store_nvram_event:
+	jam BT_EVT_STORE_NVRAM,mem_fifo_temp
+	branch ui_ipc_send_event
+
+check_51cmd_store_reconn_info:
+check_51cmd_update_device_record:
+	bpatchx patch32_6,mem_patch32
+	fetch 1,mem_nv_data_number
+	rtn blank		// not nv data
+	call check_nvram
+	call init_device_list,zero
+	call nvram_find_addr_from_bd_list
+write_device_record:
+	fetch 1,mem_nv_data_number
+	icopy regc
+	fetcht 2,mem_nv_data_ptr
+	storet 2,mem_list_item_ptr
+write_device_loop_find:
+	copy regc,pdata
+	branch app_store_nvram_event,blank  //EEPROM
+	increase -1,regc
+	copy temp,rega
+	ifetch 1,rega
+	fetcht 1,mem_select_list_item
+	isub temp,null
+	call set_index_finded_device,zero
+	branch write_device_loop_find0,positive
+	ifetch 1,rega
+	increase 1,pdata
+	istore 1,rega
+write_device_loop_find0:
+	fetcht 2,mem_list_item_ptr
+	increase NV_DATA_LEN,temp
+	storet 2,mem_list_item_ptr
+	branch write_device_loop_find
+
+set_index_finded_device:
+	setarg 0
+	istore 1,rega
+	fetch 1,mem_temp_reconn_record
+	istore 1,contw	
+	bne REC_3_MODE,set_index_finded_device_ble_mode
+	arg mem_link_key,regb
+set_index_find_device_MASTER_ADDR:
+	ifetch 6,contr
+	istore 8,contw
+	setarg 0
+	istore 8,contw
+	copy regb,contr
+store_rec_data_common:
+	call memcpy16
+	force 1,null
+	rtn
+
+set_index_finded_device_ble_mode:
+	beq REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS,set_index_finded_device_IRK
+	beq REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS,set_index_finded_device_EDIV
+	arg mem_le_ltk,regb
+	branch set_index_find_device_MASTER_ADDR
+
+set_index_finded_device_IRK:
+	arg mem_le_irk,contr
+	call memcpy16
+store_ble_rec_data_common:
+	arg mem_le_ltk,contr
+	branch store_rec_data_common
+
+set_index_finded_device_EDIV:
+	arg mem_le_rand,contr
+	call memcpy16
+	branch store_ble_rec_data_common
+
+
+nvram_find_addr_from_bd_list:
+	call disable_user
+	fetch 1,mem_nv_data_number
+	rtn blank		// not nv data
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,find_addr_from_bd_list_SPP_mode
+find_addr_from_bd_list_ble_mode:
+	bpatchx patch32_7,mem_patch32
+	fetch 1,mem_le_conn_peer_addr_type
+	beq MASTER_PUBLIC_ADDR,find_addr_from_bd_list_static_addr
+	fetch 1,mem_le_plap+5
+	compare 0xc0,pdata,0xc0
+	branch find_addr_from_bd_list_static_addr,true
+	compare 0x40,pdata,0xc0
+	branch find_addr_from_bd_list_random_addr,true
+	compare 0x00,pdata,0xc0
+	branch find_addr_from_bd_list_random_non_resolvable_private_address,true
+find_addr_from_bd_list_static_addr:
+	jam REC_4_MODE_STATIC_ADDRESS,mem_temp_reconn_record
+	fetch 6,mem_le_plap
+	branch find_addr_from_bd_list_common
+	
+find_addr_from_bd_list_random_non_resolvable_private_address:	
+	jam REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS,mem_temp_reconn_record
+	branch find_addr_from_bd_list_common
+
+//input :pdata EDIV and rands
+find_addr_from_bd_list_random_addr:
+	jam REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS,mem_temp_reconn_record
+	branch find_addr_from_bd_list_common
+	
+//input :pdata EDIV and rands
+find_addr_from_bd_list_SPP_mode:
+	bpatchx patch33_0,mem_patch33
+	jam REC_3_MODE,mem_temp_reconn_record
+	fetch 6,mem_plap
+find_addr_from_bd_list_common:
+	store 6,mem_temp_reconn_record+1
+	fetch 2,mem_nv_data_ptr
+	ifetcht 1,pdata
+	pincrease 1
+	store 2,mem_list_item_ptr
+	storet 1,mem_select_list_item
+	fetch 1,mem_nv_data_number
+	icopy regc
+nvram_find_addr_from_list:
+	fetch 2,mem_list_item_ptr
+	copy pdata,rega
+	call nvram_find_addr_from_list_compare
+	rtn user
+	fetcht 2,mem_list_item_ptr
+	increase NV_DATA_LEN,temp
+	storet 2,mem_list_item_ptr
+	increase -1,temp
+	ifetch 1,temp
+	store 1,mem_select_list_item
+	increase -1,regc
+	nbranch nvram_find_addr_from_list,zero
+	fetch 1,mem_nv_data_number
+	pincrease DECREASED_ONE
+	store 1,mem_select_list_item
+	rtn
+nvram_find_addr_from_list_compare:
+	fetch 1,mem_temp_reconn_record
+	bne REC_3_MODE,find_addr_from_list_compare_ble_mode
+find_master_addr_from_list_compare:
+	arg mem_temp_reconn_record,regb
+	arg 7,loopcnt
+	call string_compare
+	branch enable_user,zero
+	rtn
+
+find_addr_from_list_compare_ble_mode:
+	beq REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS,find_irk_form_list_compare
+	beq REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS,find_ediv_form_list_compare
+	branch find_master_addr_from_list_compare
+
+find_irk_form_list_compare:
+	ifetcht 1,rega
+	isub temp,null
+	nrtn zero
+	arg mem_le_prand,contw
+	arg 16,loopcnt
+	call clear_mem
+	fetch 3,mem_le_plap+3
+	store 3,mem_le_prand
+	call genernate_master_MacAddress
+	fetch 2,mem_le_aes_128+13
+	byteswap pdata,pdata
+	lshift8 pdata,temp
+	ifetch 1,contr
+	iadd temp,pdata
+	fetcht 3,mem_le_plap
+	isub temp,null
+	branch enable_user,zero
+	rtn
+
+
+genernate_master_MacAddress:
+	arg mem_le_prand ,contr
+	call load_data128
+//	arg mem_le_irk,contr
+	ifetch 1,rega
+	call load_regext
+	force 0x38,aes_ctrl
+	force 0x0,aes_ctrl
+	call wait_aes
+	arg mem_le_aes_128,contw
+	branch store_aes_result
+
+find_ediv_form_list_compare:
+	ifetcht 1,rega
+	isub temp,null
+	nrtn zero
+	copy contr,rega
+	add contr,8,regc
+	arg mem_le_rand,regb
+	arg 8,loopcnt
+	call string_compare
+	branch enable_user,zero
+	copy regc,rega
+	arg mem_le_irk,regb
+	arg 8,loopcnt
+	call string_compare
+	branch enable_user,zero
+	rtn
+
+check_nvram:
+	fetch 2,mem_nv_data_ptr
+	ifetcht 1,pdata
+	pincrease NV_DATA_LEN
+	ifetch 1,pdata
+	isub temp,null
+	rtn
+
+init_device_list:
+	fetch 1,mem_nv_data_number
+	icopy loopcnt
+	fetcht 2,mem_nv_data_ptr
+	setarg 0
+init_device_list_loop:
+	istore 1,temp
+	increase NV_DATA_LEN,temp
+	pincrease 1
+	loop init_device_list_loop
+	rtn
+
+load_device_list:
+	bpatchx patch33_1,mem_patch33
+	call nvram_find_addr_from_bd_list
+	fetch 1,mem_state
+	setflag user,state_combkey,pdata	/* we have link key */
+	store 1,mem_state
+	nbranch clear_key_exists,user
+	add rega,10,contr
+//	copy rega,contr
+	arg mem_link_key,contw
+	call  memcpy16
+	branch check_link_key_load
+clear_key_exists:
+	jam 0,mem_link_key_exists
+	rtn
+
+load_device_list_mode_4:
+	fetch 9,mem_le_ediv
+	branch clear_ltk_exists,blank
+	call nvram_find_addr_from_bd_list
+	nbranch clear_ltk_exists,user
+	fetch 2,mem_list_item_ptr
+	add pdata,1,contr
+	arg mem_le_irk,contw
+	call  memcpy16
+	arg mem_le_ltk,contw
+	call  memcpy16
+	jam 1,mem_ltk_exists
+	rtn
+
+clear_ltk_exists:
+	jam 0,mem_ltk_exists
+	rtn
+
+
+eeprom_store_le_reconn_info:
+	fetch 6,mem_le_plap
+	store 6,mem_temp_lap
+	jam REC_4_MODE,mem_record_bt_mode
+	branch eeprom_store_reconn_info
+eeprom_store_bd_reconn_info:
+	fetch 6,mem_plap
+	store 6,mem_temp_lap
+	jam REC_3_MODE,mem_record_bt_mode
+eeprom_store_reconn_info:
+	fetch 1,mem_device_option
+	beq dvc_op_module,check_51cmd_update_device_record
+	bbit1 dvc_op_mouse,mouse_store_remote_bdaddr
+	rtn
+	
+
+check_link_key_load:
+	fetch 8,mem_link_key
+	fetcht 8,mem_link_key+8
+	ior temp,pdata
+	rtn blank
+	jam 1,mem_link_key_exists
+	rtn
+	
+
+/* =============== GPIO CONTROL ================= */
+
+
+	//temp [4:0]=GPIO number, 0-31, 
+gpio_set_wake_by_current_state:
+	bpatchx patch33_2,mem_patch33
+	set1 7,temp
+	call gpio_get_bit
+	nsetflag true,7,temp
+	//branch gpio_set_wake
+	//fall through
+	
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active
+gpio_set_wake:
+	bpatchx patch33_3,mem_patch33
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate0 7,temp
+	and temp,0x1f,queue
+	fetch 4,mem_gpio_wakeup_low
+	qsetflag true,pdata
+	store 4,mem_gpio_wakeup_low
+	fetch 4,mem_gpio_wakeup_high
+	nqsetflag true,pdata
+	store 4,mem_gpio_wakeup_high
+	rtn
+	
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active
+gpio_clr_wake:
+	bpatchx patch33_4,mem_patch33
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate0 7,temp
+	and temp,0x1f,queue
+	fetch 4,mem_gpio_wakeup_low
+	qset0 pdata
+	store 4,mem_gpio_wakeup_low
+	fetch 4,mem_gpio_wakeup_high
+	qset0 pdata
+	store 4,mem_gpio_wakeup_high
+	rtn
+
+
+gpio_config_input_nowake:
+	call gpio_clr_wake
+	branch gpio_config_input_without_wake
+
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active
+gpio_config_input:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	ncall gpio_set_wake,wake
+
+gpio_config_input_without_wake:
+	arg core_gpio_pd0,contw
+	call gpio_set_bit
+	setflip gpio_active_bit,temp
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+
+
+gpio_set_high_impedance:
+	arg core_gpio_pd0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+
+
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active. set gpio to inactive state
+gpio_config_output:	
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	setflip gpio_active_bit,temp
+	call gpio_out
+gpio_config_output0:
+	set1 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+	
+gpio_common:
+	and temp,0x07,queue
+	rshift3 temp,pdata
+	and_into 3,pdata
+	iadd contw,contw
+	ifetch 1,contw
+	rtn
+
+gpio_check_active:
+	arg core_gpio_out0,contw
+	branch get_bit_common
+
+	
+	/* temp is gpio number, return true if gpio active */
+gpio_get_bit:
+	arg core_gpio_in,contw
+get_bit_common:
+	call gpio_common
+	isolate1 gpio_active_bit,temp
+	branch gpio_get_bit_reverse,true
+	qisolate0 pdata
+	rtn
+gpio_get_bit_reverse:
+	qisolate1 pdata
+	rtn
+
+gpio_out_inactive:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate1 7,null
+	branch gpio_out_flag
+
+gpio_out_active:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate0 7,null
+
+	/* temp is gpio number,  [7]=1,set out equa true flag if gpio active */
+gpio_out_flag:
+	setarg 0
+	nsetflag true,gpio_active_bit,pdata
+	ixor temp,temp
+	
+	/* temp is gpio number,0-31, [7]=out bit value */
+gpio_out:
+	arg core_gpio_out0,contw
+
+	//temp [4:0]=GPIO number, 0-31, [7]=bit value; contw is gpio reg base
+gpio_set_bit:
+	call gpio_common
+	isolate1 gpio_active_bit,temp
+	qsetflag true,pdata
+	istore 1,contw
+	rtn
+
+gpio_set_before_lpm_common:
+	arg -1,rega
+	hfetch 1,core_gpio_sel1
+	compare 0x02,pdata,0x03
+	call neglact4_from_23_pin,true	//spi
+
+	compare 0x01,pdata,0x03
+	call neglact2_form_25_pin,true	//two spi gpio25 26
+
+	compare 0x03,pdata,0x03
+	call neglact2_form_25_pin,true	//two spi gpio30 31
+	 	 
+	isolate1 2,pdata
+	call neglect2_from_6_pin,true	//uart
+	 
+	isolate1 3,pdata
+	call neglect4_from_9_pin,true	//spi
+
+	isolate1 4,pdata
+	call neglact2_form_30_pin,true	//IIC GPIO30 31
+
+	isolate1 6,pdata
+	nsetflag true,04,rega			//pwm0 gpio4
+
+	isolate1 7,pdata
+	nsetflag true,05,rega			//pwm1 gpio5
+
+	hfetch 1,core_gpio_sel2
+	isolate1 0,pdata
+	nsetflag true,27,rega			//pwm2 gpio27
+	isolate1 1,pdata
+	nsetflag true,28,rega			//pwm3 gpio28
+	isolate1 2,pdata
+	nsetflag true,03,rega			//pwm4 gpio03
+	isolate1 3,pdata
+	nsetflag true,08,rega			//pwm5 gpio08
+	isolate1 4,pdata
+	nsetflag true,20,rega			//pwm0 gpio20
+	isolate1 5,pdata
+	nsetflag true,21,rega			//pwm1 gpio21
+	isolate1 6,pdata
+	nsetflag true,22,rega			//pwm2 gpio22
+	isolate1 7,pdata
+	nsetflag true,23,rega			//pwm3 gpio23
+		
+	hfetch 1,core_gpio_sel
+	isolate1 0,pdata
+	nsetflag true,05,rega			//ADC GPIO05
+	isolate1 1,pdata
+	nsetflag true,06,rega			//ADC GPIO06
+	isolate1 2,pdata
+	nsetflag true,07,rega			//ADC GPIO07
+	isolate1 3,pdata
+	nsetflag true,18,rega			//ADC GPIO18
+	isolate1 4,pdata
+	nsetflag true,19,rega			//ADC GPIO19
+	isolate1 5,pdata
+	nsetflag true,20,rega			//ADC GPIO20
+	isolate1 6,pdata
+	nsetflag true,21,rega			//ADC GPIO21
+	isolate1 7,pdata
+	nsetflag true,22,rega			//ADC GPIO22
+	
+	hfetch 1,core_uart_ctrl
+	isolate1 4,pdata
+	call neglact2_form_2_pin,true
+	bpatchx patch33_5,mem_patch33
+
+	hfetch 4,core_gpio_pu0
+	hfetcht 4,core_gpio_pd0
+	ior temp,pdata
+	invert pdata,pdata
+	iand rega,pdata
+	//set0 4,pdata //revc
+	hstore 4,core_gpio_oe0
+	rtn
+	
+	
+neglect2_from_6_pin: //uart
+	 arg 6,queue
+	 branch neglect_2_pin
+neglect4_from_9_pin:
+	 arg 9,queue
+	 branch neglact_4_pin
+neglact4_from_23_pin:
+	 arg 23,queue
+	 branch neglact_4_pin
+neglact2_form_25_pin:
+	 arg 25,queue
+	 branch neglect_2_pin
+neglact2_form_30_pin:
+	 arg 30,queue
+	 branch neglect_2_pin
+neglact2_form_2_pin:
+	 arg 2,queue
+	 branch neglect_2_pin
+neglact_1_pin:
+	arg 1,loopcnt
+	branch neglect_pin_loop
+neglact_4_pin:
+	 arg 4,loopcnt
+	 branch neglect_pin_loop
+neglect_2_pin:
+	 arg 2,loopcnt
+neglect_pin_loop:
+	 qset0 rega
+	 increase 1,queue
+	 loop neglect_pin_loop
+	 rtn
+
+
+
+
+
+
+/* ===================== sniff GPIO CONTROL ======================= */
+gpio_cfg_uart_tx_output:
+	call gpio_uart2gpio
+	arg UART_WAKEUP_TX,temp
+	branch gpio_config_output
+
+gpio_pu_uart_tx:
+	call gpio_cfg_uart_tx_output
+	arg UART_WAKEUP_TX,temp
+	branch gpio_out_inactive
+
+
+
+gpio_rx_config_input_with_pu:
+	call gpio_uart2gpio
+	hfetch 1, core_gpio_pu0
+	set1 UART_WAKEUP_RX,pdata
+	hstore 1,core_gpio_pu0
+	arg UART_WAKEUP_RX,temp
+	branch gpio_config_input
+	
+gpio_uart2gpio:
+	hfetch 1,core_gpio_sel1
+	and_into 0xfb,pdata
+	hstore 1,core_gpio_sel1
+	rtn
+
+gpio_check_uart_state:
+	hfetch 1,core_gpio_sel1
+	isolate1 2,pdata
+	rtn
+
+load_chip_option:
+	call otp_enable_chgpump
+	setarg OTP_CHIP_FUNCTIONS
+	arg mem_chip_functions,rega
+	arg 0x02,temp
+	call otpd_read_data
+	branch otp_disable_chgpump
+
+
+load_adc_init:
+	call otp_enable_chgpump
+	setarg otp_adc_io_0_5V_addr
+	arg mem_0_5_adc_io_data,rega
+	arg 14,temp
+	call otpd_read_data
+	branch otp_disable_chgpump
+
+
+//mem_adc_config_flag 0:vinlpm 1:Hvin 2: GPIO
+adc_init_data:
+	bpatchx patch33_6,mem_patch33
+
+	call load_adc_init
+	
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,adc_init_data_vinlpm
+	beq ADC_CONFIG_HVIN,adc_init_data_hvin
+	beq ADC_CONFIG_GPIO,adc_init_data_io
+	rtn	
+
+adc_init_data_vinlpm:
+	fetcht 2,mem_otp_adc_flag
+	setarg OTP_ADC_FLAG
+	isub temp,null
+	branch adc_check_data_vinlpm,zero
+	setarg 0x4dfa
+	store 2,mem_3v_adc_vinlpm_data	
+	setarg 0x4894
+	store 2,mem_2v_adc_vinlpm_data
+	branch set_vdd_reference_voltage_1v
+
+adc_check_data_vinlpm:
+	fetch 2,mem_3v_adc_vinlpm_data
+	nbranch adc_check_2v_vinlpm,blank
+	setarg 0x4dfa
+	store 2,mem_3v_adc_vinlpm_data
+adc_check_2v_vinlpm:	
+	fetch 2,mem_2v_adc_vinlpm_data
+	nbranch set_vdd_reference_voltage_1v,blank
+	setarg 0x4894
+	store 2,mem_2v_adc_vinlpm_data
+set_vdd_reference_voltage_1v:
+	setarg 100
+	store 2,mem_reference_voltage //set reference voltage = 1V
+	rtn		
+
+adc_init_data_hvin:
+	fetcht 2,mem_otp_adc_flag
+	setarg OTP_ADC_FLAG
+	isub temp,null
+	branch adc_check_data_hvin,zero
+	setarg 0x5932
+	store 2,mem_5v_adc_hvin_data	
+	setarg 0x4323
+	store 2,mem_1v_adc_hvin_data
+	branch set_vdd_reference_voltage_4v
+
+adc_check_data_hvin:
+	fetch 2,mem_5v_adc_hvin_data
+	nbranch adc_check_1v_hvin,blank
+	setarg 0x5932
+	store 2,mem_5v_adc_hvin_data
+adc_check_1v_hvin:	
+	fetch 2,mem_1v_adc_hvin_data
+	nbranch set_vdd_reference_voltage_4v,blank
+	setarg 0x4323
+	store 2,mem_1v_adc_hvin_data
+set_vdd_reference_voltage_4v:
+	setarg 400
+	store 2,mem_reference_voltage //set reference voltage = 4V
+	rtn 	
+
+adc_init_data_io:
+	fetcht 2,mem_otp_adc_flag
+	setarg OTP_ADC_FLAG
+	isub temp,null
+	branch adc_check_data_io,zero
+	setarg 0x6946
+	store 2,mem_1v_adc_io_data	
+	setarg 0x5377
+	store 2,mem_0_5_adc_io_data
+	branch set_vdd_reference_voltage_0_5v
+
+adc_check_data_io:
+	fetch 2,mem_1v_adc_io_data
+	nbranch adc_check_0_5v_io,blank
+	setarg 0x6946
+	store 2,mem_1v_adc_io_data
+adc_check_0_5v_io:
+	fetch 2,mem_0_5_adc_io_data
+	nbranch set_vdd_reference_voltage_0_5v,blank
+	setarg 0x5377
+	store 2,mem_0_5_adc_io_data
+set_vdd_reference_voltage_0_5v:
+	setarg 50
+	store 2,mem_reference_voltage //set reference voltage = 0.5V
+	rtn	
+
+
+adc_set_mode:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,adc_check_vinlpm
+	beq ADC_CONFIG_HVIN,adc_check_hvin
+	beq ADC_CONFIG_GPIO,adc_check_gpio
+	rtn
+adc_check_vinlpm:
+	jam 0xbf,rf_adc_mode	//read VINLPM voltage directly	
+	branch read_adc
+adc_check_hvin:
+	jam 0xaf,rf_adc_mode	//read HVIN voltage directly
+	branch read_adc
+adc_check_gpio:
+	jam 0x8f,rf_adc_mode
+	fetch 1,mem_adc_channel
+	hstore 1,rf_adc_ch
+	branch read_adc
+read_adc:
+	bpatchx patch33_7,mem_patch33
+	hfetch 1,core_uart_baud + 1
+	set1 7,pdata
+	hstore 1,core_uart_baud + 1 
+	hfetch 1,rf_adc_ch
+	or_into 0x30,pdata
+	hstore 1,rf_adc_ch
+	jam 0x7c,rfen_adc
+	jam 0xaa,rf_adc_gc
+	nop 5000
+	hfetcht 2,core_adc_sum
+	hfetch 1,core_uart_baud + 1
+	set0 7,pdata
+	hstore 1,core_uart_baud + 1
+	storet 2,mem_adc_current_value
+	rtn
+
+vdd_calculate_by_mode:
+	bpatchx patch34_0,mem_patch34
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,vdd_calculate_vinlpm
+	beq ADC_CONFIG_HVIN,vdd_calculate_hvin
+	beq ADC_CONFIG_GPIO,vdd_calculate_io
+	rtn
+
+vdd_calculate_vinlpm:
+	fetch 2,mem_3v_adc_vinlpm_data
+	fetcht 2,mem_2v_adc_vinlpm_data
+	arg 200,regc
+	branch vdd_calculate
+
+vdd_calculate_hvin:
+	fetch 2,mem_5v_adc_hvin_data
+	fetcht 2,mem_1v_adc_hvin_data
+	arg 100,regc
+	branch vdd_calculate
+
+vdd_calculate_io:
+	fetch 2,mem_1v_adc_io_data
+	fetcht 2,mem_0_5_adc_io_data
+	arg 50,regc
+	branch vdd_calculate
+	
+vdd_calculate:
+	isub temp,rega
+	fetch 2,mem_adc_current_value
+	isub temp,pdata
+	nbranch vdd_calculate1,positive
+	fetcht 2,mem_reference_voltage
+	imul32 temp,regb
+	copy regc,pdata
+	imul32 rega,pdata
+	iadd regb,pdata
+vdd_calculate2:
+	idiv rega
+	call wait_div_end
+	quotient pdata	
+	rtn
+
+vdd_calculate1:
+	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
+	isub regb,pdata
+	branch vdd_calculate2
+
+/*	typedef struct
+*	{
+*		uint16 full_vol
+*		uint16 empty_vol
+*		uint16 low_vol
+*		uint16 now_vol
+*	}bat_calculate;
+*/
+//out:	pdata->bat percent
+adc_bat_percent_lowpower_out:
+	ifetch 8,rega
+	store 8,mem_pdatatemp
+	fetch 2,mem_pdatatemp
+	fetcht 2,mem_pdatatemp+2
+	isub temp,rega
+	fetch 2,mem_pdatatemp+6
+	isub temp,regb
+	fetcht 2,mem_pdatatemp+4
+	isub temp,null
+	ncall adc_set_low_power_flag,positive
+	mul32 regb,100,pdata
+	idiv rega
+	call wait_div_end
+	quotient pdata
+	call adc_set_no_power_flag,blank
+	rtn
+adc_set_low_power_flag:
+	fetch 1,mem_adc_power_flag
+	set1 0,pdata
+	store 1,mem_adc_power_flag
+	rtn
+adc_set_no_power_flag:
+	fetcht 1,mem_adc_power_flag
+	set1 1,temp
+	storet 1,mem_adc_power_flag
+	rtn
+
+
+
+/****************************************key scan***************************************/
+keyscan_key_init:
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_key_init_next:
+	rtn blank
+	copy pdata,loopcnt
+//	copy contr,rega
+	fetch 2,mem_keyscan_ptr
+	increase 3,pdata	//mem_key_conf0_pin
+	copy pdata,rega
+keyscan_key_init_lp1:
+	ifetcht 1, rega
+	call gpio_config_input
+	increase KEY_CONF_STRUCT_LEN,rega
+	loop keyscan_key_init_lp1
+keyscan_key_init_end:
+	rtn
+	
+keyscan_scan_key:
+	fetch 2,mem_keyscan_ptr
+	increase 3,pdata	//mem_key_conf0_pin
+	copy pdata,rega
+//	arg mem_key_conf0_pin,rega
+	force 0,regb
+	jam 0,mem_key_value_temp
+keyscan_scan_key_lp1:
+	ifetcht 1, rega
+	call gpio_get_bit
+	bpatchx patch34_1,mem_patch34
+	fetch 2, mem_key_value_temp
+	copy regb,queue
+	qsetflag true,pdata
+	store 2, mem_key_value_temp
+	increase KEY_CONF_STRUCT_LEN,rega
+	increase 1,regb
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_scan_key_lp1_next:
+	ixor regb,null
+	nbranch keyscan_scan_key_lp1,zero
+	fetch 2,mem_key_value_temp
+	fetcht 2,mem_key_value
+	ixor temp,null
+	rtn zero
+	enable user
+	rtn
+
+keyscan_process_lpm_before:
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_process_lpm_before_next:
+	rtn blank
+	copy pdata,loopcnt
+	fetch 2,mem_keyscan_ptr 
+	increase 3,pdata	//mem_key_conf0_pin
+	copy pdata,rega
+keyscan_process_lpm_before_lp1:
+	ifetcht 1, rega
+	call gpio_set_wake_by_current_state
+	increase KEY_CONF_STRUCT_LEN,rega
+	loop keyscan_process_lpm_before_lp1
+keyscan_process_lpm_before_end:
+	rtn
+
+keyscan_key_process:
+	arg key_scan_timer,queue
+	call timer_check
+	nrtn blank
+	setarg 0x20
+	arg key_scan_timer,queue
+	call timer_init
+	disable user
+	call keyscan_process_lpm_before
+	bpatchx patch34_2,mem_patch34
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_key_process_next:
+	rtn blank
+	call keyscan_scan_key
+	nbranch lpm_button_clean_wake_lock,user
+	call lpm_button_get_wake_lock
+	disable user
+	fetch 2, mem_key_value_temp
+	store 2,mem_key_value_temp4
+	jam 0,mem_key_value_temp6
+	force 0,queue
+keyscan_key_lp1:
+	fetch 2, mem_key_value
+	rshift pdata,temp
+	storet 2,mem_key_value
+	and pdata,0x01,pdata
+	fetcht 2, mem_key_value_temp4
+	and temp,0x01,rega
+	rshift temp,temp
+	storet 2,mem_key_value_temp4
+	ixor rega,null
+	ncall keyscan_send_key_data,zero
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_key_lp1_next:
+	fetcht 1, mem_key_value_temp6
+	increase 1,temp
+	storet 1, mem_key_value_temp6
+	copy temp,queue
+	ixor queue,null
+	nbranch keyscan_key_lp1,zero
+	fetch 2,mem_key_value_temp
+	store 2, mem_key_value
+	rtn
+keyscan_send_key_data:
+	bpatchx patch34_3,mem_patch34
+	fetch 2,mem_keyscan_ptr
+	increase 1,pdata
+	ifetch 2,pdata
+	branch callback_func
+
+
+/*************************************pwm*************************************/
+
+//rega:clk select(0:system clk; 1:system clk undivied; 2:lpo)
+/*rega:clk select
+			0x00:select system clock 12M;
+			0x40:select undivied system clock 24M/48M;
+			0x80:select lpo clock:33K
+*/
+pwm_init:
+	hfetch 1,core_clksel
+	ior rega,pdata
+	hstore 1,core_clksel
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_PWM,pdata
+	hstore 2,core_clkoff
+delay_nop100:
+	nop 100
+	rtn
+
+/*	typedef struct
+*	{
+*		uint8 gpio_num
+*		uint8 pwm_channel
+*		uint24 frequency
+*		uint8 duty_cycle   //0-100
+*	}PWM_Style;
+	addr: mem_pdatatemp
+*/
+pwm_out_set:
+	fetcht 3,mem_pdatatemp+2
+	setarg PWM_12MHZ
+	idiv temp
+	call wait_div_end
+	quotient temp
+	fetch 1,mem_pdatatemp+5
+	imul32 temp,pdata
+	div pdata,100
+	call wait_div_end
+	quotient rega
+	copy temp,pdata
+	isub rega,regb	
+	fetch 1,mem_pdatatemp+1
+	call pwm_duty_cycle_set
+	fetch 1,mem_pdatatemp
+	branch pwm_enable
+
+//rega:pcnt ;regb:ncnt ;pdata:pwm channel select
+pwm_duty_cycle_set:
+	beq 0,pwm_pwm0_duty_set
+	beq 1,pwm_pwm1_duty_set
+	beq 2,pwm_pwm2_duty_set
+	beq 3,pwm_pwm3_duty_set
+	beq 4,pwm_pwm4_duty_set
+	beq 5,pwm_pwm5_duty_set
+pwm_pwm0_duty_set:
+	arg core_pwm_pcnt0,contw
+	branch pwm_set_pncnt
+pwm_pwm1_duty_set:
+	arg core_pwm_pcnt1,contw
+	branch pwm_set_pncnt
+pwm_pwm2_duty_set:
+	arg core_pwm_pcnt2,contw
+	branch pwm_set_pncnt
+pwm_pwm3_duty_set:
+	arg core_pwm_pcnt3,contw
+	branch pwm_set_pncnt
+pwm_pwm4_duty_set:
+	arg core_pwm_pcnt4,contw
+	branch pwm_set_pncnt
+pwm_pwm5_duty_set:
+	arg core_pwm_pcnt5,contw
+	branch pwm_set_pncnt
+pwm_set_pncnt:
+	copy rega,pdata
+	istore 2,contw
+	copy regb,pdata
+	istore 2,contw
+	rtn
+
+
+//pdata:gpio select
+pwm_enable:
+	enable user
+	branch pwm_gpio_set
+pwm_disable:
+	disable user
+pwm_gpio_set:
+	beq 4,pwm_gpio4_set
+	beq 5,pwm_gpio5_set
+	beq 27,pwm_gpio27_set
+	beq 28,pwm_gpio28_set
+	beq 3,pwm_gpio3_set
+	beq 8,pwm_gpio8_set
+	beq 20,pwm_gpio20_set
+	beq 21,pwm_gpio21_set
+	beq 22,pwm_gpio22_set
+	beq 23,pwm_gpio23_set
+	rtn
+
+
+pwm_gpio4_set:	//pwm 0
+	arg 6,queue
+	branch pwm_one_set_select
+pwm_gpio5_set:	//pwm 1
+  	arg 7,queue
+	branch pwm_one_set_select
+pwm_gpio27_set:	//pwm 2
+  	arg 8,queue
+	branch pwm_one_set_select
+pwm_gpio28_set:	//pwm 3
+	arg 9,queue
+	branch pwm_one_set_select
+pwm_gpio3_set:	//pwm 4
+ 	arg 10,queue
+	branch pwm_one_set_select
+pwm_gpio8_set:	//pwm 5
+  	arg 11,queue
+	branch pwm_one_set_select
+pwm_gpio20_set:	//pwm 0
+  	arg 12,queue
+	branch pwm_tw0_set_select
+pwm_gpio21_set:	//pwm 1
+  	arg 13,queue
+	branch pwm_tw0_set_select
+pwm_gpio22_set:	//pwm 2
+   	arg 14,queue
+	branch pwm_tw0_set_select
+pwm_gpio23_set:	//pwm 3
+    	arg 15,queue
+	branch pwm_tw0_set_select
+
+pwm_set_select:
+	hfetch 2,core_gpio_sel1
+	qsetflag user,pdata
+	hstore 2,core_gpio_sel1
+	copy rega,queue
+	hfetch 1,core_gpio_key2
+   	qsetflag user,pdata
+   	hstore 1,core_gpio_key2
+	rtn
+
+pwm_one_set_select:
+	add queue,-4,rega
+	branch pwm_set_select
+
+pwm_tw0_set_select:
+	add queue,-10,rega
+	branch pwm_set_select
+
+
+	
+
+rfcomm_init:
+	rtn wake
+	jam 0,mem_rfcomm_send_more_pkt
+	jam BITS9600,memRemoteRPNBitRate        
+	jam DATABITS8,memRemotePRNDataBits      
+	jam 0x11,memRemotePRNXon
+	jam 0x13,memRemotePRNXoff
+	setarg 0
+	store 3,memRemotePRNStopBit
+	store 1,mem_spp_state                  
+	jam 0,memui_reconnect_mode
+	//branch rfcomm_init_spp
+rfcomm_init_spp:
+	bpatchx patch34_4,mem_patch34
+	setarg 0
+	store 1,mem_spp_state
+	store 1,mem_remote_spp_channel
+	store 1,mem_pn_dlci
+	fetch 1,mem_credit_flag
+	beq CREDIT_ENABLE,rfcomm_init_spp_with_credit
+	jam 0x50,mem_credit_given
+	rtn
+
+rfcomm_init_spp_with_credit:
+	jam 0x00,mem_credit_given
+	rtn
+
+set_CR_bit:
+	or_into 0x02,temp
+	rtn
+
+
+/*below added by koufan*/
+
+/*rfcomm_send */
+
+
+
+	/*rfcomm_calculate_FCS_sabm*/
+	/*input: address in temp*/
+	/*output: FCS in pdata  */
+rfcomm_calculate_FCS_sabm:
+	copy temp,pdata
+	reverse pdata,pdata //address
+	store 1,memFCStemp3
+	force INI_TX_SABM,pdata
+	reverse pdata,pdata
+	store 1,memFCStemp2
+	force 0x01,pdata                        
+	reverse pdata,pdata
+	store 1,memFCStemp1
+	call caculate_fcs
+	copy temp,pdata                        
+	rtn
+rfcomm_calculate_FCS_ua:
+	reverse pdata,pdata //address
+	store 1,memFCStemp3
+	force   RSP_TX_UA, pdata
+	reverse pdata, pdata
+	store   1, memFCStemp2
+	force   0x01, pdata
+	reverse pdata, pdata
+	store   1, memFCStemp1
+	branch caculate_fcs
+	/* FCS return from temp                */
+rfcomm_calculate_FCS_dlci0:
+	fetch 1,mem_rfcomm_initiator
+	branch rfcomm_calculate_FCS_dlci0_res,blank
+	setarg 0x70 //FCS of initiator
+	rtn
+rfcomm_calculate_FCS_dlci0_res:
+	setarg 0xaa//FCS of responder
+	rtn
+	
+rfcomm_save_FCS_uih:
+	reverse pdata, pdata //address 
+	store 1,memFCStemp3                     /* contw distroided                    */
+	force RSP_RX_UIH,pdata 
+	call caculate_UIHdata_fcs
+	fetcht 2,mem_contw_temp
+	copy temp,contw
+	istore 1,contw                      /* save FCS for later use              */
+	copy contw,temp
+	storet 2,mem_contw_temp
+	force RSP_RX_UIH_WDATA,pdata             /* P/F =1 + RSP_RX_UIH                 */
+	call caculate_UIHdata_fcs
+	fetcht 2,mem_contw_temp
+	copy temp,contw
+	istore 1,contw             /* save FCS for later use              */
+	rtn	
+/**********************************************************************/
+/* This subroutine caculates the FCS for UIH data                     */
+/* Input:                                                             */
+/*        the address byte at memFCStemp3(bit reversed), control byte */
+/*        at pdata (not bit reversed)                                 */
+/* Output:                                                            */
+/*        pdata: the FCS                                              */
+/**********************************************************************/  
+caculate_UIHdata_fcs:
+	reverse pdata,pdata
+	store   1,memFCStemp2
+	fetch   2, memFCStemp2                     
+	lshift8 pdata,pdata
+	store 3,mem_mod2div_temp
+	arg     0x107,regA
+	arg 0xf,regB
+	call mod2div
+	xor_into     0xd7, pdata
+	invert  pdata,pdata
+	reverse pdata,pdata
+	rtn
+	
+/**********************************************************************/
+/* This subroutine caculates the FCS                                  */
+/* Input:                                                             */
+/*        the address byte at memFCStemp3, control byte at memFCStemp2*/  
+/*        lenght at memFCStemp1 (all above data are bit reversed)     */
+/* Output:                                                            */
+/*        temp: the FCS                                               */
+/**********************************************************************/     
+caculate_fcs:
+	fetch 3, memFCStemp1                    /* load 3 bytes start at memFCStemp1   */
+	store 3,mem_mod2div_temp
+	arg 0x107,regA
+	arg 0xf,regB  //24bit(memFCStemp1+..+memFCStemp3) - 9bit(regA) = 15bit
+	call mod2div
+	lshift8 pdata,pdata 
+	arg 0x7, regB  //16bit(lshift8 pdata,pdata ) - 9bit(regA) = 7bit
+	call mod2div
+	xor_into     0x2b, pdata		//0x3d
+	invert  pdata, pdata                        
+	reverse pdata, pdata                      /* FCS at pdata                        */
+	copy    pdata, temp
+	rtn
+
+mod2div:
+	arg 0,regC
+	copy regB,loopcnt
+	call right_shift_n // right shift pdata (regB)bit
+	icopy temp
+mod2div_loop:
+	//jam 1,0x1fff
+//mod2div_loop1:
+	//fetch 1,0x1fff
+	//nbranch mod2div_loop1,blank
+	copy temp,pdata
+	lshift regC,regC//quotient
+	bbit0 8, mod2div_not_enough_reduction//the high bit of 0x107
+	ixor regA,temp// temp----remainer
+	increase 1,regC// quotient
+mod2div_not_enough_reduction: //Minuend smaller than Subtrahend
+	lshift temp,temp
+	fetch 3,mem_mod2div_temp
+	increase -1,regB
+	compare 0xff,regB,0xff
+	branch mod2div_end,true
+	copy regB,loopcnt
+	call right_shift_n // right shift pdata (regB)bit
+	isolate1 0,pdata
+	setflag true,0,temp //move a new bit from Dividend(queue) into Minuend(pdata)
+	branch mod2div_loop
+mod2div_end:
+	//output:remainer in pdata
+	rshift  temp,pdata
+	rtn
+
+get_rfcomm_snd_adss:
+	fetcht 1,mem_pn_dlci
+dlci_to_address_cmd:
+	//input DLCI from temp
+	lshift2 temp,temp
+	set1 RFCOMM_ADDRESS_EXT_LEN,temp
+	fetch 1,mem_rfcomm_initiator
+	ncall set_CR_bit,blank
+	storet 1,mem_rfcomm_send_adss
+	rtn
+
+channel_to_dlci:
+	//input channel from temp
+	lshift temp,temp
+	fetch 1,mem_rfcomm_initiator
+	setflag blank,0,temp //direction in dlci
+	//output dlci to temp
+	rtn
+rfcomm_rx_process_DLCI0_sabm:
+	fetcht 1,mem_current_channel //address
+	jam 0xd7,mem_current_fcs //FCS
+	call rfcomm_send_ua
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_SABM,pdata
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_UA,pdata
+	store 1,mem_rfcomm_state
+	jam 0,mem_rfcomm_initiator
+	branch rfcomm_rx_process_end
+rfcomm_rx_process_DLCI0_ua:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_UA,pdata
+	store 1,mem_rfcomm_state
+	branch rfcomm_rx_process_end
+
+	
+rfcomm_rx_process:
+	bpatchx patch34_5,mem_patch34
+	fetch 1,memui_reconnect_mode
+	beq NO_RECONNECTION,rfcomm_rx_process_remote_page
+	branch rfcomm_rx_process_reconn
+
+rfcomm_rx_process_remote_page:
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_head_struct
+	fetch 1,mem_current_channel
+	beq 0,parse_dlci0_rp
+	branch parse_uih_rp
+parse_dlci0_rp:
+	bpatchx patch34_6,mem_patch34
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_SABM,rfcomm_rx_process_DLCI0_sabm
+	beq RFCOMM_FRAME_TYPE_UA,rfcomm_rx_process_DLCI0_ua
+	beq RFCOMM_FRAME_TYPE_UIH,parse_DLCI0_rp_uih
+	beq RFCOMM_FRAME_TYPE_DISCONN,parse_uih_rp_spp_disconn_send_event
+	rtn
+
+
+parse_DLCI0_rp_uih:
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_uih_head_struct
+	fetch 1,mem_uih_cmd_type
+	beq UIH_PARAM_NEG_CMD,parse_DLCI0_rp_uih_pn_cmd
+	beq UIH_PARAM_NEG_RES,parse_DLCI0_rp_uih_pn_res
+	beq UIH_MODEM_STATUS_CMD,parse_DLCI0_rp_uih_ms_cmd
+	beq UIH_MODEM_STATUS_RES,parse_DLCI0_rp_uih_ms_res
+	beq UIH_PARAM_CMD_REMOVE_PORT,parse_DLCI0_rp_uih_cmd_port	
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_rp_uih_pn_cmd:
+	call parse_DLCI0_rp_uih_pn_res_common
+
+	branch parse_DLCI0_rp_uih_pn_cmd_spp
+
+parse_DLCI0_rp_uih_pn_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_PN_CMD,pdata
+	set1 RFCOMM_CHANNEL_STATE_PN_RES,pdata
+	store 1,mem_spp_state
+	call rfcomm_send_param_neg_res
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_rp_uih_pn_res:
+	call parse_DLCI0_rp_uih_pn_res_common
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_rp_uih_pn_res_common:
+	call get_param_payload_ptr
+	branch  get_rfcomm_prarmer_negotiation
+
+get_rfcomm_param_modem_status:
+	call get_param_payload_ptr
+	ifetch 1,contr
+	rshift3 pdata,pdata
+	store 1,mem_ms_channel
+	ifetch 1,contr
+	store 1,mem_ms_param
+	rtn
+
+
+get_rfcomm_head_struct:
+	ifetch 1,contr
+	store 1,mem_current_adss
+	rshift3 pdata,pdata
+	store 1,mem_current_channel
+	ifetch 1,contr
+	store 1,mem_current_frame_type
+get_rfcomm_current_length:
+	call get_rfcomm_length_common
+	storet 2,mem_current_length
+	copy contr,pdata
+	store 2,mem_rfcomm_uih_payload_ptr
+	rtn
+
+get_rfcomm_uih_head_struct:
+	ifetch 1,contr
+	rshift pdata,pdata
+	store 1,mem_uih_cmd_type
+	call get_rfcomm_length_common
+	storet 2,mem_uih_length
+	copy contr,pdata
+	store 2,mem_param_payload_ptr
+	rtn
+
+
+get_param_payload_ptr:
+	fetch 2,mem_param_payload_ptr
+	copy pdata,contr
+	rtn
+
+get_rfcomm_length_common:
+	ifetch 1,contr
+	copy pdata,temp
+	rshift temp,temp
+	rtnbit1 0
+	ifetch 1,contr
+	lshift3 pdata,pdata
+	lshift4 pdata,pdata
+	iadd temp,temp
+	rtn
+
+get_rfcomm_prarmer_negotiation:
+	ifetch 1,contr
+	store 1,mem_pn_dlci
+	ifetch 1,contr
+	store 1,mem_pn_credit_flow_type_info
+	ifetch 1,contr
+	store 1,mem_pn_priority
+	ifetch 1,contr
+	store 1,mem_pn_acknowledg_timer
+	ifetch 2,contr
+	store 2,mem_pn_max_frame_size
+	ifetch 1,contr
+	store 1,mem_pn_max_retrans
+	ifetch 1,contr
+	store 1,mem_remote_credits
+	rtn
+
+
+parse_DLCI0_rp_uih_ms_cmd:
+	call get_rfcomm_param_modem_status
+
+	branch parse_DLCI0_rp_uih_ms_cmd_spp
+
+parse_DLCI0_rp_uih_ms_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_CMD,pdata
+	set1 RFCOMM_CHANNEL_STATE_SND_MS_RES,pdata
+	store 1,mem_spp_state
+	fetcht 1,mem_pn_dlci
+	lshift2 temp,temp
+	or_into 3,temp
+	call rfcomm_send_modem_status_res
+	jam MORE_PKT_MSC_CMD_SPP,mem_rfcomm_send_more_pkt
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_rp_uih_ms_res:
+	jam BT_EVT_SPP_CONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	call get_rfcomm_param_modem_status
+	fetch 1,mem_ms_channel
+	sub pdata,1,null
+	branch parse_DLCI0_rp_uih_MS_RES_spp,zero
+	branch assert
+parse_DLCI0_rp_uih_ms_res_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_RES,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_rp_uih_cmd_port:
+	call get_param_payload_ptr
+	ifetch 1,contr
+	store 1,mem_rpn_dlci
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x000e
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	//setarg 5
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch34_7,mem_patch34
+	setarg 0x15ef
+	istore 2,contw
+	setarg 0x1191
+	istore 2,contw
+	//fetch 1,mem_pn_dlci
+	//setarg 0x0b
+	fetch 1,mem_rpn_dlci
+	istore 1,contw //DLCI
+	setarg 0x000007
+	istore 5,contw
+//	setarg 0 //max frame size
+//	istore 2,contw 
+	setarg 0x01 //max retrans
+	istore 2,contw
+//	setarg 0x00
+//	istore 1,contw // init credits
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+
+
+
+parse_uih_rp:
+	branch parse_uih_rp_spp
+
+parse_uih_rp_spp:
+	bpatchx patch35_0,mem_patch35
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_UA,parse_uih_rp_spp_ua
+	beq RFCOMM_FRAME_TYPE_SABM,parse_uih_rp_spp_sabm
+	beq RFCOMM_FRAME_TYPE_UIH,parse_uih_spp_uih
+	beq RFCOMM_FRAME_TYPE_UIH_CREDITS,parse_uih_spp_uih_credits
+	beq RFCOMM_FRAME_TYPE_DISCONN,parse_uih_rp_spp_disconn
+	rtn
+parse_uih_rp_spp_ua:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_UA,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+parse_uih_rp_spp_sabm:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_UA,pdata
+	set1 RFCOMM_CHANNEL_STATE_SABM,pdata
+	store 1,mem_spp_state
+	fetch 1,mem_current_adss
+	call rfcomm_calculate_FCS_ua
+	store 1,mem_current_fcs
+	call rfcomm_send_ua
+	fetch 1,mem_current_adss
+	rshift2 pdata,pdata
+	store 1,mem_pn_dlci
+	lshift2 pdata,pdata
+	set0 RFCOMM_ADDRESS_CR,pdata
+	set1 RFCOMM_ADDRESS_EXT_LEN,pdata 
+	arg mem_HIUfcs_spp,temp // mem_HIUfcs_HF_WCredits in regB++
+	storet 2,mem_contw_temp
+	call rfcomm_save_FCS_uih
+	branch rfcomm_rx_process_end
+	
+parse_uih_spp_uih_credits:
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	increase 1,pdata
+	store 2,mem_rfcomm_uih_payload_ptr
+	ifetch 1,contr //remote credits
+	fetcht 1,mem_remote_credits
+	iadd temp,pdata
+	store 1,mem_remote_credits
+parse_uih_spp_uih:
+	call rfcomm_increase_credit_given
+parse_uih_spp_uih_cont:
+	call get_rfcomm_snd_adss
+	call rfcomm_send_uih_without_payload
+	call spp_process_rx_data
+	branch rfcomm_rx_process_end
+
+parse_uih_rp_spp_disconn_send_event:
+	jam BT_EVT_SPP_DISCONNECTED,mem_fifo_temp
+	call ui_ipc_send_event	
+parse_uih_rp_spp_disconn:
+	call rfcomm_init_spp
+	fetch 1,mem_current_adss
+	call rfcomm_calculate_FCS_ua
+	store 1,mem_current_fcs
+	call rfcomm_send_ua
+	branch rfcomm_rx_process_end
+	
+///////////////////////////////////////////
+///////////////////////////////////////////
+///////////////////////////////////////////
+rfcomm_rx_process_reconn:
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_head_struct
+	fetch 1,mem_current_channel
+	beq 0,parse_DLCI0_reconn
+	branch parse_uih_reconn
+		
+parse_DLCI0_reconn:
+	bpatchx patch35_1,mem_patch35
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_SABM,rfcomm_rx_process_DLCI0_sabm
+	beq RFCOMM_FRAME_TYPE_UA,rfcomm_rx_process_DLCI0_ua
+	beq RFCOMM_FRAME_TYPE_UIH,parse_DLCI0_reconn_uih
+	branch rfcomm_rx_process_end
+parse_DLCI0_reconn_uih:
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_uih_head_struct
+	fetch 1,mem_uih_cmd_type
+	beq UIH_PARAM_NEG_CMD,parse_DLCI0_reconn_uih_pn_cmd
+	beq UIH_PARAM_NEG_RES,parse_DLCI0_reconn_uih_pn_cmd
+	beq UIH_MODEM_STATUS_CMD,parse_DLCI0_reconn_uih_ms_cmd
+	beq UIH_MODEM_STATUS_RES,parse_DLCI0_reconn_uih_ms_res
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_reconn_uih_pn_cmd:
+	call parse_DLCI0_rp_uih_pn_res_common
+	fetch 1,mem_pn_dlci
+	rshift pdata,pdata
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_DLCI0_reconn_uih_pn_cmd_spp,zero
+	branch assert
+parse_DLCI0_reconn_uih_pn_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_PN_RES,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_reconn_uih_ms_cmd:
+	call get_rfcomm_param_modem_status
+	fetch 1,mem_ms_channel
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_DLCI0_reconn_uih_ms_cmd_spp,zero
+	branch assert
+	branch rfcomm_rx_process_end
+parse_DLCI0_reconn_uih_ms_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_CMD,pdata
+	set1 RFCOMM_CHANNEL_STATE_SND_MS_RES,pdata
+	store 1,mem_spp_state
+	fetcht 1,mem_pn_dlci
+	lshift2 temp,temp
+	or_into 3,temp
+	call rfcomm_send_modem_status_res
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_reconn_uih_ms_res:
+	call get_rfcomm_param_modem_status
+	fetch 1,mem_ms_channel
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_DLCI0_reconn_uih_ms_res_spp,zero
+	branch assert
+parse_DLCI0_reconn_uih_ms_res_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_RES,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+
+parse_uih_reconn:
+	fetch 1,mem_current_channel
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_uih_reconn_spp,zero
+	branch assert
+	branch rfcomm_rx_process_end
+
+parse_uih_reconn_spp:
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_UA,parse_uih_reconn_spp_ua
+	beq RFCOMM_FRAME_TYPE_UIH,parse_uih_spp_uih
+	beq RFCOMM_FRAME_TYPE_UIH_CREDITS,parse_uih_spp_uih_credits
+	beq RFCOMM_FRAME_TYPE_DISCONN,parse_uih_reconn_spp_disconn
+parse_uih_reconn_spp_ua:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_UA,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+parse_uih_reconn_spp_sabm:
+	branch parse_uih_reconn_spp_sabm//loop
+parse_uih_reconn_spp_disconn:
+	branch parse_uih_rp_spp_disconn
+rfcomm_rx_process_end:
+	rtn
+	
+rfcomm_send_more_pkt:
+	fetch 1,mem_rfcomm_send_more_pkt
+	rtn blank
+	beq MORE_PKT_MSC_CMD_SPP,rfcomm_send_more_pkt_msc_cmd_spp
+	branch assert
+	
+rfcomm_send_more_pkt_msc_cmd_spp:
+	jam 0,mem_rfcomm_send_more_pkt
+	call l2cap_malloc_rfcomm_channel
+	arg SPP_SLAVE_CHANNEL,temp
+	fetcht 1,mem_pn_dlci
+	lshift2 temp,temp
+rfcomm_send_more_pkt_msc_cmd_spp0:
+	or_into 0x03,temp
+	arg 0xaa,regA
+	call rfcomm_send_modem_status_cmd
+	call l2cap_get_rfcomm_tx_buff
+	copy contw,contr
+	ifetch 2, contr
+	branch assert,blank
+	rtn
+
+rfcomm_send_sabm:
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0004
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_current_adss
+	istore 1,contw //address
+	bpatchx patch35_2,mem_patch35
+	setarg 0x013f
+	istore 2,contw
+	fetch 1,mem_current_fcs
+	istore 1,contw
+	rtn
+rfcomm_send_ua:
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0004
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_current_adss
+	istore 1,contw //address
+	bpatchx patch35_3,mem_patch35
+	setarg 0x0173
+	istore 2,contw
+	fetch 1,mem_current_fcs
+	istore 1,contw
+	rtn
+rfcomm_send_param_neg_cmd:
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x000e
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_4,mem_patch35
+	setarg 0x15ef
+	istore 2,contw
+	setarg 0x1183
+	istore 2,contw
+	copy temp,pdata //DLCI in temp
+	istore 1,contw
+	setarg 0x0000f0
+	istore 3,contw
+	setarg RFCOMM_MAX_FRAME_SIZE
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	setarg 0x01		//change here later
+	istore 1,contw
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	jam 0x10,mem_credit_given
+	rtn
+rfcomm_send_param_neg_res:
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x000e
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_5,mem_patch35
+	setarg 0x15ef
+	istore 2,contw
+	setarg 0x1181
+	istore 2,contw
+	fetch 1,mem_pn_dlci
+	istore 1,contw //DLCI
+	setarg 0x0000e0
+	istore 3,contw
+	fetch 2,mem_rfcomm_max_frame_size
+	istore 2,contw 
+	setarg 0x00 //max retrans
+	istore 1,contw
+	fetch 1,mem_rfcomm_credit_init_data
+	istore 1,contw // init credits
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+rfcomm_send_modem_status_cmd:
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0008
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_6,mem_patch35
+	setarg 0x09ef
+	istore 2,contw
+	setarg 0x05e3
+	istore 2,contw
+	copy temp,pdata //DLCI adress
+	istore 1,contw
+	setarg 0x8d
+	istore 1,contw
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+
+rfcomm_send_modem_status_res:
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0008
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	copy temp,timeup
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_7,mem_patch35
+	setarg 0x09ef
+	istore 2,contw
+	setarg 0x05e1
+	istore 2,contw
+	copy timeup,pdata //DLCI address in temp
+	istore 1,contw
+	setarg 0x8d
+	istore 1,contw
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+
+rfcomm_send_uih_without_payload:
+	bpatchx patch36_0,mem_patch36
+	fetch 1,mem_credit_given
+	rtn blank
+	hfetch 2,core_uart_rxitems
+	nrtn blank
+	copy rega,pdata
+	store 1,mem_pdatatemp+1
+	storet 1,mem_pdatatemp
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x05
+	istore 2,contw
+	fetch 2,mem_RFCOMM_remote_CID
+	istore 2,contw
+	fetch 1,mem_rfcomm_send_adss
+	istore 1,contw
+	setarg 0x01ff
+	istore 2,contw
+	fetch 1,mem_credit_given
+	istore 1,contw
+	fetch 1,mem_HIUfcs_SPP_WCredits
+	istore 1,contw
+	jam 0,mem_credit_given
+	rtn
+	
+rfcomm_increase_credit_given:
+	bpatchx patch36_1,mem_patch36
+	fetch 1,mem_credit_flag
+	rtneq CREDIT_ENABLE
+	fetch 2,mem_current_length
+	rtn blank
+	fetch 1,mem_credit_given
+	increase 1,pdata
+	store 1,mem_credit_given
+	rtn
+
+spp_process_rx_data:
+	fetch 2,mem_cb_receive_spp_data
+	branch callback_func
+
+spp_tx_rfcomm_packet:
+	bpatchx patch36_2,mem_patch36
+	//credit
+	fetch 1,mem_remote_credits
+	rtn blank
+	increase -1,pdata
+	store 1,mem_remote_credits
+	fetch 2,mem_pn_max_frame_size
+	fetcht 2,mem_current_packet_length
+	isub temp,null
+	branch ssp_tx_rfcomm_from_uart,positive
+	store 2,mem_current_packet_length
+ssp_tx_rfcomm_from_uart:
+	fetch 1,mem_credit_given
+	branch ssp_tx_rfcomm_from_uart_without_credit,blank
+	jam 1,mem_rfcomm_send_offset
+	fetch 1,mem_HIUfcs_SPP_WCredits
+	store 1,mem_rfcomm_send_fcs
+	setarg RSP_RX_UIH_WDATA
+	store 1,mem_rfcomm_send_frame_type
+	branch ssp_tx_rfcomm_from_uart_common
+ssp_tx_rfcomm_from_uart_without_credit:
+	jam 0,mem_rfcomm_send_offset
+	fetch 1,mem_HIUfcs_SPP
+	store 1,mem_rfcomm_send_fcs
+	setarg RSP_TX_UIH
+	store 1,mem_rfcomm_send_frame_type
+ssp_tx_rfcomm_from_uart_common:
+	bpatchx patch36_3,mem_patch36
+	fetch 2,mem_current_packet_length
+	sub pdata,127,null
+	branch ssp_tx_rfcomm_from_uart_common0,positive
+	fetch 1,mem_rfcomm_send_offset
+	increase 1,pdata
+	store 1,mem_rfcomm_send_offset
+ssp_tx_rfcomm_from_uart_common0:
+	call get_rfcomm_snd_adss
+	fetch 2,mem_current_packet_length
+	increase 8,pdata	//fcs + rfcommhead + l2caphead == 8
+	fetcht 1,mem_rfcomm_send_offset
+	iadd temp,rega
+	//rfcomm payload
+	call l2cap_malloc
+	store 2,mem_rfcomm_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_rfcomm_tx_payload_ptr
+	copy pdata,contw
+	fetch 1,mem_rfcomm_send_adss
+	istore 1,contw
+	fetch 1,mem_rfcomm_send_frame_type
+	istore 1,contw
+	call ssp_tx_write_length
+	call ssp_tx_write_given_credit
+	bpatchx patch36_4,mem_patch36
+	fetch 2,mem_nl_rx_data_src		//src
+	copy pdata,contru
+	fetch 2,mem_current_packet_length
+	copy pdata,loopcnt
+	call uart_copy_rx_bytes_fast
+	copy contw,temp
+	copy contru,pdata
+	store 2,mem_nl_rx_data_src
+	copy temp,contw	
+	fetch 1,mem_rfcomm_send_fcs
+	istore 1,contw
+	fetch 2,mem_rfcomm_tx_buff_ptr
+	copy pdata,contw
+	fetch 2,mem_current_packet_length
+	fetcht 1,mem_rfcomm_send_offset
+	iadd temp,pdata
+	increase 4,pdata
+	istore 2,contw
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw
+	jam 0,mem_credit_given	//whatever mem_credit_given is set to 0
+	fetch 2,mem_nl_rx_len_all
+	beq 0,module_hci_command_tx_spp_tx_complete
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	rtn
+
+ssp_tx_write_length:
+	bpatchx patch36_5,mem_patch36
+	fetch 2,mem_current_packet_length
+	sub pdata,0x7f,null
+	nbranch ssp_tx_write_long_packet,positive
+	lshift pdata,pdata
+	set1 0,pdata
+	istore 1,contw
+	rtn
+ssp_tx_write_long_packet:
+	fetch 2,mem_current_packet_length
+	rshift3 pdata,pdata
+	rshift4 pdata,temp
+	and_into 0x7f,pdata
+	lshift pdata,pdata
+	set0 0,pdata
+	istore 1,contw
+	istoret 1,contw
+	rtn
+ssp_tx_write_given_credit:
+	fetch 1,mem_credit_given
+	rtn blank
+	istore 1,contw
+	rtn
+
+	
+
+
+scheduler_process:
+	bpatchx patch36_6,mem_patch36
+	call check_51cmd
+	call app_process_bb_event
+	call process_conn_sm
+/* check the connection state sequence byte */
+	bpatchx patch36_7,mem_patch36
+	call sp_calc_sequence
+	call simple_pairing_sequence
+	call master_simple_paring_sequence
+//return if it is hci mode. 'cause the following is host part.
+//notify BB to tx a l2cap packet
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	//for conn to MTK 
+	call l2cap_call_proc_sigal_pending
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	bpatchx patch37_0,mem_patch37
+//to generat a new l2cap packet
+	call process_upper_sm
+	call l2cap_send_config_req
+	call rfcomm_send_more_pkt//use this function to send msc_cmd after msc_rep sent
+scheduler_process0:
+	call scheduler_tx_disconnect_hid //may not used
+	bpatchx patch37_1,mem_patch37
+//	call l2cap_malloc_is_fifo_full
+//	nrtn blank
+	branch app_process_bt
+	
+scheduler_tx_disconnect_hid:
+	fetch 1,mem_CONTROL_tasks		
+	bbit1 L2CAP_DISCONNECT_INTERRUPT,L2CAP_disconnect_interrupt_req
+	bbit1 L2CAP_DISCONNECT_CONTROL,L2CAP_disconnect_control_req
+	rtn
+	
+scheduler_tx_l2cap_pkt:
+	bpatchx patch37_2,mem_patch37
+	call l2cap_malloc_is_fifo_empty
+	rtn blank //empty
+	fetch 1,mem_op
+	rtnbit1 op_txl2cap
+	call l2cap_malloc_fifo_out
+	store 2,mem_txptr
+	copy pdata,contr
+	ifetch 2,contr
+	increase 4,pdata
+	store 2,mem_tx_len
+	jam 6,mem_tx_lch//start pkt
+	bpatchx patch37_3,mem_patch37
+	fetch 2,mem_l2cap_tx_multi_offset
+	branch scheduler_tx_l2cap_start_pkt,blank
+	fetch 1,mem_op
+	rtnbit0 op_pkt_comp
+	set0 op_pkt_comp,pdata
+	store 1,mem_op
+	jam 5,mem_tx_lch//continue pkt
+	fetcht 2,mem_l2cap_tx_multi_offset
+	fetch 2,mem_txptr
+	iadd temp,pdata
+	store 2,mem_txptr
+	fetch 2,mem_tx_len
+	isub temp,pdata
+	store 2,mem_tx_len
+scheduler_tx_l2cap_start_pkt:
+	bpatchx patch37_4,mem_patch37
+	fetch 2,mem_tx_len
+	branch assert,blank
+	arg l2cap_max_pkt_len,temp //max len of dh3 pkt
+	isub temp,pdata
+	nbranch scheduler_Tx_l2cap_last_pkt,positive
+	bpatchx patch37_5,mem_patch37
+	storet 2,mem_tx_len //l2cap_max_pkt_len
+	fetch 2,mem_l2cap_tx_multi_offset
+	iadd temp,pdata
+	store 2,mem_l2cap_tx_multi_offset
+	branch scheduler_Tx_l2cap_pkt_end
+scheduler_Tx_l2cap_last_pkt:
+	setarg 0
+	store 2,mem_l2cap_tx_multi_offset
+scheduler_Tx_l2cap_pkt_end:
+	fetch 1,mem_op
+	set1 op_txl2cap,pdata
+	store 1,mem_op
+	rtn
+
+scheduler_start_upper_sm:
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_HID,scheduler_start_upper_sm_hid
+	jam UPPERSM_RECONN_SDP_CONN,mem_upper_sm_reconn
+	rtn
+scheduler_start_upper_sm_hid:
+	jam UPPERSM_RECONN_HID_CTRL_CONN,mem_upper_sm_reconn
+	rtn
+	
+process_upper_sm:
+	fetch 1,memui_reconnect_mode
+	nbranch process_upper_sm_reconn,blank
+process_upper_sm_remote_page:
+	fetch 1,mem_upper_sm_remote_page
+	//beq UPPERSM_RP_IDLE,process_upper_sm_rp_idle
+	rtn blank
+	//nothing to do when remote page to create a connection.
+	jam 0,mem_upper_sm_remote_page
+process_upper_sm_rp_wait:
+	rtn
+
+
+process_upper_sm_reconn:
+	bpatchx patch37_6,mem_patch37
+	fetch 1,mem_upper_sm_reconn
+	rtn blank
+	beq UPPERSM_RECONN_SDP_CONN,process_upper_sm_reconn_sdp_conn
+	beq UPPERSM_RECONN_SDP_CONN_WAIT,process_upper_sm_reconn_sdp_conn_wait
+	beq UPPERSM_RECONN_SDP_CFG,process_upper_sm_reconn_sdp_cfg
+	beq UPPERSM_RECONN_SDP_CFG_WAIT,process_upper_sm_reconn_sdp_cfg_wait
+	beq UPPERSM_RECONN_SS_SPP,process_upper_sm_reconn_ss_spp
+	beq UPPERSM_RECONN_SS_SPP_WAIT,process_upper_sm_reconn_ss_spp_wait
+	beq UPPERSM_RECONN_SDP_DISCONN,process_upper_sm_reconn_sdp_disconn
+	beq UPPERSM_RECONN_SDP_DISCONN_WAIT,process_upper_sm_reconn_sdp_disconn_wait
+	beq UPPERSM_RECONN_HID_CTRL_CONN,process_upper_sm_reconn_hid_ctrl_conn
+	beq UPPERSM_RECONN_HID_CTRL_CONN_WAIT,process_upper_sm_reconn_hid_ctrl_conn_wait
+	beq UPPERSM_RECONN_HID_CTRL_CFG,process_upper_sm_reconn_hid_ctrl_cfg
+	beq UPPERSM_RECONN_HID_CTRL_CFG_WAIT,process_upper_sm_reconn_hid_ctrl_cfg_wait
+	beq UPPERSM_RECONN_HID_INT_CONN,process_upper_sm_reconn_hid_int_conn
+	beq UPPERSM_RECONN_HID_INT_CONN_WAIT,process_upper_sm_reconn_hid_int_conn_wait
+	beq UPPERSM_RECONN_HID_INT_CFG,process_upper_sm_reconn_hid_int_cfg
+	beq UPPERSM_RECONN_HID_INT_CFG_WAIT,process_upper_sm_reconn_hid_int_cfg_wait
+	beq UPPERSM_RECONN_RFCOMM_CONN,process_upper_sm_reconn_rfcomm_conn
+	beq UPPERSM_RECONN_RFCOMM_CONN_WAIT,process_upper_sm_reconn_rfcomm_conn_wait
+	beq UPPERSM_RECONN_RFCOMM_CFG,process_upper_sm_reconn_rfcomm_cfg
+	beq UPPERSM_RECONN_RFCOMM_CFG_WAIT,process_upper_sm_reconn_rfcomm_cfg_wait
+	beq UPPERSM_RECONN_RFCOMM_SABM,process_upper_sm_reconn_rfcomm_sabm
+	beq UPPERSM_RECONN_RFCOMM_SABM_WAIT,process_upper_sm_reconn_rfcomm_sabm_wait
+	beq UPPERSM_RECONN_SPP_CMD_PN,process_upper_sm_reconn_spp_cmd_pn
+	beq UPPERSM_RECONN_SPP_CMD_PN_WAIT,process_upper_sm_reconn_spp_cmd_pn_wait
+	beq UPPERSM_RECONN_SPP_SABM,process_upper_sm_reconn_spp_sabm
+	beq UPPERSM_RECONN_SPP_SABM_WAIT,process_upper_sm_reconn_spp_sabm_wait
+	beq UPPERSM_RECONN_SPP_CMD_MS,process_upper_sm_reconn_spp_cmd_ms
+	beq UPPERSM_RECONN_SPP_CMD_MS_WAIT,process_upper_sm_reconn_spp_cmd_ms_wait
+process_upper_sm_reconn_wait:
+	rtn
+process_upper_sm_reconn_sdp_conn:
+	call upper_sm_send_sdp_conn //return n-user if sending failed
+	jam UPPERSM_RECONN_SDP_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_sdp_state
+	rtn
+process_upper_sm_reconn_sdp_cfg:
+	jam UPPERSM_RECONN_SDP_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_sdp_state
+	rtnbit1 L2CAP_CHANNEL_STATE_SND_CFG_REQ
+	jam UPPERSM_RECONN_SDP_CFG,mem_upper_sm_reconn
+	call upper_sm_send_sdp_cfg //return n-user if sending failed
+	jam UPPERSM_RECONN_SDP_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_sdp_state
+	rtn
+process_upper_sm_reconn_ss_spp:
+	call l2cap_malloc_is_fifo_empty
+	nrtn blank
+	call upper_sm_send_ss_spp
+	jam UPPERSM_RECONN_SS_SPP_WAIT,mem_upper_sm_reconn
+	rtn
+process_upper_sm_reconn_sdp_disconn:
+	call upper_sm_send_sdp_disconn
+	jam UPPERSM_RECONN_SDP_DISCONN_WAIT,mem_upper_sm_reconn
+	rtn
+process_upper_sm_reconn_hid_ctrl_conn:
+	call upper_sm_send_hid_ctrl_conn
+	jam UPPERSM_RECONN_HID_CTRL_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_hid_control_state
+	rtn
+process_upper_sm_reconn_hid_ctrl_cfg:    
+	call upper_sm_send_hid_ctrl_cfg
+	jam UPPERSM_RECONN_HID_CTRL_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_control_state
+	rtn
+process_upper_sm_reconn_hid_int_conn:
+	call upper_sm_send_hid_int_conn
+	jam UPPERSM_RECONN_HID_INT_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_hid_interrupt_state
+	rtn
+process_upper_sm_reconn_hid_int_cfg:    
+	call upper_sm_send_hid_int_cfg
+	jam UPPERSM_RECONN_HID_INT_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_interrupt_state
+	rtn
+process_upper_sm_reconn_rfcomm_conn:
+	call upper_sm_send_rfcomm_conn
+	jam UPPERSM_RECONN_RFCOMM_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_rfcomm_state
+	rtn
+process_upper_sm_reconn_rfcomm_cfg: 
+	call upper_sm_send_rfcomm_cfg
+	jam UPPERSM_RECONN_RFCOMM_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_rfcomm_state
+	rtn
+process_upper_sm_reconn_rfcomm_sabm:
+	call upper_sm_send_rfcomm_sabm
+	jam UPPERSM_RECONN_RFCOMM_SABM_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_SABM,pdata
+	store 1,mem_rfcomm_state
+	rtn
+process_upper_sm_reconn_spp_cmd_pn: 
+	call upper_sm_send_spp_cmd_pn
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_PN_CMD
+	store 1,mem_spp_state
+	jam UPPERSM_RECONN_SPP_CMD_PN_WAIT,mem_upper_sm_reconn
+	rtn
+process_upper_sm_reconn_spp_sabm:   
+	call upper_sm_send_spp_sabm
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_SABM
+	store 1,mem_spp_state
+	jam UPPERSM_RECONN_SPP_SABM_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_remote_spp_channel //address in pdata
+	lshift3 pdata,pdata
+	or_into 3,pdata
+	arg mem_HIUfcs_SPP,temp // mem_HIUfcs_spp_WCredits in regB++
+	storet 2,mem_contw_temp
+	branch rfcomm_save_FCS_uih
+process_upper_sm_reconn_spp_cmd_ms: 
+	call upper_sm_send_spp_cmd_ms
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_SND_MS_CMD
+	store 1,mem_spp_state
+	jam UPPERSM_RECONN_SPP_CMD_MS_WAIT,mem_upper_sm_reconn
+	rtn
+
+process_upper_sm_reconn_sdp_conn_wait:
+	fetch 1,mem_sdp_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_SDP_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_sdp_cfg_wait:
+	fetch 1,mem_sdp_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	jam UPPERSM_RECONN_SS_SPP ,mem_upper_sm_reconn
+process_upper_sm_reconn_ss_spp_wait:
+	fetch 1,mem_message_to_uppersm
+	rtnne RECIEVE_SS_REASULT_HF
+	jam 0,mem_message_to_uppersm
+	jam UPPERSM_RECONN_SDP_DISCONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_sdp_disconn_wait:
+	fetch 1,mem_sdp_state
+	nrtn blank
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_HID,process_upper_sm_reconn_setup_hid
+	bbit1 support_SPP,process_upper_sm_reconn_setup_rfcomm
+	branch process_upper_sm_reconn_termination
+process_upper_sm_reconn_hid_ctrl_conn_wait:
+	fetch 1,mem_hid_control_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_HID_CTRL_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_hid_ctrl_cfg_wait:
+	fetch 1,mem_hid_control_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	jam UPPERSM_RECONN_HID_INT_CONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_hid_int_conn_wait:  
+	fetch 1,mem_hid_interrupt_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_HID_INT_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_hid_int_cfg_wait:  
+	fetch 1,mem_hid_interrupt_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_SPP,process_upper_sm_reconn_setup_rfcomm
+	branch process_upper_sm_reconn_termination
+process_upper_sm_reconn_rfcomm_conn_wait: 
+	fetch 1,mem_rfcomm_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_RFCOMM_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_rfcomm_cfg_wait:
+	fetch 1,mem_rfcomm_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	jam UPPERSM_RECONN_RFCOMM_SABM,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_rfcomm_sabm_wait:  
+	fetch 1,mem_rfcomm_state
+	rtnne L2CAP_CHANNEL_RFCOMM_DLCI0_OPENED
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_SPP,process_upper_sm_reconn_setup_spp
+	branch process_upper_sm_reconn_termination
+process_upper_sm_reconn_spp_cmd_pn_wait:
+	fetch 1,mem_spp_state
+	rtnbit0 RFCOMM_CHANNEL_STATE_PN_RES
+	jam UPPERSM_RECONN_SPP_SABM,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_spp_sabm_wait:
+	fetch 1,mem_spp_state
+	rtnbit0 RFCOMM_CHANNEL_STATE_UA
+	jam UPPERSM_RECONN_SPP_CMD_MS ,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_spp_cmd_ms_wait: 
+	fetch 1,mem_spp_state
+	rtnne RFCOMM_CHANNEL_SETUP_COMPLETE
+	branch process_upper_sm_reconn_termination
+
+process_upper_sm_reconn_setup_hid:
+	jam UPPERSM_RECONN_HID_CTRL_CONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+
+process_upper_sm_reconn_setup_rfcomm:
+	jam UPPERSM_RECONN_RFCOMM_CONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_setup_spp:
+	jam UPPERSM_RECONN_SPP_CMD_PN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+
+
+
+process_upper_sm_reconn_termination:
+	jam 0,mem_upper_sm_reconn
+	rtn
+upper_sm_send_sdp_conn:
+	bpatchx patch37_7,mem_patch37
+	call l2cap_malloc_signal_channel
+	setarg PSM_SDP
+	copy pdata,temp
+	setarg L2CAP_SDP_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+	
+upper_sm_send_sdp_cfg:
+	bpatchx patch38_0,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_SDP_remote_CID
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+	
+upper_sm_send_sdp_disconn:
+	bpatchx patch38_1,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_SDP_remote_CID
+	copy pdata,temp
+	arg L2CAP_SDP_channel,timeup
+	call ML2CAP_send_signal_disconn_req
+	fetch 1,mem_sdp_state
+	set0 L2CAP_CHANNEL_STATE_RCV_CFG_RES ,pdata
+	store 1,mem_sdp_state
+	rtn
+//service search
+upper_sm_send_ss_spp:
+	bpatchx patch38_2,mem_patch38
+	call l2cap_malloc_sdp_channel
+	call sdp_send_spp_request
+	branch MSDP_send_req_done
+
+upper_sm_send_rfcomm_conn:
+	bpatchx patch38_3,mem_patch38
+	call l2cap_malloc_signal_channel
+	setarg PSM_RFCOMM
+	copy pdata,temp
+	setarg L2CAP_RFCOMM_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+
+upper_sm_send_rfcomm_cfg:
+	bpatchx patch38_4,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_rfcomm_remote_cid
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+
+upper_sm_send_hid_ctrl_conn:
+	bpatchx patch38_5,mem_patch38
+	call l2cap_malloc_signal_channel
+	setarg PSM_HID_control
+	copy pdata,temp
+	setarg L2CAP_HID_Control_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+
+upper_sm_send_hid_ctrl_cfg:
+	bpatchx patch38_6,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_hid_ctrl_remote_cid
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+
+upper_sm_send_hid_int_conn:
+	bpatchx patch38_7,mem_patch38
+	call l2cap_malloc_signal_channel
+	setarg PSM_HID_interrupt
+	copy pdata,temp
+	setarg L2CAP_HID_interrupt_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+	
+upper_sm_send_hid_int_cfg:
+	bpatchx patch39_0,mem_patch39
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_hid_int_remote_cid
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+
+upper_sm_send_rfcomm_sabm:
+	bpatchx patch39_1,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	//force 3,temp //address
+	jam 3,mem_current_adss
+	jam 0x1c,mem_current_fcs
+	call rfcomm_send_sabm
+	jam 1,mem_rfcomm_initiator
+	rtn
+
+upper_sm_send_spp_cmd_pn:
+	bpatchx patch39_2,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	fetcht 1,mem_remote_spp_channel
+	call channel_to_dlci
+	storet 1,mem_pn_dlci
+	branch rfcomm_send_param_neg_cmd
+
+upper_sm_send_spp_sabm:
+	bpatchx patch39_3,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	fetcht 1,mem_pn_dlci
+	call dlci_to_address_cmd
+	call rfcomm_calculate_FCS_sabm //sabm fcs use once only,not need to save
+	store 1,mem_current_fcs
+	fetcht 1,mem_pn_dlci
+	call dlci_to_address_cmd
+	storet 1,mem_current_adss
+	branch rfcomm_send_sabm
+
+upper_sm_send_spp_cmd_ms:
+	bpatchx patch39_4,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	fetcht 1,mem_pn_dlci
+	call dlci_to_address_cmd //address in temp
+	branch rfcomm_send_modem_status_cmd
+
+
+
+/**********************************************************************/
+/* Subroutine: sdp_process                                         */
+/* Process Service Discovery Request                                  */
+/* Called from L2CAP, check PDUID, branch to different req processings*/
+/*                                                                    */  
+/* Input:       mem_L2CAP_Rx_payload                                  */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length	      */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process:
+	bpatchx patch39_5,mem_patch39
+	fetch 2,mem_l2cap_payload_ptr
+	iforce contr
+//	ifetchr regb,1,contr				/* PDUID */
+//	storer regb,1,mem_sdp_pduid
+	ifetch 1,contr
+	copy pdata,regb
+	store 1,mem_sdp_pduid
+	ifetch 2,contr
+	store 2,mem_sdp_transactionid			/* save transaction id */
+	ifetch 1,contr				/* higher byte of parameter length */
+	lshift8 pdata,timeup				
+	ifetch 1,contr				/* lower byte of parameter length */
+	iadd timeup,timeup				/* parameter length stored in "timeup" */
+	bpatchx patch39_6,mem_patch39
+	copy contr,temp
+	arg 4,loopcnt
+	arg mem_sdp_handle_list,contw
+	call memset0
+	copy temp,contr 
+	deposit regb						/* PDUID  */
+	beq SDP_ERROR_RES,sdp_process_error_res
+	beq SDP_SEARCH_REQ,sdp_process_ss_req
+	beq SDP_SEARCH_RES,sdp_process_ss_res
+	beq SDP_ATTRIBUTE_REQ,sdp_process_sa_req
+	beq SDP_ATTRIBUTE_RES,sdp_process_sa_res
+	beq SDP_SEARCHATTRIB_REQ,sdp_process_ssa_req
+	beq SDP_SEARCHATTRIB_RES,sdp_process_ssa_res
+	branch sdp_insufficient_resource
+
+/**********************************************************************/
+/* ss_req			                              */
+/* Processing Service Search Request                                  */
+/* Call: ask_serviceclassid, empty_response                     */
+/*                                                                    */  
+/* Input:       mem_L2CAP_Rx_payload pointer in contr                 */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length	      */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_ss_req:
+	bpatchx patch39_7,mem_patch39
+	call ask_serviceclassid
+	compare 1,temp,0xff
+	branch ss_empty_rsp,true
+	compare 0xff,temp,0xff
+	branch sdp_invalid_request_syntax,true
+
+	ifetch 2,contr				/* max aservice record count */
+	store 2,mem_sdp_record_maxcnt
+	increase -2,timeup
+
+	increase -1,timeup				/* continuation state 1 byte (0) */
+	nbranch sdp_invalid_pdu_size,zero		/* invalid pdu size */
+	arg mem_sdp_uuid_search_ptr,timeup
+	ifetch 2,timeup
+	rtn blank
+	call search_all_uuid
+	call l2cap_get_sdp_tx_payload			/* put the pointer to Tx buffer  */
+	force 3,pdata						/* PDUID 3, Service Search Response */
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid			/* write transaction id */
+	istore 2,contw
+	lshift2 queue,pdata
+	add pdata,5,pdata
+	add pdata,5,regc
+	byteswap pdata,pdata
+	istore 2,contw							/* write parLength */
+	deposit queue
+	byteswap pdata,pdata
+	istore 2,contw							/* write TotSrvRecCount */
+	istore 2,contw							/* write CurSrvRecCount */
+	arg mem_sdp_handle_list,contr
+	copy queue,loopcnt
+	branch ss_req_blank,zero
+ss_req_loop:	
+	ifetch 4,contr
+	istore 4,contw
+	loop ss_req_loop
+ss_req_blank:	
+	force 0,pdata
+	istore 1,contw							/* continuation state */
+	deposit regc
+	store 2,mem_sdp_tx_pkt_length
+//	branch assert,blank
+	rtn
+
+/**********************************************************************/
+/* sa_req			                              */
+/* Processing Service Attribute Request                               */
+/* Call: ask_attributeid, empty_response (if 3 stored attr.     */
+/* not asked) or answer_attributelist                              */  
+/* Input:       mem_L2CAP_Rx_payload pointer in contr                 */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length	      */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_sa_req:
+	bpatchx patch3a_0,mem_patch3a
+	ifetch 4,contr				/* service record handle */
+	store 4,mem_sdp_record_handle	 
+	increase -4,timeup
+	call sdp_store_maxbyte
+	store 2,mem_sdp_attribute_maxbyte
+	increase -2,timeup
+	call dataelementtype6		/* result: data size stored in rega */
+	branch sdp_invalid_request_syntax,zero
+	compare 5,rega,0xff  // length
+	//branch sa_req_all,true
+	branch sa_judge_wholerange,true
+sa_isnot_wholerange:
+	arg mem_sdp_attrib_list,contw
+	force 0,queue
+	branch sa_req_loop
+sa_judge_wholerange:
+	ifetch 1,contr
+	bne SDP_ATTRIBUTE_RANGE,sdp_invalid_request_syntax
+	ifetch 2,contr
+	nbranch sa_judge_wholerange_false1,blank
+	ifetch 1,contr
+	bne 0xff,sa_judge_wholerange_false2
+	ifetch 1,contr
+	bne 0xff,sa_judge_wholerange_false3		//also exist potential bug because mem_sdp_attrib_list length is only 7f
+	branch sa_req_all
+sa_judge_wholerange_false3:
+	increase -5,contr
+	branch sa_isnot_wholerange
+sa_judge_wholerange_false2:
+	increase -4,contr
+	branch sa_isnot_wholerange
+sa_judge_wholerange_false1:
+	increase -3,contr
+	branch sa_isnot_wholerange
+sa_req_loop:	
+	ifetch 1,contr
+	beq SDP_ATTRIBUTE_ID, sa_req_one_id
+	beq SDP_ATTRIBUTE_RANGE, sa_req_range
+sa_req_range:
+	ifetch 2, contr
+	istore 2, contw
+	increase 1,queue
+	byteswap pdata,regb
+	ifetch 2, contr
+	byteswap pdata,pdata
+sa_req_range_id_increase:	
+	increase 1, regb
+	isub regb, null
+	nbranch sa_req_range_id_finish,positive
+	copy pdata, regc
+	byteswap regb,pdata
+	istore 2, contw
+	increase 1,queue
+	copy regc, pdata
+	branch sa_req_range_id_increase
+sa_req_range_id_finish:
+	increase -5,timeup
+	increase -5,rega
+	branch sa_req_check_next_id
+sa_req_one_id:
+	ifetch 2,contr
+	istore 2,contw //save the attribute id in mem_sdp_attrib_list
+	increase 1,queue
+	increase -3,timeup
+	increase -3,rega
+sa_req_check_next_id:	
+	nbranch sdp_invalid_request_syntax,positive
+	nbranch sa_req_loop,zero //another attribute 
+	increase -1,timeup
+	nbranch sdp_invalid_request_syntax,zero
+	
+	call l2cap_get_sdp_tx_payload
+	increase 10,contw
+	arg mem_sdp_attrib_list,rega
+sa_req_handle_attributelist_next:
+	copy queue,pdata
+	branch sa_req_handle_attributelist_end,blank
+	ifetch 2,rega
+	branch sa_req_handle_attributelist_end,blank
+	iforce regb /* regb is the attribute ID */
+	fetch 4,mem_sdp_record_handle	
+	iforce temp
+	call search_handle_attrib
+	copy contr,pdata
+	branch sa_req_handle_attributelist_notfound,blank
+	increase -3,contr
+	ifetch 3,contr
+	istore 3,contw
+	call sdp_data_len
+	iforce loopcnt	
+	call memcpy
+sa_req_handle_attributelist_notfound:
+	increase 2,rega
+	increase -1, queue
+	branch sa_req_handle_attributelist_next
+
+sa_req_handle_attributelist_end:	
+	arg SDP_ATTRIBUTE_RES,rega
+	call ssa_req_range_lastfreg_common
+	fetch 2,mem_sdp_tx_pkt_length	
+	beq 11,sa_empty_rsp
+	branch  ssa_req_range_attrbutes_length_no_continue
+
+
+sdp_store_continue_common:
+	ifetch 1, contr
+	beq 0, sdp_store_continue_0byte
+	beq 1,sdp_store_continue_1byte
+	beq 2, sdp_store_continue_2byte
+sdp_store_continue_0byte:	
+	increase -1,timeup				/* continuation state byte (0) */
+	branch sdp_store_continue_end
+sdp_store_continue_1byte:
+	ifetch 1, contr
+	increase -2,timeup				/* continuation state byte (1) */
+	branch sdp_store_continue_end
+sdp_store_continue_2byte:
+	ifetch 2, contr
+	byteswap pdata,pdata
+	increase -3,timeup				/* continuation state byte (2) */
+sdp_store_continue_end:
+	store 2, mem_sdp_continue_byte	
+	rtn
+	
+sa_req_all:	
+	increase -5,timeup
+	call sdp_store_continue_common
+	nbranch sdp_invalid_pdu_size,zero
+	fetcht 4,mem_sdp_record_handle		
+	call search_handle
+	nbranch sdp_invalid_service_record_handle,zero
+	copy contr,rega
+	call l2cap_get_sdp_tx_payload
+	copy rega,contr
+	increase 3,contw//arg mem_SDP_Tx_payload+3,contw
+	copy contr,timeup //sdp start pointer
+	call sdp_get_data
+	copy pdata, rega //sdp total length
+//	fetchr regb,2,mem_sdp_continue_byte
+	fetch 2,mem_sdp_continue_byte
+	copy pdata,regb
+	copy rega,pdata
+	isub regb,regb //total_length - continue_byte in regb
+	fetch 2, mem_sdp_attribute_maxbyte
+	isub regb, null
+	nbranch sa_req_all_fragment_sdp, positive
+	// the last fragment
+	disable user
+	fetch 2, mem_sdp_continue_byte
+	branch sa_req_all_fisrt_fragment,blank
+	iadd timeup, contr //set the read pointer
+	increase 3,regb //include the total length field, 3 bytes
+	copy regb, loopcnt
+	copy loopcnt, pdata
+	increase 3, pdata
+	byteswap pdata,pdata
+	istore 2, contw
+	copy loopcnt, pdata
+	byteswap pdata,pdata
+	istore 2, contw
+	branch sa_req_all_answer_attributelist_full_loop
+sa_req_all_fisrt_fragment:
+	add rega,6,loopcnt
+	branch sa_req_all_parlength_continue_byte, user
+	byteswap loopcnt,pdata
+	branch sa_req_all_parlength_continue_byte_end
+sa_req_all_parlength_continue_byte:
+	copy loopcnt, pdata
+	increase 2, pdata
+	byteswap pdata,pdata
+sa_req_all_parlength_continue_byte_end:
+	istore 2,contw				/* ParLength */
+	increase -3,loopcnt
+	byteswap loopcnt,pdata			
+	istore 2,contw				/* AttrListByteCount */
+	copy timeup,contr
+	branch sa_req_all_answer_attributelist_full_loop
+sa_req_all_fragment_sdp:
+	enable user
+//	fetchr rega,2,mem_sdp_attribute_maxbyte
+	fetch 2,mem_sdp_attribute_maxbyte
+	copy pdata,rega
+	copy rega,loopcnt
+	fetch 2, mem_sdp_continue_byte
+	branch sa_req_all_fisrt_fragment,blank
+	iadd timeup, contr
+	copy rega,pdata
+	increase 5,pdata
+	byteswap pdata,pdata	
+	istore 2, contw
+	copy rega,pdata
+	byteswap pdata,pdata
+	istore 2, contw
+sa_req_all_answer_attributelist_full_loop:
+	call memcpy
+	nbranch sa_req_all_last_frag_continue, user
+	force 2,pdata
+	istore 1,contw
+	copy contr, pdata
+	isub timeup, pdata
+	byteswap pdata,pdata
+	istore 2, contw   // continuation length
+	branch sa_req_all_frag_end
+sa_req_all_last_frag_continue:
+	force 0,pdata
+	istore 1,contw
+sa_req_all_frag_end:	
+	arg SDP_ATTRIBUTE_RES,rega
+	branch ssa_req_range_common	
+	
+/**********************************************************************/
+/* ssa_req                          		      */
+/* Processing Service Search Attribute Request                        */
+/* Call: ask_serviceclassid, ask_attributeid, empty_response */
+/*       or answer_attributelist                                   */  
+/* Input:       contr                                                 */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length             */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_ssa_req:
+	bpatchx patch3a_1,mem_patch3a
+	call ask_serviceclassid
+	compare 0xff,temp,0xff
+	branch sdp_invalid_request_syntax,true
+	call sdp_store_maxbyte
+	store 2,mem_sdp_attribute_maxbyte
+	increase -2,timeup
+	call dataelementtype6
+	arg mem_sdp_attrib_list,contw
+	force 0,queue
+ssa_req_loop:	
+	ifetch 1,contr 
+	beq SDP_ATTRIBUTE_RANGE,ssa_req_range
+	ifetch 2,contr 
+	istore 2,contw //save the attribute id in mem_sdp_attrib_list
+	increase 1,queue
+	increase -3,timeup
+	increase -3,rega
+	nbranch sdp_invalid_request_syntax,positive
+	nbranch ssa_req_loop,zero
+	increase -1,timeup
+	nbranch sdp_invalid_request_syntax,zero
+	call l2cap_get_sdp_tx_payload
+	increase 13,contw//arg mem_SDP_Tx_payload+13,contw
+	fetch 2,mem_sdp_uuid_search_ptr
+	iforce regc
+	arg mem_sdp_attrib_list,rega
+ssa_req_attributelist_next:	
+	ifetch 2,rega
+	branch ssa_req_attributelist_end,blank
+	iforce regb						/* regb is the attribute ID */
+	call search_attrib
+	branch ssa_req_attributelist_notfound,blank
+	increase -3,contr
+	ifetch 3,contr
+	istore 3,contw
+	call sdp_data_len
+	iforce loopcnt	
+  	call memcpy
+ssa_req_attributelist_notfound:
+	increase 2,rega
+	branch ssa_req_attributelist_next
+
+ssa_req_attributelist_end:
+	call ssa_req_range_lastfreg
+	fetch 2,mem_sdp_tx_pkt_length	
+	beq 14,ssa_empty_rsp
+	call ssa_req_range_attrbutes_length_no_continue
+	branch ssa_req_range_attrbutes_length_no_continue
+
+
+sdp_store_maxbyte:	
+	ifetch 2,contr				 
+	byteswap pdata,pdata
+	increase -3,pdata	
+	arg 200,temp
+	isub temp,null
+	nrtn positive
+	setarg 200
+	rtn
+	
+
+ssa_req_range:
+	increase 4,contr
+	increase -5,timeup
+	increase -5,rega
+	nbranch sdp_invalid_request_syntax,zero
+	call 	sdp_store_continue_common
+	nbranch sdp_invalid_pdu_size,zero
+	arg mem_sdp_uuid_search_ptr,timeup
+	call search_all_uuid  
+	deposit queue
+	branch ssa_empty_rsp,blank
+	store 1,mem_handle_humber
+//	storer regb,2,mem_sdp_all_length
+	copy regb,pdata
+	store 2,mem_sdp_all_length
+	arg 0,queue
+	arg 0,rega
+	call l2cap_get_sdp_tx_payload
+	increase 10,contw 
+ssa_req_range_find_handle:
+	call ssa_req_range_get_length	
+	nbranch assert,user
+	copy contr,timeup
+	copy pdata,regc
+	iadd rega,rega
+//	copy pdata,rega 
+//	fetch 2,mem_sdp_all_length
+	fetch 2,mem_sdp_continue_byte
+	copy pdata,regb
+	branch ssa_req_range_first_freg,blank
+ssa_req_range_later_freg_with_continue:
+	copy rega,pdata
+	isub regb,regb //total_length - continue_byte in rega
+	branch ssa_req_range_next_handle,zero
+	nbranch ssa_req_range_next_handle,positive
+	fetch 2, mem_sdp_attribute_maxbyte
+	isub regb, null
+	branch ssa_req_range_maxbyte_with_continue,zero
+	nbranch ssa_req_range_maxbyte_with_continue, positive  
+	
+ // data length < =maxbyte 
+ssa_req_range_send_not_maxbyte:
+ 	copy regb,loopcnt
+	call ssa_req_range_maxbyte_with_continue_cpy
+ 	fetch 1,mem_handle_humber
+	increase 1,queue
+	isub queue,null
+	branch ssa_req_range_lastfreg,zero
+	branch ssa_req_range_freg_with_continue
+	
+ssa_req_range_maxbyte_with_continue:
+ 	copy pdata,loopcnt
+ 	call ssa_req_range_maxbyte_with_continue_cpy
+ 	branch ssa_req_range_freg_with_continue
+ 	
+ssa_req_range_maxbyte_with_continue_cpy:
+	increase -3,contw   
+	copy loopcnt,temp
+ 	copy regc,pdata
+	isub regb,pdata
+	iadd timeup,contr
+ 	branch memcpy
+
+ssa_req_range_next_handle:
+	fetch 1,mem_handle_humber
+	increase 1,queue
+	isub queue,null
+	rtn zero //
+	branch ssa_req_range_find_handle
+
+ssa_req_range_get_length:	
+	call disable_user
+	arg mem_sdp_handle_list,contr
+	lshift2 queue,pdata
+	iadd contr,contr
+	ifetcht 4, contr
+	call search_handle
+	nrtn zero
+	call sdp_data_len
+	branch enable_user
+
+ssa_req_range_first_freg:
+	fetch 2, mem_sdp_attribute_maxbyte
+	isub rega, null
+	nbranch ssa_req_range_firstfreg_maxbyte_with_continue,positive
+	copy rega,loopcnt
+	copy loopcnt,temp
+	copy timeup,contr
+	call memcpy
+	fetch 2,mem_sdp_all_length
+	isub rega,null
+	branch ssa_req_range_freg_no_continue,zero
+ssa_req_range_firstfreg_not_maxbyte_with_continue:
+	call ssa_req_range_freg_with_continue
+	branch ssa_req_range_attrbutes_length
+	
+ssa_req_range_freg_no_continue:
+	call ssa_req_range_lastfreg
+	branch ssa_req_range_attrbutes_length
+	
+ssa_req_range_lastfreg:
+	arg SDP_SEARCHATTRIB_RES,rega  //PUD ID
+ssa_req_range_lastfreg_common:
+	force 0,pdata
+	istore 1,contw
+	call ssa_req_range_common
+	fetcht 2,mem_sdp_tx_pkt_length
+	increase -5,temp
+	byteswap temp,pdata
+	istore 2, contw
+	increase -3,temp
+	byteswap temp,pdata
+	istore 2, contw  //attribute length
+	rtn
+
+ssa_req_range_firstfreg_maxbyte_with_continue:
+	copy pdata,loopcnt
+	copy loopcnt,temp
+	copy timeup,contr
+	call memcpy
+	call ssa_req_range_freg_with_continue
+ssa_req_range_attrbutes_length:	
+	setarg 0x36
+	istore 1,contw
+	fetch 2,mem_sdp_all_length
+	byteswap pdata,pdata
+	istore 2, contw 
+	rtn	
+
+ssa_req_range_attrbutes_length_no_continue:	
+	setarg 0x36
+	istore 1,contw
+	increase -3,temp
+	byteswap temp,pdata
+	istore 2, contw 
+	rtn	
+
+ssa_req_range_freg_with_continue:
+	arg SDP_SEARCHATTRIB_RES,rega  //PUD ID
+	setarg 2
+	istore 1,contw	
+	fetch 2,mem_sdp_continue_byte
+	iadd temp,temp
+	byteswap temp,pdata
+	istore 2,contw
+	call ssa_req_range_common
+	fetcht 2,mem_sdp_tx_pkt_length
+	increase -5,temp
+	byteswap temp,pdata
+	istore 2, contw
+	increase -5,temp
+	byteswap temp,pdata
+	istore 2, contw 
+	rtn	
+
+ssa_req_range_common:
+	fetch 2,mem_sdp_tx_payload_ptr
+	isub contw,pdata
+	sub pdata,0,pdata
+	store 2,mem_sdp_tx_pkt_length
+	call l2cap_get_sdp_tx_payload 
+	copy rega,pdata  //PUD ID
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid
+	istore 2,contw
+	rtn
+
+
+
+
+/**********************************************************************/
+/* ssa_res			                      */
+/* Processing Service Search Attribute Response                       */
+/* Call: dataelementtype6, attribute_reading                    */
+/* Input:       contr                                                 */
+/* Output:      mem_sdp_record_handle,mem_sdp_search_failed           */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_ssa_res:
+sdp_process_ss_res:
+sdp_process_sa_res:
+sdp_process_error_res:
+	rtn
+/*
+sdp_process_ss_res:
+	bpatchx patch3a_2,mem_patch3a
+	ifetch 2,contr
+	ifetch 2,contr
+	byteswap pdata,pdata
+	bne 1,assert
+	ifetch 4,contr
+	store 4,mem_sdp_record_handle
+	fetchr regc,2,mem_sdp_l2capch_ptr
+	add regc,offset_lc_state,regc
+	ifetch 1,regc
+	set1 L2CAP_CHANNEL_STATE_RECV_SEARCH_RES,pdata
+	istore 1,regc
+	rtn
+	
+sdp_process_sa_res:
+	bpatchx patch3a_3,mem_patch3a
+	fetchr regc,2,mem_sdp_l2capch_ptr
+	add regc,offset_lc_state,regc
+	ifetch 1,regc
+	set1 L2CAP_CHANNEL_STATE_RECV_ATTRIB_RES,pdata
+	istore 1,regc
+	copy temp,contr
+	ifetch 2,contr
+	call search_rfcomm_cn
+	store 1,mem_profile_channel	
+	rtn
+*/
+
+				    
+
+sdp_invalid_service_record_handle:		
+	setarg 0x0200
+	store 2,mem_sdp_error_code
+	branch sdp_error_response
+sdp_invalid_pdu_size:				
+	setarg 0x0400
+	store 2,mem_sdp_error_code
+	branch sdp_error_response
+sdp_insufficient_resource:			
+	setarg 0x0600
+	store 2,mem_sdp_error_code
+	branch sdp_error_response
+sdp_invalid_request_syntax:			
+	setarg 0x0300
+	store 2,mem_sdp_error_code
+sdp_error_response:	
+	call l2cap_get_sdp_tx_payload
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid			
+	istore 2,contw
+	setarg 0x0200					
+	istore 2,contw
+	fetch 2,mem_sdp_error_code			
+	istore 2,contw
+	jam  7,mem_sdp_tx_pkt_length
+	rtn
+
+
+//store uuid in mem_sdp_uuid_search_ptr,
+//return temp 0xff if wrong 
+ask_serviceclassid:  
+	arg 0,regb
+	force 0,temp					/* use "temp" to mark syntax error or to mark 128 bit uuid */
+	arg mem_sdp_uuid_search_ptr,contw
+	call dataelementtype6
+	branch asksrv_error,zero
+classidloop:
+	increase 1,regb
+	ifetch 1,contr
+	increase -1,rega
+	increase -1,timeup
+	compare 0x18,pdata,0xf8			/* 5 MSB: b00011: uuid */
+	nbranch asksrv_error,true
+	compare 0x04,pdata,0x07			/* 3 LSB: b100 128 bits uuid */
+	nbranch cmp032,true
+	force 1,temp					/* mark it as 128 bit uuid */
+skip2bytes:
+	ifetch 1,contr
+	increase -1,rega	
+	increase -1,timeup
+	bne 0x00, frstbwrong
+	ifetch 1,contr
+	increase -1,rega	
+	increase -1,timeup
+	beq 0x00, cmpuuid
+	branch scndbwrong
+frstbwrong:  
+	increase 1,contr
+	increase -1,rega	
+	increase -1,timeup
+scndbwrong:  
+	increase 2,contr				/* skip 2 bytes, first 2 bytes already wrong */
+	increase -2,rega	
+	increase -2,timeup
+	compare 0x00,temp,0xff                        /* 128 bits or 32 bits ? */
+	branch loopornot,true
+	increase 12,contr				/* skip 12 bytes, first 2 bytes already wrong */
+	increase -12,rega	
+	increase -12,timeup
+	branch loopornot
+cmp032:
+	compare 0x02,pdata,0x07			/* 3 LSB: b010 32 bits uuid */
+	nbranch cmp016,true
+	branch skip2bytes			
+cmp016:
+	compare 0x01,pdata,0x07			/* 3 LSB: b001 16 bit uuid */
+	nbranch asksrv_error,true
+cmpuuid:
+	increase -2,rega
+	increase -2,timeup
+	ifetch 2,contr				/* higher order byte */
+	sub regb,4,null
+	branch uuidsize,zero //max store uuids =3 
+	istore 2,contw
+uuidsize:
+	compare 0x00,temp,0xff			/* is this 128 bits uuid */
+	branch loopornot,true
+	copy contr,temp
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x10, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x80, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x80, wrong12b
+	ifetch 1,contr
+	bne 0x5f, wrong12b
+	ifetch 1,contr
+	bne 0x9b, wrong12b
+	ifetch 1,contr
+	bne 0x34, wrong12b
+	ifetch 1,contr
+	beq 0xfb, chck12dn
+wrong12b:
+	copy temp,contr  
+wrong12b1:
+	increase 12,contr				/* skip 12 bytes */
+	force 0x00,queue
+	force 0x00,temp
+	branch chck12dn
+
+chck12dn:
+	increase -12,timeup
+	increase -12,rega
+loopornot:
+	force 0x00,temp
+	compare 0x00,rega,0xff
+	nbranch classidloop,true
+	force 0,pdata
+	istore 2,contw			/* end list with null */
+	rtn
+asksrv_error:
+	arg 0xff,temp
+	rtn
+
+/**********************************************************************/
+/* Subroutine: dataelementtype6                                    */
+/* Parse Data Element Sequence, obtain the data size                  */
+/* Input:  SDP Rx Buf Pointer in contr, parameter count in timeup     */
+/* Output: data length in rega, data pointer in contr             */
+/*         and  parameter count in timeup, return with zero flag set: */
+/*         syntax error                                               */
+/**********************************************************************/     
+dataelementtype6:
+	bpatchx patch3a_4,mem_patch3a
+	ifetch 1,contr
+	increase -1,timeup
+	compare 0x30,pdata,0xf8			/* 5 MSB: b00110: type 6 */
+	nbranch dsize_error,true
+	compare 0x07,pdata,0x07			/* 3 LSB: b111: 32 bits */
+	branch dsize32,true
+	compare 0x06,pdata,0x07			/* 3 LSB: b110: 16 bits */
+	branch dsize16,true
+	compare 0x05,pdata,0x07			/* 3 LSB: b101: 8 bits */
+	nbranch dsize_error,true
+//	ifetchr rega,1,contr				/* data length in reg A */
+	ifetch 1,contr
+	copy pdata,rega
+	increase -1,timeup
+	branch dsize
+dsize32:
+	increase 2,contr				 
+	increase -2,timeup
+dsize16:
+	ifetch 2,contr
+	byteswap pdata,rega
+	increase -2,timeup
+dsize:
+	force 0x01,pdata
+	rtn
+dsize_error:
+	force 0x00,pdata
+	rtn
+
+/**********************************************************************/
+/* Subroutine: sa_empty_rsp                                      */
+/* Send empty response                                                */
+/*                                                                    */
+/* Input:       mem_sdp_pduid, mem_sdp_transactionid                  */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length             */
+/*                                                                    */
+/**********************************************************************/     
+ss_empty_rsp:
+	setarg SDP_SEARCH_RES
+	store 1, mem_sdp_pduid
+	branch empty_response
+sa_empty_rsp:
+	setarg SDP_ATTRIBUTE_RES
+	store 1, mem_sdp_pduid
+	branch empty_response
+ssa_empty_rsp:
+	setarg SDP_SEARCHATTRIB_RES
+	store 1, mem_sdp_pduid
+empty_response:
+	call l2cap_get_sdp_tx_payload			/* empty attribute list */
+//	fetchr regb,1,mem_sdp_pduid				/* PDUID */
+//	istorer regb,1,contw
+	fetch 1,mem_sdp_pduid
+	copy pdata,regb
+	istore 1,contw 
+	fetch 2,mem_sdp_transactionid			/* copy back transaction id */
+	istore 2,contw
+	setarg 0x0500
+	istore 2, contw
+	compare SDP_ATTRIBUTE_RES,regb,0xff			 
+	branch fullsearch,true
+	compare SDP_SEARCHATTRIB_RES,regb,0xff			 
+	branch fullsearch,true
+	setarg 0x000000
+	istore 5,contw
+	branch outempty
+
+fullsearch:					/* pduid must be 5 or 7 */
+	setarg 0x350200
+	istore 5,contw
+outempty:
+	jam 10,mem_sdp_tx_pkt_length
+	rtn
+
+//return length in pdata(whole element ,include header and data ), contr not change
+sdp_data_len:
+	call store_contw
+	call store_contr
+	call sdp_get_data
+	call get_contw
+	call get_contr
+	copy temp,pdata
+	rtn
+
+//return data length in pdata, contr is data pionter,return length in temp(whole element ,include header and data )
+sdp_get_data:
+	ifetch 1,contr
+	and pdata,0x7,loopcnt
+	rshift3 pdata,pdata
+	bne 0,sdp_get_data_type_not0
+sdp_get_data_type0:	
+	force 1,pdata
+	force 1,temp
+	rtn
+	
+sdp_get_data_type_not0_sizeindex01234:
+	call left_shift_n
+	add pdata,1,temp  //add header length
+	rtn
+sdp_get_data_type_not0:
+	deposit loopcnt
+	sub pdata,4,null
+	branch sdp_get_data_type_not0_sizeindex01234,positive
+	beq 5,sdp_get_data_type_not0_sizeindex5
+	beq 6,sdp_get_data_type_not0_sizeindex6
+	beq 7,sdp_get_data_type_not0_sizeindex7
+	rtn
+	
+sdp_get_data_type_not0_sizeindex5:
+	ifetch 1,contr
+	add pdata,2,temp  //add header length
+	rtn
+sdp_get_data_type_not0_sizeindex6:
+	ifetch 2,contr
+	byteswap pdata,pdata
+	add pdata,3,temp  //add header length
+	rtn
+sdp_get_data_type_not0_sizeindex7:
+	ifetch 2,contr	
+	byteswap pdata,pdata
+	ifetcht 2,contr	
+	byteswap temp,temp
+	lshift16 temp,temp
+	iadd temp,pdata
+	add pdata,5,temp  //add header length
+	rtn
+
+/* find with uuids
+input uuids pionter in timeup
+return handles in mem_sdp_handle_list; handles number in queue if found 
+return regb all length*/
+search_all_uuid:
+	bpatchx patch3a_5,mem_patch3a
+	force 0,queue
+	arg 0,regb
+	arg mem_sdp_handle_list,contw
+search_all_uuid_llop:
+	ifetch 2,timeup
+ 	rtn blank
+	call search_uuid
+	copy queue,pdata
+	rtneq SDP_MAX_HANDLE_NUMBER 
+	increase 2,timeup
+ 	branch search_all_uuid_llop
+	
+search_uuid:
+//	arg 0,regb
+	iforce regc
+//	force 0,queue
+	fetch 2, mem_ui_uuid_table
+	iforce contr
+search_uuid_next:
+	copy queue,pdata
+	rtneq SDP_MAX_HANDLE_NUMBER   
+	disable user
+	ifetch 1,contr
+	rtn blank
+	iforce loopcnt
+search_uuid_loop:	
+	ifetch 2,contr
+	isub regc,null
+	nbranch search_uuid_not_found,zero
+	enable user					// uuid match
+search_uuid_not_found:
+	loop search_uuid_loop
+	ifetcht 4,contr					// get handle 
+	copy contr,rega
+	nbranch search_uuid_nomatch,user
+	arg mem_sdp_handle_list,contr
+	arg SDP_MAX_HANDLE_NUMBER,loopcnt 
+search_uuid_check_same_handle:
+	ifetch 4,contr
+	branch search_uuid_store_handle,blank
+	isub temp,null
+	branch search_uuid_nomatch,zero
+	loop search_uuid_check_same_handle
+	rtn 
+search_uuid_store_handle:
+	istoret 4,contw
+	increase 1,queue
+	copy rega,contr
+	call sdp_data_len
+	iadd regb,regb
+	iadd contr,contr		 
+	branch search_uuid_next
+search_uuid_nomatch:	
+	copy rega,contr
+	call sdp_get_data
+	iadd contr,contr			// next paragraph 
+	branch search_uuid_next
+
+/* temp is handle,
+return zero  if found
+return data pointer in contr 
+*/
+search_handle:
+	bpatchx patch3a_6,mem_patch3a
+	fetch 2,mem_ui_uuid_table
+	iforce contr
+search_handle_loop:	
+	ifetch 1,contr
+	branch disable_zero,blank
+	lshift pdata,pdata
+	iadd contr,contr
+	ifetch 4,contr
+	isub temp,null
+	rtn zero
+	deposit contw
+	store 2,mem_contw
+	storet 8,mem_temp
+	call sdp_get_data
+	iadd contr,contr
+	copy contr,pdata
+	fetcht 2,mem_contw
+	copy temp,contw
+	fetcht 8,mem_temp
+	copy pdata,contr
+	branch search_handle_loop
+
+/**
+* input regb and regc.regb is the attribute ID and regc is UUID.
+* set contr if find attribute or 0 if not
+*/
+search_attrib:
+	bpatchx patch3a_7,mem_patch3a
+	fetch 2,mem_ui_uuid_table
+	iforce contr
+search_attrib_next:
+	ifetch 1,contr
+	branch search_attrib_end, blank
+	iforce loopcnt
+search_attrib_loop:	
+	ifetch 2,contr
+	isub regc,null						/* regc is UUID, compare it */
+	branch search_attrib_found_uuid,zero
+	loop search_attrib_loop
+	increase 4,contr
+	call sdp_get_data
+	iadd contr,contr			/* next paragraph */
+	branch search_attrib_next	
+search_attrib_found_uuid:
+	increase -1,loopcnt
+	lshift loopcnt,pdata
+	iadd contr,contr
+	increase 4,contr
+	call sdp_get_data
+	iadd contr,timeup					/* attribute list end */
+search_attrib_loop_attribs:	
+	increase 1,contr
+	ifetch 2,contr
+	isub regb,null
+	//force 0x1,pdata,zero
+//	setflag zero, 0,pdata
+//	copy timeup, timeup
+	branch disable_blank,zero			/* attribute found */
+	call sdp_data_len
+	iadd contr,contr
+	deposit timeup
+	isub contr,null
+	branch search_attrib_end, zero /*attribute end, not found the attribute, return contr = 0*/
+	branch search_attrib_loop_attribs	
+search_attrib_end:
+	force 0,contr
+	force 0,pdata
+	rtn
+	
+
+//search the attribute according the record handle
+//record handle in temp, attribute in regb
+//set the contr to zero if not found
+search_handle_attrib:	
+	bpatchx patch3b_0,mem_patch3b
+	fetch 2,mem_ui_uuid_table
+	iforce contr
+search_handle_attrib_next:
+	ifetch 1,contr
+	branch search_handle_attrib_end, blank
+	lshift pdata,pdata
+	iadd contr, contr
+	ifetch 4,contr
+	isub temp,null						/* regc is UUID, compare it */
+	branch search_handl_attrib_found_handle,zero
+	call sdp_get_data
+	iadd contr,contr			/* next paragraph */
+	branch search_handle_attrib_next	
+search_handl_attrib_found_handle:
+	call sdp_get_data
+	iadd contr,timeup					/* attribute list end */
+search_handle_attrib_loop_attribs:	
+	increase 1,contr
+	ifetch 2,contr
+	isub regb,null
+	rtn zero							/* attribute found */
+	call sdp_data_len
+	iadd contr,contr
+	deposit timeup
+	isub contr,null
+	branch search_handle_attrib_end, zero /*attribute end, not found the attribute, return contr = 0*/
+	branch search_handle_attrib_loop_attribs
+search_handle_attrib_end:
+	force 0,contr
+	rtn	
+
+
+//enable user if find rfcomm channel number, pdata is channel number
+search_rfcomm_cn:
+	arg 0x0400,regb  // attribute protocol edscriptor list
+	call search_handl_attrib_found_handle
+	arg 0x0300,regb  // uuid rfcomm
+	call search_uuid_in_data
+	nrtn user
+	sub rega,3,null
+	branch disable_user,positive
+	ifetch 1,contr
+	bne 0x08,disable_user
+	ifetch 1,contr
+	rtn
+	
+ //input timeup is lenth
+ //input contr is data ptr
+ //return contr is end of uuid; enable user if found uuid
+search_uuid_in_data:
+	bpatchx patch3b_1,mem_patch3b
+	call sdp_get_data
+	copy pdata,rega
+search_uuid_in_data_loop:	
+	ifetch 1,contr
+	and pdata,0x7,loopcnt
+	rshift3 pdata,pdata
+	sub pdata,3,null
+	branch search_uuid_in_data_found_uuid,zero
+	copy loopcnt,pdata
+	beq 5,search_uuid_in_data_found_element_index5
+	beq 6,search_uuid_in_data_found_element_index6
+	beq 7,search_uuid_in_data_found_element_index7
+	increase -1,contr
+	call sdp_get_data
+	iadd contr,contr
+	copy rega,pdata
+	isub temp,rega
+	branch disable_user,zero
+	branch search_uuid_in_data_loop
+	
+search_uuid_in_data_found_element_index5:
+	increase -2,rega
+	increase 1,contr
+	branch search_uuid_in_data_loop
+search_uuid_in_data_found_element_index6:
+	increase -3,rega
+	increase 2,contr
+	branch search_uuid_in_data_loop
+search_uuid_in_data_found_element_index7:
+	increase -5,rega
+	increase 4,contr
+	branch search_uuid_in_data_loop		
+	
+search_uuid_in_data_found_uuid:
+	increase -1,rega
+	copy loopcnt,pdata
+	beq 1,search_uuid_in_data_type_uuid_16
+	beq 2,search_uuid_in_data_type_uuid_32
+	beq 4,search_uuid_in_data_type_uuid_128
+	branch disable_user 
+search_uuid_in_data_type_uuid_128:
+	increase -12,rega
+search_uuid_in_data_type_uuid_32:
+	ifetch 2,contr
+	increase -2,rega
+search_uuid_in_data_type_uuid_16:
+	ifetch 2,contr
+	isub regb,null
+	branch enable_user,zero
+	increase -2,rega
+	branch disable_user,zero
+	branch search_uuid_in_data_loop
+
+/*
+//rega:l2cap len ,mem_search_uuid:uuid to search
+sdp_send_search_req:
+	call l2cap_malloc_sdp_req
+	setarg SDP_SEARCH_REQ
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid_local
+	byteswap pdata,pdata
+	istore 2,contw
+	increase -5,rega
+	byteswap rega,rega
+	//istorer rega,2,contw
+	copy rega,pdata
+	istore 2,contw
+	setarg 0x0335
+	istore 2,contw
+	setarg 0x19
+	istore 1,contw
+	fetch 2,mem_search_uuid
+	istore 2,contw
+	setarg 0x0008
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	rtn
+
+//rega:l2cap len
+sdp_send_attribute_req:
+	call l2cap_malloc_sdp_req
+	setarg SDP_ATTRIBUTE_REQ
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid_local
+	byteswap pdata,pdata
+	istore 2,contw
+	increase -5,rega
+	byteswap rega,rega
+//	istorer rega,2,contw
+	copy rega,pdata
+	istore 2,contw
+	fetch 4,mem_sdp_record_handle
+	istore 4,contw
+	setarg 0x2c01
+	istore 2,contw
+	setarg 0x0535
+	istore 2,contw
+	setarg 0x0a
+	istore 1,contw
+	setarg 0
+	istore 2,contw
+	setarg -1
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	rtn
+*/	
+	
+
+sdp_send_spp_request:
+	call l2cap_get_sdp_tx_payload
+	copy pdata,contw
+	setarg 6//Search Attr Req
+	istore 1,contw
+	setarg sdp_tid_spp					
+	istore 2,contw
+	setarg 0x0f00 //length15
+	istore 2,contw
+	setarg 0x1a0535
+	istore 3,contw
+	setarg 0x0111
+	lshift16 pdata,pdata //UUID
+	istore 4,contw
+	setarg 0x2600 //max return len
+	istore 2,contw
+	setarg 0x0335
+	istore 2,contw
+	setarg 0x0009
+	istore 2,contw
+	setarg 0x0004
+	istore 2,contw
+	jam 0x14,mem_sdp_tx_pkt_length
+	rtn
+
+
+	
+function_g2:
+	bpatchx patch3b_2,mem_patch3b
+	jam 80,mem_AES_CMAC_data_length
+	arg memdat,contw
+	arg mem_le_srand,contr
+	call memcpy16
+	arg mem_le_pubkey_local_x_256,contr
+	call memcpy32
+	arg mem_le_pubkey_remote_x_256,contr
+	call memcpy32
+	call inverse_memdat	
+	arg mem_le_mrand,contr
+	call store_inverse_k	
+	call function_AES_CMAC	
+
+	arg mem_AES_CMAC_temp,contw
+	call load_inverse_result
+	setarg 1000000
+	copy pdata,rega
+	fetch 4,mem_AES_CMAC_temp
+	idiv rega
+	call wait_div_end
+	remainder pdata
+	store 4,mem_gkey
+//call ice_break
+	rtn
+
+function_f6_eb:
+	jam 65,mem_AES_CMAC_data_length
+	arg memdat,contw
+	call store_addr_common_a
+	call store_addr_common_b
+	fetch 3,mem_le_pres+1
+	istore 3,contw
+//	arg mem_le_r,contr
+//	call memcpy16	
+	call get_r
+	
+	arg mem_le_mrand,contr
+	call memcpy16
+	arg mem_le_srand,contr
+	call memcpy16
+	call inverse_memdat
+	arg mem_le_mackey ,contr
+	arg mem_AES_CMAC_k,contw
+	call memcpy16
+//	call p_store_inverse_k	
+	branch function_AES_CMAC
+//	arg mem_AES_CMAC_temp,contw
+//	branch p_load_inverse_result
+
+get_r:
+	fetch 4,mem_le_tk
+	istore 4,contw
+	call memset0_4
+	branch memset0_8
+
+function_f6_ea:
+	bpatchx patch3b_3,mem_patch3b
+	jam 65,mem_AES_CMAC_data_length
+	arg memdat,contw
+	call store_addr_common_b
+	call store_addr_common_a
+	fetch 3,mem_le_preq+1
+	istore 3,contw
+//	arg mem_le_r,contr
+//	call memcpy16	
+	call get_r
+	arg mem_le_srand,contr
+	call memcpy16
+	arg mem_le_mrand,contr
+	call memcpy16
+	call inverse_memdat
+	arg mem_le_mackey ,contr
+	arg mem_AES_CMAC_k,contw
+	call memcpy16
+//	call p_store_inverse_k	
+	call function_AES_CMAC
+	arg mem_AES_CMAC_temp,contw
+	branch load_inverse_result
+
+function_f5:
+	jam 32,mem_AES_CMAC_data_length
+	arg mem_le_dhkey_256 ,contr
+	arg memdat,contw
+	call memcpy32
+	call inverse_memdat
+	arg mem_le_slat,contr
+	call store_inverse_k	
+	call function_AES_CMAC
+	arg mem_AES_CMAC_k,contw
+	call store_aes_result
+	arg 1,temp
+	call function_f5_common
+	arg mem_le_ltk,contw
+	call load_inverse_result
+	arg 0,temp
+	call function_f5_common
+	arg mem_le_mackey,contw
+//	branch p_load_inverse_result
+	branch store_aes_result
+
+
+function_f5_common:
+	bpatchx patch3b_4,mem_patch3b
+	jam 53,mem_AES_CMAC_data_length
+	setarg 0x100
+	store 2,memdat
+	call store_addr_common_b
+	call store_addr_common_a
+	arg mem_le_srand,contr
+	call memcpy16
+	arg mem_le_mrand,contr
+	call memcpy16
+//	fetch 4,mem_le_keyid 0x62746c65
+	setarg 0x6c65
+	istore 2,contw
+	setarg 0x6274
+	istore 2,contw
+	istoret 1,contw   //counter
+	call inverse_memdat	
+	branch function_AES_CMAC
+
+store_addr_common_b:
+	fetch 6,mem_le_lap
+	istore 6,contw
+	fetch 1,mem_le_conn_own_addr_type
+	istore 1,contw
+	rtn
+
+store_addr_common_a:
+	fetch 6,mem_le_plap
+	istore 6,contw
+//	setarg 0x2dcfc1
+//	istore 3,contw
+//	setarg 0xa71370
+//	istore 3,contw
+	fetch 1,mem_le_conn_peer_addr_type
+	istore 1,contw
+	rtn
+
+function_f4_ca:
+	jam 65,mem_AES_CMAC_data_length
+	fetch 1,mem_passkey_1bit
+	store 1,memdat
+	arg mem_le_pubkey_local_x_256,contr
+	call memcpy32
+	arg mem_le_pubkey_remote_x_256,contr
+	call memcpy32
+	call inverse_memdat
+	arg mem_le_mrand,contr
+	call store_inverse_k	
+	branch function_AES_CMAC
+	
+
+function_f4_cb:
+	jam 65,mem_AES_CMAC_data_length
+	fetch 1,mem_passkey_1bit
+	store 1,memdat
+	arg mem_le_pubkey_remote_x_256,contr
+	call memcpy32
+	arg mem_le_pubkey_local_x_256,contr
+	call memcpy32
+	call inverse_memdat
+	arg mem_le_srand,contr
+	call store_inverse_k	
+	branch function_AES_CMAC
+
+function_AES_CMAC:
+	bpatchx patch3b_5,mem_patch3b
+	call function_AES_CMAC_Generate_Subkey
+//call ice_break
+//	jam 65,mem_AES_CMAC_data_length
+//call ice_break
+	fetch 1,mem_AES_CMAC_data_length
+	copy pdata,temp
+function_ceil16:
+	increase 15,pdata
+	rshift4 pdata,pdata
+	copy pdata,regb
+	branch function_AES_CMAC_set_flag_0_balnk,blank
+	and temp,0x0f,pdata
+	nbranch function_AES_CMAC_set_flag_0,blank
+//	flag =1;
+	arg mem_AES_CMAC_k1,regc
+	arg memdat,pdata
+	increase -16,pdata
+//	iadd temp,pdata
+//	isub rega,rega
+	iadd temp,rega	
+	arg mem_AES_CMAC_M_last,contw
+	arg 4,loopcnt	
+	call xor_loop
+//call ice_break
+//	arg mem_f4_k1,contr
+//	call load_key
+	branch function_AES_CMAC_aes
+
+function_AES_CMAC_set_flag_0_balnk:
+	arg 1,regb
+	arg 0,rega
+//	arg mem_f4_test_data,pdata
+	branch function_AES_CMAC_set_flag_0_common
+//call ice_break
+
+function_AES_CMAC_set_flag_0:
+//	flag = 0;
+	and temp,0x0f,rega
+function_AES_CMAC_set_flag_0_common:
+	arg memdat,pdata
+	iadd temp,pdata
+	isub rega,contr
+//call ice_break
+	arg mem_AES_CMAC_temp,contw
+	call function_AES_CMAC_padding
+//call ice_break
+	arg mem_AES_CMAC_k2,regc
+	arg mem_AES_CMAC_temp,rega
+	arg mem_AES_CMAC_M_last,contw
+	arg 4,loopcnt	
+	call xor_loop	
+//call ice_break
+
+//	arg mem_f4_k2,contr
+//	call load_key
+
+//	branch p_function_f4_aes
+function_AES_CMAC_aes:
+//	arg mem_f4_k,contr
+//	call load_key
+//	arg mem_AES_CMAC_xor,contr
+//	call load_data128
+	call aes_clear_data
+	call aes_init	
+//	arg mem_f4_k,contr
+//	call load_key
+	arg memdat,contr
+function_AES_CMAC_aes_loop:
+//generate_mic_loop:
+	increase -1,regb
+	deposit regb
+	branch function_AES_CMAC_aes_loop_end,blank
+	call load_data128
+	call do_aes_cbc
+	branch function_AES_CMAC_aes_loop
+//generate_mic_end:
+function_AES_CMAC_aes_loop_end:	
+	arg mem_AES_CMAC_temp,contw
+	call store_aes_result
+	arg mem_AES_CMAC_M_last,contr
+	call load_data128
+	call aes_init	
+	arg mem_AES_CMAC_temp,contr
+	call load_data128	
+	branch do_aes_cbc
+
+
+
+load_inverse_result:
+//	arg mem_AES_CMAC_temp,contw
+	copy contw,rega
+	call store_aes_result
+//	arg mem_AES_CMAC_temp,rega
+	arg 16,loopcnt
+	branch inverse_data
+	
+store_inverse_k:
+	arg mem_AES_CMAC_k,contw
+	call memcpy16
+inverse_k:	
+	arg 16,loopcnt
+	arg mem_AES_CMAC_k,rega	
+	branch inverse_data
+	
+inverse_memdat:
+	fetch 1,mem_AES_CMAC_data_length
+	copy pdata,loopcnt
+	arg memdat,rega
+	branch inverse_data
+
+bn_lshift_0_inverse:
+	ifetch 1,regA
+	lshift pdata,pdata
+	isolate1 0,regC
+	setflag true,0,pdata	
+	isolate1 8,pdata
+	setflag true,0,regC	
+	istore 1,rega
+         increase -1,rega
+	loop bn_lshift_0_inverse
+	rtn	
+
+function_AES_CMAC_k1_inverse:
+	arg mem_AES_CMAC_k1,regA
+function_AES_CMAC_inverse_common:
+	increase 15,rega
+	force 16,loopcnt
+	force 0,regC
+	branch  bn_lshift_0_inverse	
+
+function_AES_CMAC_k2_inverse:
+	arg mem_AES_CMAC_k2,regA
+	branch function_AES_CMAC_inverse_common
+	
+
+function_AES_CMAC_Generate_Subkey:
+	arg mem_AES_CMAC_k,contr
+	call load_key
+//	arg mem_AES_CMAC_xor,contr
+//	call aes_load_xor
+	force regidx_xor,regext_index
+	call aes_clear
+	call aes_clear_data
+	call do_aes_ocb
+	
+//	force 0x38,aes_ctrl
+//	force 0x0,aes_ctrl
+//	call wait_aes
+	arg mem_AES_CMAC_k1,contw
+	call store_aes_result
+function_AES_CMAC_k1:
+	bpatchx patch3b_6,mem_patch3b
+	fetch 1,mem_AES_CMAC_k1
+	isolate1 7,pdata
+	nbranch function_AES_CMAC_k1_0,true	
+	call function_AES_CMAC_k1_inverse
+	
+//p_function_f4_k1_xor:
+	arg mem_AES_CMAC_k1,regc
+//	arg mem_AES_CMAC_rb,rega
+	arg mem_AES_CMAC_k1,contw
+//	arg 3,loopcnt
+//	call xor_loop
+	call function_AES_CMAC_xor_rb
+	branch function_AES_CMAC_k2
+function_AES_CMAC_k1_0:	
+	call function_AES_CMAC_k1_inverse
+function_AES_CMAC_k2:
+//call ice_break
+	arg mem_AES_CMAC_k1,contr
+	arg mem_AES_CMAC_k2,contw
+	call memcpy16
+	fetch 1,mem_AES_CMAC_k2
+	isolate1 7,pdata
+	nbranch function_AES_CMAC_k2_inverse,true		
+	call function_AES_CMAC_k2_inverse
+//p_function_f4_k2_xor:
+	arg mem_AES_CMAC_k2,regc
+//	arg mem_AES_CMAC_rb,rega
+	arg mem_AES_CMAC_k2,contw
+//	arg 3,loopcnt
+//	branch xor_loop	
+
+
+//rb:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 87 
+function_AES_CMAC_xor_rb:
+	arg 3,loopcnt
+function_AES_CMAC_xor_rb_loop:	
+	arg 0,temp
+	call function_AES_CMAC_xor_loop_common	
+	increase 4,regc
+	loop  function_AES_CMAC_xor_rb_loop
+	arg 0x8700,temp
+	lshift16 temp,temp
+function_AES_CMAC_xor_loop_common:	
+	ifetch   4,regc
+	ixor  temp,pdata
+	istore   4,contw	
+	rtn
+		
+
+
+
+//input rega :length <16	contr,contw
+function_AES_CMAC_padding:
+	bpatchx patch3b_7,mem_patch3b
+	arg 16,loopcnt
+	arg 0,pdata
+function_AES_CMAC_padding_loop:
+	isub rega,null
+	branch function_AES_CMAC_padding_beq_length,zero
+	branch function_AES_CMAC_padding_big_length,positive
+	ifetcht 1,contr
+	istoret 1,contw
+function_AES_CMAC_padding_loop2:	
+	increase 1,pdata
+	loop function_AES_CMAC_padding_loop
+	rtn
+function_AES_CMAC_padding_beq_length:	
+	arg 0x80,temp
+function_AES_CMAC_padding_common:
+	istoret 1,contw
+	branch  function_AES_CMAC_padding_loop2
+
+function_AES_CMAC_padding_big_length:
+	arg 0,temp
+	branch function_AES_CMAC_padding_common
+
+	
+generate_kinit:
+	call function_e22
+	arg mem_input_store,contr
+	arg mem_kinit,contw		/* Kinit is ready */
+	branch memcpy16
+
+
+function_e21:	/* rega pointers to bdaddr */
+	disable user
+	call function_expand
+	arg mem_random_number,contr
+	arg mem_x,contw
+	force 15,loopcnt
+	call memcpy			
+	ifetch 1,contr
+	xor_into 6,pdata
+	istore 1,contw
+	setarg mem_y
+	store 2,memp_ar_input
+	setarg mem_x
+	store 2,memp_ar_key
+	set1 mark_ar2,mark
+	branch function_ar
+
+
+	
+function_e22:		/* rega pointers to bdaddr */
+	fetcht 1,mem_pin_length
+	force 16,regb			/* total 16 bytes */
+	add temp,6,regc		/* regc is l' */
+	sub regc,16,null		
+	branch function_e22_pin_init,positive 
+	force 16,regc
+function_e22_pin_init:			/* generate x from pin and bdaddr */
+	arg mem_x,contw
+function_e22_genx_pin:
+	arg mem_pin,contr
+	copy temp,loopcnt
+	disable user
+function_e22_genx_loop:
+	ifetch 1,contr
+	istore 1,contw
+	increase -1,regb
+	branch function_e22_genx_end,zero
+	loop function_e22_genx_loop
+	branch function_e22_genx_pin,user
+	enable user
+	force 6,loopcnt
+	copy rega,contr
+	branch function_e22_genx_loop
+function_e22_genx_end:
+	arg mem_random_number,contr
+	arg mem_y,contw
+	call memcpy16
+	fetch 1,mem_y15
+	ixor regc,pdata
+	store 1,mem_y15	/* inpy[15] = rand_num[15]^l'; */
+	setarg mem_y
+	store 2,memp_ar_input
+	setarg mem_x
+	store 2,memp_ar_key
+	set1 mark_ar2,mark
+	branch function_ar
+
+
+
+
+function_e1:	/* rega pointers to bdaddr */
+	disable user
+	call function_expand
+	branch function_hash
+
+function_e3:
+	arg mem_aco,rega
+	enable user
+	call function_expand
+	call function_hash
+	arg mem_input_store,contr
+	arg mem_kc,contw
+	branch memcpy16
+
+	/* costs 41769 clocks */
+function_hash:
+	setarg mem_random_number
+	store 2,memp_ar_input
+	setarg mem_link_key
+	store 2,memp_ar_key
+	set0 mark_ar2,mark
+	call function_ar
+	arg mem_input_store,rega
+	arg mem_random_number,regb
+	arg mem_x,contw
+	call xor16
+	arg mem_x,rega
+	arg mem_y,regb
+	copy regb,contw
+	enable user
+	call add16
+	call key_offset
+	setarg mem_y
+	store 2,memp_ar_input
+	setarg mem_x
+	store 2,memp_ar_key
+	set1 mark_ar2,mark
+	branch function_ar
+	
+
+	/* totally costs 20700 clocks */
+function_ar:
+	jam 0,mem_ar_hround
+	fetch 2,memp_ar_key
+	iforce contr
+	arg mem_key_store,contw
+	call memcpy16
+	fetch 2,memp_ar_input
+	iforce contr
+	arg mem_input_store,contw
+	call memcpy16
+	
+function_ar_loop:
+	call key_scheduling
+	disable user
+	bmark0 mark_ar2,function_ar_original
+	fetch 1,mem_ar_hround
+	bne 4,function_ar_original
+	fetch 2,memp_ar_input
+	iforce regb
+	call xor_mod32_ar2
+function_ar_original:
+	call xor_mod32
+	call el_boxes
+	fetch 1,mem_ar_hround
+	increase 1,pdata
+	store 1,mem_ar_hround
+
+	call key_scheduling
+	enable user
+	call xor_mod32
+	call pht
+	call permute
+	call pht
+	call permute
+	call pht
+	call permute
+	call pht
+	fetch 1,mem_ar_hround
+	increase 1,pdata
+	store 1,mem_ar_hround
+	bne 16,function_ar_loop
+	call key_scheduling
+	disable user
+	branch xor_mod32
+	
+/* input round number and temp key in mem_key_store, and output the next temp key in mem_key_store */
+/* round key is generated and store in mem_round_key */
+key_scheduling:
+	fetch 1,mem_ar_hround
+	arg mem_key_store,contr
+	branch key_sched_zero,blank
+	iforce regb      			/* regb is half round */
+	force 17,loopcnt
+	copy contr,contw
+key_rotateloop:
+	ifetch 1,contr
+	lshift3 pdata,temp
+	rshift2 pdata,pdata
+	rshift3 pdata,pdata
+	ior temp,pdata
+	istore 1,contw
+	loop key_rotateloop
+	setarg mem_key_store
+	iadd regb,contr
+	force 16,loopcnt    
+	arg mem_round_key,contw
+key_select_octet_loop:
+	ifetch 1,contr
+	istore 1,contw
+	compare mem_key_store_end,contr,0xff
+	nbranch key_select_octet_nwrap,true
+	increase -17,contr
+key_select_octet_nwrap:
+	loop key_select_octet_loop
+	force 0,rega         /* rega is index of octet within row */
+	add regb,-1,regc    /* this is the row index, half_round#1 is 0 */
+	lshift2 regc,regc
+	lshift2 regc,regc
+	call enable_authrom
+	setarg mem_b_box
+	iadd regc,regc       /* regc hold the starting address of the row */
+	arg mem_round_key,contw
+	force 16,loopcnt
+bias_round_key_loop:
+	ifetcht 1,regc
+	ifetch 1,contw
+	iadd temp,pdata
+	istore 1,contw
+	increase 1,regc
+	loop bias_round_key_loop
+	branch disable_authrom
+
+key_sched_zero:    /* round 0, key1 */
+	force 16,loopcnt
+	force 0,temp
+create_byte_16_loop:
+	ifetch 1,contr
+	ixor temp,temp
+	loop create_byte_16_loop
+	deposit temp
+	istore 1,contr    	/* store the byte #16 */
+	arg mem_key_store,contr
+	arg mem_round_key,contw
+	branch memcpy16
+
+xor_mod32:     /* xor on 0,3, add on 1,2. if user is set, invert. x in rega and y in regb, out in contw */
+	arg mem_round_key,regb
+xor_mod32_ar2:
+	force 16,loopcnt
+	arg mem_input_store,rega
+	copy rega,contw
+xor_mod32_loop:	
+	ifetcht 1,rega
+	ifetch 1,regb
+	ixor temp,alarm
+	and loopcnt,3,regc
+	nbranch xor_mod32_invert,user
+	xor_into 3,regc
+xor_mod32_invert:
+	sub regc,1,regc
+	branch xor_even,positive
+	iadd temp,alarm
+xor_even:
+	deposit alarm
+	istore 1,contw
+	increase 1,rega
+	increase 1,regb
+	loop xor_mod32_loop
+	rtn
+
+el_boxes:
+	call enable_authrom
+	force 16,loopcnt
+	arg mem_input_store,rega
+el_box_loop:	
+	ifetch 1,rega
+	arg mem_e_box,contr
+	and loopcnt,3,regc
+	sub regc,1,null
+	branch e_boxes,positive
+	arg mem_l_box,contr
+e_boxes:
+	iadd contr,contr
+	ifetch 1,contr
+	istore 1,rega
+	increase 1,rega
+	loop el_box_loop
+	branch disable_authrom
+
+pht:				
+	force 8,loopcnt
+	arg mem_input_store,contr
+	copy contr,contw
+pht_loop:
+	ifetch 1,contr
+	iforce rega
+	ifetch 1,contr
+	iforce regb
+	lshift rega,pdata
+	iadd regb,pdata
+	istore 1,contw
+	deposit rega
+	iadd regb,pdata
+	istore 1,contw
+	loop pht_loop
+	rtn
+
+/* 8 11 12 15 2 1 6 5 10 9 14 13 0 7 4 3 */
+permute:			
+	setarg 0x8ae42c
+	iforce temp
+	force 7,loopcnt
+	call permute_exchange
+	setarg 0xd751b
+	iforce temp
+	force 5,loopcnt
+	call permute_exchange
+	fetch 1,mem_input_store+15
+	iforce rega
+	fetch 1,mem_input_store+3
+	store 1,mem_input_store+15
+	deposit rega
+	store 1,mem_input_store+3
+	rtn
+
+permute_exchange:
+	and temp,0xf,regb
+permute_loop:
+	and temp,0xf,pdata
+	arg mem_input_store,contw
+	iadd contw,contw
+	ifetch 1,contw
+	iforce regc
+	deposit rega
+	istore 1,contw
+	copy regc,rega
+	rshift4 temp,temp
+	loop permute_loop	
+	setarg mem_input_store
+	iadd regb,contw
+	deposit rega
+	istore 1,contw
+	rtn
+
+add16:
+	enable user
+	branch xor_add16
+
+xor16:
+	disable user
+xor_add16:	/* if user is set, do add, else do xor */
+	force 16,loopcnt	/* rega and regb pointers to src, contw is result */
+xoradd_loop:
+	ifetcht 1,rega
+	ifetch 1,regb
+	branch xoradd_add,user
+	ixor temp,pdata
+	branch xoradd_store
+xoradd_add:	
+	iadd temp,pdata
+xoradd_store:	
+	istore 1,contw
+	increase 1,rega
+	increase 1,regb
+	loop xoradd_loop
+	rtn
+
+	
+function_expand:		/* rega pointers to bdaddr, or aco and user is set */
+	arg mem_y,contw
+	ifetch 6,rega
+	istore 6,contw
+	branch expand_12,user
+	ifetch 6,rega
+	branch expand_cont
+expand_12:
+	ifetch 6,contr
+expand_cont:
+	istore 6,contw
+	ifetch 4,rega
+	istore 4,contw
+	rtn
+
+key_offset:
+	arg mem_link_key,contr
+	arg mem_x,contw
+	arg 0,temp
+	setarg 0x8395a7
+	call concatenate_temp24
+	setarg 0xb3c1df
+	call concatenate_temp24
+	setarg 0xe5e9
+	call concatenate_temp16
+	copy temp,regab
+	disable user
+	call key_addxor
+	copy regab,temp
+	enable user
+	branch key_addxor
+
+key_addxor:
+	force 8,loopcnt
+key_addxor_loop:	
+	ifetch 1,contr
+	compare 1,loopcnt,1
+	branch key_high,user
+	branch key_xor,true
+key_add:	
+	iadd temp,pdata
+	branch key_store
+key_high:
+	branch key_add,true
+key_xor:
+	ixor temp,pdata
+key_store:
+	istore 1,contw
+	rshift8 temp,temp
+	loop key_addxor_loop
+	rtn
+
+copy_aco:
+	fetch 6,mem_input_store+4
+	store 6,mem_aco
+	ifetch 6,contr
+	istore 6,contw
+	rtn
+	
+concatenate_temp24:
+	lshift8 temp,temp
+concatenate_temp16:
+	lshift16 temp,temp
+	ior temp,temp
+	rtn
+
+
+
+loop1:	
+	branch loop1
+
+/* ==================== LE security ================= */
+
+generate_stk:
+	bpatchx patch3c_0,mem_patch3c
+	call function_s1
+	arg mem_le_ltk,contw
+	branch store_aes_result
+
+	/* contr = rand pointer */
+authenticate_rconfirm:
+	arg mem_le_srand,contw
+	branch authenticate_mconfirm,master
+	arg mem_le_mrand,contw
+authenticate_mconfirm:
+	copy contr,rega
+	call memcpy16
+	call function_c1
+	arg mem_le_rconfirm,contr
+	branch compare_res
+
+generate_confirm:
+	arg mem_le_mrand,rega
+	branch generate_mrand,master
+	arg mem_le_srand,rega
+generate_mrand:
+	copy rega,contw
+	call generate_random
+	branch function_c1
+
+generate_sk:
+	arg mem_le_skdm,contr
+	call load_data128
+	arg mem_le_ltk,contr
+	call load_regext
+	force 0x38,aes_ctrl
+	force 0x0,aes_ctrl
+	call wait_aes
+	arg mem_le_sk,contw
+	branch store_aes_result
+
+	/* temp=packet counter, rega = length or block counter*/
+first_block_counter:
+	force 0x49,pdata
+	branch first_block
+first_block_data:
+	force 1,pdata
+first_block:
+	force regidx_data,regext_index			/* B0 */
+	lshift8 temp,regext
+	ior regext,regext
+	increase 1,regext_index
+	rshift8 temp,regext
+	rshift16 regext,regext
+	fetch 2,mem_le_ivm
+	lshift16,pdata,pdata
+	ior regext,regext				/* octet3&octet4 of counter and low 16 bit of IV */
+	increase 1,regext_index
+	ifetch 4,contr					/* IV2-IV5 */
+	iforce regext
+	increase 1,regext_index
+	ifetch 2,contr					/* IV6-IV7 */
+	byteswap rega,regext
+	lshift16 regext,regext
+	ior regext,regext
+	increase 1,regext_index
+	rtn
+
+
+	/* temp=packet counter, regc pointers to data */	
+generate_mic:
+	add regc,1,contr
+	ifetch 1,contr
+	iforce rega
+	call first_block_counter
+	call do_aes_ocb
+
+	force regidx_data,regext_index			/* B1 */
+	ifetch 1,regc
+	and_into 0x3,pdata
+	lshift16 pdata,regext
+	set1 8,regext
+	call clear_hidata
+	call do_aes_cbc
+
+	copy rega,loopcnt
+	add regc,2,contr
+	call padding_data
+generate_mic_loop:
+	call aes_load_data
+	call do_aes_cbc
+	deposit loopcnt
+	branch generate_mic_end,blank
+	branch generate_mic_loop
+generate_mic_end:
+	force regidx_result,regext_index
+	deposit regext
+	store 4,mem_le_mic
+	rtn
+
+aes_crypt_data:
+	increase 1,rega
+	call first_block_data
+	copy regc,contr
+	call aes_load_xor
+	call do_aes_ctr
+	call store_enc_data
+	increase 16,regc
+	increase -16,regb
+	branch aes_crypt_data,positive
+	rtn
+	
+le_encrypt:
+	bpatchx patch3c_1,mem_patch3c
+	arg mem_le_txheader,regc
+	fetcht 5,mem_le_pcnt_tx
+	call generate_mic
+	force regidx_xor,regext_index
+	iforce regext
+	force 0,rega					/* rega is block counter */
+	call first_block_data
+	call do_aes_ctr
+	arg mem_le_txpayload,regc
+	fetch 1,mem_le_txlen
+	add pdata,-1,regb
+	iadd regc,contw
+	force regidx_result,regext_index
+	deposit regext
+	istore 4,contw	
+	call aes_crypt_data
+	fetch 1,mem_le_txlen
+	increase 4,pdata
+	store 1,mem_le_txlen
+	fetcht 5,mem_le_pcnt_tx
+	increase 1,temp
+	storet 5,mem_le_pcnt_tx
+	rtn
+
+le_decrypt:
+	bpatchx patch3c_2,mem_patch3c
+	fetch 1,mem_le_rxbuf+1
+	sub pdata,20,null
+	branch le_dec_cont,positive
+le_dec_cont:
+	arg mem_le_rxbuf+2,regc
+	add pdata,-1,regb
+	increase -4,pdata				/* mic will be discarded */
+	store 1,mem_le_rxbuf+1
+	iadd regc,contr
+	ifetch 4,contr
+	force regidx_xor,regext_index
+	iforce regext
+	force 0,rega					/* rega is block counter */
+	fetcht 5,mem_le_pcnt_rx
+	call first_block_data
+	call do_aes_ctr
+	force regidx_result,regext_index
+	deposit regext
+	store 4,mem_le_peer_mic
+	call aes_crypt_data
+	arg mem_le_rxbuf,regc
+	call generate_mic
+	fetcht 4,mem_le_peer_mic
+	isub temp,pdata				/* MIC ok? */
+	nrtn blank
+	fetch 4,mem_le_last_mic			/* reduntdant packet? */
+	isub temp,pdata
+	rtn blank
+	storet 4,mem_le_last_mic
+	fetch 5,mem_le_pcnt_rx
+	increase 1,pdata
+	store 5,mem_le_pcnt_rx
+	force 0,pdata
+	rtn
+
+wait_aes:
+	nbranch wait_aes,aes_ready
+	rtn
+
+do_aes_ocb:
+	force 0x30,aes_ctrl
+	force 0x0,aes_ctrl
+	branch wait_aes
+
+do_aes_cbc:
+	force 0x32,aes_ctrl
+	force 0x2,aes_ctrl
+	branch wait_aes
+
+do_aes_ctr:
+	force 0x34,aes_ctrl
+	force 0x4,aes_ctrl
+	branch wait_aes
+
+	
+aes_init:
+	force 1,aes_ctrl
+	force 0,aes_ctrl
+	rtn
+function_s1:
+	force regidx_data,regext_index
+	fetch 4,mem_le_mrand
+	iforce regext
+	increase 1,regext_index
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	fetch 4,mem_le_srand
+	iforce regext
+	increase 1,regext_index
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	call aes_clear
+	increase -4,regext_index
+	fetch 4,mem_le_tk
+	copy pdata,regext
+	increase 4,regext_index
+	force 0x38,aes_ctrl
+	force 0x8,aes_ctrl
+	branch wait_aes
+
+	/* rega pointers to random number */
+function_c1:
+	bpatchx patch3c_3,mem_patch3c
+	fetch 6,mem_le_lap
+	fetcht 6,mem_le_plap
+	branch function_c1_master,master
+	fetch 6,mem_le_plap
+	fetcht 6,mem_le_lap
+function_c1_master:
+	force regidx_xor,regext_index
+	copy temp,regext
+	increase 1,regext_index
+	rshift32 temp,regext
+	lshift16 pdata,pdata
+	ior regext,regext
+	increase 1,regext_index
+	rshift32 pdata,regext
+	increase 1,regext_index
+	force 0,regext					/* p2 = ia || ra */
+	force 0,pdata
+	fetch 1,mem_le_conn_peer_addr_type
+	fetcht 1,mem_le_adv_own_addr_type
+	nbranch function_c1_irat,master
+	//conn as master
+	fetch 1,mem_le_conn_own_addr_type
+	fetcht 1,mem_le_conn_peer_addr_type
+function_c1_irat:
+	store 1,mem_le_iat
+	storet 1,mem_le_rat
+	force regidx_data,regext_index
+	arg mem_le_iat,regb
+	force 4,loopcnt
+function_c1_loop1:
+	ifetch 4,rega		
+	ifetcht 4,regb
+	ixor temp,regext
+	increase 1,regext_index
+	increase 4,rega
+	increase 4,regb
+	loop function_c1_loop1		/* p1 ^ r */
+	call aes_clear				/* k = 0 */
+	increase -4,regext_index
+	fetch 4,mem_le_tk
+	copy pdata,regext
+	increase 4,regext_index
+	force 0x38,aes_ctrl
+	force 0xc,aes_ctrl
+	call wait_aes
+
+	call aes_clear_data
+	force 0x3a,aes_ctrl
+	force 0x8,aes_ctrl
+	branch wait_aes
+
+padding_data:
+	compare 0,loopcnt,3
+	rtn true
+	deposit contr
+	iadd loopcnt,contw
+	force 0,pdata
+padding_loop:
+	istore 1,contw
+	increase 1,loopcnt
+	compare 0,loopcnt,3
+	rtn true
+	branch padding_loop
+
+aes_load_data:
+	force regidx_data,regext_index
+load_data_loop:
+	deposit loopcnt
+	branch load_data_padding,blank
+	ifetch 4,contr
+	increase -4,loopcnt
+load_data_padding:
+	iforce regext
+	increase 1,regext_index
+	compare regidx_key,regext_index,0xf
+	rtn true
+	branch load_data_loop
+
+aes_load_xor:
+	force regidx_xor,regext_index
+	branch load_regext
+load_key:
+	force regidx_key,regext_index
+	branch load_regext
+load_data128:
+	force regidx_data,regext_index
+load_regext:
+	force 4,loopcnt
+load_regext_loop:
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	loop load_regext_loop
+	rtn
+
+load_sk:
+	arg mem_le_sk,contr
+	branch load_key
+
+clear_hidata:
+	force 4,loopcnt
+	branch clear_data_rest
+
+aes_clear_data:
+	force regidx_data,regext_index
+aes_clear:
+	force 4,loopcnt
+clear_loop:
+	force 0,regext
+clear_data_rest:
+	increase 1,regext_index
+	loop clear_loop
+	rtn
+
+store_aes_result:
+	force regidx_result,regext_index
+	force 4,loopcnt
+send_aes_result_loop:
+	deposit regext
+	istore 4,contw
+	increase 1,regext_index
+	loop send_aes_result_loop
+	rtn
+
+store_enc_data:
+	force regidx_result,regext_index
+	copy regc,contw
+	add regb,1,loopcnt
+	sub loopcnt,15,null
+	branch store_enc_loop,positive
+	force 16,loopcnt
+store_enc_loop:
+	deposit regext
+	sub loopcnt,3,null
+	branch store_enc_byte,positive
+	istore 4,contw
+	increase -4,loopcnt
+	rtn zero
+	increase 1,regext_index
+	branch store_enc_loop
+store_enc_byte:
+	istore 1,contw
+	rshift8 pdata,pdata
+	loop store_enc_byte
+	rtn
+	
+	/* contr pointers to value to be compared */
+compare_res:
+	force regidx_result,regext_index
+	force 4,loopcnt
+compare_res_loop:
+	ifetch 4,contr
+	isub regext,null
+	nrtn zero
+	increase 1,regext_index
+	loop compare_res_loop
+	force 0,null
+	rtn
+
+enable_authrom:
+	hfetch 1,core_clkoff
+	set0 CLOCK_OFF_AUTH_ROM,pdata
+	hstore 1,core_clkoff
+	rtn
+
+disable_authrom:
+	hfetch 1,core_clkoff
+	set1 CLOCK_OFF_AUTH_ROM,pdata
+	hstore 1,core_clkoff
+	rtn
+
+init_memp:
+	arg mem_p,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffff
+	setsect 3,0x3fbff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffff
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3cfff
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffef
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffff
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x26c7f
+	setsect 2,0x146b
+	setsect 3,0x37bb3
+	istore 9,contw
+	setsect 0,0x1feb8
+	setsect 1,0x10c12
+	setsect 2,0x2b722
+	setsect 3,0x29fa6
+	istore 9,contw
+	setsect 0,0xe70f
+	setsect 1,0x16720
+	setsect 2,0x519e
+	setsect 3,0x19084
+	istore 9,contw
+	setsect 0,0x31012
+	setsect 1,0x360bf
+	setsect 2,0x3f0af
+	setsect 3,0x3d3
+	istore 9,contw
+	setsect 0,0x3a188
+	setsect 1,0x3ad0
+	setsect 2,0x3cbf2
+	setsect 3,0x243d9
+	istore 9,contw
+	setsect 0,0x2b030
+	setsect 1,0x36a03
+	setsect 2,0x11188
+	setsect 3,0x1e520
+	istore 9,contw
+	setsect 0,0x3a11e
+	setsect 1,0xfe5d
+	setsect 2,0xdd57
+	setsect 3,0x1ac93
+	istore 9,contw
+	setsect 0,0x11ed
+	setsect 1,0x218c4
+	setsect 2,0x8da7
+	setsect 3,0x257ff
+	istore 9,contw
+	setsect 0,0x3192b
+	setsect 1,0x34641
+	setsect 2,0x1be0c
+	setsect 3,0x366ad
+	istore 9,contw
+	setsect 0,0x1f83
+	setsect 1,0x15a23
+	setsect 2,0x3f9b0
+	setsect 3,0x3949
+	istore 9,contw
+	setsect 0,0x13a51
+	setsect 1,0x153fd
+	setsect 2,0x3372a
+	setsect 3,0xf1bb
+	istore 9,contw
+	setsect 0,0x3ae85
+	setsect 1,0x1eed9
+	setsect 2,0x9e66
+	setsect 3,0x1a8
+	istore 8,contw
+	rtn
+	
+
+
+init_memp_256:
+ 	arg mem_p_256,contw
+        setsect 0,0x3ffff
+        setsect 1,0x3ffff
+        setsect 2,0x3ffff
+        setsect 3,0x3ffff
+        istore 9,contw
+        setsect 0,0x3ffff
+        setsect 1,0x3f
+        setsect 2,0x0
+        setsect 3,0x0
+        istore 9,contw
+        setsect 0,0x0
+        setsect 1,0x0
+        setsect 2,0x1000
+        setsect 3,0x0
+        istore 9,contw
+        setsect 0,0x3ff00
+        setsect 1,0x3ffff
+        setsect 2,0x3ffcf
+        setsect 3,0x3ffff
+        istore 9,contw
+        setsect 0,0x3ffff
+        setsect 1,0x3ffff
+        setsect 2,0x3ffff
+        setsect 3,0x3ff
+        istore 9,contw
+        setsect 0,0x0
+        setsect 1,0x0
+        setsect 2,0x0
+        setsect 3,0x0
+        istore 9,contw
+        setsect 0,0x10000
+        setsect 1,0x0
+        setsect 2,0x3f000
+        setsect 3,0x3ffff
+        istore 9,contw
+        setsect 0,0x296ff
+        setsect 1,0x22630
+        setsect 2,0x3945d
+        setsect 3,0x3d284
+        istore 9,contw
+        setsect 0,0x333a0
+        setsect 1,0x4b7a
+        setsect 2,0x37d8
+        setsect 3,0x3c9dc
+        istore 9,contw
+        setsect 0,0x3a440
+        setsect 1,0x1b958
+        setsect 2,0x38bce
+        setsect 3,0x1091f
+        istore 9,contw
+        setsect 0,0x2e12c
+        setsect 1,0x1f47c
+        setsect 2,0x356b1
+        setsect 3,0x2fd47
+        istore 9,contw
+        setsect 0,0x6837
+        setsect 1,0x2ed90
+        setsect 2,0x1ecec
+        setsect 3,0x1acc5
+        istore 9,contw
+        setsect 0,0x23357
+        setsect 1,0x18af3
+        setsect 2,0xf9e1
+        setsect 3,0x129f0
+        istore 9,contw
+        setsect 0,0x2e7eb
+        setsect 1,0x3e6e3
+        setsect 2,0x3e1a7
+        setsect 3,0x10b8b
+        istore 9,contw
+        setsect 0,0x24fe3
+        setsect 1,0x20ef
+        setsect 2,0x1b5a6
+        setsect 3,0xdc2f
+        istore 9,contw
+        setsect 0,0x13860
+        setsect 1,0x2bd69
+        setsect 2,0x391a
+        setsect 3,0x1b222
+        istore 9,contw
+        rtn
+
+
+publickey_init:
+	fetch 1,mem_ssp_enable
+	nbranch sp_initialize,blank
+	branch sp_initialize_256
+
+sp_calc_sequence_256_check:
+	bpatchx patch3c_4,mem_patch3c
+	fetch 1,mem_ssp_enable
+	rtn blank
+	fetch 1,mem_sp_local_key_invalid
+	rtnne SP_KEY_VALID
+	fetch 1,mem_le_secure_connect_enable
+	rtn blank
+	fetch 1,mem_le_sc_local_key_invalid
+	rtneq SP_KEY_VALID_256
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,stop_publickey_calc_256
+	fetch 1,mem_le_sc_calc
+	beq SP_CALC_STANDBY,sp_initialize_256
+	rtn
+stop_publickey_calc_256:
+	jam SP_CALC_STANDBY,mem_le_sc_calc	
+	rtn
+	
+
+sp_initialize:
+	bpatchx patch3c_5,mem_patch3c
+	fetch 1,mem_ssp_enable 
+	branch ssp_disable, blank
+	call ssp_enable
+	call sp_clear_flags
+	branch sp_pubkey_calc 
+	
+sp_clear_flags:
+	setarg 0
+	store 8,mem_sp_state_start
+	store 4,mem_sp_flag_start
+	store 7,mem_sp_iocap_remote
+	rtn
+
+sp_generate_local_key:
+	jam SP_FLAG_COMMIT,mem_sp_flag  
+	branch sp_generate_local_key0
+sp_master_generate_local_key:
+	fetch 1,mem_sp_local_key_invalid
+	beq SP_KEY_VALID,sp_dhkey_calc
+	branch assert
+sp_generate_local_key0:
+	fetch 1,mem_sp_local_key_invalid
+	beq SP_KEY_VALID,sp_start_send_pubkey
+	branch sp_pubkey_calc
+    
+sp_start_send_pubkey:
+	call sp_dhkey_calc
+	fetch 1,mem_master_sp_state
+	nrtn blank
+	jam SP_STAT_KEY_SEND,mem_sp_state
+	rtn
+
+
+sp_calc_check_publickey_256:
+	call sp_calc_b256
+	arg mem_le_pubkey_remote_y_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256   
+	arg mem_le_pubkey_remote_x_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256   
+  	arg mem_t2_256,regA
+	arg mem_le_pubkey_remote_x_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256	
+  	arg mem_a_256,regA
+	arg mem_le_pubkey_remote_x_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	call bn_addmod_256	 
+	arg 32,loopcnt
+  	arg mem_t7_256,regA
+	arg mem_t0_256,regB
+	branch  string_compare
+	
+sp_calc_b256:
+	arg mem_gy_256,regA
+	arg mem_t0_256,contw
+	call bn_sqrmod_256   
+	arg mem_gx_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256    
+  	arg mem_t2_256,regA
+	arg mem_gx_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256	
+  	arg mem_a_256,regA
+	arg mem_gx_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	 
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	branch  bn_submod_256	
+	
+sp_calc_check_publickey:
+	call sp_calc_b
+	arg mem_sp_pubkey_remote_y,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod 
+	arg mem_sp_pubkey_remote_x,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod
+  	arg mem_t2_256,regA
+	arg mem_sp_pubkey_remote_x,regB
+	arg mem_t2_256,contw
+	call bn_mulmod	
+  	arg mem_a,regA
+	arg mem_sp_pubkey_remote_x,regB
+	arg mem_t3_256,contw
+	call bn_mulmod	
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	call bn_addmod	 
+ 	arg 24,loopcnt
+ 	arg mem_t7_256,regA
+	arg mem_t0_256,regB
+	branch  string_compare
+	
+sp_calc_b:
+	arg mem_gy,regA
+	arg mem_t0_256,contw
+	call bn_sqrmod   
+	arg mem_gx,regA
+	arg mem_t2_256,contw
+  	call bn_sqrmod
+  	arg mem_t2_256,regA
+	arg mem_gx,regB
+	arg mem_t2_256,contw
+	call bn_mulmod	
+	arg mem_a,regA
+	arg mem_gx,regB
+	arg mem_t3_256,contw
+	call bn_mulmod	 
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	branch  bn_submod	
+
+   
+sp_calculate_commitment:
+	fetch 1,mem_sp_calc
+	bne SP_CALC_STANDBY,sp_calculate_commitment_wait_dhkey_calc
+	call sp_local_random_key_generator
+	arg mem_sp_prarm_stack,contw
+	setarg mem_sp_random_local_end
+	istore 2,contw
+	setarg mem_sp_pubkey_local_x_end
+	istore 2,contw
+	setarg mem_sp_pubkey_remote_x_end
+	istore 2,contw
+	branch sp_calculate_commitment0
+master_sp_calculate_commitment:
+	arg mem_sp_prarm_stack,contw
+	setarg mem_sp_random_remote_end
+	istore 2,contw
+	setarg mem_sp_pubkey_remote_x_end
+	istore 2,contw
+	setarg mem_sp_pubkey_local_x_end
+	istore 2,contw
+sp_calculate_commitment0:
+	call function_f1
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_COMMIT_CALC,master_sp_calculate_commitment0
+	jam SP_FLAG_COMMIT,mem_sp_flag
+	jam SP_STAT_COMMIT_SEND,mem_sp_state
+	rtn
+master_sp_calculate_commitment0:
+	jam SP_STAT_COMMITMENT_COMPARE,mem_master_sp_state
+	call sp_master_generate_local_key
+	branch master_set_mem_master_sp_flag 
+
+sp_local_random_key_generator:
+	arg mem_sp_random_local,contw
+	force 8,queue
+	branch random_generator
+  
+sp_calculate_commitment_wait_dhkey_calc:
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	rtn
+    
+sp_confirm_check:
+    /* calculate Ea here */
+	bpatchx patch3c_6,mem_patch3c
+	arg      mem_addr_value,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	fetch    3,mem_sp_iocap_remote
+	istore   3,contw 
+
+	call     function_f3a
+
+	arg      mem_sp_calc_result_high,regA
+	arg      mem_sp_check_result,regB    
+	force    4,queue 
+	call     compare4
+	nbranch  sp_confirm_check_failed,true  
+
+	call sp_confirm_check_success
+	jam LMP_DHKey_Check,mem_lmi_opcode2
+	branch tid_set_reply
+    
+sp_confirm_check_success:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_CHECK,sp_confirm_check_success_master
+	jam SP_STAT_CONFIRM_CALC,mem_sp_state
+	jam SP_FLAG_COMMIT,mem_sp_flag  
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	rtn
+sp_confirm_check_success_master:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam SP_STATE_END,mem_master_sp_state
+	branch master_set_mem_master_sp_flag
+	//accept opcode?
+	
+sp_confirm_check_failed:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_CHECK,sp_confirm_check_failed_master
+	jam SP_STAT_NULL,mem_sp_state
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	//accept opcode?
+	jam      AUTHENTICATION_FAILURE_ERROR,mem_lmo_reason2 
+	rtn
+sp_confirm_check_failed_master:
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam SP_STAT_NULL,mem_master_sp_state
+	rtn
+    
+sp_confirm_calc:
+	fetch 1,mem_sp_dh_ready
+	beq SP_FLAG_COMMIT, sp_confirm_calc_ready
+	jam 	SP_STAT_CONFIRM_CALC,mem_master_sp_state
+	branch master_set_mem_master_sp_flag
+sp_confirm_calc_ready:
+	arg      mem_addr_value,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	fetch    3,mem_sp_iocap_local
+	istore   3,contw 
+
+	call     function_f3b
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_CALC,sp_confirm_calc_master
+	jam      SP_STAT_CONFIRM_SEND,mem_sp_state
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	rtn
+sp_confirm_calc_master:
+	jam      SP_STAT_CONFIRM_SEND,mem_master_sp_state
+	jam      SP_FLAG_COMMIT,mem_master_sp_flag
+	rtn   
+
+sp_master_key_prarm_push:
+	arg mem_sp_prarm_stack,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	setarg mem_sp_random_local_end
+	istore 2,contw
+	setarg mem_sp_random_remote_end
+	istore 2,contw
+	branch sp_link_key_calc
+sp_link_key_prarm_push:
+	jam      SP_STAT_DONE,mem_sp_state    
+	arg mem_sp_prarm_stack,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	setarg mem_sp_random_remote_end
+	istore 2,contw
+	setarg mem_sp_random_local_end
+	istore 2,contw
+sp_link_key_calc:
+    /*calculate Link key here */
+	arg      mem_addr_value,contw
+	fetch    6,mem_sp_prarm_stack
+	istore   6,contw
+	fetch    6,mem_sp_prarm_stack+6
+	istore   6,contw
+	
+	call     function_f2    
+
+	/*handle linkkey  */
+	jam 1,mem_link_key_exists
+	arg mem_link_key,contw
+	arg mem_sp_calc_result_high,contr
+	call memcpy16
+	branch  generate_linkkey_continue
+
+    
+sp_pubkey_calc:
+	bpatchx patch3c_7,mem_patch3c
+	fetch    1,mem_sp_local_key_invalid
+	rtnne SP_KEY_INVALID
+	fetch    1,mem_sp_calc
+	rtnne  SP_CALC_STANDBY
+	arg      mem_sp_private_key,contw 
+	force    11,queue
+	call     random_generator
+	random   pdata
+	rshift   pdata,pdata
+	istore   2,contw 
+/* we don't need fixed private key,generate random key instead */ 
+	arg      mem_k,contw
+	arg      mem_sp_private_key,contr	
+	call     memcpy24 //mem_sp_private_key=>mem_k 24BYTES
+
+	arg      mem_ax,contw
+	arg      mem_gx,contr
+	call     memcpy48 //mem_gx=>mem_ax 48bytes
+
+	arg      mem_az,contw
+	call     bn_zero
+	jam      1,mem_az //0=>mem_az 24bytes
+
+	call     eckp_calc_init
+	jam SP_CALC_PUBKEY,mem_sp_calc
+	rtn    
+	
+sp_pubkey_generated:
+	arg      mem_sp_pubkey_local,contw
+	arg      mem_bx,contr
+	call     memcpy48   
+	jam      SP_KEY_VALID,mem_sp_local_key_invalid
+	jam      SP_CALC_STANDBY,mem_sp_calc
+	rtn
+
+sp_dhkey_calc:
+	bpatchx patch3d_0,mem_patch3d
+	fetch    1,mem_sp_dhkey_invalid
+	rtnne  SP_KEY_INVALID
+	fetch    1,mem_sp_calc
+	rtnne  SP_CALC_STANDBY
+
+	arg      mem_k,contw
+	arg      mem_sp_private_key,contr	
+	call     memcpy24
+
+	arg      mem_ax,contw
+	arg      mem_sp_pubkey_remote,contr
+	call     memcpy48
+
+	arg      mem_az,contw
+	call     bn_zero
+	jam      1,mem_az
+
+	call     eckp_calc_init
+	jam      SP_CALC_DHKEY,mem_sp_calc
+	rtn 	
+	
+sp_dhkey_generated:
+	jam SP_FLAG_COMMIT,mem_sp_dh_ready
+	arg mem_sp_dhkey,contw
+	arg mem_bx,contr
+	call memcpy24
+	jam SP_KEY_VALID,mem_sp_dhkey_invalid
+	jam SP_CALC_STANDBY,mem_sp_calc
+	rtn
+
+random_generator:
+	increase -1,queue
+	nrtn     positive
+	random   pdata
+	istore   2,contw  
+	branch   random_generator
+compare4:
+	increase -1,queue
+	nbranch  compare4_success,positive
+	ifetch   4,regA
+	copy     pdata,temp
+	ifetch   4,regB
+	iflip    temp,pdata
+	nbranch  compare4_failed,zero
+	increase 4,regA
+	increase 4,regB
+	branch   compare4
+compare4_failed:
+	disable  true
+	rtn
+compare4_success:
+	enable   true
+	rtn
+
+/*************************************************/
+/** Message state machine routines ***************/
+/*************************************************/
+// simple pairing support 
+
+simple_pairing_sequence:
+	bpatchx patch3d_1,mem_patch3d
+         fetch 1,mem_sp_flag
+         rtn blank
+	call lmo_fifo_check
+	nrtn blank
+	jam      SP_FLAG_STANDBY,mem_sp_flag
+	fetch    1,mem_sp_state
+	beq  SP_STAT_KEY_SEND,sp_send_LMP_ENCAPSULATED_HEADER
+	beq  SP_STAT_COMMIT_SEND,sp_send_LMP_SIMPLE_PAIRING_COMFIRM
+	beq  SP_STAT_RANDOM_SEND,sp_send_LMP_SIMPLE_PAIRING_NUMBER
+	beq  SP_STAT_CONFIRM_SEND,sp_send_LMP_DHKEY_CHECK
+	beq  SP_STAT_KEY_GENERATE,sp_generate_local_key
+	beq  SP_STAT_COMMIT_CALC,sp_calculate_commitment
+	beq  SP_STAT_CONFIRM_CHECK,sp_confirm_check
+	beq  SP_STAT_CONFIRM_CALC,sp_confirm_calc
+	beq  SP_STAT_LINK_KEY_CALC,sp_link_key_prarm_push
+	//beq  SP_STAT_FEATURE_EXT_SEND,send_LMP_FEATURES_REQ_EXT
+	rtn  
+
+master_simple_paring_sequence:
+	bpatchx patch3d_2,mem_patch3d
+	fetch 1,mem_master_sp_flag
+	rtn blank
+	call lmo_fifo_check
+	nrtn blank
+	jam SP_FLAG_STANDBY,mem_master_sp_flag
+	fetch 1,mem_master_sp_state
+	beq SP_MASTER_STAT_START_SKIP,sp_master_send_io_cap_get
+	beq SP_MASTER_STAT_START_DONE,sp_master_send_io_cap_send
+	beq SP_STAT_KEY_SEND,sp_master_send_LMP_ENCAPSULATED_HEADER
+	beq SP_STAT_COMMIT_CALC,master_sp_calculate_commitment
+	beq SP_STAT_COMMITMENT_COMPARE,sp_master_commitment_compare
+	beq SP_STAT_RANDOM_SEND,sp_master_send_LMP_SIMPLE_PAIRING_NUMBER
+	beq SP_STAT_CONFIRM_CALC,sp_confirm_calc
+	beq SP_STAT_CONFIRM_SEND,master_sp_send_lmp_dhkey_check
+	beq SP_STAT_CONFIRM_CHECK,sp_confirm_check
+	beq SP_STATE_END,master_sp_sm_end
+	rtn
+
+master_set_mem_master_sp_flag:
+	jam SP_FLAG_COMMIT,mem_master_sp_flag
+	rtn
+	
+master_clear_mem_master_sp_flag:
+	jam SP_FLAG_STANDBY,mem_master_sp_flag
+	rtn
+sp_calc_sequence:
+	bpatchx patch3d_3,mem_patch3d
+	fetch 1,mem_ssp_enable
+	rtn blank
+	fetch 1,mem_sp_calc
+	rtn blank
+	increase 0x80,pdata
+	store    1,mem_sp_calc
+	rtnbit1 7
+	fetch    1,mem_ec_loopc
+	branch   sp_calc_sequence_done,blank
+	branch   eckp_calc
+
+sp_calc_sequence_done:    
+	call ecunmapz
+	fetch 1,mem_sp_calc
+	beq  SP_CALC_PUBKEY,sp_pubkey_generated
+	beq  SP_CALC_DHKEY,sp_dhkey_generated
+	rtn
+
+
+bn_testbit:
+	and pdata,7,queue
+	rshift3 pdata,pdata
+	iadd contr,contr
+	ifetch 1,contr
+	qisolate0 pdata
+	rtn
+
+
+ec_copy:
+	call memcpy24
+	call memcpy24
+	branch memcpy24
+	
+	
+bn_eq_zero:
+	ifetch 8,contr
+	nrtn blank
+	ifetch 8,contr
+	nrtn blank
+	ifetch 8,contr
+	rtn
+	
+	
+	/* return zero if eq */
+
+bn_eq_0:	
+	ifetch 4,regA
+	iforce temp
+	ifetch 4,regB
+	isub temp,null
+	nrtn zero
+	increase 4,regA
+	increase 4,regB
+	loop bn_eq_0
+	rtn
+
+	/* return positive if A >= B */
+bn_bigeq:
+	force 6,loopcnt
+	increase 20,regA
+	increase 20,regB
+bn_bigeq_0:	
+	ifetch 4,regB
+	iforce temp
+	ifetch 4,regA
+	isub temp,pdata
+	nrtn positive
+	nrtn blank
+	increase -4,regA
+	increase -4,regB
+	loop bn_bigeq_0
+	rtn
+
+bn_add:
+	force 6,loopcnt
+	force 0,regC
+bn_add_0:	
+	ifetch 4,regA
+	iforce temp
+	ifetch 4,regB
+	iadd temp,pdata
+	iadd regC,pdata
+	istore 4,contw
+	isolate1 32,pdata
+	setflag true,0,regC
+	increase 4,regA
+	increase 4,regB
+	loop bn_add_0
+	rtn
+
+bn_sub:
+	force 6,loopcnt
+	force 0,regC
+bn_sub_0:	
+	ifetch 4,regB
+	iforce temp
+	ifetch 4,regA
+	isub temp,pdata
+	isub regC,pdata
+	istore 4,contw
+	isolate1 32,pdata
+	setflag true,0,regC
+	increase 4,regA
+	increase 4,regB
+	loop bn_sub_0
+	rtn
+
+bn_rshift6:
+	force 6,loopcnt
+	increase 20,regA
+bn_rshift:
+	force 0,regC
+bn_rshift_0:	
+	ifetch 4,regA
+	isolate1 0,pdata
+	setflag true,1,regC
+	rshift pdata,pdata
+	isolate1 0,regC
+	setflag true,31,pdata
+	istore 4,regA
+	increase -4,regA
+	rshift regC,regC
+	loop bn_rshift_0
+	rtn
+
+bn_lshift:
+	force 6,loopcnt
+	force 0,regC
+bn_lshift_0:	
+	ifetch 4,regA
+	isolate1 31,pdata
+	setflag true,1,regC
+	lshift pdata,pdata
+	isolate1 0,regC
+	setflag true,0,pdata
+	istore 4,regA
+	increase 4,regA
+	rshift regC,regC
+	loop bn_lshift_0
+	rtn
+	
+bn_lshiftmod:
+	call bn_lshift
+bn_lshiftmod_ismod:	
+	isolate1 0,regC
+	branch bn_lshiftmod_0,true
+	arg mem_p,regB
+	copy regA,regC
+	increase -24,regA
+	call bn_bigeq
+	nrtn positive
+	copy regC,regA
+bn_lshiftmod_0:
+	increase -24,regA
+	arg mem_p,regB
+	copy regA,contw
+	branch bn_sub
+	
+
+bn_addmod:
+	call bn_add
+	copy contw,regA
+	branch bn_lshiftmod_ismod
+	
+bn_submod:
+	call bn_sub
+	isolate0 0,regC
+	rtn true
+	arg mem_p,regB
+	add contw,-24,regA
+	copy regA,contw
+	branch bn_add
+	
+
+bn_p192mod:
+	copy contw,timeup				/* save result ptr */
+	copy regA,alarm				/* temp save regA */
+	arg mem_tmp2,regB
+	copy regB,contw
+	add regA,24,contr
+	ifetch 8,contr
+	istore 8,contw
+	istore 8,contw
+	force 0,pdata
+	istore 8,contw
+	copy timeup,contw
+	call bn_addmod
+	arg mem_tmp2,regB
+	copy regB,contw
+	force 0,pdata
+	istore 8,contw
+	add alarm,32,contr
+	ifetch 8,contr
+	istore 8,contw
+	istore 8,contw
+	copy timeup,regA
+	copy regA,contw
+	call bn_addmod
+	arg mem_tmp2,regB
+	copy regB,contw
+	add alarm,40,contr
+	ifetch 8,contr
+	istore 8,contw
+	istore 8,contw
+	istore 8,contw
+	copy timeup,regA
+	copy regA,contw
+	branch bn_addmod
+		
+
+bn_load:
+	force 6,loopcnt
+bn_load_0:	
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	loop bn_load_0
+	rtn
+
+
+	/* cost 1562 clks */	
+bn_mulmod:
+	copy contw,timeup					/* save result ptr */
+	arg mem_tmp1,contw
+	call bn_zero
+	arg mem_tmp1,contw
+	copy regA,contr
+	force 0,regext_index
+	call bn_load
+	copy regB,contr
+	call bn_load
+	force 0,regB
+bn_mulmod_1:	
+	force 0,temp
+	force 6,regC
+bn_mulmod_0:
+	ifetch 4,contw					/* d[i+j] */
+	iforce regA
+	copy regB,regext_index
+	deposit regext
+	copy regC,regext_index
+	imul32 regext,pdata
+	iadd regA,pdata					/* uv = a[i]*b[j] + d[i+j] */
+	iadd temp,pdata					/* uv += u */
+	istore 4,contw					/* ->d[i+j] */
+	rshift32 pdata,temp				/* temp = u = uv >> 32 */
+	increase 1,regC
+	compare 12,regC,0xff
+	nbranch bn_mulmod_0,true
+	deposit temp
+	istore 4,contw					/* d[i + 12] = u */
+	increase -24,contw
+	increase 1,regB
+	compare 6,regB,0xff
+	nbranch bn_mulmod_1,true
+	arg mem_tmp1,regA
+	copy timeup,contw
+	branch bn_p192mod
+
+	
+bn_sqrmod:
+	copy regA,regB
+	branch bn_mulmod
+
+bn_rshifteven:
+	copy regA,alarm
+bn_rshifteven_1:
+	copy alarm,regA
+	ifetch 1,regA
+	isolate1 0,pdata
+	rtn true
+	call bn_rshift6
+	ifetch 1,regB
+	isolate0 0,pdata
+	branch bn_rshifteven_0,true
+	arg mem_p,regA
+	copy regB,contw
+	call bn_add
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB						/* [6] */
+	increase -24,regB
+bn_rshifteven_0:
+	add regB,24,regA
+	force 7,loopcnt
+	call bn_rshift
+	branch bn_rshifteven_1
+
+	/* cost 141910 clks */
+bn_invmod:
+	copy contw,timeup					/* save result ptr */
+	arg mem_tmp0,contw				/* x */
+	call bn_zero
+	force 0,pdata
+	store 4,mem_tmp5
+	store 4,mem_t2
+	jam 1,mem_tmp0
+	arg mem_tmp1,contw				/* y */
+	call bn_zero
+	arg mem_p,contr
+	arg mem_tmp2,contw				/* a */
+	call memcpy24
+	copy regA,contr
+	arg mem_tmp3,contw				/* b */
+	call memcpy24
+bn_invmod_2:	
+	arg mem_tmp3,contr
+	call bn_eq_zero
+	branch bn_invmod_0,blank
+	arg mem_tmp3,regA
+	arg mem_tmp0,regB
+	call bn_rshifteven
+
+	arg mem_tmp2,regA
+	arg mem_tmp1,regB
+	call bn_rshifteven
+	arg mem_tmp3,regA
+	arg mem_tmp2,regB
+	call bn_bigeq
+	branch bn_invmod_1,positive
+	arg mem_tmp2,regA
+	arg mem_tmp3,regB
+	copy regA,contw
+	call bn_sub
+	arg mem_tmp0,regA
+	arg mem_tmp1,regB
+	copy regB,contw
+	call bn_add
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_2
+bn_invmod_1:
+	arg mem_tmp3,regA
+	arg mem_tmp2,regB
+	copy regA,contw
+	call bn_sub
+	arg mem_tmp1,regA
+	arg mem_tmp0,regB
+	copy regB,contw
+	call bn_add
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_2
+bn_invmod_0:
+	arg mem_tmp0,contw
+	call bn_zero
+	fetch 1,mem_tmp5
+	store 1,mem_tmp0
+	store 1,mem_tmp0a
+	arg mem_tmp0,regA
+	arg mem_tmp1,regB
+	copy regB,contw
+	call bn_addmod
+	arg mem_p,regA
+	arg mem_tmp1,regB
+	copy timeup,contw
+	branch bn_submod
+	
+
+
+	/* cost 64742 clks */
+ecdbl:
+	arg mem_cz,regA
+	arg mem_t2,contw
+	call bn_sqrmod
+	arg mem_t2,regA
+	arg mem_t3,contw
+	call bn_sqrmod
+	arg mem_a,regA
+	arg mem_t3,regB
+	arg mem_t3,contw
+	call bn_mulmod		/* t3=a*z4	*/
+	arg mem_cx,regA
+	arg mem_t2,contw
+	call bn_sqrmod
+	arg mem_t2,contr
+	arg mem_t1,contw
+	call memcpy24
+	arg mem_t1,regA
+	call bn_lshiftmod
+	arg mem_t2,regA
+	arg mem_t1,regB
+	arg mem_t2,contw
+	call bn_addmod
+	arg mem_t2,regA
+	arg mem_t3,regB
+	arg mem_t2,contw
+	call bn_addmod		/* t2=3*x2 + z*z4		D  */
+	arg mem_cx,contr
+	arg mem_t1,contw
+	call memcpy24
+	arg mem_cy,regA
+	arg mem_t3,contw
+	call bn_sqrmod
+	arg mem_t1,regA
+	call bn_lshiftmod
+	arg mem_t1,regA
+	call bn_lshiftmod
+	arg mem_t1,regA		
+	arg mem_t3,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* t1=4x*y2	B	*/
+	arg mem_t3,regA
+	arg mem_t0,contw
+	call bn_sqrmod
+	arg mem_t0,regA
+	call bn_lshiftmod
+	arg mem_t0,regA
+	call bn_lshiftmod		
+	arg mem_t0,regA		
+	call bn_lshiftmod		/* t0=8*y4		C */
+	arg mem_cy,contr
+	arg mem_t3,contw
+	call memcpy24
+	arg mem_t3,regA
+	call bn_lshiftmod
+	arg mem_t3,regA
+	arg mem_cz,regB
+	arg mem_cz,contw
+	call bn_mulmod		
+	arg mem_t2,regA
+	arg mem_t3,contw
+	call bn_sqrmod
+	arg mem_t3,regA
+	arg mem_t1,regB
+	arg mem_t3,contw
+	call bn_submod
+	arg mem_t3,regA
+	arg mem_t1,regB
+	arg mem_cx,contw
+	call bn_submod
+	arg mem_t1,regA
+	arg mem_cx,regB
+	arg mem_t3,contw
+	call bn_submod
+	arg mem_t3,regA
+	arg mem_t2,regB
+	arg mem_t3,contw
+	call bn_mulmod		
+	arg mem_t3,regA
+	arg mem_t0,regB
+	arg mem_cy,contw
+	branch bn_submod
+	
+
+	/* cost 104904	clks */
+ecadd:
+	arg mem_az,regA
+	arg mem_t7,contw
+	call bn_sqrmod
+	arg mem_cx,regA
+	arg mem_t7,regB
+	arg mem_t0,contw
+	call bn_mulmod		/* n1=t0=xa*zb2  */
+	arg mem_az,regA
+	arg mem_t7,regB
+	arg mem_t7,contw
+	call bn_mulmod	
+	arg mem_cy,regA
+	arg mem_t7,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* n2=t1=ya*zb3 */
+	arg mem_cz,regA
+	arg mem_t7,contw
+	call bn_sqrmod
+	arg mem_ax,regA
+	arg mem_t7,regB
+	arg mem_t2,contw
+	call bn_mulmod		/* n3=t2=xb*za2 */
+	arg mem_cz,regA
+	arg mem_t7,regB
+	arg mem_t7,contw
+	call bn_mulmod	
+	arg mem_ay,regA
+	arg mem_t7,regB
+	arg mem_t3,contw
+	call bn_mulmod		/* n4=t3=yb*za3 */
+	arg mem_t0,regA
+	arg mem_t2,regB
+	arg mem_t7,contw
+	call bn_submod		/* n5=t7=n1-n3=t0-t2 */
+	arg mem_t0,regA
+	arg mem_t2,regB
+	arg mem_t0,contw
+	call bn_addmod		/* n7=t0=n1+n3=t0+t2 */
+	arg mem_t1,regA
+	arg mem_t3,regB
+	arg mem_t2,contw
+	call bn_submod		/* n6=t2=n2-n4=t1-t3 */
+	arg mem_t1,regA
+	arg mem_t3,regB
+	arg mem_t1,contw
+	call bn_addmod		/* n8=t1=n2+n4=t1+t3 */
+	arg mem_t1,regA
+	arg mem_t7,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* t1=n8*n5 */
+	arg mem_cz,regA
+	arg mem_az,regB
+	arg mem_t3,contw
+	call bn_mulmod	
+	arg mem_t3,regA
+	arg mem_t7,regB
+	arg mem_cz,contw
+	call bn_mulmod		/* z=za*zb*n5 */
+	arg mem_t7,regA
+	arg mem_t7,contw
+	call bn_sqrmod		/* t7=n5^2 */
+	arg mem_t7,regA
+	arg mem_t0,regB
+	arg mem_t3,contw
+	call bn_mulmod		/* t3=n5^2*n7 */
+	arg mem_t7,regA
+	arg mem_t1,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* t1=n8*n5^3 */
+	arg mem_t2,regA
+	arg mem_cx,contw
+	call bn_sqrmod		
+	arg mem_cx,regA
+	arg mem_t3,regB
+	arg mem_cx,contw
+	call bn_submod		/* x=n6^2-n5^2*n7 */
+	arg mem_cx,contr
+	arg mem_t7,contw
+	call memcpy24
+	arg mem_t7,regA
+	call bn_lshiftmod		/* t7=2*x */
+	arg mem_t3,regA
+	arg mem_t7,regB
+	arg mem_t3,contw
+	call bn_submod		/* t3=n9 */
+	arg mem_t3,regA
+	arg mem_t2,regB
+	arg mem_t2,contw
+	call bn_mulmod		/* t2=n9*n6 */
+	arg mem_t2,regA
+	arg mem_t1,regB
+	arg mem_cy,contw
+	call bn_submod	
+	arg mem_cy,regA
+	arg mem_p,regB
+	arg mem_cy,contw
+	force 0,regC
+	fetch 1,mem_cy
+	isolate1 0,pdata
+	call bn_add,true
+	copy regC,alarm
+	arg mem_cy,regA
+	call bn_rshift6
+	fetch 1,mem_cy5
+	isolate1 0,alarm
+	setflag true,7,pdata
+	store 1,mem_cy5
+	rtn
+
+	/* cost 22276983 clks */
+
+eckp_0:	
+	fetch 1,mem_ec_loopc
+	increase -1,pdata
+	nrtn positive
+	store 1,mem_ec_loopc
+	fetch 1,mem_ec_infinite
+	call ecdbl,blank
+	fetch 1,mem_ec_loopc
+	arg mem_k,contr
+	call bn_testbit
+	branch eckp_0,true
+	fetch 1,mem_ec_infinite
+	nbranch eckp_1,blank
+	call ecadd
+	branch eckp_0
+eckp_1:
+	jam 0,mem_ec_infinite
+	arg mem_ax,contr
+	arg mem_cx,contw
+	call ec_copy
+	branch eckp_0
+
+	/* cost 162522 clks */
+ecunmapz:
+	arg mem_cz,regA
+	arg mem_t3,contw
+	call bn_invmod			/* t3 = 1/z */
+	arg mem_t3,regA
+	arg mem_t1,contw		
+	call bn_sqrmod			/* t1 = 1/z2 */
+	arg mem_cx,regA
+	arg mem_t1,regB
+	arg mem_bx,contw
+	call bn_mulmod
+	arg mem_t3,regA
+	arg mem_t1,regB
+	arg mem_t2,contw			
+	call bn_mulmod			/* t2 = 1/z3 */
+	arg mem_cy,regA
+	arg mem_t2,regB
+	arg mem_by,contw
+	branch bn_mulmod		
+	
+	
+
+sha_endian_swap2:	
+	ifetch 4,contr
+	force 4,regA
+	increase 3,contw
+sha_endian_loop:	
+	istore 1,contw
+	rshift8 pdata,pdata
+	increase -2,contw
+	increase -1,regA
+	nbranch sha_endian_loop,zero
+	increase 5,contw
+	loop sha_endian_swap2
+	rtn	
+
+
+sha_getw:
+	lshift2 queue,pdata
+	iadd timeup,contr
+	ifetch 4,contr
+	rtn
+	
+sha_r:
+	force 16,alarm
+	arg memdat,timeup
+sha_r_loop:	
+	add alarm,-7,queue
+	call sha_getw
+	iforce temp						/* W[t - 7] */
+	add alarm,-16,queue
+	call sha_getw
+	iadd temp,temp					/* W[t-7] + W[t-16] */
+	add alarm,-2,queue
+	call sha_getw
+	shasx pdata,1,pdata
+	iadd temp,temp					/* S1(W[t -  2]) + W[t-7] + W[t-16] */
+	add alarm,-15,queue
+	call sha_getw
+	shasx pdata,0,pdata
+	iadd temp,temp					/* S0(W[t - 15]) + S1(W[t -  2]) + W[t-7] + W[t-16] */
+	lshift2 alarm,pdata
+	iadd timeup,contw
+	istoret 4,contw
+	increase 1,alarm
+	compare 64,alarm,0xff
+	nbranch sha_r_loop,true
+	rtn
+	
+
+sha_init:
+	arg memh0,contr
+	force 7,regext_index
+sha_init_0:	
+	ifetch 4,contr
+	iforce regext
+	increase -1,regext_index
+	branch sha_init_0,positive
+	rtn
+
+sha:
+	bpatchx patch3d_4,mem_patch3d
+	call sha_r		/* preprocessing data into R() */
+	arg memahbak,contw
+	force 0,regext_index
+sha_0:	
+	deposit regext
+	istore 4,contw
+	increase 1,regext_index
+	compare 8,regext_index,0xff
+	nbranch sha_0,true
+	call enable_authrom
+	arg memk,timeup
+	arg memdat,alarm
+	force 64,loopcnt
+sha_loop:	
+	ifetcht 4,alarm
+	ifetch 4,timeup
+	increase 4,timeup
+	increase 4,alarm
+	iadd temp,pdata			/* x+K */
+	force 7,regext_index
+	iadd regext,temp			/* x+K+h */
+	force 4,regext_index
+	shasx regext,3,pdata
+	iadd temp,temp			/* temp = s3(e)+x+K+h */
+	force 5,regext_index
+	deposit regext
+	force 6,regext_index
+	ixor regext,pdata
+	force 4,regext_index
+	iand regext,pdata			/* (e & (f ^ g)) */
+	force 6,regext_index
+	ixor regext,pdata			/* F1(e, f, g) = g ^ (e & (f ^ g)) */
+	iadd temp,temp			/* temp1 = h + S3(e) + F1(e,f,g) + K + x */
+	force 7,regext_index
+	copy temp,regext			/* save to H */
+	force 3,regext_index
+	deposit regext
+	iadd temp,regext			/* save to D */
+	force 0,regext_index
+	deposit regext
+	force 1,regext_index
+	iand regext,temp			/* a & b */
+	ior regext,pdata			/* a | b */			
+	force 2,regext_index
+	iand regext,pdata			/* (c & (a | b)) */
+	ior temp,temp				/* F0:(a & b) | (c & (a | b)) */
+	force 0,regext_index
+	shasx regext,2,pdata
+	iadd temp,pdata			/* temp2 = S2(a) + F0(a,b,c) */
+	force 7,regext_index
+	iadd regext,regext			/* h = temp1 + temp2 */
+	regexrot					/* rotate move h,a-g => a-h */
+	loop sha_loop
+	arg memahbak,contr
+	force 0,regext_index
+sha_1:	
+	ifetch 4,contr
+	iadd regext,regext
+	increase 1,regext_index
+	compare 8,regext_index,0xff
+	nbranch sha_1,true
+	branch disable_authrom
+
+	
+sha_result:
+	arg   memresult,contw
+	force 7,regext_index
+sha_regext_save:
+	deposit regext
+	istore  4,contw 
+	increase -1,regext_index
+	branch   sha_regext_save,positive
+	rtn	
+
+pad_xor:
+//	arg memx_end,contr
+	arg      memdat,contw
+	increase -4,contr
+	sub      loopcnt,16,regA
+pad_xor_0:	    
+	ifetch   4,contr
+	ixor     temp,pdata
+	istore   4,contw	
+	increase -8,contr	
+	loop  pad_xor_0
+	copy     regA,loopcnt
+	deposit  temp
+pad_xor_1:	
+	istore 4,contw
+	loop pad_xor_1
+	rtn
+
+g_noninit_number_confirm:
+	call g_noninit0
+	call sha_result
+	branch g_common0
+
+g_noninit:
+	call g_noninit0
+	branch g_common0
+	
+g_noninit0:
+ 	arg      mem_sp_pubkey_remote_x_end,contr
+	arg      memdat,contw
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_pubkey_local_x_end,contr
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_random_remote_end,contr
+	call     memcpy_dword_swap4
+	call     sha_init
+	call     sha	
+ 	arg      mem_sp_random_local_end,contr
+	arg      memdat,contw
+	branch g_common
+	
+g_init:
+ 	arg      mem_sp_pubkey_local_x_end,contr
+	arg      memdat,contw
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_pubkey_remote_x_end,contr
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_random_local_end,contr
+	call     memcpy_dword_swap4
+	call     sha_init
+	call     sha	
+ 	arg      mem_sp_random_remote_end,contr
+	arg      memdat,contw
+	call g_common
+	branch g_common0
+	
+g_common:	
+	call     memcpy_dword_swap4
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	force    5,loopcnt
+	call memset0
+	setarg 640
+	istore 4,contw
+	branch sha
+g_common0:
+	fetch 4,memresult
+//	store 4,mem_gkey
+	arg 1000,rega
+	idiv rega
+	call wait_div_end
+	remainder pdata
+	store 4,mem_gkey
+	quotient pdata
+	arg 1000,rega
+	idiv rega
+	call wait_div_end
+	remainder pdata
+	arg 1000,rega
+	imul32 rega,pdata
+	fetcht 4,mem_gkey
+	iadd temp,pdata
+	store 4,mem_gkey
+	rtn
+
+function_f1_no_key:
+	jam 0,mem_passkey_1bit
+	branch function_f1_common
+	
+function_f1:
+	fetch 1,mem_ssp_mode_flag
+	bne  SSP_MODE_PASSKEY_ENTRY_FLAG,function_f1_no_key
+function_f1_common:
+	bpatchx patch3d_5,mem_patch3d
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	fetch 2,mem_sp_prarm_stack
+	copy pdata,contr
+	force    4,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	fetch 2,mem_sp_prarm_stack+2
+	copy pdata,contr
+	arg      memdat,contw
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	fetch 2,mem_sp_prarm_stack+4
+	copy pdata,contr
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	istore   3,contw
+	
+	fetch 1,mem_passkey_1bit
+	
+	istore   1,contw
+	force    0,pdata
+	istore   8,contw
+	setarg   0x0388
+	istore   4,contw
+	call     sha
+	call     sha_result
+	arg      memresult,contr
+	arg      memahsave,contw 
+	call     memcpy32
+    
+	setarg   0x5c5c5c
+	lshift8  pdata,temp
+	or_into       0x5c,temp
+	fetch 2,mem_sp_prarm_stack
+	copy pdata,contr
+	force    4,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      memahsave_end,contr
+	arg      memdat,contw
+	force    8,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	call		bn_zero
+	setarg   0x0300
+	istore   4,contw
+	call     sha
+	branch     sha_result
+	
+	
+function_f2:
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	arg      mem_sp_dhkey_end,contr
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	fetch 2,mem_sp_prarm_stack+12
+	copy pdata,contr
+	arg      memdat,contw
+	call     memcpy_dword_swap4
+	fetch 2,mem_sp_prarm_stack+14
+	copy pdata,contr
+	call     memcpy_dword_swap4
+
+	setarg   0x62746c
+	lshift8  pdata,pdata
+	or_into       0x6b,pdata       
+	istore   4,contw
+	arg      mem_addr_value_end,contr
+	force    3,loopcnt
+	call     memcpy_dword_swap
+	
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	force    0,pdata
+	istore   8,contw
+	setarg   0x0380
+	istore   4,contw
+	call     sha
+
+	call     sha_result
+	arg      memresult,contr
+	arg      memahsave,contw 
+	call     memcpy32
+    
+	setarg   0x5c5c5c
+	lshift8  pdata,temp
+	or_into       0x5c,temp
+	arg      mem_sp_dhkey_end,contr 
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      memahsave_end,contr
+	arg      memdat,contw
+	force    8,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	call bn_zero
+	setarg   0x0300
+	istore   4,contw
+	call     sha
+	branch     sha_result
+	
+
+function_f3a:
+	fetch 1,mem_ssp_mode_flag
+	bne  SSP_MODE_PASSKEY_ENTRY_FLAG,function_f3a_no_pin
+function_f3a_common:
+	bpatchx patch3d_6,mem_patch3d
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	arg      mem_sp_dhkey_end,contr
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      mem_sp_random_remote_end,contr
+	arg      memdat,contw
+	call     memcpy_dword_swap4
+	arg      mem_sp_random_local_end,contr
+	call     memcpy_dword_swap4
+	branch function_f3_common
+
+function_f3a_no_pin:
+	setarg 0
+	store 4,mem_pin
+	branch function_f3a_common
+
+function_f3b_no_pin:
+	setarg 0
+	store 4,mem_pin
+	branch function_f3b_common
+
+
+function_f3b:
+	fetch 1,mem_ssp_mode_flag
+	bne  SSP_MODE_PASSKEY_ENTRY_FLAG,function_f3b_no_pin
+function_f3b_common:
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	arg      mem_sp_dhkey_end,contr
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+
+	arg      mem_sp_random_local_end,contr
+	arg      memdat,contw
+	call     memcpy_dword_swap4
+	arg      mem_sp_random_remote_end,contr
+	call     memcpy_dword_swap4
+function_f3_common:    
+	setarg   0x0    
+	istore   8,contw
+	istore   4,contw
+	fetch 4,mem_pin
+	istore   4,contw
+	
+	copy     contw,temp
+	jam      0x80,mem_addr_padding
+	copy     temp,contw
+	arg      mem_addr_iocap_end,contr
+	call     memcpy_dword_swap4
+
+	call     sha
+    
+	arg      memdat,contw
+	force 7,loopcnt
+	call memset0
+	istore   4,contw
+	setarg   0x03F8
+	istore   4,contw
+	call     sha
+	call     sha_result
+	
+	arg      memresult,contr
+	arg      memahsave,contw 
+	call     memcpy32
+    
+	setarg   0x5c5c5c
+	lshift8  pdata,temp
+	or_into       0x5c,temp
+	arg      mem_sp_dhkey_end,contr 
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      memahsave_end,contr
+	arg      memdat,contw
+	force    8,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	call bn_zero
+	setarg   0x0300
+	istore   4,contw
+	call     sha	
+	branch     sha_result
+		
+/*
+eckp:
+	jam 192,mem_ec_loopc
+	jam 1,mem_ec_infinite
+*/
+eckp_calc_init:
+	jam      192,mem_ec_loopc
+eckp_calc_init_1:    
+	fetch    1,mem_ec_loopc
+	rtn      blank
+	increase -1,pdata
+	store    1,mem_ec_loopc 	
+	arg      mem_k,contr
+	call     bn_testbit
+	branch eckp_calc_init_1,true
+	arg      mem_ax,contr
+	arg      mem_cx,contw
+	branch     ec_copy	
+	
+eckp_calc:
+	call     ecdbl  
+	fetch    1,mem_ec_loopc
+	increase -1,pdata
+	store    1,mem_ec_loopc
+	arg      mem_k,contr
+	call     bn_testbit
+	rtn	true
+	branch     ecadd                
+	             
+memcpy_dword_swap4:
+	force 4,loopcnt
+memcpy_dword_swap:
+	increase -4,contr
+memcpy_dword_swap_loop:
+	ifetch   4,contr
+	istore   4,contw
+	increase -8,contr
+	loop   memcpy_dword_swap_loop 
+    	rtn
+
+	
+
+
+sp_initialize_256:	
+	bpatchx patch3d_7,mem_patch3d
+	fetch 1,mem_le_secure_connect_enable
+	branch  le_secure_connection_disable,blank
+	call le_secure_connection_enable
+	call sp_clear_flags
+//	jam SP_KEY_INVALID_256,mem_le_sc_local_key_invalid
+	branch sp_pubkey_calc_256
+    	
+
+
+
+sp_pubkey_calc_256:
+	fetch    1,mem_le_sc_local_key_invalid
+	rtnne SP_KEY_INVALID
+	fetch    1,mem_le_sc_calc
+	rtnne  SP_CALC_STANDBY
+	
+	arg      mem_le_private_key_256,contw 
+	force    15,queue
+	call     random_generator
+	random   pdata
+	rshift   pdata,pdata
+	istore   2,contw 
+
+	arg      mem_k_256,contw
+	arg      mem_le_private_key_256,contr	
+	call     memcpy32 //mem_sp_private_key=>mem_k 
+
+	arg      mem_ax_256,contw
+	arg      mem_gx_256,contr
+	call     memcpy64 //mem_gx=>mem_ax 
+	
+	arg      mem_az_256,contw
+	call      clear_mem_256
+	jam      1,mem_az_256 //0=>mem_az 
+
+	call     eckp_calc_init_256
+	jam SP_CALC_PUBKEY_256,mem_le_sc_calc
+	rtn    
+
+sp_pubkey_generated_256:
+	arg      mem_le_pubkey_local_x_256,contw
+	arg      mem_bx_256,contr
+	call     memcpy64   
+	jam      SP_KEY_VALID_256,mem_le_sc_local_key_invalid
+	jam      SP_CALC_STANDBY,mem_le_sc_calc
+	rtn
+	
+
+
+sp_dhkey_calc_256:
+	fetch    1,mem_sp_dhkey_invalid
+	rtnne  SP_KEY_INVALID
+	fetch    1,mem_le_sc_calc
+	rtnne  SP_CALC_STANDBY
+
+	arg      mem_k_256,contw
+	arg      mem_le_private_key_256,contr	
+	call     memcpy32
+
+	arg      mem_ax_256,contw
+	arg      mem_le_pubkey_remote_x_256,contr
+	call     memcpy64
+
+	arg      mem_az_256,contw
+	call     clear_mem_256
+	jam      1,mem_az_256 //0=>mem_az 
+
+	call     eckp_calc_init_256
+	jam     SP_CALC_DHKEY_256,mem_le_sc_calc
+	rtn 
+
+
+sp_dhkey_generated_256:
+//	jam SP_FLAG_COMMIT,mem_sp_dh_ready
+	arg mem_le_dhkey_256,contw
+	arg mem_bx_256,contr
+	call memcpy32
+	jam SP_KEY_VALID_256,mem_sp_dhkey_invalid
+	jam SP_CALC_STANDBY,mem_le_sc_calc
+	rtn
+
+
+
+sp_calc_sequence_256:
+	fetch 1,mem_le_secure_connect_enable
+	rtn blank
+	fetch 1,mem_le_sc_calc
+	rtn blank
+	increase 0x80,pdata
+	store    1,mem_le_sc_calc
+	rtnbit1 7
+	fetch    2,mem_ec_loopc
+	branch   sp_calc_sequence_done_256,blank
+	branch   eckp_calc_256
+
+sp_calc_sequence_done_256:    
+	bpatchx patch3e_0,mem_patch3e
+	call ecunmapz_256
+	fetch 1,mem_le_sc_calc
+	beq  SP_CALC_PUBKEY_256,sp_pubkey_generated_256
+	beq  SP_CALC_DHKEY_256,sp_dhkey_generated_256
+	rtn
+
+
+eckp_calc_256:
+	call     ecdbl_256  
+	fetch    2,mem_ec_loopc
+	increase -1,pdata
+	store    2,mem_ec_loopc
+	arg      mem_k_256,contr
+	call     bn_testbit
+	rtn	true
+	branch     ecadd_256   
+
+eckp_calc_init_256:
+	bpatchx patch3e_1,mem_patch3e
+	setarg 256,pdata
+	store 2,mem_ec_loopc
+eckp_calc_init_256_1:    
+	fetch    2,mem_ec_loopc
+	rtn      blank
+	increase -1,pdata
+	store    2,mem_ec_loopc
+	arg      mem_k_256,contr
+	call     bn_testbit
+	branch eckp_calc_init_256_1,true
+	arg      mem_ax_256,contr
+	arg      mem_cx_256,contw
+	branch     memcpy96	
+
+
+ecunmapz_256:
+	arg mem_cz_256,regA
+	arg mem_t3_256,contw
+	call bn_invmod_256			/* t3 = 1/z */
+	arg mem_t3_256,regA
+	arg mem_t1_256,contw		
+	call bn_sqrmod_256			/* t1 = 1/z2 */
+	arg mem_cx_256,regA
+	arg mem_t1_256,regB
+	arg mem_bx_256,contw
+	call bn_mulmod_256
+	arg mem_t3_256,regA
+	arg mem_t1_256,regB
+	arg mem_t2_256,contw			
+	call bn_mulmod_256			/* t2 = 1/z3 */
+	arg mem_cy_256,regA
+	arg mem_t2_256,regB
+	arg mem_by_256,contw
+	branch bn_mulmod_256	
+	
+ecdbl_256:
+	arg mem_cz_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256
+	arg mem_t2_256,regA
+	arg mem_t3_256,contw
+	call bn_sqrmod_256
+//call ice_break
+	arg mem_a_256,regA
+	arg mem_t3_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256		/* t3=a*z4	*/
+	arg mem_cx_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256
+//call ice_break
+	arg mem_t2_256,contr
+	arg mem_t1_256,contw
+	call memcpy32
+	arg mem_t1_256,regA
+	call bn_lshiftmod_256
+	arg mem_t2_256,regA
+	arg mem_t1_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256
+//call ice_break
+	arg mem_t2_256,regA
+	arg mem_t3_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256		/* t2=3*x2 + z*z4		D  */
+//call ice_break
+	arg mem_cx_256,contr
+	arg mem_t1_256,contw
+	call memcpy32
+	arg mem_cy_256,regA
+	arg mem_t3_256,contw
+	call bn_sqrmod_256
+	arg mem_t1_256,regA
+	call bn_lshiftmod_256
+	arg mem_t1_256,regA
+	call bn_lshiftmod_256
+	arg mem_t1_256,regA		
+	arg mem_t3_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		//S = 4X1Y1^2/* t1=4x*y2	B	*/
+	arg mem_t3_256,regA
+	arg mem_t0_256,contw
+	call bn_sqrmod_256
+	arg mem_t0_256,regA
+	call bn_lshiftmod_256
+	arg mem_t0_256,regA
+	call bn_lshiftmod_256		
+	arg mem_t0_256,regA		
+	call bn_lshiftmod_256	//T = 8Y1^4	/* t0=8*y4		C */
+	arg mem_cy_256,contr
+	arg mem_t3_256,contw
+	call memcpy32
+	arg mem_t3_256,regA
+	call bn_lshiftmod_256
+	arg mem_t3_256,regA
+	arg mem_cz_256,regB
+	arg mem_cz_256,contw
+	call bn_mulmod_256		//z = 2Y1Z1
+
+
+	arg mem_t2_256,regA
+	arg mem_t3_256,contw
+	call bn_sqrmod_256   // M ^2
+//call ice_break
+	arg mem_t3_256,regA
+	arg mem_t1_256,regB
+	arg mem_t3_256,contw
+	call bn_submod_256  // t2^2 - 4*cx *cy^2 
+	arg mem_t3_256,regA
+	arg mem_t1_256,regB
+	arg mem_cx_256,contw
+	call bn_submod_256   //X2
+	arg mem_t1_256,regA
+	arg mem_cx_256,regB
+	arg mem_t3_256,contw
+	call bn_submod_256   //S-X2
+	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	//M(S-X2)	
+	arg mem_t3_256,regA
+	arg mem_t0_256,regB
+	arg mem_cy_256,contw
+	branch bn_submod_256  //M(S-X2)-T Y2	
+
+ecadd_256:
+
+	arg mem_az_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256
+	arg mem_cx_256,regA
+	arg mem_t7_256,regB
+	arg mem_t0_256,contw
+	call bn_mulmod_256		/* n1=t0=xa*zb2 U1 = X1Z0^2*/
+
+
+	arg mem_az_256,regA
+	arg mem_t7_256,regB
+	arg mem_t7_256,contw
+	call bn_mulmod_256	
+	arg mem_cy_256,regA
+	arg mem_t7_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		/* n2=t1=ya*zb3   S1 = Y1Z0^3*/
+
+
+	arg mem_cz_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256
+	arg mem_ax_256,regA
+	arg mem_t7_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256		/* n3=t2=xb*za2  U0 = X0Z1^2*/
+
+	arg mem_cz_256,regA
+	arg mem_t7_256,regB
+	arg mem_t7_256,contw
+	call bn_mulmod_256	
+	arg mem_ay_256,regA
+	arg mem_t7_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256		/* n4=t3=yb*za3 S0 = Y0Z1^3*/
+
+
+//	arg mem_t0_256,regA
+//	arg mem_t2_256,regB
+	arg mem_t0_256,regb
+	arg mem_t2_256,rega
+	arg mem_t7_256,contw
+	call bn_submod_256		/* n5=t7=n1-n3=t0-t2   W=U1-U0*/
+	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	call bn_addmod_256		/* n7=t0=n1+n3=t0+t2    T=U1+U0 */
+//	arg mem_t1_256,regA
+//	arg mem_t3_256,regB
+	arg mem_t1_256,regb
+	arg mem_t3_256,rega
+	arg mem_t2_256,contw
+	call bn_submod_256		/* n6=t2=n2-n4=t1-t3  S1-S0 */
+	arg mem_t1_256,regA
+	arg mem_t3_256,regB
+	arg mem_t1_256,contw
+	call bn_addmod_256		/* n8=t1=n2+n4=t1+t3 M=S1+S0*/
+	arg mem_t1_256,regA
+	arg mem_t7_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		/* t1=n8*n5     MW */
+	arg mem_cz_256,regA
+	arg mem_az_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	      //Z0Z1
+	arg mem_t3_256,regA
+	arg mem_t7_256,regB
+	arg mem_cz_256,contw
+	call bn_mulmod_256		/* z=za*zb*n5   Z0Z1W */
+
+	arg mem_t7_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256		/* t7=n5^2 */
+	arg mem_t7_256,regA
+	arg mem_t0_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256		/* t3=n5^2*n7 */
+	arg mem_t7_256,regA
+	arg mem_t1_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		/* t1=n8*n5^3 */
+	arg mem_t2_256,regA
+	arg mem_cx_256,contw
+	call bn_sqrmod_256		
+	arg mem_cx_256,regA
+	arg mem_t3_256,regB
+	arg mem_cx_256,contw
+	call bn_submod_256		/* x=n6^2-n5^2*n7 */
+	arg mem_cx_256,contr
+	arg mem_t7_256,contw
+	call memcpy32
+	arg mem_t7_256,regA
+	call bn_lshiftmod_256		/* t7=2*x */
+	arg mem_t3_256,regA
+	arg mem_t7_256,regB
+	arg mem_t3_256,contw
+	call bn_submod_256		/* t3=n9 */
+	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256		/* t2=n9*n6 */
+	arg mem_t2_256,regA
+	arg mem_t1_256,regB
+	arg mem_cy_256,contw
+	call bn_submod_256	
+	arg mem_cy_256,regA
+	arg mem_p_256,regB
+	arg mem_cy_256,contw
+	force 0,regC
+	fetch 1,mem_cy_256
+	isolate1 0,pdata
+	call bn_add_256,true
+	copy regC,alarm
+	arg mem_cy_256,regA
+	call bn_rshift_256
+	fetch 1,mem_cy5_256
+	isolate1 0,alarm
+	setflag true,7,pdata
+	store 1,mem_cy5_256
+	rtn	
+
+bn_invmod_256:
+	copy contw,timeup					 
+	arg mem_tmp0_256,contw			 
+	call clear_mem_256
+	force 0,pdata
+//	store 4,mem_tmp52
+	store 4,mem_t2_256
+	jam 1,mem_tmp0_256      //y1
+	arg mem_tmp1_256,contw	//y2			 
+	call clear_mem_512      
+	arg mem_p_256,contr
+	arg mem_tmp2_256,contw		//j		 
+	call memcpy32
+	copy regA,contr
+	arg mem_tmp3_256,contw		//i		 
+	call memcpy32
+	
+//	arg mem_tmp22,regA
+//	arg mem_tmp32,regB
+//	call p_bn_bigeq_256
+//	branch assert,positive
+bn_invmod_256_2:	
+	arg mem_tmp3_256,contr
+	call bn_eq_zero_256
+	branch bn_invmod_256_0,blank
+//call ice_break    	
+//fetch 1,0x4ffe
+//increase 1,pdata
+//store 1,0x4ffe
+	arg mem_tmp3_256,regA
+	arg mem_tmp0_256,regB
+	call bn_rshifteven_256
+	arg mem_tmp2_256,regA
+	arg mem_tmp1_256,regB
+	call bn_rshifteven_256
+	
+	arg mem_tmp3_256,regA
+	arg mem_tmp2_256,regB
+	call bn_bigeq_256
+	branch bn_invmod_256_1,positive
+	arg mem_tmp2_256,regA
+	arg mem_tmp3_256,regB
+	copy regA,contw
+	call bn_sub_256
+	arg mem_tmp0_256,regA
+	arg mem_tmp1_256,regB
+	copy regB,contw
+	call bn_add_256
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_256_2
+bn_invmod_256_1:
+	arg mem_tmp3_256,regA
+	arg mem_tmp2_256,regB
+	copy regA,contw
+	call bn_sub_256
+	arg mem_tmp1_256,regA
+	arg mem_tmp0_256,regB
+	copy regB,contw
+	call bn_add_256
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_256_2
+bn_invmod_256_0:
+//call ice_break
+	arg mem_tmp1_256,regA
+	copy timeup,contw
+	call  bn_p256mod
+//call ice_break
+	arg mem_p_256,regA
+	copy timeup,regB
+	copy timeup,contw
+	branch bn_submod_256
+
+
+bn_mulmod_256:
+	copy contw,timeup					/* save result ptr */
+	
+	force 0,regext_index
+	
+	arg mem_tmp1_256,contw
+	call clear_mem_512
+	arg mem_regext,contw
+	call clear_mem_512
+//	jam 0,mem_regext_index
+
+//	arg mem_tmp12,contw
+	copy regA,contr
+//	force 0,regext_index
+	jam 0,mem_regext
+	setarg 0
+	call bn_load_mem
+	copy regB,contr
+	call bn_load_256
+//	force 0,regB
+//	jam 0,mem_regb
+	force 0,queue
+	arg mem_tmp1_256,contw	
+bn_mulmod_256_1:	
+//	copy regb,pdata
+//	store 1,
+	arg mem_regext,temp
+	copy queue,regb
+	lshift2 regb,pdata
+//	lshift4 pdata,pdata
+	iadd temp,regb	
+	force 0,temp
+	force 0,regC
+bn_mulmod_256_0:
+//	copy contw,pdata
+//	store 2,mem_contw
+//call ice_break
+//	copy pdata,contw
+	ifetch 4,contw					/* d[i+j] */
+	iforce regA
+//	copy regB,regext_index
+//	deposit regext
+	ifetch 4,regb
+	copy regC,regext_index
+	imul32 regext,pdata
+	iadd regA,pdata					/* uv = a[i]*b[j] + d[i+j] */
+	iadd temp,pdata					/* uv += u */
+	istore 4,contw					/* ->d[i+j] */
+	rshift32 pdata,temp				/* temp = u = uv >> 32 */
+	increase 1,regC
+	compare 8,regC,0xff
+	nbranch bn_mulmod_256_0,true
+//call ice_break
+	deposit temp
+	istore 4,contw					/* d[i + 12] = u */
+	increase -32,contw
+//	fetch 1,mem_regb
+//	copy pdata,regb
+	increase 1,queue
+	compare 8,queue,0xff
+	nbranch bn_mulmod_256_1,true
+	arg mem_tmp1_256,regA
+	copy timeup,contw
+	branch bn_p256mod
+
+bn_p256mod:
+	bpatchx patch3e_2,mem_patch3e
+	copy contw,timeup				/* save result ptr */
+	copy regA,alarm				/* temp save regA */
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	call memset0_4	
+	istore 8,contw
+	add regA,44,contr
+	call memcpy8
+	call memcpy12
+	copy regb,rega
+	call  bn_lshiftmod_256 //2S1
+	arg mem_tmp2_256,regB
+	copy alarm,rega   
+	copy timeup,contw
+	call bn_addmod_256 //T+2S1
+//call ice_break	
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	call memset0_4	
+	istore 8,contw
+	add alarm,48,contr
+	call memcpy16
+	call memset0_4	
+	copy regb,rega
+	call  bn_lshiftmod_256 //2S2
+//call ice_break	
+//	arg 0,regB
+
+	arg mem_tmp2_256,regB
+	copy timeup,rega   
+	copy regA,contw	
+	call bn_addmod_256  //+2S2
+//call ice_break	
+//	arg 0,regB
+		
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,32,contr
+	call memcpy12
+	call memset0_4	
+	istore 8,contw
+	add alarm,56,contr
+	call memcpy8
+	copy timeup,regA
+	copy regA,contw
+	call bn_addmod_256 //+S3
+//call ice_break	
+//	arg 0,regB
+
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,36,contr
+	call memcpy12
+	add alarm,52,contr	
+	call memcpy12
+	add alarm,52,contr
+	call memcpy4
+	add alarm,32,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_addmod_256 //+S4	
+//call ice_break	
+//	arg 1,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,44,contr
+	call memcpy12
+	call memset0_4	
+	istore 8,contw
+	add alarm,32,contr
+	call memcpy4
+	add alarm,40,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_submod_256 //-D1	
+//call ice_break	
+//	arg 2,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,48,contr
+	call memcpy8
+	call memcpy8
+	force 0,pdata
+	istore 8,contw
+	add alarm,36,contr
+	call memcpy4
+	add alarm,44,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_submod_256 //-D2	
+//call ice_break	
+//	arg 3,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,52,contr
+	call memcpy12
+	add alarm,32,contr
+	call memcpy12
+	call memset0_4	
+	add alarm,48,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_submod_256 //-D3
+//call ice_break	
+//	arg 4,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,56,contr
+	call memcpy8
+	call memset0_4	
+	add alarm,36,contr
+	call memcpy12
+	call memset0_4	
+	add alarm,52,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	branch  bn_submod_256 //-D4	
+
+
+bn_load_mem:
+	force 32,loopcnt
+	arg mem_regext,contw
+	iadd contw,contw
+	branch memcpy
+
+bn_load_256:
+	force 8,loopcnt
+	branch bn_load_0
+
+bn_sqrmod_256:
+	copy regA,regB
+	branch bn_mulmod_256
+
+bn_add_256:
+	force 8,loopcnt
+ 	branch bn_add+1
+
+bn_addmod_256:
+	call bn_add_256
+	copy contw,regA
+	branch bn_lshiftmod_ismod_256
+
+bn_lshiftmod_256:
+	call bn_lshift_256
+bn_lshiftmod_ismod_256:	
+	isolate1 0,regC
+	branch bn_lshiftmod_p_256,true
+	arg mem_p_256,regB
+	copy regA,regC
+	increase -32,regA
+	call bn_bigeq_256
+	nrtn positive
+	copy regC,regA
+	branch sub_p2_256
+	
+bn_lshiftmod_p_256:
+	call sub_p2_256
+//	nrtn true
+	copy regA,regC
+	increase -32,regA
+	arg mem_p_256,regB
+	call bn_bigeq_256
+	nrtn positive
+	copy regC,regA
+	branch sub_p2_256
+		
+	
+sub_p2_256:
+	increase -32,regA
+	arg mem_p_256,regB
+	copy regA,contw
+	branch bn_sub_256
+	
+
+
+	
+bn_submod_256:
+	call bn_sub_256
+//	isolate1 0,regC
+	branch  bn_submod_256_np,true
+//	copy regA,regC
+//	increase -32,regA
+	add contw,-32,regA
+	arg mem_p_256,regB
+	call bn_bigeq_256
+	nrtn positive
+	arg mem_p_256,regB
+	add contw,-32,regA
+//	copy regC,regA
+	copy rega,contw
+	branch  bn_sub_256
+bn_submod_256_np:	
+	add contw,-32,regA
+	arg mem_p_256,regB
+	copy regA,contw
+	call bn_add_256
+//	isolate1 0,regC
+	rtn true
+	add contw,-32,regA
+	arg mem_p_256,regB
+	copy regA,contw
+	branch bn_add_256	
+
+
+ 
+bn_sub_256:
+	force 8,loopcnt
+	branch bn_sub+1
+
+bn_rshift_256:
+	force 8,loopcnt
+	increase 28,regA
+	branch bn_rshift
+
+bn_lshift_256:
+	force 8,loopcnt
+	force 0,regC
+	branch bn_lshift_0
+
+bn_bigeq_256:
+	force 8,loopcnt
+	increase 28,regA
+	increase 28,regB
+	branch bn_bigeq_0
+
+
+bn_eq_zero_256:
+	ifetch 8,contr
+	nrtn blank
+	branch bn_eq_zero
+
+
+
+	
+bn_rshifteven_256:
+	copy regA,alarm
+bn_rshifteven_256_1:
+	copy alarm,regA
+	ifetch 1,regA
+	isolate1 0,pdata
+	rtn true
+	call bn_rshift_256
+	ifetch 1,regB
+	isolate0 0,pdata
+	branch bn_rshifteven_256_0,true
+	arg mem_p_256,regA
+	copy regB,contw
+	call bn_add_256
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB						 
+	increase -32,regB
+bn_rshifteven_256_0:
+	add regB,32,regA
+	force 9,loopcnt
+	call bn_rshift
+	branch bn_rshifteven_256_1		
+
+
+
+ui_init:
+	call lpm_disable_exen_output
+	rtn wake
+	call ui_button_init
+	call ui_timer_init
+	branch ui_led_init_global
+
+ui_dispatch:
+	call ui_led_dispatch
+	
+	branch ui_timer_check
+	
+ui_button_init:
+	fetch 1,mem_ui_button_gpio
+	rtneq UI_BUTTON_GPIO_DISABLE
+	iforce temp
+	call gpio_config_output
+	fetcht 1,mem_ui_button_gpio
+	call gpio_out_inactive
+	nop 100
+	fetcht 1,mem_ui_button_gpio
+	call gpio_config_input
+	branch ui_button_polling
+
+
+	
+ui_button_polling:
+	bpatchx patch3e_3,mem_patch3e
+	fetch 1,mem_ui_button_gpio
+	rtneq UI_BUTTON_GPIO_DISABLE
+	copy pdata,temp
+	call gpio_get_bit
+	nbranch ui_button_up,true
+	//fall through
+ui_button_down:
+	call ui_button_check_long_press
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BTN_DOWN
+	store 2,mem_ui_state_map
+	fetch 1,mem_ui_button_last_state
+	rtneq UI_BUTTON_STATE_DOWN
+	jam UI_BUTTON_STATE_DOWN,mem_ui_button_last_state
+	//Down Edge
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_ui_button_timer //start long press timer
+	call lpm_button_get_wake_lock
+	jam BT_EVT_BUTTON_DOWN,mem_fifo_temp
+	branch ui_ipc_send_event
+ui_button_up:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BTN_DOWN
+	store 2,mem_ui_state_map
+	fetch 1,mem_ui_button_last_state
+	rtneq UI_BUTTON_STATE_UP
+	jam UI_BUTTON_STATE_UP,mem_ui_button_last_state
+	//Up Edge
+	jam 0,mem_ui_button_timer//stop long press timer
+	call lpm_button_clean_wake_lock
+	jam BT_EVT_BUTTON_UP,mem_fifo_temp
+	branch ui_ipc_send_event
+
+ui_button_check_long_press:
+	fetch 1,mem_ui_button_timer
+	rtn blank
+	increase -1,pdata
+	store 1,mem_ui_button_timer
+	nrtn blank
+	//Long Press
+	jam BT_EVT_BUTTON_LONG_PRESSED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+lpm_button_get_wake_lock:
+	arg wake_lock_button,queue
+	branch lpm_get_wake_lock
+	
+lpm_button_clean_wake_lock:
+	arg wake_lock_button,queue
+	branch lpm_put_wake_lock
+
+
+
+/***********************ui led function****************************/
+/******************
+led function
+
+ui_led_init_global
+ui_led_on_global
+
+ui_led_off_global
+//input:rega :struct number
+ui_led_blink_start_global
+
+//input:rega :struct number
+//contr: the point that want to set led style address
+ui_led_set_style_global
+
+******************/
+//input:rega :struct number
+//output:regb :current strutct starting pointer
+calc_curr_struct_prt:
+	fetch 2,mem_ui_led_struct_ptr
+	mul32 rega,LED_OFFSET_LENGTH,regb
+	iadd regb,regb
+	rtn
+
+
+ui_led_init_global:
+	fetch 1,mem_ui_led_struct_num
+	rtn blank
+	copy pdata,loopcnt
+	fetch 2,mem_ui_led_struct_ptr
+	copy pdata,regb
+ui_led_init_loop:
+	add regb,LED_OFFSET_LED_GPIO,regc
+	ifetcht 1,regc
+	call gpio_config_output
+	call ui_led_off_static
+	increase LED_OFFSET_LENGTH,regb
+	loop ui_led_init_loop
+	rtn
+
+	
+//input:rega :struct number
+ui_led_on_global:
+	call calc_curr_struct_prt
+	setarg UI_LED_STATE_LIGHTING
+	istore 1,regb
+	call ui_led_stop_timer
+	branch ui_led_on_static
+
+	
+//input:rega :struct number
+ui_led_blink_stop_global:
+ui_led_off_global:
+	call calc_curr_struct_prt
+	setarg UI_LED_STATE_DARKING
+	istore 1,regb
+	call ui_led_stop_timer
+	branch ui_led_off_static
+
+
+//input:rega :struct number
+ui_led_blink_start_global:
+	call calc_curr_struct_prt
+	setarg UI_LED_STATE_BLINK_START
+	istore 1,regb
+	setarg LED_INFINITE_FLASH_NUM
+	istore 1,contw
+	branch ui_led_off_static
+
+
+//input:rega :struct number
+//REGC: the point that want to set led style address
+ui_led_set_style_global:
+	call calc_curr_struct_prt
+	arg LED_OFFSET_LENGTH,loopcnt
+	copy regc,contr
+	copy regb,contw
+	branch memcpy_fast
+
+
+
+ui_led_dispatch:
+	fetch 1,mem_ui_led_struct_num
+	rtn blank
+	arg 0,rega
+ui_led_blink_polling:
+	call ui_led_change_style_by_type
+	increase 1,rega
+	fetch 1,mem_ui_led_struct_num
+	isub rega,null
+	rtn zero
+	branch ui_led_blink_polling
+
+
+ui_led_off_static:
+	add regb,LED_OFFSET_LED_GPIO,regc
+	ifetcht 1,regc
+	branch gpio_out_inactive
+
+
+ui_led_on_static:
+	add regb,LED_OFFSET_LED_GPIO,regc
+	ifetcht 1,regc
+	branch gpio_out_active
+
+
+//input:rega :struct number
+ui_led_change_style_by_type:
+	add rega,ui_led_blink,queue
+	call timer_check
+	nrtn blank			//timer out
+	
+	call calc_curr_struct_prt
+
+	ifetch 1,regb			//led type
+
+	beq UI_LED_STATE_LIGHTING,ui_led_on_static
+	beq UI_LED_STATE_DARKING,ui_led_off_static
+	beq UI_LED_STATE_BLINK_STOP,ui_led_off_static
+	beq UI_LED_STATE_BLINK_DARKING,ui_led_blink_state_darking
+ui_led_blink_state_lighting:
+	call ui_led_on_static
+	add regb,LED_OFFSET_CB_LEDON,regc
+	call push_stack
+	ifetch 2,regc
+	call callback_func
+	call pop_stack
+	setarg UI_LED_STATE_BLINK_DARKING
+	istore 1,regb
+	add regb,LED_OFFSET_ON_TIME,regc
+	ifetch 2,regc
+	branch ui_led_blink_timer_start
+	
+
+ui_led_blink_state_darking:
+	call ui_led_off_static
+	add regb,LED_OFFSET_CB_LEDOFF,regc
+	call push_stack
+	ifetch 2,regc
+	call callback_func
+	call pop_stack
+	
+	add regb,LED_OFFSET_BLINK_COUNT,regc
+	ifetch 1,regc
+	beq LED_INFINITE_FLASH_NUM,ui_led_blink_infinite
+	increase -1,pdata
+	istore 1,regc
+	branch ui_led_blink_stop_global,blank		//End of flicker
+ui_led_blink_infinite:
+	setarg UI_LED_STATE_BLINK_LIGHTING
+	istore 1,regb
+	add regb,LED_OFFSET_OFF_TIME,regc
+	ifetch 2,regc
+ui_led_blink_timer_start:
+	add rega,ui_led_blink,queue
+	branch timer_init
+
+ui_led_stop_timer:
+	setarg 0
+	branch ui_led_blink_timer_start
+
+/***********************ui led function ending****************************/
+
+
+
+ui_timer_timeout:
+	setarg 0x1000
+	lshift16 pdata,pdata
+	iadd regb,regb
+	rtn
+	
+ui_timer_check:
+	bpatchx patch3e_4,mem_patch3e
+	arg 0,rega
+	fetcht 4,mem_ui_timer_last_btclk
+	copy clkn_bt,regb
+	copy regb,pdata
+	isub temp,null
+	ncall ui_timer_timeout,positive
+	//call ice_break
+ui_timer_check_loop:
+	copy regb,pdata
+	increase 160,temp    //320btclk = 100ms
+	increase 160,temp
+	isub temp,null
+	nbranch ui_timer_check_end,positive
+	increase 1,rega   //increase 1 every 100ms count
+	and rega,0x0f,pdata
+	nbranch ui_timer_check_loop,blank
+	arg 0,rega  //reset timer if it's longer than 1.5s between 2 checks
+	call ui_timer_check_send_evt
+ui_timer_init:
+	copy clkn_bt,pdata
+	store 4,mem_ui_timer_last_btclk
+	rtn
+ui_timer_check_end:
+	bpatchx patch3e_5,mem_patch3e
+	copy rega,pdata
+	rtn blank
+	increase -160,temp    //320btclk = 100ms
+	increase -160,temp
+	set0 28,temp
+	storet 4,mem_ui_timer_last_btclk
+ui_timer_check_send_evt:
+	branch app_evt_timer
+
+	
+
+//**********************************************************//
+//************UI Inter-Processor Communication*******//
+//**********************************************************//
+ui_ipc_get_lock:
+	jam 1,mem_ipc_lock_bt
+ui_ipc_get_lock_wait:
+	fetch 1,mem_ipc_lock_c51
+	nbranch ui_ipc_get_lock_wait,blank
+	rtn
+	
+ui_ipc_put_lock:
+	jam 0,mem_ipc_lock_bt
+	rtn
+	
+
+	
+ui_ipc_send_event:
+	bpatchx patch3e_6,mem_patch3e
+	call ui_ipc_get_lock
+	copy rega,pdata
+	store 4,mem_ipc_rega_temp
+	arg mem_ipc_fifo_bt2c51,rega
+	call fifo_in
+	fetch 4,mem_ipc_rega_temp
+	copy pdata,rega
+	branch ui_ipc_put_lock
+
+ui_ipc_send_cmd:
+	bpatchx patch3e_7,mem_patch3e
+	call ui_ipc_get_lock
+	copy rega,pdata
+	store 4,mem_ipc_rega_temp	
+	arg mem_ipc_fifo_c512bt,rega
+	call fifo_in
+	fetch 4,mem_ipc_rega_temp
+	copy pdata,rega	
+	branch ui_ipc_put_lock
+
+ui_ipc_clean_all_fifo:
+	setarg 0
+	store UTIL_FIFO_LEN,mem_ipc_fifo_c512bt
+	store UTIL_FIFO_LEN,mem_ipc_fifo_bt2c51
+	rtn
+	
+check_51cmd:
+	bpatchx patch3f_0,mem_patch3f
+	fetch 1,mem_hci_cmd
+	nrtn blank
+	arg mem_ipc_fifo_c512bt,rega
+	call fifo_is_empty
+	rtn blank
+	jam IPC_CONTINUE_PROCESS,mem_ipc_skip_continue_proc
+	call check_51cmd_once
+	fetch 1,mem_ipc_skip_continue_proc
+	branch check_51cmd,blank
+	rtn
+
+check_51cmd_once:
+	call ui_ipc_get_lock
+	arg mem_ipc_fifo_c512bt,rega
+	call fifo_out
+	copy pdata,temp
+	call ui_ipc_put_lock
+	bpatchx patch3f_1,mem_patch3f
+	copy temp,pdata
+	rtn blank
+ 	beq BT_CMD_START_DISCOVERY,check_51cmd_start_discovery
+  	beq BT_CMD_STOP_DISCOVERY,check_51cmd_stop_discovery
+  	beq BT_CMD_RECONNECT,check_51cmd_reconnect
+  	beq BT_CMD_ENTER_SNIFF_SUBRATING,check_51cmd_enter_sniff_subrating
+  	beq BT_CMD_EXIT_SNIFF_SUBRATING,check_51cmd_exit_sniff_subrating
+  	beq BT_CMD_SNIFF_TEST,check_51cmd_sniff_test
+	beq BT_CMD_START_INQUIRY,check_51cmd_inq
+	beq BT_CMD_STOP_INQUIRY,check_51cmd_stop_inq
+	beq BT_CMD_START_ADV,check_51cmd_adv
+	beq BT_CMD_STOP_ADV,check_51cmd_stop_adv
+	beq BT_CMD_START_DIRECT_ADV,check_51cmd_direct_adv
+	beq BT_CMD_STOP_DIRECT_ADV,check_51cmd_stop_direct_adv
+	beq BT_CMD_LED_OFF,check_51cmd_led_off
+	beq BT_CMD_LED_ON,check_51cmd_led_on
+	beq BT_CMD_LED_BLINK,check_51cmd_led_start_blink
+	beq BT_CMD_LE_START_CONN,check_51cmd_le_start_con
+	beq BT_CMD_LE_START_SCAN,check_51cmd_start_scan
+	beq BT_CMD_LE_STOP_SCAN,check_51cmd_stop_scan
+	beq BT_CMD_ENTER_HIBERNATE,check_51cmd_hibernate
+	beq BT_CMD_LE_SMP_SECURITY_REQUEST,check_51cmd_le_smp_sec_req
+	beq BT_CMD_BB_RECONN_CANCEL,check_51cmd_bb_reconn_cancel
+	//context related, process in context
+	store 1,mem_fifo_temp
+	bpatchx patch3f_2,mem_patch3f
+	call lmo_fifo_check
+	nbranch check_51cmd_restore,blank  //process this cmd next time while lmo fifo is full
+check_51cmd_once_continue:
+	fetch 1,mem_fifo_temp
+	bmark0 mark_context,check_51cmd_check_idle
+	beq BT_CMD_DISCONNECT,check_51cmd_disconnect
+  	beq BT_CMD_ENTER_SNIFF,cmd_in_sniff
+  	beq BT_CMD_EXIT_SNIFF,cmd_exit_sniff
+  	beq BT_CMD_SET_PIN_CODE,check_51cmd_pincode
+	beq BT_CMD_LE_DISCONNECT,check_51cmd_le_disconnect
+	beq BT_CMD_LE_UPDATE_CONN,check_51cmd_ble_update_connect_param
+	beq BT_CMD_ROLE_SWITCH,check_51cmd_role_switch
+	beq BT_CMD_STORE_RECONN_INFO_LE,eeprom_store_le_reconn_info
+	beq BT_CMD_STORE_RECONN_INFO_BT,eeprom_store_bd_reconn_info
+	beq BT_CMD_DHKEY_NOT_ACCEPT,check_51cmd_dhkey_not_accept
+	beq BT_CMD_STORE_RECONN_INFO,check_51cmd_store_reconn_info
+	rtn
+
+check_51cmd_check_idle:
+	store 1,mem_fifo_temp
+  	call context_check_idle
+	branch check_51cmd_restore,zero
+	call context_search_plap
+	nrtn zero
+check_51cmd_restore:
+	jam IPC_SKIP_CONTINUE_PROCESS,mem_ipc_skip_continue_proc
+	branch ui_ipc_send_cmd
+  
+ /******************** 51COMMAND*********************/
+
+//command opcode 0x01	
+check_51cmd_start_discovery:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_DISCOVERY
+	store 2,mem_ui_state_map
+	jam 3,mem_scan_mode
+	rtn
+
+
+//command opcode 0x02	
+check_51cmd_stop_discovery:
+	jam 0,mem_hid_handshake_timer_count
+	jam 0,mem_scan_mode
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_DISCOVERY
+	store 2,mem_ui_state_map
+	rtn	
+
+
+//command opcode 0x03	
+check_51cmd_reconnect:	
+	jam hci_cmd_create_conn,mem_hci_cmd
+	rtn	
+
+
+//command opcode 0x04
+check_51cmd_disconnect:
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam OTHER_END_TERMINATED,mem_disconn_reason_send
+	rtn
+
+	
+//command opcode 0x07
+check_51cmd_enter_sniff_subrating:
+	rtn
+
+
+//command opcode 0x08
+check_51cmd_exit_sniff_subrating:
+	rtn	
+
+
+//command opcode 0x09
+check_51cmd_sniff_test:
+	rtn	
+
+
+//command opcode 0x10
+check_51cmd_pincode:
+	jam pincode_state_pincode_ready,mem_pincode_state
+	branch cmd_pair
+
+
+//command opcode 0x11
+check_51cmd_inq:
+	rtn
+
+
+//command opcode 0x12
+check_51cmd_stop_inq:
+	rtn
+
+
+//command opcode 0x13
+check_51cmd_adv:
+	jam ON,mem_le_adv_enable
+	jam ADV_IND,mem_le_adv_type
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+
+//command opcode 0x14
+check_51cmd_stop_adv:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	jam OFF,mem_le_adv_enable
+	rtn
+
+
+//command opcode 0x15
+check_51cmd_direct_adv:
+	jam ON,mem_le_adv_enable
+	jam ADV_DIRECT_IND,mem_le_adv_type
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+
+//command opcode 0x16
+check_51cmd_stop_direct_adv:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	jam OFF,mem_le_adv_enable
+	rtn
+
+
+//command opcode 0x17
+check_51cmd_le_disconnect:
+	setarg 20 // 100ms
+	store 2,mem_le_superto
+	store 2,mem_le_init_superto
+	branch le_send_terminate_ind_user_terminated
+
+
+//command opcode 0x18
+check_51cmd_ble_update_connect_param:
+	branch le_l2cap_tx_update_req
+
+
+//command opcode 19
+check_51cmd_led_off:
+	arg 0,rega
+	branch ui_led_off_global
+
+
+//command opcode 20
+check_51cmd_led_on:
+	arg 0,rega
+	branch ui_led_on_global
+
+
+//command opcode 21
+check_51cmd_led_start_blink:
+	arg 0,rega
+	branch ui_led_blink_start_global
+
+
+//command opcode 0x22
+check_51cmd_le_start_con:
+	jam ON,mem_le_scan_enable
+	jam hci_cmd_le_create_conn,mem_hci_cmd
+//	fetch 6,mem_app_peer_addr
+//	store 6,mem_le_conn_peer_addr
+	rtn
+
+
+//command opcode 0x23
+check_51cmd_start_scan:
+	jam ON,mem_le_scan_enable
+	rtn
+
+
+//command opcode 0x24
+check_51cmd_stop_scan:
+	jam OFF,mem_le_scan_enable
+	jam 0,mem_hci_cmd
+	rtn
+
+
+//command opcode 0x25
+check_51cmd_hibernate:
+	fetch 2,mem_cb_before_hibernate
+	call callback_func
+	fetch 1,mem_ui_button_gpio
+	beq UI_BUTTON_GPIO_DISABLE,check_51cmd_hibernate_btn_disabled
+	copy pdata,temp
+	call gpio_config_input
+check_51cmd_hibernate_btn_disabled:
+	call ui_ipc_clean_all_fifo
+	branch lpm_hibernate	
+
+
+//command opcode 0x27
+check_51cmd_le_smp_sec_req:
+	branch le_send_smp_security_request
+
+
+//command opcode 0x29
+check_51cmd_role_switch:
+  	jam LMP_SLOT_OFFSET,mem_lmo_opcode2
+	set1 mark_switch_initiated,mark
+	nrtn master
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	jam LMP_SWITCH_REQ ,mem_lmo_opcode2
+	fetch 1,mem_connection_options
+	set0 CONNECTION_SWITCH,pdata
+	store 1,mem_connection_options
+	rtn
+
+
+//command opcode 0x30
+check_51cmd_bb_reconn_cancel:
+	force page_length_timer,queue
+	branch timer_stop
+
+
+//command opcode 0x33
+check_51cmd_dhkey_not_accept:
+	call tid_set_reply
+	jam LMP_DHKey_Check,mem_lmi_opcode2
+	branch parse_lmp_dhkey_check_reject	
+
+
+ui_check_paring_button:
+	fetch 1,mem_ui_state_map
+	rtnbit0 UI_STATE_BTN_DOWN
+	rtnbit0 UI_STATE_BT_RECONNECT
+	branch check_51cmd_bb_reconn_cancel
+
+
+
+///////////queue function////////////
+queue_init:
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,contw
+	setarg 0
+	istore 3,contw
+	rtn
+	
+//input:rega:the address of the data to which you want to input queue
+//output:if user is disable,mean queue no have space
+queue_push:
+	call disable_user
+	call queue_full
+	rtn blank
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,regb
+	ifetcht 1,regb
+	increase 1,temp
+	istoret 1,regb	//number add 
+	
+	ifetcht 1,pdata	//temp:each length
+	copy temp,loopcnt
+	add pdata,QUEUE_OFFSET_WRITE_PTR,regb
+	ifetch 1,regb
+	imul32 temp,pdata	//offset
+	iadd contr,contw
+	copy rega,contr
+calc_queue_next_ptr:
+	call memcpy
+	call queue_get_size
+	pincrease -1
+	ifetcht 1,regb
+	increase 1,temp
+	iand temp,temp
+	istoret 1,regb
+	branch enable_user
+
+
+//input:rega:the address of the data to which you want to output queue
+//output:if user is disable,mean queue no have data
+queue_pop:
+	call disable_user
+	call queue_empty
+	rtn blank
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,regb
+	ifetcht 1,regb
+	increase -1,temp
+	istoret 1,regb
+	ifetcht 1,pdata		//each size
+	copy temp,loopcnt
+	add pdata,QUEUE_OFFSET_READ_PTR,regb
+	ifetch 1,regb
+	imul32 temp,pdata	//offset
+	iadd contr,contr
+	increase 1,contr
+	copy rega,contw
+	branch calc_queue_next_ptr
+
+
+//output:if blank is 1,mean queue is empty
+queue_empty:
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,contr
+	ifetch 1,contr
+	rtn
+
+//output:if blank is 1,mean queue is full
+queue_full:
+	call queue_get_size
+	ifetcht 1,contr
+	isub temp,pdata
+	rtn
+
+//output:pdata is queue size
+queue_get_size:
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_LENGTH,contr
+	ifetch 1,contr
+	rtn
+
+///////////queue function end////////////
+
+
+
+
+
+right_shift_n: //rshiftN pdata,pdata
+	sub loopcnt,0,null
+	rtn zero
+right_shift_n_loop: 
+	rshift pdata,pdata
+	loop right_shift_n_loop
+	rtn
+
+/* lshift. 0:1 byte; 1:2byte; 2:4byte; 3:8byte; 4:16byte*/
+left_shift_n:
+	force 1,pdata
+	sub loopcnt,0,null
+	rtn zero
+left_shift_n_loop:
+	lshift pdata,pdata
+	loop left_shift_n_loop
+	rtn
+push_stack:
+	deposit contw
+	store 2, mem_contw
+	storet 8,mem_temp
+	deposit timeup
+	store 4,mem_timeup
+	call push_stack_rega_b_c
+	deposit contr
+	store 2, mem_contr
+	rtn
+
+push_stack_rega_b_c:
+	deposit rega
+	store 4, mem_rega
+	deposit regb
+	store 4, mem_regb
+	deposit regc
+	store 3, mem_regc
+	rtn
+
+pop_stack:
+	fetcht 8,mem_temp
+	fetch 4,mem_timeup
+	iforce timeup
+	call pop_stack_rega_b_c
+	fetch 2, mem_contw
+	iforce contw
+	fetch 2, mem_contr
+	iforce contr
+	rtn
+
+pop_stack_rega_b_c:
+	fetch 4, mem_rega
+	iforce rega
+	fetch 4, mem_regb
+	iforce regb
+	fetch 3,mem_regc
+	iforce regc
+	rtn
+
+get_contw:
+	fetch 2,mem_contw
+	copy pdata,contw
+	rtn
+get_contr:
+	fetch 2,mem_contr
+	copy pdata,contr
+	rtn
+store_contw:
+	copy contw,pdata
+	store 2,mem_contw
+	rtn
+store_contr:
+	copy contr,pdata
+	store 2,mem_contr
+	rtn	
+	
+
+//
+save_cont_pointers:
+	copy contw,pdata
+	store 2,mem_hold_contw
+	copy contr,pdata
+	store 2,mem_hold_contr
+	rtn
+load_cont_pointers:
+	fetch 2,mem_hold_contw
+	copy pdata,contw
+	fetch 2,mem_hold_contr
+	copy pdata,contr
+	rtn
+
+memcpy96:
+	call memcpy32
+memcpy64:
+	call memcpy32
+	branch memcpy32
+memcpy12:
+	call memcpy8
+memcpy4:
+	ifetch 4,contr
+	istore 4,contw
+	rtn	
+memcpy8:
+	ifetch 8,contr
+	istore 8,contw
+	rtn	
+
+memcpy48:
+	call memcpy16
+memcpy32:
+	call memcpy8
+memcpy24:
+	call memcpy8
+memcpy16:
+	call memcpy8
+	branch memcpy8
+
+
+
+delay_10ms:
+	arg 10,loopcnt
+delay_ms_wait:
+	nop 12000
+	loop delay_ms_wait
+	rtn
+
+bn_zero:
+	force 3,loopcnt
+memset0:
+	force 0,pdata
+memset8:
+	istore   8,contw
+	loop   memset8
+	rtn
+
+memset0_8:
+	force 0,pdata
+	istore 8,contw
+	rtn
+memset0_4:
+	force 0,pdata
+	istore 4,contw
+	rtn	
+	
+clear_mem_256:
+	force 4,loopcnt
+	branch memset0 
+clear_mem_512:
+	force 8,loopcnt
+	branch memset0 
+
+clear_mem:
+	deposit loopcnt
+	rtn blank
+	setarg 0
+clear_mem_loop:
+	istore 1,contw
+	loop clear_mem_loop
+	rtn
+	
+
+clear_temp_block:
+	arg 32,loopcnt
+	arg mem_temp_block0,contw
+	branch clear_mem
+	
+xor_loop:
+	ifetch   4,regc
+	ifetcht 4,rega
+	ixor     temp,pdata
+	istore   4,contw	
+	increase 4,rega
+	increase 4,regc
+	loop  xor_loop
+	rtn
+	
+// 11 22 -> 22 11; 11 22 33 -> 33 22 11 
+// rega:data addr ;loopnct:length
+inverse_data:
+	bpatchx patch3f_3,mem_patch3f
+	copy loopcnt,pdata
+	sub pdata,1,null
+	rtn positive
+	iadd rega,regb	
+	increase -1,regb
+	rshift loopcnt,loopcnt
+inverse_loop:
+	ifetcht 1,rega
+	ifetch 1,regb
+	istore 1,rega
+	istoret 1,regb
+	increase -1,regb
+	increase 1,rega
+	loop inverse_loop
+	rtn
+
+
+memcpy_fast:
+	deposit loopcnt
+	rtn blank
+memcpy_fast_loop:
+	increase -8,loopcnt
+	call memcpy8,positive
+	rtn zero
+	branch memcpy_fast_loop,positive
+	increase 8,loopcnt
+memcpy_fast_loop_four:
+	increase -4,loopcnt
+	call memcpy4,positive
+	rtn zero
+	branch memcpy_fast_loop_four,positive
+	increase 4,loopcnt
+	branch memcpy
+ 
+memcpy:
+	deposit loopcnt
+	rtn blank
+memcpy_loop:
+	ifetch 1,contr
+	istore 1,contw
+	loop memcpy_loop
+	rtn
+
+timer_stop:
+	setarg 0
+timer_init:
+	rshift clkn_bt,temp
+	storet 4,mem_last_clkn
+	arg mem_timers,contw
+	iforce temp
+	lshift queue,pdata
+	iadd contw,contw
+	istoret 2,contw
+	bpatchx patch3f_4,mem_patch3f
+	rtn
+
+timer_check_timeout:
+	arg 0x800,timeup
+	lshift16 timeup,timeup
+	iadd timeup,pdata
+	rtn
+
+
+timer_reinit:
+	arg 0,queue
+timer_check:
+	bpatchx patch3f_5,mem_patch3f
+	fetcht 4,mem_last_clkn
+	rshift clkn_bt,pdata
+	store 4,mem_last_clkn	
+	isub temp,null
+	ncall timer_check_timeout,positive	
+	isub temp,timeup
+	copy timeup,temp
+	arg mem_timers,contr
+	copy contr,contw
+	arg 16,loopcnt
+timer_loop:
+	ifetch 2,contr
+	isub temp,pdata
+	branch timer_counting,positive
+	force 0,pdata
+timer_counting:
+	istore 2,contw
+	loop timer_loop	
+	arg mem_timers,contr
+	lshift queue,pdata
+	iadd contr,contr
+	ifetch 2,contr
+	rtn
+
+
+
+	/* pdata 28+16 bit add temp 26+16 bit, result in temp */
+clk_add:
+	iadd temp,temp
+	copy temp, loopcnt
+	setarg 3750
+	isub loopcnt,pdata
+	rtn positive
+	sub pdata,0,pdata
+	rshift16 temp,temp
+	increase 1,temp
+	lshift16 temp,temp
+	ior temp,temp
+	rtn
+
+clk_diff_rt:
+	call clk_diff
+	branch clk2rt
+
+/* pdata -temp -> pdata, all are 28+16 bits, set user if negative */
+clk_diff:
+	disable user
+	isub temp,pdata
+	branch clk_diff_pos,positive
+	enable user
+	sub pdata,0,pdata
+clk_diff_pos:
+	rtnbit0 15
+	arg -61786,temp
+	iadd temp,pdata
+	set0 64,pdata
+	rtn
+
+clk2rt:
+	iforce contr
+	rshift16 pdata,pdata
+	arg 3750,temp
+	imul32 temp,pdata
+	iadd contr,pdata
+	rtn
+
+	/* pdata = clks in, temp = lpo out */
+clk2lpo:
+	lshift8 pdata,pdata
+	lshift4 pdata,pdata
+	fetcht 3,mem_clks_per_lpo
+	idiv temp
+	call wait_div_end
+	quotient temp
+	rtn
+
+	/* rt clk -> bt+rt clk */
+clk2bt:
+	arg 3750,temp
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	lshift16 pdata,pdata
+	remainder temp
+	ior temp,temp
+	rtn
+
+
+
+//input:contru 
+//output:temp
+//used register: temp regc
+string2dec_from_uart:
+	arg 0,temp
+string2dec_from_uart_done:
+         copy temp,regc
+	ifetch 1,contru
+	call uchar2dialog	
+	copy regc,temp
+	call swap
+	arg 10,regb
+	imul32 regb,pdata
+	iadd temp,pdata
+	copy pdata,temp
+	loop string2dec_from_uart_done
+	rtn
+	
+
+
+uchar2dialog:
+	arg 0x3a,temp
+	isub temp,null
+	nbranch uchar2dialog_number,positive
+	arg 0x61,temp
+	isub temp,null
+	branch uchar2dialog_a2f,positive
+	arg 0x37,temp
+	isub temp,pdata
+	rtn
+uchar2dialog_number:
+	arg 0x30,temp
+	isub temp,pdata
+	rtn
+uchar2dialog_a2f:
+	arg 0x57,temp
+	isub temp,pdata
+	rtn
+
+pn9:
+	copy temp,alarm
+	setarg 0x1ff
+	force 0,regb
+pn9_loop:	
+	rshift3 pdata,rega
+	rshift rega,rega
+	ixor rega,rega
+	isolate1 0,rega
+	setflag true,9,pdata
+	rshift temp,temp
+	isolate1 0,pdata
+	setflag true,7,temp
+	rshift pdata,pdata
+	increase 1,regb
+	compare 0,regb,0x7
+	nbranch pn9_loop,true
+	istoret 1,contw
+	loop pn9_loop
+	copy alarm,temp
+	rtn
+
+
+wait_div_end:	
+	rtn modone
+	branch wait_div_end
+
+
+
+//input:
+//	count:loopcnt str1:rega str2:regb
+//output:
+//	same:set falg true ,diff set falg false
+// using:
+//	reg:temp null flag:zero
+compare_loop:
+string_compare:
+	ifetch 1,rega
+	ifetcht 1,regb
+	isub temp,null
+	nrtn zero
+	increase 1,rega
+	increase 1,regb
+	loop string_compare
+	force 0,null
+	rtn
+
+	/* pdata = temp if pdata > temp */
+ceiling:
+	isub temp,null
+	nrtn positive
+	deposit temp
+	rtn
+	
+swap:
+	iadd temp,pdata
+	isub temp,temp
+	isub temp,pdata
+	rtn
+
+clean_mem:
+	arg 0x200,loopcnt
+	arg 0x4000,contw
+	branch memset0				// clear xram at boot
+
+	//cb function ptr in pdata
+callback_func:
+	rtn blank
+	copy pdata,pc	//rtn through cb functon.
+	//branch assert
+
+wait_uarttx:
+	hfetch 2,core_uart_txitems
+	nbranch wait_uarttx,blank
+	rtn
+
+ice_break:
+	jam 0x1,core_ice_ctrl
+	rtn
+
+ice_setbp:
+	hstore 2,core_ice_break0
+	hfetch 1,core_ice_ctrl
+	set1 4,pdata
+	hstore 1,core_ice_ctrl
+	rtn
+ice_setbp2:
+	hstore 2,core_ice_break1
+	hfetch 1,core_ice_ctrl
+	set1 6,pdata
+	hstore 1,core_ice_ctrl
+	rtn
+	
+ice_set_write_bp:
+	hstore 2,core_ice_break0
+	jam 0x30,core_ice_ctrl
+	rtn
+	
+
+
+test_enable_white:
+	hfetch 1,core_config
+	set0 whiteoff_bit,pdata
+	hstore 1,core_config			/* whitening on */
+	rtn
+
+check_uart_tx_buff:
+	hfetch 2,core_uart_txitems
+	arg UART_AIR_CONTROL_THRESHOLD,temp
+pdata_sub_temp:
+	isub temp,null
+	rtn
+
+	//fuction fifo_in
+	//rega pointer to fifo memory , *(rega+len) is the end of fifo
+	//mem_fifo_temp data into fifo
+	//assert if fifo was full
+fifo_in:
+	bpatchx patch3f_6,mem_patch3f
+	ifetcht UTIL_FIFO_LEN,rega
+	and temp,0xff,pdata
+	nbranch fifo_in_push,blank
+	rshift8 temp,pdata
+	istore UTIL_FIFO_LEN,rega
+fifo_in_push:
+	increase UTIL_FIFO_LEN+UTIL_FIFO_OFFSET,rega
+	ifetch 1,rega
+	nbranch assert,blank //fifo full
+	fetch 1,mem_fifo_temp
+	istore 1,rega
+	rtn
+	
+	//fuction fifo_out
+	//rega pointer to fifo memory
+	//pdata  data from fifo, blank mains fifo empty
+fifo_out:
+	bpatchx patch3f_7,mem_patch3f
+	arg UTIL_FIFO_LEN,loopcnt
+	ifetch UTIL_FIFO_LEN,rega
+	rtn blank
+fifo_out_loop:
+	ifetch 1,rega
+	nbranch fifo_out_end,blank
+	increase 1,rega
+	loop fifo_out_loop
+	branch assert
+fifo_out_end:
+	arg 0,temp
+	istoret 1,rega
+	rtn
+
+	//fuction fifo_is_empty
+	//rega pointer to fifo memory
+	//blank--- fifo is empty
+fifo_is_empty:
+	ifetch UTIL_FIFO_LEN,rega
+	rtn
+
+	//fuction fifo_is_full
+	//rega pointer to fifo memory
+	//blank--- fifo is NOT full
+fifo_is_full:
+	ifetch 1,rega
+	rtn
+	//rega pointer to fifo memory
+	//blank--- fifo is NOT near full
+fifo_is_near_full:
+	ifetch 2,rega
+	rtn
+
+	//rega pointer to fifo memory
+	//count output via pdata
+fifo_content_count:
+	arg 0,temp
+fifo_content_count_loop:
+	fetch 1,contr
+	loop fifo_content_count_loop,blank
+	increase 1,temp
+	loop fifo_content_count_loop
+	copy temp,pdata
+	rtn
+	
+not_greater_than:
+	isub temp,null
+	nrtn positive
+	copy temp,pdata
+	rtn
+
+
+disable_positive:
+	force -1,null
+	rtn
+enable_positive:
+disable_zero:
+	force 1,null
+	rtn
+enable_zero:
+	force 0,null
+	rtn
+
+enable_user:
+	enable user
+	rtn
+	
+disable_user:
+	disable user
+	rtn
+	
+enable_user2:
+	enable user2
+	rtn
+	
+disable_user2:
+	disable user2
+	rtn
+
+disable_blank:
+	setarg 1
+	rtn
+
+enable_blank:
+	setarg 0
+	rtn
+
+
+reverse_byte:
+	copy loopcnt,pdata
+	rtn blank
+	copy contr,pdata
+	iadd loopcnt,pdata
+	increase -1,pdata
+	copy pdata,contr	
+reverse_loop:
+	ifetch 1,contr
+	increase -2,contr
+	istore 1,contw
+	loop reverse_loop
+	rtn
+
+
+
+org 0x10001
+z_entrance0:
+	beq ZCODE_00,z_page_wait_fhs_reply_ok
+	beq ZCODE_01,z_g24_transmit_by_interrupt
+	rtn
+
+z_g24_transmit_by_interrupt:
+	call p_g24_timer_check
+	nrtn user
+	call z_g24_interval_calibrate
+	fetch 2,mem_24g_transmit_by_interrupt_exit_count
+	increase 1,pdata
+	store 2,mem_24g_transmit_by_interrupt_exit_count
+	fetcht 2,mem_24g_transmit_by_interrupt_exit_count_init
+	isub temp,null
+	call z_g24_transmit_by_interrupt_exit,zero
+	branch p_g24_transmit_process
+
+z_g24_transmit_by_interrupt_exit:
+	jam G24_TX_TIMER_INT_DISABLE,mem_24g_transmit_by_interrupt
+	setarg 0
+	store 2,mem_24g_transmit_by_interrupt_exit_count
+	setarg 25
+	store 2,mem_24g_transmit_by_interrupt_exit_count_init
+z_g24_interval_min:
+	jam 0,mem_24g_pac_index
+	fetch 1,mem_24g_interval_min
+z_g24_current_interval_store:
+	store 1,mem_24g_interval
+	rtn
+z_g24_interval_max:
+	fetch 1,mem_24g_interval_max
+	branch z_g24_current_interval_store
+z_g24_interval_calibrate:
+	fetch 1,mem_24g_pac_index
+	increase 1,pdata
+	store 1,mem_24g_pac_index
+	beq 4,z_g24_interval_max
+	beq 5,z_g24_interval_min
+	rtn
+
+z_page_wait_fhs_reply_ok:
+ 	fetch 1, mem_page_rcv_fhs
+	increase 1,pdata
+	store 1, mem_page_rcv_fhs
+	call prepare_newconn
+z_master_newconn_loop:
+ 	set1 mark_first_packet,mark
+	call master_newconn_once
+	branch z_newconn_poll_responded,sync
+	set0 mark_first_packet,mark
+	call new_conn_timeout
+	nbranch z_master_newconn_loop,blank
+	branch page_restart
+z_newconn_poll_responded:
+	set0 mark_first_packet,mark
+	branch newconn_poll_responded
+
+
+org 0x20001
+
+z_entrance1:
+	beq ZCODE_10,z_mouse_bb_disconnected
+	beq ZCODE_11,z_hid_rx_process
+	rtn
+
+z_mouse_bb_disconnected:
+	jam 0,mem_mouse_enter_sniff_count
+	jam 0x0e,mem_sniff_param_interval	//115Hz
+	call mouse_bb_discon_clear_stack
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BLE,z_mouse4_0_event_bb_disconn
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	bbit1 APP_DISC_AFTER_PAIRING,z_mouse_event_light_state_pairing
+	bbit1 APP_DISC_AFTER_RECONN,z_mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,z_mouse_event_light_state_hibernate
+	branch mouse_start_discovery
+
+z_mouse4_0_event_bb_disconn:
+	call mouse_le_clean_connect_flag
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_PB_BUTTON,p_mouse_select_device_button_up
+	branch mouse4_0_event_bb_disconn+2
+	
+z_mouse_event_light_state_pairing:
+	bbit1 APP_DISC_AFTER_HANDSHAKE,z_mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,z_mouse_event_light_state_hibernate
+	branch mouse_start_discovery
+z_mouse_event_light_state_hibernate:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	call app_disconn_reason_clear
+//	call p_mouse_check_key_gpio
+//	beq MOUSE_LM_BUTTON,p_mouse_null_enter_hibernate_enable
+
+//	fetcht 1,mem_config_select_device_button_gpio
+//	call p_gpio_set_input_pd
+//	fetcht 1,mem_config_select_device_button_gpio
+//	call gpio_get_bit
+//	branch  p_mouse_null_enter_hibernate_enable,true
+	
+	branch app_bb_hibernate
+
+
+z_hid_rx_process:
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	ifetch 1,contr
+	store 1,mem_l2cap_rcv
+	and pdata,0x0f,temp
+	rshift4 pdata,pdata //hidtype
+	beq hid_type_set_protocol,z_hid_rx_set_protocol
+	beq HID_TYPE_CONTROL,z_hid_rx_process_hid_control
+	branch hid_rx_process+6
+z_hid_rx_set_protocol:
+	call hid_rx_process_handshake
+	jam 0,mem_mouse_bt_boot_mode
+	fetch 1,mem_l2cap_rcv
+	isolate1 0,pdata
+	rtn true
+	jam 1,mem_mouse_bt_boot_mode	//boot mode
+	rtn
+
+z_hid_rx_process_hid_control:
+	copy temp,pdata
+	beq HID_CONTROL_P_VIRTUALCABLEUNPLUG,p_mouse_irtual_cable_unplug
+	branch hid_rx_process_hid_control+2
+
+org 0x30001
+
+z_entrance2:
+	beq ZCODE_20,z_send_lmp_escape
+	beq ZCODE_21,z_send_lmp_accepted
+	beq ZCODE_22,z_mouse_check_reconn_target
+	rtn
+
+
+z_mouse_check_reconn_target:	
+	call p_mouse_tx_power_init
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_mouse_start_24g_mode
+	beq 0xff,p_mouse_start_24g_mode
+	call p_mouse_mode_bt_device1_multi_led_on
+	fetch 1,mem_xrecord_mode
+	beq REC_3_MODE,z_mouse3_0_check_reconn_target
+	beq REC_4_MODE,z_mouse4_0_check_reconn_target
+	branch p_mouse_null_enter_hibernate_enable
+
+z_mouse3_0_check_reconn_target:
+	fetch 6,mem_hci_plap
+	branch app_bt_start_discovery_short,blank
+	branch mouse3_0_check_reconn_target+3
+
+	
+z_mouse4_0_check_reconn_target:
+	jam 1,mem_le_send_security_request_flag
+	jam 1,mem_mouse_le_reconnect_flag
+	arg 10,temp
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,z_mouse4_0_check_reconn_target_next
+	fetcht 2,mem_mouse_direct_timeout
+z_mouse4_0_check_reconn_target_next:
+	storet 2,mem_mouse_direct_timer
+	call app_lpm_mult_disable
+	call p_le_check_adv_flag
+	setarg ADV_FLAG_BREDR_NOT_SUPPORTED
+	istore 1,contr
+
+	arg mem_le_scan_data,contr
+	call p_le_adv_data_update
+
+	branch check_51cmd_adv
+z_send_lmp_escape:
+	fetch 1,mem_lmp_to_send
+	beq LMP_EXT_FEATURES_RES,z_send_lmpext_features_res
+	beq LMP_EXT_FEATURES_REQ,z_send_lmpext_features_req	
+	branch send_lmp_escape
+z_send_lmpext_features_res:
+	call z_check_ssp_enable
+	fetch 1,mem_lmp_to_send
+	branch send_lmpext_features_res
+z_send_lmpext_features_req:
+	call z_check_ssp_enable
+	fetch 1,mem_lmp_to_send
+	branch send_lmpext_features_req
+z_check_ssp_enable:
+	fetch 1,mem_ssp_enable 
+	branch ssp_disable,blank
+	branch ssp_enable
+
+z_send_lmp_accepted:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode
+	istore 1,contw
+	store 1,mem_lmi_opcode_temp
+	call send_lmp_follow
+	fetch 1,mem_lmi_opcode_temp
+	beq LMP_MAX_SLOT_REQ,z_send_lmp_accepted_max_slot_req	//sumsung a5100 patch
+	branch send_lmp_accepted+7
+
+z_send_lmp_accepted_max_slot_req:
+	fetch 1,mem_bt_rcvd_switch_req_accept
+	rtn blank
+	jam 0,mem_bt_rcvd_switch_req_accept
+	fetch 1,mem_bt_send_lmp_setup_complete
+	rtnne 2
+	jam 1,mem_bt_send_max_slot_req_accept_after_switch
+	copy clkn_bt,pdata
+	store 4,mem_aurand_send_delay_time
+	rtn
+
+
+org 0x40001
+
+z_entrance3:
+	beq ZCODE_30,z_process_conn_sm
+	rtn
+
+z_process_conn_sm:
+	call lmo_fifo_check
+	nrtn blank
+z_process_conn_sm_continue:
+	fetch 1,mem_conn_sm
+	rtn blank
+	beq CONN_SM_SEND_CONN_REQ, z_host_create_conn_send_conn_req
+	beq CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION,z_host_creat_conn_wait_switch
+	branch process_conn_sm_continue+2
+
+
+z_host_creat_conn_wait_switch:
+	fetch 1,mem_switch_flag
+	rtneq SWITCH_FLAG_INIT
+	beq SWITCH_FLAG_ACCEPT,z_host_create_conn_switch_accept
+	branch host_creat_conn_wait_switch+3
+z_host_create_conn_switch_accept:
+	rtn master
+z_host_create_conn_auth_pair:
+	/* checking whether or not to do m/s switch */
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_AUTH,z_host_create_conn_auth_pair_true
+	branch host_create_conn_auth_pair+1
+z_host_create_conn_auth_pair_true:
+	fetch 1,mem_bt_send_lmp_setup_complete
+	beq 1,host_create_conn_auth_pair_true
+	//sumsung a5100 patch
+	fetch 1,mem_link_key_exists
+	branch host_create_conn_auth_pair_nokey,blank
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn blank
+	jam 0,mem_bt_send_max_slot_req_accept_after_switch	
+	fetch 4,mem_aurand_send_delay_time
+	arg 20,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nbranch z_bt_send_max_slot_req_accept_after_switch_wait,positive
+	branch host_create_conn_auth
+
+z_bt_send_max_slot_req_accept_after_switch_wait:
+	jam 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn
+
+z_host_create_conn_send_conn_req:
+	jam 20,mem_mouse_send_switch_req_timer
+	branch host_create_conn_send_conn_req
+
+
+org 0x50001
+
+z_entrance4:
+	beq ZCODE_40,z_le_update_param
+	beq ZCODE_41,z_le_update_channel_map
+	beq ZCODE_42,z_le_mouse_bb_event_connect_complete
+	beq ZCODE_43,z_quit_connection_cont
+	rtn
+
+z_le_update_param:
+	call z_mouse_le_conn_param_check
+	branch le_update_param+8
+z_mouse_le_lpm_mult_reinit:
+	fetch 1,mem_lpm_mult_init
+	store 1,mem_lpm_mult
+z_mouse_le_conn_param_lpm_enable:
+	jam LE_LPM_ENABLE,mem_mouse_le_conn_param_reject
+	rtn
+z_mouse_le_conn_param_lpm_disable:
+	jam LE_LPM_DISABLE,mem_mouse_le_conn_param_reject
+	rtn
+z_mouse_le_conn_param_check:
+	fetch 1,mem_le_new_conninterval
+	sub pdata,LE_INTERVAL_15MS,null
+	nbranch z_mouse_le_conn_param_lpm_disable,positive
+	fetch 1,mem_le_new_connslavelatency
+	fetcht 1,mem_lpm_mult_init
+	isub temp,null
+	branch z_mouse_le_lpm_mult_reinit,positive
+	fetch 1,mem_le_new_connslavelatency
+	store 1,mem_lpm_mult
+	branch z_mouse_le_conn_param_lpm_enable
+
+z_le_update_channel_map:
+	fetch 1,mem_le_state
+	rtnbit0 lestate_update_map
+	call z_le_channel_map_overflow_check
+	nrtn user
+	branch le_update_channel_map+3
+z_le_channel_map_overflow_check:
+	enable user
+	fetch 1,mem_le_event_count+1
+	rshift4 pdata,pdata
+	rtnne 0x0f
+	fetch 1,mem_le_instant+1
+	rshift4 pdata,pdata
+	rtnne 0x00
+	branch disable_user
+
+z_le_mouse_bb_event_connect_complete:
+	fetch 1,mem_mouse_le_reconnect_flag
+	nrtn blank
+	fetch 1,mem_le_att_handle
+	sub pdata,26,pdata
+	nrtn zero
+	branch mouse_le_write_enable
+
+z_quit_connection_cont:
+	call app_disconn_reason_collect_bt
+	call sniff_exit
+	jam BT_EVT_BB_DISCONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	call init_lmp_work
+	call l2cap_init_work
+	branch quit_connection_cont+8
+
+
+org 0x60001
+
+z_entrance5:
+	beq ZCODE_50,z_mouse_start_discovery
+	rtn
+
+z_mouse_start_discovery:
+	jam 0,mem_le_send_security_request_flag
+	call p_mouse_tx_power_init
+	jam MODE_BT_DEVICE1,mem_device_flag
+	jam 0,mem_mouse_clear_sensor_data_flag
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_ADV,z_mouse_start_discovery_norandom
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE,z_mouse_start_discovery_norandom
+	call p_mouse_load_random_addr_increase_count
+	fetcht 2,mem_random_addr_increase_count
+	increase 1,temp
+	storet 2,mem_random_addr_increase_count
+	storet 2,mem_le_lap+1
+	call p_mouse_store_random_addr_increase_count
+	random pdata
+	store 1,mem_le_lap
+z_mouse_start_discovery_norandom:
+	fetch 3,mem_le_lap_high_3B
+	store 3,mem_le_lap+3
+	call p_mouse_le_fast_conn_disable
+	call app_lpm_mult_disable
+	fetch 2,mem_discovery_timeout
+	store 2,mem_mouse_discovery_timer
+	jam 6,mem_connection_options
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	store 2,mem_mouse_direct_timer
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_enable_function_flag
+	call mouse_bt_discovery_button_down_disable
+	fetch 1,mem_device_option
+	isolate1 MODE_4_MOUSE,pdata
+	call z_check_51cmd_adv,true
+	fetch 1,mem_device_option
+	isolate1 MODE_3_MOUSE,pdata
+	call check_51cmd_start_discovery,true
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_start_blink
+	branch p_mouse_discovery_multi_led_blink
+
+z_check_51cmd_adv:
+	jam 0,mem_mouse_le_reconnect_flag
+	call p_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 p_le_adv_data_update
+	branch check_51cmd_adv
+
+org 0x70001
+
+z_entrance6:
+	beq ZCODE_60,z_mouse_start_24g_mode
+	beq ZCODE_61,z_mouse_24g_attempt_fail
+	rtn
+	
+z_mouse_start_24g_mode:
+
+	set0 mark_24g,mark
+	fetch 1,mem_24g_attempt_count
+	and pdata,0x01,pdata
+	ncall z_g24_fast_conn_all_powerful,blank
+	call z_g24_normal_connect,blank
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	setarg 0
+	store 2,mem_24g_check_dongle_times	
+	call p_g24_tx_attemp_data_prep
+z_g24_tx_attemp_dongle_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 1,mem_24g_check_dongle_times
+	beq 10,p_g24_stop_g24_mode		  
+	call p_g24_transmit_receive_ack
+	nbranch z_g24_attemp_txdata_retry,sync
+	nbranch z_g24_attemp_txdata_retry,user3
+z_g24_tx_attemp_dongle_succ:
+	set1 mark_24g,mark
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+	store 1,mem_mouse_24g_pair_timer
+	store 2,mem_24g_attempt_count
+	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event
+z_g24_tx_attemp_dongle_loop_exit:	
+	call p_g24_txbuf_clear
+	branch p_g24_transmit_by_interrupt_enable
+
+/*
+z_g24_tx_attemp_data_prep:
+	jam 0xff,mem_24g_common_temp
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	call p_g24_put_data_in_buff
+	branch p_g24_transmit_prep
+*/ 
+
+z_g24_normal_connect:
+	call p_mouse_tx_power_init
+	fetch 4,mem_mouse_24g_addr
+	branch z6_g24_ch_syncword_crc8_init
+
+z_g24_fast_conn_all_powerful:
+	jam TX_POWER_PAIR,mem_tx_power
+	fetch 4,mem_mouse_24g_addr_init
+z6_g24_ch_syncword_crc8_init:	
+	call p_g24_update_addr_and_synccrc8
+	branch p_g24_ch
+
+	
+z_g24_attemp_txdata_retry:
+	fetch 2,mem_24g_check_dongle_times
+	increase 1,pdata
+	store 2,mem_24g_check_dongle_times
+	call p_g24_ch
+	branch z_g24_tx_attemp_dongle_loop
+
+
+z_mouse_24g_attempt_fail:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	fetch 2,mem_24g_attempt_count
+	nbranch z_mouse_24g_attempt_fail_again,blank
+	jam G24_TX_TIMER_INT_DISABLE,mem_24g_transmit_by_interrupt
+	call p_mouse_tx_power_init
+	call p_g24_check_51cmd_stop_24g
+	jam 0,mem_link_key_exists
+	call p_mouse_setgpio_hibernate
+	branch p_app_enter_hibernate
+
+z_mouse_power_on_check:
+	fetch 1,mem_24g_get_ack_fail
+	nbranch p_g24_stop_g24_mode,blank
+	jam 1,mem_24g_get_ack_fail
+	fetch 1,mem_power_on_flag
+	bbit1 2,z_mouse_wakeup_from_hibernate
+	branch p_g24_auto_pair_start
+
+z_mouse_wakeup_from_hibernate:
+	setarg 800				// 800 * 10 * 1.25ms = 10,000ms
+	store 2,mem_24g_attempt_count
+	branch z_mouse_start_24g_mode
+
+
+z_mouse_24g_attempt_fail_again:
+	increase -1,pdata
+	store 2,mem_24g_attempt_count
+	branch z_mouse_power_on_check,blank
+	branch z_mouse_start_24g_mode
+
+
+org 0x80001
+
+z_entrance7:
+	beq ZCODE_70,z_g24_auto_pair_start
+	beq ZCODE_71,z_mouse_24g_pairing_button
+	rtn
+
+z_g24_auto_pair_start:
+	set0 mark_24g,mark
+	call z_g24_pair_init
+	call p_g24_tx_attemp_data_prep
+z_g24_auto_pair_start_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 1,mem_24g_check_dongle_times+1
+	beq 0xa0,p_g24_stop_g24_mode			// 3min
+	call p_g24_transmit_receive_ack
+	nbranch z_g24_auto_pair_retry,sync
+	nbranch z_g24_auto_pair_retry,user3
+	call p_g24_ackpayload_parse
+	call p_mouse_tx_power_init
+	fetch 4,mem_24g_addr
+	fetcht 4,mem_24g_paring_addr
+	isub temp,null
+	branch z_g24_start_pairing_sm1,zero
+	set1 mark_24g,mark
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event
+	call p_g24_txbuf_clear
+	branch p_g24_transmit_by_interrupt_enable
+
+/*
+z7_g24_tx_attemp_data_prep:
+	jam 0xff,mem_24g_common_temp
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	call p_g24_put_data_in_buff
+	branch p_g24_transmit_prep
+*/
+
+z_g24_auto_pair_retry:
+	fetch 1,mem_24g_get_ack_fail
+	increase 1,pdata
+	store 1,mem_24g_get_ack_fail
+	sub pdata,3,null
+	branch z_g24_auto_pair_start_loop,positive
+	jam 0,mem_24g_get_ack_fail
+	fetch 2,mem_24g_check_dongle_times
+	increase 1,pdata
+	store 2,mem_24g_check_dongle_times
+	branch z_g24_auto_pair_start_loop
+/*	
+	fetch 1,mem_24g_auto_paring_switch
+	increase 1,pdata
+	and_into 1,pdata
+	store 1,mem_24g_auto_paring_switch
+	beq 0,z_g24_auto_pair_device_attemp
+	beq 1,z_g24_auto_pair_pair_attemp
+	rtn
+*/
+	
+z_g24_pair_init:
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+	store 1,mem_24g_get_ack_fail
+	store 2,mem_24g_attempt_count
+	jam TYPE_KB,mem_24g_data_type
+	jam TX_POWER_f5DB,mem_tx_power
+	jam 0,mem_24g_pid
+	jam G24_PAIR_CH,mem_24g_ch
+	fetch 4,mem_24g_paring_addr
+	branch p_g24_update_addr_and_synccrc8
+
+z_g24_auto_pair_pair_attemp:
+	call z_g24_pair_init
+	branch z_g24_auto_pair_start_loop
+
+z_g24_start_pairing_sm1:
+	set1 mark_24g,mark
+	call z_g24_pair_init
+z_g24_set_pairing_sm_1:
+	jam STATE_24G_PAIRING_0,mem_24g_pairing_sm
+	rtn
+
+z_mouse_24g_pairing_button:
+//	rtnmark1 mark_24g
+	call p_g24_check_51cmd_stop_24g
+	call p_mouse_sensor_powerdown_check
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_enable_function_flag
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	store 1,mem_mouse_send_blank_timer
+	store 2,mem_24g_attempt_count
+	store 2,mem_24g_check_dongle_times
+	call mouse_stop_discovery
+	branch z_g24_start_pairing_sm1
+
+org 0x90001
+
+z_entrance8:
+//	beq ZCODE_80,z_mouse_setting_config
+//	beq ZCODE_81,z_le_addr_random_config
+//	beq ZCODE_82,z_le_parse_smp_pairing_failed
+//	rtn
+//z_le_parse_smp_pairing_failed:
+//	call le_parse_smp_pairing_failed
+//	fetch 1,mem_le_state	//disable update conn param
+//	set0 lestate_update_param,pdata
+//	store 1,mem_le_state
+//	branch le_parse_terminate_ind
+
+z_mouse_setting_config:
+	fetch 4,mem_lap
+	store 4,mem_24g_device_addr
+	call mouse_gpio_init
+	call p_mouse_multi_led_gpio_set_float
+	fetcht 1,mem_flash_ncs_gpio
+	call gpio_config_output
+	
+	call mouse_param_init
+	call z_mouse_bt_sdp_update
+	setarg mem_mouse_le_uuid_sup
+	store 2,mem_ui_le_uuid_table
+
+	setarg 0
+	store 2,mem_lpm_interval
+
+	//call p_mouse_set_gpio_control_sensor
+	jam MOUSE_6CLK_ANGLE,mem_config_sensor_angle
+	
+	setarg 0x1802		//16M XTAL
+	store 2,mem_fcomp_mul
+	call adc_init_data	
+	call mouse_adc_init
+	call le_set_config_fixed_ltk
+	call le_set_justwork
+	call le_set_fixed_ltk
+	call le_set_config_read_authentication
+	call p_le_addr_random_config
+	call p_flash_release_deep_power_down
+	call p_mouse_set_24g_addr_flash
+	fetch 3,mem_flash_base
+	iadd regb,pdata
+	call spid_read_flash
+
+	call p_mouse_load_flash_info_check	
+	rtn
+
+
+z_mouse_bt_sdp_update:
+	call enable_authrom
+	arg 0x8c00,contr
+	arg mem_mouse_uuid_list,contw
+	arg 267,loopcnt
+	call memcpy
+	
+	arg mem_keyboard_hid_descriptor,contr
+	arg 45,loopcnt
+	call memcpy
+	
+	arg 0x8d3f,contr
+	arg 50,loopcnt
+	call memcpy
+
+/*
+	//Attribute: HID SSR Host Max Latency
+	setarg 0x0f0209
+	istore 3,contw
+	setarg 0x120009
+	istore 3,contw
+	//Attribute: HID SSR Host Min Timeout
+	setarg 0x100209
+	istore 3,contw
+	setarg 0x000009
+	istore 3,contw
+*/
+	arg mem_sdp_updata_list,contr
+	arg 12,loopcnt
+	call memcpy
+	
+	arg 0x8d71,contr
+	arg 265,loopcnt
+	call memcpy
+	jam 0,mem_mouse_uuid_list+23	//Service Record Handle: 0x 00 01 00 00
+	jam 0x66,mem_mouse_uuid_list+15	//total length    +48-52
+	jam 0x74,mem_mouse_uuid_list+195
+	jam 0x78,mem_mouse_uuid_list+191
+	jam 0x7a,mem_mouse_uuid_list+189
+	setarg 0x401f
+	store 2,mem_mouse_uuid_list+350	//timeout
+	setarg 0x6d04
+	store 2,mem_mouse_uuid_list+455	//VID
+	setarg 0x16b0
+	store 2,mem_mouse_uuid_list+461	//PID
+	branch p_mouse_bt_sdp_set
+
+	
+	
+	
+
+
+org 0xa0001
+
+z_entrance9:
+	beq ZCODE_90,z_g24_pairing_sm
+	beq ZCODE_91,z_g24_paring_mode
+	beq ZCODE_92,z_mouse_24g_pairing_complete
+	rtn
+
+z_g24_pairing_sm:
+	fetch 1,mem_24g_ensure
+	beq ENSURE_ON_24G,enable_user
+	fetch 1,mem_24g_pairing_sm
+	beq STATE_24G_PAIRING_0,z_g24_pairing_sm_0
+	beq STATE_24G_PAIRING_1,z_g24_pairing_sm_1
+	beq STATE_24G_PAIRING_2,z_g24_pairing_sm_2
+	beq STATE_24G_PAIRING_3,z_g24_pairing_sm_3
+	branch assert
+
+z_g24_pairing_sm_0:
+	jam STATE_24G_PAIRING_1,mem_24g_pairing_sm
+	jam 250,mem_mouse_24g_pair_timer
+	branch z_g24_pairing_sm
+z_g24_pairing_sm_1:
+	jam STATE_24G_PAIRING_1_WAITING_ACK,mem_24g_pairing_sm
+	jam 0xaa,mem_24g_common_temp
+	branch z_g24_pairing_sm_common
+z_g24_pairing_sm_2:
+	jam STATE_24G_PAIRING_2_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x55,mem_24g_common_temp
+	branch z_g24_pairing_sm_common
+z_g24_pairing_sm_3:
+	jam STATE_24G_PAIRING_3_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x22,mem_24g_common_temp
+z_g24_pairing_sm_common:
+	fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+z_g24_put_pairing_data_in_buff:
+	jam 0,mem_24g_common_temp+6
+	arg mem_24g_common_temp,rega
+	arg 7,temp
+	call p_g24_put_data_in_buff
+	call p_g24_txdata_enable_tx
+	branch enable_user
+
+z_g24_paring_mode:
+	fetch 1,mem_24g_pairing_sm
+	rtneq STATE_24G_PAIRING_SUCCESS
+	beq STATE_24G_PAIRING_1_WAITING_ACK,z_g24_pairing_sm_1_waiting_ack
+	beq STATE_24G_PAIRING_2_WAITING_ACK,z_g24_pairing_sm_2_waiting_ack
+	beq STATE_24G_PAIRING_3_WAITING_ACK,z_g24_pairing_sm_3_waiting_ack
+	rtn
+
+z_g24_pairing_sm_1_waiting_ack:
+	jam STATE_24G_PAIRING_2,mem_24g_pairing_sm
+	branch p_g24_transmit_abandon
+z_g24_pairing_sm_2_waiting_ack:
+	jam STATE_24G_PAIRING_3,mem_24g_pairing_sm
+	branch p_g24_transmit_abandon
+z_g24_pairing_sm_3_waiting_ack:
+	jam STATE_24G_PAIRING_SUCCESS,mem_24g_pairing_sm
+	jam BT_EVT_24G_PAIRING_COMPLETE,mem_fifo_temp
+	call ui_ipc_send_event	
+	fetch 4,mem_24g_rxpayload+2
+	call p_g24_update_addr_and_synccrc8
+	branch p_g24_transmit_abandon
+
+
+z_mouse_24g_pairing_complete:
+	call p_g24_transmit_by_interrupt_enable
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_disable_function_flag
+	setarg 0
+	store 2,mem_24g_attempt_count
+	jam 0,mem_mouse_move_flag
+	call mouse_read_sensor_common
+//	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_tx_power_init
+	
+	fetch 4,mem_24g_addr
+	store 4,mem_mouse_24g_addr
+
+	call mouse_cheak_select_24gdevice
+	branch p_mouse_store_flash_device_info
+
+
+org 0xb0001
+
+z_entranceA:
+	beq ZCODE_A1,z_mouse_le_conn_param_update_rsp_recieved
+	beq ZCODE_A2,z_mouse_le_bb_disconnected
+	beq ZCODE_A3,z_mouse_bb_event_reconn_timeout
+	beq ZCODE_A4,z_mouse_before_hibernate
+	rtn
+
+z_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
+	branch z_mouse_le_conn_param_update_rsp_not_accepted,positive
+	setarg LE_INTERVAL_11_25MS
+	store 2,mem_le_interval_min
+	store 2,mem_le_interval_min+2
+	call p_app_updata_le_param
+	jam LE_LPM_DISABLE,mem_mouse_le_conn_param_reject
+	rtn
+//ipad not accepted updata, need reinit mem_lpm_mult.   mem_lpm_mult = CONNECT_IND latency = 0
+z_mouse_le_conn_param_update_rsp_not_accepted:
+	jam 1,mem_mouse_le_updata_not_accepted_flag
+	branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+
+z_mouse_bb_event_reconn_timeout:
+z_mouse_bb_event_reconn_failed:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	rtnbit1 UI_STATE_BT_DISCOVERY
+	rtnbit1 UI_STATE_BLE_ADV
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+	branch app_bb_hibernate
+
+z_mouse_le_bb_disconnected:
+	jam 0,mem_mouse_le_bb_connected_flag
+	setarg LE_INTERVAL_8_75MS
+	store 2,mem_le_interval_min
+	store 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 p_mouse_data_init
+	call le_clr_config_more_data
+	call p_mouse_store_flash_device_info
+	branch mouse_bb_disconnected
+
+
+z_mouse_before_hibernate:
+	enable user
+	hfetch 4,0x8138
+	setflag user,26,pdata
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	call disable_authrom
+//	call p_mouse_devce_led_off
+	call p_mouse_store_flash_device_info
+	call mouse_before_hibernate_wheel_gpio_set
+	call p_mouse_setgpio_hibernate
+	fetch 1,mem_device_flag
+	sub pdata,MODE_24G_DEVICE,null
+	call p_mouse_select_device_button_gpio_set_suspend,zero
+	call p_flash_deep_power_down
+	hfetch 1,core_gpio_sel1
+	and pdata,0xf7,pdata
+	hstore 1,core_gpio_sel1  //disable flash spi	
+	hfetch 1,core_gpio_pd3	//gpio24 can not be set pulldown
+	set1 0,pdata
+	hstore 1,core_gpio_pd3
+	rtn
+
+	
+org 0xc0001
+
+z_entranceB:
+//	beq ZCODE_B0,z_mouse_le_bb_event_connected
+	beq ZCODE_B1,z_mouse_sniff_not_accept
+	beq ZCODE_B2,z_mouse_enter_sniff_check
+	beq ZCODE_B3,z_mouse_le_ll_start_encryt
+	beq ZCODE_B4,z_mouse_bb_event_disconnected
+	beq ZCODE_B5,z_mouse_irtual_cable_unplug
+	rtn
+	
+z_mouse_sniff_not_accept:
+	fetch 1,mem_mouse_enter_sniff_count
+	rtneq 2
+	increase 1,pdata
+	store 1,mem_mouse_enter_sniff_count
+	jam 0x12,mem_sniff_param_interval	//89Hz
+	branch app_bt_enter_sniff
+
+z_mouse_enter_sniff_check:
+	fetch 1,mem_mouse_enter_sniff_count
+	rtnne 2
+	jam 0,mem_mouse_enter_sniff_count
+	jam 0x0e,mem_sniff_param_interval	//89Hz
+	branch app_bt_enter_sniff
+
+z_mouse_le_ll_start_encryt:
+	fetch 1,mem_mouse_le_reconnect_flag
+	beq 1,z_mouse_le_ll_reconn_start_encryt
+	branch z_mouse_le_ll_enable_start_enc_flag
+z_mouse_le_ll_reconn_start_encryt:
+	call p_app_updata_le_param
+	jam 5,mem_le_start_encrypt_timer
+z_mouse_le_ll_enable_start_enc_flag:
+	arg LL_START_ENC_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+z_mouse_bb_event_disconnected:
+	jam 0,mem_bt_rcvd_switch_req_accept
+	jam 0,mem_bt_send_lmp_setup_complete
+	jam 0,mem_mouse_bt_send_first_package_flag
+	call p_mouse_store_flash_device_info
+	branch mouse_bb_disconnected
+
+z_mouse_irtual_cable_unplug:
+	setarg 0x01
+	store 6,mem_plap
+	jam REC_3_MODE,mem_record_bt_mode
+	jam 0xff,mem_mouse_fast_conn_flag
+	call mouse_before_store_reconn_info
+	jam 0xff,mem_device1_type
+	branch p_mouse_store_flash_device_info
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.rom
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.rom	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/bt_program23.rom	(working copy)
@@ -0,0 +1,786469 @@
+00100000001000000000000001000000
+00100000010000000000001101101111
+01101000000000001100000111011110
+01100000000000001100111100111010
+00100000010000000000011100010011
+01101000000000001100011010000101
+01100000000000001100011011011010
+01101000000000001100110100001011
+01100000000000001100110100001100
+00100000010000000100001111001010
+00100000010000000000001111101011
+00100000010000000000011110100100
+00100000010000000000000000010001
+00100000010000000000000000100100
+00100000010000000000000001101100
+01110000000100011100011110000000
+00100000001000000000011101111010
+01011000000000000000001100100111
+01100000000000010100111110110100
+01011000000000000000001101000001
+01100000000000010100000111101111
+01011000000000000000011001001011
+01100000000000010100000111111001
+01011000000000000000001110010010
+01100000000000010100000111110001
+01011000000000000000001010001010
+01100000000000010100000111101101
+01011000000000000000001111101101
+01100000000000010100000111110101
+01011000000000000000001111001000
+01100000000000010100000111110011
+01011000000000000000010000100111
+01100000000000010100000111101011
+01011000000000000000010000110100
+01100000000000010100000111111101
+00100000011000000000000000000000
+01011000000000000000000000011001
+01100000000000010100111111000110
+00100100010101011000000000101011
+00100000010000000000010000101101
+01101000000000001100011100011111
+01100000000000001100011100011110
+00100000011000000000000000000000
+01011000000000000000000101110111
+01100000000000010100111111000110
+00100000011000000000000000000000
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+11000010100001000000000001011010
+11000000000000001000000001110100
+11000000000000010000000001111101
+11000000010000101000011101110101
+11000000010001001000011101001000
+11000000010001010000011101110111
+11000000000011011000011001100011
+11000000000100110000011001100101
+11000000001001000000011010000001
+11000000001001010000011010000011
+11000000001010001000011010001100
+11000000001011001000011001111111
+11000000010100111000011010010001
+11000000010101101000011010100111
+11000000011001011011001111100100
+11000000011101001000011010111000
+11000000010100001000000010000110
+11000000010110001000000010001011
+11000000010110010000000010011001
+11000000011000100000001010010111
+11000000011100011000010100010100
+11000000011100110000010100110010
+11000000011101010000010110101101
+11000000011101011000010110110001
+11000000011101100000010110111110
+00100000001000000010101010001110
+11000000000111001000010111000010
+11000000001000011000010111001010
+11000000001001010000010111010000
+11000000001010111000010111010011
+11000000001011001000010111010101
+11000000001100011000010111010111
+11000000001100110000011000000111
+11000000001100111000011000100110
+11000000001101010000011000110110
+11000000001110111000011001000001
+11000000000000101000011010111010
+11000000010000000000011010111100
+11000000010000010000011011000110
+11000000010001000000011011010111
+11000000010001100000011001001101
+11000000010001101000011001011001
+11000000011111010000011011111011
+00100000001000000010101010001110
+01110000010011010100011100000000
+00100000010000000000010001010010
+00100100011000001000000000000000
+00100000010000000111111011000001
+00100000010000000000010001010010
+00100100011000001000000000000000
+01110000010011010100011100000001
+00100000011000000000000000000000
+11011000101000000000100110101110
+11011111001000000000000000001100
+00100000010000000111111011010100
+00100000010000000000001100111000
+00100000010000000110101000000011
+00100000010000000101110011110110
+00100100010101011010110001100101
+00100000010000000111110011001101
+00100000001000000010000000001100
+00100000010101011011001011100011
+00100000010000000111010101101010
+00100000010101011010101101000001
+00100000010000000111011011011100
+01101000000000001100011001011010
+00100000001110100010000000010010
+01101000000000001100010110110001
+00100000001110100000000010000000
+00100000001000000010000000010010
+01011000000000000000101000000110
+01100000000000011100010100010000
+01011000000000000001110110000111
+01100000000000010100010100010011
+00100000001000000010101010100010
+11000110000100110000000000000000
+01101000000000001100110100000001
+00100100001110100111111111101111
+01101000000000001100110100000110
+00100100001110100111111111101111
+01101000000000001100011110011110
+00100000001110100111111111101111
+01101000000000001100011111000110
+11000000000000001111111111101111
+01101000000000010100001001001000
+00100100001110100111111111101111
+01101000000000001100100111100001
+00100100001110100111111111101111
+00100000001000000111111111110001
+11000110100100110000000000000000
+01101000000000001100111111000011
+11000000000000001000000010101011
+00100000010000000000000101001100
+00100100001101000000000010101101
+00100000010000000000000100100111
+00100000010000000000000100000011
+01101000000000001100111010010011
+11000001111111111000000000000000
+00100000010000000000011100011100
+01011000000000010111011100000000
+01100000000000011100111010110010
+01110000010011010011011100010100
+00100000010000000000000010111011
+00100100011101000000000000000000
+00100000010000000000001010010001
+01011000000000001111010000100100
+00100000001000000010101110010011
+01110000000100011100011100000001
+00100000001000000000011101111010
+01101000000000001100111010101111
+00100000010110100000000011011001
+01101000000000001100110100000110
+00100100011110100000000000000000
+01101000000000001100110100000001
+11000001000000001000000000000000
+01101000000000001100111111000011
+11000001000000001000000000000000
+00100000010000000000000010111011
+00100100011101000000000000000000
+01101000000000011100111010110010
+00100000010000000111111101001001
+01100000000010100100000101011011
+00100000001000000010101100101010
+01111000001101000111110000000000
+00100000010000000010101011111010
+01101000000000011100000101101111
+00100000001110100111111111101001
+01101000000000001100000010010001
+00100000001110100111111111101001
+01101000000000001100111111000011
+11000000000000001111111111101001
+00100000010000000000001010010100
+00100000010000000000001010010001
+00100000010000000011111010111111
+01101000000010001100110100010111
+00100000010000000110100000100101
+01101000000100100000000001110000
+01101000000110100000000001111000
+10011000010000011000010000000000
+00011000010001000000010000000000
+01100000000110100000000001111100
+01101000000100001000000001111101
+01111001001111111111111000000010
+01100000000100001000000001111101
+01101000000100001000000001111110
+01111001001111111111111000000110
+01100000000100001000000001111110
+01101000000100001000000001111111
+01111001001111111111111000000011
+01100000000100001000000001111111
+01101000000010001100110100000000
+01111001001111111000010000000111
+00100000001000000110100000000110
+01110000010011101000010000000001
+01110000010011101010111100000001
+01110000010011111011100000000000
+00100000010000000000000011101010
+01100000000000001100111000011111
+01011000000000000000000000000000
+01100000000000111100111000100000
+01101000000000100100111010111010
+01100000000000100100111000100111
+01110000010011101000001100001100
+01101000000000001100111010000100
+01111001001000000111111000000011
+01100000000000001100111010000100
+00100000010000000000000101001111
+00100000001000000000000010011111
+01110000010011111011100100000001
+01110000010011111011101100000000
+01101000000000001100111010000100
+00011111111000010111111000000111
+01100000000000001100111010000100
+00100000011000000000000000000000
+01101000000000001100111010000100
+01111001001000000111111000000100
+01100000000000001100111010000100
+01100000000000001100111000111111
+00100000011000000000000000000000
+01101000000000001100111010000100
+11000100000000100000000000000000
+01101000000000001100111010000100
+01111001001111111111111000000100
+01100000000000001100111010000100
+01100000000000001100111000111111
+00100000010000000000010111111000
+00100000001000000000000100111010
+01101000000000001100111110111000
+11000000100000001000000011101010
+01101000000000001100111110110110
+00011111111000001111111000000001
+01100000000000001100111110110110
+11000000000000100000000100010111
+00100000010000000000000100111010
+01110000010011101100100000000010
+01110000010011101000110000000000
+11011001011000000000110100000000
+00110100011100110000001000000000
+00100000010000000000000110000010
+00100100001011000000000110001101
+00100100001101111000000110001101
+00100000010000000000000101111111
+00100000010000000000000110101001
+00100000010000000000011100010110
+01101000000000001100111010000010
+00011111111000001111111000000001
+01100000000000001100111010000010
+00100000010000000000000011110011
+01101000000000001100111010010011
+11000000111111111000000110110010
+00100000010000000000000100011110
+01011000000000000000000000000000
+01100000000000100100111010001000
+01100000000000001100111110110111
+00100000011000000000000000000000
+00100000010000000000010111111000
+01110000010011111011011000000000
+00100000001000000000000011101010
+01110000010011111011101100000010
+01110000010011111011100100000001
+01110000010011111011100000000000
+00100000001000000000000011101010
+01101000000000001100111110111010
+11000000000000011000000100011011
+01101000000000001100111010000100
+00101111111011000000000000000100
+00100000001000001000000011101000
+01101000000000001100111110111010
+11000000000000001000000100011010
+11000000000000010000000100011011
+00100000011000000000000000000000
+01101000000000001100111010010011
+11000001111111111000000000000000
+00100000010000000000000100101100
+00100100010101100000000100110100
+00100000011000000000000000000000
+01111000010101100111110000000000
+01101000000000001100111110111001
+11000001100000001000000000000000
+01101000000000001100111110111011
+11000001100000000000000000000000
+01110000010011111011101000000001
+01110000010011101100100000000100
+00100000001000000111111111101011
+01101000000000001100111110111011
+00100000001110100000000101000111
+00011111111000001111111111111111
+01100000000000001100111110111011
+01110000010011111011101000000010
+01110000010011101100100000000100
+01101000000010001100111010001110
+01101000000000001100111010101011
+00011111111000010111111000000011
+00011111111011111010001000000100
+01011000000000000100111010010100
+10011010001000001111111000000000
+10011000010000001000110000000000
+11101000110000001000000000000000
+01100000000000001100111010001101
+00011000010000001000010000000001
+00011000010000010000010000000011
+01100000000010001100111010001110
+00100000011000000000000000000000
+01110000010011111011101000000011
+01101000000000001100111110111000
+00100100001110100000000011111011
+01110000010011101100100000000010
+00100000001000000000000100111010
+01101000000000001100111010010011
+11000000111111111000000110110000
+00100000010000000000000101010010
+00100000010000000000000111101000
+01110000010011101000100000000001
+00100000011000000000000000000000
+01101000000000010100111110110100
+00100000010000000111111110011100
+00100000001101000000000101011000
+01101000000000111100111000100000
+00100000011110100000000000000000
+00100000001000000111111111100111
+01101000000000001100110110000111
+00100100001110100000000101110100
+01110000010011101000010000000001
+00100000010000000000001101011010
+00100000010000000000000101101110
+11101000101010001000000000000000
+11101010010000001000000000000000
+10011000010000011111111000000000
+11100000101000001000000000000000
+00011010010000001010010000000001
+11101010010000100000000000000000
+11100000101000100000000000000000
+00011010010000001010010000000100
+11011000101000000100111000100101
+11011111001000000000000000000010
+11101010010000001000000000000000
+11101000101010001000000000000000
+10011000010000001111111000000000
+11100000101000001000000000000000
+00011010010000001010010000000001
+11000010000000000000000101100111
+00100000011000000000000000000000
+01110000010011101010111100000000
+00011010001000001111111000000001
+01100000000000001100111010000011
+00100000010000000000000011101010
+01100000000000001100111000011111
+00100000011000000000000000000000
+01110000010011101000010000000010
+11011010001000000000000000001001
+11011010010000000100110110010001
+01101000000000001100110110011010
+00100100010110100000000101111101
+00100000010000000000000101101110
+00011010010000100000110000000000
+00011010001000100111001000000000
+00100000001000000111111100000001
+11011010010000000100110110001000
+00100000011000000000000000000000
+11011111001000000000000000000100
+11011000101000000100111000011111
+00100000001000000111111011000110
+01111000010101111111110000000000
+00100000010000000000001001001000
+00011000000000000010101000000000
+01101000000000100100111010101011
+10011000000000000001001000000000
+01101000000010001000000000010111
+00100000010000000010100100011111
+00100000010000000010100100100100
+00100000010000000000001000000011
+00100000010101111000001001000100
+00100000011000000000000000000000
+01101000000000010100111010001001
+00011111111000001111111000000001
+01100000000000010100111010001001
+01101000000000001100111010001010
+11000010100000100000000110011010
+01101000000000001100111010010011
+11000000111111111000000110010110
+00100000010000000000000110011111
+00100000001000000000000100000100
+01101000000000001100111010001001
+11000001111111111000000000000000
+01011000000000000000000000000000
+01100000000000010100111010001001
+01110000000010101001100100111010
+00100000001000000111110110000110
+00100000010000000000011100111111
+00100000010000000000010111111000
+00100000001000000000000100111010
+01101000000000001100111010001100
+00011111111001100111110000001011
+00100100001000010000000110011100
+00011111111000001111111000000001
+01100000000000001100111010001100
+11000000000000010000000011101110
+11000000000000110000000011110101
+11000000000001000000000011101110
+11000000000001100000000011110101
+00100000011000000000000000000000
+00100000010000000000000111001101
+01101000000000001100111010000001
+00100000011110100000000000000000
+10011000000000000111001000000000
+11011000110000000100110111111111
+11011000101000000100111001100001
+00100000001000000111111100000001
+01110000000100011100011110010000
+00100000001000000000011101111010
+00100000010000000000011100010011
+01110000000100011100011110010001
+00100000001000000000011101111010
+00100000010000000000010011110110
+01110000000100011100011101100000
+00100000001000000000011101111010
+01110000010011010100011000000000
+01110000000100011100011101110000
+00100000001000000000011101111010
+01110000000100011001111011111111
+01101000000000001100111010000100
+01100000000000001001000110011111
+01101000000000100100111010111010
+01100000000000100001000110100000
+11011000010000000000000000000110
+11011010001000000001000110011110
+00100000010000000000000111001000
+00100000001000000000000111101000
+01111001001111111000000000100110
+00100000010000000101001111001110
+11011000111000000000000000000011
+00100000001000000100001111010010
+01100000000010001100111010000011
+00011000010000100111001000000000
+11011000101000000100111000011111
+00011010001000100000110000000000
+00100000001000000111111100000001
+01101000000000001100110111111110
+00011111111010010111111000000000
+01100000000000001100111010000001
+00011111111000001111111000000001
+11011000110000000100110111111110
+10011000110000001000110000000000
+11101000110000011000000000000000
+01100000000000011100111011000000
+01101000000000001100110111111110
+00011111111000110111111000000000
+00011111111000010111111000000011
+01100000000000001100111011000110
+00100000011000000000000000000000
+01100000000000100100111010101011
+11011010001000000000000000000000
+11011111001000000000000000000100
+11011000110000000100111010101011
+11101000110000001000000000000000
+10011010001000001010001000000000
+11000010000000000000000111011110
+00011010001000100111111000000000
+01100000000000010100111100110100
+01101000000000001100111100110100
+01101000000010001100111100110101
+10011000010000001111111000000000
+01100000000000001100111100110110
+00100000011000000000000000000000
+01101000000000001100111010000011
+00011111111000001111111000000010
+01100000000000001100111010000101
+01101000000000001100111010000100
+01100000000000001100111000111111
+01101000000000001100111010000011
+00011111111010011111111000000000
+01101000000010001100111010000010
+00011000010000010000010000000011
+00011000010000111000010000000000
+10011000010000011111111000000000
+01101000000010001100111010111111
+10011000010000001111111000000000
+11100000101000001000000000000000
+01101000000000001100111010000011
+10011000000000000111001000000000
+11011000110000000100111000011111
+00100000001000000111111100000001
+01111000010001001111110000000000
+01111000010000111111110000000000
+01011000010101010101010101010101
+10011000000000000001111000000000
+01101000000000001100111010001101
+00011111111011011000010000000000
+01111001001000000000010000000001
+00011000010000110001110000000000
+00100000011000000000000000000000
+00100000010000000000000111111010
+01111000010101111111110000000000
+01111000001001101111110000000000
+01111000001100001111110000000000
+01111000010100000111110000000000
+01111000001010000111110000000000
+01101000000000010100111010000110
+10011000000000000011011000000000
+00110111110000011000010000000000
+00100100001011000000001001000100
+01111000010001101111110000000000
+01111000001001011111110000000000
+01111000001000111111110000000000
+01111000001001001111110000000000
+00100000010000000000001001000001
+01100000000000001100111100110111
+01101000000010001100111100110110
+10011000010001100111110000000000
+00100100001000101000001001000100
+00100000010000000000001001000001
+01100000000000001100110111111101
+01101000000000001100110111111101
+01101000000010001100111010000100
+10101000010000000000111000000000
+00100100001000001000001001000100
+00100000010000000000001001000001
+11100000101000001000000000000000
+00011111111010010111111000000000
+00011111111000010111001000011111
+00100000001000101000001000100100
+00100000010000000000001001000001
+11100000101000001000000000000000
+11000010000000000000001000100001
+00011000101000100010001000000000
+00100000010000000000001001000001
+01100000000000001100111110111110
+00011010001000100000101000000000
+00001001100000000000000000011000
+01111000001010000111110000000000
+11011011011000000000011001100100
+00011111111011110111111000000000
+00011111111100010111111000000000
+11100000101000011000000000000000
+01111000010001011111110000000000
+00100000001000110000001001000100
+01111000001101111111110000000000
+01101000000000001000000000010111
+00011111111000001010001000000000
+00100000010000000010100110000001
+01111000010001101111110000000000
+00100000010000000010100100011000
+01101000000000001100111110111110
+00011111111000100010001000000000
+01101000000010001100111100111110
+01011000000000000100111101000101
+10011000010000001000101000000000
+00011010001000100111111000000000
+11100000101000001000000000000000
+00011000010000001000010000000001
+00011000010000010000010000000111
+01100000000010001100111100111110
+00100000011000000000000000000000
+00001001100000000000000000001000
+00011001100010010111111000000000
+00100000011000000000000000000000
+01111000010011011111110000000000
+01111000010001011111110000000000
+00100000010000000010011001001101
+00100000011000000000000000000000
+00100000010000000101001111000100
+01101000000000100100111010101011
+10011000000000000001001000000000
+00100000010000000000000111111010
+00100000010000000010100100011000
+01101000000010001100111010001101
+00100000010000000010100100110011
+01111001001000000010101000000000
+01111000001011101111110000000000
+01111000001100000111110000000000
+01111000010100001111110000000000
+00011001001100010111111000000000
+00011111111011001111111000000000
+00011111111100011111111000000000
+00001000000000001000011000101000
+01111000010011101111110000000000
+01111000001011011111110000000000
+01111000001000111111110000000000
+01111000001001001111110000000000
+01101000000000001100111100110110
+00001000000000001000011000001000
+01101000000000001100111010000101
+10011000000000000111001000000000
+11011000110000000100111000111111
+11101000110000001000000000000000
+00001000000000001000011000001000
+11000010000000000000001001100000
+01111000001001000111110000000000
+00001000000000001000011000011000
+01111000010001000111110000000000
+00110111110100111000001000000000
+00100000000000000000000001100100
+01111000010011101111110000000000
+01111000010011011111110000000000
+00100000011000000000000000000000
+00100000010000000111111111101001
+01101000000010100100111010100100
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100010000010010110100011000
+00011111111000100010010000000000
+01101000000000100100111010100100
+01101000000010001100111010101000
+10011000010000001000010000000000
+00011010010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01111001001111111111111000011100
+01100000000000100100111010100100
+00100000001000000111111111100111
+11011000010000000000000000000000
+11011111001000000000000000001000
+00011010001000100000110000000000
+11101000110000001000000000000000
+10011000010000001000010000000000
+11000010000000000000001001111101
+00011000010010010111111000000000
+00011111111000100000010000000000
+11000110100100110000000000000000
+00011111111001101111110000001010
+00100000010000000111111110000110
+00011000000001111111111000000000
+00011111111100100111111000000000
+00011000000001110000010000000000
+10011000010000011000010000000000
+00100000011000000000000000000000
+11000110000100110000000000000000
+00100000010000000000001100101110
+00100000010000000000000011000011
+01101000000000001100000001000000
+11000011000000000000001010010001
+01101000000000001000000010100000
+00100100011110100000000000000000
+01011000000000000000000000000000
+01100000000001000000000010100001
+00100000011000000000000000000000
+01101000000000001100110011011001
+00100000011110100000000000000000
+00100000001000000000010100010100
+00100000010000000010100101101100
+00100000010000000011010000010110
+00100000010000000111010010111001
+00100000001101011000001111101011
+01101000000000011100010010100011
+01100000000000011100110100111111
+00100000010000000000000000000001
+01110000000100011100011100100010
+00100000001000000000011101111010
+01110000010001111001111100000001
+01110000010001111010000000101000
+00100000011000000000000000000000
+01101000000000001100111100111010
+01100000000000001100000111011110
+00100000011000000000000000000000
+11011010001000000100001101110000
+11101010001000001000000000000000
+00100000011110100000000000000000
+10011000110000001010001000000000
+11101000110000001000000000000000
+11000001000000001000000000000000
+00100000001000000000001010100111
+01110000010011010011111001011010
+00100000011000000000000000000000
+01110000010011010011111011111111
+01110000010000100001000000110100
+01101000000000110100111111001000
+01100000000000110100010010100000
+00100000011000000000000000000000
+00100000010000000000001111101011
+00100000010000000100000011000000
+00100000010000000100000011011001
+11000000000110000000001010111100
+11000000000110001000001011001000
+00100000010000000100000011010001
+00100000000000000000001111101000
+00100000001000000000001010110110
+00100000010000000000001101100000
+01101000000000001100011011011110
+11000000001010100000001011000000
+00100000001000000100000011100000
+01110000010001101110000000000010
+11011010011000000100110101100010
+11101010011000010000000000000000
+11000001011111111000000000000000
+00100000010000000110010000010011
+00100000000000000010111011100000
+00011010011000001010011000000010
+00100000001000000000001011000010
+00100000010000000000001101100000
+01101000000000001100011011011110
+11000000001110000100000011101000
+01110000010001101110000000000001
+00100000011000000000000000000000
+01101000000000001100011101111010
+11000000111111111000010100010100
+01101000000000001100011011100001
+01100000000000001100011101111010
+00100000001000000000010100010100
+01110000100000001000011001000000
+01110000100000001000011100000000
+01101000000100001000000010000001
+01111001001111111111111000000000
+01111001001111111111111000000001
+01111001001000000111111000000011
+01111001001111111111111000000100
+01100000000100001000000010000001
+01011000000000000000000000000000
+01100000000000100000000111110101
+01101000000100001000000001111111
+01111001001111111111111000000000
+01100000000100001000000001111111
+00100000011000000000000000000000
+00100000010000000000001100100101
+00100000010000000100010000100011
+01101000000000010100011101111000
+11011000010000001010101001010101
+10011000010001100111110000000000
+00100000001000101000001100010010
+01100000000010010100011101111000
+00100000010000000100010000011100
+01101000000000001100011011100001
+01100000000000001100011101111010
+01101000000000100100110100011110
+01100000000000100100011101111011
+01100000000000100100111010101011
+00100000010000000000001010101111
+11011000010000000000000000000100
+11011010001000000100111010101011
+11011010010000000000000001011011
+00100000011000000000000000000000
+01101000000000011100011100000000
+01100000000000011100001000110010
+00100000010000000110010100101010
+01011000000000011000011010100000
+00100000010000000010101010001111
+00100000010000000110010100001011
+01011000000000000000000111111010
+01100000000100010000000010001100
+01011000000000000000000000000101
+00100000010000000110010011110011
+11000010100000000000001011110101
+00100000011000000000000000000000
+00011111111000100010011000000000
+00011010001000100111111000000000
+00011111111000001111111111111100
+00011111111000100010010000000000
+11101010010000100000000000000000
+01100000000000100100110100011001
+00011010011000100111111000000000
+00100000010000000110010101010010
+01101000000000100100110100011001
+11100010010000100000000000000000
+00100000011000000000000000000000
+01011000000000000100011101111111
+11011000010000000100011100100000
+10011000010001100000010000000000
+01101000000000011100011100000000
+11011010001000000100011100100000
+00100000011000000000000000000000
+00100000010000000000001100100101
+00100000010000000000001100001001
+00100000001000000110010101100010
+00100000010000000000001100001111
+00100000010000000000010110110011
+00100000010000000100001100011010
+01101000000000100100011101111011
+01100000000000100100111010101011
+01101000000000110100011100100010
+01101000000010110100110111110111
+10011000010001100111110000000000
+00100100001000101000001010101101
+00100000010000000000001010101111
+00100000011000000000000000000000
+01110000000010101010001010111001
+00100000010000000000001011010010
+00100000010000000110100110101100
+00100000010000000110010100001011
+11011010001000000100110100011001
+01101000000010001000101010100010
+00100000010000000110010101010110
+00100000001000000110100110101100
+01110000000010101010001010101011
+00100000001000000000001100011110
+00100000010000000100010000000001
+01101000000000010100011010011111
+00100000011110100000000000000000
+01110000010011111100001100000001
+01011000000000000000000000000000
+01100000000000010100111111000100
+00100000011000000000000000000000
+11011000110000000001100000000000
+11011000101000000100100111100101
+00100000010000000000001100110110
+11011000110000000001100100000000
+00100000010000000000001100110110
+11011000110000000001101000000000
+00100000010000000000001100110110
+11011000110000000001101100000000
+11011111001000000000000000011011
+00100000001000000111111100000001
+11011000110000000100100111100101
+11011000101000000001100000000000
+00100000010000000000001100110110
+11011000101000000001100100000000
+00100000010000000000001100110110
+11011000101000000001101000000000
+00100000010000000000001100110110
+11011000101000000001101100000000
+00100000001000000000001100110110
+00100000010000000101100010010010
+00100100011110100000000000000000
+01101000000000001100110100111110
+11000000011111111000001101001000
+01101000000000001100011011000101
+00011111111000010111111000000011
+11000001100000011000000000000000
+01101000000000001100011110011110
+00100000010110100000001110001010
+01101000000000100100011011010011
+11000010100000101100000101111001
+00100000010000000011111110010111
+00100100011101000000000000000000
+00100000010000000000001101010111
+00100000010000000000001101011010
+00100000010000000000001110000101
+01101000000000001100110110000111
+11000000000000001000001101100011
+11011010001000000100011010011010
+00100000010000000111111000111101
+00100000010101000000001101110100
+00100000011000000000000000000000
+01110000010000010111001000000000
+01110000010011010011011000011110
+00100000011000000000000000000000
+01101000000000001100110100110101
+11000001100000001000000000000000
+01011000000000000000000000000000
+01100000000000001100110100110101
+01100000000000100100011010011011
+00100000001000000000001110001100
+11011010011000000100110101101111
+00100000010000000000001011000010
+00100000001000000000001011001101
+01101000000000001100110110011010
+00100000001110100000001101101101
+01101000000001000100110110001001
+01100000000001000000101010011010
+11011010001000000000000000001000
+11011000010000000000000000010101
+00100000010000000101101001100100
+01101000000001000000101010011010
+11100000101001000000000000000000
+00100000011000000000000000000000
+01101000000001000100110110010010
+00100000001000000000001101100110
+01110000010001111010001000000111
+01110000010001111010001100000100
+01011000000000000100011110100010
+01100000000000010100001000011000
+00100000001000000111111000111000
+01101000000000001100011111000011
+00011111111000001111111000000001
+01100000000000001100011111000011
+00100000011000000000000000000000
+11011010001000000100011010011010
+00100000010000000111111001010100
+00100000001101000000001101111100
+00100000011000000000000000000000
+00100000010000000101011001010010
+01101000000000001100011111000011
+00011111111001100111110000000001
+00100100010000010101011001010000
+01101000000000001100011111000011
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001100011111000011
+00100000001000000011111110010000
+01101000000000010100011010011111
+00100000011110100000000000000000
+01110000010010011110000100000001
+01110000010010011110001000000010
+00100000011000000000000000000000
+01110000010001111001111000000001
+00100000010000000101100000010100
+01110000010011001101100100000001
+00100000001000000000001010110100
+00100000010000000110100010100010
+01011000000000000001000100100010
+01100000000000010100011111000100
+00100000011000000000000000000000
+00100000011101110000000000000000
+01101000000000001100000111100010
+00100000011110100000000000000000
+00100000010000000101001001110001
+00100100011110100000000000000000
+01101000000000001100011110011110
+00100000010110100000001110001010
+01101000000000100100011011010011
+11000010100000101011111110001010
+11000010100001001011111110001010
+00100000010000000011111110010111
+00100100011101000000000000000000
+00100000010000000000001101010111
+00100000010000000000001101011010
+00100000010000000000001110000101
+01101000000000001100110011011110
+11000000000000001000001110101000
+01101000000000001100110011100101
+00100000011110100000000000000000
+01101000000000001100110110000111
+11000000000000001000001110111001
+00100000001000000011111110000001
+01101000000000001100011010011010
+01100000000000001100110011011111
+01101000000000001100011010011011
+11100000101000001000000000000000
+01101000000000001100011010011101
+11100000101000001000000000000000
+01101000000000010100011010011111
+11100000101000010000000000000000
+11011010001000000000000000000111
+00100000010000000100110101100011
+01101000000000010100001001001110
+11100000101000010000000000000000
+01011000000000000000001010100001
+11100000101000010000000000000000
+01101000000000101100110011011111
+11100000101000101000000000000000
+00100000011000000000000000000000
+01101000000000001100110110011010
+00100000001110100000001111000110
+01101000000001000100110110001001
+01100000000001000000101010011010
+11011010001000000000000000001010
+00100000010000000100110101100011
+01101000000000010100001001001110
+11100000101000010000000000000000
+01011000000000000000000110100001
+11100000101000010000000000000000
+01101000000001000000101010011010
+11100000101001000000000000000000
+00100000011000000000000000000000
+01101000000001000100110110010010
+00100000001000000000001110111100
+00100000010000000111111000110100
+00100000010000000000001111001011
+00100000001000000011111011100000
+01110000010011011111010100000101
+01101000000010001100011011100111
+01101000000000001100110111110011
+00100000010000000000010101001000
+01100000000000001100110111110011
+01101000000010001100011011100111
+00100000010000000000010110000001
+00011010001000100111111000000000
+11000010100000101000001111010101
+00100000001000000011110101100010
+01101000000000001100011010110110
+11000001000000000000000000000000
+01110000010001101011011000000000
+01101000000000001100011101111010
+00011111111000001111111000000001
+00011111111000010111111000000011
+01100000000000001100011101111010
+00100000010000000011110101111110
+00100000010000000000001100100101
+00100000010000000000001011110010
+00100000010000000000001100001001
+00100000010000000000001011111110
+00100000010000000000001011110101
+00100000010000000000001011010010
+11011000010000000000000000000010
+11011010001000000100011111000100
+11011010010000000000000001011111
+01101000000000011100011100000000
+10011010010000001111111000000000
+00100000010000000000001011111110
+00100000010000000000001011110101
+00100000010000000000001100011101
+01110000010000100001001001110110
+00100000001000000011110100110110
+00011010011000100111111000000000
+11000000000010100000001111111110
+11000000000010101000010000000111
+11000000000101001000010000001010
+11000000000110010000010000001100
+11000000001000000000010000001110
+11000000000000100000010000010000
+11000000000010011000010000010000
+11000000000011001011001111011111
+11000000000100001000010000010100
+11000000000000001000010000010110
+11000000000000010000010000011011
+11000000000101011000010000011110
+11000000000111001000010000100000
+11000000000111010000010000100011
+11000000000111100000010000100101
+00100000001000000100000101111101
+00100000010000000000001110001100
+00100000010000000011010000010000
+01110000010011010011110100000001
+01101000000000001100011110100001
+00100100001110100000010000000100
+01110000010011010100010000010100
+00100000010000000000010011000010
+00100000010000000000001101101111
+00100000001000000100000111000011
+00100000010000000000010000101010
+01110000000100011100011110100010
+00100000001000000000011101111010
+01110000000010101001100100010010
+00100000001000000111110110001111
+01110000000100011100011110110011
+00100000001000000000011101111010
+01110000000100011100011110100001
+00100000001000000000011101111010
+01110000000100011100011110100011
+00100000001000000000011101111010
+01110000000100011100011110110101
+00100000001000000000011101111010
+01110000000100011100011110110001
+00100000001000000000011101111010
+00100000010000000000001110001100
+00100000010000000000010011000010
+00100000010000000000010011101001
+01110000010010011110010000000000
+00100000001000000100001011001010
+00100000010000000000010000101010
+01110000000100011100011110110100
+00100000001000000000011101111010
+01110000000100011100011110110010
+00100000001000000000011101111010
+00100000010000000000001110001100
+01110000000100011100011110010010
+00100000001000000000011101111010
+01110000000100011100011101100001
+00100000001000000000011101111010
+00100000010000000000001110001100
+00100000001000000011111110001101
+00100000010000000000010000101010
+01110000000100011100011110100100
+00100000001000000000011101111010
+01101000000000001100110011011001
+00100000011110100000000000000000
+01110000010011001101100100000000
+00100000010000000000001010110100
+01011000000000000000000000000110
+00100000010000000110010000010100
+00011111111000011111111000001000
+00011111111011010111111000000000
+00011111111000001111111000000110
+00100000001000000110010000010011
+00100000010000000000010100000010
+00100000010000000000010011000101
+00100000010000000000010010011001
+00100000010000000000010010111000
+00100000010000000000010010011110
+00100000010000000100001000110100
+00100000010000000000010001000100
+00100000010000000000010010010010
+00100000010000000000010001111100
+00100000010000000000010001111001
+00100000010000000000010010000100
+00100000010000000000010010001010
+00100000010000000000010001110001
+00100000010000000100001000110001
+00100000010000000000010001110100
+00100000001000000100001000111010
+00100000010000000000010001010010
+00100000001000001000010001100011
+01101000000000001100110101000111
+00100100001110100000010001011111
+01101000000000001100011011011001
+11000001000000001000000000000000
+01110000010001101101100100000001
+01110000010011001111111100000001
+01101000000000001100110101000110
+00100000001110100000010001011101
+00100000010000000000010001010110
+01110000010000011011110100000000
+00100000010000000000001111011101
+00100000001000000100001101111000
+01101000000010001100011011101101
+00100000010000000110011111111011
+01101000000010001100011011101101
+00100000001000000110100000011101
+01101000000010001100011100100000
+00011000010000001000010000000001
+01101000000000001100011011010010
+10011000010001100111110000000000
+00100100010000010100001111001100
+01100000000010001100011100100000
+00100000011000000000000000000000
+01110000010011010100011011111111
+00100000011000000000000000000000
+01110000010011010100011100000000
+01110000010001101101100100000001
+01110000010011001111111100000001
+00100000011000000000000000000000
+01101000000000010100011010000010
+11000010100001011000010001100110
+01110000010011001111111100000000
+01101000000000001100011011011001
+11000001000000000000000000000000
+01110000010001101101100100000000
+01101000000000010100001000001000
+11000011100001010000000000000000
+01101000000000001100011100100000
+11000001100000001000000000000000
+01101000000000010100001000001010
+01111001001000000111111000001010
+01100000000000010100001000001010
+00100000001000000100001110000110
+11011010011000000100100111100100
+11011010010000000110001101111010
+00100000001000000011001101101101
+11011010011000000100110011100100
+11011010010000000000010001110111
+00100000001000000011001101101101
+01110000010011001110010100000001
+00100000011000000000000000000000
+11011010011000000100011011000110
+11011010010000000011110101100000
+00100000001000000011001101101101
+11011010011000000100011010101110
+11011010010000000000010001111111
+00100000001000000011001101110100
+01101000000000001100110100111110
+11000000011111111000010010101100
+01101000000000001100110100001001
+00100100011110100000000000000000
+00100000001000000100001001100110
+11011010011000000100110100110110
+11011010010000000000010010000111
+00100000001000000011001101101101
+01101000000000001100011111000111
+01100000000000001100000101110010
+00100000001000000000010010010111
+01101000000000001100110100111101
+00100000011110100000000000000000
+11011010011000000100110101000100
+11011010010000000000010010001111
+00100000001000000011001101101101
+01101000000000001100110101000101
+00100100011110100000000000000000
+00100000001000000101101111110101
+11011010011000000100110100110111
+11011010010000000000010010010101
+00100000001000000011001101101101
+01011000000100100100111110000000
+01100000000000011100111010110010
+01110000010011010011010100000001
+00100000011000000000000000000000
+11011010011000000100100111100010
+11011010010000000000010010011100
+00100000001000000011001101101101
+01110000010010011110000100000000
+00100000011000000000000000000000
+00100000010000000000010001010010
+00100000001000001000010010100101
+00100000010000000000010101000000
+11000000000000111000010010100101
+00100000010000000100001110101001
+11011000111000000000000000001001
+00100000001000000100001111010010
+00100000010000000000010110000001
+01110000010001111010000000101000
+00100000010000000000010010101001
+00100000001000000100001110110000
+11011010011000000100011011011010
+11011010010000000000010010101100
+00100000001000000011001101101101
+01101000000000100100011011010011
+11000011100001001000000000000000
+01110000010011010100011000000000
+01101000000000010100011010000010
+00101111111011111111111000001011
+00100000010000001100001011010100
+01101000000000010100011010000010
+00101111111011111111111000000111
+00100000010000001100001110010010
+11011000111000000000000000001001
+00100000010000000100001111001110
+00100000001000000100001110111000
+01101000000000001100110100001001
+00100100011110100000000000000000
+01101000000000001100011110011111
+00100000011110100000000000000000
+11011010011000000100011110100000
+11011010010000000000010010111111
+00100000001000000011001101101101
+01110000010001111001111100000000
+00100000010000000000010000101101
+00100000001000000011010000001010
+01110000010001111001111100000000
+01110000010001111010000000000000
+00100000011000000000000000000000
+01101000000000001100110011111111
+00100000011110100000000000000000
+01101000000000001100110100000010
+11000000000000000000010011001011
+11000000000000001000010011010101
+00100000011000000000000000000000
+00100000010000000000010011011110
+01101000000000001100110100000111
+00011111111000001111111000000001
+01100000000000001100110100000111
+01101000000010001100110100000011
+10011000010001100111110000000000
+00100000010000101000010011010011
+00100000011000000000000000000000
+01110000010011010000100100000000
+00100000001000000000010011101111
+11011010011000000100110100000101
+11011010010000000000010011011000
+00100000001000000011001101101101
+01101000000000001100110100000100
+01100000000000001100110100000101
+01101000000000001100110100000001
+11000000000000001000010011101111
+11000000000000000000010011011110
+00100000011000000000000000000000
+01110000010011010000000100000001
+01101000000000001100011100100000
+11000000000000010000010011100101
+01101000000010001100110100000000
+00100000010000000110100000001110
+01101000000010001100110100000000
+00100000001000000110100000101001
+01101000000010001100110100000000
+00100000010000000110100000001110
+01101000000010001100110100000000
+00100000001000000110100000100101
+01101000000000001100110100000111
+00100100011110100000000000000000
+01101000000000001100110100001001
+00100100011110100000000000000000
+01011000000000000000000000000000
+01100000000000011100110100000101
+01101000000000001100110100000110
+00100100001110100000010011110011
+01110000010011001111111100000000
+01110000010011010000001000000000
+01110000010011010000011100000000
+01110000010011010000000100000000
+00100000001000000000000011010110
+01110000010011010000100100000001
+01110000010011001111111100000001
+01110000010011010000001000000000
+01110000010011010000011100000000
+00100000011000000000000000000000
+01110000010011010000100100000000
+01110000010011010000010000000010
+01110000010011010000011000000001
+01110000010011010000010100000010
+01110000010011001111111100000001
+01110000010011010000001000000001
+00100000011000000000000000000000
+01101000000000010100110100000110
+00100100011110100000000000000000
+11011010011000000100011011001110
+11011010010000000000010100000111
+00100000001000000011001101101101
+01110000010001101100111000001010
+00100000010000000110100011101011
+00100000010000000110100100001000
+00011111111000001111111000011100
+01100000000000010100011100001111
+11011010001000000100011100001001
+11101010001001000000000000000000
+01100000000001000000101010011010
+01101000000010010000101010011100
+01101000000000010000101010100000
+10011000010001100111110000000000
+00100100001000010000010011000000
+00100000011000000000000000000000
+01101000000000001100011011100000
+11000000000000110000010100100010
+11000000000000010000010100100010
+01101000000000001100011101111010
+00011111111001100111110000000001
+00100000010000101000010100011110
+01101000000000001100011101111010
+11000000000000000000010100100000
+11000000000000011011110110001100
+00100000001000000011110110001000
+01110000010001110111101000000010
+00100000011000000000000000000000
+01101000000000001100011101111111
+00100000001000000000010100101010
+01101000000000001100011101111010
+00011111111001100111110000000001
+00100000010000101000010100011110
+01101000000000001100011101111010
+11000000000000000000010100101100
+11000000000000011000010100101111
+01101000000000001100011110000001
+00011111111000001111111111111111
+01100000000000001100011010110101
+00100000001000000011110111000001
+01101000000000001100011101111111
+00011111111000001111111111111111
+00100000001000000000010100101010
+01101000000000001100011110000010
+00011111111000001111111111111111
+00100000001000000000010100101010
+01111000010101000111110000000000
+01011000000000000000000000000000
+01100000000000110100011010011011
+00100000010000000000010110011101
+00100000010000000100000001111001
+00100000010000000000010100111110
+00100100001101000000010100111011
+00100000010000000000011110011011
+00100000001000000011111110100000
+00100000010000000000011110100100
+01110000010011010001000100000000
+00100000011000000000000000000000
+00100000010000000000010101000000
+00100000001000000100000010011010
+01101000000000001100011010011010
+00011111111000100010001000000000
+00100000010000000000010101100001
+00100000010000000000010101100111
+00100000010000000000010101101101
+00100000010000000000010101110011
+00011010001000100111111000000000
+00100000011000000000000000000000
+01100000000000001100110111110110
+00011111111000111111111000000000
+00011111111000100010010000000000
+00011000010000100010011000000000
+01101000000000001100110111110101
+00011111111001100111110000000010
+00100000010000010000010110000001
+00100100010000010000010110001100
+00011010011000100000010000000000
+00100000010000000110100000011101
+01111001001000001010010000000000
+00100000010000000000010101011011
+00011010010000010111111000000111
+01101000000010001100110111110101
+00011000010000100000111000000000
+00011000010001100111110000000010
+11000000000000111000010110000110
+11000000000000000000010110001001
+00100000011000000000000000000000
+01101000000010001100110111110110
+00011000010000010000010000000001
+00011010010000010111111000000001
+10011000010001100111110000000000
+00100100001000101000001101010111
+00100000011000000000000000000000
+01110000010011011111010100000000
+01101000000010001100011011100010
+01101000000000001100110111101110
+00100000010000000000010101001000
+01100000000000001100110111101110
+00100000011000000000000000000000
+01110000010011011111010100000001
+01101000000010001100011011100011
+01101000000000001100110111101111
+00100000010000000000010101001000
+01100000000000001100110111101111
+00100000011000000000000000000000
+01110000010011011111010100000010
+01101000000010001100011011100100
+01101000000000001100110111110000
+00100000010000000000010101001000
+01100000000000001100110111110000
+00100000011000000000000000000000
+01110000010011011000011100000000
+01110000010011011111010100000100
+01101000000010001100011011100110
+01101000000000001100110111110010
+00100000010000000000010101001000
+01100000000000001100110111110010
+00011010001000100111111000000000
+11000010100000100000010110010010
+00100000010000000000010110010101
+00011010001000100111111000000000
+00011010001000010010001011101111
+01101000000000001100110110011010
+01100000000000001100110110011011
+01101000000010001100011011100110
+01111001001000000000010000000111
+11011000101000001000000001111000
+00100000010000000110100000110000
+01111001001111111000010000000111
+00100000001000000000010110010000
+00100000001000010000010110001010
+11111001001111111010001000000000
+00100000011000000000000000000000
+00100000001000010000010110000111
+11111001001000000010001000000000
+00100000011000000000000000000000
+01111001001111111000010000000111
+11011000101000001000000001111000
+00100000010000000110100000110000
+01111001001000000000010000000111
+11011000101000001000000001111100
+00100000001000000110100000001010
+01110000010011011001101000000001
+00100000010000000000010110011000
+00100000001000000000010101111100
+01110000010011011001101000000000
+01101000000000001100110110011011
+00100000011110100000000000000000
+01110000010011011000011100000001
+00100000001000000111111111100111
+01101000000010001100011011101101
+01111001001111111000010000000111
+00100000001000000000010110000010
+01101000000000001100011011100000
+11000000000001000000010110100010
+00100000010000000011111111000000
+01111000010101000111110000000000
+00100000001000000011111111100111
+00100000010000000011111111000000
+01111000010101000111110000000000
+01011000000000000000000000000010
+00100000010000000110010000010100
+11000100000000111000000000000000
+01011000000000000000000000001000
+00100000010000000110010000010100
+00100000001110100011111111101101
+01011000000000000000000000000000
+01100000000000110100011010011011
+00100000011000000000000000000000
+00100000010000000000010011000010
+00101000000011111111111000100110
+00100000010000001000000111000100
+00100000001000000100001001101101
+01110000000100011100011101010000
+00100000001000000000011101111010
+00100000010000000000001100100101
+11011000010000000000000000000010
+11011010001000000100011111000100
+11011010010000000000000001011111
+01101000000000011100011100000000
+10011010010000001111111000000000
+00100000001000000110010101100010
+11011000101000000100001101111011
+11011111001000000000000000010011
+00100000010000000111111100000001
+00100000001000000101011110111000
+00100000010000000000010011101001
+01110000010011001101100100000001
+00100000010000000000001110001100
+00100000001000000100001011001011
+01101000000000001100010100001111
+00011111111000001111111000000001
+01100000000000001100010100001111
+11000000000001100101001110010101
+00100000010000000101010110101010
+00100000010000000101011000011110
+00100000010000000000011100011100
+00100000001000000101001110001111
+01101000000000001000000000010110
+00011111111000001111111000000001
+01100000000000001000000000010110
+11000001100101000000000000000000
+01110000000000000001011000100101
+00100000011000000000000000000000
+00100000010000000010100110111011
+00100000010000000000001000110111
+00100000001000000101010010100011
+01110000000100011100011101000000
+00100000001000000000011101111010
+01110000000100011100011101000001
+00100000001000000000011101111010
+01101000000000001000010001010110
+11000010100000101000010111110111
+00100000010000000000011100010110
+01101000000000001100011110001110
+00100100001110100000010111100001
+01101000000000001000010000111111
+11000011000000100000010111100101
+01101000000000001000001011011010
+00100000001110100000010111100101
+00100000001000000101011001100100
+01101000000000001100011110001110
+00011111111000001111111111111111
+01100000000000001100011110001110
+00100000001000000101011001100100
+01101000000000001100010011000100
+11000000100000101000010111101000
+01110000010001111000111000000011
+00100000010000000101100010010010
+00100000010110100000001101111000
+00100000001000000101011000100010
+01101000000000001100011011000101
+00011111111000010111111000000011
+11000001100000011000000000000000
+01101000000000001100011111000011
+00100000011110100000000000000000
+01101000000000001100001111011101
+00100000011110100000000000000000
+01101000000000001100001111011100
+01111001001000000111111000000100
+01100000000000001100001111011100
+00100000010000000101011001010000
+00100000011000000000000000000000
+00100000010000000000010111101011
+01101000000000001100111110111100
+00011111111001100111110000000010
+00100100010000010000011100011010
+01101000000000001100111110111100
+11000001000000000000000000000000
+00011111111000001111111111111111
+01100000000000001100111110111100
+00100000011000000000000000000000
+01101000000000001100011110100001
+00100000011110100000000000000000
+01101000000000001100011011000101
+00011111111000010111111000000011
+11000001000000011000000000000000
+01110000010001101100011000000001
+00100000011000000000000000000000
+11000110000001111000000000000000
+00100000010000000101100010010000
+00100100011110100000000000000000
+01101000000000001000001011011001
+00011111111000010111111000000011
+01100000000000001100010100001100
+11101000110000001000000000000000
+00011111111000010111111000011111
+01100000000000001100010100001011
+00100000011110100000000000000000
+00011000110000100111111000000000
+01100000000000010100010100001101
+01101000000000001100010100001100
+11000000000000011000011000010110
+00100000001000000101011010001101
+01101000000000001000001011011011
+11000000000000000000011000011010
+11000000000000001000011000100001
+00100000001000000101110001100101
+00100000010000000101110001111011
+01101000000000001100110101001000
+00100000011110100000000000000000
+01101000000000001100001111011000
+01100000000000001100000101110010
+01100000000000001100011111000111
+00100000011000000000000000000000
+11101000110000101000000000000000
+01100000000000101100001111001110
+11101000110000010000000000000000
+01100000000000010000010001011111
+00100000001000000101110010001010
+11101000110000010000000000000000
+11000000000000100000011000101010
+11000000000000110000011000101110
+00100000001000000101011010011000
+00100000010000000111111010100101
+00100000010000000000011000000000
+00100000010000000111111010011111
+00100000001000000101100010101011
+11101000110000001000000000000000
+11000000000000001000011000110010
+11000000000000101000011000110100
+00100000001000000101101011110110
+01110000010011010100010100000001
+00100000001000000101101100001001
+01110000000100011100011110000010
+00100000001000000000011101111010
+01101000000000001000000000010110
+11000000100100111101011011110010
+00100000010000000000011000111100
+11011000111000000000000000000000
+01101000000000010100010010000010
+00100000001000000111111100001000
+00011000000010100111111000000000
+11011000010000000000000111111111
+10011000010000010111111000000000
+00011111111000001111111011111010
+00100000001000000011110010111110
+01111000010101011111110000000000
+00100000001101110000011001000100
+00100100001101101101100000000110
+00100000010000000010101111001011
+01101000000000010100000011000001
+01100000000000010000010001001101
+01101000000000001100011011000101
+00101111111000000000011000000011
+00100100001000001010101111011110
+00100000001000000101011111111011
+01110000000100011100011101000010
+00100000001000000000011101111010
+01101000000100001000000001110111
+00011111111000010111111011111101
+01100000000100001000000001110111
+01101000000110001000000001110011
+00011000010000011000010000000010
+01100000000110001000000001110011
+00100000010000000110001111101110
+00011000010000010000010011111101
+00100000000000000000000000001101
+00100000010000000000011001011010
+01100000000110001000000001110011
+00100000011000000000000000000000
+00100000010000000110010011011101
+01101000000100001000000010000001
+01111001001000000111111000000000
+01111001001111111111111000000001
+01111001001111111111111000000011
+01100000000100001000000010000001
+00100000011000000000000000000000
+01011000000000000100101001010001
+01100000000000010100010101110101
+00100000011000000000000000000000
+01110000000100011100011100000000
+00100000001000000000011101111010
+00100000010000000010000111001001
+00100100011101000000000000000000
+01111000010101000111110000000000
+01110000000000000001000100100000
+01111001001111111000000000001011
+01111001001111111000000000101101
+00100000010000000010101001001111
+00100000010000000010001011100110
+11000101000001011000011001110010
+00100000010000000010010001010101
+00100100001110100000011001101011
+11000101000101101000011001111011
+00100000001000000010000111101100
+00100000010000000010101001001101
+11011000001000000000000000010000
+00100000010000000010001011011100
+01111001001000000000000000101101
+01111001001111111000000000001011
+01101000000000001000000001110111
+10011000000000000000100000000000
+01110000000000000001000100000010
+00100000001000000000011001101011
+01101000000000100000000101100101
+00011111111000001111111000001000
+01100000000000100000000101100101
+00100000001000000010000111111000
+11000101000101100010011001001101
+00100000001000000010010110001111
+01110000000100011100011101000011
+00100000001000000000011101111010
+01101000000000001000000000110000
+00101111111011111111111000000000
+00100000010000001000011010000111
+00100000001000000010010010001010
+01101000000000001000000001000111
+00101111111011111111111000000011
+00100000010000001000010111111000
+00100100010000001000011100010110
+00100000001000000000011100011100
+00100000010000000010010011110000
+00100100001011000010100011111001
+00100000010000000010100110111011
+00100000010000000000001000110111
+00100000001000000010010100011000
+11000110000100110000000000000000
+00100000010000000010101011111010
+01101000000000011100000101101111
+00100000011110100000000000000000
+01101000000000001100000010010001
+00100000011110100000000000000000
+01101000000000001100011001011010
+00100000001110100000011010011011
+01101000000000001100010110110001
+00100000011110100000000000000000
+01101000000000001100010011000000
+00100100011110100000000000000000
+00100000010000000010110000111010
+00100100011110100000000000000000
+01101000000000001100000001000000
+00101111111000000000111000000011
+00100100001000001010101110011101
+01101000000000010100000001000010
+11011000010000001111111111111111
+10011000010001100111110000000000
+00100000011000101000000000000000
+00100000001000000010101101111101
+01111000010101011111110000000000
+01101000000000001000000000110000
+11000100000000001000000000000000
+00100100001101101010101111010000
+00100000010000000010101111001011
+01101000000000010100000011000001
+01100000000000010000000000111110
+01101000000000001000000001000111
+11000010100000011010101111011110
+11000101100001101010101111011110
+00100000010000000101001001110100
+00100100001110100010101111011110
+00100000010110100000011010110101
+00100000001000000010101110111110
+01110000000000001000101000000001
+01110000000000001000101100000000
+00100000011000000000000000000000
+01110000000100011100011100010000
+00100000001000000000011101111010
+01110000000100011100011100010001
+00100000001000000000011101111010
+01101000000000001000010101010010
+01100000000000001000010011001001
+11000000000010011000011011000000
+00100000001000000101110110110100
+00100000010000000101110111001111
+01110000010011001101101000000001
+01101000000000001100110011011100
+00100000011110100000000000000000
+01110000010011001101110000000010
+00100000011000000000000000000000
+01111000010101000111110000000000
+00100000010000000110001011000001
+01101000000000001000000001001000
+00100000011110100000000000000000
+11000010100000111000011011001111
+11000000000000011000011011010001
+11000000000110001000011011010011
+11000000000010111000011011010101
+00100000001000000110000000010000
+01110000000100011100011100100000
+00100000001000000000011101111010
+01110000000100011100011100100001
+00100000001000000000011101111010
+01110000010011001101110000000001
+00100000001000000110000111000011
+01110000010011001110010000000100
+00100000001000000110000110100100
+00100000010000000110001010111100
+00100100011110100000000000000000
+01101000000000001000000001010101
+00100000011110100000000000000000
+11000000000000100000011011111001
+11000000000010000000011011011110
+00100000001000000110001100100000
+01101000000000001100010101011011
+11000001000000000000000000000000
+11000000000000001000011011100010
+00100000001000000110001101011111
+00100000011101001000000000000000
+01101000000000001000000101101101
+11000010100000000000011011100110
+00100000001000000110001110011001
+01101000000000001100110011011100
+11000000000000001110001110011101
+01101000000000001100000110111101
+00100000001110100110001110101001
+01101000000000001000010011010001
+11000100000000011000000000000000
+11000100000000010000000000000000
+01101000000000001100110011011011
+00100000011110100000000000000000
+01110000010011001101101100000000
+01101000000000100000010011101001
+11011000010000000000000000010100
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100001000010000011011110111
+00100000001000000110001101001001
+01110000010011001101101100000001
+00100000011000000000000000000000
+01110000010010011110010000010100
+00100000001000000110001101101111
+00100000010000000110001010111100
+00100100001110100111110111011011
+01101000000000001000101010011001
+11000101100001001111110111010110
+11000000000011111000011100000011
+11000000000100000000011100000110
+11000000000010010000011100010000
+00100000001000000111110111001010
+01110000000000011000010100110100
+01101000000000110000010001001111
+00100000001000000000011100001000
+01110000000000011000010100110011
+01101000000000110000000001000000
+01100000000000110000000110000110
+01101000000000100100011011010011
+11000100000000111000000000000000
+11011000111000000000000000000111
+00100000010000000100001111010010
+00100000010000000100001011101000
+00100000010000000100001011111011
+00100000001000000000001111011101
+00100000010000000101100010010000
+00100100011110100000000000000000
+00100000001000000101101010111111
+01110000010011111011111100000001
+01110000010011111011110000000000
+00100000011000000000000000000000
+01101000000000001100111110111100
+00011111111000001111111000000001
+01100000000000001100111110111100
+00100000011000000000000000000000
+01110000010011111011110000000011
+00100000011000000000000000000000
+01101000000000010100011010000010
+11000011100001011000000000000000
+11000011100000111000000000000000
+11000011100000110000000000000000
+11011010001000000100111101000101
+00100000010000000000001001111010
+01100000000010001100111110111101
+01011000000000000000000010000010
+11000101000100110000011100100110
+01011000000000000000000010000000
+10011000010001100111110000000000
+00100100001000010000011100111110
+01101000000000001100111110111100
+00011111111001100111110000000010
+00100100001000010000011100101110
+01101000000000001100111110111100
+11000000000000000000011100111111
+00100000011000000000000000000000
+01101000000000001100111110111100
+11000001100110010000000000000000
+01110000010011111011110000000000
+01101000000010001100111110111101
+01011000000000000000000001110111
+11000101000100110000011100110101
+01011000000000000000000001110101
+10011000010001100111110000000000
+00100100011000010000000000000000
+01101000000000001100111110111111
+11000000000000000000011101000110
+00011111111000001111111111111111
+01100000000000001100111110111111
+11000000000000000000011101000110
+01110000010000011101111000000000
+00100000011000000000000000000000
+01110000010011111011110000000000
+01101000000000001100111110111111
+11000000000000010000011101000100
+00011111111000001111111000000001
+01100000000000001100111110111111
+11000000000000001000011100111100
+01110000010000011101111000000010
+00100000011000000000000000000000
+01110000010000011101111000000100
+00100000011000000000000000000000
+01100000000010001000000000010111
+00011000010000001010001000000000
+00100000010000000010100110000001
+01011000000000000000010100000000
+00100000010000000010101010001111
+01110000100010010000011000000001
+01110000100010010000000000111100
+01110000100010010000000111100000
+00100000000000000000000000001010
+01110000100010010000001000000001
+01110000100010010000001000111101
+00100000000000000000000000001010
+01110000100010010000001110110111
+00100000000000000000000000001010
+01110000100010010000001001111101
+01101000000000001100000111011110
+11000000000000010000011101100000
+11000000000000100000011101101000
+11000000000100000000011101110010
+00100000010000000000011101101101
+01110000100010010101010111010000
+01110000100010010101011011100000
+01110000100010010101100001101100
+00100000001000000010100101001011
+01110000100010010100110011111011
+01110000100010010100110111101111
+01110000100010010100111011101100
+01110000100010010100111101011110
+01110000100010010101010111010000
+01110000100010010101011011100000
+01110000100010010101100000111100
+00100000001000000010100101010011
+00100000010000000000011101101101
+01110000100010010101010111010000
+01110000100010010101011011000000
+01110000100010010101100001101100
+00100000001000000010100101011011
+01110000100010010100110001011011
+01110000100010010100110110010110
+01110000100010010100111000101100
+01110000100010010100111101000110
+00100000011000000000000000000000
+01110000100010010101011011000010
+01110000100010010101010111010000
+00100000011000000000000000000000
+00011000000000000010101000001000
+00100000001000000010100011111010
+00100000010000000010100101111000
+01110000100000000100001000000101
+00100000011000000000000000000000
+01101000000010001001000111000111
+00011000010100011000010000000000
+01101000000000001100110100100111
+10011000010001100111110000000000
+00100000001000101000011110011001
+01100000000010001100110100100111
+00011000010000001000010000000001
+01011000000000000000000100000000
+10011000010011111000010000000000
+01101000000000011100110100101000
+10011000010001100111111000000000
+01101000000010011100110100101011
+10011000010000001111111000000000
+00011111111000001111111111111011
+01100000000000011100110100101110
+00100000010000000000001100100101
+01101000000000011100110100101110
+11011000010000000000000100000000
+11011010001000000001111100000000
+00100000010000000110010101100010
+01101000000000100001111100000000
+01101000000010100100110100110001
+10011000010001100111110000000000
+00100100001000101000011110001010
+00100000010000000000001111101011
+01011000000000000001111100000000
+01100000000000010100000110011001
+01110000010000011001101101000000
+00100000010000000110010011001010
+01011000000000000000000000000000
+01100000000000100100000110011001
+01101000000000001001000111000111
+00100000001000000000000000000001
+01101000000000100100011010011011
+00100000011110100000000000000000
+00100000010000000000011111110000
+01011000000000000000000000000011
+00100000010000000000011111100011
+01011000000000000000000000000010
+00100000010000000000011111101001
+01101000000000001100110011100110
+11000000000000001000011110100111
+11011111001000000000000000000101
+11011000101000000100110011100110
+00100000001000000111111011010100
+01101000000000010100110011100111
+01100000000000010001000110111110
+01101000000000010100011010011011
+01100000000000010001000111000000
+00100000010000000000011110111010
+01101000000000010001000110111110
+01100000000000010100110011100111
+01101000000000010001000111000000
+01100000000000010100011010011011
+01101000000000010100110011101001
+01100000000000010001000110111110
+01101000000000010100011010011101
+01100000000000010001000111000000
+00100000010000000000011110111010
+01101000000000010001000110111110
+01100000000000010100110011101001
+01101000000000010001000111000000
+01100000000000010100011010011101
+00100000011000000000000000000000
+01101000000000010001000110111110
+01101000000010010001000111000000
+10011000010000001111111000000000
+01100000000000011001000111000010
+00101111111011111111111000010000
+00100000001000001000011111000111
+01101000000000001001000111000011
+11000000011111111000011111001110
+01101000000000001001000111000010
+00011111111000110111111000000000
+01100000000000010001000110111110
+01100000000000010001000111000000
+00100000011000000000000000000000
+01101000000000001001000111000011
+11000000000000000000011111001011
+01101000000000011001000111000010
+00100000001000000000011111000011
+01110000000100011100010000000000
+01101000000000001001000111000010
+00100000001000000000011111000011
+01101000000000001001000111000010
+00100000010000000000011111011001
+01100000000000001001000110111110
+01100000000000001001000111000000
+00100000001110100000011111010111
+01011000000000000000000011111111
+01100000000000001001000110111111
+01100000000000001001000111000001
+00100000011000000000000000000000
+01011000000000000000000000000000
+00100000001000000000011111010100
+00100000010000000000011111011111
+00011111111000110111111000000000
+00100000010000000000011111100000
+00011111111001100111111000000000
+01100000000000001001000111000101
+00100000011000000000000000000000
+00011111111001100111111000000000
+01100000000000001000101010101110
+01101000000000001000101010101110
+00100000011000000000000000000000
+10011010001001100111110000000000
+00100100001000010000011111101110
+10011010010001100111110000000000
+00100100001000010000011111101110
+01110000010011001110011000000000
+00100000011000000000000000000000
+10011010001001100111110000000000
+00100100011000010000000000000000
+10011010010001100111110000000000
+00100100011000010000000000000000
+00100000001000000000011111100111
+01110000010011001110011000000001
+00100000011000000000000000000000
+01101000000000010100011010011011
+00100000010000000000011111110111
+00011111111000100010001000000000
+01101000000000010100011010011101
+00100000010000000000011111110111
+00011111111000100010010000000000
+00100000011000000000000000000000
+01100000000000010001000111000000
+01101000000000001001000111000001
+11000000011111111000011111111101
+01101000000000001001000111000000
+00011111111000010111111011111111
+00100000011000000000000000000000
+01101000000000010001000111000000
+00011111111001100111111000000000
+00100000001000000000011111111011
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+00100000010000000010101010111100
+01000100100000000100000000000000
+00100000100000000000000000000000
+00100000010000000110010000001101
+00100000010000000010100101101100
+00100000010000000110010110100011
+00100000010000000010101010010110
+00100000010000000100110101101010
+01000100100000001100000000000000
+00100000010000000110101000000011
+00100000010000000101110011110110
+00100000010000000111110011001100
+00100000010000000011001011011000
+00100100010101011110100010011100
+01000100100000010100000000000000
+00100000010101011011001011100011
+00100000010000000111010101101010
+00100000010101011010101101000001
+01000100100000011100000000000000
+00100000010000000111011011011100
+00100000010000000111101010101111
+00100000010000000111010101101101
+00100000010000000101001101011100
+01000100100000100100000000000000
+00100000010000000010000000111000
+00100000010000000011001011101101
+00100000010000000010000010001111
+00100000010000000010001011111000
+00100000010000000010001101101010
+00100000010000000010000000100001
+00100000010000000010101101101010
+00100000010000000010110001110010
+00100000001000000010000000010010
+00100000010000000010000000100110
+11000110100001001000000000000000
+01111001001111111000000000001001
+00100000010000000010001000100011
+00100000001000000101001111001110
+01000100100000101100000000000000
+00100000010000000010001001011110
+00100100001000101010000000101111
+00100000010000000010001000001010
+00011010001000001000110000000001
+11101000110000001000000000000000
+11000010100000000101001101100000
+11000010100000001010000101100110
+00100000001000000010001111001111
+00100000010000000010001000101011
+00011111001000100111110000000000
+00100000011000101000000000000000
+00100000010000000010001000001010
+01101000000000001000000000110000
+11000010100000011010000011010011
+01101000000000001000000000110001
+11000010100000001010000101100110
+00100000001000000010001111001111
+01101000000000001100000111001110
+00100000011110100000000000000000
+11000000000000001010000001001000
+11000000000000010010000001001101
+11000000000000011010000001010000
+11000000000000101010000001010101
+11000000000011011010000001000101
+00100000010000000010001001010111
+00100000011000101000000000000000
+00100000010000000010001001011010
+00100000011000101000000000000000
+01110000010000011100111000000000
+00100000011000000000000000000000
+01110000000001001001101100011011
+01110000010000011100111000000000
+00100000011000000000000000000000
+01111001001000000000000000011100
+01111001001111111000000000011110
+01110000000000001000111111111111
+01110000000000001000110100011111
+00100000001000000010000001000011
+01111001001111111000000000011100
+00011000000000000011011000000000
+00100000001000000010000001000011
+00100000010000000010001001011010
+00100000011000101000000000000000
+00011000000000000000010000000001
+01110000000000010110111000000101
+00100000001000000010000001011100
+01000100100000110100000000000000
+01101000000000110100000111010000
+00100000001110100010000001000011
+01110000010001101000000100000001
+01110000000000000101010100000011
+00100000001000000010000001011011
+00011000000000000000010000100101
+01000100100000111100000000000000
+01101000000000001000000011110001
+00100000001110100010000001100010
+00011111111010011111111000000000
+00011111111100100111111000000000
+00011111111000001111111111111111
+01100000000000001100000010100110
+01100000000000001000000011110000
+01110000000000001000111000011111
+01111001001111111000000000001100
+00100000010000000010001000111011
+00100100001000101010000010000011
+00100000010000000010101001101111
+01100000000000001000000001110111
+01100000000010001000000001111100
+01101000000000110100000111010000
+01100000000000110000000001000000
+01000100100001000100000000000001
+00100000010000000111111100010101
+00011000000000000111111000000000
+00101000010000011111111000000001
+01111101001000001111111000000101
+01111001001000000111111000000011
+01100000000000001000000000110000
+01110000000010101001100100000011
+00100000010000000111110110000110
+00011000000000000111111000000000
+01111001001000001111111000000100
+01100000000000001000000001001100
+01011000000000000000000000000000
+01111001001000000111111000000001
+01100000000000001000000000110001
+01111000001101001111110000000000
+00100000010000000010001000100011
+01111000010101001111110000000000
+00011000000000000000111000000011
+01101000000000010100000010111001
+00100000010000000111111100001000
+00100000001000000010000001000011
+01000100100001001100000000000001
+01101000000000110100000111010000
+01100000000000110000000001000000
+00101000010000011111111000000001
+00100000001000001010000010001001
+00100000001000000010000001000011
+11011000101000000000000100000001
+11011111001000000000000000001000
+00100000010000000111111011000110
+01110000000010101001100100000100
+00100000010000000111110110000110
+00100000001000000010000001000011
+11000110100011100000000000000000
+00011000000000000000111000000001
+00100000010000000111111100010110
+01111101001110100000000000011100
+00100100001110100010000010010101
+00100000011000000000000000000000
+01000100100001010100000000000001
+01101000000010010100000010111011
+00011000000000000000111000000100
+00100000010000000010011100011100
+00100000011101000000000000000000
+00100000010000000010100010100100
+00011000000000000100100000000000
+00100000011000011000000000000000
+01111001001111111000000000001011
+01111001001111111000000000000000
+00011100010000001100001000000001
+00101000000011111111111000011110
+01111001001000001100100000000010
+00101100001000000000010000000000
+00100100001000001010000010111110
+01000100100001011100000000000001
+01101000000000001000000000010010
+00011111111000001111111000000001
+01100000000000001000000000010010
+00100000010000000010100011011000
+00100000010000000010100011010010
+00100000010000000010100011110010
+00100000010000000010101001010001
+00100000010000000010101001010110
+00100000010000000010101001100100
+00100000010000000010011001001101
+00100000010000000010000010110001
+00100000001000000010000010011100
+01000100100001100100000000000001
+01101000000000001000000010001101
+00011111111000001111111111111111
+01100000000000001000000010001101
+00100000011000010000000000000000
+01110000000000001000110100011111
+01101000000000001000000010001111
+00011111111000001111111111111111
+01100000000000001000000010001111
+00100000011000010000000000000000
+01111001010000000000000000011110
+01110000000000001000111111111111
+00100000011000000000000000000000
+01000100100001101100000000000001
+00100000010000000010100011011000
+00100000010000000010100011001100
+00100000010000000010100011110010
+00100000010000000010101001011011
+00100000010000000010100111101011
+00100000010000000010101000001101
+00100000001011000010000011001000
+00100000010000000010000010110001
+00100000001000000010000010011111
+01000100100001110100000000000001
+00100000010000000010100110111011
+00100000010000000010101001101011
+00100000010000000010010100011110
+01111001001111111000000000000001
+11000110100001011000000000000000
+01000100100001111100000000000001
+01101000000000001000000000010011
+00011111111000001111111000000001
+01100000000000001000000000010011
+00100000011000000000000000000000
+01000100100010000100000000000010
+01111000001101001111110000000000
+01111000001110000111110000000000
+01101000000000010100000010110101
+00100000001110100010000011011011
+00011000000000000000111000001000
+00100000010000000111111100010110
+00100100011110100000000000000000
+01000100100010001100000000000010
+01101000000010010100000010110111
+00011000000000000000111000101000
+00100000010000000010011100011100
+00100000001101000010000100010100
+00011000000000000000111000000011
+00100000010000000111111100010110
+00100100001110100010000011110000
+01101000000000001000000001001100
+11000010100000100010000011100110
+00100000001000000010000011101001
+11011000101000000000000100000001
+11011111001000000000000000001000
+00100000010000000111111011000110
+01000100100010010100000000000010
+01110000000000000011000000000000
+00100000010000000101110011110111
+01110000010001101000000100000000
+01110000000010101001100100010011
+00100000010000000111110110000110
+00100000001000000010000100010100
+01000100100010011100000000000010
+00011000000000000001011000000000
+00110100011100110000001000000000
+01101000000000001000000011110010
+00011111111000001111111111111111
+10011100010000101111111000000000
+00101111111000000000011000000000
+00100100001000001010000011110000
+00011000100000100111111000000000
+01100000000000001000000110000001
+00011000000000000100110000000000
+00011000000000000100100000000000
+01000100100010100100000000000010
+00100000001000011010000100010100
+00100000010000000010100011011100
+11011001011000000000011000000000
+00110100011100110000001000000000
+01000100100010101100000000000010
+01101000000000100000000011110010
+10011000000000000100001000000000
+00011111111000001111111000000001
+01100000000000100000000011110010
+00101000000011111111111000001100
+01111001001000001100100000000010
+00101100001000000000010000000000
+00100100001000001010000100101000
+01101000000000001000000000001100
+00011111111000001111111000000001
+01100000000000001000000000001100
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001010110
+00100000010000000010101001100100
+00100000010000000010011001001101
+00100000010000000010000100011010
+00100000001000000010000011111100
+01000100100010110100000000000010
+01111000010101001111110000000000
+01101000000000010100000010110101
+00100000011110100000000000000000
+00011000000000000000111000001000
+00100000001000000111111100001000
+01000100100010111100000000000010
+01101000000000001000000010001110
+00011111111000001111111111111111
+01100000000000001000000010001110
+00100000011000010000000000000000
+01110000000000001000111000011111
+01101000000000001000000011110000
+00011111111000001111111111111111
+01100000000000001000000011110000
+00100000011000010000000000000000
+01111001010000000000000000001100
+01101000000000001100000010100110
+01100000000000001000000011110000
+00100000011000000000000000000000
+01000100100011000100000000000011
+00100000010000000010100011001100
+00100000010000000010101001011011
+00100000010000000010100111101011
+00100000010000000010101000001101
+00100000001011000010000100110000
+00100000010000000010000100011010
+00100000001000000010000100000001
+00100000010000000010011001001101
+01101000000000001000000000001101
+00011111111000001111111000000001
+01100000000000001000000000001101
+00011000000000000011011000000000
+01101000000000100000000011110010
+01000100100011001100000000000011
+00100000010000000010101001001111
+00100000010000000010100011011100
+00011100110000001100110000000001
+00011100001000010100001111111101
+00011100100000010100100111111100
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001010110
+00100000010000000010101001100100
+00011100010000100111111000000000
+01100000000000100000000101100001
+00011000000000000000100000000000
+00011000000000000000001000000010
+00100000010000000010101001101011
+00100000010000000010011101100110
+01000100100011010100000000000011
+00100000010000000010101001001101
+00011100001000011100001000000010
+00011100100000010100100111111100
+00100000010000000010100011001100
+00100000010000000010101001011011
+00100000010000000010100111101011
+00100000010000000010101000001101
+00100000010011000010011001001101
+00100000001011000010000101010101
+01101000000000001000000000010000
+00100000001110100010000011111100
+00011111111000001111111111111111
+01100000000000001000000000010000
+00100000001000000010000100110110
+01000100100011011100000000000011
+01101000000000001000000000001110
+00011111111000001111111000000001
+01100000000000001000000000001110
+00100000010000000010010000110101
+00100000010000000010001011110010
+00100000001011000010000101011111
+00100000010000000010010001010101
+00100100001110100010000101011010
+00100000001000000010000011111100
+01000100100011100100000000000011
+01101000000000001000000000110000
+01111001001111111111111000000011
+01100000000000001000000000110000
+00100000010000000010010001000000
+01111000010101001111110000000000
+00100000011000000000000000000000
+01000100100011101100000000000011
+01111000001101001111110000000000
+01111000001110000111110000000000
+00100000010000000010000111100001
+00100000011101000000000000000000
+00100000010000000010110001101001
+00100000010000000010101001001111
+00011100010000001100001000000001
+00100000010000000010100011100010
+00011000000000000100100000000011
+00100000010000000110110011000010
+00100000010000000010010010001001
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001010110
+00100000010000000010101001100100
+00100000010000000010011101100010
+01000100100011110100000000000011
+00100000010000000101110100001000
+00100000010000000010001011100100
+00100100001101101010000110000000
+00100000010000000010101010001000
+00100000010000000010011100101000
+01101000000000001000000000001111
+00011111111000001111111000000001
+01100000000000001000000000001111
+01000100100011111100000000000011
+00100000010000000110110010101010
+00100000010000000010000110001011
+00100100011101001000000000000000
+00100000010000000010011011110011
+00100100001110100010000110001000
+01111000010101001111110000000000
+00100000011000000000000000000000
+00100000010000000010010010001001
+00100000010000000010001011011010
+00100000001000000010000101110111
+00100000001101101010000110001110
+00100000010000000010101001111111
+00100000001000010010000110011100
+00100000010000000010000110100111
+00100100001101000010000110011100
+01101000000000001000000001001100
+11000100000000100000000000000000
+11000011100000011000000000000000
+01101000000000001000000001001011
+11000011100000011000000000000000
+00100000010000000010000110101110
+00100100011110100000000000000000
+01101000000000001000000101101110
+00011111111000001111111111111111
+01100000000000001000000101101110
+00100100011110100000000000000000
+00100000001000000110000000000110
+01000100100100000100000000000100
+00100000010000000010010001011101
+01111000010101001111110000000000
+01101000000000001000000001001100
+11000010100000100010000110100010
+00100000011000000000000000000000
+01101000000000001000000001001100
+11000011100000011000000000000000
+11011000101000000000000100000001
+11011111001000000000000000001000
+00100000001000000111111011000110
+01000100100100001100000000000100
+01111000001101000111110000000000
+01101000000000001000000001001011
+11000100000000011000000000000000
+00100000010000000010000110101110
+00100100011110100000000000000000
+00100000001000000111111111101001
+01101000000000001000000001110010
+00011111111000001111111111111111
+01100000000000001000000001110010
+00100000011000000000000000000000
+01000100100100010100000000000100
+01101000000000001000000000110000
+11000010100000111010000110111011
+01101000000000001000100110110101
+00100000001110100010000110111011
+01110000000010011011010100000000
+01110000000010101001100100011000
+00100000010000000111110110000110
+00100000001000000010000110111011
+01000100100100011100000000000100
+00100000010000000010001001010100
+01101000000000001000000000110000
+01111001001000000111111000000111
+01100000000000001000000000110000
+01110000010000011011110100000001
+01101000000000001000000001010101
+11000000100010110010000111000011
+00100000011000000000000000000000
+01110000000010011011010100000001
+01101000000000001000000000110000
+01111001001111111111111000000111
+01100000000000001000000000110000
+00100000011000000000000000000000
+01000100100100100100000000000100
+01111000010101000111110000000000
+01101000000000010000000000110010
+11011000010000001111111111111111
+10011000010001100111110000000000
+00100100011000101000000000000000
+01101000000000100000000000110100
+00100000001110000010000111010011
+10011101000001100111111000000000
+00100000001000000010000111010100
+10011100010001100111111000000000
+00011111111001100111110000000100
+00100100011000010000000000000000
+00011000000000000111111000000000
+01100000000000010000000000110010
+00100000001000000111111111100111
+00011111111000100000010000000000
+01000100100100101100000000000100
+01100000000010100000000000110100
+01110000010001010101101100000001
+01011000000000001111111111111111
+01100000000000010000000000110010
+01110000000000000111001100000001
+00100000011000000000000000000000
+01000100100100110100000000000100
+00100000010000000010000111001001
+00100100011101000000000000000000
+01111000010101000111110000000000
+01110000000000000001000100100000
+01111001001111111000000000001011
+00100000010000000010101001001111
+00100000010000000010001011100110
+11000101000001011010000111110100
+00100000010000000010010001010101
+00100100001110100010000111100111
+01000100100100111100000000000100
+01111000010101000111110000000000
+00011100010000100111111000000000
+01100000000000100100000011001010
+01111000001110000111110000000000
+01111000001101001111110000000000
+01110000000010101001100100101010
+00100000001000000111110110000110
+01000100100101000100000000000101
+00100000010000000010101001001101
+11011000001000000000000000010000
+00100000010000000010001011011100
+01111000010110000111110000000000
+01111000010101001111110000000000
+00100000010000000010100000011000
+00100000010000000010010000110101
+01000100100101001100000000000101
+00100000010000000010010001111100
+00100000001101101010001000000010
+00100000010000000010010001010101
+00100100001110100010000111111100
+00100000001000000010000111101100
+01101000000000001000000000110001
+01111001001111111111111000000001
+01100000000000001000000000110001
+00100000010000000010101010001000
+00100000010000000010100001000001
+01111000001101000111110000000000
+01110000000010101001100100101011
+00100000001000000111110110000110
+01000100100101010100000000000101
+01111001001000000000000000001001
+00011010001000100111111000000000
+01100000000000010000000000011110
+00011000000000000111001001010000
+11011000101000000000010000111111
+00011010001000001000110000000001
+11101000110000001000000000000000
+00011010001000100000110000000000
+11000010100000000111111100000001
+11011000101000000000000000110000
+00100000010000000111111100000001
+01111000010101110111110000000000
+01101000000000001000000001110111
+10011000000000000000100000000000
+01110000000000001000101000000001
+00100000001101001010001000011100
+01110000000000001000101000000001
+01101000000000001000000000110000
+11000100000000001000000000000000
+01101000000000001000000001110011
+01100000000000001000000010001010
+01101000000000001000000001110100
+01100000000000001000000010001011
+00100000011000000000000000000000
+01000100100101011100000000000101
+01101000000000010000000000011110
+10011000000000000000101000000000
+00011000000000000111001001010000
+11011000110000000000010000111111
+00100000001110110111111100000001
+11011000110000000000000000110000
+00100000001000000111111100000001
+11011111001000000000000000000001
+01101000000010001000000000010101
+00011000010000001000010000000001
+00101000010000011111111000000001
+00100100001000001010001000110001
+11011000010000000000000000000000
+01100000000010001000000000010101
+00011000010011111111111001010000
+11011010001000000100000001000000
+10011010001000001010001000000000
+11101010001000001000000000000000
+11000010100000001010001000111001
+11000011100000000000000000000000
+11000011100000011000000000000000
+11000010000000000010001000101101
+00100000011000000000000000000000
+01000100100101100100000000000101
+11011010011000000010001001101010
+00100000010000000010001001100001
+00100100011000101000000000000000
+00011010001000100111111000000000
+01100000000000010000000000011110
+00011000000000000111110000000000
+00100000011000000000000000000000
+00100000010000000010011100100101
+00100000001000001010001001001011
+01101000000000010000000000011110
+00011111111000001000101000010111
+01101000000000001000000001000111
+11100000101000001000000000000000
+11011010011000000010001010101010
+00100000001000000010001001100001
+01101000000000001000000001000111
+00101111111011111111111000000011
+00100000001000001010001001010000
+00011000000000000111110000000001
+00100000011000000000000000000000
+00011000000000000111110000000000
+00100000011000000000000000000000
+11011010011000000010001010100111
+00100000001000000010001001100001
+01101000000010010000000000011110
+11011010011000000010001011001111
+00100000001000000010001001100001
+01101000000010001100000111001111
+11011010011000000010001001110101
+00100000001000000010001001100001
+01000100100101101100000000000101
+01101000000010110100000111010000
+11011010011000000010001001101110
+00100000001000000010001001100001
+11011010011000000010001001111011
+00100000001000000010001001100001
+11011010011000000010001011000110
+01000100100101110100000000000101
+11011010001000000100000001000000
+11011111001000000000000000000001
+11101010001000001000000000000000
+00011010011000100111101000000000
+00011010001000001010001001010000
+11000010000000000010001001100100
+00011000000000000111110000000001
+00100000011000000000000000000000
+11000010100000000010001001100110
+11000010100000011010001001100110
+00011000000000000111110000000000
+00100000011000000000000000000000
+11000010100000011010001001110000
+11000011000000000010001001100110
+00011010001000001000110000010000
+11101000110000110000000000000000
+10011000010001100111110000000000
+00100000011000101000000000000000
+00100000001000000010001001100110
+11000011000000000010001001100110
+00011010001000001000110000010110
+11101000110000001000000000000000
+10011000010001100111110000000000
+00100000011000101000000000000000
+00100000001000000010001001100110
+11000011000000001010001001100110
+00100000010000000010001010110011
+00100000010000000010001010010111
+10011000010001100111111000000000
+00011111111000001111111000000001
+00100000001000010010001010010001
+00011000110000100010010000000000
+01100000000001001000101010100010
+01101000000000001100010011000000
+00100100001110100010001010001001
+01101000000001001000101010100010
+00011010010000100000110000000000
+00011111111000001111111000000101
+00100000001000000010001010001100
+01101000000001001000101010100010
+00011010010000100000110000000000
+00011111111000001111111000010100
+00100100001000010010001001100110
+00011000010000100100001000000000
+00100000010000000010001010111111
+00011000000000000111110000000000
+00100000011000000000000000000000
+10011000000000000010010000000000
+00011010001000001000110000000010
+11101000110000010000000000000000
+00100000001110100010001010001101
+00100000010000000010001010111111
+00100000001000000010001001111100
+00011111111100010001011000000000
+00011001011011001001011000000000
+00100000001000101010001010100001
+00101001011000000001111000001111
+00100100011000001000000000000000
+00011000010100010001011000000000
+00011001011011001001011000000000
+00100100011000101000000000000000
+01111001001000000000010000011100
+00100000011000000000000000000000
+00011000010100010001011000000000
+00011001011011001001011000000000
+00101001011000000001111000001111
+00100100011000001000000000000000
+01111001001000000111111000011100
+00100000011000000000000000000000
+11000011000000000010001001100110
+00011000000000000111110000000000
+00100000011000000000000000000000
+11000011000000000010001001100110
+00011010001000001000110000000001
+11101000110000001000000000000000
+11000010100000000010001001100110
+00011010001000001000110000010111
+11101000110000001000000000000000
+11000011000000011010001001100110
+00011000000000000111110000000000
+00100000011000000000000000000000
+00011010001000001000110000000001
+11101000110010001000000000000000
+00011100010000100111111000000000
+00101000010011111111111000000001
+00011010001000001000110000000100
+11101000110010100000000000000000
+00100000011000001000000000000000
+00011010001000001000110000001000
+11101000110000110000000000000000
+00100000010000000010100001010100
+00011101000000100111111000000000
+00100000011000000000000000000000
+00011010001000001000110000000010
+00011010001000001000101000000100
+11101000110000010000000000000000
+10011000010000001001011000000000
+00011001011000100111111000000000
+11100000101000100000000000000000
+00100000001000000101010001001001
+11000011000000001010001001100110
+00100000010000000010001010110011
+10011011011000001111111000000000
+10011011011000001111111000000000
+10011000111000001111111000000000
+10011000010001100111110000000000
+00100100001000010010001001100110
+00011000000000000111110000000000
+00100000011000000000000000000000
+11000011000000000010001001100110
+00011000010000100111111000000000
+10011010001001100111110000000000
+00100000001111110010001001100110
+00011010001000001000110000000001
+11101000110000001000000000000000
+11000010100000000010001001100110
+11101010001000001000000000000000
+01111001001111111111111000000111
+11100010001000001000000000000000
+00100000001000000010001001100110
+01000100100101111100000000000101
+00100000010000000010101001001111
+00011100010000001100001000000001
+00100000010000000010100011100010
+00011000000000000100100000000011
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001010110
+00100000010000000010101001100100
+00100000001000000010011101100010
+01000100100110000100000000000110
+00100000010000000010101001001101
+00011100010000001100001000000001
+00100000010000000010100011100010
+00011000000000000100100000000011
+00100000010000000010100011001100
+00100000010000000010010000101010
+00100000010000000010100111110001
+00100000010000000010101001011011
+00100000010000000010100111101011
+00100000010000000010101000001101
+00100100011011000000000000000000
+00100000010000000010100110111011
+00100000001000000010010100011100
+01000100100110001100000000000110
+01101000000000001000000110000001
+10011000000000000000100000000000
+00011000000000000000001000000001
+00100000010000000010001011011010
+00100000001000000010001011100100
+01101000000000001100000010010011
+11000100000000000000000000000000
+00011000000000000000111000000100
+00100000010000000111111100010110
+00100100011110100000000000000000
+01101000000010010100000010101101
+00011000000000000000111000000100
+00100000010000000010011100011100
+00100000011101000000000000000000
+00100000010000000010001100001000
+00011000000000000000111000000100
+01101000000000010100000010101111
+00100100001011000111111100001000
+00011000000010100111111000000000
+10011110101000010111111000000000
+00100000001000000111111100001000
+01000100100110010100000000000110
+01110000000000011000000100000000
+01111000010110000111110000000000
+01111000010101110111110000000000
+00100000010000000010100010100100
+00011100010000010100001111111100
+00011000000000000100100000000001
+00100000010000000010100011011000
+00100000010000000010100011001100
+01111001010000000000000000011101
+01101000000000001000000000000110
+00011111111000001111111000000001
+01100000000000001000000000000110
+00100000010000000010100011110010
+00100000010000000010100111101011
+00100000010000000010101000010100
+00100100011011000000000000000000
+01000100100110011100000000000110
+00011000000000000011011000000000
+00100000010000000010100011111001
+01101000000000001000000000000111
+00011111111000001111111000000001
+01100000000000001000000000000111
+00100000010000000010100011011000
+00100000010000000010101001001101
+00011100001000011100001000000010
+00011000000000000100100000000001
+00100000010000000010100011010010
+00100000010000000010100011110010
+00100000010000000010101001010001
+00100000010000000010101001011111
+00011100010000100111111000000000
+01100000000000100000000101100001
+00100000010000000010101001100100
+00011000000000000000001000000010
+00011000000000000000100000000000
+00100000010000000010101001101011
+00100000010000000010011101100110
+00100000010000000010001100110010
+00011100001000010100001111111101
+00011100110000001100110000000001
+00100000011000000000000000000000
+01000100100110100100000000000110
+01101000000000001100000011010001
+00100000011110100000000000000000
+11011000101000000000000110001110
+01101000000000001100010100010101
+00011111111000100111001000000000
+00011111111000001111111000000001
+11100000101000001000000000000000
+00011000101000100000010000000000
+00011111111000001111111000000001
+01100000000000010100000111011100
+00011000010000100000101000000000
+01011000000000000000000000001001
+11100000101000001000000000000000
+11011000110000000100010100010110
+00100000010000000111111100000001
+11011010011000000100010110001101
+11011111001000000000000000000100
+00100000010000000010001101010100
+11011010011000000100010101110111
+11011111001000000000000000000001
+00100000010000000010001101010100
+00011000000000000000001000001010
+01110000010000011101101100000010
+01011000000000000000000110001110
+01100000000000010000000101101111
+00100000010000000010101001001101
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001011111
+00100000010000000010101001100100
+00100000010000000010101001101011
+00100000010000000010011101100110
+00100000011000000000000000000000
+00011000101000100000010000000000
+00011010011000100000110000000000
+11101000110000001000000000000000
+00100000011110100000000000000000
+00011111111000111111111000000000
+11000010000000000010001101011000
+00011111111000100010001000000000
+00011111111000001111111000000010
+00011111111000100000111000000000
+01101000000000010100000111011100
+10011000111000001111111000000000
+01100000000000010100000111011100
+00011000010000100000101000000000
+00011010001000100111111000000000
+00011111111000001111111000000001
+11100000101000001000000000000000
+00011010011000100000110000000000
+11101000110000001000000000000000
+11101000110000001000000000000000
+11100000101000001000000000000000
+00011010001000100111001000000000
+00100000001000000111111100000001
+01101000000000001100000010010011
+11000100000000001000000000000000
+00011000000000000000111000000101
+00100000010000000111111100010110
+00100100011110100000000000000000
+01101000000010010100000010110001
+00011000000000000000111000101000
+00100000010000000010011100011100
+00100000011101000000000000000000
+00011000000000000000100000000000
+01110000000000000001000000001000
+01111001001111111000000000001011
+00100000010000000010001101111010
+00011000000000000000111000000101
+01101000000000010100000010110011
+00100000001000000111111100001000
+01000100100110101100000000000110
+01111000010110000111110000000000
+00100000010000000010100010100100
+01101000000000001000000000001000
+00011111111000001111111000000001
+01100000000000001000000000001000
+00011000000000000100110000000000
+00100000010000000010100011100010
+00011100010000001100001000000001
+00011000000000000100100000000010
+01000100100110110100000000000110
+00100000010000000010100011001100
+00100000010000000010100111101011
+00100000010000000010101000010100
+00100100011011000000000000000000
+00100000010000000010100011111001
+01101000000000001000000000001001
+00011111111000001111111000000001
+01100000000000001000000000001001
+00011000000000000011011000000000
+00100000010000000010101001001101
+00011100001000011100001000000010
+00011000000000000100100000000001
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001011111
+00100000010000000010101001100100
+00100000010000000010011001001101
+00011000000000000000100000000000
+11011001011000000000011000000000
+00110101001100110000001000000000
+00011101000000011101000000000011
+00011100001000010100001111111101
+01000100100110111100000000000110
+00011100110000001100110000000001
+00100000010000000010100011001100
+00100000010000000010100111101011
+00100000010000000010101000000111
+00100100001011000010001110100100
+00100000010000000010101001101011
+00100000010000000010010100011110
+11000101000001011010001110101011
+01000100100111000100000000000111
+01101000000000001000000000010000
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001000000000010000
+00100000010000000010101001001111
+00100000001000000010001110011011
+01000100100111001100000000000111
+01111001001111111101000000000001
+01111001001000000101000000000000
+01101000000000001000000000001010
+00011111111000001111111000000001
+01100000000000001000000000001010
+00100000010000000010101001001101
+00011100001000011100001000000010
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001011111
+00100000010000000010101001100100
+00100000010000000010011001001101
+00101101000000000000011000000011
+00100000001000001010001110111100
+00110111110010111000001000000000
+00100000001000000010001110111000
+01101000000000100000000101100101
+00011111111000011111111000000011
+00011111111000100101000000000000
+01000100100111010100000000000111
+01101000000000110000000101111000
+01100000000000110000000001000000
+00100000010000000010010000110101
+00100000010000000010010001111100
+00100000001101101010001111001000
+00100000010000000010010001010101
+00100100001110100010001111000011
+00100000011000000000000000000000
+01000100100111011100000000000111
+00100000010000000010010001000000
+00100000010000000010001000111011
+00100100011000101000000000000000
+01110000000000000011000100000000
+00100000010000000010100001000001
+00100000001000000010001000100011
+01000100100111100100000000000111
+00100000010000000010100001010000
+00100000010000000010001111110011
+00100000011101000000000000000000
+01000100100111101100000000000111
+00100000010000000010110001101001
+00100000010000000110110010101010
+00100000010000000010010100010100
+00100100001101101010001111100010
+00100000010000000010101010001000
+00100000010000000110110011000010
+00100000010000000010010010001001
+00100000010000000010011101010111
+00100000010000000010011100101000
+00100000010000000101110100001000
+01101000000000001000000000001011
+00011111111000001111111000000001
+01100000000000001000000000001011
+00100000010000000010100001000001
+01000100100111110100000000000111
+00100000010000000010101110110001
+00100000010000000010101001111111
+00100000001000010010001111101011
+00100000010000000010000110100111
+00100100001101000010001111101011
+00100000010000000010011011110011
+00100100001110100010001111010011
+00100000011000000000000000000000
+01000100100111111100000000000111
+01110000000000010101000100000000
+01110000000000010111111100000000
+00100000010000000010010001011101
+01111001001111111000000000010001
+00100000010000000111111110110000
+01101000000000001000000000110000
+00100000011000000000000000000000
+01000100101000000100000000001000
+00100000010000000010000111001001
+00100100011101000000000000000000
+00011000100000100000010000000000
+00100000010000000010101001101111
+01100000000000001000000110000001
+00011000010000100000100000000000
+01110000000000000001000100100000
+01000100101000001100000000001000
+00100000010000000010101001001111
+00011000000000000000001000000010
+00100000010000000010011101001111
+00011100010000100111111000000000
+01100000000000100000000101100001
+00100000010000000010011101100010
+00100000010000000010101001001101
+01111000001101111111110000000000
+00100000010000000010010011110110
+00100000001011000010010000001101
+00100000010000000010100011111001
+00100000010000000010010001010101
+00100100001110100010001111111011
+11000110100000100000000000000000
+01110000000000000111110000110100
+01111001001000000000000000000011
+00100000011000000000000000000000
+01111000001110000111110000000000
+00100000010000000010010000110101
+00100000010000000010100010100100
+01000100101000010100000000001000
+00100000010000000010001011110010
+00100000001011000010010000011001
+00100000010000000010010001010101
+00100100001110100010010000010000
+01111000010110000111110000000000
+00011101000000100111111000000000
+01100000000000100100000011001010
+00100000011000000000000000000000
+01111000001101001111110000000000
+11000101100000100010010000011111
+01111001001111111000000000000100
+01110000000000000111110000000011
+01110000000000000111110100110011
+00100000010000000110001011111000
+00011000100000100111111000000000
+01100000000000001000000001110111
+00011000000000000111111000000000
+01100000000000110000000000111000
+01101000000000001000000000110001
+01111001001000000111111000000001
+01100000000000001000000000110001
+00100000010000000010101010001000
+01111000010101001111110000000000
+01111000001101000111110000000000
+00100000011000000000000000000000
+01000100101000011100000000001000
+01111000010101101111110000000000
+01111001001111111000000000000101
+01111001001111111000000000001010
+01111001001111111000000000010000
+01111001001111111000000000001111
+01101000000000001000000001000111
+01111001001111111111111000000101
+01111001001000000111111000000100
+01100000000000001000000001000111
+00100000011000000000000000000000
+01000100101000100100000000001000
+01110000000000000001000100100000
+01110000000000000100011101010000
+01101000000000010100000010111111
+01100000000000010000000000111110
+00011100010000100111111000000000
+01100000000000100100000011001010
+00100000011110000000000000000000
+00011101000000100111111000000000
+01100000000000100100000011001010
+00100000011000000000000000000000
+01000100101000101100000000001000
+00100000010000000101110100000100
+00100000010000000010010001011001
+01100000000000001000000001000110
+01011000000000000000000000000000
+01100000000000010000001001011101
+01011000000000000001110010000000
+01100000000000010000000001010001
+01101000000000001000000000110000
+01111001001000000111111000000000
+01100000000000001000000000110000
+01110000000000000100101100000000
+01110000000000000100110000000000
+01110000000000001010000000000000
+00100000001000000010101010001000
+01000100101000110100000000001000
+00011000000000000111111000000000
+01100000000001000100000110111110
+11100000101001000000000000000000
+00100000010000000010000111000101
+00100000001000000010001001010100
+01101000000000001000000000010001
+00011111111000001111111111111111
+01100000000000001000000000010001
+00100000011000000000000000000000
+01101000000000001100000011001111
+00011111111000001111111000000001
+01100000000000001100000011001111
+00100000011000000000000000000000
+01000100101000111100000000001000
+01101000000000001100000111001110
+11000000000000011010010001100010
+01101000000000001000000001001000
+11000000100000001010010001100110
+00100000010000000100110100000110
+00100100001000101010010001100110
+00100000010000000010000110100100
+01110000010000011100111000000000
+01000100101001000100000000001001
+00100000010000000011001110101111
+00100000010000000010011011101001
+01110000000010101001100100000010
+00100000010000000111110110000110
+00100000010000000101110011110111
+00100000010000000100110101101011
+00100000010000000111010101111101
+01101000000000001000000000110000
+01111001001111111111111000000000
+01100000000000001000000000110000
+01110000010001101000000100000000
+01101000000000001000000001001100
+00101111111000011000000000000000
+00100000001000001010010001110110
+01111001001111111000000000000001
+01101000000000001000000001000111
+11000011000000011010010001111000
+01101000000000001000000001001011
+11000100000000110000000000000000
+01111001001111111000000000000010
+00100000011000000000000000000000
+01000100101001001100000000001001
+01101000000000001000000101110100
+00100000011110100000000000000000
+00011111111000100000100000000000
+00100000010000000010010100010100
+00100100011101101000000000000000
+00011000000000000000001000000000
+00100000010000000010011101010111
+00011000100000100111111000000000
+01100000000000001000000001110111
+00011000000000000111111000000000
+01100000000000001000000101110100
+00100000011000000000000000000000
+01000100101001010100000000001001
+01101000000000001000000000110000
+11000011000000010010010010010110
+00011000000000000000001000000111
+11000101100000111010010010010101
+00100000010000000010011100100101
+00100100001000001010010010010110
+00100000001101110010010010010110
+00100000010000000010010011000001
+01011000000000000000000000000010
+01100000000000010100000011001000
+00100000011000000000000000000000
+00100100011101110000000000000000
+01000100101001011100000000001001
+00100000010000000010001001000011
+00100100001000101010010010100111
+01101000000000001000000001000111
+11000011000000011010010010110000
+11000101000000101010010010110100
+01101000000000001000000101111111
+11000010100000110010010010111010
+01101000000000010100000011001000
+00011111111000001111111111111111
+01100000000000010100000011001000
+00100000001110100010010010100101
+01101000000000001100000011000101
+10011000000000000000001000000000
+00100000011000000000000000000000
+01000100101001100100000000001001
+00100000010000000010011010000111
+00100000010000000010011100100101
+00100000001000001010010010110000
+00100000010000000110000000001010
+00100000001101000010010010111110
+01101000000000001000000001001011
+11000010100000110010010011000000
+11000101000000101010010010110100
+01101000000000001000000101111111
+11000010100000110010010010111010
+00011000000000000000001000000001
+00100000011101001000000000000000
+00011000000000000000001000000000
+00100000011000000000000000000000
+01000100101001101100000000001001
+01101000000000001000000000011001
+10011000000000000000001000000000
+11000001100000001000000000000000
+00011000000000000000001000000000
+00100000011000000000000000000000
+01101000000000001000000101011000
+00011111111000010000001000001111
+01111001001000000000000000000101
+00100000011000000000000000000000
+00011000000000000000001000010011
+00100000001000000010010011000001
+00100000010000000010010011001010
+01000100101001110100000000001001
+01101000000010001000000001000111
+01111001001000000000010000000011
+01100000000010001000000001000111
+00011000001000100111111000000000
+01100000000000001100000011000101
+01011000000000001111111111111111
+01100000000000010100000011001000
+00100000011000000000000000000000
+01000100101001111100000000001001
+01101000000000001000000001001100
+00101111111011111111111000000101
+01101000000000010100000111011100
+00100000001000001010010011100000
+00011000000000000000001000000011
+00011111111001100111110000010001
+00100000011000010000000000000000
+00011000000000000000001000000100
+00011111111001100111110000011011
+00100000011000010000000000000000
+00011000000000000000001000001010
+00011111111001100111110001111001
+00100000011000010000000000000000
+00011000000000000000001000001011
+00011111111001100111110010110111
+00100000011000010000000000000000
+00011000000000000000001000001110
+00011111111001100111110011100000
+00100000011000010000000000000000
+00011000000000000000001000001111
+00100000011000000000000000000000
+00011000000000000000001000000011
+00011111111001100111110000010001
+00100000011000010000000000000000
+00011000000000000000001000000100
+00011111111001100111110000110110
+00100000011000010000000000000000
+00011000000000000000001000001010
+11011000010000000000000101101111
+10011000010001100111110000000000
+00100100011000010000000000000000
+00011000000000000000001000001110
+11011000010000000000001010100111
+10011000010001100111110000000000
+00100100011000010000000000000000
+00011000000000000000001000001111
+00100000011000000000000000000000
+01101000000000001000000000110000
+11000011000000001010010011110101
+01101000000000010000000000110010
+00100000001110100010010011110101
+00100100001101110010010011110111
+00100000010000000010101001001111
+00011101000000001100001000000001
+01111000001010000111110000000000
+01101000000000010000000000111110
+00011111111000110111111000000000
+11011000010000000000010100000000
+10011000010000001111111000000000
+00100000010000000010101000100100
+00100000010000000010100011101010
+00011000000000000100100000000011
+00100000010000000010100011001100
+00100000010000000010010000101010
+00100000010000000010100111110001
+01000100101010000100000000001010
+01101000000000010000000000111110
+00011111111000110111111000000000
+00100000010000000010101000100100
+00100000010000000010100111101011
+01111000001001101111110000000000
+01101000000000010000000000111110
+11011000010000000000001110111011
+10011000010000001011011000000000
+00110111110000011000010000000000
+00011011010000100000010000000000
+01100000000010110000000010011010
+01111000010001101111110000000000
+00100100011011000000000000000000
+11011101001000000000001110111011
+00011100001000100101000000000000
+00100000001101011010101100000101
+00100000011000000000000000000000
+01000100101010001100000000001010
+00100000010000000010010011110000
+00100100001011000010100011111001
+00100000010000000010100110111011
+11000101100010001010010100011100
+01101000000000010000000011110110
+00011111111000001111111000000001
+01100000000000010000000011110110
+00011100001000110000010000000000
+00011000010000011001110001000000
+01000100101010010100000000001010
+01111000001000111111110000000000
+01111000001001010111110000000000
+01111000001001011111110000000000
+00001001100000000000000000000011
+00011001100011001111111000000000
+01100000000000001000000101011101
+00001001100000000000000000000100
+00001000000000001000000000000111
+00011001100000100111111000000000
+01100000000000001000000000011001
+00001001100000000000000000000011
+00011001100011001111111000000000
+01100000000000001000000101011110
+01101000000000001000000000011001
+00011111111001100111110000000011
+00100000001000010010010100110011
+11000000000000111010010100110011
+01101000000000001000000001001100
+00101111111011111111111000000101
+01111001001000001010101000000001
+01000100101010011100000000001010
+00001001100000000000000000001000
+01111000010001011111110000000000
+01111000010001010111110000000000
+00100000001000110010011000110001
+11000101100010001010010100111100
+01101000000000010000000011111000
+00011111111000001111111000000001
+01100000000000010000000011111000
+01000100101010100100000000001010
+01101000000000001000000101011101
+00101111111000000000111000000000
+01111001001000001000000000001010
+00100000001000001010010101001100
+10101000100000000000111000000000
+00100000001000001010010101001011
+11000101100000111010011001001101
+01101000000010001000000010110000
+10101000010000000000111000000000
+00100100001000001010011001001101
+01101000000000001000000001000111
+01111001001111111111111000000101
+01111001001000000111111000000100
+01100000000000001000000001000111
+01111000001101101111110000000000
+01000100101010101100000000001010
+01101000000000001000000000011001
+00011111111000100000001000000000
+11000101000001010010010101011011
+01101000000010001000000101011110
+01101000000000001000000001000111
+01111001001111111111111000000000
+00101000010011111111111000000000
+01111001001000001111111000000000
+00101000010011111111111000000001
+01111001001000001111111000000001
+01100000000000001000000001000111
+00101000010011000000000000000001
+00100000001000001010010101011011
+00100000010000000010011010000111
+01000100101010110100000000001010
+11011000010000000000000000000000
+00100000010000000010101000011100
+00011000001000010111111000001111
+11000000000000001010010110000111
+11000000000000000010011001001101
+11000000000000010010011001011001
+01101000000010001000000101011110
+01101000000000001000000001000111
+10101000010000000000100000000000
+00100100001000001010010101101001
+11000101100001010010010101101000
+11000011000000111010010101101001
+01111001001000000000000000001111
+01000100101010111100000000001010
+00011000001000100111111000000000
+11000000000000011010010110001001
+11000000000000100010010110001101
+11000000000000111010010101111000
+11000000000001000010010110001100
+11011000010000000000000000000100
+00100000010000000010101000011100
+11000000000001010010010110001000
+11000000000001011010010110001011
+11011000010000000000000000001000
+00100000010000000010101000011100
+11000000000001110010010110001000
+11000000000001111010010110001011
+00100000011000000000000000000000
+01000100101011000100000000001011
+01111000001001101111110000000000
+01111000001001001111110000000000
+01111000001001110111110000000000
+11011000101000000000000011010001
+00011000000000000111001000011110
+00001001100000000000000000001000
+00011001100010010111111000000000
+11100000101000001000000000000000
+11000010000000000010010101111110
+11000101100000111010011001001101
+00001001100000000000000000010000
+01111101001000110000000000001000
+00100000001000110010011000111101
+00100000001000000010011000100000
+00100000001000000010011001001101
+01111001001000000000000000010000
+01111000001001100111110000000000
+00100000001000000010010110001110
+01111001001000000000000000010000
+01111001001000000010101000000010
+01111000001001101111110000000000
+01000100101011001100000000001011
+11000101000000001010011001001101
+00101010101011000000000000000001
+00100000001000001010010110011010
+01111000010000111111110000000000
+01111000001001101111110000000000
+01111000010001100111110000000000
+00011100010000001001011000000010
+00110100010100110000010000000000
+00100100001011000010011000111101
+01111001001000000000000000010000
+01111000001000111111110000000000
+01000100101011010100000000001011
+01111000001001110111110000000000
+01111000001001001111110000000000
+00001001100000000000000000000011
+00011001100011001111111000000000
+01100000000000001000000110000000
+00001001100000000000000000000101
+11000101000010000010010110100101
+00011001100010010111001000000000
+00011111001010010111001000000000
+00100000001000000010010110101000
+00001001100000000000000000000101
+00011001100000110111001000000000
+00001001100000000000000000000011
+01000100101011011100000000001011
+00011111001000100111111000000000
+01100000000000010000000101011111
+00100000001110100010010111101000
+10011110101001100111110000000000
+00100000001000010010011000111101
+01000100101011100100000000001011
+01111001001111111000000000000000
+01101000000000001000000110000000
+00011111111000010111111000000011
+11011000101000000000010101010001
+11000000000000011010010110111010
+11000101000010001010010111100100
+01101000000000001000000110000000
+00011111111000010111111000000011
+11000000000000010010010110111111
+11000000000000001010010111010011
+00100000001000000010011000111101
+01101000000000010000000101011111
+00011111111001100111110001110000
+00100100001000010010011000111101
+11000101000001111010011000100000
+00100000001000000010010111100100
+01000100101011101100000000001011
+11000101000001111010011000100000
+01101000000000010000000101011111
+11011000010000000000001011100000
+10011000010001100111110000000000
+00100000001000010010011000111101
+01101000000000001000001001100011
+11000011000000000010010111001001
+11000011000000001010010111001110
+00100000001000000010011001001101
+01110000000000100110000100000001
+01101000000000010000001001011101
+11000000100000000010011001001101
+11011000101000000001000000000000
+00100000001000000010010111100100
+01110000000000100110000100000010
+01101000000000010000001001011111
+11000000100000000010011001001101
+11011000101000000001010000000000
+00100000001000000010010111100100
+01000100101011110100000000001011
+11000101000001111010011000100000
+01101000000000010000000101011111
+11011000010000000000001011100000
+10011000010001100111110000000000
+00100000001000010010011000111101
+01101000000000001000001001100001
+11000000000000001010010111011101
+11000000000000010010010111100001
+00100000001000000010011001001101
+11011000101000000001000000000000
+01101000000000010000001001011101
+10011000101000001000101000000000
+00100000001000000010010111100100
+11011000101000000001010000000000
+01101000000000010000001001011111
+10011000101000001000101000000000
+00001001100000000000000000001000
+00011001100010010111111000000000
+11100000101000001000000000000000
+11000010000000000010010111100100
+01000100101011111100000000001011
+00001001100000000000000000010000
+00100000001000110010011000110111
+01101000000000001100001101100011
+11000000000000001010011001001101
+11000101000010001010011000001101
+11000101000001111010011001001010
+01101000000000001000000110000000
+00101111111000000000011000000011
+00100000001000001010011000001101
+01101000000000010000000101011111
+00100000001110100010011000001101
+01000100101100000100000000001100
+01101000000000001000001001100001
+11000000000000001010010111111001
+11000000000000010010011000000011
+00100000001000000010101010001100
+01101000000000010000001001011101
+01101000000010010000000101011111
+10011000010000001111111000000000
+01100000000000010000001001011101
+11000000000000000010101010001100
+01101000000010010001000000000000
+00011000010000001000010000000100
+10011000010001100111110000000000
+00100000010000101010011101000111
+00100000001000000010011000001101
+01101000000000010000001001011111
+01101000000010010000000101011111
+10011000010000001111111000000000
+01100000000000010000001001011111
+11000000000000000010101010001100
+01101000000010010001010000000000
+00011000010000001000010000000100
+10011000010001100111110000000000
+00100000010000101010011101001011
+00100000001000000010011000001101
+01000100101100001100000000001100
+01101000000010001000000001001100
+01101000000000001000000110000000
+00101111111000000000011000000011
+01111001001000001000010000000110
+01111101001000001000010000000111
+01100000000010001000000001001100
+00100100001000001010011000010110
+01111001001000000000000000000001
+11000101100010001010011000100000
+00101000010011111111111000000110
+00100000001000001010011000100000
+01101000000000010000000011111010
+00011111111000001111111000000001
+01100000000000010000000011111010
+01111001001000000000000000000101
+01111001001111111000010000000111
+01111001001111111000000000000001
+01100000000010001000000001001100
+01000100101100010100000000001100
+01101000000010001000000101011110
+01101000000000001000000001000111
+01111001001000000111111000000101
+00101000010011111111111000000010
+01111001001000001111111000000010
+00101000000011111111111000001010
+01111001001000001111111000000111
+01100000000000001000000001000111
+01101000000000010000000101011111
+00100100001110100010011001001101
+01101000000000001000000001001100
+01111001001111111111111000000111
+01100000000000001000000001001100
+01101000000000001000000110000000
+00101111111000000000111000000001
+00100000001000000010011001001101
+01000100101100011100000000001100
+01111000010101101111110000000000
+01101000000000010000000000011010
+00011111111000001111111000000001
+01100000000000010000000000011010
+00100000001000000010011001001101
+01101000000000010000000000011100
+00011111111000001111111000000001
+01100000000000010000000000011100
+00100000010000000010011000111110
+11000101100010001010011000111101
+01111001001000000000000000000101
+00100000001000000010011001001101
+01000100101100100100000000001100
+01101000000000001000000110000000
+00101111111000000000011000000011
+00100100001000001010011001000110
+01101000000010001000000001001100
+01111001001111111000010000000110
+01100000000010001000000001001100
+00100000011000000000000000000000
+01101000000010001000000001001100
+01111001001111111000010000000111
+01100000000010001000000001001100
+00100000001000000100110000001011
+01101000000000001000000001000111
+01111001001000000111111000000101
+01100000000000001000000001000111
+01000100101100101100000000001100
+01111000010011101111110000000000
+01111000010011100111110000000000
+01111000010001101111110000000000
+01111000010001100111110000000000
+01111000010001001111110000000000
+01111000010001110111110000000000
+01111000010000111111110000000000
+00100000001100001010100011111001
+00110111110100111000001000000000
+00100000000000000000000001100100
+00100000001000000010100011111001
+01000100101100110100000000001100
+01111000001001001111110000000000
+01111000001001100111110000000000
+00001001100000000000000001001000
+00101111111011111111111000111010
+01111001001000001000000000000000
+00011100000000100000010000000000
+01010111111000000100000000000000
+01010111111000000011110000000000
+01111000001010101111110000000000
+00111000000010111111111111111111
+00111000000011001111111111111111
+00100000000000000000000000100000
+00101001101010000000000000000000
+00011101100000100111111000000000
+01100000000000011000000101111000
+00011101101000100111111000000000
+01100000000000001000000101111011
+00011000010000100100000000000000
+00100000001000001010011001101110
+00100000001000000010011000111101
+01000100101100111100000000001100
+00001001100000000000000001001000
+01010111111000000011111000000000
+01010111111000000000100000000000
+01010111111000000101110000000000
+01010111111000000010010000000000
+00011000000000000111111000000000
+00001001100000000000000000010000
+00100000001000110010011000111101
+01011111111111111111111111111100
+10011010010000010111111000000000
+01100000000000100000000101100101
+00011011101000100111111000000000
+01100000000000011000000101110101
+00011011100000100111111000000000
+01100000000000001000000101110011
+00011000100000100111111000000000
+01100000000000001000000101110100
+00011101110000100111111000000000
+01100000000000010000000101111100
+00011100001000100111111000000000
+00001000000000001000001000100000
+00101000001000000001111000000010
+01111001001000001000000000001011
+00100000001000000010011001001101
+01000100101101000100000000001101
+01101000000000001000000001000111
+11000100000000011000000000000000
+01111001001111111111111000000011
+01111001010000000111111000000110
+01100000000000001000000001000111
+01101000000000001100000011000101
+11000000000010011010011010011100
+11000001000000111000000000000000
+01101000000000001000000001001011
+11000100000000110000000000000000
+01111001001111111111111000000110
+01111001001000000111111000000111
+01100000000000001000000001001011
+01111001001111111000000000000010
+01101000000000010100001001000110
+00100100011110100000000000000000
+01101000000000001000000001001011
+01111001001111111111111000000111
+01100000000000001000000001001011
+00100000001000000101001001011101
+01000100101101001100000000001101
+01101000000000001000010010110111
+00011111111000110111111000000000
+11000000000010001010011010111000
+11000000000010010010011011000000
+11000000000011000010011011101001
+11000000001111111010011010101000
+11000001100000011000000000000000
+01101000000000001000010010111000
+11000000000101011010011010110000
+11000000000010001010011010101011
+00100000011000000000000000000000
+01101000000000001000010010111000
+01111001001000000111111000000111
+00100000011000000000000000000000
+00100000011101001000000000000000
+01101000000000001000000000110000
+11000011100000100000000000000000
+01110000000000000111110000110001
+00100000011000000000000000000000
+00100000011101001000000000000000
+01101000000000001000000000110001
+00101111111011111111111000000100
+00100000001000001010011010110101
+00100000011000000000000000000000
+01111001001111111111111000000100
+01100000000000001000000000110001
+00100000011000000000000000000000
+01000100101101010100000000001101
+01101000000000001000000001001100
+01111001001000000111111000000010
+01100000000000001000000001001100
+01110000100000000001000100000001
+01101000000000001000000000110000
+00101111111011111111111000000100
+00100000011000000000000000000000
+01000100101101011100000000001101
+01101000000000001000000001001100
+01111001001111111111111000000010
+01100000000000001000000001001100
+01110000100000000001000100000000
+00100000011000000000000000000000
+01000100101101100100000000001101
+00011100010000100111111000000000
+01100000000000100100001000001100
+00011100010000001010001000000011
+00100000001101001010011011001100
+00011101000000001010001000000011
+01101000000010010000000000110010
+00011010001000100111111000000000
+01111001001111111111111000011011
+10011000010001101111110000000000
+01101000000000010000000001110101
+00100000010000000111111110000110
+00011000000001110010011000000000
+10011010011001100111111000000000
+00100000001000010010011011010110
+10011000010000001111111000000000
+10011010001000001111111000000000
+01100000000000100000000000110100
+01110000010001010101101100000000
+01101000000000001000000000110000
+01111001001000000111111000000001
+01100000000000001000000000110000
+01101000000000001000000001110011
+01100000000000001000000010001010
+01011000000000000000000000000000
+01100000000000011100000101101001
+01100000000000011100000101101100
+01100000000000001100000101011001
+01110000000010101001100100001011
+00100000010000000111110110000110
+01101000000000010100000011000001
+01100000000000010000000000111110
+00100100011101001000000000000000
+00011000100000001000111111111111
+00100000011000000000000000000000
+01000100101101101100000000001101
+01101000000000001000000000110000
+11000100000000001000000000000000
+01111001001111111111111000000001
+01100000000000001000000000110000
+01101000000000010100000010111111
+01100000000000010000000000111110
+01111000010101011111110000000000
+01110000000010101001100100001100
+00100000001000000111110110000110
+01000100101101110100000000001101
+01111000001101110111110000000000
+01101000000000001000000000110000
+11000010100000001010011100000000
+11000110000010001000000000000000
+01101000000000001000000001000111
+11000011100000011000000000000000
+01101000000000001000000001001000
+00100100011110100000000000000000
+01101000000000001000000001001011
+11000011100000110000000000000000
+00011000000000000111111000000000
+00100000011000000000000000000000
+11000011000000010010011100001111
+01101000000000001000000010001010
+11000000000000010010011100000110
+01101000000000001000000001000111
+11000010100000011010011100011000
+11000101100001000010011100011000
+00100100001101001010011100011000
+01101000000000001000000001001000
+00100100001110100010011100011000
+01101000000000001000000011101111
+00011111111000001111111111111111
+01100000000000001000000011101111
+00100100001110100010011011111110
+01110000000000001110111100010000
+00100000001000000010011100011000
+01101000000000001000000010001010
+11000000100000001010011100011000
+01101000000000001000000010001011
+00100000001110100010011100011000
+00011111111000001111111111111111
+01100000000000001000000010001011
+01101000000000001000000001000111
+11000011100000011000000000000000
+00100100011101101000000000000000
+01101000000000001000000010001010
+00011111111000001111111111111111
+01100000000000001000000010001010
+00100000011000000000000000000000
+01000100101101111100000000001101
+01111000010010000111110000000000
+00011000010000100011011000000000
+00100000010000000010001001100000
+01111000010101000111110000000000
+00100100011000101000000000000000
+00011000000000000011011000000000
+01111000001101000111110000000000
+00100000011000000000000000000000
+01101000000000001100000101011000
+10101000100000011111111000000000
+00100000011000000000000000000000
+01000100101110000100000000001110
+01111001001111111000000000000001
+01110000000000100110101000000000
+01101000000000001000001001100011
+00100000011110100000000000000000
+00101111111011111111111000000000
+11011000110000000001000000000000
+00100000010000001100110101111001
+01000100101110001100000000001110
+01101000000000001000001001101010
+11000000000000001010011100111011
+01110000000000100110101000000000
+01101000000000001000001001100011
+11000100000000001000000000000000
+11011000110000000001010000000000
+00100000010000000100110101111001
+01101000000000001000001001101010
+11000000000000001010011101000001
+00100000011000000000000000000000
+01101000000000001000001001100011
+01111001001111111111111000000000
+01100000000000001000001001100011
+01011000000000000000000000000000
+01100000000000010000001001011101
+00100000011000000000000000000000
+01101000000000001000001001100011
+01111001001111111111111000000001
+01100000000000001000001001100011
+01011000000000000000000000000000
+01100000000000010000001001011111
+00100000011000000000000000000000
+01101000000000001000001001100011
+01111001001000000111111000000000
+01100000000000001000001001100011
+00100000011000000000000000000000
+01101000000000001000001001100011
+01111001001000000111111000000001
+01100000000000001000001001100011
+00100000011000000000000000000000
+01000100101110010100000000001110
+00011101000000001100001000000001
+00100000010000000010100011101010
+00011000000000000100100000000011
+00100000010000000010100011010010
+00100000010000000010101001010001
+00100000010000000010101001011111
+00100000001000000010101001100100
+01000100101110011100000000001110
+00100000010000000010101001001101
+00011101000000100111111000000000
+01101000000010100100000011001010
+10011000010001100111111000000000
+11000001100000001000000000000000
+00101000001000000011111000000000
+00100100001000001010011101100001
+01101000000000001000000000011001
+00100000011110100000000000000000
+00100000010000000010011101001111
+00101000001000000011111000010000
+00100000001000001010011001001101
+00011100001000110000010000000000
+00011000010000011001110001000000
+01000100101110100100000000001110
+01111000001000111111110000000000
+01111000001001010111110000000000
+01111000001011011111110000000000
+01111001001111111000000000010000
+00011000100000100111111000000000
+00001000000000001000011000000011
+00011000001000100111111000000000
+00001000000000001000011000000100
+01101000000000001000000001000111
+00001000000000001000000000000100
+00001000000000001000011000000011
+01111000001001000111110000000000
+00001000000000001000011000001000
+01111000010011011111110000000000
+01111000010001000111110000000000
+01111000010001010111110000000000
+01111001001111111010101000000010
+11011000010000000000000000000000
+00100000010000000010101000011100
+01000100101110101100000000001110
+00011000001000010111111000011111
+11000000000010011010011110110100
+11000000000000000010011001001101
+11000000000000001010011001001101
+11000000000000010010011110010111
+11000000000000011010011111000101
+11000000000000100010011111001011
+11000000000000111010011110001100
+11000000000001000010011111001010
+11011000010000000000000000000100
+00100000010000000010101000011100
+11000000000001010010011111000111
+11000000000001011010011111001101
+11011000010000000000000000001000
+00100000010000000010101000011100
+11000000000001111010011111001101
+00100000001000000010011111000111
+01000100101110110100000000001110
+01111000001011101111110000000000
+01111000001001001111110000000000
+01111000001001110111110000000000
+00011000000000000111001000011110
+11011000110000000000000010110011
+11101000110000001000000000000000
+00001000000000001000011000001000
+11000010000000000010011110010010
+11000101000000111010011111110111
+00100000001000000010011001001101
+01000100101110111100000000001110
+01101000000000001000000110000001
+00011111111000100000100000000000
+01101000000000001000000010010000
+00011111111000100011100000000000
+01101000000000011100000010101010
+00011111111000100011101000000000
+01101000000000010100000010100100
+00011111111000100101110000000000
+01111000001001001111110000000000
+01111000001011100111110000000000
+00011100000000100010001000000000
+00100000010000000010100011100010
+01111000001010101111110000000000
+00100000000000000000000000100000
+00011100001000100001011000000000
+01101000000000100000000101100001
+00011111111000100100001000000000
+01010011110000000111111000000000
+01111001001000000111111000111010
+00001000000000001000011001001000
+01010011111000000111111000000000
+00001000000000001000011001001000
+00011001011000100100001000000000
+00011010001000100100000000000000
+01111000001001000111110000000000
+00001000000000001000011000010000
+01111000010001000111110000000000
+00100000001000000010011001001101
+01000100101111000100000000001111
+01111000001001110111110000000000
+01111000001001001111110000000000
+01111000001011100111110000000000
+01101000000000001000010010110110
+00011111111000010000010111111000
+11011000110000000000010010110110
+00011000010000001000010000001000
+00011000010000001010011110111000
+00100100001000010010011111000010
+11101000110001001000000000000000
+00001000000000001000011001001000
+00011010011000100000010000000000
+00100000001000000010011110111100
+11101000110001001000000000000000
+00001000010000011000011000000000
+00100000001000000010011111110111
+01111000001011100111110000000000
+00100000001000000010011111010000
+01111000001011100111110000000000
+01111001001000000000000000010000
+00100000001000000010011111010000
+01111001001000000010101000000010
+01111000001011101111110000000000
+00100000001000000010011111010000
+01111001001000000010101000000010
+01111000001011101111110000000000
+01111001001000000000000000010000
+01000100101111001100000000001111
+01101000000000001000000001001100
+11000011000000101010011111100101
+00011000001001100111110000000011
+00100000001000010010011111100101
+01111000010001110111110000000000
+01111000010011100111110000000000
+01111000001011101111110000000000
+01111000010000111111110000000000
+01111001001000000010101000000001
+00101010101011111111111000000010
+00100000001000001010011111011111
+01011000000010101011111011101110
+00001000000000001000011000010100
+00100000001000000010011111100011
+01011000010111111010111010111010
+00001000000000001000011000011000
+01011000000000000000000000010010
+00001000000000001000011000000110
+01111000001000111111110000000000
+01111001001000000000000000010000
+01111000001001110111110000000000
+01111000001001001111110000000000
+11000101000000101010100000000000
+01101000000000001100000111011011
+00001000000000001000011000000011
+01101000000000010100000111011100
+10011000000000000111001000000000
+11000101000010000010011111101111
+00001000000000001000011000000101
+00100000001000000010011111110000
+00001000000000001000011000001101
+00011111001000100111111000000000
+00100000001110100010011111110111
+01101000000000010000000101101111
+10011000000000000000110000000000
+11101000110000001000000000000000
+00001000000000001000011000001000
+11000010000000000010011111110100
+01111000001001000111110000000000
+00001000000000001000011000010000
+01111000010001000111110000000000
+00100000010000000010010011000001
+01101000000000001000000001001100
+11000011000000101010011001001101
+00011000000000000111111000000000
+00001000000000001000011000000110
+00100000001000000010011001001101
+01000100101111010100000000001111
+11000101000010000010100000001000
+01101000000000001000000110000000
+00001000000000001000011000000011
+01101000000000001000000101011111
+10011000000000000010011000000000
+00001000000000001000011000000101
+00100000001000000010100000001101
+01101000000000001000000110000000
+00001000000000001000011000000011
+01101000000000010000000101011111
+10011000000000000010011000000000
+00001000000000001000011000001101
+11011000110000000000010101010001
+00011010011000100111110000000000
+00100000001000101010100000010100
+11101000110000001000000000000000
+00001000000000001000011000001000
+00011010011000001010011111111111
+00100000001000000010100000001110
+01101000000000010000000011111100
+00011111111000001111111000000001
+01100000000000010000000011111100
+00100000001000000010011111110111
+01101000000000100000000101100101
+00011111111000001010001000000111
+01101000000000010000000101110001
+00100100001110100010100000011110
+00011010001000001010001111111101
+00100000001000000010100000100110
+00011111111011111111111000001100
+01101000000110010000000001000000
+00011000010000001000010000000001
+10011000010001100111111000000000
+00100100001000010010100000100101
+00011010001000001010001111111111
+00100000001000000010100000100001
+00011111111001100111111000000000
+00110111110100011000001000000000
+00101100010000000000011000000000
+00100100001000001010100000100110
+10011000000000000101001000000000
+00011010001000100101000000000000
+10011000000000000101001000000000
+00100000011000000000000000000000
+01000100101111011100000000001111
+00110111110100010000001000000000
+00011011010000100111111000000000
+10011000000000000000110000000000
+00011111111100010111111000000000
+10011100010001100111001000000000
+00011111001000010111001000000011
+00100100001000101010100000110111
+00011000000000000111111000000000
+00100000001000000010100000111011
+11011000010000000000111010100110
+00011000000000000111111000000000
+10011000010000001111111000000000
+11000010000000000010100000111001
+10011000110000001111111000000000
+00011111111001101111110000001100
+00100000010000000111111110000110
+00011000000001111111111000000000
+01100000000000010000000101110001
+00100000011000000000000000000000
+01000100101111100100000000001111
+00011011010000100111111000000000
+00011011001000100000010000000000
+10011000010001100111110000000000
+01111101001000010111111000101100
+10011000010001100000010000000000
+01011000000000000000111010100110
+00101000010011000000000000001111
+00100000001000001010100001001100
+01011111111111110000111010100110
+10011000010000001000010000000000
+01100000000010110000010001000111
+00100000011110110000000000000000
+01100000000010110000000000111000
+00100000011000000000000000000000
+01111000010110000111110000000000
+01101000000000110000010001000111
+00100000001110110010100001010100
+01101000000000110000000000111000
+10011011001000001110000000000000
+00011110000000001110000000001010
+01011000000000000000111010100110
+10011110000001100111111000000000
+00101111111011000000000000001111
+00100000001000001010100001011110
+01011000000000001111000101011010
+10011110000000001110000000000000
+00011110000000100011010000000000
+00100000011000000000000000000000
+00011000000000000111110000000000
+00100000001000000010100001011100
+01000100101111101100000000001111
+00100000010000000010100100011000
+00011100001000100111111000000000
+00011111111000010111111110000000
+00101100100000000000111000000011
+00100100001000001010100001101001
+00011111111010010111111000000000
+10011010111000001111111000000000
+00100000001000000010100001101010
+00011010111000100111111000000000
+00011111111001101111110001001111
+01111000001010101111110000000000
+00100000010000000111111110000110
+00011000000001110010001000000000
+00011010001000001000010111011000
+00100000001000010010100001110010
+00011010001000111000010000000000
+00100000001000000010100001110100
+00011000010000111000010000000000
+00011000010000001000010000000001
+01000100101111110100000000001111
+01101000000000001000000000110001
+11000011000000011010100010000101
+01101000000000100100000011010010
+10011100001001100111110000000000
+00100000001000010010100010000101
+00100000010000000010100010100100
+01101000000000001100000011011001
+00100000011110100000000000000000
+01101000000000001000000000110001
+01111001001000000111111000000010
+01100000000000001000000000110001
+01101000000000101100000011100111
+01100000000000101100000011011010
+11101000110000101000000000000000
+01100000000000101100000011011111
+00100000010000000010100010101001
+01101000000000001000000000110001
+11000100000000010000000000000000
+00101100001011111111111000000001
+00100000001000001010100010100001
+00011000010010010010001000000000
+00011000010000010000111000000111
+01011000000000000100000011011010
+10011010001000001010001000000000
+11101010001000001000000000000000
+10101111111011000000000000000000
+00100000001000001010100010010010
+00011000010000100111111000000000
+00100000001000000010100010011110
+01101000000000001100000011100100
+10011000000000000010010000000000
+00011100001000100111111000000000
+00011111111000010111111110000000
+00011111111010010111111000000000
+10011010111000001111111000000000
+10011010010001101111110000000000
+01011000000000000100000011110010
+00100000010000000111111110000110
+00011000000001110010001000000000
+10011010001000001000110000000000
+11101000110000001000000000000000
+01100000000000001100000011100101
+10011000000000000000010000000000
+00100000011000000000000000000000
+01101000000000001100000011100101
+10011000000000000000010000000000
+00100000011000000000000000000000
+01101000000000001000000000110001
+01111001001111111111111000000010
+01111001001111111111111000000011
+01100000000000001000000000110001
+00100000011000000000000000000000
+01000100101111111100000000001111
+11011000101000000100000011110010
+00011000000000000111001000001010
+00100000010000000111111011000110
+11011000101000000100000011110010
+00011000000000000010011000000000
+00011000000000000000111000000010
+01101000000000101100000011011010
+10011000000000000000010000000000
+00101000111000011111111000000010
+00100000001000001010100010110101
+00011000010000110000010000000000
+00101000010011000000000000000000
+00100000001000001010100010111001
+00011010011000100111111000000000
+11100000101000001000000000000000
+00011000010010110000010000000000
+00011010011000001010011000000010
+00101010011000011111110000101000
+00100100001000001010100011000010
+01101000000000101100000011011111
+10011000000000000000010000000000
+00101000111000011111111000000010
+00100000001000001010100011000010
+00011000010000110000010000000000
+00011010011001100111110001001110
+00100000001000010010100010110101
+00011000000000000010011000000001
+00011000111000001000111111111111
+00100100001000101010100010110000
+11011010001000000100000011110010
+00011000101000100111111000000000
+10011010001001100111111000000000
+01100000000000001100000011100100
+00100000011000000000000000000000
+01000100110000000100000000010000
+00100000010000000010100001100000
+01101000000000001000000101111111
+11000011000000101010100011010001
+01101000000010001000010011001100
+00100000001000000010100100011111
+01000100110000001100000000010000
+00100000010000000010100001100000
+01101000000000001000000101111111
+11000011000000100010100011010111
+01101000000010001000010011001011
+00100000001000000010100100110011
+00011000000000000101101000000000
+01101000000000011100000010100111
+10011000000000000101100000000000
+00100000011000000000000000000000
+01000100110000010100000000010000
+01101000000000001100000111010011
+00011111111000100101101000000000
+01101000000000011100000111010000
+00011111111000100101100000000000
+00100000011000000000000000000000
+01000100110000011100000000010000
+01101000000000010100000010100100
+00011111111000100101110000000000
+01101000000000001100000010100011
+00011111111000100101101000000000
+01101000000000011100000010100000
+00011111111000100101100000000000
+00100000011000000000000000000000
+01000100110000100100000000010000
+01101000000000010000000001000100
+00011111111000100101110000000000
+01101000000000001000000001000011
+00011111111000100101101000000000
+01101000000000011000000001000000
+00011111111000100101100000000000
+00100000011000000000000000000000
+11000101000100000010100011110101
+11000110100011101000000000000000
+11000110100011111000000000000000
+00011101100000010101100100000000
+01111000001010101111110000000000
+00100000000000000000000000100000
+00100000011000000000000000000000
+01000100110000101100000000010000
+00100000001100001010100100001010
+01110000100010010101010111010100
+00100000000000000000000000000100
+01110000100010010101010111010010
+00100000000000000000000000000100
+01110000100010010101010111010001
+00100000000000000000000000000100
+01101000000000001100000111011110
+11000000000000000010100100001000
+11000000000000001010100100010101
+11000000000000010010100100001000
+11000000000000011010100100010101
+11000000000000100010100100010101
+11000000000100000010100100010101
+01110000100010010101010111010000
+01110000100010010101011011100000
+00011000000000000010101000000000
+01111000010100001111110000000000
+01111000010100000111110000000000
+01111000001011110111110000000000
+01110000100010010000001000000000
+01110000100010010000000100000000
+01110000100010010000000000000000
+01110000100010010000001100000000
+01110000100010010000010001110000
+01110000100010010000011000000000
+00100000011000000000000000000000
+01110000100010010101010111010000
+01110000100010010101011011000000
+00100000001000000010100100001010
+01000100110000110100000000010000
+01110000100010010000001000000000
+01110000100010010000000100000000
+01110000100010010000000000011000
+01110000100010010000001110100111
+01110000100010010000010001111111
+00100000011000000000000000000000
+01000100110000111100000000010000
+01100000000010001000000000010111
+00011000010000001010001000000100
+01110000100010010110110100000111
+00100000001000000010100110000001
+01000100110001000100000000010001
+01110000100010010000000111001111
+00100000000000000000000000001010
+01110000100010010000000011111111
+01110000100010010000001110101111
+01110000100010010000010011111111
+00100000000000000000000000001010
+01110000100010010000001010100000
+00100000011000000000000000000000
+01101000000000001100000111100000
+00100000001110100010100100110001
+00011000010000001010001000000010
+00100000011000000000000000000000
+00011000010000001010001000000000
+00100000011000000000000000000000
+01000100110001001100000000010001
+01100000000010001000000000010111
+00100000010000000010100100101101
+00100000010000000010100110000001
+01011000000000000000010100000000
+00100000010000000010101010001111
+01110000100010010000011000000001
+01110000100010010000000000111100
+01110000100010010000000111100000
+01110000100010010110110100010010
+00100000000000000000000000001010
+01110000100010010000001000000001
+01110000100010010000001000111101
+00100000000000000000000000001010
+01110000100010010000001110110111
+00100000000000000000000000001010
+01110000100010010000001001111111
+01101000000000001100000111011110
+11000000000000000010100101001011
+11000000000000001010100101001111
+11000000000000010010100101010011
+11000000000000011010100101010111
+11000000000000100010100101011011
+11000000000100000010100101011111
+01110000100010010101011011110000
+00100000010000000010100101100101
+01110000100010010101010111011000
+00100000011000000000000000000000
+01110000100010010101011011011111
+00100000010000000010100101100101
+01110000100010010101010111011111
+00100000011000000000000000000000
+01110000100010010101011011111111
+00100000010000000010100101100101
+01110000100010010101010111011111
+00100000011000000000000000000000
+01110000100010010101011011001110
+00100000010000000010100101100101
+01110000100010010101010111011000
+00100000011000000000000000000000
+01110000100010010101011011001011
+00100000010000000010100101100101
+01110000100010010101010111011000
+00100000011000000000000000000000
+01110000100010010101010111010000
+01110000100010010101011011000000
+01110000100010010101011101001100
+01110000100010010101100001101100
+01110000100010010101100101010000
+00100000011000000000000000000000
+00100000000000000000000000000100
+01110000100010010101010111010001
+00100000000000000000000000000100
+01110000100010010101010111010010
+00100000000000000000000000000100
+01110000100010010101010111010100
+00100000011000000000000000000000
+01110000100000000100001000000110
+01101000000000010100000011000011
+11000011000001110010100101101101
+10011000000000000000110000000000
+11011000010000001000100100000000
+11101000110000001000000000000000
+11000000011111111010100101110111
+10011000010000011000101000000000
+11101000110000001000000000000000
+11100000101000001000000000000000
+00100000001000000010100101110001
+01000100110001010100000000010001
+00100000010000000010101111100101
+00100000010000000010100111001001
+01011000000000000000011111010000
+10011100010000001111111000000000
+01100000000000100000000101101001
+01111001001000000010101000000011
+00011000000000000010101000000000
+00100100010101011010100110011000
+00100000001000000010100110101011
+01000100110001011100000000010001
+01011000000000000000100101100000
+10011010001000001000010000000000
+01101000000000001100000010111101
+01110000100010010101111100000100
+10011000010011111111111000000000
+01101000000010001100000010111110
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111010001000000000
+00011000000001110111111000000000
+00011111111100000111111000000000
+00011111111100100111111000000000
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+00011111111011010111111000000000
+00011111111000111111111000000000
+10011010001000011111111000000000
+01100000000100100000100101100000
+01110000100010010101111101000100
+01110000100010010101111111000100
+00100000011000000000000000000000
+01000100110001100100000000010001
+01110000100010010000011000000010
+01011000000000111101000010010000
+00100000010000000010101010001111
+01110000100010010000000001111111
+00100000000000000000000010000010
+01110000100010010101001000110000
+01110000100010010000000111010000
+01110000100010010101001001110000
+01110000100010010101001011110000
+00011000000000000111001000110010
+01101000000100001000100110000000
+11000010100000101010100110100110
+11000010000000000010100110100011
+01100000000000001100000011001110
+01110000100010010000000100000000
+01110000100010010000000000000000
+01110000100010010000011000000000
+00100000011000000000000000000000
+01000100110001101100000000010001
+01101000000000001100000011001110
+01111001001000000111111000000101
+01100000000100001000100101010010
+01101000000110001000100101010000
+00011000010000010000010000000111
+00011111111010011111111000000000
+10011000010000011111111000000000
+01100000000100001000100101010000
+01101000000100001000100101010001
+01111001001111111111111000000000
+01100000000100001000100101010001
+01101000000100001000100101010010
+01111001001111111111111000000101
+01100000000100001000100101010010
+00100000011000000000000000000000
+01000100110001110100000000010001
+01101000000100010000100110000001
+00011111111100011111111000000000
+00011111111010010111111000000000
+00011111111001100111111000000000
+00011111111000010111111011111111
+00011111111001101111110000001010
+00100000010000000111111110000110
+00011000000001111111111000000000
+00011111111100100111111000000000
+00011000000001110000010000000000
+10011000010000011111111000000000
+01100000000000001000000000011000
+00100000011000000000000000000000
+01110000100000000100001000000110
+01101000000100001000100101101011
+01111001001111111111111000000100
+01111001001111111111111000000101
+01100000000100001000100101101011
+01110000100010010000010100000000
+01110000100010010000010000000000
+01110000100010010000010001110000
+01110000100010010000010111111111
+01101000000100001000100101101011
+01111001001000000111111000000100
+01111001001000000111111000000101
+01100000000100001000100101101011
+00100000010000000010100111101001
+01101000000100001000100101101000
+01111001001000000111111000000111
+01100000000100001000100101101000
+01111001001111111111111000000111
+01100000000100001000100101101000
+01111001001000000111111000000111
+01100000000100001000100101101000
+01110000100000000100001000000101
+00100000000000000000000000000001
+01110000100000000100001000000100
+01101000000100001000100101101011
+00011111111000010111111011001111
+01100000000100001000100101101011
+00011111111000011111111000110000
+01100000000100001000100101101011
+00100000011000000000000000000000
+01011000000000000000111100001111
+00100000001000000010110000011000
+01011000000000000000100000001111
+00100000001000000010110000011000
+01000100110001111100000000010001
+00100000010000000010100100100100
+01111000010100000111110000000000
+01111000001100001111110000000000
+01111000001010110111110000000000
+00100000011000000000000000000000
+01000100110010000100000000010010
+01101000000000001000000001001100
+00101111111011111111111000000010
+01111001001000001111111000000000
+01100000000100001000000000010001
+11011000110000000000000001100010
+11101000110001001000000000000000
+10011000000000000110010000000000
+11101000110000111000000000000000
+10011000000000000110011000000000
+01101000000000001000000001010100
+00011111111000001110100111111111
+01111000001011010111110000000000
+00100000011000000000000000000000
+00011011010000100111111000000000
+01100000000000110000000010011010
+01111000010001101111110000000000
+00100100001011000010100011111001
+11011101001000000000001110111011
+00011101000000001101000000000001
+00011101000000010101000111111100
+00100000011000000000000000000000
+01111000001001101111110000000000
+00110111110010111000010000000000
+00100000001011000010100111111111
+00101101000000000000010000000010
+00100100001000001010101000001000
+00100000001000000010100111111111
+01000100110010001100000000010010
+11011001011000000000011000000000
+01111000001001101111110000000000
+00110100011100110000010000000000
+01111000010001101111110000000000
+00100100001011000010100011111001
+00100000011000000000000000000000
+01000100110010010100000000010010
+01111000001001101111110000000000
+00110111110000011000010000000000
+01111000010001101111110000000000
+00100100001011000010100011111001
+11011101001000000000001110111011
+00011101000000010101000111111100
+00100000011000000000000000000000
+01000100110010011100000000010010
+10011000000000000010001000000000
+00011100001000100111111000000000
+10011000010000001001011000000000
+00011001011000100111111000000000
+01100000000000100100000011001010
+00011010001000100111111000000000
+00100000011000000000000000000000
+00011111111000100000010000000000
+01000100110010100100000000010010
+00011000010000100111111000000000
+00100000010000000111111101010000
+00011100001100000111111000000000
+01111001001000000111111000101100
+00100000010000000111111100111001
+01111001001111111111111000101100
+00100000010000000010101001110111
+00100000010000000111111100111001
+00100000011101000000000000000000
+00100000010000000111111101000011
+10011000000000000011011000000000
+00110111110000011000001000000000
+00100000011000000000000000000000
+01000100110010101100000000010010
+00100000001110000010101000111000
+00110101001100110000001000000000
+00011101000000100000010000000000
+00100000001000000010101000111011
+00100000001101110010101000111010
+00110100011100110000001000000000
+00011100010000100000010000000000
+00100000001101000010101001000111
+00101000010000000000011000000001
+00100100001000001010101000110011
+01000100110010110100000000010010
+01101000000000001000000000110000
+11000100000000000000000000000000
+01101000000000100100000011001010
+10011000010001100111111000000000
+00100100011000010000000000000000
+00011111111001100111110011111111
+00100000001000010010101000110011
+00100000011000000000000000000000
+00101000010000000000011000000011
+00100100001000001010101000110011
+00100000001000000010101000111110
+01000100110010111100000000010010
+11011001011000000000011000000000
+00100000001000000010101000110011
+01111000010101000111110000000000
+00100000001000000010101001001010
+01111000001101000111110000000000
+00100000001000000010101001001010
+01000100110011000100000000010011
+00100000010000000010100111110001
+01111000010100001111110000000000
+01111000001100000111110000000000
+00100000011000000000000000000000
+01000100110011001100000000010011
+11011001011000000000111001000011
+00110100011100110000001000000000
+01111000001010110111110000000000
+00100000011000000000000000000000
+01000100110011010100000000010011
+11011001011000000000110100000000
+00110100011100110000001000000000
+00100000011000000000000000000000
+01000100110011011100000000010011
+11011001011000000000111001000011
+00110101001100110000001000000000
+01111000001010110111110000000000
+00100000011000000000000000000000
+01000100110011100100000000010011
+01010001001000000111111000000000
+01111000001011101111110000000000
+01111001001000000010101000000000
+00001000000000001000011001001000
+01111000010011101111110000000000
+00100000011000000000000000000000
+00011100101000100000010000000000
+00011000010000011000010001100000
+00011000010000100001110000000000
+00100000011000000000000000000000
+01000100110011101100000000010011
+01101000000000001100000010010000
+00011111111000001111111000000001
+11000000100000111010101001110100
+00011000000000000111111000000001
+01100000000000001100000010010000
+10011000000000000000100000000000
+00100000011000000000000000000000
+00011011001000100000010000000000
+00100000011101001000000000000000
+00011011010000100000010000000000
+00100000011000000000000000000000
+00011100010000100111111000000000
+00100000011101001000000000000000
+00011101000000100111111000000000
+00100000011000000000000000000000
+01000100110011110100000000010011
+01101000000010100000000001001101
+00100000010000000010101001111011
+10011000010001100001011000000000
+00011001011000100111111000000000
+01101000000010010000000001010001
+00011000010000111000010000000000
+10011000010001100111111000000000
+00100000011000000000000000000000
+01000100110011111100000000010011
+00100000010000000010101001111011
+01100000000000100000000001001101
+00100000011000000000000000000000
+01000100110100000100000000010100
+00100000001000000010101010001100
+00100000001000000010101010001110
+00100000011110100000000000000000
+00011111111000110111111000000000
+00011111111000001111111111111101
+00011111111000001111111111111111
+00100100001000101010101010010010
+00011000000000000111111000000000
+00100000011000000000000000000000
+11011111001000000000000000010000
+11011000101000000000000000000000
+00100000010000000111111011000110
+11011000101000000000010000111111
+11011111001000000000000000001010
+00100000010000000111111011000110
+01110000000010011011001000000000
+01110000000010101001100100000000
+01110000000001001000110000000000
+01110000000000010111111100000000
+01110000000001001101000100000000
+01000100110100001100000000010100
+01110000000000010110110100000000
+01110000000000010101000100000000
+01110000000000010101110000000000
+01011000100111101000101100110011
+01100000000000011100000010100111
+01011000000000000000000101010011
+01100000000000010000000010000011
+01110000000000001000010100011110
+01110000000000001000011000000001
+01110000000000001000100000000111
+01011000000100101110100100000100
+01100000000000011000000010000000
+01110000000000001001000001100000
+01110000010000001101000000000101
+01110000000000000001010000000010
+01101000000000001100011001011010
+00100100010110100111010011000001
+01101000000000001100010010111110
+00100100010110100111010100011000
+01000100110100010100000000010100
+00100000011101011000000000000000
+01011000000000000000000000000000
+01100000000000010100000111011100
+00011100010000110111111000000000
+01100000000000100100000010010100
+00100000011000000000000000000000
+01011000000000001110111000100001
+01100000000100010000000001010000
+01101000000100100000000100011100
+01100000000000100000101010111110
+01101000000100001000000100111110
+01100000000000001000101010111101
+11000011000000011110010001011011
+01111000001101011111110000000000
+11000011000000111010101011001100
+01111000010101011111110000000000
+00011100111000100111111000000000
+00100100001110100010101011001100
+01101000000100001000000100111011
+11000010100000010010101011001100
+11011000010111111111111111111111
+00100000001000000010101100111100
+01101000000100011000000100111100
+01100000000100011000000001001100
+11101000110000001000000000000000
+00011111111000011111111011101111
+11100000101000001000000000000000
+00100000010000000010110000100011
+01101000000100001000000001001111
+01111001001000000111111000000100
+01100000000100001000000001001111
+00100000010000000010110000100011
+00100000010101011010101011011111
+01101000000100001000000001001110
+01111001001111111111111000000011
+01100000000100001000000001001110
+00100000010000000010110000100011
+00100100001101011110010001011011
+11000110100101011000000000000000
+01110000100000000000011000001000
+00100000011000000000000000000000
+01101000000000001100000110011000
+01100000000100001000000010000110
+01101000000000011100000110001101
+01100000000100011000000010000000
+01101000000000100100000110000001
+01100000000100100000000001110100
+01101000000000100100000101111101
+01100000000100100000000001110000
+01101000000001000100000110000101
+01100000000101000000000001111000
+01101000000001000100000110010000
+10011000000000000000000000000000
+01101000000101000000000101000000
+01100000000001000000000010100001
+00100000010000000110010011001010
+00100000011000000000000000000000
+00011000000000100111111000000000
+01100000000001000100000110010000
+01101000000101000000000001110000
+01100000000001000100000101111101
+11101000110001000000000000000000
+11100000101001000000000000000000
+01101000000100011000000010000000
+01100000000000011100000110001101
+01101000000100001000000010000110
+01100000000000001100000110011000
+00100000001000000010110000101001
+01101000000100001000000001100011
+00100100001110100010101100000000
+01101000000000011100000101101111
+00100100011110100000000000000000
+01110000100000000110001111000000
+01110000100000000000011010000000
+01101000000100001000000100101101
+11000100000000001000000000000000
+01101000000100011000000101001001
+01100000000000011100000101101111
+00100000011000000000000000000000
+01000100110100011100000000010100
+00011011010000100111111000000000
+00100000010000000111111100110111
+01101000000010100100000101011111
+00011000010001100111110011111111
+00100000011000010000000000000000
+00011111111011010111111000000000
+00011111111100100111111000000000
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+11011000010000000000000011001000
+00100000010000000111111110010001
+01100000000000001000000010011001
+00100100001101000010101100010101
+00011111111001100111111000000000
+01101000000010011100000101101111
+10011000010000001111111000000000
+01100000000000011100000101101111
+01011000000000000000000000000000
+01100000000000100100000101011111
+00100000011000000000000000000000
+01101000000000001100000101110111
+01111001001000000111111000000010
+01100000000000001100000101110111
+00100000001000000010101100100011
+11011000010111111111111111111111
+01101000000000001100000101110110
+01111001001111111111111000000111
+01100000000000001100000101110110
+01000100110100100100000000010100
+00100000010000000010110000101001
+01101000000000001100000101010111
+01100000000000001100000101111100
+01101000000000001100000101111010
+01111001001000000111111000000111
+01100000000000001100000101111010
+01000100110100101100000000010100
+00100000010000000010100111100111
+01101000000000100100000101011111
+10011000010000001111111000000000
+01100000000000100100000101011111
+00100000010000000010101011101111
+01101000000000101100000101111000
+01100000000100100000000001001100
+00011111111011110010001000000000
+00110111110110011000001000000000
+00011011001000100111111000000000
+01100000000000110100000101100011
+01110000100000000000010100000010
+00110111110110011000001000000000
+00110111110110011000001000000000
+00011010001000100111111000000000
+01100000000100001000000001001111
+01110000100000000000010100000010
+00110111110110011000001000000000
+00110111110110011000001000000000
+01100000000110100000000001001100
+01110000100000000000010100010000
+00110111110111111000001000000000
+01000100110100110100000000010100
+01011000000000000000000000000000
+00011100111000100111110000000000
+00100000001000101010101101001100
+01101000000100001000000100111100
+01101000000110001000000100111101
+10011000010001100111110000000000
+00100000001000010010101101001010
+00011000010000100111111000000000
+10011100111001100111111000000000
+00011111111000001111111000000001
+00011111111000001111111000001000
+00110111110110011000001000000000
+10011110001000001111111000000000
+01101000000010100100000101011011
+10011000010000001111111000000000
+01101000000010011100000101101111
+10011000010011111111111000000000
+00011111111011001111111000000000
+00011111111100011111111000000000
+00011111111000001111111001101110
+11011000010000000000111010100110
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+00011111111100000111111000000000
+00011000000001110000010000000000
+10011000010000011111111000000000
+01101000000010110100000101100011
+00100000010000000111111100101100
+00011000010000100011001000000000
+01101000000000110100000001001000
+00100000010000000010100001010100
+00011011010000100111111000000000
+01100000000000110000101010011010
+00011100111000100111111000000000
+11100000101000001000000000000000
+01101000000100001000000100011101
+00011111111000011111111011110000
+11100000101000001000000000000000
+00100000011000000000000000000000
+01000100110100111100000000010100
+00100000010000000010101011111010
+01101000000000011100000101101111
+00100000011110100000000000000000
+01101000000000001100000010010001
+00100000011110100000000000000000
+01101000000000001100011001011010
+00100000001110100010101101110100
+01101000000000001100010110110001
+00100000011110100000000000000000
+01101000000000001100010011000000
+00100100011110100000000000000000
+00100000010000000010110000111010
+00100100011110100000000000000000
+01101000000000001100000001000000
+00101111111000000000111000000011
+00100100001000001010101110011101
+01101000000000010100000001000010
+00100000011110100000000000000000
+00100000011101011000000000000000
+01000100110101000100000000010101
+01101000000010001000000010100000
+01101000000000010100000001000010
+10011000010011111111111000000000
+00011000010100011000010000000000
+00011000010010110000010000000000
+10011000010001100111111000000000
+01101000000010100100000001000100
+10011000010000001111111000000000
+01101000000010001100000101010110
+10011000010001100111111000000000
+00011111111100000110000000000000
+01000100110101001100000000010101
+01101000000000010100000001001110
+00011111111000110111111000000000
+00100000010000000111111101010000
+00011110000000100111111000000000
+00100000010000000111111100111001
+00011011010000100000010000000000
+00100000010000000111111100110111
+00100000011101000000000000000000
+00100000010000000111111101001001
+01000100110101010100000000010101
+01101000000000001100000101111000
+10011000010001100111110000000000
+00100000001000010010101100011000
+01100000000010100100000101011011
+00100000010000000011001100101000
+00100000010000000101001011111011
+01101000000010100100000101011011
+00100000001000000010101100101010
+01000100110101011100000000010101
+01101000000000001100000001000000
+11000011100000000000000000000000
+11000011100000011000000000000000
+01101000000000001100011001011010
+00100000001110100010101110100101
+01101000000000001100010110110001
+00100000011110100000000000000000
+01000100110101100100000000010101
+01101000000000001100001101101110
+00100100001110100010101110101010
+01101000000000001100000010010011
+00100000011110100000000000000000
+01101000000000010100000101010100
+00100000011110100000000000000000
+01101000000010001100000101010110
+10011000010001100111111000000000
+11011000010000000001110101001100
+10011000010011111111111000000000
+00100000001000000010101110010011
+01000100110101101100000000010101
+01111000010101011111110000000000
+01101000000000001000000000110000
+11000100000000001000000000000000
+00100100001101101010101111010000
+00100000010000000010101111001011
+01101000000000010100000011000001
+01100000000000010000000000111110
+01101000000000001000000001000111
+11000010100000011010101111011110
+11000101100001101010101111011110
+00100000010000000101001001110100
+00100100001110100010101111011110
+01101000000000001100010101011100
+11000010100000001010101111011110
+01110000000000001010000000000000
+11000101100001101010101111011110
+01101000000000001100000101110100
+00100000001110100010101111100010
+00011111111000001111111111111111
+01100000000000001100000101110100
+00100000011000000000000000000000
+11011000111000000000000000000001
+00100000001000000110000011001101
+11011000111000000000000000000001
+00100000001000000110000011010001
+01110000010000010101100100000000
+01101000000000011100000101101001
+00011111111000001111111000000001
+01100000000000011100000101101001
+00100000011000000000000000000000
+01000100110101110100000000010101
+01101000000010010100000011000001
+00011000010000110000010000000000
+01101000000000010000000000111110
+10011000010000001111111000000000
+01100000000000010000000000111110
+01110000000000001010000000000000
+01101000000000011100000101101100
+00011111111000001111111000000001
+01100000000000011100000101101100
+01101000000000001100000101011001
+00011111111000001111111000000001
+01100000000000001100000101011001
+00100000011000000000000000000000
+01110000000000001010000000000000
+01101000000000001100000101110011
+01100000000000001100000101110100
+00100000011000000000000000000000
+01101000000010001100000101110010
+01100000000010001000000010100000
+00100000011000000000000000000000
+01000100110101111100000000010101
+01101000000000001100000101111000
+00100100011110100000000000000000
+01110000100000000100001000000110
+01011000000000000000111100001100
+00100000010000000010110000011000
+01011000000000110000110101000000
+00100000010000000010101010001111
+00110111110110011000001000000000
+00011110001000100110000000000000
+00100000010000000010100111100111
+01110000100000000100001000000100
+00100000000000000000000000001010
+00110111110110011000001000000000
+00011110001000100111111000000000
+10011110000001100111111000000000
+00011111111000001111111000110000
+11011000010000000000000011111111
+00100000010000000111111110010001
+01100000000000001100000101111000
+00100000000000000111010100110000
+00100000000000000111010100110000
+00100000000000000111010100110000
+00100000011000000000000000000000
+01101000000000001100000101111000
+00100100011110100000000000000000
+01110000100000000100010011111111
+01110000100000000100001000000110
+00100000010000000010100111100111
+01011000000000000000001111101000
+10011110001000001110000000000000
+00000111111000000000000000000000
+00011110001000100111111000000000
+00100000000000000010111011100000
+00100000000000000010111011100000
+00100000000000000010111011100000
+00100000000000000010111011100000
+00100000000000000010111011100000
+00100000000000000010111011100000
+00100000000000000010111011100000
+00100000000000000010111011100000
+00100000000000000010111011100000
+10011110000001100111111000000000
+00011111111000001111111000110000
+11011000010000000000000011111111
+00100000010000000111111110010001
+01100000000000001100000101111000
+00100000000000000111010100110000
+00100000000000000111010100110000
+00100000000000000111010100110000
+00100000011000000000000000000000
+11011000101000000000111111111111
+10011000101000010000101000000000
+01101000000000001100000101110101
+00011111111000010111111011110000
+00011111111011010111111000000000
+10011000101000011111111000000000
+01100000000100010000000001001100
+11101000110000010000000000000000
+11100000101000010000000000000000
+01011000000000000000000000000001
+00100000001000000010110000100100
+01011000000000000000000000000010
+00110111110110011000001000000000
+01100000000100001000000000000101
+00110111110110011000001000000000
+00110111110110011000001000000000
+00100000011000000000000000000000
+01000100110110000100000000010110
+01101000000000100000000010100001
+01100000000100100000000001001100
+01011000000000000000000000000100
+00100000010000000010110000100100
+01101000000000100000000010100101
+01100000000100100000000001001100
+01011000000000000000000000001000
+00100000001000000010110000100100
+01101000000000010100000101010010
+11111001001000000111111000000000
+01100000000000010100000101010010
+00100000011000000000000000000000
+01101000000000010100000101010010
+11111001001111111111111000000000
+01100000000000010100000101010010
+00100000011000000000000000000000
+01000100110110001100000000010110
+00100000010000000011001100100110
+01101000000000010100000101010010
+00011111111000100010001000000000
+01101000000000001000000001001100
+00101111111011111111111000000110
+01111001001000001010001000001011
+01101000000000001000000001111000
+01101000000010001000000001111100
+10011000010000001111111000000000
+01101000000010001000000001001000
+10011000010000001111111000000000
+01111101001110100010001000001010
+01101000000000001100010011111111
+01111101001110100010001000000001
+01101000000000010000001001011101
+01101000000010010000001001011111
+10011000010000001111111000000000
+01111101001110100010001000001101
+01101000000001000100011001101000
+01111101001110100010001000001111
+01101000000001000100011001110000
+01111101001110100010001000001110
+01101000000000001100000111001110
+01111101001110100010001000001000
+01101000000000001100000010010010
+00101111111000011111111000001010
+00100000010000001010110001011011
+01011111111111111111111111111000
+10011010001000010010001000000000
+00011010001000100111111000000000
+01100000000000010100000101010010
+00100000011000000000000000000000
+01101000000100010000000100010010
+01111101001110100010001000000110
+01101000000100010000000100001110
+01111101001110100010001000000101
+00100000011000000000000000000000
+01101000000100100000000100111000
+01111001001111111111111000011011
+01100000000100100000000001001100
+00100000010000000010110000100001
+00100000001000000010101010001100
+01101000000100100000000100111100
+01111001001111111111111000010100
+01100000000100100000000001001100
+00100000001000000010110000100011
+01101000000000010100000101010000
+11000010100000000010101010001100
+00100000011000000000000000000000
+01101000000000010100000101010000
+11000010100000001010101010001100
+00100000011000000000000000000000
+01101000000000010100000101010000
+11000010100000010010101010001100
+00100000011000000000000000000000
+01000100110110010100000000010110
+00100000010000000010110001111010
+00011010011000001010010011001101
+11101010010000001000000000000000
+11000001000000000000000000000000
+11000000000000001010110100000110
+11000000000000010010110001111111
+00100000011000000000000000000000
+01101000000010010100001001000001
+00011000010000100010011000000000
+00100000011000000000000000000000
+00100000010000000010111100111101
+00100000001000000011000001111101
+00100000010000000011000010000100
+00100000010000000011000001011010
+00100000010000000011000001011110
+00100000001000000011000010100010
+00100000010000000011001000110001
+01011000000000000000000001001110
+00100000010000000011001000101111
+00100000010000000011001010111010
+00011010011000001010001010010010
+11101010001000100000000000000000
+00100000001000000011001000101100
+00100000010000000010110001111010
+00011010011000001010010010010001
+11101010010010001000000000000000
+00100000010000000010110010010000
+00011010011000001000101010010001
+00100000001000000010111001010110
+00100000010000000010110010010100
+00011000010000001000010000000001
+00011000010000010000010000000011
+00100000011000000000000000000000
+00011010011000001010010010101110
+11101010010000001000000000000000
+00011111111000010111111000000011
+00011111111011111010001000000100
+00011010011000001111111010010111
+10011010001000001111111000000000
+10011000010000001000110000000000
+11101000110000001000000000000000
+00100000001000000011001000101111
+00100000010000000011001001101100
+00100000010000000110011001101010
+01011000000000000000011111100010
+11011010001000000000101010100010
+11011000010000000000000000000100
+00100000010000000110011010110011
+00100000010000000110011001101101
+01101000000000100000101010100010
+00100000010000000011001000100111
+00100100011110100000000000000000
+01101000000000100100000010100000
+00100000001000000011001000100111
+00100000010000000011001001000001
+01011000000000000000000000000000
+00100000010000000011001000111111
+00100000010000000011001000111010
+00011111111000010111111000000111
+00100000001000000011001000111100
+00100000010000000011001000111010
+01111001001000000111111000000100
+00100000010000000011001000111100
+00100000001000000011001000110101
+00100000010000000011001001011101
+11000000000000001010110010110111
+11000000000000010010110010111100
+00100000011000000000000000000000
+00100000010000000011001000111110
+00011010011000001000101011010001
+00100000010000000011001011010110
+00100000010000000011001001000010
+00100000001000000010110010101100
+00100000010000000011001001011010
+00100000001000000010110010111000
+00011010011000001010001010001100
+11101010001000001000000000000000
+00011111111000001111111000000001
+00011010011000001000101010001100
+11100000101000001000000000000000
+11000000000100000010110111010010
+00100000010000000011001001011000
+11000000000000001010110011001010
+01011000000000000000000000000001
+00100000010000000011001001011011
+00100000010000000011001001011000
+11000000100000001010110010101100
+00011010011000001010001011010011
+11101010001000001000000000000000
+00011111111000001111111000000001
+00100000010000000010110011010101
+11000000000000100010110011010010
+00100000010000000010110010001010
+00100000010000000010110100000100
+00100000001000000010110110001111
+00100000010000000010110011010100
+00100000001000000010110010101100
+01011000000000000000000000000000
+00011010011000001000101011010011
+00100000001000000011001010110100
+00100000010000000011001000111110
+00100000010000000011001001011010
+00100000010000000011001001000001
+00100000001000000010110010101100
+00100000010000000011001001011101
+11000000000000011010110011011000
+00100000010000000011001000111010
+00101111111011000000000000000100
+00100000001000001010110010101001
+00100000010000000011001001011101
+11000000000000001010110011010111
+11000000000000010010110011011000
+00100000011000000000000000000000
+00100000010000000011001001010011
+11000001111111111000000000000000
+00100000010000000010110011101001
+00100100010101100010110011110100
+00100000011000000000000000000000
+01111000010101100111110000000000
+00011010011000001010001011001110
+11101010001000001000000000000000
+11000001100000001000000000000000
+00011010011000001010001011010000
+11101010001000001000000000000000
+11000001100000000000000000000000
+01011000000000000000000000000001
+00100000010000000010110011111101
+00100000010000000011001000110111
+00100000001000000111111111101011
+00011010011000001010001011010000
+11101010001000001000000000000000
+00100000001110100010110011111111
+00011111111000001111111111111111
+00100000010000000011001000111111
+01011000000000000000000000000010
+00100000010000000010110011111101
+00100000010000000010110010001010
+00100000001000000011001000110111
+00011010011000001000101011010010
+00100000001000000011001010110100
+01011000000000000000000000000011
+00100000010000000010110011111101
+00100000010000000011001001011000
+00100100001110100010110011001000
+00100000010000000010110010001010
+01011000000000000000000000000010
+00100000001000000011001000111000
+11000110100100110000000000000000
+01111001001000000000000000100111
+01000100110110011100000000010110
+00011010011000001010001010001110
+11101010001000001000000000000000
+11000000000000001010110100001111
+00100000010000000011000001101010
+00100100001101000010110100010110
+00100000010000000010110100011011
+00011010011000001000101010001110
+00100000010000000011001011010110
+00100000010000000010110100101100
+00100100001101000010110101111101
+00100000010000000010110011100100
+00100000010000000010110110001111
+00100000010000000010111001111010
+01111001001111111000000000100111
+00100000011000000000000000000000
+00100000011000101000000000000000
+01111001001000000111111000011100
+00100000011000000000000000000000
+00011010011000001010001011000010
+11101010001000001000000000000000
+00011111111000001111111000000001
+00011010011000001000101011000010
+11100000101000001000000000000000
+11000000000000100010110100100011
+11000000000000101010110100100111
+00100000011000000000000000000000
+00011010011000001010001010101101
+11101010001000001000000000000000
+00011010011000001000101010101011
+00100000001000000011001010110100
+00011010011000001000101011000010
+00100000010000000011001011010110
+00011010011000001010001010101100
+11101010001000001000000000000000
+00100000001000000010110100100101
+00100000010000000011001001010011
+11000000111111111010111010110001
+01000100110110100100000000010110
+00100000010000000010110100111010
+00100100001101000010110100110110
+00100000010000000010110101010011
+00100000010000000010111001110001
+01011000000000000000000000000001
+00011010011000001000101010001011
+00100000001000000011001010110100
+00011010011000001010001010001011
+11101010001000001000000000000000
+11000000000000001111111111100111
+00100000011000000000000000000000
+00011010011000001000010011011000
+11101000010000010000000000000000
+00100000010000000111111110011100
+00100100011101000000000000000000
+00011010001000100111111000000000
+01100000000000001000101010101110
+00011010011000001000101010110010
+00100000010000000011001011010110
+00100000010000000010110010101100
+01100000000000001001000110011110
+01101000000000001000101010101110
+00011111111000100010001000000000
+00011010001000001000010000000001
+11011000101000000001000110011111
+00011010001000100111001000000000
+00011010010000100000110000000000
+00100000010000000111111100000001
+11011010001000000001000110011110
+11000110100100111000000000000000
+00011010011000001000101010000110
+11100000101010001000000000000000
+00011000010000100111001000000000
+00011010011000001000101000100010
+00011010001000100000110000000000
+00100000001000000111111100000001
+00011010011000001010001010000110
+11101010001000001000000000000000
+00011111111000001111111000000010
+00011010011000001000101010001000
+11100000101000001000000000000000
+00100000010000000011001000111010
+00100000010000000011001000110101
+00011010011000001010001010000110
+11101010001000001000000000000000
+00011111111010011111111000000000
+00011010011000001010001010000101
+11101010001010001000000000000000
+00011000010000010000010000000011
+00011000010000111000010000000000
+10011000010000011111111000000000
+00011010011000001010001011000011
+11101010001010001000000000000000
+10011000010000001111111000000000
+11100000101000001000000000000000
+00011010011000001010001010000110
+11101010001000001000000000000000
+10011000000000000111001000000000
+00011010011000001000110000100010
+00100000001000000111111100000001
+00100000010000000011001001001111
+00100000010000000011001001011010
+00100000010000000010111001101101
+00100000010000000010110010101100
+01100000000000001001000110011110
+00100000010000000010110101110111
+00100000010000000011001000111010
+01111001001000000111111000000011
+00100000010000000011001000111100
+00100000010000000010110101010011
+00100000010000000010110100110011
+00100000001000000010110100010100
+01100000000000001001000110011111
+00100000010000000011001000100100
+01100000000000100001000110100000
+11011000010000000000000000000110
+11011010001000000001000110011110
+00100000001000000010110101001100
+00011010011000001010001010110010
+11101010001000001000000000000000
+00100000001110100010110101101011
+00011010011000001010001011011010
+11101010001000010000000000000000
+00100000001000000111111110011100
+00100000010000000010110001111010
+00100000010000000010101011111010
+01101000000000011100000101101111
+00100000011110100000000000000000
+00011010011000001000010011011100
+11101000010000010000000000000000
+00100000010000000111111110011100
+00011010011000001000010010110110
+11101000010001000000000000000000
+00100000010000000111111101001001
+01100000000010100100000101011011
+00100000001000000010101100101010
+00100000010000000010110001111010
+00011010011000001000101010001111
+00100000010000000011001011010110
+00100000010000000010110110100100
+00100100001011000010110110101110
+00100100001101111010110110101110
+00100000010000000010110111010110
+00100000010000000010111001110101
+00100000010000000010110001111010
+00011010011000001010001010000101
+11101010001000001000000000000000
+00011111111000001111111000000001
+00100000010000000011001000110010
+00100000010000000011001001010011
+11000000111111111010111011010000
+00100000010000000010110011011011
+01011000000000000000000000000000
+00011010011000001000101010001100
+11100000101000010000000000000000
+01011000000000000000000000000000
+00100000001000000010110100110100
+01111000010101111111110000000000
+00100000010000000010110111110111
+00100000010000000010110001111010
+00011010011000001010001011000011
+11101010001000001000000000000000
+11000000000000001010110110101100
+00100000010000000010111000010001
+00100000001000000010111001000101
+00100000010000000010111001000101
+00100000001000000010110110010111
+01000100110110101100000000010110
+00011010011000001010001010001101
+11101010001000001000000000000000
+00011111111000001111111000000001
+00011010011000001000101010001101
+11100000101000001000000000000000
+00100000010000000011001001010011
+11000000111111111010110111001100
+00011010011000001010001010001111
+11101010001010001000000000000000
+00011000010000001000010000000001
+00011010011000001000101010001111
+11100000101010001000000000000000
+00011010011000001010001011001100
+11101010001000001000000000000000
+10011000010001100111111000000000
+00100100001110100010110110010010
+01000100110110110100000000010110
+00100000010000000011001001011101
+11000000000000011010110010111110
+00011010011000001010001011010001
+11101010001000001000000000000000
+00011111111000001111111000000001
+00011010011000001000101011010001
+11100000101000001000000000000000
+11000000000000010010110010110011
+00100000010000000010110010101111
+01011000000000000000000000000001
+00100000010000000011001000111000
+00100000001000000010110110001111
+00011010011000001010001010001101
+11101010001000001000000000000000
+11000001111111111000000000000000
+00011010011000001000101010001101
+00100000010000000011001011010110
+00100000001000000010110111010100
+00011010011000001000101010001100
+00100000010000000011001011010110
+01110000000010101001100100111010
+00100000001000000111110110000110
+00100000010000000010110111011110
+00011010011000001010001010000100
+11101010001000001000000000000000
+00100000011110100000000000000000
+10011000000000000111001000000000
+00011010011000001000110000000010
+00011010011000001000101001100100
+00100000001000000111111100000001
+00100000010000000011001001011111
+00011111111010010111111000000000
+00011010011000001000101010000100
+11100000101000001000000000000000
+00011111111000001111111000000001
+00011010011000001000110000000001
+10011000110000001000110000000000
+11101000110000011000000000000000
+00011010011000001000101011000100
+11100000101000011000000000000000
+00100000010000000011001001011111
+00011111111000110111111000000000
+00011111111000010111111000000011
+00011010011000001000101011001010
+11100000101000001000000000000000
+00100000011000000000000000000000
+01111000010001001111110000000000
+01111000010000111111110000000000
+01011000010101010101010101010101
+10011000000000000001111000000000
+00100000011000000000000000000000
+00100000010000000010100100011000
+00011010011000001010001010010000
+11101010001010001000000000000000
+00100000001000000010100100110011
+00100000010000000010110111101110
+00100000010000000010110111110011
+01111001001000000010101000000000
+01111000001011101111110000000000
+01111000001100000111110000000000
+01111000010100001111110000000000
+00100000010000000101001111000100
+00100000010000000011001000101010
+10011000000000000001001000000000
+00001000000000001000011000100000
+01111000001001001111110000000000
+00011010011000001010001010001000
+11101010001000001000000000000000
+10011000000000000111001000000000
+00011010011000001000110001000010
+11101000110000001000000000000000
+00001000000000001000011000001000
+11000010000000000010111000000110
+01111000001001000111110000000000
+00001000000000001000011000011000
+01111000010001000111110000000000
+00110111110100111000001000000000
+01000100110110111100000000010110
+00100000000000000000000001100100
+01111000010011101111110000000000
+00100000011000000000000000000000
+01111000010101111111110000000000
+00011000000000000010101000000000
+00011010011000001010001010010000
+11101010001010001000000000000000
+00100000010000000010100100011111
+00100000010000000010100100100100
+00100000010000000010110111101110
+01111000001001101111110000000000
+01111000001100001111110000000000
+01111000010100000111110000000000
+00100000010000000101001111000100
+00100000010000000011001000101010
+10011000000000000001001000000000
+01111000001010000111110000000000
+00011010011000001010001010001001
+11101010001000010000000000000000
+10011000000000000011011000000000
+00110111110000011000010000000000
+00100100001011000010111001001101
+01111000001001001111110000000000
+00001001100000000000000000001000
+00011001100010010111111000000000
+00011010011000001000101000000000
+11100000101000001000000000000000
+00011010011000001010001011001101
+11101010001000001000000000000000
+11000000000000010010111000110011
+01000100110111000100000000010111
+00011010011000001010001000000000
+11101010001000001000000000000000
+00011010011000001010001010000111
+11101010001010001000000000000000
+10101000010000000000111000000000
+00100100001000001010111001000101
+00001001100000000000000000001000
+00011001100010010111111000000000
+11100000101000001000000000000000
+00011111111010010111111000000000
+00011111111000010111001000011111
+00100000001000101010111000111101
+00001001100000000000000000001000
+00011001100010010111111000000000
+11100000101000001000000000000000
+11000010000000000010111000111001
+00001001100000000000000000011000
+00011111111011110111111000000000
+00011111111100010111111000000000
+11100000101000011000000000000000
+00100000001000110010111001000101
+01111000001101111111110000000000
+01111000010001101111110000000000
+00100000011000000000000000000000
+01111000010011101111110000000000
+01111000010001101111110000000000
+01111000010001001111110000000000
+01111000010000111111110000000000
+00100000001100001010100011111001
+00110111110100111000001000000000
+00100000000000000000000001100100
+00100000001000000010100011111001
+00100000010000000010111001001111
+00100000001000000010111001000101
+00100000010000000010100110111011
+00100000011110100000000000000000
+00011010011000001010001011101010
+11101010001010001000000000000000
+11011010001000000000110110011110
+00100000010000000010111001011000
+00011010011000001000101011101010
+11100000101010001000000000000000
+00100000011000000000000000000000
+11011010010000000000000011111111
+00100000001000000010111001011010
+00011010001000100111111000000000
+10011000010000001000101000000000
+01101000000000001000000000011000
+11100000101000001000000000000000
+00011000010000001000010000000001
+00011010010000100111111000000000
+10011000010000010000010000000000
+00100000011000000000000000000000
+11011000010000000000000000000000
+00011010001000100000110000000000
+11101000110000001000000000000000
+10011000010000001000010000000000
+11000010000000000010111001100100
+00011000010011001000010000000000
+00100000011000000000000000000000
+00100000010000000010110001111010
+00100000010000000010111010011111
+01011000000000000000000000000001
+00100000010000000011001001110010
+01011000000000000000000000000000
+00100000010000000010111001110011
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000010000000011001001110000
+00011111111000001111111000000001
+00011010011000001000101011111100
+00100000001000000011001010110100
+00011010011000001010001011111101
+11101010001000001000000000000000
+00011111111000001111111000000001
+00011010011000001000101011111101
+00100000001000000011001010110100
+01000100110111001100000000010111
+00100000010000000011001001110000
+00011111111001100111110001111100
+00100000011000010000000000000000
+00011010011000001010001011111101
+11101010001010001000000000000000
+10011000010001100000010000000000
+00100000010000000010111001101101
+01011000000000000000000100000010
+10011010011000001010001000000000
+11101010001000001000000000000000
+10011000010001100111110000000000
+00100100001000010010111010001101
+01011000000000000000000100000011
+10011010011000001010001000000000
+11101010001000001000000000000000
+10011000010001100111110000000000
+00100000001000010010111010011001
+00100000011000000000000000000000
+00011010011000001010001011111110
+11101010001000001000000000000000
+11000000000000010010111010010011
+00011111111000001111111000000001
+00100000010000000011001001110010
+11000000000000001010111010011111
+01011000000000000000000000001010
+00100000010000000011001010110000
+01011000000000000000000000000000
+00100000010000000011001010110010
+00011010011000001010001011111111
+00100000001000000010111010100101
+00011010011000001010001011111110
+11101010001000001000000000000000
+11000000000000000010111010100111
+00011111111000001111111111111111
+00100000010000000011001001110010
+11000000000000000010111010100111
+01011000000000000000000000000101
+00100000010000000011001010110000
+01011000000000000000000000000000
+00100000010000000011001010110010
+01011000000000000000000100000000
+10011010011000001010001000000000
+11101010001000001000000000000000
+00100000001000000011001001101010
+01011000000000000000000000000010
+00100000010000000011001010110000
+01011000000000000000000000000000
+00100000010000000011001010110010
+01011000000000000000000100000001
+00100000001000000010111010100100
+01111001001000000000000000100110
+00100000010000000010110010000011
+01011000000000000000000000000001
+00100000001000000011001001010110
+00011010011000001010001010001011
+11101010001000001000000000000000
+11000000000000001111111111100111
+00100000010000000011001001010011
+11000000000000001010111010111001
+11000000000000010010111010111101
+11000000000000011010111011000001
+00100000001000000010101010001100
+01011000000000000000000000010001
+00100000010000000011001001010110
+01110000000100011001111010101010
+00100000001000000010111011000100
+01011000000000000000000000010010
+00100000010000000011001001010110
+01110000000100011001111001010101
+00100000001000000010111011000100
+01011000000000000000000000010011
+00100000010000000011001001010110
+01110000000100011001111000100010
+00100000010000000011001000111010
+00011111111000010111111000000111
+01100000000000001001000110011111
+00100000010000000011001000100100
+01100000000000100001000110100000
+01110000000100011010010000000000
+11011010001000000001000110011110
+11011000010000000000000000000111
+00100000010000000010110101001100
+00100000010000000010110101010011
+00100000010000000010110100110011
+00100000001000000111111111100111
+00100000010000000011001001010011
+11000001011111111000000000000000
+11000000000010001010111011010110
+11000000000010010010111011011001
+11000000000010011010111011011100
+00100000011000000000000000000000
+01011000000000000000000000000010
+00100000010000000011001001010110
+00100000001000000010110110011111
+01011000000000000000000000000011
+00100000010000000011001001010110
+00100000001000000010110110011111
+01011000000000000000000011111111
+00100000010000000011001001010110
+01110000000010101001100100111001
+00100000010000000111110110000110
+00011010011000001010001001100110
+11101010001000100000000000000000
+00100000010000000011001000101100
+00100000001000000010110110011111
+01111001001111111000000000100110
+00100000010000000010111100001000
+00100000010000000010111100100010
+00100000010000000011001001100011
+00100000000000000000011111010000
+00100000010000000011001001100001
+11000000011111111010110111010100
+00100000010000000010110110100100
+00100100001011000010111011111010
+00100100001101111010111011111010
+00100000010000000010110111010110
+00100000010000000010110001111010
+00011010011000001010001010010010
+11101010001010100000000000000000
+00100000010000000011000010111110
+00100000001000101010111010101101
+00100000010000000010110001111010
+00011010011000001010001001100110
+11101010001000100000000000000000
+11000000000000000010111011100111
+00100000010000000011001000101100
+00100000001000000010111100011100
+00100000010000000011001001100001
+00011111111000001111111000000001
+00100000010000000011001001100100
+00100000010000000010111100000100
+00011111111000001111111000000001
+00011111111000010111111000000001
+00100000010000000010111100000110
+11000000000000000010111100001100
+11000000000000001010111100001110
+00100000011000000000000000000000
+01011000000000000000000110001011
+00100000001000000011001011010000
+11011010001000000000000110001011
+00100000001000000011001010110011
+00100000010000000011001001100111
+00100000010000000011001000100100
+00100000010000000011001000101100
+00100000001000000010110010001010
+00100000010000000010111100001000
+00100000001000000010111011101000
+00100000010000000010110010000011
+00100000001000000010111011101000
+01111001001111111000000000100110
+00100000010000000010110010001010
+00100000010000000011001001010011
+11000001111111111000000000000000
+00100000010000000010111100100010
+00100000010000000011001001100011
+00100000000000000000011111010000
+00100000010000000011001001100001
+11000000011111111010110111010100
+00100000010000000010110110100100
+00100100001011000010111100100111
+00100100001101111010111100100111
+01111001001000000000000000100110
+00100000010000000011001001100011
+01011000000000000000000011111111
+00100000010000000011001001010110
+01110000000010101001100100111100
+00100000001000000111110110000110
+01111001001000000000000000100111
+01110000000100011001111011111111
+00100000010000000011001000111010
+00100000010000000010110101110111
+00100000001000000010110101010011
+00100000010000000011001001100001
+00011111111000001111111000000001
+00100000010000000011001001100100
+00100000010000000010110010001010
+00100000001000000010111100010110
+00100000010000000011001001100111
+01011000000000000000000011111111
+00100000010000000011001001010110
+00100000001000000010111100010000
+01000100110111010100000000010111
+00100000010000000010110001111010
+01011000000000000011000110110000
+00011010011000001000101011011110
+11100000101000010000000000000000
+00100000010000000010111100111101
+00100000010000000100100011101010
+00100000010000000011001010110110
+01000100110111011100000000010111
+11000000000000000011000001010101
+11000000000000001010111101000101
+11000000000001111010111101000001
+00100000001000000010101010001100
+00100000010000000011001001101100
+11011111001000000000000010000000
+11011000101000000000110110011110
+00100000001000000111111011000110
+00100000010000000010111101001100
+00100000010000000010111101001111
+00100000010000000100100011010011
+00100000001000000010111101000010
+01000100110111100100000000010111
+00100000010000000010111101001100
+00100000010000000010111101001111
+00100000010000000010111110111101
+00100000010000000100100011010011
+00100000010000000011000000011001
+00100000001000000010111101000111
+00100000010000000011001010010001
+00100000010000000011001010010110
+00100000001000000011001010011001
+00100000010000000011001010001111
+11000001100000000000000000000000
+00100000010000000010111101010101
+00100000010000000010111101100101
+00100000010000000011000101101011
+00100000001000000010111110010110
+00100000010000000011001010010100
+11000011100000000000000000000000
+01111001001000000111111000000000
+00100000010000000011001010010111
+00100000010000000011001001100111
+00100000010000000011001010011001
+01110000000011010011100000000000
+00100000010000000011001001001111
+00100000010000000010111101100001
+00011010011000001000101000000000
+11011111001000000000000001000010
+00100000001000000111111011010100
+00100000010000000011001000110001
+00100000010000000011001001111101
+00100000010000000011001000101100
+00100000001000000010110010001010
+01000100110111101100000000010111
+00100000010000000011001001001100
+11000000000000001010111110001101
+00100000010000000011001001000101
+11000000000000001010110010001010
+01011000000000000000000100110110
+10011010011000001010001000000000
+11101010001010100000000000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100010000010010110100011000
+00011111111000100010010000000000
+01011000000000000000000100110110
+10011010011000001010001000000000
+11101010001000100000000000000000
+00011111111000100000010000000000
+01011000000000000000000100111010
+10011010011000001010001000000000
+00011000010000100111111000000000
+11101010001010001000000000000000
+10011000010000001000010000000000
+00011010010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01111001001111111111111000011100
+01011000000000000000000100110110
+10011010011000001000101000000000
+11100000101000100000000000000000
+00100000010000000010110010001010
+00100000010000000011001001111000
+00011111111000001111111000000001
+00100000010000000011001001111011
+11000001100000010000000000000000
+00100000010000000011001001111010
+00100000001000000011001001001111
+00011100010000100111111000000000
+11011010001000000000000100110110
+00100000010000000011001010111111
+11100000101000100000000000000000
+00100000001000000011001001111010
+11011010001000000000110110011110
+00100000010000000010111110010100
+00011010011000001000101011101011
+11100000101010001000000000000000
+00011000010001100111110001010000
+00100100011000010000000000000000
+00100000001000000010110010001010
+11011111001000000000000100000000
+00100000001000000010111001100010
+00100000010000000010111110011001
+00100000010000000010111110100101
+00100000001000000010111110110001
+01011000000000000000000110000000
+00100000010000000011001011010000
+00100000011110100000000000000000
+11011000111000000000000000001011
+00100000010000000111111100010110
+00100100011110100000000000000000
+00100000010000000011001010100111
+01011000000000000000000000000001
+01100000000000001000110101010100
+01011000000000000000000000000000
+11100000101000111000000000000000
+00100000001000000011000110111000
+01011000000000000000000101111110
+00100000010000000011001011010000
+00100000011110100000000000000000
+11011000111000000000000000001110
+00100000010000000111111100010110
+00100100011110100000000000000000
+00100000010000000011001010101010
+11011000101000000000110101100100
+11011111001000000000000000000010
+00100000010000000111111011000110
+01110000000011010110010000000000
+00100000001000000011000111101101
+01011000000000000000000101111111
+00100000010000000011001011010000
+00100000011110100000000000000000
+11011000111000000000000000001100
+00100000010000000111111100010110
+00100100011110100000000000000000
+00100000010000000011001010101101
+11011000101000000000110101110100
+11011111001000000000000000000010
+00100000010000000111111011000110
+01110000000011010111010000000011
+00100000001000000011001000000111
+00100000010000000011001010001111
+11000001100000001000000000000000
+00100000010000000010111111000001
+00100000001000000010111111001011
+00100000010000000011001010010100
+11000011100000001000000000000000
+01111001001000000111111000000001
+00100000010000000011001010010111
+00100000010000000011001010011100
+00100000010000000010110010000011
+01011000000000000000000000000000
+11011010001000000000000100000110
+00100000010000000011001010111111
+00100000001000000011001011000101
+00100000010000000011000101101110
+00100100001101111010111101011110
+00011010011000001000110000000000
+01011000000000000000000100001001
+10011010011000001000101000000000
+11011111001000000000000000001000
+00100000010000000111111100000001
+01011000000000000000000100001011
+00100000010000000011001011010000
+11000000010101010010111111011001
+11000000001010101010111111101101
+11000000000100010011000000000001
+11000000011111111011001000010010
+00100000001000000010111101011110
+00100000010000000011001010111101
+11000000000000001010111111011101
+11000000000000010010111111101000
+00100000011000000000000000000000
+01011000000000000000000000000001
+00100000010000000010111111110111
+01011000000000000000000000000001
+00100000010000000011001010001001
+01011000000000000000000010000000
+11011010001000000000000100110000
+00100000010000000011001010110011
+00100000010000000011001001111101
+11011010001000000000000100110001
+00100000010000000011001010111111
+00100000001000000011001000101101
+01011000000000000000000000000001
+00100000010000000010111111111111
+01011000000000000000000000000010
+00100000010000000011001010001001
+00100000001000000010111111100001
+00100000010000000011001010111101
+11000000000000001010111111110001
+11000000000000010010111111111001
+00100000011000000000000000000000
+00100000010000000010111111011111
+01011000000000000000000100000110
+00100000010000000011001011010000
+11000000000000001010111111110110
+00100000011000000000000000000000
+01011000000000000000000000000010
+11011010001000000000000100000110
+00100000001000000011001010110011
+00100000010000000010111111101010
+01011000000000000000000100000111
+00100000010000000011001011010000
+11000000000000001010111111111110
+00100000011000000000000000000000
+01011000000000000000000000000010
+11011010001000000000000100000111
+00100000001000000011001010110011
+00100000010000000011001010111101
+11000000000000001011000000000101
+11000000000000010011000000010001
+00100000011000000000000000000000
+01011000000000000000000100000110
+00100000010000000011001011010000
+11000000000000010011000000001001
+00100000011000000000000000000000
+00100000010000000011001010001011
+00011111111000011111111000000001
+00100000010000000011001010001101
+01011000000000000000000000000000
+01011000000000000000000100000110
+10011010011000001000101000000000
+11100000101000010000000000000000
+00100000001000000010111101011110
+01011000000000000000000100000111
+00100000010000000011001011010000
+11000000100000000011000000010101
+00100000011000000000000000000000
+00100000010000000011001010001011
+00011111111000011111111000000010
+00100000010000000011001010001101
+00100000001000000011000000001100
+01101000000000001000110101010000
+00100000011110100000000000000000
+01110000000011010101000000000000
+01101000000000010000110101001110
+11011000010000000000001010111010
+10011000010001100111110000000000
+00100100011000101000000000000000
+01101000000000001000110010110110
+11000001110111010000000000000000
+01101000000000001000110010110111
+01000100110111110100000000010111
+11000000010100000011000000111011
+11000000010100001011000000101100
+11000000010100110011000001000001
+11000000010100111011000001000011
+11000000010101001011000001001001
+11000000010110000011000001001101
+01110000000011010100001000000000
+00100000011000000000000000000000
+01101000000000001000110010111000
+11000000000000001011000000110001
+11000000010000100011000000110100
+11000000010100111011000000111001
+00100000001000000011000000101010
+00100000010000000011001010001011
+01100000000000001000110011110111
+00100000001000000011000000111111
+00100000010000000011001010010001
+00100000010000000011001010010110
+00100000010000000011001010001011
+01100000000000001000110011110111
+00100000001000000011000000111111
+01110000000011001111011110100001
+00100000001000000011000000111111
+01101000000000001000110010111000
+11000000010000001011000000111110
+00100000001000000011000000101010
+00100000010000000011000010010000
+01110000000011010100001000000001
+00100000011000000000000000000000
+01110000000011001111011100010101
+00100000001000000011000000111111
+00100000010000000011001010001111
+11000000000000000011000001000111
+11000000000000001011000000111001
+00100000011000000000000000000000
+01110000000011001111011110100000
+00100000001000000011000000111111
+01110000000011001111011100000000
+01110000000011001111100000000000
+01110000000011001111100100000001
+00100000001000000011000000111111
+00100000010000000011001010011100
+01101000000000001000110010111000
+00011111111000001111111000000010
+00011111111000100111001000000000
+11011000110000000000110010110110
+01011000000000000000000100111100
+10011010011000001000101000000000
+00100000001000000111111100000001
+01000100110111111100000000010111
+00100000010000000011000001111101
+00100000010000000010110001111111
+00100000010000000100100011010011
+00100000001000000011000001010111
+00100000010000000011001010001111
+11000001100000000000000000000000
+00100000010000000010111101010001
+00100000001000000011000010011000
+00100000010000000011001010001111
+11000001100000001000000000000000
+00100000010000000010111111000001
+00100000010000000010111111001011
+00100000010000000011001010001011
+00100000011110100000000000000000
+00100000010000000011001010000110
+00100000010000000010111101001100
+00100000010000000011000010010011
+01011000000000000000000000000000
+00011010011000001000101010100111
+00100000001000000011001000101101
+00100000010000000111111111101001
+00011010011000001010001010100111
+11101010001010100000000000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100010000010010110100011000
+00011111111000100010010000000000
+00011010011000001010001010100111
+11101010001000100000000000000000
+00011010011000001010001010101011
+11101010001010001000000000000000
+10011000010000001000010000000000
+00011010010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01111001001111111111111000011100
+00011010011000001000101010100111
+11100000101000100000000000000000
+00100000001000000111111111100111
+01011000000000000000000000000001
+00100000010000000011001010000111
+00100000010000000011001010000011
+01011000000000000000000011111111
+00011010011000001000101010101011
+11100000101000001000000000000000
+00100000001000000011000001100111
+01011000000000000000000101011100
+00100000010000000011001011010000
+00100000011110100000000000000000
+00100000010000000011000001101010
+00100100011101000000000000000000
+00100000010000000011001010000001
+00011111111000001111111000000001
+00011111111000010111111000000001
+00100000010000000011001010000100
+11000000000000000010111101001100
+11000000000000001011000010010000
+00100000011000000000000000000000
+01011000000000000000000000000001
+00100000010000000011001010010010
+00100000001000000011001010010110
+01011000000000000000000000000001
+00100000010000000011001010100101
+01011000000000000000001010000000
+11011000111000000000000000001000
+00100000001000000111111100001000
+00100000010000000011001010100010
+00100000011110100000000000000000
+11011000111000000000000000001000
+00100000010000000111111100010110
+00100100011110100000000000000000
+00100000010000000011001010100100
+01011000000000000000000000000111
+00100000010000000011001010010010
+00100000010000000011001010010110
+00100000001000000010111101011110
+01000100111000000100000000011000
+00100000010000000011001010001111
+11000001100000111000000000000000
+00100000010000000011000011001011
+00100000010000000011000011100000
+00100000010000000011000101101110
+00100100001101111010111101011110
+00100000010000000011000010111100
+00100000010000101011000101110010
+00100000010000000010111101001100
+00100000010000000011001010010100
+01111001001000000111111000000000
+00100000010000000011001010010111
+00100000010000000010111101011110
+00100000010000000011000010010011
+00100000010000000011000010111100
+00100000001000101011000011000001
+01011000000000000000000101100100
+00100000010000000011001011010011
+00100000010000000011000010111110
+00100000001000101011000011000101
+01011000000000000000000101100000
+00100000010000000011001011010011
+00100000010000000011000010111110
+00100000001000101011000011001000
+00100000011000000000000000000000
+01011000000000000000000100101011
+00100000010000000011001011010011
+00100000010000000011001000101010
+10011000010001100111110000000000
+00100000011000000000000000000000
+01011000000000000000000110000010
+00100000010000000011001011010000
+00011010011000001000101010010001
+00100000001000000011001010110100
+01011000000000000000000110000101
+00100000010000000011001011010000
+00100000001000000011000011000011
+01011000000000000000000110001000
+00100000010000000011001011010000
+00100000001000000011000011000011
+00100000010000000011001010010100
+11000011100000111000000000000000
+01111001001000000111111000000111
+00100000010000000011001010010111
+00100000010000000011001010000011
+00100000010000000011001010011100
+01011000000000000000000000000000
+00011010011000001000101011110101
+11100000101000011000000000000000
+11011010001000000000000110000011
+00100000010000000011001010111111
+11100000101000111000000000000000
+00100000010000000011000010111100
+00100100011000101000000000000000
+00011010011000001010001010010001
+11101010001000001000000000000000
+11011010001000000000000110000010
+00100000010000000011001010110011
+00011010011000001010001010010000
+11101010001000001000000000000000
+00100000001000000011000101001010
+01000100111000001100000000011000
+00100000010000000011001010000001
+00011111111000001111111000000001
+00011111111000010111111000000011
+00100000010000000011001010000100
+11000000000000000011000100001110
+11000000000000001011000100110010
+11000000000000010011000011101010
+11000000000000011011000100110010
+00100000011000000000000000000000
+00100000010000000010111111011111
+01011000000000000000000101100000
+00100000010000000011001001111110
+00100000001110100011000011100000
+00100000010000000011001000101100
+01011000000000000000000110001001
+00100000010000000011001011010000
+00100000010110100011000100001000
+01011000000000000000000110000111
+00100000010000000011001011010000
+00100000010000000011001000101111
+00011010011000001010001011110111
+11101010001010001000000000000000
+11011010001000000000111110011110
+00100000010000000010111001011000
+00011010011000001000101011110111
+11100000101010001000000000000000
+00100000010000000010111110010100
+00011010011000001000101011111010
+11100000101010001000000000000000
+00011000010001100111110001010000
+00100100011000010000000000000000
+01011000000000000000000110001000
+00100000010000000011001001110101
+00100000010000000010110010010000
+11011010001000000000000110001000
+00100000010000000011001011001000
+11100000101010001000000000000000
+11011010001000000000000110000111
+00100000001000000011001010110011
+01011000000000000000000000000001
+11011010001000000000000110001001
+00100000010000000011001010110011
+11011000010000000000000000000000
+00100000010000000010110010010100
+00100000001000000011000100000110
+00100000010000000010111111101010
+01011000000000000000000101100100
+00100000010000000011001001111110
+00100000001110100011000011100000
+00100000010000000011001000101100
+01011000000000000000000110000110
+00100000010000000011001011010000
+00100000010110100011000100101100
+01011000000000000000000110000100
+00100000010000000011001011010000
+00100000010000000011001000101111
+00011010011000001010001011110110
+11101010001010001000000000000000
+11011010001000000001000010011110
+00100000010000000010111001011000
+00011010011000001000101011110110
+11100000101010001000000000000000
+00100000010000000010111110010100
+00011010011000001000101011111001
+11100000101010001000000000000000
+00011000010001100111110001010000
+00100100011000010000000000000000
+01011000000000000000000110000101
+00100000010000000011001001110101
+00100000010000000010110010010000
+11011010001000000000000110000101
+00100000010000000011001011001000
+11100000101010001000000000000000
+11011010001000000000000110000100
+00100000001000000011001010110011
+01011000000000000000000000000001
+11011010001000000000000110000110
+00100000010000000011001010110011
+11011000010000000000000000000000
+00100000010000000010110010010100
+00100000001000000011000100101010
+00100000010000000010111111011111
+00100000010000000011001001111101
+00100000010000000011001000101100
+01011000000000000000000110000011
+00100000010000000011001011010000
+00100000010110100011000101001100
+00100000010000000011000101001111
+00011010011000001010001011110101
+11101010001010001000000000000000
+11011010001000000000111010011110
+00100000010000000010111001011000
+00011010011000001000101011110101
+11100000101010001000000000000000
+00100000010000000010111110010100
+00011010011000001000101011111000
+11100000101010001000000000000000
+00011000010001100111110001010000
+00100100011000010000000000000000
+01011000000000000000000110000010
+00100000010000000011001001110101
+00100000010000000010110010010000
+11011010001000000000000110000010
+00100000010000000011001011001000
+11100000101010001000000000000000
+11011010001000000000000110000001
+00100000001000000011001010110011
+01011000000000000000000000000001
+11011010001000000000000110000011
+00100000010000000011001010110011
+01011000000000000000000110000001
+00100000010000000011001011010000
+00100000001000000011001000101111
+00011010011000001010001000000000
+11101010001000001000000000000000
+00100000010000000011001000111100
+00100000010000000010110111011110
+00100000010000000011001001011111
+00101111111011111111111000000000
+00100000001000001011000101011100
+00100000010000000011000101011101
+00100000010000000010110101010011
+00100000010000000010110111110111
+00100000001000000010111001000101
+01000100111000010100000000011000
+00011010011000001000101010000110
+00100000010000000011001011010110
+01011000000000000000000100111011
+00100000010000000011001011010000
+00100000011110100000000000000000
+01011000000000000000000000000110
+00011010011000001000101010000110
+11100000101000001000000000000000
+11011111001000000000000000000110
+01011000000000000000000100101111
+10011010011000001000110000000000
+00011010011000001000101000100010
+00100000001000000111111100000001
+00100000010000000011000101101110
+00100100001101111010111101011110
+00100000001000000011000101110010
+00100000010000000010111101011110
+00100000010000000010111000010001
+00100100011101111000000000000000
+00100000001000000011000101010010
+01000100111000011100000000011000
+00100000010000000011000110001000
+00100100001101000010111101011110
+00011010011000001010001010000100
+11101010001000001000000000000000
+00100000001110100010111101011110
+00011111111000001111111000000010
+10011000000000000111001000000000
+00011010011000001000110000000000
+01011000000000000000000100001001
+10011010011000001000101000000000
+00100000010000000111111100000001
+00100000010000000011001010000110
+00100000010000000011001010110110
+00100000010110100011000010010011
+01011000000000000000000100001011
+00100000010000000011001011010000
+11000000000000001011000110011110
+11000000000000010011000111000110
+11000000000000011011000111110010
+11000000011111111011001000010010
+00100000001000000010111101011110
+00100000010000000010110001111010
+00100000010000000111111111101001
+00011010011000001010001011001010
+11101010001000001000000000000000
+00011010011000001010001011001011
+11101010001010001000000000000000
+10011000010001100111110000000000
+00100100010000101111111111100111
+00011010011000001010001011001010
+11101010001000001000000000000000
+00011010011000001000101011001011
+11100000101000001000000000000000
+00011010011000001010001011000100
+11101010001000011000000000000000
+00011010011000001010001011000111
+11101010001010011000000000000000
+10011000010001100111110000000000
+00100100010000101111111111100111
+00011010011000001010001011000100
+11101010001000011000000000000000
+00011010011000001000101011000111
+00100000001000000011001011000101
+00100000010000000010111110001000
+00100000010000000011001001001100
+01100000000000001000101010100010
+00100000010000000011001001110100
+01101000000000001000101010100010
+00101000010011111111111000000011
+01111001001000001111111000000000
+00011010011000001000101010110010
+11100000101000001000000000000000
+11000000000000001011001000010110
+00100000010000000011001001000101
+00100000010000000011001001110100
+00101000010011111111111000000100
+01111001001000001111111000000000
+00100000010000000011001001001001
+00011010011000001010001011011110
+11101010001000010000000000000000
+00100000001000000111111110011100
+01011000000000000000000000000001
+01100000000000001000110101010100
+00100000010000000011001010011110
+11100000101000111000000000000000
+00100000010000000011001010011110
+00100100010110100011000110111101
+00100000010000000011001010011110
+00100000010110100011000111000010
+01110000000011010101001000100000
+01101000000000001000110100111000
+01111001001000000111111000000010
+01100000000000001000110100111000
+00100000011000000000000000000000
+01011000000000000000000000000001
+00100000010000000011001010101000
+01011000000000000000000101000000
+11011000111000000000000000001011
+00100000001000000111111100001000
+00100000010000000011001010100111
+01011000000000000000000000000000
+11011000111000000000000000001011
+00100000001000000111111100001000
+00100000010000000011001001110100
+00101000010011111111111000000011
+00100000001000001011001000011011
+11011000101000000000110101100100
+00100000010000000011000111100000
+01101000000001000000110101100100
+00100100010110100011000111100100
+01101000000001000000110101100100
+00100000010110100011000111101001
+00100000010000000010110001111010
+01101000000001000000110101100100
+11011010001000000000000101101000
+00100000010000000011001010111111
+11100000101001000000000000000000
+01011000000000000000000101110000
+10011010011000001010001000000000
+11101010001011000000000000000000
+10011000010001100111110000000000
+00100100010000101011000111101101
+01011000000000000000000101101000
+10011010011000001010001000000000
+11101010001001000000000000000000
+11011010001000000000000101110000
+00100000010000000011001010111111
+11100000101001000000000000000000
+00100000001000000010111101011110
+01011000000000000000000100001011
+10011010011000001000110000000000
+11011111001000000000000000001001
+00100000001000000111111111110011
+01011000000000000000000000000001
+00100000010000000011001010101011
+01011000000000000000000101000000
+11011000111000000000000000001110
+00100000001000000111111100001000
+00100000010000000011001010101010
+01011000000000000000000000000000
+11011000111000000000000000001110
+00100000001000000111111100001000
+01110000000011010101000100010000
+01101000000000001000110100111000
+01111001001000000111111000000001
+01100000000000001000110100111000
+00100000011000000000000000000000
+11011000101000000000110101110100
+00100000010000000011000111100000
+01101000000000010000110101110101
+00100100010110100011001000001001
+01101000000000010000110101110101
+00100000010110100011001000001110
+00100000010000000010110001111010
+01101000000000011000110101110100
+11011010001000000000000101111000
+00100000010000000011001011000100
+01011000000000000000000101111011
+10011010011000001010001000000000
+11101010001010011000000000000000
+10011000010001100111110000000000
+00100100010000101011001000000111
+01011000000000000000000101111000
+10011010011000001010001000000000
+11101010001000011000000000000000
+11011010001000000000000101111011
+00100000010000000011001011000100
+00100000001000000010111101011110
+01110000000011010101001000100001
+00100000001000000011000110111001
+01011000000000000000000000000001
+00100000010000000011001010101110
+01011000000000000000000101000000
+11011000111000000000000000001100
+00100000001000000111111100001000
+00100000010000000011001010101101
+01011000000000000000000000000000
+11011000111000000000000000001100
+00100000001000000111111100001000
+00100000010000000011001010111101
+11000000000000001011001000010110
+11000000000000010011001000011011
+00100000011000000000000000000000
+01011000000000000000000100001101
+00100000010000000011001001111110
+11011010001000000000000101100000
+00100000010000000011001010111111
+00100000001000000011001000101101
+01011000000000000000000100001101
+00100000010000000011001001111110
+11011010001000000000000101100100
+00100000010000000011001010111111
+00100000001000000011001000101101
+00100000010000000010110001111010
+00011010011000001000101011001101
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000010000000010110001111010
+00011010011000001010001010111110
+00100000001000000011001001111111
+00100000010000000010110001111010
+00011010011000001000101010111110
+00100000001000000011001000101101
+00011010011000001010001010101110
+00100000001000000011001001111111
+00011010011000001000101010101110
+11100000101000100000000000000000
+00100000011000000000000000000000
+00011010011000001000101010010000
+00100000001000000011001010110100
+01011000000000000000000000000000
+00100000010000000010110001111010
+00011010011000001000101010000101
+00100000001000000011001010110100
+00011010011000001000101001000010
+00100000001000000011001010110100
+01011000000000000000000000000100
+00011010011000001000101011001100
+00100000001000000011001010110100
+00011010011000001010001010000111
+00100000001000000011001011010001
+00011010011000001000101010000111
+00100000001000000011001010110100
+01011000000000000000000000000010
+00011010011000001000101011010000
+00100000001000000011001010110100
+01011000000000000000000000000001
+00100000010000000010110001111010
+00011010011000001000101011001110
+00100000001000000011001010110100
+00100000010000000010110001111010
+00011010011000001010001010110100
+00100000001000000011001011010001
+01011000000000000000000000000001
+00100000010000000010110001111010
+00011010011000001000101010110100
+00100000001000000011001010110100
+00100000010000000010110001111010
+00011010011000001010001010110010
+00100000001000000011001011010001
+01011000000000000000000000000001
+00100000010000000010110001111010
+00011010011000001000101010110010
+00100000001000000011001010110100
+00100000010000000010110001111010
+00011010011000001010001010010110
+00100000001000000011001011010001
+00011010011000001000101010010110
+00100000001000000011001010110100
+00011010011000001010001011001111
+00100000001000000011001011010001
+01011000000000000000000000000000
+00011010011000001000101011001111
+00100000001000000011001010110100
+00011010011000001010001011010010
+00100000001000000011001011010001
+00011010011000001010001000000001
+00100000001000000011001011010001
+00011010011000001010001010110101
+00100000001000000011001011010001
+01011000000000000000000000000000
+00100000010000000010110001111010
+00011010011000001000101010110101
+00100000001000000011001010110100
+00100000010000000010110001111010
+00011010011000001010001011111011
+11101010001000001000000000000000
+01100000000000001100000111011110
+00100000011000000000000000000000
+00100000010000000010110001111010
+01101000000000001100000111011110
+00011010011000001000101011111011
+00100000001000000011001010110100
+00011010011000001010001011111100
+00100000001000000011001011010001
+00011010011000001000101011111110
+00100000001000000011001010110100
+01011000000000000000000100001001
+10011010011000001010001000000000
+11101010001010001000000000000000
+00100000011000000000000000000000
+01011000000000000000000100110101
+00100000001000000011001011010000
+01011000000000000000000000000000
+11011010001000000000000100110101
+00100000001000000011001010110011
+01011000000000000000000100101011
+00100000010000000011001011001101
+11101010001000100000000000000000
+00100000011000000000000000000000
+01011000000000000000000101011111
+00100000001000000011001011010000
+01011000000000000000000000000000
+11011010001000000000000101011111
+00100000001000000011001010110011
+01011000000000000000000000000000
+11011010001000000000000101011100
+00100000001000000011001010110011
+11011010001000000000000100101111
+00100000001000000011001010110011
+01011000000000000000000100001000
+00100000001000000011001011010000
+11011010001000000000000100001000
+00100000001000000011001010110011
+01011000000000000000000100000101
+00100000001000000011001011010000
+01011000000000000000000000000000
+11011010001000000000000100000101
+00100000001000000011001010110011
+01011000000000000000000100000100
+00100000001000000011001011010000
+01011000000000000000000000000000
+11011010001000000000000100000100
+00100000001000000011001010110011
+01011000000000000000000000000000
+11011010001000000000000100111011
+00100000001000000011001010110011
+01011000000000000000000000000001
+00100000001000000011001010011010
+01011000000000000000000100001100
+00100000010000000011001011001101
+11101010001000111000000000000000
+00100000011000000000000000000000
+01011000000000000000000101011110
+00100000001000000011001011010000
+01011000000000000000000000000000
+11011010001000000000000101011110
+00100000001000000011001010110011
+01011000000000000000000000000000
+11011010001000000000000110000000
+00100000001000000011001010110011
+01011000000000000000000000000000
+11011010001000000000000101111110
+00100000001000000011001010110011
+01011000000000000000000000000000
+11011010001000000000000101111111
+00100000001000000011001010110011
+11011010001000000000000100000010
+00100000001000000011001010110011
+11011010001000000000000100000011
+00100000010000000011001011000111
+11100000101000001000000000000000
+00100000011000000000000000000000
+01011000000000000000000101011101
+00100000001000000011001011010000
+11011010001000000000000101011101
+00100000001000000011001010110011
+01011000000000000000000110001010
+00100000010000000011001011010000
+00100000001000000011001001101010
+01011000000000000000000100001100
+00100000001000000011001011010000
+00011111111000100000010000000000
+00011010001000100111111000000000
+10011010011000001000101000000000
+00011000010000100111111000000000
+00100000011000000000000000000000
+00100000010000000011001010111111
+11100000101000011000000000000000
+00100000011000000000000000000000
+00100000010000000010110001111010
+00011111111000100010010000000000
+00011010001000100111111000000000
+10011010011000001000101000000000
+00011010010000100111111000000000
+00100000011000000000000000000000
+00100000010000000010110001111010
+10011010011000001010001000000000
+00100000011000000000000000000000
+00100000010000000011001011001101
+11101010001000001000000000000000
+00100000011000000000000000000000
+00100000010000000011001011001101
+11101010001010100000000000000000
+00100000011000000000000000000000
+01011000000000000000000000000000
+00100000001000000011001010110100
+01000100111000100100000000011000
+01101000000000001100000010010010
+00100000001110100011001011011000
+11000000000000100010111100110000
+11000000000001111011010000110110
+11000000000001001100010111011110
+11000000000001010011100100101010
+11000000000001110011010110111111
+11000000000010000100010010100100
+11000010100000110011110100000000
+00100000011000000000000000000000
+01000100111000101100000000011000
+01110000000000010101000100000000
+01110000000000010111111100000000
+01110000000000011000000000000000
+01011000000000000000000000000000
+01100000000000101000100110101110
+01101000000000001100000010010010
+00100000001110100011001011100011
+11000000000001010011100101100010
+00100000011000000000000000000000
+00100000010000000111110011010001
+00100000010000000111110110011100
+00100000010000000011001011110110
+01101000000000010100000111110011
+00100000001000000111111110011100
+01101000000000010100000111110001
+00100000001000000111111110011100
+01101000000000010100000111101111
+00100000001000000111111110011100
+01000100111000110100000000011000
+11011010001000000100011001101000
+00100000010000000111111111000100
+00100000011110100000000000000000
+00011111111000100010011000000000
+00100000010000000011001011111111
+00100000001000000011001100100100
+11011010011000000000000000000000
+00100000011000000000000000000000
+11000000000000001011001100010001
+11000000000010000011001101010111
+11000000000000101011001100110101
+11000000000010010011001100111100
+11000000000000110011001101010011
+11000000000000100011001110010100
+11000000000000010011001110011001
+11000000000010011011001110010100
+11000000000010100011001101001011
+11000000000010101011001101001111
+11000000000000011011001100101110
+11000000000001011011001101000000
+11000000000001100011001101000111
+11000000000010110011001101011011
+11000000000011000011001100101010
+11000000000101010011001100011010
+11000000000101011011001100011000
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001000000111111000000000
+01100000000000010100011010000010
+01101000000000010100001000001010
+01111001001111111111111000000000
+01100000000000010100001000001010
+00100000011000000000000000000000
+01110000000000100010100100000000
+00100000011000000000000000000000
+01101000000000001000001000101001
+00011111111000001111111000000001
+01100000000000001000001000101001
+00011111111001100111110000000001
+00100000001000010011001111011111
+01110000000000100010100100000000
+01101000000000010100001000001010
+01111001001000000111111000001001
+01100000000000010100001000001010
+00100000001000000011001111101001
+01101000000000010100000111110101
+00100000001000000111111110011100
+01101000000000010100000111101001
+00100000001000000111111110011100
+01101000000000010100000111101101
+00100000001000000111111110011100
+01101000000000010100001000001010
+01111001001000000111111000000001
+01100000000000010100001000001010
+00100000001000000011010000010010
+01101000000000010100011010000010
+01111001001000000111111000000111
+01100000000000010100011010000010
+01101000000000010100001000001010
+01111001001000000111111000000010
+01100000000000010100001000001010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001000000111111000000001
+01100000000000010100011010000010
+01101000000000010100001000001010
+01111001001000000111111000000100
+01100000000000010100001000001010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001000000111111000000011
+01100000000000010100011010000010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001000000111111000000101
+01100000000000010100011010000010
+01101000000000010100001000001010
+01111001001000000111111000000011
+01100000000000010100001000001010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001111111111111000000101
+01100000000000010100011010000010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001000000111111000001001
+01100000000000010100011010000010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001111111111111000001001
+01100000000000010100011010000010
+00100000001000000011010000011000
+01101000000000010100011010000010
+01111001001000000111111000000010
+01100000000000010100011010000010
+00100000011000000000000000000000
+01101000000000010100001000001010
+01111001001000000111111000000000
+01100000000000010100001000001010
+00100000011000000000000000000000
+01101000000000010100001000001010
+01111001001000000111111000001000
+01100000000000010100001000001010
+00100000001000000011001111101001
+01000100111000111100000000011000
+01100000000000001000001000101010
+01101000000000001000001000101010
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001000001000101010
+00100000010000000111110011011101
+00100000010000000011001111010110
+00100000010000000011001110000111
+00100000010000000011001110001101
+00100000010000000110010100011011
+01101000000000010100000111111101
+00100000010000000111111110011100
+00100000001000000011001101100001
+11101010011000001000000000000000
+00100000011110100000000000000000
+00011111111000001111111111111111
+11100010011000001000000000000000
+00100100011110100000000000000000
+00011010010000100111111000000000
+00100000001000000111111110011100
+11101010011000010000000000000000
+00100000011110100000000000000000
+00011111111000001111111111111111
+11100010011000010000000000000000
+00100100011110100000000000000000
+00011010010000100111111000000000
+00100000001000000111111110011100
+01101000000010010100001000111111
+00011000010000001010011000000001
+11011010010000000011001101111111
+00100000001000000011001101101101
+00100000010000000011010000101101
+11000000000000001011001110000010
+00100000001000000011010000001010
+01011000000000000000000000000010
+11100010011000001000000000000000
+00011000010000001010010000001000
+11101010010000010000000000000000
+00100000001000000111111110011100
+11011010011000000100001000000101
+11011010010000000011001110001010
+00100000001000000011001101101101
+00100000010000000010001001010010
+00100000001000101011010000001110
+00100000011000000000000000000000
+11011010011000000100011001111110
+11011010010000000011001110010000
+00100000001000000011001101110100
+00100000010000000011001111110000
+00100000010000000011010000001000
+01101000000000010100000111110111
+00100000001000000111111110011100
+00100000010000000011001110101100
+01101000000000010100011010000010
+01111001001111111111111000000111
+01100000000000010100011010000010
+00100000011000000000000000000000
+01110000010000100000010100000000
+01101000000000010100011010000010
+11000010100000111011001110011110
+00101111111011000000000000000001
+00100000010000001011001011111101
+01000100111001000100000000011001
+01101000000000010100011010000010
+01111001001111111111111000000000
+01111001001111111111111000000001
+01111001001111111111111000000010
+01111001001111111111111000000011
+01111001001111111111111000000111
+01100000000000010100011010000010
+00100000001000000011010000011000
+00100000010000000011001110101001
+00100000001000000011010000001010
+01011000000000000000000000000000
+01100000000000010100001000001000
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000010100001000001010
+00100000011000000000000000000000
+01101000000000010100001000001010
+01100000000000010100001000001000
+01011000000000000000000000000000
+01100000000000010100001000001010
+00100000011000000000000000000000
+01101000000000010100001000001010
+01111001001000000111111000000111
+01100000000000010100001000001000
+01011000000000000000000000000000
+01100000000000010100001000001010
+00100000011000000000000000000000
+01101000000000001100011010000010
+00101111111011111111111000000101
+00100000011000000000000000000000
+01011000000000001010101001010101
+01100000000000010000101010101010
+01000100111001001100000000011001
+11011000010000000000000000000010
+11011010001000000000101010101010
+11011010010000000000000011000011
+00100000001000000110011000000110
+01000100111001010100000000011001
+11011000010000000000000000000010
+11011010001000000000101010011010
+11011010010000000000000011000011
+00100000010000000110010111011111
+01101000000000010000101010011010
+11011000010000001010101001010101
+10011000010001100111110000000000
+00100000011000000000000000000000
+01101000000000001100010101011010
+01100000000000001100001000000101
+00100000011000000000000000000000
+11011000111000000000000000001001
+00100000001000000010110000110010
+11011000111000000000000000001001
+00100000001000000010110000110110
+01110000010000100000011000000101
+00100000001000000011001111010000
+11011010011000000100001000000110
+11011010010000000011001111010010
+00100000001000000011001101101101
+01110000010000110110001100000001
+00100000011000000000000000000000
+01110000010000110110001100000000
+00100000011000000000000000000000
+01110000000010101001100100001010
+00100000001000000111110110001111
+01110000000010101001100100011101
+00100000001000000111110110001111
+01000100111001011100000000011001
+01101000000000001100001000000111
+01100000000000001000000101101101
+01110000000000100010100000000001
+01110000000010101001100100000011
+00100000001000000111110110001111
+01110000000010101001100100011110
+00100000001000000111110110001111
+01110000000010101001100100000100
+00100000001000000111110110001111
+01101000000000010100011010000111
+01100000000000010100011001111110
+00100000010000000011010000000100
+01110000000010101001100100000001
+00100000001000000111110110001111
+01011000000000000000000000000000
+01100000000000010100011001111110
+01110000000010101001100100000010
+00100000001000000111110110001111
+01110000000010101001100100001111
+00100000001000000111110110001111
+01110000000010101001100100010000
+00100000001000000111110110001111
+01110000000010101001100100001110
+00100000001000000111110110001111
+01110000000010101001100100001101
+00100000001000000111110110001111
+01110000000010101001100100010111
+00100000001000000111110110001111
+01110000000010101001100100011000
+00100000001000000111110110001111
+01110000000010101001100100010110
+00100000001000000111110110001111
+01110000000010101001100100010001
+00100000001000000111110110001111
+01110000000010101001100100010101
+00100000001000000111110110001111
+01110000000010101001100100010100
+00100000001000000111110110001111
+01110000000010101001100100010011
+00100000001000000111110110001111
+01110000000010101001100100011001
+00100000001000000111110110001111
+01110000000010101001100100000110
+00100000001000000111110110001111
+01110000000010101001100100000101
+00100000001000000111110110001111
+01110000000010101001100100011111
+00100000001000000111110110001111
+01110000000010101001100100100000
+00100000001000000111110110001111
+01110000000010101001100100100101
+00100000001000000111110110001111
+01111001001000000000000000001101
+00100000011000000000000000000000
+01111001001111111000000000001101
+00100000011000000000000000000000
+00100000010000000011010000101101
+11000000000000010011010000100100
+01011000000000000000000000000001
+11100010011000001000000000000000
+00011000010000001010001000000011
+00011000010000001010010000000110
+11101010001010001000000000000000
+00011010011000001010011000000001
+11100010011010001000000000000000
+00100000001000000011001110000101
+01011000000000000000000000000000
+11100010011000001000000000000000
+01101000000000010100011010000010
+11000011000001001011010000101001
+00100000010000000011010000000010
+01101000000010010100001000111111
+00011000010000001010001000000010
+00011000010000001010010000000100
+00100000001000000011010000100000
+01101000000010010100001000111111
+00011000010000001010011000000000
+11101010011000001000000000000000
+00100000011000000000000000000000
+00100000010000000011010000101101
+11000000100000000011010000110100
+00100000001000000011010000001010
+00011000010000001010010000001010
+00100000001000000011001110000101
+00100000011101011000000000000000
+01110000100000001000000100000000
+01011000000000000011010001100011
+01100000000000010100000111101011
+01011000000000000110100101101100
+01100000000000010100000111101101
+01011000000000000011010011110101
+01100000000000010100000111110011
+01011000000000000011010011110100
+01100000000000010100000111101111
+01011000000000000011010001111110
+01100000000000010100000111110101
+01011000000000000011010010110010
+01100000000000010100000111111101
+01011000000000000011010001100101
+01100000000000010100000111111011
+01011000000000000011010001110000
+01100000000000010100000111101001
+01011000000000000011010100000001
+01100000000000010100000111111001
+01000100111001100100000000011001
+00100000010000000011010110011011
+00100000010000000110100101001000
+00100000010000000011010110101101
+00100000010000000111110100001000
+00100000010000000111110011010011
+01011000000000000011010100001011
+01100000000000010100011101100110
+01011000000000000011010011111100
+01100000000000010100011101011101
+01011000000000000011010011111000
+01100000000000010100011101011111
+01011000000000000011010001101100
+01100000000000010100011101100001
+01011000000000000011010110100010
+01100000000000010100011010101001
+01011000000000000011010110100100
+01100000000000010100011010101011
+01011000000000000011010110101001
+01100000000000010100011010110100
+01011000000000000011010110100110
+01100000000000010100011010110110
+01101000000000010100011010000010
+11000011100001100000000000000000
+00100000001000000011010000001010
+00100000010000000011010110000110
+00100000001000000011010000001010
+00100000010000000101100010010010
+00100100011110100000000000000000
+11011010001000000000101100000110
+00100000010000000111111001010100
+00100100011101000000000000000000
+11011000110000000000101100000110
+00100000001000000100011101000110
+01101000000000010100011110010111
+01100000000000010100011110010001
+01110000010001110101001100000001
+00100000001000000011010110001111
+01101000000000001100011110011101
+11000000000000001011010001111001
+01101000000000010100011010000010
+11000011000001001011010001111001
+01101000000000001100011110011110
+11000000000000001011001111010000
+01101000000000001100011100000000
+00100100001110100011001111010000
+00100000001000000011001111010010
+01101000000000001100011110011011
+01101000000010001100011110011100
+10011000010000011111111000000000
+11000000000000001011001111010000
+00100000001000000011001111010010
+00011010011000100111111000000000
+11000000000101101011010000110001
+11000000000010000011010000011010
+11000000000010100011010011011111
+11000000000010101011010011101000
+11000000001000000011010010000101
+00100000011000000000000000000000
+01101000000000010100010100001001
+11000000000000001011010010001100
+01101000000000010100001111011000
+00100000001110100011010010100010
+01110000010001111000101000000010
+01110000010001111000111100111100
+00100000011000000000000000000000
+01101000000000010100010010011010
+00100000001110100011010010100000
+01110000010001111000101000000001
+01101000000010010100011110110100
+01101000000000010100010010010110
+10011000010000001111111000000000
+01100000000000010100010010010110
+00011111111000100010001000000000
+01101000000000010100010010011000
+10011000010000001111111000000000
+01100000000000010100010010011000
+10011010001000001111111000000000
+00011111111000110000010000000000
+01101000000000010100011111000000
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+01100000000000010100010010011010
+01110000010001111001000000000001
+00100000011000000000000000000000
+01110000010001111000101000000011
+00100000011000000000000000000000
+01110000010000010111001000000000
+01110000010001111001000000000000
+01101000000000010100001111010110
+01101000000010010100011110111110
+10011000010001100111110000000000
+01111001001000010010001000000000
+01101000000000010100011111000000
+01101000000010010100001111010110
+10011000010001100111111000000000
+01111001001000010010001000000001
+00101010001000000000011000000011
+00100000011000001000000000000000
+01101000000001000100011110111110
+01100000000001000100010010010110
+01110000010001111001000000000001
+00100000011000000000000000000000
+00100000010000000011001101111011
+00100000010000000011010010111001
+00100000010000000011010010111110
+00100000010000000011010011010101
+00100000010000000011010011001010
+00100000010000000011010011000100
+00100000001000000011010011011001
+11011010011000000100011110011001
+11011010010000000011010010111100
+00100000001000000011001101101101
+01110000010001111001101000000000
+00100000011000000000000000000000
+11011010011000000100011110010011
+11011010010000000011010011000001
+00100000001000000011001101110100
+11011010011000000100011010111111
+11011010010000000100011010011110
+00100000001000000011010110010001
+11011010011000000100011110001111
+11011010010000000011010011000111
+00100000001000000011001101101101
+01101000000000010100010010011010
+01100000000000001100000101110010
+00100000011000000000000000000000
+11011010011000000100011110010000
+11011010010000000011010011001101
+00100000001000000011001101101101
+01101000000000001000010000111111
+00101111111000001100000000000000
+00100100001000001011010011010011
+01110000010001111000101000000001
+00100000010000000011010000010110
+00100000001000000101101010111111
+01110000010001111001000000000001
+00100000011000000000000000000000
+11011010011000000100011110010001
+11011010010000000011010011011000
+00100000001000000011001101110100
+00100000001000000011010000011010
+11011010011000000100011110001101
+11011010010000000011010011011100
+00100000001000000011001101110100
+01101000000000010100011110100111
+01100000000000010100011110001101
+00100000001000000011010110101111
+01101000000000010100011110100111
+01100000000000010100011110001101
+01011000000000000000000000000000
+01100000000000010100011110010011
+01100000000000010100011110010001
+00100000010000000011010101011100
+00100000010000000011010110000110
+01110000010000010111001000000000
+00100000001000000011001111111000
+01011000000000000000000000000000
+01100000000000100100011110001101
+01100000000000011100011110001010
+01100000000000010100010100001001
+01110000010001111010000000000001
+01101000000000010100011110010111
+01100000000000010100011110010001
+00100000010000000111111000111000
+01101000000000001100011101011001
+11000001000000000000000000000000
+00100000010000000011010110001111
+00100000001000000011010101101110
+00100000001000000011010100001000
+01101000000000001100011101011001
+11000001100000010000000000000000
+00100000001000000011010100001000
+11011010011000000100011011001101
+00100000010000000011010110000010
+11011010011000000100011011000110
+00100000001000000011010110000100
+01110000010000110110111000000000
+11011010011000000100011011011011
+00100000010000000011010110000010
+11011010011000000100011011010100
+00100000001000000011010011111011
+01101000000000001000010001110111
+11000000000010010011010100000100
+00100000011000000000000000000000
+01101000000000010000010001111000
+11000000000001101011010100110110
+11000000000001011011010101110001
+00100000011000000000000000000000
+01101000000000001100011101010011
+00100000011110100000000000000000
+00100000001000000110100101111000
+00011010001000100111111000000000
+00100000001110100011010100010000
+00011000111000100111111000000000
+11000000000000000011010100010011
+00100000011000000000000000000000
+00011000111000100111111000000000
+11000000000000000011010100011011
+00100000011000000000000000000000
+01110000010001111001110100000001
+11011010011000000100011011110111
+00100000010000000011010110000010
+11011010011000000100011011110000
+00100000010000000011010110000100
+01101000000000010100011010000010
+11000011000001001011010100110010
+00100000001000000011010100100001
+01110000010001111001110100000000
+00100000001000000011010100011101
+01101000000000001100011110011010
+11000001100000001000000000000000
+01110000010001111001100100000101
+00100000011000000000000000000000
+01101000000000001100011110011010
+00011111111000001111111000000001
+01100000000000001100011110011010
+11000000000000001011010100100111
+11000000000000010011010100101011
+00100000011000000000000000000000
+00100000010000000011010101011100
+01110000010001110111000100000001
+11011010011000000100011101101100
+00100000001000000011010101000100
+01110000010001111001101000000000
+01110000010001110111000100000010
+11011010011000000100011101101100
+00100000010000000011010101000100
+01101000000000001100011110011110
+11000000000000001011010101010001
+00100000011000000000000000000000
+01101000000000010100011110010111
+01100000000000010100011110010001
+00100000010000000011010101011100
+00100000001000000011010110001111
+01000100111001101100000000011001
+00100000010000000011011011111100
+11101010001000001000000000000000
+11000000000000011011010100111100
+11000000000000111011010101000000
+00100000011000000000000000000000
+01101000000000001100011110011110
+11000000000000000011010101010001
+11000000000000001011010101011100
+00100000011000000000000000000000
+11101010010000001000000000000000
+11000000000000001011010101100100
+11000000000000000011010101101001
+00100000011000000000000000000000
+01000100111001110100000000011001
+01101000000000001100011110001011
+00101111111011111111111000000000
+00100100011000001000000000000000
+00011010011000001000110000000110
+11101000110000010000000000000000
+00011111111100001111111000000000
+00011111111000001111001000000101
+00011010011000001000110000000011
+00100000010000000011011011110000
+11100000110000001000000000000000
+00011010011000100010001000000000
+00100000001000000111111000111101
+01101000000000001100011101011001
+00100000011110100000000000000000
+01110000010001111001111000000001
+11011010011000000100011011101001
+00100000010000000011010110000010
+11011010011000000100011011100010
+00100000010000000011010110000100
+01110000010001111000000000000100
+01110000010001111000001100000001
+11011010011000000100011101111011
+00100000001000000011010101000100
+01101000000000001100011110011110
+00100000011110100000000000000000
+01110000010001111001111000000000
+00100000010000000011010110000110
+01110000010001111000000000000100
+01110000010001111000001100000000
+11011010011000000100011101111011
+00100000001000000011010101000100
+01110000010001111001111100000001
+01110000010001111000000000000111
+01110000010001111000001100000001
+11011010011000000100011101111011
+00100000001000000011010101000100
+01110000010001111001111100000000
+01110000010001111000000000000111
+01110000010001111000001100000000
+11011010011000000100011101111011
+00100000001000000011010101000100
+01101000000000001100011110011111
+00100000011110100000000000000000
+00100000001000000011010101010001
+11101010001000010000000000000000
+01100000000000010100011110001011
+00101111111011111111111000000000
+00100100011000001000000000000000
+01101000000000001100011110100000
+00100000011110100000000000000000
+01110000010001111010000000000000
+01101000000001000100011110110110
+01100000000001000100010010010110
+01110000010001111001000000000010
+00100000010000000011010110101111
+00100000010000000011010110111001
+01110000010001111000000000000111
+01101000000000001100011110011111
+01100000000000001100011110000011
+11011010011000000100011101111011
+00100000001000000011010101000100
+11011010001000000000000000000001
+00100000001000000011010110000101
+11011010001000000000000000000000
+00100000001000000011010110001100
+11011010001000000000000000000000
+00100000010000000111110100011001
+11011010001000000000000000000001
+00100000010000000111110100011001
+01101000000000001100011110100001
+00100000001000000110100111010111
+00100000010000000111110100000100
+11011111001000000000000000000111
+00100000001000000111110100100110
+11011010011000000100011010111000
+11011010010000000100011010011010
+00100000010000000011010110010110
+00100000010000000011010110000100
+01101000000000010100011110010101
+01100000000000010100011110010011
+00100000001000000011001111111010
+11101010010000010000000000000000
+01100000000000010100000101010100
+11101000110000010000000000000000
+01100000000000010100010010000010
+00100000011000000000000000000000
+11011010001000000000000000000000
+00100000010000000110100110100110
+01101000000000110100011110100001
+01100000000000110000101010011010
+00100000010000000110100110101110
+01101000000000001100011110100001
+00100000001000000110100111010111
+01110000010001111001101100000001
+00100000011000000000000000000000
+01110000010001111001101100000000
+00100000011000000000000000000000
+01110000010001111001110000000000
+01101000000000001100011110100001
+00100000001000000110100111010111
+01110000010001111001110000000001
+01101000000000110100011110100001
+01100000000000110000101010011010
+00100000001000000110100110101110
+01110000010000100010110100000000
+00100000001000000110100010101000
+00100000010000000110100011101011
+00100000010000000110100100001000
+01100000000000010100011110110000
+11011010001000000100011110101010
+00100000010000000110100100110000
+01100000000000001100011110101001
+11000000000000000011010110111110
+00011111111001100111110001100100
+00100100001000010011010110111100
+01100000000000001100011110000011
+01110000010001111000000000000101
+11011010011000000100011101111011
+00100000001000000011010101000100
+01110000010001111000001101100100
+00100000001000000011010110111001
+00100000001000000011010000011010
+00100000011101011000000000000000
+01101000000100001000000010000001
+00011111111000010111111011110000
+01100000000100001000000010000001
+01011000000000000011011000110001
+01100000000000010100000111101011
+01011000000000000011011000110011
+01100000000000010100000111101101
+01011000000000000011010000001010
+01100000000000010100000111110111
+01011000000000000011011000110101
+01100000000000010100000111110011
+01011000000000000011011001001011
+01100000000000010100000111110101
+01011000000000000011001111010000
+01100000000000010100000111101001
+01011000000000000011011011110110
+01100000000000010100000111111001
+01011000000000000011011001111010
+01100000000000010100000111111101
+00100000010000000010110001111010
+01011000000000000011011100100010
+00011010011000001000101011011110
+11100000101000010000000000000000
+01011000000000000011010111101101
+01100000000000010100011101011011
+01011000000000000011010111101111
+01100000000000010100011101011111
+01000100111001111100000000011001
+00100000010000000011011000101000
+00100000010000000111111000111000
+01110000010000010111001000000010
+01110000010010011111011000000000
+01101000000000001100011111001011
+01100000000000001100011010011010
+11000000000000000011010111101110
+01101000000000001100011111001100
+01100000000000001100011010000110
+01110000010000110110111000000000
+00100000010000000011011000001111
+00100000010000000111110011010011
+00100000010000000111110011011101
+01110000010001111111001100000001
+01101000000000010100011010000010
+11000011100001100000000000000000
+00100000001000000011010000001010
+00100000001000000011011000001111
+01110000010001111111001100000010
+01110000010000110110111000000001
+00100000010000000011011000001111
+11011010001000000000000000000000
+00100000010000000111110100011110
+01011000000000000000000000100000
+00100000010000000100011011110000
+11011000101000000100001110110111
+01101000000000001100010010100000
+00011111111000010000010011110000
+00011000010100011000010000000000
+00100000010000000011011000001001
+11100000101010001000000000000000
+00011111111000010000010000001111
+00100000010000000011011000001001
+11100000101010001000000000000000
+00100000010000000101011110100110
+01101000000010001100001110101111
+00011000010000100111001000000000
+11011000101000000100001101110010
+11011000110000000100001110110000
+00100000010000000111111100000001
+01101000000010001100001110101111
+00011000010000100111001000000000
+11011000101000000100001110010010
+11011000110000000100001110110000
+00100000001000000111111100000001
+00011000010001100111110000001001
+00100000001000010011011000001101
+00011000010000001000010000110111
+00100000011000000000000000000000
+00011000010000001000010000110000
+00100000011000000000000000000000
+01101000000000001100011111000000
+11000000111111111011011000100001
+01101000000000001100011110111110
+11000000111111111011011000100100
+01101000000000001100011111001001
+11000000111111111011011000100110
+01101000000000001100011100101100
+00011111111000100111001000000000
+01011000000000000100011100101101
+00011111111000100010001000000000
+00011010001000100000110000000000
+11101000110000001000000000000000
+00011000110000100010001000000000
+11000000011111111011011000011111
+00011111111000100000010000000000
+00100000010000000110100000001110
+11000010000000000011011000011001
+00100000011000000000000000000000
+01101000000001000100011111000000
+01100000000001000100011100101111
+00100000001000000011011000010001
+01100000000000001100011100101101
+00100000001000000011011000010011
+01100000000000001100011100101110
+00100000001000000011011000010101
+11011010001000000000000000000000
+00100000010000000110100110100110
+00100000010000000011011111100100
+00100000010000000010110001111101
+00100000001000000011011000101101
+01110000010001111100111101100100
+01101000000000001100011111001001
+01100000000000001100011101000100
+00100000001000000110100010101000
+00100000010000000110100000110101
+00100000001000000110100101101100
+00100000001000000110100101101100
+00100000001000000110100101111000
+00100000010000000011011001000010
+00100000010000000011011111101110
+00100000010000000011011000111001
+00100000001000000011011000110100
+01101000000000010100011010000010
+11000011100001001000000000000000
+01101000000000001100100111110110
+11000000000000001011011000111110
+00100000011000000000000000000000
+01101000000000001100011111101010
+11000001000000001000000000000000
+01110000010001111110101000000001
+00100000001000000011011001010100
+01101000000000010100011010000010
+11000100000001001000000000000000
+00100000010000000101100010010010
+00100100011110100000000000000000
+11011010001000000100011100011000
+00100000010000000111111001010100
+00100100011101000000000000000000
+11011000110000000100011100011000
+00100000001000000100011101000110
+00011010011000100111111000000000
+11000000000101101011010000110001
+11000000000010000011010000011010
+11000000000010100011011001010001
+11000000000010101011011001100000
+00100000011000000000000000000000
+01011000000000000000000000000000
+00100000010000000011001000100000
+00100000001000000011011001010110
+01101000000000010100011111101011
+01100000000000010100011111101101
+01110000010001111100111000010100
+01110000010000001001000100000000
+00100000010000000011001111111000
+00100000010000000011010000010110
+01101000000000001100011110111101
+11000000000000001011011001011110
+11011010001000000000000000000000
+00100000001000000111110100010100
+11011010001000000000000000000000
+00100000001000000111110100011001
+01011000000000000000000000000010
+00100000010000000011001000100000
+01011000000000000000000000000000
+01100000000000101100011110011100
+01011000000000000000000000000100
+00100000010000000110100111010111
+01011000000000000000000000000101
+00100000010000000110100111010111
+01011000000000000000000000010100
+00100000010000000110100111010111
+01011000000000000000000000010101
+00100000010000000110100111010111
+01011000000000000000000000010110
+00100000010000000110100111010111
+01011000000000000000000000000111
+00100000010000000110100111010111
+00100000010000000111111000111000
+01110000010001110101111000001010
+01110000010001110110000000001010
+01110000010001110110001000001010
+01110000010000010111001000000010
+11011010001000000000000000000000
+00100000010000000111110100011110
+01011000000000000000000000100000
+00100000010000000100011011110000
+00100000001000000011001111111010
+00100000010000000011011100111011
+00100000010000000011011100111110
+00100000010000000011011101000001
+00100000010000000011001101111011
+00100000010000000011011011001000
+00100000010000000011011010100001
+00100000010000000011011010001010
+00100000010000000011011010000011
+00100000001000000011011010001111
+11011010011000000100011110011010
+11011010010000000011011010000110
+00100000001000000011001101101101
+00100000010000000011100001000111
+00100100011000001000000000000000
+01110000010001111001101100000001
+00100000011000000000000000000000
+11011010011000000100011111101101
+11011010010000000011011010001101
+00100000001000000011001101110100
+01110000010001111110101000000010
+00100000001000000011011001100010
+11011010011000000100011111110001
+11011010010000000011011010010010
+00100000001000000011001101101101
+01101000000000001100011111110010
+00100000001110100011011010011110
+01110000010001111111000100000010
+01110000010001111111001000000000
+01011000000000000000101000000010
+01100000000000010100011101010010
+01101000000000001100011110111001
+11000000000000011011011010011011
+00100000001000000011011101100010
+01011000000000000000101000000010
+01100000000000010100011101010100
+00100000001000000011011101100010
+01011000000000000000000000000000
+01100000000000100100011101010010
+00100000001000000011011101100010
+01101000000000001100011111001000
+00100000011110100000000000000000
+01101000000000010100011010000010
+11000011000001001011011011000110
+11011010011000000100011111001110
+11011010010000000011011010101000
+00100000001000000011001101101101
+01101000000000001100011111001101
+01100000000000001100011111001110
+01101000000000001100011111010001
+00100100011110100000000000000000
+00100000010000000110100011101011
+00100000010000000110100100001000
+01100000000000010100011111101000
+11011010001000000100011111100010
+00100000010000000110100100110000
+01101000000010001100011111001111
+10011000010001100111110000000000
+00100000001000010011011010110110
+01100000000000001100011111001111
+00011111111000100000010000000000
+01100000000010001100011111010000
+01101000000000001100011111001010
+10011000010001100111110000000000
+00100000010000010011011011000001
+01100000000010001100011111011011
+11011111001000000000000000000110
+11011000110000000100011111010110
+00100000010000000011011011110000
+01100000000000001100011111011100
+11011010001000000100011111010011
+00100000001000000111111000111101
+01101000000000001100011111010010
+00100100011110100000000000000000
+01110000010001111101001000000001
+11011010001000000000000000000001
+00100000001000000111110100011110
+11011010001000000000000000000001
+00100000001000000111110100011001
+11011010011000000100011110100100
+11011010010000000011011011001011
+00100000001000000011001101101101
+01110000010001111010010000000101
+01110000010001111010011000000000
+01101000000000001100011110100101
+11000000000000001011011011101110
+11000000000000000011011011101100
+11011000110000000100011110011100
+00011000110000100010001000000000
+11011111001000000000000000001000
+00011010001000100000110000000000
+11101000110000001000000000000000
+00011000110000100010001000000000
+11000000000000000011011011100011
+11000000000000001011011011100110
+11000000000000010011011011101001
+01101000000000001100011110100110
+00011111111000001111111000000001
+01100000000000001100011110100110
+11000010000000000011011011010011
+00100000011000000000000000000000
+01101000000000001100011110100110
+11011010010000000100011111000000
+10011010010000001010010000000000
+11101010010010001000000000000000
+00100000011000000000000000000000
+00100000010000000011011011011110
+00100000010000000110100000100101
+00100000001000000011011011011001
+00100000010000000011011011011110
+00100000010000000110100000101001
+00100000001000000011011011011001
+01101000000000001100011110100101
+11000000000000001011011011100011
+00100000001000000011011011100110
+01110000010001111010010100000001
+00100000001000000011011011010000
+01110000010001111010010100000000
+00100000001000000011011011010000
+11011010001000000000000000000000
+11101000110000001000000000000000
+10011010001000001010001000000000
+11000010000000000011011011110001
+00011010001000010111111011111111
+00100000011000000000000000000000
+01101000000000001000010001110111
+11000000000010010011011011111001
+00100000011000000000000000000000
+01101000000000010000010001111000
+11000000000010100011011100010000
+00100000011000000000000000000000
+01000100111010000100000000011010
+11101010001000101000000000000000
+01100000000000101000101100010010
+01101000000000010000101100010010
+11011000010000000110101101011010
+10011000010001100111110000000000
+00100100011000101000000000000000
+01101000000000010000101100010101
+00011111111100001111111000000000
+01100000000000010000101100010101
+00011111111000100111001000000000
+00011010001000001010001000000101
+00011010001000100000110000000000
+11011000101000000000101100010111
+00100000010000000111111100000001
+11101000110000001000000000000000
+01100000000000001000101100100001
+11011010001000000000101100010100
+11011010010000000000101100010111
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000101100011101010010
+01100000000000101100011101010111
+00100000010000000011011011111100
+00011010010000100000110000000000
+11011000101000000100011101010010
+11011111001000000000000000001010
+00100000010000000111111100000001
+01000100111010001100000000011010
+11101010001000001000000000000000
+11000000000000010011011101001010
+11000000000000011011011101011100
+11000000000000100011011101100010
+11000000000000101011011101100010
+11000000000000110011011110110001
+11000000000000111011100001001001
+11000000000001000011100001001100
+00100000011000000000000000000000
+01101000000000010100011010000010
+11000011100001001000000000000000
+01101000000000010100011111101011
+01100000000000010100011111101101
+01110000010010011111011000000001
+01011000000000000000000100001100
+00100000010000000011001011001101
+00100000010000000011011100010000
+01101000000000001000101100010100
+11000000000000100011011100101110
+11000000000000101011011100101110
+00100000011000000000000000000000
+01101000000000001100011101010010
+00100100010110100011011100110101
+01101000000000001100011101010100
+00100100010110100011011100110111
+01101000000000001100011101010110
+00100100010110100011011100111001
+00100000011000000000000000000000
+01110000010010011111001100000101
+00100000011000000000000000000000
+01110000010010011111010000000101
+00100000011000000000000000000000
+01110000010010011111010100000101
+00100000011000000000000000000000
+11011010011000000100100111110011
+11011010010000000011011101000100
+00100000001000000011001101101101
+11011010011000000100100111110100
+11011010010000000011011101000110
+00100000001000000011001101101101
+11011010011000000100100111110101
+11011010010000000011011101001000
+00100000001000000011001101101101
+01110000010001110101001000000000
+00100000001000000011011101100010
+01110000010001110101010000000000
+00100000001000000011011101100010
+01110000010001110101011000000000
+00100000001000000011011101100010
+00100000010000000011011101001100
+00100000001000000011011101001111
+01101000000000001100011101010010
+01100000000000001100011101011111
+00100000001000000011011101110011
+01101000000000001100011101011110
+00100000010000000011011101010100
+01101000000000001100011101010011
+01100000000000001100011101011101
+00100000001000000011011101110000
+11000000000000010011011101011000
+11000000000000011011011101011010
+01100000000000001100011101011110
+00100000011000000000000000000000
+01110000010001110101111000000101
+00100000011000000000000000000000
+01110000010001110101111000001010
+00100000011000000000000000000000
+01101000000000001100011101010010
+00100000010000000011011101010100
+01101000000000001100011101011110
+00100000010000000011011110011110
+00100000010000000011011110100001
+00100000001000000110100111000100
+01101000000000001100011111110000
+00100100011110100000000000000000
+01101000000000110100011101010010
+01100000000000110100011101011101
+01101000000000001100011101011110
+01101000000010001100011101100000
+10011000010000010111111000000000
+01101000000010001100011101100010
+10011000010000010111111000000000
+00100000010110100011011101111001
+01000100111010010100000000011010
+00100000010000000011011101110000
+00100000010000000011011101110011
+00100000001000000011011101110110
+11011010010000000100011101100011
+11011000110000000100011101011101
+00100000001000000011011101111011
+11011010010000000100011101101011
+11011000110000000100011101011111
+00100000001000000011011101111011
+11011010010000000100011101110011
+11011000110000000100011101100001
+00100000001000000011011101111011
+01110000010001111101000100000000
+00100000011000000000000000000000
+11101000110000001000000000000000
+11000000000000000011011110000111
+11000000000000001011011110000000
+11000000000000010011011110000010
+00100000011000000000000000000000
+01110000010001110111101100000000
+00100000001000000011011110000011
+01110000010001110111101100000001
+11101000110000001000000000000000
+01100000000000001100011101111101
+11101010010001000000000000000000
+00100000001000000011011110001100
+11101010010000001000000000000000
+00100000010000000110100111010111
+00011010010000001010010000000001
+11101010010000001000000000000000
+00100000001000000110100111010111
+01100000000001000100011101111110
+01110000010001111101000100000001
+01101000000000001100011101111011
+11000000000000000011011110011010
+01101000000000001100011101111111
+01100000000000001100011110000000
+01101000000000001100011101111110
+00100000010000000110100111010111
+01101000000000001100011101111101
+00100000010000000011011110011110
+01100000000000001100011110000101
+01101000000000110100011110000000
+01100000000000110000101010011010
+00100000001000000110100110101110
+01101000000000001100011101111110
+01100000000000001100011110000000
+01101000000000001100011101111111
+00100000001000000011011110010011
+00011111111011111111111000000101
+00011111111000001111111000110010
+00100000011000000000000000000000
+11011000010000000010111011100000
+10011000010011111111111000000000
+00011111111001101111110001100100
+00100000010000000111111110000110
+00011000000001111000010000000000
+00011000010000100010001000000000
+01011000000000000010111011100000
+10011000010001100010010000000000
+00100000011000000000000000000000
+01101000000100001000000010000010
+01111001001000000111111000000010
+01100000000100001000000010000010
+01011000000000000000000010011110
+01100000000100010000000001101000
+01100000000100010000000001101010
+00100000011000000000000000000000
+01101000000000001100011111110000
+00100100011110100000000000000000
+01101000000000010100011101010010
+01100000000000010100011110000111
+01101000000000001100011111101010
+11000000100000001011011110111001
+01101000000000010100010010100000
+01100000000000010100011110000111
+01000100111010011100000000011010
+00100000010000000011011110101010
+00100000010000000011011111011100
+01011000000000001011101110000000
+00100000010000000010101010001111
+00100000010000000011011111100000
+01011000000000000001110000100000
+00100000010000000010101010001111
+11011111001000000000000000010000
+00100000010000000011011111011100
+01101000000000010100011110000111
+11000010100000000011011111001001
+01011000000000000001110000100000
+00100000010000000010101010001111
+00100000010000000011011111100000
+00100000001000000011011111001100
+01011000000000000011100001000000
+00100000010000000010101010001111
+00100000010000000011011111100000
+01011000000000000001110000100000
+00100000010000000010101010001111
+01101000000000010100011110000111
+00011111111000110111111000000000
+01100000000000010100011110000111
+11000010000000000011011111000010
+01110000010001111111000100000010
+01110000010001111111001000000001
+01011000000000000000101000000001
+01100000000000010100011101010010
+01101000000000001100011110111001
+11000000000000011011011111011001
+00100000001000000011011101100010
+01011000000000000000101000000001
+01100000000000010100011101010100
+00100000001000000011011101100010
+01101000000100001000000010000101
+00011111111000011111111001000000
+01100000000100001000000010000101
+00100000011000000000000000000000
+01101000000100001000000010000101
+00011111111000010111111010111111
+01100000000100001000000010000101
+00100000011000000000000000000000
+01101000000000001100011110111011
+11000001000000000000000000000000
+00100000010000000010110001100101
+01101000000010001100011110111100
+01100000000010001100011110000110
+00100000010000000110011111111011
+00100000010000000011100001000111
+00100100011000001000000000000000
+01110000010001111001101000000001
+00100000011000000000000000000000
+01101000000000001100011110111011
+11000001000000000000000000000000
+01101000000000001100011110011011
+00100100011110100000000000000000
+01101000000000010100011010000010
+11000010100001001011011111110110
+01101000000000001100011111101010
+11000001100000001000000000000000
+01000100111010100100000000011010
+00100000010000000011100001000111
+00100100011000001000000000000000
+01011000000000001000110010100000
+00100000010000000010101010001111
+00100000010000000011100001000111
+00100100011000001000000000000000
+00100000010000000011100000111111
+00100000010000000011100001000010
+00100100011000010000000000000000
+00100000010000000011100001000111
+00100000001000001011011111111110
+11011010001000000000000000000000
+11011111001000000000000000010000
+00100000010000000011100000111111
+00100000010000000011100001000010
+00100100011000010000000000000000
+00100000010000000011100001000111
+00100100001000001011100000000101
+01011000000000000010101000110000
+00100000010000000010101010001111
+00100000010000000011100001000111
+00100000001000001011100000010010
+01011000000000000000000000000000
+00011010001000110010001000000000
+10011010001000011010001000000000
+11000010000000000011100000000101
+00100000001000000011100000011011
+01011000000000001000000000000000
+00011010001000110010001000000000
+10011010001000011010001000000000
+00100000010000000011100000111111
+00100000010000000011100001000010
+00100100011000010000000000000000
+00100000010000000011100001000111
+00100000001000001011100000010110
+11000010000000000011100000000101
+01000100111010101100000000011010
+00011010001000100111111000000000
+01100000000000010100011110001001
+01100000000000010100011110010111
+01101000000000001100011111101010
+11000000000000001011100000100111
+11011111001000000000000000000111
+11011000110000000100011110010010
+00100000010000000011011011110000
+01100000000000001100011110011001
+11011010001000000100011110001111
+00100000001000000111111000111101
+01101000000000001100011111101111
+00011111111000001111111000000001
+01100000000000001100011111101111
+00011111111001101111110000000010
+00100000010000000111111110000110
+00011000000001111000010000000000
+00011000000001110111111000000000
+00100100001110100011100000111000
+01101000000000001100011110111111
+10011000010001100111110000000000
+00100000010000101011100000111101
+11011111111000000100011110011100
+00011000010000001000010111111111
+10011000010000001010001000000000
+11011111111000000000000000000000
+11100010001000001000000000000000
+00100000011000000000000000000000
+11011111111000000100011110011100
+10011000010000001010001000000000
+11011111111000000000000000000010
+11100010001000001000000000000000
+00100000011000000000000000000000
+01110000010001111111000000000001
+00100000011000000000000000000000
+00011100010000100111111000000000
+01100000000000100100011110001011
+00100000011000000000000000000000
+00011100010000100111111000000000
+01101000000010100100011110001011
+10011000010001100111111000000000
+00011111111001100111110011001000
+00100000011000000000000000000000
+01101000000010001100011110000110
+00100000001000000110100000011101
+01101000000001000100011101010010
+01100000000001000100011110011100
+00100000011000000000000000000000
+01101000000000001100011110111001
+01100000000000001100011110101111
+01101000000000001100011110111010
+01100000000000001100011110110000
+01101000000000001100011110111011
+01100000000000001100011110110001
+11011111001000000000000000001101
+11011000110000000100011110101010
+00100000010000000011011011110000
+01100000000000001100011110110111
+11011010001000000100011110100111
+00100000001000000111111000111101
+00100000010000000110010111000010
+01110000010001101111011001111010
+00100000010000000011100001101101
+00100000010000000011100001100111
+01011000000000000011100001100000
+01100000000000010100000111111101
+11011010001000000000000000000000
+00100000001000000110100110100110
+01101000000000010100011010100001
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000010100011010100001
+11000001100000000000000000000000
+01110000010001101010000000000000
+00100000011000000000000000000000
+01000100111010110100000000011010
+01101000000000001100011010100100
+00011111111001100111110000101000
+00100000011000010000000000000000
+01110000010001101010010000000000
+00100000011000000000000000000000
+11011010001000000100011010100100
+11011010010000000000000000000000
+11011000010000000000000001010001
+00100000001000000110010111011111
+01111000010101000111110000000000
+01101000000000001100011010100011
+00011111111000100111001000000000
+11011010001000000100011010100101
+00011010011000100010010000000000
+01000100111010111100000000011010
+00100000010000000011100001111100
+00100000001000101111111111100111
+00011010001000001010001000000100
+11000010000000000011100001110110
+00100000011000000000000000000000
+01000100111011000100000000011011
+11101010001000011000000000000000
+11101010010010011000000000000000
+10011000010001100111110000000000
+00100000011000000000000000000000
+01000100111011001100000000011011
+11101010001000011000000000000000
+11101010010010011000000000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+11101000110000001000000000000000
+00011111111001100111110000000000
+00100000011000101000000000000000
+00011010001000001000110000000011
+11101000110010001000000000000000
+10011000010001100111110000000000
+00100000011000000000000000000000
+01000100111011010100000000011011
+01111000010101000111110000000000
+01101000000000001100011010100011
+00011111111000100111001000000000
+11011010001000000100011010100101
+00011010011000100010010000000000
+00100000010000000011100010000001
+00100000001000101111111111100111
+00011010001000001010001000000100
+11000010000000000011100010010011
+00100000011000000000000000000000
+01101000000000001000000000000100
+00011111111000001111111000000001
+01100000000000001000000000000100
+11011010011000000000001011100101
+11101010011000010000000000000000
+11011000010000000101010110101010
+10011000010001100111110000000000
+00100100011000101000000000000000
+00011000110000100010011000000000
+11101010011010011000000000000000
+01011000111111111111111111111111
+10011000010001100111110000000000
+00100000001000101011100010101000
+00100000010000000011100010001101
+00100000001101000011100010101000
+00100000011000000000000000000000
+01000100111011011100000000011011
+00011010011000001010011000000100
+11101010011000001000000000000000
+01101000000010001100011011110110
+10011000010001100111110000000000
+00100000011000101000000000000000
+01100000000000001100011011110110
+01101000000000001000000000000011
+00011111111000001111111000000001
+01100000000000001000000000000011
+00011010011000001010011000000001
+11101010011000001000000000000000
+01100000000000001100011011110101
+00011111111000100111001000000000
+00100000011110100000000000000000
+11101000110000001000000000000000
+11000000000000000011100011000010
+11000000000000001011100011001111
+11000000000000010011100011010100
+11000000000000011011100011011001
+11000000000000100011100011011110
+11000000000000101011100011100011
+11000000000000110011100011101000
+11000000011111111011100011101010
+11000010000000000011100010110111
+00100000011000000000000000000000
+00011000110000100010011000000000
+01101000000000001100011010011010
+01100000000000001000101010011010
+11011000010000000000000000000000
+01100000000010001000101010011011
+01011000000000000010011100010000
+01100000000000011000101010011100
+11101010011000001000000000000000
+01100000000000001000101010011111
+00100000010000000110100110101110
+00011010011000010000110000000001
+11000010000000000011100010110111
+00100000011000000000000000000000
+00011010011000100000110000000000
+01101000000000001100011010011011
+01100000000000001000101010011010
+11011000010000000000000000000001
+00100000001000000011100011000110
+00011010011000100000110000000000
+01101000000000001100011010011100
+01100000000000001000101010011010
+11011000010000000000000000000010
+00100000001000000011100011000110
+00011010011000100000110000000000
+01101000000000001100011010011101
+01100000000000001000101010011010
+11011000010000000000000000000011
+00100000001000000011100011000110
+00011010011000100000110000000000
+01101000000000001100011010011110
+01100000000000001000101010011010
+11011000010000000000000000000100
+00100000001000000011100011000110
+00011010011000100000110000000000
+01101000000000001100011010011111
+01100000000000001000101010011010
+11011000010000000000000000000101
+00100000001000000011100011000110
+11101000110000001000000000000000
+00100000011000000000000000000000
+00011000110000100010011000000000
+01101000000000001100011010100000
+11000000100000001011100011101110
+00100000010000000011100011110000
+00011010011000010000110000000100
+00100000011000000000000000000000
+01000100111011100100000000011011
+00100000010000000011100001110001
+00100000001101000011100011111110
+01101000000000001100011010100100
+00011111111000100000010000000000
+00011111111000001111111000000001
+01100000000000001100011010100100
+00100000010000000011100001100111
+00011000010010111000010000000000
+01011000000000000100011010100101
+10011000010000001000101000000000
+11101010011000100000000000000000
+11100000101000100000000000000000
+00100000001000000011100100000011
+00011010011000001000110000000011
+11101000110000001000000000000000
+00100000011110100000000000000000
+11101010011000100000000000000000
+11100010001000100000000000000000
+11011010001000000100011010100100
+11011010010000000000000000000000
+11011000010000000000000001010001
+00100000001000000110011000000110
+01101000000010001100011010011010
+00100000010000000110100000100101
+00100000011000000000000000000000
+01101000000010001100011010011010
+00100000010000000110100000101001
+01101000000010001100011010011010
+00100000010000000110100000100101
+00100000010000000011100100011101
+01101000000000001100011010100111
+00100100011110100000000000000000
+00100000010000000010110000101001
+01101000000100100000000100111000
+01111001001111111111111000001111
+01100000000100100000000001001100
+00100000010000000010110000100001
+11011000010111111111111111111111
+00100000001000000010101100101010
+01101000000000001100011010100111
+00100000001110100101011011111001
+00011111111000001111111111111111
+01100000000000001100011010100111
+00100000001000000101011011111001
+00011111111011111111111000010100
+11011000110000000100011010101000
+10011000110000001000110000000000
+11101000110000001000000000000000
+00100000011110100000000000000000
+00011111111000100010001000000000
+00011010001000100111001000000000
+11011000101000000100001101110010
+00100000010000000111111100000001
+00011010001000100111111000000000
+00011111111000001111111000000010
+01100000000000001100001101101111
+00100000011000000000000000000000
+00100000011101011000000000000000
+00100000010000000101011110100011
+00100000010000000110100010101000
+01011000000000000011100110000010
+01100000000000010100000111110011
+01011000000000000011100101101110
+01100000000000010100000111110001
+01011000000000000011100110000110
+01100000000000010100000111110101
+01011000000000000011100101101101
+01100000000000010100000111101111
+01011000000000000011100101101001
+01100000000000010100000111101001
+01011000000000000011101010110111
+01100000000000010100000111111011
+01011000000000000011110000110010
+01100000000000010100010101101111
+01011000000000000011110011000010
+01100000000000010100000111111001
+01011000000000000011110011010111
+01100000000000010100000111111101
+00100000010000000011100101111111
+01000100111011101100000000011011
+00100000010000000011100101000101
+00100000010000000011100101100100
+00100000010000000010110001101111
+00100000001000000011110001001000
+01101000000000100100011010101010
+01100000000100100000000001010100
+01101000000000100100011010101110
+01100000000100100000000001011010
+01101000000100001000000010000001
+00011111111000011111111000000100
+00011111111000010111111011111100
+01100000000100001000000010000001
+01110000100000000110001000000000
+01101000000000010100011010101010
+01100000000100010000000001011000
+01101000000000010100011010101110
+01100000000100010000000001011110
+01100000000100010000000001100000
+01101000000100100000000001111000
+01111001001000000111111000000111
+01100000000100100000000001111000
+01101000000100010000000001010000
+01111001001111111111111000001111
+01100000000100010000000001010000
+00100000010000000110011011001110
+01110000100000000100001100000000
+01110000100000000110001010000001
+01101000000000001100011010111111
+00101111111011111111111000000000
+01101000000110001000000001100010
+01111001001000001000010000000100
+01100000000110001000000001100010
+00100000011000000000000000000000
+00100000010000000011100101111111
+00100000001000000011100101000101
+01101000000010001100011010011110
+00100000010000000110100000001110
+00100000010000000011100111100110
+01101000000010001100011010011100
+00100000001000000110011111111011
+01101000000010001100011010011100
+00100000010000000110100000011101
+00100100001000001011001111010010
+00100000001000000011001111010000
+00100000011000000000000000000000
+00100000010000000011100101110000
+00100000001000000011110011101001
+01101000000000001100011010000010
+11000011000000100011100101111111
+01000100111011110100000000011011
+01011000000000000011111011111111
+01101000000010100100011011000101
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01101000000000010100011010000010
+11000010100000101011100101111111
+01101000000000001100011010111111
+11000011100000110000000000000000
+00100000010000000011110011101100
+00100000010000000011010000001110
+00011100010000100111111000000000
+01100000000000100100011011000101
+00100000011000000000000000000000
+00100000010000000011110011101001
+00100000010000000101001001101110
+00100100011110100000000000000000
+00100000001000000011100111101011
+00011010011000100111111000000000
+11000000000000001011100111010100
+11000000000000010011100110100011
+11000000000000100011100111010111
+11000000000000101011100111000100
+11000000000001000011100110101010
+11000000000001001011100110110001
+11000000000001010011100111001001
+11000000000001011011100110110110
+11000000000001100011100111000010
+11000000000010011011100111010111
+11000000000010100011100111001111
+11000000000010101011100111000110
+11000000000100001011100111001010
+11000000000100011011100111001011
+11000000000100100011100111001110
+11000000000110000011110010001010
+11000000000110001011110010001100
+11000000000110010011110010011010
+11000000000110011011110010011000
+11000000000110100011110010000100
+11000000000110101011110001110011
+11000000000110110011110010000010
+11000000000110111011110010001110
+11000000000111000011110010010000
+11000000000111011011110010100001
+11000000000111101011110001101010
+11000000001000001011100111011001
+00100000011000000000000000000000
+00100000010000000011100101111111
+01101000000000001100011001100101
+00100100010110100011110010001110
+00100000010000000011100111010111
+01101000000000010100011010000010
+11000100000000100000000000000000
+00100000001000000011100110110001
+01101000000000010100011010000010
+01111001001000000111111000000100
+01100000000000010100011010000010
+01101000000000001100011010100111
+01100000000000001100000101110010
+00100000010000000011100111100110
+00100000001000000011110000011101
+01101000000000010100011010000010
+11000100000000100000000000000000
+01111001001111111111111000000100
+01100000000000010100011010000010
+00100000001000000011110000100001
+00100000010000000011100101111111
+01101000000000010100000001000010
+00011111111000110111111000000000
+01101000000010010100000111100011
+10011000010001100111110000000000
+00100100001000101011100110111101
+00100000001000000011010000010110
+01101000000000001100011010111111
+11000011100000101000000000000000
+01101000000100010000000100010010
+00100100010110100011110011110000
+00100000001000000011010000001100
+00100000010000000011110011101110
+00100000001000000011010000011000
+00100000010000000011100101111111
+00100000001000000011100111011101
+00100000010000000101100000010110
+00100000010000000011100111010111
+00100000001000000011110000100011
+00100000001000000011001111011101
+00100000001000000011110011101110
+01101000000000001100011010111111
+11000011000000101011010000001110
+00100000001000000011110011110010
+00100000001000000011110011110010
+00100000010000000101100010111010
+00100000010000000011100111011101
+01101000000000001100011010101000
+01100000000000001100000101110010
+00100000001000000011110000011111
+01110000010001100110000100000000
+00100000010000000011110011101110
+00100000001000000011110011110010
+00100000010000000011101001010010
+00100000001000000011100111011011
+00100000010000000101110011001001
+00100000001000000101101100000010
+01101000000010001100011010011110
+00100000001000000110100000101001
+00100000010000000011100111011111
+00100000001000000011100111100110
+01101000000000001100011010100001
+00101111111011111111111000000000
+00100000010000001011001111110000
+01101000000000001100011010100001
+00101111111011111111111000000001
+00100000010000001011001111111000
+00100000011000000000000000000000
+01101000000010001100011010011110
+00100000001000000110100000100101
+01101000000000001100010101101011
+11000001000000000000000000000000
+00100000001000000110110000101000
+01101000000100001000000100001100
+11000010100000011011100111101000
+00100000010000000110011011001011
+11101000011000001000000000000000
+11000000100000001011101000000001
+01101000000100010000000100010010
+00011111111001100111110000000010
+00100000011000010000000000000000
+11101000011000001000000000000000
+01100000000000001000101100000011
+11101000011010001000000000000000
+00011000011000100010001000000000
+01100000000010001000101100000100
+00011000010000001000010000000011
+01101000000100010000000100010010
+10011000010001100000010000000000
+00100100011000010000000000000000
+01110000000010110000010100000001
+00100000010000000011101000010111
+01101000000000001000101100000101
+11000001000000000000000000000000
+00100000001000000011101000010010
+00100000010000000111111011000001
+00100000010000000011110001111001
+00100000001000000011101000000100
+01000100111011111100000000011011
+01101000000100010000000100010010
+00100000011110100000000000000000
+00100000010000000110011011001011
+11101000011000001000000000000000
+00011111111001100111110000000001
+00100100010000101011101000010110
+00100100001000101011101000000100
+11101000011000001000000000000000
+11000001000000101000000000000000
+11000001000101001000000000000000
+00011000011000001000011111111111
+00100000010000000011101000010110
+00100000001000000011101000000100
+00100000010000000110011011001011
+00011000011000001000011000000010
+11101000011000001000000000000000
+10011000011000001000011000000000
+00100000001000000110011011001000
+01000100111100000100000000011100
+01101000000000001000101100000011
+11000000000000000011101000111111
+11000000000000001011101001000100
+11000000000000010011101001001001
+11000000000000011011101001011111
+11000000000000100011101001101011
+11000000000000101011101001110101
+11000000000001001011101010011010
+11000000000001011011101011010111
+11000000000001100011101011011000
+11000000000001101011101011101100
+11000000000001110011101011110100
+11000000000001111011101011111010
+11000000000010000011101100000110
+11000000000010001011101100001110
+11000000000010010011101100010010
+11000000000100110011101100010110
+11000000000101000011101100011101
+11000000000101001011101100101101
+11000000000101010011101100110110
+11000000000101011011101101101001
+11000000000101100011101101101111
+11000000000110000011101101110110
+11000000000110001011101101111100
+11000000000110010011101110010000
+11000000000110011011101110011000
+11000000000110100011101110111011
+11000000000110101011101111000100
+11000000000110110011101111001101
+11000000000110111011101111010111
+11000000000111000011101111011010
+11000000001000000011101111100010
+11000000001000010011101111101100
+11000000001001000011101111110001
+11000000001001001011101111111100
+11000000001010001011110000000010
+11000000001100001011110000000110
+11000000011111111011110000010101
+00100000001000000011110000010111
+01101000000000001000101100000100
+11000000100000110011110000010111
+11101000011000110000000000000000
+01100000000000110100000010100000
+00100000001000000011110000011010
+01101000000000001000101100000100
+11000000100000110011110000010111
+11101000011000110000000000000000
+01100000000000110100010010100000
+00100000001000000011110000011010
+01101000000000001000101100000100
+11000000100000001011110000010111
+00011010001000100000011000000000
+00100000010000000011110000011010
+11101000011010001000000000000000
+01100000000010001100011010101001
+01101000000000010100011010000010
+11000011100001001000000000000000
+11000011100000000000000000000000
+01101000000000001100011010100001
+00101111111011111111111000000000
+00100100001000001011101001011000
+01101000000010001100011010101001
+00011000010000010111111000000011
+01100000000000001100000010010011
+01101000000000001100011010100001
+00101111111011111111111000000001
+00100100011000001000000000000000
+01101000000010001100011010101001
+00101000010011111111111000000010
+00100000001000001011001111111010
+00100000001000000011001111111000
+01101000000000001000101100000100
+00011111111001100111110001000011
+00100100001000010011110000010111
+01100000000000001100010100010101
+11011111001000000000000000001000
+00100000010000000111111011000110
+01101000000000001000101100000100
+00011111111000100111001000000000
+00011010001000100000011000000000
+11011000101000000100010100010110
+00100000010000000110011011101010
+00100000001000000011110000011010
+01101000000000001000101100000100
+00011111111001100111110000011101
+00100100001000010011110000010111
+01100000000000001100001110101111
+00011111111000100111001000000000
+00011010001000100000011000000000
+11011000101000000100001110110000
+00100000010000000110011011101010
+00100000010000000101011110100011
+00100000001000000011110000011010
+01101000000000001100011010000010
+11000011000000100011110000010111
+00100000010000000011001110111010
+00100000001000001011101010000110
+01110000000010110000010100000000
+00100000010000000011100101111111
+01101000000000001100010101101000
+00100000011110100000000000000000
+01101000000000010100010101110011
+11000000100000000011101010000100
+01101000000000001000101100000100
+01100000000000010100010101110011
+00011010001000100000011000000000
+00011000011000100111111000000000
+01100000000000010100010101110001
+00100000010000000011101010001000
+00100000001000000110110001001101
+01110000000010110000010100000000
+00100000001000000011110011010001
+00100000010000000011101010001110
+01101000000000010100010101110011
+01101000000010010100011010011111
+10011000010001100111111000000000
+01100000000000010100010101110011
+00100000011000000000000000000000
+01101000000000010100010101110011
+11011000010000000000000001101110
+00100000010000000111111111011101
+01101000000010010100010101101100
+00100000010000000111111111011101
+01101000000010010100010101011110
+00100000010000000111111111011101
+01100000000000010100011010011111
+00100000011000000000000000000000
+01110000000010110000010100000001
+01110000000010110000001100000101
+00100000001000000011110000011010
+01101000000000010100011010000010
+11000011000001001011110000010111
+00100000010000000011101011010100
+00100000001101000011110000010111
+01110000000010110000010100000000
+01101000000000001100011010111111
+11000010100000100011101010110100
+01101000000000001100011011000000
+00100100011110100000000000000000
+01110000000010110000010100000001
+11101000011000010000000000000000
+01100000000000010100011011000001
+00011000011000100111111000000000
+01100000000000010100011011000011
+01101000000000001000101100000100
+00011111111000001111111111111110
+00100100001000010011110000010111
+00100000001000101011110000010111
+01100000000000001100011011000000
+01110000000010110000010100000000
+00100000010000000101100000010100
+00100000010000000011101010110111
+00100000010000000011101010110111
+00100000010000000011101010110111
+01101000000000001100011010111111
+11000100000000100000000000000000
+01110000000010110000010100000001
+00100000010000000011110011110110
+00100000001000000011110000011010
+01101000000000001100011011000000
+00100000011110100000000000000000
+00100000010000000101100010010010
+00100100011110100000000000000000
+00100000010000000011101011001111
+01000100111100001100000000011100
+00011000010000001111111111111101
+01101000000010001100011011000000
+00100000010000000111111111011101
+00011111111000100010001000000000
+00011000010000100111111000000000
+10011010001001100111111000000000
+01100000000000001100011011000000
+01101000000010010100011011000001
+00100000010000000101101001100100
+01101000000000010100011011000011
+00011111111000100000011000000000
+00011010001000100111001000000000
+00100000010000000110011011101010
+00011000011000100111111000000000
+01100000000000010100011011000011
+01101000000000001100011011000000
+00100100011110100000000000000000
+00100000001000000011110011110100
+11011000010000000000000000010111
+01101000000000001100011010111111
+11000011100000001000000000000000
+01101000000010010100010010101000
+00100000011000000000000000000000
+01101000000000001100011010111111
+11000010100000010101101001000010
+00100000001000000111111111101001
+00100000001000000011110001001100
+00011010001000100000011000000000
+11101000011000001000000000000000
+11000000000000000011101011011111
+11000000000000001011101011100010
+11000000000000010011101011101000
+11000000000000011011101011101010
+00100000001000000011110000010111
+00100000010000000110000100101011
+01110000010001100101101000000000
+00100000001000000011110000011010
+01011000000001000000000000000011
+01100000000000011100011001011011
+01100000000000001100011001100010
+00100000010000000110000100100100
+01110000010001100101101000000001
+00100000001000000011110000011010
+01011000000001000000000000000010
+00100000001000000011101011100011
+01011000000001000000000000000001
+00100000001000000011101011100011
+01101000000000001000101100000100
+00011111111001100111110000010000
+00100100001000010011110000010111
+01100000000000001100011010001001
+00011111111000100111001000000000
+11011000101000000100011010001010
+00100000010000000110011011111101
+00100000001000000011110000011010
+00011010001000100000011000000000
+11101000011000001000000000000000
+01101000000110001000000001100010
+01111101001110100000010000000100
+01100000000110001000000001100010
+00100000001000000011110000011010
+01101000000000001000101100000100
+00011111111000100111001000000000
+00011010001000100000011000000000
+00100000010000000111111101011000
+01011001011011100011011000000000
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+01100000000000010100001001000011
+00100000010000000011110000011010
+00100000010000000111111110011110
+00100000001000000110011011001110
+11011010001000000000000000000010
+11011010010000000100011010011010
+11011000010000000000000000000000
+00100000001000000011110000100101
+01100000000000010000101011000010
+11011010010000000000101011000010
+11011000010000000000000000000000
+00100000001000000011110000100101
+01101000000000010100011010000010
+11000011000000000011110000010111
+00100000010000000011110000011010
+00100000001000000011001111101001
+01101000000000010100011010000010
+11000011000001001011110000010111
+00100000010000000011110000011010
+00100000001000000011010000000010
+01101000000000001000101100000100
+00011111111000100111001000000000
+00011010001000100000011000000000
+01101000000000010100001000010101
+00011111111000100000101000000000
+00100000010000000110011011101010
+00100000001000000011110000011010
+01101000000000001100011010000010
+11000011000000000011110000010111
+11101000011000001000000000000000
+01101000000010001100011001100001
+01111001001110100000010000000000
+01111001001000000000010000000111
+01100000000010001100011001100001
+00100000010000000011110000011010
+01101000000000001100011001100001
+11000010100000110011101100101011
+00100000011000000000000000000000
+01110000010001100110000100000000
+01110000000010101001100100100001
+00100000001000000111110110001111
+11000010100000000101111110010101
+00100000001000000011101100101000
+01101000000000001100011010000010
+11000100000000100000000000000000
+01101000000000001100010101101011
+11000001000000000000000000000000
+11101000011000001000000000000000
+01101000000010001100010101101001
+10011000010000001000010000000000
+01100000000010001100010101101001
+00100000011000000000000000000000
+11011111001000000000000001000000
+11011000101000000100001101101111
+00100000010000000111111011010100
+01011000000000000000000000000000
+01100000000000001000101010110010
+00011010001000100000011000000000
+00011000011000100111111000000000
+01100000000000010000101010110110
+00100000010000000011101101100100
+01101000000000001000101010110010
+01101000000010001000101010100010
+00011000010000001000010000000001
+10011000010000001111111000000000
+01100000000000001000101010110010
+00011111111001100111110000011111
+00100100001000010011101101010000
+01101000000010001100001101101111
+01011000000000000100001101110000
+10011000010000001111111000000000
+01100000000000010000101010111011
+01101000000010001000101010100010
+00011000010000001000010000000001
+01101000000000001100001101101111
+10011000010000001111111000000000
+01100000000000001100001101101111
+00100000001000000011101101011001
+01101000000010001100001110001111
+01011000000000000100001110010000
+10011000010000001111111000000000
+01100000000000010000101010111011
+01101000000010001000101010100010
+00011000010000001000010000000001
+01101000000000001100001110001111
+10011000010000001111111000000000
+01100000000000001100001110001111
+01101000000000010000101010111011
+00011111111000100000101000000000
+01101000000000010000101010110110
+00011111111000100000011000000000
+00011000010000100111001000000000
+00100000010000000110011011101010
+01101000000000001000101100000100
+01101000000010001000101010110010
+10011000010001100111110000000000
+00100100001000101011101100111100
+00100000001000000011110000011010
+11101000011000001000000000000000
+01100000000000001000101010100010
+11101000011000001000000000000000
+01100000000000001000101010101110
+00100000011000000000000000000000
+11011000010000000000000000000000
+11011010001000000000000000000010
+01101000000000010100011010110100
+01100000000000010000101011000010
+11011010010000000000101011000010
+00100000001000000011110000100101
+01101000000000001000101100000100
+11000000100000001011110000010111
+11101000011000001000000000000000
+01100000000000001100011010110010
+01011000000000000000000000000000
+01100000000000010100011010110100
+00100000001000000011110000011010
+11101000011000100000000000000000
+01100000000000100100011010001010
+01110000010001101000100100000100
+01110000010001100110001100000000
+00100000010000000011110000011010
+00100000001000000101111100110001
+01101000000000001000101100000100
+11000000100000011011110000010111
+11101000011000001000000000000000
+11000000000000000011101110000010
+11000000000000001011101110001010
+00100000001000000011110000010111
+11101000011010001000000000000000
+11101000011000001000000000000000
+11000000000000010011101110001000
+01111101001110100000010000000111
+00100000010000000110011111111011
+00100000001000000011110000011010
+00100000010000000110100000000110
+00100000001000000011110000011010
+11101000011010001000000000000000
+00100000010000000110100000010010
+11101000011000001000000000000000
+00101111111011111111111000000000
+00100000010000000110100000101100
+00100000001000000011110000011010
+01101000000000001000101100000100
+11000000100000001011110000010111
+11101000011010001000000000000000
+00100000010000000110100000011101
+01011000000000000000000000000000
+01111101001000001111111000000000
+11011010001000000000000000000001
+00100000001000000011101100001010
+00011010001000100000011000000000
+11101000011000001000000000000000
+00011111111000100000010000000000
+11000000010000001011101110100011
+11000000010000010011101110101000
+11000000010000011011101110101110
+01100000000000001100010011000110
+11000000000000000011101110110011
+11000000000000001011101110110110
+11000000000000010011101110111000
+00100000001000000011110000010111
+01101000000000001100010010111110
+00100000001110100011110000010111
+01100000000010001100010011000110
+01110000010001000101011000001101
+00100000001000000011101110110100
+01101000000000001100010010111110
+00100000001110100011110000010111
+01100000000010001100010011000110
+01110000010001000101011000001101
+01110000010001000101010000000001
+00100000001000000011110000011010
+01101000000000001100010010111110
+00100000001110100011110000010111
+01100000000010001100010011000110
+01110000010001000101011000001101
+00100000001000000011101110111001
+01110000010001000101011000000000
+01110000010001000101010000000011
+00100000001000000011110000011010
+01110000010001000101011000000101
+00100000001000000011101110110100
+01110000010001000101011000000101
+01110000010001000101010000000000
+00100000001000000011110000011010
+01101000000000001000101100000100
+00011111111001100111110000011111
+00100100001000010011110000010111
+01100000000000001100001101101111
+00011111111000100111001000000000
+00011010001000100000011000000000
+11011000101000000100001101110000
+00100000010000000110011011101010
+00100000001000000011110000011010
+01101000000000001000101100000100
+00011111111001100111110000011111
+00100100001000010011110000010111
+01100000000000001100001110001111
+00011111111000100111001000000000
+00011010001000100000011000000000
+11011000101000000100001110010000
+00100000010000000110011011101010
+00100000001000000011110000011010
+01101000000000010100011010000010
+11000011000001001011110000010111
+01101000000000001000101100000100
+11000000100001000011110000010111
+00011010001000100000011000000000
+11101000011001000000000000000000
+01100000000001000100010010010110
+01110000000010101001100100010010
+00100000010000000111110110001111
+00100000001000000011110000011010
+11101000011000010000000000000000
+01100000000000010100010010000010
+00100000001000000011110000011010
+01101000000000001100010011000110
+00100000001110100011110000010111
+01101000000000001100010011000100
+11000000100000000011110000010111
+01101000000000001100010011000101
+11000000100000000011110000010111
+00100000010000000111111000100101
+00100000001000000011110000011010
+01101000000000001000101100000100
+11000000100000101011110000010111
+11101000011000001000000000000000
+01100000000000001100011010100010
+11101000011000100000000000000000
+01100000000000100100011010100011
+01101000000010001100011010100010
+00100000010000000110100000001110
+00100000010000000011110010111100
+00100000001000000011110000011010
+01101000000000001000101100000100
+11000000100000001011110000010111
+11101000011000001000000000000000
+01100000000000001100000111011110
+00100000001000000011110000011010
+11101000011000001000000000000000
+11000000000000001011101111111010
+01101000000000001100010011000001
+11000000000000011011101111111000
+11000000000000110011101111111000
+11000000000000111011101111111000
+00100000001000000011110000010111
+01110000010001001100001000000001
+00100000001000000011110000011010
+00100000010000000101101101010011
+00100000001000000011110000011010
+01101000000000001000101100000100
+11000000100000001011110000010111
+00100000010000000011110000011010
+11101000011000001000000000000000
+00100000001110100110000011001011
+00100000001000000110000011001001
+00100000010000000011110000011010
+00100000010000000111111110011110
+01110000100000000001000000000001
+00100000001000000010101010001110
+01101000000000001000101100000100
+11000000000000000011110000010111
+11101000011000001000000000000000
+00100000001110100011110000010011
+01101000000000001000101100000100
+11000000100000101011110000010111
+11101000011000100000000000000000
+11011000010011110100001001000000
+10011000010001100111110000000000
+00100000001000010011110000010111
+01100000000000100100010011000111
+00100000010000000101100000001100
+00100000001000000011110000011010
+00100000010000000101100000001110
+00100000001000000011110000011010
+01110000010000001001000100000000
+00100000001000000011110000011010
+11011000010000000000000000000001
+11011010001000000000000000000000
+00100000001000000011110000100101
+11011000010000000000000000000000
+11011010001000000000000000000000
+00100000001000000011110000100101
+01110000000010110000001100000000
+00100000001000000011110001001001
+01110000000010110000001100000010
+00100000001000000011110001001001
+01110000000010110000001100000011
+00100000001000000011110001001001
+01110000000010110000001100000101
+00100000001000000011110001001001
+01101000000000001000101100000011
+00011111111000100010011000000000
+01110000000010110000001100000110
+01011000000000000000000000000010
+10011010001000001111111000000000
+00100000010000000011110010100111
+00011010011000100111111000000000
+11100001010000001000000000000000
+11100001010010001000000000000000
+00011010001000100111001000000000
+00011010010000100000110000000000
+00100000010000000110011011100100
+00100000001000000110011011000101
+00100000010000000011100101111111
+01110000000010110000001100000111
+01101000000000001000010011111111
+00100000011110100000000000000000
+00100000010000000011110010100111
+01101000000000001000010011111111
+00011111111000100111001000000000
+01101000000000010000010100000001
+00011111111000100000110000000000
+00100000010000000110011011010001
+00100000001000000110011011000101
+01110000000010110000001100001000
+01101000000000001100011010110110
+00011111111000100111001000000000
+00011111111000001111111000000010
+00100000010000000011110010100111
+01101000000000010100011010111001
+11100001010000010000000000000000
+01101000000000010100011010110111
+00011111111000100000110000000000
+00100000010000000110011011010001
+00100000001000000110011011000101
+01110000000010110000001100001001
+01011000000000000000000000000000
+00100000010000000011110010100111
+00100000001000000110011011000101
+01110000000010110000001100001010
+01011000000000000000000000000001
+00100000010000000011110010100111
+00100000010000000011110001011101
+01101000000000010100011010000010
+11011000111000000000000000000010
+10101111111011111111111111111111
+01111001001000001000010000000011
+11011000111000000000000000001001
+10101111111011111111111111111111
+01111001001000001000010000000101
+01101000000000001100011010000010
+11011000111000000000000000000100
+10101111111011111111111111111111
+01111001001000001000010000000100
+11100001010010001000000000000000
+00100000001000000110011011000101
+11011000010000000000000000000000
+01101000000000001100000010010011
+11011000111000000000000000000000
+10101111111011111111111111111111
+01111001001000001000010000000000
+11011000111000000000000000000001
+10101111111011111111111111111111
+01111001001000001000010000000001
+01101000000000001100001101101110
+11011000111000000000000000000000
+10101111111011111111111111111111
+01111001001000001000010000000010
+00100000011000000000000000000000
+01110000000010110000001100001101
+01101000000000001100001000010111
+00011111111011111111111000100010
+00011111111000100111001000000000
+00100000010000000011110010100111
+01101000000000010100001000010101
+00011111111000100000110000000000
+00100000010000000110011011010001
+00100000001000000110011011000101
+01110000000010110000001100001110
+01011000000000000000000000000100
+00100000010000000011110010100111
+01101000000000100000100110111010
+11100001010000100000000000000000
+00100000001000000110011011000101
+01110000000010110000001100001111
+01101000000100010000000100010010
+11011000010000000000000011111111
+00100000010000000111111111011101
+00011111111000100111001000000000
+00100000010000000011110010100111
+00100000010000000110011011001011
+00100000010000000110011100000011
+00100000001000000110011011000101
+01110000000010110000001100010000
+00100000001000000011110001001001
+01110000000010110000001100010001
+01011000000000000000000000000100
+00100000010000000011110010100111
+01101000000000100100010011000111
+11100001010000100000000000000000
+00100000001000000110011011000101
+11011010001000000000000110000000
+00100000001000000011110010010001
+11011010001000000000000010000000
+00100000001000000011110010010001
+11011010001000000000000100000001
+00100000001000000011110010010001
+11011010001000000000000000000001
+01110000010001100110000100000000
+01110000000010110000001100010100
+01011000000000000000000000000010
+00100000010000000011110010100111
+00011010001000100111111000000000
+11100001010000010000000000000000
+00100000001000000110011011000101
+11011010011000000000000000000000
+00100000001000000011110010011011
+11011010011000000000000000000001
+01110000000010110000001100010101
+01011000000000000000000000000001
+00100000010000000011110010100111
+00011010011000100111111000000000
+11100001010000001000000000000000
+00100000001000000110011011000101
+01110000000010110000001100011101
+01011000000000000000000000000100
+00100000010000000011110010100111
+01101000000000100000100110111010
+11100001010000100000000000000000
+00100000001000000110011011000101
+01110000000010110000001000000010
+01100000000000001000101100000100
+01100000000011000000101010100010
+01000100111100010100000000011100
+00100000010000000011110010110001
+01101000000011000000101010100010
+00100000010000000110011011000010
+01101000000000011000101100000010
+11100001010000011000000000000000
+00100000011000000000000000000000
+00100000010000000011110010111010
+00100000011000001000000000000000
+00100000010000000011110010111000
+01101000000000100100011010100011
+00011111111010110111111000000000
+00100000011110100000000000000000
+00100000001000000011110010111110
+01101000000010001100011010100010
+00100000001000000110100000101001
+01101000000010001100011010100010
+00100000001000000110100000011011
+01101000000010001100011010100010
+00100000001000000110100000100101
+00011111111000001111111111111111
+00100000000000000000000000100110
+00100100001110100011110010111110
+00100000011000000000000000000000
+00100000010000000011101011010100
+00100000011101000000000000000000
+00011010001000100111111000000000
+01100000000000010100011010110111
+00011010010000100111111000000000
+01100000000000001100011010110110
+01101000000000010000010001111000
+01101000000010010100011010111011
+10011000010001100111110000000000
+00100000001000101011110011001111
+01101000000010010100011010111101
+10011000010001100111110000000000
+00100100011000101000000000000000
+01100000000000010100011010111001
+00100000001000000011110000111101
+01101000000000001100011010111111
+11000011100000101000000000000000
+00100000010000000011110011110000
+00100000001000000011010000001100
+01110000010000010111001000000010
+00100000011000000000000000000000
+00100000001000000011110011011000
+01101000000000001100011010110010
+00100000011110100000000000000000
+01101000000000001100011010110011
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001100011010110011
+00100100011110100000000000000000
+01110000010001101011001100001010
+00100000010000000110100011101011
+00100000010000000110100100001000
+00011111111001101111110001100100
+00100000010000000111111110000110
+00011000000001111111111000000000
+00011000000001110000010000000000
+01100000000000001100011010110100
+01100000000010001100011010110101
+00100000011000000000000000000000
+00100000010000000111111110110100
+00100000001000010011001111011001
+00100000001000000011001111011011
+11011000111000000000000000000110
+00100000001000000011110011111100
+11011000111000000000000000000110
+00100000001000000011110011111000
+11011000111000000000000000000101
+00100000001000000011110011111100
+11011000111000000000000000000101
+00100000001000000011110011111000
+11011000111000000000000000000100
+00100000001000000011110011111100
+11011000111000000000000000000100
+00100000001000000011110011111000
+01101000000000001100011010111111
+11111001001111111111111000000000
+01100000000000001100011010111111
+00100000011000000000000000000000
+01101000000000001100011010111111
+11111001001000000111111000000000
+01100000000000001100011010111111
+00100000011000000000000000000000
+00100000010000000011110100111001
+00100000010000000110010000001111
+00100000010000000100000011000110
+00100000010000000011110101100110
+00100000010000000110010000010001
+00100000011101011000000000000000
+00100000010000000011110100010110
+00100000010000000011110100011001
+01101000000000100100011011010011
+11000011100010000000000000000000
+00100000010000000011110101001110
+11000110000100110000000000000000
+01101000000000010100011010000010
+11000010100001100100001010110000
+00100000001000000100001010100010
+01101000000000100100011011010011
+11000100000011011000000000000000
+11011111001000000000000000010100
+01011000000000110000110101000000
+00100000010000000010101010001111
+11000010000000000111111011000001
+00100000011000000000000000000000
+01101000000000100100011011010011
+11000100000010000000000000000000
+00100000001000000100100011101010
+01011000000000000100000101101101
+01100000000000010100000111101111
+01011000000000000011111101110111
+01100000000000010100000111110001
+01011000000000000011111010111011
+01100000000000010100000111101101
+01011000000000000100000101111100
+01100000000000010100000111110101
+01011000000000000011110111100011
+01100000000000010100000111110011
+01011000000000000011111010110011
+01100000000000010100000111101011
+01011000000000000011110101011011
+01100000000000010100000111111001
+00100000010000000010110001111010
+01011000000000000100010000000001
+00011010011000001000101011011000
+11100000101000010000000000000000
+01011000000000000100010000000110
+00011010011000001000101011011010
+11100000101000010000000000000000
+01011000000000000011111010111111
+00011010011000001000101011011100
+11100000101000010000000000000000
+01011000000000000100000111111001
+01100000000000010100000111111101
+01011000000000000011110100110110
+01100000000000010100001000000001
+00100000011000000000000000000000
+01101000000000100100011011010011
+11000011000010010110010011010111
+00100000001000000110010011011010
+00100000011101011000000000000000
+00100000010000000010110010011101
+00100000010000000011111001101110
+00100000010000000011111000011110
+00100000010000000011111001010100
+00100000010000000101100000010000
+00100000010000000101100000111001
+00100000010000000101100000101100
+00100000010000000101100000011000
+01101000000000100100011011010011
+11000010100010100011110101000110
+11000010100010011100010000010100
+00100000011000000000000000000000
+00100000010000000110010110011100
+01101000000000100100011011010011
+00101111111011111111111000011001
+00100100010000001110010111000010
+00100000010000000100010000111111
+00100000010000000011110111001001
+00100000010000000100000110101010
+00100000001000000110010111011111
+01101000000000100100011011010011
+11000011000011110011110101010011
+01101000000000001000101010111101
+00101111111011000000000000000011
+00100100011000001000000000000000
+01101000000000001100011100011111
+01100000000000001100011100011110
+01101000000000001100011011110101
+11000011100000110000000000000000
+01101000000000100100011011010011
+11000100000010001000000000000000
+11000010100011101010111011100100
+00100000001000000010111100101100
+01101000000000001000010001111000
+00011111111001100111111000011010
+00100100011000101000000000000000
+01110000000010101001100100010010
+00100000010000000111110110001111
+11011000111000000000000000000000
+00100000001000000100000110111001
+01101000000000001100011010110110
+11000001000000001000000000000000
+01110000010001101011011000000001
+00100000011000000000000000000000
+01101000000000001100011011100001
+00011111111000010111111000001111
+01100000000000001100011101111010
+00100000001000000011110110000000
+01101000000010001100011011100111
+00100000010000000110100000011101
+00100100001000001011110101100010
+01101000000000001100011010110110
+11000001000000000000000000000000
+01110000010001101011011000000000
+01101000000000001100011101111010
+00011111111000001111111000000001
+00011111111000010111111000000011
+01100000000000001100011101111010
+00100000010000000011110101111110
+01101000000000100100011011010011
+11000010100010100100010000111011
+11000010100010011011110101111001
+00100000011000000000000000000000
+11011000010000000000000000011110
+00100000010000000110100000001110
+11011000010000000000000000011111
+00100000010000000110100000001110
+00100000001000000100010000110101
+01000100111100011100000000011100
+00100000010000000100001001001010
+01101000000000001100011011100000
+11000000000000101011110110101010
+11000000000000100011110110010110
+01101000000000001100011101111010
+11000000000000000011110110001010
+11000000000000001011110110001000
+11000000000000010011110110001100
+11000000000000011011110110001110
+01101000000000001100011110000000
+00100000001000000011110110111110
+01101000000000001100011101111111
+00100000001000000011110110111110
+01101000000000001100011110000001
+00100000001000000011110110111110
+01101000000000001100011110000010
+00100000001000000011110110111110
+01101000000000001100011011100000
+11000001000000110000000000000000
+01101000000000001100011010110101
+00011111111000001111111000000001
+01100000000000001100011010110101
+00100000011000000000000000000000
+01101000000000001100011101111010
+11000000000000000011110110011101
+11000000000000001011110110011011
+11000000000000010011110110011111
+11000000000000011011110110100001
+01101000000000001100011110000100
+00100000001000000011110110100010
+01101000000000001100011110000011
+00100000001000000011110110100010
+01101000000000001100011110000101
+00100000001000000011110110100010
+01101000000000001100011110000110
+01100000000000001100011010110101
+00011111111011010111111000000000
+00011111111000100010001000000000
+00011111111000001111111000001101
+00100000010000000110010000010011
+00011010001000100111111000000000
+00011111111000001111111000001110
+00100000001000000110010000010011
+01101000000000001100011101111010
+11000000000000000011110110110001
+11000000000000001011110110101111
+11000000000000010011110110110011
+11000000000000011011110110110101
+01101000000000001100011110001000
+00100000001000000011110110110110
+01101000000000001100011110000111
+00100000001000000011110110110110
+01101000000000001100011110001001
+00100000001000000011110110110110
+01101000000000001100011110001010
+01100000000000001100011010110101
+00100000010000000100000011000000
+01101000000000001100011010110101
+00011111111000001111111010000000
+00011111111011010111111000000000
+00011111111000001111111000000101
+00011111111000100010001000000000
+00100000001000000100000101011010
+01100000000000001100011010110101
+00100000010000000011110110010000
+01101000000000001100011010110101
+01011000000000000000000000000110
+00100000010000000110010000010100
+00011111111000010000010011111000
+01101000000000001100011010110101
+10011000010000001111111000000000
+00011111111011010111111000000000
+00011111111000001111111000000110
+00100000001000000110010000010011
+00100000010000000011001111000100
+00100000001000101100001100010110
+00100000010000000100010000011100
+00100000010000000100001011100100
+00100000001000000011001110111101
+01101000000000010100011100000111
+00100000011110100000000000000000
+01101000000000100100011011010011
+11000100000010001000000000000000
+11000011100000011000000000000000
+11000110000100110000000000000000
+00100000010000000100000010000011
+11000001100000111000000000000000
+00100000010000000100010010000010
+11011000111000000000000000000011
+00100000010000000100001111001110
+01011000000000000000000000000000
+01100000000000010100011010101110
+01100000000000001100011010110100
+00100000010000000011001001100011
+01101000000000010100011010000010
+11000010100000111100001110010010
+11000010100001001011010000000010
+11000010100000000011001111101001
+00100000010000000100001011001010
+00100000001000000010111010101101
+00100000010000000011110111001110
+00100000010000000111111000110100
+00100000010000000011110101101010
+00100000010000000011110111101001
+00100000010000000011111011100000
+00100000001000000011110111110111
+01101000000000100100011011010011
+11000100000010000000000000000000
+00100000010000000100100011010011
+00100000001000000100100011111101
+01101000000100001000101000000100
+11000011000000111011110111110001
+11000010100000111011110111110100
+00100000011000000000000000000000
+01101000000000001100011011111111
+11000100000000111000000000000000
+00100000001000000110010110011010
+01101000000000001100011011111111
+11000011100000111000000000000000
+00100000001000000100001110000001
+00100000010000000011110111101101
+01101000000100001000101000000100
+01100000000000001100011011111111
+11000100000000111000000000000000
+00100000010000000011111000000111
+01101000000000100100011011111001
+01101000000010001100011011111101
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01100000000000100100011011111001
+00100000010000000011111110010111
+00100100011101000000000000000000
+01110000000011010011100000000100
+00100000001000000011111000001111
+01101000000010100100011011111001
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100010000010011111000001100
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000100100011011111001
+00100000011000000000000000000000
+01101000000000001000110100111000
+11000100000000010000000000000000
+00100000001000000011111000010010
+01101000000100001000101000000100
+11000100000000111000000000000000
+01110000000011010101001000100000
+01011000000000000000000000000001
+01100000000000001000110101010100
+01101000000000111100011010011010
+11100000101000111000000000000000
+00100000011000000000000000000000
+01101000000100010000000001010000
+01111001001111111111111000001011
+01100000000100010000000001010000
+00100000011000000000000000000000
+01011000000000001000110000000000
+01100000000000010100010101110101
+01011000000000001000111001111010
+01100000000000010100010010111100
+01011000000000000010010000000010
+01100000000000010100000010111101
+01011000000000000010010110000000
+01100000000000011100000010101010
+01110000010000010111001100000011
+01110000010000010101011000001000
+01110000010001101101100100000001
+01011000000000000000001000000000
+01100000000000010100000101010100
+01110000010001001010011000010111
+01110000010001001010100000010111
+01011000000000000000101001110111
+01100000000000010100001000010010
+00111000000000000000001100000110
+00111000000001000100010001000000
+00111000000010010000000000000000
+00111000000011000100010000001000
+01100000000001001100010101110111
+00111000000000000001001000100100
+00111000000001000100000000000000
+00111000000010000000000000000000
+11100000101000101000000000000000
+00111000000000111111111111111111
+00111000000001101111111000100011
+00111000000010011001100111011001
+00111000000011000000001000001101
+01100000000001000100000010011000
+01011000000000000000000100101100
+01100000000000010100011100000111
+00100000010000000101011110100011
+01101000000000100100011011010011
+11000100000011111000000000000000
+00100000010000000011111001000100
+00100000001000000011111001001100
+01101000000010001100011011110111
+00100000010000000110011111111011
+01101000000010001100011011110111
+00100000010000000110100000011101
+01110000010001101111011000000011
+00100000011000001000000000000000
+01110000010001101111011000000010
+00100000011000000000000000000000
+01101000000010001100011011111000
+00100000010000000110011111111011
+01101000000010001100011011111000
+00100000010000000110100000011101
+01110000010000100010110100000000
+00100000011000001000000000000000
+01110000010000100010110100000010
+00100000011000000000000000000000
+01101000000000001100001000101101
+11000000000000000011111001011001
+11000000000000001011111001100010
+11000000000000010011111001101011
+00100000001000000011111001011001
+01101000000010010100001000100001
+01101000000000010100001000100111
+10011000010001100111111000000000
+00011111111011111111111000010100
+00011111111001101111110001100100
+00100000010000000111111110000110
+00011000000001111111111000000000
+01100000000000010100011011010000
+00100000011000000000000000000000
+01101000000010010100001000011111
+01101000000000010100001000100101
+10011000010001100111111000000000
+00011111111011111111111011100110
+00011111111001101111110110010000
+00100000010000000111111110000110
+00011000000001111111111000000000
+01100000000000010100011011010000
+00100000011000000000000000000000
+01101000000000010100001000100011
+01100000000000010100011011010000
+00100000011000000000000000000000
+01101000000010001100001000111010
+00100000010000000110100000001110
+00100000010000000100100011111011
+01101000000010001100011011100010
+00100000010000000110011111111011
+01101000000010001100011011100011
+00100000010000000110011111111011
+01101000000010001100011011100100
+00100000010000000110011111111011
+01101000000010001100011011110011
+00100000010000000110011111111011
+01101000000010001100011011011100
+00100000010000000110100000001110
+01101000000010001100011011101000
+00100000010000000110011111111011
+01101000000010001100011011101001
+00100000010000000110011111111011
+01101000000010001100011011101010
+00100000010000000110011111111011
+01101000000010001100011011101011
+00100000010000000110011111111011
+01101000000010001100011011100101
+00100000010000000110011111111011
+01101000000010001100011011100110
+00100000010000000110011111111011
+01101000000010001100011011101111
+00100000010000000110100000001110
+01101000000010001100011011110000
+00100000010000000110100000001110
+01101000000010001100011011110001
+00100000010000000110100000001110
+01101000000010001100011011110010
+00100000010000000110100000001110
+01101000000010001100011011110100
+00100000010000000110100000001110
+01101000000010001100011011101101
+00100000010000000110011111111011
+01101000000010001100011011101100
+00100000010000000110011111111011
+01101000000010001100011011100111
+00100000001000000110011111111011
+01101000000010001100011011101000
+00100000010000000110011111011101
+01101000000010001100011011101001
+00100000010000000110011111011101
+01101000000010001100011011101010
+00100000010000000110011111011101
+01101000000010001100011011101011
+00100000001000000110011111011101
+01101000000010001100011011101000
+00100000010000000011111010100111
+01101000000010001100011011101001
+00100000010000000011111010100111
+01101000000010001100011011101010
+00100000010000000011111010100111
+01101000000010001100011011101011
+00100000001000000011111010100111
+00011000010001100111110011111111
+00100000011000101000000000000000
+00011000010000010000111001111111
+01101000000100100000000100011100
+10101111111011111111111111111111
+01101000000100100000000001111000
+11111001001000001111111000000000
+01100000000100100000000001111000
+01101000000100100000000001111100
+11111101001000001111111000000000
+01100000000100100000000001111100
+00100000011000000000000000000000
+01111000001101000111110000000000
+01101000000100100000000100111000
+01111001001101000111111000011010
+01100000000100100000000001001100
+00100000010000000010110000100001
+00100000010000000100010010000010
+00100000010000000011111010011111
+00100000001000000011111010111111
+00100000010000000011111010111111
+01101000000000001000000010100000
+00100100011110100000000000000000
+00100000001000000110011111101101
+00100000010000000011111011100000
+11011000010000000000000000011001
+01101000000000100100011011010011
+00101111111011111111111000010010
+00100000010000001011111011011110
+00100000010000000110100000001110
+00100000010000000110001111101110
+01101000000010001100011011100010
+00100000010000000110011111011101
+01101000000010001100011011100011
+00100000010000000110011111011101
+01101000000010001100011011100100
+00100000010000000110011111011101
+01101000000010001100011011100101
+00100000010000000110011111011101
+01101000000010001100011011100110
+00100000010000000110011111011101
+01101000000010001100011011100111
+00100000010000000110011111011101
+01101000000010001100011011101101
+00100000010000000110011111011101
+01101000000010001100011011101000
+00100000010000000110011111011101
+01101000000010001100011011101001
+00100000010000000110011111011101
+01101000000010001100011011101010
+00100000010000000110011111011101
+01101000000010001100011011101011
+00100000010000000110011111011101
+01101000000010001100011011110011
+00100000001000000110011111100001
+11011000010000000000000000011110
+00100000011000000000000000000000
+01000100111100100100000000011100
+00100000010000000011111011101110
+00100000010000000011111100110110
+01101000000000001100011010111000
+01101000000010001100011010110111
+01100000000000001100011010110111
+10011000010001100111110000000000
+00100100001000101011001111010100
+01101000000000001100011010111110
+01101000000010001100011010111101
+01100000000000001100011010111101
+10011000010001100111110000000000
+00100100001000101011001111010100
+00100000011000000000000000000000
+01101000000000001100011011101010
+11000001011111111000000000000000
+11011010001000000000000000000000
+01101000000010001100011011101010
+00100000010000000110100000011101
+01111001001000001010001000000000
+01101000000010001100011011101011
+00100000010000000110100000011101
+01111001001000001010001000000001
+00011010001000100111111000000000
+01100000000000001100011010111000
+11000000000000001011111011111110
+11000000000000010011111100000010
+01101000000000001100011010111001
+11000010100000111011111100001110
+00100000011000000000000000000000
+01101000000000001100011010110111
+11000000000000000011111100000110
+11000000000000011011111100001000
+00100000011000000000000000000000
+01101000000000001100011010110111
+11000000000000000011111100001010
+11000000000000011011111100001100
+00100000011000000000000000000000
+01110000010001101011100110000010
+00100000011000000000000000000000
+01110000010001101011100110000001
+00100000011000000000000000000000
+01110000010001101011100110000000
+00100000011000000000000000000000
+01110000010001101011100110000011
+00100000011000000000000000000000
+01101000000000001100011010111001
+01111001001111111111111000000111
+01100000000000001100011010111001
+11000000000000000011111100010110
+11000000000000001011111100011001
+11000000000000010011111100011100
+11000000000000011011111100011111
+00100000011000000000000000000000
+01101000000000001100011010111000
+11000000000000011011111100100010
+00100000011000000000000000000000
+01101000000000001100011010111000
+11000000000000000011111100100010
+00100000011000000000000000000000
+01101000000000001100011010111000
+11000000000000011011111100101100
+00100000011000000000000000000000
+01101000000000001100011010111000
+11000000000000000011111100101100
+00100000011000000000000000000000
+01101000000000001100011010111100
+00011111111000001111111000000001
+01100000000000001100011010111100
+00011111111001100111110000000001
+00100000011000010000000000000000
+01110000010001101011110000000000
+01101000000000001100011010111010
+00011111111000001111111000000001
+01100000000000001100011010111010
+00100000011000000000000000000000
+01101000000000001100011010111011
+00011111111000001111111000000001
+01100000000000001100011010111011
+00011111111001100111110000000001
+00100000011000010000000000000000
+01110000010001101011101100000000
+01101000000000001100011010111010
+00011111111000001111111111111111
+01100000000000001100011010111010
+00100000011000000000000000000000
+01101000000000001100011011101000
+11000001011111111000000000000000
+11011010001000000000000000000000
+01101000000010001100011011101000
+00100000010000000110100000011101
+01111001001000001010001000000000
+01101000000010001100011011101001
+00100000010000000110100000011101
+01111001001000001010001000000001
+00011010001000100111111000000000
+01100000000000001100011010111110
+11000000000000001011111101000110
+11000000000000010011111101001010
+01101000000000001100011010111111
+11000010100000111011111101010110
+00100000011000000000000000000000
+01101000000000001100011010111101
+11000000000000000011111101001110
+11000000000000011011111101010000
+00100000011000000000000000000000
+01101000000000001100011010111101
+11000000000000000011111101010010
+11000000000000011011111101010100
+00100000011000000000000000000000
+01110000010001101011111110000010
+00100000011000000000000000000000
+01110000010001101011111110000001
+00100000011000000000000000000000
+01110000010001101011111110000000
+00100000011000000000000000000000
+01110000010001101011111110000011
+00100000011000000000000000000000
+01101000000000001100011010111111
+01111001001111111111111000000111
+01100000000000001100011010111111
+11000000000000000011111101011110
+11000000000000001011111101100001
+11000000000000010011111101100100
+11000000000000011011111101100111
+00100000011000000000000000000000
+01101000000000001100011010111110
+11000000000000011011111101101010
+00100000011000000000000000000000
+01101000000000001100011010111110
+11000000000000000011111101101010
+00100000011000000000000000000000
+01101000000000001100011010111110
+11000000000000011011111101101111
+00100000011000000000000000000000
+01101000000000001100011010111110
+11000000000000000011111101101111
+00100000011000000000000000000000
+01110000010001101100001000000000
+01101000000000001100011011000000
+00011111111000001111111000000001
+01100000000000001100011011000000
+00100000011000000000000000000000
+01110000010001101100000100000000
+01101000000000001100011011000000
+00011111111000001111111111111111
+01100000000000001100011011000000
+00100000011000000000000000000000
+01011000000000000000000000000010
+01100000000000001100011010000000
+00100000011000000000000000000000
+01101000000000001100000111100010
+00100000011110100000000000000000
+00100000010000000101001001110001
+00100100011110100000000000000000
+01101000000000100100011011010011
+11000010100000011011111110001010
+11000010100000000011111110001010
+11000010100000101011111110001010
+00100000010000000011111110010111
+00100100011101000000000000000000
+11011010001000000000000000001001
+00100000010000000100110101100011
+01101000000000010100001001001110
+11100000101000010000000000000000
+01011000000000000000001010100001
+11100000101000010000000000000000
+01101000000000111100011010011010
+11100000101000111000000000000000
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000111100011010011010
+00100000001000000011111110000001
+01101000000000010100011010101010
+01100000000000010100011010110000
+00100000011000000000000000000000
+01000100111100101100000000011100
+11011010001000000000000000000111
+01101000000010010100010001101111
+00100000010000000101101001100100
+01101000000000111100011010011010
+11100000101000111000000000000000
+00100000011000000000000000000000
+01000100111100110100000000011100
+01111000010101000111110000000000
+01011000000000000000000000000000
+01100000000000110100011010011011
+00100000010000000011111110110101
+00100000010000000100000001111001
+00100000010000000100000001111110
+00100000010000000100000010011001
+00100100011101000000000000000000
+00100000010000000011111110001101
+11011000111000000000000000001000
+00100000001000000100001111001110
+01101000000000010100011010011011
+00011111111001100111111000000000
+01100000000000010100011010011011
+00100000001000000111111111100111
+01101000000000010100011010011101
+00011111111001100111111000000000
+01100000000000010100011010011101
+00100000001000000111111111100111
+01101000000000010100011010011101
+00011111111001100111111000000000
+01100000000000010100011010011101
+01101000000000010100011010011011
+00011111111001100111111000000000
+01100000000000010100011010011011
+00100000010000000100000000000010
+00100000001000000111111111100111
+00100000010000000100000000000010
+00100000001000000111111111100111
+01101000000000001100001000111001
+11000001100000000000000000000000
+01101000000000001100011011100000
+11000000000000000011111111100010
+11000000000000001011111111100010
+11000000000000010011111111100010
+11000000000000011011111111100010
+11000000000000100011111111000100
+11000000000000101100000000010000
+11000000000000110011111111100010
+00100000001000000011111111100010
+01101000000000001100011010100111
+00100000010110100100000001011101
+01110000010001101010011100000001
+00100000011000000000000000000000
+00100000010000000011111111000000
+01101000000010001100011011110011
+00100000010000000110100000011101
+00100100011000001000000000000000
+01011000000000000000000000000000
+00100000010000000110010000010100
+11000000100110000100000011010001
+01011000000000000000000000000010
+00100000010000000110010000010100
+11000100000000111000000000000000
+00100000010000000100000001011101
+00100000010000000011111111011110
+01100000000000001100011010100001
+00011111111100011111111000000000
+00100000010000000100000101101001
+01100000000000001100011010011100
+01101000000000001100011010100001
+00011111111000010111111000001111
+00100000010000000100000101101001
+01100000000000001100011010011110
+01101000000000001100011011110110
+11000000000000000011111110100011
+11000000000000001011111110101011
+11000000000000010011111110100111
+11000000000000011011111110110011
+00100000011000000000000000000000
+01011000000000000000000000010010
+00100000001000000110010000010100
+11000000000110001011111111101010
+00100000001000000100000011010001
+00100000010000000011111111000000
+01111000010101000111110000000000
+01101000000010001100011011110011
+00100000010000000110100000011101
+00100100011000001000000000000000
+01011000000000000000000000000000
+00100000010000000110010000010100
+11000000100110000011111111100000
+01011000000000000000000000000010
+00100000010000000110010000010100
+11000100000000111000000000000000
+00100000010000000100000001011101
+01101000000000001100011010011011
+00100000010000000100000101100101
+01100000000000010100011010011011
+01101000000000001100011010011101
+00100000010000000100000101100101
+01100000000000010100011010011101
+01101000000000001100011011110110
+11000000000000000011111111111010
+11000000000000001011111111111100
+11000000000000010011111111111110
+11000000000000011100000000000000
+00100000011000000000000000000000
+00100000010000000011111110100011
+00100000001000000100000010110011
+00100000010000000011111110101011
+00100000001000000100000010110011
+00100000010000000011111110100111
+00100000001000000100000010110011
+00100000010000000011111110110011
+00100000001000000100000010110011
+01101000000000010100011010011101
+01101000000010010100011010011011
+01100000000000010100011010011011
+01100000000010010100011010011101
+00100000011000000000000000000000
+00100000010000000110010000001111
+00100000000000000000000001100100
+00011010010000100111111000000000
+00100000010000000110010000010100
+00011111111000100010010000000000
+00100000010000000110010000010001
+00100000000000000000000001100100
+00011010010000100111111000000000
+00100000011000000000000000000000
+01111000010101000111110000000000
+01101000000010001100011011110011
+00100000010000000110100000011101
+00100100011000001000000000000000
+11011010010000000000000000000010
+00100000010000000100000000000111
+11000100000000111000000000000000
+11011010010000000000000000000000
+00100000010000000100000000000111
+01100000000000001100011011011101
+11000000100111110100000101000101
+01101000000000001100011010100111
+00100000010110100100000000111001
+01110000010001101010011100000001
+00100000010000000100000000111001
+01101000000000001100011010100001
+00011111111100011111111000000000
+00100000010000000100000101101001
+01100000000000001100011010011100
+01101000000000001100011010100001
+00011111111000010111111000001111
+00100000010000000100000101101001
+01100000000000001100011010011110
+01101000000000001100011011110110
+11000000000000000100000000110001
+11000000000000001100000000110101
+11000000000000010100000000110011
+11000000000000011100000000110111
+00100000011000000000000000000000
+01101000000000001100011010100100
+11000000000000000100000001010001
+11000000000000001100000001000101
+00100000011000000000000000000000
+00100000010000000011111110100011
+00100000001000000100000000101101
+00100000010000000011111110100111
+00100000001000000100000000101101
+00100000010000000011111110101011
+00100000001000000100000000101101
+00100000010000000011111110110011
+00100000001000000100000000101101
+00100000010000000110010000001111
+00100000010000000100000001011101
+11011111111000000000000000000101
+00100000010000000110010000010100
+01100000000000001100011010100001
+11011111111000000000000000000111
+00100000010000000110010000010100
+01100000000000001100011010100010
+11011111111000000000000000001000
+00100000010000000110010000010100
+01100000000000001100011010100011
+00100000001000000110010000010001
+01101000000000001100011010100010
+11000001100000000000000000000000
+01101000000000001100011010100011
+00011111111001100111110000101101
+00100000011000010000000000000000
+01110000010001101010010000000000
+01011000000000001011101001000001
+00100000010000000110010000000101
+01011000000000000000000000110010
+00100000010000000110010000000101
+01011000000000001011010101000001
+00100000001000000110010000000101
+01101000000000001100011010100010
+11000001100000000000000000000000
+01101000000000001100011010100011
+00011111111001100111110000101101
+00100100011000010000000000000000
+01110000010001101010010000000001
+01011000000000001011101001000001
+00100000010000000110010000000101
+01011000000000001000000000110010
+00100000010000000110010000000101
+01011000000000001011010101000001
+00100000001000000110010000000101
+11011111111000000000000000000011
+00100000010000000110010000010100
+01100000000000010100011010011011
+11011111111000000000000000000100
+00100000010000000110010000010100
+01100000000000010100011010011101
+00100000011000000000000000000000
+11011000010000000000000000011011
+00100000010000000110011111111011
+11011000010000000000000000011011
+00100000010000000110100000011101
+00100000011000001000000000000000
+01101000000100001000000100001001
+01111001001000000111111000000100
+01100000000100001000000100001001
+00100000011000000000000000000000
+01101000000010001100011011000000
+01101000000100001000000100001001
+10011000010000001111111000000000
+00100000011110100000000000000000
+01100000000000001100011010011111
+01110000010001101100000000000000
+00100000001000000111111111100111
+01101000000010001100011011000000
+01101000000100001000000100001001
+10011000010000001111111000000000
+01100000000000001100011011000000
+00100000011000000000000000000000
+01101000000000001100011011000000
+00100000011110100000000000000000
+01100000000000001100011010011111
+01110000010001101100000000000000
+00100000001000000111111111100111
+01101000000000001100011010111010
+00100000011110100000000000000000
+01100000000000001100011010100000
+01110000010001101011101000000000
+00100000001000000111111111100111
+11011010001000000000000000000000
+01101000000010001100011011100010
+00100000010000000110100000011101
+01111001001000001010001000000000
+01101000000010001100011011100011
+00100000010000000110100000011101
+01111001001000001010001000000001
+01101000000010001100011011100100
+00100000010000000110100000011101
+01111001001000001010001000000010
+00100000010000000100000010010000
+00011010001000100111111000000000
+00100000011000000000000000000000
+01101000000000001100011011100101
+11000001011111111000000000000000
+01101000000010001100011011100101
+00100000010000000110100000011101
+01111001001000001010001000000011
+01101000000010001100011011100110
+00100000010000000110100000011101
+01111001001000001010001000000100
+00100000011000000000000000000000
+00100000010000000100000010000011
+00100000010000000100000010101000
+00100000010000000100000010100011
+00011010001000100111111000000000
+01101000000010001100011010011010
+01100000000000001100011010011010
+10011000010000101111111000000000
+00011111111001100111110000000000
+00100000011000101000000000000000
+00100000001000000111111111100111
+11000110100100110000000000000000
+00011010001000100111111000000000
+00100000011110100000000000000000
+01100000000000001100011010011010
+00100000001000000111111111100111
+01101000000000010100011010000010
+11000010100001001100000010101101
+01101000000000010100011010000010
+11000010100000000100000010110000
+00100000011000000000000000000000
+00011010001000100111111000000000
+00100100001110100101100000100000
+00100000001000000101100000100010
+00011010001000100111111000000000
+00100100001110100010101111000111
+00100000001000000010101111001001
+01000100111100111100000000011100
+11011000010000000000000000011010
+01101000000000100100011011010011
+00101111111011111111111000010010
+00100000010000001100000010111110
+00100000010000000110100000011101
+00100000011000001000000000000000
+01011000000000000000000000001010
+00100000010000000110010000010100
+00100000000000000000001111101000
+00100000001000000100000010110011
+11011000010000000000000000011111
+00100000011000000000000000000000
+01101000000000100100011011010011
+11000010100010010100000011000100
+11011000010000000000000000011010
+00100000001000000110011111111110
+11011000010000000000000000011111
+00100000001000000110011111111110
+00100000010000000011110100110110
+00100000011101011000000000000000
+00100000010000000100000011000000
+01101000000000001100011011100000
+11000000000000101100000011010101
+00100000010000000100000011011001
+11000000000110000100000011100000
+11000000000110001100000011101010
+00100000010000000100000011010001
+00100000000000000000001111101000
+00100000001000000100000011001011
+01000100111101000100000000011101
+01101000000000100100011011010011
+11000010100010010110001111100000
+00100000001000000110001111010001
+00100000010000000100000011011001
+11000000000111110100000101001011
+00100000010000000100000101000101
+00100000001000000100000011010101
+01011000000000000000000000000001
+00100000010000000110010000010100
+01100000000000001100011011011110
+01011000000000000000000000000000
+00100000010000000110010000010100
+01100000000000001100011011011101
+00100000011000000000000000000000
+01101000000000001100011011011110
+11000000011010001100000100111001
+11000000011010010100000011111000
+11000000000000010100000011101110
+11000000001010100100000011100110
+00100000011000000000000000000000
+01110000010001101110000000000010
+00100000011000000000000000000000
+01110000010001101110000000000110
+00100000011000000000000000000000
+01101000000000001100011011011110
+11000000001110000100000011101000
+01110000010001101110000000000001
+00100000011000000000000000000000
+01110000010001101110000000000100
+00100000010000000100000011110110
+01011000000000000011010000100110
+00100000010000000110010000010011
+01011000000000000000010000011001
+00100000010000000110010000010011
+01011000000000000000000000001001
+00100000001000000110010000010011
+01011000000000000101101000001001
+00100000001000000110010000010011
+01110000010001101110000000000011
+00100000010000000100000011110110
+01011000000000000000111100001101
+00100000010000000110010000010011
+01011000000000001110001100011101
+00100000010000000110010000010011
+01011000000000001101001001111101
+00100000010000000110010000010011
+00100000010000000100000100000010
+00100000001000000100000100011010
+01011000000000000011010100011011
+00100000010000000110010000010011
+01011000000000001011010000101000
+00100000010000000110010000010011
+01011000000000000100011000101001
+00100000010000000110010000010011
+01011000000000001001011000101010
+00100000010000000110010000010011
+01011000000000001000110000101011
+00100000010000000110010000010011
+01011000000000000110111000101100
+00100000010000000110010000010011
+01011000000000000110010000101101
+00100000010000000110010000010011
+01011000000000000101111100111000
+00100000010000000110010000010011
+01011000000000000000111100111001
+00100000010000000110010000010011
+01011000000000000011001000111010
+00100000010000000110010000010011
+01011000000000000100011100111011
+00100000010000000110010000010011
+01011000000000000001000001000010
+00100000001000000110010000010011
+01011000000000000010111001010100
+00100000010000000110010000010011
+01011000000000001111001001010101
+00100000010000000110010000010011
+01011000000000001111010001100001
+00100000010000000110010000010011
+01011000000000000111000001100011
+00100000010000000110010000010011
+01011000000000000101001001110101
+00100000010000000110010000010011
+01011000000000000100000101110110
+00100000010000000110010000010011
+01011000000000001110110101110111
+00100000010000000110010000010011
+01011000000000000010001101111000
+00100000010000000110010000010011
+01011000000000000100011001111001
+00100000010000000110010000010011
+01011000000000001110010101111010
+00100000010000000110010000010011
+01011000000000000100100001111100
+00100000010000000110010000010011
+01011000000000000111011101111110
+00100000010000000110010000010011
+01011000000000000000000101111111
+00100000010000000110010000010011
+01011000000000000000000000001011
+00100000010000000110010000010011
+01011000000000000000000001111111
+00100000010000000110010000010011
+00100000001000000100000011110100
+01110000010001101110000000000000
+00100000010000000100000011110110
+01011000000000000001000000001101
+00100000010000000110010000010011
+01011000000000001110110100011101
+00100000010000000110010000010011
+01011000000000001000000001111101
+00100000010000000110010000010011
+00100000010000000100000100000010
+01011000000000000000100101000011
+00100000010000000110010000010011
+00100000001000000100000100011010
+01101000000010001100011011011100
+00100000010000000110100000101001
+00100000010000000111111011000001
+01101000000010001100011011011100
+00100000010000000110100000100101
+00100000001000000111111011000001
+01110000010001101110000000000101
+01011000000000001011101001000001
+00100000010000000110010000000101
+01011000000000000000110100010001
+00100000010000000110010000000101
+01011000000000000000010000011011
+00100000010000000110010000000101
+01011000000000000000010000011100
+00100000010000000110010000000101
+01011000000000000000111100011101
+00100000010000000110010000000101
+01011000000000000000000000110010
+00100000010000000110010000000101
+01011000000000001011010101000001
+00100000001000000110010000000101
+01011000000000001011101001000001
+00100000010000000110010000000101
+00100000000000000000111110100000
+01011000000000001111111101111111
+00100000010000000110010000000101
+00011010001000100111111000000000
+00100000010000000110010000000101
+01011000000000000000000001111111
+00100000010000000110010000000101
+01011000000000001011010101000001
+00100000001000000110010000000101
+11000100000000111000000000000000
+11011000010000001111111100000000
+10011000010000011111111000000000
+00100000011000000000000000000000
+11000100000000011000000000000000
+11011000010000000000000011110000
+10011000010000011111111000000000
+00100000011000000000000000000000
+00100000010000000101100010010010
+00100100011110100000000000000000
+01101000000000001100011011000101
+00011111111000010111111000000011
+11000001100000011000000000000000
+01101000000000100100011011010011
+11000010100000011100000101111001
+11000010100000000100000101111001
+11000010100000101100000101111001
+00100000010000000011111110010111
+00100100011101000000000000000000
+00100000001000000011111110010000
+01011000000000000000000000000000
+01100000000000111100011010011010
+00100000001000000011111110010000
+00011010011000100111111000000000
+11000000000010100100000111000011
+11000000000000001100001011001010
+11000000000010101100000111011001
+11000000000000010100000111011001
+11000000000000101100000111010110
+11000000000010000100001001101100
+11000000000010010100001010011011
+11000000000000110100000111010101
+11000000000000100100000111001100
+11000000000010011100000111001100
+11000000000001010100000111001010
+11000000000101110011001111001101
+11000000000110001100000110110100
+11000000000110010100000110110110
+11000000000111110100000110010001
+11000000000100111100001110001110
+11000000000111001100000110011100
+11000000000111010100000110010010
+11000000000111100100000110011010
+00100000011000000000000000000000
+00100000001000000011010000010000
+01110000010001111000101100000001
+01101000000000001100011100011110
+00100100001110100100010010010010
+01101000000000001100011100100000
+01101000000010001100011100000011
+10011000010001100111110000000000
+00100000001000101011010000001010
+00100000011000000000000000000000
+01110000010001111000101100000001
+00100000011000000000000000000000
+01110000010001111000101100000001
+11011000111000000000000000000011
+00100000010000000100001111010010
+01011000000000000000000000000000
+01100000000000010100011100000111
+01110000010001101010011100000000
+01101000000000001100011011100000
+00011111111001100111110000000101
+00100000010000101100000000111001
+00100100010000101100000001011101
+01101000000000001000000000000100
+11000010100010011100000110101111
+00100000010000000100000110101010
+00100000001000000110010111010001
+00100000010000000010110001111010
+00011010011000001010001010101110
+11011010010000000000000001011011
+11011000010000000000000000000100
+00100000011000000000000000000000
+00100000010000000010110001111010
+00011010011000001010010010101110
+11101010010000001000000000000000
+01100000000000001100011101111011
+00100000001000000100010000110101
+11011000111000000000000000000010
+00100000001000000100000110111001
+01110000010001101100011000000010
+11011000111000000000000000000001
+00100000001000000100000110111001
+01101000000000001100011011000101
+11111001001000000111111000000000
+01100000000000001100011011000101
+00100000011000000000000000000000
+01101000000000001100011011000101
+11111001001111111111111000000000
+01100000000000001100011011000101
+00100000011000000000000000000000
+01110000010001101100010100000000
+00100000011000000000000000000000
+01101000000000010100001000001010
+01111001001111111111111000000000
+01100000000000010100001000001010
+01011000000000000000000000000000
+01100000000000010100011010101110
+00100000010000000011111110001101
+00100000001000000100001011001010
+00100000010000000110001111001011
+00100000001000000011001111011101
+01101000000000001100011100011110
+00100100001110100100010010010010
+01101000000000010100011010000010
+11000010100001100100001010110000
+01101000000000100100011011010011
+11000010100000000100000111010111
+11000010100000101100001010110000
+11000010100000011010111010101101
+00100000001000000011001110100111
+00100000001000000011111101110100
+00100000011000000000000000000000
+00100000010000000100001111000000
+00100000001000000110010110011010
+01000100111101001100000000011101
+00100000010000000100000111100111
+01101000000000100100011011010011
+11000010100000000100000111010111
+11000010100000011010111010101101
+01101000000000001100011100011110
+00100100001110100100010010010010
+01101000000000010100001000001000
+11000010100000111100000111110101
+11000010100000000011001110101001
+11000010100000001100000111101111
+11000010100000010100000111110010
+11000010100000011100000111110010
+00100000001000000100001010110000
+01011000000000000000000000000000
+01100000000001000100011010110111
+11100000101000100000000000000000
+01110000010001101011010000000000
+01110000010001101010011100000000
+01110000010000011110001000000000
+01110000010001000010100100000000
+00100000011000000000000000000000
+11000010100000101100000111110010
+11000010100000011100000111110010
+00100000001000000100001010110000
+01101000000000010100011010000010
+11000010100001100100001010110000
+00100000001000000011001110100111
+00100000010000000100000111000001
+01101000000000010100001000001000
+11000010100000000011001110101001
+00100000001000000011001110100111
+00100000010000000100001111010110
+00100000010000000100001001000011
+00100000010000000100001001000110
+00100000010000000100001001010000
+00100000010000000100010001011101
+00100000010000000100010001000011
+00100000010000000100001100110011
+00100000010000000100001110100101
+00100000010000000100001111101011
+00100000010000000100001000001001
+00100000010000000100001000110001
+00100000010000000100001000110100
+00100000010000000100001000110111
+00100000010000000100001000111010
+00100000010000000100001000111101
+00100000001000000100001001000000
+01101000000000001100011100010001
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001100011100010001
+00100100011110100000000000000000
+00100000001000000100001000001111
+01101000000000001100011100010010
+11000001000000000000000000000000
+11000000000000101100001000010110
+00100000010000000100001000100101
+01110000010001110001001000000101
+01110000010001110001000100000101
+00100000011000000000000000000000
+00100000010000000100001000101100
+01110000010001110001001000000100
+01110000010001110001000100000101
+00100000011000000000000000000000
+01011000000000001000000000000110
+00100000010000000110010000010011
+00100000000000000000001111101000
+01110000010001110001000100000000
+01110000010001110001001000000000
+00100000001000000100000011100000
+01011000000000001010000000000110
+00100000010000000110010000010011
+01011000000000001010000000000101
+00100000001000000110010000010011
+01110000010001110001000100000000
+01101000000000001100011011100000
+11000000000000100100001000100000
+01011000000000000000000100000110
+00100000010000000110010000010011
+01011000000000001010000100000101
+00100000001000000110010000010011
+01110000010001110001000100000000
+01011000000000000000100100000110
+00100000001000000110010000010011
+01110000010001110001000100000101
+01110000010001110001001000000001
+00100000011000000000000000000000
+11011010011000000100011010000000
+11011010010000000100001010011011
+00100000001000000011001101101101
+11011010011000000100011010101100
+11011010010000000100001001100100
+00100000001000000011001101110100
+11011010011000000100011010101110
+11011010010000000100001001100110
+00100000001000000011001101110100
+11011010011000000100011010110000
+11011010010000000100001001101010
+00100000001000000011001101110100
+11011010011000000100011011000100
+11011010010000000100010001111000
+00100000001000000011001101101101
+11011010011000000100011011000110
+11011010010000000100001001011110
+00100000001000000011001101101101
+11011010011000000100011100000100
+11011010010000000100001001001001
+00100000001000000011001101101101
+11011010011000000100011100000111
+11011010010000000100001001001001
+00100000001000000011001101110100
+00100000011000000000000000000000
+01101000000000100100011011010011
+11000100000010111000000000000000
+01110000010001101101111100001010
+01101000000000001100011011110100
+01100000000000001100011100010101
+00100000011000000000000000000000
+11011010011000000100011011011111
+11011010010000000100001001010011
+00100000001000000011001101101101
+01101000000000001100011011110100
+01100000000000001100011100010101
+01011000000000000000000110010000
+01100000000000010100011100010110
+01100000000000010100011100011000
+11011010001000000000000000000000
+01101000000010001100011101111010
+00011000010000001000010000000001
+01100000000010001100011100010100
+01110000010001110001001100000001
+00100000011000000000000000000000
+01101000000000001100011011000101
+11000011100000010000000000000000
+01110000000010101001100100010010
+00100000010000000111110110001111
+11011000111000000000000000000000
+00100000001000000100000110111001
+00100000010000000100001011001010
+00100000001000000011010000001010
+00100000010000000011001111110110
+01101000000000001100011100011110
+00100100001110100100010010010010
+00100000001000000011010000001010
+11000101000100110111111000011101
+00100000001000000100001110000110
+01000100111101010100000000011101
+01110000010001101011010000000000
+00100000010000000100001110000110
+00100000010000000100000111000001
+00100000001000000100001010110000
+01101000000000110100000111010000
+00100000001110100011001111101011
+00100000010000000100001001111110
+01110000000000010110110100010111
+01101000000000001100011001011010
+00100100001110100011001111100001
+01110000000000010110110100000100
+00100000001000000011001111100001
+01101000000000010100011010101000
+01100000000000010100011010101110
+00100000010000000100001001111110
+00100000010000000011010000011000
+00100000001000000111110111110100
+01011000000000000000000011001000
+01100000000000010100011100010110
+01100000000000010100011100011000
+00100000001000000100001010000101
+01011000000000000000001111101000
+01100000000000010100011100010110
+01100000000000010100011100011000
+01101000000000001100011100100000
+11000000000000001100001010001010
+11000000000000010100001010001100
+11000000000000011100001010001110
+00100000011000000000000000000000
+01101000000000001100011011110000
+00100000001000000100001010001111
+01101000000000001100011011110001
+00100000001000000100001010001111
+01101000000000001100011011110010
+01100000000000001000101010100010
+00100000010000000100010010000010
+01101000000000001000101010100010
+01100000000000001100011100010101
+11011010001000000000000000000000
+01110000010001110001001100000001
+00100000001000000111110100011110
+11011010001000000000000000000000
+00100000001000000111110100011001
+11011010001000000000000000000000
+00100000001000000111110100010100
+00100000001000000100000111000001
+01110000010000011110001000000001
+00100000010000000011010000010110
+00100000010000000011010000010010
+01011000000000000000000000000000
+01100000000000010100011001111110
+01100000000000001100011010000000
+00100000001000000011010000001110
+00100000010000000100001101011111
+01101000000000001100011100100000
+01101000000010001100011100000011
+10011000010001100111110000000000
+00100000001000101100001010101011
+01101000000000001100001000010000
+11000000000110011100001001110001
+11000000000110100100001001111001
+00100000001000000100001010110000
+00100000010000000011110101010111
+11000110000100110000000000000000
+01101000000000001100011100011110
+00100100001110100100010010010010
+00100000011000000000000000000000
+01000100111101011100000000011101
+01101000000000010100011010000010
+11000010100001011100001010110111
+01101000000000100100011011010011
+11000011000011000100001010110111
+00011000000010100111111000000000
+01100000000000001100010010100001
+00100000010000000011010000011000
+01101000000000010100011010000111
+01100000000000010100011010101100
+01110000000000010110110100000110
+01011000000000000000000000000000
+01100000000000010100011010110000
+01100000000000010100011010101110
+11011000111000000000000000000111
+00100000010000000100001111001110
+00100000010000000100001111001010
+01101000000000001100000010010010
+00101111111011111111111000000001
+00100000010000001111110111110100
+01101000000000001100000010010010
+00101111111011111111111000000000
+00100000010000001111110111011101
+01101000000000100100011011010011
+11000010100011100100001000101110
+00100000001000000100001010000010
+01000100111101100100000000011101
+01101000000000001100000010010010
+00101111111011111111111000000001
+00100000010000001100001011010100
+01101000000000001100000010010010
+00101111111011111111111000000000
+00100000010000001100001011010111
+01101000000000100100011011010011
+11000010100011100100001000011010
+00100000001000000100010010000010
+01011000000000000000000000000000
+01100000000000010100011010101110
+00100000001000000111110111111010
+01011000000000000000000000000000
+01100000000000010100011010101100
+00100000001000000111110111100010
+01101000000000100100011011010011
+11000100000000111000000000000000
+11011000111000000000000000000111
+00100000010000000100001111010010
+00100000010000000100001011101000
+00100000010000000100001011111011
+01101000000000100100011011010011
+11000010100010011100010000110101
+11000010100010100100001011100100
+00100000011000000000000000000000
+11011000010000000000000001011000
+11011010001000000100011100100000
+11011010010000000000000000000000
+00100000001000000110010111010001
+01101000000000001000000110000101
+11000000000110100100001011101100
+11000000000110011100001011101111
+00100000011000000000000000000000
+01100000000000001100011011000111
+01101000000000110000010001001111
+00100000001000000100001011110001
+01100000000000001100011011000111
+01101000000000110000000001000000
+01100000000000110100011011001000
+01101000000000111100011011000111
+11011000110000000100011100100001
+11011111001000000000000000000011
+11101000110010111000000000000000
+10011000010001100111110000000000
+00100000001000101100001100010000
+00011000110000001000110000010110
+11000010000000000100001011110101
+00100000011000000000000000000000
+11011010001000000100011100100001
+01101000000000001100011100100000
+00011111111000001111111111111111
+00011111111011111111111000011101
+10011010001000001010001000000000
+01101000000000001000000110000101
+11100010001000001000000000000000
+11000000000110100100001100000101
+11000000000110011100001100001100
+00100000011000000000000000000000
+01101000000000110000010001001111
+11100000101000110000000000000000
+11011000110000000100010000011001
+00100000010000000111111010111111
+01101000000000110100010010100000
+11100000101000110000000000000000
+00100000011000000000000000000000
+01101000000000110000000001000000
+11100000101000110000000000000000
+11011000110000000100000110111110
+00100000001000000111111010111111
+00011000110000001000110111111010
+00011000110000100000101000000000
+01101000000010110100011011001000
+00011000010000001000010000000011
+11100000101010110000000000000000
+00100000011000000000000000000000
+11011000010000000000000001011000
+11011010001000000100011100100000
+11011010010000000000000000000000
+00100000010000000110010111011111
+11011010001000000100011100100001
+01101000000000001100011100100000
+01101000000010001100011100000011
+10011000010001100111110000000000
+00100000011000101000000000000000
+00011111111000001111111111111111
+00011111111011111111111000011101
+10011010001000001010001000000000
+11101010001000001000000000000000
+01100000000000001100001000010000
+11000000000110011100001100100111
+11000000000110100100001100101100
+00100000011000000000000000000000
+11101000110000110000000000000000
+01100000000000110100000111010000
+11011000101000000100000110111110
+00100000010000000111111010111111
+00100000001000000110011111010111
+11101000110000110000000000000000
+01100000000000110100000111010000
+11011000101000000100010000011001
+00100000010000000111111010111111
+11101000110000110000000000000000
+01100000000000110100010010100000
+00100000011000000000000000000000
+01101000000000001100011011110101
+11000010100000101100001101001001
+11000010100000110100001101011001
+00100000001000000100001100110111
+00100000010000000100000010000011
+11000000000000110100001100111110
+01110000010001101101100000011110
+01101000000000001100011011011001
+11000001000000001000000000000000
+01110000010001101101100100000001
+00100000011000000000000000000000
+00100000010000000100001101000011
+01101000000000001100011011011001
+11000001000000000000000000000000
+01110000010001101101100100000000
+00100000001000000100001111000000
+01101000000000001100011011011000
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001100011011011000
+00100100011110100000000000000000
+00100000001000000100001101110000
+01101000000000001100011011101101
+11000001011111111000000000000000
+01101000000010001100011011101101
+00100000010000000110100000011101
+00100000001000001100001101010100
+01101000000000001100011011011001
+11000001000000001000000000000000
+01110000010001101101100100000001
+01101000000000100100011011010011
+11000011100000110000000000000000
+00100000001000000100001101110000
+01101000000000001100011011011001
+11000001000000000000000000000000
+01110000010001101101100100000000
+11011000111000000000000000000110
+00100000001000000100001111010010
+01101000000000001000000000000100
+11000100000000110000000000000000
+01101000000000001100011100100000
+11000000000000001100001101101001
+11000000000000010100001101101100
+00100000011000000000000000000000
+01101000000000001000000000000100
+11000100000000110000000000000000
+01101000000010001100011011101101
+00100000010000000110100000011101
+00100000001000001100001101100110
+01110000010001110010000000000001
+00100000011000000000000000000000
+01101000000000001100011100000011
+01100000000000001100011100100000
+00100000011000000000000000000000
+01101000000010001100011011101101
+00100100001000001100001101110000
+00100000011000000000000000000000
+01101000000010001100011011101101
+00100000010000000110100000011101
+00100000001000001100001101010100
+00100000011000000000000000000000
+01101000000010001100011100100000
+00011000010000001000010000000001
+01101000000000001100011011010010
+10011000010001100111110000000000
+00100100010000010100001111001100
+01100000000010001100011100100000
+01110000010000011011110100000000
+00100000010000000100001101111010
+00100000010000000100001111000000
+00100000001000000100001101111110
+11011000010000000000000000000001
+11011010001000000100011100100000
+11011010010000000000000000000000
+00100000001000000110011000000110
+00100000010000000100001110000001
+00100000010000000100001111000010
+00100000001000000100000111010111
+01101000000000010100011010000010
+11000010100000111100001110010010
+11000010100001001011010000000010
+11000010100000000011001111101001
+00100000001000000100001011001010
+01000100111101101100000000011101
+01011000000000000000000000000000
+01100000000000010100011010110000
+01101000000000010100011010000010
+11000010100001001011010000000010
+01101000000000010100011010000010
+11000010100000000011001111101001
+00100000011000000000000000000000
+01011000000000000000000000000001
+01100000000000110000000001000000
+01110000000000011000010100110011
+00100000001000000100001011011111
+00100000010000000100001111000100
+00100000001000000111111000101111
+01101000000000001100011011101100
+11000001011111111000000000000000
+01101000000010001100011011101100
+00100000010000000110100000011101
+00100000001000001100001110011111
+01101000000000001100011010000101
+01100000000000001100011011011010
+01101000000000001100011011011011
+11000001000000001000000000000000
+01110000010001101101101100000001
+00100000001000000100001111001010
+00100000010000000100001110110101
+01101000000000001100011011011011
+11000001000000000000000000000000
+01110000010001101101101100000000
+00100000010000000111111000101111
+00100000001000000100001111001000
+01101000000000001100011011110101
+11000010100000100100001110010100
+00100000010000000100000010000011
+11000000000000111100001110101111
+01101000000000001100011010000101
+01100000000000001100011011011010
+01101000000000001100011011011011
+11000001000000001000000000000000
+01110000010001101101101100000001
+00100000001000000100001111001010
+00100000010000000100001110110101
+01101000000000001100011011011011
+11000001000000000000000000000000
+01110000010001101101101100000000
+00100000010000000111111000101111
+00100000001000000100001111001000
+11011010011000000100011011011010
+11011010010000000100001110111000
+00100000001000000011001101101101
+11011000111000000000000000000110
+00100000010000000100001111001110
+00100000010000000011001101010111
+00100000001000000100001001101100
+11011000111000000000000000000001
+00100000001000000100001111001110
+11011000111000000000000000000001
+00100000001000000100001111010010
+11011000111000000000000000000000
+00100000001000000100001111001110
+11011000111000000000000000000000
+00100000001000000100001111010010
+11011000111000000000000000000010
+00100000001000000100001111001110
+11011000111000000000000000000010
+00100000001000000100001111010010
+11011000111000000000000000000101
+00100000001000000100001111001110
+11011000111000000000000000000101
+00100000001000000100001111010010
+11011000010000000000000000000001
+00100000011000000000000000000000
+01101000000000100100011011010011
+11111001001000000111111000000000
+01100000000000100100011011010011
+00100000011000000000000000000000
+01101000000000100100011011010011
+11111001001111111111111000000000
+01100000000000100100011011010011
+00100000011000000000000000000000
+01101000000000100100011011010011
+11000100000011010000000000000000
+01101000000000001100011011001110
+00011111111000001111111000000001
+01100000000000001100011011001110
+00011111111001100111110000001010
+00100000011000010000000000000000
+01110000010001101100111000000000
+00100000010000000110100011101011
+00100000010000000110100100001000
+01100000000000010100011100001111
+11011010001000000100011100001001
+00100000010000000110100100110000
+01101000000000001100001000110001
+11000010100000001100010010100000
+11000011000000000100001111101001
+00100000001000000100001111100111
+11011000111000000000000000000100
+00100000001000000100001111001110
+11011000111000000000000000000100
+00100000001000000100001111010010
+01101000000000100100011011010011
+11000100000000100000000000000000
+01101000000000001100011011101111
+01100000000000001100011100010101
+01101000000000001100011011001111
+00011111111000001111111000000001
+01100000000000001100011011001111
+00011111111001100111110000010100
+00100100010000010100001111111001
+11000000000000010100001111111011
+11000000000000100100001111111110
+11000000000000110100001111111011
+11000000000001000100001111111110
+00100000011000000000000000000000
+01110000010001101100111100000001
+00100000001000000100001111111110
+11011010001000000000000000000000
+01110000010001110001001100000010
+00100000001000000111110100010100
+11011010001000000000000000000000
+01110000010001110001001100000010
+00100000001000000111110100011001
+00100000010000000011111110010111
+00100100011101000000000000000000
+11011010001000000000000000000111
+11011010010000000100011010011010
+00100000011000000000000000000000
+01101000000000001100011110001011
+00100000011110100000000000000000
+01101000000010001100011011100111
+00100000010000000110100000011101
+00100000010000001100010000010000
+01101000000000001100011100000100
+00100100011110100000000000000000
+00100000010000000100000010000011
+00100100011110100000000000000000
+00100000001000000010110110000011
+01101000000000001100011011100111
+11000001011111111000000000000000
+01110000010001110000010000001010
+00100000011000000000000000000000
+00100000010000000100010000100011
+01101000000000010100011101111000
+11011000010000001010101001010101
+10011000010001100111110000000000
+00100000001000101100010000101011
+01100000000010010100011101111000
+00100000010000000100010000011100
+00100000001000000100010000110101
+01101000000000110100010010100000
+01100000000000110100011100111000
+00011111111000001111111100000000
+01100000000000110100011101010101
+00011111111000001111111100000000
+01100000000000110100011101110010
+00100000011000000000000000000000
+01011000000000000100011101111000
+11011000010000000100011100100000
+10011000010001100000010000000000
+01101000000000011100011100000000
+10011000010000001111111000000000
+11011000010000000000000000000010
+11011010001000000100011101111000
+00100000001000000110010101100010
+01011000000000000100011101111111
+11011000010000000100011100100000
+10011000010001100000010000000000
+01101000000000011100011100000000
+11011010001000000100011100100000
+00100000010000000110010101100010
+00100000010000000100001100011010
+01101000000000100100011101111011
+00100000010000000010110001111010
+00100000001000000011001000101100
+01011000000000000100011101111111
+11011000010000000100011100100000
+10011000010001100000010000000000
+11011010001000000100011100100000
+01101000000000011100011100000000
+00100000001000000110010100010100
+11011000010000000000000000000001
+11011010001000000100011101111010
+11011010010000000000000001011010
+00100000001000000110010111010001
+11011000010000000000000000000001
+11011010001000000100011101111010
+11011010010000000000000001011010
+00100000001000000110010111011111
+11000110000100110000000000000000
+01101000000000100100011011010011
+11000100000010110000000000000000
+01101000000000001100011100000101
+00011111111000001111111000000001
+00011111111000010111111000000111
+01100000000000001100011100000101
+11000001100000111000000000000000
+01101000000000010100011010000010
+11000010100000000100010001001111
+11000010100001001100010001001111
+00100000011000000000000000000000
+01000100111101110100000000011101
+01101000000000001100011100000110
+00100100011110100000000000000000
+01101000000000100100011011010011
+11000100000001000000000000000000
+01101000000000001100011010100101
+00100000010000000110001111111011
+01100000000000001100011010100110
+00011111111001100111110000010000
+00100000001000010100010001011011
+01110000010001110000011000000000
+00100000011000000000000000000000
+01110000010001110000011000011110
+00100000011000000000000000000000
+11011010011000000100011100000110
+11011010010000000100010001100000
+00100000001000000011001101101101
+01101000000000001100011010100101
+00100000010000000110010000010100
+00011111111001100111110000010000
+00100100011000010000000000000000
+01101000000000100100011011010011
+11000100000001000000000000000000
+11011000111000000000000000001000
+00100000010000000100001111010010
+01110000010000010111001000000000
+01110000010001101100010000011110
+00100000010000000100010010000010
+01101000000000100100011011010011
+11000010100010101100010001110001
+01101000000000001100011100100000
+11000000000000001100010010001001
+11000000000000010100010001110110
+00100000011000000000000000000000
+01101000000000001100011100100000
+11000000000000001100010010001001
+11000000000000010100010010001100
+11000000000000011100010010001111
+00100000011000000000000000000000
+01101000000000001100011011110000
+00100000001000000100001010001111
+01110000010000010111001000100000
+00100000001000000100010010000010
+01101000000000001100011011110000
+11000001011111111000000000000000
+01100000000000001100011100010101
+00100000001000000100001010010110
+01101000000000001100011011110001
+11000001011111111000000000000000
+01100000000000001100011100010101
+00100000001000000100001010010110
+00100000010000000100001010010110
+00100000010000000100010001111010
+00100000010000000100010001111110
+01101000000000001100011011110010
+11000001011111111000000000000000
+01100000000000001100011100010101
+00100000001000000100001010010110
+01101000000000001100011011110000
+01100000000000001100011100010101
+00100000001000000100001010011000
+01101000000000001100011011110001
+01100000000000001100011100010101
+00100000001000000100001010011000
+01101000000000001100011011110010
+01100000000000001100011100010101
+00100000001000000100001010011000
+01000100111101111100000000011101
+01101000000000001100011100011110
+00011111111000001111111111111111
+01100000000000001100011100011110
+01101000000010001100011100100000
+00011000010000001000010000000001
+01101000000000001100011011010010
+10011000010001100111110000000000
+00100100010000010100001111001100
+01100000000010001100011100100000
+01110000010000011011110100000000
+00100000010000000100001101111010
+00100000010000000100001011111011
+00100000001000000100001010100010
+00100000010000000100010010000010
+01011000000000000000000000000000
+01100000000001000000000010100001
+00100000001000000010101100011111
+00100000011101011000000000000000
+01101000000100001000000010000001
+00011111111000010111111011110000
+01100000000100001000000010000001
+00100000010000000110100101001000
+01011000000000000100010011100110
+01100000000000010100000111101011
+01011000000000000100010011101001
+01100000000000010100000111101101
+01011000000000000100010011101111
+01100000000000010100000111110011
+01011000000000000100010011110010
+01100000000000010100000111110101
+01011000000000000011001111010000
+01100000000000010100000111101001
+00100000010000000010110001111010
+01011000000000000100010111000010
+00011010011000001000101011011000
+11100000101000010000000000000000
+01011000000000000100010011101010
+00011010011000001000101011011010
+11100000101000010000000000000000
+01011000000000000100010011101001
+00011010011000001000101011011100
+11100000101000010000000000000000
+01011000000000000100010100001110
+01100000000000010100000111111101
+01011000000000000100010011011010
+01100000000000010100011101011011
+01011000000000000100010011010110
+01100000000000010100011101011111
+01011000000000000100010101100000
+01100000000000010100011100001111
+01000100111110000100000000011110
+00100000010000000100010011100010
+00100000010000000111111000111000
+01110000010000010111001000000010
+01101000000000001100011100101011
+01100000000000001100011010011010
+11000000000000000100010011010101
+01101000000000001100011100101100
+01100000000000001100011010000110
+00100000010000000100010011011011
+00100000010000000111110011010011
+00100000010000000111110011011101
+01110000010001110101011100000001
+01101000000000010100011010000010
+11000011100001100000000000000000
+00100000001000000011010000001010
+01110000010001110101011100000010
+00100000010000000100010011011011
+11011010001000000000000000000000
+00100000010000000111110100011110
+00100000001000000010111011100100
+00100000001000000100010011011011
+01000100111110001100000000011110
+01101000000000001100011100101001
+11000000111111111100010011100000
+01101000000010001100011100000110
+00100000001000000110100000001110
+01100000000000001100011100000110
+00100000001000000100010011011110
+00100000010000000010110010011101
+01101000000000010100011101010011
+01100000000000010100011101010101
+00100000001000000100010100010101
+00100000010000000110100000110101
+00100000010000000100010011101001
+00100000001000000011010000001010
+00100000001000000110100101101100
+01101000000000001100011101100101
+00100000011110100000000000000000
+00100000001000000010110110000011
+00100000011000000000000000000000
+00100000001000000110100101111000
+00100000010000000100010101000100
+00100000010000000100010100000011
+00100000001000000100010011101110
+00011010011000100111111000000000
+11000000000101101011010000110001
+11000000000010000011010000011010
+11000000000111001100010011111011
+11000000000111100100010011111111
+11000000000111010100010011111001
+00100000011000000000000000000000
+01110000010001110110010100000001
+00100000011000000000000000000000
+01110000010001110110010100000001
+01110000010001110110001100000001
+01110000010001110110010000000001
+00100000011000000000000000000000
+01110000010001110110010100000001
+01110000010001110110001100000001
+01110000010001110110010000000001
+00100000011000000000000000000000
+01101000000000001100011101100011
+11000001000000000000000000000000
+01101000000000001100011101100010
+11000001000000001000000000000000
+01110000010001110110001000000001
+11011010001000000000000000000000
+00100000001000000111110100011001
+11011010001000000000000000000000
+00100000010000000111110100011001
+00100000010000000100010011011011
+00100000001000000011010000001010
+00100000010000000011001101111011
+00100000001000000100010100010000
+01101000000000001100011100101101
+00100000011110100000000000000000
+11011010011000000100011101010101
+11011010010000000100010100001010
+00100000001000000011001101110100
+00100000010000000100010100011010
+01100000000010010100011100011010
+00100000010000000100010100011111
+01100000000010010100011100011100
+00100000011000000000000000000000
+01101000000000010100011100011010
+01100000000000010100011100011110
+00100000010000000100010101000000
+00100000010000000100010100100101
+01100000000000001100011100100100
+01101000000000010100011100011100
+01100000000000010100011100011110
+00100000010000000100010101000010
+00100000010000000100010100100101
+01100000000000001100011100100101
+00100000011000000000000000000000
+01101000000000010100011100100000
+00011111111000100010001000000000
+01101000000000010100011100011110
+00100000010000000100010100101110
+01101000000000001100011100011001
+00100100001110100100010100110111
+00100100011000010000000000000000
+01101000000010010100011100011110
+00100000011000000000000000000000
+10011000010001100111111000000000
+00100000001000010100010100110100
+00011111111001100111111000000000
+01110000010001110001100000000001
+10011010001001100111110000000000
+00100000011000000000000000000000
+01110000010001110001100000000000
+10011010001001100111110000000000
+00100000011000000000000000000000
+00100100001000010100010100111110
+01101000000000001100011100011000
+00100100001110100100010100111100
+01011000000000000000000000000001
+00100000011000000000000000000000
+01011000000000000000000000000010
+00100000011000000000000000000000
+01011000000000000000000000000000
+00100000011000000000000000000000
+01110000010000100010111000110011
+00100000001000000110100011101011
+01110000010000100010111000110100
+00100000001000000110100011101011
+01101000000000001100011100101010
+11000001100000001000000000000000
+01000100111110010100000000011110
+01110000010001110001100100000001
+00100000010000000100010100011010
+01101000000000010100011100100100
+01101000000010010100011100100010
+10011000010001100111110000000000
+00100000011000101000000000000000
+01100000000000010100011100100010
+00100000010000000100010101010000
+00100000001000000100010101010100
+01101000000000001100011100100100
+00100000001110100100010101011010
+00011111111000001111111111111111
+00100000001000000100010101010111
+01101000000000001100011100100101
+00100000001110100100010101011101
+00011111111000001111111000000001
+00011111111000100000111000000000
+11011010001000000000000000000001
+00100000001000000100010101100000
+11011000111000000000000000000000
+11011010001000000000000000000000
+00100000001000000100010101100000
+11011000111000000000000000000010
+11011010001000000000000000000000
+00100000001000000100010101100000
+00011010001000100111111000000000
+01100000000000001100011101100001
+01101000000000001100011101100011
+11000000000000000010111011100100
+01101000000000010100011101010011
+01100000000000010100011101010101
+01101000000000001100011101100001
+00100000001110100100010110000000
+01000100111110011100000000011110
+11011010001000000000000000000000
+00100000010000000111110100010100
+00011000111000100111111000000000
+11000000000000100100010110100011
+11000000000000101100010110100101
+11000000000000110100010110100111
+00100000010000000100010110001011
+11000000000000000100010101110100
+11000000000000010100010101111010
+11000000000000011100010101110100
+00100000011000000000000000000000
+00011000111000100111111000000000
+11000000000000000100010110001111
+11000000000000001100010110010001
+11000000000000010100010110010011
+11000000000000011100010110010101
+00100000011000000000000000000000
+00011000111000100111111000000000
+11000000000000000100010110010111
+11000000000000001100010110011010
+11000000000000010100010110011101
+11000000000000011100010110100000
+00100000011000000000000000000000
+01000100111110100100000000011110
+11011010001000000000000000000000
+00100000010000000111110100011001
+00011000111000100111111000000000
+11000000000000100100010110111100
+11000000000000101100010110111100
+00100000010000000100010110001011
+11000000000000000100010110101001
+11000000000000010100010110101111
+11000000000000011100010110101001
+00100000011000000000000000000000
+01101000000000001100011100101000
+01101000000010001100011100100111
+10011000010000011111111000000000
+00100000011000000000000000000000
+01110000010001110011010000000001
+00100000001000000100010110111110
+01110000010001110011010000000010
+00100000001000000100010110111110
+01110000010001110011011000000001
+00100000001000000100010110111110
+01110000010001110011011000000010
+00100000001000000100010110111110
+01110000010001110011010000000001
+01110000010001110011011000000001
+00100000001000000100010110111110
+01110000010001110011010000000010
+01110000010001110011011000000010
+00100000001000000100010110111110
+01110000010001110011010000000010
+01110000010001110011011000000001
+00100000001000000100010110111110
+01110000010001110011010000000001
+01110000010001110011011000000010
+00100000001000000100010110111110
+01110000010001110011100000000001
+00100000001000000100010110111110
+01110000010001110011100000000010
+00100000001000000100010110111110
+01110000010001110100000100000001
+00100000001000000100010111000000
+00011000111000100111111000000000
+11000000000000000100010110110101
+11000000000000001100010110110101
+11000000000000010100010110110111
+11000000000000011100010110110111
+00100000011000000000000000000000
+00011000111000100111111000000000
+11000000000000000100010110111001
+11000000000000001100010110111001
+11000000000000010100010110111001
+11000000000000011100010110111001
+00100000011000000000000000000000
+01110000010001110011010000000000
+00100000001000000100010110111110
+01110000010001110011011000000000
+00100000001000000100010110111110
+01110000010001110011010000000000
+01110000010001110011011000000000
+00100000001000000100010110111110
+01110000010001110011100000000000
+00100000001000000100010110111110
+11011010001000000100011100101110
+00100000001000000111111000111101
+11011010001000000100011100111011
+00100000001000000111111000111101
+01101000000000001100011101100100
+11000000000000001100010111001100
+11011010001000000100011101000100
+00100000010000000111111001010100
+00100100001101000100010111010001
+11011000110000000100011101000100
+11101000110000001000000000000000
+00011111111000100010001000000000
+11011010010000000100011101000101
+00100000011000000000000000000000
+01110000010001110110010000000000
+01111000001101000111110000000000
+11011010001000000000000000000001
+11011010010000000100011101100110
+00100000011000000000000000000000
+01101000000000001100011101000111
+11000000000000100100010111010101
+11000000000000101100010111010101
+00100000011000000000000000000000
+01101000000000001100011101001010
+00100100001110100100010111011100
+01101000000000001100011101001100
+00100100001110100100010111011100
+01101000000000001100011101001110
+00100100001110100100010111011100
+00100000011000000000000000000000
+01111000001101000111110000000000
+00100000001000000100010111000111
+00100000011101011000000000000000
+01101000000100001000000010000001
+00011111111000010111111011111100
+01100000000100001000000010000001
+01011000000000000100011010110100
+01100000000000010100000111101011
+01011000000000000100011010110011
+01100000000000010100000111101101
+01011000000000000011010000001010
+01100000000000010100000111110111
+01011000000000000100011010110001
+01100000000000010100000111110011
+01011000000000000100011000010010
+01100000000000010100000111110101
+01011000000000000100011000001100
+01100000000000010100000111101001
+01011000000000000100011101101010
+01100000000000010100000111111001
+01011000000000000100011010000110
+01100000000000010100000111111101
+01011000000000000100011100101001
+01100000000000010100011011100111
+01011000000000000100100000000110
+01100000000000010100011011100010
+01011000000000000100100000000111
+01100000000000010100011011100100
+00100000010000000101011110100011
+00100000010000000100011111011010
+00100000010000000100011110001000
+00100000010000000100011101101101
+00100000010000000110100101001000
+00100000010000000100011101111010
+00100000010000000111111000111000
+00100000010000000111110100001000
+00100000010000000100011110010011
+00100000010000000100011111000111
+01000100111110101100000000011110
+00100000010000000100011001001111
+01101000000000001100011011011101
+11000000000000000100011000001001
+01101000000000001100011011011110
+01100000000000001100011010000110
+00100000001000000100100000001110
+01110000010001101000011011111111
+01110000010001101101111100000001
+00100000001000000100011011011001
+01101000000000001100011011011111
+11000000000000010011001111010000
+00100000010000000101001001111110
+01101000000000001100001001010110
+00100100001110100011001111010000
+00100000001000000011001111010010
+00011010011000100111111000000000
+11000000000000001100011000100110
+11000000000000010100011000101001
+11000000000000100100011000110001
+11000000000000101100011000110011
+11000000000000110100011000110101
+11000000000000111100011000111000
+11000000000010010100011000111100
+11000000000010011100011001000100
+11000000000100111100011001000101
+11000000000101110100011001001000
+11000000000111101100011001001001
+11000000000010100100011001011000
+11000000000010101100011001011100
+11000000000111111100011001011111
+11000000001000000100011001100101
+11000000000010000100011001101011
+11000000000101100100011001101100
+11000000000101101100011001110111
+00100000011000000000000000000000
+01110000010001101010110100000000
+01110000010001101010110000000000
+00100000011000000000000000000000
+00100000010000000100011000101011
+00100000001000000100011000110001
+01110000010000011110001000000000
+01110000010001101000000000000000
+01110000010000100000010100000000
+01110000010001101010110000000000
+01110000010001101010110100000000
+00100000001000000111111000111000
+00100000010000000011001110101001
+00100000001000000100011011000010
+00100000010000000100011010110110
+00100000001000000011010000001000
+01011000000000000000000000000010
+01100000000000001100011010000000
+00100000011000000000000000000000
+01110000010001101010110000000000
+01011000000000000000000000000001
+01100000000000001100011010101101
+00100000011000000000000000000000
+01101000000000001100000111100010
+11000001000000001000000000000000
+01110000010000011110001000000001
+00100000010000000011010000010110
+00100000010000000011010000010100
+00100000010000000100011010110110
+00100000010000000011010000001000
+00100000001000000011010000001110
+00100000001000000100011000110001
+01011000000000000000000000000101
+01100000000000001100011010101100
+00100000011000000000000000000000
+00100000001000000011001111001101
+11011010010000000000000000000000
+01101000000000001100001000010111
+00011111111011111000010000100010
+01101000000000010100001000010101
+00011111111000100010001000000000
+00100000001000000110011000000110
+11011010010000000000000000000000
+01101000000000001100011010011010
+11000100000000001000000000000000
+01101000000000001100001000010111
+00100000011110100000000000000000
+00011111111011111000010000100010
+01101000000000010100001000010101
+00011111111000100010001000000000
+00100000001000000110010111011111
+00100000010000000100011010110110
+01011000000000000000000000000000
+01100000000000010100011010110111
+00100000001000000011010000001000
+00100000010000000111111000111000
+01110000010001101011000000000000
+00100000001000000100011011011001
+00100000010000000111111000111000
+01110000010001101011000000000001
+01101000000001000100011011000001
+01100000000001000100010010010110
+00100000010000000011010000010110
+00100000001000000101101010111111
+01101000000000010100010100001001
+11000001000000000000000000000000
+01101000000001000100011011001001
+00100000011110100000000000000000
+01100000000001000100010010010110
+00100000001000000101101010111111
+00100000001000000100100000011111
+01101000000000001100011011011101
+11000001000000000000000000000000
+01101000000000001100011011011111
+11000001100000001000000000000000
+00100000010000000100011001110010
+00100000001000000011010000000110
+01110000010010001101111100000001
+11011111001000000000000000001011
+11011000101000000100100011100000
+11011000110000000100100011001001
+00100000001000000111111100000001
+01101000000000001100011011011101
+11000001000000000000000000000000
+01101000000000001100011011011111
+11000000000000001100011001111100
+00100000001000000100100000011011
+01101000000000001100100011011111
+11000001100000001000000000000000
+01110000010010001101111100000000
+01101000000000010100011010000010
+11000010100000000011010000001000
+11000010100001001011010000001000
+11011111001000000000000000001011
+11011000110000000100100011100000
+11011000101000000100100011001001
+00100000001000000111111100000001
+00100000010000000100011010001100
+00100000010000000100011010010011
+00100000010000000100011010011110
+00100000010000000100011010100110
+00100000010000000100011010101001
+00100000001000000100011010101100
+11011010011000000100011011011011
+11011010010000000100011010001111
+00100000001000000011001101110100
+01110000010001101101111100000010
+00100000010000000011010000001000
+00100000010000000100011011110100
+00100000001000000100100000001011
+11011010011000000100100011101100
+11011010010000000100011010010110
+00100000001000000011001101101101
+01101000000000010100011010000010
+11000010100001001100100000001011
+11000010100000000100100000001011
+01101000000000001100100011001001
+11000000000000001100100000001011
+11000000000000100100100000001011
+11000000000000101100100000001011
+00100000001000000011010000001010
+11011010011000000100011010101100
+11011010010000000100011010100001
+00100000001000000011001101101101
+01101000000000001000001001111111
+01111001001000000111111000000000
+01111001001000000111111000000111
+01100000000000001000001001111111
+00100000011000000000000000000000
+11011010011000000100011010000000
+11011010010000000100011000111100
+00100000001000000011001101101101
+11011010011000000100011010101101
+11011010010000000011001111101001
+00100000001000000011001101101101
+01101000000000001100011011011111
+11000001100000001000000000000000
+11011010011000000100011010110111
+11011010010000000100011011000010
+00100000001000000011001101110100
+00100000010000000100011100111010
+00100000001000000110100101111000
+00100000001000000110100101101100
+00100000010000000110100000110101
+00100000001000000100011010110011
+01101000000000001100011010011010
+11000010100000001100011010111110
+11000010100000000100011010111010
+00100000011000000000000000000000
+01101000000000010100011011010111
+01100000000000010100011011011001
+01100000000000010100011011011011
+00100000001000000011001111111000
+01101000000000010100011011010011
+01100000000000010100011011011001
+01100000000000010100011011011011
+00100000001000000011001111110000
+01101000000000001100011011011111
+11000001100000001000000000000000
+01101000000000001100011010011010
+11000010100000001100011011001000
+11000010100000000100011011001100
+00100000011000000000000000000000
+01101000000000010100011011010001
+01100000000000010100011011011001
+01100000000000010100011011011011
+00100000001000000011001111101011
+01101000000000010100011010000010
+11000011100001001000000000000000
+01101000000000010100011011010101
+01100000000000010100011011011001
+01100000000000010100011011011011
+01101000000000010100011010110011
+00100000010000000100011011110000
+00100000010000000011010000000100
+01101000000000100100011010111101
+01100000000000100100100011001100
+01101000000000010100011010000010
+11000011100001011000000000000000
+00100000001000000011001111111010
+01101000000000001100011011011111
+11000001100000001000000000000000
+01101000000000001100011010011010
+11000010100000001100011011011111
+11000010100000000100011011100100
+00100000011000000000000000000000
+00100000010000000100011011111000
+00100000001110100100011011000010
+00100000010000000011010000000110
+00100000010000000011001111110000
+00100000001000000011001111100001
+01101000000000010100011010110111
+01101000000010010100011010110101
+01100000000010010100011010110111
+00100100011110100000000000000000
+01101000000000010100011010110001
+00100000010000000100011011110000
+00100000010000000011010000000100
+01101000000000100100011010111001
+01100000000000100100100011001100
+01101000000000010100011010000010
+11000011100001011000000000000000
+00100000001000000011001111111010
+01100000000000010100000101010100
+00011111111000001111111111111100
+01100000000000010100010010000010
+00100000011000000000000000000000
+01101000000000010100011010000010
+11000010100001001011010000000010
+11000010100000000011001111101001
+00100000001000000100011010110110
+01101000000000001100001000010111
+00011111111000100111001000000000
+01101000000000010100001000010101
+00011111111000100010001000000000
+11101010001000010000000000000000
+11000000000000000100011100000001
+00011010001000001010001000100010
+11000010000000000100011011111100
+00100000001000000111111111110001
+11101000110000110000000000000000
+01100000000000110100000111010000
+00011000110000001000110000001010
+11011000101000000100000110111110
+00100000010000000111111010111111
+00100000010000000110011111010111
+00100000001000000111111111101111
+00100000010000000111111111101001
+01101000000000010100011010000010
+11000010100000000100011100001101
+11000010100001001100011100010000
+00100000011000000000000000000000
+01101000000000001100001001010011
+11000001100111111000000000000000
+00100000001000000111111111100111
+01101000000000001100011010110000
+00100000011110100000000000000000
+00100000001000000111111111100111
+00100000010000000111111111101001
+01101000000000010100011010000010
+11000011100000000000000000000000
+11000011100001001000000000000000
+00100000001000000111111111100111
+01101000000000001100011010011010
+11000010100000001100011100011100
+11000010100000000100011100011111
+00100000011000000000000000000000
+01101000000000001100000010010011
+11000001100000011000000000000000
+00100000001000000100011011011001
+00100000001000000100011011011001
+01111000010101100111110000000000
+01101000000000010100011011011001
+01100000000000010100011011011011
+00100000010000000100011100010011
+00100000001101000100011100011000
+00100000010000000100011100001000
+00100100011101000000000000000000
+01111000001101100111110000000000
+00100000011000000000000000000000
+00100000010000000100011100100000
+00100100011101100000000000000000
+00011010001000100111111000000000
+00100000001110100100011100110000
+00100000010000000011010000000110
+11011010011000000100011011110001
+00100000001000000100011100110010
+00100000010000000011010000001000
+11011010011000000100011100011001
+11011111111000000000000000000101
+10011000111011111111111000000000
+10011010011000001010011000000000
+11101010011000001000000000000000
+00100000011110100000000000000000
+00100000010000000100011101100010
+00011010011000001010011000000001
+00100000001000000100011100110101
+01101000000000010100011010000010
+11000010100001001100011100111110
+11000010100000000100011101001110
+00100000011000000000000000000000
+00100000010000000101100010010010
+00100100011110100000000000000000
+00100000010000000100011101100101
+00100100011101000000000000000000
+00011111111000001111111111111111
+00011111111011111111111000000101
+11011000010000000100011101000001
+10011000010000001000110000000000
+11101000110000001000000000000000
+00011111111000100010001000000000
+11101000110010010000000000000000
+00100000010000000111111010100101
+00100000010000000101101001100100
+00011010001000100111001000000000
+00100000010000000111111010011111
+00100000001000000111111100000001
+00100000010000000101001001110001
+00100100011110100000000000000000
+00100000010000000100011101100101
+00100100011101000000000000000000
+00011111111000001111111111111111
+00011111111011111111111000000101
+11011000010000000100011110100000
+10011000010000001000110000000000
+11101000110000101000000000000000
+01100000000000101100011110011011
+01101000000000001100011110011011
+00011111111000100010001000000000
+00100000010000000100110101100011
+01101000000000010100001001001110
+11100000101000010000000000000000
+01011000000000000000000010100001
+11100000101000001000000000000000
+01101000000000100100011110011100
+11100000101001001000000000000000
+00100000011000000000000000000000
+01100000000000001000101010011010
+11011010001000000000101010011010
+00100000001000000111111000111101
+11011010001000000000101010011010
+00100000010000000111111001010100
+00100100011101000000000000000000
+01101000000000001000101010011010
+00100000011000000000000000000000
+01101000000000010000010001111000
+11000000000011000100011001011111
+00100000011000000000000000000000
+01011000000000000000000000000010
+01100000000000001100100011101011
+01011000001000000000000000001000
+01100000000000100100011011000001
+01011001001011000000000000000101
+11100000101000100000000000000000
+01110000010001001010011000010111
+01011000000000000000000000011011
+01100000000000010100010011111010
+00100000010000000101100000010000
+00100000010000000101100000101100
+00100000010000000101100000111001
+00100000001000000101100000011000
+11011111001000000000000000101000
+11011000101000000100011101000001
+11011000110000001001010010011111
+00100000010000000111111011110100
+11011111001000000000000000101000
+11011000101000000100011110100000
+11011000110000001001010011000111
+00100000001000000111111011110100
+11011111001000000000000101111110
+11011000110000001001000100111010
+00100000001000000111111011110100
+11011111001000000000000111100111
+11011000110000001001001010111000
+00100000001000000111111011110100
+00100000010000000100011110101110
+00100100011101000000000000000000
+01101000000000001100011010011111
+00100000010000000100011110010000
+01101000000000001100011010100000
+00100000010000000100011110010000
+01101000000000001100011010100001
+00100000001000000100011110010000
+00100000011110100000000000000000
+00011111111000011000010010000000
+00100000001000000110011111111001
+00100000010000000100011110101110
+00100100011101000000000000000000
+00100000010000000100011110010111
+00100000001000000100011110110100
+11011010001000000000000000000000
+01101000000000001100011010011111
+00100000010000000100011110101001
+01111101001110100010001000000000
+01101000000000001100011010100000
+00100000010000000100011110101001
+01111101001110100010001000000001
+01101000000000001100011010100001
+00100000010000000100011110101001
+01111101001110100010001000000010
+00011010001000100111111000000000
+01100000000000001100011010101001
+01101000000000001100011010011110
+10011010001011111111111000000000
+01101000000010010100011010011100
+10011000010000001111111000000000
+01100000000000010100011010101010
+00100000011000000000000000000000
+00100000011110100000000000000000
+00011111111000011000010010000000
+00100000010000000110100000011101
+00100100001000001111111111110001
+00100000001000000111111111101111
+00100000010000000111111111101001
+01101000000000001100011010101000
+00100100011110100000000000000000
+01101000000000001100011010011011
+00100000011110100000000000000000
+00100000001000000111111111100111
+00100000010000000110011001101010
+01101000000000010100011010101010
+11011010001000000000101011000010
+01101000000010001100011010011110
+00100000010000000110011010110011
+00100000010000000110011001101101
+01101000000000001000101011000010
+00011111111000100111001000000000
+01100000000000001100001110101111
+00100000010000000111111011110100
+01101000000000001000101011000010
+00011111111000100111001000000000
+01100000000000001100010100010101
+00100000010000000111111011110100
+11101000110000001000000000000000
+01100000000000001100011011100110
+11101000110000001000000000000000
+01100000000000001100011011011101
+00100000011000000000000000000000
+01101000000000001100011010011010
+11000100000000001000000000000000
+11011000010000000000000000000011
+01101000000000010100011010100100
+00011111111000100010010000000000
+11011010001000000100011010100110
+00100000010000000110010111011111
+01101000000010010100011010100110
+01011000000000000001101100111010
+10011000010001100111110000000000
+00100100011000101000000000000000
+01101000000000001100011010101000
+00100000011110100000000000000000
+00011111111000100000010000000000
+01101000000000010100011010100100
+00011111111000001010010000000011
+11011010001000000000101011000010
+00100000010000000110010111011111
+00100000001000000100011111101000
+01101000000000010100011010100010
+00100000011110100000000000000000
+00100000010000000110011001101010
+11011000010000000000000000000001
+11011010001000000100011010101000
+00100000010000000110011010110011
+01101000000000001100011010101000
+00100000011110100000000000000000
+01101000000000010100011010100010
+00011111111000001111111000000001
+11011010001000000000101011000010
+01101000000010001100011010101000
+00100000010000000110011010110011
+00100000010000000110011001101101
+00100000010000000100011110111010
+11101000110000010000000000000000
+00100000011110100000000000000000
+00011111111000100000101000000000
+11101000110010001000000000000000
+00011000010000100111001000000000
+00100000010000000111111100000001
+00100000001000000100011111101001
+01101000000000001100011010011010
+11000100000000001000000000000000
+01101000000000010100011010101110
+00011111111000100010010000000000
+11011000010000000000000000000100
+11011010001000000000101011000010
+00100000010000000110010111011111
+01101000000000001000101011000010
+11000000100000001100011111111001
+01011000000000000000000000000001
+01100000000000001000101011000010
+00011000000000000111001000000011
+00100000010000000110001100001101
+01101000000000010100011010101110
+00011111111000100010010000000000
+11011000010000000000000000000100
+11011010001000000000101011000010
+00100000010000000110011000000110
+01101000000000011000101011000011
+01100000000000011100000010100000
+01100000000000011100010010100000
+00100000011000000000000000000000
+00100000001000000100011011011001
+11011010001000000000000000000000
+11011010011000000100100011010100
+00100000010000000111110100100100
+00100000010000000100011011110100
+01101000000000001100100011101011
+01100000000000001100100011101100
+00100000011000000000000000000000
+01011000000000000000000000000000
+00100000010000000100100000010110
+01110000010001100111100100000001
+00100000010000000111110011010011
+00100000010000000111110011011101
+01101000000000010100011010000010
+11000011100001100000000000000000
+00100000001000000011010000001010
+01101000000010010100001000111111
+11100000010000001000000000000000
+11101000101000001000000000000000
+01100000000000001100011010000101
+00100000011000000000000000000000
+01101000000000010100001000111111
+11101111111000001000000000000000
+11000001100000000000000000000000
+00100000001000000011010000001010
+01101000000010010100001000111111
+11101000010000001000000000000000
+11000000000000001100100000101010
+01011000000000000000000000000001
+01101000000010010100001000111111
+11100000010000001000000000000000
+00011000010000001000110000000010
+11101000110000001000000000000000
+11100000101000001000000000000000
+11101000110000010000000000000000
+00100000001000000111111110011100
+01011000000000000000000000000010
+00100000010000000100100000010110
+00011000010000001000110000000101
+11101000110000010000000000000000
+00100000001110100011010000001010
+00100000001000000111111110011100
+01100000000000110000000100000001
+01101000000000001000000100000001
+01100000000000001000000100001100
+11101000110000001000000000000000
+01100000000000001000000100001011
+11101000110000001000000000000000
+01100000000000001000000100001010
+11101000110000001000000000000000
+01100000000000001000000100001001
+11101000110000001000000000000000
+01100000000000001000000100001000
+11101000110000001000000000000000
+01100000000000001000000100000111
+01101000000000110000000100000111
+00100000011000000000000000000000
+00100000010000000110100010100010
+01101000000000001100001000100011
+01100000000000001100010010100000
+01101000000000001100001000100101
+11100000101000001000000000000000
+01101000000000001100001000100111
+11100000101000001000000000000000
+01101000000000011100010010100000
+01100000000000011100000010100000
+00100000011000000000000000000000
+01101000000000010100001000000011
+10011010010000001111111000000000
+00011111111100001111111000000000
+01100000000000010000000111110111
+00011000010000100010010000000000
+00100000010000000100100010011011
+01011000000000000000000010100000
+00100000010000000100100010001101
+01101000000000001000000111110111
+00100000010000000100100010001101
+11000101000101000100100001010110
+01101000000000001000000111111000
+00100000010000000100100010001101
+00100000010000000100100010100001
+00100000010000000100100010011011
+01011000000000000000000010100001
+00100000010000000100100010001101
+00100000010000000100100001111111
+11100010001000001000000000000000
+00011010001000001010001000000001
+00011010010000001010010111111111
+00100100001000101100100001011010
+00100000001000000100100010100001
+00011010010100001111111000000000
+01100000000000010000000111110111
+00011000010000100010010000000000
+00100000010000000100100010011011
+01011000000000000000000010100000
+00100000010000000100100010001101
+01101000000000001000000111110111
+00100000010000000100100010001101
+11000101000101000100100001101011
+01101000000000001000000111111000
+00100000010000000100100010001101
+11101010001000001000000000000000
+00100000010000000100100010001101
+00011010001000001010001000000001
+00011010010000001010010111111111
+00100100001000101100100001101011
+00100000001000000100100010100001
+11011111001000000000000000001010
+00100000010000000100100010111110
+00100000010000000100100010100110
+00100000010000000100100011010010
+00100000010000000100100011000111
+00100000001110100100100010101001
+11000010000000000100100001110101
+00100000001000000100100010101001
+00100000010000000100100010101001
+00100000010000000100100010101111
+00100000010000000100100011010010
+00100000010000000100100010100110
+00100000010000000100100011010010
+00100000001000000100100010101001
+11011111001000000000000000001000
+11011010011000000000000000000000
+00100000010000000100100010111110
+00100000010000000100100010100110
+00100000010000000100100011010010
+00011010011000111010011000000000
+00100000010000000100100011000111
+10011010011000001010011000000000
+00100000010000000100100011010010
+00100000010000000100100010101001
+11000010000000000100100010000010
+00100000010000000100100001111001
+00011010011000100111111000000000
+00100000011000000000000000000000
+11011111001000000000000000001000
+00011111111000100010011000000000
+00100000010000000100100010101001
+00101010011011111111111000000111
+00100000010000001100100010101100
+00100100010000001100100010101111
+00011010011000111010011000000000
+00100000010000000100100011010010
+00100000010000000100100010100110
+00100000010000000100100011010010
+00100000010000000100100010101001
+00100000010000000100100011010010
+11000010000000000100100010010000
+00100000001000000100100001110001
+00100000010000000100100010101100
+00100000010000000100100010100110
+00100000010000000100100011010010
+00100000010000000100100010101111
+00100000010000000100100011010010
+00100000001000000100100010101001
+00100000010000000100100010101111
+00100000010000000100100010100110
+00100000010000000100100011010010
+00100000010000000100100010101100
+00100000001000000100100011010010
+01111000001101000111110000000000
+01101000000000001100111111111110
+00100000001000000100100010110010
+01111000010101000111110000000000
+01101000000000001100111111111110
+00100000001000000100100010110010
+01111000001101000111110000000000
+01101000000000001100111111111111
+00100000001000000100100010110010
+01111000010101000111110000000000
+01101000000000001100111111111111
+00100000001000000100100010110010
+00011111111000010000111000000111
+00011111111010010111111000000000
+11011000010000001000000001110000
+10011000010000001000010000000000
+11101000010000001000000000000000
+11111001001000000111111000000000
+11100000010000001000000000000000
+00011000010000001000010000000100
+11101000010000001000000000000000
+11111001001101000111111000000000
+11100000010000001000000000000000
+00100000011000000000000000000000
+01101000000000001100111111111111
+00011111111000010000111000000111
+00011111111010010111111000000000
+11011000010000001000000001110000
+10011000010000001000010000000000
+11101000010000001000000000000000
+11111001001111111111111000000000
+11100000010000001000000000000000
+00100000011000000000000000000000
+00100000000000000000000000000100
+01101000000000001100111111111111
+00011111111000010000111000000111
+00011111111010010111111000000000
+11011000010000001000000100011100
+10011000010000001000010000000000
+01011000000000000000000000000000
+11101000010010001000000000000000
+10101000010011111111111111111111
+01111001001000001111111000000000
+00100000011000000000000000000000
+00100000011000000000000000000000
+01000100111110110100000000011110
+01101000000100001000101000100110
+00101111111011111111111000000111
+00100000010000001100100011101010
+00100000010000000100100100101110
+01101000000100001000101000100110
+01100000000000001000101100100010
+01101000000100001000101000100111
+01100000000000001000101100100011
+01100000000100001000101000100111
+00011111111001000111111000000000
+01101000000010001000110100110111
+10011000010000010111111000000000
+01100000000000001000110100110111
+01110000100010100010011011100000
+01101000000000001000101100100011
+00101111111000000000001000000001
+00100000010000001100100101000001
+01101000000000001000101100100010
+00101111111000000000001000000001
+00100000010000001100100101001010
+00100000010000000100101101100001
+00100000001000000100100100000011
+01000100111110111100000000011110
+00100000010000000100100100011001
+01110000100010100000000000000000
+00100000000000000010011100010000
+01110000100010100001000011000000
+01101000000100010000000001010000
+01111001001111111111111000001010
+01100000000100010000000001010000
+01110000100010100000000000111100
+01110000100010100010011011111111
+01110000100010100010011111111111
+01110000100010100000010000000000
+01110000000011000110101100000010
+01011000000000000000110110011101
+11011000101000000000110001101110
+10011000101001100111001000000000
+00100000001000000111111011010100
+01101000000010001000110001101100
+00100000001000000110011111111011
+01101000000000001000110101000101
+00100000011110100000000000000000
+01101000000010001000110001101100
+00100000010000000110100000011101
+00100000001000001100100011101010
+00100000011000000000000000000000
+11011000111000000000000000000000
+00100000010000000111111100010110
+00100100011110100000000000000000
+01101000000000001000110101000110
+00100100011110100000000000000000
+01101000000000001000110101000101
+00100100010110100100101110110111
+00100000011000000000000000000000
+11011000101000000000101101101000
+00111000000000010001001000010010
+00111000000001001000000000000000
+00111000000010000000000000000000
+00111000000011010000000000000000
+11100000101001001000000000000000
+00111000000000100010010000010010
+00111000000001001000011000000100
+00111000000010000001000000000000
+00111000000011000000000000001000
+11100000101001001000000000000000
+00111000000000000000000000000001
+11100000101000001000000000000000
+00100000011000000000000000000000
+01110000000011000110101100000010
+01011000000000000000000000000000
+01100000000000001000101101100111
+01100000000000010000110001100101
+00011111111000001111111000000001
+01100000000000010000110001100111
+00011111111000001111111000000001
+01100000000000010000110001101001
+01011000000000001000111111111010
+01100000000000010000101101111100
+01011000000000001001000000111010
+01100000000000010000101101111110
+11011000101000000000101110000000
+11011000110000001001000011111110
+00100000010000000111111010110011
+01101000000000001000110001101101
+00100100010110100100100100101011
+00100000001000000100100100001011
+01100000000000001000101110100010
+01100000000000001000101110111011
+00100000011000000000000000000000
+01101000000100001000101000100110
+11000010100000110100100100110001
+00100000011000000000000000000000
+00100000010000000100100100110110
+00100000010000000111111100010101
+01011000000000000000001010000000
+11011000111000000000000000000000
+00100000001000000111111100001000
+01101000000000001000110100110110
+11000000100000010100100100111011
+01110000000011010100011000000000
+01110000000011010100011100000000
+00100000011000000000000000000000
+01101000000000001000110101010011
+00100000011110100000000000000000
+01110000000011010101001100000000
+01110000000011010011011000000010
+01110000000011010100010100000001
+00100000011000000000000000000000
+01110000100010100010011100000001
+00100000001000000100101100110111
+01101000000000001000101100100010
+11000010100000100100100101010101
+00100000011000000000000000000000
+01101000000100001000101000011000
+11100000101000001000000000000000
+11000010000000000100100101000110
+00100000011000000000000000000000
+01000100111111000100000000011111
+01110000100010100010011000010001
+01101000000100001000101000100000
+01100000000000001000101100100100
+00011111111000100111001000000000
+00100000001110100100100101000011
+11011000101000000000110001101110
+00100000010000000100100101000110
+01101000000000001000101100100100
+00011111111001100111110000000111
+00100000011000010000000000000000
+01101000000000001000110001101110
+00011111111000010111111010000000
+11000000010000000100100101011010
+11000000000000000100100101100010
+00100000001000000010101010001100
+01101000000000001000110001101110
+00011111111100011111111000000000
+00011111111000110111111000000000
+00011111111000010111111000000011
+11000000000000000100100101101010
+11000000000000001100100101110000
+11000000000000010100100101110101
+00100000001000000010101010001100
+01101000000000001000110001101110
+00011111111100011111111000000000
+00011111111000110111111000000000
+00011111111000010111111000000011
+11000000000000000100100101110110
+11000000000000001100100101111110
+11000000000000010100100110000011
+00100000001000000010101010001100
+01101000000000001000110001101111
+11000000000001000100100110001010
+11000000000000110100100110100000
+11000000000001010100100111101010
+11000000000000000100100111111100
+00100000001000000100100110000100
+01101000000000001000110001101111
+11000000000000010100101000101111
+11000000000000001100101000110011
+11000000000000011100101001000101
+00100000001000000100100110000100
+00100000001000000100100110000100
+01101000000000001000110001101111
+11000000000000001100101001001111
+11000000000000011100101001111001
+11000000000000101100101010100011
+11000000000001001100101010111100
+11000000000001011100101011010111
+11000000000000111100100110000100
+00100000001000000100100110000100
+01101000000000001000110001101111
+11000000000001010100101011101000
+11000000000001001100101011111001
+11000000000001011100101100010001
+00100000001000000100100110000100
+00100000001000000100100110000100
+01101000000100001000101000010001
+01111001001000000111111000000000
+01100000000100001000101000010001
+00100000001000000100100110001000
+01110000100010100001001001000000
+00100000011000000000000000000000
+01101000000000001000110001101110
+11000000110000000100100110000100
+01101000000000001000110001110010
+11000000100000000100100110000100
+01101000000000001000110001110011
+11000000100000000100100110000100
+01101000000000001000110001110100
+11000000100000001100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001110000
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001101011
+11000000000000100100100110011100
+11000000000000011100100110011110
+00100000001000000100100110000100
+11011010010000000000000000000001
+00100000001000000100101000010100
+11011010010000000000000000000001
+00100000001000000100101000010010
+01000100111111001100000000011111
+01111001001111111000000000100011
+01101000000000001000110001110001
+11000000000000001100100110110110
+11000000000000010100100111001111
+11000000000000011100100111010010
+11000000000100001100100110101001
+11000000000100010100100111100000
+00100000001000000100100110000100
+01110000000011010100101100000000
+01101000000000001000110001110010
+11000000000000000100100110101110
+11000000000000001100100110110010
+00100000001000000100100110000100
+11011010001000000000101110010011
+11101010001000001000000000000000
+10011000000000000010010000000000
+00100000001000000100101100100001
+11011010001000000000101110101100
+11101010001000001000000000000000
+10011000000000000010010000000000
+00100000001000000100101100100001
+01101000000000001000110101001000
+00100100010110100100100111000111
+01011000000000000000101101101000
+01101000000010001000101101101000
+01100000000000010000110100111111
+01100000000010001000110101000001
+01101000000000001000110001110100
+10011000010001100111110000000000
+00100100001000010100100111000101
+01101000000000001000110101000001
+10011000000000000010010000000000
+01101000000000010000110100111111
+00011111111000001111111000000001
+10011000000000000010001000000000
+00100000001000000100101100100001
+01101000000000001000110001110100
+00100000001000000100100111000000
+01101000000100001000101000000100
+00100100010110100100100111001011
+01110000000011010100100000000000
+00100000011000000000000000000000
+01101000000100001000101000000100
+01111001001000000111111000000111
+01100000000100001000101000000100
+00100000011000000000000000000000
+01011000000000000000101110000000
+01101000000010001000101110000000
+00100000001000000100100110111010
+01101000000000001000110001110000
+00011111111001100111110000000011
+00100100001000010100100110000100
+01101000000000001000110001110000
+11011010001000000000101111100100
+11000000000000000100101100011110
+01111001001000000000000000100011
+11011010001000000000101111101001
+11000000000000001100101100011110
+11011010001000000000110000000111
+11000000000000010100101100011110
+11011010001000000000110001000111
+11000000000000011100101100011110
+00100000011000000000000000000000
+01101000000000010000110001110010
+11000000000000001100100111100101
+01101000000000010000101101111100
+00011111111000100010001000000000
+00100000001000000100101100011110
+01110000000011010100010100000001
+01110000000011010011011000000001
+01101000000000010000101101111110
+00011111111000100010001000000000
+00100000001000000100101100011110
+01101000000000001000110001101011
+11000000100000100100100110000100
+01101000000000001000110001101110
+11000000110000001100100110000100
+01101000000000001000110001110000
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001110100
+11000000100000001100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001110010
+11000000100000000100100110000100
+01101000000000001000110001110011
+11000000100000000100100110000100
+11011010010000000000000000000001
+00100000001000000100101000010010
+01101000000000001000110001101011
+11000000000000010100100110000100
+01101000000000001000110001110000
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001110100
+11000000100000010100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001110011
+11000000100000000100100110000100
+01101000000000001000110001101110
+11000000010000000100101000001101
+11000000010000001100101000011000
+11000000010000010100101000011100
+00100000001000000100100110000100
+01101000000000001000110001110010
+11000000100000000100100110000100
+11011010010000000000000000000010
+01101000000000001000110100111001
+11000000000000001100101000010110
+11011010001000000000110001100101
+00100000001000000100101100100001
+11011010001000000000110001100111
+00100000001000000100101100100001
+11011010001000000000110001101001
+00100000001000000100101100100001
+01101000000000001000110001101011
+11000000100000100100100110000100
+11011010010000000000000000000010
+00100000001000000100101000010010
+01101000000000001000110001101011
+11000000100000100100100110000100
+01101000000000001000110001110010
+11000000010000001100101000101001
+11000000010000010100101000101011
+11000000010000011100101000101101
+00011111111000010111111001111111
+11000000000000000100101000100101
+00100000001000000100100110000100
+01101000000000001000110100111011
+11011010010000000000000000000010
+11000000000000001100101000010100
+00100000001000000100101000010010
+01101000000000001000110100111100
+00100000001000000100101000100110
+01101000000000001000110100111101
+00100000001000000100101000100110
+01101000000000001000110100111110
+00100000001000000100101000100110
+01110000000011010100110000000001
+11011010001000000000110101001101
+11011010010000000000000000000001
+00100000001000000100101100100001
+01101000000000010000110001110000
+11011000010000000000000110111010
+10011000010001100111110000000000
+00100100001000101100100110000100
+01111001001111111000000000100011
+01101000000000001000110101000010
+00100100001110100100101001000010
+01110000000011001111011000000000
+01101000000000001000110001110100
+10011000000000000010010000000000
+11011010001000000000110011110110
+00100000010000000100101100100001
+11011000101000000000110011110110
+11011111001000000000000000001000
+00100000001000000111111011000110
+01110000000011010100001000000000
+01110000000011001111011000000001
+00100000001000000100101000111011
+01101000000000001000110001110100
+11000000100000001100100110000100
+01110000000011010100101100000001
+11011010010000000000000000000001
+01101000000000001000110101001001
+11000000000000000100101001001101
+11000000000000001100101001001110
+00100000001000000100101000010010
+00100000001000000100101000010100
+00100000001000000100101000010010
+01101000000000001000110001101011
+11000000100000100100100110000100
+01101000000000001000110001110100
+11000000100000000100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001110011
+11000000100000000100100110000100
+01101000000000001000110001101110
+11000000000000000100101001011110
+11000000000000001100101001100110
+11000000000000010100101001100111
+00100000001000000100100110000100
+01101000000000001000110001110000
+11000000100000001100100110000100
+01101000000100001000101000000000
+01111001001111111111111000000111
+01100000000100001000101000000000
+01110000000011010011100100000000
+01110000000011010011101000000001
+00100000001000000100100110001000
+00100000001000000100100110000100
+01101000000000001000110001110000
+11000000100000000100100110000100
+01101000000000001000110001110010
+11000000010000001100101001110010
+11000000010000010100101001110101
+11000000010000011100101001110111
+00011111111000010111111001111111
+11000000000000000100101001110000
+00100000001000000100100110000100
+01110000000011010011101100000000
+00100000001000000100100110001000
+01110000000011010011110000000000
+01110000000011010101001100000001
+00100000001000000100100110001000
+01110000000011010011110100000000
+00100000001000000100101001110011
+01110000000011010011111000000000
+00100000001000000100101001110011
+01101000000000001000110001110100
+11000000100000000100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001101110
+11000000000000000100101010000010
+11000000000000001100101010001111
+11000000000000010100101010010000
+00100000001000000100100110000100
+01101000000000001000110001110000
+11000000100000001100100110000100
+01101000000100001000101000000000
+01111001001000000111111000000111
+01100000000100001000101000000000
+01110000000011010011100100000001
+01110000000011010011011000000011
+01110000000011010100001100000000
+00100000010000000100100110001000
+00100000010000000111111100010101
+01011000000000000001001110001000
+11011000111000000000000000001111
+00100000001000000111111100001000
+00100000001000000100100110000100
+01101000000000001000110001110000
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001110010
+11000000010000001100101010011101
+11000000010000010100101010011111
+11000000010000011100101010100001
+00011111111000010111111001111111
+11000000000000000100101010011011
+00100000001000000100100110000100
+01110000000011010011101100000001
+00100000001000000100100110001000
+01110000000011010011110000000001
+00100000001000000100100110001000
+01110000000011010011110100000001
+00100000001000000100100110001000
+01110000000011010011111000000001
+00100000001000000100100110001000
+01101000000000001000110001101110
+11000000100000000100100110000100
+01101000000000001000110001110010
+11000000100000000100100110000100
+01101000000000001000110001110011
+11000000100000000100100110000100
+01101000000000001000110001110100
+11000000100000000100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001110000
+00011111111000010111111010000000
+11000000100000000100100110000100
+01101000000000001000110001110000
+11000000100000000100101010111010
+01110000000011000110101100000010
+01101000000000001000110001110000
+01100000000100001000101000000100
+00100000010000000100100110001000
+01110000000011010100100000000001
+00100000011000000000000000000000
+01110000000011000110101100000011
+00100000001000000100101010110101
+01101000000000001000110001101011
+11000000000000010100100110000100
+01101000000000001000110001101110
+11000000100000000100100110000100
+01101000000000001000110001110010
+11000000100000000100100110000100
+01101000000000001000110001110011
+11000000100000000100100110000100
+01101000000000001000110001110100
+11000000100000000100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001110000
+00011111111001100111110000000001
+00100100001000010100100110000100
+01101000000000001000110001101011
+11000000000000011100101011010001
+11000000000000100100101011010001
+00100000001000000100100110000100
+01101000000000001000110001110000
+11000000000000000100101011010101
+01110000000011000110101100000100
+00100000001000000100100110001000
+01110000000011000110101100000011
+00100000001000000100100110001000
+01101000000000001000110001101011
+11000000100000100100100110000100
+01101000000000001000110001101110
+11000000100000001100100110000100
+01101000000000001000110001110000
+11000000100000000100100110000100
+01101000000000001000110001110001
+11000000100000000100100110000100
+01101000000000001000110001110100
+11000000100000000100100110000100
+01101000000000001000110001110101
+11000000100000000100100110000100
+01101000000000001000110001110010
+11000000100000000100100110000100
+01101000000000001000110001110011
+11000000100000000100100110000100
+00100000001000000100100110001000
+01110000000011010100110000000001
+01101000000000001000110001110001
+01100000000000001000110101001101
+01101000000000001000110001110010
+00011111111001100111110000000001
+00100000010000101100101011110101
+01101000000000001000110100110110
+11000000100000100100100110001000
+01110000000011010011011000000010
+00100000010000000100100110001000
+00100000000000000111010100110000
+00100000000000000111010100110000
+00100000011000000000000000000000
+01110000000011010100010100000001
+01110000000011010011101000000000
+01110000000011010011011000000100
+00100000011000000000000000000000
+01110000000011010101000000000001
+00100000010000000100101100000011
+01101000000000010000110001110000
+01100000000000010000110101001110
+01101000000000001000110001110100
+10011000000000000111001000000000
+11011000110000000000110001110110
+11011000101000000000110010110110
+00100000010000000111111100000001
+00100000001000000100100110001000
+01101000000000010000110001110000
+11011000010000000000001000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+01101000000000010000110001110010
+11011000010000000000000000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+01101000000000010000110001110100
+11011000010000000000000000000001
+10011000010001100111110000000000
+00100100011000101000000000000000
+01110000000011010100001100000001
+00100000011000000000000000000000
+01101000000000001000110001110100
+11000000100000000100100110000100
+01101000000000001000110001110000
+11000000000000000100101100010111
+11000000000000001100101100011010
+00100000001000000100100110000100
+01110000000011010100101000000000
+01110000000011010100100100000001
+00100000001000000100100110001000
+01110000000011010100010000000001
+01110000000011010100101000000001
+01110000000011010100100100000000
+00100000001000000100100110001000
+11101010001000001000000000000000
+10011000000000000010010000000000
+00011010001000001010001000000001
+01000100111111010100000000011111
+11000101100100011100101100101100
+00011010010000001111111000000001
+00011111111000111111111000000000
+01100000000100001000101000011000
+01110000100010100001100000000011
+01101000000000001000110001110100
+00011111111000001111111111111110
+00011111111000110111111000000000
+01100000000000001000110001110100
+11000000000000000100101100110101
+01101000000000010000110001110100
+10011010010001100111110000000000
+00100000001000010100101100110000
+00011111111000100010010000000000
+00011010001000100111111000000000
+01100000000000010000101101100101
+00011010010000100111111000000000
+01100000000000001000101101100111
+00100000001000000100101100110111
+11011000111000000000000000000000
+00100000001000000100101101010111
+01000100111111011100000000011111
+01101000000000001000101101100111
+00100000011110100000000000000000
+00011111111000100111001000000000
+00011111111001100111110001000000
+00100000001000010100101100111110
+11011111001000000000000001000000
+01101000000000001000101101100111
+10011111001001100111111000000000
+01100000000000001000101101100111
+01101000000000010000101101100101
+00011111111000100000110000000000
+11101000110000001000000000000000
+01100000000100001000101000011000
+11000101100100011100101101000111
+01110000100010100001100000000000
+11000010000000000100101101000011
+00011000110000100111111000000000
+01100000000000010000101101100101
+11011000111000000000000000000000
+00100000010000000100101101010111
+01101000000000001000101101100111
+00100100011110100000000000000000
+01101000000000001000110100110110
+11000001100000001000000000000000
+01110000000011010011011000000010
+00100000011000000000000000000000
+11011010001000001000101000011001
+11011000111000000000000000000001
+11101000110000001000000000000000
+11100010001000001000000000000000
+11000010000000000100101101010100
+01011000000000000000000000000000
+11111001001000000111111000000000
+01100000000100001000101000010000
+01101000000010001000110100110111
+10011000010000011111111000000000
+01100000000000001000110100110111
+00100000011000000000000000000000
+11011000111000000000000000000010
+11011010001000001000101000011010
+00100000001000000100101101010100
+01000100111111100100000000011111
+01101000000000001000110100111000
+00100000011110100000000000000000
+01101000000000001000110100110111
+00100100001110100100101110101100
+01101000000000001000110101000101
+00100000001110100100101110000110
+01101000000000001000110100110110
+11000000000000011100101110111111
+11000000100000010100101110000110
+01101000000000001000110100111010
+00100100001110100100101110000110
+00100000010000000100101101101111
+00100000001000000100101101111010
+01101000000000001000110100111000
+11000100000000001000000000000000
+01101000000000001000110100110111
+11000011100000001000000000000000
+01101000000000001000110100111000
+01111001001111111111111000000001
+01100000000000001000110100111000
+01101000000000001000110101010001
+00100000011110100000000000000000
+11000000000010000100101110101000
+00100000001000000010101010001100
+01101000000000001000110100111000
+11000100000000010000000000000000
+01101000000000001000110100110111
+11000011100000010000000000000000
+01101000000000001000110100111000
+01111001001111111111111000000010
+01100000000000001000110100111000
+01101000000000001000110101010010
+00100000011110100000000000000000
+11000000000100000100101110001001
+11000000000100001100101110100100
+00100000001000000010101010001100
+11011000101000000000110101010100
+11011111001000000000000000000110
+00100000001000000111111011000110
+01101000000000001000110101001100
+01101000000010001000110101001011
+10011000010000010111111000000000
+00100000001110100100101110100000
+01101000000010001000110101001010
+10011000010000001111111000000000
+11000000000000001100101110010001
+00100000001000000100101110100000
+01110000000011010101001000000000
+01101000000000001000110101010101
+11000000000000010100101110100001
+11000000000000011100101110100001
+01101000000000001000110101010101
+01100000000000001000110101010100
+01101000000000001000110101010110
+11100000101000001000000000000000
+01101000000000001000110101011000
+11100000101000001000000000000000
+01101000000000001000110101011010
+11100000101000001000000000000000
+11011111001000000000000000000100
+11011000110000000000110101010100
+00100000001000000100101101011110
+01110000000011010101001000000000
+11011111001000000000000000001000
+11011000110000000000110101010100
+00100000001000000100101101011110
+01110000000011010101001000000000
+11011111001000000000000000000011
+11011000110000000000110101110100
+00100000001000000100101101011110
+01110000000011010101000100000000
+11011111001000000000000000001000
+11011000110000000000110101100100
+00100000001000000100101101010010
+01101000000000001000110100110110
+11000000000000011100101110110000
+11000000000000010100101110110010
+00100000011000000000000000000000
+01110000000011010011011100000000
+00100000011000000000000000000000
+01101000000100001000101000000000
+01111001001000000111111000000111
+01100000000100001000101000000000
+01110000000011010100011100000001
+00100000011000000000000000000000
+01101000000000001000110100110110
+11000001000000011000000000000000
+11000000000000010100101110111011
+00100000011000000000000000000000
+01101000000000001000110101000111
+00100000011110100000000000000000
+01110000000011010100011000000001
+00100000001000000100101111000010
+11011000111000000000000000001111
+00100000010000000111111100010110
+00100100011110100000000000000000
+01101000000100001000101000000000
+11000100000000111000000000000000
+01110000100010100000000011111100
+00100000000000000111010100110000
+01110000100010100000000000111100
+00100000011000000000000000000000
+01000100111111101100000000011111
+01101000000000001100000111001110
+00100100011110100000000000000000
+00100000010000000100101111001110
+00100100010101000100101111100110
+00100000011000000000000000000000
+01000100111111110100000000011111
+00011000011000100010001000000000
+11011000010000000000000000000100
+11101000011000001000000000000000
+11000000000000001100101111011000
+00011000010000001000010000000001
+11000000000000010100101111011000
+00011000011000100111111000000000
+01100000000100010000000001011000
+00100000011000000000000000000000
+01101000000100010000000100010010
+10011000010001100111110000000000
+00100100001000010100101111011000
+01111000010101000111110000000000
+00011010001000100000011000000000
+00100000010000000100101111101110
+10011000010000001000010000000000
+01101000000100010000000100010010
+10011000010001100111110000000000
+00100100001000010100101111011111
+00011010001000100000011000000000
+11101000011000001000000000000000
+11000000000000001100110000111111
+00100000001000000010101010001100
+01000100111111111100000000011111
+01101000000100010000000001011000
+10011000000000000000011000000000
+00100000010000000100101111101110
+10011000011000001000011000000000
+00011000011000100111111000000000
+01100000000100010000000001011000
+00100000011000000000000000000000
+11101000011000001000000000000000
+00011000011000001000011000000010
+11000000000000010100101111110011
+11101000011000001000000000000000
+00100000011000000000000000000000
+11101000011000010000000000000000
+00100000011000000000000000000000
+01101000000100010000000001011110
+00011001010000001001010111111011
+10011001010000001001010000000000
+00100000011000000000000000000000
+11011000010000000000000000000100
+00100000001000000100101111111100
+11011000010000000000000000000010
+01000111000000000100000000100000
+00011111001000001111001000000001
+01101000000100010000000001011110
+00011111111000100001010000000000
+00011111001000100111111000000000
+11100001010010001000000000000000
+00011111111000001111111111111111
+10011001010000001001010000000000
+00011001010000100111111000000000
+01100000000000010000001001011000
+00011000010000100111111000000000
+11000001000000010000000000000000
+01101000000000010000001001011000
+01100000000100010000000001011110
+00100000001000000100110000001011
+01011000000000000000000000000000
+01100000000000010000001001011000
+00100000011000000000000000000000
+00100000011101011000000000000000
+01011000000000000100110100101000
+01100000000000010100000111110011
+01011000000000000000000110100000
+01100000000000010100001001000011
+01011000000000000001100000000000
+01100000000100010000000001010100
+01011000000000000001101111111111
+01100000000100010000000001010110
+01011000000000000001110000000000
+01100000000100010000000001011010
+00100000010000000100110000101000
+01110000100000000110001000000000
+01011000000000000001110000000000
+01100000000100010000000001011110
+01100000000100010000000001100000
+01011000000000000001100000000000
+01100000000100010000000001011000
+01100000000000010000001001000100
+01101000000100010000000001010000
+01111001001111111111111000001111
+01100000000100010000000001010000
+00100000010000000110011011001110
+01110000100000000100001100000001
+01110000100000000110001010000001
+00100000011000000000000000000000
+01011000000000000001111111111111
+01100000000100010000000001011100
+01101000000100001000000010000001
+00011111111000011111111000000111
+01100000000100001000000010000001
+00100000011000000000000000000000
+01000111000000001100000000100000
+01101000000100001000000100001100
+10011000000000000010010000000000
+11000011000000011100110000110111
+01101000000100010000000100010010
+10011000000000000010011000000000
+11011000010000000000010001001111
+10011000010001100111110000000000
+00100100011000101000000000000000
+01101000000100010000000001011000
+10011000000000000000011000000000
+00100000001000000100101111001000
+01101000000110001000000100001100
+00101000010011111111111000000110
+00100000001000001100110000111010
+01100000000100001000000000010101
+00100000011000000000000000000000
+01000111000000010100000000100000
+01101000000000001100000111001110
+00100000001110100100110001000100
+01111000001101000111110000000000
+00100000011000000000000000000000
+11101000011000010000000000000000
+10011000000000000110000000000000
+10011000000000000000111000000000
+11101000011000001000000000000000
+10011000000000000000010000000000
+00011110000010110111111000000000
+00011111111011001111111000000000
+11000000000111111100110001001101
+00100000011000000000000000000000
+01000111000000011100000000100000
+00011000111000100111111000000000
+11000000000000000100110011011100
+11000000000000001100110001100110
+11000000000000010100110001101011
+11000000000000011100110001111010
+11000000000000100100110010110011
+11000000000000101100110011011100
+11000000000000110100110011000110
+11000000000000111100110001011100
+11000000000010000100110011001001
+11000000000010001100110011010001
+11000000000010010100110010100101
+11000000000010011100110010000101
+00100000001000000100110011011100
+00100000010000000100110011011100
+00100000010000000111111110011110
+00100000010000000110100010001100
+00100000010000000011001111010010
+00100000010000000011001111011001
+00100000001000000110100010001111
+01110000010000100100010100000000
+00100000010000000011001111010000
+00100000010000000100110000010011
+00100000001000000011001111011011
+00100000010000000100110011110010
+01101000000100010000000000000000
+11100001010000010000000000000000
+00011000000000000111001000000110
+00100000001000000100110011011101
+11101000011000010000000000000000
+01100000000000010100001001000011
+01100000000100010000000001010010
+00100000011000000000000000000000
+11101000011000001000000000000000
+00011111111000100000010000000000
+01100000000100001000000000100100
+11101000011000001000000000000000
+10011000010000001000010000000000
+01111001001000000111111000000111
+01100000000100001000000000100011
+11101000011000001000000000000000
+10011000010000001000010000000000
+00011111111000100111001000000000
+00100000011000000000000000000000
+11000101000101011100110011000100
+00100000010000000100110001101111
+11101000011000001000000000000000
+01100000000100001000000000100101
+10011000010000001000010000000000
+11000010000000000100110001111100
+00011000010000010000010011111111
+11101000011000001000000000000000
+10011000010001100111110000000000
+00100100001000101100110011000100
+00100000001000000100110011011100
+11000101100101011100110011000100
+00100000010000000100110001101111
+01100000000001000000101010011010
+00100000010000000111010000100010
+11011111001000000000000000010000
+11011000101000000000101011000010
+00100000010000000100110010100000
+01100000000011000000101010100010
+11011000101000000000101011010010
+00100000010000000111010010010111
+11011010001000000000101011010010
+11011010010000000000101011000010
+11011000101000000000101011100010
+00100000010000000111001101010010
+11011111001000000000000000010000
+11011000110000000000101011100010
+00100000010000000100110010011100
+01101000000011000000101010100010
+01101000000001000000101010011010
+00011111111000001111111111110000
+01100000000001000000101010011010
+00100100001110100100110010001000
+00100000001000000100110010000000
+11101000110000001000000000000000
+01100000000100001000000000100101
+11000010000000000100110010011100
+00100000011000000000000000000000
+11101000011000001000000000000000
+11100000101000001000000000000000
+10011000010000001000010000000000
+11000010000000000100110010100000
+00100000011000000000000000000000
+11000101100101011100110011000100
+11011000010000000000000000000000
+11011111001000000000000000010000
+11011000101000000000101011000010
+00100000010000000100110010100000
+01101000000100001000000010000101
+00011111111000010111111011111101
+01100000000100001000000010000101
+11011000110000000000101011000010
+11011111001000000000000000010000
+00100000010000000111010001111000
+00100000010000000111010000101000
+00100000010000000111010010010001
+00100000001000000100110010000000
+11011111001000000000000000100000
+11011000101000000100000000000000
+11011000010000000000000000000000
+11101000011000001000000000000000
+11100000101000001000000000000000
+10011000010000001000010000000000
+11000010000000000100110010110110
+00011000010000010000010011111111
+11101000011000001000000000000000
+10011000010001100111110000000000
+00100100001000101100110011000100
+01110000100000000010001100000000
+00100000010000000100110011011100
+00100000010000000100101111100110
+00100000010000000110010010100011
+00100000010000000111111110011110
+00100000001000000010000000000001
+01110000100000000010001100000000
+00100000001000000010000000000000
+11101000011000110000000000000000
+01100000000000110100000010100000
+00100000001000000100110011011100
+11101000011000001000000000000000
+01100000000000001000001001011010
+00011111111000100111001000000000
+11101000011000010000000000000000
+01100000000000010000001001011011
+00011111111000100000101000000000
+00100000010000000110011011111101
+00100000001000000100110011011100
+11101000011000001000000000000000
+01100000000000001000001001011010
+00011111111000100111001000000000
+11101000011000010000000000000000
+01100000000000010000001001011011
+11011000101000000001000000000000
+00100000010000000110011011111101
+01101000000010001000001001011010
+11011010001000000001000000000000
+01101000000000010000001001011011
+00100000001000000110011000001000
+00011000000000000111001000000100
+00100000010000000100110011110100
+00011000000000000111111000000001
+11100001010000001000000000000000
+00011110000000100111111000000000
+11100001010000011000000000000000
+00011000000000000000111000001110
+01000111000000100100000000100000
+00100000010000000100110011110110
+00011000111000100111111000000000
+11100001010000001000000000000000
+00011111001000100111111000000000
+11100001010000001000000000000000
+00011000000000000000111000000101
+00011111001000001111001000000010
+00100000001000000100101111111001
+00011000000000000000111011111111
+00100000010000000100110011110100
+01011000000000000000000000000001
+11100001010000001000000000000000
+00011000000000000111001000000001
+00100000001000000100110011100011
+00011000000000000001010000001100
+00100000001000000100110011110111
+00011000000000000001010000001000
+00100000001000000100110011110111
+00011000000000000001010000000110
+00100000001000000100101111110101
+01111000001001111111110000000000
+01111000001001001111110000000000
+11101001010000001000000000000000
+00001000000000001000000000001000
+11000010000000000100110011111010
+01111000001001000111110000000000
+00001000000000001000000000010000
+01111000010001000111110000000000
+01111000010001001111110000000000
+01111000010001111111110000000000
+00011111111100001111111000000000
+00100000011000000000000000000000
+01110000010000011100111000000000
+00100000011000000000000000000000
+01101000000000110100000111010000
+01101000000010110000000001000000
+10011000010001100111110000000000
+00100000011000000000000000000000
+01101000000000001000000001001011
+11000010100000010100110100001111
+00100000010000000110001011101111
+01110000000000000111110000001000
+00100000001000000100110100000100
+01111001001111111111111000000010
+01100000000000001000000001001011
+00100000010000000110000000000001
+01011000000000000000000000000000
+01111001001101001111111000000001
+01100000000000001000000001111111
+00100000001000000100110100000100
+00100000011000000000000000000000
+01110000000000000111110000010111
+11011000101000000000010011011001
+01011000000000000000000000000000
+00101101000011111111111000011011
+01111001001000001111111000000001
+11100000101000001000000000000000
+01011000000000000000000000000000
+11100000101000010000000000000000
+01101000000000010100000111100011
+11100000101000010000000000000000
+01101000000000001100000111100101
+11100000101000010000000000000000
+01101000000000001100000111100111
+11100000101000010000000000000000
+00100000001000000100110100000100
+01110000000000000111110000011000
+00100000001000000100110100000100
+00100000010000000110100010011001
+00100000011000001000000000000000
+11011000010000000000000000000111
+00100000010000000110100000011101
+00100100001000001100110100101111
+01110000010000100100010100000001
+00100000011000000000000000000000
+01101000000000001100001001000101
+11000001100000001000000000000000
+00100000010000000100110001100010
+00100000001000000100110011101100
+01000111000000101100000000100000
+01101000000000010000001001100100
+00011111111000100000110000000000
+11101000110000001000000000000000
+00011111111000010000010000001111
+00011111111100011111111000000000
+11000000000001001100110101010011
+11000000000000111100110101010011
+11000000000001010100110101011111
+11000000000000101100110101001011
+11000000000000001100110100111111
+00100000011000000000000000000000
+00011000010000100111111000000000
+11000000000000101100110101000011
+11000000000000011100110101001010
+00100000011000000000000000000000
+01110000000010101001100100100111
+00100000010000000111110110000110
+01101000000000001100000010010010
+11000100000000110000000000000000
+00011000010000100111111000000000
+11000000000000101100001110001110
+00100000011000000000000000000000
+00100000011000000000000000000000
+00100000010000000100110101011111
+11011010001000000000000000000001
+00100000010000000100110101100011
+01101000000000010100001001001100
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+11011010001000000000000000000001
+00100000010000000100110101100011
+01101000000000010100001001001100
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000001000000000000000
+01110000000010101000111000000001
+01101000000000001100001001010010
+01111001001000000111111000000110
+01100000000000001100001001010010
+01110000000010101001100100010010
+00100000001000000111110110000110
+11101000110000001000000000000000
+11000000000000001100110101100010
+00100000011000000000000000000000
+00100000011000000000000000000000
+00100000010000000101001001000000
+00011010001000100000010000000000
+01100000000010001000101010001110
+00011111111000100000101000000000
+00011010001000100111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+00100000001101011100110101101111
+01011000000000000100001101100101
+11011000101000000100001001000110
+10011000101001100111001000000000
+00100000010000000111111011010100
+01000111000000110100000000100000
+01011000000000000000010101010001
+11011000101000000000010100010001
+10011000101001100111001000000000
+00100000010000000111111011010100
+01011000000000000000001011001001
+11011000101000000000001001011101
+10011000101001100111001000000000
+00100000010000000111111011010100
+00100000001000000101001100011000
+01000111000000111100000000100000
+00011000110000100000010000000000
+00011000010000100000110000000000
+11101000110000010000000000000000
+01100000000000010000001001100110
+11101000110000010000000000000000
+01100000000000010000001001101000
+00011000110000100111111000000000
+01100000000000010000001001100100
+01101000000000001100011010000001
+11000000000000000100110110000101
+00100000001000000101000011101111
+01101000000000010000001001100110
+00100000001110100100110111111100
+01000111000001000100000000100001
+01101000000000001000001001101000
+11000000000000001100110110011101
+11000000001010000100110111100000
+11000000001010001100110111110101
+11000000001010010100110111110011
+11000000001010011100110111110011
+00100000001000000100110111111100
+01000111000001001100000000100001
+00100000010000000101001001111110
+01101000000000001100001001010110
+11000000000000000100110110011011
+11000000000000001100110110011011
+11000000000000010100110110011011
+11000000000000011100110110011011
+11000000010000001100110110011011
+11000000011000000100110110011011
+11000000010000000100110110011011
+11000000001000000100110110011011
+00100000011000000000000000000000
+01011000000000000000000000000000
+00100000011000000000000000000000
+00100000010000000100110110001111
+00100100011110100000000000000000
+00100000010000000101001010111000
+00100000010000000100111000000001
+01101000000010010000001001101111
+00100000001110100100110111111011
+00100000010000000101001011000001
+01101000000000010000001001101111
+11100000101000010000000000000000
+00011000000000000111111000000001
+11100000101000010000000000000000
+00100000001000000100110111111100
+01101000000000001100001101100100
+00100000011110100000000000000000
+00011111111000100010001000000000
+01000111000001010100000000100001
+01101000000000100000001011010101
+11011000010000000000000100000000
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01110000010000110110010000000000
+00011010001000100111111000000000
+11000000001010000100110110110111
+00100000001000000010101010001100
+11011001000000000000000000000000
+00100000010000000101001010111000
+00100000010000000100111001111010
+00100000010000000101001011000011
+00100000010000000111111010101000
+00100000010000000100111010101101
+00100000010000000101001011000001
+01011000000000000000000000001100
+11100000101000010000000000000000
+00011000000000000111111000000001
+11100000101000010000000000000000
+00100000001000000100110111111100
+01000111000001011100000000100001
+01101000000000010000001001110101
+00011111111000001111111000000100
+00011111111100011111111000000000
+00011111111010010111111000000000
+00011111111000001000010000000001
+11011000110000000100001001100000
+11101000110000011000000000000000
+00100000011110100000000000000000
+01100000000000011000101011000010
+01101000000000001000101011000010
+00011111111000100010001000000000
+00100000010000000100110111010011
+00011010010000100111111000000000
+01100000000000001100001001100000
+00100000011000000000000000000000
+11011000111000000000000000000000
+11011010010000000000000000000000
+00011000111001100111110000000111
+00100100011000010000000000000000
+10101010001011111111111111111111
+00100000001000001100110111011010
+00100000001000000100110111011110
+00011000010000100111111000000000
+00100000001110100100110111011110
+11111001001000000010010000000000
+00011000010000001000010111111111
+00011000111000001000111000000001
+00100000001000000100110111010101
+00100000010000000101001001110100
+00100100011110100000000000000000
+00100000010000000100110110001111
+00100100011110100000000000000000
+00100000010000000101001011000101
+00100000010000000110111000010001
+00100000010000000100110111000011
+00100000001000000100110111101100
+00100000010000000101001001110100
+00100100011110100000000000000000
+00100000010000000101001011000101
+00100000010000000110111000010001
+00100000010000000101001011001110
+01101000000000010000001001110101
+00100000001110100100110111111011
+11100000101000010000000000000000
+01101000000000010100001001001000
+11100000101000010000000000000000
+00100000001000000100110111111100
+00100000010000000100110100110011
+00100000001000000100110111111100
+01000111000001100100000000100001
+01110000000000101000010000000000
+00100000010000000110101010001010
+01101000000000001000001010000100
+11000001000000001000000000000000
+00100000001000000100110111111100
+00100000010000000101001001100100
+01011000000000000000000000000000
+01100000000000010000001001100110
+01100000000000010000001001101000
+01110000000000100110101000000001
+00100000011000000000000000000000
+01000111000001101100000000100001
+00100000010000000101001011000011
+00011000000000000010010000000000
+01101000000000010000001001100110
+00011111111000100010011000000000
+01101000000000010000001001100100
+10011000000000000000110000000000
+00100000010000000100111000010000
+00011010011000100111111000000000
+00011010011000001010011111111100
+00011111111000001111111111111100
+00100100001110100100111000001000
+00011010010000100111111000000000
+01100000000000010000001001101111
+00100000011000000000000000000000
+01000111000001110100000000100001
+11101000110000001000000000000000
+11000000000000001100111001001001
+11000000000000010100111001010001
+11000000000000011100111011010101
+11000000000000100100111100000101
+11000000000000101100111110100010
+11000000000000110100111111001011
+11000000000000111101000000011011
+11000000000001000101000001010000
+11000000000001001101000001100000
+11000000000001010100111000011111
+11000000000001011101000001100001
+00100000010000000101000001100010
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+01011000000000000000000000001011
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+11101000110000010000000000000000
+11000000000000010100111000101101
+11000000000000011100111000110011
+00100000011000000000000000000000
+01011000000000100000000000001000
+11100000101000110000000000000000
+01011000000000000000001010000000
+11100000101000100000000000000000
+00011000000000000111111000001100
+00100000001000000100111000111000
+01011000000000110000000000001100
+11100000101000110000000000000000
+01011000000000000000000000000110
+11100000101001000000000000000000
+00011000000000000111111000010000
+10011010010000001010010000000000
+00100000001000000100111000011110
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+11101000110000010000000000000000
+01100000000000010000101010100010
+00011010011000100111111000000000
+10011010001001100010011000000000
+00100000010000000101001011000011
+01011000000000000000000000001011
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+01101000000000010000101010100010
+00100000001000000100111000101010
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+10011000110000001000110000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+00100000001000000100111000011110
+00100000010000000111111010101000
+00100000010000000111111010101101
+11011001000000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+11101000110000010000000000000000
+00011111111000100000010000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+01000111000001111100000000100001
+00011000010000100111111000000000
+11000000000000001100111001100100
+11000000000000011100111010000110
+11000000000010001100111010010010
+11000000000010011100111010011101
+00100000010000000101000001100010
+00100000001000000100111011010100
+00100000010000000111111010101000
+11011000010000000000000001010000
+01101000000000010100001001001000
+00100100001110100100111011001110
+00011001011000100111111000000000
+01100000000000010100001001001000
+00011100010000100111111000000000
+01100000000000100000001011010101
+00100000010000000100111001101110
+00100000001000000100111010101001
+01100000000010010000001011010011
+00011001011000100111111000000000
+01100000000000010000001011001001
+00011010001000100111111000000000
+01100000000000010000001011001011
+00011010010000100111111000000000
+01100000000000010000001011001101
+00011010011000100111111000000000
+01100000000000010000001011001111
+00011000111000100111111000000000
+01100000000000010000001011010001
+00100000011000000000000000000000
+01101000000010010000001011010011
+01101000000000010000001011001001
+00011111111000100001011000000000
+01101000000000010000001011001011
+00011111111000100010001000000000
+01101000000000010000001011001101
+00011111111000100010010000000000
+01101000000000010000001011001111
+00011111111000100010011000000000
+01101000000000010000001011010001
+00011111111000100000111000000000
+00100000011000000000000000000000
+00100000010000000111111010101000
+01011000000000000000000001010001
+11011000010000000000000001010001
+01101000000000010100001001001010
+00100100001110100100111011001110
+00011001011000100111111000000000
+01100000000000010100001001001010
+01101000000000001100001001010001
+01111001001000000111111000000000
+01111001001000000111111000000001
+01100000000000001100001001010001
+00100000001000000100111010110001
+00100000010000000111111010101000
+11011000010000000000000001010010
+01101000000000010100001001001100
+00100100001110100100111011001110
+00011001011000100111111000000000
+01100000000000010100001001001100
+01101000000000001100001001010010
+01111001001000000111111000000000
+01111001001000000111111000000001
+01100000000000001100001001010010
+00100000001000000100111010110001
+00100000010000000111111010101000
+00011011010000100111111000000000
+11011000010000000000000001010011
+01101000000000010100001001001110
+00100100001110100100111011001110
+00011001011000100111111000000000
+01100000000000010100001001001110
+01101000000000001100001001010011
+01111001001000000111111000000000
+01111001001000000111111000000001
+01100000000000001100001001010011
+00100000001000000100111010110001
+01011000000000000000000000000001
+01100000000000010000001001111101
+01110000010000110110010001010000
+00100000001000000100111010110011
+01101000000000001100001001010000
+01111001001000000111111000000000
+01111001001000000111111000000001
+01100000000000001100001001010000
+01011000000000000000000000000000
+01100000000000010000001001111101
+01000111000010000100000000100010
+00100000010000000111111010101101
+01011000000000000000000000000011
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000000001000
+11100000101000010000000000000000
+00011000010000100111111000000000
+11100000101000010000000000000000
+00011001011000100111111000000000
+11100000101000010000000000000000
+01101000000000010000001001111101
+11000000000000001100111011001001
+00101001000011000000000000000000
+00100000001000001100111011000100
+01011000000000000000000000000100
+11100000101000010000000000000000
+00011000000000000111111000000000
+11100000101000010000000000000000
+01011000000000000000000000001100
+00100000001000000100111011010000
+11100000101000010000000000000000
+00011000000000000111111000000010
+11100000101000010000000000000000
+01011000000000000000000000001100
+00100000001000000100111011010000
+01111001001000000001000000000000
+00100000001000000100111010110001
+10011010010000001010010000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+00100000001000000100111011010100
+00100000001000000100111000011110
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+11101000110000010000000000000000
+00011111111000100000010000000000
+01000111000010001100000000100010
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101100111011101101
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101100111011110011
+01011000000000000000000001010010
+10011000010001100111110000000000
+00100000001000101100111011111111
+01011000000000000000000001010011
+10011000010001100111110000000000
+00100000001000101100111011111001
+00100000011000000000000000000000
+00011001011000100111111000000000
+01100000000000010100001001001000
+01101000000000001100001001010000
+01111001001000000111111000000001
+01100000000000001100001001010000
+00100000001000000100111000011110
+00011001011000100111111000000000
+01100000000000010100001001001010
+01101000000000001100001001010001
+01111001001000000111111000000001
+01100000000000001100001001010001
+00100000011000000000000000000000
+00011001011000100111111000000000
+01100000000000010100001001001100
+01101000000000001100001001010011
+01111001001000000111111000000001
+01100000000000001100001001010011
+00100000011000000000000000000000
+00011001011000100111111000000000
+01100000000000010100001001001110
+01101000000000001100001001010010
+01111001001000000111111000000001
+01100000000000001100001001010010
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011111111000100000010000000000
+00011000010000100010001000000000
+01000111000010010100000000100010
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101100111100011100
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101100111100111010
+01011000000000000000000001010010
+10011000010001100111110000000000
+00100000001000101100111100100110
+01011000000000000000000001010011
+10011000010001100111110000000000
+00100000001000101100111100110000
+00100000001000000101000001100010
+00011000101000100001011000000000
+01101000000000001100001001010000
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010000
+00011001011000100000101000000000
+11011001011000000000000001010000
+01101000000000010100001001001000
+00011111111000100000010000000000
+00100000001000000100111101000011
+00011000101000100001011000000000
+01101000000000001100001001010010
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010010
+00011001011000100000101000000000
+11011001011000000000000001010010
+01101000000000010100001001001100
+00011111111000100000010000000000
+00100000001000000100111101000011
+00011000101000100001011000000000
+01101000000000001100001001010011
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010011
+00011001011000100000101000000000
+11011001011000000000000001010011
+01101000000000010100001001001110
+00011111111000100000010000000000
+00100000001000000100111101000011
+00011000101000100001011000000000
+01101000000000001100001001010001
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010001
+00011001011000100000101000000000
+11011001011000000000000001010001
+01101000000000010100001001001010
+00011111111000100000010000000000
+01000111000010011100000000100010
+01011000000000000000000000000101
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000000000110
+11100000101000010000000000000000
+00011000010000100111111000000000
+11100000101000010000000000000000
+00011000000000000111111000000000
+11100000101000010000000000000000
+00011000000000000111111000000000
+11100000101000010000000000000000
+00011000000000000111111000001010
+10011010010000001010010000000000
+01100000000010010000001010000010
+00011000111000100111111000000000
+01100000000000001000001010000001
+00011000000000000111111001010000
+10101001011000011111111000000000
+00100000001000001100111101011001
+00011111111000001111111000000001
+00100000011000000000000000000000
+01111000010101000111110000000000
+11000011100000010000000000000000
+11000100000000000000000000000000
+11000100000000001000000000000000
+01111001001000000111111000000010
+00011000110000100000101000000000
+00011000101000001000101111111111
+11100000101000001000000000000000
+01111000001101000111110000000000
+00100000011000000000000000000000
+01101000000000001100001001010000
+00100000010000000100111101011010
+00100100001101000100111101101011
+01110000000000101000000001010000
+01101000000000010100001001001000
+01100000000000010000001010000010
+00100000001000000100111101111111
+01101000000000001100001001010001
+00100000010000000100111101011010
+00100100001101000100111101110010
+01110000000000101000000001010001
+01101000000000010100001001001010
+01100000000000010000001010000010
+00100000001000000100111101111111
+01101000000000001100001001010010
+00100000010000000100111101011010
+00100100001101000100111101111001
+01110000000000101000000001010010
+01101000000000010100001001001100
+01100000000000010000001010000010
+00100000001000000100111101111111
+01101000000000001100001001010011
+00100000010000000100111101011010
+00100100011101000000000000000000
+01110000000000101000000001010011
+01101000000000010100001001001110
+01100000000000010000001010000010
+01000111000010100100000000100010
+00100000010000000101001000111010
+00100000010000000101001010111000
+00011000000000000010010000000000
+00100000010000000101001011000011
+00011000000000000111111000000100
+11100000101000001000000000000000
+01101000000000001100001001010101
+11100000101000001000000000000000
+01011000000000000000000000001000
+11100000101000010000000000000000
+01101000000000010000001010000010
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000010000000000000000
+00011000000000000111111000000001
+11100000101000001000000000000000
+00011000000000000111111000000010
+11100000101000001000000000000000
+01101000000000001000001010000000
+11000000001010001100111110010111
+01011000000000000000000000110000
+11100000101000010000000000000000
+00100000001000000100111110011001
+01011000000000000000001111100011
+11100000101000010000000000000000
+11011000010000000000000000001100
+01100000000010010000001001101111
+00100000010000000101001011000001
+01101000000000010000001001101111
+11100000101000010000000000000000
+00011000000000000111111000000001
+11100000101000010000000000000000
+01110000000000101000000000000000
+00100000001000000100111000011110
+00011000110000001000110000000001
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+01000111000010101100000000100010
+01011000000000000000000001010000
+10011010001001100111110000000000
+00100000001000101100111110111010
+01011000000000000000000001010001
+10011010001001100111110000000000
+00100000001000101100111110111110
+01011000000000000000000001010010
+10011010001001100111110000000000
+00100000001000101100111111000010
+01011000000000000000000001010011
+10011010001001100111110000000000
+00100000001000101100111111000110
+00011000110000001000110000000010
+11101000110000010000000000000000
+10011000000000000111110000000000
+00100000001000000100111000011110
+01101000000000001100001001010000
+01111001001000000111111000000101
+01100000000000001100001001010000
+00100000001000000100111000011110
+01101000000000001100001001010001
+01111001001000000111111000000101
+01100000000000001100001001010001
+00100000001000000100111000011110
+01101000000000001100001001010010
+01111001001000000111111000000101
+01100000000000001100001001010010
+00100000001000000100111000011110
+01101000000000001100001001010011
+01111001001000000111111000000101
+01100000000000001100001001010011
+01110000000010101001100100000110
+00100000001000000111110110000110
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+00011010001000100000010000000000
+00100000010000000111111010101000
+01000111000010110100000000100010
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101100111111110010
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101101000000000010
+01011000000000000000000001010010
+10011000010001100111110000000000
+00100000001000101100111111100110
+01011000000000000000000001010011
+10011000010001100111110000000000
+00100000001000101100111111101100
+00100000010000000101000001100010
+00100000001000000101000000010111
+00011001011000100000010000000000
+01101000000000010100001001001100
+10011000010001100111110000000000
+00100000001000101100111111111000
+00100000010000000101000001100010
+00100000001000000101000000010111
+00011001011000100000010000000000
+01101000000000010100001001001110
+10011000010001100111110000000000
+00100000001000101100111111111010
+00100000010000000101000001100010
+00100000001000000101000000010111
+00011001011000100000010000000000
+01101000000000010100001001001000
+10011000010001100111110000000000
+00100000001000101100111111111110
+00100000010000000101000001100010
+00100000001000000101000000010111
+00100000010000000101000001111001
+00100000001000000101000000001010
+00100000010000000101000001111111
+01101000000000010100001001001100
+00100000001110100101000000001010
+00100000001000000101000000001010
+00100000010000000101000001110100
+01101000000000001000001010001000
+00100100001110100101000000001010
+00100000001000000101000000001010
+00011001011000100000010000000000
+01101000000000010100001001001010
+10011000010001100111110000000000
+00100000001000101101000000001000
+00100000010000000101000001100010
+00100000001000000101000000010111
+00100000010000000101000001101111
+00100000001000000101000000001010
+00100000010000000111111010101101
+01011000000000000000000000000111
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000000000100
+11100000101000010000000000000000
+00011010001000100111111000000000
+11100000101000010000000000000000
+00011001011000100111111000000000
+11100000101000010000000000000000
+00011000000000000111111000001000
+00100000001000000101000000011001
+00100000010000000111111010101101
+00100000001000000101000000011001
+10011010010000001010010000000000
+00100000001000000100111000011110
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+11101000110000010000000000000000
+00011111111000100000010000000000
+00100000010000000111111010101000
+01000111000010111100000000100010
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101101000000110101
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101101000000111011
+01011000000000000000000001010010
+10011000010001100111110000000000
+00100000001000101101000001000001
+01011000000000000000000001010011
+10011000010001100111110000000000
+00100000001000101101000001000111
+00100000010000000101000001100010
+00100000001000000101000001001111
+00011000010000100010001000000000
+00011001011000100000010000000000
+01101000000000010100001001001000
+10011000010001100111110000000000
+00100000010000101101000001110100
+00100000001000000101000001001101
+00011000010000100010001000000000
+00011001011000100000010000000000
+01101000000000010100001001001010
+10011000010001100111110000000000
+00100000010000101101000001101111
+00100000001000000101000001001101
+00011000010000100010001000000000
+00011001011000100000010000000000
+01101000000000010100001001001100
+10011000010001100111110000000000
+00100000010000101101000001111001
+00100000001000000101000001001101
+00011000010000100010001000000000
+00011001011000100000010000000000
+01101000000000010100001001001110
+10011000010001100111110000000000
+00100000010000101101000001111111
+00100000001000000101000001001101
+00100000010000000111111010101101
+00100000001000000100111000011110
+00100000001000000100111000011110
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+10011000110000001000110000000000
+01011000000000000000000000001001
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+00011000000000000111111000000000
+11100000101000010000000000000000
+00011000000000000111111000000100
+10011010010000001010010000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+00100000001000000100111000011110
+00100000001000000100111000011110
+00100000001000000100111000011110
+00011000000000000010010000000000
+00100000010000000101001011000011
+01011000000000000000000000000001
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000000000010
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000010000000000000000
+00011010010000001010010000000110
+11011010011000000000000000000100
+00100000001000000100111000011110
+01011000000000000000000000000000
+01100000000000010000001001111011
+01100000000000010100001001001010
+01110000010000100101000100000000
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000010000001001110101
+01100000000000010100001001001000
+01110000010000100101000000000000
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000010100001001001100
+01110000010000100101001000000000
+01101000000000001100001001010011
+11000000000000000101000010000101
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000010100001001001110
+01110000010000100101001100000000
+01101000000000001100001001010010
+11000000000000000101000010000101
+00100000011000000000000000000000
+01110000000010101001100100000111
+00100000001000000111110110000110
+01101000000000001000001001111111
+01111001001111111111111000000000
+01100000000000001000001001111111
+01101000000000010100001001001110
+00100000011110100000000000000000
+00100000010000000101001010111000
+01101000000000010100001001001110
+00011111111000100010001000000000
+00011000000000000010010001010011
+00100000001000000101000010011010
+01101000000000001000001001111111
+01111001001111111111111000000111
+01100000000000001000001001111111
+01101000000000010100001001001100
+00100000011110100000000000000000
+00100000010000000101001010111000
+01101000000000010100001001001100
+00011111111000100010001000000000
+00011000000000000010010001010010
+00100000010000000101001000111010
+00100000010000000101001011000011
+00011000000000000111111000000110
+11100000101000001000000000000000
+01101000000000001100001001010101
+11100000101000001000000000000000
+01011000000000000000000000000100
+11100000101000010000000000000000
+00011010001000100111111000000000
+11100000101000010000000000000000
+00011010010000100111111000000000
+11100000101000010000000000000000
+00011000000000000000010000001000
+00100000001000000101000011011110
+01000111000011000100000000100011
+00100000010000000101001000111010
+00100000010000000101001011000011
+01011000000000000000000000000010
+11100000101000001000000000000000
+01101000000000001100001001010101
+11100000101000001000000000000000
+01011000000000000000000000000100
+11100000101000010000000000000000
+00011000010000100111111000000000
+11100000101000010000000000000000
+00011001011000100111111000000000
+11100000101000010000000000000000
+11011000010000000000000000001000
+00100000001000000101000011011110
+01000111000011001100000000100011
+00100000010000000101001000111010
+00100000010000000101001011000011
+01011000000000000000000000000100
+11100000101000001000000000000000
+01101000000000001100001001010101
+11100000101000001000000000000000
+01011000000000000000000000001000
+11100000101000010000000000000000
+00011000010000100111111000000000
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000010000000000000000
+01011000000000000000000000000001
+11100000101000001000000000000000
+01011000000000000000000000000010
+11100000101000001000000000000000
+01011000000000000000001111100011
+11100000101000010000000000000000
+11011000010000000000000000001100
+00100000001000000101000011011110
+01000111000011010100000000100011
+00100000010000000101001000111010
+00100000010000000101001011000011
+01011000000000000000000000000110
+11100000101000001000000000000000
+01101000000000001100001001010101
+00011111111000001111111000000001
+00011000101000100010001000000000
+01100000000000001100001001010101
+00011010001000100000101000000000
+11100000101000001000000000000000
+01011000000000000000000000000100
+11100000101000010000000000000000
+00011000010000100111111000000000
+11100000101000010000000000000000
+00011001011000100111111000000000
+11100000101000010000000000000000
+11011000010000000000000000001000
+01100000000010010000001001101111
+00011000010000100111111000000000
+00100000001110100101001001100100
+00100000010000000101001011000001
+01101000000000010000001001101111
+11100000101000010000000000000000
+00011000000000000111111000000001
+11100000101000010000000000000000
+00100000011000000000000000000000
+01101000000000010000001001110101
+00100000001110100010101010001100
+00100000010000000101001011001110
+01101000000000010000001001110101
+11100000101000010000000000000000
+01101000000000010100001001001000
+11100000101000010000000000000000
+00100000011000000000000000000000
+01101000000000010000001001100110
+00100000001110100100110111111100
+01000111000011011100000000100011
+01101000000000001000001001101000
+11000000000000001101000011111001
+11000000001010000100110111101000
+11000000001010001100110111110101
+11000000001010010100110111110011
+11000000001010011100110111110011
+00100000001000000100110111111100
+01000111000011100100000000100011
+00100000010000000101001010111000
+00011000000000000010010000000000
+00100000010000000101001011000011
+00011111111000100000101000000000
+01101000000000010000001001100110
+00011111111000100010011000000000
+01101000000000010000001001100100
+10011000000000000000110000000000
+00100000010000000101000100001000
+00011010011000001010011111111100
+00100100001000101101000100000010
+00011010010000100000010000000000
+00100000010000000101000011011110
+00100000001000000100110111111100
+11101000110000001000000000000000
+11000000000000010101000100010011
+11000000000000001101000100010110
+11000000000000011101000100100000
+11000000000000101101000101011100
+11000000000000100101000110001110
+11000000000000111101001000010011
+11000000000000110101000111100001
+11000000000001000101000001010000
+11000000000001010100111000111010
+00100000001000000101001000101110
+00100000010000000111111010101000
+00100000010000000111111010101101
+00100000001000000100111001010001
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000001000000000000000
+00011010001000001010001111111111
+00100100001000101101000100011100
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+11101000110000010000000000000000
+00011111111000100000010000000000
+11101000110000010000000000000000
+00011111111001100111110000000000
+00100000001000101101000100110010
+11000000000000010101000100101110
+11000000000000100101000100101110
+00100000001000000101000100110000
+01110000000010101001100100010110
+00100000010000000111110110000110
+11101000110000010000000000000000
+00100000001000000101000101011001
+00100000010000000111111010101000
+01000111000011101100000000100011
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101101000101000001
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101101000101000111
+01011000000000000000000001010011
+10011000010001100111110000000000
+00100000001000101101000101010011
+01011000000000000000000001010010
+10011000010001100111110000000000
+00100000001000101101000101001101
+00100000001000000101000101011001
+00011001011000100111111000000000
+01100000000000010100001001001000
+01101000000000001100001001010000
+01111001001000000111111000000001
+01100000000000001100001001010000
+00100000001000000101000101011000
+00011001011000100111111000000000
+01100000000000010100001001001010
+01101000000000001100001001010001
+01111001001000000111111000000001
+01100000000000001100001001010001
+00100000001000000101000101011000
+00011001011000100111111000000000
+01100000000000010100001001001100
+01101000000000001100001001010010
+01111001001000000111111000000001
+01100000000000001100001001010010
+00100000001000000101000101011000
+00011001011000100111111000000000
+01100000000000010100001001001110
+01101000000000001100001001010011
+01111001001000000111111000000001
+01100000000000001100001001010011
+00100000010000000111111010101101
+00011010011000100111111000000000
+10011010001001100010011000000000
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+11101000110000010000000000000000
+11101000110000010000000000000000
+00100100001110100101000110001000
+00100000010000000111111010101000
+00011001011000100000010000000000
+01000111000011110100000000100011
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101101000101110110
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101101000101111010
+01011000000000000000000001010010
+10011000010001100111110000000000
+00100000001000101101000101111110
+01011000000000000000000001010011
+10011000010001100111110000000000
+00100000001000101101000110000010
+01101000000000001100001001010000
+01111001001000000111111000000101
+01100000000000001100001001010000
+00100000011000000000000000000000
+01101000000000001100001001010001
+01111001001000000111111000000101
+01100000000000001100001001010001
+00100000011000000000000000000000
+01101000000000001100001001010010
+01111001001000000111111000000101
+01100000000000001100001001010010
+00100000011000000000000000000000
+01101000000000001100001001010011
+01111001001000000111111000000101
+01100000000000001100001001010011
+01110000000010101001100100000110
+00100000001000000111110110000110
+00100000010000000111111010101101
+00011010001000001010001111111010
+00100000001000101101000110001101
+00011000110000001000110000000001
+00011010001000001010001111111111
+00100000001000000101000110001001
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011000110000001000110000000010
+00011111111000100000010000000000
+01011000000000000000000000000101
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+00011010001000001010001000000010
+00011010001000100111111000000000
+11100000101000010000000000000000
+00100000010000000111111010101000
+01000111000011111100000000100011
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101101000110101101
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101101000110111110
+01011000000000000000000001010010
+10011000010001100111110000000000
+00100000001000101101000111000100
+01011000000000000000000001010011
+10011000010001100111110000000000
+00100000001000101101000111001010
+00100000001000000101000111001111
+01101000000000001100001001010000
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010000
+11000010100000010101000110111011
+01101000000010001000001001111111
+01111001001000000000010000000110
+01100000000010001000001001111111
+00011000111000100111111000000000
+00011111111000001111111000000001
+01100000000000001000001010000001
+01101000000000001100001001010000
+01111001001000000111111000000010
+01100000000000001100001001010000
+01101000000000010100001001001000
+01100000000000010000001010000010
+00100000001000000101000111001111
+01101000000000001100001001010001
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010001
+01101000000000010100001001001010
+00100000001000000101000111001111
+01101000000000001100001001010010
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010010
+01101000000000010100001001001100
+00100000001000000101000111001111
+01101000000000001100001001010011
+01111001001000000111111000000100
+01111001001000000111111000000011
+01100000000000001100001001010011
+01101000000000010100001001001110
+00011111111000100001011000000000
+00100000010000000111111010101101
+00011001011000100111111000000000
+11100000101000010000000000000000
+00011000000000000111111000000000
+11100000101000010000000000000000
+00011000000000000111111000000000
+11100000101000010000000000000000
+00011000000000000111111000001010
+10011010010000001010010000000000
+00011010001000001010001111111010
+00100000001000101101000111100000
+11101000110000001000000000000000
+11100000101000001000000000000000
+00011010010000001010010000000001
+00011010001000001010001111111111
+00100000001000000101000111011010
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+00011010011000100111111000000000
+10011010001001100010011000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+00100000010000000111111010101000
+01000111000100000100000000100100
+01011000000000000000000001010000
+00011010001000100000010000000000
+10011000010001100111110000000000
+00100000001000101101000111111010
+01011000000000000000000001010010
+00011010001000100000010000000000
+10011000010001100111110000000000
+00100000001000101101000111111111
+01011000000000000000000001010011
+00011010001000100000010000000000
+10011000010001100111110000000000
+00100000001000101101001000000001
+00100000001000000101001000000011
+01011000000000000000000000000000
+01100000000000010000001001110101
+01100000000000010100001001001000
+01100000000000001100001001010000
+00100000001000000101001000000101
+00100000010000000101000001111001
+00100000001000000101001000000101
+00100000010000000101000001111111
+00100000001000000101001000000101
+01011000000000000000000000000000
+01100000000000010000001001111011
+00100000010000000111111010101101
+01011000000000000000000000000111
+11100000101000001000000000000000
+00011000111000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000000000100
+11100000101000010000000000000000
+00011010001000100111111000000000
+11100000101000010000000000000000
+00011001011000100111111000000000
+11100000101000010000000000000000
+00011000000000000111111000001000
+10011010010000001010010000000000
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000111000000000
+11101000110000010000000000000000
+00011111111000100010001000000000
+11101000110000010000000000000000
+00011111111000100001011000000000
+11101000110000010000000000000000
+00011111111000100000010000000000
+00100000010000000111111010101000
+01000111000100001100000000100100
+01101000000000001100001001010101
+10101000111000011111111000000000
+00100100001000001101001000101010
+01011000000000000000000001010000
+10011000010001100111110000000000
+00100000001000101101001000100111
+01011000000000000000000001010001
+10011000010001100111110000000000
+00100000001000101101001000101010
+00100000001000000101001000101010
+01110000010000100100100000000000
+01110000010000100101000000000000
+00100000001000000101001000101010
+00100000010000000111111010101101
+00011010011000100111111000000000
+10011010001001100010011000000000
+00100000011000000000000000000000
+01011000000000000000000000000001
+11100000101000001000000000000000
+11101000110000001000000000000000
+11100000101000001000000000000000
+01011000000000000000000000000010
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000010000000000000000
+01011000000000000000000000000110
+10011010010000001010010000000000
+00011000000000000010011000000100
+00100000011000000000000000000000
+01101000000000001100001001010101
+00011111111000001111111000000001
+11000000100000000101001000111110
+00011111111000001111111000000001
+01100000000000001100001001010101
+00100000011000000000000000000000
+01000111000100010100000000100100
+11011010010000000000000000000000
+00100000010000000101001001101110
+00100100001110100010101010001100
+00100000010000000101001001111110
+11011010010000000001100000000000
+11011000111000000000000000000000
+01101000000010001100001001010110
+10101000010011111111111111111111
+00100000001000001101001001001111
+00100000010000000101001010100000
+00011001011001100111110000000000
+00100000001000010101001001001111
+00100000010000000101001010001000
+00100000001000000101001001010101
+00011010010000001010010010000000
+00011000111000001000111000000001
+01011000000000000000000000001000
+10011000111001100111110000000000
+00100000001000010101001001000111
+11011010010000000000000000000000
+00011010010000100111111000000000
+00100000001110100010101010001100
+00100000011000000000000000000000
+01000111000100011100000000100100
+00100000010000000101001001110111
+00011000110000001000110000000001
+11101000110000010000000000000000
+00100000011000000000000000000000
+01000111000100100100000000100100
+00100000010000000101001001110111
+00011000110000100000101000000000
+00011000110000100000010000000000
+01011000000000000000000000000000
+11100000101000011000000000000000
+00100000011000000000000000000000
+01000111000100101100000000100100
+00100000010000000101001001110100
+00100000001110100010101010001100
+01101000000000011100001001011101
+01100000000000011100001001100000
+01101000000000011100001001011010
+01100000000000011100001001011101
+01101000000000011100001001010111
+01100000000000011100001001011010
+00100000011000000000000000000000
+01000111000100110100000000100100
+01101000000000011100001001010111
+00100000011000000000000000000000
+01000111000100111100000000100100
+01101000000000011100001001011010
+00100000011000000000000000000000
+01000111000101000100000000100101
+01101000000000011100001001100000
+00100000011000000000000000000000
+00100000010000000101001001110100
+00100000001110100010101010001100
+11011000110000000100001001010111
+11101000110000011000000000000000
+00100000001110100101001001111010
+00011000110000001000110111111101
+00100000011000000000000000000000
+01000111000101001100000000100101
+11011111001000000000000000000100
+11011000110000000100001001010111
+11011000010000000000000000000000
+11101000110000011000000000000000
+00011111111000010111111011111111
+10011000010000011000010000000000
+11000010000000000101001010000010
+01100000000010001100001001010110
+00100000011000000000000000000000
+01000111000101010100000000100101
+00100000010000000101001001101110
+00100100001110100010101010001100
+00100000010000000101001001110100
+00100000001110100101001010010101
+01101000000000011100001001011010
+01100000000000011100001001010111
+11101000110000011000000000000000
+11100000101000011000000000000000
+11101000110000011000000000000000
+11100000101000011000000000000000
+01011000000000000000000000000000
+11100000101000011000000000000000
+11011000010000000000000000000000
+00011001011000100111111000000000
+10011000111000001111111000000000
+11111001001000000000010000000000
+00011000111000001000111000000001
+10011000111001100111110000000000
+00100100001000101101001010011000
+00011010010011010111111000000000
+10011000010000011111111000000000
+01100000000000011100001001100000
+00100000011000000000000000000000
+01000111000101011100000000100101
+00100000010000000101001001111110
+00011000111000100010011000000000
+11011000010000000000000000000000
+11011001011000000000000000000000
+00011000111000100111111000000000
+11000000000001000101001010110000
+01101000000000001100001001010110
+10101111111011111111111111111111
+00100000001000001101001010110000
+00011000010000001000010010000000
+00011000111000001000111000000001
+00011010001000100111111000000000
+10011000010001100111110000000000
+00100000001000101101001010110000
+00100000001000010101001010100101
+00011000010000100111111000000000
+10011010001001100111110000000000
+00100100001000010101001010110110
+00011000111000100111111000000000
+00011010011000100000010000000000
+10011000010001100001011000000000
+00011010011000100000111000000000
+00100000011000000000000000000000
+01000111000101100100000000100101
+11011010001000000000000001111111
+00100000010000000101001001000000
+01100000000000010000001001101011
+00011111111000001111111000000100
+01100000000000010000001001101101
+01011000000000000000000000000000
+01100000000000010000001001101111
+00100000011000000000000000000000
+01101000000000010000001001101011
+00100000001000000101001011100010
+01101000000000010000001001101101
+00100000001000000101001011100010
+01000111000101101100000000100101
+11011010001000000000000011111010
+00100000010000000101001001000000
+01100000000000010000001001110001
+00011111111000001111111000000100
+01100000000000010000001001110011
+01011000000000000000000000000000
+01100000000000010000001001110101
+00100000011000000000000000000000
+01101000000000010000001001110001
+00100000001000000101001011100010
+01101000000000010000001001110011
+00100000001000000101001011100010
+01000111000101110100000000100101
+00100000010000000111111001111100
+01110000000000101000010000000001
+00100000010000000101001001101110
+00100100011110100000000000000000
+11011010001000000000000001111111
+00100000010000000101001001000000
+01100000000000010000001001110111
+00011111111000001111111000000100
+01100000000000010000001001111001
+01011000000000000000000000000000
+01100000000000010000001001111011
+01110000000000101000010000000000
+00100000001000000111111010001100
+01101000000000010000001001110111
+00100000001000000101001011100010
+00100000001110100010101010001100
+00011111111000100000101000000000
+00100000011000000000000000000000
+01000111000101111100000000100101
+11011010010000000000000000000000
+11011010001000000100001001010111
+00011010001000001010001111111110
+00011010001000001010001000000010
+01011000000000000100001001100011
+10011010001001100111110000000000
+00100000001000101101001011110101
+11101010001000001000000000000000
+00011010001000001010001000000001
+00100000001110100101001011101001
+11101010001010010000000000000000
+11101000010000010000000000000000
+10011010010000001010010000000000
+00011010010000001010010000000100
+00100000001000000101001011101001
+00011010010000100111111000000000
+00100000011000000000000000000000
+11011000111000000000000000001100
+00100000001000000010110000110010
+11011000111000000000000000001100
+00100000001000000010110000110110
+01000111000110000100000000100110
+00100000010000000101001001111110
+01101000000000001100001001010110
+00100000011110100000000000000000
+00100000010000000101001011100101
+11011000010000000000000100000000
+10011000010001100111110000000000
+00100000001000010101001011110111
+00100000010000000101001011111001
+11011000101000000100001001100011
+11011010001000000100001001010111
+01011000000000000100001001100011
+10011010001001100111110000000000
+00100000011000101000000000000000
+11101010001000001000000000000000
+00011010001000001010001000000001
+00100100001110100101001100001111
+11100000101000010000000000000000
+00011010001000001010001000000010
+00100000001000000101001100000110
+11101010001000010000000000000000
+00011010001000001010001000000010
+00011111111000100000110000000000
+11101000110000010000000000000000
+11100000101000010000000000000000
+00011111111000100111001000000000
+00011111001000001111001000000010
+00100000010000000111111100000001
+00100000001000000101001100000110
+01000111000110001100000000100110
+00100000010000000101001001111110
+01101000000000001100001001010110
+00100000011110100000000000000000
+11011010001000000100001001011000
+00011010001000001010001111111101
+11011000110000000100001001100011
+00011010001000001010001000000011
+01011000000000000100001001100100
+10011010001001100111110000000000
+00100000011000101000000000000000
+11101000110000010000000000000000
+00100000001110100101001100011111
+00011111111000001111111000000100
+00011111111000100111001000000000
+00011000110000100010010000000000
+11101010001000010000000000000000
+00011111111000100000101000000000
+00011010010000100000110000000000
+00011000110000001000110111111110
+00100000010000000111111100000001
+00100000001000000101001100011111
+01000111000110010100000000100110
+01111000010101011111110000000000
+01110000000001000101010100000001
+01110000000001000011111100000011
+01110000000001000101011000000001
+01011111111111111111111111111111
+01100000000000010000010001011001
+00011000000000000111111000000000
+01100000000000001000010001010111
+01100000000000001000010001100010
+01100000000000011100000101101001
+01100000000000011100000101101100
+01100000000000101100010000000011
+01111001001000000111111000100111
+01100000000000101100010000001000
+01110000010000111101110000000001
+01110000010000111101110100000000
+00100000001000000101011011101101
+01000111000110011100000000100110
+01111000001101001111110000000000
+01110000000001000100000000000011
+01110000000001000111100000000001
+01110000010001000101101000000001
+01011000000000001111111111111111
+01100000000000010100010001011100
+00011000000000000111111000000000
+01100000000000101100010000001000
+01111001001000000111111000100111
+01100000000000101100010000000011
+00100000001000000101001100101110
+01000111000110100100000000100110
+01111000010101001111110000000000
+01011000000000000000000000010111
+01100000000000010100010010101000
+01110000000001000100000000000001
+01110000010000110110111000000000
+01110000000000001010000000000000
+01110000010001001100010000000000
+01110000010001001100010100000000
+01101000000000010000010001101101
+01100000000000010100010010111010
+01101000000000010000010001000001
+00011111111011111111111000000101
+00011111111100011111111000000000
+01100000000000010000010001101101
+00100000001000000101001100101110
+00100000010000000101001111000100
+00100000010000000101010111101000
+00100000010000000101011011110000
+00100000001000000101001111001110
+01000111000110101100000000100110
+00100000010000000101001111000100
+00100000010000000011001011110100
+01101000000000001000010001000000
+11000000000000011101001101100110
+00100000001000000101001101111010
+01000111000110110100000000100110
+01111000001101001111110000000000
+00100000010000000101011011100100
+00100000001000010101001101110111
+00100000010000000010110001101100
+00100000010000000101010000010011
+00100000010000000101011000011110
+01111000010101101111110000000000
+00100000010000000101010010111111
+00100100011101101000000000000000
+01000111000110111100000000100110
+01101000000000001000000000000101
+00011111111000001111111000000001
+01100000000000001000000000000101
+00100000010000000101010110101010
+01111000010101001111110000000000
+00100000011000000000000000000000
+00100000010000000101001110101001
+01111000010101001111110000000000
+00100000011000000000000000000000
+01000111000111000100000000100111
+01110000010001010000111100000000
+00100000010000000111101010101111
+00100000010000000101110000011000
+01111000010101110111110000000000
+00100000010000000101011011100100
+00100000001000010101001110101001
+00100000010000000010110001101100
+00100000010000000101010000010011
+00100000010000000101010010001001
+00100100001011000101001110011011
+00100000010000000101001110110111
+00100000001101101101001110001000
+00100000001000000101001110010101
+01000111000111001100000000100111
+01101000000000001100010100001111
+00011111111000001111111000000001
+01100000000000001100010100001111
+11000000000001100101001110010101
+00100000010000000101010110101010
+00100000010000000101011000011110
+00100000010000000101010011000111
+00100000010000000101011001111110
+01101000000000010100000111111011
+00100000010000000111111110011100
+00100000010000000101001110100000
+00100000001101000101001110100100
+01000111000111010100000000100111
+00100000010000000101101111100100
+00100000010000000101101111011011
+00100000010000000111110110011100
+01101000000000001000010001100010
+11000010100000011101001110101001
+01000111000111011100000000100111
+00100000010000000101011111110100
+00100000010000000101010110011101
+00100000010000000101010101110101
+00100000001000000010100001000001
+01111000010101000111110000000000
+11000101000101010111111111100111
+11000101000101001111111111100111
+00100000011000000000000000000000
+01000111000111100100000000100111
+01111000001101110111110000000000
+00100000010000000101010011000001
+00100000001101101101001110001000
+00100000001000000101001110010101
+01000111000111101100000000100111
+00100000010000000101001110101111
+00100000010000000011001110110100
+00100000010000000111101001110111
+01110000000010101001100100010101
+00100000001000000111110110000110
+01011000000000000000000000000000
+01100000000001001100010011111111
+01110000000001000101010100000000
+01110000000001000100000000000000
+01110000000001000011111100000000
+01110000010001001100010100000000
+01110000010001001100010000000000
+00100000011000000000000000000000
+01000111000111110100000000100111
+01101000000000001000000000000101
+00011111111000001111111000000001
+01100000000000001000000000000101
+01101000000000001000010000111111
+11000011100000011000000000000000
+01111001001000000111111000000011
+01100000000000001000010000111111
+01101000000000010100010010111010
+01100000000000010000010001101101
+01011000000000000000000000000000
+01100000000000100100010011100101
+00100000011000000000000000000000
+01000111000111111100000000100111
+01110000100010010000111100110110
+01110000100010010000101101011111
+01111000001110110111110000000000
+01110000100010010001010000000111
+00100000010000000010110001101100
+01101000000000001100000111100000
+00100000011110100000000000000000
+01110000100010010000101010111000
+00100000011000000000000000000000
+01000111001000000100000000101000
+01110000100010010000111100101110
+01110000100010010000101111111111
+01111000010110110111110000000000
+01110000100010010001010000000011
+11011011011000000000000000000000
+00100000011000000000000000000000
+01111000010001001111110000000000
+01111000010000111111110000000000
+01101000000000011000010001100111
+10011000000000000001111000000000
+01101000000000001000000000010110
+00011111111011011000010000000000
+01111001001000000000010000000001
+00011000010000110001110000000000
+00100000011000000000000000000000
+00100000010000000101001111100110
+00100000010000000010100100011111
+01011000000000000000010100000000
+00100000010000000010101010001111
+00100000001000000010100100100100
+00100000001101101010100100111001
+00100000010000000101001111100110
+00100000001000000010100100110011
+01000111001000001100000000101000
+00100000010000000010100100011000
+01101000000000001000010010001100
+00100100001110100101001111111001
+01101000000000001000000000010110
+00011111111001100111110000100100
+00100000001000010101001111110011
+00011000000000000000010000000000
+11000001000100101000000000000000
+00011000000000000000010000011000
+11000001000100110000000000000000
+00011000000000000000010001001110
+00100000011000000000000000000000
+00011111111001100111110000001010
+00100000001000010101001111110110
+00011111111000001111111000000001
+00011111111000111111111000000000
+00011111111000001000010000000010
+00100000011000000000000000000000
+01101000000000001000000000010110
+00011111111000111000010000000000
+00100000011000000000000000000000
+11011000010000000000000111110100
+00100000011110100000000000000000
+11011000010000000000000011111010
+11000001000000001000000000000000
+11011000010000000000000010010110
+11000001000000010000000000000000
+11011000010000000000000001100100
+11000001000000011000000000000000
+11011000010000000000000001001011
+11000001000000100000000000000000
+11011000010000000000000000110010
+11000001000000101000000000000000
+11011000010000000000000000101000
+11000001000000110000000000000000
+11011000010000000000000000010100
+00100000011000000000000000000000
+01011000100011101000100110111110
+00011111111011010111111000000000
+00011111111000011111111011010110
+10011000000000000001001000000000
+01011000010101010101010101010101
+01100000000000011000010001100111
+00100000011000000000000000000000
+01000111001000010100000000101000
+01111000001010000111110000000000
+01101000000000100000010001100011
+10011000000000000001001000000000
+00100000010000000101010001100110
+01011000000000000000001000000000
+00100000001101001101010000011100
+01101000000000010000010001001101
+00011111111000110111111000000000
+11011000010000000000010100000000
+10011000010000001111111000000000
+00100000010000000010101000100100
+00011011010000100111111000000000
+01100000000000110000010010010001
+00100000011000000000000000000000
+01000111001000011100000000101000
+01101000000000001000000000010110
+11000000000100101101010000101000
+11000000000100110101010000101110
+11000000000100111101010000110100
+00100000001000000101010000110100
+01101000000010001100010010001101
+00101000010011111111111000000001
+00100000001000001101010000111111
+00101000010011111111111000000010
+00100000001000001101010001000100
+00100000001000000101010000111010
+01101000000010001100010010001101
+00101000010011111111111000000010
+00100000001000001101010001000100
+00101000010011111111111000000000
+00100000001000001101010000111010
+00100000001000000101010000111111
+01101000000010001100010010001101
+00101000010011111111111000000000
+00100000001000001101010000111010
+00101000010011111111111000000001
+00100000001000001101010000111111
+00100000001000000101010001000100
+01110000000000000001011000100101
+01101000000000001000101011000010
+01111001001000000111111000000000
+01100000000000001000101011000010
+00100000011000000000000000000000
+01110000000000000001011000100110
+01101000000000001000101011000010
+01111001001000000111111000000001
+01100000000000001000101011000010
+00100000011000000000000000000000
+01110000000000000001011000100111
+01101000000000001000101011000010
+01111001001000000111111000000010
+01100000000000001000101011000010
+00100000011000000000000000000000
+01000111001000100100000000101000
+00011010001000001000110000000001
+11101000110000001000000000000000
+11000100000000000000000000000000
+00011010001000001000101000011010
+11101000101000010000000000000000
+00011111111000001111111000000001
+11100000101000010000000000000000
+00011010001000001000110000011001
+11101000110000001000000000000000
+00011010001000001000101000011000
+11101000101010001000000000000000
+10011000010000001111111000000000
+00011111111001100111110000100100
+00100000001000010101010001011001
+00011111111000001111111111011011
+11100000101000001000000000000000
+00100000011000000000000000000000
+01000111001000101100000000101000
+01101000000000101000010001101111
+00011000000000000000010000000000
+00011000000000000111001000100101
+11000011000000000101010001100001
+00011000010000001000010000000001
+00011111111000110111111000000000
+11000010000000000101010001011111
+00011000010000001111111111111111
+01100000000000001000010001100001
+00100000011000000000000000000000
+01000111001000110100000000101000
+01101000000000001000010001010111
+10011000000000000000111000000000
+01101000000010101000010001101111
+10101000010011111111111111111111
+00100000001000001101010001111100
+01000111001000111100000000101000
+01101000000000001000010001100001
+10011000111001100111111000000000
+00100000001000010101010001110010
+00011111111001100000111111111111
+00100000001000000101010001101100
+00011000111000100111001000000000
+00011000000000000000111000000000
+10101000010011111111111111111111
+00100000001000001101010001110111
+00011111001000001111001000000001
+00011111001000100111111000000000
+00100000001110100101010001111100
+00011000111000001000111000000001
+00011111001000001111001111111111
+00100000001000000101010001110100
+00011000111000100111111000000000
+01100000000000001000000000010110
+00100000011000000000000000000000
+00100000001101001101010010000010
+00110111110000011000001000000000
+00100000011000000000000000000000
+11011001011000000000111010100000
+00110100011100110000001000000000
+00100000011000000000000000000000
+01111000010010000111110000000000
+01101000000000010100001101101100
+00011111111000100001011000000000
+00100000001000000101010010001110
+01000111001001000100000000101001
+01111000001010000111110000000000
+01101000000000010000010001001101
+01101000000010100100010011100101
+10011000010000001001011000000000
+00100000010000000101001111011110
+01000111001001001100000000101001
+00100000010000000101001111010101
+01111000010101101111110000000000
+01111000001001101111110000000000
+01111000001100001111110000000000
+01111000010100000111110000000000
+00011001011000100011011000000000
+00110111110000011000010000000000
+00100000001101110101010010011010
+00011011010000100000010000000000
+01100000000010110000000010011010
+00100100001011000010011001001101
+00100000001101110101010010100001
+11011101001000000000000111100000
+00011100001000100101000000000000
+01101000000000001000010000111111
+11000011000000011101010010100001
+00100000010101011010101100000101
+01000111001001010100000000101001
+00100000010000000010100110111011
+01111000001000111111110000000000
+01111000001001001111110000000000
+00001001100000000000000000001000
+00011001100010010111111000000000
+01100000000000001000001011011001
+00001001100000000000000000001000
+00011001100010010111111000000000
+11100000101000001000000000000000
+00011111111000010111001000111111
+00100000001000101101010010110001
+00001001100000000000000000001000
+00011001100010010111111000000000
+11100000101000001000000000000000
+11000010000000000101010010101101
+01000111001001011100000000101001
+00001001100000000000000000011000
+01111000001010000111110000000000
+11011011011000000000011001100100
+00011111111011110111111000000000
+00011111111100010111111000000000
+11100000101000011000000000000000
+00100000001000110010011001001101
+01111000001101101111110000000000
+01101000000000001000000000010111
+00011111111000001010001000000000
+00100000010000000010100110000001
+01111000010001101111110000000000
+00100000001000000010100100011000
+01000111001001100100000000101001
+00100000010000000101010011001001
+01101000000010001000000000010111
+00100000010000000010100100011111
+00100000010000000010100100100100
+01111000001010000111110000000000
+11011001011000000001010101111100
+00100000001000000101010010001111
+00100000010000000101010011001001
+00100000001000000010011001001101
+01000111001001101100000000101001
+00100000010000000101001111010101
+00100000010000000101001111100011
+00100000001000000101010011001101
+01111001001000000010101000000000
+01111000001011101111110000000000
+01111000001100000111110000000000
+01111000010100001111110000000000
+00100000010000000101010001111111
+00011001001100010111111000000000
+00011111111011001111111000000000
+00011111111100011111111000000000
+00001000000000001000011000101000
+01111000001000111111110000000000
+01111000001001001111110000000000
+01000111001001110100000000101001
+01101000000000001100001111011100
+00001000000000001000011000001000
+11101000110000001000000000000000
+00011111111000010111001000111111
+00001000000000001000011000001000
+00100000001000101101010011100010
+11101000110000001000000000000000
+00001000000000001000011000001000
+11000010000000000101010011011111
+01111000001001000111110000000000
+00001000000000001000011000011000
+01111000010001000111110000000000
+00110111110100111000001000000000
+00100000000000000000000001100100
+01111000010011101111110000000000
+00100000011000000000000000000000
+01000111001001111100000000101001
+01101000000000001100010010000100
+11000000000000001101010011111001
+01101000000000001100010010000101
+00011111111100100111111000000000
+00011111111010111111111000000000
+01100000000000001100001111011100
+01101000000010001100001101101111
+00011000010000001111111000000110
+01100000000000001100001111011101
+01101000000000110100010010100000
+01100000000000110100001111011110
+00011000010000100111001000000000
+11011000110000000100001101110000
+00100000010000000111111011110100
+00100000001000000101010100000100
+01101000000000001100010010000110
+00011111111100100111111000000000
+00011111111010111111111000000000
+00011111111000001111111000000001
+01100000000000001100001111011100
+01011000000000000000000000001100
+01100000000000001100001111011101
+01101000000000110100010010100000
+01100000000000110100001111011110
+01101000000000110100000111010000
+11100000101000110000000000000000
+01000111001010000100000000101010
+01101000000000001000000000000000
+00011111111000001111111000000001
+01100000000000001000000000000000
+11011011011000000000011100001000
+01111000010101101111110000000000
+00100000001000000101010010111111
+01000111001010001100000000101010
+01101000000000001100010010011110
+11000001100000001000000000000000
+01101000000000001000000000000000
+00011111111000001111111000000001
+01100000000000001000000000000000
+11011000010000000000110000000011
+01101000000000001100010010011111
+01111101001110100000010000000110
+00011010001000100111111000000000
+01111101001110100000010000000111
+01100000000010010100001111011100
+01101000000000110100010010100000
+11100000101000110000000000000000
+01101000000000110000010001001111
+11100000101000110000000000000000
+00100000001000000101010010111111
+01000111001010010100000000101010
+11011000010000000000000000000100
+01101000000000001100010010000101
+01111101001110100000010000000110
+01100000000010001100001111011100
+01101000000010001100001110001111
+00011000010000001111111000000110
+01100000000000001100001111011101
+01101000000000110100010010100000
+01100000000000110100001111011110
+11011000110000000100001110010000
+00011000010000100111001000000000
+00100000010000000111111011110100
+00100000010000000101010011000111
+00100000001000000101011100000110
+01000111001010011100000000101010
+00011000000000000111111111111111
+00111000000010000000000000000001
+01100000000000101000010001101111
+00100000010000000101010001011011
+00011000000000000111001000000100
+11011000101000000000010001100011
+00100000010000000110001100001101
+01101000000000010100010010011100
+01100000000000010000010001101101
+00011000000010100111111000000000
+00011111111000010111111000001111
+00011111111001100111110000000100
+00100000001000010101010100110101
+01100000000000001000010001011000
+01100000000000001000011011100110
+01000111001010100100000000101010
+01101000000010010100001101100111
+01100000000010010000010001000001
+00011000010000100010011000000000
+00011100010000001111111000000111
+10011010011001101111110000000000
+00100000010000000111111110000110
+00011000000001110010001000000000
+10011010001001100111111000000000
+10011010011000001111111000000000
+01101000000010010100001101100101
+10011000010000001111111000000000
+01100000000000100000010001000011
+10011100010001100010001000000000
+00011010001000001010001111111010
+11011010010000000010001000000101
+01101000000000001100010010010101
+01111101001110100010010000000110
+01101000000000001100010010001110
+01111101001110100010010000000111
+00011010010000100111111000000000
+01100000000000010100001111011100
+01101000000000110100010010100000
+11100000101000110000000000000000
+01101000000000110000010001001111
+11100000101000110000000000000000
+01101000000000100000010001100011
+11100000101000100000000000000000
+00011000000010100111111000000000
+11100000101000010000000000000000
+00011000000010100111111000000000
+11100000101000001000000000000000
+00011000000000000111111000000010
+11100000101000001000000000000000
+00011010001010110111111000000000
+11100000101000010000000000000000
+00011010011010110111111000000000
+11100000101000010000000000000000
+01000111001010101100000000101010
+01011000000000000000000000000000
+11100000101000010000000000000000
+01101000000000010100010010011100
+11100000101000010000000000000000
+01101000000000101000010001101111
+11100000101000101000000000000000
+01101000000000001000010001011000
+11011000010000000000000010100000
+10011000010000011111111000000000
+11100000101000001000000000000000
+00100000010000000101010011000111
+01011000000000000100001111011100
+00011111111000001000110000010010
+11101000110000011000000000000000
+01100000000000011000010001100111
+00100000011000000000000000000000
+01000111001010110100000000101010
+01111000010101001111110000000000
+00100000001000000101010000001100
+01101000000000001000010000111111
+11000100000000101000000000000000
+01101000000000010000010001011001
+01101000000010010000010001011111
+10011000010001100111111000000000
+00100100011000010000000000000000
+01100000000000010000101010011010
+01000111001010111100000000101010
+01101000000000001000010000111111
+01111001001111111111111000000101
+01111001001111111111111000000011
+01100000000000001000010000111111
+01101000000000100000010001000011
+01101000000010010000010001000001
+01100000000010010000101010100010
+10011000010001100010001000000000
+01000111001011000100000000101011
+01101000000000001100001111010011
+01100000000000001000010001101010
+11101000110010010000000000000000
+11101000110000010000000000000000
+00011111111010111111111000000000
+01100000000000010000010001000001
+00011000010010111000010000000000
+10011000010000001111111000000000
+11101000110010100000000000000000
+01100000000010100000010001101011
+10011010001000001111111000000000
+00011111111000100010100000000000
+01101000000000010000010001000001
+01101000000010010000101010100010
+10011000010001100111111000000000
+01101000000010010000101010011010
+10011000010011111111111000000000
+10011010100000001111111000000000
+01100000000000100000010001000011
+00100000010000000101011100010011
+01101000000000010000010001101101
+01100000000000010100010010111010
+00100000011000000000000000000000
+01000111001011001100000000101011
+01101000000000001000010000111111
+11000100000000110000000000000000
+01101000000000010000010001011001
+01101000000010010000010001011111
+10011000010001100111111000000000
+00100100011000010000000000000000
+01101000000000001000010000111111
+01111001001111111111111000000110
+01100000000000001000010000111111
+01101000000000101100001111001110
+01100000000000101000010001101111
+00100000001000000101010001011011
+01000111001011010100000000101011
+00100000010000000101011011101101
+00100000010000000101010111000000
+01101000000000001000001011011001
+00101111111011111111111000000100
+01111001001000001000000000101010
+00011111111000110111111000000000
+10011000010000101111111000000000
+00101111111011111111111000000010
+01111001001000001000000000001111
+11000110000001111000000000000000
+01101000000000001000001011011010
+00100000001110100101010110111100
+01101000000000001000010000111111
+11000011000000100101010110111100
+00100000010000000111010010001101
+00100000010000000111001111111011
+00100100011110100000000000000000
+01101000000010001000010001010110
+01111001010000000000010000000010
+01100000000010001000010001010110
+00100000011000000000000000000000
+01000111001011011100000000101011
+01101000000010001000010001010110
+00101000010011000000000000000101
+00100000011000001000000000000000
+01101000000000001000001011011001
+00011111111000111111111000000000
+10011000010000101111111000000000
+11000100000000011000000000000000
+01111001001111111000010000000101
+01111001010000000000010000000011
+01100000000010001000010001010110
+00101000010000000000011000000011
+00100100011000001000000000000000
+01101000000000001100001111011110
+11000000000000101101010111010010
+01101000000000001100010011000101
+11000000000000010101010111010110
+00100000011000000000000000000000
+01101000000000001000010000111111
+01111001001000000111111000000100
+01100000000000001000010000111111
+00100000011000000000000000000000
+01000111001011100100000000101011
+01110000010001001100010100000000
+11011111111000000000000000000000
+01100000000000100100010000001101
+01100000000000101100010000000011
+01111001001000000111111000100111
+01100000000000101100010000001000
+01101000000000001000010000111111
+01111001001111111111111000000100
+01100000000000001000010000111111
+00100000011000000000000000000000
+01000111001011101100000000101011
+00100000010000000101010000100010
+00100000010000000101010010000101
+01101000000000001000000000000001
+00011111111000001111111000000001
+01100000000000001000000000000001
+00100000011000000000000000000000
+01000111001011110100000000101011
+01101000000000001100001101101001
+11000001100000001000000000000000
+11011000111000000000000000000010
+00100000010000000111111100010110
+00100100011110100000000000000000
+01101000000000010100001101101010
+01101000000010010100001101101100
+10011000010001100111111000000000
+11011000111000000000000000000010
+00100000010000000111111100001000
+01111000010101001111110000000000
+00100000010000000101010101110010
+00100000010000000101010111100001
+00100100011101101000000000000000
+01000111001011111100000000101011
+01101000000000110000001011011011
+01100000000000110000010001001111
+01101000000000001000000000000010
+00011111111000001111111000000001
+01100000000000001000000000000010
+00100000010000000101011000001000
+00100000011101001000000000000000
+00100000010000000101010100001011
+00100100011101101000000000000000
+01000111001100000100000000101100
+01101000000000001000000000000100
+00011111111000001111111000000001
+01100000000000001000000000000100
+01101000000001001000001011100001
+01100000000001001000000100000001
+00100000011000000000000000000000
+01000111001100001100000000101100
+01101000000000001000010010011011
+11000001100011011000000000000000
+01101000000000110000010001001111
+01101000000010110100010010001111
+10011000010001100111110000000000
+00100100011000101000000000000000
+00100000010000000010001000111011
+00100100011000101000000000000000
+00100000010000000101010100101011
+00100000010000000101001101000000
+01000111001100010100000000101100
+01110000010000011100111000000000
+01110000000001000111011000000000
+01110000010000110110100100000000
+01110000000001001001101100000000
+00100000001000000010001000100011
+11011010001000000000000000000001
+01101000000000001000001011011001
+11000011100000110000000000000000
+11011010001000000000000000000000
+00100000011000000000000000000000
+01000111001100011100000000101100
+01101000000000001000010001010110
+11000011100000101000000000000000
+00100000010000000101011001000010
+00100000010000000101100001110011
+00100000001110100101011001100100
+11101000110000001000000000000000
+11101000110010001000000000000000
+00011000010000100010001000000000
+10011010001001100111111000000000
+11011000010000000000000000011011
+00100000010000000111111111011101
+00011111111000100000010000000000
+11101000110000001000000000000000
+00011111111000100000001000000000
+00011010001000100111111000000000
+10011000110000001000110000000000
+11011000101000000100001111011110
+00011000010000100111001000000000
+00100000010000000111111100000001
+00100000010000000101011001010100
+00100000010000000101011001100110
+00100000010000000101100001110011
+11101000110000001000000000000000
+00011111111000100010001000000000
+00011000110000100010011000000000
+11101000110010001000000000000000
+00011000010000100010010000000000
+10011010010001100111111000000000
+11011000010000000000000000011011
+00100000010000000111111111011101
+10011010010000001111111000000000
+11100010011000001000000000000000
+10011010001001100111110000000000
+00100100011000101000000000000000
+00100000001000000101100010010110
+00100000010000000101011001001001
+11000110000101001000000000000000
+01101000000000001100010011101001
+11000011000000010101011001010010
+00100000010000000101100001110110
+00100000001110100101011001010010
+00100000001000000101011001010000
+00100000010000000101100001110011
+00100000001110100101011001010010
+11101000110000001000000000000000
+11101000110010001000000000000000
+10011000010001100111111000000000
+00011111111001100111110000011011
+00100000001000010101011001010010
+01111001001000000000000000101001
+00100000011000000000000000000000
+01111001001111111000000000101001
+00100000011000000000000000000000
+00011010001000100111111000000000
+00100000011110100000000000000000
+11011000001000000000000000000001
+00100000011000000000000000000000
+01000111001100100100000000101100
+00011000010000001000010000000001
+00100000010000000101011101101010
+00011000110000001000110111111110
+11101000110000010000000000000000
+11011000010000000010100100000010
+10011000010001100111110000000000
+00100100011000101000000000000000
+00011000110000001000110000000001
+00011000110000100010001000000000
+11101000110000001000000000000000
+00100000011000000000000000000000
+00011000000000000000010000000000
+00011000000000000000001000000001
+01000111001100101100000000101100
+01100000000010001100001111011101
+01101000000010001000010001010110
+01111001001000000000010000000101
+00011000010000010111111011111100
+10011000001000011111111000000000
+01100000000000001000010001010110
+00011111111000010111111000011111
+00101000000011111111111000101001
+01111001001000001111111000000100
+01100000000000001100001111011100
+01101000000000001100001111011100
+00101000001000000000011000000001
+00100100001000001101011001110110
+01101000000000001100001111011101
+00100000011110100000000000000000
+01101000000000001000010000111111
+11000100000000100000000000000000
+00100000010000000111010010001101
+00100000001000000111001111100011
+11011000111000000000000000000000
+00100000001000000010110000110010
+11011000111000000000000000000000
+00100000001000000010110000110110
+01000111001100110100000000101100
+11000110000001111000000000000000
+00100000010000000101100010010000
+00100100011110100000000000000000
+01101000000000001000001011011001
+00011111111000010111111000000011
+01100000000000001100010100001100
+11101000110000001000000000000000
+00011111111000010111111000011111
+01100000000000001100010100001011
+00100000011110100000000000000000
+00011000110000100111111000000000
+01100000000000010100010100001101
+01101000000000001100010100001100
+11000000000000011101110001100100
+00100000010000000101011010011010
+00100100001101000101011001111010
+00100000010000000101011001111100
+01101000000000010100010100001101
+00011111111000100000110000000000
+11101000110000010000000000000000
+01100000000000010100010011111100
+01000111001100111100000000101100
+11101000110000010000000000000000
+11000000000000100101100010101011
+11000000000000110101101011110100
+11000000000000101101101010110110
+00100000011000000000000000000000
+01101000000000001100010100001100
+11000000000000010101011010101001
+11000000000000001101011011000001
+00100000011000000000000000000000
+00100000010000000111111111100111
+11011000010000000000000000000100
+10011111111001100111110000000000
+00100000011000101000000000000000
+11011000010000000000000000000101
+10011111111001100111110000000000
+00100000011000101000000000000000
+11011000010000000000000000000110
+10011111111001100111110000000000
+00100000011000101000000000000000
+00100000001000000111111111101001
+01101000000000010100010100001101
+00011111111000100000110000000000
+11101000110000010000000000000000
+01100000000000010100010011111100
+11101000110000010000000000000000
+00100000010000000101011010011110
+00100100011101000000000000000000
+01101000000010001100010100001011
+01100000000010001100010011111110
+01101000000000010100010011111100
+00011111111000001111111000000100
+10011000010001100111110000000000
+00100000001000101111111111100111
+01101000000000001100010100001011
+00011111111000100111001000000000
+11011000101000000000001100010001
+01101000000000010100010100001101
+00011111111000100000110000000000
+00100000010000000111111100000001
+00100000001000000111111111101001
+00100000010000000111111111100111
+01101000000000001100010011111110
+00100100011110100000000000000000
+00100000001000000111111111101001
+00100000010000000101011010111101
+00100100011101000000000000000000
+01101000000000001100010011111110
+11011000101000000000001100010001
+10011000101000001010001000000000
+01101000000010001100010100001011
+10011000010000001111111000000000
+01100000000000001100010011111110
+01101000000000001100010100001011
+00011111111000100111001000000000
+00011010001000100000101000000000
+01101000000000010100010100001101
+00011111111000100000110000000000
+00100000010000000111111011110100
+01011000000000000000001100010001
+01100000000000010100010100001101
+01101000000000010100010011111100
+00011111111000001111111000000100
+01101000000010001100010011111110
+10011000010001100111110000000000
+00100000001000101111111111100111
+00100000001000000111111111101001
+00100000010000000111111010100101
+11011000101000000100010001011110
+01101000000000010100010011111100
+00011111111000001111111111111011
+11100000101000001000000000000000
+00011111111000100111001000000000
+00100000010000000111111010011111
+00100000001000000111111011110100
+00100000010000000111111010100101
+11011000101000000100010001110001
+00100000001000000101011011011001
+01101000000000010100000111111001
+00100000001000000111111110011100
+01101000000010100000010001011011
+00100000010000000010101001111011
+10011000010001100001011000000000
+00011001011000100111111000000000
+01101000000010010000010001101101
+00011000010100100000010000000000
+00011000010000111000010000000000
+10011000010001100111111000000000
+00100000011000000000000000000000
+00100000010000000010101001111011
+01100000000000100000010001011011
+00100000011000000000000000000000
+01110000000000000001011000100100
+01110000000010101100001000000000
+01000111001101000100000000101101
+01101000000000001100001101101110
+00100000011110100000000000000000
+11011000111000000000000000000000
+00100000010000000111111100010110
+00100100011110100000000000000000
+01000111001101001100000000101101
+01111000010101001111110000000000
+01111000001010000111110000000000
+00100000010000000101010101110010
+00100000010000000101010000100010
+00100000010000000101010011101001
+00100100001101101101011100000110
+01101000000000001000000000000011
+00011111111000001111111000000001
+01100000000000001000000000000011
+01101000000000001000001011011001
+00011111111000010111111000001111
+11000000000000011101010100011100
+11000000000000101101011100101000
+01000111001101010100000000101101
+00011000000010100111111000000000
+11011000010000000000000111111111
+10011000010000010111111000000000
+00011111111000001111111011111010
+00100000010000000011110010111110
+01101000000000001000101011000010
+01101000000010001100010010001101
+10011000010001100111110000000000
+00100100001000101101011011110010
+11011000111000000000000000000000
+01101000000000010100010010000010
+00100000001000000111111100001000
+01000111001101011100000000101101
+01101000000000001000010001110110
+00100000010000000101001111111100
+01101000000000010000010001000001
+10011000010011111111111000000000
+11011000010000000000000101110111
+10011000010011111111111000000000
+11011000010000011000011010100000
+10011000010001101111110000000000
+01101000000000001000010001101010
+11011000010000000100111000100000
+10011000010011111111111000000000
+10011000010000001111111000000000
+01100000000000100100010011100101
+01000111001101100100000000101101
+01101000000000010100000011000001
+00100000010000000111111110000110
+00011000000001111000010000000000
+10011000010000001111111000000000
+01100000000000010000010001001101
+00100000011000000000000000000000
+01000111001101101100000000101101
+01101000000000110000001011100001
+01101000000010110100010010100000
+10011000010001100111110000000000
+00100100011000101000000000000000
+00100000010000000101011000011001
+00011010001000100111111000000000
+01100000000000001100010010001110
+01101000000000111000001011101110
+01100000000000111000000100000001
+11101000110001000000000000000000
+11100000101001000000000000000000
+01101000000000110000001011011011
+01100000000000110000010001001111
+00011000110000001000110000000110
+11101000110001000000000000000000
+01100000000001000000010001100011
+11101000110010010000000000000000
+01000111001101110100000000101101
+00011000010010111000010000000000
+11101000110000010000000000000000
+00011111111010111111111000000000
+01100000000000010000010001000001
+01100000000000100000010001000011
+10011000010001100111111000000000
+00011111111000001101000111111110
+11101000110001001000000000000000
+01100000000001001000010001101011
+01000111001101111100000000101101
+11101000110000001000000000000000
+00011111111100011000010000000000
+00011000010000110000010000000000
+01100000000010001000010001110110
+00011111111000010111111000011111
+01100000000000001000010001011000
+00100000010000000101011100010011
+00100000010000000101010001011011
+00100000010000000101001101001100
+00100000010000000010001000111011
+00100100011000101000000000000000
+01000111001110000100000000101110
+00100000010000000010100001000001
+00100000010000000101101011010011
+01110000000010101001100100010100
+00100000010000000111110110000110
+00100000001000000010001000100011
+01000111001110001100000000101110
+01101000000000010100010001011010
+10011000000000000010010000000000
+01101000000000010100010001011100
+10011000000000000010011000000000
+01101000000000010100010010111100
+10011000000000000000110000000000
+01111000001101000111110000000000
+00100000011000000000000000000000
+11101000110000010000000000000000
+00100000011110100000000000000000
+10011010010001100111110000000000
+00100100011000010000000000000000
+10011010011001100111110000000000
+00100000011000101000000000000000
+00100000001000010101011101101000
+00011000000000000111110000000001
+00100000011000000000000000000000
+00011000000000000111111000000000
+00100000011000000000000000000000
+00100000010000000101011101101101
+00100000001000101101011101111001
+00100000011000000000000000000000
+01000111001110010100000000101110
+01101000000000010100010010111100
+10011000000000000000110000000000
+11101000110000010000000000000000
+00100000011110100000000000000000
+10011000010001100111110000000000
+00100000011000101000000000000000
+11101000110000001000000000000000
+10011000110000001000110000000000
+11101000110000001000000000000000
+10011000110000001000110000000000
+00100000001000000101011101110000
+11101000110000001000000000000000
+10011000110000001000110000000000
+00100000011000000000000000000000
+01000111001110011100000000101110
+01101000000000010100010010111100
+10011000000000000000110000000000
+11101000110000010000000000000000
+00100000011110100000000000000000
+11101000110000001000000000000000
+10011000110000001000110000000000
+00011000110000001000110111111110
+11101000110000010000000000000000
+10011000010001100111110000000000
+00100000011000101000000000000000
+11101000110000001000000000000000
+10011000110000001000110000000000
+00100000001000000101011101111111
+01101000000000010000010010011100
+00100000001000000101011110001110
+01000111001110100100000000101110
+01101000000000010100010010111100
+10011000000000000000110000000000
+00011000010000100010001000000000
+11101000110000010000000000000000
+00100000001110100101011110011001
+10011010001001100111110000000000
+00100000001000101101011110011010
+11101000110000001000000000000000
+10011000110000001000110000000000
+11101000110000001000000000000000
+10011000110000001000110000000000
+00100000001000000101011110010000
+00100000001000000111111111101111
+11101000110000001000000000000000
+01100000000000001000010010100010
+00011111111000100111001000000000
+11011000101000000000010010100011
+00100000010000000111111011110100
+11101000110000001000000000000000
+01100000000000001000010010110011
+00100000010000000111111010100101
+00100000001000000111111111110001
+01000111001110101100000000101110
+00100000010000000101011110100110
+00100000001000000101011110111000
+11011000010000000010101000000000
+00100000010000000101011101111100
+00100000011110100000000000000000
+11101000110000001000000000000000
+00011000110000100000101000000000
+01101000000010001100001110101111
+00011000010000100111001000000000
+10011000010001100111110000000000
+00100100001000010101011110110101
+10011000010001100000010000000000
+11011000110000000100001110110000
+00100000010000000111111100000001
+00011000010000100111001000000000
+00100100010000101101011111110000
+00100000011000000000000000000000
+00011111111000100111001000000000
+11011000110000000100001110110000
+00100000001000000111111011110100
+11011010011000000100001110001111
+11011010001000000100001101110000
+00100000010000000101011111000101
+01011000000000000000000000000000
+01111001001101000111111000000000
+01100000000000001000101010011010
+11011010011000000100001110101111
+11011010001000000100001110010000
+00100000010000000101011111000101
+00100000011101000000000000000000
+01101000000000001000101010011010
+00100000001110100010101010001100
+00100000011000000000000000000000
+01000111001110110100000000101110
+00100000010000000111111111100111
+00100000010000000111111011011010
+11011010010000000000000000000000
+11011000101000000000101011000011
+00100000010000000101011111011111
+01101000000000001100001110101111
+00011111111000001000010000000001
+10011010010000001010001000000000
+00011010001000001010001000000010
+00011010001001100111110000011111
+00100100001000010101011111011101
+11100000101010001000000000000000
+11011000010000000000000000001001
+11100000101010001000000000000000
+10011000000000000111001000000000
+00100000010000000111111011110100
+00011010001000100010010000000000
+00011010010000100111111000000000
+01100000000000001000101011000010
+11011000110000000000101011000010
+01011111111111111111111111100000
+10011010011000001000101000000000
+00100000001000000111111010111101
+00100000010000000111111111101001
+00100000001000000101011111010111
+11101010001000001000000000000000
+00100000011110100000000000000000
+00011111111000001111111000000001
+11101000110010001000000000000000
+00011000010001100111110000001001
+00100000001000101101011111101110
+10011010010000001010010000000000
+00011010001000100000110000000000
+10011000000000000111001000000000
+00100000010000000111111011110100
+00011000110000100010001000000000
+00011010001000100111111000000000
+10011010011001100111110000000000
+00100000011000010000000000000000
+00100000001000000101011111011111
+10011010001000001010001000000000
+00100000001000000101011111101010
+01011000000000000000000000100000
+11100000101000001000000000000000
+11000010000000000101011111110000
+00100000011000000000000000000000
+01000111001110111100000000101110
+01111000010101011111110000000000
+00100000001101110101011111111000
+00100100001101101101100000000110
+00100000010000000010101111001011
+01101000000000010100000011000001
+01100000000000010000010001001101
+00100100001101101010101111011110
+11000101000001111010101111011110
+01101000000000001100010100001011
+00100100001110100010101111011110
+01101000000000001100001111011101
+00100100001110100010101111011110
+01101000000000001100010011101001
+11000010100000101010101111011110
+01101000000000001000010000111111
+11000010100000101010101111011110
+00100000001000000010101111000000
+01101000000010010100000011000001
+00011000010000110000010000000000
+01101000000000010000010001001101
+10011000010000001111111000000000
+01100000000000010000010001001101
+00100000001000000010101111010110
+11011000111000000000000000000000
+00100000001000000101100000100100
+11011000111000000000000000000000
+00100000001000000101100000101000
+11011000111000000000000000000001
+00100000001000000101100000100100
+11011000111000000000000000000001
+00100000001000000101100000101000
+11011000111000000000000000000010
+00100000001000000101100000100100
+11011000111000000000000000000010
+00100000001000000101100000101000
+11011000111000000000000000000011
+00100000001000000101100000100100
+11011000111000000000000000000011
+00100000001000000101100000101000
+11011000111000000000000000000100
+00100000001000000101100000100100
+11011000111000000000000000000100
+00100000001000000101100000101000
+11011000111000000000000000000101
+00100000001000000101100000100100
+11011000111000000000000000000101
+00100000001000000101100000101000
+01101000000000001100010011101001
+11111001001000000111111000000000
+01100000000000001100010011101001
+00100000011000000000000000000000
+01101000000000001100010011101001
+11111001001111111111111000000000
+01100000000000001100010011101001
+00100000011000000000000000000000
+01011000000100010010001000110011
+01100000000000011100010011101010
+01011000010001000101010101100110
+11100000101000011000000000000000
+01011000011101111000100010011001
+11100000101000011000000000000000
+01011000000000000001000100100010
+11100000101000011000000000000000
+01011000001100110100010001010101
+11100000101000011000000000000000
+01011000000000000000000001100110
+11100000101000001000000000000000
+00100000011000000000000000000000
+01011001000000000000001100000010
+01100000000000100100010001010011
+01011000000000010000000000010000
+01100000000000011100010001010111
+01110000010001001100011000000001
+00100000011000000000000000000000
+11011010001000000000000000000000
+11011000001000000000000000000001
+00100000001000000101100001010000
+11011000001000000000000000000011
+00100000010000000101100001010000
+00011010010000100111111000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+00011000000000000000001000000010
+00011010001000001010001000000100
+00100000010000000101100001010000
+00011010001000001010001111111100
+00011010001000100111111000000000
+11100000101000010000000000000000
+00011010010000100111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+00011010001001100111110011110000
+00100100001000010010101010001100
+01101000000000001100010011111111
+11011000010000000000000000000001
+11011111001000000000000000000100
+10011000010000010111110000000000
+00100000001000101101100001011010
+00011000010000111000010000000000
+11000010000000000101100001010101
+00100000001000000010101010001100
+10011000010000101111111000000000
+01100000000000001100010011111111
+00011111001001100111111000000100
+00011111111100100111111000000000
+00011111111100100111111000000000
+11011000010000000001100000000000
+10011000010000001000010000000000
+11011111001000000000000000000000
+11011000110000000100010100000000
+11101000110000010000000000000000
+00100000001110100101100001101001
+00011111001000100111111000000000
+00011111001000001111001000000001
+11000000100000100101100001100011
+00100000001000000010101010001100
+00011000110000001000110111111110
+11100000110010010000000000000000
+00011000010000100000101000000000
+00011010001000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000000000000
+11100000101000001000000000000000
+00011000001000100111111000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+01101000000000010100010100000000
+00011111111000100000110000000000
+00100000011000000000000000000000
+01101000000000010100010100000010
+00011111111000100000110000000000
+00100000011000000000000000000000
+00100000010000000101100001111100
+00011111111000100000110000000000
+00100000011000000000000000000000
+01101000000000010100010100000110
+00100100011110100000000000000000
+01101000000000010100010100000100
+00100100011110100000000000000000
+01101000000000010100010100000010
+00100100011110100000000000000000
+01101000000000010100010100000000
+00100000011000000000000000000000
+00100000010000000101100001110011
+00011000110000001000110000000011
+00100000011000000000000000000000
+00100000010000000101100001110011
+00011000110000001000110000000111
+00100000011000000000000000000000
+00100000010000000101100001111001
+00011000110000001000110000000111
+00100000011000000000000000000000
+00100000010000000101100001111001
+00011000110000001000110000000011
+00100000011000000000000000000000
+01101000000000010100010100000110
+00100000011000000000000000000000
+01101000000000010100010100000100
+00100000011000000000000000000000
+01101000000000010100010100000000
+00100000011000000000000000000000
+01101000000000010100010100000000
+11011000010000000001100000000000
+10011000010001100111111000000000
+00011111111100011111111000000000
+00011111111100011000111000000000
+01101000000000001100010011111111
+11111001001111111111111000000000
+01100000000000001100010011111111
+11011111001000000000000000000000
+00011111001000111111111000000000
+11011000010000000100010100000010
+10011000010000001000010000000000
+11101000010000010000000000000000
+00011000010000001000010111111110
+11100000010000010000000000000000
+00011111001000100111111000000000
+00011111001000001111001000000001
+11000000100000011101100010011111
+01011000000000000000000000000000
+11100000010000010000000000000000
+00100000011000000000000000000000
+11101000110000011000000000000000
+01100000000000011000010001110111
+11000000000000010101100011000001
+11000000000000011101100011001001
+11000000000000100101100011001100
+11000000000000110101100011110010
+11000000000001000101100100111111
+11000000000001010101100110111100
+11000000000001100101100111100100
+11000000000010000101100111111010
+11000000000010010101101000101111
+11000000000010110101101001001000
+11000000000011000101101001011011
+11000000001010010101101001100000
+00100000011000000000000000000000
+00011000000000000010001000000011
+00100000010000000101101010000010
+01011000000000000000000000000010
+11100000101000001000000000000000
+01101000000000010100010010100110
+11100000101000010000000000000000
+00100000011000000000000000000000
+00100000010000000101100011001001
+00011000000000000010001000000011
+00100000010000000101101010000010
+01011000000000000000000000000011
+11100000101000001000000000000000
+01101000000000010100010010100110
+11100000101000010000000000000000
+00100000011000000000000000000000
+00011111111011001111111000000000
+01100000000000010100010010101000
+00100000011000000000000000000000
+00100000010000000101101010110001
+00100000010000000111111111100111
+00100000001000000101100011001111
+11011001011000000000000000000011
+00100000010000000101011101010110
+00100000010000000101011101011111
+00100000001110100101100011110000
+00100100001000010101100011101101
+00011000110000001000110111111110
+00100000010000000111111010100101
+00100000010000000111111010011100
+00100100001101000101100011100001
+00100000010000000111111010000101
+00100000010000000111111111101001
+00011000000000000010001000010100
+00100000010000000101101010000010
+00100000010000000111111010010101
+01011000000000000000000000000101
+11100000101000001000000000000000
+01011000000000000000000000000001
+11100000101000001000000000000000
+00100000010000000111111010011111
+11101000110000010000000000000000
+11100000101000010000000000000000
+11101000110000001000000000000000
+00011111111000100111001000000000
+00100000010000000111111100000001
+00100000010000000111111010100010
+00011001011000001001011111111111
+00100000001000101101100011110000
+11101000110000001000000000000000
+10011000110000001000110000000000
+00100000001000000101100011010001
+11101000110000001000000000000000
+10011000110000001000110000000000
+00100000001000000101100011101010
+00100000001101000101101001110110
+00100000001000000101101010100101
+00100000010000000101101010110001
+11101000110000010000000000000000
+01100000000000010100010001110010
+00100000010000000111111010100101
+11011000101000000100010001011110
+01101000000000010100010011111100
+00011111111000001111111111111001
+00100000010000000101011011011011
+00100000001000000101100100000101
+01111000010101000111110000000000
+01101000000010010100010001011010
+01101000000000010100010001011100
+10011000010001100111110000000000
+00100100001000010101100100000010
+00011000010000100111111000000000
+11000001100000000000000000000000
+01111000001101000111110000000000
+01110000000001000111101000000001
+00100000001000000101101001110111
+00100000010000000101100011111011
+00100000011101000000000000000000
+01101000000010010100010001110010
+01011000000000000010100000000000
+10011000010001100111110000000000
+00100000001000101101100100001100
+00100000001000000101101001110110
+01110000000001001011010000000000
+01101000000010010100010001011010
+01100000000010010000101010100010
+00100000010000000101011110001100
+00100100001110100101101001110110
+01101000000010010000101010100010
+00100000010000000101011110001100
+00100100001110100101100100100101
+00011000110000100010001000000000
+01101000000000001000010010110011
+00011111111000100111001000000000
+01101000000010001100010001011110
+10011000010001100111110000000000
+00100100001000101101100100100001
+11011010010000000100010001011111
+00100000010000000111111110001000
+00100000001000101101100100101000
+01101000000000010000010010100011
+01101000000010010100010001110010
+10011000010001100111110000000000
+00100000001000101101100100110000
+01101000000000010000101010100010
+00011111111000001111111000000001
+01100000000000010000101010100010
+00100000001000000101100100010001
+01101000000000001000010010110100
+11000000000000001101100100110000
+00100000001000000101101001110110
+01101000000000010000010010100011
+01101000000010010100010001110010
+10011000010001100111110000000000
+00100100001000101101100100100001
+01110000000001001011010000000001
+01101000000010010000101010100010
+01100000000010010000010010011110
+00100000001000000101100100100001
+01101000000000001000010010110100
+11000000000000000101100100100001
+01110000000001001011010000000010
+01101000000010010000101010100010
+00011000010000001000010111111111
+01100000000010010000010010100000
+11011010001000000000000000000101
+00100000010000000101101010000010
+01011000000000000000000000000111
+11100000101000001000000000000000
+01101000000000010000010010011110
+11100000101000010000000000000000
+01101000000000010000010010100000
+11100000101000010000000000000000
+00100000011000000000000000000000
+00100000010000000101101010110001
+00100000010000000101011011011111
+00100000001000000101100101000010
+01101000000010010100010001011010
+01100000000010010000101010100010
+00100000010000000101011101010110
+00100000010000000101011101101101
+00011000110000001000110111111110
+00011000110000100111111000000000
+01100000000000010000010010011100
+01101000000010010100010001110010
+01011000000000000010101000000000
+10011000010001100111110000000000
+00100000001000101101100110101000
+01011000000000000010100000000011
+10011000010001100111110000000000
+00100100001000101101100110010000
+11011001011000000000000000000010
+00100000010000000101101010001000
+00100100001000010101100101101101
+01101000000010010000101010100010
+00100000010000000101011110001010
+11000000000000001101100101101101
+00100000010000000101101010010100
+00100100001000101101100101101011
+00100100001101000101100101101111
+01111000010101000111110000000000
+11011010001000000000000000010100
+00100000010000000101101010000010
+01011000000000000000000000001001
+11100000101000001000000000000000
+00011000101000100110000000000000
+00011000101000001000101000000001
+00100000010000000101100101111101
+00100000010000000101101010000100
+00100000010000000101011110001010
+00100000010000000101100110000100
+01101000000000001000010010100010
+00011111111000001111111000000101
+11100110000000001000000000000000
+01101000000000001000010010100010
+11000000000010000101100101101101
+00011001011000001001011111111111
+00100000001000101101100101101101
+00100000010000000101101010000100
+00100000001000000101100101010001
+00100000001101000101101001110110
+00100000001000000101101010100101
+00100000010000000101101010010111
+00100000010000000101101010000100
+00100000010000000101011110001010
+01101000000000001000010010100010
+11000000000010000101100101101101
+00100000010000000111111010011100
+01101000000000010000101010100010
+00011111111000001111111111111111
+11100000101000010000000000000000
+00100000010000000101101010100001
+00100000010000000101100110000100
+00011001011000001001011111111111
+00100000001000101101100101101101
+00100000001000000101100101101011
+01101000000000010000101010100010
+11100000101000010000000000000000
+01101000000000001000010010110011
+00011111111000100111001000000000
+00100000010000000111111010011111
+00100000010000000111111011110100
+00100000001000000111111010100010
+00100000010000000111111010011100
+01101000000000010000101010100010
+11100000101000010000000000000000
+00100000010000000111111010100010
+01101000000000001000010010100010
+00011111111000100111001000000000
+00100000010000000111111010011100
+00100000010000000111111010011111
+10011111001001100000110000000000
+00011000110000001000110111111111
+00100000010000000111111011110100
+00100000001000000111111010100010
+01101000000010010100010001011010
+01100000000010010000101010100010
+00100000010000000101101010001000
+00100100001000010101101001110110
+00100000010000000101011110001010
+11000000000000001101101001110110
+00100000010000000101101010010100
+00100100001000101101100110100110
+11011010001000000000000000010100
+00100000010000000101101010000010
+01011000000000000000000000001001
+11100000101000001000000000000000
+01101000000000001000010010110011
+00011111111000100111001000000000
+00011111111000001111111000000010
+11100000101000001000000000000000
+01101000000000010000101010100010
+11100000101000010000000000000000
+00100000010000000111111010011111
+00100000010000000111111011110100
+00100000010000000111111010100010
+00100000001000000101101010100101
+00100000010000000101101010000100
+00100000001000000101100110010010
+11011000010000000010101000000000
+00100000010000000101011101111100
+00100000011110100000000000000000
+00011000110000001000110111111011
+11101000110000010000000000000000
+01100000000000010000101010100010
+11011010001000000000000000010100
+00100000010000000101101010000010
+01011000000000000000000000001001
+11100000101000001000000000000000
+01101000000000001100001110101111
+00011111111000100111001000000000
+00011111111000001111111000000010
+11100000101000001000000000000000
+01101000000000010000101010100010
+11100000101000010000000000000000
+11011000110000000100001110110000
+00100000010000000111111011110100
+00100000010000000111111010100010
+00100000001000000101101010100101
+01101000000010010000010001111000
+01101000000000001100010011101001
+11000010100000011101100111011101
+00100000010000000101011101101010
+00100000001110100101101001110110
+00011000110000001000110111111110
+11101000110000010000000000000000
+11011000010000000010101000000000
+10011000010001100111110000000000
+00100000001000101101100111010011
+11101000110000001000000000000000
+00011111111001100111110000010110
+00100000001000010101100111001010
+00011000000000000111111000010110
+00011111111000100010011000000000
+00100000010000000111111010100101
+00011010011000001010001000000001
+00100000010000000101101010000010
+01011000000000000000000000001011
+11100000101000001000000000000000
+00011010011000100111001000000000
+00100000010000000111111010011111
+00100000001000000111111100000001
+00100000010000000111111010100101
+01101000000000001100001110101111
+00011111111000001010001000000001
+00100000010000000101101010000010
+01011000000000000000000000001011
+11100000101000001000000000000000
+01101000000000001100001110101111
+00011111111000100111001000000000
+11011000110000000100001110110000
+00100000001000000111111100000001
+01101000000000010100010011111010
+10011000010001100111110000000000
+00100100001000101101100110111111
+00100000010000000101101001000010
+00100100001101000101100110111111
+01110000000001000111101000000101
+00100000001000000101101001110111
+11101000110000010000000000000000
+01100000000000010100010001011110
+11011010001000000000000000010100
+00100000010000000101101010000010
+01011000000000000000000000001101
+11100000101000001000000000000000
+01101000000000010100010001011110
+10011000000000000010001000000000
+01101000000010010000010001111000
+00100000010000000101011101101010
+00100000001110100101101001110110
+11101000110000001000000000000000
+10011010001001100111001000000000
+00100100001000010101101001110110
+00011111001001100111110000010110
+00100000001000010101100111110101
+00011000000000000111001000010110
+00011010001000100111111000000000
+10011000110000001000110000000000
+00100000010000000111111011110100
+00100000010000000111111010100010
+00100000001000000101101010100101
+00100000010000000101101010110001
+00100000010000000101011011010111
+00100000001000000101100111111101
+11011001011000000000000000000010
+01101000000010010100010001011010
+01100000000010010000101010100010
+00100000010000000101011101010110
+00100000010000000101011101101101
+00011000110000001000110111111110
+00011000110000100111111000000000
+01100000000000010000010010011100
+00100000010000000101101010001000
+00100100001000010101101000100101
+01101000000010010000101010100010
+00100000010000000101011110001010
+11000000000000001101101000101000
+00100000010000000101101010001100
+00100100001000101101101000100011
+00011001011000100111111000000000
+11000000000000000101101000101000
+00100100001101000101101000011001
+01111000010101000111110000000000
+11011010001000000000000000010100
+00100000010000000101101010000010
+01011000000000000000000000010001
+11100000101000001000000000000000
+01101000000000001000010010110011
+00011111111000001111111000000100
+11100000101000001000000000000000
+00100000010000000111111010100010
+00100000001000000101101000011111
+01101000000000001000010010110011
+11000000000010000101101000101000
+01101000000000010000101010100010
+00011111111000001111111111111111
+01100000000000010000010010100000
+00100000010000000101101010011100
+01101000000000010000101010100010
+01100000000000010000010010011110
+00100000010000000101101010010111
+00011001011000001001011111111111
+00100000010000000101101010000100
+00100000001000000101101000000101
+01101000000000010000101010100010
+01100000000000010000010010100000
+00100000001000000101101000101100
+01101000000000010000101010100010
+00011111111000001111111111111111
+01100000000000010000010010100000
+00100000001000000101101000101100
+00100000001101000101101001110110
+00100000010000000101101010011100
+00100000001000000101101010100101
+00011000110000100010001000000000
+01101000000000010100010011111100
+00011111111000001010010111111101
+00100000010000000101011011100010
+01101000000000001100010011101001
+11000011000000100101101000111101
+01101000000010010000010001111000
+01101000000000010100010011111010
+10011000010001100111110000000000
+00100100001000101101101000111101
+00100000010000000101101001000010
+00100100001101000101101000111101
+01110000000001000111101000000101
+00100000001000000101101001110111
+00011000000000000010001000000001
+00100000010000000101101010000010
+01011000000000000000000000010011
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000010000000111111111101001
+01101000000000001100010011000110
+11000001000000000000000000000000
+01101000000000001100000001000000
+11000011100000100000000000000000
+00100000001000000111111111100111
+00011000110000001010001000000010
+01101000000000010100010011111100
+00011111111000001010010111111011
+00100000010000000101011011100010
+00100000001000000101101001001101
+01101000000000010100010011111100
+00011111111000100010001000000000
+00100000010000000101101010000010
+01011000000000000000000000010111
+11100000101000001000000000000000
+01101000000000010000010001111000
+11100000101000010000000000000000
+01101000000000010100010011111100
+00011111111000001111001111111011
+01101000000000010100010100001101
+00011111111000001000110000000111
+11101000110000010000000000000000
+11100000101000010000000000000000
+00100000001000000111111011110100
+00011000000000000010001000000001
+00100000010000000101101010000010
+01011000000000000000000000011001
+11100000101000001000000000000000
+00100000011000000000000000000000
+00011000110000100010001000000000
+01101000000000010100010011111100
+00011111111000001010010111111101
+00100000001000000101011011100010
+00011000010000100010011000000000
+00011010001000001010001000000011
+00100000010000000101101010000010
+00011010001000001010001111111101
+01011000000000000000000000011011
+11100000101000001000000000000000
+00011010011000100000010000000000
+11100000101010010000000000000000
+00100000011000000000000000000000
+00011000010000100010011000000000
+00011010001000001010001000000011
+00100000010000000101101010000010
+00011010001000001010001111111101
+01011000000000000000000000011101
+11100000101000001000000000000000
+00011010011000100000010000000000
+11100000101010010000000000000000
+00100000011000000000000000000000
+01110000000001000111101000001010
+00011000000000000010001000000101
+00100000010000000101101010000010
+01011000000000000000000000000001
+11100000101000001000000000000000
+01101000000000001000010001110111
+11100000101000001000000000000000
+01101000000000010000010001111000
+11100000101000010000000000000000
+01101000000000001000010001111010
+11100000101000001000000000000000
+00100000011000000000000000000000
+00011000000000000010010000000100
+00100000001000000101100001000111
+01101000000010010000101010100010
+00011000010000001000010000000001
+01100000000010010000101010100010
+00100000011000000000000000000000
+01101000000010010000101010100010
+01101000000000010100010001011100
+10011000010001100111110000000000
+00100000011000000000000000000000
+01101000000010001100010001011110
+11011010001000000100010001011111
+01101000000000001000010010100010
+00011111111000100111001000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+11011010010000000000010010100011
+00100000001000000111111110001000
+01101000000010001100010001110001
+11011010001000000100010001110010
+00100000001000000101101010001110
+01101000000000001000010010110011
+01100000000000001000000100000001
+00011111111000100111001000000000
+00100000010000000111111010011111
+00100000001000000111111011110100
+00100000010000000111111010011100
+01101000000000010000010010011110
+11100000101000010000000000000000
+01101000000000010000010010100000
+11100000101000010000000000000000
+01101000000000001000000100000001
+00011111111000100111001000000000
+00100000010000000111111011110100
+00100000001000000111111010100010
+00100000010000000111111010011100
+00100000010000000101100010001010
+00011000101000100111111000000000
+10011000110001100010001000000000
+00100000010000000101100010001101
+00011010001000100111111000000000
+11100000110000010000000000000000
+00011010001000001010001000000100
+00100000010000000101100001111001
+00011010001000100111111000000000
+11100000110000001000000000000000
+00100000011000000000000000000000
+00011111111011001111111000000000
+01100000000000010100010001011010
+11101000110000010000000000000000
+01100000000000010100010001011100
+00100000011000000000000000000000
+11101000110000001000000000000000
+11101000110010001000000000000000
+11101000110010010000000000000000
+11000000000010011101101010111011
+00100000011000000000000000000000
+11101000110000010000000000000000
+01100000000000010100010100001001
+01110000000010101001100101000000
+00100000001000000111110110000110
+11011010001000000000000000001100
+11011010011000000000000000010010
+00100000010000000101101011000111
+01011000000000000000000000001000
+11100000101000010000000000000000
+01101000000001000100010010010110
+11100000101001000000000000000000
+00100000011000000000000000000000
+00100000010000000101101011001111
+11011010010000000000000000000101
+00100000010000000101100001000111
+00011010011000100111111000000000
+11100000101000001000000000000000
+01101000000000001100010100001000
+11100000101000001000000000000000
+00100000011000000000000000000000
+01101000000000001100010100001000
+00011111111000001111111000000001
+01100000000000001100010100001000
+11000001100000000000000000000000
+01110000010001010000100000000001
+00100000011000000000000000000000
+01101000000000001100010011000110
+11000000000000000101101011100100
+11000000000000001101101011100111
+11000000000000010101101011101001
+11000000010000001101101011011101
+11000000010000010101101011011111
+11000000010000011101101011100010
+00100000011000000000000000000000
+01110000010001000101011000001101
+00100000001000000101101011100101
+01110000010001000101011000001101
+01110000010001000101010000000001
+00100000011000000000000000000000
+01110000010001000101011000001101
+00100000001000000101101011101010
+01110000010001000101011000000000
+01110000010001000101010000000011
+00100000011000000000000000000000
+01110000010001000101011000000101
+00100000001000000101101011100101
+01110000010001000101011000000101
+01110000010001000101010000000000
+00100000011000000000000000000000
+01101000000000001100010001010110
+01111001001000000111111000000011
+01100000000000001100010001010110
+00100000011000000000000000000000
+01101000000000001100010001010110
+01111001001111111111111000000011
+01100000000000001100010001010110
+00100000011000000000000000000000
+11101000110000001000000000000000
+11000000000000001101101100001001
+11000000000000011101101100110000
+11000000000000100101101101001101
+11000000000000101101101101011010
+11000000000000110101101110000000
+11000000000000111101101111000100
+11000000000001000101101110101111
+11000000000001001101101111000000
+11000000000001010101101111000100
+11000000000001011101101111000100
+11000000000001100101101111000101
+11000000000001101101101111001010
+00100000011000000000000000000000
+00011000000000000010001000000010
+00100000010000000101110001100010
+01011000000000000000000000001011
+11100000101000001000000000000000
+01101000000000001100010001010110
+11100000101000001000000000000000
+00100000011000000000000000000000
+01100000000000001100010001001100
+11101000110000110000000000000000
+11100000101000110000000000000000
+01101000000000001100010011000110
+11000000000000000101101101011111
+00100000010000000101101100101011
+00100000010000000101101100100110
+01110000010001001100010000000011
+01101000000000001100010001001101
+11000000000000000101101100011000
+11000000000000001101101100011000
+11000000000000011101101100011000
+01101000000000001100010011000110
+11000000000000010101101100011011
+11000001010000011000000000000000
+11011111111000000000000000000000
+01100000000000100100010011000111
+00100000011000000000000000000000
+01101000000000001100010011101001
+11000010100000000101101100100100
+11011010001000000100010011000111
+00011010001000100000101000000000
+11011111001000000000000000000011
+00100000010000000110001100001101
+01101000000000010100010011001001
+00011111111000010111111000000111
+01100000000000010100010011001001
+01110000000010101001100100110100
+00100000001000000111110110000110
+01101000000000001100010001001111
+11000011100000011000000000000000
+01101000000000001100010011000110
+11000100000000111000000000000000
+00100000001000000011010000000010
+00011000000000000010001000000111
+00100000010000000101110001100010
+01101000000000111100010001010011
+11100000101000111000000000000000
+00100000011000000000000000000000
+00011000110000100010001000000000
+01101000000000001100010011000110
+11000000010000011101101100110111
+00011010001000100000110000000000
+11011000101000000100010000101010
+00100000010000000111111010111111
+00100000001000000101101100111101
+00011010001000100000110000000000
+11011000101000000100010000101010
+00100000010000000111111010111111
+01110000010001001011111100000010
+01110000010001001100000100001000
+00100000011000000000000000000000
+01101000000000001100010011000110
+11000010100000111101101101000101
+00100000010000000111001110011100
+00011000000000000010001000010001
+00100000010000000101110001100010
+01011000000000000000000000000011
+11100000101000001000000000000000
+00100000001000000111010010010111
+11011000101000000100010000111010
+00100000010000000110001100001100
+00100000010000000111000111000101
+00011000000000000010001000010001
+00100000010000000101110001100010
+01011000000000000000000000000011
+11100000101000001000000000000000
+00100000001000000111001000000001
+00011000110000100010001000000000
+01101000000000001100010011000110
+11000010100000111101101101100001
+00011010001000100000110000000000
+00100000010000000111001110010100
+00100000001000101101101101110101
+01110000000001000111101100000100
+00011000000000000010001000000010
+00100000010000000101110001100010
+01011000000000000000000000000101
+11100000101000001000000000000000
+01101000000000001000010001111011
+11100000101000001000000000000000
+00011000000000000000111000001010
+00100000010000000111111100000111
+01110000010001001100010000000000
+01110000000010101001100100110000
+00100000001000000111110110000110
+01110000000001000111101100000101
+00100000001000000101101101010100
+11011000101000000000010000101111
+00011010001000100000110000000000
+00100000010000000111111010111111
+01101000000000001100010011000110
+11000000010000011101101101101100
+00100000010000000111000101001111
+00100000010000000101101101111010
+01101000000000001100010011000110
+11000001110000010000000000000000
+01110000000010101001100100111011
+00100000001000000111110110000110
+00100000010000000111000110111010
+11011000101000000000101011110010
+00100000010000000111001000000001
+11011010001000000000101011110010
+11011010010000000100010000101010
+11011111001000000000000000010000
+00100000010000000111111110001000
+00100100001000101101101101010011
+00100000001000000101101101111010
+00100000010000000111001110010000
+01110000000010101001100100110001
+00100000010000000111110110000110
+01110000010001000010100100000001
+01110000010001001100010000000101
+00011000000000000010001000010001
+00100000010000000101110001100010
+01011000000000000000000000000100
+11100000101000001000000000000000
+11011000110000000100010000111010
+00100000001000000111111010111111
+11011000101000000000010000011111
+00100000001000000111111010111111
+00011000000000000010001000010001
+00100000010000000101110001100010
+01011000000000000000000000000110
+11100000101000001000000000000000
+01101000000000001100010011101001
+11000010100000001101101110001010
+11011000110000000100010000011001
+00100000001000000111111010111111
+11011000110000000100010011101010
+00100000001000000111111010111111
+11011000101000000100010011001011
+00011000000000000111001000001010
+00100000010000000110001100001101
+00011000000000000010001000001011
+00100000010000000101110001100010
+01011000000000000000000000000111
+11100000101000001000000000000000
+01101000000000010100010011001011
+11100000101000010000000000000000
+01101000000001000100010011001101
+11100000101001000000000000000000
+00100000011000000000000000000000
+00011000000000000010001000010001
+00100000010000000101110001100010
+01011000000000000000000000001000
+11100000101000001000000000000000
+01011000000000000000000000000000
+11100000101001000000000000000000
+11100000101001000000000000000000
+00100000011000000000000000000000
+00011000000000000010001000001000
+00100000010000000101110001100010
+01011000000000000000000000001001
+11100000101000001000000000000000
+01101000000000001100010010010101
+11100000101000001000000000000000
+01101000000000110100010010100000
+11100000101000110000000000000000
+00100000011000000000000000000000
+01110000000001000111101100001000
+00100000001000000101101101010100
+01101000000000001100010001011000
+01101000000010001100010001011000
+10011000010000010111111000000000
+00100000011000000000000000000000
+11011000101000000100010011010101
+00100000010000000111111010111111
+00100000010000000101101110101011
+00101111111011000000000000000001
+00100000001000001101101110101001
+01101000000000001100000010010010
+11000001100001010000000000000000
+00100000010000000101101110111001
+00100100011101000000000000000000
+00100000001000000011010000010000
+00100000010000000111111111101001
+01101000000000001100010010001110
+11000001000000000000000000000000
+01101000000000001000010001010100
+00101111111000011000000011000000
+00100000011000001000000000000000
+00100000001000000111111111100111
+00100000010000000101101110101011
+00101111111011000000000000000001
+00100000001000001101101110101001
+00100000011000000000000000000000
+00100000011000000000000000000000
+11011000101000000000100110111110
+00100000010000000111111010110011
+01110000010001001011111100000010
+01110000010001001100000100000001
+00100000011000000000000000000000
+11011000101000000000101001101110
+00100000010000000111111010111111
+01110000010001001100000100000110
+01110000010001001011111100000010
+00100000011000000000000000000000
+00011000000000000010001001000001
+00100000010000000101110001100010
+01011000000000000000000000001100
+11100000101000001000000000000000
+11011000110000000100010111010010
+00100000001000000111111010110011
+00100000010000000111000101100110
+00011000000000000010001000010001
+00100000010000000101110001100010
+01011000000000000000000000001101
+11100000101000001000000000000000
+00100000001000000111001000000001
+01101000000000001100010011000100
+11000001011111111000000000000000
+11011000010000000000000000000011
+10011000010001100111110000000000
+00100100011000010000000000000000
+11011000111000000000000000001010
+00100000010000000111111100010110
+00100100011110100000000000000000
+00100000001000000101101110101001
+01000111001111000100000000101111
+01101000000000001100010011000100
+11000000000000000101101111101111
+11000000000000001101101111110101
+11000000000000010101101111101111
+11000000000000011101101111110111
+11000000000000101101101111111011
+11000000000000111101110000000111
+11000000000001000101110000001001
+11000000000001001101110000010000
+00100000011000000000000000000000
+01101000000000001100010011000101
+11000001100000100000000000000000
+01110000010001001100010111111111
+01110000010001001100010011111111
+01110000000010101001100100111111
+00100000001000000111110110000110
+01110000010001001100010000000010
+00100000001000000101101100000010
+01110000010001001100010000000100
+01011000000000010111011100000000
+11011000111000000000000000001010
+00100000001000000111111100001000
+01101000000000001100010011000101
+11000000000000100101101111111110
+00100000011000000000000000000000
+01110000010001001100010000000111
+01110000000010101001100100101001
+00100000010000000111110110000110
+00100000010000000101101110000010
+01101000000000001100000010010010
+11000001100001010000000000000000
+00100000010000000101101110111001
+00100000011101000000000000000000
+00100000001000000011010000010000
+01110000010001001100010000001000
+00100000001000000101101110001100
+01101000000000001100010001010010
+01101000000010001100010001011001
+10011000010000010111111000000000
+00101111111011000000000000000001
+00100000001000001101110000010010
+01110000010001001100010000001001
+00100000001000000101101110011000
+00100000010000000101101110100000
+00100000001000000101110000010010
+00011000000000000000111000001010
+00100000010000000111111100000111
+01110000010001001100010111111111
+01110000010001001100010011111111
+01110000000010101001100100111110
+00100000001000000111110110000110
+01000111001111001100000000101111
+01101000000000001100010011000110
+11000100000000111000000000000000
+01101000000000001100010010111111
+11000001100000010000000000000000
+01110000010001001011111100000000
+01101000000000001100010011000001
+11000000000000001101110001011000
+11000000000000010101110001011111
+11000000000000011101110001010010
+11000000000000110101110000111001
+11000000000000111101110000110000
+11000000000001000101110000100110
+00100000011000000000000000000000
+01101000000000001100011001100011
+00011111111000100000111000000000
+00011111111000001111111000000001
+01100000000000001100011001100011
+01101000000000100100010011000111
+10101111111011111111111111111111
+01011000000000000000000010000000
+01111001001000001111111000000000
+01100000000000001100011001100100
+00100000001000000101110001010101
+01101000000000001100010011000010
+01110000010001001100001000000000
+11000000000000001101110000110101
+01110000010001001011111100000010
+00100000011000000000000000000000
+01110000000010101001100100110001
+00100000010000000111110110000110
+01110000010001001100010000000101
+00100000001000000101101111010101
+01101000000000001000100110111001
+11000000000000011101110000111101
+01110000010001001011111100000010
+00100000011000000000000000000000
+00100000010000000111000110001101
+01101000000000001100010011000110
+11000000010000011101110001000001
+00100000010000000101101100011000
+00100000010000000111000101111010
+11011010001000000000101011110010
+11011010010000000000101001101110
+11011111001000000000000000010000
+00100000010000000111111110001000
+00100000001000101101110001001001
+01110000000001000111101100001011
+00100000001000000101101101010100
+00100000010000000111010110010101
+00100100001000101101110001000111
+01110000010001000010100100000001
+01101000000000001100010011000110
+11000000010000001101110000110101
+11000000010000011101110000110101
+01110000010001001011111100000010
+01110000010001001100000100000111
+00100000011000000000000000000000
+01101000000000001100010011000110
+11000000010000011101110001010110
+01110000010001100110010000000000
+00100000001000000101101100111101
+01110000010001100110001100000000
+00100000001000000101101100011011
+01110000010001001011111100000010
+01101000000000001100010011000011
+11000000000000011101110001011100
+00100000011000000000000000000000
+01110000010001001100000100000010
+01110000000010011011100100000000
+00100000001000000111101010011001
+01110000010001001011111100000010
+01110000010001001100000100000011
+00100000001000000101101111001111
+00011000000000000010010000000110
+00100000001000000101100001000111
+01101000000000001000001011011011
+11000000000000000101110001111011
+11000000000000001101110010000011
+11000000000000010101110010001110
+11000000000000011101110010101010
+11000000000000100101110011100001
+11000000000000101101110011100110
+11000000000000110101110011101010
+11000000000000111101110011110101
+11000000000001000101110010011001
+11000000000001001101110011110101
+11000000000001010101110011101111
+11000000000001011101110011110101
+11000000000001100101110010011111
+11000000000001101101110011110101
+11000000000010010101110010100110
+11000000000010011101110011110101
+11011010001000000000000000000010
+11011010010000000000000000000111
+00100000010000000101100001000010
+01101000000000001000001011011011
+11100000101000001000000000000000
+00100000011000000000000000000000
+11101000110001001000000000000000
+01100000000001001100001111010011
+11101000110000010000000000000000
+01100000000000010000010001011111
+01101000000000001000010000111111
+01111001001000000111111000000101
+01100000000000001000010000111111
+00100000011000000000000000000000
+11101000110000101000000000000000
+01100000000000101100001111001110
+11101000110000010000000000000000
+01100000000000010000010001011111
+01101000000010010000010001011001
+10011000010001100111110000000000
+00100100001000010101110010001110
+01101000000000001000010000111111
+01111001001000000111111000000110
+01100000000000001000010000111111
+00100000011000000000000000000000
+01011000000000000000000000010100
+01100000000000010000010001101101
+01100000000000010100010010111010
+00100000011000000000000000000000
+11011010011000000000000000010011
+11011010001000000000000000000010
+11011010010000000000000000000010
+00100000010000000101100001000010
+00011010011000100111111000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+11011010001000000000000000001001
+11011010010000000000000000001001
+00100000010000000101100001000010
+01011000000000000000000000000001
+11100000101001000000000000000000
+00100000011000000000000000000000
+00100000011101001000000000000000
+11011010001000000000000000000110
+11011010010000000000000000001100
+00100000010000000101100001000010
+01101000000000101100010100010000
+11100000101000101000000000000000
+00100000011000000000000000000000
+11011010010000000000000000010011
+00100000001000000101110010101000
+11011010001000000000000000000001
+00100000001000000101100001000010
+11101000110001000000000000000000
+01100000000001000100010011001101
+11101000110000010000000000000000
+01100000000000010100010011001011
+11101000110001000000000000000000
+01100000000001000100010010101010
+11101000110000100000000000000000
+01100000000000100100010000010001
+00100000010000000101110011001111
+01000111001111010100000000101111
+01101000000000001100010011000100
+11000000000000101101110010111100
+01101000000000001100010011101001
+11000010100000001101110010111111
+01101000000000001100001000010111
+00100100010110100110011110111110
+01101000000000001100010000101001
+11000000000000000101110011000100
+01110000010001001100010100000001
+00100000010000000101110011011101
+00100000001000000111001110100010
+01110000010001000010100100000001
+11011000110000000100010011101010
+11011000101000000100010000011001
+00100000010000000111111010111111
+00100000001000000101110010111100
+01000111001111011100000000101111
+01110000010001001100010100000000
+01110000010001001100010000000000
+01110000000010101001100101000001
+00100000001000000111110110000110
+11011010001000000000000000000010
+11011010010000000000000000001101
+00100000010000000101100001000010
+01011000000000000000000000000110
+11100000101000001000000000000000
+00100000011000000000000000000000
+11011000101000000100010010110010
+00011000000000000111001000001000
+00100000010000000110001100001101
+11011000101000000100010000010101
+00011000000000000111001000000100
+00100000010000000110001100001101
+11011010001000000000000000001101
+11011010010000000000000000000100
+00100000010000000101100001000010
+01101000000001000100010010110010
+11100000101001000000000000000000
+01101000000000100100010000010101
+11100000101000100000000000000000
+00100000011000000000000000000000
+11011010010000000000000000000101
+00100000001000000101110010101000
+11011010010000000000000000000110
+00100000001000000101110010101000
+11101000110001000000000000000000
+01100000000001000100010010110010
+11101000110000100000000000000000
+01100000000000100100010000010101
+00100000001000000111001110100010
+01101000000000001000010000111111
+01111001001000000111111000000100
+01100000000000001000010000111111
+00100000011000000000000000000000
+00100000011101001000000000000000
+01110000000010101001100100110010
+00100000010000000111110110000110
+01110000010001001100010100000100
+00100000001000000101110011011111
+01110000010001001100010100000010
+00100000010000000101110011110011
+01110000000010101001100100110011
+00100000001000000111110110000110
+11011010010000000000000000001011
+00100000001000000101110010101000
+00100000011000000000000000000000
+00100000011101011000000000000000
+01000111001111100100000000101111
+01011000000000000000000000000000
+01100000000000001000000001001000
+01100000000000001000000001010101
+01100000000000001000000001111000
+01100000000000001000000001111100
+01100000000000001100000101011000
+01100000000000001000010011010111
+01100000000000001000000101101101
+01100000000000001000100110110101
+01110000010001010101101100000000
+01110000000000100010100100000000
+01110000000001001101100000000000
+01110000000010011011010100000000
+01110000000010011011010000000000
+01110000000001001101000100000000
+00100000011000000000000000000000
+01000111001111101100000000101111
+00100000010101001110001011111111
+00100100010101001110001100000011
+00100000010000000110001010111100
+00100100011110100000000000000000
+01101000000000001000000001001100
+11000100000000110000000000000000
+01111001001111111111111000000110
+01111001001111111000000000000001
+01100000000000001000000001001100
+01101000000000001000010101010001
+01101000000010001000000001001100
+00101111111011111111111000000000
+01111001001000001000010000000001
+01100000000010001000000001001100
+00011000010000010000010000000010
+01100000000010001000000001111111
+01101000000010001000000001001100
+00011111111000110111111000000000
+01100000000000001000000001111101
+01000111001111110100000000101111
+01101000000000001000000001111101
+11000000001111111101110101100110
+11000000000000011101110110110001
+11000000000000100101110111000010
+11000000000111100101110101011001
+11000000000000101101110101010101
+11000000000001111101111110101000
+11000000000010000101111000100100
+11000000000100011101111001000010
+11000000000111001101111111000001
+11000000000111000101111110111100
+11000000000110001101111000100111
+11000000000110111101111010110000
+11000000000100111101111010101100
+11000000000110011101111010101001
+11000000000100101101111010101110
+11000000000100110101111000111110
+11000000000000111101111000110110
+11000000000101101101111000101101
+11000000000101110101111000101110
+11000000000000001101111010100101
+11000000000000010101111010010000
+11000000000101000101111110110011
+11000000000001001101111010000110
+11000000000001011101111001011111
+11000000000001000101111001000011
+11000000000001100101111001101010
+11000000000011111101111000111010
+11000000000100000101111000111100
+11000000000100001101111011001010
+11000000000100010101111011001010
+11000000000110101101111011001011
+11000000000110110101111011001100
+11000000000100100101111011001010
+11000000000110100101111011001101
+11000000000010111101111011010110
+11000000000010001101111011110010
+11000000000010010101111011110110
+11000000000010011101111011111000
+11000000000001101101111100001010
+11000000000001110101111100001010
+11000000000101111101111010101010
+11000000000110000101111100001010
+11000000000001010101111100001010
+11000000000011000101111100001011
+11000000000110010101111100001010
+11000000000111101101111100010000
+11000000000111110101111101010001
+11000000000111111101111101001011
+11000000001000000101111101111000
+11000000001000001101111110001010
+11000000000000110101111110100111
+11000000000111010101110101010111
+01110000000000000111111000011001
+01110000000000000111110000000100
+00100000011000000000000000000000
+01110000000000000111110000000110
+00100000011000000000000000000000
+01110000000000000111110000111011
+00100000011000000000000000000000
+01101000000000100000010101010010
+00011111111000111111111000000000
+01100000000000100100000011010010
+01101000000000001000010101010110
+01100000000000001100000011011001
+01101000000000101000010101010111
+01100000000000101100000011100111
+01101000000000101000010101011100
+11100000101000101000000000000000
+01101000000000001000000000110001
+01111001001000000111111000000011
+01100000000000001000000000110001
+00100000011000000000000000000000
+01000111001111111100000000101111
+01101000000000001000010101010010
+01111001001000000111111000000111
+01100000000000001000000001111101
+11000000010000001101110110001000
+11000000010000010101110110001101
+11000000010010101101111010110001
+11000000010010110101111011001010
+11000000010001011101111010111111
+11000000010000011101110110100101
+11000000010000100101110110100111
+11000000010010000101110101111010
+11000000010010111101110110011110
+11000000010011000101110110100011
+11000000010011001101110101111101
+11000000010011010101110110000000
+11000001010000100000000000000000
+01110000000000000111110010000010
+01110000000000000111111000011001
+00100000011000000000000000000000
+01110000000000000111110010000010
+01110000000000000111111000101110
+00100000011000000000000000000000
+00100000010000000101110110000010
+01110000000000000111110010011010
+00100000011000000000000000000000
+00100000010000000101110110000010
+00100000001000000101110110000110
+11011000101000000100011001011110
+01101000000000011000010101010011
+11100000101000011000000000000000
+00100000011000000000000000000000
+00100000001000001111011011011000
+00100000011000000000000000000000
+01101000000000001000010101010100
+01111001001000000111111000000111
+01100000000000001000010011001001
+11000000010001011101110110010010
+00100000011000000000000000000000
+01101000000000001000010101010100
+01111001001000000111111000000111
+01100000000000001000010011001001
+11000000010001011101110110010110
+00100000011000000000000000000000
+01101000000000001100000101011010
+01101000000010001000000001001100
+01111101001110100000010000000101
+01100000000010001000000001001100
+01101000000000001000000000110000
+11000100000000101000000000000000
+01111001001111111111111000000101
+01100000000000001000000000110000
+01101000000000001000010011010111
+00100100011110100000000000000000
+01110000000000000111110000110001
+00100000011000000000000000000000
+00100100001101001101110110100001
+01110000000000000111110000010010
+00100000001000000110001011101011
+01110000000000000111110010010111
+00100000011000000000000000000000
+00100000010000000110001011101011
+00100000001000000101111111111110
+01110000000000000111110010000100
+00100000011000000000000000000000
+01101000000010001000010101010101
+00011000010000010000010000000001
+01100000000010001000010011010000
+01101000000000001100000111001110
+11000000101010001101110110101101
+01110000010000011100111000000000
+01101000000000001000000001010101
+11000001100010101000000000000000
+01110000000000000101010100000100
+00100000001000000110001100011011
+01000111010000000100000000110000
+01101000000000001000010101010010
+01100000000000001000010011001001
+11000000000110011101110111011000
+11000000000001000101110111100111
+11000000000001111101110111101110
+11000000000010000101110111110100
+11000000000010001101110111110101
+11000000000010010101110111111101
+11000000000011000101111000010011
+11000000000010111101111000010110
+11000000000010011101110111001111
+11000000000111101101111100011110
+11000000000111110101111101101010
+11000000001000000101111100100000
+11000000001000001101111100111101
+00100000011000000000000000000000
+01000111010000001100000000110000
+01101000000000001000010101010010
+01100000000000001000010011001001
+11000000000000001101111000001010
+11000000000110011101110111100010
+11000000000001011101110111111110
+11000000000001000101111000000001
+11000000000010011101110111010010
+11000000001000000101111000001011
+11000000001000001101111000001110
+11000000000011000101111000010001
+11000000000010111101111000100010
+00100000011000000000000000000000
+01110000000010101001100100100000
+00100000010000000111110110000110
+00100000001000000010000111011100
+01110000000010101001100100011001
+00100000010000000111110110000110
+01110000010001010101101100000010
+01011000000000000000000001010000
+11011000111000000000000000000110
+00100000001000000111111100001000
+01101000000000001000010011010001
+01111001001000000111111000000000
+01100000000000001000010011010001
+01110000000010101001100100000001
+00100000010000000111110110000110
+01110000000000000111110010001011
+01101000000000001000000001010101
+11000000100000101101110100000111
+01110000000000000101010100000110
+00100000011000000000000000000000
+01110000000001001100101000001011
+01110000000000000111110000000111
+01110000000000000101010100000000
+00100000001000001101110100000111
+00100000011000000000000000000000
+01101000000000001100000110111101
+00100100011110100000000000000000
+00100000010000000010010001001111
+00100000010000000101111111111100
+00100000011101001000000000000000
+01111001001000000000000000100001
+00100000011000000000000000000000
+00100100011101001000000000000000
+01110000000000000111110000010000
+01101000000000001000000001001100
+11000100000000010000000000000000
+01110000000000000111110000010010
+00100000011000000000000000000000
+00100000001000000101111111111110
+00100000010000000110000001011001
+01101000000000001000000000110000
+11000011100000100000000000000000
+01110000000000000111110000110001
+01101000000000001000000001010101
+11000001100001010000000000000000
+01110000000000000101010100001011
+00100000011000000000000000000000
+00100000011000000000000000000000
+01110000000000000111110000000111
+01110000000001001100101000010011
+00100000011000000000000000000000
+01101000000000001000010101010011
+11000000000000110101111000000111
+11000001100011000000000000000000
+01110000000001001100101000011000
+01110000000000000111110000000111
+00100000011000000000000000000000
+01110000000001001100101000000110
+01110000000000000111110000000111
+00100000011000000000000000000000
+00100000011000000000000000000000
+01110000000010011010111000000000
+01110000000000000111110000000111
+00100000001000000101110100000111
+01110000000010011010111000000000
+01110000000000000111110000000111
+00100000001000000101110100000111
+01110000000010101001100100100100
+00100000001000000111110110000110
+01110000000010101001100100100011
+00100000010000000111110110000110
+00100000001000000010011011101001
+01110000000010101001100100100010
+00100000010000000111110110000110
+01011000000000000000000000000000
+01100000000000010000000001110101
+01101000000000010100000111100011
+00011111111000111111111000000000
+01100000000000010000000000110010
+01101000000000001100000111100101
+01100000000000001000000001110011
+01101000000000001100000111100111
+01100000000000001000000001110100
+00100000001000000010011011000110
+01110000000010101001100100100001
+00100000001000000111110110000110
+01101000000010001000010101010010
+01100000000010001000000001010100
+00100000001000000101111000111000
+01101000000000001000010011010001
+01111001001000000111111000000010
+01100000000000001000010011010001
+11000011100000011000000000000000
+01110000000000000111110000110001
+00100000001000000101110100000111
+00100000011000000000000000000000
+01101000000000001100000011010000
+01101000000010001000010101010010
+10011000010001100111110000000000
+00100000001000010101111000111000
+01110000000000000111110000000100
+01110000000000000111111000011111
+01110000000000000111110100101110
+00100000011000000000000000000000
+00100000010000000110000101010111
+00100000001000000101111000111000
+01110000000000000111110000000011
+00100000011000000000000000000000
+01110000000000000111110000100001
+00100000011000000000000000000000
+01110000000000000111110000100010
+00100000011000000000000000000000
+01101000000000001000000001010101
+11000001000010011000000000000000
+01110000000000000101010100000010
+00100000011000000000000000000000
+00100000011000000000000000000000
+00100000010000000101111111111001
+01110000000001001101010000000001
+01110000000010101001100100001010
+00100000010000000111110110000110
+00100000010000000110001011110011
+00100100001000001110000000000001
+00100100001101001101111001001110
+01110000000000000111110000000100
+01110000000000000111110100001000
+01110000000000000111111000100011
+00100000011000000000000000000000
+01101000000000001000000001001011
+01111001001000000111111000000010
+01100000000000001000000001001011
+00100000011000000000000000000000
+01101000000010001000000001001100
+01111101001110100000010000000001
+01100000000010001000000001001100
+00100000011000000000000000000000
+01101000000000001000000001111111
+00011111111000110111111000000000
+00011111111000010111111000000001
+00100000011000000000000000000000
+01101000000000001100001000010111
+00100000011110100000000000000000
+01101000000000001000100110110101
+00100000010110100110011110110010
+00100000011000000000000000000000
+00100000010000000101111001011010
+00100000010000000101111001010110
+01100000000000001000010011010101
+00100000010000000101111111111001
+01110000000000000111110000001100
+01101000000000001100000110111101
+00100100011110100000000000000000
+01101000000000001000000000110000
+11000011100000110000000000000000
+01110000000000000111111000000110
+00100000001000000101110101010011
+11011010001000000000000001000000
+00100000010000000111001010001000
+01101000000000100000010101010010
+01101000000010100000010110010010
+10011000010001100111110000000000
+00100000001000101101111001110011
+01110000000000000111110000000111
+01110000000001001100101000000101
+00100000011000000000000000000000
+00100000010000000101111001110111
+01101000000000001100011001011010
+00100000001110100101111100111110
+00100000011000000000000000000000
+00100000010000000111001110000110
+00100000010000000010000110110010
+01101000000000001000000001001011
+00101111111011111111111000000001
+01111001001111111111111000000001
+01100000000000001000000001001011
+01101000000000001000000001010101
+11000000000011001101111010000001
+11000000000011000101111010000001
+00100000011000000000000000000000
+01101000000000001000100110110101
+11000001100000000000000000000000
+01101000000000001000000001001100
+11000011100000010000000000000000
+00100000001000000110001110110001
+11011010001000000000010101010010
+11011010010000000000010110000010
+11011000101000000000010101100010
+00100000010000000111001101010010
+11011010001000000000000001000000
+00100000010000000110001100010001
+01110000000000000111110000001011
+01101000000000001000000000110000
+11000011000000110101111111111100
+00100000011000000000000000000000
+01101000000000010000000101011111
+00011111111000001111001111111101
+01101000000010001000010101010010
+01011000000000000000000100000001
+10011000010000001000101000000000
+11011000110000000000010101010100
+00100000010000000111111100000001
+01101000000010001000000001010011
+01101000000000001000010101010011
+10011000010001100111111000000000
+00011111111001100111110000001110
+00100000001000010101111010100000
+00011000010000001111111000001110
+01100000000000001000000001010011
+01110000000000000111110000000001
+00100000011000000000000000000000
+01101000000000001000000001001100
+01111001001000000111111000000011
+01100000000000001000000001001100
+11000010100000100110000000000110
+00100000011000000000000000000000
+01101000000000001000010101010010
+01100000000000001000000001111101
+01110000000000000111110000000010
+00100000011000000000000000000000
+00100000001000000101111000111000
+01110000000000000111110000110000
+00100000011000000000000000000000
+01110000000000000111110000101000
+00100000011000000000000000000000
+01110000000000000111110000100110
+00100000011000000000000000000000
+00100000011000000000000000000000
+01101000000000010000000000110010
+10011000000000000000010000000000
+01101000000000001000010101010011
+01100000000000001000000010010101
+10011000010011111000010000000000
+01101000000000010000010101010100
+00011111111000111111111000000000
+01100000000000010000000010010110
+01101000000000100000010101010110
+00011111111000111111111000000000
+01100000000000100000000010010001
+00011000010000100111111000000000
+01100000000000010000000010011000
+00100000011000000000000000000000
+01101000000010001100000101011010
+01101000000000001000010101010011
+10011000010000101111110000000000
+00100100001000101101110101110111
+00101111111011111111111000000000
+01101000000000001000000001001100
+01111001001000001111111000000101
+01100000000000001000000001001100
+01110000000000000111110010000001
+01110000000000000111110110001011
+00100000011000000000000000000000
+00100000011000000000000000000000
+00100000001000000101111000111000
+00100000001000000101111000111000
+01101000000000010000010101010010
+01100000000000010000000101110001
+00100000011000000000000000000000
+01101000000000010000010101010101
+01101000000010001100000101110010
+10011000010011111111111000000000
+11011000010000000000011001000000
+10011000010001100111110000000000
+00100000011000000000000000000000
+01101000000000010000010101010111
+00100000001110100101111011110000
+00100000010000000101111011010000
+00100000001000010101111011110000
+01101000000000001100000010010010
+00011111111001100111110000001010
+00100000010000101011110011010101
+01101000000000001000000000110000
+11000010100000001101111011110000
+01101000000000010000010101010011
+00011111111000111111111000000000
+01100000000000010000000001110101
+01101000000000010000010101010101
+00011111111000111111111000000000
+01100000000000010000000000110010
+01101000000000010000010101010111
+01100000000000001000000001110011
+10011000000000000000010000000000
+01101000000000010000010101011001
+01100000000000001000000001110100
+10011000010001100111110000000000
+00100100001000010101111011101101
+01100000000000001000000001110011
+01110000000000000111110000000011
+01110000000000000111110100010111
+00100000011000000000000000000000
+01110000000000000111111000100100
+00100000001000000101110101010011
+00100000010000000101111000111000
+00100000010000000101111111111001
+00100000010000000111001010001011
+00100000001000000010011010111000
+00100000010000000101111000111000
+00100000001000000010011011000000
+01101000000000100000010101010010
+00011111111000111111111000000000
+00100000001101001101111100000100
+01101000000010001100000110111101
+00100100001110100101111100000001
+01110000000000000111110000000100
+01110000000000000111110100010011
+01110000000000000111111000100100
+00100000011000000000000000000000
+01110000000000000111110000110100
+01110000000000000101010100000000
+00100000001000000010000111011001
+00100000010000000010000111011001
+01111001001000000000000000100010
+01101000000000001000000101101101
+01111001001111111111111000000010
+01100000000000001000000101101101
+00100000001000000101111000111000
+00100000011000000000000000000000
+01110000000000000111110000000011
+01110000000000000111110100011000
+01110000000010101001100100101110
+00100000010000000111110110000110
+00100000001000000010011011101001
+01101000000000001000010101010010
+11000000100000001101111100011100
+01101000000000001000010101010011
+11000000100000001101111100011100
+01101000000000001000010101010100
+11000000100110000101111100011100
+00100000010000000110001011111100
+00100000001000001101111100011001
+01110000000010011010111000000001
+01110000000000000111110000000011
+01110000000000000111110100111101
+00100000001000000101110100000111
+01110000000000000111111000100100
+00100000001000000101110101010011
+01110000000000000111110000111110
+00100000011000000000000000000000
+01101000000000001100011001100010
+11000000000000001101111100100111
+11000000000000010101111100101011
+00100000010000000110001011111100
+00100000011000001000000000000000
+01110000000010011010111000001000
+00100000011000000000000000000000
+00100000010000000111100101100010
+01110000000010101001100100110101
+00100000010000000111110110000110
+00100000001000000101111100100011
+00100000010000000110001011111100
+00100000011000001000000000000000
+01101000000000001100011001100011
+11000000000010011101111100111011
+00011111111000001111111000000001
+01100000000000001100011001100011
+01110000000010011011000000000001
+01110000000010011010111000000100
+01101000000000001100011001100011
+00011111111000100000111000000000
+01101000000000110100011010001010
+10101111111011111111111111111111
+01011000000000000000000010000000
+01111001001000001111111000000000
+01100000000000001100011001100100
+00100000011000000000000000000000
+01110000000010011010111000001000
+00100000011000000000000000000000
+00100000010000000101111101000011
+01101000000000001100011001100101
+00100000011110100000000000000000
+01110000010001100110010100000000
+01110000000010101001100100111000
+00100000001000000111110110000110
+00100000010000000110001011111100
+00100100010000001111100101100101
+00100000010000001111100101110101
+00100000010000000110001011111100
+00100000011000001000000000000000
+01110000000010011010111000001100
+01110000000010011011000000000001
+00100000011000000000000000000000
+11011000101000000000101001101110
+11011000110000000000010101010010
+00100000010000000111111010111111
+01101000000000001100011001100010
+11000001000000010000000000000000
+00100000001000000111011011011000
+01101000000000001000100110101111
+11000000000000111101111101010101
+01101000000000001000100110101110
+11000000100000001101111101101000
+01101000000000001000100110110111
+00011111111001100000101000100000
+00100100001000010101111101101000
+11011000101000000000100111000110
+10011000101000001000101000000000
+01101000000001000000010101010010
+11100000101001000000000000000000
+01101000000001000000010101011010
+11100000101001000000000000000000
+01101000000000001000100110110111
+00011111111000001111111000010000
+01100000000000001000100110110111
+11000000100110000101111000111000
+00100000010000000110001011111100
+00100000001000001101111000111000
+01110000000010011011100000000001
+01110000000010011010111000000010
+01110000000010011011000000000001
+00100000001000000101111000111000
+01110000000000000111111000100100
+00100000001000000101110101010011
+01101000000000001000100110110110
+11000000000110000101111101101110
+01110000000000000111110000111110
+00100000001000000101110100000111
+00100000010000000110001011111100
+00100000001000001101111101110111
+01101000000000001100011001100010
+11000000000000010101111101110101
+01110000000010011011000000000001
+01110000000010011010111000000100
+00100000001000000101110100000111
+01110000000010101001100100110110
+00100000001000000111110110000110
+00100000001000000101110100000111
+01101000000000001000100110101111
+11000000000000111101111101111100
+01101000000000001000100110101110
+11000000100000110101111110001000
+11011000101000000000101000101110
+01101000000001000000010101010010
+11100000101001000000000000000000
+01101000000001000000010101011010
+11100000101001000000000000000000
+00100000010000000110001011111100
+00100000001000001101111110000110
+01110000000010011010111000000111
+01110000000010011011000000000001
+00100000001000000101111000111000
+01110000000010011010111100000100
+00100000001000000111011011011000
+01110000000000000111111000100100
+00100000001000000101110101010011
+01101000000000001000100110101111
+11000000000001011101111110001110
+01101000000000001000100110101110
+11000000100001000101111110011101
+11011000101000000000101001011110
+11011000110000000000010101010010
+00100000010000000111111010111111
+00100000010000000110001011111100
+00100000001000001101111110011010
+01101000000000001100011001100010
+11000000000000001101111110011111
+01110000010001100110000100000000
+01110000000010011010111000001001
+01110000000010011011000000000001
+01110000000000000111110101000001
+00100000001000000101110100000111
+01110000000010011010111100001001
+01110000000010011011000100000001
+00100000001000000101110100000111
+01110000000000000111111000100100
+00100000001000000101110101010011
+01101000000000001100011001100001
+11000010100000111101111110100100
+01111001001000000111111000000110
+01100000000000001100011001100001
+00100000011000000000000000000000
+11000010100000000101111110010101
+01110000010001100110000100000000
+00100000001000000101111110011101
+00100000001000000101110100000111
+01101000000000001000000101101101
+01111001001111111111111000000001
+01100000000000001000000101101101
+00100000010000000101111000111000
+00100100011101001000000000000000
+01101000000000001000010101010010
+01101000000010001000000001001011
+01111001001110100000010000000100
+01111101001110100000010000000101
+01100000000010001000000001001011
+00100000011000000000000000000000
+01101000000011000000010101010010
+01101000000000001000000001010101
+11000001100000011000000000000000
+01101000000000001000000101101101
+11000011000000100101111110111010
+01110000000000000101010100010100
+00100000011000000000000000000000
+01110000000000000101010100000100
+00100000011000000000000000000000
+01101000000000001000000101111111
+01100000000000001000000101011011
+01110000000000000111110000000011
+01110000000000000111110100111000
+00100000011000000000000000000000
+01110000000000000111110000000011
+01110000000000000111110100111001
+00011000000000000111001000001001
+11011000110000000000010101010010
+11011000101000000000000101010010
+11101000110000001000000000000000
+00011111111000101111111001010101
+11100000101000001000000000000000
+11000010000000000101111111000110
+01101000000000001000000101010010
+01101000000010001000000101010001
+01111001001111111000010000000111
+01111001001111111000010000000100
+11000000011111111101111111011010
+11000000000000000101111111110011
+11000000000000101101111111100111
+11000000000000111101111111100110
+11000000000000110101111111100111
+11000000000001000101111111100110
+11000000000000001101111111011111
+11000000000000010101111111011111
+11000000000000011101111111011111
+11000000000001001101111111011111
+11000000000000100101111111011111
+00100000011000000000000000000000
+01101000000000001000000101010001
+01111001001000000111111000000011
+01111001001000000111111000000010
+01100000000000001000000101010001
+00100000011000000000000000000000
+01111001001000000000010000000100
+01110000000000011000000000000101
+01101000000000010000000101011001
+10011000000000000111001000000000
+01100000000000010000000101011111
+11011000101000000000010101010001
+00100000010000000111111101110011
+01111001001000000000010000000111
+01111001001000000000010000000010
+00011000000000000111111000000000
+01100000000000001000000000001011
+01100000000000010000000011111010
+01100000000000010000000011111100
+01100000000000010000000011111000
+01100000000000010000000011110110
+01101000000000001000000101010011
+00101111111000011111111000000000
+01111001001000001000010000000110
+01100000000010001000000101010001
+00100000011000000000000000000000
+01111001001111111000000000010001
+01110000000000010101000100000000
+01101000000000001000000101111111
+01111001001111111111111000000110
+01100000000000001000000101111111
+00100000011000000000000000000000
+11011000110000000000010101010010
+11011000101000000000010101100010
+00100000001000000111111010111111
+01110000000000000111110000001001
+00100000011000000000000000000000
+00100100011101001000000000000000
+01110000000000000111110000010001
+00100000011000000000000000000000
+11011010001000000100000010100000
+00100000010000000111001001010101
+01110000000000000111110000000011
+01110000000000000111110100001000
+00100000011000000000000000000000
+01110000000000000111001000001010
+01110000000000000111110000000111
+01110000000001001100101000010110
+00100000011000000000000000000000
+01000111010000010100000000110000
+01111000010101000111110000000000
+00100000010000000110001011000001
+01101000000000001000000001001000
+00100000011110100000000000000000
+11000010100000111110000000111111
+11000000000000001110000101101111
+11000000000000010110000011100100
+11000000000000011110000001001010
+11000000000000100110000001100000
+11000000000100111110000111011011
+11000000000101000110000100001000
+11000000000110000110000011110100
+11000000000100101110000111010110
+11000000000100110110000100000011
+11000000000110001110000111000011
+11000000000110111110000101101010
+11000000000110011110000101011100
+11000000000001000110001001011001
+11000000000001001110001001001111
+11000000000001011110001001100100
+11000000000001100110001001101101
+11000000000001111110000101100010
+11000000000010000110001010010010
+11000000000010001110001010001000
+11000000000000111110000101010010
+11000000000101010110000101111110
+11000000000001010110000101111111
+11000000000011111110000110111100
+11000000000000110110000011111001
+11000000000100001110000101011111
+11000000000101101110000110110010
+11000000000101110110000110110111
+11000000000100010110000101011111
+11000000000110100110000110000000
+11000000000010011110000110010101
+11000000000010111110000110100100
+11000000000010010110001010001111
+11000000000101111110000110101010
+11000000000011000110000110101111
+11000000000111101110000111111111
+11000000000111110110001000001011
+11000000000111111110001000011101
+11000000001000000110001000100111
+11000000001000001110001000111100
+11000000000100011110001001001011
+11000000000111011110001001000110
+11000000000000101110001001001100
+11000000000101001110001001001101
+11000000000111000110001001001110
+11000000000111001110000101110101
+00100000001000000010101010001100
+00100000011000000000000000000000
+11000000010000001110000001101101
+11000000010000100110000010011001
+11000000010000010110000001110110
+11000000010000011110000100001101
+11000000010001011110000100011000
+11000000010010111110000101001110
+11000000010011001110000011010101
+11000000010011010110000010100100
+11000000010010101110000011011010
+11000000010010110110000011011011
+00100000001000000010101010001100
+00011000000000000111111000000010
+00100000010000000110001010011000
+01101000000000001000000001001001
+11100000101000001000000000000000
+00100000010000000110001010100111
+01000111010000011100000000110000
+01101000000000001000000001001001
+11000000000001000110000010000000
+11000000000001111110000010000100
+11000000000010000110000010001111
+11000000000010111110000001011111
+11000000000110011110000010010010
+11000000001000001110000010011000
+11000000000010001110000001011001
+00100000011000000000000000000000
+01101000000000001000000001010101
+00100000011110100000000000000000
+01110000000000000101010100011011
+01011000000000000000000000001100
+11011000111000000000000000000111
+00100000001000000111111100001000
+00100000001000000010011011000110
+00011000000000000111111000000011
+00100000010000000110001010011000
+01101000000000001000000001001001
+11000000000001011110000001101000
+11100000101000001000000000000000
+01101000000000001000000001001010
+11100000101000001000000000000000
+00100000001000000110001010100111
+11100000101000001000000000000000
+01101000000000001000000001001010
+11100000101000001000000000000000
+11011000010000000000010011010101
+00100000001000000110001011100010
+00011000000000000000111000000100
+00100000010000000110001010100000
+01011000000000000000000001111111
+11100000101000001000000000000000
+01101000000000001000000001001001
+01111001001111111111111000000111
+11100000101000001000000000000000
+01101000000000001000000001001001
+00100000001000000110001010100111
+00011000000000000000111000000101
+00100000010000000110001010100000
+01011000000000000000000001111111
+11100000101000001000000000000000
+01101000000000001000000001001001
+01111001001111111111111000000111
+11100000101000001000000000000000
+01101000000000001000000001001010
+11100000101000001000000000000000
+00100000001000000110001010100111
+00100000010000000010010001001111
+00100000010000000110001011110011
+00100000011000001000000000000000
+00100000001000000101111111111100
+01101000000000001000000001001011
+11000010100000101110000010001011
+11000100000000100000000000000000
+01110000000000000111110000010010
+01111001001111111111111000000100
+00100000010000000110001011101011
+00100000001000000110000010001101
+01110000000000000111110000010000
+01111001001111111111111000000101
+01100000000000001000000001001011
+00100000011000000000000000000000
+00100000010000000110001011111100
+00100000001000001101111111111110
+00100000011000000000000000000000
+01110000000000000111110010001011
+01101000000000001000010011010001
+01111001001000000111111000000000
+01100000000000001000010011010001
+01110000000010101001100100000001
+00100000001000000111110110000110
+00100000011000000000000000000000
+00011000000000000000111000001100
+00100000010000000110001010100000
+01011000000000000000000000000001
+11100000101000001000000000000000
+01101000000000010000010011001110
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000011000000000000000
+01011000000000000000000000000000
+11100000101000100000000000000000
+00100000001000000110001010110000
+00011000000000000000111000000101
+00100000010000000110001010100000
+01101000000000011100011001011011
+11100000101000011000000000000000
+00100000010000000110001010110000
+01110000010001100110010100000001
+01101000000000001100011001011011
+11000000000000001110000010110101
+11000000000000010110000010101111
+11000000000000011110000010111011
+00100000011000000000000000000000
+01101000000000001100011001011110
+11000000000000000110000011000111
+11000000000000001110000011000111
+11000000000000010110000011000111
+11000000000000011110000011000001
+00100000011000000000000000000000
+01101000000000001100011001011110
+11000000000000000110000011000001
+11000000000000001110000011000101
+11000000000000010110000011000111
+11000000000000011110000011000001
+00100000011000000000000000000000
+01101000000000001100011001011110
+11000000000000000110000011000001
+11000000000000001110000011000001
+11000000000000010110000011000001
+11000000000000011110000011000001
+00100000011000000000000000000000
+01110000010001100110001000000011
+01101000000000001100010101011100
+11000010100000000011001111101001
+00100000011000000000000000000000
+01110000010001100110001000000001
+00100000011000000000000000000000
+01110000010001100110001000000010
+00100000011000000000000000000000
+11011000111000000000000000000000
+00100000001000000110000011001101
+11011000111000000000000000000000
+00100000001000000110000011010001
+01101000000000001100010101011100
+11111001001000000111111000000000
+01100000000000001100010101011100
+00100000011000000000000000000000
+01101000000000001100010101011100
+11111001001111111111111000000000
+01100000000000001100010101011100
+00100000011000000000000000000000
+00011000000000000000111000000101
+00100000010000000110001010100000
+01101000000000011100011001011011
+11100000101000011000000000000000
+00100000001000000110001010110010
+00100000011000000000000000000000
+00011000000000000000111000001001
+00100000010000000110001010100000
+01101000000000001000000010010101
+11100000101000001000000000000000
+01101000000000010000000010010110
+11100000101000010000000000000000
+01101000000000100000000010010001
+11100000101000100000000000000000
+00100000001000000110001010110000
+00011000000000000111111000010001
+00100000010000000110001010011000
+01101000000000001000000001001001
+00011111111000100000010000000000
+11000000000000000110000011101100
+11000000000001110110000011101100
+11000000000011100110000011101100
+00100000011000000000000000000000
+11100000101000001000000000000000
+01101000000000001100010100010101
+11100000101000001000000000000000
+11011111001000000000000000001110
+01011000000000000100010100010110
+10011000010000001000110000000000
+00100000010000000111111100000001
+00100000001000000110001010110000
+00011000000000000111111000000011
+00100000010000000110001010011000
+01011000000000000000000100010100
+11100000101000010000000000000000
+00100000001000000110001010110000
+00011000000000000111111000000011
+00100000010000000110001010011000
+01101000000000100000000101100101
+10011100010001100111111000000000
+00100000001101001110000011111111
+00011111111001100111111000000000
+00011111111010110111111000000000
+01111001001111111111111000001111
+11100000101000010000000000000000
+00100000001000000110001010110000
+00011000000000000111111000000110
+00100000010000000110001010011000
+01101000000000101100010100010000
+11100000101000101000000000000000
+00100000001000000110001010110000
+00011000000000000111111000001001
+00100000010000000110001010011000
+01101000000001000100000010011000
+11100000101001000000000000000000
+00100000001000000110001010110000
+00011000000000000000111000001100
+00100000010000000110001010100000
+01011000000000000000000000000001
+11100000101000001000000000000000
+01101000000000010000010011001110
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000011000000000000000
+01011000000000000000000000000000
+11100000101000100000000000000000
+00100000001000000110001010110010
+00011000000000000000111000000011
+00100000010000000110001010100000
+01101000000000001100000101011010
+11100000101000001000000000000000
+01111000010101000111110000000000
+00100000010000000110001010110010
+00100100011101000000000000000000
+00100100011101001000000000000000
+01101000000000001100000011011000
+11000100000000000000000000000000
+00100000010000000110000100110010
+00100000001000000110000100111100
+01000111010000100100000000110000
+01101000000000001100000010011110
+01111001001000000111111000000011
+01100000000000001100000010011110
+01011000000000000000000100000001
+01100000000000010000010011001110
+00100000011000000000000000000000
+01000111010000101100000000110000
+01101000000000001100000010011110
+01111001001111111111111000000011
+01100000000000001100000010011110
+01011000000000000000000000000000
+01100000000000010000010011001110
+00100000011000000000000000000000
+01110000010000001101100000000011
+01011000000000000000000000000000
+01100000000000100100000101000010
+11011000101000000100000011011010
+00100000010000000110000101000000
+11011000101000000100000011100111
+00100000010000000110000101000000
+11011000101000000100000101000110
+00100000010000000110000101000000
+00100000001000000110000101000111
+11011000101000000100000011100111
+00100000010000000110000101000000
+00100000010000000110000101000111
+00100000001000000110000101001010
+01011000111111111111111111111111
+11100000101000011000000000000000
+11100000101000011000000000000000
+11100000101000011000000000000000
+01011000000000000000000001111111
+11100000101000001000000000000000
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000010100000011010110
+00100000011000000000000000000000
+01101000000000001100000011011000
+01111001001000000111111000000010
+01100000000000001100000011011000
+00100000011000000000000000000000
+00011000000000000000111000000010
+00100000010000000110001010100000
+00100100001101001110001010110000
+00100000001000000110001010110010
+00011000000000000111111000000010
+00100000010000000110001010011000
+01101000000000001000010011001010
+11100000101000001000000000000000
+00100000010000000110001010110010
+01101000000000001000000001001011
+01111001001000000111111000000011
+01100000000000001000000001001011
+01110000000000000111001000110010
+00100000011000000000000000000000
+00011000000000000111111000000001
+00100000010000000110001010011000
+00100000001000000110001010110010
+00011000000000000111111000000001
+00100000010000000110001010011000
+00100000001000000110001010110000
+00011000000000000111111000000010
+00100000010000000110001010011000
+01101000000000001000000001001100
+00101111111011000000000000000010
+01111001001000001111111000000000
+00011111111000010111111000000001
+11100000101000001000000000000000
+00100000001000000110001010110010
+00011000000000000111111000000011
+00100000010000000110001010011000
+01101000000000010000000001010001
+11100000101000010000000000000000
+00100000001000000110001010110010
+01110000000000000111001011111010
+00011000000000000111111000000010
+00100000010000000110001010011000
+01101000000000001000000001010011
+11100000101000001000000000000000
+00100000001000000110001010110010
+00011000000000000111111000001010
+00100000010000000110001010011000
+11011000110000000000000101010010
+00011000000000000111001000001001
+11101000110000001000000000000000
+00011111111000101111111001010101
+11100000101000001000000000000000
+11000010000000000110000101111001
+00100000001000000110001010110010
+00100000001000000110001010110010
+00100000001000000110001010110010
+00100000011101001000000000000000
+00100000010000000010100000101101
+00011000000000000111111000001001
+00100000010000000110001010011000
+01101000000000010000000101110001
+11100000101000010000000000000000
+01101000000000011100000010100000
+11100000101000011000000000000000
+01101000000000001100000010100011
+11100000101000001000000000000000
+01101000000000010100000010100100
+11100000101000010000000000000000
+11000101100000011110000110010001
+01111001001111111000000000000011
+00100000010000000110001010110010
+01110000000000000111110000010011
+00100000011000000000000000000000
+00100000010000000110001010110000
+01110000000000000111110000000011
+01110000000000000111110100010011
+00100000011000000000000000000000
+11011000010000000000001000000000
+00100000001101001110000110011001
+00011101000000100111111000000000
+00100000001000000110000110011010
+00011100010000100111111000000000
+00011100001000100111111000000000
+10011000010000001111111000000000
+00011111111000010111111111111100
+01100000000000100000000000110100
+00011000000000000111111000000101
+00100000010000000110001010011000
+01101000000000100000000000110100
+00011111111000110111111000000000
+11100000101000100000000000000000
+00100000001000000110001010110010
+00011000000000000111111000001010
+00100000010000000110001010011000
+11011000110000000000010011011001
+11101000110001001000000000000000
+11100000101001001000000000000000
+00100000001000000110001010110010
+00011000000000000111111000000011
+00100000010000000110001010011000
+01011000000000000000000100010100
+11100000101000010000000000000000
+00100000001000000110001010110010
+00011000000000000111111000000001
+00100000010000000110001010011000
+00100000001000000110001010110010
+00011000000000000111111000000010
+00100000010000000110001010011000
+01101000000000001100000011010000
+11100000101000001000000000000000
+00100000001000000110001010110010
+00011000000000000111111000000010
+00100000010000000110001010011000
+01011000000000000000000000000101
+11100000101000001000000000000000
+00100000001000000110001010110010
+00011000000000000111111000000010
+00100000010000000110001010011000
+01011000000000000000000000000000
+11100000101000001000000000000000
+00100000001000000110001010110010
+01110000000000000111110000101110
+00100000011000000000000000000000
+01101000000000001100000010010010
+00011111111001100111110000001010
+00100000010000101110000111000001
+01101000000000001000000000110000
+01111001001000000111111000000100
+01100000000000001000000000110000
+00011100010000100111111000000000
+01100000000000100000010011101001
+01101000000000001000010011010001
+11000010100000011110000111010100
+01111001001000000111111000000011
+01100000000000001000010011010001
+01110000000010101001100100000101
+00100000010000000111110110000110
+00011000000000000111111000000001
+00100000010000000110001010011000
+00100000001000000110001010110010
+01110000000000000100100000000000
+00100000011000000000000000000000
+00011000000000000111111000000110
+00100000010000000110001010011000
+01101000000000101100010100010000
+11100000101000101000000000000000
+00100000001000000110001010110010
+00011000000000000111111000001001
+00100000010000000110001010011000
+01101000000001000100000010011000
+11100000101001000000000000000000
+00100000001000000110001010110010
+01110000000010011011000100000001
+01101000000000001100010110110001
+11000001100000001000000000000000
+01110000000010011010111100010011
+00100000011000000000000000000000
+00100000010000000110001011101111
+01110000000000000111110010011001
+01110000000010011010111100000011
+00100000011000000000000000000000
+00100000010000000110001011101111
+01110000000000000111110000111101
+01110000000010011010111100000111
+00100000011000000000000000000000
+11011010001000000000101001001110
+11011010010000000000101001101110
+11011111001000000000000000010000
+00100000010000000111111110001000
+00100000001000101110000111110111
+01110000000010011010111100000000
+00100000010000000111011011011010
+01110000000000000111111000100100
+01110000000000000111110101000000
+00100000001000000101110101010011
+01110000000010011010111100001010
+00100000010000000111011011011000
+01110000000000000111110101000000
+00100000001000000101111000111000
+01110000000000000111110001000000
+00100000011000000000000000000000
+01110000000000000111110000111101
+00100000011000000000000000000000
+01110000000010011011011000000000
+00011000000000000111111000000100
+00100000010000000110001010011000
+00011000000000000111111000000001
+11100000101000001000000000000000
+00011000000000000111111000000001
+11100000101000001000000000000000
+00011000000000000111111000110000
+11100000101000001000000000000000
+00100000010000000110001011111100
+00100000001000001110001010110010
+00100000001000000110001010110000
+00011000000000000111111000010001
+00100000010000000110001010011000
+01101000000000001000100110110110
+11011000110000000100011000101010
+10011000110000001000110000000000
+11101000110001000000000000000000
+11100000101001000000000000000000
+11101000110001000000000000000000
+11100000101001000000000000000000
+01101000000000001000100110110110
+00011111111000001111111000010000
+01100000000000001000100110110110
+00100000010000000110001011111100
+00100000001000001110001010110010
+00100000001000000110001010110000
+01110000000010011010111000000110
+01110000000000000111110000111111
+00100000011000000000000000000000
+00011000000000000111111000010001
+00100000010000000110001010011000
+11011000110000000000101001001110
+11101000110001000000000000000000
+11100000101001000000000000000000
+11101000110001000000000000000000
+11100000101001000000000000000000
+00100000001000000110001010110000
+01110000000000000111110001000000
+00100000011000000000000000000000
+00100000010000000110001011111100
+00100000010000001111011000010010
+00011000000000000111111000010001
+00100000010000000110001010011000
+11011000110000000000101000011110
+11101000110001000000000000000000
+11100000101001000000000000000000
+11101000110001000000000000000000
+11100000101001000000000000000000
+00100000010000000110001011111100
+00100100001000001110001010110000
+00100000001000001110001010110010
+01110000000010011010111100001111
+00100000010000000110001011101111
+01110000000000000111110000001011
+00100000010000000110001100000111
+00100000001000001111011001001110
+00100000001000000111011001011000
+00100000010000000110001011101011
+01110000000000000111110001000001
+00100000011000000000000000000000
+00011000000000000111111000010001
+00100000010000000110001010011000
+11011000110000000000101001001110
+11101000110001000000000000000000
+11100000101001000000000000000000
+11101000110001000000000000000000
+11100000101001000000000000000000
+00100000010000000110001011111100
+00100100001000001110001010110000
+00100000001000001110001010110010
+00011000000000000111111000000011
+00100000010000000110001010011000
+01011000000000001111111111111110
+11100000101000010000000000000000
+00100000001000000110001010110000
+00100000001000000110001010110010
+00100000001000000110001010110010
+00100000001000000110001010110010
+00100000001000000110001010110010
+00100000010000000110001100001011
+11011010001000000100000010100000
+00100000010000000110001100010001
+00011000000000000111111000010001
+00100000010000000110001010011000
+11011010001000000000010110000010
+11011010010000000000010101100010
+00100000010000000111001101010010
+00100100001101001110001010100111
+00100000001000000110001010101101
+00100000010000000110001100001011
+11011010001000000000000001000000
+00100000010000000111001001010101
+00011000000000000111111000010001
+00100000010000000110001010011000
+11011000110000000000010101100010
+00100000010000000111111010111111
+01101000000000001000000001010101
+11000000000011001110001010110010
+11000000000011000110001010110010
+00100000001000000110001010101101
+01101000000000001000100110110101
+00100000001110100110001001101010
+00100000010000000110001011111100
+00100000010000001110001011101111
+00100100010000001110001011101011
+00100000001000000110001001101011
+00100000010000000110001011101111
+00100000010000000110001100001011
+00100000001000000110001001011100
+11011010001000000100000010100000
+00100000010000000111001010001000
+00011000000000000111111000000101
+00100000010000000110001010011000
+01101000000000100000010110010010
+11100000101000100000000000000000
+11011000010000000000010011010101
+00100000010000000110001011100010
+00100000010000000111001110000110
+00100000010000000110001011111100
+00100000001000001110001001111100
+01110000000001001101100000000001
+01101000000000001000100110110101
+00100000011110100000000000000000
+01110000000000000111110000001011
+01101000000000001100000110111101
+00100000011110100000000000000000
+00100000010000000110001011111100
+00100100001000001110001010000100
+01101000000000001000010011010111
+00100000011110100000000000000000
+01110000000000000111110000001111
+00100000011000000000000000000000
+11000110100100001000000000000000
+01111001001111111000000000100001
+01110000000000000111110000001111
+00100000011000000000000000000000
+00100000010000000110001100001011
+00100000010000000111001010001011
+00011000000000000111111000010001
+00100000010000000110001010011000
+11011000110000000000010101100010
+00100000010000000111111010111111
+00100000001000000110001010101101
+00011000000000000111111000000001
+00100000010000000110001010011000
+00100000001000000110001010101101
+00011000000000000111111000000010
+00100000010000000110001010011000
+00011000000000000111111000010000
+11100000101000001000000000000000
+01100000000000001000000001010100
+00100000001000000110001010101101
+00011111111010011111111000000000
+00011111111000011111111000000111
+01100000000000001000010010110110
+11011111001000000000000000010001
+11011000101000000000010010111000
+00100000010000000111111011010100
+11011000101000000000010010111000
+00100000011000000000000000000000
+00011111111000010010001001111111
+01110000000000000100100001111111
+00011000111000100111111000000000
+00100000010000000110001010011000
+00011010001000100111111000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+01101000000000001000000001001000
+00011111111000111111111000000000
+01101000000010001000000001001100
+00101000010011111111111000000001
+01111001001000001111111000000000
+00100000001000000110001010110111
+01101000000010001000000001001100
+00011000010000010000010000000001
+00100000001000000110001010110011
+00011000000000000000010000000000
+00100000001000000110001010110011
+00011000000000000000010000000001
+01101000000000001000000001001000
+00011111111000111111111000000000
+01111001001101001111111000000000
+10011000010000101111111000000000
+01100000000000001000010010110111
+01110000000000000100100000000000
+00100000010000000110001011000111
+01111000001101000111110000000000
+00100000011000000000000000000000
+01101000000000001000000001111100
+00100000011110100000000000000000
+00100000010000000110001011000001
+01101000000000001000000001111100
+00100000011000000000000000000000
+01000111010000110100000000110000
+01101000000000001000000001001000
+00100000001110100110001011000111
+01101000000000001000000001111000
+00100100011110100000000000000000
+00100000001000000110001011010001
+01101000000000001000000001111000
+00100000001110100110001011010111
+01101000000000011000000001111000
+01100000000000011000000001001000
+01101000000010001000000001111011
+01101000000000001000000001001100
+01111001001111111111111000000001
+10011000010000011111111000000000
+01100000000000001000000001001100
+01110000000000000111100000000000
+01101000000000001000000001111100
+00100000011110100000000000000000
+01101000000000100000000001111100
+01100000000000100000000001111000
+01110000000000000111110000000000
+00100000011000000000000000000000
+01101000000000001000000001111100
+00100000011110100000000000000000
+01101000000000011000000001111100
+01100000000000011000000001001000
+01101000000010001000000001111111
+01101000000000001000000001001100
+01111001001111111111111000000001
+10011000010000011111111000000000
+01100000000000001000000001001100
+01110000000000000111110000000000
+00100000011000000000000000000000
+01000111010000111100000000110000
+01101000000000001000000001001100
+00011111111000100010011000000000
+11101000010000001000000000000000
+00100000010000000101111001010010
+00100000010000000110001010100111
+00011010011000100111111000000000
+01100000000000001000000001001100
+00100000011000000000000000000000
+01101000000010001000000001001100
+01111001001111111000010000000000
+01100000000010001000000001001100
+00100000011000000000000000000000
+01101000000010001000000001001100
+01111001001000000000010000000000
+01100000000010001000000001001100
+00100000011000000000000000000000
+01111101001101001111111000000001
+01101000000010001000000001001100
+10011000010000101111111000000000
+00101111111011111111111000000001
+00100000011000000000000000000000
+01101000000000001000000001001100
+01111001001101001111111000000001
+01100000000000001000000001001100
+00100000011000000000000000000000
+01101000000000001000100110110100
+00101111111000001111111000000001
+00100000011000000000000000000000
+01101000000000001000100110110100
+01111001001000000111111000000111
+01100000000000001000100110110100
+00100000011000000000000000000000
+01101000000000001000100110110100
+01111001001111111111111000000111
+01100000000000001000100110110100
+00100000011000000000000000000000
+01101000000000001000100110110100
+00101111111011111111111000000111
+01100000000000001000100110110100
+00100000011000000000000000000000
+11011000101000000000010101100010
+00011000000000000111001000010000
+00011000000010100111111000000000
+11100000101000001000000000000000
+11000010000000000110001100001101
+00100000011000000000000000000000
+00100000010000000111001001011001
+11011010001000000100000110111110
+11011010010000000000010110010010
+11101010001001000000000000000000
+01101000000010001000000000110000
+01111101001110100000010000000110
+01100000000010001000000000110000
+00011010001000100000101000000000
+00100000010000000111001101010010
+00100000001000000010000111000100
+01000111010001000100000000110001
+00100000010000000110001010111100
+00100100011110100000000000000000
+01101000000000001000000001010101
+00100000011110100000000000000000
+11000000000000100110001101101111
+11000000000000101110001101110100
+11000000000000010110001101100110
+11000000000000011110001101111100
+11000000000001110110001101101001
+11000000000000110110001110011000
+11000000000000111110001110110000
+11000000000001001110001110110001
+11000000000001010110001110111010
+11000000000001011110001110111110
+11000000000001100110001110000110
+11000000000001101110001110001001
+11000000000001111110001110001111
+11000000000010010110001101011001
+11000000000010011110001101111100
+11000000000010000110001101011100
+11000000000010100110001101010110
+11000000000010101110001101111100
+11000000000010110110001101010000
+11000000000011000110001101010101
+11000000000010111110001101001001
+11000000000011001110001101001111
+11000000000011010110001100111010
+11000000000011011110001101000100
+01110000000000000101010100000000
+00100000011000000000000000000000
+01101000000000001000010011010001
+11000100000000010000000000000000
+11000100000000011000000000000000
+01110000000000000101010100000000
+00100000010000000110001101000000
+00100000001000000110110011101111
+01101000000000001000000101101101
+11000100000000001000000000000000
+01110000000000000101010100001010
+00100000011000000000000000000000
+11011000111000000000000000000111
+00100000010000000111111100010110
+00100100011110100000000000000000
+01110000000000000101010100011010
+00100000011000000000000000000000
+01101000000000001000000101101101
+01111001001111111111111000000000
+01100000000000001000000101101101
+01110000000000000101010100011001
+01110000000000000111110000001011
+00100000011000000000000000000000
+00100000011000000000000000000000
+01101000000000001000010011010100
+11000001100000010000000000000000
+00100000010000000110001111000000
+01110000000000000101010100011000
+00100000011000000000000000000000
+00100000011000000000000000000000
+01110000000000000101010100010101
+01110000000000000111110010000011
+00100000011000000000000000000000
+01110000000000000101010100010011
+01110000000000000111110000100101
+00100000011000000000000000000000
+01101000000000001100010101011011
+11000001000000000000000000000000
+11000000000000001110001101100100
+11011000111000000000000000000110
+00100000010000000111111100010110
+00100100011110100000000000000000
+01110000010001010101101100000000
+00100000001000000110001101111101
+00100000011101001000000000000000
+00100000001000000110001110011000
+01110000000000000101010100000011
+01110000000000000111110000100111
+00100000011000000000000000000000
+01110000000000000111110000010011
+01111001001000000000000000000011
+01110000000000000101010100000101
+01011000000000000000000111111111
+01100000000000010000010011010010
+00100000011000000000000000000000
+01110000000000000101010100000101
+01110000000001001101001011111111
+01111001001111111000000000100010
+01110000000000000111110000110011
+00100000001000000101110100000100
+11000110000100010000000000000000
+01101000000000010000010011010010
+00011111111001100111111000000001
+00100000001000101110001101111010
+01100000000000010000010011010010
+00100000011000000000000000000000
+01110000000000000101010100001110
+00100000011000000000000000000000
+00100000011000000000000000000000
+01101000000000001000010011010001
+11000100000000011000000000000000
+11000100000000010000000000000000
+01101000000000001000000101101101
+01111001001111111111111000000010
+01100000000000001000000101101101
+01110000000000000111110000010011
+01110000000000000101010100010000
+00100000011000000000000000000000
+01110000000000000101010100001101
+01110000000000000111110000110001
+00100000011000000000000000000000
+01101000000000001000010011010001
+11000100000000010000000000000000
+01110000000000000101010100000000
+00100000011000000000000000000000
+01110000000000000101010100000110
+00100000011000000000000000000000
+01101000000000001000010011010010
+00011111111000001111111111111111
+00100000001110100110001110010100
+01100000000000001000010011010010
+00100000011000000000000000000000
+01110000000000000111110000000111
+01110000000001001100101000010110
+01110000000000000101010100000000
+00100000011000000000000000000000
+01101000000000001000000101101101
+11000010100000010110001101111101
+11000010100000000110001110011101
+01110000000000000101010100011010
+00100000011000000000000000000000
+01101000000000001100000110111101
+00100000001110100110001110101001
+01101000000000001000010011010001
+11000100000000011000000000000000
+11000100000000010000000000000000
+01101000000000100000010011101001
+11011000010000000000000001100100
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+00100000001000000110001101001001
+01110000000000000101010100010110
+01110000010001101000100100000100
+01011000000000000011000000110000
+01100000000000010100011010001010
+11100000101000010000000000000000
+01110000000001001101010000000010
+00100000001000000110001101010000
+00100000011000000000000000000000
+01101000000000001000000101101101
+11000010100000001110001110110101
+01110000000000000101010100011010
+00100000011000000000000000000000
+01101000000000001000000101101101
+01111001001111111111111000000001
+01100000000000001000000101101101
+01110000000000000111110000001111
+00100000011000000000000000000000
+01101000000000001000010011011000
+00100000011110100000000000000000
+01110000000000000101010100000000
+00100000001000000110001110110101
+01110000000000000101010100001100
+00100000011000000000000000000000
+01101000000000001000000001001011
+11000010100000010110001111000101
+00100000010000000110001011101111
+01110000000000000111110000001000
+00100000001000000100110100000100
+01101000000000001000000001001011
+01111001001111111111111000000010
+01100000000000001000000001001011
+00100000010000000110000000000001
+00100000010000000110001011111000
+00100000001000000100110100000100
+01011000000000000000000000000100
+01100000000000001100011010001001
+01011000000000000011000000110000
+11100000101000010000000000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+01000111010001100100000000110001
+01101000000100001000000001110011
+11011000010000000000000000000110
+10011000010000011111111000000000
+01100000000100001000000001110011
+01101000000100001000000001110111
+10011000010000011111111000000000
+01100000000100001000000001110111
+00100000010000000110001111101110
+01101000000100001000000001110111
+01111001001111111111111000000001
+01111001001111111111111000000010
+01100000000100001000000001110111
+00100000000000000000000000011110
+00100000001000000110001111110010
+01101000000100001000000001110011
+11011000010000000000000011000000
+10011000010000011111111000000000
+01100000000100001000000001110011
+01101000000100001000000001110111
+10011000010000011111111000000000
+01100000000100001000000001110111
+00100000010000000110001111101110
+01101000000100001000000001110111
+01111001001111111111111000000110
+01111001001111111111111000000111
+01100000000100001000000001110111
+00100000000000000000000000011110
+00100000001000000110001111110110
+01101000000100001000000010000001
+00011111111000010111111011111100
+01100000000100001000000010000001
+00100000011000000000000000000000
+01101000000100001000000010000001
+00011111111000011111111000000001
+01100000000100001000000010000001
+00100000011000000000000000000000
+01101000000100001000000010000001
+00011111111000011111111000000011
+01111001001111111111111000000100
+01100000000100001000000010000001
+00100000011000000000000000000000
+00011111111000100010010000000000
+00100000010000000110010000001111
+00100000000000000000000001100100
+00011010010000100111111000000000
+00100000010000000110010000010100
+00011111111000100010010000000000
+00100000010000000110010000010001
+00100000000000000000000001100100
+00011010010000100111111000000000
+00100000011000000000000000000000
+00011111111000100010010000000000
+00100000010000000110010000001111
+00100000000000000000000001100100
+00011010010000100111111000000000
+00100000010000000110010000010011
+00100000010000000110010000010001
+00100000000000000000000001100100
+00100000011000000000000000000000
+01101000000010001100001000010100
+00100000001000000110100000001110
+01101000000010001100001000010100
+00100000001000000110100000101001
+01101000000010001100001000010100
+00100000001000000110100000100101
+00100000001000000110010011101100
+00100000001000000110010011110011
+00100100001101000110010000011001
+01101000000100001000000010000101
+00011111111000011111111000000010
+01100000000100001000000010000101
+00011000010000100111110000000000
+00100000001000101110010000011100
+00011010011000100111101000000000
+00101111110011000000000000000000
+00100000001000000110010010111001
+00011000000000000000010000000100
+11011010001000000000000111111110
+01101000000100001000000010000101
+00011111111000010111111011111101
+01100000000100001000000010000101
+00100000010000000110010000011001
+11011010001000000101010110101010
+01101000000000010000000111111110
+11101000110010010000000000000000
+10011010001001100111110000000000
+00100000011000000000000000000000
+11011000010000000000000000000010
+11011010001000000000001000000100
+00100000010000000110010000011001
+01101000000000010000001000000100
+01100000000000010000000111110111
+00100000010101000110010000110000
+00100000011000000000000000000000
+11011000010000000000000000010000
+11011010001000000000001000000110
+01101000000100001000000010000101
+00011111111000010111111011111101
+01100000000100001000000010000101
+00100000010000000110010000011001
+11011000110000000000001000000110
+11011111001000000000000000010000
+00100000010000000111010001111000
+00100000010000000111010000101000
+00100000010000000111010010010001
+00100000001000000111010000100010
+01111000010101101111110000000000
+00100000010000000110010000011110
+00100100011000101000000000000000
+01111000001101101111110000000000
+01110000100000000010001110000000
+01110000100000000010001000000000
+01110000100000000010010000000000
+11011010001000001000000000100101
+00100000010000000110010000010101
+01110000100000000010001100000000
+11011000010000000000000000000110
+00100000010000000110010000011111
+00100100011000101000000000000000
+11101000110000010000000000000000
+10011000000000000010001000000000
+00100000010000000110010000011001
+00100000001000000110010001000110
+00100000010000000111111110011001
+01011000000000000001000000000000
+01100000000000010000000111110111
+11011010011000000110010111100101
+11011111001000000000000000000010
+00100000010000000110010000011110
+00100100011000101000000000000000
+01101000000000010000000111110111
+00011111111100001111111000000000
+10011000010000001111111000000000
+00011111111100001111111000000000
+01100000000000010000000111110111
+11000010000000000110010001010010
+00100000001000000110010001000110
+00100000010000000111111110011001
+01111000010101000111110000000000
+00100000010000000110011001101010
+01011000000000000000000000000000
+11011010001000000000000111110011
+11011000010000000000000000000010
+00100000010000000110011010110011
+01101000000000010000000111110011
+11000011000000111110010001101110
+01110000100000000101000000100101
+01011000000000000000011111110000
+11011010001000000000001000000110
+11011000010000000000000000010000
+00100000010000000110011010110011
+01110000100000000000011000001000
+01111001001000000000000000101011
+11011000110000000000001000000110
+00100000010000000111010010000100
+01111000001101000111110000000000
+01110000010000011101101000000000
+00100000010000000110010010110000
+01101000000000010000000111110011
+00011111111100001111111000000000
+11011000010000000000011111111111
+10011000010000010111111000000000
+00100000001000101110010001111011
+00100000010000000110011001101111
+11011010011000000110011010111000
+00100000010101000110010000110000
+00100000010000000110010000111100
+01101000000000001000000111110010
+11000011000000000110010001101111
+00100000010000000110011001101101
+01110000010000011101101000000000
+00100000010000000110010010110000
+00100000010000000110010111000010
+01101000000000001000000111110011
+11000010100000110110010010001110
+00100000010000000110010010101010
+00100100001101101110010010000110
+01101000000000001000000111110010
+11000011000000000110010001111101
+00100000001000000110010010011011
+00100000010000000110010110111111
+01101000000000001000000111110011
+11000010100000110110010010001110
+00100000010000000110010010101010
+00100100001101101110010010001110
+01101000000000001000000111110010
+11000011000000000110010001111101
+00100000001000000110010010011011
+01110000010000011101101000000000
+00100000010000000110010010110000
+01101000000000001000000111110011
+11000010100000101110010010011011
+01011000000000000000000000000000
+01100000000000011000000111110110
+00100000010000000110010100000010
+11011010011000000110010101111000
+00100000010000000110010000101001
+00100000010000000110010000111100
+00100100001101101110010010011011
+01101000000000001000000111110010
+11000011000000000110010010001111
+11000101000101011110010010011101
+00100000010000000110010010100011
+01101000000000001000000111110011
+11000011000000100110010010100011
+01110000100000000101000000100001
+00100000010000000100110000001110
+00100000010000000100110000101110
+00100000001000000110010010100001
+01011000000000000000000000000000
+01100000000001000000001000000110
+01100000000001000000001000001110
+00011000000000000111000000000100
+00100000010000000111010010010010
+01110000100000000101000000100001
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000000010000000111110111
+11011010011000000110010111100101
+00100000010000000110010110100011
+00100000010000000110010000101001
+00100000001000000110010000111100
+01101000000000001100000111011010
+00011111111000001111111000000001
+00011111111001100111110000000011
+00100100001000010110010010110110
+01100000000000001100000111011010
+00100000011000000000000000000000
+00100000010000000110010010100011
+00100000010000000111111110100001
+00100000011000000000000000000000
+01101000000000001000000111110010
+00011111111000111111111000000000
+01111001001000001111111000000000
+00101010001011000000000000001111
+00100000011000001000000000000000
+01100000000000001000000111110010
+00100000011000000000000000000000
+01101000000100001000000010000101
+11000100000000001000000000000000
+00100000001000000110010011000110
+01101000000100001000000100101100
+10101111111011111111111111111111
+00100000011000001000000000000000
+01101000000100001000000100001000
+11000011000000001110010011000011
+00100000010000000111010000100010
+00100000001000000110010011000011
+01101000000000010100000110011001
+00100000011110100000000000000000
+01110000100000000010001110000000
+01110000100000000010001000000000
+01110000100000000010010000000000
+01101000000010010100000110011011
+00011000010010111111001000000000
+10011000000000000000110000000000
+11101000110000001000000000000000
+01100000000100001000000000100101
+11000010000000000110010011010010
+01110000100000000010001100000000
+00100000011000000000000000000000
+01000111010001101100000000110001
+00100000010000000110010011011101
+00100000001000000110001111110010
+00100000010000000110010011011101
+00100000010000000110001111101110
+00100000001000000110001111110110
+01101000000000001100001000010010
+01100000000100001000000010000110
+01101000000000001100001000010011
+01100000000100001000000010000111
+01011000000000000000000111110101
+01100000000100010000000010001010
+01011000000000000000000111111010
+01100000000100010000000010001100
+00100000001000000110001111101110
+01101000000100001000000010000110
+01111001001000000111111000000111
+01100000000100001000000010000110
+01111001001111111111111000000111
+01100000000100001000000010000110
+00100000011000000000000000000000
+01111001001000000111111000000111
+01100000000000010000000111110101
+01000111010001110100000000110001
+01110000100000001000100000000010
+01110000100000001000111000000000
+01110000100000000000011000000010
+00100000001000000110010011111100
+00011000000000000000010000000001
+01100000000000001000000111110101
+01000111010001111100000000110001
+01110000100000001000100000000001
+01100000000110010000000010001110
+01110000100000000000011000000010
+00100000010000000110010011111100
+01101000000000001000000111111010
+00100000011000000000000000000000
+01101000000000010100000011010110
+00011111111000001111111000000001
+01100000000000010100000011010110
+01101000000100001000000100101100
+11000011000000011110010011111100
+00100000011000000000000000000000
+01110000100000001000011001000000
+01110000100000001000011100000000
+01101000000100001000000010000001
+01111001001111111111111000000000
+01111001001000000111111000000001
+01100000000100001000000010000001
+01011000000000000000000000000000
+01100000000000100000000111110101
+00100000011000000000000000000000
+01011000000000000000000000000000
+01100000000100010000000010001110
+01011000000000000000000000000001
+01100000000100010000000010001000
+01011000000000000000000111110101
+01100000000100010000000010001010
+01110000000000011111010100000110
+01110000100000000000011000000010
+00100000001000000110010011111100
+01111000010101000111110000000000
+00011111111000100010010000000000
+01101000000000001100001000111001
+11000001100000000000000000000000
+01111000001101000111110000000000
+00011010010000100111111000000000
+00100000001000000110010100100010
+01101000000000001100001000111001
+11000000000000001110010100100010
+11000000000000010110010100101000
+11000000000000011110010100110000
+11000000000000100110010100110111
+11000000000000101110010100111101
+00100000011000000000000000000000
+01100000000000011100001000110010
+00011010001000100111111000000000
+01100000000000010100001000110101
+01100000000010010100001000110111
+01110000010000100011100100000010
+00100000001000000110010100000010
+00100000010000000110010100000010
+01110000010000100011100100000011
+00100000010000000110010100001011
+11011010001000000000000111110101
+01101000000000011100001000110010
+01110000100000001000100000000100
+11011000010000000000000000100000
+00100000001000000110010101010110
+00100000010000000110010100000010
+00100000010000000110010100001011
+01011000000000000000000000000101
+00100000010000000110010011110011
+11000011100000000000000000000000
+01110000010000100011100100000100
+00100000011000000000000000000000
+00100000010000000110010100000010
+01110000010000100011100100000101
+00100000010000000110010100001011
+00100000010000000110010101001010
+00100000010000000110010101010010
+00100000001000000110010101000101
+00100000010000000110010100000010
+00100000010000000110010100001011
+01011000000000000000000000000101
+00100000010000000110010011110011
+11000011100000000000000000000000
+01110000010000100011100100000000
+01101000000000010100001000000001
+00100000001000000111111110011100
+01101000000000100000101010100010
+01101000000010010100001000110101
+00011000010000001000010111111100
+11100000010000100000000000000000
+00100000011000000000000000000000
+01101000000010010100001000110101
+00011000010000100010001000000000
+00011000010000001000010111111100
+11101000010000100000000000000000
+01100000000000100000101010100010
+01101000000010010100001000110111
+01101000000000011100001000110010
+00100000011000000000000000000000
+00011000010000001000010000000100
+01100000000110010000000010001000
+11011000010000000000000000000010
+00011010001000001010001111111100
+11100010001010001000000000000000
+00011111111100010000010000000000
+11100000101010001000000000000000
+00011111111011001000010000000000
+11100000101010001000000000000000
+11100000101000001000000000000000
+00011010001000100111111000000000
+01100000000100010000000010001010
+01011000000000000000000000000000
+01100000000100010000000010001110
+01110000100000000000011000000010
+00100000001000000110010011111100
+01100000000110010000000010001110
+00011111111100010000010000000000
+01100000000010001000000111110110
+00011111111011001000010000000000
+01100000000010001000000111110111
+01100000000000001000000111111000
+01011000000000000000000000000100
+01100000000100010000000010001000
+01110000000000011111010100000011
+01011000000000000000000111110101
+01100000000100010000000010001010
+00011010001000100111111000000000
+01100000000100010000000010001100
+01101000000100001000000010000110
+00101010001011000000000000001111
+01111001001000001111111000000110
+01100000000100001000000010000110
+01110000100000000000011000000010
+01101000000100001000000100101100
+11000010100000111110010101110100
+11011000111000000000000000000011
+00100000001000000110010011111100
+01100000000110010000000010001110
+01011000000000000000000000000100
+01100000000100010000000010001000
+01110000000000011111010100000011
+01011000000000000000000111110101
+01100000000100010000000010001010
+00011010001000100111111000000000
+01100000000100010000000010001100
+01101000000100001000000010000110
+00101010001011000000000000001111
+01111001001000001111111000000110
+01100000000100001000000010000110
+01110000100000000000011000000010
+01101000000100001000000100101100
+11000010100000111110010110000101
+11011000111000000000000000000011
+00100000010000000110010011000000
+00100000010000000110010011111100
+00101111111011111111111000000010
+00100000010000000110010010111001
+01101000000000001000000111110110
+00011111111100000010010000000000
+01101000000000001000000111110111
+00011111111011010111111000000000
+10011010010000011010010000000000
+01101000000000001000000111111000
+10011010010000011111111000000000
+10011000010000001111111000000000
+01100000000000001000000111111000
+00011111111011001111111000000000
+01100000000000001000000111110111
+00011111111011001111111000000000
+01100000000000001000000111110110
+00100000011000000000000000000000
+01110000100000000001000000000001
+00100000011000000000000000000000
+01110000100000001001000100001100
+01110000100000001001001000001101
+01110000100000001001001100001101
+01110000100000001001010000001101
+01110000100000001001010100001101
+01110000100000001001011000001100
+00100000001000000110010110101001
+01110000100000001001000100000101
+01110000100000001001001000000111
+01110000100000001001001100000111
+01110000100000001001010000000111
+01110000100000001001010100000111
+01110000100000001001011000000101
+01101000000100001000000001111011
+00011111111000011111111011000000
+01100000000100001000000001111011
+01101000000100001000000010000001
+00011111111000011111111000010000
+01100000000100001000000010000001
+00100000011000000000000000000000
+01101000000100001000000100101100
+11000011000000101110010110110000
+00100000011000000000000000000000
+01100000000100010000000010011000
+00011010001000100111111000000000
+01100000000100010000000010011010
+00011010010000100111111000000000
+01100000000100010000000010011100
+00011000010000100111111000000000
+01100000000100010000000010011110
+11011000010000000000000000000001
+01111101001110100000010000000001
+01100000000100001000000010010000
+01110000100000000000011000000100
+00100000001000000110010110110000
+01111001001000000000000000101000
+01110000010000100001000100001000
+00100000011000000000000000000000
+01111001001111111000000000101000
+01110000010000100001000100100000
+00100000011000000000000000000000
+01101000000000001100001000000011
+10011010010000001111111000000000
+01100000000000001000000111110111
+00100000001000000110010111001100
+01101000000000010000000111110111
+00011111111100001111111000000000
+01100000000000001000000111110111
+01011000000000000000000000000011
+01100000000100010000000010011000
+01110000000000011111011010100000
+01110000000000011111100010100001
+00100000001000000110010111101011
+01100000000010010000101010100010
+00100000010000000110010111010110
+01101000000010010000101010100010
+00100000010000000110011000000110
+00100000001000000110010111011101
+01101000000000001100001000111010
+11000001011111111000000000000000
+11000011000000110110010111011011
+01011000000000100100100111110000
+00100000010000000010101010001111
+01101000000010001100001000111010
+00100000001000000110100000101001
+01101000000010001100001000111010
+00100000001000000110100000100101
+01000111010010000100000000110010
+11000101000101000110010111000101
+01101000000000010100001000000011
+10011010010000001111111000000000
+00011111111100001111111000000000
+01100000000000010000000111110111
+01000111010010001100000000110010
+11000101000101000110010111001001
+01011000000000000000000000000100
+01100000000100010000000010011000
+01110000000000011111011010100000
+01110000000000011111100110100001
+01011000000000000000000111110110
+01100000000100010000000010011010
+01100000000110010000000010011110
+00011010001000100111111000000000
+01100000000100010000000010011100
+01011000000000000000000000000010
+00101010001011000000000000001111
+01111001001000001111111000000000
+01100000000100001000000010010000
+01110000100000000000011000000100
+11011000111000000000000000000101
+00100000010000000110010011000000
+00100000010000000110010110110000
+00101111111011111111111000000100
+00100000010000000110010010111001
+11000101000101000110011000000001
+01101000000000010000000111110111
+00011111111100001111111000000000
+10011000010000001111111000000000
+00011111111100001111111000000000
+01100000000000010000000111110111
+00100000011000000000000000000000
+01101000000000001000000111110111
+10011000010000001111111000000000
+00011111111100001111111000000000
+01100000000000010000000111110111
+00100000011000000000000000000000
+01101000000000010100001000000011
+10011010010000001111111000000000
+01100000000000010000101010011010
+01000111010010010100000000110010
+01100000000010010000101010100010
+00011010001000100111111000000000
+01100000000000010000101010111001
+00100000010000000110011000011101
+01101000000010010000101010110010
+01101000000000010000101010111001
+00011111111000100010001000000000
+01101000000000010000101010011010
+00100000010000000110011000111101
+01101000000000010000101010110010
+01101000000010010000101010111001
+10011000010000001000010000000000
+01100000000010010000101010111001
+01101000000010010000101010011010
+10011000010000001000010000000000
+01100000000010010000101010011010
+01101000000000010000101010100010
+00100100001110100110011000001101
+00100000011000000000000000000000
+01000111010010011100000000110010
+01101000000000001100001000010001
+00011111111000001111111111111111
+01101000000010010000101010011010
+10011000010000011111111000000000
+00011111111000001111111000000001
+01100000000000011000101010110110
+01101000000000010000101010100010
+10011000010000001111111000000000
+01101000000010011000101010110110
+10011000010001100111111000000000
+00100100001000010110011000101111
+01100000000000010000101010100010
+01101000000000011000101010110110
+01101000000010010000101010011010
+10011000010001100111111000000000
+01100000000000010000101010110010
+00100000011000000000000000000000
+01101000000000010000101010100010
+01100000000000010000101010110010
+01011000000000000000000000000000
+01100000000000010000101010100010
+00100000011000000000000000000000
+00011000010000001000010000000010
+01100000000110010000000010011000
+00011010001000001010001111111110
+11101010001010011000000000000000
+00011000010000100010010000000000
+11011000010000000000000010100000
+11100010001010001000000000000000
+11100000101000001000000000000000
+00100000001000000110011001001010
+00011111111000100010010000000000
+01000111010010100100000000110010
+11000101000101000110011000110100
+00011010010000100111111000000000
+00011000010000001000010000000011
+01100000000110010000000010011000
+00011010001000001010001111111101
+11101010001010011000000000000000
+00011000010000100010010000000000
+11011000010000000000000010100000
+11100010001010001000000000000000
+00011111111100001111111000000000
+11100000101000010000000000000000
+00011010001000100111111000000000
+01100000000100010000000010011010
+01011000000000000000000000000000
+01100000000100010000000010011110
+01110000100000001001000000000001
+01110000100000000000011000000100
+00100000010000000110010110110000
+00011010010000100111111000000000
+11100010001000011000000000000000
+01000111010010101100000000110010
+01110000000000011111100100000000
+01011000000000000000000000000001
+01100000000100010000000010011000
+01110000000000011111011010100000
+01011000000000000000000111110110
+01100000000100010000000010011010
+01011000000000000000000000000000
+01100000000100010000000010011110
+01100000000100010000000010011100
+01011000000000000000000000000011
+01100000000100001000000010010000
+01110000100000000000011000000100
+00100000010000000110010110110000
+01101000000100001000000100101100
+11000100000000110000000000000000
+00100000000000000000010111011100
+01101000000000001000000111111001
+00011111111000001111111000000001
+01100000000000001000000111111001
+00011111111001100111110000101000
+00100100011000010000000000000000
+00100000001000000110011001010101
+01110000100010010111001101110000
+00100000000000000000101110111000
+00100000011000000000000000000000
+01110000100010010111001100110000
+00100000011000000000000000000000
+00011111111010011111111000000000
+01100000000100010000000001000101
+01110000100000000100101100000000
+00100000011000000000000000000000
+00100000010000000110011001101111
+00100000010000000110011010100000
+11101010001010001000000000000000
+00011010001000001010001000000001
+00011000000000000000111000000000
+10101000010011000000000000000000
+00100000001000001110011010010111
+01101000000100001000000001000110
+01111001001000000111111000000110
+01111001001000000111111000000111
+01100000000100001000000001000110
+01110000100000000100011100000010
+01110000100000000100011110000010
+01111001001111111111111000000111
+01100000000100001000000001000110
+01110000100000000100011110001010
+00100000000000000000000000001011
+01110000100000000100011111001010
+00100000000000000000000000100001
+01110000100000000100011101001010
+00100000000000000000000000101100
+01110000100000000100011111001010
+00100000000000000000000000010110
+01110000100000000100011110001010
+00100000000000000000000000100001
+01110000100000000100011110000010
+00100000000000000000000000000001
+01110000100000000100011110010010
+00100000000000000000000000001010
+01110000100000000100011110110010
+01101000000100001000000000000111
+01110000100000000100011110010010
+00100000000000000000000000000001
+01110000100000000100011110000010
+10101111111011000000000000000000
+00100000001000001110011001111000
+01101000000100010000000001000101
+00011111111000001111111000000001
+01100000000100010000000001000101
+00011000111000001000111000000001
+00101000111000000001111000001000
+00100100001000001110011001111000
+11000010000000000110011001110101
+01110000100000000100011110000011
+00100000011000000000000000000000
+01110000100000000100011110000010
+00100000000000000000000000001100
+01110000100000000100011110000000
+01110000100000000100011110000010
+00100000000000000000000010010110
+00100000011000000000000000000000
+00100000010000000110011010100000
+01110000100000000100011110100010
+00011010001000100111111000000000
+01100000000100010000000001001000
+01111001001000000000010000001011
+00101111111011000000000000001111
+01111001001000001000010000001111
+01100000000110010000000001001010
+01110000100000000000011000000001
+00100000011000000000000000000000
+01101000000100001000000100101100
+11000011000000001110011010110000
+00100000011000000000000000000000
+00100000010000000110011001101111
+00100000010000000110011010100110
+00100000010000000110011010110000
+01110000100000000100011110000011
+00100000011000000000000000000000
+01101000000100010000000100100100
+01100000000100010000000001000101
+00100000010000000110011010100110
+11011000111000000000000000000001
+00100000010000000110010011000000
+00100000010000000110011010110000
+00101111111011111111111000000000
+00100000010000000110010010111001
+01110000100000000100011110000011
+00100000011000000000000000000000
+01101000000100010000000001011110
+10011000000000000001010000000000
+00100000011000000000000000000000
+00011001010000100111111000000000
+01100000000100010000000001011110
+00100000011000000000000000000000
+00011000011000100111111000000000
+01100000000100010000000001011000
+00100000011000000000000000000000
+01101000000100010000000001011000
+00011111111000100000011000000000
+00100000011000000000000000000000
+01101000000000010100001001000011
+01100000000100010000000001010010
+00100000011000000000000000000000
+00011111001000100111111000000000
+00100000011110100000000000000000
+00011111001000001111001111111000
+00100000010000010110011011011110
+00100000011000101000000000000000
+00100000001000010110011011010011
+00011111001000001111001000001000
+00011111001000001111001111111100
+00100000010000010110011011100001
+00100000011000101000000000000000
+00100000001000010110011011011000
+00011111001000001111001000000100
+00100000001000000110011011100100
+11101000110001000000000000000000
+11100001010001000000000000000000
+00100000011000000000000000000000
+11101000110000100000000000000000
+11100001010000100000000000000000
+00100000011000000000000000000000
+00011111001000100111111000000000
+00100000011110100000000000000000
+11101000110000001000000000000000
+11100001010000001000000000000000
+11000010000000000110011011100110
+00100000011000000000000000000000
+00011111001000100111111000000000
+00100000011110100000000000000000
+00011111001000001111001111111000
+00100000010000010110011011110111
+00100000011000101000000000000000
+00100000001000010110011011101100
+00011111001000001111001000001000
+00011111001000001111001111111100
+00100000010000010110011011111010
+00100000011000101000000000000000
+00100000001000010110011011110001
+00011111001000001111001000000100
+00100000001000000110011011111101
+11101000011001000000000000000000
+11100000101001000000000000000000
+00100000011000000000000000000000
+11101000011000100000000000000000
+11100000101000100000000000000000
+00100000011000000000000000000000
+00011111001000100111111000000000
+00100000011110100000000000000000
+11101000011000001000000000000000
+11100000101000001000000000000000
+11000010000000000110011011111111
+00100000011000000000000000000000
+00011111001000100111111000000000
+00100000011110100000000000000000
+11101000011000001000000000000000
+11100001010000001000000000000000
+11000010000000000110011100000101
+00100000011000000000000000000000
+01110000000010101001100100111101
+00100000001000000111110110000110
+01000111010010110100000000110010
+01101000000000001100001000010111
+00100000011110100000000000000000
+00100000010000000110011110100011
+00100000010000101110011110101001
+00100000010000000110011100111110
+01101000000000001100001000010111
+00011111111000100010011000000000
+01101000000010010100001000010101
+01100000000010010000000110001100
+00011010011000100111111000000000
+00100000001110100110011100001001
+00011010011000001010011111111111
+00011000010000100010001000000000
+11101010001000001000000000000000
+01101000000010001000000110000100
+10011000010001100111110000000000
+00100000010000101110011100100101
+00100000001000010110011100100001
+11101010001000001000000000000000
+00011111111000001111111000000001
+11100010001000001000000000000000
+01101000000010010000000110001100
+00011000010000001000010000100010
+01100000000010010000000110001100
+00100000001000000110011100010101
+01011000000000000000000000000000
+11100010001000001000000000000000
+01101000000000001000000110000101
+11100000101000001000000000000000
+11000000100110011110011100110011
+11011010010000000100000110111110
+11101000110000110000000000000000
+11100000101001000000000000000000
+01011000000000000000000000000000
+11100000101001000000000000000000
+00011010010000100000110000000000
+00100000010000000111111010111111
+00011000000000000111110000000001
+00100000011000000000000000000000
+11000000000110110110011100110111
+11000000000110111110011100111011
+11011010010000000100010000011001
+00100000001000000110011100101011
+11011000110000000100010011010101
+00100000010000000111111010111111
+11011000110000000100010000011001
+00100000001000000110011100110000
+11011000110000000100010011001101
+00100000010000000111111010111111
+00100000001000000110011100111001
+00100000010000000111111111101001
+01101000000000001100001000010111
+00100000011110100000000000000000
+01101000000000010100011010000010
+11000010100000000110011101010100
+01000111010010111100000000110010
+01101000000000001100010010001110
+11000000000000000110011101001101
+01101000000000001000010001010100
+00101111111000011000000011000000
+00100000001000001110011101001101
+00101111111000011000000001000000
+00100000001000001110011101010010
+00101111111000011000000000000000
+00100000001000001110011101010000
+01110000000000011000010100110101
+01101000000000110000010001001111
+00100000001000000110011101010111
+01110000000000011000010100110111
+00100000001000000110011101010111
+01110000000000011000010100110110
+00100000001000000110011101010111
+01000111010011000100000000110011
+01110000000000011000010100110011
+01101000000000110000000001000000
+01100000000000110000000110000110
+01101000000000010100001000010101
+11101111111010001000000000000000
+00011111111000001111111000000001
+01100000000000010000000110001100
+01100000000010001000000110000100
+01101000000000001100001000010111
+00011111111000100010011000000000
+01101000000000010000000110001100
+00011111111000100010001000000000
+00100000010000000110011101101111
+00100000011101000000000000000000
+01101000000010010000000110001100
+00011000010000001000010000100010
+01100000000010010000000110001100
+00011000010000001000010111111111
+11101000010000001000000000000000
+01100000000000001000000110000100
+00011010011000001010011111111111
+00100100001000101110011101011111
+01101000000000001100001000010111
+00011111111000001111111111111111
+01100000000000001000000110000100
+00100000011000000000000000000000
+01101000000000001000000110000101
+11000000100110011110011101110110
+11011010010000000000000110000101
+11011111001000000000000000000111
+00100000010000000111111110001000
+00100000001000101111111111100111
+00100000011000000000000000000000
+11000000000110110110011101111001
+11000000000110111110011110010100
+00100000001000000110011101110001
+11101010001010001000000000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+11011000101000000000101011000010
+11011111001000000000000000010000
+00100000010000000111111011010100
+01101000000000011000010001010010
+01100000000000011000101011000010
+00100000010000000110011110001011
+01101000000000010000101011011111
+00011111111100001111111000000000
+00011111111011010000010000000000
+11101000110000001000000000000000
+10011000010000001111111000000000
+01101000000010011000010001001111
+10011000010001100111110000000000
+00100000001000101111111111100111
+00100000011000000000000000000000
+11011000110000000000101011000010
+00100000010000000111010010000110
+11101010001000001000000000000000
+00100000010000000111010010000111
+00011000000000000110110000111000
+00011000000000000110110000000000
+00100000010000000111010000011101
+11011000101000000000101011010010
+00100000001000000111010010010111
+11101010001010001000000000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+00011000110000100010001000000000
+00011000110000001010011000001000
+11011010010000000100010011001101
+11011111001000000000000000001000
+00100000010000000111111110001000
+00100000001000101111111111100111
+00011010011000100010001000000000
+11011010010000000100010011010101
+11011111001000000000000000001000
+00100000010000000111111110001000
+00100000001000101111111111100111
+00100000011000000000000000000000
+01101000000000010100001000010101
+11101111111010001000000000000000
+00011111111000001111111000100010
+11101111111000001000000000000000
+10011000010001100111110000000000
+00100000011000000000000000000000
+01101000000000001100001000010111
+00011111111000100111001000000000
+01101000000010010100001000010101
+01011000000000000000000000000000
+11100000010000001000000000000000
+00011000010000001000010000100010
+00011111111000001111111000000001
+11000010000000000110011110101101
+00100000011000000000000000000000
+01000111010011001100000000110011
+00100000010000000110011100111110
+01101000000000001000000000110000
+01111001001101000111111000000110
+01100000000000001000000000110000
+00100100001101000110011110111100
+00011010001000001000110000001010
+11011000101000000100000110111110
+00100000010000000111111010111111
+00100000001000000110011111010111
+01110000010000011011110100000000
+00100000011000000000000000000000
+01101000000001001100010011001011
+00100000001110100110011111001010
+00100000010000000110011100111110
+00100100001101000110011111001010
+01101000000000010000000110001100
+00011111111000001000110000000001
+11011000101000000100010011010101
+00100000010000000111111010111111
+11011000101000000100010000011001
+00100000010000000111111010111111
+01110000010001000010100100000001
+00100000011000000000000000000000
+01110000010001000010100100000000
+00100000011000000000000000000000
+01101000000000110000010001001111
+01100000000000110000000110000110
+01110000000000011000010100110100
+00100000001000000110011111010011
+01101000000000110000000001000000
+01100000000000110000000110000110
+01110000000000011000010100110011
+01101000000000001100000010010010
+11000000000001010110011100001011
+11000010100000110100001011011010
+00100000011000000000000000000000
+01101000000001000100000110111110
+01101000000011000100000111000110
+10011000010000011111111000000000
+00100000011110100000000000000000
+01110000010000011011110100000001
+00100000011000000000000000000000
+01000111010011010100000000110011
+01111001001000000000010000000111
+00100000010000000110100000011101
+01111101001000001000010000000111
+01000111010011011100000000110011
+00011000010001100111110011111111
+00100000011000101000000000000000
+00101000010011000000000000000111
+00011000010000010000111000011111
+01101000000000100000000010100001
+11111001001000001111111000000000
+01100000000000100000000010100001
+01101000000000100000000010100101
+11111101001000001111111000000000
+01100000000000100000000010100101
+00100000011000000000000000000000
+01000111010011100100000000110011
+00011000010001100111110011111111
+00100000011000101000000000000000
+00101000010011000000000000000111
+00011000010000010000111000011111
+01101000000000100000000010100001
+11111001001111111111111000000000
+01100000000000100000000010100001
+01101000000000100000000010100101
+11111001001111111111111000000000
+01100000000000100000000010100101
+00100000011000000000000000000000
+00100000010000000110011111101101
+00100000001000000110011111111110
+00011000010001100111110011111111
+00100000011000101000000000000000
+00100100010101011110011111100001
+11011000101000001000000001111100
+00100000010000000110100000110000
+01111001010000000000010000000111
+11011000101000001000000001111000
+00100000010000000110100000110000
+01111001001111111000010000000111
+11011000101000001000000001110000
+00100000001000000110100000110000
+11011000101000001000000001111100
+00100000010000000110100000110000
+01111001001111111000010000000111
+11011000101000001000000001111000
+00100000010000000110100000110000
+01111001001111111000010000000111
+11011000101000001000000001110000
+00100000001000000110100000110000
+00011000010001100111110011111111
+00100000011000101000000000000000
+01111001010000000000010000000111
+00100000010000000110100000101111
+01111001001000000000010000000111
+11011000101000001000000001110000
+00100000001000000110100000110000
+00011000010000010000111000000111
+00011000010010010111111000000000
+00011111111000010111111000000011
+10011000101000001000101000000000
+11101000101000001000000000000000
+00100000011000000000000000000000
+11011000101000001000000001110100
+00100000001000000110100000011110
+11011000101000001000000100011100
+00100000010000000110100000010101
+00101000010011111111111000000111
+00100000001000001110100000100011
+10101111111011000000000000000000
+00100000011000000000000000000000
+10101111111011111111111111111111
+00100000011000000000000000000000
+00011000010001100111110011111111
+00100000011000101000000000000000
+00101111110011111111111000000111
+00100000001000000110100000101100
+00011000010001100111110011111111
+00100000011000101000000000000000
+00101111110011000000000000000111
+01011000000000000000000000000000
+01111101001000001111111000000111
+10011000010000101000010000000000
+11011000101000001000000001110100
+00100000010000000110100000010101
+00101000010011111111111000000111
+11111001001000001111111000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+11011010001111111111111111111111
+01101000000100001000000010000001
+00101111111000000000011000000010
+00100000010000001110100001111000
+00101111111000000000011000000001
+00100000010000001110100001111010
+00101111111000000000011000000011
+00100000010000001110100001111010
+00101111111011111111111000000010
+00100000010000001110100001110100
+00101111111011111111111000000011
+00100000010000001110100001110110
+00101111111011111111111000000100
+00100000010000001110100001111100
+00101111111011111111111000000110
+01111101001000001010001000000100
+00101111111011111111111000000111
+01111101001000001010001000000101
+01101000000100001000000010000010
+00101111111011111111111000000000
+01111101001000001010001000011011
+00101111111011111111111000000001
+01111101001000001010001000011100
+00101111111011111111111000000010
+01111101001000001010001000000011
+00101111111011111111111000000011
+01111101001000001010001000001000
+00101111111011111111111000000100
+01111101001000001010001000010100
+00101111111011111111111000000101
+01111101001000001010001000010101
+00101111111011111111111000000110
+01111101001000001010001000010110
+00101111111011111111111000000111
+01111101001000001010001000010111
+01101000000100001000000010000000
+00101111111011111111111000000000
+01111101001000001010001000000101
+00101111111011111111111000000001
+01111101001000001010001000000110
+00101111111011111111111000000010
+01111101001000001010001000000111
+00101111111011111111111000000011
+01111101001000001010001000010010
+00101111111011111111111000000100
+01111101001000001010001000010011
+00101111111011111111111000000101
+01111101001000001010001000010100
+00101111111011111111111000000110
+01111101001000001010001000010101
+00101111111011111111111000000111
+01111101001000001010001000010110
+01101000000100001000000001100010
+00101111111011111111111000000100
+00100000010000001110100001111110
+01000111010011101100000000110011
+01101000000100100000000001111000
+01101000000110100000000001111100
+10011000010000011111111000000000
+00011111111001000111111000000000
+10011010001000010111111000000000
+01100000000100100000000001110000
+00100000011000000000000000000000
+11011000111000000000000000000110
+00100000001000000110100010000100
+11011000111000000000000000001001
+00100000001000000110100010000010
+11011000111000000000000000010111
+00100000001000000110100010000010
+11011000111000000000000000011001
+00100000001000000110100010000100
+11011000111000000000000000011110
+00100000001000000110100010000100
+11011000111000000000000000000010
+00100000001000000110100010000100
+11011111001000000000000000000001
+00100000001000000110100010000101
+11011111001000000000000000000100
+00100000001000000110100010000101
+11011111001000000000000000000010
+11111001001111111010001000000000
+00011000111000001000111000000001
+11000010000000000110100010000101
+00100000011000000000000000000000
+00100000010000000110100010010101
+11011000010000000000000000000110
+00100000001000000110100000001110
+00100000010000000110100010001001
+11011000010000000000000000000110
+00100000001000000110100000100101
+00100000010000000110100010010101
+01101000000100001000000001111000
+01111001001000000111111000000111
+01100000000100001000000001111000
+11011000010000000000000000000111
+00100000001000000110011111111011
+01101000000100001000000010000001
+00011111111000010111111011111011
+01100000000100001000000010000001
+00100000011000000000000000000000
+01101000000100001000000010000001
+00101111111011111111111000000010
+00100000011000000000000000000000
+00100000010000000110011001101010
+01011000000000000000011111100000
+11011010001000000100000101010000
+11011000010000000000000000000010
+00100000010000000110011010110011
+00100000001000000110011001101101
+00100000010000000110011001101010
+01011000000000000000011111100010
+11011010001000000100001000011101
+11011000010000000000000000001110
+00100000010000000110011010110011
+00100000001000000110011001101101
+01000111010011110100000000110011
+00100000010000000110100010100010
+01101000000000001100001000101101
+11000000000000000110100010101111
+11000000000000001110100011000011
+11000000000000010110100011010111
+00100000011000000000000000000000
+01101000000010010100001000101001
+01011000000000001010101001010101
+10011000010001100111110000000000
+00100000001000101110100010111000
+01011000000000000100110111111010
+01100000000000010100001000100111
+01011000000000000100100010010100
+01100000000000010100001000100001
+00100000001000000110100011000000
+01101000000000010100001000100111
+00100100001110100110100010111100
+01011000000000000100110111111010
+01100000000000010100001000100111
+01101000000000010100001000100001
+00100100001110100110100011000000
+01011000000000000100100010010100
+01100000000000010100001000100001
+01011000000000000000000001100100
+01100000000000010100001000101011
+00100000011000000000000000000000
+01101000000010010100001000101001
+01011000000000001010101001010101
+10011000010001100111110000000000
+00100000001000101110100011001100
+01011000000000000101100100110010
+01100000000000010100001000100101
+01011000000000000100001100100011
+01100000000000010100001000011111
+00100000001000000110100011010100
+01101000000000010100001000100101
+00100100001110100110100011010000
+01011000000000000101100100110010
+01100000000000010100001000100101
+01101000000000010100001000011111
+00100100001110100110100011010100
+01011000000000000100001100100011
+01100000000000010100001000011111
+01011000000000000000000110010000
+01100000000000010100001000101011
+00100000011000000000000000000000
+01101000000010010100001000101001
+01011000000000001010101001010101
+10011000010001100111110000000000
+00100000001000101110100011100000
+01011000000000000110100101000110
+01100000000000010100001000100011
+01011000000000000101001101110111
+01100000000000010100001000011101
+00100000001000000110100011101000
+01101000000000010100001000100011
+00100100001110100110100011100100
+01011000000000000110100101000110
+01100000000000010100001000100011
+01101000000000010100001000011101
+00100100001110100110100011101000
+01011000000000000101001101110111
+01100000000000010100001000011101
+01011000000000000000000000110010
+01100000000000010100001000101011
+00100000011000000000000000000000
+01101000000000001100001000101101
+11000000000000000110100011110000
+11000000000000001110100011110010
+11000000000000010110100011110100
+00100000011000000000000000000000
+01110000100010010111000110111111
+00100000001000000110100011111000
+01110000100010010111000110101111
+00100000001000000110100011111000
+01110000100010010111000110001111
+01101000000000001100001000101110
+01100000000100001000100101110011
+00100000001000000110100011111000
+01000111010011111100000000110011
+01101000000100001000000001010011
+01111001001000000111111000000111
+01100000000100001000000001010011
+01101000000100001000100101110011
+00011111111000011111111000110000
+01100000000100001000100101110011
+01110000100010010000011001111100
+01110000100010010111001010101010
+00100000000000000001001110001000
+01101000000110010000000101010000
+01101000000100001000000001010011
+01111001001111111111111000000111
+01100000000100001000000001010011
+01100000000010010100001000101111
+00100000011000000000000000000000
+01000111010100000100000000110100
+01101000000000001100001000101101
+11000000000000000110100100001110
+11000000000000001110100100010010
+11000000000000010110100100010110
+00100000011000000000000000000000
+01101000000000010100001000100111
+01101000000010010100001000100001
+11011010011000000000000011001000
+00100000001000000110100100011010
+01101000000000010100001000100101
+01101000000010010100001000011111
+11011010011000000000000001100100
+00100000001000000110100100011010
+01101000000000010100001000100011
+01101000000010010100001000011101
+11011010011000000000000000110010
+00100000001000000110100100011010
+10011000010001100010001000000000
+01101000000000010100001000101111
+10011000010001100111111000000000
+00100100001000010110100100100111
+01101000000010010100001000101011
+10011000010011111010010000000000
+00011010011000100111111000000000
+10011010001011111111111000000000
+10011010010000001111111000000000
+10011010001001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+00100000011000000000000000000000
+00011000010000100111111000000000
+01101000000010010100001000101111
+10011000010001100111111000000000
+01101000000010010100001000101011
+10011000010011111010010000000000
+00011010011000100111111000000000
+10011010001011111111111000000000
+10011010010001100111111000000000
+00100000001000000110100100100011
+11101010001001000000000000000000
+01100000000001000000101010011010
+01101000000000010000101010011010
+01101000000010010000101010011100
+10011000010001100010001000000000
+01101000000000010000101010100000
+10011000010001100010010000000000
+01101000000010010000101010011110
+10011000010001100111110000000000
+00100100010000010110100101000000
+00011010010011111111111001100100
+10011010001001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+00100000010110100110100101000100
+00100000011000000000000000000000
+01101000000000001100001000110001
+01111001001000000111111000000000
+01100000000000001100001000110001
+00100000011000000000000000000000
+01101000000010001100001000110001
+01111001001000000000010000000001
+01100000000010001100001000110001
+00100000011000000000000000000000
+01101000000000010100001000111101
+11101111111000001000000000000000
+00100000011110100000000000000000
+00011111111000100111001000000000
+01101000000000010100001000111101
+00011111111000001111111000000011
+00011111111000100010001000000000
+11101010001010001000000000000000
+00100000010000000110011111111011
+00011010001000001010001000000001
+11000010000000000110100101001111
+00100000011000000000000000000000
+01101000000000010100001000111101
+00011111111000001111111000000011
+00011111111000100010001000000000
+00011000000000000010010000000000
+01110000000010110001001000000000
+11101010001010001000000000000000
+00100000010000000110100000011101
+01000111010100001100000000110100
+01101000000000010000101100010010
+00011010010000100000111000000000
+11111001001000001111111000000000
+01100000000000010000101100010010
+00011010001000001010001000000001
+00011010010000001010010000000001
+01101000000000010100001000111101
+11101111111000001000000000000000
+10011010010000101111110000000000
+00100100001000101110100101011001
+01101000000000010000101100010010
+01101000000010010000101100010100
+10011000010000101111110000000000
+00100000011000101000000000000000
+01111000001101000111110000000000
+00100000011000000000000000000000
+01101000000000010100001000111101
+11101111111000001000000000000000
+00100000011110100000000000000000
+00011111111000100111001000000000
+01101000000000010100001000111101
+00011111111000001111111000000011
+00011111111000100010001000000000
+11101010001010001000000000000000
+00100000010000000110011111011101
+00011010001000001010001000000001
+11000010000000000110100101110011
+00100000011000000000000000000000
+11011000111000000000000000001001
+00100000010000000111111100010110
+00100100011110100000000000000000
+01011000000000000000000000100000
+11011000111000000000000000001001
+00100000010000000111111100001000
+01111000010101000111110000000000
+00100000010000000110100101101100
+01000111010100010100000000110100
+01101000000000010100001000111101
+11101111111000001000000000000000
+00100000011110100000000000000000
+00100000010000000110100101010100
+00100100001101000111110100000010
+00100000010000000111110100000000
+01111000010101000111110000000000
+01101000000000010000101100010010
+01100000000000010000101100011001
+01110000000010110001101100000000
+00011000000000000000111000000000
+01101000000000010000101100010100
+00011111111000110000010000000000
+01100000000010010000101100010100
+00011111111000010111111000000001
+01101000000010010000101100011001
+00011000010000010010001000000001
+00011000010000110000010000000000
+01100000000010010000101100011001
+10011010001000101111110000000000
+00100100010000101110100110100001
+01101000000000010100001000111101
+11101111111000001000000000000000
+01101000000010001000101100011011
+00011000010000001000010000000001
+01100000000010001000101100011011
+00011000010000100000111000000000
+10011000111000101111110000000000
+00100100001000101110100110001100
+01101000000000010000101100010010
+01100000000000010000101100010100
+00100000011000000000000000000000
+01000111010100011100000000110100
+01101000000000010100001000111101
+00011111111000001111111000000001
+11101111111000010000000000000000
+00100000001000000111111110011100
+01101000000100001000000001000010
+10011010001000011111111000000000
+01100000000100001000000001000010
+01101000000100010000000001010000
+01111001001111111111111000001101
+01100000000100010000000001010000
+00100000000000000000000001100100
+00100000011000000000000000000000
+01101000000010011000101010011100
+01011000101101110001101100000000
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111000010000000000
+01101000000000001000101010011111
+10011000010011111111111000000000
+00011111111001101111110001100100
+00100000010000000111111110000110
+00011000000001111010001000000000
+00011000010000100111111000000000
+10011010001001100010010000000000
+01101000000000001000101010011011
+00100000010000000110100110111110
+01101000000000001000101010011010
+00100000001000000110100111010101
+11000000000000000110100111000100
+11000000000000001110100111000110
+11000000000000010110100111001000
+11000000000000011110100111001010
+11000000000000100110100111001100
+11000000000000101110100111001110
+11011000101000001000000010100000
+00100000001000000110100111010000
+11011000101000001000000010100100
+00100000001000000110100111010000
+11011000101000001000000010101000
+00100000001000000110100111010000
+11011000101000001000000001100100
+00100000001000000110100111010000
+11011000101000001000000001101000
+00100000001000000110100111010000
+11011000101000001000000001101100
+00100000001000000110100111010000
+00011010001000100111111000000000
+11100000101000010000000000000000
+00011010010000100111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+01111000001101000111110000000000
+00100000001000000110100111011000
+01111000010101000111110000000000
+11000000000000100110100111100011
+11000000000000101110100111100101
+11000000000011011110100111100111
+11000000000011100110100111101001
+11000000000000011110100111101011
+11000000000001000110100111101101
+11000000000010100110100111101111
+11000000000010101110100111110001
+11000000000010110110100111110011
+11000000000010111110100111110101
+00100000011000000000000000000000
+11011000111000000000000000000110
+00100000001000000110100111111111
+11011000111000000000000000000111
+00100000001000000110100111111111
+11011000111000000000000000001000
+00100000001000000110100111111111
+11011000111000000000000000001001
+00100000001000000110100111111111
+11011000111000000000000000001010
+00100000001000000110100111111111
+11011000111000000000000000001011
+00100000001000000110100111111111
+11011000111000000000000000001100
+00100000001000000110101000000001
+11011000111000000000000000001101
+00100000001000000110101000000001
+11011000111000000000000000001110
+00100000001000000110101000000001
+11011000111000000000000000001111
+00100000001000000110101000000001
+01101000000100010000000010000001
+11111001001101000111111000000000
+01100000000100010000000010000001
+00011010001000100000111000000000
+01101000000100001000000010000101
+11111001001101000111111000000000
+01100000000100001000000010000101
+00100000011000000000000000000000
+00011000111000001010001111111100
+00100000001000000110100111110111
+00011000111000001010001111110110
+00100000001000000110100111110111
+00100000011101011000000000000000
+01110000010001010110011100000000
+01110000000001001110110100000011
+01110000000001001110111000000011
+01110000000001001111001000010001
+01110000000001001111001100010011
+01011000000000000000000000000000
+01100000000000011000010011101111
+01100000000000001100001001010100
+01110000010001101000000100000000
+01000111010100100100000000110100
+01011000000000000000000000000000
+01100000000000001100001001010100
+01100000000000001100010101100100
+01100000000000001100010101011101
+01101000000000001100010101101011
+11000000000000001110101000010110
+01110000010001010110100101010000
+00100000011000000000000000000000
+01110000010001010110100100000000
+00100000011000000000000000000000
+00011000010000011000010000000010
+00100000011000000000000000000000
+00011000010000100111111000000000
+00011111111011011111111000000000
+01100000000000001100010101100010
+00011000000000000111111000111111
+00011111111011011111111000000000
+01100000000000001100010101100001
+00011000000000000111111000000001
+00011111111011011111111000000000
+01100000000000001100010101100000
+00100000010000000110101001010000
+00011000010000100111111000000000
+00100000011000000000000000000000
+00011111111011011111111000000000
+01100000000000001100010101100010
+00011000000000000111111001110011
+00011111111011011111111000000000
+01100000000000001100010101100001
+00011000000000000111111000000001
+00011111111011011111111000000000
+01100000000000001100010101100000
+00100000001000000110101001010000
+01101000000000001100010101100011
+00100000001110100110101000110011
+01011000000000000000000001110000
+00100000011000000000000000000000
+01011000000000000000000010101010
+00100000011000000000000000000000
+00011111111011011111111000000000
+01100000000000001100010101100010
+00011000000000000111111011101111
+00100000010000000110101001000100
+01101000000010010000010011110111
+00011000010000100000101000000000
+11100000101000001000000000000000
+00011000101000100000010000000000
+01100000000010010000010011110111
+00011000000000000111111011111111
+00100000010000000110101001000100
+01101000000010010000010011110111
+00011000010000100000101000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+00011111111011011111111000000000
+01100000000000001100010101100001
+01101000000000010100010101100001
+00011111111011010111111000000000
+01100000000000011000010011110100
+11011010001000000000000100000111
+11011010010000000000000000001111
+00100000010000000110101001011101
+00011111111000101111111011010111
+00011111111001000111111000000000
+00011111111011011111111000000000
+00100000011000000000000000000000
+01101000000000011100010101100000
+01100000000000011000010011110100
+11011010001000000000000100000111
+11011010010000000000000000001111
+00100000010000000110101001011101
+00011111111011010111111000000000
+11011010010000000000000000000111
+00100000010000000110101001011101
+00011111111000101111111000101011
+00011111111001000111111000000000
+00011111111011011111111000000000
+00011111111000100000010000000000
+00100000011000000000000000000000
+11011010011000000000000000000000
+00011010010000100111001000000000
+00100000010000000111111001110001
+00011111111000100000010000000000
+00011000010000100111111000000000
+00011010011000111010011000000000
+11000011000001000110101001100110
+10011010001000101000010000000000
+00011010011000001010011000000001
+00011000010000111000010000000000
+01101000000000011000010011110100
+00011010010000001010010111111111
+00101010010000011111111011111111
+00100000001000001110101001110000
+00011010010000100111001000000000
+00100000010000000111111001110001
+00101111111011111111111000000000
+01111001001000001000010000000000
+00100000001000000110101001100001
+00011000010000110111111000000000
+00100000011000000000000000000000
+01101000000010001100010101011101
+00011000010010111000010000000000
+01111001001000000000010000000000
+01101000000000001100010101100011
+00100100010110100110101000011000
+01100000000010001000010100001101
+00100000011000000000000000000000
+00011000010000111000010000000000
+01101000000000001100010101100011
+01111001001110100000010000000000
+00100000011000000000000000000000
+01101000000010001000010011111100
+01110000000001001111111011010111
+00100000010000000110101110110110
+01101000000000001100001001010001
+01111001001000000111111000000110
+01111001001000000111111000000111
+01100000000000001100001001010001
+01110000010001010110001100000000
+00100000001000000110101110010111
+01101000000000001100001001010001
+01111001001000000111111000000111
+01100000000000001100001001010001
+00100000001000000110101110010111
+01000111010100101100000000110100
+01101000000000001100011010000001
+11000000000000000110101010001110
+00100000001000000110101101001100
+01101000000000010000001001100100
+00011111111000100000110000000000
+00100000010000000110101010111000
+01101000000000001000010011111100
+11000000000000000110101010010100
+00100000001000000110101100011000
+01000111010100110100000000110100
+01101000000000001000010011111101
+11000000000111111110101001111101
+11000000001110011110101010000110
+11000000011101111110101010011011
+11000000001010011110101101000100
+00100000011000000000000000000000
+01101000000000010000010100000001
+00011111111000100000110000000000
+00100000010000000110101011000011
+01101000000000001000010100000011
+11000000001000001110101010100101
+11000000001000000110101010101101
+11000000001110001110101011100110
+11000000001110000110101011110010
+11000000001001001110101011111101
+00100000001000000110101110010111
+00100000010000000110101010101111
+00100000001000000110101010100111
+01101000000000001100001001010100
+01111001001000000111111000000000
+01111001001000000111111000000001
+01100000000000001100001001010100
+00100000010000000110101111100000
+00100000001000000110101110010111
+00100000010000000110101010101111
+00100000001000000110101110010111
+00100000010000000110101011001011
+00100000001000000110101011010111
+00100000010000000110101011001011
+11101000110000001000000000000000
+00011111111010010111111000000000
+01100000000000001100010101101010
+11101000110000001000000000000000
+01100000000000001000010100001000
+00100000011000000000000000000000
+11101000110000001000000000000000
+01100000000000001000010011111011
+00011111111010010111111000000000
+01100000000000001000010011111100
+11101000110000001000000000000000
+01100000000000001000010011111101
+00100000010000000110101011001110
+01100000000010010000010011111111
+00011000110000100111111000000000
+01100000000000010000010100000001
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000110111111000000000
+01100000000000001000010100000011
+00100000010000000110101011001110
+01100000000010010000010100000100
+00011000110000100111111000000000
+01100000000000010000010100000110
+00100000011000000000000000000000
+01101000000000010000010100000110
+00011111111000100000110000000000
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000100000010000000000
+00011000010000110000010000000000
+11000011100000000000000000000000
+11101000110000001000000000000000
+00011111111010011111111000000000
+00011111111100100111111000000000
+10011000010000001000010000000000
+00100000011000000000000000000000
+11101000110000001000000000000000
+01100000000000001100010101011101
+11101000110000001000000000000000
+01100000000000001000010100001001
+11101000110000001000000000000000
+01100000000000001000010100001010
+11101000110000001000000000000000
+01100000000000001000010100001011
+11101000110000010000000000000000
+01100000000000010100010101011110
+11101000110000001000000000000000
+01100000000000001000010100001100
+11101000110000001000000000000000
+01100000000000001100010101101000
+00100000011000000000000000000000
+00100000010000000110101010110001
+00100000001000000110101011101000
+01101000000000001100001001010100
+01111001001000000111111000000101
+01111001001000000111111000000110
+01100000000000001100001001010100
+01101000000010001100010101011101
+00011000010010111000010000000000
+00011000010000011000010000000011
+00100000010000000110110000010001
+01110000010001010110011100000011
+00100000001000000110101110010111
+01110000000010101001100100001000
+00100000010000000111110110000110
+00100000010000000110101010110001
+01101000000000001100010101101010
+00011111111001100111110000000001
+00100000001000101110101011111001
+00100000001000000010101010001100
+01101000000000001100001001010100
+01111001001000000111111000000111
+01100000000000001100001001010100
+00100000001000000110101110010111
+00100000010000000110101011001011
+11101000110000001000000000000000
+01100000000000001000101011000010
+00100000010000000101001011010010
+00100000010000000101001011100000
+01011000000000000000000000001110
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01101000000000001100010101100011
+00011111111000111111111000000000
+01111001001000000111111000000000
+11100000101000001000000000000000
+01000111010100111100000000110100
+01011000000000000001010111101111
+11100000101000010000000000000000
+01011000000000000001000110010001
+11100000101000010000000000000000
+01101000000000001000101011000010
+11100000101000001000000000000000
+01011000000000000000000000000111
+11100000101000101000000000000000
+01011000000000000000000000000001
+11100000101000010000000000000000
+00100000010000000110101000101111
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000001000000110101100011001
+01000111010101000100000000110101
+01101000000000001000010011111101
+11000000001110011110101100100001
+11000000000111111110101100100101
+11000000011101111110101100111111
+11000000011111111110101100110111
+11000000001010011110101101000110
+00100000011000000000000000000000
+01101000000000001100001001010100
+01111001001000000111111000000011
+01100000000000001100001001010100
+00100000001000000110101110010111
+01101000000000001100001001010100
+01111001001000000111111000000011
+01111001001000000111111000000010
+01100000000000001100001001010100
+01101000000000001000010011111011
+00100000010000000110101000100110
+01100000000000001000010011111110
+00100000010000000110101110110110
+01101000000000001000010011111011
+00011111111010110111111000000000
+01100000000000001100010101011101
+00011111111010111111111000000000
+01111001001111111111111000000001
+01111001001000000111111000000000
+11011000010000000100010101100101
+01100000000010010000010011110111
+00100000010000000110101000110101
+00100000001000000110101110010111
+01101000000000010000010100000001
+00011111111000100000110000000000
+00011111111000001111111000000001
+01100000000000010000010100000001
+11101000110000001000000000000000
+01101000000010001100010101101000
+10011000010000001111111000000000
+01100000000000001100010101101000
+00100000010000000110110001000010
+00100000010000000110101001110010
+00100000010000000110110000101000
+00100000010000000110110001001011
+00100000001000000110101110010111
+01110000000010101001100100001001
+00100000010000000111110110000110
+00100000010000000110101000001101
+01101000000000001000010011111011
+00100000010000000110101000100110
+01100000000000001000010011111110
+00100000010000000110101110110110
+00100000001000000110101110010111
+01101000000000010000001001100100
+00011111111000100000110000000000
+00100000010000000110101010111000
+01101000000000001000010011111100
+11000000000000000110101101010010
+00100000001000000110101110000110
+01000111010101001100000000110101
+01101000000000001000010011111101
+11000000000111111110101001111101
+11000000001110011110101010000110
+11000000011101111110101101011000
+00100000001000000110101110010111
+01101000000000010000010100000001
+00011111111000100000110000000000
+00100000010000000110101011000011
+01101000000000001000010100000011
+11000000001000001110101101100001
+11000000001000000110101101100001
+11000000001110001110101101101100
+11000000001110000110101101111100
+00100000001000000110101110010111
+00100000010000000110101010101111
+01101000000000001100010101011101
+00011111111000110111111000000000
+01101000000010001100010101100100
+10011000010001100111110000000000
+00100000001000101110101101101000
+00100000001000000010101010001100
+01101000000000001100001001010100
+01111001001000000111111000000001
+01100000000000001100001001010100
+00100000001000000110101110010111
+00100000010000000110101010110001
+01101000000000001100010101101010
+01101000000010001100010101100100
+10011000010001100111110000000000
+00100000001000101110101101110011
+00100000001000000010101010001100
+00100000001000000110101110010111
+01101000000000001100001001010100
+01111001001000000111111000000101
+01111001001000000111111000000110
+01100000000000001100001001010100
+01101000000010001100010101011101
+00011000010010111000010000000000
+00011000010000011000010000000011
+00100000010000000110110000010001
+00100000001000000110101110010111
+00100000010000000110101010110001
+01101000000000001100010101101010
+01101000000010001100010101100100
+10011000010001100111110000000000
+00100000001000101110101110000010
+00100000001000000010101010001100
+01101000000000001100001001010100
+01111001001000000111111000000111
+01100000000000001100001001010100
+00100000001000000110101110010111
+01101000000000001000010011111100
+01101000000010001100010101100100
+10011000010001100111110000000000
+00100000001000101110101110001100
+00100000001000000010101010001100
+00100000001000000110101110010111
+01101000000000001000010011111101
+11000000001110011110101110010001
+11000000011101111110101100111111
+11000000011111111110101100110111
+11000000001010011110101110010110
+01101000000000001100001001010100
+01111001001000000111111000000011
+01100000000000001100001001010100
+00100000001000000110101110010111
+00100000001000000110101110010101
+00100000001000000110101101000110
+00100000011000000000000000000000
+01101000000000001100010101100111
+00100000011110100000000000000000
+11000000000000011110101110011100
+00100000001000000010101010001100
+01110000010001010110011100000000
+00100000010000000101001011010010
+11011000010000000000000000000001
+01101000000010001100010101011101
+00011000010010111000010000000000
+00011000010000011000010000000011
+11011010001000000000000010101010
+00100000010000000110101111111100
+00100000010000000101001011100000
+00011000101000100000110000000000
+11101000110000010000000000000000
+00100000001110100010101010001100
+00100000011000000000000000000000
+00100000010000000101001011100000
+01011000000000000000000000000100
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01101000000000001000010011111011
+11100000101000001000000000000000
+01000111010101010100000000110101
+01011000000000000000000100111111
+11100000101000010000000000000000
+01101000000000001000010011111110
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000010000000101001011010010
+00100000010000000101001011100000
+01011000000000000000000000000100
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01101000000000001000010011111011
+11100000101000001000000000000000
+01000111010101011100000000110101
+01011000000000000000000101110011
+11100000101000010000000000000000
+01101000000000001000010011111110
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000010000000101001011100000
+01011000000000000000000000001110
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01101000000000001100010101100011
+00011111111000111111111000000000
+01111001001000000111111000000000
+11100000101000001000000000000000
+01000111010101100100000000110101
+01011000000000000001010111101111
+11100000101000010000000000000000
+01011000000000000001000110000011
+11100000101000010000000000000000
+00011000010000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000011110000
+11100000101000011000000000000000
+01011000000000000000000001111111
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000001000000000000000
+01011000000000000000000000000001
+11100000101000001000000000000000
+00100000010000000110101000101111
+11100000101000001000000000000000
+01110000010001010110100100010000
+00100000011000000000000000000000
+00100000010000000101001011010010
+00100000010000000101001011100000
+01011000000000000000000000001110
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01101000000000001100010101100011
+00011111111000111111111000000000
+01111001001000000111111000000000
+11100000101000001000000000000000
+01000111010101101100000000110101
+01011000000000000001010111101111
+11100000101000010000000000000000
+01011000000000000001000110000001
+11100000101000010000000000000000
+01101000000000001100010101011101
+11100000101000001000000000000000
+01011000000000000000000011100000
+11100000101000011000000000000000
+01101000000000010100010101101100
+11100000101000010000000000000000
+01011000000000000000000000000000
+11100000101000001000000000000000
+01101000000000001100010101101110
+11100000101000001000000000000000
+00100000010000000110101000101111
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000010000000101001011100000
+01011000000000000000000000001000
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01101000000000001100010101100011
+00011111111000111111111000000000
+01111001001000000111111000000000
+11100000101000001000000000000000
+01000111010101110100000000110101
+01011000000000000000100111101111
+11100000101000010000000000000000
+01011000000000000000010111100011
+11100000101000010000000000000000
+00011000010000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000010001101
+11100000101000001000000000000000
+00100000010000000110101000101111
+11100000101000001000000000000000
+00100000011000000000000000000000
+00100000010000000101001011010010
+00100000010000000101001011100000
+01011000000000000000000000001000
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+00011000010000100001011000000000
+01101000000000001100010101100011
+00011111111000111111111000000000
+01111001001000000111111000000000
+11100000101000001000000000000000
+01000111010101111100000000110101
+01011000000000000000100111101111
+11100000101000010000000000000000
+01011000000000000000010111100001
+11100000101000010000000000000000
+00011001011000100111111000000000
+11100000101000001000000000000000
+01011000000000000000000010001101
+11100000101000001000000000000000
+00100000010000000110101000101111
+11100000101000001000000000000000
+00100000011000000000000000000000
+01000111010110000100000000110110
+01101000000000001100010101101001
+00100000011110100000000000000000
+01101000000100010000000100010010
+00100100011110100000000000000000
+00011010001000100111111000000000
+01100000000000001000101010011011
+01100000000010001000101010011010
+00100000010000000101001001101110
+00100100011110100000000000000000
+00100000010000000101001011010010
+00100000010000000101001011100000
+01011000000000000000000000000101
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01101000000000001000010100001101
+11100000101000001000000000000000
+01011000000000000000000111111111
+11100000101000010000000000000000
+01101000000000001100010101101001
+11100000101000001000000000000000
+01101000000000001100010101100110
+11100000101000001000000000000000
+01110000010001010110100100000000
+00100000011000000000000000000000
+01000111010110001100000000110110
+01101000000000001100010101101011
+11000001000000001000000000000000
+01101000000000010000010011111111
+00100000011110100000000000000000
+01101000000000001100010101101001
+00011111111000001111111000000001
+01100000000000001100010101101001
+00100000011000000000000000000000
+01101000000000010100010101101111
+00100000001000000111111110011100
+01000111010110010100000000110110
+01101000000000001100010101101000
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001100010101101000
+01101000000000010100010101011110
+01101000000010010100011010011111
+10011000010001100111110000000000
+00100000001000010110110001010111
+01100000000000010100011010011111
+01101000000000001100010101101001
+00100000001110100110110001011111
+01110000000001010001000000000001
+01101000000000001100010101100110
+01100000000000001000010100001111
+01011000000000000000000011111111
+01100000000000001000010100001110
+00100000001000000110110001100100
+01110000000001010001000000000000
+01101000000000001100010101100101
+01100000000000001000010100001111
+01011000000000000000000011101111
+01100000000000001000010100001110
+01000111010110011100000000110110
+01101000000000010100011010011111
+00011111111001100111110001111111
+00100000001000010110110001101011
+01101000000000001000010100010000
+00011111111000001111111000000001
+01100000000000001000010100010000
+00100000010000000110101001110010
+01101000000000010100011010011111
+00011111111000001111111000001000
+01101000000010001000010100010000
+10011000010000001010001000000000
+00100000010000000101001001000000
+01100000000000010000001001110111
+00011111111000001111111000000100
+01100000000000010000001001111001
+00011111111000100000101000000000
+01101000000000001000010100001101
+11100000101000001000000000000000
+01101000000000001000010100001110
+11100000101000001000000000000000
+00100000010000000110110010010101
+00100000010000000110110010100110
+01000111010110100100000000110110
+01101000000000010100010101110001
+00011111111000100000011000000000
+01101000000000010100011010011111
+00011111111000100111001000000000
+00100000010000000110011011101010
+00011000101000100000010000000000
+00011000011000100111111000000000
+01100000000000010100010101110001
+00011000010000100000101000000000
+01101000000000001000010100001111
+11100000101000001000000000000000
+01101000000000010000001001110111
+00011111111000100000101000000000
+01101000000000010100011010011111
+01101000000010001000010100010000
+10011000010000001111111000000000
+00011111111000001111111000000100
+11100000101000010000000000000000
+01101000000000010100001001001010
+11100000101000010000000000000000
+01110000010001010110100100000000
+01101000000000010100010101110011
+11000000000000000011101010010111
+01110000000010110000010100000000
+00100000011000000000000000000000
+01000111010110101100000000110110
+01101000000000010100011010011111
+00011111111001100111110001111111
+00100100001000010110110010011101
+00011111111000111111111000000000
+01111001001000000111111000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+01101000000000010100011010011111
+00011111111010010111111000000000
+00011111111100011000010000000000
+00011111111000010111111001111111
+00011111111000111111111000000000
+01111001001111111111111000000000
+11100000101000001000000000000000
+11100000101010001000000000000000
+00100000011000000000000000000000
+01101000000000001100010101101001
+00100000011110100000000000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+01000111010110110100000000110110
+00100000010000000111110110011100
+00100000010000000011001011110110
+00100000010000000110001100011011
+01000111010110111100000000110110
+00100000010000000111011011011100
+00100000010000000111011010110101
+00100000010000000111011011000110
+00100000010000000101001001101110
+00100100011110100000000000000000
+00100000010000000100110110101001
+00100000010000000101001001101110
+00100100011110100000000000000000
+01000111010111000100000000110111
+00100000010000000110110011110101
+00100000010000000100111101100100
+00100000010000000110101110011000
+00100000010000000110110010111110
+01000111010111001100000000110111
+00100000001000000011001011110010
+01101000000000001000001001111111
+11000010100000000101000010000111
+11000010100000111101000010010001
+00100000011000000000000000000000
+01000111010111010100000000110111
+00100000010000000101001001110100
+00100000011110100000000000000000
+01101000000000001000000001001011
+11000011100000110000000000000000
+00100000010000000101001001011000
+01100000000000010000000101101111
+00011111111000100000110000000000
+11101000110000010000000000000000
+00011111111000001111111000000100
+01100000000000010100000111011100
+01110000010000011101101100000110
+01000111010111011100000000110111
+01101000000000010100001001000110
+00100000001110100110110011011101
+01101000000000001000000001001011
+11000100000000111000000000000000
+01111001001111111111111000000111
+01100000000000001000000001001011
+01110000010000011101101100000101
+01101000000010010100001001000110
+01101000000000010000000101101111
+10011000010000001111111000000000
+01100000000000010000000101101111
+01101000000000010100000111011100
+10011000010001100111111000000000
+01100000000000010100000111011100
+01000111010111100100000000110111
+01101000000000010100000111011100
+00100000001110100010101010001100
+11011000010000000000000100000100
+10011000010001100111111000000000
+00100100001000010110110011101001
+01000111010111101100000000110111
+01100000000010010100000111011100
+01101000000000010100001001000110
+10011000010000001111111000000000
+01100000000000010100001001000110
+00100000001000000110110011101011
+01011000000000000000000000000000
+01100000000000010100001001000110
+01101000000000001000000001001011
+01111001001000000111111000000110
+01100000000000001000000001001011
+00100000011000000000000000000000
+01101000000000001100011010000100
+11000010100000000110110011110011
+01110000000000101000011100000001
+00100000011000000000000000000000
+01110000000000101000011100001111
+00100000011000000000000000000000
+01101000000000001100011010000001
+00100100001110100110110011111011
+01101000000000001000001010000110
+00100000011110100000000000000000
+01110000000000101000011000000000
+00100000011000000000000000000000
+01000111010111110100000000110111
+01101000000000001000001010000111
+00100000011110100000000000000000
+11000000000000001110110100011011
+11000000000000010110110101110100
+11000000000000011110110100100001
+11000000000000100110110101111000
+11000000000111011110110100101011
+11000000000111100110110101111011
+11000000000001101110110100110000
+11000000000001110110110110000000
+11000000000001111110110100110011
+11000000000010000110110110000110
+11000000000010001110110100111001
+11000000000010010110110110001010
+11000000000010011110110100111111
+11000000000010100110110110001110
+11000000000010101110110101000101
+11000000000010110110110110010010
+11000000000010111110110101001011
+11000000000011000110110110010111
+11000000000011001110110101010001
+11000000000011010110110110011011
+11000000000011011110110101010111
+11000000000011100110110110011111
+11000000000011101110110101011101
+11000000000011110110110110100100
+11000000000011111110110101100011
+11000000000100000110110110101000
+11000000000100001110110101101110
+11000000000100010110110110101100
+00100000011000000000000000000000
+00100000010000000110110110110111
+01110000000000101000011100000010
+01101000000000001100001001010000
+01111001001000000111111000000000
+01100000000000001100001001010000
+00100000011000000000000000000000
+01110000000000101000011100000100
+01101000000000001100001001010000
+11000011100000010000000000000000
+01110000000000101000011100000011
+00100000010000000110110110111110
+01110000000000101000011100000100
+01101000000000001100001001010000
+01111001001000000111111000000010
+01100000000000001100001001010000
+00100000011000000000000000000000
+00100000010000000101001001110100
+00100100011110100000000000000000
+00100000010000000110110111001101
+01110000000000101000011100111100
+00100000011000000000000000000000
+00100000010000000110110111000011
+01110000000000101000011100001110
+00100000011000000000000000000000
+00100000010000000110110111011101
+01110000000000101000011100010000
+01101000000000001100001001010010
+01111001001000000111111000000000
+01100000000000001100001001010010
+00100000011000000000000000000000
+00100000010000000110110111100100
+01110000000000101000011100010010
+01101000000000001100001001010010
+01111001001000000111111000000010
+01100000000000001100001001010010
+00100000011000000000000000000000
+00100000010000000110110111101001
+01110000000000101000011100010100
+01101000000000001100001001010011
+01111001001000000111111000000000
+01100000000000001100001001010011
+00100000011000000000000000000000
+00100000010000000110110111110000
+01110000000000101000011100010110
+01101000000000001100001001010011
+01111001001000000111111000000010
+01100000000000001100001001010011
+00100000011000000000000000000000
+00100000010000000110110111010001
+01110000000000101000011100011000
+01101000000000001100001001010001
+01111001001000000111111000000000
+01100000000000001100001001010001
+00100000011000000000000000000000
+00100000010000000110110111011000
+01110000000000101000011100011010
+01101000000000001100001001010001
+01111001001000000111111000000010
+01100000000000001100001001010001
+00100000011000000000000000000000
+00100000010000000110110111110101
+01110000000000101000011100011100
+01101000000000001100001001010001
+01111001001000000111111000000110
+01100000000000001100001001010001
+00100000011000000000000000000000
+00100000010000000110110111111100
+01101000000000001100001001010100
+01111001001000000111111000000000
+01100000000000001100001001010100
+01110000000000101000011100011110
+00100000011000000000000000000000
+00100000010000000110111000000010
+01101000000000001100001001010100
+01111001001000000111111000000010
+01100000000000001100001001010100
+01110000000000101000011100100000
+01101000000000001100010101100100
+00011111111010011111111000000000
+00011111111000011111111000000011
+11011000010000000100010101100101
+01100000000010010000010011110111
+00100000001000000110101000110101
+00100000010000000110111000001100
+01101000000000001100001001010100
+01111001001000000111111000000100
+01100000000000001100001001010100
+01110000000000101000011100100010
+00100000011000000000000000000000
+01101000000000001100001001010000
+11000100000000001000000000000000
+01110000000000101000011100000011
+00100000001000000110110011111011
+01101000000000001100001001010000
+11000001100111111000000000000000
+01110000000000101000011100111011
+01101000000000001000001010000101
+11000001100010111000000000000000
+01110000000000101000010100000000
+01110000000000101000011100001101
+00100000001000000110110011111011
+01101000000000001100001001010000
+00100100011110100000000000000000
+01101000000000001100011010000100
+11000010100000000110110110101111
+11000010100000110110110110110001
+00100000001000000110110110110101
+01101000000000001100001001010010
+11000100000000001000000000000000
+01110000000000101000011100010001
+00100000001000000110110011111011
+01101000000000001100001001010010
+11000001100111111000000000000000
+01110000000000101000011100010011
+00100000001000000110110011111011
+01101000000000001100001001010011
+11000100000000001000000000000000
+01110000000000101000011100010101
+00100000001000000110110011111011
+01101000000000001100001001010011
+11000001100111111000000000000000
+01101000000000001100011010000100
+11000010100000110110110110110001
+00100000001000000110110110110101
+01101000000000001100001001010001
+11000100000000001000000000000000
+01110000000000101000011100011001
+00100000001000000110110011111011
+01101000000000001100001001010001
+11000001100111111000000000000000
+01110000000000101000011100011011
+00100000001000000110110011111011
+01101000000000001100001001010001
+11000001111111111000000000000000
+01101000000000001100011010000100
+11000010100000110110110110110011
+00100000001000000110110110110101
+01101000000000001100001001010100
+11000100000000001000000000000000
+01110000000000101000011100011111
+00100000001000000110110011111011
+01101000000000001100001001010100
+11000100000000011000000000000000
+01110000000000101000011100100001
+00100000001000000110110011111011
+01101000000000001100001001010100
+11000001111111111000000000000000
+00100000001000000110110110110101
+01110000000000101000011100001111
+00100000001000000110110011111011
+01110000000000101000011100010111
+00100000001000000110110011111011
+01110000000000101000011100011101
+00100000001000000110110011111011
+01110000000000101000011100000000
+00100000011000000000000000000000
+01000111010111111100000000110111
+00100000010000000101001010111000
+01011000000000000000000000000001
+00011111111000100000010000000000
+01011000000000000000000001010000
+00011111111000100001011000000000
+00100000001000000101000010101000
+01000111011000000100000000111000
+00100000010000000101001010111000
+01101000000000010100001001001000
+00011111111000100000010000000000
+00100000001000000101000010110111
+01000111011000001100000000111000
+00100000010000000101001010111000
+01101000000000010100001001001000
+00011111111000100000010000000000
+11011001011000000000000001010000
+00100000010000000101000011001100
+01101000000000001100001001010000
+01111001001111111111111000000101
+01100000000000001100001001010000
+00100000011000000000000000000000
+01000111011000010100000000111000
+00100000010000000101001011000101
+00100000010000000111000100111000
+00100000001000000101000011100111
+01000111011000011100000000111000
+00100000010000000101001010111000
+01011000000000000000000000000011
+00011111111000100000010000000000
+01011000000000000000000001010001
+00011111111000100001011000000000
+00100000001000000101000010101000
+01000111011000100100000000111000
+00100000010000000101001010111000
+01101000000000010100001001001010
+00011111111000100000010000000000
+00100000001000000101000010110111
+01000111011000101100000000111000
+00100000010000000101001010111000
+01011000000000000000000000010001
+00011111111000100000010000000000
+01011000000000000000000001010010
+00011111111000100001011000000000
+00100000001000000101000010101000
+01000111011000110100000000111000
+00100000010000000101001010111000
+01101000000000010100001001001100
+00011111111000100000010000000000
+00100000001000000101000010110111
+01000111011000111100000000111000
+00100000010000000101001010111000
+01011000000000000000000000010011
+00011111111000100000010000000000
+01011000000000000000000001010011
+00011111111000100001011000000000
+00100000001000000101000010101000
+01000111011001000100000000111001
+00100000010000000101001010111000
+01101000000000010100001001001110
+00011111111000100000010000000000
+00100000001000000101000010110111
+01000111011001001100000000111001
+00100000010000000101001011010010
+01110000000001001111101100000011
+01110000000001001111111000011100
+00100000010000000110101110101001
+01110000010001010110001100000001
+00100000011000000000000000000000
+01000111011001010100000000111001
+00100000010000000101001011010010
+01101000000010001100010101100100
+00100000010000000110101001111001
+01100000000010001100010101011101
+00100000001000000110101111000100
+01000111011001011100000000111001
+00100000010000000101001011010010
+01101000000010001100010101011101
+00100000010000000110101001110011
+00100000010000000110101000011010
+01100000000000001000010011111110
+01101000000010001100010101011101
+00100000010000000110101001110011
+01100000000010001000010011111011
+00100000001000000110101110101001
+01000111011001100100000000111001
+00100000010000000101001011010010
+01101000000010001100010101011101
+00100000010000000110101001110011
+00100000001000000110101111111100
+01000111011001101100000000111001
+01101000000000010000001001100100
+10011000000000000000110000000000
+11101000110000001000000000000000
+00011111111000100010010000000000
+01100000000000001000010100011011
+11101000110000010000000000000000
+01100000000000010000010100011100
+11101000110000001000000000000000
+00011111111011010001011000000000
+11101000110000001000000000000000
+10011001011000001001011000000000
+01000111011001110100000000111001
+00011000110000100000010000000000
+11011111001000000000000000000100
+11011000101000000000010100101010
+00100000010000000111111011000110
+00011000010000100000110000000000
+00011010010000100111111000000000
+11000000000000001110111110111010
+11000000000000010110111000101100
+11000000000000011110111110111010
+11000000000000100110111001010100
+11000000000000101110111110111010
+11000000000000110110111100000010
+11000000000000111110111110111010
+00100000001000000110111111000001
+01000111011001111100000000111001
+00100000010000000110111111010000
+00101000010000011111111000000001
+00100000001000001111000001000000
+00101000010000011111111011111111
+00100000001000001110111111000100
+11101000110000010000000000000000
+01100000000000010000010100100010
+00011001011000001001011111111110
+00011001011000001001011111111111
+00100100001000101110111110111110
+11011001011000000000010100010001
+11101001011000010000000000000000
+00100000011110100000000000000000
+00100000010000000111000010000010
+00100000010000000101001011010000
+00011000000000000111111000000011
+11100000101000001000000000000000
+01101000000000010000010100011100
+11100000101000010000000000000000
+00011000111010111111111000000000
+00011111111000001111111000000101
+00011111111000001010011000000101
+00011111111100001111111000000000
+11100000101000010000000000000000
+00011000111000100111111000000000
+00011111111100001111111000000000
+11100000101000010000000000000000
+11100000101000010000000000000000
+11011000110000000000010100101010
+00011000111000100111001000000000
+00100000001000101110111001001111
+11101000110000100000000000000000
+11100000101000100000000000000000
+11000010000000000110111001001100
+00011000000000000111111000000000
+11100000101000001000000000000000
+00011010011000100111111000000000
+01100000000000010000001001110101
+00100000011000000000000000000000
+01000111011010000100000000111010
+11101000110000100000000000000000
+01100000000000100000010100100100
+00011001011000001001011111111100
+00100000010000000110111100101110
+01100000000000010000010100100000
+00011001011000001001011111111110
+00100000010000000111000000101000
+00100000001000101110111111000100
+00101010001000011111111000000101
+00100000001000001110111001100010
+11011000101000000000010100101010
+00011000000000000000111000000000
+00100000001000000110111001110001
+11101000110000001000000000000000
+11000000100001010110111111000100
+11101000110000010000000000000000
+00100100001110100110111001101111
+11101000110000001000000000000000
+11000000111111111110111001101101
+11101000110000001000000000000000
+11000000111111111110111001101011
+00100000001000000110111010111000
+00011000110000001000110111111011
+00100000001000000110111001011111
+00011000110000001000110111111100
+00100000001000000110111001011111
+00011000110000001000110111111101
+00100000001000000110111001011111
+11101000110000001000000000000000
+11000000000001001110111010000110
+11000000000001010110111001110100
+11101000110000010000000000000000
+11100000101000010000000000000000
+00011000111000001000111000000001
+00011111111100001010010000000000
+11101000110000010000000000000000
+00011111111100001111111000000000
+00011010010000001010010000000001
+10011010010001100111110000000000
+00100100001000010110111010000011
+00011111111000100010011000000000
+00011010010100001111111000000000
+11100000101000010000000000000000
+00011000111000001000111000000001
+00011010011000100111111000000000
+00100000001000000110111001111010
+00011001011000001001011111111011
+00011010001000001010001111111011
+00100000001000000110111010001011
+11101000110000010000000000000000
+11100000101000010000000000000000
+00011000111000001000111000000001
+00011001011000001001011111111101
+00011010001000001010001111111101
+00100100001000010110111111000100
+00100100001000101110111001110001
+00011001011000001001011111111111
+00100100001000101110111111000100
+00100000010000000101001011010000
+00011000101000001000101000001010
+11011010001000000000010100101010
+00011000111000100111111000000000
+00100000001110100110111010100101
+11101010001000010000000000000000
+00100000001110100110111010100101
+10011000000000000010010000000000
+01101000000000100000010100100100
+10011000000000000000010000000000
+00100000010000000111000011100111
+00011000110000100111111000000000
+00100000001110100110111010100010
+00011000110000001000110111111101
+11101000110000011000000000000000
+11100000101000011000000000000000
+00100000010000000111000001011011
+10011000000000000111001000000000
+00100000010000000111111100000001
+00011010001000001010001000000010
+00011000111000001000111111111111
+00100000001000000110111010010010
+11011010001000000000000000000101
+00100000010000000110111110000100
+01101000000000010000001001110101
+11000000000001011111000001000011
+00100000001000000110111110011010
+11101000110000001000000000000000
+11000000000000000110111010101110
+11000000000000001110111010110000
+11000000000000010110111010110011
+00011001011000001001011111111111
+00100000001000000110111010110110
+11101000110000001000000000000000
+00011001011000001001011111111110
+00100000001000000110111010110110
+11101000110000010000000000000000
+00011111111100001111111000000000
+00011001011000001001011111111101
+01100000000000010000010100011001
+00100000011000000000000000000000
+00011001011000001001011111111011
+00100000010000000110111010101010
+00100100001000101110111110111110
+01101000000010100000010100100100
+00100000010000000111000010110001
+00100100001000101110111110111011
+00011000110000100010001000000000
+00100000010000000101001011010000
+00011010001000100000110000000000
+00011000101000001000101000000011
+00011000110000100001011000000000
+00100000010000000111000001100010
+00011111111000100010001000000000
+01101000000000010000010100011001
+00011111111000100010010000000000
+00011010001000100111111000000000
+10011010010001100010010000000000
+01101000000000010000010100100000
+10011010010001100111110000000000
+00100100001000010110111011100111
+01111000010101000111110000000000
+01101000000000010000010100011001
+00100000001110100110111011011010
+10011001011000001000110000000000
+00011010010000001010010000000011
+00011010010000100111001000000000
+00011111001000100111111000000000
+00011111111000001111111000000011
+00011111111100001111111000000000
+11100000101000010000000000000000
+00011111001000100111111000000000
+00011111111100001111111000000000
+11100000101000010000000000000000
+00100000001000000110111011110101
+00011010001000001111001000000110
+00100000001101000110111011011110
+00011111001100001111111000000000
+00100000001000000110111011100001
+00011111001000100111111000000000
+00011111111000001111111000000010
+00011111111100001111111000000000
+11100000101000010000000000000000
+00011111001000001111001111111101
+00011111001100001111111000000000
+11100000101000010000000000000000
+00011001011000100000110000000000
+00100000001000000110111011110101
+01111000001101000111110000000000
+01101000000000010000010100100000
+00011111111000100010001000000000
+00011010001000100111001000000000
+01101000000000010000010100011001
+00100000001110100110111011011010
+10011001011000001000110000000000
+00011010001000100111111000000000
+00011111111000001111111000000101
+00011111111100001111111000000000
+11100000101000010000000000000000
+00011010001000100111111000000000
+00011111111100001111111000000000
+11100000101000010000000000000000
+00100000010000000111111100000001
+00100100001101000110111011111110
+00011000000000000111111000000010
+11100000101000001000000000000000
+00011000110000100111111000000000
+10011001011001100111111000000000
+00011111111100001111111000000000
+11100000101000010000000000000000
+00100000001000000110111100000000
+00011000000000000111111000000000
+11100000101000001000000000000000
+11011010001000000000000000000101
+00100000001000000110111110110000
+01000111011010001100000000111010
+00100000010000000110111111010000
+00101000010000011111111011111111
+00100000001000001110111111000100
+00100000010000000110111100101110
+01100000000000010000010100100000
+00011001011000001001011111111110
+00100000010000000111000000101000
+11011000101000000000010100101010
+00011000000000000000111000000000
+11101000110000001000000000000000
+11000000000001010110111100110110
+11101000110000010000000000000000
+11100000101000010000000000000000
+00011000111000001000111000000001
+00011001011000001001011111111101
+00011010001000001010001111111101
+00100100001000010110111111000100
+00100100001000101110111100001100
+00011001011000001001011111111111
+00100100001000101110111111000100
+00100000010000000101001011010000
+00011000101000001000101000001101
+01101000000000010000010100010001
+10011000000000000010011000000000
+11011010001000000000010100101010
+11101010001000010000000000000000
+00100000001110100110111100101001
+10011000000000000010010000000000
+00100000010000000111000011000110
+00100000001110100110111100100111
+00011000110000001000110111111101
+11101000110000011000000000000000
+11100000101000011000000000000000
+00100000010000000111000001011011
+10011000000000000111001000000000
+00100000010000000111111100000001
+00011010001000001010001000000010
+00100000001000000110111100011100
+00100000010000000110111110000011
+01101000000000010000001001110101
+11000000000001110111000001000110
+00100000010000000110111110011010
+00100000001000000110111110011010
+11101000110000010000000000000000
+00011111111100001111111000000000
+00011111111000001111111111111101
+11011000010000000000000011001000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01011000000000000000000011001000
+00100000011000000000000000000000
+00011000110000001000110000000100
+00011001011000001001011111111011
+00011010001000001010001111111011
+00100100001000101110111111000100
+00100000010000000110111010101010
+00100100001000101110111110111110
+11011001011000000000010100010001
+00100000010000000111000010000010
+00011000111000100111111000000000
+00100000001110100111000001000110
+01100000000000001000010101001110
+00011010010000100111111000000000
+01100000000000010000010101001100
+11011000111000000000000000000000
+11011010001000000000000000000000
+00100000010000000101001011010000
+00011000101000001000101000001010
+00100000010000000110111101101100
+00100100001101000010101010001100
+00011000110000100001011000000000
+00011111111000100010011000000000
+10011010001000001010001000000000
+01101000000000010000010100011001
+00011111111000100010010000000000
+00100000001110100110111101110101
+00011010001000100111111000000000
+10011010010001100010010000000000
+00100000001000101110111101100111
+00100100001000010110111101100111
+01101000000000010000010100100000
+10011010010001100111110000000000
+00100000001000101110111101011110
+00100100001000010110111101011110
+00011010010000100111001000000000
+00100000010000000110111101100001
+01101000000000001000010101001110
+00011000111000001000111000000001
+10011000111001100111110000000000
+00100000001000101110111110000011
+00100000001000000110111110100000
+00011111111000100111001000000000
+00100000010000000110111101100001
+00100000001000000110111110100000
+00011000101000001000101111111101
+00011111001000100000010000000000
+00011010011000100111111000000000
+10011010010001100111111000000000
+10011001011000001000110000000000
+00100000001000000111111100000001
+01101000000000001000010101001110
+00011000111000001000111000000001
+10011000111001100111110000000000
+00100000011000101000000000000000
+00100000001000000110111101000111
+00100000010000000111111111101001
+11011000110000000000010100101010
+00011000111010111111111000000000
+10011000110000001000110000000000
+11101000110010100000000000000000
+00100000010000000111000010110001
+00100100011000101000000000000000
+00100000010000000111000001011011
+00100000001000000111111111100111
+01101000000000010000010100100000
+10011010001001100111110000000000
+00100100001000010110111110001111
+00011010001000100111001000000000
+00011111001000100000010000000000
+00011001011000100000110000000000
+00100000010000000111111100000001
+01101000000000010000010101001100
+10011010001001100111110000000000
+00100000001000101110111110000001
+00100000010000000110111110100000
+00100000001000000110111110010100
+00100000010000000110111110000011
+00100000001000000110111110010100
+11011010001000000000000000000111
+00011000000000000111111000000000
+11100000101000001000000000000000
+00100000010000000110111110110000
+01101000000010010000001001110101
+00011000010000001000010111111011
+00011000010100001111111000000000
+11100000101000010000000000000000
+00011000010000001000010111111101
+00011000010100001111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+00011111111000100111001000000000
+00011111001000100000010000000000
+00011001011000100000110000000000
+00100000010000000111111100000001
+00100000010000000110111110100000
+01011000000000000000000000110110
+11100000101000001000000000000000
+01101000000000010000010101001100
+00011111111100001111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+01011000000000000000000000110110
+11100000101000001000000000000000
+00011000010000001000010111111101
+00011000010100001111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+11011010001000000000000000000111
+01011000000000000000000000000010
+11100000101000001000000000000000
+01101000000000010000010100011001
+10011000010000001000010000000000
+00011000010100001111111000000000
+11100000101000010000000000000000
+00100000010000000110111110110000
+01101000000010010000001001110101
+00011000010000001000010111111011
+00011000010100001111111000000000
+11100000101000010000000000000000
+00011000010000001000010111111011
+00011000010100001111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+01101000000000010000001001110011
+10011000101001100111111000000000
+00011111111001100111111000000000
+01100000000000010000001001110101
+00100000010000000101001011010000
+00011010001000100111111000000000
+11100000101000001000000000000000
+01101000000000010000010100011100
+11100000101000010000000000000000
+00100000011000000000000000000000
+00100000011000000000000000000000
+01011000000000000000001000000000
+01100000000000010000010101001010
+00100000001000000110111111000110
+01011000000000000000010000000000
+01100000000000010000010101001010
+00100000001000000110111111000110
+01011000000000000000011000000000
+01100000000000010000010101001010
+00100000001000000110111111000110
+01011000000000000000001100000000
+01100000000000010000010101001010
+00100000010000000101001011010000
+11100000101000001000000000000000
+01101000000000010000010100011100
+11100000101000010000000000000000
+01011000000000000000001000000000
+11100000101000010000000000000000
+01101000000000010000010101001010
+11100000101000010000000000000000
+01110000000000100111010100000111
+00100000011000000000000000000000
+11011010010000000000000000000000
+00011000000000000000010000000000
+11011000101000000000010100010001
+00100000010000000111000000101000
+00100000001000101111000000100110
+00011010010000001010010000000001
+11101000110000001000000000000000
+00011010001000001010001111111111
+00011001011000001001011111111111
+00101111111000011111000000011000
+00100100001000001111000000100110
+00101111111000000000111000000100
+00100100001000001110111111110011
+00011000000000000000010000000001
+11101000110000001000000000000000
+00011010001000001010001111111111
+00011001011000001001011111111111
+11000000100000000110111111100111
+11101000110000001000000000000000
+00011010001000001010001111111111
+00011001011000001001011111111111
+11000000000000000110111111111000
+00100000001000000110111111101010
+00011000110000001000110000000001
+00011010001000001010001111111111
+00011001011000001001011111111111
+00011000110000001000110000000010
+00011010001000001010001111111110
+00011001011000001001011111111110
+00101000010000011111111000000000
+00100000001000001111000000100000
+00011000110000001000110000001100
+00011010001000001010001111110100
+00011001011000001001011111110100
+00100000001000000111000000100000
+00101111111000000000111000000010
+00100100001000001110111111110110
+00100000001000000110111111011110
+00101111111000000000111000000001
+00100100001000001111000000100110
+00011010001000001010001111111110
+00011001011000001001011111111110
+11101000110000010000000000000000
+00011010010001100111110000000100
+00100000001000101110111111111110
+11100000101000010000000000000000
+00101000010000011111111000000000
+00100000001000001111000000100000
+00011000110000100000010000000000
+11101000110000001000000000000000
+11000000100000000111000000011001
+11101000110000001000000000000000
+11000000100000000111000000011001
+11101000110000001000000000000000
+11000000100010000111000000011001
+11101000110000001000000000000000
+11000000100000000111000000011001
+11101000110000001000000000000000
+11000000110000000111000000011001
+11101000110000001000000000000000
+11000000100000000111000000011001
+11101000110000001000000000000000
+11000000100000000111000000011001
+11101000110000001000000000000000
+11000000110000000111000000011001
+11101000110000001000000000000000
+11000000101011111111000000011001
+11101000110000001000000000000000
+11000000110011011111000000011001
+11101000110000001000000000000000
+11000000100110100111000000011001
+11101000110000001000000000000000
+11000000011111011111000000011110
+00011000010000100000110000000000
+00011000110000001000110000001100
+00011000000000000000111000000000
+00011000000000000000010000000000
+00100000001000000111000000011110
+00011001011000001001011111110100
+00011010001000001010001111110100
+00011000000000000000010000000000
+00101010001000011111111000000000
+00100100001000001110111111010101
+00011000000000000111111000000000
+11100000101000010000000000000000
+00100000011000000000000000000000
+11011000010000000000000011111111
+00100000011000000000000000000000
+01000111011010100100000000111010
+11101000110000001000000000000000
+00011001011000001001011111111111
+00101111111000011111000000110000
+00100100001000001111000000111110
+00101111111000000000111000000111
+00100000001000001111000000110111
+00101111111000000000111000000110
+00100000001000001111000000111001
+00101111111000000000111000000101
+00100100001000001111000000111110
+11101000110000001000000000000000
+00011111111000100010001000000000
+00011001011000001001011111111111
+00100000001000000111000000111100
+00011000110000001000110000000010
+00011001011000001001011111111110
+11101000110000010000000000000000
+00011111111100001010001000000000
+00011001011000001001011111111110
+00011000000000000111111000000001
+00100000011000000000000000000000
+00011000000000000111111000000000
+00100000011000000000000000000000
+01011000000000000000000000000011
+01100000000000001000010100011011
+00100000001000000111000001001000
+01011000000000000000000000000101
+01100000000000001000010100011011
+00100000001000000111000001001000
+01011000000000000000000000000111
+01100000000000001000010100011011
+00100000010000000101001011010000
+01101000000000001000010100011011
+00011111111000100010010000000000
+11100000101000001000000000000000
+01101000000000010000010100011100
+11100000101000010000000000000000
+01011000000000000000010100000000
+11100000101000010000000000000000
+00101010010000011111111000000101
+00100000001000001111000001010111
+00101010010000011111111000000111
+00100000001000001111000001010111
+01011000000000000000000000000000
+11100000101000101000000000000000
+00100000001000000111000001011001
+01011000001101010000001000000000
+11100000101000101000000000000000
+01110000000000100111010100001010
+00100000011000000000000000000000
+00100000010000000111111010100010
+00100000010000000111111010100101
+00100000010000000111000001100010
+00100000010000000111111010011100
+00100000010000000111111010011111
+00011000010000100111111000000000
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000010111001000000111
+00011111111010010111111000000000
+11000000100000000111000001101100
+00011000000000000111111000000001
+00011000000000000000010000000001
+00100000011000000000000000000000
+00100000010000000111111001110110
+00011111111000001000010000000001
+00100000011000000000000000000000
+00011111001000100111111000000000
+00011111111001100111110000000100
+00100000001000010111000001101001
+11000000000000101111000001110011
+11000000000000110111000001110110
+11000000000000111111000001111010
+00100000011000000000000000000000
+11101000110000001000000000000000
+00011111111000001000010000000010
+00100000011000000000000000000000
+11101000110000010000000000000000
+00011111111100001111111000000000
+00011111111000001000010000000011
+00100000011000000000000000000000
+11101000110000010000000000000000
+00011111111100001111111000000000
+11101000110010010000000000000000
+00011000010100001000010000000000
+00011000010100000000010000000000
+10011000010000001111111000000000
+00011111111000001000010000000101
+00100000011000000000000000000000
+01000111011010101100000000111010
+00011000000000000000111000000000
+11011010010000000000000000000000
+11011000101000000000010100101010
+11101001011000010000000000000000
+00100000011110100000000000000000
+00100000010000000111000010001101
+00011000111000100111111000000000
+11000001000000111000000000000000
+00011001011000001001011000000010
+00100000001000000111000010000110
+10011000000000000010011000000000
+01101000000000010100010101110101
+10011000000000000000110000000000
+00011000111000100111111000000000
+11000001000000111000000000000000
+01111000010101000111110000000000
+11101000110000001000000000000000
+00100000011110100000000000000000
+10011000000000000111001000000000
+11101000110000010000000000000000
+10011010011001100111110000000000
+00100100001000101111000010011010
+01111000001101000111110000000000
+11000010000000000111000010010110
+11101000110010100000000000000000
+00011000110000100010001000000000
+00100100001101000111000010101101
+11011000110000000000010100101010
+11011111001000000000000000000111
+11101000110000100000000000000000
+00100000001110100111000010100110
+10011000010001100111110000000000
+00100000001000101111000010101101
+11000010000000000111000010100000
+00100000011000000000000000000000
+11100000101010100000000000000000
+00011000111000001000111000000001
+00011010001000100000110000000000
+00100000010000000111000001011011
+10011010010000001010010000000000
+10011000110000001000110000000000
+00100000001000000111000010010000
+00011010001000100000110000000000
+00100000010000000111000001100010
+10011000110000001000110000000000
+00100000001000000111000010010000
+01000111011010110100000000111010
+01101000000000010100010101110101
+10011000000000000000110000000000
+11101000110000001000000000000000
+00100000001110100111111111100011
+00011111111000111111111000000000
+10011000110000001000110000000000
+11101000110000100000000000000000
+10011000010001100111110000000000
+00100000011000101000000000000000
+00011000101000100111111000000000
+01100000000000010000101010111011
+01100000000011000000101010100010
+00100000010000000111000001100010
+10011000110000001000110000000000
+00011000110000100111111000000000
+01101000000010010000101010111011
+00011000010000100000101000000000
+01101000000011000000101010100010
+00011111111000100000110000000000
+00100000001000000111000010110100
+01000111011010111100000000111010
+01101000000000010100010101110101
+10011000000000000000110000000000
+11101000110000001000000000000000
+00100000001110100111000011100100
+10011000000000000111001000000000
+11101000110000010000000000000000
+10011010011001100111110000000000
+00100000001000101111000011010100
+11000010000000000111000011001100
+00011000110000001000110000000100
+00100000010000000111000001100010
+10011000110000001000110000000000
+00100000001000000111000011001001
+00011111001000001111001111111111
+00011111001000111111111000000000
+10011000110000001000110000000000
+00011000110000001000110000000100
+00100000010000000111000001100010
+10011000110000001001011000000000
+00011000110000001000110000000001
+11101000110000010000000000000000
+10011010010001100111110000000000
+00100000001000101111111111101111
+00100000010000000111000001011011
+10011000110000001000110000000000
+00011001011000100111111000000000
+10011000110001100111110000000000
+00100000001000101111000011100100
+00100000001000000111000011011010
+00011000000000000000110000000000
+00011000000000000111111000000000
+00100000011000000000000000000000
+01000111011011000100000000111011
+01101000000000010100010101110101
+10011000000000000000110000000000
+11101000110000001000000000000000
+00100000001110100111000100000000
+00011111111000111111111000000000
+10011000110000001000110000000000
+11101000110000100000000000000000
+10011000010001100111110000000000
+00100000001000101111000011110100
+00100000010000000111000001100010
+10011000110000001000110000000000
+00100000001000000111000011101010
+00100000010000000111000001100010
+10011000110000001001011000000000
+00011000110000001000110000000001
+11101000110000010000000000000000
+10011010010001100111110000000000
+00100000011000101000000000000000
+00100000010000000111000001011011
+10011000110000001000110000000000
+00011001011000100111111000000000
+10011000110001100111110000000000
+00100000001000101111000100000000
+00100000001000000111000011110110
+00011000000000000000110000000000
+00100000011000000000000000000000
+11011010010000000000010000000000
+00100000010000000111000011110100
+11011010010000000000001100000000
+00100000010000000111000100001101
+00100100011101000000000000000000
+00011010001001100111110000000011
+00100000001000010111111111101001
+11101000110000001000000000000000
+11000000100001000111111111101001
+11101000110000001000000000000000
+00100000011000000000000000000000
+01000111011011001100000000111011
+00100000010000000111000001100010
+00011111111000100010001000000000
+11101000110000001000000000000000
+00011111111000010111001000000111
+00011111111010010111111000000000
+00011111111001100111110000000011
+00100000001000101111000100101001
+00011111001000100111111000000000
+11000000000000101111000100100000
+11000000000000110111000100100011
+11000000000000111111000100100110
+00011000110000001000110111111111
+00100000010000000111000001100010
+10011000110000001000110000000000
+00011010001000100111111000000000
+10011000010001100010001000000000
+00100000001000101111111111101001
+00100000001000000111000100010000
+00011010001000001010001111111110
+00011000110000001000110000000001
+00100000001000000111000100010000
+00011010001000001010001111111101
+00011000110000001000110000000010
+00100000001000000111000100010000
+00011010001000001010001111111011
+00011000110000001000110000000100
+00100000001000000111000100010000
+00011010001000001010001111111111
+00011111001000100111111000000000
+11000000000000001111000100110010
+11000000000000010111000100110000
+11000000000000100111000100101111
+00100000001000000111111111101001
+00011010001000001010001111110100
+11101000110000010000000000000000
+00011010001000001010001111111110
+11101000110000010000000000000000
+10011010010001100111110000000000
+00100000001000101111111111100111
+00011010001000001010001111111110
+00100000001000101111111111101001
+00100000001000000111000100010000
+00100000010000000101001011010000
+00011111111000100000101000000000
+01011000000000000000000000000110
+11100000101000001000000000000000
+01011000000000000000000001101110
+11100000101000010000000000000000
+01011000000000000000111100000000
+11100000101000010000000000000000
+01011000000110100000010100110101
+11100000101000011000000000000000
+01011000000000000000000100010001
+00011111111100000111111000000000
+11100000101000100000000000000000
+01011000000000000010011000000000
+11100000101000010000000000000000
+01011000000000000000001100110101
+11100000101000010000000000000000
+01011000000000000000000000001001
+11100000101000010000000000000000
+01011000000000000000000000000100
+11100000101000010000000000000000
+01110000000000100111010100010100
+00100000011000000000000000000000
+01000111011011010100000000111011
+01110000000001011110010101010000
+11011000101000000000010111100110
+11011000110000000100010000111010
+00100000010000000111111010111111
+11011000110000000100010111010010
+00100000010000000111111010111101
+11011000110000000000100110111110
+00100000010000000111111010111101
+00100000010000000111001000001010
+11011000110000000000010000101111
+00100000010000000111001000000101
+00100000010000000111000111010000
+11011000101000000000101011110010
+00100000010000000111001000000001
+01011000000011110100001001000000
+00011111111000100010001000000000
+01101000000000100000101011110010
+10011010001001101111110000000000
+00100000010000000111111110000110
+00011000000001110111111000000000
+01100000000000100000100110111010
+00100000011000000000000000000000
+01110000000001011110010101000001
+11011000101000000000010111100110
+00100000010000000111000110110101
+00100000010000000111000110110000
+01101000000000011100010001010100
+11100000101000011000000000000000
+00100000010000000111000101110110
+11011000110000000000010000101111
+00100000010000000111111010111111
+11011000110000000100010000111010
+00100000010000000111111010111111
+00100000010000000111001000001010
+11011000110000000000101100010010
+11011000101000000000101011000010
+00100000010000000111111010111111
+00100000001000000111000111010000
+01101000000000100100010011000111
+11100000101000100000000000000000
+00100000010000000111111011001101
+00100000001000000111111011001010
+01000111011011011100000000111011
+01110000000001011110010101000001
+11011000101000000000010111100110
+00100000010000000111000110110000
+00100000010000000111000110110101
+01101000000000011100010001001101
+11100000101000011000000000000000
+00100000010000000111000101110110
+11011000110000000100010000111010
+00100000010000000111111010111111
+11011000110000000000010000101111
+00100000010000000111111010111111
+00100000010000000111001000001010
+11011000110000000000101100010010
+11011000101000000000101011000010
+00100000010000000111111010111111
+00100000010000000111000111010000
+11011000101000000000101011110010
+00100000001000000111001000000001
+01110000000001011110010100100000
+11011000110000000000100111111110
+11011000101000000000010111100110
+00100000010000000111111010111101
+00100000010000000111001000001010
+11011000110000000000100110011110
+00100000010000000111001000000101
+00100000010000000111000111010000
+11011000101000000000101011000010
+00100000010000000111010010010111
+11011000010000000000000000000001
+00100000010000000111000110011111
+11011000101000000100010000011001
+00100000010000000111001000000001
+11011000010000000000000000000000
+00100000010000000111000110011111
+11011000101000000000101100010010
+00100000001000000111010010010111
+01000111011011100100000000111011
+01110000000001011110010100110101
+01011000000000000000000100000000
+01100000000000010000010111100110
+00100000010000000111000110110000
+00100000010000000111000110110101
+11011000110000000100010000111010
+00100000010000000111111010111111
+11011000110000000000010000101111
+00100000010000000111111010111111
+01011000000000000110110001100101
+11100000101000010000000000000000
+01011000000000000110001001110100
+11100000101000010000000000000000
+11100000101010001000000000000000
+00100000010000000111001000001010
+00100000001000000111000111010000
+01101000000000110100010010100000
+11100000101000110000000000000000
+01101000000000001100010010010101
+11100000101000001000000000000000
+00100000011000000000000000000000
+01101000000000110000010001001111
+11100000101000110000000000000000
+01101000000000001100010010001110
+11100000101000001000000000000000
+00100000011000000000000000000000
+01110000000001011110010101000001
+01101000000000001100011001100100
+01100000000000001000010111100110
+11011000110000000100010111010010
+00100000010000000111111010111101
+11011000110000000000100110111110
+00100000010000000111111010111101
+00100000010000000111001000001010
+11011000110000000000010000101111
+00100000010000000111001000000101
+00100000001000000111000111010000
+01110000000001011110010101000001
+01101000000000001100011001100100
+01100000000000001000010111100110
+11011000110000000000100110111110
+00100000010000000111111010111101
+11011000110000000100010111010010
+00100000010000000111111010111101
+00100000010000000111001000001010
+11011000110000000100010000111010
+00100000010000000111001000000101
+00100000001000000111000111010000
+01000111011011101100000000111011
+00100000010000000111001000011111
+01101000000000001000010111100101
+00011111111000100000010000000000
+00011111111000001111111000001111
+00011111111100011111111000000000
+00011111111000100010010000000000
+00100000001110100111000111100010
+00011000010000010111111000001111
+00100100001110100111000111100101
+11011010011000000000101011010010
+11011111111000000000010111100110
+00011111111000001111111111110000
+10011000010000001010001000000000
+11011000101000000000101100000010
+11011111001000000000000000000100
+00100000010000000111111011011101
+00100000001000000111000111110000
+11011010010000000000000000000001
+11011010001000000000000000000000
+00100000001000000111000111100110
+00011000010000010010001000001111
+11011111111000000000010111100110
+10011000010000001111111000000000
+10011010001001100000110000000000
+11011000101000000000101011110010
+00100000010000000111001001000101
+11011010011000000000101011100010
+11011010001000000000101011110010
+11011000101000000000101100000010
+11011111001000000000000000000100
+00100000010000000111111011011101
+00100000010000000111010010010001
+00100000010000000111010000101000
+11011000110000000000010111100110
+00011010010000001010010111111111
+00011010010000100111111000000000
+00100000001110100111000111111001
+00100000010000000111010010000110
+00100000010000000111010000100010
+00100000001000000111000111110011
+11011000101000000000101011110010
+00100000010000000111010010010111
+11011000110000000000101100000010
+00100000010000000111010010000110
+00100000010000000111010000101000
+11011000110000000000101011110010
+00100000010000000111010010000110
+00100000001000000111010000100010
+00011000101000100010001000000000
+00100000010000000111010010010111
+11011111001000000000000000010000
+00100000001000000111111011100101
+11011000101000000000101011000010
+00100000010000000111111010111111
+11011111001000000000000000010000
+11011010001000000000101011000010
+00100000001000000111111011100101
+01101000000000001000010111100101
+00011111111000100111001000000000
+11011010001000000000010111100110
+00100000001000000111111011100101
+11101010001000001000000000000000
+00011111111000111111111000000000
+00101010011011111111111000000000
+01111001001000001111111000000000
+00101111111011111111111000001000
+01111001001000001010011000000000
+11100010001000001000000000000000
+00011010001000001010001111111111
+11000010000000000111001000001110
+00100000011000000000000000000000
+11011010001000000000101011010010
+00011010001000001010001000001111
+00011000000000000111001000010000
+00011000000000000010011000000000
+00100000001000000111001000001110
+11011010001000000000101011100010
+00100000001000000111001000011001
+11011000110000000000101011000010
+00100000010000000111010010000100
+00011000000000000111000000001000
+00100000010000000111010010010010
+00100000010000000111010010010001
+00100000010000000111010000011111
+11011000101000000000101011010010
+00100000010000000111010010010111
+01000111011011110100000000111011
+01101000000000001000101011010010
+00101111111011111111111000000111
+00100100001000001111001000110000
+00100000010000000111001000011000
+11011010011000000000101011010010
+11011000101000000000101011010010
+00100000010000000111001000111010
+00100000001000000111001000110001
+00100000010000000111001000011000
+11011000110000000000101011010010
+11011000101000000000101011100010
+00100000010000000111111010111111
+01101000000000001000101011100010
+00101111111011111111111000000111
+00100100001000001111001000011101
+00100000010000000111001000011101
+11011010011000000000101011100010
+11011000101000000000101011100010
+11011111001000000000000000000011
+11011000010000000000000000000000
+00100000010000000111001001000001
+00011010011000001010011000000100
+11000010000000000111001000111011
+11011000010000001000011100000000
+00011000010100000000010000000000
+11101010011000100000000000000000
+10011000010000101111111000000000
+11100000101000100000000000000000
+00100000011000000000000000000000
+01000111011011111100000000111011
+11011111001000000000000000010000
+11011111111000000000000000000000
+10011010001001100111110000000000
+00100000001000101111001001010000
+00100000001000010111001001010011
+11101000110010001000000000000000
+11100000101010001000000000000000
+00011111111000001111111000000001
+11000010000000000111001001001000
+00100000011000000000000000000000
+11011000010000000000000010000000
+11100000101010001000000000000000
+00100000001000000111001001001101
+11011000010000000000000000000000
+00100000001000000111001001010001
+00100000010000000111001001101000
+11011000110000000000010110010010
+11011000101000000000010110000010
+00100000001000000111111010111111
+01111000010101000111110000000000
+00100000010000000111001101011111
+11011000110000000000010101100010
+11011000101000000000010110100010
+00011000000000000111001000001111
+00100000010000000111111100000001
+11101000110000001000000000000000
+00011111111000101111111000000110
+11100000101000001000000000000000
+01011000000000000000010110110010
+01100000000000010000010111010110
+01011000000000000000010110100010
+01100000000000010000010111010100
+01111001001000000000000000010010
+00100000001000000111001010101000
+01101000000010001100011010001001
+00011000000000000010010000010000
+00011000010000001010011000000110
+00011010011001100111110000010000
+00100000001000010111001001101110
+00011000000000000010011000010000
+11011000101000000000010110100010
+11011000110000000100011010001010
+00011000010000100111001000000000
+01111000010101000111110000000000
+11101000110000001000000000000000
+11100000101000001000000000000000
+00011010010000001010010111111111
+00100000001000101111001001111100
+11000010000000000111001001110010
+00100000001101000111001001101111
+01111000001101000111110000000000
+00011000000000000111001000000110
+00011010001000100000110000000000
+00100000001000000111001001110010
+11011000110000000000010101100010
+11011000101000000000010110110010
+00100000010000000111111010111111
+01101000000000001000010111000001
+10011010011000101111111000000000
+01100000000000001000010111000001
+01011000000000000000010110110010
+01100000000000010000010111010110
+01011000000000000000010110100010
+01100000000000010000010111010100
+01111001001000000000000000010010
+00100000001000000111001010101000
+01111000010101000111110000000000
+00100000010000000111001101011111
+00100000001000000111001010010010
+11011010001000000000000001010110
+01111000001101000111110000000000
+00100000010000000111001101011111
+00100000010000000111001010010010
+11011000110000000000010110010010
+11011000101000000000000001100010
+00100000001000000111111010111111
+01011000000000000000010101100010
+01100000000000010000010111010110
+01011000000000000100000110111110
+01100000000000010000010111010100
+01111001001111111000000000010010
+00100000010000000111001010101000
+11011010001000000000010110010010
+11011010010000000000010101100010
+11011000101000000000010110100010
+00100000010000000111001101010010
+11011010001000000000010110100010
+11011010010000000000010110110010
+00011010010000100000101000000000
+01111000001101000111110000000000
+00100000010000000111001101010000
+00100000010000000111001101101010
+01011000000000000000010110110010
+01100000000000010000010111010110
+01011000000000000000010110100010
+01100000000000010000010111010100
+01111001001000000000000000010010
+00100000001000000111001010101000
+01110000000001011101100000000000
+01101000000000010000010111010100
+10011000000000000000110000000000
+11011000101000000000010111000010
+00100000010000000111111010111111
+01101000000000010000010111010110
+10011000000000000000110000000000
+11011000101000000000010110010010
+00100000010000000111111010111111
+00100000010000000111001011001111
+01111000010101000111110000000000
+11000101100010010111001010111001
+01101000000000001000010111011000
+11000000100000100111001010111001
+01101000000000010000010111010110
+10011000000000000010010000000000
+00100000010000000111001100000001
+00100000010000000111001100000000
+00100000010000000111001100010011
+01101000000000001000010111011000
+00011111111000001111111000000001
+01100000000000001000010111011000
+00100000010000000111001011001111
+01111000001101000111110000000000
+00100000010000000111001100000000
+00100000010000000111001100100010
+00100000010000000111001100110001
+00100000010000000111001100100010
+00100000010000000111001100110001
+00100000010000000111001100100010
+00100000010000000111001100110001
+00100000010000000111001100100010
+01101000000000001000010111011000
+00011111111000001111111000000001
+01100000000000001000010111011000
+11000000100010000111001010110001
+00100000010000000111001011001111
+01111000010101000111110000000000
+00100000001000000111001100000000
+01101000000000001000010111011000
+11011000110000000000010111000010
+00100000001110100111001011110110
+10011000000000000010010000000000
+00011000000000000111001000010001
+00011000110000100000101000000000
+11101000110000001000000000000000
+00011111111010011000010000000000
+00011111111010110111111000000000
+00011111111010010111111000000000
+10011000010000011111111000000000
+11100000101000001000000000000000
+11000010000000000111001011010101
+01011000000000000000010111000010
+10011010010000001000110000000000
+00011000000000000111001000010000
+11011000101000000000010101110010
+11101000110000001000000000000000
+11100000101000001000000000000000
+00101000110000011111111111010011
+00100100001000001111001011100101
+00011000110000001000110111101111
+11000010000000000111001011100000
+00011000000000000010001000000000
+00011010010000001010011111111111
+00011010011010111010011000000000
+00011010011010111010011000000000
+00100000010000000111010010111001
+01011000000000001000010000000000
+10011010011000001010011000000000
+11011000101000000000010101110010
+00011000000000000111001000010000
+11101010011010001000000000000000
+11101000101000001000000000000000
+10011000010000001111111000000000
+11100000101000001000000000000000
+00011010011000001010011000000001
+11000010000000000111001011101111
+00100000001000000111010010111101
+00011000000000000111001000010000
+00011000000000000000010000000000
+11101000110000001000000000000000
+10011000010000101000010000000000
+11000010000000000111001011111000
+00011000010000100111111000000000
+11100000110000001000000000000000
+11011000110000000000010111000010
+11011000101000000000010101110010
+00100000001000000111111010111111
+11011010010000000000010101110010
+00011000000000000111001000010000
+11011010001000000000010110010010
+00011010001000100000101000000000
+11101010001010001000000000000000
+11101010010000001000000000000000
+10011000010000101110000000000000
+00011111001000010010011000000011
+00100100001101000111001100001010
+00011010011000101010011000000011
+00011010011001100010011000000001
+00100000001000010111001100001101
+10011000010000001110000000000000
+00011110000000100111111000000000
+11100000101000001000000000000000
+00011010001000001010001000000001
+00011010010000001010010000000001
+11000010000000000111001100000100
+00100000011000000000000000000000
+00100000010000000111010010111001
+00011000000000000111001000010000
+11011010001000000000010110010010
+11101010001000001000000000000000
+11011000110000001000010100000000
+00011111001000010010011000000011
+00011010011001100111110000000001
+00100000001000010111001100011100
+11011000110000001000011000000000
+10011000110000001000110000000000
+11101000110000001000000000000000
+11100010001000001000000000000000
+00011010001000001010001000000001
+11000010000000000111001100010110
+00100000001000000111010010111101
+00011000000000000111001000001000
+11011000110000000000010110010010
+00011000110000100000101000000000
+11101000110000001000000000000000
+10011000000000000010001000000000
+11101000110000001000000000000000
+10011000000000000010010000000000
+00011010001000111111111000000000
+10011010010000001111111000000000
+11100000101000001000000000000000
+00011010001000100111111000000000
+10011010010000001111111000000000
+11100000101000001000000000000000
+11000010000000000111001100100101
+00100000011000000000000000000000
+01011000100010101110010000101100
+10011000000000000000010000000000
+00011000000000000111001000000111
+00100000010000000111001101000000
+01011000000011010111010100011011
+10011000000000000000010000000000
+00011000000000000111001000000101
+00100000010000000111001101000000
+01101000000000001000010110100001
+10011000000000000010001000000000
+01101000000000001000010110010101
+01100000000000001000010110100001
+00011010001000100111111000000000
+01100000000000001000010110010101
+00100000011000000000000000000000
+00011000010000010010010000001111
+00011000010000010111111000001111
+11011000101000000000010110010010
+10011000101000001000101000000000
+11101000101000001000000000000000
+10011000000000000010011000000000
+00011010001000100111111000000000
+11100000101000001000000000000000
+00011010011000100010001000000000
+00011000010100011000010000000000
+11000010000000000111001101000001
+01011000000000000000010110010010
+10011010010000001000101000000000
+00011010001000100111111000000000
+11100000101000001000000000000000
+00100000011000000000000000000000
+01111000001101000111110000000000
+00100000001000000111001101010011
+01111000010101000111110000000000
+00011000000000000111001000010000
+11101010001010001000000000000000
+11101010010000001000000000000000
+00100000001101000111001101011001
+10011000010000101111111000000000
+00100000001000000111001101011010
+10011000010000001111111000000000
+11100000101000001000000000000000
+00011010001000001010001000000001
+00011010010000001010010000000001
+11000010000000000111001101010100
+00100000011000000000000000000000
+11011000101000000000010110110010
+11101010001000110000000000000000
+11100000101000110000000000000000
+00100000001101000111001101100101
+11101010001000110000000000000000
+00100000001000000111001101100110
+11101000110000110000000000000000
+11100000101000110000000000000000
+11101010001000100000000000000000
+11100000101000100000000000000000
+00100000011000000000000000000000
+11011000110000000100000110111110
+11011000101000000000010110100010
+11011000010000000000000000000000
+01011000100000111001010110100111
+00100000010000000111001110001011
+01011000101100111100000111011111
+00100000010000000111001110001011
+01011000000000001110010111101001
+00100000010000000111001110001100
+00011000010000100010100000000000
+01111000010101000111110000000000
+00100000010000000111001101111001
+00011010100000100000010000000000
+01111000001101000111110000000000
+00100000001000000111001101111001
+00011000000000000111001000001000
+11101000110000001000000000000000
+00101111001000000000001000000001
+00100000001101000111001110000000
+00100000001000001111001110000001
+10011000010000001111111000000000
+00100000001000000111001110000010
+00100000001000001111001101111110
+10011000010000101111111000000000
+11100000101000001000000000000000
+00011000010011001000010000000000
+11000010000000000111001101111010
+00100000011000000000000000000000
+01101000000000110000010110010110
+01100000000000110000000001010110
+11101000110000110000000000000000
+11100000101000110000000000000000
+00100000011000000000000000000000
+00011000010011010000010000000000
+00011000010100000000010000000000
+10011000010000011000010000000000
+00100000011000000000000000000000
+00100000001000000111001110001111
+01000111011100000100000000111100
+00100000010000000111010000101011
+11011000101000000100010000011001
+00100000001000000111010010010111
+11011000101000000100010000111010
+00100000001101001111001110010111
+11011000101000000000010000101111
+00011000110000100010001000000000
+00100000010000000111111010111111
+00100000010000000111010001000000
+11011000110000000100010000101010
+00100000001000000111010010110000
+11011010001000000000010000101111
+00100000001101001111001110011111
+11011010001000000100010000111010
+00011010001000100000101000000000
+00100000010000000110001100001100
+00100000001000000111010001000000
+11011000110000000100010010101010
+00100000010000000111010010000110
+11011000110000000100010000011001
+00100000010000000111010010000111
+00011000000000000110110000111000
+00011000000000000110110000000000
+00100000010000000111010000011101
+11011000101000000000010001111100
+00100000001000000111010010010111
+00011000000000000111111001001001
+00100000001000000111001110101110
+00011000000000000111111000000001
+00011000000000000111000000000000
+00011000010011010101111000000000
+10011101111000011101111000000000
+00011111000000001111000000000001
+00011000010011001101111000000000
+00011101111100010101111000000000
+01101000000000010100010000010001
+00011111111100000111111000000000
+10011101111000011101111000000000
+00011111000000001111000000000001
+11101000110000100000000000000000
+10011000000000000101111000000000
+00011111000000001111000000000001
+11101000110000010000000000000000
+00011010001100001101111000000000
+00011101111100000101111000000000
+10011101111000011101111000000000
+00011111000000001111000000000001
+00100000011000000000000000000000
+00011010011000001000110000000001
+11101000110000001000000000000000
+10011000000000000010001000000000
+00100000010000000111001110101011
+00100000010000000111010000011111
+00011000000000000111000000000000
+11101010011000001000000000000000
+00011111111000010111111000000011
+00011111111100000101111000000000
+01111001001000000101111000001000
+00100000010000000111010010001111
+00100000010000000111010000100010
+00011010001000100111001000000000
+00011010011000001000110000000010
+00100000010000000111010001101110
+00100000010000000111010001111000
+00100000010000000111010000100010
+00011111001000100111111000000000
+00100000001110100111001111010101
+00100000001000000111001111010000
+00011000000000000111000000001100
+00011101111000100111111000000000
+01100000000000100000010000010111
+00100000011000000000000000000000
+00011010001000001010001000000001
+00100000010000000111001110101101
+00011010011000100000110000000000
+00100000010000000111010010000010
+00100000010000000111010000100101
+00100000010000000111010010011110
+00011010011000001010011000010000
+00011010010000001010010111110000
+00100000001000010111001111011001
+00100000011000000000000000000000
+01000111011100001100000000111100
+11011010011000000100001111011100
+01101000000010101100010000000011
+00100000010000000111001111000001
+00011000000000000111000000001000
+10011000000000000101111000000000
+00011000000000000010001000000000
+00100000010000000111001110101101
+00100000010000000111010000100101
+11011010011000000100001111011110
+01101000000000001100001111011101
+00011111111000001010010111111111
+10011010011000001000101000000000
+00011000000000000111000000001100
+00011101111000100111111000000000
+11100000101000100000000000000000
+00100000010000000111001111011001
+01101000000000001100001111011101
+00011111111000001111111000000100
+01100000000000001100001111011101
+01101000000010101100010000000011
+00011000010000001000010000000001
+01100000000010101100010000000011
+00100000011000000000000000000000
+01000111011100010100000000111100
+01101000000000001000001011011010
+00011111111001100111110000010100
+00100000001000010111001111111111
+11011010011000000000001011011011
+00011111111000001010010111111111
+00011111111000001111111111111100
+01100000000000001000001011011010
+10011010011000001000110000000000
+11101000110000100000000000000000
+00011000000000000111000000001000
+10011000000000000101111000000000
+00011000000000000010001000000000
+01101000000010101100010000001000
+00100000010000000111001110101101
+00100000010000000111010000100101
+00011000000000000111000000001100
+00011101111000100111111000000000
+01100000000000100000010000011011
+00100000010000000111001111011001
+11011010011000000000001011011001
+00100000010000000111001111000001
+01101000000010100000010000011011
+10011000010001100111111000000000
+00100100011110100000000000000000
+01101000000000100100010000001101
+10011000010001100111111000000000
+00100000011110100000000000000000
+01100000000010100100010000001101
+01101000000000101100010000001000
+00011111111000001111111000000001
+01100000000000101100010000001000
+00011000000000000111111000000000
+00100000011000000000000000000000
+00100100001110111111010000011101
+00100000011000000000000000000000
+00011000000000000110110000110000
+00011000000000000110110000000000
+00100000001000000111010000011101
+00011000000000000110110000110010
+00011000000000000110110000000010
+00100000001000000111010000011101
+00011000000000000110110000110100
+00011000000000000110110000000100
+00100000001000000111010000011101
+00011000000000000110110000000001
+00011000000000000110110000000000
+00100000011000000000000000000000
+00011000000000000111000000000000
+01101000000000100000010000101111
+10011000000000000101111000000000
+00011111000000001111000000000001
+11101000110000100000000000000000
+10011000000000000101111000000000
+00011111000000001111000000000001
+01101000000000100100010000111010
+10011000000000000101111000000000
+00011111000000001111000000000001
+11101000110000100000000000000000
+10011000000000000101111000000000
+00011111000000001111000000000001
+00100000010000000111010010010010
+00011111000000001111000111111100
+01101000000000100100010011000111
+00011111111000100101111000000000
+00011111000000001111000000000100
+00011000000000000110110000111000
+00011000000000000110110000001000
+00100000001000000111010000011101
+01000111011100011100000000111100
+01101000000000110100010010100000
+01101000000010110000010001001111
+00100000001101001111010001000110
+01101000000000110000010001001111
+01101000000010110100010010100000
+00011000000000000111000000001000
+00011000010000100101111000000000
+00011111000000001111000000000001
+00011000010011110101111000000000
+00011111111100000111111000000000
+10011101111000011101111000000000
+00011111000000001111000000000001
+00011111111011110101111000000000
+00011111000000001111000000000001
+00011000000000000101111000000000
+00011000000000000111111000000000
+01101000000000001100010010001110
+01101000000010001100010010000101
+00100100001101001111010001010110
+01101000000000001100010010010101
+01101000000010001100010010001110
+01100000000000001100010001001010
+01100000000010001100010001001011
+00011000000000000111000000000000
+11011010010000000100010001001010
+00011000000000000111001000000100
+11101010001000100000000000000000
+11101010010010100000000000000000
+10011000010000101101111000000000
+00011111000000001111000000000001
+00011010001000001010001000000100
+00011010010000001010010000000100
+11000010000000000111010001011011
+00100000010000000111010010010010
+00011111000000001111000111111100
+01101000000000100100010011000111
+00011111111000100101111000000000
+00011111000000001111000000000100
+00011000000000000110110000111000
+00011000000000000110110000001100
+00100000010000000111010000011101
+00100000010000000111010010010001
+00011000000000000110110000111010
+00011000000000000110110000001000
+00100000001000000111010000011101
+00101111001000000000011000000000
+00100000011000001000000000000000
+00011000110000100111111000000000
+10011111001000001000101000000000
+00011000000000000111111000000000
+11100000101000001000000000000000
+00011111001000001111001000000001
+00101111001000000000011000000000
+00100000011000001000000000000000
+00100000001000000111010001110011
+00011000000000000111000000000000
+00011111001000100111111000000000
+00100000001110100111010001111101
+11101000110000100000000000000000
+00011111001000001111001111111100
+10011000000000000101111000000000
+00011111000000001111000000000001
+00101111000000000001111000000100
+00100000011000001000000000000000
+00100000001000000111010001111001
+00011000000000000111000000001000
+00100000001000000111010010000111
+00011000000000000111000000000100
+00100000001000000111010010000111
+00011000000000000111000000000000
+00011000000000000111001000000100
+11101000110000100000000000000000
+10011000000000000101111000000000
+00011111000000001111000000000001
+11000010000000000111010010001000
+00100000011000000000000000000000
+11011000110000000000010001111100
+00100000001000000111010010000100
+00011000000000000111001000000100
+00100000001000000111010010010100
+00011000000000000111000000000000
+00011000000000000111001000000100
+00011000000000000101111000000000
+00011111000000001111000000000001
+11000010000000000111010010010011
+00100000011000000000000000000000
+00011000000000000111000000001100
+00011000000000000111001000000100
+00011101111000100111111000000000
+11100000101000100000000000000000
+00011111000000001111000000000001
+11000010000000000111010010011001
+00100000011000000000000000000000
+00011000000000000111000000001100
+00011010011000100000101000000000
+00011010010000001111001000000001
+00011111001001100111110000001111
+00100000001000010111010010100100
+00011000000000000111001000010000
+00011101111000100111111000000000
+00011111001001100111110000000011
+00100000001000010111010010101100
+11100000101000100000000000000000
+00011111001000001111001111111100
+00100000011000101000000000000000
+00011111000000001111000000000001
+00100000001000000111010010100100
+11100000101000001000000000000000
+00011111111011001111111000000000
+11000010000000000111010010101100
+00100000011000000000000000000000
+00011000000000000111000000001100
+00011000000000000111001000000100
+11101000110000100000000000000000
+10011101111001100111110000000000
+00100100011000101000000000000000
+00011111000000001111000000000001
+11000010000000000111010010110010
+00011000000000000111110000000000
+00100000011000000000000000000000
+01101000000100001000000001010000
+01111001001111111111111000000000
+01100000000100001000000001010000
+00100000011000000000000000000000
+01101000000100001000000001010000
+01111001001000000111111000000000
+01100000000100001000000001010000
+00100000011000000000000000000000
+11011000101000000000100010000110
+00111000000000111111111111111111
+00111000000001111111111111111111
+00111000000010111111111111111111
+00111000000011111111101111111111
+11100000101001001000000000000000
+00111000000000111111111111111111
+00111000000001111111111111111111
+00111000000010111111111111111111
+00111000000011111111111111111111
+11100000101001001000000000000000
+00111000000000111111111111111111
+00111000000001111111111111111111
+00111000000010111100111111111111
+00111000000011111111111111111111
+11100000101001001000000000000000
+00111000000000111111111111111111
+00111000000001111111111111111111
+00111000000010111111111111101111
+00111000000011111111111111111111
+11100000101001001000000000000000
+00111000000000111111111111111111
+00111000000001111111111111111111
+00111000000010111111111111111111
+00111000000011111111111111111111
+11100000101001001000000000000000
+00111000000000111111111111111111
+00111000000001100110110001111111
+00111000000010000001010001101011
+00111000000011110111101110110011
+11100000101001001000000000000000
+00111000000000011111111010111000
+00111000000001010000110000010010
+00111000000010101011011100100010
+00111000000011101001111110100110
+11100000101001001000000000000000
+00111000000000001110011100001111
+00111000000001010110011100100000
+00111000000010000101000110011110
+00111000000011011001000010000100
+11100000101001001000000000000000
+00111000000000110001000000010010
+00111000000001110110000010111111
+00111000000010111111000010101111
+00111000000011000000001111010011
+11100000101001001000000000000000
+00111000000000111010000110001000
+00111000000001000011101011010000
+00111000000010111100101111110010
+00111000000011100100001111011001
+11100000101001001000000000000000
+00111000000000101011000000110000
+00111000000001110110101000000011
+00111000000010010001000110001000
+00111000000011011110010100100000
+11100000101001001000000000000000
+00111000000000111010000100011110
+00111000000001001111111001011101
+00111000000010001101110101010111
+00111000000011011010110010010011
+11100000101001001000000000000000
+00111000000000000001000111101101
+00111000000001100001100011000100
+00111000000010001000110110100111
+00111000000011100101011111111111
+11100000101001001000000000000000
+00111000000000110001100100101011
+00111000000001110100011001000001
+00111000000010011011111000001100
+00111000000011110110011010101101
+11100000101001001000000000000000
+00111000000000000001111110000011
+00111000000001010101101000100011
+00111000000010111111100110110000
+00111000000011000011100101001001
+11100000101001001000000000000000
+00111000000000010011101001010001
+00111000000001010101001111111101
+00111000000010110011011100101010
+00111000000011001111000110111011
+11100000101001001000000000000000
+00111000000000111010111010000101
+00111000000001011110111011011001
+00111000000010001001111001100110
+00111000000011000000000110101000
+11100000101001000000000000000000
+00100000011000000000000000000000
+11011000101000000000100100011110
+00111000000000111111111111111111
+00111000000001111111111111111111
+00111000000010111111111111111111
+00111000000011111111111111111111
+11100000101001001000000000000000
+00111000000000111111111111111111
+00111000000001000000000000111111
+00111000000010000000000000000000
+00111000000011000000000000000000
+11100000101001001000000000000000
+00111000000000000000000000000000
+00111000000001000000000000000000
+00111000000010000001000000000000
+00111000000011000000000000000000
+11100000101001001000000000000000
+00111000000000111111111100000000
+00111000000001111111111111111111
+00111000000010111111111111001111
+00111000000011111111111111111111
+11100000101001001000000000000000
+00111000000000111111111111111111
+00111000000001111111111111111111
+00111000000010111111111111111111
+00111000000011000000001111111111
+11100000101001001000000000000000
+00111000000000000000000000000000
+00111000000001000000000000000000
+00111000000010000000000000000000
+00111000000011000000000000000000
+11100000101001001000000000000000
+00111000000000010000000000000000
+00111000000001000000000000000000
+00111000000010111111000000000000
+00111000000011111111111111111111
+11100000101001001000000000000000
+00111000000000101001011011111111
+00111000000001100010011000110000
+00111000000010111001010001011101
+00111000000011111101001010000100
+11100000101001001000000000000000
+00111000000000110011001110100000
+00111000000001000100101101111010
+00111000000010000011011111011000
+00111000000011111100100111011100
+11100000101001001000000000000000
+00111000000000111010010001000000
+00111000000001011011100101011000
+00111000000010111000101111001110
+00111000000011010000100100011111
+11100000101001001000000000000000
+00111000000000101110000100101100
+00111000000001011111010001111100
+00111000000010110101011010110001
+00111000000011101111110101000111
+11100000101001001000000000000000
+00111000000000000110100000110111
+00111000000001101110110110010000
+00111000000010011110110011101100
+00111000000011011010110011000101
+11100000101001001000000000000000
+00111000000000100011001101010111
+00111000000001011000101011110011
+00111000000010001111100111100001
+00111000000011010010100111110000
+11100000101001001000000000000000
+00111000000000101110011111101011
+00111000000001111110011011100011
+00111000000010111110000110100111
+00111000000011010000101110001011
+11100000101001001000000000000000
+00111000000000100100111111100011
+00111000000001000010000011101111
+00111000000010011011010110100110
+00111000000011001101110000101111
+11100000101001001000000000000000
+00111000000000010011100001100000
+00111000000001101011110101101001
+00111000000010000011100100011010
+00111000000011011011001000100010
+11100000101001001000000000000000
+00100000011000000000000000000000
+01101000000000001100011001011010
+00100100001110100111010101111101
+00100000001000000111101001110111
+01000111011100100100000000111100
+01101000000000001100011001011010
+00100000011110100000000000000000
+01101000000000001100010110110001
+11000001100000001000000000000000
+01101000000000001100010010111110
+00100000011110100000000000000000
+01101000000000001100010011000011
+11000001000000011000000000000000
+01101000000000010100011010000010
+11000010100000000111010101111011
+01101000000000001100010011000000
+11000000000000000111101001110111
+00100000011000000000000000000000
+01110000010001001100000000000000
+00100000011000000000000000000000
+01000111011100101100000000111100
+01101000000000001100011001011010
+00100000001110100110000100101011
+00100000010000000110000100100100
+00100000010000000111010110000011
+00100000001000000111011001101101
+01011000000000000000000000000000
+01100000000001000000100110101110
+01100000000000100000100110110110
+01100000000000111100011001011110
+00100000011000000000000000000000
+01110000000010011011000000000001
+00100000001000000111010110001101
+01101000000000001100010110110001
+11000000000000001111011010001010
+00100000001000000010101010001100
+01101000000000001100010110110001
+11000000000000001111010110010000
+00100000001000000111011001101101
+00100000010000000111011010001010
+01101000000000001000100110101111
+00100100011110100000000000000000
+01110000000010011010111000000011
+00100000011000000000000000000000
+00100000010000000111010110110000
+11011010001000000000100111011110
+11011000101000000000100001100110
+00100000010000000111110001111001
+11011010001000000000100110111110
+11011000101000000000100000100110
+00100000010000000111110001111001
+11011010001000000000100000100110
+11011010010000000000100110111110
+11011000101000000000100000100110
+00100000010000000111101111100001
+11011010001000000000100100111110
+11011010010000000000100110111110
+11011000101000000000100001000110
+00100000010000000111101111100001
+11011010001000000000100001000110
+11011010010000000000100000100110
+11011000101000000000100000100110
+00100000010000000111110001111101
+11011010001000000000100000000110
+11011010010000000000100000100110
+11011000101000000000100000000110
+00100000010000000111110001111101
+11011111001000000000000000100000
+11011010001000000000100001100110
+11011010010000000000100000000110
+00100000001000000111111110001000
+11011010001000000000100101111110
+11011000101000000000100000000110
+00100000010000000111110001111001
+11011010001000000000100101011110
+11011000101000000000100000100110
+00100000010000000111110001111001
+11011010001000000000100000100110
+11011010010000000000100101011110
+11011000101000000000100000100110
+00100000010000000111101111100001
+11011010001000000000100100111110
+11011010010000000000100101011110
+11011000101000000000100001000110
+00100000010000000111101111100001
+11011010001000000000100001000110
+11011010010000000000100000100110
+11011000101000000000100000100110
+00100000010000000111110001111101
+11011010001000000000100000000110
+11011010010000000000100000100110
+11011000101000000000100000000110
+00100000001000000111110010010110
+00100000010000000111010111100001
+11011010001000000000100111100110
+11011000101000000000100001100110
+00100000010000000111011110101000
+11011010001000000000100111000110
+11011000101000000000100000100110
+00100000010000000111011110101000
+11011010001000000000100000100110
+11011010010000000000100111000110
+11011000101000000000100000100110
+00100000010000000111011110000110
+11011010001000000000100010011110
+11011010010000000000100111000110
+11011000101000000000100001000110
+00100000010000000111011110000110
+11011010001000000000100001000110
+11011010010000000000100000100110
+11011000101000000000100000100110
+00100000010000000111011101010101
+11011010001000000000100000000110
+11011010010000000000100000100110
+11011000101000000000100000000110
+00100000010000000111011101010101
+11011111001000000000000000011000
+11011010001000000000100001100110
+11011010010000000000100000000110
+00100000001000000111111110001000
+11011010001000000000100011100110
+11011000101000000000100000000110
+00100000010000000111011110101000
+11011010001000000000100011001110
+11011000101000000000100000100110
+00100000010000000111011110101000
+11011010001000000000100000100110
+11011010010000000000100011001110
+11011000101000000000100000100110
+00100000010000000111011110000110
+11011010001000000000100010011110
+11011010010000000000100011001110
+11011000101000000000100001000110
+00100000010000000111011110000110
+11011010001000000000100001000110
+11011010010000000000100000100110
+11011000101000000000100000100110
+00100000010000000111011101010101
+11011010001000000000100000000110
+11011010010000000000100000100110
+11011000101000000000100000000110
+00100000001000000111011101011000
+01101000000000001000100110110010
+11000000100000000111011000010101
+00100000010000000111011000010010
+11011000101000000000101001111110
+01011000000000000000101000101110
+11100000101000010000000000000000
+01011000000000000100011001000010
+11100000101000010000000000000000
+01011000000000000000100111011110
+11100000101000010000000000000000
+00100000001000000111011000001001
+11011000101000000000101001111110
+01011000000000000000101000111110
+11100000101000010000000000000000
+01011000000000000000100111011110
+11100000101000010000000000000000
+01011000000000000100011001000010
+11100000101000010000000000000000
+00100000010000000111100110100000
+01101000000000001000100110101111
+11000000000000100111011000001111
+01110000000010011011000000000001
+01110000000010011010111000000101
+00100000011000000000000000000000
+01110000000010011010111100010100
+00100000010000000111010110001010
+00100000001000000111011011011000
+11011000101000000000101000011110
+00011000000000000000111000001000
+00100000001000000111011010100010
+01110000000010011011000000000001
+00100000011000000000000000000000
+01000111011100110100000000111100
+11011000101000000000011100100111
+01101000000000110100000010100000
+11100000101000110000000000000000
+01101000000000110000000001000000
+11100000101000110000000000000000
+01101000000000011100011001011110
+11100000101000011000000000000000
+00100000010000000111101000001101
+11011010001000000000101001001110
+11011010010000000000101001011110
+00011000000000000000111000000100
+00100000010000000111011010100111
+00100100001000001111011000110001
+00100000010000000111011000101000
+01110000000000000111110101000001
+00100000001000000110001011111000
+01101000000000001000100110101111
+11000000000001001111011000101110
+01110000000010011010111000001010
+01110000000010011011000000000001
+01110000000000000111110000000011
+00100000011000000000000000000000
+01110000000000000111110000000011
+01110000000010011010111100010101
+00100000001000000111011011011000
+01101000000000001000100110101111
+11000000000001001111011000110111
+01110000000010011010111000000000
+01110000000000000111110000000100
+01110000000000000111111000000101
+00100000011000000000000000000000
+01110000000000000111110000000100
+01110000000010011010111100000000
+00100000011000000000000000000000
+01101000000000001000100110110011
+11000000000000001111011000111110
+01110000000010011010111100001010
+00100000001000000111011011011000
+11011000101000000000011100100111
+01101000000000110000000001000000
+11100000101000110000000000000000
+01101000000000110100000010100000
+11100000101000110000000000000000
+01101000000000011100011001011011
+11100000101000011000000000000000
+00100000010000000111101000100100
+01101000000000001000100110101111
+11000000000001010111011001001011
+01110000000010011010111000001011
+01110000000010011011000000000001
+00100000011000000000000000000000
+01110000000010011010111100001011
+01110000000010011011000100000001
+00100000011000000000000000000000
+11011000101000000000101001111110
+01101000000000110000000001000000
+11100000101000110000000000000000
+01101000000000110100000010100000
+11100000101000110000000000000000
+01011000000000000000101000101110
+11100000101000010000000000000000
+01011000000000000000101000111110
+11100000101000010000000000000000
+00100000001000000111011001100010
+01110000000010011010111000001111
+11011000101000000000101001111110
+01101000000000110100000010100000
+11100000101000110000000000000000
+01101000000000110000000001000000
+11100000101000110000000000000000
+01011000000000000000101000111110
+11100000101000010000000000000000
+01011000000000000000101000101110
+11100000101000010000000000000000
+11011000101000000000011100100111
+01101000000000110000101001111110
+11100000101000110000000000000000
+01101000000000110000101010000100
+11100000101000110000000000000000
+00100000010000000111100111010111
+01110000010000011011110100000001
+11011000101000000100000110111110
+11011000110000000000101001001110
+00100000010000000111111010111111
+00100000001000000010000111000100
+01000111011100111100000000111100
+01101000000000001100010110110001
+11000001100000000000000000000000
+01101000000000001000100110110010
+11000001100000000000000000000000
+11011000101000000100011000010010
+00011000000000000000111000001011
+00100000010000000111011010100010
+00011000000010100111111000000000
+00011111111000110111111000000000
+11100000101000010000000000000000
+11011000101000000000011010111110
+11011000110000000100011000010010
+00100000010000000111111010111110
+11011000101000000000010111100110
+11011000110000000000100011001110
+00100000010000000111111010111100
+11011000101000000000011000010110
+00100000010000000111111011000101
+01110000000001100001011000000001
+00100000010000000111101001011101
+01110000000010011011001000000001
+00100000011000000000000000000000
+11011000101000000100011000101010
+11011000110000000000011000101110
+00100000010000000111111010111100
+01110000010001011011000100000001
+01110000000010011011001000000000
+00100000011000000000000000000000
+01000111011101000100000000111101
+01101000000000001000100110111001
+11000001100000000000000000000000
+01101000000000001000100110110010
+11000001100000000000000000000000
+11011000101000000000011010111110
+11011000110000000100011000010010
+00100000010000000111111010111110
+11011000101000000000010111100110
+11011000110000000000100111000110
+00100000010000000111111010111100
+11011000101000000000011000010110
+00100000010000000111111011000101
+01110000000001100001011000000001
+00100000010000000111101001011101
+01110000000010011011001000000010
+00100000011000000000000000000000
+01110000000010011011001100000001
+11011000101000000000101000000110
+11011000110000000000011000101110
+00100000010000000111111010111110
+01110000000010011011100100000001
+01110000000010011011001000000000
+00100000011000000000000000000000
+00011000111000001000111111111111
+00100100011000010000000000000000
+00011000000010100111111000000000
+11100000101000010000000000000000
+00100000001000000111011010100010
+00011000111000001000111111111111
+00100100001000010111011010110011
+11101010001000100000000000000000
+00011111111000100000010000000000
+11101010010000100000000000000000
+10011000010000101111111000000000
+00100100001000101111011010110001
+00011010001000001010001000000100
+00011010010000001010010000000100
+00100000001000000111011010100111
+01111000010000001111110000000000
+00100000011000000000000000000000
+01111000001000001111110000000000
+00100000011000000000000000000000
+01000111011101001100000000111101
+01101000000000001000100110110000
+00100000011110100000000000000000
+00100000010000000110001010111100
+00100100011110100000000000000000
+01110000000010011011000000000000
+01101000000000001000100110101110
+11000000000000011110000111111101
+11000000000000101110001000011010
+11000000000000111110001000100101
+11000000000001011110001000111010
+11000000000000010111010110001000
+11000000000000100111010111110111
+11000000000001001111011000010111
+11000000000001010111011000111010
+11000000000001100111011001011000
+00100000011000000000000000000000
+01000111011101010100000000111101
+01101000000000001000100110110001
+00100000011110100000000000000000
+00100000010000000110001010111100
+00100100011110100000000000000000
+01110000000010011011000100000000
+01101000000000001000100110101111
+11000000000010010110000111100000
+11000000000010011110000111100101
+11000000000000011110000111101001
+11000000000000100111011000000010
+11000000000010100110000111101101
+11000000000000111110000111111011
+11000000000001010111011000111010
+11000000000001011110001000111001
+11000000000001001111011000010111
+11000000000010101110001000110011
+00100000011000000000000000000000
+01110000000010011011000100000001
+00100000011000000000000000000000
+01110000000010011011000100000000
+00100000011000000000000000000000
+01000111011101011100000000111101
+01101000000000001100011001011010
+00100000011110100000000000000000
+01101000000000001000100110110010
+00100000011110100000000000000000
+00011111111000001111111010000000
+01100000000000001000100110110010
+11000011100000111000000000000000
+01101000000000001000010111100011
+00100000001110100111011011100111
+00100000001000000111101001101000
+00100000010000000111100011010011
+01101000000000001000100110110010
+11000000000000001111011010000100
+11000000000000010111011010011011
+00100000011000000000000000000000
+00011111111000010000111000000111
+00011111111010010111111000000000
+10011000110000001000110000000000
+11101000110000001000000000000000
+10101111111011000000000000000000
+00100000011000000000000000000000
+00100000010000000111111010111110
+00100000010000000111111010111110
+00100000001000000111111010111110
+11101000110001000000000000000000
+00100100011110100000000000000000
+11101000110001000000000000000000
+00100100011110100000000000000000
+11101000110001000000000000000000
+00100000011000000000000000000000
+11101010001000100000000000000000
+10011000000000000000010000000000
+11101010010000100000000000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+00011010001000001010001000000100
+00011010010000001010010000000100
+11000010000000000111011011111011
+00100000011000000000000000000000
+00011000000000000111001000000110
+00011010001000001010001000010100
+00011010010000001010010000010100
+11101010010000100000000000000000
+10011000000000000000010000000000
+11101010001000100000000000000000
+10011000010001100111111000000000
+00100100011000010000000000000000
+00100100011110100000000000000000
+00011010001000001010001111111100
+00011010010000001010010111111100
+11000010000000000111011100000111
+00100000011000000000000000000000
+00011000000000000111001000000110
+00011000000000000010011000000000
+11101010001000100000000000000000
+10011000000000000000010000000000
+11101010010000100000000000000000
+10011000010000001111111000000000
+10011010011000001111111000000000
+11100000101000100000000000000000
+00101111111011111111111000100000
+01111001001000001010011000000000
+00011010001000001010001000000100
+00011010010000001010010000000100
+11000010000000000111011100010011
+00100000011000000000000000000000
+00011000000000000111001000000110
+00011000000000000010011000000000
+11101010010000100000000000000000
+10011000000000000000010000000000
+11101010001000100000000000000000
+10011000010001100111111000000000
+10011010011001100111111000000000
+11100000101000100000000000000000
+00101111111011111111111000100000
+01111001001000001010011000000000
+00011010001000001010001000000100
+00011010010000001010010000000100
+11000010000000000111011100100001
+00100000011000000000000000000000
+00011000000000000111001000000110
+00011010001000001010001000010100
+00011000000000000010011000000000
+11101010001000100000000000000000
+00101111111011111111111000000000
+01111001001000001010011000000001
+00011111111000110111111000000000
+00101010011011111111111000000000
+01111001001000001111111000011111
+11100010001000100000000000000000
+00011010001000001010001111111100
+00011010011000110010011000000000
+11000010000000000111011100110000
+00100000011000000000000000000000
+00011000000000000111001000000110
+00011000000000000010011000000000
+11101010001000100000000000000000
+00101111111011111111111000011111
+01111001001000001010011000000001
+00011111111000111111111000000000
+00101010011011111111111000000000
+01111001001000001111111000000000
+11100010001000100000000000000000
+00011010001000001010001000000100
+00011010011000110010011000000000
+11000010000000000111011100111101
+00100000011000000000000000000000
+00100000010000000111011100111011
+00101010011011111111111000000000
+00100000001000001111011101010001
+11011010010000000000100010000110
+00011010001000100010011000000000
+00011010001000001010001111101000
+00100000010000000111011100000100
+00100100011000010000000000000000
+00011010011000100010001000000000
+00011010001000001010001111101000
+11011010010000000000100010000110
+00011010001000100000101000000000
+00100000001000000111011100011111
+00100000010000000111011100010001
+00011000101000100010001000000000
+00100000001000000111011101001001
+00100000010000000111011100011111
+00101010011011000000000000000000
+00100000011000001000000000000000
+11011010010000000000100010000110
+00011000101000001010001111101000
+00011010001000100000101000000000
+00100000001000000111011100010001
+00011000101000100001011000000000
+00011010001000100110000000000000
+11011010010000000000011100010110
+00011010010000100000101000000000
+00011010001000001000110000011000
+11101000110001000000000000000000
+11100000101001000000000000000000
+11100000101001000000000000000000
+00011000000000000111111000000000
+11100000101001000000000000000000
+00011001011000100000101000000000
+00100000010000000111011101010101
+11011010010000000000011100010110
+00011010010000100000101000000000
+00011000000000000111111000000000
+11100000101001000000000000000000
+00011110000000001000110000100000
+11101000110001000000000000000000
+11100000101001000000000000000000
+11100000101001000000000000000000
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000010000000111011101010101
+11011010010000000000011100010110
+00011010010000100000101000000000
+00011110000000001000110000101000
+11101000110001000000000000000000
+11100000101001000000000000000000
+11100000101001000000000000000000
+11100000101001000000000000000000
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000001000000111011101010101
+00011000000000000111001000000110
+11101000110000100000000000000000
+10011000000000000101111000000000
+00011111000000001111000000000001
+11000010000000000111011110000001
+00100000011000000000000000000000
+00011000101000100001011000000000
+11011000101000000000011011100110
+00100000010000000111111011000101
+11011000101000000000011011100110
+00011010001000100000110000000000
+00011000000000000111000000000000
+00100000010000000111011110000000
+00011010010000100000110000000000
+00100000010000000111011110000000
+00011000000000000010010000000000
+00011000000000000000010000000000
+00011000000000000010011000000110
+11101000101000100000000000000000
+10011000000000000010001000000000
+00011010010000100111000000000000
+00011101111000100111111000000000
+00011010011000100111000000000000
+10011101111011111111111000000000
+10011010001000001111111000000000
+10011000010000001111111000000000
+11100000101000100000000000000000
+00011111111011110000010000000000
+00011010011000001010011000000001
+00101010011000011111111000001100
+00100100001000001111011110010010
+00011000010000100111111000000000
+11100000101000100000000000000000
+00011000101000001000101111101000
+00011010010000001010010000000001
+00101010010000011111111000000110
+00100100001000001111011110010000
+11011010001000000000011011100110
+00011001011000100000101000000000
+00100000001000000111011101011111
+00011010001000100010010000000000
+00100000001000000111011110000110
+00011010001000100110000000000000
+00011110000000100010001000000000
+11101010001000001000000000000000
+00101111111011111111111000000000
+00100000011000001000000000000000
+00100000010000000111011100101101
+11101010010000001000000000000000
+00101111111011000000000000000000
+00100000001000001111011110111010
+11011010001000000000100010000110
+00011010010000100000101000000000
+00100000010000000111011100010001
+11101010010000001000000000000000
+10011010011000001111111000000000
+11100010010000001000000000000000
+00011010010000001010010111101000
+00011010010000001010001000011000
+00011000000000000111001000000111
+00100000010000000111011100101111
+00100000001000000111011110101011
+00011000101000100001011000000000
+11011000101000000000011101000110
+00100000010000000111111011000101
+00011000000000000111111000000000
+01100000000000100000011011111110
+01100000000000100000011101011110
+01110000000001110100011000000001
+11011000101000000000011011100110
+00100000010000000111111011000101
+11011000110000000000100010000110
+11011000101000000000011100010110
+00100000010000000111111010111110
+00011010001000100000110000000000
+11011000101000000000011100101110
+00100000010000000111111010111110
+11011000110000000000011100101110
+00100000010000000111011011110101
+00100000001110100111011111110110
+11011010001000000000011100101110
+11011010010000000000011101000110
+00100000010000000111011110101010
+11011010001000000000011100010110
+11011010010000000000011011100110
+00100000010000000111011110101010
+11011010001000000000011100101110
+11011010010000000000011100010110
+00100000010000000111011100000100
+00100000001000010111011111101000
+11011010001000000000011100010110
+11011010010000000000011100101110
+00011010001000100000101000000000
+00100000010000000111011100011111
+11011010001000000000011101000110
+11011010010000000000011011100110
+00011010010000100000101000000000
+00100000010000000111011100010001
+11101010001000001000000000000000
+10011010011000001010011000000000
+11101010010000001000000000000000
+10011010011000001111111000000000
+11100010010000001000000000000000
+00100000001000000111011111001101
+11011010001000000000011100101110
+11011010010000000000011100010110
+00011010001000100000101000000000
+00100000010000000111011100011111
+11011010001000000000011011100110
+11011010010000000000011101000110
+00011010010000100000101000000000
+00100000010000000111011100010001
+11101010001000001000000000000000
+10011010011000001010011000000000
+11101010010000001000000000000000
+10011010011000001111111000000000
+11100010010000001000000000000000
+00100000001000000111011111001101
+11011000101000000000011101000110
+00100000010000000111111011000101
+01101000000000001000011011111110
+01100000000000001000011101000110
+01100000000000001000011101001110
+11011010001000000000011101000110
+11011010010000000000011011100110
+00011010010000100000101000000000
+00100000010000000111011101010101
+11011010001000000000100010000110
+11011010010000000000011011100110
+00011001011000100000101000000000
+00100000001000000111011101011000
+11011010001000000000011010100110
+11011000101000000000011101011110
+00100000010000000111011110101000
+11011010001000000000011101011110
+11011000101000000000011101110110
+00100000010000000111011110101000
+11011010001000000000100010011110
+11011010010000000000011101110110
+11011000101000000000011101110110
+00100000010000000111011110000110
+11011010001000000000011001110110
+11011000101000000000011101011110
+00100000010000000111011110101000
+11011000110000000000011101011110
+11011000101000000000011100101110
+00100000010000000111111010111110
+11011010001000000000011100101110
+00100000010000000111011101001000
+11011010001000000000011101011110
+11011010010000000000011100101110
+11011000101000000000011101011110
+00100000010000000111011101010101
+11011010001000000000011101011110
+11011010010000000000011101110110
+11011000101000000000011101011110
+00100000010000000111011101010101
+11011000110000000000011001110110
+11011000101000000000011100101110
+00100000010000000111111010111110
+11011010001000000000011010001110
+11011000101000000000011101110110
+00100000010000000111011110101000
+11011010001000000000011100101110
+00100000010000000111011101001000
+11011010001000000000011100101110
+00100000010000000111011101001000
+11011010001000000000011100101110
+11011010010000000000011101110110
+11011000101000000000011100101110
+00100000010000000111011110000110
+11011010001000000000011101110110
+11011000101000000000011101000110
+00100000010000000111011110101000
+11011010001000000000011101000110
+00100000010000000111011101001000
+11011010001000000000011101000110
+00100000010000000111011101001000
+11011010001000000000011101000110
+00100000010000000111011101001000
+11011000110000000000011010001110
+11011000101000000000011101110110
+00100000010000000111111010111110
+11011010001000000000011101110110
+00100000010000000111011101001000
+11011010001000000000011101110110
+11011010010000000000011010100110
+11011000101000000000011010100110
+00100000010000000111011110000110
+11011010001000000000011101011110
+11011000101000000000011101110110
+00100000010000000111011110101000
+11011010001000000000011101110110
+11011010010000000000011100101110
+11011000101000000000011101110110
+00100000010000000111011101011000
+11011010001000000000011101110110
+11011010010000000000011100101110
+11011000101000000000011001110110
+00100000010000000111011101011000
+11011010001000000000011100101110
+11011010010000000000011001110110
+11011000101000000000011101110110
+00100000010000000111011101011000
+11011010001000000000011101110110
+11011010010000000000011101011110
+11011000101000000000011101110110
+00100000010000000111011110000110
+11011010001000000000011101110110
+11011010010000000000011101000110
+11011000101000000000011010001110
+00100000001000000111011101011000
+11011010001000000000011000010110
+11011000101000000000011110001110
+00100000010000000111011110101000
+11011010001000000000011001110110
+11011010010000000000011110001110
+11011000101000000000011101000110
+00100000010000000111011110000110
+11011010001000000000011000010110
+11011010010000000000011110001110
+11011000101000000000011110001110
+00100000010000000111011110000110
+11011010001000000000011010001110
+11011010010000000000011110001110
+11011000101000000000011100101110
+00100000010000000111011110000110
+11011010001000000000011010100110
+11011000101000000000011110001110
+00100000010000000111011110101000
+11011010001000000000010111100110
+11011010010000000000011110001110
+11011000101000000000011101011110
+00100000010000000111011110000110
+11011010001000000000011010100110
+11011010010000000000011110001110
+11011000101000000000011110001110
+00100000010000000111011110000110
+11011010001000000000010111111110
+11011010010000000000011110001110
+11011000101000000000011101110110
+00100000010000000111011110000110
+11011010001000000000011101000110
+11011010010000000000011101011110
+11011000101000000000011110001110
+00100000010000000111011101011000
+11011010001000000000011101000110
+11011010010000000000011101011110
+11011000101000000000011101000110
+00100000010000000111011101010101
+11011010001000000000011100101110
+11011010010000000000011101110110
+11011000101000000000011101011110
+00100000010000000111011101011000
+11011010001000000000011100101110
+11011010010000000000011101110110
+11011000101000000000011100101110
+00100000010000000111011101010101
+11011010001000000000011100101110
+11011010010000000000011110001110
+11011000101000000000011100101110
+00100000010000000111011110000110
+11011010001000000000011010100110
+11011010010000000000011000010110
+11011000101000000000011101110110
+00100000010000000111011110000110
+11011010001000000000011101110110
+11011010010000000000011110001110
+11011000101000000000011010100110
+00100000010000000111011110000110
+11011010001000000000011110001110
+11011000101000000000011110001110
+00100000010000000111011110101000
+11011010001000000000011110001110
+11011010010000000000011101000110
+11011000101000000000011101110110
+00100000010000000111011110000110
+11011010001000000000011110001110
+11011010010000000000011100101110
+11011000101000000000011100101110
+00100000010000000111011110000110
+11011010001000000000011101011110
+11011000101000000000011001110110
+00100000010000000111011110101000
+11011010001000000000011001110110
+11011010010000000000011101110110
+11011000101000000000011001110110
+00100000010000000111011101011000
+11011000110000000000011001110110
+11011000101000000000011110001110
+00100000010000000111111010111110
+11011010001000000000011110001110
+00100000010000000111011101001000
+11011010001000000000011101110110
+11011010010000000000011110001110
+11011000101000000000011101110110
+00100000010000000111011101011000
+11011010001000000000011101110110
+11011010010000000000011101011110
+11011000101000000000011101011110
+00100000010000000111011110000110
+11011010001000000000011101011110
+11011010010000000000011100101110
+11011000101000000000011010001110
+00100000010000000111011101011000
+11011010001000000000011010001110
+11011010010000000000100010000110
+11011000101000000000011010001110
+00011000000000000010011000000000
+01101000000000001000011010001110
+00101111111011111111111000000000
+00100000010000001111011100010001
+00011010011000100110000000000000
+11011010001000000000011010001110
+00100000010000000111011100101101
+01101000000000001000011010100101
+00101110000011111111111000000000
+01111001001000001111111000000111
+01100000000000001000011010100101
+00100000011000000000000000000000
+01101000000000001000010111100011
+00011111111000001111111111111111
+00100100011000010000000000000000
+01100000000000001000010111100011
+01101000000000001000010111100010
+00100000010110100111100000000011
+01101000000000001000010111100011
+11011000110000000000011010111110
+00100000010000000111011011101100
+00100000001000001111100011000000
+01101000000000001000010111100010
+00100100001110100111100011001110
+00100000010000000111100001010100
+00100000001000000111100011000000
+01110000000001011110001000000000
+11011000110000000000010111100110
+11011000101000000000011001110110
+00100000010000000111011011110010
+00100000001000000111100011000000
+11011010001000000000011010100110
+11011000101000000000011101110110
+00100000010000000111011110111110
+11011010001000000000011101110110
+11011000101000000000011100101110
+00100000010000000111011110101000
+11011010001000000000011001110110
+11011010010000000000011100101110
+11011000101000000000011000101110
+00100000010000000111011110000110
+11011010001000000000011101110110
+11011010010000000000011100101110
+11011000101000000000011101011110
+00100000010000000111011110000110
+11011010001000000000011010001110
+11011010010000000000011101011110
+11011000101000000000011001000110
+00100000001000000111011110000110
+11101000110000100000000000000000
+00011000000000000010001000000100
+00011000101000001000101000000011
+11100000101000001000000000000000
+00011111111011001111111000000000
+00011000101000001000101111111110
+00011010001000001010001111111111
+00100100001000101111100011101000
+00011000101000001000101000000101
+11000010000000000111100011100101
+00100000011000000000000000000000
+00011000111010111111111000000000
+10011001011000001000110000000000
+11101000110000100000000000000000
+00100000011000000000000000000000
+00011000000000000110000000010000
+11011001011000000000010111100110
+00011110000000001000111111111001
+00100000010000000111100011110000
+10011000000000000000010000000000
+00011110000000001000111111110000
+00100000010000000111100011110000
+10011000010000001000010000000000
+00011110000000001000111111111110
+00100000010000000111100011110000
+00011111111011100111111000000001
+10011000010000001000010000000000
+00011110000000001000111111110001
+00100000010000000111100011110000
+00011111111011100111111000000000
+10011000010000001000010000000000
+00011110000010111111111000000000
+10011001011000001000101000000000
+11100000101010100000000000000000
+00011110000000001110000000000001
+00101110000000011111111001000000
+00100100001000001111100011110110
+00100000011000000000000000000000
+11011000110000000000100011111110
+00011000000000000111000000000111
+11101000110000100000000000000000
+10011000000000000101111000000000
+00011111000000001111000111111111
+00100000001000010111100100001101
+00100000011000000000000000000000
+01000111011101100100000000111101
+00100000010000000111100011110100
+11011000101000000000011011100110
+00011000000000000111000000000000
+00011101111000100111111000000000
+11100000101000100000000000000000
+00011111000000001111000000000001
+00101111000000011111111000001000
+00100100001000001111100100010110
+00100000010000000111010010111001
+11011001011000001000011100000000
+11011110000000000000010111100110
+00011000000000000111001001000000
+11101110000010100000000000000000
+11101001011000100000000000000000
+00011001011000001001011000000100
+00011110000000001110000000000100
+10011000010000001111111000000000
+00011000000000000111000000000111
+10011101111000001000010000000000
+00011000000000000111000000000100
+00011101111011100111111000000011
+10011000010000001000010000000000
+00011000000000000111000000000101
+00011101111000100111111000000000
+00011000000000000111000000000110
+10011101111000101111111000000000
+00011000000000000111000000000100
+10011101111000010111111000000000
+00011000000000000111000000000110
+10011101111000101111111000000000
+10011000010000001000010000000000
+00011000000000000111000000000111
+00011000010000100101111000000000
+00011000000000000111000000000011
+00011101111000100111111000000000
+10011000010000001101111000000000
+00011000000000000111000000000000
+00011101111000100111111000000000
+00011000000000000111000000000001
+10011101111000010000010000000000
+10011101111000011111111000000000
+00011000000000000111000000000010
+10011101111000010111111000000000
+10011000010000011000010000000000
+00011000000000000111000000000000
+00011101111011100111111000000010
+10011000010000001111111000000000
+00011000000000000111000000000111
+10011101111000001101111000000000
+10011000000011101111110000000000
+11000010000000000111100100011111
+11011000110000000000011011100110
+00011000000000000111000000000000
+11101000110000100000000000000000
+10011101111000001101111000000000
+00011111000000001111000000000001
+00101111000000011111111000001000
+00100100001000001111100101001000
+00100000001000000111010010111101
+11011000101000000000101000111110
+00011000000000000111000000000111
+00011101111000100111111000000000
+11100000101000100000000000000000
+00011111000000001111000111111111
+00100000001000010111100101010000
+00100000011000000000000000000000
+11011000101000000000010111100110
+00011000110000001000110111111100
+00011111001001100010001000010000
+11101000110000100000000000000000
+10011000010000101111111000000000
+11100000101000100000000000000000
+00011000110000001000110111111000
+11000010000000000111100101011000
+00011010001000100111001000000000
+00011000010000100111111000000000
+11100000101000100000000000000000
+11000010000000000111100101011111
+00100000011000000000000000000000
+00100000010000000111100101100111
+00100000010000000111100101001110
+00100000001000000111100110001101
+00100000010000000111100101100111
+00100000001000000111100110001101
+11011000110000000000100111011110
+11011000101000000000010111100110
+00011000000000000111001000000110
+00100000010000000111101001110001
+11011000110000000100011001000010
+00011000000000000111001000000110
+00100000010000000111101001110001
+11011000110000000000101000111110
+00100000010000000111101001110000
+00100000010000000111100100001011
+00100000010000000111100100010010
+11011000110000000000101000101110
+11011000101000000000010111100110
+00100000001000000111100110000100
+11011000110000000100011001000010
+11011000101000000000010111100110
+00011000000000000111001000000110
+00100000010000000111101001110001
+11011000110000000000100111011110
+00011000000000000111001000000110
+00100000010000000111101001110001
+11011000110000000000101000101110
+00100000010000000111101001110000
+00100000010000000111100100001011
+00100000010000000111100100010010
+11011000110000000000101000111110
+11011000101000000000010111100110
+00100000010000000111100110000100
+00100000001000000111100110001101
+00100000010000000111101001110000
+01011000100000000000000000000000
+00011111111011010111111000000000
+11100000101000100000000000000000
+00011000000000000111001000000101
+00100000010000000111111011000110
+01011000000000000000001010000000
+11100000101000100000000000000000
+00100000001000000111100100010010
+01101000000000100000101000111110
+11011010001000000000001111101000
+10011010001001101111110000000000
+00100000010000000111111110000110
+00011000000001110111111000000000
+01100000000000100000100110111010
+00011000000001111111111000000000
+11011010001000000000001111101000
+10011010001001101111110000000000
+00100000010000000111111110000110
+00011000000001110111111000000000
+11011010001000000000001111101000
+10011010001011111111111000000000
+01101000000010100000100110111010
+10011000010000001111111000000000
+01100000000000100000100110111010
+00100000011000000000000000000000
+01110000010001100110010000000000
+00100000001000000111100110100010
+01101000000000001100011001100010
+11000000100000010111100110011110
+01000111011101101100000000111101
+01011000001101100011011000110110
+00011111111011010000010000000000
+00011000010000011000010000110110
+01101000000000010000101001111110
+00011111111000100000110000000000
+00011000000000000111001000000100
+00100000010000000111100101010101
+00100000010000000111100100001011
+00100000010000000111100100010010
+01101000000000010000101010000000
+00011111111000100000110000000000
+11011000101000000000010111100110
+00011000000000000111001000000110
+00100000010000000111101001110001
+01101000000000010000101010000010
+00011111111000100000110000000000
+00011000000000000111001000000110
+00100000010000000111101001110001
+01011000100000000000000000000000
+11100000101000011000000000000000
+01101000000000001100011001100100
+11100000101000001000000000000000
+00011000000000000111111000000000
+11100000101001000000000000000000
+01011000000000000000001110001000
+11100000101000100000000000000000
+00100000010000000111100100010010
+00100000010000000111100101001110
+11011000110000000000101000111110
+11011000101000000000011100000110
+00100000010000000111111010111101
+01011000010111000101110001011100
+00011111111011010000010000000000
+00011000010000011000010001011100
+01101000000000010000101001111110
+00011111111000100000110000000000
+00011000000000000111001000000100
+00100000010000000111100101010101
+00100000010000000111100100001011
+00100000010000000111100100010010
+11011000110000000000011100100110
+11011000101000000000010111100110
+00011000000000000111001000001000
+00100000010000000111101001110001
+01011000100000000000000000000000
+00011111111011010111111000000000
+11100000101000100000000000000000
+00100000010000000111111011000101
+01011000000000000000001100000000
+11100000101000100000000000000000
+00100000010000000111100100010010
+00100000001000000111100101001110
+01011000001101100011011000110110
+00011111111011010000010000000000
+00011000010000011000010000110110
+11011000110000000000101000011110
+00011000000000000111001000000110
+00100000010000000111100101010101
+00100000010000000111100100001011
+00100000010000000111100100010010
+01101000000000010000101010001010
+00011111111000100000110000000000
+11011000101000000000010111100110
+00100000010000000111101001110000
+01101000000000010000101010001100
+00011111111000100000110000000000
+00100000010000000111101001110000
+01011000011000100111010001101100
+00011111111011010111111000000000
+00011111111000011111111001101011
+11100000101000100000000000000000
+11011000110000000000011100110011
+00011000000000000111001000000011
+00100000010000000111101001110001
+01011000100000000000000000000000
+00011111111011010111111000000000
+11100000101000100000000000000000
+00011000000000000111111000000000
+11100000101001000000000000000000
+01011000000000000000001110000000
+11100000101000100000000000000000
+00100000010000000111100100010010
+00100000010000000111100101001110
+11011000110000000000101000111110
+11011000101000000000011100000110
+00100000010000000111111010111101
+01011000010111000101110001011100
+00011111111011010000010000000000
+00011000010000011000010001011100
+11011000110000000000101000011110
+00011000000000000111001000000110
+00100000010000000111100101010101
+00100000010000000111100100001011
+00100000010000000111100100010010
+11011000110000000000011100100110
+11011000101000000000010111100110
+00011000000000000111001000001000
+00100000010000000111101001110001
+01011000100000000000000000000000
+00011111111011010111111000000000
+11100000101000100000000000000000
+00100000010000000111111011000101
+01011000000000000000001100000000
+11100000101000100000000000000000
+00100000010000000111100100010010
+00100000001000000111100101001110
+01101000000000001100011001100010
+11000000100000010111101000011110
+01000111011101110100000000111101
+01011000001101100011011000110110
+00011111111011010000010000000000
+00011000010000011000010000110110
+11011000110000000000101000011110
+00011000000000000111001000000110
+00100000010000000111100101010101
+00100000010000000111100100001011
+00100000010000000111100100010010
+11011000110000000000101000111110
+11011000101000000000010111100110
+00100000010000000111101001110000
+11011000110000000000101000101110
+00100000010000000111101001110000
+00100000001000000111101000110011
+01011000000000000000000000000000
+01100000000000100100011010001010
+00100000001000000111101000001111
+01011000000000000000000000000000
+01100000000000100100011010001010
+00100000001000000111101000100110
+01101000000000001100011001100010
+11000000100000010111101000100001
+01011000001101100011011000110110
+00011111111011010000010000000000
+00011000010000011000010000110110
+11011000110000000000101000011110
+00011000000000000111001000000110
+00100000010000000111100101010101
+00100000010000000111100100001011
+00100000010000000111100100010010
+11011000110000000000101000101110
+11011000101000000000010111100110
+00100000010000000111101001110000
+11011000110000000000101000111110
+00100000010000000111101001110000
+01011000000000000000000000000000
+11100000101001000000000000000000
+11100000101000100000000000000000
+01101000000000100100011010001010
+11100000101000100000000000000000
+00011000101000100000010000000000
+01110000000001110010011010000000
+00011000010000100000101000000000
+11011000110000000000011100110110
+00100000010000000111101001110000
+00100000010000000111100100010010
+11011000101000000000010111100110
+00011000000000000111001000000111
+00100000010000000111111011000110
+11100000101000100000000000000000
+01011000000000000000001111111000
+11100000101000100000000000000000
+00100000010000000111100100010010
+00100000010000000111100101001110
+11011000110000000000101000111110
+11011000101000000000011100000110
+00100000010000000111111010111101
+01011000010111000101110001011100
+00011111111011010000010000000000
+00011000010000011000010001011100
+11011000110000000000101000011110
+00011000000000000111001000000110
+00100000010000000111100101010101
+00100000010000000111100100001011
+00100000010000000111100100010010
+11011000110000000000011100100110
+11011000101000000000010111100110
+00011000000000000111001000001000
+00100000010000000111101001110001
+01011000100000000000000000000000
+00011111111011010111111000000000
+11100000101000100000000000000000
+00100000010000000111111011000101
+01011000000000000000001100000000
+11100000101000100000000000000000
+00100000010000000111100100010010
+00100000001000000111100101001110
+01110000000001011110001111000000
+01101000000000001000010111100011
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001000010111100011
+11011000110000000000011010111110
+00100000010000000111011011101100
+00100000001000001111101001011110
+11011000110000000000010111100110
+11011000101000000000011001110110
+00100000001000000111011011110010
+00100000010000000111100000000011
+01101000000000001000010111100011
+00011111111000001111111111111111
+01100000000000001000010111100011
+11011000110000000000011010111110
+00100000010000000111011011101100
+00100000011000001000000000000000
+00100000001000000111100001010100
+00011000000000000111001000000100
+00011000110000001000110111111100
+11101000110000100000000000000000
+11100000101000100000000000000000
+00011000110000001000110111111000
+11000010000000000111101001110010
+00100000011000000000000000000000
+01000111011101111100000000111101
+01101000000000001100010010111110
+00100000001110100101101011110000
+00100000010000000101101011101100
+00100000010000000111010110000011
+00100000001000000111101001111101
+01101000000000001100010011000011
+11000001100000000000000000000000
+01101000000000001100010011000000
+11000001100000000000000000000000
+11011000101000000100010110110010
+00011000000000000000111000001111
+00100000010000000111011010100010
+00011000000010100111111000000000
+00011111111000110111111000000000
+11100000101000010000000000000000
+11011000101000000000011101100110
+11011000110000000100010110110010
+00100000010000000111111010111101
+11011000101000000000011001000110
+11011000110000000000100101011110
+00100000010000000111111010110011
+11011000101000000000011010000110
+00100000010000000111111011010000
+01110000000001101000011000000001
+00100000010000000111101011000111
+01110000010001001100000000000011
+00100000011000000000000000000000
+11011000101000000100010111010010
+11011000110000000000011010100110
+00100000010000000111111010110011
+01110000010001001100001100000011
+01110000010001001100000000000000
+00100000011000000000000000000000
+01101000000000001000100110111001
+11000001100000000000000000000000
+01101000000000001100010011000000
+11000001100000000000000000000000
+11011000101000000000011101100110
+11011000110000000100010110110010
+00100000010000000111111010111101
+11011000101000000000011001000110
+11011000110000000000100110111110
+00100000010000000111111010110011
+11011000101000000000011010000110
+00100000010000000111111011010000
+01110000000001101000011000000001
+00100000010000000111101011000111
+01110000010001001100000000000100
+00100000011000000000000000000000
+11011000101000000000100111111110
+11011000110000000000011010100110
+00100000010000000111111010111101
+01110000000010011011100100000011
+01110000010001001100000000000000
+00100000011000000000000000000000
+01101000000000001100010010111110
+00100000011110100000000000000000
+01101000000000001100010011000000
+00100000011110100000000000000000
+00011111111000001111111010000000
+01100000000000001100010011000000
+11000011100000111000000000000000
+01101000000000010000010111100011
+00100000001110100111101010111001
+00100000001000000111101010111111
+01000111011110000100000000111110
+00100000010000000111101011010100
+01101000000000001100010011000000
+11000000000000011111101010010011
+11000000000000100111101010101001
+00100000011000000000000000000000
+00100000010000000111101011100110
+01101000000000010000010111100011
+00011111111000001111111111111111
+01100000000000010000010111100011
+11011000110000000000011101100110
+00100000010000000111011011101100
+00100000011000001000000000000000
+00100000001000000111101100110111
+01000111011110001100000000111110
+01011000000000000000000100000000
+01100000000000010000010111100011
+01101000000000010000010111100011
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000010000010111100011
+11011000110000000000011101100110
+00100000010000000111011011101100
+00100000001000001111101011001010
+11011000110000000000011001000110
+11011000101000000000011100000110
+00100000001000000111111010110010
+11011010001000000000011101000110
+11011000101000000000100001000110
+00100000010000000111101110100011
+11011010001000000000100001000110
+11011000101000000000011111100110
+00100000010000000111110001111001
+11011010001000000000011100000110
+11011010010000000000011111100110
+11011000101000000000011010100110
+00100000010000000111101111100001
+11011010001000000000100001000110
+11011010010000000000011111100110
+11011000101000000000100000100110
+00100000010000000111101111100001
+11011010001000000000011100100110
+11011010010000000000100000100110
+11011000101000000000011011000110
+00100000001000000111101111100001
+11011010001000000000011101000110
+11011000101000000000100000100110
+00100000010000000111110001111001
+11011010001000000000100000100110
+11011000101000000000100001000110
+00100000010000000111110001111001
+11011010001000000000100100111110
+11011010010000000000100001000110
+11011000101000000000100001000110
+00100000010000000111101111100001
+11011010001000000000011100000110
+11011000101000000000100000100110
+00100000010000000111110001111001
+11011000110000000000100000100110
+11011000101000000000011111100110
+00100000010000000111111010111101
+11011010001000000000011111100110
+00100000010000000111110010000000
+11011010001000000000100000100110
+11011010010000000000011111100110
+11011000101000000000100000100110
+00100000010000000111110001111101
+11011010001000000000100000100110
+11011010010000000000100001000110
+11011000101000000000100000100110
+00100000010000000111110001111101
+11011000110000000000011100000110
+11011000101000000000011111100110
+00100000010000000111111010111101
+11011010001000000000011100100110
+11011000101000000000100001000110
+00100000010000000111110001111001
+11011010001000000000011111100110
+00100000010000000111110010000000
+11011010001000000000011111100110
+00100000010000000111110010000000
+11011010001000000000011111100110
+11011010010000000000100001000110
+11011000101000000000011111100110
+00100000010000000111101111100001
+11011010001000000000100001000110
+11011000101000000000100000000110
+00100000010000000111110001111001
+11011010001000000000100000000110
+00100000010000000111110010000000
+11011010001000000000100000000110
+00100000010000000111110010000000
+11011010001000000000100000000110
+00100000010000000111110010000000
+11011000110000000000011100100110
+11011000101000000000100001000110
+00100000010000000111111010111101
+11011010001000000000100001000110
+00100000010000000111110010000000
+11011010001000000000100001000110
+11011010010000000000011101000110
+11011000101000000000011101000110
+00100000010000000111101111100001
+11011010001000000000100000100110
+11011000101000000000100001000110
+00100000010000000111110001111001
+11011010001000000000100001000110
+11011010010000000000011111100110
+11011000101000000000100001000110
+00100000010000000111110010010110
+11011010001000000000100001000110
+11011010010000000000011111100110
+11011000101000000000011100000110
+00100000010000000111110010010110
+11011010001000000000011111100110
+11011010010000000000011100000110
+11011000101000000000100001000110
+00100000010000000111110010010110
+11011010001000000000100001000110
+11011010010000000000100000100110
+11011000101000000000100001000110
+00100000010000000111101111100001
+11011010001000000000100001000110
+11011010010000000000100000000110
+11011000101000000000011100100110
+00100000001000000111110010010110
+11011010001000000000011010000110
+11011000101000000000100001100110
+00100000010000000111110001111001
+11011010001000000000011100000110
+11011010010000000000100001100110
+11011000101000000000100000000110
+00100000010000000111101111100001
+11011010001000000000011010000110
+11011010010000000000100001100110
+11011000101000000000100001100110
+00100000010000000111101111100001
+11011010001000000000011100100110
+11011010010000000000100001100110
+11011000101000000000011111100110
+00100000010000000111101111100001
+11011010001000000000011101000110
+11011000101000000000100001100110
+00100000010000000111110001111001
+11011010001000000000011001000110
+11011010010000000000100001100110
+11011000101000000000100000100110
+00100000010000000111101111100001
+11011010001000000000011101000110
+11011010010000000000100001100110
+11011000101000000000100001100110
+00100000010000000111101111100001
+11011010001000000000011001100110
+11011010010000000000100001100110
+11011000101000000000100001000110
+00100000010000000111101111100001
+11011010010000000000100000000110
+11011010001000000000100000100110
+11011000101000000000100001100110
+00100000010000000111110010010110
+11011010001000000000100000000110
+11011010010000000000100000100110
+11011000101000000000100000000110
+00100000010000000111110001111101
+11011010010000000000011111100110
+11011010001000000000100001000110
+11011000101000000000100000100110
+00100000010000000111110010010110
+11011010001000000000011111100110
+11011010010000000000100001000110
+11011000101000000000011111100110
+00100000010000000111110001111101
+11011010001000000000011111100110
+11011010010000000000100001100110
+11011000101000000000011111100110
+00100000010000000111101111100001
+11011010001000000000011101000110
+11011010010000000000011010000110
+11011000101000000000100001000110
+00100000010000000111101111100001
+11011010001000000000100001000110
+11011010010000000000100001100110
+11011000101000000000011101000110
+00100000010000000111101111100001
+11011010001000000000100001100110
+11011000101000000000100001100110
+00100000010000000111110001111001
+11011010001000000000100001100110
+11011010010000000000100000000110
+11011000101000000000100001000110
+00100000010000000111101111100001
+11011010001000000000100001100110
+11011010010000000000011111100110
+11011000101000000000011111100110
+00100000010000000111101111100001
+11011010001000000000100000100110
+11011000101000000000011100000110
+00100000010000000111110001111001
+11011010001000000000011100000110
+11011010010000000000100001000110
+11011000101000000000011100000110
+00100000010000000111110010010110
+11011000110000000000011100000110
+11011000101000000000100001100110
+00100000010000000111111010111101
+11011010001000000000100001100110
+00100000010000000111110010000000
+11011010001000000000100001000110
+11011010010000000000100001100110
+11011000101000000000100001000110
+00100000010000000111110010010110
+11011010001000000000100001000110
+11011010010000000000100000100110
+11011000101000000000100000100110
+00100000010000000111101111100001
+11011010001000000000100000100110
+11011010010000000000011111100110
+11011000101000000000011100100110
+00100000010000000111110010010110
+11011010001000000000011100100110
+11011010010000000000100100011110
+11011000101000000000011100100110
+00011000000000000010011000000000
+01101000000000001000011100100110
+00101111111011111111111000000000
+00100000010000001111110001111011
+00011010011000100110000000000000
+11011010001000000000011100100110
+00100000010000000111110010101011
+01101000000000001000011101000101
+00101110000011111111111000000000
+01111001001000001111111000000111
+01100000000000001000011101000101
+00100000011000000000000000000000
+00011000101000100001011000000000
+11011000101000000000100000000110
+00100000010000000111111011010000
+00011000000000000111111000000000
+01100000000000100000100000100110
+01110000000010000000011000000001
+11011000101000000000011110000110
+00100000010000000111111011010010
+11011000110000000000100100011110
+11011000101000000000011111000110
+00100000010000000111111010111101
+00011010001000100000110000000000
+11011000101000000000011111100110
+00100000010000000111111010111101
+11011000110000000000011111100110
+00100000010000000111110010110101
+00100000001110100111101111011010
+11011010001000000000011111100110
+11011010010000000000100000000110
+00100000010000000111110010111000
+11011010001000000000011111000110
+11011010010000000000011110000110
+00100000010000000111110010111000
+11011010001000000000011111100110
+11011010010000000000011111000110
+00100000010000000111110010110001
+00100000001000010111101111001100
+11011010001000000000011111000110
+11011010010000000000011111100110
+00011010001000100000101000000000
+00100000010000000111110010101001
+11011010001000000000100000000110
+11011010010000000000011110000110
+00011010010000100000101000000000
+00100000010000000111110001111011
+11101010001000001000000000000000
+10011010011000001010011000000000
+11101010010000001000000000000000
+10011010011000001111111000000000
+11100010010000001000000000000000
+00100000001000000111101110110001
+11011010001000000000011111100110
+11011010010000000000011111000110
+00011010001000100000101000000000
+00100000010000000111110010101001
+11011010001000000000011110000110
+11011010010000000000100000000110
+00011010010000100000101000000000
+00100000010000000111110001111011
+11101010001000001000000000000000
+10011010011000001010011000000000
+11101010010000001000000000000000
+10011010011000001111111000000000
+11100010010000001000000000000000
+00100000001000000111101110110001
+11011010001000000000011110000110
+00011001011000100000101000000000
+00100000010000000111110000001010
+11011010001000000000100100011110
+00011001011000100010010000000000
+00011001011000100000101000000000
+00100000001000000111110010010110
+00011000101000100001011000000000
+00011000000000000111000000000000
+11011000101000000000011110000110
+00100000010000000111111011010010
+11011000101000000000101011010010
+00100000010000000111111011010010
+00011010001000100000110000000000
+01110000000010101101001000000000
+01011000000000000000000000000000
+00100000010000000111110001110011
+00011010010000100000110000000000
+00100000010000000111110001110111
+00011000000000000000111000000000
+11011000101000000000011110000110
+11011000010000000000101011010010
+00011000111000100010010000000000
+00011010010010111111111000000000
+10011000010000001010010000000000
+00011000000000000000010000000000
+00011000000000000010011000000000
+11101000101000100000000000000000
+10011000000000000010001000000000
+11101010010000100000000000000000
+00011010011000100111000000000000
+10011101111011111111111000000000
+10011010001000001111111000000000
+10011000010000001111111000000000
+11100000101000100000000000000000
+00011111111011110000010000000000
+00011010011000001010011000000001
+00101010011000011111111000001000
+00100100001000001111101111110101
+00011000010000100111111000000000
+11100000101000100000000000000000
+00011000101000001000101111100000
+00011000111000001000111000000001
+00101000111000011111111000001000
+00100100001000001111101111101111
+11011010001000000000011110000110
+00011001011000100000101000000000
+00100000001000000111110000001010
+01000111011110010100000000111110
+00011000101000100001011000000000
+00011010001000100110000000000000
+11011010010000000000011111000110
+00011010010000100000101000000000
+00100000010000000111111011001101
+11100000101001000000000000000000
+00011010001000001000110000101100
+00100000010000000111111010111001
+00100000010000000111111010110101
+00011010010000100010001000000000
+00100000010000000111110010000000
+11011010010000000000011111000110
+00011110000000100010001000000000
+00011001011000100000101000000000
+00100000010000000111110001111101
+11011010010000000000011111000110
+00011010010000100000101000000000
+00100000010000000111111011001101
+11100000101001000000000000000000
+00011110000000001000110000110000
+00100000010000000111111010111111
+00100000010000000111111011001101
+00011010010000100010001000000000
+00100000010000000111110010000000
+11011010010000000000011111000110
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000010000000111110001111101
+11011010010000000000011111000110
+00011010010000100000101000000000
+00011110000000001000110000100000
+00100000010000000111111010110101
+00100000010000000111111011001101
+11100000101001000000000000000000
+00011110000000001000110000111000
+00100000010000000111111010111001
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000010000000111110001111101
+11011010010000000000011111000110
+00011010010000100000101000000000
+00011110000000001000110000100100
+00100000010000000111111010110101
+00011110000000001000110000110100
+00100000010000000111111010110101
+00011110000000001000110000110100
+00100000010000000111111010110110
+00011110000000001000110000100000
+00100000010000000111111010110110
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000010000000111110001111101
+11011010010000000000011111000110
+00011010010000100000101000000000
+00011110000000001000110000101100
+00100000010000000111111010110101
+00100000010000000111111011001101
+11100000101001000000000000000000
+00011110000000001000110000100000
+00100000010000000111111010110110
+00011110000000001000110000101000
+00100000010000000111111010110110
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000010000000111110010010110
+11011010010000000000011111000110
+00011010010000100000101000000000
+00011110000000001000110000110000
+00100000010000000111111010111001
+00100000010000000111111010111001
+00011000000000000111111000000000
+11100000101001000000000000000000
+00011110000000001000110000100100
+00100000010000000111111010110110
+00011110000000001000110000101100
+00100000010000000111111010110110
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000010000000111110010010110
+11011010010000000000011111000110
+00011010010000100000101000000000
+00011110000000001000110000110100
+00100000010000000111111010110101
+00011110000000001000110000100000
+00100000010000000111111010110101
+00100000010000000111111011001101
+00011110000000001000110000110000
+00100000010000000111111010110110
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000010000000111110010010110
+11011010010000000000011111000110
+00011010010000100000101000000000
+00011110000000001000110000111000
+00100000010000000111111010111001
+00100000010000000111111011001101
+00011110000000001000110000100100
+00100000010000000111111010110101
+00100000010000000111111011001101
+00011110000000001000110000110100
+00100000010000000111111010110110
+00011001011000100010001000000000
+00011010001000100000101000000000
+00100000001000000111110010010110
+00011000000000000111001000100000
+11011000101000000000101011010010
+10011000101000001000101000000000
+00100000001000000111111100000001
+00011000000000000111001000001000
+00100000001000000111011110000001
+00011010001000100010010000000000
+00100000001000000111101111100001
+00011000000000000111001000001000
+00100000001000000111011100010010
+00100000010000000111110001111011
+00011000101000100010001000000000
+00100000001000000111110010000001
+00100000010000000111110010101110
+00101010011011111111111000000000
+00100000001000001111110010001010
+11011010010000000000100100011110
+00011010001000100010011000000000
+00011010001000001010001111100000
+00100000010000000111110010110001
+00100100011000010000000000000000
+00011010011000100010001000000000
+00100000001000000111110010010010
+00100000010000000111110010010010
+00011010001000100010011000000000
+00011010001000001010001111100000
+11011010010000000000100100011110
+00100000010000000111110010110001
+00100100011000010000000000000000
+00011010011000100010001000000000
+00100000001000000111110010010010
+00011010001000001010001111100000
+11011010010000000000100100011110
+00011010001000100000101000000000
+00100000001000000111110010101001
+00100000010000000111110010101001
+00100000001000001111110010100000
+00011000101000001010001111100000
+11011010010000000000100100011110
+00100000010000000111110010110001
+00100100011000010000000000000000
+11011010010000000000100100011110
+00011000101000001010001111100000
+00011010001000100000101000000000
+00100000001000000111110010101001
+00011000101000001010001111100000
+11011010010000000000100100011110
+00011010001000100000101000000000
+00100000010000000111110001111011
+00100000011000001000000000000000
+00011000101000001010001111100000
+11011010010000000000100100011110
+00011010001000100000101000000000
+00100000001000000111110001111011
+00011000000000000111001000001000
+00100000001000000111011100100000
+00011000000000000111001000001000
+00011010001000001010001000011100
+00100000001000000111011100101111
+00011000000000000111001000001000
+00011000000000000010011000000000
+00100000001000000111011100111101
+00011000000000000111001000001000
+00011010001000001010001000011100
+00011010010000001010010000011100
+00100000001000000111011100000111
+11101000110001000000000000000000
+00100100011110100000000000000000
+00100000001000000111011011110101
+00011010001000100110000000000000
+00011110000000100010001000000000
+11101010001000001000000000000000
+00101111111011111111111000000000
+00100000011000001000000000000000
+00100000010000000111110010101011
+11101010010000001000000000000000
+00101111111011000000000000000000
+00100000001000001111110011001000
+11011010001000000000100100011110
+00011010010000100000101000000000
+00100000010000000111110001111011
+11101010010000001000000000000000
+10011010011000001111111000000000
+11100010010000001000000000000000
+00011010010000001010010111100000
+00011010010000001010001000100000
+00011000000000000111001000001001
+00100000010000000111011100101111
+00100000001000000111110010111001
+00100000010000000010110001100101
+00100000011101011000000000000000
+00100000010000000111110011010011
+00100000010000000111110101110101
+00100000001000000111110100001000
+00100000010000000111110100101001
+00100000001000000111110101100100
+01101000000000001100011010000110
+11000001011111111000000000000000
+10011000000000000000010000000000
+00100000010000000110100000001110
+01101000000010001100011010000110
+00100000010000000110100000100101
+00100000000000000000000001100100
+01101000000010001100011010000110
+00100000010000000110011111111011
+00100000001000000111110011011101
+01000111011110011100000000111110
+01101000000000001100011010000110
+11000001011111111000000000000000
+00011111111000100000010000000000
+00100000010000000110100000011101
+00100100001000001111110011101111
+00100000010000000111110011111001
+01101000000000010100011010000010
+01111001001000000111111000001100
+01100000000000010100011010000010
+01101000000000001100011001111001
+11000001000000000000000000000000
+01110000010001100111100100000000
+01101000000000001100011010000101
+01100000000000001100011001111000
+00100000010000000111110100000000
+01110000000010101001100100101100
+00100000001000000111110110000110
+01101000000000010100011010000010
+01111001001111111111111000001100
+01100000000000010100011010000010
+01101000000000001100011001111001
+11000001000000001000000000000000
+01110000010001100111100100000001
+01110000010001100111100000000000
+00100000010000000111110100000010
+01110000000010101001100100101101
+00100000001000000111110110000110
+01101000000000001100011001111000
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001100011001111000
+00100100011110100000000000000000
+01110000000010101001100100010000
+00100000001000000111110110000110
+11011000111000000000000000000111
+00100000001000000010110000110010
+11011000111000000000000000000111
+00100000001000000010110000110110
+01101000000000010100001000011011
+00011010001011111010010000001011
+10011010010000001010010000000000
+00100000011000000000000000000000
+01101000000000001100001000011010
+00100000011110100000000000000000
+00011111111000100111001000000000
+01101000000000010100001000011011
+00011111111000100010010000000000
+00011010010000001010011000000010
+11101010011010001000000000000000
+00100000010000000110100000001110
+00100000010000000111110100110010
+00011010010000001010010000001011
+11000010000000000111110100001101
+00100000011000000000000000000000
+00100000010000000111110100000100
+01011000000000000000000000000010
+11100010010000001000000000000000
+00100000010000000111110101011110
+00100000001000000111110100110101
+00100000010000000111110100000100
+01011000000000000000000000000011
+11100010010000001000000000000000
+00100000010000000111110101011110
+00100000001000000111110100110010
+00100000010000000111110100000100
+01011000000000000000000000000001
+11100010010000001000000000000000
+01011000000000000000000011111111
+11100000101000001000000000000000
+00100000001000000111110100110010
+00100000010000000111110100000100
+11011111001000000000000000001011
+00011010011000100000110000000000
+00011010010000100000101000000000
+00100000001000000111111011110100
+01101000000000001100001000011010
+00100000011110100000000000000000
+11011010001000000000000000000000
+00100000010000000111110100111000
+00011010001000001010001000000001
+01101000000000001100001000011010
+10011010001001100111110000000000
+00100000011000101000000000000000
+00100000001000000111110100101100
+00011010010000001010011000000010
+11101010011010001000000000000000
+00100000001000000110100000100101
+00011010010000001010011000000010
+11101010011010001000000000000000
+00100000001000000110100000101001
+00011010001000001000111000001011
+00100000010000000111111100010110
+00100100011110100000000000000000
+00100000010000000111110100000100
+11101010010000001000000000000000
+11000000000000010111110100110101
+11000000000000011111110100110010
+11000000000000000111110100110010
+11000000000000101111110101001100
+00100000010000000111110100110101
+00011010010000001010011000000111
+00100000010000000111111001111100
+11101010011000010000000000000000
+00100000010000000111111110011100
+00100000010000000111111010001100
+01011000000000000000000000000101
+11100010010000001000000000000000
+00011010010000001010011000000011
+11101010011000010000000000000000
+00100000001000000111110101011100
+00100000010000000111110100110010
+00011010010000001010011000001001
+00100000010000000111111001111100
+11101010011000010000000000000000
+00100000010000000111111110011100
+00100000010000000111111010001100
+00011010010000001010011000000001
+11101010011000001000000000000000
+11000000011111111111110101011000
+00011111111000001111111111111111
+11100010011000001000000000000000
+00100000001110100111110100011001
+01011000000000000000000000000100
+11100010010000001000000000000000
+00011010010000001010011000000101
+11101010011000010000000000000000
+00011010001000001000111000001011
+00100000001000000111111100001000
+01011000000000000000000000000000
+00100000001000000111110101011100
+01011000000000000001000000000000
+00011111111100000111111000000000
+10011010010000001010010000000000
+00100000011000000000000000000000
+01000111011110100100000000111110
+11011010001000000000000000000000
+01101000000010100100011001111010
+00011100010000100010010000000000
+00011010010000100111111000000000
+10011000010001100111110000000000
+00100100010000010111110101100000
+00011010010000100111111000000000
+00011000010000001000010010100000
+00011000010000001000010010100000
+10011000010001100111110000000000
+00100100001000010111110101111000
+00011010001000001010001000000001
+00011010001000010111111000001111
+00100100001110100111110101101011
+11011010001000000000000000000000
+00100000010000000111110101111111
+00011100010000100111111000000000
+01100000000000100100011001111010
+00100000011000000000000000000000
+01000111011110101100000000111110
+00011010001000100111111000000000
+00100000011110100000000000000000
+00011000010000001000010101100000
+00011000010000001000010101100000
+01111001001111111000010000011100
+01100000000010100100011001111010
+00100000001000000011001101011111
+01110000010001100110011000000001
+01101000000000001100011001100111
+00100100001110100111110110000001
+00100000011000000000000000000000
+01110000010001100110011000000000
+00100000011000000000000000000000
+01000111011110110100000000111110
+00100000010000000111110110000000
+00011010001000100111111000000000
+01100000000000100000101010010001
+11011010001000000100011001101000
+00100000010000000111111110111000
+01101000000000100000101010010001
+00011111111000100010001000000000
+00100000001000000111110110000100
+01000111011110111100000000111110
+00100000010000000111110110000000
+00011010001000100111111000000000
+01100000000000100000101010010001
+11011010001000000100011001110000
+00100000010000000111111110111000
+01101000000000100000101010010001
+00011111111000100010001000000000
+00100000001000000111110110000100
+01011000000000000000000000000000
+01100000000001000100011001110000
+01100000000001000100011001101000
+00100000011000000000000000000000
+01000111011111000100000000111111
+01101000000000001100000111001110
+00100100011110100000000000000000
+11011010001000000100011001110000
+00100000010000000111111111010000
+00100000011110100000000000000000
+01110000000010101001000000000000
+00100000010000000111110110100111
+01101000000000001000101010010000
+00100000001110100111110110011100
+00100000011000000000000000000000
+00100000010000000111110110000000
+11011010001000000100011001110000
+00100000010000000111111111000100
+00011111111000100000010000000000
+00100000010000000111110110000100
+01000111011111001100000000111111
+00011000010000100111111000000000
+00100000011110100000000000000000
+11000000000000001111110111011101
+11000000000000010111110111100010
+11000000000000011111110111101000
+11000000000000111111110111101101
+11000000000001000111110111101110
+11000000000001001111110111101111
+11000000000001011111110111110010
+11000000000001100111110111110011
+11000000000001101111110111110100
+11000000000001110111110111111010
+11000000000001111111110111111111
+11000000000010000111111000000101
+11000000000010011111111000001111
+11000000000010100111111000010001
+11000000000010101111111000010011
+11000000000010110111111000010101
+11000000000010111111111000011000
+11000000000011000111111000011010
+11000000000011001111111000011101
+11000000000011011111111000100101
+11000000000011110111111000101111
+01100000000000001000101010011001
+01000111011111010100000000111111
+00100000010000000110001010111100
+00100100001110100111110111011011
+01101000000000001000101010011001
+11000101100001001111110111010110
+11000000000000100111110111101010
+11000000000000101100110100010111
+11000000000000110100110100100110
+11000000000001010111110111110000
+11000000000010001111111000001010
+11000000000010010111111000001110
+11000000000011101111111000100110
+11000000000011111110011111001100
+11000000000100000110011111010000
+11000000000100001111111000110001
+11000000000100101110011100001011
+00100000011000000000000000000000
+01100000000000001000101010011001
+00100000010000000010001001010010
+00100000001000101111110111011011
+00100000010000000010001001011010
+00100100011000101000000000000000
+01110000000010101001000000000001
+00100000001000000111110110001111
+01101000000000010100011010000010
+01111001001000000111111000000110
+01100000000000010100011010000010
+01110000010000001001001100000011
+00100000011000000000000000000000
+01110000010001101000000000000000
+01110000010000001001001100000000
+01101000000000010100011010000010
+01111001001111111111111000000110
+01100000000000010100011010000010
+00100000011000000000000000000000
+01110000010000011100111000000101
+00100000011000000000000000000000
+01110000000000000111110000000111
+01110000000001001100101000010011
+00100000011000000000000000000000
+00100000011000000000000000000000
+00100000011000000000000000000000
+00100000011000000000000000000000
+01110000000001001101010000000010
+00100000001000000100110100001010
+00100000011000000000000000000000
+00100000011000000000000000000000
+01110000010000110110111000000001
+01110000010001001000010000000000
+01101000000000010100011010000010
+01111001001000000111111000001011
+01100000000000010100011010000010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001111111111111000001011
+01100000000000010100011010000010
+01110000010000110110111000000000
+00100000011000000000000000000000
+01110000010000110110111000000001
+01110000010001001000010000000001
+01101000000000010100011010000010
+01111001001000000111111000001011
+01100000000000010100011010000010
+00100000011000000000000000000000
+01101000000000010100011010000010
+01111001001111111111111000001011
+01100000000000010100011010000010
+01110000010000110110111000000000
+00100000011000000000000000000000
+01011000000000000000000000010100
+01100000000000010000010001101101
+01100000000000010100010010111010
+00100000001000000101110010010010
+00100000001000000101101010111111
+11011010001000000000000000000000
+00100000001000000111110100011001
+11011010001000000000000000000000
+00100000001000000111110100010100
+11011010001000000000000000000000
+00100000001000000111110100011110
+01110000010000110110100100000001
+01110000010000011100111000011011
+00100000011000000000000000000000
+01110000010000110110100100000001
+00100000011000000000000000000000
+01110000010000110110100100000000
+01110000010000011100111000000000
+00100000011000000000000000000000
+01101000000000010100000111101011
+00100000010000000111111110011100
+01101000000000001100011010000110
+11000000011111111111111000100011
+00011111111000100000010000000000
+00100000010000000110011111111011
+00100000010000000111110110011000
+00100000001000000010101100011111
+00100000001000000101101100000010
+01110000000000000111110000110100
+01111001001000000000000000000011
+00100100011101001000000000000000
+01110000010001010101101100000000
+01110000000000000111110000010011
+01101000000000001000000101101101
+01111001001111111111111000000010
+01100000000000001000000101101101
+00100000011000000000000000000000
+00011000000000000000111000000011
+00100000001000000111111100000111
+00100000010000000110001011111000
+01110000000000000111110101000001
+00100000001000000101111110011101
+01101000000000001100011010000010
+11000100000001100000000000000000
+11000100000000111000000000000000
+00100000001000000111111000101111
+01101000000000010100001000011000
+00011111111000001000101000000010
+01011000000000000000000000000000
+11100000101000011000000000000000
+00100000011000000000000000000000
+00100000010000000111111111101001
+00100000010000000111111001101001
+00100000011110100000000000000000
+01101000000000010100001000011000
+00011111111000001010010000000010
+11101010010010001000000000000000
+00011000010000001000010000000001
+11100010010010001000000000000000
+11101111111010001000000000000000
+00011000010000100111001000000000
+00011111111000001010010000000100
+11101010010000001000000000000000
+10011000010011111111111000000000
+10011000110000001000101000000000
+00011010001000100000110000000000
+00100000010000000111111100000001
+00100000010000000111111001101101
+00011111111000001111111111111111
+11101010010010001000000000000000
+00011000010000001000010000000001
+10011000010000010000010000000000
+11100010010010001000000000000000
+00100000001000000111111111100111
+00100000010000000111111111101001
+00100000010000000111111001100101
+00100000011110100000000000000000
+01101000000000010100001000011000
+00011111111000001010010000000010
+11101010010010001000000000000000
+00011000010000001000010111111111
+11100010010010001000000000000000
+11101111111010001000000000000000
+00011000010000100111001000000000
+00011111111000001010010000000011
+11101010010000001000000000000000
+10011000010011111111111000000000
+10011000110000001000110000000000
+00011000110000001000110000000001
+00011010001000100000101000000000
+00100000001000000111111001001100
+01101000000000010100001000011000
+00011111111000001000110000000010
+11101000110000001000000000000000
+00100000011000000000000000000000
+00100000010000000111111001101101
+11101000110010001000000000000000
+10011000010001100111111000000000
+00100000011000000000000000000000
+01101000000000010100001000011000
+00011111111000001000110000000001
+11101000110000001000000000000000
+00100000011000000000000000000000
+00011111001001100111110000000000
+00100000011000101000000000000000
+00011111111000110111111000000000
+11000010000000000111111001110011
+00100000011000000000000000000000
+00011000000000000111111000000001
+00011111001001100111110000000000
+00100000011000101000000000000000
+00011111111000111111111000000000
+11000010000000000111111001111001
+00100000011000000000000000000000
+00011000101000100111111000000000
+01100000000000010000101010111011
+01100000000011000000101010100010
+00011001011000100111111000000000
+01100000000000100000101010101010
+00100000010000000111111010000101
+00011000110000100111111000000000
+01100000000000010000101010111001
+00100000011000000000000000000000
+00011010001000100111111000000000
+01100000000000100000101010101110
+00011010010000100111111000000000
+01100000000000100000101010110010
+00011010011000100111111000000000
+01100000000000011000101010110110
+00100000011000000000000000000000
+01101000000011000000101010100010
+01101000000000100000101010101010
+10011000000000000001011000000000
+00100000010000000111111010010101
+01101000000000010000101010111011
+10011000000000000000101000000000
+01101000000000010000101010111001
+10011000000000000000110000000000
+00100000011000000000000000000000
+01101000000000100000101010101110
+10011000000000000010001000000000
+01101000000000100000101010110010
+10011000000000000010010000000000
+01101000000000011000101010110110
+10011000000000000010011000000000
+00100000011000000000000000000000
+01101000000000010000101010111011
+00011111111000100000101000000000
+00100000011000000000000000000000
+01101000000000010000101010111001
+00011111111000100000110000000000
+00100000011000000000000000000000
+00011000101000100111111000000000
+01100000000000010000101010111011
+00100000011000000000000000000000
+00011000110000100111111000000000
+01100000000000010000101010111001
+00100000011000000000000000000000
+00011000101000100111111000000000
+01100000000000010000101010010111
+00011000110000100111111000000000
+01100000000000010000101010010101
+00100000011000000000000000000000
+01101000000000010000101010010111
+00011111111000100000101000000000
+01101000000000010000101010010101
+00011111111000100000110000000000
+00100000011000000000000000000000
+00100000010000000111111010111101
+00100000010000000111111010111101
+00100000001000000111111010111101
+00100000010000000111111010111001
+11101000110000100000000000000000
+11100000101000100000000000000000
+00100000011000000000000000000000
+11101000110001000000000000000000
+11100000101001000000000000000000
+00100000011000000000000000000000
+00100000010000000111111010111111
+00100000010000000111111010111001
+00100000010000000111111010111001
+00100000010000000111111010111001
+00100000001000000111111010111001
+11011111001000000000000000001010
+00100000000000000010111011100000
+11000010000000000111111011000010
+00100000011000000000000000000000
+00011000000000000111001000000011
+00011000000000000111111000000000
+11100000101001000000000000000000
+11000010000000000111111011000111
+00100000011000000000000000000000
+00011000000000000111111000000000
+11100000101001000000000000000000
+00100000011000000000000000000000
+00011000000000000111111000000000
+11100000101000100000000000000000
+00100000011000000000000000000000
+00011000000000000111001000000100
+00100000001000000111111011000110
+00011000000000000111001000001000
+00100000001000000111111011000110
+00011111001000100111111000000000
+00100000011110100000000000000000
+01011000000000000000000000000000
+11100000101000001000000000000000
+11000010000000000111111011010111
+00100000011000000000000000000000
+11011111001000000000000000100000
+11011000101000000000101011000010
+00100000001000000111111011010100
+11101010011000100000000000000000
+11101010001010100000000000000000
+10011000010000101111111000000000
+11100000101000100000000000000000
+00011010001000001010001000000100
+00011010011000001010011000000100
+11000010000000000111111011011101
+00100000011000000000000000000000
+01000111011111011100000000111111
+00011111001000100111111000000000
+00011111111001100111110000000001
+00100000011000010000000000000000
+10011010001000001010010000000000
+00011010010000001010010111111111
+00011111001000110111001000000000
+11101010001010001000000000000000
+11101010010000001000000000000000
+11100010001000001000000000000000
+11100010010010001000000000000000
+00011010010000001010010111111111
+00011010001000001010001000000001
+11000010000000000111111011101100
+00100000011000000000000000000000
+00011111001000100111111000000000
+00100000011110100000000000000000
+00011111001000001111001111111000
+00100000010000010111111010111001
+00100000011000101000000000000000
+00100000001000010111111011110110
+00011111001000001111001000001000
+00011111001000001111001111111100
+00100000010000010111111010110110
+00100000011000101000000000000000
+00100000001000010111111011111011
+00011111001000001111001000000100
+00100000001000000111111100000001
+00011111001000100111111000000000
+00100000011110100000000000000000
+11101000110000001000000000000000
+11100000101000001000000000000000
+11000010000000000111111100000011
+00100000011000000000000000000000
+01011000000000000000000000000000
+00011100010000110000010000000000
+01100000000010100100000010010100
+11011000101000000100000110011101
+10011000000000000000010000000000
+00011000111000111111111000000000
+10011000101000001000101000000000
+11100000101010010000000000000000
+01000111011111100100000000111111
+00100000011000000000000000000000
+11011001011000000000100000000000
+00011001011100000001011000000000
+10011001011000001111111000000000
+00100000011000000000000000000000
+11011000111000000000000000000000
+01000111011111101100000000111111
+01101000000010100100000010010100
+00011100010000110111111000000000
+01100000000000100100000010010100
+10011000010001100111110000000000
+00100100010000010111111100010001
+10011000010001100001011000000000
+00011001011000100000010000000000
+11011000110000000100000110011101
+00011000110000100000101000000000
+11011111001000000000000000010000
+11101000110000010000000000000000
+10011000010001100111111000000000
+00100000001000010111111100100101
+00011000000000000111111000000000
+11100000101000010000000000000000
+11000010000000000111111100100001
+11011000110000000100000110011101
+00011000111000111111111000000000
+10011000110000001000110000000000
+11101000110000010000000000000000
+00100000011000000000000000000000
+10011000010000001000010000000000
+00011000010000100111001000000000
+01011000000000000000111010100110
+10011111001001100111111000000000
+00100000011000010000000000000000
+00011111111001100111111000000000
+00011000010100010000010000000000
+00011000010000001000010000000001
+00011000010100000000010000000000
+10011000010000011000010000000000
+00100000011000000000000000000000
+00100000010000000111111100111001
+00100000001000000111111101000011
+01111000010101000111110000000000
+10011000010001100111111000000000
+00100000001000010111111100111110
+01111000001101000111110000000000
+00011111111001100111111000000000
+11000100000001111000000000000000
+11011000010111110000111010100110
+10011000010000001111111000000000
+01111001001111111111111001000000
+00100000011000000000000000000000
+10011000000000000000110000000000
+00011111111100010111111000000000
+11011000010000000000111010100110
+10011000010011111111111000000000
+10011000110000001111111000000000
+00100000011000000000000000000000
+00011111111011010111111000000000
+00011111111100100111111000000000
+01101000000010011100000101101111
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111000010000000000
+00100000011000000000000000000000
+11011000010000000000111010100110
+10011000010001101111110000000000
+00100000010000000111111110000110
+00011000000001111111111000000000
+00011111111100000111111000000000
+00011000000001110000010000000000
+10011000010000011000010000000000
+00100000011000000000000000000000
+11011000010000000000000000000000
+00011000010000100010011000000000
+11101000011000001000000000000000
+00100000010000000111111101100100
+00011010011000100000010000000000
+00100000010000000111111110010101
+11011010010000000000000000001010
+10011010010011111111111000000000
+10011000010000001111111000000000
+00011111111000100000010000000000
+11000010000000000111111101011001
+00100000011000000000000000000000
+11011000010000000000000000111010
+10011000010001100111110000000000
+00100100001000010111111101101101
+11011000010000000000000001100001
+10011000010001100111110000000000
+00100000001000010111111101110000
+11011000010000000000000000110111
+10011000010001100111111000000000
+00100000011000000000000000000000
+11011000010000000000000000110000
+10011000010001100111111000000000
+00100000011000000000000000000000
+11011000010000000000000001010111
+10011000010001100111111000000000
+00100000011000000000000000000000
+00011000010000100110000000000000
+01011000000000000000000111111111
+00011000000000000010010000000000
+00011111111010010010001000000000
+00011010001000110010001000000000
+10011010001000101010001000000000
+00101010001011111111111000000000
+01111001001000001111111000001001
+00011000010000110000010000000000
+00101111111011111111111000000000
+01111001001000001000010000000111
+00011111111000110111111000000000
+00011010010000001010010000000001
+00101010010000000000111000000000
+00100100001000001111111101110110
+11100000101010001000000000000000
+11000010000000000111111101110110
+00011110000000100000010000000000
+00100000011000000000000000000000
+00100000011110101000000000000000
+00100000001000000111111110000110
+11101010001000001000000000000000
+11101010010010001000000000000000
+10011000010001100111110000000000
+00100100011000101000000000000000
+00011010001000001010001000000001
+00011010010000001010010000000001
+11000010000000000111111110001000
+00011000000000000111110000000000
+00100000011000000000000000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+00011000010000100111111000000000
+00100000011000000000000000000000
+10011000010000001111111000000000
+10011000010001100000010000000000
+10011000010001100111111000000000
+00100000011000000000000000000000
+11011111001000000000001000000000
+11011000101000000100000000000000
+00100000001000000111111011000110
+00100000011110100000000000000000
+00011111111000100111101000000000
+01101000000100010000000100001110
+00100100001110100111111110011110
+00100000011000000000000000000000
+01110000100000100000001100000001
+00100000011000000000000000000000
+01100000000100010000001000000101
+01101000000100001000001000000011
+01111001001000000111111000000100
+01100000000100001000001000000011
+00100000011000000000000000000000
+01100000000100010000001000000111
+01101000000100001000001000000011
+01111001001000000111111000000110
+01100000000100001000001000000011
+00100000011000000000000000000000
+01100000000100010000001000000101
+01110000100000100000001100110000
+00100000011000000000000000000000
+01101000000100001000000001000011
+01111001001111111111111000000100
+01100000000100001000000001000011
+00100000011000000000000000000000
+01101000000100010000000100001110
+11011000010000000000001000000000
+10011000010001100111110000000000
+00100000011000000000000000000000
+01000111011111110100000000111111
+11101010001011000000000000000000
+00011000010000010111111011111111
+00100100001110100111111110111110
+00011000010011001111111000000000
+11100010001001000000000000000000
+00011010001000001010001000000111
+11101010001000001000000000000000
+00100100001110100010101010001100
+01101000000000001000101010011001
+11100010001000001000000000000000
+00100000011000000000000000000000
+01000111011111111100000000111111
+11011111001000000000000000001000
+11101010001001000000000000000000
+00100000011110100000000000000000
+11101010001000001000000000000000
+00100100001110100111111111001101
+00011010001000001010001000000001
+11000010000000000111111111001000
+00100000001000000010101010001100
+11011000010000000000000000000000
+11100010001010001000000000000000
+00100000011000000000000000000000
+11101010001001000000000000000000
+00100000011000000000000000000000
+11101010001000001000000000000000
+00100000011000000000000000000000
+11101010001000010000000000000000
+00100000011000000000000000000000
+11011000010000000000000000000000
+01101000000000001000000000000110
+11000010000000000111111111010111
+00011000010000001000010000000001
+11000010000000000111111111010111
+00011000010000100111111000000000
+00100000011000000000000000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+00011000010000100111111000000000
+00100000011000000000000000000000
+00011000000000000111110111111111
+00100000011000000000000000000000
+00011000000000000111110000000001
+00100000011000000000000000000000
+00011000000000000111110000000000
+00100000011000000000000000000000
+01111000001101000111110000000000
+00100000011000000000000000000000
+01111000010101000111110000000000
+00100000011000000000000000000000
+01111000001101100111110000000000
+00100000011000000000000000000000
+01111000010101100111110000000000
+00100000011000000000000000000000
+01011000000000000000000000000001
+00100000011000000000000000000000
+01011000000000000000000000000000
+00100000011000000000000000000000
+00011111001000100111111000000000
+00100000011110100000000000000000
+00011000110000100111111000000000
+10011111001000001111111000000000
+00011111111000001111111111111111
+00011111111000100000110000000000
+11101000110000001000000000000000
+00011000110000001000110111111110
+11100000101000001000000000000000
+11000010000000000111111111111001
+00100000011000000000000000000000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000000000000000000011111
+11000000000000001000000000000100
+00100000011000000000000000000000
+00100000010000000000001001101011
+00100100011101000000000000000000
+00100000010000000000000000011001
+01101000000000010100111111000100
+00011111111000001111111000000001
+01100000000000010100111111000100
+01101000000010010100111111000110
+10011000010001100111110000000000
+00100000010000101000000000001110
+00100000001000000000000010011100
+01110000010011111100001100000000
+01011000000000000000000000000000
+01100000000000010100111111000100
+01011000000000000000000000011001
+01100000000000010100111111000110
+01110000010011101011111000000000
+01101000000000001100111010101001
+01100000000000001100111010101000
+00100000011000000000000000000000
+01101000000000001100111010101010
+00100000001000000000000000010101
+01101000000000001100111010111110
+00011111111000001111111000000001
+01100000000000001100111010111110
+11000000000000100000000000010111
+11000000000000101000000000010011
+00100000011000000000000000000000
+01101000000000001000000000001110
+00011111111000001111111000000001
+01100000000000001000000000001110
+00100000010000000010010000110101
+01111001001000000000000000101100
+00100000010000000010001011110010
+00100000001011000000000000101010
+01111001001111111000000000101100
+00100000010000000010010001010101
+00100100001110100000000000100011
+00100000001000000010000011111100
+01111001001111111000000000101100
+00100000001000000010000101011111
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000010000000000000000100
+11000000000010001000000000011001
+00100000011000000000000000000000
+01110000010010011110001100000000
+01110000010000011110001100001110
+00100000010000000100000111100111
+01101000000000010100001000001000
+11000010100000111000000000001110
+11000010100000000011001110101001
+11000010100000001000000000010010
+11000010100000010000000000010101
+11000010100000011000000000010101
+00100000001000000100001010110000
+00100000010000000100000111000001
+01101000000000010100001000001000
+11000010100001010000010001000110
+00100000001000000100000111110111
+11000010100000101000000000010101
+11000010100000011000000000010101
+00100000001000000100001010110000
+01101000000000010100011010000010
+11000010100001100100001010110000
+00100000010000000011001110101001
+00100000001000000011001110100111
+01101000000000010000001001100100
+00011111111000100000110000000000
+11101000110000001000000000000000
+01100000000000001100110011011101
+00011111111000010000010000001111
+00011111111100011111111000000000
+11000000000000111000000000100010
+11000000000000001000000000101001
+00100000001000000100110100111001
+00100000010000000100110101010011
+01110000010011001101111000000000
+01101000000000001100110011011101
+00101111111011111111111000000000
+00100000011000001000000000000000
+01110000010011001101111000000001
+00100000011000000000000000000000
+00011000010000100111111000000000
+11000000000000101000010000010010
+00100000001000000100110101000001
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000100000000000000011111
+11000000000100001000000000101100
+11000000000100010000000000000101
+00100000011000000000000000000000
+00100000010000000000001010100011
+01101000000000001100011100100000
+11000000000000010000000110110101
+11000000011111111000000110110101
+00100000010000000000010011110110
+01101000000000001100001000010000
+11000000000110011000000000001110
+11000000000110100000000000010001
+00100000001000000000001010100000
+01101000000000110100000111010000
+00100000001110100011001111101011
+00100000001000000100001001110100
+01110000010011010100010100000001
+01110000010001111010000100000001
+11011000010000000000000000001010
+01101000000000001100110100111110
+11000000011111111000000000010111
+01101000000010010100011010101000
+01100000000010010100011010101110
+00100000010000000011010000011000
+00100000010000000000001010100110
+01011000000000000000000000000100
+11100000110000001000000000000000
+11011000110000000100001110010000
+00100000010000000000010110111010
+00100000001000000111110111110100
+01101000000000001000000001001000
+11000000010000100000000000100011
+11000000010000011000000000100110
+00100000001000000110000000111111
+00100000010000000000000000101001
+01101000000000001000000001001000
+00100000001000000110000010011001
+00100000010000000000000000101001
+01101000000000001000000001001000
+00100000001000000110000100001101
+01101000000000001100011001011010
+00100000001110100110000100101011
+00100000001000000110000100100100
+00011000000000000111111000000010
+00100000010000000110001010011000
+01101000000000001000000001001001
+11100000101000001000000000000000
+01100000000000001100110011010111
+00100000010000000110001010100111
+01101000000000001100110011010111
+11000000000101110000000000110101
+00100000001000000110000001010001
+01101000000000001100110011011010
+00100000011110100000000000000000
+01110000010011001101101000000000
+01101000000000001100110011011100
+11000001100000010000000000000000
+01110000010011001101101100000001
+00011100010000100111111000000000
+01100000000000100000010011101001
+00100000011000000000000000000000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000110000000000000000011
+00100000011000000000000000000000
+00100000010000000110001010111100
+00100100011110100000000000000000
+01101000000000001000000001010101
+00100000011110100000000000000000
+11000000000000100000000000100101
+11000000000010000000000000001010
+00100000001000000110001100100000
+01101000000000001100010101011011
+11000001000000000000000000000000
+11000000000000001000000000001110
+00100000001000000110001101011111
+00100000011101001000000000000000
+01101000000000001000000101101101
+11000010100000000000000000010010
+00100000001000000110001110011001
+01101000000000001100110011011100
+11000000000000001110001110011101
+01101000000000001100000110111101
+00100000001110100110001110101001
+01101000000000001000010011010001
+11000100000000011000000000000000
+11000100000000010000000000000000
+01101000000000001100110011011011
+00100000011110100000000000000000
+01110000010011001101101100000000
+01101000000000100000010011101001
+11011000010000000000000000010100
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100001000010000000000100011
+00100000001000000110001101001001
+01110000010011001101101100000001
+00100000011000000000000000000000
+01110000010010011110010000010100
+00100000001000000110001101101111
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001000000000000000000110
+11000000001000001000000000011000
+11000000001000010000000000100101
+11000000001000011000000000101011
+00100000011000000000000000000000
+00100000010000000000000000001110
+00100000001000000101010101111101
+01101000000000001100011111000111
+01100000000000001100000101110010
+01110000010001111100011000000000
+00100000011000000000000000000000
+01110000010001111100011000000001
+00100000011000000000000000000000
+01101000000000001100001111010110
+00011111111001100111110000001100
+00100100001000010000000000001100
+01101000000000001100001111011000
+01101000000010001100011111000111
+10011000010001100111110000000000
+00100000001000010000000000001000
+01101000000000001100001111011000
+01100000000000001100000101110010
+00100000001000000000000000001010
+01101000000000001000010000111111
+11000100000000110000000000000000
+00100000010000000000000000011101
+00100100011101000000000000000000
+00100000001000000101010110100000
+01111000001101000111110000000000
+01101000000000001000010001011010
+00011111111100011111111000000000
+11000001100001111000000000000000
+01101000000000001000010001100000
+00011111111100011111111000000000
+11000001100000000000000000000000
+00100000001000000111111111101001
+01101000000000001100011110100001
+00100100011110100000000000000000
+01101000000000001000010001111000
+00011111111001100111111000011010
+00100100011000101000000000000000
+00100000001000000011110101100000
+00100000010000000011001110101111
+00100000010000000010011011101001
+01110000000010101001100100000010
+00100000010000000111110110000110
+00100000010000000101110011110111
+00100000010000000100110101101011
+00100000001000000010010001101110
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001010000000000000000011
+00100000011000000000000000000000
+01110000010011010100010100000000
+00100000010000000000001010100011
+01110000010001110010000000000001
+01110000010001111001111000000000
+01101000000000010100011010000010
+11000010100001011000000000010011
+01101000000000100100011011010011
+11000011000011000000000000010011
+00100000010000000000010110110011
+01101000000010010100011111000100
+00011000010000001000010000000001
+01100000000010010100011111000100
+01100000000010010100010010100001
+00100000010000000000001111100010
+00011000000010100111111000000000
+01100000000000001100010010100000
+01101000000000011100110100111111
+01100000000000011100010010100011
+00100000010000000000001010101101
+00100000010000000011010000011000
+01101000000000010100011010000111
+01100000000000010100011010101100
+01110000000000010110110100000110
+01011000000000000000000000000000
+01100000000000010100011010110000
+01100000000000010100011010101110
+11011000111000000000000000000111
+00100000010000000100001111001110
+00100000010000000100001111001010
+01101000000000001100000010010010
+00101111111011111111111000000001
+00100000010000001000000000100111
+01101000000000001100000010010010
+00101111111011111111111000000000
+00100000010000001111110111011101
+00100000001000000000010011111011
+01110000010001111010000100000000
+00100000010000000000001010100110
+01011000000000000000000000000101
+11100000110000001000000000000000
+11011000110000000100110011101011
+00100000010000000000010110111010
+00100000001000000111110111110100
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001100000000000000000100
+11000000001100001000000000101001
+00100000011000000000000000000000
+01111001001111111000000000100110
+01101000000000001100110100100100
+00011111111000010111111000000001
+00100100010110100000000000100000
+00100000010110100000000000011101
+01101000000000001100111010010011
+11000001111111111000000000000000
+01011000000000000000000000000000
+01100000000000010100111010110000
+00100000010000000000000110111011
+00100000000000000000011111010000
+01101000000000001100111010110000
+11000000000001010000000110011010
+00100000010000000000000110000010
+00100100001011000000000000100100
+00100100001101111000000000100100
+01111001001000000000000000100110
+01011000000000000000000000000000
+01100000000000010100111010110000
+01100000000000001100110100100110
+01100000000000010100110100100100
+01110000000010101001100100111100
+00100000010000000111110110000110
+00100000010000000000000101111111
+00100000001000000000001100101010
+00100000010000000000001010100011
+01101000000000100100011101111011
+00100000001000000000000000100010
+01110000010000011101111000100000
+01101000000000100100110100011110
+00100000010000000000000111011010
+00100000001000000000000100111010
+01101000000000010100111010110000
+00011111111000001111111000000001
+01100000000000010100111010110000
+00100000010000000000000100111010
+00100000001000000000000000001110
+00100000010000000000010000101010
+01101000000000010100110100100100
+00100100001110100000000000111011
+01110000010011111100001100000000
+00100000010000000000001010100011
+00100000010000000000000111000100
+01110000010000011011110100000000
+00100000010000000000000011000101
+00100000001000000000010011000000
+01101000000000001100111010001011
+00100100001110100000000110011010
+01110000010011101000101100000001
+01101000000000001100001001000001
+11000010100000010000000000111000
+00100000001000000000000110111000
+01011000000000000000001100100000
+01100000000000010100110100100100
+00100000001000000000000000000100
+00011111111000001111111111111111
+01100000000000010100110100100100
+00100000001110100000000000110010
+00100000001000000000000000000100
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001110000000000000000100
+11000000001110001000000000110100
+00100000011000000000000000000000
+01111001001111111000000000100110
+00100000010000000000000000100100
+00100000010000000000000110111011
+00100000000000000000011111010000
+01101000000000001100111010110001
+11000000010100000000000110011010
+00100000010000000000000110000010
+00100100001011000000000000011010
+00100100001101111000000000011010
+00100000010000000000000110101001
+00100000010000000000001010100011
+01101000000000100100111010101011
+01101000000010100100111010001111
+10011000010001100111110000000000
+00100000001000101000000000110000
+01111001001000000000000000100110
+01011000000000000000000000000000
+01100000000000010100111010110000
+01110000000010101001100100111100
+00100000010000000111110110000110
+00100000010000000000000101111111
+00100000001000000000001100101010
+01101000000000001100111010001011
+00011111111000001111111000000001
+01100000000000001100111010001011
+00011111111001100111110000000011
+00100000001000010000000000000111
+01110000010011101000101100000000
+01101000000000010100111010110000
+00011111111000001111111000000001
+01100000000000010100111010110000
+00100000001000000000000000000111
+01011000000000000000000000000000
+01100000000000010100111010110000
+01100000000000001100111010001011
+01100000000000010100110100100100
+01110000010011101000010000000010
+01110000010000011101111000000100
+01110000010011101000001000000000
+01110000010011101000110101001110
+01101000000000100100111010001111
+00100000001000000000000111011010
+00100000010000000000000000100100
+00100000001000000000000000000111
+01111001001000000000000000100110
+00100000010000000000000000100100
+01110000010011101001001100000100
+00100000011000000000000000000000
+00100000010000000000000111000100
+00100000010000000000010000101010
+11011000111000000000000000000011
+00100000010000000100001111001110
+01011000000000000000000000000000
+01100000000000010100011010101110
+01100000000000001100011010110100
+01100000000000010100110100100100
+01100000000000010100111010110000
+00100000010000000100001011001010
+00100000001000000000000000110000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+01101000000000100100000010100000
+01100000000000100100111010111010
+00100000010000000011111001101110
+00100000010000000000000011010110
+01101000000010001100110100010111
+00100000010000000110100000001110
+00100000010000000011111000011110
+00100000010000000000000000011110
+01011000000000000100011111001000
+01100000000000010100010010111100
+01011000000000000000000000000000
+01100000000000010100000101010100
+01110000010001101111011000000000
+01011000000000000001100000000010
+01100000000000010100000010111101
+00100000010000000110100010101000
+00100000010000000011111001010100
+00100000010000000101100000010000
+00100000010000000101100000111001
+00100000010000000101100000101100
+00100000010000000101100000011000
+00100000010000000000001110001110
+00100000010000000000001100100101
+00100000010000000000001011101110
+01101000000000011100011100000000
+10011010010000001111111000000000
+00100000010000000110010101100010
+00100000010000000000001011100000
+00100000011000000000000000000000
+00100000010000000111010010111001
+11011000110000001000110000000000
+11011000101000000100101001010001
+11011111001000000000000100001011
+00100000010000000111111100000001
+11011000110000000100110110011100
+11011111001000000000000000101101
+00100000010000000111111100000001
+11011000110000001000110100111111
+11011111001000000000000000110010
+00100000010000000111111100000001
+11011000110000000100110111100010
+11011111001000000000000000001100
+00100000010000000111111100000001
+11011000110000001000110101110001
+11011111001000000000000100001001
+00100000010000000111111100000001
+01110000010010100110100000000000
+01110000010010100110000001100110
+01110000010010110001010001110100
+01110000010010110001000001111000
+01110000010010110000111001111010
+01011000000000000100000000011111
+01100000000000010100101110101111
+01011000000000000110110100000100
+01100000000000010100110000011000
+01011000000000000001011010110000
+01100000000000010100110000011110
+00100000001000000000011001100000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000010010000000000000000101
+11000000010010001000000000100011
+11000000010010010000000000110011
+00100000011000000000000000000000
+01101000000000001100111010001000
+11000000000000001111111111100111
+01101000000000001100111010010011
+11000000000000100000000000001101
+11000000000000001000000000010000
+11000000000000010000000000010011
+11000000000000011000000000010110
+00100000001000000010101010001100
+01110000010011101001001100000001
+01110000010011010010011011111010
+00100000001000000000000000000101
+01110000010011101001001100010001
+01110000000100011001111010101010
+00100000001000000000000000011000
+01110000010011101001001100010010
+01110000000100011001111001010101
+00100000001000000000000000011000
+01110000010011101001001100010011
+01110000000100011001111000100010
+01101000000000001100111010000100
+00011111111000010111111000000111
+01100000000000001001000110011111
+01101000000000100100111010111010
+01100000000000100001000110100000
+01110000000100011010010000000000
+11011010001000000001000110011110
+11011000010000000000000000000111
+00100000010000000000000111001000
+00100000010000000000000101001111
+00100000001000000111111111100111
+01101000000000001100111010010011
+11000001011111111000000000000000
+11000000000010001000000000101001
+11000000000010010000000000101011
+11000000000010011000000000101101
+00100000011000000000000000000000
+01110000010011101001001100000010
+00100000001000000000000100010011
+01110000010011101001001100000011
+00100000001000000000000100010011
+01110000010011101001001111111111
+01110000000010101001100100111001
+00100000010000000111110110000110
+01101000000000100100111001100011
+00100000010000000000000111011010
+00100000001000000000000100010011
+00100000010000000000001100101010
+01110000010001111000101100000001
+11011000111000000000000000000011
+00100000010000000100001111010010
+01011000000000000000000000000000
+01100000000000010100110100100100
+01110000010001101010011100000000
+00100000010000000100000001011101
+00100000010000000000001010100011
+01101000000000100100111010101011
+01100000000000100100011101111011
+00100000010000000100001101100110
+00100000001000000000001111011101
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000010100001000000000000110
+11000000010100010000000000011011
+11000000010100011000000000010100
+11000000010100100000000000100101
+00100000011000000000000000000000
+01101000000000010100010100001001
+11000001000000000000000000000000
+01101000000000001000010001000001
+00011111111010110111111000000000
+00011111111001100111110000001100
+00100000001000010000000000010010
+01011000000000000000000000001001
+01100000000000010100010010010110
+01100000000000010100010010011000
+00100000010000000000010000001010
+01110000010001111100011000000001
+00100000011000000000000000000000
+01110000010011010100100000000001
+00100000001000000000011000011101
+01101000000000010100011010000010
+11000011100001100000000000000000
+11000011100000110000000000000000
+11000011100001011000000000000000
+01101000000000100100011011010011
+11000011100000101000000000000000
+00100000001000000011001110100111
+01110000010011010011110100000000
+01011000000000000000000000000111
+01100000000000010100010010010110
+01100000000000010100010010011000
+01110000010001111100011000000000
+01110000010001111001111000000000
+00100000010000000000001101101111
+00100000010000000101100000010110
+00100000010000000000001111011101
+00100000001000000100000111011001
+01111000001101000111110000000000
+01101000000100100000000100111000
+01111001001101000111111000011010
+01100000000100100000000001001100
+00100000010000000010110000100001
+00100000010000000111010010111101
+00100000010000000000001111011101
+00100000010000000011111010011111
+00100000010000000000000011000101
+01101000000000001100011100100000
+00011111111001100111110000000010
+00100000010000101000010110011010
+00100000010000000000001100011101
+01101000000100001000000010000001
+00011111111000010111111011110111
+01100000000100001000000010000001
+01101000000100001000000001111111
+01111001001000000111111000000000
+01100000000100001000000001111111
+00100000011000000000000000000000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000010110001000000000000111
+11000000010110010000000000001101
+11000000010110011000000000010010
+11000000010110100000000000011001
+11000000010110101000000000011110
+00100000011000000000000000000000
+01101000000000001100100111100011
+11000001000000010000000000000000
+00011111111000001111111000000001
+01100000000000001100100111100011
+01110000010000011110001100010010
+00100000001000000011010000001110
+01101000000000001100100111100011
+11000001100000010000000000000000
+01110000010010011110001100000000
+01110000010000011110001100001110
+00100000001000000011010000001110
+01101000000000001100011110100001
+11000000000000001000000000010101
+00100000001000000000000000010111
+00100000010000000000010000001010
+01110000010001101100011000000101
+11011000111000000000000000000001
+00100000001000000100000110111001
+01110000010011001101101000000000
+01110000010011001101110000000000
+01110000010011001110010100000000
+00100000010000000000001111011101
+00100000001000000100000111011001
+01011000000000000000000000000001
+01100000000000110000000001000000
+01110000000000011000010100110011
+01110000010011010011111011111111
+00100000010000000100001011111011
+01110000010001110010000111111111
+00100000001000000000001111011101
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/flash.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/flash.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/flash.dat	(working copy)
@@ -0,0 +1,12912 @@
+00
+02
+aa
+55
+02
+20
+20
+20
+00
+40
+20
+40
+03
+6f
+68
+00
+c1
+de
+60
+00
+cf
+3a
+20
+40
+07
+13
+68
+00
+c6
+85
+60
+00
+c6
+da
+68
+00
+cd
+0b
+60
+00
+cd
+0c
+20
+40
+43
+ca
+20
+40
+03
+eb
+20
+40
+07
+a4
+20
+40
+00
+11
+20
+40
+00
+24
+20
+40
+00
+6c
+70
+11
+c7
+80
+20
+20
+07
+7a
+58
+00
+03
+27
+60
+01
+4f
+b4
+58
+00
+03
+41
+60
+01
+41
+ef
+58
+00
+06
+4b
+60
+01
+41
+f9
+58
+00
+03
+92
+60
+01
+41
+f1
+58
+00
+02
+8a
+60
+01
+41
+ed
+58
+00
+03
+ed
+60
+01
+41
+f5
+58
+00
+03
+c8
+60
+01
+41
+f3
+58
+00
+04
+27
+60
+01
+41
+eb
+58
+00
+04
+34
+60
+01
+41
+fd
+20
+60
+00
+00
+58
+00
+00
+19
+60
+01
+4f
+c6
+24
+55
+80
+2b
+20
+40
+04
+2d
+68
+00
+c7
+1f
+60
+00
+c7
+1e
+20
+60
+00
+00
+58
+00
+01
+77
+60
+01
+4f
+c6
+20
+60
+00
+00
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+20
+00
+00
+01
+c2
+84
+00
+5a
+c0
+00
+80
+74
+c0
+01
+00
+7d
+c0
+42
+87
+75
+c0
+44
+87
+48
+c0
+45
+07
+77
+c0
+0d
+86
+63
+c0
+13
+06
+65
+c0
+24
+06
+81
+c0
+25
+06
+83
+c0
+28
+86
+8c
+c0
+2c
+86
+7f
+c0
+53
+86
+91
+c0
+56
+86
+a7
+c0
+65
+b3
+e4
+c0
+74
+86
+b8
+c0
+50
+80
+86
+c0
+58
+80
+8b
+c0
+59
+00
+99
+c0
+62
+02
+97
+c0
+71
+85
+14
+c0
+73
+05
+32
+c0
+75
+05
+ad
+c0
+75
+85
+b1
+c0
+76
+05
+be
+20
+20
+2a
+8e
+c0
+1c
+85
+c2
+c0
+21
+85
+ca
+c0
+25
+05
+d0
+c0
+2b
+85
+d3
+c0
+2c
+85
+d5
+c0
+31
+85
+d7
+c0
+33
+06
+07
+c0
+33
+86
+26
+c0
+35
+06
+36
+c0
+3b
+86
+41
+c0
+02
+86
+ba
+c0
+40
+06
+bc
+c0
+41
+06
+c6
+c0
+44
+06
+d7
+c0
+46
+06
+4d
+c0
+46
+86
+59
+c0
+7d
+06
+fb
+20
+20
+2a
+8e
+70
+4d
+47
+00
+20
+40
+04
+52
+24
+60
+80
+00
+20
+40
+7e
+c1
+20
+40
+04
+52
+24
+60
+80
+00
+70
+4d
+47
+01
+20
+60
+00
+00
+d8
+a0
+09
+ae
+df
+20
+00
+0c
+20
+40
+7e
+d4
+20
+40
+03
+38
+20
+40
+6a
+03
+20
+40
+5c
+f6
+24
+55
+ac
+65
+20
+40
+7c
+cd
+20
+20
+20
+0c
+20
+55
+b2
+e3
+20
+40
+75
+6a
+20
+55
+ab
+41
+20
+40
+76
+dc
+68
+00
+c6
+5a
+20
+3a
+20
+12
+68
+00
+c5
+b1
+20
+3a
+00
+80
+20
+20
+20
+12
+58
+00
+0a
+06
+60
+01
+c5
+10
+58
+00
+1d
+87
+60
+01
+45
+13
+20
+20
+2a
+a2
+c6
+13
+00
+00
+68
+00
+cd
+01
+24
+3a
+7f
+ef
+68
+00
+cd
+06
+24
+3a
+7f
+ef
+68
+00
+c7
+9e
+20
+3a
+7f
+ef
+68
+00
+c7
+c6
+c0
+00
+ff
+ef
+68
+01
+42
+48
+24
+3a
+7f
+ef
+68
+00
+c9
+e1
+24
+3a
+7f
+ef
+20
+20
+7f
+f1
+c6
+93
+00
+00
+68
+00
+cf
+c3
+c0
+00
+80
+ab
+20
+40
+01
+4c
+24
+34
+00
+ad
+20
+40
+01
+27
+20
+40
+01
+03
+68
+00
+ce
+93
+c1
+ff
+80
+00
+20
+40
+07
+1c
+58
+01
+77
+00
+60
+01
+ce
+b2
+70
+4d
+37
+14
+20
+40
+00
+bb
+24
+74
+00
+00
+20
+40
+02
+91
+58
+00
+f4
+24
+20
+20
+2b
+93
+70
+11
+c7
+01
+20
+20
+07
+7a
+68
+00
+ce
+af
+20
+5a
+00
+d9
+68
+00
+cd
+06
+24
+7a
+00
+00
+68
+00
+cd
+01
+c1
+00
+80
+00
+68
+00
+cf
+c3
+c1
+00
+80
+00
+20
+40
+00
+bb
+24
+74
+00
+00
+68
+01
+ce
+b2
+20
+40
+7f
+49
+60
+0a
+41
+5b
+20
+20
+2b
+2a
+78
+34
+7c
+00
+20
+40
+2a
+fa
+68
+01
+c1
+6f
+20
+3a
+7f
+e9
+68
+00
+c0
+91
+20
+3a
+7f
+e9
+68
+00
+cf
+c3
+c0
+00
+ff
+e9
+20
+40
+02
+94
+20
+40
+02
+91
+20
+40
+3e
+bf
+68
+08
+cd
+17
+20
+40
+68
+25
+68
+12
+00
+70
+68
+1a
+00
+78
+98
+41
+84
+00
+18
+44
+04
+00
+60
+1a
+00
+7c
+68
+10
+80
+7d
+79
+3f
+fe
+02
+60
+10
+80
+7d
+68
+10
+80
+7e
+79
+3f
+fe
+06
+60
+10
+80
+7e
+68
+10
+80
+7f
+79
+3f
+fe
+03
+60
+10
+80
+7f
+68
+08
+cd
+00
+79
+3f
+84
+07
+20
+20
+68
+06
+70
+4e
+84
+01
+70
+4e
+af
+01
+70
+4f
+b8
+00
+20
+40
+00
+ea
+60
+00
+ce
+1f
+58
+00
+00
+00
+60
+03
+ce
+20
+68
+02
+4e
+ba
+60
+02
+4e
+27
+70
+4e
+83
+0c
+68
+00
+ce
+84
+79
+20
+7e
+03
+60
+00
+ce
+84
+20
+40
+01
+4f
+20
+20
+00
+9f
+70
+4f
+b9
+01
+70
+4f
+bb
+00
+68
+00
+ce
+84
+1f
+e1
+7e
+07
+60
+00
+ce
+84
+20
+60
+00
+00
+68
+00
+ce
+84
+79
+20
+7e
+04
+60
+00
+ce
+84
+60
+00
+ce
+3f
+20
+60
+00
+00
+68
+00
+ce
+84
+c4
+02
+00
+00
+68
+00
+ce
+84
+79
+3f
+fe
+04
+60
+00
+ce
+84
+60
+00
+ce
+3f
+20
+40
+05
+f8
+20
+20
+01
+3a
+68
+00
+cf
+b8
+c0
+80
+80
+ea
+68
+00
+cf
+b6
+1f
+e0
+fe
+01
+60
+00
+cf
+b6
+c0
+02
+01
+17
+20
+40
+01
+3a
+70
+4e
+c8
+02
+70
+4e
+8c
+00
+d9
+60
+0d
+00
+34
+73
+02
+00
+20
+40
+01
+82
+24
+2c
+01
+8d
+24
+37
+81
+8d
+20
+40
+01
+7f
+20
+40
+01
+a9
+20
+40
+07
+16
+68
+00
+ce
+82
+1f
+e0
+fe
+01
+60
+00
+ce
+82
+20
+40
+00
+f3
+68
+00
+ce
+93
+c0
+ff
+81
+b2
+20
+40
+01
+1e
+58
+00
+00
+00
+60
+02
+4e
+88
+60
+00
+cf
+b7
+20
+60
+00
+00
+20
+40
+05
+f8
+70
+4f
+b6
+00
+20
+20
+00
+ea
+70
+4f
+bb
+02
+70
+4f
+b9
+01
+70
+4f
+b8
+00
+20
+20
+00
+ea
+68
+00
+cf
+ba
+c0
+01
+81
+1b
+68
+00
+ce
+84
+2f
+ec
+00
+04
+20
+20
+80
+e8
+68
+00
+cf
+ba
+c0
+00
+81
+1a
+c0
+01
+01
+1b
+20
+60
+00
+00
+68
+00
+ce
+93
+c1
+ff
+80
+00
+20
+40
+01
+2c
+24
+56
+01
+34
+20
+60
+00
+00
+78
+56
+7c
+00
+68
+00
+cf
+b9
+c1
+80
+80
+00
+68
+00
+cf
+bb
+c1
+80
+00
+00
+70
+4f
+ba
+01
+70
+4e
+c8
+04
+20
+20
+7f
+eb
+68
+00
+cf
+bb
+20
+3a
+01
+47
+1f
+e0
+ff
+ff
+60
+00
+cf
+bb
+70
+4f
+ba
+02
+70
+4e
+c8
+04
+68
+08
+ce
+8e
+68
+00
+ce
+ab
+1f
+e1
+7e
+03
+1f
+ef
+a2
+04
+58
+00
+4e
+94
+9a
+20
+fe
+00
+98
+40
+8c
+00
+e8
+c0
+80
+00
+60
+00
+ce
+8d
+18
+40
+84
+01
+18
+41
+04
+03
+60
+08
+ce
+8e
+20
+60
+00
+00
+70
+4f
+ba
+03
+68
+00
+cf
+b8
+24
+3a
+00
+fb
+70
+4e
+c8
+02
+20
+20
+01
+3a
+68
+00
+ce
+93
+c0
+ff
+81
+b0
+20
+40
+01
+52
+20
+40
+01
+e8
+70
+4e
+88
+01
+20
+60
+00
+00
+68
+01
+4f
+b4
+20
+40
+7f
+9c
+20
+34
+01
+58
+68
+03
+ce
+20
+20
+7a
+00
+00
+20
+20
+7f
+e7
+68
+00
+cd
+87
+24
+3a
+01
+74
+70
+4e
+84
+01
+20
+40
+03
+5a
+20
+40
+01
+6e
+e8
+a8
+80
+00
+ea
+40
+80
+00
+98
+41
+fe
+00
+e0
+a0
+80
+00
+1a
+40
+a4
+01
+ea
+42
+00
+00
+e0
+a2
+00
+00
+1a
+40
+a4
+04
+d8
+a0
+4e
+25
+df
+20
+00
+02
+ea
+40
+80
+00
+e8
+a8
+80
+00
+98
+40
+fe
+00
+e0
+a0
+80
+00
+1a
+40
+a4
+01
+c2
+00
+01
+67
+20
+60
+00
+00
+70
+4e
+af
+00
+1a
+20
+fe
+01
+60
+00
+ce
+83
+20
+40
+00
+ea
+60
+00
+ce
+1f
+20
+60
+00
+00
+70
+4e
+84
+02
+da
+20
+00
+09
+da
+40
+4d
+91
+68
+00
+cd
+9a
+24
+5a
+01
+7d
+20
+40
+01
+6e
+1a
+42
+0c
+00
+1a
+22
+72
+00
+20
+20
+7f
+01
+da
+40
+4d
+88
+20
+60
+00
+00
+df
+20
+00
+04
+d8
+a0
+4e
+1f
+20
+20
+7e
+c6
+78
+57
+fc
+00
+20
+40
+02
+48
+18
+00
+2a
+00
+68
+02
+4e
+ab
+98
+00
+12
+00
+68
+08
+80
+17
+20
+40
+29
+1f
+20
+40
+29
+24
+20
+40
+02
+03
+20
+57
+82
+44
+20
+60
+00
+00
+68
+01
+4e
+89
+1f
+e0
+fe
+01
+60
+01
+4e
+89
+68
+00
+ce
+8a
+c2
+82
+01
+9a
+68
+00
+ce
+93
+c0
+ff
+81
+96
+20
+40
+01
+9f
+20
+20
+01
+04
+68
+00
+ce
+89
+c1
+ff
+80
+00
+58
+00
+00
+00
+60
+01
+4e
+89
+70
+0a
+99
+3a
+20
+20
+7d
+86
+20
+40
+07
+3f
+20
+40
+05
+f8
+20
+20
+01
+3a
+68
+00
+ce
+8c
+1f
+e6
+7c
+0b
+24
+21
+01
+9c
+1f
+e0
+fe
+01
+60
+00
+ce
+8c
+c0
+01
+00
+ee
+c0
+03
+00
+f5
+c0
+04
+00
+ee
+c0
+06
+00
+f5
+20
+60
+00
+00
+20
+40
+01
+cd
+68
+00
+ce
+81
+20
+7a
+00
+00
+98
+00
+72
+00
+d8
+c0
+4d
+ff
+d8
+a0
+4e
+61
+20
+20
+7f
+01
+70
+11
+c7
+90
+20
+20
+07
+7a
+20
+40
+07
+13
+70
+11
+c7
+91
+20
+20
+07
+7a
+20
+40
+04
+f6
+70
+11
+c7
+60
+20
+20
+07
+7a
+70
+4d
+46
+00
+70
+11
+c7
+70
+20
+20
+07
+7a
+70
+11
+9e
+ff
+68
+00
+ce
+84
+60
+00
+91
+9f
+68
+02
+4e
+ba
+60
+02
+11
+a0
+d8
+40
+00
+06
+da
+20
+11
+9e
+20
+40
+01
+c8
+20
+20
+01
+e8
+79
+3f
+80
+26
+20
+40
+53
+ce
+d8
+e0
+00
+03
+20
+20
+43
+d2
+60
+08
+ce
+83
+18
+42
+72
+00
+d8
+a0
+4e
+1f
+1a
+22
+0c
+00
+20
+20
+7f
+01
+68
+00
+cd
+fe
+1f
+e9
+7e
+00
+60
+00
+ce
+81
+1f
+e0
+fe
+01
+d8
+c0
+4d
+fe
+98
+c0
+8c
+00
+e8
+c1
+80
+00
+60
+01
+ce
+c0
+68
+00
+cd
+fe
+1f
+e3
+7e
+00
+1f
+e1
+7e
+03
+60
+00
+ce
+c6
+20
+60
+00
+00
+60
+02
+4e
+ab
+da
+20
+00
+00
+df
+20
+00
+04
+d8
+c0
+4e
+ab
+e8
+c0
+80
+00
+9a
+20
+a2
+00
+c2
+00
+01
+de
+1a
+22
+7e
+00
+60
+01
+4f
+34
+68
+00
+cf
+34
+68
+08
+cf
+35
+98
+40
+fe
+00
+60
+00
+cf
+36
+20
+60
+00
+00
+68
+00
+ce
+83
+1f
+e0
+fe
+02
+60
+00
+ce
+85
+68
+00
+ce
+84
+60
+00
+ce
+3f
+68
+00
+ce
+83
+1f
+e9
+fe
+00
+68
+08
+ce
+82
+18
+41
+04
+03
+18
+43
+84
+00
+98
+41
+fe
+00
+68
+08
+ce
+bf
+98
+40
+fe
+00
+e0
+a0
+80
+00
+68
+00
+ce
+83
+98
+00
+72
+00
+d8
+c0
+4e
+1f
+20
+20
+7f
+01
+78
+44
+fc
+00
+78
+43
+fc
+00
+58
+55
+55
+55
+98
+00
+1e
+00
+68
+00
+ce
+8d
+1f
+ed
+84
+00
+79
+20
+04
+01
+18
+43
+1c
+00
+20
+60
+00
+00
+20
+40
+01
+fa
+78
+57
+fc
+00
+78
+26
+fc
+00
+78
+30
+fc
+00
+78
+50
+7c
+00
+78
+28
+7c
+00
+68
+01
+4e
+86
+98
+00
+36
+00
+37
+c1
+84
+00
+24
+2c
+02
+44
+78
+46
+fc
+00
+78
+25
+fc
+00
+78
+23
+fc
+00
+78
+24
+fc
+00
+20
+40
+02
+41
+60
+00
+cf
+37
+68
+08
+cf
+36
+98
+46
+7c
+00
+24
+22
+82
+44
+20
+40
+02
+41
+60
+00
+cd
+fd
+68
+00
+cd
+fd
+68
+08
+ce
+84
+a8
+40
+0e
+00
+24
+20
+82
+44
+20
+40
+02
+41
+e0
+a0
+80
+00
+1f
+e9
+7e
+00
+1f
+e1
+72
+1f
+20
+22
+82
+24
+20
+40
+02
+41
+e0
+a0
+80
+00
+c2
+00
+02
+21
+18
+a2
+22
+00
+20
+40
+02
+41
+60
+00
+cf
+be
+1a
+22
+0a
+00
+09
+80
+00
+18
+78
+28
+7c
+00
+db
+60
+06
+64
+1f
+ef
+7e
+00
+1f
+f1
+7e
+00
+e0
+a1
+80
+00
+78
+45
+fc
+00
+20
+23
+02
+44
+78
+37
+fc
+00
+68
+00
+80
+17
+1f
+e0
+a2
+00
+20
+40
+29
+81
+78
+46
+fc
+00
+20
+40
+29
+18
+68
+00
+cf
+be
+1f
+e2
+22
+00
+68
+08
+cf
+3e
+58
+00
+4f
+45
+98
+40
+8a
+00
+1a
+22
+7e
+00
+e0
+a0
+80
+00
+18
+40
+84
+01
+18
+41
+04
+07
+60
+08
+cf
+3e
+20
+60
+00
+00
+09
+80
+00
+08
+19
+89
+7e
+00
+20
+60
+00
+00
+78
+4d
+fc
+00
+78
+45
+fc
+00
+20
+40
+26
+4d
+20
+60
+00
+00
+20
+40
+53
+c4
+68
+02
+4e
+ab
+98
+00
+12
+00
+20
+40
+01
+fa
+20
+40
+29
+18
+68
+08
+ce
+8d
+20
+40
+29
+33
+79
+20
+2a
+00
+78
+2e
+fc
+00
+78
+30
+7c
+00
+78
+50
+fc
+00
+19
+31
+7e
+00
+1f
+ec
+fe
+00
+1f
+f1
+fe
+00
+08
+00
+86
+28
+78
+4e
+fc
+00
+78
+2d
+fc
+00
+78
+23
+fc
+00
+78
+24
+fc
+00
+68
+00
+cf
+36
+08
+00
+86
+08
+68
+00
+ce
+85
+98
+00
+72
+00
+d8
+c0
+4e
+3f
+e8
+c0
+80
+00
+08
+00
+86
+08
+c2
+00
+02
+60
+78
+24
+7c
+00
+08
+00
+86
+18
+78
+44
+7c
+00
+37
+d3
+82
+00
+20
+00
+00
+64
+78
+4e
+fc
+00
+78
+4d
+fc
+00
+20
+60
+00
+00
+20
+40
+7f
+e9
+68
+0a
+4e
+a4
+1c
+42
+7e
+00
+98
+46
+7c
+00
+24
+41
+2d
+18
+1f
+e2
+24
+00
+68
+02
+4e
+a4
+68
+08
+ce
+a8
+98
+40
+84
+00
+1a
+42
+7e
+00
+98
+46
+7c
+00
+24
+61
+00
+00
+79
+3f
+fe
+1c
+60
+02
+4e
+a4
+20
+20
+7f
+e7
+d8
+40
+00
+00
+df
+20
+00
+08
+1a
+22
+0c
+00
+e8
+c0
+80
+00
+98
+40
+84
+00
+c2
+00
+02
+7d
+18
+49
+7e
+00
+1f
+e2
+04
+00
+c6
+93
+00
+00
+1f
+e6
+fc
+0a
+20
+40
+7f
+86
+18
+07
+fe
+00
+1f
+f2
+7e
+00
+18
+07
+04
+00
+98
+41
+84
+00
+20
+60
+00
+00
+c6
+13
+00
+00
+20
+40
+03
+2e
+20
+40
+00
+c3
+68
+00
+c0
+40
+c3
+00
+02
+91
+68
+00
+80
+a0
+24
+7a
+00
+00
+58
+00
+00
+00
+60
+04
+00
+a1
+20
+60
+00
+00
+68
+00
+cc
+d9
+20
+7a
+00
+00
+20
+20
+05
+14
+20
+40
+29
+6c
+20
+40
+34
+16
+20
+40
+74
+b9
+20
+35
+83
+eb
+68
+01
+c4
+a3
+60
+01
+cd
+3f
+20
+40
+00
+01
+70
+11
+c7
+22
+20
+20
+07
+7a
+70
+47
+9f
+01
+70
+47
+a0
+28
+20
+60
+00
+00
+68
+00
+cf
+3a
+60
+00
+c1
+de
+20
+60
+00
+00
+da
+20
+43
+70
+ea
+20
+80
+00
+20
+7a
+00
+00
+98
+c0
+a2
+00
+e8
+c0
+80
+00
+c1
+00
+80
+00
+20
+20
+02
+a7
+70
+4d
+3e
+5a
+20
+60
+00
+00
+70
+4d
+3e
+ff
+70
+42
+10
+34
+68
+03
+4f
+c8
+60
+03
+44
+a0
+20
+60
+00
+00
+20
+40
+03
+eb
+20
+40
+40
+c0
+20
+40
+40
+d9
+c0
+18
+02
+bc
+c0
+18
+82
+c8
+20
+40
+40
+d1
+20
+00
+03
+e8
+20
+20
+02
+b6
+20
+40
+03
+60
+68
+00
+c6
+de
+c0
+2a
+02
+c0
+20
+20
+40
+e0
+70
+46
+e0
+02
+da
+60
+4d
+62
+ea
+61
+00
+00
+c1
+7f
+80
+00
+20
+40
+64
+13
+20
+00
+2e
+e0
+1a
+60
+a6
+02
+20
+20
+02
+c2
+20
+40
+03
+60
+68
+00
+c6
+de
+c0
+38
+40
+e8
+70
+46
+e0
+01
+20
+60
+00
+00
+68
+00
+c7
+7a
+c0
+ff
+85
+14
+68
+00
+c6
+e1
+60
+00
+c7
+7a
+20
+20
+05
+14
+70
+80
+86
+40
+70
+80
+87
+00
+68
+10
+80
+81
+79
+3f
+fe
+00
+79
+3f
+fe
+01
+79
+20
+7e
+03
+79
+3f
+fe
+04
+60
+10
+80
+81
+58
+00
+00
+00
+60
+02
+01
+f5
+68
+10
+80
+7f
+79
+3f
+fe
+00
+60
+10
+80
+7f
+20
+60
+00
+00
+20
+40
+03
+25
+20
+40
+44
+23
+68
+01
+47
+78
+d8
+40
+aa
+55
+98
+46
+7c
+00
+20
+22
+83
+12
+60
+09
+47
+78
+20
+40
+44
+1c
+68
+00
+c6
+e1
+60
+00
+c7
+7a
+68
+02
+4d
+1e
+60
+02
+47
+7b
+60
+02
+4e
+ab
+20
+40
+02
+af
+d8
+40
+00
+04
+da
+20
+4e
+ab
+da
+40
+00
+5b
+20
+60
+00
+00
+68
+01
+c7
+00
+60
+01
+c2
+32
+20
+40
+65
+2a
+58
+01
+86
+a0
+20
+40
+2a
+8f
+20
+40
+65
+0b
+58
+00
+01
+fa
+60
+11
+00
+8c
+58
+00
+00
+05
+20
+40
+64
+f3
+c2
+80
+02
+f5
+20
+60
+00
+00
+1f
+e2
+26
+00
+1a
+22
+7e
+00
+1f
+e0
+ff
+fc
+1f
+e2
+24
+00
+ea
+42
+00
+00
+60
+02
+4d
+19
+1a
+62
+7e
+00
+20
+40
+65
+52
+68
+02
+4d
+19
+e2
+42
+00
+00
+20
+60
+00
+00
+58
+00
+47
+7f
+d8
+40
+47
+20
+98
+46
+04
+00
+68
+01
+c7
+00
+da
+20
+47
+20
+20
+60
+00
+00
+20
+40
+03
+25
+20
+40
+03
+09
+20
+20
+65
+62
+20
+40
+03
+0f
+20
+40
+05
+b3
+20
+40
+43
+1a
+68
+02
+47
+7b
+60
+02
+4e
+ab
+68
+03
+47
+22
+68
+0b
+4d
+f7
+98
+46
+7c
+00
+24
+22
+82
+ad
+20
+40
+02
+af
+20
+60
+00
+00
+70
+0a
+a2
+b9
+20
+40
+02
+d2
+20
+40
+69
+ac
+20
+40
+65
+0b
+da
+20
+4d
+19
+68
+08
+8a
+a2
+20
+40
+65
+56
+20
+20
+69
+ac
+70
+0a
+a2
+ab
+20
+20
+03
+1e
+20
+40
+44
+01
+68
+01
+46
+9f
+20
+7a
+00
+00
+70
+4f
+c3
+01
+58
+00
+00
+00
+60
+01
+4f
+c4
+20
+60
+00
+00
+d8
+c0
+18
+00
+d8
+a0
+49
+e5
+20
+40
+03
+36
+d8
+c0
+19
+00
+20
+40
+03
+36
+d8
+c0
+1a
+00
+20
+40
+03
+36
+d8
+c0
+1b
+00
+df
+20
+00
+1b
+20
+20
+7f
+01
+d8
+c0
+49
+e5
+d8
+a0
+18
+00
+20
+40
+03
+36
+d8
+a0
+19
+00
+20
+40
+03
+36
+d8
+a0
+1a
+00
+20
+40
+03
+36
+d8
+a0
+1b
+00
+20
+20
+03
+36
+20
+40
+58
+92
+24
+7a
+00
+00
+68
+00
+cd
+3e
+c0
+7f
+83
+48
+68
+00
+c6
+c5
+1f
+e1
+7e
+03
+c1
+81
+80
+00
+68
+00
+c7
+9e
+20
+5a
+03
+8a
+68
+02
+46
+d3
+c2
+82
+c1
+79
+20
+40
+3f
+97
+24
+74
+00
+00
+20
+40
+03
+57
+20
+40
+03
+5a
+20
+40
+03
+85
+68
+00
+cd
+87
+c0
+00
+83
+63
+da
+20
+46
+9a
+20
+40
+7e
+3d
+20
+54
+03
+74
+20
+60
+00
+00
+70
+41
+72
+00
+70
+4d
+36
+1e
+20
+60
+00
+00
+68
+00
+cd
+35
+c1
+80
+80
+00
+58
+00
+00
+00
+60
+00
+cd
+35
+60
+02
+46
+9b
+20
+20
+03
+8c
+da
+60
+4d
+6f
+20
+40
+02
+c2
+20
+20
+02
+cd
+68
+00
+cd
+9a
+20
+3a
+03
+6d
+68
+04
+4d
+89
+60
+04
+0a
+9a
+da
+20
+00
+08
+d8
+40
+00
+15
+20
+40
+5a
+64
+68
+04
+0a
+9a
+e0
+a4
+00
+00
+20
+60
+00
+00
+68
+04
+4d
+92
+20
+20
+03
+66
+70
+47
+a2
+07
+70
+47
+a3
+04
+58
+00
+47
+a2
+60
+01
+42
+18
+20
+20
+7e
+38
+68
+00
+c7
+c3
+1f
+e0
+fe
+01
+60
+00
+c7
+c3
+20
+60
+00
+00
+da
+20
+46
+9a
+20
+40
+7e
+54
+20
+34
+03
+7c
+20
+60
+00
+00
+20
+40
+56
+52
+68
+00
+c7
+c3
+1f
+e6
+7c
+01
+24
+41
+56
+50
+68
+00
+c7
+c3
+20
+7a
+00
+00
+1f
+e0
+ff
+ff
+60
+00
+c7
+c3
+20
+20
+3f
+90
+68
+01
+46
+9f
+20
+7a
+00
+00
+70
+49
+e1
+01
+70
+49
+e2
+02
+20
+60
+00
+00
+70
+47
+9e
+01
+20
+40
+58
+14
+70
+4c
+d9
+01
+20
+20
+02
+b4
+20
+40
+68
+a2
+58
+00
+11
+22
+60
+01
+47
+c4
+20
+60
+00
+00
+20
+77
+00
+00
+68
+00
+c1
+e2
+20
+7a
+00
+00
+20
+40
+52
+71
+24
+7a
+00
+00
+68
+00
+c7
+9e
+20
+5a
+03
+8a
+68
+02
+46
+d3
+c2
+82
+bf
+8a
+c2
+84
+bf
+8a
+20
+40
+3f
+97
+24
+74
+00
+00
+20
+40
+03
+57
+20
+40
+03
+5a
+20
+40
+03
+85
+68
+00
+cc
+de
+c0
+00
+83
+a8
+68
+00
+cc
+e5
+20
+7a
+00
+00
+68
+00
+cd
+87
+c0
+00
+83
+b9
+20
+20
+3f
+81
+68
+00
+c6
+9a
+60
+00
+cc
+df
+68
+00
+c6
+9b
+e0
+a0
+80
+00
+68
+00
+c6
+9d
+e0
+a0
+80
+00
+68
+01
+46
+9f
+e0
+a1
+00
+00
+da
+20
+00
+07
+20
+40
+4d
+63
+68
+01
+42
+4e
+e0
+a1
+00
+00
+58
+00
+02
+a1
+e0
+a1
+00
+00
+68
+02
+cc
+df
+e0
+a2
+80
+00
+20
+60
+00
+00
+68
+00
+cd
+9a
+20
+3a
+03
+c6
+68
+04
+4d
+89
+60
+04
+0a
+9a
+da
+20
+00
+0a
+20
+40
+4d
+63
+68
+01
+42
+4e
+e0
+a1
+00
+00
+58
+00
+01
+a1
+e0
+a1
+00
+00
+68
+04
+0a
+9a
+e0
+a4
+00
+00
+20
+60
+00
+00
+68
+04
+4d
+92
+20
+20
+03
+bc
+20
+40
+7e
+34
+20
+40
+03
+cb
+20
+20
+3e
+e0
+70
+4d
+f5
+05
+68
+08
+c6
+e7
+68
+00
+cd
+f3
+20
+40
+05
+48
+60
+00
+cd
+f3
+68
+08
+c6
+e7
+20
+40
+05
+81
+1a
+22
+7e
+00
+c2
+82
+83
+d5
+20
+20
+3d
+62
+68
+00
+c6
+b6
+c1
+00
+00
+00
+70
+46
+b6
+00
+68
+00
+c7
+7a
+1f
+e0
+fe
+01
+1f
+e1
+7e
+03
+60
+00
+c7
+7a
+20
+40
+3d
+7e
+20
+40
+03
+25
+20
+40
+02
+f2
+20
+40
+03
+09
+20
+40
+02
+fe
+20
+40
+02
+f5
+20
+40
+02
+d2
+d8
+40
+00
+02
+da
+20
+47
+c4
+da
+40
+00
+5f
+68
+01
+c7
+00
+9a
+40
+fe
+00
+20
+40
+02
+fe
+20
+40
+02
+f5
+20
+40
+03
+1d
+70
+42
+12
+76
+20
+20
+3d
+36
+1a
+62
+7e
+00
+c0
+0a
+03
+fe
+c0
+0a
+84
+07
+c0
+14
+84
+0a
+c0
+19
+04
+0c
+c0
+20
+04
+0e
+c0
+02
+04
+10
+c0
+09
+84
+10
+c0
+0c
+b3
+df
+c0
+10
+84
+14
+c0
+00
+84
+16
+c0
+01
+04
+1b
+c0
+15
+84
+1e
+c0
+1c
+84
+20
+c0
+1d
+04
+23
+c0
+1e
+04
+25
+20
+20
+41
+7d
+20
+40
+03
+8c
+20
+40
+34
+10
+70
+4d
+3d
+01
+68
+00
+c7
+a1
+24
+3a
+04
+04
+70
+4d
+44
+14
+20
+40
+04
+c2
+20
+40
+03
+6f
+20
+20
+41
+c3
+20
+40
+04
+2a
+70
+11
+c7
+a2
+20
+20
+07
+7a
+70
+0a
+99
+12
+20
+20
+7d
+8f
+70
+11
+c7
+b3
+20
+20
+07
+7a
+70
+11
+c7
+a1
+20
+20
+07
+7a
+70
+11
+c7
+a3
+20
+20
+07
+7a
+70
+11
+c7
+b5
+20
+20
+07
+7a
+70
+11
+c7
+b1
+20
+20
+07
+7a
+20
+40
+03
+8c
+20
+40
+04
+c2
+20
+40
+04
+e9
+70
+49
+e4
+00
+20
+20
+42
+ca
+20
+40
+04
+2a
+70
+11
+c7
+b4
+20
+20
+07
+7a
+70
+11
+c7
+b2
+20
+20
+07
+7a
+20
+40
+03
+8c
+70
+11
+c7
+92
+20
+20
+07
+7a
+70
+11
+c7
+61
+20
+20
+07
+7a
+20
+40
+03
+8c
+20
+20
+3f
+8d
+20
+40
+04
+2a
+70
+11
+c7
+a4
+20
+20
+07
+7a
+68
+00
+cc
+d9
+20
+7a
+00
+00
+70
+4c
+d9
+00
+20
+40
+02
+b4
+58
+00
+00
+06
+20
+40
+64
+14
+1f
+e1
+fe
+08
+1f
+ed
+7e
+00
+1f
+e0
+fe
+06
+20
+20
+64
+13
+20
+40
+05
+02
+20
+40
+04
+c5
+20
+40
+04
+99
+20
+40
+04
+b8
+20
+40
+04
+9e
+20
+40
+42
+34
+20
+40
+04
+44
+20
+40
+04
+92
+20
+40
+04
+7c
+20
+40
+04
+79
+20
+40
+04
+84
+20
+40
+04
+8a
+20
+40
+04
+71
+20
+40
+42
+31
+20
+40
+04
+74
+20
+20
+42
+3a
+20
+40
+04
+52
+20
+20
+84
+63
+68
+00
+cd
+47
+24
+3a
+04
+5f
+68
+00
+c6
+d9
+c1
+00
+80
+00
+70
+46
+d9
+01
+70
+4c
+ff
+01
+68
+00
+cd
+46
+20
+3a
+04
+5d
+20
+40
+04
+56
+70
+41
+bd
+00
+20
+40
+03
+dd
+20
+20
+43
+78
+68
+08
+c6
+ed
+20
+40
+67
+fb
+68
+08
+c6
+ed
+20
+20
+68
+1d
+68
+08
+c7
+20
+18
+40
+84
+01
+68
+00
+c6
+d2
+98
+46
+7c
+00
+24
+41
+43
+cc
+60
+08
+c7
+20
+20
+60
+00
+00
+70
+4d
+46
+ff
+20
+60
+00
+00
+70
+4d
+47
+00
+70
+46
+d9
+01
+70
+4c
+ff
+01
+20
+60
+00
+00
+68
+01
+46
+82
+c2
+85
+84
+66
+70
+4c
+ff
+00
+68
+00
+c6
+d9
+c1
+00
+00
+00
+70
+46
+d9
+00
+68
+01
+42
+08
+c3
+85
+00
+00
+68
+00
+c7
+20
+c1
+80
+80
+00
+68
+01
+42
+0a
+79
+20
+7e
+0a
+60
+01
+42
+0a
+20
+20
+43
+86
+da
+60
+49
+e4
+da
+40
+63
+7a
+20
+20
+33
+6d
+da
+60
+4c
+e4
+da
+40
+04
+77
+20
+20
+33
+6d
+70
+4c
+e5
+01
+20
+60
+00
+00
+da
+60
+46
+c6
+da
+40
+3d
+60
+20
+20
+33
+6d
+da
+60
+46
+ae
+da
+40
+04
+7f
+20
+20
+33
+74
+68
+00
+cd
+3e
+c0
+7f
+84
+ac
+68
+00
+cd
+09
+24
+7a
+00
+00
+20
+20
+42
+66
+da
+60
+4d
+36
+da
+40
+04
+87
+20
+20
+33
+6d
+68
+00
+c7
+c7
+60
+00
+c1
+72
+20
+20
+04
+97
+68
+00
+cd
+3d
+20
+7a
+00
+00
+da
+60
+4d
+44
+da
+40
+04
+8f
+20
+20
+33
+6d
+68
+00
+cd
+45
+24
+7a
+00
+00
+20
+20
+5b
+f5
+da
+60
+4d
+37
+da
+40
+04
+95
+20
+20
+33
+6d
+58
+12
+4f
+80
+60
+01
+ce
+b2
+70
+4d
+35
+01
+20
+60
+00
+00
+da
+60
+49
+e2
+da
+40
+04
+9c
+20
+20
+33
+6d
+70
+49
+e1
+00
+20
+60
+00
+00
+20
+40
+04
+52
+20
+20
+84
+a5
+20
+40
+05
+40
+c0
+03
+84
+a5
+20
+40
+43
+a9
+d8
+e0
+00
+09
+20
+20
+43
+d2
+20
+40
+05
+81
+70
+47
+a0
+28
+20
+40
+04
+a9
+20
+20
+43
+b0
+da
+60
+46
+da
+da
+40
+04
+ac
+20
+20
+33
+6d
+68
+02
+46
+d3
+c3
+84
+80
+00
+70
+4d
+46
+00
+68
+01
+46
+82
+2f
+ef
+fe
+0b
+20
+40
+c2
+d4
+68
+01
+46
+82
+2f
+ef
+fe
+07
+20
+40
+c3
+92
+d8
+e0
+00
+09
+20
+40
+43
+ce
+20
+20
+43
+b8
+68
+00
+cd
+09
+24
+7a
+00
+00
+68
+00
+c7
+9f
+20
+7a
+00
+00
+da
+60
+47
+a0
+da
+40
+04
+bf
+20
+20
+33
+6d
+70
+47
+9f
+00
+20
+40
+04
+2d
+20
+20
+34
+0a
+70
+47
+9f
+00
+70
+47
+a0
+00
+20
+60
+00
+00
+68
+00
+cc
+ff
+20
+7a
+00
+00
+68
+00
+cd
+02
+c0
+00
+04
+cb
+c0
+00
+84
+d5
+20
+60
+00
+00
+20
+40
+04
+de
+68
+00
+cd
+07
+1f
+e0
+fe
+01
+60
+00
+cd
+07
+68
+08
+cd
+03
+98
+46
+7c
+00
+20
+42
+84
+d3
+20
+60
+00
+00
+70
+4d
+09
+00
+20
+20
+04
+ef
+da
+60
+4d
+05
+da
+40
+04
+d8
+20
+20
+33
+6d
+68
+00
+cd
+04
+60
+00
+cd
+05
+68
+00
+cd
+01
+c0
+00
+84
+ef
+c0
+00
+04
+de
+20
+60
+00
+00
+70
+4d
+01
+01
+68
+00
+c7
+20
+c0
+01
+04
+e5
+68
+08
+cd
+00
+20
+40
+68
+0e
+68
+08
+cd
+00
+20
+20
+68
+29
+68
+08
+cd
+00
+20
+40
+68
+0e
+68
+08
+cd
+00
+20
+20
+68
+25
+68
+00
+cd
+07
+24
+7a
+00
+00
+68
+00
+cd
+09
+24
+7a
+00
+00
+58
+00
+00
+00
+60
+01
+cd
+05
+68
+00
+cd
+06
+24
+3a
+04
+f3
+70
+4c
+ff
+00
+70
+4d
+02
+00
+70
+4d
+07
+00
+70
+4d
+01
+00
+20
+20
+00
+d6
+70
+4d
+09
+01
+70
+4c
+ff
+01
+70
+4d
+02
+00
+70
+4d
+07
+00
+20
+60
+00
+00
+70
+4d
+09
+00
+70
+4d
+04
+02
+70
+4d
+06
+01
+70
+4d
+05
+02
+70
+4c
+ff
+01
+70
+4d
+02
+01
+20
+60
+00
+00
+68
+01
+4d
+06
+24
+7a
+00
+00
+da
+60
+46
+ce
+da
+40
+05
+07
+20
+20
+33
+6d
+70
+46
+ce
+0a
+20
+40
+68
+eb
+20
+40
+69
+08
+1f
+e0
+fe
+1c
+60
+01
+47
+0f
+da
+20
+47
+09
+ea
+24
+00
+00
+60
+04
+0a
+9a
+68
+09
+0a
+9c
+68
+01
+0a
+a0
+98
+46
+7c
+00
+24
+21
+04
+c0
+20
+60
+00
+00
+68
+00
+c6
+e0
+c0
+03
+05
+22
+c0
+01
+05
+22
+68
+00
+c7
+7a
+1f
+e6
+7c
+01
+20
+42
+85
+1e
+68
+00
+c7
+7a
+c0
+00
+05
+20
+c0
+01
+bd
+8c
+20
+20
+3d
+88
+70
+47
+7a
+02
+20
+60
+00
+00
+68
+00
+c7
+7f
+20
+20
+05
+2a
+68
+00
+c7
+7a
+1f
+e6
+7c
+01
+20
+42
+85
+1e
+68
+00
+c7
+7a
+c0
+00
+05
+2c
+c0
+01
+85
+2f
+68
+00
+c7
+81
+1f
+e0
+ff
+ff
+60
+00
+c6
+b5
+20
+20
+3d
+c1
+68
+00
+c7
+7f
+1f
+e0
+ff
+ff
+20
+20
+05
+2a
+68
+00
+c7
+82
+1f
+e0
+ff
+ff
+20
+20
+05
+2a
+78
+54
+7c
+00
+58
+00
+00
+00
+60
+03
+46
+9b
+20
+40
+05
+9d
+20
+40
+40
+79
+20
+40
+05
+3e
+24
+34
+05
+3b
+20
+40
+07
+9b
+20
+20
+3f
+a0
+20
+40
+07
+a4
+70
+4d
+11
+00
+20
+60
+00
+00
+20
+40
+05
+40
+20
+20
+40
+9a
+68
+00
+c6
+9a
+1f
+e2
+22
+00
+20
+40
+05
+61
+20
+40
+05
+67
+20
+40
+05
+6d
+20
+40
+05
+73
+1a
+22
+7e
+00
+20
+60
+00
+00
+60
+00
+cd
+f6
+1f
+e3
+fe
+00
+1f
+e2
+24
+00
+18
+42
+26
+00
+68
+00
+cd
+f5
+1f
+e6
+7c
+02
+20
+41
+05
+81
+24
+41
+05
+8c
+1a
+62
+04
+00
+20
+40
+68
+1d
+79
+20
+a4
+00
+20
+40
+05
+5b
+1a
+41
+7e
+07
+68
+08
+cd
+f5
+18
+42
+0e
+00
+18
+46
+7c
+02
+c0
+03
+85
+86
+c0
+00
+05
+89
+20
+60
+00
+00
+68
+08
+cd
+f6
+18
+41
+04
+01
+1a
+41
+7e
+01
+98
+46
+7c
+00
+24
+22
+83
+57
+20
+60
+00
+00
+70
+4d
+f5
+00
+68
+08
+c6
+e2
+68
+00
+cd
+ee
+20
+40
+05
+48
+60
+00
+cd
+ee
+20
+60
+00
+00
+70
+4d
+f5
+01
+68
+08
+c6
+e3
+68
+00
+cd
+ef
+20
+40
+05
+48
+60
+00
+cd
+ef
+20
+60
+00
+00
+70
+4d
+f5
+02
+68
+08
+c6
+e4
+68
+00
+cd
+f0
+20
+40
+05
+48
+60
+00
+cd
+f0
+20
+60
+00
+00
+70
+4d
+87
+00
+70
+4d
+f5
+04
+68
+08
+c6
+e6
+68
+00
+cd
+f2
+20
+40
+05
+48
+60
+00
+cd
+f2
+1a
+22
+7e
+00
+c2
+82
+05
+92
+20
+40
+05
+95
+1a
+22
+7e
+00
+1a
+21
+22
+ef
+68
+00
+cd
+9a
+60
+00
+cd
+9b
+68
+08
+c6
+e6
+79
+20
+04
+07
+d8
+a0
+80
+78
+20
+40
+68
+30
+79
+3f
+84
+07
+20
+20
+05
+90
+20
+21
+05
+8a
+f9
+3f
+a2
+00
+20
+60
+00
+00
+20
+21
+05
+87
+f9
+20
+22
+00
+20
+60
+00
+00
+79
+3f
+84
+07
+d8
+a0
+80
+78
+20
+40
+68
+30
+79
+20
+04
+07
+d8
+a0
+80
+7c
+20
+20
+68
+0a
+70
+4d
+9a
+01
+20
+40
+05
+98
+20
+20
+05
+7c
+70
+4d
+9a
+00
+68
+00
+cd
+9b
+20
+7a
+00
+00
+70
+4d
+87
+01
+20
+20
+7f
+e7
+68
+08
+c6
+ed
+79
+3f
+84
+07
+20
+20
+05
+82
+68
+00
+c6
+e0
+c0
+04
+05
+a2
+20
+40
+3f
+c0
+78
+54
+7c
+00
+20
+20
+3f
+e7
+20
+40
+3f
+c0
+78
+54
+7c
+00
+58
+00
+00
+02
+20
+40
+64
+14
+c4
+03
+80
+00
+58
+00
+00
+08
+20
+40
+64
+14
+20
+3a
+3f
+ed
+58
+00
+00
+00
+60
+03
+46
+9b
+20
+60
+00
+00
+20
+40
+04
+c2
+28
+0f
+fe
+26
+20
+40
+81
+c4
+20
+20
+42
+6d
+70
+11
+c7
+50
+20
+20
+07
+7a
+20
+40
+03
+25
+d8
+40
+00
+02
+da
+20
+47
+c4
+da
+40
+00
+5f
+68
+01
+c7
+00
+9a
+40
+fe
+00
+20
+20
+65
+62
+d8
+a0
+43
+7b
+df
+20
+00
+13
+20
+40
+7f
+01
+20
+20
+57
+b8
+20
+40
+04
+e9
+70
+4c
+d9
+01
+20
+40
+03
+8c
+20
+20
+42
+cb
+68
+00
+c5
+0f
+1f
+e0
+fe
+01
+60
+00
+c5
+0f
+c0
+06
+53
+95
+20
+40
+55
+aa
+20
+40
+56
+1e
+20
+40
+07
+1c
+20
+20
+53
+8f
+68
+00
+80
+16
+1f
+e0
+fe
+01
+60
+00
+80
+16
+c1
+94
+00
+00
+70
+00
+16
+25
+20
+60
+00
+00
+20
+40
+29
+bb
+20
+40
+02
+37
+20
+20
+54
+a3
+70
+11
+c7
+40
+20
+20
+07
+7a
+70
+11
+c7
+41
+20
+20
+07
+7a
+68
+00
+84
+56
+c2
+82
+85
+f7
+20
+40
+07
+16
+68
+00
+c7
+8e
+24
+3a
+05
+e1
+68
+00
+84
+3f
+c3
+02
+05
+e5
+68
+00
+82
+da
+20
+3a
+05
+e5
+20
+20
+56
+64
+68
+00
+c7
+8e
+1f
+e0
+ff
+ff
+60
+00
+c7
+8e
+20
+20
+56
+64
+68
+00
+c4
+c4
+c0
+82
+85
+e8
+70
+47
+8e
+03
+20
+40
+58
+92
+20
+5a
+03
+78
+20
+20
+56
+22
+68
+00
+c6
+c5
+1f
+e1
+7e
+03
+c1
+81
+80
+00
+68
+00
+c7
+c3
+20
+7a
+00
+00
+68
+00
+c3
+dd
+20
+7a
+00
+00
+68
+00
+c3
+dc
+79
+20
+7e
+04
+60
+00
+c3
+dc
+20
+40
+56
+50
+20
+60
+00
+00
+20
+40
+05
+eb
+68
+00
+cf
+bc
+1f
+e6
+7c
+02
+24
+41
+07
+1a
+68
+00
+cf
+bc
+c1
+00
+00
+00
+1f
+e0
+ff
+ff
+60
+00
+cf
+bc
+20
+60
+00
+00
+68
+00
+c7
+a1
+20
+7a
+00
+00
+68
+00
+c6
+c5
+1f
+e1
+7e
+03
+c1
+01
+80
+00
+70
+46
+c6
+01
+20
+60
+00
+00
+c6
+07
+80
+00
+20
+40
+58
+90
+24
+7a
+00
+00
+68
+00
+82
+d9
+1f
+e1
+7e
+03
+60
+00
+c5
+0c
+e8
+c0
+80
+00
+1f
+e1
+7e
+1f
+60
+00
+c5
+0b
+20
+7a
+00
+00
+18
+c2
+7e
+00
+60
+01
+45
+0d
+68
+00
+c5
+0c
+c0
+01
+86
+16
+20
+20
+56
+8d
+68
+00
+82
+db
+c0
+00
+06
+1a
+c0
+00
+86
+21
+20
+20
+5c
+65
+20
+40
+5c
+7b
+68
+00
+cd
+48
+20
+7a
+00
+00
+68
+00
+c3
+d8
+60
+00
+c1
+72
+60
+00
+c7
+c7
+20
+60
+00
+00
+e8
+c2
+80
+00
+60
+02
+c3
+ce
+e8
+c1
+00
+00
+60
+01
+04
+5f
+20
+20
+5c
+8a
+e8
+c1
+00
+00
+c0
+02
+06
+2a
+c0
+03
+06
+2e
+20
+20
+56
+98
+20
+40
+7e
+a5
+20
+40
+06
+00
+20
+40
+7e
+9f
+20
+20
+58
+ab
+e8
+c0
+80
+00
+c0
+00
+86
+32
+c0
+02
+86
+34
+20
+20
+5a
+f6
+70
+4d
+45
+01
+20
+20
+5b
+09
+70
+11
+c7
+82
+20
+20
+07
+7a
+68
+00
+80
+16
+c0
+93
+d6
+f2
+20
+40
+06
+3c
+d8
+e0
+00
+00
+68
+01
+44
+82
+20
+20
+7f
+08
+18
+0a
+7e
+00
+d8
+40
+01
+ff
+98
+41
+7e
+00
+1f
+e0
+fe
+fa
+20
+20
+3c
+be
+78
+55
+fc
+00
+20
+37
+06
+44
+24
+36
+d8
+06
+20
+40
+2b
+cb
+68
+01
+40
+c1
+60
+01
+04
+4d
+68
+00
+c6
+c5
+2f
+e0
+06
+03
+24
+20
+ab
+de
+20
+20
+57
+fb
+70
+11
+c7
+42
+20
+20
+07
+7a
+68
+10
+80
+77
+1f
+e1
+7e
+fd
+60
+10
+80
+77
+68
+18
+80
+73
+18
+41
+84
+02
+60
+18
+80
+73
+20
+40
+63
+ee
+18
+41
+04
+fd
+20
+00
+00
+0d
+20
+40
+06
+5a
+60
+18
+80
+73
+20
+60
+00
+00
+20
+40
+64
+dd
+68
+10
+80
+81
+79
+20
+7e
+00
+79
+3f
+fe
+01
+79
+3f
+fe
+03
+60
+10
+80
+81
+20
+60
+00
+00
+58
+00
+4a
+51
+60
+01
+45
+75
+20
+60
+00
+00
+70
+11
+c7
+00
+20
+20
+07
+7a
+20
+40
+21
+c9
+24
+74
+00
+00
+78
+54
+7c
+00
+70
+00
+11
+20
+79
+3f
+80
+0b
+79
+3f
+80
+2d
+20
+40
+2a
+4f
+20
+40
+22
+e6
+c5
+05
+86
+72
+20
+40
+24
+55
+24
+3a
+06
+6b
+c5
+16
+86
+7b
+20
+20
+21
+ec
+20
+40
+2a
+4d
+d8
+20
+00
+10
+20
+40
+22
+dc
+79
+20
+00
+2d
+79
+3f
+80
+0b
+68
+00
+80
+77
+98
+00
+08
+00
+70
+00
+11
+02
+20
+20
+06
+6b
+68
+02
+01
+65
+1f
+e0
+fe
+08
+60
+02
+01
+65
+20
+20
+21
+f8
+c5
+16
+26
+4d
+20
+20
+25
+8f
+70
+11
+c7
+43
+20
+20
+07
+7a
+68
+00
+80
+30
+2f
+ef
+fe
+00
+20
+40
+86
+87
+20
+20
+24
+8a
+68
+00
+80
+47
+2f
+ef
+fe
+03
+20
+40
+85
+f8
+24
+40
+87
+16
+20
+20
+07
+1c
+20
+40
+24
+f0
+24
+2c
+28
+f9
+20
+40
+29
+bb
+20
+40
+02
+37
+20
+20
+25
+18
+c6
+13
+00
+00
+20
+40
+2a
+fa
+68
+01
+c1
+6f
+20
+7a
+00
+00
+68
+00
+c0
+91
+20
+7a
+00
+00
+68
+00
+c6
+5a
+20
+3a
+06
+9b
+68
+00
+c5
+b1
+20
+7a
+00
+00
+68
+00
+c4
+c0
+24
+7a
+00
+00
+20
+40
+2c
+3a
+24
+7a
+00
+00
+68
+00
+c0
+40
+2f
+e0
+0e
+03
+24
+20
+ab
+9d
+68
+01
+40
+42
+d8
+40
+ff
+ff
+98
+46
+7c
+00
+20
+62
+80
+00
+20
+20
+2b
+7d
+78
+55
+fc
+00
+68
+00
+80
+30
+c4
+00
+80
+00
+24
+36
+ab
+d0
+20
+40
+2b
+cb
+68
+01
+40
+c1
+60
+01
+00
+3e
+68
+00
+80
+47
+c2
+81
+ab
+de
+c5
+86
+ab
+de
+20
+40
+52
+74
+24
+3a
+2b
+de
+20
+5a
+06
+b5
+20
+20
+2b
+be
+70
+00
+8a
+01
+70
+00
+8b
+00
+20
+60
+00
+00
+70
+11
+c7
+10
+20
+20
+07
+7a
+70
+11
+c7
+11
+20
+20
+07
+7a
+68
+00
+85
+52
+60
+00
+84
+c9
+c0
+09
+86
+c0
+20
+20
+5d
+b4
+20
+40
+5d
+cf
+70
+4c
+da
+01
+68
+00
+cc
+dc
+20
+7a
+00
+00
+70
+4c
+dc
+02
+20
+60
+00
+00
+78
+54
+7c
+00
+20
+40
+62
+c1
+68
+00
+80
+48
+20
+7a
+00
+00
+c2
+83
+86
+cf
+c0
+01
+86
+d1
+c0
+18
+86
+d3
+c0
+0b
+86
+d5
+20
+20
+60
+10
+70
+11
+c7
+20
+20
+20
+07
+7a
+70
+11
+c7
+21
+20
+20
+07
+7a
+70
+4c
+dc
+01
+20
+20
+61
+c3
+70
+4c
+e4
+04
+20
+20
+61
+a4
+20
+40
+62
+bc
+24
+7a
+00
+00
+68
+00
+80
+55
+20
+7a
+00
+00
+c0
+02
+06
+f9
+c0
+08
+06
+de
+20
+20
+63
+20
+68
+00
+c5
+5b
+c1
+00
+00
+00
+c0
+00
+86
+e2
+20
+20
+63
+5f
+20
+74
+80
+00
+68
+00
+81
+6d
+c2
+80
+06
+e6
+20
+20
+63
+99
+68
+00
+cc
+dc
+c0
+00
+e3
+9d
+68
+00
+c1
+bd
+20
+3a
+63
+a9
+68
+00
+84
+d1
+c4
+01
+80
+00
+c4
+01
+00
+00
+68
+00
+cc
+db
+20
+7a
+00
+00
+70
+4c
+db
+00
+68
+02
+04
+e9
+d8
+40
+00
+14
+98
+40
+84
+00
+1c
+42
+7e
+00
+98
+46
+7c
+00
+24
+21
+06
+f7
+20
+20
+63
+49
+70
+4c
+db
+01
+20
+60
+00
+00
+70
+49
+e4
+14
+20
+20
+63
+6f
+20
+40
+62
+bc
+24
+3a
+7d
+db
+68
+00
+8a
+99
+c5
+84
+fd
+d6
+c0
+0f
+87
+03
+c0
+10
+07
+06
+c0
+09
+07
+10
+20
+20
+7d
+ca
+70
+01
+85
+34
+68
+03
+04
+4f
+20
+20
+07
+08
+70
+01
+85
+33
+68
+03
+00
+40
+60
+03
+01
+86
+68
+02
+46
+d3
+c4
+03
+80
+00
+d8
+e0
+00
+07
+20
+40
+43
+d2
+20
+40
+42
+e8
+20
+40
+42
+fb
+20
+20
+03
+dd
+20
+40
+58
+90
+24
+7a
+00
+00
+20
+20
+5a
+bf
+70
+4f
+bf
+01
+70
+4f
+bc
+00
+20
+60
+00
+00
+68
+00
+cf
+bc
+1f
+e0
+fe
+01
+60
+00
+cf
+bc
+20
+60
+00
+00
+70
+4f
+bc
+03
+20
+60
+00
+00
+68
+01
+46
+82
+c3
+85
+80
+00
+c3
+83
+80
+00
+c3
+83
+00
+00
+da
+20
+4f
+45
+20
+40
+02
+7a
+60
+08
+cf
+bd
+58
+00
+00
+82
+c5
+13
+07
+26
+58
+00
+00
+80
+98
+46
+7c
+00
+24
+21
+07
+3e
+68
+00
+cf
+bc
+1f
+e6
+7c
+02
+24
+21
+07
+2e
+68
+00
+cf
+bc
+c0
+00
+07
+3f
+20
+60
+00
+00
+68
+00
+cf
+bc
+c1
+99
+00
+00
+70
+4f
+bc
+00
+68
+08
+cf
+bd
+58
+00
+00
+77
+c5
+13
+07
+35
+58
+00
+00
+75
+98
+46
+7c
+00
+24
+61
+00
+00
+68
+00
+cf
+bf
+c0
+00
+07
+46
+1f
+e0
+ff
+ff
+60
+00
+cf
+bf
+c0
+00
+07
+46
+70
+41
+de
+00
+20
+60
+00
+00
+70
+4f
+bc
+00
+68
+00
+cf
+bf
+c0
+01
+07
+44
+1f
+e0
+fe
+01
+60
+00
+cf
+bf
+c0
+00
+87
+3c
+70
+41
+de
+02
+20
+60
+00
+00
+70
+41
+de
+04
+20
+60
+00
+00
+60
+08
+80
+17
+18
+40
+a2
+00
+20
+40
+29
+81
+58
+00
+05
+00
+20
+40
+2a
+8f
+70
+89
+06
+01
+70
+89
+00
+3c
+70
+89
+01
+e0
+20
+00
+00
+0a
+70
+89
+02
+01
+70
+89
+02
+3d
+20
+00
+00
+0a
+70
+89
+03
+b7
+20
+00
+00
+0a
+70
+89
+02
+7d
+68
+00
+c1
+de
+c0
+01
+07
+60
+c0
+02
+07
+68
+c0
+10
+07
+72
+20
+40
+07
+6d
+70
+89
+55
+d0
+70
+89
+56
+e0
+70
+89
+58
+6c
+20
+20
+29
+4b
+70
+89
+4c
+fb
+70
+89
+4d
+ef
+70
+89
+4e
+ec
+70
+89
+4f
+5e
+70
+89
+55
+d0
+70
+89
+56
+e0
+70
+89
+58
+3c
+20
+20
+29
+53
+20
+40
+07
+6d
+70
+89
+55
+d0
+70
+89
+56
+c0
+70
+89
+58
+6c
+20
+20
+29
+5b
+70
+89
+4c
+5b
+70
+89
+4d
+96
+70
+89
+4e
+2c
+70
+89
+4f
+46
+20
+60
+00
+00
+70
+89
+56
+c2
+70
+89
+55
+d0
+20
+60
+00
+00
+18
+00
+2a
+08
+20
+20
+28
+fa
+20
+40
+29
+78
+70
+80
+42
+05
+20
+60
+00
+00
+68
+08
+91
+c7
+18
+51
+84
+00
+68
+00
+cd
+27
+98
+46
+7c
+00
+20
+22
+87
+99
+60
+08
+cd
+27
+18
+40
+84
+01
+58
+00
+01
+00
+98
+4f
+84
+00
+68
+01
+cd
+28
+98
+46
+7e
+00
+68
+09
+cd
+2b
+98
+40
+fe
+00
+1f
+e0
+ff
+fb
+60
+01
+cd
+2e
+20
+40
+03
+25
+68
+01
+cd
+2e
+d8
+40
+01
+00
+da
+20
+1f
+00
+20
+40
+65
+62
+68
+02
+1f
+00
+68
+0a
+4d
+31
+98
+46
+7c
+00
+24
+22
+87
+8a
+20
+40
+03
+eb
+58
+00
+1f
+00
+60
+01
+41
+99
+70
+41
+9b
+40
+20
+40
+64
+ca
+58
+00
+00
+00
+60
+02
+41
+99
+68
+00
+91
+c7
+20
+20
+00
+01
+68
+02
+46
+9b
+20
+7a
+00
+00
+20
+40
+07
+f0
+58
+00
+00
+03
+20
+40
+07
+e3
+58
+00
+00
+02
+20
+40
+07
+e9
+68
+00
+cc
+e6
+c0
+00
+87
+a7
+df
+20
+00
+05
+d8
+a0
+4c
+e6
+20
+20
+7e
+d4
+68
+01
+4c
+e7
+60
+01
+11
+be
+68
+01
+46
+9b
+60
+01
+11
+c0
+20
+40
+07
+ba
+68
+01
+11
+be
+60
+01
+4c
+e7
+68
+01
+11
+c0
+60
+01
+46
+9b
+68
+01
+4c
+e9
+60
+01
+11
+be
+68
+01
+46
+9d
+60
+01
+11
+c0
+20
+40
+07
+ba
+68
+01
+11
+be
+60
+01
+4c
+e9
+68
+01
+11
+c0
+60
+01
+46
+9d
+20
+60
+00
+00
+68
+01
+11
+be
+68
+09
+11
+c0
+98
+40
+fe
+00
+60
+01
+91
+c2
+2f
+ef
+fe
+10
+20
+20
+87
+c7
+68
+00
+91
+c3
+c0
+7f
+87
+ce
+68
+00
+91
+c2
+1f
+e3
+7e
+00
+60
+01
+11
+be
+60
+01
+11
+c0
+20
+60
+00
+00
+68
+00
+91
+c3
+c0
+00
+07
+cb
+68
+01
+91
+c2
+20
+20
+07
+c3
+70
+11
+c4
+00
+68
+00
+91
+c2
+20
+20
+07
+c3
+68
+00
+91
+c2
+20
+40
+07
+d9
+60
+00
+91
+be
+60
+00
+91
+c0
+20
+3a
+07
+d7
+58
+00
+00
+ff
+60
+00
+91
+bf
+60
+00
+91
+c1
+20
+60
+00
+00
+58
+00
+00
+00
+20
+20
+07
+d4
+20
+40
+07
+df
+1f
+e3
+7e
+00
+20
+40
+07
+e0
+1f
+e6
+7e
+00
+60
+00
+91
+c5
+20
+60
+00
+00
+1f
+e6
+7e
+00
+60
+00
+8a
+ae
+68
+00
+8a
+ae
+20
+60
+00
+00
+9a
+26
+7c
+00
+24
+21
+07
+ee
+9a
+46
+7c
+00
+24
+21
+07
+ee
+70
+4c
+e6
+00
+20
+60
+00
+00
+9a
+26
+7c
+00
+24
+61
+00
+00
+9a
+46
+7c
+00
+24
+61
+00
+00
+20
+20
+07
+e7
+70
+4c
+e6
+01
+20
+60
+00
+00
+68
+01
+46
+9b
+20
+40
+07
+f7
+1f
+e2
+22
+00
+68
+01
+46
+9d
+20
+40
+07
+f7
+1f
+e2
+24
+00
+20
+60
+00
+00
+60
+01
+11
+c0
+68
+00
+91
+c1
+c0
+7f
+87
+fd
+68
+00
+91
+c0
+1f
+e1
+7e
+ff
+20
+60
+00
+00
+68
+01
+11
+c0
+1f
+e6
+7e
+00
+20
+20
+07
+fb
+be
+16
+aa
+55
+08
+00
+75
+41
+8f
+1c
+ce
+00
+0a
+0b
+ef
+07
+aa
+55
+01
+00
+57
+41
+00
+aa
+55
+08
+00
+a1
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+08
+00
+ad
+40
+12
+00
+00
+02
+12
+00
+00
+02
+aa
+55
+02
+00
+bb
+40
+20
+00
+aa
+55
+04
+00
+b7
+40
+20
+00
+00
+40
+aa
+55
+04
+00
+bf
+40
+80
+04
+00
+08
+aa
+55
+01
+00
+c0
+4f
+00
+aa
+55
+01
+00
+de
+41
+00
+aa
+55
+0f
+00
+8f
+47
+4b
+ba
+55
+d0
+56
+e0
+57
+88
+58
+6c
+59
+10
+68
+e6
+ff
+aa
+55
+02
+00
+c3
+40
+8f
+47
+aa
+55
+01
+00
+00
+40
+06
+aa
+55
+02
+00
+03
+40
+08
+40
+aa
+55
+03
+00
+09
+40
+05
+02
+02
+aa
+55
+02
+00
+10
+40
+20
+06
+aa
+55
+03
+00
+14
+40
+82
+20
+06
+aa
+55
+02
+00
+18
+40
+10
+08
+aa
+55
+02
+00
+1c
+40
+48
+1e
+aa
+55
+01
+00
+20
+40
+20
+aa
+55
+08
+00
+27
+40
+02
+08
+04
+80
+02
+c8
+04
+80
+aa
+55
+02
+00
+30
+40
+05
+31
+aa
+55
+01
+00
+3f
+40
+04
+aa
+55
+01
+00
+92
+40
+43
+aa
+55
+01
+00
+91
+40
+01
+aa
+55
+01
+00
+72
+41
+20
+aa
+55
+01
+00
+c7
+47
+20
+aa
+55
+02
+00
+d5
+46
+0a
+45
+aa
+55
+01
+00
+07
+42
+06
+aa
+55
+06
+00
+a0
+40
+20
+51
+17
+01
+20
+20
+aa
+55
+0c
+00
+15
+45
+0b
+42
+54
+33
+2e
+30
+20
+4d
+6f
+75
+73
+65
+aa
+55
+05
+00
+e3
+41
+0e
+00
+01
+00
+02
+aa
+55
+01
+00
+5a
+45
+0a
+aa
+55
+01
+00
+62
+46
+03
+aa
+55
+01
+00
+5a
+46
+01
+aa
+55
+01
+00
+8d
+45
+00
+aa
+55
+01
+00
+5a
+41
+00
+aa
+55
+03
+00
+5b
+46
+03
+00
+04
+aa
+55
+01
+00
+84
+46
+01
+aa
+55
+01
+00
+d1
+40
+01
+aa
+55
+0c
+00
+6f
+43
+1f
+02
+01
+05
+03
+03
+12
+18
+03
+19
+c2
+03
+aa
+55
+14
+00
+eb
+4c
+06
+ff
+06
+00
+03
+00
+80
+0c
+09
+42
+54
+35
+2e
+30
+20
+4d
+6f
+75
+73
+65
+aa
+55
+0e
+00
+8f
+43
+1f
+0c
+09
+42
+54
+35
+2e
+30
+20
+4d
+6f
+75
+73
+65
+aa
+55
+0c
+00
+af
+43
+0b
+42
+54
+35
+2e
+30
+20
+4d
+6f
+75
+73
+65
+aa
+55
+08
+00
+96
+44
+07
+00
+07
+00
+20
+00
+2c
+01
+aa
+55
+04
+00
+82
+44
+00
+00
+00
+00
+aa
+55
+01
+00
+8d
+44
+07
+aa
+55
+06
+00
+a0
+44
+8e
+b1
+3a
+0e
+8e
+ed
+aa
+55
+01
+00
+e5
+44
+50
+aa
+55
+02
+00
+6f
+44
+19
+00
+aa
+55
+02
+00
+fa
+44
+29
+00
+aa
+55
+02
+00
+87
+46
+b0
+04
+aa
+55
+04
+00
+a8
+46
+96
+00
+70
+17
+aa
+55
+01
+00
+17
+4d
+0a
+aa
+55
+01
+00
+14
+42
+ff
+aa
+55
+01
+00
+86
+46
+ff
+aa
+55
+01
+00
+85
+46
+1e
+aa
+55
+01
+00
+0b
+4d
+01
+aa
+55
+01
+00
+d2
+46
+02
+aa
+55
+01
+00
+03
+47
+02
+aa
+55
+02
+00
+2d
+42
+00
+32
+aa
+55
+06
+00
+09
+47
+72
+01
+29
+01
+4a
+01
+aa
+55
+01
+00
+ce
+46
+0a
+aa
+55
+19
+00
+e0
+46
+00
+02
+06
+14
+08
+06
+08
+14
+1b
+1c
+ff
+ff
+1d
+1d
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+30
+00
+ff
+ff
+aa
+55
+01
+00
+3a
+42
+ff
+aa
+55
+01
+00
+dc
+46
+ff
+aa
+55
+01
+00
+a5
+46
+07
+aa
+55
+01
+00
+6c
+0c
+ff
+aa
+55
+04
+00
+7f
+47
+01
+02
+03
+04
+aa
+55
+04
+00
+13
+4d
+00
+01
+02
+03
+aa
+55
+0d
+00
+62
+4d
+09
+5a
+5b
+9a
+0d
+12
+0e
+c5
+53
+48
+09
+00
+ff
+aa
+55
+0f
+00
+78
+4d
+09
+5a
+06
+02
+09
+69
+0d
+48
+0e
+9f
+0f
+ba
+09
+00
+ff
+aa
+55
+09
+00
+6f
+4d
+06
+80
+09
+5a
+0b
+f3
+09
+00
+ff
+aa
+55
+02
+00
+1b
+42
+13
+47
+aa
+55
+01
+00
+1a
+42
+01
+aa
+55
+18
+02
+c8
+47
+01
+00
+02
+00
+28
+02
+00
+18
+02
+00
+02
+03
+28
+01
+0a
+03
+00
+02
+00
+2a
+14
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+04
+00
+02
+03
+28
+01
+02
+05
+00
+02
+01
+2a
+02
+c2
+03
+06
+00
+02
+03
+28
+01
+02
+07
+00
+02
+04
+2a
+08
+06
+00
+06
+00
+64
+00
+2c
+01
+08
+00
+02
+00
+28
+02
+01
+18
+09
+00
+02
+03
+28
+01
+20
+0a
+00
+02
+05
+2a
+00
+0b
+00
+02
+02
+29
+02
+00
+00
+0c
+00
+02
+00
+28
+02
+0a
+18
+0d
+00
+02
+03
+28
+01
+02
+0e
+00
+02
+29
+2a
+06
+59
+69
+43
+68
+69
+70
+0f
+00
+02
+03
+28
+01
+02
+10
+00
+02
+50
+2a
+07
+02
+35
+12
+22
+aa
+01
+00
+11
+00
+02
+00
+28
+02
+12
+18
+12
+00
+02
+03
+28
+01
+06
+13
+00
+02
+4e
+2a
+01
+01
+14
+00
+02
+03
+28
+01
+12
+15
+00
+02
+4d
+2a
+08
+00
+00
+00
+00
+00
+00
+00
+00
+16
+00
+02
+02
+29
+02
+00
+00
+17
+00
+02
+08
+29
+02
+02
+01
+18
+00
+02
+03
+28
+01
+1a
+19
+00
+02
+4d
+2a
+07
+00
+00
+00
+00
+00
+00
+00
+1a
+00
+02
+02
+29
+02
+00
+00
+1b
+00
+02
+08
+29
+02
+01
+01
+1c
+00
+02
+03
+28
+01
+12
+1d
+00
+02
+4d
+2a
+02
+00
+00
+1e
+00
+02
+02
+29
+02
+00
+00
+1f
+00
+02
+08
+29
+02
+03
+01
+20
+00
+02
+03
+28
+01
+0e
+21
+00
+02
+4d
+2a
+02
+00
+00
+22
+00
+02
+08
+29
+02
+02
+02
+23
+00
+02
+03
+28
+01
+0a
+24
+00
+02
+4b
+2a
+a0
+05
+01
+09
+02
+a1
+01
+85
+01
+09
+01
+a1
+00
+05
+09
+19
+01
+29
+08
+15
+00
+25
+01
+75
+01
+95
+08
+81
+02
+05
+01
+09
+30
+09
+31
+16
+01
+f8
+26
+ff
+07
+75
+10
+95
+02
+81
+06
+09
+38
+15
+81
+25
+7f
+75
+08
+95
+01
+81
+06
+05
+0c
+0a
+38
+02
+95
+01
+81
+06
+c0
+c0
+05
+01
+09
+06
+a1
+01
+85
+02
+75
+01
+95
+08
+05
+07
+19
+e0
+29
+e7
+15
+00
+25
+01
+81
+02
+95
+01
+75
+08
+81
+03
+95
+05
+75
+01
+05
+08
+19
+01
+29
+05
+91
+02
+95
+01
+75
+03
+91
+03
+95
+06
+75
+08
+15
+00
+26
+ff
+00
+05
+07
+19
+00
+29
+ff
+81
+00
+c0
+05
+0c
+09
+01
+a1
+01
+85
+03
+19
+00
+2a
+ff
+03
+15
+00
+26
+ff
+03
+95
+01
+75
+10
+81
+00
+c0
+25
+00
+02
+03
+28
+01
+1a
+26
+00
+02
+33
+2a
+08
+00
+00
+00
+00
+00
+00
+00
+00
+27
+00
+02
+02
+29
+02
+01
+00
+28
+00
+02
+03
+28
+01
+02
+29
+00
+02
+4a
+2a
+04
+01
+01
+00
+03
+2a
+00
+02
+03
+28
+01
+04
+2b
+00
+02
+4c
+2a
+00
+00
+00
+aa
+55
+01
+00
+c9
+4e
+01
+aa
+55
+01
+00
+84
+4e
+01
+aa
+55
+01
+00
+c8
+4e
+06
+aa
+55
+01
+00
+bf
+4e
+00
+aa
+55
+02
+00
+86
+4e
+c0
+12
+aa
+55
+03
+00
+a8
+4e
+19
+19
+1c
+aa
+55
+10
+00
+94
+4e
+00
+13
+2c
+42
+06
+15
+36
+48
+0f
+1a
+3a
+4c
+11
+23
+31
+4d
+aa
+55
+01
+00
+93
+4e
+ff
+aa
+55
+04
+00
+8f
+4e
+20
+15
+10
+05
+aa
+55
+06
+00
+c8
+4f
+0f
+0f
+0f
+0f
+0f
+0f
+aa
+55
+0a
+00
+9e
+11
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+03
+00
+b2
+4e
+80
+4f
+12
+aa
+55
+12
+00
+88
+4d
+00
+05
+00
+04
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+08
+00
+20
+47
+02
+34
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+06
+00
+f7
+4d
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+03
+00
+00
+47
+00
+50
+00
+aa
+55
+01
+00
+1f
+47
+00
+aa
+55
+01
+00
+db
+46
+01
+aa
+55
+01
+00
+8e
+47
+03
+aa
+55
+04
+00
+1e
+4d
+0f
+0f
+0f
+0f
+aa
+55
+01
+00
+24
+4d
+40
+aa
+55
+01
+00
+00
+4d
+05
+aa
+55
+02
+00
+03
+4d
+14
+03
+aa
+55
+04
+00
+27
+4d
+ff
+00
+00
+00
+aa
+55
+04
+00
+31
+4d
+20
+20
+00
+40
+aa
+55
+01
+00
+42
+4d
+0a
+aa
+55
+01
+00
+46
+4d
+ff
+aa
+55
+0c
+00
+e2
+4d
+09
+02
+0f
+09
+00
+12
+09
+02
+10
+09
+00
+00
+aa
+55
+2d
+00
+9c
+4d
+05
+01
+09
+06
+a1
+01
+85
+01
+75
+01
+95
+08
+05
+07
+19
+e0
+29
+e7
+15
+00
+25
+01
+81
+02
+95
+01
+75
+08
+81
+03
+95
+06
+15
+00
+25
+ff
+05
+07
+19
+00
+29
+ff
+81
+00
+c0
+aa
+55
+03
+00
+28
+4d
+6f
+32
+00
+ff
+20
+20
+00
+40
+c0
+58
+80
+07
+c0
+59
+00
+0d
+c0
+59
+80
+12
+c0
+5a
+00
+19
+c0
+5a
+80
+1e
+20
+60
+00
+00
+68
+00
+c9
+e3
+c1
+01
+00
+00
+1f
+e0
+fe
+01
+60
+00
+c9
+e3
+70
+41
+e3
+12
+20
+20
+34
+0e
+68
+00
+c9
+e3
+c1
+81
+00
+00
+70
+49
+e3
+00
+70
+41
+e3
+0e
+20
+20
+34
+0e
+68
+00
+c7
+a1
+c0
+00
+80
+15
+20
+20
+00
+17
+20
+40
+04
+0a
+70
+46
+c6
+05
+d8
+e0
+00
+01
+20
+20
+41
+b9
+70
+4c
+da
+00
+70
+4c
+dc
+00
+70
+4c
+e5
+00
+20
+40
+03
+dd
+20
+20
+41
+d9
+58
+00
+00
+01
+60
+03
+00
+40
+70
+01
+85
+33
+70
+4d
+3e
+ff
+20
+40
+42
+fb
+70
+47
+21
+ff
+20
+20
+03
+dd
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+50
+80
+06
+c0
+51
+00
+1b
+c0
+51
+80
+14
+c0
+52
+00
+25
+20
+60
+00
+00
+68
+01
+45
+09
+c1
+00
+00
+00
+68
+00
+84
+41
+1f
+eb
+7e
+00
+1f
+e6
+7c
+0c
+20
+21
+00
+12
+58
+00
+00
+09
+60
+01
+44
+96
+60
+01
+44
+98
+20
+40
+04
+0a
+70
+47
+c6
+01
+20
+60
+00
+00
+70
+4d
+48
+01
+20
+20
+06
+1d
+68
+01
+46
+82
+c3
+86
+00
+00
+c3
+83
+00
+00
+c3
+85
+80
+00
+68
+02
+46
+d3
+c3
+82
+80
+00
+20
+20
+33
+a7
+70
+4d
+3d
+00
+58
+00
+00
+07
+60
+01
+44
+96
+60
+01
+44
+98
+70
+47
+c6
+00
+70
+47
+9e
+00
+20
+40
+03
+6f
+20
+40
+58
+16
+20
+40
+03
+dd
+20
+20
+41
+d9
+78
+34
+7c
+00
+68
+12
+01
+38
+79
+34
+7e
+1a
+60
+12
+00
+4c
+20
+40
+2c
+21
+20
+40
+74
+bd
+20
+40
+03
+dd
+20
+40
+3e
+9f
+20
+40
+00
+c5
+68
+00
+c7
+20
+1f
+e6
+7c
+02
+20
+42
+85
+9a
+20
+40
+03
+1d
+68
+10
+80
+81
+1f
+e1
+7e
+f7
+60
+10
+80
+81
+68
+10
+80
+7f
+79
+20
+7e
+00
+60
+10
+80
+7f
+20
+60
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+48
+00
+05
+c0
+48
+80
+23
+c0
+49
+00
+33
+20
+60
+00
+00
+68
+00
+ce
+88
+c0
+00
+ff
+e7
+68
+00
+ce
+93
+c0
+02
+00
+0d
+c0
+00
+80
+10
+c0
+01
+00
+13
+c0
+01
+80
+16
+20
+20
+2a
+8c
+70
+4e
+93
+01
+70
+4d
+26
+fa
+20
+20
+00
+05
+70
+4e
+93
+11
+70
+11
+9e
+aa
+20
+20
+00
+18
+70
+4e
+93
+12
+70
+11
+9e
+55
+20
+20
+00
+18
+70
+4e
+93
+13
+70
+11
+9e
+22
+68
+00
+ce
+84
+1f
+e1
+7e
+07
+60
+00
+91
+9f
+68
+02
+4e
+ba
+60
+02
+11
+a0
+70
+11
+a4
+00
+da
+20
+11
+9e
+d8
+40
+00
+07
+20
+40
+01
+c8
+20
+40
+01
+4f
+20
+20
+7f
+e7
+68
+00
+ce
+93
+c1
+7f
+80
+00
+c0
+08
+80
+29
+c0
+09
+00
+2b
+c0
+09
+80
+2d
+20
+60
+00
+00
+70
+4e
+93
+02
+20
+20
+01
+13
+70
+4e
+93
+03
+20
+20
+01
+13
+70
+4e
+93
+ff
+70
+0a
+99
+39
+20
+40
+7d
+86
+68
+02
+4e
+63
+20
+40
+01
+da
+20
+20
+01
+13
+20
+40
+03
+2a
+70
+47
+8b
+01
+d8
+e0
+00
+03
+20
+40
+43
+d2
+58
+00
+00
+00
+60
+01
+4d
+24
+70
+46
+a7
+00
+20
+40
+40
+5d
+20
+40
+02
+a3
+68
+02
+4e
+ab
+60
+02
+47
+7b
+20
+40
+43
+66
+20
+20
+03
+dd
+20
+20
+00
+40
+68
+02
+40
+a0
+60
+02
+4e
+ba
+20
+40
+3e
+6e
+20
+40
+00
+d6
+68
+08
+cd
+17
+20
+40
+68
+0e
+20
+40
+3e
+1e
+20
+40
+00
+1e
+58
+00
+47
+c8
+60
+01
+44
+bc
+58
+00
+00
+00
+60
+01
+41
+54
+70
+46
+f6
+00
+58
+00
+18
+02
+60
+01
+40
+bd
+20
+40
+68
+a8
+20
+40
+3e
+54
+20
+40
+58
+10
+20
+40
+58
+39
+20
+40
+58
+2c
+20
+40
+58
+18
+20
+40
+03
+8e
+20
+40
+03
+25
+20
+40
+02
+ee
+68
+01
+c7
+00
+9a
+40
+fe
+00
+20
+40
+65
+62
+20
+40
+02
+e0
+20
+60
+00
+00
+20
+40
+74
+b9
+d8
+c0
+8c
+00
+d8
+a0
+4a
+51
+df
+20
+01
+0b
+20
+40
+7f
+01
+d8
+c0
+4d
+9c
+df
+20
+00
+2d
+20
+40
+7f
+01
+d8
+c0
+8d
+3f
+df
+20
+00
+32
+20
+40
+7f
+01
+d8
+c0
+4d
+e2
+df
+20
+00
+0c
+20
+40
+7f
+01
+d8
+c0
+8d
+71
+df
+20
+01
+09
+20
+40
+7f
+01
+70
+4a
+68
+00
+70
+4a
+60
+66
+70
+4b
+14
+74
+70
+4b
+10
+78
+70
+4b
+0e
+7a
+58
+00
+40
+1f
+60
+01
+4b
+af
+58
+00
+6d
+04
+60
+01
+4c
+18
+58
+00
+16
+b0
+60
+01
+4c
+1e
+20
+20
+06
+60
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+38
+00
+04
+c0
+38
+80
+34
+20
+60
+00
+00
+79
+3f
+80
+26
+20
+40
+00
+24
+20
+40
+01
+bb
+20
+00
+07
+d0
+68
+00
+ce
+b1
+c0
+50
+01
+9a
+20
+40
+01
+82
+24
+2c
+00
+1a
+24
+37
+80
+1a
+20
+40
+01
+a9
+20
+40
+02
+a3
+68
+02
+4e
+ab
+68
+0a
+4e
+8f
+98
+46
+7c
+00
+20
+22
+80
+30
+79
+20
+00
+26
+58
+00
+00
+00
+60
+01
+4e
+b0
+70
+0a
+99
+3c
+20
+40
+7d
+86
+20
+40
+01
+7f
+20
+20
+03
+2a
+68
+00
+ce
+8b
+1f
+e0
+fe
+01
+60
+00
+ce
+8b
+1f
+e6
+7c
+03
+20
+21
+00
+07
+70
+4e
+8b
+00
+68
+01
+4e
+b0
+1f
+e0
+fe
+01
+60
+01
+4e
+b0
+20
+20
+00
+07
+58
+00
+00
+00
+60
+01
+4e
+b0
+60
+00
+ce
+8b
+60
+01
+4d
+24
+70
+4e
+84
+02
+70
+41
+de
+04
+70
+4e
+82
+00
+70
+4e
+8d
+4e
+68
+02
+4e
+8f
+20
+20
+01
+da
+20
+40
+00
+24
+20
+20
+00
+07
+79
+20
+00
+26
+20
+40
+00
+24
+70
+4e
+93
+04
+20
+60
+00
+00
+20
+40
+01
+c4
+20
+40
+04
+2a
+d8
+e0
+00
+03
+20
+40
+43
+ce
+58
+00
+00
+00
+60
+01
+46
+ae
+60
+00
+c6
+b4
+60
+01
+4d
+24
+60
+01
+4e
+b0
+20
+40
+42
+ca
+20
+20
+00
+30
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+30
+00
+04
+c0
+30
+80
+29
+20
+60
+00
+00
+79
+3f
+80
+26
+68
+00
+cd
+24
+1f
+e1
+7e
+01
+24
+5a
+00
+20
+20
+5a
+00
+1d
+68
+00
+ce
+93
+c1
+ff
+80
+00
+58
+00
+00
+00
+60
+01
+4e
+b0
+20
+40
+01
+bb
+20
+00
+07
+d0
+68
+00
+ce
+b0
+c0
+05
+01
+9a
+20
+40
+01
+82
+24
+2c
+00
+24
+24
+37
+80
+24
+79
+20
+00
+26
+58
+00
+00
+00
+60
+01
+4e
+b0
+60
+00
+cd
+26
+60
+01
+4d
+24
+70
+0a
+99
+3c
+20
+40
+7d
+86
+20
+40
+01
+7f
+20
+20
+03
+2a
+20
+40
+02
+a3
+68
+02
+47
+7b
+20
+20
+00
+22
+70
+41
+de
+20
+68
+02
+4d
+1e
+20
+40
+01
+da
+20
+20
+01
+3a
+68
+01
+4e
+b0
+1f
+e0
+fe
+01
+60
+01
+4e
+b0
+20
+40
+01
+3a
+20
+20
+00
+0e
+20
+40
+04
+2a
+68
+01
+4d
+24
+24
+3a
+00
+3b
+70
+4f
+c3
+00
+20
+40
+02
+a3
+20
+40
+01
+c4
+70
+41
+bd
+00
+20
+40
+00
+c5
+20
+20
+04
+c0
+68
+00
+ce
+8b
+24
+3a
+01
+9a
+70
+4e
+8b
+01
+68
+00
+c2
+41
+c2
+81
+00
+38
+20
+20
+01
+b8
+58
+00
+03
+20
+60
+01
+4d
+24
+20
+20
+00
+04
+1f
+e0
+ff
+ff
+60
+01
+4d
+24
+20
+3a
+00
+32
+20
+20
+00
+04
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+28
+00
+03
+20
+60
+00
+00
+70
+4d
+45
+00
+20
+40
+02
+a3
+70
+47
+20
+01
+70
+47
+9e
+00
+68
+01
+46
+82
+c2
+85
+80
+13
+68
+02
+46
+d3
+c3
+0c
+00
+13
+20
+40
+05
+b3
+68
+09
+47
+c4
+18
+40
+84
+01
+60
+09
+47
+c4
+60
+09
+44
+a1
+20
+40
+03
+e2
+18
+0a
+7e
+00
+60
+00
+c4
+a0
+68
+01
+cd
+3f
+60
+01
+c4
+a3
+20
+40
+02
+ad
+20
+40
+34
+18
+68
+01
+46
+87
+60
+01
+46
+ac
+70
+01
+6d
+06
+58
+00
+00
+00
+60
+01
+46
+b0
+60
+01
+46
+ae
+d8
+e0
+00
+07
+20
+40
+43
+ce
+20
+40
+43
+ca
+68
+00
+c0
+92
+2f
+ef
+fe
+01
+20
+40
+80
+27
+68
+00
+c0
+92
+2f
+ef
+fe
+00
+20
+40
+fd
+dd
+20
+20
+04
+fb
+70
+47
+a1
+00
+20
+40
+02
+a6
+58
+00
+00
+05
+e0
+c0
+80
+00
+d8
+c0
+4c
+eb
+20
+40
+05
+ba
+20
+20
+7d
+f4
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+20
+00
+06
+c0
+20
+80
+18
+c0
+21
+00
+25
+c0
+21
+80
+2b
+20
+60
+00
+00
+20
+40
+00
+0e
+20
+20
+55
+7d
+68
+00
+c7
+c7
+60
+00
+c1
+72
+70
+47
+c6
+00
+20
+60
+00
+00
+70
+47
+c6
+01
+20
+60
+00
+00
+68
+00
+c3
+d6
+1f
+e6
+7c
+0c
+24
+21
+00
+0c
+68
+00
+c3
+d8
+68
+08
+c7
+c7
+98
+46
+7c
+00
+20
+21
+00
+08
+68
+00
+c3
+d8
+60
+00
+c1
+72
+20
+20
+00
+0a
+68
+00
+84
+3f
+c4
+03
+00
+00
+20
+40
+00
+1d
+24
+74
+00
+00
+20
+20
+55
+a0
+78
+34
+7c
+00
+68
+00
+84
+5a
+1f
+f1
+fe
+00
+c1
+87
+80
+00
+68
+00
+84
+60
+1f
+f1
+fe
+00
+c1
+80
+00
+00
+20
+20
+7f
+e9
+68
+00
+c7
+a1
+24
+7a
+00
+00
+68
+00
+84
+78
+1f
+e6
+7e
+1a
+24
+62
+80
+00
+20
+20
+3d
+60
+20
+40
+33
+af
+20
+40
+26
+e9
+70
+0a
+99
+02
+20
+40
+7d
+86
+20
+40
+5c
+f7
+20
+40
+4d
+6b
+20
+20
+24
+6e
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+18
+00
+03
+20
+60
+00
+00
+20
+40
+62
+bc
+24
+7a
+00
+00
+68
+00
+80
+55
+20
+7a
+00
+00
+c0
+02
+00
+25
+c0
+08
+00
+0a
+20
+20
+63
+20
+68
+00
+c5
+5b
+c1
+00
+00
+00
+c0
+00
+80
+0e
+20
+20
+63
+5f
+20
+74
+80
+00
+68
+00
+81
+6d
+c2
+80
+00
+12
+20
+20
+63
+99
+68
+00
+cc
+dc
+c0
+00
+e3
+9d
+68
+00
+c1
+bd
+20
+3a
+63
+a9
+68
+00
+84
+d1
+c4
+01
+80
+00
+c4
+01
+00
+00
+68
+00
+cc
+db
+20
+7a
+00
+00
+70
+4c
+db
+00
+68
+02
+04
+e9
+d8
+40
+00
+14
+98
+40
+84
+00
+1c
+42
+7e
+00
+98
+46
+7c
+00
+24
+21
+00
+23
+20
+20
+63
+49
+70
+4c
+db
+01
+20
+60
+00
+00
+70
+49
+e4
+14
+20
+20
+63
+6f
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+10
+00
+1f
+c0
+10
+80
+2c
+c0
+11
+00
+05
+20
+60
+00
+00
+20
+40
+02
+a3
+68
+00
+c7
+20
+c0
+01
+01
+b5
+c0
+7f
+81
+b5
+20
+40
+04
+f6
+68
+00
+c2
+10
+c0
+19
+80
+0e
+c0
+1a
+00
+11
+20
+20
+02
+a0
+68
+03
+41
+d0
+20
+3a
+33
+eb
+20
+20
+42
+74
+70
+4d
+45
+01
+70
+47
+a1
+01
+d8
+40
+00
+0a
+68
+00
+cd
+3e
+c0
+7f
+80
+17
+68
+09
+46
+a8
+60
+09
+46
+ae
+20
+40
+34
+18
+20
+40
+02
+a6
+58
+00
+00
+04
+e0
+c0
+80
+00
+d8
+c0
+43
+90
+20
+40
+05
+ba
+20
+20
+7d
+f4
+68
+00
+80
+48
+c0
+42
+00
+23
+c0
+41
+80
+26
+20
+20
+60
+3f
+20
+40
+00
+29
+68
+00
+80
+48
+20
+20
+60
+99
+20
+40
+00
+29
+68
+00
+80
+48
+20
+20
+61
+0d
+68
+00
+c6
+5a
+20
+3a
+61
+2b
+20
+20
+61
+24
+18
+00
+7e
+02
+20
+40
+62
+98
+68
+00
+80
+49
+e0
+a0
+80
+00
+60
+00
+cc
+d7
+20
+40
+62
+a7
+68
+00
+cc
+d7
+c0
+17
+00
+35
+20
+20
+60
+51
+68
+00
+cc
+da
+20
+7a
+00
+00
+70
+4c
+da
+00
+68
+00
+cc
+dc
+c1
+81
+00
+00
+70
+4c
+db
+01
+1c
+42
+7e
+00
+60
+02
+04
+e9
+20
+60
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+08
+00
+04
+c0
+08
+80
+19
+20
+60
+00
+00
+70
+49
+e3
+00
+70
+41
+e3
+0e
+20
+40
+41
+e7
+68
+01
+42
+08
+c2
+83
+80
+0e
+c2
+80
+33
+a9
+c2
+80
+80
+12
+c2
+81
+00
+15
+c2
+81
+80
+15
+20
+20
+42
+b0
+20
+40
+41
+c1
+68
+01
+42
+08
+c2
+85
+04
+46
+20
+20
+41
+f7
+c2
+82
+80
+15
+c2
+81
+80
+15
+20
+20
+42
+b0
+68
+01
+46
+82
+c2
+86
+42
+b0
+20
+40
+33
+a9
+20
+20
+33
+a7
+68
+01
+02
+64
+1f
+e2
+0c
+00
+e8
+c0
+80
+00
+60
+00
+cc
+dd
+1f
+e1
+04
+0f
+1f
+f1
+fe
+00
+c0
+03
+80
+22
+c0
+00
+80
+29
+20
+20
+4d
+39
+20
+40
+4d
+53
+70
+4c
+de
+00
+68
+00
+cc
+dd
+2f
+ef
+fe
+00
+20
+60
+80
+00
+70
+4c
+de
+01
+20
+60
+00
+00
+18
+42
+7e
+00
+c0
+02
+84
+12
+20
+20
+4d
+41
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+00
+00
+1f
+c0
+00
+80
+04
+20
+60
+00
+00
+20
+40
+02
+6b
+24
+74
+00
+00
+20
+40
+00
+19
+68
+01
+4f
+c4
+1f
+e0
+fe
+01
+60
+01
+4f
+c4
+68
+09
+4f
+c6
+98
+46
+7c
+00
+20
+42
+80
+0e
+20
+20
+00
+9c
+70
+4f
+c3
+00
+58
+00
+00
+00
+60
+01
+4f
+c4
+58
+00
+00
+19
+60
+01
+4f
+c6
+70
+4e
+be
+00
+68
+00
+ce
+a9
+60
+00
+ce
+a8
+20
+60
+00
+00
+68
+00
+ce
+aa
+20
+20
+00
+15
+68
+00
+ce
+be
+1f
+e0
+fe
+01
+60
+00
+ce
+be
+c0
+02
+00
+17
+c0
+02
+80
+13
+20
+60
+00
+00
+68
+00
+80
+0e
+1f
+e0
+fe
+01
+60
+00
+80
+0e
+20
+40
+24
+35
+79
+20
+00
+2c
+20
+40
+22
+f2
+20
+2c
+00
+2a
+79
+3f
+80
+2c
+20
+40
+24
+55
+24
+3a
+00
+23
+20
+20
+20
+fc
+79
+3f
+80
+2c
+20
+20
+21
+5f
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+00
+00
+68
+bc
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/memmap.format
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/memmap.format	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/memmap.format	(working copy)
@@ -0,0 +1,1978 @@
+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_inquiryscan_waitcnt
+0x0007 mem_inquiryscan_rcvcnt
+0x0008 mem_pagescan_waitcnt
+0x0009 mem_pagescan_rcvcnt
+0x000a mem_pagescan_rcvfhscnt
+0x000b mem_slave_rcvcnt
+0x000c mem_page_transmit
+0x000d mem_page_rcv
+0x000e mem_page_rcv_fhs
+0x000f mem_master_rcvcnt
+0x0010 mem_fhs_wait_counter
+0x0011 mem_newconnto_counter
+0x0012 mem_inquiry_transmit
+0x0013 mem_inquiry_rcv
+0x0014 mem_fw_ver
+0x0015 mem_current_context
+0x0016 mem_le_ch_mapped
+0x0017 mem_last_freq
+0x0018 mem_rssi
+0x0019 mem_rx_type
+0x001a mem_rx_hec_err
+0x001c mem_rx_crc_err
+0x001e mem_context_ptr
+0x0020 mem_display
+0x0028 mem_bcd
+0x0030 mem_state
+0x0031 mem_mode
+0x0032 mem_tsniff
+0x0034 mem_sniff_anchor
+0x0038 mem_clk_offset
+0x003e mem_rx_window
+0x0040 mem_plap
+0x0043 mem_puap
+0x0044 mem_pnap
+0x0046 mem_conn_handle
+0x0047 mem_arq
+0x0048 mem_lmp_to_send
+0x0049 mem_lmi_opcode
+0x004a mem_lmo_reason
+0x004b mem_op
+0x004c mem_state_map
+0x004d mem_supervision_timer
+0x0051 mem_supervision_to
+0x0053 mem_name_offset
+0x0054 mem_key_size
+0x0055 mem_conn_sm
+0x0056 mem_aco
+0x0062 mem_kc
+0x0072 mem_conn_timer
+0x0073 mem_sniff_attempt
+0x0074 mem_sniff_timeout
+0x0075 mem_dsniff
+0x0077 mem_amaddr
+0x0078 mem_lmo_opcode1
+0x0079 mem_lmi_opcode1
+0x007a mem_lmo_reason1
+0x007b mem_lmo_tid1
+0x007c mem_lmo_opcode2
+0x007d mem_lmi_opcode2
+0x007e mem_lmo_reason2
+0x007f mem_lmo_tid2
+0x0080 mem_hci_version
+0x0083 mem_acl_pktlen
+0x0085 mem_sco_pktlen
+0x0086 mem_acl_pktcnt
+0x0088 mem_sco_pktcnt
+0x008a mem_current_sniff_attempt
+0x008b mem_current_sniff_timeout
+0x008c mem_sniff_timeout_temp
+0x008d mem_nfreq_index_inq
+0x008e mem_nfreq_index_page
+0x008f mem_ninqy_index
+0x0090 mem_fhs_misc
+0x0091 mem_subsniff_instant
+0x0095 mem_subsniff_rate
+0x0096 mem_subsniff_tcmax
+0x0098 mem_subsniff_tsniff
+0x0099 mem_lpm_adjust
+0x009a mem_sync_clke
+0x00a0 mem_lpm_current_mult
+0x00a1 mem_gpio_wakeup_low
+0x00a5 mem_gpio_wakeup_high
+0x00a9 mem_air_mode
+0x00aa mem_sco_asso_handle
+0x00ab mem_sco_handle
+0x00ad mem_esco_desco
+0x00ae mem_esco_type
+0x00af mem_neogotiation_state
+0x00b0 mem_saved_amaddr
+0x00b1 mem_esco_arq
+0x00b2 mem_esco_saved_arq
+0x00b3 mem_sco_obuf
+0x00d1 mem_sco_ibuf
+0x00ef mem_sco_poll
+0x00f0 mem_npage_index
+0x00f1 mem_page_mode
+0x00f2 mem_page_clk
+0x00f6 mem_tst_pktcnt_sync
+0x00f8 mem_tst_pktcnt_hec
+0x00fa mem_tst_pktcnt_crc
+0x00fc mem_tst_pktcnt_dmh
+0x00fe mem_tmp_buffer_head
+0x0101 mem_tmp_buffer
+0x0151 mem_tester_emulate
+0x0152 mem_temp_payload
+0x0152 test_mode_scenario
+0x0153 test_mode_hopping_mode
+0x0154 test_mode_tx_freq
+0x0155 test_mode_rx_freq
+0x0156 test_mode_power_mode
+0x0157 test_mode_poll_period
+0x0158 test_mode_packet_type
+0x0159 test_mode_data_length
+0x015b mem_test_mode_old_debug_config
+0x015c mem_tester_cnt
+0x015d mem_temp_am_addr
+0x015e mem_temp_arq
+0x015f mem_len
+0x0161 mem_clkn_bt
+0x0165 mem_clke_bt
+0x0169 mem_dpll_clkn
+0x016d mem_connection_options
+0x016e mem_nameres_cnt
+0x016f mem_txptr
+0x0171 mem_slot_offset
+0x0173 extm_fhs_misc
+0x0174 extm_newconn_am_addr
+0x0175 extm_class
+0x0178 extm_lap
+0x017b extm_uap
+0x017c extm_nap
+0x017f mem_debug_config
+0x0180 mem_lch_code
+0x0181 mem_fhs_am_addr
+0x0182 mem_dpll_error
+0x0184 mem_select_list_item
+0x0185 mem_temp_reconn_record
+0x0185 mem_record_bt_mode
+0x0186 mem_temp_lap
+0x018c mem_list_item_ptr
+0x018e mem_eir
+0x01f2 mem_ucode_status
+0x01f3 mem_otp_ucode_flag
+0x01f5 mem_spid_tbuf/* spid buf: 03 addr[23:16] addr[15:8] addr[7:0] */
+0x01f6 mem_iicd_tbuf/* iicd buf: iic_adr addr[15:8] addr[7:0] iic_adr */
+0x01f6 mem_addr_hi
+0x01f7 mem_addr_mi
+0x01f8 mem_addr_lo
+0x01f9 mem_iicd_addr
+0x01fa mem_spid_rbuf
+0x01fe mem_ucode_buf
+0x0200 mem_ucode_len
+0x0202 mem_sched_addr
+0x0204 mem_ucode_ptr
+0x0206 mem_ucode_keybuf
+0x0216 mem_check_plap_temp
+0x0228 mem_reconnect_flag
+0x0229 mem_switch_fail_master_count
+0x022a mem_app_evt_timer_count
+0x022b mem_init_cnt
+0x022d mem_h5rx_ackcnt
+0x022e mem_check_err_acl_cont
+0x022f mem_rp_packets
+0x0230 mem_packet_type
+0x0232 mem_hci_sniff_conn_handle
+0x0234 mem_hci_sniff_max_interval
+0x0236 mem_hci_sniff_min_interval
+0x0238 mem_hci_sniff_attempt
+0x023a mem_hci_sniff_timeout
+0x023c mem_voice_setting
+0x023e mem_retransmission_effort
+0x023f mem_sco_ptype
+0x0241 mem_extm_uap_restore
+0x0244 mem_h5rx_rptr
+0x0246 mem_h5rx_ack
+0x0247 mem_h5tx_ack
+0x0248 mem_h5tx_rptr
+0x024a mem_h5tx_wptr
+0x024c mem_h5tx_free
+0x024e mem_h5rx_tmp
+0x024f mem_h5tx_seq
+0x0250 mem_hci_acl_queue_wptr
+0x0252 mem_hci_acl_queue_rptr
+0x0254 mem_hci_acl_queue_end
+0x0256 mem_hci_acl_queue_wcnt
+0x0257 mem_hci_acl_cnt
+0x0258 mem_hci_acl_tx_trigger_wptr//tx via uart
+0x025a mem_hci_curr_len
+0x025b mem_hci_curr_target
+0x025d mem_l2cap_mem_start
+0x025d mem_l2cap_rxbuff1_len
+0x025f mem_l2cap_rxbuff2_len
+0x0261 mem_l2cap_rxbuff_new
+0x0263 mem_l2cap_rxbuff_inuse
+0x0264 mem_l2cap_payload_ptr
+0x0266 mem_l2cap_rx_pkt_length
+0x0268 mem_l2cap_rx_cid
+0x026a mem_l2cap_rx_done
+0x026b mem_l2cap_signal_tx_buff_ptr
+0x026d mem_l2cap_signal_tx_payload_ptr
+0x026f mem_l2cap_signal_tx_length
+0x0271 mem_sdp_tx_buff_ptr
+0x0273 mem_sdp_tx_payload_ptr
+0x0275 mem_sdp_tx_pkt_length
+0x0277 mem_rfcomm_tx_buff_ptr
+0x0279 mem_rfcomm_tx_payload_ptr
+0x027b mem_rfcomm_tx_pkt_length
+0x027d memL2CAP_T1
+0x027f mem_CONTROL_tasks
+0x0280 mem_send_config_req
+0x0281 mem_config_identifier
+0x0282 mem_config_req_dest_CID
+0x0284 mem_rfcomm_malloc_fail_flag
+0x0285 mem_message_to_uppersm
+0x0286 mem_upper_sm_remote_page
+0x0287 mem_upper_sm_reconn
+0x0288 mem_upper_sm_ss
+0x0289 mem_tx_malloc_log
+0x02c9 mem_l2cap_mem_end
+0x02c9 mem_scid
+0x02cb mem_cmd_length
+0x02cd mem_tt2
+0x02cf mem_tt3
+0x02d1 mem_id
+0x02d3 mem_psm
+0x02d5 mem_l2cap_sdpres_delay_time
+0x02d9 mem_le_rxbuf
+0x0311 mem_le_l2capbuf
+0x0417 mem_le_mic
+0x041b mem_le_peer_mic
+0x041f mem_le_peer_ltk
+0x042f mem_le_mrand
+0x043f mem_le_state
+0x0440 mem_le_mode
+0x0441 mem_le_tsniff
+0x0443 mem_le_anchor
+0x0447 mem_le_clk_offset
+0x044d mem_le_receive_window
+0x044f mem_le_plap
+0x0455 mem_le_conn_handle
+0x0456 mem_le_arq
+0x0457 mem_le_ch
+0x0458 mem_le_hop
+0x0459 mem_le_event_count
+0x045b mem_le_supervision_timer
+0x045f mem_le_instant
+0x0461 mem_le_channels
+0x0462 mem_le_op
+0x0463 mem_le_access
+0x0467 mem_le_crcinit
+0x046a mem_le_window_size
+0x046b mem_le_slave_latency
+0x046d mem_le_superto
+0x046f mem_le_channel_map
+0x0474 mem_le_no_using
+0x0476 mem_le_peer_sca
+0x0477 mem_le_att_opcode
+0x0478 mem_le_att_handle
+0x047a mem_le_err_code
+0x047b mem_le_ll_pairing_fail_reason
+0x047c mem_le_sk
+0x048c mem_le_testtype
+0x048d mem_le_test_sync
+0x048f mem_le_test_pcnt
+0x0491 mem_le_rxon_ts
+0x0497 mem_le_rx_ll_opcode
+0x0498 mem_le_notify_attr_start
+0x049a mem_le_notify_len
+0x049b mem_cmd_le_create_conn
+0x049c mem_le_cur_attlist_start_ptr
+0x049e mem_le_cur_handle_start
+0x04a0 mem_le_cur_handle_end
+0x04a2 mem_le_cur_uuid_length
+0x04a3 mem_le_cur_uuid
+0x04b3 mem_le_curr_att_len
+0x04b4 mem_le_search_res
+0x04b5 mem_le_continue_type
+0x04b6 mem_lmo_header_length
+0x04b7 mem_lmo_header_opcode
+0x04b8 mem_lmo_payload
+0x04c9 mem_lmi_accepted_opcode
+0x04ca mem_disconn_reason_send
+0x04cb mem_tx_fixed_freq
+0x04cc mem_rx_fixed_freq
+0x04cd mem_ext_features_page
+0x04ce mem_lmpext_ssp_enable
+0x04d0 mem_remote_sppcap
+0x04d1 mem_lmp_conn_state
+0x04d2 mem_soft_timer
+0x04d4 mem_pincode_state
+0x04d5 mem_sres_tid
+0x04d6 mem_accptsco_tid
+0x04d7 mem_auth_enable
+0x04d8 mem_wait_encryption
+0x04d9 mem_sniff_payload
+0x04e9 mem_aurand_send_delay_time
+0x04ed memRemoteRPNBitRate
+0x04ee memRemotePRNDataBits
+0x04ef memRemotePRNStopBit
+0x04f0 memRemotePRNParity
+0x04f1 memRemotePRNFlowControl
+0x04f2 memRemotePRNXon
+0x04f3 memRemotePRNXoff
+0x04f4 mem_mod2div_temp
+0x04f7 mem_contw_temp
+0x04f9 mem_attrib_list
+0x04fb mem_current_adss
+0x04fc mem_current_channel
+0x04fd mem_current_frame_type
+0x04fe mem_current_fcs
+0x04ff mem_current_length
+0x0501 mem_rfcomm_uih_payload_ptr
+0x0503 mem_uih_cmd_type
+0x0504 mem_uih_length
+0x0506 mem_param_payload_ptr
+0x0508 mem_ms_param
+0x0509 mem_pn_credit_flow_type_info
+0x050a mem_pn_priority
+0x050b mem_pn_acknowledg_timer
+0x050c mem_pn_max_retrans
+0x050d mem_rfcomm_send_adss
+0x050e mem_rfcomm_send_frame_type
+0x050f mem_rfcomm_send_fcs
+0x0510 mem_rfcomm_send_offset
+0x0511 mem_sdp_mem_start
+0x0511 mem_sdp_uuid_search_ptr
+0x0519 mem_sdp_continue_byte
+0x051b mem_sdp_pduid
+0x051c mem_sdp_transactionid
+0x051e mem_sdp_transactionid_local
+0x0520 mem_sdp_attribute_maxbyte
+0x0522 mem_sdp_record_maxcnt
+0x0524 mem_sdp_record_handle
+0x0528 mem_sdp_LACAP_found
+0x0529 mem_sdp_RFCOMM_found
+0x052a mem_sdp_handle_list
+0x052a mem_sdp_attrib_list
+0x054a mem_sdp_error_code
+0x054c mem_sdp_all_length
+0x054e mem_handle_humber
+0x054f mem_search_uuid
+0x0551 mem_sdp_mem_end
+0x0551 mem_rxbuf
+0x0562 mem_random_number
+0x0572 mem_round_key
+0x0582 mem_kinit
+0x0592 mem_input_store
+0x05a2 mem_x
+0x05b2 mem_y
+0x05c1 mem_y15
+0x05c2 mem_key_store
+0x05d3 mem_key_store_end
+0x05d4 memp_ar_key
+0x05d6 memp_ar_input
+0x05d8 mem_ar_hround
+0x05e2 mem_ec_infinite
+0x05e3 mem_ec_loopc
+0x05e5 mem_aes_cmac_data_length
+0x05e6 memdat
+0x05e6 mem_ax
+0x05fe mem_ay
+0x0616 mem_az
+0x062e mem_bx
+0x0646 mem_ax_256//32 bytes
+0x0646 mem_by
+0x065e mem_bz
+0x0666 mem_ay_256// 32 bytes
+0x0676 mem_cx
+0x0686 mem_az_256// 32 bytes
+0x068e mem_cy
+0x06a5 mem_cy5
+0x06a6 mem_bx_256// 32 bytes
+0x06a6 mem_cz
+0x06be mem_k
+0x06c6 mem_by_256// 31 bytes
+0x06d6 mem_align
+0x06e6 mem_bz_256//32 bytes
+0x06e6 mem_tmp1
+0x06e6 memahbak
+0x06fe mem_tmp5
+0x0706 mem_cx_256//32 bytes
+0x0706 memahsave
+0x0716 mem_tmp2
+0x0726 mem_cy_256// 32 bytes
+0x0726 memahsave_end
+0x0726 mem_addr_padding
+0x0727 mem_addr_value/* 12 bytes     */ 
+0x072e mem_tmp3
+0x072e mem_t1
+0x0733 mem_addr_value_end
+0x0736 mem_addr_iocap_end
+0x0745 mem_cy5_256// 1 byte
+0x0746 mem_cz_256// 32 bytes
+0x0746 mem_tmp0
+0x0746 mem_t0
+0x074e mem_tmp0a
+0x075e mem_t2
+0x0766 mem_k_256//32 bytes
+0x0776 mem_t3
+0x0786 mem_tmp1_256//32 bytes
+0x078e mem_t7
+0x07a6 mem_tmp5_256
+0x07c6 mem_tmp2_256
+0x07e6 mem_tmp3_256
+0x07e6 mem_t1_256
+0x0806 mem_tmp0_256
+0x0806 mem_t0_256
+0x0826 mem_t2_256
+0x0846 mem_t3_256
+0x0866 mem_t7_256
+0x0886 mem_p
+0x089e mem_a
+0x08b6 mem_b
+0x08ce mem_gx
+0x08e6 mem_gy
+0x08fe memh0
+0x091e mem_p_256
+0x093e mem_a_256
+0x095e mem_gx_256
+0x097e mem_gy_256
+0x099e mem_le_slat
+0x09ae mem_sp_state_start
+0x09ae mem_sp_state
+0x09af mem_master_sp_state
+0x09b0 mem_sp_flag
+0x09b1 mem_master_sp_flag
+0x09b2 mem_sp_calc
+0x09b3 mem_sp_dh_ready
+0x09b4 mem_sp_localsm
+0x09b5 mem_pairing_auth
+0x09b6 mem_sp_flag_start
+0x09b6 mem_sp_local_key_send_count
+0x09b7 mem_sp_remote_key_recv_count
+0x09b8 mem_sp_remote_key_invalid
+0x09b9 mem_sp_dhkey_invalid
+0x09ba mem_gkey
+0x09be mem_le_pubkey_remote_x_256
+0x09c6 mem_sp_pubkey_remote
+0x09c6 mem_sp_pubkey_remote_x
+0x09de mem_sp_pubkey_remote_x_end
+0x09de mem_le_pubkey_remote_y_256
+0x09e6 mem_sp_pubkey_remote_y
+0x09fe mem_le_dhkey_256
+0x0a06 mem_sp_dhkey
+0x0a1e mem_sp_dhkey_end
+0x0a1e mem_sp_random_local
+0x0a2e mem_sp_random_local_end
+0x0a2e mem_sp_random_remote
+0x0a3e mem_sp_random_remote_end
+0x0a3e memresult
+0x0a3e mem_sp_calc_result
+0x0a3e memh
+0x0a42 memg
+0x0a46 memf
+0x0a4a meme
+0x0a4e mem_sp_calc_result_high
+0x0a4e memd
+0x0a52 memc
+0x0a56 memb
+0x0a5a mema
+0x0a5e mem_sp_check_result
+0x0a6e mem_sp_confirm_remote
+0x0a7e mem_sp_prarm_stack
+0x0a8e mem_UI_data_txbuff_length
+0x0a90 mem_ipc_skip_continue_proc
+0x0a91 mem_ui_timer_temp//length 4
+0x0a91 mem_ipc_rega_temp
+0x0a95 mem_hold_contr
+0x0a97 mem_hold_contw
+0x0a99 mem_fifo_temp
+0x0a9a mem_pdatatemp
+0x0aa2 mem_temp//8 bytes
+0x0aaa mem_timeup// 4 bytes
+0x0aae mem_rega//4 bytes
+0x0ab2 mem_regb//4 bytes
+0x0ab6 mem_regc//3 bytes
+0x0ab9 mem_contr//2 bytes
+0x0abb mem_contw//2 bytes
+0x0abd mem_wakup_from_power_flag
+0x0abe mem_saved_gpio_in
+0x0ac2 mem_shutter_random_mac_data_temp
+0x0ac2 mem_shutter_config_data_temp
+0x0ac2 mem_le_adv_channel_map_temp
+0x0ac2 mem_le_data_len_temp//1byte
+0x0ac2 mem_tx_fifo_map_temp
+0x0ac2 mem_rpn_dlci//1byte
+0x0ac2 mem_event_cmd_response_content//2byte
+0x0ac2 mem_le_prand//16byte
+0x0ac2 mem_AES_CMAC_k//16 bytes
+0x0ac2 mem_regext_index//1 bytes
+0x0ac2 mem_temp_block0
+0x0ac3 mem_le_data_temp//15bytes
+0x0ac3 mem_temp_block1
+0x0ad2 mem_le_aes_128//16byte
+0x0ad2 mem_regext//64 bytes
+0x0ad2 mem_AES_CMAC_k1//16 bytes
+0x0ad2 mem_temp_block2
+0x0ae2 mem_AES_CMAC_k2//16 bytes
+0x0ae2 mem_temp_block3
+0x0af2 mem_AES_CMAC_temp// 16 bytes
+0x0af2 mem_temp_block4
+0x0b02 mem_AES_CMAC_M_last// 16 bytes
+0x0b02 mem_module_uart_cmd
+0x0b03 mem_module_uart_opcode
+0x0b04 mem_module_uart_len
+0x0b05 mem_module_temp_nl_discard_packet
+0x0b06 mem_temp_block5
+0x0b12 mem_le_mackey//16 bytes
+0x0b12 mem_app_receive_temp
+0x0b12 mem_key_value_temp
+0x0b14 mem_key_value
+0x0b16 mem_key_value_temp1
+0x0b17 mem_key_value_temp2
+0x0b18 mem_key_value_temp3
+0x0b19 mem_key_value_temp4
+0x0b1a mem_key_value_temp5
+0x0b1b mem_key_value_temp6
+0x0b1c mem_temp_block6
+0x0b22 mem_usb_status
+0x0b23 mem_usb_fifo_empty
+0x0b24 mem_usb_read_len
+0x0b25 mem_usb_rxbuf
+0x0b65 mem_bufptr
+0x0b67 mem_remain
+0x0b68 mem_devicedesc
+0x0b7c mem_hidreportdesc_kb
+0x0b7e mem_hidreportdesc_m
+0x0b80 mem_confdesc
+0x0be4 mem_string0
+0x0be9 mem_string1
+0x0c07 mem_string2
+0x0c47 mem_string3
+0x0c65 mem_usb_zero_packet
+0x0c67 mem_usb_ones_packet
+0x0c69 mem_usb_two_packet
+0x0c6b mem_usb0_state
+0x0c6c mem_usb_offline_check_gpio
+0x0c6d mem_usb_tx_interval
+0x0c6e mem_usb_clear_mem_start
+0x0c6e mem_usb_setup
+0x0c6e mem_usb_setup_bmRequestType
+0x0c6f mem_usb_setup_bRequest
+0x0c70 mem_usb_setup_bValue
+0x0c71 mem_usb_setup_bValueH
+0x0c72 mem_usb_setup_wIndex
+0x0c74 mem_usb_setup_bLength
+0x0c75 mem_usb_setup_bLengthH
+0x0c76 mem_usb0_setup
+0x0cb6 mem_usb0_set_report_data
+0x0cf6 mem_usb0_get_report_data
+0x0d36 mem_usb_state
+0x0d37 mem_usb_tx_wait
+0x0d38 mem_usb_tx_enable
+0x0d39 mem_usb_remote_wakeup
+0x0d3a mem_usb_clear_remote_wakeup
+0x0d3b mem_usb_ep0_stall_status
+0x0d3c mem_usb_ep1_stall_status
+0x0d3d mem_usb_ep2_stall_status
+0x0d3e mem_usb_ep3_stall_status
+0x0d3f mem_dsc_info_data_pointer
+0x0d41 mem_dsc_info_len
+0x0d42 mem_usb0_data_ready_report
+0x0d43 mem_usb_tx_win_enable
+0x0d44 mem_usb_tx_mac_enable
+0x0d45 mem_usb_device_enumeration_endflag
+0x0d46 mem_usb_wakestate_onetime_flag
+0x0d47 mem_usb_mac_wakeup_trig
+0x0d48 mem_usb_set_high_addr_flag
+0x0d49 mem_usb_set_protocol_value
+0x0d4a mem_usb_set_protocol_status
+0x0d4b mem_usb_get_protocol_flag
+0x0d4c mem_usb_idle_flag
+0x0d4d mem_usb_idle_rate
+0x0d4e mem_usb_setup_bValue_temp
+0x0d50 mem_usb0_get_set_report
+0x0d51 mem_usb_ep1_data
+0x0d52 mem_usb_ep2_data
+0x0d53 mem_usb_clear_halt
+0x0d54 mem_usb_mouse_data
+0x0d64 mem_usb_kb_data
+0x0d74 mem_usb_kb_multikey
+0x0d84 mem_usb_kb_data_sta_data
+0x0d8c mem_usb_kb_data_last_data
+0x0d94 mem_usb_kb_multikey_sta_data
+0x0d97 mem_usb_kb_multikey_last_data
+0x0d9a mem_usb_kb_blank_data_enable
+0x0d9b mem_usb_kb_mul_blank_data_enable
+0x0d9c mem_usb_test_cnt
+0x0d9d mem_usb_clear_mem_end
+0x0d9d mem_usb_test_kb
+0x0d9e mem_rssi_noise_buffer
+0x0e9e mem_rssi_noise_dg_buffer
+0x0f9e mem_rssi_noise_ms_buffer
+0x109e mem_rssi_noise_kb_buffer
+0x119e mem_24g_common_temp
+0x11be mem_data_pre
+0x11c0 mem_data_current
+0x11c2 mem_data_sum
+0x11c5 mem_data_value
+0x11c6 mem_data_value_temp
+0x11c7 mem_zcode_temp_param0//zcode num
+0x11c8 mem_zcode_temp_param1//patch ram func addr
+0x11ca mem_zcode_temp_param2//patch ram func addr
+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
+0x4090 mem_current_amaddr
+0x4091 mem_lpm_mode
+0x4092 mem_device_option
+0x4093 mem_scan_mode
+0x4094 mem_last_clkn
+0x4098 mem_features
+0x40a0 mem_lap
+0x40a3 mem_uap
+0x40a4 mem_nap
+0x40a6 mem_npage
+0x40a7 mem_glap
+0x40aa mem_class
+0x40ad mem_iscan_window
+0x40af mem_iscan_interval
+0x40b1 mem_pscan_window
+0x40b3 mem_pscan_interval
+0x40b5 mem_page_interval
+0x40b7 mem_page_window
+0x40b9 mem_page_to
+0x40bb mem_inq_window
+0x40bd mem_fcomp_mul
+0x40be mem_fcomp_div
+0x40bf mem_rx_window_init
+0x40c1 mem_rx_window_sniff
+0x40c3 mem_rf_init_ptr
+0x40c5 mem_last_type
+0x40c6 mem_last_type_esco
+0x40c7 mem_last_type_saved
+0x40c8 mem_retransmission_cnt
+0x40ca mem_next_btclk
+0x40ce mem_rf_rccal
+0x40cf mem_handle_num
+0x40d0 mem_max_slot
+0x40d1 mem_eir_enable
+0x40d2 mem_afh_instant
+0x40d6 mem_afh_error_total
+0x40d8 mem_afh_cfg
+0x40d9 mem_afh_new_mod
+0x40da mem_afh_map_lo
+0x40df mem_afh_map_hi
+0x40e4 mem_afh_used
+0x40e5 mem_afh_index
+0x40e7 mem_afh_map_new
+0x40f2 mem_afh_map
+0x4142 mem_afh_timer
+0x4146 mem_afh_classify_channel_map
+0x4150 mem_chip_functions
+0x4152 mem_lpm_wake_lock
+0x4154 mem_lpm_interval
+0x4156 mem_lpm_overhead
+0x4157 mem_lpm_hibernate_switch
+0x4158 mem_esco_addr
+0x4159 mem_sniff_unint_lost
+0x415a mem_ptt
+0x415b mem_sleep_counter//should be 0x41fc in REVC
+0x415f mem_sleep_counter_all
+0x4163 mem_sleep_clkn
+0x4169 mem_sniff_rcv
+0x416c mem_sniff_lost
+0x416f mem_clks_per_lpo
+0x4172 mem_lpm_mult
+0x4173 mem_lpm_mult_timeout
+0x4174 mem_lpm_mult_cnt
+0x4175 mem_lpm_config
+0x4178 mem_lpm_xtalcnt
+0x4179 mem_lpm_buckcnt
+0x417a mem_lpm_ldocnt
+0x417b mem_lpm_isogate
+0x417c mem_lpm_isogate_final
+0x417d mem_saved_gpio// should be 0x421e in REVC
+0x418d mem_saved_gsel
+0x4190 mem_saved_mark
+0x4198 mem_saved_spidctrl
+0x4199 mem_patch_ptr
+0x419b mem_patch_len
+0x419d mem_timers
+0x41bd mem_link_key_exists
+0x41be mem_link_key
+0x41ce mem_hci_cmd
+0x41cf mem_hci_conn_handle
+0x41d0 mem_hci_plap
+0x41d3 mem_hci_puap
+0x41d4 mem_hci_pnap
+0x41d6 mem_uartd_rxitems_got_data
+0x41d7 mem_uartd_rxitems_threshold
+0x41d8 mem_uartd_rx_timeout
+0x41da mem_loadcode_times
+0x41db mem_tx_lch
+0x41dc mem_tx_len
+0x41de mem_tx_power
+0x41df mem_context_number
+0x41e0 mem_250k_freq_enable
+0x41e1 mem_rf_init_data
+0x41e2 mem_app_handshake_flag
+0x41e3 mem_sniff_param_interval
+0x41e5 mem_sniff_param_attempt
+0x41e7 mem_sniff_param_timeout
+0x41e9 mem_cb_check_wakelock
+0x41eb mem_cb_before_hibernate
+0x41ed mem_cb_before_lpm
+0x41ef mem_cb_le_process
+0x41f1 mem_cb_bt_process
+0x41f3 mem_cb_idle_process
+0x41f5 mem_cb_bb_event_process
+0x41f7 mem_cb_discovry_timeout
+0x41f9 mem_cb_att_write
+0x41fb mem_cb_ble_transmit
+0x41fd mem_cb_event_timer
+0x41ff mem_cb_bt_set_mult
+0x4201 mem_cb_spi_flash_write_complate
+0x4203 mem_eeprom_base
+0x4205 mem_unsniff2sniff_timer_count
+0x4206 mem_wake_up_delay_timer
+0x4207 mem_app_connection_options
+0x4208 mem_app_disconn_reason
+0x420a mem_app_disconn_reason_flag
+0x420c mem_lpm_delay_after_sniff
+0x4210 mem_xrecord_mode
+0x4211 mem_eeprom_block_size
+0x4212 mem_spi_init_clk
+0x4213 mem_spi_init_delay_time
+0x4214 mem_spi_ncs_gpio
+0x4215 mem_nv_data_ptr
+0x4217 mem_nv_data_number
+0x4218 mem_queue_ptr
+0x421a mem_ui_led_struct_num
+0x421b mem_ui_led_struct_ptr
+0x421d mem_0_5_adc_io_data
+0x421f mem_1v_adc_hvin_data
+0x4221 mem_2v_adc_vinlpm_data
+0x4223 mem_1v_adc_io_data
+0x4225 mem_5v_adc_hvin_data
+0x4227 mem_3v_adc_vinlpm_data
+0x4229 mem_otp_adc_flag
+0x422b mem_reference_voltage
+0x422d mem_adc_config_flag
+0x422e mem_adc_channel
+0x422f mem_adc_current_value
+0x4231 mem_adc_power_flag//bit0:low power falg ; bit1:no power flag
+0x4232 mem_spi_write_addr
+0x4235 mem_spi_write_ptr
+0x4237 mem_spi_write_len
+0x4239 mem_spi_write_flash_sm
+0x423a mem_eeprom_wp_gpio
+0x423b mem_kscan_ptr
+0x423d mem_key_num_ptr
+0x423d mem_keyscan_ptr
+0x423f mem_power_param_ptr
+0x4241 mem_power_on_flag//forbid to move this variable
+0x4241 mem_24g_head_ptr
+0x4243 mem_baud
+0x4245 mem_hci_lt_rx_state
+0x4246 mem_l2cap_xmem_start
+0x4246 mem_l2cap_tx_multi_offset//0 means single packet
+0x4248 mem_sdp_remote_cid
+0x424a mem_rfcomm_remote_cid
+0x424c mem_hid_ctrl_remote_cid
+0x424e mem_hid_int_remote_cid
+0x4250 mem_sdp_state
+0x4251 mem_rfcomm_state
+0x4252 mem_hid_control_state
+0x4253 mem_hid_interrupt_state
+0x4254 mem_spp_state
+0x4255 mem_ML2CAP_comm_id
+0x4256 mem_used_map
+0x4257 mem_tx_fifo0
+0x4257 mem_tx_fifo0_map
+0x4258 mem_tx_fifo0_ptr
+0x425a mem_tx_fifo1
+0x425a mem_tx_fifo1_map
+0x425b mem_tx_fifo1_ptr
+0x425d mem_tx_fifo2
+0x425d mem_tx_fifo2_map
+0x425e mem_tx_fifo2_ptr
+0x4260 mem_tx_fifo3
+0x4260 mem_tx_fifo3_map
+0x4261 mem_tx_fifo3_ptr
+0x4263 mem_tx_fifo_end
+0x4263 mem_l2cap_lpm_txbuf
+0x4363 mem_l2cap_flow_ctrl_flag
+0x4364 mem_l2cap_pending_item
+0x4365 mem_l2cap_xmem_end
+0x4365 mem_le_dsniff
+0x4367 mem_le_conn_interval
+0x4369 mem_le_scan_enable
+0x436a mem_le_scan_interval
+0x436c mem_le_scan_window
+0x436e mem_le_adv_enable
+0x436f mem_le_adv_data_len
+0x4370 mem_le_adv_data
+0x438f mem_le_scan_data_len
+0x4390 mem_le_scan_data
+0x43af mem_le_name_len
+0x43b0 mem_le_name
+0x43ce mem_le_new_map
+0x43d3 mem_le_new_param
+0x43d3 mem_le_new_transmitwindowsize
+0x43d4 mem_le_new_transmitwindowoffset
+0x43d6 mem_le_new_conninterval
+0x43d8 mem_le_new_connslavelatency
+0x43da mem_le_new_connsupervisiontimeout
+0x43dc mem_le_txheader
+0x43dd mem_le_txlen
+0x43de mem_le_txpayload
+0x43e0 mem_le_txcid
+0x43e2 mem_le_l2cap
+0x43e3 mem_le_l2cap_response
+0x43e4 mem_le_txbdy
+0x4403 mem_le_pcnt_tx
+0x4408 mem_le_pcnt_rx
+0x440d mem_le_last_mic
+0x4411 mem_le_ivm
+0x4415 mem_le_ivs
+0x4419 mem_le_ltk
+0x4429 mem_ltk_exists
+0x442a mem_le_rconfirm
+0x443a mem_le_srand
+0x444a mem_le_iat
+0x444b mem_le_rat
+0x444c mem_le_preq
+0x444d mem_le_preq_iocap
+0x444e mem_le_preq_oob
+0x444f mem_le_preq_auth
+0x4450 mem_le_preq_max_keysize
+0x4451 mem_le_preq_init_key_distribution
+0x4452 mem_le_preq_resp_key_distribution
+0x4453 mem_le_pres
+0x4454 mem_le_pres_iocap
+0x4455 mem_le_pres_oob
+0x4456 mem_le_pres_auth
+0x4457 mem_le_pres_max_keysize
+0x4458 mem_le_pres_init_key_distribution
+0x4459 mem_le_pres_resp_key_distribution
+0x445a mem_le_search_handle_start
+0x445c mem_le_search_handle_end
+0x445e mem_le_att_offset
+0x445e mem_le_search_att_type_length
+0x445f mem_le_search_att_type
+0x446f mem_le_notify_handle
+0x4471 mem_le_search_uuid_length
+0x4472 mem_le_search_uuid
+0x4482 mem_le_adv_param
+0x4482 mem_le_adv_interval
+0x4484 mem_le_adv_type
+0x4485 mem_le_adv_own_addr_type
+0x4486 mem_le_adv_direct_addr_type
+0x4487 mem_le_adv_direct_addr
+0x448d mem_le_adv_channel_map
+0x448e mem_le_conn_param
+0x448e mem_le_conn_peer_addr_type
+0x448f mem_le_conn_peer_addr
+0x4495 mem_le_conn_own_addr_type
+0x4496 mem_le_interval_min
+0x4498 mem_le_interval_max
+0x449a mem_le_latency
+0x449c mem_le_timeout
+0x449e mem_le_scan_params
+0x449e mem_le_scan_type
+0x449f mem_le_scan_own_addr_type
+0x44a0 mem_le_lap
+0x44a3 mem_le_uap
+0x44a4 mem_le_nap
+0x44a6 mem_le_local_mtu
+0x44a8 mem_le_remote_mtu
+0x44aa mem_le_skdm
+0x44b2 mem_le_skds
+0x44ba mem_le_init_superto
+0x44bc mem_ui_le_uuid_table
+0x44be mem_le_secure_connect_enable
+0x44bf mem_le_secure_connect_flag
+0x44c0 mem_le_sc_calc
+0x44c1 mem_le_secure_connect_state
+0x44c2 mem_le_sc_confirm_gkey_flag
+0x44c3 mem_le_sc_local_key_invalid
+0x44c4 mem_le_pairing_state
+0x44c5 mem_le_enc_state
+0x44c6 mem_le_pairing_mode
+0x44c7 mem_le_tk
+0x44cb mem_le_ediv
+0x44cd mem_le_rand
+0x44d5 mem_le_irk
+0x44e5 mem_le_transmit_window
+0x44e9 mem_le_configuration
+0x44ea mem_le_fixed_ltk
+0x44fa mem_le_pairing_handle
+0x44fc mem_le_l2cap_size
+0x44fe mem_le_packet_len_recved
+0x44ff mem_le_tx_buff_used
+0x4500 mem_le_tx_ptr0
+0x4502 mem_le_tx_ptr1
+0x4504 mem_le_tx_ptr2
+0x4506 mem_le_tx_ptr3
+0x4508 mem_le_signaling_identifier
+0x4509 mem_le_l2cap_signaling_conn_param_update_rsp_result
+0x450b mem_le_packet_size
+0x450c mem_le_packet_llid
+0x450d mem_le_payload_ptr
+0x450f mem_le_md_count
+0x4510 mem_lmp_version
+0x4513 mem_lmp_subversion
+0x4515 mem_local_name_length
+0x4516 mem_local_name
+0x4519 mem_local_name2
+0x4559 mem_local_name_end
+0x455a mem_unsniff2sniff_timer
+0x455b mem_switch_flag
+0x455c mem_classic_bt_flag
+0x455d mem_pn_dlci
+0x455e mem_pn_max_frame_size
+0x4560 memFCStemp1
+0x4561 memFCStemp2
+0x4562 memFCStemp3
+0x4563 mem_rfcomm_initiator
+0x4564 mem_remote_spp_channel
+0x4565 mem_HIUfcs_SPP
+0x4566 mem_HIUfcs_SPP_WCredits
+0x4567 mem_rfcomm_send_more_pkt
+0x4568 mem_remote_credits
+0x4569 mem_credit_given
+0x456a mem_ms_channel
+0x456b mem_credit_flag
+0x456c mem_rfcomm_max_frame_size
+0x456e mem_rfcomm_credit_init_data
+0x456f mem_cb_receive_spp_data
+0x4571 mem_nl_rx_data_src
+0x4573 mem_nl_rx_len_all
+0x4575 mem_ui_uuid_table
+0x4577 mem_all_uuid_16bits
+0x458d mem_all_uuid_128bits
+0x45af mem_sdp_l2capch_ptr
+0x45b1 mem_sp_local_key_invalid
+0x45b2 mem_le_private_key_256
+0x45d2 mem_le_pubkey_local_x_256
+0x45f2 mem_le_pubkey_local_y_256
+0x4612 mem_sp_private_key
+0x462a mem_sp_pubkey_local
+0x462a mem_sp_pubkey_local_x
+0x4642 mem_sp_pubkey_local_x_end
+0x4642 mem_sp_pubkey_local_y
+0x465a mem_ssp_enable
+0x465b mem_sp_iocap_local
+0x465e mem_sp_iocap_remote
+0x4661 mem_flag_mode_ssp_pin
+0x4662 mem_ssp_mode_flag
+0x4663 mem_authentication_passkey_times
+0x4664 mem_passkey_1bit
+0x4665 mem_flag_pairing_state
+0x4666 mem_ipc_lock_bt
+0x4667 mem_ipc_lock_c51
+0x4668 mem_ipc_fifo_bt2c51
+0x4670 mem_ipc_fifo_c512bt
+0x4678 mem_ui_button_timer
+0x4679 mem_ui_button_last_state
+0x467a mem_ui_timer_last_btclk
+0x467e mem_discovery_timeout_timer_count
+0x4680 mem_hid_handshake_timer_count
+0x4681 memui_reconnect_mode
+0x4682 mem_ui_state_map
+0x4684 mem_ui_profile_supported
+0x4685 mem_ui_button_timeout
+0x4686 mem_ui_button_gpio
+0x4687 mem_discovery_timeout
+0x4689 mem_pin_length
+0x468a mem_pin
+0x469a mem_antl_lpm_interval
+0x469c mem_antl_adv_interval
+0x469e mem_antl_slow_adv_lpm_interval
+0x46a0 mem_antl_slow_adv_adv_interval
+0x46a2 mem_antl_led_style
+0x46a2 mem_antl_led_type
+0x46a3 mem_antl_led_blink_count
+0x46a4 mem_antl_led_gpio
+0x46a5 mem_antl_led_on_time
+0x46a7 mem_antl_led_off_time
+0x46a9 mem_antl_led_cb_on
+0x46ab mem_antl_led_cb_off
+0x46ad mem_antl_buzzer_style
+0x46ad mem_antl_buzzer_type
+0x46ae mem_antl_buzzer_blink_count
+0x46af mem_antl_buzzer_gpio
+0x46b0 mem_antl_buzzer_on_time
+0x46b2 mem_antl_buzzer_off_time
+0x46b4 mem_antl_buzzer_cb_on
+0x46b6 mem_antl_buzzer_cb_off
+0x46b8 mem_antl_fast_adv_led_style
+0x46b8 mem_antl_fast_adv_led_type
+0x46b9 mem_antl_fast_adv_led_blink_count
+0x46ba mem_antl_fast_adv_led_gpio
+0x46bb mem_antl_fast_adv_led_on_time
+0x46bd mem_antl_fast_adv_led_off_time
+0x46bf mem_antl_slow_adv_led_style
+0x46bf mem_antl_slow_adv_led_type
+0x46c0 mem_antl_slow_adv_led_blink_count
+0x46c1 mem_antl_slow_adv_led_gpio
+0x46c2 mem_antl_slow_adv_led_on_time
+0x46c4 mem_antl_slow_adv_led_off_time
+0x46c6 mem_antl_power_starting_led_style
+0x46c6 mem_antl_power_starting_led_type
+0x46c7 mem_antl_power_starting_led_blink_count
+0x46c8 mem_antl_power_starting_led_gpio
+0x46c9 mem_antl_power_starting_led_on_time
+0x46cb mem_antl_power_starting_led_off_time
+0x46cd mem_antl_power_starting_buzzer_style
+0x46d4 mem_antl_power_off_led_style
+0x46d4 mem_antl_power_off_led_type
+0x46d5 mem_antl_power_off_led_link_count
+0x46d6 mem_antl_power_off_led_gpio
+0x46d7 mem_antl_power_off_led_on_time
+0x46d9 mem_antl_power_off_led_off_time
+0x46db mem_antl_power_off_buzzer_style
+0x46db mem_antl_power_off_buzzer_type
+0x46dc mem_antl_power_off_buzzer_link_count
+0x46dd mem_antl_power_off_buzzer_gpio
+0x46de mem_antl_power_off_buzzer_on_time
+0x46e0 mem_antl_power_off_buzzer_off_time
+0x46e2 mem_antl_alert_led_stlye
+0x46e9 mem_antl_alert_buzzer_stlye
+0x46e9 mem_antl_alert_buzzer_type
+0x46ea mem_antl_alert_buzzer_blink_count
+0x46eb mem_antl_alert_buzzer_gpio
+0x46ec mem_antl_alert_buzzer_on_time
+0x46ee mem_antl_alert_buzzer_off_time
+0x46f0 mem_antl_key_led_style
+0x46f0 mem_antl_key_led_type
+0x46f1 mem_antl_key_led_blink_count
+0x46f2 mem_antl_key_led_gpio
+0x46f3 mem_antl_key_led_on_time
+0x46f5 mem_antl_key_led_off_time
+0x46f7 mem_antl_key_buzzer_style
+0x46fe mem_antl_queue_width
+0x46ff mem_antl_queue_depth
+0x4700 mem_antl_queue_curr_num
+0x4701 mem_antl_queue_read_ptr
+0x4702 mem_antl_queue_write_ptr
+0x4703 mem_antl_queue_buff
+0x4753 mem_antl_key_scan_enable
+0x4754 mem_antl_led_num
+0x4755 mem_antl_led_gpio_map
+0x4759 mem_antl_power_param
+0x4759 mem_antl_power_state
+0x475a mem_antl_power_timer
+0x475b mem_antl_power_off_timeout
+0x475c mem_antl_power_starting_timeout
+0x475d mem_antl_power_off_cb
+0x475f mem_antl_power_starting_cb
+0x4761 mem_antl_power_standby_cb
+0x4763 mem_event_button_up_cb
+0x4765 mem_antl_key_num
+0x4766 mem_cb_antl_key
+0x4768 mem_antl_key_conf0
+0x476c mem_antl_key0_press
+0x477b mem_antl_key0_release
+0x478a mem_antl_conn_updata_procedure_state
+0x478b mem_client_characteristic_configuration_descriptor
+0x478d mem_adc_timer
+0x478f mem_antl_conn_update_timer
+0x4790 mem_antl_send_updata_le_param_timer
+0x4791 mem_antl_le_sleep_timer
+0x4793 mem_antl_fast_adv_timer
+0x4795 mem_antl_fast_adv_timeout
+0x4797 mem_antl_le_sleep_timeout
+0x4799 mem_double_click_timer
+0x479a mem_butten_click_cnt
+0x479b mem_antl_led_state
+0x479c mem_antl_buzzer_state
+0x479d mem_antl_key_state
+0x479e mem_antl_lost_mode
+0x479f mem_alarm_config
+0x47a0 mem_alarm_config_notfy_cnt
+0x47a1 mem_buzzer_pwm_conf
+0x47a7 mem_adc_timeout
+0x47a9 mem_voltage_remain_percent
+0x47aa mem_battery_calculate_set
+0x47aa mem_battery_full_voltage
+0x47ac mem_battery_empty_voltage
+0x47ae mem_battery_low_voltage
+0x47b0 mem_battery_current_voltage
+0x47b2 mem_rx_window_sniff_inc
+0x47b4 mem_interval_increment
+0x47b6 mem_antl_le_interval_min
+0x47b8 mem_antl_le_interval_max
+0x47ba mem_antl_le_latency
+0x47bc mem_antl_le_timeout
+0x47be mem_antl_le_unnormal_interval_min
+0x47c0 mem_antl_le_unnormal_interval_max
+0x47c2 mem_antl_le_unnormal_latency
+0x47c4 mem_antl_le_unnormal_timeout
+0x47c6 mem_AntiLost_le_att_list
+0x469a mem_car_hard_soft_switch
+0x469b mem_car_queue_each_size
+0x469c mem_car__queue_length
+0x469d mem_car_queue_curr_num
+0x469e mem_car_queue_read_ptr
+0x469f mem_car_queue_write_ptr
+0x46a0 mem_car_queue_ele
+0x4718 mem_car_pop_queue_buff
+0x472c mem_car_led_num
+0x472d mem_car_led_map
+0x4737 mem_car_style1_led_type
+0x4738 mem_car_style1_blink_count
+0x4739 mem_car_style1_struct_led_gpio
+0x473a mem_car_style1_on_time
+0x473c mem_car_style1_off_time
+0x473e mem_car_style1_cb_ledon
+0x4740 mem_car_style1_cb_ledoff
+0x4742 mem_car_style2_led_type
+0x4743 mem_car_style2_blink_count
+0x4744 mem_car_style2_struct_led_gpio
+0x4745 mem_car_style2_on_time
+0x4747 mem_car_style2_off_time
+0x4749 mem_car_style2_cb_ledon
+0x474b mem_car_style2_cb_ledoff
+0x474d mem_le_receive_data
+0x474d mem_le_receive_packet_head
+0x474f mem_le_receive_cmd
+0x4750 mem_le_receive_length
+0x4752 mem_le_receive_payload
+0x475c mem_le_receive_checksum
+0x475d mem_motor1_status
+0x475e mem_motor1_speed
+0x475f mem_motor2_status
+0x4760 mem_motor2_speed
+0x4761 mem_motor3_status
+0x4762 mem_motor3_speed
+0x4763 mem_motor1_pwm_set
+0x4763 mem_motor1_pwm_pin1_set
+0x4764 mem_motor1_pwm_pin2_set
+0x4765 mem_motor1_pwm_pin_set
+0x4766 mem_motor1_pwm_channel_set
+0x4767 mem_motor1_pwm_freq_set
+0x476a mem_motor1_pwm_dute_set
+0x476b mem_motor2_pwm_set
+0x476b mem_motor2_pwm_pin1_set
+0x476c mem_motor2_pwm_pin2_set
+0x476d mem_motor2_pwm_pin_set
+0x476e mem_motor2_pwm_channel_set
+0x476f mem_motor2_pwm_freq_set
+0x4772 mem_motor2_pwm_dute_set
+0x4773 mem_motor3_pwm_set
+0x4773 mem_motor3_pwm_pin1_set
+0x4774 mem_motor3_pwm_pin2_set
+0x4775 mem_motor3_pwm_pin_set
+0x4776 mem_motor3_pwm_channel_set
+0x4777 mem_motor3_pwm_freq_set
+0x477a mem_motor3_pwm_dute_set
+0x477b mem_motor_select_p_n
+0x477c mem_car_motor_status
+0x477d mem_car_motor_speed
+0x477e mem_motor_pwm_set
+0x477e mem_motor_pwm_pin1_set
+0x477f mem_motor_pwm_pin2_set
+0x4780 mem_motor_pwm_pin_set
+0x4781 mem_motor_pwm_channel_set
+0x4782 mem_motor_pwm_freq_set
+0x4785 mem_motor_pwm_dute_set
+0x4786 mem_ir_rx_gpio
+0x4787 mem_ir_data
+0x4789 mem_ir_rx_buf
+0x478b mem_ir_receive_clkn
+0x478f mem_ir_notify_data
+0x4792 mem_ir_notify_data_head
+0x4797 mem_ir_notify_data_payload
+0x4799 mem_ir_notify_data_check_sum
+0x479a mem_car_ir_breakdown_check_timer
+0x479b mem_car_ir_breakdown_flag
+0x479c mem_car_led_control
+0x479c mem_car_led1_status
+0x479d mem_car_led2_status
+0x479e mem_car_led3_status
+0x479f mem_car_led4_status
+0x47a0 mem_car_led5_status
+0x47a1 mem_car_led6_status
+0x47a2 mem_car_led7_status
+0x47a3 mem_car_led8_status
+0x47a4 mem_car_led_control_timer
+0x47a5 mem_car_led_blink_status
+0x47a6 mem_car_led_no
+0x47a7 mem_car_info_request
+0x47aa mem_car_info_request_head
+0x47af mem_car_info_request_payload
+0x47b7 mem_car_info_request_checksum
+0x47b8 mem_car_config_param
+0x47b8 mem_car_config_setting_flag
+0x47b9 mem_car_config_device_select
+0x47ba mem_car_config_motor_layout
+0x47bb mem_car_config_ir_enable
+0x47bc mem_car_config_ir_rx_gpio
+0x47bd mem_car_config_pairing_led_conn_status
+0x47be mem_car_config_pairing_led_gpio
+0x47bf mem_car_config_led_num
+0x47c0 mem_car_config_blood_led_gpio
+0x47c0 mem_car_config_blood_led1_gpio
+0x47c1 mem_car_config_blood_led2_gpio
+0x47c2 mem_car_config_blood_led3_gpio
+0x47c3 mem_car_config_blood_led4_gpio
+0x47c4 mem_car_config_blood_led5_gpio
+0x47c5 mem_car_config_blood_led6_gpio
+0x47c6 mem_car_config_blood_led7_gpio
+0x47c7 mem_car_config_blood_led8_gpio
+0x47c8 mem_car_config_bat_notify_enable
+0x47c9 mem_car_config_low_voltage_led_gpio
+0x47ca mem_car_config_low_voltage_percent
+0x47cb mem_car_config_soft_switch_enable
+0x47cc mem_car_config_soft_switch_gpio
+0x47cd mem_car_notify_vdd_count
+0x47ce mem_car_notify_vdd_timer
+0x47cf mem_car_notify_vdd_value_last
+0x47d0 mem_car_notify_vdd_percent
+0x47d1 mem_car_working_flag
+0x47d2 mem_low_bat_flag
+0x47d3 mem_notify_bat_packet
+0x47d6 mem_notify_bat_head
+0x47db mem_notify_bat_payload
+0x47dc mem_notify_bat_check_sum
+0x47dd mem_vdd_notify_flag
+0x47de mem_car_current_vdd_value_temp
+0x47e0 mem_car_last_vdd_value
+0x47e2 mem_vdd_calculate_set
+0x47e2 mem_vdd_full_vol
+0x47e4 mem_vdd_empty_vol
+0x47e6 mem_vdd_low_vol
+0x47e8 mem_vdd_now_vol
+0x47ea mem_car_24g_status
+0x47eb mem_car_24g_no_data_timeout_count
+0x47ed mem_car_24g_no_data_timeout_timer
+0x47ef mem_car_24g_ir_receive_attack_count
+0x47f0 mem_car_24g_go_die_flag
+0x47f1 mem_car_attack_shake_timer
+0x47f2 mem_car_attack_shake_flag
+0x47f3 mem_car_soft_power
+0x47f3 mem_car_power_state
+0x47f4 mem_car_power_timer
+0x47f5 mem_car_power_off_timeout
+0x47f6 mem_car_power_starting_timeout
+0x47f7 mem_car_power_off_cb
+0x47f9 mem_car_power_starting_cb
+0x47fb mem_car_power_standby_cb
+0x47fd mem_car_ui_button_up_cb
+0x47ff mem_car_le_att_list
+0x49f3 mem_car_moto1_blank_timer
+0x49f4 mem_car_moto2_blank_timer
+0x49f5 mem_car_moto3_blank_timer
+0x49f6 mem_car_24g_received_pac
+0x49f7 mem_24g_car_head_ptr
+0x469a mem_light_pwm0
+0x469b mem_light_pwm1
+0x469c mem_light_pwm2
+0x469d mem_light_pwm3
+0x469e mem_light_pwm4
+0x469f mem_light_pwm5
+0x46a0 mem_light_pairing_enable
+0x46a1 mem_light_pairing_timer
+0x46a3 mem_light_cnum
+0x46a4 mem_light_next_record
+0x46a5 mem_light_clist
+0x46f5 mem_light_crr_cmd_count
+0x46f6 mem_curr_packet_num
+0x469a mem_lightc_led_gpio
+0x469b mem_lightc_row
+0x46a1 mem_lightc_col
+0x46a7 mem_adv_time
+0x46a8 mem_cmd0_string
+0x46bc mem_cmd1_string
+0x46d0 mem_cmd2_string
+0x46e4 mem_cmd3_string
+0x46f8 mem_cmd4_string
+0x470c mem_cmd5_string
+0x4720 mem_cmd6_string
+0x4734 mem_cmd7_string
+0x4748 mem_cmd8_string
+0x475c mem_cmd9_string
+0x4770 mem_cmd10_string
+0x4784 mem_cmd11_string
+0x4798 mem_cmd12_string
+0x47ac mem_cmd13_string
+0x47c0 mem_cmd14_string
+0x47d4 mem_cmd15_string
+0x47e8 mem_cmd16_string
+0x47fc mem_cmd17_string
+0x4810 mem_cmd18_string
+0x4824 mem_cmd19_string
+0x4838 mem_cmd20_string
+0x469a mem_soft_version_num
+0x469c mem_module_wake_up_gpio
+0x469d mem_module_state_gpio
+0x469e mem_module_connect_state_gpio
+0x469f mem_current_packet_length
+0x46a1 mem_module_state
+0x46a2 mem_module_mcu_wake_pin
+0x46a3 mem_module_mcu_wake_delay_us
+0x46a7 mem_module_spp_lpm_mult
+0x46a8 mem_module_le_lpm_mult
+0x46a9 mem_module_bluetooth_stauts_by_command
+0x46aa mem_module_uart_rx_buffer
+0x46ac mem_module_uart_rx_buffer_end
+0x46ae mem_module_uart_tx_buffer
+0x46b0 mem_module_uart_tx_buffer_end
+0x46b2 mem_module_read_vdd_flag
+0x46b3 mem_module_read_vdd_count
+0x46b4 mem_module_vdd_quotient
+0x46b5 mem_module_vdd_remainder
+0x46b6 mem_module_le_rx_data_len
+0x46b7 mem_module_le_rx_data_address
+0x46b9 mem_module_le_rx_data_handle
+0x46bb mem_module_data_write_handle
+0x46bd mem_module_data_write_handle2
+0x46bf mem_module_flag
+0x46c0 mem_module_hci_notify_len
+0x46c1 mem_module_hci_notify_handle
+0x46c3 mem_module_hci_nofiy_addr
+0x46c5 mem_last_transmite_clock
+0x46c9 mem_module_uuid_list
+0x47f5 mem_module_uuid_list_end
+0x47f5 mem_module_le_att_list
+0x4a4d mem_module_le_att_list_end
+0x4a4d mem_module_nv_data
+0x4a4d mem_module_nv_data0
+0x4a6f mem_module_nv_data1
+0x4a91 mem_module_nv_data2
+0x4ab3 mem_module_nv_data3
+0x4ad5 mem_module_nv_data4
+0x469a mem_remote_car_hard_soft_switch
+0x469b mem_remote_car_queue_each_size
+0x469c mem_remote_car_queue_length
+0x469d mem_remote_car_queue_curr_num
+0x469e mem_remote_car_queue_read_ptr
+0x469f mem_remote_car_queue_write_ptr
+0x46a0 mem_remote_car_queue_ele
+0x46fa mem_remote_style_led_type
+0x46fb mem_remote_style_blink_count
+0x46fc mem_remote_style_struct_led_gpio
+0x46fd mem_remote_style_on_time
+0x46ff mem_remote_style_off_time
+0x4701 mem_remote_style_cb_ledon
+0x4703 mem_remote_style_cb_ledoff
+0x4705 mem_remote_car_led_num
+0x4706 mem_remote_car_led_map
+0x470e mem_remote_car_keyscan
+0x470e mem_remote_car_key_num
+0x470f mem_cb_remote_car_keyscan
+0x4711 mem_remote_car_key_conf0
+0x4711 mem_remote_car_key_conf0_pin
+0x4712 mem_remote_car_key_conf1
+0x4712 mem_remote_car_key_conf1_pin
+0x4713 mem_remote_car_key_conf2
+0x4713 mem_remote_car_key_conf2_pin
+0x4714 mem_remote_car_key_conf3
+0x4714 mem_remote_car_key_conf3_pin
+0x4715 mem_remote_car_key_conf4
+0x4715 mem_remote_car_key_conf4_pin
+0x4716 mem_remote_car_key_conf5
+0x4716 mem_remote_car_key_conf5_pin
+0x4717 mem_remote_car_key_conf6
+0x4717 mem_remote_car_key_conf6_pin
+0x4718 mem_rocker_negative_flag
+0x4719 mem_rocker_work_status
+0x471a mem_current_vdd_value_default_mid_x
+0x471c mem_current_vdd_value_default_mid_y
+0x471e mem_current_vdd_value_default_mid_temp
+0x4720 mem_current_vdd_default_range
+0x4722 mem_rocker_last_status
+0x4724 mem_rocker_status
+0x4724 mem_rocker_x_status
+0x4725 mem_rocker_y_status
+0x4726 mem_remote_car_config_param
+0x4726 mem_remote_car_config_setting_flag
+0x4727 mem_remote_car_config_key_map
+0x4728 mem_remote_car_config_layout
+0x4729 mem_remote_car_config_connect_led_gpio
+0x472a mem_remote_car_config_check_way
+0x472b mem_remote_car_config_soft_switch_enable
+0x472c mem_remote_car_config_soft_switch_gpio
+0x472d mem_remote_car_config_timeout_shutdown_enable
+0x472e mem_remote_car_24g_motor_packet
+0x472e mem_remote_car_24g_motor_packet_lenght
+0x472f mem_remote_car_24g_motor_send_packet_head
+0x4731 mem_remote_car_24g_motor_send_cmd
+0x4732 mem_remote_car_24g_motor_send_length
+0x4734 mem_remote_car_24g_motor_send_payload
+0x4734 mem_remote_car_24g_motor1_payload
+0x4736 mem_remote_car_24g_motor2_payload
+0x4738 mem_remote_car_24g_motor3_payload
+0x473a mem_remote_car_24g_motor_send_checksum
+0x473b mem_remote_car_24g_fire_packet
+0x473b mem_remote_car_24g_fire_packet_lenght
+0x473c mem_remote_car_24g_fire_send_packet_head
+0x473e mem_remote_car_24g_fire_send_cmd
+0x473f mem_remote_car_24g_fire_send_length
+0x4741 mem_remote_car_24g_fire_send_payload
+0x4743 mem_remote_car_24g_fire_send_checksum
+0x4744 mem_remote_car_24g_tx_temp
+0x4753 mem_remote_car_no_data_timeout
+0x4755 mem_remote_car_no_data_timer
+0x4757 mem_remote_car_soft_power
+0x4757 mem_remote_car_power_state
+0x4758 mem_remote_car_power_timer
+0x4759 mem_remote_car_power_off_timeout
+0x475a mem_remote_car_power_starting_timeout
+0x475b mem_remote_car_power_off_cb
+0x475d mem_remote_car_power_starting_cb
+0x475f mem_remote_car_power_standby_cb
+0x4761 mem_remote_key_status
+0x4762 mem_remote_car_24g_status
+0x4763 mem_remote_car_24g_auto_work_step
+0x4764 mem_remote_car_24g_pair_success_flag
+0x4765 mem_remote_car_24g_enter_lpm_enable
+0x4766 mem_remote_car_empty_packet
+0x4767 mem_24g_RC_head_ptr
+0x469a mem_shutter_bluetooth_type
+0x469b mem_shutter_config_enable
+0x469c mem_shutter_config_otp_base_address
+0x469e mem_shutter_config_size
+0x469f mem_shutter_config_select_gpio1
+0x46a0 mem_shutter_config_select_gpio2
+0x46a1 mem_shutter_config_select_gpio3
+0x46a2 mem_shutter_config_user_otp_address
+0x46a4 mem_shutter_config_eeprom_offset_addr
+0x46a6 mem_shutter_config_eeprom_start_flag
+0x46a8 mem_shutter_config_user_size
+0x46a9 mem_shutter_config_label
+0x46aa mem_shutter_config_otp_addr
+0x46ac mem_classic_shutter_cable_unplug_conut
+0x46ad mem_classic_shutter_hid_disconn_count
+0x46ae mem_classic_shutter_random_mac_offset_addr
+0x46b0 mem_ble_shutter_enable_notify
+0x46b1 mem_ble_shutter_reconn_dav_interval
+0x46b3 mem_ble_shutter_discovery_adv_interval
+0x46b5 mem_ble_shutter_reconn_timeout
+0x46b7 mem_ble_shutter_reconn_timer
+0x46b9 mem_ble_shutter_reconn_blink_on_time
+0x46bb mem_ble_shutter_reconn_blink_off_time
+0x46bd mem_ble_shutter_discovery_blink_on_time
+0x46bf mem_ble_shutter_discovery_blink_off_time
+0x46c1 mem_ble_shutter_interval_min
+0x46c3 mem_ble_shutter_interval_max
+0x46c5 mem_ble_shutter_latency
+0x46c7 mem_ble_shutter_timeout
+0x46c9 mem_ble_shutter_interval_min_new
+0x46cb mem_ble_shutter_interval_max_new
+0x46cd mem_ble_shutter_latency_new
+0x46cf mem_ble_shutter_timeout_new
+0x46d1 mem_classic_shutter_discovery_timeout
+0x46d3 mem_classic_shutter_connect_timeout
+0x46d5 mem_ble_shutter_discovery_timeout
+0x46d7 mem_ble_shutter_connect_timeout
+0x46d9 mem_shutter_sleep_timeout
+0x46db mem_shutter_sleep_timer
+0x46dd mem_shutter_hard_soft_switch_case
+0x46de mem_shutter_soft_switch_button_gpio
+0x46df mem_shutter_soft_switch_power_state
+0x46e0 mem_shutter_soft_switch_poweron_time
+0x46e1 mem_shutter_soft_switch_poweroff_time
+0x46e2 mem_shutter_soft_switch_poweron_callback_function
+0x46e4 mem_shutter_soft_switch_poweroff_callback_function
+0x46e6 mem_shutter_keyscan
+0x46e6 mem_shutter_key_num
+0x46e7 mem_cb_shutter_keycan
+0x46e9 mem_shutter_key_conf0
+0x46ea mem_shutter_key_conf1
+0x46eb mem_shutter_key_conf2
+0x46ec mem_shutter_key_conf3
+0x46ed mem_shutter_key_conf4
+0x46ee mem_shutter_key_conf5
+0x46ef mem_shutter_key_conf6
+0x46f0 mem_shutter_key_conf7
+0x46f1 mem_key0_press
+0x46f6 mem_key1_press
+0x46fb mem_key2_press
+0x4700 mem_key3_press
+0x4705 mem_key4_press
+0x470a mem_key5_press
+0x470f mem_key6_press
+0x4714 mem_key7_press
+0x4719 mem_key0_release
+0x471e mem_key1_release
+0x4723 mem_key2_release
+0x4728 mem_key3_release
+0x472d mem_key4_release
+0x4732 mem_key5_release
+0x4737 mem_key6_release
+0x473c mem_key7_release
+0x4741 mem_ble_data_buffer1
+0x4746 mem_ble_data_buffer2
+0x474b mem_ble_data_buffer3
+0x4750 mem_ble_data_buffer4
+0x4755 mem_ble_data_buffer5
+0x475a mem_ble_data_buffer6
+0x475f mem_ble_data_buffer7
+0x4764 mem_ble_data_buffer8
+0x4769 mem_ble_data_buffer9_58
+0x479b mem_classic_data_buffer
+0x47a0 mem_classic_data_buffer1
+0x47a5 mem_classic_data_buffer2
+0x47aa mem_classic_data_buffer3
+0x47af mem_classic_data_buffer4
+0x47b4 mem_classic_data_buffer5
+0x47b9 mem_classic_data_buffer6
+0x47be mem_classic_data_buffer7
+0x47c3 mem_classic_data_buffer8
+0x47c8 mem_classic_data_buffer9_58
+0x47fa mem_queue_each_size
+0x47fb mem_queue_length
+0x47fc mem_queue_curr_num
+0x47fd mem_queue_read_ptr
+0x47fe mem_queue_write_ptr
+0x47ff mem_queue_ele
+0x481f mem_shutter_nv_data
+0x48c9 mem_shutter_led_struct_app_led
+0x48c9 mem_shutter_led_struct_app_led_type
+0x48ca mem_shutter_led_struct_app_led_blink_count
+0x48cb mem_shutter_led_struct_app_led_gpio
+0x48cc mem_shutter_led_struct_app_led_on_time
+0x48ce mem_shutter_led_struct_app_led_off_time
+0x48d0 mem_shutter_led_struct_app_led_on_callback
+0x48d2 mem_shutter_led_struct_app_led_off_callback
+0x48d4 mem_shutter_power_off_led_style
+0x48d4 mem_shutter_power_off_led_style_type
+0x48d5 mem_shutter_power_off_led_style_blink_count
+0x48d6 mem_shutter_power_off_led_style_gpio
+0x48d7 mem_shutter_power_off_led_style_on_time
+0x48d9 mem_shutter_power_off_led_style_off_time
+0x48db mem_shutter_power_off_led_style_on_callback
+0x48dd mem_shutter_power_off_led_style_off_callback
+0x48df mem_shutter_soft_swtich_botton_down
+0x48e0 mem_shutter_soft_swtich_led_struct_temp
+0x48eb mem_shutter_power_off_timeout
+0x48ec mem_shutter_power_off_timer
+0x469a mem_mouse_key
+0x469b mem_mouse_x
+0x469d mem_mouse_y
+0x469f mem_mouse_z
+0x46a0 mem_mouse_tz
+0x46a1 mem_mouse_xy_h
+0x46a2 mem_sensor_shutter_hi
+0x46a3 mem_sensor_shutter_lo
+0x46a4 mem_sensor_smart_flag
+0x46a5 mem_sensor_squal_reg
+0x46a6 mem_sensor_iqc
+0x46a7 mem_mouse_move_flag
+0x46a8 mem_mouse_direct_timeout
+0x46aa mem_mouse_no_data_timeout
+0x46ac mem_mouse_discovery_timer
+0x46ae mem_mouse_direct_timer
+0x46b0 mem_mouse_no_data_timer
+0x46b2 mem_mouse_blank_data_timer
+0x46b4 mem_mouse_send_blank_timer
+0x46b5 mem_mouse_cpi_count
+0x46b6 mem_mouse_dpi_button_state
+0x46b7 mem_wheel_tb_old_pinlevel
+0x46b8 mem_wheel_tb_new_pinlevel
+0x46b9 mem_wheel_tog
+0x46ba mem_mouse_tz_data
+0x46bb mem_mouse_tz_data_count
+0x46bc mem_mouse_tz_data_count1
+0x46bd mem_mwheel_b_old_pinlevel
+0x46be mem_mwheel_b_new_pinlevel
+0x46bf mem_mwheel_tog
+0x46c0 mem_mouse_z_data
+0x46c1 mem_mouse_z_data_count
+0x46c2 mem_mouse_z_data_count1
+0x46c3 mem_reconn_mode
+0x46c4 mem_mouse_statue_led_timer
+0x46c5 mem_le_connect_status_flag
+0x46c6 mem_le_start_encrypt_timer
+0x46c7 mem_device_addr_temp
+0x46ce mem_adc_read_timer
+0x46cf mem_adc_low_volatage_led_timer_count
+0x46d0 mem_adc_reference_voltage
+0x46d2 mem_device_number
+0x46d3 mem_mouse_flag
+0x46d5 mem_mouse_function_enable
+0x46d7 mem_combination_select_device_timer_init
+0x46d8 mem_combination_select_device_count
+0x46d9 mem_select_device_button_statue
+0x46da mem_combination_ui_button_count
+0x46db mem_bt_discovey_button_statue
+0x46dc mem_sensor_reset_gpio
+0x46dd mem_sensor_id1
+0x46de mem_sensor_id2
+0x46df mem_mouse_dpi_led_delay_count
+0x46e0 mem_config_sensor_type
+0x46e1 mem_config_sensor_motion
+0x46e2 mem_lbutton_gpio
+0x46e3 mem_rbutton_gpio
+0x46e4 mem_mbutton_gpio
+0x46e5 mem_bk_button_gpio
+0x46e6 mem_fw_button_gpio
+0x46e7 mem_dpi_button_gpio
+0x46e8 mem_whee_a_data_gpio
+0x46e9 mem_whee_b_data_gpio
+0x46ea mem_whee_ta_data_gpio
+0x46eb mem_whee_tb_data_gpio
+0x46ec mem_config_bt_button_gpio
+0x46ed mem_config_select_device_button_gpio
+0x46ee mem_config_paraing_led_gpio
+0x46ef mem_config_low_voltage_alarm_gpio
+0x46f0 mem_config_device1_led_gpio
+0x46f1 mem_config_device2_led_gpio
+0x46f2 mem_config_device3_led_gpio
+0x46f3 mem_sensor_data_gpio
+0x46f4 mem_dpi_led_gpio
+0x46f5 mem_config_function_enable
+0x46f6 mem_config_sensor_angle
+0x46f7 mem_select_sensor_angle_gpio
+0x46f8 mem_select_adc_gpio
+0x46f9 mem_config_end
+0x46f9 mem_btclk_sensor
+0x46fd mem_wire_usb_interval
+0x46fe mem_mouse_mode_flag
+0x46ff mem_usb_addr
+0x4700 mem_flash_base
+0x4703 mem_24g_device_number
+0x4704 mem_24g_enter_lpm_timer
+0x4705 mem_mouse_1step_up_count
+0x4706 mem_mouse_2step_up_count
+0x4707 mem_24g_pairing_timer_count
+0x4709 mem_mouse_vdd_calculate_set
+0x4709 mem_mouse_vdd_full_vol
+0x470b mem_mouse_vdd_empty_vol
+0x470d mem_mouse_vdd_low_vol
+0x470f mem_mouse_vdd_now_vol
+0x4711 mem_mouse_sensor_timer_count
+0x4712 mem_sensor_led_style
+0x4713 mem_mouse_led_type
+0x4714 mem_mouse_blink_count
+0x4715 mem_mouse_struct_led_gpio
+0x4716 mem_mouse_on_time
+0x4718 mem_mouse_off_time
+0x471a mem_mouse_cb_ledon
+0x471c mem_mouse_cb_ledoff
+0x471e mem_reconn_times
+0x471f mem_reconn_times_init
+0x4720 mem_mouse_information_start
+0x4720 mem_device_flag
+0x4721 mem_device1_type
+0x4722 mem_device1_addr
+0x4728 mem_device1_link_key
+0x4738 mem_device1_locall_addr
+0x473e mem_device2_type
+0x473f mem_device2_addr
+0x4745 mem_device2_link_key
+0x4755 mem_device2_locall_addr
+0x475b mem_device3_type
+0x475c mem_device3_addr
+0x4762 mem_device3_link_key
+0x4772 mem_device3_locall_addr
+0x4778 mem_store_flag
+0x477a mem_mouse_dpi
+0x477b mem_mouse_24g_addr
+0x477f mem_mouse_information_end
+0x477f mem_mouse_dpi_seting
+0x477f mem_320x_dpi_1
+0x4780 mem_320x_dpi_2
+0x4781 mem_320x_dpi_3
+0x4782 mem_320x_dpi_4
+0x4783 mem_3212_dpi_1
+0x4784 mem_3212_dpi_2
+0x4785 mem_3212_dpi_3
+0x4786 mem_3212_dpi_4
+0x4787 mem_3610_dpi_1
+0x4788 mem_3610_dpi_2
+0x4789 mem_3610_dpi_3
+0x478a mem_3610_dpi_4
+0x478b mem_mouse_24g_enter_lpm_enable
+0x478c mem_le_rx_window_inc
+0x478e mem_empty_count
+0x478f mem_rf_init_data_new
+0x479e mem_mouse_clear_sensor_data_flag
+0x479f mem_mouse_null_enter_hibernate_flag
+0x47a0 mem_mouse_null_enter_hibernate_timer
+0x47a1 mem_mouse_le_reconnect_flag
+0x47a2 mem_mouse_data_queue
+0x47c3 mem_mouse_data_queue_num
+0x47c4 mem_random_addr_increase_count
+0x47c6 mem_mouse_le_conn_param_reject
+0x47c7 mem_lpm_mult_init
+0x47c8 mem_mouse_le_uuid_sup
+0x49e1 mem_mouse_wheel_trigger
+0x49e2 mem_mouse_wheel_trigger_timer
+0x49e3 mem_mouse_enter_sniff_count
+0x49e4 mem_mouse_send_switch_req_timer
+0x49e5 mem_le_tx_buffer0_omemalloc
+0x4a00 mem_le_tx_buffer1_omemalloc
+0x4a1b mem_le_tx_buffer2_omemalloc
+0x4a36 mem_le_tx_buffer3_omemalloc
+0x4a51 mem_mouse_uuid_list
+0x4cd7 mem_lmi_opcode_temp
+0x4cd8 mem_mouse_adc_last_low_voltage_flag
+0x4cd9 mem_mouse_init_sensor_reset_flag
+0x4cda mem_bt_rcvd_switch_req_accept
+0x4cdb mem_bt_send_max_slot_req_accept_after_switch
+0x4cdc mem_bt_send_lmp_setup_complete
+0x4cdd mem_l2cap_rcv
+0x4cde mem_mouse_bt_boot_mode
+0x4cdf mem_mouse_bt_boot_data
+0x4ce4 mem_mouse_bt_send_first_package_timer
+0x4ce5 mem_mouse_bt_send_first_package_flag
+0x4ce6 mem_mouse_asm_flag
+0x4ce7 mem_mouse_x_pre
+0x4ce9 mem_mouse_y_pre
+0x4ceb mem_le_adv_swift_pair
+0x4cff mem_mouse_multi_led_blink_enable
+0x4d00 mem_mouse_multi_led_gpio
+0x4d01 mem_mouse_multi_led_state
+0x4d02 mem_mouse_multi_led_type
+0x4d03 mem_mouse_multi_led_on_timer_init
+0x4d04 mem_mouse_multi_led_blink_timer_init
+0x4d05 mem_mouse_multi_led_blink_timer
+0x4d06 mem_mouse_multi_led_blink_count
+0x4d07 mem_mouse_multi_led_on_timer
+0x4d08 mem_mouse_multi_led_blink_count_limited
+0x4d09 mem_mouse_multi_led_on_poweron2s_flag
+0x4d0a mem_discovery_on_flag
+0x4d0b mem_bt_ui_button_timeout
+0x4d0c mem_bt_ui_button_count
+0x4d0d mem_mouse_priority_bb_event
+0x4d0e mem_mouse_le_parse_l2cap_ptr
+0x4d10 mem_low_power_no_data_off_led_time
+0x4d11 mem_low_power_check_count
+0x4d12 mem_low_power_led_blink_flag
+0x4d13 mem_mouse_3065xy_dpi_seting
+0x4d13 mem_3065xy_dpi_1
+0x4d14 mem_3065xy_dpi_2
+0x4d15 mem_3065xy_dpi_3
+0x4d16 mem_3065xy_dpi_4
+0x4d17 mem_flash_ncs_gpio
+0x4d18 mem_select_ui_button_count
+0x4d19 mem_write_flash_head_temp
+0x4d1d mem_mouse_poweron_led_timer
+0x4d1e mem_mouse_24g_addr_init
+0x4d24 mem_24g_attempt_count
+0x4d26 mem_mouse_24g_pair_timer
+0x4d27 mem_zcode_current_number
+0x4d28 mem_xip_flash_offset
+0x4d2b mem_flash_start_addr
+0x4d2e mem_flash_address
+0x4d31 mem_zcode_head
+0x4d35 mem_mouse_long_mult_flag
+0x4d36 mem_mouse_le_current_mult_timer
+0x4d37 mem_24g_long_sleep_param_update_timer
+0x4d38 mem_mouse_bt_led_gpio
+0x4d39 mem_mouse_button_select_device_timer_init
+0x4d3a mem_mouse_button_select_device_count
+0x4d3b mem_mouse_multi_led_on_timer_init1
+0x4d3c mem_mouse_24g_attempt_success_flag
+0x4d3d mem_mouse_le_bb_connected_flag
+0x4d3e mem_mouse_fast_conn_flag
+0x4d3f mem_le_lap_high_3B
+0x4d42 mem_mouse_le_fast_conn_enable_timer
+0x4d43 mem_mouse_delay_discovery_count
+0x4d44 mem_mouse_send_secutiry_request_timer
+0x4d45 mem_le_send_security_request_flag
+0x4d46 mem_mouse_long_button_select_device
+0x4d47 mem_mouse_select_device_button_wakeup_flag
+0x4d48 mem_mouse_le_updata_not_accepted_flag
+0x4d49 mem_sensor_8650_init
+0x4d62 mem_sensor_ka8_init
+0x4d6f mem_sensor_poweron_init
+0x4d78 mem_sensor_8009_init
+0x4d87 mem_customer_key
+0x4d88 mem_customer_key_press
+0x4d91 mem_customer_key_release
+0x4d9a mem_customer_data_trigger
+0x4d9b mem_customer_data_trigger_last
+0x4d9c mem_keyboard_hid_descriptor
+0x4de2 mem_sdp_updata_list
+0x4dee mem_mouse_lkey_press_status
+0x4def mem_mouse_rkey_press_status
+0x4df0 mem_mouse_mkey_press_status
+0x4df1 mem_mouse_bkkey_press_status
+0x4df2 mem_mouse_fwkey_press_status
+0x4df3 mem_mouse_dpikey_press_status
+0x4df4 mem_mouse_pbkey_press_status
+0x4df5 mem_mouse_key_temp
+0x4df6 mem_mouse_key_status
+0x4df7 mem_mouse_fast_conn_addr
+0x4dfd mem_24g_rxbuf
+0x4e1f mem_24g_txbuf
+0x4e3f mem_24g_txpayload
+0x4e61 mem_24g_rxpayload
+0x4e81 mem_24g_rxdata_length
+0x4e82 mem_24g_pid
+0x4e83 mem_24g_datalen
+0x4e84 mem_24g_data_type
+0x4e85 mem_24g_txlen
+0x4e86 mem_24g_rx_window
+0x4e88 mem_24g_ensure
+0x4e89 mem_24g_txfail_cnt
+0x4e8b mem_24g_get_ack_fail
+0x4e8c mem_24g_retry
+0x4e8d mem_24g_ch
+0x4e8e mem_24g_current_ch_number
+0x4e8f mem_24g_paring_addr
+0x4e93 mem_24g_pairing_sm
+0x4e94 mem_24g_ch_map1
+0x4e98 mem_24g_ch_map2
+0x4e9c mem_24g_ch_map3
+0x4ea0 mem_24g_ch_map4
+0x4ea4 mem_24g_tx_btclk
+0x4ea8 mem_24g_interval
+0x4ea9 mem_24g_interval_min
+0x4eaa mem_24g_interval_max
+0x4eab mem_24g_addr
+0x4eaf mem_24g_abort_pac
+0x4eb0 mem_24g_check_dongle_times
+0x4eb2 mem_24g_enter_hibernate
+0x4eba mem_24g_device_addr
+0x4ebe mem_24g_pac_index
+0x4ebf mem_24g_no_ack
+0x4ec0 mem_24g_sta_crc
+0x4ec3 mem_24g_last_crc
+0x4ec6 mem_24g_sta_pid
+0x4ec7 mem_24g_last_pid
+0x4ec8 mem_24g_max_retry
+0x4ec9 mem_24g_mode
+0x4eca mem_24g_rxdata_temp
+0x4eec mem_24g_rx_addr
+0x4ef0 mem_dongle_mode_init
+0x4ef1 mem_dongle_work_mode
+0x4ef2 mem_dongle_ms_bind_step
+0x4ef3 mem_dongle_kb_bind_step
+0x4ef4 mem_dongle_bind_device_status
+0x4ef5 mem_24g_bind_payload
+0x4efd mem_24g_abort_packet
+0x4efe mem_24g_rf_laststa
+0x4eff mem_24g_hop_btclk
+0x4f03 mem_24g_hop_interval
+0x4f04 mem_24g_mode_switch
+0x4f05 mem_24g_ackpayload_enable
+0x4f06 mem_24g_hop_packet
+0x4f07 mem_24g_pair_mode
+0x4f08 mem_24g_nodata_timer_enable
+0x4f09 mem_24g_time_slice
+0x4f0a mem_24g_kb_data_sta_data
+0x4f12 mem_24g_kb_data_last_data
+0x4f1a mem_24g_kb_multikey_sta_data
+0x4f1d mem_24g_kb_multikey_last_data
+0x4f20 mem_24g_kb_blank_data_enable
+0x4f21 mem_24g_kb_mul_blank_data_enable
+0x4f22 mem_24g_ms_blank_data_enable
+0x4f23 mem_24g_kb_addr
+0x4f27 mem_24g_ms_addr
+0x4f2b mem_24g_dg_last_ch
+0x4f2c mem_24g_dg_ch_number
+0x4f2d mem_24g_dg_config_ch_once
+0x4f2e mem_24g_kb_last_ch
+0x4f2f mem_24g_kb_ch_number
+0x4f30 mem_24g_kb_config_ch_once
+0x4f31 mem_24g_ms_last_ch
+0x4f32 mem_24g_ms_ch_number
+0x4f33 mem_24g_ms_config_ch_once
+0x4f34 mem_24g_syncword
+0x4f36 mem_24g_syncword_crc8
+0x4f37 mem_24g_get_syncword_crc8
+0x4f38 mem_24g_ota_sta_pid
+0x4f3a mem_tx_power_temp
+0x4f3b mem_rssi_hex
+0x4f3c mem_rssi_noise_avg
+0x4f3d mem_rssi_noise_index
+0x4f3e mem_rssi_signal_index
+0x4f3f mem_rssi_noise_dg_avg
+0x4f40 mem_rssi_noise_kb_avg
+0x4f41 mem_rssi_noise_ms_avg
+0x4f42 mem_rssi_noise_dg_index
+0x4f43 mem_rssi_noise_kb_index
+0x4f44 mem_rssi_noise_ms_index
+0x4f45 mem_rssi_signal_buf
+0x4f4d mem_queue_ele_num
+0x4f4e mem_queue_read
+0x4f50 mem_queue_write
+0x4f52 mem_queue_start
+0x4f52 mem_data_ele0
+0x4f72 mem_data_ele1
+0x4f92 mem_data_ele2
+0x4fb2 mem_queue_end
+0x4fb2 mem_queue_temp
+0x4fb4 mem_cb_24g_data
+0x4fb6 mem_24g_hop_fastly_cnt
+0x4fb7 mem_24g_hop_pac_retry
+0x4fb8 mem_24g_rf_hop_ch
+0x4fb9 mem_24g_rf_last_sta
+0x4fba mem_24g_rf_work_stage
+0x4fbb mem_24g_sync_cnt
+0x4fbc mem_power_ctrl_pac_succ_cnt
+0x4fbd mem_rssi_avg_received
+0x4fbe mem_rssi_hex_received
+0x4fbf mem_power_ctrl_level
+0x4fc0 mem_seqi
+0x4fc1 mem_24g_auto_paring_switch
+0x4fc2 mem_24g_paccnt
+0x4fc3 mem_24g_transmit_by_interrupt
+0x4fc4 mem_24g_transmit_by_interrupt_exit_count
+0x4fc6 mem_24g_transmit_by_interrupt_exit_count_init
+0x4fc8 mem_24g_allpowerful_addr
+0x4fce mem_24g_stop_g24_mode
+0x4fcf mem_24g_stop_g24_mode_timeout
+0x4fd1 mem_24g_stop_g24_pair_mode_timerout
+0x4fd3 mem_24g_pair_current_ch_num
+0x4fd4 mem_24g_powerful_current_ch_num
+0x4fd5 mem_24g_search_dongle_action
+0x4fd6 mem_24g_search_dongle_count
+0x4fd7 mem_24g_search_dongle_ch
+0x4fd8 mem_24g_search_dongle_wait
+0x4fd9 mem_24g_conn_sm
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/otp.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/otp.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/otp.dat	(working copy)
@@ -0,0 +1,8 @@
+00
+02
+aa
+55
+00
+00
+b3
+23
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/program.lis
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/program.lis	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/program.lis	(working copy)
@@ -0,0 +1,36306 @@
+include "bt_format "
+org 0x0000
+
+p_start:
+0000 20200040 branch p_patch_array 
+
+p_zcode:
+
+p_wake_from_power:
+0001 2040036f call p_mouse_data_init 
+0002 6800c1de fetch 1 ,mem_tx_power 
+0003 6000cf3a store 1 ,mem_tx_power_temp 
+0004 20400713 call power_ctrl_pac_succ_cnt_init 
+0005 6800c685 fetch 1 ,mem_ui_button_timeout 
+0006 6000c6da store 1 ,mem_combination_ui_button_count 
+0007 6800cd0b fetch 1 ,mem_bt_ui_button_timeout 
+0008 6000cd0c store 1 ,mem_bt_ui_button_count 
+0009 204043ca call mouse_bt_discovery_button_down_disable 
+000a 204003eb call p_mouse_spi_init 
+000b 204007a4 call p_drawing_optima_init 
+000c 20400011 call p_mouse_cb_fuction 
+000d 20400024 call p_mouse_wakeup_from_power 
+000e 2040006c call p_mouse_select_device_button_wakeup_check 
+
+p_mouse_setting_config:
+000f 7011c780 jam zcode_80 ,mem_zcode_temp_param0 
+0010 2020077a branch p_zcode_entrance 
+
+p_mouse_cb_fuction:
+0011 58000327 setarg p_mouse_g24_package_data 
+0012 60014fb4 store 2 ,mem_cb_24g_data 
+0013 58000341 setarg p_mouse_le 
+0014 600141ef store 2 ,mem_cb_le_process 
+0015 5800064b setarg p_le_mouse_bb_event_connect_complete 
+0016 600141f9 store 2 ,mem_cb_att_write 
+0017 58000392 setarg p_mouse_bt 
+0018 600141f1 store 2 ,mem_cb_bt_process 
+0019 5800028a setarg p_mouse_before_lpm 
+001a 600141ed store 2 ,mem_cb_before_lpm 
+001b 580003ed setarg p_mouse_priority_bb_event 
+001c 600141f5 store 2 ,mem_cb_bb_event_process 
+001d 580003c8 setarg p_mouse_idle 
+001e 600141f3 store 2 ,mem_cb_idle_process 
+001f 58000427 setarg p_mouse_before_hibernate 
+0020 600141eb store 2 ,mem_cb_before_hibernate 
+0021 58000434 setarg p_mouse_bb_event_timer 
+0022 600141fd store 2 ,mem_cb_event_timer 
+0023 20600000 rtn 
+
+p_mouse_wakeup_from_power:
+0024 58000019 setarg 25 
+0025 60014fc6 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0026 2455802b ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
+0027 2040042d call p_mouse_sensor_powerdown 
+
+p_mouse_wakeup_no_from_power:
+0028 6800c71f fetch 1 ,mem_reconn_times_init 
+0029 6000c71e store 1 ,mem_reconn_times 
+002a 20600000 rtn 
+
+p_mouse_24g_transmit_by_interrupt_exit_count_max:
+002b 58000177 setarg 375 
+002c 60014fc6 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+002d 20600000 rtn 
+002e 20000001 nop 1 
+002f 20000001 nop 1 
+0030 20000001 nop 1 
+0031 20000001 nop 1 
+0032 20000001 nop 1 
+0033 20000001 nop 1 
+0034 20000001 nop 1 
+0035 20000001 nop 1 
+0036 20000001 nop 1 
+0037 20000001 nop 1 
+0038 20000001 nop 1 
+0039 20000001 nop 1 
+003a 20000001 nop 1 
+003b 20000001 nop 1 
+003c 20000001 nop 1 
+003d 20000001 nop 1 
+003e 20000001 nop 1 
+003f 20000001 nop 1 
+
+p_patch_array:
+0040 c284005a bbit1 8 ,pf_patch_ext 
+0041 c0008074 beq patch00_1 ,p_soft_reset_1 
+0042 c001007d beq patch00_2 ,p_soft_reset_2 
+0043 c0428775 beq patch10_5 ,p_shutdown_radio 
+0044 c0448748 beq patch11_1 ,p_set_freq_tx 
+0045 c0450777 beq patch11_2 ,p_initialize_radio_cont 
+0046 c00d8663 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0047 c0130665 beq patch04_6 ,p_role_switch_master 
+0048 c0240681 beq patch09_0 ,p_quit_connection_cont 
+0049 c0250683 beq patch09_2 ,p_prepare_tx 
+004a c028868c beq patch0a_1 ,p_slave_conn_recv_packet 
+004b c02c867f beq patch0b_1 ,p_process_dmh 
+004c c0538691 beq patch14_7 ,p_lpm_dispatch 
+004d c05686a7 beq patch15_5 ,p_lpm_set_mult 
+004e c065b3e4 beq patch19_3 ,app_bt_start_reconnect + 3 
+004f c07486b8 beq patch1d_1 ,p_mouse_bb_disconnected 
+0050 c0508086 beq patch14_1 ,p_init_param 
+0051 c058808b beq patch16_1 ,p_lpm_check_wake_lock 
+0052 c0590099 beq patch16_2 ,p_g24_dispatch 
+0053 c0620297 beq patch18_4 ,p_device_init 
+0054 c0718514 beq patch1c_3 ,p_mouse_seting_dpi 
+0055 c0730532 beq patch1c_6 ,p_mouse_motion 
+0056 c07505ad beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0057 c07585b1 beq patch1d_3 ,p_mouse_start_discovery 
+0058 c07605be beq patch1d_4 ,p_mouse_stop_discovery 
+0059 20202a8e branch loop 
+
+pf_patch_ext:
+005a c01c85c2 beq patch27_1 ,p_le_slave_match 
+005b c02185ca beq patch28_3 ,p_le_next_adv_channel 
+005c c02505d0 beq patch29_2 ,p_le_receive_skip 
+005d c02b85d3 beq patch2a_7 ,p_le_update_param 
+005e c02c85d5 beq patch2b_1 ,p_le_update_channel_map 
+005f c03185d7 beq patch2c_3 ,p_le_prepare_tx 
+0060 c0330607 beq patch2c_6 ,p_le_parse 
+0061 c0338626 beq patch2c_7 ,p_le_parse_l2cap 
+0062 c0350636 beq patch2d_2 ,p_le_adv_not_match 
+0063 c03b8641 beq patch2e_7 ,p_le_lpm_setmult 
+0064 c00286ba beq patch20_5 ,p_hid_rx_process 
+0065 c04006bc beq patch30_0 ,p_parse_lmp_accepted 
+0066 c04106c6 beq patch30_2 ,p_send_lmp 
+0067 c04406d7 beq patch31_0 ,p_process_conn_sm 
+0068 c046064d beq patch31_4 ,p_twspi_reset 
+0069 c0468659 beq patch31_5 ,p_spid_init 
+006a c07d06fb beq patch3f_2 ,p_check_51cmd_once_continue 
+006b 20202a8e branch loop 
+
+p_mouse_select_device_button_wakeup_check:
+006c 704d4700 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+006d 20400452 call p_mouse_pb_button_check 
+006e 24608000 nrtn true 
+006f 20407ec1 call delay_10ms 
+0070 20400452 call p_mouse_pb_button_check 
+0071 24608000 nrtn true 
+0072 704d4701 jam 1 ,mem_mouse_select_device_button_wakeup_flag 
+0073 20600000 rtn 
+
+p_soft_reset_1:
+0074 d8a009ae arg mem_sp_state ,contw 
+0075 df20000c arg 12 ,loopcnt 
+0076 20407ed4 call clear_mem 
+0077 20400338 call p_mouse_le_txbuff_load 
+0078 20406a03 call rfcomm_init 
+0079 20405cf6 call init_lmp 
+007a 2455ac65 ncall lpm_disable_exen_output ,wake 
+007b 20407ccd call ui_init + 1 
+007c 2020200c branch soft_reset + 11 
+
+p_soft_reset_2:
+007d 2055b2e3 call app_lpm_init ,wake 
+007e 2040756a call publickey_init 
+007f 2055ab41 call lpm_recover_clk ,wake 
+
+p_sp_cal_loop:
+0080 204076dc call sp_calc_sequence 
+0081 6800c65a fetch 1 ,mem_ssp_enable 
+0082 203a2012 branch main_loop ,blank 
+0083 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+0084 203a0080 branch p_sp_cal_loop ,blank 
+0085 20202012 branch main_loop 
+
+p_init_param:
+0086 58000a06 setarg param_le_version 
+0087 6001c510 store 3 ,mem_lmp_version 
+0088 58001d87 setarg param_le_subversion 
+0089 60014513 store 2 ,mem_lmp_version + 3 
+008a 20202aa2 branch init_param + 12 
+
+p_lpm_check_wake_lock:
+008b c6130000 rtnmark1 mark_24g 
+008c 6800cd01 fetch 1 ,mem_mouse_multi_led_state 
+008d 243a7fef nbranch disable_blank ,blank 
+008e 6800cd06 fetch 1 ,mem_mouse_multi_led_blink_count 
+008f 243a7fef nbranch disable_blank ,blank 
+0090 6800c79e fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0091 203a7fef branch disable_blank ,blank 
+0092 6800c7c6 fetch 1 ,mem_mouse_le_conn_param_reject 
+0093 c000ffef beq le_lpm_disable ,disable_blank 
+0094 68014248 fetch 2 ,mem_sdp_remote_cid 
+0095 243a7fef nbranch disable_blank ,blank 
+0096 6800c9e1 fetch 1 ,mem_mouse_wheel_trigger 
+0097 243a7fef nbranch disable_blank ,blank 
+0098 20207ff1 branch enable_blank 
+
+p_g24_dispatch:
+0099 c6930000 rtnmark0 mark_24g 
+009a 6800cfc3 fetch 1 ,mem_24g_transmit_by_interrupt 
+009b c00080ab beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
+
+p_g24_transmit_process:
+009c 2040014c call p_g24_txdata_prep 
+009d 243400ad nbranch p_g24_nodata_transmit ,user 
+009e 20400127 call p_g24_rf_sta_check 
+
+p_g24_transmit_start:
+009f 20400103 call p_g24_transmit_packet 
+00a0 6800ce93 fetch 1 ,mem_24g_pairing_sm 
+00a1 c1ff8000 rtnne state_24g_pairing_success 
+00a2 2040071c call power_ctrl_start 
+00a3 58017700 setarg g24_long_sleep_step1 
+00a4 6001ceb2 store 3 ,mem_24g_enter_hibernate 
+00a5 704d3714 jam 20 ,mem_24g_long_sleep_param_update_timer 
+
+p_g24_short_sleep:
+00a6 204000bb call p_g24_lpm_wait 
+00a7 24740000 nrtn user 
+00a8 20400291 call p_clear_wake 
+00a9 5800f424 setarg 62500 
+00aa 20202b93 branch lpm_dispatch_sleep 
+
+p_g24_transmit_by_interrupt:
+00ab 7011c701 jam zcode_01 ,mem_zcode_temp_param0 
+00ac 2020077a branch p_zcode_entrance 
+
+p_g24_nodata_transmit:
+00ad 6800ceaf fetch 1 ,mem_24g_abort_pac 
+00ae 205a00d9 call p_g24_send_abort_packet ,blank 
+00af 6800cd06 fetch 1 ,mem_mouse_multi_led_blink_count 
+00b0 247a0000 nrtn blank 
+00b1 6800cd01 fetch 1 ,mem_mouse_multi_led_state 
+00b2 c1008000 rtneq on 
+00b3 6800cfc3 fetch 1 ,mem_24g_transmit_by_interrupt 
+00b4 c1008000 rtneq g24_tx_timer_int_enable 
+
+p_g24_long_sleep:
+00b5 204000bb call p_g24_lpm_wait 
+00b6 24740000 nrtn user 
+00b7 6801ceb2 fetch 3 ,mem_24g_enter_hibernate 
+00b8 20407f49 call clk2lpo 
+00b9 600a415b storet 4 ,mem_sleep_counter 
+00ba 20202b2a branch lpm_sleep 
+
+p_g24_lpm_wait:
+00bb 78347c00 enable user 
+00bc 20402afa call lpo_calibration 
+00bd 6801c16f fetch 3 ,mem_clks_per_lpo 
+00be 203a7fe9 branch disable_user ,blank 
+00bf 6800c091 fetch 1 ,mem_lpm_mode 
+00c0 203a7fe9 branch disable_user ,blank 
+00c1 6800cfc3 fetch 1 ,mem_24g_transmit_by_interrupt 
+00c2 c000ffe9 beq g24_tx_timer_int_enable ,disable_user 
+
+p_mouse_setgpio_lpm:
+00c3 20400294 call p_mouse_set_sdio_high 
+00c4 20400291 call p_clear_wake 
+
+p_mouse_setgpio_hibernate:
+00c5 20403ebf call mouse_lpm_before_common 
+00c6 6808cd17 fetcht 1 ,mem_flash_ncs_gpio 
+00c7 20406825 call gpio_out_inactive 
+00c8 68120070 hfetch 4 ,core_gpio_oe0 
+00c9 681a0078 hfetcht 4 ,core_gpio_pu0 
+00ca 98418400 ior temp ,temp 
+00cb 18440400 invert temp ,temp 
+00cc 601a007c hstoret 4 ,core_gpio_pd0 
+00cd 6810807d hfetch 1 ,core_gpio_pd1 
+00ce 793ffe02 set0 2 ,pdata 
+00cf 6010807d hstore 1 ,core_gpio_pd1 
+00d0 6810807e hfetch 1 ,core_gpio_pd2 
+00d1 793ffe06 set0 6 ,pdata 
+00d2 6010807e hstore 1 ,core_gpio_pd2 
+00d3 6810807f hfetch 1 ,core_gpio_pd3 
+00d4 793ffe03 set0 3 ,pdata 
+00d5 6010807f hstore 1 ,core_gpio_pd3 
+
+p_mouse_multi_led_gpio_set_float:
+00d6 6808cd00 fetcht 1 ,mem_mouse_multi_led_gpio 
+00d7 793f8407 set0 gpio_active_bit ,temp 
+00d8 20206806 branch gpio_set_high_impedance 
+
+p_g24_send_abort_packet:
+00d9 704e8401 jam type_ms ,mem_24g_data_type 
+00da 704eaf01 jam 1 ,mem_24g_abort_pac 
+00db 704fb800 jam 0 ,mem_24g_rf_hop_ch 
+00dc 204000ea call p_g24_transmit_rf_ctrl_clear 
+00dd 6000ce1f store 1 ,mem_24g_txbuf 
+00de 58000000 setarg 0 
+00df 6003ce20 store 7 ,mem_24g_txbuf + 1 
+00e0 68024eba fetch 4 ,mem_24g_device_addr 
+00e1 60024e27 store 4 ,mem_24g_txbuf + 8 
+00e2 704e830c jam 12 ,mem_24g_datalen 
+00e3 6800ce84 fetch 1 ,mem_24g_data_type 
+00e4 79207e03 set1 bit_abort ,pdata 
+00e5 6000ce84 store 1 ,mem_24g_data_type 
+00e6 2040014f call p_g24_txdata_enable_tx 
+00e7 2020009f branch p_g24_transmit_start 
+
+p_g24_transmit_rf_sta_init:
+00e8 704fb901 jam 1 ,mem_24g_rf_last_sta 
+00e9 704fbb00 jam 0 ,mem_24g_sync_cnt 
+
+p_g24_transmit_rf_ctrl_clear:
+00ea 6800ce84 fetch 1 ,mem_24g_data_type 
+00eb 1fe17e07 and_into bits_data ,pdata 
+00ec 6000ce84 store 1 ,mem_24g_data_type 
+00ed 20600000 rtn 
+
+p_g24_hop_ch_enable:
+00ee 6800ce84 fetch 1 ,mem_24g_data_type 
+00ef 79207e04 set1 bit_hop ,pdata 
+00f0 6000ce84 store 1 ,mem_24g_data_type 
+00f1 6000ce3f store 1 ,mem_24g_txpayload 
+00f2 20600000 rtn 
+
+p_g24_hop_enable_packet:
+00f3 6800ce84 fetch 1 ,mem_24g_data_type 
+00f4 c4020000 rtnbit0 bit_hop 
+
+p_g24_hop_ch_disable:
+00f5 6800ce84 fetch 1 ,mem_24g_data_type 
+00f6 793ffe04 set0 bit_hop ,pdata 
+00f7 6000ce84 store 1 ,mem_24g_data_type 
+00f8 6000ce3f store 1 ,mem_24g_txpayload 
+00f9 204005f8 call power_ctrl_pac_succ_decrs 
+00fa 2020013a branch p_g24_ch 
+
+p_g24_rf_hop_attemp_again:
+00fb 6800cfb8 fetch 1 ,mem_24g_rf_hop_ch 
+00fc c08080ea bne 1 ,p_g24_transmit_rf_ctrl_clear 
+
+p_g24_rf_hop_fastly:
+00fd 6800cfb6 fetch 1 ,mem_24g_hop_fastly_cnt 
+00fe 1fe0fe01 increase 1 ,pdata 
+00ff 6000cfb6 store 1 ,mem_24g_hop_fastly_cnt 
+0100 c0020117 beq 4 ,p_g24_rf_hop_fastly_exit 
+0101 2040013a call p_g24_ch 
+0102 704ec802 jam 2 ,mem_24g_max_retry 
+
+p_g24_transmit_packet:
+0103 704e8c00 jam 0 ,mem_24g_retry 
+
+p_g24_transmit_loop:
+0104 d9600d00 arg param_rx_setup ,timeup 
+0105 34730200 until clkn_rt ,meet 
+0106 20400182 call p_g24_transmit_receive_ack 
+0107 242c018d nbranch p_g24_retransmit ,sync 
+0108 2437818d nbranch p_g24_retransmit ,user3 
+0109 2040017f call p_g24_txbuf_clear 
+010a 204001a9 call p_g24_ackpayload_parse 
+010b 20400716 call power_ctrl_pac_succ_incrs 
+
+p_g24_transmit_next_packet:
+010c 6800ce82 fetch 1 ,mem_24g_pid 
+010d 1fe0fe01 increase 1 ,pdata 
+010e 6000ce82 store 1 ,mem_24g_pid 
+010f 204000f3 call p_g24_hop_enable_packet 
+0110 6800ce93 fetch 1 ,mem_24g_pairing_sm 
+0111 c0ff81b2 bne state_24g_pairing_success ,p_g24_paring_mode_start 
+0112 2040011e call p_g24_transmit_succ_rf_config 
+
+p_g24_transmit_abandon:
+0113 58000000 setarg 0 
+0114 60024e88 store 4 ,mem_24g_ensure 
+0115 6000cfb7 store 1 ,mem_24g_hop_pac_retry 
+0116 20600000 rtn 
+
+p_g24_rf_hop_fastly_exit:
+0117 204005f8 call power_ctrl_pac_succ_decrs 
+0118 704fb600 jam 0 ,mem_24g_hop_fastly_cnt 
+0119 202000ea branch p_g24_transmit_rf_ctrl_clear 
+
+p_g24_transmit_hop_pac_succ_wo_hop:
+011a 704fbb02 jam 2 ,mem_24g_sync_cnt 
+
+p_g24_transmit_hop_pac_succ:
+011b 704fb901 jam 1 ,mem_24g_rf_last_sta 
+011c 704fb800 jam 0 ,mem_24g_rf_hop_ch 
+011d 202000ea branch p_g24_transmit_rf_ctrl_clear 
+
+p_g24_transmit_succ_rf_config:
+011e 6800cfba fetch 1 ,mem_24g_rf_work_stage 
+011f c001811b beq 3 ,p_g24_transmit_hop_pac_succ 
+0120 6800ce84 fetch 1 ,mem_24g_data_type 
+0121 2fec0004 isolate0 bit_hop ,pdata 
+0122 202080e8 branch p_g24_transmit_rf_sta_init ,true 
+0123 6800cfba fetch 1 ,mem_24g_rf_work_stage 
+0124 c000811a beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
+0125 c001011b beq 2 ,p_g24_transmit_hop_pac_succ 
+0126 20600000 rtn 
+
+p_g24_rf_sta_check:
+0127 6800ce93 fetch 1 ,mem_24g_pairing_sm 
+0128 c1ff8000 rtnne state_24g_pairing_success 
+0129 2040012c call p_g24_rf_laststa_synccnt_check 
+012a 24560134 ncall p_g24_rf_sync_cnt_check ,user2 
+012b 20600000 rtn 
+
+p_g24_rf_laststa_synccnt_check:
+012c 78567c00 disable user2 
+012d 6800cfb9 fetch 1 ,mem_24g_rf_last_sta 
+012e c1808000 rtnne 1 
+012f 6800cfbb fetch 1 ,mem_24g_sync_cnt 
+0130 c1800000 rtnne 0 
+0131 704fba01 jam 1 ,mem_24g_rf_work_stage 
+0132 704ec804 jam 4 ,mem_24g_max_retry 
+0133 20207feb branch enable_user2 
+
+p_g24_rf_sync_cnt_check:
+0134 6800cfbb fetch 1 ,mem_24g_sync_cnt 
+0135 203a0147 branch p_g24_rf_hop_attemp ,blank 
+0136 1fe0ffff increase -1 ,pdata 
+0137 6000cfbb store 1 ,mem_24g_sync_cnt 
+0138 704fba02 jam 2 ,mem_24g_rf_work_stage 
+0139 704ec804 jam 4 ,mem_24g_max_retry 
+
+p_g24_ch:
+013a 6808ce8e fetcht 1 ,mem_24g_current_ch_number 
+013b 6800ceab fetch 1 ,mem_24g_addr 
+013c 1fe17e03 and_into 0x03 ,pdata 
+013d 1fefa204 mul32 pdata ,4 ,rega 
+013e 58004e94 setarg mem_24g_ch_map1 
+013f 9a20fe00 iadd rega ,pdata 
+0140 98408c00 iadd temp ,contr 
+0141 e8c08000 ifetch 1 ,contr 
+0142 6000ce8d store 1 ,mem_24g_ch 
+0143 18408401 increase 1 ,temp 
+0144 18410403 and_into 3 ,temp 
+0145 6008ce8e storet 1 ,mem_24g_current_ch_number 
+0146 20600000 rtn 
+
+p_g24_rf_hop_attemp:
+0147 704fba03 jam 3 ,mem_24g_rf_work_stage 
+0148 6800cfb8 fetch 1 ,mem_24g_rf_hop_ch 
+0149 243a00fb nbranch p_g24_rf_hop_attemp_again ,blank 
+014a 704ec802 jam 2 ,mem_24g_max_retry 
+014b 2020013a branch p_g24_ch 
+
+p_g24_txdata_prep:
+014c 6800ce93 fetch 1 ,mem_24g_pairing_sm 
+014d c0ff81b0 bne state_24g_pairing_success ,p_g24_pairing_sm 
+
+p_g24_txdata_prep_packeage_data:
+014e 20400152 call p_g24_package_data 
+
+p_g24_txdata_enable_tx:
+014f 204001e8 call p_g24_transmit_prep 
+0150 704e8801 jam ensure_on_24g ,mem_24g_ensure 
+0151 20600000 rtn 
+
+p_g24_package_data:
+0152 68014fb4 fetch 2 ,mem_cb_24g_data 
+0153 20407f9c call callback_func 
+0154 20340158 branch p_g24_accumulate_mouse_data ,user 
+0155 6803ce20 fetch 7 ,mem_24g_txbuf + 1 
+0156 207a0000 rtn blank 
+0157 20207fe7 branch enable_user 
+
+p_g24_accumulate_mouse_data:
+0158 6800cd87 fetch 1 ,mem_customer_key 
+0159 243a0174 nbranch p_g24_accumulate_customer_data ,blank 
+015a 704e8401 jam type_ms ,mem_24g_data_type 
+015b 2040035a call p_mouse_data_xy_release 
+015c 2040016e call p_g24_accumulate_data_head 
+015d e8a88000 ifetcht 1 ,contw 
+015e ea408000 ifetch 1 ,regb 
+015f 9841fe00 ior temp ,pdata 
+0160 e0a08000 istore 1 ,contw 
+0161 1a40a401 increase 1 ,regb 
+0162 ea420000 ifetch 4 ,regb 
+0163 e0a20000 istore 4 ,contw 
+0164 1a40a404 increase 4 ,regb 
+0165 d8a04e25 arg mem_24g_txbuf + 6 ,contw 
+0166 df200002 arg 2 ,loopcnt 
+
+p_g24_accumulation_loop:
+0167 ea408000 ifetch 1 ,regb 
+0168 e8a88000 ifetcht 1 ,contw 
+0169 9840fe00 iadd temp ,pdata 
+016a e0a08000 istore 1 ,contw 
+016b 1a40a401 increase 1 ,regb 
+016c c2000167 loop p_g24_accumulation_loop 
+016d 20600000 rtn 
+
+p_g24_accumulate_data_head:
+016e 704eaf00 jam 0 ,mem_24g_abort_pac 
+016f 1a20fe01 add rega ,1 ,pdata 
+0170 6000ce83 store 1 ,mem_24g_datalen 
+0171 204000ea call p_g24_transmit_rf_ctrl_clear 
+0172 6000ce1f store 1 ,mem_24g_txbuf 
+0173 20600000 rtn 
+
+p_g24_accumulate_customer_data:
+0174 704e8402 jam type_kb ,mem_24g_data_type 
+0175 da200009 arg 9 ,rega 
+0176 da404d91 arg mem_customer_key_release ,regb 
+0177 6800cd9a fetch 1 ,mem_customer_data_trigger 
+0178 245a017d ncall p_mouse_customer_key_press ,blank 
+0179 2040016e call p_g24_accumulate_data_head 
+017a 1a420c00 copy regb ,contr 
+017b 1a227200 copy rega ,loopcnt 
+017c 20207f01 branch memcpy 
+
+p_mouse_customer_key_press:
+017d da404d88 arg mem_customer_key_press ,regb 
+017e 20600000 rtn 
+
+p_g24_txbuf_clear:
+017f df200004 arg 4 ,loopcnt 
+0180 d8a04e1f arg mem_24g_txbuf ,contw 
+0181 20207ec6 branch memset0 
+
+p_g24_transmit_receive_ack:
+0182 7857fc00 disable user3 
+0183 20400248 call p_g24_transmit 
+0184 18002a00 force 0 ,radio_ctrl 
+0185 68024eab fetch 4 ,mem_24g_addr 
+0186 98001200 iforce access 
+0187 68088017 fetcht 1 ,mem_last_freq 
+0188 2040291f call set_freq_rx 
+0189 20402924 call rf_rx_enable 
+018a 20400203 call p_g24_receive_rxon 
+018b 20578244 call p_g24_end_of_packet ,user3 
+018c 20600000 rtn 
+
+p_g24_retransmit:
+018d 68014e89 fetch 2 ,mem_24g_txfail_cnt 
+018e 1fe0fe01 increase 1 ,pdata 
+018f 60014e89 store 2 ,mem_24g_txfail_cnt 
+0190 6800ce8a fetch 1 ,mem_24g_txfail_cnt + 1 
+0191 c282019a bbit1 4 ,p_g24_stop_g24_mode 
+0192 6800ce93 fetch 1 ,mem_24g_pairing_sm 
+0193 c0ff8196 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+0194 2040019f call p_g24_tx_hop_ch_process 
+0195 20200104 branch p_g24_transmit_loop 
+
+p_g24_tx_paring_retry:
+0196 6800ce89 fetch 1 ,mem_24g_txfail_cnt 
+0197 c1ff8000 rtnne 0xff 
+
+p_g24_tx_attempt_fail:
+0198 58000000 setarg 0 
+0199 60014e89 store 2 ,mem_24g_txfail_cnt 
+
+p_g24_stop_g24_mode:
+019a 700a993a jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+019b 20207d86 branch ui_ipc_send_event 
+
+p_g24_tx_fast_hop:
+019c 2040073f call power_ctrl_txpower_incrs 
+019d 204005f8 call power_ctrl_pac_succ_decrs 
+019e 2020013a branch p_g24_ch 
+
+p_g24_tx_hop_ch_process:
+019f 6800ce8c fetch 1 ,mem_24g_retry 
+01a0 1fe67c0b sub pdata ,11 ,null 
+01a1 2421019c nbranch p_g24_tx_fast_hop ,positive 
+01a2 1fe0fe01 increase 1 ,pdata 
+01a3 6000ce8c store 1 ,mem_24g_retry 
+01a4 c00100ee beq 2 ,p_g24_hop_ch_enable 
+01a5 c00300f5 beq 6 ,p_g24_hop_ch_disable 
+01a6 c00400ee beq 8 ,p_g24_hop_ch_enable 
+01a7 c00600f5 beq 12 ,p_g24_hop_ch_disable 
+01a8 20600000 rtn 
+
+p_g24_ackpayload_parse:
+01a9 204001cd call p_g24_read_len_pid_crc 
+01aa 6800ce81 fetch 1 ,mem_24g_rxdata_length 
+01ab 207a0000 rtn blank 
+01ac 98007200 iforce loopcnt 
+01ad d8c04dff arg mem_24g_rxbuf + 2 ,contr 
+01ae d8a04e61 arg mem_24g_rxpayload ,contw 
+01af 20207f01 branch memcpy 
+
+p_g24_pairing_sm:
+01b0 7011c790 jam zcode_90 ,mem_zcode_temp_param0 
+01b1 2020077a branch p_zcode_entrance 
+
+p_g24_paring_mode_start:
+01b2 20400713 call power_ctrl_pac_succ_cnt_init 
+
+p_g24_paring_mode:
+01b3 7011c791 jam zcode_91 ,mem_zcode_temp_param0 
+01b4 2020077a branch p_zcode_entrance 
+
+p_mouse_start_24g_mode:
+01b5 204004f6 call p_mouse_mode_24g_device_multi_led_on 
+01b6 7011c760 jam zcode_60 ,mem_zcode_temp_param0 
+01b7 2020077a branch p_zcode_entrance 
+
+p_g24_auto_pair_start:
+01b8 704d4600 jam 0 ,mem_mouse_long_button_select_device 
+01b9 7011c770 jam zcode_70 ,mem_zcode_temp_param0 
+01ba 2020077a branch p_zcode_entrance 
+
+p_g24_tx_attemp_data_prep:
+01bb 70119eff jam 0xff ,mem_24g_common_temp 
+01bc 6800ce84 fetch 1 ,mem_24g_data_type 
+01bd 6000919f store 1 ,mem_24g_common_temp + 1 
+01be 68024eba fetch 4 ,mem_24g_device_addr 
+01bf 600211a0 store 4 ,mem_24g_common_temp + 2 
+01c0 d8400006 arg 6 ,temp 
+01c1 da20119e arg mem_24g_common_temp ,rega 
+01c2 204001c8 call p_g24_put_data_in_buff 
+01c3 202001e8 branch p_g24_transmit_prep 
+
+p_g24_check_51cmd_stop_24g:
+01c4 793f8026 set0 mark_24g ,mark 
+01c5 204053ce call le_disable 
+
+p_mouse_disable_g24_pairing_flag:
+01c6 d8e00003 arg mosue_24g_pairing_flag ,queue 
+01c7 202043d2 branch mouse_disable_function_flag 
+
+p_g24_put_data_in_buff:
+01c8 6008ce83 storet 1 ,mem_24g_datalen 
+01c9 18427200 copy temp ,loopcnt 
+01ca d8a04e1f arg mem_24g_txbuf ,contw 
+01cb 1a220c00 copy rega ,contr 
+01cc 20207f01 branch memcpy 
+
+p_g24_read_len_pid_crc:
+01cd 6800cdfe fetch 1 ,mem_24g_rxbuf + 1 
+01ce 1fe97e00 rshift3 pdata ,pdata 
+01cf 6000ce81 store 1 ,mem_24g_rxdata_length 
+01d0 1fe0fe01 increase 1 ,pdata 
+01d1 d8c04dfe arg mem_24g_rxbuf + 1 ,contr 
+01d2 98c08c00 iadd contr ,contr 
+01d3 e8c18000 ifetch 3 ,contr 
+01d4 6001cec0 store 3 ,mem_24g_sta_crc 
+01d5 6800cdfe fetch 1 ,mem_24g_rxbuf + 1 
+01d6 1fe37e00 rshift pdata ,pdata 
+01d7 1fe17e03 and pdata ,0x03 ,pdata 
+01d8 6000cec6 store 1 ,mem_24g_sta_pid 
+01d9 20600000 rtn 
+
+p_g24_update_addr_and_synccrc8:
+01da 60024eab store 4 ,mem_24g_addr 
+
+p_g24_syncword_crc8:
+01db da200000 arg 0 ,rega 
+01dc df200004 arg 4 ,loopcnt 
+01dd d8c04eab arg mem_24g_addr ,contr 
+
+p_g24_syncword_crc8_loop:
+01de e8c08000 ifetch 1 ,contr 
+01df 9a20a200 iadd rega ,rega 
+01e0 c20001de loop p_g24_syncword_crc8_loop 
+01e1 1a227e00 copy rega ,pdata 
+01e2 60014f34 store 2 ,mem_24g_syncword 
+01e3 6800cf34 fetch 1 ,mem_24g_syncword 
+01e4 6808cf35 fetcht 1 ,mem_24g_syncword + 1 
+01e5 9840fe00 iadd temp ,pdata 
+01e6 6000cf36 store 1 ,mem_24g_syncword_crc8 
+01e7 20600000 rtn 
+
+p_g24_transmit_prep:
+01e8 6800ce83 fetch 1 ,mem_24g_datalen 
+01e9 1fe0fe02 increase 2 ,pdata 
+01ea 6000ce85 store 1 ,mem_24g_txlen 
+01eb 6800ce84 fetch 1 ,mem_24g_data_type 
+01ec 6000ce3f store 1 ,mem_24g_txpayload 
+01ed 6800ce83 fetch 1 ,mem_24g_datalen 
+01ee 1fe9fe00 lshift3 pdata ,pdata 
+01ef 6808ce82 fetcht 1 ,mem_24g_pid 
+01f0 18410403 and temp ,0x03 ,temp 
+01f1 18438400 lshift temp ,temp 
+01f2 9841fe00 ior temp ,pdata 
+01f3 6808cebf fetcht 1 ,mem_24g_no_ack 
+01f4 9840fe00 iadd temp ,pdata 
+01f5 e0a08000 istore 1 ,contw 
+01f6 6800ce83 fetch 1 ,mem_24g_datalen 
+01f7 98007200 iforce loopcnt 
+01f8 d8c04e1f arg mem_24g_txbuf ,contr 
+01f9 20207f01 branch memcpy 
+
+p_g24_prep:
+01fa 7844fc00 disable enable_crc 
+01fb 7843fc00 disable enable_white 
+01fc 58555555 setarg 0x555555 
+01fd 98001e00 iforce crc24_init 
+01fe 6800ce8d fetch 1 ,mem_24g_ch 
+01ff 1fed8400 reverse pdata ,temp 
+0200 79200401 set1 1 ,temp 
+0201 18431c00 rshift temp ,white_init 
+0202 20600000 rtn 
+
+p_g24_receive_rxon:
+0203 204001fa call p_g24_prep 
+0204 7857fc00 disable user3 
+0205 7826fc00 enable decode_fec0 
+0206 7830fc00 enable is_rx 
+0207 78507c00 disable is_tx 
+0208 78287c00 enable swfine 
+0209 68014e86 fetch 2 ,mem_24g_rx_window 
+020a 98003600 iforce stop_watch 
+020b 37c18400 correlate null ,timeout 
+020c 242c0244 nbranch p_g24_end_of_packet ,sync 
+020d 7846fc00 disable decode_fec0 
+020e 7825fc00 enable decode_fec1 
+020f 7823fc00 enable enable_white 
+0210 7824fc00 enable enable_crc 
+0211 20400241 call p_g24_receive_byte 
+0212 6000cf37 store 1 ,mem_24g_get_syncword_crc8 
+0213 6808cf36 fetcht 1 ,mem_24g_syncword_crc8 
+0214 98467c00 isub temp ,null 
+0215 24228244 nbranch p_g24_end_of_packet ,zero 
+0216 20400241 call p_g24_receive_byte 
+0217 6000cdfd store 1 ,mem_24g_rxbuf 
+0218 6800cdfd fetch 1 ,mem_24g_rxbuf 
+0219 6808ce84 fetcht 1 ,mem_24g_data_type 
+021a a8400e00 icompare bits_data ,temp 
+021b 24208244 nbranch p_g24_end_of_packet ,true 
+
+p_g24_receive_skip:
+021c 20400241 call p_g24_receive_byte 
+021d e0a08000 istore 1 ,contw 
+021e 1fe97e00 rshift3 pdata ,pdata 
+021f 1fe1721f and pdata ,0x1f ,loopcnt 
+0220 20228224 branch p_g24rx_nopayload ,zero 
+
+p_g24rx_loop:
+0221 20400241 call p_g24_receive_byte 
+0222 e0a08000 istore 1 ,contw 
+0223 c2000221 loop p_g24rx_loop 
+
+p_g24rx_nopayload:
+0224 18a22200 copy contw ,rega 
+0225 20400241 call p_g24_receive_byte 
+0226 6000cfbe store 1 ,mem_rssi_hex_received 
+0227 1a220a00 copy rega ,contw 
+0228 09800018 parse demod ,bucket ,24 
+0229 78287c00 enable swfine 
+022a db600664 arg param_sifs ,stop_watch 
+022b 1fef7e00 rshift32 pdata ,pdata 
+022c 1ff17e00 rshift16 pdata ,pdata 
+022d e0a18000 istore 3 ,contw 
+022e 7845fc00 disable decode_fec1 
+022f 20230244 branch p_g24_end_of_packet ,crc_failed 
+0230 7837fc00 enable user3 
+0231 68008017 fetch 1 ,mem_last_freq 
+0232 1fe0a200 add pdata ,0 ,rega 
+0233 20402981 call rf_write_freq 
+0234 7846fc00 disable decode_fec0 
+0235 20402918 call set_sync_on 
+0236 6800cfbe fetch 1 ,mem_rssi_hex_received 
+
+p_rssi_signal:
+0237 1fe22200 copy pdata ,rega 
+0238 6808cf3e fetcht 1 ,mem_rssi_signal_index 
+0239 58004f45 setarg mem_rssi_signal_buf 
+023a 98408a00 iadd temp ,contw 
+023b 1a227e00 copy rega ,pdata 
+023c e0a08000 istore 1 ,contw 
+023d 18408401 increase 1 ,temp 
+023e 18410407 and_into rssi_buf_len_signal ,temp 
+023f 6008cf3e storet 1 ,mem_rssi_signal_index 
+0240 20600000 rtn 
+
+p_g24_receive_byte:
+0241 09800008 parse demod ,bucket ,8 
+0242 19897e00 rshift3 pwindow ,pdata 
+0243 20600000 rtn 
+
+p_g24_end_of_packet:
+0244 784dfc00 disable encode_fec1 
+0245 7845fc00 disable decode_fec1 
+0246 2040264d call end_of_packet 
+0247 20600000 rtn 
+
+p_g24_transmit:
+0248 204053c4 call le_enable 
+0249 68024eab fetch 4 ,mem_24g_addr 
+024a 98001200 iforce access 
+024b 204001fa call p_g24_prep 
+024c 20402918 call set_sync_on 
+024d 6808ce8d fetcht 1 ,mem_24g_ch 
+024e 20402933 call set_freq_tx 
+024f 79202a00 set1 txgfsk ,radio_ctrl 
+0250 782efc00 enable encode_fec0 
+0251 78307c00 enable is_tx 
+0252 7850fc00 disable is_rx 
+0253 19317e00 rshift16 access ,pdata 
+0254 1fecfe00 rshift8 pdata ,pdata 
+0255 1ff1fe00 rshift4 pdata ,pdata 
+0256 08008628 inject mod ,40 
+0257 784efc00 disable encode_fec0 
+0258 782dfc00 enable encode_fec1 
+0259 7823fc00 enable enable_white 
+025a 7824fc00 enable enable_crc 
+025b 6800cf36 fetch 1 ,mem_24g_syncword_crc8 
+025c 08008608 inject mod ,8 
+025d 6800ce85 fetch 1 ,mem_24g_txlen 
+025e 98007200 iforce loopcnt 
+025f d8c04e3f arg mem_24g_txpayload ,contr 
+
+p_g24tr_loop:
+0260 e8c08000 ifetch 1 ,contr 
+0261 08008608 inject mod ,8 
+0262 c2000260 loop p_g24tr_loop 
+0263 78247c00 enable enable_parity 
+0264 08008618 inject mod ,24 
+0265 78447c00 disable enable_parity 
+0266 37d38200 until null ,tx_clear 
+0267 20000064 nop 100 
+0268 784efc00 disable encode_fec0 
+0269 784dfc00 disable encode_fec1 
+026a 20600000 rtn 
+
+p_g24_timer_check:
+026b 20407fe9 call disable_user 
+026c 680a4ea4 fetcht 4 ,mem_24g_tx_btclk 
+026d 1c427e00 copy clkn_bt ,pdata 
+026e 98467c00 isub temp ,null 
+026f 24412d18 ncall g24_timer_timeout ,positive 
+0270 1fe22400 copy pdata ,regb 
+0271 68024ea4 fetch 4 ,mem_24g_tx_btclk 
+0272 6808cea8 fetcht 1 ,mem_24g_interval 
+0273 98408400 iadd temp ,temp 
+0274 1a427e00 copy regb ,pdata 
+0275 98467c00 isub temp ,null 
+0276 24610000 nrtn positive 
+0277 793ffe1c set0 28 ,pdata 
+0278 60024ea4 store 4 ,mem_24g_tx_btclk 
+0279 20207fe7 branch enable_user 
+
+p_rssi_average:
+027a d8400000 arg 0 ,temp 
+027b df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
+027c 1a220c00 copy rega ,contr 
+
+p_rssi_average_loop:
+027d e8c08000 ifetch 1 ,contr 
+027e 98408400 iadd temp ,temp 
+027f c200027d loop p_rssi_average_loop 
+0280 18497e00 rshift3 temp ,pdata 
+0281 1fe20400 copy pdata ,temp 
+0282 c6930000 rtnmark0 mark_24g 
+0283 1fe6fc0a div pdata ,10 
+0284 20407f86 call wait_div_end 
+0285 1807fe00 quotient pdata 
+0286 1ff27e00 lshift4 pdata ,pdata 
+0287 18070400 remainder temp 
+0288 98418400 ior temp ,temp 
+0289 20600000 rtn 
+
+p_mouse_before_lpm:
+028a c6130000 rtnmark1 mark_24g 
+028b 2040032e call p_mouse_le_txbuff_save 
+028c 204000c3 call p_mouse_setgpio_lpm 
+028d 6800c040 fetch 1 ,mem_context 
+028e c3000291 bbit0 state_inconn ,p_clear_wake 
+028f 680080a0 fetch 1 ,mem_lpm_current_mult 
+0290 247a0000 nrtn blank 
+
+p_clear_wake:
+0291 58000000 setarg 0 
+0292 600400a1 store 8 ,mem_gpio_wakeup_low 
+0293 20600000 rtn 
+
+p_mouse_set_sdio_high:
+0294 6800ccd9 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0295 207a0000 rtn blank 
+0296 20200514 branch p_mouse_seting_sensor_type 
+
+p_device_init:
+0297 2040296c call initialize_radio 
+0298 20403416 call app_lpm_mult_enable 
+0299 204074b9 call enable_authrom 
+029a 203583eb branch p_mouse_spi_init ,wake 
+
+p_device_wake_from_power:
+029b 6801c4a3 fetch 3 ,mem_le_lap + 3 
+029c 6001cd3f store 3 ,mem_le_lap_high_3b 
+029d 20400001 call p_wake_from_power 
+
+p_mouse_check_reconn_target:
+029e 7011c722 jam zcode_22 ,mem_zcode_temp_param0 
+029f 2020077a branch p_zcode_entrance 
+
+p_mouse_null_enter_hibernate_enable:
+02a0 70479f01 jam 1 ,mem_mouse_null_enter_hibernate_flag 
+02a1 7047a028 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+02a2 20600000 rtn 
+
+p_mouse_tx_power_init:
+02a3 6800cf3a fetch 1 ,mem_tx_power_temp 
+02a4 6000c1de store 1 ,mem_tx_power 
+02a5 20600000 rtn 
+
+p_le_check_adv_flag:
+02a6 da204370 arg mem_le_adv_data ,rega 
+
+p_le_check_adv_flag_loop:
+02a7 ea208000 ifetch 1 ,rega 
+02a8 207a0000 rtn blank 
+02a9 98c0a200 iadd contr ,rega 
+02aa e8c08000 ifetch 1 ,contr 
+02ab c1008000 rtneq 0x01 
+02ac 202002a7 branch p_le_check_adv_flag_loop 
+
+p_mouse_le_fast_conn_disable:
+02ad 704d3e5a jam 0x5a ,mem_mouse_fast_conn_flag 
+02ae 20600000 rtn 
+
+p_mouse_fast_conn_init:
+02af 704d3eff jam 0xff ,mem_mouse_fast_conn_flag 
+02b0 70421034 jam 0x34 ,mem_xrecord_mode 
+02b1 68034fc8 fetch 6 ,mem_24g_allpowerful_addr 
+02b2 600344a0 store 6 ,mem_le_lap 
+02b3 20600000 rtn 
+
+p_mouse_init_sunt:
+02b4 204003eb call p_mouse_spi_init 
+02b5 204040c0 call mouse_spi_sdio_gpio_pollup 
+
+p_mouse_init_sensor:
+02b6 204040d9 call mouse_read_sensor_id 
+02b7 c01802bc beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+02b8 c01882c8 beq p3065_id1 ,p_mouse_p3065_init_param 
+02b9 204040d1 call mouse_twspi_reset 
+02ba 200003e8 nop 1000 
+02bb 202002b6 branch p_mouse_init_sensor 
+
+p_mouse_init_p32xx_id2_judge:
+02bc 20400360 call p_mouse_sensor_poweron 
+02bd 6800c6de fetch 1 ,mem_sensor_id2 
+02be c02a02c0 beq pka8_id2 ,p_mouse_ka8_init_param 
+02bf 202040e0 branch mouse_init_p32xx_id2_judge 
+
+p_mouse_ka8_init_param:
+02c0 7046e002 jam ka8 ,mem_config_sensor_type 
+02c1 da604d62 arg mem_sensor_ka8_init ,regc 
+
+p_sensor_wr_seq:
+02c2 ea610000 ifetch 2 ,regc 
+02c3 c17f8000 rtneq 0xff 
+02c4 20406413 call twspi_write 
+02c5 20002ee0 nop 12000 
+02c6 1a60a602 increase 2 ,regc 
+02c7 202002c2 branch p_sensor_wr_seq 
+
+p_mouse_p3065_init_param:
+02c8 20400360 call p_mouse_sensor_poweron 
+02c9 6800c6de fetch 1 ,mem_sensor_id2 
+02ca c03840e8 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+02cb 7046e001 jam p3065 ,mem_config_sensor_type 
+02cc 20600000 rtn 
+
+p_mouse_dpi_config:
+02cd 6800c77a fetch 1 ,mem_mouse_dpi 
+02ce c0ff8514 bne 0xff ,p_mouse_seting_dpi 
+
+p_mouse_dpi_config_default:
+02cf 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+02d0 6000c77a store 1 ,mem_mouse_dpi 
+02d1 20200514 branch p_mouse_seting_dpi 
+
+p_spid_init_flash:
+02d2 70808640 jam 0x40 ,core_spid_ctrl 
+02d3 70808700 jam 0x0 ,core_spid_delay 
+02d4 68108081 hfetch 1 ,core_gpio_sel1 
+02d5 793ffe00 set0 0 ,pdata 
+02d6 793ffe01 set0 1 ,pdata 
+02d7 79207e03 set1 3 ,pdata 
+02d8 793ffe04 set0 4 ,pdata 
+02d9 60108081 hstore 1 ,core_gpio_sel1 
+02da 58000000 setarg 0 
+02db 600201f5 store 4 ,mem_spid_tbuf 
+02dc 6810807f hfetch 1 ,core_gpio_pd3 
+02dd 793ffe00 set0 0 ,pdata 
+02de 6010807f hstore 1 ,core_gpio_pd3 
+02df 20600000 rtn 
+
+p_mouse_load_flash_info_check:
+02e0 20400325 call p_flash_release_deep_power_down 
+02e1 20404423 call mouse_load_flash_flag 
+02e2 68014778 fetch 2 ,mem_store_flag 
+02e3 d840aa55 arg eeprom_init_flag ,temp 
+02e4 98467c00 isub temp ,null 
+02e5 20228312 branch p_mouse_load_flash_device_info ,zero 
+02e6 60094778 storet 2 ,mem_store_flag 
+02e7 2040441c call mouse_ble_init_address 
+02e8 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+02e9 6000c77a store 1 ,mem_mouse_dpi 
+02ea 68024d1e fetch 4 ,mem_mouse_24g_addr_init 
+02eb 6002477b store 4 ,mem_mouse_24g_addr 
+02ec 60024eab store 4 ,mem_24g_addr 
+02ed 204002af call p_mouse_fast_conn_init 
+
+p_mouse_set_24g_addr_flash:
+02ee d8400004 arg 4 ,temp 
+02ef da204eab arg mem_24g_addr ,rega 
+02f0 da40005b arg mouse_g24_addr_eeprom_offect ,regb 
+02f1 20600000 rtn 
+
+p_flash_erase_sector:
+02f2 6801c700 fetch 3 ,mem_flash_base 
+02f3 6001c232 store 3 ,mem_spi_write_addr 
+02f4 2040652a call flash_erase_sector + 2 
+
+p_wait_flash_done:
+02f5 580186a0 setarg 100000 
+02f6 20402a8f call sleep 
+02f7 2040650b call spid_unlock_flash 
+02f8 580001fa setarg mem_spid_rbuf 
+02f9 6011008c hstore 2 ,core_spid_rxaddr 
+02fa 58000005 setarg flash_read_satus 
+02fb 204064f3 call spid_read_reg 
+02fc c28002f5 bbit1 flash_status_wip ,p_wait_flash_done 
+02fd 20600000 rtn 
+
+p_spid_write_flash:
+02fe 1fe22600 copy pdata ,regc 
+02ff 1a227e00 copy rega ,pdata 
+0300 1fe0fffc increase -4 ,pdata 
+0301 1fe22400 copy pdata ,regb 
+0302 ea420000 ifetch 4 ,regb 
+0303 60024d19 store 4 ,mem_write_flash_head_temp 
+0304 1a627e00 copy regc ,pdata 
+0305 20406552 call spid_write_flash 
+0306 68024d19 fetch 4 ,mem_write_flash_head_temp 
+0307 e2420000 istore 4 ,regb 
+0308 20600000 rtn 
+
+p_mouse_information_flash_parameters:
+0309 5800477f setarg mem_mouse_information_end 
+030a d8404720 arg mem_mouse_information_start ,temp 
+030b 98460400 isub temp ,temp 
+030c 6801c700 fetch 3 ,mem_flash_base 
+030d da204720 arg mem_mouse_information_start ,rega 
+030e 20600000 rtn 
+
+p_mouse_read_flash:
+030f 20400325 call p_flash_release_deep_power_down 
+0310 20400309 call p_mouse_information_flash_parameters 
+0311 20206562 branch spid_read_flash 
+
+p_mouse_load_flash_device_info:
+0312 2040030f call p_mouse_read_flash 
+0313 204005b3 call p_mouse_load_random_addr_increase_count 
+0314 2040431a call mouse_select_reconn_device 
+0315 6802477b fetch 4 ,mem_mouse_24g_addr 
+0316 60024eab store 4 ,mem_24g_addr 
+0317 68034722 fetch 6 ,mem_device1_addr 
+0318 680b4df7 fetcht 6 ,mem_mouse_fast_conn_addr 
+0319 98467c00 isub temp ,null 
+031a 242282ad nbranch p_mouse_le_fast_conn_disable ,zero 
+031b 204002af call p_mouse_fast_conn_init 
+031c 20600000 rtn 
+
+p_flash_deep_power_down:
+031d 700aa2b9 jam flash_command_deep_power_down ,mem_temp 
+
+p_spid_write_flash_cmd:
+031e 204002d2 call p_spid_init_flash 
+031f 204069ac call delay_nop100 
+0320 2040650b call spid_unlock_flash 
+0321 da204d19 arg mem_write_flash_head_temp ,rega 
+0322 68088aa2 fetcht 1 ,mem_temp 
+0323 20406556 call spid_write_flash_common 
+0324 202069ac branch delay_nop100 
+
+p_flash_release_deep_power_down:
+0325 700aa2ab jam flash_command_release_deep_power_down ,mem_temp 
+0326 2020031e branch p_spid_write_flash_cmd 
+
+p_mouse_g24_package_data:
+0327 20404401 call mouse_g24_package_data 
+0328 6801469f fetch 2 ,mem_mouse_z 
+0329 207a0000 rtn blank 
+
+p_g24_transmit_by_interrupt_enable:
+032a 704fc301 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+032b 58000000 setarg 0 
+032c 60014fc4 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+032d 20600000 rtn 
+
+p_mouse_le_txbuff_save:
+032e d8c01800 arg mem_le_tx_buffer0 ,contr 
+032f d8a049e5 arg mem_le_tx_buffer0_omemalloc ,contw 
+0330 20400336 call p_mouse_le_txbuff_copy 
+0331 d8c01900 arg mem_le_tx_buffer1 ,contr 
+0332 20400336 call p_mouse_le_txbuff_copy 
+0333 d8c01a00 arg mem_le_tx_buffer2 ,contr 
+0334 20400336 call p_mouse_le_txbuff_copy 
+0335 d8c01b00 arg mem_le_tx_buffer3 ,contr 
+
+p_mouse_le_txbuff_copy:
+0336 df20001b arg 27 ,loopcnt 
+0337 20207f01 branch memcpy 
+
+p_mouse_le_txbuff_load:
+0338 d8c049e5 arg mem_le_tx_buffer0_omemalloc ,contr 
+0339 d8a01800 arg mem_le_tx_buffer0 ,contw 
+033a 20400336 call p_mouse_le_txbuff_copy 
+033b d8a01900 arg mem_le_tx_buffer1 ,contw 
+033c 20400336 call p_mouse_le_txbuff_copy 
+033d d8a01a00 arg mem_le_tx_buffer2 ,contw 
+033e 20400336 call p_mouse_le_txbuff_copy 
+033f d8a01b00 arg mem_le_tx_buffer3 ,contw 
+0340 20200336 branch p_mouse_le_txbuff_copy 
+
+p_mouse_le:
+0341 20405892 call le_fifo_check_nearly_full 
+0342 247a0000 nrtn blank 
+0343 6800cd3e fetch 1 ,mem_mouse_fast_conn_flag 
+0344 c07f8348 beq 0xff ,p_mouse_le_next 
+0345 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0346 1fe17e03 and pdata ,0x03 ,pdata 
+0347 c1818000 rtnne 0x03 
+
+p_mouse_le_next:
+0348 6800c79e fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0349 205a038a call p_mouse_clear_sensor_data ,blank 
+034a 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+034b c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+034c 20403f97 call mouse_motion 
+034d 24740000 nrtn user 
+034e 20400357 call p_mouse_le_current_mult_update 
+034f 2040035a call p_mouse_data_xy_release 
+0350 20400385 call p_mouse_wheel_trigger 
+0351 6800cd87 fetch 1 ,mem_customer_key 
+0352 c0008363 beq 1 ,p_mouse_le_send_customer_packet 
+
+p_mouse_data_push:
+0353 da20469a arg mem_mouse_key ,rega 
+0354 20407e3d call queue_push 
+0355 20540374 call p_mouse_queue_increase ,user 
+0356 20600000 rtn 
+
+p_mouse_le_current_mult_update:
+0357 70417200 jam 0 ,mem_lpm_mult 
+0358 704d361e jam 30 ,mem_mouse_le_current_mult_timer 
+0359 20600000 rtn 
+
+p_mouse_data_xy_release:
+035a 6800cd35 fetch 1 ,mem_mouse_long_mult_flag 
+035b c1808000 rtnne 1 
+035c 58000000 setarg 0 
+035d 6000cd35 store 1 ,mem_mouse_long_mult_flag 
+035e 6002469b store 4 ,mem_mouse_x 
+035f 2020038c branch p_mouse_init_sensor_reset 
+
+p_mouse_sensor_poweron:
+0360 da604d6f arg mem_sensor_poweron_init ,regc 
+0361 204002c2 call p_sensor_wr_seq 
+0362 202002cd branch p_mouse_dpi_config 
+
+p_mouse_le_send_customer_packet:
+0363 6800cd9a fetch 1 ,mem_customer_data_trigger 
+0364 203a036d branch p_mouse_le_release_customer_data ,blank 
+0365 68044d89 fetch 8 ,mem_customer_key_press + 1 
+
+p_mouse_fill_customer_data_le:
+0366 60040a9a store 8 ,mem_pdatatemp 
+0367 da200008 arg 8 ,rega 
+0368 d8400015 arg 0x15 ,temp 
+0369 20405a64 call le_att_malloc_tx_notify 
+036a 68040a9a fetch 8 ,mem_pdatatemp 
+036b e0a40000 istore 8 ,contw 
+036c 20600000 rtn 
+
+p_mouse_le_release_customer_data:
+036d 68044d92 fetch 8 ,mem_customer_key_release + 1 
+036e 20200366 branch p_mouse_fill_customer_data_le 
+
+p_mouse_data_init:
+036f 7047a207 jam 7 ,mem_mouse_data_queue 
+0370 7047a304 jam 4 ,mem_mouse_data_queue + 1 
+0371 580047a2 setarg mem_mouse_data_queue 
+0372 60014218 store 2 ,mem_queue_ptr 
+0373 20207e38 branch queue_init 
+
+p_mouse_queue_increase:
+0374 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+0375 1fe0fe01 increase 1 ,pdata 
+0376 6000c7c3 store 1 ,mem_mouse_data_queue_num 
+0377 20600000 rtn 
+
+p_mouse_data_pull:
+0378 da20469a arg mem_mouse_key ,rega 
+0379 20407e54 call queue_pop 
+037a 2034037c branch p_mouse_fill_data_le ,user 
+037b 20600000 rtn 
+
+p_mouse_fill_data_le:
+037c 20405652 call le_clear_md 
+037d 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+037e 1fe67c01 sub pdata ,1 ,null 
+037f 24415650 ncall le_set_md ,positive 
+0380 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+0381 207a0000 rtn blank 
+0382 1fe0ffff increase -1 ,pdata 
+0383 6000c7c3 store 1 ,mem_mouse_data_queue_num 
+0384 20203f90 branch mouse_fill_data_le 
+
+p_mouse_wheel_trigger:
+0385 6801469f fetch 2 ,mem_mouse_z 
+0386 207a0000 rtn blank 
+0387 7049e101 jam 1 ,mem_mouse_wheel_trigger 
+0388 7049e202 jam 2 ,mem_mouse_wheel_trigger_timer 
+0389 20600000 rtn 
+
+p_mouse_clear_sensor_data:
+038a 70479e01 jam 1 ,mem_mouse_clear_sensor_data_flag 
+038b 20405814 call le_set_config_more_data 
+
+p_mouse_init_sensor_reset:
+038c 704cd901 jam 1 ,mem_mouse_init_sensor_reset_flag 
+038d 202002b4 branch p_mouse_init_sunt 
+
+p_le_addr_random_config:
+038e 204068a2 call load_adc_init 
+038f 58001122 setarg 0x1122 
+
+p_le_otp_adc_empty:
+0390 600147c4 store 2 ,mem_random_addr_increase_count 
+0391 20600000 rtn 
+
+p_mouse_bt:
+0392 20770000 rtn attempt 
+0393 6800c1e2 fetch 1 ,mem_app_handshake_flag 
+0394 207a0000 rtn blank 
+0395 20405271 call l2cap_malloc_is_fifo_nearly_full 
+0396 247a0000 nrtn blank 
+0397 6800c79e fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0398 205a038a call p_mouse_clear_sensor_data ,blank 
+0399 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+039a c282bf8a bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+039b c284bf8a bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+039c 20403f97 call mouse_motion 
+039d 24740000 nrtn user 
+039e 20400357 call p_mouse_le_current_mult_update 
+039f 2040035a call p_mouse_data_xy_release 
+03a0 20400385 call p_mouse_wheel_trigger 
+03a1 6800ccde fetch 1 ,mem_mouse_bt_boot_mode 
+03a2 c00083a8 beq 1 ,p_mouse_send_data_boot_mode 
+03a3 6800cce5 fetch 1 ,mem_mouse_bt_send_first_package_flag 
+03a4 207a0000 rtn blank 
+03a5 6800cd87 fetch 1 ,mem_customer_key 
+03a6 c00083b9 beq 1 ,p_mouse_bt_send_customer_packet 
+03a7 20203f81 branch mouse_send_data 
+
+p_mouse_send_data_boot_mode:
+03a8 6800c69a fetch 1 ,mem_mouse_key 
+03a9 6000ccdf store 1 ,mem_mouse_bt_boot_data 
+03aa 6800c69b fetch 1 ,mem_mouse_x 
+03ab e0a08000 istore 1 ,contw 
+03ac 6800c69d fetch 1 ,mem_mouse_y 
+03ad e0a08000 istore 1 ,contw 
+03ae 6801469f fetch 2 ,mem_mouse_z 
+03af e0a10000 istore 2 ,contw 
+03b0 da200007 arg 7 ,rega 
+03b1 20404d63 call hid_malloc_tx_buff 
+03b2 6801424e fetch 2 ,mem_hid_int_remote_cid 
+03b3 e0a10000 istore 2 ,contw 
+03b4 580002a1 setarg 0x02a1 
+03b5 e0a10000 istore 2 ,contw 
+03b6 6802ccdf fetch 5 ,mem_mouse_bt_boot_data 
+03b7 e0a28000 istore 5 ,contw 
+03b8 20600000 rtn 
+
+p_mouse_bt_send_customer_packet:
+03b9 6800cd9a fetch 1 ,mem_customer_data_trigger 
+03ba 203a03c6 branch p_mouse_bt_release_customer_data ,blank 
+03bb 68044d89 fetch 8 ,mem_customer_key_press + 1 
+
+p_mouse_bt_send_customer_data:
+03bc 60040a9a store 8 ,mem_pdatatemp 
+03bd da20000a arg 10 ,rega 
+03be 20404d63 call hid_malloc_tx_buff 
+03bf 6801424e fetch 2 ,mem_hid_int_remote_cid 
+03c0 e0a10000 istore 2 ,contw 
+03c1 580001a1 setarg 0x01a1 
+03c2 e0a10000 istore 2 ,contw 
+03c3 68040a9a fetch 8 ,mem_pdatatemp 
+03c4 e0a40000 istore 8 ,contw 
+03c5 20600000 rtn 
+
+p_mouse_bt_release_customer_data:
+03c6 68044d92 fetch 8 ,mem_customer_key_release + 1 
+03c7 202003bc branch p_mouse_bt_send_customer_data 
+
+p_mouse_idle:
+03c8 20407e34 call ui_check_paring_button 
+03c9 204003cb call p_mouse_dpi_check 
+03ca 20203ee0 branch mouse_wheel_check 
+
+p_mouse_dpi_check:
+03cb 704df505 jam 0x05 ,mem_mouse_key_temp 
+03cc 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+03cd 6800cdf3 fetch 1 ,mem_mouse_dpikey_press_status 
+03ce 20400548 call p_mouse_check_key 
+03cf 6000cdf3 store 1 ,mem_mouse_dpikey_press_status 
+03d0 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+03d1 20400581 call p_gpio_set_input_pu 
+03d2 1a227e00 copy rega ,pdata 
+03d3 c28283d5 bbit1 5 ,p_mouse_dpi_down 
+03d4 20203d62 branch mouse_dpi_up 
+
+p_mouse_dpi_down:
+03d5 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+03d6 c1000000 rtneq dpi_button_state_down 
+03d7 7046b600 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+03d8 6800c77a fetch 1 ,mem_mouse_dpi 
+03d9 1fe0fe01 increase 1 ,pdata 
+03da 1fe17e03 and pdata ,0x03 ,pdata 
+03db 6000c77a store 1 ,mem_mouse_dpi 
+03dc 20403d7e call mouse_seting_dpi 
+
+p_mouse_store_flash_device_info:
+03dd 20400325 call p_flash_release_deep_power_down 
+03de 204002f2 call p_flash_erase_sector 
+03df 20400309 call p_mouse_information_flash_parameters 
+03e0 204002fe call p_spid_write_flash 
+03e1 204002f5 call p_wait_flash_done 
+
+p_mouse_store_random_addr_increase_count:
+03e2 204002d2 call p_spid_init_flash 
+03e3 d8400002 arg 2 ,temp 
+03e4 da2047c4 arg mem_random_addr_increase_count ,rega 
+03e5 da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
+03e6 6801c700 fetch 3 ,mem_flash_base 
+03e7 9a40fe00 iadd regb ,pdata 
+03e8 204002fe call p_spid_write_flash 
+03e9 204002f5 call p_wait_flash_done 
+03ea 2040031d call p_flash_deep_power_down 
+
+p_mouse_spi_init:
+03eb 70421276 jam 0x76 ,mem_spi_init_clk 
+03ec 20203d36 branch mouse_spi_init 
+
+p_mouse_priority_bb_event:
+03ed 1a627e00 copy regc ,pdata 
+03ee c00a03fe beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+03ef c00a8407 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+03f0 c014840a beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+03f1 c019040c beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+03f2 c020040e beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+03f3 c0020410 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+03f4 c0098410 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+03f5 c00cb3df beq bt_evt_switch_not_accept ,app_bt_role_switch 
+03f6 c0108414 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+03f7 c0008416 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+03f8 c001041b beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+03f9 c015841e beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+03fa c01c8420 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+03fb c01d0423 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+03fc c01e0425 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+03fd 2020417d branch mouse_priority_bb_event + 1 
+
+p_mouse_le_bb_event_connected:
+03fe 2040038c call p_mouse_init_sensor_reset 
+03ff 20403410 call app_ble_store_reconn_info 
+0400 704d3d01 jam 1 ,mem_mouse_le_bb_connected_flag 
+0401 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
+0402 243a0404 nbranch p_mouse_le_bb_event_connected_next ,blank 
+0403 704d4414 jam 0x14 ,mem_mouse_send_secutiry_request_timer 
+
+p_mouse_le_bb_event_connected_next:
+0404 204004c2 call p_mouse_null_enter_hibernate_disable 
+0405 2040036f call p_mouse_data_init 
+0406 202041c3 branch mouse_le_bb_event_connected 
+
+p_mouse_le_bb_disconnected:
+0407 2040042a call p_mouse_sensor_powerdown_check 
+0408 7011c7a2 jam zcode_a2 ,mem_zcode_temp_param0 
+0409 2020077a branch p_zcode_entrance 
+
+p_mouse_le_enc_info:
+
+p_app_updata_le_param:
+040a 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+040b 20207d8f branch ui_ipc_send_cmd 
+
+p_mouse_le_ll_start_encryt:
+040c 7011c7b3 jam zcode_b3 ,mem_zcode_temp_param0 
+040d 2020077a branch p_zcode_entrance 
+
+p_mouse_le_conn_param_update_rsp_recieved:
+040e 7011c7a1 jam zcode_a1 ,mem_zcode_temp_param0 
+040f 2020077a branch p_zcode_entrance 
+
+p_mouse_bb_event_reconn_timeout:
+
+p_mouse_bb_event_reconn_failed:
+0410 7011c7a3 jam zcode_a3 ,mem_zcode_temp_param0 
+0411 2020077a branch p_zcode_entrance 
+
+p_mouse_irtual_cable_unplug:
+0412 7011c7b5 jam zcode_b5 ,mem_zcode_temp_param0 
+0413 2020077a branch p_zcode_entrance 
+
+p_mouse_sniff_not_accept:
+0414 7011c7b1 jam zcode_b1 ,mem_zcode_temp_param0 
+0415 2020077a branch p_zcode_entrance 
+
+p_mouse_bb_event_connected:
+0416 2040038c call p_mouse_init_sensor_reset 
+0417 204004c2 call p_mouse_null_enter_hibernate_disable 
+0418 204004e9 call p_mouse_discovey_led_blink_off 
+0419 7049e400 jam 0 ,mem_mouse_send_switch_req_timer 
+041a 202042ca branch mouse_stop_discovery 
+
+p_mouse_bb_event_disconnected:
+041b 2040042a call p_mouse_sensor_powerdown_check 
+041c 7011c7b4 jam zcode_b4 ,mem_zcode_temp_param0 
+041d 2020077a branch p_zcode_entrance 
+
+p_mouse_enter_sniff_check:
+041e 7011c7b2 jam zcode_b2 ,mem_zcode_temp_param0 
+041f 2020077a branch p_zcode_entrance 
+
+p_mouse_24g_pairing_complete:
+0420 2040038c call p_mouse_init_sensor_reset 
+0421 7011c792 jam zcode_92 ,mem_zcode_temp_param0 
+0422 2020077a branch p_zcode_entrance 
+
+p_mouse_24g_attempt_fail:
+0423 7011c761 jam zcode_61 ,mem_zcode_temp_param0 
+0424 2020077a branch p_zcode_entrance 
+
+p_mouse_24g_attempt_success:
+0425 2040038c call p_mouse_init_sensor_reset 
+0426 20203f8d branch mouse_no_data_timer_init 
+
+p_mouse_before_hibernate:
+0427 2040042a call p_mouse_sensor_powerdown_check 
+0428 7011c7a4 jam zcode_a4 ,mem_zcode_temp_param0 
+0429 2020077a branch p_zcode_entrance 
+
+p_mouse_sensor_powerdown_check:
+042a 6800ccd9 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+042b 207a0000 rtn blank 
+042c 704cd900 jam 0 ,mem_mouse_init_sensor_reset_flag 
+
+p_mouse_sensor_powerdown:
+042d 204002b4 call p_mouse_init_sunt 
+042e 58000006 setarg 0x06 
+042f 20406414 call twspi_read 
+0430 1fe1fe08 or pdata ,0x08 ,pdata 
+0431 1fed7e00 lshift8 pdata ,pdata 
+0432 1fe0fe06 add pdata ,0x06 ,pdata 
+0433 20206413 branch twspi_write 
+
+p_mouse_bb_event_timer:
+0434 20400502 call p_mouse_adc_read 
+0435 204004c5 call p_mouse_multi_led_blink_timer 
+0436 20400499 call p_mouse_wheel_trigger_timer 
+0437 204004b8 call p_mouse_null_enter_hibernate_timer 
+0438 2040049e call p_mouse_bt_discovery_check 
+0439 20404234 call mouse_check_discovery_timeout_timer 
+043a 20400444 call p_mouse_select_device 
+043b 20400492 call p_mouse_g24_long_sleep_param_update_timer 
+043c 2040047c call p_mouse_check_direct_timeout_timer 
+043d 20400479 call p_mouse_le_enable_att_list_timer 
+043e 20400484 call p_mouse_le_current_mult_update_timer 
+043f 2040048a call p_le_send_smp_security_request_timer 
+0440 20400471 call p_mouse_send_switch_req_timer 
+0441 20404231 call mouse_check_hid_handshake_timer 
+0442 20400474 call p_mouse_bt_check_sniff_req_timeout_timer 
+0443 2020423a branch mouse_check_no_data_timeout_timer 
+
+p_mouse_select_device:
+
+p_mouse_select_device_by_button:
+0444 20400452 call p_mouse_pb_button_check 
+0445 20208463 branch p_mouse_select_device_button_down ,true 
+
+p_mouse_select_device_button_up:
+0446 6800cd47 fetch 1 ,mem_mouse_select_device_button_wakeup_flag 
+0447 243a045f nbranch p_mouse_select_button_wakeup_firstup ,blank 
+0448 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+0449 c1008000 rtneq dpi_button_state_up 
+044a 7046d901 jam dpi_button_state_up ,mem_select_device_button_statue 
+044b 704cff01 jam on ,mem_mouse_multi_led_blink_enable 
+044c 6800cd46 fetch 1 ,mem_mouse_long_button_select_device 
+044d 203a045d branch p_mouse_long_button_state_clear ,blank 
+
+p_mouse_ready_reconnection_by_button:
+044e 20400456 call p_mouse_switch_device_flag 
+044f 7041bd00 jam 0 ,mem_link_key_exists 
+0450 204003dd call p_mouse_store_flash_device_info 
+0451 20204378 branch mouse_ready_reconnection_by_button_next 
+
+p_mouse_pb_button_check:
+0452 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+0453 204067fb call gpio_config_input 
+0454 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+0455 2020681d branch gpio_get_bit 
+
+p_mouse_switch_device_flag:
+0456 6808c720 fetcht 1 ,mem_device_flag 
+0457 18408401 increase 1 ,temp 
+0458 6800c6d2 fetch 1 ,mem_device_number 
+0459 98467c00 isub temp ,null 
+045a 244143cc ncall mouse_select_device_count_clean ,positive 
+045b 6008c720 storet 1 ,mem_device_flag 
+045c 20600000 rtn 
+
+p_mouse_long_button_state_clear:
+045d 704d46ff jam 0xff ,mem_mouse_long_button_select_device 
+045e 20600000 rtn 
+
+p_mouse_select_button_wakeup_firstup:
+045f 704d4700 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+0460 7046d901 jam dpi_button_state_up ,mem_select_device_button_statue 
+0461 704cff01 jam on ,mem_mouse_multi_led_blink_enable 
+0462 20600000 rtn 
+
+p_mouse_select_device_button_down:
+0463 68014682 fetch 2 ,mem_ui_state_map 
+0464 c2858466 bbit1 ui_state_ble_adv ,p_mouse_select_device_button_down_next 
+0465 704cff00 jam off ,mem_mouse_multi_led_blink_enable 
+
+p_mouse_select_device_button_down_next:
+0466 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+0467 c1000000 rtneq dpi_button_state_down 
+0468 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
+0469 68014208 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+046a c3850000 rtnbit1 app_disc_pb_button 
+046b 6800c720 fetch 1 ,mem_device_flag 
+046c c1808000 rtnne mode_bt_device1 
+
+p_mouse_pb_button_2ble_disconnect:
+046d 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+046e 79207e0a set1 app_disc_pb_button ,pdata 
+046f 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0470 20204386 branch mouse_disconnect 
+
+p_mouse_send_switch_req_timer:
+0471 da6049e4 arg mem_mouse_send_switch_req_timer ,regc 
+0472 da40637a arg host_create_conn_resend ,regb 
+0473 2020336d branch timer_single_step 
+
+p_mouse_bt_check_sniff_req_timeout_timer:
+0474 da604ce4 arg mem_mouse_bt_send_first_package_timer ,regc 
+0475 da400477 arg p_mouse_bt_send_first_package ,regb 
+0476 2020336d branch timer_single_step 
+
+p_mouse_bt_send_first_package:
+0477 704ce501 jam 1 ,mem_mouse_bt_send_first_package_flag 
+0478 20600000 rtn 
+
+p_mouse_le_enable_att_list_timer:
+0479 da6046c6 arg mem_le_start_encrypt_timer ,regc 
+047a da403d60 arg mouse_le_write_enable ,regb 
+047b 2020336d branch timer_single_step 
+
+p_mouse_check_direct_timeout_timer:
+047c da6046ae arg mem_mouse_direct_timer ,regc 
+047d da40047f arg p_mouse_check_direct_timeout ,regb 
+047e 20203374 branch timer_single_step_2b 
+
+p_mouse_check_direct_timeout:
+047f 6800cd3e fetch 1 ,mem_mouse_fast_conn_flag 
+0480 c07f84ac beq 0xff ,p_mouse_long_button_bt_discovery 
+0481 6800cd09 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0482 247a0000 nrtn blank 
+0483 20204266 branch mouse_check_direct_timeout 
+
+p_mouse_le_current_mult_update_timer:
+0484 da604d36 arg mem_mouse_le_current_mult_timer ,regc 
+0485 da400487 arg p_mouse_le_current_mult_reinit ,regb 
+0486 2020336d branch timer_single_step 
+
+p_mouse_le_current_mult_reinit:
+0487 6800c7c7 fetch 1 ,mem_lpm_mult_init 
+0488 6000c172 store 1 ,mem_lpm_mult 
+0489 20200497 branch p_mouse_long_mult_flag_enable 
+
+p_le_send_smp_security_request_timer:
+048a 6800cd3d fetch 1 ,mem_mouse_le_bb_connected_flag 
+048b 207a0000 rtn blank 
+048c da604d44 arg mem_mouse_send_secutiry_request_timer ,regc 
+048d da40048f arg p_le_pairing_sm_start_check ,regb 
+048e 2020336d branch timer_single_step 
+
+p_le_pairing_sm_start_check:
+048f 6800cd45 fetch 1 ,mem_le_send_security_request_flag 
+0490 247a0000 nrtn blank 
+0491 20205bf5 branch le_pairing_sm_start 
+
+p_mouse_g24_long_sleep_param_update_timer:
+0492 da604d37 arg mem_24g_long_sleep_param_update_timer ,regc 
+0493 da400495 arg p_mouse_g24_long_sleep_normal_param ,regb 
+0494 2020336d branch timer_single_step 
+
+p_mouse_g24_long_sleep_normal_param:
+0495 58124f80 setarg g24_long_sleep_step3 
+0496 6001ceb2 store 3 ,mem_24g_enter_hibernate 
+
+p_mouse_long_mult_flag_enable:
+0497 704d3501 jam 1 ,mem_mouse_long_mult_flag 
+0498 20600000 rtn 
+
+p_mouse_wheel_trigger_timer:
+0499 da6049e2 arg mem_mouse_wheel_trigger_timer ,regc 
+049a da40049c arg p_mouse_wheel_trigger_disable ,regb 
+049b 2020336d branch timer_single_step 
+
+p_mouse_wheel_trigger_disable:
+049c 7049e100 jam 0 ,mem_mouse_wheel_trigger 
+049d 20600000 rtn 
+
+p_mouse_bt_discovery_check:
+
+p_mouse_bt_discovery_commbination_key:
+049e 20400452 call p_mouse_pb_button_check 
+049f 202084a5 branch p_mouse_bt_discovery_commbination_key_down ,true 
+04a0 20400540 call p_mouse_check_key_gpio 
+04a1 c00384a5 beq mouse_lmr_button ,p_mouse_bt_discovery_commbination_key_down 
+
+p_mouse_bt_discovery_commbination_key_up:
+04a2 204043a9 call mouse_bt_discovery_commbination_key_up 
+04a3 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
+04a4 202043d2 branch mouse_disable_function_flag 
+
+p_mouse_bt_discovery_commbination_key_down:
+04a5 20400581 call p_gpio_set_input_pu 
+04a6 7047a028 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+04a7 204004a9 call p_mouse_bt_discovery_timer 
+04a8 202043b0 branch mouse_bt_discovery_commbination_key_down + 1 
+
+p_mouse_bt_discovery_timer:
+04a9 da6046da arg mem_combination_ui_button_count ,regc 
+04aa da4004ac arg p_mouse_long_button_bt_discovery ,regb 
+04ab 2020336d branch timer_single_step 
+
+p_mouse_long_button_bt_discovery:
+04ac 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+04ad c3848000 rtnbit1 mouse_bt_discovery_button_long_down_flag 
+04ae 704d4600 jam 0 ,mem_mouse_long_button_select_device 
+04af 68014682 fetch 2 ,mem_ui_state_map 
+04b0 2feffe0b isolate1 ui_state_ble_adv ,pdata 
+04b1 2040c2d4 call mouse_stop_le_adv ,true 
+04b2 68014682 fetch 2 ,mem_ui_state_map 
+04b3 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+04b4 2040c392 call mouse_cancel_reconnect ,true 
+04b5 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
+04b6 204043ce call mouse_enable_function_flag 
+04b7 202043b8 branch mouse_long_button_bt_discovry 
+
+p_mouse_null_enter_hibernate_timer:
+04b8 6800cd09 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+04b9 247a0000 nrtn blank 
+04ba 6800c79f fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+04bb 207a0000 rtn blank 
+04bc da6047a0 arg mem_mouse_null_enter_hibernate_timer ,regc 
+04bd da4004bf arg p_mouse_null_enter_hibernate ,regb 
+04be 2020336d branch timer_single_step 
+
+p_mouse_null_enter_hibernate:
+04bf 70479f00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+
+p_app_enter_hibernate:
+04c0 2040042d call p_mouse_sensor_powerdown 
+04c1 2020340a branch app_enter_hibernate 
+
+p_mouse_null_enter_hibernate_disable:
+04c2 70479f00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+04c3 7047a000 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+04c4 20600000 rtn 
+
+p_mouse_multi_led_blink_timer:
+04c5 6800ccff fetch 1 ,mem_mouse_multi_led_blink_enable 
+04c6 207a0000 rtn blank 
+04c7 6800cd02 fetch 1 ,mem_mouse_multi_led_type 
+04c8 c00004cb beq multi_led_on ,p_mouse_multi_led_type_on 
+04c9 c00084d5 beq multi_led_blink ,p_mouse_multi_led_type_blink 
+04ca 20600000 rtn 
+
+p_mouse_multi_led_type_on:
+04cb 204004de call p_mouse_multi_led_on 
+04cc 6800cd07 fetch 1 ,mem_mouse_multi_led_on_timer 
+04cd 1fe0fe01 increase 1 ,pdata 
+04ce 6000cd07 store 1 ,mem_mouse_multi_led_on_timer 
+04cf 6808cd03 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
+04d0 98467c00 isub temp ,null 
+04d1 204284d3 call p_mouse_multi_led_off_poweron2s ,zero 
+04d2 20600000 rtn 
+
+p_mouse_multi_led_off_poweron2s:
+04d3 704d0900 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+04d4 202004ef branch p_mouse_multi_led_off 
+
+p_mouse_multi_led_type_blink:
+04d5 da604d05 arg mem_mouse_multi_led_blink_timer ,regc 
+04d6 da4004d8 arg p_mouse_multi_led_type_blink_timeout ,regb 
+04d7 2020336d branch timer_single_step 
+
+p_mouse_multi_led_type_blink_timeout:
+04d8 6800cd04 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+04d9 6000cd05 store 1 ,mem_mouse_multi_led_blink_timer 
+
+p_mouse_multi_led_blink_count_no_limited:
+04da 6800cd01 fetch 1 ,mem_mouse_multi_led_state 
+04db c00084ef beq on ,p_mouse_multi_led_off 
+04dc c00004de beq off ,p_mouse_multi_led_on 
+04dd 20600000 rtn 
+
+p_mouse_multi_led_on:
+04de 704d0101 jam on ,mem_mouse_multi_led_state 
+04df 6800c720 fetch 1 ,mem_device_flag 
+04e0 c00104e5 beq mode_24g_device ,p_mouse_multi_down_led_on 
+
+p_mouse_multi_up_led_on:
+04e1 6808cd00 fetcht 1 ,mem_mouse_multi_led_gpio 
+04e2 2040680e call gpio_config_output 
+04e3 6808cd00 fetcht 1 ,mem_mouse_multi_led_gpio 
+04e4 20206829 branch gpio_out_active 
+
+p_mouse_multi_down_led_on:
+04e5 6808cd00 fetcht 1 ,mem_mouse_multi_led_gpio 
+04e6 2040680e call gpio_config_output 
+04e7 6808cd00 fetcht 1 ,mem_mouse_multi_led_gpio 
+04e8 20206825 branch gpio_out_inactive 
+
+p_mouse_discovey_led_blink_off:
+04e9 6800cd07 fetch 1 ,mem_mouse_multi_led_on_timer 
+04ea 247a0000 nrtn blank 
+04eb 6800cd09 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+04ec 247a0000 nrtn blank 
+
+p_mouse_multi_led_blink_off:
+04ed 58000000 setarg 0 
+04ee 6001cd05 store 3 ,mem_mouse_multi_led_blink_timer 
+
+p_mouse_multi_led_off:
+04ef 6800cd06 fetch 1 ,mem_mouse_multi_led_blink_count 
+04f0 243a04f3 nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
+04f1 704cff00 jam 0 ,mem_mouse_multi_led_blink_enable 
+04f2 704d0200 jam 0 ,mem_mouse_multi_led_type 
+
+p_mouse_multi_led_off_wait_blink_over:
+04f3 704d0700 jam 0 ,mem_mouse_multi_led_on_timer 
+04f4 704d0100 jam off ,mem_mouse_multi_led_state 
+04f5 202000d6 branch p_mouse_multi_led_gpio_set_float 
+
+p_mouse_mode_bt_device1_multi_led_on:
+
+p_mouse_mode_24g_device_multi_led_on:
+04f6 704d0901 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+04f7 704cff01 jam on ,mem_mouse_multi_led_blink_enable 
+04f8 704d0200 jam multi_led_on ,mem_mouse_multi_led_type 
+04f9 704d0700 jam 0 ,mem_mouse_multi_led_on_timer 
+04fa 20600000 rtn 
+
+p_mouse_discovery_multi_led_blink:
+04fb 704d0900 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+04fc 704d0402 jam 2 ,mem_mouse_multi_led_blink_timer_init 
+04fd 704d0601 jam 1 ,mem_mouse_multi_led_blink_count 
+
+p_mouse_multi_led_blink_enable:
+04fe 704d0502 jam 2 ,mem_mouse_multi_led_blink_timer 
+04ff 704cff01 jam on ,mem_mouse_multi_led_blink_enable 
+0500 704d0201 jam multi_led_blink ,mem_mouse_multi_led_type 
+0501 20600000 rtn 
+
+p_mouse_adc_read:
+0502 68014d06 fetch 2 ,mem_mouse_multi_led_blink_count 
+0503 247a0000 nrtn blank 
+0504 da6046ce arg mem_adc_read_timer ,regc 
+0505 da400507 arg p_mouse_adc_read_timeout ,regb 
+0506 2020336d branch timer_single_step 
+
+p_mouse_adc_read_timeout:
+0507 7046ce0a jam 10 ,mem_adc_read_timer 
+0508 204068eb call adc_set_mode 
+0509 20406908 call vdd_calculate_by_mode 
+050a 1fe0fe1c add pdata ,0x1c ,pdata 
+050b 6001470f store 2 ,mem_mouse_vdd_now_vol 
+050c da204709 arg mem_mouse_vdd_calculate_set ,rega 
+
+p_adc_bat_percent_lowpower_out:
+050d ea240000 ifetch 8 ,rega 
+050e 60040a9a store 8 ,mem_pdatatemp 
+050f 68090a9c fetcht 2 ,mem_pdatatemp + 2 
+0510 68010aa0 fetch 2 ,mem_pdatatemp + 6 
+0511 98467c00 isub temp ,null 
+0512 242104c0 nbranch p_app_enter_hibernate ,positive 
+0513 20600000 rtn 
+
+p_mouse_seting_dpi:
+
+p_mouse_seting_sensor_type:
+0514 6800c6e0 fetch 1 ,mem_config_sensor_type 
+0515 c0030522 beq p3065_xy ,p_mouse_seting_3065xy_dpi 
+0516 c0010522 beq ka8 ,p_mouse_seting_3065xy_dpi 
+
+p_mouse_seting_3205_dpi:
+0517 6800c77a fetch 1 ,mem_mouse_dpi 
+0518 1fe67c01 sub pdata ,mouse_dpi_level2 ,null 
+0519 2042851e call p_mouse_3205_dpi_recount ,zero 
+051a 6800c77a fetch 1 ,mem_mouse_dpi 
+051b c0000520 beq mouse_dpi_level1 ,p_mouse_3205_set_cpi1 
+051c c001bd8c beq mouse_dpi_level4 ,mouse_set_cpi3 
+051d 20203d88 branch mouse_set_cpi2 
+
+p_mouse_3205_dpi_recount:
+051e 70477a02 jam mouse_dpi_level3 ,mem_mouse_dpi 
+051f 20600000 rtn 
+
+p_mouse_3205_set_cpi1:
+0520 6800c77f fetch 1 ,mem_320x_dpi_1 
+0521 2020052a branch p_mouse_dpi_store 
+
+p_mouse_seting_3065xy_dpi:
+0522 6800c77a fetch 1 ,mem_mouse_dpi 
+0523 1fe67c01 sub pdata ,mouse_dpi_level2 ,null 
+0524 2042851e call p_mouse_3205_dpi_recount ,zero 
+0525 6800c77a fetch 1 ,mem_mouse_dpi 
+0526 c000052c beq mouse_dpi_level1 ,p_mouse_3065xy_set_cpi1 
+0527 c001852f beq mouse_dpi_level4 ,p_mouse_3065xy_set_cpi4 
+
+p_mouse_3065xy_set_cpi3:
+0528 6800c781 fetch 1 ,mem_320x_dpi_3 
+0529 1fe0ffff increase -1 ,pdata 
+
+p_mouse_dpi_store:
+052a 6000c6b5 store 1 ,mem_mouse_cpi_count 
+052b 20203dc1 branch mouse_p3205_dpi + 3 
+
+p_mouse_3065xy_set_cpi1:
+052c 6800c77f fetch 1 ,mem_320x_dpi_1 
+052d 1fe0ffff increase -1 ,pdata 
+052e 2020052a branch p_mouse_dpi_store 
+
+p_mouse_3065xy_set_cpi4:
+052f 6800c782 fetch 1 ,mem_320x_dpi_4 
+0530 1fe0ffff increase -1 ,pdata 
+0531 2020052a branch p_mouse_dpi_store 
+
+p_mouse_motion:
+0532 78547c00 disable user 
+0533 58000000 setarg 0 
+0534 6003469b store 6 ,mem_mouse_x 
+0535 2040059d call p_mouse_cheak_sensor_data 
+0536 20404079 call mouse_zwheel 
+0537 2040053e call p_mouse_key 
+0538 2434053b nbranch p_mouse_motion_nodata ,user 
+0539 2040079b call p_drawing_optima 
+053a 20203fa0 branch mouse_motion + 9 
+
+p_mouse_motion_nodata:
+053b 204007a4 call p_drawing_optima_init 
+053c 704d1100 jam 0 ,mem_low_power_check_count 
+053d 20600000 rtn 
+
+p_mouse_key:
+053e 20400540 call p_mouse_check_key_gpio 
+053f 2020409a branch mouse_key + 1 
+
+p_mouse_check_key_gpio:
+0540 6800c69a fetch 1 ,mem_mouse_key 
+0541 1fe22200 copy pdata ,rega 
+0542 20400561 call p_mouse_check_lkey_gpio 
+0543 20400567 call p_mouse_check_rkey_gpio 
+0544 2040056d call p_mouse_check_mkey_gpio 
+0545 20400573 call p_mouse_check_fwkey_gpio 
+0546 1a227e00 copy rega ,pdata 
+0547 20600000 rtn 
+
+p_mouse_check_key:
+0548 6000cdf6 store 1 ,mem_mouse_key_status 
+0549 1fe3fe00 lshift pdata ,pdata 
+054a 1fe22400 copy pdata ,regb 
+054b 18422600 copy temp ,regc 
+054c 6800cdf5 fetch 1 ,mem_mouse_key_temp 
+054d 1fe67c02 sub pdata ,0x02 ,null 
+054e 20410581 call p_gpio_set_input_pu ,positive 
+054f 2441058c ncall p_gpio_set_input_pd ,positive 
+0550 1a620400 copy regc ,temp 
+0551 2040681d call gpio_get_bit 
+0552 7920a400 setflag true ,0 ,regb 
+0553 2040055b call p_mouse_check_press 
+0554 1a417e07 and regb ,0x07 ,pdata 
+0555 6808cdf5 fetcht 1 ,mem_mouse_key_temp 
+0556 18420e00 copy temp ,queue 
+0557 18467c02 sub temp ,0x02 ,null 
+0558 c0038586 beq 0x07 ,p_mouse_key_press 
+0559 c0000589 beq 0x00 ,p_mouse_key_release 
+055a 20600000 rtn 
+
+p_mouse_check_press:
+055b 6808cdf6 fetcht 1 ,mem_mouse_key_status 
+055c 18410401 and_into 0x01 ,temp 
+055d 1a417e01 and regb ,0x01 ,pdata 
+055e 98467c00 isub temp ,null 
+055f 24228357 nbranch p_mouse_le_current_mult_update ,zero 
+0560 20600000 rtn 
+
+p_mouse_check_lkey_gpio:
+0561 704df500 jam 0x00 ,mem_mouse_key_temp 
+0562 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+0563 6800cdee fetch 1 ,mem_mouse_lkey_press_status 
+0564 20400548 call p_mouse_check_key 
+0565 6000cdee store 1 ,mem_mouse_lkey_press_status 
+0566 20600000 rtn 
+
+p_mouse_check_rkey_gpio:
+0567 704df501 jam 0x01 ,mem_mouse_key_temp 
+0568 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+0569 6800cdef fetch 1 ,mem_mouse_rkey_press_status 
+056a 20400548 call p_mouse_check_key 
+056b 6000cdef store 1 ,mem_mouse_rkey_press_status 
+056c 20600000 rtn 
+
+p_mouse_check_mkey_gpio:
+056d 704df502 jam 0x02 ,mem_mouse_key_temp 
+056e 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+056f 6800cdf0 fetch 1 ,mem_mouse_mkey_press_status 
+0570 20400548 call p_mouse_check_key 
+0571 6000cdf0 store 1 ,mem_mouse_mkey_press_status 
+0572 20600000 rtn 
+
+p_mouse_check_fwkey_gpio:
+0573 704d8700 jam 0 ,mem_customer_key 
+0574 704df504 jam 0x04 ,mem_mouse_key_temp 
+0575 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+0576 6800cdf2 fetch 1 ,mem_mouse_fwkey_press_status 
+0577 20400548 call p_mouse_check_key 
+0578 6000cdf2 store 1 ,mem_mouse_fwkey_press_status 
+0579 1a227e00 copy rega ,pdata 
+057a c2820592 bbit1 4 ,p_customer_key_press 
+057b 20400595 call p_customer_key_release 
+
+p_mouse_check_fwkey_gpio_exit:
+057c 1a227e00 copy rega ,pdata 
+057d 1a2122ef and_into 0xef ,rega 
+057e 6800cd9a fetch 1 ,mem_customer_data_trigger 
+057f 6000cd9b store 1 ,mem_customer_data_trigger_last 
+0580 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+
+p_gpio_set_input_pu:
+0581 79200407 set1 gpio_active_bit ,temp 
+
+p_gpio_set_input_pu1:
+0582 d8a08078 arg core_gpio_pu0 ,contw 
+0583 20406830 call gpio_set_bit 
+0584 793f8407 set0 gpio_active_bit ,temp 
+0585 20200590 branch p_gpio_set_input_pd4 
+
+p_mouse_key_press:
+0586 2021058a branch p_qset1_rega ,positive 
+
+p_qset0_rega:
+0587 f93fa200 qset0 rega 
+0588 20600000 rtn 
+
+p_mouse_key_release:
+0589 20210587 branch p_qset0_rega ,positive 
+
+p_qset1_rega:
+058a f9202200 qset1 rega 
+058b 20600000 rtn 
+
+p_gpio_set_input_pd:
+058c 793f8407 set0 gpio_active_bit ,temp 
+058d d8a08078 arg core_gpio_pu0 ,contw 
+058e 20406830 call gpio_set_bit 
+058f 79200407 set1 gpio_active_bit ,temp 
+
+p_gpio_set_input_pd4:
+0590 d8a0807c arg core_gpio_pd0 ,contw 
+0591 2020680a branch gpio_set_high_impedance + 4 
+
+p_customer_key_press:
+0592 704d9a01 jam 1 ,mem_customer_data_trigger 
+0593 20400598 call p_customer_key_need_send 
+0594 2020057c branch p_mouse_check_fwkey_gpio_exit 
+
+p_customer_key_release:
+0595 704d9a00 jam 0 ,mem_customer_data_trigger 
+0596 6800cd9b fetch 1 ,mem_customer_data_trigger_last 
+0597 207a0000 rtn blank 
+
+p_customer_key_need_send:
+0598 704d8701 jam 1 ,mem_customer_key 
+0599 20207fe7 branch enable_user 
+
+p_mouse_select_device_button_gpio_set_suspend:
+059a 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+
+p_mouse_set_gpio_suspend:
+059b 793f8407 set0 gpio_active_bit ,temp 
+059c 20200582 branch p_gpio_set_input_pu1 
+
+p_mouse_cheak_sensor_data:
+059d 6800c6e0 fetch 1 ,mem_config_sensor_type 
+059e c00405a2 beq p8009 ,p_mouse_p8009_sensor_motion 
+
+p_mouse_p32xx_sensor_motion:
+059f 20403fc0 call mouse_clear_sensor_data 
+05a0 78547c00 disable user 
+05a1 20203fe7 branch mouse_p32xx_sensor_motion_2 
+
+p_mouse_p8009_sensor_motion:
+05a2 20403fc0 call mouse_clear_sensor_data 
+05a3 78547c00 disable user 
+
+p_mouse_p32xx_sensor_motion_1:
+05a4 58000002 setarg pan_reg_motion_staus 
+05a5 20406414 call twspi_read 
+05a6 c4038000 rtnbit0 7 
+05a7 58000008 setarg pan_reg_opration_state 
+05a8 20406414 call twspi_read 
+05a9 203a3fed branch mouse_p32xx_sensor_motion_1 + 3 ,blank 
+05aa 58000000 setarg 0 
+05ab 6003469b store 6 ,mem_mouse_x 
+05ac 20600000 rtn 
+
+p_mouse_bb_event_discovery_btn:
+05ad 204004c2 call p_mouse_null_enter_hibernate_disable 
+05ae 280ffe26 isolate1 mark_24g ,mark 
+05af 204081c4 call p_g24_check_51cmd_stop_24g ,true 
+05b0 2020426d branch mouse_bb_event_discovery_btn + 1 
+
+p_mouse_start_discovery:
+05b1 7011c750 jam zcode_50 ,mem_zcode_temp_param0 
+05b2 2020077a branch p_zcode_entrance 
+
+p_mouse_load_random_addr_increase_count:
+05b3 20400325 call p_flash_release_deep_power_down 
+05b4 d8400002 arg 2 ,temp 
+05b5 da2047c4 arg mem_random_addr_increase_count ,rega 
+05b6 da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
+05b7 6801c700 fetch 3 ,mem_flash_base 
+05b8 9a40fe00 iadd regb ,pdata 
+05b9 20206562 branch spid_read_flash 
+
+p_le_adv_data_update:
+05ba d8a0437b arg mem_le_adv_data + 11 ,contw 
+05bb df200013 arg 19 ,loopcnt 
+05bc 20407f01 call memcpy 
+05bd 202057b8 branch le_modified_name_adv 
+
+p_mouse_stop_discovery:
+05be 204004e9 call p_mouse_discovey_led_blink_off 
+05bf 704cd901 jam 1 ,mem_mouse_init_sensor_reset_flag 
+05c0 2040038c call p_mouse_init_sensor_reset 
+05c1 202042cb branch mouse_stop_discovery + 1 
+
+p_le_slave_match:
+05c2 6800c50f fetch 1 ,mem_le_md_count 
+05c3 1fe0fe01 pincrease 1 
+05c4 6000c50f store 1 ,mem_le_md_count 
+05c5 c0065395 beq le_md_max_count ,le_slave_cont 
+05c6 204055aa call le_acknowledge 
+05c7 2040561e call le_prepare_tx 
+05c8 2040071c call power_ctrl_start 
+05c9 2020538f branch le_slave_match + 7 
+
+p_le_next_adv_channel:
+05ca 68008016 fetch 1 ,mem_le_ch_mapped 
+05cb 1fe0fe01 increase 1 ,pdata 
+05cc 60008016 store 1 ,mem_le_ch_mapped 
+05cd c1940000 rtnne 40 
+05ce 70001625 jam 37 ,mem_le_ch_mapped 
+05cf 20600000 rtn 
+
+p_le_receive_skip:
+05d0 204029bb call save_rssi 
+05d1 20400237 call p_rssi_signal 
+05d2 202054a3 branch le_receive_skip + 2 
+
+p_le_update_param:
+05d3 7011c740 jam zcode_40 ,mem_zcode_temp_param0 
+05d4 2020077a branch p_zcode_entrance 
+
+p_le_update_channel_map:
+05d5 7011c741 jam zcode_41 ,mem_zcode_temp_param0 
+05d6 2020077a branch p_zcode_entrance 
+
+p_le_prepare_tx:
+05d7 68008456 fetch 1 ,mem_le_arq 
+05d8 c28285f7 bbit1 wak ,p_le_prepare_tx_wak 
+05d9 20400716 call power_ctrl_pac_succ_incrs 
+05da 6800c78e fetch 1 ,mem_empty_count 
+05db 243a05e1 nbranch p_le_send_empyt ,blank 
+05dc 6800843f fetch 1 ,mem_le_state 
+05dd c30205e5 bbit0 lestate_encryption ,p_le_tx_4 
+05de 680082da fetch 1 ,mem_le_rxbuf + 1 
+05df 203a05e5 branch p_le_tx_4 ,blank 
+05e0 20205664 branch le_send_empty 
+
+p_le_send_empyt:
+05e1 6800c78e fetch 1 ,mem_empty_count 
+05e2 1fe0ffff increase -1 ,pdata 
+05e3 6000c78e store 1 ,mem_empty_count 
+05e4 20205664 branch le_send_empty 
+
+p_le_tx_4:
+05e5 6800c4c4 fetch 1 ,mem_le_pairing_state 
+05e6 c08285e8 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+05e7 70478e03 jam 3 ,mem_empty_count 
+
+p_in_le_tx_4:
+05e8 20405892 call le_fifo_check_nearly_full 
+05e9 205a0378 call p_mouse_data_pull ,blank 
+05ea 20205622 branch le_prepare_tx + 4 
+
+p_le_check_tx_retransmit_setmd:
+05eb 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+05ec 1fe17e03 and pdata ,0x03 ,pdata 
+05ed c1818000 rtnne 0x03 
+05ee 6800c7c3 fetch 1 ,mem_mouse_data_queue_num 
+05ef 207a0000 rtn blank 
+05f0 6800c3dd fetch 1 ,mem_le_txlen 
+05f1 207a0000 rtn blank 
+05f2 6800c3dc fetch 1 ,mem_le_txheader 
+05f3 79207e04 set1 md ,pdata 
+05f4 6000c3dc store 1 ,mem_le_txheader 
+05f5 20405650 call le_set_md 
+05f6 20600000 rtn 
+
+p_le_prepare_tx_wak:
+05f7 204005eb call p_le_check_tx_retransmit_setmd 
+
+p_le_power_ctrl_pac_succ_decrs:
+
+power_ctrl_pac_succ_decrs:
+05f8 6800cfbc fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+05f9 1fe67c02 sub pdata ,2 ,null 
+05fa 2441071a ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+05fb 6800cfbc fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+05fc c1000000 rtneq 0 
+05fd 1fe0ffff increase -1 ,pdata 
+05fe 6000cfbc store 1 ,mem_power_ctrl_pac_succ_cnt 
+05ff 20600000 rtn 
+
+p_mouse_le_reconn_write_enable_timer_reinit:
+0600 6800c7a1 fetch 1 ,mem_mouse_le_reconnect_flag 
+0601 207a0000 rtn blank 
+0602 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0603 1fe17e03 and pdata ,0x03 ,pdata 
+0604 c1018000 rtneq 0x03 
+0605 7046c601 jam 1 ,mem_le_start_encrypt_timer 
+0606 20600000 rtn 
+
+p_le_parse:
+0607 c6078000 rtnmark1 mark_old_packet 
+0608 20405890 call le_fifo_check_full 
+0609 247a0000 nrtn blank 
+060a 680082d9 fetch 1 ,mem_le_rxbuf 
+060b 1fe17e03 and pdata ,0x3 ,pdata 
+060c 6000c50c store 1 ,mem_le_packet_llid 
+060d e8c08000 ifetch 1 ,contr 
+060e 1fe17e1f and pdata ,0x1f ,pdata 
+060f 6000c50b store 1 ,mem_le_packet_size 
+0610 207a0000 rtn blank 
+0611 18c27e00 copy contr ,pdata 
+0612 6001450d store 2 ,mem_le_payload_ptr 
+0613 6800c50c fetch 1 ,mem_le_packet_llid 
+0614 c0018616 beq llid_le_ll ,p_le_parse_ll 
+0615 2020568d branch le_parse_l2cap 
+
+p_le_parse_ll:
+0616 680082db fetch 1 ,mem_le_rxbuf + 2 
+0617 c000061a beq ll_connection_update_req ,p_le_parse_connection_update_req 
+0618 c0008621 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+0619 20205c65 branch le_parse_ll + 1 
+
+p_le_parse_connection_update_req:
+061a 20405c7b call le_parse_connection_update_req 
+061b 6800cd48 fetch 1 ,mem_mouse_le_updata_not_accepted_flag 
+061c 207a0000 rtn blank 
+
+p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
+061d 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+061e 6000c172 store 1 ,mem_lpm_mult 
+061f 6000c7c7 store 1 ,mem_lpm_mult_init 
+0620 20600000 rtn 
+
+p_le_parse_channel_map_req:
+0621 e8c28000 ifetch 5 ,contr 
+0622 6002c3ce store 5 ,mem_le_new_map 
+0623 e8c10000 ifetch 2 ,contr 
+0624 6001045f store 2 ,mem_le_instant 
+0625 20205c8a branch le_parse_channel_map_req + 7 
+
+p_le_parse_l2cap:
+0626 e8c10000 ifetch 2 ,contr 
+0627 c002062a beq le_l2cap_cid_att ,p_le_parse_att 
+0628 c003062e beq le_l2cap_cid_smp ,p_le_parse_smp 
+0629 20205698 branch le_parse_l2cap + 11 
+
+p_le_parse_att:
+062a 20407ea5 call store_contr 
+062b 20400600 call p_mouse_le_reconn_write_enable_timer_reinit 
+062c 20407e9f call get_contr 
+062d 202058ab branch le_parse_att 
+
+p_le_parse_smp:
+062e e8c08000 ifetch 1 ,contr 
+062f c0008632 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0630 c0028634 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0631 20205af6 branch le_parse_smp + 2 
+
+p_le_parse_smp_pairing_request:
+0632 704d4501 jam 1 ,mem_le_send_security_request_flag 
+0633 20205b09 branch le_parse_smp_pairing_request 
+
+p_le_parse_smp_pairing_failed:
+0634 7011c782 jam zcode_82 ,mem_zcode_temp_param0 
+0635 2020077a branch p_zcode_entrance 
+
+p_le_adv_not_match:
+0636 68008016 fetch 1 ,mem_le_ch_mapped 
+0637 c093d6f2 bne 39 ,le_adv_loop 
+0638 2040063c call p_le_adv_random_delay 
+0639 d8e00000 arg le_adv_interval_timer ,queue 
+063a 68014482 fetch 2 ,mem_le_adv_interval 
+063b 20207f08 branch timer_init 
+
+p_le_adv_random_delay:
+063c 180a7e00 random pdata 
+063d d84001ff arg 0x1ff ,temp 
+063e 98417e00 iand temp ,pdata 
+063f 1fe0fefa add pdata ,250 ,pdata 
+0640 20203cbe branch delay 
+
+p_le_lpm_setmult:
+0641 7855fc00 disable wake 
+0642 20370644 branch p_le_lpm_set_mult_attempt ,attempt 
+0643 2436d806 nbranch le_lpm_lost ,match 
+
+p_le_lpm_set_mult_attempt:
+0644 20402bcb call lpm_match 
+0645 680140c1 fetch 2 ,mem_rx_window_sniff 
+0646 6001044d store 2 ,mem_le_receive_window 
+0647 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0648 2fe00603 compare 3 ,pdata ,3 
+0649 2420abde nbranch lpm_mult_short ,true 
+064a 202057fb branch le_lpm_set_mult_attempt + 3 
+
+p_le_mouse_bb_event_connect_complete:
+064b 7011c742 jam zcode_42 ,mem_zcode_temp_param0 
+064c 2020077a branch p_zcode_entrance 
+
+p_twspi_reset:
+064d 68108077 hfetch 1 ,core_gpio_out3 
+064e 1fe17efd and_into 0xfd ,pdata 
+064f 60108077 hstore 1 ,core_gpio_out3 
+0650 68188073 hfetcht 1 ,core_gpio_oe3 
+0651 18418402 or_into 0x2 ,temp 
+0652 60188073 hstoret 1 ,core_gpio_oe3 
+0653 204063ee call twspi_disable 
+0654 184104fd and_into 0xfd ,temp 
+0655 2000000d nop 13 
+0656 2040065a call p_twspi_enable 
+0657 60188073 hstoret 1 ,core_gpio_oe3 
+0658 20600000 rtn 
+
+p_spid_init:
+0659 204064dd call spid_init_common 
+
+p_twspi_enable:
+065a 68108081 hfetch 1 ,core_gpio_sel1 
+065b 79207e00 set1 0 ,pdata 
+065c 793ffe01 set0 1 ,pdata 
+065d 793ffe03 set0 3 ,pdata 
+065e 60108081 hstore 1 ,core_gpio_sel1 
+065f 20600000 rtn 
+
+p_mouse_bt_sdp_set:
+0660 58004a51 setarg mem_mouse_uuid_list 
+0661 60014575 store 2 ,mem_ui_uuid_table 
+0662 20600000 rtn 
+
+p_page_wait_fhs_reply_ok:
+0663 7011c700 jam zcode_00 ,mem_zcode_temp_param0 
+0664 2020077a branch p_zcode_entrance 
+
+p_role_switch_master:
+0665 204021c9 call role_switch_check 
+0666 24740000 nrtn user 
+
+p_wait_role_switch_anchor:
+0667 78547c00 disable user 
+0668 70001120 jam param_newconnto ,mem_newconnto_counter 
+0669 793f800b set0 mark_fhs_already_good ,mark 
+066a 793f802d set0 mark_role_switch_receive_fhs ,mark 
+
+p_roles_waitfhs_loop:
+066b 20402a4f call rf_setup_time_master_slot 
+066c 204022e6 call master_recv_packet 
+066d c5058672 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+066e 20402455 call new_conn_timeout 
+066f 243a066b nbranch p_roles_waitfhs_loop ,blank 
+0670 c516867b bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0671 202021ec branch role_switch_fail_master 
+
+p_roles_replyto_fhs:
+0672 20402a4d call rf_setup_time_slave_slot 
+0673 d8200010 arg type_id ,type 
+0674 204022dc call master_send_packet 
+0675 7920002d set1 mark_role_switch_receive_fhs ,mark 
+0676 793f800b set0 mark_fhs_already_good ,mark 
+0677 68008077 fetch 1 ,mem_amaddr 
+0678 98000800 iforce am_addr 
+0679 70001102 jam 2 ,mem_newconnto_counter 
+067a 2020066b branch p_roles_waitfhs_loop 
+
+p_roles_replyto_fhs1:
+067b 68020165 fetch 4 ,mem_clke_bt 
+067c 1fe0fe08 pincrease 8 
+067d 60020165 store 4 ,mem_clke_bt 
+067e 202021f8 branch roles_replyto_fhs + 4 
+
+p_process_dmh:
+067f c516264d bmark1 mark_first_packet ,end_of_packet 
+0680 2020258f branch process_dmh + 1 
+
+p_quit_connection_cont:
+0681 7011c743 jam zcode_43 ,mem_zcode_temp_param0 
+0682 2020077a branch p_zcode_entrance 
+
+p_prepare_tx:
+0683 68008030 fetch 1 ,mem_state 
+0684 2feffe00 isolate1 state_inconn ,pdata 
+0685 20408687 call p_bt_power_ctrl ,true 
+0686 2020248a branch prepare_tx + 1 
+
+p_bt_power_ctrl:
+0687 68008047 fetch 1 ,mem_arq 
+0688 2feffe03 isolate1 wack ,pdata 
+0689 204085f8 call power_ctrl_pac_succ_decrs ,true 
+068a 24408716 ncall power_ctrl_pac_succ_incrs ,true 
+068b 2020071c branch power_ctrl_start 
+
+p_slave_conn_recv_packet:
+068c 204024f0 call slave_receive_master_slot 
+068d 242c28f9 nbranch shutdown_radio ,sync 
+068e 204029bb call save_rssi 
+068f 20400237 call p_rssi_signal 
+0690 20202518 branch slave_conn_recv_packet + 4 
+
+p_lpm_dispatch:
+0691 c6130000 rtnmark1 mark_24g 
+0692 20402afa call lpo_calibration 
+0693 6801c16f fetch 3 ,mem_clks_per_lpo 
+0694 207a0000 rtn blank 
+0695 6800c091 fetch 1 ,mem_lpm_mode 
+0696 207a0000 rtn blank 
+0697 6800c65a fetch 1 ,mem_ssp_enable 
+0698 203a069b branch p_lpm_dispatch_next ,blank 
+0699 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+069a 207a0000 rtn blank 
+
+p_lpm_dispatch_next:
+069b 6800c4c0 fetch 1 ,mem_le_sc_calc 
+069c 247a0000 nrtn blank 
+069d 20402c3a call lpm_check_wake_lock 
+069e 247a0000 nrtn blank 
+069f 6800c040 fetch 1 ,mem_context 
+06a0 2fe00e03 compare 3 ,pdata ,0x7 
+06a1 2420ab9d nbranch lpm_dispatch_unconn ,true 
+06a2 68014042 fetch 2 ,mem_context + coffset_tsniff 
+06a3 d840ffff arg 0xffff ,temp 
+06a4 98467c00 isub temp ,null 
+06a5 20628000 rtn zero 
+06a6 20202b7d branch lpm_dispatch_next + 9 
+
+p_lpm_set_mult:
+06a7 7855fc00 disable wake 
+06a8 68008030 fetch 1 ,mem_state 
+06a9 c4008000 rtnbit0 state_insniff 
+06aa 2436abd0 nbranch lpm_not_match ,match 
+06ab 20402bcb call lpm_match 
+06ac 680140c1 fetch 2 ,mem_rx_window_sniff 
+06ad 6001003e store 2 ,mem_rx_window 
+06ae 68008047 fetch 1 ,mem_arq 
+06af c281abde bbit1 wack ,lpm_mult_short 
+06b0 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+06b1 20405274 call l2cap_malloc_is_fifo_empty 
+06b2 243a2bde nbranch lpm_mult_short ,blank 
+06b3 205a06b5 call p_lpm_set_attemp_timeout ,blank 
+06b4 20202bbe branch lpm_set_mult + 13 
+
+p_lpm_set_attemp_timeout:
+06b5 70008a01 jam 1 ,mem_current_sniff_attempt 
+06b6 70008b00 jam 0 ,mem_current_sniff_timeout 
+06b7 20600000 rtn 
+
+p_mouse_bb_disconnected:
+06b8 7011c710 jam zcode_10 ,mem_zcode_temp_param0 
+06b9 2020077a branch p_zcode_entrance 
+
+p_hid_rx_process:
+06ba 7011c711 jam zcode_11 ,mem_zcode_temp_param0 
+06bb 2020077a branch p_zcode_entrance 
+
+p_parse_lmp_accepted:
+06bc 68008552 fetch 1 ,mem_rxbuf + 1 
+06bd 600084c9 store 1 ,mem_lmi_accepted_opcode 
+06be c00986c0 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+06bf 20205db4 branch parse_lmp_accepted + 3 
+
+p_parse_lmp_accepted_switch:
+06c0 20405dcf call parse_lmp_accepted_switch 
+06c1 704cda01 jam 1 ,mem_bt_rcvd_switch_req_accept 
+06c2 6800ccdc fetch 1 ,mem_bt_send_lmp_setup_complete 
+06c3 207a0000 rtn blank 
+06c4 704cdc02 jam 2 ,mem_bt_send_lmp_setup_complete 
+06c5 20600000 rtn 
+
+p_send_lmp:
+06c6 78547c00 disable user 
+06c7 204062c1 call lmo_fifo_process 
+06c8 68008048 fetch 1 ,mem_lmp_to_send 
+06c9 207a0000 rtn blank 
+06ca c28386cf bbit1 7 ,p_send_lmp_escape 
+06cb c00186d1 beq lmp_accepted ,p_send_lmp_accepted 
+06cc c01886d3 beq lmp_setup_complete ,p_send_lmp_setup_complete 
+06cd c00b86d5 beq lmp_sniff_req ,p_send_lmp_sniff_req 
+06ce 20206010 branch send_lmp0 
+
+p_send_lmp_escape:
+06cf 7011c720 jam zcode_20 ,mem_zcode_temp_param0 
+06d0 2020077a branch p_zcode_entrance 
+
+p_send_lmp_accepted:
+06d1 7011c721 jam zcode_21 ,mem_zcode_temp_param0 
+06d2 2020077a branch p_zcode_entrance 
+
+p_send_lmp_setup_complete:
+06d3 704cdc01 jam 1 ,mem_bt_send_lmp_setup_complete 
+06d4 202061c3 branch send_lmp_setup_complete 
+
+p_send_lmp_sniff_req:
+06d5 704ce404 jam 4 ,mem_mouse_bt_send_first_package_timer 
+06d6 202061a4 branch send_lmp_sniff_req 
+
+p_process_conn_sm:
+06d7 204062bc call lmo_fifo_check 
+06d8 247a0000 nrtn blank 
+
+p_process_conn_sm_continue:
+06d9 68008055 fetch 1 ,mem_conn_sm 
+06da 207a0000 rtn blank 
+06db c00206f9 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+06dc c00806de beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+06dd 20206320 branch process_conn_sm_continue + 2 
+
+p_host_creat_conn_wait_switch:
+06de 6800c55b fetch 1 ,mem_switch_flag 
+06df c1000000 rtneq switch_flag_init 
+06e0 c00086e2 beq switch_flag_accept ,p_host_create_conn_switch_accept 
+06e1 2020635f branch host_creat_conn_wait_switch + 3 
+
+p_host_create_conn_switch_accept:
+06e2 20748000 rtn master 
+
+p_host_create_conn_auth_pair:
+06e3 6800816d fetch 1 ,mem_connection_options 
+06e4 c28006e6 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+06e5 20206399 branch host_create_conn_auth_pair + 1 
+
+p_host_create_conn_auth_pair_true:
+06e6 6800ccdc fetch 1 ,mem_bt_send_lmp_setup_complete 
+06e7 c000e39d beq 1 ,host_create_conn_auth_pair_true 
+06e8 6800c1bd fetch 1 ,mem_link_key_exists 
+06e9 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
+06ea 680084d1 fetch 1 ,mem_lmp_conn_state 
+06eb c4018000 rtnbit0 sent_setup_complete 
+06ec c4010000 rtnbit0 received_setup_complete 
+06ed 6800ccdb fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+06ee 207a0000 rtn blank 
+06ef 704cdb00 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+06f0 680204e9 fetch 4 ,mem_aurand_send_delay_time 
+06f1 d8400014 arg 20 ,temp 
+06f2 98408400 iadd temp ,temp 
+06f3 1c427e00 copy clkn_bt ,pdata 
+06f4 98467c00 isub temp ,null 
+06f5 242106f7 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+06f6 20206349 branch host_create_conn_auth 
+
+p_bt_send_max_slot_req_accept_after_switch_wait:
+06f7 704cdb01 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+06f8 20600000 rtn 
+
+p_host_create_conn_send_conn_req:
+06f9 7049e414 jam 20 ,mem_mouse_send_switch_req_timer 
+06fa 2020636f branch host_create_conn_send_conn_req 
+
+p_check_51cmd_once_continue:
+06fb 204062bc call lmo_fifo_check 
+06fc 243a7ddb nbranch check_51cmd_restore ,blank 
+06fd 68008a99 fetch 1 ,mem_fifo_temp 
+06fe c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+06ff c00f8703 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+0700 c0100706 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+0701 c0090710 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0702 20207dca branch check_51cmd_once_continue + 2 
+
+p_flash_store_le_reconn_info:
+0703 70018534 jam rec_4_mode ,mem_record_bt_mode 
+0704 6803044f fetch 6 ,mem_le_plap 
+0705 20200708 branch p_flash_store_reconn_info 
+
+p_flash_store_bd_reconn_info:
+0706 70018533 jam rec_3_mode ,mem_record_bt_mode 
+0707 68030040 fetch 6 ,mem_plap 
+
+p_flash_store_reconn_info:
+0708 60030186 store 6 ,mem_temp_lap 
+
+p_mouse_store_remote_bdaddr:
+0709 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+070a c4038000 rtnbit0 mouse_store_eeprom_flag 
+070b d8e00007 arg mouse_store_eeprom_flag ,queue 
+070c 204043d2 call mouse_disable_function_flag 
+070d 204042e8 call mouse_check_device_addr 
+
+p_mouse_unplug_clean_bdaddr:
+070e 204042fb call mouse_before_store_reconn_info 
+070f 202003dd branch p_mouse_store_flash_device_info 
+
+p_check_51cmd_ble_update_connect_param:
+0710 20405890 call le_fifo_check_full 
+0711 247a0000 nrtn blank 
+0712 20205abf branch le_l2cap_tx_update_req 
+
+power_ctrl_pac_succ_cnt_init:
+0713 704fbf01 jam 1 ,mem_power_ctrl_level 
+0714 704fbc00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0715 20600000 rtn 
+
+power_ctrl_pac_succ_incrs:
+0716 6800cfbc fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0717 1fe0fe01 increase 1 ,pdata 
+0718 6000cfbc store 1 ,mem_power_ctrl_pac_succ_cnt 
+0719 20600000 rtn 
+
+power_ctrl_pac_succ_cnt_reinit:
+071a 704fbc03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+071b 20600000 rtn 
+
+power_ctrl_start:
+071c 68014682 fetch 2 ,mem_ui_state_map 
+071d c3858000 rtnbit1 ui_state_ble_adv 
+071e c3838000 rtnbit1 ui_state_bt_reconnect 
+071f c3830000 rtnbit1 ui_state_bt_discovery 
+0720 da204f45 arg mem_rssi_signal_buf ,rega 
+0721 2040027a call p_rssi_average 
+0722 6008cfbd storet 1 ,mem_rssi_avg_received 
+0723 58000082 setarg rssi_dis_max_24g 
+0724 c5130726 bmark1 mark_24g ,power_ctrl_start_next 
+0725 58000080 setarg rssi_dis_max_ble 
+
+power_ctrl_start_next:
+0726 98467c00 isub temp ,null 
+0727 2421073e nbranch power_ctrl_txpower_incrs_force ,positive 
+0728 6800cfbc fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0729 1fe67c02 sub pdata ,2 ,null 
+072a 2421072e nbranch power_ctrl_txpower_decrs_check ,positive 
+072b 6800cfbc fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+072c c000073f beq 0 ,power_ctrl_txpower_incrs 
+072d 20600000 rtn 
+
+power_ctrl_txpower_decrs_check:
+072e 6800cfbc fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+072f c1990000 rtnne 50 
+0730 704fbc00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+
+power_ctrl_txpower_decrs:
+0731 6808cfbd fetcht 1 ,mem_rssi_avg_received 
+0732 58000077 setarg rssi_dis_min_24g 
+0733 c5130735 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0734 58000075 setarg rssi_dis_min_ble 
+
+power_ctrl_txpower_decrs_next:
+0735 98467c00 isub temp ,null 
+0736 24610000 nrtn positive 
+0737 6800cfbf fetch 1 ,mem_power_ctrl_level 
+0738 c0000746 beq 0 ,power_ctrl_decrs_level0 
+0739 1fe0ffff increase -1 ,pdata 
+073a 6000cfbf store 1 ,mem_power_ctrl_level 
+073b c0000746 beq 0 ,power_ctrl_decrs_level0 
+
+power_ctrl_decrs_level1:
+
+power_ctrl_incrs_level1:
+073c 7041de00 jam tx_power_0db ,mem_tx_power 
+073d 20600000 rtn 
+
+power_ctrl_txpower_incrs_force:
+073e 704fbc00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+
+power_ctrl_txpower_incrs:
+073f 6800cfbf fetch 1 ,mem_power_ctrl_level 
+0740 c0010744 beq 2 ,power_ctrl_incrs_level2 
+0741 1fe0fe01 increase 1 ,pdata 
+0742 6000cfbf store 1 ,mem_power_ctrl_level 
+0743 c000873c beq 1 ,power_ctrl_incrs_level1 
+
+power_ctrl_incrs_level2:
+0744 7041de02 jam tx_power_5db ,mem_tx_power 
+0745 20600000 rtn 
+
+power_ctrl_decrs_level0:
+0746 7041de04 jam tx_power_f5db ,mem_tx_power 
+0747 20600000 rtn 
+
+p_set_freq_tx:
+0748 60088017 storet 1 ,mem_last_freq 
+0749 1840a200 add temp ,0 ,rega 
+074a 20402981 call rf_write_freq 
+074b 58000500 setarg param_pll_setup 
+074c 20402a8f call sleep 
+
+p_rf_tx_enable:
+074d 70890601 jam 0x1 ,rfen_adc 
+074e 7089003c jam 0x3c ,rfen_rx 
+074f 708901e0 jam 0xe0 ,rfen_tx 
+0750 2000000a nop 10 
+0751 70890201 jam 0x01 ,rfen_mdm 
+0752 7089023d jam 0x3d ,rfen_mdm 
+0753 2000000a nop 10 
+0754 708903b7 jam 0xb7 ,rfen_sn 
+0755 2000000a nop 10 
+0756 7089027d jam 0x7d ,rfen_mdm 
+0757 6800c1de fetch 1 ,mem_tx_power 
+0758 c0010760 beq tx_power_5db ,p_set_tx_power_5db 
+0759 c0020768 beq tx_power_f5db ,p_set_tx_power_f5db 
+075a c0100772 beq tx_power_pair ,p_set_tx_power_pair 
+
+p_set_tx_power_0db:
+075b 2040076d call p_rx_low_sens 
+075c 708955d0 jam 0xd0 ,0x8955 
+075d 708956e0 jam 0xe0 ,0x8956 
+075e 7089586c jam 0x6c ,0x8958 
+075f 2020294b branch set_tx_power_0db 
+
+p_set_tx_power_5db:
+
+p_rx_high_sens:
+0760 70894cfb jam 0xfb ,0x894c 
+0761 70894def jam 0xef ,0x894d 
+0762 70894eec jam 0xec ,0x894e 
+0763 70894f5e jam 0x5e ,0x894f 
+0764 708955d0 jam 0xd0 ,0x8955 
+0765 708956e0 jam 0xe0 ,0x8956 
+0766 7089583c jam 0x3c ,0x8958 
+0767 20202953 branch set_tx_power_5db 
+
+p_set_tx_power_f5db:
+0768 2040076d call p_rx_low_sens 
+0769 708955d0 jam 0xd0 ,0x8955 
+076a 708956c0 jam 0xc0 ,0x8956 
+076b 7089586c jam 0x6c ,0x8958 
+076c 2020295b branch set_tx_power_f5db 
+
+p_rx_low_sens:
+076d 70894c5b jam 0x5b ,0x894c 
+076e 70894d96 jam 0x96 ,0x894d 
+076f 70894e2c jam 0x2c ,0x894e 
+0770 70894f46 jam 0x46 ,0x894f 
+0771 20600000 rtn 
+
+p_set_tx_power_pair:
+0772 708956c2 jam 0xc2 ,0x8956 
+0773 708955d0 jam 0xd0 ,0x8955 
+0774 20600000 rtn 
+
+p_shutdown_radio:
+0775 18002a08 force 8 ,radio_ctrl 
+0776 202028fa branch shutdown_radio + 1 
+
+p_initialize_radio_cont:
+0777 20402978 call initialize_radio_cont + 1 
+0778 70804205 jam clksel_dpll ,core_clksel 
+0779 20600000 rtn 
+
+p_zcode_entrance:
+077a 680891c7 fetcht 1 ,mem_zcode_temp_param0 
+077b 18518400 rshift4 temp ,temp 
+077c 6800cd27 fetch 1 ,mem_zcode_current_number 
+077d 98467c00 isub temp ,null 
+077e 20228799 branch p_zcode_run ,zero 
+077f 6008cd27 storet 1 ,mem_zcode_current_number 
+0780 18408401 increase 1 ,temp 
+0781 58000100 setarg zcode_buff_size 
+0782 984f8400 imul32 temp ,temp 
+0783 6801cd28 fetch 3 ,mem_xip_flash_offset 
+0784 98467e00 isub temp ,pdata 
+0785 6809cd2b fetcht 3 ,mem_flash_start_addr 
+0786 9840fe00 iadd temp ,pdata 
+0787 1fe0fffb increase -5 ,pdata 
+0788 6001cd2e store 3 ,mem_flash_address 
+0789 20400325 call p_flash_release_deep_power_down 
+
+p_zcode_read_loop:
+078a 6801cd2e fetch 3 ,mem_flash_address 
+078b d8400100 arg zcode_buff_size ,temp 
+078c da201f00 arg mem_zcode_buff ,rega 
+078d 20406562 call spid_read_flash 
+078e 68021f00 fetch 4 ,mem_zcode_buff 
+078f 680a4d31 fetcht 4 ,mem_zcode_head 
+0790 98467c00 isub temp ,null 
+0791 2422878a nbranch p_zcode_read_loop ,zero 
+0792 204003eb call p_mouse_spi_init 
+0793 58001f00 setarg mem_zcode_buff 
+0794 60014199 store 2 ,mem_patch_ptr 
+0795 70419b40 jam zcode_code_size ,mem_patch_len 
+0796 204064ca call load_ucode 
+0797 58000000 setarg 0 
+0798 60024199 store 4 ,mem_patch_ptr 
+
+p_zcode_run:
+0799 680091c7 fetch 1 ,mem_zcode_temp_param0 
+079a 20200001 branch p_zcode 
+
+p_drawing_optima:
+079b 6802469b fetch 4 ,mem_mouse_x 
+079c 207a0000 rtn blank 
+079d 204007f0 call p_data_abs_check 
+079e 58000003 setarg 0x03 
+079f 204007e3 call p_pdata_greater_than_check 
+07a0 58000002 setarg 0x02 
+07a1 204007e9 call p_data_less_than_check 
+07a2 6800cce6 fetch 1 ,mem_mouse_asm_flag 
+07a3 c00087a7 beq 1 ,p_drawing_optima_modify 
+
+p_drawing_optima_init:
+07a4 df200005 arg 5 ,loopcnt 
+07a5 d8a04ce6 arg mem_mouse_asm_flag ,contw 
+07a6 20207ed4 branch clear_mem 
+
+p_drawing_optima_modify:
+07a7 68014ce7 fetch 2 ,mem_mouse_x_pre 
+07a8 600111be store 2 ,mem_data_pre 
+07a9 6801469b fetch 2 ,mem_mouse_x 
+07aa 600111c0 store 2 ,mem_data_current 
+07ab 204007ba call p_drawing_optima_data 
+07ac 680111be fetch 2 ,mem_data_pre 
+07ad 60014ce7 store 2 ,mem_mouse_x_pre 
+07ae 680111c0 fetch 2 ,mem_data_current 
+07af 6001469b store 2 ,mem_mouse_x 
+07b0 68014ce9 fetch 2 ,mem_mouse_y_pre 
+07b1 600111be store 2 ,mem_data_pre 
+07b2 6801469d fetch 2 ,mem_mouse_y 
+07b3 600111c0 store 2 ,mem_data_current 
+07b4 204007ba call p_drawing_optima_data 
+07b5 680111be fetch 2 ,mem_data_pre 
+07b6 60014ce9 store 2 ,mem_mouse_y_pre 
+07b7 680111c0 fetch 2 ,mem_data_current 
+07b8 6001469d store 2 ,mem_mouse_y 
+07b9 20600000 rtn 
+
+p_drawing_optima_data:
+07ba 680111be fetch 2 ,mem_data_pre 
+07bb 680911c0 fetcht 2 ,mem_data_current 
+07bc 9840fe00 iadd temp ,pdata 
+07bd 600191c2 store 3 ,mem_data_sum 
+07be 2feffe10 isolate1 16 ,pdata 
+07bf 202087c7 branch p_data_sum_overflow ,true 
+07c0 680091c3 fetch 1 ,mem_data_sum + 1 
+07c1 c07f87ce beq 0xff ,p_data_sum_n 
+07c2 680091c2 fetch 1 ,mem_data_sum 
+
+p_data_store_pre:
+07c3 1fe37e00 rshift pdata ,pdata 
+07c4 600111be store 2 ,mem_data_pre 
+07c5 600111c0 store 2 ,mem_data_current 
+07c6 20600000 rtn 
+
+p_data_sum_overflow:
+07c7 680091c3 fetch 1 ,mem_data_sum + 1 
+07c8 c00007cb beq 0 ,p_data_sum_overflow_p 
+07c9 680191c2 fetch 3 ,mem_data_sum 
+07ca 202007c3 branch p_data_store_pre 
+
+p_data_sum_overflow_p:
+07cb 7011c400 jam 0 ,mem_data_sum + 2 
+07cc 680091c2 fetch 1 ,mem_data_sum 
+07cd 202007c3 branch p_data_store_pre 
+
+p_data_sum_n:
+07ce 680091c2 fetch 1 ,mem_data_sum 
+07cf 204007d9 call p_pdata_get_half 
+07d0 600091be store 1 ,mem_data_pre 
+07d1 600091c0 store 1 ,mem_data_current 
+07d2 203a07d7 branch p_data_zero ,blank 
+07d3 580000ff setarg 0xff 
+
+p_data_set_direction:
+07d4 600091bf store 1 ,mem_data_pre + 1 
+07d5 600091c1 store 1 ,mem_data_current + 1 
+07d6 20600000 rtn 
+
+p_data_zero:
+07d7 58000000 setarg 0 
+07d8 202007d4 branch p_data_set_direction 
+
+p_pdata_get_half:
+07d9 204007df call p_pdata_invert 
+07da 1fe37e00 rshift pdata ,pdata 
+
+p_pdata_get_new_value:
+07db 204007e0 call p_rega_in_out 
+07dc 1fe67e00 sub pdata ,0 ,pdata 
+07dd 600091c5 store 1 ,mem_data_value 
+07de 20600000 rtn 
+
+p_pdata_invert:
+07df 1fe67e00 sub pdata ,0 ,pdata 
+
+p_rega_in_out:
+07e0 60008aae store 1 ,mem_rega 
+07e1 68008aae fetch 1 ,mem_rega 
+07e2 20600000 rtn 
+
+p_pdata_greater_than_check:
+07e3 9a267c00 isub rega ,null 
+07e4 242107ee nbranch p_enable_asm ,positive 
+07e5 9a467c00 isub regb ,null 
+07e6 242107ee nbranch p_enable_asm ,positive 
+
+p_disable_asm:
+07e7 704ce600 jam 0 ,mem_mouse_asm_flag 
+07e8 20600000 rtn 
+
+p_data_less_than_check:
+07e9 9a267c00 isub rega ,null 
+07ea 24610000 nrtn positive 
+07eb 9a467c00 isub regb ,null 
+07ec 24610000 nrtn positive 
+07ed 202007e7 branch p_disable_asm 
+
+p_enable_asm:
+07ee 704ce601 jam 1 ,mem_mouse_asm_flag 
+07ef 20600000 rtn 
+
+p_data_abs_check:
+07f0 6801469b fetch 2 ,mem_mouse_x 
+07f1 204007f7 call p_data_abs 
+07f2 1fe22200 copy pdata ,rega 
+07f3 6801469d fetch 2 ,mem_mouse_y 
+07f4 204007f7 call p_data_abs 
+07f5 1fe22400 copy pdata ,regb 
+07f6 20600000 rtn 
+
+p_data_abs:
+07f7 600111c0 store 2 ,mem_data_current 
+07f8 680091c1 fetch 1 ,mem_data_current + 1 
+07f9 c07f87fd beq 0xff ,p_data_reversal 
+07fa 680091c0 fetch 1 ,mem_data_current 
+
+p_data_abs_store:
+07fb 1fe17eff and_into 0xff ,pdata 
+07fc 20600000 rtn 
+
+p_data_reversal:
+07fd 680111c0 fetch 2 ,mem_data_current 
+07fe 1fe67e00 sub pdata ,0 ,pdata 
+07ff 202007fb branch p_data_abs_store 
+org 0x2000
+
+start:
+2000 20402abc call lpmstate 
+
+soft_reset:
+2001 44804000 bpatch patch00_0 ,mem_patch00 
+2002 20800000 clear_stack 
+2003 2040640d call spi_ncs_gpio_init 
+2004 2040296c call initialize_radio 
+2005 204065a3 call iicd_init_12m 
+2006 20402a96 call init_param 
+2007 20404d6a call l2cap_init 
+2008 4480c000 bpatch patch00_1 ,mem_patch00 
+2009 20406a03 call rfcomm_init 
+200a 20405cf6 call init_lmp 
+200b 20407ccc call ui_init 
+200c 204032d8 call app_init 
+200d 2455e89c ncall load_chip_option ,wake 
+200e 44814000 bpatch patch00_2 ,mem_patch00 
+200f 2055b2e3 call app_lpm_init ,wake 
+2010 2040756a call publickey_init 
+2011 2055ab41 call lpm_recover_clk ,wake 
+
+main_loop:
+2012 4481c000 bpatch patch00_3 ,mem_patch00 
+2013 204076dc call sp_calc_sequence 
+2014 20407aaf call sp_calc_sequence_256 
+2015 2040756d call sp_calc_sequence_256_check 
+2016 2040535c call le_dispatch 
+2017 44824000 bpatch patch00_4 ,mem_patch00 
+2018 20402038 call idle_dispatch 
+2019 204032ed call app_process_idle 
+201a 2040208f call inquiry_dispatch 
+201b 204022f8 call inquiry_scan_dispatch 
+201c 2040236a call page_scan_dispatch 
+201d 20402021 call connection_dispatch 
+201e 20402b6a call lpm_dispatch 
+201f 20402c72 call g24_dispatch 
+2020 20202012 branch main_loop 
+
+connection_dispatch:
+2021 20402026 call connection_incontext 
+2022 c6848000 rtnmark0 mark_context 
+2023 793f8009 set0 mark_context ,mark 
+2024 20402223 call context_save 
+2025 202053ce branch le_disable 
+
+connection_incontext:
+2026 4482c000 bpatch patch00_5 ,mem_patch00 
+2027 2040225e call context_search_insniff 
+2028 2422a02f nbranch connection_nosniff ,zero 
+2029 2040220a call context_load 
+202a 1a208c01 add rega ,coffset_mode ,contr 
+202b e8c08000 ifetch 1 ,contr 
+202c c2805360 bbit1 mode_le ,le_conn_dispatch 
+202d c280a166 bbit1 mode_master ,master_dispatch 
+202e 202023cf branch slave_dispatch 
+
+connection_nosniff:
+202f 2040222b call context_get_next 
+2030 1f227c00 copy loopcnt ,null 
+2031 20628000 rtn zero 
+2032 2040220a call context_load 
+2033 68008030 fetch 1 ,mem_state 
+2034 c281a0d3 bbit1 state_inpage ,master_page 
+2035 68008031 fetch 1 ,mem_mode 
+2036 c280a166 bbit1 mode_master ,master_dispatch 
+2037 202023cf branch slave_dispatch 
+
+idle_dispatch:
+2038 6800c1ce fetch 1 ,mem_hci_cmd 
+2039 207a0000 rtn blank 
+203a c000a048 beq hci_cmd_inquiry ,idle_inquiry 
+203b c001204d beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
+203c c001a050 beq hci_cmd_remote_name_req ,idle_remote_name_req 
+203d c002a055 beq hci_cmd_create_conn ,idle_create_conn 
+203e c00da045 beq hci_cmd_le_create_conn ,idle_le_create_conn 
+203f 20402257 call context_search_conn_handle 
+2040 20628000 rtn zero 
+2041 2040225a call context_search_plap 
+2042 20628000 rtn zero 
+
+idle_exit:
+2043 7041ce00 jam 0 ,mem_hci_cmd 
+2044 20600000 rtn 
+
+idle_le_create_conn:
+2045 70049b1b jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
+2046 7041ce00 jam 0 ,mem_hci_cmd 
+2047 20600000 rtn 
+
+idle_inquiry:
+2048 7920001c set1 mark_inquiry_on ,mark 
+2049 793f801e set0 mark_inquiry_trainb ,mark 
+204a 70008fff jam param_ninquiry ,mem_ninqy_index 
+204b 70008d1f jam 31 ,mem_nfreq_index_inq 
+204c 20202043 branch idle_exit 
+
+idle_inquiry_cancel:
+204d 793f801c set0 mark_inquiry_on ,mark 
+204e 18003600 force 0 ,stop_watch 
+204f 20202043 branch idle_exit 
+
+idle_remote_name_req:
+2050 2040225a call context_search_plap 
+2051 20628000 rtn zero 
+2052 18000401 force lmp_name_req ,temp 
+2053 70016e05 jam 5 ,mem_nameres_cnt 
+2054 2020205c branch idle_start_page 
+
+idle_create_conn:
+2055 44834000 bpatch patch00_6 ,mem_patch00 
+
+idle_create_conn_device:
+2056 680341d0 fetch 6 ,mem_hci_plap 
+2057 203a2043 branch idle_exit ,blank 
+2058 70468101 jam reconnect_hid ,memui_reconnect_mode 
+2059 70005503 jam conn_sm_wait_features_res ,mem_conn_sm 
+205a 2020205b branch idle_create_conn_cont 
+
+idle_create_conn_cont:
+205b 18000425 force lmp_version_req ,temp 
+
+idle_start_page:
+205c 4483c000 bpatch patch00_7 ,mem_patch00 
+205d 680080f1 fetch 1 ,mem_page_mode 
+205e 203a2062 branch idle_page_mode_r0 ,blank 
+205f 1fe9fe00 lshift3 pdata ,pdata 
+2060 1ff27e00 lshift4 pdata ,pdata 
+2061 1fe0ffff increase -1 ,pdata 
+
+idle_page_mode_r0:
+2062 6000c0a6 store 1 ,mem_npage 
+2063 600080f0 store 1 ,mem_npage_index 
+2064 70008e1f jam 31 ,mem_nfreq_index_page 
+2065 793f800c set0 mark_page_trainb ,mark 
+2066 2040223b call context_new 
+2067 2422a083 nbranch idle_page_fail ,zero 
+2068 20402a6f call get_free_amaddr 
+2069 60008077 store 1 ,mem_amaddr 
+206a 6008807c storet 1 ,mem_lmo_opcode2 
+206b 680341d0 fetch 6 ,mem_hci_plap 
+206c 60030040 store 6 ,mem_plap 
+206d 44844001 bpatch patch01_0 ,mem_patch01 
+206e 20407f15 call timer_reinit 
+206f 18007e00 force 0 ,pdata 
+2070 2841fe01 compare lmp_name_req ,temp ,0xff 
+2071 7d20fe05 nsetflag true ,state_init_seq ,pdata 
+2072 79207e03 set1 state_inpage ,pdata 
+2073 60008030 store 1 ,mem_state 
+2074 700a9903 jam bt_evt_reconn_started ,mem_fifo_temp 
+2075 20407d86 call ui_ipc_send_event 
+2076 18007e00 force 0 ,pdata 
+2077 7920fe04 setflag true ,smap_name_req ,pdata 
+2078 6000804c store 1 ,mem_state_map 
+2079 58000000 setarg 0 
+207a 79207e01 set1 mode_master ,pdata 
+207b 60008031 store 1 ,mem_mode 
+207c 7834fc00 enable master 
+207d 20402223 call context_save 
+207e 7854fc00 disable master 
+207f 18000e03 force page_length_timer ,queue 
+2080 680140b9 fetch 2 ,mem_page_to 
+2081 20407f08 call timer_init 
+2082 20202043 branch idle_exit 
+
+idle_page_fail:
+2083 4484c001 bpatch patch01_1 ,mem_patch01 
+2084 680341d0 fetch 6 ,mem_hci_plap 
+2085 60030040 store 6 ,mem_plap 
+2086 2841fe01 compare lmp_name_req ,temp ,0xff 
+2087 2020a089 branch idle_name_fail ,true 
+2088 20202043 branch idle_exit 
+
+idle_name_fail:
+2089 d8a00101 arg mem_tmp_buffer ,contw 
+208a df200008 arg 8 ,loopcnt 
+208b 20407ec6 call memset0 
+208c 700a9904 jam bt_evt_reconn_failed ,mem_fifo_temp 
+208d 20407d86 call ui_ipc_send_event 
+208e 20202043 branch idle_exit 
+
+inquiry_dispatch:
+208f c68e0000 rtnmark0 mark_inquiry_on 
+2090 18000e01 force inquiry_length_timer ,queue 
+2091 20407f16 call timer_check 
+2092 7d3a001c nsetflag blank ,mark_inquiry_on ,mark 
+2093 243a2095 nbranch inquiry_start ,blank 
+2094 20600000 rtn 
+
+inquiry_start:
+2095 44854001 bpatch patch01_2 ,mem_patch01 
+2096 680940bb fetcht 2 ,mem_inq_window 
+2097 18000e04 force 4 ,queue 
+2098 2040271c call sniff_check_window 
+2099 20740000 rtn user 
+209a 204028a4 call afh_clear 
+209b 18004800 force 0 ,freq_mode 
+
+inquiry_restart:
+209c 20618000 rtn timeout 
+209d 793f800b set0 mark_fhs_already_good ,mark 
+209e 793f8000 set0 mark_fhs_eir ,mark 
+
+inquiry_rx_restart:
+209f 1c40c201 add clkn_bt ,1 ,bt_clk 
+20a0 280ffe1e isolate1 mark_inquiry_trainb ,mark 
+20a1 7920c802 setflag true ,2 ,freq_mode 
+20a2 2c200400 compare 0x00 ,bt_clk ,0x02 
+20a3 2420a0be nbranch inquiry_receive ,true 
+
+inquiry_transmit:
+20a4 4485c001 bpatch patch01_3 ,mem_patch01 
+20a5 68008012 fetch 1 ,mem_inquiry_transmit 
+20a6 1fe0fe01 increase 1 ,pdata 
+20a7 60008012 store 1 ,mem_inquiry_transmit 
+20a8 204028d8 call fetch_giac 
+20a9 204028d2 call tx_radio_freq 
+20aa 204028f2 call fetch_diac 
+20ab 20402a51 call start_transmitter 
+20ac 20402a56 call start_tx_native 
+20ad 20402a64 call send_access_word 
+20ae 2040264d call end_of_packet 
+20af 204020b1 call inquiry_check_train 
+20b0 2020209c branch inquiry_restart 
+
+inquiry_check_train:
+20b1 44864001 bpatch patch01_4 ,mem_patch01 
+20b2 6800808d fetch 1 ,mem_nfreq_index_inq 
+20b3 1fe0ffff increase -1 ,pdata 
+20b4 6000808d store 1 ,mem_nfreq_index_inq 
+20b5 20610000 rtn positive 
+20b6 70008d1f jam 31 ,mem_nfreq_index_inq 
+20b7 6800808f fetch 1 ,mem_ninqy_index 
+20b8 1fe0ffff increase -1 ,pdata 
+20b9 6000808f store 1 ,mem_ninqy_index 
+20ba 20610000 rtn positive 
+20bb 7940001e setflip mark_inquiry_trainb ,mark 
+20bc 70008fff jam param_ninquiry ,mem_ninqy_index 
+20bd 20600000 rtn 
+
+inquiry_receive:
+20be 4486c001 bpatch patch01_5 ,mem_patch01 
+20bf 204028d8 call fetch_giac 
+20c0 204028cc call rx_radio_freq 
+20c1 204028f2 call fetch_diac 
+20c2 20402a5b call start_rx_native 
+20c3 204029eb call start_receiver 
+20c4 20402a0d call wait_access_clkn_rt 
+20c5 202c20c8 branch inquiry_sync ,sync 
+20c6 204020b1 call inquiry_check_train 
+20c7 2020209f branch inquiry_rx_restart 
+
+inquiry_sync:
+20c8 44874001 bpatch patch01_6 ,mem_patch01 
+20c9 204029bb call save_rssi 
+20ca 20402a6b call scan_mode_whiten 
+20cb 2040251e call receive_packet_whitened 
+20cc 793f8001 set0 mark_rxbuf_inuse ,mark 
+20cd c6858000 rtnmark0 mark_fhs_already_good 
+
+inquiry_receive_rtn:
+20ce 4487c001 bpatch patch01_7 ,mem_patch01 
+
+inquiry_receive_eir_rtn:
+20cf 68008013 fetch 1 ,mem_inquiry_rcv 
+20d0 1fe0fe01 increase 1 ,pdata 
+20d1 60008013 store 1 ,mem_inquiry_rcv 
+20d2 20600000 rtn 
+
+master_page:
+20d3 44884002 bpatch patch02_0 ,mem_patch02 
+20d4 7834fc00 enable master 
+20d5 78387c00 enable clknt 
+20d6 680140b5 fetch 2 ,mem_page_interval 
+20d7 203a20db branch master_page_no_interval ,blank 
+20d8 18000e08 force page_interval_timer ,queue 
+20d9 20407f16 call timer_check 
+20da 247a0000 nrtn blank 
+
+master_page_no_interval:
+20db 4488c002 bpatch patch02_1 ,mem_patch02 
+20dc 680940b7 fetcht 2 ,mem_page_window 
+20dd 18000e28 force 40 ,queue 
+20de 2040271c call sniff_check_window 
+20df 20342114 branch page_exit ,user 
+20e0 18000e03 force page_length_timer ,queue 
+20e1 20407f16 call timer_check 
+20e2 243a20f0 nbranch page_start ,blank 
+20e3 6800804c fetch 1 ,mem_state_map 
+20e4 c28220e6 bbit1 smap_name_req ,master_npage_timeout 
+20e5 202020e9 branch master_page_timeout 
+
+master_npage_timeout:
+20e6 d8a00101 arg mem_tmp_buffer ,contw 
+20e7 df200008 arg 8 ,loopcnt 
+20e8 20407ec6 call memset0 
+
+master_page_timeout:
+20e9 44894002 bpatch patch02_2 ,mem_patch02 
+20ea 70003000 jam 0 ,mem_state 
+20eb 20405cf7 call init_lmp_work 
+20ec 70468100 jam 0 ,memui_reconnect_mode 
+20ed 700a9913 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
+20ee 20407d86 call ui_ipc_send_event 
+20ef 20202114 branch page_exit 
+
+page_start:
+20f0 4489c002 bpatch patch02_3 ,mem_patch02 
+20f1 18001600 force 0 ,timeup 
+20f2 34730200 until clkn_rt ,meet 
+20f3 680080f2 fetch 1 ,mem_page_clk 
+20f4 1fe0ffff increase -1 ,pdata 
+20f5 9c42fe00 ixor clkn_bt ,pdata 
+20f6 2fe00600 compare 0 ,pdata ,3 
+20f7 2420a0f0 nbranch page_start ,true 
+20f8 18827e00 deposit am_addr 
+20f9 60008181 store 1 ,mem_fhs_am_addr 
+20fa 18004c00 force 0 ,n_tx_slot 
+20fb 18004800 force 0 ,freq_mode 
+
+page_restart:
+20fc 448a4002 bpatch patch02_4 ,mem_patch02 
+20fd 2021a114 branch page_exit ,timeout 
+20fe 204028dc call fetch_page_bt_adr 
+20ff d9600600 arg param_rf_setup ,timeup 
+2100 34730200 until clkn_rt ,meet 
+
+page_rx_restart:
+2101 448ac002 bpatch patch02_5 ,mem_patch02 
+2102 680200f2 fetch 4 ,mem_page_clk 
+2103 98004200 iforce bt_clk 
+2104 1fe0fe01 increase 1 ,pdata 
+2105 600200f2 store 4 ,mem_page_clk 
+2106 280ffe0c isolate1 mark_page_trainb ,mark 
+2107 7920c802 setflag true ,2 ,freq_mode 
+2108 2c200400 compare 0x00 ,bt_clk ,0x02 
+2109 2420a128 nbranch page_receive ,true 
+210a 6800800c fetch 1 ,mem_page_transmit 
+210b 1fe0fe01 increase 1 ,pdata 
+210c 6000800c store 1 ,mem_page_transmit 
+210d 204028d2 call tx_radio_freq 
+210e 20402a51 call start_transmitter 
+210f 20402a56 call start_tx_native 
+2110 20402a64 call send_access_word 
+2111 2040264d call end_of_packet 
+2112 2040211a call page_check_train 
+2113 202020fc branch page_restart 
+
+page_exit:
+2114 448b4002 bpatch patch02_6 ,mem_patch02 
+2115 7854fc00 disable master 
+2116 680140b5 fetch 2 ,mem_page_interval 
+2117 207a0000 rtn blank 
+2118 18000e08 force page_interval_timer ,queue 
+2119 20207f08 branch timer_init 
+
+page_check_train:
+211a 448bc002 bpatch patch02_7 ,mem_patch02 
+211b 6800808e fetch 1 ,mem_nfreq_index_page 
+211c 1fe0ffff increase -1 ,pdata 
+211d 6000808e store 1 ,mem_nfreq_index_page 
+211e 20610000 rtn positive 
+211f 70008e1f jam 31 ,mem_nfreq_index_page 
+2120 680080f0 fetch 1 ,mem_npage_index 
+2121 1fe0ffff increase -1 ,pdata 
+2122 600080f0 store 1 ,mem_npage_index 
+2123 20610000 rtn positive 
+2124 7940000c setflip mark_page_trainb ,mark 
+2125 6800c0a6 fetch 1 ,mem_npage 
+2126 600080f0 store 1 ,mem_npage_index 
+2127 20600000 rtn 
+
+page_receive:
+2128 448c4003 bpatch patch03_0 ,mem_patch03 
+2129 204028cc call rx_radio_freq 
+212a 20402a5b call start_rx_native 
+212b 204029eb call start_receiver 
+212c 20402a0d call wait_access_clkn_rt 
+212d 202c2130 branch page_sync ,sync 
+212e 2040211a call page_check_train 
+212f 20202101 branch page_rx_restart 
+
+page_sync:
+2130 2040264d call end_of_packet 
+2131 6800800d fetch 1 ,mem_page_rcv 
+2132 1fe0fe01 increase 1 ,pdata 
+2133 6000800d store 1 ,mem_page_rcv 
+2134 18003600 force 0 ,stop_watch 
+2135 680200f2 fetch 4 ,mem_page_clk 
+
+page_send_fhs:
+2136 448cc003 bpatch patch03_1 ,mem_patch03 
+2137 20402a4f call rf_setup_time_master_slot 
+2138 204028dc call fetch_page_bt_adr 
+2139 1cc0cc01 increase 1 ,n_tx_slot 
+
+page_send_fhs_continue:
+213a 1c2143fd and_into 0x1fd ,bt_clk 
+213b 1c8149fc and_into 0x1fc ,freq_mode 
+213c 204028d2 call tx_radio_freq 
+213d 20402a51 call start_transmitter 
+213e 20402a56 call start_tx_native 
+213f 20402a64 call send_access_word 
+2140 1c427e00 deposit clkn_bt 
+2141 60020161 store 4 ,mem_clkn_bt 
+2142 18000800 force 0 ,am_addr 
+2143 18000202 force type_fhs ,type 
+2144 20402a6b call scan_mode_whiten 
+2145 20402766 call transmit_packet_whitened 
+
+page_wait_fhs_reply:
+2146 448d4003 bpatch patch03_2 ,mem_patch03 
+2147 20402a4d call rf_setup_time_slave_slot 
+2148 1c21c202 or_into 0x02 ,bt_clk 
+2149 1c8149fc and_into 0x1fc ,freq_mode 
+214a 204028cc call rx_radio_freq 
+214b 20402a5b call start_rx_native 
+214c 204029eb call start_receiver 
+214d 20402a0d call wait_access_clkn_rt 
+214e 204c264d call end_of_packet ,sync 
+214f 202c2155 branch page_wait_fhs_reply_ok ,sync 
+2150 68008010 fetch 1 ,mem_fhs_wait_counter 
+2151 203a20fc branch page_restart ,blank 
+2152 1fe0ffff increase -1 ,pdata 
+2153 60008010 store 1 ,mem_fhs_wait_counter 
+2154 20202136 branch page_send_fhs 
+
+page_wait_fhs_reply_ok:
+2155 448dc003 bpatch patch03_3 ,mem_patch03 
+2156 6800800e fetch 1 ,mem_page_rcv_fhs 
+2157 1fe0fe01 increase 1 ,pdata 
+2158 6000800e store 1 ,mem_page_rcv_fhs 
+2159 20402435 call prepare_newconn 
+
+master_newconn_loop:
+215a 204022f2 call master_newconn_once 
+215b 202c215f branch newconn_poll_responded ,sync 
+215c 20402455 call new_conn_timeout 
+215d 243a215a nbranch master_newconn_loop ,blank 
+215e 202020fc branch page_restart 
+
+newconn_poll_responded:
+215f 448e4003 bpatch patch03_4 ,mem_patch03 
+2160 68008030 fetch 1 ,mem_state 
+2161 793ffe03 set0 state_inpage ,pdata 
+2162 60008030 store 1 ,mem_state 
+2163 20402440 call newconn_init 
+2164 7854fc00 disable master 
+2165 20600000 rtn 
+
+master_dispatch:
+2166 448ec003 bpatch patch03_5 ,mem_patch03 
+2167 7834fc00 enable master 
+2168 78387c00 enable clknt 
+2169 204021e1 call role_switch_master 
+216a 20740000 rtn user 
+216b 20402c69 call check_bt_disabled 
+216c 20402a4f call rf_setup_time_master_slot 
+216d 1c40c201 add clkn_bt ,1 ,bt_clk 
+216e 204028e2 call fetch_self_bt_adr 
+216f 18004803 force 0x03 ,freq_mode 
+2170 20406cc2 call scheduler_tx_l2cap_pkt 
+2171 20402489 call prepare_tx 
+2172 204028d2 call tx_radio_freq 
+2173 20402a51 call start_transmitter 
+2174 20402a56 call start_tx_native 
+2175 20402a64 call send_access_word 
+2176 20402762 call transmit_packet 
+
+master_loop:
+2177 448f4003 bpatch patch03_6 ,mem_patch03 
+2178 20405d08 call parse_lmp 
+2179 204022e4 call master_conn_recv_packet 
+217a 2436a180 nbranch master_notmatch ,match 
+217b 20402a88 call supervision_flush 
+217c 20402728 call parse_l2cap 
+217d 6800800f fetch 1 ,mem_master_rcvcnt 
+217e 1fe0fe01 increase 1 ,pdata 
+217f 6000800f store 1 ,mem_master_rcvcnt 
+
+master_notmatch:
+2180 448fc003 bpatch patch03_7 ,mem_patch03 
+2181 20406caa call scheduler_process 
+2182 2040218b call check_master_disconnect 
+2183 24748000 nrtn master 
+2184 204026f3 call check_attempt 
+2185 243a2188 nbranch master_attempt ,blank 
+
+master_exit:
+2186 7854fc00 disable master 
+2187 20600000 rtn 
+
+master_attempt:
+2188 20402489 call prepare_tx 
+2189 204022da call master_conn_send_packet 
+218a 20202177 branch master_loop 
+
+check_master_disconnect:
+218b 2036a18e branch check_master_match ,match 
+218c 20402a7f call supervision_update 
+218d 2021219c branch master_disconnect ,positive 
+
+check_master_match:
+218e 204021a7 call check_disconnect_timeout 
+218f 2434219c nbranch master_disconnect ,user 
+2190 6800804c fetch 1 ,mem_state_map 
+2191 c4020000 rtnbit0 smap_name_req 
+2192 c3818000 rtnbit1 smap_name_res 
+2193 6800804b fetch 1 ,mem_op 
+2194 c3818000 rtnbit1 op_disconn 
+2195 204021ae call conn_timer_expired 
+2196 247a0000 nrtn blank 
+2197 6800816e fetch 1 ,mem_nameres_cnt 
+2198 1fe0ffff increase -1 ,pdata 
+2199 6000816e store 1 ,mem_nameres_cnt 
+219a 247a0000 nrtn blank 
+219b 20206006 branch lmp_disconnect 
+
+master_disconnect:
+219c 44904004 bpatch patch04_0 ,mem_patch04 
+219d 2040245d call quit_connection 
+219e 7854fc00 disable master 
+219f 6800804c fetch 1 ,mem_state_map 
+21a0 c28221a2 bbit1 smap_name_req ,master_name_disconnect 
+21a1 20600000 rtn 
+
+master_name_disconnect:
+21a2 6800804c fetch 1 ,mem_state_map 
+21a3 c3818000 rtnbit1 smap_name_res 
+
+master_name_error:
+21a4 d8a00101 arg mem_tmp_buffer ,contw 
+21a5 df200008 arg 8 ,loopcnt 
+21a6 20207ec6 branch memset0 
+
+check_disconnect_timeout:
+21a7 4490c004 bpatch patch04_1 ,mem_patch04 
+21a8 78347c00 enable user 
+21a9 6800804b fetch 1 ,mem_op 
+21aa c4018000 rtnbit0 op_disconn 
+21ab 204021ae call conn_timer_expired 
+21ac 247a0000 nrtn blank 
+21ad 20207fe9 branch disable_user 
+
+conn_timer_expired:
+21ae 68008072 fetch 1 ,mem_conn_timer 
+21af 1fe0ffff increase -1 ,pdata 
+21b0 60008072 store 1 ,mem_conn_timer 
+21b1 20600000 rtn 
+
+linkkey_ready:
+21b2 44914004 bpatch patch04_2 ,mem_patch04 
+21b3 68008030 fetch 1 ,mem_state 
+21b4 c283a1bb bbit1 state_linkkey ,linkkey_set 
+21b5 680089b5 fetch 1 ,mem_pairing_auth 
+21b6 203a21bb branch linkkey_set ,blank 
+21b7 7009b500 jam defalt_pairing_auth ,mem_pairing_auth 
+21b8 700a9918 jam bt_evt_linkkey_generate ,mem_fifo_temp 
+21b9 20407d86 call ui_ipc_send_event 
+21ba 202021bb branch linkkey_set 
+
+linkkey_set:
+21bb 4491c004 bpatch patch04_3 ,mem_patch04 
+21bc 20402254 call context_traverse_linkkey 
+21bd 68008030 fetch 1 ,mem_state 
+21be 79207e07 set1 state_linkkey ,pdata 
+21bf 60008030 store 1 ,mem_state 
+21c0 7041bd01 jam 1 ,mem_link_key_exists 
+21c1 68008055 fetch 1 ,mem_conn_sm 
+21c2 c08b21c3 bne conn_sm_pairing ,linkkey_set_continue 
+
+linkkey_set_continue:
+21c3 20600000 rtn 
+
+generate_linkkey_continue:
+21c4 7009b501 jam pairing_auth ,mem_pairing_auth 
+
+clear_linkstate:
+21c5 68008030 fetch 1 ,mem_state 
+21c6 793ffe07 set0 state_linkkey ,pdata 
+21c7 60008030 store 1 ,mem_state 
+21c8 20600000 rtn 
+
+role_switch_check:
+21c9 44924004 bpatch patch04_4 ,mem_patch04 
+21ca 78547c00 disable user 
+21cb 68010032 fetch 2 ,mem_tsniff 
+21cc d840ffff arg 0xffff ,temp 
+21cd 98467c00 isub temp ,null 
+21ce 24628000 nrtn zero 
+21cf 68020034 fetch 4 ,mem_sniff_anchor 
+21d0 203821d3 branch role_switch_clkn ,clknt 
+21d1 9d067e00 isub clke_bt ,pdata 
+21d2 202021d4 branch role_switch_clke 
+
+role_switch_clkn:
+21d3 9c467e00 isub clkn_bt ,pdata 
+
+role_switch_clke:
+21d4 1fe67c04 sub pdata ,4 ,null 
+21d5 24610000 nrtn positive 
+21d6 18007e00 force 0 ,pdata 
+21d7 60010032 store 2 ,mem_tsniff 
+21d8 20207fe7 branch enable_user 
+
+role_switch_prepare:
+21d9 1fe20400 copy pdata ,temp 
+21da 4492c004 bpatch patch04_5 ,mem_patch04 
+21db 600a0034 storet 4 ,mem_sniff_anchor 
+
+role_switch_prepare0:
+21dc 70455b01 jam switch_flag_accept ,mem_switch_flag 
+21dd 5800ffff setarg 0xffff 
+21de 60010032 store 2 ,mem_tsniff 
+21df 70007301 jam 1 ,mem_sniff_attempt 
+21e0 20600000 rtn 
+
+role_switch_master:
+21e1 44934004 bpatch patch04_6 ,mem_patch04 
+21e2 204021c9 call role_switch_check 
+21e3 24740000 nrtn user 
+21e4 78547c00 disable user 
+21e5 70001120 jam param_newconnto ,mem_newconnto_counter 
+21e6 793f800b set0 mark_fhs_already_good ,mark 
+
+roles_waitfhs_loop:
+21e7 20402a4f call rf_setup_time_master_slot 
+21e8 204022e6 call master_recv_packet 
+21e9 c505a1f4 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
+21ea 20402455 call new_conn_timeout 
+21eb 243a21e7 nbranch roles_waitfhs_loop ,blank 
+
+role_switch_fail_master:
+21ec 4493c004 bpatch patch04_7 ,mem_patch04 
+21ed 78547c00 disable user 
+21ee 1c427e00 deposit clkn_bt 
+21ef 600240ca store 4 ,mem_next_btclk 
+21f0 78387c00 enable clknt 
+21f1 7834fc00 enable master 
+21f2 700a992a jam bt_evt_switch_fail_master ,mem_fifo_temp 
+21f3 20207d86 branch ui_ipc_send_event 
+
+roles_replyto_fhs:
+21f4 44944005 bpatch patch05_0 ,mem_patch05 
+21f5 20402a4d call rf_setup_time_slave_slot 
+21f6 d8200010 arg type_id ,type 
+21f7 204022dc call master_send_packet 
+21f8 78587c00 disable clknt 
+21f9 7854fc00 disable master 
+21fa 20402818 call apply_switch_clke 
+21fb 20402435 call prepare_newconn 
+
+roles_newconns_loop:
+21fc 4494c005 bpatch patch05_1 ,mem_patch05 
+21fd 2040247c call slave_newconn_once 
+21fe 2036a202 branch roles_newconns_responded ,match 
+21ff 20402455 call new_conn_timeout 
+2200 243a21fc nbranch roles_newconns_loop ,blank 
+2201 202021ec branch role_switch_fail_master 
+
+roles_newconns_responded:
+2202 68008031 fetch 1 ,mem_mode 
+2203 793ffe01 set0 mode_master ,pdata 
+2204 60008031 store 1 ,mem_mode 
+2205 20402a88 call supervision_flush 
+2206 20402841 call calc_clke_offset 
+2207 78347c00 enable user 
+2208 700a992b jam bt_evt_switch_success_master ,mem_fifo_temp 
+2209 20207d86 branch ui_ipc_send_event 
+
+context_load:
+220a 44954005 bpatch patch05_2 ,mem_patch05 
+220b 79200009 set1 mark_context ,mark 
+220c 1a227e00 deposit rega 
+220d 6001001e store 2 ,mem_context_ptr 
+220e 18007250 force context_size ,loopcnt 
+220f d8a0043f arg mem_le_state ,contw 
+2210 1a208c01 add rega ,coffset_mode ,contr 
+2211 e8c08000 ifetch 1 ,contr 
+2212 1a220c00 copy rega ,contr 
+2213 c2807f01 bbit1 mode_le ,memcpy 
+2214 d8a00030 arg mem_state ,contw 
+2215 20407f01 call memcpy 
+2216 78577c00 disable attempt 
+2217 68008077 fetch 1 ,mem_amaddr 
+2218 98000800 iforce am_addr 
+2219 70008a01 jam 1 ,mem_current_sniff_attempt 
+221a 2034a21c branch context_load_master ,master 
+221b 70008a01 jam 1 ,mem_current_sniff_attempt 
+
+context_load_master:
+221c 68008030 fetch 1 ,mem_state 
+221d c4008000 rtnbit0 state_insniff 
+221e 68008073 fetch 1 ,mem_sniff_attempt 
+221f 6000808a store 1 ,mem_current_sniff_attempt 
+2220 68008074 fetch 1 ,mem_sniff_timeout 
+2221 6000808b store 1 ,mem_current_sniff_timeout 
+2222 20600000 rtn 
+
+context_save:
+2223 4495c005 bpatch patch05_3 ,mem_patch05 
+2224 6801001e fetch 2 ,mem_context_ptr 
+2225 98000a00 iforce contw 
+2226 18007250 force context_size ,loopcnt 
+2227 d8c0043f arg mem_le_state ,contr 
+2228 203b7f01 branch memcpy ,le 
+2229 d8c00030 arg mem_state ,contr 
+222a 20207f01 branch memcpy 
+
+context_get_next:
+222b df200001 arg context_num ,loopcnt 
+222c 68088015 fetcht 1 ,mem_current_context 
+
+context_get_next_loop:
+222d 18408401 increase 1 ,temp 
+222e 2841fe01 compare context_num ,temp ,0xff 
+222f 2420a231 nbranch context_get_next_cont ,true 
+2230 d8400000 arg 0 ,temp 
+
+context_get_next_cont:
+2231 60088015 storet 1 ,mem_current_context 
+2232 184ffe50 mul32 temp ,context_size ,pdata 
+2233 da204040 arg mem_context ,rega 
+2234 9a20a200 iadd rega ,rega 
+2235 ea208000 ifetch 1 ,rega 
+2236 c280a239 bbit1 state_insniff ,context_get_next_sniff 
+2237 c3800000 rtnbit1 state_inconn 
+2238 c3818000 rtnbit1 state_inpage 
+
+context_get_next_sniff:
+2239 c200222d loop context_get_next_loop 
+223a 20600000 rtn 
+
+context_new:
+223b 44964005 bpatch patch05_4 ,mem_patch05 
+223c da60226a arg context_search_empty ,regc 
+223d 20402261 call context_search 
+223e 24628000 nrtn zero 
+223f 1a227e00 deposit rega 
+2240 6001001e store 2 ,mem_context_ptr 
+2241 18007c00 force 0 ,null 
+2242 20600000 rtn 
+
+context_check_all_wack:
+2243 20402725 call check_esco_amaddr 
+2244 2020a24b branch context_check_esco_wack ,true 
+2245 6801001e fetch 2 ,mem_context_ptr 
+2246 1fe08a17 add pdata ,coffset_arq ,contw 
+2247 68008047 fetch 1 ,mem_arq 
+2248 e0a08000 istore 1 ,contw 
+2249 da6022aa arg context_check_a_wack ,regc 
+224a 20202261 branch context_search 
+
+context_check_esco_wack:
+224b 68008047 fetch 1 ,mem_arq 
+224c 2feffe03 isolate1 wack ,pdata 
+224d 2020a250 branch context_esco_wack ,true 
+224e 18007c01 force 1 ,null 
+224f 20600000 rtn 
+
+context_esco_wack:
+2250 18007c00 force 0 ,null 
+2251 20600000 rtn 
+
+context_check_idle:
+2252 da6022a7 arg context_check_inconn ,regc 
+2253 20202261 branch context_search 
+
+context_traverse_linkkey:
+2254 6809001e fetcht 2 ,mem_context_ptr 
+2255 da6022cf arg context_traverse_clearkey ,regc 
+2256 20202261 branch context_search 
+
+context_search_conn_handle:
+2257 6808c1cf fetcht 1 ,mem_hci_conn_handle 
+
+context_search_conn_handle2:
+2258 da602275 arg context_search_handle ,regc 
+2259 20202261 branch context_search 
+
+context_search_plap:
+225a 4496c005 bpatch patch05_5 ,mem_patch05 
+225b 680b41d0 fetcht 6 ,mem_hci_plap 
+
+context_search_plap2:
+225c da60226e arg context_search_lap ,regc 
+225d 20202261 branch context_search 
+
+context_search_insniff:
+225e da60227b arg context_search_sniff ,regc 
+225f 20202261 branch context_search 
+
+context_search_sniff_window:
+2260 da6022c6 arg context_search_window ,regc 
+
+context_search:
+2261 44974005 bpatch patch05_6 ,mem_patch05 
+2262 da204040 arg mem_context ,rega 
+2263 df200001 arg context_num ,loopcnt 
+
+context_search_loop:
+2264 ea208000 ifetch 1 ,rega 
+2265 1a627a00 copy regc ,pc 
+
+context_search_next:
+2266 1a20a250 increase context_size ,rega 
+2267 c2002264 loop context_search_loop 
+2268 18007c01 force 1 ,null 
+2269 20600000 rtn 
+
+context_search_empty:
+226a c2802266 bbit1 state_inconn ,context_search_next 
+226b c281a266 bbit1 state_inpage ,context_search_next 
+226c 18007c00 force 0 ,null 
+226d 20600000 rtn 
+
+context_search_lap:
+226e c281a270 bbit1 state_inpage ,context_search_lap_cont 
+226f c3002266 bbit0 state_inconn ,context_search_next 
+
+context_search_lap_cont:
+2270 1a208c10 add rega ,coffset_plap ,contr 
+2271 e8c30000 ifetch 6 ,contr 
+2272 98467c00 isub temp ,null 
+2273 20628000 rtn zero 
+2274 20202266 branch context_search_next 
+
+context_search_handle:
+2275 c3002266 bbit0 state_inconn ,context_search_next 
+2276 1a208c16 add rega ,coffset_conn_handle ,contr 
+2277 e8c08000 ifetch 1 ,contr 
+2278 98467c00 isub temp ,null 
+2279 20628000 rtn zero 
+227a 20202266 branch context_search_next 
+
+context_search_sniff:
+227b c300a266 bbit0 state_insniff ,context_search_next 
+
+context_search_sniff_loop:
+227c 204022b3 call context_get_anchor 
+227d 20402297 call sign_pdata_temp 
+227e 98467e00 isub temp ,pdata 
+227f 1fe0fe01 increase 1 ,pdata 
+2280 20212291 branch context_search_sniff_miss ,positive 
+2281 18c22400 copy contr ,regb 
+2282 60048aa2 store 9 ,mem_temp 
+2283 6800c4c0 fetch 1 ,mem_le_sc_calc 
+2284 243a2289 nbranch context_search_sniff_sc ,blank 
+2285 68048aa2 fetch 9 ,mem_temp 
+2286 1a420c00 copy regb ,contr 
+2287 1fe0fe05 increase 5 ,pdata 
+2288 2020228c branch context_search_meet1 
+
+context_search_sniff_sc:
+2289 68048aa2 fetch 9 ,mem_temp 
+228a 1a420c00 copy regb ,contr 
+228b 1fe0fe14 increase 20 ,pdata 
+
+context_search_meet1:
+228c 24212266 nbranch context_search_next ,positive 
+
+context_search_meet:
+228d 18424200 copy temp ,bt_clk 
+228e 204022bf call context_next_anchor 
+228f 18007c00 force 0 ,null 
+2290 20600000 rtn 
+
+context_search_sniff_miss:
+2291 98002400 iforce regb 
+2292 1a208c02 add rega ,coffset_tsniff ,contr 
+2293 e8c10000 ifetch 2 ,contr 
+2294 203a228d branch context_search_meet ,blank 
+2295 204022bf call context_next_anchor 
+2296 2020227c branch context_search_sniff_loop 
+
+sign_pdata_temp:
+2297 1ff11600 rshift16 pdata ,timeup 
+2298 196c9600 rshift8 timeup ,timeup 
+2299 2022a2a1 branch sign_pdata_temp_p0 ,zero 
+229a 29601e0f compare 0xf ,timeup ,0xf 
+229b 24608000 nrtn true 
+229c 18511600 rshift16 temp ,timeup 
+229d 196c9600 rshift8 timeup ,timeup 
+229e 24628000 nrtn zero 
+229f 7920041c set1 28 ,temp 
+22a0 20600000 rtn 
+
+sign_pdata_temp_p0:
+22a1 18511600 rshift16 temp ,timeup 
+22a2 196c9600 rshift8 timeup ,timeup 
+22a3 29601e0f compare 0xf ,timeup ,0xf 
+22a4 24608000 nrtn true 
+22a5 79207e1c set1 28 ,pdata 
+22a6 20600000 rtn 
+
+context_check_inconn:
+22a7 c3002266 bbit0 state_inconn ,context_search_next 
+22a8 18007c00 force 0 ,null 
+22a9 20600000 rtn 
+
+context_check_a_wack:
+22aa c3002266 bbit0 state_inconn ,context_search_next 
+22ab 1a208c01 add rega ,coffset_mode ,contr 
+22ac e8c08000 ifetch 1 ,contr 
+22ad c2802266 bbit1 mode_le ,context_search_next 
+22ae 1a208c17 add rega ,coffset_arq ,contr 
+22af e8c08000 ifetch 1 ,contr 
+22b0 c301a266 bbit0 wack ,context_search_next 
+22b1 18007c00 force 0 ,null 
+22b2 20600000 rtn 
+
+context_get_anchor:
+22b3 1a208c01 add rega ,coffset_mode ,contr 
+22b4 e8c88000 ifetcht 1 ,contr 
+22b5 1c427e00 deposit clkn_bt 
+22b6 284ffe01 isolate1 mode_master ,temp 
+22b7 1a208c04 add rega ,coffset_sniff_anchor ,contr 
+22b8 e8ca0000 ifetcht 4 ,contr 
+22b9 20608000 rtn true 
+22ba 1a208c08 add rega ,coffset_clk_offset ,contr 
+22bb e8c30000 ifetch 6 ,contr 
+22bc 20402854 call calc_clke2 
+22bd 1d027e00 deposit clke_bt 
+22be 20600000 rtn 
+
+context_next_anchor:
+22bf 1a208c02 add rega ,coffset_tsniff ,contr 
+22c0 1a208a04 add rega ,coffset_sniff_anchor ,contw 
+22c1 e8c10000 ifetch 2 ,contr 
+22c2 98409600 iadd temp ,timeup 
+22c3 19627e00 deposit timeup 
+22c4 e0a20000 istore 4 ,contw 
+22c5 20205449 branch le_context_nexthop 
+
+context_search_window:
+22c6 c300a266 bbit0 state_insniff ,context_search_next 
+22c7 204022b3 call context_get_anchor 
+22c8 9b60fe00 iadd stop_watch ,pdata 
+22c9 9b60fe00 iadd stop_watch ,pdata 
+22ca 98e0fe00 iadd queue ,pdata 
+22cb 98467c00 isub temp ,null 
+22cc 24212266 nbranch context_search_next ,positive 
+22cd 18007c00 force 0 ,null 
+22ce 20600000 rtn 
+
+context_traverse_clearkey:
+22cf c3002266 bbit0 state_inconn ,context_search_next 
+22d0 18427e00 deposit temp 
+22d1 9a267c00 isub rega ,null 
+22d2 203f2266 branch context_search_next ,null 
+22d3 1a208c01 add rega ,coffset_mode ,contr 
+22d4 e8c08000 ifetch 1 ,contr 
+22d5 c2802266 bbit1 mode_le ,context_search_next 
+22d6 ea208000 ifetch 1 ,rega 
+22d7 793ffe07 set0 state_linkkey ,pdata 
+22d8 e2208000 istore 1 ,rega 
+22d9 20202266 branch context_search_next 
+
+master_conn_send_packet:
+22da 4497c005 bpatch patch05_7 ,mem_patch05 
+22db 20402a4f call rf_setup_time_master_slot 
+
+master_send_packet:
+22dc 1c40c201 add clkn_bt ,1 ,bt_clk 
+22dd 204028e2 call fetch_self_bt_adr 
+22de 18004803 force 0x03 ,freq_mode 
+22df 204028d2 call tx_radio_freq 
+22e0 20402a51 call start_transmitter 
+22e1 20402a56 call start_tx_native 
+22e2 20402a64 call send_access_word 
+22e3 20202762 branch transmit_packet 
+
+master_conn_recv_packet:
+22e4 44984006 bpatch patch06_0 ,mem_patch06 
+22e5 20402a4d call rf_setup_time_slave_slot 
+
+master_recv_packet:
+22e6 1c40c201 add clkn_bt ,1 ,bt_clk 
+22e7 204028e2 call fetch_self_bt_adr 
+22e8 18004803 force 0x03 ,freq_mode 
+22e9 204028cc call rx_radio_freq 
+22ea 2040242a call init_rx_packet_flags 
+22eb 204029f1 call prep_crypt 
+22ec 20402a5b call start_rx_native 
+22ed 204029eb call start_receiver 
+
+master_rx_conn_finish_packet:
+22ee 20402a0d call wait_access_clkn_rt 
+22ef 246c0000 nrtn sync 
+22f0 204029bb call save_rssi 
+22f1 2020251c branch receive_packet 
+
+master_newconn_once:
+22f2 4498c006 bpatch patch06_1 ,mem_patch06 
+22f3 68008181 fetch 1 ,mem_fhs_am_addr 
+22f4 98000800 iforce am_addr 
+22f5 18000201 force type_poll ,type 
+22f6 204022da call master_conn_send_packet 
+22f7 202022e4 branch master_conn_recv_packet 
+
+inquiry_scan_dispatch:
+22f8 6800c093 fetch 1 ,mem_scan_mode 
+22f9 c4000000 rtnbit0 inq_scan_mode 
+22fa 18000e04 force iscan_interval_timer ,queue 
+22fb 20407f16 call timer_check 
+22fc 247a0000 nrtn blank 
+22fd 680940ad fetcht 2 ,mem_iscan_window 
+22fe 18000e04 force 4 ,queue 
+22ff 2040271c call sniff_check_window 
+2300 20740000 rtn user 
+2301 20402308 call inquiry_scan_start 
+2302 18000e04 force iscan_interval_timer ,queue 
+2303 680140af fetch 2 ,mem_iscan_interval 
+2304 242c7f08 nbranch timer_init ,sync 
+2305 180a7e00 random pdata 
+2306 9ea17e00 iand mask3ff ,pdata 
+2307 20207f08 branch timer_init 
+
+inquiry_scan_start:
+2308 44994006 bpatch patch06_2 ,mem_patch06 
+2309 70018100 jam 0 ,mem_fhs_am_addr 
+230a 78587c00 disable clknt 
+230b 78577c00 disable attempt 
+230c 204028a4 call afh_clear 
+230d 1c4143fc and clkn_bt ,0x1fc ,bt_clk 
+230e 18004801 force 0x01 ,freq_mode 
+230f 204028d8 call fetch_giac 
+2310 204028cc call rx_radio_freq 
+2311 7940001d setflip mark_inquiry_state ,mark 
+2312 68008006 fetch 1 ,mem_inquiryscan_waitcnt 
+2313 1fe0fe01 increase 1 ,pdata 
+2314 60008006 store 1 ,mem_inquiryscan_waitcnt 
+2315 204028f2 call fetch_diac 
+2316 204029eb call start_receiver 
+2317 20402a14 call wait_access_forever 
+2318 246c0000 nrtn sync 
+2319 4499c006 bpatch patch06_3 ,mem_patch06 
+231a 18003600 force 0 ,stop_watch 
+231b 204028f9 call shutdown_radio 
+231c 68008007 fetch 1 ,mem_inquiryscan_rcvcnt 
+231d 1fe0fe01 increase 1 ,pdata 
+231e 60008007 store 1 ,mem_inquiryscan_rcvcnt 
+231f 204028d8 call fetch_giac 
+2320 20402a4d call rf_setup_time_slave_slot 
+2321 1c21c202 or_into 0x002 ,bt_clk 
+2322 18004801 force 0x01 ,freq_mode 
+2323 204028d2 call tx_radio_freq 
+2324 204028f2 call fetch_diac 
+2325 20402a51 call start_transmitter 
+2326 20402a5f call start_tx_external 
+2327 1c427e00 deposit clkn_bt 
+2328 60020161 store 4 ,mem_clkn_bt 
+2329 20402a64 call send_access_word 
+232a 18000202 force type_fhs ,type 
+232b 18000800 force 0 ,am_addr 
+232c 20402a6b call scan_mode_whiten 
+232d 20402766 call transmit_packet_whitened 
+232e 20402332 call send_eir 
+232f 1c2143fd and_into 0x1fd ,bt_clk 
+2330 1cc0cc01 increase 1 ,n_tx_slot 
+2331 20600000 rtn 
+
+send_eir:
+2332 449a4006 bpatch patch06_4 ,mem_patch06 
+2333 6800c0d1 fetch 1 ,mem_eir_enable 
+2334 207a0000 rtn blank 
+2335 d8a0018e arg mem_eir ,contw 
+2336 6800c515 fetch 1 ,mem_local_name_length 
+2337 1fe27200 copy pdata ,loopcnt 
+2338 1fe0fe01 increase 1 ,pdata 
+2339 e0a08000 istore 1 ,contw 
+233a 18a20400 copy contw ,temp 
+233b 1fe0fe01 increase 1 ,pdata 
+233c 600141dc store 2 ,mem_tx_len 
+233d 18420a00 copy temp ,contw 
+233e 58000009 setarg 0x09 
+233f e0a08000 istore 1 ,contw 
+2340 d8c04516 arg mem_local_name ,contr 
+2341 20407f01 call memcpy 
+2342 da60458d arg mem_all_uuid_128bits ,regc 
+2343 df200004 arg 4 ,loopcnt 
+2344 20402354 call get_all_uuid 
+2345 da604577 arg mem_all_uuid_16bits ,regc 
+2346 df200001 arg 1 ,loopcnt 
+2347 20402354 call get_all_uuid 
+2348 1800020a force type_dm3 ,type 
+2349 7041db02 jam 2 ,mem_tx_lch 
+234a 5800018e setarg mem_eir 
+234b 6001016f store 2 ,mem_txptr 
+234c 20402a4d call rf_setup_time_slave_slot 
+234d 204028d2 call tx_radio_freq 
+234e 20402a51 call start_transmitter 
+234f 20402a5f call start_tx_external 
+2350 20402a64 call send_access_word 
+2351 20402a6b call scan_mode_whiten 
+2352 20402766 call transmit_packet_whitened 
+2353 20600000 rtn 
+
+get_all_uuid:
+2354 18a20400 copy contw ,temp 
+2355 1a620c00 copy regc ,contr 
+2356 e8c08000 ifetch 1 ,contr 
+2357 207a0000 rtn blank 
+
+lshift_loop:
+2358 1fe3fe00 lshift pdata ,pdata 
+2359 c2002358 loop lshift_loop 
+235a 1fe22200 copy pdata ,rega 
+235b 1fe0fe02 increase 2 ,pdata 
+235c 1fe20e00 copy pdata ,queue 
+235d 680141dc fetch 2 ,mem_tx_len 
+235e 98e0fe00 iadd queue ,pdata 
+235f 600141dc store 2 ,mem_tx_len 
+2360 18420a00 copy temp ,contw 
+2361 1a227e00 copy rega ,pdata 
+2362 1fe0fe01 increase 1 ,pdata 
+2363 e0a08000 istore 1 ,contw 
+2364 1a620c00 copy regc ,contr 
+2365 e8c08000 ifetch 1 ,contr 
+2366 e8c08000 ifetch 1 ,contr 
+2367 e0a08000 istore 1 ,contw 
+2368 1a227200 copy rega ,loopcnt 
+2369 20207f01 branch memcpy 
+
+page_scan_dispatch:
+236a 6800c093 fetch 1 ,mem_scan_mode 
+236b c4008000 rtnbit0 page_scan_mode 
+236c 18000e05 force pscan_interval_timer ,queue 
+236d 20407f16 call timer_check 
+236e 247a0000 nrtn blank 
+236f 680940b1 fetcht 2 ,mem_pscan_window 
+2370 18000e28 force 40 ,queue 
+2371 2040271c call sniff_check_window 
+2372 20740000 rtn user 
+2373 18000800 force 0 ,am_addr 
+2374 70001008 jam param_pagerespto ,mem_fhs_wait_counter 
+2375 793f800b set0 mark_fhs_already_good ,mark 
+2376 2040237a call page_scan_start 
+2377 18000e05 force pscan_interval_timer ,queue 
+2378 680140b3 fetch 2 ,mem_pscan_interval 
+2379 20207f08 branch timer_init 
+
+page_scan_start:
+237a 449ac006 bpatch patch06_5 ,mem_patch06 
+237b 78587c00 disable clknt 
+237c 204028a4 call afh_clear 
+237d 68008008 fetch 1 ,mem_pagescan_waitcnt 
+237e 1fe0fe01 increase 1 ,pdata 
+237f 60008008 store 1 ,mem_pagescan_waitcnt 
+2380 18004c00 force 0 ,n_tx_slot 
+2381 204028e2 call fetch_self_bt_adr 
+2382 1c40c201 add clkn_bt ,1 ,bt_clk 
+2383 18004802 force 0x02 ,freq_mode 
+2384 449b4006 bpatch patch06_6 ,mem_patch06 
+2385 204028cc call rx_radio_freq 
+2386 204029eb call start_receiver 
+2387 20402a14 call wait_access_forever 
+2388 246c0000 nrtn sync 
+2389 204028f9 call shutdown_radio 
+238a 68008009 fetch 1 ,mem_pagescan_rcvcnt 
+238b 1fe0fe01 increase 1 ,pdata 
+238c 60008009 store 1 ,mem_pagescan_rcvcnt 
+238d 18003600 force 0 ,stop_watch 
+238e 20402a4d call rf_setup_time_slave_slot 
+238f 1c21c202 or_into 0x002 ,bt_clk 
+2390 18004801 force 0x01 ,freq_mode 
+2391 204028d2 call tx_radio_freq 
+2392 20402a51 call start_transmitter 
+2393 20402a5f call start_tx_external 
+2394 20402a64 call send_access_word 
+2395 2040264d call end_of_packet 
+2396 18000800 force 0 ,am_addr 
+2397 d9600600 arg param_rf_setup ,timeup 
+2398 35330200 until clke_rt ,meet 
+2399 1d01d003 or_into 0x03 ,clke_bt 
+239a 1c2143fd and_into 0x1fd ,bt_clk 
+
+page_scan_wait_fhs_restart:
+239b 449bc006 bpatch patch06_7 ,mem_patch06 
+239c 1cc0cc01 increase 1 ,n_tx_slot 
+239d 204028cc call rx_radio_freq 
+239e 204029eb call start_receiver 
+239f 20402a07 call wait_access_mhalfbnd 
+23a0 242c23a4 nbranch page_scan_wait_fhs_again ,sync 
+23a1 20402a6b call scan_mode_whiten 
+23a2 2040251e call receive_packet_whitened 
+23a3 c505a3ab bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
+
+page_scan_wait_fhs_again:
+23a4 449c4007 bpatch patch07_0 ,mem_patch07 
+23a5 68008010 fetch 1 ,mem_fhs_wait_counter 
+23a6 207a0000 rtn blank 
+23a7 1fe0ffff increase -1 ,pdata 
+23a8 60008010 store 1 ,mem_fhs_wait_counter 
+23a9 20402a4f call rf_setup_time_master_slot 
+23aa 2020239b branch page_scan_wait_fhs_restart 
+
+page_scan_reply_to_fhs:
+23ab 449cc007 bpatch patch07_1 ,mem_patch07 
+23ac 793fd001 set0 1 ,clke_bt 
+23ad 79205000 set1 0 ,clke_bt 
+23ae 6800800a fetch 1 ,mem_pagescan_rcvfhscnt 
+23af 1fe0fe01 increase 1 ,pdata 
+23b0 6000800a store 1 ,mem_pagescan_rcvfhscnt 
+23b1 20402a4d call rf_setup_time_slave_slot 
+23b2 1c21c202 or_into 0x02 ,bt_clk 
+23b3 204028d2 call tx_radio_freq 
+23b4 20402a51 call start_transmitter 
+23b5 20402a5f call start_tx_external 
+23b6 20402a64 call send_access_word 
+23b7 2040264d call end_of_packet 
+
+slave_apply_clke_bt:
+23b8 2d000603 compare 0x03 ,clke_bt ,0x03 
+23b9 2020a3bc branch slave_apply_clke_bt_now ,true 
+23ba 37cb8200 until null ,mhalfbnd 
+23bb 202023b8 branch slave_apply_clke_bt 
+
+slave_apply_clke_bt_now:
+23bc 68020165 fetch 4 ,mem_clke_bt 
+23bd 1fe1fe03 or_into 0x03 ,pdata 
+23be 1fe25000 icopy clke_bt 
+
+start_slave_connection:
+23bf 449d4007 bpatch patch07_2 ,mem_patch07 
+23c0 68030178 fetch 6 ,extm_lap 
+23c1 60030040 store 6 ,mem_plap 
+23c2 20402435 call prepare_newconn 
+
+slave_newconn_loop:
+23c3 2040247c call slave_newconn_once 
+23c4 2036a3c8 branch sconn_successful ,match 
+23c5 20402455 call new_conn_timeout 
+23c6 243a23c3 nbranch slave_newconn_loop ,blank 
+23c7 20600000 rtn 
+
+sconn_successful:
+23c8 449dc007 bpatch patch07_3 ,mem_patch07 
+23c9 20402440 call newconn_init 
+23ca 2040223b call context_new 
+23cb 24628000 nrtn zero 
+23cc 70003100 jam 0 ,mem_mode 
+23cd 20402841 call calc_clke_offset 
+23ce 20202223 branch context_save 
+
+slave_dispatch:
+23cf 449e4007 bpatch patch07_4 ,mem_patch07 
+23d0 20402850 call calc_clke 
+23d1 204023f3 call role_switch_slave 
+23d2 20740000 rtn user 
+
+slave_loop:
+23d3 449ec007 bpatch patch07_5 ,mem_patch07 
+23d4 20402c69 call check_bt_disabled 
+23d5 20406caa call scheduler_process 
+23d6 20402514 call slave_conn_recv_packet 
+23d7 2436a3e2 nbranch slave_notmatch ,match 
+23d8 20402a88 call supervision_flush 
+23d9 20406cc2 call scheduler_tx_l2cap_pkt 
+23da 20402489 call prepare_tx 
+23db 20402757 call slave_conn_send_packet 
+23dc 20402728 call parse_l2cap 
+23dd 20405d08 call parse_lmp 
+23de 6800800b fetch 1 ,mem_slave_rcvcnt 
+23df 1fe0fe01 increase 1 ,pdata 
+23e0 6000800b store 1 ,mem_slave_rcvcnt 
+23e1 20402841 call calc_clke_offset 
+
+slave_notmatch:
+23e2 449f4007 bpatch patch07_6 ,mem_patch07 
+23e3 20402bb1 call lpm_set_mult 
+23e4 20402a7f call supervision_update 
+23e5 202123eb branch slave_disconnect ,positive 
+23e6 204021a7 call check_disconnect_timeout 
+23e7 243423eb nbranch slave_disconnect ,user 
+23e8 204026f3 call check_attempt 
+23e9 243a23d3 nbranch slave_loop ,blank 
+23ea 20600000 rtn 
+
+slave_disconnect:
+23eb 449fc007 bpatch patch07_7 ,mem_patch07 
+23ec 70015100 jam 0 ,mem_tester_emulate 
+23ed 70017f00 jam 0 ,mem_debug_config 
+23ee 2040245d call quit_connection 
+23ef 793f8011 set0 mark_testmode ,mark 
+23f0 20407fb0 call test_enable_white 
+23f1 68008030 fetch 1 ,mem_state 
+23f2 20600000 rtn 
+
+role_switch_slave:
+23f3 44a04008 bpatch patch08_0 ,mem_patch08 
+23f4 204021c9 call role_switch_check 
+23f5 24740000 nrtn user 
+23f6 18820400 copy am_addr ,temp 
+23f7 20402a6f call get_free_amaddr 
+23f8 60008181 store 1 ,mem_fhs_am_addr 
+23f9 18420800 copy temp ,am_addr 
+23fa 70001120 jam param_newconnto ,mem_newconnto_counter 
+
+roles_sendfhs_loop:
+23fb 44a0c008 bpatch patch08_1 ,mem_patch08 
+23fc 20402a4f call rf_setup_time_master_slot 
+23fd 18000202 force type_fhs ,type 
+23fe 2040274f call slave_send_access 
+23ff 1c427e00 deposit clkn_bt 
+2400 60020161 store 4 ,mem_clkn_bt 
+2401 20402762 call transmit_packet 
+2402 20402a4d call rf_setup_time_slave_slot 
+2403 7837fc00 enable user3 
+2404 204024f6 call slave_receive_access 
+2405 202c240d branch roles_got_fhs_reply ,sync 
+2406 204028f9 call shutdown_radio 
+2407 20402455 call new_conn_timeout 
+2408 243a23fb nbranch roles_sendfhs_loop ,blank 
+2409 c6820000 rtnmark0 mark_accept_switch 
+240a 70007c34 jam lmp_slot_offset ,mem_lmo_opcode2 
+240b 79200003 set1 mark_switch_initiated ,mark 
+240c 20600000 rtn 
+
+roles_got_fhs_reply:
+240d 78387c00 enable clknt 
+240e 20402435 call prepare_newconn 
+240f 204028a4 call afh_clear 
+
+roles_newconn_loop:
+2410 44a14008 bpatch patch08_2 ,mem_patch08 
+2411 204022f2 call master_newconn_once 
+2412 202c2419 branch roles_newconn_responded ,sync 
+2413 20402455 call new_conn_timeout 
+2414 243a2410 nbranch roles_newconn_loop ,blank 
+2415 78587c00 disable clknt 
+2416 1d027e00 deposit clke_bt 
+2417 600240ca store 4 ,mem_next_btclk 
+2418 20600000 rtn 
+
+roles_newconn_responded:
+2419 7834fc00 enable master 
+241a c582241f bmark0 mark_accept_switch ,roles_newconn_nolmp 
+241b 793f8004 set0 mark_accept_switch ,mark 
+241c 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+241d 70007d33 jam lmp_host_connection_req ,mem_lmi_opcode2 
+241e 204062f8 call tid_set_reply 
+
+roles_newconn_nolmp:
+241f 18827e00 deposit am_addr 
+2420 60008077 store 1 ,mem_amaddr 
+2421 18007e00 force 0 ,pdata 
+2422 60030038 store 6 ,mem_clk_offset 
+2423 68008031 fetch 1 ,mem_mode 
+2424 79207e01 set1 mode_master ,pdata 
+2425 60008031 store 1 ,mem_mode 
+2426 20402a88 call supervision_flush 
+2427 7854fc00 disable master 
+2428 78347c00 enable user 
+2429 20600000 rtn 
+
+init_rx_packet_flags:
+242a 44a1c008 bpatch patch08_3 ,mem_patch08 
+242b 7856fc00 disable match 
+242c 793f8005 set0 mark_loopback ,mark 
+242d 793f800a set0 mark_am_addr_broadcast ,mark 
+242e 793f8010 set0 mark_longpacket ,mark 
+242f 793f800f set0 mark_old_packet ,mark 
+2430 68008047 fetch 1 ,mem_arq 
+2431 793ffe05 set0 arqnx ,pdata 
+2432 79207e04 set1 flowx ,pdata 
+2433 60008047 store 1 ,mem_arq 
+2434 20600000 rtn 
+
+prepare_newconn:
+2435 44a24008 bpatch patch08_4 ,mem_patch08 
+2436 70001120 jam param_newconnto ,mem_newconnto_counter 
+2437 70004750 jam param_newconn_arq ,mem_arq 
+2438 680140bf fetch 2 ,mem_rx_window_init 
+2439 6001003e store 2 ,mem_rx_window 
+243a 1c427e00 deposit clkn_bt 
+243b 600240ca store 4 ,mem_next_btclk 
+243c 20780000 rtn clknt 
+243d 1d027e00 deposit clke_bt 
+243e 600240ca store 4 ,mem_next_btclk 
+243f 20600000 rtn 
+
+newconn_init:
+2440 44a2c008 bpatch patch08_5 ,mem_patch08 
+2441 20405d04 call init_lmp_reinit 
+2442 20402459 call new_conn_handle 
+2443 60008046 store 1 ,mem_conn_handle 
+2444 58000000 setarg 0 
+2445 6001025d store 2 ,mem_l2cap_rxbuff1_len 
+2446 58001c80 setarg param_supervision_to 
+2447 60010051 store 2 ,mem_supervision_to 
+2448 68008030 fetch 1 ,mem_state 
+2449 79207e00 set1 state_inconn ,pdata 
+244a 60008030 store 1 ,mem_state 
+244b 70004b00 jam 0 ,mem_op 
+244c 70004c00 jam 0 ,mem_state_map 
+244d 7000a000 jam 0 ,mem_lpm_current_mult 
+244e 20202a88 branch supervision_flush 
+
+clear_linkkey:
+244f 44a34008 bpatch patch08_6 ,mem_patch08 
+2450 18007e00 force 0 ,pdata 
+2451 600441be store 8 ,mem_link_key 
+2452 e0a40000 istore 8 ,contw 
+2453 204021c5 call clear_linkstate 
+2454 20202254 branch context_traverse_linkkey 
+
+new_conn_timeout:
+2455 68008011 fetch 1 ,mem_newconnto_counter 
+2456 1fe0ffff increase -1 ,pdata 
+2457 60008011 store 1 ,mem_newconnto_counter 
+2458 20600000 rtn 
+
+new_conn_handle:
+2459 6800c0cf fetch 1 ,mem_handle_num 
+245a 1fe0fe01 increase 1 ,pdata 
+245b 6000c0cf store 1 ,mem_handle_num 
+245c 20600000 rtn 
+
+quit_connection:
+245d 44a3c008 bpatch patch08_7 ,mem_patch08 
+245e 6800c1ce fetch 1 ,mem_hci_cmd 
+245f c001a462 beq hci_cmd_remote_name_req ,quit_connection_name 
+2460 68008048 fetch 1 ,mem_lmp_to_send 
+2461 c080a466 bne lmp_name_req ,quit_connection_cont 
+
+quit_connection_name:
+2462 20404d06 call cmd_check_plap 
+2463 2422a466 nbranch quit_connection_cont ,zero 
+2464 204021a4 call master_name_error 
+2465 7041ce00 jam 0 ,mem_hci_cmd 
+
+quit_connection_cont:
+2466 44a44009 bpatch patch09_0 ,mem_patch09 
+2467 204033af call app_disconn_reason_collect_bt 
+2468 204026e9 call sniff_exit 
+2469 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+246a 20407d86 call ui_ipc_send_event 
+246b 20405cf7 call init_lmp_work 
+246c 20404d6b call l2cap_init_work 
+246d 2040757d call sp_initialize 
+246e 68008030 fetch 1 ,mem_state 
+246f 793ffe00 set0 state_inconn 
+2470 60008030 store 1 ,mem_state 
+2471 70468100 jam 0 ,memui_reconnect_mode 
+2472 6800804c fetch 1 ,mem_state_map 
+2473 2fe18000 compare 0x0 ,pdata ,0xc0 
+2474 2020a476 branch quit_connection_not_clear_mark ,true 
+2475 793f8001 set0 mark_rxbuf_inuse ,mark 
+
+quit_connection_not_clear_mark:
+2476 68008047 fetch 1 ,mem_arq 
+2477 c301a478 bbit0 wack ,quit_connection_not_clear_tx 
+
+quit_connection_not_clear_tx:
+2478 6800804b fetch 1 ,mem_op 
+2479 c4030000 rtnbit0 op_txl2cap 
+247a 793f8002 set0 mark_tx_l2cap ,mark 
+247b 20600000 rtn 
+
+slave_newconn_once:
+247c 44a4c009 bpatch patch09_1 ,mem_patch09 
+247d 68008174 fetch 1 ,extm_newconn_am_addr 
+247e 207a0000 rtn blank 
+247f 1fe20800 icopy am_addr 
+2480 20402514 call slave_conn_recv_packet 
+2481 24768000 nrtn match 
+2482 18000200 force type_null ,type 
+2483 20402757 call slave_conn_send_packet 
+2484 18827e00 deposit am_addr 
+2485 60008077 store 1 ,mem_amaddr 
+2486 18007e00 force 0 ,pdata 
+2487 60008174 store 1 ,extm_newconn_am_addr 
+2488 20600000 rtn 
+
+prepare_tx:
+2489 44a54009 bpatch patch09_2 ,mem_patch09 
+248a 68008030 fetch 1 ,mem_state 
+248b c3012496 bbit0 state_insco ,prepare_tx_not_sco 
+248c 18000207 force type_hv3 ,type 
+248d c583a495 bmark0 mark_esco ,prepare_tx_not_esco 
+248e 20402725 call check_esco_amaddr 
+248f 2420a496 nbranch prepare_tx_not_sco ,true 
+2490 20372496 branch prepare_tx_not_sco ,attempt 
+2491 204024c1 call set_wait_ack 
+2492 58000002 setarg 2 
+2493 600140c8 store 2 ,mem_retransmission_cnt 
+2494 20600000 rtn 
+
+prepare_tx_not_esco:
+2495 24770000 nrtn attempt 
+
+prepare_tx_not_sco:
+2496 44a5c009 bpatch patch09_3 ,mem_patch09 
+2497 20402243 call context_check_all_wack 
+2498 2422a4a7 nbranch prepare_tx_no_retransmit ,zero 
+2499 68008047 fetch 1 ,mem_arq 
+249a c301a4b0 bbit0 wack ,prepare_tx_pollnull 
+
+prepare_tx_retransmit:
+249b c502a4b4 bmark1 mark_loopback ,prepare_tx_loopback 
+249c 6800817f fetch 1 ,mem_debug_config 
+249d c28324ba bbit1 debug_tx_pattern ,prepare_tx_txpat 
+249e 680140c8 fetch 2 ,mem_retransmission_cnt 
+249f 1fe0ffff increase -1 ,pdata 
+24a0 600140c8 store 2 ,mem_retransmission_cnt 
+24a1 203a24a5 branch prepare_tx_nomore_retransmit ,blank 
+24a2 6800c0c5 fetch 1 ,mem_last_type 
+24a3 98000200 iforce type 
+24a4 20600000 rtn 
+
+prepare_tx_nomore_retransmit:
+24a5 44a64009 bpatch patch09_4 ,mem_patch09 
+24a6 20402687 call clear_got_tx 
+
+prepare_tx_no_retransmit:
+24a7 20402725 call check_esco_amaddr 
+24a8 2020a4b0 branch prepare_tx_pollnull ,true 
+24a9 2040600a call send_lmp 
+24aa 203424be branch prepare_tx_sendlmp ,user 
+24ab 6800804b fetch 1 ,mem_op 
+24ac c28324c0 bbit1 op_txl2cap ,prepare_tx_sendl2cap 
+24ad c502a4b4 bmark1 mark_loopback ,prepare_tx_loopback 
+24ae 6800817f fetch 1 ,mem_debug_config 
+24af c28324ba bbit1 debug_tx_pattern ,prepare_tx_txpat 
+
+prepare_tx_pollnull:
+24b0 18000201 force type_poll ,type 
+24b1 20748000 rtn master 
+24b2 18000200 force type_null ,type 
+24b3 20600000 rtn 
+
+prepare_tx_loopback:
+24b4 44a6c009 bpatch patch09_5 ,mem_patch09 
+24b5 68008019 fetch 1 ,mem_rx_type 
+24b6 98000200 iforce type 
+24b7 c1808000 rtnne 1 
+24b8 18000200 force type_null ,type 
+24b9 20600000 rtn 
+
+prepare_tx_txpat:
+24ba 68008158 fetch 1 ,test_mode_packet_type 
+24bb 1fe1020f and pdata ,0xf ,type 
+24bc 79200005 set1 mark_loopback ,mark 
+24bd 20600000 rtn 
+
+prepare_tx_sendlmp:
+24be 18000213 force type_lmp ,type 
+24bf 202024c1 branch set_wait_ack 
+
+prepare_tx_sendl2cap:
+24c0 204024ca call tx_l2cap_type 
+
+set_wait_ack:
+24c1 44a74009 bpatch patch09_6 ,mem_patch09 
+24c2 68088047 fetcht 1 ,mem_arq 
+24c3 79200403 set1 wack ,temp 
+24c4 60088047 storet 1 ,mem_arq 
+24c5 18227e00 deposit type 
+24c6 6000c0c5 store 1 ,mem_last_type 
+24c7 5800ffff setarg 0xffff 
+24c8 600140c8 store 2 ,mem_retransmission_cnt 
+24c9 20600000 rtn 
+
+tx_l2cap_type:
+24ca 44a7c009 bpatch patch09_7 ,mem_patch09 
+24cb 6800804c fetch 1 ,mem_state_map 
+24cc 2feffe05 isolate1 smap_edr ,pdata 
+24cd 680141dc fetch 2 ,mem_tx_len 
+24ce 2020a4e0 branch tx_l2cap_type_edr ,true 
+24cf 18000203 force type_dm1 ,type 
+24d0 1fe67c11 sub pdata ,17 ,null 
+24d1 20610000 rtn positive 
+24d2 18000204 force type_dh1 ,type 
+24d3 1fe67c1b sub pdata ,27 ,null 
+24d4 20610000 rtn positive 
+24d5 1800020a force type_dm3 ,type 
+24d6 1fe67c79 sub pdata ,121 ,null 
+24d7 20610000 rtn positive 
+24d8 1800020b force type_dh3 ,type 
+24d9 1fe67cb7 sub pdata ,183 ,null 
+24da 20610000 rtn positive 
+24db 1800020e force type_dm5 ,type 
+24dc 1fe67ce0 sub pdata ,224 ,null 
+24dd 20610000 rtn positive 
+24de 1800020f force type_dh5 ,type 
+24df 20600000 rtn 
+
+tx_l2cap_type_edr:
+24e0 18000203 force type_dm1 ,type 
+24e1 1fe67c11 sub pdata ,17 ,null 
+24e2 20610000 rtn positive 
+24e3 18000204 force type_dh1 ,type 
+24e4 1fe67c36 sub pdata ,54 ,null 
+24e5 20610000 rtn positive 
+24e6 1800020a force type_dm3 ,type 
+24e7 d840016f arg 367 ,temp 
+24e8 98467c00 isub temp ,null 
+24e9 24610000 nrtn positive 
+24ea 1800020e force type_dm5 ,type 
+24eb d84002a7 arg 679 ,temp 
+24ec 98467c00 isub temp ,null 
+24ed 24610000 nrtn positive 
+24ee 1800020f force type_dh5 ,type 
+24ef 20600000 rtn 
+
+slave_receive_master_slot:
+24f0 68008030 fetch 1 ,mem_state 
+24f1 c300a4f5 bbit0 state_insniff ,slave_receive_notsniff 
+24f2 68010032 fetch 2 ,mem_tsniff 
+24f3 203a24f5 branch slave_receive_notsniff ,blank 
+24f4 243724f7 nbranch slave_receive_sniff ,attempt 
+
+slave_receive_notsniff:
+24f5 20402a4f call rf_setup_time_master_slot 
+
+slave_receive_access:
+24f6 1d00c201 add clke_bt ,1 ,bt_clk 
+
+slave_receive_sniff:
+24f7 78287c00 enable swfine 
+24f8 6801003e fetch 2 ,mem_rx_window 
+24f9 1fe37e00 rshift pdata ,pdata 
+24fa d8400500 arg param_pll_setup ,temp 
+24fb 9840fe00 iadd temp ,pdata 
+24fc 20402a24 call ahead_window 
+24fd 204028ea call fetch_extm_bt_adr 
+24fe 18004803 force 0x03 ,freq_mode 
+24ff 204028cc call rx_radio_freq 
+2500 2040242a call init_rx_packet_flags 
+2501 204029f1 call prep_crypt 
+2502 44a8400a bpatch patch0a_0 ,mem_patch0a 
+2503 6801003e fetch 2 ,mem_rx_window 
+2504 1fe37e00 rshift pdata ,pdata 
+2505 20402a24 call ahead_window 
+2506 204029eb call start_receiver 
+2507 7826fc00 enable decode_fec0 
+2508 6801003e fetch 2 ,mem_rx_window 
+2509 d84003bb arg param_clke_cal ,temp 
+250a 9840b600 iadd temp ,stop_watch 
+250b 37c18400 correlate null ,timeout 
+250c 1b420400 copy clke ,temp 
+250d 600b009a storet 6 ,mem_sync_clke 
+250e 7846fc00 disable decode_fec0 
+250f 246c0000 nrtn sync 
+2510 dd2003bb arg param_clke_cal ,clke_rt 
+2511 1c225000 copy bt_clk ,clke_bt 
+2512 2035ab05 branch lpm_adjust_clk ,wake 
+2513 20600000 rtn 
+
+slave_conn_recv_packet:
+2514 44a8c00a bpatch patch0a_1 ,mem_patch0a 
+2515 204024f0 call slave_receive_master_slot 
+2516 242c28f9 nbranch shutdown_radio ,sync 
+2517 204029bb call save_rssi 
+2518 c588a51c bmark0 mark_testmode ,receive_packet 
+2519 680100f6 fetch 2 ,mem_tst_pktcnt_sync 
+251a 1fe0fe01 increase 1 ,pdata 
+251b 600100f6 store 2 ,mem_tst_pktcnt_sync 
+
+receive_packet:
+251c 1c230400 rshift bt_clk ,temp 
+251d 18419c40 or temp ,0x40 ,white_init 
+
+receive_packet_whitened:
+251e 44a9400a bpatch patch0a_2 ,mem_patch0a 
+251f 7823fc00 enable enable_white 
+2520 78257c00 enable enable_hec 
+2521 7825fc00 enable decode_fec1 
+2522 09800003 parse demod ,bucket ,3 
+2523 198cfe00 rshift8 pwindow ,pdata 
+2524 6000815d store 1 ,mem_temp_am_addr 
+2525 09800004 parse demod ,bucket ,4 
+2526 08008007 inject bucket ,7 
+2527 19827e00 copy pwindow ,pdata 
+2528 60008019 store 1 ,mem_rx_type 
+2529 09800003 parse demod ,bucket ,3 
+252a 198cfe00 rshift8 pwindow ,pdata 
+252b 6000815e store 1 ,mem_temp_arq 
+252c 68008019 fetch 1 ,mem_rx_type 
+252d 1fe67c03 sub pdata ,3 ,null 
+252e 20212533 branch receive_packet_noedr ,positive 
+252f c003a533 beq 7 ,receive_packet_noedr 
+2530 6800804c fetch 1 ,mem_state_map 
+2531 2feffe05 isolate1 smap_edr ,pdata 
+2532 7920aa01 setflag true ,psk ,radio_ctrl 
+
+receive_packet_noedr:
+2533 44a9c00a bpatch patch0a_3 ,mem_patch0a 
+2534 09800008 parse demod ,bucket ,8 
+2535 7845fc00 disable decode_fec1 
+2536 78457c00 disable enable_hec 
+2537 20232631 branch error_header ,crc_failed 
+2538 c588a53c bmark0 mark_testmode ,receive_packet_amchk 
+2539 680100f8 fetch 2 ,mem_tst_pktcnt_hec 
+253a 1fe0fe01 increase 1 ,pdata 
+253b 600100f8 store 2 ,mem_tst_pktcnt_hec 
+
+receive_packet_amchk:
+253c 44aa400a bpatch patch0a_4 ,mem_patch0a 
+253d 6800815d fetch 1 ,mem_temp_am_addr 
+253e 2fe00e00 compare 0 ,pdata ,0x07 
+253f 7920800a setflag true ,mark_am_addr_broadcast ,mark 
+2540 2020a54c branch am_addr_ok ,true 
+2541 a8800e00 icompare 0x07 ,am_addr 
+2542 2020a54b branch am_addr_match ,true 
+2543 c583a64d bmark0 mark_esco ,end_of_packet 
+2544 680880b0 fetcht 1 ,mem_saved_amaddr 
+2545 a8400e00 icompare 0x7 ,temp 
+2546 2420a64d nbranch end_of_packet ,true 
+2547 68008047 fetch 1 ,mem_arq 
+2548 793ffe05 set0 arqnx ,pdata 
+2549 79207e04 set1 flowx ,pdata 
+254a 60008047 store 1 ,mem_arq 
+
+am_addr_match:
+254b 7836fc00 enable match 
+
+am_addr_ok:
+254c 44aac00a bpatch patch0a_5 ,mem_patch0a 
+254d 68008019 fetch 1 ,mem_rx_type 
+254e 1fe20200 icopy type 
+254f c505255b bmark1 mark_am_addr_broadcast ,arqn_bypass 
+2550 6808815e fetcht 1 ,mem_temp_arq 
+2551 68008047 fetch 1 ,mem_arq 
+2552 793ffe00 set0 flow ,pdata 
+2553 284ffe00 isolate1 flow ,temp 
+2554 7920fe00 setflag true ,flow ,pdata 
+2555 284ffe01 isolate1 arqn ,temp 
+2556 7920fe01 setflag true ,arqn ,pdata 
+2557 60008047 store 1 ,mem_arq 
+2558 284c0001 isolate0 arqn ,temp 
+2559 2020a55b branch arqn_bypass ,true 
+255a 20402687 call clear_got_tx 
+
+arqn_bypass:
+255b 44ab400a bpatch patch0a_6 ,mem_patch0a 
+255c d8400000 arg 0 ,temp 
+255d 20402a1c call reserve_slot 
+255e 18217e0f and type ,0xf ,pdata 
+255f c000a587 beq type_poll ,process_poll 
+2560 c000264d beq type_null ,end_of_packet 
+2561 c0012659 beq type_fhs ,process_fhs 
+2562 6808815e fetcht 1 ,mem_temp_arq 
+2563 68008047 fetch 1 ,mem_arq 
+2564 a8400800 icompare 0x04 ,temp 
+2565 2420a569 nbranch rx_type_dispatch ,true 
+2566 c5852568 bmark0 mark_am_addr_broadcast ,failed_seqn 
+2567 c303a569 bbit0 bcast1 ,rx_type_dispatch 
+
+failed_seqn:
+2568 7920000f set1 mark_old_packet ,mark 
+
+rx_type_dispatch:
+2569 44abc00a bpatch patch0a_7 ,mem_patch0a 
+256a 18227e00 deposit type 
+256b c001a589 beq type_dm1 ,process_dm1 
+256c c002258d beq type_dh1 ,process_dh1 
+256d c003a578 beq type_hv3 ,process_hev 
+256e c004258c beq type_3dh1 ,process_3dh1 
+256f d8400004 arg 4 ,temp 
+2570 20402a1c call reserve_slot 
+2571 c0052588 beq type_dm3 ,process_dm3 
+2572 c005a58b beq type_dh3 ,process_dh3 
+2573 d8400008 arg 8 ,temp 
+2574 20402a1c call reserve_slot 
+2575 c0072588 beq type_dm5 ,process_dm5 
+2576 c007a58b beq type_dh5 ,process_dh5 
+2577 20600000 rtn 
+
+process_hev:
+2578 44ac400b bpatch patch0b_0 ,mem_patch0b 
+2579 7826fc00 enable decode_fec0 
+257a 7824fc00 enable enable_crc 
+257b 78277c00 enable encrypt 
+257c d8a000d1 arg mem_sco_ibuf ,contw 
+257d 1800721e force 30 ,loopcnt 
+
+process_hev_loop:
+257e 09800008 parse demod ,bucket ,8 
+257f 19897e00 rshift3 pwindow ,pdata 
+2580 e0a08000 istore 1 ,contw 
+2581 c200257e loop process_hev_loop 
+2582 c583a64d bmark0 mark_esco ,end_of_packet 
+2583 09800010 parse demod ,bucket ,16 
+2584 7d230008 nsetflag crc_failed ,mark_esco_rxok ,mark 
+2585 2023263d branch error_payload ,crc_failed 
+2586 20202620 branch ack_payload 
+
+process_poll:
+2587 2020264d branch end_of_packet 
+
+process_dm3:
+
+process_dm5:
+2588 79200010 set1 mark_longpacket ,mark 
+
+process_dm1:
+2589 78267c00 enable decode_fec2 
+258a 2020258e branch process_dmh 
+
+process_dh3:
+
+process_dh5:
+258b 79200010 set1 mark_longpacket ,mark 
+
+process_3dh1:
+258c 79202a02 set1 psk3m ,radio_ctrl 
+
+process_dh1:
+258d 7826fc00 enable decode_fec0 
+
+process_dmh:
+258e 44acc00b bpatch patch0b_1 ,mem_patch0b 
+258f c500a64d bmark1 mark_rxbuf_inuse ,end_of_packet 
+2590 2aac0001 isolate0 psk ,radio_ctrl 
+2591 2020a59a branch process_dmh_noedr ,true 
+2592 7843fc00 disable enable_white 
+2593 7826fc00 enable decode_fec0 
+2594 78467c00 disable decode_fec2 
+2595 1c409602 add clkn_bt ,2 ,timeup 
+2596 34530400 correlate clkn_bt ,meet 
+2597 242c263d nbranch error_payload ,sync 
+2598 79200010 set1 mark_longpacket ,mark 
+2599 7823fc00 enable enable_white 
+
+process_dmh_noedr:
+259a 44ad400b bpatch patch0b_2 ,mem_patch0b 
+259b 78277c00 enable encrypt 
+259c 7824fc00 enable enable_crc 
+259d 09800003 parse demod ,bucket ,3 
+259e 198cfe00 rshift8 pwindow ,pdata 
+259f 60008180 store 1 ,mem_lch_code 
+25a0 09800005 parse demod ,bucket ,5 
+25a1 c50825a5 bmark1 mark_longpacket ,process_dmh_long 
+25a2 19897200 rshift3 pwindow ,loopcnt 
+25a3 1f297200 rshift3 loopcnt ,loopcnt 
+25a4 202025a8 branch process_dmh_common 
+
+process_dmh_long:
+25a5 09800005 parse demod ,bucket ,5 
+25a6 19837200 rshift pwindow ,loopcnt 
+25a7 09800003 parse demod ,bucket ,3 
+
+process_dmh_common:
+25a8 44adc00b bpatch patch0b_3 ,mem_patch0b 
+25a9 1f227e00 deposit loopcnt 
+25aa 6001015f store 2 ,mem_len 
+25ab 203a25e8 branch process_dmh_data_end ,blank 
+25ac 9ea67c00 isub mask3ff ,null 
+25ad 2021263d branch error_payload ,positive 
+25ae 44ae400b bpatch patch0b_4 ,mem_patch0b 
+25af 793f8000 set0 mark_fhs_eir ,mark 
+25b0 68008180 fetch 1 ,mem_lch_code 
+25b1 1fe17e03 and_into 0x03 ,pdata 
+25b2 d8a00551 arg mem_rxbuf ,contw 
+25b3 c001a5ba beq llid_lmp ,process_lmp 
+25b4 c508a5e4 bmark1 mark_testmode ,process_dmh_data 
+25b5 68008180 fetch 1 ,mem_lch_code 
+25b6 1fe17e03 and_into 0x03 ,pdata 
+25b7 c00125bf beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
+25b8 c000a5d3 beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
+25b9 2020263d branch error_payload 
+
+process_lmp:
+25ba 6801015f fetch 2 ,mem_len 
+25bb 1fe67c70 sub pdata ,0x70 ,null 
+25bc 2421263d nbranch error_payload ,positive 
+25bd c507a620 bmark1 mark_old_packet ,ack_payload 
+25be 202025e4 branch process_dmh_data 
+
+process_dmh_data_l2cap_start_pkt:
+25bf 44aec00b bpatch patch0b_5 ,mem_patch0b 
+25c0 c507a620 bmark1 mark_old_packet ,ack_payload 
+25c1 6801015f fetch 2 ,mem_len 
+25c2 d84002e0 arg 0x2e0 ,temp 
+25c3 98467c00 isub temp ,null 
+25c4 2021263d branch error_payload ,positive 
+25c5 68008263 fetch 1 ,mem_l2cap_rxbuff_inuse 
+25c6 c30025c9 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
+25c7 c300a5ce bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
+25c8 2020264d branch end_of_packet 
+
+process_dmh_data_into_buff1:
+25c9 70026101 jam 1 ,mem_l2cap_rxbuff_new 
+25ca 6801025d fetch 2 ,mem_l2cap_rxbuff1_len 
+25cb c080264d bne 0 ,end_of_packet 
+25cc d8a01000 arg mem_l2cap_rxbuff1 ,contw 
+25cd 202025e4 branch process_dmh_data 
+
+process_dmh_data_into_buff2:
+25ce 70026102 jam 2 ,mem_l2cap_rxbuff_new 
+25cf 6801025f fetch 2 ,mem_l2cap_rxbuff2_len 
+25d0 c080264d bne 0 ,end_of_packet 
+25d1 d8a01400 arg mem_l2cap_rxbuff2 ,contw 
+25d2 202025e4 branch process_dmh_data 
+
+process_dmh_data_l2cap_continue_pkt:
+25d3 44af400b bpatch patch0b_6 ,mem_patch0b 
+25d4 c507a620 bmark1 mark_old_packet ,ack_payload 
+25d5 6801015f fetch 2 ,mem_len 
+25d6 d84002e0 arg 0x2e0 ,temp 
+25d7 98467c00 isub temp ,null 
+25d8 2021263d branch error_payload ,positive 
+25d9 68008261 fetch 1 ,mem_l2cap_rxbuff_new 
+25da c000a5dd beq 1 ,process_dmh_data_l2cap_continue_pkt1 
+25db c00125e1 beq 2 ,process_dmh_data_l2cap_continue_pkt2 
+25dc 2020264d branch end_of_packet 
+
+process_dmh_data_l2cap_continue_pkt1:
+25dd d8a01000 arg mem_l2cap_rxbuff1 ,contw 
+25de 6801025d fetch 2 ,mem_l2cap_rxbuff1_len 
+25df 98a08a00 iadd contw ,contw 
+25e0 202025e4 branch process_dmh_data 
+
+process_dmh_data_l2cap_continue_pkt2:
+25e1 d8a01400 arg mem_l2cap_rxbuff2 ,contw 
+25e2 6801025f fetch 2 ,mem_l2cap_rxbuff2_len 
+25e3 98a08a00 iadd contw ,contw 
+
+process_dmh_data:
+25e4 09800008 parse demod ,bucket ,8 
+25e5 19897e00 rshift3 pwindow ,pdata 
+25e6 e0a08000 istore 1 ,contw 
+25e7 c20025e4 loop process_dmh_data 
+
+process_dmh_data_end:
+25e8 44afc00b bpatch patch0b_7 ,mem_patch0b 
+25e9 09800010 parse demod ,bucket ,16 
+25ea 20232637 branch error_payload_crc ,crc_failed 
+25eb 6800c363 fetch 1 ,mem_l2cap_flow_ctrl_flag 
+25ec c000a64d beq l2cap_flow_ctrl_enable ,end_of_packet 
+25ed c508a60d bmark1 mark_testmode ,process_dmh_cont 
+25ee c507a64a bmark1 mark_old_packet ,redundant_payload 
+25ef 68008180 fetch 1 ,mem_lch_code 
+25f0 2fe00603 compare 3 ,pdata ,3 
+25f1 2020a60d branch process_dmh_cont ,true 
+25f2 6801015f fetch 2 ,mem_len 
+25f3 203a260d branch process_dmh_cont ,blank 
+25f4 44b0400c bpatch patch0c_0 ,mem_patch0c 
+25f5 68008261 fetch 1 ,mem_l2cap_rxbuff_new 
+25f6 c000a5f9 beq 1 ,process_l2cap_pass_crc_buff1 
+25f7 c0012603 beq 2 ,process_l2cap_pass_crc_buff2 
+25f8 20202a8c branch assert 
+
+process_l2cap_pass_crc_buff1:
+25f9 6801025d fetch 2 ,mem_l2cap_rxbuff1_len 
+25fa 6809015f fetcht 2 ,mem_len 
+25fb 9840fe00 iadd temp ,pdata 
+25fc 6001025d store 2 ,mem_l2cap_rxbuff1_len 
+25fd c0002a8c beq 0 ,assert 
+25fe 68091000 fetcht 2 ,mem_l2cap_rxbuff1 
+25ff 18408404 increase 4 ,temp 
+2600 98467c00 isub temp ,null 
+2601 2042a747 call l2cap_buff1_inuse ,zero 
+2602 2020260d branch process_dmh_cont 
+
+process_l2cap_pass_crc_buff2:
+2603 6801025f fetch 2 ,mem_l2cap_rxbuff2_len 
+2604 6809015f fetcht 2 ,mem_len 
+2605 9840fe00 iadd temp ,pdata 
+2606 6001025f store 2 ,mem_l2cap_rxbuff2_len 
+2607 c0002a8c beq 0 ,assert 
+2608 68091400 fetcht 2 ,mem_l2cap_rxbuff2 
+2609 18408404 add temp ,4 ,temp 
+260a 98467c00 isub temp ,null 
+260b 2042a74b call l2cap_buff2_inuse ,zero 
+260c 2020260d branch process_dmh_cont 
+
+process_dmh_cont:
+260d 44b0c00c bpatch patch0c_1 ,mem_patch0c 
+260e 6808804c fetcht 1 ,mem_state_map 
+260f 68008180 fetch 1 ,mem_lch_code 
+2610 2fe00603 compare 3 ,pdata ,0x03 
+2611 79208406 setflag true ,smap_rxlmp ,temp 
+2612 7d208407 nsetflag true ,smap_rxl2cap ,temp 
+2613 6008804c storet 1 ,mem_state_map 
+2614 2420a616 nbranch process_dmh_cont_rxbuf_not_use ,true 
+2615 79200001 set1 mark_rxbuf_inuse ,mark 
+
+process_dmh_cont_rxbuf_not_use:
+2616 c588a620 bmark0 mark_testmode ,ack_payload 
+2617 284ffe06 isolate1 smap_rxlmp ,temp 
+2618 2020a620 branch ack_payload ,true 
+2619 680100fa fetch 2 ,mem_tst_pktcnt_crc 
+261a 1fe0fe01 increase 1 ,pdata 
+261b 600100fa store 2 ,mem_tst_pktcnt_crc 
+261c 79200005 set1 mark_loopback ,mark 
+261d 793f8407 set0 smap_rxl2cap ,temp 
+261e 793f8001 set0 mark_rxbuf_inuse ,mark 
+261f 6008804c storet 1 ,mem_state_map 
+
+ack_payload:
+2620 44b1400c bpatch patch0c_2 ,mem_patch0c 
+2621 6808815e fetcht 1 ,mem_temp_arq 
+2622 68008047 fetch 1 ,mem_arq 
+2623 79207e05 set1 arqnx ,pdata 
+2624 284ffe02 isolate1 seqn ,temp 
+2625 7920fe02 setflag true ,seqn ,pdata 
+2626 280ffe0a isolate1 mark_am_addr_broadcast ,mark 
+2627 7920fe07 setflag true ,bcast1 ,pdata 
+2628 60008047 store 1 ,mem_arq 
+2629 6801015f fetch 2 ,mem_len 
+262a 243a264d nbranch end_of_packet ,blank 
+262b 6800804c fetch 1 ,mem_state_map 
+262c 793ffe07 set0 smap_rxl2cap ,pdata 
+262d 6000804c store 1 ,mem_state_map 
+262e 68008180 fetch 1 ,mem_lch_code 
+262f 2fe00e01 compare 0x01 ,pdata ,0x07 
+2630 2020264d branch end_of_packet 
+
+error_header:
+2631 44b1c00c bpatch patch0c_3 ,mem_patch0c 
+2632 7856fc00 disable match 
+2633 6801001a fetch 2 ,mem_rx_hec_err 
+2634 1fe0fe01 increase 1 ,pdata 
+2635 6001001a store 2 ,mem_rx_hec_err 
+2636 2020264d branch end_of_packet 
+
+error_payload_crc:
+2637 6801001c fetch 2 ,mem_rx_crc_err 
+2638 1fe0fe01 increase 1 ,pdata 
+2639 6001001c store 2 ,mem_rx_crc_err 
+263a 2040263e call discard_pkt 
+263b c588a63d bmark0 mark_testmode ,error_payload 
+263c 79200005 set1 mark_loopback ,mark 
+
+error_payload:
+263d 2020264d branch end_of_packet 
+
+discard_pkt:
+263e 44b2400c bpatch patch0c_4 ,mem_patch0c 
+263f 68008180 fetch 1 ,mem_lch_code 
+2640 2fe00603 compare 3 ,pdata ,0x03 
+2641 2420a646 nbranch discard_pkt_l2cap ,true 
+
+discard_pkt_lmp:
+2642 6808804c fetcht 1 ,mem_state_map 
+2643 793f8406 set0 smap_rxlmp ,temp 
+2644 6008804c storet 1 ,mem_state_map 
+2645 20600000 rtn 
+
+discard_pkt_l2cap:
+2646 6808804c fetcht 1 ,mem_state_map 
+2647 793f8407 set0 smap_rxl2cap ,temp 
+2648 6008804c storet 1 ,mem_state_map 
+2649 20204c0b branch h4_send_acl_trigger_clear 
+
+redundant_payload:
+264a 68008047 fetch 1 ,mem_arq 
+264b 79207e05 set1 arqnx ,pdata 
+264c 60008047 store 1 ,mem_arq 
+
+end_of_packet:
+264d 44b2c00c bpatch patch0c_5 ,mem_patch0c 
+264e 784efc00 disable encode_fec0 
+264f 784e7c00 disable encode_fec2 
+2650 7846fc00 disable decode_fec0 
+2651 78467c00 disable decode_fec2 
+2652 7844fc00 disable enable_crc 
+2653 78477c00 disable encrypt 
+2654 7843fc00 disable enable_white 
+2655 2030a8f9 branch shutdown_radio ,is_rx 
+2656 37d38200 until null ,tx_clear 
+2657 20000064 nop 100 
+2658 202028f9 branch shutdown_radio 
+
+process_fhs:
+2659 44b3400c bpatch patch0c_6 ,mem_patch0c 
+265a 7824fc00 enable enable_crc 
+265b 78267c00 enable decode_fec2 
+265c 09800048 parse demod ,bucket ,72 
+265d 2feffe3a isolate1 58 ,pdata 
+265e 79208000 setflag true ,mark_fhs_eir ,mark 
+265f 1c020400 copy bt_adr ,temp 
+2660 57e04000 ialigned bt_adr 
+2661 57e03c00 ialigned fhs0 
+2662 782afc00 pulse recalc 
+2663 380bffff setsect 2 ,0xfffff 
+2664 380cffff setsect 3 ,0x0ffff 
+2665 20000020 nop 32 
+2666 29a80000 iverify fhs_parity 
+2667 1d827e00 deposit lap 
+2668 60018178 store 3 ,extm_lap 
+2669 1da27e00 deposit uap 
+266a 6000817b store 1 ,extm_uap 
+266b 18424000 copy temp ,bt_adr 
+266c 2020a66e branch fhs_parity_ok ,true 
+266d 2020263d branch error_payload 
+
+fhs_parity_ok:
+266e 44b3c00c bpatch patch0c_7 ,mem_patch0c 
+266f 09800048 parse demod ,bucket ,72 
+2670 57e03e00 ialigned fhs1 
+2671 57e00800 ialigned am_addr 
+2672 57e05c00 ialigned nap 
+2673 57e02400 ialigned regb 
+2674 18007e00 force 0 ,pdata 
+2675 09800010 parse demod ,bucket ,16 
+2676 2023263d branch error_payload ,crc_failed 
+2677 5ffffffc setarg 0x0ffffffc 
+2678 9a417e00 iand regb ,pdata 
+2679 60020165 store 4 ,mem_clke_bt 
+267a 1ba27e00 deposit fhs_class 
+267b 60018175 store 3 ,extm_class 
+267c 1b827e00 deposit fhs_misc 
+267d 60008173 store 1 ,extm_fhs_misc 
+267e 18827e00 deposit am_addr 
+267f 60008174 store 1 ,extm_newconn_am_addr 
+2680 1dc27e00 deposit nap 
+2681 6001017c store 2 ,extm_nap 
+2682 1c227e00 deposit bt_clk 
+2683 08008220 inject rxf ,32 
+2684 28201e02 compare type_fhs ,type ,0x0f 
+2685 7920800b setflag true ,mark_fhs_already_good ,mark 
+2686 2020264d branch end_of_packet 
+
+clear_got_tx:
+2687 44b4400d bpatch patch0d_0 ,mem_patch0d 
+2688 68008047 fetch 1 ,mem_arq 
+2689 c4018000 rtnbit0 wack 
+268a 793ffe03 set0 wack ,pdata 
+268b 79407e06 setflip seqnx ,pdata 
+268c 60008047 store 1 ,mem_arq 
+268d 6800c0c5 fetch 1 ,mem_last_type 
+268e c009a69c beq type_lmp ,clear_got_txlmp 
+268f c1038000 rtneq type_hv3 
+2690 6800804b fetch 1 ,mem_op 
+2691 c4030000 rtnbit0 op_txl2cap ,pdata 
+2692 793ffe06 set0 op_txl2cap ,pdata 
+2693 79207e07 set1 op_pkt_comp ,pdata 
+2694 6000804b store 1 ,mem_op 
+2695 793f8002 set0 mark_tx_l2cap ,mark 
+2696 68014246 fetch 2 ,mem_l2cap_tx_multi_offset 
+2697 247a0000 nrtn blank 
+2698 6800804b fetch 1 ,mem_op 
+2699 793ffe07 set0 op_pkt_comp ,pdata 
+269a 6000804b store 1 ,mem_op 
+269b 2020525d branch l2cap_malloc_free 
+
+clear_got_txlmp:
+269c 44b4c00d bpatch patch0d_1 ,mem_patch0d 
+269d 680084b7 fetch 1 ,mem_lmo_header_opcode 
+269e 1fe37e00 rshift pdata ,pdata 
+269f c008a6b8 beq lmp_start_encryption_req ,start_encryption 
+26a0 c00926c0 beq lmp_stop_encryption_req ,stop_encryption 
+26a1 c00c26e9 beq lmp_unsniff_req ,sniff_exit 
+26a2 c03fa6a8 beq lmp_escape ,clear_lmp_escape 
+26a3 c1818000 rtnne lmp_accepted 
+26a4 680084b8 fetch 1 ,mem_lmo_payload 
+26a5 c015a6b0 beq lmp_sco_link_req ,sco_link_req_by_slave 
+26a6 c008a6ab beq lmp_start_encryption_req ,clear_send_setup_complete 
+26a7 20600000 rtn 
+
+clear_lmp_escape:
+26a8 680084b8 fetch 1 ,mem_lmo_payload 
+26a9 79207e07 set1 7 ,pdata 
+26aa 20600000 rtn 
+
+clear_send_setup_complete:
+26ab 20748000 rtn master 
+26ac 68008030 fetch 1 ,mem_state 
+26ad c3820000 rtnbit1 state_conn_comp 
+26ae 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+26af 20600000 rtn 
+
+sco_link_req_by_slave:
+26b0 20748000 rtn master 
+26b1 68008031 fetch 1 ,mem_mode 
+26b2 2feffe04 isolate1 send_sco_when_slave ,pdata 
+26b3 2020a6b5 branch clean_mem_mode ,true 
+26b4 20600000 rtn 
+
+clean_mem_mode:
+26b5 793ffe04 set0 send_sco_when_slave ,pdata 
+26b6 60008031 store 1 ,mem_mode 
+26b7 20600000 rtn 
+
+start_encryption:
+26b8 44b5400d bpatch patch0d_2 ,mem_patch0d 
+26b9 6800804c fetch 1 ,mem_state_map 
+26ba 79207e02 set1 smap_encryption ,pdata 
+26bb 6000804c store 1 ,mem_state_map 
+26bc 70801101 jam 1 ,core_encrypt 
+26bd 68008030 fetch 1 ,mem_state 
+26be 2feffe04 isolate1 state_conn_comp ,pdata 
+26bf 20600000 rtn 
+
+stop_encryption:
+26c0 44b5c00d bpatch patch0d_3 ,mem_patch0d 
+26c1 6800804c fetch 1 ,mem_state_map 
+26c2 793ffe02 set0 smap_encryption ,pdata 
+26c3 6000804c store 1 ,mem_state_map 
+26c4 70801100 jam 0 ,core_encrypt 
+26c5 20600000 rtn 
+
+sniff_init:
+26c6 44b6400d bpatch patch0d_4 ,mem_patch0d 
+26c7 1c427e00 copy clkn_bt ,pdata 
+26c8 6002420c store 4 ,mem_lpm_delay_after_sniff 
+26c9 1c40a203 add clkn_bt ,3 ,rega 
+26ca 2034a6cc branch sniff_init_master ,master 
+26cb 1d00a203 add clke_bt ,3 ,rega 
+
+sniff_init_master:
+26cc 68090032 fetcht 2 ,mem_tsniff 
+26cd 1a227e00 deposit rega 
+26ce 793ffe1b set0 27 ,pdata 
+26cf 9846fc00 idiv temp 
+26d0 68010075 fetch 2 ,mem_dsniff 
+26d1 20407f86 call wait_div_end 
+26d2 18072600 remainder regc 
+26d3 9a667e00 isub regc ,pdata 
+26d4 202126d6 branch sniff_init_nowrap ,positive 
+26d5 9840fe00 iadd temp ,pdata 
+
+sniff_init_nowrap:
+26d6 9a20fe00 iadd rega ,pdata 
+26d7 60020034 store 4 ,mem_sniff_anchor 
+26d8 70455b00 jam switch_flag_init ,mem_switch_flag 
+26d9 68008030 fetch 1 ,mem_state 
+26da 79207e01 set1 state_insniff ,pdata 
+26db 60008030 store 1 ,mem_state 
+26dc 68008073 fetch 1 ,mem_sniff_attempt 
+26dd 6000808a store 1 ,mem_current_sniff_attempt 
+26de 58000000 setarg 0 
+26df 6001c169 store 3 ,mem_sniff_rcv 
+26e0 6001c16c store 3 ,mem_sniff_lost 
+26e1 6000c159 store 1 ,mem_sniff_unint_lost 
+26e2 700a990b jam bt_evt_enter_sniff ,mem_fifo_temp 
+26e3 20407d86 call ui_ipc_send_event 
+26e4 680140c1 fetch 2 ,mem_rx_window_sniff 
+26e5 6001003e store 2 ,mem_rx_window 
+26e6 24748000 nrtn master 
+26e7 18808fff add am_addr ,-1 ,queue 
+26e8 20600000 rtn 
+
+sniff_exit:
+26e9 44b6c00d bpatch patch0d_5 ,mem_patch0d 
+26ea 68008030 fetch 1 ,mem_state 
+26eb c4008000 rtnbit0 state_insniff 
+26ec 793ffe01 set0 state_insniff ,pdata 
+26ed 60008030 store 1 ,mem_state 
+26ee 680140bf fetch 2 ,mem_rx_window_init 
+26ef 6001003e store 2 ,mem_rx_window 
+26f0 7855fc00 disable wake 
+26f1 700a990c jam bt_evt_exit_sniff ,mem_fifo_temp 
+26f2 20207d86 branch ui_ipc_send_event 
+
+check_attempt:
+26f3 44b7400d bpatch patch0d_6 ,mem_patch0d 
+26f4 78377c00 enable attempt 
+26f5 68008030 fetch 1 ,mem_state 
+26f6 c280a700 bbit1 state_insniff ,check_attempt_sniff 
+26f7 c6088000 rtnmark1 mark_testmode 
+26f8 68008047 fetch 1 ,mem_arq 
+26f9 c3818000 rtnbit1 wack 
+26fa 68008048 fetch 1 ,mem_lmp_to_send 
+26fb 247a0000 nrtn blank 
+26fc 6800804b fetch 1 ,mem_op 
+26fd c3830000 rtnbit1 op_txl2cap 
+
+check_attempt_nomore:
+26fe 18007e00 force 0 ,pdata 
+26ff 20600000 rtn 
+
+check_attempt_sniff:
+2700 c301270f bbit0 state_insco ,check_attempt_not_sco 
+2701 6800808a fetch 1 ,mem_current_sniff_attempt 
+2702 c0012706 beq 2 ,check_attempt_sniff_restore_sco 
+2703 68008047 fetch 1 ,mem_arq 
+2704 c281a718 bbit1 wack ,check_attempt_notimeout 
+2705 c5842718 bmark0 mark_esco_rxok ,check_attempt_notimeout 
+
+check_attempt_sniff_restore_sco:
+2706 2434a718 nbranch check_attempt_notimeout ,master 
+2707 68008048 fetch 1 ,mem_lmp_to_send 
+2708 243a2718 nbranch check_attempt_notimeout ,blank 
+
+check_attempt_sco_master:
+2709 680080ef fetch 1 ,mem_sco_poll 
+270a 1fe0ffff increase -1 ,pdata 
+270b 600080ef store 1 ,mem_sco_poll 
+270c 243a26fe nbranch check_attempt_nomore ,blank 
+270d 7000ef10 jam param_sco_poll ,mem_sco_poll 
+270e 20202718 branch check_attempt_notimeout 
+
+check_attempt_not_sco:
+270f 6800808a fetch 1 ,mem_current_sniff_attempt 
+2710 c080a718 bne 1 ,check_attempt_notimeout 
+2711 6800808b fetch 1 ,mem_current_sniff_timeout 
+2712 203a2718 branch check_attempt_notimeout ,blank 
+2713 1fe0ffff increase -1 ,pdata 
+2714 6000808b store 1 ,mem_current_sniff_timeout 
+2715 68008047 fetch 1 ,mem_arq 
+2716 c3818000 rtnbit1 wack 
+2717 24768000 nrtn match 
+
+check_attempt_notimeout:
+2718 6800808a fetch 1 ,mem_current_sniff_attempt 
+2719 1fe0ffff increase -1 ,pdata 
+271a 6000808a store 1 ,mem_current_sniff_attempt 
+271b 20600000 rtn 
+
+sniff_check_window:
+271c 44b7c00d bpatch patch0d_7 ,mem_patch0d 
+271d 78487c00 disable swfine 
+271e 18423600 copy temp ,stop_watch 
+271f 20402260 call context_search_sniff_window 
+2720 78547c00 disable user 
+2721 24628000 nrtn zero 
+2722 18003600 force 0 ,stop_watch 
+2723 78347c00 enable user 
+2724 20600000 rtn 
+
+check_esco_amaddr:
+2725 6800c158 fetch 1 ,mem_esco_addr 
+2726 a881fe00 icompare 0xff ,am_addr 
+2727 20600000 rtn 
+
+parse_l2cap:
+2728 44b8400e bpatch patch0e_0 ,mem_patch0e 
+2729 793f8001 set0 mark_rxbuf_inuse ,mark 
+
+parse_l2cap_cont:
+272a 70026a00 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+272b 68008263 fetch 1 ,mem_l2cap_rxbuff_inuse 
+272c 207a0000 rtn blank 
+272d 2feffe00 isolate1 l2cap_inuse_buff1 ,pdata 
+272e d8c01000 arg mem_l2cap_rxbuff1 ,contr 
+272f 2040cd79 call process_rx_l2cap_pkt ,true 
+2730 44b8c00e bpatch patch0e_1 ,mem_patch0e 
+2731 6800826a fetch 1 ,mem_l2cap_rx_done 
+2732 c000a73b beq l2cap_rx_done ,parse_l2cap_release_buff1 
+2733 70026a00 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+2734 68008263 fetch 1 ,mem_l2cap_rxbuff_inuse 
+2735 c4008000 rtnbit0 l2cap_inuse_buff2 
+2736 d8c01400 arg mem_l2cap_rxbuff2 ,contr 
+2737 20404d79 call process_rx_l2cap_pkt 
+2738 6800826a fetch 1 ,mem_l2cap_rx_done 
+2739 c000a741 beq l2cap_rx_done ,parse_l2cap_release_buff2 
+273a 20600000 rtn 
+
+parse_l2cap_release_buff1:
+273b 68008263 fetch 1 ,mem_l2cap_rxbuff_inuse 
+273c 793ffe00 set0 l2cap_inuse_buff1 ,pdata 
+273d 60008263 store 1 ,mem_l2cap_rxbuff_inuse 
+273e 58000000 setarg 0 
+273f 6001025d store 2 ,mem_l2cap_rxbuff1_len 
+2740 20600000 rtn 
+
+parse_l2cap_release_buff2:
+2741 68008263 fetch 1 ,mem_l2cap_rxbuff_inuse 
+2742 793ffe01 set0 l2cap_inuse_buff2 ,pdata 
+2743 60008263 store 1 ,mem_l2cap_rxbuff_inuse 
+2744 58000000 setarg 0 
+2745 6001025f store 2 ,mem_l2cap_rxbuff2_len 
+2746 20600000 rtn 
+
+l2cap_buff1_inuse:
+2747 68008263 fetch 1 ,mem_l2cap_rxbuff_inuse 
+2748 79207e00 set1 l2cap_inuse_buff1 ,pdata 
+2749 60008263 store 1 ,mem_l2cap_rxbuff_inuse 
+274a 20600000 rtn 
+
+l2cap_buff2_inuse:
+274b 68008263 fetch 1 ,mem_l2cap_rxbuff_inuse 
+274c 79207e01 set1 l2cap_inuse_buff2 ,pdata 
+274d 60008263 store 1 ,mem_l2cap_rxbuff_inuse 
+274e 20600000 rtn 
+
+slave_send_access:
+274f 44b9400e bpatch patch0e_2 ,mem_patch0e 
+2750 1d00c201 add clke_bt ,1 ,bt_clk 
+2751 204028ea call fetch_extm_bt_adr 
+2752 18004803 force 0x03 ,freq_mode 
+2753 204028d2 call tx_radio_freq 
+2754 20402a51 call start_transmitter 
+2755 20402a5f call start_tx_external 
+2756 20202a64 branch send_access_word 
+
+slave_conn_send_packet:
+2757 44b9c00e bpatch patch0e_3 ,mem_patch0e 
+2758 20402a4d call rf_setup_time_slave_slot 
+2759 1d027e00 deposit clke_bt 
+275a 680a40ca fetcht 4 ,mem_next_btclk 
+275b 98467e00 isub temp ,pdata 
+275c c1808000 rtnne 1 
+275d 28203e00 compare type_null ,type ,0x1f 
+275e 2420a761 nbranch slave_conn_send_access ,true 
+275f 68008019 fetch 1 ,mem_rx_type 
+2760 207a0000 rtn blank 
+
+slave_conn_send_access:
+2761 2040274f call slave_send_access 
+
+transmit_packet:
+2762 28203e10 compare type_id ,type ,0x1f 
+2763 2020a64d branch end_of_packet ,true 
+2764 1c230400 rshift bt_clk ,temp 
+2765 18419c40 or temp ,0x40 ,white_init 
+
+transmit_packet_whitened:
+2766 44ba400e bpatch patch0e_4 ,mem_patch0e 
+2767 7823fc00 enable enable_white 
+2768 78257c00 enable enable_hec 
+2769 782dfc00 enable encode_fec1 
+276a 793f8010 set0 mark_longpacket ,mark 
+276b 18827e00 deposit am_addr 
+276c 08008603 inject mod ,3 
+276d 18227e00 deposit type 
+276e 08008604 inject mod ,4 
+276f 68008047 fetch 1 ,mem_arq 
+2770 08008004 inject bucket ,4 
+2771 08008603 inject mod ,3 
+2772 78247c00 enable enable_parity 
+2773 08008608 inject mod ,8 
+2774 784dfc00 disable encode_fec1 
+2775 78447c00 disable enable_parity 
+2776 78457c00 disable enable_hec 
+2777 793faa02 set0 psk3m ,radio_ctrl 
+2778 d8400000 arg 0 ,temp 
+2779 20402a1c call reserve_slot 
+277a 44bac00e bpatch patch0e_5 ,mem_patch0e 
+277b 18217e1f and type ,0x1f ,pdata 
+277c c009a7b4 beq type_lmp ,transmit_lmp 
+277d c000264d beq type_null ,end_of_packet 
+277e c000a64d beq type_poll ,end_of_packet 
+277f c0012797 beq type_fhs ,transmit_fhs 
+2780 c001a7c5 beq type_dm1 ,transmit_dm1 
+2781 c00227cb beq type_dh1 ,transmit_dh1 
+2782 c003a78c beq type_hv3 ,transmit_hev 
+2783 c00427ca beq type_3dh1 ,transmit_3dh1 
+2784 d8400004 arg 4 ,temp 
+2785 20402a1c call reserve_slot 
+2786 c00527c7 beq type_dm3 ,transmit_dm3 
+2787 c005a7cd beq type_dh3 ,transmit_dh3 
+2788 d8400008 arg 8 ,temp 
+2789 20402a1c call reserve_slot 
+278a c007a7cd beq type_dh5 ,transmit_dh5 
+278b 202027c7 branch transmit_dm5 
+
+transmit_hev:
+278c 44bb400e bpatch patch0e_6 ,mem_patch0e 
+278d 782efc00 enable encode_fec0 
+278e 7824fc00 enable enable_crc 
+278f 78277c00 enable encrypt 
+2790 1800721e force 30 ,loopcnt 
+2791 d8c000b3 arg mem_sco_obuf ,contr 
+
+transmit_ev_loop:
+2792 e8c08000 ifetch 1 ,contr 
+2793 08008608 inject mod ,8 
+2794 c2002792 loop transmit_ev_loop 
+2795 c503a7f7 bmark1 mark_esco ,transmit_end 
+2796 2020264d branch end_of_packet 
+
+transmit_fhs:
+2797 44bbc00e bpatch patch0e_7 ,mem_patch0e 
+2798 68008181 fetch 1 ,mem_fhs_am_addr 
+2799 1fe20800 icopy am_addr 
+279a 68008090 fetch 1 ,mem_fhs_misc 
+279b 1fe23800 icopy fhs_misc 
+279c 6801c0aa fetch 3 ,mem_class 
+279d 1fe23a00 icopy fhs_class 
+279e 680140a4 fetch 2 ,mem_nap 
+279f 1fe25c00 icopy nap 
+27a0 7824fc00 enable enable_crc 
+27a1 782e7c00 enable encode_fec2 
+27a2 1c022200 copy bt_adr ,rega 
+27a3 204028e2 call fetch_self_bt_adr 
+27a4 782afc00 pulse recalc 
+27a5 20000020 nop 32 
+27a6 1c221600 copy bt_clk ,timeup 
+27a7 68020161 fetch 4 ,mem_clkn_bt 
+27a8 1fe24200 icopy bt_clk 
+27a9 53c07e00 preload fhs0 
+27aa 79207e3a set1 58 ,pdata 
+27ab 08008648 inject mod ,72 
+27ac 53e07e00 preload fhs1 
+27ad 08008648 inject mod ,72 
+27ae 19624200 copy timeup ,bt_clk 
+27af 1a224000 copy rega ,bt_adr 
+27b0 78247c00 enable enable_parity 
+27b1 08008610 inject mod ,16 
+27b2 78447c00 disable enable_parity 
+27b3 2020264d branch end_of_packet 
+
+transmit_lmp:
+27b4 44bc400f bpatch patch0f_0 ,mem_patch0f 
+27b5 78277c00 enable encrypt 
+27b6 7824fc00 enable enable_crc 
+27b7 782e7c00 enable encode_fec2 
+27b8 680084b6 fetch 1 ,mem_lmo_header_length 
+27b9 1fe105f8 and pdata ,0x1f8 ,temp 
+27ba d8c004b6 arg mem_lmo_header_length ,contr 
+27bb 18408408 increase 8 ,temp 
+
+transmit_lmp_loop:
+27bc 1840a7b8 add temp ,-72 ,regc 
+27bd 242127c2 nbranch transmit_lmp_finish ,positive 
+27be e8c48000 ifetch 9 ,contr 
+27bf 08008648 inject mod ,72 
+27c0 1a620400 copy regc ,temp 
+27c1 202027bc branch transmit_lmp_loop 
+
+transmit_lmp_finish:
+27c2 e8c48000 ifetch 9 ,contr 
+27c3 08418600 iinject mod ,temp 
+27c4 202027f7 branch transmit_end 
+
+transmit_dm1:
+27c5 782e7c00 enable encode_fec2 
+27c6 202027d0 branch transmit_dmh 
+
+transmit_dm3:
+
+transmit_dm5:
+27c7 782e7c00 enable encode_fec2 
+27c8 79200010 set1 mark_longpacket ,mark 
+27c9 202027d0 branch transmit_dmh 
+
+transmit_3dh1:
+27ca 79202a02 set1 psk3m ,radio_ctrl 
+
+transmit_dh1:
+27cb 782efc00 enable encode_fec0 
+27cc 202027d0 branch transmit_dmh 
+
+transmit_dh3:
+
+transmit_dh5:
+27cd 79202a02 set1 psk3m ,radio_ctrl 
+27ce 782efc00 enable encode_fec0 
+27cf 79200010 set1 mark_longpacket ,mark 
+
+transmit_dmh:
+27d0 44bcc00f bpatch patch0f_1 ,mem_patch0f 
+27d1 6800804c fetch 1 ,mem_state_map 
+27d2 c302a7e5 bbit0 smap_edr ,transmit_noedr 
+27d3 18267c03 sub type ,3 ,null 
+27d4 202127e5 branch transmit_noedr ,positive 
+27d5 78477c00 disable encrypt 
+27d6 784e7c00 disable encode_fec2 
+27d7 782efc00 enable encode_fec0 
+27d8 7843fc00 disable enable_white 
+27d9 79202a01 set1 psk ,radio_ctrl 
+27da 2aaffe02 isolate1 psk3m ,radio_ctrl 
+27db 2020a7df branch transmit_edr3m ,true 
+27dc 580abeee setarg 0xabeee 
+27dd 08008614 inject mod ,20 
+27de 202027e3 branch transmit_edr_sync_end 
+
+transmit_edr3m:
+27df 585faeba setarg 0x5faeba 
+27e0 08008618 inject mod ,24 
+27e1 58000012 setarg 0x12 
+27e2 08008606 inject mod ,6 
+
+transmit_edr_sync_end:
+27e3 7823fc00 enable enable_white 
+27e4 79200010 set1 mark_longpacket ,mark 
+
+transmit_noedr:
+27e5 78277c00 enable encrypt 
+27e6 7824fc00 enable enable_crc 
+27e7 c502a800 bmark1 mark_loopback ,transmit_loopback 
+27e8 6800c1db fetch 1 ,mem_tx_lch 
+27e9 08008603 inject mod ,3 
+27ea 680141dc fetch 2 ,mem_tx_len 
+27eb 98007200 iforce loopcnt 
+27ec c50827ef bmark1 mark_longpacket ,transmit_long 
+27ed 08008605 inject mod ,5 
+27ee 202027f0 branch transmit_stuff 
+
+transmit_long:
+27ef 0800860d inject mod ,13 
+
+transmit_stuff:
+27f0 1f227e00 deposit loopcnt 
+27f1 203a27f7 branch transmit_end ,blank 
+27f2 6801016f fetch 2 ,mem_txptr 
+27f3 98000c00 iforce contr 
+
+transmit_stuff_loop:
+27f4 e8c08000 ifetch 1 ,contr 
+27f5 08008608 inject mod ,8 
+27f6 c20027f4 loop transmit_stuff_loop 
+
+transmit_end:
+27f7 78247c00 enable enable_parity 
+27f8 08008610 inject mod ,16 
+27f9 78447c00 disable enable_parity 
+27fa 204024c1 call set_wait_ack 
+27fb 6800804c fetch 1 ,mem_state_map 
+27fc c302a64d bbit0 smap_edr ,end_of_packet 
+27fd 18007e00 force 0 ,pdata 
+27fe 08008606 inject mod ,6 
+27ff 2020264d branch end_of_packet 
+
+transmit_loopback:
+2800 44bd400f bpatch patch0f_2 ,mem_patch0f 
+2801 c5082808 bmark1 mark_longpacket ,transmit_loopback_long 
+
+transmit_loopback_short:
+2802 68008180 fetch 1 ,mem_lch_code 
+2803 08008603 inject mod ,3 
+2804 6800815f fetch 1 ,mem_len 
+2805 98002600 iforce regc 
+2806 08008605 inject mod ,5 
+2807 2020280d branch transmit_loopback_cont 
+
+transmit_loopback_long:
+2808 68008180 fetch 1 ,mem_lch_code 
+2809 08008603 inject mod ,3 
+280a 6801015f fetch 2 ,mem_len 
+280b 98002600 iforce regc 
+280c 0800860d inject mod ,13 
+
+transmit_loopback_cont:
+280d d8c00551 arg mem_rxbuf ,contr 
+
+transmit_loopback_loop:
+280e 1a627c00 copy regc ,null 
+280f 2022a814 branch transmit_loopback_end ,zero 
+2810 e8c08000 ifetch 1 ,contr 
+2811 08008608 inject mod ,8 
+2812 1a60a7ff increase -1 ,regc 
+2813 2020280e branch transmit_loopback_loop 
+
+transmit_loopback_end:
+2814 680100fc fetch 2 ,mem_tst_pktcnt_dmh 
+2815 1fe0fe01 increase 1 ,pdata 
+2816 600100fc store 2 ,mem_tst_pktcnt_dmh 
+2817 202027f7 branch transmit_end 
+
+apply_switch_clke:
+2818 68020165 fetch 4 ,mem_clke_bt 
+2819 1fe0a207 add pdata ,7 ,rega 
+281a 68010171 fetch 2 ,mem_slot_offset 
+281b 243a281e nbranch apply_switch_nozero ,blank 
+281c 1a20a3fd increase -3 ,rega 
+281d 20202826 branch apply_switch_wait_loop 
+
+apply_switch_nozero:
+281e 1feffe0c mul32 pdata ,12 ,pdata 
+281f 68190040 hfetcht 2 ,core_halfslot 
+2820 18408401 increase 1 ,temp 
+
+apply_switch_loop:
+2821 98467e00 isub temp ,pdata 
+2822 24212825 nbranch apply_switch_bt ,positive 
+2823 1a20a3ff increase -1 ,rega 
+2824 20202821 branch apply_switch_loop 
+
+apply_switch_bt:
+2825 1fe67e00 sub pdata ,0 ,pdata 
+
+apply_switch_wait_loop:
+2826 37d18200 until null ,oneslot 
+2827 2c400600 compare 0 ,clkn_bt ,3 
+2828 2420a826 nbranch apply_switch_wait_loop ,true 
+2829 98005200 iforce clke_rt 
+282a 1a225000 copy rega ,clke_bt 
+282b 98005200 iforce clke_rt 
+282c 20600000 rtn 
+
+calc_slot_offset:
+282d 44bdc00f bpatch patch0f_3 ,mem_patch0f 
+282e 37d10200 until null ,halfslot 
+282f 1b427e00 deposit clke 
+2830 98000c00 iforce contr 
+2831 1ff17e00 rshift16 ,pdata ,pdata 
+2832 9c467200 isub clkn_bt ,loopcnt 
+2833 1f217203 and_into 3 ,loopcnt 
+2834 2422a837 nbranch calc_bt_portion ,zero 
+2835 18007e00 force 0 ,pdata 
+2836 2020283b branch calc_skip_bt 
+
+calc_bt_portion:
+2837 d8400ea6 arg 3750 ,temp 
+2838 18007e00 force 0 ,pdata 
+
+calc_slot_offset_loop:
+2839 9840fe00 iadd temp ,pdata 
+283a c2002839 loop calc_slot_offset_loop 
+
+calc_skip_bt:
+283b 98c0fe00 iadd contr ,pdata 
+283c 1fe6fc0c div pdata ,12 
+283d 20407f86 call wait_div_end 
+283e 1807fe00 quotient pdata 
+283f 60010171 store 2 ,mem_slot_offset 
+2840 20600000 rtn 
+
+calc_clke_offset:
+2841 44be400f bpatch patch0f_4 ,mem_patch0f 
+2842 1b427e00 deposit clke 
+2843 1b220400 copy clkn ,temp 
+2844 98467c00 isub temp ,null 
+2845 7d217e2c nsetflag positive ,44 ,pdata 
+2846 98460400 isub temp ,temp 
+2847 58000ea6 setarg 3750 
+2848 284c000f isolate0 15 ,temp 
+2849 2020a84c branch calc_clke_pos ,true 
+284a 5fff0ea6 setarg -61786 
+284b 98408400 iadd temp ,temp 
+
+calc_clke_pos:
+284c 600b0447 storet 6 ,mem_le_clk_offset 
+284d 207b0000 rtn le 
+284e 600b0038 storet 6 ,mem_clk_offset 
+284f 20600000 rtn 
+
+calc_clke:
+2850 78587c00 disable clknt 
+2851 68030447 fetch 6 ,mem_le_clk_offset 
+2852 203b2854 branch calc_clke2 ,le 
+2853 68030038 fetch 6 ,mem_clk_offset 
+
+calc_clke2:
+2854 9b20e000 iadd clkn ,alarm 
+2855 1e00e00a increase 10 ,alarm 
+2856 58000ea6 setarg 3750 
+2857 9e067e00 isub alarm ,pdata 
+2858 2fec000f isolate0 15 ,pdata 
+2859 2020a85e branch calc_clke_pos_adj ,true 
+285a 5800f15a setarg 0xf15a 
+285b 9e00e000 iadd alarm ,alarm 
+
+calc_clke_pos2:
+285c 1e023400 copy alarm ,clke 
+285d 20600000 rtn 
+
+calc_clke_pos_adj:
+285e 18007c00 force 0 ,null 
+285f 2020285c branch calc_clke_pos2 
+
+calc_radio_freq:
+2860 44bec00f bpatch patch0f_5 ,mem_patch0f 
+2861 20402918 call set_sync_on 
+2862 1c227e00 copy bt_clk ,pdata 
+2863 1fe17f80 and_into 0x180 ,pdata 
+2864 2c800e03 compare 3 ,freq_mode ,0x07 
+2865 2420a869 nbranch freq_not_connection ,true 
+2866 1fe97e00 rshift3 pdata ,pdata 
+2867 9ae0fe00 iadd freq_index ,pdata 
+2868 2020286a branch do_hop_mod_now 
+
+freq_not_connection:
+2869 1ae27e00 copy freq_index ,pdata 
+
+do_hop_mod_now:
+286a 1fe6fc4f div pdata ,79 
+286b 782afc00 pulse recalc 
+286c 20407f86 call wait_div_end 
+286d 18072200 remainder rega 
+286e 1a2085d8 add rega ,-40 ,temp 
+286f 20212872 branch odd_half ,positive 
+2870 1a238400 lshift rega ,temp 
+2871 20202874 branch freq_result 
+
+odd_half:
+2872 18438400 lshift temp ,temp 
+2873 18408401 increase 1 ,temp 
+
+freq_result:
+2874 44bf400f bpatch patch0f_6 ,mem_patch0f 
+2875 68008031 fetch 1 ,mem_mode 
+2876 c301a885 bbit0 afh_change ,afh_process_con 
+
+afh_process_0:
+2877 680240d2 fetch 4 ,mem_afh_instant 
+2878 9c267c00 isub bt_clk ,null 
+2879 20212885 branch afh_process_con ,positive 
+287a 204028a4 call afh_clear 
+287b 6800c0d9 fetch 1 ,mem_afh_new_mod 
+287c 207a0000 rtn blank 
+287d 68008031 fetch 1 ,mem_mode 
+287e 79207e02 set1 afh_enable ,pdata 
+287f 60008031 store 1 ,mem_mode 
+2880 6802c0e7 fetch 5 ,mem_afh_map_new 
+2881 6002c0da store 5 ,mem_afh_map_lo 
+2882 e8c28000 ifetch 5 ,contr 
+2883 6002c0df store 5 ,mem_afh_map_hi 
+2884 204028a9 call afh_process_freq_map 
+
+afh_process_con:
+2885 68008031 fetch 1 ,mem_mode 
+2886 c4010000 rtnbit0 afh_enable 
+2887 2c2ffe01 isolate1 1 ,bt_clk 
+2888 2020a8a1 branch afh_same_channel ,true 
+2889 18492200 rshift3 temp ,rega 
+288a 18410e07 and temp ,7 ,queue 
+288b 580040da setarg mem_afh_map_lo 
+288c 9a20a200 iadd rega ,rega 
+288d ea208000 ifetch 1 ,rega 
+288e afec0000 qisolate0 pdata 
+288f 2020a892 branch afh_process_1 ,true 
+2890 18427e00 deposit temp 
+2891 2020289e branch afh_process_end 
+
+afh_process_1:
+2892 6800c0e4 fetch 1 ,mem_afh_used 
+2893 98002400 iforce regb 
+2894 1c227e00 deposit bt_clk 
+2895 1fe17f80 and_into 0x180 ,pdata 
+2896 1fe97e00 rshift3 pdata ,pdata 
+2897 9ae0fe00 iadd freq_index ,pdata 
+2898 9a46fc00 idiv regb 
+2899 580040f2 setarg mem_afh_map 
+289a 20407f86 call wait_div_end 
+289b 18072200 remainder rega 
+289c 9a208c00 iadd rega ,contr 
+289d e8c08000 ifetch 1 ,contr 
+
+afh_process_end:
+289e 6000c0e5 store 1 ,mem_afh_index 
+289f 98000400 iforce temp 
+28a0 20600000 rtn 
+
+afh_same_channel:
+28a1 6800c0e5 fetch 1 ,mem_afh_index 
+28a2 98000400 iforce temp 
+28a3 20600000 rtn 
+
+afh_clear:
+28a4 68008031 fetch 1 ,mem_mode 
+28a5 793ffe02 set0 afh_enable ,pdata 
+28a6 793ffe03 set0 afh_change ,pdata 
+28a7 60008031 store 1 ,mem_mode 
+28a8 20600000 rtn 
+
+afh_process_freq_map:
+28a9 44bfc00f bpatch patch0f_7 ,mem_patch0f 
+28aa d8a040f2 arg mem_afh_map ,contw 
+28ab 1800720a force 10 ,loopcnt 
+28ac 20407ec6 call memset0 
+28ad d8a040f2 arg mem_afh_map ,contw 
+28ae 18002600 force 0 ,regc 
+28af 18000e02 force 2 ,queue 
+
+process_freq_3:
+28b0 6802c0da fetch 5 ,mem_afh_map_lo 
+28b1 98000400 iforce temp 
+28b2 28e1fe02 compare 2 ,queue ,0xff 
+28b3 2020a8b5 branch process_freq_1 ,true 
+28b4 18430400 rshift temp ,temp 
+
+process_freq_1:
+28b5 284c0000 isolate0 0 ,temp 
+28b6 2020a8b9 branch process_freq_0 ,true 
+28b7 1a627e00 deposit regc 
+28b8 e0a08000 istore 1 ,contw 
+
+process_freq_0:
+28b9 184b0400 rshift2 temp ,temp 
+28ba 1a60a602 increase 2 ,regc 
+28bb 2a61fc28 compare 40 ,regc ,0xfe 
+28bc 2420a8c2 nbranch process_freq_2 ,true 
+28bd 6802c0df fetch 5 ,mem_afh_map_hi 
+28be 98000400 iforce temp 
+28bf 28e1fe02 compare 2 ,queue ,0xff 
+28c0 2020a8c2 branch process_freq_2 ,true 
+28c1 18430400 rshift temp ,temp 
+
+process_freq_2:
+28c2 1a667c4e sub regc ,78 ,null 
+28c3 202128b5 branch process_freq_1 ,positive 
+28c4 18002601 force 1 ,regc 
+28c5 18e08fff increase -1 ,queue 
+28c6 2422a8b0 nbranch process_freq_3 ,zero 
+28c7 da2040f2 arg mem_afh_map ,rega 
+28c8 18a27e00 deposit contw 
+28c9 9a267e00 isub rega ,pdata 
+28ca 6000c0e4 store 1 ,mem_afh_used 
+28cb 20600000 rtn 
+
+rx_radio_freq:
+28cc 44c04010 bpatch patch10_0 ,mem_patch10 
+28cd 20402860 call calc_radio_freq 
+28ce 6800817f fetch 1 ,mem_debug_config 
+28cf c302a8d1 bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
+28d0 680884cc fetcht 1 ,mem_rx_fixed_freq 
+
+rx_radio_freq_now:
+28d1 2020291f branch set_freq_rx 
+
+tx_radio_freq:
+28d2 44c0c010 bpatch patch10_1 ,mem_patch10 
+28d3 20402860 call calc_radio_freq 
+28d4 6800817f fetch 1 ,mem_debug_config 
+28d5 c30228d7 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
+28d6 680884cb fetcht 1 ,mem_tx_fixed_freq 
+
+tx_radio_freq_now:
+28d7 20202933 branch set_freq_tx 
+
+fetch_giac:
+28d8 18005a00 force 0 ,uap 
+28d9 6801c0a7 fetch 3 ,mem_glap 
+28da 98005800 iforce lap 
+28db 20600000 rtn 
+
+fetch_page_bt_adr:
+28dc 44c14010 bpatch patch10_2 ,mem_patch10 
+28dd 6800c1d3 fetch 1 ,mem_hci_puap 
+28de 1fe25a00 icopy uap 
+28df 6801c1d0 fetch 3 ,mem_hci_plap 
+28e0 1fe25800 icopy lap 
+28e1 20600000 rtn 
+
+fetch_self_bt_adr:
+28e2 44c1c010 bpatch patch10_3 ,mem_patch10 
+28e3 680140a4 fetch 2 ,mem_nap 
+28e4 1fe25c00 icopy nap 
+28e5 6800c0a3 fetch 1 ,mem_uap 
+28e6 1fe25a00 icopy uap 
+28e7 6801c0a0 fetch 3 ,mem_lap 
+28e8 1fe25800 icopy lap 
+28e9 20600000 rtn 
+
+fetch_extm_bt_adr:
+28ea 44c24010 bpatch patch10_4 ,mem_patch10 
+28eb 68010044 fetch 2 ,mem_pnap 
+28ec 1fe25c00 icopy nap 
+28ed 68008043 fetch 1 ,mem_puap 
+28ee 1fe25a00 icopy uap 
+28ef 68018040 fetch 3 ,mem_plap 
+28f0 1fe25800 icopy lap 
+28f1 20600000 rtn 
+
+fetch_diac:
+28f2 c51028f5 bmark1 mark_all_diac ,fetch_diac_do 
+28f3 c68e8000 rtnmark0 mark_inquiry_state 
+28f4 c68f8000 rtnmark0 mark_periodical_diac 
+
+fetch_diac_do:
+28f5 1d815900 and_into -256 ,lap 
+28f6 782afc00 pulse recalc 
+28f7 20000020 nop 32 
+28f8 20600000 rtn 
+
+shutdown_radio:
+28f9 44c2c010 bpatch patch10_5 ,mem_patch10 
+28fa 2030a90a branch shutdown_radio0 ,is_rx 
+28fb 708955d4 jam 0xd4 ,rf_tx_pa_ib 
+28fc 20000004 nop 4 
+28fd 708955d2 jam 0xd2 ,rf_tx_pa_ib 
+28fe 20000004 nop 4 
+28ff 708955d1 jam 0xd1 ,rf_tx_pa_ib 
+2900 20000004 nop 4 
+2901 6800c1de fetch 1 ,mem_tx_power 
+2902 c0002908 beq tx_power_0db ,shutdown_radio_0db 
+2903 c000a915 beq tx_power_3db ,shutdown_radio_3db 
+2904 c0012908 beq tx_power_5db ,shutdown_radio_5db 
+2905 c001a915 beq tx_power_f3db ,shutdown_radio_f3db 
+2906 c0022915 beq tx_power_f5db ,shutdown_radio_f5db 
+2907 c0102915 beq tx_power_pair ,shutdown_radio_pair 
+
+shutdown_radio_5db:
+
+shutdown_radio_0db:
+2908 708955d0 jam 0xd0 ,rf_tx_pa_ib 
+2909 708956e0 jam 0xe0 ,rf_tx_pa_gc 
+
+shutdown_radio0:
+290a 18002a00 force 0 ,radio_ctrl 
+290b 7850fc00 disable is_rx 
+290c 78507c00 disable is_tx 
+290d 782f7c00 pulse packet_end 
+290e 70890200 jam 0x0 ,rfen_mdm 
+290f 70890100 jam 0x0 ,rfen_tx 
+2910 70890000 jam 0x0 ,rfen_rx 
+2911 70890300 jam 0 ,rfen_sn 
+2912 70890470 jam 0x70 ,rfen_msc 
+2913 70890600 jam 0x0 ,rfen_adc 
+2914 20600000 rtn 
+
+shutdown_radio_pair:
+
+shutdown_radio_f5db:
+
+shutdown_radio_f3db:
+
+shutdown_radio_3db:
+2915 708955d0 jam 0xd0 ,rf_tx_pa_ib 
+2916 708956c0 jam 0xc0 ,rf_tx_pa_gc 
+2917 2020290a branch shutdown_radio0 
+
+set_sync_on:
+2918 44c34010 bpatch patch10_6 ,mem_patch10 
+2919 70890200 jam 0x0 ,rfen_mdm 
+291a 70890100 jam 0x0 ,rfen_tx 
+291b 70890018 jam 0x18 ,rfen_rx 
+291c 708903a7 jam 0xa7 ,rfen_sn 
+291d 7089047f jam 0x7f ,rfen_msc 
+291e 20600000 rtn 
+
+set_freq_rx:
+291f 44c3c010 bpatch patch10_7 ,mem_patch10 
+2920 60088017 storet 1 ,mem_last_freq 
+2921 1840a204 add temp ,rx_freq_offset ,rega 
+2922 70896d07 jam 0x07 ,rf_balun_ctrim 
+2923 20202981 branch rf_write_freq 
+
+rf_rx_enable:
+2924 44c44011 bpatch patch11_0 ,mem_patch11 
+2925 708901cf jam 0xcf ,rfen_tx 
+2926 2000000a nop 10 
+2927 708900ff jam 0xff ,rfen_rx 
+2928 708903af jam 0xaf ,rfen_sn 
+2929 708904ff jam 0xff ,rfen_msc 
+292a 2000000a nop 10 
+292b 708902a0 jam 0xa0 ,rfen_mdm 
+292c 20600000 rtn 
+
+set_freq_tx_offset:
+292d 6800c1e0 fetch 1 ,mem_250k_freq_enable 
+292e 203a2931 branch set_freq_tx_2m_offset ,blank 
+
+set_freq_tx_0m_offset:
+292f 1840a202 add temp ,2 ,rega 
+2930 20600000 rtn 
+
+set_freq_tx_2m_offset:
+2931 1840a200 add temp ,0 ,rega 
+2932 20600000 rtn 
+
+set_freq_tx:
+2933 44c4c011 bpatch patch11_1 ,mem_patch11 
+2934 60088017 storet 1 ,mem_last_freq 
+2935 2040292d call set_freq_tx_offset 
+2936 20402981 call rf_write_freq 
+2937 58000500 setarg param_pll_setup 
+2938 20402a8f call sleep 
+
+txon:
+2939 70890601 jam 0x1 ,rfen_adc 
+293a 7089003c jam 0x3c ,rfen_rx 
+293b 708901e0 jam 0xe0 ,rfen_tx 
+293c 70896d12 jam 0x12 ,rf_balun_ctrim 
+293d 2000000a nop 10 
+293e 70890201 jam 0x01 ,rfen_mdm 
+293f 7089023d jam 0x3d ,rfen_mdm 
+2940 2000000a nop 10 
+2941 708903b7 jam 0xb7 ,rfen_sn 
+2942 2000000a nop 10 
+2943 7089027f jam 0x7f ,rfen_mdm 
+
+txon_power_select:
+2944 6800c1de fetch 1 ,mem_tx_power 
+2945 c000294b beq tx_power_0db ,set_tx_power_0db 
+2946 c000a94f beq tx_power_3db ,set_tx_power_3db 
+2947 c0012953 beq tx_power_5db ,set_tx_power_5db 
+2948 c001a957 beq tx_power_f3db ,set_tx_power_f3db 
+2949 c002295b beq tx_power_f5db ,set_tx_power_f5db 
+294a c010295f beq tx_power_pair ,set_tx_power_pair 
+
+set_tx_power_0db:
+294b 708956f0 jam 0xf0 ,rf_tx_pa_gc 
+294c 20402965 call txon_common 
+294d 708955d8 jam 0xd8 ,rf_tx_pa_ib 
+294e 20600000 rtn 
+
+set_tx_power_3db:
+294f 708956df jam 0xdf ,rf_tx_pa_gc 
+2950 20402965 call txon_common 
+2951 708955df jam 0xdf ,rf_tx_pa_ib 
+2952 20600000 rtn 
+
+set_tx_power_5db:
+2953 708956ff jam 0xff ,rf_tx_pa_gc 
+2954 20402965 call txon_common 
+2955 708955df jam 0xdf ,rf_tx_pa_ib 
+2956 20600000 rtn 
+
+set_tx_power_f3db:
+2957 708956ce jam 0xce ,rf_tx_pa_gc 
+2958 20402965 call txon_common 
+2959 708955d8 jam 0xd8 ,rf_tx_pa_ib 
+295a 20600000 rtn 
+
+set_tx_power_f5db:
+295b 708956cb jam 0xcb ,rf_tx_pa_gc 
+295c 20402965 call txon_common 
+295d 708955d8 jam 0xd8 ,rf_tx_pa_ib 
+295e 20600000 rtn 
+
+set_tx_power_pair:
+295f 708955d0 jam 0xd0 ,rf_tx_pa_ib 
+2960 708956c0 jam 0xc0 ,rf_tx_pa_gc 
+2961 7089574c jam 0x4c ,0x8957 
+2962 7089586c jam 0x6c ,0x8958 
+2963 70895950 jam 0x50 ,0x8959 
+2964 20600000 rtn 
+
+txon_common:
+2965 20000004 nop 4 
+2966 708955d1 jam 0xd1 ,rf_tx_pa_ib 
+2967 20000004 nop 4 
+2968 708955d2 jam 0xd2 ,rf_tx_pa_ib 
+2969 20000004 nop 4 
+296a 708955d4 jam 0xd4 ,rf_tx_pa_ib 
+296b 20600000 rtn 
+
+initialize_radio:
+296c 70804206 jam clksel_rc ,core_clksel 
+
+initialize_radio_wait:
+296d 680140c3 fetch 2 ,mem_rf_init_ptr 
+296e c307296d bbit0 14 ,initialize_radio_wait 
+296f 98000c00 iforce contr 
+2970 d8408900 arg 0x8900 ,temp 
+
+initialize_radio_loop:
+2971 e8c08000 ifetch 1 ,contr 
+2972 c07fa977 beq 0xff ,initialize_radio_cont 
+2973 98418a00 ior temp ,contw 
+2974 e8c08000 ifetch 1 ,contr 
+2975 e0a08000 istore 1 ,contw 
+2976 20202971 branch initialize_radio_loop 
+
+initialize_radio_cont:
+2977 44c54011 bpatch patch11_2 ,mem_patch11 
+2978 20402be5 call lpm_cal_xtal_startup 
+2979 204029c9 call switchto_dpllclk 
+297a 580007d0 setarg param_dpll_start_delay 
+297b 9c40fe00 iadd clkn_bt ,pdata 
+297c 60020169 store 4 ,mem_dpll_clkn 
+297d 79202a03 set1 reset ,radio_ctrl 
+297e 18002a00 force 0 ,radio_ctrl 
+297f 2455a998 ncall do_rccal ,wake 
+2980 202029ab branch set_rccal 
+
+rf_write_freq:
+2981 44c5c011 bpatch patch11_3 ,mem_patch11 
+2982 58000960 setarg 2400 
+2983 9a208400 iadd rega ,temp 
+2984 6800c0bd fetch 1 ,mem_fcomp_mul 
+2985 70895f04 jam 0x04 ,rf_pll_rstn 
+2986 984ffe00 imul32 temp ,pdata 
+2987 6808c0be fetcht 1 ,mem_fcomp_div 
+2988 9846fc00 idiv temp 
+2989 20407f86 call wait_div_end 
+298a 1807a200 quotient rega 
+298b 18077e00 remainder pdata 
+298c 1ff07e00 lshift16 pdata ,pdata 
+298d 1ff27e00 lshift4 pdata ,pdata 
+298e 9846fc00 idiv temp 
+298f 20407f86 call wait_div_end 
+2990 1807fe00 quotient pdata 
+2991 1fed7e00 lshift8 pdata ,pdata 
+2992 1fe3fe00 lshift pdata ,pdata 
+2993 9a21fe00 ior rega ,pdata 
+2994 60120960 hstore 4 ,rf_pll_intg 
+2995 70895f44 jam 0x44 ,rf_pll_rstn 
+2996 70895fc4 jam 0xc4 ,rf_pll_rstn 
+2997 20600000 rtn 
+
+do_rccal:
+2998 44c64011 bpatch patch11_4 ,mem_patch11 
+2999 70890602 jam 0x02 ,rfen_adc 
+299a 5803d090 setarg 250000 
+299b 20402a8f call sleep 
+299c 7089007f jam 0x7f ,rfen_rx 
+299d 20000082 nop 130 
+299e 70895230 jam 0x30 ,rf_rccal_ctrl 
+299f 708901d0 jam 0xd0 ,rfen_tx 
+29a0 70895270 jam 0x70 ,rf_rccal_ctrl 
+29a1 708952f0 jam 0xf0 ,rf_rccal_ctrl 
+29a2 18007232 force 50 ,loopcnt 
+
+do_rccal_loop:
+29a3 68108980 hfetch 1 ,rf_rccal_result 
+29a4 c282a9a6 bbit1 5 ,do_rccal_end 
+29a5 c20029a3 loop do_rccal_loop 
+
+do_rccal_end:
+29a6 6000c0ce store 1 ,mem_rf_rccal 
+29a7 70890100 jam 0 ,rfen_tx 
+29a8 70890000 jam 0 ,rfen_rx 
+29a9 70890600 jam 0x00 ,rfen_adc 
+29aa 20600000 rtn 
+
+set_rccal:
+29ab 44c6c011 bpatch patch11_5 ,mem_patch11 
+29ac 6800c0ce fetch 1 ,mem_rf_rccal 
+29ad 79207e05 set1 5 ,pdata 
+29ae 60108952 hstore 1 ,rf_rccal_ctrl 
+29af 68188950 hfetcht 1 ,rf_bpf_ctrim 
+29b0 18410407 and_into 7 ,temp 
+29b1 1fe9fe00 lshift3 pdata ,pdata 
+29b2 9841fe00 ior temp ,pdata 
+29b3 60108950 hstore 1 ,rf_bpf_ctrim 
+29b4 68108951 hfetch 1 ,rf_bpf_ib 
+29b5 793ffe00 set0 bpf_rccal ,pdata 
+29b6 60108951 hstore 1 ,rf_bpf_ib 
+29b7 68108952 hfetch 1 ,rf_adc_rccal 
+29b8 793ffe05 set0 adc_rccal ,pdata 
+29b9 60108952 hstore 1 ,rf_adc_rccal 
+29ba 20600000 rtn 
+
+save_rssi:
+29bb 44c74011 bpatch patch11_6 ,mem_patch11 
+29bc 68110981 hfetch 2 ,rf_afc_d2a 
+29bd 1ff1fe00 rshift4 pdata ,pdata 
+29be 1fe97e00 rshift3 pdata ,pdata 
+29bf 1fe67e00 sub pdata ,0 ,pdata 
+
+bcd:
+29c0 1fe17eff and_into 0xff ,pdata 
+29c1 1fe6fc0a div pdata ,10 
+29c2 20407f86 call wait_div_end 
+29c3 1807fe00 quotient pdata 
+29c4 1ff27e00 lshift4 pdata ,pdata 
+29c5 18070400 remainder temp 
+29c6 9841fe00 ior temp ,pdata 
+29c7 60008018 store 1 ,mem_rssi 
+29c8 20600000 rtn 
+
+switchto_dpllclk:
+29c9 70804206 jam clksel_rc ,core_clksel 
+29ca 6810896b hfetch 1 ,rf_clkpll_frac + 2 
+29cb 793ffe04 set0 4 ,pdata 
+29cc 793ffe05 set0 5 ,pdata 
+29cd 6010896b hstore 1 ,rf_clkpll_frac + 2 
+29ce 70890500 jam 0x00 ,rfen_ck 
+29cf 70890400 jam 0x00 ,rfen_msc 
+29d0 70890470 jam 0x70 ,rfen_msc 
+29d1 708905ff jam 0xff ,rfen_ck 
+29d2 6810896b hfetch 1 ,rf_clkpll_frac + 2 
+29d3 79207e04 set1 4 ,pdata 
+29d4 79207e05 set1 5 ,pdata 
+29d5 6010896b hstore 1 ,rf_clkpll_frac + 2 
+29d6 204029e9 call init_lpm_ctrl 
+29d7 68108968 hfetch 1 ,rf_clkpll_int 
+29d8 79207e07 set1 7 ,pdata 
+29d9 60108968 hstore 1 ,rf_clkpll_int 
+29da 793ffe07 set0 7 ,pdata 
+29db 60108968 hstore 1 ,rf_clkpll_int 
+29dc 79207e07 set1 7 ,pdata 
+29dd 60108968 hstore 1 ,rf_clkpll_int 
+29de 70804205 jam clksel_dpll ,core_clksel 
+29df 20000001 nop 1 
+29e0 70804204 jam clksel_xtal ,core_clksel 
+29e1 6810896b hfetch 1 ,rf_clkpll_frac + 2 
+29e2 1fe17ecf and_into 0xcf ,pdata 
+29e3 6010896b hstore 1 ,rf_clkpll_frac + 2 
+29e4 1fe1fe30 or_into 0x30 ,pdata 
+29e5 6010896b hstore 1 ,rf_clkpll_frac + 2 
+29e6 20600000 rtn 
+
+xtal_fast_wake:
+29e7 58000f0f setarg 0xf0f 
+29e8 20202c18 branch lpm_write_config 
+
+init_lpm_ctrl:
+29e9 5800080f setarg 0x80f 
+29ea 20202c18 branch lpm_write_config 
+
+start_receiver:
+29eb 44c7c011 bpatch patch11_7 ,mem_patch11 
+29ec 20402924 call rf_rx_enable 
+29ed 78507c00 disable is_tx 
+29ee 7830fc00 enable is_rx 
+29ef 782b7c00 pulse init_encrypt 
+29f0 20600000 rtn 
+
+prep_crypt:
+29f1 44c84012 bpatch patch12_0 ,mem_patch12 
+29f2 6800804c fetch 1 ,mem_state_map 
+29f3 2feffe02 isolate1 smap_encryption ,pdata 
+29f4 7920fe00 setflag true ,0 ,pdata 
+29f5 60108011 hstore 1 ,core_encrypt 
+29f6 d8c00062 arg mem_kc ,contr 
+29f7 e8c48000 ifetch 9 ,contr 
+29f8 98006400 iforce kc_ls 
+29f9 e8c38000 ifetch 7 ,contr 
+29fa 98006600 iforce kc_ms 
+29fb 68008054 fetch 1 ,mem_key_size 
+29fc 1fe0e9ff add pdata ,-1 ,g1l 
+29fd 782d7c00 pulse kc_p_activate 
+29fe 20600000 rtn 
+
+wait_access_end:
+29ff 1b427e00 deposit clke 
+2a00 6003009a store 6 ,mem_sync_clke 
+2a01 7846fc00 disable decode_fec0 
+2a02 242c28f9 nbranch shutdown_radio ,sync 
+2a03 dd2003bb arg param_clke_cal ,clke_rt 
+2a04 1d00d001 increase 1 ,clke_bt 
+2a05 1d0151fc and_into 0x1fc ,clke_bt 
+2a06 20600000 rtn 
+
+wait_access_mhalfbnd:
+2a07 7826fc00 enable decode_fec0 
+
+wait_access_mhalfbnd_correlate:
+2a08 37cb8400 correlate null ,mhalfbnd 
+2a09 202c29ff branch wait_access_end ,sync 
+2a0a 2d000402 compare 0x02 ,clke_bt ,0x02 
+2a0b 2420aa08 nbranch wait_access_mhalfbnd_correlate ,true 
+2a0c 202029ff branch wait_access_end 
+
+wait_access_clkn_rt:
+2a0d 44c8c012 bpatch patch12_1 ,mem_patch12 
+2a0e d9600600 arg param_conn_access ,timeup 
+2a0f 7826fc00 enable decode_fec0 
+2a10 34730400 correlate clkn_rt ,meet 
+2a11 7846fc00 disable decode_fec0 
+2a12 242c28f9 nbranch shutdown_radio ,sync 
+2a13 20600000 rtn 
+
+wait_access_forever:
+2a14 44c94012 bpatch patch12_2 ,mem_patch12 
+2a15 7826fc00 enable decode_fec0 
+2a16 37c18400 correlate null ,timeout 
+2a17 7846fc00 disable decode_fec0 
+2a18 242c28f9 nbranch shutdown_radio ,sync 
+2a19 dd2003bb arg param_clke_cal ,clke_rt 
+2a1a 1d0151fc and_into 0x1fc ,clke_bt 
+2a1b 20600000 rtn 
+
+reserve_slot:
+2a1c 44c9c012 bpatch patch12_3 ,mem_patch12 
+2a1d 98002200 iforce rega 
+2a1e 1c227e00 deposit bt_clk 
+2a1f 98409600 iadd temp ,timeup 
+2a20 19627e00 copy timeup ,pdata 
+2a21 600240ca store 4 ,mem_next_btclk 
+2a22 1a227e00 deposit rega 
+2a23 20600000 rtn 
+
+ahead_window:
+2a24 1fe20400 copy pdata ,temp 
+2a25 44ca4012 bpatch patch12_4 ,mem_patch12 
+2a26 18427e00 copy temp ,pdata 
+2a27 20407f50 call clk2bt 
+2a28 1c307e00 lshift16 bt_clk ,pdata 
+2a29 79207e2c set1 44 ,pdata 
+2a2a 20407f39 call clk_diff 
+2a2b 793ffe2c set0 44 ,pdata 
+2a2c 20402a77 call get_clk 
+2a2d 20407f39 call clk_diff 
+2a2e 20740000 rtn user 
+2a2f 20407f43 call clk2rt 
+2a30 98003600 iforce stop_watch 
+2a31 37c18200 until null ,timeout 
+2a32 20600000 rtn 
+
+setup_clk:
+2a33 44cac012 bpatch patch12_5 ,mem_patch12 
+2a34 20382a38 branch setup_clkn ,clknt 
+2a35 35330200 until clke_rt ,meet 
+
+skip_setup_clke:
+2a36 1d020400 copy clke_bt ,temp 
+2a37 20202a3b branch setup_clknbt 
+
+setup_clkn:
+2a38 20372a3a branch skip_setup_clkn ,attempt 
+2a39 34730200 until clkn_rt ,meet 
+
+skip_setup_clkn:
+2a3a 1c420400 copy clkn_bt ,temp 
+
+setup_clknbt:
+2a3b 20342a47 branch setup_clk11 ,user 
+2a3c 28400601 compare 1 ,temp ,3 
+2a3d 2420aa33 nbranch setup_clk ,true 
+
+setup_complete:
+2a3e 44cb4012 bpatch patch12_6 ,mem_patch12 
+2a3f 68008030 fetch 1 ,mem_state 
+2a40 c4000000 rtnbit0 state_inconn 
+2a41 680240ca fetch 4 ,mem_next_btclk 
+2a42 98467e00 isub temp ,pdata 
+2a43 24610000 nrtn positive 
+2a44 1fe67cff sub pdata ,0xff ,null 
+2a45 20212a33 branch setup_clk ,positive 
+2a46 20600000 rtn 
+
+setup_clk11:
+2a47 28400603 compare 3 ,temp ,3 
+2a48 2420aa33 nbranch setup_clk ,true 
+2a49 20202a3e branch setup_complete 
+
+rf_setup_time:
+2a4a 44cbc012 bpatch patch12_7 ,mem_patch12 
+2a4b d9600600 arg param_rf_setup ,timeup 
+2a4c 20202a33 branch setup_clk 
+
+rf_setup_time_slave_slot:
+2a4d 78547c00 disable user 
+2a4e 20202a4a branch rf_setup_time 
+
+rf_setup_time_master_slot:
+2a4f 78347c00 enable user 
+2a50 20202a4a branch rf_setup_time 
+
+start_transmitter:
+2a51 44cc4013 bpatch patch13_0 ,mem_patch13 
+2a52 204029f1 call prep_crypt 
+2a53 7850fc00 disable is_rx 
+2a54 78307c00 enable is_tx 
+2a55 20600000 rtn 
+
+start_tx_native:
+2a56 44ccc013 bpatch patch13_1 ,mem_patch13 
+2a57 d9600e43 arg param_tx_setup ,timeup 
+2a58 34730200 until clkn_rt ,meet 
+2a59 782b7c00 pulse init_encrypt 
+2a5a 20600000 rtn 
+
+start_rx_native:
+2a5b 44cd4013 bpatch patch13_2 ,mem_patch13 
+2a5c d9600d00 arg param_rx_setup ,timeup 
+2a5d 34730200 until clkn_rt ,meet 
+2a5e 20600000 rtn 
+
+start_tx_external:
+2a5f 44cdc013 bpatch patch13_3 ,mem_patch13 
+2a60 d9600e43 arg param_tx_setup ,timeup 
+2a61 35330200 until clke_rt ,meet 
+2a62 782b7c00 pulse init_encrypt 
+2a63 20600000 rtn 
+
+send_access_word:
+2a64 44ce4013 bpatch patch13_4 ,mem_patch13 
+2a65 51207e00 preload access 
+2a66 782efc00 enable encode_fec0 
+2a67 79202a00 set1 txgfsk ,radio_ctrl 
+2a68 08008648 inject mod ,72 
+2a69 784efc00 disable encode_fec0 
+2a6a 20600000 rtn 
+
+scan_mode_whiten:
+2a6b 1ca20400 copy xin ,temp 
+2a6c 18418460 or_into 0x60 ,temp 
+2a6d 18421c00 copy temp ,white_init 
+2a6e 20600000 rtn 
+
+get_free_amaddr:
+2a6f 44cec013 bpatch patch13_5 ,mem_patch13 
+2a70 6800c090 fetch 1 ,mem_current_amaddr 
+2a71 1fe0fe01 increase 1 ,pdata 
+2a72 c083aa74 bne param_esco_addr ,get_free_amaddr_cont 
+2a73 18007e01 force 1 ,pdata 
+
+get_free_amaddr_cont:
+2a74 6000c090 store 1 ,mem_current_amaddr 
+2a75 98000800 iforce am_addr 
+2a76 20600000 rtn 
+
+get_clk:
+2a77 1b220400 copy clkn ,temp 
+2a78 20748000 rtn master 
+2a79 1b420400 copy clke ,temp 
+2a7a 20600000 rtn 
+
+get_clkbt:
+2a7b 1c427e00 deposit clkn_bt 
+2a7c 20748000 rtn master 
+2a7d 1d027e00 deposit clke_bt 
+2a7e 20600000 rtn 
+
+supervision_update:
+2a7f 44cf4013 bpatch patch13_6 ,mem_patch13 
+2a80 680a004d fetcht 4 ,mem_supervision_timer 
+2a81 20402a7b call get_clkbt 
+2a82 98461600 isub temp ,timeup 
+2a83 19627e00 deposit timeup 
+2a84 68090051 fetcht 2 ,mem_supervision_to 
+2a85 18438400 lshift temp ,temp 
+2a86 98467e00 isub temp ,pdata 
+2a87 20600000 rtn 
+
+supervision_flush:
+2a88 44cfc013 bpatch patch13_7 ,mem_patch13 
+2a89 20402a7b call get_clkbt 
+2a8a 6002004d store 4 ,mem_supervision_timer 
+2a8b 20600000 rtn 
+
+assert:
+2a8c 44d04014 bpatch patch14_0 ,mem_patch14 
+2a8d 20202a8c branch assert 
+
+loop:
+2a8e 20202a8e branch loop 
+
+sleep:
+2a8f 207a0000 rtn blank 
+2a90 1fe37e00 rshift pdata ,pdata 
+2a91 1fe0fffd increase -3 ,pdata 
+
+sleep_loop:
+2a92 1fe0ffff increase -1 ,pdata 
+2a93 2422aa92 nbranch sleep_loop ,zero 
+2a94 18007e00 force 0 ,pdata 
+2a95 20600000 rtn 
+
+init_param:
+2a96 df200010 arg 0x10 ,loopcnt 
+2a97 d8a00000 arg 0 ,contw 
+2a98 20407ec6 call memset0 
+2a99 d8a0043f arg mem_le_state ,contw 
+2a9a df20000a arg 10 ,loopcnt 
+2a9b 20407ec6 call memset0 
+2a9c 7009b200 jam 0 ,mem_sp_calc 
+2a9d 700a9900 jam 0 ,mem_fifo_temp 
+2a9e 70048c00 jam 0 ,mem_le_testtype 
+2a9f 70017f00 jam 0 ,mem_debug_config 
+2aa0 7004d100 jam 0 ,mem_lmp_conn_state 
+2aa1 44d0c014 bpatch patch14_1 ,mem_patch14 
+2aa2 70016d00 jam 0 ,mem_connection_options 
+2aa3 70015100 jam 0 ,mem_tester_emulate 
+2aa4 70015c00 jam 0 ,mem_tester_cnt 
+2aa5 589e8b33 setarg param_glap 
+2aa6 6001c0a7 store 3 ,mem_glap 
+2aa7 58000153 setarg param_acl_pktlen 
+2aa8 60010083 store 2 ,mem_acl_pktlen 
+2aa9 7000851e jam param_sco_pktlen ,mem_sco_pktlen 
+2aaa 70008601 jam param_acl_pktcnt ,mem_acl_pktcnt 
+2aab 70008807 jam param_sco_pktcnt ,mem_sco_pktcnt 
+2aac 5812e904 setarg param_hci_version 
+2aad 60018080 store 3 ,mem_hci_version 
+2aae 70009060 jam 0x60 ,mem_fhs_misc 
+2aaf 7040d005 jam param_max_slot ,mem_max_slot 
+2ab0 70001402 jam 0x02 ,mem_fw_ver 
+2ab1 6800c65a fetch 1 ,mem_ssp_enable 
+2ab2 245a74c1 ncall init_memp ,blank 
+2ab3 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+2ab4 245a7518 ncall init_memp_256 ,blank 
+2ab5 44d14014 bpatch patch14_2 ,mem_patch14 
+2ab6 20758000 rtn wake 
+2ab7 58000000 setarg 0 
+2ab8 600141dc store 2 ,mem_tx_len 
+2ab9 1c437e00 rshift clkn_bt ,pdata 
+2aba 60024094 store 4 ,mem_last_clkn 
+2abb 20600000 rtn 
+
+lpmstate:
+2abc 5800ee21 setarg 0xee21 
+2abd 60110050 hstore 2 ,core_clkoff 
+2abe 6812011c hfetch 4 ,core_gpio_in 
+2abf 60020abe store 4 ,mem_saved_gpio_in 
+2ac0 6810813e hfetch 1 ,core_lpm_ldocnt 
+2ac1 60008abd store 1 ,mem_wakup_from_power_flag 
+2ac2 c301e45b bbit0 gpio_latch ,loadcode 
+2ac3 7835fc00 enable wake 
+2ac4 c303aacc bbit0 cold_wake ,lpmwake 
+2ac5 7855fc00 disable wake 
+2ac6 1ce27e00 deposit auxcnt 
+2ac7 243a2acc nbranch lpmwake ,blank 
+2ac8 6810813b hfetch 1 ,core_lpm_ctrl + 3 
+2ac9 c2812acc bbit1 reload_code ,lpmwake 
+2aca d85fffff arg param_hibernate_clks ,temp 
+2acb 20202b3c branch lpm_enter_sleep 
+
+lpmwake:
+2acc 6811813c hfetch 3 ,core_lpm_xtalcnt 
+2acd 6011804c hstore 3 ,core_lpm_reg 
+2ace e8c08000 ifetch 1 ,contr 
+2acf 1fe1feef or_into isogate_mask ,pdata 
+2ad0 e0a08000 istore 1 ,contw 
+2ad1 20402c23 call lpm_write_ctrl2 
+2ad2 6810804f hfetch 1 ,core_lpm_isogate 
+2ad3 79207e04 set1 enable_retmem ,pdata 
+2ad4 6010804f hstore 1 ,core_lpm_isogate 
+2ad5 20402c23 call lpm_write_ctrl2 
+2ad6 2055aadf call lpm_load_context ,wake 
+2ad7 6810804e hfetch 1 ,core_lpm_reg + 2 
+2ad8 793ffe03 set0 gpio_latch ,pdata 
+2ad9 6010804e hstore 1 ,core_lpm_reg + 2 
+2ada 20402c23 call lpm_write_ctrl2 
+2adb 2435e45b nbranch loadcode ,wake 
+2adc c6958000 rtnmark0 mark_otp_encrypt 
+2add 70800608 jam lock_otp ,core_misc_ctrl 
+2ade 20600000 rtn 
+
+lpm_load_context:
+2adf 6800c198 fetch 1 ,mem_saved_spidctrl 
+2ae0 60108086 hstore 1 ,core_spid_ctrl 
+2ae1 6801c18d fetch 3 ,mem_saved_gsel 
+2ae2 60118080 hstore 3 ,core_gpio_sel 
+2ae3 68024181 fetch 4 ,mem_saved_gpio + 4 
+2ae4 60120074 hstore 4 ,core_gpio_out0 
+2ae5 6802417d fetch 4 ,mem_saved_gpio 
+2ae6 60120070 hstore 4 ,core_gpio_oe0 
+2ae7 68044185 fetch 8 ,mem_saved_gpio + 8 
+2ae8 60140078 hstore 8 ,core_gpio_pu0 
+2ae9 68044190 fetch 8 ,mem_saved_mark 
+2aea 98000000 iforce mark 
+2aeb 68140140 hfetch 8 ,core_gpio_wakeup_low 
+2aec 600400a1 store 8 ,mem_gpio_wakeup_low 
+2aed 204064ca call load_ucode 
+2aee 20600000 rtn 
+
+lpm_save_context:
+2aef 18027e00 deposit mark 
+2af0 60044190 store 8 ,mem_saved_mark 
+2af1 68140070 hfetch 8 ,core_gpio_oe0 
+2af2 6004417d store 8 ,mem_saved_gpio 
+2af3 e8c40000 ifetch 8 ,contr 
+2af4 e0a40000 istore 8 ,contw 
+2af5 68118080 hfetch 3 ,core_gpio_sel 
+2af6 6001c18d store 3 ,mem_saved_gsel 
+2af7 68108086 hfetch 1 ,core_spid_ctrl 
+2af8 6000c198 store 1 ,mem_saved_spidctrl 
+2af9 20202c29 branch lpm_write_gpio_wakeup 
+
+lpo_calibration:
+2afa 68108063 hfetch 1 ,core_bist_ctrl 
+2afb 243a2b00 nbranch lpo_cal_inited ,blank 
+2afc 6801c16f fetch 3 ,mem_clks_per_lpo 
+2afd 247a0000 nrtn blank 
+2afe 708063c0 jam 0xc0 ,core_bist_ctrl 
+2aff 70800680 jam ccnt_start ,core_misc_ctrl 
+
+lpo_cal_inited:
+2b00 6810812d hfetch 1 ,core_perf_status 
+2b01 c4008000 rtnbit0 1 
+2b02 68118149 hfetch 3 ,core_clk_counter 
+2b03 6001c16f store 3 ,mem_clks_per_lpo 
+2b04 20600000 rtn 
+
+lpm_adjust_clk:
+2b05 44d1c014 bpatch patch14_3 ,mem_patch14 
+2b06 1b427e00 deposit clke 
+2b07 20407f37 call clk_diff_rt 
+2b08 680a415f fetcht 4 ,mem_sleep_counter_all 
+2b09 18467cff sub temp ,0xff ,null 
+2b0a 20610000 rtn positive 
+2b0b 1fed7e00 lshift8 pdata ,pdata 
+2b0c 1ff27e00 lshift4 pdata ,pdata 
+2b0d 9846fc00 idiv temp 
+2b0e 20407f86 call wait_div_end 
+2b0f 1807fe00 quotient pdata 
+2b10 d84000c8 arg param_lpm_adjmax ,temp 
+2b11 20407f91 call ceiling 
+2b12 60008099 store 1 ,mem_lpm_adjust 
+2b13 24342b15 nbranch lpm_adjust_positive ,user 
+2b14 1fe67e00 sub pdata ,0 ,pdata 
+
+lpm_adjust_positive:
+2b15 6809c16f fetcht 3 ,mem_clks_per_lpo 
+2b16 9840fe00 iadd temp ,pdata 
+2b17 6001c16f store 3 ,mem_clks_per_lpo 
+
+lpm_clear_counter:
+2b18 58000000 setarg 0 
+2b19 6002415f store 4 ,mem_sleep_counter_all 
+2b1a 20600000 rtn 
+
+lpm_doze:
+2b1b 6800c177 fetch 1 ,mem_lpm_config + 2 
+2b1c 79207e02 set1 reload_code ,pdata 
+2b1d 6000c177 store 1 ,mem_lpm_config + 2 
+2b1e 20202b23 branch lpm_hibernate_normal 
+
+lpm_hibernate:
+2b1f d85fffff arg param_hibernate_clks ,temp 
+2b20 6800c176 fetch 1 ,mem_lpm_config + 1 
+2b21 793ffe07 set0 7 ,pdata 
+2b22 6000c176 store 1 ,mem_lpm_config + 1 
+
+lpm_hibernate_normal:
+2b23 44d24014 bpatch patch14_4 ,mem_patch14 
+2b24 20402c29 call lpm_write_gpio_wakeup 
+2b25 6800c157 fetch 1 ,mem_lpm_hibernate_switch 
+2b26 6000c17c store 1 ,mem_lpm_xtalcnt + 4 
+2b27 6800c17a fetch 1 ,mem_lpm_xtalcnt + 2 
+2b28 79207e07 set1 cold_wake ,pdata 
+2b29 6000c17a store 1 ,mem_lpm_xtalcnt + 2 
+
+lpm_sleep:
+2b2a 44d2c014 bpatch patch14_5 ,mem_patch14 
+2b2b 204029e7 call xtal_fast_wake 
+2b2c 6802415f fetch 4 ,mem_sleep_counter_all 
+2b2d 9840fe00 iadd temp ,pdata 
+2b2e 6002415f store 4 ,mem_sleep_counter_all 
+2b2f 20402aef call lpm_save_context 
+2b30 6802c178 fetch 5 ,mem_lpm_xtalcnt 
+2b31 6012004c hstore 4 ,core_lpm_reg 
+2b32 1fef2200 rshift32 pdata ,rega 
+2b33 37d98200 until null ,lpo_edge 
+2b34 1b227e00 deposit clkn 
+2b35 60034163 store 6 ,mem_sleep_clkn 
+2b36 70800502 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+2b37 37d98200 until null ,lpo_edge 
+2b38 37d98200 until null ,lpo_edge 
+2b39 1a227e00 deposit rega 
+2b3a 6010804f hstore 1 ,core_lpm_isogate 
+2b3b 70800502 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+
+lpm_enter_sleep:
+2b3c 37d98200 until null ,lpo_edge 
+2b3d 37d98200 until null ,lpo_edge 
+2b3e 601a004c hstoret 4 ,core_lpm_reg 
+2b3f 70800510 jam lpmreg_sel_counter ,core_lpm_wr 
+2b40 37df8200 until null ,never 
+
+lpm_recover_clk:
+2b41 44d34014 bpatch patch14_6 ,mem_patch14 
+2b42 58000000 setarg 0 
+2b43 1ce27c00 copy auxcnt ,null 
+2b44 2022ab4c branch lpm_recover_timeout ,zero 
+2b45 6810813c hfetch 1 ,core_lpm_xtalcnt 
+2b46 6818813d hfetcht 1 ,core_lpm_buckcnt 
+2b47 98467c00 isub temp ,null 
+2b48 20212b4a branch lpm_recover_xtal ,positive 
+2b49 18427e00 deposit temp 
+
+lpm_recover_xtal:
+2b4a 9ce67e00 isub auxcnt ,pdata 
+2b4b 1fe0fe01 increase 1 ,pdata 
+
+lpm_recover_timeout:
+2b4c 1fe0fe08 increase 8 ,pdata 
+2b4d 37d98200 until null ,lpo_edge 
+2b4e 9e20fe00 iadd lpo_time ,pdata 
+2b4f 680a415b fetcht 4 ,mem_sleep_counter 
+2b50 9840fe00 iadd temp ,pdata 
+2b51 6809c16f fetcht 3 ,mem_clks_per_lpo 
+2b52 984ffe00 imul32 temp ,pdata 
+2b53 1fecfe00 rshift8 pdata ,pdata 
+2b54 1ff1fe00 rshift4 pdata ,pdata 
+2b55 1fe0fe6e increase param_lpm_fix ,pdata 
+2b56 d8400ea6 arg 3750 ,temp 
+2b57 9846fc00 idiv temp 
+2b58 20407f86 call wait_div_end 
+2b59 1807fe00 quotient pdata 
+2b5a 1ff07e00 lshift16 pdata ,pdata 
+2b5b 18070400 remainder temp 
+2b5c 9841fe00 ior temp ,pdata 
+2b5d 680b4163 fetcht 6 ,mem_sleep_clkn 
+2b5e 20407f2c call clk_add 
+2b5f 18423200 copy temp ,clkn 
+2b60 68034048 fetch 6 ,mem_context + coffset_clk_offset 
+2b61 20402854 call calc_clke2 
+2b62 1b427e00 deposit clke 
+2b63 60030a9a store 6 ,mem_pdatatemp 
+2b64 1ce27e00 deposit auxcnt 
+2b65 e0a08000 istore 1 ,contw 
+2b66 6810811d hfetch 1 ,core_gpio_in1 
+2b67 1fe1fef0 or_into 0xf0 ,pdata 
+2b68 e0a08000 istore 1 ,contw 
+2b69 20600000 rtn 
+
+lpm_dispatch:
+2b6a 44d3c014 bpatch patch14_7 ,mem_patch14 
+2b6b 20402afa call lpo_calibration 
+2b6c 6801c16f fetch 3 ,mem_clks_per_lpo 
+2b6d 207a0000 rtn blank 
+2b6e 6800c091 fetch 1 ,mem_lpm_mode 
+2b6f 207a0000 rtn blank 
+2b70 6800c65a fetch 1 ,mem_ssp_enable 
+2b71 203a2b74 branch lpm_dispatch_next ,blank 
+2b72 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+2b73 207a0000 rtn blank 
+
+lpm_dispatch_next:
+2b74 6800c4c0 fetch 1 ,mem_le_sc_calc 
+2b75 247a0000 nrtn blank 
+2b76 20402c3a call lpm_check_wake_lock 
+2b77 247a0000 nrtn blank 
+2b78 6800c040 fetch 1 ,mem_context 
+2b79 2fe00e03 compare 3 ,pdata ,0x7 
+2b7a 2420ab9d nbranch lpm_dispatch_unconn ,true 
+2b7b 68014042 fetch 2 ,mem_context + coffset_tsniff 
+2b7c 207a0000 rtn blank 
+2b7d 20758000 rtn wake 
+2b7e 44d44015 bpatch patch15_0 ,mem_patch15 
+
+lpm_dispatch_next2:
+2b7f 680880a0 fetcht 1 ,mem_lpm_current_mult 
+2b80 68014042 fetch 2 ,mem_context + coffset_tsniff 
+2b81 984ffe00 imul32 temp ,pdata 
+2b82 18518400 rshift4 temp ,temp 
+2b83 184b0400 rshift2 temp ,temp 
+2b84 98467e00 isub temp ,pdata 
+2b85 680a4044 fetcht 4 ,mem_context + coffset_sniff_anchor 
+2b86 9840fe00 iadd temp ,pdata 
+2b87 6808c156 fetcht 1 ,mem_lpm_overhead 
+2b88 98467e00 isub temp ,pdata 
+2b89 1ff06000 lshift16 pdata ,alarm 
+2b8a 44d4c015 bpatch patch15_1 ,mem_patch15 
+2b8b 6801404e fetch 2 ,mem_context + coffset_rx_window 
+2b8c 1fe37e00 rshift pdata ,pdata 
+2b8d 20407f50 call clk2bt 
+2b8e 1e027e00 deposit alarm 
+2b8f 20407f39 call clk_diff 
+2b90 1b420400 copy clke ,temp 
+2b91 20407f37 call clk_diff_rt 
+2b92 20740000 rtn user 
+
+lpm_dispatch_sleep:
+2b93 20407f49 call clk2lpo 
+
+lpm_dispatch_lpo:
+2b94 44d54015 bpatch patch15_2 ,mem_patch15 
+2b95 6800c178 fetch 1 ,mem_lpm_xtalcnt 
+2b96 98467c00 isub temp ,null 
+2b97 20212b18 branch lpm_clear_counter ,positive 
+2b98 600a415b storet 4 ,mem_sleep_counter 
+2b99 20403328 call app_will_enter_lpm 
+2b9a 204052fb call l2cap_lpm_save_txbuf 
+2b9b 680a415b fetcht 4 ,mem_sleep_counter 
+2b9c 20202b2a branch lpm_sleep 
+
+lpm_dispatch_unconn:
+2b9d 44d5c015 bpatch patch15_3 ,mem_patch15 
+2b9e 6800c040 fetch 1 ,mem_context 
+2b9f c3800000 rtnbit1 state_inconn 
+2ba0 c3818000 rtnbit1 state_inpage 
+2ba1 6800c65a fetch 1 ,mem_ssp_enable 
+2ba2 203a2ba5 branch lpm_unconn_nossp ,blank 
+2ba3 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+2ba4 207a0000 rtn blank 
+
+lpm_unconn_nossp:
+2ba5 44d64015 bpatch patch15_4 ,mem_patch15 
+2ba6 6800c36e fetch 1 ,mem_le_adv_enable 
+2ba7 243a2baa nbranch lpm_unconn_cont ,blank 
+2ba8 6800c093 fetch 1 ,mem_scan_mode 
+2ba9 207a0000 rtn blank 
+
+lpm_unconn_cont:
+2baa 68014154 fetch 2 ,mem_lpm_interval 
+2bab 207a0000 rtn blank 
+
+lpm_sleep_btclk:
+2bac 6808c156 fetcht 1 ,mem_lpm_overhead 
+2bad 98467e00 isub temp ,pdata 
+2bae d8401d4c arg 7500 ,temp 
+2baf 984ffe00 imul32 temp ,pdata 
+2bb0 20202b93 branch lpm_dispatch_sleep 
+
+lpm_set_mult:
+2bb1 44d6c015 bpatch patch15_5 ,mem_patch15 
+2bb2 7855fc00 disable wake 
+2bb3 68008030 fetch 1 ,mem_state 
+2bb4 c4008000 rtnbit0 state_insniff 
+2bb5 2436abd0 nbranch lpm_not_match ,match 
+2bb6 20402bcb call lpm_match 
+2bb7 680140c1 fetch 2 ,mem_rx_window_sniff 
+2bb8 6001003e store 2 ,mem_rx_window 
+2bb9 68008047 fetch 1 ,mem_arq 
+2bba c281abde bbit1 wack ,lpm_mult_short 
+2bbb c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+2bbc 20405274 call l2cap_malloc_is_fifo_empty 
+2bbd 243a2bde nbranch lpm_mult_short ,blank 
+2bbe 6800c55c fetch 1 ,mem_classic_bt_flag 
+2bbf c280abde bbit1 short_mult_flag ,lpm_mult_short 
+
+lpm_mult_wait_timeout:
+2bc0 7000a000 jam 0 ,mem_lpm_current_mult 
+2bc1 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+2bc2 6800c174 fetch 1 ,mem_lpm_mult_cnt 
+2bc3 203a2be2 branch lpm_mult_long ,blank 
+2bc4 1fe0ffff increase -1 ,pdata 
+2bc5 6000c174 store 1 ,mem_lpm_mult_cnt 
+2bc6 20600000 rtn 
+
+classic_bt_set_mult_short_flag:
+2bc7 d8e00001 arg short_mult_flag ,queue 
+2bc8 202060cd branch classic_bluetooth_set_flag 
+
+classic_bt_clr_mult_short_flag:
+2bc9 d8e00001 arg short_mult_flag ,queue 
+2bca 202060d1 branch classic_bluetooth_clr_flag 
+
+lpm_match:
+2bcb 70415900 jam 0 ,mem_sniff_unint_lost 
+2bcc 6801c169 fetch 3 ,mem_sniff_rcv 
+2bcd 1fe0fe01 increase 1 ,pdata 
+2bce 6001c169 store 3 ,mem_sniff_rcv 
+2bcf 20600000 rtn 
+
+lpm_not_match:
+2bd0 44d74015 bpatch patch15_6 ,mem_patch15 
+2bd1 680940c1 fetcht 2 ,mem_rx_window_sniff 
+2bd2 18430400 rshift temp ,temp 
+2bd3 6801003e fetch 2 ,mem_rx_window 
+2bd4 9840fe00 iadd temp ,pdata 
+2bd5 6001003e store 2 ,mem_rx_window 
+
+lpm_lost:
+2bd6 7000a000 jam 0 ,mem_lpm_current_mult 
+2bd7 6801c16c fetch 3 ,mem_sniff_lost 
+2bd8 1fe0fe01 increase 1 ,pdata 
+2bd9 6001c16c store 3 ,mem_sniff_lost 
+2bda 6800c159 fetch 1 ,mem_sniff_unint_lost 
+2bdb 1fe0fe01 increase 1 ,pdata 
+2bdc 6000c159 store 1 ,mem_sniff_unint_lost 
+2bdd 20600000 rtn 
+
+lpm_mult_short:
+2bde 7000a000 jam 0 ,mem_lpm_current_mult 
+2bdf 6800c173 fetch 1 ,mem_lpm_mult_timeout 
+2be0 6000c174 store 1 ,mem_lpm_mult_cnt 
+2be1 20600000 rtn 
+
+lpm_mult_long:
+2be2 6808c172 fetcht 1 ,mem_lpm_mult 
+2be3 600880a0 storet 1 ,mem_lpm_current_mult 
+2be4 20600000 rtn 
+
+lpm_cal_xtal_startup:
+2be5 44d7c015 bpatch patch15_7 ,mem_patch15 
+2be6 6800c178 fetch 1 ,mem_lpm_xtalcnt 
+2be7 247a0000 nrtn blank 
+2be8 70804206 jam clksel_rc ,core_clksel 
+2be9 58000f0c setarg 0xf0c 
+2bea 20402c18 call lpm_write_config 
+2beb 58030d40 setarg 200000 
+2bec 20402a8f call sleep 
+2bed 37d98200 until null ,lpo_edge 
+2bee 1e226000 copy lpo_time ,alarm 
+2bef 204029e7 call xtal_fast_wake 
+2bf0 70804204 jam clksel_xtal ,core_clksel 
+2bf1 2000000a nop 10 
+2bf2 37d98200 until null ,lpo_edge 
+2bf3 1e227e00 deposit lpo_time 
+2bf4 9e067e00 isub alarm ,pdata 
+2bf5 1fe0fe30 increase 0x30 ,pdata 
+2bf6 d84000ff arg 0xff ,temp 
+2bf7 20407f91 call ceiling 
+2bf8 6000c178 store 1 ,mem_lpm_xtalcnt 
+2bf9 20007530 nop 30000 
+2bfa 20007530 nop 30000 
+2bfb 20007530 nop 30000 
+2bfc 20600000 rtn 
+
+lpm_cal_xtal_startup_by_snooze:
+2bfd 6800c178 fetch 1 ,mem_lpm_xtalcnt 
+2bfe 247a0000 nrtn blank 
+2bff 708044ff jam 0xff ,core_xtal_stable_time 
+2c00 70804206 jam clksel_rc ,core_clksel 
+2c01 204029e7 call xtal_fast_wake 
+2c02 580003e8 setarg 1000 
+2c03 9e20e000 iadd lpo_time ,alarm 
+2c04 07e00000 snooze 
+2c05 1e227e00 deposit lpo_time 
+2c06 20002ee0 nop 12000 
+2c07 20002ee0 nop 12000 
+2c08 20002ee0 nop 12000 
+2c09 20002ee0 nop 12000 
+2c0a 20002ee0 nop 12000 
+2c0b 20002ee0 nop 12000 
+2c0c 20002ee0 nop 12000 
+2c0d 20002ee0 nop 12000 
+2c0e 20002ee0 nop 12000 
+2c0f 9e067e00 isub alarm ,pdata 
+2c10 1fe0fe30 add pdata ,0x30 ,pdata 
+2c11 d84000ff arg 0xff ,temp 
+2c12 20407f91 call ceiling 
+2c13 6000c178 store 1 ,mem_lpm_xtalcnt 
+2c14 20007530 nop 30000 
+2c15 20007530 nop 30000 
+2c16 20007530 nop 30000 
+2c17 20600000 rtn 
+
+lpm_write_config:
+2c18 d8a00fff arg 0xfff ,contw 
+2c19 98a10a00 iand contw ,contw 
+2c1a 6800c175 fetch 1 ,mem_lpm_config 
+2c1b 1fe17ef0 and_into 0xf0 ,pdata 
+2c1c 1fed7e00 lshift8 pdata ,pdata 
+2c1d 98a1fe00 ior contw ,pdata 
+2c1e 6011004c hstore 2 ,core_lpm_reg 
+2c1f e8c10000 ifetch 2 ,contr 
+2c20 e0a10000 istore 2 ,contw 
+
+lpm_write_ctrl:
+2c21 58000001 setarg lpmreg_sel_ctrl 
+2c22 20202c24 branch lpm_write 
+
+lpm_write_ctrl2:
+2c23 58000002 setarg lpmreg_sel_ctrl2 
+
+lpm_write:
+2c24 37d98200 until null ,lpo_edge 
+2c25 60108005 hstore 1 ,core_lpm_wr 
+2c26 37d98200 until null ,lpo_edge 
+2c27 37d98200 until null ,lpo_edge 
+2c28 20600000 rtn 
+
+lpm_write_gpio_wakeup:
+2c29 44d84016 bpatch patch16_0 ,mem_patch16 
+2c2a 680200a1 fetch 4 ,mem_gpio_wakeup_low 
+2c2b 6012004c hstore 4 ,core_lpm_reg 
+2c2c 58000004 setarg lpmreg_sel_gpiolow 
+2c2d 20402c24 call lpm_write 
+2c2e 680200a5 fetch 4 ,mem_gpio_wakeup_high 
+2c2f 6012004c hstore 4 ,core_lpm_reg 
+2c30 58000008 setarg lpmreg_sel_gpiohigh 
+2c31 20202c24 branch lpm_write 
+
+lpm_get_wake_lock:
+2c32 68014152 fetch 2 ,mem_lpm_wake_lock 
+2c33 f9207e00 qset1 pdata 
+2c34 60014152 store 2 ,mem_lpm_wake_lock 
+2c35 20600000 rtn 
+
+lpm_put_wake_lock:
+2c36 68014152 fetch 2 ,mem_lpm_wake_lock 
+2c37 f93ffe00 qset0 pdata 
+2c38 60014152 store 2 ,mem_lpm_wake_lock 
+2c39 20600000 rtn 
+
+lpm_check_wake_lock:
+2c3a 44d8c016 bpatch patch16_1 ,mem_patch16 
+2c3b 20403326 call app_check_wake_lock 
+2c3c 68014152 fetch 2 ,mem_lpm_wake_lock 
+2c3d 1fe22200 copy pdata ,rega 
+2c3e 6800804c fetch 1 ,mem_state_map 
+2c3f 2feffe06 isolate1 smap_rxlmp ,pdata 
+2c40 7920a20b setflag true ,wake_lock_lmp_rx ,rega 
+2c41 68008078 fetch 1 ,mem_lmo_opcode1 
+2c42 6808807c fetcht 1 ,mem_lmo_opcode2 
+2c43 9840fe00 iadd temp ,pdata 
+2c44 68088048 fetcht 1 ,mem_lmp_to_send 
+2c45 9840fe00 iadd temp ,pdata 
+2c46 7d3a220a nsetflag blank ,wake_lock_lmp_tx ,rega 
+2c47 6800c4ff fetch 1 ,mem_le_tx_buff_used 
+2c48 7d3a2201 nsetflag blank ,wake_lock_ble_tx ,rega 
+2c49 6801025d fetch 2 ,mem_l2cap_rxbuff1_len 
+2c4a 6809025f fetcht 2 ,mem_l2cap_rxbuff2_len 
+2c4b 9840fe00 iadd temp ,pdata 
+2c4c 7d3a220d nsetflag blank ,wake_lock_l2cap_rx ,rega 
+2c4d 68044668 fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
+2c4e 7d3a220f nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
+2c4f 68044670 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
+2c50 7d3a220e nsetflag blank ,wake_lock_ipc_c512bt ,rega 
+2c51 6800c1ce fetch 1 ,mem_hci_cmd 
+2c52 7d3a2208 nsetflag blank ,wake_lock_cmd ,rega 
+2c53 6800c092 fetch 1 ,mem_device_option 
+2c54 2fe1fe0a compare dvc_op_module ,pdata ,0xff 
+2c55 2040ac5b call lpm_uart_wake_lock ,true 
+2c56 5ffffff8 setarg -8 
+2c57 9a212200 iand rega ,rega 
+2c58 1a227e00 copy rega ,pdata 
+2c59 60014152 store 2 ,mem_lpm_wake_lock 
+2c5a 20600000 rtn 
+
+lpm_uart_wake_lock:
+2c5b 68110112 hfetch 2 ,core_uart_rxitems 
+2c5c 7d3a2206 nsetflag blank ,wake_lock_uart_rx ,rega 
+2c5d 6811010e hfetch 2 ,core_uart_txitems 
+2c5e 7d3a2205 nsetflag blank ,wake_lock_uart_tx ,rega 
+2c5f 20600000 rtn 
+
+lpm_shut_down:
+2c60 68120138 hfetch 4 ,core_lpm_ctrl 
+2c61 793ffe1b set0 27 ,pdata 
+2c62 6012004c hstore 4 ,core_lpm_reg 
+2c63 20402c21 call lpm_write_ctrl 
+2c64 20202a8c branch assert 
+
+lpm_disable_exen_output:
+2c65 6812013c hfetch 4 ,core_lpm_xtalcnt 
+2c66 793ffe14 set0 20 ,pdata 
+2c67 6012004c hstore 4 ,core_lpm_reg 
+2c68 20202c23 branch lpm_write_ctrl2 
+
+check_bt_disabled:
+2c69 68014150 fetch 2 ,mem_chip_functions 
+2c6a c2802a8c bbit1 bt_disabled ,assert 
+2c6b 20600000 rtn 
+
+check_ble_disabled:
+2c6c 68014150 fetch 2 ,mem_chip_functions 
+2c6d c280aa8c bbit1 ble_disabled ,assert 
+2c6e 20600000 rtn 
+
+check_module_disabled:
+2c6f 68014150 fetch 2 ,mem_chip_functions 
+2c70 c2812a8c bbit1 module_disable ,assert 
+2c71 20600000 rtn 
+
+g24_dispatch:
+2c72 44d94016 bpatch patch16_2 ,mem_patch16 
+2c73 20402c7a call g24_head_ptr2regc 
+2c74 1a60a4cd add regc ,offset_24g_mode ,regb 
+2c75 ea408000 ifetch 1 ,regb 
+2c76 c1000000 rtneq disable_24g 
+2c77 c000ad06 beq tx_24g ,g24_transmit_process 
+2c78 c0012c7f beq rx_24g ,g24_receive_process 
+2c79 20600000 rtn 
+
+g24_head_ptr2regc:
+2c7a 68094241 fetcht 2 ,mem_24g_head_ptr 
+2c7b 18422600 copy temp ,regc 
+2c7c 20600000 rtn 
+
+g24_receive_process_init:
+2c7d 20402f3d call g24_receive_init 
+2c7e 2020307d branch g24_mode_switch_init 
+
+g24_receive_process:
+2c7f 20403084 call g24_mode_switch 
+2c80 2040305a call g24_dongle_work_mode_auto 
+2c81 2040305e call g24_dongle_bind_mode_auto 
+2c82 202030a2 branch g24_dongle_search_mode_auto 
+
+g24_pair_init:
+2c83 20403231 call g24_set0_mem_pid 
+2c84 5800004e setarg g24_pair_ch 
+2c85 2040322f call g24_store_mem_ch 
+2c86 204032ba call g24_store_mem_pair_txpower 
+2c87 1a60a292 add regc ,offset_24g_paring_addr ,rega 
+2c88 ea220000 ifetch 4 ,rega 
+2c89 2020322c branch g24_store_mem_addr 
+
+g24_ch:
+2c8a 20402c7a call g24_head_ptr2regc 
+2c8b 1a60a491 add regc ,offset_24g_current_ch_number ,regb 
+2c8c ea488000 ifetcht 1 ,regb 
+2c8d 20402c90 call g24_ch_temp_incre_size4 
+2c8e 1a608a91 add regc ,offset_24g_current_ch_number ,contw 
+2c8f 20202e56 branch g24_contw_istoret_1byte 
+
+g24_ch_temp_incre_size4:
+2c90 20402c94 call g24_ch_calc 
+2c91 18408401 increase 1 ,temp 
+2c92 18410403 and_into 3 ,temp 
+2c93 20600000 rtn 
+
+g24_ch_calc:
+2c94 1a60a4ae add regc ,offset_24g_addr ,regb 
+2c95 ea408000 ifetch 1 ,regb 
+2c96 1fe17e03 and_into 0x03 ,pdata 
+2c97 1fefa204 mul32 pdata ,4 ,rega 
+2c98 1a60fe97 add regc ,offset_24g_ch_map1 ,pdata 
+2c99 9a20fe00 iadd rega ,pdata 
+2c9a 98408c00 iadd temp ,contr 
+2c9b e8c08000 ifetch 1 ,contr 
+2c9c 2020322f branch g24_store_mem_ch 
+
+g24_set_device_addr:
+2c9d 2040326c call g24_store_mem_tx_power_temp 
+2c9e 2040666a call otp_enable_chgpump 
+2c9f 580007e2 setarg 0x7e2 
+2ca0 da200aa2 arg mem_temp ,rega 
+2ca1 d8400004 arg 4 ,temp 
+2ca2 204066b3 call otpd_read_data 
+2ca3 2040666d call otp_disable_chgpump 
+2ca4 68020aa2 fetch 4 ,mem_temp 
+2ca5 20403227 call g24_store_mem_device_addr 
+2ca6 247a0000 nrtn blank 
+2ca7 680240a0 fetch 4 ,mem_lap 
+2ca8 20203227 branch g24_store_mem_device_addr 
+
+g24_transmit_rf_sta_init:
+2ca9 20403241 call g24_set1_mem_rf_last_sta 
+2caa 58000000 setarg 0 
+2cab 2040323f call g24_store_mem_sync_cnt 
+
+g24_transmit_rf_ctrl_clear:
+2cac 2040323a call g24_fetch_mem_data_type 
+2cad 1fe17e07 and_into bits_data ,pdata 
+2cae 2020323c branch g24_store_mem_data_type 
+
+g24_hop_ch_enable:
+2caf 2040323a call g24_fetch_mem_data_type 
+2cb0 79207e04 set1 bit_hop ,pdata 
+2cb1 2040323c call g24_store_mem_data_type 
+2cb2 20203235 branch g24_store_mem_txpayload 
+
+g24_transmit_hop_pac_fail:
+2cb3 2040325d call g24_fetch_mem_rf_work_stage 
+2cb4 c000acb7 beq 1 ,g24_transmit_hop_pac_fail_wo_hop 
+2cb5 c0012cbc beq 2 ,g24_transmit_hop_pac_fail_hop_stage2 
+2cb6 20600000 rtn 
+
+g24_transmit_hop_pac_fail_wo_hop:
+2cb7 2040323e call g24_set2_mem_sync_cnt 
+
+g24_transmit_hop_pac_fail_stage1:
+2cb8 1a608ad1 add regc ,offset_24g_hop_pac_retry ,contw 
+2cb9 204032d6 call g24_mem_set0 
+2cba 20403242 call g24_store_mem_rf_last_sta 
+2cbb 20202cac branch g24_transmit_rf_ctrl_clear 
+
+g24_transmit_hop_pac_fail_hop_stage2:
+2cbc 2040325a call g24_set0_mem_rf_hop_ch 
+2cbd 20202cb8 branch g24_transmit_hop_pac_fail_stage1 
+
+g24_transmit_pac_fail_hop_stage3:
+2cbe 1a60a28c add regc ,offset_24g_txfail_cnt ,rega 
+2cbf ea208000 ifetch 1 ,rega 
+2cc0 1fe0fe01 increase 1 ,pdata 
+2cc1 1a608a8c add regc ,offset_24g_txfail_cnt ,contw 
+2cc2 e0a08000 istore 1 ,contw 
+2cc3 c0102dd2 beq 0x20 ,g24_tx_attempt_fail 
+2cc4 20403258 call g24_fetch_mem_rf_hop_ch 
+2cc5 c000acca beq 1 ,g24_rf_hop_fastly 
+2cc6 58000001 setarg 1 
+2cc7 2040325b call g24_store_mem_rf_hop_ch 
+
+g24_rf_hop_attemp_again:
+2cc8 20403258 call g24_fetch_mem_rf_hop_ch 
+2cc9 c080acac bne 1 ,g24_transmit_rf_ctrl_clear 
+
+g24_rf_hop_fastly:
+2cca 1a60a2d3 add regc ,offset_24g_hop_fastly_cnt ,rega 
+2ccb ea208000 ifetch 1 ,rega 
+2ccc 1fe0fe01 increase 1 ,pdata 
+2ccd 20402cd5 call g24_store_mem_hop_fastly_cnt 
+2cce c0022cd2 beq 4 ,g24_rf_hop_fastly_exit 
+2ccf 20402c8a call g24_ch 
+2cd0 20402d04 call g24_set2_mem_max_retry 
+2cd1 20202d8f branch g24_transmit_packet 
+
+g24_rf_hop_fastly_exit:
+2cd2 20402cd4 call g24_set0_mem_hop_fastly_cnt 
+2cd3 20202cac branch g24_transmit_rf_ctrl_clear 
+
+g24_set0_mem_hop_fastly_cnt:
+2cd4 58000000 setarg 0 
+
+g24_store_mem_hop_fastly_cnt:
+2cd5 1a608ad3 add regc ,offset_24g_hop_fastly_cnt ,contw 
+2cd6 202032b4 branch g24_contw_istore_1byte 
+
+g24_transmit_hop_pac_succ_wo_hop:
+2cd7 2040323e call g24_set2_mem_sync_cnt 
+
+g24_transmit_hop_pac_succ:
+2cd8 2040325a call g24_set0_mem_rf_hop_ch 
+2cd9 20403241 call g24_set1_mem_rf_last_sta 
+2cda 20202cac branch g24_transmit_rf_ctrl_clear 
+
+g24_transmit_succ_rf_config:
+2cdb 2040325d call g24_fetch_mem_rf_work_stage 
+2cdc c001acd8 beq 3 ,g24_transmit_hop_pac_succ 
+2cdd 2040323a call g24_fetch_mem_data_type 
+2cde 2fec0004 isolate0 bit_hop ,pdata 
+2cdf 2020aca9 branch g24_transmit_rf_sta_init ,true 
+2ce0 2040325d call g24_fetch_mem_rf_work_stage 
+2ce1 c000acd7 beq 1 ,g24_transmit_hop_pac_succ_wo_hop 
+2ce2 c0012cd8 beq 2 ,g24_transmit_hop_pac_succ 
+2ce3 20600000 rtn 
+
+g24_rf_sta_check:
+2ce4 20403253 call g24_fetch_mem_pairing_sm 
+2ce5 c1ff8000 rtnne state_24g_pairing_success 
+2ce6 20402ce9 call g24_rf_laststa_synccnt_check 
+2ce7 24562cf4 ncall g24_rf_sync_cnt_check ,user2 
+2ce8 20600000 rtn 
+
+g24_rf_laststa_synccnt_check:
+2ce9 78567c00 disable user2 
+2cea 1a60a2ce add regc ,offset_24g_rf_last_sta ,rega 
+2ceb ea208000 ifetch 1 ,rega 
+2cec c1808000 rtnne 1 
+2ced 1a60a2d0 add regc ,offset_24g_sync_cnt ,rega 
+2cee ea208000 ifetch 1 ,rega 
+2cef c1800000 rtnne 0 
+2cf0 58000001 setarg 1 
+2cf1 20402cfd call g24_store_mem_rf_work_stage 
+2cf2 20403237 call g24_set4_mem_max_retry 
+2cf3 20207feb branch enable_user2 
+
+g24_rf_sync_cnt_check:
+2cf4 1a60a2d0 add regc ,offset_24g_sync_cnt ,rega 
+2cf5 ea208000 ifetch 1 ,rega 
+2cf6 203a2cff branch g24_rf_hop_attemp ,blank 
+2cf7 1fe0ffff increase -1 ,pdata 
+2cf8 2040323f call g24_store_mem_sync_cnt 
+2cf9 58000002 setarg 2 
+2cfa 20402cfd call g24_store_mem_rf_work_stage 
+2cfb 20402c8a call g24_ch 
+2cfc 20203237 branch g24_set4_mem_max_retry 
+
+g24_store_mem_rf_work_stage:
+2cfd 1a608ad2 add regc ,offset_24g_rf_work_stage ,contw 
+2cfe 202032b4 branch g24_contw_istore_1byte 
+
+g24_rf_hop_attemp:
+2cff 58000003 setarg 3 
+2d00 20402cfd call g24_store_mem_rf_work_stage 
+2d01 20403258 call g24_fetch_mem_rf_hop_ch 
+2d02 243a2cc8 nbranch g24_rf_hop_attemp_again ,blank 
+2d03 20402c8a call g24_ch 
+
+g24_set2_mem_max_retry:
+2d04 58000002 setarg 2 
+2d05 20203238 branch g24_store_mem_max_retry 
+
+g24_transmit_process:
+2d06 c6930000 rtnmark0 mark_24g 
+2d07 79200027 set1 mark_24g_conext ,mark 
+2d08 44d9c016 bpatch patch16_3 ,mem_patch16 
+2d09 1a60a28e add regc ,offset_24g_tx_without_int ,rega 
+2d0a ea208000 ifetch 1 ,rega 
+2d0b c000ad0f beq 1 ,g24_transmit_without_int 
+2d0c 2040306a call g24_timer_check 
+2d0d 24342d16 nbranch g24_transmit_exit ,user 
+2d0e 20402d1b call g24_interval_calibrate 
+
+g24_transmit_without_int:
+2d0f 1a608a8e add regc ,offset_24g_tx_without_int ,contw 
+2d10 204032d6 call g24_mem_set0 
+2d11 20402d2c call g24_txdata_prep 
+2d12 24342d7d nbranch g24_enter_lpm ,user 
+2d13 20402ce4 call g24_rf_sta_check 
+
+g24_transmit_start:
+2d14 20402d8f call g24_transmit_packet 
+2d15 20402e7a call g24_power_ctrl 
+
+g24_transmit_exit:
+2d16 793f8027 set0 mark_24g_conext ,mark 
+2d17 20600000 rtn 
+
+g24_timer_timeout:
+2d18 20628000 rtn zero 
+2d19 79207e1c set1 28 ,pdata 
+2d1a 20600000 rtn 
+
+g24_interval_calibrate:
+2d1b 1a60a2c2 add regc ,offset_24g_pac_index ,rega 
+2d1c ea208000 ifetch 1 ,rega 
+2d1d 1fe0fe01 increase 1 ,pdata 
+2d1e 1a608ac2 add regc ,offset_24g_pac_index ,contw 
+2d1f e0a08000 istore 1 ,contw 
+2d20 c0022d23 beq 4 ,g24_interval_max 
+2d21 c002ad27 beq 5 ,g24_interval_min 
+2d22 20600000 rtn 
+
+g24_interval_max:
+2d23 1a60a2ad add regc ,offset_24g_interval_max ,rega 
+2d24 ea208000 ifetch 1 ,rega 
+
+g24_interval_update:
+2d25 1a608aab add regc ,offset_24g_interval ,contw 
+2d26 202032b4 branch g24_contw_istore_1byte 
+
+g24_interval_min:
+2d27 1a608ac2 add regc ,offset_24g_pac_index ,contw 
+2d28 204032d6 call g24_mem_set0 
+2d29 1a60a2ac add regc ,offset_24g_interval_min ,rega 
+2d2a ea208000 ifetch 1 ,rega 
+2d2b 20202d25 branch g24_interval_update 
+
+g24_txdata_prep:
+2d2c 20403253 call g24_fetch_mem_pairing_sm 
+2d2d c0ffaeb1 bne state_24g_pairing_success ,g24_pairing_sm 
+2d2e 44da4016 bpatch patch16_4 ,mem_patch16 
+2d2f 20402d3a call g24_package_data 
+2d30 24342d36 nbranch g24_txdata_last_pac ,user 
+2d31 20402d53 call g24_transmit_prep 
+2d32 20402e71 call g24_power_ctrl_pac_incrs 
+
+g24_txdata_enable_tx:
+2d33 58000001 setarg ensure_on_24g 
+
+g24_store_mem_ensure:
+2d34 1a608a8b add regc ,offset_24g_ensure ,contw 
+2d35 202032b4 branch g24_contw_istore_1byte 
+
+g24_txdata_last_pac:
+2d36 1a60a28b add regc ,offset_24g_ensure ,rega 
+2d37 ea208000 ifetch 1 ,rega 
+2d38 c000ffe7 beq ensure_on_24g ,enable_user 
+2d39 20600000 rtn 
+
+g24_package_data:
+2d3a 1a6084d8 add regc ,offset_24g_cb_data ,temp 
+2d3b e8410000 ifetch 2 ,temp 
+2d3c 20407f9c call callback_func 
+2d3d 24740000 nrtn user 
+2d3e 1a227e00 copy rega ,pdata 
+2d3f 60008aae store 1 ,mem_rega 
+2d40 1a608ab2 add regc ,offset_24g_abort_pac ,contw 
+2d41 204032d6 call g24_mem_set0 
+2d42 20402cac call g24_transmit_rf_ctrl_clear 
+2d43 6000919e store 1 ,mem_24g_common_temp 
+2d44 68008aae fetch 1 ,mem_rega 
+2d45 1fe22200 copy pdata ,rega 
+2d46 1a208401 add rega ,1 ,temp 
+2d47 d8a0119f arg mem_24g_common_temp + 1 ,contw 
+2d48 1a227200 copy rega ,loopcnt 
+2d49 1a420c00 copy regb ,contr 
+2d4a 20407f01 call memcpy 
+2d4b da20119e arg mem_24g_common_temp ,rega 
+
+g24_put_data_in_buff:
+2d4c c6938000 rtnmark0 mark_24g_conext 
+2d4d 1a608a86 add regc ,offset_24g_datalen ,contw 
+2d4e e0a88000 istoret 1 ,contw 
+2d4f 18427200 copy temp ,loopcnt 
+2d50 1a608a22 add regc ,offset_24g_txbuf ,contw 
+2d51 1a220c00 copy rega ,contr 
+2d52 20207f01 branch memcpy 
+
+g24_transmit_prep:
+2d53 1a60a286 add regc ,offset_24g_datalen ,rega 
+2d54 ea208000 ifetch 1 ,rega 
+2d55 1fe0fe02 increase 2 ,pdata 
+2d56 1a608a88 add regc ,offset_24g_txlen ,contw 
+2d57 e0a08000 istore 1 ,contw 
+2d58 2040323a call g24_fetch_mem_data_type 
+2d59 20403235 call g24_store_mem_txpayload 
+2d5a 1a60a286 add regc ,offset_24g_datalen ,rega 
+2d5b ea208000 ifetch 1 ,rega 
+2d5c 1fe9fe00 lshift3 pdata ,pdata 
+2d5d 1a60a285 add regc ,offset_24g_pid ,rega 
+2d5e ea288000 ifetcht 1 ,rega 
+2d5f 18410403 and temp ,0x03 ,temp 
+2d60 18438400 lshift temp ,temp 
+2d61 9841fe00 ior temp ,pdata 
+2d62 1a60a2c3 add regc ,offset_24g_no_ack ,rega 
+2d63 ea288000 ifetcht 1 ,rega 
+2d64 9840fe00 iadd temp ,pdata 
+2d65 e0a08000 istore 1 ,contw 
+2d66 1a60a286 add regc ,offset_24g_datalen ,rega 
+2d67 ea208000 ifetch 1 ,rega 
+2d68 98007200 iforce loopcnt 
+2d69 1a608c22 add regc ,offset_24g_txbuf ,contr 
+2d6a 20207f01 branch memcpy 
+
+g24_send_abort_packet:
+2d6b 2040324f call g24_set1_mem_abort_pac 
+2d6c 2040325a call g24_set0_mem_rf_hop_ch 
+2d6d 20402e6d call g24_power_ctrl_reinit 
+2d6e 20402cac call g24_transmit_rf_ctrl_clear 
+2d6f 6000919e store 1 ,mem_24g_common_temp 
+2d70 20402d77 call g24_put_data_in_buff_pre 
+2d71 2040323a call g24_fetch_mem_data_type 
+2d72 79207e03 set1 bit_abort ,pdata 
+2d73 2040323c call g24_store_mem_data_type 
+2d74 20402d53 call g24_transmit_prep 
+2d75 20402d33 call g24_txdata_enable_tx 
+2d76 20202d14 branch g24_transmit_start 
+
+g24_put_data_in_buff_pre:
+2d77 6000919f store 1 ,mem_24g_common_temp + 1 
+2d78 20403224 call g24_fetch_mem_device_addr 
+2d79 600211a0 store 4 ,mem_24g_common_temp + 2 
+2d7a d8400006 arg 6 ,temp 
+2d7b da20119e arg mem_24g_common_temp ,rega 
+2d7c 20202d4c branch g24_put_data_in_buff 
+
+g24_enter_lpm:
+2d7d 1a60a2b2 add regc ,offset_24g_abort_pac ,rega 
+2d7e ea208000 ifetch 1 ,rega 
+2d7f 203a2d6b branch g24_send_abort_packet ,blank 
+
+g24_enter_lpm_prepare:
+2d80 1a60a2da add regc ,offset_24g_cb_lpm_prepare ,rega 
+2d81 ea210000 ifetch 2 ,rega 
+2d82 20207f9c branch callback_func 
+
+g24_lpm_long_sleep:
+2d83 20402c7a call g24_head_ptr2regc 
+2d84 20402afa call lpo_calibration 
+2d85 6801c16f fetch 3 ,mem_clks_per_lpo 
+2d86 207a0000 rtn blank 
+2d87 1a6084dc add regc ,offset_24g_cb_lpm_before ,temp 
+2d88 e8410000 ifetch 2 ,temp 
+2d89 20407f9c call callback_func 
+2d8a 1a6084b6 add regc ,offset_24g_enter_hibernate ,temp 
+2d8b e8440000 ifetch 8 ,temp 
+2d8c 20407f49 call clk2lpo 
+2d8d 600a415b storet 4 ,mem_sleep_counter 
+2d8e 20202b2a branch lpm_sleep 
+
+g24_transmit_packet:
+2d8f 20402c7a call g24_head_ptr2regc 
+2d90 1a608a8f add regc ,offset_24g_retry ,contw 
+2d91 204032d6 call g24_mem_set0 
+
+g24_transmit_loop:
+2d92 20402da4 call g24_transmit_receive_ack 
+2d93 242c2dae nbranch g24_retransmit ,sync 
+2d94 2437adae nbranch g24_retransmit ,user3 
+2d95 20402dd6 call g24_ackpayload_parse 
+2d96 20402e75 call g24_power_ctrl_ack_incrs 
+
+g24_transmit_next_packet:
+2d97 20402c7a call g24_head_ptr2regc 
+2d98 1a60a285 add regc ,offset_24g_pid ,rega 
+2d99 ea208000 ifetch 1 ,rega 
+2d9a 1fe0fe01 increase 1 ,pdata 
+2d9b 20403232 call g24_store_mem_pid 
+2d9c 20403253 call g24_fetch_mem_pairing_sm 
+2d9d c0ffaed0 bne state_24g_pairing_success ,g24_paring_mode 
+2d9e 20402cdb call g24_transmit_succ_rf_config 
+
+g24_transmit_abandon:
+2d9f 58000000 setarg 0 
+2da0 1a608a8c add regc ,offset_24g_txfail_cnt ,contw 
+2da1 e0a10000 istore 2 ,contw 
+2da2 58000000 setarg ensure_off_24g 
+2da3 20202d34 branch g24_store_mem_ensure 
+
+g24_transmit_receive_ack:
+2da4 7857fc00 disable user3 
+2da5 20402df7 call g24_transmit 
+2da6 20402c7a call g24_head_ptr2regc 
+2da7 1a60a2c3 add regc ,offset_24g_no_ack ,rega 
+2da8 ea208000 ifetch 1 ,rega 
+2da9 c000adac beq no_ack_24g ,g24_transmit_no_ack 
+2daa 20402e11 call g24_receive_packet 
+2dab 20202e45 branch g24_end_of_packet 
+
+g24_transmit_no_ack:
+2dac 20402e45 call g24_end_of_packet 
+2dad 20202d97 branch g24_transmit_next_packet 
+
+g24_retransmit:
+2dae 44dac016 bpatch patch16_5 ,mem_patch16 
+2daf 1a60a28d add regc ,offset_24g_get_ack_fail ,rega 
+2db0 ea208000 ifetch 1 ,rega 
+2db1 1fe0fe01 increase 1 ,pdata 
+2db2 1a608a8d add regc ,offset_24g_get_ack_fail ,contw 
+2db3 e0a08000 istore 1 ,contw 
+2db4 20403253 call g24_fetch_mem_pairing_sm 
+2db5 c0ffadcc bne state_24g_pairing_success ,g24_tx_paring_retry 
+2db6 1a60a28f add regc ,offset_24g_retry ,rega 
+2db7 ea288000 ifetcht 1 ,rega 
+2db8 18408401 increase 1 ,temp 
+2db9 1a608a8f add regc ,offset_24g_retry ,contw 
+2dba e0a88000 istoret 1 ,contw 
+2dbb 1a60a2cc add regc ,offset_24g_max_retry ,rega 
+2dbc ea208000 ifetch 1 ,rega 
+2dbd 98467e00 isub temp ,pdata 
+2dbe 243a2d92 nbranch g24_transmit_loop ,blank 
+2dbf 44db4016 bpatch patch16_6 ,mem_patch16 
+2dc0 2040325d call g24_fetch_mem_rf_work_stage 
+2dc1 c001acbe beq 3 ,g24_transmit_pac_fail_hop_stage3 
+2dc2 1a60a2d1 add regc ,offset_24g_hop_pac_retry ,rega 
+2dc3 ea208000 ifetch 1 ,rega 
+2dc4 1fe0fe01 increase 1 ,pdata 
+2dc5 1a608ad1 add regc ,offset_24g_hop_pac_retry ,contw 
+2dc6 e0a08000 istore 1 ,contw 
+2dc7 c0012cb3 beq 2 ,g24_transmit_hop_pac_fail 
+2dc8 20402caf call g24_hop_ch_enable 
+2dc9 58000001 setarg 1 
+2dca 20403238 call g24_store_mem_max_retry 
+2dcb 20202d8f branch g24_transmit_packet 
+
+g24_tx_paring_retry:
+2dcc 1a60a28d add regc ,offset_24g_get_ack_fail ,rega 
+2dcd ea208000 ifetch 1 ,rega 
+2dce c1ff8000 rtnne 0xff 
+2dcf 1a608a8d add regc ,offset_24g_get_ack_fail ,contw 
+2dd0 204032d6 call g24_mem_set0 
+2dd1 20202dd4 branch g24_stop_24g_mode 
+
+g24_tx_attempt_fail:
+2dd2 1a608a8c add regc ,offset_24g_txfail_cnt ,contw 
+2dd3 204032d6 call g24_mem_set0 
+
+g24_stop_24g_mode:
+2dd4 700a993a jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+2dd5 20207d86 branch ui_ipc_send_event 
+
+g24_ackpayload_parse:
+2dd6 20402dde call g24_read_len_pid_crc 
+2dd7 1a60a284 add regc ,offset_24g_rxdata_length ,rega 
+2dd8 ea208000 ifetch 1 ,rega 
+2dd9 207a0000 rtn blank 
+2dda 98007200 iforce loopcnt 
+2ddb 1a608c02 add regc ,offset_24g_rxbuf_add2 ,contr 
+2ddc 1a608a64 add regc ,offset_24g_rxpayload ,contw 
+2ddd 20207f01 branch memcpy 
+
+g24_read_len_pid_crc:
+2dde 2040325f call g24_fetch_mem_rxbuf_add1 
+2ddf 1fe97e00 rshift3 pdata ,pdata 
+2de0 1a608a84 add regc ,offset_24g_rxdata_length ,contw 
+2de1 e0a08000 istore 1 ,contw 
+2de2 1fe0fe01 increase 1 ,pdata 
+2de3 1a608c01 add regc ,offset_24g_rxbuf_add1 ,contr 
+2de4 98c08c00 iadd contr ,contr 
+2de5 e8c18000 ifetch 3 ,contr 
+2de6 1a608ac4 add regc ,offset_24g_sta_crc ,contw 
+2de7 e0a18000 istore 3 ,contw 
+2de8 2040325f call g24_fetch_mem_rxbuf_add1 
+2de9 1fe37e00 rshift pdata ,pdata 
+2dea 1fe17e03 and pdata ,0x03 ,pdata 
+2deb 1a608aca add regc ,offset_24g_sta_pid ,contw 
+2dec e0a08000 istore 1 ,contw 
+2ded 20600000 rtn 
+
+g24_prep:
+2dee 7844fc00 disable enable_crc 
+2def 7843fc00 disable enable_white 
+2df0 58555555 setarg 0x555555 
+2df1 98001e00 iforce crc24_init 
+2df2 20600000 rtn 
+
+g24_set_freq_tx:
+2df3 20402918 call set_sync_on 
+2df4 1a60a290 add regc ,offset_24g_ch ,rega 
+2df5 ea288000 ifetcht 1 ,rega 
+2df6 20202933 branch set_freq_tx 
+
+g24_transmit:
+2df7 20402dee call g24_prep 
+2df8 20402df3 call g24_set_freq_tx 
+2df9 79202a00 set1 txgfsk ,radio_ctrl 
+2dfa 782efc00 enable encode_fec0 
+2dfb 78307c00 enable is_tx 
+2dfc 7850fc00 disable is_rx 
+2dfd 204053c4 call le_enable 
+2dfe 2040322a call g24_fetch_mem_addr 
+2dff 98001200 iforce access 
+2e00 08008620 inject mod ,32 
+2e01 7824fc00 enable enable_crc 
+2e02 1a60a288 add regc ,offset_24g_txlen ,rega 
+2e03 ea208000 ifetch 1 ,rega 
+2e04 98007200 iforce loopcnt 
+2e05 1a608c42 add regc ,offset_24g_txpayload ,contr 
+
+g24tr_loop:
+2e06 e8c08000 ifetch 1 ,contr 
+2e07 08008608 inject mod ,8 
+2e08 c2002e06 loop g24tr_loop 
+2e09 78247c00 enable enable_parity 
+2e0a 08008618 inject mod ,24 
+2e0b 78447c00 disable enable_parity 
+2e0c 37d38200 until null ,tx_clear 
+2e0d 44dbc016 bpatch patch16_7 ,mem_patch16 
+2e0e 20000064 nop 100 
+2e0f 784efc00 disable encode_fec0 
+2e10 20600000 rtn 
+
+g24_receive_packet:
+2e11 7857fc00 disable user3 
+2e12 18002a00 force 0 ,radio_ctrl 
+2e13 1a60a290 add regc ,offset_24g_ch ,rega 
+2e14 ea288000 ifetcht 1 ,rega 
+2e15 2040291f call set_freq_rx 
+2e16 20402924 call rf_rx_enable 
+
+g24_receive_rxon:
+2e17 20402dee call g24_prep 
+2e18 7826fc00 enable decode_fec0 
+2e19 7830fc00 enable is_rx 
+2e1a 78507c00 disable is_tx 
+2e1b 204053c4 call le_enable 
+2e1c 2040322a call g24_fetch_mem_addr 
+2e1d 98001200 iforce access 
+2e1e 78287c00 enable swfine 
+2e1f 1a60a289 add regc ,offset_24g_rx_window ,rega 
+2e20 ea210000 ifetch 2 ,rega 
+2e21 98003600 iforce stop_watch 
+2e22 37c18400 correlate null ,timeout 
+2e23 242c2e4d nbranch g24_sync_timeout ,sync 
+2e24 7824fc00 enable enable_crc 
+2e25 09800008 parse demod ,bucket ,8 
+2e26 19897e00 rshift3 pwindow ,pdata 
+2e27 1a608a00 add regc ,offset_24g_rxbuf ,contw 
+2e28 e0a08000 istore 1 ,contw 
+2e29 1a60a2cd add regc ,offset_24g_mode ,rega 
+2e2a ea208000 ifetch 1 ,rega 
+2e2b c0012e33 beq rx_24g ,g24_receive_skip 
+2e2c 44dc4017 bpatch patch17_0 ,mem_patch17 
+2e2d 1a60a200 add regc ,offset_24g_rxbuf ,rega 
+2e2e ea208000 ifetch 1 ,rega 
+2e2f 1a60a287 add regc ,offset_24g_data_type ,rega 
+2e30 ea288000 ifetcht 1 ,rega 
+2e31 a8400e00 icompare bits_data ,temp 
+2e32 2420ae45 nbranch g24_end_of_packet ,true 
+
+g24_receive_skip:
+2e33 09800008 parse demod ,bucket ,8 
+2e34 19897e00 rshift3 pwindow ,pdata 
+2e35 e0a08000 istore 1 ,contw 
+2e36 1fe97e00 rshift3 pdata ,pdata 
+2e37 1fe1721f and pdata ,0x1f ,loopcnt 
+2e38 2022ae3d branch g24rx_nopayload ,zero 
+
+g24rx_loop:
+2e39 09800008 parse demod ,bucket ,8 
+2e3a 19897e00 rshift3 pwindow ,pdata 
+2e3b e0a08000 istore 1 ,contw 
+2e3c c2002e39 loop g24rx_loop 
+
+g24rx_nopayload:
+2e3d 09800018 parse demod ,bucket ,24 
+2e3e 1fef7e00 rshift32 pdata ,pdata 
+2e3f 1ff17e00 rshift16 pdata ,pdata 
+2e40 e0a18000 istore 3 ,contw 
+2e41 20232e45 branch g24_end_of_packet ,crc_failed 
+2e42 7837fc00 enable user3 
+2e43 7846fc00 disable decode_fec0 
+2e44 20600000 rtn 
+
+g24_end_of_packet:
+2e45 784efc00 disable encode_fec0 
+2e46 7846fc00 disable decode_fec0 
+2e47 7844fc00 disable enable_crc 
+2e48 7843fc00 disable enable_white 
+2e49 2030a8f9 branch shutdown_radio ,is_rx 
+2e4a 37d38200 until null ,tx_clear 
+2e4b 20000064 nop 100 
+2e4c 202028f9 branch shutdown_radio 
+
+g24_sync_timeout:
+2e4d 20402e4f call rssi_noise 
+2e4e 20202e45 branch g24_end_of_packet 
+
+rssi_noise:
+2e4f 204029bb call save_rssi 
+2e50 207a0000 rtn blank 
+2e51 1a60a2ea add regc ,offset_rssi_noise_index ,rega 
+2e52 ea288000 ifetcht 1 ,rega 
+2e53 da200d9e arg mem_rssi_noise_buffer ,rega 
+2e54 20402e58 call rssi_noise_store 
+2e55 1a608aea add regc ,offset_rssi_noise_index ,contw 
+
+g24_contw_istoret_1byte:
+2e56 e0a88000 istoret 1 ,contw 
+2e57 20600000 rtn 
+
+rssi_noise_store:
+2e58 da4000ff arg rssi_buf_len_noise ,regb 
+2e59 20202e5a branch rssi_store 
+
+rssi_store:
+2e5a 1a227e00 copy rega ,pdata 
+2e5b 98408a00 iadd temp ,contw 
+2e5c 68008018 fetch 1 ,mem_rssi 
+2e5d e0a08000 istore 1 ,contw 
+2e5e 18408401 increase 1 ,temp 
+2e5f 1a427e00 copy regb ,pdata 
+2e60 98410400 iand_into temp 
+2e61 20600000 rtn 
+
+rssi_average:
+2e62 d8400000 arg 0 ,temp 
+2e63 1a220c00 copy rega ,contr 
+
+rssi_average_loop:
+2e64 e8c08000 ifetch 1 ,contr 
+2e65 98408400 iadd temp ,temp 
+2e66 c2002e64 loop rssi_average_loop 
+2e67 184c8400 rshift8 temp ,temp 
+2e68 20600000 rtn 
+
+g24_power_ctrl_init:
+2e69 20402c7a call g24_head_ptr2regc 
+2e6a 20402e9f call g24_power_ctrl_incrs_level1 
+2e6b 58000001 setarg 1 
+2e6c 20403272 call g24_store_mem_power_ctrl_level 
+
+g24_power_ctrl_reinit:
+2e6d 58000000 setarg 0 
+2e6e 20402e73 call g24_store_mem_power_ctrl_pac 
+2e6f e0a08000 istore 1 ,contw 
+2e70 20600000 rtn 
+
+g24_power_ctrl_pac_incrs:
+2e71 20403270 call g24_fetch_mem_power_ctrl_pac 
+2e72 1fe0fe01 increase 1 ,pdata 
+
+g24_store_mem_power_ctrl_pac:
+2e73 1a608afc add regc ,offset_power_ctrl_packet_cnt ,contw 
+2e74 202032b4 branch g24_contw_istore_1byte 
+
+g24_power_ctrl_ack_incrs:
+2e75 1a60a2fd add regc ,offset_power_ctrl_ack_cnt ,rega 
+2e76 ea208000 ifetch 1 ,rega 
+2e77 1fe0fe01 increase 1 ,pdata 
+2e78 1a608afd add regc ,offset_power_ctrl_ack_cnt ,contw 
+2e79 202032b4 branch g24_contw_istore_1byte 
+
+g24_power_ctrl:
+2e7a 44dcc017 bpatch patch17_1 ,mem_patch17 
+2e7b 20403270 call g24_fetch_mem_power_ctrl_pac 
+2e7c 1fe67c7c sub pdata ,power_ctrl_max_packet_cnt ,null 
+2e7d 20610000 rtn positive 
+2e7e 1a60a2fd add regc ,offset_power_ctrl_ack_cnt ,rega 
+2e7f ea288000 ifetcht 1 ,rega 
+2e80 98460400 isub temp ,temp 
+2e81 20402e6d call g24_power_ctrl_reinit 
+2e82 58000102 setarg offset_power_ctrl_threshold_up 
+2e83 9a60a200 iadd regc ,rega 
+2e84 ea208000 ifetch 1 ,rega 
+2e85 98467c00 isub temp ,null 
+2e86 24212e8d nbranch g24_power_ctrl_incrs ,positive 
+2e87 58000103 setarg offset_power_ctrl_threshold_down 
+2e88 9a60a200 iadd regc ,rega 
+2e89 ea208000 ifetch 1 ,rega 
+2e8a 98467c00 isub temp ,null 
+2e8b 20212e99 branch g24_power_ctrl_decrs ,positive 
+2e8c 20600000 rtn 
+
+g24_power_ctrl_incrs:
+2e8d 1a60a2fe add regc ,offset_power_ctrl_level ,rega 
+2e8e ea208000 ifetch 1 ,rega 
+2e8f c0012e93 beq 2 ,g24_power_ctrl_incrs_level2 
+2e90 1fe0fe01 increase 1 ,pdata 
+2e91 20403272 call g24_store_mem_power_ctrl_level 
+2e92 c000ae9f beq 1 ,g24_power_ctrl_incrs_level1 
+
+g24_power_ctrl_incrs_level2:
+2e93 5800000a setarg power_ctrl_losspac_thresh_up2 
+2e94 204032b0 call g24_store_mem_power_ctrl_threshold_up 
+2e95 58000000 setarg power_ctrl_losspac_thresh_down2 
+2e96 204032b2 call g24_store_mem_power_ctrl_threshold_down 
+2e97 1a60a2ff add regc ,offset_power_ctrl_txpwr_level2 ,rega 
+2e98 20202ea5 branch g24_ifetch_rega_store_mem_txpower 
+
+g24_power_ctrl_decrs:
+2e99 1a60a2fe add regc ,offset_power_ctrl_level ,rega 
+2e9a ea208000 ifetch 1 ,rega 
+2e9b c0002ea7 beq 0 ,g24_power_ctrl_decrs_level0 
+2e9c 1fe0ffff increase -1 ,pdata 
+2e9d 20403272 call g24_store_mem_power_ctrl_level 
+2e9e c0002ea7 beq 0 ,g24_power_ctrl_decrs_level0 
+
+g24_power_ctrl_decrs_level1:
+
+g24_power_ctrl_incrs_level1:
+2e9f 58000005 setarg power_ctrl_losspac_thresh_up1 
+2ea0 204032b0 call g24_store_mem_power_ctrl_threshold_up 
+2ea1 58000000 setarg power_ctrl_losspac_thresh_down1 
+2ea2 204032b2 call g24_store_mem_power_ctrl_threshold_down 
+2ea3 58000100 setarg offset_power_ctrl_txpwr_level1 
+
+g24_iadd_offset_mem_txpower:
+2ea4 9a60a200 iadd regc ,rega 
+
+g24_ifetch_rega_store_mem_txpower:
+2ea5 ea208000 ifetch 1 ,rega 
+2ea6 2020326a branch g24_store_mem_txpower 
+
+g24_power_ctrl_decrs_level0:
+2ea7 58000002 setarg power_ctrl_losspac_thresh_up0 
+2ea8 204032b0 call g24_store_mem_power_ctrl_threshold_up 
+2ea9 58000000 setarg power_ctrl_losspac_thresh_down0 
+2eaa 204032b2 call g24_store_mem_power_ctrl_threshold_down 
+2eab 58000101 setarg offset_power_ctrl_txpwr_level0 
+2eac 20202ea4 branch g24_iadd_offset_mem_txpower 
+
+g24_start_pairing_sm1:
+2ead 79200026 set1 mark_24g ,mark 
+2eae 20402c83 call g24_pair_init 
+
+g24_set_pairing_sm_1:
+2eaf 58000001 setarg state_24g_pairing_1 
+2eb0 20203256 branch g24_store_mem_pairing_sm 
+
+g24_pairing_sm:
+2eb1 1a60a28b add regc ,offset_24g_ensure ,rega 
+2eb2 ea208000 ifetch 1 ,rega 
+2eb3 c000ffe7 beq ensure_on_24g ,enable_user 
+2eb4 20403253 call g24_fetch_mem_pairing_sm 
+2eb5 c000aeb9 beq state_24g_pairing_1 ,g24_pairing_sm_1 
+2eb6 c0012ebd beq state_24g_pairing_2 ,g24_pairing_sm_2 
+2eb7 c001aec1 beq state_24g_pairing_3 ,g24_pairing_sm_3 
+2eb8 20202a8c branch assert 
+
+g24_pairing_sm_1:
+2eb9 58000011 setarg state_24g_pairing_1_waiting_ack 
+2eba 20403256 call g24_store_mem_pairing_sm 
+2ebb 70119eaa jam 0xaa ,mem_24g_common_temp 
+2ebc 20202ec4 branch g24_pairing_sm_common 
+
+g24_pairing_sm_2:
+2ebd 58000012 setarg state_24g_pairing_2_waiting_ack 
+2ebe 20403256 call g24_store_mem_pairing_sm 
+2ebf 70119e55 jam 0x55 ,mem_24g_common_temp 
+2ec0 20202ec4 branch g24_pairing_sm_common 
+
+g24_pairing_sm_3:
+2ec1 58000013 setarg state_24g_pairing_3_waiting_ack 
+2ec2 20403256 call g24_store_mem_pairing_sm 
+2ec3 70119e22 jam 0x22 ,mem_24g_common_temp 
+
+g24_pairing_sm_common:
+2ec4 2040323a call g24_fetch_mem_data_type 
+2ec5 1fe17e07 and_into bits_data ,pdata 
+2ec6 6000919f store 1 ,mem_24g_common_temp + 1 
+2ec7 20403224 call g24_fetch_mem_device_addr 
+2ec8 600211a0 store 4 ,mem_24g_common_temp + 2 
+
+g24_put_pairing_data_in_buff:
+2ec9 7011a400 jam 0 ,mem_24g_common_temp + 6 
+2eca da20119e arg mem_24g_common_temp ,rega 
+2ecb d8400007 arg 7 ,temp 
+2ecc 20402d4c call g24_put_data_in_buff 
+2ecd 20402d53 call g24_transmit_prep 
+2ece 20402d33 call g24_txdata_enable_tx 
+2ecf 20207fe7 branch enable_user 
+
+g24_paring_mode:
+2ed0 20403253 call g24_fetch_mem_pairing_sm 
+2ed1 c17f8000 rtneq state_24g_pairing_success 
+2ed2 c008aed6 beq state_24g_pairing_1_waiting_ack ,g24_pairing_sm_1_waiting_ack 
+2ed3 c0092ed9 beq state_24g_pairing_2_waiting_ack ,g24_pairing_sm_2_waiting_ack 
+2ed4 c009aedc beq state_24g_pairing_3_waiting_ack ,g24_pairing_sm_3_waiting_ack 
+2ed5 20600000 rtn 
+
+g24_pairing_sm_1_waiting_ack:
+2ed6 58000002 setarg state_24g_pairing_2 
+2ed7 20403256 call g24_store_mem_pairing_sm 
+2ed8 20202d9f branch g24_transmit_abandon 
+
+g24_pairing_sm_2_waiting_ack:
+2ed9 58000003 setarg state_24g_pairing_3 
+2eda 20403256 call g24_store_mem_pairing_sm 
+2edb 20202d9f branch g24_transmit_abandon 
+
+g24_pairing_sm_3_waiting_ack:
+2edc 580000ff setarg state_24g_pairing_success 
+2edd 20403256 call g24_store_mem_pairing_sm 
+2ede 700a9939 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
+2edf 20407d86 call ui_ipc_send_event 
+2ee0 1a60a266 add regc ,offset_24g_rxpayload_add2 ,rega 
+2ee1 ea220000 ifetch 4 ,rega 
+2ee2 2040322c call g24_store_mem_addr 
+2ee3 20202d9f branch g24_transmit_abandon 
+
+g24_auto_pair_start:
+2ee4 793f8026 set0 mark_24g ,mark 
+2ee5 20402f08 call g24_auto_pair_set_device_info 
+2ee6 20402f22 call g24_tx_attemp_data_prep 
+
+g24_auto_pair_restart:
+2ee7 20403263 call g24_set0_mem_check_dongle_times 
+
+g24_auto_pair_start_loop:
+2ee8 200007d0 nop 2000 
+2ee9 20403261 call g24_fetch_mem_check_dongle_times 
+2eea c07fadd4 beq 0xff ,g24_stop_24g_mode 
+2eeb 20402da4 call g24_transmit_receive_ack 
+2eec 242c2efa nbranch g24_auto_pair_retry ,sync 
+2eed 2437aefa nbranch g24_auto_pair_retry ,user3 
+2eee 20402dd6 call g24_ackpayload_parse 
+2eef 20402c7a call g24_head_ptr2regc 
+2ef0 1a60a292 add regc ,offset_24g_paring_addr ,rega 
+2ef1 ea2a0000 ifetcht 4 ,rega 
+2ef2 204030be call g24_fetch_mem_addr_isub_temp 
+2ef3 2022aead branch g24_start_pairing_sm1 ,zero 
+2ef4 20402c7a call g24_head_ptr2regc 
+2ef5 1a60a266 add regc ,offset_24g_rxpayload_add2 ,rega 
+2ef6 ea220000 ifetch 4 ,rega 
+2ef7 c0002ee7 beq 0 ,g24_auto_pair_restart 
+2ef8 2040322c call g24_store_mem_addr 
+2ef9 20202f1c branch g24_tx_attemp_dongle_succ 
+
+g24_auto_pair_retry:
+2efa 20403261 call g24_fetch_mem_check_dongle_times 
+2efb 1fe0fe01 increase 1 ,pdata 
+2efc 20403264 call g24_store_mem_check_dongle_times 
+2efd 20402f04 call g24_fetch_mem_auto_paring_switch 
+2efe 1fe0fe01 increase 1 ,pdata 
+2eff 1fe17e01 and_into 1 ,pdata 
+2f00 20402f06 call g24_store_mem_auto_paring_switch 
+2f01 c0002f0c beq 0 ,g24_auto_pair_device_attemp 
+2f02 c000af0e beq 1 ,g24_auto_pair_pair_attemp 
+2f03 20600000 rtn 
+
+g24_fetch_mem_auto_paring_switch:
+2f04 5800018b setarg offset_24g_auto_pair_switch 
+2f05 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_store_mem_auto_paring_switch:
+2f06 da20018b arg offset_24g_auto_pair_switch ,rega 
+2f07 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_auto_pair_set_device_info:
+2f08 20403267 call g24_store_mem_tx_power 
+2f09 20403224 call g24_fetch_mem_device_addr 
+2f0a 2040322c call g24_store_mem_addr 
+2f0b 20202c8a branch g24_ch 
+
+g24_auto_pair_device_attemp:
+2f0c 20402f08 call g24_auto_pair_set_device_info 
+2f0d 20202ee8 branch g24_auto_pair_start_loop 
+
+g24_auto_pair_pair_attemp:
+2f0e 20402c83 call g24_pair_init 
+2f0f 20202ee8 branch g24_auto_pair_start_loop 
+
+g24_start_24g_mode:
+2f10 793f8026 set0 mark_24g ,mark 
+2f11 20402c8a call g24_ch 
+2f12 20403253 call g24_fetch_mem_pairing_sm 
+2f13 c1ff8000 rtnne state_24g_pairing_success 
+2f14 20402f22 call g24_tx_attemp_data_prep 
+2f15 20403263 call g24_set0_mem_check_dongle_times 
+
+g24_tx_attemp_dongle_loop:
+2f16 200007d0 nop 2000 
+2f17 20403261 call g24_fetch_mem_check_dongle_times 
+2f18 c07fadd4 beq 0xff ,g24_stop_24g_mode 
+2f19 20402da4 call g24_transmit_receive_ack 
+2f1a 242c2f27 nbranch g24_attemp_txdata_retry ,sync 
+2f1b 2437af27 nbranch g24_attemp_txdata_retry ,user3 
+
+g24_tx_attemp_dongle_succ:
+2f1c 79200026 set1 mark_24g ,mark 
+2f1d 20403263 call g24_set0_mem_check_dongle_times 
+2f1e 580000ff setarg state_24g_pairing_success 
+2f1f 20403256 call g24_store_mem_pairing_sm 
+
+g24_app_tx_attempt_success:
+2f20 700a993c jam bt_evt_24g_attempt_success ,mem_fifo_temp 
+2f21 20207d86 branch ui_ipc_send_event 
+
+g24_tx_attemp_data_prep:
+2f22 79200027 set1 mark_24g_conext ,mark 
+2f23 70119eff jam 0xff ,mem_24g_common_temp 
+2f24 2040323a call g24_fetch_mem_data_type 
+2f25 20402d77 call g24_put_data_in_buff_pre 
+2f26 20202d53 branch g24_transmit_prep 
+
+g24_attemp_txdata_retry:
+2f27 20403261 call g24_fetch_mem_check_dongle_times 
+2f28 1fe0fe01 increase 1 ,pdata 
+2f29 20403264 call g24_store_mem_check_dongle_times 
+2f2a 20402c8a call g24_ch 
+2f2b 20202f16 branch g24_tx_attemp_dongle_loop 
+
+g24_check_51cmd_start_24g:
+2f2c 20403267 call g24_store_mem_tx_power 
+2f2d 580000ff setarg state_24g_pairing_success 
+2f2e 20403256 call g24_store_mem_pairing_sm 
+2f2f 20202f10 branch g24_start_24g_mode 
+
+dongle_init:
+2f30 44dd4017 bpatch patch17_2 ,mem_patch17 
+2f31 20402c7a call g24_head_ptr2regc 
+2f32 580031b0 setarg dongle_rxdata_type1 
+2f33 1a608ade add regc ,offset_24g_cb_rxdata_type1 ,contw 
+2f34 e0a10000 istore 2 ,contw 
+2f35 20402f3d call g24_receive_init 
+2f36 204048ea call usb_init 
+2f37 204032b6 call g24_fetch_mem_pair_mode 
+2f38 44ddc017 bpatch patch17_3 ,mem_patch17 
+2f39 c0003055 beq 0x00 ,dongle_auto_bind 
+2f3a c000af45 beq 0x01 ,dongle_pc_bind 
+2f3b c007af41 beq 0x0f ,dongle_all_powerful 
+2f3c 20202a8c branch assert 
+
+g24_receive_init:
+2f3d 2040326c call g24_store_mem_tx_power_temp 
+2f3e df200080 arg 0x80 ,loopcnt 
+2f3f d8a00d9e arg mem_rssi_noise_buffer ,contw 
+2f40 20207ec6 branch memset0 
+
+dongle_all_powerful:
+2f41 20402f4c call dongle_check_mode 
+
+dongle_all_powerful_loop:
+2f42 20402f4f call g24_dongle_work_mode 
+2f43 204048d3 call usb_isr 
+2f44 20202f42 branch dongle_all_powerful_loop 
+
+dongle_pc_bind:
+2f45 44de4017 bpatch patch17_4 ,mem_patch17 
+2f46 20402f4c call dongle_check_mode 
+
+dongle_pc_bind_loop:
+2f47 20402f4f call g24_dongle_work_mode 
+2f48 20402fbd call g24_dongle_bind_mode 
+2f49 204048d3 call usb_isr 
+2f4a 20403019 call dongle_usb_dispatch 
+2f4b 20202f47 branch dongle_pc_bind_loop 
+
+dongle_check_mode:
+2f4c 20403291 call g24_set_work_mem_dongle_work_mode 
+2f4d 20403296 call g24_set0_mem_dongle_mode_init 
+2f4e 20203299 branch g24_set0_mem_ackpayload_enable 
+
+g24_dongle_work_mode:
+2f4f 2040328f call g24_fetch_mem_dongle_work_mode 
+2f50 c1800000 rtnne dongle_work 
+
+g24_dongle_work_mode_start:
+2f51 20402f55 call g24_dongle_work_init 
+2f52 20402f65 call g24_ch_process 
+2f53 2040316b call g24_receive_packet_start 
+2f54 20202f96 branch g24_blank_data_process 
+
+g24_dongle_work_init:
+2f55 20403294 call g24_fetch_mem_dongle_mode_init 
+2f56 c3800000 rtnbit1 dongle_work 
+2f57 79207e00 set1 dongle_work ,pdata 
+2f58 20403297 call g24_store_mem_dongle_mode_init 
+2f59 20403267 call g24_store_mem_tx_power 
+2f5a 20403299 call g24_set0_mem_ackpayload_enable 
+2f5b 700d3800 jam 0 ,mem_usb_tx_enable 
+2f5c 2040324f call g24_set1_mem_abort_pac 
+2f5d 20402f61 call g24_dongle_init 
+
+g24_rx_interrupt_clear:
+2f5e 1a608a00 add regc ,offset_24g_rxbuf ,contw 
+2f5f df200042 arg 66 ,loopcnt 
+2f60 20207ed4 branch clear_mem 
+
+g24_dongle_init:
+2f61 20403231 call g24_set0_mem_pid 
+2f62 2040327d call g24_fetch_mem_rx_addr 
+2f63 2040322c call g24_store_mem_addr 
+2f64 20202c8a branch g24_ch 
+
+g24_ch_process:
+2f65 44dec017 bpatch patch17_5 ,mem_patch17 
+2f66 2040324c call g24_fetch_mem_abort_pac 
+2f67 c000af8d beq 1 ,g24_noise_rssi 
+2f68 20403245 call g24_fetch_mem_hop_pac 
+2f69 c000ac8a beq 1 ,g24_ch 
+2f6a 58000136 setarg offset_24g_hop_btclk 
+2f6b 9a60a200 iadd regc ,rega 
+2f6c ea2a0000 ifetcht 4 ,rega 
+2f6d 1c427e00 copy clkn_bt ,pdata 
+2f6e 98467c00 isub temp ,null 
+2f6f 24412d18 ncall g24_timer_timeout ,positive 
+2f70 1fe22400 copy pdata ,regb 
+2f71 58000136 setarg offset_24g_hop_btclk 
+2f72 9a60a200 iadd regc ,rega 
+2f73 ea220000 ifetch 4 ,rega 
+2f74 1fe20400 copy pdata ,temp 
+2f75 5800013a setarg offset_24g_hop_interval 
+2f76 9a60a200 iadd regc ,rega 
+2f77 18427e00 copy temp ,pdata 
+2f78 ea288000 ifetcht 1 ,rega 
+2f79 98408400 iadd temp ,temp 
+2f7a 1a427e00 copy regb ,pdata 
+2f7b 98467c00 isub temp ,null 
+2f7c 24610000 nrtn positive 
+2f7d 793ffe1c set0 28 ,pdata 
+2f7e 58000136 setarg offset_24g_hop_btclk 
+2f7f 9a608a00 iadd regc ,contw 
+2f80 e0a20000 istore 4 ,contw 
+
+g24_ch_update:
+2f81 20402c8a call g24_ch 
+2f82 20403278 call g24_fetch_mem_rf_laststa 
+2f83 1fe0fe01 increase 1 ,pdata 
+2f84 2040327b call g24_store_mem_rf_laststa 
+2f85 c1810000 rtnne 2 
+2f86 2040327a call g24_set0_mem_rf_laststa 
+2f87 2020324f branch g24_set1_mem_abort_pac 
+
+g24_ch_timer_reinit:
+2f88 1c427e00 copy clkn_bt ,pdata 
+2f89 da200136 arg offset_24g_hop_btclk ,rega 
+2f8a 204032bf call g24_set_contw_with_temp 
+2f8b e0a20000 istore 4 ,contw 
+2f8c 2020327a branch g24_set0_mem_rf_laststa 
+
+g24_noise_rssi:
+2f8d da200d9e arg mem_rssi_noise_buffer ,rega 
+2f8e 20402f94 call g24_noise_rssi_average 
+2f8f 1a608aeb add regc ,offset_rssi_noise_avg ,contw 
+2f90 e0a88000 istoret 1 ,contw 
+2f91 18467c50 sub temp ,rssi_thresh_noise ,null 
+2f92 24610000 nrtn positive 
+2f93 20202c8a branch g24_ch 
+
+g24_noise_rssi_average:
+2f94 df200100 arg rssi_buf_len_noise + 1 ,loopcnt 
+2f95 20202e62 branch rssi_average 
+
+g24_blank_data_process:
+2f96 20402f99 call g24_ms_blank_data 
+2f97 20402fa5 call g24_kb_blank_data 
+2f98 20202fb1 branch g24_kb_mul_blank_data 
+
+g24_ms_blank_data:
+2f99 58000180 setarg offset_24g_ms_blank_data_enable 
+2f9a 204032d0 call g24_set_rega_ifetch_1byte 
+2f9b 207a0000 rtn blank 
+2f9c d8e0000b arg timer_ms_blank ,queue 
+2f9d 20407f16 call timer_check 
+2f9e 247a0000 nrtn blank 
+2f9f 204032a7 call g24_set0_mem_ms_blank_data_enable 
+
+g24_ms_blank_data_2usb:
+2fa0 58000001 setarg ms_report_id 
+2fa1 60008d54 store 1 ,mem_usb_mouse_data 
+2fa2 58000000 setarg 0 
+2fa3 e0a38000 istore 7 ,contw 
+2fa4 202031b8 branch g24_data_type1_usbtx_enable 
+
+g24_kb_blank_data:
+2fa5 5800017e setarg offset_24g_kb_blank_data_enable 
+2fa6 204032d0 call g24_set_rega_ifetch_1byte 
+2fa7 207a0000 rtn blank 
+2fa8 d8e0000e arg timer_kb_blank ,queue 
+2fa9 20407f16 call timer_check 
+2faa 247a0000 nrtn blank 
+2fab 204032aa call g24_set0_mem_kb_blank_data_enable 
+
+g24_kb_blank_data_2usb:
+2fac d8a00d64 arg mem_usb_kb_data ,contw 
+2fad df200002 arg 2 ,loopcnt 
+2fae 20407ec6 call memset0 
+2faf 700d6400 jam kb_normal_report_id ,mem_usb_kb_data 
+2fb0 202031ed branch g24_kb_data_into_ep1_fifo 
+
+g24_kb_mul_blank_data:
+2fb1 5800017f setarg offset_24g_kb_mul_blank_data_enable 
+2fb2 204032d0 call g24_set_rega_ifetch_1byte 
+2fb3 207a0000 rtn blank 
+2fb4 d8e0000c arg timer_kb_mul_blank ,queue 
+2fb5 20407f16 call timer_check 
+2fb6 247a0000 nrtn blank 
+2fb7 204032ad call g24_set0_mem_kb_mul_blank_data_enable 
+
+g24_kb_mul_blank_data_2usb:
+2fb8 d8a00d74 arg mem_usb_kb_multikey ,contw 
+2fb9 df200002 arg 2 ,loopcnt 
+2fba 20407ec6 call memset0 
+2fbb 700d7403 jam kb_multikey_report_id ,mem_usb_kb_multikey 
+2fbc 20203207 branch g24_kb_mul_data_into_ep2_fifo 
+
+g24_dongle_bind_mode:
+2fbd 2040328f call g24_fetch_mem_dongle_work_mode 
+2fbe c1808000 rtnne dongle_bind 
+2fbf 20402fc1 call g24_dongle_bind_init 
+2fc0 20202fcb branch g24_dongle_bind_data_process 
+
+g24_dongle_bind_init:
+2fc1 20403294 call g24_fetch_mem_dongle_mode_init 
+2fc2 c3808000 rtnbit1 dongle_bind 
+2fc3 79207e01 set1 dongle_bind ,pdata 
+2fc4 20403297 call g24_store_mem_dongle_mode_init 
+2fc5 2040329c call g24_set1_mem_ackpayload_enable 
+2fc6 20402c83 call g24_pair_init 
+2fc7 58000000 setarg 0 
+2fc8 da200106 arg offset_dongle_ms_bind_step ,rega 
+2fc9 204032bf call g24_set_contw_with_temp 
+2fca 202032c5 branch g24_contw_istore_3byte 
+
+g24_dongle_bind_data_process:
+2fcb 2040316e call g24_receive_transmit_ack 
+2fcc 2437af5e nbranch g24_rx_interrupt_clear ,user3 
+2fcd 1a608c00 add regc ,offset_24g_rxbuf ,contr 
+2fce 58000109 setarg offset_24g_rxdata_temp 
+2fcf 9a608a00 iadd regc ,contw 
+2fd0 df200008 arg 8 ,loopcnt 
+2fd1 20407f01 call memcpy 
+2fd2 5800010b setarg offset_24g_rxdata_temp_add2 
+2fd3 204032d0 call g24_set_rega_ifetch_1byte 
+2fd4 c0552fd9 beq datatype_bind ,g24_dongle_bind_first_step 
+2fd5 c02aafed beq datatype_config ,g24_dongle_bind_second_step 
+2fd6 c0113001 beq datatype_ok ,g24_dongle_bind_third_step 
+2fd7 c07fb212 beq 0xff ,g24_data_attemp 
+2fd8 20202f5e branch g24_rx_interrupt_clear 
+
+g24_dongle_bind_first_step:
+2fd9 204032bd call g24_fetch_mem_rxdata_temp_add3_1byte 
+2fda c000afdd beq bind_mouse ,g24_dongle_bind_first_step_mouse 
+2fdb c0012fe8 beq bind_keyboard ,g24_dongle_bind_first_step_keyboard 
+2fdc 20600000 rtn 
+
+g24_dongle_bind_first_step_mouse:
+2fdd 58000001 setarg 1 
+2fde 20402ff7 call g24_store_mem_ms_bind_step 
+
+g24_dongle_bind_ms_payload_cfg:
+2fdf 58000001 setarg datatype_mouse 
+2fe0 20403289 call g24_store_mem_bind_payload 
+
+g24_dongle_bind_payload_cfg:
+2fe1 58000080 setarg 0x80 
+2fe2 da200130 arg offset_24g_bind_payload_add1 ,rega 
+2fe3 204032b3 call g24_set_contw_with_regb_store_1byte 
+2fe4 2040327d call g24_fetch_mem_rx_addr 
+2fe5 da200131 arg offset_24g_bind_payload_add2 ,rega 
+2fe6 204032bf call g24_set_contw_with_temp 
+2fe7 2020322d branch g24_contw_istore_4byte 
+
+g24_dongle_bind_first_step_keyboard:
+2fe8 58000001 setarg 1 
+2fe9 20402fff call g24_store_mem_kb_bind_step 
+
+g24_dongle_bind_kb_payload_cfg:
+2fea 58000002 setarg datatype_keyboard 
+2feb 20403289 call g24_store_mem_bind_payload 
+2fec 20202fe1 branch g24_dongle_bind_payload_cfg 
+
+g24_dongle_bind_second_step:
+2fed 204032bd call g24_fetch_mem_rxdata_temp_add3_1byte 
+2fee c000aff1 beq bind_mouse ,g24_dongle_bind_second_step_mouse 
+2fef c0012ff9 beq bind_keyboard ,g24_dongle_bind_second_step_keyboard 
+2ff0 20600000 rtn 
+
+g24_dongle_bind_second_step_mouse:
+2ff1 20402fdf call g24_dongle_bind_ms_payload_cfg 
+2ff2 58000106 setarg offset_dongle_ms_bind_step 
+2ff3 204032d0 call g24_set_rega_ifetch_1byte 
+2ff4 c000aff6 beq 1 ,g24_dongle_ms_bind_step_set2 
+2ff5 20600000 rtn 
+
+g24_dongle_ms_bind_step_set2:
+2ff6 58000002 setarg 2 
+
+g24_store_mem_ms_bind_step:
+2ff7 da200106 arg offset_dongle_ms_bind_step ,rega 
+2ff8 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_dongle_bind_second_step_keyboard:
+2ff9 20402fea call g24_dongle_bind_kb_payload_cfg 
+2ffa 58000107 setarg offset_dongle_kb_bind_step 
+2ffb 204032d0 call g24_set_rega_ifetch_1byte 
+2ffc c000affe beq 1 ,g24_dongle_kb_bind_step_set2 
+2ffd 20600000 rtn 
+
+g24_dongle_kb_bind_step_set2:
+2ffe 58000002 setarg 2 
+
+g24_store_mem_kb_bind_step:
+2fff da200107 arg offset_dongle_kb_bind_step ,rega 
+3000 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_dongle_bind_third_step:
+3001 204032bd call g24_fetch_mem_rxdata_temp_add3_1byte 
+3002 c000b005 beq bind_mouse ,g24_dongle_bind_third_step_mouse 
+3003 c0013011 beq bind_keyboard ,g24_dongle_bind_third_step_keyboard 
+3004 20600000 rtn 
+
+g24_dongle_bind_third_step_mouse:
+3005 58000106 setarg offset_dongle_ms_bind_step 
+3006 204032d0 call g24_set_rega_ifetch_1byte 
+3007 c0013009 beq 2 ,g24_dongle_ms_bind_step_success 
+3008 20600000 rtn 
+
+g24_dongle_ms_bind_step_success:
+3009 2040328b call g24_fetch_mem_bind_device_status 
+300a 1fe1fe01 or_into 0x01 ,pdata 
+300b 2040328d call g24_store_mem_bind_device_status 
+
+g24_dongle_bind_exit:
+300c 58000000 setarg 0 
+300d 58000106 setarg offset_dongle_ms_bind_step 
+300e 9a608a00 iadd regc ,contw 
+300f e0a10000 istore 2 ,contw 
+3010 20202f5e branch g24_rx_interrupt_clear 
+
+g24_dongle_bind_third_step_keyboard:
+3011 58000107 setarg offset_dongle_kb_bind_step 
+3012 204032d0 call g24_set_rega_ifetch_1byte 
+3013 c0803015 bne 0 ,g24_dongle_kb_bind_step_success 
+3014 20600000 rtn 
+
+g24_dongle_kb_bind_step_success:
+3015 2040328b call g24_fetch_mem_bind_device_status 
+3016 1fe1fe02 or_into 0x02 ,pdata 
+3017 2040328d call g24_store_mem_bind_device_status 
+3018 2020300c branch g24_dongle_bind_exit 
+
+dongle_usb_dispatch:
+3019 68008d50 fetch 1 ,mem_usb0_get_set_report 
+301a 207a0000 rtn blank 
+301b 700d5000 jam 0 ,mem_usb0_get_set_report 
+301c 68010d4e fetch 2 ,mem_usb_setup_bvalue_temp 
+301d d84002ba arg pc_set_report ,temp 
+301e 98467c00 isub temp ,null 
+301f 24628000 nrtn zero 
+3020 68008cb6 fetch 1 ,mem_usb0_set_report_data 
+3021 c1dd0000 rtnne pc_report_id 
+3022 68008cb7 fetch 1 ,mem_usb0_set_report_data + 1 
+3023 44df4017 bpatch patch17_6 ,mem_patch17 
+3024 c050303b beq command_mode ,dongle_dispose_cmd_mode 
+3025 c050b02c beq command_bind ,dongle_dispose_cmd_bind 
+3026 c0533041 beq command_current_project ,dongle_dispose_cmd_current_project 
+3027 c053b043 beq command_current_mode ,dongle_dispose_cmd_current_mode 
+3028 c054b049 beq command_current_fw_version ,dongle_dispose_cmd_current_fw_version 
+3029 c058304d beq command_user_defined ,dongle_dispose_cmd_user_defined 
+
+usb0_data_ready_report_set0:
+302a 700d4200 jam 0 ,mem_usb0_data_ready_report 
+302b 20600000 rtn 
+
+dongle_dispose_cmd_bind:
+302c 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+302d c000b031 beq com_bind_get ,dongle_dispose_cmd_get_bind 
+302e c0423034 beq com_bind_exit ,dongle_dispose_cmd_exit_bind 
+302f c053b039 beq com_read_mode ,dongle_dispose_cmd_read_mode 
+3030 2020302a branch usb0_data_ready_report_set0 
+
+dongle_dispose_cmd_get_bind:
+3031 2040328b call g24_fetch_mem_bind_device_status 
+3032 60008cf7 store 1 ,mem_usb0_get_report_data + 1 
+3033 2020303f branch usb0_data_ready_report_set1 
+
+dongle_dispose_cmd_exit_bind:
+3034 20403291 call g24_set_work_mem_dongle_work_mode 
+3035 20403296 call g24_set0_mem_dongle_mode_init 
+3036 2040328b call g24_fetch_mem_bind_device_status 
+3037 60008cf7 store 1 ,mem_usb0_get_report_data + 1 
+3038 2020303f branch usb0_data_ready_report_set1 
+
+dongle_dispose_cmd_read_mode:
+
+dongle_dispose_in_bind_mode:
+3039 700cf7a1 jam command_bind ,mem_usb0_get_report_data + 1 
+303a 2020303f branch usb0_data_ready_report_set1 
+
+dongle_dispose_cmd_mode:
+303b 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+303c c040b03e beq com_mode_bind ,dongle_enter_bind_mode 
+303d 2020302a branch usb0_data_ready_report_set0 
+
+dongle_enter_bind_mode:
+303e 20403090 call g24_bind_mode_enable 
+
+usb0_data_ready_report_set1:
+303f 700d4201 jam 1 ,mem_usb0_data_ready_report 
+3040 20600000 rtn 
+
+dongle_dispose_cmd_current_project:
+3041 700cf715 jam product_id ,mem_usb0_get_report_data + 1 
+3042 2020303f branch usb0_data_ready_report_set1 
+
+dongle_dispose_cmd_current_mode:
+3043 2040328f call g24_fetch_mem_dongle_work_mode 
+3044 c0003047 beq dongle_work ,dongle_dispose_in_work_mode 
+3045 c000b039 beq dongle_bind ,dongle_dispose_in_bind_mode 
+3046 20600000 rtn 
+
+dongle_dispose_in_work_mode:
+3047 700cf7a0 jam command_mode ,mem_usb0_get_report_data + 1 
+3048 2020303f branch usb0_data_ready_report_set1 
+
+dongle_dispose_cmd_current_fw_version:
+3049 700cf700 jam fw_version0 ,mem_usb0_get_report_data + 1 
+304a 700cf800 jam fw_version1 ,mem_usb0_get_report_data + 2 
+304b 700cf901 jam fw_version2 ,mem_usb0_get_report_data + 3 
+304c 2020303f branch usb0_data_ready_report_set1 
+
+dongle_dispose_cmd_user_defined:
+304d 2040329c call g24_set1_mem_ackpayload_enable 
+304e 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+304f 1fe0fe02 increase 2 ,pdata 
+3050 1fe27200 copy pdata ,loopcnt 
+3051 d8c00cb6 arg mem_usb0_set_report_data ,contr 
+3052 5800013c setarg offset_24g_ackpayload 
+3053 9a608a00 iadd regc ,contw 
+3054 20207f01 branch memcpy 
+
+dongle_auto_bind:
+3055 44dfc017 bpatch patch17_7 ,mem_patch17 
+3056 2040307d call g24_mode_switch_init 
+
+dongle_auto_bind_loop:
+3057 20402c7f call g24_receive_process 
+3058 204048d3 call usb_isr 
+3059 20203057 branch dongle_auto_bind_loop 
+
+g24_dongle_work_mode_auto:
+305a 2040328f call g24_fetch_mem_dongle_work_mode 
+305b c1800000 rtnne dongle_work 
+305c 20402f51 call g24_dongle_work_mode_start 
+305d 20203098 branch g24_rx_nodata_process 
+
+g24_dongle_bind_mode_auto:
+305e 2040328f call g24_fetch_mem_dongle_work_mode 
+305f c1808000 rtnne dongle_bind 
+3060 20402fc1 call g24_dongle_bind_init 
+3061 20402fcb call g24_dongle_bind_data_process 
+3062 2040328b call g24_fetch_mem_bind_device_status 
+3063 207a0000 rtn blank 
+3064 20403286 call g24_set0_mem_mode_switch 
+3065 20402f4c call dongle_check_mode 
+3066 20403093 call g24_enable_nodata_timer 
+
+g24_timer_init:
+3067 58000000 setarg 0 
+3068 1a608aa7 add regc ,offset_24g_tx_btclk ,contw 
+3069 2020322d branch g24_contw_istore_4byte 
+
+g24_timer_check:
+306a 20407fe9 call disable_user 
+306b 1a60a2a7 add regc ,offset_24g_tx_btclk ,rega 
+306c ea2a0000 ifetcht 4 ,rega 
+306d 1c427e00 copy clkn_bt ,pdata 
+306e 98467c00 isub temp ,null 
+306f 24412d18 ncall g24_timer_timeout ,positive 
+3070 1fe22400 copy pdata ,regb 
+3071 1a60a2a7 add regc ,offset_24g_tx_btclk ,rega 
+3072 ea220000 ifetch 4 ,rega 
+3073 1a60a2ab add regc ,offset_24g_interval ,rega 
+3074 ea288000 ifetcht 1 ,rega 
+3075 98408400 iadd temp ,temp 
+3076 1a427e00 copy regb ,pdata 
+3077 98467c00 isub temp ,null 
+3078 24610000 nrtn positive 
+3079 793ffe1c set0 28 ,pdata 
+307a 1a608aa7 add regc ,offset_24g_tx_btclk ,contw 
+307b e0a20000 istore 4 ,contw 
+307c 20207fe7 branch enable_user 
+
+g24_mode_switch_init:
+307d 58000001 setarg 1 
+307e 20403287 call g24_store_mem_mode_switch 
+307f 20403283 call g24_set0_mem_time_slice 
+3080 580000ff setarg 0xff 
+3081 1a608aab add regc ,offset_24g_interval ,contw 
+3082 e0a08000 istore 1 ,contw 
+3083 20203067 branch g24_timer_init 
+
+g24_mode_switch:
+3084 5800015c setarg offset_24g_mode_switch 
+3085 204032d0 call g24_set_rega_ifetch_1byte 
+3086 207a0000 rtn blank 
+3087 2040306a call g24_timer_check 
+3088 24740000 nrtn user 
+3089 20403281 call g24_fetch_mem_time_slice 
+308a 1fe0fe01 increase 1 ,pdata 
+308b 1fe17e01 and_into 1 ,pdata 
+308c 20403284 call g24_store_mem_time_slice 
+308d c0002f4c beq 0 ,dongle_check_mode 
+308e c000b090 beq 1 ,g24_bind_mode_enable 
+308f 20600000 rtn 
+
+g24_bind_mode_enable:
+3090 58000001 setarg dongle_bind 
+3091 20403292 call g24_store_mem_dongle_work_mode 
+3092 20203296 branch g24_set0_mem_dongle_mode_init 
+
+g24_enable_nodata_timer:
+3093 58000001 setarg 1 
+3094 204032a5 call g24_store_mem_nodata_timer_enable 
+
+g24_enable_nodata_timer_init:
+3095 58000280 setarg timer_nodata_delay 
+3096 d8e00008 arg timer_nodata ,queue 
+3097 20207f08 branch timer_init 
+
+g24_rx_nodata_process:
+3098 204032a2 call g24_fetch_mem_nodata_timer_enable 
+3099 207a0000 rtn blank 
+309a d8e00008 arg timer_nodata ,queue 
+309b 20407f16 call timer_check 
+309c 247a0000 nrtn blank 
+309d 204032a4 call g24_set0_mem_nodata_timer_enable 
+309e 58000007 setarg dongle_search 
+309f 20403292 call g24_store_mem_dongle_work_mode 
+30a0 20403296 call g24_set0_mem_dongle_mode_init 
+30a1 20202f5e branch g24_rx_interrupt_clear 
+
+g24_dongle_search_mode_auto:
+30a2 44e04018 bpatch patch18_0 ,mem_patch18 
+30a3 2040328f call g24_fetch_mem_dongle_work_mode 
+30a4 c1838000 rtnne dongle_search 
+30a5 204030cb call g24_dongle_search_mode_init 
+30a6 204030e0 call g24_rx_auto_addr_ch_search 
+30a7 2040316e call g24_receive_transmit_ack 
+30a8 2437af5e nbranch g24_rx_interrupt_clear ,user3 
+30a9 204030bc call g24_dongle_search_addr_check 
+30aa 2042b172 call g24_receive_packet_parse ,zero 
+30ab 20402f4c call dongle_check_mode 
+30ac 20403294 call g24_fetch_mem_dongle_mode_init 
+30ad 79207e00 set1 dongle_work ,pdata 
+30ae 20403297 call g24_store_mem_dongle_mode_init 
+30af 20402f5e call g24_rx_interrupt_clear 
+30b0 20403093 call g24_enable_nodata_timer 
+30b1 204030bc call g24_dongle_search_addr_check 
+30b2 2022b0c1 branch g24_dg_ch_num_reinit ,zero 
+30b3 58000164 setarg offset_24g_kb_addr 
+30b4 204032d3 call g24_set_rega_ifetcht_4byte 
+30b5 204030be call g24_fetch_mem_addr_isub_temp 
+30b6 2022b0c5 branch g24_kb_ch_num_reinit ,zero 
+30b7 58000160 setarg offset_24g_mouse_addr 
+30b8 204032d3 call g24_set_rega_ifetcht_4byte 
+30b9 204030be call g24_fetch_mem_addr_isub_temp 
+30ba 2022b0c8 branch g24_ms_ch_num_reinit ,zero 
+30bb 20600000 rtn 
+
+g24_dongle_search_addr_check:
+30bc 5800012b setarg offset_24g_rx_addr 
+30bd 204032d3 call g24_set_rega_ifetcht_4byte 
+
+g24_fetch_mem_addr_isub_temp:
+30be 2040322a call g24_fetch_mem_addr 
+30bf 98467c00 isub temp ,null 
+30c0 20600000 rtn 
+
+g24_dg_ch_num_reinit:
+30c1 58000182 setarg offset_24g_dg_ch_number 
+30c2 204032d0 call g24_set_rega_ifetch_1byte 
+
+g24_current_ch_num_reinit:
+30c3 1a608a91 add regc ,offset_24g_current_ch_number ,contw 
+30c4 202032b4 branch g24_contw_istore_1byte 
+
+g24_kb_ch_num_reinit:
+30c5 58000185 setarg offset_24g_kb_ch_number 
+30c6 204032d0 call g24_set_rega_ifetch_1byte 
+30c7 202030c3 branch g24_current_ch_num_reinit 
+
+g24_ms_ch_num_reinit:
+30c8 58000188 setarg offset_24g_ms_ch_number 
+30c9 204032d0 call g24_set_rega_ifetch_1byte 
+30ca 202030c3 branch g24_current_ch_num_reinit 
+
+g24_dongle_search_mode_init:
+30cb 20403294 call g24_fetch_mem_dongle_mode_init 
+30cc c3838000 rtnbit1 dongle_search 
+30cd 79207e07 set1 dongle_search ,pdata 
+30ce 20403297 call g24_store_mem_dongle_mode_init 
+30cf 20403283 call g24_set0_mem_time_slice 
+30d0 2040329c call g24_set1_mem_ackpayload_enable 
+30d1 58000000 setarg 0 
+30d2 1a608af5 add regc ,offset_rssi_noise_dg_index ,contw 
+30d3 e0a18000 istore 3 ,contw 
+30d4 da200183 arg offset_24g_dg_config_ch_once ,rega 
+30d5 204032bf call g24_set_contw_with_temp 
+30d6 e0a38000 istore 7 ,contw 
+30d7 204030bc call g24_dongle_search_addr_check 
+30d8 24628000 nrtn zero 
+30d9 1a60a291 add regc ,offset_24g_current_ch_number ,rega 
+30da ea208000 ifetch 1 ,rega 
+30db da200182 arg offset_24g_dg_ch_number ,rega 
+30dc 204032b3 call g24_set_contw_with_regb_store_1byte 
+30dd 1a60a290 add regc ,offset_24g_ch ,rega 
+30de ea208000 ifetch 1 ,rega 
+30df 2020314a branch g24_store_mem_dg_last_ch 
+
+g24_rx_auto_addr_ch_search:
+30e0 44e0c018 bpatch patch18_1 ,mem_patch18 
+30e1 20403281 call g24_fetch_mem_time_slice 
+30e2 1fe0fe01 increase 1 ,pdata 
+30e3 1fe17e03 and_into 3 ,pdata 
+30e4 20403284 call g24_store_mem_time_slice 
+30e5 c000310e beq 0 ,g24_rx_auto_bind_config_kb 
+30e6 c000b132 beq 1 ,g24_rx_auto_bind_config_dongle 
+30e7 c00130ea beq 2 ,g24_rx_auto_bind_config_mouse 
+30e8 c001b132 beq 3 ,g24_rx_auto_bind_config_dongle 
+30e9 20600000 rtn 
+
+g24_rx_auto_bind_config_mouse:
+30ea 20402fdf call g24_dongle_bind_ms_payload_cfg 
+30eb 58000160 setarg offset_24g_mouse_addr 
+30ec 2040327e call g24_set_rega_ifetch_4byte 
+30ed 203a30e0 branch g24_rx_auto_addr_ch_search ,blank 
+30ee 2040322c call g24_store_mem_addr 
+30ef 58000189 setarg offset_24g_ms_config_ch_once 
+30f0 204032d0 call g24_set_rega_ifetch_1byte 
+30f1 205a3108 call g24_ms_config_ch_once ,blank 
+30f2 58000187 setarg offset_24g_ms_last_ch 
+30f3 204032d0 call g24_set_rega_ifetch_1byte 
+30f4 2040322f call g24_store_mem_ch 
+30f5 1a60a2f7 add regc ,offset_rssi_noise_ms_index ,rega 
+30f6 ea288000 ifetcht 1 ,rega 
+30f7 da200f9e arg mem_rssi_noise_ms_buffer ,rega 
+30f8 20402e58 call rssi_noise_store 
+30f9 1a608af7 add regc ,offset_rssi_noise_ms_index ,contw 
+30fa e0a88000 istoret 1 ,contw 
+30fb 20402f94 call g24_noise_rssi_average 
+30fc 1a608afa add regc ,offset_rssi_noise_ms_avg ,contw 
+30fd e0a88000 istoret 1 ,contw 
+30fe 18467c50 sub temp ,rssi_thresh_noise ,null 
+30ff 24610000 nrtn positive 
+3100 58000188 setarg offset_24g_ms_ch_number 
+3101 20403275 call g24_set_rega_ifetcht_1byte 
+3102 20402c90 call g24_ch_temp_incre_size4 
+3103 da200188 arg offset_24g_ms_ch_number ,rega 
+3104 204032c8 call g24_set_contw_with_regb2 
+3105 e0a88000 istoret 1 ,contw 
+
+g24_store_mem_ms_last_ch:
+3106 da200187 arg offset_24g_ms_last_ch ,rega 
+3107 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_ms_config_ch_once:
+3108 58000001 setarg 1 
+3109 da200189 arg offset_24g_ms_config_ch_once ,rega 
+310a 204032b3 call g24_set_contw_with_regb_store_1byte 
+310b d8400000 arg 0 ,temp 
+310c 20402c94 call g24_ch_calc 
+310d 20203106 branch g24_store_mem_ms_last_ch 
+
+g24_rx_auto_bind_config_kb:
+310e 20402fea call g24_dongle_bind_kb_payload_cfg 
+310f 58000164 setarg offset_24g_kb_addr 
+3110 2040327e call g24_set_rega_ifetch_4byte 
+3111 203a30e0 branch g24_rx_auto_addr_ch_search ,blank 
+3112 2040322c call g24_store_mem_addr 
+3113 58000186 setarg offset_24g_kb_config_ch_once 
+3114 204032d0 call g24_set_rega_ifetch_1byte 
+3115 205a312c call g24_kb_config_ch_once ,blank 
+3116 58000184 setarg offset_24g_kb_last_ch 
+3117 204032d0 call g24_set_rega_ifetch_1byte 
+3118 2040322f call g24_store_mem_ch 
+3119 1a60a2f6 add regc ,offset_rssi_noise_kb_index ,rega 
+311a ea288000 ifetcht 1 ,rega 
+311b da20109e arg mem_rssi_noise_kb_buffer ,rega 
+311c 20402e58 call rssi_noise_store 
+311d 1a608af6 add regc ,offset_rssi_noise_kb_index ,contw 
+311e e0a88000 istoret 1 ,contw 
+311f 20402f94 call g24_noise_rssi_average 
+3120 1a608af9 add regc ,offset_rssi_noise_kb_avg ,contw 
+3121 e0a88000 istoret 1 ,contw 
+3122 18467c50 sub temp ,rssi_thresh_noise ,null 
+3123 24610000 nrtn positive 
+3124 58000185 setarg offset_24g_kb_ch_number 
+3125 20403275 call g24_set_rega_ifetcht_1byte 
+3126 20402c90 call g24_ch_temp_incre_size4 
+3127 da200185 arg offset_24g_kb_ch_number ,rega 
+3128 204032c8 call g24_set_contw_with_regb2 
+3129 e0a88000 istoret 1 ,contw 
+
+g24_store_mem_kb_last_ch:
+312a da200184 arg offset_24g_kb_last_ch ,rega 
+312b 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_kb_config_ch_once:
+312c 58000001 setarg 1 
+312d da200186 arg offset_24g_kb_config_ch_once ,rega 
+312e 204032b3 call g24_set_contw_with_regb_store_1byte 
+312f d8400000 arg 0 ,temp 
+3130 20402c94 call g24_ch_calc 
+3131 2020312a branch g24_store_mem_kb_last_ch 
+
+g24_rx_auto_bind_config_dongle:
+3132 20402fdf call g24_dongle_bind_ms_payload_cfg 
+3133 2040327d call g24_fetch_mem_rx_addr 
+3134 2040322c call g24_store_mem_addr 
+3135 58000183 setarg offset_24g_dg_config_ch_once 
+3136 204032d0 call g24_set_rega_ifetch_1byte 
+3137 205a314c call g24_dg_config_ch_once ,blank 
+3138 2040314f call g24_dg_store_config_ch 
+3139 1a60a2f5 add regc ,offset_rssi_noise_dg_index ,rega 
+313a ea288000 ifetcht 1 ,rega 
+313b da200e9e arg mem_rssi_noise_dg_buffer ,rega 
+313c 20402e58 call rssi_noise_store 
+313d 1a608af5 add regc ,offset_rssi_noise_dg_index ,contw 
+313e e0a88000 istoret 1 ,contw 
+313f 20402f94 call g24_noise_rssi_average 
+3140 1a608af8 add regc ,offset_rssi_noise_dg_avg ,contw 
+3141 e0a88000 istoret 1 ,contw 
+3142 18467c50 sub temp ,rssi_thresh_noise ,null 
+3143 24610000 nrtn positive 
+3144 58000182 setarg offset_24g_dg_ch_number 
+3145 20403275 call g24_set_rega_ifetcht_1byte 
+3146 20402c90 call g24_ch_temp_incre_size4 
+3147 da200182 arg offset_24g_dg_ch_number ,rega 
+3148 204032c8 call g24_set_contw_with_regb2 
+3149 e0a88000 istoret 1 ,contw 
+
+g24_store_mem_dg_last_ch:
+314a da200181 arg offset_24g_dg_last_ch ,rega 
+314b 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_dg_config_ch_once:
+314c 58000001 setarg 1 
+314d da200183 arg offset_24g_dg_config_ch_once ,rega 
+314e 204032b3 call g24_set_contw_with_regb_store_1byte 
+
+g24_dg_store_config_ch:
+314f 58000181 setarg offset_24g_dg_last_ch 
+3150 204032d0 call g24_set_rega_ifetch_1byte 
+3151 2020322f branch g24_store_mem_ch 
+
+g24_transmit_ack:
+3152 1a60a200 add regc ,offset_24g_rxbuf ,rega 
+3153 ea208000 ifetch 1 ,rega 
+3154 2040323c call g24_store_mem_data_type 
+3155 20402dde call g24_read_len_pid_crc 
+3156 2040325f call g24_fetch_mem_rxbuf_add1 
+3157 2feffe00 isolate1 bit_ack_24g ,pdata 
+3158 2020b15c branch g24tx_no_ack ,true 
+
+g24tx_with_ack:
+3159 2040315d call g24_ackpayload_prep 
+315a 20402d53 call g24_transmit_prep 
+315b 20402df7 call g24_transmit 
+
+g24tx_no_ack:
+315c 20202e45 branch g24_end_of_packet 
+
+g24_ackpayload_prep:
+315d 44e14018 bpatch patch18_2 ,mem_patch18 
+315e 1a608a86 add regc ,offset_24g_datalen ,contw 
+315f 204032d6 call g24_mem_set0 
+3160 5800013b setarg offset_24g_ackpayload_enable 
+3161 204032d0 call g24_set_rega_ifetch_1byte 
+3162 207a0000 rtn blank 
+3163 58000006 setarg 0x06 
+3164 1a608a86 add regc ,offset_24g_datalen ,contw 
+3165 e0a08000 istore 1 ,contw 
+3166 df200006 arg 0x06 ,loopcnt 
+3167 5800012f setarg offset_24g_bind_payload 
+3168 9a608c00 iadd regc ,contr 
+3169 1a608a22 add regc ,offset_24g_txbuf ,contw 
+316a 20207f01 branch memcpy 
+
+g24_receive_packet_start:
+316b 2040316e call g24_receive_transmit_ack 
+316c 2437af5e nbranch g24_rx_interrupt_clear ,user3 
+316d 20203172 branch g24_receive_packet_parse 
+
+g24_receive_transmit_ack:
+316e 20402f5e call g24_rx_interrupt_clear 
+316f 20402e11 call g24_receive_packet 
+3170 24778000 nrtn user3 
+3171 20203152 branch g24_transmit_ack 
+
+g24_receive_packet_parse:
+3172 44e1c018 bpatch patch18_3 ,mem_patch18 
+3173 20403188 call g24_receive_packet_parse_pid_crc 
+3174 24342f5e nbranch g24_rx_interrupt_clear ,user 
+3175 1a60a284 add regc ,offset_24g_rxdata_length ,rega 
+3176 ea208000 ifetch 1 ,rega 
+3177 203a2f5e branch g24_rx_interrupt_clear ,blank 
+3178 1fe0fe02 increase 2 ,pdata 
+3179 98007200 iforce loopcnt 
+317a 1a608c00 add regc ,offset_24g_rxbuf ,contr 
+317b 58000109 setarg offset_24g_rxdata_temp 
+317c 9a608a00 iadd regc ,contw 
+317d 20407f01 call memcpy 
+317e 20403286 call g24_set0_mem_mode_switch 
+317f 204032b6 call g24_fetch_mem_pair_mode 
+3180 205a3093 call g24_enable_nodata_timer ,blank 
+3181 5800010b setarg offset_24g_rxdata_temp_add2 
+3182 204032d0 call g24_set_rega_ifetch_1byte 
+3183 c000b19e beq 0x01 ,g24_data_type1 
+3184 c00131c6 beq 0x02 ,g24_data_type2 
+3185 c001b1f2 beq 0x03 ,g24_data_type3 
+3186 c07fb212 beq 0xff ,g24_data_attemp 
+3187 20202f5e branch g24_rx_interrupt_clear 
+
+g24_receive_packet_parse_pid_crc:
+3188 20402c7a call g24_head_ptr2regc 
+3189 20407fe9 call disable_user 
+318a 1a60a2ca add regc ,offset_24g_sta_pid ,rega 
+318b ea208000 ifetch 1 ,rega 
+318c 1a60a2cb add regc ,offset_24g_last_pid ,rega 
+318d ea288000 ifetcht 1 ,rega 
+318e 98467c00 isub temp ,null 
+318f 2442ffe7 ncall enable_user ,zero 
+3190 1a60a2ca add regc ,offset_24g_sta_pid ,rega 
+3191 ea208000 ifetch 1 ,rega 
+3192 1a608acb add regc ,offset_24g_last_pid ,contw 
+3193 e0a08000 istore 1 ,contw 
+3194 1a60a2c4 add regc ,offset_24g_sta_crc ,rega 
+3195 ea218000 ifetch 3 ,rega 
+3196 1a60a2c7 add regc ,offset_24g_last_crc ,rega 
+3197 ea298000 ifetcht 3 ,rega 
+3198 98467c00 isub temp ,null 
+3199 2442ffe7 ncall enable_user ,zero 
+319a 1a60a2c4 add regc ,offset_24g_sta_crc ,rega 
+319b ea218000 ifetch 3 ,rega 
+319c 1a608ac7 add regc ,offset_24g_last_crc ,contw 
+319d 202032c5 branch g24_contw_istore_3byte 
+
+g24_data_type1:
+319e 20402f88 call g24_ch_timer_reinit 
+319f 2040324c call g24_fetch_mem_abort_pac 
+31a0 60008aa2 store 1 ,mem_temp 
+31a1 20403274 call g24_fetcht_mem_rxdata_temp 
+31a2 68008aa2 fetch 1 ,mem_temp 
+31a3 284ffe03 isolate1 bit_abort ,temp 
+31a4 7920fe00 setflag true ,0 ,pdata 
+31a5 1a608ab2 add regc ,offset_24g_abort_pac ,contw 
+31a6 e0a08000 istore 1 ,contw 
+31a7 c000b216 beq 1 ,g24_data_attemp_mouse 
+31a8 20403245 call g24_fetch_mem_hop_pac 
+31a9 20403274 call g24_fetcht_mem_rxdata_temp 
+31aa 284ffe04 isolate1 bit_hop ,temp 
+31ab 7920fe00 setflag true ,0 ,pdata 
+31ac 20403249 call g24_store_mem_hop_pac 
+31ad 1a60a2de add regc ,offset_24g_cb_rxdata_type1 ,rega 
+31ae ea210000 ifetch 2 ,rega 
+31af 20207f9c branch callback_func 
+
+dongle_rxdata_type1:
+31b0 58000001 setarg ms_report_id 
+31b1 60008d54 store 1 ,mem_usb_mouse_data 
+31b2 2040329e call g24_fetch_mem_rxdata_temp_add3_7byte 
+31b3 e0a38000 istore 7 ,contw 
+31b4 2040329e call g24_fetch_mem_rxdata_temp_add3_7byte 
+31b5 245a31bd ncall g24_ms_enable_blank_data_forcibly ,blank 
+31b6 2040329e call g24_fetch_mem_rxdata_temp_add3_7byte 
+31b7 205a31c2 call g24_ms_disable_blank_data_forcibly ,blank 
+
+g24_data_type1_usbtx_enable:
+31b8 700d5220 jam usb_ep2_ms ,mem_usb_ep2_data 
+
+g24_data_type1_usbtx_enable_ep2:
+31b9 68008d38 fetch 1 ,mem_usb_tx_enable 
+31ba 79207e02 set1 2 ,pdata 
+31bb 60008d38 store 1 ,mem_usb_tx_enable 
+31bc 20600000 rtn 
+
+g24_ms_enable_blank_data_forcibly:
+31bd 58000001 setarg 1 
+31be 204032a8 call g24_store_mem_ms_blank_data_enable 
+
+g24_ms_enable_blank_data_timer:
+31bf 58000140 setarg timer_ms_blank_delay 
+31c0 d8e0000b arg timer_ms_blank ,queue 
+31c1 20207f08 branch timer_init 
+
+g24_ms_disable_blank_data_forcibly:
+31c2 204032a7 call g24_set0_mem_ms_blank_data_enable 
+
+g24_ms_disable_blank_data_timer:
+31c3 58000000 setarg 0 
+31c4 d8e0000b arg timer_ms_blank ,queue 
+31c5 20207f08 branch timer_init 
+
+g24_data_type2:
+31c6 20403274 call g24_fetcht_mem_rxdata_temp 
+31c7 284ffe03 isolate1 bit_abort ,temp 
+31c8 2020b21b branch g24_data_attemp_kbd ,true 
+31c9 d8a00d64 arg mem_usb_kb_data ,contw 
+31ca 204031e0 call g24_data_type2_reverse_data 
+31cb 68040d64 fetch 8 ,mem_usb_kb_data 
+31cc 245a31e4 ncall g24_kb_enable_blank_data_forcibly ,blank 
+31cd 68040d64 fetch 8 ,mem_usb_kb_data 
+31ce 205a31e9 call g24_kb_disable_blank_data_forcibly ,blank 
+31cf 20402c7a call g24_head_ptr2regc 
+31d0 68040d64 fetch 8 ,mem_usb_kb_data 
+31d1 da200168 arg offset_24g_kb_data_sta_data ,rega 
+31d2 204032bf call g24_set_contw_with_temp 
+31d3 e0a40000 istore 8 ,contw 
+31d4 58000170 setarg offset_24g_kb_data_last_data 
+31d5 9a60a200 iadd regc ,rega 
+31d6 ea2c0000 ifetcht 8 ,rega 
+31d7 98467c00 isub temp ,null 
+31d8 2442b1ed ncall g24_kb_data_dispose ,zero 
+31d9 58000168 setarg offset_24g_kb_data_sta_data 
+31da 9a60a200 iadd regc ,rega 
+31db ea240000 ifetch 8 ,rega 
+31dc da200170 arg offset_24g_kb_data_last_data ,rega 
+31dd 204032bf call g24_set_contw_with_temp 
+31de e0a40000 istore 8 ,contw 
+31df 20202f5e branch g24_rx_interrupt_clear 
+
+g24_data_type2_reverse_data:
+31e0 5800010b setarg offset_24g_rxdata_temp_add2 
+31e1 9a608c00 iadd regc ,contr 
+31e2 df200009 arg 9 ,loopcnt 
+31e3 20207ff3 branch reverse_byte 
+
+g24_kb_enable_blank_data_forcibly:
+31e4 58000001 setarg 1 
+31e5 204032ab call g24_store_mem_kb_blank_data_enable 
+
+g24_kb_enable_blank_data_timer:
+31e6 58000140 setarg timer_kb_blank_delay 
+31e7 d8e0000e arg timer_kb_blank ,queue 
+31e8 20207f08 branch timer_init 
+
+g24_kb_disable_blank_data_forcibly:
+31e9 204032aa call g24_set0_mem_kb_blank_data_enable 
+
+g24_kb_disable_blank_data_timer:
+31ea 58000000 setarg 0 
+31eb d8e0000e arg timer_kb_blank ,queue 
+31ec 20207f08 branch timer_init 
+
+g24_kb_data_dispose:
+
+g24_kb_data_into_ep1_fifo:
+31ed 700d5110 jam usb_ep1_kb ,mem_usb_ep1_data 
+31ee 68008d38 fetch 1 ,mem_usb_tx_enable 
+31ef 79207e01 set1 1 ,pdata 
+31f0 60008d38 store 1 ,mem_usb_tx_enable 
+31f1 20600000 rtn 
+
+g24_data_type3:
+31f2 d8a00d74 arg mem_usb_kb_multikey ,contw 
+31f3 204031e0 call g24_data_type2_reverse_data 
+31f4 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
+31f5 245a3209 ncall g24_kb_mul_enable_blank_data_forcibly ,blank 
+31f6 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
+31f7 205a320e call g24_kb_mul_disable_blank_data_forcibly ,blank 
+31f8 20402c7a call g24_head_ptr2regc 
+31f9 68018d74 fetch 3 ,mem_usb_kb_multikey 
+31fa da200178 arg offset_24g_kb_multikey_sta_data ,rega 
+31fb 204032c4 call g24_set_contw_with_temp_store_3byte 
+31fc 5800017b setarg offset_24g_kb_multikey_last_data 
+31fd 9a60a200 iadd regc ,rega 
+31fe ea298000 ifetcht 3 ,rega 
+31ff 98467c00 isub temp ,null 
+3200 2442b207 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
+3201 58000178 setarg offset_24g_kb_multikey_sta_data 
+3202 9a60a200 iadd regc ,rega 
+3203 ea218000 ifetch 3 ,rega 
+3204 da20017b arg offset_24g_kb_multikey_last_data ,rega 
+3205 204032c4 call g24_set_contw_with_temp_store_3byte 
+3206 20202f5e branch g24_rx_interrupt_clear 
+
+g24_kb_mul_data_into_ep2_fifo:
+3207 700d5221 jam usb_ep2_multikey ,mem_usb_ep2_data 
+3208 202031b9 branch g24_data_type1_usbtx_enable_ep2 
+
+g24_kb_mul_enable_blank_data_forcibly:
+3209 58000001 setarg 1 
+320a 204032ae call g24_store_mem_kb_mul_blank_data_enable 
+
+g24_kb_mul_enable_blank_data_timer:
+320b 58000140 setarg timer_kb_mul_blank_delay 
+320c d8e0000c arg timer_kb_mul_blank ,queue 
+320d 20207f08 branch timer_init 
+
+g24_kb_mul_disable_blank_data_forcibly:
+320e 204032ad call g24_set0_mem_kb_mul_blank_data_enable 
+
+g24_kb_mul_disable_blank_data_timer:
+320f 58000000 setarg 0 
+3210 d8e0000c arg timer_kb_mul_blank ,queue 
+3211 20207f08 branch timer_init 
+
+g24_data_attemp:
+3212 204032bd call g24_fetch_mem_rxdata_temp_add3_1byte 
+3213 c000b216 beq datatype_mouse ,g24_data_attemp_mouse 
+3214 c001321b beq datatype_keyboard ,g24_data_attemp_kbd 
+3215 20600000 rtn 
+
+g24_data_attemp_mouse:
+3216 5800010d setarg offset_24g_rxdata_temp_add4 
+3217 2040327e call g24_set_rega_ifetch_4byte 
+3218 da200160 arg offset_24g_mouse_addr ,rega 
+3219 204032bf call g24_set_contw_with_temp 
+321a 2020322d branch g24_contw_istore_4byte 
+
+g24_data_attemp_kbd:
+321b 5800010d setarg offset_24g_rxdata_temp_add4 
+321c 2040327e call g24_set_rega_ifetch_4byte 
+321d da200164 arg offset_24g_kb_addr ,rega 
+321e 204032bf call g24_set_contw_with_temp 
+321f 2020322d branch g24_contw_istore_4byte 
+
+g24_store_mem_24g_mode:
+3220 20402c7a call g24_head_ptr2regc 
+3221 1a608acd add regc ,offset_24g_mode ,contw 
+3222 e0a08000 istore 1 ,contw 
+3223 20600000 rtn 
+
+g24_fetch_mem_device_addr:
+3224 20402c7a call g24_head_ptr2regc 
+3225 1a60a2be add regc ,offset_24g_device_addr ,rega 
+3226 2020327f branch g24_rega_ifetch_4byte 
+
+g24_store_mem_device_addr:
+3227 20402c7a call g24_head_ptr2regc 
+3228 1a608abe add regc ,offset_24g_device_addr ,contw 
+3229 2020322d branch g24_contw_istore_4byte 
+
+g24_fetch_mem_addr:
+322a 1a60a2ae add regc ,offset_24g_addr ,rega 
+322b 2020327f branch g24_rega_ifetch_4byte 
+
+g24_store_mem_addr:
+322c 1a608aae add regc ,offset_24g_addr ,contw 
+
+g24_contw_istore_4byte:
+322d e0a20000 istore 4 ,contw 
+322e 20600000 rtn 
+
+g24_store_mem_ch:
+322f 1a608a90 add regc ,offset_24g_ch ,contw 
+3230 202032b4 branch g24_contw_istore_1byte 
+
+g24_set0_mem_pid:
+3231 58000000 setarg 0 
+
+g24_store_mem_pid:
+3232 20402c7a call g24_head_ptr2regc 
+3233 1a608a85 add regc ,offset_24g_pid ,contw 
+3234 202032b4 branch g24_contw_istore_1byte 
+
+g24_store_mem_txpayload:
+3235 1a608a42 add regc ,offset_24g_txpayload ,contw 
+3236 202032b4 branch g24_contw_istore_1byte 
+
+g24_set4_mem_max_retry:
+3237 58000004 setarg 4 
+
+g24_store_mem_max_retry:
+3238 1a608acc add regc ,offset_24g_max_retry ,contw 
+3239 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetch_mem_data_type:
+323a 1a60a287 add regc ,offset_24g_data_type ,rega 
+323b 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_store_mem_data_type:
+323c 1a608a87 add regc ,offset_24g_data_type ,contw 
+323d 202032b4 branch g24_contw_istore_1byte 
+
+g24_set2_mem_sync_cnt:
+323e 58000002 setarg 2 
+
+g24_store_mem_sync_cnt:
+323f 1a608ad0 add regc ,offset_24g_sync_cnt ,contw 
+3240 202032b4 branch g24_contw_istore_1byte 
+
+g24_set1_mem_rf_last_sta:
+3241 58000001 setarg 1 
+
+g24_store_mem_rf_last_sta:
+3242 20402c7a call g24_head_ptr2regc 
+3243 1a608ace add regc ,offset_24g_rf_last_sta ,contw 
+3244 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetch_mem_hop_pac:
+3245 20402c7a call g24_head_ptr2regc 
+3246 1a60a2b4 add regc ,offset_24g_hop_pac ,rega 
+3247 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_set1_mem_hop_pac:
+3248 58000001 setarg 1 
+
+g24_store_mem_hop_pac:
+3249 20402c7a call g24_head_ptr2regc 
+324a 1a608ab4 add regc ,offset_24g_hop_pac ,contw 
+324b 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetch_mem_abort_pac:
+324c 20402c7a call g24_head_ptr2regc 
+324d 1a60a2b2 add regc ,offset_24g_abort_pac ,rega 
+324e 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_set1_mem_abort_pac:
+324f 58000001 setarg 1 
+
+g24_store_mem_abort_pac:
+3250 20402c7a call g24_head_ptr2regc 
+3251 1a608ab2 add regc ,offset_24g_abort_pac ,contw 
+3252 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetch_mem_pairing_sm:
+3253 20402c7a call g24_head_ptr2regc 
+3254 1a60a296 add regc ,offset_24g_pairing_sm ,rega 
+3255 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_store_mem_pairing_sm:
+3256 1a608a96 add regc ,offset_24g_pairing_sm ,contw 
+3257 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetch_mem_rf_hop_ch:
+3258 1a60a2cf add regc ,offset_24g_rf_hop_ch ,rega 
+3259 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_set0_mem_rf_hop_ch:
+325a 58000000 setarg 0 
+
+g24_store_mem_rf_hop_ch:
+325b 1a608acf add regc ,offset_24g_rf_hop_ch ,contw 
+325c 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetch_mem_rf_work_stage:
+325d 1a60a2d2 add regc ,offset_24g_rf_work_stage ,rega 
+325e 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_fetch_mem_rxbuf_add1:
+325f 1a60a201 add regc ,offset_24g_rxbuf_add1 ,rega 
+3260 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_fetch_mem_check_dongle_times:
+3261 1a60a2b5 add regc ,offset_24g_check_dongle_times ,rega 
+3262 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_set0_mem_check_dongle_times:
+3263 58000000 setarg 0 
+
+g24_store_mem_check_dongle_times:
+3264 20402c7a call g24_head_ptr2regc 
+3265 1a608ab5 add regc ,offset_24g_check_dongle_times ,contw 
+3266 202032b4 branch g24_contw_istore_1byte 
+
+g24_store_mem_tx_power:
+3267 20402c7a call g24_head_ptr2regc 
+3268 1a60a2fb add regc ,offset_tx_power_temp ,rega 
+3269 ea208000 ifetch 1 ,rega 
+
+g24_store_mem_txpower:
+326a 6000c1de store 1 ,mem_tx_power 
+326b 20600000 rtn 
+
+g24_store_mem_tx_power_temp:
+326c 20402c7a call g24_head_ptr2regc 
+326d 6800c1de fetch 1 ,mem_tx_power 
+326e 1a608afb add regc ,offset_tx_power_temp ,contw 
+326f 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetch_mem_power_ctrl_pac:
+3270 1a60a2fc add regc ,offset_power_ctrl_packet_cnt ,rega 
+3271 202032d1 branch g24_rega_ifetch_1byte 
+
+g24_store_mem_power_ctrl_level:
+3272 1a608afe add regc ,offset_power_ctrl_level ,contw 
+3273 202032b4 branch g24_contw_istore_1byte 
+
+g24_fetcht_mem_rxdata_temp:
+3274 58000109 setarg offset_24g_rxdata_temp 
+
+g24_set_rega_ifetcht_1byte:
+3275 9a60a200 iadd regc ,rega 
+3276 ea288000 ifetcht 1 ,rega 
+3277 20600000 rtn 
+
+g24_fetch_mem_rf_laststa:
+3278 58000135 setarg offset_24g_rf_laststa 
+3279 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_set0_mem_rf_laststa:
+327a 58000000 setarg 0 
+
+g24_store_mem_rf_laststa:
+327b da200135 arg offset_24g_rf_laststa ,rega 
+327c 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_fetch_mem_rx_addr:
+327d 5800012b setarg offset_24g_rx_addr 
+
+g24_set_rega_ifetch_4byte:
+327e 204032cd call g24_set_rega 
+
+g24_rega_ifetch_4byte:
+327f ea220000 ifetch 4 ,rega 
+3280 20600000 rtn 
+
+g24_fetch_mem_time_slice:
+3281 5800015f setarg offset_24g_time_slice 
+3282 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_set0_mem_time_slice:
+3283 58000000 setarg 0 
+
+g24_store_mem_time_slice:
+3284 da20015f arg offset_24g_time_slice ,rega 
+3285 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_set0_mem_mode_switch:
+3286 58000000 setarg 0 
+
+g24_store_mem_mode_switch:
+3287 da20015c arg offset_24g_mode_switch ,rega 
+3288 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_store_mem_bind_payload:
+3289 da20012f arg offset_24g_bind_payload ,rega 
+328a 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_fetch_mem_bind_device_status:
+328b 58000108 setarg offset_dongle_bind_device_status 
+328c 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_store_mem_bind_device_status:
+328d da200108 arg offset_dongle_bind_device_status ,rega 
+328e 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_fetch_mem_dongle_work_mode:
+328f 58000105 setarg offset_dongle_work_mode 
+3290 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_set_work_mem_dongle_work_mode:
+3291 58000000 setarg dongle_work 
+
+g24_store_mem_dongle_work_mode:
+3292 da200105 arg offset_dongle_work_mode ,rega 
+3293 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_fetch_mem_dongle_mode_init:
+3294 58000104 setarg offset_dongle_mode_init 
+3295 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_set0_mem_dongle_mode_init:
+3296 58000000 setarg clear_init 
+
+g24_store_mem_dongle_mode_init:
+3297 da200104 arg offset_dongle_mode_init ,rega 
+3298 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_set0_mem_ackpayload_enable:
+3299 58000000 setarg 0 
+
+g24_store_mem_ackpayload_enable:
+329a da20013b arg offset_24g_ackpayload_enable ,rega 
+329b 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_set1_mem_ackpayload_enable:
+329c 58000001 setarg 1 
+329d 2020329a branch g24_store_mem_ackpayload_enable 
+
+g24_fetch_mem_rxdata_temp_add3_7byte:
+329e 5800010c setarg offset_24g_rxdata_temp_add3 
+329f 204032cd call g24_set_rega 
+32a0 ea238000 ifetch 7 ,rega 
+32a1 20600000 rtn 
+
+g24_fetch_mem_nodata_timer_enable:
+32a2 5800015e setarg offset_24g_nodata_timer_enable 
+32a3 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_set0_mem_nodata_timer_enable:
+32a4 58000000 setarg 0 
+
+g24_store_mem_nodata_timer_enable:
+32a5 da20015e arg offset_24g_nodata_timer_enable ,rega 
+32a6 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_set0_mem_ms_blank_data_enable:
+32a7 58000000 setarg 0 
+
+g24_store_mem_ms_blank_data_enable:
+32a8 da200180 arg offset_24g_ms_blank_data_enable ,rega 
+32a9 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_set0_mem_kb_blank_data_enable:
+32aa 58000000 setarg 0 
+
+g24_store_mem_kb_blank_data_enable:
+32ab da20017e arg offset_24g_kb_blank_data_enable ,rega 
+32ac 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_set0_mem_kb_mul_blank_data_enable:
+32ad 58000000 setarg 0 
+
+g24_store_mem_kb_mul_blank_data_enable:
+32ae da20017f arg offset_24g_kb_mul_blank_data_enable ,rega 
+32af 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_store_mem_power_ctrl_threshold_up:
+32b0 da200102 arg offset_power_ctrl_threshold_up ,rega 
+32b1 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_store_mem_power_ctrl_threshold_down:
+32b2 da200103 arg offset_power_ctrl_threshold_down ,rega 
+
+g24_set_contw_with_regb_store_1byte:
+32b3 204032c7 call g24_set_contw_with_regb 
+
+g24_contw_istore_1byte:
+32b4 e0a08000 istore 1 ,contw 
+32b5 20600000 rtn 
+
+g24_fetch_mem_pair_mode:
+32b6 5800015d setarg offset_24g_pair_mode 
+32b7 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_store_mem_pair_mode:
+32b8 da20015d arg offset_24g_pair_mode ,rega 
+32b9 202032b3 branch g24_set_contw_with_regb_store_1byte 
+
+g24_store_mem_pair_txpower:
+32ba 5800018a setarg offset_24g_pair_txpower 
+32bb 204032d0 call g24_set_rega_ifetch_1byte 
+32bc 2020326a branch g24_store_mem_txpower 
+
+g24_fetch_mem_rxdata_temp_add3_1byte:
+32bd 5800010c setarg offset_24g_rxdata_temp_add3 
+32be 202032d0 branch g24_set_rega_ifetch_1byte 
+
+g24_set_contw_with_temp:
+32bf 1fe20400 copy pdata ,temp 
+32c0 1a227e00 copy rega ,pdata 
+32c1 9a608a00 iadd regc ,contw 
+32c2 18427e00 copy temp ,pdata 
+32c3 20600000 rtn 
+
+g24_set_contw_with_temp_store_3byte:
+32c4 204032bf call g24_set_contw_with_temp 
+
+g24_contw_istore_3byte:
+32c5 e0a18000 istore 3 ,contw 
+32c6 20600000 rtn 
+
+g24_set_contw_with_regb:
+32c7 20402c7a call g24_head_ptr2regc 
+
+g24_set_contw_with_regb2:
+32c8 1fe22400 copy pdata ,regb 
+32c9 1a227e00 copy rega ,pdata 
+32ca 9a608a00 iadd regc ,contw 
+32cb 1a427e00 copy regb ,pdata 
+32cc 20600000 rtn 
+
+g24_set_rega:
+32cd 20402c7a call g24_head_ptr2regc 
+32ce 9a60a200 iadd regc ,rega 
+32cf 20600000 rtn 
+
+g24_set_rega_ifetch_1byte:
+32d0 204032cd call g24_set_rega 
+
+g24_rega_ifetch_1byte:
+32d1 ea208000 ifetch 1 ,rega 
+32d2 20600000 rtn 
+
+g24_set_rega_ifetcht_4byte:
+32d3 204032cd call g24_set_rega 
+32d4 ea2a0000 ifetcht 4 ,rega 
+32d5 20600000 rtn 
+
+g24_mem_set0:
+32d6 58000000 setarg 0 
+32d7 202032b4 branch g24_contw_istore_1byte 
+
+app_init:
+32d8 44e24018 bpatch patch18_4 ,mem_patch18 
+32d9 6800c092 fetch 1 ,mem_device_option 
+32da 203a32d8 branch app_init ,blank 
+32db c0022f30 beq dvc_op_dongle ,dongle_init 
+32dc c007b436 beq dvc_op_antilost ,antilost_init 
+32dd c004c5de beq dvc_op_shutter ,shutter_init 
+32de c005392a beq dvc_op_module ,module_init 
+32df c00735bf beq dvc_op_car ,car_init 
+32e0 c00844a4 beq dvc_op_remote_car ,remote_car_init 
+32e1 c2833d00 bbit1 dvc_op_mouse ,mouse_init 
+32e2 20600000 rtn 
+
+app_lpm_init:
+32e3 44e2c018 bpatch patch18_5 ,mem_patch18 
+32e4 70015100 jam 0 ,mem_tester_emulate 
+32e5 70017f00 jam 0 ,mem_debug_config 
+32e6 70018000 jam 0 ,mem_lch_code 
+32e7 58000000 setarg 0 
+32e8 600289ae store 5 ,mem_sp_state_start 
+32e9 6800c092 fetch 1 ,mem_device_option 
+32ea 203a32e3 branch app_lpm_init ,blank 
+32eb c0053962 beq dvc_op_module ,module_lpm_init 
+
+app_lpm_init0:
+32ec 20600000 rtn 
+
+app_process_idle:
+32ed 20407cd1 call ui_dispatch 
+32ee 20407d9c call check_51cmd 
+32ef 204032f6 call app_process_bb_event 
+32f0 680141f3 fetch 2 ,mem_cb_idle_process 
+32f1 20207f9c branch callback_func 
+
+app_process_bt:
+32f2 680141f1 fetch 2 ,mem_cb_bt_process 
+32f3 20207f9c branch callback_func 
+
+app_process_ble:
+32f4 680141ef fetch 2 ,mem_cb_le_process 
+32f5 20207f9c branch callback_func 
+
+app_process_bb_event:
+32f6 44e34018 bpatch patch18_6 ,mem_patch18 
+32f7 da204668 arg mem_ipc_fifo_bt2c51 ,rega 
+32f8 20407fc4 call fifo_out 
+32f9 207a0000 rtn blank 
+32fa 1fe22600 copy pdata ,regc 
+32fb 204032ff call app_event_normal_process 
+32fc 20203324 branch app_process_bb_event_priority 
+
+app_discard_event:
+32fd da600000 arg 0 ,regc 
+32fe 20600000 rtn 
+
+app_event_normal_process:
+32ff c000b311 beq bt_evt_bb_connected ,app_evt_bt_conn 
+3300 c0083357 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
+3301 c002b335 beq bt_evt_setup_complete ,app_evt_setup_complete 
+3302 c009333c beq bt_evt_hid_handshake ,app_evt_hid_handshake 
+3303 c0033353 beq bt_evt_hid_connected ,app_bb_event_hid_connected 
+3304 c0023394 beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
+3305 c0013399 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
+3306 c009b394 beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
+3307 c00a334b beq bt_evt_le_connected ,app_le_event_bb_connected 
+3308 c00ab34f beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
+3309 c001b32e beq bt_evt_reconn_started ,app_event_reconn_start 
+330a c005b340 beq bt_evt_enter_sniff ,app_event_enter_sniff 
+330b c0063347 beq bt_evt_exit_sniff ,app_event_exit_sniff 
+330c c00b335b beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
+330d c00c332a beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
+330e c015331a beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
+330f c015b318 beq bt_evt_switch_success_master ,app_event_switch_success 
+3310 20600000 rtn 
+
+app_evt_bt_conn:
+3311 68014682 fetch 2 ,mem_ui_state_map 
+3312 79207e00 set1 ui_state_bt_connected ,pdata 
+3313 60014682 store 2 ,mem_ui_state_map 
+3314 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3315 793ffe00 set0 app_disc_by_button ,pdata 
+3316 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3317 20600000 rtn 
+
+app_event_switch_success:
+3318 70022900 jam 0 ,mem_switch_fail_master_count 
+3319 20600000 rtn 
+
+app_event_switch_fail_master:
+331a 68008229 fetch 1 ,mem_switch_fail_master_count 
+331b 1fe0fe01 increase 1 ,pdata 
+331c 60008229 store 1 ,mem_switch_fail_master_count 
+331d 1fe67c01 sub pdata ,1 ,null 
+331e 202133df branch app_bt_role_switch ,positive 
+331f 70022900 jam 0 ,mem_switch_fail_master_count 
+3320 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3321 79207e09 set1 app_disc_switch_fail ,pdata 
+3322 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3323 202033e9 branch app_bt_disconnect 
+
+app_process_bb_event_priority:
+3324 680141f5 fetch 2 ,mem_cb_bb_event_process 
+3325 20207f9c branch callback_func 
+
+app_check_wake_lock:
+3326 680141e9 fetch 2 ,mem_cb_check_wakelock 
+3327 20207f9c branch callback_func 
+
+app_will_enter_lpm:
+3328 680141ed fetch 2 ,mem_cb_before_lpm 
+3329 20207f9c branch callback_func 
+
+app_event_linkkey_generate:
+332a 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+332b 79207e01 set1 app_disc_after_pairing ,pdata 
+332c 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+332d 20203412 branch app_bt_store_reconn_info 
+
+app_event_reconn_start:
+332e 68014682 fetch 2 ,mem_ui_state_map 
+332f 79207e07 set1 ui_state_bt_reconnect ,pdata 
+3330 60014682 store 2 ,mem_ui_state_map 
+3331 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3332 79207e02 set1 app_disc_after_reconn ,pdata 
+3333 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3334 20600000 rtn 
+
+app_evt_setup_complete:
+3335 68014682 fetch 2 ,mem_ui_state_map 
+3336 79207e01 set1 ui_state_bt_setup_complete ,pdata 
+3337 60014682 store 2 ,mem_ui_state_map 
+3338 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3339 79207e04 set1 app_disc_after_setup_done ,pdata 
+333a 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+333b 20600000 rtn 
+
+app_evt_hid_handshake:
+333c 68014682 fetch 2 ,mem_ui_state_map 
+333d 79207e03 set1 ui_state_bt_hid_handshake ,pdata 
+333e 60014682 store 2 ,mem_ui_state_map 
+333f 20600000 rtn 
+
+app_event_enter_sniff:
+3340 68014682 fetch 2 ,mem_ui_state_map 
+3341 79207e05 set1 ui_state_bt_sniff ,pdata 
+3342 60014682 store 2 ,mem_ui_state_map 
+3343 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3344 79207e03 set1 app_disc_after_sniff ,pdata 
+3345 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3346 20600000 rtn 
+
+app_event_exit_sniff:
+3347 68014682 fetch 2 ,mem_ui_state_map 
+3348 793ffe05 set0 ui_state_bt_sniff ,pdata 
+3349 60014682 store 2 ,mem_ui_state_map 
+334a 20600000 rtn 
+
+app_le_event_bb_connected:
+334b 68014682 fetch 2 ,mem_ui_state_map 
+334c 79207e09 set1 ui_state_ble_connected ,pdata 
+334d 60014682 store 2 ,mem_ui_state_map 
+334e 20600000 rtn 
+
+app_le_event_bb_disconn:
+334f 68014682 fetch 2 ,mem_ui_state_map 
+3350 793ffe09 set0 ui_state_ble_connected ,pdata 
+3351 60014682 store 2 ,mem_ui_state_map 
+3352 20203418 branch app_lpm_mult_disable 
+
+app_bb_event_hid_connected:
+3353 68014682 fetch 2 ,mem_ui_state_map 
+3354 79207e02 set1 ui_state_bt_hid_conn ,pdata 
+3355 60014682 store 2 ,mem_ui_state_map 
+3356 20600000 rtn 
+
+app_evt_button_long_pressed:
+3357 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+3358 79207e00 set1 app_disc_by_button ,pdata 
+3359 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+335a 20600000 rtn 
+
+app_event_ml2cap_conn_refused:
+335b 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+335c 79207e08 set1 app_disc_l2cap_refused ,pdata 
+335d 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+335e 202033e9 branch app_bt_disconnect 
+
+app_evt_timer:
+335f 44e3c018 bpatch patch18_7 ,mem_patch18 
+3360 6000822a store 1 ,mem_app_evt_timer_count 
+
+app_evt_100ms_loop:
+3361 6800822a fetch 1 ,mem_app_evt_timer_count 
+3362 207a0000 rtn blank 
+3363 1fe0ffff increase -1 ,pdata 
+3364 6000822a store 1 ,mem_app_evt_timer_count 
+3365 20407cdd call ui_button_polling 
+3366 204033d6 call app_lpm_wake_auto_lock_timer 
+3367 20403387 call app_unsniff_delay_timer 
+3368 2040338d call app_discovery_timer 
+3369 2040651b call flash_write_spi_sm_timer 
+336a 680141fd fetch 2 ,mem_cb_event_timer 
+336b 20407f9c call callback_func 
+336c 20203361 branch app_evt_100ms_loop 
+
+timer_single_step:
+336d ea608000 ifetch 1 ,regc 
+336e 207a0000 rtn blank 
+336f 1fe0ffff pincrease -1 
+3370 e2608000 istore 1 ,regc 
+3371 247a0000 nrtn blank 
+3372 1a427e00 copy regb ,pdata 
+3373 20207f9c branch callback_func 
+
+timer_single_step_2b:
+3374 ea610000 ifetch 2 ,regc 
+3375 207a0000 rtn blank 
+3376 1fe0ffff pincrease -1 
+3377 e2610000 istore 2 ,regc 
+3378 247a0000 nrtn blank 
+3379 1a427e00 copy regb ,pdata 
+337a 20207f9c branch callback_func 
+
+app_power_timer:
+337b 6809423f fetcht 2 ,mem_power_param_ptr 
+337c 1840a601 add temp ,power_timer_offset ,regc 
+337d da40337f arg app_power_timer_timeout ,regb 
+337e 2020336d branch timer_single_step 
+
+app_power_timer_timeout:
+337f 2040342d call app_got_power_state_common 
+3380 c000b382 beq power_starting ,app_enter_power_stanby_state 
+
+app_enter_power_off_state:
+3381 2020340a branch app_enter_hibernate 
+
+app_enter_power_stanby_state:
+3382 58000002 setarg power_standby 
+3383 e2608000 istore 1 ,regc 
+3384 1840a408 add temp ,power_standby_cb_offset ,regb 
+
+app_power_cb_common:
+3385 ea410000 ifetch 2 ,regb 
+3386 20207f9c branch callback_func 
+
+app_unsniff_delay_timer:
+3387 da604205 arg mem_unsniff2sniff_timer_count ,regc 
+3388 da40338a arg app_unsniff_delay_timeout ,regb 
+3389 2020336d branch timer_single_step 
+
+app_unsniff_delay_timeout:
+338a 20402252 call context_check_idle 
+338b 2022b40e branch app_bt_enter_sniff ,zero 
+338c 20600000 rtn 
+
+app_discovery_timer:
+338d da60467e arg mem_discovery_timeout_timer_count ,regc 
+338e da403390 arg app_discovery_timeout ,regb 
+338f 20203374 branch timer_single_step_2b 
+
+app_discovery_timeout:
+3390 204033f0 call app_bt_stop_discovery 
+3391 20403408 call app_led_off 
+3392 680141f7 fetch 2 ,mem_cb_discovry_timeout 
+3393 20207f9c branch callback_func 
+
+app_bb_event_reconn_failed:
+3394 204033ac call app_disconn_reason_flag_clear 
+
+app_clear_reconnect_flag:
+3395 68014682 fetch 2 ,mem_ui_state_map 
+3396 793ffe07 set0 ui_state_bt_reconnect ,pdata 
+3397 60014682 store 2 ,mem_ui_state_map 
+3398 20600000 rtn 
+
+app_bb_event_bb_disconn:
+3399 70420500 jam 0 ,mem_unsniff2sniff_timer_count 
+339a 68014682 fetch 2 ,mem_ui_state_map 
+339b c283b39e bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
+339c 2fec0001 isolate0 ui_state_bt_setup_complete ,pdata 
+339d 2040b2fd call app_discard_event ,true 
+
+app_bb_event_bb_reconn_disconn:
+339e 44e44019 bpatch patch19_0 ,mem_patch19 
+339f 68014682 fetch 2 ,mem_ui_state_map 
+33a0 793ffe00 set0 ui_state_bt_connected ,pdata 
+33a1 793ffe01 set0 ui_state_bt_setup_complete ,pdata 
+33a2 793ffe02 set0 ui_state_bt_hid_conn ,pdata 
+33a3 793ffe03 set0 ui_state_bt_hid_handshake ,pdata 
+33a4 793ffe07 set0 ui_state_bt_reconnect ,pdata 
+33a5 60014682 store 2 ,mem_ui_state_map 
+33a6 20203418 branch app_lpm_mult_disable 
+
+app_bb_hibernate:
+33a7 204033a9 call app_disconn_reason_clear 
+33a8 2020340a branch app_enter_hibernate 
+
+app_disconn_reason_clear:
+33a9 58000000 setarg 0 
+33aa 60014208 store app_disc_rsn_size ,mem_app_disconn_reason 
+33ab 20600000 rtn 
+
+app_disconn_reason_flag_clear:
+33ac 58000000 setarg 0 
+33ad 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+33ae 20600000 rtn 
+
+app_disconn_reason_collect_bt:
+33af 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+33b0 60014208 store app_disc_rsn_size ,mem_app_disconn_reason 
+33b1 58000000 setarg 0 
+33b2 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+33b3 20600000 rtn 
+
+app_disconn_reason_collect_ble:
+33b4 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+33b5 79207e07 set1 app_disc_ble ,pdata 
+33b6 60014208 store app_disc_rsn_size ,mem_app_disconn_reason 
+33b7 58000000 setarg 0 
+33b8 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+33b9 20600000 rtn 
+
+app_check_sniff:
+33ba 6800c682 fetch 1 ,mem_ui_state_map 
+33bb 2feffe05 isolate1 ui_state_bt_sniff ,pdata 
+33bc 20600000 rtn 
+
+app_initflag_store:
+33bd 5800aa55 setarg eeprom_init_flag 
+
+app_flag_store:
+33be 60010aaa store 2 ,mem_timeup 
+33bf 44e4c019 bpatch patch19_1 ,mem_patch19 
+33c0 d8400002 arg 2 ,temp 
+33c1 da200aaa arg mem_timeup ,rega 
+33c2 da4000c3 arg eeprom_module_init_flag ,regb 
+33c3 20206606 branch iicd_write_eep_data 
+
+app_initflag_check:
+33c4 44e54019 bpatch patch19_2 ,mem_patch19 
+33c5 d8400002 arg 2 ,temp 
+33c6 da200a9a arg mem_pdatatemp ,rega 
+33c7 da4000c3 arg eeprom_module_init_flag ,regb 
+33c8 204065df call iicd_read_eep_data 
+33c9 68010a9a fetch 2 ,mem_pdatatemp 
+33ca d840aa55 arg eeprom_init_flag ,temp 
+33cb 98467c00 isub temp ,null 
+33cc 20600000 rtn 
+
+app_start_auto_sniff:
+33cd 6800c55a fetch 1 ,mem_unsniff2sniff_timer 
+33ce 6000c205 store 1 ,mem_unsniff2sniff_timer_count 
+33cf 20600000 rtn 
+
+app_get_lpm_wake_lock:
+33d0 d8e00009 arg wake_lock_app ,queue 
+33d1 20202c32 branch lpm_get_wake_lock 
+
+app_put_lpm_wake_lock:
+33d2 d8e00009 arg wake_lock_app ,queue 
+33d3 20202c36 branch lpm_put_wake_lock 
+
+app_lpm_wake_auto_lock:
+33d4 70420605 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
+33d5 202033d0 branch app_get_lpm_wake_lock 
+
+app_lpm_wake_auto_lock_timer:
+33d6 da604206 arg mem_wake_up_delay_timer ,regc 
+33d7 da4033d2 arg app_put_lpm_wake_lock ,regb 
+33d8 2020336d branch timer_single_step 
+
+app_l2cap_flow_control_enable:
+33d9 70436301 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
+33da 20600000 rtn 
+
+app_l2cap_flow_control_disable:
+33db 70436300 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
+33dc 20600000 rtn 
+
+app_bt_set_pincode:
+33dd 700a990a jam bt_cmd_set_pin_code ,mem_fifo_temp 
+33de 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_role_switch:
+33df 700a991d jam bt_cmd_role_switch ,mem_fifo_temp 
+33e0 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_start_reconnect:
+33e1 44e5c019 bpatch patch19_3 ,mem_patch19 
+33e2 6800c207 fetch 1 ,mem_app_connection_options 
+33e3 6000816d store 1 ,mem_connection_options 
+33e4 70022801 jam app_flag_reconnect ,mem_reconnect_flag 
+33e5 700a9903 jam bt_cmd_reconnect ,mem_fifo_temp 
+33e6 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_reconnect_cancel:
+33e7 700a991e jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
+33e8 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_disconnect:
+33e9 700a9904 jam bt_cmd_disconnect ,mem_fifo_temp 
+33ea 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_start_discovery_short:
+33eb 68014687 fetch 2 ,mem_discovery_timeout 
+33ec 6001467e store 2 ,mem_discovery_timeout_timer_count 
+
+app_bt_start_discovery_led_blink:
+33ed 20403404 call app_led_start_blink 
+
+app_bt_start_discovery:
+33ee 700a9901 jam bt_cmd_start_discovery ,mem_fifo_temp 
+33ef 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_stop_discovery:
+33f0 58000000 setarg 0 
+33f1 6001467e store 2 ,mem_discovery_timeout_timer_count 
+33f2 700a9902 jam bt_cmd_stop_discovery ,mem_fifo_temp 
+33f3 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_start_direct_adv:
+33f4 700a990f jam bt_cmd_start_direct_adv ,mem_fifo_temp 
+33f5 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_stop_direct_adv:
+33f6 700a9910 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
+33f7 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_stop_adv:
+33f8 700a990e jam bt_cmd_stop_adv ,mem_fifo_temp 
+33f9 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_start_adv:
+33fa 700a990d jam bt_cmd_start_adv ,mem_fifo_temp 
+33fb 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_start_scan:
+33fc 700a9917 jam bt_cmd_le_start_scan ,mem_fifo_temp 
+33fd 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_stop_scan:
+33fe 700a9918 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
+33ff 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_start_conn:
+3400 700a9916 jam bt_cmd_le_start_conn ,mem_fifo_temp 
+3401 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_disconnect:
+3402 700a9911 jam bt_cmd_le_disconnect ,mem_fifo_temp 
+3403 20207d8f branch ui_ipc_send_cmd 
+
+app_led_start_blink:
+3404 700a9915 jam bt_cmd_led_blink ,mem_fifo_temp 
+3405 20207d8f branch ui_ipc_send_cmd 
+
+app_led_on:
+3406 700a9914 jam bt_cmd_led_on ,mem_fifo_temp 
+3407 20207d8f branch ui_ipc_send_cmd 
+
+app_led_stop_blink:
+
+app_led_off:
+3408 700a9913 jam bt_cmd_led_off ,mem_fifo_temp 
+3409 20207d8f branch ui_ipc_send_cmd 
+
+app_enter_hibernate:
+340a 700a9919 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
+340b 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_sniff_exit:
+340c 700a9906 jam bt_cmd_exit_sniff ,mem_fifo_temp 
+340d 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_enter_sniff:
+340e 700a9905 jam bt_cmd_enter_sniff ,mem_fifo_temp 
+340f 20207d8f branch ui_ipc_send_cmd 
+
+app_ble_store_reconn_info:
+3410 700a991f jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
+3411 20207d8f branch ui_ipc_send_cmd 
+
+app_bt_store_reconn_info:
+3412 700a9920 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
+3413 20207d8f branch ui_ipc_send_cmd 
+
+app_store_reconn_info:
+3414 700a9925 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
+3415 20207d8f branch ui_ipc_send_cmd 
+
+app_lpm_mult_enable:
+3416 7920000d set1 mark_lpm_mult_enable ,mark 
+3417 20600000 rtn 
+
+app_lpm_mult_disable:
+3418 793f800d set0 mark_lpm_mult_enable ,mark 
+3419 20600000 rtn 
+
+app_button_long_pressed:
+341a 2040342d call app_got_power_state_common 
+341b c0013424 beq power_standby ,app_power_shutting_down 
+
+app_power_starting:
+341c 58000001 setarg power_starting 
+341d e2608000 istore 1 ,regc 
+341e 1840a203 add temp ,power_starting_timeout_offset ,rega 
+341f 1840a406 add temp ,power_starting_cb_offset ,regb 
+
+app_power_common:
+3420 ea288000 ifetcht 1 ,rega 
+3421 1a60a601 increase 1 ,regc 
+3422 e2688000 istoret 1 ,regc 
+3423 20203385 branch app_power_cb_common 
+
+app_power_shutting_down:
+3424 58000000 setarg power_off 
+3425 e2608000 istore 1 ,regc 
+3426 68014682 fetch 2 ,mem_ui_state_map 
+3427 c304b429 bbit0 ui_state_ble_connected ,app_power_off_end 
+3428 20403402 call app_ble_disconnect 
+
+app_power_off_end:
+3429 6809423f fetcht 2 ,mem_power_param_ptr 
+342a 1840a202 add temp ,power_off_timeout_offset ,rega 
+342b 1840a404 add temp ,power_off_cb_offset ,regb 
+342c 20203420 branch app_power_common 
+
+app_got_power_state_common:
+342d 6809423f fetcht 2 ,mem_power_param_ptr 
+342e 1840a600 add temp ,power_state_offset ,regc 
+342f ea608000 ifetch 1 ,regc 
+3430 20600000 rtn 
+
+app_event_button_up:
+3431 2040342d call app_got_power_state_common 
+3432 c0803434 bne power_off ,app_power_release 
+3433 2020340a branch app_enter_hibernate 
+
+app_power_release:
+3434 1840a40a add temp ,ui_butten_up_cb_offset ,regb 
+3435 20203385 branch app_power_cb_common 
+
+antilost_init:
+3436 20758000 rtn wake 
+3437 70808100 jam 0x00 ,core_gpio_sel1 
+3438 58003463 setarg antilost_le_before_hibernate 
+3439 600141eb store 2 ,mem_cb_before_hibernate 
+343a 5800696c setarg keyscan_process_lpm_before 
+343b 600141ed store 2 ,mem_cb_before_lpm 
+343c 580034f5 setarg antilost_idle_process 
+343d 600141f3 store 2 ,mem_cb_idle_process 
+343e 580034f4 setarg antilost_le_conn_process 
+343f 600141ef store 2 ,mem_cb_le_process 
+3440 5800347e setarg antilost_bb_event_process 
+3441 600141f5 store 2 ,mem_cb_bb_event_process 
+3442 580034b2 setarg antilost_le_bb_event_timer 
+3443 600141fd store 2 ,mem_cb_event_timer 
+3444 58003465 setarg antilost_le_notification 
+3445 600141fb store 2 ,mem_cb_ble_transmit 
+3446 58003470 setarg antilost_lpm_lock_process 
+3447 600141e9 store 2 ,mem_cb_check_wakelock 
+3448 58003501 setarg antilost_le_receive_data_process 
+3449 600141f9 store 2 ,mem_cb_att_write 
+344a 44e64019 bpatch patch19_4 ,mem_patch19 
+344b 2040359b call antilost_buzzer_pwm_init 
+344c 20406948 call keyscan_key_init 
+344d 204035ad call antilost_adc_init 
+344e 20407d08 call ui_led_init_global 
+344f 20407cd3 call ui_button_init 
+3450 5800350b setarg antilost_key_up_down 
+3451 60014766 store 2 ,mem_cb_antl_key 
+3452 580034fc setarg antilost_power_off_cb 
+3453 6001475d store 2 ,mem_antl_power_off_cb 
+3454 580034f8 setarg antilost_power_starting_cb 
+3455 6001475f store 2 ,mem_antl_power_starting_cb 
+3456 5800346c setarg antilost_power_standby_cb 
+3457 60014761 store 2 ,mem_antl_power_standby_cb 
+3458 580035a2 setarg antilost_led_on_cb 
+3459 600146a9 store 2 ,mem_antl_led_cb_on 
+345a 580035a4 setarg antilost_led_off_cb 
+345b 600146ab store 2 ,mem_antl_led_cb_off 
+345c 580035a9 setarg antilost_buzzer_on 
+345d 600146b4 store 2 ,mem_antl_buzzer_cb_on 
+345e 580035a6 setarg antilost_buzzer_off 
+345f 600146b6 store 2 ,mem_antl_buzzer_cb_off 
+3460 68014682 fetch 2 ,mem_ui_state_map 
+3461 c3860000 rtnbit1 ui_state_btn_down 
+3462 2020340a branch app_enter_hibernate 
+
+antilost_le_before_hibernate:
+3463 20403586 call antilost_led_buzzer_stop_blink 
+3464 2020340a branch app_enter_hibernate 
+
+antilost_le_notification:
+3465 20405892 call le_fifo_check_nearly_full 
+3466 247a0000 nrtn blank 
+3467 da200b06 arg mem_temp_block5 ,rega 
+3468 20407e54 call queue_pop 
+3469 24740000 nrtn user 
+346a d8c00b06 arg mem_temp_block5 ,contr 
+346b 20204746 branch le_send_notify_from_list 
+
+antilost_power_standby_cb:
+346c 68014797 fetch 2 ,mem_antl_le_sleep_timeout 
+346d 60014791 store 2 ,mem_antl_le_sleep_timer 
+346e 70475301 jam 1 ,mem_antl_key_scan_enable 
+346f 2020358f branch antilost_fast_adv_start 
+
+antilost_lpm_lock_process:
+3470 6800c79d fetch 1 ,mem_antl_key_state 
+3471 c000b479 beq 1 ,antilost_lpm_ctrl_for_led_buzzer 
+3472 68014682 fetch 2 ,mem_ui_state_map 
+3473 c304b479 bbit0 ui_state_ble_connected ,antilost_lpm_ctrl_for_led_buzzer 
+3474 6800c79e fetch 1 ,mem_antl_lost_mode 
+3475 c000b3d0 beq 1 ,app_get_lpm_wake_lock 
+3476 6800c700 fetch 1 ,mem_antl_queue_curr_num 
+3477 243a33d0 nbranch app_get_lpm_wake_lock ,blank 
+3478 202033d2 branch app_put_lpm_wake_lock 
+
+antilost_lpm_ctrl_for_led_buzzer:
+3479 6800c79b fetch 1 ,mem_antl_led_state 
+347a 6808c79c fetcht 1 ,mem_antl_buzzer_state 
+347b 9841fe00 ior temp ,pdata 
+347c c000b3d0 beq 1 ,app_get_lpm_wake_lock 
+347d 202033d2 branch app_put_lpm_wake_lock 
+
+antilost_bb_event_process:
+347e 1a627e00 copy regc ,pdata 
+347f c016b431 beq bt_evt_button_up ,app_event_button_up 
+3480 c008341a beq bt_evt_button_long_pressed ,app_button_long_pressed 
+3481 c00a34df beq bt_evt_le_connected ,antilost_le_process_conn 
+3482 c00ab4e8 beq bt_evt_le_disconnected ,antilost_le_process_discon 
+3483 c0203485 beq bt_evt_le_parse_conn_papa_update_rsp ,antilost_le_conn_param_update_rsp_recieved 
+3484 20600000 rtn 
+
+antilost_le_conn_param_update_rsp_recieved:
+3485 68014509 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+3486 c000b48c beq ble_signaling_connect_parameter_update_rejected ,antilost_le_conn_param_rejected 
+
+antilost_le_conn_param_accepted:
+3487 680143d8 fetch 2 ,mem_le_new_connslavelatency 
+3488 203a34a2 branch antilost_master_nonsupport_latency ,blank 
+
+antilost_le_conn_param_updata_procedure_sucsess:
+3489 70478a02 jam conn_param_updata_procedure_complete ,mem_antl_conn_updata_procedure_state 
+348a 70478f3c jam 60 ,mem_antl_conn_update_timer 
+348b 20600000 rtn 
+
+antilost_le_conn_param_rejected:
+348c 6801449a fetch 2 ,mem_le_latency 
+348d 203a34a0 branch antilost_conn_param_updata_procedure_faild ,blank 
+
+antilost_conn_param_retransimiting:
+348e 70478a01 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+348f 680947b4 fetcht 2 ,mem_interval_increment 
+3490 68014496 fetch 2 ,mem_le_interval_min 
+3491 9840fe00 iadd temp ,pdata 
+3492 60014496 store 2 ,mem_le_interval_min 
+3493 1fe22200 copy pdata ,rega 
+3494 68014498 fetch 2 ,mem_le_interval_max 
+3495 9840fe00 iadd temp ,pdata 
+3496 60014498 store 2 ,mem_le_interval_max 
+3497 9a20fe00 iadd rega ,pdata 
+3498 1fe30400 rshift pdata ,temp 
+3499 680147c0 fetch 2 ,mem_antl_le_unnormal_interval_max 
+349a 9846fc00 idiv temp 
+349b 20407f86 call wait_div_end 
+349c 1807fe00 quotient pdata 
+349d 6001449a store 2 ,mem_le_latency 
+349e 70479001 jam 1 ,mem_antl_send_updata_le_param_timer 
+349f 20600000 rtn 
+
+antilost_conn_param_updata_procedure_faild:
+34a0 70478a03 jam conn_param_updata_procedure_faild ,mem_antl_conn_updata_procedure_state 
+34a1 20600000 rtn 
+
+antilost_master_nonsupport_latency:
+34a2 70417200 jam 0 ,mem_lpm_mult 
+34a3 70479000 jam 0 ,mem_antl_send_updata_le_param_timer 
+34a4 680143d6 fetch 2 ,mem_le_new_conninterval 
+34a5 680947be fetcht 2 ,mem_antl_le_unnormal_interval_min 
+34a6 98467c00 isub temp ,null 
+34a7 79212200 setflag positive ,0 ,rega 
+34a8 680147c0 fetch 2 ,mem_antl_le_unnormal_interval_max 
+34a9 680943d6 fetcht 2 ,mem_le_new_conninterval 
+34aa 98467e00 isub temp ,pdata 
+34ab 79212201 setflag positive ,1 ,rega 
+34ac 2a200603 compare 0x03 ,rega ,0x03 
+34ad 20608000 rtn true 
+34ae 680447be fetch 8 ,mem_antl_le_unnormal_interval_min 
+34af 60044496 store 8 ,mem_le_interval_min 
+34b0 70479001 jam 1 ,mem_antl_send_updata_le_param_timer 
+34b1 20600000 rtn 
+
+antilost_le_bb_event_timer:
+34b2 2040337b call app_power_timer 
+34b3 204034b9 call antilost_double_click_timer 
+34b4 204034be call antilost_le_fast_adv_timer 
+34b5 204034d5 call antilost_le_sleep_timer 
+34b6 204034ca call antilost_app_updata_le_param_timer 
+34b7 204034c4 call antilost_conn_update_timer 
+34b8 202034d9 branch antilost_adc_check_timer 
+
+antilost_double_click_timer:
+34b9 da604799 arg mem_double_click_timer ,regc 
+34ba da4034bc arg antilost_double_click_timeout ,regb 
+34bb 2020336d branch timer_single_step 
+
+antilost_double_click_timeout:
+34bc 70479a00 jam 0 ,mem_butten_click_cnt 
+34bd 20600000 rtn 
+
+antilost_le_fast_adv_timer:
+34be da604793 arg mem_antl_fast_adv_timer ,regc 
+34bf da4034c1 arg antilost_le_fast_adv_timeout ,regb 
+34c0 20203374 branch timer_single_step_2b 
+
+antilost_le_fast_adv_timeout:
+34c1 da6046bf arg mem_antl_slow_adv_led_style ,regc 
+34c2 da40469e arg mem_antl_slow_adv_lpm_interval ,regb 
+34c3 20203591 branch antilost_adv_start_common 
+
+antilost_conn_update_timer:
+34c4 da60478f arg mem_antl_conn_update_timer ,regc 
+34c5 da4034c7 arg antilost_conn_update_timer_time_out ,regb 
+34c6 2020336d branch timer_single_step 
+
+antilost_conn_update_timer_time_out:
+34c7 6801449a fetch 2 ,mem_le_latency 
+34c8 6000c172 store 1 ,mem_lpm_mult 
+34c9 20600000 rtn 
+
+antilost_app_updata_le_param_timer:
+34ca da604790 arg mem_antl_send_updata_le_param_timer ,regc 
+34cb da4034cd arg antilost_app_updata_le_param_timeout ,regb 
+34cc 2020336d branch timer_single_step 
+
+antilost_app_updata_le_param_timeout:
+34cd 6800843f fetch 1 ,mem_le_state 
+34ce 2fe0c000 compare 0 ,pdata ,0x60 
+34cf 2420b4d3 nbranch antilost_wait_for_updata_param_instant_expire ,true 
+34d0 70478a01 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+34d1 20403416 call app_lpm_mult_enable 
+34d2 20205abf branch le_l2cap_tx_update_req 
+
+antilost_wait_for_updata_param_instant_expire:
+34d3 70479001 jam 1 ,mem_antl_send_updata_le_param_timer 
+34d4 20600000 rtn 
+
+antilost_le_sleep_timer:
+34d5 da604791 arg mem_antl_le_sleep_timer ,regc 
+34d6 da4034d8 arg antilost_le_sleep_timer_timeout ,regb 
+34d7 20203374 branch timer_single_step_2b 
+
+antilost_le_sleep_timer_timeout:
+34d8 2020341a branch app_button_long_pressed 
+
+antilost_adc_check_timer:
+34d9 da60478d arg mem_adc_timer ,regc 
+34da da4034dc arg antilost_adc_check_timer_timeout ,regb 
+34db 20203374 branch timer_single_step_2b 
+
+antilost_adc_check_timer_timeout:
+34dc 680147a7 fetch 2 ,mem_adc_timeout 
+34dd 6001478d store 2 ,mem_adc_timer 
+34de 202035af branch antilost_battery_process 
+
+antilost_le_process_conn:
+34df 680147a7 fetch 2 ,mem_adc_timeout 
+34e0 6001478d store 2 ,mem_adc_timer 
+34e1 58000000 setarg 0 
+34e2 60014793 store 2 ,mem_antl_fast_adv_timer 
+34e3 60014791 store 2 ,mem_antl_le_sleep_timer 
+34e4 2040355c call antilost_alert_off 
+34e5 20403586 call antilost_led_buzzer_stop_blink 
+34e6 70417200 jam 0 ,mem_lpm_mult 
+34e7 202033f8 branch app_ble_stop_adv 
+
+antilost_le_process_discon:
+34e8 58000000 setarg 0 
+34e9 6002478d store 4 ,mem_adc_timer 
+34ea 6001c78a store 3 ,mem_antl_conn_updata_procedure_state 
+34eb 60014509 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+34ec 7047a001 jam 1 ,mem_alarm_config_notfy_cnt 
+34ed 68014797 fetch 2 ,mem_antl_le_sleep_timeout 
+34ee 60014791 store 2 ,mem_antl_le_sleep_timer 
+34ef 20407e38 call queue_init 
+34f0 6800c759 fetch 1 ,mem_antl_power_state 
+34f1 c1000000 rtneq power_off 
+34f2 2040358f call antilost_fast_adv_start 
+34f3 2020356e branch antilost_on_off_alarm_after_disconn 
+
+antilost_le_conn_process:
+34f4 20203508 branch antilost_key_process 
+
+antilost_idle_process:
+34f5 6800c759 fetch 1 ,mem_antl_power_state 
+34f6 c1810000 rtnne power_standby 
+34f7 20203508 branch antilost_key_process 
+
+antilost_power_starting_cb:
+34f8 da6046cd arg mem_antl_power_starting_buzzer_style ,regc 
+34f9 20403582 call antilost_buzzer_configuration 
+34fa da6046c6 arg mem_antl_power_starting_led_style ,regc 
+
+antilost_power_common:
+34fb 20203584 branch antilost_led_configuration 
+
+antilost_power_off_cb:
+34fc 70436e00 jam off ,mem_le_adv_enable 
+34fd da6046db arg mem_antl_power_off_buzzer_style ,regc 
+34fe 20403582 call antilost_buzzer_configuration 
+34ff da6046d4 arg mem_antl_power_off_led_style ,regc 
+3500 202034fb branch antilost_power_common 
+
+antilost_le_receive_data_process:
+3501 68008477 fetch 1 ,mem_le_att_opcode 
+3502 c0093504 beq attop_write_request ,antilost_le_parse_att_write_request 
+3503 20600000 rtn 
+
+antilost_le_parse_att_write_request:
+3504 68010478 fetch 2 ,mem_le_att_handle 
+3505 c006b536 beq new_spec_write_handle ,antilost_cmd_parse_for_application 
+3506 c005b571 beq new_spec_notification_enable_handle ,antilost_notify_alarm_config_first_time 
+3507 20600000 rtn 
+
+antilost_key_process:
+3508 6800c753 fetch 1 ,mem_antl_key_scan_enable 
+3509 207a0000 rtn blank 
+350a 20206978 branch keyscan_key_process 
+
+antilost_key_up_down:
+350b 1a227e00 copy rega ,pdata 
+350c 203a3510 branch antilost_key_is_up ,blank 
+
+antilost_key_is_down:
+350d 18e27e00 copy queue ,pdata 
+350e c0003513 beq 0 ,antilost_key0_down 
+350f 20600000 rtn 
+
+antilost_key_is_up:
+3510 18e27e00 copy queue ,pdata 
+3511 c000351b beq 0 ,antilost_key0_up 
+3512 20600000 rtn 
+
+antilost_key0_down:
+3513 70479d01 jam 1 ,mem_antl_key_state 
+3514 da6046f7 arg mem_antl_key_buzzer_style ,regc 
+3515 20403582 call antilost_buzzer_configuration 
+3516 da6046f0 arg mem_antl_key_led_style ,regc 
+3517 20403584 call antilost_led_configuration 
+3518 68014682 fetch 2 ,mem_ui_state_map 
+3519 c304b532 bbit0 ui_state_ble_connected ,antilost_butten_down_while_disconn 
+351a 20203521 branch antilost_butten_down_after_conn 
+
+antilost_key0_up:
+351b 70479d00 jam 0 ,mem_antl_key_state 
+351c 2020351d branch antilost_double_click_timer_init 
+
+antilost_double_click_timer_init:
+351d 6800c79a fetch 1 ,mem_butten_click_cnt 
+351e c1808000 rtnne 1 
+351f 70479905 jam 5 ,mem_double_click_timer 
+3520 20600000 rtn 
+
+antilost_butten_down_after_conn:
+3521 6800c79a fetch 1 ,mem_butten_click_cnt 
+3522 1fe0fe01 pincrease 1 
+3523 6000c79a store 1 ,mem_butten_click_cnt 
+3524 c000b527 beq 1 ,antilost_click_once 
+3525 c001352b beq 2 ,antilost_click_twice 
+3526 20600000 rtn 
+
+antilost_click_once:
+3527 2040355c call antilost_alert_off 
+3528 70477101 jam opcode1_butten_click_once ,mem_antl_key0_press + 5 
+3529 da60476c arg mem_antl_key0_press ,regc 
+352a 20203544 branch antilost_prepare_data_and_send 
+
+antilost_click_twice:
+352b 70479a00 jam 0 ,mem_butten_click_cnt 
+352c 70477102 jam opcode2_butten_double_click ,mem_antl_key0_press + 5 
+352d da60476c arg mem_antl_key0_press ,regc 
+352e 20403544 call antilost_prepare_data_and_send 
+352f 6800c79e fetch 1 ,mem_antl_lost_mode 
+3530 c000b551 beq 1 ,antilost_alert_on 
+3531 20600000 rtn 
+
+antilost_butten_down_while_disconn:
+3532 68014797 fetch 2 ,mem_antl_le_sleep_timeout 
+3533 60014791 store 2 ,mem_antl_le_sleep_timer 
+3534 2040355c call antilost_alert_off 
+3535 2020358f branch antilost_fast_adv_start 
+
+antilost_cmd_parse_for_application:
+3536 44e6c019 bpatch patch19_5 ,mem_patch19 
+3537 204036fc call le_app_receive_data 
+3538 ea208000 ifetch 1 ,rega 
+3539 c001b53c beq opcode3_antl_start_alram ,antilost_on_of_alram 
+353a c003b540 beq opcode7_antl_config_alram ,antilost_configuration_for_alram 
+353b 20600000 rtn 
+
+antilost_on_of_alram:
+353c 6800c79e fetch 1 ,mem_antl_lost_mode 
+353d c0003551 beq anti_le_alarm_off ,antilost_alert_on 
+353e c000b55c beq anti_le_alarm_on ,antilost_alert_off 
+353f 20600000 rtn 
+
+antilost_configuration_for_alram:
+3540 ea408000 ifetch 1 ,regb 
+3541 c000b564 beq 1 ,antilost_set_start_alarm_after_disconn 
+3542 c0003569 beq 0 ,antilost_set_no_alarm_after_disconn 
+3543 20600000 rtn 
+
+antilost_prepare_data_and_send:
+3544 44e74019 bpatch patch19_6 ,mem_patch19 
+3545 6800c78b fetch 1 ,mem_client_characteristic_configuration_descriptor 
+3546 2feffe00 isolate1 notification_enable_bit ,pdata 
+3547 24608000 nrtn true 
+3548 1a608c06 add regc ,6 ,contr 
+3549 e8c10000 ifetch 2 ,contr 
+354a 1ff0fe00 byteswap pdata ,pdata 
+354b 1fe0f205 add pdata ,5 ,loopcnt 
+354c 1a608c03 add regc ,3 ,contr 
+354d 204036f0 call calc_check_sum_start 
+354e e0c08000 istore 1 ,contr 
+354f 1a622200 copy regc ,rega 
+3550 20207e3d branch queue_push 
+
+antilost_alert_on:
+3551 6800c759 fetch 1 ,mem_antl_power_state 
+3552 207a0000 rtn blank 
+3553 70479e01 jam 1 ,mem_antl_lost_mode 
+3554 da6046e9 arg mem_antl_alert_buzzer_stlye ,regc 
+3555 20403582 call antilost_buzzer_configuration 
+3556 da6046e2 arg mem_antl_alert_led_stlye ,regc 
+3557 20403584 call antilost_led_configuration 
+3558 70478004 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+3559 70478301 jam 1 ,mem_antl_key0_release + 8 
+355a da60477b arg mem_antl_key0_release ,regc 
+355b 20203544 branch antilost_prepare_data_and_send 
+
+antilost_alert_off:
+355c 6800c79e fetch 1 ,mem_antl_lost_mode 
+355d 207a0000 rtn blank 
+355e 70479e00 jam 0 ,mem_antl_lost_mode 
+355f 20403586 call antilost_led_buzzer_stop_blink 
+3560 70478004 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+3561 70478300 jam 0 ,mem_antl_key0_release + 8 
+3562 da60477b arg mem_antl_key0_release ,regc 
+3563 20203544 branch antilost_prepare_data_and_send 
+
+antilost_set_start_alarm_after_disconn:
+3564 70479f01 jam 1 ,mem_alarm_config 
+3565 70478007 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+3566 70478301 jam 1 ,mem_antl_key0_release + 8 
+3567 da60477b arg mem_antl_key0_release ,regc 
+3568 20203544 branch antilost_prepare_data_and_send 
+
+antilost_set_no_alarm_after_disconn:
+3569 70479f00 jam 0 ,mem_alarm_config 
+356a 70478007 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+356b 70478300 jam 0 ,mem_antl_key0_release + 8 
+356c da60477b arg mem_antl_key0_release ,regc 
+356d 20203544 branch antilost_prepare_data_and_send 
+
+antilost_on_off_alarm_after_disconn:
+356e 6800c79f fetch 1 ,mem_alarm_config 
+356f 207a0000 rtn blank 
+3570 20203551 branch antilost_alert_on 
+
+antilost_notify_alarm_config_first_time:
+3571 ea210000 ifetch 2 ,rega 
+3572 6001478b store 2 ,mem_client_characteristic_configuration_descriptor 
+3573 2feffe00 isolate1 notification_enable_bit ,pdata 
+3574 24608000 nrtn true 
+3575 6800c7a0 fetch 1 ,mem_alarm_config_notfy_cnt 
+3576 207a0000 rtn blank 
+3577 7047a000 jam 0 ,mem_alarm_config_notfy_cnt 
+3578 680447b6 fetch 8 ,mem_antl_le_interval_min 
+3579 60044496 store 8 ,mem_le_interval_min 
+357a 70479002 jam 2 ,mem_antl_send_updata_le_param_timer 
+357b 204035af call antilost_battery_process 
+357c 204035b9 call antilost_battery_calculate_end 
+357d 70478007 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+357e 6800c79f fetch 1 ,mem_alarm_config 
+357f 6000c783 store 1 ,mem_antl_key0_release + 8 
+3580 da60477b arg mem_antl_key0_release ,regc 
+3581 20203544 branch antilost_prepare_data_and_send 
+
+antilost_buzzer_configuration:
+3582 da200001 arg 1 ,rega 
+3583 20203585 branch antilost_configuration_common 
+
+antilost_led_configuration:
+3584 da200000 arg 0 ,rega 
+
+antilost_configuration_common:
+3585 2020358c branch antilost_led_buzzer_style_configuration 
+
+antilost_led_buzzer_stop_blink:
+3586 da200000 arg 0 ,rega 
+3587 20407d19 call ui_led_blink_stop_global 
+3588 da200001 arg 1 ,rega 
+3589 20407d19 call ui_led_blink_stop_global 
+358a 6800c7a1 fetch 1 ,mem_buzzer_pwm_conf 
+358b 202069d7 branch pwm_disable 
+
+antilost_led_buzzer_style_configuration:
+358c 20407d04 call calc_curr_struct_prt 
+358d df200007 arg 7 ,loopcnt 
+358e 20207d26 branch ui_led_set_style_global + 2 
+
+antilost_fast_adv_start:
+358f da6046b8 arg mem_antl_fast_adv_led_style ,regc 
+3590 da40469a arg mem_antl_lpm_interval ,regb 
+
+antilost_adv_start_common:
+3591 20403596 call antilost_adv_interval_lpm_interval_set 
+3592 20403584 call antilost_led_configuration 
+3593 68014795 fetch 2 ,mem_antl_fast_adv_timeout 
+3594 60014793 store 2 ,mem_antl_fast_adv_timer 
+3595 202033fa branch app_ble_start_adv 
+
+antilost_adv_interval_lpm_interval_set:
+3596 ea410000 ifetch 2 ,regb 
+3597 60014154 store 2 ,mem_lpm_interval 
+3598 e8c10000 ifetch 2 ,contr 
+3599 60014482 store 2 ,mem_le_adv_interval 
+359a 20600000 rtn 
+
+antilost_buzzer_pwm_init:
+359b da200000 arg 0 ,rega 
+359c 204069a6 call pwm_init 
+359d 680347a1 fetch 6 ,mem_buzzer_pwm_conf 
+359e 60030a9a store 6 ,mem_pdatatemp 
+359f 204069ae call pwm_out_set 
+35a0 6800c7a1 fetch 1 ,mem_buzzer_pwm_conf 
+35a1 202069d7 branch pwm_disable 
+
+antilost_led_on_cb:
+35a2 70479b01 jam 1 ,mem_antl_led_state 
+35a3 20600000 rtn 
+
+antilost_led_off_cb:
+35a4 70479b00 jam 0 ,mem_antl_led_state 
+35a5 20600000 rtn 
+
+antilost_buzzer_off:
+35a6 70479c00 jam 0 ,mem_antl_buzzer_state 
+35a7 6800c7a1 fetch 1 ,mem_buzzer_pwm_conf 
+35a8 202069d7 branch pwm_disable 
+
+antilost_buzzer_on:
+35a9 70479c01 jam 1 ,mem_antl_buzzer_state 
+35aa 680347a1 fetch 6 ,mem_buzzer_pwm_conf 
+35ab 60030a9a store 6 ,mem_pdatatemp 
+35ac 202069ae branch pwm_out_set 
+
+antilost_adc_init:
+35ad 70422d00 jam 0 ,mem_adc_config_flag 
+35ae 202068a8 branch adc_init_data 
+
+antilost_battery_process:
+35af 204068eb call adc_set_mode 
+35b0 20406908 call vdd_calculate_by_mode 
+35b1 600147b0 store 2 ,mem_battery_current_voltage 
+35b2 da2047aa arg mem_battery_calculate_set ,rega 
+35b3 20406930 call adc_bat_percent_lowpower_out 
+35b4 6000c7a9 store 1 ,mem_voltage_remain_percent 
+35b5 c00035be beq 0 ,antilost_low_battery 
+35b6 1fe67c64 sub pdata ,0x64 ,null 
+35b7 242135bc nbranch antilost_full_battery ,positive 
+35b8 6000c783 store 1 ,mem_antl_key0_release + 8 
+
+antilost_battery_calculate_end:
+35b9 70478005 jam opcode5_batter_information ,mem_antl_key0_release + 5 
+35ba da60477b arg mem_antl_key0_release ,regc 
+35bb 20203544 branch antilost_prepare_data_and_send 
+
+antilost_full_battery:
+35bc 70478364 jam 100 ,mem_antl_key0_release + 8 
+35bd 202035b9 branch antilost_battery_calculate_end 
+
+antilost_low_battery:
+35be 2020341a branch app_button_long_pressed 
+
+car_init:
+35bf 20758000 rtn wake 
+35c0 68108081 hfetch 1 ,core_gpio_sel1 
+35c1 1fe17ef0 and_into 0xf0 ,pdata 
+35c2 60108081 hstore 1 ,core_gpio_sel1 
+35c3 58003631 setarg car_le_before_hibernate 
+35c4 600141eb store 2 ,mem_cb_before_hibernate 
+35c5 58003633 setarg car_le_process_lpm_before 
+35c6 600141ed store 2 ,mem_cb_before_lpm 
+35c7 5800340a setarg app_enter_hibernate 
+35c8 600141f7 store 2 ,mem_cb_discovry_timeout 
+35c9 58003635 setarg car_scale_process_idle 
+35ca 600141f3 store 2 ,mem_cb_idle_process 
+35cb 5800364b setarg car_scale_process_bb_event 
+35cc 600141f5 store 2 ,mem_cb_bb_event_process 
+35cd 580033d0 setarg app_get_lpm_wake_lock 
+35ce 600141e9 store 2 ,mem_cb_check_wakelock 
+35cf 580036f6 setarg car_le_receive_data 
+35d0 600141f9 store 2 ,mem_cb_att_write 
+35d1 5800367a setarg car_le_bb_event_timer 
+35d2 600141fd store 2 ,mem_cb_event_timer 
+35d3 20402c7a call g24_head_ptr2regc 
+35d4 58003722 setarg car_24g_receive_data 
+35d5 1a608ade add regc ,offset_24g_cb_rxdata_type1 ,contw 
+35d6 e0a10000 istore 2 ,contw 
+35d7 580035ed setarg car_power_off_signal 
+35d8 6001475b store 2 ,mem_remote_car_power_off_cb 
+35d9 580035ef setarg car_soft_switch_power_on_signal 
+35da 6001475f store 2 ,mem_remote_car_power_standby_cb 
+35db 44e7c019 bpatch patch19_7 ,mem_patch19 
+35dc 20403628 call car_init_environment 
+35dd 20407e38 call queue_init 
+35de 70417202 jam 2 ,mem_lpm_mult 
+35df 7049f600 jam power_on ,mem_car_24g_received_pac 
+35e0 6800c7cb fetch 1 ,mem_car_config_soft_switch_enable 
+35e1 6000c69a store 1 ,mem_car_hard_soft_switch 
+35e2 c00035ee beq hard_switch ,car_hard_switch_power_on_signal 
+35e3 6800c7cc fetch 1 ,mem_car_config_soft_switch_gpio 
+35e4 6000c686 store 1 ,mem_ui_button_gpio 
+35e5 70436e00 jam off ,mem_le_adv_enable 
+
+car_soft_switch_power_on_init:
+35e6 2040360f call car_ui_led_init 
+35e7 20407cd3 call ui_button_init 
+35e8 20407cdd call ui_button_polling 
+35e9 7047f301 jam power_starting ,mem_car_power_state 
+35ea 68014682 fetch 2 ,mem_ui_state_map 
+35eb c3860000 rtnbit1 ui_state_btn_down 
+35ec 2020340a branch app_enter_hibernate 
+
+car_power_off_signal:
+35ed 2020360f branch car_ui_led_init 
+
+car_hard_switch_power_on_signal:
+35ee 7047f302 jam power_standby ,mem_car_power_state 
+
+car_soft_switch_power_on_signal:
+35ef 70436e01 jam on ,mem_le_adv_enable 
+35f0 2040360f call car_ui_led_init 
+35f1 da200000 arg 0 ,rega 
+35f2 20407d1e call ui_led_blink_start_global 
+35f3 58000020 setarg fast_adv_interval_value_car 
+35f4 204046f0 call shutter_ble_adv_interval_set 
+
+car_le_modified_name_adv:
+35f5 d8a043b7 arg mem_le_name + 7 ,contw 
+35f6 6800c4a0 fetch 1 ,mem_le_lap 
+
+car_name_loop:
+35f7 1fe104f0 and pdata ,0xF0 ,temp 
+35f8 18518400 rshift4 temp ,temp 
+35f9 20403609 call car_hex_to_ascii 
+35fa e0a88000 istoret 1 ,contw 
+35fb 1fe1040f and pdata ,0x0F ,temp 
+35fc 20403609 call car_hex_to_ascii 
+35fd e0a88000 istoret 1 ,contw 
+35fe 204057a6 call le_modified_name_att_list 
+35ff 6808c3af fetcht 1 ,mem_le_name_len 
+3600 18427200 copy temp ,loopcnt 
+3601 d8a04372 arg mem_le_adv_data + 2 ,contw 
+3602 d8c043b0 arg mem_le_name ,contr 
+3603 20407f01 call memcpy 
+
+car_le_modified_name_scan:
+3604 6808c3af fetcht 1 ,mem_le_name_len 
+3605 18427200 copy temp ,loopcnt 
+3606 d8a04392 arg mem_le_scan_data + 2 ,contw 
+3607 d8c043b0 arg mem_le_name ,contr 
+3608 20207f01 branch memcpy 
+
+car_hex_to_ascii:
+3609 18467c09 sub temp ,9 ,null 
+360a 2021360d branch car_hex_num ,positive 
+360b 18408437 add temp ,55 ,temp 
+360c 20600000 rtn 
+
+car_hex_num:
+360d 18408430 add temp ,48 ,temp 
+360e 20600000 rtn 
+
+car_ui_led_init:
+360f 6800c7c0 fetch 1 ,mem_car_config_blood_led1_gpio 
+3610 c0ffb621 bne invalid_pin_num ,car_blood_led_gpio_set 
+
+car_ui_led_init_1:
+3611 6800c7be fetch 1 ,mem_car_config_pairing_led_gpio 
+3612 c0ffb624 bne invalid_pin_num ,car_pairing_led_gpio_set 
+
+car_ui_led_init_2:
+3613 6800c7c9 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+3614 c0ffb626 bne invalid_pin_num ,car_low_voltage_led_gpio_set 
+
+car_ui_led_init_3:
+3615 6800c72c fetch 1 ,mem_car_led_num 
+3616 1fe27200 copy pdata ,loopcnt 
+3617 5800472d setarg mem_car_led_map 
+3618 1fe22200 copy pdata ,rega 
+
+car_in_lp1:
+3619 1a220c00 copy rega ,contr 
+361a e8c08000 ifetch 1 ,contr 
+361b 18c22200 copy contr ,rega 
+361c c07fb61f beq invalid_pin_num ,car_in_lp1_end 
+361d 1fe20400 copy pdata ,temp 
+361e 2040680e call gpio_config_output 
+
+car_in_lp1_end:
+361f c2003619 loop car_in_lp1 
+
+car_ui_led_init_end:
+3620 20600000 rtn 
+
+car_blood_led_gpio_set:
+3621 680447c0 fetch 8 ,mem_car_config_blood_led1_gpio 
+3622 6004472f store 8 ,mem_car_led_map + 2 
+3623 20203611 branch car_ui_led_init_1 
+
+car_pairing_led_gpio_set:
+3624 6000c72d store 1 ,mem_car_led_map 
+3625 20203613 branch car_ui_led_init_2 
+
+car_low_voltage_led_gpio_set:
+3626 6000c72e store 1 ,mem_car_led_map + 1 
+3627 20203615 branch car_ui_led_init_3 
+
+car_init_environment:
+3628 da200000 arg 0 ,rega 
+3629 204069a6 call pwm_init 
+362a 204037e4 call car_ir_rx_init 
+362b 20402c7d call g24_receive_process_init 
+362c 2020362d branch car_init_adc_hvin 
+
+car_init_adc_hvin:
+362d 7047cf64 jam 100 ,mem_car_notify_vdd_value_last 
+362e 6800c7c9 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+362f 6000c744 store 1 ,mem_car_style2_struct_led_gpio 
+3630 202068a8 branch adc_init_data 
+
+car_le_before_hibernate:
+3631 20406835 call gpio_set_before_lpm_common 
+3632 2020696c branch keyscan_process_lpm_before 
+
+car_le_process_lpm_before:
+3633 2020696c branch keyscan_process_lpm_before 
+
+car_key_scan_process:
+3634 20206978 branch keyscan_key_process 
+
+car_scale_process_idle:
+3635 20403642 call car_le_send_packet 
+3636 204037ee call car_ir_receive_process 
+3637 20403639 call car_g24_status_process 
+3638 20203634 branch car_key_scan_process 
+
+car_g24_status_process:
+3639 68014682 fetch 2 ,mem_ui_state_map 
+363a c3848000 rtnbit1 ui_state_ble_connected 
+363b 6800c9f6 fetch 1 ,mem_car_24g_received_pac 
+363c c000b63e beq work_paired ,car_g24_connected_event 
+363d 20600000 rtn 
+
+car_g24_connected_event:
+363e 6800c7ea fetch 1 ,mem_car_24g_status 
+363f c1008000 rtneq work_paired 
+3640 7047ea01 jam work_paired ,mem_car_24g_status 
+3641 20203654 branch car_g24_connected 
+
+car_le_send_packet:
+3642 68014682 fetch 2 ,mem_ui_state_map 
+3643 c4048000 rtnbit0 ui_state_ble_connected 
+3644 20405892 call le_fifo_check_nearly_full 
+3645 247a0000 nrtn blank 
+3646 da204718 arg mem_car_pop_queue_buff ,rega 
+3647 20407e54 call queue_pop 
+3648 24740000 nrtn user 
+3649 d8c04718 arg mem_car_pop_queue_buff ,contr 
+364a 20204746 branch le_send_notify_from_list 
+
+car_scale_process_bb_event:
+364b 1a627e00 copy regc ,pdata 
+364c c016b431 beq bt_evt_button_up ,app_event_button_up 
+364d c008341a beq bt_evt_button_long_pressed ,app_button_long_pressed 
+364e c00a3651 beq bt_evt_le_connected ,car_scale_event_le_conn 
+364f c00ab660 beq bt_evt_le_disconnected ,car_scale_event_le_discon 
+3650 20600000 rtn 
+
+car_scale_event_le_conn:
+3651 58000000 setarg disable_24g 
+3652 20403220 call g24_store_mem_24g_mode 
+3653 20203656 branch car_scale_process_conn 
+
+car_g24_connected:
+3654 680147eb fetch 2 ,mem_car_24g_no_data_timeout_count 
+3655 600147ed store 2 ,mem_car_24g_no_data_timeout_timer 
+
+car_scale_process_conn:
+3656 7047ce14 jam 0x14 ,mem_car_notify_vdd_timer 
+3657 70409100 jam 0 ,mem_lpm_mode 
+3658 204033f8 call app_ble_stop_adv 
+3659 20403416 call app_lpm_mult_enable 
+365a 6800c7bd fetch 1 ,mem_car_config_pairing_led_conn_status 
+365b c000b65e beq 0x01 ,car_pairing_led_conn_status_setting 
+
+car_scale_process_conn_next:
+365c da200000 arg 0 ,rega 
+365d 20207d14 branch ui_led_on_global 
+
+car_pairing_led_conn_status_setting:
+365e da200000 arg 0 ,rega 
+365f 20207d19 branch ui_led_blink_stop_global 
+
+car_scale_event_le_discon:
+3660 58000002 setarg rx_24g 
+3661 20403220 call g24_store_mem_24g_mode 
+
+car_g24_disconnect:
+3662 58000000 setarg 0 
+3663 6002c79c store 5 ,mem_car_led_control 
+3664 58000004 setarg 4 
+3665 204069d7 call pwm_disable 
+3666 58000005 setarg 5 
+3667 204069d7 call pwm_disable 
+3668 58000014 setarg 20 
+3669 204069d7 call pwm_disable 
+366a 58000015 setarg 21 
+366b 204069d7 call pwm_disable 
+366c 58000016 setarg 22 
+366d 204069d7 call pwm_disable 
+366e 58000007 setarg 7 
+366f 204069d7 call pwm_disable 
+3670 20407e38 call queue_init 
+3671 70475e0a jam 10 ,mem_motor1_speed 
+3672 7047600a jam 10 ,mem_motor2_speed 
+3673 7047620a jam 10 ,mem_motor3_speed 
+3674 70417202 jam 2 ,mem_lpm_mult 
+3675 da200000 arg 0 ,rega 
+3676 20407d1e call ui_led_blink_start_global 
+3677 58000020 setarg fast_adv_interval_value_car 
+3678 204046f0 call shutter_ble_adv_interval_set 
+3679 202033fa branch app_ble_start_adv 
+
+car_le_bb_event_timer:
+367a 2040373b call car_moto1_blank_data_timer 
+367b 2040373e call car_moto2_blank_data_timer 
+367c 20403741 call car_moto3_blank_data_timer 
+367d 2040337b call app_power_timer 
+367e 204036c8 call car_led_control_timer 
+367f 204036a1 call car_notify_vdd_timer 
+3680 2040368a call car_24g_no_data_timeout_timer 
+3681 20403683 call car_ir_breakdown_timer 
+3682 2020368f branch car_attack_shake_timer 
+
+car_ir_breakdown_timer:
+3683 da60479a arg mem_car_ir_breakdown_check_timer ,regc 
+3684 da403686 arg car_ir_breakdown_timeout ,regb 
+3685 2020336d branch timer_single_step 
+
+car_ir_breakdown_timeout:
+3686 20403847 call car_ir_gpio_get_status 
+3687 24608000 nrtn true 
+3688 70479b01 jam 1 ,mem_car_ir_breakdown_flag 
+3689 20600000 rtn 
+
+car_24g_no_data_timeout_timer:
+368a da6047ed arg mem_car_24g_no_data_timeout_timer ,regc 
+368b da40368d arg car_24g_no_data_timer_timeout ,regb 
+368c 20203374 branch timer_single_step_2b 
+
+car_24g_no_data_timer_timeout:
+368d 7047ea02 jam work_search ,mem_car_24g_status 
+368e 20203662 branch car_g24_disconnect 
+
+car_attack_shake_timer:
+368f da6047f1 arg mem_car_attack_shake_timer ,regc 
+3690 da403692 arg car_attack_shake ,regb 
+3691 2020336d branch timer_single_step 
+
+car_attack_shake:
+3692 6800c7f2 fetch 1 ,mem_car_attack_shake_flag 
+3693 203a369e branch car_attack_shake_stop ,blank 
+3694 7047f102 jam 2 ,mem_car_attack_shake_timer 
+3695 7047f200 jam 0 ,mem_car_attack_shake_flag 
+3696 58000a02 setarg 0x0a02 
+3697 60014752 store 2 ,mem_le_receive_payload 
+3698 6800c7b9 fetch 1 ,mem_car_config_device_select 
+3699 c001b69b beq device_battle_tank ,car_attack_shake_front_battle_tank 
+
+car_attack_shake_front_battle_car:
+369a 20203762 branch car_motor_control 
+
+car_attack_shake_front_battle_tank:
+369b 58000a02 setarg 0x0a02 
+369c 60014754 store 2 ,mem_le_receive_payload + 2 
+369d 20203762 branch car_motor_control 
+
+car_attack_shake_stop:
+369e 58000000 setarg 0 
+369f 60024752 store 4 ,mem_le_receive_payload 
+36a0 20203762 branch car_motor_control 
+
+car_notify_vdd_timer:
+36a1 6800c7c8 fetch 1 ,mem_car_config_bat_notify_enable 
+36a2 207a0000 rtn blank 
+36a3 68014682 fetch 2 ,mem_ui_state_map 
+36a4 c304b6c6 bbit0 ui_state_ble_connected ,car_low_bat_led_off 
+36a5 da6047ce arg mem_car_notify_vdd_timer ,regc 
+36a6 da4036a8 arg car_notify_vdd ,regb 
+36a7 2020336d branch timer_single_step 
+
+car_notify_vdd:
+36a8 6800c7cd fetch 1 ,mem_car_notify_vdd_count 
+36a9 6000c7ce store 1 ,mem_car_notify_vdd_timer 
+36aa 6800c7d1 fetch 1 ,mem_car_working_flag 
+36ab 247a0000 nrtn blank 
+
+car_read_hvin:
+36ac 204068eb call adc_set_mode 
+36ad 20406908 call vdd_calculate_by_mode 
+36ae 600147e8 store 2 ,mem_vdd_now_vol 
+36af da2047e2 arg mem_vdd_calculate_set ,rega 
+36b0 20406930 call adc_bat_percent_lowpower_out 
+36b1 6808c7cf fetcht 1 ,mem_car_notify_vdd_value_last 
+36b2 98467c00 isub temp ,null 
+36b3 202136b6 branch car_notify_vdd_next2 ,positive 
+36b4 6000c7cf store 1 ,mem_car_notify_vdd_value_last 
+36b5 1fe20400 copy pdata ,temp 
+
+car_notify_vdd_next2:
+36b6 6008c7d0 storet 1 ,mem_car_notify_vdd_percent 
+36b7 6800c7ca fetch 1 ,mem_car_config_low_voltage_percent 
+36b8 98467c00 isub temp ,null 
+36b9 204136c1 call car_enter_low_bat ,positive 
+36ba 6008c7db storet 1 ,mem_notify_bat_payload 
+36bb df200006 arg 6 ,loopcnt 
+36bc d8c047d6 arg mem_notify_bat_head ,contr 
+36bd 204036f0 call calc_check_sum_start 
+36be 6000c7dc store 1 ,mem_notify_bat_check_sum 
+36bf da2047d3 arg mem_notify_bat_packet ,rega 
+36c0 20207e3d branch queue_push 
+
+car_enter_low_bat:
+36c1 6800c7d2 fetch 1 ,mem_low_bat_flag 
+36c2 247a0000 nrtn blank 
+36c3 7047d201 jam 1 ,mem_low_bat_flag 
+36c4 da200001 arg 1 ,rega 
+36c5 20207d1e branch ui_led_blink_start_global 
+
+car_low_bat_led_off:
+36c6 da200001 arg 1 ,rega 
+36c7 20207d19 branch ui_led_blink_stop_global 
+
+car_led_control_timer:
+36c8 da6047a4 arg mem_car_led_control_timer ,regc 
+36c9 da4036cb arg car_led_control ,regb 
+36ca 2020336d branch timer_single_step 
+
+car_led_control:
+36cb 7047a405 jam 5 ,mem_car_led_control_timer 
+36cc 7047a600 jam 0 ,mem_car_led_no 
+36cd 6800c7a5 fetch 1 ,mem_car_led_blink_status 
+36ce c000b6ee beq led_on ,car_led_control_blink_off 
+36cf c00036ec beq led_off ,car_led_control_blink_on 
+
+car_led_control_set:
+36d0 d8c0479c arg mem_car_led_control ,contr 
+36d1 18c22200 copy contr ,rega 
+36d2 df200008 arg 8 ,loopcnt 
+
+car_led_control_timer_next:
+36d3 1a220c00 copy rega ,contr 
+36d4 e8c08000 ifetch 1 ,contr 
+36d5 18c22200 copy contr ,rega 
+36d6 c00036e3 beq led_off ,car_led_control_off 
+36d7 c000b6e6 beq led_on ,car_led_control_on 
+36d8 c00136e9 beq led_blink ,car_led_control_blink 
+
+car_led_control_timer_next_2:
+36d9 6800c7a6 fetch 1 ,mem_car_led_no 
+36da 1fe0fe01 increase 1 ,pdata 
+36db 6000c7a6 store 1 ,mem_car_led_no 
+36dc c20036d3 loop car_led_control_timer_next 
+36dd 20600000 rtn 
+
+car_led_switch:
+36de 6800c7a6 fetch 1 ,mem_car_led_no 
+36df da4047c0 arg mem_car_config_blood_led_gpio ,regb 
+36e0 9a40a400 iadd regb ,regb 
+36e1 ea488000 ifetcht 1 ,regb 
+36e2 20600000 rtn 
+
+car_led_control_off:
+36e3 204036de call car_led_switch 
+36e4 20406825 call gpio_out_inactive 
+36e5 202036d9 branch car_led_control_timer_next_2 
+
+car_led_control_on:
+36e6 204036de call car_led_switch 
+36e7 20406829 call gpio_out_active 
+36e8 202036d9 branch car_led_control_timer_next_2 
+
+car_led_control_blink:
+36e9 6800c7a5 fetch 1 ,mem_car_led_blink_status 
+36ea c000b6e3 beq led_on ,car_led_control_off 
+36eb 202036e6 branch car_led_control_on 
+
+car_led_control_blink_on:
+36ec 7047a501 jam led_on ,mem_car_led_blink_status 
+36ed 202036d0 branch car_led_control_set 
+
+car_led_control_blink_off:
+36ee 7047a500 jam led_off ,mem_car_led_blink_status 
+36ef 202036d0 branch car_led_control_set 
+
+calc_check_sum_start:
+36f0 da200000 arg 0 ,rega 
+
+calc_check_sum_loop:
+36f1 e8c08000 ifetch 1 ,contr 
+36f2 9a20a200 iadd rega ,rega 
+36f3 c20036f1 loop calc_check_sum_loop 
+
+calc_check_sum_and:
+36f4 1a217eff and rega ,0xff ,pdata 
+36f5 20600000 rtn 
+
+car_le_receive_data:
+36f6 68008477 fetch 1 ,mem_le_att_opcode 
+36f7 c00936f9 beq attop_write_request ,car_le_parse_att_write_request 
+36f8 20600000 rtn 
+
+car_le_parse_att_write_request:
+36f9 68010478 fetch 2 ,mem_le_att_handle 
+36fa c00a3710 beq att_car_control_handle ,car_control_le_receive 
+36fb 20600000 rtn 
+
+le_app_receive_data:
+36fc 44e8401a bpatch patch1a_0 ,mem_patch1a 
+36fd ea228000 ifetch 5 ,rega 
+36fe 60028b12 store 5 ,mem_app_receive_temp 
+36ff 68010b12 fetch 2 ,mem_app_receive_temp 
+3700 d8406b5a arg le_receive_packet_head ,temp 
+3701 98467c00 isub temp ,null 
+3702 24628000 nrtn zero 
+3703 68010b15 fetch 2 ,mem_app_receive_temp + 3 
+3704 1ff0fe00 byteswap pdata ,pdata 
+3705 60010b15 store 2 ,mem_app_receive_temp + 3 
+3706 1fe27200 copy pdata ,loopcnt 
+3707 1a20a205 increase 5 ,rega 
+3708 1a220c00 copy rega ,contr 
+3709 d8a00b17 arg mem_app_receive_temp + 5 ,contw 
+370a 20407f01 call memcpy 
+370b e8c08000 ifetch 1 ,contr 
+370c 60008b21 store 1 ,mem_app_receive_temp + 15 
+370d da200b14 arg mem_app_receive_temp + 2 ,rega 
+370e da400b17 arg mem_app_receive_temp + 5 ,regb 
+370f 20600000 rtn 
+
+car_control_le_receive:
+3710 58000000 setarg 0 
+3711 6002c752 store 5 ,mem_le_receive_payload 
+3712 6002c757 store 5 ,mem_le_receive_payload + 5 
+3713 204036fc call le_app_receive_data 
+3714 1a420c00 copy regb ,contr 
+3715 d8a04752 arg mem_le_receive_payload ,contw 
+3716 df20000a arg 10 ,loopcnt 
+3717 20407f01 call memcpy 
+
+car_receive_cmd_select:
+3718 44e8c01a bpatch patch1a_1 ,mem_patch1a 
+3719 ea208000 ifetch 1 ,rega 
+371a c001374a beq car_cmd_old_car_control ,car_drive_old 
+371b c001b75c beq car_cmd_old_speed_control ,car_speed_set_old 
+371c c0023762 beq car_cmd_l_r_motor_control ,car_motor_control 
+371d c002b762 beq car_cmd_f_b_motor_control ,car_motor_control 
+371e c00337b1 beq car_cmd_ir_control ,car_ir_data_rx_from_app 
+371f c003b849 beq car_cmd_led_control ,car_led_control_receive 
+3720 c004384c beq car_cmd_device_info ,car_info_request 
+3721 20600000 rtn 
+
+car_24g_receive_data:
+3722 68014682 fetch 2 ,mem_ui_state_map 
+3723 c3848000 rtnbit1 ui_state_ble_connected 
+3724 680147eb fetch 2 ,mem_car_24g_no_data_timeout_count 
+3725 600147ed store 2 ,mem_car_24g_no_data_timeout_timer 
+3726 7049f601 jam work_paired ,mem_car_24g_received_pac 
+3727 5800010c setarg offset_24g_rxdata_temp_add3 
+3728 204032cd call g24_set_rega 
+3729 20403710 call car_control_le_receive 
+372a 68008b14 fetch 1 ,mem_app_receive_temp + 2 
+372b c002372e beq car_cmd_l_r_motor_control ,car_24g_receive_data_next 
+372c c002b72e beq car_cmd_f_b_motor_control ,car_24g_receive_data_next 
+372d 20600000 rtn 
+
+car_24g_receive_data_next:
+372e 6800c752 fetch 1 ,mem_le_receive_payload 
+372f 245a3735 ncall car_moto1_enable_blank_data_timer ,blank 
+3730 6800c754 fetch 1 ,mem_le_receive_payload + 2 
+3731 245a3737 ncall car_moto2_enable_blank_data_timer ,blank 
+3732 6800c756 fetch 1 ,mem_le_receive_payload + 4 
+3733 245a3739 ncall car_moto3_enable_blank_data_timer ,blank 
+3734 20600000 rtn 
+
+car_moto1_enable_blank_data_timer:
+3735 7049f305 jam 5 ,mem_car_moto1_blank_timer 
+3736 20600000 rtn 
+
+car_moto2_enable_blank_data_timer:
+3737 7049f405 jam 5 ,mem_car_moto2_blank_timer 
+3738 20600000 rtn 
+
+car_moto3_enable_blank_data_timer:
+3739 7049f505 jam 5 ,mem_car_moto3_blank_timer 
+373a 20600000 rtn 
+
+car_moto1_blank_data_timer:
+373b da6049f3 arg mem_car_moto1_blank_timer ,regc 
+373c da403744 arg car_moto1_blank_data ,regb 
+373d 2020336d branch timer_single_step 
+
+car_moto2_blank_data_timer:
+373e da6049f4 arg mem_car_moto2_blank_timer ,regc 
+373f da403746 arg car_moto2_blank_data ,regb 
+3740 2020336d branch timer_single_step 
+
+car_moto3_blank_data_timer:
+3741 da6049f5 arg mem_car_moto3_blank_timer ,regc 
+3742 da403748 arg car_moto3_blank_data ,regb 
+3743 2020336d branch timer_single_step 
+
+car_moto1_blank_data:
+3744 70475200 jam 0 ,mem_le_receive_payload 
+3745 20203762 branch car_motor_control 
+
+car_moto2_blank_data:
+3746 70475400 jam 0 ,mem_le_receive_payload + 2 
+3747 20203762 branch car_motor_control 
+
+car_moto3_blank_data:
+3748 70475600 jam 0 ,mem_le_receive_payload + 4 
+3749 20203762 branch car_motor_control 
+
+car_drive_old:
+374a 2040374c call car_left_right_control_old 
+374b 2020374f branch car_front_back_control_old 
+
+car_left_right_control_old:
+374c 6800c752 fetch 1 ,mem_le_receive_payload 
+374d 6000c75f store 1 ,mem_motor2_status 
+374e 20203773 branch car_motor2_control 
+
+car_front_back_control_old:
+374f 6800c75e fetch 1 ,mem_motor1_speed 
+3750 20403754 call car_reset_old_speed 
+3751 6800c753 fetch 1 ,mem_le_receive_payload + 1 
+3752 6000c75d store 1 ,mem_motor1_status 
+3753 20203770 branch car_motor1_control 
+
+car_reset_old_speed:
+3754 c0013758 beq speed_level_2 ,car_reset_old_speed2 
+3755 c001b75a beq speed_level_3 ,car_reset_old_speed3 
+3756 6000c75e store 1 ,mem_motor1_speed 
+3757 20600000 rtn 
+
+car_reset_old_speed2:
+3758 70475e05 jam speed_level_5 ,mem_motor1_speed 
+3759 20600000 rtn 
+
+car_reset_old_speed3:
+375a 70475e0a jam speed_level_10 ,mem_motor1_speed 
+375b 20600000 rtn 
+
+car_speed_set_old:
+375c 6800c752 fetch 1 ,mem_le_receive_payload 
+375d 20403754 call car_reset_old_speed 
+375e 6800c75e fetch 1 ,mem_motor1_speed 
+375f 2040379e call car_motor_speed_duty_setting 
+3760 204037a1 call car_motor_speed_duty_transform 
+3761 202069c4 branch pwm_pwm0_duty_set 
+
+car_motor_control:
+3762 6800c7f0 fetch 1 ,mem_car_24g_go_die_flag 
+3763 247a0000 nrtn blank 
+3764 68034752 fetch 6 ,mem_le_receive_payload 
+3765 6003475d store 6 ,mem_motor1_status 
+3766 6800c75e fetch 1 ,mem_motor1_speed 
+3767 6808c760 fetcht 1 ,mem_motor2_speed 
+3768 98417e00 iand temp ,pdata 
+3769 6808c762 fetcht 1 ,mem_motor3_speed 
+376a 98417e00 iand temp ,pdata 
+376b 205a3779 call car_motor_working_flag ,blank 
+376c 44e9401a bpatch patch1a_2 ,mem_patch1a 
+376d 20403770 call car_motor1_control 
+376e 20403773 call car_motor2_control 
+376f 20203776 branch car_motor3_control 
+
+car_motor1_control:
+3770 da404763 arg mem_motor1_pwm_set ,regb 
+3771 d8c0475d arg mem_motor1_status ,contr 
+3772 2020377b branch car_motor_status_select 
+
+car_motor2_control:
+3773 da40476b arg mem_motor2_pwm_set ,regb 
+3774 d8c0475f arg mem_motor2_status ,contr 
+3775 2020377b branch car_motor_status_select 
+
+car_motor3_control:
+3776 da404773 arg mem_motor3_pwm_set ,regb 
+3777 d8c04761 arg mem_motor3_status ,contr 
+3778 2020377b branch car_motor_status_select 
+
+car_motor_working_flag:
+3779 7047d100 jam 0 ,mem_car_working_flag 
+377a 20600000 rtn 
+
+car_motor_status_select:
+377b e8c08000 ifetch 1 ,contr 
+377c c0003787 beq motor_stop ,car_motor_stop 
+377d c000b780 beq go_front ,car_motor_positive 
+377e c0013782 beq go_back ,car_motor_negative 
+377f 20600000 rtn 
+
+car_motor_positive:
+3780 70477b00 jam 0 ,mem_motor_select_p_n 
+3781 20203783 branch car_motor_negative + 1 
+
+car_motor_negative:
+3782 70477b01 jam 1 ,mem_motor_select_p_n 
+3783 e8c08000 ifetch 1 ,contr 
+3784 6000c77d store 1 ,mem_car_motor_speed 
+3785 ea440000 ifetch 8 ,regb 
+3786 2020378c branch car_motor_work 
+
+car_motor_stop:
+3787 ea408000 ifetch 1 ,regb 
+3788 204069d7 call pwm_disable 
+3789 1a40a401 increase 1 ,regb 
+378a ea408000 ifetch 1 ,regb 
+378b 202069d7 branch pwm_disable 
+
+car_motor_work:
+378c 6004477e store 8 ,mem_motor_pwm_pin1_set 
+378d 7047d101 jam 1 ,mem_car_working_flag 
+378e 6800c77b fetch 1 ,mem_motor_select_p_n 
+378f c000379a beq 0 ,car_motor_select_positive 
+
+car_motor_select_negative:
+3790 6800c77f fetch 1 ,mem_motor_pwm_pin2_set 
+3791 6000c780 store 1 ,mem_motor_pwm_pin_set 
+3792 6800c77e fetch 1 ,mem_motor_pwm_pin1_set 
+
+car_motor_work_next:
+3793 204069d7 call pwm_disable 
+3794 6800c77d fetch 1 ,mem_car_motor_speed 
+3795 2040379e call car_motor_speed_duty_setting 
+3796 6000c785 store 1 ,mem_motor_pwm_dute_set 
+3797 68034780 fetch 6 ,mem_motor_pwm_pin_set 
+3798 60030a9a store 6 ,mem_pdatatemp 
+3799 202069ae branch pwm_out_set 
+
+car_motor_select_positive:
+379a 6800c77e fetch 1 ,mem_motor_pwm_pin1_set 
+379b 6000c780 store 1 ,mem_motor_pwm_pin_set 
+379c 6800c77f fetch 1 ,mem_motor_pwm_pin2_set 
+379d 20203793 branch car_motor_work_next 
+
+car_motor_speed_duty_setting:
+379e 1feffe05 mul32 pdata ,5 ,pdata 
+379f 1fe0fe32 add pdata ,50 ,pdata 
+37a0 20600000 rtn 
+
+car_motor_speed_duty_transform:
+37a1 d8402ee0 arg 12000 ,temp 
+37a2 984ffe00 imul32 temp ,pdata 
+37a3 1fe6fc64 div pdata ,100 
+37a4 20407f86 call wait_div_end 
+37a5 18078400 quotient temp 
+37a6 18422200 copy temp ,rega 
+37a7 58002ee0 setarg 12000 
+37a8 98462400 isub temp ,regb 
+37a9 20600000 rtn 
+
+car_ir_init:
+37aa 68108082 hfetch 1 ,core_gpio_sel2 
+37ab 79207e02 set1 2 ,pdata 
+37ac 60108082 hstore 1 ,core_gpio_sel2 
+37ad 5800009e setarg 158 
+37ae 60110068 hstore 2 ,core_pwm_pcnt4 
+37af 6011006a hstore 2 ,core_pwm_ncnt4 
+37b0 20600000 rtn 
+
+car_ir_data_rx_from_app:
+37b1 6800c7f0 fetch 1 ,mem_car_24g_go_die_flag 
+37b2 247a0000 nrtn blank 
+37b3 68014752 fetch 2 ,mem_le_receive_payload 
+37b4 60014787 store 2 ,mem_ir_data 
+37b5 6800c7ea fetch 1 ,mem_car_24g_status 
+37b6 c080b7b9 bne work_paired ,car_ir_data_tx 
+37b7 680144a0 fetch 2 ,mem_le_lap 
+37b8 60014787 store 2 ,mem_ir_data 
+
+car_ir_data_tx:
+37b9 44e9c01a bpatch patch1a_3 ,mem_patch1a 
+37ba 204037aa call car_ir_init 
+37bb 204037dc call car_ir_enable 
+37bc 5800bb80 setarg 48000 
+37bd 20402a8f call sleep 
+37be 204037e0 call car_ir_disable 
+37bf 58001c20 setarg 7200 
+37c0 20402a8f call sleep 
+37c1 df200010 arg 16 ,loopcnt 
+
+car_ir_send_loop:
+37c2 204037dc call car_ir_enable 
+37c3 68014787 fetch 2 ,mem_ir_data 
+37c4 c28037c9 bbit1 0 ,car_ir_is_bit1 
+37c5 58001c20 setarg 7200 
+37c6 20402a8f call sleep 
+37c7 204037e0 call car_ir_disable 
+37c8 202037cc branch car_ir_wait_finish 
+
+car_ir_is_bit1:
+37c9 58003840 setarg 14400 
+37ca 20402a8f call sleep 
+37cb 204037e0 call car_ir_disable 
+
+car_ir_wait_finish:
+37cc 58001c20 setarg 7200 
+37cd 20402a8f call sleep 
+37ce 68014787 fetch 2 ,mem_ir_data 
+37cf 1fe37e00 rshift pdata ,pdata 
+37d0 60014787 store 2 ,mem_ir_data 
+37d1 c20037c2 loop car_ir_send_loop 
+37d2 7047f102 jam 2 ,mem_car_attack_shake_timer 
+37d3 7047f201 jam 1 ,mem_car_attack_shake_flag 
+37d4 58000a01 setarg 0x0a01 
+37d5 60014752 store 2 ,mem_le_receive_payload 
+37d6 6800c7b9 fetch 1 ,mem_car_config_device_select 
+37d7 c001b7d9 beq device_battle_tank ,car_attack_shake_back_battle_tank 
+
+car_attack_shake_back_battle_car:
+37d8 20203762 branch car_motor_control 
+
+car_attack_shake_back_battle_tank:
+37d9 58000a01 setarg 0x0a01 
+37da 60014754 store 2 ,mem_le_receive_payload + 2 
+37db 20203762 branch car_motor_control 
+
+car_ir_enable:
+37dc 68108085 hfetch 1 ,core_gpio_key2 
+37dd 1fe1fe40 or_into 0x40 ,pdata 
+37de 60108085 hstore 1 ,core_gpio_key2 
+37df 20600000 rtn 
+
+car_ir_disable:
+37e0 68108085 hfetch 1 ,core_gpio_key2 
+37e1 1fe17ebf and_into 0xbf ,pdata 
+37e2 60108085 hstore 1 ,core_gpio_key2 
+37e3 20600000 rtn 
+
+car_ir_rx_init:
+37e4 6800c7bb fetch 1 ,mem_car_config_ir_enable 
+37e5 c1000000 rtneq 0x00 
+37e6 20402c65 call lpm_disable_exen_output 
+37e7 6808c7bc fetcht 1 ,mem_car_config_ir_rx_gpio 
+37e8 6008c786 storet 1 ,mem_ir_rx_gpio 
+37e9 204067fb call gpio_config_input 
+37ea 20403847 call car_ir_gpio_get_status 
+37eb 24608000 nrtn true 
+37ec 70479a01 jam 1 ,mem_car_ir_breakdown_check_timer 
+37ed 20600000 rtn 
+
+car_ir_receive_process:
+37ee 6800c7bb fetch 1 ,mem_car_config_ir_enable 
+37ef c1000000 rtneq flag_ir_disable 
+37f0 6800c79b fetch 1 ,mem_car_ir_breakdown_flag 
+37f1 247a0000 nrtn blank 
+37f2 68014682 fetch 2 ,mem_ui_state_map 
+37f3 c284b7f6 bbit1 ui_state_ble_connected ,car_ir_receive_process_next 
+37f4 6800c7ea fetch 1 ,mem_car_24g_status 
+37f5 c1808000 rtnne work_paired 
+
+car_ir_receive_process_next:
+37f6 44ea401a bpatch patch1a_4 ,mem_patch1a 
+37f7 20403847 call car_ir_gpio_get_status 
+37f8 24608000 nrtn true 
+37f9 58008ca0 setarg 36000 
+37fa 20402a8f call sleep 
+37fb 20403847 call car_ir_gpio_get_status 
+37fc 24608000 nrtn true 
+37fd 2040383f call car_ir_clk_get 
+
+car_ir_packet_head_wait_end:
+37fe 20403842 call car_ir_clk_check 
+37ff 24610000 nrtn positive 
+3800 20403847 call car_ir_gpio_get_status 
+3801 2020b7fe branch car_ir_packet_head_wait_end ,true 
+3802 da200000 arg 0 ,rega 
+3803 df200010 arg 16 ,loopcnt 
+3804 2040383f call car_ir_clk_get 
+
+car_ir_receive_process_loop:
+3805 20403842 call car_ir_clk_check 
+3806 24610000 nrtn positive 
+3807 20403847 call car_ir_gpio_get_status 
+3808 2420b805 nbranch car_ir_receive_process_loop ,true 
+3809 58002a30 setarg 10800 
+380a 20402a8f call sleep 
+380b 20403847 call car_ir_gpio_get_status 
+380c 2020b812 branch car_ir_get_bit1 ,true 
+
+car_ir_get_bit0:
+380d 58000000 setarg 0 
+380e 1a232200 rshift rega ,rega 
+380f 9a21a200 ior rega ,rega 
+3810 c2003805 loop car_ir_receive_process_loop 
+3811 2020381b branch car_ir_receive_process_end 
+
+car_ir_get_bit1:
+3812 58008000 setarg 0x8000 
+3813 1a232200 rshift rega ,rega 
+3814 9a21a200 ior rega ,rega 
+3815 2040383f call car_ir_clk_get 
+
+car_ir_get_bit1_wait_low_end:
+3816 20403842 call car_ir_clk_check 
+3817 24610000 nrtn positive 
+3818 20403847 call car_ir_gpio_get_status 
+3819 2020b816 branch car_ir_get_bit1_wait_low_end ,true 
+381a c2003805 loop car_ir_receive_process_loop 
+
+car_ir_receive_process_end:
+381b 44eac01a bpatch patch1a_5 ,mem_patch1a 
+381c 1a227e00 copy rega ,pdata 
+381d 60014789 store 2 ,mem_ir_rx_buf 
+381e 60014797 store 2 ,mem_ir_notify_data + 8 
+381f 6800c7ea fetch 1 ,mem_car_24g_status 
+3820 c000b827 beq work_paired ,car_ir_24g_receive_attack 
+
+car_ir_data_notify:
+3821 df200007 arg 0x07 ,loopcnt 
+3822 d8c04792 arg mem_ir_notify_data_head ,contr 
+3823 204036f0 call calc_check_sum_start 
+3824 6000c799 store 1 ,mem_ir_notify_data_check_sum 
+3825 da20478f arg mem_ir_notify_data ,rega 
+3826 20207e3d branch queue_push 
+
+car_ir_24g_receive_attack:
+3827 6800c7ef fetch 1 ,mem_car_24g_ir_receive_attack_count 
+3828 1fe0fe01 increase 1 ,pdata 
+3829 6000c7ef store 1 ,mem_car_24g_ir_receive_attack_count 
+382a 1fe6fc02 div pdata ,2 
+382b 20407f86 call wait_div_end 
+382c 18078400 quotient temp 
+382d 18077e00 remainder pdata 
+382e 243a3838 nbranch car_ir_24g_receive_attack_blink ,blank 
+
+car_ir_24g_receive_attack_off:
+382f 6800c7bf fetch 1 ,mem_car_config_led_num 
+3830 98467c00 isub temp ,null 
+3831 2042b83d call car_ir_24g_go_die ,zero 
+3832 dfe0479c arg mem_car_led_control ,pdata 
+3833 184085ff increase -1 ,temp 
+3834 9840a200 iadd temp ,rega 
+3835 dfe00000 arg 0 ,pdata 
+3836 e2208000 istore 1 ,rega 
+3837 20600000 rtn 
+
+car_ir_24g_receive_attack_blink:
+3838 dfe0479c arg mem_car_led_control ,pdata 
+3839 9840a200 iadd temp ,rega 
+383a dfe00002 arg 2 ,pdata 
+383b e2208000 istore 1 ,rega 
+383c 20600000 rtn 
+
+car_ir_24g_go_die:
+383d 7047f001 jam 1 ,mem_car_24g_go_die_flag 
+383e 20600000 rtn 
+
+car_ir_clk_get:
+383f 1c427e00 copy clkn_bt ,pdata 
+3840 6002478b store 4 ,mem_ir_receive_clkn 
+3841 20600000 rtn 
+
+car_ir_clk_check:
+3842 1c427e00 copy clkn_bt ,pdata 
+3843 680a478b fetcht 4 ,mem_ir_receive_clkn 
+3844 98467e00 isub temp ,pdata 
+3845 1fe67cc8 sub pdata ,200 ,null 
+3846 20600000 rtn 
+
+car_ir_gpio_get_status:
+3847 6808c786 fetcht 1 ,mem_ir_rx_gpio 
+3848 2020681d branch gpio_get_bit 
+
+car_led_control_receive:
+3849 68044752 fetch 8 ,mem_le_receive_payload 
+384a 6004479c store 8 ,mem_car_led_control 
+384b 20600000 rtn 
+
+car_info_request:
+384c 6800c7b9 fetch 1 ,mem_car_config_device_select 
+384d 6000c7af store 1 ,mem_car_info_request_payload 
+384e 6800c7ba fetch 1 ,mem_car_config_motor_layout 
+384f 6000c7b0 store 1 ,mem_car_info_request_payload + 1 
+3850 6800c7bb fetch 1 ,mem_car_config_ir_enable 
+3851 6000c7b1 store 1 ,mem_car_info_request_payload + 2 
+3852 df20000d arg 13 ,loopcnt 
+3853 d8c047aa arg mem_car_info_request_head ,contr 
+3854 204036f0 call calc_check_sum_start 
+3855 6000c7b7 store 1 ,mem_car_info_request_checksum 
+3856 da2047a7 arg mem_car_info_request ,rega 
+3857 20207e3d branch queue_push 
+
+light_init:
+3858 204065c2 call clear_eeprom_size_2k 
+3859 7046f67a jam 0x7a ,mem_curr_packet_num 
+385a 2040386d call light_load_controler_list 
+385b 20403867 call light_init_crr_cmd_count 
+385c 58003860 setarg light_pairing_timer 
+385d 600141fd store 2 ,mem_cb_event_timer 
+385e da200000 arg 0 ,rega 
+385f 202069a6 branch pwm_init 
+
+light_pairing_timer:
+3860 680146a1 fetch 2 ,mem_light_pairing_timer 
+3861 207a0000 rtn blank 
+3862 1fe0ffff increase -1 ,pdata 
+3863 600146a1 store 2 ,mem_light_pairing_timer 
+3864 c1800000 rtnne 0 
+3865 7046a000 jam 0 ,mem_light_pairing_enable 
+3866 20600000 rtn 
+
+light_init_crr_cmd_count:
+3867 44eb401a bpatch patch1a_6 ,mem_patch1a 
+3868 6800c6a4 fetch 1 ,mem_light_next_record 
+3869 1fe67c28 sub pdata ,40 ,null 
+386a 20610000 rtn positive 
+386b 7046a400 jam 0 ,mem_light_next_record 
+386c 20600000 rtn 
+
+light_load_controler_list:
+386d da2046a4 arg mem_light_next_record ,rega 
+386e da400000 arg 0 ,regb 
+386f d8400051 arg 81 ,temp 
+3870 202065df branch iicd_read_eep_data 
+
+light_find_controler_pairing:
+3871 78547c00 disable user 
+3872 6800c6a3 fetch 1 ,mem_light_cnum 
+3873 1fe27200 copy pdata ,loopcnt 
+3874 da2046a5 arg mem_light_clist ,rega 
+3875 1a622400 copy regc ,regb 
+
+light_find_controler_pairing_loop:
+3876 44ebc01a bpatch patch1a_7 ,mem_patch1a 
+3877 2040387c call light_compare_addr_record 
+3878 2022ffe7 branch enable_user ,zero 
+
+light_find_single_pairing_diff:
+3879 1a20a204 increase 4 ,rega 
+387a c2003876 loop light_find_controler_pairing_loop 
+387b 20600000 rtn 
+
+light_compare_addr_record:
+387c 44ec401b bpatch patch1b_0 ,mem_patch1b 
+387d ea218000 ifetch 3 ,rega 
+387e ea498000 ifetcht 3 ,regb 
+387f 98467c00 isub temp ,null 
+3880 20600000 rtn 
+
+light_compare_single_record:
+3881 44ecc01b bpatch patch1b_1 ,mem_patch1b 
+3882 ea218000 ifetch 3 ,rega 
+3883 ea498000 ifetcht 3 ,regb 
+3884 98467c00 isub temp ,null 
+3885 24628000 nrtn zero 
+3886 e8c08000 ifetch 1 ,contr 
+3887 1fe67c00 sub pdata ,0 ,null 
+3888 20628000 rtn zero 
+3889 1a208c03 add rega ,3 ,contr 
+388a e8c88000 ifetcht 1 ,contr 
+388b 98467c00 isub temp ,null 
+388c 20600000 rtn 
+
+light_find_controler_cmd:
+388d 44ed401b bpatch patch1b_2 ,mem_patch1b 
+388e 78547c00 disable user 
+388f 6800c6a3 fetch 1 ,mem_light_cnum 
+3890 1fe27200 copy pdata ,loopcnt 
+3891 da2046a5 arg mem_light_clist ,rega 
+3892 1a622400 copy regc ,regb 
+
+light_find_controler_cmd_loop:
+3893 20403881 call light_compare_single_record 
+3894 2022ffe7 branch enable_user ,zero 
+3895 1a20a204 increase 4 ,rega 
+3896 c2003893 loop light_find_controler_cmd_loop 
+3897 20600000 rtn 
+
+light_recv_adv:
+3898 68008004 fetch 1 ,mem_le_scanrsp_rcv 
+3899 1fe0fe01 increase 1 ,pdata 
+389a 60008004 store 1 ,mem_le_scanrsp_rcv 
+389b da6002e5 arg mem_le_rxbuf + 12 ,regc 
+
+light_anylize_command:
+389c ea610000 ifetch 2 ,regc 
+389d d84055aa arg 0x55aa ,temp 
+389e 98467c00 isub temp ,null 
+389f 24628000 nrtn zero 
+38a0 18c22600 copy contr ,regc 
+38a1 ea698000 ifetcht 3 ,regc 
+38a2 58ffffff setarg 0xffffff 
+38a3 98467c00 isub temp ,null 
+38a4 2022b8a8 branch light_parse_cmd ,zero 
+38a5 2040388d call light_find_controler_cmd 
+38a6 203438a8 branch light_parse_cmd ,user 
+38a7 20600000 rtn 
+
+light_parse_cmd:
+38a8 44edc01b bpatch patch1b_3 ,mem_patch1b 
+38a9 1a60a604 increase 4 ,regc 
+38aa ea608000 ifetch 1 ,regc 
+38ab 6808c6f6 fetcht 1 ,mem_curr_packet_num 
+38ac 98467c00 isub temp ,null 
+38ad 20628000 rtn zero 
+38ae 6000c6f6 store 1 ,mem_curr_packet_num 
+38af 68008003 fetch 1 ,mem_le_req_rcv 
+38b0 1fe0fe01 increase 1 ,pdata 
+38b1 60008003 store 1 ,mem_le_req_rcv 
+38b2 1a60a601 increase 1 ,regc 
+38b3 ea608000 ifetch 1 ,regc 
+38b4 6000c6f5 store 1 ,mem_light_crr_cmd_count 
+38b5 1fe27200 copy pdata ,loopcnt 
+38b6 207a0000 rtn blank 
+
+light_parse_cmd_loop:
+38b7 e8c08000 ifetch 1 ,contr 
+38b8 c00038c2 beq light_cmd_pwm0 ,light_parse_cmd_pwm0 
+38b9 c000b8cf beq light_cmd_pwm1 ,light_parse_cmd_pwm1 
+38ba c00138d4 beq light_cmd_pwm2 ,light_parse_cmd_pwm2 
+38bb c001b8d9 beq light_cmd_pwm3 ,light_parse_cmd_pwm3 
+38bc c00238de beq light_cmd_pwm4 ,light_parse_cmd_pwm4 
+38bd c002b8e3 beq light_cmd_pwm5 ,light_parse_cmd_pwm5 
+38be c00338e8 beq light_cmd_auto_mode ,light_parse_auto_mode 
+38bf c07fb8ea beq light_cmd_pairing ,light_parse_pairing 
+38c0 c20038b7 loop light_parse_cmd_loop 
+38c1 20600000 rtn 
+
+light_parse_cmd_pwm0:
+38c2 18c22600 copy contr ,regc 
+38c3 6800c69a fetch 1 ,mem_light_pwm0 
+38c4 60008a9a store 1 ,mem_pdatatemp 
+38c5 d8400000 arg 0 ,temp 
+
+light_parse_cmd_pwm_common:
+38c6 60088a9b storet 1 ,mem_pdatatemp + 1 
+38c7 58002710 setarg 10000 
+38c8 60018a9c store 3 ,mem_pdatatemp + 2 
+38c9 ea608000 ifetch 1 ,regc 
+38ca 60008a9f store 1 ,mem_pdatatemp + 5 
+38cb 204069ae call pwm_out_set 
+38cc 1a610c01 and regc ,1 ,contr 
+38cd c20038b7 loop light_parse_cmd_loop 
+38ce 20600000 rtn 
+
+light_parse_cmd_pwm1:
+38cf 1a620c00 copy regc ,contr 
+38d0 6800c69b fetch 1 ,mem_light_pwm1 
+38d1 60008a9a store 1 ,mem_pdatatemp 
+38d2 d8400001 arg 1 ,temp 
+38d3 202038c6 branch light_parse_cmd_pwm_common 
+
+light_parse_cmd_pwm2:
+38d4 1a620c00 copy regc ,contr 
+38d5 6800c69c fetch 1 ,mem_light_pwm2 
+38d6 60008a9a store 1 ,mem_pdatatemp 
+38d7 d8400002 arg 2 ,temp 
+38d8 202038c6 branch light_parse_cmd_pwm_common 
+
+light_parse_cmd_pwm3:
+38d9 1a620c00 copy regc ,contr 
+38da 6800c69d fetch 1 ,mem_light_pwm3 
+38db 60008a9a store 1 ,mem_pdatatemp 
+38dc d8400003 arg 3 ,temp 
+38dd 202038c6 branch light_parse_cmd_pwm_common 
+
+light_parse_cmd_pwm4:
+38de 1a620c00 copy regc ,contr 
+38df 6800c69e fetch 1 ,mem_light_pwm4 
+38e0 60008a9a store 1 ,mem_pdatatemp 
+38e1 d8400004 arg 4 ,temp 
+38e2 202038c6 branch light_parse_cmd_pwm_common 
+
+light_parse_cmd_pwm5:
+38e3 1a620c00 copy regc ,contr 
+38e4 6800c69f fetch 1 ,mem_light_pwm5 
+38e5 60008a9a store 1 ,mem_pdatatemp 
+38e6 d8400005 arg 5 ,temp 
+38e7 202038c6 branch light_parse_cmd_pwm_common 
+
+light_parse_auto_mode:
+38e8 e8c08000 ifetch 1 ,contr 
+38e9 20600000 rtn 
+
+light_parse_pairing:
+38ea 18c22600 copy contr ,regc 
+38eb 6800c6a0 fetch 1 ,mem_light_pairing_enable 
+38ec c080b8ee bne 1 ,light_parse_pairing_abandon 
+38ed 204038f0 call update_controler_list 
+
+light_parse_pairing_abandon:
+38ee 1a610c04 and regc ,4 ,contr 
+38ef 20600000 rtn 
+
+update_controler_list:
+38f0 44ee401b bpatch patch1b_4 ,mem_patch1b 
+38f1 20403871 call light_find_controler_pairing 
+38f2 203438fe branch update_conrtoler_list_found ,user 
+38f3 6800c6a4 fetch 1 ,mem_light_next_record 
+38f4 1fe20400 copy pdata ,temp 
+38f5 1fe0fe01 increase 1 ,pdata 
+38f6 6000c6a4 store 1 ,mem_light_next_record 
+38f7 20403867 call light_init_crr_cmd_count 
+38f8 184b8400 lshift2 temp ,temp 
+38f9 580046a5 setarg mem_light_clist 
+38fa 98408a00 iadd temp ,contw 
+38fb ea620000 ifetch 4 ,regc 
+38fc e0a20000 istore 4 ,contw 
+38fd 20203903 branch update_conrtoler_store_list 
+
+update_conrtoler_list_found:
+38fe 1a608c03 add regc ,3 ,contr 
+38ff e8c08000 ifetch 1 ,contr 
+3900 207a0000 rtn blank 
+3901 ea620000 ifetch 4 ,regc 
+3902 e2220000 istore 4 ,rega 
+
+update_conrtoler_store_list:
+3903 da2046a4 arg mem_light_next_record ,rega 
+3904 da400000 arg 0 ,regb 
+3905 d8400051 arg 81 ,temp 
+3906 20206606 branch iicd_write_eep_data 
+
+lightc_init:
+3907 6808c69a fetcht 1 ,mem_lightc_led_gpio 
+3908 20406825 call gpio_out_inactive 
+3909 20600000 rtn 
+
+lightc_dispatch:
+390a 6808c69a fetcht 1 ,mem_lightc_led_gpio 
+390b 20406829 call gpio_out_active 
+390c 6808c69a fetcht 1 ,mem_lightc_led_gpio 
+390d 20406825 call gpio_out_inactive 
+390e 2040391d call lightc_start_adv 
+390f 6800c6a7 fetch 1 ,mem_adv_time 
+3910 247a0000 nrtn blank 
+3911 20402c29 call lpm_write_gpio_wakeup 
+3912 68120138 hfetch 4 ,core_lpm_ctrl 
+3913 793ffe0f set0 15 ,pdata 
+3914 6012004c hstore 4 ,core_lpm_reg 
+3915 20402c21 call lpm_write_ctrl 
+3916 d85fffff arg param_hibernate_clks ,temp 
+3917 20202b2a branch lpm_sleep 
+
+lightc_adv:
+3918 6800c6a7 fetch 1 ,mem_adv_time 
+3919 203a56f9 branch le_adv_loop_tx ,blank 
+391a 1fe0ffff increase -1 ,pdata 
+391b 6000c6a7 store 1 ,mem_adv_time 
+391c 202056f9 branch le_adv_loop_tx 
+
+lightc_start_adv:
+391d 1feffe14 mul32 pdata ,20 ,pdata 
+391e d8c046a8 arg mem_cmd0_string ,contr 
+391f 98c08c00 iadd contr ,contr 
+3920 e8c08000 ifetch 1 ,contr 
+3921 207a0000 rtn blank 
+3922 1fe22200 copy pdata ,rega 
+3923 1a227200 copy rega ,loopcnt 
+3924 d8a04372 arg mem_le_adv_data + 2 ,contw 
+3925 20407f01 call memcpy 
+3926 1a227e00 copy rega ,pdata 
+3927 1fe0fe02 increase 2 ,pdata 
+3928 6000c36f store 1 ,mem_le_adv_data_len 
+3929 20600000 rtn 
+
+module_init:
+392a 20758000 rtn wake 
+392b 204057a3 call le_modified_name 
+392c 204068a8 call adc_init_data 
+392d 58003982 setarg module_process_idle 
+392e 600141f3 store 2 ,mem_cb_idle_process 
+392f 5800396e setarg module_bt_conn_process 
+3930 600141f1 store 2 ,mem_cb_bt_process 
+3931 58003986 setarg module_process_bb_event 
+3932 600141f5 store 2 ,mem_cb_bb_event_process 
+3933 5800396d setarg module_le_conn_process 
+3934 600141ef store 2 ,mem_cb_le_process 
+3935 58003969 setarg module_lpm_lock 
+3936 600141e9 store 2 ,mem_cb_check_wakelock 
+3937 58003ab7 setarg module_hci_cmd_transmit_le_notify 
+3938 600141fb store 2 ,mem_cb_ble_transmit 
+3939 58003c32 setarg module_hci_event_receive_spp_data 
+393a 6001456f store 2 ,mem_cb_receive_spp_data 
+393b 58003cc2 setarg module_le_receive_data 
+393c 600141f9 store 2 ,mem_cb_att_write 
+393d 58003cd7 setarg module_bb_event_timer 
+393e 600141fd store 2 ,mem_cb_event_timer 
+393f 2040397f call module_spp_clear_last_transmite_clock 
+3940 44eec01b bpatch patch1b_5 ,mem_patch1b 
+3941 20403945 call module_lpm_uart_init 
+3942 20403964 call module_gpio_init 
+3943 20402c6f call check_module_disabled 
+3944 20203c48 branch module_hci_event_enter_standby_mode 
+
+module_lpm_uart_init:
+3945 680246aa fetch 4 ,mem_module_uart_rx_buffer 
+3946 60120054 hstore 4 ,core_uart_rsaddr 
+3947 680246ae fetch 4 ,mem_module_uart_tx_buffer 
+3948 6012005a hstore 4 ,core_uart_tsaddr 
+3949 68108081 hfetch 1 ,core_gpio_sel1 
+394a 1fe1fe04 or_into 0x04 ,pdata 
+394b 1fe17efc and_into 0xfc ,pdata 
+394c 60108081 hstore 1 ,core_gpio_sel1 
+394d 70806200 jam 0x00 ,core_uart_ctrl 
+394e 680146aa fetch 2 ,mem_module_uart_rx_buffer 
+394f 60110058 hstore 2 ,core_uart_rrptr 
+3950 680146ae fetch 2 ,mem_module_uart_tx_buffer 
+3951 6011005e hstore 2 ,core_uart_twptr 
+3952 60110060 hstore 2 ,core_uart_trptrp 
+3953 68120078 hfetch 4 ,core_gpio_pu0 
+3954 79207e07 set1 7 ,pdata 
+3955 60120078 hstore 4 ,core_gpio_pu0 
+3956 68110050 hfetch 2 ,core_clkoff 
+3957 793ffe0f set0 clock_off_uart ,pdata 
+3958 60110050 hstore 2 ,core_clkoff 
+3959 204066ce call uart_set_baud_by_mem 
+395a 70804300 jam uartclk_crystal ,core_uart_clksel 
+395b 70806281 jam uart_ctrl_h4 ,core_uart_ctrl 
+395c 6800c6bf fetch 1 ,mem_module_flag 
+395d 2feffe00 isolate1 module_flag_uart_flow_control ,pdata 
+395e 68188062 hfetcht 1 ,core_uart_ctrl 
+395f 79208404 setflag true ,4 ,temp 
+3960 60188062 hstoret 1 ,core_uart_ctrl 
+3961 20600000 rtn 
+
+module_lpm_init:
+3962 2040397f call module_spp_clear_last_transmite_clock 
+3963 20203945 branch module_lpm_uart_init 
+
+module_gpio_init:
+3964 6808c69e fetcht 1 ,mem_module_connect_state_gpio 
+3965 2040680e call gpio_config_output 
+3966 204039e6 call module_set_conn_pin_low 
+3967 6808c69c fetcht 1 ,mem_module_wake_up_gpio 
+3968 202067fb branch gpio_config_input 
+
+module_lpm_lock:
+3969 6808c69c fetcht 1 ,mem_module_wake_up_gpio 
+396a 2040681d call gpio_get_bit 
+396b 2420b3d2 nbranch app_put_lpm_wake_lock ,true 
+396c 202033d0 branch app_get_lpm_wake_lock 
+
+module_le_conn_process:
+396d 20600000 rtn 
+
+module_bt_conn_process:
+396e 20403970 call module_spp_enter_sniff 
+396f 20203ce9 branch module_control_air_flow 
+
+module_spp_enter_sniff:
+3970 6800c682 fetch 1 ,mem_ui_state_map 
+3971 c302397f bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
+3972 44ef401b bpatch patch1b_6 ,mem_patch1b 
+3973 58003eff setarg 0x3eff 
+3974 680a46c5 fetcht 4 ,mem_last_transmite_clock 
+3975 98408400 iadd temp ,temp 
+3976 1c427e00 copy clkn_bt ,pdata 
+3977 98467c00 isub temp ,null 
+3978 24610000 nrtn positive 
+3979 68014682 fetch 2 ,mem_ui_state_map 
+397a c282b97f bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
+397b 6800c6bf fetch 1 ,mem_module_flag 
+397c c3830000 rtnbit1 moudle_task_sniff 
+397d 20403cec call module_set_sniff_task_flag 
+397e 2040340e call app_bt_enter_sniff 
+
+module_spp_clear_last_transmite_clock:
+397f 1c427e00 copy clkn_bt ,pdata 
+3980 600246c5 store 4 ,mem_last_transmite_clock 
+3981 20600000 rtn 
+
+module_process_idle:
+3982 20403ce9 call module_control_air_flow 
+3983 2040526e call l2cap_malloc_is_fifo_full 
+3984 247a0000 nrtn blank 
+3985 202039eb branch module_process 
+
+module_process_bb_event:
+3986 1a627e00 copy regc ,pdata 
+3987 c000b9d4 beq bt_evt_bb_connected ,module_process_bb_conn 
+3988 c00139a3 beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
+3989 c00239d7 beq bt_evt_reconn_failed ,module_process_reconn_fail 
+398a c002b9c4 beq bt_evt_setup_complete ,module_process_setup_complete 
+398b c00439aa beq bt_evt_spp_connected ,module_process_spp_connected 
+398c c004b9b1 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
+398d c00539c9 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
+398e c005b9b6 beq bt_evt_enter_sniff ,module_process_enter_sniff 
+398f c00639c2 beq bt_evt_exit_sniff ,module_process_exit_sniff 
+3990 c009b9d7 beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
+3991 c00a39cf beq bt_evt_le_connected ,module_process_le_conn 
+3992 c00ab9c6 beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
+3993 c010b9ca beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
+3994 c011b9cb beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
+3995 c01239ce beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
+3996 c0183c8a beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
+3997 c018bc8c beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
+3998 c0193c9a beq bt_evt_le_start_enc ,module_hci_event_start_enc 
+3999 c019bc98 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
+399a c01a3c84 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
+399b c01abc73 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
+399c c01b3c82 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
+399d c01bbc8e beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
+399e c01c3c90 beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
+399f c01dbca1 beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
+39a0 c01ebc6a beq bt_evt_store_nvram ,module_hci_event_store_device 
+39a1 c020b9d9 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
+39a2 20600000 rtn 
+
+module_process_bb_event_disconned:
+39a3 2040397f call module_spp_clear_last_transmite_clock 
+39a4 6800c665 fetch 1 ,mem_flag_pairing_state 
+39a5 245a3c8e ncall module_hci_event_bt_pairing_fail ,blank 
+39a6 204039d7 call module_disconn_start 
+39a7 68014682 fetch 2 ,mem_ui_state_map 
+39a8 c4020000 rtnbit0 ui_state_bt_spp_conn 
+39a9 202039b1 branch module_spp_disconnected 
+
+module_process_spp_connected:
+39aa 68014682 fetch 2 ,mem_ui_state_map 
+39ab 79207e04 set1 ui_state_bt_spp_conn ,pdata 
+39ac 60014682 store 2 ,mem_ui_state_map 
+39ad 6800c6a7 fetch 1 ,mem_module_spp_lpm_mult 
+39ae 6000c172 store 1 ,mem_lpm_mult 
+39af 204039e6 call module_set_conn_pin_low 
+39b0 20203c1d branch module_hci_event_spp_connect 
+
+module_process_spp_disconnected:
+
+module_spp_disconnected:
+39b1 68014682 fetch 2 ,mem_ui_state_map 
+39b2 c4020000 rtnbit0 ui_state_bt_spp_conn 
+39b3 793ffe04 set0 ui_state_bt_spp_conn ,pdata 
+39b4 60014682 store 2 ,mem_ui_state_map 
+39b5 20203c21 branch module_hci_event_spp_disconnect 
+
+module_process_enter_sniff:
+
+module_sniff_param_check:
+39b6 2040397f call module_spp_clear_last_transmite_clock 
+39b7 68014042 fetch 2 ,mem_context + coffset_tsniff 
+39b8 1fe37e00 rshift pdata ,pdata 
+39b9 680941e3 fetcht 2 ,mem_sniff_param_interval 
+39ba 98467c00 isub temp ,null 
+39bb 2422b9bd nbranch module_sniff_param_check_unsniff ,zero 
+39bc 20203416 branch app_lpm_mult_enable 
+
+module_sniff_param_check_unsniff:
+39bd 6800c6bf fetch 1 ,mem_module_flag 
+39be c3828000 rtnbit1 moudle_task_unsniff 
+39bf 68110112 hfetch 2 ,core_uart_rxitems 
+39c0 245a3cf0 ncall module_set_unsniff_task_flag ,blank 
+39c1 2020340c branch app_bt_sniff_exit 
+
+module_process_exit_sniff:
+39c2 20403cee call module_clear_sniff_task_flag 
+39c3 20203418 branch app_lpm_mult_disable 
+
+module_process_setup_complete:
+39c4 2040397f call module_spp_clear_last_transmite_clock 
+39c5 202039dd branch module_conn_start 
+
+module_process_bb_even_le_disconn:
+39c6 20405816 call le_clr_config_more_data 
+39c7 204039d7 call module_disconn_start 
+39c8 20203c23 branch module_hci_event_le_disconnect 
+
+module_process_evt_pincode_req:
+39c9 202033dd branch app_bt_set_pincode 
+
+module_process_sniff_not_accept:
+39ca 20203cee branch module_clear_sniff_task_flag 
+
+module_process_unsniff_accept:
+39cb 6800c6bf fetch 1 ,mem_module_flag 
+39cc c302b40e bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
+39cd 20203cf2 branch module_clear_unsniff_task_flag 
+
+module_process_unsniff_not_accept:
+39ce 20203cf2 branch module_clear_unsniff_task_flag 
+
+module_process_le_conn:
+39cf 204058ba call le_send_att_exchange_mtu_requset 
+39d0 204039dd call module_conn_start 
+39d1 6800c6a8 fetch 1 ,mem_module_le_lpm_mult 
+39d2 6000c172 store 1 ,mem_lpm_mult 
+39d3 20203c1f branch module_hci_event_le_connect 
+
+module_process_bb_conn:
+39d4 70466100 jam 0 ,mem_flag_mode_ssp_pin 
+39d5 20403cee call module_clear_sniff_task_flag 
+39d6 20203cf2 branch module_clear_unsniff_task_flag 
+
+module_process_page_time_out:
+
+module_process_reconn_fail:
+
+module_disconn_start:
+39d7 20403a52 call module_start_adv_discovery_by_command 
+39d8 202039db branch module_set_conn_pin_high 
+
+module_process_ble_ltk_lost:
+39d9 20405cc9 call le_send_reject_ind 
+39da 20205b02 branch le_send_smp_security_request 
+
+module_set_conn_pin_high:
+39db 6808c69e fetcht 1 ,mem_module_connect_state_gpio 
+39dc 20206829 branch gpio_out_active 
+
+module_conn_start:
+39dd 204039df call module_stop_adv_discovery 
+39de 202039e6 branch module_set_conn_pin_low 
+
+module_stop_adv_discovery:
+39df 6800c6a1 fetch 1 ,mem_module_state 
+39e0 2feffe00 isolate1 moudle_state_bt_bit ,pdata 
+39e1 2040b3f0 call app_bt_stop_discovery ,true 
+39e2 6800c6a1 fetch 1 ,mem_module_state 
+39e3 2feffe01 isolate1 moudle_state_ble_bit ,pdata 
+39e4 2040b3f8 call app_ble_stop_adv ,true 
+39e5 20600000 rtn 
+
+module_set_conn_pin_low:
+39e6 6808c69e fetcht 1 ,mem_module_connect_state_gpio 
+39e7 20206825 branch gpio_out_inactive 
+
+module_process_with_credit:
+39e8 6800c56b fetch 1 ,mem_credit_flag 
+39e9 c1000000 rtneq credit_disable 
+39ea 20206c28 branch rfcomm_send_uih_without_payload 
+
+module_process:
+39eb 6810810c hfetch 1 ,core_uart_status 
+39ec c281b9e8 bbit1 uart_status_rx_fifo_empty ,module_process_with_credit 
+39ed 204066cb call uartd_prepare_rx 
+39ee e8608000 ifetch 1 ,contru 
+39ef c080ba01 bne 0x01 ,module_hci_in_excp 
+39f0 68110112 hfetch 2 ,core_uart_rxitems 
+39f1 1fe67c02 sub pdata ,2 ,null 
+39f2 20610000 rtn positive 
+39f3 e8608000 ifetch 1 ,contru 
+39f4 60008b03 store 1 ,mem_module_uart_opcode 
+39f5 e8688000 ifetcht 1 ,contru 
+39f6 18622200 copy contru ,rega 
+39f7 60088b04 storet 1 ,mem_module_uart_len 
+39f8 18408403 add temp ,3 ,temp 
+39f9 68110112 hfetch 2 ,core_uart_rxitems 
+39fa 98460400 isub temp ,temp 
+39fb 24610000 nrtn positive 
+39fc 700b0501 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+39fd 20403a17 call module_hci_cmd_control 
+39fe 68008b05 fetch 1 ,mem_module_temp_nl_discard_packet 
+39ff c1000000 rtneq hci_not_discard_packet 
+3a00 20203a12 branch module_hci_dicard_packet 
+
+module_hci_in_excp:
+3a01 20407ec1 call delay_10ms 
+3a02 20403c79 call module_hci_event_invalid_packet 
+3a03 20203a04 branch module_hci_release_except 
+
+module_hci_release_except:
+3a04 44efc01b bpatch patch1b_7 ,mem_patch1b 
+3a05 68110112 hfetch 2 ,core_uart_rxitems 
+3a06 207a0000 rtn blank 
+3a07 204066cb call uartd_prepare_rx 
+3a08 e8608000 ifetch 1 ,contru 
+3a09 1fe67c01 sub pdata ,0x01 ,null 
+3a0a 2442ba16 ncall module_hci_dicard_bytes ,zero 
+3a0b 2422ba04 nbranch module_hci_release_except ,zero 
+3a0c e8608000 ifetch 1 ,contru 
+3a0d c1028000 rtneq hci_cmd_spp_data_req 
+3a0e c1148000 rtneq hci_cmd_set_credit_given 
+3a0f 186087ff increase -1 ,contru 
+3a10 20403a16 call module_hci_dicard_bytes 
+3a11 20203a04 branch module_hci_release_except 
+
+module_hci_dicard_packet:
+3a12 204066cb call uartd_prepare_rx 
+3a13 18608602 increase 2 ,contru 
+3a14 e8608000 ifetch 1 ,contru 
+3a15 98608600 iadd contru ,contru 
+
+module_hci_dicard_bytes:
+3a16 202066c8 branch uartd_rxdone 
+
+module_hci_cmd_control:
+3a17 44f0401c bpatch patch1c_0 ,mem_patch1c 
+3a18 68008b03 fetch 1 ,mem_module_uart_opcode 
+3a19 c0003a3f beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
+3a1a c000ba44 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
+3a1b c0013a49 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
+3a1c c001ba5f beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
+3a1d c0023a6b beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
+3a1e c002ba75 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
+3a1f c004ba9a beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
+3a20 c005bad7 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
+3a21 c0063ad8 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
+3a22 c006baec beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
+3a23 c0073af4 beq hci_cmd_set_uartcontrol_req ,module_hci_cmd_set_uart_control_mode 
+3a24 c007bafa beq hci_cmd_set_uart_baud_req ,module_hci_cmd_set_uart_baud 
+3a25 c0083b06 beq hci_cmd_version_req ,module_hci_cmd_version_request 
+3a26 c008bb0e beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
+3a27 c0093b12 beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
+3a28 c0133b16 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
+3a29 c0143b1d beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
+3a2a c014bb2d beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
+3a2b c0153b36 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
+3a2c c015bb69 beq hci_cmd_power_req ,module_hci_cmd_power_request 
+3a2d c0163b6f beq hci_cmd_power_set ,module_hci_cmd_power_set 
+3a2e c0183b76 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
+3a2f c018bb7c beq hci_cmd_set_gpio ,module_hci_cmd_set_gpio 
+3a30 c0193b90 beq hci_cmd_read_gpio ,module_hci_cmd_read_gpio 
+3a31 c019bb98 beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
+3a32 c01a3bbb beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
+3a33 c01abbc4 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
+3a34 c01b3bcd beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
+3a35 c01bbbd7 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
+3a36 c01c3bda beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
+3a37 c0203be2 beq hci_cmd_set_wake_gpio ,module_hci_cmd_set_wake_gpio 
+3a38 c0213bec beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
+3a39 c0243bf1 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
+3a3a c024bbfc beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
+3a3b c028bc02 beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
+3a3c c030bc06 beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
+3a3d c07fbc15 beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
+3a3e 20203c17 branch module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_set_bt_addr:
+3a3f 68008b04 fetch 1 ,mem_module_uart_len 
+3a40 c0833c17 bne 6 ,module_hci_event_receive_invalid_cmd 
+3a41 e8630000 ifetch 6 ,contru 
+3a42 600340a0 store 6 ,mem_lap 
+3a43 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_le_addr:
+3a44 68008b04 fetch 1 ,mem_module_uart_len 
+3a45 c0833c17 bne 6 ,module_hci_event_receive_invalid_cmd 
+3a46 e8630000 ifetch 6 ,contru 
+3a47 600344a0 store 6 ,mem_le_lap 
+3a48 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_visibility:
+3a49 68008b04 fetch 1 ,mem_module_uart_len 
+3a4a c080bc17 bne 1 ,module_hci_event_receive_invalid_cmd 
+3a4b 1a220600 copy rega ,contru 
+3a4c 20403c1a call module_hci_event_receive_valid_cmd 
+3a4d e8688000 ifetcht 1 ,contru 
+3a4e 6008c6a9 storet 1 ,mem_module_bluetooth_stauts_by_command 
+3a4f 68014682 fetch 2 ,mem_ui_state_map 
+3a50 c3848000 rtnbit1 ui_state_ble_connected 
+3a51 c3800000 rtnbit1 ui_state_bt_connected 
+
+module_start_adv_discovery_by_command:
+3a52 6800c6a1 fetch 1 ,mem_module_state 
+3a53 2feffe00 isolate1 moudle_state_bt_bit ,pdata 
+3a54 2420ba58 nbranch moudle_start_adv_by_command ,true 
+3a55 6808c6a9 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+3a56 18417e03 and temp ,0x03 ,pdata 
+3a57 6000c093 store 1 ,mem_scan_mode 
+
+moudle_start_adv_by_command:
+3a58 6800c6a1 fetch 1 ,mem_module_state 
+3a59 2feffe01 isolate1 moudle_state_ble_bit ,pdata 
+3a5a 24608000 nrtn true 
+3a5b 6808c6a9 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+3a5c 284ffe02 isolate1 2 ,temp 
+3a5d 2020b3fa branch app_ble_start_adv ,true 
+3a5e 202033f8 branch app_ble_stop_adv 
+
+module_hci_cmd_set_bt_name:
+3a5f 68008b04 fetch 1 ,mem_module_uart_len 
+3a60 1fe67c43 sub pdata ,67 ,null 
+3a61 24213c17 nbranch module_hci_event_receive_invalid_cmd ,positive 
+3a62 6000c515 store 1 ,mem_local_name_length 
+3a63 df200008 arg 8 ,loopcnt 
+3a64 20407ec6 call memset0 
+3a65 68008b04 fetch 1 ,mem_module_uart_len 
+3a66 1fe27200 copy pdata ,loopcnt 
+3a67 1a220600 copy rega ,contru 
+3a68 d8a04516 arg mem_local_name ,contw 
+3a69 204066ea call uart_copy_rx_bytes_fast 
+3a6a 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_le_name:
+3a6b 68008b04 fetch 1 ,mem_module_uart_len 
+3a6c 1fe67c1d sub pdata ,29 ,null 
+3a6d 24213c17 nbranch module_hci_event_receive_invalid_cmd ,positive 
+3a6e 6000c3af store 1 ,mem_le_name_len 
+3a6f 1fe27200 copy pdata ,loopcnt 
+3a70 1a220600 copy rega ,contru 
+3a71 d8a043b0 arg mem_le_name ,contw 
+3a72 204066ea call uart_copy_rx_bytes_fast 
+3a73 204057a3 call le_modified_name 
+3a74 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_receive_spp_data:
+3a75 6800c682 fetch 1 ,mem_ui_state_map 
+3a76 c3023c17 bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
+3a77 204033ba call app_check_sniff 
+3a78 2020ba86 branch module_hci_cmd_spp_exit_sniff ,true 
+3a79 700b0500 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+3a7a 2040397f call module_spp_clear_last_transmite_clock 
+3a7b 6800c568 fetch 1 ,mem_remote_credits 
+3a7c 207a0000 rtn blank 
+3a7d 68014573 fetch 2 ,mem_nl_rx_len_all 
+3a7e c0803a84 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
+3a7f 68008b04 fetch 1 ,mem_module_uart_len 
+3a80 60014573 store 2 ,mem_nl_rx_len_all 
+3a81 1a220600 copy rega ,contru 
+3a82 18627e00 copy contru ,pdata 
+3a83 60014571 store 2 ,mem_nl_rx_data_src 
+
+module_hci_cmd_pass_init_ng_rx_len_all:
+3a84 20403a88 call module_hci_cmd_get_current_packet_len_and_remain_len 
+3a85 20206c4d branch spp_tx_rfcomm_packet 
+
+module_hci_cmd_spp_exit_sniff:
+3a86 700b0500 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+3a87 20203cd1 branch module_exit_sniff 
+
+module_hci_cmd_get_current_packet_len_and_remain_len:
+3a88 20403a8e call module_hci_cmd_get_current_patcket_len 
+3a89 68014573 fetch 2 ,mem_nl_rx_len_all 
+3a8a 6809469f fetcht 2 ,mem_current_packet_length 
+3a8b 98467e00 isub temp ,pdata 
+3a8c 60014573 store 2 ,mem_nl_rx_len_all 
+3a8d 20600000 rtn 
+
+module_hci_cmd_get_current_patcket_len:
+3a8e 68014573 fetch 2 ,mem_nl_rx_len_all 
+3a8f d840006e arg dm_refcom_buff_len ,temp 
+3a90 20407fdd call not_greater_than 
+3a91 6809456c fetcht 2 ,mem_rfcomm_max_frame_size 
+3a92 20407fdd call not_greater_than 
+3a93 6809455e fetcht 2 ,mem_pn_max_frame_size 
+3a94 20407fdd call not_greater_than 
+3a95 6001469f store 2 ,mem_current_packet_length 
+3a96 20600000 rtn 
+
+module_hci_command_tx_spp_tx_complete:
+3a97 700b0501 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+3a98 700b0305 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
+3a99 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_receive_le_data:
+3a9a 68014682 fetch 2 ,mem_ui_state_map 
+3a9b c304bc17 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+3a9c 20403ad4 call module_check_ble_encrypt_state 
+3a9d 20343c17 branch module_hci_event_receive_invalid_cmd ,user 
+3a9e 700b0500 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+3a9f 6800c6bf fetch 1 ,mem_module_flag 
+3aa0 c2823ab4 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
+3aa1 6800c6c0 fetch 1 ,mem_module_hci_notify_len 
+3aa2 247a0000 nrtn blank 
+3aa3 700b0501 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+3aa4 e8610000 ifetch 2 ,contru 
+3aa5 600146c1 store 2 ,mem_module_hci_notify_handle 
+3aa6 18627e00 copy contru ,pdata 
+3aa7 600146c3 store 2 ,mem_module_hci_nofiy_addr 
+3aa8 68008b04 fetch 1 ,mem_module_uart_len 
+3aa9 1fe0fffe pincrease -2 
+3aaa 24213c17 nbranch module_hci_event_receive_invalid_cmd ,positive 
+3aab 2022bc17 branch module_hci_event_receive_invalid_cmd ,zero 
+3aac 6000c6c0 store 1 ,mem_module_hci_notify_len 
+3aad 700b0500 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+3aae 20405814 call le_set_config_more_data 
+3aaf 20403ab7 call module_hci_cmd_transmit_le_notify 
+3ab0 20403ab7 call module_hci_cmd_transmit_le_notify 
+3ab1 20403ab7 call module_hci_cmd_transmit_le_notify 
+3ab2 6800c6bf fetch 1 ,mem_module_flag 
+3ab3 c4020000 rtnbit0 module_flag_ble_data_finish 
+
+module_hci_cmd_receive_le_data_finish:
+3ab4 700b0501 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+3ab5 20403cf6 call module_clear_le_tx_data_flag 
+3ab6 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_transmit_le_notify:
+3ab7 6800c6c0 fetch 1 ,mem_module_hci_notify_len 
+3ab8 207a0000 rtn blank 
+3ab9 20405892 call le_fifo_check_nearly_full 
+3aba 247a0000 nrtn blank 
+3abb 20403acf call module_get_le_remote_mtu 
+3abc 44f0c01c bpatch patch1c_1 ,mem_patch1c 
+3abd 1840fffd add temp ,-3 ,pdata 
+3abe 6808c6c0 fetcht 1 ,mem_module_hci_notify_len 
+3abf 20407fdd call not_greater_than 
+3ac0 1fe22200 copy pdata ,rega 
+3ac1 18427e00 copy temp ,pdata 
+3ac2 9a267e00 isub rega ,pdata 
+3ac3 6000c6c0 store 1 ,mem_module_hci_notify_len 
+3ac4 680946c1 fetcht 2 ,mem_module_hci_notify_handle 
+3ac5 20405a64 call le_att_malloc_tx_notify 
+3ac6 680146c3 fetch 2 ,mem_module_hci_nofiy_addr 
+3ac7 1fe20600 copy pdata ,contru 
+3ac8 1a227200 copy rega ,loopcnt 
+3ac9 204066ea call uart_copy_rx_bytes_fast 
+3aca 18627e00 copy contru ,pdata 
+3acb 600146c3 store 2 ,mem_module_hci_nofiy_addr 
+3acc 6800c6c0 fetch 1 ,mem_module_hci_notify_len 
+3acd 247a0000 nrtn blank 
+3ace 20203cf4 branch module_set_le_tx_data_flag 
+
+module_get_le_remote_mtu:
+3acf d8400017 arg 0x17 ,temp 
+3ad0 6800c6bf fetch 1 ,mem_module_flag 
+3ad1 c3808000 rtnbit1 module_flag_ble_send_mtu23 
+3ad2 680944a8 fetcht 2 ,mem_le_remote_mtu 
+3ad3 20600000 rtn 
+
+module_check_ble_encrypt_state:
+3ad4 6800c6bf fetch 1 ,mem_module_flag 
+3ad5 c2815a42 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
+3ad6 20207fe9 branch disable_user 
+
+module_hci_cmd_inquire_status:
+3ad7 20203c4c branch module_hci_event_status_res 
+
+module_hci_cmd_set_pairing_mode:
+3ad8 1a220600 copy rega ,contru 
+3ad9 e8608000 ifetch 1 ,contru 
+3ada c0003adf beq pairing_pincode ,module_hci_pairing_pincode_mode 
+3adb c000bae2 beq pairing_justwork ,module_hci_pairing_just_work_mode 
+3adc c0013ae8 beq pairing_passkey ,module_hci_pairing_passkey 
+3add c001baea beq pairing_confirm ,module_hci_pairing_numeric_comparison 
+3ade 20203c17 branch module_hci_event_receive_invalid_cmd 
+
+module_hci_pairing_pincode_mode:
+3adf 2040612b call ssp_disable 
+3ae0 70465a00 jam 0 ,mem_ssp_enable 
+3ae1 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_pairing_just_work_mode:
+3ae2 58040003 setarg ssp_mode_just_work_io_cap_data 
+
+module_hci_sspairing_mode:
+3ae3 6001c65b store 3 ,mem_sp_iocap_local 
+3ae4 6000c662 store 1 ,mem_ssp_mode_flag 
+3ae5 20406124 call ssp_enable 
+3ae6 70465a01 jam 1 ,mem_ssp_enable 
+3ae7 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_pairing_passkey:
+3ae8 58040002 setarg ssp_mode_passkey_io_cap_data 
+3ae9 20203ae3 branch module_hci_sspairing_mode 
+
+module_hci_pairing_numeric_comparison:
+3aea 58040001 setarg ssp_mode_ssp_pin_io_cap_data 
+3aeb 20203ae3 branch module_hci_sspairing_mode 
+
+module_hci_cmd_set_pincode:
+3aec 68008b04 fetch 1 ,mem_module_uart_len 
+3aed 1fe67c10 sub pdata ,16 ,null 
+3aee 24213c17 nbranch module_hci_event_receive_invalid_cmd ,positive 
+3aef 6000c689 store 1 ,mem_pin_length 
+3af0 1fe27200 copy pdata ,loopcnt 
+3af1 d8a0468a arg mem_pin ,contw 
+3af2 204066fd call uart_copy_rx_bytes 
+3af3 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_uart_control_mode:
+3af4 1a220600 copy rega ,contru 
+3af5 e8608000 ifetch 1 ,contru 
+3af6 68188062 hfetcht 1 ,core_uart_ctrl 
+3af7 7d3a0404 nsetflag blank ,4 ,temp 
+3af8 60188062 hstoret 1 ,core_uart_ctrl 
+3af9 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_uart_baud:
+3afa 68008b04 fetch 1 ,mem_module_uart_len 
+3afb 1fe27200 copy pdata ,loopcnt 
+3afc 1a220600 copy rega ,contru 
+3afd 20407f58 call string2dec_from_uart 
+3afe 596e3600 setarg uart_clk_24 
+3aff 9846fc00 idiv temp 
+3b00 20407f86 call wait_div_end 
+3b01 1807fe00 quotient pdata 
+
+module_hci_cmd_set_uart_baud_ok:
+3b02 60014243 store uart_baud_len ,mem_baud 
+3b03 20403c1a call module_hci_event_receive_valid_cmd 
+3b04 20407f9e call wait_uarttx 
+3b05 202066ce branch uart_set_baud_by_mem 
+
+module_hci_cmd_version_request:
+3b06 da200002 arg 2 ,rega 
+3b07 da40469a arg mem_soft_version_num ,regb 
+3b08 d8400000 arg 0 ,temp 
+3b09 20203c25 branch module_hci_event_set_cmd 
+
+module_hci_event_set_cmd_send_response:
+3b0a 60010ac2 store 2 ,mem_event_cmd_response_content 
+3b0b da400ac2 arg mem_event_cmd_response_content ,regb 
+3b0c d8400000 arg 0 ,temp 
+3b0d 20203c25 branch module_hci_event_set_cmd 
+
+module_hci_cmd_bt_disconnect:
+3b0e 68014682 fetch 2 ,mem_ui_state_map 
+3b0f c3003c17 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_bt_disconnect_doing:
+3b10 20403c1a call module_hci_event_receive_valid_cmd 
+3b11 202033e9 branch app_bt_disconnect 
+
+module_hci_cmd_ble_disconnect:
+3b12 68014682 fetch 2 ,mem_ui_state_map 
+3b13 c304bc17 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_ble_disconnect_doing:
+3b14 20403c1a call module_hci_event_receive_valid_cmd 
+3b15 20203402 branch app_ble_disconnect 
+
+module_hci_cmd_set_nvram:
+3b16 68008b04 fetch 1 ,mem_module_uart_len 
+3b17 1fe27200 copy pdata ,loopcnt 
+3b18 1a220600 copy rega ,contru 
+3b19 68014215 fetch 2 ,mem_nv_data_ptr 
+3b1a 1fe20a00 icopy contw 
+3b1b 204066ea call uart_copy_rx_bytes_fast 
+3b1c 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_confirm_gkey:
+3b1d 6800c682 fetch 1 ,mem_ui_state_map 
+3b1e c3003c17 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+3b1f e8608000 ifetch 1 ,contru 
+3b20 6808c661 fetcht 1 ,mem_flag_mode_ssp_pin 
+3b21 793a0400 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
+3b22 79200407 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
+3b23 6008c661 storet 1 ,mem_flag_mode_ssp_pin 
+3b24 20403c1a call module_hci_event_receive_valid_cmd 
+3b25 6800c661 fetch 1 ,mem_flag_mode_ssp_pin 
+3b26 c2833b2b bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
+3b27 20600000 rtn 
+
+dhkey_not_accept:
+3b28 70466100 jam 0 ,mem_flag_mode_ssp_pin 
+3b29 700a9921 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
+3b2a 20207d8f branch ui_ipc_send_cmd 
+
+module_hci_cmd_spp_number_comparison_result_is1:
+3b2b c2805f95 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+3b2c 20203b28 branch dhkey_not_accept 
+
+module_hci_cmd_set_credit_given:
+3b2d 6800c682 fetch 1 ,mem_ui_state_map 
+3b2e c4020000 rtnbit0 ui_state_bt_spp_conn 
+3b2f 6800c56b fetch 1 ,mem_credit_flag 
+3b30 c1000000 rtneq credit_disable 
+3b31 e8608000 ifetch 1 ,contru 
+3b32 6808c569 fetcht 1 ,mem_credit_given 
+3b33 98408400 iadd temp ,temp 
+3b34 6008c569 storet 1 ,mem_credit_given 
+3b35 20600000 rtn 
+
+module_hci_cmd_auto_adv:
+3b36 df200040 arg 0x40 ,loopcnt 
+3b37 d8a0436f arg mem_le_adv_data_len ,contw 
+3b38 20407ed4 call clear_mem 
+3b39 58000000 setarg 0 
+3b3a 60008ab2 store 1 ,mem_regb 
+3b3b 1a220600 copy rega ,contru 
+
+module_hci_cmd_auto_adv_loop:
+3b3c 18627e00 copy contru ,pdata 
+3b3d 60010ab6 store 2 ,mem_regc 
+3b3e 20403b64 call module_hci_cmd_auto_adv_adv_analys 
+3b3f 68008ab2 fetch 1 ,mem_regb 
+3b40 68088aa2 fetcht 1 ,mem_temp 
+3b41 18408401 increase 1 ,temp 
+3b42 9840fe00 iadd temp ,pdata 
+3b43 60008ab2 store 1 ,mem_regb 
+3b44 1fe67c1f sub pdata ,31 ,null 
+3b45 24213b50 nbranch module_hci_cmd_auto_adv_store_scan ,positive 
+
+module_hci_cmd_auto_adv_store_adv:
+3b46 6808c36f fetcht 1 ,mem_le_adv_data_len 
+3b47 58004370 setarg mem_le_adv_data 
+3b48 9840fe00 iadd temp ,pdata 
+3b49 60010abb store 2 ,mem_contw 
+3b4a 68088aa2 fetcht 1 ,mem_temp 
+3b4b 18408401 increase 1 ,temp 
+3b4c 6800c36f fetch 1 ,mem_le_adv_data_len 
+3b4d 9840fe00 iadd temp ,pdata 
+3b4e 6000c36f store 1 ,mem_le_adv_data_len 
+3b4f 20203b59 branch module_hci_cmd_auto_adv_store_common 
+
+module_hci_cmd_auto_adv_store_scan:
+3b50 6808c38f fetcht 1 ,mem_le_scan_data_len 
+3b51 58004390 setarg mem_le_scan_data 
+3b52 9840fe00 iadd temp ,pdata 
+3b53 60010abb store 2 ,mem_contw 
+3b54 68088aa2 fetcht 1 ,mem_temp 
+3b55 18408401 increase 1 ,temp 
+3b56 6800c38f fetch 1 ,mem_le_scan_data_len 
+3b57 9840fe00 iadd temp ,pdata 
+3b58 6000c38f store 1 ,mem_le_scan_data_len 
+
+module_hci_cmd_auto_adv_store_common:
+3b59 68010abb fetch 2 ,mem_contw 
+3b5a 1fe20a00 copy pdata ,contw 
+3b5b 68010ab6 fetch 2 ,mem_regc 
+3b5c 1fe20600 copy pdata ,contru 
+3b5d 18427200 copy temp ,loopcnt 
+3b5e 204066ea call uart_copy_rx_bytes_fast 
+3b5f 68008b04 fetch 1 ,mem_module_uart_len 
+3b60 68088ab2 fetcht 1 ,mem_regb 
+3b61 98467c00 isub temp ,null 
+3b62 2422bb3c nbranch module_hci_cmd_auto_adv_loop ,zero 
+3b63 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_auto_adv_adv_analys:
+3b64 e8608000 ifetch 1 ,contru 
+3b65 60008aa2 store 1 ,mem_temp 
+3b66 e8608000 ifetch 1 ,contru 
+3b67 60008aae store 1 ,mem_rega 
+3b68 20600000 rtn 
+
+module_hci_cmd_power_request:
+3b69 d8400000 arg 0 ,temp 
+3b6a da200002 arg 2 ,rega 
+3b6b 680146b4 fetch 2 ,mem_module_vdd_quotient 
+3b6c 60010ac2 store 2 ,mem_event_cmd_response_content 
+3b6d da400ac2 arg mem_event_cmd_response_content ,regb 
+3b6e 20203c25 branch module_hci_event_set_cmd 
+
+module_hci_cmd_power_set:
+3b6f 68008b04 fetch 1 ,mem_module_uart_len 
+3b70 c080bc17 bne 1 ,module_hci_event_receive_invalid_cmd 
+3b71 e8608000 ifetch 1 ,contru 
+3b72 6000c6b2 store 1 ,mem_module_read_vdd_flag 
+3b73 58000000 setarg 0x00 
+3b74 600146b4 store 2 ,mem_module_vdd_quotient 
+3b75 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_passkey_entry:
+3b76 e8620000 ifetch 4 ,contru 
+3b77 6002468a store 4 ,mem_pin 
+3b78 70468904 jam 4 ,mem_pin_length 
+3b79 70466300 jam 0 ,mem_authentication_passkey_times 
+3b7a 20403c1a call module_hci_event_receive_valid_cmd 
+3b7b 20205f31 branch authentication_passkey 
+
+module_hci_cmd_set_gpio:
+3b7c 68008b04 fetch 1 ,mem_module_uart_len 
+3b7d c081bc17 bne 3 ,module_hci_event_receive_invalid_cmd 
+3b7e e8608000 ifetch 1 ,contru 
+3b7f c0003b82 beq hci_cmd_config_gpio_input ,module_set_gpio_input 
+3b80 c000bb8a beq hci_cmd_config_gpio_output ,module_set_gpio_output 
+3b81 20203c17 branch module_hci_event_receive_invalid_cmd 
+
+module_set_gpio_input:
+3b82 e8688000 ifetcht 1 ,contru 
+3b83 e8608000 ifetch 1 ,contru 
+3b84 c0013b88 beq gpio_input_high_impedance ,module_set_gpio_high_impedance 
+3b85 7d3a0407 nsetflag blank ,7 ,temp 
+3b86 204067fb call gpio_config_input 
+3b87 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_set_gpio_high_impedance:
+3b88 20406806 call gpio_set_high_impedance 
+3b89 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_set_gpio_output:
+3b8a e8688000 ifetcht 1 ,contru 
+3b8b 20406812 call gpio_config_output0 
+3b8c e8608000 ifetch 1 ,contru 
+3b8d 2feffe00 isolate1 0 ,pdata 
+3b8e 2040682c call gpio_out_flag 
+3b8f 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_read_gpio:
+3b90 68008b04 fetch 1 ,mem_module_uart_len 
+3b91 c080bc17 bne 1 ,module_hci_event_receive_invalid_cmd 
+3b92 e8688000 ifetcht 1 ,contru 
+3b93 2040681d call gpio_get_bit 
+3b94 58000000 setarg 0x0 
+3b95 7d20fe00 nsetflag true ,0 ,pdata 
+3b96 da200001 arg 1 ,rega 
+3b97 20203b0a branch module_hci_event_set_cmd_send_response 
+
+module_hci_cmd_le_set_pairing_mode:
+3b98 1a220600 copy rega ,contru 
+3b99 e8608000 ifetch 1 ,contru 
+3b9a 1fe20400 copy pdata ,temp 
+3b9b c040bba3 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
+3b9c c0413ba8 beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
+3b9d c041bbae beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
+3b9e 6000c4c6 store 1 ,mem_le_pairing_mode 
+3b9f c0003bb3 beq le_pairing_mode_none ,module_le_set_no_pairing 
+3ba0 c000bbb6 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
+3ba1 c0013bb8 beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
+3ba2 20203c17 branch module_hci_event_receive_invalid_cmd 
+
+module_le_set_pairing_mode_secure_justwork:
+3ba3 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+3ba4 203a3c17 branch module_hci_event_receive_invalid_cmd ,blank 
+3ba5 6008c4c6 storet 1 ,mem_le_pairing_mode 
+3ba6 7044560d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+3ba7 20203bb4 branch module_le_set_noinputnooutput 
+
+module_le_set_pairing_mode_secure_numeric:
+3ba8 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+3ba9 203a3c17 branch module_hci_event_receive_invalid_cmd ,blank 
+3baa 6008c4c6 storet 1 ,mem_le_pairing_mode 
+3bab 7044560d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+3bac 70445401 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+3bad 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_le_set_pairing_mode_secure_passkey:
+3bae 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+3baf 203a3c17 branch module_hci_event_receive_invalid_cmd ,blank 
+3bb0 6008c4c6 storet 1 ,mem_le_pairing_mode 
+3bb1 7044560d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+3bb2 20203bb9 branch module_le_set_displayonly 
+
+module_le_set_no_pairing:
+3bb3 70445600 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+
+module_le_set_noinputnooutput:
+3bb4 70445403 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+3bb5 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_le_set_pairing_mode_lagacy_just_work:
+3bb6 70445605 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+3bb7 20203bb4 branch module_le_set_noinputnooutput 
+
+module_le_set_pairing_mode_lagacy_passkey:
+3bb8 70445605 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+
+module_le_set_displayonly:
+3bb9 70445400 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+3bba 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_set_adv_data:
+3bbb 68008b04 fetch 1 ,mem_module_uart_len 
+3bbc 1fe67c1f sub pdata ,31 ,null 
+3bbd 24213c17 nbranch module_hci_event_receive_invalid_cmd ,positive 
+3bbe 6000c36f store 1 ,mem_le_adv_data_len 
+3bbf 1fe27200 copy pdata ,loopcnt 
+3bc0 1a220600 copy rega ,contru 
+3bc1 d8a04370 arg mem_le_adv_data ,contw 
+3bc2 204066ea call uart_copy_rx_bytes_fast 
+3bc3 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_set_scan_data:
+3bc4 68008b04 fetch 1 ,mem_module_uart_len 
+3bc5 1fe67c1f sub pdata ,31 ,null 
+3bc6 24213c17 nbranch module_hci_event_receive_invalid_cmd ,positive 
+3bc7 6000c38f store 1 ,mem_le_scan_data_len 
+3bc8 1fe27200 copy pdata ,loopcnt 
+3bc9 1a220600 copy rega ,contru 
+3bca d8a04390 arg mem_le_scan_data ,contw 
+3bcb 204066ea call uart_copy_rx_bytes_fast 
+3bcc 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_send_conn_update_req:
+3bcd 68014682 fetch 2 ,mem_ui_state_map 
+3bce c304bc17 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+3bcf 68008b04 fetch 1 ,mem_module_uart_len 
+3bd0 c0843c17 bne 0x08 ,module_hci_event_receive_invalid_cmd 
+3bd1 1a220600 copy rega ,contru 
+3bd2 e8640000 ifetch 8 ,contru 
+3bd3 60044496 store 8 ,mem_le_interval_min 
+3bd4 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+3bd5 20407d8f call ui_ipc_send_cmd 
+3bd6 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_le_adv_parameter:
+3bd7 e8610000 ifetch 2 ,contru 
+3bd8 60014482 store 2 ,mem_le_adv_interval 
+3bd9 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_start_pairing:
+3bda 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+3bdb 203a3c17 branch module_hci_event_receive_invalid_cmd ,blank 
+3bdc 6800c4c4 fetch 1 ,mem_le_pairing_state 
+3bdd c0803c17 bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
+3bde 6800c4c5 fetch 1 ,mem_le_enc_state 
+3bdf c0803c17 bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
+3be0 20407e25 call check_51cmd_le_smp_sec_req 
+3be1 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_wake_gpio:
+3be2 68008b04 fetch 1 ,mem_module_uart_len 
+3be3 c082bc17 bne 5 ,module_hci_event_receive_invalid_cmd 
+3be4 e8608000 ifetch 1 ,contru 
+3be5 6000c6a2 store 1 ,mem_module_mcu_wake_pin 
+3be6 e8620000 ifetch 4 ,contru 
+3be7 600246a3 store 4 ,mem_module_mcu_wake_delay_us 
+3be8 6808c6a2 fetcht 1 ,mem_module_mcu_wake_pin 
+3be9 2040680e call gpio_config_output 
+3bea 20403cbc call module_set_mcu_wake_pin_low 
+3beb 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_tx_power:
+3bec 68008b04 fetch 1 ,mem_module_uart_len 
+3bed c080bc17 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+3bee e8608000 ifetch 1 ,contru 
+3bef 6000c1de store 1 ,mem_tx_power 
+3bf0 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_confirm_gkey:
+3bf1 e8608000 ifetch 1 ,contru 
+3bf2 c000bbfa beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
+3bf3 6800c4c1 fetch 1 ,mem_le_secure_connect_state 
+3bf4 c001bbf8 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
+3bf5 c0033bf8 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
+3bf6 c003bbf8 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
+3bf7 20203c17 branch module_hci_event_receive_invalid_cmd 
+
+module_hci_cmd_le_confirm_gkey_ok:
+3bf8 7044c201 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
+3bf9 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_confirm_gkey_fail:
+3bfa 20405b53 call le_send_pairing_confirm_value_failed 
+3bfb 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_set_reject_justwork_flag:
+3bfc 68008b04 fetch 1 ,mem_module_uart_len 
+3bfd c080bc17 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+3bfe 20403c1a call module_hci_event_receive_valid_cmd 
+3bff e8608000 ifetch 1 ,contru 
+3c00 203a60cb branch classic_bt_clr_reject_justwork_flag ,blank 
+3c01 202060c9 branch classic_bt_set_reject_justwork_flag 
+
+module_hci_cmd_reset_chip:
+3c02 20403c1a call module_hci_event_receive_valid_cmd 
+3c03 20407f9e call wait_uarttx 
+3c04 70801001 jam 0x01 ,core_reset 
+3c05 20202a8e branch loop 
+
+module_hci_cmd_le_set_fixed_passkey:
+3c06 68008b04 fetch 1 ,mem_module_uart_len 
+3c07 c0003c17 beq 0 ,module_hci_event_receive_invalid_cmd 
+3c08 e8608000 ifetch 1 ,contru 
+3c09 203a3c13 branch module_hci_cmd_le_set_random_passkey ,blank 
+3c0a 68008b04 fetch 1 ,mem_module_uart_len 
+3c0b c082bc17 bne 5 ,module_hci_event_receive_invalid_cmd 
+3c0c e8620000 ifetch 4 ,contru 
+3c0d d84f4240 arg 1000000 ,temp 
+3c0e 98467c00 isub temp ,null 
+3c0f 20213c17 branch module_hci_event_receive_invalid_cmd ,positive 
+3c10 600244c7 store 4 ,mem_le_tk 
+3c11 2040580c call le_set_config_fixed_tk 
+3c12 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_cmd_le_set_random_passkey:
+3c13 2040580e call le_clr_config_fixed_tk 
+3c14 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_test_cmde_close_lpm:
+3c15 70409100 jam 0 ,mem_lpm_mode 
+3c16 20203c1a branch module_hci_event_receive_valid_cmd 
+
+module_hci_event_receive_invalid_cmd:
+3c17 d8400001 arg 1 ,temp 
+3c18 da200000 arg 0 ,rega 
+3c19 20203c25 branch module_hci_event_set_cmd 
+
+module_hci_event_receive_valid_cmd:
+3c1a d8400000 arg 0 ,temp 
+3c1b da200000 arg 0 ,rega 
+3c1c 20203c25 branch module_hci_event_set_cmd 
+
+module_hci_event_spp_connect:
+3c1d 700b0300 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
+3c1e 20203c49 branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_le_connect:
+3c1f 700b0302 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
+3c20 20203c49 branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_spp_disconnect:
+3c21 700b0303 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
+3c22 20203c49 branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_le_disconnect:
+3c23 700b0305 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
+3c24 20203c49 branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_set_cmd:
+3c25 68008b03 fetch 1 ,mem_module_uart_opcode 
+3c26 1fe22600 copy pdata ,regc 
+3c27 700b0306 jam hci_event_cmd_res ,mem_module_uart_opcode 
+3c28 58000002 setarg 2 
+3c29 9a20fe00 iadd rega ,pdata 
+3c2a 20403ca7 call module_hci_prepare_tx 
+3c2b 1a627e00 copy regc ,pdata 
+3c2c e1408000 istore 1 ,contwu 
+3c2d e1488000 istoret 1 ,contwu 
+3c2e 1a227200 copy rega ,loopcnt 
+3c2f 1a420c00 copy regb ,contr 
+3c30 204066e4 call uart_copy_tx_bytes 
+3c31 202066c5 branch uartd_send 
+
+module_hci_event_receive_spp_data:
+3c32 2040397f call module_spp_clear_last_transmite_clock 
+3c33 700b0307 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
+3c34 680084ff fetch 1 ,mem_current_length 
+3c35 207a0000 rtn blank 
+3c36 20403ca7 call module_hci_prepare_tx 
+3c37 680084ff fetch 1 ,mem_current_length 
+3c38 1fe27200 copy pdata ,loopcnt 
+3c39 68010501 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+3c3a 1fe20c00 copy pdata ,contr 
+3c3b 204066d1 call uart_copy_tx_bytes_fast 
+3c3c 202066c5 branch uartd_send 
+
+module_hci_event_receive_le_data:
+3c3d 700b0308 jam hci_event_le_data_rep ,mem_module_uart_opcode 
+3c3e 6800c6b6 fetch 1 ,mem_module_le_rx_data_len 
+3c3f 1fe27200 icopy loopcnt 
+3c40 1fe0fe02 increase 2 ,pdata 
+3c41 20403ca7 call module_hci_prepare_tx 
+3c42 680146b9 fetch 2 ,mem_module_le_rx_data_handle 
+3c43 e1410000 istore 2 ,contwu 
+3c44 680146b7 fetch 2 ,mem_module_le_rx_data_address 
+3c45 1fe20c00 icopy contr 
+3c46 204066d1 call uart_copy_tx_bytes_fast 
+3c47 202066c5 branch uartd_send 
+
+module_hci_event_enter_standby_mode:
+3c48 700b0309 jam hci_event_standby_rep ,mem_module_uart_opcode 
+
+module_hci_event_enter_standby_mode_len0:
+3c49 58000000 setarg 0 
+3c4a 20403ca7 call module_hci_prepare_tx 
+3c4b 202066c5 branch uartd_send 
+
+module_hci_event_status_res:
+3c4c 700b030a jam hci_event_status_res ,mem_module_uart_opcode 
+3c4d 58000001 setarg 1 
+3c4e 20403ca7 call module_hci_prepare_tx 
+3c4f 20403c5d call module_hci_read_bt_status 
+3c50 68014682 fetch 2 ,mem_ui_state_map 
+3c51 d8e00002 arg ui_state_bt_hid_conn ,queue 
+3c52 afefffff qisolate1 pdata 
+3c53 79208403 setflag true ,3 ,temp 
+3c54 d8e00009 arg ui_state_ble_connected ,queue 
+3c55 afefffff qisolate1 pdata 
+3c56 79208405 setflag true ,5 ,temp 
+3c57 6800c682 fetch 1 ,mem_ui_state_map 
+3c58 d8e00004 arg ui_state_bt_spp_conn ,queue 
+3c59 afefffff qisolate1 pdata 
+3c5a 79208404 setflag true ,4 ,temp 
+3c5b e1488000 istoret 1 ,contwu 
+3c5c 202066c5 branch uartd_send 
+
+module_hci_read_bt_status:
+3c5d d8400000 arg 0 ,temp 
+3c5e 6800c093 fetch 1 ,mem_scan_mode 
+3c5f d8e00000 arg inq_scan_mode ,queue 
+3c60 afefffff qisolate1 pdata 
+3c61 79208400 setflag true ,0 ,temp 
+3c62 d8e00001 arg page_scan_mode ,queue 
+3c63 afefffff qisolate1 pdata 
+3c64 79208401 setflag true ,1 ,temp 
+3c65 6800c36e fetch 1 ,mem_le_adv_enable 
+3c66 d8e00000 arg 0 ,queue 
+3c67 afefffff qisolate1 pdata 
+3c68 79208402 setflag true ,2 ,temp 
+3c69 20600000 rtn 
+
+module_hci_event_store_device:
+3c6a 700b030d jam hci_event_nvram_rep ,mem_module_uart_opcode 
+3c6b 6800c217 fetch 1 ,mem_nv_data_number 
+3c6c 1feffe22 mul32 pdata ,34 ,pdata 
+3c6d 1fe27200 icopy loopcnt 
+3c6e 20403ca7 call module_hci_prepare_tx 
+3c6f 68014215 fetch 2 ,mem_nv_data_ptr 
+3c70 1fe20c00 icopy contr 
+3c71 204066d1 call uart_copy_tx_bytes_fast 
+3c72 202066c5 branch uartd_send 
+
+module_hci_event_gkey_generate:
+3c73 700b030e jam hci_event_gkey ,mem_module_uart_opcode 
+3c74 58000004 setarg 4 
+3c75 20403ca7 call module_hci_prepare_tx 
+3c76 680209ba fetch 4 ,mem_gkey 
+3c77 e1420000 istore 4 ,contwu 
+3c78 202066c5 branch uartd_send 
+
+module_hci_event_invalid_packet:
+3c79 700b030f jam hci_event_invalid_packet ,mem_module_uart_opcode 
+3c7a 68110112 hfetch 2 ,core_uart_rxitems 
+3c7b d84000ff arg 0xff ,temp 
+3c7c 20407fdd call not_greater_than 
+3c7d 1fe27200 copy pdata ,loopcnt 
+3c7e 20403ca7 call module_hci_prepare_tx 
+3c7f 204066cb call uartd_prepare_rx 
+3c80 20406703 call uart_copy_rx2tx 
+3c81 202066c5 branch uartd_send 
+
+module_hci_event_passkey_entry_mode:
+3c82 700b0310 jam hci_event_get_passkey ,mem_module_uart_opcode 
+3c83 20203c49 branch module_hci_event_enter_standby_mode_len0 
+
+module_hci_event_le_tk:
+3c84 700b0311 jam hci_event_le_tk ,mem_module_uart_opcode 
+3c85 58000004 setarg 4 
+3c86 20403ca7 call module_hci_prepare_tx 
+3c87 680244c7 fetch 4 ,mem_le_tk 
+3c88 e1420000 istore 4 ,contwu 
+3c89 202066c5 branch uartd_send 
+
+module_hci_event_le_pairing_fail:
+3c8a da200180 arg flag_ble_pairing_fail ,rega 
+3c8b 20203c91 branch module_hci_event_pairing_completed 
+
+module_hci_event_le_pairing_success:
+3c8c da200080 arg flag_ble_pairing_success ,rega 
+3c8d 20203c91 branch module_hci_event_pairing_completed 
+
+module_hci_event_bt_pairing_fail:
+3c8e da200101 arg flag_bt_pairing_fail ,rega 
+3c8f 20203c91 branch module_hci_event_pairing_completed 
+
+module_hci_event_bt_pairing_success:
+3c90 da200001 arg flag_bt_pairing_success ,rega 
+
+module_hci_event_pairing_completed:
+3c91 70466100 jam 0 ,mem_flag_mode_ssp_pin 
+3c92 700b0314 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
+3c93 58000002 setarg 2 
+3c94 20403ca7 call module_hci_prepare_tx 
+3c95 1a227e00 copy rega ,pdata 
+3c96 e1410000 istore 2 ,contwu 
+3c97 202066c5 branch uartd_send 
+
+module_hci_event_pause_enc:
+3c98 da600000 arg flag_event_pause_enc ,regc 
+3c99 20203c9b branch module_hci_event_enc 
+
+module_hci_event_start_enc:
+3c9a da600001 arg flag_event_start_enc ,regc 
+
+module_hci_event_enc:
+3c9b 700b0315 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
+3c9c 58000001 setarg 1 
+3c9d 20403ca7 call module_hci_prepare_tx 
+3c9e 1a627e00 copy regc ,pdata 
+3c9f e1408000 istore 1 ,contwu 
+3ca0 202066c5 branch uartd_send 
+
+module_hci_event_le_gkey:
+3ca1 700b031d jam hci_event_le_gkey ,mem_module_uart_opcode 
+3ca2 58000004 setarg 4 
+3ca3 20403ca7 call module_hci_prepare_tx 
+3ca4 680209ba fetch 4 ,mem_gkey 
+3ca5 e1420000 istore 4 ,contwu 
+3ca6 202066c5 branch uartd_send 
+
+module_hci_prepare_tx:
+3ca7 700b0202 jam 0x02 ,mem_module_uart_cmd 
+3ca8 60008b04 store 1 ,mem_module_uart_len 
+3ca9 600c0aa2 storet 8 ,mem_temp 
+3caa 44f1401c bpatch patch1c_2 ,mem_patch1c 
+3cab 20403cb1 call module_set_mcu_wake_pin_high_delay 
+3cac 680c0aa2 fetcht 8 ,mem_temp 
+3cad 204066c2 call uartd_prepare_tx 
+3cae 68018b02 fetch 3 ,mem_module_uart_cmd 
+3caf e1418000 istore 3 ,contwu 
+3cb0 20600000 rtn 
+
+module_set_mcu_wake_pin_high_delay:
+3cb1 20403cba call module_check_mcu_wake_pin_high 
+3cb2 20608000 rtn true 
+
+module_set_mcu_wake_pin_h_delay:
+3cb3 20403cb8 call module_set_mcu_wake_pin_high 
+3cb4 680246a3 fetch 4 ,mem_module_mcu_wake_delay_us 
+3cb5 1feb7e00 rshift2 pdata ,pdata 
+3cb6 207a0000 rtn blank 
+3cb7 20203cbe branch delay 
+
+module_set_mcu_wake_pin_high:
+3cb8 6808c6a2 fetcht 1 ,mem_module_mcu_wake_pin 
+3cb9 20206829 branch gpio_out_active 
+
+module_check_mcu_wake_pin_high:
+3cba 6808c6a2 fetcht 1 ,mem_module_mcu_wake_pin 
+3cbb 2020681b branch gpio_check_active 
+
+module_set_mcu_wake_pin_low:
+3cbc 6808c6a2 fetcht 1 ,mem_module_mcu_wake_pin 
+3cbd 20206825 branch gpio_out_inactive 
+
+delay:
+3cbe 1fe0ffff increase -1 ,pdata 
+3cbf 20000026 nop 38 
+3cc0 243a3cbe nbranch delay ,blank 
+3cc1 20600000 rtn 
+
+module_le_receive_data:
+3cc2 20403ad4 call module_check_ble_encrypt_state 
+3cc3 20740000 rtn user 
+3cc4 1a227e00 copy rega ,pdata 
+3cc5 600146b7 store 2 ,mem_module_le_rx_data_address 
+3cc6 1a427e00 copy regb ,pdata 
+3cc7 6000c6b6 store 1 ,mem_module_le_rx_data_len 
+3cc8 68010478 fetch 2 ,mem_le_att_handle 
+3cc9 680946bb fetcht 2 ,mem_module_data_write_handle 
+3cca 98467c00 isub temp ,null 
+3ccb 2022bccf branch module_le_receive_data_ok ,zero 
+3ccc 680946bd fetcht 2 ,mem_module_data_write_handle2 
+3ccd 98467c00 isub temp ,null 
+3cce 24628000 nrtn zero 
+
+module_le_receive_data_ok:
+3ccf 600146b9 store 2 ,mem_module_le_rx_data_handle 
+3cd0 20203c3d branch module_hci_event_receive_le_data 
+
+module_exit_sniff:
+3cd1 6800c6bf fetch 1 ,mem_module_flag 
+3cd2 c3828000 rtnbit1 moudle_task_unsniff 
+3cd3 20403cf0 call module_set_unsniff_task_flag 
+3cd4 2020340c branch app_bt_sniff_exit 
+
+module_set_lpm_mult_2:
+3cd5 70417202 jam 2 ,mem_lpm_mult 
+3cd6 20600000 rtn 
+
+module_bb_event_timer:
+3cd7 20203cd8 branch module_read_vdd_timer 
+
+module_read_vdd_timer:
+3cd8 6800c6b2 fetch 1 ,mem_module_read_vdd_flag 
+3cd9 207a0000 rtn blank 
+3cda 6800c6b3 fetch 1 ,mem_module_read_vdd_count 
+3cdb 207a0000 rtn blank 
+3cdc 1fe0ffff increase -1 ,pdata 
+3cdd 6000c6b3 store 1 ,mem_module_read_vdd_count 
+3cde 247a0000 nrtn blank 
+3cdf 7046b30a jam flag_module_read_vdd_count ,mem_module_read_vdd_count 
+3ce0 204068eb call adc_set_mode 
+3ce1 20406908 call vdd_calculate_by_mode 
+3ce2 1fe6fc64 div pdata ,0x64 
+3ce3 20407f86 call wait_div_end 
+3ce4 1807fe00 quotient pdata 
+3ce5 18070400 remainder temp 
+3ce6 6000c6b4 store 1 ,mem_module_vdd_quotient 
+3ce7 6008c6b5 storet 1 ,mem_module_vdd_remainder 
+3ce8 20600000 rtn 
+
+module_control_air_flow:
+3ce9 20407fb4 call check_uart_tx_buff 
+3cea 202133d9 branch app_l2cap_flow_control_enable ,positive 
+3ceb 202033db branch app_l2cap_flow_control_disable 
+
+module_set_sniff_task_flag:
+3cec d8e00006 arg moudle_task_sniff ,queue 
+3ced 20203cfc branch module_set_state 
+
+module_clear_sniff_task_flag:
+3cee d8e00006 arg moudle_task_sniff ,queue 
+3cef 20203cf8 branch module_clr_state 
+
+module_set_unsniff_task_flag:
+3cf0 d8e00005 arg moudle_task_unsniff ,queue 
+3cf1 20203cfc branch module_set_state 
+
+module_clear_unsniff_task_flag:
+3cf2 d8e00005 arg moudle_task_unsniff ,queue 
+3cf3 20203cf8 branch module_clr_state 
+
+module_set_le_tx_data_flag:
+3cf4 d8e00004 arg module_flag_ble_data_finish ,queue 
+3cf5 20203cfc branch module_set_state 
+
+module_clear_le_tx_data_flag:
+3cf6 d8e00004 arg module_flag_ble_data_finish ,queue 
+3cf7 20203cf8 branch module_clr_state 
+
+module_clr_state:
+3cf8 6800c6bf fetch 1 ,mem_module_flag 
+3cf9 f93ffe00 qset0 pdata 
+3cfa 6000c6bf store 1 ,mem_module_flag 
+3cfb 20600000 rtn 
+
+module_set_state:
+3cfc 6800c6bf fetch 1 ,mem_module_flag 
+3cfd f9207e00 qset1 pdata 
+3cfe 6000c6bf store 1 ,mem_module_flag 
+3cff 20600000 rtn 
+
+mouse_init:
+3d00 20403d39 call mouse_setting_config 
+3d01 2040640f call spi_ncs_enable 
+3d02 204040c6 call mouse_init_sunt 
+3d03 20403d66 call mouse_dpi_config 
+3d04 20406411 call spi_ncs_disable 
+3d05 20758000 rtn wake 
+3d06 20403d16 call mouse_cheak_enable_usb 
+3d07 20403d19 call mouse_cb_fuction 
+3d08 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d09 c3880000 rtnbit1 mouse_enable_usb 
+3d0a 20403d4e call mouse_wakeup_from_power 
+3d0b c6130000 rtnmark1 mark_24g 
+3d0c 68014682 fetch 2 ,mem_ui_state_map 
+3d0d c28642b0 bbit1 ui_state_btn_down ,mouse_start_discovery 
+3d0e 202042a2 branch mouse_check_reconn_target 
+
+mouse_delay_4s:
+3d0f 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d10 c40d8000 rtnbit0 mouse_enable_init_delay 
+3d11 df200014 arg 20 ,loopcnt 
+
+mouse_delay_20ms:
+3d12 58030d40 setarg 200000 
+3d13 20402a8f call sleep 
+3d14 c2007ec1 loop delay_10ms 
+3d15 20600000 rtn 
+
+mouse_cheak_enable_usb:
+3d16 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d17 c4080000 rtnbit0 mouse_enable_usb 
+3d18 202048ea branch usb_init 
+
+mouse_cb_fuction:
+3d19 5800416d setarg mouse_le 
+3d1a 600141ef store 2 ,mem_cb_le_process 
+3d1b 58003f77 setarg mouse_send_process 
+3d1c 600141f1 store 2 ,mem_cb_bt_process 
+3d1d 58003ebb setarg mouse_process_lpm_before 
+3d1e 600141ed store 2 ,mem_cb_before_lpm 
+3d1f 5800417c setarg mouse_priority_bb_event 
+3d20 600141f5 store 2 ,mem_cb_bb_event_process 
+3d21 58003de3 setarg mouse_idle 
+3d22 600141f3 store 2 ,mem_cb_idle_process 
+3d23 58003eb3 setarg mouse_before_hibernate 
+3d24 600141eb store 2 ,mem_cb_before_hibernate 
+3d25 58003d5b setarg le_mouse_bb_event_connect_complete 
+3d26 600141f9 store 2 ,mem_cb_att_write 
+3d27 20402c7a call g24_head_ptr2regc 
+3d28 58004401 setarg mouse_g24_package_data 
+3d29 1a608ad8 add regc ,offset_24g_cb_data ,contw 
+3d2a e0a10000 istore 2 ,contw 
+3d2b 58004406 setarg mouse_g24_enter_lpm 
+3d2c 1a608ada add regc ,offset_24g_cb_lpm_prepare ,contw 
+3d2d e0a10000 istore 2 ,contw 
+3d2e 58003ebf setarg mouse_lpm_before_common 
+3d2f 1a608adc add regc ,offset_24g_cb_lpm_before ,contw 
+3d30 e0a10000 istore 2 ,contw 
+3d31 580041f9 setarg mouse_bb_event_timer 
+3d32 600141fd store 2 ,mem_cb_event_timer 
+3d33 58003d36 setarg mouse_spi_write_flash_cb 
+3d34 60014201 store 2 ,mem_cb_spi_flash_write_complate 
+3d35 20600000 rtn 
+
+mouse_spi_write_flash_cb:
+
+mouse_spi_init:
+3d36 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d37 c30964d7 bbit0 mouse_enable_spi2 ,spid_init 
+3d38 202064da branch spid_init2 
+
+mouse_setting_config:
+3d39 20758000 rtn wake 
+3d3a 20402c9d call g24_set_device_addr 
+3d3b 20403e6e call mouse_gpio_init 
+3d3c 20403e1e call mouse_param_init 
+3d3d 20403e54 call mouse_adc_init 
+3d3e 20405810 call le_set_config_fixed_ltk 
+3d3f 20405839 call le_set_justwork 
+3d40 2040582c call le_set_fixed_ltk 
+3d41 20405818 call le_set_config_read_authentication 
+3d42 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d43 c28a3d46 bbit1 mouse_enable_eeprom ,mouse_init_iic 
+3d44 c289c414 bbit1 mouse_enable_flash ,mouse_load_flash_info_cheak 
+3d45 20600000 rtn 
+
+mouse_init_iic:
+3d46 2040659c call iic_init_390k 
+3d47 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d48 2feffe19 isolate1 mouse_enable_2k_eeprom ,pdata 
+3d49 2440e5c2 ncall clear_eeprom_size_2k ,true 
+3d4a 2040443f call mouse_load_eeprom_dpi 
+3d4b 20403dc9 call mouse_init_environment 
+3d4c 204041aa call mouse_set_24g_addr_eeprom 
+3d4d 202065df branch iicd_read_eep_data 
+
+mouse_wakeup_from_power:
+3d4e 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d4f c30f3d53 bbit0 mouse_enable_wakeup_from_power ,mouse_wakeup_no_from_power 
+3d50 68008abd fetch 1 ,mem_wakup_from_power_flag 
+3d51 2fec0003 isolate0 gpio_latch ,pdata 
+3d52 24608000 nrtn true 
+
+mouse_wakeup_no_from_power:
+3d53 6800c71f fetch 1 ,mem_reconn_times_init 
+3d54 6000c71e store 1 ,mem_reconn_times 
+3d55 6800c6f5 fetch 1 ,mem_config_function_enable 
+3d56 c3830000 rtnbit1 enable_select_device_by_switch 
+
+mouse_start_24g_mode:
+3d57 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d58 c4088000 rtnbit0 mouse_enable_24g 
+3d59 c28eaee4 bbit1 mouse_enable_auto_24g_paring ,g24_auto_pair_start 
+3d5a 20202f2c branch g24_check_51cmd_start_24g 
+
+le_mouse_bb_event_connect_complete:
+3d5b 68008478 fetch 1 ,mem_le_att_handle 
+3d5c 1fe67e1a sub pdata ,26 ,pdata 
+3d5d 24628000 nrtn zero 
+3d5e 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+3d5f 20407d8f call ui_ipc_send_cmd 
+
+mouse_le_write_enable:
+3d60 d8e00000 arg write_req_enable_flag ,queue 
+3d61 202041b9 branch mouse_le_enable_connect_flag 
+
+mouse_dpi_up:
+3d62 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+3d63 c1008000 rtneq dpi_button_state_up 
+3d64 7046b601 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
+3d65 20600000 rtn 
+
+mouse_dpi_config:
+3d66 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+3d67 1fe17e0f and pdata ,0x0f ,pdata 
+3d68 6000c77a store 1 ,mem_mouse_dpi 
+3d69 20203d80 branch mouse_seting_dpi + 2 
+
+mouse_dpi_cheak:
+3d6a 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+3d6b 2040681d call gpio_get_bit 
+3d6c 2420bd62 nbranch mouse_dpi_up ,true 
+
+mouse_dpi_down:
+3d6d 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+3d6e c1000000 rtneq dpi_button_state_down 
+3d6f 7046b600 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+3d70 6800c77a fetch 1 ,mem_mouse_dpi 
+3d71 1fe0fe01 increase 1 ,pdata 
+3d72 1fe17e03 and pdata ,0x03 ,pdata 
+3d73 6000c77a store 1 ,mem_mouse_dpi 
+3d74 20403d7e call mouse_seting_dpi 
+3d75 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3d76 c28a443b bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+3d77 c289bd79 bbit1 mouse_enable_flash ,mouse_before_store_flash_cpi 
+3d78 20600000 rtn 
+
+mouse_before_store_flash_cpi:
+3d79 d840001e arg mouse_spi2_clk_gpio ,temp 
+3d7a 2040680e call gpio_config_output 
+3d7b d840001f arg mouse_spi2_sdio_gpio ,temp 
+3d7c 2040680e call gpio_config_output 
+3d7d 20204435 branch mouse_store_flash_device_info 
+
+mouse_seting_dpi:
+3d7e 44f1c01c bpatch patch1c_3 ,mem_patch1c 
+3d7f 2040424a call mosue_dpi_led_blink_init 
+3d80 6800c6e0 fetch 1 ,mem_config_sensor_type 
+3d81 c002bdaa beq p3610 ,mouse_seting_3610_dpi 
+3d82 c0023d96 beq p3212 ,mouse_seting_3212_dpi 
+3d83 6800c77a fetch 1 ,mem_mouse_dpi 
+3d84 c0003d8a beq mouse_dpi_level1 ,mouse_set_cpi1 
+3d85 c000bd88 beq mouse_dpi_level2 ,mouse_set_cpi2 
+3d86 c0013d8c beq mouse_dpi_level3 ,mouse_set_cpi3 
+3d87 c001bd8e beq mouse_dpi_level4 ,mouse_set_cpi4 
+
+mouse_set_cpi2:
+3d88 6800c780 fetch 1 ,mem_320x_dpi_2 
+3d89 20203dbe branch mouse_p3205_dpi 
+
+mouse_set_cpi1:
+3d8a 6800c77f fetch 1 ,mem_320x_dpi_1 
+3d8b 20203dbe branch mouse_p3205_dpi 
+
+mouse_set_cpi3:
+3d8c 6800c781 fetch 1 ,mem_320x_dpi_3 
+3d8d 20203dbe branch mouse_p3205_dpi 
+
+mouse_set_cpi4:
+3d8e 6800c782 fetch 1 ,mem_320x_dpi_4 
+3d8f 20203dbe branch mouse_p3205_dpi 
+
+moue_seting_cpi_count:
+3d90 6800c6e0 fetch 1 ,mem_config_sensor_type 
+3d91 c1030000 rtneq p3065_xy 
+3d92 6800c6b5 fetch 1 ,mem_mouse_cpi_count 
+3d93 1fe0fe01 increase 1 ,pdata 
+3d94 6000c6b5 store 1 ,mem_mouse_cpi_count 
+3d95 20600000 rtn 
+
+mouse_seting_3212_dpi:
+3d96 6800c77a fetch 1 ,mem_mouse_dpi 
+3d97 c0003d9d beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
+3d98 c000bd9b beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
+3d99 c0013d9f beq mouse_dpi_level3 ,mouse_set_p3212_cpi3 
+3d9a c001bda1 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
+
+mouse_set_p3212_cpi2:
+3d9b 6800c784 fetch 1 ,mem_3212_dpi_2 
+3d9c 20203da2 branch mouse_p3212_dpi 
+
+mouse_set_p3212_cpi1:
+3d9d 6800c783 fetch 1 ,mem_3212_dpi_1 
+3d9e 20203da2 branch mouse_p3212_dpi 
+
+mouse_set_p3212_cpi3:
+3d9f 6800c785 fetch 1 ,mem_3212_dpi_3 
+3da0 20203da2 branch mouse_p3212_dpi 
+
+mouse_set_p3212_cpi4:
+3da1 6800c786 fetch 1 ,mem_3212_dpi_4 
+
+mouse_p3212_dpi:
+3da2 6000c6b5 store 1 ,mem_mouse_cpi_count 
+3da3 1fed7e00 lshift8 pdata ,pdata 
+3da4 1fe22200 copy pdata ,rega 
+3da5 1fe0fe0d add pdata ,mouse_p3212_dpi_xaddress ,pdata 
+3da6 20406413 call twspi_write 
+3da7 1a227e00 copy rega ,pdata 
+3da8 1fe0fe0e add pdata ,mouse_p3212_dpi_yaddress ,pdata 
+3da9 20206413 branch twspi_write 
+
+mouse_seting_3610_dpi:
+3daa 6800c77a fetch 1 ,mem_mouse_dpi 
+3dab c0003db1 beq mouse_dpi_level1 ,mouse_set_p3610_cpi1 
+3dac c000bdaf beq mouse_dpi_level2 ,mouse_set_p3610_cpi2 
+3dad c0013db3 beq mouse_dpi_level3 ,mouse_set_p3610_cpi3 
+3dae c001bdb5 beq mouse_dpi_level4 ,mouse_set_p3610_cpi4 
+
+mouse_set_p3610_cpi2:
+3daf 6800c788 fetch 1 ,mem_3610_dpi_2 
+3db0 20203db6 branch mouse_p3610_dpi 
+
+mouse_set_p3610_cpi1:
+3db1 6800c787 fetch 1 ,mem_3610_dpi_1 
+3db2 20203db6 branch mouse_p3610_dpi 
+
+mouse_set_p3610_cpi3:
+3db3 6800c789 fetch 1 ,mem_3610_dpi_3 
+3db4 20203db6 branch mouse_p3610_dpi 
+
+mouse_set_p3610_cpi4:
+3db5 6800c78a fetch 1 ,mem_3610_dpi_4 
+
+mouse_p3610_dpi:
+3db6 6000c6b5 store 1 ,mem_mouse_cpi_count 
+3db7 204040c0 call mouse_spi_sdio_gpio_pollup 
+3db8 6800c6b5 fetch 1 ,mem_mouse_cpi_count 
+
+mouse_reset_p3610_dpi:
+3db9 1fe0fe80 add pdata ,0x80 ,pdata 
+3dba 1fed7e00 lshift8 pdata ,pdata 
+3dbb 1fe0fe05 add pdata ,mouse_p3610_dpi_address ,pdata 
+3dbc 1fe22200 copy pdata ,rega 
+3dbd 2020415a branch mouse_set_sensor_reg 
+
+mouse_p3205_dpi:
+3dbe 6000c6b5 store 1 ,mem_mouse_cpi_count 
+3dbf 20403d90 call moue_seting_cpi_count 
+3dc0 6800c6b5 fetch 1 ,mem_mouse_cpi_count 
+3dc1 58000006 setarg mouse_dpi_address 
+3dc2 20406414 call twspi_read 
+3dc3 1fe104f8 and pdata ,0xf8 ,temp 
+3dc4 6800c6b5 fetch 1 ,mem_mouse_cpi_count 
+3dc5 9840fe00 iadd temp ,pdata 
+3dc6 1fed7e00 lshift8 pdata ,pdata 
+3dc7 1fe0fe06 add pdata ,mouse_dpi_address ,pdata 
+3dc8 20206413 branch twspi_write 
+
+mouse_init_environment:
+3dc9 204033c4 call app_initflag_check 
+3dca 2022c316 branch mouse_eeprom_load_recon_info ,zero 
+3dcb 2040441c call mouse_ble_init_address 
+3dcc 204042e4 call mouse_store_eeprom_device_info 
+3dcd 202033bd branch app_initflag_store 
+
+mouse_24g_pairing_button:
+3dce 68014707 fetch 2 ,mem_24g_pairing_timer_count 
+3dcf 207a0000 rtn blank 
+3dd0 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3dd1 c4088000 rtnbit0 mouse_enable_24g 
+3dd2 c3818000 rtnbit1 mosue_24g_pairing_flag 
+3dd3 c6130000 rtnmark1 mark_24g 
+3dd4 20404083 call mouse_check_key_gpio 
+3dd5 c1838000 rtnne mouse_lmr_button 
+3dd6 20404482 call mouse_devce_led_off 
+3dd7 d8e00003 arg mosue_24g_pairing_flag ,queue 
+3dd8 204043ce call mouse_enable_function_flag 
+3dd9 58000000 setarg 0 
+3dda 600146ae store 2 ,mem_mouse_direct_timer 
+3ddb 6000c6b4 store 1 ,mem_mouse_send_blank_timer 
+3ddc 20403263 call g24_set0_mem_check_dongle_times 
+3ddd 68014682 fetch 2 ,mem_ui_state_map 
+3dde c283c392 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+3ddf c284b402 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+3de0 c28033e9 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+3de1 204042ca call mouse_stop_discovery 
+3de2 20202ead branch g24_start_pairing_sm1 
+
+mouse_idle:
+3de3 20403dce call mouse_24g_pairing_button 
+3de4 20407e34 call ui_check_paring_button 
+3de5 20403d6a call mouse_dpi_cheak 
+3de6 20403de9 call mouse_usb_isr 
+3de7 20403ee0 call mouse_wheel_check 
+3de8 20203df7 branch mouse_usb_mode 
+
+mouse_usb_isr:
+3de9 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3dea c4080000 rtnbit0 mouse_enable_usb 
+3deb 204048d3 call usb_isr 
+3dec 202048fd branch usb_offline_state 
+
+mouse_cheak_usb:
+3ded 68108a04 hfetch 1 ,core_usb_addr 
+3dee c303bdf1 bbit0 7 ,mouse_usb_no_exsit 
+3def c283bdf4 bbit1 7 ,mouse_usb_exsit 
+3df0 20600000 rtn 
+
+mouse_usb_no_exsit:
+3df1 6800c6ff fetch 1 ,mem_usb_addr 
+3df2 c4038000 rtnbit0 7 
+3df3 2020659a branch soft_reset_chip 
+
+mouse_usb_exsit:
+3df4 6800c6ff fetch 1 ,mem_usb_addr 
+3df5 c3838000 rtnbit1 7 
+3df6 20204381 branch mouse_stop_bluetooth_mode 
+
+mouse_usb_mode:
+3df7 20403ded call mouse_cheak_usb 
+3df8 68108a04 hfetch 1 ,core_usb_addr 
+3df9 6000c6ff store 1 ,mem_usb_addr 
+3dfa c4038000 rtnbit0 7 
+3dfb 20403e07 call mouse_clkn_check 
+3dfc 680246f9 fetch 4 ,mem_btclk_sensor 
+3dfd 6808c6fd fetcht 1 ,mem_wire_usb_interval 
+3dfe 98408400 iadd temp ,temp 
+3dff 1c427e00 copy clkn_bt ,pdata 
+3e00 98467c00 isub temp ,null 
+3e01 24610000 nrtn positive 
+3e02 600246f9 store 4 ,mem_btclk_sensor 
+3e03 20403f97 call mouse_motion 
+3e04 24740000 nrtn user 
+3e05 700d3804 jam 4 ,mem_usb_tx_enable 
+3e06 20203e0f branch mouse_wired_to_usb 
+
+mouse_clkn_check:
+3e07 680a46f9 fetcht 4 ,mem_btclk_sensor 
+3e08 1c427e00 copy clkn_bt ,pdata 
+3e09 98467c00 isub temp ,null 
+3e0a 24413e0c ncall mouse_clkn_timeout ,positive 
+3e0b 20600000 rtn 
+
+mouse_clkn_timeout:
+3e0c 58000000 setarg 0 
+3e0d 600246f9 store 4 ,mem_btclk_sensor 
+3e0e 20600000 rtn 
+
+mouse_wired_to_usb:
+3e0f 68008d38 fetch 1 ,mem_usb_tx_enable 
+3e10 c4010000 rtnbit0 2 
+3e11 20203e12 branch mouse_data_push 
+
+mouse_data_push:
+3e12 68108a04 hfetch 1 ,core_usb_addr 
+3e13 c4038000 rtnbit0 7 
+3e14 700d5220 jam usb_ep2_ms ,mem_usb_ep2_data 
+3e15 58000001 setarg ms_report_id 
+3e16 60008d54 store 1 ,mem_usb_mouse_data 
+3e17 6803c69a fetch 7 ,mem_mouse_key 
+3e18 e0a38000 istore 7 ,contw 
+3e19 20600000 rtn 
+
+mouse_enable_clock_qdecoder:
+3e1a 68110050 hfetch 2 ,core_clkoff 
+3e1b 793ffe0b set0 clock_off_qdecoder ,pdata 
+3e1c 60110050 hstore 2 ,core_clkoff 
+3e1d 20600000 rtn 
+
+mouse_param_init:
+3e1e 58008c00 setarg 0x8c00 
+3e1f 60014575 store 2 ,mem_ui_uuid_table 
+3e20 58008e7a setarg 0x8e7a 
+3e21 600144bc store 2 ,mem_ui_le_uuid_table 
+3e22 58002402 setarg 0x2402 
+3e23 600140bd store 2 ,mem_fcomp_mul 
+3e24 58002580 setarg 0x2580 
+3e25 6001c0aa store 3 ,mem_class 
+3e26 70417303 jam 3 ,mem_lpm_mult_timeout 
+3e27 70415608 jam 8 ,mem_lpm_overhead 
+3e28 7046d901 jam dpi_button_state_up ,mem_select_device_button_statue 
+3e29 58000200 setarg 0x0200 
+3e2a 60014154 store 2 ,mem_lpm_interval 
+3e2b 7044a617 jam 0x17 ,mem_le_local_mtu 
+3e2c 7044a817 jam 0x17 ,mem_le_remote_mtu 
+3e2d 58000a77 setarg 0x0a77 
+3e2e 60014212 store 2 ,mem_spi_init_clk 
+3e2f 38000306 setsect 0 ,0x306 
+3e30 38044440 setsect 1 ,0x4440 
+3e31 38090000 setsect 2 ,0x10000 
+3e32 380c4408 setsect 3 ,0x4408 
+3e33 6004c577 store 9 ,mem_all_uuid_16bits 
+3e34 38001224 setsect 0 ,0x1224 
+3e35 38044000 setsect 1 ,0x4000 
+3e36 38080000 setsect 2 ,0x0 
+3e37 e0a28000 istore 5 ,contw 
+3e38 3803ffff setsect 0 ,0x3ffff 
+3e39 3806fe23 setsect 1 ,0x2fe23 
+3e3a 380999d9 setsect 2 ,0x199d9 
+3e3b 380c020d setsect 3 ,0x20d 
+3e3c 60044098 store 8 ,mem_features 
+3e3d 5800012c setarg 0x012c 
+3e3e 60014707 store 2 ,mem_24g_pairing_timer_count 
+3e3f 204057a3 call le_modified_name 
+3e40 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3e41 c40f8000 rtnbit0 mouse_enable_gpio_control_adc_sensor 
+3e42 20403e44 call mouse_sensor_set_angle 
+3e43 20203e4c branch mouse_select_adc 
+
+mouse_sensor_set_angle:
+3e44 6808c6f7 fetcht 1 ,mem_select_sensor_angle_gpio 
+3e45 204067fb call gpio_config_input 
+3e46 6808c6f7 fetcht 1 ,mem_select_sensor_angle_gpio 
+3e47 2040681d call gpio_get_bit 
+3e48 7046f603 jam mouse_3clk_angle ,mem_config_sensor_angle 
+3e49 20608000 rtn true 
+3e4a 7046f602 jam mouse_12clk_angle ,mem_config_sensor_angle 
+3e4b 20600000 rtn 
+
+mouse_select_adc:
+3e4c 6808c6f8 fetcht 1 ,mem_select_adc_gpio 
+3e4d 204067fb call gpio_config_input 
+3e4e 6808c6f8 fetcht 1 ,mem_select_adc_gpio 
+3e4f 2040681d call gpio_get_bit 
+3e50 70422d00 jam adc_config_vinlpm ,mem_adc_config_flag 
+3e51 20608000 rtn true 
+3e52 70422d02 jam adc_config_gpio ,mem_adc_config_flag 
+3e53 20600000 rtn 
+
+mouse_adc_init:
+3e54 6800c22d fetch 1 ,mem_adc_config_flag 
+3e55 c0003e59 beq adc_config_vinlpm ,mouse_adc_init_data_vinlpm 
+3e56 c000be62 beq adc_config_hvin ,mouse_adc_init_data_hvin 
+3e57 c0013e6b beq adc_config_gpio ,mouse_adc_init_data_io 
+3e58 20203e59 branch mouse_adc_init_data_vinlpm 
+
+mouse_adc_init_data_vinlpm:
+3e59 68094221 fetcht 2 ,mem_2v_adc_vinlpm_data 
+3e5a 68014227 fetch 2 ,mem_3v_adc_vinlpm_data 
+3e5b 98467e00 isub temp ,pdata 
+3e5c 1feffe14 mul32 pdata ,20 ,pdata 
+3e5d 1fe6fc64 div pdata ,100 
+3e5e 20407f86 call wait_div_end 
+3e5f 1807fe00 quotient pdata 
+3e60 600146d0 store 2 ,mem_adc_reference_voltage 
+3e61 20600000 rtn 
+
+mouse_adc_init_data_hvin:
+3e62 6809421f fetcht 2 ,mem_1v_adc_hvin_data 
+3e63 68014225 fetch 2 ,mem_5v_adc_hvin_data 
+3e64 98467e00 isub temp ,pdata 
+3e65 1feffee6 mul32 pdata ,230 ,pdata 
+3e66 1fe6fd90 div pdata ,400 
+3e67 20407f86 call wait_div_end 
+3e68 1807fe00 quotient pdata 
+3e69 600146d0 store 2 ,mem_adc_reference_voltage 
+3e6a 20600000 rtn 
+
+mouse_adc_init_data_io:
+3e6b 68014223 fetch 2 ,mem_1v_adc_io_data 
+3e6c 600146d0 store 2 ,mem_adc_reference_voltage 
+3e6d 20600000 rtn 
+
+mouse_gpio_init:
+3e6e 6808c23a fetcht 1 ,mem_eeprom_wp_gpio 
+3e6f 2040680e call gpio_config_output 
+3e70 204048fb call usb_offline_check_init 
+3e71 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+3e72 204067fb call gpio_config_input 
+3e73 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+3e74 204067fb call gpio_config_input 
+3e75 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+3e76 204067fb call gpio_config_input 
+3e77 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
+3e78 204067fb call gpio_config_input 
+3e79 6808c6dc fetcht 1 ,mem_sensor_reset_gpio 
+3e7a 2040680e call gpio_config_output 
+3e7b 6808c6e8 fetcht 1 ,mem_whee_a_data_gpio 
+3e7c 204067fb call gpio_config_input 
+3e7d 6808c6e9 fetcht 1 ,mem_whee_b_data_gpio 
+3e7e 204067fb call gpio_config_input 
+3e7f 6808c6ea fetcht 1 ,mem_whee_ta_data_gpio 
+3e80 204067fb call gpio_config_input 
+3e81 6808c6eb fetcht 1 ,mem_whee_tb_data_gpio 
+3e82 204067fb call gpio_config_input 
+3e83 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+3e84 204067fb call gpio_config_input 
+3e85 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+3e86 204067fb call gpio_config_input 
+3e87 6808c6ef fetcht 1 ,mem_config_low_voltage_alarm_gpio 
+3e88 2040680e call gpio_config_output 
+3e89 6808c6f0 fetcht 1 ,mem_config_device1_led_gpio 
+3e8a 2040680e call gpio_config_output 
+3e8b 6808c6f1 fetcht 1 ,mem_config_device2_led_gpio 
+3e8c 2040680e call gpio_config_output 
+3e8d 6808c6f2 fetcht 1 ,mem_config_device3_led_gpio 
+3e8e 2040680e call gpio_config_output 
+3e8f 6808c6f4 fetcht 1 ,mem_dpi_led_gpio 
+3e90 2040680e call gpio_config_output 
+3e91 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+3e92 204067fb call gpio_config_input 
+3e93 6808c6ec fetcht 1 ,mem_config_bt_button_gpio 
+3e94 204067fb call gpio_config_input 
+3e95 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+3e96 202067fb branch gpio_config_input 
+
+mouse_wheel_gpio_set_wake:
+3e97 6808c6e8 fetcht 1 ,mem_whee_a_data_gpio 
+3e98 204067dd call gpio_set_wake_by_current_state 
+3e99 6808c6e9 fetcht 1 ,mem_whee_b_data_gpio 
+3e9a 204067dd call gpio_set_wake_by_current_state 
+3e9b 6808c6ea fetcht 1 ,mem_whee_ta_data_gpio 
+3e9c 204067dd call gpio_set_wake_by_current_state 
+3e9d 6808c6eb fetcht 1 ,mem_whee_tb_data_gpio 
+3e9e 202067dd branch gpio_set_wake_by_current_state 
+
+mouse_before_hibernate_wheel_gpio_set:
+3e9f 6808c6e8 fetcht 1 ,mem_whee_a_data_gpio 
+3ea0 20403ea7 call mouse_gpio_set_pupd_by_input 
+3ea1 6808c6e9 fetcht 1 ,mem_whee_b_data_gpio 
+3ea2 20403ea7 call mouse_gpio_set_pupd_by_input 
+3ea3 6808c6ea fetcht 1 ,mem_whee_ta_data_gpio 
+3ea4 20403ea7 call mouse_gpio_set_pupd_by_input 
+3ea5 6808c6eb fetcht 1 ,mem_whee_tb_data_gpio 
+3ea6 20203ea7 branch mouse_gpio_set_pupd_by_input 
+
+mouse_gpio_set_pupd_by_input:
+3ea7 18467cff sub temp ,ui_button_gpio_disable ,null 
+3ea8 20628000 rtn zero 
+3ea9 18410e7f and temp ,0x7f ,queue 
+3eaa 6812011c hfetch 4 ,core_gpio_in 
+3eab afefffff qisolate1 pdata 
+3eac 68120078 hfetch 4 ,core_gpio_pu0 
+3ead f920fe00 qsetflag true ,pdata 
+3eae 60120078 hstore 4 ,core_gpio_pu0 
+3eaf 6812007c hfetch 4 ,core_gpio_pd0 
+3eb0 fd20fe00 nqsetflag true ,pdata 
+3eb1 6012007c hstore 4 ,core_gpio_pd0 
+3eb2 20600000 rtn 
+
+mouse_before_hibernate:
+3eb3 78347c00 enable user 
+3eb4 68120138 hfetch 4 ,0x8138 
+3eb5 79347e1a setflag user ,26 ,pdata 
+3eb6 6012004c hstore 4 ,core_lpm_reg 
+3eb7 20402c21 call lpm_write_ctrl 
+3eb8 20404482 call mouse_devce_led_off 
+3eb9 20403e9f call mouse_before_hibernate_wheel_gpio_set 
+3eba 20203ebf branch mouse_lpm_before_common 
+
+mouse_process_lpm_before:
+3ebb 20403ebf call mouse_lpm_before_common 
+3ebc 680080a0 fetch 1 ,mem_lpm_current_mult 
+3ebd 247a0000 nrtn blank 
+3ebe 202067ed branch gpio_clr_wake 
+
+mouse_lpm_before_common:
+3ebf 20403ee0 call mouse_wheel_check 
+3ec0 d8400019 arg mouse_spi1_clk_gpio ,temp 
+3ec1 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3ec2 2feffe12 isolate1 mouse_enable_spi2 ,pdata 
+3ec3 2040bede call mouse_spi_clk_gpio ,true 
+3ec4 2040680e call gpio_config_output 
+3ec5 204063ee call twspi_disable 
+3ec6 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+3ec7 204067dd call gpio_set_wake_by_current_state 
+3ec8 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+3ec9 204067dd call gpio_set_wake_by_current_state 
+3eca 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+3ecb 204067dd call gpio_set_wake_by_current_state 
+3ecc 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+3ecd 204067dd call gpio_set_wake_by_current_state 
+3ece 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+3ecf 204067dd call gpio_set_wake_by_current_state 
+3ed0 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+3ed1 204067dd call gpio_set_wake_by_current_state 
+3ed2 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+3ed3 204067dd call gpio_set_wake_by_current_state 
+3ed4 6808c6e8 fetcht 1 ,mem_whee_a_data_gpio 
+3ed5 204067dd call gpio_set_wake_by_current_state 
+3ed6 6808c6e9 fetcht 1 ,mem_whee_b_data_gpio 
+3ed7 204067dd call gpio_set_wake_by_current_state 
+3ed8 6808c6ea fetcht 1 ,mem_whee_ta_data_gpio 
+3ed9 204067dd call gpio_set_wake_by_current_state 
+3eda 6808c6eb fetcht 1 ,mem_whee_tb_data_gpio 
+3edb 204067dd call gpio_set_wake_by_current_state 
+3edc 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
+3edd 202067e1 branch gpio_set_wake 
+
+mouse_spi_clk_gpio:
+3ede d840001e arg mouse_spi2_clk_gpio ,temp 
+3edf 20600000 rtn 
+
+mouse_wheel_check:
+3ee0 44f2401c bpatch patch1c_4 ,mem_patch1c 
+3ee1 20403eee call mouse_t_wheel_scan 
+3ee2 20403f36 call mouse_wheel_scan 
+3ee3 6800c6b8 fetch 1 ,mem_wheel_tb_new_pinlevel 
+3ee4 6808c6b7 fetcht 1 ,mem_wheel_tb_old_pinlevel 
+3ee5 6000c6b7 store 1 ,mem_wheel_tb_old_pinlevel 
+3ee6 98467c00 isub temp ,null 
+3ee7 2422b3d4 nbranch app_lpm_wake_auto_lock ,zero 
+3ee8 6800c6be fetch 1 ,mem_mwheel_b_new_pinlevel 
+3ee9 6808c6bd fetcht 1 ,mem_mwheel_b_old_pinlevel 
+3eea 6000c6bd store 1 ,mem_mwheel_b_old_pinlevel 
+3eeb 98467c00 isub temp ,null 
+3eec 2422b3d4 nbranch app_lpm_wake_auto_lock ,zero 
+3eed 20600000 rtn 
+
+mouse_t_wheel_scan:
+3eee 6800c6ea fetch 1 ,mem_whee_ta_data_gpio 
+3eef c17f8000 rtneq gpio_disable 
+3ef0 da200000 arg 0 ,rega 
+3ef1 6808c6ea fetcht 1 ,mem_whee_ta_data_gpio 
+3ef2 2040681d call gpio_get_bit 
+3ef3 7920a200 setflag true ,0 ,rega 
+3ef4 6808c6eb fetcht 1 ,mem_whee_tb_data_gpio 
+3ef5 2040681d call gpio_get_bit 
+3ef6 7920a201 setflag true ,1 ,rega 
+3ef7 1a227e00 copy rega ,pdata 
+3ef8 6000c6b8 store 1 ,mem_wheel_tb_new_pinlevel 
+3ef9 c000befe beq 0x01 ,mouse_t_wheel_scan_judge1 
+3efa c0013f02 beq 0x02 ,mouse_t_wheel_scan_judge2 
+3efb 6800c6b9 fetch 1 ,mem_wheel_tog 
+3efc c283bf0e bbit1 7 ,mouse_t_wheel_scan_judge3 
+3efd 20600000 rtn 
+
+mouse_t_wheel_scan_judge1:
+3efe 6800c6b7 fetch 1 ,mem_wheel_tb_old_pinlevel 
+3eff c0003f06 beq 0 ,mouse_t_wheel_scan_judge11 
+3f00 c001bf08 beq 3 ,mouse_t_wheel_scan_judge12 
+3f01 20600000 rtn 
+
+mouse_t_wheel_scan_judge2:
+3f02 6800c6b7 fetch 1 ,mem_wheel_tb_old_pinlevel 
+3f03 c0003f0a beq 0 ,mouse_t_wheel_scan_judge21 
+3f04 c001bf0c beq 3 ,mouse_t_wheel_scan_judge22 
+3f05 20600000 rtn 
+
+mouse_t_wheel_scan_judge11:
+3f06 7046b982 jam 0x82 ,mem_wheel_tog 
+3f07 20600000 rtn 
+
+mouse_t_wheel_scan_judge12:
+3f08 7046b981 jam 0x81 ,mem_wheel_tog 
+3f09 20600000 rtn 
+
+mouse_t_wheel_scan_judge21:
+3f0a 7046b980 jam 0x80 ,mem_wheel_tog 
+3f0b 20600000 rtn 
+
+mouse_t_wheel_scan_judge22:
+3f0c 7046b983 jam 0x83 ,mem_wheel_tog 
+3f0d 20600000 rtn 
+
+mouse_t_wheel_scan_judge3:
+3f0e 6800c6b9 fetch 1 ,mem_wheel_tog 
+3f0f 793ffe07 set0 7 ,pdata 
+3f10 6000c6b9 store 1 ,mem_wheel_tog 
+3f11 c0003f16 beq 0 ,mouse_t_wheel_scan_judge30 
+3f12 c000bf19 beq 1 ,mouse_t_wheel_scan_judge31 
+3f13 c0013f1c beq 2 ,mouse_t_wheel_scan_judge32 
+3f14 c001bf1f beq 3 ,mouse_t_wheel_scan_judge33 
+3f15 20600000 rtn 
+
+mouse_t_wheel_scan_judge30:
+3f16 6800c6b8 fetch 1 ,mem_wheel_tb_new_pinlevel 
+3f17 c001bf22 beq 3 ,mouse_wheel_t_forward 
+3f18 20600000 rtn 
+
+mouse_t_wheel_scan_judge31:
+3f19 6800c6b8 fetch 1 ,mem_wheel_tb_new_pinlevel 
+3f1a c0003f22 beq 0 ,mouse_wheel_t_forward 
+3f1b 20600000 rtn 
+
+mouse_t_wheel_scan_judge32:
+3f1c 6800c6b8 fetch 1 ,mem_wheel_tb_new_pinlevel 
+3f1d c001bf2c beq 3 ,mouse_wheel_t_back 
+3f1e 20600000 rtn 
+
+mouse_t_wheel_scan_judge33:
+3f1f 6800c6b8 fetch 1 ,mem_wheel_tb_new_pinlevel 
+3f20 c0003f2c beq 0 ,mouse_wheel_t_back 
+3f21 20600000 rtn 
+
+mouse_wheel_t_forward:
+3f22 6800c6bc fetch 1 ,mem_mouse_tz_data_count1 
+3f23 1fe0fe01 increase 1 ,pdata 
+3f24 6000c6bc store 1 ,mem_mouse_tz_data_count1 
+3f25 1fe67c01 sub pdata ,1 ,null 
+3f26 20610000 rtn positive 
+3f27 7046bc00 jam 0 ,mem_mouse_tz_data_count1 
+3f28 6800c6ba fetch 1 ,mem_mouse_tz_data 
+3f29 1fe0fe01 increase 1 ,pdata 
+3f2a 6000c6ba store 1 ,mem_mouse_tz_data 
+3f2b 20600000 rtn 
+
+mouse_wheel_t_back:
+3f2c 6800c6bb fetch 1 ,mem_mouse_tz_data_count 
+3f2d 1fe0fe01 increase 1 ,pdata 
+3f2e 6000c6bb store 1 ,mem_mouse_tz_data_count 
+3f2f 1fe67c01 sub pdata ,1 ,null 
+3f30 20610000 rtn positive 
+3f31 7046bb00 jam 0 ,mem_mouse_tz_data_count 
+3f32 6800c6ba fetch 1 ,mem_mouse_tz_data 
+3f33 1fe0ffff increase -1 ,pdata 
+3f34 6000c6ba store 1 ,mem_mouse_tz_data 
+3f35 20600000 rtn 
+
+mouse_wheel_scan:
+3f36 6800c6e8 fetch 1 ,mem_whee_a_data_gpio 
+3f37 c17f8000 rtneq gpio_disable 
+3f38 da200000 arg 0 ,rega 
+3f39 6808c6e8 fetcht 1 ,mem_whee_a_data_gpio 
+3f3a 2040681d call gpio_get_bit 
+3f3b 7920a200 setflag true ,0 ,rega 
+3f3c 6808c6e9 fetcht 1 ,mem_whee_b_data_gpio 
+3f3d 2040681d call gpio_get_bit 
+3f3e 7920a201 setflag true ,1 ,rega 
+3f3f 1a227e00 copy rega ,pdata 
+3f40 6000c6be store 1 ,mem_mwheel_b_new_pinlevel 
+3f41 c000bf46 beq 0x01 ,mouse_wheel_scan_judge1 
+3f42 c0013f4a beq 0x02 ,mouse_wheel_scan_judge2 
+3f43 6800c6bf fetch 1 ,mem_mwheel_tog 
+3f44 c283bf56 bbit1 7 ,mouse_wheel_scan_judge3 
+3f45 20600000 rtn 
+
+mouse_wheel_scan_judge1:
+3f46 6800c6bd fetch 1 ,mem_mwheel_b_old_pinlevel 
+3f47 c0003f4e beq 0 ,mouse_wheel_scan_judge11 
+3f48 c001bf50 beq 3 ,mouse_wheel_scan_judge12 
+3f49 20600000 rtn 
+
+mouse_wheel_scan_judge2:
+3f4a 6800c6bd fetch 1 ,mem_mwheel_b_old_pinlevel 
+3f4b c0003f52 beq 0 ,mouse_wheel_scan_judge21 
+3f4c c001bf54 beq 3 ,mouse_wheel_scan_judge22 
+3f4d 20600000 rtn 
+
+mouse_wheel_scan_judge11:
+3f4e 7046bf82 jam 0x82 ,mem_mwheel_tog 
+3f4f 20600000 rtn 
+
+mouse_wheel_scan_judge12:
+3f50 7046bf81 jam 0x81 ,mem_mwheel_tog 
+3f51 20600000 rtn 
+
+mouse_wheel_scan_judge21:
+3f52 7046bf80 jam 0x80 ,mem_mwheel_tog 
+3f53 20600000 rtn 
+
+mouse_wheel_scan_judge22:
+3f54 7046bf83 jam 0x83 ,mem_mwheel_tog 
+3f55 20600000 rtn 
+
+mouse_wheel_scan_judge3:
+3f56 6800c6bf fetch 1 ,mem_mwheel_tog 
+3f57 793ffe07 set0 7 ,pdata 
+3f58 6000c6bf store 1 ,mem_mwheel_tog 
+3f59 c0003f5e beq 0 ,mouse_wheel_scan_judge30 
+3f5a c000bf61 beq 1 ,mouse_wheel_scan_judge31 
+3f5b c0013f64 beq 2 ,mouse_wheel_scan_judge32 
+3f5c c001bf67 beq 3 ,mouse_wheel_scan_judge33 
+3f5d 20600000 rtn 
+
+mouse_wheel_scan_judge30:
+3f5e 6800c6be fetch 1 ,mem_mwheel_b_new_pinlevel 
+3f5f c001bf6a beq 3 ,mouse_wheel_forward 
+3f60 20600000 rtn 
+
+mouse_wheel_scan_judge31:
+3f61 6800c6be fetch 1 ,mem_mwheel_b_new_pinlevel 
+3f62 c0003f6a beq 0 ,mouse_wheel_forward 
+3f63 20600000 rtn 
+
+mouse_wheel_scan_judge32:
+3f64 6800c6be fetch 1 ,mem_mwheel_b_new_pinlevel 
+3f65 c001bf6f beq 3 ,mouse_wheel_back 
+3f66 20600000 rtn 
+
+mouse_wheel_scan_judge33:
+3f67 6800c6be fetch 1 ,mem_mwheel_b_new_pinlevel 
+3f68 c0003f6f beq 0 ,mouse_wheel_back 
+3f69 20600000 rtn 
+
+mouse_wheel_forward:
+3f6a 7046c200 jam 0 ,mem_mouse_z_data_count1 
+3f6b 6800c6c0 fetch 1 ,mem_mouse_z_data 
+3f6c 1fe0fe01 increase 1 ,pdata 
+3f6d 6000c6c0 store 1 ,mem_mouse_z_data 
+3f6e 20600000 rtn 
+
+mouse_wheel_back:
+3f6f 7046c100 jam 0 ,mem_mouse_z_data_count 
+3f70 6800c6c0 fetch 1 ,mem_mouse_z_data 
+3f71 1fe0ffff increase -1 ,pdata 
+3f72 6000c6c0 store 1 ,mem_mouse_z_data 
+3f73 20600000 rtn 
+
+mouse_hid_connected:
+3f74 58000002 setarg hid_handshake_timeout 
+3f75 6000c680 store 1 ,mem_hid_handshake_timer_count 
+3f76 20600000 rtn 
+
+mouse_send_process:
+3f77 6800c1e2 fetch 1 ,mem_app_handshake_flag 
+3f78 207a0000 rtn blank 
+3f79 20405271 call l2cap_malloc_is_fifo_nearly_full 
+3f7a 247a0000 nrtn blank 
+3f7b 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+3f7c c281bf8a bbit1 mosue_24g_pairing_flag ,mouse_send_empty_data 
+3f7d c2803f8a bbit1 mouse_select_device_flag ,mouse_send_empty_data 
+3f7e c282bf8a bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+3f7f 20403f97 call mouse_motion 
+3f80 24740000 nrtn user 
+
+mouse_send_data:
+3f81 da200009 arg 9 ,rega 
+3f82 20404d63 call hid_malloc_tx_buff 
+3f83 6801424e fetch 2 ,mem_hid_int_remote_cid 
+3f84 e0a10000 istore 2 ,contw 
+3f85 580002a1 setarg 0x02a1 
+3f86 e0a10000 istore 2 ,contw 
+3f87 6803c69a fetch 7 ,mem_mouse_key 
+3f88 e0a38000 istore 7 ,contw 
+3f89 20600000 rtn 
+
+mouse_send_empty_data:
+3f8a 58000000 setarg 0 
+3f8b 6003c69a store 7 ,mem_mouse_key 
+3f8c 20203f81 branch mouse_send_data 
+
+mouse_no_data_timer_init:
+3f8d 680146aa fetch 2 ,mem_mouse_no_data_timeout 
+3f8e 600146b0 store 2 ,mem_mouse_no_data_timer 
+3f8f 20600000 rtn 
+
+mouse_fill_data_le:
+3f90 44f2c01c bpatch patch1c_5 ,mem_patch1c 
+3f91 da200007 arg 7 ,rega 
+3f92 6809446f fetcht 2 ,mem_le_notify_handle 
+3f93 20405a64 call le_att_malloc_tx_notify 
+3f94 6803c69a fetch 7 ,mem_mouse_key 
+3f95 e0a38000 istore 7 ,contw 
+3f96 20600000 rtn 
+
+mouse_motion:
+3f97 44f3401c bpatch patch1c_6 ,mem_patch1c 
+3f98 78547c00 disable user 
+3f99 58000000 setarg 0 
+3f9a 6003469b store 6 ,mem_mouse_x 
+3f9b 20403fb5 call mouse_cheak_sensor_data 
+3f9c 20404079 call mouse_zwheel 
+3f9d 2040407e call mouse_t_zwheel 
+3f9e 20404099 call mouse_key 
+3f9f 24740000 nrtn user 
+3fa0 20403f8d call mouse_no_data_timer_init 
+3fa1 d8e00008 arg mouse_statue_up_flag ,queue 
+3fa2 202043ce branch mouse_enable_function_flag 
+
+motion_6clk_direction_dispose:
+3fa3 6801469b fetch 2 ,mem_mouse_x 
+3fa4 1fe67e00 sub pdata ,0 ,pdata 
+3fa5 6001469b store 2 ,mem_mouse_x 
+3fa6 20207fe7 branch enable_user 
+
+motion_12clk_direction_dispose:
+3fa7 6801469d fetch 2 ,mem_mouse_y 
+3fa8 1fe67e00 sub pdata ,0 ,pdata 
+3fa9 6001469d store 2 ,mem_mouse_y 
+3faa 20207fe7 branch enable_user 
+
+motion_9clk_direction_dispose:
+3fab 6801469d fetch 2 ,mem_mouse_y 
+3fac 1fe67e00 sub pdata ,0 ,pdata 
+3fad 6001469d store 2 ,mem_mouse_y 
+3fae 6801469b fetch 2 ,mem_mouse_x 
+3faf 1fe67e00 sub pdata ,0 ,pdata 
+3fb0 6001469b store 2 ,mem_mouse_x 
+3fb1 20404002 call mouse_sensor_data_swap_places 
+3fb2 20207fe7 branch enable_user 
+
+motion_3clk_direction_dispose:
+3fb3 20404002 call mouse_sensor_data_swap_places 
+3fb4 20207fe7 branch enable_user 
+
+mouse_cheak_sensor_data:
+3fb5 6800c239 fetch 1 ,mem_spi_write_flash_sm 
+3fb6 c1800000 rtnne flash_sm_no_buys 
+3fb7 6800c6e0 fetch 1 ,mem_config_sensor_type 
+3fb8 c0003fe2 beq p3205 ,mouse_p32xx_sensor_motion 
+3fb9 c000bfe2 beq p3065 ,mouse_p32xx_sensor_motion 
+3fba c0013fe2 beq ka8 ,mouse_p32xx_sensor_motion 
+3fbb c001bfe2 beq p3204 ,mouse_p32xx_sensor_motion 
+3fbc c0023fc4 beq p3212 ,mouse_p3212_sensor_motion 
+3fbd c002c010 beq p3610 ,mouse_p3610_sensor_motion 
+3fbe c0033fe2 beq p3065_xy ,mouse_p32xx_sensor_motion 
+3fbf 20203fe2 branch mouse_p32xx_sensor_motion 
+
+mouse_clear_sensor_data:
+3fc0 6800c6a7 fetch 1 ,mem_mouse_move_flag 
+3fc1 205a405d call mouse_read_sensor_common ,blank 
+3fc2 7046a701 jam 1 ,mem_mouse_move_flag 
+3fc3 20600000 rtn 
+
+mouse_p3212_sensor_motion:
+3fc4 20403fc0 call mouse_clear_sensor_data 
+3fc5 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
+3fc6 2040681d call gpio_get_bit 
+3fc7 24608000 nrtn true 
+
+mouse_p3212_sensor_motion_1:
+3fc8 58000000 setarg pan_reg_pid_l 
+3fc9 20406414 call twspi_read 
+3fca c09840d1 bne p32xx_id1 ,mouse_twspi_reset 
+3fcb 58000002 setarg pan_reg_motion_staus 
+3fcc 20406414 call twspi_read 
+3fcd c4038000 rtnbit0 7 
+3fce 2040405d call mouse_read_sensor_common 
+3fcf 20403fde call mouse_read_3212sensor_xy_high 
+3fd0 6000c6a1 store 1 ,mem_mouse_xy_h 
+3fd1 1ff1fe00 rshift4 pdata ,pdata 
+3fd2 20404169 call extsign_bit3 
+3fd3 6000c69c store 1 ,mem_mouse_x + 1 
+3fd4 6800c6a1 fetch 1 ,mem_mouse_xy_h 
+3fd5 1fe17e0f and pdata ,0x0f ,pdata 
+3fd6 20404169 call extsign_bit3 
+3fd7 6000c69e store 1 ,mem_mouse_y + 1 
+3fd8 6800c6f6 fetch 1 ,mem_config_sensor_angle 
+3fd9 c0003fa3 beq mouse_6clk_angle ,motion_6clk_direction_dispose 
+3fda c000bfab beq mouse_9clk_angle ,motion_9clk_direction_dispose 
+3fdb c0013fa7 beq mouse_12clk_angle ,motion_12clk_direction_dispose 
+3fdc c001bfb3 beq mouse_3clk_angle ,motion_3clk_direction_dispose 
+3fdd 20600000 rtn 
+
+mouse_read_3212sensor_xy_high:
+3fde 58000012 setarg 0x12 
+3fdf 20206414 branch twspi_read 
+
+mouse_p3065_judge:
+3fe0 c018bfea beq p3065_id1 ,mouse_p32xx_sensor_motion_1 
+3fe1 202040d1 branch mouse_twspi_reset 
+
+mouse_p32xx_sensor_motion:
+3fe2 20403fc0 call mouse_clear_sensor_data 
+3fe3 78547c00 disable user 
+3fe4 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
+3fe5 2040681d call gpio_get_bit 
+3fe6 24608000 nrtn true 
+
+mouse_p32xx_sensor_motion_2:
+3fe7 58000000 setarg pan_reg_pid_l 
+3fe8 20406414 call twspi_read 
+3fe9 c0983fe0 bne p32xx_id1 ,mouse_p3065_judge 
+
+mouse_p32xx_sensor_motion_1:
+3fea 58000002 setarg pan_reg_motion_staus 
+3feb 20406414 call twspi_read 
+3fec c4038000 rtnbit0 7 
+3fed 2040405d call mouse_read_sensor_common 
+3fee 6800c69b fetch 1 ,mem_mouse_x 
+3fef 20404165 call extsign 
+3ff0 6001469b store 2 ,mem_mouse_x 
+3ff1 6800c69d fetch 1 ,mem_mouse_y 
+3ff2 20404165 call extsign 
+3ff3 6001469d store 2 ,mem_mouse_y 
+3ff4 6800c6f6 fetch 1 ,mem_config_sensor_angle 
+3ff5 c0003ffa beq mouse_6clk_angle ,motion32xx_6clk_direction_selection 
+3ff6 c000bffc beq mouse_9clk_angle ,motion32xx_9clk_direction_selection 
+3ff7 c0013ffe beq mouse_12clk_angle ,motion32xx_12clk_direction_selection 
+3ff8 c001c000 beq mouse_3clk_angle ,motion32xx_3clk_direction_selection 
+3ff9 20600000 rtn 
+
+motion32xx_6clk_direction_selection:
+3ffa 20403fa3 call motion_6clk_direction_dispose 
+3ffb 202040b3 branch mouse_sensor_sdio_low 
+
+motion32xx_9clk_direction_selection:
+3ffc 20403fab call motion_9clk_direction_dispose 
+3ffd 202040b3 branch mouse_sensor_sdio_low 
+
+motion32xx_12clk_direction_selection:
+3ffe 20403fa7 call motion_12clk_direction_dispose 
+3fff 202040b3 branch mouse_sensor_sdio_low 
+
+motion32xx_3clk_direction_selection:
+4000 20403fb3 call motion_3clk_direction_dispose 
+4001 202040b3 branch mouse_sensor_sdio_low 
+
+mouse_sensor_data_swap_places:
+4002 6801469d fetch 2 ,mem_mouse_y 
+4003 6809469b fetcht 2 ,mem_mouse_x 
+4004 6001469b store 2 ,mem_mouse_x 
+4005 6009469d storet 2 ,mem_mouse_y 
+4006 20600000 rtn 
+
+mouse_p3610sensor_read:
+4007 2040640f call spi_ncs_enable 
+4008 20000064 nop 100 
+4009 1a427e00 copy regb ,pdata 
+400a 20406414 call twspi_read 
+400b 1fe22400 copy pdata ,regb 
+400c 20406411 call spi_ncs_disable 
+400d 20000064 nop 100 
+400e 1a427e00 copy regb ,pdata 
+400f 20600000 rtn 
+
+mouse_p3610_sensor_motion:
+4010 78547c00 disable user 
+4011 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
+4012 2040681d call gpio_get_bit 
+4013 24608000 nrtn true 
+4014 da400002 arg pan_reg_motion_staus ,regb 
+4015 20404007 call mouse_p3610sensor_read 
+4016 c4038000 rtnbit0 7 
+4017 da400000 arg pan_reg_pid_l ,regb 
+4018 20404007 call mouse_p3610sensor_read 
+4019 6000c6dd store 1 ,mem_sensor_id1 
+401a c09f4145 bne p3610_id1 ,mouse_init_3610sensor_reset 
+401b 6800c6a7 fetch 1 ,mem_mouse_move_flag 
+401c 205a4039 call mouse_read_sensor3610_data ,blank 
+401d 7046a701 jam 1 ,mem_mouse_move_flag 
+401e 20404039 call mouse_read_sensor3610_data 
+401f 6800c6a1 fetch 1 ,mem_mouse_xy_h 
+4020 1ff1fe00 rshift4 pdata ,pdata 
+4021 20404169 call extsign_bit3 
+4022 6000c69c store 1 ,mem_mouse_x + 1 
+4023 6800c6a1 fetch 1 ,mem_mouse_xy_h 
+4024 1fe17e0f and pdata ,0x0f ,pdata 
+4025 20404169 call extsign_bit3 
+4026 6000c69e store 1 ,mem_mouse_y + 1 
+4027 6800c6f6 fetch 1 ,mem_config_sensor_angle 
+4028 c0004031 beq 0 ,motion3610_6clk_direction_selection 
+4029 c000c035 beq 1 ,motion3610_9clk_direction_selection 
+402a c0014033 beq 2 ,motion3610_12clk_direction_selection 
+402b c001c037 beq 3 ,motion3610_3clk_direction_selection 
+402c 20600000 rtn 
+
+mouse_3610_smart_select:
+402d 6800c6a4 fetch 1 ,mem_sensor_smart_flag 
+402e c0004051 beq p3610_smart_enable ,mouse_3610_smart_disable 
+402f c000c045 beq p3610_smart_disable ,mouse_3610_smart_enable 
+4030 20600000 rtn 
+
+motion3610_6clk_direction_selection:
+4031 20403fa3 call motion_6clk_direction_dispose 
+4032 2020402d branch mouse_3610_smart_select 
+
+motion3610_12clk_direction_selection:
+4033 20403fa7 call motion_12clk_direction_dispose 
+4034 2020402d branch mouse_3610_smart_select 
+
+motion3610_9clk_direction_selection:
+4035 20403fab call motion_9clk_direction_dispose 
+4036 2020402d branch mouse_3610_smart_select 
+
+motion3610_3clk_direction_selection:
+4037 20403fb3 call motion_3clk_direction_dispose 
+4038 2020402d branch mouse_3610_smart_select 
+
+mouse_read_sensor3610_data:
+4039 2040640f call spi_ncs_enable 
+403a 2040405d call mouse_read_sensor_common 
+403b dfe00005 arg 5 ,pdata 
+403c 20406414 call twspi_read 
+403d 6000c6a1 store 1 ,mem_mouse_xy_h 
+403e dfe00007 arg 7 ,pdata 
+403f 20406414 call twspi_read 
+4040 6000c6a2 store 1 ,mem_sensor_shutter_hi 
+4041 dfe00008 arg 8 ,pdata 
+4042 20406414 call twspi_read 
+4043 6000c6a3 store 1 ,mem_sensor_shutter_lo 
+4044 20206411 branch spi_ncs_disable 
+
+mouse_3610_smart_enable:
+4045 6800c6a2 fetch 1 ,mem_sensor_shutter_hi 
+4046 c1800000 rtnne 0 
+4047 6800c6a3 fetch 1 ,mem_sensor_shutter_lo 
+4048 1fe67c2d sub pdata ,45 ,null 
+4049 20610000 rtn positive 
+404a 7046a400 jam p3610_smart_enable ,mem_sensor_smart_flag 
+404b 5800ba41 setarg 0xba41 
+404c 20406405 call sensor_write 
+404d 58000032 setarg 0x0032 
+404e 20406405 call sensor_write 
+404f 5800b541 setarg 0xb541 
+4050 20206405 branch sensor_write 
+
+mouse_3610_smart_disable:
+4051 6800c6a2 fetch 1 ,mem_sensor_shutter_hi 
+4052 c1800000 rtnne 0 
+4053 6800c6a3 fetch 1 ,mem_sensor_shutter_lo 
+4054 1fe67c2d sub pdata ,45 ,null 
+4055 24610000 nrtn positive 
+4056 7046a401 jam p3610_smart_disable ,mem_sensor_smart_flag 
+4057 5800ba41 setarg 0xba41 
+4058 20406405 call sensor_write 
+4059 58008032 setarg 0x8032 
+405a 20406405 call sensor_write 
+405b 5800b541 setarg 0xb541 
+405c 20206405 branch sensor_write 
+
+mouse_read_sensor_common:
+405d dfe00003 arg pan_reg_delta_x ,pdata 
+405e 20406414 call twspi_read 
+405f 6001469b store 2 ,mem_mouse_x 
+4060 dfe00004 arg pan_reg_delta_y ,pdata 
+4061 20406414 call twspi_read 
+4062 6001469d store 2 ,mem_mouse_y 
+4063 20600000 rtn 
+
+mouse_set_qdecoder_x:
+4064 d840001b arg mouse_default_xa_gpio ,temp 
+4065 204067fb call gpio_config_input 
+4066 d840001b arg mouse_default_xa_gpio ,temp 
+4067 2040681d call gpio_get_bit 
+4068 20608000 rtn true 
+4069 68108109 hfetch 1 ,core_qdec_cntx 
+406a 79207e04 set1 4 ,pdata 
+406b 60108109 hstore 1 ,core_qdec_cntx 
+406c 20600000 rtn 
+
+mouse_hardware_zwheel:
+406d 6808c6c0 fetcht 1 ,mem_mouse_z_data 
+406e 68108109 hfetch 1 ,core_qdec_cntx 
+406f 9840fe00 iadd temp ,pdata 
+4070 207a0000 rtn blank 
+4071 6000c69f store 1 ,mem_mouse_z 
+4072 7046c000 jam 0 ,mem_mouse_z_data 
+4073 20207fe7 branch enable_user 
+
+mouse_hardware_zwheel_beforelpm:
+4074 6808c6c0 fetcht 1 ,mem_mouse_z_data 
+4075 68108109 hfetch 1 ,core_qdec_cntx 
+4076 9840fe00 iadd temp ,pdata 
+4077 6000c6c0 store 1 ,mem_mouse_z_data 
+4078 20600000 rtn 
+
+mouse_zwheel:
+4079 6800c6c0 fetch 1 ,mem_mouse_z_data 
+407a 207a0000 rtn blank 
+407b 6000c69f store 1 ,mem_mouse_z 
+407c 7046c000 jam 0 ,mem_mouse_z_data 
+407d 20207fe7 branch enable_user 
+
+mouse_t_zwheel:
+407e 6800c6ba fetch 1 ,mem_mouse_tz_data 
+407f 207a0000 rtn blank 
+4080 6000c6a0 store 1 ,mem_mouse_tz 
+4081 7046ba00 jam 0 ,mem_mouse_tz_data 
+4082 20207fe7 branch enable_user 
+
+mouse_check_key_gpio:
+4083 da200000 arg 0 ,rega 
+4084 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+4085 2040681d call gpio_get_bit 
+4086 7920a200 setflag true ,0 ,rega 
+4087 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+4088 2040681d call gpio_get_bit 
+4089 7920a201 setflag true ,1 ,rega 
+408a 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+408b 2040681d call gpio_get_bit 
+408c 7920a202 setflag true ,2 ,rega 
+408d 20404090 call mouse_check_s_key_gpio 
+
+mouse_check_key_gpio_output:
+408e 1a227e00 copy rega ,pdata 
+408f 20600000 rtn 
+
+mouse_check_s_key_gpio:
+4090 6800c6e5 fetch 1 ,mem_bk_button_gpio 
+4091 c17f8000 rtneq gpio_disable 
+4092 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+4093 2040681d call gpio_get_bit 
+4094 7920a203 setflag true ,3 ,rega 
+4095 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+4096 2040681d call gpio_get_bit 
+4097 7920a204 setflag true ,4 ,rega 
+4098 20600000 rtn 
+
+mouse_key:
+4099 20404083 call mouse_check_key_gpio 
+409a 204040a8 call mouse_set_mult 
+409b 204040a3 call mouse_24g_key 
+409c 1a227e00 copy rega ,pdata 
+409d 6808c69a fetcht 1 ,mem_mouse_key 
+409e 6000c69a store 1 ,mem_mouse_key 
+409f 9842fe00 ixor temp ,pdata 
+40a0 1fe67c00 sub pdata ,0 ,null 
+40a1 20628000 rtn zero 
+40a2 20207fe7 branch enable_user 
+
+mouse_24g_key:
+40a3 c6930000 rtnmark0 mark_24g 
+40a4 1a227e00 copy rega ,pdata 
+40a5 207a0000 rtn blank 
+40a6 6000c69a store 1 ,mem_mouse_key 
+40a7 20207fe7 branch enable_user 
+
+mouse_set_mult:
+40a8 68014682 fetch 2 ,mem_ui_state_map 
+40a9 c284c0ad bbit1 ui_state_ble_connected ,mouse_set_ble_mult 
+40aa 68014682 fetch 2 ,mem_ui_state_map 
+40ab c28040b0 bbit1 ui_state_bt_connected ,mouse_set_bt_mult 
+40ac 20600000 rtn 
+
+mouse_set_ble_mult:
+40ad 1a227e00 copy rega ,pdata 
+40ae 243a5820 nbranch le_set_config_short_mult ,blank 
+40af 20205822 branch le_clr_config_short_mult 
+
+mouse_set_bt_mult:
+40b0 1a227e00 copy rega ,pdata 
+40b1 243a2bc7 nbranch classic_bt_set_mult_short_flag ,blank 
+40b2 20202bc9 branch classic_bt_clr_mult_short_flag 
+
+mouse_sensor_sdio_low:
+40b3 44f3c01c bpatch patch1c_7 ,mem_patch1c 
+40b4 d840001a arg mouse_spi1_sdio_gpio ,temp 
+40b5 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+40b6 2feffe12 isolate1 mouse_enable_spi2 ,pdata 
+40b7 2040c0be call mouse_sensor_sdio_low2 ,true 
+40b8 2040681d call gpio_get_bit 
+40b9 20608000 rtn true 
+40ba 5800000a setarg 0x0a 
+40bb 20406414 call twspi_read 
+40bc 200003e8 nop 1000 
+40bd 202040b3 branch mouse_sensor_sdio_low 
+
+mouse_sensor_sdio_low2:
+40be d840001f arg mouse_spi2_sdio_gpio ,temp 
+40bf 20600000 rtn 
+
+mouse_spi_sdio_gpio_pollup:
+40c0 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+40c1 c28940c4 bbit1 mouse_enable_spi2 ,mouse_spi2_sdio_gpio_pollup 
+
+mouse_spi1_sdio_gpio_pollup:
+40c2 d840001a arg mouse_spi1_sdio_gpio ,temp 
+40c3 202067fe branch gpio_config_input_without_wake 
+
+mouse_spi2_sdio_gpio_pollup:
+40c4 d840001f arg mouse_spi2_sdio_gpio ,temp 
+40c5 202067fe branch gpio_config_input_without_wake 
+
+mouse_init_sunt:
+40c6 20403d36 call mouse_spi_init 
+40c7 20758000 rtn wake 
+40c8 204040c0 call mouse_spi_sdio_gpio_pollup 
+40c9 6800c6e0 fetch 1 ,mem_config_sensor_type 
+40ca c002c0d5 beq p3610 ,mouse_init_3610sensor 
+
+mouse_init_sensor:
+40cb 204040d9 call mouse_read_sensor_id 
+40cc c01840e0 beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
+40cd c018c0ea beq p3065_id1 ,mouse_p3065_init_param 
+40ce 204040d1 call mouse_twspi_reset 
+40cf 200003e8 nop 1000 
+40d0 202040cb branch mouse_init_sensor 
+
+mouse_twspi_reset:
+40d1 44f4401d bpatch patch1d_0 ,mem_patch1d 
+40d2 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+40d3 c28963e0 bbit1 mouse_enable_spi2 ,twspi_reset2 
+40d4 202063d1 branch twspi_reset 
+
+mouse_init_3610sensor:
+40d5 204040d9 call mouse_read_sensor_id 
+40d6 c01f414b beq p3610_id1 ,mouse_init_p3610 
+40d7 20404145 call mouse_init_3610sensor_reset 
+40d8 202040d5 branch mouse_init_3610sensor 
+
+mouse_read_sensor_id:
+40d9 58000001 setarg pan_reg_pid_h 
+40da 20406414 call twspi_read 
+40db 6000c6de store 1 ,mem_sensor_id2 
+40dc 58000000 setarg pan_reg_pid_l 
+40dd 20406414 call twspi_read 
+40de 6000c6dd store 1 ,mem_sensor_id1 
+40df 20600000 rtn 
+
+mouse_init_p32xx_id2_judge:
+40e0 6800c6de fetch 1 ,mem_sensor_id2 
+40e1 c068c139 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
+40e2 c06940f8 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
+40e3 c00140ee beq p3212_id2 ,mouse_3212_init_param 
+40e4 c02a40e6 beq pka8_id2 ,mouse_ka8_init_param 
+40e5 20600000 rtn 
+
+mouse_ka8_init_param:
+40e6 7046e002 jam ka8 ,mem_config_sensor_type 
+40e7 20600000 rtn 
+
+mouse_p3065xy_init_param:
+40e8 7046e006 jam p3065_xy ,mem_config_sensor_type 
+40e9 20600000 rtn 
+
+mouse_p3065_init_param:
+40ea 6800c6de fetch 1 ,mem_sensor_id2 
+40eb c03840e8 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+40ec 7046e001 jam p3065 ,mem_config_sensor_type 
+40ed 20600000 rtn 
+
+mouse_3212_init_param:
+40ee 7046e004 jam p3212 ,mem_config_sensor_type 
+40ef 204040f6 call mouse_sensor_disable_wp 
+40f0 58003426 setarg 0x3426 
+40f1 20406413 call twspi_write 
+40f2 58000419 setarg 0x0419 
+40f3 20406413 call twspi_write 
+
+mouse_sensor_enable_wp:
+40f4 58000009 setarg 0x0009 
+40f5 20206413 branch twspi_write 
+
+mouse_sensor_disable_wp:
+40f6 58005a09 setarg 0x5a09 
+40f7 20206413 branch twspi_write 
+
+mouse_3204_3l_init_param:
+40f8 7046e003 jam p3204 ,mem_config_sensor_type 
+40f9 204040f6 call mouse_sensor_disable_wp 
+40fa 58000f0d setarg 0x0f0d 
+40fb 20406413 call twspi_write 
+40fc 5800e31d setarg 0xe31d 
+40fd 20406413 call twspi_write 
+40fe 5800d27d setarg 0xd27d 
+40ff 20406413 call twspi_write 
+4100 20404102 call mouse_32xx_init_param 
+4101 2020411a branch mouse_32xx_init_param_1 
+
+mouse_32xx_init_param:
+4102 5800351b setarg 0x351b 
+4103 20406413 call twspi_write 
+4104 5800b428 setarg 0xb428 
+4105 20406413 call twspi_write 
+4106 58004629 setarg 0x4629 
+4107 20406413 call twspi_write 
+4108 5800962a setarg 0x962a 
+4109 20406413 call twspi_write 
+410a 58008c2b setarg 0x8c2b 
+410b 20406413 call twspi_write 
+410c 58006e2c setarg 0x6e2c 
+410d 20406413 call twspi_write 
+410e 5800642d setarg 0x642d 
+410f 20406413 call twspi_write 
+4110 58005f38 setarg 0x5f38 
+4111 20406413 call twspi_write 
+4112 58000f39 setarg 0x0f39 
+4113 20406413 call twspi_write 
+4114 5800323a setarg 0x323a 
+4115 20406413 call twspi_write 
+4116 5800473b setarg 0x473b 
+4117 20406413 call twspi_write 
+4118 58001042 setarg 0x1042 
+4119 20206413 branch twspi_write 
+
+mouse_32xx_init_param_1:
+411a 58002e54 setarg 0x2e54 
+411b 20406413 call twspi_write 
+411c 5800f255 setarg 0xf255 
+411d 20406413 call twspi_write 
+411e 5800f461 setarg 0xf461 
+411f 20406413 call twspi_write 
+4120 58007063 setarg 0x7063 
+4121 20406413 call twspi_write 
+4122 58005275 setarg 0x5275 
+4123 20406413 call twspi_write 
+4124 58004176 setarg 0x4176 
+4125 20406413 call twspi_write 
+4126 5800ed77 setarg 0xed77 
+4127 20406413 call twspi_write 
+4128 58002378 setarg 0x2378 
+4129 20406413 call twspi_write 
+412a 58004679 setarg 0x4679 
+412b 20406413 call twspi_write 
+412c 5800e57a setarg 0xe57a 
+412d 20406413 call twspi_write 
+412e 5800487c setarg 0x487c 
+412f 20406413 call twspi_write 
+4130 5800777e setarg 0x777e 
+4131 20406413 call twspi_write 
+4132 5800017f setarg 0x017f 
+4133 20406413 call twspi_write 
+4134 5800000b setarg 0x000b 
+4135 20406413 call twspi_write 
+4136 5800007f setarg 0x007f 
+4137 20406413 call twspi_write 
+4138 202040f4 branch mouse_sensor_enable_wp 
+
+mouse_3205_3t_init_param:
+4139 7046e000 jam p3205 ,mem_config_sensor_type 
+413a 204040f6 call mouse_sensor_disable_wp 
+413b 5800100d setarg 0x100d 
+413c 20406413 call twspi_write 
+413d 5800ed1d setarg 0xed1d 
+413e 20406413 call twspi_write 
+413f 5800807d setarg 0x807d 
+4140 20406413 call twspi_write 
+4141 20404102 call mouse_32xx_init_param 
+4142 58000943 setarg 0x0943 
+4143 20406413 call twspi_write 
+4144 2020411a branch mouse_32xx_init_param_1 
+
+mouse_init_3610sensor_reset:
+4145 6808c6dc fetcht 1 ,mem_sensor_reset_gpio 
+4146 20406829 call gpio_out_active 
+4147 20407ec1 call delay_10ms 
+4148 6808c6dc fetcht 1 ,mem_sensor_reset_gpio 
+4149 20406825 call gpio_out_inactive 
+414a 20207ec1 branch delay_10ms 
+
+mouse_init_p3610:
+414b 7046e005 jam p3610 ,mem_config_sensor_type 
+414c 5800ba41 setarg 0xba41 
+414d 20406405 call sensor_write 
+414e 58000d11 setarg 0x0d11 
+414f 20406405 call sensor_write 
+4150 5800041b setarg 0x041b 
+4151 20406405 call sensor_write 
+4152 5800041c setarg 0x041c 
+4153 20406405 call sensor_write 
+4154 58000f1d setarg 0x0f1d 
+4155 20406405 call sensor_write 
+4156 58000032 setarg 0x0032 
+4157 20406405 call sensor_write 
+4158 5800b541 setarg 0xb541 
+4159 20206405 branch sensor_write 
+
+mouse_set_sensor_reg:
+415a 5800ba41 setarg 0xba41 
+415b 20406405 call sensor_write 
+415c 20000fa0 nop 4000 
+415d 5800ff7f setarg 0xff7f 
+415e 20406405 call sensor_write 
+415f 1a227e00 copy rega ,pdata 
+4160 20406405 call sensor_write 
+4161 5800007f setarg 0x007f 
+4162 20406405 call sensor_write 
+4163 5800b541 setarg 0xb541 
+4164 20206405 branch sensor_write 
+
+extsign:
+4165 c4038000 rtnbit0 7 
+4166 d840ff00 arg 0xff00 ,temp 
+4167 9841fe00 ior temp ,pdata 
+4168 20600000 rtn 
+
+extsign_bit3:
+4169 c4018000 rtnbit0 3 
+416a d84000f0 arg 0xf0 ,temp 
+416b 9841fe00 ior temp ,pdata 
+416c 20600000 rtn 
+
+mouse_le:
+416d 20405892 call le_fifo_check_nearly_full 
+416e 247a0000 nrtn blank 
+416f 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+4170 1fe17e03 and pdata ,0x03 ,pdata 
+4171 c1818000 rtnne 0x03 
+4172 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+4173 c281c179 bbit1 mosue_24g_pairing_flag ,mouse_le_send_empty_packet 
+4174 c2804179 bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+4175 c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+4176 20403f97 call mouse_motion 
+4177 24740000 nrtn user 
+4178 20203f90 branch mouse_fill_data_le 
+
+mouse_le_send_empty_packet:
+4179 58000000 setarg 0 
+417a 6003c69a store 7 ,mem_mouse_key 
+417b 20203f90 branch mouse_fill_data_le 
+
+mouse_priority_bb_event:
+417c 1a627e00 copy regc ,pdata 
+417d c00a41c3 beq bt_evt_le_connected ,mouse_le_bb_event_connected 
+417e c000c2ca beq bt_evt_bb_connected ,mouse_stop_discovery 
+417f c00ac1d9 beq bt_evt_le_disconnected ,mouse_bb_disconnected 
+4180 c00141d9 beq bt_evt_bb_disconnected ,mouse_bb_disconnected 
+4181 c002c1d6 beq bt_evt_setup_complete ,mouse_bt_event_setup_complete 
+4182 c008426c beq bt_evt_button_long_pressed ,mouse_bb_event_discovery_btn 
+4183 c009429b beq bt_evt_hid_handshake ,mouse_bt_hid_handshake 
+4184 c00341d5 beq bt_evt_hid_connected ,mouse_bt_hid_connected 
+4185 c00241cc beq bt_evt_reconn_failed ,mouse_bb_event_reconn_failed 
+4186 c009c1cc beq bt_evt_reconn_page_timeout ,mouse_bb_event_reconn_timeout 
+4187 c00541ca beq bt_evt_pincode_req ,mouse_bb_event_pincode 
+4188 c01733cd beq bt_evt_remote_unsniff ,app_start_auto_sniff 
+4189 c018c1b4 beq bt_evt_le_pairing_success ,mouse_le_pairing_success 
+418a c01941b6 beq bt_evt_le_start_enc ,mouse_le_ll_start_encryt 
+418b c01f4191 beq bt_evt_le_pairing_complete ,mouse_le_pairing_complete 
+418c c013c38e beq bt_evt_virtual_cable_unplug ,mouse_irtual_cable_unplug 
+418d c01cc19c beq bt_evt_24g_pairing_complete ,mouse_24g_pairing_complete 
+418e c01d4192 beq bt_evt_24g_attempt_fail ,mouse_24g_attempt_fail 
+418f c01e419a beq bt_evt_24g_attempt_success ,mouse_24g_attempt_success 
+4190 20600000 rtn 
+
+mouse_le_pairing_complete:
+4191 20203410 branch app_ble_store_reconn_info 
+
+mouse_24g_attempt_fail:
+4192 70478b01 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+4193 6800c71e fetch 1 ,mem_reconn_times 
+4194 243a4492 nbranch mouse_polling_device ,blank 
+4195 6800c720 fetch 1 ,mem_device_flag 
+4196 6808c703 fetcht 1 ,mem_24g_device_number 
+4197 98467c00 isub temp ,null 
+4198 2022b40a branch app_enter_hibernate ,zero 
+4199 20600000 rtn 
+
+mouse_24g_attempt_success:
+419a 70478b01 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+419b 20600000 rtn 
+
+mouse_24g_pairing_complete:
+419c 70478b01 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+419d d8e00003 arg mosue_24g_pairing_flag ,queue 
+419e 204043d2 call mouse_disable_function_flag 
+419f 58000000 setarg 0 
+41a0 60014707 store 2 ,mem_24g_pairing_timer_count 
+41a1 7046a700 jam 0 ,mem_mouse_move_flag 
+41a2 6800c6e0 fetch 1 ,mem_config_sensor_type 
+41a3 1fe67c05 sub pdata ,p3610 ,null 
+41a4 2042c039 call mouse_read_sensor3610_data ,zero 
+41a5 2442c05d ncall mouse_read_sensor_common ,zero 
+41a6 68008004 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+41a7 c289c1af bbit1 mouse_enable_flash ,mouse_store_flash_24g_address 
+41a8 204041aa call mouse_set_24g_addr_eeprom 
+41a9 202065d1 branch iicd_write_protect_eep_data 
+
+mouse_set_24g_addr_eeprom:
+41aa 20402c7a call g24_head_ptr2regc 
+41ab 1a60a2ae add regc ,offset_24g_addr ,rega 
+41ac da40005b arg mouse_g24_addr_eeprom_offect ,regb 
+41ad d8400004 arg 4 ,temp 
+41ae 20600000 rtn 
+
+mouse_store_flash_24g_address:
+41af 20402c7a call g24_head_ptr2regc 
+41b0 1a60a4ae add regc ,offset_24g_addr ,regb 
+41b1 ea408000 ifetch 1 ,regb 
+41b2 6000c77b store 1 ,mem_mouse_24g_addr 
+41b3 20204435 branch mouse_store_flash_device_info 
+
+mouse_le_pairing_success:
+41b4 d8e00002 arg ll_pairing_success_flag ,queue 
+41b5 202041b9 branch mouse_le_enable_connect_flag 
+
+mouse_le_ll_start_encryt:
+41b6 7046c602 jam 2 ,mem_le_start_encrypt_timer 
+41b7 d8e00001 arg ll_start_enc_flag ,queue 
+41b8 202041b9 branch mouse_le_enable_connect_flag 
+
+mouse_le_enable_connect_flag:
+41b9 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+41ba f9207e00 qset1 pdata 
+41bb 6000c6c5 store 1 ,mem_le_connect_status_flag 
+41bc 20600000 rtn 
+
+mouse_le_disable_connect_flag:
+41bd 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+41be f93ffe00 qset0 pdata 
+41bf 6000c6c5 store 1 ,mem_le_connect_status_flag 
+41c0 20600000 rtn 
+
+mouse_le_clean_connect_flag:
+41c1 7046c500 jam 0 ,mem_le_connect_status_flag 
+41c2 20600000 rtn 
+
+mouse_le_bb_event_connected:
+41c3 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+41c4 793ffe00 set0 app_disc_by_button ,pdata 
+41c5 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+41c6 58000000 setarg 0 
+41c7 600146ae store 2 ,mem_mouse_direct_timer 
+41c8 20403f8d call mouse_no_data_timer_init 
+41c9 202042ca branch mouse_stop_discovery 
+
+mouse_bb_event_pincode:
+41ca 204063cb call pincode_reinit 
+41cb 202033dd branch app_bt_set_pincode 
+
+mouse_bb_event_reconn_timeout:
+
+mouse_bb_event_reconn_failed:
+41cc 6800c71e fetch 1 ,mem_reconn_times 
+41cd 243a4492 nbranch mouse_polling_device ,blank 
+41ce 68014682 fetch 2 ,mem_ui_state_map 
+41cf c28642b0 bbit1 ui_state_btn_down ,mouse_start_discovery 
+41d0 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+41d1 c28041d7 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+41d2 c282c2b0 bbit1 mouse_bt_discovery_button_down_flag ,mouse_start_discovery 
+41d3 c281aead bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+41d4 202033a7 branch app_bb_hibernate 
+
+mouse_bt_hid_connected:
+41d5 20203f74 branch mouse_hid_connected 
+
+mouse_bt_event_setup_complete:
+41d6 20600000 rtn 
+
+mouse_soft_reset:
+41d7 204043c0 call mouse_select_device_enable 
+41d8 2020659a branch soft_reset_chip 
+
+mouse_bb_disconnected:
+41d9 44f4c01d bpatch patch1d_1 ,mem_patch1d 
+41da 204041e7 call mouse_bb_discon_clear_stack 
+41db 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+41dc c28041d7 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+41dd c281aead bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+41de 6800c71e fetch 1 ,mem_reconn_times 
+41df 243a4492 nbranch mouse_polling_device ,blank 
+41e0 68014208 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+41e1 c283c1f5 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
+41e2 c28033a9 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+41e3 c280c1ef bbit1 app_disc_after_pairing ,mouse_event_light_state_pairing 
+41e4 c28141f2 bbit1 app_disc_after_reconn ,mouse_event_light_state_hibernate 
+41e5 c281c1f2 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+41e6 202042b0 branch mouse_start_discovery 
+
+mouse_bb_discon_clear_stack:
+41e7 58000000 setarg 0 
+41e8 600446b7 store 8 ,mem_wheel_tb_old_pinlevel 
+41e9 e0a20000 istore 4 ,contw 
+41ea 7046b400 jam 0 ,mem_mouse_send_blank_timer 
+41eb 7046a700 jam 0 ,mem_mouse_move_flag 
+41ec 7041e200 jam app_handshake_null ,mem_app_handshake_flag 
+41ed 70442900 jam 0 ,mem_ltk_exists 
+41ee 20600000 rtn 
+
+mouse_event_light_state_pairing:
+41ef c282c1f2 bbit1 app_disc_after_handshake ,mouse_event_light_state_hibernate 
+41f0 c281c1f2 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+41f1 202042b0 branch mouse_start_discovery 
+
+mouse_event_light_state_hibernate:
+41f2 68014682 fetch 2 ,mem_ui_state_map 
+41f3 c28642b0 bbit1 ui_state_btn_down ,mouse_start_discovery 
+41f4 202033a7 branch app_bb_hibernate 
+
+mouse4_0_event_bb_disconn:
+41f5 204041c1 call mouse_le_clean_connect_flag 
+41f6 68014208 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+41f7 c28033a9 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+41f8 202033a7 branch app_bb_hibernate 
+
+mouse_bb_event_timer:
+41f9 204043d6 call mouse_adc_read 
+41fa 20404243 call mouse_24g_delay_timer 
+41fb 20404246 call mouse_ban_24g_pairing_timer 
+41fc 20404250 call mouse_dpi_led_blink_delay_timer 
+41fd 2040445d call mouse_statue_up_timer 
+41fe 20404443 call mouse_statue_cheak_timer 
+41ff 20404333 call mouse_select_device 
+4200 204043a5 call mouse_bt_discovery_cheak 
+4201 204043eb call mouse_low_voltage_led_timer 
+4202 20404209 call mouse_sensor_led_contrl_timer 
+4203 20404231 call mouse_check_hid_handshake_timer 
+4204 20404234 call mouse_check_discovery_timeout_timer 
+4205 20404237 call mouse_check_direct_timeout_timer 
+4206 2040423a call mouse_check_no_data_timeout_timer 
+4207 2040423d call mouse_check_mouse_state_timer 
+4208 20204240 branch mouse_le_enable_att_list_timer 
+
+mouse_sensor_led_contrl_timer:
+4209 6800c711 fetch 1 ,mem_mouse_sensor_timer_count 
+420a 207a0000 rtn blank 
+420b 1fe0ffff increase -1 ,pdata 
+420c 6000c711 store 1 ,mem_mouse_sensor_timer_count 
+420d 247a0000 nrtn blank 
+420e 2020420f branch mouse_sensor_led_contrl 
+
+mouse_sensor_led_contrl:
+420f 6800c712 fetch 1 ,mem_sensor_led_style 
+4210 c1000000 rtneq ui_led_state_blink_stop 
+4211 c002c216 beq ui_led_state_blink_darking ,mouse_sensor_led_blink_state_darking 
+
+mouse_sensor_led_blink_state_lighting:
+4212 20404225 call mouse_sensor_led_on 
+4213 70471205 jam ui_led_state_blink_darking ,mem_sensor_led_style 
+4214 70471105 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+4215 20600000 rtn 
+
+mouse_sensor_led_blink_state_darking:
+4216 2040422c call mouse_sensor_led_off 
+4217 70471204 jam ui_led_state_blink_lighting ,mem_sensor_led_style 
+4218 70471105 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+4219 20600000 rtn 
+
+mouse_sensor_led_blink_stop:
+
+mouse_sensor_reset:
+421a 58008006 setarg 0x8006 
+421b 20406413 call twspi_write 
+421c 200003e8 nop 1000 
+421d 70471100 jam 0x00 ,mem_mouse_sensor_timer_count 
+421e 70471200 jam ui_led_state_blink_stop ,mem_sensor_led_style 
+421f 202040e0 branch mouse_init_p32xx_id2_judge 
+
+mouse_p3212sensor_led_on:
+4220 5800a006 setarg 0xa006 
+4221 20406413 call twspi_write 
+4222 5800a005 setarg 0xa005 
+4223 20206413 branch twspi_write 
+
+mouse_sensor_led_on_global:
+4224 70471100 jam 0 ,mem_mouse_sensor_timer_count 
+
+mouse_sensor_led_on:
+4225 6800c6e0 fetch 1 ,mem_config_sensor_type 
+4226 c0024220 beq p3212 ,mouse_p3212sensor_led_on 
+4227 58000106 setarg 0x0106 
+4228 20406413 call twspi_write 
+4229 5800a105 setarg 0xa105 
+422a 20206413 branch twspi_write 
+
+mouse_sensor_led_off_global:
+422b 70471100 jam 0 ,mem_mouse_sensor_timer_count 
+
+mouse_sensor_led_off:
+422c 58000906 setarg 0x0906 
+422d 20206413 branch twspi_write 
+
+mouse_sensor_start_blink:
+422e 70471105 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+422f 70471201 jam ui_led_state_blink_start ,mem_sensor_led_style 
+4230 20600000 rtn 
+
+mouse_check_hid_handshake_timer:
+4231 da604680 arg mem_hid_handshake_timer_count ,regc 
+4232 da40429b arg mouse_bt_hid_handshake ,regb 
+4233 2020336d branch timer_single_step 
+
+mouse_check_discovery_timeout_timer:
+4234 da6046ac arg mem_mouse_discovery_timer ,regc 
+4235 da404264 arg mouse_check_discovery_timeout ,regb 
+4236 20203374 branch timer_single_step_2b 
+
+mouse_check_direct_timeout_timer:
+4237 da6046ae arg mem_mouse_direct_timer ,regc 
+4238 da404266 arg mouse_check_direct_timeout ,regb 
+4239 20203374 branch timer_single_step_2b 
+
+mouse_check_no_data_timeout_timer:
+423a da6046b0 arg mem_mouse_no_data_timer ,regc 
+423b da40426a arg mouse_check_no_data_timeout ,regb 
+423c 20203374 branch timer_single_step_2b 
+
+mouse_check_mouse_state_timer:
+423d da6046c4 arg mem_mouse_statue_led_timer ,regc 
+423e da404478 arg mouse_statue_led_off ,regb 
+423f 2020336d branch timer_single_step 
+
+mouse_le_enable_att_list_timer:
+4240 da6046c6 arg mem_le_start_encrypt_timer ,regc 
+4241 da40425e arg mouse_le_enable_att_list ,regb 
+4242 2020336d branch timer_single_step 
+
+mouse_24g_delay_timer:
+4243 da604704 arg mem_24g_enter_lpm_timer ,regc 
+4244 da404249 arg mouse_24g_delay ,regb 
+4245 2020336d branch timer_single_step 
+
+mouse_ban_24g_pairing_timer:
+4246 da604707 arg mem_24g_pairing_timer_count ,regc 
+4247 da404249 arg mouse_ban_24g_pairing ,regb 
+4248 20203374 branch timer_single_step_2b 
+
+mouse_ban_24g_pairing:
+
+mouse_24g_delay:
+4249 20600000 rtn 
+
+mosue_dpi_led_blink_init:
+424a 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+424b c40b8000 rtnbit0 mouse_enable_dpi_led_blink 
+424c 7046df0a jam 10 ,mem_mouse_dpi_led_delay_count 
+424d 6800c6f4 fetch 1 ,mem_dpi_led_gpio 
+424e 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+424f 20600000 rtn 
+
+mouse_dpi_led_blink_delay_timer:
+4250 da6046df arg mem_mouse_dpi_led_delay_count ,regc 
+4251 da404253 arg mouse_dpi_led_setting ,regb 
+4252 2020336d branch timer_single_step 
+
+mouse_dpi_led_setting:
+4253 6800c6f4 fetch 1 ,mem_dpi_led_gpio 
+4254 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+4255 58000190 setarg led_dpi_blink 
+4256 60014716 store 2 ,mem_mouse_on_time 
+4257 60014718 store 2 ,mem_mouse_off_time 
+4258 da200000 arg 0 ,rega 
+4259 6808c77a fetcht 1 ,mem_mouse_dpi 
+425a 18408401 increase 1 ,temp 
+425b 6008c714 storet 1 ,mem_mouse_blink_count 
+425c 70471301 jam ui_led_state_blink_start ,mem_mouse_led_type 
+425d 20600000 rtn 
+
+mouse_le_enable_att_list:
+425e 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+425f c3810000 rtnbit1 ll_pairing_success_flag 
+4260 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+4261 20407d8f call ui_ipc_send_cmd 
+4262 d8e00000 arg write_req_enable_flag ,queue 
+4263 202041b9 branch mouse_le_enable_connect_flag 
+
+mouse_check_discovery_timeout:
+4264 204042ca call mouse_stop_discovery 
+4265 2020340a branch app_enter_hibernate 
+
+mouse_check_direct_timeout:
+4266 204033f6 call app_ble_stop_direct_adv 
+4267 6800c71e fetch 1 ,mem_reconn_times 
+4268 243a4492 nbranch mouse_polling_device ,blank 
+4269 2020340a branch app_enter_hibernate 
+
+mouse_check_no_data_timeout:
+426a c5137e1d bmark1 mark_24g ,check_51cmd_hibernate 
+426b 20204386 branch mouse_disconnect 
+
+mouse_bb_event_discovery_btn:
+426c 44f5401d bpatch patch1d_2 ,mem_patch1d 
+426d 7046b400 jam 0 ,mem_mouse_send_blank_timer 
+426e 20404386 call mouse_disconnect 
+426f 204041c1 call mouse_le_clean_connect_flag 
+4270 202042b0 branch mouse_start_discovery 
+
+mouse3_0_check_reconn_target:
+4271 680341d0 fetch 6 ,mem_hci_plap 
+4272 203a33eb branch app_bt_start_discovery_short ,blank 
+4273 2040427e call mouse_reconn_setting_led_gpio 
+4274 70016d17 jam 0x17 ,mem_connection_options 
+4275 6800c65a fetch 1 ,mem_ssp_enable 
+4276 243a33e1 nbranch app_bt_start_reconnect ,blank 
+4277 70016d04 jam 0x04 ,mem_connection_options 
+4278 202033e1 branch app_bt_start_reconnect 
+
+mouse4_0_check_reconn_target:
+4279 680146a8 fetch 2 ,mem_mouse_direct_timeout 
+427a 600146ae store 2 ,mem_mouse_direct_timer 
+427b 2040427e call mouse_reconn_setting_led_gpio 
+427c 20403418 call app_lpm_mult_disable 
+427d 20207df4 branch check_51cmd_adv 
+
+mouse_reconn_setting_led_gpio:
+427e 580000c8 setarg led_reconnect_blink 
+427f 60014716 store 2 ,mem_mouse_on_time 
+4280 60014718 store 2 ,mem_mouse_off_time 
+4281 20204285 branch mouse_setting_led_gpio_comman 
+
+mouse_discover_setting_led_gpio:
+4282 580003e8 setarg led_discovery_blink 
+4283 60014716 store 2 ,mem_mouse_on_time 
+4284 60014718 store 2 ,mem_mouse_off_time 
+
+mouse_setting_led_gpio_comman:
+4285 6800c720 fetch 1 ,mem_device_flag 
+4286 c000c28a beq mode_bt_device1 ,mouse_device_led1 
+4287 c001428c beq mode_bt_device2 ,mouse_device_led2 
+4288 c001c28e beq mode_bt_device3 ,mouse_device_led3 
+4289 20600000 rtn 
+
+mouse_device_led1:
+428a 6800c6f0 fetch 1 ,mem_config_device1_led_gpio 
+428b 2020428f branch mouse_led_blink 
+
+mouse_device_led2:
+428c 6800c6f1 fetch 1 ,mem_config_device2_led_gpio 
+428d 2020428f branch mouse_led_blink 
+
+mouse_device_led3:
+428e 6800c6f2 fetch 1 ,mem_config_device3_led_gpio 
+
+mouse_led_blink:
+428f 60008aa2 store 1 ,mem_temp 
+4290 20404482 call mouse_devce_led_off 
+4291 68008aa2 fetch 1 ,mem_temp 
+4292 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+4293 da200000 arg 0 ,rega 
+4294 70471301 jam ui_led_state_blink_start ,mem_mouse_led_type 
+4295 20207d1e branch ui_led_blink_start_global 
+
+mouse_led_off:
+4296 da200000 arg 0 ,rega 
+4297 20207d19 branch ui_led_off_global 
+
+mouse_led_on:
+4298 da200000 arg 0 ,rega 
+4299 20207d14 branch ui_led_on_global 
+
+mouse4_0_bb_event_discovery_btn:
+429a 202041c1 branch mouse_le_clean_connect_flag 
+
+mouse_bt_hid_handshake:
+429b 7041e201 jam app_handshake_done ,mem_app_handshake_flag 
+429c 20403416 call app_lpm_mult_enable 
+429d 20403412 call app_bt_store_reconn_info 
+429e 58000000 setarg 0 
+429f 6001467e store 2 ,mem_discovery_timeout_timer_count 
+42a0 6000c680 store 1 ,mem_hid_handshake_timer_count 
+42a1 2020340e branch app_bt_enter_sniff 
+
+mouse_check_reconn_target:
+42a2 2040435f call mouse_cheak_select_device_by_switch 
+42a3 6800c720 fetch 1 ,mem_device_flag 
+42a4 6808c703 fetcht 1 ,mem_24g_device_number 
+42a5 98467c00 isub temp ,null 
+42a6 2022c2ab branch mouse_connect_24g_mode ,zero 
+42a7 6800c210 fetch 1 ,mem_xrecord_mode 
+42a8 c019c271 beq rec_3_mode ,mouse3_0_check_reconn_target 
+42a9 c01a4279 beq rec_4_mode ,mouse4_0_check_reconn_target 
+42aa 202042b0 branch mouse_start_discovery 
+
+mouse_connect_24g_mode:
+42ab 20403d57 call mouse_start_24g_mode 
+42ac c6130000 rtnmark1 mark_24g 
+42ad 6800c71e fetch 1 ,mem_reconn_times 
+42ae 243a4492 nbranch mouse_polling_device ,blank 
+42af 20600000 rtn 
+
+mouse_start_discovery:
+42b0 44f5c01d bpatch patch1d_3 ,mem_patch1d 
+42b1 68014682 fetch 2 ,mem_ui_state_map 
+42b2 c285c2b7 bbit1 ui_state_ble_adv ,mouse_start_discovery_norandom 
+42b3 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+42b4 c30c42b7 bbit0 mouse_enable_ble_random_addre ,mouse_start_discovery_norandom 
+42b5 180a7e00 random pdata 
+42b6 6000c4a1 store 1 ,mem_le_lap + 1 
+
+mouse_start_discovery_norandom:
+42b7 20403418 call app_lpm_mult_disable 
+42b8 68014687 fetch 2 ,mem_discovery_timeout 
+42b9 600146ac store 2 ,mem_mouse_discovery_timer 
+42ba 70016d06 jam 6 ,mem_connection_options 
+42bb 58000000 setarg 0 
+42bc 600146b0 store 2 ,mem_mouse_no_data_timer 
+42bd 600146ae store 2 ,mem_mouse_direct_timer 
+42be d8e00007 arg mouse_store_eeprom_flag ,queue 
+42bf 204043ce call mouse_enable_function_flag 
+42c0 204043ca call mouse_bt_discovery_button_down_disable 
+42c1 6800c092 fetch 1 ,mem_device_option 
+42c2 2feffe01 isolate1 mode_4_mouse ,pdata 
+42c3 2040fdf4 call check_51cmd_adv ,true 
+42c4 6800c092 fetch 1 ,mem_device_option 
+42c5 2feffe00 isolate1 mode_3_mouse ,pdata 
+42c6 2040fddd call check_51cmd_start_discovery ,true 
+42c7 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+42c8 c28e422e bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_start_blink 
+42c9 20204282 branch mouse_discover_setting_led_gpio 
+
+mouse_stop_discovery:
+42ca 44f6401d bpatch patch1d_4 ,mem_patch1d 
+42cb 6800c092 fetch 1 ,mem_device_option 
+42cc 2feffe01 isolate1 mode_4_mouse ,pdata 
+42cd 2040c2d4 call mouse_stop_le_adv ,true 
+42ce 6800c092 fetch 1 ,mem_device_option 
+42cf 2feffe00 isolate1 mode_3_mouse ,pdata 
+42d0 2040c2d7 call mouse_stop_bt3_discovery ,true 
+42d1 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+42d2 c28e421a bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_led_blink_stop 
+42d3 20204482 branch mouse_devce_led_off 
+
+mouse_stop_le_adv:
+42d4 58000000 setarg 0 
+42d5 600146ae store 2 ,mem_mouse_direct_timer 
+42d6 20207dfa branch check_51cmd_stop_adv 
+
+mouse_stop_bt3_discovery:
+42d7 58000000 setarg 0 
+42d8 600146ac store 2 ,mem_mouse_discovery_timer 
+42d9 20207de2 branch check_51cmd_stop_discovery 
+
+mouse_store_remote_bdaddr:
+42da 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+42db c4038000 rtnbit0 mouse_store_eeprom_flag 
+42dc d8e00007 arg mouse_store_eeprom_flag ,queue 
+42dd 204043d2 call mouse_disable_function_flag 
+42de 204042e8 call mouse_check_device_addr 
+
+mouse_unplug_clean_bdaddr:
+42df 204042fb call mouse_before_store_reconn_info 
+42e0 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+42e1 c289c435 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
+42e2 c28a42e4 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+42e3 20600000 rtn 
+
+mouse_store_eeprom_device_info:
+42e4 d8400058 arg 88 ,temp 
+42e5 da204720 arg mem_device_flag ,rega 
+42e6 da400000 arg mouse_info_eeprom_offect ,regb 
+42e7 202065d1 branch iicd_write_protect_eep_data 
+
+mouse_check_device_addr:
+42e8 68008185 fetch 1 ,mem_record_bt_mode 
+42e9 c01a42ec beq rec_4_mode ,mouse_check_le_device_addr 
+42ea c019c2ef beq rec_3_mode ,mouse_check_bt_device_addr 
+42eb 20600000 rtn 
+
+mouse_check_le_device_addr:
+42ec 6000c6c7 store 1 ,mem_device_addr_temp 
+42ed 6803044f fetch 6 ,mem_le_plap 
+42ee 202042f1 branch mouse_check_bt_device_addr_common 
+
+mouse_check_bt_device_addr:
+42ef 6000c6c7 store 1 ,mem_device_addr_temp 
+42f0 68030040 fetch 6 ,mem_plap 
+
+mouse_check_bt_device_addr_common:
+42f1 600346c8 store 6 ,mem_device_addr_temp + 1 
+42f2 6803c6c7 fetch 7 ,mem_device_addr_temp 
+42f3 d8c04721 arg mem_device1_type ,contr 
+42f4 df200003 arg 3 ,loopcnt 
+
+mouse_check_device_addr_end:
+42f5 e8cb8000 ifetcht 7 ,contr 
+42f6 98467c00 isub temp ,null 
+42f7 2022c310 branch mouse_clean_addr ,zero 
+42f8 18c08c16 increase 22 ,contr 
+42f9 c20042f5 loop mouse_check_device_addr_end 
+42fa 20600000 rtn 
+
+mouse_before_store_reconn_info:
+42fb da204721 arg mem_device1_type ,rega 
+42fc 6800c720 fetch 1 ,mem_device_flag 
+42fd 1fe0ffff increase -1 ,pdata 
+42fe 1feffe1d mul32 pdata ,29 ,pdata 
+42ff 9a20a200 iadd rega ,rega 
+4300 68008185 fetch 1 ,mem_record_bt_mode 
+4301 e2208000 istore 1 ,rega 
+4302 c01a4305 beq rec_4_mode ,mouse_store_le_device 
+4303 c019c30c beq rec_3_mode ,mouse_store_bt_device 
+4304 20600000 rtn 
+
+mouse_store_le_device:
+4305 6803044f fetch 6 ,mem_le_plap 
+4306 e0a30000 istore 6 ,contw 
+4307 d8c04419 arg mem_le_ltk ,contr 
+4308 20407ebf call memcpy16 
+4309 680344a0 fetch 6 ,mem_le_lap 
+430a e0a30000 istore 6 ,contw 
+430b 20600000 rtn 
+
+mouse_store_bt_device:
+430c 68030040 fetch 6 ,mem_plap 
+430d e0a30000 istore 6 ,contw 
+430e d8c041be arg mem_link_key ,contr 
+430f 20207ebf branch memcpy16 
+
+mouse_clean_addr:
+4310 18c08dfa increase -6 ,contr 
+4311 18c20a00 copy contr ,contw 
+4312 680b46c8 fetcht 6 ,mem_device_addr_temp + 1 
+4313 18408403 increase 3 ,temp 
+4314 e0ab0000 istoret 6 ,contw 
+4315 20600000 rtn 
+
+mouse_eeprom_load_recon_info:
+4316 d8400058 arg 88 ,temp 
+4317 da204720 arg mem_device_flag ,rega 
+4318 da400000 arg mouse_info_eeprom_offect ,regb 
+4319 204065df call iicd_read_eep_data 
+
+mouse_select_reconn_device:
+431a da204721 arg mem_device1_type ,rega 
+431b 6800c720 fetch 1 ,mem_device_flag 
+431c 6808c703 fetcht 1 ,mem_24g_device_number 
+431d 98467c00 isub temp ,null 
+431e 20628000 rtn zero 
+431f 1fe0ffff increase -1 ,pdata 
+4320 1feffe1d mul32 pdata ,29 ,pdata 
+4321 9a20a200 iadd rega ,rega 
+4322 ea208000 ifetch 1 ,rega 
+4323 6000c210 store 1 ,mem_xrecord_mode 
+4324 c019c327 beq rec_3_mode ,mouse_load_bt_device 
+4325 c01a432c beq rec_4_mode ,mouse_load_le_device 
+4326 20600000 rtn 
+
+mouse_load_bt_device:
+4327 e8c30000 ifetch 6 ,contr 
+
+mouse_load_bt_device_end:
+4328 600341d0 store 6 ,mem_hci_plap 
+4329 d8a041be arg mem_link_key ,contw 
+432a 20407ebf call memcpy16 
+432b 202067d7 branch check_link_key_load 
+
+mouse_load_le_device:
+432c e8c30000 ifetch 6 ,contr 
+
+mouse_load_le_device_end:
+432d 600341d0 store 6 ,mem_hci_plap 
+432e d8a04419 arg mem_le_ltk ,contw 
+432f 20407ebf call memcpy16 
+4330 e8c30000 ifetch 6 ,contr 
+4331 600344a0 store 6 ,mem_le_lap 
+4332 20600000 rtn 
+
+mouse_select_device:
+4333 6800c6f5 fetch 1 ,mem_config_function_enable 
+4334 c282c349 bbit1 enable_select_device_by_gpio_button ,mouse_select_device_by_button 
+4335 c2834359 bbit1 enable_select_device_by_switch ,mouse_select_device_by_switch 
+4336 20204337 branch mouse_select_device_by_combination_key 
+
+mouse_select_device_by_combination_key:
+4337 20404083 call mouse_check_key_gpio 
+4338 c003433e beq mouse_rm_button ,mouse_select_device_commbination_key_down 
+
+mouse_select_device_commbination_key_up:
+4339 7046d81e jam 30 ,mem_combination_select_device_count 
+433a 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+433b c1008000 rtneq dpi_button_state_up 
+433c 7046d901 jam dpi_button_state_up ,mem_select_device_button_statue 
+433d 20600000 rtn 
+
+mouse_select_device_commbination_key_down:
+433e 20404343 call mouse_combination_select_device_timer 
+433f 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+4340 c1000000 rtneq dpi_button_state_down 
+4341 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
+4342 202043c0 branch mouse_select_device_enable 
+
+mouse_combination_select_device_timer:
+4343 6800c6d8 fetch 1 ,mem_combination_select_device_count 
+4344 207a0000 rtn blank 
+4345 1fe0ffff pincrease -1 
+4346 6000c6d8 store 1 ,mem_combination_select_device_count 
+4347 247a0000 nrtn blank 
+4348 20204370 branch mouse_ready_reconnection_by_button 
+
+mouse_select_device_by_button:
+4349 6800c6ed fetch 1 ,mem_config_select_device_button_gpio 
+434a c17f8000 rtneq gpio_disable 
+434b 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+434c 2040681d call gpio_get_bit 
+434d 2020c354 branch mouse_select_device_button_down ,true 
+
+mouse_select_device_button_up:
+434e 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+434f c1008000 rtneq dpi_button_state_up 
+4350 7046d901 jam dpi_button_state_up ,mem_select_device_button_statue 
+4351 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+4352 c3830000 rtnbit1 mouse_long_bt_button_flag 
+4353 20204370 branch mouse_ready_reconnection_by_button 
+
+mouse_select_device_button_down:
+4354 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+4355 c1000000 rtneq dpi_button_state_down 
+4356 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
+4357 d8e00006 arg mouse_long_bt_button_flag ,queue 
+4358 202043d2 branch mouse_disable_function_flag 
+
+mouse_select_device_by_switch:
+4359 68008004 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+435a c4030000 rtnbit0 enable_select_device_by_switch 
+435b 6800c720 fetch 1 ,mem_device_flag 
+435c c000c369 beq mode_bt_device1 ,mouse_select1_device 
+435d c001436c beq mode_24g_device ,mouse_select2_device 
+435e 20600000 rtn 
+
+mouse_cheak_select_device_by_switch:
+435f 68008004 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+4360 c4030000 rtnbit0 enable_select_device_by_switch 
+4361 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+4362 2040681d call gpio_get_bit 
+4363 2020c366 branch mouse_cheak_select_24gdevice ,true 
+
+mouse_select_btdevice:
+4364 70472001 jam mode_bt_device1 ,mem_device_flag 
+4365 20600000 rtn 
+
+mouse_cheak_select_24gdevice:
+4366 6800c703 fetch 1 ,mem_24g_device_number 
+4367 6000c720 store 1 ,mem_device_flag 
+4368 20600000 rtn 
+
+mouse_select1_device:
+4369 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+436a 2420c370 nbranch mouse_ready_reconnection_by_button ,true 
+436b 20600000 rtn 
+
+mouse_select2_device:
+436c 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+436d 2040681d call gpio_get_bit 
+436e 2020c354 branch mouse_select_device_button_down ,true 
+436f 20600000 rtn 
+
+mouse_ready_reconnection_by_button:
+4370 6808c720 fetcht 1 ,mem_device_flag 
+4371 18408401 increase 1 ,temp 
+4372 6800c6d2 fetch 1 ,mem_device_number 
+4373 98467c00 isub temp ,null 
+4374 244143cc ncall mouse_select_device_count_clean ,positive 
+4375 6008c720 storet 1 ,mem_device_flag 
+4376 7041bd00 jam 0 ,mem_link_key_exists 
+4377 2040437a call mouse_store_device_number2eeprom 
+
+mouse_ready_reconnection_by_button_next:
+4378 204043c0 call mouse_select_device_enable 
+4379 2020437e branch mouse_set_reconnection 
+
+mouse_store_device_number2eeprom:
+437a d8400001 arg 1 ,temp 
+437b da204720 arg mem_device_flag ,rega 
+437c da400000 arg 0 ,regb 
+437d 20206606 branch iicd_write_eep_data 
+
+mouse_set_reconnection:
+437e 20404381 call mouse_stop_bluetooth_mode 
+437f 204043c2 call mouse_select_device_disable 
+4380 202041d7 branch mouse_soft_reset 
+
+mouse_stop_bluetooth_mode:
+4381 68014682 fetch 2 ,mem_ui_state_map 
+4382 c283c392 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+4383 c284b402 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+4384 c28033e9 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+4385 202042ca branch mouse_stop_discovery 
+
+mouse_disconnect:
+4386 44f6c01d bpatch patch1d_5 ,mem_patch1d 
+4387 58000000 setarg 0 
+4388 600146b0 store 2 ,mem_mouse_no_data_timer 
+4389 68014682 fetch 2 ,mem_ui_state_map 
+438a c284b402 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+438b 68014682 fetch 2 ,mem_ui_state_map 
+438c c28033e9 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+438d 20600000 rtn 
+
+mouse_irtual_cable_unplug:
+438e 58000001 setarg 0x01 
+438f 60030040 store 6 ,mem_plap 
+4390 70018533 jam rec_3_mode ,mem_record_bt_mode 
+4391 202042df branch mouse_unplug_clean_bdaddr 
+
+mouse_cancel_reconnect:
+4392 204043c4 call mouse_bt_cannel_reconn_enable 
+4393 20207e2f branch check_51cmd_bb_reconn_cancel 
+
+mouse_bt_discovery_by_button:
+4394 6800c6ec fetch 1 ,mem_config_bt_button_gpio 
+4395 c17f8000 rtneq gpio_disable 
+4396 6808c6ec fetcht 1 ,mem_config_bt_button_gpio 
+4397 2040681d call gpio_get_bit 
+4398 2020c39f branch mouse_bt_discovery_button_down ,true 
+
+mouse_bt_discovery_button_up:
+4399 6800c685 fetch 1 ,mem_ui_button_timeout 
+439a 6000c6da store 1 ,mem_combination_ui_button_count 
+439b 6800c6db fetch 1 ,mem_bt_discovey_button_statue 
+439c c1008000 rtneq dpi_button_state_up 
+439d 7046db01 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+439e 202043ca branch mouse_bt_discovery_button_down_disable 
+
+mouse_bt_discovery_button_down:
+439f 204043b5 call mouse_bt_discovry_timer 
+43a0 6800c6db fetch 1 ,mem_bt_discovey_button_statue 
+43a1 c1000000 rtneq dpi_button_state_down 
+43a2 7046db00 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+43a3 20407e2f call check_51cmd_bb_reconn_cancel 
+43a4 202043c8 branch mouse_bt_discovery_button_down_enable 
+
+mouse_bt_discovery_cheak:
+43a5 6800c6f5 fetch 1 ,mem_config_function_enable 
+43a6 c2824394 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
+
+mouse_bt_discovery_commbination_key:
+43a7 20404083 call mouse_check_key_gpio 
+43a8 c003c3af beq mouse_lmr_button ,mouse_bt_discovery_commbination_key_down 
+
+mouse_bt_discovery_commbination_key_up:
+43a9 6800c685 fetch 1 ,mem_ui_button_timeout 
+43aa 6000c6da store 1 ,mem_combination_ui_button_count 
+43ab 6800c6db fetch 1 ,mem_bt_discovey_button_statue 
+43ac c1008000 rtneq dpi_button_state_up 
+43ad 7046db01 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+43ae 202043ca branch mouse_bt_discovery_button_down_disable 
+
+mouse_bt_discovery_commbination_key_down:
+43af 204043b5 call mouse_bt_discovry_timer 
+43b0 6800c6db fetch 1 ,mem_bt_discovey_button_statue 
+43b1 c1000000 rtneq dpi_button_state_down 
+43b2 7046db00 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+43b3 20407e2f call check_51cmd_bb_reconn_cancel 
+43b4 202043c8 branch mouse_bt_discovery_button_down_enable 
+
+mouse_bt_discovry_timer:
+43b5 da6046da arg mem_combination_ui_button_count ,regc 
+43b6 da4043b8 arg mouse_long_button_bt_discovry ,regb 
+43b7 2020336d branch timer_single_step 
+
+mouse_long_button_bt_discovry:
+43b8 d8e00006 arg mouse_long_bt_button_flag ,queue 
+43b9 204043ce call mouse_enable_function_flag 
+43ba 20403357 call app_evt_button_long_pressed 
+43bb 2020426c branch mouse_bb_event_discovery_btn 
+
+mouse_cpi_enable:
+43bc d8e00001 arg mouse_cpi_flag ,queue 
+43bd 202043ce branch mouse_enable_function_flag 
+
+mouse_cpi_disable:
+43be d8e00001 arg mouse_cpi_flag ,queue 
+43bf 202043d2 branch mouse_disable_function_flag 
+
+mouse_select_device_enable:
+43c0 d8e00000 arg mouse_select_device_flag ,queue 
+43c1 202043ce branch mouse_enable_function_flag 
+
+mouse_select_device_disable:
+43c2 d8e00000 arg mouse_select_device_flag ,queue 
+43c3 202043d2 branch mouse_disable_function_flag 
+
+mouse_bt_cannel_reconn_enable:
+43c4 d8e00002 arg mouse_bt_cannel_reconn_flag ,queue 
+43c5 202043ce branch mouse_enable_function_flag 
+
+mouse_bt_cannel_reconn_disable:
+43c6 d8e00002 arg mouse_bt_cannel_reconn_flag ,queue 
+43c7 202043d2 branch mouse_disable_function_flag 
+
+mouse_bt_discovery_button_down_enable:
+43c8 d8e00005 arg mouse_bt_discovery_button_down_flag ,queue 
+43c9 202043ce branch mouse_enable_function_flag 
+
+mouse_bt_discovery_button_down_disable:
+43ca d8e00005 arg mouse_bt_discovery_button_down_flag ,queue 
+43cb 202043d2 branch mouse_disable_function_flag 
+
+mouse_select_device_count_clean:
+43cc d8400001 arg 1 ,temp 
+43cd 20600000 rtn 
+
+mouse_enable_function_flag:
+43ce 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+43cf f9207e00 qset1 pdata 
+43d0 600246d3 store mouse_flag_len ,mem_mouse_flag 
+43d1 20600000 rtn 
+
+mouse_disable_function_flag:
+43d2 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+43d3 f93ffe00 qset0 pdata 
+43d4 600246d3 store mouse_flag_len ,mem_mouse_flag 
+43d5 20600000 rtn 
+
+mouse_adc_read:
+43d6 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+43d7 c40d0000 rtnbit0 mouse_enable_adc 
+43d8 6800c6ce fetch 1 ,mem_adc_read_timer 
+43d9 1fe0fe01 increase 1 ,pdata 
+43da 6000c6ce store 1 ,mem_adc_read_timer 
+43db 1fe67c0a sub pdata ,10 ,null 
+43dc 20610000 rtn positive 
+43dd 7046ce00 jam 0 ,mem_adc_read_timer 
+43de 204068eb call adc_set_mode 
+43df 20406908 call vdd_calculate_by_mode 
+43e0 6001470f store 2 ,mem_mouse_vdd_now_vol 
+43e1 da204709 arg mem_mouse_vdd_calculate_set ,rega 
+43e2 20406930 call adc_bat_percent_lowpower_out 
+43e3 6800c231 fetch 1 ,mem_adc_power_flag 
+43e4 c280c4a0 bbit1 1 ,mouse_power_down 
+43e5 c30043e9 bbit0 0 ,mouse_adc_no_low_voltage 
+43e6 202043e7 branch mouse_adc_low_voltage 
+
+mouse_adc_low_voltage:
+43e7 d8e00004 arg mouse_low_voltage_flag ,queue 
+43e8 202043ce branch mouse_enable_function_flag 
+
+mouse_adc_no_low_voltage:
+43e9 d8e00004 arg mouse_low_voltage_flag ,queue 
+43ea 202043d2 branch mouse_disable_function_flag 
+
+mouse_low_voltage_led_timer:
+43eb 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+43ec c4020000 rtnbit0 mouse_low_voltage_flag 
+43ed 6800c6ef fetch 1 ,mem_config_low_voltage_alarm_gpio 
+43ee 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+43ef 6800c6cf fetch 1 ,mem_adc_low_volatage_led_timer_count 
+43f0 1fe0fe01 pincrease 1 
+43f1 6000c6cf store 1 ,mem_adc_low_volatage_led_timer_count 
+43f2 1fe67c14 sub pdata ,20 ,null 
+43f3 244143f9 ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
+43f4 c00143fb beq 2 ,mouse_low_voltage_led_on 
+43f5 c00243fe beq 4 ,mouse_low_voltage_led_off 
+43f6 c00343fb beq 6 ,mouse_low_voltage_led_on 
+43f7 c00443fe beq 8 ,mouse_low_voltage_led_off 
+43f8 20600000 rtn 
+
+mouse_adc_low_volatage_led_timer_count_clean:
+43f9 7046cf01 jam 1 ,mem_adc_low_volatage_led_timer_count 
+43fa 202043fe branch mouse_low_voltage_led_off 
+
+mouse_low_voltage_led_on:
+43fb da200000 arg 0 ,rega 
+43fc 70471302 jam ui_led_state_lighting ,mem_mouse_led_type 
+43fd 20207d14 branch ui_led_on_global 
+
+mouse_low_voltage_led_off:
+43fe da200000 arg 0 ,rega 
+43ff 70471302 jam ui_led_state_lighting ,mem_mouse_led_type 
+4400 20207d19 branch ui_led_off_global 
+
+mouse_g24_package_data:
+4401 20403f97 call mouse_motion 
+4402 24740000 nrtn user 
+4403 da200007 arg 7 ,rega 
+4404 da40469a arg mem_mouse_key ,regb 
+4405 20600000 rtn 
+
+mouse_g24_enter_lpm:
+4406 6800c78b fetch 1 ,mem_mouse_24g_enter_lpm_enable 
+4407 207a0000 rtn blank 
+4408 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+4409 2040681d call gpio_get_bit 
+440a 2040c410 call mouse_24g_dpi_delay_init ,true 
+440b 6800c704 fetch 1 ,mem_24g_enter_lpm_timer 
+440c 247a0000 nrtn blank 
+440d 20404083 call mouse_check_key_gpio 
+440e 247a0000 nrtn blank 
+440f 20202d83 branch g24_lpm_long_sleep 
+
+mouse_24g_dpi_delay_init:
+4410 6800c6e7 fetch 1 ,mem_dpi_button_gpio 
+4411 c17f8000 rtneq ui_button_gpio_disable 
+4412 7047040a jam 10 ,mem_24g_enter_lpm_timer 
+4413 20600000 rtn 
+
+mouse_load_flash_info_cheak:
+4414 20404423 call mouse_load_flash_flag 
+4415 68014778 fetch 2 ,mem_store_flag 
+4416 d840aa55 arg eeprom_init_flag ,temp 
+4417 98467c00 isub temp ,null 
+4418 2022c42b branch mouse_load_flash_device_info ,zero 
+4419 60094778 storet 2 ,mem_store_flag 
+441a 2040441c call mouse_ble_init_address 
+441b 20204435 branch mouse_store_flash_device_info 
+
+mouse_ble_init_address:
+441c 680344a0 fetch 6 ,mem_le_lap 
+441d 60034738 store 6 ,mem_device1_locall_addr 
+441e 1fe0ff00 add pdata ,0x0100 ,pdata 
+441f 60034755 store 6 ,mem_device2_locall_addr 
+4420 1fe0ff00 add pdata ,0x0100 ,pdata 
+4421 60034772 store 6 ,mem_device3_locall_addr 
+4422 20600000 rtn 
+
+mouse_load_flash_flag:
+4423 58004778 setarg mem_store_flag 
+4424 d8404720 arg mem_mouse_information_start ,temp 
+4425 98460400 isub temp ,temp 
+4426 6801c700 fetch 3 ,mem_flash_base 
+4427 9840fe00 iadd temp ,pdata 
+4428 d8400002 arg 2 ,temp 
+4429 da204778 arg mem_store_flag ,rega 
+442a 20206562 branch spid_read_flash 
+
+mouse_load_flash_device_info:
+442b 5800477f setarg mem_mouse_information_end 
+442c d8404720 arg mem_mouse_information_start ,temp 
+442d 98460400 isub temp ,temp 
+442e 6801c700 fetch 3 ,mem_flash_base 
+442f da204720 arg mem_mouse_information_start ,rega 
+4430 20406562 call spid_read_flash 
+4431 2040431a call mouse_select_reconn_device 
+4432 6802477b fetch 4 ,mem_mouse_24g_addr 
+4433 20402c7a call g24_head_ptr2regc 
+4434 2020322c branch g24_store_mem_addr 
+
+mouse_store_flash_device_info:
+4435 5800477f setarg mem_mouse_information_end 
+4436 d8404720 arg mem_mouse_information_start ,temp 
+4437 98460400 isub temp ,temp 
+4438 da204720 arg mem_mouse_information_start ,rega 
+4439 6801c700 fetch 3 ,mem_flash_base 
+443a 20206514 branch flash_write 
+
+mouse_store_eerpom_dpi:
+443b d8400001 arg 1 ,temp 
+443c da20477a arg mem_mouse_dpi ,rega 
+443d da40005a arg mouse_dpi_eeprom_offect ,regb 
+443e 202065d1 branch iicd_write_protect_eep_data 
+
+mouse_load_eeprom_dpi:
+443f d8400001 arg 1 ,temp 
+4440 da20477a arg mem_mouse_dpi ,rega 
+4441 da40005a arg mouse_dpi_eeprom_offect ,regb 
+4442 202065df branch iicd_read_eep_data 
+
+mouse_statue_cheak_timer:
+4443 c6130000 rtnmark1 mark_24g 
+4444 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+4445 c40b0000 rtnbit0 mouse_enable_statue_up 
+4446 6800c705 fetch 1 ,mem_mouse_1step_up_count 
+4447 1fe0fe01 pincrease 1 
+4448 1fe17e07 and pdata ,0x07 ,pdata 
+4449 6000c705 store 1 ,mem_mouse_1step_up_count 
+444a c1838000 rtnne 0x07 
+444b 68014682 fetch 2 ,mem_ui_state_map 
+444c c280444f bbit1 ui_state_bt_connected ,mouse_check_statue_up 
+444d c284c44f bbit1 ui_state_ble_connected ,mouse_check_statue_up 
+444e 20600000 rtn 
+
+mouse_check_statue_up:
+444f 44f7401d bpatch patch1d_6 ,mem_patch1d 
+4450 6800c706 fetch 1 ,mem_mouse_2step_up_count 
+4451 247a0000 nrtn blank 
+4452 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+4453 c4040000 rtnbit0 mouse_statue_up_flag 
+4454 6800c6a5 fetch 1 ,mem_sensor_squal_reg 
+4455 204063fb call sensor_read 
+4456 6000c6a6 store 1 ,mem_sensor_iqc 
+4457 1fe67c10 sub pdata ,0x10 ,null 
+4458 2021445b branch mouse_statue_up_timer_init ,positive 
+4459 70470600 jam 0 ,mem_mouse_2step_up_count 
+445a 20600000 rtn 
+
+mouse_statue_up_timer_init:
+445b 7047061e jam 30 ,mem_mouse_2step_up_count 
+445c 20600000 rtn 
+
+mouse_statue_up_timer:
+445d da604706 arg mem_mouse_2step_up_count ,regc 
+445e da404460 arg mouse_statue_up ,regb 
+445f 2020336d branch timer_single_step 
+
+mouse_statue_up:
+4460 6800c6a5 fetch 1 ,mem_sensor_squal_reg 
+4461 20406414 call twspi_read 
+4462 1fe67c10 sub pdata ,0x10 ,null 
+4463 24610000 nrtn positive 
+4464 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+4465 c4040000 rtnbit0 mouse_statue_up_flag 
+4466 d8e00008 arg mouse_statue_up_flag ,queue 
+4467 204043d2 call mouse_disable_function_flag 
+4468 70417200 jam 0 ,mem_lpm_mult 
+4469 7046c41e jam 30 ,mem_mouse_statue_led_timer 
+446a 20404482 call mouse_devce_led_off 
+446b 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+446c c28ac471 bbit1 mouse_enable_statue_up_three_led ,mouse_three_device_statue_up 
+
+mouse_two_device_statue_up:
+446d 6800c720 fetch 1 ,mem_device_flag 
+446e c000c489 beq mode_bt_device1 ,mouse_device1_led_on 
+446f c0014476 beq mode_bt_device2 ,mouse_device_blink_led_init 
+4470 20600000 rtn 
+
+mouse_three_device_statue_up:
+4471 6800c720 fetch 1 ,mem_device_flag 
+4472 c000c489 beq mode_bt_device1 ,mouse_device1_led_on 
+4473 c001448c beq mode_bt_device2 ,mouse_device2_led_on 
+4474 c001c48f beq mode_bt_device3 ,mouse_device3_led_on 
+4475 20600000 rtn 
+
+mouse_device_blink_led_init:
+4476 6800c6f0 fetch 1 ,mem_config_device1_led_gpio 
+4477 2020428f branch mouse_led_blink 
+
+mouse_statue_led_off:
+4478 70417220 jam 0x20 ,mem_lpm_mult 
+4479 20204482 branch mouse_devce_led_off 
+
+mouse_devce1_led_off:
+447a 6800c6f0 fetch 1 ,mem_config_device1_led_gpio 
+447b c17f8000 rtneq gpio_disable 
+447c 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+447d 20204296 branch mouse_led_off 
+
+mouse_devce2_led_off:
+447e 6800c6f1 fetch 1 ,mem_config_device2_led_gpio 
+447f c17f8000 rtneq gpio_disable 
+4480 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+4481 20204296 branch mouse_led_off 
+
+mouse_devce_led_off:
+4482 20404296 call mouse_led_off 
+4483 2040447a call mouse_devce1_led_off 
+4484 2040447e call mouse_devce2_led_off 
+
+mouse_devce3_led_off:
+4485 6800c6f2 fetch 1 ,mem_config_device3_led_gpio 
+4486 c17f8000 rtneq gpio_disable 
+4487 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+4488 20204296 branch mouse_led_off 
+
+mouse_device1_led_on:
+4489 6800c6f0 fetch 1 ,mem_config_device1_led_gpio 
+448a 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+448b 20204298 branch mouse_led_on 
+
+mouse_device2_led_on:
+448c 6800c6f1 fetch 1 ,mem_config_device2_led_gpio 
+448d 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+448e 20204298 branch mouse_led_on 
+
+mouse_device3_led_on:
+448f 6800c6f2 fetch 1 ,mem_config_device3_led_gpio 
+4490 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+4491 20204298 branch mouse_led_on 
+
+mouse_polling_device:
+4492 44f7c01d bpatch patch1d_7 ,mem_patch1d 
+4493 6800c71e fetch 1 ,mem_reconn_times 
+4494 1fe0ffff increase -1 ,pdata 
+4495 6000c71e store 1 ,mem_reconn_times 
+4496 6808c720 fetcht 1 ,mem_device_flag 
+4497 18408401 increase 1 ,temp 
+4498 6800c6d2 fetch 1 ,mem_device_number 
+4499 98467c00 isub temp ,null 
+449a 244143cc ncall mouse_select_device_count_clean ,positive 
+449b 6008c720 storet 1 ,mem_device_flag 
+449c 7041bd00 jam 0 ,mem_link_key_exists 
+449d 2040437a call mouse_store_device_number2eeprom 
+449e 204042fb call mouse_before_store_reconn_info 
+449f 202042a2 branch mouse_check_reconn_target 
+
+mouse_power_down:
+44a0 20404482 call mouse_devce_led_off 
+44a1 58000000 setarg 0 
+44a2 600400a1 store 8 ,mem_gpio_wakeup_low 
+44a3 20202b1f branch lpm_hibernate 
+
+remote_car_init:
+44a4 20758000 rtn wake 
+44a5 68108081 hfetch 1 ,core_gpio_sel1 
+44a6 1fe17ef0 and_into 0xf0 ,pdata 
+44a7 60108081 hstore 1 ,core_gpio_sel1 
+44a8 20406948 call keyscan_key_init 
+44a9 580044e6 setarg remote_car_le_before_hibernate 
+44aa 600141eb store 2 ,mem_cb_before_hibernate 
+44ab 580044e9 setarg remote_car_process_lpm_before 
+44ac 600141ed store 2 ,mem_cb_before_lpm 
+44ad 580044ef setarg remote_car_scale_process_idle 
+44ae 600141f3 store 2 ,mem_cb_idle_process 
+44af 580044f2 setarg remote_car_scale_process_bb_event 
+44b0 600141f5 store 2 ,mem_cb_bb_event_process 
+44b1 580033d0 setarg app_get_lpm_wake_lock 
+44b2 600141e9 store 2 ,mem_cb_check_wakelock 
+44b3 20402c7a call g24_head_ptr2regc 
+44b4 580045c2 setarg remote_car_g24_package_data 
+44b5 1a608ad8 add regc ,offset_24g_cb_data ,contw 
+44b6 e0a10000 istore 2 ,contw 
+44b7 580044ea setarg remote_car_g24_enter_lpm 
+44b8 1a608ada add regc ,offset_24g_cb_lpm_prepare ,contw 
+44b9 e0a10000 istore 2 ,contw 
+44ba 580044e9 setarg remote_car_process_lpm_before 
+44bb 1a608adc add regc ,offset_24g_cb_lpm_before ,contw 
+44bc e0a10000 istore 2 ,contw 
+44bd 5800450e setarg remote_car_event_timer 
+44be 600141fd store 2 ,mem_cb_event_timer 
+44bf 580044da setarg remote_car_power_off_signal 
+44c0 6001475b store 2 ,mem_remote_car_power_off_cb 
+44c1 580044d6 setarg remote_car_soft_switch_power_on_signal 
+44c2 6001475f store 2 ,mem_remote_car_power_standby_cb 
+44c3 58004560 setarg remote_car_send_key_data 
+44c4 6001470f store 2 ,mem_cb_remote_car_keyscan 
+44c5 44f8401e bpatch patch1e_0 ,mem_patch1e 
+44c6 204044e2 call remote_car_init_environment 
+44c7 20407e38 call queue_init 
+44c8 70417202 jam 2 ,mem_lpm_mult 
+44c9 6800c72b fetch 1 ,mem_remote_car_config_soft_switch_enable 
+44ca 6000c69a store 1 ,mem_remote_car_hard_soft_switch 
+44cb c00044d5 beq hard_switch ,remote_car_hard_switch_power_on_signal 
+44cc 6800c72c fetch 1 ,mem_remote_car_config_soft_switch_gpio 
+44cd 6000c686 store 1 ,mem_ui_button_gpio 
+
+remote_car_soft_switch_power_on_init:
+44ce 204044db call remote_car_ui_led_init 
+44cf 20407cd3 call ui_button_init 
+44d0 20407cdd call ui_button_polling 
+44d1 70475701 jam power_starting ,mem_remote_car_power_state 
+44d2 68014682 fetch 2 ,mem_ui_state_map 
+44d3 c3860000 rtnbit1 ui_state_btn_down 
+44d4 2020340a branch app_enter_hibernate 
+
+remote_car_hard_switch_power_on_signal:
+44d5 70475702 jam power_standby ,mem_remote_car_power_state 
+
+remote_car_soft_switch_power_on_signal:
+44d6 204044db call remote_car_ui_led_init 
+44d7 da200000 arg 0 ,rega 
+44d8 20407d1e call ui_led_blink_start_global 
+
+remote_car_connect_24g_mode:
+44d9 20202ee4 branch g24_auto_pair_start 
+
+remote_car_power_off_signal:
+44da 202044db branch remote_car_ui_led_init 
+
+remote_car_ui_led_init:
+44db 44f8c01e bpatch patch1e_1 ,mem_patch1e 
+44dc 6800c729 fetch 1 ,mem_remote_car_config_connect_led_gpio 
+44dd c0ffc4e0 bne invalid_pin_num ,remote_car_pairing_led_gpio_set 
+
+remote_car_ui_led_init_1:
+44de 6808c706 fetcht 1 ,mem_remote_car_led_map 
+44df 2020680e branch gpio_config_output 
+
+remote_car_pairing_led_gpio_set:
+44e0 6000c706 store 1 ,mem_remote_car_led_map 
+44e1 202044de branch remote_car_ui_led_init_1 
+
+remote_car_init_environment:
+44e2 20402c9d call g24_set_device_addr 
+44e3 68014753 fetch 2 ,mem_remote_car_no_data_timeout 
+44e4 60014755 store 2 ,mem_remote_car_no_data_timer 
+44e5 20204515 branch remote_car_get_adc_default_data 
+
+remote_car_le_before_hibernate:
+
+remote_car_in_enter_hibernate:
+44e6 20406835 call gpio_set_before_lpm_common 
+44e7 204044e9 call remote_car_process_lpm_before 
+44e8 2020340a branch app_enter_hibernate 
+
+remote_car_process_lpm_before:
+44e9 2020696c branch keyscan_process_lpm_before 
+
+remote_car_g24_enter_lpm:
+44ea 6800c765 fetch 1 ,mem_remote_car_24g_enter_lpm_enable 
+44eb 207a0000 rtn blank 
+44ec 20202d83 branch g24_lpm_long_sleep 
+
+remote_car_process_auto_pair_exit:
+44ed 20600000 rtn 
+
+remote_car_key_scan_process:
+44ee 20206978 branch keyscan_key_process 
+
+remote_car_scale_process_idle:
+44ef 20404544 call remote_car_rocker_process 
+44f0 20404503 call remote_car_24g_status_process 
+44f1 202044ee branch remote_car_key_scan_process 
+
+remote_car_scale_process_bb_event:
+44f2 1a627e00 copy regc ,pdata 
+44f3 c016b431 beq bt_evt_button_up ,app_event_button_up 
+44f4 c008341a beq bt_evt_button_long_pressed ,app_button_long_pressed 
+44f5 c01cc4fb beq bt_evt_24g_pairing_complete ,remote_car_24g_pairing_complete 
+44f6 c01e44ff beq bt_evt_24g_attempt_success ,remote_car_24g_attempt_success 
+44f7 c01d44f9 beq bt_evt_24g_attempt_fail ,remote_car_24g_attempt_fail 
+44f8 20600000 rtn 
+
+remote_car_24g_attempt_fail:
+44f9 70476501 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+44fa 20600000 rtn 
+
+remote_car_24g_pairing_complete:
+44fb 70476501 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+44fc 70476301 jam work_paired ,mem_remote_car_24g_auto_work_step 
+44fd 70476401 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+44fe 20600000 rtn 
+
+remote_car_24g_attempt_success:
+44ff 70476501 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+4500 70476301 jam work_paired ,mem_remote_car_24g_auto_work_step 
+4501 70476401 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+4502 20600000 rtn 
+
+remote_car_24g_status_process:
+4503 6800c763 fetch 1 ,mem_remote_car_24g_auto_work_step 
+4504 c1000000 rtneq power_on 
+4505 6800c762 fetch 1 ,mem_remote_car_24g_status 
+4506 c1008000 rtneq work_paired 
+4507 70476201 jam work_paired ,mem_remote_car_24g_status 
+
+remote_car_scale_process_paired:
+4508 da200000 arg 0 ,rega 
+4509 20207d19 branch ui_led_off_global 
+
+remote_car_scale_process_shutdown:
+450a da200000 arg 0 ,rega 
+450b 20407d19 call ui_led_off_global 
+450c 204044db call remote_car_ui_led_init 
+450d 2020340a branch app_enter_hibernate 
+
+remote_car_event_timer:
+450e 2040337b call app_power_timer 
+450f 20204510 branch remote_car_no_data_timer 
+
+remote_car_no_data_timer:
+4510 6800c72d fetch 1 ,mem_remote_car_config_timeout_shutdown_enable 
+4511 207a0000 rtn blank 
+4512 da604755 arg mem_remote_car_no_data_timer ,regc 
+4513 da40450a arg remote_car_scale_process_shutdown ,regb 
+4514 20203374 branch timer_single_step_2b 
+
+remote_car_get_adc_default_data:
+4515 2040451a call remote_car_rocker_get_x 
+4516 6009471a storet 2 ,mem_current_vdd_value_default_mid_x 
+4517 2040451f call remote_car_rocker_get_y 
+4518 6009471c storet 2 ,mem_current_vdd_value_default_mid_y 
+4519 20600000 rtn 
+
+remote_car_rocker_data_get:
+
+remote_car_rocker_get_x:
+451a 6801471a fetch 2 ,mem_current_vdd_value_default_mid_x 
+451b 6001471e store 2 ,mem_current_vdd_value_default_mid_temp 
+451c 20404540 call remote_car_get_adc_from_gpio6 
+451d 20404525 call remote_car_rocker_get_value 
+451e 6000c724 store 1 ,mem_rocker_status 
+
+remote_car_rocker_get_y:
+451f 6801471c fetch 2 ,mem_current_vdd_value_default_mid_y 
+4520 6001471e store 2 ,mem_current_vdd_value_default_mid_temp 
+4521 20404542 call remote_car_get_adc_from_gpio7 
+4522 20404525 call remote_car_rocker_get_value 
+4523 6000c725 store 1 ,mem_rocker_status + 1 
+4524 20600000 rtn 
+
+remote_car_rocker_get_value:
+4525 68014720 fetch 2 ,mem_current_vdd_default_range 
+4526 1fe22200 copy pdata ,rega 
+4527 6801471e fetch 2 ,mem_current_vdd_value_default_mid_temp 
+4528 2040452e call remote_car_rocker_mid_value_adjust 
+4529 6800c719 fetch 1 ,mem_rocker_work_status 
+452a 243a4537 nbranch remote_car_rocker_translate_key ,blank 
+452b 24610000 nrtn positive 
+452c 6809471e fetcht 2 ,mem_current_vdd_value_default_mid_temp 
+452d 20600000 rtn 
+
+remote_car_rocker_mid_value_adjust:
+452e 98467e00 isub temp ,pdata 
+452f 20214534 branch remote_car_rocker_mid_adjust_positive ,positive 
+4530 1fe67e00 sub pdata ,0 ,pdata 
+4531 70471801 jam 1 ,mem_rocker_negative_flag 
+4532 9a267c00 isub rega ,null 
+4533 20600000 rtn 
+
+remote_car_rocker_mid_adjust_positive:
+4534 70471800 jam 0 ,mem_rocker_negative_flag 
+4535 9a267c00 isub rega ,null 
+4536 20600000 rtn 
+
+remote_car_rocker_translate_key:
+4537 2421453e nbranch remote_car_rocker_middle_key ,positive 
+4538 6800c718 fetch 1 ,mem_rocker_negative_flag 
+4539 243a453c nbranch remote_car_rocker_negative_key ,blank 
+
+remote_car_rocker_positive_key:
+453a 58000001 setarg rocker_positive_key 
+453b 20600000 rtn 
+
+remote_car_rocker_negative_key:
+453c 58000002 setarg rocker_negative_key 
+453d 20600000 rtn 
+
+remote_car_rocker_middle_key:
+453e 58000000 setarg rocker_middle_key 
+453f 20600000 rtn 
+
+remote_car_get_adc_from_gpio6:
+4540 70422e33 jam 0x33 ,mem_adc_channel 
+4541 202068eb branch adc_set_mode 
+
+remote_car_get_adc_from_gpio7:
+4542 70422e34 jam 0x34 ,mem_adc_channel 
+4543 202068eb branch adc_set_mode 
+
+remote_car_rocker_process:
+4544 6800c72a fetch 1 ,mem_remote_car_config_check_way 
+4545 c1808000 rtnne car_remote_check_rocker 
+
+remote_car_read_rocker_check_start:
+4546 44f9401e bpatch patch1e_2 ,mem_patch1e 
+4547 70471901 jam 1 ,mem_rocker_work_status 
+4548 2040451a call remote_car_rocker_data_get 
+4549 68014724 fetch 2 ,mem_rocker_status 
+454a 68094722 fetcht 2 ,mem_rocker_last_status 
+454b 98467c00 isub temp ,null 
+454c 20628000 rtn zero 
+454d 60014722 store 2 ,mem_rocker_last_status 
+454e 20404550 call remote_car_rocker_x_to_key 
+454f 20204554 branch remote_car_rocker_y_to_key 
+
+remote_car_rocker_x_to_key:
+4550 6800c724 fetch 1 ,mem_rocker_x_status 
+4551 203a455a branch rocker_to_queue_set_0 ,blank 
+4552 1fe0ffff increase -1 ,pdata 
+4553 20204557 branch remote_car_rocker_to_key 
+
+remote_car_rocker_y_to_key:
+4554 6800c725 fetch 1 ,mem_rocker_y_status 
+4555 203a455d branch rocker_to_queue_set_2 ,blank 
+4556 1fe0fe01 increase 1 ,pdata 
+
+remote_car_rocker_to_key:
+4557 1fe20e00 copy pdata ,queue 
+4558 da200001 arg 1 ,rega 
+4559 20204560 branch remote_car_send_key_data 
+
+rocker_to_queue_set_0:
+455a d8e00000 arg 0 ,queue 
+455b da200000 arg 0 ,rega 
+455c 20204560 branch remote_car_send_key_data 
+
+rocker_to_queue_set_2:
+455d d8e00002 arg 2 ,queue 
+455e da200000 arg 0 ,rega 
+455f 20204560 branch remote_car_send_key_data 
+
+remote_car_send_key_data:
+4560 1a227e00 copy rega ,pdata 
+4561 6000c761 store 1 ,mem_remote_key_status 
+4562 6800c763 fetch 1 ,mem_remote_car_24g_auto_work_step 
+4563 c0002ee4 beq power_on ,g24_auto_pair_start 
+4564 68014753 fetch 2 ,mem_remote_car_no_data_timeout 
+4565 60014755 store 2 ,mem_remote_car_no_data_timer 
+4566 6800c761 fetch 1 ,mem_remote_key_status 
+4567 203a4580 branch remote_car_key_is_release ,blank 
+
+remote_car_key_is_press:
+4568 44f9c01e bpatch patch1e_3 ,mem_patch1e 
+4569 da200000 arg 0 ,rega 
+456a 20407d14 call ui_led_on_global 
+
+remote_car_attack_key_press:
+456b 18e27e00 copy queue ,pdata 
+456c c00245a3 beq 4 ,remote_car_send_attack_key4_press 
+456d c002c5a5 beq 5 ,remote_car_send_attack_key5_press 
+456e c00345a7 beq 6 ,remote_car_send_fire_key6_press 
+
+remote_car_motor_key_press:
+456f 2040458b call remote_car_device_layout_select 
+4570 c0004574 beq control_f_b_ten ,remote_car_single_motor_key_is_press 
+4571 c001457a beq control_l_r_ten ,remote_car_double_motor_key_press 
+4572 c001c574 beq control_l_r_lr ,remote_car_single_motor_key_is_press 
+4573 20600000 rtn 
+
+remote_car_single_motor_key_is_press:
+4574 18e27e00 copy queue ,pdata 
+4575 c000458f beq 0 ,remote_car_send_motor1_key0_press 
+4576 c000c591 beq 1 ,remote_car_send_motor1_key1_press 
+4577 c0014593 beq 2 ,remote_car_send_motor2_key2_press 
+4578 c001c595 beq 3 ,remote_car_send_motor2_key3_press 
+4579 20600000 rtn 
+
+remote_car_double_motor_key_press:
+457a 18e27e00 copy queue ,pdata 
+457b c0004597 beq 0 ,remote_car_send_double_motor_key0_press 
+457c c000c59a beq 1 ,remote_car_send_double_motor_key1_press 
+457d c001459d beq 2 ,remote_car_send_double_motor_key2_press 
+457e c001c5a0 beq 3 ,remote_car_send_double_motor_key3_press 
+457f 20600000 rtn 
+
+remote_car_key_is_release:
+4580 44fa401e bpatch patch1e_4 ,mem_patch1e 
+4581 da200000 arg 0 ,rega 
+4582 20407d19 call ui_led_off_global 
+
+remote_car_attack_key_release:
+4583 18e27e00 copy queue ,pdata 
+4584 c00245bc beq 4 ,remote_car_send_attack_key4_rel 
+4585 c002c5bc beq 5 ,remote_car_send_attack_key5_rel 
+
+remote_car_motor_key_release:
+4586 2040458b call remote_car_device_layout_select 
+4587 c00045a9 beq control_f_b_ten ,remote_car_single_motor_key_rel 
+4588 c00145af beq control_l_r_ten ,remote_car_double_motor_key_rel 
+4589 c001c5a9 beq control_l_r_lr ,remote_car_single_motor_key_rel 
+458a 20600000 rtn 
+
+remote_car_device_layout_select:
+458b 6800c728 fetch 1 ,mem_remote_car_config_layout 
+458c 6808c727 fetcht 1 ,mem_remote_car_config_key_map 
+458d 9841fe00 ior temp ,pdata 
+458e 20600000 rtn 
+
+remote_car_send_motor1_key0_press:
+458f 70473401 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+4590 202045be branch remote_car_send_key 
+
+remote_car_send_motor1_key1_press:
+4591 70473402 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+4592 202045be branch remote_car_send_key 
+
+remote_car_send_motor2_key2_press:
+4593 70473601 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+4594 202045be branch remote_car_send_key 
+
+remote_car_send_motor2_key3_press:
+4595 70473602 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+4596 202045be branch remote_car_send_key 
+
+remote_car_send_double_motor_key0_press:
+4597 70473401 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+4598 70473601 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+4599 202045be branch remote_car_send_key 
+
+remote_car_send_double_motor_key1_press:
+459a 70473402 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+459b 70473602 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+459c 202045be branch remote_car_send_key 
+
+remote_car_send_double_motor_key2_press:
+459d 70473402 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+459e 70473601 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+459f 202045be branch remote_car_send_key 
+
+remote_car_send_double_motor_key3_press:
+45a0 70473401 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+45a1 70473602 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+45a2 202045be branch remote_car_send_key 
+
+remote_car_send_attack_key4_press:
+45a3 70473801 jam motor_positive ,mem_remote_car_24g_motor3_payload 
+45a4 202045be branch remote_car_send_key 
+
+remote_car_send_attack_key5_press:
+45a5 70473802 jam motor_negative ,mem_remote_car_24g_motor3_payload 
+45a6 202045be branch remote_car_send_key 
+
+remote_car_send_fire_key6_press:
+45a7 70474101 jam 0x01 ,mem_remote_car_24g_fire_send_payload 
+45a8 202045c0 branch remote_car_send_attack 
+
+remote_car_single_motor_key_rel:
+45a9 18e27e00 copy queue ,pdata 
+45aa c00045b5 beq 0 ,remote_car_send_motor1_key0_rel 
+45ab c000c5b5 beq 1 ,remote_car_send_motor1_key1_rel 
+45ac c00145b7 beq 2 ,remote_car_send_motor2_key2_rel 
+45ad c001c5b7 beq 3 ,remote_car_send_motor2_key3_rel 
+45ae 20600000 rtn 
+
+remote_car_double_motor_key_rel:
+45af 18e27e00 copy queue ,pdata 
+45b0 c00045b9 beq 0 ,remote_car_send_double_motor_key0_rel 
+45b1 c000c5b9 beq 1 ,remote_car_send_double_motor_key1_rel 
+45b2 c00145b9 beq 2 ,remote_car_send_double_motor_key2_rel 
+45b3 c001c5b9 beq 3 ,remote_car_send_double_motor_key3_rel 
+45b4 20600000 rtn 
+
+remote_car_send_motor1_key0_rel:
+
+remote_car_send_motor1_key1_rel:
+45b5 70473400 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+45b6 202045be branch remote_car_send_key 
+
+remote_car_send_motor2_key2_rel:
+
+remote_car_send_motor2_key3_rel:
+45b7 70473600 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+45b8 202045be branch remote_car_send_key 
+
+remote_car_send_double_motor_key0_rel:
+
+remote_car_send_double_motor_key1_rel:
+
+remote_car_send_double_motor_key2_rel:
+
+remote_car_send_double_motor_key3_rel:
+45b9 70473400 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+45ba 70473600 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+45bb 202045be branch remote_car_send_key 
+
+remote_car_send_attack_key4_rel:
+
+remote_car_send_attack_key5_rel:
+45bc 70473800 jam motor_stop ,mem_remote_car_24g_motor3_payload 
+45bd 202045be branch remote_car_send_key 
+
+remote_car_send_key:
+45be da20472e arg mem_remote_car_24g_motor_packet ,rega 
+45bf 20207e3d branch queue_push 
+
+remote_car_send_attack:
+45c0 da20473b arg mem_remote_car_24g_fire_packet ,rega 
+45c1 20207e3d branch queue_push 
+
+remote_car_g24_package_data:
+45c2 6800c764 fetch 1 ,mem_remote_car_24g_pair_success_flag 
+45c3 c000c5cc beq work_paired ,remote_car_g24_send_empty 
+45c4 da204744 arg mem_remote_car_24g_tx_temp ,rega 
+45c5 20407e54 call queue_pop 
+45c6 243445d1 nbranch remote_car_moto_data ,user 
+
+remote_car_g24_package_data_continue:
+45c7 d8c04744 arg mem_remote_car_24g_tx_temp ,contr 
+45c8 e8c08000 ifetch 1 ,contr 
+45c9 1fe22200 copy pdata ,rega 
+45ca da404745 arg mem_remote_car_24g_tx_temp + 1 ,regb 
+45cb 20600000 rtn 
+
+remote_car_g24_send_empty:
+45cc 70476400 jam 0 ,mem_remote_car_24g_pair_success_flag 
+45cd 78347c00 enable user 
+45ce da200001 arg 1 ,rega 
+45cf da404766 arg mem_remote_car_empty_packet ,regb 
+45d0 20600000 rtn 
+
+remote_car_moto_data:
+45d1 6800c747 fetch 1 ,mem_remote_car_24g_tx_temp + 3 
+45d2 c00245d5 beq car_cmd_l_r_motor_control ,remote_car_moto_data_next 
+45d3 c002c5d5 beq car_cmd_f_b_motor_control ,remote_car_moto_data_next 
+45d4 20600000 rtn 
+
+remote_car_moto_data_next:
+45d5 6800c74a fetch 1 ,mem_remote_car_24g_tx_temp + 6 
+45d6 243a45dc nbranch remote_car_moto_data_enable_user ,blank 
+45d7 6800c74c fetch 1 ,mem_remote_car_24g_tx_temp + 8 
+45d8 243a45dc nbranch remote_car_moto_data_enable_user ,blank 
+45d9 6800c74e fetch 1 ,mem_remote_car_24g_tx_temp + 10 
+45da 243a45dc nbranch remote_car_moto_data_enable_user ,blank 
+45db 20600000 rtn 
+
+remote_car_moto_data_enable_user:
+45dc 78347c00 enable user 
+45dd 202045c7 branch remote_car_g24_package_data_continue 
+
+shutter_init:
+45de 20758000 rtn wake 
+45df 68108081 hfetch 1 ,core_gpio_sel1 
+45e0 1fe17efc and_into 0xfc ,pdata 
+45e1 60108081 hstore 1 ,core_gpio_sel1 
+45e2 580046b4 setarg shutter_le_before_hibernate 
+45e3 600141eb store 2 ,mem_cb_before_hibernate 
+45e4 580046b3 setarg shutter_process_lpm_before 
+45e5 600141ed store 2 ,mem_cb_before_lpm 
+45e6 5800340a setarg app_enter_hibernate 
+45e7 600141f7 store 2 ,mem_cb_discovry_timeout 
+45e8 580046b1 setarg shutter_process_idle 
+45e9 600141f3 store 2 ,mem_cb_idle_process 
+45ea 58004612 setarg shutter_process_bb_event 
+45eb 600141f5 store 2 ,mem_cb_bb_event_process 
+45ec 5800460c setarg shutter_le_scale_lpm_lock 
+45ed 600141e9 store 2 ,mem_cb_check_wakelock 
+45ee 5800476a setarg ble_shutter_receive_data 
+45ef 600141f9 store 2 ,mem_cb_att_write 
+45f0 58004686 setarg shutter_le_bb_event_timer 
+45f1 600141fd store 2 ,mem_cb_event_timer 
+45f2 58004729 setarg shutter_key_change 
+45f3 600146e7 store 2 ,mem_cb_shutter_keycan 
+45f4 58004806 setarg shutter_soft_swtich_power_on 
+45f5 600146e2 store 2 ,mem_shutter_soft_switch_poweron_callback_function 
+45f6 58004807 setarg shutter_soft_swtich_power_off 
+45f7 600146e4 store 2 ,mem_shutter_soft_switch_poweroff_callback_function 
+45f8 204057a3 call le_modified_name 
+45f9 204047da call shutter_load_bluetooth_config_by_user_config 
+45fa 20404788 call shutter_init_bluetooth_config 
+45fb 2040476d call shutter_init_param 
+45fc 20406948 call keyscan_key_init 
+45fd 2040477a call shutter_load_buffer_config_form_datarom 
+45fe 20407e38 call queue_init 
+45ff 20407d08 call ui_led_init_global 
+4600 20404793 call shutter_load_bluetooth_config 
+4601 204047c7 call shutter_load_bluetooth_config_by_eeprom 
+4602 44fac01e bpatch patch1e_5 ,mem_patch1e 
+4603 2040464f call classic_shutter_load_reconn_info 
+4604 6800c6dd fetch 1 ,mem_shutter_hard_soft_switch_case 
+4605 c0004609 beq hard_switch ,shutter_hart_swtich_power_on 
+4606 6800c6de fetch 1 ,mem_shutter_soft_switch_button_gpio 
+4607 6000c686 store 1 ,mem_ui_button_gpio 
+4608 2020480e branch ui_soft_swtich_init 
+
+shutter_hart_swtich_power_on:
+4609 704686ff jam ui_button_gpio_disable ,mem_ui_button_gpio 
+460a 7046df01 jam ss_state_power_on ,mem_shutter_soft_switch_power_state 
+460b 202046d9 branch shutter_start_reconnect 
+
+shutter_le_scale_lpm_lock:
+460c 6800c6df fetch 1 ,mem_shutter_soft_switch_power_state 
+460d c00133d0 beq ss_state_power_off ,app_get_lpm_wake_lock 
+460e 2040527e call l2cap_malloc_get_full_map 
+460f 6800c256 fetch 1 ,mem_used_map 
+4610 243a33d0 nbranch app_get_lpm_wake_lock ,blank 
+4611 202033d2 branch app_put_lpm_wake_lock 
+
+shutter_process_bb_event:
+4612 1a627e00 copy regc ,pdata 
+4613 c000c626 beq bt_evt_bb_connected ,classic_shutter_process_baseband_connect 
+4614 c0014629 beq bt_evt_bb_disconnected ,classic_shutter_process_baseband_disconnect 
+4615 c0024631 beq bt_evt_reconn_failed ,classic_shutter_process_reconnect_failed 
+4616 c002c633 beq bt_evt_setup_complete ,classic_shutter_process_setup_complete 
+4617 c0034635 beq bt_evt_hid_connected ,classic_shutter_process_hid_connect 
+4618 c003c638 beq bt_evt_hid_disconnected ,classic_shutter_process_hid_disconnect 
+4619 c009463c beq bt_evt_hid_handshake ,classic_shutter_process_hid_handshake 
+461a c009c644 beq bt_evt_reconn_page_timeout ,classic_shutter_process_reconnect_page_timeout 
+461b c013c645 beq bt_evt_virtual_cable_unplug ,classic_shutter_process_virtual_cable_unplug 
+461c c0174648 beq bt_evt_remote_unsniff ,classic_shutter_process_remote_unsniff 
+461d c01ec649 beq bt_evt_store_nvram ,classic_shutter_process_store_reconnect_information 
+461e c00a4658 beq bt_evt_le_connected ,ble_shutter_process_baseband_connect 
+461f c00ac65c beq bt_evt_le_disconnected ,ble_shutter_process_baseband_disconnect 
+4620 c01fc65f beq bt_evt_le_reconnect_complete ,ble_shutter_process_reconnect_complete 
+4621 c0204665 beq bt_evt_le_parse_conn_papa_update_rsp ,ble_shutter_process_parse_connect_parameter_update_response 
+4622 c008466b beq bt_evt_button_long_pressed ,shutter_process_soft_swtich_button_long_press 
+4623 c016466c beq bt_evt_button_down ,shutter_process_soft_swtich_button_down 
+4624 c016c677 beq bt_evt_button_up ,shutter_process_soft_swtich_button_up 
+4625 20600000 rtn 
+
+classic_shutter_process_baseband_connect:
+4626 7046ad00 jam 0 ,mem_classic_shutter_hid_disconn_count 
+4627 7046ac00 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+4628 20600000 rtn 
+
+classic_shutter_process_baseband_disconnect:
+4629 2040462b call classic_shutter_disconnect_clear_flag 
+462a 20204631 branch classic_shutter_process_reconnect_failed 
+
+classic_shutter_disconnect_clear_flag:
+462b 7041e200 jam app_handshake_null ,mem_app_handshake_flag 
+462c 70468000 jam 0 ,mem_hid_handshake_timer_count 
+462d 70420500 jam 0 ,mem_unsniff2sniff_timer_count 
+462e 7046ac00 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+462f 7046ad00 jam 0 ,mem_classic_shutter_hid_disconn_count 
+4630 20207e38 branch queue_init 
+
+classic_shutter_process_reconnect_failed:
+4631 204033a9 call app_disconn_reason_clear 
+4632 202046c2 branch shutter_start_bluetooth_discovery 
+
+classic_shutter_process_setup_complete:
+4633 204046b6 call shutter_stop_bluetooth_discovery 
+4634 20203408 branch app_led_stop_blink 
+
+classic_shutter_process_hid_connect:
+4635 58000002 setarg hid_handshake_timeout 
+4636 6000c680 store 1 ,mem_hid_handshake_timer_count 
+4637 20600000 rtn 
+
+classic_shutter_process_hid_disconnect:
+4638 7046ac00 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+4639 58000001 setarg flag_shutter_hid_disconn_timeout 
+463a 6000c6ad store 1 ,mem_classic_shutter_hid_disconn_count 
+463b 20600000 rtn 
+
+classic_shutter_process_hid_handshake:
+463c 6800c1e2 fetch 1 ,mem_app_handshake_flag 
+463d c1008000 rtneq app_handshake_done 
+463e 7041e201 jam app_handshake_done ,mem_app_handshake_flag 
+463f 20403416 call app_lpm_mult_enable 
+4640 20403414 call app_store_reconn_info 
+4641 204046b6 call shutter_stop_bluetooth_discovery 
+4642 20403408 call app_led_off 
+4643 2020340e branch app_bt_enter_sniff 
+
+classic_shutter_process_reconnect_page_timeout:
+4644 20204631 branch classic_shutter_process_reconnect_failed 
+
+classic_shutter_process_virtual_cable_unplug:
+4645 58000005 setarg flag_shutter_cable_unplug_timeout 
+4646 6000c6ac store 1 ,mem_classic_shutter_cable_unplug_conut 
+4647 20600000 rtn 
+
+classic_shutter_process_remote_unsniff:
+4648 202033cd branch app_start_auto_sniff 
+
+classic_shutter_process_store_reconnect_information:
+4649 da400000 arg nvram_eeprom_offset ,regb 
+464a 6800c217 fetch 1 ,mem_nv_data_number 
+464b 1fef8422 mul32 pdata ,34 ,temp 
+464c 68014215 fetch 2 ,mem_nv_data_ptr 
+464d 1fe22200 copy pdata ,rega 
+464e 20206606 branch iicd_write_eep_data 
+
+classic_shutter_load_reconn_info:
+464f da400000 arg nvram_eeprom_offset ,regb 
+4650 6800c69a fetch 1 ,mem_shutter_bluetooth_type 
+4651 c4008000 rtnbit0 classic_shutter 
+4652 6800c217 fetch 1 ,mem_nv_data_number 
+4653 207a0000 rtn blank 
+4654 1fef8422 mul32 pdata ,34 ,temp 
+4655 68014215 fetch 2 ,mem_nv_data_ptr 
+4656 1fe22200 copy pdata ,rega 
+4657 202065df branch iicd_read_eep_data 
+
+ble_shutter_process_baseband_connect:
+4658 204046b6 call shutter_stop_bluetooth_discovery 
+4659 58000000 setarg 0 
+465a 600146b7 store 2 ,mem_ble_shutter_reconn_timer 
+465b 20203408 branch app_led_off 
+
+ble_shutter_process_baseband_disconnect:
+465c 20407e38 call queue_init 
+465d 7046b000 jam 0 ,mem_ble_shutter_enable_notify 
+465e 202046d9 branch shutter_start_reconnect 
+
+ble_shutter_process_reconnect_complete:
+465f 20407e38 call queue_init 
+4660 7046b001 jam 1 ,mem_ble_shutter_enable_notify 
+4661 680446c1 fetch 8 ,mem_ble_shutter_interval_min 
+4662 60044496 store 8 ,mem_le_interval_min 
+4663 20403416 call app_lpm_mult_enable 
+4664 20205abf branch le_l2cap_tx_update_req 
+
+ble_shutter_process_parse_connect_parameter_update_response:
+4665 68014509 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+4666 c1000000 rtneq ble_signaling_connect_parameter_update_accepted 
+4667 680446c9 fetch 8 ,mem_ble_shutter_interval_min_new 
+4668 207a0000 rtn blank 
+4669 60044496 store 8 ,mem_le_interval_min 
+466a 20205abf branch le_l2cap_tx_update_req 
+
+shutter_process_soft_swtich_button_long_press:
+466b 2020481f branch ui_soft_switch_botton_long_press 
+
+shutter_process_soft_swtich_button_down:
+466c 6800c6dd fetch 1 ,mem_shutter_hard_soft_switch_case 
+466d c1000000 rtneq hard_switch 
+466e 6800c6df fetch 1 ,mem_shutter_soft_switch_power_state 
+466f c1808000 rtnne ss_state_power_on 
+4670 20404672 call shutter_store_currenct_led_state 
+4671 20203406 branch app_led_on 
+
+shutter_store_currenct_led_state:
+4672 7048df01 jam 1 ,mem_shutter_soft_swtich_botton_down 
+4673 df20000b arg 11 ,loopcnt 
+4674 d8a048e0 arg mem_shutter_soft_swtich_led_struct_temp ,contw 
+4675 d8c048c9 arg mem_shutter_led_struct_app_led ,contr 
+4676 20207f01 branch memcpy 
+
+shutter_process_soft_swtich_button_up:
+4677 6800c6dd fetch 1 ,mem_shutter_hard_soft_switch_case 
+4678 c1000000 rtneq hard_switch 
+4679 6800c6df fetch 1 ,mem_shutter_soft_switch_power_state 
+467a c000c67c beq ss_state_power_on ,shutter_load_currenct_led_state 
+467b 2020481b branch ui_soft_switch_botton_up 
+
+shutter_load_currenct_led_state:
+467c 6800c8df fetch 1 ,mem_shutter_soft_swtich_botton_down 
+467d c1808000 rtnne 1 
+467e 7048df00 jam 0 ,mem_shutter_soft_swtich_botton_down 
+467f 68014682 fetch 2 ,mem_ui_state_map 
+4680 c2803408 bbit1 ui_state_bt_connected ,app_led_off 
+4681 c284b408 bbit1 ui_state_ble_connected ,app_led_off 
+4682 df20000b arg 11 ,loopcnt 
+4683 d8c048e0 arg mem_shutter_soft_swtich_led_struct_temp ,contr 
+4684 d8a048c9 arg mem_shutter_led_struct_app_led ,contw 
+4685 20207f01 branch memcpy 
+
+shutter_le_bb_event_timer:
+4686 2040468c call shutter_check_sleep_timer 
+4687 20404693 call shutter_check_power_off_timer 
+4688 2040469e call classic_shutter_check_unplug_timer 
+4689 204046a6 call classic_shutter_hid_handshake_timer 
+468a 204046a9 call classic_shutter_hid_disconn_timer 
+468b 202046ac branch ble_shutter_reconn_timer 
+
+shutter_check_sleep_timer:
+468c da6046db arg mem_shutter_sleep_timer ,regc 
+468d da40468f arg shutter_sleep_timeout ,regb 
+468e 20203374 branch timer_single_step_2b 
+
+shutter_sleep_timeout:
+468f 7046df02 jam ss_state_power_off ,mem_shutter_soft_switch_power_state 
+4690 20403408 call app_led_off 
+4691 204046f4 call shutter_disconnect_current_connection 
+4692 2020480b branch shutter_wait_power_off 
+
+shutter_check_power_off_timer:
+4693 da6048ec arg mem_shutter_power_off_timer ,regc 
+4694 da404696 arg shutter_check_power_off_timeout ,regb 
+4695 2020336d branch timer_single_step 
+
+shutter_check_power_off_timeout:
+4696 68014682 fetch 2 ,mem_ui_state_map 
+4697 c284c80b bbit1 ui_state_ble_connected ,shutter_wait_power_off 
+4698 c280480b bbit1 ui_state_bt_connected ,shutter_wait_power_off 
+4699 6800c8c9 fetch 1 ,mem_shutter_led_struct_app_led_type 
+469a c000c80b beq ui_led_state_blink_start ,shutter_wait_power_off 
+469b c002480b beq ui_led_state_blink_lighting ,shutter_wait_power_off 
+469c c002c80b beq ui_led_state_blink_darking ,shutter_wait_power_off 
+469d 2020340a branch app_enter_hibernate 
+
+classic_shutter_check_unplug_timer:
+469e da6046ac arg mem_classic_shutter_cable_unplug_conut ,regc 
+469f da4046a1 arg classic_shutter_unplug_timeout ,regb 
+46a0 2020336d branch timer_single_step 
+
+classic_shutter_unplug_timeout:
+46a1 6800827f fetch 1 ,mem_control_tasks 
+46a2 79207e00 set1 l2cap_disconnect_interrupt ,pdata 
+46a3 79207e07 set1 l2cap_disconnect_control ,pdata 
+46a4 6000827f store 1 ,mem_control_tasks 
+46a5 20600000 rtn 
+
+classic_shutter_hid_handshake_timer:
+46a6 da604680 arg mem_hid_handshake_timer_count ,regc 
+46a7 da40463c arg classic_shutter_process_hid_handshake ,regb 
+46a8 2020336d branch timer_single_step 
+
+classic_shutter_hid_disconn_timer:
+46a9 da6046ad arg mem_classic_shutter_hid_disconn_count ,regc 
+46aa da4033e9 arg app_bt_disconnect ,regb 
+46ab 2020336d branch timer_single_step 
+
+ble_shutter_reconn_timer:
+46ac 6800c6df fetch 1 ,mem_shutter_soft_switch_power_state 
+46ad c1808000 rtnne ss_state_power_on 
+46ae da6046b7 arg mem_ble_shutter_reconn_timer ,regc 
+46af da4046c2 arg shutter_start_bluetooth_discovery ,regb 
+46b0 20203374 branch timer_single_step_2b 
+
+shutter_process_idle:
+46b1 2040473a call shutter_send_data_to_master 
+46b2 20206978 branch keyscan_key_process 
+
+shutter_process_lpm_before:
+46b3 2020696c branch keyscan_process_lpm_before 
+
+shutter_le_before_hibernate:
+46b4 20406835 call gpio_set_before_lpm_common 
+46b5 202046b3 branch shutter_process_lpm_before 
+
+shutter_stop_bluetooth_discovery:
+46b6 6800c69a fetch 1 ,mem_shutter_bluetooth_type 
+46b7 c280c6be bbit1 classic_shutter ,classic_shutter_stop_bluetooth_discovery 
+46b8 c28046ba bbit1 ble_shutter ,ble_shutter_stop_bluetooth_discovery 
+46b9 20600000 rtn 
+
+ble_shutter_stop_bluetooth_discovery:
+46ba 680146d7 fetch 2 ,mem_ble_shutter_connect_timeout 
+46bb 600146d9 store 2 ,mem_shutter_sleep_timeout 
+46bc 600146db store 2 ,mem_shutter_sleep_timer 
+46bd 202033f8 branch app_ble_stop_adv 
+
+classic_shutter_stop_bluetooth_discovery:
+46be 680146d3 fetch 2 ,mem_classic_shutter_connect_timeout 
+46bf 600146d9 store 2 ,mem_shutter_sleep_timeout 
+46c0 600146db store 2 ,mem_shutter_sleep_timer 
+46c1 202033f0 branch app_bt_stop_discovery 
+
+shutter_start_bluetooth_discovery:
+46c2 6800c6df fetch 1 ,mem_shutter_soft_switch_power_state 
+46c3 c1808000 rtnne ss_state_power_on 
+46c4 6800c69a fetch 1 ,mem_shutter_bluetooth_type 
+46c5 c280c6c8 bbit1 classic_shutter ,classic_shutter_start_discovery 
+46c6 c28046cc bbit1 ble_shutter ,ble_shutter_start_discovery 
+46c7 20600000 rtn 
+
+classic_shutter_start_discovery:
+46c8 680146d1 fetch 2 ,mem_classic_shutter_discovery_timeout ,
+46c9 600146d9 store 2 ,mem_shutter_sleep_timeout 
+46ca 600146db store 2 ,mem_shutter_sleep_timer 
+46cb 202033eb branch app_bt_start_discovery_short 
+
+ble_shutter_start_discovery:
+46cc 68014682 fetch 2 ,mem_ui_state_map 
+46cd c3848000 rtnbit1 ui_state_ble_connected 
+46ce 680146d5 fetch 2 ,mem_ble_shutter_discovery_timeout 
+46cf 600146d9 store 2 ,mem_shutter_sleep_timeout 
+46d0 600146db store 2 ,mem_shutter_sleep_timer 
+46d1 680146b3 fetch 2 ,mem_ble_shutter_discovery_adv_interval 
+46d2 204046f0 call shutter_ble_adv_interval_set 
+46d3 20403404 call app_led_start_blink 
+46d4 680246bd fetch 4 ,mem_ble_shutter_discovery_blink_on_time 
+46d5 600248cc store 4 ,mem_shutter_led_struct_app_led_on_time 
+46d6 68014682 fetch 2 ,mem_ui_state_map 
+46d7 c3858000 rtnbit1 ui_state_ble_adv 
+46d8 202033fa branch app_ble_start_adv 
+
+shutter_start_reconnect:
+46d9 6800c6df fetch 1 ,mem_shutter_soft_switch_power_state 
+46da c1808000 rtnne ss_state_power_on 
+46db 6800c69a fetch 1 ,mem_shutter_bluetooth_type 
+46dc c280c6df bbit1 classic_shutter ,classic_shutter_start_reconnect 
+46dd c28046e4 bbit1 ble_shutter ,ble_shutter_start_reconnect 
+46de 20600000 rtn 
+
+classic_shutter_start_reconnect:
+46df 204046f8 call app_check_reconn_target 
+46e0 203a46c2 branch shutter_start_bluetooth_discovery ,blank 
+46e1 20403406 call app_led_on 
+46e2 204033f0 call app_bt_stop_discovery 
+46e3 202033e1 branch app_bt_start_reconnect 
+
+ble_shutter_start_reconnect:
+46e4 680146b7 fetch 2 ,mem_ble_shutter_reconn_timer 
+46e5 680946b5 fetcht 2 ,mem_ble_shutter_reconn_timeout 
+46e6 600946b7 storet 2 ,mem_ble_shutter_reconn_timer 
+46e7 247a0000 nrtn blank 
+46e8 680146b1 fetch 2 ,mem_ble_shutter_reconn_dav_interval 
+46e9 204046f0 call shutter_ble_adv_interval_set 
+46ea 20403404 call app_led_start_blink 
+46eb 680246b9 fetch 4 ,mem_ble_shutter_reconn_blink_on_time 
+46ec 600248cc store 4 ,mem_shutter_led_struct_app_led_on_time 
+46ed 68014682 fetch 2 ,mem_ui_state_map 
+46ee c3858000 rtnbit1 ui_state_ble_adv 
+46ef 202033fa branch app_ble_start_adv 
+
+shutter_ble_adv_interval_set:
+46f0 60014154 store 2 ,mem_lpm_interval 
+46f1 1fe0fffc increase -4 ,pdata 
+46f2 60014482 store 2 ,mem_le_adv_interval 
+46f3 20600000 rtn 
+
+shutter_disconnect_current_connection:
+46f4 68014682 fetch 2 ,mem_ui_state_map 
+46f5 c284b402 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+46f6 c28033e9 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+46f7 202046b6 branch shutter_stop_bluetooth_discovery 
+
+app_check_reconn_target:
+46f8 6800c217 fetch 1 ,mem_nv_data_number 
+46f9 1fe27200 copy pdata ,loopcnt 
+46fa 68014215 fetch 2 ,mem_nv_data_ptr 
+46fb 1fe22200 copy pdata ,rega 
+
+app_check_reconn_target_loop:
+46fc ea210000 ifetch 2 ,rega 
+46fd c0004701 beq 0 ,found_reconn_device 
+46fe 1a20a222 increase nv_data_len ,rega 
+46ff c20046fc loop app_check_reconn_target_loop 
+4700 20207ff1 branch enable_blank 
+
+found_reconn_device:
+4701 e8c30000 ifetch 6 ,contr 
+4702 600341d0 store 6 ,mem_hci_plap 
+4703 18c08c0a increase 10 ,contr 
+4704 d8a041be arg mem_link_key ,contw 
+4705 20407ebf call memcpy16 
+4706 204067d7 call check_link_key_load 
+4707 20207fef branch disable_blank 
+
+shutter_check_data_enable:
+4708 20407fe9 call disable_user 
+4709 68014682 fetch 2 ,mem_ui_state_map 
+470a c280470d bbit1 ui_state_bt_connected ,shutter_check_bt_data_enable 
+470b c284c710 bbit1 ui_state_ble_connected ,shutter_check_ble_data_enable 
+470c 20600000 rtn 
+
+shutter_check_bt_data_enable:
+470d 6800c253 fetch 1 ,mem_hid_interrupt_state 
+470e c19f8000 rtnne 0x3f 
+470f 20207fe7 branch enable_user 
+
+shutter_check_ble_data_enable:
+4710 6800c6b0 fetch 1 ,mem_ble_shutter_enable_notify 
+4711 207a0000 rtn blank 
+4712 20207fe7 branch enable_user 
+
+shutter_check_bluetooth_conn:
+4713 20407fe9 call disable_user 
+4714 68014682 fetch 2 ,mem_ui_state_map 
+4715 c3800000 rtnbit1 ui_state_bt_connected 
+4716 c3848000 rtnbit1 ui_state_ble_connected 
+4717 20207fe7 branch enable_user 
+
+shutter_change_bluetooth_status_bt_disconn:
+4718 6800c69a fetch 1 ,mem_shutter_bluetooth_type 
+4719 c280c71c bbit1 classic_shutter ,classic_shutter_change_bluetooth_status_bt_disconn 
+471a c280471f bbit1 ble_shutter ,ble_shutter_change_bluetooth_status_bt_disconn 
+471b 20600000 rtn 
+
+classic_shutter_change_bluetooth_status_bt_disconn:
+471c 6800c093 fetch 1 ,mem_scan_mode 
+471d c1818000 rtnne 0x03 
+471e 202046d9 branch shutter_start_reconnect 
+
+ble_shutter_change_bluetooth_status_bt_disconn:
+471f 202046d9 branch shutter_start_reconnect 
+
+shutter_check_send_data:
+4720 78567c00 disable user2 
+4721 680146d9 fetch 2 ,mem_shutter_sleep_timeout 
+4722 600146db store 2 ,mem_shutter_sleep_timer 
+4723 20404713 call shutter_check_bluetooth_conn 
+4724 20344718 branch shutter_change_bluetooth_status_bt_disconn ,user 
+4725 20404708 call shutter_check_data_enable 
+4726 24740000 nrtn user 
+4727 78367c00 enable user2 
+4728 20600000 rtn 
+
+shutter_key_change:
+4729 20404720 call shutter_check_send_data 
+472a 24760000 nrtn user2 
+472b 1a227e00 deposit rega 
+472c 203a4730 branch shutter_key_release ,blank 
+
+shutter_key_press:
+472d 20403406 call app_led_on 
+472e da6046f1 arg mem_key0_press ,regc 
+472f 20204732 branch push_queue_press_or_release 
+
+shutter_key_release:
+4730 20403408 call app_led_off 
+4731 da604719 arg mem_key0_release ,regc 
+
+push_queue_press_or_release:
+4732 dfe00005 arg max_queue_num ,pdata 
+4733 98effe00 imul32 queue ,pdata 
+4734 9a60a600 iadd regc ,regc 
+
+push_buffer_in_queue:
+4735 ea608000 ifetch 1 ,regc 
+4736 207a0000 rtn blank 
+4737 20404762 call queue_push_one_byte 
+4738 1a60a601 increase 1 ,regc 
+4739 20204735 branch push_buffer_in_queue 
+
+shutter_send_data_to_master:
+473a 68014682 fetch 2 ,mem_ui_state_map 
+473b c284c73e bbit1 ui_state_ble_connected ,pop_queue_to_ble_data 
+473c c280474e bbit1 ui_state_bt_connected ,pop_queue_to_classic_data 
+473d 20600000 rtn 
+
+pop_queue_to_ble_data:
+473e 20405892 call le_fifo_check_nearly_full 
+473f 247a0000 nrtn blank 
+4740 20404765 call queue_pop_one_byte 
+4741 24740000 nrtn user 
+4742 1fe0ffff pincrease -1 
+4743 1feffe05 mul32 pdata ,shutter_ble_data_buffer ,pdata 
+4744 d8404741 arg mem_ble_data_buffer1 ,temp 
+4745 98408c00 iadd temp ,contr 
+
+le_send_notify_from_list:
+4746 e8c08000 ifetch 1 ,contr 
+4747 1fe22200 copy pdata ,rega 
+4748 e8c90000 ifetcht 2 ,contr 
+4749 20407ea5 call store_contr 
+474a 20405a64 call le_att_malloc_tx_notify 
+474b 1a227200 copy rega ,loopcnt 
+474c 20407e9f call get_contr 
+474d 20207f01 branch memcpy 
+
+pop_queue_to_classic_data:
+474e 20405271 call l2cap_malloc_is_fifo_nearly_full 
+474f 247a0000 nrtn blank 
+4750 20404765 call queue_pop_one_byte 
+4751 24740000 nrtn user 
+4752 1fe0ffff pincrease -1 
+4753 1feffe05 mul32 pdata ,shutter_classic_data_buffer ,pdata 
+4754 d84047a0 arg mem_classic_data_buffer1 ,temp 
+4755 98408c00 iadd temp ,contr 
+4756 e8c28000 ifetch 5 ,contr 
+4757 6002c79b store 5 ,mem_classic_data_buffer 
+
+classic_send_hid_data:
+4758 6800c79b fetch 1 ,mem_classic_data_buffer 
+4759 1fe22200 copy pdata ,rega 
+475a 20404d63 call hid_malloc_tx_buff 
+475b 6801424e fetch 2 ,mem_hid_int_remote_cid 
+475c e0a10000 istore 2 ,contw 
+475d 580000a1 setarg 0xa1 
+475e e0a08000 istore 1 ,contw 
+475f 6802479c fetch 4 ,mem_classic_data_buffer + 1 
+4760 e0a48000 istore 9 ,contw 
+4761 20600000 rtn 
+
+queue_push_one_byte:
+4762 60008a9a store 1 ,mem_pdatatemp 
+4763 da200a9a arg mem_pdatatemp ,rega 
+4764 20207e3d branch queue_push 
+
+queue_pop_one_byte:
+4765 da200a9a arg mem_pdatatemp ,rega 
+4766 20407e54 call queue_pop 
+4767 24740000 nrtn user 
+4768 68008a9a fetch 1 ,mem_pdatatemp 
+4769 20600000 rtn 
+
+ble_shutter_receive_data:
+476a 68010478 fetch 2 ,mem_le_att_handle 
+476b c00c465f beq gatt_keyboard_write_handle ,ble_shutter_process_reconnect_complete 
+476c 20600000 rtn 
+
+shutter_init_param:
+476d 58000002 setarg 0x02 
+476e 6000c8eb store 1 ,mem_shutter_power_off_timeout 
+476f 58200008 setarg 0x00200008 
+4770 600246c1 store 4 ,mem_ble_shutter_interval_min 
+4771 592c0005 setarg 0x012c0005 
+4772 e0a20000 istore 4 ,contw 
+4773 7044a617 jam 0x17 ,mem_le_local_mtu 
+4774 5800001b setarg 0x1b 
+4775 600144fa store 2 ,mem_le_pairing_handle 
+4776 20405810 call le_set_config_fixed_ltk 
+4777 2040582c call le_set_fixed_ltk 
+4778 20405839 call le_set_justwork 
+4779 20205818 branch le_set_config_read_authentication 
+
+shutter_load_buffer_config_form_datarom:
+477a df200028 arg ble_key_value_list_size ,loopcnt 
+477b d8a04741 arg mem_ble_data_buffer1 ,contw 
+477c d8c0949f arg ble_shutter_key_value_list ,contr 
+477d 20407ef4 call memcpy_fast 
+477e df200028 arg bt_key_value_list_size ,loopcnt 
+477f d8a047a0 arg mem_classic_data_buffer1 ,contw 
+4780 d8c094c7 arg classic_shutter_key_value_list ,contr 
+4781 20207ef4 branch memcpy_fast 
+
+shutter_load_ble_gatt_form_datarom:
+4782 df20017e arg ble_gatt_list_size ,loopcnt 
+4783 d8c0913a arg ble_shutter_gatt_list ,contr 
+4784 20207ef4 branch memcpy_fast 
+
+shutter_load_bt_sdp_form_datarom:
+4785 df2001e7 arg bt_sdp_list_size ,loopcnt 
+4786 d8c092b8 arg classic_shutter_sdp_list ,contr 
+4787 20207ef4 branch memcpy_fast 
+
+shutter_init_bluetooth_config:
+4788 204047ae call shutter_check_load_config_flag 
+4789 24740000 nrtn user 
+478a 6800c69f fetch 1 ,mem_shutter_config_select_gpio1 
+478b 20404790 call shutter_init_bluetooth_config_gpio_input 
+478c 6800c6a0 fetch 1 ,mem_shutter_config_select_gpio2 
+478d 20404790 call shutter_init_bluetooth_config_gpio_input 
+478e 6800c6a1 fetch 1 ,mem_shutter_config_select_gpio3 
+478f 20204790 branch shutter_init_bluetooth_config_gpio_input 
+
+shutter_init_bluetooth_config_gpio_input:
+4790 207a0000 rtn blank 
+4791 1fe18480 or pdata ,0x80 ,temp 
+4792 202067f9 branch gpio_config_input_nowake 
+
+shutter_load_bluetooth_config:
+4793 204047ae call shutter_check_load_config_flag 
+4794 24740000 nrtn user 
+4795 20404797 call shutter_load_bluetooth_config_label 
+4796 202047b4 branch shutter_load_bluetooth_config_by_otp 
+
+shutter_load_bluetooth_config_label:
+4797 da200000 arg 0 ,rega 
+4798 6800c69f fetch 1 ,mem_shutter_config_select_gpio1 
+4799 204047a9 call shutter_load_bluetooth_config_read_gpio_input 
+479a 7d3a2200 nsetflag blank ,0 ,rega 
+479b 6800c6a0 fetch 1 ,mem_shutter_config_select_gpio2 
+479c 204047a9 call shutter_load_bluetooth_config_read_gpio_input 
+479d 7d3a2201 nsetflag blank ,1 ,rega 
+479e 6800c6a1 fetch 1 ,mem_shutter_config_select_gpio3 
+479f 204047a9 call shutter_load_bluetooth_config_read_gpio_input 
+47a0 7d3a2202 nsetflag blank ,2 ,rega 
+47a1 1a227e00 copy rega ,pdata 
+47a2 6000c6a9 store 1 ,mem_shutter_config_label 
+47a3 6800c69e fetch 1 ,mem_shutter_config_size 
+47a4 9a2ffe00 imul32 rega ,pdata 
+47a5 6809469c fetcht 2 ,mem_shutter_config_otp_base_address 
+47a6 9840fe00 iadd temp ,pdata 
+47a7 600146aa store 2 ,mem_shutter_config_otp_addr 
+47a8 20600000 rtn 
+
+shutter_load_bluetooth_config_read_gpio_input:
+47a9 207a0000 rtn blank 
+47aa 1fe18480 or pdata ,0x80 ,temp 
+47ab 2040681d call gpio_get_bit 
+47ac 2420fff1 nbranch enable_blank ,true 
+47ad 20207fef branch disable_blank 
+
+shutter_check_load_config_flag:
+47ae 20407fe9 call disable_user 
+47af 6800c6a8 fetch 1 ,mem_shutter_config_user_size 
+47b0 247a0000 nrtn blank 
+47b1 6800c69b fetch 1 ,mem_shutter_config_enable 
+47b2 207a0000 rtn blank 
+47b3 20207fe7 branch enable_user 
+
+shutter_load_bluetooth_config_by_otp:
+47b4 2040666a call otp_enable_chgpump 
+47b5 680146aa fetch 2 ,mem_shutter_config_otp_addr 
+47b6 da200ac2 arg mem_shutter_config_data_temp ,rega 
+47b7 6808c69e fetcht 1 ,mem_shutter_config_size 
+47b8 204066b3 call otpd_read_data 
+47b9 2040666d call otp_disable_chgpump 
+
+shutter_load_bluetooth_config_store_name:
+47ba 68008ac2 fetch 1 ,mem_shutter_config_data_temp 
+47bb 1fe27200 copy pdata ,loopcnt 
+47bc 6000c3af store 1 ,mem_le_name_len 
+47bd 20407ef4 call memcpy_fast 
+47be 68008ac2 fetch 1 ,mem_shutter_config_data_temp 
+47bf 1fe27200 copy pdata ,loopcnt 
+47c0 6000c515 store 1 ,mem_local_name_length 
+47c1 20407ef4 call memcpy_fast 
+47c2 e8c08000 ifetch 1 ,contr 
+47c3 6000c6e6 store 1 ,mem_shutter_key_num 
+47c4 e8c08000 ifetch 1 ,contr 
+47c5 6000c6dd store 1 ,mem_shutter_hard_soft_switch_case 
+47c6 20600000 rtn 
+
+shutter_load_bluetooth_config_by_eeprom:
+47c7 6800c69a fetch 1 ,mem_shutter_bluetooth_type 
+47c8 c4008000 rtnbit0 classic_shutter 
+47c9 d8400003 arg 3 ,temp 
+47ca 680146a4 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+47cb 1fe22400 copy pdata ,regb 
+47cc da2046a6 arg mem_shutter_config_eeprom_start_flag ,rega 
+47cd 204065df call iicd_read_eep_data 
+47ce 680946a6 fetcht 2 ,mem_shutter_config_eeprom_start_flag 
+47cf 58001b3a setarg shutter_eeprom_config_crc 
+47d0 98467c00 isub temp ,null 
+47d1 24628000 nrtn zero 
+47d2 6800c6a8 fetch 1 ,mem_shutter_config_user_size 
+47d3 207a0000 rtn blank 
+47d4 1fe20400 copy pdata ,temp 
+47d5 680146a4 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+47d6 1fe0a403 add pdata ,3 ,regb 
+47d7 da200ac2 arg mem_shutter_config_data_temp ,rega 
+47d8 204065df call iicd_read_eep_data 
+47d9 202047e8 branch shutter_store_config 
+
+shutter_load_bluetooth_config_by_user_config:
+47da 680146a2 fetch 2 ,mem_shutter_config_user_otp_address 
+47db 207a0000 rtn blank 
+47dc 2040666a call otp_enable_chgpump 
+47dd d8400001 arg 1 ,temp 
+47de da2046a8 arg mem_shutter_config_user_size ,rega 
+47df 204066b3 call otpd_read_data 
+47e0 6800c6a8 fetch 1 ,mem_shutter_config_user_size 
+47e1 207a0000 rtn blank 
+47e2 680146a2 fetch 2 ,mem_shutter_config_user_otp_address 
+47e3 1fe0fe01 pincrease 1 
+47e4 da200ac2 arg mem_shutter_config_data_temp ,rega 
+47e5 6808c6a8 fetcht 1 ,mem_shutter_config_user_size 
+47e6 204066b3 call otpd_read_data 
+47e7 2040666d call otp_disable_chgpump 
+
+shutter_store_config:
+47e8 204047ba call shutter_load_bluetooth_config_store_name 
+
+shutter_load_bluetooth_config_custom:
+47e9 e8c10000 ifetch 2 ,contr 
+47ea 207a0000 rtn blank 
+47eb 1fe20a00 copy pdata ,contw 
+47ec e8c88000 ifetcht 1 ,contr 
+47ed 18427200 copy temp ,loopcnt 
+47ee 20407f01 call memcpy 
+47ef 202047e9 branch shutter_load_bluetooth_config_custom 
+
+shutter_random_mac_addr:
+47f0 6800c69a fetch 1 ,mem_shutter_bluetooth_type 
+47f1 c4008000 rtnbit0 classic_shutter 
+47f2 680146ae fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+47f3 1fe22400 copy pdata ,regb 
+47f4 d8400004 arg 4 ,temp 
+47f5 da200ac2 arg mem_shutter_random_mac_data_temp ,rega 
+47f6 204065df call iicd_read_eep_data 
+47f7 68008ac2 fetch 1 ,mem_shutter_random_mac_data_temp 
+47f8 c080c7f9 bne 1 ,shutter_write_random_mac_addr_to_eeprom 
+
+shutter_write_random_mac_addr_to_eeprom:
+47f9 58000001 setarg 1 
+47fa 60008ac2 store 1 ,mem_shutter_random_mac_data_temp 
+47fb 18007203 force 3 ,loopcnt 
+47fc 2040630d call generate_random_loop 
+47fd 680146ae fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+47fe 1fe22400 copy pdata ,regb 
+47ff d8400004 arg 4 ,temp 
+4800 da200ac2 arg mem_shutter_random_mac_data_temp ,rega 
+4801 20406606 call iicd_write_eep_data 
+
+shutter_write_random_mac_addr:
+4802 68018ac3 fetch 3 ,mem_shutter_random_mac_data_temp + 1 
+4803 6001c0a0 store 3 ,mem_lap 
+4804 6001c4a0 store 3 ,mem_le_lap 
+4805 20600000 rtn 
+
+shutter_soft_swtich_power_on:
+4806 202046d9 branch shutter_start_reconnect 
+
+shutter_soft_swtich_power_off:
+4807 da200000 arg 0 ,rega 
+4808 da6048d4 arg mem_shutter_power_off_led_style ,regc 
+4809 20407d24 call ui_led_set_style_global 
+480a 204046f4 call shutter_disconnect_current_connection 
+
+shutter_wait_power_off:
+480b 6800c8eb fetch 1 ,mem_shutter_power_off_timeout 
+480c 6000c8ec store 1 ,mem_shutter_power_off_timer 
+480d 20600000 rtn 
+
+ui_soft_swtich_init:
+480e 58000000 setarg ss_state_power_up 
+480f 20404816 call ui_soft_swtich_init_power_on_time 
+4810 70467901 jam ui_button_state_up ,mem_ui_button_last_state 
+4811 20407cd3 call ui_button_init 
+4812 20407cdd call ui_button_polling 
+4813 68014682 fetch 2 ,mem_ui_state_map 
+4814 c3860000 rtnbit1 ui_state_btn_down 
+4815 2020340a branch app_enter_hibernate 
+
+ui_soft_swtich_init_power_on_time:
+4816 6809423f fetcht 2 ,mem_power_param_ptr 
+4817 e0408000 istore 1 ,temp 
+4818 e8a08000 ifetch 1 ,contw 
+4819 6000c685 store 1 ,mem_ui_button_timeout 
+481a 20600000 rtn 
+
+ui_soft_switch_botton_up:
+481b 6801423f fetch 2 ,mem_power_param_ptr 
+481c efe08000 ifetch 1 ,pdata 
+481d c1800000 rtnne ss_state_power_up 
+481e 2020340a branch app_enter_hibernate 
+
+ui_soft_switch_botton_long_press:
+481f 6809423f fetcht 2 ,mem_power_param_ptr 
+4820 e8408000 ifetch 1 ,temp 
+4821 c000c82a beq ss_state_power_on ,ui_soft_switch_power_off 
+
+ui_soft_switch_power_on:
+4822 58000001 setarg ss_state_power_on 
+4823 6809423f fetcht 2 ,mem_power_param_ptr 
+4824 e0408000 istore 1 ,temp 
+4825 18408c02 add temp ,ss_power_off_time ,contr 
+4826 e8c08000 ifetch 1 ,contr 
+4827 e0a08000 istore 1 ,mem_ui_button_timeout 
+4828 e8c10000 ifetch 2 ,contr 
+4829 20207f9c branch callback_func 
+
+ui_soft_switch_power_off:
+482a 58000002 setarg ss_state_power_off 
+482b 20404816 call ui_soft_swtich_init_power_on_time 
+482c 18408c05 add temp ,ss_power_off_cb ,contr 
+482d e8c10000 ifetch 2 ,contr 
+482e 203a340a branch app_enter_hibernate ,blank 
+482f 20207f9c branch callback_func 
+
+shutter_byteswap:
+4830 60030101 store 6 ,mem_tmp_buffer 
+4831 68008101 fetch 1 ,mem_tmp_buffer 
+4832 6000810c store 1 ,mem_tmp_buffer + 11 
+4833 e8c08000 ifetch 1 ,contr 
+4834 6000810b store 1 ,mem_tmp_buffer + 10 
+4835 e8c08000 ifetch 1 ,contr 
+4836 6000810a store 1 ,mem_tmp_buffer + 9 
+4837 e8c08000 ifetch 1 ,contr 
+4838 60008109 store 1 ,mem_tmp_buffer + 8 
+4839 e8c08000 ifetch 1 ,contr 
+483a 60008108 store 1 ,mem_tmp_buffer + 7 
+483b e8c08000 ifetch 1 ,contr 
+483c 60008107 store 1 ,mem_tmp_buffer + 6 
+483d 68030107 fetch 6 ,mem_tmp_buffer + 6 
+483e 20600000 rtn 
+
+shutter_random_addr_by_otp:
+483f 204068a2 call load_adc_init 
+4840 6800c223 fetch 1 ,mem_1v_adc_io_data 
+4841 6000c4a0 store 1 ,mem_le_lap 
+4842 6800c225 fetch 1 ,mem_5v_adc_hvin_data 
+4843 e0a08000 istore 1 ,contw 
+4844 6800c227 fetch 1 ,mem_3v_adc_vinlpm_data 
+4845 e0a08000 istore 1 ,contw 
+4846 6801c4a0 fetch 3 ,mem_le_lap 
+4847 6001c0a0 store 3 ,mem_lap 
+4848 20600000 rtn 
+
+sim_iic_read_eep_data:
+4849 68014203 fetch 2 ,mem_eeprom_base 
+484a 9a40fe00 iadd regb ,pdata 
+484b 1ff0fe00 byteswap pdata ,pdata 
+484c 600101f7 store 2 ,mem_addr_mi 
+484d 18422400 copy temp ,regb 
+484e 2040489b call sim_iic_start 
+484f 580000a0 setarg 0xa0 
+4850 2040488d call sim_iic_send_byte 
+4851 680081f7 fetch 1 ,mem_addr_mi 
+4852 2040488d call sim_iic_send_byte 
+4853 c5144856 bmark1 mark_eeprom_size ,sim_iic_read_eep_data_2k 
+4854 680081f8 fetch 1 ,mem_addr_mi + 1 
+4855 2040488d call sim_iic_send_byte 
+
+sim_iic_read_eep_data_2k:
+4856 204048a1 call sim_iic_stop 
+4857 2040489b call sim_iic_start 
+4858 580000a1 setarg 0xa1 
+4859 2040488d call sim_iic_send_byte 
+
+sim_iic_read_eep_data_loop:
+485a 2040487f call sim_iic_read_byte 
+485b e2208000 istore 1 ,rega 
+485c 1a20a201 increase 1 ,rega 
+485d 1a40a5ff increase -1 ,regb 
+485e 2422c85a nbranch sim_iic_read_eep_data_loop ,zero 
+485f 202048a1 branch sim_iic_stop 
+
+sim_iic_write_eep_data:
+4860 1a50fe00 byteswap regb ,pdata 
+4861 600101f7 store 2 ,mem_addr_mi 
+4862 18422400 copy temp ,regb 
+4863 2040489b call sim_iic_start 
+4864 580000a0 setarg 0xa0 
+4865 2040488d call sim_iic_send_byte 
+4866 680081f7 fetch 1 ,mem_addr_mi 
+4867 2040488d call sim_iic_send_byte 
+4868 c514486b bmark1 mark_eeprom_size ,sim_iic_write_eep_data_loop 
+4869 680081f8 fetch 1 ,mem_addr_mi + 1 
+486a 2040488d call sim_iic_send_byte 
+
+sim_iic_write_eep_data_loop:
+486b ea208000 ifetch 1 ,rega 
+486c 2040488d call sim_iic_send_byte 
+486d 1a20a201 increase 1 ,rega 
+486e 1a40a5ff increase -1 ,regb 
+486f 2422c86b nbranch sim_iic_write_eep_data_loop ,zero 
+4870 202048a1 branch sim_iic_stop 
+
+sim_iic_wait_ack:
+4871 df20000a arg 10 ,loopcnt 
+4872 204048be call sim_iic_release_sda 
+4873 204048a6 call sim_iic_scl_output_high 
+4874 204048d2 call sim_iic_delay 
+
+sim_iic_wait_ack_loop:
+4875 204048c7 call sim_iic_read_sda_level 
+4876 203a48a9 branch sim_iic_scl_output_low ,blank 
+4877 c2004875 loop sim_iic_wait_ack_loop 
+4878 202048a9 branch sim_iic_scl_output_low 
+
+sim_iic_ack_slave:
+4879 204048a9 call sim_iic_scl_output_low 
+487a 204048af call sim_iic_sda_output_low 
+487b 204048d2 call sim_iic_delay 
+487c 204048a6 call sim_iic_scl_output_high 
+487d 204048d2 call sim_iic_delay 
+487e 202048a9 branch sim_iic_scl_output_low 
+
+sim_iic_read_byte:
+487f df200008 arg 8 ,loopcnt 
+4880 da600000 arg 0 ,regc 
+4881 204048be call sim_iic_release_sda 
+
+sim_iic_read_byte_loop:
+4882 204048a6 call sim_iic_scl_output_high 
+4883 204048d2 call sim_iic_delay 
+4884 1a63a600 lshift regc ,regc 
+4885 204048c7 call sim_iic_read_sda_level 
+4886 9a60a600 iadd regc ,regc 
+4887 204048d2 call sim_iic_delay 
+4888 204048a9 call sim_iic_scl_output_low 
+4889 c2004882 loop sim_iic_read_byte_loop 
+488a 20404879 call sim_iic_ack_slave 
+488b 1a627e00 copy regc ,pdata 
+488c 20600000 rtn 
+
+sim_iic_send_byte:
+488d df200008 arg 8 ,loopcnt 
+488e 1fe22600 copy pdata ,regc 
+488f 204048a9 call sim_iic_scl_output_low 
+
+sim_iic_send_byte_loop:
+4890 2a6ffe07 isolate1 7 ,regc 
+4891 2040c8ac call sim_iic_sda_output_high ,true 
+4892 2440c8af ncall sim_iic_sda_output_low ,true 
+4893 1a63a600 lshift regc ,regc 
+4894 204048d2 call sim_iic_delay 
+4895 204048a6 call sim_iic_scl_output_high 
+4896 204048d2 call sim_iic_delay 
+4897 204048a9 call sim_iic_scl_output_low 
+4898 204048d2 call sim_iic_delay 
+4899 c2004890 loop sim_iic_send_byte_loop 
+489a 20204871 branch sim_iic_wait_ack 
+
+sim_iic_start:
+489b 204048ac call sim_iic_sda_output_high 
+489c 204048a6 call sim_iic_scl_output_high 
+489d 204048d2 call sim_iic_delay 
+489e 204048af call sim_iic_sda_output_low 
+489f 204048d2 call sim_iic_delay 
+48a0 202048a9 branch sim_iic_scl_output_low 
+
+sim_iic_stop:
+48a1 204048af call sim_iic_sda_output_low 
+48a2 204048a6 call sim_iic_scl_output_high 
+48a3 204048d2 call sim_iic_delay 
+48a4 204048ac call sim_iic_sda_output_high 
+48a5 202048d2 branch sim_iic_delay 
+
+sim_iic_scl_output_high:
+48a6 78347c00 enable user 
+48a7 6800cffe fetch 1 ,sim_iic_scl_gpio_num 
+48a8 202048b2 branch sim_iic_config_gpio 
+
+sim_iic_scl_output_low:
+48a9 78547c00 disable user 
+48aa 6800cffe fetch 1 ,sim_iic_scl_gpio_num 
+48ab 202048b2 branch sim_iic_config_gpio 
+
+sim_iic_sda_output_high:
+48ac 78347c00 enable user 
+48ad 6800cfff fetch 1 ,sim_iic_sda_gpio_num 
+48ae 202048b2 branch sim_iic_config_gpio 
+
+sim_iic_sda_output_low:
+48af 78547c00 disable user 
+48b0 6800cfff fetch 1 ,sim_iic_sda_gpio_num 
+48b1 202048b2 branch sim_iic_config_gpio 
+
+sim_iic_config_gpio:
+48b2 1fe10e07 and pdata ,0x07 ,queue 
+48b3 1fe97e00 rshift3 pdata ,pdata 
+48b4 d8408070 arg core_gpio_oe0 ,temp 
+48b5 98408400 iadd temp ,temp 
+48b6 e8408000 ifetch 1 ,temp 
+48b7 f9207e00 qset1 pdata 
+48b8 e0408000 istore 1 ,temp 
+48b9 18408404 increase 4 ,temp 
+48ba e8408000 ifetch 1 ,temp 
+48bb f9347e00 qsetflag user ,pdata 
+48bc e0408000 istore 1 ,temp 
+48bd 20600000 rtn 
+
+sim_iic_release_sda:
+48be 6800cfff fetch 1 ,sim_iic_sda_gpio_num 
+48bf 1fe10e07 and pdata ,0x07 ,queue 
+48c0 1fe97e00 rshift3 pdata ,pdata 
+48c1 d8408070 arg core_gpio_oe0 ,temp 
+48c2 98408400 iadd temp ,temp 
+48c3 e8408000 ifetch 1 ,temp 
+48c4 f93ffe00 qset0 pdata 
+48c5 e0408000 istore 1 ,temp 
+48c6 20600000 rtn 
+
+sim_iic_read_sda_level:
+48c7 20000004 nop 4 
+48c8 6800cfff fetch 1 ,sim_iic_sda_gpio_num 
+48c9 1fe10e07 and pdata ,0x07 ,queue 
+48ca 1fe97e00 rshift3 pdata ,pdata 
+48cb d840811c arg core_gpio_in ,temp 
+48cc 98408400 iadd temp ,temp 
+48cd 58000000 setarg 0 
+48ce e8488000 ifetcht 1 ,temp 
+48cf a84fffff qisolate1 temp 
+48d0 7920fe00 setflag true ,0 ,pdata 
+48d1 20600000 rtn 
+
+sim_iic_delay:
+48d2 20600000 rtn 
+
+usb_isr:
+48d3 44fb401e bpatch patch1e_6 ,mem_patch1e 
+48d4 68108a26 hfetch 1 ,core_usb_status 
+48d5 2feffe07 isolate1 7 ,pdata 
+48d6 2040c8ea call usb_init ,true 
+48d7 2040492e call usb_nak_state_judge 
+48d8 68108a26 hfetch 1 ,core_usb_status 
+48d9 60008b22 store 1 ,mem_usb_status 
+48da 68108a27 hfetch 1 ,core_usb_fifo_empty 
+48db 60008b23 store 1 ,mem_usb_fifo_empty 
+48dc 60108a27 hstore 1 ,core_usb_fifo_empty 
+48dd 1fe47e00 pinvert 
+48de 68088d37 fetcht 1 ,mem_usb_tx_wait 
+48df 98417e00 iand temp ,pdata 
+48e0 60008d37 store 1 ,mem_usb_tx_wait 
+48e1 708a26e0 jam 0xe0 ,core_usb_status 
+48e2 68008b23 fetch 1 ,mem_usb_fifo_empty 
+48e3 2fe00201 compare 0x1 ,pdata ,0x1 
+48e4 2040c941 call usb0_fifo_empty ,true 
+48e5 68008b22 fetch 1 ,mem_usb_status 
+48e6 2fe00201 compare 0x1 ,pdata ,0x1 
+48e7 2040c94a call usb_status1 ,true 
+48e8 20404b61 call usb_tx 
+48e9 20204903 branch usb_nak_state 
+
+usb_init:
+48ea 44fbc01e bpatch patch1e_7 ,mem_patch1e 
+48eb 20404919 call usb_init_param 
+48ec 708a0000 jam 0x00 ,core_usb_config 
+48ed 20002710 nop 10000 
+48ee 708a10c0 jam 0xc0 ,core_usb_trig 
+48ef 68110050 hfetch 2 ,core_clkoff 
+48f0 793ffe0a set0 clock_off_usb ,pdata 
+48f1 60110050 hstore 2 ,core_clkoff 
+48f2 708a003c jam 0x3c ,core_usb_config 
+48f3 708a26ff jam 0xff ,core_usb_status 
+48f4 708a27ff jam 0xff ,core_usb_fifo_empty 
+48f5 708a0400 jam 0 ,core_usb_addr 
+48f6 700c6b02 jam dev_default ,mem_usb0_state 
+48f7 58000d9d setarg mem_usb_clear_mem_end 
+48f8 d8a00c6e arg mem_usb_clear_mem_start ,contw 
+48f9 98a67200 isub contw ,loopcnt 
+48fa 20207ed4 branch clear_mem 
+
+usb_offline_check_init:
+48fb 68088c6c fetcht 1 ,mem_usb_offline_check_gpio 
+48fc 202067fb branch gpio_config_input 
+
+usb_offline_state:
+48fd 68008d45 fetch 1 ,mem_usb_device_enumeration_endflag 
+48fe 207a0000 rtn blank 
+48ff 68088c6c fetcht 1 ,mem_usb_offline_check_gpio 
+4900 2040681d call gpio_get_bit 
+4901 2020c8ea branch usb_init ,true 
+4902 20600000 rtn 
+
+usb_nak_state:
+4903 d8e00000 arg timer_nak ,queue 
+4904 20407f16 call timer_check 
+4905 247a0000 nrtn blank 
+4906 68008d46 fetch 1 ,mem_usb_wakestate_onetime_flag 
+4907 247a0000 nrtn blank 
+4908 68008d45 fetch 1 ,mem_usb_device_enumeration_endflag 
+4909 245a4bb7 ncall usb_mac_wakeup_judge ,blank 
+490a 20600000 rtn 
+
+usb_mem_devicedesc_init:
+490b d8a00b68 arg mem_devicedesc ,contw 
+490c 38011212 setsect 0 ,0x11212 
+490d 38048000 setsect 1 ,0x8000 
+490e 38080000 setsect 2 ,0x0 
+490f 380d0000 setsect 3 ,0x10000 
+4910 e0a48000 istore 9 ,contw 
+4911 38022412 setsect 0 ,0x22412 
+4912 38048604 setsect 1 ,0x8604 
+4913 38081000 setsect 2 ,0x1000 
+4914 380c0008 setsect 3 ,0x8 
+4915 e0a48000 istore 9 ,contw 
+4916 38000001 setsect 0 ,0x1 
+4917 e0a08000 istore 1 ,contw 
+4918 20600000 rtn 
+
+usb_init_param:
+4919 700c6b02 jam 2 ,mem_usb0_state 
+491a 58000000 setarg 0x0 
+491b 60008b67 store 1 ,mem_remain 
+491c 60010c65 store 2 ,mem_usb_zero_packet 
+491d 1fe0fe01 pincrease 1 
+491e 60010c67 store 2 ,mem_usb_ones_packet 
+491f 1fe0fe01 pincrease 1 
+4920 60010c69 store 2 ,mem_usb_two_packet 
+4921 58008ffa setarg hid_kbdata_addr 
+4922 60010b7c store 2 ,mem_hidreportdesc_kb 
+4923 5800903a setarg hid_msdata_addr 
+4924 60010b7e store 2 ,mem_hidreportdesc_m 
+4925 d8a00b80 arg mem_confdesc ,contw 
+4926 d8c090fe arg hid_confdata_addr ,contr 
+4927 20407eb3 call memcpy64 
+4928 68008c6d fetch 1 ,mem_usb_tx_interval 
+4929 245a492b ncall usb_tx_interval_config ,blank 
+492a 2020490b branch usb_mem_devicedesc_init 
+
+usb_tx_interval_config:
+492b 60008ba2 store 1 ,mem_confdesc + 34 
+492c 60008bbb store 1 ,mem_confdesc + 59 
+492d 20600000 rtn 
+
+usb_nak_state_judge:
+492e 68108a26 hfetch 1 ,core_usb_status 
+492f c2834931 bbit1 usb_status_nak ,usb_nak_state_timer_init 
+4930 20600000 rtn 
+
+usb_nak_state_timer_init:
+4931 20404936 call usb0_attached_state_judge 
+4932 20407f15 call timer_reinit 
+4933 58000280 setarg timer_nak_delay 
+4934 d8e00000 arg timer_nak ,queue 
+4935 20207f08 branch timer_init 
+
+usb0_attached_state_judge:
+4936 68008d36 fetch 1 ,mem_usb_state 
+4937 c081493b bne usb_connected ,usb_clear_halt_dispose 
+4938 700d4600 jam 0 ,mem_usb_wakestate_onetime_flag 
+4939 700d4700 jam 0 ,mem_usb_mac_wakeup_trig 
+493a 20600000 rtn 
+
+usb_clear_halt_dispose:
+493b 68008d53 fetch 1 ,mem_usb_clear_halt 
+493c 207a0000 rtn blank 
+493d 700d5300 jam 0 ,mem_usb_clear_halt 
+493e 700d3602 jam usb_connected ,mem_usb_state 
+493f 700d4501 jam 1 ,mem_usb_device_enumeration_endflag 
+4940 20600000 rtn 
+
+usb0_fifo_empty:
+4941 708a2701 jam 0x1 ,core_usb_fifo_empty 
+4942 20204b37 branch usb0_tx 
+
+usb_rx_no_data:
+4943 68008b22 fetch 1 ,mem_usb_status 
+4944 c2824955 bbit1 usb_status_setup ,usb_class_type 
+4945 20600000 rtn 
+
+usb_rx_read:
+4946 68108a18 hfetch 1 ,core_usb_ep 
+4947 e0a08000 istore 1 ,contw 
+4948 c2004946 loop usb_rx_read 
+4949 20600000 rtn 
+
+usb_status1:
+494a 44fc401f bpatch patch1f_0 ,mem_patch1f 
+494b 708a2611 jam 0x11 ,core_usb_status 
+494c 68108a20 hfetch 1 ,core_usb_ep_len 
+494d 60008b24 store 1 ,mem_usb_read_len 
+494e 1fe27200 copy pdata ,loopcnt 
+494f 203a4943 branch usb_rx_no_data ,blank 
+4950 d8a00c6e arg mem_usb_setup ,contw 
+4951 20404946 call usb_rx_read 
+4952 68008b24 fetch 1 ,mem_usb_read_len 
+4953 1fe67c07 sub pdata ,7 ,null 
+4954 20610000 rtn positive 
+
+usb_class_type:
+4955 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4956 1fe17e80 and_into 0x80 ,pdata 
+4957 c040495a beq in_device ,usb_in_device 
+4958 c0004962 beq out_device ,usb_out_device 
+4959 20202a8c branch assert 
+
+usb_in_device:
+495a 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+495b 1ff1fe00 rshift4 pdata ,pdata 
+495c 1fe37e00 rshift pdata ,pdata 
+495d 1fe17e03 and_into 0x03 ,pdata 
+495e c000496a beq standard_req ,usb_in_standard_req 
+495f c000c970 beq class_req ,usb_in_class_req 
+4960 c0014975 beq manufacturer_req ,usb_in_manufacturer_req 
+4961 20202a8c branch assert 
+
+usb_out_device:
+4962 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4963 1ff1fe00 rshift4 pdata ,pdata 
+4964 1fe37e00 rshift pdata ,pdata 
+4965 1fe17e03 and_into 0x03 ,pdata 
+4966 c0004976 beq standard_req ,usb_out_standard_req 
+4967 c000c97e beq class_req ,usb_out_class_req 
+4968 c0014983 beq manufacturer_req ,usb_out_manufacturer_req 
+4969 20202a8c branch assert 
+
+usb_in_standard_req:
+496a 68008c6f fetch 1 ,mem_usb_setup_brequest 
+496b c004498a beq get_configuration ,usb0_request_get_configuration 
+496c c00349a0 beq get_descriptor ,usb0_request_get_descriptor 
+496d c00549ea beq get_interface ,usb0_request_get_interface 
+496e c00049fc beq get_status ,usb0_request_get_status 
+496f 20204984 branch usb0_force_stall 
+
+usb_in_class_req:
+4970 68008c6f fetch 1 ,mem_usb_setup_brequest 
+4971 c0014a2f beq get_idle ,usb_get_idle 
+4972 c000ca33 beq get_report ,usb_get_report 
+4973 c001ca45 beq get_protocol ,usb_get_protocol_req 
+4974 20204984 branch usb0_force_stall 
+
+usb_in_manufacturer_req:
+4975 20204984 branch usb0_force_stall 
+
+usb_out_standard_req:
+4976 68008c6f fetch 1 ,mem_usb_setup_brequest 
+4977 c000ca4f beq clear_feature ,usb0_request_clear_feature 
+4978 c001ca79 beq set_feature ,usb0_request_set_feature 
+4979 c002caa3 beq set_address ,usb0_request_set_address 
+497a c004cabc beq set_configuration ,usb0_request_set_configuration 
+497b c005cad7 beq set_interface ,usb0_request_set_interface 
+497c c003c984 beq set_descriptor ,usb0_force_stall 
+497d 20204984 branch usb0_force_stall 
+
+usb_out_class_req:
+497e 68008c6f fetch 1 ,mem_usb_setup_brequest 
+497f c0054ae8 beq set_idle ,usb_set_idle 
+4980 c004caf9 beq set_report ,usb_set_report 
+4981 c005cb11 beq set_protocol ,usb_set_protocol_req 
+4982 20204984 branch usb0_force_stall 
+
+usb_out_manufacturer_req:
+4983 20204984 branch usb0_force_stall 
+
+usb0_force_stall:
+4984 68108a11 hfetch 1 ,core_usb_stall 
+4985 79207e00 set1 0 ,pdata 
+4986 60108a11 hstore 1 ,core_usb_stall 
+4987 20204988 branch usb0_reply_zerolen 
+
+usb0_reply_zerolen:
+4988 708a1240 jam 0x40 ,core_usb_clear 
+4989 20600000 rtn 
+
+usb0_request_get_configuration:
+498a 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+498b c0c04984 bne in_device ,usb0_force_stall 
+498c 68008c72 fetch 1 ,mem_usb_setup_windex 
+498d c0804984 bne 0 ,usb0_force_stall 
+498e 68008c73 fetch 1 ,mem_usb_setup_windex + 1 
+498f c0804984 bne 0 ,usb0_force_stall 
+4990 68008c74 fetch 1 ,mem_usb_setup_blength 
+4991 c080c984 bne 1 ,usb0_force_stall 
+4992 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+4993 c0804984 bne 0 ,usb0_force_stall 
+4994 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4995 c0804984 bne 0 ,usb0_force_stall 
+4996 68008c71 fetch 1 ,mem_usb_setup_bvalue + 1 
+4997 c0804984 bne 0 ,usb0_force_stall 
+4998 68008c6b fetch 1 ,mem_usb0_state 
+4999 c002499c beq dev_configured ,usb0_request_get_cfg_dev_cfg 
+499a c001c99e beq dev_address ,usb0_request_get_cfg_dev_addr 
+499b 20204984 branch usb0_force_stall 
+
+usb0_request_get_cfg_dev_cfg:
+499c da400001 arg 1 ,regb 
+499d 20204a14 branch usb_send_ones_packet 
+
+usb0_request_get_cfg_dev_addr:
+499e da400001 arg 1 ,regb 
+499f 20204a12 branch usb_send_zero_packet 
+
+usb0_request_get_descriptor:
+49a0 44fcc01f bpatch patch1f_1 ,mem_patch1f 
+49a1 793f8023 set0 mark_isstr ,mark 
+49a2 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+49a3 c000c9b6 beq dsc_device ,dsc_device_info 
+49a4 c00149cf beq dsc_config ,dsc_config_info 
+49a5 c001c9d2 beq dsc_string ,dsc_string_info 
+49a6 c010c9a9 beq dsc_hid ,dsc_hid_info 
+49a7 c01149e0 beq dsc_hid_report ,dsc_hid_report_info 
+49a8 20204984 branch usb0_force_stall 
+
+dsc_hid_info:
+49a9 700d4b00 jam 0 ,mem_usb_get_protocol_flag 
+49aa 68008c72 fetch 1 ,mem_usb_setup_windex 
+49ab c00049ae beq 0 ,dsc_hid_info_interface0 
+49ac c000c9b2 beq 1 ,dsc_hid_info_interface1 
+49ad 20204984 branch usb0_force_stall 
+
+dsc_hid_info_interface0:
+49ae da200b93 arg mem_confdesc + 19 ,rega 
+49af ea208000 ifetch 1 ,rega 
+49b0 98002400 iforce regb 
+49b1 20204b21 branch usb0_respond 
+
+dsc_hid_info_interface1:
+49b2 da200bac arg mem_confdesc + 44 ,rega 
+49b3 ea208000 ifetch 1 ,rega 
+49b4 98002400 iforce regb 
+49b5 20204b21 branch usb0_respond 
+
+dsc_device_info:
+49b6 68008d48 fetch 1 ,mem_usb_set_high_addr_flag 
+49b7 245a49c7 ncall usb_set_high_addr ,blank 
+49b8 58000b68 setarg mem_devicedesc 
+49b9 68088b68 fetcht 1 ,mem_devicedesc 
+
+dsc_info_set_data_len:
+49ba 60010d3f store 2 ,mem_dsc_info_data_pointer 
+49bb 60088d41 storet 1 ,mem_dsc_info_len 
+49bc 68008c74 fetch 1 ,mem_usb_setup_blength 
+49bd 98467c00 isub temp ,null 
+49be 242149c5 nbranch dsc_info_set_current_data_len ,positive 
+
+dsc_info_set_initial_data_len:
+49bf 68008d41 fetch 1 ,mem_dsc_info_len 
+
+dsc_info_set_data_size_completed:
+49c0 98002400 iforce regb 
+49c1 68010d3f fetch 2 ,mem_dsc_info_data_pointer 
+49c2 1fe0fe01 add pdata ,1 ,pdata 
+49c3 98002200 iforce rega 
+49c4 20204b21 branch usb0_respond 
+
+dsc_info_set_current_data_len:
+49c5 68008c74 fetch 1 ,mem_usb_setup_blength 
+49c6 202049c0 branch dsc_info_set_data_size_completed 
+
+usb_set_high_addr:
+49c7 68108a04 hfetch 1 ,core_usb_addr 
+49c8 245a49cb ncall usb0_set_addr ,blank 
+49c9 700d4800 jam 0 ,mem_usb_set_high_addr_flag 
+49ca 20600000 rtn 
+
+usb0_set_addr:
+49cb 68108a04 hfetch 1 ,core_usb_addr 
+49cc 79207e07 set1 7 ,pdata 
+49cd 60108a04 hstore 1 ,core_usb_addr 
+49ce 20600000 rtn 
+
+dsc_config_info:
+49cf 58000b80 setarg mem_confdesc 
+49d0 68088b80 fetcht 1 ,mem_confdesc 
+49d1 202049ba branch dsc_info_set_data_len 
+
+dsc_string_info:
+49d2 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+49d3 1fe67c03 sub pdata ,3 ,null 
+49d4 24214984 nbranch usb0_force_stall ,positive 
+49d5 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+49d6 da200be4 arg mem_string0 ,rega 
+49d7 c0004b1e beq 0 ,usb0_respond_length 
+49d8 79200023 set1 mark_isstr ,mark 
+49d9 da200be9 arg mem_string1 ,rega 
+49da c000cb1e beq 1 ,usb0_respond_length 
+49db da200c07 arg mem_string2 ,rega 
+49dc c0014b1e beq 2 ,usb0_respond_length 
+49dd da200c47 arg mem_string3 ,rega 
+49de c001cb1e beq 3 ,usb0_respond_length 
+49df 20600000 rtn 
+
+dsc_hid_report_info:
+49e0 68010c72 fetch 2 ,mem_usb_setup_windex 
+49e1 c000c9e5 beq 1 ,dsc_hid_report_info0 
+49e2 68010b7c fetch 2 ,mem_hidreportdesc_kb 
+49e3 1fe22200 copy pdata ,rega 
+49e4 20204b1e branch usb0_respond_length 
+
+dsc_hid_report_info0:
+49e5 700d4501 jam 1 ,mem_usb_device_enumeration_endflag 
+49e6 700d3601 jam usb_got_report_req ,mem_usb_state 
+49e7 68010b7e fetch 2 ,mem_hidreportdesc_m 
+49e8 1fe22200 copy pdata ,rega 
+49e9 20204b1e branch usb0_respond_length 
+
+usb0_request_get_interface:
+49ea 68008c6b fetch 1 ,mem_usb0_state 
+49eb c0824984 bne dev_configured ,usb0_force_stall 
+49ec 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+49ed c0c0c984 bne in_interface ,usb0_force_stall 
+49ee 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+49ef c0804984 bne 0 ,usb0_force_stall 
+49f0 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+49f1 c0804984 bne 0 ,usb0_force_stall 
+49f2 68008c74 fetch 1 ,mem_usb_setup_blength 
+49f3 c080c984 bne 1 ,usb0_force_stall 
+49f4 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+49f5 c0804984 bne 0 ,usb0_force_stall 
+49f6 68008c72 fetch 1 ,mem_usb_setup_windex 
+49f7 c0804984 bne 0 ,usb0_force_stall 
+49f8 68008c73 fetch 1 ,mem_usb_setup_windex + 1 
+49f9 c0804984 bne 0 ,usb0_force_stall 
+49fa da400001 arg 1 ,regb 
+49fb 20204a12 branch usb_send_zero_packet 
+
+usb0_request_get_status:
+49fc 68008c6b fetch 1 ,mem_usb0_state 
+49fd c0014984 beq dev_default ,usb0_force_stall 
+49fe 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+49ff c0804984 bne 0 ,usb0_force_stall 
+4a00 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+4a01 c0804984 bne 0 ,usb0_force_stall 
+4a02 68008c74 fetch 1 ,mem_usb_setup_blength 
+4a03 c0814984 bne 2 ,usb0_force_stall 
+4a04 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+4a05 c0804984 bne 0 ,usb0_force_stall 
+4a06 68008c73 fetch 1 ,mem_usb_setup_windex + 1 
+4a07 c0804984 bne 0 ,usb0_force_stall 
+4a08 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4a09 c0404a0d beq in_device ,usb0_get_status_in_device 
+4a0a c040ca18 beq in_interface ,usb0_get_status_in_interface 
+4a0b c0414a1c beq in_endpoint ,usb0_get_status_in_endpoint 
+4a0c 20204984 branch usb0_force_stall 
+
+usb0_get_status_in_device:
+4a0d 68008c72 fetch 1 ,mem_usb_setup_windex 
+4a0e c0804984 bne 0 ,usb0_force_stall 
+4a0f da400002 arg 2 ,regb 
+4a10 68008d39 fetch 1 ,mem_usb_remote_wakeup 
+4a11 c000ca16 beq 0x01 ,usb_send_two_packet 
+
+usb_send_zero_packet:
+4a12 da200c65 arg mem_usb_zero_packet ,rega 
+4a13 20204b21 branch usb0_respond 
+
+usb_send_ones_packet:
+4a14 da200c67 arg mem_usb_ones_packet ,rega 
+4a15 20204b21 branch usb0_respond 
+
+usb_send_two_packet:
+4a16 da200c69 arg mem_usb_two_packet ,rega 
+4a17 20204b21 branch usb0_respond 
+
+usb0_get_status_in_interface:
+4a18 68008c6b fetch 1 ,mem_usb0_state 
+4a19 c0824984 bne dev_configured ,usb0_force_stall 
+4a1a da400002 arg 2 ,regb 
+4a1b 20204a12 branch usb_send_zero_packet 
+
+usb0_get_status_in_endpoint:
+4a1c 68008c6b fetch 1 ,mem_usb0_state 
+4a1d c0824984 bne dev_configured ,usb0_force_stall 
+4a1e 68008c72 fetch 1 ,mem_usb_setup_windex 
+4a1f c040ca29 beq in_ep1 ,usb0_get_status_in_ep_in_ep1 
+4a20 c0414a2b beq in_ep2 ,usb0_get_status_in_ep_in_ep2 
+4a21 c041ca2d beq in_ep3 ,usb0_get_status_in_ep_in_ep3 
+4a22 1fe17e7f and_into 0x7f ,pdata 
+4a23 c0004a25 beq 0x00 ,usb0_get_status_in_ep_in_ep0 
+4a24 20204984 branch usb0_force_stall 
+
+usb0_get_status_in_ep_in_ep0:
+4a25 68008d3b fetch 1 ,mem_usb_ep0_stall_status 
+
+usb0_get_status_in_ep_in_ack:
+4a26 da400002 arg 2 ,regb 
+4a27 c000ca14 beq 1 ,usb_send_ones_packet 
+4a28 20204a12 branch usb_send_zero_packet 
+
+usb0_get_status_in_ep_in_ep1:
+4a29 68008d3c fetch 1 ,mem_usb_ep1_stall_status 
+4a2a 20204a26 branch usb0_get_status_in_ep_in_ack 
+
+usb0_get_status_in_ep_in_ep2:
+4a2b 68008d3d fetch 1 ,mem_usb_ep2_stall_status 
+4a2c 20204a26 branch usb0_get_status_in_ep_in_ack 
+
+usb0_get_status_in_ep_in_ep3:
+4a2d 68008d3e fetch 1 ,mem_usb_ep3_stall_status 
+4a2e 20204a26 branch usb0_get_status_in_ep_in_ack 
+
+usb_get_idle:
+4a2f 700d4c01 jam 1 ,mem_usb_idle_flag 
+4a30 da200d4d arg mem_usb_idle_rate ,rega 
+4a31 da400001 arg 1 ,regb 
+4a32 20204b21 branch usb0_respond 
+
+usb_get_report:
+4a33 68010c70 fetch 2 ,mem_usb_setup_bvalue 
+4a34 d84001ba arg pc_get_report ,temp 
+4a35 98467c00 isub temp ,null 
+4a36 2422c984 nbranch usb0_force_stall ,zero 
+4a37 793f8023 set0 mark_isstr ,mark 
+
+usb_get_report_dispose:
+4a38 68008d42 fetch 1 ,mem_usb0_data_ready_report 
+4a39 243a4a42 nbranch usb_get_report_data_success ,blank 
+4a3a 700cf600 jam pc_get_nondata ,mem_usb0_get_report_data 
+
+usb_get_report_send_data:
+4a3b 68008c74 fetch 1 ,mem_usb_setup_blength 
+4a3c 98002400 iforce regb 
+4a3d da200cf6 arg mem_usb0_get_report_data ,rega 
+4a3e 20404b21 call usb0_respond 
+
+usb_get_report_data_release:
+4a3f d8a00cf6 arg mem_usb0_get_report_data ,contw 
+4a40 df200008 arg 8 ,loopcnt 
+4a41 20207ec6 branch memset0 
+
+usb_get_report_data_success:
+4a42 700d4200 jam 0 ,mem_usb0_data_ready_report 
+4a43 700cf601 jam pc_get_data ,mem_usb0_get_report_data 
+4a44 20204a3b branch usb_get_report_send_data 
+
+usb_get_protocol_req:
+4a45 68008c74 fetch 1 ,mem_usb_setup_blength 
+4a46 c080c984 bne 1 ,usb0_force_stall 
+4a47 700d4b01 jam 1 ,mem_usb_get_protocol_flag 
+4a48 da400001 arg 1 ,regb 
+4a49 68008d49 fetch 1 ,mem_usb_set_protocol_value 
+4a4a c0004a4d beq 0 ,usb_get_report_protocol 
+4a4b c000ca4e beq 1 ,usb_get_boot_protocol 
+4a4c 20204a12 branch usb_send_zero_packet 
+
+usb_get_report_protocol:
+4a4d 20204a14 branch usb_send_ones_packet 
+
+usb_get_boot_protocol:
+4a4e 20204a12 branch usb_send_zero_packet 
+
+usb0_request_clear_feature:
+4a4f 68008c6b fetch 1 ,mem_usb0_state 
+4a50 c0824984 bne dev_configured ,usb0_force_stall 
+4a51 68008c74 fetch 1 ,mem_usb_setup_blength 
+4a52 c0804984 bne 0 ,usb0_force_stall 
+4a53 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+4a54 c0804984 bne 0 ,usb0_force_stall 
+4a55 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+4a56 c0804984 bne 0 ,usb0_force_stall 
+4a57 68008c73 fetch 1 ,mem_usb_setup_windex + 1 
+4a58 c0804984 bne 0 ,usb0_force_stall 
+4a59 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4a5a c0004a5e beq out_device ,usb0_request_clear_feature_out_device 
+4a5b c000ca66 beq out_interface ,usb0_request_clear_feature_out_interface 
+4a5c c0014a67 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
+4a5d 20204984 branch usb0_force_stall 
+
+usb0_request_clear_feature_out_device:
+4a5e 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4a5f c080c984 bne device_remote_wakeup ,usb0_force_stall 
+4a60 68108a00 hfetch 1 ,core_usb_config 
+4a61 793ffe07 set0 7 ,pdata 
+4a62 60108a00 hstore 1 ,core_usb_config 
+4a63 700d3900 jam 0 ,mem_usb_remote_wakeup 
+4a64 700d3a01 jam 1 ,mem_usb_clear_remote_wakeup 
+4a65 20204988 branch usb0_reply_zerolen 
+
+usb0_request_clear_feature_out_interface:
+4a66 20204984 branch usb0_force_stall 
+
+usb0_request_clear_feature_out_endpoint:
+4a67 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4a68 c0804984 bne endpoint_halt ,usb0_force_stall 
+4a69 68008c72 fetch 1 ,mem_usb_setup_windex 
+4a6a c040ca72 beq in_ep1 ,usb0_force_stall_ep1_in_off 
+4a6b c0414a75 beq in_ep2 ,usb0_force_stall_ep2_in_off 
+4a6c c041ca77 beq in_ep3 ,usb0_force_stall_ep3_in_off 
+4a6d 1fe17e7f and_into 0x7f ,pdata 
+4a6e c0004a70 beq 0x00 ,usb0_force_stall_ep0_in_off 
+4a6f 20204984 branch usb0_force_stall 
+
+usb0_force_stall_ep0_in_off:
+4a70 700d3b00 jam 0 ,mem_usb_ep0_stall_status 
+4a71 20204988 branch usb0_reply_zerolen 
+
+usb0_force_stall_ep1_in_off:
+4a72 700d3c00 jam 0 ,mem_usb_ep1_stall_status 
+
+usb0_force_stall_ep1_in_off_reply:
+4a73 700d5301 jam 1 ,mem_usb_clear_halt 
+4a74 20204988 branch usb0_reply_zerolen 
+
+usb0_force_stall_ep2_in_off:
+4a75 700d3d00 jam 0 ,mem_usb_ep2_stall_status 
+4a76 20204a73 branch usb0_force_stall_ep1_in_off_reply 
+
+usb0_force_stall_ep3_in_off:
+4a77 700d3e00 jam 0 ,mem_usb_ep3_stall_status 
+4a78 20204a73 branch usb0_force_stall_ep1_in_off_reply 
+
+usb0_request_set_feature:
+4a79 68008c74 fetch 1 ,mem_usb_setup_blength 
+4a7a c0804984 bne 0 ,usb0_force_stall 
+4a7b 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+4a7c c0804984 bne 0 ,usb0_force_stall 
+4a7d 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4a7e c0004a82 beq out_device ,usb0_request_set_feature_out_device 
+4a7f c000ca8f beq out_interface ,usb0_request_set_feature_out_interface 
+4a80 c0014a90 beq out_endpoint ,usb0_request_set_feature_out_endpoint 
+4a81 20204984 branch usb0_force_stall 
+
+usb0_request_set_feature_out_device:
+4a82 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4a83 c080c984 bne device_remote_wakeup ,usb0_force_stall 
+4a84 68108a00 hfetch 1 ,core_usb_config 
+4a85 79207e07 set1 7 ,pdata 
+4a86 60108a00 hstore 1 ,core_usb_config 
+4a87 700d3901 jam 1 ,mem_usb_remote_wakeup 
+4a88 700d3603 jam usb_sleep ,mem_usb_state 
+4a89 700d4300 jam 0 ,mem_usb_tx_win_enable 
+4a8a 20404988 call usb0_reply_zerolen 
+
+usb_wakeup_timer_reinit:
+4a8b 20407f15 call timer_reinit 
+4a8c 58001388 setarg timer_wakeup_delay 
+4a8d d8e0000f arg timer_wakeup ,queue 
+4a8e 20207f08 branch timer_init 
+
+usb0_request_set_feature_out_interface:
+4a8f 20204984 branch usb0_force_stall 
+
+usb0_request_set_feature_out_endpoint:
+4a90 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4a91 c0804984 bne endpoint_halt ,usb0_force_stall 
+4a92 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+4a93 c0804984 bne 0 ,usb0_force_stall 
+4a94 68008c72 fetch 1 ,mem_usb_setup_windex 
+4a95 c040ca9d beq in_ep1 ,usb0_force_stall_ep1_in_on 
+4a96 c0414a9f beq in_ep2 ,usb0_force_stall_ep2_in_on 
+4a97 c041caa1 beq in_ep3 ,usb0_force_stall_ep3_in_on 
+4a98 1fe17e7f and_into 0x7f ,pdata 
+4a99 c0004a9b beq 0x00 ,usb0_force_stall_ep0_in_on 
+4a9a 20204984 branch usb0_force_stall 
+
+usb0_force_stall_ep0_in_on:
+4a9b 700d3b01 jam 1 ,mem_usb_ep0_stall_status 
+4a9c 20204988 branch usb0_reply_zerolen 
+
+usb0_force_stall_ep1_in_on:
+4a9d 700d3c01 jam 1 ,mem_usb_ep1_stall_status 
+4a9e 20204988 branch usb0_reply_zerolen 
+
+usb0_force_stall_ep2_in_on:
+4a9f 700d3d01 jam 1 ,mem_usb_ep2_stall_status 
+4aa0 20204988 branch usb0_reply_zerolen 
+
+usb0_force_stall_ep3_in_on:
+4aa1 700d3e01 jam 1 ,mem_usb_ep3_stall_status 
+4aa2 20204988 branch usb0_reply_zerolen 
+
+usb0_request_set_address:
+4aa3 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4aa4 c0804984 bne out_device ,usb0_force_stall 
+4aa5 68008c72 fetch 1 ,mem_usb_setup_windex 
+4aa6 c0804984 bne 0 ,usb0_force_stall 
+4aa7 68008c73 fetch 1 ,mem_usb_setup_windex + 1 
+4aa8 c0804984 bne 0 ,usb0_force_stall 
+4aa9 68008c74 fetch 1 ,mem_usb_setup_blength 
+4aaa c0804984 bne 0 ,usb0_force_stall 
+4aab 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+4aac c0804984 bne 0 ,usb0_force_stall 
+4aad 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+4aae c0804984 bne 0 ,usb0_force_stall 
+4aaf 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4ab0 1fe17e80 and_into 0x80 ,pdata 
+4ab1 c0804984 bne 0 ,usb0_force_stall 
+4ab2 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4ab3 c0804aba bne 0 ,usb_usb0_state_set_dev_addr 
+
+usb_usb0_state_set_dev_default:
+4ab4 700c6b02 jam dev_default ,mem_usb0_state 
+
+usb0_request_set_wait_address:
+4ab5 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4ab6 60108a04 hstore 1 ,core_usb_addr 
+4ab7 20404988 call usb0_reply_zerolen 
+4ab8 700d4801 jam 1 ,mem_usb_set_high_addr_flag 
+4ab9 20600000 rtn 
+
+usb_usb0_state_set_dev_addr:
+4aba 700c6b03 jam dev_address ,mem_usb0_state 
+4abb 20204ab5 branch usb0_request_set_wait_address 
+
+usb0_request_set_configuration:
+4abc 68008c6b fetch 1 ,mem_usb0_state 
+4abd c0014984 beq dev_default ,usb0_force_stall 
+4abe 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4abf c0804984 bne out_device ,usb0_force_stall 
+4ac0 68008c72 fetch 1 ,mem_usb_setup_windex 
+4ac1 c0804984 bne 0 ,usb0_force_stall 
+4ac2 68008c73 fetch 1 ,mem_usb_setup_windex + 1 
+4ac3 c0804984 bne 0 ,usb0_force_stall 
+4ac4 68008c74 fetch 1 ,mem_usb_setup_blength 
+4ac5 c0804984 bne 0 ,usb0_force_stall 
+4ac6 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+4ac7 c0804984 bne 0 ,usb0_force_stall 
+4ac8 68008c71 fetch 1 ,mem_usb_setup_bvalue + 1 
+4ac9 c0804984 bne 0 ,usb0_force_stall 
+4aca 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4acb 1fe67c01 sub pdata ,usb_max_num_cfg ,null 
+4acc 24214984 nbranch usb0_force_stall ,positive 
+4acd 68008c6b fetch 1 ,mem_usb0_state 
+4ace c001cad1 beq dev_address ,usb0_request_set_cfg_addr_state 
+4acf c0024ad1 beq dev_configured ,usb0_request_set_cfg_cfg_state 
+4ad0 20204984 branch usb0_force_stall 
+
+usb0_request_set_cfg_addr_state:
+
+usb0_request_set_cfg_cfg_state:
+4ad1 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4ad2 c0004ad5 beq 0 ,usb0_request_set_cfg_stay_addr_state 
+4ad3 700c6b04 jam dev_configured ,mem_usb0_state 
+4ad4 20204988 branch usb0_reply_zerolen 
+
+usb0_request_set_cfg_stay_addr_state:
+4ad5 700c6b03 jam dev_address ,mem_usb0_state 
+4ad6 20204988 branch usb0_reply_zerolen 
+
+usb0_request_set_interface:
+4ad7 68008c6b fetch 1 ,mem_usb0_state 
+4ad8 c0824984 bne dev_configured ,usb0_force_stall 
+4ad9 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+4ada c080c984 bne out_interface ,usb0_force_stall 
+4adb 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4adc c0804984 bne 0 ,usb0_force_stall 
+4add 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+4ade c0804984 bne 0 ,usb0_force_stall 
+4adf 68008c74 fetch 1 ,mem_usb_setup_blength 
+4ae0 c0804984 bne 0 ,usb0_force_stall 
+4ae1 68008c75 fetch 1 ,mem_usb_setup_blengthh 
+4ae2 c0804984 bne 0 ,usb0_force_stall 
+4ae3 68008c72 fetch 1 ,mem_usb_setup_windex 
+4ae4 c0804984 bne 0 ,usb0_force_stall 
+4ae5 68008c73 fetch 1 ,mem_usb_setup_windex + 1 
+4ae6 c0804984 bne 0 ,usb0_force_stall 
+4ae7 20204988 branch usb0_reply_zerolen 
+
+usb_set_idle:
+4ae8 700d4c01 jam 1 ,mem_usb_idle_flag 
+4ae9 68008c71 fetch 1 ,mem_usb_setup_bvalueh 
+4aea 60008d4d store 1 ,mem_usb_idle_rate 
+4aeb 68008c72 fetch 1 ,mem_usb_setup_windex 
+4aec 1fe67c01 sub pdata ,1 ,null 
+4aed 2042caf5 call usb_clear_remote_wakeup_set0 ,zero 
+4aee 68008d36 fetch 1 ,mem_usb_state 
+4aef c0824988 bne usb_resume ,usb0_reply_zerolen 
+4af0 700d3602 jam usb_connected ,mem_usb_state 
+4af1 20404988 call usb0_reply_zerolen 
+4af2 20007530 nop 30000 
+4af3 20007530 nop 30000 
+4af4 20600000 rtn 
+
+usb_clear_remote_wakeup_set0:
+4af5 700d4501 jam 1 ,mem_usb_device_enumeration_endflag 
+4af6 700d3a00 jam 0 ,mem_usb_clear_remote_wakeup 
+4af7 700d3604 jam usb_resume ,mem_usb_state 
+4af8 20600000 rtn 
+
+usb_set_report:
+4af9 700d5001 jam 1 ,mem_usb0_get_set_report 
+4afa 20404b03 call usb_set_report_resume_judge 
+4afb 68010c70 fetch 2 ,mem_usb_setup_bvalue 
+4afc 60010d4e store 2 ,mem_usb_setup_bvalue_temp 
+4afd 68008c74 fetch 1 ,mem_usb_setup_blength 
+4afe 98007200 iforce loopcnt 
+4aff d8c00c76 arg mem_usb0_setup ,contr 
+4b00 d8a00cb6 arg mem_usb0_set_report_data ,contw 
+4b01 20407f01 call memcpy 
+4b02 20204988 branch usb0_reply_zerolen 
+
+usb_set_report_resume_judge:
+4b03 68010c70 fetch 2 ,mem_usb_setup_bvalue 
+4b04 d8400200 arg pc_set_report_bvalue ,temp 
+4b05 98467c00 isub temp ,null 
+4b06 24628000 nrtn zero 
+4b07 68010c72 fetch 2 ,mem_usb_setup_windex 
+4b08 d8400000 arg pc_set_report_windex ,temp 
+4b09 98467c00 isub temp ,null 
+4b0a 24628000 nrtn zero 
+4b0b 68010c74 fetch 2 ,mem_usb_setup_blength 
+4b0c d8400001 arg pc_set_report_blength ,temp 
+4b0d 98467c00 isub temp ,null 
+4b0e 24628000 nrtn zero 
+4b0f 700d4301 jam 1 ,mem_usb_tx_win_enable 
+4b10 20600000 rtn 
+
+usb_set_protocol_req:
+4b11 68008c74 fetch 1 ,mem_usb_setup_blength 
+4b12 c0804984 bne 0 ,usb0_force_stall 
+4b13 68008c70 fetch 1 ,mem_usb_setup_bvalue 
+4b14 c0004b17 beq boot_protocol ,usb_set_boot_protocol 
+4b15 c000cb1a beq report_protocol ,usb_set_report_protocol 
+4b16 20204984 branch usb0_force_stall 
+
+usb_set_boot_protocol:
+4b17 700d4a00 jam 0 ,mem_usb_set_protocol_status 
+4b18 700d4901 jam 1 ,mem_usb_set_protocol_value 
+4b19 20204988 branch usb0_reply_zerolen 
+
+usb_set_report_protocol:
+4b1a 700d4401 jam 1 ,mem_usb_tx_mac_enable 
+4b1b 700d4a01 jam 1 ,mem_usb_set_protocol_status 
+4b1c 700d4900 jam 0 ,mem_usb_set_protocol_value 
+4b1d 20204988 branch usb0_reply_zerolen 
+
+usb0_respond_length:
+4b1e ea208000 ifetch 1 ,rega 
+4b1f 98002400 iforce regb 
+4b20 1a20a201 increase 1 ,rega 
+
+usb0_respond:
+4b21 44fd401f bpatch patch1f_2 ,mem_patch1f 
+4b22 c591cb2c bmark0 mark_isstr ,usb0_respond0 
+4b23 1a40fe01 add regb ,1 ,pdata 
+4b24 1fe3fe00 lshift pdata ,pdata 
+4b25 60108a18 hstore 1 ,core_usb_dfifo0 
+4b26 708a1803 jam 3 ,core_usb_dfifo0 
+4b27 68008c74 fetch 1 ,mem_usb_setup_blength 
+4b28 1fe0fffe increase -2 ,pdata 
+4b29 1fe37e00 rshift pdata ,pdata 
+4b2a 60008c74 store 1 ,mem_usb_setup_blength 
+4b2b c0004b35 beq 0 ,usb_no_respond_data 
+
+usb0_respond0:
+4b2c 68010c74 fetch 2 ,mem_usb_setup_blength 
+4b2d 9a467c00 isub regb ,null 
+4b2e 20214b30 branch usb0_respond1 ,positive 
+4b2f 1fe22400 copy pdata ,regb 
+
+usb0_respond1:
+4b30 1a227e00 deposit rega 
+4b31 60010b65 store 2 ,mem_bufptr 
+4b32 1a427e00 deposit regb 
+4b33 60008b67 store 1 ,mem_remain 
+4b34 20204b37 branch usb0_tx 
+
+usb_no_respond_data:
+4b35 d8e00000 arg 0 ,queue 
+4b36 20204b57 branch usb_trig 
+
+usb0_tx:
+4b37 44fdc01f bpatch patch1f_3 ,mem_patch1f 
+4b38 68008b67 fetch 1 ,mem_remain 
+4b39 207a0000 rtn blank 
+4b3a 1fe27200 copy pdata ,loopcnt 
+4b3b 1fe67c40 sub pdata ,ep0_packet_size ,null 
+4b3c 20214b3e branch usb0_tx_info ,positive 
+4b3d df200040 arg ep0_packet_size ,loopcnt 
+
+usb0_tx_info:
+4b3e 68008b67 fetch 1 ,mem_remain 
+4b3f 9f267e00 isub loopcnt ,pdata 
+4b40 60008b67 store 1 ,mem_remain 
+4b41 68010b65 fetch 2 ,mem_bufptr 
+4b42 1fe20c00 copy pdata ,contr 
+
+usb0_tx0:
+4b43 e8c08000 ifetch 1 ,contr 
+4b44 60108a18 hstore 1 ,core_usb_dfifo0 
+4b45 c591cb47 bmark0 mark_isstr ,usb0_tx1 
+4b46 708a1800 jam 0 ,core_usb_dfifo0 
+
+usb0_tx1:
+4b47 c2004b43 loop usb0_tx0 
+4b48 18c27e00 copy contr ,pdata 
+4b49 60010b65 store 2 ,mem_bufptr 
+4b4a d8e00000 arg 0 ,queue 
+4b4b 20404b57 call usb_trig 
+4b4c 68008b67 fetch 1 ,mem_remain 
+4b4d 247a0000 nrtn blank 
+4b4e 68008d36 fetch 1 ,mem_usb_state 
+4b4f c1808000 rtnne usb_got_report_req 
+4b50 700d3602 jam usb_connected ,mem_usb_state 
+4b51 20600000 rtn 
+
+usb_tx_ep1:
+4b52 da208a19 arg core_usb_dfifo1 ,rega 
+4b53 d8e00001 arg 1 ,queue 
+
+usb_tx_loop:
+4b54 e8c08000 ifetch 1 ,contr 
+4b55 e2208000 istore 1 ,rega 
+4b56 c2004b54 loop usb_tx_loop 
+
+usb_trig:
+4b57 58000000 setarg 0 
+4b58 f9207e00 qset1 pdata 
+4b59 60108a10 hstore 1 ,core_usb_trig 
+4b5a 68088d37 fetcht 1 ,mem_usb_tx_wait 
+4b5b 9841fe00 ior temp ,pdata 
+4b5c 60008d37 store 1 ,mem_usb_tx_wait 
+4b5d 20600000 rtn 
+
+usb_tx_ep2:
+4b5e d8e00002 arg 2 ,queue 
+4b5f da208a1a arg core_usb_dfifo2 ,rega 
+4b60 20204b54 branch usb_tx_loop 
+
+usb_tx:
+4b61 44fe401f bpatch patch1f_4 ,mem_patch1f 
+4b62 68008d38 fetch 1 ,mem_usb_tx_enable 
+4b63 207a0000 rtn blank 
+4b64 68008d37 fetch 1 ,mem_usb_tx_wait 
+4b65 243a4bac nbranch usb_inwake_state_tx_dispose ,blank 
+4b66 68008d45 fetch 1 ,mem_usb_device_enumeration_endflag 
+4b67 203a4b86 branch usb_tx_fifo_release ,blank 
+4b68 68008d36 fetch 1 ,mem_usb_state 
+4b69 c001cbbf beq usb_sleep ,usb_windows_wakeup 
+4b6a c0814b86 bne usb_connected ,usb_tx_fifo_release 
+4b6b 68008d3a fetch 1 ,mem_usb_clear_remote_wakeup 
+4b6c 243a4b86 nbranch usb_tx_fifo_release ,blank 
+4b6d 20404b6f call usb_tx_data_ep1 
+4b6e 20204b7a branch usb_tx_data_ep2 
+
+usb_tx_data_ep1:
+4b6f 68008d38 fetch 1 ,mem_usb_tx_enable 
+4b70 c4008000 rtnbit0 1 
+4b71 68008d37 fetch 1 ,mem_usb_tx_wait 
+4b72 c3808000 rtnbit1 1 
+4b73 68008d38 fetch 1 ,mem_usb_tx_enable 
+4b74 793ffe01 set0 1 ,pdata 
+4b75 60008d38 store 1 ,mem_usb_tx_enable 
+4b76 68008d51 fetch 1 ,mem_usb_ep1_data 
+4b77 207a0000 rtn blank 
+4b78 c0084ba8 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+4b79 20202a8c branch assert 
+
+usb_tx_data_ep2:
+4b7a 68008d38 fetch 1 ,mem_usb_tx_enable 
+4b7b c4010000 rtnbit0 2 
+4b7c 68008d37 fetch 1 ,mem_usb_tx_wait 
+4b7d c3810000 rtnbit1 2 
+4b7e 68008d38 fetch 1 ,mem_usb_tx_enable 
+4b7f 793ffe02 set0 2 ,pdata 
+4b80 60008d38 store 1 ,mem_usb_tx_enable 
+4b81 68008d52 fetch 1 ,mem_usb_ep2_data 
+4b82 207a0000 rtn blank 
+4b83 c0104b89 beq usb_ep2_ms ,usb_tx_ms_data 
+4b84 c010cba4 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
+4b85 20202a8c branch assert 
+
+usb_tx_fifo_release:
+4b86 d8a00d54 arg mem_usb_mouse_data ,contw 
+4b87 df200006 arg 6 ,loopcnt 
+4b88 20207ec6 branch memset0 
+
+usb_tx_ms_data:
+4b89 68008d4c fetch 1 ,mem_usb_idle_flag 
+4b8a 68088d4b fetcht 1 ,mem_usb_get_protocol_flag 
+4b8b 98417e00 iand temp ,pdata 
+4b8c 203a4ba0 branch usb_tx_ms_data_normal_mode ,blank 
+4b8d 68088d4a fetcht 1 ,mem_usb_set_protocol_status 
+4b8e 9840fe00 iadd temp ,pdata 
+4b8f c000cb91 beq mac_boot_mode ,usb_tx_ms_data_mac_boot_mode 
+4b90 20204ba0 branch usb_tx_ms_data_normal_mode 
+
+usb_tx_ms_data_mac_boot_mode:
+4b91 700d5200 jam 0 ,mem_usb_ep2_data 
+
+usb_tx_ms_data_mac_boot_regroup:
+4b92 68008d55 fetch 1 ,mem_usb_mouse_data + 1 
+4b93 c0014ba1 beq r_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+4b94 c001cba1 beq lr_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+4b95 68008d55 fetch 1 ,mem_usb_mouse_data + 1 
+4b96 60008d54 store 1 ,mem_usb_mouse_data 
+4b97 68008d56 fetch 1 ,mem_usb_mouse_data + 2 
+4b98 e0a08000 istore 1 ,contw 
+4b99 68008d58 fetch 1 ,mem_usb_mouse_data + 4 
+4b9a e0a08000 istore 1 ,contw 
+4b9b 68008d5a fetch 1 ,mem_usb_mouse_data + 6 
+4b9c e0a08000 istore 1 ,contw 
+4b9d df200004 arg 4 ,loopcnt 
+4b9e d8c00d54 arg mem_usb_mouse_data ,contr 
+4b9f 20204b5e branch usb_tx_ep2 
+
+usb_tx_ms_data_normal_mode:
+4ba0 700d5200 jam 0 ,mem_usb_ep2_data 
+
+usb_tx_mac_boot_ms_regroup_r_or_lrkey:
+4ba1 df200008 arg 8 ,loopcnt 
+4ba2 d8c00d54 arg mem_usb_mouse_data ,contr 
+4ba3 20204b5e branch usb_tx_ep2 
+
+usb_tx_kb_multikey_data:
+4ba4 700d5200 jam 0 ,mem_usb_ep2_data 
+4ba5 df200003 arg 3 ,loopcnt 
+4ba6 d8c00d74 arg mem_usb_kb_multikey ,contr 
+4ba7 20204b5e branch usb_tx_ep2 
+
+usb_tx_kb_normal_data:
+4ba8 700d5100 jam 0 ,mem_usb_ep1_data 
+4ba9 df200008 arg 8 ,loopcnt 
+4baa d8c00d64 arg mem_usb_kb_data ,contr 
+4bab 20204b52 branch usb_tx_ep1 
+
+usb_inwake_state_tx_dispose:
+4bac 68008d36 fetch 1 ,mem_usb_state 
+4bad c001cbb0 beq usb_sleep ,usb_clear_tx_wait 
+4bae c0014bb2 beq usb_connected ,usb_mac_wakeup_trig 
+4baf 20600000 rtn 
+
+usb_clear_tx_wait:
+4bb0 700d3700 jam 0 ,mem_usb_tx_wait 
+4bb1 20600000 rtn 
+
+usb_mac_wakeup_trig:
+4bb2 68108a00 hfetch 1 ,core_usb_config 
+4bb3 79207e07 set1 7 ,pdata 
+4bb4 60108a00 hstore 1 ,core_usb_config 
+4bb5 700d4701 jam 1 ,mem_usb_mac_wakeup_trig 
+4bb6 20600000 rtn 
+
+usb_mac_wakeup_judge:
+4bb7 68008d36 fetch 1 ,mem_usb_state 
+4bb8 c1018000 rtneq usb_sleep 
+4bb9 c0014bbb beq usb_connected ,usb_mac_wakeup 
+4bba 20600000 rtn 
+
+usb_mac_wakeup:
+4bbb 68008d47 fetch 1 ,mem_usb_mac_wakeup_trig 
+4bbc 207a0000 rtn blank 
+4bbd 700d4601 jam 1 ,mem_usb_wakestate_onetime_flag 
+4bbe 20204bc2 branch usb_wakeup 
+
+usb_windows_wakeup:
+4bbf d8e0000f arg timer_wakeup ,queue 
+4bc0 20407f16 call timer_check 
+4bc1 247a0000 nrtn blank 
+
+usb_wakeup:
+4bc2 68108a00 hfetch 1 ,core_usb_config 
+4bc3 c4038000 rtnbit0 7 
+4bc4 708a00fc jam 0xfc ,core_usb_config 
+4bc5 20007530 nop 30000 
+4bc6 708a003c jam 0x3c ,core_usb_config 
+4bc7 20600000 rtn 
+
+hci_rx_h4:
+4bc8 44fec01f bpatch patch1f_5 ,mem_patch1f 
+4bc9 6800c1ce fetch 1 ,mem_hci_cmd 
+4bca 247a0000 nrtn blank 
+
+hci_rx_h4_1:
+4bcb 20404bce call hci_h4_parse_packet 
+4bcc 24544be6 ncall h4_rx_discard_packet ,user 
+4bcd 20600000 rtn 
+
+hci_h4_parse_packet:
+4bce 44ff401f bpatch patch1f_6 ,mem_patch1f 
+4bcf 18622200 copy contru ,rega 
+4bd0 d8400004 arg 4 ,temp 
+4bd1 e8608000 ifetch 1 ,contru 
+4bd2 c000cbd8 beq hci_h4_type_cmd ,hci_h4_parse_packet_wait_len 
+4bd3 18408401 increase 1 ,temp 
+4bd4 c0014bd8 beq hci_h4_type_acl ,hci_h4_parse_packet_wait_len 
+4bd5 18627e00 copy contru ,pdata 
+4bd6 60110058 hstore 2 ,core_uart_rrptr 
+4bd7 20600000 rtn 
+
+hci_h4_parse_packet_wait_len:
+4bd8 68110112 hfetch 2 ,core_uart_rxitems 
+4bd9 98467c00 isub temp ,null 
+4bda 24214bd8 nbranch hci_h4_parse_packet_wait_len ,positive 
+4bdb 78547c00 disable user 
+4bdc 1a220600 copy rega ,contru 
+4bdd 20404bee call h4_get_rx_payload_len 
+4bde 98408400 iadd temp ,temp 
+
+hci_h4_parse_packet_wait:
+4bdf 68110112 hfetch 2 ,core_uart_rxitems 
+4be0 98467c00 isub temp ,null 
+4be1 24214bdf nbranch hci_h4_parse_packet_wait ,positive 
+4be2 1a220600 copy rega ,contru 
+4be3 e8608000 ifetch 1 ,contru 
+4be4 c000cc3f beq hci_h4_type_cmd ,process_hci_cmd 
+4be5 20202a8c branch assert 
+
+h4_rx_discard_packet:
+4be6 44ffc01f bpatch patch1f_7 ,mem_patch1f 
+4be7 68110058 hfetch 2 ,core_uart_rrptr 
+4be8 98000600 iforce contru 
+4be9 20404bee call h4_get_rx_payload_len 
+4bea 98608600 iadd contru ,contru 
+4beb 18627e00 deposit contru 
+4bec 60110058 hstore 2 ,core_uart_rrptr 
+4bed 20600000 rtn 
+
+h4_get_rx_payload_len:
+4bee e8608000 ifetch 1 ,contru 
+4bef 18608602 increase 2 ,contru 
+4bf0 c0014bf3 beq hci_h4_type_acl ,h4_get_rx_payload_len_acl 
+4bf1 e8608000 ifetch 1 ,contru 
+4bf2 20600000 rtn 
+
+h4_get_rx_payload_len_acl:
+4bf3 e8610000 ifetch 2 ,contru 
+4bf4 20600000 rtn 
+
+h4_get_tx_ptr:
+4bf5 6811005e hfetch 2 ,core_uart_twptr 
+4bf6 194095fb increase -5 ,contwu 
+4bf7 99409400 iadd contwu ,contwu 
+4bf8 20600000 rtn 
+
+h4_send_packet_event:
+4bf9 d8400004 arg hci_h4_type_event ,temp 
+4bfa 20204bfc branch h4_send_packet 
+
+h4_send_packet_acl:
+4bfb d8400002 arg hci_h4_type_acl ,temp 
+
+h4_send_packet:
+4bfc 47004020 bpatchx patch20_0 ,mem_patch20 
+4bfd 1f20f201 increase 1 ,loopcnt 
+4bfe 6811005e hfetch 2 ,core_uart_twptr 
+4bff 1fe21400 copy pdata ,contwu 
+4c00 1f227e00 copy loopcnt ,pdata 
+4c01 e1488000 istoret 1 ,contwu 
+4c02 1fe0ffff increase -1 ,pdata 
+4c03 99409400 iadd contwu ,contwu 
+4c04 19427e00 copy contwu ,pdata 
+4c05 60010258 store 2 ,mem_hci_acl_tx_trigger_wptr 
+4c06 18427e00 copy temp ,pdata 
+4c07 c1010000 rtneq hci_h4_type_acl 
+4c08 68010258 fetch 2 ,mem_hci_acl_tx_trigger_wptr 
+4c09 6011005e hstore 2 ,core_uart_twptr 
+4c0a 20204c0b branch h4_send_acl_trigger_clear 
+
+h4_send_acl_trigger_clear:
+4c0b 58000000 setarg 0 
+4c0c 60010258 store 2 ,mem_hci_acl_tx_trigger_wptr 
+4c0d 20600000 rtn 
+
+hci_init:
+4c0e 20758000 rtn wake 
+4c0f 58004d28 setarg hci_idle_dispatch 
+4c10 600141f3 store 2 ,mem_cb_idle_process 
+4c11 580001a0 setarg uart_baud_115200 
+4c12 60014243 store uart_baud_len ,mem_baud 
+
+hci_lpm_init:
+4c13 58001800 setarg mem_h5rx_buf 
+4c14 60110054 hstore 2 ,core_uart_rsaddr 
+4c15 58001bff setarg mem_h5rx_buf_end 
+4c16 60110056 hstore 2 ,core_uart_readdr 
+4c17 58001c00 setarg mem_h5tx_buf 
+4c18 6011005a hstore 2 ,core_uart_tsaddr 
+4c19 20404c28 call hci_sel_init 
+
+hci_reinit:
+4c1a 70806200 jam 0x0 ,core_uart_ctrl 
+4c1b 58001c00 setarg mem_h5tx_buf 
+4c1c 6011005e hstore 2 ,core_uart_twptr 
+4c1d 60110060 hstore 2 ,core_uart_trptrp 
+4c1e 58001800 setarg mem_h5rx_buf 
+4c1f 60110058 hstore 2 ,core_uart_rrptr 
+4c20 60010244 store 2 ,mem_h5rx_rptr 
+
+hci_init_common:
+4c21 68110050 hfetch 2 ,core_clkoff 
+4c22 793ffe0f set0 clock_off_uart ,pdata 
+4c23 60110050 hstore 2 ,core_clkoff 
+4c24 204066ce call uart_set_baud_by_mem 
+4c25 70804301 jam uartclk_dpll ,core_uart_clksel 
+4c26 70806281 jam uart_ctrl_h4 ,core_uart_ctrl 
+4c27 20600000 rtn 
+
+hci_sel_init:
+4c28 58001fff setarg mem_h5tx_buf_end 
+4c29 6011005c hstore 2 ,core_uart_teaddr 
+4c2a 68108081 hfetch 1 ,core_gpio_sel1 
+4c2b 1fe1fe07 or_into 0x07 ,pdata 
+4c2c 60108081 hstore 1 ,core_gpio_sel1 
+4c2d 20600000 rtn 
+
+hci_rx_packet:
+4c2e 4700c020 bpatchx patch20_1 ,mem_patch20 
+4c2f 6810810c hfetch 1 ,core_uart_status 
+4c30 98002400 iforce regb 
+4c31 c301cc37 bbit0 uart_status_rx_fifo_empty ,hci_rx_packet_cont 
+4c32 68110112 hfetch 2 ,core_uart_rxitems 
+4c33 98002600 iforce regc 
+4c34 d840044f arg 0x44f ,temp 
+4c35 98467c00 isub temp ,null 
+4c36 24628000 nrtn zero 
+
+hci_rx_packet_cont:
+4c37 68110058 hfetch 2 ,core_uart_rrptr 
+4c38 98000600 iforce contru 
+4c39 20204bc8 branch hci_rx_h4 
+
+uart_send_byte:
+4c3a 6818810c hfetcht 1 ,core_uart_status 
+4c3b 284ffe06 isolate1 6 ,temp 
+4c3c 2020cc3a branch uart_send_byte ,true 
+4c3d 60108015 hstore 1 ,core_uart_txd 
+4c3e 20600000 rtn 
+
+process_hci_cmd:
+4c3f 47014020 bpatchx patch20_2 ,mem_patch20 
+4c40 6800c1ce fetch 1 ,mem_hci_cmd 
+4c41 203a4c44 branch process_hci_cmd_cont ,blank 
+4c42 78347c00 enable user 
+4c43 20600000 rtn 
+
+process_hci_cmd_cont:
+4c44 e8610000 ifetch 2 ,contru 
+4c45 98006000 iforce alarm 
+4c46 98000e00 iforce queue 
+4c47 e8608000 ifetch 1 ,contru 
+4c48 98000400 iforce temp 
+4c49 1e0b7e00 rshift2 alarm ,pdata 
+4c4a 1fecfe00 rshift8 pdata ,pdata 
+4c4b c01fcc4d beq hci_ogf_vendor_specific ,phci_grp_vendor_specific 
+4c4c 20600000 rtn 
+
+phci_grp_vendor_specific:
+4c4d 4701c020 bpatchx patch20_3 ,mem_patch20 
+4c4e 18e27e00 deposit queue 
+4c4f c0004cdc beq hci_vendor_cmd_reset ,hci_normal_reply 
+4c50 c000cc66 beq hci_vendor_cmd_chipid ,phci_grp_vendor_chipid 
+4c51 c0014c6b beq hci_vendor_cmd_baud ,phci_grp_vendor_baud 
+4c52 c001cc7a beq hci_vendor_cmd_patch ,phci_grp_vendor_patch 
+4c53 c0024cb3 beq hci_vendor_cmd_patch_done ,phci_grp_vendor_done 
+4c54 c002ccdc beq hci_vendor_cmd_echo ,hci_normal_reply 
+4c55 c0034cc6 beq hci_vendor_cmd_bdaddr ,phci_grp_vendor_bdaddr 
+4c56 c003cc5c beq hci_vendor_cmd_enter_lpm ,phci_grp_vendor_enter_lpm 
+4c57 c0084cc9 beq hci_vendor_cmd_mem ,phci_grp_vendor_mem 
+4c58 c008ccd1 beq hci_vendor_cmd_eep ,phci_grp_vendor_eep 
+4c59 c0094ca5 beq hci_vendor_cmd_patch_sec_init ,phci_grp_vendor_patch_sec_init 
+4c5a c009cc85 beq hci_vendor_cmd_patch_sec ,phci_grp_vendor_patch_sec 
+4c5b 20204cdc branch hci_normal_reply 
+
+phci_grp_vendor_enter_lpm:
+4c5c 20404cdc call hci_normal_reply 
+4c5d 20407f9e call wait_uarttx 
+4c5e 2040688c call gpio_pu_uart_tx 
+
+hci_enter_lpm:
+4c5f 204033d2 call app_put_lpm_wake_lock 
+4c60 204033d9 call app_l2cap_flow_control_enable 
+4c61 2020688f branch gpio_rx_config_input_with_pu 
+
+hci_exit_lpm:
+4c62 70424500 jam hci_rx_ready ,mem_hci_lt_rx_state 
+4c63 204033d0 call app_get_lpm_wake_lock 
+4c64 20404c13 call hci_lpm_init 
+4c65 202033db branch app_l2cap_flow_control_disable 
+
+phci_grp_vendor_chipid:
+4c66 20404cf2 call hci_get_cmd_complete_ptr 
+4c67 68110000 hfetch 2 ,core_chipid 
+4c68 e1410000 istore 2 ,contwu 
+4c69 18007206 force 6 ,loopcnt 
+4c6a 20204cdd branch hci_command_complete 
+
+phci_grp_vendor_baud:
+4c6b e8610000 ifetch 2 ,contru 
+4c6c 60014243 store 2 ,mem_baud 
+4c6d 60110052 hstore 2 ,core_uart_baud 
+4c6e 20600000 rtn 
+
+phci_grp_vendor_patch_common:
+4c6f e8608000 ifetch 1 ,contru 
+4c70 1fe20400 copy pdata ,temp 
+4c71 60108024 hstore 1 ,core_ucode_low 
+4c72 e8608000 ifetch 1 ,contru 
+4c73 98408400 iadd temp ,temp 
+4c74 79207e07 set1 7 ,pdata 
+4c75 60108023 hstore 1 ,core_ucode_ctrl 
+4c76 e8608000 ifetch 1 ,contru 
+4c77 98408400 iadd temp ,temp 
+4c78 1fe27200 copy pdata ,loopcnt 
+4c79 20600000 rtn 
+
+phci_grp_vendor_patch:
+4c7a c515ccc4 bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+4c7b 20404c6f call phci_grp_vendor_patch_common 
+
+phci_grp_vendor_patch_loop:
+4c7c e8608000 ifetch 1 ,contru 
+4c7d 60108025 hstore 1 ,core_ucode_data 
+4c7e 98408400 iadd temp ,temp 
+4c7f c2004c7c loop phci_grp_vendor_patch_loop 
+
+phci_grp_vendor_patch_check_sum:
+4c80 184104ff and temp ,0xff ,temp 
+4c81 e8608000 ifetch 1 ,contru 
+4c82 98467c00 isub temp ,null 
+4c83 2422ccc4 nbranch phci_grp_vendor_patch_bad ,zero 
+4c84 20204cdc branch hci_normal_reply 
+
+phci_grp_vendor_patch_sec:
+4c85 c595ccc4 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+4c86 20404c6f call phci_grp_vendor_patch_common 
+4c87 60040a9a store 8 ,mem_pdatatemp 
+
+phci_grp_vendor_patch_sec_loop:
+4c88 20407422 call do_aes_cbc 
+4c89 df200010 arg 16 ,loopcnt 
+4c8a d8a00ac2 arg mem_temp_block0 ,contw 
+4c8b 20404ca0 call load_uart_sum_loop 
+4c8c 600c0aa2 storet 8 ,mem_temp 
+4c8d d8a00ad2 arg mem_temp_block2 ,contw 
+4c8e 20407497 call store_aes_result 
+4c8f da200ad2 arg mem_temp_block2 ,rega 
+4c90 da400ac2 arg mem_temp_block0 ,regb 
+4c91 d8a00ae2 arg mem_temp_block3 ,contw 
+4c92 20407352 call xor16 
+4c93 df200010 arg 16 ,loopcnt 
+4c94 d8c00ae2 arg mem_temp_block3 ,contr 
+4c95 20404c9c call load_ucode_only_loop 
+4c96 680c0aa2 fetcht 8 ,mem_temp 
+4c97 68040a9a fetch 8 ,mem_pdatatemp 
+4c98 1fe0fff0 increase -16 ,pdata 
+4c99 60040a9a store 8 ,mem_pdatatemp 
+4c9a 243a4c88 nbranch phci_grp_vendor_patch_sec_loop ,blank 
+4c9b 20204c80 branch phci_grp_vendor_patch_check_sum 
+
+load_ucode_only_loop:
+4c9c e8c08000 ifetch 1 ,contr 
+4c9d 60108025 hstore 1 ,core_ucode_data 
+4c9e c2004c9c loop load_ucode_only_loop 
+4c9f 20600000 rtn 
+
+load_uart_sum_loop:
+4ca0 e8608000 ifetch 1 ,contru 
+4ca1 e0a08000 istore 1 ,contw 
+4ca2 98408400 iadd temp ,temp 
+4ca3 c2004ca0 loop load_uart_sum_loop 
+4ca4 20600000 rtn 
+
+phci_grp_vendor_patch_sec_init:
+4ca5 c595ccc4 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+4ca6 d8400000 arg 0 ,temp 
+4ca7 df200010 arg 16 ,loopcnt 
+4ca8 d8a00ac2 arg mem_temp_block0 ,contw 
+4ca9 20404ca0 call load_uart_sum_loop 
+4caa 68108085 hfetch 1 ,core_gpio_key2 
+4cab 1fe17efd and_into 0xfd ,pdata 
+4cac 60108085 hstore 1 ,core_gpio_key2 
+4cad d8c00ac2 arg mem_temp_block0 ,contr 
+4cae df200010 arg 16 ,loopcnt 
+4caf 20407478 call aes_load_data 
+4cb0 20407428 call aes_init 
+4cb1 20407491 call aes_clear_data 
+4cb2 20204c80 branch phci_grp_vendor_patch_check_sum 
+
+phci_grp_vendor_done:
+4cb3 df200020 arg 0x20 ,loopcnt 
+4cb4 d8a04000 arg mem_patch00 ,contw 
+4cb5 d8400000 arg 0 ,temp 
+
+phci_grp_vendor_done_loop:
+4cb6 e8608000 ifetch 1 ,contru 
+4cb7 e0a08000 istore 1 ,contw 
+4cb8 98408400 iadd temp ,temp 
+4cb9 c2004cb6 loop phci_grp_vendor_done_loop 
+4cba 184104ff and temp ,0xff ,temp 
+4cbb e8608000 ifetch 1 ,contru 
+4cbc 98467c00 isub temp ,null 
+4cbd 2422ccc4 nbranch phci_grp_vendor_patch_bad ,zero 
+4cbe 70802300 jam 0 ,core_ucode_ctrl 
+4cbf 20404cdc call hci_normal_reply 
+4cc0 20404be6 call h4_rx_discard_packet 
+4cc1 204064a3 call clear_key_buf 
+4cc2 20407f9e call wait_uarttx 
+4cc3 20202001 branch soft_reset 
+
+phci_grp_vendor_patch_bad:
+4cc4 70802300 jam 0 ,core_ucode_ctrl 
+4cc5 20202000 branch start 
+
+phci_grp_vendor_bdaddr:
+4cc6 e8630000 ifetch 6 ,contru 
+4cc7 600340a0 store 6 ,mem_lap 
+4cc8 20204cdc branch hci_normal_reply 
+
+phci_grp_vendor_mem:
+4cc9 e8608000 ifetch 1 ,contru 
+4cca 6000825a store 1 ,mem_hci_curr_len 
+4ccb 1fe27200 copy pdata ,loopcnt 
+4ccc e8610000 ifetch 2 ,contru 
+4ccd 6001025b store 2 ,mem_hci_curr_target 
+4cce 1fe20a00 copy pdata ,contw 
+4ccf 204066fd call uart_copy_rx_bytes 
+4cd0 20204cdc branch hci_normal_reply 
+
+phci_grp_vendor_eep:
+4cd1 e8608000 ifetch 1 ,contru 
+4cd2 6000825a store 1 ,mem_hci_curr_len 
+4cd3 1fe27200 copy pdata ,loopcnt 
+4cd4 e8610000 ifetch 2 ,contru 
+4cd5 6001025b store 2 ,mem_hci_curr_target 
+4cd6 d8a01000 arg mem_l2cap_rxbuff1 ,contw 
+4cd7 204066fd call uart_copy_rx_bytes 
+4cd8 6808825a fetcht 1 ,mem_hci_curr_len 
+4cd9 da201000 arg mem_l2cap_rxbuff1 ,rega 
+4cda 6801025b fetch 2 ,mem_hci_curr_target 
+4cdb 20206608 branch iicd_write_ota_data 
+
+hci_normal_reply:
+4cdc 18007204 force 4 ,loopcnt 
+
+hci_command_complete:
+4cdd 20404cf4 call hci_get_payload_ptr 
+4cde 18007e01 force 0x1 ,pdata 
+4cdf e1408000 istore 1 ,contwu 
+4ce0 1e027e00 deposit alarm 
+4ce1 e1418000 istore 3 ,contwu 
+4ce2 18000e0e force hci_event_command_complete ,queue 
+
+hci_send_event:
+4ce3 47024020 bpatchx patch20_4 ,mem_patch20 
+4ce4 20404cf6 call hci_get_packet_ptr 
+4ce5 18e27e00 deposit queue 
+4ce6 e1408000 istore 1 ,contwu 
+4ce7 1f227e00 deposit loopcnt 
+4ce8 e1408000 istore 1 ,contwu 
+
+hci_send_event_raw:
+4ce9 18000e05 force 5 ,queue 
+4cea 1f20f202 increase 2 ,loopcnt 
+
+hci_send_packet:
+4ceb 20204bf9 branch h4_send_packet_event 
+
+hci_send_commu_ready_event:
+4cec 18000eff force hci_event_vendor_specific ,queue 
+4ced 20404cf4 call hci_get_payload_ptr 
+4cee 58000001 setarg hci_vendor_event_commu_ready 
+4cef e1408000 istore 1 ,contwu 
+4cf0 18007201 force 1 ,loopcnt 
+4cf1 20204ce3 branch hci_send_event 
+
+hci_get_cmd_complete_ptr:
+4cf2 1800140c force 12 ,contwu 
+4cf3 20204cf7 branch hci_get_tx_ptr 
+
+hci_get_payload_ptr:
+4cf4 18001408 force 8 ,contwu 
+4cf5 20204cf7 branch hci_get_tx_ptr 
+
+hci_get_packet_ptr:
+4cf6 18001406 force 6 ,contwu 
+
+hci_get_tx_ptr:
+4cf7 20204bf5 branch h4_get_tx_ptr 
+
+calc_tx_crc16:
+4cf8 7827fc00 pulse crc16 
+4cf9 7824fc00 enable enable_crc 
+
+crcloop:
+4cfa e9408000 ifetch 1 ,contwu 
+4cfb 08008008 inject bucket ,8 
+4cfc c2004cfa loop crcloop 
+4cfd 78247c00 enable enable_parity 
+4cfe 08008010 inject bucket ,16 
+4cff 78447c00 disable enable_parity 
+4d00 7844fc00 disable enable_crc 
+4d01 7847fc00 disable crc16 
+4d02 1ff0fe00 byteswap pdata ,pdata 
+4d03 20600000 rtn 
+
+cmd_exit:
+4d04 7041ce00 jam 0 ,mem_hci_cmd 
+4d05 20600000 rtn 
+
+cmd_check_plap:
+4d06 680341d0 fetch 6 ,mem_hci_plap 
+4d07 680b0040 fetcht 6 ,mem_plap 
+4d08 98467c00 isub temp ,null 
+4d09 20600000 rtn 
+
+cmd_pair:
+4d0a 6800804b fetch 1 ,mem_op 
+4d0b c2814d0f bbit1 op_inrand_req ,cmd_pair_passive 
+4d0c 204062ef call tid_initiate 
+4d0d 70007c08 jam lmp_in_rand ,mem_lmo_opcode2 
+4d0e 20204d04 branch cmd_exit 
+
+cmd_pair_passive:
+4d0f 793ffe02 set0 op_inrand_req ,pdata 
+4d10 6000804b store 1 ,mem_op 
+4d11 20406001 call lmp_accept_inrand 
+4d12 58000000 setarg 0 
+4d13 7934fe01 setflag master ,smap_lmptid ,pdata 
+4d14 6000807f store 1 ,mem_lmo_tid2 
+4d15 20204d04 branch cmd_exit 
+4d16 20600000 rtn 
+
+cmd_in_sniff:
+4d17 70007c17 jam lmp_sniff_req ,mem_lmo_opcode2 
+4d18 d8a004d9 arg mem_sniff_payload ,contw 
+4d19 58000000 setarg 0 
+4d1a 2d0ffe1b isolate1 27 ,clke_bt 
+4d1b 7920fe01 setflag true ,1 ,pdata 
+4d1c e0a08000 istore 1 ,contw 
+4d1d 58000000 setarg 0 
+4d1e e0a10000 istore 2 ,contw 
+4d1f 680141e3 fetch 2 ,mem_sniff_param_interval 
+4d20 e0a10000 istore 2 ,contw 
+4d21 6800c1e5 fetch 1 ,mem_sniff_param_attempt 
+4d22 e0a10000 istore 2 ,contw 
+4d23 6800c1e7 fetch 1 ,mem_sniff_param_timeout 
+4d24 e0a10000 istore 2 ,contw 
+4d25 20204d04 branch cmd_exit 
+
+cmd_exit_sniff:
+4d26 70007c18 jam lmp_unsniff_req ,mem_lmo_opcode2 
+4d27 20204d04 branch cmd_exit 
+
+hci_idle_dispatch:
+4d28 20406899 call gpio_check_uart_state 
+4d29 20608000 rtn true 
+4d2a d8400007 arg uart_wakeup_rx ,temp 
+4d2b 2040681d call gpio_get_bit 
+4d2c 2420cd2f nbranch uart_wake_up ,true 
+4d2d 70424501 jam hci_rx_wake ,mem_hci_lt_rx_state 
+4d2e 20600000 rtn 
+
+uart_wake_up:
+4d2f 6800c245 fetch 1 ,mem_hci_lt_rx_state 
+4d30 c1808000 rtnne hci_rx_wake 
+4d31 20404c62 call hci_exit_lpm 
+4d32 20204cec branch hci_send_commu_ready_event 
+
+hid_rx_process:
+4d33 4702c020 bpatchx patch20_5 ,mem_patch20 
+4d34 68010264 fetch 2 ,mem_l2cap_payload_ptr 
+4d35 1fe20c00 copy pdata ,contr 
+4d36 e8c08000 ifetch 1 ,contr 
+4d37 1fe1040f and pdata ,0x0f ,temp 
+4d38 1ff1fe00 rshift4 pdata ,pdata 
+4d39 c004cd53 beq hid_type_set_idle ,hid_rx_process_handshake 
+4d3a c003cd53 beq hid_type_set_protocol ,hid_rx_process_handshake 
+4d3b c0054d5f beq hid_type_data ,hid_rx_process_data 
+4d3c c002cd4b beq hid_type_set_report ,hid_rx_process_set_report 
+4d3d c000cd3f beq hid_type_control ,hid_rx_process_hid_control 
+4d3e 20600000 rtn 
+
+hid_rx_process_hid_control:
+4d3f 18427e00 copy temp ,pdata 
+4d40 c002cd43 beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
+4d41 c001cd4a beq hid_control_p_suspend ,hid_rx_process_suspend 
+4d42 20600000 rtn 
+
+hid_rx_process_virtual_cable_unplug:
+4d43 700a9927 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
+4d44 20407d86 call ui_ipc_send_event 
+4d45 6800c092 fetch 1 ,mem_device_option 
+4d46 c4030000 rtnbit0 dvc_op_mouse 
+4d47 18427e00 copy temp ,pdata 
+4d48 c002c38e beq hid_control_p_virtualcableunplug ,mouse_irtual_cable_unplug 
+4d49 20600000 rtn 
+
+hid_rx_process_suspend:
+4d4a 20600000 rtn 
+
+hid_rx_process_set_report:
+4d4b 20404d5f call hid_rx_process_data 
+4d4c da200001 arg 0x01 ,rega 
+4d4d 20404d63 call hid_malloc_tx_buff 
+4d4e 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+4d4f e0a10000 istore 2 ,contw 
+4d50 58000000 setarg 0x00 
+4d51 e0a08000 istore 1 ,contw 
+4d52 20600000 rtn 
+
+hid_rx_process_handshake:
+4d53 da200001 arg 1 ,rega 
+4d54 20404d63 call hid_malloc_tx_buff 
+4d55 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+4d56 e0a10000 istore 2 ,contw 
+4d57 58000000 setarg 0 
+4d58 e0a08000 istore 1 ,contw 
+4d59 700a8e01 jam 1 ,mem_ui_data_txbuff_length 
+4d5a 6800c252 fetch 1 ,mem_hid_control_state 
+4d5b 79207e06 set1 l2cap_channel_hid_handshake_done 
+4d5c 6000c252 store 1 ,mem_hid_control_state 
+4d5d 700a9912 jam bt_evt_hid_handshake ,mem_fifo_temp 
+4d5e 20207d86 branch ui_ipc_send_event 
+
+hid_rx_process_data:
+4d5f e8c08000 ifetch 1 ,contr 
+4d60 c000cd62 beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
+4d61 20600000 rtn 
+
+hid_rx_process_data_hid_kb:
+4d62 20600000 rtn 
+
+hid_malloc_tx_buff:
+4d63 20405240 call l2cap_malloc 
+4d64 1a220400 copy rega ,temp 
+4d65 60088a8e storet 1 ,mem_ui_data_txbuff_length 
+4d66 1fe20a00 copy pdata ,contw 
+4d67 1a227e00 copy rega ,pdata 
+4d68 e0a10000 istore 2 ,contw 
+4d69 20600000 rtn 
+
+l2cap_init:
+4d6a 2035cd6f branch l2cap_init_wake ,wake 
+
+l2cap_init_work:
+4d6b 58004365 setarg mem_l2cap_xmem_end 
+4d6c d8a04246 arg mem_l2cap_xmem_start ,contw 
+4d6d 98a67200 isub contw ,loopcnt 
+4d6e 20407ed4 call clear_mem 
+
+l2cap_init_wake:
+4d6f 47034020 bpatchx patch20_6 ,mem_patch20 
+4d70 58000551 setarg mem_sdp_mem_end 
+4d71 d8a00511 arg mem_sdp_mem_start ,contw 
+4d72 98a67200 isub contw ,loopcnt 
+4d73 20407ed4 call clear_mem 
+4d74 580002c9 setarg mem_l2cap_mem_end 
+4d75 d8a0025d arg mem_l2cap_mem_start ,contw 
+4d76 98a67200 isub contw ,loopcnt 
+4d77 20407ed4 call clear_mem 
+4d78 20205318 branch l2cap_lpm_load_txbuf 
+
+process_rx_l2cap_pkt:
+4d79 4703c020 bpatchx patch20_7 ,mem_patch20 
+4d7a 18c20400 copy contr ,temp 
+4d7b 18420c00 copy temp ,contr 
+4d7c e8c10000 ifetch 2 ,contr 
+4d7d 60010266 store 2 ,mem_l2cap_rx_pkt_length 
+4d7e e8c10000 ifetch 2 ,contr 
+4d7f 60010268 store 2 ,mem_l2cap_rx_cid 
+4d80 18c27e00 deposit contr 
+4d81 60010264 store 2 ,mem_l2cap_payload_ptr 
+4d82 6800c681 fetch 1 ,memui_reconnect_mode 
+4d83 c0004d85 beq no_reconnection ,l2cap_rx_multiplexing 
+4d84 202050ef branch ml2cap_rx_multiplexing 
+
+l2cap_rx_multiplexing:
+4d85 68010266 fetch 2 ,mem_l2cap_rx_pkt_length 
+4d86 203a4dfc branch l2cap_rx_reset_state ,blank 
+4d87 47044021 bpatchx patch21_0 ,mem_patch21 
+4d88 68008268 fetch 1 ,mem_l2cap_rx_cid 
+4d89 c000cd9d beq l2cap_signal_channel ,l2cap_call_proc_signal 
+
+l2cap_rx_multiplexing0:
+4d8a c0284de0 beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
+4d8b c028cdf5 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+4d8c c0294df3 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+4d8d c029cdf3 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+4d8e 20204dfc branch l2cap_rx_reset_state 
+
+l2cap_check_map:
+4d8f 4704c021 bpatchx patch21_1 ,mem_patch21 
+4d90 2040527e call l2cap_malloc_get_full_map 
+4d91 6800c256 fetch 1 ,mem_used_map 
+4d92 c0004d9b beq 0 ,set_pdata_0 
+4d93 c000cd9b beq 1 ,set_pdata_0 
+4d94 c0014d9b beq 2 ,set_pdata_0 
+4d95 c001cd9b beq 3 ,set_pdata_0 
+4d96 c040cd9b beq 0x81 ,set_pdata_0 
+4d97 c0604d9b beq 0xc0 ,set_pdata_0 
+4d98 c0404d9b beq 0x80 ,set_pdata_0 
+4d99 c0204d9b beq 0x40 ,set_pdata_0 
+4d9a 20600000 rtn 
+
+set_pdata_0:
+4d9b 58000000 setarg 0 
+4d9c 20600000 rtn 
+
+l2cap_call_proc_signal:
+4d9d 20404d8f call l2cap_check_map 
+4d9e 247a0000 nrtn blank 
+
+l2cap_call_proc_signal0:
+4d9f 204052b8 call l2cap_malloc_signal_channel 
+4da0 20404e01 call l2cap_process_signal_pkt 
+4da1 6809026f fetcht 2 ,mem_l2cap_signal_tx_length 
+4da2 203a4dfb branch l2cap_call_proc_no_reply ,blank 
+4da3 204052c1 call l2cap_get_signal_tx_buff 
+4da4 6801026f fetch 2 ,mem_l2cap_signal_tx_length 
+4da5 e0a10000 istore 2 ,contw 
+4da6 18007e01 force l2cap_signal_channel ,pdata 
+4da7 e0a10000 istore 2 ,contw 
+4da8 20204dfc branch l2cap_rx_reset_state 
+
+l2cap_call_proc_sigal_pending:
+4da9 6800c364 fetch 1 ,mem_l2cap_pending_item 
+4daa 207a0000 rtn blank 
+4dab 1fe22200 copy pdata ,rega 
+4dac 47054021 bpatchx patch21_2 ,mem_patch21 
+4dad 680202d5 fetch 4 ,mem_l2cap_sdpres_delay_time 
+4dae d8400100 arg 0x100 ,temp 
+4daf 98408400 iadd temp ,temp 
+4db0 1c427e00 copy clkn_bt ,pdata 
+4db1 98467c00 isub temp ,null 
+4db2 24610000 nrtn positive 
+4db3 70436400 jam 0 ,mem_l2cap_pending_item 
+4db4 1a227e00 copy rega ,pdata 
+4db5 c0284db7 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
+4db6 20202a8c branch assert 
+
+l2cap_sdp_conn_succ:
+4db7 d9000000 arg 0 ,debug 
+4db8 204052b8 call l2cap_malloc_signal_channel 
+4db9 20404e7a call restore_l2cap_req_param 
+4dba 204052c3 call l2cap_get_signal_tx_payload 
+4dbb 20407ea8 call save_cont_pointers 
+4dbc 20404ead call send_connection_sdp_res 
+4dbd 204052c1 call l2cap_get_signal_tx_buff 
+4dbe 5800000c setarg 0x000c 
+4dbf e0a10000 istore 2 ,contw 
+4dc0 18007e01 force l2cap_signal_channel ,pdata 
+4dc1 e0a10000 istore 2 ,contw 
+4dc2 20204dfc branch l2cap_rx_reset_state 
+
+l2cap_reset_sdp_map:
+4dc3 4705c021 bpatchx patch21_3 ,mem_patch21 
+4dc4 68010275 fetch 2 ,mem_sdp_tx_pkt_length 
+4dc5 1fe0fe04 increase 4 ,pdata 
+4dc6 1ff1fe00 rshift4 pdata ,pdata 
+4dc7 1fe97e00 rshift3 pdata ,pdata 
+4dc8 1fe08401 add pdata ,1 ,temp 
+4dc9 d8c04260 arg mem_tx_fifo3 ,contr 
+4dca e8c18000 ifetch 3 ,contr 
+4dcb 207a0000 rtn blank 
+4dcc 60018ac2 store 3 ,mem_tx_fifo_map_temp 
+4dcd 68008ac2 fetch 1 ,mem_tx_fifo_map_temp 
+4dce 1fe22200 copy pdata ,rega 
+4dcf 20404dd3 call check_l2cap_map 
+4dd0 1a427e00 copy regb ,pdata 
+4dd1 6000c260 store 1 ,mem_tx_fifo3 
+4dd2 20600000 rtn 
+
+check_l2cap_map:
+4dd3 d8e00000 arg 0 ,queue 
+4dd4 da400000 arg 0 ,regb 
+
+check_l2cap_map_loop:
+4dd5 18e67c07 sub queue ,7 ,null 
+4dd6 24610000 nrtn positive 
+4dd7 aa2fffff qisolate1 rega 
+4dd8 2020cdda branch check_l2cap_map_used ,true 
+4dd9 20204dde branch check_l2cap_map_used2 
+
+check_l2cap_map_used:
+4dda 18427e00 copy temp ,pdata 
+4ddb 203a4dde branch check_l2cap_map_used2 ,blank 
+4ddc f9202400 qset1 regb 
+4ddd 184085ff increase -1 ,temp 
+
+check_l2cap_map_used2:
+4dde 18e08e01 increase 1 ,queue 
+4ddf 20204dd5 branch check_l2cap_map_loop 
+
+l2cap_call_proc_sdp:
+4de0 20405274 call l2cap_malloc_is_fifo_empty 
+4de1 247a0000 nrtn blank 
+4de2 20404d8f call l2cap_check_map 
+4de3 247a0000 nrtn blank 
+4de4 204052c5 call l2cap_malloc_sdp_channel 
+4de5 20406e11 call sdp_process 
+4de6 20404dc3 call l2cap_reset_sdp_map 
+4de7 20204dec branch l2cap_call_proc_sdp_common 
+
+ml2cap_call_proc_sdp:
+4de8 20405274 call l2cap_malloc_is_fifo_empty 
+4de9 247a0000 nrtn blank 
+4dea 204052c5 call l2cap_malloc_sdp_channel 
+4deb 20406e11 call sdp_process 
+
+l2cap_call_proc_sdp_common:
+4dec 204052ce call l2cap_get_sdp_tx_buff 
+4ded 68010275 fetch 2 ,mem_sdp_tx_pkt_length 
+4dee 203a4dfb branch l2cap_call_proc_no_reply ,blank 
+4def e0a10000 istore 2 ,contw 
+4df0 68014248 fetch 2 ,mem_sdp_remote_cid 
+4df1 e0a10000 istore 2 ,contw 
+4df2 20204dfc branch l2cap_rx_reset_state 
+
+l2cap_call_proc_hid:
+4df3 20404d33 call hid_rx_process 
+4df4 20204dfc branch l2cap_rx_reset_state 
+
+l2cap_call_proc_rfcomm:
+4df5 47064021 bpatchx patch21_4 ,mem_patch21 
+4df6 70028400 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+4df7 20406a8a call rfcomm_rx_process 
+4df8 68008284 fetch 1 ,mem_rfcomm_malloc_fail_flag 
+4df9 c1008000 rtneq rfcomm_malloc_fail 
+4dfa 20204dfc branch l2cap_rx_reset_state 
+
+l2cap_call_proc_no_reply:
+4dfb 20405264 call l2cap_malloc_discard 
+
+l2cap_rx_reset_state:
+4dfc 58000000 setarg 0 
+4dfd 60010266 store 2 ,mem_l2cap_rx_pkt_length 
+4dfe 60010268 store 2 ,mem_l2cap_rx_cid 
+4dff 70026a01 jam l2cap_rx_done ,mem_l2cap_rx_done 
+4e00 20600000 rtn 
+
+l2cap_process_signal_pkt:
+4e01 4706c021 bpatchx patch21_5 ,mem_patch21 
+4e02 204052c3 call l2cap_get_signal_tx_payload 
+4e03 18002400 force 0 ,regb 
+4e04 68010266 fetch 2 ,mem_l2cap_rx_pkt_length 
+4e05 1fe22600 copy pdata ,regc 
+4e06 68010264 fetch 2 ,mem_l2cap_payload_ptr 
+4e07 98000c00 iforce contr 
+
+l2cap_process_signal_pkt_loop:
+4e08 20404e10 call l2cap_process_one_signal 
+4e09 1a627e00 deposit regc 
+4e0a 1a60a7fc increase -4 ,regc 
+4e0b 1fe0fffc increase -4 ,pdata 
+4e0c 243a4e08 nbranch l2cap_process_signal_pkt_loop ,blank 
+4e0d 1a427e00 copy regb ,pdata 
+4e0e 6001026f store 2 ,mem_l2cap_signal_tx_length 
+4e0f 20600000 rtn 
+
+l2cap_process_one_signal:
+4e10 47074021 bpatchx patch21_6 ,mem_patch21 
+4e11 e8c08000 ifetch 1 ,contr 
+4e12 c000ce49 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
+4e13 c0014e51 beq signal_connect_req ,l2cap_proc_signal_connect_req 
+4e14 c001ced5 beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
+4e15 c0024f05 beq signal_config_req ,l2cap_proc_signal_config_req 
+4e16 c002cfa2 beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
+4e17 c0034fcb beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
+4e18 c003d01b beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
+4e19 c0045050 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+4e1a c004d060 beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
+4e1b c0054e1f beq signal_info_req ,l2cap_proc_signal_info_req 
+4e1c c005d061 beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
+4e1d 20405062 call l2cap_reject_command 
+
+l2cap_process_one_signal_rtn:
+4e1e 20600000 rtn 
+
+l2cap_proc_signal_info_req:
+4e1f e8c08000 ifetch 1 ,contr 
+4e20 1fe20e00 copy pdata ,queue 
+4e21 e8c10000 ifetch 2 ,contr 
+4e22 1fe22200 copy pdata ,rega 
+4e23 1a627e00 copy regc ,pdata 
+4e24 9a262600 isub rega ,regc 
+4e25 5800000b setarg signal_info_rsp 
+4e26 e0a08000 istore 1 ,contw 
+4e27 18e27e00 copy queue ,pdata 
+4e28 e0a08000 istore 1 ,contw 
+4e29 e8c10000 ifetch 2 ,contr 
+
+l2cap_proc_signal_info_req_reply:
+4e2a c0014e2d beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
+4e2b c001ce33 beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
+4e2c 20600000 rtn 
+
+l2cap_proc_signal_info_req_ext:
+4e2d 58020008 setarg 0x020008 
+4e2e e0a30000 istore 6 ,contw 
+4e2f 58000280 setarg 0x0280 
+4e30 e0a20000 istore 4 ,contw 
+4e31 18007e0c force 12 ,pdata 
+4e32 20204e38 branch l2cap_proc_signal_info_req_common 
+
+l2cap_proc_signal_info_req_fix:
+4e33 5803000c setarg 0x3000c 
+4e34 e0a30000 istore 6 ,contw 
+4e35 58000006 setarg 0x0006 
+4e36 e0a40000 istore 8 ,contw 
+4e37 18007e10 force 16 ,pdata 
+
+l2cap_proc_signal_info_req_common:
+4e38 9a40a400 iadd regb ,regb 
+4e39 20204e1e branch l2cap_process_one_signal_rtn 
+
+ml2cap_proc_signal_info_req:
+4e3a e8c08000 ifetch 1 ,contr 
+4e3b 1fe20e00 copy pdata ,queue 
+4e3c e8c10000 ifetch 2 ,contr 
+4e3d 1fe22200 copy pdata ,rega 
+4e3e e8c10000 ifetch 2 ,contr 
+4e3f 60010aa2 store 2 ,mem_temp 
+4e40 1a627e00 copy regc ,pdata 
+4e41 9a262600 isub rega ,regc 
+4e42 204052c3 call l2cap_get_signal_tx_payload 
+4e43 5800000b setarg signal_info_rsp 
+4e44 e0a08000 istore 1 ,contw 
+4e45 18e27e00 copy queue ,pdata 
+4e46 e0a08000 istore 1 ,contw 
+4e47 68010aa2 fetch 2 ,mem_temp 
+4e48 20204e2a branch l2cap_proc_signal_info_req_reply 
+
+l2cap_proc_signal_cmd_reject:
+4e49 e8c08000 ifetch 1 ,contr 
+4e4a 1fe20e00 copy pdata ,queue 
+4e4b e8c10000 ifetch 2 ,contr 
+4e4c 1fe22200 copy pdata ,rega 
+4e4d 98c08c00 iadd contr ,contr 
+4e4e 1a627e00 copy regc ,pdata 
+4e4f 9a262600 isub rega ,regc 
+
+l2cap_proc_signal_cmd_reject_rtn:
+4e50 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_connect_req:
+4e51 20407ea8 call save_cont_pointers 
+4e52 20407ead call load_cont_pointers 
+4e53 d9000000 arg 0 ,debug 
+4e54 e8c08000 ifetch 1 ,contr 
+4e55 1fe20e00 copy pdata ,queue 
+4e56 e8c10000 ifetch 2 ,contr 
+4e57 1fe22200 copy pdata ,rega 
+4e58 e8c10000 ifetch 2 ,contr 
+4e59 1fe20400 copy pdata ,temp 
+4e5a e8c10000 ifetch 2 ,contr 
+4e5b 1fe21600 copy pdata ,timeup 
+4e5c 4707c021 bpatchx patch21_7 ,mem_patch21 
+4e5d 18427e00 copy temp ,pdata 
+4e5e c000ce64 beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
+4e5f c001ce86 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
+4e60 c008ce92 beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
+4e61 c009ce9d beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
+4e62 20405062 call l2cap_reject_command 
+4e63 20204ed4 branch l2cap_proc_signal_connect_req_rtn 
+
+l2cap_proc_signal_connect_req_sdp:
+4e64 20407ea8 call save_cont_pointers 
+4e65 d8400050 arg l2cap_sdp_channel ,temp 
+4e66 68014248 fetch 2 ,mem_sdp_remote_cid 
+4e67 243a4ece nbranch already_connected ,blank 
+4e68 19627e00 copy timeup ,pdata 
+4e69 60014248 store 2 ,mem_sdp_remote_cid 
+4e6a 1c427e00 copy clkn_bt ,pdata 
+4e6b 600202d5 store 4 ,mem_l2cap_sdpres_delay_time 
+4e6c 20404e6e call store_l2cap_req_param 
+4e6d 20204ea9 branch send_connection_pending 
+
+store_l2cap_req_param:
+4e6e 600902d3 storet 2 ,mem_psm 
+4e6f 19627e00 deposit timeup 
+4e70 600102c9 store 2 ,mem_scid 
+4e71 1a227e00 deposit rega 
+4e72 600102cb store 2 ,mem_cmd_length 
+4e73 1a427e00 deposit regb 
+4e74 600102cd store 2 ,mem_tt2 
+4e75 1a627e00 deposit regc 
+4e76 600102cf store 2 ,mem_tt3 
+4e77 18e27e00 deposit queue 
+4e78 600102d1 store 2 ,mem_id 
+4e79 20600000 rtn 
+
+restore_l2cap_req_param:
+4e7a 680902d3 fetcht 2 ,mem_psm 
+4e7b 680102c9 fetch 2 ,mem_scid 
+4e7c 1fe21600 copy pdata ,timeup 
+4e7d 680102cb fetch 2 ,mem_cmd_length 
+4e7e 1fe22200 copy pdata ,rega 
+4e7f 680102cd fetch 2 ,mem_tt2 
+4e80 1fe22400 copy pdata ,regb 
+4e81 680102cf fetch 2 ,mem_tt3 
+4e82 1fe22600 copy pdata ,regc 
+4e83 680102d1 fetch 2 ,mem_id 
+4e84 1fe20e00 copy pdata ,queue 
+4e85 20600000 rtn 
+
+l2cap_proc_signal_connect_req_rfcomm:
+4e86 20407ea8 call save_cont_pointers 
+4e87 58000051 setarg l2cap_rfcomm_channel 
+4e88 d8400051 arg l2cap_rfcomm_channel ,temp 
+4e89 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+4e8a 243a4ece nbranch already_connected ,blank 
+4e8b 19627e00 copy timeup ,pdata 
+4e8c 6001424a store 2 ,mem_rfcomm_remote_cid 
+4e8d 6800c251 fetch 1 ,mem_rfcomm_state 
+4e8e 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+4e8f 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4e90 6000c251 store 1 ,mem_rfcomm_state 
+4e91 20204eb1 branch send_connection_res 
+
+l2cap_proc_signal_connect_req_hid_ctrl:
+4e92 20407ea8 call save_cont_pointers 
+4e93 d8400052 arg l2cap_hid_control_channel ,temp 
+4e94 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+4e95 243a4ece nbranch already_connected ,blank 
+4e96 19627e00 copy timeup ,pdata 
+4e97 6001424c store 2 ,mem_hid_ctrl_remote_cid 
+4e98 6800c252 fetch 1 ,mem_hid_control_state 
+4e99 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+4e9a 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4e9b 6000c252 store 1 ,mem_hid_control_state 
+4e9c 20204eb1 branch send_connection_res 
+
+l2cap_proc_signal_connect_req_hid_int:
+4e9d 20407ea8 call save_cont_pointers 
+4e9e 1b427e00 deposit clke 
+4e9f d8400053 arg l2cap_hid_interrupt_channel ,temp 
+4ea0 6801424e fetch 2 ,mem_hid_int_remote_cid 
+4ea1 243a4ece nbranch already_connected ,blank 
+4ea2 19627e00 copy timeup ,pdata 
+4ea3 6001424e store 2 ,mem_hid_int_remote_cid 
+4ea4 6800c253 fetch 1 ,mem_hid_interrupt_state 
+4ea5 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+4ea6 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4ea7 6000c253 store 1 ,mem_hid_interrupt_state 
+4ea8 20204eb1 branch send_connection_res 
+
+send_connection_pending:
+4ea9 58000001 setarg l2cap_connect_pending 
+4eaa 6001027d store 2 ,meml2cap_t1 
+4eab 70436450 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
+4eac 20204eb3 branch send_connection_res0 
+
+send_connection_sdp_res:
+4ead 6800c250 fetch 1 ,mem_sdp_state 
+4eae 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+4eaf 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4eb0 6000c250 store 1 ,mem_sdp_state 
+
+send_connection_res:
+4eb1 58000000 setarg l2cap_connect_successful 
+4eb2 6001027d store 2 ,meml2cap_t1 
+
+send_connection_res0:
+4eb3 47084022 bpatchx patch22_0 ,mem_patch22 
+4eb4 20407ead call load_cont_pointers 
+4eb5 58000003 setarg signal_connect_rsp 
+4eb6 e0a08000 istore 1 ,contw 
+4eb7 18e27e00 copy queue ,pdata 
+4eb8 e0a08000 istore 1 ,contw 
+4eb9 58000008 setarg 0x0008 
+4eba e0a10000 istore 2 ,contw 
+4ebb 18427e00 copy temp ,pdata 
+4ebc e0a10000 istore 2 ,contw 
+4ebd 19627e00 copy timeup ,pdata 
+4ebe e0a10000 istore 2 ,contw 
+4ebf 6801027d fetch 2 ,meml2cap_t1 
+4ec0 c000cec9 beq l2cap_connect_pending ,connect_pending 
+4ec1 290c0000 isolate0 0 ,debug 
+4ec2 2020cec4 branch connect_suc ,true 
+4ec3 58000004 setarg l2cap_connect_refused_no_resources 
+
+connect_suc:
+4ec4 e0a10000 istore 2 ,contw 
+4ec5 18007e00 force 0x0000 ,pdata 
+4ec6 e0a10000 istore 2 ,contw 
+4ec7 5800000c setarg 12 
+4ec8 20204ed0 branch connect_req_update_byte_counts 
+
+connect_pending:
+4ec9 e0a10000 istore 2 ,contw 
+4eca 18007e02 force 0x0002 ,pdata 
+4ecb e0a10000 istore 2 ,contw 
+4ecc 5800000c setarg 12 
+4ecd 20204ed0 branch connect_req_update_byte_counts 
+
+already_connected:
+4ece 79201000 set1 0 ,debug 
+4ecf 20204eb1 branch send_connection_res 
+
+connect_req_update_byte_counts:
+4ed0 9a40a400 iadd regb ,regb 
+4ed1 1a627e00 copy regc ,pdata 
+4ed2 9a262600 isub rega ,regc 
+4ed3 20204ed4 branch l2cap_proc_signal_connect_req_rtn 
+
+l2cap_proc_signal_connect_req_rtn:
+4ed4 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_connect_rsp:
+4ed5 e8c08000 ifetch 1 ,contr 
+4ed6 1fe20e00 copy pdata ,queue 
+4ed7 e8c10000 ifetch 2 ,contr 
+4ed8 1fe22200 copy pdata ,rega 
+4ed9 1a627e00 copy regc ,pdata 
+4eda 9a262600 isub rega ,regc 
+4edb e8c10000 ifetch 2 ,contr 
+4edc 1fe21600 copy pdata ,timeup 
+4edd e8c10000 ifetch 2 ,contr 
+4ede 1fe20400 copy pdata ,temp 
+4edf 4708c022 bpatchx patch22_1 ,mem_patch22 
+4ee0 58000050 setarg l2cap_sdp_channel 
+4ee1 98467c00 isub temp ,null 
+4ee2 2022ceed branch l2cap_proc_signal_connect_rsp_sdp ,zero 
+4ee3 58000051 setarg l2cap_rfcomm_channel 
+4ee4 98467c00 isub temp ,null 
+4ee5 2022cef3 branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
+4ee6 58000052 setarg l2cap_hid_control_channel 
+4ee7 98467c00 isub temp ,null 
+4ee8 2022ceff branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+4ee9 58000053 setarg l2cap_hid_interrupt_channel 
+4eea 98467c00 isub temp ,null 
+4eeb 2022cef9 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
+4eec 20600000 rtn 
+
+l2cap_proc_signal_connect_rsp_sdp:
+4eed 19627e00 copy timeup ,pdata 
+4eee 60014248 store 2 ,mem_sdp_remote_cid 
+4eef 6800c250 fetch 1 ,mem_sdp_state 
+4ef0 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4ef1 6000c250 store 1 ,mem_sdp_state 
+4ef2 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_connect_rsp_rfcomm:
+4ef3 19627e00 copy timeup ,pdata 
+4ef4 6001424a store 2 ,mem_rfcomm_remote_cid 
+4ef5 6800c251 fetch 1 ,mem_rfcomm_state 
+4ef6 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4ef7 6000c251 store 1 ,mem_rfcomm_state 
+4ef8 20600000 rtn 
+
+l2cap_proc_signal_connect_rsp_hid_int:
+4ef9 19627e00 copy timeup ,pdata 
+4efa 6001424c store 2 ,mem_hid_ctrl_remote_cid 
+4efb 6800c253 fetch 1 ,mem_hid_interrupt_state 
+4efc 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4efd 6000c253 store 1 ,mem_hid_interrupt_state 
+4efe 20600000 rtn 
+
+l2cap_proc_signal_connect_rsp_hid_ctrl:
+4eff 19627e00 copy timeup ,pdata 
+4f00 6001424e store 2 ,mem_hid_int_remote_cid 
+4f01 6800c252 fetch 1 ,mem_hid_control_state 
+4f02 79207e01 set1 l2cap_channel_state_conn_res ,pdata 
+4f03 6000c252 store 1 ,mem_hid_control_state 
+4f04 20600000 rtn 
+
+l2cap_proc_signal_config_req:
+4f05 e8c08000 ifetch 1 ,contr 
+4f06 1fe20e00 copy pdata ,queue 
+4f07 e8c10000 ifetch 2 ,contr 
+4f08 1fe22200 copy pdata ,rega 
+4f09 1a627e00 copy regc ,pdata 
+4f0a 9a262600 isub rega ,regc 
+4f0b e8c10000 ifetch 2 ,contr 
+4f0c 1fe20400 copy pdata ,temp 
+4f0d 18422200 copy temp ,rega 
+4f0e 47094022 bpatchx patch22_2 ,mem_patch22 
+4f0f 58000050 setarg l2cap_sdp_channel 
+4f10 98467c00 isub temp ,null 
+4f11 2022cf1c branch l2cap_proc_signal_config_req_sdp ,zero 
+4f12 58000051 setarg l2cap_rfcomm_channel 
+4f13 98467c00 isub temp ,null 
+4f14 2022cf3a branch l2cap_proc_signal_config_req_rfcomm ,zero 
+4f15 58000052 setarg l2cap_hid_control_channel 
+4f16 98467c00 isub temp ,null 
+4f17 2022cf26 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
+4f18 58000053 setarg l2cap_hid_interrupt_channel 
+4f19 98467c00 isub temp ,null 
+4f1a 2022cf30 branch l2cap_proc_signal_config_req_hid_int ,zero 
+4f1b 20205062 branch l2cap_reject_command 
+
+l2cap_proc_signal_config_req_sdp:
+4f1c 18a21600 copy contw ,timeup 
+4f1d 6800c250 fetch 1 ,mem_sdp_state 
+4f1e 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+4f1f 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+4f20 6000c250 store 1 ,mem_sdp_state 
+4f21 19620a00 copy timeup ,contw 
+4f22 d9600050 arg l2cap_sdp_channel ,timeup 
+4f23 68014248 fetch 2 ,mem_sdp_remote_cid 
+4f24 1fe20400 copy pdata ,temp 
+4f25 20204f43 branch l2cap_send_config_rsp 
+
+l2cap_proc_signal_config_req_hid_ctrl:
+4f26 18a21600 copy contw ,timeup 
+4f27 6800c252 fetch 1 ,mem_hid_control_state 
+4f28 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+4f29 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+4f2a 6000c252 store 1 ,mem_hid_control_state 
+4f2b 19620a00 copy timeup ,contw 
+4f2c d9600052 arg l2cap_hid_control_channel ,timeup 
+4f2d 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+4f2e 1fe20400 copy pdata ,temp 
+4f2f 20204f43 branch l2cap_send_config_rsp 
+
+l2cap_proc_signal_config_req_hid_int:
+4f30 18a21600 copy contw ,timeup 
+4f31 6800c253 fetch 1 ,mem_hid_interrupt_state 
+4f32 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+4f33 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+4f34 6000c253 store 1 ,mem_hid_interrupt_state 
+4f35 19620a00 copy timeup ,contw 
+4f36 d9600053 arg l2cap_hid_interrupt_channel ,timeup 
+4f37 6801424e fetch 2 ,mem_hid_int_remote_cid 
+4f38 1fe20400 copy pdata ,temp 
+4f39 20204f43 branch l2cap_send_config_rsp 
+
+l2cap_proc_signal_config_req_rfcomm:
+4f3a 18a21600 copy contw ,timeup 
+4f3b 6800c251 fetch 1 ,mem_rfcomm_state 
+4f3c 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+4f3d 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+4f3e 6000c251 store 1 ,mem_rfcomm_state 
+4f3f 19620a00 copy timeup ,contw 
+4f40 d9600051 arg l2cap_rfcomm_channel ,timeup 
+4f41 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+4f42 1fe20400 copy pdata ,temp 
+
+l2cap_send_config_rsp:
+4f43 4709c022 bpatchx patch22_3 ,mem_patch22 
+4f44 58000005 setarg signal_config_rsp 
+4f45 e0a08000 istore 1 ,contw 
+4f46 18e27e00 copy queue ,pdata 
+4f47 e0a08000 istore 1 ,contw 
+4f48 58000006 setarg 0x0006 
+4f49 e0a10000 istore 2 ,contw 
+4f4a 18427e00 copy temp ,pdata 
+4f4b e0a10000 istore 2 ,contw 
+4f4c 18007e00 force 0x00 ,pdata 
+4f4d e0a10000 istore 2 ,contw 
+4f4e 18007e00 force l2cap_config_success ,pdata 
+4f4f e0a10000 istore 2 ,contw 
+4f50 18007e0a force 10 ,pdata 
+4f51 9a40a400 iadd regb ,regb 
+4f52 60090282 storet 2 ,mem_config_req_dest_cid 
+4f53 18e27e00 copy queue ,pdata 
+4f54 60008281 store 1 ,mem_config_identifier 
+4f55 18007e50 force l2cap_sdp_channel ,pdata 
+4f56 a961fe00 icompare 0xff ,timeup 
+4f57 2020cf59 branch l2cap_send_config_rsp_is_sdp ,true 
+4f58 1fe0fe01 increase 1 ,pdata 
+
+l2cap_send_config_rsp_is_sdp:
+4f59 20600000 rtn 
+
+l2cap_check_channel_state:
+4f5a 78547c00 disable user 
+4f5b c3810000 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
+4f5c c4000000 rtnbit0 l2cap_channel_state_conn_req ,pdata 
+4f5d c4008000 rtnbit0 l2cap_channel_state_conn_res ,pdata 
+4f5e 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+4f5f 18c20a00 copy contr ,contw 
+4f60 18a08bff increase -1 ,contw 
+4f61 e0a08000 istore 1 ,contw 
+4f62 78347c00 enable user 
+4f63 20600000 rtn 
+
+l2cap_send_config_req:
+
+l2cap_send_config_req_sdp:
+4f64 6800c250 fetch 1 ,mem_sdp_state 
+4f65 20404f5a call l2cap_check_channel_state 
+4f66 24344f6b nbranch l2cap_send_config_req_rfcomm ,user 
+4f67 70028050 jam l2cap_sdp_channel ,mem_send_config_req 
+4f68 68014248 fetch 2 ,mem_sdp_remote_cid 
+4f69 60010282 store 2 ,mem_config_req_dest_cid 
+4f6a 20204f7f branch l2cap_generate_config_req 
+
+l2cap_send_config_req_rfcomm:
+4f6b 6800c251 fetch 1 ,mem_rfcomm_state 
+4f6c 20404f5a call l2cap_check_channel_state 
+4f6d 24344f72 nbranch l2cap_send_config_req_hid_ctrl ,user 
+4f6e 70028051 jam l2cap_rfcomm_channel ,mem_send_config_req 
+4f6f 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+4f70 60010282 store 2 ,mem_config_req_dest_cid 
+4f71 20204f7f branch l2cap_generate_config_req 
+
+l2cap_send_config_req_hid_ctrl:
+4f72 6800c252 fetch 1 ,mem_hid_control_state 
+4f73 20404f5a call l2cap_check_channel_state 
+4f74 24344f79 nbranch l2cap_send_config_req_hid_int ,user 
+4f75 70028052 jam l2cap_hid_control_channel ,mem_send_config_req 
+4f76 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+4f77 60010282 store 2 ,mem_config_req_dest_cid 
+4f78 20204f7f branch l2cap_generate_config_req 
+
+l2cap_send_config_req_hid_int:
+4f79 6800c253 fetch 1 ,mem_hid_interrupt_state 
+4f7a 20404f5a call l2cap_check_channel_state 
+4f7b 24740000 nrtn user 
+4f7c 70028053 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
+4f7d 6801424e fetch 2 ,mem_hid_int_remote_cid 
+4f7e 60010282 store 2 ,mem_config_req_dest_cid 
+
+l2cap_generate_config_req:
+4f7f 470a4022 bpatchx patch22_4 ,mem_patch22 
+4f80 2040523a call l2cap_get_req_id 
+4f81 204052b8 call l2cap_malloc_signal_channel 
+4f82 18002400 force 0 ,regb 
+4f83 204052c3 call l2cap_get_signal_tx_payload 
+4f84 18007e04 force signal_config_req ,pdata 
+4f85 e0a08000 istore 1 ,contw 
+4f86 6800c255 fetch 1 ,mem_ml2cap_comm_id 
+4f87 e0a08000 istore 1 ,contw 
+4f88 58000008 setarg 0x0008 
+4f89 e0a10000 istore 2 ,contw 
+4f8a 68010282 fetch 2 ,mem_config_req_dest_cid 
+4f8b e0a10000 istore 2 ,contw 
+4f8c 58000000 setarg 0x0000 
+4f8d e0a10000 istore 2 ,contw 
+4f8e 18007e01 force 1 ,pdata 
+4f8f e0a08000 istore 1 ,contw 
+4f90 18007e02 force 2 ,pdata 
+4f91 e0a08000 istore 1 ,contw 
+4f92 68008280 fetch 1 ,mem_send_config_req 
+4f93 c028cf97 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
+4f94 58000030 setarg l2cap_config_mtu_sdp 
+4f95 e0a10000 istore 2 ,contw 
+4f96 20204f99 branch l2cap_generate_config_req_done 
+
+l2cap_generate_config_req_rfcomm:
+4f97 580003e3 setarg l2cap_config_mtu_rfcomm 
+4f98 e0a10000 istore 2 ,contw 
+
+l2cap_generate_config_req_done:
+4f99 d840000c arg 0x0c ,temp 
+4f9a 6009026f storet 2 ,mem_l2cap_signal_tx_length 
+4f9b 204052c1 call l2cap_get_signal_tx_buff 
+4f9c 6801026f fetch 2 ,mem_l2cap_signal_tx_length 
+4f9d e0a10000 istore 2 ,contw 
+4f9e 18007e01 force l2cap_signal_channel ,pdata 
+4f9f e0a10000 istore 2 ,contw 
+4fa0 70028000 jam 0 ,mem_send_config_req 
+
+l2cap_proc_signal_config_req_rtn:
+4fa1 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp:
+4fa2 18c08c01 increase 1 ,contr 
+4fa3 e8c10000 ifetch 2 ,contr 
+4fa4 1fe22200 copy pdata ,rega 
+4fa5 1a627e00 copy regc ,pdata 
+4fa6 9a262600 isub rega ,regc 
+4fa7 e8c10000 ifetch 2 ,contr 
+4fa8 1fe22200 copy pdata ,rega 
+4fa9 470ac022 bpatchx patch22_5 ,mem_patch22 
+4faa 58000050 setarg l2cap_sdp_channel 
+4fab 9a267c00 isub rega ,null 
+4fac 2022cfba branch l2cap_proc_signal_config_rsp_sdp ,zero 
+4fad 58000051 setarg l2cap_rfcomm_channel 
+4fae 9a267c00 isub rega ,null 
+4faf 2022cfbe branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
+4fb0 58000052 setarg l2cap_hid_control_channel 
+4fb1 9a267c00 isub rega ,null 
+4fb2 2022cfc2 branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+4fb3 58000053 setarg l2cap_hid_interrupt_channel 
+4fb4 9a267c00 isub rega ,null 
+4fb5 2022cfc6 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
+4fb6 18c08c02 increase 2 ,contr 
+4fb7 e8c10000 ifetch 2 ,contr 
+4fb8 98007c00 iforce null 
+4fb9 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_sdp:
+4fba 6800c250 fetch 1 ,mem_sdp_state 
+4fbb 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+4fbc 6000c250 store 1 ,mem_sdp_state 
+4fbd 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_rfcomm:
+4fbe 6800c251 fetch 1 ,mem_rfcomm_state 
+4fbf 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+4fc0 6000c251 store 1 ,mem_rfcomm_state 
+4fc1 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_hid_ctrl:
+4fc2 6800c252 fetch 1 ,mem_hid_control_state 
+4fc3 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+4fc4 6000c252 store 1 ,mem_hid_control_state 
+4fc5 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_config_rsp_hid_int:
+4fc6 6800c253 fetch 1 ,mem_hid_interrupt_state 
+4fc7 79207e05 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+4fc8 6000c253 store 1 ,mem_hid_interrupt_state 
+4fc9 700a9906 jam bt_evt_hid_connected ,mem_fifo_temp 
+4fca 20207d86 branch ui_ipc_send_event 
+
+l2cap_proc_signal_disconnect_req:
+4fcb e8c08000 ifetch 1 ,contr 
+4fcc 1fe20e00 copy pdata ,queue 
+4fcd e8c10000 ifetch 2 ,contr 
+4fce 1fe22200 copy pdata ,rega 
+4fcf 1a627e00 copy regc ,pdata 
+4fd0 9a262600 isub rega ,regc 
+4fd1 e8c10000 ifetch 2 ,contr 
+4fd2 1fe22200 copy pdata ,rega 
+4fd3 e8c10000 ifetch 2 ,contr 
+4fd4 1fe21600 copy pdata ,timeup 
+4fd5 1a220400 copy rega ,temp 
+4fd6 20407ea8 call save_cont_pointers 
+4fd7 470b4022 bpatchx patch22_6 ,mem_patch22 
+4fd8 58000050 setarg l2cap_sdp_channel 
+4fd9 98467c00 isub temp ,null 
+4fda 2022cff2 branch l2cap_proc_signal_disconnect_req_sdp ,zero 
+4fdb 58000051 setarg l2cap_rfcomm_channel 
+4fdc 98467c00 isub temp ,null 
+4fdd 2022d002 branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
+4fde 58000052 setarg l2cap_hid_control_channel 
+4fdf 98467c00 isub temp ,null 
+4fe0 2022cfe6 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
+4fe1 58000053 setarg l2cap_hid_interrupt_channel 
+4fe2 98467c00 isub temp ,null 
+4fe3 2022cfec branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
+4fe4 20405062 call l2cap_reject_command 
+4fe5 20205017 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_proc_signal_disconnect_req_hid_ctrl:
+4fe6 19620400 copy timeup ,temp 
+4fe7 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+4fe8 98467c00 isub temp ,null 
+4fe9 2022cff8 branch l2cap_disconnect_hid_control_now ,zero 
+4fea 20405062 call l2cap_reject_command 
+4feb 20205017 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_proc_signal_disconnect_req_hid_int:
+4fec 19620400 copy timeup ,temp 
+4fed 6801424e fetch 2 ,mem_hid_int_remote_cid 
+4fee 98467c00 isub temp ,null 
+4fef 2022cffa branch l2cap_disconnect_hid_interrupt_now ,zero 
+4ff0 20405062 call l2cap_reject_command 
+4ff1 20205017 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_proc_signal_disconnect_req_sdp:
+4ff2 19620400 copy timeup ,temp 
+4ff3 68014248 fetch 2 ,mem_sdp_remote_cid 
+4ff4 98467c00 isub temp ,null 
+4ff5 2022cffe branch l2cap_disconnect_sdp_now ,zero 
+4ff6 20405062 call l2cap_reject_command 
+4ff7 20205017 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_disconnect_hid_control_now:
+4ff8 20405079 call l2cap_reset_hid_ctrl_state 
+4ff9 2020500a branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_disconnect_hid_interrupt_now:
+4ffa 2040507f call l2cap_reset_hid_int_state 
+4ffb 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+4ffc 203a500a branch l2cap_send_disconnect_rsp_pkt ,blank 
+4ffd 2020500a branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_disconnect_sdp_now:
+4ffe 20405074 call l2cap_reset_sdp_channel_state 
+4fff 68008288 fetch 1 ,mem_upper_sm_ss 
+5000 243a500a nbranch l2cap_send_disconnect_rsp_pkt ,blank 
+5001 2020500a branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_proc_signal_disconnect_req_rfcomm:
+5002 19620400 copy timeup ,temp 
+5003 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+5004 98467c00 isub temp ,null 
+5005 2022d008 branch l2cap_disconnect_rfcomm_now ,zero 
+5006 20405062 call l2cap_reject_command 
+5007 20205017 branch l2cap_proc_signal_disconnect_req_err_rtn 
+
+l2cap_disconnect_rfcomm_now:
+5008 2040506f call l2cap_reset_rfcomm_channel_state 
+5009 2020500a branch l2cap_send_disconnect_rsp_pkt 
+
+l2cap_send_disconnect_rsp_pkt:
+500a 20407ead call load_cont_pointers 
+500b 58000007 setarg signal_disconnect_rsp 
+500c e0a08000 istore 1 ,contw 
+500d 18e27e00 copy queue ,pdata 
+500e e0a08000 istore 1 ,contw 
+500f 58000004 setarg 0x0004 
+5010 e0a10000 istore 2 ,contw 
+5011 1a227e00 copy rega ,pdata 
+5012 e0a10000 istore 2 ,contw 
+5013 19627e00 copy timeup ,pdata 
+5014 e0a10000 istore 2 ,contw 
+5015 18007e08 force 8 ,pdata 
+5016 20205019 branch l2cap_proc_signal_disconnect_req_rtn 
+
+l2cap_proc_signal_disconnect_req_err_rtn:
+5017 20407ead call load_cont_pointers 
+5018 20205019 branch l2cap_proc_signal_disconnect_req_rtn 
+
+l2cap_proc_signal_disconnect_req_rtn:
+5019 9a40a400 iadd regb ,regb 
+501a 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_disconnect_rsp:
+501b e8c08000 ifetch 1 ,contr 
+501c 1fe20e00 copy pdata ,queue 
+501d e8c10000 ifetch 2 ,contr 
+501e 1fe22200 copy pdata ,rega 
+501f 1a627e00 copy regc ,pdata 
+5020 9a262600 isub rega ,regc 
+5021 e8c10000 ifetch 2 ,contr 
+5022 1fe21600 copy pdata ,timeup 
+5023 e8c10000 ifetch 2 ,contr 
+5024 1fe20400 copy pdata ,temp 
+5025 20407ea8 call save_cont_pointers 
+5026 470bc022 bpatchx patch22_7 ,mem_patch22 
+5027 58000050 setarg l2cap_sdp_channel 
+5028 98467c00 isub temp ,null 
+5029 2022d035 branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
+502a 58000051 setarg l2cap_rfcomm_channel 
+502b 98467c00 isub temp ,null 
+502c 2022d03b branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
+502d 58000052 setarg l2cap_hid_control_channel 
+502e 98467c00 isub temp ,null 
+502f 2022d041 branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
+5030 58000053 setarg l2cap_hid_interrupt_channel 
+5031 98467c00 isub temp ,null 
+5032 2022d047 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
+5033 20405062 call l2cap_reject_command 
+5034 2020504f branch l2cap_proc_signal_disconnect_rsp_err_rtn 
+
+l2cap_proc_signal_disconnect_rsp_sdp:
+5035 18422200 copy temp ,rega 
+5036 19620400 copy timeup ,temp 
+5037 68014248 fetch 2 ,mem_sdp_remote_cid 
+5038 98467c00 isub temp ,null 
+5039 2042d074 call l2cap_reset_sdp_channel_state ,zero 
+503a 2020504d branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_rfcomm:
+503b 18422200 copy temp ,rega 
+503c 19620400 copy timeup ,temp 
+503d 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+503e 98467c00 isub temp ,null 
+503f 2042d06f call l2cap_reset_rfcomm_channel_state ,zero 
+5040 2020504d branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+5041 18422200 copy temp ,rega 
+5042 19620400 copy timeup ,temp 
+5043 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+5044 98467c00 isub temp ,null 
+5045 2042d079 call l2cap_reset_hid_ctrl_state ,zero 
+5046 2020504d branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_hid_int:
+5047 18422200 copy temp ,rega 
+5048 19620400 copy timeup ,temp 
+5049 6801424e fetch 2 ,mem_hid_int_remote_cid 
+504a 98467c00 isub temp ,null 
+504b 2042d07f call l2cap_reset_hid_int_state ,zero 
+504c 2020504d branch l2cap_proc_signal_disconnect_rsp_rtn 
+
+l2cap_proc_signal_disconnect_rsp_rtn:
+504d 20407ead call load_cont_pointers 
+504e 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_disconnect_rsp_err_rtn:
+504f 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_echo_req:
+5050 e8c08000 ifetch 1 ,contr 
+5051 1fe20e00 copy pdata ,queue 
+5052 e8c10000 ifetch 2 ,contr 
+5053 1fe22200 copy pdata ,rega 
+5054 98c08c00 iadd contr ,contr 
+5055 58000009 setarg 9 
+5056 e0a08000 istore 1 ,contw 
+5057 18e27e00 copy queue ,pdata 
+5058 e0a08000 istore 1 ,contw 
+5059 18007e00 force 0x0000 ,pdata 
+505a e0a10000 istore 2 ,contw 
+505b 18007e04 force 4 ,pdata 
+505c 9a40a400 iadd regb ,regb 
+505d 1a627e00 copy regc ,pdata 
+505e 9a262600 isub rega ,regc 
+505f 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_echo_rsp:
+5060 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_proc_signal_info_rsp:
+5061 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_reject_command:
+5062 18002400 force 0 ,regb 
+5063 204052c3 call l2cap_get_signal_tx_payload 
+5064 58000001 setarg signal_cmd_reject 
+5065 e0a08000 istore 1 ,contw 
+5066 18e27e00 copy queue ,pdata 
+5067 e0a08000 istore 1 ,contw 
+5068 58000002 setarg 2 
+5069 e0a10000 istore 2 ,contw 
+506a 58000000 setarg cmd_not_understood 
+506b e0a10000 istore 2 ,contw 
+506c 1a40a406 increase 6 ,regb 
+506d da600004 arg 4 ,regc 
+506e 20204e1e branch l2cap_process_one_signal_rtn 
+
+l2cap_reset_rfcomm_channel_state:
+506f 58000000 setarg 0 
+5070 6001027b store 2 ,mem_rfcomm_tx_pkt_length 
+5071 6001424a store 2 ,mem_rfcomm_remote_cid 
+5072 70425100 jam 0 ,mem_rfcomm_state 
+5073 20600000 rtn 
+
+l2cap_reset_sdp_channel_state:
+5074 58000000 setarg 0 
+5075 60010275 store 2 ,mem_sdp_tx_pkt_length 
+5076 60014248 store 2 ,mem_sdp_remote_cid 
+5077 70425000 jam 0 ,mem_sdp_state 
+5078 20600000 rtn 
+
+l2cap_reset_hid_ctrl_state:
+5079 58000000 setarg 0 
+507a 6001424c store 2 ,mem_hid_ctrl_remote_cid 
+507b 70425200 jam 0 ,mem_hid_control_state 
+507c 6800c253 fetch 1 ,mem_hid_interrupt_state 
+507d c0005085 beq 0 ,l2cap_reset_hid_disconnected 
+507e 20600000 rtn 
+
+l2cap_reset_hid_int_state:
+507f 58000000 setarg 0 
+5080 6001424e store 2 ,mem_hid_int_remote_cid 
+5081 70425300 jam 0 ,mem_hid_interrupt_state 
+5082 6800c252 fetch 1 ,mem_hid_control_state 
+5083 c0005085 beq 0 ,l2cap_reset_hid_disconnected 
+5084 20600000 rtn 
+
+l2cap_reset_hid_disconnected:
+5085 700a9907 jam bt_evt_hid_disconnected ,mem_fifo_temp 
+5086 20207d86 branch ui_ipc_send_event 
+
+l2cap_disconnect_interrupt_req:
+5087 6800827f fetch 1 ,mem_control_tasks 
+5088 793ffe00 set0 l2cap_disconnect_interrupt ,pdata 
+5089 6000827f store 1 ,mem_control_tasks 
+508a 6801424e fetch 2 ,mem_hid_int_remote_cid 
+508b 207a0000 rtn blank 
+508c 204052b8 call l2cap_malloc_signal_channel 
+508d 6801424e fetch 2 ,mem_hid_int_remote_cid 
+508e 1fe22200 copy pdata ,rega 
+508f 18002453 force l2cap_hid_interrupt_channel ,regb 
+5090 2020509a branch l2cap_generate_disconnect_req 
+
+l2cap_disconnect_control_req:
+5091 6800827f fetch 1 ,mem_control_tasks 
+5092 793ffe07 set0 l2cap_disconnect_control ,pdata 
+5093 6000827f store 1 ,mem_control_tasks 
+5094 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+5095 207a0000 rtn blank 
+5096 204052b8 call l2cap_malloc_signal_channel 
+5097 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+5098 1fe22200 copy pdata ,rega 
+5099 18002452 force l2cap_hid_control_channel ,regb 
+
+l2cap_generate_disconnect_req:
+509a 2040523a call l2cap_get_req_id 
+509b 204052c3 call l2cap_get_signal_tx_payload 
+509c 18007e06 force signal_disconnect_req ,pdata 
+509d e0a08000 istore 1 ,contw 
+509e 6800c255 fetch 1 ,mem_ml2cap_comm_id 
+509f e0a08000 istore 1 ,contw 
+50a0 58000004 setarg 0x0004 
+50a1 e0a10000 istore 2 ,contw 
+50a2 1a227e00 copy rega ,pdata 
+50a3 e0a10000 istore 2 ,contw 
+50a4 1a427e00 copy regb ,pdata 
+50a5 e0a10000 istore 2 ,contw 
+50a6 18000408 force 0x08 ,temp 
+50a7 202050de branch ml2cap_send_signal 
+
+ml2cap_send_signal_connect_req:
+50a8 470c4023 bpatchx patch23_0 ,mem_patch23 
+50a9 2040523a call l2cap_get_req_id 
+50aa 204052c3 call l2cap_get_signal_tx_payload 
+50ab 58000002 setarg signal_connect_req 
+50ac e0a08000 istore 1 ,contw 
+50ad 6800c255 fetch 1 ,mem_ml2cap_comm_id 
+50ae e0a08000 istore 1 ,contw 
+50af 58000004 setarg 0x0004 
+50b0 e0a10000 istore 2 ,contw 
+50b1 18427e00 copy temp ,pdata 
+50b2 e0a10000 istore 2 ,contw 
+50b3 19627e00 copy timeup ,pdata 
+50b4 e0a10000 istore 2 ,contw 
+50b5 d8400008 arg 8 ,temp 
+50b6 202050de branch ml2cap_send_signal 
+
+ml2cap_send_signal_config_req:
+50b7 470cc023 bpatchx patch23_1 ,mem_patch23 
+50b8 2040523a call l2cap_get_req_id 
+50b9 204052c3 call l2cap_get_signal_tx_payload 
+50ba 58000004 setarg signal_config_req 
+50bb e0a08000 istore 1 ,contw 
+50bc 6800c255 fetch 1 ,mem_ml2cap_comm_id 
+50bd e0a08000 istore 1 ,contw 
+50be 58000008 setarg 0x0008 
+50bf e0a10000 istore 2 ,contw 
+50c0 18427e00 copy temp ,pdata 
+50c1 e0a10000 istore 2 ,contw 
+50c2 58000000 setarg 0x0000 
+50c3 e0a10000 istore 2 ,contw 
+50c4 58000001 setarg 0x01 
+50c5 e0a08000 istore 1 ,contw 
+50c6 58000002 setarg 0x02 
+50c7 e0a08000 istore 1 ,contw 
+50c8 580003e3 setarg l2cap_config_mtu_rfcomm 
+50c9 e0a10000 istore 2 ,contw 
+50ca d840000c arg 0xc ,temp 
+50cb 202050de branch ml2cap_send_signal 
+
+ml2cap_send_signal_disconn_req:
+50cc 470d4023 bpatchx patch23_2 ,mem_patch23 
+50cd 2040523a call l2cap_get_req_id 
+50ce 204052c3 call l2cap_get_signal_tx_payload 
+50cf 58000006 setarg signal_disconnect_req 
+50d0 e0a08000 istore 1 ,contw 
+50d1 6800c255 fetch 1 ,mem_ml2cap_comm_id 
+50d2 1fe0fe01 increase 1 ,pdata 
+50d3 18a22200 copy contw ,rega 
+50d4 6000c255 store 1 ,mem_ml2cap_comm_id 
+50d5 1a220a00 copy rega ,contw 
+50d6 e0a08000 istore 1 ,contw 
+50d7 58000004 setarg 0x0004 
+50d8 e0a10000 istore 2 ,contw 
+50d9 18427e00 copy temp ,pdata 
+50da e0a10000 istore 2 ,contw 
+50db 19627e00 copy timeup ,pdata 
+50dc e0a10000 istore 2 ,contw 
+50dd d8400008 arg 0x8 ,temp 
+
+ml2cap_send_signal:
+50de 6009026f storet 2 ,mem_l2cap_signal_tx_length 
+50df 18427e00 copy temp ,pdata 
+50e0 203a5264 branch l2cap_malloc_discard ,blank 
+50e1 204052c1 call l2cap_get_signal_tx_buff 
+50e2 6801026f fetch 2 ,mem_l2cap_signal_tx_length 
+50e3 e0a10000 istore 2 ,contw 
+50e4 18007e01 force l2cap_signal_channel ,pdata 
+50e5 e0a10000 istore 2 ,contw 
+50e6 20600000 rtn 
+
+msdp_send_req_done:
+50e7 68010275 fetch 2 ,mem_sdp_tx_pkt_length 
+50e8 203a2a8c branch assert ,blank 
+50e9 204052ce call l2cap_get_sdp_tx_buff 
+50ea 68010275 fetch 2 ,mem_sdp_tx_pkt_length 
+50eb e0a10000 istore 2 ,contw 
+50ec 68014248 fetch 2 ,mem_sdp_remote_cid 
+50ed e0a10000 istore 2 ,contw 
+50ee 20600000 rtn 
+
+ml2cap_rx_multiplexing:
+50ef 68010266 fetch 2 ,mem_l2cap_rx_pkt_length 
+50f0 203a4dfc branch l2cap_rx_reset_state ,blank 
+50f1 470dc023 bpatchx patch23_3 ,mem_patch23 
+50f2 68008268 fetch 1 ,mem_l2cap_rx_cid 
+50f3 c000d0f9 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
+50f4 c0284de8 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
+50f5 c028cdf5 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+50f6 c0294df3 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+50f7 c029cdf3 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+50f8 20204dfc branch l2cap_rx_reset_state 
+
+ml2cap_call_proc_signal:
+50f9 470e4023 bpatchx patch23_4 ,mem_patch23 
+50fa 204052b8 call l2cap_malloc_signal_channel 
+50fb 18002400 force 0 ,regb 
+50fc 204052c3 call l2cap_get_signal_tx_payload 
+50fd 1fe20a00 copy pdata ,contw 
+50fe 68010266 fetch 2 ,mem_l2cap_rx_pkt_length 
+50ff 1fe22600 copy pdata ,regc 
+5100 68010264 fetch 2 ,mem_l2cap_payload_ptr 
+5101 98000c00 iforce contr 
+
+ml2cap_proc_one_comm_loop:
+5102 20405108 call ml2cap_proc_one_comm 
+5103 1a60a7fc increase -4 ,regc 
+5104 2422d102 nbranch ml2cap_proc_one_comm_loop ,zero 
+5105 1a420400 copy regb ,temp 
+5106 204050de call ml2cap_send_signal 
+5107 20204dfc branch l2cap_rx_reset_state 
+
+ml2cap_proc_one_comm:
+5108 e8c08000 ifetch 1 ,contr 
+5109 c0015113 beq signal_connect_req ,ml2cap_proc_signal_connect_req 
+510a c000d116 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
+510b c001d120 beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
+510c c002d15c beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
+510d c002518e beq signal_config_req ,ml2cap_proc_signal_config_req 
+510e c003d213 beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
+510f c00351e1 beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
+5110 c0045050 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+5111 c0054e3a beq signal_info_req ,ml2cap_proc_signal_info_req 
+5112 2020522e branch ml2cap_proc_send_reject 
+
+ml2cap_proc_signal_connect_req:
+5113 20407ea8 call save_cont_pointers 
+5114 20407ead call load_cont_pointers 
+5115 20204e51 branch l2cap_proc_signal_connect_req 
+
+ml2cap_proc_signal_cmd_reject:
+5116 e8c08000 ifetch 1 ,contr 
+5117 1fe20e00 copy pdata ,queue 
+5118 e8c10000 ifetch 2 ,contr 
+5119 1fe22200 copy pdata ,rega 
+511a 1a627e00 copy regc ,pdata 
+511b 9a262600 isub rega ,regc 
+
+mvptr:
+511c e8c08000 ifetch 1 ,contr 
+511d 1a20a3ff increase -1 ,rega 
+511e 2422d11c nbranch mvptr ,zero 
+511f 20600000 rtn 
+
+ml2cap_proc_signal_connect_rsp:
+5120 e8c08000 ifetch 1 ,contr 
+5121 1fe20e00 copy pdata ,queue 
+5122 e8c10000 ifetch 2 ,contr 
+5123 1fe22200 copy pdata ,rega 
+5124 e8c10000 ifetch 2 ,contr 
+5125 1fe21600 copy pdata ,timeup 
+5126 e8c10000 ifetch 2 ,contr 
+5127 1fe20400 copy pdata ,temp 
+5128 e8c10000 ifetch 2 ,contr 
+5129 1fe67c00 sub pdata ,0 ,null 
+512a 2022d132 branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
+512b c001512e beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
+512c c002512e beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
+512d 20205130 branch ml2cap_proc_signal_connect_rsp_mnosucc 
+
+ml2cap_proc_signal_connect_refused_result:
+512e 700a9916 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
+512f 20407d86 call ui_ipc_send_event 
+
+ml2cap_proc_signal_connect_rsp_mnosucc:
+5130 e8c10000 ifetch 2 ,contr 
+5131 20205159 branch mnosucc 
+
+ml2cap_proc_signal_connect_rsp_sucessful:
+5132 20407ea8 call save_cont_pointers 
+5133 470ec023 bpatchx patch23_5 ,mem_patch23 
+5134 58000050 setarg l2cap_sdp_channel 
+5135 98467c00 isub temp ,null 
+5136 2022d141 branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
+5137 58000051 setarg l2cap_rfcomm_channel 
+5138 98467c00 isub temp ,null 
+5139 2022d147 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
+513a 58000053 setarg l2cap_hid_interrupt_channel 
+513b 98467c00 isub temp ,null 
+513c 2022d153 branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
+513d 58000052 setarg l2cap_hid_control_channel 
+513e 98467c00 isub temp ,null 
+513f 2022d14d branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+5140 20205159 branch mnosucc 
+
+ml2cap_proc_signal_connect_rsp_sdp:
+5141 19627e00 copy timeup ,pdata 
+5142 60014248 store 2 ,mem_sdp_remote_cid 
+5143 6800c250 fetch 1 ,mem_sdp_state 
+5144 79207e01 set1 l2cap_channel_state_conn_res 
+5145 6000c250 store 1 ,mem_sdp_state 
+5146 20205158 branch mnosucc1 
+
+ml2cap_proc_signal_connect_rsp_rfcomm:
+5147 19627e00 copy timeup ,pdata 
+5148 6001424a store 2 ,mem_rfcomm_remote_cid 
+5149 6800c251 fetch 1 ,mem_rfcomm_state 
+514a 79207e01 set1 l2cap_channel_state_conn_res 
+514b 6000c251 store 1 ,mem_rfcomm_state 
+514c 20205158 branch mnosucc1 
+
+ml2cap_proc_signal_connect_rsp_hid_ctrl:
+514d 19627e00 copy timeup ,pdata 
+514e 6001424c store 2 ,mem_hid_ctrl_remote_cid 
+514f 6800c252 fetch 1 ,mem_hid_control_state 
+5150 79207e01 set1 l2cap_channel_state_conn_res 
+5151 6000c252 store 1 ,mem_hid_control_state 
+5152 20205158 branch mnosucc1 
+
+ml2cap_proc_signal_connect_rsp_hid_int:
+5153 19627e00 copy timeup ,pdata 
+5154 6001424e store 2 ,mem_hid_int_remote_cid 
+5155 6800c253 fetch 1 ,mem_hid_interrupt_state 
+5156 79207e01 set1 l2cap_channel_state_conn_res 
+5157 6000c253 store 1 ,mem_hid_interrupt_state 
+
+mnosucc1:
+5158 20407ead call load_cont_pointers 
+
+mnosucc:
+5159 1a627e00 copy regc ,pdata 
+515a 9a262600 isub rega ,regc 
+515b 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp:
+515c e8c08000 ifetch 1 ,contr 
+515d 1fe20e00 copy pdata ,queue 
+515e e8c10000 ifetch 2 ,contr 
+515f 1fe22200 copy pdata ,rega 
+5160 1a627e00 copy regc ,pdata 
+5161 9a262600 isub rega ,regc 
+5162 e8c10000 ifetch 2 ,contr 
+5163 1fe21600 copy pdata ,timeup 
+5164 e8c10000 ifetch 2 ,contr 
+5165 e8c10000 ifetch 2 ,contr 
+5166 243a5188 nbranch mcrsdone1 ,blank 
+5167 20407ea8 call save_cont_pointers 
+5168 19620400 copy timeup ,temp 
+5169 470f4023 bpatchx patch23_6 ,mem_patch23 
+516a 58000050 setarg l2cap_sdp_channel 
+516b 98467c00 isub temp ,null 
+516c 2022d176 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
+516d 58000051 setarg l2cap_rfcomm_channel 
+516e 98467c00 isub temp ,null 
+516f 2022d17a branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
+5170 58000052 setarg l2cap_hid_control_channel 
+5171 98467c00 isub temp ,null 
+5172 2022d17e branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+5173 58000053 setarg l2cap_hid_interrupt_channel 
+5174 98467c00 isub temp ,null 
+5175 2022d182 branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
+
+ml2cap_proc_signal_config_rsp_sdp:
+5176 6800c250 fetch 1 ,mem_sdp_state 
+5177 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+5178 6000c250 store 1 ,mem_sdp_state 
+5179 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp_rfcomm:
+517a 6800c251 fetch 1 ,mem_rfcomm_state 
+517b 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+517c 6000c251 store 1 ,mem_rfcomm_state 
+517d 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp_hid_ctrl:
+517e 6800c252 fetch 1 ,mem_hid_control_state 
+517f 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+5180 6000c252 store 1 ,mem_hid_control_state 
+5181 20600000 rtn 
+
+ml2cap_proc_signal_config_rsp_hid_int:
+5182 6800c253 fetch 1 ,mem_hid_interrupt_state 
+5183 79207e05 set1 l2cap_channel_state_rcv_cfg_res 
+5184 6000c253 store 1 ,mem_hid_interrupt_state 
+5185 700a9906 jam bt_evt_hid_connected ,mem_fifo_temp 
+5186 20207d86 branch ui_ipc_send_event 
+
+mcfrsdone:
+5187 20407ead call load_cont_pointers 
+
+mcrsdone1:
+5188 1a20a3fa increase -6 ,rega 
+
+mloop2:
+5189 2022d18d branch mcrsdone ,zero 
+518a 18c08c01 increase 1 ,contr 
+518b 1a20a3ff increase -1 ,rega 
+518c 20205189 branch mloop2 
+
+mcrsdone:
+518d 20600000 rtn 
+
+ml2cap_proc_signal_config_req:
+518e e8c08000 ifetch 1 ,contr 
+518f 1fe20e00 copy pdata ,queue 
+5190 e8c10000 ifetch 2 ,contr 
+5191 1fe22200 copy pdata ,rega 
+5192 1a627e00 copy regc ,pdata 
+5193 9a262600 isub rega ,regc 
+5194 e8c10000 ifetch 2 ,contr 
+5195 18c08c02 increase 2 ,contr 
+5196 1fe20400 copy pdata ,temp 
+5197 58000005 setarg signal_config_rsp 
+5198 e0a08000 istore 1 ,contw 
+5199 18e27e00 copy queue ,pdata 
+519a e0a08000 istore 1 ,contw 
+519b 1a20a202 increase 2 ,rega 
+519c 1a227e00 copy rega ,pdata 
+519d e0a10000 istore 2 ,contw 
+519e 20407ea8 call save_cont_pointers 
+519f 470fc023 bpatchx patch23_7 ,mem_patch23 
+51a0 58000050 setarg l2cap_sdp_channel 
+51a1 98467c00 isub temp ,null 
+51a2 2022d1ad branch ml2cap_proc_signal_config_req_sdp ,zero 
+51a3 58000051 setarg l2cap_rfcomm_channel 
+51a4 98467c00 isub temp ,null 
+51a5 2022d1be branch ml2cap_proc_signal_config_req_rfcomm ,zero 
+51a6 58000052 setarg l2cap_hid_control_channel 
+51a7 98467c00 isub temp ,null 
+51a8 2022d1c4 branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
+51a9 58000053 setarg l2cap_hid_interrupt_channel 
+51aa 98467c00 isub temp ,null 
+51ab 2022d1ca branch ml2cap_proc_signal_config_req_hid_int ,zero 
+51ac 202051cf branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_sdp:
+51ad 6800c250 fetch 1 ,mem_sdp_state 
+51ae 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+51af 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+51b0 6000c250 store 1 ,mem_sdp_state 
+51b1 c28151bb bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
+51b2 6808827f fetcht 1 ,mem_control_tasks 
+51b3 79200406 set1 l2cap_init_config_req ,temp 
+51b4 6008827f storet 1 ,mem_control_tasks 
+51b5 18e27e00 copy queue ,pdata 
+51b6 1fe0fe01 increase 1 ,pdata 
+51b7 60008281 store 1 ,mem_config_identifier 
+51b8 6800c250 fetch 1 ,mem_sdp_state 
+51b9 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+51ba 6000c250 store 1 ,mem_sdp_state 
+
+ml2cap_proc_signal_config_req_sdp_nsndreq:
+51bb 68014248 fetch 2 ,mem_sdp_remote_cid 
+51bc 60010282 store 2 ,mem_config_req_dest_cid 
+51bd 202051cf branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_rfcomm:
+51be 6800c251 fetch 1 ,mem_rfcomm_state 
+51bf 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+51c0 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+51c1 6000c251 store 1 ,mem_rfcomm_state 
+51c2 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+51c3 202051cf branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_hid_ctrl:
+51c4 6800c252 fetch 1 ,mem_hid_control_state 
+51c5 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+51c6 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+51c7 6000c252 store 1 ,mem_hid_control_state 
+51c8 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+51c9 202051cf branch mcfgrq_done 
+
+ml2cap_proc_signal_config_req_hid_int:
+51ca 6800c253 fetch 1 ,mem_hid_interrupt_state 
+51cb 79207e04 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+51cc 79207e03 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+51cd 6000c253 store 1 ,mem_hid_interrupt_state 
+51ce 6801424e fetch 2 ,mem_hid_int_remote_cid 
+
+mcfgrq_done:
+51cf 1fe21600 copy pdata ,timeup 
+51d0 20407ead call load_cont_pointers 
+51d1 19627e00 copy timeup ,pdata 
+51d2 e0a10000 istore 2 ,contw 
+51d3 18007e00 force 0x0000 ,pdata 
+51d4 e0a10000 istore 2 ,contw 
+51d5 18007e00 force 0x0000 ,pdata 
+51d6 e0a10000 istore 2 ,contw 
+51d7 18007e0a force 10 ,pdata 
+51d8 9a40a400 iadd regb ,regb 
+51d9 1a20a3fa increase -6 ,rega 
+
+mloop1:
+51da 2022d1e0 branch mcrqdone ,zero 
+51db e8c08000 ifetch 1 ,contr 
+51dc e0a08000 istore 1 ,contw 
+51dd 1a40a401 increase 1 ,regb 
+51de 1a20a3ff increase -1 ,rega 
+51df 202051da branch mloop1 
+
+mcrqdone:
+51e0 20600000 rtn 
+
+ml2cap_proc_signal_disconn_req:
+51e1 e8c08000 ifetch 1 ,contr 
+51e2 1fe20e00 copy pdata ,queue 
+51e3 e8c10000 ifetch 2 ,contr 
+51e4 1fe22200 copy pdata ,rega 
+51e5 1a627e00 copy regc ,pdata 
+51e6 9a262600 isub rega ,regc 
+51e7 e8c10000 ifetch 2 ,contr 
+51e8 1fe22200 copy pdata ,rega 
+51e9 e8c10000 ifetch 2 ,contr 
+51ea 1fe21600 copy pdata ,timeup 
+51eb 20407ea8 call save_cont_pointers 
+51ec 47104024 bpatchx patch24_0 ,mem_patch24 
+51ed 58000050 setarg l2cap_sdp_channel 
+51ee 1a220400 copy rega ,temp 
+51ef 98467c00 isub temp ,null 
+51f0 2022d1fa branch ml2cap_proc_signal_disconn_sdp ,zero 
+51f1 58000052 setarg l2cap_hid_control_channel 
+51f2 1a220400 copy rega ,temp 
+51f3 98467c00 isub temp ,null 
+51f4 2022d1ff branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
+51f5 58000053 setarg l2cap_hid_interrupt_channel 
+51f6 1a220400 copy rega ,temp 
+51f7 98467c00 isub temp ,null 
+51f8 2022d201 branch ml2cap_proc_signal_disconn_hid_int ,zero 
+51f9 20205203 branch mclsrfc 
+
+ml2cap_proc_signal_disconn_sdp:
+51fa 58000000 setarg 0x0000 
+51fb 60010275 store 2 ,mem_sdp_tx_pkt_length 
+51fc 60014248 store 2 ,mem_sdp_remote_cid 
+51fd 6000c250 store 1 ,mem_sdp_state 
+51fe 20205205 branch mclssdp 
+
+ml2cap_proc_signal_disconn_hid_ctrl:
+51ff 20405079 call l2cap_reset_hid_ctrl_state 
+5200 20205205 branch mclssdp 
+
+ml2cap_proc_signal_disconn_hid_int:
+5201 2040507f call l2cap_reset_hid_int_state 
+5202 20205205 branch mclssdp 
+
+mclsrfc:
+5203 58000000 setarg 0x0000 
+5204 6001027b store 2 ,mem_rfcomm_tx_pkt_length 
+
+mclssdp:
+5205 20407ead call load_cont_pointers 
+5206 58000007 setarg signal_disconnect_rsp 
+5207 e0a08000 istore 1 ,contw 
+5208 18e27e00 copy queue ,pdata 
+5209 e0a08000 istore 1 ,contw 
+520a 58000004 setarg 0x0004 
+520b e0a10000 istore 2 ,contw 
+520c 1a227e00 copy rega ,pdata 
+520d e0a10000 istore 2 ,contw 
+520e 19627e00 copy timeup ,pdata 
+520f e0a10000 istore 2 ,contw 
+5210 18007e08 force 8 ,pdata 
+5211 9a40a400 iadd regb ,regb 
+5212 20600000 rtn 
+
+ml2cap_proc_signal_disconn_rsp:
+5213 e8c08000 ifetch 1 ,contr 
+5214 1fe20e00 copy pdata ,queue 
+5215 e8c10000 ifetch 2 ,contr 
+5216 1fe22200 copy pdata ,rega 
+5217 e8c10000 ifetch 2 ,contr 
+5218 1fe21600 copy pdata ,timeup 
+5219 e8c10000 ifetch 2 ,contr 
+521a 1fe20400 copy pdata ,temp 
+521b 20407ea8 call save_cont_pointers 
+521c 4710c024 bpatchx patch24_1 ,mem_patch24 
+521d 6800c255 fetch 1 ,mem_ml2cap_comm_id 
+521e a8e1fe00 icompare 0xff ,queue 
+521f 2420d22a nbranch mdisdone ,true 
+5220 58000050 setarg l2cap_sdp_channel 
+5221 98467c00 isub temp ,null 
+5222 2022d227 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
+5223 58000051 setarg l2cap_rfcomm_channel 
+5224 98467c00 isub temp ,null 
+5225 2022d22a branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
+5226 2020522a branch mdisdone 
+
+ml2cap_proc_signal_disconn_rsp_sdp:
+5227 70424800 jam 0 ,mem_sdp_remote_cid 
+5228 70425000 jam 0 ,mem_sdp_state 
+5229 2020522a branch mdisdone 
+
+ml2cap_proc_signal_disconn_rsp_rfcomm:
+
+mdisdone:
+522a 20407ead call load_cont_pointers 
+522b 1a627e00 copy regc ,pdata 
+522c 9a262600 isub rega ,regc 
+522d 20600000 rtn 
+
+ml2cap_proc_send_reject:
+522e 58000001 setarg signal_cmd_reject 
+522f e0a08000 istore 1 ,contw 
+5230 e8c08000 ifetch 1 ,contr 
+5231 e0a08000 istore 1 ,contw 
+5232 58000002 setarg 0x0002 
+5233 e0a10000 istore 2 ,contw 
+5234 58000000 setarg 0x0000 
+5235 e0a10000 istore 2 ,contw 
+5236 58000006 setarg 0x0006 
+5237 9a40a400 iadd regb ,regb 
+5238 18002604 force 4 ,regc 
+5239 20600000 rtn 
+
+l2cap_get_req_id:
+523a 6800c255 fetch 1 ,mem_ml2cap_comm_id 
+523b 1fe0fe01 increase 1 ,pdata 
+523c c080523e bne 0 ,l2cap_get_req_id_ok 
+523d 1fe0fe01 increase 1 ,pdata 
+
+l2cap_get_req_id_ok:
+523e 6000c255 store 1 ,mem_ml2cap_comm_id 
+523f 20600000 rtn 
+
+l2cap_malloc:
+5240 47114024 bpatchx patch24_2 ,mem_patch24 
+5241 da400000 arg 0 ,regb 
+5242 2040526e call l2cap_malloc_is_fifo_full 
+5243 243a2a8c nbranch assert ,blank 
+5244 2040527e call l2cap_malloc_get_full_map 
+5245 da401800 arg mem_tx_buff0 ,regb 
+5246 d8e00000 arg 0 ,queue 
+
+l2cap_malloc_loop:
+5247 6808c256 fetcht 1 ,mem_used_map 
+5248 a84fffff qisolate1 temp 
+5249 2020d24f branch l2cap_malloc_next ,true 
+524a 204052a0 call l2cap_malloc_enough 
+524b 19667c00 sub timeup ,0 ,null 
+524c 2021524f branch l2cap_malloc_next ,positive 
+524d 20405288 call l2cap_malloc_into_fifo 
+524e 20205255 branch l2cap_malloc_rtn 
+
+l2cap_malloc_next:
+524f 1a40a480 increase 128 ,regb 
+5250 18e08e01 increase 1 ,queue 
+5251 58000008 setarg 8 
+5252 98e67c00 isub queue ,null 
+5253 20215247 branch l2cap_malloc_loop ,positive 
+5254 da400000 arg 0 ,regb 
+
+l2cap_malloc_rtn:
+5255 1a427e00 copy regb ,pdata 
+5256 203a2a8c branch assert ,blank 
+5257 20600000 rtn 
+
+l2cap_malloc_fifo_out:
+5258 4711c024 bpatchx patch24_3 ,mem_patch24 
+5259 20405277 call l2cap_malloc_fifo_get_first_ptr 
+525a 18c08c01 increase 1 ,contr 
+525b e8c10000 ifetch 2 ,contr 
+525c 20600000 rtn 
+
+l2cap_malloc_free:
+525d 47124024 bpatchx patch24_4 ,mem_patch24 
+525e 20405277 call l2cap_malloc_fifo_get_first_ptr 
+525f 18c20a00 copy contr ,contw 
+5260 18c20400 copy contr ,temp 
+5261 58000000 setarg 0 
+5262 e0a18000 istore 3 ,contw 
+5263 20600000 rtn 
+
+l2cap_malloc_discard:
+5264 4712c024 bpatchx patch24_5 ,mem_patch24 
+5265 20405274 call l2cap_malloc_is_fifo_empty 
+5266 203a2a8c branch assert ,blank 
+5267 6801c25d fetch 3 ,mem_tx_fifo2 
+5268 6001c260 store 3 ,mem_tx_fifo3 
+5269 6801c25a fetch 3 ,mem_tx_fifo1 
+526a 6001c25d store 3 ,mem_tx_fifo2 
+526b 6801c257 fetch 3 ,mem_tx_fifo0 
+526c 6001c25a store 3 ,mem_tx_fifo1 
+526d 20600000 rtn 
+
+l2cap_malloc_is_fifo_full:
+526e 47134024 bpatchx patch24_6 ,mem_patch24 
+526f 6801c257 fetch 3 ,mem_tx_fifo0 
+5270 20600000 rtn 
+
+l2cap_malloc_is_fifo_nearly_full:
+5271 4713c024 bpatchx patch24_7 ,mem_patch24 
+5272 6801c25a fetch 3 ,mem_tx_fifo1 
+5273 20600000 rtn 
+
+l2cap_malloc_is_fifo_empty:
+5274 47144025 bpatchx patch25_0 ,mem_patch25 
+5275 6801c260 fetch 3 ,mem_tx_fifo3 
+5276 20600000 rtn 
+
+l2cap_malloc_fifo_get_first_ptr:
+5277 20405274 call l2cap_malloc_is_fifo_empty 
+5278 203a2a8c branch assert ,blank 
+5279 d8c04257 arg mem_tx_fifo0 ,contr 
+
+l2cap_malloc_free_loop:
+527a e8c18000 ifetch 3 ,contr 
+527b 203a527a branch l2cap_malloc_free_loop ,blank 
+527c 18c08dfd increase -3 ,contr 
+527d 20600000 rtn 
+
+l2cap_malloc_get_full_map:
+527e 4714c025 bpatchx patch25_1 ,mem_patch25 
+527f df200004 arg 4 ,loopcnt 
+5280 d8c04257 arg mem_tx_fifo0_map ,contr 
+5281 d8400000 arg 0 ,temp 
+
+l2cap_malloc_get_full_map_loop:
+5282 e8c18000 ifetch 3 ,contr 
+5283 1fe17eff and pdata ,0xff ,pdata 
+5284 98418400 ior temp ,temp 
+5285 c2005282 loop l2cap_malloc_get_full_map_loop 
+5286 6008c256 storet 1 ,mem_used_map 
+5287 20600000 rtn 
+
+l2cap_malloc_into_fifo:
+5288 47154025 bpatchx patch25_2 ,mem_patch25 
+5289 2040526e call l2cap_malloc_is_fifo_full 
+528a 243a2a8c nbranch assert ,blank 
+528b 20405274 call l2cap_malloc_is_fifo_empty 
+528c 203a5295 branch l2cap_malloc_into_fifo_no_push ,blank 
+528d 6801c25a fetch 3 ,mem_tx_fifo1 
+528e 6001c257 store 3 ,mem_tx_fifo0 
+528f e8c18000 ifetch 3 ,contr 
+5290 e0a18000 istore 3 ,contw 
+5291 e8c18000 ifetch 3 ,contr 
+5292 e0a18000 istore 3 ,contw 
+5293 58000000 setarg 0 
+5294 e0a18000 istore 3 ,contw 
+
+l2cap_malloc_into_fifo_no_push:
+5295 d8400000 arg 0 ,temp 
+5296 19627e00 copy timeup ,pdata 
+5297 98e0fe00 iadd queue ,pdata 
+
+l2cap_malloc_into_fifo_loop:
+5298 f9200400 qset1 temp 
+5299 18e08e01 increase 1 ,queue 
+529a 98e67c00 isub queue ,null 
+529b 2422d298 nbranch l2cap_malloc_into_fifo_loop ,zero 
+529c 1a4d7e00 lshift8 regb ,pdata 
+529d 9841fe00 ior temp ,pdata 
+529e 6001c260 store 3 ,mem_tx_fifo3 
+529f 20600000 rtn 
+
+l2cap_malloc_enough:
+52a0 4715c025 bpatchx patch25_3 ,mem_patch25 
+52a1 2040527e call l2cap_malloc_get_full_map 
+52a2 18e22600 copy queue ,regc 
+52a3 d8400000 arg 0 ,temp 
+52a4 d9600000 arg 0 ,timeup 
+
+l2cap_malloc_enough_loop:
+52a5 18e27e00 copy queue ,pdata 
+52a6 c00452b0 beq 8 ,l2cap_malloc_enough_end 
+52a7 6800c256 fetch 1 ,mem_used_map 
+52a8 afefffff qisolate1 pdata 
+52a9 2020d2b0 branch l2cap_malloc_enough_end ,true 
+52aa 18408480 increase 128 ,temp 
+52ab 18e08e01 increase 1 ,queue 
+52ac 1a227e00 copy rega ,pdata 
+52ad 98467c00 isub temp ,null 
+52ae 2022d2b0 branch l2cap_malloc_enough_end ,zero 
+52af 202152a5 branch l2cap_malloc_enough_loop ,positive 
+
+l2cap_malloc_enough_end:
+52b0 18427e00 copy temp ,pdata 
+52b1 9a267c00 isub rega ,null 
+52b2 242152b6 nbranch l2cap_malloc_enough_rtn ,positive 
+52b3 18e27e00 copy queue ,pdata 
+52b4 1a620400 copy regc ,temp 
+52b5 98461600 isub temp ,timeup 
+
+l2cap_malloc_enough_rtn:
+52b6 1a620e00 copy regc ,queue 
+52b7 20600000 rtn 
+
+l2cap_malloc_signal_channel:
+52b8 47164025 bpatchx patch25_4 ,mem_patch25 
+52b9 da20007f arg l2cap_signal_malloc_size ,rega 
+52ba 20405240 call l2cap_malloc 
+52bb 6001026b store 2 ,mem_l2cap_signal_tx_buff_ptr 
+52bc 1fe0fe04 increase 4 ,pdata 
+52bd 6001026d store 2 ,mem_l2cap_signal_tx_payload_ptr 
+52be 58000000 setarg 0 
+52bf 6001026f store 2 ,mem_l2cap_signal_tx_length 
+52c0 20600000 rtn 
+
+l2cap_get_signal_tx_buff:
+52c1 6801026b fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
+52c2 202052e2 branch l2cap_util_pdata_to_contw 
+
+l2cap_get_signal_tx_payload:
+52c3 6801026d fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
+52c4 202052e2 branch l2cap_util_pdata_to_contw 
+
+l2cap_malloc_sdp_channel:
+52c5 4716c025 bpatchx patch25_5 ,mem_patch25 
+52c6 da2000fa arg sdp_malloc_size ,rega 
+52c7 20405240 call l2cap_malloc 
+52c8 60010271 store 2 ,mem_sdp_tx_buff_ptr 
+52c9 1fe0fe04 increase 4 ,pdata 
+52ca 60010273 store 2 ,mem_sdp_tx_payload_ptr 
+52cb 58000000 setarg 0 
+52cc 60010275 store 2 ,mem_sdp_tx_pkt_length 
+52cd 20600000 rtn 
+
+l2cap_get_sdp_tx_buff:
+52ce 68010271 fetch 2 ,mem_sdp_tx_buff_ptr 
+52cf 202052e2 branch l2cap_util_pdata_to_contw 
+
+l2cap_get_sdp_tx_payload:
+52d0 68010273 fetch 2 ,mem_sdp_tx_payload_ptr 
+52d1 202052e2 branch l2cap_util_pdata_to_contw 
+
+l2cap_malloc_rfcomm_channel:
+52d2 47174025 bpatchx patch25_6 ,mem_patch25 
+52d3 20407e7c call push_stack 
+52d4 70028401 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
+52d5 2040526e call l2cap_malloc_is_fifo_full 
+52d6 247a0000 nrtn blank 
+52d7 da20007f arg rfcomm_malloc_size ,rega 
+52d8 20405240 call l2cap_malloc 
+52d9 60010277 store 2 ,mem_rfcomm_tx_buff_ptr 
+52da 1fe0fe04 increase 4 ,pdata 
+52db 60010279 store 2 ,mem_rfcomm_tx_payload_ptr 
+52dc 58000000 setarg 0 
+52dd 6001027b store 2 ,mem_rfcomm_tx_pkt_length 
+52de 70028400 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+52df 20207e8c branch pop_stack 
+
+l2cap_get_rfcomm_tx_buff:
+52e0 68010277 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+52e1 202052e2 branch l2cap_util_pdata_to_contw 
+
+l2cap_util_pdata_to_contw:
+52e2 203a2a8c branch assert ,blank 
+52e3 1fe20a00 copy pdata ,contw 
+52e4 20600000 rtn 
+
+l2cap_lpm_save_calc_len:
+52e5 4717c025 bpatchx patch25_7 ,mem_patch25 
+52e6 da400000 arg 0 ,regb 
+52e7 da204257 arg mem_tx_fifo0_map ,rega 
+52e8 1a20a3fe increase -2 ,rega 
+
+l2cap_lpm_save_calc_len_loop:
+52e9 1a20a202 increase 2 ,rega 
+52ea 58004263 setarg mem_tx_fifo_end 
+52eb 9a267c00 isub rega ,null 
+52ec 2022d2f5 branch l2cap_lpm_save_calc_len_end ,zero 
+52ed ea208000 ifetch 1 ,rega 
+52ee 1a20a201 increase 1 ,rega 
+52ef 203a52e9 branch l2cap_lpm_save_calc_len_loop ,blank 
+52f0 ea290000 ifetcht 2 ,rega 
+52f1 e8410000 ifetch 2 ,temp 
+52f2 9a40a400 iadd regb ,regb 
+52f3 1a40a404 increase 4 ,regb 
+52f4 202052e9 branch l2cap_lpm_save_calc_len_loop 
+
+l2cap_lpm_save_calc_len_end:
+52f5 1a427e00 copy regb ,pdata 
+52f6 20600000 rtn 
+
+l2cap_lpm_get_wake_lock:
+52f7 d8e0000c arg wake_lock_l2cap_tx ,queue 
+52f8 20202c32 branch lpm_get_wake_lock 
+
+l2cap_lpm_put_wake_lock:
+52f9 d8e0000c arg wake_lock_l2cap_tx ,queue 
+52fa 20202c36 branch lpm_put_wake_lock 
+
+l2cap_lpm_save_txbuf:
+52fb 47184026 bpatchx patch26_0 ,mem_patch26 
+52fc 2040527e call l2cap_malloc_get_full_map 
+52fd 6800c256 fetch 1 ,mem_used_map 
+52fe 207a0000 rtn blank 
+52ff 204052e5 call l2cap_lpm_save_calc_len 
+5300 d8400100 arg l2cap_lpm_txbuf_len ,temp 
+5301 98467c00 isub temp ,null 
+5302 202152f7 branch l2cap_lpm_get_wake_lock ,positive 
+5303 204052f9 call l2cap_lpm_put_wake_lock 
+5304 d8a04263 arg mem_l2cap_lpm_txbuf ,contw 
+5305 da204257 arg mem_tx_fifo0 ,rega 
+
+l2cap_lpm_save_txbuf_loop:
+5306 58004263 setarg mem_tx_fifo_end 
+5307 9a267c00 isub rega ,null 
+5308 20628000 rtn zero 
+5309 ea208000 ifetch 1 ,rega 
+530a 1a20a201 increase 1 ,rega 
+530b 243a530f nbranch l2cap_lpm_save_txbuf_nempty ,blank 
+530c e0a10000 istore 2 ,contw 
+530d 1a20a202 increase 2 ,rega 
+530e 20205306 branch l2cap_lpm_save_txbuf_loop 
+
+l2cap_lpm_save_txbuf_nempty:
+530f ea210000 ifetch 2 ,rega 
+5310 1a20a202 increase 2 ,rega 
+5311 1fe20c00 copy pdata ,contr 
+5312 e8c10000 ifetch 2 ,contr 
+5313 e0a10000 istore 2 ,contw 
+5314 1fe27200 copy pdata ,loopcnt 
+5315 1f20f202 increase 2 ,loopcnt 
+5316 20407f01 call memcpy 
+5317 20205306 branch l2cap_lpm_save_txbuf_loop 
+
+l2cap_lpm_load_txbuf:
+5318 4718c026 bpatchx patch26_1 ,mem_patch26 
+5319 2040527e call l2cap_malloc_get_full_map 
+531a 6800c256 fetch 1 ,mem_used_map 
+531b 207a0000 rtn blank 
+531c da204258 arg mem_tx_fifo0_ptr ,rega 
+531d 1a20a3fd increase -3 ,rega 
+531e d8c04263 arg mem_l2cap_lpm_txbuf ,contr 
+
+l2cap_lpm_load_txbuf_loop:
+531f 1a20a203 increase 3 ,rega 
+5320 58004264 setarg mem_tx_fifo_end + 1 
+5321 9a267c00 isub rega ,null 
+5322 20628000 rtn zero 
+5323 e8c10000 ifetch 2 ,contr 
+5324 203a531f branch l2cap_lpm_load_txbuf_loop ,blank 
+5325 1fe0fe04 increase 4 ,pdata 
+5326 1fe27200 copy pdata ,loopcnt 
+5327 18c22400 copy contr ,regb 
+5328 ea210000 ifetch 2 ,rega 
+5329 1fe20a00 copy pdata ,contw 
+532a 1a420c00 copy regb ,contr 
+532b 18c08dfe increase -2 ,contr 
+532c 20407f01 call memcpy 
+532d 2020531f branch l2cap_lpm_load_txbuf_loop 
+
+le_init_conn:
+532e 47194026 bpatchx patch26_2 ,mem_patch26 
+532f 7855fc00 disable wake 
+5330 70045501 jam 1 ,mem_le_conn_handle 
+5331 70043f03 jam 3 ,mem_le_state 
+5332 70045601 jam 1 ,mem_le_arq 
+5333 5fffffff setarg -1 
+5334 60010459 store 2 ,mem_le_event_count 
+5335 18007e00 force 0 ,pdata 
+5336 60008457 store 1 ,mem_le_ch 
+5337 60008462 store 1 ,mem_le_op 
+5338 6001c169 store 3 ,mem_sniff_rcv 
+5339 6001c16c store 3 ,mem_sniff_lost 
+533a 6002c403 store 5 ,mem_le_pcnt_tx 
+533b 79207e27 set1 39 ,pdata 
+533c 6002c408 store 5 ,mem_le_pcnt_rx 
+533d 7043dc01 jam 1 ,mem_le_txheader 
+533e 7043dd00 jam 0 ,mem_le_txlen 
+533f 202056ed branch le_supervision_flush 
+
+le_init_master:
+5340 4719c026 bpatchx patch26_3 ,mem_patch26 
+5341 7834fc00 enable master 
+5342 70044003 jam lemode_master ,mem_le_mode 
+5343 70047801 jam 1 ,mem_le_att_handle 
+5344 70445a01 jam 1 ,mem_le_search_handle_start 
+5345 5800ffff setarg 0xffff 
+5346 6001445c store 2 ,mem_le_search_handle_end 
+5347 18007e00 force 0 ,pdata 
+5348 6002c408 store 5 ,mem_le_pcnt_rx 
+5349 79207e27 set1 39 ,pdata 
+534a 6002c403 store 5 ,mem_le_pcnt_tx 
+534b 2020532e branch le_init_conn 
+
+le_init_slave:
+534c 471a4026 bpatchx patch26_4 ,mem_patch26 
+534d 7854fc00 disable master 
+534e 58000017 setarg 0x17 
+534f 600144a8 store 2 ,mem_le_remote_mtu 
+5350 70044001 jam lemode_slave ,mem_le_mode 
+5351 70436e00 jam 0 ,mem_le_adv_enable 
+5352 7000a000 jam 0 ,mem_lpm_current_mult 
+5353 7044c400 jam flag_le_pairing_null ,mem_le_pairing_state 
+5354 7044c500 jam flag_le_enc_null ,mem_le_enc_state 
+5355 6801046d fetch 2 ,mem_le_superto 
+5356 600144ba store 2 ,mem_le_init_superto 
+5357 68010441 fetch 2 ,mem_le_tsniff 
+5358 1feffe05 mul32 pdata ,5 ,pdata 
+5359 1ff1fe00 rshift4 pdata ,pdata 
+535a 6001046d store 2 ,mem_le_superto 
+535b 2020532e branch le_init_conn 
+
+le_dispatch:
+535c 204053c4 call le_enable 
+535d 204055e8 call le_scan 
+535e 204056f0 call le_adv 
+535f 202053ce branch le_disable 
+
+le_conn_dispatch:
+5360 471ac026 bpatchx patch26_5 ,mem_patch26 
+5361 204053c4 call le_enable 
+5362 204032f4 call app_process_ble 
+5363 68008440 fetch 1 ,mem_le_mode 
+5364 c001d366 beq lemode_master ,le_master_dispatch 
+5365 2020537a branch le_slave_dispatch 
+
+le_master_dispatch:
+5366 471b4026 bpatchx patch26_6 ,mem_patch26 
+5367 7834fc00 enable master 
+5368 204056e4 call le_supervision_update 
+5369 20215377 branch le_master_disconn ,positive 
+536a 20402c6c call check_ble_disabled 
+536b 20405413 call le_setup 
+536c 2040561e call le_prepare_tx 
+536d 7856fc00 disable match 
+536e 204054bf call le_transmit_receive_sifs 
+536f 24768000 nrtn match 
+5370 471bc026 bpatchx patch26_7 ,mem_patch26 
+5371 68008005 fetch 1 ,mem_le_conn_rcv 
+5372 1fe0fe01 increase 1 ,pdata 
+5373 60008005 store 1 ,mem_le_conn_rcv 
+5374 204055aa call le_acknowledge 
+5375 7854fc00 disable master 
+5376 20600000 rtn 
+
+le_master_disconn:
+5377 204053a9 call le_disconnect 
+5378 7854fc00 disable master 
+5379 20600000 rtn 
+
+le_slave_dispatch:
+537a 471c4027 bpatchx patch27_0 ,mem_patch27 
+537b 70450f00 jam 0 ,mem_le_md_count 
+537c 20407aaf call sp_calc_sequence_256 
+537d 20405c18 call le_secure_connect_sm 
+537e 78577c00 disable attempt 
+537f 204056e4 call le_supervision_update 
+5380 202153a9 branch le_slave_disconn ,positive 
+5381 20402c6c call check_ble_disabled 
+5382 20405413 call le_setup 
+5383 20405489 call le_receive_slave 
+5384 242c539b nbranch le_slave_unsync ,sync 
+5385 204053b7 call le_got_first_packet 
+5386 2036d388 branch le_slave_match ,match 
+5387 20205395 branch le_slave_cont 
+
+le_slave_match:
+5388 471cc027 bpatchx patch27_1 ,mem_patch27 
+5389 6800c50f fetch 1 ,mem_le_md_count 
+538a 1fe0fe01 pincrease 1 
+538b 6000c50f store 1 ,mem_le_md_count 
+538c c0065395 beq le_md_max_count ,le_slave_cont 
+538d 204055aa call le_acknowledge 
+538e 2040561e call le_prepare_tx 
+538f 204054c7 call le_transmit_norx 
+5390 2040567e call le_parse 
+5391 680141fb fetch 2 ,mem_cb_ble_transmit 
+5392 20407f9c call callback_func 
+5393 204053a0 call le_check_md 
+5394 203453a4 branch le_slave_more_data ,user 
+
+le_slave_cont:
+5395 471d4027 bpatchx patch27_2 ,mem_patch27 
+5396 20405be4 call le_pairing_sm 
+5397 20405bdb call le_check_paring_time 
+5398 20407d9c call check_51cmd 
+5399 68008462 fetch 1 ,mem_le_op 
+539a c281d3a9 bbit1 op_disconn ,le_slave_disconn 
+
+le_slave_unsync:
+539b 471dc027 bpatchx patch27_3 ,mem_patch27 
+539c 204057f4 call le_lpm_set_mult 
+539d 2040559d call le_update_channel_map 
+539e 20405575 call le_update_param 
+539f 20202841 branch calc_clke_offset 
+
+le_check_md:
+53a0 78547c00 disable user 
+53a1 c5157fe7 bmark1 mark_ble_rx_md ,enable_user 
+53a2 c514ffe7 bmark1 mark_ble_tx_md ,enable_user 
+53a3 20600000 rtn 
+
+le_slave_more_data:
+53a4 471e4027 bpatchx patch27_4 ,mem_patch27 
+53a5 78377c00 enable attempt 
+53a6 204054c1 call le_transmit_receive_sifs_notx 
+53a7 2036d388 branch le_slave_match ,match 
+53a8 20205395 branch le_slave_cont 
+
+le_slave_disconn:
+
+le_disconnect:
+53a9 471ec027 bpatchx patch27_5 ,mem_patch27 
+53aa 204053af call le_clear_connection_info 
+53ab 204033b4 call app_disconn_reason_collect_ble 
+53ac 20407a77 call sp_initialize_256 
+53ad 700a9915 jam bt_evt_le_disconnected ,mem_fifo_temp 
+53ae 20207d86 branch ui_ipc_send_event 
+
+le_clear_connection_info:
+53af 58000000 setarg 0 
+53b0 6004c4ff store 9 ,mem_le_tx_buff_used 
+53b1 70045500 jam 0 ,mem_le_conn_handle 
+53b2 70044000 jam lemode_idle ,mem_le_mode 
+53b3 70043f00 jam 0 ,mem_le_state 
+53b4 7044c500 jam flag_le_enc_null ,mem_le_enc_state 
+53b5 7044c400 jam flag_le_pairing_null ,mem_le_pairing_state 
+53b6 20600000 rtn 
+
+le_got_first_packet:
+53b7 471f4027 bpatchx patch27_6 ,mem_patch27 
+53b8 68008005 fetch 1 ,mem_le_conn_rcv 
+53b9 1fe0fe01 increase 1 ,pdata 
+53ba 60008005 store 1 ,mem_le_conn_rcv 
+53bb 6800843f fetch 1 ,mem_le_state 
+53bc c3818000 rtnbit1 lestate_got_first_packet 
+53bd 79207e03 set1 lestate_got_first_packet 
+53be 6000843f store 1 ,mem_le_state 
+53bf 680144ba fetch 2 ,mem_le_init_superto 
+53c0 6001046d store 2 ,mem_le_superto 
+53c1 58000000 setarg 0 
+53c2 600244e5 store 4 ,mem_le_transmit_window 
+53c3 20600000 rtn 
+
+le_enable:
+53c4 471fc027 bpatchx patch27_7 ,mem_patch27 
+53c5 70890f36 jam 0x36 ,rf_adc_goff 
+53c6 70890b5f jam 0x5f ,rf_agc_nsat 
+53c7 783b7c00 enable le 
+53c8 70891407 jam 7 ,rfen_ulp 
+53c9 20402c6c call check_ble_disabled 
+53ca 6800c1e0 fetch 1 ,mem_250k_freq_enable 
+53cb 207a0000 rtn blank 
+53cc 70890ab8 jam 0xb8 ,rf_iq_gain 
+53cd 20600000 rtn 
+
+le_disable:
+53ce 47204028 bpatchx patch28_0 ,mem_patch28 
+53cf 70890f2e jam 0x2e ,rf_adc_goff 
+53d0 70890bff jam 0xff ,rf_agc_nsat 
+53d1 785b7c00 disable le 
+53d2 70891403 jam 3 ,rfen_ulp 
+53d3 db600000 arg 0 ,stop_watch 
+53d4 20600000 rtn 
+
+le_prep:
+53d5 7844fc00 disable enable_crc 
+53d6 7843fc00 disable enable_white 
+53d7 68018467 fetch 3 ,mem_le_crcinit 
+53d8 98001e00 iforce crc24_init 
+53d9 68008016 fetch 1 ,mem_le_ch_mapped 
+53da 1fed8400 reverse pdata ,temp 
+53db 79200401 set1 1 ,temp 
+53dc 18431c00 rshift temp ,white_init 
+53dd 20600000 rtn 
+
+lerx_setfreq:
+53de 204053e6 call le_setfreq 
+53df 2040291f call set_freq_rx 
+53e0 58000500 setarg param_pll_setup 
+53e1 20402a8f call sleep 
+53e2 20202924 branch rf_rx_enable 
+
+letx_setfreq:
+53e3 2036a939 branch txon ,match 
+
+letx_setfreq0:
+53e4 204053e6 call le_setfreq 
+53e5 20202933 branch set_freq_tx 
+
+le_setfreq:
+53e6 4720c028 bpatchx patch28_1 ,mem_patch28 
+53e7 20402918 call set_sync_on 
+53e8 6800848c fetch 1 ,mem_le_testtype 
+53e9 243a53f9 nbranch le_ctf_test ,blank 
+53ea 68008016 fetch 1 ,mem_le_ch_mapped 
+53eb 1fe67c24 sub pdata ,36 ,null 
+53ec 202153f3 branch le_ctf_normal ,positive 
+53ed 18000400 force 0 ,temp 
+53ee c1128000 rtneq 37 
+53ef 18000418 force 24 ,temp 
+53f0 c1130000 rtneq 38 
+53f1 1800044e force 78 ,temp 
+53f2 20600000 rtn 
+
+le_ctf_normal:
+53f3 1fe67c0a sub pdata ,10 ,null 
+53f4 202153f6 branch le_ctf_low ,positive 
+53f5 1fe0fe01 increase 1 ,pdata 
+
+le_ctf_low:
+53f6 1fe3fe00 lshift pdata ,pdata 
+53f7 1fe08402 add pdata ,2 ,temp 
+53f8 20600000 rtn 
+
+le_ctf_test:
+53f9 68008016 fetch 1 ,mem_le_ch_mapped 
+53fa 1fe38400 lshift pdata ,temp 
+53fb 20600000 rtn 
+
+le_sca_map:
+53fc d84001f4 arg 500 ,temp 
+53fd 207a0000 rtn blank 
+53fe d84000fa arg 250 ,temp 
+53ff c1008000 rtneq 1 
+5400 d8400096 arg 150 ,temp 
+5401 c1010000 rtneq 2 
+5402 d8400064 arg 100 ,temp 
+5403 c1018000 rtneq 3 
+5404 d840004b arg 75 ,temp 
+5405 c1020000 rtneq 4 
+5406 d8400032 arg 50 ,temp 
+5407 c1028000 rtneq 5 
+5408 d8400028 arg 40 ,temp 
+5409 c1030000 rtneq 6 
+540a d8400014 arg 20 ,temp 
+540b 20600000 rtn 
+
+le_adv_access:
+540c 588e89be setarg 0x8e89be 
+540d 1fed7e00 lshift8 pdata ,pdata 
+540e 1fe1fed6 or_into 0xd6 ,pdata 
+540f 98001200 iforce access 
+5410 58555555 setarg 0x555555 
+5411 60018467 store 3 ,mem_le_crcinit 
+5412 20600000 rtn 
+
+le_setup:
+5413 47214028 bpatchx patch28_2 ,mem_patch28 
+5414 78287c00 enable swfine 
+5415 68020463 fetch 4 ,mem_le_access 
+5416 98001200 iforce access 
+5417 20405466 call le_map_channel 
+5418 58000200 setarg 0x200 
+5419 2034d41c branch le_setup_master ,master 
+541a 6801044d fetch 2 ,mem_le_receive_window 
+541b 1fe37e00 rshift pdata ,pdata 
+
+le_setup_master:
+541c d8400500 arg param_pll_setup ,temp 
+541d 9840fe00 iadd temp ,pdata 
+541e 20402a24 call ahead_window 
+541f 1b427e00 deposit clke 
+5420 60030491 store 6 ,mem_le_rxon_ts 
+5421 20600000 rtn 
+
+le_next_adv_channel:
+5422 4721c028 bpatchx patch28_3 ,mem_patch28 
+5423 68008016 fetch 1 ,mem_le_ch_mapped 
+5424 c012d428 beq 37 ,le_next_adv_channel_curr_channel_37 
+5425 c013542e beq 38 ,le_next_adv_channel_curr_channel_38 
+5426 c013d434 beq 39 ,le_next_adv_channel_curr_channel_39 
+5427 20205434 branch le_next_adv_channel_curr_channel_39 
+
+le_next_adv_channel_curr_channel_37:
+5428 6808c48d fetcht 1 ,mem_le_adv_channel_map 
+5429 284ffe01 isolate1 bit_adv_channel_map_38 ,temp 
+542a 2020d43f branch set_le_next_adv_channel_38 ,true 
+542b 284ffe02 isolate1 bit_adv_channel_map_39 ,temp 
+542c 2020d444 branch set_le_next_adv_channel_39 ,true 
+542d 2020543a branch set_le_next_adv_channel_37 
+
+le_next_adv_channel_curr_channel_38:
+542e 6808c48d fetcht 1 ,mem_le_adv_channel_map 
+542f 284ffe02 isolate1 bit_adv_channel_map_39 ,temp 
+5430 2020d444 branch set_le_next_adv_channel_39 ,true 
+5431 284ffe00 isolate1 bit_adv_channel_map_37 ,temp 
+5432 2020d43a branch set_le_next_adv_channel_37 ,true 
+5433 2020543f branch set_le_next_adv_channel_38 
+
+le_next_adv_channel_curr_channel_39:
+5434 6808c48d fetcht 1 ,mem_le_adv_channel_map 
+5435 284ffe00 isolate1 bit_adv_channel_map_37 ,temp 
+5436 2020d43a branch set_le_next_adv_channel_37 ,true 
+5437 284ffe01 isolate1 bit_adv_channel_map_38 ,temp 
+5438 2020d43f branch set_le_next_adv_channel_38 ,true 
+5439 20205444 branch set_le_next_adv_channel_39 
+
+set_le_next_adv_channel_37:
+543a 70001625 jam 37 ,mem_le_ch_mapped 
+543b 68008ac2 fetch 1 ,mem_le_adv_channel_map_temp 
+543c 79207e00 set1 bit_adv_channel_map_37 ,pdata 
+543d 60008ac2 store 1 ,mem_le_adv_channel_map_temp 
+543e 20600000 rtn 
+
+set_le_next_adv_channel_38:
+543f 70001626 jam 38 ,mem_le_ch_mapped 
+5440 68008ac2 fetch 1 ,mem_le_adv_channel_map_temp 
+5441 79207e01 set1 bit_adv_channel_map_38 ,pdata 
+5442 60008ac2 store 1 ,mem_le_adv_channel_map_temp 
+5443 20600000 rtn 
+
+set_le_next_adv_channel_39:
+5444 70001627 jam 39 ,mem_le_ch_mapped 
+5445 68008ac2 fetch 1 ,mem_le_adv_channel_map_temp 
+5446 79207e02 set1 bit_adv_channel_map_39 ,pdata 
+5447 60008ac2 store 1 ,mem_le_adv_channel_map_temp 
+5448 20600000 rtn 
+
+le_context_nexthop:
+5449 47224028 bpatchx patch28_4 ,mem_patch28 
+544a 1a208c01 add rega ,coffset_mode ,contr 
+544b e8c08000 ifetch 1 ,contr 
+544c c4000000 rtnbit0 mode_le 
+544d 1a208a1a add rega ,coffset_le_event_cnt ,contw 
+544e e8a10000 ifetch 2 ,contw 
+544f 1fe0fe01 increase 1 ,pdata 
+5450 e0a10000 istore 2 ,contw 
+5451 1a208c19 add rega ,coffset_le_hop ,contr 
+5452 e8c08000 ifetch 1 ,contr 
+5453 1a208a18 add rega ,coffset_le_ch ,contw 
+5454 e8a88000 ifetcht 1 ,contw 
+5455 9840fe00 iadd temp ,pdata 
+5456 1fe67c24 sub pdata ,36 ,null 
+5457 20215459 branch le_nexthop_nowrap ,positive 
+5458 1fe0ffdb increase -37 ,pdata 
+
+le_nexthop_nowrap:
+5459 e0a08000 istore 1 ,contw 
+545a 20600000 rtn 
+
+le_calc_channel_map:
+545b 4722c028 bpatchx patch28_5 ,mem_patch28 
+545c 6802846f fetch 5 ,mem_le_channel_map 
+545d 18000400 force 0 ,temp 
+545e 18007225 force 37 ,loopcnt 
+
+le_count_channels_loop:
+545f c3005461 bbit0 0 ,le_count_channels_notused 
+5460 18408401 increase 1 ,temp 
+
+le_count_channels_notused:
+5461 1fe37e00 rshift pdata ,pdata 
+5462 c200545f loop le_count_channels_loop 
+5463 1840ffff add temp ,-1 ,pdata 
+5464 60008461 store 1 ,mem_le_channels 
+5465 20600000 rtn 
+
+le_map_channel:
+5466 47234028 bpatchx patch28_6 ,mem_patch28 
+5467 68008457 fetch 1 ,mem_le_ch 
+5468 98000e00 iforce queue 
+5469 680a846f fetcht 5 ,mem_le_channel_map 
+546a a84fffff qisolate1 temp 
+546b 2020d47c branch le_map_channel_end ,true 
+
+le_map_channel_next:
+546c 4723c028 bpatchx patch28_7 ,mem_patch28 
+546d 68008461 fetch 1 ,mem_le_channels 
+546e 98e67e00 isub queue ,pdata 
+546f 20215472 branch le_map_channel_cont ,positive 
+5470 1fe60fff sub pdata ,-1 ,queue 
+5471 2020546c branch le_map_channel_next 
+
+le_map_channel_cont:
+5472 18e27200 copy queue ,loopcnt 
+5473 18000e00 force 0 ,queue 
+
+le_map_channel_loop:
+5474 a84fffff qisolate1 temp 
+5475 2020d477 branch le_map_channel_skip ,true 
+5476 1f20f201 increase 1 ,loopcnt 
+
+le_map_channel_skip:
+5477 1f227e00 deposit loopcnt 
+5478 203a547c branch le_map_channel_end ,blank 
+5479 18e08e01 increase 1 ,queue 
+547a 1f20f3ff increase -1 ,loopcnt 
+547b 20205474 branch le_map_channel_loop 
+
+le_map_channel_end:
+547c 18e27e00 deposit queue 
+547d 60008016 store 1 ,mem_le_ch_mapped 
+547e 20600000 rtn 
+
+le_wait_tx:
+547f 2034d482 branch le_wait_master ,master 
+5480 37c18200 until null ,timeout 
+5481 20600000 rtn 
+
+le_wait_master:
+5482 d9600ea0 arg 0xea0 ,timeup 
+5483 34730200 until clkn_rt ,meet 
+5484 20600000 rtn 
+
+le_receive_adv:
+5485 78487c00 disable swfine 
+5486 6801436c fetch 2 ,mem_le_scan_window 
+5487 1fe21600 copy pdata ,timeup 
+5488 2020548e branch le_receive_packet 
+
+le_receive_slave:
+5489 47244029 bpatchx patch29_0 ,mem_patch29 
+548a 78287c00 enable swfine 
+548b 6801044d fetch 2 ,mem_le_receive_window 
+548c 680a44e5 fetcht 4 ,mem_le_transmit_window 
+548d 98409600 iadd temp ,timeup 
+
+le_receive_packet:
+548e 204053de call lerx_setfreq 
+
+le_receive_rxon:
+548f 4724c029 bpatchx patch29_1 ,mem_patch29 
+5490 204053d5 call le_prep 
+5491 7856fc00 disable match 
+5492 7826fc00 enable decode_fec0 
+5493 7830fc00 enable is_rx 
+5494 78507c00 disable is_tx 
+5495 19623600 copy timeup ,stop_watch 
+5496 37c18400 correlate null ,timeout 
+5497 2037549a branch le_receive_on_attempt ,attempt 
+5498 1b420400 copy clke ,temp 
+5499 600b009a storet 6 ,mem_sync_clke 
+
+le_receive_on_attempt:
+549a 242c264d nbranch end_of_packet ,sync 
+549b 203754a1 branch le_receive_skip ,attempt 
+549c dd2001e0 arg param_clke_cal_le ,clke_rt 
+549d 1c225000 copy bt_clk ,clke_bt 
+549e 6800843f fetch 1 ,mem_le_state 
+549f c301d4a1 bbit0 lestate_got_first_packet ,le_receive_skip 
+54a0 2055ab05 call lpm_adjust_clk ,wake 
+
+le_receive_skip:
+54a1 47254029 bpatchx patch29_2 ,mem_patch29 
+54a2 204029bb call save_rssi 
+54a3 7823fc00 enable enable_white 
+54a4 7824fc00 enable enable_crc 
+54a5 09800008 parse demod ,bucket ,8 
+54a6 19897e00 rshift3 pwindow ,pdata 
+54a7 600082d9 store 1 ,mem_le_rxbuf 
+54a8 09800008 parse demod ,bucket ,8 
+54a9 19897e00 rshift3 pwindow ,pdata 
+54aa e0a08000 istore 1 ,contw 
+54ab 1fe1723f and pdata ,0x3f ,loopcnt 
+54ac 2022d4b1 branch lerx_nopayload ,zero 
+
+lerx_loop:
+54ad 09800008 parse demod ,bucket ,8 
+54ae 19897e00 rshift3 pwindow ,pdata 
+54af e0a08000 istore 1 ,contw 
+54b0 c20054ad loop lerx_loop 
+
+lerx_nopayload:
+54b1 4725c029 bpatchx patch29_3 ,mem_patch29 
+54b2 09800018 parse demod ,bucket ,24 
+54b3 78287c00 enable swfine 
+54b4 db600664 arg param_sifs ,stop_watch 
+54b5 1fef7e00 rshift32 pdata ,pdata 
+54b6 1ff17e00 rshift16 pdata ,pdata 
+54b7 e0a18000 istore 3 ,contw 
+54b8 2023264d branch end_of_packet ,crc_failed 
+54b9 7836fc00 enable match 
+54ba 68008017 fetch 1 ,mem_last_freq 
+54bb 1fe0a200 add pdata ,0 ,rega 
+54bc 20402981 call rf_write_freq 
+54bd 7846fc00 disable decode_fec0 
+54be 20202918 branch set_sync_on 
+
+le_transmit_receive_sifs:
+54bf 47264029 bpatchx patch29_4 ,mem_patch29 
+54c0 204054c9 call le_transmit 
+
+le_transmit_receive_sifs_notx:
+54c1 68088017 fetcht 1 ,mem_last_freq 
+54c2 2040291f call set_freq_rx 
+54c3 20402924 call rf_rx_enable 
+54c4 78287c00 enable swfine 
+54c5 d960157c arg 5500 ,timeup 
+54c6 2020548f branch le_receive_rxon 
+
+le_transmit_norx:
+54c7 204054c9 call le_transmit 
+54c8 2020264d branch end_of_packet 
+
+le_transmit:
+54c9 4726c029 bpatchx patch29_5 ,mem_patch29 
+54ca 204053d5 call le_prep 
+54cb 204053e3 call letx_setfreq 
+54cc 202054cd branch le_transmit0 
+
+le_transmit0:
+54cd 79202a00 set1 txgfsk ,radio_ctrl 
+54ce 782efc00 enable encode_fec0 
+54cf 78307c00 enable is_tx 
+54d0 7850fc00 disable is_rx 
+54d1 2040547f call le_wait_tx 
+54d2 19317e00 rshift16 access ,pdata 
+54d3 1fecfe00 rshift8 pdata ,pdata 
+54d4 1ff1fe00 rshift4 pdata ,pdata 
+54d5 08008628 inject mod ,40 
+54d6 7823fc00 enable enable_white 
+54d7 7824fc00 enable enable_crc 
+54d8 47274029 bpatchx patch29_6 ,mem_patch29 
+54d9 6800c3dc fetch 1 ,mem_le_txheader 
+54da 08008608 inject mod ,8 
+54db e8c08000 ifetch 1 ,contr 
+54dc 1fe1723f and pdata ,0x3f ,loopcnt 
+54dd 08008608 inject mod ,8 
+54de 2022d4e2 branch letr_nopayload ,zero 
+
+letr_loop:
+54df e8c08000 ifetch 1 ,contr 
+54e0 08008608 inject mod ,8 
+54e1 c20054df loop letr_loop 
+
+letr_nopayload:
+54e2 78247c00 enable enable_parity 
+54e3 08008618 inject mod ,24 
+54e4 78447c00 disable enable_parity 
+54e5 37d38200 until null ,tx_clear 
+54e6 20000064 nop 100 
+54e7 784efc00 disable encode_fec0 
+54e8 20600000 rtn 
+
+le_send_adv_ind:
+54e9 4727c029 bpatchx patch29_7 ,mem_patch29 
+54ea 6800c484 fetch 1 ,mem_le_adv_type 
+54eb c000d4f9 beq adv_direct_ind ,le_send_adv_direct_ind 
+54ec 6800c485 fetch 1 ,mem_le_adv_own_addr_type 
+54ed 1ff27e00 lshift4 pdata ,pdata 
+54ee 1febfe00 lshift2 pdata ,pdata 
+54ef 6000c3dc store 1 ,mem_le_txheader 
+54f0 6808c36f fetcht 1 ,mem_le_adv_data_len 
+54f1 1840fe06 add temp ,6 ,pdata 
+54f2 6000c3dd store 1 ,mem_le_txlen 
+54f3 680344a0 fetch 6 ,mem_le_lap 
+54f4 600343de store 6 ,mem_le_txpayload 
+54f5 18427200 copy temp ,loopcnt 
+54f6 d8c04370 arg mem_le_adv_data ,contr 
+54f7 20407ef4 call memcpy_fast 
+54f8 20205504 branch le_send_adv_transmit 
+
+le_send_adv_direct_ind:
+54f9 6800c486 fetch 1 ,mem_le_adv_direct_addr_type 
+54fa 1ff27e00 lshift4 pdata ,pdata 
+54fb 1febfe00 lshift2 pdata ,pdata 
+54fc 1fe0fe01 increase 1 ,pdata 
+54fd 6000c3dc store 1 ,mem_le_txheader 
+54fe 5800000c setarg 12 
+54ff 6000c3dd store 1 ,mem_le_txlen 
+5500 680344a0 fetch 6 ,mem_le_lap 
+5501 600343de store 6 ,mem_le_txpayload 
+5502 680341d0 fetch 6 ,mem_hci_plap 
+5503 e0a30000 istore 6 ,contw 
+
+le_send_adv_transmit:
+5504 4728402a bpatchx patch2a_0 ,mem_patch2a 
+5505 68008000 fetch 1 ,mem_le_adv_transmit 
+5506 1fe0fe01 increase 1 ,pdata 
+5507 60008000 store 1 ,mem_le_adv_transmit 
+5508 db600708 arg 1800 ,stop_watch 
+5509 7856fc00 disable match 
+550a 202054bf branch le_transmit_receive_sifs 
+
+le_send_scan_request:
+550b 4728c02a bpatchx patch2a_1 ,mem_patch2a 
+550c 6800c49e fetch 1 ,mem_le_scan_type 
+550d c1808000 rtnne le_scan_type_active 
+550e 68008000 fetch 1 ,mem_le_adv_transmit 
+550f 1fe0fe01 increase 1 ,pdata 
+5510 60008000 store 1 ,mem_le_adv_transmit 
+5511 d8400c03 arg 0x0c03 ,temp 
+5512 6800c49f fetch 1 ,mem_le_scan_own_addr_type 
+5513 7d3a0406 nsetflag blank ,le_sender_addr_bit ,temp 
+5514 1a227e00 copy rega ,pdata 
+5515 7d3a0407 nsetflag blank ,le_receiver_addr_bit ,temp 
+5516 600943dc storet 2 ,mem_le_txheader 
+5517 680344a0 fetch 6 ,mem_le_lap 
+5518 e0a30000 istore 6 ,contw 
+5519 6803044f fetch 6 ,mem_le_plap 
+551a e0a30000 istore 6 ,contw 
+551b 202054bf branch le_transmit_receive_sifs 
+
+le_send_scan_response:
+551c 4729402a bpatchx patch2a_2 ,mem_patch2a 
+551d d8400004 arg scan_rsp ,temp 
+551e 6800c485 fetch 1 ,mem_le_adv_own_addr_type 
+551f 7d3a0406 nsetflag blank ,le_sender_addr_bit ,temp 
+5520 6008c3dc storet 1 ,mem_le_txheader 
+5521 6808c38f fetcht 1 ,mem_le_scan_data_len 
+5522 1840fe06 add temp ,6 ,pdata 
+5523 6000c3dd store 1 ,mem_le_txlen 
+5524 680344a0 fetch 6 ,mem_le_lap 
+5525 600343de store 6 ,mem_le_txpayload 
+5526 d8c04390 arg mem_le_scan_data ,contr 
+5527 18427200 copy temp ,loopcnt 
+5528 20407ef4 call memcpy_fast 
+5529 204054c7 call le_transmit_norx 
+552a 20205706 branch le_adv_not_match 
+
+le_connect_request:
+552b 4729c02a bpatchx patch2a_3 ,mem_patch2a 
+552c 18007fff force -1 ,pdata 
+552d 38080001 setsect 2 ,1 
+552e 6002846f store 5 ,mem_le_channel_map 
+552f 2040545b call le_calc_channel_map 
+5530 18007204 force 4 ,loopcnt 
+5531 d8a00463 arg mem_le_access ,contw 
+5532 2040630d call generate_random_loop 
+5533 6801449c fetch 2 ,mem_le_timeout 
+5534 6001046d store 2 ,mem_le_superto 
+
+le_con_req_hop_retry:
+5535 180a7e00 random pdata 
+5536 1fe17e0f and_into 0xf ,pdata 
+5537 1fe67c04 sub pdata ,4 ,null 
+5538 20215535 branch le_con_req_hop_retry ,positive 
+5539 60008458 store 1 ,mem_le_hop 
+553a 600086e6 store 1 ,mem_tmp1 
+553b 472a402a bpatchx patch2a_4 ,mem_patch2a 
+553c 68094367 fetcht 2 ,mem_le_conn_interval 
+553d 60090441 storet 2 ,mem_le_tsniff 
+553e 18422600 copy temp ,regc 
+553f 1c40fe07 add clkn_bt ,7 ,pdata 
+5540 9a66fc00 idiv regc 
+5541 20407f86 call wait_div_end 
+5542 18072200 remainder rega 
+5543 9a267e00 isub rega ,pdata 
+5544 9a60fe00 iadd regc ,pdata 
+5545 68094365 fetcht 2 ,mem_le_dsniff 
+5546 9840fe00 iadd temp ,pdata 
+5547 60020443 store 4 ,mem_le_anchor 
+5548 9c462200 isub clkn_bt ,rega 
+5549 1a20a3fa increase -6 ,rega 
+554a da402205 arg 0x2205 ,regb 
+554b 6800c495 fetch 1 ,mem_le_conn_own_addr_type 
+554c 7d3a2406 nsetflag blank ,le_sender_addr_bit ,regb 
+554d 6800c48e fetch 1 ,mem_le_conn_peer_addr_type 
+554e 7d3a2407 nsetflag blank ,le_receiver_addr_bit ,regb 
+554f 1a427e00 copy regb ,pdata 
+5550 600143dc store 2 ,mem_le_txheader 
+5551 680344a0 fetch 6 ,mem_le_lap 
+5552 e0a30000 istore 6 ,contw 
+5553 6803044f fetch 6 ,mem_le_plap 
+5554 e0a30000 istore 6 ,contw 
+5555 68020463 fetch 4 ,mem_le_access 
+5556 e0a20000 istore 4 ,contw 
+5557 180a7e00 random pdata 
+5558 e0a10000 istore 2 ,contw 
+5559 180a7e00 random pdata 
+555a e0a08000 istore 1 ,contw 
+555b 18007e02 force 2 ,pdata 
+555c e0a08000 istore 1 ,contw 
+555d 1a2b7e00 rshift2 rega ,pdata 
+555e e0a10000 istore 2 ,contw 
+555f 1a6b7e00 rshift2 regc ,pdata 
+5560 e0a10000 istore 2 ,contw 
+5561 472ac02a bpatchx patch2a_5 ,mem_patch2a 
+5562 58000000 setarg 0 
+5563 e0a10000 istore 2 ,contw 
+5564 6801449c fetch 2 ,mem_le_timeout 
+5565 e0a10000 istore 2 ,contw 
+5566 6802846f fetch 5 ,mem_le_channel_map 
+5567 e0a28000 istore 5 ,contw 
+5568 68008458 fetch 1 ,mem_le_hop 
+5569 d84000a0 arg param_le_sca ,temp 
+556a 9841fe00 ior temp ,pdata 
+556b e0a08000 istore 1 ,contw 
+556c 204054c7 call le_transmit_norx 
+556d 580043dc setarg mem_le_txheader 
+556e 1fe08c12 add pdata ,18 ,contr 
+556f e8c18000 ifetch 3 ,contr 
+5570 60018467 store 3 ,mem_le_crcinit 
+5571 20600000 rtn 
+
+le_init_adv:
+5572 472b402a bpatchx patch2a_6 ,mem_patch2a 
+5573 7854fc00 disable master 
+5574 2020540c branch le_adv_access 
+
+le_update_param:
+5575 6800843f fetch 1 ,mem_le_state 
+5576 c4028000 rtnbit0 lestate_update_param 
+5577 68010459 fetch 2 ,mem_le_event_count 
+5578 6809045f fetcht 2 ,mem_le_instant 
+5579 98467e00 isub temp ,pdata 
+557a 24610000 nrtn positive 
+557b 60010a9a store 2 ,mem_pdatatemp 
+557c 472bc02a bpatchx patch2a_7 ,mem_patch2a 
+557d 6800843f fetch 1 ,mem_le_state 
+557e 793ffe05 set0 lestate_update_param ,pdata 
+557f 793ffe03 set0 lestate_got_first_packet ,pdata 
+5580 6000843f store 1 ,mem_le_state 
+5581 68020443 fetch 4 ,mem_le_anchor 
+5582 68090441 fetcht 2 ,mem_le_tsniff 
+5583 60090aa2 storet 2 ,mem_temp 
+5584 98462200 isub temp ,rega 
+5585 472c402b bpatchx patch2b_0 ,mem_patch2b 
+5586 6800c3d3 fetch 1 ,mem_le_new_param 
+5587 6000846a store 1 ,mem_le_window_size 
+5588 e8c90000 ifetcht 2 ,contr 
+5589 e8c10000 ifetch 2 ,contr 
+558a 1febfe00 lshift2 pdata ,pdata 
+558b 60010441 store 2 ,mem_le_tsniff 
+558c 184b8400 lshift2 temp ,temp 
+558d 9840fe00 iadd temp ,pdata 
+558e e8ca0000 ifetcht 4 ,contr 
+558f 600a046b storet 4 ,mem_le_slave_latency 
+5590 9a20fe00 iadd rega ,pdata 
+5591 1fe22800 copy pdata ,regab 
+5592 68010441 fetch 2 ,mem_le_tsniff 
+5593 68090aa2 fetcht 2 ,mem_temp 
+5594 98467e00 isub temp ,pdata 
+5595 68090a9a fetcht 2 ,mem_pdatatemp 
+5596 984ffe00 imul32 temp ,pdata 
+5597 9a80fe00 iadd regab ,pdata 
+5598 60020443 store 4 ,mem_le_anchor 
+5599 20405713 call le_receive_window_size 
+559a 6801046d fetch 2 ,mem_le_superto 
+559b 600144ba store 2 ,mem_le_init_superto 
+559c 20600000 rtn 
+
+le_update_channel_map:
+559d 472cc02b bpatchx patch2b_1 ,mem_patch2b 
+559e 6800843f fetch 1 ,mem_le_state 
+559f c4030000 rtnbit0 lestate_update_map 
+55a0 68010459 fetch 2 ,mem_le_event_count 
+55a1 6809045f fetcht 2 ,mem_le_instant 
+55a2 98467e00 isub temp ,pdata 
+55a3 24610000 nrtn positive 
+55a4 6800843f fetch 1 ,mem_le_state 
+55a5 793ffe06 set0 lestate_update_map ,pdata 
+55a6 6000843f store 1 ,mem_le_state 
+55a7 6802c3ce fetch 5 ,mem_le_new_map 
+55a8 6002846f store 5 ,mem_le_channel_map 
+55a9 2020545b branch le_calc_channel_map 
+
+le_acknowledge:
+55aa 472d402b bpatchx patch2b_2 ,mem_patch2b 
+55ab 204056ed call le_supervision_flush 
+55ac 204055c0 call le_check_wak 
+55ad 680082d9 fetch 1 ,mem_le_rxbuf 
+55ae 2feffe04 isolate1 md ,pdata 
+55af 7920802a setflag true ,mark_ble_rx_md ,mark 
+55b0 1fe37e00 rshift pdata ,pdata 
+55b1 9842fe00 ixor temp ,pdata 
+55b2 2feffe02 isolate1 nesn ,pdata 
+55b3 7920800f setflag true ,mark_old_packet ,mark 
+55b4 c6078000 rtnmark1 mark_old_packet 
+55b5 680082da fetch 1 ,mem_le_rxbuf + 1 
+55b6 203a55bc branch le_ack_unenc ,blank 
+55b7 6800843f fetch 1 ,mem_le_state 
+55b8 c30255bc bbit0 lestate_encryption ,le_ack_unenc 
+55b9 2040748d call load_sk 
+55ba 204073fb call le_decrypt 
+55bb 247a0000 nrtn blank 
+
+le_ack_unenc:
+55bc 68088456 fetcht 1 ,mem_le_arq 
+55bd 79400402 setflip nesn ,temp 
+55be 60088456 storet 1 ,mem_le_arq 
+55bf 20600000 rtn 
+
+le_check_wak:
+55c0 472dc02b bpatchx patch2b_3 ,mem_patch2b 
+55c1 68088456 fetcht 1 ,mem_le_arq 
+55c2 284c0005 isolate0 wak ,temp 
+55c3 20608000 rtn true 
+55c4 680082d9 fetch 1 ,mem_le_rxbuf 
+55c5 1fe3fe00 lshift pdata ,pdata 
+55c6 9842fe00 ixor temp ,pdata 
+55c7 c4018000 rtnbit0 sn 
+55c8 793f8405 set0 wak ,temp 
+55c9 79400403 setflip sn ,temp 
+55ca 60088456 storet 1 ,mem_le_arq 
+55cb 28400603 compare 3 ,temp ,3 
+55cc 24608000 nrtn true 
+55cd 6800c3de fetch 1 ,mem_le_txpayload 
+55ce c002d5d2 beq ll_start_enc_req ,le_set_enc 
+55cf 6800c4c5 fetch 1 ,mem_le_enc_state 
+55d0 c00155d6 beq flag_le_enc_pause ,le_clear_enc 
+55d1 20600000 rtn 
+
+le_set_enc:
+55d2 6800843f fetch 1 ,mem_le_state 
+55d3 79207e04 set1 lestate_encryption ,pdata 
+55d4 6000843f store 1 ,mem_le_state 
+55d5 20600000 rtn 
+
+le_clear_enc:
+55d6 472e402b bpatchx patch2b_4 ,mem_patch2b 
+55d7 7044c500 jam flag_le_enc_null ,mem_le_enc_state 
+55d8 dfe00000 arg 0 ,pdata 
+55d9 6002440d store 4 ,mem_le_last_mic 
+55da 6002c403 store 5 ,mem_le_pcnt_tx 
+55db 79207e27 set1 39 ,pdata 
+55dc 6002c408 store 5 ,mem_le_pcnt_rx 
+55dd 6800843f fetch 1 ,mem_le_state 
+55de 793ffe04 set0 lestate_encryption ,pdata 
+55df 6000843f store 1 ,mem_le_state 
+55e0 20600000 rtn 
+
+le_wait_adv:
+55e1 472ec02b bpatchx patch2b_5 ,mem_patch2b 
+55e2 20405422 call le_next_adv_channel 
+55e3 20405485 call le_receive_adv 
+55e4 68008001 fetch 1 ,mem_le_adv_waitcnt 
+55e5 1fe0fe01 increase 1 ,pdata 
+55e6 60008001 store 1 ,mem_le_adv_waitcnt 
+55e7 20600000 rtn 
+
+le_scan:
+55e8 472f402b bpatchx patch2b_6 ,mem_patch2b 
+55e9 6800c369 fetch 1 ,mem_le_scan_enable 
+55ea c1808000 rtnne le_scan_enable 
+55eb d8e00002 arg le_scan_interval_timer ,queue 
+55ec 20407f16 call timer_check 
+55ed 247a0000 nrtn blank 
+55ee 6801436a fetch 2 ,mem_le_scan_interval 
+55ef 6809436c fetcht 2 ,mem_le_scan_window 
+55f0 98467e00 isub temp ,pdata 
+55f1 d8e00002 arg le_scan_interval_timer ,queue 
+55f2 20407f08 call timer_init 
+55f3 7854fc00 disable master 
+55f4 20405572 call le_init_adv 
+55f5 204055e1 call le_wait_adv 
+55f6 24768000 nrtn match 
+55f7 472fc02b bpatchx patch2b_7 ,mem_patch2b 
+55f8 680302db fetch 6 ,mem_le_rxbuf + 2 
+55f9 6003044f store 6 ,mem_le_plap 
+55fa 68008002 fetch 1 ,mem_le_adv_rcv 
+55fb 1fe0fe01 increase 1 ,pdata 
+55fc 60008002 store 1 ,mem_le_adv_rcv 
+55fd 20405608 call le_create_conn 
+55fe 20748000 rtn master 
+55ff 2040550b call le_send_scan_request 
+5600 24768000 nrtn match 
+5601 4730402c bpatchx patch2c_0 ,mem_patch2c 
+5602 68008004 fetch 1 ,mem_le_scanrsp_rcv 
+5603 1fe0fe01 increase 1 ,pdata 
+5604 60008004 store 1 ,mem_le_scanrsp_rcv 
+5605 680482e1 fetch 9 ,mem_le_rxbuf + 8 
+5606 60048101 store 9 ,mem_tmp_buffer 
+5607 20600000 rtn 
+
+le_create_conn:
+5608 4730c02c bpatchx patch2c_1 ,mem_patch2c 
+5609 6800849b fetch 1 ,mem_cmd_le_create_conn 
+560a c18d8000 rtnne hci_cmd_le_create_conn 
+560b 6803044f fetch 6 ,mem_le_plap 
+560c 680b448f fetcht 6 ,mem_le_conn_peer_addr 
+560d 98467c00 isub temp ,null 
+560e 24628000 nrtn zero 
+560f 2040223b call context_new 
+5610 24628000 nrtn zero 
+5611 2040552b call le_connect_request 
+5612 20405340 call le_init_master 
+5613 4731402c bpatchx patch2c_2 ,mem_patch2c 
+5614 7041ce00 jam 0 ,mem_hci_cmd 
+5615 70047600 jam 0 ,mem_le_peer_sca 
+5616 70436900 jam 0 ,mem_le_scan_enable 
+5617 70049b00 jam 0 ,mem_cmd_le_create_conn 
+5618 20202223 branch context_save 
+
+le_scan_check_sender_addr_type:
+5619 da200001 arg 1 ,rega 
+561a 680082d9 fetch 1 ,mem_le_rxbuf 
+561b c3830000 rtnbit1 le_sender_addr_bit 
+561c da200000 arg 0 ,rega 
+561d 20600000 rtn 
+
+le_prepare_tx:
+561e 4731c02c bpatchx patch2c_3 ,mem_patch2c 
+561f 68008456 fetch 1 ,mem_le_arq 
+5620 c3828000 rtnbit1 wak 
+5621 20405642 call le_check_tx_md 
+5622 20405873 call le_fifo_get_first_tx_ptr 
+5623 203a5664 branch le_send_empty ,blank 
+5624 e8c08000 ifetch 1 ,contr 
+5625 e8c88000 ifetcht 1 ,contr 
+5626 18422200 copy temp ,rega 
+5627 9a267e00 isub rega ,pdata 
+5628 d840001b arg le_max_paket_len ,temp 
+5629 20407fdd call not_greater_than 
+562a 1fe20400 copy pdata ,temp 
+562b e8c08000 ifetch 1 ,contr 
+562c 1fe20200 copy pdata ,type 
+562d 1a227e00 copy rega ,pdata 
+562e 98c08c00 iadd contr ,contr 
+562f d8a043de arg mem_le_txpayload ,contw 
+5630 18427200 copy temp ,loopcnt 
+5631 20407f01 call memcpy 
+5632 20405654 call le_update_tx_type 
+5633 20405666 call le_send_packet 
+5634 20405873 call le_fifo_get_first_tx_ptr 
+5635 e8c08000 ifetch 1 ,contr 
+5636 1fe22200 copy pdata ,rega 
+5637 18c22600 copy contr ,regc 
+5638 e8c88000 ifetcht 1 ,contr 
+5639 18422400 copy temp ,regb 
+563a 9a467e00 isub regb ,pdata 
+563b d840001b arg le_max_paket_len ,temp 
+563c 20407fdd call not_greater_than 
+563d 9a40fe00 iadd regb ,pdata 
+563e e2608000 istore 1 ,regc 
+563f 9a267c00 isub rega ,null 
+5640 24628000 nrtn zero 
+5641 20205896 branch le_fifo_release_first_node 
+
+le_check_tx_md:
+5642 20405649 call le_check_continue 
+5643 c6148000 rtnmark1 mark_ble_tx_md 
+5644 6800c4e9 fetch 1 ,mem_le_configuration 
+5645 c3015652 bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
+5646 20405876 call le_fifo_get_second_tx_ptr 
+5647 203a5652 branch le_clear_md ,blank 
+5648 20205650 branch le_set_md 
+
+le_check_continue:
+5649 20405873 call le_fifo_get_first_tx_ptr 
+564a 203a5652 branch le_clear_md ,blank 
+564b e8c08000 ifetch 1 ,contr 
+564c e8c88000 ifetcht 1 ,contr 
+564d 98467e00 isub temp ,pdata 
+564e 1fe67c1b sub pdata ,le_max_paket_len ,null 
+564f 20215652 branch le_clear_md ,positive 
+
+le_set_md:
+5650 79200029 set1 mark_ble_tx_md ,mark 
+5651 20600000 rtn 
+
+le_clear_md:
+5652 793f8029 set0 mark_ble_tx_md ,mark 
+5653 20600000 rtn 
+
+le_update_tx_type:
+5654 1a227e00 copy rega ,pdata 
+5655 207a0000 rtn blank 
+5656 d8200001 arg llid_continue ,type 
+5657 20600000 rtn 
+
+le_att_check_notification_enable:
+5658 4732402c bpatchx patch2c_4 ,mem_patch2c 
+5659 18408401 increase 1 ,temp 
+565a 2040576a call le_att_get_handle_ptr 
+565b 18c08dfe increase -2 ,contr 
+565c e8c10000 ifetch 2 ,contr 
+565d d8402902 arg client_charactertic_configuration ,temp 
+565e 98467c00 isub temp ,null 
+565f 24628000 nrtn zero 
+5660 18c08c01 increase 1 ,contr 
+5661 18c22200 copy contr ,rega 
+5662 e8c08000 ifetch 1 ,contr 
+5663 20600000 rtn 
+
+le_send_empty:
+5664 18000400 force 0 ,temp 
+5665 18000201 force 1 ,type 
+
+le_send_packet:
+5666 4732c02c bpatchx patch2c_5 ,mem_patch2c 
+5667 6008c3dd storet 1 ,mem_le_txlen 
+5668 68088456 fetcht 1 ,mem_le_arq 
+5669 79200405 set1 wak ,temp 
+566a 18417efc and temp ,0xfc ,pdata 
+566b 9821fe00 ior type ,pdata 
+566c 60008456 store 1 ,mem_le_arq 
+566d 1fe17e1f and_into 0x1f ,pdata 
+566e 280ffe29 isolate1 mark_ble_tx_md ,mark 
+566f 7920fe04 setflag true ,md ,pdata 
+5670 6000c3dc store 1 ,mem_le_txheader 
+5671 6800c3dc fetch 1 ,mem_le_txheader 
+5672 28200601 compare 1 ,type ,3 
+5673 2420d676 nbranch le_send_no_txlen ,true 
+5674 6800c3dd fetch 1 ,mem_le_txlen 
+5675 207a0000 rtn blank 
+
+le_send_no_txlen:
+5676 6800843f fetch 1 ,mem_le_state 
+5677 c4020000 rtnbit0 lestate_encryption 
+5678 2040748d call load_sk 
+5679 202073e3 branch le_encrypt 
+
+get_lpm_wake_ble_rx_lock:
+567a d8e00000 arg wake_lock_ble_rx ,queue 
+567b 20202c32 branch lpm_get_wake_lock 
+
+put_lpm_wake_ble_rx_lock:
+567c d8e00000 arg wake_lock_ble_rx ,queue 
+567d 20202c36 branch lpm_put_wake_lock 
+
+le_parse:
+567e 4733402c bpatchx patch2c_6 ,mem_patch2c 
+567f c6078000 rtnmark1 mark_old_packet 
+5680 20405890 call le_fifo_check_full 
+5681 247a0000 nrtn blank 
+5682 680082d9 fetch 1 ,mem_le_rxbuf 
+5683 1fe17e03 and pdata ,0x3 ,pdata 
+5684 6000c50c store 1 ,mem_le_packet_llid 
+5685 e8c08000 ifetch 1 ,contr 
+5686 1fe17e1f and pdata ,0x1f ,pdata 
+5687 6000c50b store 1 ,mem_le_packet_size 
+5688 207a0000 rtn blank 
+5689 18c27e00 copy contr ,pdata 
+568a 6001450d store 2 ,mem_le_payload_ptr 
+568b 6800c50c fetch 1 ,mem_le_packet_llid 
+568c c001dc64 beq llid_le_ll ,le_parse_ll 
+
+le_parse_l2cap:
+568d 2040569a call le_check_l2cap_complete 
+568e 2434567a nbranch get_lpm_wake_ble_rx_lock ,user 
+568f 2040567c call put_lpm_wake_ble_rx_lock 
+5690 6801450d fetch 2 ,mem_le_payload_ptr 
+5691 1fe20c00 copy pdata ,contr 
+5692 e8c10000 ifetch 2 ,contr 
+5693 600144fc store 2 ,mem_le_l2cap_size 
+5694 4733c02c bpatchx patch2c_7 ,mem_patch2c 
+5695 e8c10000 ifetch 2 ,contr 
+5696 c00258ab beq le_l2cap_cid_att ,le_parse_att 
+5697 c0035af4 beq le_l2cap_cid_smp ,le_parse_smp 
+5698 c002dab6 beq le_l2cap_cid_signal ,le_parse_signaling 
+5699 20600000 rtn 
+
+le_check_l2cap_complete:
+569a 6800c50c fetch 1 ,mem_le_packet_llid 
+569b c00156a9 beq llid_start ,le_check_l2cap_llid_start 
+569c c000d6c1 beq llid_continue ,le_check_l2cap_llid_continue 
+569d 20600000 rtn 
+
+le_check_l2cap_cid_legal:
+569e 20407fe7 call enable_user 
+569f d8400004 arg le_l2cap_cid_att ,temp 
+56a0 9fe67c00 isub pdata ,null 
+56a1 20628000 rtn zero 
+56a2 d8400005 arg le_l2cap_cid_signal ,temp 
+56a3 9fe67c00 isub pdata ,null 
+56a4 20628000 rtn zero 
+56a5 d8400006 arg le_l2cap_cid_smp ,temp 
+56a6 9fe67c00 isub pdata ,null 
+56a7 20628000 rtn zero 
+56a8 20207fe9 branch disable_user 
+
+le_check_l2cap_llid_start:
+56a9 6801450d fetch 2 ,mem_le_payload_ptr 
+56aa 1fe20c00 copy pdata ,contr 
+56ab e8c10000 ifetch 2 ,contr 
+56ac 600144fc store 2 ,mem_le_l2cap_size 
+56ad e8c10000 ifetch 2 ,contr 
+56ae 2040569e call le_check_l2cap_cid_legal 
+56af 24740000 nrtn user 
+56b0 6808c50b fetcht 1 ,mem_le_packet_size 
+56b1 6008c4fe storet 1 ,mem_le_packet_len_recved 
+56b2 680144fc fetch 2 ,mem_le_l2cap_size 
+56b3 1fe0fe04 increase 4 ,pdata 
+56b4 98467c00 isub temp ,null 
+56b5 2022ffe7 branch enable_user ,zero 
+56b6 6800c50b fetch 1 ,mem_le_packet_size 
+56b7 1fe27200 copy pdata ,loopcnt 
+56b8 d8a00311 arg mem_le_l2capbuf ,contw 
+56b9 6801450d fetch 2 ,mem_le_payload_ptr 
+56ba 1fe20c00 copy pdata ,contr 
+56bb 20407f01 call memcpy 
+56bc 20207fe9 branch disable_user 
+
+le_check_l2cap_continue_legal:
+56bd 20407fe7 call enable_user 
+56be 6800c4fe fetch 1 ,mem_le_packet_len_recved 
+56bf 247a0000 nrtn blank 
+56c0 20207fe9 branch disable_user 
+
+le_check_l2cap_llid_continue:
+56c1 204056bd call le_check_l2cap_continue_legal 
+56c2 24740000 nrtn user 
+56c3 6800c4fe fetch 1 ,mem_le_packet_len_recved 
+56c4 d8a00311 arg mem_le_l2capbuf ,contw 
+56c5 98a0a200 iadd contw ,rega 
+56c6 6808c50b fetcht 1 ,mem_le_packet_size 
+56c7 9840fe00 iadd temp ,pdata 
+56c8 6000c4fe store 1 ,mem_le_packet_len_recved 
+56c9 6800c50b fetch 1 ,mem_le_packet_size 
+56ca 1fe27200 copy pdata ,loopcnt 
+56cb 1a220a00 copy rega ,contw 
+56cc 6801450d fetch 2 ,mem_le_payload_ptr 
+56cd 1fe20c00 copy pdata ,contr 
+56ce 20407ef4 call memcpy_fast 
+56cf 58000311 setarg mem_le_l2capbuf 
+56d0 6001450d store 2 ,mem_le_payload_ptr 
+56d1 680144fc fetch 2 ,mem_le_l2cap_size 
+56d2 1fe0fe04 increase 4 ,pdata 
+56d3 6808c4fe fetcht 1 ,mem_le_packet_len_recved 
+56d4 98467c00 isub temp ,null 
+56d5 2022ffe7 branch enable_user ,zero 
+56d6 20207fe9 branch disable_user 
+
+le_get_search_att_type:
+56d7 20407ea5 call store_contr 
+56d8 d8a0445e arg mem_le_search_att_type_length ,contw 
+
+le_get_search_common:
+56d9 680144fc fetch 2 ,mem_le_l2cap_size 
+56da 1fe0fffb increase -5 ,pdata 
+
+le_get_search_common2:
+56db e0a08000 istore 1 ,contw 
+56dc 1fe27200 copy pdata ,loopcnt 
+56dd 20407e9f call get_contr 
+56de 20207ef4 branch memcpy_fast 
+
+le_get_search_att_uuid:
+56df 20407ea5 call store_contr 
+56e0 d8a04471 arg mem_le_search_uuid_length ,contw 
+56e1 202056d9 branch le_get_search_common 
+
+le_writeatt_cb:
+56e2 680141f9 fetch 2 ,mem_cb_att_write 
+56e3 20207f9c branch callback_func 
+
+le_supervision_update:
+56e4 680a045b fetcht 4 ,mem_le_supervision_timer 
+56e5 20402a7b call get_clkbt 
+56e6 98461600 isub temp ,timeup 
+56e7 19627e00 deposit timeup 
+56e8 6809046d fetcht 2 ,mem_le_superto 
+56e9 18520400 lshift4 temp ,temp 
+56ea 18438400 lshift temp ,temp 
+56eb 98467e00 isub temp ,pdata 
+56ec 20600000 rtn 
+
+le_supervision_flush:
+56ed 20402a7b call get_clkbt 
+56ee 6002045b store 4 ,mem_le_supervision_timer 
+56ef 20600000 rtn 
+
+le_adv:
+56f0 70001624 jam 36 ,mem_le_ch_mapped 
+56f1 700ac200 jam 0 ,mem_le_adv_channel_map_temp 
+
+le_adv_loop:
+56f2 4734402d bpatchx patch2d_0 ,mem_patch2d 
+56f3 6800c36e fetch 1 ,mem_le_adv_enable 
+56f4 207a0000 rtn blank 
+56f5 d8e00000 arg le_adv_interval_timer ,queue 
+56f6 20407f16 call timer_check 
+56f7 247a0000 nrtn blank 
+56f8 4734c02d bpatchx patch2d_1 ,mem_patch2d 
+
+le_adv_loop_tx:
+56f9 7854fc00 disable master 
+56fa 78287c00 enable swfine 
+56fb 20405572 call le_init_adv 
+56fc 20405422 call le_next_adv_channel 
+56fd 204054e9 call le_send_adv_ind 
+56fe 2436d706 nbranch le_adv_not_match ,match 
+56ff 68008003 fetch 1 ,mem_le_req_rcv 
+5700 1fe0fe01 increase 1 ,pdata 
+5701 60008003 store 1 ,mem_le_req_rcv 
+5702 680082d9 fetch 1 ,mem_le_rxbuf 
+5703 1fe17e0f and pdata ,0x0f ,pdata 
+5704 c001d51c beq scan_req ,le_send_scan_response 
+5705 c002d728 beq connect_req ,le_parse_connect_req 
+
+le_adv_not_match:
+5706 4735402d bpatchx patch2d_2 ,mem_patch2d 
+5707 180a7e00 random pdata 
+5708 d84001ff arg 0x1ff ,temp 
+5709 98417e00 iand temp ,pdata 
+570a 1fe0fefa add pdata ,250 ,pdata 
+570b 20403cbe call delay 
+570c 68008ac2 fetch 1 ,mem_le_adv_channel_map_temp 
+570d 6808c48d fetcht 1 ,mem_le_adv_channel_map 
+570e 98467c00 isub temp ,null 
+570f 2422d6f2 nbranch le_adv_loop ,zero 
+5710 d8e00000 arg le_adv_interval_timer ,queue 
+5711 68014482 fetch 2 ,mem_le_adv_interval 
+5712 20207f08 branch timer_init 
+
+le_receive_window_size:
+5713 4735c02d bpatchx patch2d_3 ,mem_patch2d 
+5714 68008476 fetch 1 ,mem_le_peer_sca 
+5715 204053fc call le_sca_map 
+5716 68010441 fetch 2 ,mem_le_tsniff 
+5717 984ffe00 imul32 temp ,pdata 
+5718 d8400177 arg 375 ,temp 
+5719 984ffe00 imul32 temp ,pdata 
+571a d84186a0 arg 100000 ,temp 
+571b 9846fc00 idiv temp 
+571c 6800846a fetch 1 ,mem_le_window_size 
+571d d8404e20 arg 20000 ,temp 
+571e 984ffe00 imul32 temp ,pdata 
+571f 9840fe00 iadd temp ,pdata 
+5720 600244e5 store 4 ,mem_le_transmit_window 
+5721 4736402d bpatchx patch2d_4 ,mem_patch2d 
+5722 680140c1 fetch 2 ,mem_rx_window_sniff 
+5723 20407f86 call wait_div_end 
+5724 18078400 quotient temp 
+5725 9840fe00 iadd temp ,pdata 
+5726 6001044d store 2 ,mem_le_receive_window 
+5727 20600000 rtn 
+
+le_parse_connect_req:
+5728 4736c02d bpatchx patch2d_5 ,mem_patch2d 
+5729 680302e1 fetch 6 ,mem_le_rxbuf + 8 
+572a 680b44a0 fetcht 6 ,mem_le_lap 
+572b 98467c00 isub temp ,null 
+572c 24628000 nrtn zero 
+572d 20405619 call le_scan_check_sender_addr_type 
+572e 1a227e00 copy rega ,pdata 
+572f 6000c48e store 1 ,mem_le_conn_peer_addr_type 
+5730 680382ee fetch 7 ,mem_le_rxbuf + 21 
+5731 60038101 store 7 ,mem_tmp_buffer 
+5732 e8c40000 ifetch 8 ,contr 
+5733 e0a40000 istore 8 ,contw 
+5734 680302db fetch 6 ,mem_le_rxbuf + 2 
+5735 6003044f store 6 ,mem_le_plap 
+5736 18c08c06 increase 6 ,contr 
+5737 e8c40000 ifetch 8 ,contr 
+5738 60040463 store 8 ,mem_le_access 
+5739 e8c90000 ifetcht 2 ,contr 
+573a 4737402d bpatchx patch2d_6 ,mem_patch2d 
+573b 184b8400 lshift2 temp ,temp 
+573c e8c10000 ifetch 2 ,contr 
+573d 1febfe00 lshift2 pdata ,pdata 
+573e 60010441 store 2 ,mem_le_tsniff 
+573f 60020443 store 4 ,mem_le_anchor 
+5740 98467e00 isub temp ,pdata 
+5741 1fe0d1fe add pdata ,-2 ,clke_bt 
+5742 e8c48000 ifetch 9 ,contr 
+5743 6004846b store 9 ,mem_le_slave_latency 
+5744 4737c02d bpatchx patch2d_7 ,mem_patch2d 
+5745 e8c08000 ifetch 1 ,contr 
+5746 1ff18400 rshift4 pdata ,temp 
+5747 18430400 rshift temp ,temp 
+5748 60088476 storet 1 ,mem_le_peer_sca 
+5749 1fe17e1f and_into 0x1f ,pdata 
+574a 60008458 store 1 ,mem_le_hop 
+574b 20405713 call le_receive_window_size 
+574c 2040545b call le_calc_channel_map 
+574d 2040534c call le_init_slave 
+574e 2040223b call context_new 
+574f 24628000 nrtn zero 
+5750 4738402e bpatchx patch2e_0 ,mem_patch2e 
+5751 20402841 call calc_clke_offset 
+5752 20405ad3 call le_l2cap_reset_signaling_identifier 
+5753 700a9914 jam bt_evt_le_connected ,mem_fifo_temp 
+5754 20407d86 call ui_ipc_send_event 
+5755 20202223 branch context_save 
+
+le_init_attlist_search:
+5756 4738c02e bpatchx patch2e_1 ,mem_patch2e 
+5757 6801445a fetch 2 ,mem_le_search_handle_start 
+5758 98002400 iforce regb 
+5759 6801445c fetch 2 ,mem_le_search_handle_end 
+575a 98002600 iforce regc 
+575b 680144bc fetch 2 ,mem_ui_le_uuid_table 
+575c 98000c00 iforce contr 
+575d 78347c00 enable user 
+575e 20600000 rtn 
+
+le_att_handle_inrange:
+575f e8c10000 ifetch 2 ,contr 
+5760 207a0000 rtn blank 
+5761 9a467c00 isub regb ,null 
+5762 24610000 nrtn positive 
+5763 9a667c00 isub regc ,null 
+5764 20628000 rtn zero 
+5765 20215768 branch le_att_handle_blank ,positive 
+5766 18007c01 force 1 ,null 
+5767 20600000 rtn 
+
+le_att_handle_blank:
+5768 18007e00 force 0 ,pdata 
+5769 20600000 rtn 
+
+le_att_get_handle_ptr:
+576a 2040576d call le_att_get_handle_ptr2 
+576b 2022d779 branch le_att_get_handle_ptr_found ,zero 
+576c 20600000 rtn 
+
+le_att_get_handle_ptr2:
+576d 4739402e bpatchx patch2e_2 ,mem_patch2e 
+576e 680144bc fetch 2 ,mem_ui_le_uuid_table 
+576f 98000c00 iforce contr 
+
+le_att_get_handle_loop1:
+5770 e8c10000 ifetch 2 ,contr 
+5771 207a0000 rtn blank 
+5772 98467c00 isub temp ,null 
+5773 20628000 rtn zero 
+5774 e8c08000 ifetch 1 ,contr 
+5775 98c08c00 iadd contr ,contr 
+5776 e8c08000 ifetch 1 ,contr 
+5777 98c08c00 iadd contr ,contr 
+5778 20205770 branch le_att_get_handle_loop1 
+
+le_att_get_handle_ptr_found:
+5779 e8c08000 ifetch 1 ,contr 
+577a 98c08c00 iadd contr ,contr 
+577b 20600000 rtn 
+
+le_att_get_short_uuid_ptr:
+577c 4739c02e bpatchx patch2e_3 ,mem_patch2e 
+577d 680144bc fetch 2 ,mem_ui_le_uuid_table 
+577e 98000c00 iforce contr 
+
+le_att_get_short_uuid_loop:
+577f e8c10000 ifetch 2 ,contr 
+5780 207a0000 rtn blank 
+5781 e8c08000 ifetch 1 ,contr 
+5782 98c08c00 iadd contr ,contr 
+5783 18c08dfe increase -2 ,contr 
+5784 e8c10000 ifetch 2 ,contr 
+5785 98467c00 isub temp ,null 
+5786 20628000 rtn zero 
+5787 e8c08000 ifetch 1 ,contr 
+5788 98c08c00 iadd contr ,contr 
+5789 2020577f branch le_att_get_short_uuid_loop 
+
+le_att_get_handle_info_from_ptr:
+578a 6801049c fetch 2 ,mem_le_cur_attlist_start_ptr 
+578b 2020578e branch le_att_get_handle_info_fast 
+
+le_att_get_handle_info:
+578c 473a402e bpatchx patch2e_4 ,mem_patch2e 
+578d 680144bc fetch 2 ,mem_ui_le_uuid_table 
+
+le_att_get_handle_info_fast:
+578e 98000c00 iforce contr 
+578f 18422200 copy temp ,rega 
+
+le_att_get_handle_loop:
+5790 e8c10000 ifetch 2 ,contr 
+5791 203a5799 branch le_att_unfind_handle ,blank 
+5792 9a267c00 isub rega ,null 
+5793 2022d79a branch le_att_finded_handle ,zero 
+5794 e8c08000 ifetch 1 ,contr 
+5795 98c08c00 iadd contr ,contr 
+5796 e8c08000 ifetch 1 ,contr 
+5797 98c08c00 iadd contr ,contr 
+5798 20205790 branch le_att_get_handle_loop 
+
+le_att_unfind_handle:
+5799 20207fef branch disable_blank 
+
+le_att_finded_handle:
+579a e8c08000 ifetch 1 ,contr 
+579b 600084a2 store 1 ,mem_le_cur_uuid_length 
+579c 1fe27200 copy pdata ,loopcnt 
+579d d8a004a3 arg mem_le_cur_uuid ,contw 
+579e 20407ef4 call memcpy_fast 
+579f e8c08000 ifetch 1 ,contr 
+57a0 600084b3 store 1 ,mem_le_curr_att_len 
+57a1 20407ea5 call store_contr 
+57a2 20207ff1 branch enable_blank 
+
+le_modified_name:
+57a3 473ac02e bpatchx patch2e_5 ,mem_patch2e 
+57a4 204057a6 call le_modified_name_att_list 
+57a5 202057b8 branch le_modified_name_adv 
+
+le_modified_name_att_list:
+57a6 d8402a00 arg uuid_chrctr_device_name ,temp 
+57a7 2040577c call le_att_get_short_uuid_ptr 
+57a8 207a0000 rtn blank 
+57a9 e8c08000 ifetch 1 ,contr 
+57aa 18c20a00 copy contr ,contw 
+57ab 6808c3af fetcht 1 ,mem_le_name_len 
+57ac 18427200 copy temp ,loopcnt 
+57ad 98467c00 isub temp ,null 
+57ae 242157b5 nbranch le_name_length_longer_than_att ,positive 
+57af 98460400 isub temp ,temp 
+57b0 d8c043b0 arg mem_le_name ,contr 
+57b1 20407f01 call memcpy 
+57b2 18427200 copy temp ,loopcnt 
+57b3 2442d7f0 ncall memcpy_empty ,zero 
+57b4 20600000 rtn 
+
+le_name_length_longer_than_att:
+57b5 1fe27200 copy pdata ,loopcnt 
+57b6 d8c043b0 arg mem_le_name ,contr 
+57b7 20207ef4 branch memcpy_fast 
+
+le_modified_name_adv:
+57b8 da60438f arg mem_le_adv_data_len + 32 ,regc 
+57b9 da204370 arg mem_le_adv_data ,rega 
+57ba 204057c5 call le_modified_name_adv_and_scan 
+57bb 58000000 setarg 0 
+57bc 79347e00 setflag user ,0 ,pdata 
+57bd 60008a9a store 1 ,mem_pdatatemp 
+57be da6043af arg mem_le_scan_data_len + 32 ,regc 
+57bf da204390 arg mem_le_scan_data ,rega 
+57c0 204057c5 call le_modified_name_adv_and_scan 
+57c1 20740000 rtn user 
+57c2 68008a9a fetch 1 ,mem_pdatatemp 
+57c3 203a2a8c branch assert ,blank 
+57c4 20600000 rtn 
+
+le_modified_name_adv_and_scan:
+57c5 473b402e bpatchx patch2e_6 ,mem_patch2e 
+57c6 20407fe7 call enable_user 
+57c7 20407eda call clear_temp_block 
+57c8 da400000 arg 0 ,regb 
+57c9 d8a00ac3 arg mem_le_data_temp ,contw 
+57ca 204057df call le_modified_name_adv_loop 
+57cb 6800c3af fetch 1 ,mem_le_name_len 
+57cc 1fe08401 add pdata ,1 ,temp 
+57cd 9a40a200 iadd regb ,rega 
+57ce 1a20a202 increase 2 ,rega 
+57cf 1a267c1f sub rega ,0x1f ,null 
+57d0 242157dd nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
+57d1 e0a88000 istoret 1 ,contw 
+57d2 d8400009 arg gap_adtype_local_name_complete ,temp 
+57d3 e0a88000 istoret 1 ,contw 
+57d4 98007200 iforce loopcnt 
+57d5 20407ef4 call memcpy_fast 
+57d6 1a222400 copy rega ,regb 
+
+le_modified_name_adv_and_scan_store_data:
+57d7 1a427e00 deposit regb 
+57d8 60008ac2 store 1 ,mem_le_data_len_temp 
+57d9 d8c00ac2 arg mem_le_data_len_temp ,contr 
+57da 5fffffe0 setarg -32 
+57db 9a608a00 iadd regc ,contw 
+57dc 20207ebd branch memcpy32 
+
+le_modified_name_adv_and_scan_name_overflow:
+57dd 20407fe9 call disable_user 
+57de 202057d7 branch le_modified_name_adv_and_scan_store_data 
+
+le_modified_name_adv_loop:
+57df ea208000 ifetch 1 ,rega 
+57e0 207a0000 rtn blank 
+57e1 1fe0fe01 pincrease 1 
+57e2 e8c88000 ifetcht 1 ,contr 
+57e3 18467c09 sub temp ,gap_adtype_local_name_complete ,null 
+57e4 2022d7ee branch le_modified_name_adv_found_name ,zero 
+57e5 9a40a400 iadd regb ,regb 
+57e6 1a220c00 copy rega ,contr 
+57e7 98007200 iforce loopcnt 
+57e8 20407ef4 call memcpy_fast 
+57e9 18c22200 copy contr ,rega 
+
+le_modified_name_adv_loop2:
+57ea 1a227e00 deposit rega 
+57eb 9a667c00 isub regc ,null 
+57ec 20610000 rtn positive 
+57ed 202057df branch le_modified_name_adv_loop 
+
+le_modified_name_adv_found_name:
+57ee 9a20a200 iadd rega ,rega 
+57ef 202057ea branch le_modified_name_adv_loop2 
+
+memcpy_empty:
+57f0 58000020 setarg space 
+57f1 e0a08000 istore 1 ,contw 
+57f2 c20057f0 loop memcpy_empty 
+57f3 20600000 rtn 
+
+le_lpm_set_mult:
+57f4 473bc02e bpatchx patch2e_7 ,mem_patch2e 
+57f5 7855fc00 disable wake 
+57f6 203757f8 branch le_lpm_set_mult_attempt ,attempt 
+57f7 2436d806 nbranch le_lpm_lost ,match 
+
+le_lpm_set_mult_attempt:
+57f8 20402bcb call lpm_match 
+57f9 680140c1 fetch 2 ,mem_rx_window_sniff 
+57fa 6001044d store 2 ,mem_le_receive_window 
+57fb 2436abde nbranch lpm_mult_short ,match 
+57fc c507abde bmark1 mark_old_packet ,lpm_mult_short 
+57fd 6800c50b fetch 1 ,mem_le_packet_size 
+57fe 243a2bde nbranch lpm_mult_short ,blank 
+57ff 6800c3dd fetch 1 ,mem_le_txlen 
+5800 243a2bde nbranch lpm_mult_short ,blank 
+5801 6800c4e9 fetch 1 ,mem_le_configuration 
+5802 c282abde bbit1 bit_ble_short_mult ,lpm_mult_short 
+5803 6800843f fetch 1 ,mem_le_state 
+5804 c282abde bbit1 lestate_update_param ,lpm_mult_short 
+5805 20202bc0 branch lpm_mult_wait_timeout 
+
+le_lpm_lost:
+5806 680940c1 fetcht 2 ,mem_rx_window_sniff 
+5807 18430400 rshift temp ,temp 
+5808 6801044d fetch 2 ,mem_le_receive_window 
+5809 9840fe00 iadd temp ,pdata 
+580a 6001044d store 2 ,mem_le_receive_window 
+580b 20202bd6 branch lpm_lost 
+
+le_set_config_fixed_tk:
+580c d8e00000 arg bit_ble_passkey_fixed_key ,queue 
+580d 20205824 branch le_set_config 
+
+le_clr_config_fixed_tk:
+580e d8e00000 arg bit_ble_passkey_fixed_key ,queue 
+580f 20205828 branch le_clr_config 
+
+le_set_config_fixed_ltk:
+5810 d8e00001 arg bit_ble_pairing_fixed_ltk ,queue 
+5811 20205824 branch le_set_config 
+
+le_clr_config_fixed_ltk:
+5812 d8e00001 arg bit_ble_pairing_fixed_ltk ,queue 
+5813 20205828 branch le_clr_config 
+
+le_set_config_more_data:
+5814 d8e00002 arg bit_ble_transmit_packet_by_md ,queue 
+5815 20205824 branch le_set_config 
+
+le_clr_config_more_data:
+5816 d8e00002 arg bit_ble_transmit_packet_by_md ,queue 
+5817 20205828 branch le_clr_config 
+
+le_set_config_read_authentication:
+5818 d8e00003 arg bit_ble_read_auth ,queue 
+5819 20205824 branch le_set_config 
+
+le_clr_config_read_authentication:
+581a d8e00003 arg bit_ble_read_auth ,queue 
+581b 20205828 branch le_clr_config 
+
+le_set_config_write_authentication:
+581c d8e00004 arg bit_ble_write_auth ,queue 
+581d 20205824 branch le_set_config 
+
+le_clr_config_write_authentication:
+581e d8e00004 arg bit_ble_write_auth ,queue 
+581f 20205828 branch le_clr_config 
+
+le_set_config_short_mult:
+5820 d8e00005 arg bit_ble_short_mult ,queue 
+5821 20205824 branch le_set_config 
+
+le_clr_config_short_mult:
+5822 d8e00005 arg bit_ble_short_mult ,queue 
+5823 20205828 branch le_clr_config 
+
+le_set_config:
+5824 6800c4e9 fetch 1 ,mem_le_configuration 
+5825 f9207e00 qset1 pdata 
+5826 6000c4e9 store 1 ,mem_le_configuration 
+5827 20600000 rtn 
+
+le_clr_config:
+5828 6800c4e9 fetch 1 ,mem_le_configuration 
+5829 f93ffe00 qset0 pdata 
+582a 6000c4e9 store 1 ,mem_le_configuration 
+582b 20600000 rtn 
+
+le_set_fixed_ltk:
+582c 58112233 setarg 0x112233 
+582d 6001c4ea store 3 ,mem_le_fixed_ltk 
+582e 58445566 setarg 0x445566 
+582f e0a18000 istore 3 ,contw 
+5830 58778899 setarg 0x778899 
+5831 e0a18000 istore 3 ,contw 
+5832 58001122 setarg 0x001122 
+5833 e0a18000 istore 3 ,contw 
+5834 58334455 setarg 0x334455 
+5835 e0a18000 istore 3 ,contw 
+5836 58000066 setarg 0x66 
+5837 e0a08000 istore 1 ,contw 
+5838 20600000 rtn 
+
+le_set_justwork:
+5839 59000302 setarg 0x01000302 
+583a 60024453 store 4 ,mem_le_pres 
+583b 58010010 setarg 0x010010 
+583c 6001c457 store 3 ,mem_le_pres_max_keysize 
+583d 7044c601 jam 1 ,mem_le_pairing_mode 
+583e 20600000 rtn 
+
+le_fifo_malloc_tx_empty:
+583f da200000 arg 0 ,rega 
+5840 d8200001 arg llid_empty ,type 
+5841 20205850 branch le_fifo_malloc_tx 
+
+le_fifo_malloc_tx_ll:
+5842 d8200003 arg llid_le_ll ,type 
+5843 20405850 call le_fifo_malloc_tx 
+5844 1a427e00 copy regb ,pdata 
+5845 e0a08000 istore 1 ,contw 
+5846 20600000 rtn 
+
+le_fifo_malloc_tx_l2cap:
+5847 18000202 force llid_l2cap_start ,type 
+5848 1a20a204 increase 4 ,rega 
+5849 20405850 call le_fifo_malloc_tx 
+584a 1a20a3fc increase -4 ,rega 
+584b 1a227e00 copy rega ,pdata 
+584c e0a10000 istore 2 ,contw 
+584d 1a427e00 copy regb ,pdata 
+584e e0a10000 istore 2 ,contw 
+584f 20600000 rtn 
+
+le_fifo_malloc_tx:
+5850 1a267cf0 sub rega ,240 ,null 
+5851 24212a8c nbranch assert ,positive 
+5852 6800c4ff fetch 1 ,mem_le_tx_buff_used 
+5853 d8400001 arg 1 ,temp 
+5854 df200004 arg le_tx_buff_count ,loopcnt 
+
+le_fifo_malloc_tx_loop:
+5855 98417c00 iand temp ,null 
+5856 2022d85a branch le_fifo_malloc_tx_got_empty ,zero 
+5857 18438400 lshift temp ,temp 
+5858 c2005855 loop le_fifo_malloc_tx_loop 
+5859 20202a8c branch assert 
+
+le_fifo_malloc_tx_got_empty:
+585a 9842fe00 ixor temp ,pdata 
+585b 6000c4ff store 1 ,mem_le_tx_buff_used 
+585c 1f267e04 sub loopcnt ,le_tx_buff_count ,pdata 
+585d 1ff27e00 lshift4 pdata ,pdata 
+585e 1ff27e00 lshift4 pdata ,pdata 
+585f d8401800 arg mem_le_tx_buffer0 ,temp 
+5860 98408400 iadd temp ,temp 
+
+le_fifo_tx_find_empty_ptr:
+5861 df200000 arg 0 ,loopcnt 
+5862 d8c04500 arg mem_le_tx_ptr0 ,contr 
+
+le_fifo_tx_find_empty_ptr_loop:
+5863 e8c10000 ifetch 2 ,contr 
+5864 203a5869 branch le_fifo_tx_found_empty_ptr ,blank 
+5865 1f227e00 copy loopcnt ,pdata 
+5866 1f20f201 increase 1 ,loopcnt 
+5867 c0825863 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
+5868 20202a8c branch assert 
+
+le_fifo_tx_found_empty_ptr:
+5869 18c08dfe increase -2 ,contr 
+586a e0c90000 istoret 2 ,contr 
+586b 18420a00 copy temp ,contw 
+586c 1a227e00 copy rega ,pdata 
+586d e0a08000 istore 1 ,contw 
+586e 58000000 setarg 0 
+586f e0a08000 istore 1 ,contw 
+5870 18227e00 copy type ,pdata 
+5871 e0a08000 istore 1 ,contw 
+5872 20600000 rtn 
+
+le_fifo_get_first_tx_ptr:
+5873 68014500 fetch 2 ,mem_le_tx_ptr0 
+5874 1fe20c00 copy pdata ,contr 
+5875 20600000 rtn 
+
+le_fifo_get_second_tx_ptr:
+5876 68014502 fetch 2 ,mem_le_tx_ptr1 
+5877 1fe20c00 copy pdata ,contr 
+5878 20600000 rtn 
+
+le_fifo_get_last_tx_ptr:
+5879 2040587c call le_fifo_get_last_tx_ptr0 
+587a 1fe20c00 copy pdata ,contr 
+587b 20600000 rtn 
+
+le_fifo_get_last_tx_ptr0:
+587c 68014506 fetch 2 ,mem_le_tx_ptr3 
+587d 247a0000 nrtn blank 
+587e 68014504 fetch 2 ,mem_le_tx_ptr2 
+587f 247a0000 nrtn blank 
+5880 68014502 fetch 2 ,mem_le_tx_ptr1 
+5881 247a0000 nrtn blank 
+5882 68014500 fetch 2 ,mem_le_tx_ptr0 
+5883 20600000 rtn 
+
+le_fifo_get_first_l2cap_ptr:
+5884 20405873 call le_fifo_get_first_tx_ptr 
+5885 18c08c03 increase 3 ,contr 
+5886 20600000 rtn 
+
+le_fifo_get_first_att_ptr:
+5887 20405873 call le_fifo_get_first_tx_ptr 
+5888 18c08c07 increase 7 ,contr 
+5889 20600000 rtn 
+
+le_fifo_get_last_att_ptr:
+588a 20405879 call le_fifo_get_last_tx_ptr 
+588b 18c08c07 increase 7 ,contr 
+588c 20600000 rtn 
+
+le_fifo_get_last_l2cap_ptr:
+588d 20405879 call le_fifo_get_last_tx_ptr 
+588e 18c08c03 increase 3 ,contr 
+588f 20600000 rtn 
+
+le_fifo_check_full:
+5890 68014506 fetch 2 ,mem_le_tx_ptr3 
+5891 20600000 rtn 
+
+le_fifo_check_nearly_full:
+5892 68014504 fetch 2 ,mem_le_tx_ptr2 
+5893 20600000 rtn 
+
+le_fifo_check_empty:
+5894 68014500 fetch 2 ,mem_le_tx_ptr0 
+5895 20600000 rtn 
+
+le_fifo_release_first_node:
+5896 68014500 fetch 2 ,mem_le_tx_ptr0 
+5897 d8401800 arg mem_le_tx_buffer0 ,temp 
+5898 98467e00 isub temp ,pdata 
+5899 1ff1fe00 rshift4 pdata ,pdata 
+589a 1ff18e00 rshift4 pdata ,queue 
+589b 6800c4ff fetch 1 ,mem_le_tx_buff_used 
+589c f93ffe00 qset0 pdata 
+589d 6000c4ff store 1 ,mem_le_tx_buff_used 
+589e df200000 arg 0 ,loopcnt 
+
+le_fifo_release_first_node_loop:
+589f 1f23fe00 lshift loopcnt ,pdata 
+58a0 d8404502 arg mem_le_tx_ptr1 ,temp 
+58a1 98408400 iadd temp ,temp 
+58a2 e8410000 ifetch 2 ,temp 
+58a3 184085fe increase -2 ,temp 
+58a4 e0410000 istore 2 ,temp 
+58a5 1f227e00 copy loopcnt ,pdata 
+58a6 1f20f201 increase 1 ,loopcnt 
+58a7 c081d89f bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
+58a8 58000000 setarg 0 
+58a9 e0410000 istore 2 ,temp 
+58aa 20600000 rtn 
+
+le_parse_att:
+58ab e8c18000 ifetch 3 ,contr 
+58ac 60018477 store 3 ,mem_le_att_opcode 
+58ad c00158c1 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
+58ae c001d8c9 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
+58af c00258cc beq attop_find_information_request ,le_parse_att_find_information_request 
+58b0 c00358f2 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
+58b1 c004593f beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
+58b2 c00559bc beq attop_read_request ,le_parse_att_read_request 
+58b3 c00659e4 beq attop_read_blob_request ,le_parse_att_read_blob_request 
+58b4 c00859fa beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
+58b5 c0095a2f beq attop_write_request ,le_parse_att_write_request 
+58b6 c00b5a48 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
+58b7 c00c5a5b beq attop_execute_write_request ,le_parse_att_execute_write_request 
+58b8 c0295a60 beq attop_write_command ,le_parse_att_write_command 
+58b9 20600000 rtn 
+
+le_send_att_exchange_mtu_requset:
+58ba 18002203 force 3 ,rega 
+58bb 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+58bc 58000002 setarg attop_exchange_mtu_request 
+58bd e0a08000 istore 1 ,contw 
+58be 680144a6 fetch 2 ,mem_le_local_mtu 
+58bf e0a10000 istore 2 ,contw 
+58c0 20600000 rtn 
+
+le_parse_att_exchange_mtu_request:
+58c1 204058c9 call le_parse_att_exchange_mtu_response 
+
+le_send_att_exchange_mtu_response:
+58c2 18002203 force 3 ,rega 
+58c3 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+58c4 58000003 setarg attop_exchange_mtu_response 
+58c5 e0a08000 istore 1 ,contw 
+58c6 680144a6 fetch 2 ,mem_le_local_mtu 
+58c7 e0a10000 istore 2 ,contw 
+58c8 20600000 rtn 
+
+le_parse_att_exchange_mtu_response:
+58c9 1fecfe00 rshift8 pdata ,pdata 
+58ca 600144a8 store 2 ,mem_le_remote_mtu 
+58cb 20600000 rtn 
+
+le_parse_att_find_information_request:
+58cc 20405ab1 call le_get_search_handle_start_end_common 
+58cd 20407fe7 call enable_user 
+58ce 202058cf branch le_send_att_find_information_response 
+
+le_send_att_find_information_response:
+58cf d9600003 arg 3 ,timeup 
+58d0 20405756 call le_init_attlist_search 
+
+le_send_att_find_information_res_loop:
+58d1 2040575f call le_att_handle_inrange 
+58d2 203a58f0 branch le_send_att_find_information_res_end ,blank 
+58d3 242158ed nbranch le_send_att_find_information_res_next ,positive 
+58d4 18c08dfe increase -2 ,contr 
+58d5 20407ea5 call store_contr 
+58d6 20407e9c call get_contw 
+58d7 243458e1 nbranch le_send_att_find_information_res_store_info ,user 
+58d8 20407e85 call push_stack_rega_b_c 
+58d9 20407fe9 call disable_user 
+58da 18002214 force 20 ,rega 
+58db 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+58dc 20407e95 call pop_stack_rega_b_c 
+58dd 58000005 setarg attop_find_information_response 
+58de e0a08000 istore 1 ,contw 
+58df 58000001 setarg uuid_size_16bit 
+58e0 e0a08000 istore 1 ,contw 
+
+le_send_att_find_information_res_store_info:
+58e1 20407e9f call get_contr 
+58e2 e8c10000 ifetch 2 ,contr 
+58e3 e0a10000 istore 2 ,contw 
+58e4 e8c08000 ifetch 1 ,contr 
+58e5 1fe27200 copy pdata ,loopcnt 
+58e6 20407f01 call memcpy 
+58e7 20407ea2 call store_contw 
+58e8 196097ff increase -1 ,timeup 
+58e9 2022d8f0 branch le_send_att_find_information_res_end ,zero 
+
+le_send_att_find_information_res_cont:
+58ea e8c08000 ifetch 1 ,contr 
+58eb 98c08c00 iadd contr ,contr 
+58ec 202058d1 branch le_send_att_find_information_res_loop 
+
+le_send_att_find_information_res_next:
+58ed e8c08000 ifetch 1 ,contr 
+58ee 98c08c00 iadd contr ,contr 
+58ef 202058ea branch le_send_att_find_information_res_cont 
+
+le_send_att_find_information_res_end:
+58f0 20345a76 branch le_send_att_error_response_notfound ,user 
+58f1 20205aa5 branch le_send_auto_len_by_mem 
+
+le_parse_att_find_by_type_value_request:
+58f2 20405ab1 call le_get_search_handle_start_end_common 
+58f3 e8c10000 ifetch 2 ,contr 
+58f4 60014472 store 2 ,mem_le_search_uuid 
+58f5 20407ea5 call store_contr 
+58f6 d8a0445e arg mem_le_search_att_type_length ,contw 
+58f7 680144fc fetch 2 ,mem_le_l2cap_size 
+58f8 1fe0fff9 increase -7 ,pdata 
+58f9 204056db call le_get_search_common2 
+58fa 20205905 branch le_send_att_find_by_type_value_response 
+
+le_start_end_handle_check_1:
+58fb 78547c00 disable user 
+58fc 6809445a fetcht 2 ,mem_le_search_handle_start 
+58fd 6801445c fetch 2 ,mem_le_search_handle_end 
+58fe 98467c00 isub temp ,null 
+58ff 24215902 nbranch le_start_end_handle_check_1_fail ,positive 
+5900 18427e00 deposit temp 
+5901 c1800000 rtnne 0 
+
+le_start_end_handle_check_1_fail:
+5902 78347c00 enable user 
+5903 70047a01 jam att_err_invalid_handle ,mem_le_err_code 
+5904 20205a77 branch le_send_att_error_response 
+
+le_send_att_find_by_type_value_response:
+5905 204058fb call le_start_end_handle_check_1 
+5906 20740000 rtn user 
+5907 68094472 fetcht 2 ,mem_le_search_uuid 
+5908 58002800 setarg uuid_gatt_primary_service 
+5909 98467c00 isub temp ,null 
+590a 2022d90c branch le_send_att_find_by_type_value_res_primary ,zero 
+590b 20205a76 branch le_send_att_error_response_notfound 
+
+le_send_att_find_by_type_value_res_primary:
+590c 7004b400 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
+590d 6809445a fetcht 2 ,mem_le_search_handle_start 
+590e 60090aa2 storet 2 ,mem_temp 
+590f 2040578c call le_att_get_handle_info 
+5910 243a5a76 nbranch le_send_att_error_response_notfound ,blank 
+
+le_send_att_find_primary_search_loop:
+5911 68090aa2 fetcht 2 ,mem_temp 
+5912 2040578c call le_att_get_handle_info 
+5913 243a5925 nbranch le_send_att_error_response_notfound2 ,blank 
+5914 18c22200 copy contr ,rega 
+5915 680084b3 fetch 1 ,mem_le_curr_att_len 
+5916 1fe27200 copy pdata ,loopcnt 
+5917 6808c45e fetcht 1 ,mem_le_search_att_type_length 
+5918 98467c00 isub temp ,null 
+5919 2422d921 nbranch le_send_att_find_primary_search_loop1 ,zero 
+591a da40445f arg mem_le_search_att_type ,regb 
+591b 20407f88 call string_compare 
+591c 2022d928 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
+591d 680104a3 fetch 2 ,mem_le_cur_uuid 
+591e 68094472 fetcht 2 ,mem_le_search_uuid 
+591f 98467c00 isub temp ,null 
+5920 2022d930 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
+
+le_send_att_find_primary_search_loop1:
+5921 68010aa2 fetch 2 ,mem_temp 
+5922 1fe0fe01 increase 1 ,pdata 
+5923 60010aa2 store 2 ,mem_temp 
+5924 20205911 branch le_send_att_find_primary_search_loop 
+
+le_send_att_error_response_notfound2:
+5925 680084b4 fetch 1 ,mem_le_search_res 
+5926 c000d930 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
+5927 20205a76 branch le_send_att_error_response_notfound 
+
+le_send_att_find_primary_search_end_start_handle_found:
+5928 680104a3 fetch 2 ,mem_le_cur_uuid 
+5929 68094472 fetcht 2 ,mem_le_search_uuid 
+592a 98467c00 isub temp ,null 
+592b 2422d921 nbranch le_send_att_find_primary_search_loop1 ,zero 
+592c 7004b401 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
+592d 68090aa2 fetcht 2 ,mem_temp 
+592e 6009049e storet 2 ,mem_le_cur_handle_start 
+592f 20205921 branch le_send_att_find_primary_search_loop1 
+
+le_send_att_find_primary_search_end_ending_handle_found:
+5930 680084b4 fetch 1 ,mem_le_search_res 
+5931 c0005921 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
+5932 7004b402 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
+5933 68090aa2 fetcht 2 ,mem_temp 
+5934 184085ff increase -1 ,temp 
+5935 600904a0 storet 2 ,mem_le_cur_handle_end 
+
+le_send_att_find_primary_search_end:
+5936 da200005 arg 5 ,rega 
+5937 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5938 58000007 setarg attop_find_by_type_value_response 
+5939 e0a08000 istore 1 ,contw 
+593a 6801049e fetch 2 ,mem_le_cur_handle_start 
+593b e0a10000 istore 2 ,contw 
+593c 680104a0 fetch 2 ,mem_le_cur_handle_end 
+593d e0a10000 istore 2 ,contw 
+593e 20600000 rtn 
+
+le_parse_att_read_by_type_request:
+593f 20405ab1 call le_get_search_handle_start_end_common 
+5940 204056df call le_get_search_att_uuid 
+5941 20205942 branch le_send_att_read_by_type_response 
+
+le_send_att_read_by_type_response:
+5942 6809445a fetcht 2 ,mem_le_search_handle_start 
+5943 60090aa2 storet 2 ,mem_temp 
+5944 20405756 call le_init_attlist_search 
+5945 2040576d call le_att_get_handle_ptr2 
+5946 18c08dfe increase -2 ,contr 
+5947 18c27e00 copy contr ,pdata 
+5948 6001049c store 2 ,mem_le_cur_attlist_start_ptr 
+5949 68094472 fetcht 2 ,mem_le_search_uuid 
+594a 58002a00 setarg uuid_chrctr_device_name 
+594b 98467c00 isub temp ,null 
+594c 2022d9a8 branch le_send_att_read_by_type_res_device_name ,zero 
+594d 58002803 setarg uuid_gatt_characteristic 
+594e 98467c00 isub temp ,null 
+594f 2422d990 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
+5950 d9600002 arg 2 ,timeup 
+
+le_send_att_read_by_type_response_loop:
+5951 20405a88 call le_att_check_handle_end 
+5952 2421596d nbranch le_send_att_read_by_type_response_end ,positive 
+5953 68090aa2 fetcht 2 ,mem_temp 
+5954 2040578a call le_att_get_handle_info_from_ptr 
+5955 c000d96d beq 1 ,le_send_att_read_by_type_response_end 
+5956 20405a94 call le_att_same_uuid 
+5957 2422d96b nbranch le_send_att_read_by_type_response_next_handle ,zero 
+5958 2434596f nbranch le_send_att_read_by_type_res_found_next ,user 
+5959 78547c00 disable user 
+595a da200014 arg 20 ,rega 
+595b 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+595c 58000009 setarg attop_read_by_type_response 
+595d e0a08000 istore 1 ,contw 
+595e 18a26000 copy contw ,alarm 
+595f 18a08a01 increase 1 ,contw 
+5960 2040597d call le_send_att_read_by_type_write_properties 
+5961 20405a84 call le_att_next_handle 
+5962 2040578a call le_att_get_handle_info_from_ptr 
+5963 20405984 call le_send_att_read_by_type_write_uuid 
+5964 680084a2 fetch 1 ,mem_le_cur_uuid_length 
+5965 1fe0fe05 increase 5 ,pdata 
+5966 e6008000 istore 1 ,alarm 
+5967 680084a2 fetch 1 ,mem_le_cur_uuid_length 
+5968 c008596d beq 16 ,le_send_att_read_by_type_response_end 
+5969 196097ff increase -1 ,timeup 
+596a 2022d96d branch le_send_att_read_by_type_response_end ,zero 
+
+le_send_att_read_by_type_response_next_handle:
+596b 20405a84 call le_att_next_handle 
+596c 20205951 branch le_send_att_read_by_type_response_loop 
+
+le_send_att_read_by_type_response_end:
+596d 20345a76 branch le_send_att_error_response_notfound ,user 
+596e 20205aa5 branch le_send_auto_len_by_mem 
+
+le_send_att_read_by_type_res_found_next:
+596f 20405a97 call le_store_att_record 
+5970 20405a84 call le_att_next_handle 
+5971 2040578a call le_att_get_handle_info_from_ptr 
+5972 680084a2 fetch 1 ,mem_le_cur_uuid_length 
+5973 c008596d beq 16 ,le_send_att_read_by_type_response_end 
+5974 20407e9c call get_contw 
+5975 68010aa2 fetch 2 ,mem_temp 
+5976 1fe0ffff increase -1 ,pdata 
+5977 e0a10000 istore 2 ,contw 
+5978 20405aa1 call le_write_att_record_common 
+5979 20405984 call le_send_att_read_by_type_write_uuid 
+597a 196097ff increase -1 ,timeup 
+597b 2022d96d branch le_send_att_read_by_type_response_end ,zero 
+597c 2020596b branch le_send_att_read_by_type_response_next_handle 
+
+le_send_att_read_by_type_write_properties:
+597d 68010aa2 fetch 2 ,mem_temp 
+597e e0a10000 istore 2 ,contw 
+597f 680084b3 fetch 1 ,mem_le_curr_att_len 
+5980 1fe27200 copy pdata ,loopcnt 
+5981 20407e9f call get_contr 
+5982 20407ef4 call memcpy_fast 
+5983 20207ea2 branch store_contw 
+
+le_send_att_read_by_type_write_uuid:
+5984 20407e9c call get_contw 
+5985 68010aa2 fetch 2 ,mem_temp 
+5986 e0a10000 istore 2 ,contw 
+5987 20407ea2 call store_contw 
+5988 680084a2 fetch 1 ,mem_le_cur_uuid_length 
+5989 1fe27200 copy pdata ,loopcnt 
+598a 20407e9c call get_contw 
+598b 20407e9f call get_contr 
+598c 9f260c00 isub loopcnt ,contr 
+598d 18c08dff increase -1 ,contr 
+598e 20407ef4 call memcpy_fast 
+598f 20207ea2 branch store_contw 
+
+le_send_att_read_by_type_res_not_characteristic:
+5990 6809445a fetcht 2 ,mem_le_search_handle_start 
+5991 60090aa2 storet 2 ,mem_temp 
+
+le_send_att_read_by_type_res_not_char_loop:
+5992 20405a88 call le_att_check_handle_end 
+5993 24215a76 nbranch le_send_att_error_response_notfound ,positive 
+5994 2040578a call le_att_get_handle_info_from_ptr 
+5995 c000da76 beq 1 ,le_send_att_error_response_notfound 
+5996 20405a94 call le_att_same_uuid 
+5997 2422d9a6 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
+
+le_send_att_read_by_type_res_not_char_common:
+5998 da200014 arg 20 ,rega 
+5999 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+599a 58000009 setarg attop_read_by_type_response 
+599b e0a08000 istore 1 ,contw 
+599c 680084b3 fetch 1 ,mem_le_curr_att_len 
+599d 1fe27200 copy pdata ,loopcnt 
+599e 1fe0fe02 increase 2 ,pdata 
+599f e0a08000 istore 1 ,contw 
+59a0 68010aa2 fetch 2 ,mem_temp 
+59a1 e0a10000 istore 2 ,contw 
+59a2 20407e9f call get_contr 
+59a3 20407ef4 call memcpy_fast 
+59a4 20407ea2 call store_contw 
+59a5 20205aa5 branch le_send_auto_len_by_mem 
+
+le_send_att_read_by_type_res_not_char_next:
+59a6 20405a84 call le_att_next_handle 
+59a7 20205992 branch le_send_att_read_by_type_res_not_char_loop 
+
+le_send_att_read_by_type_res_device_name:
+59a8 d8402a00 arg uuid_chrctr_device_name ,temp 
+59a9 2040577c call le_att_get_short_uuid_ptr 
+59aa 207a0000 rtn blank 
+59ab 18c08dfb increase -5 ,contr 
+59ac e8c10000 ifetch 2 ,contr 
+59ad 60010aa2 store 2 ,mem_temp 
+59ae da200014 arg 20 ,rega 
+59af 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+59b0 58000009 setarg attop_read_by_type_response 
+59b1 e0a08000 istore 1 ,contw 
+59b2 6800c3af fetch 1 ,mem_le_name_len 
+59b3 1fe27200 copy pdata ,loopcnt 
+59b4 1fe0fe02 increase 2 ,pdata 
+59b5 e0a08000 istore 1 ,contw 
+59b6 68010aa2 fetch 2 ,mem_temp 
+59b7 e0a10000 istore 2 ,contw 
+59b8 d8c043b0 arg mem_le_name ,contr 
+59b9 20407ef4 call memcpy_fast 
+59ba 20407ea2 call store_contw 
+59bb 20205aa5 branch le_send_auto_len_by_mem 
+
+le_parse_att_read_request:
+59bc 68090478 fetcht 2 ,mem_le_att_handle 
+59bd 6800c4e9 fetch 1 ,mem_le_configuration 
+59be c281d9dd bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
+
+le_send_att_read_response:
+59bf 2040576a call le_att_get_handle_ptr 
+59c0 203a5a76 branch le_send_att_error_response_notfound ,blank 
+59c1 18c08dfe increase -2 ,contr 
+59c2 e8c10000 ifetch 2 ,contr 
+59c3 d8402a00 arg uuid_chrctr_device_name ,temp 
+59c4 98467c00 isub temp ,null 
+59c5 2022d9d3 branch le_send_device_name ,zero 
+59c6 e8c08000 ifetch 1 ,contr 
+59c7 1fe67c16 sub pdata ,22 ,null 
+59c8 202159ca branch le_send_att_read_response_less ,positive 
+59c9 18007e16 force 22 ,pdata 
+
+le_send_att_read_response_less:
+59ca 1fe22600 copy pdata ,regc 
+59cb 20407ea5 call store_contr 
+59cc 1a60a201 add regc ,1 ,rega 
+59cd 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+59ce 5800000b setarg attop_read_response 
+59cf e0a08000 istore 1 ,contw 
+59d0 1a627200 copy regc ,loopcnt 
+59d1 20407e9f call get_contr 
+59d2 20207f01 branch memcpy 
+
+le_send_device_name:
+59d3 20407ea5 call store_contr 
+59d4 6800c3af fetch 1 ,mem_le_name_len 
+59d5 1fe0a201 add pdata ,1 ,rega 
+59d6 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+59d7 5800000b setarg attop_read_response 
+59d8 e0a08000 istore 1 ,contw 
+59d9 6800c3af fetch 1 ,mem_le_name_len 
+59da 1fe27200 copy pdata ,loopcnt 
+59db d8c043b0 arg mem_le_name ,contr 
+59dc 20207f01 branch memcpy 
+
+le_send_att_read_response_check_auth:
+59dd 680144fa fetch 2 ,mem_le_pairing_handle 
+59de 98467c00 isub temp ,null 
+59df 2422d9bf nbranch le_send_att_read_response ,zero 
+59e0 20405a42 call le_check_encrypt_state 
+59e1 243459bf nbranch le_send_att_read_response ,user 
+59e2 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+59e3 20205a77 branch le_send_att_error_response 
+
+le_parse_att_read_blob_request:
+59e4 e8c10000 ifetch 2 ,contr 
+59e5 6001445e store 2 ,mem_le_att_offset 
+
+le_send_att_read_blob_response:
+59e6 da200014 arg 20 ,rega 
+59e7 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+59e8 5800000d setarg attop_read_blob_response 
+59e9 e0a08000 istore 1 ,contw 
+59ea 6801445e fetch 2 ,mem_le_att_offset 
+59eb 98002200 iforce rega 
+59ec 68090478 fetcht 2 ,mem_le_att_handle 
+59ed 2040576a call le_att_get_handle_ptr 
+59ee 203a5a76 branch le_send_att_error_response_notfound ,blank 
+59ef e8c08000 ifetch 1 ,contr 
+59f0 9a267200 isub rega ,loopcnt 
+59f1 24215a76 nbranch le_send_att_error_response_notfound ,positive 
+59f2 1f267c16 sub loopcnt ,22 ,null 
+59f3 202159f5 branch le_send_att_read_blob_response_less ,positive 
+59f4 18007216 force 22 ,loopcnt 
+
+le_send_att_read_blob_response_less:
+59f5 1a227e00 deposit rega 
+59f6 98c08c00 iadd contr ,contr 
+59f7 20407ef4 call memcpy_fast 
+59f8 20407ea2 call store_contw 
+59f9 20205aa5 branch le_send_auto_len_by_mem 
+
+le_parse_att_read_by_group_type_request:
+59fa 20405ab1 call le_get_search_handle_start_end_common 
+59fb 204056d7 call le_get_search_att_type 
+59fc 202059fd branch le_send_att_read_by_group_type_response 
+
+le_send_att_read_by_group_type_response:
+59fd d9600002 arg 2 ,timeup 
+59fe 6809445a fetcht 2 ,mem_le_search_handle_start 
+59ff 60090aa2 storet 2 ,mem_temp 
+5a00 20405756 call le_init_attlist_search 
+5a01 2040576d call le_att_get_handle_ptr2 
+5a02 18c08dfe increase -2 ,contr 
+5a03 18c27e00 copy contr ,pdata 
+5a04 6001049c store 2 ,mem_le_cur_attlist_start_ptr 
+
+le_send_att_read_by_group_type_response_loop:
+5a05 20405a88 call le_att_check_handle_end 
+5a06 24215a25 nbranch le_send_att_read_by_group_type_end0 ,positive 
+5a07 68090aa2 fetcht 2 ,mem_temp 
+5a08 2040578a call le_att_get_handle_info_from_ptr 
+5a09 c000da28 beq 1 ,le_send_att_read_by_group_type_end1 
+5a0a 20405a8c call le_att_same_type 
+5a0b 2422da23 nbranch le_send_att_read_by_group_type_next_handle ,zero 
+5a0c 19627e00 copy timeup ,pdata 
+5a0d c0005a28 beq 0 ,le_send_att_read_by_group_type_end1 
+5a0e 24345a19 nbranch le_send_att_read_by_group_type_store_write_record ,user 
+5a0f 78547c00 disable user 
+5a10 da200014 arg 20 ,rega 
+5a11 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5a12 58000011 setarg attop_read_by_group_type_response 
+5a13 e0a08000 istore 1 ,contw 
+5a14 680084b3 fetch 1 ,mem_le_curr_att_len 
+5a15 1fe0fe04 increase 4 ,pdata 
+5a16 e0a08000 istore 1 ,contw 
+5a17 20407ea2 call store_contw 
+5a18 20205a1f branch le_send_att_read_by_group_type_store_record 
+
+le_send_att_read_by_group_type_store_write_record:
+5a19 680084b3 fetch 1 ,mem_le_curr_att_len 
+5a1a c0085a28 beq 16 ,le_send_att_read_by_group_type_end1 
+5a1b 68010aa2 fetch 2 ,mem_temp 
+5a1c 1fe0ffff increase -1 ,pdata 
+5a1d 600104a0 store 2 ,mem_le_cur_handle_end 
+5a1e 20405a9c call le_write_att_record 
+
+le_send_att_read_by_group_type_store_record:
+5a1f 68010aa2 fetch 2 ,mem_temp 
+5a20 6001049e store 2 ,mem_le_cur_handle_start 
+5a21 20405a97 call le_store_att_record 
+5a22 196097ff increase -1 ,timeup 
+
+le_send_att_read_by_group_type_next_handle:
+5a23 20405a84 call le_att_next_handle 
+5a24 20205a05 branch le_send_att_read_by_group_type_response_loop 
+
+le_send_att_read_by_group_type_end0:
+5a25 68010aa2 fetch 2 ,mem_temp 
+5a26 600104a0 store 2 ,mem_le_cur_handle_end 
+5a27 20205a2c branch le_send_att_read_by_group_type_end_common 
+
+le_send_att_read_by_group_type_end1:
+5a28 68010aa2 fetch 2 ,mem_temp 
+5a29 1fe0ffff increase -1 ,pdata 
+5a2a 600104a0 store 2 ,mem_le_cur_handle_end 
+5a2b 20205a2c branch le_send_att_read_by_group_type_end_common 
+
+le_send_att_read_by_group_type_end_common:
+5a2c 20345a76 branch le_send_att_error_response_notfound ,user 
+5a2d 20405a9c call le_write_att_record 
+5a2e 20205aa5 branch le_send_auto_len_by_mem 
+
+le_parse_att_write_request:
+5a2f 18c22200 copy contr ,rega 
+5a30 680144fc fetch 2 ,mem_le_l2cap_size 
+5a31 1fe0a5fd add pdata ,-3 ,regb 
+5a32 204056e2 call le_writeatt_cb 
+
+le_send_att_write_response_check_auth:
+5a33 6800c4e9 fetch 1 ,mem_le_configuration 
+5a34 c3025a3d bbit0 bit_ble_write_auth ,le_send_att_write_response 
+5a35 68090478 fetcht 2 ,mem_le_att_handle 
+5a36 680144fa fetch 2 ,mem_le_pairing_handle 
+5a37 98467c00 isub temp ,null 
+5a38 2422da3d nbranch le_send_att_write_response ,zero 
+5a39 20405a42 call le_check_encrypt_state 
+5a3a 24345a3d nbranch le_send_att_write_response ,user 
+5a3b 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+5a3c 20205a77 branch le_send_att_error_response 
+
+le_send_att_write_response:
+5a3d 18002201 force 1 ,rega 
+5a3e 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5a3f 58000013 setarg attop_write_response 
+5a40 e0a08000 istore 1 ,contw 
+5a41 20600000 rtn 
+
+le_check_encrypt_state:
+5a42 20407fe9 call disable_user 
+5a43 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5a44 c1000000 rtneq le_pairing_mode_none 
+5a45 6800c040 fetch 1 ,mem_context 
+5a46 c3820000 rtnbit1 lestate_encryption 
+5a47 20207fe7 branch enable_user 
+
+le_parse_att_prepare_write_request:
+5a48 18c0a202 add contr ,2 ,rega 
+5a49 680144fc fetch 2 ,mem_le_l2cap_size 
+5a4a 1fe0a5fb add pdata ,-5 ,regb 
+5a4b 204056e2 call le_writeatt_cb 
+5a4c 20205a4d branch le_send_att_prepare_write_response 
+
+le_send_att_prepare_write_response:
+5a4d 680144fc fetch 2 ,mem_le_l2cap_size 
+5a4e 1fe22200 copy pdata ,rega 
+5a4f 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5a50 58000017 setarg attop_prepare_write_response 
+5a51 e0a08000 istore 1 ,contw 
+5a52 68010478 fetch 2 ,mem_le_att_handle 
+5a53 e0a10000 istore 2 ,contw 
+5a54 680144fc fetch 2 ,mem_le_l2cap_size 
+5a55 1fe0f3fb add pdata ,-5 ,loopcnt 
+5a56 6801450d fetch 2 ,mem_le_payload_ptr 
+5a57 1fe08c07 add pdata ,7 ,contr 
+5a58 e8c10000 ifetch 2 ,contr 
+5a59 e0a10000 istore 2 ,contw 
+5a5a 20207ef4 branch memcpy_fast 
+
+le_parse_att_execute_write_request:
+
+le_send_att_execute_write_response:
+5a5b 18002201 force 1 ,rega 
+5a5c 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5a5d 58000019 setarg attop_execute_write_response 
+5a5e e0a08000 istore 1 ,contw 
+5a5f 20600000 rtn 
+
+le_parse_att_write_command:
+5a60 18c22200 copy contr ,rega 
+5a61 680144fc fetch 2 ,mem_le_l2cap_size 
+5a62 1fe0a5fd add pdata ,-3 ,regb 
+5a63 202056e2 branch le_writeatt_cb 
+
+le_att_malloc_tx_notify:
+5a64 18422600 copy temp ,regc 
+5a65 1a20a203 increase 3 ,rega 
+5a66 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5a67 1a20a3fd increase -3 ,rega 
+5a68 5800001b setarg attop_handle_value_notification 
+5a69 e0a08000 istore 1 ,contw 
+5a6a 1a620400 copy regc ,temp 
+5a6b e0a90000 istoret 2 ,contw 
+5a6c 20600000 rtn 
+
+le_att_malloc_tx_indication:
+5a6d 18422600 copy temp ,regc 
+5a6e 1a20a203 increase 3 ,rega 
+5a6f 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5a70 1a20a3fd increase -3 ,rega 
+5a71 5800001d setarg attop_handle_value_indication 
+5a72 e0a08000 istore 1 ,contw 
+5a73 1a620400 copy regc ,temp 
+5a74 e0a90000 istoret 2 ,contw 
+5a75 20600000 rtn 
+
+le_send_att_error_response_notfound:
+5a76 70047a0a jam att_err_attribute_not_found ,mem_le_err_code 
+
+le_send_att_error_response:
+5a77 18002205 force 5 ,rega 
+5a78 20405a82 call le_fifo_malloc_tx_l2cap_gatt 
+5a79 58000001 setarg attop_error_response 
+5a7a e0a08000 istore 1 ,contw 
+5a7b 68008477 fetch 1 ,mem_le_att_opcode 
+5a7c e0a08000 istore 1 ,contw 
+5a7d 68010478 fetch 2 ,mem_le_att_handle 
+5a7e e0a10000 istore 2 ,contw 
+5a7f 6800847a fetch 1 ,mem_le_err_code 
+5a80 e0a08000 istore 1 ,contw 
+5a81 20600000 rtn 
+
+le_fifo_malloc_tx_l2cap_gatt:
+5a82 18002404 force le_l2cap_cid_att ,regb 
+5a83 20205847 branch le_fifo_malloc_tx_l2cap 
+
+le_att_next_handle:
+5a84 68090aa2 fetcht 2 ,mem_temp 
+5a85 18408401 increase 1 ,temp 
+5a86 60090aa2 storet 2 ,mem_temp 
+5a87 20600000 rtn 
+
+le_att_check_handle_end:
+5a88 68090aa2 fetcht 2 ,mem_temp 
+5a89 6801445c fetch 2 ,mem_le_search_handle_end 
+5a8a 98467c00 isub temp ,null 
+5a8b 20600000 rtn 
+
+le_att_same_type:
+5a8c 6808c45e fetcht 1 ,mem_le_search_att_type_length 
+5a8d da20445f arg mem_le_search_att_type ,rega 
+
+le_att_check_same_common:
+5a8e 680084a2 fetch 1 ,mem_le_cur_uuid_length 
+5a8f 1fe27200 copy pdata ,loopcnt 
+5a90 98467c00 isub temp ,null 
+5a91 24628000 nrtn zero 
+5a92 da4004a3 arg mem_le_cur_uuid ,regb 
+5a93 20207f88 branch string_compare 
+
+le_att_same_uuid:
+5a94 6808c471 fetcht 1 ,mem_le_search_uuid_length 
+5a95 da204472 arg mem_le_search_uuid ,rega 
+5a96 20205a8e branch le_att_check_same_common 
+
+le_store_att_record:
+5a97 680084b3 fetch 1 ,mem_le_curr_att_len 
+5a98 60008101 store 1 ,mem_tmp_buffer 
+5a99 1fe27200 copy pdata ,loopcnt 
+5a9a 20407e9f call get_contr 
+5a9b 20207ef4 branch memcpy_fast 
+
+le_write_att_record:
+5a9c 20407e9c call get_contw 
+5a9d 6801049e fetch 2 ,mem_le_cur_handle_start 
+5a9e e0a10000 istore 2 ,contw 
+5a9f 680104a0 fetch 2 ,mem_le_cur_handle_end 
+5aa0 e0a10000 istore 2 ,contw 
+
+le_write_att_record_common:
+5aa1 68008101 fetch 1 ,mem_tmp_buffer 
+5aa2 1fe27200 copy pdata ,loopcnt 
+5aa3 20407ef4 call memcpy_fast 
+5aa4 20207ea2 branch store_contw 
+
+le_send_auto_len_by_mem:
+5aa5 20407e9c call get_contw 
+5aa6 2040588a call le_fifo_get_last_att_ptr 
+5aa7 18a27e00 copy contw ,pdata 
+5aa8 98c62200 isub contr ,rega 
+5aa9 2040588d call le_fifo_get_last_l2cap_ptr 
+5aaa 1a227e00 copy rega ,pdata 
+5aab e0c10000 istore 2 ,contr 
+5aac 1a20a204 increase 4 ,rega 
+5aad 20405879 call le_fifo_get_last_tx_ptr 
+5aae 1a227e00 copy rega ,pdata 
+5aaf e0c08000 istore 1 ,contr 
+5ab0 20600000 rtn 
+
+le_get_search_handle_start_end_common:
+5ab1 1fecfe00 rshift8 pdata ,pdata 
+5ab2 6001445a store 2 ,mem_le_search_handle_start 
+5ab3 e8c10000 ifetch 2 ,contr 
+5ab4 6001445c store 2 ,mem_le_search_handle_end 
+5ab5 20600000 rtn 
+
+le_parse_signaling:
+5ab6 e8c08000 ifetch 1 ,contr 
+5ab7 e8c88000 ifetcht 1 ,contr 
+5ab8 e8c90000 ifetcht 2 ,contr 
+5ab9 c009dabb beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
+5aba 20600000 rtn 
+
+le_l2cap_parse_conn_parameter_update_rsp:
+5abb e8c10000 ifetch 2 ,contr 
+5abc 60014509 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+5abd 700a9940 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
+5abe 20207d86 branch ui_ipc_send_event 
+
+le_l2cap_tx_update_req:
+5abf da20000c arg 0x0c ,rega 
+5ac0 da600012 arg l2cap_connection_parameter_update_request ,regc 
+5ac1 20405ac7 call le_fifo_malloc_tx_l2cap_signaling 
+5ac2 58000008 setarg 0x08 
+5ac3 e0a10000 istore 2 ,contw 
+5ac4 68044496 fetch 8 ,mem_le_interval_min 
+5ac5 e0a40000 istore 8 ,contw 
+5ac6 20600000 rtn 
+
+le_fifo_malloc_tx_l2cap_signaling:
+5ac7 20405acf call le_l2cap_update_signaling_identifier 
+5ac8 da400005 arg le_l2cap_cid_signal ,regb 
+5ac9 20405847 call le_fifo_malloc_tx_l2cap 
+5aca 1a627e00 copy regc ,pdata 
+5acb e0a08000 istore 1 ,contw 
+5acc 6800c508 fetch 1 ,mem_le_signaling_identifier 
+5acd e0a08000 istore 1 ,contw 
+5ace 20600000 rtn 
+
+le_l2cap_update_signaling_identifier:
+5acf 6800c508 fetch 1 ,mem_le_signaling_identifier 
+5ad0 1fe0fe01 pincrease 1 
+5ad1 6000c508 store 1 ,mem_le_signaling_identifier 
+5ad2 c1800000 rtnne 0 
+
+le_l2cap_reset_signaling_identifier:
+5ad3 70450801 jam 1 ,mem_le_signaling_identifier 
+5ad4 20600000 rtn 
+
+le_pairing_mode_init:
+5ad5 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5ad6 c0005ae4 beq le_pairing_mode_none ,le_set_no_pairing 
+5ad7 c000dae7 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
+5ad8 c0015ae9 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
+5ad9 c040dadd beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
+5ada c0415adf beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
+5adb c041dae2 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
+5adc 20600000 rtn 
+
+le_set_pairing_mode_secure_justwork:
+5add 7044560d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+5ade 20205ae5 branch le_set_noinputnooutput 
+
+le_set_pairing_mode_secure_numeric:
+5adf 7044560d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+5ae0 70445401 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+5ae1 20600000 rtn 
+
+le_set_pairing_mode_secure_passkey:
+5ae2 7044560d jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+5ae3 20205aea branch le_set_displayonly 
+
+le_set_no_pairing:
+5ae4 70445600 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+
+le_set_noinputnooutput:
+5ae5 70445403 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+5ae6 20600000 rtn 
+
+le_set_pairing_mode_lagacy_just_work:
+5ae7 70445605 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+5ae8 20205ae5 branch le_set_noinputnooutput 
+
+le_set_pairing_mode_lagacy_passkey:
+5ae9 70445605 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+
+le_set_displayonly:
+5aea 70445400 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+5aeb 20600000 rtn 
+
+le_secure_connection_enable:
+5aec 6800c456 fetch 1 ,mem_le_pres_auth 
+5aed 79207e03 set1 le_auth_secure_connection_pairing_bit ,pdata 
+5aee 6000c456 store 1 ,mem_le_pres_auth 
+5aef 20600000 rtn 
+
+le_secure_connection_disable:
+5af0 6800c456 fetch 1 ,mem_le_pres_auth 
+5af1 793ffe03 set0 le_auth_secure_connection_pairing_bit ,pdata 
+5af2 6000c456 store 1 ,mem_le_pres_auth 
+5af3 20600000 rtn 
+
+le_parse_smp:
+5af4 e8c08000 ifetch 1 ,contr 
+5af5 c000db09 beq smp_pairing_request ,le_parse_smp_pairing_request 
+5af6 c001db30 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
+5af7 c0025b4d beq smp_pairing_random ,le_parse_smp_pairing_random 
+5af8 c002db5a beq smp_pairing_failed ,le_parse_smp_pairing_failed 
+5af9 c0035b80 beq smp_encryption_information ,le_parse_smp_encryption_information 
+5afa c003dbc4 beq smp_master_identification ,le_parse_smp_master_identification 
+5afb c0045baf beq smp_identity_information ,le_parse_smp_identity_information 
+5afc c004dbc0 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
+5afd c0055bc4 beq smp_signing_information ,le_parse_smp_signing_information 
+5afe c005dbc4 beq smp_security_request ,le_parse_smp_security_request 
+5aff c0065bc5 beq smp_pairing_public_key ,le_parse_smp_public_key 
+5b00 c006dbca beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
+5b01 20600000 rtn 
+
+le_send_smp_security_request:
+5b02 18002202 force 2 ,rega 
+5b03 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b04 5800000b setarg smp_security_request 
+5b05 e0a08000 istore 1 ,contw 
+5b06 6800c456 fetch 1 ,mem_le_pres_auth 
+5b07 e0a08000 istore 1 ,contw 
+5b08 20600000 rtn 
+
+le_parse_smp_pairing_request:
+5b09 6000c44c store 1 ,mem_le_preq 
+5b0a e8c30000 ifetch 6 ,contr 
+5b0b e0a30000 istore 6 ,contw 
+5b0c 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b0d c0005b5f beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
+5b0e 20405b2b call le_send_smp_pairing_response 
+5b0f 20405b26 call le_check_master_support_secure_connect 
+5b10 7044c403 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
+5b11 6800c44d fetch 1 ,mem_le_preq_iocap 
+5b12 c0005b18 beq flag_iocap_displayonly ,le_set_tk_0 
+5b13 c000db18 beq flag_iocap_displayyesno ,le_set_tk_0 
+5b14 c001db18 beq flag_iocap_noinputnooutput ,le_set_tk_0 
+5b15 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b16 c0015b1b beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
+5b17 c1418000 rtneq le_pairing_mode_secure_connect_passkey 
+
+le_set_tk_0:
+5b18 dfe00000 arg 0 ,pdata 
+5b19 600244c7 store 4 ,mem_le_tk 
+5b1a 20600000 rtn 
+
+le_parse_smp_pairing_req_passkey:
+5b1b 6800c4e9 fetch 1 ,mem_le_configuration 
+5b1c c2805b24 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
+
+le_genernate_tk:
+5b1d da2044c7 arg mem_le_tk ,rega 
+5b1e 1a220a00 copy rega ,contw 
+5b1f df200003 arg 3 ,loopcnt 
+5b20 2040630d call generate_random_loop 
+5b21 680144c9 fetch 2 ,mem_le_tk + 2 
+5b22 1fe17e07 and_into 0x7 ,pdata 
+5b23 600144c9 store 2 ,mem_le_tk + 2 
+
+le_parse_smp_pairing_req_fixed_passkey:
+5b24 700a9934 jam bt_evt_le_tk_generate ,mem_fifo_temp 
+5b25 20207d86 branch ui_ipc_send_event 
+
+le_check_master_support_secure_connect:
+5b26 6800c44f fetch 1 ,mem_le_preq_auth 
+5b27 c3818000 rtnbit1 le_auth_secure_connection_pairing_bit 
+5b28 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b29 c4038000 rtnbit0 le_pairing_mode_secure_connect_bit 
+5b2a 20203402 branch app_ble_disconnect 
+
+le_send_smp_pairing_response:
+5b2b 18002207 force 7 ,rega 
+5b2c 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b2d 6803c453 fetch 7 ,mem_le_pres 
+5b2e e0a38000 istore 7 ,contw 
+5b2f 20600000 rtn 
+
+le_parse_smp_pairing_confirm:
+5b30 18c22200 copy contr ,rega 
+5b31 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b32 c041db37 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
+5b33 1a220c00 copy rega ,contr 
+5b34 d8a0442a arg mem_le_rconfirm ,contw 
+5b35 20407ebf call memcpy16 
+5b36 20205b3d branch le_send_smp_pairing_confirm 
+
+le_parse_smp_pairing_confirm_secure_passkey:
+5b37 1a220c00 copy rega ,contr 
+5b38 d8a0442a arg mem_le_rconfirm ,contw 
+5b39 20407ebf call memcpy16 
+5b3a 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5b3b 7044c108 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
+5b3c 20600000 rtn 
+
+le_send_smp_pairing_confirm:
+5b3d 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b3e c283db45 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
+5b3f 2040739c call generate_confirm 
+5b40 18002211 force 17 ,rega 
+5b41 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b42 58000003 setarg smp_pairing_confirm 
+5b43 e0a08000 istore 1 ,contw 
+5b44 20207497 branch store_aes_result 
+
+le_send_smp_pairing_confirm_sc:
+5b45 d8a0443a arg mem_le_srand ,contw 
+5b46 2040630c call generate_random 
+5b47 204071c5 call function_f4_cb 
+5b48 18002211 force 17 ,rega 
+5b49 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b4a 58000003 setarg smp_pairing_confirm 
+5b4b e0a08000 istore 1 ,contw 
+5b4c 20207201 branch load_inverse_result 
+
+le_parse_smp_pairing_random:
+5b4d 18c22200 copy contr ,rega 
+5b4e 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b4f c283db61 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
+5b50 1a220c00 copy rega ,contr 
+5b51 20407394 call authenticate_rconfirm 
+5b52 2022db75 branch le_parse_smp_pairing_random_success ,zero 
+
+le_send_pairing_confirm_value_failed:
+5b53 70047b04 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
+
+le_send_pairing_failed:
+5b54 18002202 force 2 ,rega 
+5b55 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b56 58000005 setarg smp_pairing_failed 
+5b57 e0a08000 istore 1 ,contw 
+5b58 6800847b fetch 1 ,mem_le_ll_pairing_fail_reason 
+5b59 e0a08000 istore 1 ,contw 
+
+le_parse_smp_pairing_failed:
+5b5a 18000e0a force smp_pairing_timer ,queue 
+5b5b 20407f07 call timer_stop 
+5b5c 7044c400 jam flag_le_pairing_null ,mem_le_pairing_state 
+5b5d 700a9930 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
+5b5e 20207d86 branch ui_ipc_send_event 
+
+le_smp_pairing_fail_reason_not_support_pairing:
+5b5f 70047b05 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
+5b60 20205b54 branch le_send_pairing_failed 
+
+le_parse_smp_pairing_random_sc:
+5b61 d8a0042f arg mem_le_mrand ,contw 
+5b62 1a220c00 copy rega ,contr 
+5b63 20407ebf call memcpy16 
+5b64 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b65 c041db6c beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
+5b66 2040714f call function_g2 
+5b67 20405b7a call le_send_smp_pairing_random 
+5b68 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5b69 c1c10000 rtnne le_pairing_mode_secure_connect_numeric 
+5b6a 700a993b jam bt_evt_le_gkey_generate ,mem_fifo_temp 
+5b6b 20207d86 branch ui_ipc_send_event 
+
+le_parse_smp_pairing_random_sc_passkey:
+5b6c 204071ba call function_f4_ca 
+5b6d d8a00af2 arg mem_aes_cmac_temp ,contw 
+5b6e 20407201 call load_inverse_result 
+5b6f da200af2 arg mem_aes_cmac_temp ,rega 
+5b70 da40442a arg mem_le_rconfirm ,regb 
+5b71 df200010 arg 16 ,loopcnt 
+5b72 20407f88 call string_compare 
+5b73 2422db53 nbranch le_send_pairing_confirm_value_failed ,zero 
+5b74 20205b7a branch le_send_smp_pairing_random 
+
+le_parse_smp_pairing_random_success:
+5b75 20407390 call generate_stk 
+5b76 700a9931 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+5b77 20407d86 call ui_ipc_send_event 
+5b78 70442901 jam 1 ,mem_ltk_exists 
+5b79 7044c405 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+
+le_send_smp_pairing_random:
+5b7a 18002211 force 17 ,rega 
+5b7b 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b7c 58000004 setarg smp_pairing_random 
+5b7d e0a08000 istore 1 ,contw 
+5b7e d8c0443a arg mem_le_srand ,contr 
+5b7f 20207ebf branch memcpy16 
+
+le_parse_smp_encryption_information:
+5b80 d8a0041f arg mem_le_peer_ltk ,contw 
+5b81 20207ebf branch memcpy16 
+
+le_send_smp_encryption_information:
+5b82 18002211 force 17 ,rega 
+5b83 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b84 58000006 setarg smp_encryption_information 
+5b85 e0a08000 istore 1 ,contw 
+5b86 6800c4e9 fetch 1 ,mem_le_configuration 
+5b87 c280db8a bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
+5b88 d8c04419 arg mem_le_ltk ,contr 
+5b89 20207ebf branch memcpy16 
+
+le_send_fixed_ltk:
+5b8a d8c044ea arg mem_le_fixed_ltk ,contr 
+5b8b 20207ebf branch memcpy16 
+
+le_send_smp_master_identification:
+5b8c d8a044cb arg mem_le_ediv ,contw 
+5b8d 1800720a force 10 ,loopcnt 
+5b8e 2040630d call generate_random_loop 
+5b8f 1800220b force 11 ,rega 
+5b90 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b91 58000007 setarg smp_master_identification 
+5b92 e0a08000 istore 1 ,contw 
+5b93 680144cb fetch 2 ,mem_le_ediv 
+5b94 e0a10000 istore 2 ,contw 
+5b95 680444cd fetch 8 ,mem_le_rand 
+5b96 e0a40000 istore 8 ,contw 
+5b97 20600000 rtn 
+
+le_send_smp_identity_information:
+5b98 18002211 force 17 ,rega 
+5b99 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5b9a 58000008 setarg smp_identity_information 
+5b9b e0a08000 istore 1 ,contw 
+5b9c 58000000 setarg 0 
+5b9d e0a40000 istore 8 ,contw 
+5b9e e0a40000 istore 8 ,contw 
+5b9f 20600000 rtn 
+
+le_send_smp_identity_address_information:
+5ba0 18002208 force 8 ,rega 
+5ba1 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5ba2 58000009 setarg smp_identity_address_information 
+5ba3 e0a08000 istore 1 ,contw 
+5ba4 6800c495 fetch 1 ,mem_le_conn_own_addr_type 
+5ba5 e0a08000 istore 1 ,contw 
+5ba6 680344a0 fetch 6 ,mem_le_lap 
+5ba7 e0a30000 istore 6 ,contw 
+5ba8 20600000 rtn 
+
+le_send_pairing_fail_unspecified_reason:
+5ba9 70047b08 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
+5baa 20205b54 branch le_send_pairing_failed 
+
+le_check_init_key_distribution:
+5bab 6800c458 fetch 1 ,mem_le_pres_init_key_distribution 
+5bac 6808c458 fetcht 1 ,mem_le_pres_init_key_distribution 
+5bad 98417e00 iand temp ,pdata 
+5bae 20600000 rtn 
+
+le_parse_smp_identity_information:
+5baf d8a044d5 arg mem_le_irk ,contw 
+5bb0 20407ebf call memcpy16 
+5bb1 20405bab call le_check_init_key_distribution 
+5bb2 2fec0001 isolate0 le_initator_irk_bit ,pdata 
+5bb3 2020dba9 branch le_send_pairing_fail_unspecified_reason ,true 
+5bb4 6800c092 fetch 1 ,mem_device_option 
+5bb5 c1850000 rtnne dvc_op_module 
+5bb6 20405bb9 call le_check_master_addr_type 
+5bb7 24740000 nrtn user 
+5bb8 20203410 branch app_ble_store_reconn_info 
+
+le_check_master_addr_type:
+5bb9 20407fe9 call disable_user 
+5bba 6800c48e fetch 1 ,mem_le_conn_peer_addr_type 
+5bbb c1000000 rtneq master_public_addr 
+5bbc 68008454 fetch 1 ,mem_le_plap + 5 
+5bbd 2fe180c0 compare 0xc0 ,pdata ,0xc0 
+5bbe 20608000 rtn true 
+5bbf 20207fe7 branch enable_user 
+
+le_parse_smp_identity_address_information:
+5bc0 20405bab call le_check_init_key_distribution 
+5bc1 2fec0001 isolate0 le_initator_irk_bit ,pdata 
+5bc2 2020dba9 branch le_send_pairing_fail_unspecified_reason ,true 
+5bc3 20600000 rtn 
+
+le_parse_smp_master_identification:
+
+le_parse_smp_signing_information:
+
+le_parse_smp_security_request:
+5bc4 20600000 rtn 
+
+le_parse_smp_public_key:
+5bc5 d8a009be arg mem_le_pubkey_remote_x_256 ,contw 
+5bc6 20407eb3 call memcpy64 
+5bc7 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5bc8 7044c101 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
+5bc9 20600000 rtn 
+
+le_parse_smp_dhkey_check:
+5bca d8a00a6e arg mem_sp_confirm_remote ,contw 
+5bcb 20407ebf call memcpy16 
+5bcc 7044c106 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
+5bcd 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5bce 20600000 rtn 
+
+le_send_smp_pairing_public_key:
+5bcf 18002241 force 65 ,rega 
+5bd0 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5bd1 5800000c setarg smp_pairing_public_key 
+5bd2 e0a08000 istore 1 ,contw 
+5bd3 d8c045d2 arg mem_le_pubkey_local_x_256 ,contr 
+5bd4 20207eb3 branch memcpy64 
+
+le_send_smp_pairing_dhkey_check:
+5bd5 20407166 call function_f6_eb 
+5bd6 18002211 force 17 ,rega 
+5bd7 20405c62 call le_fifo_malloc_tx_l2cap_smp 
+5bd8 5800000d setarg smp_pairing_dhkey_check 
+5bd9 e0a08000 istore 1 ,contw 
+5bda 20207201 branch load_inverse_result 
+
+le_check_paring_time:
+5bdb 6800c4c4 fetch 1 ,mem_le_pairing_state 
+5bdc c17f8000 rtneq flag_le_pairing_end 
+5bdd d8400003 arg flag_le_pairing_rcv_pairing_req ,temp 
+5bde 98467c00 isub temp ,null 
+5bdf 24610000 nrtn positive 
+5be0 d8e0000a arg smp_pairing_timer ,queue 
+5be1 20407f16 call timer_check 
+5be2 247a0000 nrtn blank 
+5be3 20205ba9 branch le_send_pairing_fail_unspecified_reason 
+
+le_pairing_sm:
+5be4 473c402f bpatchx patch2f_0 ,mem_patch2f 
+5be5 6800c4c4 fetch 1 ,mem_le_pairing_state 
+5be6 c0005bef beq flag_le_pairing_null ,le_pairing_sm_null 
+5be7 c000dbf5 beq flag_le_pairing_start ,le_pairing_sm_start 
+5be8 c0015bef beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
+5be9 c001dbf7 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
+5bea c002dbfb beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
+5beb c003dc07 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
+5bec c0045c09 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
+5bed c004dc10 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
+5bee 20600000 rtn 
+
+le_pairing_sm_null:
+
+le_pairing_sm_send_sec_req:
+5bef 6800c4c5 fetch 1 ,mem_le_enc_state 
+5bf0 c1820000 rtnne flag_le_send_start_enc_rsp 
+5bf1 7044c5ff jam flag_le_enc_end ,mem_le_enc_state 
+5bf2 7044c4ff jam flag_le_pairing_end ,mem_le_pairing_state 
+5bf3 700a993f jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
+5bf4 20207d86 branch ui_ipc_send_event 
+
+le_pairing_sm_start:
+5bf5 7044c402 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
+5bf6 20205b02 branch le_send_smp_security_request 
+
+le_pairing_sm_rcv_pairing_req:
+5bf7 7044c404 jam flag_le_pairing_auth ,mem_le_pairing_state 
+5bf8 58017700 setarg timer_smp_pairing_timeout 
+5bf9 d8e0000a arg smp_pairing_timer ,queue 
+5bfa 20207f08 branch timer_init 
+
+le_pairing_sm_after_auth:
+5bfb 6800c4c5 fetch 1 ,mem_le_enc_state 
+5bfc c0025bfe beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
+5bfd 20600000 rtn 
+
+le_pairing_sm_after_auth_start_enc:
+5bfe 7044c407 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
+5bff 700a9929 jam bt_evt_le_enc_info ,mem_fifo_temp 
+5c00 20407d86 call ui_ipc_send_event 
+5c01 20405b82 call le_send_smp_encryption_information 
+5c02 6800c092 fetch 1 ,mem_device_option 
+5c03 c1850000 rtnne dvc_op_module 
+5c04 20405bb9 call le_check_master_addr_type 
+5c05 20740000 rtn user 
+5c06 20203410 branch app_ble_store_reconn_info 
+
+le_pairng_sm_send_enc_information:
+5c07 7044c408 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
+5c08 20205b8c branch le_send_smp_master_identification 
+
+le_pairng_sm_send_master_indentification:
+5c09 6800c452 fetch 1 ,mem_le_preq_resp_key_distribution 
+5c0a 6808c459 fetcht 1 ,mem_le_pres_resp_key_distribution 
+5c0b 98417e00 iand temp ,pdata 
+5c0c 2fec0001 isolate0 le_initator_irk_bit ,pdata 
+5c0d 2020dc12 branch le_parse_start_enc_rsp_after_auth_end ,true 
+5c0e 7044c409 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
+5c0f 20205b98 branch le_send_smp_identity_information 
+
+le_pairng_sm_send_indentity_information:
+5c10 20405ba0 call le_send_smp_identity_address_information 
+5c11 20205c12 branch le_parse_start_enc_rsp_after_auth_end 
+
+le_parse_start_enc_rsp_after_auth_end:
+5c12 18000e0a force smp_pairing_timer ,queue 
+5c13 20407f07 call timer_stop 
+5c14 7044c5ff jam flag_le_enc_end ,mem_le_enc_state 
+5c15 7044c4ff jam flag_le_pairing_end ,mem_le_pairing_state 
+5c16 700a993e jam bt_evt_le_pairing_complete ,mem_fifo_temp 
+5c17 20207d86 branch ui_ipc_send_event 
+
+le_secure_connect_sm:
+5c18 473cc02f bpatchx patch2f_1 ,mem_patch2f 
+5c19 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5c1a c4038000 rtnbit0 le_pairing_mode_secure_connect_bit 
+5c1b 6800c4bf fetch 1 ,mem_le_secure_connect_flag 
+5c1c c1810000 rtnne le_sp_flag_commit_256 
+5c1d 7044bf00 jam sp_flag_standby ,mem_le_secure_connect_flag 
+5c1e 6800c4c1 fetch 1 ,mem_le_secure_connect_state 
+5c1f c000dc58 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
+5c20 c0015c5f beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
+5c21 c001dc52 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
+5c22 c0035c39 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
+5c23 c003dc30 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
+5c24 c0045c26 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
+5c25 20600000 rtn 
+
+le_sc_sm_passkey_wait_confirm:
+5c26 6800c663 fetch 1 ,mem_authentication_passkey_times 
+5c27 1fe20e00 copy pdata ,queue 
+5c28 1fe0fe01 increase 1 ,pdata 
+5c29 6000c663 store 1 ,mem_authentication_passkey_times 
+5c2a 680244c7 fetch 4 ,mem_le_tk 
+5c2b afefffff qisolate1 pdata 
+5c2c 58000080 setarg 0x80 
+5c2d 7920fe00 setflag true ,0 ,pdata 
+5c2e 6000c664 store 1 ,mem_passkey_1bit 
+5c2f 20205c55 branch le_sc_sm_ready_send_pairing_confirm 
+
+le_sc_sm_wait_confirm_gkey:
+5c30 6800c4c2 fetch 1 ,mem_le_sc_confirm_gkey_flag 
+5c31 7044c200 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
+5c32 c000dc35 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
+5c33 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5c34 20600000 rtn 
+
+le_sc_confirm_gkey_ok:
+5c35 700a9931 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+5c36 20407d86 call ui_ipc_send_event 
+5c37 7044c405 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+5c38 20205bd5 branch le_send_smp_pairing_dhkey_check 
+
+le_sc_sm_receive_dhkey:
+5c39 680089b9 fetch 1 ,mem_sp_dhkey_invalid 
+5c3a c001dc3d beq sp_key_valid_256 ,le_dhkey_ready 
+5c3b 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5c3c 20600000 rtn 
+
+le_dhkey_ready:
+5c3d 2040718d call function_f5 
+5c3e 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5c3f c041dc41 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
+5c40 20405b18 call le_set_tk_0 
+
+le_dhkey_ready_common:
+5c41 2040717a call function_f6_ea 
+5c42 da200af2 arg mem_aes_cmac_temp ,rega 
+5c43 da400a6e arg mem_sp_confirm_remote ,regb 
+5c44 df200010 arg 16 ,loopcnt 
+5c45 20407f88 call string_compare 
+5c46 2022dc49 branch le_dhkey_check_ok ,zero 
+
+le_dhkey_check_fail:
+5c47 70047b0b jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
+5c48 20205b54 branch le_send_pairing_failed 
+
+le_dhkey_check_ok:
+5c49 20407595 call sp_calc_check_publickey_256 
+5c4a 2422dc47 nbranch le_dhkey_check_fail ,zero 
+5c4b 70442901 jam 1 ,mem_ltk_exists 
+5c4c 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5c4d c040dc35 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
+5c4e c041dc35 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
+5c4f 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5c50 7044c107 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
+5c51 20600000 rtn 
+
+le_sc_sm_send_public_key:
+5c52 6800c4c6 fetch 1 ,mem_le_pairing_mode 
+5c53 c041dc56 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
+5c54 70466400 jam 0 ,mem_passkey_1bit 
+
+le_sc_sm_ready_send_pairing_confirm:
+5c55 20205b3d branch le_send_smp_pairing_confirm 
+
+le_sc_sm_send_public_key_passkey:
+5c56 70466300 jam 0 ,mem_authentication_passkey_times 
+5c57 20205b1b branch le_parse_smp_pairing_req_passkey 
+
+le_sc_sm_receive_public_key:
+5c58 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5c59 6800c4c3 fetch 1 ,mem_le_sc_local_key_invalid 
+5c5a c001dc5c beq sp_key_valid_256 ,le_public_key_ready 
+5c5b 20600000 rtn 
+
+le_public_key_ready:
+5c5c 7044c102 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
+5c5d 7009b900 jam sp_key_invalid ,mem_sp_dhkey_invalid 
+5c5e 20207a99 branch sp_dhkey_calc_256 
+
+le_sc_sm_wait_send_public_key:
+5c5f 7044bf02 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+5c60 7044c103 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
+5c61 20205bcf branch le_send_smp_pairing_public_key 
+
+le_fifo_malloc_tx_l2cap_smp:
+5c62 18002406 force le_l2cap_cid_smp ,regb 
+5c63 20205847 branch le_fifo_malloc_tx_l2cap 
+
+le_parse_ll:
+5c64 680082db fetch 1 ,mem_le_rxbuf + 2 
+5c65 c0005c7b beq ll_connection_update_req ,le_parse_connection_update_req 
+5c66 c000dc83 beq ll_channel_map_req ,le_parse_channel_map_req 
+5c67 c0015c8e beq ll_terminate_ind ,le_parse_terminate_ind 
+5c68 c001dcaa beq ll_enc_req ,le_parse_enc_req 
+5c69 c0025ce1 beq ll_enc_rsp ,le_parse_enc_rsp 
+5c6a c002dce6 beq ll_start_enc_req ,le_parse_start_enc_req 
+5c6b c0035cea beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
+5c6c c003dcf5 beq ll_unknown_rsp ,le_parse_unknown_rsp 
+5c6d c0045c99 beq ll_feature_req ,le_parse_feature_req 
+5c6e c004dcf5 beq ll_feature_rsp ,le_parse_feature_rsp 
+5c6f c0055cef beq ll_pause_enc_req ,le_parse_pause_enc_req 
+5c70 c005dcf5 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
+5c71 c0065c9f beq ll_version_ind ,le_parse_version_ind 
+5c72 c006dcf5 beq ll_reject_ind ,le_parse_reject_ind 
+5c73 c0095ca6 beq ll_ping_req ,le_parse_ping_req 
+5c74 c009dcf5 beq ll_ping_rsp ,le_parse_ping_rsp 
+5c75 da200002 arg 2 ,rega 
+5c76 da400007 arg ll_unknown_rsp ,regb 
+5c77 20405842 call le_fifo_malloc_tx_ll 
+5c78 680082db fetch 1 ,mem_le_rxbuf + 2 
+5c79 e0a08000 istore 1 ,contw 
+5c7a 20600000 rtn 
+
+le_parse_connection_update_req:
+5c7b e8c48000 ifetch 9 ,contr 
+5c7c 6004c3d3 store 9 ,mem_le_new_param 
+5c7d e8c10000 ifetch 2 ,contr 
+5c7e 6001045f store 2 ,mem_le_instant 
+5c7f 6800843f fetch 1 ,mem_le_state 
+5c80 79207e05 set1 lestate_update_param ,pdata 
+5c81 6000843f store 1 ,mem_le_state 
+5c82 20600000 rtn 
+
+le_parse_channel_map_req:
+5c83 e8c28000 ifetch 5 ,contr 
+5c84 6002c3ce store 5 ,mem_le_new_map 
+5c85 e8c10000 ifetch 2 ,contr 
+5c86 6001045f store 2 ,mem_le_instant 
+5c87 68090459 fetcht 2 ,mem_le_event_count 
+5c88 98467c00 isub temp ,null 
+5c89 24215c8e nbranch le_parse_terminate_ind ,positive 
+5c8a 6800843f fetch 1 ,mem_le_state 
+5c8b 79207e06 set1 lestate_update_map ,pdata 
+5c8c 6000843f store 1 ,mem_le_state 
+5c8d 20600000 rtn 
+
+le_parse_terminate_ind:
+5c8e 58000014 setarg 20 
+5c8f 6001046d store 2 ,mem_le_superto 
+5c90 600144ba store 2 ,mem_le_init_superto 
+5c91 20600000 rtn 
+
+le_send_terminate_ind_user_terminated:
+5c92 da600013 arg error_remote_user_terminated_connection ,regc 
+
+le_send_terminate_ind:
+5c93 da200002 arg 2 ,rega 
+5c94 da400002 arg ll_terminate_ind ,regb 
+5c95 20405842 call le_fifo_malloc_tx_ll 
+5c96 1a627e00 copy regc ,pdata 
+5c97 e0a08000 istore 1 ,contw 
+5c98 20600000 rtn 
+
+le_parse_feature_req:
+
+le_send_feature_rsp:
+5c99 da200009 arg 9 ,rega 
+5c9a da400009 arg ll_feature_rsp ,regb 
+5c9b 20405842 call le_fifo_malloc_tx_ll 
+5c9c 58000001 setarg param_le_features 
+5c9d e0a40000 istore 8 ,contw 
+5c9e 20600000 rtn 
+
+le_parse_version_ind:
+5c9f 20748000 rtn master 
+
+le_send_version_ind:
+5ca0 da200006 arg 6 ,rega 
+5ca1 da40000c arg ll_version_ind ,regb 
+5ca2 20405842 call le_fifo_malloc_tx_ll 
+5ca3 6802c510 fetch 5 ,mem_lmp_version 
+5ca4 e0a28000 istore 5 ,contw 
+5ca5 20600000 rtn 
+
+le_parse_ping_req:
+5ca6 da400013 arg ll_ping_rsp ,regb 
+5ca7 20205ca8 branch le_send_ll_one_lenth 
+
+le_send_ll_one_lenth:
+5ca8 da200001 arg 1 ,rega 
+5ca9 20205842 branch le_fifo_malloc_tx_ll 
+
+le_parse_enc_req:
+5caa e8c40000 ifetch 8 ,contr 
+5cab 600444cd store 8 ,mem_le_rand 
+5cac e8c10000 ifetch 2 ,contr 
+5cad 600144cb store 2 ,mem_le_ediv 
+5cae e8c40000 ifetch 8 ,contr 
+5caf 600444aa store 8 ,mem_le_skdm 
+5cb0 e8c20000 ifetch 4 ,contr 
+5cb1 60024411 store 4 ,mem_le_ivm 
+5cb2 20405ccf call le_send_enc_rsp 
+5cb3 473d402f bpatchx patch2f_2 ,mem_patch2f 
+5cb4 6800c4c4 fetch 1 ,mem_le_pairing_state 
+5cb5 c002dcbc beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
+5cb6 6800c4e9 fetch 1 ,mem_le_configuration 
+5cb7 c280dcbf bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
+5cb8 6800c217 fetch 1 ,mem_nv_data_number 
+5cb9 245a67be ncall load_device_list_mode_4 ,blank 
+5cba 6800c429 fetch 1 ,mem_ltk_exists 
+5cbb c0005cc4 beq 0 ,le_ltk_lost 
+
+le_parse_enc_req_after_auth:
+5cbc 7044c501 jam flag_le_rcv_enc_start ,mem_le_enc_state 
+5cbd 20405cdd call le_send_start_enc_req 
+5cbe 202073a2 branch generate_sk 
+
+le_parse_enc_req_fixed_ltk:
+5cbf 70442901 jam 1 ,mem_ltk_exists 
+5cc0 d8c044ea arg mem_le_fixed_ltk ,contr 
+5cc1 d8a04419 arg mem_le_ltk ,contw 
+5cc2 20407ebf call memcpy16 
+5cc3 20205cbc branch le_parse_enc_req_after_auth 
+
+le_ltk_lost:
+5cc4 473dc02f bpatchx patch2f_3 ,mem_patch2f 
+5cc5 7044c500 jam flag_le_enc_null ,mem_le_enc_state 
+5cc6 7044c400 jam flag_le_enc_null ,mem_le_pairing_state 
+5cc7 700a9941 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
+5cc8 20207d86 branch ui_ipc_send_event 
+
+le_send_reject_ind:
+5cc9 da200002 arg 2 ,rega 
+5cca da40000d arg ll_reject_ind ,regb 
+5ccb 20405842 call le_fifo_malloc_tx_ll 
+5ccc 58000006 setarg le_err_pin_or_key_missing 
+5ccd e0a08000 istore 1 ,contw 
+5cce 20600000 rtn 
+
+le_send_enc_rsp:
+5ccf d8a044b2 arg mem_le_skds ,contw 
+5cd0 18007208 force 8 ,loopcnt 
+5cd1 2040630d call generate_random_loop 
+5cd2 d8a04415 arg mem_le_ivs ,contw 
+5cd3 18007204 force 4 ,loopcnt 
+5cd4 2040630d call generate_random_loop 
+5cd5 da20000d arg 13 ,rega 
+5cd6 da400004 arg ll_enc_rsp ,regb 
+5cd7 20405842 call le_fifo_malloc_tx_ll 
+5cd8 680444b2 fetch 8 ,mem_le_skds 
+5cd9 e0a40000 istore 8 ,contw 
+5cda 68024415 fetch 4 ,mem_le_ivs 
+5cdb e0a20000 istore 4 ,contw 
+5cdc 20600000 rtn 
+
+le_send_start_enc_req:
+5cdd da400005 arg ll_start_enc_req ,regb 
+5cde 20205ca8 branch le_send_ll_one_lenth 
+
+le_send_start_enc_rsp:
+5cdf da400006 arg ll_start_enc_rsp ,regb 
+5ce0 20205ca8 branch le_send_ll_one_lenth 
+
+le_parse_enc_rsp:
+5ce1 e8c40000 ifetch 8 ,contr 
+5ce2 600444b2 store 8 ,mem_le_skds 
+5ce3 e8c20000 ifetch 4 ,contr 
+5ce4 60024415 store 4 ,mem_le_ivs 
+5ce5 202073a2 branch generate_sk 
+
+le_parse_start_enc_req:
+5ce6 6800843f fetch 1 ,mem_le_state 
+5ce7 79207e04 set1 lestate_encryption ,pdata 
+5ce8 6000843f store 1 ,mem_le_state 
+5ce9 20600000 rtn 
+
+le_parse_start_enc_rsp:
+5cea 20748000 rtn master 
+5ceb 700a9932 jam bt_evt_le_start_enc ,mem_fifo_temp 
+5cec 20407d86 call ui_ipc_send_event 
+5ced 7044c504 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
+5cee 20205cdf branch le_send_start_enc_rsp 
+
+le_parse_pause_enc_req:
+5cef 7044c502 jam flag_le_enc_pause ,mem_le_enc_state 
+5cf0 20405cf3 call le_send_pause_enc_rsp 
+5cf1 700a9933 jam bt_evt_le_pause_enc ,mem_fifo_temp 
+5cf2 20207d86 branch ui_ipc_send_event 
+
+le_send_pause_enc_rsp:
+5cf3 da40000b arg ll_pause_enc_rsp ,regb 
+5cf4 20205ca8 branch le_send_ll_one_lenth 
+
+le_parse_feature_rsp:
+
+le_parse_unknown_rsp:
+
+le_parse_pause_enc_rsp:
+
+le_parse_reject_ind:
+
+le_parse_ping_rsp:
+5cf5 20600000 rtn 
+
+init_lmp:
+5cf6 20758000 rtn wake 
+
+init_lmp_work:
+5cf7 473e402f bpatchx patch2f_4 ,mem_patch2f 
+5cf8 58000000 setarg 0 
+5cf9 60008048 store 1 ,mem_lmp_to_send 
+5cfa 60008055 store 1 ,mem_conn_sm 
+5cfb 60008078 store 1 ,mem_lmo_opcode1 
+5cfc 6000807c store 1 ,mem_lmo_opcode2 
+5cfd 6000c158 store 1 ,mem_esco_addr 
+5cfe 600084d7 store 1 ,mem_auth_enable 
+5cff 6000816d store 1 ,mem_connection_options 
+5d00 600089b5 store 1 ,mem_pairing_auth 
+5d01 70455b00 jam switch_flag_init ,mem_switch_flag 
+5d02 70022900 jam 0 ,mem_switch_fail_master_count 
+5d03 7004d800 jam null_encryp ,mem_wait_encryption 
+
+init_lmp_reinit:
+5d04 7009b500 jam 0 ,mem_pairing_auth 
+5d05 7009b400 jam 0 ,mem_sp_localsm 
+5d06 7004d100 jam 0 ,mem_lmp_conn_state 
+
+parse_rx_done:
+5d07 20600000 rtn 
+
+parse_lmp:
+5d08 473ec02f bpatchx patch2f_5 ,mem_patch2f 
+5d09 2054e2ff call setlocalsm_master ,master 
+5d0a 2454e303 ncall setlocalsm_slave ,master 
+5d0b 204062bc call lmo_fifo_check 
+5d0c 247a0000 nrtn blank 
+5d0d 6800804c fetch 1 ,mem_state_map 
+5d0e c4030000 rtnbit0 smap_rxlmp 
+5d0f 793ffe06 set0 smap_rxlmp ,pdata 
+5d10 793f8001 set0 mark_rxbuf_inuse ,mark 
+5d11 6000804c store 1 ,mem_state_map 
+5d12 68008551 fetch 1 ,mem_rxbuf 
+5d13 6808804c fetcht 1 ,mem_state_map 
+5d14 2feffe00 isolate1 smap_lmptidinit ,pdata 
+5d15 79208401 setflag true ,smap_lmptid ,temp 
+5d16 6008804c storet 1 ,mem_state_map 
+5d17 18410402 and_into 0x2 ,temp 
+5d18 6008807f storet 1 ,mem_lmo_tid2 
+5d19 6808804c fetcht 1 ,mem_state_map 
+5d1a 1fe37e00 rshift pdata ,pdata 
+5d1b 6000807d store 1 ,mem_lmi_opcode2 
+5d1c 473f402f bpatchx patch2f_6 ,mem_patch2f 
+5d1d 6800807d fetch 1 ,mem_lmi_opcode2 
+5d1e c03fdd66 beq lmp_escape ,parse_lmp_escape 
+5d1f c001ddb1 beq lmp_accepted ,parse_lmp_accepted 
+5d20 c0025dc2 beq lmp_not_accepted ,parse_lmp_not_accepted 
+5d21 c01e5d59 beq lmp_set_afh ,parse_lmp_set_afh 
+5d22 c002dd55 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
+5d23 c007dfa8 beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
+5d24 c0085e24 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
+5d25 c011de42 beq lmp_auto_rate ,parse_lmp_auto_rate 
+5d26 c01cdfc1 beq lmp_test_control ,parse_lmp_test_control 
+5d27 c01c5fbc beq lmp_test_activate ,parse_lmp_test_activate 
+5d28 c018de27 beq lmp_setup_complete ,parse_lmp_setup_complete 
+5d29 c01bdeb0 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
+5d2a c013deac beq lmp_features_req ,parse_lmp_features_req 
+5d2b c019dea9 beq lmp_host_connection_req ,parse_lmp_conn_req 
+5d2c c012deae beq lmp_version_req ,parse_lmp_version_req 
+5d2d c0135e3e beq lmp_version_res ,parse_lmp_version_res 
+5d2e c003de36 beq lmp_detach ,parse_lmp_detach 
+5d2f c016de2d beq lmp_max_slot ,parse_lmp_max_slot 
+5d30 c0175e2e beq lmp_max_slot_req ,parse_lmp_max_slot_req 
+5d31 c000dea5 beq lmp_name_req ,parse_lmp_name_req 
+5d32 c0015e90 beq lmp_name_res ,parse_lmp_name_res 
+5d33 c0145fb3 beq lmp_features_res ,parse_lmp_features_res 
+5d34 c004de86 beq lmp_comb_key ,parse_lmp_comb_key 
+5d35 c005de5f beq lmp_au_rand ,parse_lmp_au_rand 
+5d36 c0045e43 beq lmp_in_rand ,parse_lmp_in_rand 
+5d37 c0065e6a beq lmp_sres ,parse_lmp_sres 
+5d38 c00fde3a beq lmp_incr_power_req ,parse_lmp_incr_power 
+5d39 c0105e3c beq lmp_decr_power_req ,parse_lmp_decr_power 
+5d3a c010deca beq lmp_max_power ,parse_lmp_max_power 
+5d3b c0115eca beq lmp_min_power ,parse_lmp_min_power 
+5d3c c01adecb beq lmp_page_mode_req ,parse_lmp_page_mode_req 
+5d3d c01b5ecc beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
+5d3e c0125eca beq lmp_preferred_rate ,parse_lmp_preferred_rate 
+5d3f c01a5ecd beq lmp_slot_offset ,parse_lmp_slot_offset 
+5d40 c00bded6 beq lmp_sniff_req ,parse_lmp_sniff_req 
+5d41 c008def2 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
+5d42 c0095ef6 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
+5d43 c009def8 beq lmp_switch_req ,parse_lmp_switch_req 
+5d44 c006df0a beq lmp_temp_rand ,parse_lmp_temp_rand 
+5d45 c0075f0a beq lmp_temp_key ,parse_lmp_temp_key 
+5d46 c017deaa beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
+5d47 c0185f0a beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
+5d48 c0055f0a beq lmp_unit_key ,parse_lmp_unit_key 
+5d49 c00c5f0b beq lmp_unsniff_req ,parse_lmp_unsniff_req 
+5d4a c0195f0a beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
+5d4b c01edf10 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
+5d4c c01f5f51 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
+5d4d c01fdf4b beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
+5d4e c0205f78 beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
+5d4f c020df8a beq lmp_dhkey_check ,parse_dhkey_check 
+5d50 c0035fa7 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
+5d51 c01d5d57 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
+
+reject_unknown_packet:
+5d52 70007e19 jam unknown_lmp_pdu ,mem_lmo_reason2 
+
+reject_lmp_packet:
+5d53 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+5d54 20600000 rtn 
+
+parse_lmp_clkoffset_req:
+5d55 70007c06 jam lmp_clkoffset_res ,mem_lmo_opcode2 
+5d56 20600000 rtn 
+
+parse_enc_key_size_mask_req:
+5d57 70007c3b jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
+5d58 20600000 rtn 
+
+parse_lmp_set_afh:
+5d59 68020552 fetch 4 ,mem_rxbuf + 1 
+5d5a 1fe3fe00 lshift pdata ,pdata 
+5d5b 600240d2 store 4 ,mem_afh_instant 
+5d5c 68008556 fetch 1 ,mem_rxbuf + 5 
+5d5d 6000c0d9 store 1 ,mem_afh_new_mod 
+5d5e 68028557 fetch 5 ,mem_rxbuf + 6 
+5d5f 6002c0e7 store 5 ,mem_afh_map_new 
+5d60 6802855c fetch 5 ,mem_rxbuf + 11 
+5d61 e0a28000 istore 5 ,contw 
+5d62 68008031 fetch 1 ,mem_mode 
+5d63 79207e03 set1 afh_change ,pdata 
+5d64 60008031 store 1 ,mem_mode 
+5d65 20600000 rtn 
+
+parse_lmp_escape:
+5d66 473fc02f bpatchx patch2f_7 ,mem_patch2f 
+5d67 68008552 fetch 1 ,mem_rxbuf + 1 
+5d68 79207e07 set1 7 ,pdata 
+5d69 6000807d store 1 ,mem_lmi_opcode2 
+5d6a c040dd88 beq lmp_ext_accepted ,parse_lmpext_accepted 
+5d6b c0415d8d beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
+5d6c c04adeb1 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
+5d6d c04b5eca beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
+5d6e c045debf beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
+5d6f c041dda5 beq lmp_ext_features_req ,parse_lmpext_features_req 
+5d70 c0425da7 beq lmp_ext_features_res ,parse_lmpext_features_res 
+5d71 c0485d7a beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
+5d72 c04bdd9e beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
+5d73 c04c5da3 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
+5d74 c04cdd7d beq lmp_io_cap_req ,parse_lmpext_iocap_req 
+5d75 c04d5d80 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
+5d76 c1420000 rtneq lmp_ext_features_res 
+
+reject_unknown_ext_packet:
+5d77 70007c82 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+5d78 70007e19 jam unknown_lmp_pdu ,mem_lmo_reason2 
+5d79 20600000 rtn 
+
+parse_lmpext_chn_classification_req:
+5d7a 70007c82 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+5d7b 70007e2e jam not_support_chn_classification ,mem_lmo_reason2 
+5d7c 20600000 rtn 
+
+parse_lmpext_iocap_req:
+5d7d 20405d82 call iocap_lmpext_load 
+5d7e 70007c9a jam lmp_io_cap_res ,mem_lmo_opcode2 
+5d7f 20600000 rtn 
+
+parse_lmpext_iocap_res:
+5d80 20405d82 call iocap_lmpext_load 
+5d81 20205d86 branch iocap_lmpext_common 
+
+iocap_lmpext_load:
+5d82 d8a0465e arg mem_sp_iocap_remote ,contw 
+5d83 68018553 fetch 3 ,mem_rxbuf + 2 
+5d84 e0a18000 istore 3 ,contw 
+5d85 20600000 rtn 
+
+iocap_lmpext_common:
+5d86 2020f6d8 branch master_set_mem_master_sp_flag ,true 
+5d87 20600000 rtn 
+
+parse_lmpext_accepted:
+5d88 68008554 fetch 1 ,mem_rxbuf + 3 
+5d89 79207e07 set1 7 ,pdata 
+5d8a 600084c9 store 1 ,mem_lmi_accepted_opcode 
+5d8b c045dd92 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
+5d8c 20600000 rtn 
+
+parse_lmpext_not_accepted:
+5d8d 68008554 fetch 1 ,mem_rxbuf + 3 
+5d8e 79207e07 set1 7 ,pdata 
+5d8f 600084c9 store 1 ,mem_lmi_accepted_opcode 
+5d90 c045dd96 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
+5d91 20600000 rtn 
+
+parse_lmpext_accepted_ptt:
+5d92 6800c15a fetch 1 ,mem_ptt 
+5d93 6808804c fetcht 1 ,mem_state_map 
+5d94 7d3a0405 nsetflag blank ,smap_edr ,temp 
+5d95 6008804c storet 1 ,mem_state_map 
+
+parse_lmpext_not_accepted_ptt:
+5d96 68008030 fetch 1 ,mem_state 
+5d97 c4028000 rtnbit0 state_init_seq 
+5d98 793ffe05 set0 state_init_seq ,pdata 
+5d99 60008030 store 1 ,mem_state 
+5d9a 680084d7 fetch 1 ,mem_auth_enable 
+5d9b 247a0000 nrtn blank 
+5d9c 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+5d9d 20600000 rtn 
+
+parse_lmpext_pause_encrypt:
+5d9e 2434dda1 nbranch parse_lmpext_pause_encrypt_slave ,master 
+5d9f 70007c12 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+5da0 202062eb branch tid_reply 
+
+parse_lmpext_pause_encrypt_slave:
+5da1 70007c97 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
+5da2 20600000 rtn 
+
+parse_lmpext_resume_encrypt:
+5da3 204062eb call tid_reply 
+5da4 20205ffe branch lmp_start_encryption 
+
+parse_lmpext_features_req:
+5da5 70007c84 jam lmp_ext_features_res ,mem_lmo_opcode2 
+5da6 20600000 rtn 
+
+parse_lmpext_features_res:
+5da7 68088555 fetcht 1 ,mem_rxbuf + 4 
+5da8 18410401 and temp ,0x1 ,temp 
+5da9 600884d0 storet 1 ,mem_remote_sppcap 
+5daa 6800c1ce fetch 1 ,mem_hci_cmd 
+5dab c0a8ddad bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
+5dac 7041ce00 jam 0 ,mem_hci_cmd 
+
+parse_lmpext_features_res_not_hci:
+5dad 68008055 fetch 1 ,mem_conn_sm 
+5dae c18a8000 rtnne conn_sm_wait_features_ext 
+5daf 70005504 jam conn_sm_send_conn_req ,mem_conn_sm 
+5db0 2020631b branch process_conn_sm 
+
+parse_lmp_accepted:
+5db1 47404030 bpatchx patch30_0 ,mem_patch30 
+5db2 68008552 fetch 1 ,mem_rxbuf + 1 
+5db3 600084c9 store 1 ,mem_lmi_accepted_opcode 
+5db4 c019ddd8 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
+5db5 c0045de7 beq lmp_in_rand ,parse_lmp_accepted_inrand 
+5db6 c007ddee beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
+5db7 c0085df4 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
+5db8 c008ddf5 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
+5db9 c0095dfd beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
+5dba c00c5e13 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
+5dbb c00bde16 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
+5dbc c009ddcf beq lmp_switch_req ,parse_lmp_accepted_switch 
+5dbd c01edf1e beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
+5dbe c01f5f6a beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
+5dbf c0205f20 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
+5dc0 c020df3d beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
+5dc1 20600000 rtn 
+
+parse_lmp_not_accepted:
+5dc2 4740c030 bpatchx patch30_1 ,mem_patch30 
+5dc3 68008552 fetch 1 ,mem_rxbuf + 1 
+5dc4 600084c9 store 1 ,mem_lmi_accepted_opcode 
+5dc5 c000de0a beq lmp_name_req ,parse_lmp_not_accepted_name_req 
+5dc6 c019dde2 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
+5dc7 c005ddfe beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
+5dc8 c0045e01 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
+5dc9 c009ddd2 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
+5dca c0205e0b beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
+5dcb c020de0e beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
+5dcc c00c5e11 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
+5dcd c00bde22 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
+5dce 20600000 rtn 
+
+parse_lmp_accepted_switch:
+5dcf 700a9920 jam bt_evt_switch_accept ,mem_fifo_temp 
+5dd0 20407d86 call ui_ipc_send_event 
+5dd1 202021dc branch role_switch_prepare0 
+
+parse_lmp_not_accepted_switch:
+5dd2 700a9919 jam bt_evt_switch_not_accept ,mem_fifo_temp 
+5dd3 20407d86 call ui_ipc_send_event 
+5dd4 70455b02 jam switch_flag_not_accept ,mem_switch_flag 
+5dd5 58000050 setarg timer_switch_waite 
+5dd6 d8e00006 arg switch_wait_timer ,queue 
+5dd7 20207f08 branch timer_init 
+
+parse_lmp_accepted_hostconn:
+5dd8 680084d1 fetch 1 ,mem_lmp_conn_state 
+5dd9 79207e00 set1 received_conn_req ,pdata 
+5dda 600084d1 store 1 ,mem_lmp_conn_state 
+5ddb 700a9901 jam bt_evt_bb_connected ,mem_fifo_temp 
+5ddc 20407d86 call ui_ipc_send_event 
+5ddd 70007c8b jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+
+parse_lmp_accepted_hostconn_ctn:
+5dde 68008055 fetch 1 ,mem_conn_sm 
+5ddf c082dd07 bne conn_sm_wait_conn_accept ,parse_rx_done 
+5de0 70005506 jam conn_sm_auth_pair ,mem_conn_sm 
+5de1 20600000 rtn 
+
+parse_lmp_not_accepted_hostconn:
+5de2 7004ca0b jam acl_connection_already_exists ,mem_disconn_reason_send 
+5de3 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+5de4 70005500 jam conn_sm_standby ,mem_conn_sm 
+5de5 2020dd07 branch parse_rx_done ,true 
+5de6 20600000 rtn 
+
+parse_lmp_accepted_inrand:
+5de7 6800c1bd fetch 1 ,mem_link_key_exists 
+5de8 247a0000 nrtn blank 
+5de9 2040244f call clear_linkkey 
+5dea 20405ffc call lmp_generate_key 
+5deb 20748000 rtn master 
+5dec 79200021 set1 mark_slave_in_rand_accepted ,mark 
+5ded 20600000 rtn 
+
+parse_lmp_accepted_enc_mode:
+5dee 24748000 nrtn master 
+5def 70007c10 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+5df0 6800804c fetch 1 ,mem_state_map 
+5df1 c4010000 rtnbit0 smap_encryption 
+5df2 70007c12 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+5df3 20600000 rtn 
+
+parse_lmp_accepted_enc_keysize:
+5df4 20205ffe branch lmp_start_encryption 
+
+parse_lmp_accepted_start_enc:
+5df5 20406059 call send_create_conn_start_l2cap_timer_sm 
+5df6 68008030 fetch 1 ,mem_state 
+5df7 c3820000 rtnbit1 state_conn_comp 
+5df8 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+5df9 68008055 fetch 1 ,mem_conn_sm 
+5dfa c1850000 rtnne conn_sm_encrypt_wait 
+5dfb 7000550b jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
+5dfc 20600000 rtn 
+
+parse_lmp_accepted_stop_enc:
+5dfd 20600000 rtn 
+
+parse_lmp_not_accepted_aurand:
+
+parse_lmp_not_accepted_aurand_send_detach:
+5dfe 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+5dff 7004ca13 jam other_end_terminated ,mem_disconn_reason_send 
+5e00 20600000 rtn 
+
+parse_lmp_not_accepted_inrand:
+5e01 68008553 fetch 1 ,mem_rxbuf + 2 
+5e02 c0035e07 beq key_missing ,parse_lmp_inrand_key_missing 
+5e03 c18c0000 rtnne pairing_not_allowed 
+5e04 7004ca18 jam pairing_not_allowed ,mem_disconn_reason_send 
+5e05 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+5e06 20600000 rtn 
+
+parse_lmp_inrand_key_missing:
+5e07 7004ca06 jam key_missing ,mem_disconn_reason_send 
+5e08 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+5e09 20600000 rtn 
+
+parse_lmp_not_accepted_name_req:
+5e0a 20600000 rtn 
+
+parse_lmp_not_accepted_simple_pairing_number:
+5e0b 7009ae00 jam sp_stat_null ,mem_sp_state 
+5e0c 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+5e0d 20205d07 branch parse_rx_done 
+
+parse_lmp_not_accepted_dhkey_check:
+5e0e 7009ae00 jam sp_stat_null ,mem_sp_state 
+5e0f 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+5e10 20205d07 branch parse_rx_done 
+
+parse_lmp_not_accepted_unsniff_req:
+5e11 700a9924 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
+5e12 20207d86 branch ui_ipc_send_event 
+
+parse_lmp_accepted_unsniff_req:
+5e13 700a9923 jam bt_evt_unsniff_accept ,mem_fifo_temp 
+5e14 20407d86 call ui_ipc_send_event 
+5e15 202026e9 branch sniff_exit 
+
+parse_lmp_accepted_sniff_req:
+5e16 700a9922 jam bt_evt_sniff_accept ,mem_fifo_temp 
+5e17 20407d86 call ui_ipc_send_event 
+5e18 58000000 setarg 0 
+5e19 60010075 store 2 ,mem_dsniff 
+5e1a 680141e3 fetch 2 ,mem_sniff_param_interval 
+5e1b 1fe3fe00 lshift pdata ,pdata 
+5e1c 60010032 store 2 ,mem_tsniff 
+5e1d 6800c1e5 fetch 1 ,mem_sniff_param_attempt 
+5e1e 60008073 store 1 ,mem_sniff_attempt 
+5e1f 6800c1e7 fetch 1 ,mem_sniff_param_timeout 
+5e20 60008074 store 1 ,mem_sniff_timeout 
+5e21 202026c6 branch sniff_init 
+
+parse_lmp_not_acdcept_sniff_req:
+5e22 700a9921 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
+5e23 20207d86 branch ui_ipc_send_event 
+
+parse_lmp_crypt_key:
+5e24 68088552 fetcht 1 ,mem_rxbuf + 1 
+5e25 60088054 storet 1 ,mem_key_size 
+5e26 20205e38 branch accept_lmp_msg 
+
+parse_lmp_setup_complete:
+5e27 680084d1 fetch 1 ,mem_lmp_conn_state 
+5e28 79207e02 set1 received_setup_complete ,pdata 
+5e29 600084d1 store 1 ,mem_lmp_conn_state 
+5e2a c3818000 rtnbit1 sent_setup_complete 
+5e2b 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+5e2c 20205d07 branch parse_rx_done 
+
+parse_lmp_max_slot:
+5e2d 20600000 rtn 
+
+parse_lmp_max_slot_req:
+5e2e 6800c0d0 fetch 1 ,mem_max_slot 
+5e2f 68088552 fetcht 1 ,mem_rxbuf + 1 
+5e30 98467c00 isub temp ,null 
+5e31 20215e38 branch accept_lmp_msg ,positive 
+5e32 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+5e33 70007e1f jam unspecified_error ,mem_lmo_reason2 
+5e34 70007d2e jam lmp_max_slot_req ,mem_lmi_opcode2 
+5e35 20600000 rtn 
+
+parse_lmp_detach:
+5e36 20406157 call prepare_disconnect 
+5e37 20205e38 branch accept_lmp_msg 
+
+accept_lmp_msg:
+5e38 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+5e39 20600000 rtn 
+
+parse_lmp_incr_power:
+5e3a 70007c21 jam lmp_max_power ,mem_lmo_opcode2 
+5e3b 20600000 rtn 
+
+parse_lmp_decr_power:
+5e3c 70007c22 jam lmp_min_power ,mem_lmo_opcode2 
+5e3d 20600000 rtn 
+
+parse_lmp_version_res:
+5e3e 68008055 fetch 1 ,mem_conn_sm 
+5e3f c1098000 rtneq conn_sm_wait_version 
+5e40 70005502 jam conn_sm_send_features ,mem_conn_sm 
+5e41 20600000 rtn 
+
+parse_lmp_auto_rate:
+5e42 20600000 rtn 
+
+parse_lmp_in_rand:
+5e43 20405ff9 call lmp_copy_rand 
+5e44 7004d401 jam pincode_state_wait_pincode ,mem_pincode_state 
+5e45 700a990a jam bt_evt_pincode_req ,mem_fifo_temp 
+5e46 20407d86 call ui_ipc_send_event 
+5e47 204062f3 call tid_check 
+5e48 2420e001 nbranch lmp_accept_inrand ,true 
+5e49 2434de4e nbranch parse_lmp_inrand_res ,master 
+5e4a 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+5e4b 70007d08 jam lmp_in_rand ,mem_lmi_opcode2 
+5e4c 70007e23 jam transaction_collision ,mem_lmo_reason2 
+5e4d 20600000 rtn 
+
+parse_lmp_inrand_res:
+5e4e 6800804b fetch 1 ,mem_op 
+5e4f 79207e02 set1 op_inrand_req ,pdata 
+5e50 6000804b store 1 ,mem_op 
+5e51 20600000 rtn 
+
+pop_tid_follow:
+5e52 6808804c fetcht 1 ,mem_state_map 
+5e53 7d3a0401 nsetflag blank ,smap_lmptid ,temp 
+5e54 6008804c storet 1 ,mem_state_map 
+5e55 20600000 rtn 
+
+push_tid_follow:
+5e56 6800807f fetch 1 ,mem_lmo_tid2 
+5e57 1fe37e00 rshift pdata ,pdata 
+5e58 1fe17e01 and_into 1 ,pdata 
+5e59 20600000 rtn 
+
+parse_lmp_au_rand_moudle:
+5e5a 6800c217 fetch 1 ,mem_nv_data_number 
+5e5b 207a0000 rtn blank 
+5e5c 680089b5 fetch 1 ,mem_pairing_auth 
+5e5d 205a67b2 call load_device_list ,blank 
+5e5e 20600000 rtn 
+
+parse_lmp_au_rand:
+5e5f 20405e5a call parse_lmp_au_rand_moudle 
+5e60 20405e56 call push_tid_follow 
+5e61 600084d5 store 1 ,mem_sres_tid 
+5e62 20405ff9 call lmp_copy_rand 
+5e63 70007c0c jam lmp_sres ,mem_lmo_opcode2 
+5e64 6800c1bd fetch 1 ,mem_link_key_exists 
+5e65 247a0000 nrtn blank 
+5e66 68008030 fetch 1 ,mem_state 
+5e67 c3830000 rtnbit1 state_combkey 
+5e68 70007e06 jam key_missing ,mem_lmo_reason2 
+5e69 20205d53 branch reject_lmp_packet 
+
+parse_lmp_sres:
+5e6a da200040 arg mem_plap ,rega 
+5e6b 20407288 call function_e1 
+5e6c 68020552 fetch 4 ,mem_rxbuf + 1 
+5e6d 680a0592 fetcht 4 ,mem_input_store 
+5e6e 98467c00 isub temp ,null 
+5e6f 2022de73 branch authentication_ok ,zero 
+5e70 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+5e71 7004ca05 jam authentication_failure_error ,mem_disconn_reason_send 
+5e72 20600000 rtn 
+
+authentication_ok:
+5e73 20405e77 call authentication_ok_common 
+5e74 6800c65a fetch 1 ,mem_ssp_enable 
+5e75 203a5f3e branch pairing_success ,blank 
+5e76 20600000 rtn 
+
+authentication_ok_common:
+5e77 20407386 call copy_aco 
+5e78 204021b2 call linkkey_ready 
+5e79 6800804b fetch 1 ,mem_op 
+5e7a 2feffe01 isolate1 op_auth_req ,pdata 
+5e7b 793ffe01 set0 op_auth_req ,pdata 
+5e7c 6000804b store 1 ,mem_op 
+5e7d 68008055 fetch 1 ,mem_conn_sm 
+5e7e c00cde81 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
+5e7f c00c5e81 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
+5e80 20600000 rtn 
+
+authentication_ok_conn_sm:
+5e81 680089b5 fetch 1 ,mem_pairing_auth 
+5e82 c1800000 rtnne defalt_pairing_auth 
+5e83 6800804c fetch 1 ,mem_state_map 
+5e84 c3810000 rtnbit1 smap_encryption 
+5e85 202063b1 branch host_create_conn_encrypt 
+
+parse_lmp_comb_key:
+5e86 da200552 arg mem_rxbuf + 1 ,rega 
+5e87 da400582 arg mem_kinit ,regb 
+5e88 d8a00562 arg mem_random_number ,contw 
+5e89 20407352 call xor16 
+5e8a da200040 arg mem_plap ,rega 
+5e8b 20406311 call generate_linkkey 
+5e8c 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+5e8d 68008030 fetch 1 ,mem_state 
+5e8e c3035ffc bbit0 state_combkey ,lmp_generate_key 
+5e8f 20600000 rtn 
+
+parse_lmp_name_res:
+5e90 6801015f fetch 2 ,mem_len 
+5e91 1fe0f3fd add pdata ,-3 ,loopcnt 
+5e92 68088552 fetcht 1 ,mem_rxbuf + 1 
+5e93 58000101 setarg mem_tmp_buffer 
+5e94 98408a00 iadd temp ,contw 
+5e95 d8c00554 arg mem_rxbuf + 3 ,contr 
+5e96 20407f01 call memcpy 
+5e97 68088053 fetcht 1 ,mem_name_offset 
+5e98 68008553 fetch 1 ,mem_rxbuf + 2 
+5e99 98467e00 isub temp ,pdata 
+5e9a 1fe67c0e sub pdata ,14 ,null 
+5e9b 20215ea0 branch parse_lmp_name_res_end ,positive 
+5e9c 1840fe0e add temp ,14 ,pdata 
+5e9d 60008053 store 1 ,mem_name_offset 
+5e9e 70007c01 jam lmp_name_req ,mem_lmo_opcode2 
+5e9f 20600000 rtn 
+
+parse_lmp_name_res_end:
+5ea0 6800804c fetch 1 ,mem_state_map 
+5ea1 79207e03 set1 smap_name_res ,pdata 
+5ea2 6000804c store 1 ,mem_state_map 
+5ea3 c2826006 bbit1 smap_name_req ,lmp_disconnect 
+5ea4 20600000 rtn 
+
+parse_lmp_name_req:
+5ea5 68008552 fetch 1 ,mem_rxbuf + 1 
+5ea6 6000807d store 1 ,mem_lmi_opcode2 
+5ea7 70007c02 jam lmp_name_res ,mem_lmo_opcode2 
+5ea8 20600000 rtn 
+
+parse_lmp_conn_req:
+5ea9 20205e38 branch accept_lmp_msg 
+
+parse_lmp_timing_accuracy_req:
+5eaa 70007c30 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
+5eab 20600000 rtn 
+
+parse_lmp_features_req:
+5eac 70007c28 jam lmp_features_res ,mem_lmo_opcode2 
+5ead 20600000 rtn 
+
+parse_lmp_version_req:
+5eae 70007c26 jam lmp_version_res ,mem_lmo_opcode2 
+5eaf 20600000 rtn 
+
+parse_lmp_supervision_timeout:
+5eb0 20600000 rtn 
+
+parse_lmp_sniff_subrating_req:
+5eb1 68010032 fetch 2 ,mem_tsniff 
+5eb2 98000400 iforce temp 
+5eb3 68008553 fetch 1 ,mem_rxbuf + 2 
+5eb4 60008095 store 1 ,mem_subsniff_rate 
+5eb5 984f8400 imul32 temp ,temp 
+5eb6 68010554 fetch 2 ,mem_rxbuf + 3 
+5eb7 1fe3fe00 lshift pdata ,pdata 
+5eb8 60010096 store 2 ,mem_subsniff_tcmax 
+5eb9 68020556 fetch 4 ,mem_rxbuf + 5 
+5eba 1fe3fe00 lshift pdata ,pdata 
+5ebb 60020091 store 4 ,mem_subsniff_instant 
+5ebc 18427e00 deposit temp 
+5ebd 60010098 store 2 ,mem_subsniff_tsniff 
+5ebe 20600000 rtn 
+
+parse_lmpext_packet_type_table_req:
+5ebf 6808c15a fetcht 1 ,mem_ptt 
+5ec0 68008553 fetch 1 ,mem_rxbuf + 2 
+5ec1 9842fc00 ixor temp ,null 
+5ec2 2422dd77 nbranch reject_unknown_ext_packet ,zero 
+5ec3 2feffe00 isolate1 0 ,pdata 
+5ec4 6800804c fetch 1 ,mem_state_map 
+5ec5 7920fe05 setflag true ,smap_edr ,pdata 
+5ec6 6000804c store 1 ,mem_state_map 
+5ec7 70007c81 jam lmp_ext_accepted ,mem_lmo_opcode2 
+5ec8 70007d8b jam lmp_packet_type_table_req ,mem_lmi_opcode2 
+5ec9 20600000 rtn 
+
+parse_lmp_sniff_subrating_res:
+
+parse_lmp_preferred_rate:
+
+parse_lmp_max_power:
+
+parse_lmp_min_power:
+5eca 20600000 rtn 
+
+parse_lmp_page_mode_req:
+5ecb 20205e38 branch accept_lmp_msg 
+
+parse_lmp_page_scan_mode_req:
+5ecc 20205e38 branch accept_lmp_msg 
+
+parse_lmp_slot_offset:
+5ecd 68010552 fetch 2 ,mem_rxbuf + 1 
+5ece 60010171 store 2 ,mem_slot_offset 
+5ecf 20600000 rtn 
+
+parse_lmp_sniff_req_check_sniff_para:
+5ed0 68010555 fetch 2 ,mem_rxbuf + 4 
+5ed1 6808c172 fetcht 1 ,mem_lpm_mult 
+5ed2 984ffe00 imul32 temp ,pdata 
+5ed3 d8400640 arg 0x640 ,temp 
+5ed4 98467c00 isub temp ,null 
+5ed5 20600000 rtn 
+
+parse_lmp_sniff_req:
+5ed6 68010557 fetch 2 ,mem_rxbuf + 6 
+5ed7 203a5ef0 branch lmp_reject_sniff ,blank 
+5ed8 20405ed0 call parse_lmp_sniff_req_check_sniff_para 
+5ed9 20215ef0 branch lmp_reject_sniff ,positive 
+5eda 6800c092 fetch 1 ,mem_device_option 
+5edb 1fe67c0a sub pdata ,dvc_op_module ,null 
+5edc 2042bcd5 call module_set_lpm_mult_2 ,zero 
+5edd 68008030 fetch 1 ,mem_state 
+5ede c280def0 bbit1 state_insniff ,lmp_reject_sniff 
+5edf 68010553 fetch 2 ,mem_rxbuf + 2 
+5ee0 1fe3fe00 lshift pdata ,pdata 
+5ee1 60010075 store 2 ,mem_dsniff 
+5ee2 68010555 fetch 2 ,mem_rxbuf + 4 
+5ee3 1fe3fe00 lshift pdata ,pdata 
+5ee4 60010032 store 2 ,mem_tsniff 
+5ee5 68010557 fetch 2 ,mem_rxbuf + 6 
+5ee6 60008073 store 1 ,mem_sniff_attempt 
+5ee7 98000400 iforce temp 
+5ee8 68010559 fetch 2 ,mem_rxbuf + 8 
+5ee9 60008074 store 1 ,mem_sniff_timeout 
+5eea 98467c00 isub temp ,null 
+5eeb 24215eed nbranch set_big_value_to_attempt ,positive 
+5eec 60008073 store 1 ,mem_sniff_attempt 
+
+set_big_value_to_attempt:
+5eed 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+5eee 70007d17 jam lmp_sniff_req ,mem_lmi_opcode2 
+5eef 20600000 rtn 
+
+lmp_reject_sniff:
+5ef0 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+5ef1 20205d53 branch reject_lmp_packet 
+
+parse_lmp_start_encryption_req:
+5ef2 20405e38 call accept_lmp_msg 
+5ef3 20405ff9 call lmp_copy_rand 
+5ef4 2040728b call function_e3 
+5ef5 202026b8 branch start_encryption 
+
+parse_lmp_stop_encryption_req:
+5ef6 20405e38 call accept_lmp_msg 
+5ef7 202026c0 branch stop_encryption 
+
+parse_lmp_switch_req:
+5ef8 68020552 fetch 4 ,mem_rxbuf + 1 
+5ef9 1fe3fe00 lshift pdata ,pdata 
+5efa 2034df04 branch parse_lmp_switch_accept ,master 
+5efb 6808c1bd fetcht 1 ,mem_link_key_exists 
+5efc 243a5f01 nbranch parse_lmp_switch_req_clear_mark ,blank 
+
+parse_lmp_switch_req_not_accept:
+5efd 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+5efe 70007d13 jam lmp_switch_req ,mem_lmi_opcode2 
+5eff 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+5f00 20600000 rtn 
+
+parse_lmp_switch_req_clear_mark:
+5f01 70007c34 jam lmp_slot_offset ,mem_lmo_opcode2 
+5f02 70005500 jam 0 ,mem_conn_sm 
+5f03 202021d9 branch role_switch_prepare 
+
+parse_lmp_switch_accept:
+5f04 204021d9 call role_switch_prepare 
+5f05 79200022 set1 mark_reconn_recieve_switch ,mark 
+5f06 6800816d fetch 1 ,mem_connection_options 
+5f07 793ffe02 set0 connection_switch ,pdata 
+5f08 6000816d store 1 ,mem_connection_options 
+5f09 20205e38 branch accept_lmp_msg 
+
+parse_lmp_temp_rand:
+
+parse_lmp_temp_key:
+
+parse_lmp_timing_accuracy_res:
+
+parse_lmp_unit_key:
+
+parse_lmp_use_semi_permanend_key:
+5f0a 20600000 rtn 
+
+parse_lmp_unsniff_req:
+5f0b 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+5f0c 70007d18 jam lmp_unsniff_req ,mem_lmi_opcode2 
+5f0d 700a992e jam bt_evt_remote_unsniff ,mem_fifo_temp 
+5f0e 20407d86 call ui_ipc_send_event 
+5f0f 202026e9 branch sniff_exit 
+
+parse_lmp_encapsulated_header:
+5f10 68008552 fetch 1 ,mem_rxbuf + 1 
+5f11 c080df1c bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
+5f12 68008553 fetch 1 ,mem_rxbuf + 2 
+5f13 c080df1c bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
+5f14 68008554 fetch 1 ,mem_rxbuf + 3 
+5f15 c0985f1c bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
+5f16 204062fc call check_localsm 
+5f17 2020df19 branch parse_lmp_encapsulated_header_master ,true 
+5f18 7009ae01 jam sp_stat_key_recv ,mem_sp_state 
+
+parse_lmp_encapsulated_header_master:
+5f19 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+5f1a 70007d3d jam lmp_encapsulated_header ,mem_lmi_opcode2 
+5f1b 20205d07 branch parse_rx_done 
+
+parse_lmp_encapsulated_header_reject:
+5f1c 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+5f1d 20205d53 branch reject_lmp_packet 
+
+parse_lmp_accepted_encapsulated_header:
+5f1e 70007c3e jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+5f1f 20600000 rtn 
+
+parse_lmp_accepted_simple_pairing_number:
+5f20 6800c662 fetch 1 ,mem_ssp_mode_flag 
+5f21 c000df27 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
+5f22 c0015f2b beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
+
+parse_lmp_accepted_simple_pairing_number_common:
+5f23 204062fc call check_localsm 
+5f24 20608000 rtn true 
+5f25 7009ae08 jam sp_stat_confirm_recv ,mem_sp_state 
+5f26 20600000 rtn 
+
+parse_lmp_accepted_simple_pairing_number_ssp_pin:
+5f27 20407962 call g_noninit_number_confirm 
+5f28 700a9935 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
+5f29 20407d86 call ui_ipc_send_event 
+5f2a 20205f23 branch parse_lmp_accepted_simple_pairing_number_common 
+
+parse_lmp_accepted_simple_pairing_number_passkey:
+5f2b 204062fc call check_localsm 
+5f2c 20608000 rtn true 
+5f2d 6800c663 fetch 1 ,mem_authentication_passkey_times 
+5f2e c009df3b beq 19 ,authentication_passkey_end 
+5f2f 1fe0fe01 increase 1 ,pdata 
+5f30 6000c663 store 1 ,mem_authentication_passkey_times 
+
+authentication_passkey:
+5f31 7009b001 jam sp_flag_commit ,mem_sp_flag 
+5f32 7009ae04 jam sp_stat_commit_calc ,mem_sp_state 
+5f33 6800c663 fetch 1 ,mem_authentication_passkey_times 
+5f34 1fe20e00 copy pdata ,queue 
+5f35 6803468a fetch 6 ,mem_pin 
+5f36 afefffff qisolate1 pdata 
+5f37 58000080 setarg 0x80 
+5f38 7920fe00 setflag true ,0 ,pdata 
+5f39 6000c664 store 1 ,mem_passkey_1bit 
+5f3a 20600000 rtn 
+
+authentication_passkey_end:
+5f3b 7009ae08 jam sp_stat_confirm_recv ,mem_sp_state 
+5f3c 20600000 rtn 
+
+parse_lmp_accepted_dhkey_check:
+5f3d 20405f43 call parse_lmp_accepted_dhkey_check_common 
+
+pairing_success:
+5f3e 6800c665 fetch 1 ,mem_flag_pairing_state 
+5f3f 207a0000 rtn blank 
+5f40 70466500 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
+5f41 700a9938 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
+5f42 20207d86 branch ui_ipc_send_event 
+
+parse_lmp_accepted_dhkey_check_common:
+5f43 204062fc call check_localsm 
+5f44 2440f965 ncall g_noninit ,true 
+5f45 2040f975 call g_init ,true 
+5f46 204062fc call check_localsm 
+5f47 20608000 rtn true 
+5f48 7009ae0c jam sp_stat_link_key_calc ,mem_sp_state 
+5f49 7009b001 jam sp_flag_commit ,mem_sp_flag 
+5f4a 20600000 rtn 
+
+parse_simple_pairing_confirm:
+5f4b d8a00a6e arg mem_sp_confirm_remote ,contw 
+5f4c d8c00552 arg mem_rxbuf + 1 ,contr 
+5f4d 20407ebf call memcpy16 
+5f4e 6800c662 fetch 1 ,mem_ssp_mode_flag 
+5f4f c1010000 rtneq ssp_mode_passkey_entry_flag 
+5f50 202076d8 branch master_set_mem_master_sp_flag 
+
+parse_lmp_encapsulated_payload:
+5f51 680089af fetch 1 ,mem_master_sp_state 
+5f52 c003df55 beq sp_stat_random_send ,parse_encapsulated_payload_master 
+5f53 680089ae fetch 1 ,mem_sp_state 
+5f54 c080df68 bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
+
+parse_encapsulated_payload_master:
+5f55 680089b7 fetch 1 ,mem_sp_remote_key_recv_count 
+5f56 1fe60a20 sub pdata ,0x20 ,contw 
+5f57 24215f68 nbranch parse_lmp_encapsulated_payload_reject ,positive 
+5f58 d8a009c6 arg mem_sp_pubkey_remote ,contw 
+5f59 98a08a00 iadd contw ,contw 
+5f5a 68040552 fetch 8 ,mem_rxbuf + 1 
+5f5b e0a40000 istore 8 ,contw 
+5f5c 6804055a fetch 8 ,mem_rxbuf + 9 
+5f5d e0a40000 istore 8 ,contw 
+5f5e 680089b7 fetch 1 ,mem_sp_remote_key_recv_count 
+5f5f 1fe0fe10 increase 16 ,pdata 
+5f60 600089b7 store 1 ,mem_sp_remote_key_recv_count 
+5f61 c0985e38 bne encapsulated_len_p192 ,accept_lmp_msg 
+
+parse_lmp_encapsulated_payload_completed:
+5f62 204062fc call check_localsm 
+5f63 2020de38 branch accept_lmp_msg ,true 
+5f64 7009b801 jam sp_key_valid ,mem_sp_remote_key_invalid 
+5f65 7009ae02 jam sp_stat_key_generate ,mem_sp_state 
+5f66 7009b001 jam sp_flag_commit ,mem_sp_flag 
+5f67 20205e38 branch accept_lmp_msg 
+
+parse_lmp_encapsulated_payload_reject:
+5f68 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+5f69 20205d53 branch reject_lmp_packet 
+
+parse_lmp_accepted_encapsulated_payload:
+5f6a 680089b6 fetch 1 ,mem_sp_local_key_send_count 
+5f6b c0185f6e beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
+5f6c 70007c3e jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+5f6d 20205d07 branch parse_rx_done 
+
+parse_lmp_encapsulated_payload_all_accepted:
+5f6e 204062fc call check_localsm 
+5f6f 2020df77 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
+5f70 6800c662 fetch 1 ,mem_ssp_mode_flag 
+5f71 c0015f75 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
+5f72 7009b001 jam sp_flag_commit ,mem_sp_flag 
+5f73 7009ae04 jam sp_stat_commit_calc ,mem_sp_state 
+5f74 20205d07 branch parse_rx_done 
+
+parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+5f75 700a9936 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
+5f76 20207d86 branch ui_ipc_send_event 
+
+parse_lmp_encapsulated_payload_all_accepted_master:
+5f77 20205d07 branch parse_rx_done 
+
+parse_lmp_simple_pairing_number:
+5f78 680089af fetch 1 ,mem_master_sp_state 
+5f79 c003df7c beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
+5f7a 680089ae fetch 1 ,mem_sp_state 
+5f7b c0835f88 bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
+
+parse_lmp_simple_pairing_number_master:
+5f7c d8a00a2e arg mem_sp_random_remote ,contw 
+5f7d 68040552 fetch 8 ,mem_rxbuf + 1 
+5f7e e0a40000 istore 8 ,contw 
+5f7f 6804055a fetch 8 ,mem_rxbuf + 9 
+5f80 e0a40000 istore 8 ,contw 
+5f81 204062fc call check_localsm 
+5f82 2020df86 branch parse_lmp_simple_pairing_number_master0 ,true 
+5f83 7009ae07 jam sp_stat_random_send ,mem_sp_state 
+5f84 7009b001 jam sp_flag_commit ,mem_sp_flag 
+5f85 20205e38 branch accept_lmp_msg 
+
+parse_lmp_simple_pairing_number_master0:
+5f86 7009af04 jam sp_stat_commit_calc ,mem_master_sp_state 
+5f87 202076d8 branch master_set_mem_master_sp_flag 
+
+parse_lmp_simple_pairing_number_reject:
+5f88 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+5f89 20205d53 branch reject_lmp_packet 
+
+parse_dhkey_check:
+5f8a 680089af fetch 1 ,mem_master_sp_state 
+5f8b c005df8e beq sp_stat_confirm_send ,parse_dhkey_check_master 
+5f8c 680089ae fetch 1 ,mem_sp_state 
+5f8d c0845f9d bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
+
+parse_dhkey_check_master:
+5f8e d8a00a5e arg mem_sp_check_result ,contw 
+5f8f d8c00552 arg mem_rxbuf + 1 ,contr 
+5f90 20407ebf call memcpy16 
+5f91 204062fc call check_localsm 
+5f92 2020df9a branch parse_dhkey_check_master0 ,true 
+5f93 6800c662 fetch 1 ,mem_ssp_mode_flag 
+5f94 c000df9f beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
+
+number_comparison_successed:
+5f95 70466100 jam 0 ,mem_flag_mode_ssp_pin 
+5f96 7009ae09 jam sp_stat_confirm_check ,mem_sp_state 
+5f97 7009b001 jam sp_flag_commit ,mem_sp_flag 
+5f98 70007d41 jam lmp_dhkey_check ,mem_lmi_opcode2 
+5f99 20205d07 branch parse_rx_done 
+
+parse_dhkey_check_master0:
+5f9a 7009af09 jam sp_stat_confirm_check ,mem_master_sp_state 
+5f9b 7009b101 jam sp_flag_commit ,mem_master_sp_flag 
+5f9c 20205d07 branch parse_rx_done 
+
+parse_lmp_dhkey_check_reject:
+5f9d 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+5f9e 20205d53 branch reject_lmp_packet 
+
+number_comparison_mode:
+5f9f 6800c661 fetch 1 ,mem_flag_mode_ssp_pin 
+5fa0 c283dfa4 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
+5fa1 79207e06 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
+5fa2 6000c661 store 1 ,mem_flag_mode_ssp_pin 
+5fa3 20600000 rtn 
+
+comparison_result:
+5fa4 c2805f95 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+5fa5 70466100 jam 0 ,mem_flag_mode_ssp_pin 
+5fa6 20205f9d branch parse_lmp_dhkey_check_reject 
+
+parse_lmp_clkoffset_res:
+5fa7 20205d07 branch parse_rx_done 
+
+parse_lmp_encryption_mode_req:
+5fa8 6800816d fetch 1 ,mem_connection_options 
+5fa9 793ffe01 set0 connection_encrypt 
+5faa 6000816d store 1 ,mem_connection_options 
+5fab 20405e38 call accept_lmp_msg 
+5fac 24748000 nrtn master 
+5fad 68008552 fetch 1 ,mem_rxbuf + 1 
+5fae 6808804b fetcht 1 ,mem_op 
+5faf 793a0404 setflag blank ,op_stop_enc ,temp 
+5fb0 7d3a0405 nsetflag blank ,op_start_enc ,temp 
+5fb1 6008804b storet 1 ,mem_op 
+5fb2 20600000 rtn 
+
+parse_lmp_features_res:
+5fb3 680c0552 fetcht 8 ,mem_rxbuf + 1 
+
+parse_lmp_features_res_not_hci:
+5fb4 68008055 fetch 1 ,mem_conn_sm 
+5fb5 c1818000 rtnne conn_sm_wait_features_res 
+5fb6 6800816d fetch 1 ,mem_connection_options 
+5fb7 c3025fba bbit0 connection_feature_ext ,parse_lmp_send_conn 
+5fb8 70005514 jam conn_sm_send_features_ext ,mem_conn_sm 
+5fb9 20600000 rtn 
+
+parse_lmp_send_conn:
+5fba 70005504 jam conn_sm_send_conn_req ,mem_conn_sm 
+5fbb 20600000 rtn 
+
+parse_lmp_test_activate:
+5fbc 6800817f fetch 1 ,mem_debug_config 
+5fbd 6000815b store 1 ,mem_test_mode_old_debug_config 
+5fbe 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+5fbf 70007d38 jam lmp_test_activate ,mem_lmi_opcode2 
+5fc0 20600000 rtn 
+
+parse_lmp_test_control:
+5fc1 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+5fc2 70007d39 jam lmp_test_control ,mem_lmi_opcode2 
+5fc3 18007209 force 9 ,loopcnt 
+5fc4 d8c00552 arg mem_rxbuf + 1 ,contr 
+5fc5 d8a00152 arg mem_temp_payload ,contw 
+
+parse_lmp_test_xor:
+5fc6 e8c08000 ifetch 1 ,contr 
+5fc7 1fe2fe55 xor_into 0x55 ,pdata 
+5fc8 e0a08000 istore 1 ,contw 
+5fc9 c2005fc6 loop parse_lmp_test_xor 
+5fca 68008152 fetch 1 ,test_mode_scenario 
+5fcb 68088151 fetcht 1 ,mem_tester_emulate 
+5fcc 793f8407 set0 tester_no_whitening ,temp 
+5fcd 793f8404 set0 tester_pattern_test ,temp 
+5fce c07fdfda beq exit_test_mode ,parse_lmp_test_control_exit 
+5fcf c0005ff3 beq pause_test_mode ,parse_lmp_test_control_pause 
+5fd0 c002dfe7 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
+5fd1 c003dfe6 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+5fd2 c0035fe7 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
+5fd3 c0045fe6 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+5fd4 c000dfdf beq zero_pattern ,parse_lmp_test_control_pattern 
+5fd5 c0015fdf beq one_pattern ,parse_lmp_test_control_pattern 
+5fd6 c001dfdf beq alt_pattern ,parse_lmp_test_control_pattern 
+5fd7 c004dfdf beq alt2_pattern ,parse_lmp_test_control_pattern 
+5fd8 c0025fdf beq pseudorandom ,parse_lmp_test_control_pattern 
+5fd9 20600000 rtn 
+
+parse_lmp_test_control_exit:
+5fda 68008151 fetch 1 ,mem_tester_emulate 
+5fdb 79207e03 set1 tester_exit ,pdata 
+5fdc 79207e02 set1 tester_change ,pdata 
+5fdd 60008151 store 1 ,mem_tester_emulate 
+5fde 20600000 rtn 
+
+parse_lmp_test_control_pattern:
+5fdf 79200404 set1 tester_pattern_test ,temp 
+5fe0 70018005 jam 5 ,mem_lch_code 
+5fe1 68010159 fetch 2 ,test_mode_data_length 
+5fe2 98007200 iforce loopcnt 
+5fe3 6001015f store 2 ,mem_len 
+5fe4 d8a00551 arg mem_rxbuf ,contw 
+5fe5 20407f73 call pn9 
+
+parse_lmp_test_control_loopback_nowhite:
+5fe6 79200407 set1 tester_no_whitening ,temp 
+
+parse_lmp_test_control_loopback:
+5fe7 79200402 set1 tester_change ,temp 
+5fe8 18007e00 force 0 ,pdata 
+5fe9 6000800b store 1 ,mem_slave_rcvcnt 
+5fea 600100fa store 2 ,mem_tst_pktcnt_crc 
+5feb 600100fc store 2 ,mem_tst_pktcnt_dmh 
+5fec 600100f8 store 2 ,mem_tst_pktcnt_hec 
+5fed 600100f6 store 2 ,mem_tst_pktcnt_sync 
+5fee 68008153 fetch 1 ,test_mode_hopping_mode 
+5fef 2fe1fe00 compare fixed_freq ,pdata ,0xff 
+5ff0 79208406 setflag true ,tester_fixed_freq ,temp 
+5ff1 60088151 storet 1 ,mem_tester_emulate 
+5ff2 20600000 rtn 
+
+parse_lmp_test_control_pause:
+5ff3 793f8011 set0 mark_testmode ,mark 
+5ff4 70015100 jam 0 ,mem_tester_emulate 
+5ff5 6800817f fetch 1 ,mem_debug_config 
+5ff6 793ffe06 set0 debug_tx_pattern ,pdata 
+5ff7 6000817f store 1 ,mem_debug_config 
+5ff8 20600000 rtn 
+
+lmp_copy_rand:
+5ff9 d8c00552 arg mem_rxbuf + 1 ,contr 
+5ffa d8a00562 arg mem_random_number ,contw 
+5ffb 20207ebf branch memcpy16 
+
+lmp_generate_key:
+5ffc 70007c09 jam lmp_comb_key ,mem_lmo_opcode2 
+5ffd 20600000 rtn 
+
+lmp_start_encryption:
+5ffe 24748000 nrtn master 
+5fff 70007c11 jam lmp_start_encryption_req ,mem_lmo_opcode2 
+6000 20600000 rtn 
+
+lmp_accept_inrand:
+6001 da2040a0 arg mem_lap ,rega 
+6002 20407255 call generate_kinit 
+6003 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+6004 70007d08 jam lmp_in_rand ,mem_lmi_opcode2 
+6005 20600000 rtn 
+
+lmp_disconnect:
+6006 7000720a jam 10 ,mem_conn_timer 
+6007 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+6008 7004ca16 jam local_host ,mem_disconn_reason_send 
+6009 20600000 rtn 
+
+send_lmp:
+600a 47414030 bpatchx patch30_2 ,mem_patch30 
+600b 78547c00 disable user 
+600c 204062c1 call lmo_fifo_process 
+600d 68008048 fetch 1 ,mem_lmp_to_send 
+600e 207a0000 rtn blank 
+600f c283e03f bbit1 7 ,send_lmp_escape 
+
+send_lmp0:
+6010 c000e16f beq lmp_name_req ,send_lmp_name_req 
+6011 c00160e4 beq lmp_name_res ,send_lmp_name_res 
+6012 c001e04a beq lmp_accepted ,send_lmp_accepted 
+6013 c0026060 beq lmp_not_accepted ,send_lmp_not_accepted 
+6014 c013e1db beq lmp_features_req ,send_lmp_features_req 
+6015 c0146108 beq lmp_features_res ,send_lmp_features_res 
+6016 c01860f4 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
+6017 c012e1d6 beq lmp_version_req ,send_lmp_version_req 
+6018 c0136103 beq lmp_version_res ,send_lmp_version_res 
+6019 c018e1c3 beq lmp_setup_complete ,send_lmp_setup_complete 
+601a c01be16a beq lmp_supervision_timeout ,send_lmp_superto 
+601b c019e15c beq lmp_host_connection_req ,send_lmp_no_payload 
+601c c0046259 beq lmp_in_rand ,send_lmp_inrand 
+601d c004e24f beq lmp_comb_key ,send_lmp_comb_key 
+601e c005e264 beq lmp_au_rand ,send_lmp_aurand 
+601f c006626d beq lmp_sres ,send_lmp_sres 
+6020 c007e162 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
+6021 c0086292 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
+6022 c008e288 beq lmp_start_encryption_req ,send_lmp_start_encryption 
+6023 c003e152 beq lmp_detach ,send_lmp_detach 
+6024 c015617e beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
+6025 c005617f beq lmp_unit_key ,send_lmp_unit_key 
+6026 c00fe1bc beq lmp_incr_power_req ,send_lmp_inc_power 
+6027 c00360f9 beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
+6028 c010e15f beq lmp_max_power ,send_lmp_nopayload_reply 
+6029 c016e1b2 beq lmp_max_slot ,send_lmp_max_slot 
+602a c01761b7 beq lmp_max_slot_req ,send_lmp_max_slot_req 
+602b c011615f beq lmp_min_power ,send_lmp_nopayload_reply 
+602c c01a6180 beq lmp_slot_offset ,send_lmp_slot_offset 
+602d c009e195 beq lmp_switch_req ,send_lmp_switch_req 
+602e c00be1a4 beq lmp_sniff_req ,send_lmp_sniff_req 
+602f c009628f beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
+6030 c017e1aa beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
+6031 c00c61af beq lmp_unsniff_req ,send_lmp_unsniff_req 
+6032 c01ee1ff beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
+6033 c01f620b beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
+6034 c01fe21d beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
+6035 c0206227 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
+6036 c020e23c beq lmp_dhkey_check ,send_lmp_dhkey_check 
+6037 c011e24b beq lmp_auto_rate ,send_lmp_auto_rate 
+6038 c01de246 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
+6039 c002e24c beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
+603a c014e24d beq lmp_quality_of_service ,send_lmp_quality_of_service 
+603b c01c624e beq lmp_test_activate ,send_lmp_test_activate 
+603c c01ce175 beq lmp_test_control ,send_lmp_test_control 
+
+send_lmp_error:
+603d 20202a8c branch assert 
+603e 20600000 rtn 
+
+send_lmp_escape:
+603f c040e06d beq lmp_ext_accepted ,send_lmpext_accepted 
+6040 c0426099 beq lmp_ext_features_res ,send_lmpext_features_res 
+6041 c0416076 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
+6042 c041e10d beq lmp_ext_features_req ,send_lmpext_features_req 
+6043 c045e118 beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
+6044 c04be14e beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
+6045 c04ce0d5 beq lmp_io_cap_req ,send_lmp_io_cap_req 
+6046 c04d60a4 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
+6047 c04ae0da beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
+6048 c04b60db beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
+6049 20202a8c branch assert 
+
+send_lmp_accepted:
+604a 18007e02 force 2 ,pdata 
+604b 20406298 call msg_send_lmp 
+604c 68008049 fetch 1 ,mem_lmi_opcode 
+604d e0a08000 istore 1 ,contw 
+604e 204062a7 call send_lmp_follow 
+604f 4741c030 bpatchx patch30_3 ,mem_patch30 
+6050 68008049 fetch 1 ,mem_lmi_opcode 
+6051 c0046080 beq lmp_in_rand ,send_lmp_accepted_inrand 
+6052 c007e084 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
+6053 c008608f beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
+6054 c00be05f beq lmp_sniff_req ,send_lmp_accept_sniff_req 
+6055 c019e092 beq lmp_host_connection_req ,send_lmp_accepted_connection 
+6056 c020e098 beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
+6057 c008e059 beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
+6058 20600000 rtn 
+
+send_create_conn_start_l2cap_timer_sm:
+6059 68008055 fetch 1 ,mem_conn_sm 
+605a 207a0000 rtn blank 
+605b 7000551b jam conn_sm_wait_done ,mem_conn_sm 
+605c 5800000c setarg timer_enpt_waite 
+605d d8e00007 arg enpt_delay_timer ,queue 
+605e 20207f08 branch timer_init 
+
+send_lmp_accept_sniff_req:
+605f 202026c6 branch sniff_init 
+
+send_lmp_not_accepted:
+6060 18007e03 force 3 ,pdata 
+6061 20406298 call msg_send_lmp 
+6062 68008049 fetch 1 ,mem_lmi_opcode 
+6063 c005e068 beq lmp_au_rand ,send_not_accept_aurand 
+6064 e0a08000 istore 1 ,contw 
+6065 6800804a fetch 1 ,mem_lmo_reason 
+6066 e0a08000 istore 1 ,contw 
+6067 202062a7 branch send_lmp_follow 
+
+send_not_accept_aurand:
+6068 e0a08000 istore 1 ,contw 
+6069 6800804a fetch 1 ,mem_lmo_reason 
+606a e0a08000 istore 1 ,contw 
+606b d84004d5 arg mem_sres_tid ,temp 
+606c 202062e2 branch special_tid_store 
+
+send_lmpext_accepted:
+606d 18000e04 force 4 ,queue 
+606e 204062a0 call send_lmpext 
+606f 5800007f setarg lmp_escape 
+6070 e0a08000 istore 1 ,contw 
+6071 68008049 fetch 1 ,mem_lmi_opcode 
+6072 793ffe07 set0 7 ,pdata 
+6073 e0a08000 istore 1 ,contw 
+6074 68008049 fetch 1 ,mem_lmi_opcode 
+6075 202062a7 branch send_lmp_follow 
+
+send_lmpext_not_accepted:
+6076 18000e05 force 5 ,queue 
+6077 204062a0 call send_lmpext 
+6078 5800007f setarg lmp_escape 
+6079 e0a08000 istore 1 ,contw 
+607a 68008049 fetch 1 ,mem_lmi_opcode 
+607b 793ffe07 set0 7 ,pdata 
+607c e0a08000 istore 1 ,contw 
+607d 6800804a fetch 1 ,mem_lmo_reason 
+607e e0a08000 istore 1 ,contw 
+607f 202062a7 branch send_lmp_follow 
+
+send_lmp_accepted_inrand:
+6080 2040244f call clear_linkkey 
+6081 204062f3 call tid_check 
+6082 20608000 rtn true 
+6083 20205ffc branch lmp_generate_key 
+
+send_lmp_accepted_enc_mode:
+6084 6800804b fetch 1 ,mem_op 
+6085 c282e08b bbit1 op_start_enc ,send_lmp_accepted_enc_start 
+6086 c4020000 rtnbit0 op_stop_enc 
+6087 70007c12 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+6088 793ffe04 set0 op_stop_enc ,pdata 
+6089 204062eb call tid_reply 
+608a 2020608d branch send_lmp_accepted_enc_exit 
+
+send_lmp_accepted_enc_start:
+608b 70007c10 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+608c 793ffe05 set0 op_start_enc ,pdata 
+
+send_lmp_accepted_enc_exit:
+608d 6000804b store 1 ,mem_op 
+608e 20600000 rtn 
+
+send_lmp_accepted_enc_key:
+608f 204062fc call check_localsm 
+6090 2020dffe branch lmp_start_encryption ,true 
+6091 20600000 rtn 
+
+send_lmp_accepted_connection:
+6092 70007c8b jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+6093 680084d1 fetch 1 ,mem_lmp_conn_state 
+6094 79207e00 set1 received_conn_req ,pdata 
+6095 600084d1 store 1 ,mem_lmp_conn_state 
+6096 700a9901 jam bt_evt_bb_connected ,mem_fifo_temp 
+6097 20207d86 branch ui_ipc_send_event 
+
+send_lmp_accept_dhkey_check:
+6098 20600000 rtn 
+
+send_lmpext_features_res:
+6099 18000e0c force 12 ,queue 
+609a 204062a0 call send_lmpext 
+609b 58000001 setarg 0x01 
+609c e0a08000 istore 1 ,contw 
+609d 680104ce fetch 2 ,mem_lmpext_ssp_enable 
+609e e0a10000 istore 2 ,contw 
+609f 58000000 setarg 0 
+60a0 e0a18000 istore 3 ,contw 
+60a1 58000000 setarg 0x00 
+60a2 e0a20000 istore 4 ,contw 
+60a3 202062b0 branch send_lmp_reply 
+
+send_lmpext_io_cap_res:
+60a4 18000e05 force 5 ,queue 
+60a5 204062a0 call send_lmpext 
+60a6 6801c65b fetch 3 ,mem_sp_iocap_local 
+60a7 e0a18000 istore 3 ,contw 
+60a8 204062b0 call send_lmp_reply 
+60a9 70466501 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
+60aa 6800c65b fetch 1 ,mem_sp_iocap_local 
+60ab c000e0b5 beq display_yesno ,responder_iocap_display_yesno 
+60ac c00160af beq keyboard_only ,responder_iocap_keyboard_only 
+60ad c001e0bb beq no_input_no_output ,responder_iocap_no_input_no_output 
+60ae 20600000 rtn 
+
+responder_iocap_keyboard_only:
+60af 6800c65e fetch 1 ,mem_sp_iocap_remote 
+60b0 c00060c7 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
+60b1 c000e0c7 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
+60b2 c00160c7 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
+60b3 c001e0c1 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
+60b4 20600000 rtn 
+
+responder_iocap_display_yesno:
+60b5 6800c65e fetch 1 ,mem_sp_iocap_remote 
+60b6 c00060c1 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
+60b7 c000e0c5 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
+60b8 c00160c7 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
+60b9 c001e0c1 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
+60ba 20600000 rtn 
+
+responder_iocap_no_input_no_output:
+60bb 6800c65e fetch 1 ,mem_sp_iocap_remote 
+60bc c00060c1 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
+60bd c000e0c1 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
+60be c00160c1 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
+60bf c001e0c1 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
+60c0 20600000 rtn 
+
+responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+
+responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+
+responder_iocap_display_yesno_initiator_iocap_display_only:
+
+responder_iocap_no_input_no_output_initiator_iocap_display_only:
+
+responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+
+responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+
+responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+
+set_ssp_mode_justwork:
+60c1 70466203 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
+60c2 6800c55c fetch 1 ,mem_classic_bt_flag 
+60c3 c28033e9 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
+60c4 20600000 rtn 
+
+responder_iocap_display_yesno_initiator_iocap_display_yesno:
+
+set_ssp_mode_numeric_comparison:
+60c5 70466201 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
+60c6 20600000 rtn 
+
+responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+
+responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
+
+responder_iocap_keyboard_only_initiator_iocap_display_only:
+
+responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+
+set_ssp_mode_passkey:
+60c7 70466202 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
+60c8 20600000 rtn 
+
+classic_bt_set_reject_justwork_flag:
+60c9 d8e00000 arg flag_ssp_reject_justwork ,queue 
+60ca 202060cd branch classic_bluetooth_set_flag 
+
+classic_bt_clr_reject_justwork_flag:
+60cb d8e00000 arg flag_ssp_reject_justwork ,queue 
+60cc 202060d1 branch classic_bluetooth_clr_flag 
+
+classic_bluetooth_set_flag:
+60cd 6800c55c fetch 1 ,mem_classic_bt_flag 
+60ce f9207e00 qset1 pdata 
+60cf 6000c55c store 1 ,mem_classic_bt_flag 
+60d0 20600000 rtn 
+
+classic_bluetooth_clr_flag:
+60d1 6800c55c fetch 1 ,mem_classic_bt_flag 
+60d2 f93ffe00 qset0 pdata 
+60d3 6000c55c store 1 ,mem_classic_bt_flag 
+60d4 20600000 rtn 
+
+send_lmp_io_cap_req:
+60d5 18000e05 force 5 ,queue 
+60d6 204062a0 call send_lmpext 
+60d7 6801c65b fetch 3 ,mem_sp_iocap_local 
+60d8 e0a18000 istore 3 ,contw 
+60d9 202062b2 branch send_lmp_request 
+
+send_lmpext_sniff_subrating_req:
+60da 20600000 rtn 
+
+send_lmpext_sniff_subrating_res:
+60db 18000e09 force 9 ,queue 
+60dc 204062a0 call send_lmpext 
+60dd 68008095 fetch 1 ,mem_subsniff_rate 
+60de e0a08000 istore 1 ,contw 
+60df 68010096 fetch 2 ,mem_subsniff_tcmax 
+60e0 e0a10000 istore 2 ,contw 
+60e1 68020091 fetch 4 ,mem_subsniff_instant 
+60e2 e0a20000 istore 4 ,contw 
+60e3 202062b0 branch send_lmp_reply 
+
+send_lmp_name_res:
+60e4 18007e11 force 17 ,pdata 
+60e5 20406298 call msg_send_lmp 
+60e6 68008049 fetch 1 ,mem_lmi_opcode 
+60e7 1fe20400 copy pdata ,temp 
+60e8 c00060ec beq 0x00 ,send_lmp_name_res_offset_ok 
+60e9 c00760ec beq 0x0e ,send_lmp_name_res_offset_ok 
+60ea c00e60ec beq 0x1c ,send_lmp_name_res_offset_ok 
+60eb 20600000 rtn 
+
+send_lmp_name_res_offset_ok:
+60ec e0a08000 istore 1 ,contw 
+60ed 6800c515 fetch 1 ,mem_local_name_length 
+60ee e0a08000 istore 1 ,contw 
+60ef df20000e arg 14 ,loopcnt 
+60f0 58004516 setarg mem_local_name 
+60f1 98408c00 iadd temp ,contr 
+60f2 20407f01 call memcpy 
+60f3 202062b0 branch send_lmp_reply 
+
+send_lmp_timing_accuracy_res:
+60f4 18007e03 force 3 ,pdata 
+60f5 20406298 call msg_send_lmp 
+60f6 58000114 setarg 0x0114 
+60f7 e0a10000 istore 2 ,contw 
+60f8 202062b0 branch send_lmp_reply 
+
+send_lmp_clkoffset_res:
+60f9 18007e03 force 3 ,pdata 
+60fa 20406298 call msg_send_lmp 
+60fb 68020165 fetch 4 ,mem_clke_bt 
+60fc 9c467e00 isub clkn_bt ,pdata 
+60fd 2034e0ff branch send_lmp_clkoffset_res_master ,master 
+60fe 1fe67e00 sub pdata ,0 ,pdata 
+
+send_lmp_clkoffset_res_master:
+60ff 1feb7e00 rshift2 pdata ,pdata 
+6100 793ffe0f set0 15 ,pdata 
+6101 e0a10000 istore 2 ,contw 
+6102 202062b0 branch send_lmp_reply 
+
+send_lmp_version_res:
+6103 18007e06 force 6 ,pdata 
+6104 20406298 call msg_send_lmp 
+6105 6802c510 fetch 5 ,mem_lmp_version 
+6106 e0a28000 istore 5 ,contw 
+6107 202062b0 branch send_lmp_reply 
+
+send_lmp_features_res:
+6108 18007e09 force 9 ,pdata 
+6109 20406298 call msg_send_lmp 
+610a 68044098 fetch 8 ,mem_features 
+610b e0a40000 istore 8 ,contw 
+610c 202062b0 branch send_lmp_reply 
+
+send_lmpext_features_req:
+610d 18000e0c force 12 ,queue 
+610e 204062a0 call send_lmpext 
+610f 58000001 setarg 0x01 
+6110 e0a08000 istore 1 ,contw 
+6111 680104ce fetch 2 ,mem_lmpext_ssp_enable 
+6112 e0a10000 istore 2 ,contw 
+6113 58000000 setarg 0 
+6114 e0a18000 istore 3 ,contw 
+6115 58000000 setarg 0x00 
+6116 e0a20000 istore 4 ,contw 
+6117 202062b2 branch send_lmp_request 
+
+send_lmpext_packet_type_table_req:
+6118 18000e03 force 3 ,queue 
+6119 204062a0 call send_lmpext 
+611a 6800c15a fetch 1 ,mem_ptt 
+611b e0a08000 istore 1 ,contw 
+611c 78547c00 disable user 
+611d 204062b2 call send_lmp_request 
+611e 24740000 nrtn user 
+611f 24748000 nrtn master 
+6120 6800c0d8 fetch 1 ,mem_afh_cfg 
+6121 c4000000 rtnbit0 afh_cfg_on 
+6122 20406132 call afh_init 
+6123 2020613c branch afh_open_all_channels 
+
+ssp_enable:
+6124 47424030 bpatchx patch30_4 ,mem_patch30 
+6125 6800c09e fetch 1 ,mem_features + 6 
+6126 79207e03 set1 param_featrue_ssp ,pdata 
+6127 6000c09e store 1 ,mem_features + 6 
+6128 58000101 setarg param_lmpext_ssp_enable 
+6129 600104ce store 2 ,mem_lmpext_ssp_enable 
+612a 20600000 rtn 
+
+ssp_disable:
+612b 4742c030 bpatchx patch30_5 ,mem_patch30 
+612c 6800c09e fetch 1 ,mem_features + 6 
+612d 793ffe03 set0 param_featrue_ssp ,pdata 
+612e 6000c09e store 1 ,mem_features + 6 
+612f 58000000 setarg 0 
+6130 600104ce store 2 ,mem_lmpext_ssp_enable 
+6131 20600000 rtn 
+
+afh_init:
+6132 7040d803 jam 0x3 ,mem_afh_cfg 
+6133 58000000 setarg 0 
+6134 60024142 store 4 ,mem_afh_timer 
+6135 d8a040da arg mem_afh_map_lo ,contw 
+6136 20406140 call afh_reset_map 
+6137 d8a040e7 arg mem_afh_map_new ,contw 
+6138 20406140 call afh_reset_map 
+6139 d8a04146 arg mem_afh_classify_channel_map ,contw 
+613a 20406140 call afh_reset_map 
+613b 20206147 branch afh_clear_error_counter 
+
+afh_open_all_channels:
+613c d8a040e7 arg mem_afh_map_new ,contw 
+613d 20406140 call afh_reset_map 
+613e 20406147 call afh_clear_error_counter 
+613f 2020614a branch afh_set_send_flag 
+
+afh_reset_map:
+6140 58ffffff setarg 0xffffff 
+6141 e0a18000 istore 3 ,contw 
+6142 e0a18000 istore 3 ,contw 
+6143 e0a18000 istore 3 ,contw 
+6144 5800007f setarg 0x7f 
+6145 e0a08000 istore 1 ,contw 
+6146 20600000 rtn 
+
+afh_clear_error_counter:
+6147 58000000 setarg 0 
+6148 600140d6 store 2 ,mem_afh_error_total 
+6149 20600000 rtn 
+
+afh_set_send_flag:
+614a 6800c0d8 fetch 1 ,mem_afh_cfg 
+614b 79207e02 set1 send_lmp_set_afh ,pdata 
+614c 6000c0d8 store 1 ,mem_afh_cfg 
+614d 20600000 rtn 
+
+send_lmpext_pause_encryption_req:
+614e 18000e02 force 2 ,queue 
+614f 204062a0 call send_lmpext 
+6150 2434e2b0 nbranch send_lmp_reply ,master 
+6151 202062b2 branch send_lmp_request 
+
+send_lmp_detach:
+6152 18007e02 force 2 ,pdata 
+6153 20406298 call msg_send_lmp 
+6154 680084ca fetch 1 ,mem_disconn_reason_send 
+6155 e0a08000 istore 1 ,contw 
+6156 204062b2 call send_lmp_request 
+
+prepare_disconnect:
+6157 6800804b fetch 1 ,mem_op 
+6158 79207e03 set1 op_disconn ,pdata 
+6159 6000804b store 1 ,mem_op 
+615a 70007232 jam 50 ,mem_conn_timer 
+615b 20600000 rtn 
+
+send_lmp_no_payload:
+615c 18007e01 force 1 ,pdata 
+615d 20406298 call msg_send_lmp 
+615e 202062b2 branch send_lmp_request 
+
+send_lmp_nopayload_reply:
+615f 18007e01 force 1 ,pdata 
+6160 20406298 call msg_send_lmp 
+6161 202062b0 branch send_lmp_reply 
+
+send_lmp_encryption_mode_req:
+6162 18007e02 force 2 ,pdata 
+6163 20406298 call msg_send_lmp 
+6164 6800804c fetch 1 ,mem_state_map 
+6165 2fec0002 isolate0 smap_encryption ,pdata 
+6166 7920fe00 setflag true ,0 ,pdata 
+6167 1fe17e01 and_into 1 ,pdata 
+6168 e0a08000 istore 1 ,contw 
+6169 202062b2 branch send_lmp_request 
+
+send_lmp_superto:
+616a 18007e03 force 3 ,pdata 
+616b 20406298 call msg_send_lmp 
+616c 68010051 fetch 2 ,mem_supervision_to 
+616d e0a10000 istore 2 ,contw 
+616e 202062b2 branch send_lmp_request 
+
+send_lmp_name_req:
+616f 700072fa jam 250 ,mem_conn_timer 
+6170 18007e02 force 2 ,pdata 
+6171 20406298 call msg_send_lmp 
+6172 68008053 fetch 1 ,mem_name_offset 
+6173 e0a08000 istore 1 ,contw 
+6174 202062b2 branch send_lmp_request 
+
+send_lmp_test_control:
+6175 18007e0a force 10 ,pdata 
+6176 20406298 call msg_send_lmp 
+6177 d8c00152 arg mem_temp_payload ,contr 
+6178 18007209 force 9 ,loopcnt 
+
+send_lmp_test_control_loop:
+6179 e8c08000 ifetch 1 ,contr 
+617a 1fe2fe55 xor_into 0x55 ,pdata 
+617b e0a08000 istore 1 ,contw 
+617c c2006179 loop send_lmp_test_control_loop 
+617d 202062b2 branch send_lmp_request 
+
+send_lmp_quality_of_service_req:
+617e 202062b2 branch send_lmp_request 
+
+send_lmp_unit_key:
+617f 202062b2 branch send_lmp_request 
+
+send_lmp_slot_offset:
+6180 20748000 rtn master 
+6181 2040282d call calc_slot_offset 
+6182 18007e09 force 9 ,pdata 
+6183 20406298 call msg_send_lmp 
+6184 68010171 fetch 2 ,mem_slot_offset 
+6185 e0a10000 istore 2 ,contw 
+6186 6801c0a0 fetch 3 ,mem_lap 
+6187 e0a18000 istore 3 ,contw 
+6188 6800c0a3 fetch 1 ,mem_uap 
+6189 e0a08000 istore 1 ,contw 
+618a 680140a4 fetch 2 ,mem_nap 
+618b e0a10000 istore 2 ,contw 
+618c c581e191 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
+618d 793f8003 set0 mark_switch_initiated ,mark 
+618e 204062b2 call send_lmp_request 
+618f 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+6190 20600000 rtn 
+
+send_lmp_slot_offset_reply:
+6191 204062b0 call send_lmp_reply 
+6192 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+6193 70007d13 jam lmp_switch_req ,mem_lmi_opcode2 
+6194 20600000 rtn 
+
+send_lmp_switch_req:
+6195 d8400200 arg 0x200 ,temp 
+6196 2034e199 branch switch_on_native ,master 
+6197 1d027e00 deposit clke_bt 
+6198 2020619a branch switch_slack 
+
+switch_on_native:
+6199 1c427e00 deposit clkn_bt 
+
+switch_slack:
+619a 1c227e00 deposit bt_clk 
+619b 9840fe00 iadd temp ,pdata 
+619c 1fe17ffc and_into 0x1fc ,pdata 
+619d 60020034 store 4 ,mem_sniff_anchor 
+619e 18007e05 force 5 ,pdata 
+619f 20406298 call msg_send_lmp 
+61a0 68020034 fetch 4 ,mem_sniff_anchor 
+61a1 1fe37e00 rshift pdata ,pdata 
+61a2 e0a20000 istore 4 ,contw 
+61a3 202062b2 branch send_lmp_request 
+
+send_lmp_sniff_req:
+61a4 18007e0a force 10 ,pdata 
+61a5 20406298 call msg_send_lmp 
+61a6 d8c004d9 arg mem_sniff_payload ,contr 
+61a7 e8c48000 ifetch 9 ,contr 
+61a8 e0a48000 istore 9 ,contw 
+61a9 202062b2 branch send_lmp_request 
+
+send_lmp_timing_accuracy_req:
+61aa 18007e03 force 3 ,pdata 
+61ab 20406298 call msg_send_lmp 
+61ac 58000114 setarg 0x0114 
+61ad e0a10000 istore 2 ,contw 
+61ae 202062b2 branch send_lmp_request 
+
+send_lmp_unsniff_req:
+61af 18007e01 force 1 ,pdata 
+61b0 20406298 call msg_send_lmp 
+61b1 202062b2 branch send_lmp_request 
+
+send_lmp_max_slot:
+61b2 18007e02 force 2 ,pdata 
+61b3 20406298 call msg_send_lmp 
+61b4 6800c0d0 fetch 1 ,mem_max_slot 
+61b5 e0a08000 istore 1 ,contw 
+61b6 202062b2 branch send_lmp_request 
+
+send_lmp_max_slot_req:
+61b7 18007e02 force 2 ,pdata 
+61b8 20406298 call msg_send_lmp 
+61b9 58000005 setarg 0x05 
+61ba e0a08000 istore 1 ,contw 
+61bb 202062b2 branch send_lmp_request 
+
+send_lmp_inc_power:
+61bc 18007e02 force 2 ,pdata 
+61bd 20406298 call msg_send_lmp 
+61be 58000000 setarg 0x00 
+61bf e0a08000 istore 1 ,contw 
+61c0 202062b2 branch send_lmp_request 
+
+send_lmp_setup_complete_by_module:
+61c1 70007c2e jam lmp_max_slot_req ,mem_lmo_opcode2 
+61c2 20600000 rtn 
+
+send_lmp_setup_complete:
+61c3 6800c092 fetch 1 ,mem_device_option 
+61c4 1fe67c0a sub pdata ,dvc_op_module ,null 
+61c5 2042e1c1 call send_lmp_setup_complete_by_module ,zero 
+61c6 68008030 fetch 1 ,mem_state 
+61c7 79207e04 set1 state_conn_comp ,pdata 
+61c8 60008030 store 1 ,mem_state 
+61c9 1c427e00 copy clkn_bt ,pdata 
+61ca 600204e9 store 4 ,mem_aurand_send_delay_time 
+61cb 680084d1 fetch 1 ,mem_lmp_conn_state 
+61cc c281e1d4 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
+61cd 79207e03 set1 sent_setup_complete ,pdata 
+61ce 600084d1 store 1 ,mem_lmp_conn_state 
+61cf 700a9905 jam bt_evt_setup_complete ,mem_fifo_temp 
+61d0 20407d86 call ui_ipc_send_event 
+61d1 18007e01 force 1 ,pdata 
+61d2 20406298 call msg_send_lmp 
+61d3 202062b2 branch send_lmp_request 
+
+send_lmp_setup_complete_has_sent:
+61d4 70004800 jam 0 ,mem_lmp_to_send 
+61d5 20600000 rtn 
+
+send_lmp_version_req:
+61d6 18007e06 force 6 ,pdata 
+61d7 20406298 call msg_send_lmp 
+61d8 6802c510 fetch 5 ,mem_lmp_version 
+61d9 e0a28000 istore 5 ,contw 
+61da 202062b2 branch send_lmp_request 
+
+send_lmp_features_req:
+61db 18007e09 force 9 ,pdata 
+61dc 20406298 call msg_send_lmp 
+61dd 68044098 fetch 8 ,mem_features 
+61de e0a40000 istore 8 ,contw 
+61df 202062b2 branch send_lmp_request 
+
+sp_master_send_io_cap_get:
+61e0 7009b101 jam sp_flag_commit ,mem_master_sp_flag 
+61e1 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+61e2 c1808000 rtnne sp_key_valid 
+61e3 7009af13 jam sp_master_stat_start_done ,mem_master_sp_state 
+61e4 20600000 rtn 
+
+sp_master_send_io_cap_send:
+61e5 204062ef call tid_initiate 
+61e6 70007c99 jam lmp_io_cap_req ,mem_lmo_opcode2 
+61e7 7009af03 jam sp_stat_key_send ,mem_master_sp_state 
+61e8 20600000 rtn 
+
+sp_master_send_lmp_encapsulated_header:
+61e9 204062ef call tid_initiate 
+61ea 70007c3d jam lmp_encapsulated_header ,mem_lmo_opcode2 
+61eb 7009af07 jam sp_stat_random_send ,mem_master_sp_state 
+61ec 20600000 rtn 
+
+sp_master_commitment_compare:
+61ed da200a4e arg mem_sp_calc_result_high ,rega 
+61ee da400a6e arg mem_sp_confirm_remote ,regb 
+61ef df200010 arg 16 ,loopcnt 
+61f0 20407f88 call string_compare 
+61f1 2022e1f7 branch sp_master_commitment_compare_success ,zero 
+61f2 7009af00 jam sp_stat_null ,mem_master_sp_state 
+61f3 204076da call master_clear_mem_master_sp_flag 
+61f4 70007e24 jam pdu_not_allowed ,mem_lmo_reason2 
+61f5 70007d40 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+61f6 20205d53 branch reject_lmp_packet 
+
+sp_master_commitment_compare_success:
+61f7 7009af0a jam sp_stat_confirm_calc ,mem_master_sp_state 
+61f8 204076d8 call master_set_mem_master_sp_flag 
+61f9 70007d40 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+61fa 20205e38 branch accept_lmp_msg 
+
+sp_master_send_lmp_simple_pairing_number:
+61fb 70007c40 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+61fc 20600000 rtn 
+
+sp_send_lmp_encapsulated_header:
+61fd 70007c3d jam lmp_encapsulated_header ,mem_lmo_opcode2 
+61fe 20600000 rtn 
+
+send_lmp_encapsulated_header:
+61ff 7009b600 jam 0 ,mem_sp_local_key_send_count 
+6200 18007e04 force 4 ,pdata 
+6201 20406298 call msg_send_lmp 
+6202 18007e01 force encapsulated_major_type_p192 ,pdata 
+6203 e0a08000 istore 1 ,contw 
+6204 18007e01 force encapsulated_minor_type_p192 ,pdata 
+6205 e0a08000 istore 1 ,contw 
+6206 18007e30 force encapsulated_len_p192 ,pdata 
+6207 e0a08000 istore 1 ,contw 
+6208 204062fc call check_localsm 
+6209 2020e2b2 branch send_lmp_request ,true 
+620a 202062b0 branch send_lmp_reply 
+
+send_lmp_encapsulated_payload:
+620b 18007e11 force 17 ,pdata 
+620c 20406298 call msg_send_lmp 
+620d 680089b6 fetch 1 ,mem_sp_local_key_send_count 
+620e d8c0462a arg mem_sp_pubkey_local ,contr 
+620f 98c08c00 iadd contr ,contr 
+6210 e8c40000 ifetch 8 ,contr 
+6211 e0a40000 istore 8 ,contw 
+6212 e8c40000 ifetch 8 ,contr 
+6213 e0a40000 istore 8 ,contw 
+6214 680089b6 fetch 1 ,mem_sp_local_key_send_count 
+6215 1fe0fe10 increase 16 ,pdata 
+6216 600089b6 store 1 ,mem_sp_local_key_send_count 
+6217 204062fc call check_localsm 
+6218 2020e2b2 branch send_lmp_request ,true 
+6219 202062b0 branch send_lmp_reply 
+
+sp_send_lmp_simple_pairing_comfirm:
+621a 7009ae06 jam sp_stat_random_recv ,mem_sp_state 
+621b 70007c3f jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
+621c 20600000 rtn 
+
+send_lmp_simple_pairing_comfirm:
+621d 18007e11 force 17 ,pdata 
+621e 20406298 call msg_send_lmp 
+621f d8c00a4e arg mem_sp_calc_result_high ,contr 
+6220 e8c40000 ifetch 8 ,contr 
+6221 e0a40000 istore 8 ,contw 
+6222 e8c40000 ifetch 8 ,contr 
+6223 e0a40000 istore 8 ,contw 
+6224 202062b0 branch send_lmp_reply 
+
+sp_send_lmp_simple_pairing_number:
+6225 70007c40 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+6226 20600000 rtn 
+
+send_lmp_simple_pairing_number:
+6227 204062fc call check_localsm 
+6228 2040f612 call sp_local_random_key_generator ,true 
+6229 18007e11 force 17 ,pdata 
+622a 20406298 call msg_send_lmp 
+622b d8c00a1e arg mem_sp_random_local ,contr 
+622c e8c40000 ifetch 8 ,contr 
+622d e0a40000 istore 8 ,contw 
+622e e8c40000 ifetch 8 ,contr 
+622f e0a40000 istore 8 ,contw 
+6230 204062fc call check_localsm 
+6231 2420e2b0 nbranch send_lmp_reply ,true 
+6232 2020e2b2 branch send_lmp_request ,true 
+
+master_sp_sm_end:
+6233 7009af0f jam sp_stat_done ,mem_master_sp_state 
+
+sp_aurand_send:
+6234 204062ef call tid_initiate 
+6235 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+6236 20406307 call check_localsm_master 
+6237 2020f64e branch sp_master_key_prarm_push ,true 
+6238 20207658 branch sp_link_key_prarm_push 
+
+master_sp_send_lmp_dhkey_check:
+6239 204062eb call tid_reply 
+
+sp_send_lmp_dhkey_check:
+623a 70007c41 jam lmp_dhkey_check ,mem_lmo_opcode2 
+623b 20600000 rtn 
+
+send_lmp_dhkey_check:
+623c 18007e11 force 17 ,pdata 
+623d 20406298 call msg_send_lmp 
+623e d8c00a4e arg mem_sp_calc_result_high ,contr 
+623f e8c40000 ifetch 8 ,contr 
+6240 e0a40000 istore 8 ,contw 
+6241 e8c40000 ifetch 8 ,contr 
+6242 e0a40000 istore 8 ,contw 
+6243 204062fc call check_localsm 
+6244 2420e2b0 nbranch send_lmp_reply ,true 
+6245 2020e2b2 branch send_lmp_request ,true 
+
+send_lmp_enc_key_size_mask_res:
+6246 18007e03 force 3 ,pdata 
+6247 20406298 call msg_send_lmp 
+6248 5800fffe setarg 0xfffe 
+6249 e0a10000 istore 2 ,contw 
+624a 202062b0 branch send_lmp_reply 
+
+send_lmp_auto_rate:
+624b 202062b2 branch send_lmp_request 
+
+send_lmp_clkoffset_req:
+624c 202062b2 branch send_lmp_request 
+
+send_lmp_quality_of_service:
+624d 202062b2 branch send_lmp_request 
+
+send_lmp_test_activate:
+624e 202062b2 branch send_lmp_request 
+
+send_lmp_comb_key:
+624f 2040630b call generate_random_number 
+6250 da2040a0 arg mem_lap ,rega 
+6251 20406311 call generate_linkkey 
+6252 18007e11 force 17 ,pdata 
+6253 20406298 call msg_send_lmp 
+6254 da200582 arg mem_kinit ,rega 
+6255 da400562 arg mem_random_number ,regb 
+6256 20407352 call xor16 
+6257 2434e2a7 nbranch send_lmp_follow ,master 
+6258 202062ad branch send_lmp_tid 
+
+send_lmp_inrand:
+6259 2040630b call generate_random_number 
+625a da200040 arg mem_plap ,rega 
+625b 20407255 call generate_kinit 
+
+send_lmp_rand:
+625c 18007e11 force 17 ,pdata 
+625d 20406298 call msg_send_lmp 
+625e d8c00562 arg mem_random_number ,contr 
+625f 20407ebf call memcpy16 
+6260 68008055 fetch 1 ,mem_conn_sm 
+6261 c00ce2b2 beq conn_sm_auth_wait ,send_lmp_request 
+6262 c00c62b2 beq conn_sm_pairing_wait ,send_lmp_request 
+6263 202062ad branch send_lmp_tid 
+
+send_lmp_aurand:
+6264 680089b5 fetch 1 ,mem_pairing_auth 
+6265 203a626a branch send_lmp_aurand_notpairing ,blank 
+6266 204062fc call check_localsm 
+6267 2040e2ef call tid_initiate ,true 
+6268 2440e2eb ncall tid_reply ,true 
+6269 2020626b branch send_lmp_aurand_common 
+
+send_lmp_aurand_notpairing:
+626a 204062ef call tid_initiate 
+
+send_lmp_aurand_common:
+626b 2040630b call generate_random_number 
+626c 2020625c branch send_lmp_rand 
+
+send_lmp_sres:
+626d da2040a0 arg mem_lap ,rega 
+626e 20407288 call function_e1 
+626f 18007e05 force 5 ,pdata 
+6270 20406298 call msg_send_lmp 
+6271 68020592 fetch 4 ,mem_input_store 
+6272 e0a20000 istore 4 ,contw 
+6273 d84004d5 arg mem_sres_tid ,temp 
+6274 204062e2 call special_tid_store 
+6275 20407386 call copy_aco 
+6276 204062fc call check_localsm 
+6277 2020e27c branch send_lmp_sres_master ,true 
+6278 7004d801 jam done_encryp ,mem_wait_encryption 
+6279 680089b5 fetch 1 ,mem_pairing_auth 
+627a 207a0000 rtn blank 
+627b 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+
+send_lmp_sres_master:
+627c 6800c1bd fetch 1 ,mem_link_key_exists 
+627d 207a0000 rtn blank 
+
+send_lmp_sres_startenc:
+627e 204062fc call check_localsm 
+627f 2420e284 nbranch send_lmp_sres_startenc_slave ,true 
+6280 680084d7 fetch 1 ,mem_auth_enable 
+6281 207a0000 rtn blank 
+6282 70007c0f jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+6283 20600000 rtn 
+
+send_lmp_sres_startenc_slave:
+6284 c6908000 rtnmark0 mark_slave_in_rand_accepted 
+6285 793f8021 set0 mark_slave_in_rand_accepted ,mark 
+6286 70007c0f jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+6287 20600000 rtn 
+
+send_lmp_start_encryption:
+6288 2040630b call generate_random_number 
+6289 2040728b call function_e3 
+628a 18007e11 force 17 ,pdata 
+628b 20406298 call msg_send_lmp 
+628c d8c00562 arg mem_random_number ,contr 
+628d 20407ebf call memcpy16 
+628e 202062ad branch send_lmp_tid 
+
+send_lmp_stop_encryption_req:
+628f 18007e01 force 1 ,pdata 
+6290 20406298 call msg_send_lmp 
+6291 202062ad branch send_lmp_tid 
+
+send_lmp_encryption_key_size_req:
+6292 18007e02 force 2 ,pdata 
+6293 20406298 call msg_send_lmp 
+6294 18007e10 force 16 ,pdata 
+6295 e0a08000 istore 1 ,contw 
+6296 60008054 store 1 ,mem_key_size 
+6297 202062ad branch send_lmp_tid 
+
+msg_send_lmp:
+6298 1fe9fe00 lshift3 pdata ,pdata 
+6299 1fe1fe07 or_into 0x07 ,pdata 
+629a 600084b6 store 1 ,mem_lmo_header_length 
+629b df200011 arg 17 ,loopcnt 
+629c d8a004b8 arg mem_lmo_payload ,contw 
+629d 20407ed4 call clear_mem 
+629e d8a004b8 arg mem_lmo_payload ,contw 
+629f 20600000 rtn 
+
+send_lmpext:
+62a0 1fe1227f and pdata ,0x7f ,rega 
+62a1 7000487f jam lmp_escape ,mem_lmp_to_send 
+62a2 18e27e00 deposit queue 
+62a3 20406298 call msg_send_lmp 
+62a4 1a227e00 deposit rega 
+62a5 e0a08000 istore 1 ,contw 
+62a6 20600000 rtn 
+
+send_lmp_follow:
+62a7 68008048 fetch 1 ,mem_lmp_to_send 
+62a8 1fe3fe00 lshift pdata ,pdata 
+62a9 6808804c fetcht 1 ,mem_state_map 
+62aa 284ffe01 isolate1 smap_lmptid ,temp 
+62ab 7920fe00 setflag true ,0 ,pdata 
+62ac 202062b7 branch send_lmp_exit 
+
+send_lmp_tid:
+62ad 6808804c fetcht 1 ,mem_state_map 
+62ae 18410401 and_into 1 ,temp 
+62af 202062b3 branch send_lmp_end 
+
+send_lmp_reply:
+62b0 18000400 force 0 ,temp 
+62b1 202062b3 branch send_lmp_end 
+
+send_lmp_request:
+62b2 18000401 force 1 ,temp 
+
+send_lmp_end:
+62b3 68008048 fetch 1 ,mem_lmp_to_send 
+62b4 1fe3fe00 lshift pdata ,pdata 
+62b5 7934fe00 setflag master ,0 ,pdata 
+62b6 9842fe00 ixor temp ,pdata 
+
+send_lmp_exit:
+62b7 600084b7 store 1 ,mem_lmo_header_opcode 
+62b8 70004800 jam 0 ,mem_lmp_to_send 
+62b9 204062c7 call lmo_fifo_process_lmo0empty 
+62ba 78347c00 enable user 
+62bb 20600000 rtn 
+
+lmo_fifo_check:
+62bc 6800807c fetch 1 ,mem_lmo_opcode2 
+62bd 207a0000 rtn blank 
+62be 204062c1 call lmo_fifo_process 
+62bf 6800807c fetch 1 ,mem_lmo_opcode2 
+62c0 20600000 rtn 
+
+lmo_fifo_process:
+62c1 47434030 bpatchx patch30_6 ,mem_patch30 
+62c2 68008048 fetch 1 ,mem_lmp_to_send 
+62c3 203a62c7 branch lmo_fifo_process_lmo0empty ,blank 
+62c4 68008078 fetch 1 ,mem_lmo_opcode1 
+62c5 247a0000 nrtn blank 
+62c6 202062d1 branch lmo_fifo_process_lmo2to1 
+
+lmo_fifo_process_lmo0empty:
+62c7 68008078 fetch 1 ,mem_lmo_opcode1 
+62c8 203a62d7 branch lmo_fifo_process_lmo1_empty ,blank 
+62c9 68018078 fetch 3 ,mem_lmo_opcode1 
+62ca 60018048 store 3 ,mem_lmp_to_send 
+62cb 6808807b fetcht 1 ,mem_lmo_tid1 
+62cc 6800804c fetch 1 ,mem_state_map 
+62cd 793ffe01 set0 smap_lmptid ,pdata 
+62ce 9841fe00 ior temp ,pdata 
+62cf 6000804c store 1 ,mem_state_map 
+62d0 70007800 jam 0 ,mem_lmo_opcode1 
+
+lmo_fifo_process_lmo2to1:
+62d1 6800807c fetch 1 ,mem_lmo_opcode2 
+62d2 207a0000 rtn blank 
+62d3 6802007c fetch 4 ,mem_lmo_opcode2 
+62d4 60020078 store 4 ,mem_lmo_opcode1 
+62d5 70007c00 jam 0 ,mem_lmo_opcode2 
+62d6 20600000 rtn 
+
+lmo_fifo_process_lmo1_empty:
+62d7 6800807c fetch 1 ,mem_lmo_opcode2 
+62d8 207a0000 rtn blank 
+62d9 6801807c fetch 3 ,mem_lmo_opcode2 
+62da 60018048 store 3 ,mem_lmp_to_send 
+62db 6808807f fetcht 1 ,mem_lmo_tid2 
+62dc 6800804c fetch 1 ,mem_state_map 
+62dd 793ffe01 set0 smap_lmptid ,pdata 
+62de 9841fe00 ior temp ,pdata 
+62df 6000804c store 1 ,mem_state_map 
+62e0 70007c00 jam 0 ,mem_lmo_opcode2 
+62e1 20600000 rtn 
+
+special_tid_store:
+62e2 4743c030 bpatchx patch30_7 ,mem_patch30 
+62e3 6800804c fetch 1 ,mem_state_map 
+62e4 1fe22600 copy pdata ,regc 
+62e5 e8408000 ifetch 1 ,temp 
+62e6 20405e52 call pop_tid_follow 
+62e7 204062a7 call send_lmp_follow 
+62e8 1a627e00 copy regc ,pdata 
+62e9 6000804c store 1 ,mem_state_map 
+62ea 20600000 rtn 
+
+tid_reply:
+62eb 6808804c fetcht 1 ,mem_state_map 
+62ec 793f8400 set0 smap_lmptidinit ,temp 
+62ed 6008804c storet 1 ,mem_state_map 
+62ee 20600000 rtn 
+
+tid_initiate:
+62ef 6808804c fetcht 1 ,mem_state_map 
+62f0 79200400 set1 smap_lmptidinit ,temp 
+62f1 6008804c storet 1 ,mem_state_map 
+62f2 20600000 rtn 
+
+tid_check:
+62f3 7d34fe01 nsetflag master ,smap_lmptid ,pdata 
+62f4 6808804c fetcht 1 ,mem_state_map 
+62f5 9842fe00 ixor temp ,pdata 
+62f6 2feffe01 isolate1 smap_lmptid ,pdata 
+62f7 20600000 rtn 
+
+tid_set_reply:
+62f8 6800804c fetch 1 ,mem_state_map 
+62f9 7934fe01 setflag master ,smap_lmptid ,pdata 
+62fa 6000804c store 1 ,mem_state_map 
+62fb 20600000 rtn 
+
+check_localsm:
+62fc 680089b4 fetch 1 ,mem_sp_localsm 
+62fd 2fe0fe01 compare local_statemachine ,pdata ,0x7f 
+62fe 20600000 rtn 
+
+setlocalsm_master:
+62ff 680089b4 fetch 1 ,mem_sp_localsm 
+6300 79207e07 set1 7 ,pdata 
+6301 600089b4 store 1 ,mem_sp_localsm 
+6302 20600000 rtn 
+
+setlocalsm_slave:
+6303 680089b4 fetch 1 ,mem_sp_localsm 
+6304 793ffe07 set0 7 ,pdata 
+6305 600089b4 store 1 ,mem_sp_localsm 
+6306 20600000 rtn 
+
+check_localsm_master:
+6307 680089b4 fetch 1 ,mem_sp_localsm 
+6308 2feffe07 isolate1 7 ,pdata 
+6309 600089b4 store 1 ,mem_sp_localsm 
+630a 20600000 rtn 
+
+generate_random_number:
+630b d8a00562 arg mem_random_number ,contw 
+
+generate_random:
+630c 18007210 force 16 ,loopcnt 
+
+generate_random_another:
+
+generate_random_loop:
+630d 180a7e00 random pdata 
+630e e0a08000 istore 1 ,contw 
+630f c200630d loop generate_random_another 
+6310 20600000 rtn 
+
+generate_linkkey:
+6311 20407259 call function_e21 
+6312 da2041be arg mem_link_key ,rega 
+6313 da400592 arg mem_input_store ,regb 
+6314 ea240000 ifetch 8 ,rega 
+6315 68088030 fetcht 1 ,mem_state 
+6316 7d3a0406 nsetflag blank ,state_combkey ,temp 
+6317 60088030 storet 1 ,mem_state 
+6318 1a220a00 copy rega ,contw 
+6319 20407352 call xor16 
+631a 202021c4 branch generate_linkkey_continue 
+
+process_conn_sm:
+631b 47444031 bpatchx patch31_0 ,mem_patch31 
+631c 204062bc call lmo_fifo_check 
+631d 247a0000 nrtn blank 
+
+process_conn_sm_continue:
+631e 68008055 fetch 1 ,mem_conn_sm 
+631f 207a0000 rtn blank 
+6320 c002636f beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
+6321 c002e374 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
+6322 c0016366 beq conn_sm_send_features ,host_create_conn_send_features 
+6323 c001e37c beq conn_sm_wait_features_res ,host_create_conn_waiting 
+6324 c0076369 beq conn_sm_send_switch ,host_create_conn_send_switch 
+6325 c0036398 beq conn_sm_auth_pair ,host_create_conn_auth_pair 
+6326 c003e3b0 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
+6327 c004e3b1 beq conn_sm_encrypt ,host_create_conn_encrypt 
+6328 c00563ba beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
+6329 c005e3be beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
+632a c0066386 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
+632b c006e389 beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
+632c c007e38f beq conn_sm_detach_delay ,host_create_conn_master_detach 
+632d c0096359 beq conn_sm_send_version ,host_create_conn_send_version 
+632e c009e37c beq conn_sm_wait_version ,host_create_conn_waiting 
+632f c008635c beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
+6330 c00a6356 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
+6331 c00ae37c beq conn_sm_wait_features_ext ,host_create_conn_waiting 
+6332 c00b6350 beq conn_sm_pairing ,host_create_conn_pairing 
+6333 c00c6355 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
+6334 c00be349 beq conn_sm_auth ,host_create_conn_auth 
+6335 c00ce34f beq conn_sm_auth_wait ,host_create_conn_auth_wait 
+6336 c00d633a beq conn_sm_done ,host_create_conn_done 
+6337 c00de344 beq conn_sm_wait_done ,host_create_conn_done_wait 
+6338 70005500 jam conn_sm_standby ,mem_conn_sm 
+6339 20600000 rtn 
+
+host_create_conn_done:
+633a 680084d1 fetch 1 ,mem_lmp_conn_state 
+633b c4010000 rtnbit0 received_setup_complete 
+633c c4018000 rtnbit0 sent_setup_complete 
+633d 70005500 jam conn_sm_standby ,mem_conn_sm 
+633e 20406340 call host_conn_judge_encrypt 
+633f 20206cef branch scheduler_start_upper_sm 
+
+host_conn_judge_encrypt:
+6340 6800816d fetch 1 ,mem_connection_options 
+6341 c4008000 rtnbit0 connection_encrypt 
+6342 7000550a jam conn_sm_encrypt_wait ,mem_conn_sm 
+6343 20600000 rtn 
+
+host_create_conn_done_wait:
+6344 d8e00007 arg enpt_delay_timer ,queue 
+6345 20407f16 call timer_check 
+6346 247a0000 nrtn blank 
+6347 7000551a jam conn_sm_done ,mem_conn_sm 
+6348 20600000 rtn 
+
+host_create_conn_auth:
+6349 6800816d fetch 1 ,mem_connection_options 
+634a 793ffe00 set0 connection_auth ,pdata 
+634b 6000816d store 1 ,mem_connection_options 
+634c 70005519 jam conn_sm_auth_wait ,mem_conn_sm 
+634d 70007c0b jam lmp_au_rand ,mem_lmo_opcode2 
+634e 20600000 rtn 
+
+host_create_conn_auth_wait:
+634f 20600000 rtn 
+
+host_create_conn_pairing:
+6350 680084d4 fetch 1 ,mem_pincode_state 
+6351 c1810000 rtnne pincode_state_pincode_ready 
+6352 204063c0 call host_auth 
+6353 70005518 jam conn_sm_pairing_wait ,mem_conn_sm 
+6354 20600000 rtn 
+
+host_create_conn_pairing_wait:
+6355 20600000 rtn 
+
+host_creat_conn_send_feat_ext:
+6356 70005515 jam conn_sm_wait_features_ext ,mem_conn_sm 
+6357 70007c83 jam lmp_ext_features_req ,mem_lmo_opcode2 
+6358 20600000 rtn 
+
+host_create_conn_send_version:
+6359 70005513 jam conn_sm_wait_version ,mem_conn_sm 
+635a 70007c25 jam lmp_version_req ,mem_lmo_opcode2 
+635b 20600000 rtn 
+
+host_creat_conn_wait_switch:
+635c 6800c55b fetch 1 ,mem_switch_flag 
+635d c1000000 rtneq switch_flag_init 
+635e c000e364 beq switch_flag_accept ,host_create_conn_switch_accept 
+635f d8e00006 arg switch_wait_timer ,queue 
+6360 20407f16 call timer_check 
+6361 247a0000 nrtn blank 
+6362 70455b00 jam switch_flag_init ,mem_switch_flag 
+6363 2020637d branch host_create_conn_switch 
+
+host_create_conn_switch_accept:
+6364 20748000 rtn master 
+6365 20206398 branch host_create_conn_auth_pair 
+
+host_create_conn_send_features:
+6366 70005503 jam conn_sm_wait_features_res ,mem_conn_sm 
+6367 70007c27 jam lmp_features_req ,mem_lmo_opcode2 
+6368 20600000 rtn 
+
+host_create_conn_send_switch:
+6369 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+636a 79200003 set1 mark_switch_initiated ,mark 
+636b 70005505 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+636c 580001ff setarg 0x1ff 
+636d 600104d2 store 2 ,mem_soft_timer 
+636e 20600000 rtn 
+
+host_create_conn_send_conn_req:
+636f 70005505 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+6370 7004d2ff jam 0xff ,mem_soft_timer 
+6371 793f8022 set0 mark_reconn_recieve_switch ,mark 
+6372 70007c33 jam lmp_host_connection_req ,mem_lmo_opcode2 
+6373 20205d04 branch init_lmp_reinit 
+
+host_create_conn_wait_accept:
+6374 c6110000 rtnmark1 mark_reconn_recieve_switch 
+6375 680104d2 fetch 2 ,mem_soft_timer 
+6376 1fe67e01 sub pdata ,1 ,pdata 
+6377 2022e37a branch host_create_conn_resend ,zero 
+6378 600104d2 store 2 ,mem_soft_timer 
+6379 20600000 rtn 
+
+host_create_conn_resend:
+637a 7000550e jam conn_sm_send_switch ,mem_conn_sm 
+637b 20600000 rtn 
+
+host_create_conn_waiting:
+637c 20600000 rtn 
+
+host_create_conn_switch:
+637d 680084d1 fetch 1 ,mem_lmp_conn_state 
+637e c4018000 rtnbit0 sent_setup_complete 
+637f c4010000 rtnbit0 received_setup_complete 
+6380 6800816d fetch 1 ,mem_connection_options 
+6381 793ffe02 set0 connection_switch ,pdata 
+6382 6000816d store 1 ,mem_connection_options 
+6383 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+6384 70005510 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
+6385 20600000 rtn 
+
+host_create_conn_send_setup_complete:
+6386 7000550d jam conn_sm_wait_setup_complete ,mem_conn_sm 
+6387 70007c31 jam lmp_setup_complete ,mem_lmo_opcode2 
+6388 20600000 rtn 
+
+host_create_conn_wait_setup_complete:
+6389 680084d1 fetch 1 ,mem_lmp_conn_state 
+638a c4010000 rtnbit0 received_setup_complete 
+638b 70005500 jam conn_sm_standby ,mem_conn_sm 
+638c 20600000 rtn 
+
+host_create_conn_wait_setup_complete_rtn:
+638d 70005506 jam conn_sm_auth_pair ,mem_conn_sm 
+638e 20600000 rtn 
+
+host_create_conn_master_detach:
+638f 680084d2 fetch 1 ,mem_soft_timer 
+6390 1fe0ffff increase -1 ,pdata 
+6391 203a6394 branch host_create_conn_send_detach ,blank 
+6392 600084d2 store 1 ,mem_soft_timer 
+6393 20600000 rtn 
+
+host_create_conn_send_detach:
+6394 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+6395 7004ca16 jam local_host ,mem_disconn_reason_send 
+6396 70005500 jam 0 ,mem_conn_sm 
+6397 20600000 rtn 
+
+host_create_conn_auth_pair:
+6398 6800816d fetch 1 ,mem_connection_options 
+6399 c281637d bbit1 connection_switch ,host_create_conn_switch 
+639a c280639d bbit1 connection_auth ,host_create_conn_auth_pair_true 
+
+host_create_conn_sm_done:
+639b 7000551a jam conn_sm_done ,mem_conn_sm 
+639c 20600000 rtn 
+
+host_create_conn_auth_pair_true:
+639d 6800c1bd fetch 1 ,mem_link_key_exists 
+639e 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
+639f 680084d1 fetch 1 ,mem_lmp_conn_state 
+63a0 c4018000 rtnbit0 sent_setup_complete 
+63a1 c4010000 rtnbit0 received_setup_complete 
+63a2 680204e9 fetch 4 ,mem_aurand_send_delay_time 
+63a3 d8400064 arg 100 ,temp 
+63a4 98408400 iadd temp ,temp 
+63a5 1c427e00 copy clkn_bt ,pdata 
+63a6 98467c00 isub temp ,null 
+63a7 24610000 nrtn positive 
+63a8 20206349 branch host_create_conn_auth 
+
+host_create_conn_auth_pair_nokey:
+63a9 70005516 jam conn_sm_pairing ,mem_conn_sm 
+63aa 70468904 jam 4 ,mem_pin_length 
+63ab 58003030 setarg 0x3030 
+63ac 6001468a store 2 ,mem_pin 
+63ad e0a10000 istore 2 ,contw 
+63ae 7004d402 jam pincode_state_pincode_ready ,mem_pincode_state 
+63af 20206350 branch host_create_conn_pairing 
+
+host_create_conn_auth_pair_wait:
+63b0 20600000 rtn 
+
+host_create_conn_encrypt:
+63b1 6800816d fetch 1 ,mem_connection_options 
+63b2 c280e3b5 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
+63b3 7000551a jam conn_sm_done ,mem_conn_sm 
+63b4 20600000 rtn 
+
+host_create_conn_encrypt_start:
+63b5 6800816d fetch 1 ,mem_connection_options 
+63b6 793ffe01 set0 connection_encrypt ,pdata 
+63b7 6000816d store 1 ,mem_connection_options 
+63b8 70007c0f jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+63b9 20600000 rtn 
+
+host_create_conn_encrypt_wait:
+63ba 680084d8 fetch 1 ,mem_wait_encryption 
+63bb 207a0000 rtn blank 
+63bc 70005500 jam conn_sm_standby ,mem_conn_sm 
+63bd 202063b5 branch host_create_conn_encrypt_start 
+
+host_create_conn_encrypt_wait_clear:
+63be 7000550c jam conn_sm_send_setup_complete ,mem_conn_sm 
+63bf 20600000 rtn 
+
+host_auth:
+63c0 6800804b fetch 1 ,mem_op 
+63c1 c28163c5 bbit1 op_inrand_req ,remote_auth 
+63c2 204062ef call tid_initiate 
+63c3 70007c08 jam lmp_in_rand ,mem_lmo_opcode2 
+63c4 20204d04 branch cmd_exit 
+
+remote_auth:
+63c5 6800804b fetch 1 ,mem_op 
+63c6 793ffe02 set0 op_inrand_req ,pdata 
+63c7 6000804b store 1 ,mem_op 
+63c8 20406001 call lmp_accept_inrand 
+63c9 204062f8 call tid_set_reply 
+63ca 20204d04 branch cmd_exit 
+
+pincode_reinit:
+63cb 58000004 setarg 4 
+63cc 6000c689 store 1 ,mem_pin_length 
+63cd 58003030 setarg 0x3030 
+63ce e0a10000 istore 2 ,contw 
+63cf e0a10000 istore 2 ,contw 
+63d0 20600000 rtn 
+
+twspi_reset:
+63d1 47464031 bpatchx patch31_4 ,mem_patch31 
+63d2 68108073 hfetch 1 ,core_gpio_oe3 
+63d3 d8400006 arg 0x06 ,temp 
+63d4 9841fe00 ior temp ,pdata 
+63d5 60108073 hstore 1 ,core_gpio_oe3 
+63d6 68108077 hfetch 1 ,core_gpio_out3 
+63d7 9841fe00 ior temp ,pdata 
+63d8 60108077 hstore 1 ,core_gpio_out3 
+63d9 204063ee call twspi_disable 
+63da 68108077 hfetch 1 ,core_gpio_out3 
+63db 793ffe01 set0 1 ,pdata 
+63dc 793ffe02 set0 2 ,pdata 
+63dd 60108077 hstore 1 ,core_gpio_out3 
+63de 2000001e nop 30 
+63df 202063f2 branch twspi_enable 
+
+twspi_reset2:
+63e0 68108073 hfetch 1 ,core_gpio_oe3 
+63e1 d84000c0 arg 0xc0 ,temp 
+63e2 9841fe00 ior temp ,pdata 
+63e3 60108073 hstore 1 ,core_gpio_oe3 
+63e4 68108077 hfetch 1 ,core_gpio_out3 
+63e5 9841fe00 ior temp ,pdata 
+63e6 60108077 hstore 1 ,core_gpio_out3 
+63e7 204063ee call twspi_disable 
+63e8 68108077 hfetch 1 ,core_gpio_out3 
+63e9 793ffe06 set0 6 ,pdata 
+63ea 793ffe07 set0 7 ,pdata 
+63eb 60108077 hstore 1 ,core_gpio_out3 
+63ec 2000001e nop 30 
+63ed 202063f6 branch twspi_enable2 
+
+twspi_disable:
+63ee 68108081 hfetch 1 ,core_gpio_sel1 
+63ef 1fe17efc and pdata ,0xfc ,pdata 
+63f0 60108081 hstore 1 ,core_gpio_sel1 
+63f1 20600000 rtn 
+
+twspi_enable:
+63f2 68108081 hfetch 1 ,core_gpio_sel1 
+63f3 1fe1fe01 or pdata ,0x01 ,pdata 
+63f4 60108081 hstore 1 ,core_gpio_sel1 
+63f5 20600000 rtn 
+
+twspi_enable2:
+63f6 68108081 hfetch 1 ,core_gpio_sel1 
+63f7 1fe1fe03 or pdata ,0x03 ,pdata 
+63f8 793ffe04 set0 4 ,pdata 
+63f9 60108081 hstore 1 ,core_gpio_sel1 
+63fa 20600000 rtn 
+
+sensor_read:
+63fb 1fe22400 copy pdata ,regb 
+63fc 2040640f call spi_ncs_enable 
+63fd 20000064 nop 100 
+63fe 1a427e00 copy regb ,pdata 
+63ff 20406414 call twspi_read 
+6400 1fe22400 copy pdata ,regb 
+6401 20406411 call spi_ncs_disable 
+6402 20000064 nop 100 
+6403 1a427e00 copy regb ,pdata 
+6404 20600000 rtn 
+
+sensor_write:
+6405 1fe22400 copy pdata ,regb 
+6406 2040640f call spi_ncs_enable 
+6407 20000064 nop 100 
+6408 1a427e00 copy regb ,pdata 
+6409 20406413 call twspi_write 
+640a 20406411 call spi_ncs_disable 
+640b 20000064 nop 100 
+640c 20600000 rtn 
+
+spi_ncs_gpio_init:
+640d 6808c214 fetcht 1 ,mem_spi_ncs_gpio 
+640e 2020680e branch gpio_config_output 
+
+spi_ncs_enable:
+640f 6808c214 fetcht 1 ,mem_spi_ncs_gpio 
+6410 20206829 branch gpio_out_active 
+
+spi_ncs_disable:
+6411 6808c214 fetcht 1 ,mem_spi_ncs_gpio 
+6412 20206825 branch gpio_out_inactive 
+
+twspi_write:
+6413 202064ec branch spid_write_reg 
+
+twspi_read:
+6414 202064f3 branch spid_read_reg 
+
+read_function_aes:
+6415 24346419 nbranch read_function ,user 
+6416 68108085 hfetch 1 ,core_gpio_key2 
+6417 1fe1fe02 or_into 0x2 ,pdata 
+6418 60108085 hstore 1 ,core_gpio_key2 
+
+read_function:
+6419 18427c00 copy temp ,null 
+641a 2022e41c branch read_fuction_zero ,zero 
+641b 1a627a00 copy regc ,pc 
+
+read_fuction_zero:
+641c 2fcc0000 isolate0 0 ,null 
+641d 202064b9 branch set_ucode_status 
+
+get_block_header:
+641e 18000404 force 4 ,temp 
+
+get_block_header0:
+641f da2001fe arg mem_ucode_buf ,rega 
+6420 68108085 hfetch 1 ,core_gpio_key2 
+6421 1fe17efd and_into 0xfd ,pdata 
+6422 60108085 hstore 1 ,core_gpio_key2 
+6423 20406419 call read_function 
+6424 da2055aa arg 0x55aa ,rega 
+6425 680101fe fetch 2 ,mem_ucode_buf 
+6426 e8c90000 ifetcht 2 ,contr 
+6427 9a267c00 isub rega ,null 
+6428 20600000 rtn 
+
+read_first_block:
+6429 d8400002 arg 2 ,temp 
+642a da200204 arg mem_ucode_ptr ,rega 
+642b 20406419 call read_function 
+642c 68010204 fetch 2 ,mem_ucode_ptr 
+642d 600101f7 store 2 ,mem_addr_mi 
+642e 20546430 call get_iv ,user 
+642f 20600000 rtn 
+
+get_iv:
+6430 d8400010 arg 16 ,temp 
+6431 da200206 arg mem_ucode_keybuf ,rega 
+6432 68108085 hfetch 1 ,core_gpio_key2 
+6433 1fe17efd and_into 0xfd ,pdata 
+6434 60108085 hstore 1 ,core_gpio_key2 
+6435 20406419 call read_function 
+6436 d8c00206 arg mem_ucode_keybuf ,contr 
+6437 df200010 arg 16 ,loopcnt 
+6438 20407478 call aes_load_data 
+6439 20407428 call aes_init 
+643a 20407491 call aes_clear_data 
+643b 20207422 branch do_aes_cbc 
+
+load_storage:
+643c 7856fc00 disable match 
+643d 2040641e call get_block_header 
+643e 24628000 nrtn zero 
+643f 7836fc00 enable match 
+6440 70802380 jam 0x80 ,core_ucode_ctrl 
+6441 70802200 jam 0 ,core_ucode_hi 
+6442 70802400 jam 0 ,core_ucode_low 
+6443 da208025 arg core_ucode_data ,rega 
+6444 20406415 call read_function_aes 
+6445 70802300 jam 0x0 ,core_ucode_ctrl 
+
+load_storage_loop:
+6446 d8400006 arg 6 ,temp 
+6447 2040641f call get_block_header0 
+6448 24628000 nrtn zero 
+6449 e8c10000 ifetch 2 ,contr 
+644a 98002200 iforce rega 
+644b 20406419 call read_function 
+644c 20206446 branch load_storage_loop 
+
+reload_eeprom:
+644d 20407f99 call clean_mem 
+644e 58001000 setarg 0x1000 
+644f 600101f7 store 2 ,mem_addr_mi 
+6450 da6065e5 arg iicd_read_eep ,regc 
+6451 df200002 arg 2 ,loopcnt 
+
+reload_eeprom_loop:
+6452 2040641e call get_block_header 
+6453 24628000 nrtn zero 
+6454 680101f7 fetch 2 ,mem_addr_mi 
+6455 1ff0fe00 byteswap pdata ,pdata 
+6456 9840fe00 iadd temp ,pdata 
+6457 1ff0fe00 byteswap pdata ,pdata 
+6458 600101f7 store 2 ,mem_addr_mi 
+6459 c2006452 loop reload_eeprom_loop 
+645a 20206446 branch load_storage_loop 
+
+loadcode:
+645b 20407f99 call clean_mem 
+645c 78547c00 disable user 
+645d 2040666a call otp_enable_chgpump 
+645e 58000000 setarg otp_ucode_flag 
+645f da2001f3 arg mem_otp_ucode_flag ,rega 
+6460 d8400002 arg 2 ,temp 
+6461 204066b3 call otpd_read_data 
+6462 680101f3 fetch 2 ,mem_otp_ucode_flag 
+6463 c303e46e bbit0 otp_uflag_aes ,loadcode_otp 
+6464 70805025 jam 0x25 ,core_clkoff 
+6465 580007f0 setarg otp_ucode_aeskey 
+6466 da200206 arg mem_ucode_keybuf ,rega 
+6467 d8400010 arg 16 ,temp 
+6468 204066b3 call otpd_read_data 
+6469 70800608 jam lock_otp ,core_misc_ctrl 
+646a 7920002b set1 mark_otp_encrypt ,mark 
+646b d8c00206 arg mem_ucode_keybuf ,contr 
+646c 20407484 call load_key 
+646d 78347c00 enable user 
+
+loadcode_otp:
+646e 7041da00 jam 0 ,mem_loadcode_times 
+
+loadcode_otp_2:
+646f 204064b0 call loadcode_check_times 
+6470 680101f3 fetch 2 ,mem_otp_ucode_flag 
+6471 1ff0fe00 byteswap pdata ,pdata 
+6472 d84007ff arg 0x7ff ,temp 
+6473 98417e00 iand temp ,pdata 
+6474 2022e47b branch loadcode_iic ,zero 
+6475 2040666f call otp_set_addr 
+6476 da6066b8 arg otpd_read_code ,regc 
+6477 20546430 call get_iv ,user 
+6478 2040643c call load_storage 
+6479 680081f2 fetch 1 ,mem_ucode_status 
+647a c300646f bbit0 0 ,loadcode_otp_2 
+
+loadcode_iic:
+647b 2040666d call otp_disable_chgpump 
+647c 7041da00 jam 0 ,mem_loadcode_times 
+
+loadcode_iic_2:
+647d 204064b0 call loadcode_check_times 
+647e 204065c2 call clear_eeprom_size_2k 
+647f 680081f3 fetch 1 ,mem_otp_ucode_flag 
+6480 c283648e bbit1 otp_uflag_skip_eep ,loadcode_spi 
+6481 204064aa call loadcode_iic_by_eeprom 
+6482 2436e486 nbranch loadcode_iic_eeprom_2k ,match 
+6483 680081f2 fetch 1 ,mem_ucode_status 
+6484 c300647d bbit0 0 ,loadcode_iic_2 
+6485 2020649b branch loadcode_hci 
+
+loadcode_iic_eeprom_2k:
+6486 204065bf call set_eeprom_size_2k 
+6487 680081f3 fetch 1 ,mem_otp_ucode_flag 
+6488 c283648e bbit1 otp_uflag_skip_eep ,loadcode_spi 
+6489 204064aa call loadcode_iic_by_eeprom 
+648a 2436e48e nbranch loadcode_spi ,match 
+648b 680081f2 fetch 1 ,mem_ucode_status 
+648c c300647d bbit0 0 ,loadcode_iic_2 
+648d 2020649b branch loadcode_hci 
+
+loadcode_spi:
+648e 7041da00 jam 0 ,mem_loadcode_times 
+
+loadcode_spi_2:
+648f 204064b0 call loadcode_check_times 
+6490 680081f3 fetch 1 ,mem_otp_ucode_flag 
+6491 c282e49b bbit1 otp_uflag_skip_flash ,loadcode_hci 
+6492 58000000 setarg 0x0 
+6493 600181f6 store 3 ,mem_addr_hi 
+6494 20406502 call spid_init_flash 
+6495 da606578 arg spid_load_flash ,regc 
+6496 20406429 call read_first_block 
+6497 2040643c call load_storage 
+6498 2436e49b nbranch loadcode_hci ,match 
+6499 680081f2 fetch 1 ,mem_ucode_status 
+649a c300648f bbit0 0 ,loadcode_spi_2 
+
+loadcode_hci:
+649b c515e49d bmark1 mark_otp_encrypt ,loadcode_hci_enc 
+649c 204064a3 call clear_key_buf 
+
+loadcode_hci_enc:
+649d 680081f3 fetch 1 ,mem_otp_ucode_flag 
+649e c30264a3 bbit0 otp_uflag_hci ,clear_key_buf 
+649f 70805021 jam 0x21 ,core_clkoff 
+64a0 20404c0e call hci_init 
+
+loadcode_hci_loop:
+64a1 20404c2e call hci_rx_packet 
+64a2 202064a1 branch loadcode_hci_loop 
+
+clear_key_buf:
+64a3 58000000 setarg 0 
+64a4 60040206 store 8 ,mem_ucode_keybuf 
+64a5 6004020e store 8 ,mem_ucode_keybuf + 8 
+64a6 18007004 force regidx_key ,regext_index 
+64a7 20407492 call aes_clear 
+64a8 70805021 jam 0x21 ,core_clkoff 
+64a9 20600000 rtn 
+
+loadcode_iic_by_eeprom:
+64aa 58000000 setarg 0x0 
+64ab 600101f7 store 2 ,mem_addr_mi 
+64ac da6065e5 arg iicd_read_eep ,regc 
+64ad 204065a3 call iicd_init_12m 
+64ae 20406429 call read_first_block 
+64af 2020643c branch load_storage 
+
+loadcode_check_times:
+64b0 6800c1da fetch 1 ,mem_loadcode_times 
+64b1 1fe0fe01 increase 1 ,pdata 
+64b2 1fe67c03 sub pdata ,3 ,null 
+64b3 242164b6 nbranch loadcode_error ,positive 
+64b4 6000c1da store 1 ,mem_loadcode_times 
+64b5 20600000 rtn 
+
+loadcode_error:
+64b6 204064a3 call clear_key_buf 
+64b7 20407fa1 call ice_break 
+64b8 20600000 rtn 
+
+set_ucode_status:
+64b9 680081f2 fetch 1 ,mem_ucode_status 
+64ba 1fe3fe00 lshift pdata ,pdata 
+64bb 7920fe00 setflag true ,0 ,pdata 
+64bc 2a2c000f isolate0 15 ,rega 
+64bd 20608000 rtn true 
+64be 600081f2 store 1 ,mem_ucode_status 
+64bf 20600000 rtn 
+
+decrypt_code:
+64c0 68108085 hfetch 1 ,core_gpio_key2 
+64c1 c4008000 rtnbit0 1 
+64c2 202064c6 branch decrypt_code_skip 
+
+decrypt_code_loop:
+64c3 6810812c hfetch 1 ,core_dma_status 
+64c4 afefffff qisolate1 pdata 
+64c5 20608000 rtn true 
+
+decrypt_code_skip:
+64c6 68108108 hfetch 1 ,core_misc_status 
+64c7 c300e4c3 bbit0 1 ,decrypt_code_loop 
+64c8 20407422 call do_aes_cbc 
+64c9 202064c3 branch decrypt_code_loop 
+
+load_ucode:
+64ca 68014199 fetch 2 ,mem_patch_ptr 
+64cb 207a0000 rtn blank 
+64cc 70802380 jam 0x80 ,core_ucode_ctrl 
+64cd 70802200 jam 0 ,core_ucode_hi 
+64ce 70802400 jam 0 ,core_ucode_low 
+64cf 6809419b fetcht 2 ,mem_patch_len 
+64d0 184bf200 lshift2 temp ,loopcnt 
+64d1 98000c00 iforce contr 
+
+load_ucode_loop:
+64d2 e8c08000 ifetch 1 ,contr 
+64d3 60108025 hstore 1 ,core_ucode_data 
+64d4 c20064d2 loop load_ucode_loop 
+64d5 70802300 jam 0x0 ,core_ucode_ctrl 
+64d6 20600000 rtn 
+
+spid_init:
+64d7 4746c031 bpatchx patch31_5 ,mem_patch31 
+64d8 204064dd call spid_init_common 
+64d9 202063f2 branch twspi_enable 
+
+spid_init2:
+64da 204064dd call spid_init_common 
+64db 204063ee call twspi_disable 
+64dc 202063f6 branch twspi_enable2 
+
+spid_init_common:
+64dd 6800c212 fetch 1 ,mem_spi_init_clk 
+64de 60108086 hstore 1 ,core_spid_ctrl 
+64df 6800c213 fetch 1 ,mem_spi_init_delay_time 
+64e0 60108087 hstore 1 ,core_spid_delay 
+64e1 580001f5 setarg mem_spid_tbuf 
+64e2 6011008a hstore 2 ,core_spid_txaddr 
+64e3 580001fa setarg mem_spid_rbuf 
+64e4 6011008c hstore 2 ,core_spid_rxaddr 
+64e5 202063ee branch twspi_disable 
+
+spid_reset:
+64e6 68108086 hfetch 1 ,core_spid_ctrl 
+64e7 79207e07 set1 7 ,pdata 
+64e8 60108086 hstore 1 ,core_spid_ctrl 
+64e9 793ffe07 set0 7 ,pdata 
+64ea 60108086 hstore 1 ,core_spid_ctrl 
+64eb 20600000 rtn 
+
+spid_write_reg:
+64ec 79207e07 set1 7 ,pdata 
+64ed 600101f5 store 2 ,mem_spid_tbuf 
+64ee 47474031 bpatchx patch31_6 ,mem_patch31 
+64ef 70808802 jam 2 ,core_spid_txlen 
+64f0 70808e00 jam 0 ,core_spid_rxlen 
+64f1 70800602 jam spid_start ,core_misc_ctrl 
+64f2 202064fc branch wait_spid_done 
+
+spid_read_reg:
+64f3 18000401 force 1 ,temp 
+
+spid_read_regs:
+64f4 600081f5 store 1 ,mem_spid_tbuf 
+64f5 4747c031 bpatchx patch31_7 ,mem_patch31 
+64f6 70808801 jam 1 ,core_spid_txlen 
+64f7 6019008e hstoret 2 ,core_spid_rxlen 
+64f8 70800602 jam spid_start ,core_misc_ctrl 
+64f9 204064fc call wait_spid_done 
+64fa 680081fa fetch 1 ,mem_spid_rbuf 
+64fb 20600000 rtn 
+
+wait_spid_done:
+64fc 680140d6 fetch 2 ,mem_afh_error_total 
+64fd 1fe0fe01 increase 1 ,pdata 
+64fe 600140d6 store 2 ,mem_afh_error_total 
+64ff 6810812c hfetch 1 ,core_dma_status 
+6500 c301e4fc bbit0 spid_done ,wait_spid_done 
+6501 20600000 rtn 
+
+spid_init_flash:
+6502 70808640 jam 0x40 ,core_spid_ctrl 
+6503 70808700 jam 0x0 ,core_spid_delay 
+6504 68108081 hfetch 1 ,core_gpio_sel1 
+6505 793ffe00 set0 0 ,pdata 
+6506 79207e01 set1 1 ,pdata 
+6507 60108081 hstore 1 ,core_gpio_sel1 
+6508 58000000 setarg 0 
+6509 600201f5 store 4 ,mem_spid_tbuf 
+650a 20600000 rtn 
+
+spid_unlock_flash:
+650b 58000000 setarg 0 
+650c 6011008e hstore 2 ,core_spid_rxlen 
+650d 58000001 setarg 1 
+650e 60110088 hstore 2 ,core_spid_txlen 
+650f 580001f5 setarg mem_spid_tbuf 
+6510 6011008a hstore 2 ,core_spid_txaddr 
+6511 7001f506 jam 6 ,mem_spid_tbuf 
+6512 70800602 jam spid_start ,core_misc_ctrl 
+6513 202064fc branch wait_spid_done 
+
+flash_write:
+6514 78547c00 disable user 
+6515 1fe22400 copy pdata ,regb 
+6516 6800c239 fetch 1 ,mem_spi_write_flash_sm 
+6517 c1800000 rtnne flash_sm_no_buys 
+6518 78347c00 enable user 
+6519 1a427e00 copy regb ,pdata 
+651a 20206522 branch flash_write_start 
+
+flash_write_spi_sm_timer:
+651b 6800c239 fetch 1 ,mem_spi_write_flash_sm 
+651c c000e522 beq flash_sm_start ,flash_write_start 
+651d c0016528 beq flash_sm_erase_sector ,flash_erase_sector 
+651e c001e530 beq flash_sm_wait_erase_sector ,flash_wait_erase_sector 
+651f c0026537 beq flash_sm_write_data ,flash_write_data 
+6520 c002e53d beq flash_sm_wait_write_data ,flash_wait_write_data 
+6521 20600000 rtn 
+
+flash_write_start:
+6522 6001c232 store 3 ,mem_spi_write_addr 
+6523 1a227e00 copy rega ,pdata 
+6524 60014235 store 2 ,mem_spi_write_ptr 
+6525 60094237 storet 2 ,mem_spi_write_len 
+6526 70423902 jam flash_sm_erase_sector ,mem_spi_write_flash_sm 
+6527 20206502 branch spid_init_flash 
+
+flash_erase_sector:
+6528 20406502 call spid_init_flash 
+6529 70423903 jam flash_sm_wait_erase_sector ,mem_spi_write_flash_sm 
+652a 2040650b call spid_unlock_flash 
+652b da2001f5 arg mem_spid_tbuf ,rega 
+652c 6801c232 fetch 3 ,mem_spi_write_addr 
+652d 70808804 jam 4 ,core_spid_txlen 
+652e d8400020 arg flash_command_sector_erase ,temp 
+652f 20206556 branch spid_write_flash_common 
+
+flash_wait_erase_sector:
+6530 20406502 call spid_init_flash 
+6531 2040650b call spid_unlock_flash 
+6532 58000005 setarg flash_read_satus 
+6533 204064f3 call spid_read_reg 
+6534 c3800000 rtnbit1 flash_status_wip 
+6535 70423904 jam flash_sm_write_data ,mem_spi_write_flash_sm 
+6536 20600000 rtn 
+
+flash_write_data:
+6537 20406502 call spid_init_flash 
+6538 70423905 jam flash_sm_wait_write_data ,mem_spi_write_flash_sm 
+6539 2040650b call spid_unlock_flash 
+653a 2040654a call flash_data_preserve 
+653b 20406552 call spid_write_flash 
+653c 20206545 branch flash_data_recover 
+
+flash_wait_write_data:
+653d 20406502 call spid_init_flash 
+653e 2040650b call spid_unlock_flash 
+653f 58000005 setarg flash_read_satus 
+6540 204064f3 call spid_read_reg 
+6541 c3800000 rtnbit1 flash_status_wip 
+6542 70423900 jam flash_sm_no_buys ,mem_spi_write_flash_sm 
+6543 68014201 fetch 2 ,mem_cb_spi_flash_write_complate 
+6544 20207f9c branch callback_func 
+
+flash_data_recover:
+6545 68020aa2 fetch 4 ,mem_temp 
+6546 68094235 fetcht 2 ,mem_spi_write_ptr 
+6547 184085fc increase -4 ,temp 
+6548 e0420000 istore 4 ,temp 
+6549 20600000 rtn 
+
+flash_data_preserve:
+654a 68094235 fetcht 2 ,mem_spi_write_ptr 
+654b 18422200 copy temp ,rega 
+654c 184085fc increase -4 ,temp 
+654d e8420000 ifetch 4 ,temp 
+654e 60020aa2 store 4 ,mem_temp 
+654f 68094237 fetcht 2 ,mem_spi_write_len 
+6550 6801c232 fetch 3 ,mem_spi_write_addr 
+6551 20600000 rtn 
+
+spid_write_flash:
+6552 18408404 increase 4 ,temp 
+6553 60190088 hstoret 2 ,core_spid_txlen 
+6554 d8400002 arg flash_command_write_data ,temp 
+6555 1a20a3fc increase -4 ,rega 
+
+spid_write_flash_common:
+6556 e2288000 istoret 1 ,rega 
+6557 1ff10400 rshift16 pdata ,temp 
+6558 e0a88000 istoret 1 ,contw 
+6559 1fec8400 rshift8 pdata ,temp 
+655a e0a88000 istoret 1 ,contw 
+655b e0a08000 istore 1 ,contw 
+655c 1a227e00 deposit rega 
+655d 6011008a hstore 2 ,core_spid_txaddr 
+655e 58000000 setarg 0 
+655f 6011008e hstore 2 ,core_spid_rxlen 
+6560 70800602 jam spid_start ,core_misc_ctrl 
+6561 202064fc branch wait_spid_done 
+
+spid_read_flash:
+6562 6019008e hstoret 2 ,core_spid_rxlen 
+6563 1ff10400 rshift16 pdata ,temp 
+6564 600881f6 storet 1 ,mem_addr_hi 
+6565 1fec8400 rshift8 pdata ,temp 
+6566 600881f7 storet 1 ,mem_addr_mi 
+6567 600081f8 store 1 ,mem_addr_lo 
+6568 58000004 setarg 4 
+6569 60110088 hstore 2 ,core_spid_txlen 
+656a 7001f503 jam flash_command_read_data ,mem_spid_tbuf 
+656b 580001f5 setarg mem_spid_tbuf 
+656c 6011008a hstore 2 ,core_spid_txaddr 
+656d 1a227e00 deposit rega 
+656e 6011008c hstore 2 ,core_spid_rxaddr 
+656f 68108086 hfetch 1 ,core_spid_ctrl 
+6570 2a2c000f isolate0 15 ,rega 
+6571 7920fe06 setflag true ,6 ,pdata 
+6572 60108086 hstore 1 ,core_spid_ctrl 
+6573 70800602 jam spid_start ,core_misc_ctrl 
+
+spi_read_flash_wait:
+6574 6810812c hfetch 1 ,core_dma_status 
+6575 c283e574 bbit1 7 ,spi_read_flash_wait 
+6576 d8e00003 arg spid_done ,queue 
+6577 202064fc branch wait_spid_done 
+
+spid_load_flash:
+6578 6019008e hstoret 2 ,core_spid_rxlen 
+6579 58000004 setarg 4 
+657a 60110088 hstore 2 ,core_spid_txlen 
+657b 7001f503 jam 3 ,mem_spid_tbuf 
+657c 580001f5 setarg mem_spid_tbuf 
+657d 6011008a hstore 2 ,core_spid_txaddr 
+657e 1a227e00 deposit rega 
+657f 6011008c hstore 2 ,core_spid_rxaddr 
+6580 68108086 hfetch 1 ,core_spid_ctrl 
+6581 2a2c000f isolate0 15 ,rega 
+6582 7920fe06 setflag true ,6 ,pdata 
+6583 60108086 hstore 1 ,core_spid_ctrl 
+6584 70800602 jam spid_start ,core_misc_ctrl 
+
+spi_load_flash_wait:
+6585 6810812c hfetch 1 ,core_dma_status 
+6586 c283e585 bbit1 7 ,spi_load_flash_wait 
+6587 d8e00003 arg spid_done ,queue 
+6588 204064c0 call decrypt_code 
+6589 204064fc call wait_spid_done 
+658a 2feffe02 isolate1 spid_crcok ,pdata 
+658b 204064b9 call set_ucode_status 
+658c 680081f6 fetch 1 ,mem_addr_hi 
+658d 1ff02400 lshift16 pdata ,regb 
+658e 680081f7 fetch 1 ,mem_addr_mi 
+658f 1fed7e00 lshift8 pdata ,pdata 
+6590 9a41a400 ior regb ,regb 
+6591 680081f8 fetch 1 ,mem_addr_lo 
+6592 9a41fe00 ior regb ,pdata 
+6593 9840fe00 iadd temp ,pdata 
+6594 600081f8 store 1 ,mem_addr_lo 
+6595 1fecfe00 rshift8 pdata ,pdata 
+6596 600081f7 store 1 ,mem_addr_mi 
+6597 1fecfe00 rshift8 pdata ,pdata 
+6598 600081f6 store 1 ,mem_addr_hi 
+6599 20600000 rtn 
+
+soft_reset_chip:
+659a 70801001 jam 1 ,core_reset 
+659b 20600000 rtn 
+
+iic_init_390k:
+659c 7080910c jam 12 ,core_iicd_scl_low 
+659d 7080920d jam 13 ,core_iicd_scl_high 
+659e 7080930d jam 13 ,core_iicd_start_setup 
+659f 7080940d jam 13 ,core_iicd_start_hold 
+65a0 7080950d jam 13 ,core_iicd_stop_setup 
+65a1 7080960c jam 12 ,core_iicd_data_setup 
+65a2 202065a9 branch iicd_init_gpio 
+
+iicd_init_12m:
+65a3 70809105 jam 5 ,core_iicd_scl_low 
+65a4 70809207 jam 7 ,core_iicd_scl_high 
+65a5 70809307 jam 7 ,core_iicd_start_setup 
+65a6 70809407 jam 7 ,core_iicd_start_hold 
+65a7 70809507 jam 7 ,core_iicd_stop_setup 
+65a8 70809605 jam 5 ,core_iicd_data_setup 
+
+iicd_init_gpio:
+65a9 6810807b hfetch 1 ,core_gpio_pu3 
+65aa 1fe1fec0 or_into 0xc0 ,pdata 
+65ab 6010807b hstore 1 ,core_gpio_pu3 
+65ac 68108081 hfetch 1 ,core_gpio_sel1 
+65ad 1fe1fe10 or_into 0x10 ,pdata 
+65ae 60108081 hstore 1 ,core_gpio_sel1 
+65af 20600000 rtn 
+
+wait_iicd_done:
+65b0 6810812c hfetch 1 ,core_dma_status 
+65b1 c302e5b0 bbit0 iicd_done ,wait_iicd_done 
+65b2 20600000 rtn 
+
+iicd_read_data:
+65b3 60110098 hstore 2 ,core_iicd_txlen 
+65b4 1a227e00 deposit rega 
+65b5 6011009a hstore 2 ,core_iicd_txaddr 
+65b6 1a427e00 deposit regb 
+65b7 6011009c hstore 2 ,core_iicd_rxaddr 
+65b8 18427e00 deposit temp 
+65b9 6011009e hstore 2 ,core_iicd_rxlen 
+65ba d8400001 arg 1 ,temp 
+65bb 7d3a0401 nsetflag blank ,1 ,temp 
+65bc 60108090 hstore 1 ,core_iicd_ctrl 
+65bd 70800604 jam iicd_start ,core_misc_ctrl 
+65be 202065b0 branch wait_iicd_done 
+
+set_eeprom_size_2k:
+65bf 79200028 set1 mark_eeprom_size ,mark 
+65c0 70421108 jam 0x08 ,mem_eeprom_block_size 
+65c1 20600000 rtn 
+
+clear_eeprom_size_2k:
+65c2 793f8028 set0 mark_eeprom_size ,mark 
+65c3 70421120 jam 0x20 ,mem_eeprom_block_size 
+65c4 20600000 rtn 
+
+iicd_read_eep_data_size_2k:
+65c5 6800c203 fetch 1 ,mem_eeprom_base 
+65c6 9a40fe00 iadd regb ,pdata 
+65c7 600081f7 store 1 ,mem_addr_mi 
+65c8 202065cc branch iicd_read_eep_size_2k 
+
+iicd_read_eep_size_2k_lcadcode:
+65c9 680101f7 fetch 2 ,mem_addr_mi 
+65ca 1ff0fe00 byteswap pdata ,pdata 
+65cb 600081f7 store 1 ,mem_addr_mi 
+
+iicd_read_eep_size_2k:
+65cc 58000003 setarg 3 
+65cd 60110098 hstore 2 ,core_iicd_txlen 
+65ce 7001f6a0 jam 0xa0 ,mem_iicd_tbuf 
+65cf 7001f8a1 jam 0xa1 ,mem_iicd_tbuf + 2 
+65d0 202065eb branch iicd_read_eep_common 
+
+iicd_write_protect_eep_data:
+65d1 60090aa2 storet 2 ,mem_temp 
+65d2 204065d6 call iicd_eeprom_write_enable 
+65d3 68090aa2 fetcht 2 ,mem_temp 
+65d4 20406606 call iicd_write_eep_data 
+65d5 202065dd branch iicd_eeprom_write_disable 
+
+iicd_eeprom_write_enable:
+65d6 6800c23a fetch 1 ,mem_eeprom_wp_gpio 
+65d7 c17f8000 rtneq gpio_disable 
+65d8 c30365db bbit0 6 ,iicd_wp_gpio_output_low 
+65d9 580249f0 setarg 150000 
+65da 20402a8f call sleep 
+
+iicd_wp_gpio_output_low:
+65db 6808c23a fetcht 1 ,mem_eeprom_wp_gpio 
+65dc 20206829 branch gpio_out_active 
+
+iicd_eeprom_write_disable:
+65dd 6808c23a fetcht 1 ,mem_eeprom_wp_gpio 
+65de 20206825 branch gpio_out_inactive 
+
+iicd_read_eep_data:
+65df 47484032 bpatchx patch32_0 ,mem_patch32 
+65e0 c51465c5 bmark1 mark_eeprom_size ,iicd_read_eep_data_size_2k 
+65e1 68014203 fetch 2 ,mem_eeprom_base 
+65e2 9a40fe00 iadd regb ,pdata 
+65e3 1ff0fe00 byteswap pdata ,pdata 
+65e4 600101f7 store 2 ,mem_addr_mi 
+
+iicd_read_eep:
+65e5 4748c032 bpatchx patch32_1 ,mem_patch32 
+65e6 c51465c9 bmark1 mark_eeprom_size ,iicd_read_eep_size_2k_lcadcode 
+65e7 58000004 setarg 4 
+65e8 60110098 hstore 2 ,core_iicd_txlen 
+65e9 7001f6a0 jam 0xa0 ,mem_iicd_tbuf 
+65ea 7001f9a1 jam 0xa1 ,mem_iicd_tbuf + 3 
+
+iicd_read_eep_common:
+65eb 580001f6 setarg mem_iicd_tbuf 
+65ec 6011009a hstore 2 ,core_iicd_txaddr 
+65ed 6019009e hstoret 2 ,core_iicd_rxlen 
+65ee 1a227e00 deposit rega 
+65ef 6011009c hstore 2 ,core_iicd_rxaddr 
+65f0 58000002 setarg 2 
+65f1 2a2c000f isolate0 15 ,rega 
+65f2 7920fe00 setflag true ,0 ,pdata 
+65f3 60108090 hstore 1 ,core_iicd_ctrl 
+65f4 70800604 jam iicd_start ,core_misc_ctrl 
+65f5 d8e00005 arg iicd_done ,queue 
+65f6 204064c0 call decrypt_code 
+65f7 204065b0 call wait_iicd_done 
+65f8 2feffe04 isolate1 iicd_crcok ,pdata 
+65f9 204064b9 call set_ucode_status 
+65fa c5146601 bmark1 mark_eeprom_size ,iicd_read_eep_load_code_size_2k 
+65fb 680101f7 fetch 2 ,mem_addr_mi 
+65fc 1ff0fe00 byteswap pdata ,pdata 
+65fd 9840fe00 iadd temp ,pdata 
+65fe 1ff0fe00 byteswap pdata ,pdata 
+65ff 600101f7 store 2 ,mem_addr_mi 
+6600 20600000 rtn 
+
+iicd_read_eep_load_code_size_2k:
+6601 680081f7 fetch 1 ,mem_addr_mi 
+6602 9840fe00 iadd temp ,pdata 
+6603 1ff0fe00 byteswap pdata ,pdata 
+6604 600101f7 store 2 ,mem_addr_mi 
+6605 20600000 rtn 
+
+iicd_write_eep_data:
+6606 68014203 fetch 2 ,mem_eeprom_base 
+6607 9a40fe00 iadd regb ,pdata 
+
+iicd_write_ota_data:
+6608 60010a9a store 2 ,mem_pdatatemp 
+6609 47494032 bpatchx patch32_2 ,mem_patch32 
+660a 60090aa2 storet 2 ,mem_temp 
+660b 1a227e00 copy rega ,pdata 
+660c 60010ab9 store 2 ,mem_contr 
+
+iicd_write_eep_loop:
+660d 2040661d call iicd_eep_transparency 
+660e 68090ab2 fetcht 2 ,mem_regb 
+660f 68010ab9 fetch 2 ,mem_contr 
+6610 1fe22200 copy pdata ,rega 
+6611 68010a9a fetch 2 ,mem_pdatatemp 
+6612 2040663d call iicd_write_eep 
+6613 68010ab2 fetch 2 ,mem_regb 
+6614 68090ab9 fetcht 2 ,mem_contr 
+6615 98408400 iadd temp ,temp 
+6616 60090ab9 storet 2 ,mem_contr 
+6617 68090a9a fetcht 2 ,mem_pdatatemp 
+6618 98408400 iadd temp ,temp 
+6619 60090a9a storet 2 ,mem_pdatatemp 
+661a 68010aa2 fetch 2 ,mem_temp 
+661b 243a660d nbranch iicd_write_eep_loop ,blank 
+661c 20600000 rtn 
+
+iicd_eep_transparency:
+661d 4749c032 bpatchx patch32_3 ,mem_patch32 
+661e 6800c211 fetch 1 ,mem_eeprom_block_size 
+661f 1fe0ffff increase -1 ,pdata 
+6620 68090a9a fetcht 2 ,mem_pdatatemp 
+6621 9841fe00 ior temp ,pdata 
+6622 1fe0fe01 increase 1 ,pdata 
+6623 60018ab6 store 3 ,mem_regc 
+6624 68010aa2 fetch 2 ,mem_temp 
+6625 9840fe00 iadd temp ,pdata 
+6626 68098ab6 fetcht 3 ,mem_regc 
+6627 98467e00 isub temp ,pdata 
+6628 2421662f nbranch iicd_eep_deal_short_packet ,positive 
+6629 60010aa2 store 2 ,mem_temp 
+662a 68018ab6 fetch 3 ,mem_regc 
+662b 68090a9a fetcht 2 ,mem_pdatatemp 
+662c 98467e00 isub temp ,pdata 
+662d 60010ab2 store 2 ,mem_regb 
+662e 20600000 rtn 
+
+iicd_eep_deal_short_packet:
+662f 68010aa2 fetch 2 ,mem_temp 
+6630 60010ab2 store 2 ,mem_regb 
+6631 58000000 setarg 0 
+6632 60010aa2 store 2 ,mem_temp 
+6633 20600000 rtn 
+
+iicd_write_eep_size_2k:
+6634 18408402 increase 2 ,temp 
+6635 60190098 hstoret 2 ,core_iicd_txlen 
+6636 1a20a3fe increase -2 ,rega 
+6637 ea298000 ifetcht 3 ,rega 
+6638 18422400 copy temp ,regb 
+6639 d84000a0 arg 0xa0 ,temp 
+663a e2288000 istoret 1 ,rega 
+663b e0a08000 istore 1 ,contw 
+663c 2020664a branch iicd_write_eep_common 
+
+iicd_write_eep:
+663d 1fe22400 copy pdata ,regb 
+663e 474a4032 bpatchx patch32_4 ,mem_patch32 
+663f c5146634 bmark1 mark_eeprom_size ,iicd_write_eep_size_2k 
+6640 1a427e00 copy regb ,pdata 
+6641 18408403 increase 3 ,temp 
+6642 60190098 hstoret 2 ,core_iicd_txlen 
+6643 1a20a3fd increase -3 ,rega 
+6644 ea298000 ifetcht 3 ,rega 
+6645 18422400 copy temp ,regb 
+6646 d84000a0 arg 0xa0 ,temp 
+6647 e2288000 istoret 1 ,rega 
+6648 1ff0fe00 byteswap pdata ,pdata 
+6649 e0a10000 istore 2 ,contw 
+
+iicd_write_eep_common:
+664a 1a227e00 deposit rega 
+664b 6011009a hstore 2 ,core_iicd_txaddr 
+664c 58000000 setarg 0 
+664d 6011009e hstore 2 ,core_iicd_rxlen 
+664e 70809001 jam 1 ,core_iicd_ctrl 
+664f 70800604 jam iicd_start ,core_misc_ctrl 
+6650 204065b0 call wait_iicd_done 
+6651 1a427e00 copy regb ,pdata 
+6652 e2218000 istore 3 ,rega 
+
+iic_check_eeprom_standby:
+6653 474ac032 bpatchx patch32_5 ,mem_patch32 
+6654 7001f900 jam 0 ,mem_iicd_tbuf + 3 
+
+iic_check_eeprom_standby_wait:
+6655 58000001 setarg 1 
+6656 60110098 hstore 2 ,core_iicd_txlen 
+6657 7001f6a0 jam 0xa0 ,mem_iicd_tbuf 
+6658 580001f6 setarg mem_iicd_tbuf 
+6659 6011009a hstore 2 ,core_iicd_txaddr 
+665a 58000000 setarg 0 
+665b 6011009e hstore 2 ,core_iicd_rxlen 
+665c 6011009c hstore 2 ,core_iicd_rxaddr 
+665d 58000003 setarg 3 
+665e 60108090 hstore 1 ,core_iicd_ctrl 
+665f 70800604 jam iicd_start ,core_misc_ctrl 
+6660 204065b0 call wait_iicd_done 
+6661 6810812c hfetch 1 ,core_dma_status 
+6662 c4030000 rtnbit0 iicd_ack 
+6663 200005dc nop 1500 
+6664 680081f9 fetch 1 ,mem_iicd_tbuf + 3 
+6665 1fe0fe01 increase 1 ,pdata 
+6666 600081f9 store 1 ,mem_iicd_tbuf + 3 
+6667 1fe67c28 sub pdata ,40 ,null 
+6668 24610000 nrtn positive 
+6669 20206655 branch iic_check_eeprom_standby_wait 
+
+otp_enable_chgpump:
+666a 70897370 jam 0x70 ,rfen_chgpump 
+666b 20000bb8 nop param_chgpump_delay 
+666c 20600000 rtn 
+
+otp_disable_chgpump:
+666d 70897330 jam 0x30 ,rfen_chgpump 
+666e 20600000 rtn 
+
+otp_set_addr:
+666f 1fe9fe00 lshift3 pdata ,pdata 
+6670 60110045 hstore 2 ,core_otp_addr 
+6671 70804b00 jam 0 ,core_otpd_ctrl 
+6672 20600000 rtn 
+
+otp_write:
+6673 2040666f call otp_set_addr 
+6674 204066a0 call otp_ce 
+
+otp_program:
+6675 ea288000 ifetcht 1 ,rega 
+6676 1a20a201 increase 1 ,rega 
+6677 18000e00 force 0 ,queue 
+
+otp_program_bit:
+6678 a84c0000 qisolate0 temp 
+6679 2020e697 branch otp_skip_0 ,true 
+667a 68108046 hfetch 1 ,core_otp_din 
+667b 79207e06 set1 6 ,pdata 
+667c 79207e07 set1 7 ,pdata 
+667d 60108046 hstore 1 ,core_otp_din 
+667e 70804702 jam 0x02 ,core_otp_ctrl 
+667f 70804782 jam 0x82 ,core_otp_ctrl 
+6680 793ffe07 set0 7 ,pdata 
+6681 60108046 hstore 1 ,core_otp_din 
+6682 7080478a jam 0x8a ,core_otp_ctrl 
+6683 2000000b nop 11 
+6684 708047ca jam 0xca ,core_otp_ctrl 
+6685 20000021 nop 33 
+6686 7080474a jam 0x4a ,core_otp_ctrl 
+6687 2000002c nop 44 
+6688 708047ca jam 0xca ,core_otp_ctrl 
+6689 20000016 nop 22 
+668a 7080478a jam 0x8a ,core_otp_ctrl 
+668b 20000021 nop 33 
+668c 70804782 jam 0x82 ,core_otp_ctrl 
+668d 20000001 nop 1 
+668e 70804792 jam 0x92 ,core_otp_ctrl 
+668f 2000000a nop 10 
+6690 708047b2 jam 0xb2 ,core_otp_ctrl 
+6691 68108007 hfetch 1 ,core_otp_rdata 
+6692 70804792 jam 0x92 ,core_otp_ctrl 
+6693 20000001 nop 1 
+6694 70804782 jam 0x82 ,core_otp_ctrl 
+6695 afec0000 qisolate0 pdata 
+6696 2020e678 branch otp_program_bit ,true 
+
+otp_skip_0:
+6697 68110045 hfetch 2 ,core_otp_addr 
+6698 1fe0fe01 increase 1 ,pdata 
+6699 60110045 hstore 2 ,core_otp_addr 
+669a 18e08e01 increase 1 ,queue 
+669b 28e01e08 compare 8 ,queue ,0xf 
+669c 2420e678 nbranch otp_program_bit ,true 
+669d c2006675 loop otp_program 
+669e 70804783 jam 0x83 ,core_otp_ctrl 
+669f 20600000 rtn 
+
+otp_ce:
+66a0 70804782 jam 0x82 ,core_otp_ctrl 
+66a1 2000000c nop 12 
+66a2 70804780 jam 0x80 ,core_otp_ctrl 
+66a3 70804782 jam 0x82 ,core_otp_ctrl 
+66a4 20000096 nop 150 
+66a5 20600000 rtn 
+
+otpd_read_init:
+66a6 204066a0 call otp_ce 
+66a7 708047a2 jam 0xa2 ,core_otp_ctrl 
+66a8 1a227e00 deposit rega 
+66a9 60110048 hstore 2 ,core_otpd_addr 
+66aa 7920040b set1 11 ,temp 
+66ab 2fec000f isolate0 15 ,pdata 
+66ac 7920840f setflag true ,15 ,temp 
+66ad 6019004a hstoret 2 ,core_otpd_len 
+66ae 70800601 jam otpd_start ,core_misc_ctrl 
+66af 20600000 rtn 
+
+otpd_wait_end:
+66b0 6810812c hfetch 1 ,core_dma_status 
+66b1 c300e6b0 bbit0 otpd_done ,otpd_wait_end 
+66b2 20600000 rtn 
+
+otpd_read_data:
+66b3 2040666f call otp_set_addr 
+66b4 204066a6 call otpd_read_init 
+66b5 204066b0 call otpd_wait_end 
+66b6 70804783 jam 0x83 ,core_otp_ctrl 
+66b7 20600000 rtn 
+
+otpd_read_code:
+66b8 68110124 hfetch 2 ,core_current_otp_addr 
+66b9 60110045 hstore 2 ,core_otp_addr 
+66ba 204066a6 call otpd_read_init 
+66bb d8e00001 arg otpd_done ,queue 
+66bc 204064c0 call decrypt_code 
+66bd 204066b0 call otpd_wait_end 
+66be 2feffe00 isolate1 otpd_crcok ,pdata 
+66bf 204064b9 call set_ucode_status 
+66c0 70804783 jam 0x83 ,core_otp_ctrl 
+66c1 20600000 rtn 
+
+uartd_prepare_tx:
+66c2 6811005e hfetch 2 ,core_uart_twptr 
+66c3 98001400 iforce contwu 
+66c4 20600000 rtn 
+
+uartd_send:
+66c5 19427e00 deposit contwu 
+66c6 6011005e hstore 2 ,core_uart_twptr 
+66c7 20600000 rtn 
+
+uartd_rxdone:
+66c8 18627e00 deposit contru 
+66c9 60110058 hstore 2 ,core_uart_rrptr 
+66ca 20600000 rtn 
+
+uartd_prepare_rx:
+66cb 68110058 hfetch 2 ,core_uart_rrptr 
+66cc 1fe20600 copy pdata ,contru 
+66cd 20600000 rtn 
+
+uart_set_baud_by_mem:
+66ce 68014243 fetch uart_baud_len ,mem_baud 
+66cf 60110052 hstore uart_baud_len ,core_uart_baud 
+66d0 20600000 rtn 
+
+uart_copy_tx_bytes_fast:
+66d1 1f227e00 deposit loopcnt 
+66d2 207a0000 rtn blank 
+
+uart_copy_tx_bytes_fast_loop:
+66d3 1f20f3f8 increase -8 ,loopcnt 
+66d4 204166de call uart_tx_8_bytes ,positive 
+66d5 20628000 rtn zero 
+66d6 202166d3 branch uart_copy_tx_bytes_fast_loop ,positive 
+66d7 1f20f208 increase 8 ,loopcnt 
+
+uart_copy_tx_bytes_fast_loop_four:
+66d8 1f20f3fc increase -4 ,loopcnt 
+66d9 204166e1 call uart_tx_4_bytes ,positive 
+66da 20628000 rtn zero 
+66db 202166d8 branch uart_copy_tx_bytes_fast_loop_four ,positive 
+66dc 1f20f204 increase 4 ,loopcnt 
+66dd 202066e4 branch uart_copy_tx_bytes 
+
+uart_tx_8_bytes:
+66de e8c40000 ifetch 8 ,contr 
+66df e1440000 istore 8 ,contwu 
+66e0 20600000 rtn 
+
+uart_tx_4_bytes:
+66e1 e8c20000 ifetch 4 ,contr 
+66e2 e1420000 istore 4 ,contwu 
+66e3 20600000 rtn 
+
+uart_copy_tx_bytes:
+66e4 1f227e00 deposit loopcnt 
+66e5 207a0000 rtn blank 
+
+uart_copy_tx_bytes_loop:
+66e6 e8c08000 ifetch 1 ,contr 
+66e7 e1408000 istore 1 ,contwu 
+66e8 c20066e6 loop uart_copy_tx_bytes_loop 
+66e9 20600000 rtn 
+
+uart_copy_rx_bytes_fast:
+66ea 1f227e00 deposit loopcnt 
+66eb 207a0000 rtn blank 
+
+uart_copy_rx_bytes_fast_loop:
+66ec 1f20f3f8 increase -8 ,loopcnt 
+66ed 204166f7 call uart_rx_8_bytes ,positive 
+66ee 20628000 rtn zero 
+66ef 202166ec branch uart_copy_rx_bytes_fast_loop ,positive 
+66f0 1f20f208 increase 8 ,loopcnt 
+
+uart_copy_rx_bytes_fast_loop_four:
+66f1 1f20f3fc increase -4 ,loopcnt 
+66f2 204166fa call uart_rx_4_bytes ,positive 
+66f3 20628000 rtn zero 
+66f4 202166f1 branch uart_copy_rx_bytes_fast_loop_four ,positive 
+66f5 1f20f204 increase 4 ,loopcnt 
+66f6 202066fd branch uart_copy_rx_bytes 
+
+uart_rx_8_bytes:
+66f7 e8640000 ifetch 8 ,contru 
+66f8 e0a40000 istore 8 ,contw 
+66f9 20600000 rtn 
+
+uart_rx_4_bytes:
+66fa e8620000 ifetch 4 ,contru 
+66fb e0a20000 istore 4 ,contw 
+66fc 20600000 rtn 
+
+uart_copy_rx_bytes:
+66fd 1f227e00 deposit loopcnt 
+66fe 207a0000 rtn blank 
+
+uart_copy_rx_bytes_loop:
+66ff e8608000 ifetch 1 ,contru 
+6700 e0a08000 istore 1 ,contw 
+6701 c20066ff loop uart_copy_rx_bytes_loop 
+6702 20600000 rtn 
+
+uart_copy_rx2tx:
+6703 1f227e00 deposit loopcnt 
+6704 207a0000 rtn blank 
+
+uart_copy_rx2tx_loop:
+6705 e8608000 ifetch 1 ,contru 
+6706 e1408000 istore 1 ,contwu 
+6707 c2006705 loop uart_copy_rx2tx_loop 
+6708 20600000 rtn 
+
+app_store_nvram_event:
+6709 700a993d jam bt_evt_store_nvram ,mem_fifo_temp 
+670a 20207d86 branch ui_ipc_send_event 
+
+check_51cmd_store_reconn_info:
+
+check_51cmd_update_device_record:
+670b 474b4032 bpatchx patch32_6 ,mem_patch32 
+670c 6800c217 fetch 1 ,mem_nv_data_number 
+670d 207a0000 rtn blank 
+670e 204067a3 call check_nvram 
+670f 2042e7a9 call init_device_list ,zero 
+6710 2040673e call nvram_find_addr_from_bd_list 
+
+write_device_record:
+6711 6800c217 fetch 1 ,mem_nv_data_number 
+6712 1fe22600 icopy regc 
+6713 68094215 fetcht 2 ,mem_nv_data_ptr 
+6714 6009018c storet 2 ,mem_list_item_ptr 
+
+write_device_loop_find:
+6715 1a627e00 copy regc ,pdata 
+6716 203a6709 branch app_store_nvram_event ,blank 
+6717 1a60a7ff increase -1 ,regc 
+6718 18422200 copy temp ,rega 
+6719 ea208000 ifetch 1 ,rega 
+671a 68088184 fetcht 1 ,mem_select_list_item 
+671b 98467c00 isub temp ,null 
+671c 2042e725 call set_index_finded_device ,zero 
+671d 20216721 branch write_device_loop_find0 ,positive 
+671e ea208000 ifetch 1 ,rega 
+671f 1fe0fe01 increase 1 ,pdata 
+6720 e2208000 istore 1 ,rega 
+
+write_device_loop_find0:
+6721 6809018c fetcht 2 ,mem_list_item_ptr 
+6722 18408422 increase nv_data_len ,temp 
+6723 6009018c storet 2 ,mem_list_item_ptr 
+6724 20206715 branch write_device_loop_find 
+
+set_index_finded_device:
+6725 58000000 setarg 0 
+6726 e2208000 istore 1 ,rega 
+6727 68008185 fetch 1 ,mem_temp_reconn_record 
+6728 e0a08000 istore 1 ,contw 
+6729 c099e733 bne rec_3_mode ,set_index_finded_device_ble_mode 
+672a da4041be arg mem_link_key ,regb 
+
+set_index_find_device_master_addr:
+672b e8c30000 ifetch 6 ,contr 
+672c e0a40000 istore 8 ,contw 
+672d 58000000 setarg 0 
+672e e0a40000 istore 8 ,contw 
+672f 1a420c00 copy regb ,contr 
+
+store_rec_data_common:
+6730 20407ebf call memcpy16 
+6731 18007c01 force 1 ,null 
+6732 20600000 rtn 
+
+set_index_finded_device_ble_mode:
+6733 c01b6737 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
+6734 c01be73b beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
+6735 da404419 arg mem_le_ltk ,regb 
+6736 2020672b branch set_index_find_device_master_addr 
+
+set_index_finded_device_irk:
+6737 d8c044d5 arg mem_le_irk ,contr 
+6738 20407ebf call memcpy16 
+
+store_ble_rec_data_common:
+6739 d8c04419 arg mem_le_ltk ,contr 
+673a 20206730 branch store_rec_data_common 
+
+set_index_finded_device_ediv:
+673b d8c044cd arg mem_le_rand ,contr 
+673c 20407ebf call memcpy16 
+673d 20206739 branch store_ble_rec_data_common 
+
+nvram_find_addr_from_bd_list:
+673e 20407fe9 call disable_user 
+673f 6800c217 fetch 1 ,mem_nv_data_number 
+6740 207a0000 rtn blank 
+6741 68014682 fetch 2 ,mem_ui_state_map 
+6742 c2806754 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
+
+find_addr_from_bd_list_ble_mode:
+6743 474bc032 bpatchx patch32_7 ,mem_patch32 
+6744 6800c48e fetch 1 ,mem_le_conn_peer_addr_type 
+6745 c000674d beq master_public_addr ,find_addr_from_bd_list_static_addr 
+6746 68008454 fetch 1 ,mem_le_plap + 5 
+6747 2fe180c0 compare 0xc0 ,pdata ,0xc0 
+6748 2020e74d branch find_addr_from_bd_list_static_addr ,true 
+6749 2fe18040 compare 0x40 ,pdata ,0xc0 
+674a 2020e752 branch find_addr_from_bd_list_random_addr ,true 
+674b 2fe18000 compare 0x00 ,pdata ,0xc0 
+674c 2020e750 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
+
+find_addr_from_bd_list_static_addr:
+674d 70018535 jam rec_4_mode_static_address ,mem_temp_reconn_record 
+674e 6803044f fetch 6 ,mem_le_plap 
+674f 20206757 branch find_addr_from_bd_list_common 
+
+find_addr_from_bd_list_random_non_resolvable_private_address:
+6750 70018537 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
+6751 20206757 branch find_addr_from_bd_list_common 
+
+find_addr_from_bd_list_random_addr:
+6752 70018536 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
+6753 20206757 branch find_addr_from_bd_list_common 
+
+find_addr_from_bd_list_spp_mode:
+6754 474c4033 bpatchx patch33_0 ,mem_patch33 
+6755 70018533 jam rec_3_mode ,mem_temp_reconn_record 
+6756 68030040 fetch 6 ,mem_plap 
+
+find_addr_from_bd_list_common:
+6757 60030186 store 6 ,mem_temp_reconn_record + 1 
+6758 68014215 fetch 2 ,mem_nv_data_ptr 
+6759 efe88000 ifetcht 1 ,pdata 
+675a 1fe0fe01 pincrease 1 
+675b 6001018c store 2 ,mem_list_item_ptr 
+675c 60088184 storet 1 ,mem_select_list_item 
+675d 6800c217 fetch 1 ,mem_nv_data_number 
+675e 1fe22600 icopy regc 
+
+nvram_find_addr_from_list:
+675f 6801018c fetch 2 ,mem_list_item_ptr 
+6760 1fe22200 copy pdata ,rega 
+6761 2040676f call nvram_find_addr_from_list_compare 
+6762 20740000 rtn user 
+6763 6809018c fetcht 2 ,mem_list_item_ptr 
+6764 18408422 increase nv_data_len ,temp 
+6765 6009018c storet 2 ,mem_list_item_ptr 
+6766 184085ff increase -1 ,temp 
+6767 e8408000 ifetch 1 ,temp 
+6768 60008184 store 1 ,mem_select_list_item 
+6769 1a60a7ff increase -1 ,regc 
+676a 2422e75f nbranch nvram_find_addr_from_list ,zero 
+676b 6800c217 fetch 1 ,mem_nv_data_number 
+676c 1fe0ffff pincrease decreased_one 
+676d 60008184 store 1 ,mem_select_list_item 
+676e 20600000 rtn 
+
+nvram_find_addr_from_list_compare:
+676f 68008185 fetch 1 ,mem_temp_reconn_record 
+6770 c099e776 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
+
+find_master_addr_from_list_compare:
+6771 da400185 arg mem_temp_reconn_record ,regb 
+6772 df200007 arg 7 ,loopcnt 
+6773 20407f88 call string_compare 
+6774 2022ffe7 branch enable_user ,zero 
+6775 20600000 rtn 
+
+find_addr_from_list_compare_ble_mode:
+6776 c01b6779 beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
+6777 c01be794 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
+6778 20206771 branch find_master_addr_from_list_compare 
+
+find_irk_form_list_compare:
+6779 ea288000 ifetcht 1 ,rega 
+677a 98467c00 isub temp ,null 
+677b 24628000 nrtn zero 
+677c d8a00ac2 arg mem_le_prand ,contw 
+677d df200010 arg 16 ,loopcnt 
+677e 20407ed4 call clear_mem 
+677f 68018452 fetch 3 ,mem_le_plap + 3 
+6780 60018ac2 store 3 ,mem_le_prand 
+6781 2040678b call genernate_master_macaddress 
+6782 68010adf fetch 2 ,mem_le_aes_128 + 13 
+6783 1ff0fe00 byteswap pdata ,pdata 
+6784 1fed0400 lshift8 pdata ,temp 
+6785 e8c08000 ifetch 1 ,contr 
+6786 9840fe00 iadd temp ,pdata 
+6787 6809844f fetcht 3 ,mem_le_plap 
+6788 98467c00 isub temp ,null 
+6789 2022ffe7 branch enable_user ,zero 
+678a 20600000 rtn 
+
+genernate_master_macaddress:
+678b d8c00ac2 arg mem_le_prand ,contr 
+678c 20407486 call load_data128 
+678d ea208000 ifetch 1 ,rega 
+678e 20407487 call load_regext 
+678f 18006c38 force 0x38 ,aes_ctrl 
+6790 18006c00 force 0x0 ,aes_ctrl 
+6791 2040741d call wait_aes 
+6792 d8a00ad2 arg mem_le_aes_128 ,contw 
+6793 20207497 branch store_aes_result 
+
+find_ediv_form_list_compare:
+6794 ea288000 ifetcht 1 ,rega 
+6795 98467c00 isub temp ,null 
+6796 24628000 nrtn zero 
+6797 18c22200 copy contr ,rega 
+6798 18c0a608 add contr ,8 ,regc 
+6799 da4044cd arg mem_le_rand ,regb 
+679a df200008 arg 8 ,loopcnt 
+679b 20407f88 call string_compare 
+679c 2022ffe7 branch enable_user ,zero 
+679d 1a622200 copy regc ,rega 
+679e da4044d5 arg mem_le_irk ,regb 
+679f df200008 arg 8 ,loopcnt 
+67a0 20407f88 call string_compare 
+67a1 2022ffe7 branch enable_user ,zero 
+67a2 20600000 rtn 
+
+check_nvram:
+67a3 68014215 fetch 2 ,mem_nv_data_ptr 
+67a4 efe88000 ifetcht 1 ,pdata 
+67a5 1fe0fe22 pincrease nv_data_len 
+67a6 efe08000 ifetch 1 ,pdata 
+67a7 98467c00 isub temp ,null 
+67a8 20600000 rtn 
+
+init_device_list:
+67a9 6800c217 fetch 1 ,mem_nv_data_number 
+67aa 1fe27200 icopy loopcnt 
+67ab 68094215 fetcht 2 ,mem_nv_data_ptr 
+67ac 58000000 setarg 0 
+
+init_device_list_loop:
+67ad e0408000 istore 1 ,temp 
+67ae 18408422 increase nv_data_len ,temp 
+67af 1fe0fe01 pincrease 1 
+67b0 c20067ad loop init_device_list_loop 
+67b1 20600000 rtn 
+
+load_device_list:
+67b2 474cc033 bpatchx patch33_1 ,mem_patch33 
+67b3 2040673e call nvram_find_addr_from_bd_list 
+67b4 68008030 fetch 1 ,mem_state 
+67b5 79347e06 setflag user ,state_combkey ,pdata 
+67b6 60008030 store 1 ,mem_state 
+67b7 243467bc nbranch clear_key_exists ,user 
+67b8 1a208c0a add rega ,10 ,contr 
+67b9 d8a041be arg mem_link_key ,contw 
+67ba 20407ebf call memcpy16 
+67bb 202067d7 branch check_link_key_load 
+
+clear_key_exists:
+67bc 7041bd00 jam 0 ,mem_link_key_exists 
+67bd 20600000 rtn 
+
+load_device_list_mode_4:
+67be 6804c4cb fetch 9 ,mem_le_ediv 
+67bf 203a67ca branch clear_ltk_exists ,blank 
+67c0 2040673e call nvram_find_addr_from_bd_list 
+67c1 243467ca nbranch clear_ltk_exists ,user 
+67c2 6801018c fetch 2 ,mem_list_item_ptr 
+67c3 1fe08c01 add pdata ,1 ,contr 
+67c4 d8a044d5 arg mem_le_irk ,contw 
+67c5 20407ebf call memcpy16 
+67c6 d8a04419 arg mem_le_ltk ,contw 
+67c7 20407ebf call memcpy16 
+67c8 70442901 jam 1 ,mem_ltk_exists 
+67c9 20600000 rtn 
+
+clear_ltk_exists:
+67ca 70442900 jam 0 ,mem_ltk_exists 
+67cb 20600000 rtn 
+
+eeprom_store_le_reconn_info:
+67cc 6803044f fetch 6 ,mem_le_plap 
+67cd 60030186 store 6 ,mem_temp_lap 
+67ce 70018534 jam rec_4_mode ,mem_record_bt_mode 
+67cf 202067d3 branch eeprom_store_reconn_info 
+
+eeprom_store_bd_reconn_info:
+67d0 68030040 fetch 6 ,mem_plap 
+67d1 60030186 store 6 ,mem_temp_lap 
+67d2 70018533 jam rec_3_mode ,mem_record_bt_mode 
+
+eeprom_store_reconn_info:
+67d3 6800c092 fetch 1 ,mem_device_option 
+67d4 c005670b beq dvc_op_module ,check_51cmd_update_device_record 
+67d5 c28342da bbit1 dvc_op_mouse ,mouse_store_remote_bdaddr 
+67d6 20600000 rtn 
+
+check_link_key_load:
+67d7 680441be fetch 8 ,mem_link_key 
+67d8 680c41c6 fetcht 8 ,mem_link_key + 8 
+67d9 9841fe00 ior temp ,pdata 
+67da 207a0000 rtn blank 
+67db 7041bd01 jam 1 ,mem_link_key_exists 
+67dc 20600000 rtn 
+
+gpio_set_wake_by_current_state:
+67dd 474d4033 bpatchx patch33_2 ,mem_patch33 
+67de 79200407 set1 7 ,temp 
+67df 2040681d call gpio_get_bit 
+67e0 7d208407 nsetflag true ,7 ,temp 
+
+gpio_set_wake:
+67e1 474dc033 bpatchx patch33_3 ,mem_patch33 
+67e2 18467cff sub temp ,ui_button_gpio_disable ,null 
+67e3 20628000 rtn zero 
+67e4 284c0007 isolate0 7 ,temp 
+67e5 18410e1f and temp ,0x1f ,queue 
+67e6 680200a1 fetch 4 ,mem_gpio_wakeup_low 
+67e7 f920fe00 qsetflag true ,pdata 
+67e8 600200a1 store 4 ,mem_gpio_wakeup_low 
+67e9 680200a5 fetch 4 ,mem_gpio_wakeup_high 
+67ea fd20fe00 nqsetflag true ,pdata 
+67eb 600200a5 store 4 ,mem_gpio_wakeup_high 
+67ec 20600000 rtn 
+
+gpio_clr_wake:
+67ed 474e4033 bpatchx patch33_4 ,mem_patch33 
+67ee 18467cff sub temp ,ui_button_gpio_disable ,null 
+67ef 20628000 rtn zero 
+67f0 284c0007 isolate0 7 ,temp 
+67f1 18410e1f and temp ,0x1f ,queue 
+67f2 680200a1 fetch 4 ,mem_gpio_wakeup_low 
+67f3 f93ffe00 qset0 pdata 
+67f4 600200a1 store 4 ,mem_gpio_wakeup_low 
+67f5 680200a5 fetch 4 ,mem_gpio_wakeup_high 
+67f6 f93ffe00 qset0 pdata 
+67f7 600200a5 store 4 ,mem_gpio_wakeup_high 
+67f8 20600000 rtn 
+
+gpio_config_input_nowake:
+67f9 204067ed call gpio_clr_wake 
+67fa 202067fe branch gpio_config_input_without_wake 
+
+gpio_config_input:
+67fb 18467cff sub temp ,ui_button_gpio_disable ,null 
+67fc 20628000 rtn zero 
+67fd 2455e7e1 ncall gpio_set_wake ,wake 
+
+gpio_config_input_without_wake:
+67fe d8a0807c arg core_gpio_pd0 ,contw 
+67ff 20406830 call gpio_set_bit 
+6800 79400407 setflip gpio_active_bit ,temp 
+6801 d8a08078 arg core_gpio_pu0 ,contw 
+6802 20406830 call gpio_set_bit 
+6803 793f8407 set0 gpio_active_bit ,temp 
+6804 d8a08070 arg core_gpio_oe0 ,contw 
+6805 20206830 branch gpio_set_bit 
+
+gpio_set_high_impedance:
+6806 d8a0807c arg core_gpio_pd0 ,contw 
+6807 20406830 call gpio_set_bit 
+6808 793f8407 set0 gpio_active_bit ,temp 
+6809 d8a08078 arg core_gpio_pu0 ,contw 
+680a 20406830 call gpio_set_bit 
+680b 793f8407 set0 gpio_active_bit ,temp 
+680c d8a08070 arg core_gpio_oe0 ,contw 
+680d 20206830 branch gpio_set_bit 
+
+gpio_config_output:
+680e 18467cff sub temp ,ui_button_gpio_disable ,null 
+680f 20628000 rtn zero 
+6810 79400407 setflip gpio_active_bit ,temp 
+6811 2040682f call gpio_out 
+
+gpio_config_output0:
+6812 79200407 set1 gpio_active_bit ,temp 
+6813 d8a08070 arg core_gpio_oe0 ,contw 
+6814 20206830 branch gpio_set_bit 
+
+gpio_common:
+6815 18410e07 and temp ,0x07 ,queue 
+6816 18497e00 rshift3 temp ,pdata 
+6817 1fe17e03 and_into 3 ,pdata 
+6818 98a08a00 iadd contw ,contw 
+6819 e8a08000 ifetch 1 ,contw 
+681a 20600000 rtn 
+
+gpio_check_active:
+681b d8a08074 arg core_gpio_out0 ,contw 
+681c 2020681e branch get_bit_common 
+
+gpio_get_bit:
+681d d8a0811c arg core_gpio_in ,contw 
+
+get_bit_common:
+681e 20406815 call gpio_common 
+681f 284ffe07 isolate1 gpio_active_bit ,temp 
+6820 2020e823 branch gpio_get_bit_reverse ,true 
+6821 afec0000 qisolate0 pdata 
+6822 20600000 rtn 
+
+gpio_get_bit_reverse:
+6823 afefffff qisolate1 pdata 
+6824 20600000 rtn 
+
+gpio_out_inactive:
+6825 18467cff sub temp ,ui_button_gpio_disable ,null 
+6826 20628000 rtn zero 
+6827 2fcffe07 isolate1 7 ,null 
+6828 2020682c branch gpio_out_flag 
+
+gpio_out_active:
+6829 18467cff sub temp ,ui_button_gpio_disable ,null 
+682a 20628000 rtn zero 
+682b 2fcc0007 isolate0 7 ,null 
+
+gpio_out_flag:
+682c 58000000 setarg 0 
+682d 7d20fe07 nsetflag true ,gpio_active_bit ,pdata 
+682e 98428400 ixor temp ,temp 
+
+gpio_out:
+682f d8a08074 arg core_gpio_out0 ,contw 
+
+gpio_set_bit:
+6830 20406815 call gpio_common 
+6831 284ffe07 isolate1 gpio_active_bit ,temp 
+6832 f920fe00 qsetflag true ,pdata 
+6833 e0a08000 istore 1 ,contw 
+6834 20600000 rtn 
+
+gpio_set_before_lpm_common:
+6835 da3fffff arg -1 ,rega 
+6836 68108081 hfetch 1 ,core_gpio_sel1 
+6837 2fe00602 compare 0x02 ,pdata ,0x03 
+6838 2040e878 call neglact4_from_23_pin ,true 
+6839 2fe00601 compare 0x01 ,pdata ,0x03 
+683a 2040e87a call neglact2_form_25_pin ,true 
+683b 2fe00603 compare 0x03 ,pdata ,0x03 
+683c 2040e87a call neglact2_form_25_pin ,true 
+683d 2feffe02 isolate1 2 ,pdata 
+683e 2040e874 call neglect2_from_6_pin ,true 
+683f 2feffe03 isolate1 3 ,pdata 
+6840 2040e876 call neglect4_from_9_pin ,true 
+6841 2feffe04 isolate1 4 ,pdata 
+6842 2040e87c call neglact2_form_30_pin ,true 
+6843 2feffe06 isolate1 6 ,pdata 
+6844 7d20a204 nsetflag true ,04 ,rega 
+6845 2feffe07 isolate1 7 ,pdata 
+6846 7d20a205 nsetflag true ,05 ,rega 
+6847 68108082 hfetch 1 ,core_gpio_sel2 
+6848 2feffe00 isolate1 0 ,pdata 
+6849 7d20a21b nsetflag true ,27 ,rega 
+684a 2feffe01 isolate1 1 ,pdata 
+684b 7d20a21c nsetflag true ,28 ,rega 
+684c 2feffe02 isolate1 2 ,pdata 
+684d 7d20a203 nsetflag true ,03 ,rega 
+684e 2feffe03 isolate1 3 ,pdata 
+684f 7d20a208 nsetflag true ,08 ,rega 
+6850 2feffe04 isolate1 4 ,pdata 
+6851 7d20a214 nsetflag true ,20 ,rega 
+6852 2feffe05 isolate1 5 ,pdata 
+6853 7d20a215 nsetflag true ,21 ,rega 
+6854 2feffe06 isolate1 6 ,pdata 
+6855 7d20a216 nsetflag true ,22 ,rega 
+6856 2feffe07 isolate1 7 ,pdata 
+6857 7d20a217 nsetflag true ,23 ,rega 
+6858 68108080 hfetch 1 ,core_gpio_sel 
+6859 2feffe00 isolate1 0 ,pdata 
+685a 7d20a205 nsetflag true ,05 ,rega 
+685b 2feffe01 isolate1 1 ,pdata 
+685c 7d20a206 nsetflag true ,06 ,rega 
+685d 2feffe02 isolate1 2 ,pdata 
+685e 7d20a207 nsetflag true ,07 ,rega 
+685f 2feffe03 isolate1 3 ,pdata 
+6860 7d20a212 nsetflag true ,18 ,rega 
+6861 2feffe04 isolate1 4 ,pdata 
+6862 7d20a213 nsetflag true ,19 ,rega 
+6863 2feffe05 isolate1 5 ,pdata 
+6864 7d20a214 nsetflag true ,20 ,rega 
+6865 2feffe06 isolate1 6 ,pdata 
+6866 7d20a215 nsetflag true ,21 ,rega 
+6867 2feffe07 isolate1 7 ,pdata 
+6868 7d20a216 nsetflag true ,22 ,rega 
+6869 68108062 hfetch 1 ,core_uart_ctrl 
+686a 2feffe04 isolate1 4 ,pdata 
+686b 2040e87e call neglact2_form_2_pin ,true 
+686c 474ec033 bpatchx patch33_5 ,mem_patch33 
+686d 68120078 hfetch 4 ,core_gpio_pu0 
+686e 681a007c hfetcht 4 ,core_gpio_pd0 
+686f 9841fe00 ior temp ,pdata 
+6870 1fe47e00 invert pdata ,pdata 
+6871 9a217e00 iand rega ,pdata 
+6872 60120070 hstore 4 ,core_gpio_oe0 
+6873 20600000 rtn 
+
+neglect2_from_6_pin:
+6874 d8e00006 arg 6 ,queue 
+6875 20206884 branch neglect_2_pin 
+
+neglect4_from_9_pin:
+6876 d8e00009 arg 9 ,queue 
+6877 20206882 branch neglact_4_pin 
+
+neglact4_from_23_pin:
+6878 d8e00017 arg 23 ,queue 
+6879 20206882 branch neglact_4_pin 
+
+neglact2_form_25_pin:
+687a d8e00019 arg 25 ,queue 
+687b 20206884 branch neglect_2_pin 
+
+neglact2_form_30_pin:
+687c d8e0001e arg 30 ,queue 
+687d 20206884 branch neglect_2_pin 
+
+neglact2_form_2_pin:
+687e d8e00002 arg 2 ,queue 
+687f 20206884 branch neglect_2_pin 
+
+neglact_1_pin:
+6880 df200001 arg 1 ,loopcnt 
+6881 20206885 branch neglect_pin_loop 
+
+neglact_4_pin:
+6882 df200004 arg 4 ,loopcnt 
+6883 20206885 branch neglect_pin_loop 
+
+neglect_2_pin:
+6884 df200002 arg 2 ,loopcnt 
+
+neglect_pin_loop:
+6885 f93fa200 qset0 rega 
+6886 18e08e01 increase 1 ,queue 
+6887 c2006885 loop neglect_pin_loop 
+6888 20600000 rtn 
+
+gpio_cfg_uart_tx_output:
+6889 20406895 call gpio_uart2gpio 
+688a d8400006 arg uart_wakeup_tx ,temp 
+688b 2020680e branch gpio_config_output 
+
+gpio_pu_uart_tx:
+688c 20406889 call gpio_cfg_uart_tx_output 
+688d d8400006 arg uart_wakeup_tx ,temp 
+688e 20206825 branch gpio_out_inactive 
+
+gpio_rx_config_input_with_pu:
+688f 20406895 call gpio_uart2gpio 
+6890 68108078 hfetch 1 ,core_gpio_pu0 
+6891 79207e07 set1 uart_wakeup_rx ,pdata 
+6892 60108078 hstore 1 ,core_gpio_pu0 
+6893 d8400007 arg uart_wakeup_rx ,temp 
+6894 202067fb branch gpio_config_input 
+
+gpio_uart2gpio:
+6895 68108081 hfetch 1 ,core_gpio_sel1 
+6896 1fe17efb and_into 0xfb ,pdata 
+6897 60108081 hstore 1 ,core_gpio_sel1 
+6898 20600000 rtn 
+
+gpio_check_uart_state:
+6899 68108081 hfetch 1 ,core_gpio_sel1 
+689a 2feffe02 isolate1 2 ,pdata 
+689b 20600000 rtn 
+
+load_chip_option:
+689c 2040666a call otp_enable_chgpump 
+689d 580007e0 setarg otp_chip_functions 
+689e da204150 arg mem_chip_functions ,rega 
+689f d8400002 arg 0x02 ,temp 
+68a0 204066b3 call otpd_read_data 
+68a1 2020666d branch otp_disable_chgpump 
+
+load_adc_init:
+68a2 2040666a call otp_enable_chgpump 
+68a3 580007e2 setarg otp_adc_io_0_5v_addr 
+68a4 da20421d arg mem_0_5_adc_io_data ,rega 
+68a5 d840000e arg 14 ,temp 
+68a6 204066b3 call otpd_read_data 
+68a7 2020666d branch otp_disable_chgpump 
+
+adc_init_data:
+68a8 474f4033 bpatchx patch33_6 ,mem_patch33 
+68a9 204068a2 call load_adc_init 
+68aa 6800c22d fetch 1 ,mem_adc_config_flag 
+68ab c00068af beq adc_config_vinlpm ,adc_init_data_vinlpm 
+68ac c000e8c3 beq adc_config_hvin ,adc_init_data_hvin 
+68ad c00168d7 beq adc_config_gpio ,adc_init_data_io 
+68ae 20600000 rtn 
+
+adc_init_data_vinlpm:
+68af 68094229 fetcht 2 ,mem_otp_adc_flag 
+68b0 5800aa55 setarg otp_adc_flag 
+68b1 98467c00 isub temp ,null 
+68b2 2022e8b8 branch adc_check_data_vinlpm ,zero 
+68b3 58004dfa setarg 0x4dfa 
+68b4 60014227 store 2 ,mem_3v_adc_vinlpm_data 
+68b5 58004894 setarg 0x4894 
+68b6 60014221 store 2 ,mem_2v_adc_vinlpm_data 
+68b7 202068c0 branch set_vdd_reference_voltage_1v 
+
+adc_check_data_vinlpm:
+68b8 68014227 fetch 2 ,mem_3v_adc_vinlpm_data 
+68b9 243a68bc nbranch adc_check_2v_vinlpm ,blank 
+68ba 58004dfa setarg 0x4dfa 
+68bb 60014227 store 2 ,mem_3v_adc_vinlpm_data 
+
+adc_check_2v_vinlpm:
+68bc 68014221 fetch 2 ,mem_2v_adc_vinlpm_data 
+68bd 243a68c0 nbranch set_vdd_reference_voltage_1v ,blank 
+68be 58004894 setarg 0x4894 
+68bf 60014221 store 2 ,mem_2v_adc_vinlpm_data 
+
+set_vdd_reference_voltage_1v:
+68c0 58000064 setarg 100 
+68c1 6001422b store 2 ,mem_reference_voltage 
+68c2 20600000 rtn 
+
+adc_init_data_hvin:
+68c3 68094229 fetcht 2 ,mem_otp_adc_flag 
+68c4 5800aa55 setarg otp_adc_flag 
+68c5 98467c00 isub temp ,null 
+68c6 2022e8cc branch adc_check_data_hvin ,zero 
+68c7 58005932 setarg 0x5932 
+68c8 60014225 store 2 ,mem_5v_adc_hvin_data 
+68c9 58004323 setarg 0x4323 
+68ca 6001421f store 2 ,mem_1v_adc_hvin_data 
+68cb 202068d4 branch set_vdd_reference_voltage_4v 
+
+adc_check_data_hvin:
+68cc 68014225 fetch 2 ,mem_5v_adc_hvin_data 
+68cd 243a68d0 nbranch adc_check_1v_hvin ,blank 
+68ce 58005932 setarg 0x5932 
+68cf 60014225 store 2 ,mem_5v_adc_hvin_data 
+
+adc_check_1v_hvin:
+68d0 6801421f fetch 2 ,mem_1v_adc_hvin_data 
+68d1 243a68d4 nbranch set_vdd_reference_voltage_4v ,blank 
+68d2 58004323 setarg 0x4323 
+68d3 6001421f store 2 ,mem_1v_adc_hvin_data 
+
+set_vdd_reference_voltage_4v:
+68d4 58000190 setarg 400 
+68d5 6001422b store 2 ,mem_reference_voltage 
+68d6 20600000 rtn 
+
+adc_init_data_io:
+68d7 68094229 fetcht 2 ,mem_otp_adc_flag 
+68d8 5800aa55 setarg otp_adc_flag 
+68d9 98467c00 isub temp ,null 
+68da 2022e8e0 branch adc_check_data_io ,zero 
+68db 58006946 setarg 0x6946 
+68dc 60014223 store 2 ,mem_1v_adc_io_data 
+68dd 58005377 setarg 0x5377 
+68de 6001421d store 2 ,mem_0_5_adc_io_data 
+68df 202068e8 branch set_vdd_reference_voltage_0_5v 
+
+adc_check_data_io:
+68e0 68014223 fetch 2 ,mem_1v_adc_io_data 
+68e1 243a68e4 nbranch adc_check_0_5v_io ,blank 
+68e2 58006946 setarg 0x6946 
+68e3 60014223 store 2 ,mem_1v_adc_io_data 
+
+adc_check_0_5v_io:
+68e4 6801421d fetch 2 ,mem_0_5_adc_io_data 
+68e5 243a68e8 nbranch set_vdd_reference_voltage_0_5v ,blank 
+68e6 58005377 setarg 0x5377 
+68e7 6001421d store 2 ,mem_0_5_adc_io_data 
+
+set_vdd_reference_voltage_0_5v:
+68e8 58000032 setarg 50 
+68e9 6001422b store 2 ,mem_reference_voltage 
+68ea 20600000 rtn 
+
+adc_set_mode:
+68eb 6800c22d fetch 1 ,mem_adc_config_flag 
+68ec c00068f0 beq adc_config_vinlpm ,adc_check_vinlpm 
+68ed c000e8f2 beq adc_config_hvin ,adc_check_hvin 
+68ee c00168f4 beq adc_config_gpio ,adc_check_gpio 
+68ef 20600000 rtn 
+
+adc_check_vinlpm:
+68f0 708971bf jam 0xbf ,rf_adc_mode 
+68f1 202068f8 branch read_adc 
+
+adc_check_hvin:
+68f2 708971af jam 0xaf ,rf_adc_mode 
+68f3 202068f8 branch read_adc 
+
+adc_check_gpio:
+68f4 7089718f jam 0x8f ,rf_adc_mode 
+68f5 6800c22e fetch 1 ,mem_adc_channel 
+68f6 60108973 hstore 1 ,rf_adc_ch 
+68f7 202068f8 branch read_adc 
+
+read_adc:
+68f8 474fc033 bpatchx patch33_7 ,mem_patch33 
+68f9 68108053 hfetch 1 ,core_uart_baud + 1 
+68fa 79207e07 set1 7 ,pdata 
+68fb 60108053 hstore 1 ,core_uart_baud + 1 
+68fc 68108973 hfetch 1 ,rf_adc_ch 
+68fd 1fe1fe30 or_into 0x30 ,pdata 
+68fe 60108973 hstore 1 ,rf_adc_ch 
+68ff 7089067c jam 0x7c ,rfen_adc 
+6900 708972aa jam 0xaa ,rf_adc_gc 
+6901 20001388 nop 5000 
+6902 68190150 hfetcht 2 ,core_adc_sum 
+6903 68108053 hfetch 1 ,core_uart_baud + 1 
+6904 793ffe07 set0 7 ,pdata 
+6905 60108053 hstore 1 ,core_uart_baud + 1 
+6906 6009422f storet 2 ,mem_adc_current_value 
+6907 20600000 rtn 
+
+vdd_calculate_by_mode:
+6908 47504034 bpatchx patch34_0 ,mem_patch34 
+6909 6800c22d fetch 1 ,mem_adc_config_flag 
+690a c000690e beq adc_config_vinlpm ,vdd_calculate_vinlpm 
+690b c000e912 beq adc_config_hvin ,vdd_calculate_hvin 
+690c c0016916 beq adc_config_gpio ,vdd_calculate_io 
+690d 20600000 rtn 
+
+vdd_calculate_vinlpm:
+690e 68014227 fetch 2 ,mem_3v_adc_vinlpm_data 
+690f 68094221 fetcht 2 ,mem_2v_adc_vinlpm_data 
+6910 da6000c8 arg 200 ,regc 
+6911 2020691a branch vdd_calculate 
+
+vdd_calculate_hvin:
+6912 68014225 fetch 2 ,mem_5v_adc_hvin_data 
+6913 6809421f fetcht 2 ,mem_1v_adc_hvin_data 
+6914 da600064 arg 100 ,regc 
+6915 2020691a branch vdd_calculate 
+
+vdd_calculate_io:
+6916 68014223 fetch 2 ,mem_1v_adc_io_data 
+6917 6809421d fetcht 2 ,mem_0_5_adc_io_data 
+6918 da600032 arg 50 ,regc 
+6919 2020691a branch vdd_calculate 
+
+vdd_calculate:
+691a 98462200 isub temp ,rega 
+691b 6801422f fetch 2 ,mem_adc_current_value 
+691c 98467e00 isub temp ,pdata 
+691d 24216927 nbranch vdd_calculate1 ,positive 
+691e 6809422b fetcht 2 ,mem_reference_voltage 
+691f 984fa400 imul32 temp ,regb 
+6920 1a627e00 copy regc ,pdata 
+6921 9a2ffe00 imul32 rega ,pdata 
+6922 9a40fe00 iadd regb ,pdata 
+
+vdd_calculate2:
+6923 9a26fc00 idiv rega 
+6924 20407f86 call wait_div_end 
+6925 1807fe00 quotient pdata 
+6926 20600000 rtn 
+
+vdd_calculate1:
+6927 18427e00 copy temp ,pdata 
+6928 6809422f fetcht 2 ,mem_adc_current_value 
+6929 98467e00 isub temp ,pdata 
+692a 6809422b fetcht 2 ,mem_reference_voltage 
+692b 984fa400 imul32 temp ,regb 
+692c 1a627e00 copy regc ,pdata 
+692d 9a2ffe00 imul32 rega ,pdata 
+692e 9a467e00 isub regb ,pdata 
+692f 20206923 branch vdd_calculate2 
+
+adc_bat_percent_lowpower_out:
+6930 ea240000 ifetch 8 ,rega 
+6931 60040a9a store 8 ,mem_pdatatemp 
+6932 68010a9a fetch 2 ,mem_pdatatemp 
+6933 68090a9c fetcht 2 ,mem_pdatatemp + 2 
+6934 98462200 isub temp ,rega 
+6935 68010aa0 fetch 2 ,mem_pdatatemp + 6 
+6936 98462400 isub temp ,regb 
+6937 68090a9e fetcht 2 ,mem_pdatatemp + 4 
+6938 98467c00 isub temp ,null 
+6939 24416940 ncall adc_set_low_power_flag ,positive 
+693a 1a4ffe64 mul32 regb ,100 ,pdata 
+693b 9a26fc00 idiv rega 
+693c 20407f86 call wait_div_end 
+693d 1807fe00 quotient pdata 
+693e 205a6944 call adc_set_no_power_flag ,blank 
+693f 20600000 rtn 
+
+adc_set_low_power_flag:
+6940 6800c231 fetch 1 ,mem_adc_power_flag 
+6941 79207e00 set1 0 ,pdata 
+6942 6000c231 store 1 ,mem_adc_power_flag 
+6943 20600000 rtn 
+
+adc_set_no_power_flag:
+6944 6808c231 fetcht 1 ,mem_adc_power_flag 
+6945 79200401 set1 1 ,temp 
+6946 6008c231 storet 1 ,mem_adc_power_flag 
+6947 20600000 rtn 
+
+keyscan_key_init:
+6948 6801423d fetch 2 ,mem_key_num_ptr 
+6949 efe08000 ifetch 1 ,pdata 
+
+keyscan_key_init_next:
+694a 207a0000 rtn blank 
+694b 1fe27200 copy pdata ,loopcnt 
+694c 6801423d fetch 2 ,mem_keyscan_ptr 
+694d 1fe0fe03 increase 3 ,pdata 
+694e 1fe22200 copy pdata ,rega 
+
+keyscan_key_init_lp1:
+694f ea288000 ifetcht 1 ,rega 
+6950 204067fb call gpio_config_input 
+6951 1a20a201 increase key_conf_struct_len ,rega 
+6952 c200694f loop keyscan_key_init_lp1 
+
+keyscan_key_init_end:
+6953 20600000 rtn 
+
+keyscan_scan_key:
+6954 6801423d fetch 2 ,mem_keyscan_ptr 
+6955 1fe0fe03 increase 3 ,pdata 
+6956 1fe22200 copy pdata ,rega 
+6957 18002400 force 0 ,regb 
+6958 700b1200 jam 0 ,mem_key_value_temp 
+
+keyscan_scan_key_lp1:
+6959 ea288000 ifetcht 1 ,rega 
+695a 2040681d call gpio_get_bit 
+695b 4750c034 bpatchx patch34_1 ,mem_patch34 
+695c 68010b12 fetch 2 ,mem_key_value_temp 
+695d 1a420e00 copy regb ,queue 
+695e f920fe00 qsetflag true ,pdata 
+695f 60010b12 store 2 ,mem_key_value_temp 
+6960 1a20a201 increase key_conf_struct_len ,rega 
+6961 1a40a401 increase 1 ,regb 
+6962 6801423d fetch 2 ,mem_key_num_ptr 
+6963 efe08000 ifetch 1 ,pdata 
+
+keyscan_scan_key_lp1_next:
+6964 9a42fc00 ixor regb ,null 
+6965 2422e959 nbranch keyscan_scan_key_lp1 ,zero 
+6966 68010b12 fetch 2 ,mem_key_value_temp 
+6967 68090b14 fetcht 2 ,mem_key_value 
+6968 9842fc00 ixor temp ,null 
+6969 20628000 rtn zero 
+696a 78347c00 enable user 
+696b 20600000 rtn 
+
+keyscan_process_lpm_before:
+696c 6801423d fetch 2 ,mem_key_num_ptr 
+696d efe08000 ifetch 1 ,pdata 
+
+keyscan_process_lpm_before_next:
+696e 207a0000 rtn blank 
+696f 1fe27200 copy pdata ,loopcnt 
+6970 6801423d fetch 2 ,mem_keyscan_ptr 
+6971 1fe0fe03 increase 3 ,pdata 
+6972 1fe22200 copy pdata ,rega 
+
+keyscan_process_lpm_before_lp1:
+6973 ea288000 ifetcht 1 ,rega 
+6974 204067dd call gpio_set_wake_by_current_state 
+6975 1a20a201 increase key_conf_struct_len ,rega 
+6976 c2006973 loop keyscan_process_lpm_before_lp1 
+
+keyscan_process_lpm_before_end:
+6977 20600000 rtn 
+
+keyscan_key_process:
+6978 d8e00009 arg key_scan_timer ,queue 
+6979 20407f16 call timer_check 
+697a 247a0000 nrtn blank 
+697b 58000020 setarg 0x20 
+697c d8e00009 arg key_scan_timer ,queue 
+697d 20407f08 call timer_init 
+697e 78547c00 disable user 
+697f 2040696c call keyscan_process_lpm_before 
+6980 47514034 bpatchx patch34_2 ,mem_patch34 
+6981 6801423d fetch 2 ,mem_key_num_ptr 
+6982 efe08000 ifetch 1 ,pdata 
+
+keyscan_key_process_next:
+6983 207a0000 rtn blank 
+6984 20406954 call keyscan_scan_key 
+6985 24347d02 nbranch lpm_button_clean_wake_lock ,user 
+6986 20407d00 call lpm_button_get_wake_lock 
+6987 78547c00 disable user 
+6988 68010b12 fetch 2 ,mem_key_value_temp 
+6989 60010b19 store 2 ,mem_key_value_temp4 
+698a 700b1b00 jam 0 ,mem_key_value_temp6 
+698b 18000e00 force 0 ,queue 
+
+keyscan_key_lp1:
+698c 68010b14 fetch 2 ,mem_key_value 
+698d 1fe30400 rshift pdata ,temp 
+698e 60090b14 storet 2 ,mem_key_value 
+698f 1fe17e01 and pdata ,0x01 ,pdata 
+6990 68090b19 fetcht 2 ,mem_key_value_temp4 
+6991 18412201 and temp ,0x01 ,rega 
+6992 18430400 rshift temp ,temp 
+6993 60090b19 storet 2 ,mem_key_value_temp4 
+6994 9a22fc00 ixor rega ,null 
+6995 2442e9a1 ncall keyscan_send_key_data ,zero 
+6996 6801423d fetch 2 ,mem_key_num_ptr 
+6997 efe08000 ifetch 1 ,pdata 
+
+keyscan_key_lp1_next:
+6998 68088b1b fetcht 1 ,mem_key_value_temp6 
+6999 18408401 increase 1 ,temp 
+699a 60088b1b storet 1 ,mem_key_value_temp6 
+699b 18420e00 copy temp ,queue 
+699c 98e2fc00 ixor queue ,null 
+699d 2422e98c nbranch keyscan_key_lp1 ,zero 
+699e 68010b12 fetch 2 ,mem_key_value_temp 
+699f 60010b14 store 2 ,mem_key_value 
+69a0 20600000 rtn 
+
+keyscan_send_key_data:
+69a1 4751c034 bpatchx patch34_3 ,mem_patch34 
+69a2 6801423d fetch 2 ,mem_keyscan_ptr 
+69a3 1fe0fe01 increase 1 ,pdata 
+69a4 efe10000 ifetch 2 ,pdata 
+69a5 20207f9c branch callback_func 
+
+pwm_init:
+69a6 68108042 hfetch 1 ,core_clksel 
+69a7 9a21fe00 ior rega ,pdata 
+69a8 60108042 hstore 1 ,core_clksel 
+69a9 68110050 hfetch 2 ,core_clkoff 
+69aa 793ffe0d set0 clock_off_pwm ,pdata 
+69ab 60110050 hstore 2 ,core_clkoff 
+
+delay_nop100:
+69ac 20000064 nop 100 
+69ad 20600000 rtn 
+
+pwm_out_set:
+69ae 68098a9c fetcht 3 ,mem_pdatatemp + 2 
+69af 58b71b00 setarg pwm_12mhz 
+69b0 9846fc00 idiv temp 
+69b1 20407f86 call wait_div_end 
+69b2 18078400 quotient temp 
+69b3 68008a9f fetch 1 ,mem_pdatatemp + 5 
+69b4 984ffe00 imul32 temp ,pdata 
+69b5 1fe6fc64 div pdata ,100 
+69b6 20407f86 call wait_div_end 
+69b7 1807a200 quotient rega 
+69b8 18427e00 copy temp ,pdata 
+69b9 9a262400 isub rega ,regb 
+69ba 68008a9b fetch 1 ,mem_pdatatemp + 1 
+69bb 204069be call pwm_duty_cycle_set 
+69bc 68008a9a fetch 1 ,mem_pdatatemp 
+69bd 202069d5 branch pwm_enable 
+
+pwm_duty_cycle_set:
+69be c00069c4 beq 0 ,pwm_pwm0_duty_set 
+69bf c000e9c6 beq 1 ,pwm_pwm1_duty_set 
+69c0 c00169c8 beq 2 ,pwm_pwm2_duty_set 
+69c1 c001e9ca beq 3 ,pwm_pwm3_duty_set 
+69c2 c00269cc beq 4 ,pwm_pwm4_duty_set 
+69c3 c002e9ce beq 5 ,pwm_pwm5_duty_set 
+
+pwm_pwm0_duty_set:
+69c4 d8a080a0 arg core_pwm_pcnt0 ,contw 
+69c5 202069d0 branch pwm_set_pncnt 
+
+pwm_pwm1_duty_set:
+69c6 d8a080a4 arg core_pwm_pcnt1 ,contw 
+69c7 202069d0 branch pwm_set_pncnt 
+
+pwm_pwm2_duty_set:
+69c8 d8a080a8 arg core_pwm_pcnt2 ,contw 
+69c9 202069d0 branch pwm_set_pncnt 
+
+pwm_pwm3_duty_set:
+69ca d8a08064 arg core_pwm_pcnt3 ,contw 
+69cb 202069d0 branch pwm_set_pncnt 
+
+pwm_pwm4_duty_set:
+69cc d8a08068 arg core_pwm_pcnt4 ,contw 
+69cd 202069d0 branch pwm_set_pncnt 
+
+pwm_pwm5_duty_set:
+69ce d8a0806c arg core_pwm_pcnt5 ,contw 
+69cf 202069d0 branch pwm_set_pncnt 
+
+pwm_set_pncnt:
+69d0 1a227e00 copy rega ,pdata 
+69d1 e0a10000 istore 2 ,contw 
+69d2 1a427e00 copy regb ,pdata 
+69d3 e0a10000 istore 2 ,contw 
+69d4 20600000 rtn 
+
+pwm_enable:
+69d5 78347c00 enable user 
+69d6 202069d8 branch pwm_gpio_set 
+
+pwm_disable:
+69d7 78547c00 disable user 
+
+pwm_gpio_set:
+69d8 c00269e3 beq 4 ,pwm_gpio4_set 
+69d9 c002e9e5 beq 5 ,pwm_gpio5_set 
+69da c00de9e7 beq 27 ,pwm_gpio27_set 
+69db c00e69e9 beq 28 ,pwm_gpio28_set 
+69dc c001e9eb beq 3 ,pwm_gpio3_set 
+69dd c00469ed beq 8 ,pwm_gpio8_set 
+69de c00a69ef beq 20 ,pwm_gpio20_set 
+69df c00ae9f1 beq 21 ,pwm_gpio21_set 
+69e0 c00b69f3 beq 22 ,pwm_gpio22_set 
+69e1 c00be9f5 beq 23 ,pwm_gpio23_set 
+69e2 20600000 rtn 
+
+pwm_gpio4_set:
+69e3 d8e00006 arg 6 ,queue 
+69e4 202069ff branch pwm_one_set_select 
+
+pwm_gpio5_set:
+69e5 d8e00007 arg 7 ,queue 
+69e6 202069ff branch pwm_one_set_select 
+
+pwm_gpio27_set:
+69e7 d8e00008 arg 8 ,queue 
+69e8 202069ff branch pwm_one_set_select 
+
+pwm_gpio28_set:
+69e9 d8e00009 arg 9 ,queue 
+69ea 202069ff branch pwm_one_set_select 
+
+pwm_gpio3_set:
+69eb d8e0000a arg 10 ,queue 
+69ec 202069ff branch pwm_one_set_select 
+
+pwm_gpio8_set:
+69ed d8e0000b arg 11 ,queue 
+69ee 202069ff branch pwm_one_set_select 
+
+pwm_gpio20_set:
+69ef d8e0000c arg 12 ,queue 
+69f0 20206a01 branch pwm_tw0_set_select 
+
+pwm_gpio21_set:
+69f1 d8e0000d arg 13 ,queue 
+69f2 20206a01 branch pwm_tw0_set_select 
+
+pwm_gpio22_set:
+69f3 d8e0000e arg 14 ,queue 
+69f4 20206a01 branch pwm_tw0_set_select 
+
+pwm_gpio23_set:
+69f5 d8e0000f arg 15 ,queue 
+69f6 20206a01 branch pwm_tw0_set_select 
+
+pwm_set_select:
+69f7 68110081 hfetch 2 ,core_gpio_sel1 
+69f8 f9347e00 qsetflag user ,pdata 
+69f9 60110081 hstore 2 ,core_gpio_sel1 
+69fa 1a220e00 copy rega ,queue 
+69fb 68108085 hfetch 1 ,core_gpio_key2 
+69fc f9347e00 qsetflag user ,pdata 
+69fd 60108085 hstore 1 ,core_gpio_key2 
+69fe 20600000 rtn 
+
+pwm_one_set_select:
+69ff 18e0a3fc add queue ,-4 ,rega 
+6a00 202069f7 branch pwm_set_select 
+
+pwm_tw0_set_select:
+6a01 18e0a3f6 add queue ,-10 ,rega 
+6a02 202069f7 branch pwm_set_select 
+
+rfcomm_init:
+6a03 20758000 rtn wake 
+6a04 70456700 jam 0 ,mem_rfcomm_send_more_pkt 
+6a05 7004ed03 jam bits9600 ,memremoterpnbitrate 
+6a06 7004ee03 jam databits8 ,memremoteprndatabits 
+6a07 7004f211 jam 0x11 ,memremoteprnxon 
+6a08 7004f313 jam 0x13 ,memremoteprnxoff 
+6a09 58000000 setarg 0 
+6a0a 600184ef store 3 ,memremoteprnstopbit 
+6a0b 6000c254 store 1 ,mem_spp_state 
+6a0c 70468100 jam 0 ,memui_reconnect_mode 
+
+rfcomm_init_spp:
+6a0d 47524034 bpatchx patch34_4 ,mem_patch34 
+6a0e 58000000 setarg 0 
+6a0f 6000c254 store 1 ,mem_spp_state 
+6a10 6000c564 store 1 ,mem_remote_spp_channel 
+6a11 6000c55d store 1 ,mem_pn_dlci 
+6a12 6800c56b fetch 1 ,mem_credit_flag 
+6a13 c000ea16 beq credit_enable ,rfcomm_init_spp_with_credit 
+6a14 70456950 jam 0x50 ,mem_credit_given 
+6a15 20600000 rtn 
+
+rfcomm_init_spp_with_credit:
+6a16 70456900 jam 0x00 ,mem_credit_given 
+6a17 20600000 rtn 
+
+set_cr_bit:
+6a18 18418402 or_into 0x02 ,temp 
+6a19 20600000 rtn 
+
+rfcomm_calculate_fcs_sabm:
+6a1a 18427e00 copy temp ,pdata 
+6a1b 1fedfe00 reverse pdata ,pdata 
+6a1c 6000c562 store 1 ,memfcstemp3 
+6a1d 18007e3f force ini_tx_sabm ,pdata 
+6a1e 1fedfe00 reverse pdata ,pdata 
+6a1f 6000c561 store 1 ,memfcstemp2 
+6a20 18007e01 force 0x01 ,pdata 
+6a21 1fedfe00 reverse pdata ,pdata 
+6a22 6000c560 store 1 ,memfcstemp1 
+6a23 20406a50 call caculate_fcs 
+6a24 18427e00 copy temp ,pdata 
+6a25 20600000 rtn 
+
+rfcomm_calculate_fcs_ua:
+6a26 1fedfe00 reverse pdata ,pdata 
+6a27 6000c562 store 1 ,memfcstemp3 
+6a28 18007e73 force rsp_tx_ua ,pdata 
+6a29 1fedfe00 reverse pdata ,pdata 
+6a2a 6000c561 store 1 ,memfcstemp2 
+6a2b 18007e01 force 0x01 ,pdata 
+6a2c 1fedfe00 reverse pdata ,pdata 
+6a2d 6000c560 store 1 ,memfcstemp1 
+6a2e 20206a50 branch caculate_fcs 
+
+rfcomm_calculate_fcs_dlci0:
+6a2f 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6a30 203a6a33 branch rfcomm_calculate_fcs_dlci0_res ,blank 
+6a31 58000070 setarg 0x70 
+6a32 20600000 rtn 
+
+rfcomm_calculate_fcs_dlci0_res:
+6a33 580000aa setarg 0xaa 
+6a34 20600000 rtn 
+
+rfcomm_save_fcs_uih:
+6a35 1fedfe00 reverse pdata ,pdata 
+6a36 6000c562 store 1 ,memfcstemp3 
+6a37 18007eef force rsp_rx_uih ,pdata 
+6a38 20406a44 call caculate_uihdata_fcs 
+6a39 680904f7 fetcht 2 ,mem_contw_temp 
+6a3a 18420a00 copy temp ,contw 
+6a3b e0a08000 istore 1 ,contw 
+6a3c 18a20400 copy contw ,temp 
+6a3d 600904f7 storet 2 ,mem_contw_temp 
+6a3e 18007eff force rsp_rx_uih_wdata ,pdata 
+6a3f 20406a44 call caculate_uihdata_fcs 
+6a40 680904f7 fetcht 2 ,mem_contw_temp 
+6a41 18420a00 copy temp ,contw 
+6a42 e0a08000 istore 1 ,contw 
+6a43 20600000 rtn 
+
+caculate_uihdata_fcs:
+6a44 1fedfe00 reverse pdata ,pdata 
+6a45 6000c561 store 1 ,memfcstemp2 
+6a46 68014561 fetch 2 ,memfcstemp2 
+6a47 1fed7e00 lshift8 pdata ,pdata 
+6a48 600184f4 store 3 ,mem_mod2div_temp 
+6a49 da200107 arg 0x107 ,rega 
+6a4a da40000f arg 0xf ,regb 
+6a4b 20406a5d call mod2div 
+6a4c 1fe2fed7 xor_into 0xd7 ,pdata 
+6a4d 1fe47e00 invert pdata ,pdata 
+6a4e 1fedfe00 reverse pdata ,pdata 
+6a4f 20600000 rtn 
+
+caculate_fcs:
+6a50 6801c560 fetch 3 ,memfcstemp1 
+6a51 600184f4 store 3 ,mem_mod2div_temp 
+6a52 da200107 arg 0x107 ,rega 
+6a53 da40000f arg 0xf ,regb 
+6a54 20406a5d call mod2div 
+6a55 1fed7e00 lshift8 pdata ,pdata 
+6a56 da400007 arg 0x7 ,regb 
+6a57 20406a5d call mod2div 
+6a58 1fe2fe2b xor_into 0x2b ,pdata 
+6a59 1fe47e00 invert pdata ,pdata 
+6a5a 1fedfe00 reverse pdata ,pdata 
+6a5b 1fe20400 copy pdata ,temp 
+6a5c 20600000 rtn 
+
+mod2div:
+6a5d da600000 arg 0 ,regc 
+6a5e 1a427200 copy regb ,loopcnt 
+6a5f 20407e71 call right_shift_n 
+6a60 1fe20400 icopy temp 
+
+mod2div_loop:
+6a61 18427e00 copy temp ,pdata 
+6a62 1a63a600 lshift regc ,regc 
+6a63 c3046a66 bbit0 8 ,mod2div_not_enough_reduction 
+6a64 9a228400 ixor rega ,temp 
+6a65 1a60a601 increase 1 ,regc 
+
+mod2div_not_enough_reduction:
+6a66 18438400 lshift temp ,temp 
+6a67 680184f4 fetch 3 ,mem_mod2div_temp 
+6a68 1a40a5ff increase -1 ,regb 
+6a69 2a41feff compare 0xff ,regb ,0xff 
+6a6a 2020ea70 branch mod2div_end ,true 
+6a6b 1a427200 copy regb ,loopcnt 
+6a6c 20407e71 call right_shift_n 
+6a6d 2feffe00 isolate1 0 ,pdata 
+6a6e 79208400 setflag true ,0 ,temp 
+6a6f 20206a61 branch mod2div_loop 
+
+mod2div_end:
+6a70 18437e00 rshift temp ,pdata 
+6a71 20600000 rtn 
+
+get_rfcomm_snd_adss:
+6a72 6808c55d fetcht 1 ,mem_pn_dlci 
+
+dlci_to_address_cmd:
+6a73 184b8400 lshift2 temp ,temp 
+6a74 79200400 set1 rfcomm_address_ext_len ,temp 
+6a75 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6a76 245a6a18 ncall set_cr_bit ,blank 
+6a77 6008850d storet 1 ,mem_rfcomm_send_adss 
+6a78 20600000 rtn 
+
+channel_to_dlci:
+6a79 18438400 lshift temp ,temp 
+6a7a 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6a7b 793a0400 setflag blank ,0 ,temp 
+6a7c 20600000 rtn 
+
+rfcomm_rx_process_dlci0_sabm:
+6a7d 680884fc fetcht 1 ,mem_current_channel 
+6a7e 7004fed7 jam 0xd7 ,mem_current_fcs 
+6a7f 20406bb6 call rfcomm_send_ua 
+6a80 6800c251 fetch 1 ,mem_rfcomm_state 
+6a81 79207e06 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+6a82 79207e07 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+6a83 6000c251 store 1 ,mem_rfcomm_state 
+6a84 70456300 jam 0 ,mem_rfcomm_initiator 
+6a85 20206b97 branch rfcomm_rx_process_end 
+
+rfcomm_rx_process_dlci0_ua:
+6a86 6800c251 fetch 1 ,mem_rfcomm_state 
+6a87 79207e07 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+6a88 6000c251 store 1 ,mem_rfcomm_state 
+6a89 20206b97 branch rfcomm_rx_process_end 
+
+rfcomm_rx_process:
+6a8a 4752c034 bpatchx patch34_5 ,mem_patch34 
+6a8b 6800c681 fetch 1 ,memui_reconnect_mode 
+6a8c c0006a8e beq no_reconnection ,rfcomm_rx_process_remote_page 
+6a8d 20206b4c branch rfcomm_rx_process_reconn 
+
+rfcomm_rx_process_remote_page:
+6a8e 68010264 fetch 2 ,mem_l2cap_payload_ptr 
+6a8f 1fe20c00 copy pdata ,contr 
+6a90 20406ab8 call get_rfcomm_head_struct 
+6a91 680084fc fetch 1 ,mem_current_channel 
+6a92 c0006a94 beq 0 ,parse_dlci0_rp 
+6a93 20206b18 branch parse_uih_rp 
+
+parse_dlci0_rp:
+6a94 47534034 bpatchx patch34_6 ,mem_patch34 
+6a95 680084fd fetch 1 ,mem_current_frame_type 
+6a96 c01fea7d beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+6a97 c039ea86 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+6a98 c077ea9b beq rfcomm_frame_type_uih ,parse_dlci0_rp_uih 
+6a99 c029eb44 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
+6a9a 20600000 rtn 
+
+parse_dlci0_rp_uih:
+6a9b 68010501 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+6a9c 1fe20c00 copy pdata ,contr 
+6a9d 20406ac3 call get_rfcomm_uih_head_struct 
+6a9e 68008503 fetch 1 ,mem_uih_cmd_type 
+6a9f c020eaa5 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
+6aa0 c0206aad beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
+6aa1 c038eae6 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
+6aa2 c0386af2 beq uih_modem_status_res ,parse_dlci0_rp_uih_ms_res 
+6aa3 c024eafd beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
+6aa4 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_pn_cmd:
+6aa5 20406aaf call parse_dlci0_rp_uih_pn_res_common 
+6aa6 20206aa7 branch parse_dlci0_rp_uih_pn_cmd_spp 
+
+parse_dlci0_rp_uih_pn_cmd_spp:
+6aa7 6800c254 fetch 1 ,mem_spp_state 
+6aa8 79207e00 set1 rfcomm_channel_state_pn_cmd ,pdata 
+6aa9 79207e01 set1 rfcomm_channel_state_pn_res ,pdata 
+6aaa 6000c254 store 1 ,mem_spp_state 
+6aab 20406be0 call rfcomm_send_param_neg_res 
+6aac 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_pn_res:
+6aad 20406aaf call parse_dlci0_rp_uih_pn_res_common 
+6aae 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_pn_res_common:
+6aaf 20406acb call get_param_payload_ptr 
+6ab0 20206ad7 branch get_rfcomm_prarmer_negotiation 
+
+get_rfcomm_param_modem_status:
+6ab1 20406acb call get_param_payload_ptr 
+6ab2 e8c08000 ifetch 1 ,contr 
+6ab3 1fe97e00 rshift3 pdata ,pdata 
+6ab4 6000c56a store 1 ,mem_ms_channel 
+6ab5 e8c08000 ifetch 1 ,contr 
+6ab6 60008508 store 1 ,mem_ms_param 
+6ab7 20600000 rtn 
+
+get_rfcomm_head_struct:
+6ab8 e8c08000 ifetch 1 ,contr 
+6ab9 600084fb store 1 ,mem_current_adss 
+6aba 1fe97e00 rshift3 pdata ,pdata 
+6abb 600084fc store 1 ,mem_current_channel 
+6abc e8c08000 ifetch 1 ,contr 
+6abd 600084fd store 1 ,mem_current_frame_type 
+
+get_rfcomm_current_length:
+6abe 20406ace call get_rfcomm_length_common 
+6abf 600904ff storet 2 ,mem_current_length 
+6ac0 18c27e00 copy contr ,pdata 
+6ac1 60010501 store 2 ,mem_rfcomm_uih_payload_ptr 
+6ac2 20600000 rtn 
+
+get_rfcomm_uih_head_struct:
+6ac3 e8c08000 ifetch 1 ,contr 
+6ac4 1fe37e00 rshift pdata ,pdata 
+6ac5 60008503 store 1 ,mem_uih_cmd_type 
+6ac6 20406ace call get_rfcomm_length_common 
+6ac7 60090504 storet 2 ,mem_uih_length 
+6ac8 18c27e00 copy contr ,pdata 
+6ac9 60010506 store 2 ,mem_param_payload_ptr 
+6aca 20600000 rtn 
+
+get_param_payload_ptr:
+6acb 68010506 fetch 2 ,mem_param_payload_ptr 
+6acc 1fe20c00 copy pdata ,contr 
+6acd 20600000 rtn 
+
+get_rfcomm_length_common:
+6ace e8c08000 ifetch 1 ,contr 
+6acf 1fe20400 copy pdata ,temp 
+6ad0 18430400 rshift temp ,temp 
+6ad1 c3800000 rtnbit1 0 
+6ad2 e8c08000 ifetch 1 ,contr 
+6ad3 1fe9fe00 lshift3 pdata ,pdata 
+6ad4 1ff27e00 lshift4 pdata ,pdata 
+6ad5 98408400 iadd temp ,temp 
+6ad6 20600000 rtn 
+
+get_rfcomm_prarmer_negotiation:
+6ad7 e8c08000 ifetch 1 ,contr 
+6ad8 6000c55d store 1 ,mem_pn_dlci 
+6ad9 e8c08000 ifetch 1 ,contr 
+6ada 60008509 store 1 ,mem_pn_credit_flow_type_info 
+6adb e8c08000 ifetch 1 ,contr 
+6adc 6000850a store 1 ,mem_pn_priority 
+6add e8c08000 ifetch 1 ,contr 
+6ade 6000850b store 1 ,mem_pn_acknowledg_timer 
+6adf e8c10000 ifetch 2 ,contr 
+6ae0 6001455e store 2 ,mem_pn_max_frame_size 
+6ae1 e8c08000 ifetch 1 ,contr 
+6ae2 6000850c store 1 ,mem_pn_max_retrans 
+6ae3 e8c08000 ifetch 1 ,contr 
+6ae4 6000c568 store 1 ,mem_remote_credits 
+6ae5 20600000 rtn 
+
+parse_dlci0_rp_uih_ms_cmd:
+6ae6 20406ab1 call get_rfcomm_param_modem_status 
+6ae7 20206ae8 branch parse_dlci0_rp_uih_ms_cmd_spp 
+
+parse_dlci0_rp_uih_ms_cmd_spp:
+6ae8 6800c254 fetch 1 ,mem_spp_state 
+6ae9 79207e05 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+6aea 79207e06 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+6aeb 6000c254 store 1 ,mem_spp_state 
+6aec 6808c55d fetcht 1 ,mem_pn_dlci 
+6aed 184b8400 lshift2 temp ,temp 
+6aee 18418403 or_into 3 ,temp 
+6aef 20406c11 call rfcomm_send_modem_status_res 
+6af0 70456703 jam more_pkt_msc_cmd_spp ,mem_rfcomm_send_more_pkt 
+6af1 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_ms_res:
+6af2 700a9908 jam bt_evt_spp_connected ,mem_fifo_temp 
+6af3 20407d86 call ui_ipc_send_event 
+6af4 20406ab1 call get_rfcomm_param_modem_status 
+6af5 6800c56a fetch 1 ,mem_ms_channel 
+6af6 1fe67c01 sub pdata ,1 ,null 
+6af7 2022eaf9 branch parse_dlci0_rp_uih_ms_res_spp ,zero 
+6af8 20202a8c branch assert 
+
+parse_dlci0_rp_uih_ms_res_spp:
+6af9 6800c254 fetch 1 ,mem_spp_state 
+6afa 79207e07 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+6afb 6000c254 store 1 ,mem_spp_state 
+6afc 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_rp_uih_cmd_port:
+6afd 20406acb call get_param_payload_ptr 
+6afe e8c08000 ifetch 1 ,contr 
+6aff 60008ac2 store 1 ,mem_rpn_dlci 
+6b00 204052d2 call l2cap_malloc_rfcomm_channel 
+6b01 204052e0 call l2cap_get_rfcomm_tx_buff 
+6b02 5800000e setarg 0x000e 
+6b03 e0a10000 istore 2 ,contw 
+6b04 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6b05 e0a10000 istore 2 ,contw 
+6b06 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6b07 1fe3fe00 lshift pdata ,pdata 
+6b08 79207e00 set1 0 ,pdata 
+6b09 e0a08000 istore 1 ,contw 
+6b0a 4753c034 bpatchx patch34_7 ,mem_patch34 
+6b0b 580015ef setarg 0x15ef 
+6b0c e0a10000 istore 2 ,contw 
+6b0d 58001191 setarg 0x1191 
+6b0e e0a10000 istore 2 ,contw 
+6b0f 68008ac2 fetch 1 ,mem_rpn_dlci 
+6b10 e0a08000 istore 1 ,contw 
+6b11 58000007 setarg 0x000007 
+6b12 e0a28000 istore 5 ,contw 
+6b13 58000001 setarg 0x01 
+6b14 e0a10000 istore 2 ,contw 
+6b15 20406a2f call rfcomm_calculate_fcs_dlci0 
+6b16 e0a08000 istore 1 ,contw 
+6b17 20600000 rtn 
+
+parse_uih_rp:
+6b18 20206b19 branch parse_uih_rp_spp 
+
+parse_uih_rp_spp:
+6b19 47544035 bpatchx patch35_0 ,mem_patch35 
+6b1a 680084fd fetch 1 ,mem_current_frame_type 
+6b1b c039eb21 beq rfcomm_frame_type_ua ,parse_uih_rp_spp_ua 
+6b1c c01feb25 beq rfcomm_frame_type_sabm ,parse_uih_rp_spp_sabm 
+6b1d c077eb3f beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+6b1e c07feb37 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+6b1f c029eb46 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn 
+6b20 20600000 rtn 
+
+parse_uih_rp_spp_ua:
+6b21 6800c254 fetch 1 ,mem_spp_state 
+6b22 79207e03 set1 rfcomm_channel_state_ua ,pdata 
+6b23 6000c254 store 1 ,mem_spp_state 
+6b24 20206b97 branch rfcomm_rx_process_end 
+
+parse_uih_rp_spp_sabm:
+6b25 6800c254 fetch 1 ,mem_spp_state 
+6b26 79207e03 set1 rfcomm_channel_state_ua ,pdata 
+6b27 79207e02 set1 rfcomm_channel_state_sabm ,pdata 
+6b28 6000c254 store 1 ,mem_spp_state 
+6b29 680084fb fetch 1 ,mem_current_adss 
+6b2a 20406a26 call rfcomm_calculate_fcs_ua 
+6b2b 600084fe store 1 ,mem_current_fcs 
+6b2c 20406bb6 call rfcomm_send_ua 
+6b2d 680084fb fetch 1 ,mem_current_adss 
+6b2e 1feb7e00 rshift2 pdata ,pdata 
+6b2f 6000c55d store 1 ,mem_pn_dlci 
+6b30 1febfe00 lshift2 pdata ,pdata 
+6b31 793ffe01 set0 rfcomm_address_cr ,pdata 
+6b32 79207e00 set1 rfcomm_address_ext_len ,pdata 
+6b33 d8404565 arg mem_hiufcs_spp ,temp 
+6b34 600904f7 storet 2 ,mem_contw_temp 
+6b35 20406a35 call rfcomm_save_fcs_uih 
+6b36 20206b97 branch rfcomm_rx_process_end 
+
+parse_uih_spp_uih_credits:
+6b37 68010501 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+6b38 1fe20c00 copy pdata ,contr 
+6b39 1fe0fe01 increase 1 ,pdata 
+6b3a 60010501 store 2 ,mem_rfcomm_uih_payload_ptr 
+6b3b e8c08000 ifetch 1 ,contr 
+6b3c 6808c568 fetcht 1 ,mem_remote_credits 
+6b3d 9840fe00 iadd temp ,pdata 
+6b3e 6000c568 store 1 ,mem_remote_credits 
+
+parse_uih_spp_uih:
+6b3f 20406c42 call rfcomm_increase_credit_given 
+
+parse_uih_spp_uih_cont:
+6b40 20406a72 call get_rfcomm_snd_adss 
+6b41 20406c28 call rfcomm_send_uih_without_payload 
+6b42 20406c4b call spp_process_rx_data 
+6b43 20206b97 branch rfcomm_rx_process_end 
+
+parse_uih_rp_spp_disconn_send_event:
+6b44 700a9909 jam bt_evt_spp_disconnected ,mem_fifo_temp 
+6b45 20407d86 call ui_ipc_send_event 
+
+parse_uih_rp_spp_disconn:
+6b46 20406a0d call rfcomm_init_spp 
+6b47 680084fb fetch 1 ,mem_current_adss 
+6b48 20406a26 call rfcomm_calculate_fcs_ua 
+6b49 600084fe store 1 ,mem_current_fcs 
+6b4a 20406bb6 call rfcomm_send_ua 
+6b4b 20206b97 branch rfcomm_rx_process_end 
+
+rfcomm_rx_process_reconn:
+6b4c 68010264 fetch 2 ,mem_l2cap_payload_ptr 
+6b4d 1fe20c00 copy pdata ,contr 
+6b4e 20406ab8 call get_rfcomm_head_struct 
+6b4f 680084fc fetch 1 ,mem_current_channel 
+6b50 c0006b52 beq 0 ,parse_dlci0_reconn 
+6b51 20206b86 branch parse_uih_reconn 
+
+parse_dlci0_reconn:
+6b52 4754c035 bpatchx patch35_1 ,mem_patch35 
+6b53 680084fd fetch 1 ,mem_current_frame_type 
+6b54 c01fea7d beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+6b55 c039ea86 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+6b56 c077eb58 beq rfcomm_frame_type_uih ,parse_dlci0_reconn_uih 
+6b57 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih:
+6b58 68010501 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+6b59 1fe20c00 copy pdata ,contr 
+6b5a 20406ac3 call get_rfcomm_uih_head_struct 
+6b5b 68008503 fetch 1 ,mem_uih_cmd_type 
+6b5c c020eb61 beq uih_param_neg_cmd ,parse_dlci0_reconn_uih_pn_cmd 
+6b5d c0206b61 beq uih_param_neg_res ,parse_dlci0_reconn_uih_pn_cmd 
+6b5e c038eb6c beq uih_modem_status_cmd ,parse_dlci0_reconn_uih_ms_cmd 
+6b5f c0386b7c beq uih_modem_status_res ,parse_dlci0_reconn_uih_ms_res 
+6b60 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_pn_cmd:
+6b61 20406aaf call parse_dlci0_rp_uih_pn_res_common 
+6b62 6800c55d fetch 1 ,mem_pn_dlci 
+6b63 1fe37e00 rshift pdata ,pdata 
+6b64 6808c564 fetcht 1 ,mem_remote_spp_channel 
+6b65 98467c00 isub temp ,null 
+6b66 2022eb68 branch parse_dlci0_reconn_uih_pn_cmd_spp ,zero 
+6b67 20202a8c branch assert 
+
+parse_dlci0_reconn_uih_pn_cmd_spp:
+6b68 6800c254 fetch 1 ,mem_spp_state 
+6b69 79207e01 set1 rfcomm_channel_state_pn_res ,pdata 
+6b6a 6000c254 store 1 ,mem_spp_state 
+6b6b 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_ms_cmd:
+6b6c 20406ab1 call get_rfcomm_param_modem_status 
+6b6d 6800c56a fetch 1 ,mem_ms_channel 
+6b6e 6808c564 fetcht 1 ,mem_remote_spp_channel 
+6b6f 98467c00 isub temp ,null 
+6b70 2022eb73 branch parse_dlci0_reconn_uih_ms_cmd_spp ,zero 
+6b71 20202a8c branch assert 
+6b72 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_ms_cmd_spp:
+6b73 6800c254 fetch 1 ,mem_spp_state 
+6b74 79207e05 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+6b75 79207e06 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+6b76 6000c254 store 1 ,mem_spp_state 
+6b77 6808c55d fetcht 1 ,mem_pn_dlci 
+6b78 184b8400 lshift2 temp ,temp 
+6b79 18418403 or_into 3 ,temp 
+6b7a 20406c11 call rfcomm_send_modem_status_res 
+6b7b 20206b97 branch rfcomm_rx_process_end 
+
+parse_dlci0_reconn_uih_ms_res:
+6b7c 20406ab1 call get_rfcomm_param_modem_status 
+6b7d 6800c56a fetch 1 ,mem_ms_channel 
+6b7e 6808c564 fetcht 1 ,mem_remote_spp_channel 
+6b7f 98467c00 isub temp ,null 
+6b80 2022eb82 branch parse_dlci0_reconn_uih_ms_res_spp ,zero 
+6b81 20202a8c branch assert 
+
+parse_dlci0_reconn_uih_ms_res_spp:
+6b82 6800c254 fetch 1 ,mem_spp_state 
+6b83 79207e07 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+6b84 6000c254 store 1 ,mem_spp_state 
+6b85 20206b97 branch rfcomm_rx_process_end 
+
+parse_uih_reconn:
+6b86 680084fc fetch 1 ,mem_current_channel 
+6b87 6808c564 fetcht 1 ,mem_remote_spp_channel 
+6b88 98467c00 isub temp ,null 
+6b89 2022eb8c branch parse_uih_reconn_spp ,zero 
+6b8a 20202a8c branch assert 
+6b8b 20206b97 branch rfcomm_rx_process_end 
+
+parse_uih_reconn_spp:
+6b8c 680084fd fetch 1 ,mem_current_frame_type 
+6b8d c039eb91 beq rfcomm_frame_type_ua ,parse_uih_reconn_spp_ua 
+6b8e c077eb3f beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+6b8f c07feb37 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+6b90 c029eb96 beq rfcomm_frame_type_disconn ,parse_uih_reconn_spp_disconn 
+
+parse_uih_reconn_spp_ua:
+6b91 6800c254 fetch 1 ,mem_spp_state 
+6b92 79207e03 set1 rfcomm_channel_state_ua ,pdata 
+6b93 6000c254 store 1 ,mem_spp_state 
+6b94 20206b97 branch rfcomm_rx_process_end 
+
+parse_uih_reconn_spp_sabm:
+6b95 20206b95 branch parse_uih_reconn_spp_sabm 
+
+parse_uih_reconn_spp_disconn:
+6b96 20206b46 branch parse_uih_rp_spp_disconn 
+
+rfcomm_rx_process_end:
+6b97 20600000 rtn 
+
+rfcomm_send_more_pkt:
+6b98 6800c567 fetch 1 ,mem_rfcomm_send_more_pkt 
+6b99 207a0000 rtn blank 
+6b9a c001eb9c beq more_pkt_msc_cmd_spp ,rfcomm_send_more_pkt_msc_cmd_spp 
+6b9b 20202a8c branch assert 
+
+rfcomm_send_more_pkt_msc_cmd_spp:
+6b9c 70456700 jam 0 ,mem_rfcomm_send_more_pkt 
+6b9d 204052d2 call l2cap_malloc_rfcomm_channel 
+6b9e d8400001 arg spp_slave_channel ,temp 
+6b9f 6808c55d fetcht 1 ,mem_pn_dlci 
+6ba0 184b8400 lshift2 temp ,temp 
+
+rfcomm_send_more_pkt_msc_cmd_spp0:
+6ba1 18418403 or_into 0x03 ,temp 
+6ba2 da2000aa arg 0xaa ,rega 
+6ba3 20406bfc call rfcomm_send_modem_status_cmd 
+6ba4 204052e0 call l2cap_get_rfcomm_tx_buff 
+6ba5 18a20c00 copy contw ,contr 
+6ba6 e8c10000 ifetch 2 ,contr 
+6ba7 203a2a8c branch assert ,blank 
+6ba8 20600000 rtn 
+
+rfcomm_send_sabm:
+6ba9 204052e0 call l2cap_get_rfcomm_tx_buff 
+6baa 58000004 setarg 0x0004 
+6bab e0a10000 istore 2 ,contw 
+6bac 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6bad e0a10000 istore 2 ,contw 
+6bae 680084fb fetch 1 ,mem_current_adss 
+6baf e0a08000 istore 1 ,contw 
+6bb0 47554035 bpatchx patch35_2 ,mem_patch35 
+6bb1 5800013f setarg 0x013f 
+6bb2 e0a10000 istore 2 ,contw 
+6bb3 680084fe fetch 1 ,mem_current_fcs 
+6bb4 e0a08000 istore 1 ,contw 
+6bb5 20600000 rtn 
+
+rfcomm_send_ua:
+6bb6 204052d2 call l2cap_malloc_rfcomm_channel 
+6bb7 204052e0 call l2cap_get_rfcomm_tx_buff 
+6bb8 58000004 setarg 0x0004 
+6bb9 e0a10000 istore 2 ,contw 
+6bba 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6bbb e0a10000 istore 2 ,contw 
+6bbc 680084fb fetch 1 ,mem_current_adss 
+6bbd e0a08000 istore 1 ,contw 
+6bbe 4755c035 bpatchx patch35_3 ,mem_patch35 
+6bbf 58000173 setarg 0x0173 
+6bc0 e0a10000 istore 2 ,contw 
+6bc1 680084fe fetch 1 ,mem_current_fcs 
+6bc2 e0a08000 istore 1 ,contw 
+6bc3 20600000 rtn 
+
+rfcomm_send_param_neg_cmd:
+6bc4 204052e0 call l2cap_get_rfcomm_tx_buff 
+6bc5 5800000e setarg 0x000e 
+6bc6 e0a10000 istore 2 ,contw 
+6bc7 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6bc8 e0a10000 istore 2 ,contw 
+6bc9 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6bca 1fe3fe00 lshift pdata ,pdata 
+6bcb 79207e00 set1 0 ,pdata 
+6bcc e0a08000 istore 1 ,contw 
+6bcd 47564035 bpatchx patch35_4 ,mem_patch35 
+6bce 580015ef setarg 0x15ef 
+6bcf e0a10000 istore 2 ,contw 
+6bd0 58001183 setarg 0x1183 
+6bd1 e0a10000 istore 2 ,contw 
+6bd2 18427e00 copy temp ,pdata 
+6bd3 e0a08000 istore 1 ,contw 
+6bd4 580000f0 setarg 0x0000f0 
+6bd5 e0a18000 istore 3 ,contw 
+6bd6 5800007f setarg rfcomm_max_frame_size 
+6bd7 e0a10000 istore 2 ,contw 
+6bd8 58000000 setarg 0 
+6bd9 e0a08000 istore 1 ,contw 
+6bda 58000001 setarg 0x01 
+6bdb e0a08000 istore 1 ,contw 
+6bdc 20406a2f call rfcomm_calculate_fcs_dlci0 
+6bdd e0a08000 istore 1 ,contw 
+6bde 70456910 jam 0x10 ,mem_credit_given 
+6bdf 20600000 rtn 
+
+rfcomm_send_param_neg_res:
+6be0 204052d2 call l2cap_malloc_rfcomm_channel 
+6be1 204052e0 call l2cap_get_rfcomm_tx_buff 
+6be2 5800000e setarg 0x000e 
+6be3 e0a10000 istore 2 ,contw 
+6be4 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6be5 e0a10000 istore 2 ,contw 
+6be6 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6be7 1fe3fe00 lshift pdata ,pdata 
+6be8 79207e00 set1 0 ,pdata 
+6be9 e0a08000 istore 1 ,contw 
+6bea 4756c035 bpatchx patch35_5 ,mem_patch35 
+6beb 580015ef setarg 0x15ef 
+6bec e0a10000 istore 2 ,contw 
+6bed 58001181 setarg 0x1181 
+6bee e0a10000 istore 2 ,contw 
+6bef 6800c55d fetch 1 ,mem_pn_dlci 
+6bf0 e0a08000 istore 1 ,contw 
+6bf1 580000e0 setarg 0x0000e0 
+6bf2 e0a18000 istore 3 ,contw 
+6bf3 6801456c fetch 2 ,mem_rfcomm_max_frame_size 
+6bf4 e0a10000 istore 2 ,contw 
+6bf5 58000000 setarg 0x00 
+6bf6 e0a08000 istore 1 ,contw 
+6bf7 6800c56e fetch 1 ,mem_rfcomm_credit_init_data 
+6bf8 e0a08000 istore 1 ,contw 
+6bf9 20406a2f call rfcomm_calculate_fcs_dlci0 
+6bfa e0a08000 istore 1 ,contw 
+6bfb 20600000 rtn 
+
+rfcomm_send_modem_status_cmd:
+6bfc 204052e0 call l2cap_get_rfcomm_tx_buff 
+6bfd 58000008 setarg 0x0008 
+6bfe e0a10000 istore 2 ,contw 
+6bff 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6c00 e0a10000 istore 2 ,contw 
+6c01 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6c02 1fe3fe00 lshift pdata ,pdata 
+6c03 79207e00 set1 0 ,pdata 
+6c04 e0a08000 istore 1 ,contw 
+6c05 47574035 bpatchx patch35_6 ,mem_patch35 
+6c06 580009ef setarg 0x09ef 
+6c07 e0a10000 istore 2 ,contw 
+6c08 580005e3 setarg 0x05e3 
+6c09 e0a10000 istore 2 ,contw 
+6c0a 18427e00 copy temp ,pdata 
+6c0b e0a08000 istore 1 ,contw 
+6c0c 5800008d setarg 0x8d 
+6c0d e0a08000 istore 1 ,contw 
+6c0e 20406a2f call rfcomm_calculate_fcs_dlci0 
+6c0f e0a08000 istore 1 ,contw 
+6c10 20600000 rtn 
+
+rfcomm_send_modem_status_res:
+6c11 204052d2 call l2cap_malloc_rfcomm_channel 
+6c12 204052e0 call l2cap_get_rfcomm_tx_buff 
+6c13 58000008 setarg 0x0008 
+6c14 e0a10000 istore 2 ,contw 
+6c15 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6c16 e0a10000 istore 2 ,contw 
+6c17 18421600 copy temp ,timeup 
+6c18 6800c563 fetch 1 ,mem_rfcomm_initiator 
+6c19 1fe3fe00 lshift pdata ,pdata 
+6c1a 79207e00 set1 0 ,pdata 
+6c1b e0a08000 istore 1 ,contw 
+6c1c 4757c035 bpatchx patch35_7 ,mem_patch35 
+6c1d 580009ef setarg 0x09ef 
+6c1e e0a10000 istore 2 ,contw 
+6c1f 580005e1 setarg 0x05e1 
+6c20 e0a10000 istore 2 ,contw 
+6c21 19627e00 copy timeup ,pdata 
+6c22 e0a08000 istore 1 ,contw 
+6c23 5800008d setarg 0x8d 
+6c24 e0a08000 istore 1 ,contw 
+6c25 20406a2f call rfcomm_calculate_fcs_dlci0 
+6c26 e0a08000 istore 1 ,contw 
+6c27 20600000 rtn 
+
+rfcomm_send_uih_without_payload:
+6c28 47584036 bpatchx patch36_0 ,mem_patch36 
+6c29 6800c569 fetch 1 ,mem_credit_given 
+6c2a 207a0000 rtn blank 
+6c2b 68110112 hfetch 2 ,core_uart_rxitems 
+6c2c 247a0000 nrtn blank 
+6c2d 1a227e00 copy rega ,pdata 
+6c2e 60008a9b store 1 ,mem_pdatatemp + 1 
+6c2f 60088a9a storet 1 ,mem_pdatatemp 
+6c30 2040526e call l2cap_malloc_is_fifo_full 
+6c31 247a0000 nrtn blank 
+6c32 204052d2 call l2cap_malloc_rfcomm_channel 
+6c33 204052e0 call l2cap_get_rfcomm_tx_buff 
+6c34 58000005 setarg 0x05 
+6c35 e0a10000 istore 2 ,contw 
+6c36 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6c37 e0a10000 istore 2 ,contw 
+6c38 6800850d fetch 1 ,mem_rfcomm_send_adss 
+6c39 e0a08000 istore 1 ,contw 
+6c3a 580001ff setarg 0x01ff 
+6c3b e0a10000 istore 2 ,contw 
+6c3c 6800c569 fetch 1 ,mem_credit_given 
+6c3d e0a08000 istore 1 ,contw 
+6c3e 6800c566 fetch 1 ,mem_hiufcs_spp_wcredits 
+6c3f e0a08000 istore 1 ,contw 
+6c40 70456900 jam 0 ,mem_credit_given 
+6c41 20600000 rtn 
+
+rfcomm_increase_credit_given:
+6c42 4758c036 bpatchx patch36_1 ,mem_patch36 
+6c43 6800c56b fetch 1 ,mem_credit_flag 
+6c44 c1008000 rtneq credit_enable 
+6c45 680104ff fetch 2 ,mem_current_length 
+6c46 207a0000 rtn blank 
+6c47 6800c569 fetch 1 ,mem_credit_given 
+6c48 1fe0fe01 increase 1 ,pdata 
+6c49 6000c569 store 1 ,mem_credit_given 
+6c4a 20600000 rtn 
+
+spp_process_rx_data:
+6c4b 6801456f fetch 2 ,mem_cb_receive_spp_data 
+6c4c 20207f9c branch callback_func 
+
+spp_tx_rfcomm_packet:
+6c4d 47594036 bpatchx patch36_2 ,mem_patch36 
+6c4e 6800c568 fetch 1 ,mem_remote_credits 
+6c4f 207a0000 rtn blank 
+6c50 1fe0ffff increase -1 ,pdata 
+6c51 6000c568 store 1 ,mem_remote_credits 
+6c52 6801455e fetch 2 ,mem_pn_max_frame_size 
+6c53 6809469f fetcht 2 ,mem_current_packet_length 
+6c54 98467c00 isub temp ,null 
+6c55 20216c57 branch ssp_tx_rfcomm_from_uart ,positive 
+6c56 6001469f store 2 ,mem_current_packet_length 
+
+ssp_tx_rfcomm_from_uart:
+6c57 6800c569 fetch 1 ,mem_credit_given 
+6c58 203a6c5f branch ssp_tx_rfcomm_from_uart_without_credit ,blank 
+6c59 70051001 jam 1 ,mem_rfcomm_send_offset 
+6c5a 6800c566 fetch 1 ,mem_hiufcs_spp_wcredits 
+6c5b 6000850f store 1 ,mem_rfcomm_send_fcs 
+6c5c 580000ff setarg rsp_rx_uih_wdata 
+6c5d 6000850e store 1 ,mem_rfcomm_send_frame_type 
+6c5e 20206c64 branch ssp_tx_rfcomm_from_uart_common 
+
+ssp_tx_rfcomm_from_uart_without_credit:
+6c5f 70051000 jam 0 ,mem_rfcomm_send_offset 
+6c60 6800c565 fetch 1 ,mem_hiufcs_spp 
+6c61 6000850f store 1 ,mem_rfcomm_send_fcs 
+6c62 580000ef setarg rsp_tx_uih 
+6c63 6000850e store 1 ,mem_rfcomm_send_frame_type 
+
+ssp_tx_rfcomm_from_uart_common:
+6c64 4759c036 bpatchx patch36_3 ,mem_patch36 
+6c65 6801469f fetch 2 ,mem_current_packet_length 
+6c66 1fe67c7f sub pdata ,127 ,null 
+6c67 20216c6b branch ssp_tx_rfcomm_from_uart_common0 ,positive 
+6c68 68008510 fetch 1 ,mem_rfcomm_send_offset 
+6c69 1fe0fe01 increase 1 ,pdata 
+6c6a 60008510 store 1 ,mem_rfcomm_send_offset 
+
+ssp_tx_rfcomm_from_uart_common0:
+6c6b 20406a72 call get_rfcomm_snd_adss 
+6c6c 6801469f fetch 2 ,mem_current_packet_length 
+6c6d 1fe0fe08 increase 8 ,pdata 
+6c6e 68088510 fetcht 1 ,mem_rfcomm_send_offset 
+6c6f 9840a200 iadd temp ,rega 
+6c70 20405240 call l2cap_malloc 
+6c71 60010277 store 2 ,mem_rfcomm_tx_buff_ptr 
+6c72 1fe0fe04 increase 4 ,pdata 
+6c73 60010279 store 2 ,mem_rfcomm_tx_payload_ptr 
+6c74 1fe20a00 copy pdata ,contw 
+6c75 6800850d fetch 1 ,mem_rfcomm_send_adss 
+6c76 e0a08000 istore 1 ,contw 
+6c77 6800850e fetch 1 ,mem_rfcomm_send_frame_type 
+6c78 e0a08000 istore 1 ,contw 
+6c79 20406c95 call ssp_tx_write_length 
+6c7a 20406ca6 call ssp_tx_write_given_credit 
+6c7b 475a4036 bpatchx patch36_4 ,mem_patch36 
+6c7c 68014571 fetch 2 ,mem_nl_rx_data_src 
+6c7d 1fe20600 copy pdata ,contru 
+6c7e 6801469f fetch 2 ,mem_current_packet_length 
+6c7f 1fe27200 copy pdata ,loopcnt 
+6c80 204066ea call uart_copy_rx_bytes_fast 
+6c81 18a20400 copy contw ,temp 
+6c82 18627e00 copy contru ,pdata 
+6c83 60014571 store 2 ,mem_nl_rx_data_src 
+6c84 18420a00 copy temp ,contw 
+6c85 6800850f fetch 1 ,mem_rfcomm_send_fcs 
+6c86 e0a08000 istore 1 ,contw 
+6c87 68010277 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+6c88 1fe20a00 copy pdata ,contw 
+6c89 6801469f fetch 2 ,mem_current_packet_length 
+6c8a 68088510 fetcht 1 ,mem_rfcomm_send_offset 
+6c8b 9840fe00 iadd temp ,pdata 
+6c8c 1fe0fe04 increase 4 ,pdata 
+6c8d e0a10000 istore 2 ,contw 
+6c8e 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6c8f e0a10000 istore 2 ,contw 
+6c90 70456900 jam 0 ,mem_credit_given 
+6c91 68014573 fetch 2 ,mem_nl_rx_len_all 
+6c92 c0003a97 beq 0 ,module_hci_command_tx_spp_tx_complete 
+6c93 700b0500 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+6c94 20600000 rtn 
+
+ssp_tx_write_length:
+6c95 475ac036 bpatchx patch36_5 ,mem_patch36 
+6c96 6801469f fetch 2 ,mem_current_packet_length 
+6c97 1fe67c7f sub pdata ,0x7f ,null 
+6c98 24216c9d nbranch ssp_tx_write_long_packet ,positive 
+6c99 1fe3fe00 lshift pdata ,pdata 
+6c9a 79207e00 set1 0 ,pdata 
+6c9b e0a08000 istore 1 ,contw 
+6c9c 20600000 rtn 
+
+ssp_tx_write_long_packet:
+6c9d 6801469f fetch 2 ,mem_current_packet_length 
+6c9e 1fe97e00 rshift3 pdata ,pdata 
+6c9f 1ff18400 rshift4 pdata ,temp 
+6ca0 1fe17e7f and_into 0x7f ,pdata 
+6ca1 1fe3fe00 lshift pdata ,pdata 
+6ca2 793ffe00 set0 0 ,pdata 
+6ca3 e0a08000 istore 1 ,contw 
+6ca4 e0a88000 istoret 1 ,contw 
+6ca5 20600000 rtn 
+
+ssp_tx_write_given_credit:
+6ca6 6800c569 fetch 1 ,mem_credit_given 
+6ca7 207a0000 rtn blank 
+6ca8 e0a08000 istore 1 ,contw 
+6ca9 20600000 rtn 
+
+scheduler_process:
+6caa 475b4036 bpatchx patch36_6 ,mem_patch36 
+6cab 20407d9c call check_51cmd 
+6cac 204032f6 call app_process_bb_event 
+6cad 2040631b call process_conn_sm 
+6cae 475bc036 bpatchx patch36_7 ,mem_patch36 
+6caf 204076dc call sp_calc_sequence 
+6cb0 204076b5 call simple_pairing_sequence 
+6cb1 204076c6 call master_simple_paring_sequence 
+6cb2 2040526e call l2cap_malloc_is_fifo_full 
+6cb3 247a0000 nrtn blank 
+6cb4 20404da9 call l2cap_call_proc_sigal_pending 
+6cb5 2040526e call l2cap_malloc_is_fifo_full 
+6cb6 247a0000 nrtn blank 
+6cb7 475c4037 bpatchx patch37_0 ,mem_patch37 
+6cb8 20406cf5 call process_upper_sm 
+6cb9 20404f64 call l2cap_send_config_req 
+6cba 20406b98 call rfcomm_send_more_pkt 
+
+scheduler_process0:
+6cbb 20406cbe call scheduler_tx_disconnect_hid 
+6cbc 475cc037 bpatchx patch37_1 ,mem_patch37 
+6cbd 202032f2 branch app_process_bt 
+
+scheduler_tx_disconnect_hid:
+6cbe 6800827f fetch 1 ,mem_control_tasks 
+6cbf c2805087 bbit1 l2cap_disconnect_interrupt ,l2cap_disconnect_interrupt_req 
+6cc0 c283d091 bbit1 l2cap_disconnect_control ,l2cap_disconnect_control_req 
+6cc1 20600000 rtn 
+
+scheduler_tx_l2cap_pkt:
+6cc2 475d4037 bpatchx patch37_2 ,mem_patch37 
+6cc3 20405274 call l2cap_malloc_is_fifo_empty 
+6cc4 207a0000 rtn blank 
+6cc5 6800804b fetch 1 ,mem_op 
+6cc6 c3830000 rtnbit1 op_txl2cap 
+6cc7 20405258 call l2cap_malloc_fifo_out 
+6cc8 6001016f store 2 ,mem_txptr 
+6cc9 1fe20c00 copy pdata ,contr 
+6cca e8c10000 ifetch 2 ,contr 
+6ccb 1fe0fe04 increase 4 ,pdata 
+6ccc 600141dc store 2 ,mem_tx_len 
+6ccd 7041db06 jam 6 ,mem_tx_lch 
+6cce 475dc037 bpatchx patch37_3 ,mem_patch37 
+6ccf 68014246 fetch 2 ,mem_l2cap_tx_multi_offset 
+6cd0 203a6cdd branch scheduler_tx_l2cap_start_pkt ,blank 
+6cd1 6800804b fetch 1 ,mem_op 
+6cd2 c4038000 rtnbit0 op_pkt_comp 
+6cd3 793ffe07 set0 op_pkt_comp ,pdata 
+6cd4 6000804b store 1 ,mem_op 
+6cd5 7041db05 jam 5 ,mem_tx_lch 
+6cd6 68094246 fetcht 2 ,mem_l2cap_tx_multi_offset 
+6cd7 6801016f fetch 2 ,mem_txptr 
+6cd8 9840fe00 iadd temp ,pdata 
+6cd9 6001016f store 2 ,mem_txptr 
+6cda 680141dc fetch 2 ,mem_tx_len 
+6cdb 98467e00 isub temp ,pdata 
+6cdc 600141dc store 2 ,mem_tx_len 
+
+scheduler_tx_l2cap_start_pkt:
+6cdd 475e4037 bpatchx patch37_4 ,mem_patch37 
+6cde 680141dc fetch 2 ,mem_tx_len 
+6cdf 203a2a8c branch assert ,blank 
+6ce0 d8400104 arg l2cap_max_pkt_len ,temp 
+6ce1 98467e00 isub temp ,pdata 
+6ce2 24216ce9 nbranch scheduler_tx_l2cap_last_pkt ,positive 
+6ce3 475ec037 bpatchx patch37_5 ,mem_patch37 
+6ce4 600941dc storet 2 ,mem_tx_len 
+6ce5 68014246 fetch 2 ,mem_l2cap_tx_multi_offset 
+6ce6 9840fe00 iadd temp ,pdata 
+6ce7 60014246 store 2 ,mem_l2cap_tx_multi_offset 
+6ce8 20206ceb branch scheduler_tx_l2cap_pkt_end 
+
+scheduler_tx_l2cap_last_pkt:
+6ce9 58000000 setarg 0 
+6cea 60014246 store 2 ,mem_l2cap_tx_multi_offset 
+
+scheduler_tx_l2cap_pkt_end:
+6ceb 6800804b fetch 1 ,mem_op 
+6cec 79207e06 set1 op_txl2cap ,pdata 
+6ced 6000804b store 1 ,mem_op 
+6cee 20600000 rtn 
+
+scheduler_start_upper_sm:
+6cef 6800c684 fetch 1 ,mem_ui_profile_supported 
+6cf0 c2806cf3 bbit1 support_hid ,scheduler_start_upper_sm_hid 
+6cf1 70028701 jam uppersm_reconn_sdp_conn ,mem_upper_sm_reconn 
+6cf2 20600000 rtn 
+
+scheduler_start_upper_sm_hid:
+6cf3 7002870f jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+6cf4 20600000 rtn 
+
+process_upper_sm:
+6cf5 6800c681 fetch 1 ,memui_reconnect_mode 
+6cf6 243a6cfb nbranch process_upper_sm_reconn ,blank 
+
+process_upper_sm_remote_page:
+6cf7 68008286 fetch 1 ,mem_upper_sm_remote_page 
+6cf8 207a0000 rtn blank 
+6cf9 70028600 jam 0 ,mem_upper_sm_remote_page 
+
+process_upper_sm_rp_wait:
+6cfa 20600000 rtn 
+
+process_upper_sm_reconn:
+6cfb 475f4037 bpatchx patch37_6 ,mem_patch37 
+6cfc 68008287 fetch 1 ,mem_upper_sm_reconn 
+6cfd 207a0000 rtn blank 
+6cfe c000ed1b beq uppersm_reconn_sdp_conn ,process_upper_sm_reconn_sdp_conn 
+6cff c0016d74 beq uppersm_reconn_sdp_conn_wait ,process_upper_sm_reconn_sdp_conn_wait 
+6d00 c001ed21 beq uppersm_reconn_sdp_cfg ,process_upper_sm_reconn_sdp_cfg 
+6d01 c0026d78 beq uppersm_reconn_sdp_cfg_wait ,process_upper_sm_reconn_sdp_cfg_wait 
+6d02 c01ded2b beq uppersm_reconn_ss_spp ,process_upper_sm_reconn_ss_spp 
+6d03 c01e6d7b beq uppersm_reconn_ss_spp_wait ,process_upper_sm_reconn_ss_spp_wait 
+6d04 c006ed30 beq uppersm_reconn_sdp_disconn ,process_upper_sm_reconn_sdp_disconn 
+6d05 c0076d80 beq uppersm_reconn_sdp_disconn_wait ,process_upper_sm_reconn_sdp_disconn_wait 
+6d06 c007ed33 beq uppersm_reconn_hid_ctrl_conn ,process_upper_sm_reconn_hid_ctrl_conn 
+6d07 c0086d86 beq uppersm_reconn_hid_ctrl_conn_wait ,process_upper_sm_reconn_hid_ctrl_conn_wait 
+6d08 c008ed39 beq uppersm_reconn_hid_ctrl_cfg ,process_upper_sm_reconn_hid_ctrl_cfg 
+6d09 c0096d8a beq uppersm_reconn_hid_ctrl_cfg_wait ,process_upper_sm_reconn_hid_ctrl_cfg_wait 
+6d0a c009ed3f beq uppersm_reconn_hid_int_conn ,process_upper_sm_reconn_hid_int_conn 
+6d0b c00a6d8e beq uppersm_reconn_hid_int_conn_wait ,process_upper_sm_reconn_hid_int_conn_wait 
+6d0c c00aed45 beq uppersm_reconn_hid_int_cfg ,process_upper_sm_reconn_hid_int_cfg 
+6d0d c00b6d92 beq uppersm_reconn_hid_int_cfg_wait ,process_upper_sm_reconn_hid_int_cfg_wait 
+6d0e c00bed4b beq uppersm_reconn_rfcomm_conn ,process_upper_sm_reconn_rfcomm_conn 
+6d0f c00c6d97 beq uppersm_reconn_rfcomm_conn_wait ,process_upper_sm_reconn_rfcomm_conn_wait 
+6d10 c00ced51 beq uppersm_reconn_rfcomm_cfg ,process_upper_sm_reconn_rfcomm_cfg 
+6d11 c00d6d9b beq uppersm_reconn_rfcomm_cfg_wait ,process_upper_sm_reconn_rfcomm_cfg_wait 
+6d12 c00ded57 beq uppersm_reconn_rfcomm_sabm ,process_upper_sm_reconn_rfcomm_sabm 
+6d13 c00e6d9f beq uppersm_reconn_rfcomm_sabm_wait ,process_upper_sm_reconn_rfcomm_sabm_wait 
+6d14 c00eed5d beq uppersm_reconn_spp_cmd_pn ,process_upper_sm_reconn_spp_cmd_pn 
+6d15 c00f6da4 beq uppersm_reconn_spp_cmd_pn_wait ,process_upper_sm_reconn_spp_cmd_pn_wait 
+6d16 c00fed63 beq uppersm_reconn_spp_sabm ,process_upper_sm_reconn_spp_sabm 
+6d17 c0106da8 beq uppersm_reconn_spp_sabm_wait ,process_upper_sm_reconn_spp_sabm_wait 
+6d18 c010ed6e beq uppersm_reconn_spp_cmd_ms ,process_upper_sm_reconn_spp_cmd_ms 
+6d19 c0116dac beq uppersm_reconn_spp_cmd_ms_wait ,process_upper_sm_reconn_spp_cmd_ms_wait 
+
+process_upper_sm_reconn_wait:
+6d1a 20600000 rtn 
+
+process_upper_sm_reconn_sdp_conn:
+6d1b 20406db7 call upper_sm_send_sdp_conn 
+6d1c 70028702 jam uppersm_reconn_sdp_conn_wait ,mem_upper_sm_reconn 
+6d1d 6800c250 fetch 1 ,mem_sdp_state 
+6d1e 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6d1f 6000c250 store 1 ,mem_sdp_state 
+6d20 20600000 rtn 
+
+process_upper_sm_reconn_sdp_cfg:
+6d21 70028704 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+6d22 6800c250 fetch 1 ,mem_sdp_state 
+6d23 c3810000 rtnbit1 l2cap_channel_state_snd_cfg_req 
+6d24 70028703 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+6d25 20406dbe call upper_sm_send_sdp_cfg 
+6d26 70028704 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+6d27 6800c250 fetch 1 ,mem_sdp_state 
+6d28 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6d29 6000c250 store 1 ,mem_sdp_state 
+6d2a 20600000 rtn 
+
+process_upper_sm_reconn_ss_spp:
+6d2b 20405274 call l2cap_malloc_is_fifo_empty 
+6d2c 247a0000 nrtn blank 
+6d2d 20406dcd call upper_sm_send_ss_spp 
+6d2e 7002873c jam uppersm_reconn_ss_spp_wait ,mem_upper_sm_reconn 
+6d2f 20600000 rtn 
+
+process_upper_sm_reconn_sdp_disconn:
+6d30 20406dc3 call upper_sm_send_sdp_disconn 
+6d31 7002870e jam uppersm_reconn_sdp_disconn_wait ,mem_upper_sm_reconn 
+6d32 20600000 rtn 
+
+process_upper_sm_reconn_hid_ctrl_conn:
+6d33 20406ddd call upper_sm_send_hid_ctrl_conn 
+6d34 70028710 jam uppersm_reconn_hid_ctrl_conn_wait ,mem_upper_sm_reconn 
+6d35 6800c252 fetch 1 ,mem_hid_control_state 
+6d36 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6d37 6000c252 store 1 ,mem_hid_control_state 
+6d38 20600000 rtn 
+
+process_upper_sm_reconn_hid_ctrl_cfg:
+6d39 20406de4 call upper_sm_send_hid_ctrl_cfg 
+6d3a 70028712 jam uppersm_reconn_hid_ctrl_cfg_wait ,mem_upper_sm_reconn 
+6d3b 6800c252 fetch 1 ,mem_hid_control_state 
+6d3c 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6d3d 6000c252 store 1 ,mem_hid_control_state 
+6d3e 20600000 rtn 
+
+process_upper_sm_reconn_hid_int_conn:
+6d3f 20406de9 call upper_sm_send_hid_int_conn 
+6d40 70028714 jam uppersm_reconn_hid_int_conn_wait ,mem_upper_sm_reconn 
+6d41 6800c253 fetch 1 ,mem_hid_interrupt_state 
+6d42 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6d43 6000c253 store 1 ,mem_hid_interrupt_state 
+6d44 20600000 rtn 
+
+process_upper_sm_reconn_hid_int_cfg:
+6d45 20406df0 call upper_sm_send_hid_int_cfg 
+6d46 70028716 jam uppersm_reconn_hid_int_cfg_wait ,mem_upper_sm_reconn 
+6d47 6800c253 fetch 1 ,mem_hid_interrupt_state 
+6d48 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6d49 6000c253 store 1 ,mem_hid_interrupt_state 
+6d4a 20600000 rtn 
+
+process_upper_sm_reconn_rfcomm_conn:
+6d4b 20406dd1 call upper_sm_send_rfcomm_conn 
+6d4c 70028718 jam uppersm_reconn_rfcomm_conn_wait ,mem_upper_sm_reconn 
+6d4d 6800c251 fetch 1 ,mem_rfcomm_state 
+6d4e 79207e00 set1 l2cap_channel_state_conn_req ,pdata 
+6d4f 6000c251 store 1 ,mem_rfcomm_state 
+6d50 20600000 rtn 
+
+process_upper_sm_reconn_rfcomm_cfg:
+6d51 20406dd8 call upper_sm_send_rfcomm_cfg 
+6d52 7002871a jam uppersm_reconn_rfcomm_cfg_wait ,mem_upper_sm_reconn 
+6d53 6800c251 fetch 1 ,mem_rfcomm_state 
+6d54 79207e02 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+6d55 6000c251 store 1 ,mem_rfcomm_state 
+6d56 20600000 rtn 
+
+process_upper_sm_reconn_rfcomm_sabm:
+6d57 20406df5 call upper_sm_send_rfcomm_sabm 
+6d58 7002871c jam uppersm_reconn_rfcomm_sabm_wait ,mem_upper_sm_reconn 
+6d59 6800c251 fetch 1 ,mem_rfcomm_state 
+6d5a 79207e06 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+6d5b 6000c251 store 1 ,mem_rfcomm_state 
+6d5c 20600000 rtn 
+
+process_upper_sm_reconn_spp_cmd_pn:
+6d5d 20406dfc call upper_sm_send_spp_cmd_pn 
+6d5e 6800c254 fetch 1 ,mem_spp_state 
+6d5f 79207e00 set1 rfcomm_channel_state_pn_cmd 
+6d60 6000c254 store 1 ,mem_spp_state 
+6d61 7002871e jam uppersm_reconn_spp_cmd_pn_wait ,mem_upper_sm_reconn 
+6d62 20600000 rtn 
+
+process_upper_sm_reconn_spp_sabm:
+6d63 20406e02 call upper_sm_send_spp_sabm 
+6d64 6800c254 fetch 1 ,mem_spp_state 
+6d65 79207e02 set1 rfcomm_channel_state_sabm 
+6d66 6000c254 store 1 ,mem_spp_state 
+6d67 70028720 jam uppersm_reconn_spp_sabm_wait ,mem_upper_sm_reconn 
+6d68 6800c564 fetch 1 ,mem_remote_spp_channel 
+6d69 1fe9fe00 lshift3 pdata ,pdata 
+6d6a 1fe1fe03 or_into 3 ,pdata 
+6d6b d8404565 arg mem_hiufcs_spp ,temp 
+6d6c 600904f7 storet 2 ,mem_contw_temp 
+6d6d 20206a35 branch rfcomm_save_fcs_uih 
+
+process_upper_sm_reconn_spp_cmd_ms:
+6d6e 20406e0c call upper_sm_send_spp_cmd_ms 
+6d6f 6800c254 fetch 1 ,mem_spp_state 
+6d70 79207e04 set1 rfcomm_channel_state_snd_ms_cmd 
+6d71 6000c254 store 1 ,mem_spp_state 
+6d72 70028722 jam uppersm_reconn_spp_cmd_ms_wait ,mem_upper_sm_reconn 
+6d73 20600000 rtn 
+
+process_upper_sm_reconn_sdp_conn_wait:
+6d74 6800c250 fetch 1 ,mem_sdp_state 
+6d75 c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6d76 70028703 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+6d77 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_sdp_cfg_wait:
+6d78 6800c250 fetch 1 ,mem_sdp_state 
+6d79 c19f8000 rtnne l2cap_channel_setup_complete 
+6d7a 7002873b jam uppersm_reconn_ss_spp ,mem_upper_sm_reconn 
+
+process_upper_sm_reconn_ss_spp_wait:
+6d7b 68008285 fetch 1 ,mem_message_to_uppersm 
+6d7c c18b8000 rtnne recieve_ss_reasult_hf 
+6d7d 70028500 jam 0 ,mem_message_to_uppersm 
+6d7e 7002870d jam uppersm_reconn_sdp_disconn ,mem_upper_sm_reconn 
+6d7f 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_sdp_disconn_wait:
+6d80 6800c250 fetch 1 ,mem_sdp_state 
+6d81 247a0000 nrtn blank 
+6d82 6800c684 fetch 1 ,mem_ui_profile_supported 
+6d83 c2806daf bbit1 support_hid ,process_upper_sm_reconn_setup_hid 
+6d84 c2836db1 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+6d85 20206db5 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_hid_ctrl_conn_wait:
+6d86 6800c252 fetch 1 ,mem_hid_control_state 
+6d87 c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6d88 70028711 jam uppersm_reconn_hid_ctrl_cfg ,mem_upper_sm_reconn 
+6d89 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_hid_ctrl_cfg_wait:
+6d8a 6800c252 fetch 1 ,mem_hid_control_state 
+6d8b c19f8000 rtnne l2cap_channel_setup_complete 
+6d8c 70028713 jam uppersm_reconn_hid_int_conn ,mem_upper_sm_reconn 
+6d8d 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_hid_int_conn_wait:
+6d8e 6800c253 fetch 1 ,mem_hid_interrupt_state 
+6d8f c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6d90 70028715 jam uppersm_reconn_hid_int_cfg ,mem_upper_sm_reconn 
+6d91 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_hid_int_cfg_wait:
+6d92 6800c253 fetch 1 ,mem_hid_interrupt_state 
+6d93 c19f8000 rtnne l2cap_channel_setup_complete 
+6d94 6800c684 fetch 1 ,mem_ui_profile_supported 
+6d95 c2836db1 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+6d96 20206db5 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_rfcomm_conn_wait:
+6d97 6800c251 fetch 1 ,mem_rfcomm_state 
+6d98 c4008000 rtnbit0 l2cap_channel_state_conn_res 
+6d99 70028719 jam uppersm_reconn_rfcomm_cfg ,mem_upper_sm_reconn 
+6d9a 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_rfcomm_cfg_wait:
+6d9b 6800c251 fetch 1 ,mem_rfcomm_state 
+6d9c c19f8000 rtnne l2cap_channel_setup_complete 
+6d9d 7002871b jam uppersm_reconn_rfcomm_sabm ,mem_upper_sm_reconn 
+6d9e 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_rfcomm_sabm_wait:
+6d9f 6800c251 fetch 1 ,mem_rfcomm_state 
+6da0 c1ff8000 rtnne l2cap_channel_rfcomm_dlci0_opened 
+6da1 6800c684 fetch 1 ,mem_ui_profile_supported 
+6da2 c2836db3 bbit1 support_spp ,process_upper_sm_reconn_setup_spp 
+6da3 20206db5 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_spp_cmd_pn_wait:
+6da4 6800c254 fetch 1 ,mem_spp_state 
+6da5 c4008000 rtnbit0 rfcomm_channel_state_pn_res 
+6da6 7002871f jam uppersm_reconn_spp_sabm ,mem_upper_sm_reconn 
+6da7 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_spp_sabm_wait:
+6da8 6800c254 fetch 1 ,mem_spp_state 
+6da9 c4018000 rtnbit0 rfcomm_channel_state_ua 
+6daa 70028721 jam uppersm_reconn_spp_cmd_ms ,mem_upper_sm_reconn 
+6dab 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_spp_cmd_ms_wait:
+6dac 6800c254 fetch 1 ,mem_spp_state 
+6dad c1ff8000 rtnne rfcomm_channel_setup_complete 
+6dae 20206db5 branch process_upper_sm_reconn_termination 
+
+process_upper_sm_reconn_setup_hid:
+6daf 7002870f jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+6db0 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_setup_rfcomm:
+6db1 70028717 jam uppersm_reconn_rfcomm_conn ,mem_upper_sm_reconn 
+6db2 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_setup_spp:
+6db3 7002871d jam uppersm_reconn_spp_cmd_pn ,mem_upper_sm_reconn 
+6db4 20206cfb branch process_upper_sm_reconn 
+
+process_upper_sm_reconn_termination:
+6db5 70028700 jam 0 ,mem_upper_sm_reconn 
+6db6 20600000 rtn 
+
+upper_sm_send_sdp_conn:
+6db7 475fc037 bpatchx patch37_7 ,mem_patch37 
+6db8 204052b8 call l2cap_malloc_signal_channel 
+6db9 58000001 setarg psm_sdp 
+6dba 1fe20400 copy pdata ,temp 
+6dbb 58000050 setarg l2cap_sdp_channel 
+6dbc 1fe21600 copy pdata ,timeup 
+6dbd 202050a8 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_sdp_cfg:
+6dbe 47604038 bpatchx patch38_0 ,mem_patch38 
+6dbf 204052b8 call l2cap_malloc_signal_channel 
+6dc0 68014248 fetch 2 ,mem_sdp_remote_cid 
+6dc1 1fe20400 copy pdata ,temp 
+6dc2 202050b7 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_sdp_disconn:
+6dc3 4760c038 bpatchx patch38_1 ,mem_patch38 
+6dc4 204052b8 call l2cap_malloc_signal_channel 
+6dc5 68014248 fetch 2 ,mem_sdp_remote_cid 
+6dc6 1fe20400 copy pdata ,temp 
+6dc7 d9600050 arg l2cap_sdp_channel ,timeup 
+6dc8 204050cc call ml2cap_send_signal_disconn_req 
+6dc9 6800c250 fetch 1 ,mem_sdp_state 
+6dca 793ffe05 set0 l2cap_channel_state_rcv_cfg_res ,pdata 
+6dcb 6000c250 store 1 ,mem_sdp_state 
+6dcc 20600000 rtn 
+
+upper_sm_send_ss_spp:
+6dcd 47614038 bpatchx patch38_2 ,mem_patch38 
+6dce 204052c5 call l2cap_malloc_sdp_channel 
+6dcf 20407138 call sdp_send_spp_request 
+6dd0 202050e7 branch msdp_send_req_done 
+
+upper_sm_send_rfcomm_conn:
+6dd1 4761c038 bpatchx patch38_3 ,mem_patch38 
+6dd2 204052b8 call l2cap_malloc_signal_channel 
+6dd3 58000003 setarg psm_rfcomm 
+6dd4 1fe20400 copy pdata ,temp 
+6dd5 58000051 setarg l2cap_rfcomm_channel 
+6dd6 1fe21600 copy pdata ,timeup 
+6dd7 202050a8 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_rfcomm_cfg:
+6dd8 47624038 bpatchx patch38_4 ,mem_patch38 
+6dd9 204052b8 call l2cap_malloc_signal_channel 
+6dda 6801424a fetch 2 ,mem_rfcomm_remote_cid 
+6ddb 1fe20400 copy pdata ,temp 
+6ddc 202050b7 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_hid_ctrl_conn:
+6ddd 4762c038 bpatchx patch38_5 ,mem_patch38 
+6dde 204052b8 call l2cap_malloc_signal_channel 
+6ddf 58000011 setarg psm_hid_control 
+6de0 1fe20400 copy pdata ,temp 
+6de1 58000052 setarg l2cap_hid_control_channel 
+6de2 1fe21600 copy pdata ,timeup 
+6de3 202050a8 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_hid_ctrl_cfg:
+6de4 47634038 bpatchx patch38_6 ,mem_patch38 
+6de5 204052b8 call l2cap_malloc_signal_channel 
+6de6 6801424c fetch 2 ,mem_hid_ctrl_remote_cid 
+6de7 1fe20400 copy pdata ,temp 
+6de8 202050b7 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_hid_int_conn:
+6de9 4763c038 bpatchx patch38_7 ,mem_patch38 
+6dea 204052b8 call l2cap_malloc_signal_channel 
+6deb 58000013 setarg psm_hid_interrupt 
+6dec 1fe20400 copy pdata ,temp 
+6ded 58000053 setarg l2cap_hid_interrupt_channel 
+6dee 1fe21600 copy pdata ,timeup 
+6def 202050a8 branch ml2cap_send_signal_connect_req 
+
+upper_sm_send_hid_int_cfg:
+6df0 47644039 bpatchx patch39_0 ,mem_patch39 
+6df1 204052b8 call l2cap_malloc_signal_channel 
+6df2 6801424e fetch 2 ,mem_hid_int_remote_cid 
+6df3 1fe20400 copy pdata ,temp 
+6df4 202050b7 branch ml2cap_send_signal_config_req 
+
+upper_sm_send_rfcomm_sabm:
+6df5 4764c039 bpatchx patch39_1 ,mem_patch39 
+6df6 204052d2 call l2cap_malloc_rfcomm_channel 
+6df7 7004fb03 jam 3 ,mem_current_adss 
+6df8 7004fe1c jam 0x1c ,mem_current_fcs 
+6df9 20406ba9 call rfcomm_send_sabm 
+6dfa 70456301 jam 1 ,mem_rfcomm_initiator 
+6dfb 20600000 rtn 
+
+upper_sm_send_spp_cmd_pn:
+6dfc 47654039 bpatchx patch39_2 ,mem_patch39 
+6dfd 204052d2 call l2cap_malloc_rfcomm_channel 
+6dfe 6808c564 fetcht 1 ,mem_remote_spp_channel 
+6dff 20406a79 call channel_to_dlci 
+6e00 6008c55d storet 1 ,mem_pn_dlci 
+6e01 20206bc4 branch rfcomm_send_param_neg_cmd 
+
+upper_sm_send_spp_sabm:
+6e02 4765c039 bpatchx patch39_3 ,mem_patch39 
+6e03 204052d2 call l2cap_malloc_rfcomm_channel 
+6e04 6808c55d fetcht 1 ,mem_pn_dlci 
+6e05 20406a73 call dlci_to_address_cmd 
+6e06 20406a1a call rfcomm_calculate_fcs_sabm 
+6e07 600084fe store 1 ,mem_current_fcs 
+6e08 6808c55d fetcht 1 ,mem_pn_dlci 
+6e09 20406a73 call dlci_to_address_cmd 
+6e0a 600884fb storet 1 ,mem_current_adss 
+6e0b 20206ba9 branch rfcomm_send_sabm 
+
+upper_sm_send_spp_cmd_ms:
+6e0c 47664039 bpatchx patch39_4 ,mem_patch39 
+6e0d 204052d2 call l2cap_malloc_rfcomm_channel 
+6e0e 6808c55d fetcht 1 ,mem_pn_dlci 
+6e0f 20406a73 call dlci_to_address_cmd 
+6e10 20206bfc branch rfcomm_send_modem_status_cmd 
+
+sdp_process:
+6e11 4766c039 bpatchx patch39_5 ,mem_patch39 
+6e12 68010264 fetch 2 ,mem_l2cap_payload_ptr 
+6e13 98000c00 iforce contr 
+6e14 e8c08000 ifetch 1 ,contr 
+6e15 1fe22400 copy pdata ,regb 
+6e16 6000851b store 1 ,mem_sdp_pduid 
+6e17 e8c10000 ifetch 2 ,contr 
+6e18 6001051c store 2 ,mem_sdp_transactionid 
+6e19 e8c08000 ifetch 1 ,contr 
+6e1a 1fed1600 lshift8 pdata ,timeup 
+6e1b e8c08000 ifetch 1 ,contr 
+6e1c 99609600 iadd timeup ,timeup 
+6e1d 47674039 bpatchx patch39_6 ,mem_patch39 
+6e1e 18c20400 copy contr ,temp 
+6e1f df200004 arg 4 ,loopcnt 
+6e20 d8a0052a arg mem_sdp_handle_list ,contw 
+6e21 20407ec6 call memset0 
+6e22 18420c00 copy temp ,contr 
+6e23 1a427e00 deposit regb 
+6e24 c000efba beq sdp_error_res ,sdp_process_error_res 
+6e25 c0016e2c beq sdp_search_req ,sdp_process_ss_req 
+6e26 c001efba beq sdp_search_res ,sdp_process_ss_res 
+6e27 c0026e54 beq sdp_attribute_req ,sdp_process_sa_req 
+6e28 c002efba beq sdp_attribute_res ,sdp_process_sa_res 
+6e29 c0036f02 beq sdp_searchattrib_req ,sdp_process_ssa_req 
+6e2a c003efba beq sdp_searchattrib_res ,sdp_process_ssa_res 
+6e2b 20206fc1 branch sdp_insufficient_resource 
+
+sdp_process_ss_req:
+6e2c 4767c039 bpatchx patch39_7 ,mem_patch39 
+6e2d 20406fd0 call ask_serviceclassid 
+6e2e 2841fe01 compare 1 ,temp ,0xff 
+6e2f 2020f040 branch ss_empty_rsp ,true 
+6e30 2841feff compare 0xff ,temp ,0xff 
+6e31 2020efc4 branch sdp_invalid_request_syntax ,true 
+6e32 e8c10000 ifetch 2 ,contr 
+6e33 60010522 store 2 ,mem_sdp_record_maxcnt 
+6e34 196097fe increase -2 ,timeup 
+6e35 196097ff increase -1 ,timeup 
+6e36 2422efbe nbranch sdp_invalid_pdu_size ,zero 
+6e37 d9600511 arg mem_sdp_uuid_search_ptr ,timeup 
+6e38 e9610000 ifetch 2 ,timeup 
+6e39 207a0000 rtn blank 
+6e3a 20407082 call search_all_uuid 
+6e3b 204052d0 call l2cap_get_sdp_tx_payload 
+6e3c 18007e03 force 3 ,pdata 
+6e3d e0a08000 istore 1 ,contw 
+6e3e 6801051c fetch 2 ,mem_sdp_transactionid 
+6e3f e0a10000 istore 2 ,contw 
+6e40 18ebfe00 lshift2 queue ,pdata 
+6e41 1fe0fe05 add pdata ,5 ,pdata 
+6e42 1fe0a605 add pdata ,5 ,regc 
+6e43 1ff0fe00 byteswap pdata ,pdata 
+6e44 e0a10000 istore 2 ,contw 
+6e45 18e27e00 deposit queue 
+6e46 1ff0fe00 byteswap pdata ,pdata 
+6e47 e0a10000 istore 2 ,contw 
+6e48 e0a10000 istore 2 ,contw 
+6e49 d8c0052a arg mem_sdp_handle_list ,contr 
+6e4a 18e27200 copy queue ,loopcnt 
+6e4b 2022ee4f branch ss_req_blank ,zero 
+
+ss_req_loop:
+6e4c e8c20000 ifetch 4 ,contr 
+6e4d e0a20000 istore 4 ,contw 
+6e4e c2006e4c loop ss_req_loop 
+
+ss_req_blank:
+6e4f 18007e00 force 0 ,pdata 
+6e50 e0a08000 istore 1 ,contw 
+6e51 1a627e00 deposit regc 
+6e52 60010275 store 2 ,mem_sdp_tx_pkt_length 
+6e53 20600000 rtn 
+
+sdp_process_sa_req:
+6e54 4768403a bpatchx patch3a_0 ,mem_patch3a 
+6e55 e8c20000 ifetch 4 ,contr 
+6e56 60020524 store 4 ,mem_sdp_record_handle 
+6e57 196097fc increase -4 ,timeup 
+6e58 20406f2e call sdp_store_maxbyte 
+6e59 60010520 store 2 ,mem_sdp_attribute_maxbyte 
+6e5a 196097fe increase -2 ,timeup 
+6e5b 20407028 call dataelementtype6 
+6e5c 2022efc4 branch sdp_invalid_request_syntax ,zero 
+6e5d 2a21fe05 compare 5 ,rega ,0xff 
+6e5e 2020ee62 branch sa_judge_wholerange ,true 
+
+sa_isnot_wholerange:
+6e5f d8a0052a arg mem_sdp_attrib_list ,contw 
+6e60 18000e00 force 0 ,queue 
+6e61 20206e71 branch sa_req_loop 
+
+sa_judge_wholerange:
+6e62 e8c08000 ifetch 1 ,contr 
+6e63 c0856fc4 bne sdp_attribute_range ,sdp_invalid_request_syntax 
+6e64 e8c10000 ifetch 2 ,contr 
+6e65 243a6e6f nbranch sa_judge_wholerange_false1 ,blank 
+6e66 e8c08000 ifetch 1 ,contr 
+6e67 c0ffee6d bne 0xff ,sa_judge_wholerange_false2 
+6e68 e8c08000 ifetch 1 ,contr 
+6e69 c0ffee6b bne 0xff ,sa_judge_wholerange_false3 
+6e6a 20206eb8 branch sa_req_all 
+
+sa_judge_wholerange_false3:
+6e6b 18c08dfb increase -5 ,contr 
+6e6c 20206e5f branch sa_isnot_wholerange 
+
+sa_judge_wholerange_false2:
+6e6d 18c08dfc increase -4 ,contr 
+6e6e 20206e5f branch sa_isnot_wholerange 
+
+sa_judge_wholerange_false1:
+6e6f 18c08dfd increase -3 ,contr 
+6e70 20206e5f branch sa_isnot_wholerange 
+
+sa_req_loop:
+6e71 e8c08000 ifetch 1 ,contr 
+6e72 c004ee86 beq sdp_attribute_id ,sa_req_one_id 
+6e73 c0056e74 beq sdp_attribute_range ,sa_req_range 
+
+sa_req_range:
+6e74 e8c10000 ifetch 2 ,contr 
+6e75 e0a10000 istore 2 ,contw 
+6e76 18e08e01 increase 1 ,queue 
+6e77 1ff0a400 byteswap pdata ,regb 
+6e78 e8c10000 ifetch 2 ,contr 
+6e79 1ff0fe00 byteswap pdata ,pdata 
+
+sa_req_range_id_increase:
+6e7a 1a40a401 increase 1 ,regb 
+6e7b 9a467c00 isub regb ,null 
+6e7c 24216e83 nbranch sa_req_range_id_finish ,positive 
+6e7d 1fe22600 copy pdata ,regc 
+6e7e 1a50fe00 byteswap regb ,pdata 
+6e7f e0a10000 istore 2 ,contw 
+6e80 18e08e01 increase 1 ,queue 
+6e81 1a627e00 copy regc ,pdata 
+6e82 20206e7a branch sa_req_range_id_increase 
+
+sa_req_range_id_finish:
+6e83 196097fb increase -5 ,timeup 
+6e84 1a20a3fb increase -5 ,rega 
+6e85 20206e8b branch sa_req_check_next_id 
+
+sa_req_one_id:
+6e86 e8c10000 ifetch 2 ,contr 
+6e87 e0a10000 istore 2 ,contw 
+6e88 18e08e01 increase 1 ,queue 
+6e89 196097fd increase -3 ,timeup 
+6e8a 1a20a3fd increase -3 ,rega 
+
+sa_req_check_next_id:
+6e8b 24216fc4 nbranch sdp_invalid_request_syntax ,positive 
+6e8c 2422ee71 nbranch sa_req_loop ,zero 
+6e8d 196097ff increase -1 ,timeup 
+6e8e 2422efc4 nbranch sdp_invalid_request_syntax ,zero 
+6e8f 204052d0 call l2cap_get_sdp_tx_payload 
+6e90 18a08a0a increase 10 ,contw 
+6e91 da20052a arg mem_sdp_attrib_list ,rega 
+
+sa_req_handle_attributelist_next:
+6e92 18e27e00 copy queue ,pdata 
+6e93 203a6ea5 branch sa_req_handle_attributelist_end ,blank 
+6e94 ea210000 ifetch 2 ,rega 
+6e95 203a6ea5 branch sa_req_handle_attributelist_end ,blank 
+6e96 98002400 iforce regb 
+6e97 68020524 fetch 4 ,mem_sdp_record_handle 
+6e98 98000400 iforce temp 
+6e99 204070e7 call search_handle_attrib 
+6e9a 18c27e00 copy contr ,pdata 
+6e9b 203a6ea2 branch sa_req_handle_attributelist_notfound ,blank 
+6e9c 18c08dfd increase -3 ,contr 
+6e9d e8c18000 ifetch 3 ,contr 
+6e9e e0a18000 istore 3 ,contw 
+6e9f 2040705b call sdp_data_len 
+6ea0 98007200 iforce loopcnt 
+6ea1 20407f01 call memcpy 
+
+sa_req_handle_attributelist_notfound:
+6ea2 1a20a202 increase 2 ,rega 
+6ea3 18e08fff increase -1 ,queue 
+6ea4 20206e92 branch sa_req_handle_attributelist_next 
+
+sa_req_handle_attributelist_end:
+6ea5 da200005 arg sdp_attribute_res ,rega 
+6ea6 20406f84 call ssa_req_range_lastfreg_common 
+6ea7 68010275 fetch 2 ,mem_sdp_tx_pkt_length 
+6ea8 c005f043 beq 11 ,sa_empty_rsp 
+6ea9 20206f9a branch ssa_req_range_attrbutes_length_no_continue 
+
+sdp_store_continue_common:
+6eaa e8c08000 ifetch 1 ,contr 
+6eab c0006eae beq 0 ,sdp_store_continue_0byte 
+6eac c000eeb0 beq 1 ,sdp_store_continue_1byte 
+6ead c0016eb3 beq 2 ,sdp_store_continue_2byte 
+
+sdp_store_continue_0byte:
+6eae 196097ff increase -1 ,timeup 
+6eaf 20206eb6 branch sdp_store_continue_end 
+
+sdp_store_continue_1byte:
+6eb0 e8c08000 ifetch 1 ,contr 
+6eb1 196097fe increase -2 ,timeup 
+6eb2 20206eb6 branch sdp_store_continue_end 
+
+sdp_store_continue_2byte:
+6eb3 e8c10000 ifetch 2 ,contr 
+6eb4 1ff0fe00 byteswap pdata ,pdata 
+6eb5 196097fd increase -3 ,timeup 
+
+sdp_store_continue_end:
+6eb6 60010519 store 2 ,mem_sdp_continue_byte 
+6eb7 20600000 rtn 
+
+sa_req_all:
+6eb8 196097fb increase -5 ,timeup 
+6eb9 20406eaa call sdp_store_continue_common 
+6eba 2422efbe nbranch sdp_invalid_pdu_size ,zero 
+6ebb 680a0524 fetcht 4 ,mem_sdp_record_handle 
+6ebc 204070b1 call search_handle 
+6ebd 2422efbb nbranch sdp_invalid_service_record_handle ,zero 
+6ebe 18c22200 copy contr ,rega 
+6ebf 204052d0 call l2cap_get_sdp_tx_payload 
+6ec0 1a220c00 copy rega ,contr 
+6ec1 18a08a03 increase 3 ,contw 
+6ec2 18c21600 copy contr ,timeup 
+6ec3 20407062 call sdp_get_data 
+6ec4 1fe22200 copy pdata ,rega 
+6ec5 68010519 fetch 2 ,mem_sdp_continue_byte 
+6ec6 1fe22400 copy pdata ,regb 
+6ec7 1a227e00 copy rega ,pdata 
+6ec8 9a462400 isub regb ,regb 
+6ec9 68010520 fetch 2 ,mem_sdp_attribute_maxbyte 
+6eca 9a467c00 isub regb ,null 
+6ecb 24216ee7 nbranch sa_req_all_fragment_sdp ,positive 
+6ecc 78547c00 disable user 
+6ecd 68010519 fetch 2 ,mem_sdp_continue_byte 
+6ece 203a6eda branch sa_req_all_fisrt_fragment ,blank 
+6ecf 99608c00 iadd timeup ,contr 
+6ed0 1a40a403 increase 3 ,regb 
+6ed1 1a427200 copy regb ,loopcnt 
+6ed2 1f227e00 copy loopcnt ,pdata 
+6ed3 1fe0fe03 increase 3 ,pdata 
+6ed4 1ff0fe00 byteswap pdata ,pdata 
+6ed5 e0a10000 istore 2 ,contw 
+6ed6 1f227e00 copy loopcnt ,pdata 
+6ed7 1ff0fe00 byteswap pdata ,pdata 
+6ed8 e0a10000 istore 2 ,contw 
+6ed9 20206ef5 branch sa_req_all_answer_attributelist_full_loop 
+
+sa_req_all_fisrt_fragment:
+6eda 1a20f206 add rega ,6 ,loopcnt 
+6edb 20346ede branch sa_req_all_parlength_continue_byte ,user 
+6edc 1f30fe00 byteswap loopcnt ,pdata 
+6edd 20206ee1 branch sa_req_all_parlength_continue_byte_end 
+
+sa_req_all_parlength_continue_byte:
+6ede 1f227e00 copy loopcnt ,pdata 
+6edf 1fe0fe02 increase 2 ,pdata 
+6ee0 1ff0fe00 byteswap pdata ,pdata 
+
+sa_req_all_parlength_continue_byte_end:
+6ee1 e0a10000 istore 2 ,contw 
+6ee2 1f20f3fd increase -3 ,loopcnt 
+6ee3 1f30fe00 byteswap loopcnt ,pdata 
+6ee4 e0a10000 istore 2 ,contw 
+6ee5 19620c00 copy timeup ,contr 
+6ee6 20206ef5 branch sa_req_all_answer_attributelist_full_loop 
+
+sa_req_all_fragment_sdp:
+6ee7 78347c00 enable user 
+6ee8 68010520 fetch 2 ,mem_sdp_attribute_maxbyte 
+6ee9 1fe22200 copy pdata ,rega 
+6eea 1a227200 copy rega ,loopcnt 
+6eeb 68010519 fetch 2 ,mem_sdp_continue_byte 
+6eec 203a6eda branch sa_req_all_fisrt_fragment ,blank 
+6eed 99608c00 iadd timeup ,contr 
+6eee 1a227e00 copy rega ,pdata 
+6eef 1fe0fe05 increase 5 ,pdata 
+6ef0 1ff0fe00 byteswap pdata ,pdata 
+6ef1 e0a10000 istore 2 ,contw 
+6ef2 1a227e00 copy rega ,pdata 
+6ef3 1ff0fe00 byteswap pdata ,pdata 
+6ef4 e0a10000 istore 2 ,contw 
+
+sa_req_all_answer_attributelist_full_loop:
+6ef5 20407f01 call memcpy 
+6ef6 24346efe nbranch sa_req_all_last_frag_continue ,user 
+6ef7 18007e02 force 2 ,pdata 
+6ef8 e0a08000 istore 1 ,contw 
+6ef9 18c27e00 copy contr ,pdata 
+6efa 99667e00 isub timeup ,pdata 
+6efb 1ff0fe00 byteswap pdata ,pdata 
+6efc e0a10000 istore 2 ,contw 
+6efd 20206f00 branch sa_req_all_frag_end 
+
+sa_req_all_last_frag_continue:
+6efe 18007e00 force 0 ,pdata 
+6eff e0a08000 istore 1 ,contw 
+
+sa_req_all_frag_end:
+6f00 da200005 arg sdp_attribute_res ,rega 
+6f01 20206fb0 branch ssa_req_range_common 
+
+sdp_process_ssa_req:
+6f02 4768c03a bpatchx patch3a_1 ,mem_patch3a 
+6f03 20406fd0 call ask_serviceclassid 
+6f04 2841feff compare 0xff ,temp ,0xff 
+6f05 2020efc4 branch sdp_invalid_request_syntax ,true 
+6f06 20406f2e call sdp_store_maxbyte 
+6f07 60010520 store 2 ,mem_sdp_attribute_maxbyte 
+6f08 196097fe increase -2 ,timeup 
+6f09 20407028 call dataelementtype6 
+6f0a d8a0052a arg mem_sdp_attrib_list ,contw 
+6f0b 18000e00 force 0 ,queue 
+
+ssa_req_loop:
+6f0c e8c08000 ifetch 1 ,contr 
+6f0d c0056f36 beq sdp_attribute_range ,ssa_req_range 
+6f0e e8c10000 ifetch 2 ,contr 
+6f0f e0a10000 istore 2 ,contw 
+6f10 18e08e01 increase 1 ,queue 
+6f11 196097fd increase -3 ,timeup 
+6f12 1a20a3fd increase -3 ,rega 
+6f13 24216fc4 nbranch sdp_invalid_request_syntax ,positive 
+6f14 2422ef0c nbranch ssa_req_loop ,zero 
+6f15 196097ff increase -1 ,timeup 
+6f16 2422efc4 nbranch sdp_invalid_request_syntax ,zero 
+6f17 204052d0 call l2cap_get_sdp_tx_payload 
+6f18 18a08a0d increase 13 ,contw 
+6f19 68010511 fetch 2 ,mem_sdp_uuid_search_ptr 
+6f1a 98002600 iforce regc 
+6f1b da20052a arg mem_sdp_attrib_list ,rega 
+
+ssa_req_attributelist_next:
+6f1c ea210000 ifetch 2 ,rega 
+6f1d 203a6f29 branch ssa_req_attributelist_end ,blank 
+6f1e 98002400 iforce regb 
+6f1f 204070c6 call search_attrib 
+6f20 203a6f27 branch ssa_req_attributelist_notfound ,blank 
+6f21 18c08dfd increase -3 ,contr 
+6f22 e8c18000 ifetch 3 ,contr 
+6f23 e0a18000 istore 3 ,contw 
+6f24 2040705b call sdp_data_len 
+6f25 98007200 iforce loopcnt 
+6f26 20407f01 call memcpy 
+
+ssa_req_attributelist_notfound:
+6f27 1a20a202 increase 2 ,rega 
+6f28 20206f1c branch ssa_req_attributelist_next 
+
+ssa_req_attributelist_end:
+6f29 20406f83 call ssa_req_range_lastfreg 
+6f2a 68010275 fetch 2 ,mem_sdp_tx_pkt_length 
+6f2b c0077046 beq 14 ,ssa_empty_rsp 
+6f2c 20406f9a call ssa_req_range_attrbutes_length_no_continue 
+6f2d 20206f9a branch ssa_req_range_attrbutes_length_no_continue 
+
+sdp_store_maxbyte:
+6f2e e8c10000 ifetch 2 ,contr 
+6f2f 1ff0fe00 byteswap pdata ,pdata 
+6f30 1fe0fffd increase -3 ,pdata 
+6f31 d84000c8 arg 200 ,temp 
+6f32 98467c00 isub temp ,null 
+6f33 24610000 nrtn positive 
+6f34 580000c8 setarg 200 
+6f35 20600000 rtn 
+
+ssa_req_range:
+6f36 18c08c04 increase 4 ,contr 
+6f37 196097fb increase -5 ,timeup 
+6f38 1a20a3fb increase -5 ,rega 
+6f39 2422efc4 nbranch sdp_invalid_request_syntax ,zero 
+6f3a 20406eaa call sdp_store_continue_common 
+6f3b 2422efbe nbranch sdp_invalid_pdu_size ,zero 
+6f3c d9600511 arg mem_sdp_uuid_search_ptr ,timeup 
+6f3d 20407082 call search_all_uuid 
+6f3e 18e27e00 deposit queue 
+6f3f 203a7046 branch ssa_empty_rsp ,blank 
+6f40 6000854e store 1 ,mem_handle_humber 
+6f41 1a427e00 copy regb ,pdata 
+6f42 6001054c store 2 ,mem_sdp_all_length 
+6f43 d8e00000 arg 0 ,queue 
+6f44 da200000 arg 0 ,rega 
+6f45 204052d0 call l2cap_get_sdp_tx_payload 
+6f46 18a08a0a increase 10 ,contw 
+
+ssa_req_range_find_handle:
+6f47 20406f6c call ssa_req_range_get_length 
+6f48 24342a8c nbranch assert ,user 
+6f49 18c21600 copy contr ,timeup 
+6f4a 1fe22600 copy pdata ,regc 
+6f4b 9a20a200 iadd rega ,rega 
+6f4c 68010519 fetch 2 ,mem_sdp_continue_byte 
+6f4d 1fe22400 copy pdata ,regb 
+6f4e 203a6f75 branch ssa_req_range_first_freg ,blank 
+
+ssa_req_range_later_freg_with_continue:
+6f4f 1a227e00 copy rega ,pdata 
+6f50 9a462400 isub regb ,regb 
+6f51 2022ef67 branch ssa_req_range_next_handle ,zero 
+6f52 24216f67 nbranch ssa_req_range_next_handle ,positive 
+6f53 68010520 fetch 2 ,mem_sdp_attribute_maxbyte 
+6f54 9a467c00 isub regb ,null 
+6f55 2022ef5e branch ssa_req_range_maxbyte_with_continue ,zero 
+6f56 24216f5e nbranch ssa_req_range_maxbyte_with_continue ,positive 
+
+ssa_req_range_send_not_maxbyte:
+6f57 1a427200 copy regb ,loopcnt 
+6f58 20406f61 call ssa_req_range_maxbyte_with_continue_cpy 
+6f59 6800854e fetch 1 ,mem_handle_humber 
+6f5a 18e08e01 increase 1 ,queue 
+6f5b 98e67c00 isub queue ,null 
+6f5c 2022ef83 branch ssa_req_range_lastfreg ,zero 
+6f5d 20206fa0 branch ssa_req_range_freg_with_continue 
+
+ssa_req_range_maxbyte_with_continue:
+6f5e 1fe27200 copy pdata ,loopcnt 
+6f5f 20406f61 call ssa_req_range_maxbyte_with_continue_cpy 
+6f60 20206fa0 branch ssa_req_range_freg_with_continue 
+
+ssa_req_range_maxbyte_with_continue_cpy:
+6f61 18a08bfd increase -3 ,contw 
+6f62 1f220400 copy loopcnt ,temp 
+6f63 1a627e00 copy regc ,pdata 
+6f64 9a467e00 isub regb ,pdata 
+6f65 99608c00 iadd timeup ,contr 
+6f66 20207f01 branch memcpy 
+
+ssa_req_range_next_handle:
+6f67 6800854e fetch 1 ,mem_handle_humber 
+6f68 18e08e01 increase 1 ,queue 
+6f69 98e67c00 isub queue ,null 
+6f6a 20628000 rtn zero 
+6f6b 20206f47 branch ssa_req_range_find_handle 
+
+ssa_req_range_get_length:
+6f6c 20407fe9 call disable_user 
+6f6d d8c0052a arg mem_sdp_handle_list ,contr 
+6f6e 18ebfe00 lshift2 queue ,pdata 
+6f6f 98c08c00 iadd contr ,contr 
+6f70 e8ca0000 ifetcht 4 ,contr 
+6f71 204070b1 call search_handle 
+6f72 24628000 nrtn zero 
+6f73 2040705b call sdp_data_len 
+6f74 20207fe7 branch enable_user 
+
+ssa_req_range_first_freg:
+6f75 68010520 fetch 2 ,mem_sdp_attribute_maxbyte 
+6f76 9a267c00 isub rega ,null 
+6f77 24216f8f nbranch ssa_req_range_firstfreg_maxbyte_with_continue ,positive 
+6f78 1a227200 copy rega ,loopcnt 
+6f79 1f220400 copy loopcnt ,temp 
+6f7a 19620c00 copy timeup ,contr 
+6f7b 20407f01 call memcpy 
+6f7c 6801054c fetch 2 ,mem_sdp_all_length 
+6f7d 9a267c00 isub rega ,null 
+6f7e 2022ef81 branch ssa_req_range_freg_no_continue ,zero 
+
+ssa_req_range_firstfreg_not_maxbyte_with_continue:
+6f7f 20406fa0 call ssa_req_range_freg_with_continue 
+6f80 20206f94 branch ssa_req_range_attrbutes_length 
+
+ssa_req_range_freg_no_continue:
+6f81 20406f83 call ssa_req_range_lastfreg 
+6f82 20206f94 branch ssa_req_range_attrbutes_length 
+
+ssa_req_range_lastfreg:
+6f83 da200007 arg sdp_searchattrib_res ,rega 
+
+ssa_req_range_lastfreg_common:
+6f84 18007e00 force 0 ,pdata 
+6f85 e0a08000 istore 1 ,contw 
+6f86 20406fb0 call ssa_req_range_common 
+6f87 68090275 fetcht 2 ,mem_sdp_tx_pkt_length 
+6f88 184085fb increase -5 ,temp 
+6f89 1850fe00 byteswap temp ,pdata 
+6f8a e0a10000 istore 2 ,contw 
+6f8b 184085fd increase -3 ,temp 
+6f8c 1850fe00 byteswap temp ,pdata 
+6f8d e0a10000 istore 2 ,contw 
+6f8e 20600000 rtn 
+
+ssa_req_range_firstfreg_maxbyte_with_continue:
+6f8f 1fe27200 copy pdata ,loopcnt 
+6f90 1f220400 copy loopcnt ,temp 
+6f91 19620c00 copy timeup ,contr 
+6f92 20407f01 call memcpy 
+6f93 20406fa0 call ssa_req_range_freg_with_continue 
+
+ssa_req_range_attrbutes_length:
+6f94 58000036 setarg 0x36 
+6f95 e0a08000 istore 1 ,contw 
+6f96 6801054c fetch 2 ,mem_sdp_all_length 
+6f97 1ff0fe00 byteswap pdata ,pdata 
+6f98 e0a10000 istore 2 ,contw 
+6f99 20600000 rtn 
+
+ssa_req_range_attrbutes_length_no_continue:
+6f9a 58000036 setarg 0x36 
+6f9b e0a08000 istore 1 ,contw 
+6f9c 184085fd increase -3 ,temp 
+6f9d 1850fe00 byteswap temp ,pdata 
+6f9e e0a10000 istore 2 ,contw 
+6f9f 20600000 rtn 
+
+ssa_req_range_freg_with_continue:
+6fa0 da200007 arg sdp_searchattrib_res ,rega 
+6fa1 58000002 setarg 2 
+6fa2 e0a08000 istore 1 ,contw 
+6fa3 68010519 fetch 2 ,mem_sdp_continue_byte 
+6fa4 98408400 iadd temp ,temp 
+6fa5 1850fe00 byteswap temp ,pdata 
+6fa6 e0a10000 istore 2 ,contw 
+6fa7 20406fb0 call ssa_req_range_common 
+6fa8 68090275 fetcht 2 ,mem_sdp_tx_pkt_length 
+6fa9 184085fb increase -5 ,temp 
+6faa 1850fe00 byteswap temp ,pdata 
+6fab e0a10000 istore 2 ,contw 
+6fac 184085fb increase -5 ,temp 
+6fad 1850fe00 byteswap temp ,pdata 
+6fae e0a10000 istore 2 ,contw 
+6faf 20600000 rtn 
+
+ssa_req_range_common:
+6fb0 68010273 fetch 2 ,mem_sdp_tx_payload_ptr 
+6fb1 98a67e00 isub contw ,pdata 
+6fb2 1fe67e00 sub pdata ,0 ,pdata 
+6fb3 60010275 store 2 ,mem_sdp_tx_pkt_length 
+6fb4 204052d0 call l2cap_get_sdp_tx_payload 
+6fb5 1a227e00 copy rega ,pdata 
+6fb6 e0a08000 istore 1 ,contw 
+6fb7 6801051c fetch 2 ,mem_sdp_transactionid 
+6fb8 e0a10000 istore 2 ,contw 
+6fb9 20600000 rtn 
+
+sdp_process_ssa_res:
+
+sdp_process_ss_res:
+
+sdp_process_sa_res:
+
+sdp_process_error_res:
+6fba 20600000 rtn 
+
+sdp_invalid_service_record_handle:
+6fbb 58000200 setarg 0x0200 
+6fbc 6001054a store 2 ,mem_sdp_error_code 
+6fbd 20206fc6 branch sdp_error_response 
+
+sdp_invalid_pdu_size:
+6fbe 58000400 setarg 0x0400 
+6fbf 6001054a store 2 ,mem_sdp_error_code 
+6fc0 20206fc6 branch sdp_error_response 
+
+sdp_insufficient_resource:
+6fc1 58000600 setarg 0x0600 
+6fc2 6001054a store 2 ,mem_sdp_error_code 
+6fc3 20206fc6 branch sdp_error_response 
+
+sdp_invalid_request_syntax:
+6fc4 58000300 setarg 0x0300 
+6fc5 6001054a store 2 ,mem_sdp_error_code 
+
+sdp_error_response:
+6fc6 204052d0 call l2cap_get_sdp_tx_payload 
+6fc7 e0a08000 istore 1 ,contw 
+6fc8 6801051c fetch 2 ,mem_sdp_transactionid 
+6fc9 e0a10000 istore 2 ,contw 
+6fca 58000200 setarg 0x0200 
+6fcb e0a10000 istore 2 ,contw 
+6fcc 6801054a fetch 2 ,mem_sdp_error_code 
+6fcd e0a10000 istore 2 ,contw 
+6fce 70027507 jam 7 ,mem_sdp_tx_pkt_length 
+6fcf 20600000 rtn 
+
+ask_serviceclassid:
+6fd0 da400000 arg 0 ,regb 
+6fd1 18000400 force 0 ,temp 
+6fd2 d8a00511 arg mem_sdp_uuid_search_ptr ,contw 
+6fd3 20407028 call dataelementtype6 
+6fd4 2022f026 branch asksrv_error ,zero 
+
+classidloop:
+6fd5 1a40a401 increase 1 ,regb 
+6fd6 e8c08000 ifetch 1 ,contr 
+6fd7 1a20a3ff increase -1 ,rega 
+6fd8 196097ff increase -1 ,timeup 
+6fd9 2fe1f018 compare 0x18 ,pdata ,0xf8 
+6fda 2420f026 nbranch asksrv_error ,true 
+6fdb 2fe00e04 compare 0x04 ,pdata ,0x07 
+6fdc 2420eff3 nbranch cmp032 ,true 
+6fdd 18000401 force 1 ,temp 
+
+skip2bytes:
+6fde e8c08000 ifetch 1 ,contr 
+6fdf 1a20a3ff increase -1 ,rega 
+6fe0 196097ff increase -1 ,timeup 
+6fe1 c0806fe7 bne 0x00 ,frstbwrong 
+6fe2 e8c08000 ifetch 1 ,contr 
+6fe3 1a20a3ff increase -1 ,rega 
+6fe4 196097ff increase -1 ,timeup 
+6fe5 c0006ff8 beq 0x00 ,cmpuuid 
+6fe6 20206fea branch scndbwrong 
+
+frstbwrong:
+6fe7 18c08c01 increase 1 ,contr 
+6fe8 1a20a3ff increase -1 ,rega 
+6fe9 196097ff increase -1 ,timeup 
+
+scndbwrong:
+6fea 18c08c02 increase 2 ,contr 
+6feb 1a20a3fe increase -2 ,rega 
+6fec 196097fe increase -2 ,timeup 
+6fed 2841fe00 compare 0x00 ,temp ,0xff 
+6fee 2020f020 branch loopornot ,true 
+6fef 18c08c0c increase 12 ,contr 
+6ff0 1a20a3f4 increase -12 ,rega 
+6ff1 196097f4 increase -12 ,timeup 
+6ff2 20207020 branch loopornot 
+
+cmp032:
+6ff3 2fe00e02 compare 0x02 ,pdata ,0x07 
+6ff4 2420eff6 nbranch cmp016 ,true 
+6ff5 20206fde branch skip2bytes 
+
+cmp016:
+6ff6 2fe00e01 compare 0x01 ,pdata ,0x07 
+6ff7 2420f026 nbranch asksrv_error ,true 
+
+cmpuuid:
+6ff8 1a20a3fe increase -2 ,rega 
+6ff9 196097fe increase -2 ,timeup 
+6ffa e8c10000 ifetch 2 ,contr 
+6ffb 1a467c04 sub regb ,4 ,null 
+6ffc 2022effe branch uuidsize ,zero 
+6ffd e0a10000 istore 2 ,contw 
+
+uuidsize:
+6ffe 2841fe00 compare 0x00 ,temp ,0xff 
+6fff 2020f020 branch loopornot ,true 
+7000 18c20400 copy contr ,temp 
+7001 e8c08000 ifetch 1 ,contr 
+7002 c0807019 bne 0x00 ,wrong12b 
+7003 e8c08000 ifetch 1 ,contr 
+7004 c0807019 bne 0x00 ,wrong12b 
+7005 e8c08000 ifetch 1 ,contr 
+7006 c0887019 bne 0x10 ,wrong12b 
+7007 e8c08000 ifetch 1 ,contr 
+7008 c0807019 bne 0x00 ,wrong12b 
+7009 e8c08000 ifetch 1 ,contr 
+700a c0c07019 bne 0x80 ,wrong12b 
+700b e8c08000 ifetch 1 ,contr 
+700c c0807019 bne 0x00 ,wrong12b 
+700d e8c08000 ifetch 1 ,contr 
+700e c0807019 bne 0x00 ,wrong12b 
+700f e8c08000 ifetch 1 ,contr 
+7010 c0c07019 bne 0x80 ,wrong12b 
+7011 e8c08000 ifetch 1 ,contr 
+7012 c0aff019 bne 0x5f ,wrong12b 
+7013 e8c08000 ifetch 1 ,contr 
+7014 c0cdf019 bne 0x9b ,wrong12b 
+7015 e8c08000 ifetch 1 ,contr 
+7016 c09a7019 bne 0x34 ,wrong12b 
+7017 e8c08000 ifetch 1 ,contr 
+7018 c07df01e beq 0xfb ,chck12dn 
+
+wrong12b:
+7019 18420c00 copy temp ,contr 
+
+wrong12b1:
+701a 18c08c0c increase 12 ,contr 
+701b 18000e00 force 0x00 ,queue 
+701c 18000400 force 0x00 ,temp 
+701d 2020701e branch chck12dn 
+
+chck12dn:
+701e 196097f4 increase -12 ,timeup 
+701f 1a20a3f4 increase -12 ,rega 
+
+loopornot:
+7020 18000400 force 0x00 ,temp 
+7021 2a21fe00 compare 0x00 ,rega ,0xff 
+7022 2420efd5 nbranch classidloop ,true 
+7023 18007e00 force 0 ,pdata 
+7024 e0a10000 istore 2 ,contw 
+7025 20600000 rtn 
+
+asksrv_error:
+7026 d84000ff arg 0xff ,temp 
+7027 20600000 rtn 
+
+dataelementtype6:
+7028 476a403a bpatchx patch3a_4 ,mem_patch3a 
+7029 e8c08000 ifetch 1 ,contr 
+702a 196097ff increase -1 ,timeup 
+702b 2fe1f030 compare 0x30 ,pdata ,0xf8 
+702c 2420f03e nbranch dsize_error ,true 
+702d 2fe00e07 compare 0x07 ,pdata ,0x07 
+702e 2020f037 branch dsize32 ,true 
+702f 2fe00e06 compare 0x06 ,pdata ,0x07 
+7030 2020f039 branch dsize16 ,true 
+7031 2fe00e05 compare 0x05 ,pdata ,0x07 
+7032 2420f03e nbranch dsize_error ,true 
+7033 e8c08000 ifetch 1 ,contr 
+7034 1fe22200 copy pdata ,rega 
+7035 196097ff increase -1 ,timeup 
+7036 2020703c branch dsize 
+
+dsize32:
+7037 18c08c02 increase 2 ,contr 
+7038 196097fe increase -2 ,timeup 
+
+dsize16:
+7039 e8c10000 ifetch 2 ,contr 
+703a 1ff0a200 byteswap pdata ,rega 
+703b 196097fe increase -2 ,timeup 
+
+dsize:
+703c 18007e01 force 0x01 ,pdata 
+703d 20600000 rtn 
+
+dsize_error:
+703e 18007e00 force 0x00 ,pdata 
+703f 20600000 rtn 
+
+ss_empty_rsp:
+7040 58000003 setarg sdp_search_res 
+7041 6000851b store 1 ,mem_sdp_pduid 
+7042 20207048 branch empty_response 
+
+sa_empty_rsp:
+7043 58000005 setarg sdp_attribute_res 
+7044 6000851b store 1 ,mem_sdp_pduid 
+7045 20207048 branch empty_response 
+
+ssa_empty_rsp:
+7046 58000007 setarg sdp_searchattrib_res 
+7047 6000851b store 1 ,mem_sdp_pduid 
+
+empty_response:
+7048 204052d0 call l2cap_get_sdp_tx_payload 
+7049 6800851b fetch 1 ,mem_sdp_pduid 
+704a 1fe22400 copy pdata ,regb 
+704b e0a08000 istore 1 ,contw 
+704c 6801051c fetch 2 ,mem_sdp_transactionid 
+704d e0a10000 istore 2 ,contw 
+704e 58000500 setarg 0x0500 
+704f e0a10000 istore 2 ,contw 
+7050 2a41fe05 compare sdp_attribute_res ,regb ,0xff 
+7051 2020f057 branch fullsearch ,true 
+7052 2a41fe07 compare sdp_searchattrib_res ,regb ,0xff 
+7053 2020f057 branch fullsearch ,true 
+7054 58000000 setarg 0x000000 
+7055 e0a28000 istore 5 ,contw 
+7056 20207059 branch outempty 
+
+fullsearch:
+7057 58350200 setarg 0x350200 
+7058 e0a28000 istore 5 ,contw 
+
+outempty:
+7059 7002750a jam 10 ,mem_sdp_tx_pkt_length 
+705a 20600000 rtn 
+
+sdp_data_len:
+705b 20407ea2 call store_contw 
+705c 20407ea5 call store_contr 
+705d 20407062 call sdp_get_data 
+705e 20407e9c call get_contw 
+705f 20407e9f call get_contr 
+7060 18427e00 copy temp ,pdata 
+7061 20600000 rtn 
+
+sdp_get_data:
+7062 e8c08000 ifetch 1 ,contr 
+7063 1fe17207 and pdata ,0x7 ,loopcnt 
+7064 1fe97e00 rshift3 pdata ,pdata 
+7065 c080706c bne 0 ,sdp_get_data_type_not0 
+
+sdp_get_data_type0:
+7066 18007e01 force 1 ,pdata 
+7067 18000401 force 1 ,temp 
+7068 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex01234:
+7069 20407e76 call left_shift_n 
+706a 1fe08401 add pdata ,1 ,temp 
+706b 20600000 rtn 
+
+sdp_get_data_type_not0:
+706c 1f227e00 deposit loopcnt 
+706d 1fe67c04 sub pdata ,4 ,null 
+706e 20217069 branch sdp_get_data_type_not0_sizeindex01234 ,positive 
+706f c002f073 beq 5 ,sdp_get_data_type_not0_sizeindex5 
+7070 c0037076 beq 6 ,sdp_get_data_type_not0_sizeindex6 
+7071 c003f07a beq 7 ,sdp_get_data_type_not0_sizeindex7 
+7072 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex5:
+7073 e8c08000 ifetch 1 ,contr 
+7074 1fe08402 add pdata ,2 ,temp 
+7075 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex6:
+7076 e8c10000 ifetch 2 ,contr 
+7077 1ff0fe00 byteswap pdata ,pdata 
+7078 1fe08403 add pdata ,3 ,temp 
+7079 20600000 rtn 
+
+sdp_get_data_type_not0_sizeindex7:
+707a e8c10000 ifetch 2 ,contr 
+707b 1ff0fe00 byteswap pdata ,pdata 
+707c e8c90000 ifetcht 2 ,contr 
+707d 18508400 byteswap temp ,temp 
+707e 18500400 lshift16 temp ,temp 
+707f 9840fe00 iadd temp ,pdata 
+7080 1fe08405 add pdata ,5 ,temp 
+7081 20600000 rtn 
+
+search_all_uuid:
+7082 476ac03a bpatchx patch3a_5 ,mem_patch3a 
+7083 18000e00 force 0 ,queue 
+7084 da400000 arg 0 ,regb 
+7085 d8a0052a arg mem_sdp_handle_list ,contw 
+
+search_all_uuid_llop:
+7086 e9610000 ifetch 2 ,timeup 
+7087 207a0000 rtn blank 
+7088 2040708d call search_uuid 
+7089 18e27e00 copy queue ,pdata 
+708a c1038000 rtneq sdp_max_handle_number 
+708b 19609602 increase 2 ,timeup 
+708c 20207086 branch search_all_uuid_llop 
+
+search_uuid:
+708d 98002600 iforce regc 
+708e 68014575 fetch 2 ,mem_ui_uuid_table 
+708f 98000c00 iforce contr 
+
+search_uuid_next:
+7090 18e27e00 copy queue ,pdata 
+7091 c1038000 rtneq sdp_max_handle_number 
+7092 78547c00 disable user 
+7093 e8c08000 ifetch 1 ,contr 
+7094 207a0000 rtn blank 
+7095 98007200 iforce loopcnt 
+
+search_uuid_loop:
+7096 e8c10000 ifetch 2 ,contr 
+7097 9a667c00 isub regc ,null 
+7098 2422f09a nbranch search_uuid_not_found ,zero 
+7099 78347c00 enable user 
+
+search_uuid_not_found:
+709a c2007096 loop search_uuid_loop 
+709b e8ca0000 ifetcht 4 ,contr 
+709c 18c22200 copy contr ,rega 
+709d 243470ad nbranch search_uuid_nomatch ,user 
+709e d8c0052a arg mem_sdp_handle_list ,contr 
+709f df200007 arg sdp_max_handle_number ,loopcnt 
+
+search_uuid_check_same_handle:
+70a0 e8c20000 ifetch 4 ,contr 
+70a1 203a70a6 branch search_uuid_store_handle ,blank 
+70a2 98467c00 isub temp ,null 
+70a3 2022f0ad branch search_uuid_nomatch ,zero 
+70a4 c20070a0 loop search_uuid_check_same_handle 
+70a5 20600000 rtn 
+
+search_uuid_store_handle:
+70a6 e0aa0000 istoret 4 ,contw 
+70a7 18e08e01 increase 1 ,queue 
+70a8 1a220c00 copy rega ,contr 
+70a9 2040705b call sdp_data_len 
+70aa 9a40a400 iadd regb ,regb 
+70ab 98c08c00 iadd contr ,contr 
+70ac 20207090 branch search_uuid_next 
+
+search_uuid_nomatch:
+70ad 1a220c00 copy rega ,contr 
+70ae 20407062 call sdp_get_data 
+70af 98c08c00 iadd contr ,contr 
+70b0 20207090 branch search_uuid_next 
+
+search_handle:
+70b1 476b403a bpatchx patch3a_6 ,mem_patch3a 
+70b2 68014575 fetch 2 ,mem_ui_uuid_table 
+70b3 98000c00 iforce contr 
+
+search_handle_loop:
+70b4 e8c08000 ifetch 1 ,contr 
+70b5 203a7fe3 branch disable_zero ,blank 
+70b6 1fe3fe00 lshift pdata ,pdata 
+70b7 98c08c00 iadd contr ,contr 
+70b8 e8c20000 ifetch 4 ,contr 
+70b9 98467c00 isub temp ,null 
+70ba 20628000 rtn zero 
+70bb 18a27e00 deposit contw 
+70bc 60010abb store 2 ,mem_contw 
+70bd 600c0aa2 storet 8 ,mem_temp 
+70be 20407062 call sdp_get_data 
+70bf 98c08c00 iadd contr ,contr 
+70c0 18c27e00 copy contr ,pdata 
+70c1 68090abb fetcht 2 ,mem_contw 
+70c2 18420a00 copy temp ,contw 
+70c3 680c0aa2 fetcht 8 ,mem_temp 
+70c4 1fe20c00 copy pdata ,contr 
+70c5 202070b4 branch search_handle_loop 
+
+search_attrib:
+70c6 476bc03a bpatchx patch3a_7 ,mem_patch3a 
+70c7 68014575 fetch 2 ,mem_ui_uuid_table 
+70c8 98000c00 iforce contr 
+
+search_attrib_next:
+70c9 e8c08000 ifetch 1 ,contr 
+70ca 203a70e4 branch search_attrib_end ,blank 
+70cb 98007200 iforce loopcnt 
+
+search_attrib_loop:
+70cc e8c10000 ifetch 2 ,contr 
+70cd 9a667c00 isub regc ,null 
+70ce 2022f0d4 branch search_attrib_found_uuid ,zero 
+70cf c20070cc loop search_attrib_loop 
+70d0 18c08c04 increase 4 ,contr 
+70d1 20407062 call sdp_get_data 
+70d2 98c08c00 iadd contr ,contr 
+70d3 202070c9 branch search_attrib_next 
+
+search_attrib_found_uuid:
+70d4 1f20f3ff increase -1 ,loopcnt 
+70d5 1f23fe00 lshift loopcnt ,pdata 
+70d6 98c08c00 iadd contr ,contr 
+70d7 18c08c04 increase 4 ,contr 
+70d8 20407062 call sdp_get_data 
+70d9 98c09600 iadd contr ,timeup 
+
+search_attrib_loop_attribs:
+70da 18c08c01 increase 1 ,contr 
+70db e8c10000 ifetch 2 ,contr 
+70dc 9a467c00 isub regb ,null 
+70dd 2022ffef branch disable_blank ,zero 
+70de 2040705b call sdp_data_len 
+70df 98c08c00 iadd contr ,contr 
+70e0 19627e00 deposit timeup 
+70e1 98c67c00 isub contr ,null 
+70e2 2022f0e4 branch search_attrib_end ,zero 
+70e3 202070da branch search_attrib_loop_attribs 
+
+search_attrib_end:
+70e4 18000c00 force 0 ,contr 
+70e5 18007e00 force 0 ,pdata 
+70e6 20600000 rtn 
+
+search_handle_attrib:
+70e7 476c403b bpatchx patch3b_0 ,mem_patch3b 
+70e8 68014575 fetch 2 ,mem_ui_uuid_table 
+70e9 98000c00 iforce contr 
+
+search_handle_attrib_next:
+70ea e8c08000 ifetch 1 ,contr 
+70eb 203a7100 branch search_handle_attrib_end ,blank 
+70ec 1fe3fe00 lshift pdata ,pdata 
+70ed 98c08c00 iadd contr ,contr 
+70ee e8c20000 ifetch 4 ,contr 
+70ef 98467c00 isub temp ,null 
+70f0 2022f0f4 branch search_handl_attrib_found_handle ,zero 
+70f1 20407062 call sdp_get_data 
+70f2 98c08c00 iadd contr ,contr 
+70f3 202070ea branch search_handle_attrib_next 
+
+search_handl_attrib_found_handle:
+70f4 20407062 call sdp_get_data 
+70f5 98c09600 iadd contr ,timeup 
+
+search_handle_attrib_loop_attribs:
+70f6 18c08c01 increase 1 ,contr 
+70f7 e8c10000 ifetch 2 ,contr 
+70f8 9a467c00 isub regb ,null 
+70f9 20628000 rtn zero 
+70fa 2040705b call sdp_data_len 
+70fb 98c08c00 iadd contr ,contr 
+70fc 19627e00 deposit timeup 
+70fd 98c67c00 isub contr ,null 
+70fe 2022f100 branch search_handle_attrib_end ,zero 
+70ff 202070f6 branch search_handle_attrib_loop_attribs 
+
+search_handle_attrib_end:
+7100 18000c00 force 0 ,contr 
+7101 20600000 rtn 
+
+search_rfcomm_cn:
+7102 da400400 arg 0x0400 ,regb 
+7103 204070f4 call search_handl_attrib_found_handle 
+7104 da400300 arg 0x0300 ,regb 
+7105 2040710d call search_uuid_in_data 
+7106 24740000 nrtn user 
+7107 1a267c03 sub rega ,3 ,null 
+7108 20217fe9 branch disable_user ,positive 
+7109 e8c08000 ifetch 1 ,contr 
+710a c0847fe9 bne 0x08 ,disable_user 
+710b e8c08000 ifetch 1 ,contr 
+710c 20600000 rtn 
+
+search_uuid_in_data:
+710d 476cc03b bpatchx patch3b_1 ,mem_patch3b 
+710e 20407062 call sdp_get_data 
+710f 1fe22200 copy pdata ,rega 
+
+search_uuid_in_data_loop:
+7110 e8c08000 ifetch 1 ,contr 
+7111 1fe17207 and pdata ,0x7 ,loopcnt 
+7112 1fe97e00 rshift3 pdata ,pdata 
+7113 1fe67c03 sub pdata ,3 ,null 
+7114 2022f129 branch search_uuid_in_data_found_uuid ,zero 
+7115 1f227e00 copy loopcnt ,pdata 
+7116 c002f120 beq 5 ,search_uuid_in_data_found_element_index5 
+7117 c0037123 beq 6 ,search_uuid_in_data_found_element_index6 
+7118 c003f126 beq 7 ,search_uuid_in_data_found_element_index7 
+7119 18c08dff increase -1 ,contr 
+711a 20407062 call sdp_get_data 
+711b 98c08c00 iadd contr ,contr 
+711c 1a227e00 copy rega ,pdata 
+711d 98462200 isub temp ,rega 
+711e 2022ffe9 branch disable_user ,zero 
+711f 20207110 branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_element_index5:
+7120 1a20a3fe increase -2 ,rega 
+7121 18c08c01 increase 1 ,contr 
+7122 20207110 branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_element_index6:
+7123 1a20a3fd increase -3 ,rega 
+7124 18c08c02 increase 2 ,contr 
+7125 20207110 branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_element_index7:
+7126 1a20a3fb increase -5 ,rega 
+7127 18c08c04 increase 4 ,contr 
+7128 20207110 branch search_uuid_in_data_loop 
+
+search_uuid_in_data_found_uuid:
+7129 1a20a3ff increase -1 ,rega 
+712a 1f227e00 copy loopcnt ,pdata 
+712b c000f132 beq 1 ,search_uuid_in_data_type_uuid_16 
+712c c0017130 beq 2 ,search_uuid_in_data_type_uuid_32 
+712d c002712f beq 4 ,search_uuid_in_data_type_uuid_128 
+712e 20207fe9 branch disable_user 
+
+search_uuid_in_data_type_uuid_128:
+712f 1a20a3f4 increase -12 ,rega 
+
+search_uuid_in_data_type_uuid_32:
+7130 e8c10000 ifetch 2 ,contr 
+7131 1a20a3fe increase -2 ,rega 
+
+search_uuid_in_data_type_uuid_16:
+7132 e8c10000 ifetch 2 ,contr 
+7133 9a467c00 isub regb ,null 
+7134 2022ffe7 branch enable_user ,zero 
+7135 1a20a3fe increase -2 ,rega 
+7136 2022ffe9 branch disable_user ,zero 
+7137 20207110 branch search_uuid_in_data_loop 
+
+sdp_send_spp_request:
+7138 204052d0 call l2cap_get_sdp_tx_payload 
+7139 1fe20a00 copy pdata ,contw 
+713a 58000006 setarg 6 
+713b e0a08000 istore 1 ,contw 
+713c 5800006e setarg sdp_tid_spp 
+713d e0a10000 istore 2 ,contw 
+713e 58000f00 setarg 0x0f00 
+713f e0a10000 istore 2 ,contw 
+7140 581a0535 setarg 0x1a0535 
+7141 e0a18000 istore 3 ,contw 
+7142 58000111 setarg 0x0111 
+7143 1ff07e00 lshift16 pdata ,pdata 
+7144 e0a20000 istore 4 ,contw 
+7145 58002600 setarg 0x2600 
+7146 e0a10000 istore 2 ,contw 
+7147 58000335 setarg 0x0335 
+7148 e0a10000 istore 2 ,contw 
+7149 58000009 setarg 0x0009 
+714a e0a10000 istore 2 ,contw 
+714b 58000004 setarg 0x0004 
+714c e0a10000 istore 2 ,contw 
+714d 70027514 jam 0x14 ,mem_sdp_tx_pkt_length 
+714e 20600000 rtn 
+
+function_g2:
+714f 476d403b bpatchx patch3b_2 ,mem_patch3b 
+7150 7005e550 jam 80 ,mem_aes_cmac_data_length 
+7151 d8a005e6 arg memdat ,contw 
+7152 d8c0443a arg mem_le_srand ,contr 
+7153 20407ebf call memcpy16 
+7154 d8c045d2 arg mem_le_pubkey_local_x_256 ,contr 
+7155 20407ebd call memcpy32 
+7156 d8c009be arg mem_le_pubkey_remote_x_256 ,contr 
+7157 20407ebd call memcpy32 
+7158 2040720a call inverse_memdat 
+7159 d8c0042f arg mem_le_mrand ,contr 
+715a 20407205 call store_inverse_k 
+715b 204071d0 call function_aes_cmac 
+715c d8a00af2 arg mem_aes_cmac_temp ,contw 
+715d 20407201 call load_inverse_result 
+715e 580f4240 setarg 1000000 
+715f 1fe22200 copy pdata ,rega 
+7160 68020af2 fetch 4 ,mem_aes_cmac_temp 
+7161 9a26fc00 idiv rega 
+7162 20407f86 call wait_div_end 
+7163 18077e00 remainder pdata 
+7164 600209ba store 4 ,mem_gkey 
+7165 20600000 rtn 
+
+function_f6_eb:
+7166 7005e541 jam 65 ,mem_aes_cmac_data_length 
+7167 d8a005e6 arg memdat ,contw 
+7168 204071b5 call store_addr_common_a 
+7169 204071b0 call store_addr_common_b 
+716a 6801c454 fetch 3 ,mem_le_pres + 1 
+716b e0a18000 istore 3 ,contw 
+716c 20407176 call get_r 
+716d d8c0042f arg mem_le_mrand ,contr 
+716e 20407ebf call memcpy16 
+716f d8c0443a arg mem_le_srand ,contr 
+7170 20407ebf call memcpy16 
+7171 2040720a call inverse_memdat 
+7172 d8c00b12 arg mem_le_mackey ,contr 
+7173 d8a00ac2 arg mem_aes_cmac_k ,contw 
+7174 20407ebf call memcpy16 
+7175 202071d0 branch function_aes_cmac 
+
+get_r:
+7176 680244c7 fetch 4 ,mem_le_tk 
+7177 e0a20000 istore 4 ,contw 
+7178 20407ecd call memset0_4 
+7179 20207eca branch memset0_8 
+
+function_f6_ea:
+717a 476dc03b bpatchx patch3b_3 ,mem_patch3b 
+717b 7005e541 jam 65 ,mem_aes_cmac_data_length 
+717c d8a005e6 arg memdat ,contw 
+717d 204071b0 call store_addr_common_b 
+717e 204071b5 call store_addr_common_a 
+717f 6801c44d fetch 3 ,mem_le_preq + 1 
+7180 e0a18000 istore 3 ,contw 
+7181 20407176 call get_r 
+7182 d8c0443a arg mem_le_srand ,contr 
+7183 20407ebf call memcpy16 
+7184 d8c0042f arg mem_le_mrand ,contr 
+7185 20407ebf call memcpy16 
+7186 2040720a call inverse_memdat 
+7187 d8c00b12 arg mem_le_mackey ,contr 
+7188 d8a00ac2 arg mem_aes_cmac_k ,contw 
+7189 20407ebf call memcpy16 
+718a 204071d0 call function_aes_cmac 
+718b d8a00af2 arg mem_aes_cmac_temp ,contw 
+718c 20207201 branch load_inverse_result 
+
+function_f5:
+718d 7005e520 jam 32 ,mem_aes_cmac_data_length 
+718e d8c009fe arg mem_le_dhkey_256 ,contr 
+718f d8a005e6 arg memdat ,contw 
+7190 20407ebd call memcpy32 
+7191 2040720a call inverse_memdat 
+7192 d8c0099e arg mem_le_slat ,contr 
+7193 20407205 call store_inverse_k 
+7194 204071d0 call function_aes_cmac 
+7195 d8a00ac2 arg mem_aes_cmac_k ,contw 
+7196 20407497 call store_aes_result 
+7197 d8400001 arg 1 ,temp 
+7198 2040719f call function_f5_common 
+7199 d8a04419 arg mem_le_ltk ,contw 
+719a 20407201 call load_inverse_result 
+719b d8400000 arg 0 ,temp 
+719c 2040719f call function_f5_common 
+719d d8a00b12 arg mem_le_mackey ,contw 
+719e 20207497 branch store_aes_result 
+
+function_f5_common:
+719f 476e403b bpatchx patch3b_4 ,mem_patch3b 
+71a0 7005e535 jam 53 ,mem_aes_cmac_data_length 
+71a1 58000100 setarg 0x100 
+71a2 600105e6 store 2 ,memdat 
+71a3 204071b0 call store_addr_common_b 
+71a4 204071b5 call store_addr_common_a 
+71a5 d8c0443a arg mem_le_srand ,contr 
+71a6 20407ebf call memcpy16 
+71a7 d8c0042f arg mem_le_mrand ,contr 
+71a8 20407ebf call memcpy16 
+71a9 58006c65 setarg 0x6c65 
+71aa e0a10000 istore 2 ,contw 
+71ab 58006274 setarg 0x6274 
+71ac e0a10000 istore 2 ,contw 
+71ad e0a88000 istoret 1 ,contw 
+71ae 2040720a call inverse_memdat 
+71af 202071d0 branch function_aes_cmac 
+
+store_addr_common_b:
+71b0 680344a0 fetch 6 ,mem_le_lap 
+71b1 e0a30000 istore 6 ,contw 
+71b2 6800c495 fetch 1 ,mem_le_conn_own_addr_type 
+71b3 e0a08000 istore 1 ,contw 
+71b4 20600000 rtn 
+
+store_addr_common_a:
+71b5 6803044f fetch 6 ,mem_le_plap 
+71b6 e0a30000 istore 6 ,contw 
+71b7 6800c48e fetch 1 ,mem_le_conn_peer_addr_type 
+71b8 e0a08000 istore 1 ,contw 
+71b9 20600000 rtn 
+
+function_f4_ca:
+71ba 7005e541 jam 65 ,mem_aes_cmac_data_length 
+71bb 6800c664 fetch 1 ,mem_passkey_1bit 
+71bc 600085e6 store 1 ,memdat 
+71bd d8c045d2 arg mem_le_pubkey_local_x_256 ,contr 
+71be 20407ebd call memcpy32 
+71bf d8c009be arg mem_le_pubkey_remote_x_256 ,contr 
+71c0 20407ebd call memcpy32 
+71c1 2040720a call inverse_memdat 
+71c2 d8c0042f arg mem_le_mrand ,contr 
+71c3 20407205 call store_inverse_k 
+71c4 202071d0 branch function_aes_cmac 
+
+function_f4_cb:
+71c5 7005e541 jam 65 ,mem_aes_cmac_data_length 
+71c6 6800c664 fetch 1 ,mem_passkey_1bit 
+71c7 600085e6 store 1 ,memdat 
+71c8 d8c009be arg mem_le_pubkey_remote_x_256 ,contr 
+71c9 20407ebd call memcpy32 
+71ca d8c045d2 arg mem_le_pubkey_local_x_256 ,contr 
+71cb 20407ebd call memcpy32 
+71cc 2040720a call inverse_memdat 
+71cd d8c0443a arg mem_le_srand ,contr 
+71ce 20407205 call store_inverse_k 
+71cf 202071d0 branch function_aes_cmac 
+
+function_aes_cmac:
+71d0 476ec03b bpatchx patch3b_5 ,mem_patch3b 
+71d1 2040721f call function_aes_cmac_generate_subkey 
+71d2 680085e5 fetch 1 ,mem_aes_cmac_data_length 
+71d3 1fe20400 copy pdata ,temp 
+
+function_ceil16:
+71d4 1fe0fe0f increase 15 ,pdata 
+71d5 1ff1fe00 rshift4 pdata ,pdata 
+71d6 1fe22400 copy pdata ,regb 
+71d7 203a71e2 branch function_aes_cmac_set_flag_0_balnk ,blank 
+71d8 18417e0f and temp ,0x0f ,pdata 
+71d9 243a71e5 nbranch function_aes_cmac_set_flag_0 ,blank 
+71da da600ad2 arg mem_aes_cmac_k1 ,regc 
+71db dfe005e6 arg memdat ,pdata 
+71dc 1fe0fff0 increase -16 ,pdata 
+71dd 9840a200 iadd temp ,rega 
+71de d8a00b02 arg mem_aes_cmac_m_last ,contw 
+71df df200004 arg 4 ,loopcnt 
+71e0 20407edd call xor_loop 
+71e1 202071f0 branch function_aes_cmac_aes 
+
+function_aes_cmac_set_flag_0_balnk:
+71e2 da400001 arg 1 ,regb 
+71e3 da200000 arg 0 ,rega 
+71e4 202071e6 branch function_aes_cmac_set_flag_0_common 
+
+function_aes_cmac_set_flag_0:
+71e5 1841220f and temp ,0x0f ,rega 
+
+function_aes_cmac_set_flag_0_common:
+71e6 dfe005e6 arg memdat ,pdata 
+71e7 9840fe00 iadd temp ,pdata 
+71e8 9a260c00 isub rega ,contr 
+71e9 d8a00af2 arg mem_aes_cmac_temp ,contw 
+71ea 20407245 call function_aes_cmac_padding 
+71eb da600ae2 arg mem_aes_cmac_k2 ,regc 
+71ec da200af2 arg mem_aes_cmac_temp ,rega 
+71ed d8a00b02 arg mem_aes_cmac_m_last ,contw 
+71ee df200004 arg 4 ,loopcnt 
+71ef 20407edd call xor_loop 
+
+function_aes_cmac_aes:
+71f0 20407491 call aes_clear_data 
+71f1 20407428 call aes_init 
+71f2 d8c005e6 arg memdat ,contr 
+
+function_aes_cmac_aes_loop:
+71f3 1a40a5ff increase -1 ,regb 
+71f4 1a427e00 deposit regb 
+71f5 203a71f9 branch function_aes_cmac_aes_loop_end ,blank 
+71f6 20407486 call load_data128 
+71f7 20407422 call do_aes_cbc 
+71f8 202071f3 branch function_aes_cmac_aes_loop 
+
+function_aes_cmac_aes_loop_end:
+71f9 d8a00af2 arg mem_aes_cmac_temp ,contw 
+71fa 20407497 call store_aes_result 
+71fb d8c00b02 arg mem_aes_cmac_m_last ,contr 
+71fc 20407486 call load_data128 
+71fd 20407428 call aes_init 
+71fe d8c00af2 arg mem_aes_cmac_temp ,contr 
+71ff 20407486 call load_data128 
+7200 20207422 branch do_aes_cbc 
+
+load_inverse_result:
+7201 18a22200 copy contw ,rega 
+7202 20407497 call store_aes_result 
+7203 df200010 arg 16 ,loopcnt 
+7204 20207ee5 branch inverse_data 
+
+store_inverse_k:
+7205 d8a00ac2 arg mem_aes_cmac_k ,contw 
+7206 20407ebf call memcpy16 
+
+inverse_k:
+7207 df200010 arg 16 ,loopcnt 
+7208 da200ac2 arg mem_aes_cmac_k ,rega 
+7209 20207ee5 branch inverse_data 
+
+inverse_memdat:
+720a 680085e5 fetch 1 ,mem_aes_cmac_data_length 
+720b 1fe27200 copy pdata ,loopcnt 
+720c da2005e6 arg memdat ,rega 
+720d 20207ee5 branch inverse_data 
+
+bn_lshift_0_inverse:
+720e ea208000 ifetch 1 ,rega 
+720f 1fe3fe00 lshift pdata ,pdata 
+7210 2a6ffe00 isolate1 0 ,regc 
+7211 7920fe00 setflag true ,0 ,pdata 
+7212 2feffe08 isolate1 8 ,pdata 
+7213 7920a600 setflag true ,0 ,regc 
+7214 e2208000 istore 1 ,rega 
+7215 1a20a3ff increase -1 ,rega 
+7216 c200720e loop bn_lshift_0_inverse 
+7217 20600000 rtn 
+
+function_aes_cmac_k1_inverse:
+7218 da200ad2 arg mem_aes_cmac_k1 ,rega 
+
+function_aes_cmac_inverse_common:
+7219 1a20a20f increase 15 ,rega 
+721a 18007210 force 16 ,loopcnt 
+721b 18002600 force 0 ,regc 
+721c 2020720e branch bn_lshift_0_inverse 
+
+function_aes_cmac_k2_inverse:
+721d da200ae2 arg mem_aes_cmac_k2 ,rega 
+721e 20207219 branch function_aes_cmac_inverse_common 
+
+function_aes_cmac_generate_subkey:
+721f d8c00ac2 arg mem_aes_cmac_k ,contr 
+7220 20407484 call load_key 
+7221 18007008 force regidx_xor ,regext_index 
+7222 20407492 call aes_clear 
+7223 20407491 call aes_clear_data 
+7224 2040741f call do_aes_ocb 
+7225 d8a00ad2 arg mem_aes_cmac_k1 ,contw 
+7226 20407497 call store_aes_result 
+
+function_aes_cmac_k1:
+7227 476f403b bpatchx patch3b_6 ,mem_patch3b 
+7228 68008ad2 fetch 1 ,mem_aes_cmac_k1 
+7229 2feffe07 isolate1 7 ,pdata 
+722a 2420f230 nbranch function_aes_cmac_k1_0 ,true 
+722b 20407218 call function_aes_cmac_k1_inverse 
+722c da600ad2 arg mem_aes_cmac_k1 ,regc 
+722d d8a00ad2 arg mem_aes_cmac_k1 ,contw 
+722e 2040723a call function_aes_cmac_xor_rb 
+722f 20207231 branch function_aes_cmac_k2 
+
+function_aes_cmac_k1_0:
+7230 20407218 call function_aes_cmac_k1_inverse 
+
+function_aes_cmac_k2:
+7231 d8c00ad2 arg mem_aes_cmac_k1 ,contr 
+7232 d8a00ae2 arg mem_aes_cmac_k2 ,contw 
+7233 20407ebf call memcpy16 
+7234 68008ae2 fetch 1 ,mem_aes_cmac_k2 
+7235 2feffe07 isolate1 7 ,pdata 
+7236 2420f21d nbranch function_aes_cmac_k2_inverse ,true 
+7237 2040721d call function_aes_cmac_k2_inverse 
+7238 da600ae2 arg mem_aes_cmac_k2 ,regc 
+7239 d8a00ae2 arg mem_aes_cmac_k2 ,contw 
+
+function_aes_cmac_xor_rb:
+723a df200003 arg 3 ,loopcnt 
+
+function_aes_cmac_xor_rb_loop:
+723b d8400000 arg 0 ,temp 
+723c 20407241 call function_aes_cmac_xor_loop_common 
+723d 1a60a604 increase 4 ,regc 
+723e c200723b loop function_aes_cmac_xor_rb_loop 
+723f d8408700 arg 0x8700 ,temp 
+7240 18500400 lshift16 temp ,temp 
+
+function_aes_cmac_xor_loop_common:
+7241 ea620000 ifetch 4 ,regc 
+7242 9842fe00 ixor temp ,pdata 
+7243 e0a20000 istore 4 ,contw 
+7244 20600000 rtn 
+
+function_aes_cmac_padding:
+7245 476fc03b bpatchx patch3b_7 ,mem_patch3b 
+7246 df200010 arg 16 ,loopcnt 
+7247 dfe00000 arg 0 ,pdata 
+
+function_aes_cmac_padding_loop:
+7248 9a267c00 isub rega ,null 
+7249 2022f250 branch function_aes_cmac_padding_beq_length ,zero 
+724a 20217253 branch function_aes_cmac_padding_big_length ,positive 
+724b e8c88000 ifetcht 1 ,contr 
+724c e0a88000 istoret 1 ,contw 
+
+function_aes_cmac_padding_loop2:
+724d 1fe0fe01 increase 1 ,pdata 
+724e c2007248 loop function_aes_cmac_padding_loop 
+724f 20600000 rtn 
+
+function_aes_cmac_padding_beq_length:
+7250 d8400080 arg 0x80 ,temp 
+
+function_aes_cmac_padding_common:
+7251 e0a88000 istoret 1 ,contw 
+7252 2020724d branch function_aes_cmac_padding_loop2 
+
+function_aes_cmac_padding_big_length:
+7253 d8400000 arg 0 ,temp 
+7254 20207251 branch function_aes_cmac_padding_common 
+
+generate_kinit:
+7255 20407268 call function_e22 
+7256 d8c00592 arg mem_input_store ,contr 
+7257 d8a00582 arg mem_kinit ,contw 
+7258 20207ebf branch memcpy16 
+
+function_e21:
+7259 78547c00 disable user 
+725a 2040735f call function_expand 
+725b d8c00562 arg mem_random_number ,contr 
+725c d8a005a2 arg mem_x ,contw 
+725d 1800720f force 15 ,loopcnt 
+725e 20407f01 call memcpy 
+725f e8c08000 ifetch 1 ,contr 
+7260 1fe2fe06 xor_into 6 ,pdata 
+7261 e0a08000 istore 1 ,contw 
+7262 580005b2 setarg mem_y 
+7263 600105d6 store 2 ,memp_ar_input 
+7264 580005a2 setarg mem_x 
+7265 600105d4 store 2 ,memp_ar_key 
+7266 79200012 set1 mark_ar2 ,mark 
+7267 202072a8 branch function_ar 
+
+function_e22:
+7268 6808c689 fetcht 1 ,mem_pin_length 
+7269 18002410 force 16 ,regb 
+726a 1840a606 add temp ,6 ,regc 
+726b 1a667c10 sub regc ,16 ,null 
+726c 2021726e branch function_e22_pin_init ,positive 
+726d 18002610 force 16 ,regc 
+
+function_e22_pin_init:
+726e d8a005a2 arg mem_x ,contw 
+
+function_e22_genx_pin:
+726f d8c0468a arg mem_pin ,contr 
+7270 18427200 copy temp ,loopcnt 
+7271 78547c00 disable user 
+
+function_e22_genx_loop:
+7272 e8c08000 ifetch 1 ,contr 
+7273 e0a08000 istore 1 ,contw 
+7274 1a40a5ff increase -1 ,regb 
+7275 2022f27c branch function_e22_genx_end ,zero 
+7276 c2007272 loop function_e22_genx_loop 
+7277 2034726f branch function_e22_genx_pin ,user 
+7278 78347c00 enable user 
+7279 18007206 force 6 ,loopcnt 
+727a 1a220c00 copy rega ,contr 
+727b 20207272 branch function_e22_genx_loop 
+
+function_e22_genx_end:
+727c d8c00562 arg mem_random_number ,contr 
+727d d8a005b2 arg mem_y ,contw 
+727e 20407ebf call memcpy16 
+727f 680085c1 fetch 1 ,mem_y15 
+7280 9a62fe00 ixor regc ,pdata 
+7281 600085c1 store 1 ,mem_y15 
+7282 580005b2 setarg mem_y 
+7283 600105d6 store 2 ,memp_ar_input 
+7284 580005a2 setarg mem_x 
+7285 600105d4 store 2 ,memp_ar_key 
+7286 79200012 set1 mark_ar2 ,mark 
+7287 202072a8 branch function_ar 
+
+function_e1:
+7288 78547c00 disable user 
+7289 2040735f call function_expand 
+728a 20207292 branch function_hash 
+
+function_e3:
+728b da200056 arg mem_aco ,rega 
+728c 78347c00 enable user 
+728d 2040735f call function_expand 
+728e 20407292 call function_hash 
+728f d8c00592 arg mem_input_store ,contr 
+7290 d8a00062 arg mem_kc ,contw 
+7291 20207ebf branch memcpy16 
+
+function_hash:
+7292 58000562 setarg mem_random_number 
+7293 600105d6 store 2 ,memp_ar_input 
+7294 580041be setarg mem_link_key 
+7295 600105d4 store 2 ,memp_ar_key 
+7296 793f8012 set0 mark_ar2 ,mark 
+7297 204072a8 call function_ar 
+7298 da200592 arg mem_input_store ,rega 
+7299 da400562 arg mem_random_number ,regb 
+729a d8a005a2 arg mem_x ,contw 
+729b 20407352 call xor16 
+729c da2005a2 arg mem_x ,rega 
+729d da4005b2 arg mem_y ,regb 
+729e 1a420a00 copy regb ,contw 
+729f 78347c00 enable user 
+72a0 20407350 call add16 
+72a1 2040736a call key_offset 
+72a2 580005b2 setarg mem_y 
+72a3 600105d6 store 2 ,memp_ar_input 
+72a4 580005a2 setarg mem_x 
+72a5 600105d4 store 2 ,memp_ar_key 
+72a6 79200012 set1 mark_ar2 ,mark 
+72a7 202072a8 branch function_ar 
+
+function_ar:
+72a8 7005d800 jam 0 ,mem_ar_hround 
+72a9 680105d4 fetch 2 ,memp_ar_key 
+72aa 98000c00 iforce contr 
+72ab d8a005c2 arg mem_key_store ,contw 
+72ac 20407ebf call memcpy16 
+72ad 680105d6 fetch 2 ,memp_ar_input 
+72ae 98000c00 iforce contr 
+72af d8a00592 arg mem_input_store ,contw 
+72b0 20407ebf call memcpy16 
+
+function_ar_loop:
+72b1 204072cf call key_scheduling 
+72b2 78547c00 disable user 
+72b3 c58972b9 bmark0 mark_ar2 ,function_ar_original 
+72b4 680085d8 fetch 1 ,mem_ar_hround 
+72b5 c08272b9 bne 4 ,function_ar_original 
+72b6 680105d6 fetch 2 ,memp_ar_input 
+72b7 98002400 iforce regb 
+72b8 20407301 call xor_mod32_ar2 
+
+function_ar_original:
+72b9 20407300 call xor_mod32 
+72ba 20407313 call el_boxes 
+72bb 680085d8 fetch 1 ,mem_ar_hround 
+72bc 1fe0fe01 increase 1 ,pdata 
+72bd 600085d8 store 1 ,mem_ar_hround 
+72be 204072cf call key_scheduling 
+72bf 78347c00 enable user 
+72c0 20407300 call xor_mod32 
+72c1 20407322 call pht 
+72c2 20407331 call permute 
+72c3 20407322 call pht 
+72c4 20407331 call permute 
+72c5 20407322 call pht 
+72c6 20407331 call permute 
+72c7 20407322 call pht 
+72c8 680085d8 fetch 1 ,mem_ar_hround 
+72c9 1fe0fe01 increase 1 ,pdata 
+72ca 600085d8 store 1 ,mem_ar_hround 
+72cb c08872b1 bne 16 ,function_ar_loop 
+72cc 204072cf call key_scheduling 
+72cd 78547c00 disable user 
+72ce 20207300 branch xor_mod32 
+
+key_scheduling:
+72cf 680085d8 fetch 1 ,mem_ar_hround 
+72d0 d8c005c2 arg mem_key_store ,contr 
+72d1 203a72f6 branch key_sched_zero ,blank 
+72d2 98002400 iforce regb 
+72d3 18007211 force 17 ,loopcnt 
+72d4 18c20a00 copy contr ,contw 
+
+key_rotateloop:
+72d5 e8c08000 ifetch 1 ,contr 
+72d6 1fe98400 lshift3 pdata ,temp 
+72d7 1feb7e00 rshift2 pdata ,pdata 
+72d8 1fe97e00 rshift3 pdata ,pdata 
+72d9 9841fe00 ior temp ,pdata 
+72da e0a08000 istore 1 ,contw 
+72db c20072d5 loop key_rotateloop 
+72dc 580005c2 setarg mem_key_store 
+72dd 9a408c00 iadd regb ,contr 
+72de 18007210 force 16 ,loopcnt 
+72df d8a00572 arg mem_round_key ,contw 
+
+key_select_octet_loop:
+72e0 e8c08000 ifetch 1 ,contr 
+72e1 e0a08000 istore 1 ,contw 
+72e2 28c1ffd3 compare mem_key_store_end ,contr ,0xff 
+72e3 2420f2e5 nbranch key_select_octet_nwrap ,true 
+72e4 18c08def increase -17 ,contr 
+
+key_select_octet_nwrap:
+72e5 c20072e0 loop key_select_octet_loop 
+72e6 18002200 force 0 ,rega 
+72e7 1a40a7ff add regb ,-1 ,regc 
+72e8 1a6ba600 lshift2 regc ,regc 
+72e9 1a6ba600 lshift2 regc ,regc 
+72ea 204074b9 call enable_authrom 
+72eb 58008400 setarg mem_b_box 
+72ec 9a60a600 iadd regc ,regc 
+72ed d8a00572 arg mem_round_key ,contw 
+72ee 18007210 force 16 ,loopcnt 
+
+bias_round_key_loop:
+72ef ea688000 ifetcht 1 ,regc 
+72f0 e8a08000 ifetch 1 ,contw 
+72f1 9840fe00 iadd temp ,pdata 
+72f2 e0a08000 istore 1 ,contw 
+72f3 1a60a601 increase 1 ,regc 
+72f4 c20072ef loop bias_round_key_loop 
+72f5 202074bd branch disable_authrom 
+
+key_sched_zero:
+72f6 18007210 force 16 ,loopcnt 
+72f7 18000400 force 0 ,temp 
+
+create_byte_16_loop:
+72f8 e8c08000 ifetch 1 ,contr 
+72f9 98428400 ixor temp ,temp 
+72fa c20072f8 loop create_byte_16_loop 
+72fb 18427e00 deposit temp 
+72fc e0c08000 istore 1 ,contr 
+72fd d8c005c2 arg mem_key_store ,contr 
+72fe d8a00572 arg mem_round_key ,contw 
+72ff 20207ebf branch memcpy16 
+
+xor_mod32:
+7300 da400572 arg mem_round_key ,regb 
+
+xor_mod32_ar2:
+7301 18007210 force 16 ,loopcnt 
+7302 da200592 arg mem_input_store ,rega 
+7303 1a220a00 copy rega ,contw 
+
+xor_mod32_loop:
+7304 ea288000 ifetcht 1 ,rega 
+7305 ea408000 ifetch 1 ,regb 
+7306 9842e000 ixor temp ,alarm 
+7307 1f212603 and loopcnt ,3 ,regc 
+7308 2434730a nbranch xor_mod32_invert ,user 
+7309 1a62a603 xor_into 3 ,regc 
+
+xor_mod32_invert:
+730a 1a662601 sub regc ,1 ,regc 
+730b 2021730d branch xor_even ,positive 
+730c 9840e000 iadd temp ,alarm 
+
+xor_even:
+730d 1e027e00 deposit alarm 
+730e e0a08000 istore 1 ,contw 
+730f 1a20a201 increase 1 ,rega 
+7310 1a40a401 increase 1 ,regb 
+7311 c2007304 loop xor_mod32_loop 
+7312 20600000 rtn 
+
+el_boxes:
+7313 204074b9 call enable_authrom 
+7314 18007210 force 16 ,loopcnt 
+7315 da200592 arg mem_input_store ,rega 
+
+el_box_loop:
+7316 ea208000 ifetch 1 ,rega 
+7317 d8c08500 arg mem_e_box ,contr 
+7318 1f212603 and loopcnt ,3 ,regc 
+7319 1a667c01 sub regc ,1 ,null 
+731a 2021731c branch e_boxes ,positive 
+731b d8c08600 arg mem_l_box ,contr 
+
+e_boxes:
+731c 98c08c00 iadd contr ,contr 
+731d e8c08000 ifetch 1 ,contr 
+731e e2208000 istore 1 ,rega 
+731f 1a20a201 increase 1 ,rega 
+7320 c2007316 loop el_box_loop 
+7321 202074bd branch disable_authrom 
+
+pht:
+7322 18007208 force 8 ,loopcnt 
+7323 d8c00592 arg mem_input_store ,contr 
+7324 18c20a00 copy contr ,contw 
+
+pht_loop:
+7325 e8c08000 ifetch 1 ,contr 
+7326 98002200 iforce rega 
+7327 e8c08000 ifetch 1 ,contr 
+7328 98002400 iforce regb 
+7329 1a23fe00 lshift rega ,pdata 
+732a 9a40fe00 iadd regb ,pdata 
+732b e0a08000 istore 1 ,contw 
+732c 1a227e00 deposit rega 
+732d 9a40fe00 iadd regb ,pdata 
+732e e0a08000 istore 1 ,contw 
+732f c2007325 loop pht_loop 
+7330 20600000 rtn 
+
+permute:
+7331 588ae42c setarg 0x8ae42c 
+7332 98000400 iforce temp 
+7333 18007207 force 7 ,loopcnt 
+7334 20407340 call permute_exchange 
+7335 580d751b setarg 0xd751b 
+7336 98000400 iforce temp 
+7337 18007205 force 5 ,loopcnt 
+7338 20407340 call permute_exchange 
+7339 680085a1 fetch 1 ,mem_input_store + 15 
+733a 98002200 iforce rega 
+733b 68008595 fetch 1 ,mem_input_store + 3 
+733c 600085a1 store 1 ,mem_input_store + 15 
+733d 1a227e00 deposit rega 
+733e 60008595 store 1 ,mem_input_store + 3 
+733f 20600000 rtn 
+
+permute_exchange:
+7340 1841240f and temp ,0xf ,regb 
+
+permute_loop:
+7341 18417e0f and temp ,0xf ,pdata 
+7342 d8a00592 arg mem_input_store ,contw 
+7343 98a08a00 iadd contw ,contw 
+7344 e8a08000 ifetch 1 ,contw 
+7345 98002600 iforce regc 
+7346 1a227e00 deposit rega 
+7347 e0a08000 istore 1 ,contw 
+7348 1a622200 copy regc ,rega 
+7349 18518400 rshift4 temp ,temp 
+734a c2007341 loop permute_loop 
+734b 58000592 setarg mem_input_store 
+734c 9a408a00 iadd regb ,contw 
+734d 1a227e00 deposit rega 
+734e e0a08000 istore 1 ,contw 
+734f 20600000 rtn 
+
+add16:
+7350 78347c00 enable user 
+7351 20207353 branch xor_add16 
+
+xor16:
+7352 78547c00 disable user 
+
+xor_add16:
+7353 18007210 force 16 ,loopcnt 
+
+xoradd_loop:
+7354 ea288000 ifetcht 1 ,rega 
+7355 ea408000 ifetch 1 ,regb 
+7356 20347359 branch xoradd_add ,user 
+7357 9842fe00 ixor temp ,pdata 
+7358 2020735a branch xoradd_store 
+
+xoradd_add:
+7359 9840fe00 iadd temp ,pdata 
+
+xoradd_store:
+735a e0a08000 istore 1 ,contw 
+735b 1a20a201 increase 1 ,rega 
+735c 1a40a401 increase 1 ,regb 
+735d c2007354 loop xoradd_loop 
+735e 20600000 rtn 
+
+function_expand:
+735f d8a005b2 arg mem_y ,contw 
+7360 ea230000 ifetch 6 ,rega 
+7361 e0a30000 istore 6 ,contw 
+7362 20347365 branch expand_12 ,user 
+7363 ea230000 ifetch 6 ,rega 
+7364 20207366 branch expand_cont 
+
+expand_12:
+7365 e8c30000 ifetch 6 ,contr 
+
+expand_cont:
+7366 e0a30000 istore 6 ,contw 
+7367 ea220000 ifetch 4 ,rega 
+7368 e0a20000 istore 4 ,contw 
+7369 20600000 rtn 
+
+key_offset:
+736a d8c041be arg mem_link_key ,contr 
+736b d8a005a2 arg mem_x ,contw 
+736c d8400000 arg 0 ,temp 
+736d 588395a7 setarg 0x8395a7 
+736e 2040738b call concatenate_temp24 
+736f 58b3c1df setarg 0xb3c1df 
+7370 2040738b call concatenate_temp24 
+7371 5800e5e9 setarg 0xe5e9 
+7372 2040738c call concatenate_temp16 
+7373 18422800 copy temp ,regab 
+7374 78547c00 disable user 
+7375 20407379 call key_addxor 
+7376 1a820400 copy regab ,temp 
+7377 78347c00 enable user 
+7378 20207379 branch key_addxor 
+
+key_addxor:
+7379 18007208 force 8 ,loopcnt 
+
+key_addxor_loop:
+737a e8c08000 ifetch 1 ,contr 
+737b 2f200201 compare 1 ,loopcnt ,1 
+737c 20347380 branch key_high ,user 
+737d 2020f381 branch key_xor ,true 
+
+key_add:
+737e 9840fe00 iadd temp ,pdata 
+737f 20207382 branch key_store 
+
+key_high:
+7380 2020f37e branch key_add ,true 
+
+key_xor:
+7381 9842fe00 ixor temp ,pdata 
+
+key_store:
+7382 e0a08000 istore 1 ,contw 
+7383 184c8400 rshift8 temp ,temp 
+7384 c200737a loop key_addxor_loop 
+7385 20600000 rtn 
+
+copy_aco:
+7386 68030596 fetch 6 ,mem_input_store + 4 
+7387 60030056 store 6 ,mem_aco 
+7388 e8c30000 ifetch 6 ,contr 
+7389 e0a30000 istore 6 ,contw 
+738a 20600000 rtn 
+
+concatenate_temp24:
+738b 184d0400 lshift8 temp ,temp 
+
+concatenate_temp16:
+738c 18500400 lshift16 temp ,temp 
+738d 98418400 ior temp ,temp 
+738e 20600000 rtn 
+
+loop1:
+738f 2020738f branch loop1 
+
+generate_stk:
+7390 4770403c bpatchx patch3c_0 ,mem_patch3c 
+7391 2040742b call function_s1 
+7392 d8a04419 arg mem_le_ltk ,contw 
+7393 20207497 branch store_aes_result 
+
+authenticate_rconfirm:
+7394 d8a0443a arg mem_le_srand ,contw 
+7395 2034f397 branch authenticate_mconfirm ,master 
+7396 d8a0042f arg mem_le_mrand ,contw 
+
+authenticate_mconfirm:
+7397 18c22200 copy contr ,rega 
+7398 20407ebf call memcpy16 
+7399 20407440 call function_c1 
+739a d8c0442a arg mem_le_rconfirm ,contr 
+739b 202074b0 branch compare_res 
+
+generate_confirm:
+739c da20042f arg mem_le_mrand ,rega 
+739d 2034f39f branch generate_mrand ,master 
+739e da20443a arg mem_le_srand ,rega 
+
+generate_mrand:
+739f 1a220a00 copy rega ,contw 
+73a0 2040630c call generate_random 
+73a1 20207440 branch function_c1 
+
+generate_sk:
+73a2 d8c044aa arg mem_le_skdm ,contr 
+73a3 20407486 call load_data128 
+73a4 d8c04419 arg mem_le_ltk ,contr 
+73a5 20407487 call load_regext 
+73a6 18006c38 force 0x38 ,aes_ctrl 
+73a7 18006c00 force 0x0 ,aes_ctrl 
+73a8 2040741d call wait_aes 
+73a9 d8a0047c arg mem_le_sk ,contw 
+73aa 20207497 branch store_aes_result 
+
+first_block_counter:
+73ab 18007e49 force 0x49 ,pdata 
+73ac 202073ae branch first_block 
+
+first_block_data:
+73ad 18007e01 force 1 ,pdata 
+
+first_block:
+73ae 18007000 force regidx_data ,regext_index 
+73af 184d5e00 lshift8 temp ,regext 
+73b0 9de1de00 ior regext ,regext 
+73b1 1f00f001 increase 1 ,regext_index 
+73b2 184cde00 rshift8 temp ,regext 
+73b3 1df15e00 rshift16 regext ,regext 
+73b4 68014411 fetch 2 ,mem_le_ivm 
+73b5 1ff07e00 lshift16 ,pdata ,pdata 
+73b6 9de1de00 ior regext ,regext 
+73b7 1f00f001 increase 1 ,regext_index 
+73b8 e8c20000 ifetch 4 ,contr 
+73b9 98005e00 iforce regext 
+73ba 1f00f001 increase 1 ,regext_index 
+73bb e8c10000 ifetch 2 ,contr 
+73bc 1a30de00 byteswap rega ,regext 
+73bd 1df05e00 lshift16 regext ,regext 
+73be 9de1de00 ior regext ,regext 
+73bf 1f00f001 increase 1 ,regext_index 
+73c0 20600000 rtn 
+
+generate_mic:
+73c1 1a608c01 add regc ,1 ,contr 
+73c2 e8c08000 ifetch 1 ,contr 
+73c3 98002200 iforce rega 
+73c4 204073ab call first_block_counter 
+73c5 2040741f call do_aes_ocb 
+73c6 18007000 force regidx_data ,regext_index 
+73c7 ea608000 ifetch 1 ,regc 
+73c8 1fe17e03 and_into 0x3 ,pdata 
+73c9 1ff05e00 lshift16 pdata ,regext 
+73ca 79205e08 set1 8 ,regext 
+73cb 2040748f call clear_hidata 
+73cc 20407422 call do_aes_cbc 
+73cd 1a227200 copy rega ,loopcnt 
+73ce 1a608c02 add regc ,2 ,contr 
+73cf 2040746e call padding_data 
+
+generate_mic_loop:
+73d0 20407478 call aes_load_data 
+73d1 20407422 call do_aes_cbc 
+73d2 1f227e00 deposit loopcnt 
+73d3 203a73d5 branch generate_mic_end ,blank 
+73d4 202073d0 branch generate_mic_loop 
+
+generate_mic_end:
+73d5 1800700c force regidx_result ,regext_index 
+73d6 1de27e00 deposit regext 
+73d7 60020417 store 4 ,mem_le_mic 
+73d8 20600000 rtn 
+
+aes_crypt_data:
+73d9 1a20a201 increase 1 ,rega 
+73da 204073ad call first_block_data 
+73db 1a620c00 copy regc ,contr 
+73dc 20407482 call aes_load_xor 
+73dd 20407425 call do_aes_ctr 
+73de 2040749e call store_enc_data 
+73df 1a60a610 increase 16 ,regc 
+73e0 1a40a5f0 increase -16 ,regb 
+73e1 202173d9 branch aes_crypt_data ,positive 
+73e2 20600000 rtn 
+
+le_encrypt:
+73e3 4770c03c bpatchx patch3c_1 ,mem_patch3c 
+73e4 da6043dc arg mem_le_txheader ,regc 
+73e5 680ac403 fetcht 5 ,mem_le_pcnt_tx 
+73e6 204073c1 call generate_mic 
+73e7 18007008 force regidx_xor ,regext_index 
+73e8 98005e00 iforce regext 
+73e9 18002200 force 0 ,rega 
+73ea 204073ad call first_block_data 
+73eb 20407425 call do_aes_ctr 
+73ec da6043de arg mem_le_txpayload ,regc 
+73ed 6800c3dd fetch 1 ,mem_le_txlen 
+73ee 1fe0a5ff add pdata ,-1 ,regb 
+73ef 9a608a00 iadd regc ,contw 
+73f0 1800700c force regidx_result ,regext_index 
+73f1 1de27e00 deposit regext 
+73f2 e0a20000 istore 4 ,contw 
+73f3 204073d9 call aes_crypt_data 
+73f4 6800c3dd fetch 1 ,mem_le_txlen 
+73f5 1fe0fe04 increase 4 ,pdata 
+73f6 6000c3dd store 1 ,mem_le_txlen 
+73f7 680ac403 fetcht 5 ,mem_le_pcnt_tx 
+73f8 18408401 increase 1 ,temp 
+73f9 600ac403 storet 5 ,mem_le_pcnt_tx 
+73fa 20600000 rtn 
+
+le_decrypt:
+73fb 4771403c bpatchx patch3c_2 ,mem_patch3c 
+73fc 680082da fetch 1 ,mem_le_rxbuf + 1 
+73fd 1fe67c14 sub pdata ,20 ,null 
+73fe 202173ff branch le_dec_cont ,positive 
+
+le_dec_cont:
+73ff da6002db arg mem_le_rxbuf + 2 ,regc 
+7400 1fe0a5ff add pdata ,-1 ,regb 
+7401 1fe0fffc increase -4 ,pdata 
+7402 600082da store 1 ,mem_le_rxbuf + 1 
+7403 9a608c00 iadd regc ,contr 
+7404 e8c20000 ifetch 4 ,contr 
+7405 18007008 force regidx_xor ,regext_index 
+7406 98005e00 iforce regext 
+7407 18002200 force 0 ,rega 
+7408 680ac408 fetcht 5 ,mem_le_pcnt_rx 
+7409 204073ad call first_block_data 
+740a 20407425 call do_aes_ctr 
+740b 1800700c force regidx_result ,regext_index 
+740c 1de27e00 deposit regext 
+740d 6002041b store 4 ,mem_le_peer_mic 
+740e 204073d9 call aes_crypt_data 
+740f da6002d9 arg mem_le_rxbuf ,regc 
+7410 204073c1 call generate_mic 
+7411 680a041b fetcht 4 ,mem_le_peer_mic 
+7412 98467e00 isub temp ,pdata 
+7413 247a0000 nrtn blank 
+7414 6802440d fetch 4 ,mem_le_last_mic 
+7415 98467e00 isub temp ,pdata 
+7416 207a0000 rtn blank 
+7417 600a440d storet 4 ,mem_le_last_mic 
+7418 6802c408 fetch 5 ,mem_le_pcnt_rx 
+7419 1fe0fe01 increase 1 ,pdata 
+741a 6002c408 store 5 ,mem_le_pcnt_rx 
+741b 18007e00 force 0 ,pdata 
+741c 20600000 rtn 
+
+wait_aes:
+741d 243bf41d nbranch wait_aes ,aes_ready 
+741e 20600000 rtn 
+
+do_aes_ocb:
+741f 18006c30 force 0x30 ,aes_ctrl 
+7420 18006c00 force 0x0 ,aes_ctrl 
+7421 2020741d branch wait_aes 
+
+do_aes_cbc:
+7422 18006c32 force 0x32 ,aes_ctrl 
+7423 18006c02 force 0x2 ,aes_ctrl 
+7424 2020741d branch wait_aes 
+
+do_aes_ctr:
+7425 18006c34 force 0x34 ,aes_ctrl 
+7426 18006c04 force 0x4 ,aes_ctrl 
+7427 2020741d branch wait_aes 
+
+aes_init:
+7428 18006c01 force 1 ,aes_ctrl 
+7429 18006c00 force 0 ,aes_ctrl 
+742a 20600000 rtn 
+
+function_s1:
+742b 18007000 force regidx_data ,regext_index 
+742c 6802042f fetch 4 ,mem_le_mrand 
+742d 98005e00 iforce regext 
+742e 1f00f001 increase 1 ,regext_index 
+742f e8c20000 ifetch 4 ,contr 
+7430 98005e00 iforce regext 
+7431 1f00f001 increase 1 ,regext_index 
+7432 6802443a fetch 4 ,mem_le_srand 
+7433 98005e00 iforce regext 
+7434 1f00f001 increase 1 ,regext_index 
+7435 e8c20000 ifetch 4 ,contr 
+7436 98005e00 iforce regext 
+7437 1f00f001 increase 1 ,regext_index 
+7438 20407492 call aes_clear 
+7439 1f00f1fc increase -4 ,regext_index 
+743a 680244c7 fetch 4 ,mem_le_tk 
+743b 1fe25e00 copy pdata ,regext 
+743c 1f00f004 increase 4 ,regext_index 
+743d 18006c38 force 0x38 ,aes_ctrl 
+743e 18006c08 force 0x8 ,aes_ctrl 
+743f 2020741d branch wait_aes 
+
+function_c1:
+7440 4771c03c bpatchx patch3c_3 ,mem_patch3c 
+7441 680344a0 fetch 6 ,mem_le_lap 
+7442 680b044f fetcht 6 ,mem_le_plap 
+7443 2034f446 branch function_c1_master ,master 
+7444 6803044f fetch 6 ,mem_le_plap 
+7445 680b44a0 fetcht 6 ,mem_le_lap 
+
+function_c1_master:
+7446 18007008 force regidx_xor ,regext_index 
+7447 18425e00 copy temp ,regext 
+7448 1f00f001 increase 1 ,regext_index 
+7449 184f5e00 rshift32 temp ,regext 
+744a 1ff07e00 lshift16 pdata ,pdata 
+744b 9de1de00 ior regext ,regext 
+744c 1f00f001 increase 1 ,regext_index 
+744d 1fef5e00 rshift32 pdata ,regext 
+744e 1f00f001 increase 1 ,regext_index 
+744f 18005e00 force 0 ,regext 
+7450 18007e00 force 0 ,pdata 
+7451 6800c48e fetch 1 ,mem_le_conn_peer_addr_type 
+7452 6808c485 fetcht 1 ,mem_le_adv_own_addr_type 
+7453 2434f456 nbranch function_c1_irat ,master 
+7454 6800c495 fetch 1 ,mem_le_conn_own_addr_type 
+7455 6808c48e fetcht 1 ,mem_le_conn_peer_addr_type 
+
+function_c1_irat:
+7456 6000c44a store 1 ,mem_le_iat 
+7457 6008c44b storet 1 ,mem_le_rat 
+7458 18007000 force regidx_data ,regext_index 
+7459 da40444a arg mem_le_iat ,regb 
+745a 18007204 force 4 ,loopcnt 
+
+function_c1_loop1:
+745b ea220000 ifetch 4 ,rega 
+745c ea4a0000 ifetcht 4 ,regb 
+745d 9842de00 ixor temp ,regext 
+745e 1f00f001 increase 1 ,regext_index 
+745f 1a20a204 increase 4 ,rega 
+7460 1a40a404 increase 4 ,regb 
+7461 c200745b loop function_c1_loop1 
+7462 20407492 call aes_clear 
+7463 1f00f1fc increase -4 ,regext_index 
+7464 680244c7 fetch 4 ,mem_le_tk 
+7465 1fe25e00 copy pdata ,regext 
+7466 1f00f004 increase 4 ,regext_index 
+7467 18006c38 force 0x38 ,aes_ctrl 
+7468 18006c0c force 0xc ,aes_ctrl 
+7469 2040741d call wait_aes 
+746a 20407491 call aes_clear_data 
+746b 18006c3a force 0x3a ,aes_ctrl 
+746c 18006c08 force 0x8 ,aes_ctrl 
+746d 2020741d branch wait_aes 
+
+padding_data:
+746e 2f200600 compare 0 ,loopcnt ,3 
+746f 20608000 rtn true 
+7470 18c27e00 deposit contr 
+7471 9f208a00 iadd loopcnt ,contw 
+7472 18007e00 force 0 ,pdata 
+
+padding_loop:
+7473 e0a08000 istore 1 ,contw 
+7474 1f20f201 increase 1 ,loopcnt 
+7475 2f200600 compare 0 ,loopcnt ,3 
+7476 20608000 rtn true 
+7477 20207473 branch padding_loop 
+
+aes_load_data:
+7478 18007000 force regidx_data ,regext_index 
+
+load_data_loop:
+7479 1f227e00 deposit loopcnt 
+747a 203a747d branch load_data_padding ,blank 
+747b e8c20000 ifetch 4 ,contr 
+747c 1f20f3fc increase -4 ,loopcnt 
+
+load_data_padding:
+747d 98005e00 iforce regext 
+747e 1f00f001 increase 1 ,regext_index 
+747f 2f001e04 compare regidx_key ,regext_index ,0xf 
+7480 20608000 rtn true 
+7481 20207479 branch load_data_loop 
+
+aes_load_xor:
+7482 18007008 force regidx_xor ,regext_index 
+7483 20207487 branch load_regext 
+
+load_key:
+7484 18007004 force regidx_key ,regext_index 
+7485 20207487 branch load_regext 
+
+load_data128:
+7486 18007000 force regidx_data ,regext_index 
+
+load_regext:
+7487 18007204 force 4 ,loopcnt 
+
+load_regext_loop:
+7488 e8c20000 ifetch 4 ,contr 
+7489 98005e00 iforce regext 
+748a 1f00f001 increase 1 ,regext_index 
+748b c2007488 loop load_regext_loop 
+748c 20600000 rtn 
+
+load_sk:
+748d d8c0047c arg mem_le_sk ,contr 
+748e 20207484 branch load_key 
+
+clear_hidata:
+748f 18007204 force 4 ,loopcnt 
+7490 20207494 branch clear_data_rest 
+
+aes_clear_data:
+7491 18007000 force regidx_data ,regext_index 
+
+aes_clear:
+7492 18007204 force 4 ,loopcnt 
+
+clear_loop:
+7493 18005e00 force 0 ,regext 
+
+clear_data_rest:
+7494 1f00f001 increase 1 ,regext_index 
+7495 c2007493 loop clear_loop 
+7496 20600000 rtn 
+
+store_aes_result:
+7497 1800700c force regidx_result ,regext_index 
+7498 18007204 force 4 ,loopcnt 
+
+send_aes_result_loop:
+7499 1de27e00 deposit regext 
+749a e0a20000 istore 4 ,contw 
+749b 1f00f001 increase 1 ,regext_index 
+749c c2007499 loop send_aes_result_loop 
+749d 20600000 rtn 
+
+store_enc_data:
+749e 1800700c force regidx_result ,regext_index 
+749f 1a620a00 copy regc ,contw 
+74a0 1a40f201 add regb ,1 ,loopcnt 
+74a1 1f267c0f sub loopcnt ,15 ,null 
+74a2 202174a4 branch store_enc_loop ,positive 
+74a3 18007210 force 16 ,loopcnt 
+
+store_enc_loop:
+74a4 1de27e00 deposit regext 
+74a5 1f267c03 sub loopcnt ,3 ,null 
+74a6 202174ac branch store_enc_byte ,positive 
+74a7 e0a20000 istore 4 ,contw 
+74a8 1f20f3fc increase -4 ,loopcnt 
+74a9 20628000 rtn zero 
+74aa 1f00f001 increase 1 ,regext_index 
+74ab 202074a4 branch store_enc_loop 
+
+store_enc_byte:
+74ac e0a08000 istore 1 ,contw 
+74ad 1fecfe00 rshift8 pdata ,pdata 
+74ae c20074ac loop store_enc_byte 
+74af 20600000 rtn 
+
+compare_res:
+74b0 1800700c force regidx_result ,regext_index 
+74b1 18007204 force 4 ,loopcnt 
+
+compare_res_loop:
+74b2 e8c20000 ifetch 4 ,contr 
+74b3 9de67c00 isub regext ,null 
+74b4 24628000 nrtn zero 
+74b5 1f00f001 increase 1 ,regext_index 
+74b6 c20074b2 loop compare_res_loop 
+74b7 18007c00 force 0 ,null 
+74b8 20600000 rtn 
+
+enable_authrom:
+74b9 68108050 hfetch 1 ,core_clkoff 
+74ba 793ffe00 set0 clock_off_auth_rom ,pdata 
+74bb 60108050 hstore 1 ,core_clkoff 
+74bc 20600000 rtn 
+
+disable_authrom:
+74bd 68108050 hfetch 1 ,core_clkoff 
+74be 79207e00 set1 clock_off_auth_rom ,pdata 
+74bf 60108050 hstore 1 ,core_clkoff 
+74c0 20600000 rtn 
+
+init_memp:
+74c1 d8a00886 arg mem_p ,contw 
+74c2 3803ffff setsect 0 ,0x3ffff 
+74c3 3807ffff setsect 1 ,0x3ffff 
+74c4 380bffff setsect 2 ,0x3ffff 
+74c5 380ffbff setsect 3 ,0x3fbff 
+74c6 e0a48000 istore 9 ,contw 
+74c7 3803ffff setsect 0 ,0x3ffff 
+74c8 3807ffff setsect 1 ,0x3ffff 
+74c9 380bffff setsect 2 ,0x3ffff 
+74ca 380fffff setsect 3 ,0x3ffff 
+74cb e0a48000 istore 9 ,contw 
+74cc 3803ffff setsect 0 ,0x3ffff 
+74cd 3807ffff setsect 1 ,0x3ffff 
+74ce 380bcfff setsect 2 ,0x3cfff 
+74cf 380fffff setsect 3 ,0x3ffff 
+74d0 e0a48000 istore 9 ,contw 
+74d1 3803ffff setsect 0 ,0x3ffff 
+74d2 3807ffff setsect 1 ,0x3ffff 
+74d3 380bffef setsect 2 ,0x3ffef 
+74d4 380fffff setsect 3 ,0x3ffff 
+74d5 e0a48000 istore 9 ,contw 
+74d6 3803ffff setsect 0 ,0x3ffff 
+74d7 3807ffff setsect 1 ,0x3ffff 
+74d8 380bffff setsect 2 ,0x3ffff 
+74d9 380fffff setsect 3 ,0x3ffff 
+74da e0a48000 istore 9 ,contw 
+74db 3803ffff setsect 0 ,0x3ffff 
+74dc 38066c7f setsect 1 ,0x26c7f 
+74dd 3808146b setsect 2 ,0x146b 
+74de 380f7bb3 setsect 3 ,0x37bb3 
+74df e0a48000 istore 9 ,contw 
+74e0 3801feb8 setsect 0 ,0x1feb8 
+74e1 38050c12 setsect 1 ,0x10c12 
+74e2 380ab722 setsect 2 ,0x2b722 
+74e3 380e9fa6 setsect 3 ,0x29fa6 
+74e4 e0a48000 istore 9 ,contw 
+74e5 3800e70f setsect 0 ,0xe70f 
+74e6 38056720 setsect 1 ,0x16720 
+74e7 3808519e setsect 2 ,0x519e 
+74e8 380d9084 setsect 3 ,0x19084 
+74e9 e0a48000 istore 9 ,contw 
+74ea 38031012 setsect 0 ,0x31012 
+74eb 380760bf setsect 1 ,0x360bf 
+74ec 380bf0af setsect 2 ,0x3f0af 
+74ed 380c03d3 setsect 3 ,0x3d3 
+74ee e0a48000 istore 9 ,contw 
+74ef 3803a188 setsect 0 ,0x3a188 
+74f0 38043ad0 setsect 1 ,0x3ad0 
+74f1 380bcbf2 setsect 2 ,0x3cbf2 
+74f2 380e43d9 setsect 3 ,0x243d9 
+74f3 e0a48000 istore 9 ,contw 
+74f4 3802b030 setsect 0 ,0x2b030 
+74f5 38076a03 setsect 1 ,0x36a03 
+74f6 38091188 setsect 2 ,0x11188 
+74f7 380de520 setsect 3 ,0x1e520 
+74f8 e0a48000 istore 9 ,contw 
+74f9 3803a11e setsect 0 ,0x3a11e 
+74fa 3804fe5d setsect 1 ,0xfe5d 
+74fb 3808dd57 setsect 2 ,0xdd57 
+74fc 380dac93 setsect 3 ,0x1ac93 
+74fd e0a48000 istore 9 ,contw 
+74fe 380011ed setsect 0 ,0x11ed 
+74ff 380618c4 setsect 1 ,0x218c4 
+7500 38088da7 setsect 2 ,0x8da7 
+7501 380e57ff setsect 3 ,0x257ff 
+7502 e0a48000 istore 9 ,contw 
+7503 3803192b setsect 0 ,0x3192b 
+7504 38074641 setsect 1 ,0x34641 
+7505 3809be0c setsect 2 ,0x1be0c 
+7506 380f66ad setsect 3 ,0x366ad 
+7507 e0a48000 istore 9 ,contw 
+7508 38001f83 setsect 0 ,0x1f83 
+7509 38055a23 setsect 1 ,0x15a23 
+750a 380bf9b0 setsect 2 ,0x3f9b0 
+750b 380c3949 setsect 3 ,0x3949 
+750c e0a48000 istore 9 ,contw 
+750d 38013a51 setsect 0 ,0x13a51 
+750e 380553fd setsect 1 ,0x153fd 
+750f 380b372a setsect 2 ,0x3372a 
+7510 380cf1bb setsect 3 ,0xf1bb 
+7511 e0a48000 istore 9 ,contw 
+7512 3803ae85 setsect 0 ,0x3ae85 
+7513 3805eed9 setsect 1 ,0x1eed9 
+7514 38089e66 setsect 2 ,0x9e66 
+7515 380c01a8 setsect 3 ,0x1a8 
+7516 e0a40000 istore 8 ,contw 
+7517 20600000 rtn 
+
+init_memp_256:
+7518 d8a0091e arg mem_p_256 ,contw 
+7519 3803ffff setsect 0 ,0x3ffff 
+751a 3807ffff setsect 1 ,0x3ffff 
+751b 380bffff setsect 2 ,0x3ffff 
+751c 380fffff setsect 3 ,0x3ffff 
+751d e0a48000 istore 9 ,contw 
+751e 3803ffff setsect 0 ,0x3ffff 
+751f 3804003f setsect 1 ,0x3f 
+7520 38080000 setsect 2 ,0x0 
+7521 380c0000 setsect 3 ,0x0 
+7522 e0a48000 istore 9 ,contw 
+7523 38000000 setsect 0 ,0x0 
+7524 38040000 setsect 1 ,0x0 
+7525 38081000 setsect 2 ,0x1000 
+7526 380c0000 setsect 3 ,0x0 
+7527 e0a48000 istore 9 ,contw 
+7528 3803ff00 setsect 0 ,0x3ff00 
+7529 3807ffff setsect 1 ,0x3ffff 
+752a 380bffcf setsect 2 ,0x3ffcf 
+752b 380fffff setsect 3 ,0x3ffff 
+752c e0a48000 istore 9 ,contw 
+752d 3803ffff setsect 0 ,0x3ffff 
+752e 3807ffff setsect 1 ,0x3ffff 
+752f 380bffff setsect 2 ,0x3ffff 
+7530 380c03ff setsect 3 ,0x3ff 
+7531 e0a48000 istore 9 ,contw 
+7532 38000000 setsect 0 ,0x0 
+7533 38040000 setsect 1 ,0x0 
+7534 38080000 setsect 2 ,0x0 
+7535 380c0000 setsect 3 ,0x0 
+7536 e0a48000 istore 9 ,contw 
+7537 38010000 setsect 0 ,0x10000 
+7538 38040000 setsect 1 ,0x0 
+7539 380bf000 setsect 2 ,0x3f000 
+753a 380fffff setsect 3 ,0x3ffff 
+753b e0a48000 istore 9 ,contw 
+753c 380296ff setsect 0 ,0x296ff 
+753d 38062630 setsect 1 ,0x22630 
+753e 380b945d setsect 2 ,0x3945d 
+753f 380fd284 setsect 3 ,0x3d284 
+7540 e0a48000 istore 9 ,contw 
+7541 380333a0 setsect 0 ,0x333a0 
+7542 38044b7a setsect 1 ,0x4b7a 
+7543 380837d8 setsect 2 ,0x37d8 
+7544 380fc9dc setsect 3 ,0x3c9dc 
+7545 e0a48000 istore 9 ,contw 
+7546 3803a440 setsect 0 ,0x3a440 
+7547 3805b958 setsect 1 ,0x1b958 
+7548 380b8bce setsect 2 ,0x38bce 
+7549 380d091f setsect 3 ,0x1091f 
+754a e0a48000 istore 9 ,contw 
+754b 3802e12c setsect 0 ,0x2e12c 
+754c 3805f47c setsect 1 ,0x1f47c 
+754d 380b56b1 setsect 2 ,0x356b1 
+754e 380efd47 setsect 3 ,0x2fd47 
+754f e0a48000 istore 9 ,contw 
+7550 38006837 setsect 0 ,0x6837 
+7551 3806ed90 setsect 1 ,0x2ed90 
+7552 3809ecec setsect 2 ,0x1ecec 
+7553 380dacc5 setsect 3 ,0x1acc5 
+7554 e0a48000 istore 9 ,contw 
+7555 38023357 setsect 0 ,0x23357 
+7556 38058af3 setsect 1 ,0x18af3 
+7557 3808f9e1 setsect 2 ,0xf9e1 
+7558 380d29f0 setsect 3 ,0x129f0 
+7559 e0a48000 istore 9 ,contw 
+755a 3802e7eb setsect 0 ,0x2e7eb 
+755b 3807e6e3 setsect 1 ,0x3e6e3 
+755c 380be1a7 setsect 2 ,0x3e1a7 
+755d 380d0b8b setsect 3 ,0x10b8b 
+755e e0a48000 istore 9 ,contw 
+755f 38024fe3 setsect 0 ,0x24fe3 
+7560 380420ef setsect 1 ,0x20ef 
+7561 3809b5a6 setsect 2 ,0x1b5a6 
+7562 380cdc2f setsect 3 ,0xdc2f 
+7563 e0a48000 istore 9 ,contw 
+7564 38013860 setsect 0 ,0x13860 
+7565 3806bd69 setsect 1 ,0x2bd69 
+7566 3808391a setsect 2 ,0x391a 
+7567 380db222 setsect 3 ,0x1b222 
+7568 e0a48000 istore 9 ,contw 
+7569 20600000 rtn 
+
+publickey_init:
+756a 6800c65a fetch 1 ,mem_ssp_enable 
+756b 243a757d nbranch sp_initialize ,blank 
+756c 20207a77 branch sp_initialize_256 
+
+sp_calc_sequence_256_check:
+756d 4772403c bpatchx patch3c_4 ,mem_patch3c 
+756e 6800c65a fetch 1 ,mem_ssp_enable 
+756f 207a0000 rtn blank 
+7570 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+7571 c1808000 rtnne sp_key_valid 
+7572 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+7573 207a0000 rtn blank 
+7574 6800c4c3 fetch 1 ,mem_le_sc_local_key_invalid 
+7575 c1018000 rtneq sp_key_valid_256 
+7576 68014682 fetch 2 ,mem_ui_state_map 
+7577 c280757b bbit1 ui_state_bt_connected ,stop_publickey_calc_256 
+7578 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7579 c0007a77 beq sp_calc_standby ,sp_initialize_256 
+757a 20600000 rtn 
+
+stop_publickey_calc_256:
+757b 7044c000 jam sp_calc_standby ,mem_le_sc_calc 
+757c 20600000 rtn 
+
+sp_initialize:
+757d 4772c03c bpatchx patch3c_5 ,mem_patch3c 
+757e 6800c65a fetch 1 ,mem_ssp_enable 
+757f 203a612b branch ssp_disable ,blank 
+7580 20406124 call ssp_enable 
+7581 20407583 call sp_clear_flags 
+7582 2020766d branch sp_pubkey_calc 
+
+sp_clear_flags:
+7583 58000000 setarg 0 
+7584 600409ae store 8 ,mem_sp_state_start 
+7585 600209b6 store 4 ,mem_sp_flag_start 
+7586 6003c65e store 7 ,mem_sp_iocap_remote 
+7587 20600000 rtn 
+
+sp_generate_local_key:
+7588 7009b001 jam sp_flag_commit ,mem_sp_flag 
+7589 2020758d branch sp_generate_local_key0 
+
+sp_master_generate_local_key:
+758a 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+758b c000f68a beq sp_key_valid ,sp_dhkey_calc 
+758c 20202a8c branch assert 
+
+sp_generate_local_key0:
+758d 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+758e c000f590 beq sp_key_valid ,sp_start_send_pubkey 
+758f 2020766d branch sp_pubkey_calc 
+
+sp_start_send_pubkey:
+7590 2040768a call sp_dhkey_calc 
+7591 680089af fetch 1 ,mem_master_sp_state 
+7592 247a0000 nrtn blank 
+7593 7009ae03 jam sp_stat_key_send ,mem_sp_state 
+7594 20600000 rtn 
+
+sp_calc_check_publickey_256:
+7595 204075b0 call sp_calc_b256 
+7596 da2009de arg mem_le_pubkey_remote_y_256 ,rega 
+7597 d8a00866 arg mem_t7_256 ,contw 
+7598 20407c79 call bn_sqrmod_256 
+7599 da2009be arg mem_le_pubkey_remote_x_256 ,rega 
+759a d8a00826 arg mem_t2_256 ,contw 
+759b 20407c79 call bn_sqrmod_256 
+759c da200826 arg mem_t2_256 ,rega 
+759d da4009be arg mem_le_pubkey_remote_x_256 ,regb 
+759e d8a00826 arg mem_t2_256 ,contw 
+759f 20407be1 call bn_mulmod_256 
+75a0 da20093e arg mem_a_256 ,rega 
+75a1 da4009be arg mem_le_pubkey_remote_x_256 ,regb 
+75a2 d8a00846 arg mem_t3_256 ,contw 
+75a3 20407be1 call bn_mulmod_256 
+75a4 da200846 arg mem_t3_256 ,rega 
+75a5 da400826 arg mem_t2_256 ,regb 
+75a6 d8a00826 arg mem_t2_256 ,contw 
+75a7 20407c7d call bn_addmod_256 
+75a8 da200806 arg mem_t0_256 ,rega 
+75a9 da400826 arg mem_t2_256 ,regb 
+75aa d8a00806 arg mem_t0_256 ,contw 
+75ab 20407c7d call bn_addmod_256 
+75ac df200020 arg 32 ,loopcnt 
+75ad da200866 arg mem_t7_256 ,rega 
+75ae da400806 arg mem_t0_256 ,regb 
+75af 20207f88 branch string_compare 
+
+sp_calc_b256:
+75b0 da20097e arg mem_gy_256 ,rega 
+75b1 d8a00806 arg mem_t0_256 ,contw 
+75b2 20407c79 call bn_sqrmod_256 
+75b3 da20095e arg mem_gx_256 ,rega 
+75b4 d8a00826 arg mem_t2_256 ,contw 
+75b5 20407c79 call bn_sqrmod_256 
+75b6 da200826 arg mem_t2_256 ,rega 
+75b7 da40095e arg mem_gx_256 ,regb 
+75b8 d8a00826 arg mem_t2_256 ,contw 
+75b9 20407be1 call bn_mulmod_256 
+75ba da20093e arg mem_a_256 ,rega 
+75bb da40095e arg mem_gx_256 ,regb 
+75bc d8a00846 arg mem_t3_256 ,contw 
+75bd 20407be1 call bn_mulmod_256 
+75be da200846 arg mem_t3_256 ,rega 
+75bf da400826 arg mem_t2_256 ,regb 
+75c0 d8a00826 arg mem_t2_256 ,contw 
+75c1 20407c7d call bn_addmod_256 
+75c2 da200806 arg mem_t0_256 ,rega 
+75c3 da400826 arg mem_t2_256 ,regb 
+75c4 d8a00806 arg mem_t0_256 ,contw 
+75c5 20207c96 branch bn_submod_256 
+
+sp_calc_check_publickey:
+75c6 204075e1 call sp_calc_b 
+75c7 da2009e6 arg mem_sp_pubkey_remote_y ,rega 
+75c8 d8a00866 arg mem_t7_256 ,contw 
+75c9 204077a8 call bn_sqrmod 
+75ca da2009c6 arg mem_sp_pubkey_remote_x ,rega 
+75cb d8a00826 arg mem_t2_256 ,contw 
+75cc 204077a8 call bn_sqrmod 
+75cd da200826 arg mem_t2_256 ,rega 
+75ce da4009c6 arg mem_sp_pubkey_remote_x ,regb 
+75cf d8a00826 arg mem_t2_256 ,contw 
+75d0 20407786 call bn_mulmod 
+75d1 da20089e arg mem_a ,rega 
+75d2 da4009c6 arg mem_sp_pubkey_remote_x ,regb 
+75d3 d8a00846 arg mem_t3_256 ,contw 
+75d4 20407786 call bn_mulmod 
+75d5 da200846 arg mem_t3_256 ,rega 
+75d6 da400826 arg mem_t2_256 ,regb 
+75d7 d8a00826 arg mem_t2_256 ,contw 
+75d8 20407755 call bn_addmod 
+75d9 da200806 arg mem_t0_256 ,rega 
+75da da400826 arg mem_t2_256 ,regb 
+75db d8a00806 arg mem_t0_256 ,contw 
+75dc 20407755 call bn_addmod 
+75dd df200018 arg 24 ,loopcnt 
+75de da200866 arg mem_t7_256 ,rega 
+75df da400806 arg mem_t0_256 ,regb 
+75e0 20207f88 branch string_compare 
+
+sp_calc_b:
+75e1 da2008e6 arg mem_gy ,rega 
+75e2 d8a00806 arg mem_t0_256 ,contw 
+75e3 204077a8 call bn_sqrmod 
+75e4 da2008ce arg mem_gx ,rega 
+75e5 d8a00826 arg mem_t2_256 ,contw 
+75e6 204077a8 call bn_sqrmod 
+75e7 da200826 arg mem_t2_256 ,rega 
+75e8 da4008ce arg mem_gx ,regb 
+75e9 d8a00826 arg mem_t2_256 ,contw 
+75ea 20407786 call bn_mulmod 
+75eb da20089e arg mem_a ,rega 
+75ec da4008ce arg mem_gx ,regb 
+75ed d8a00846 arg mem_t3_256 ,contw 
+75ee 20407786 call bn_mulmod 
+75ef da200846 arg mem_t3_256 ,rega 
+75f0 da400826 arg mem_t2_256 ,regb 
+75f1 d8a00826 arg mem_t2_256 ,contw 
+75f2 20407755 call bn_addmod 
+75f3 da200806 arg mem_t0_256 ,rega 
+75f4 da400826 arg mem_t2_256 ,regb 
+75f5 d8a00806 arg mem_t0_256 ,contw 
+75f6 20207758 branch bn_submod 
+
+sp_calculate_commitment:
+75f7 680089b2 fetch 1 ,mem_sp_calc 
+75f8 c0807615 bne sp_calc_standby ,sp_calculate_commitment_wait_dhkey_calc 
+75f9 20407612 call sp_local_random_key_generator 
+75fa d8a00a7e arg mem_sp_prarm_stack ,contw 
+75fb 58000a2e setarg mem_sp_random_local_end 
+75fc e0a10000 istore 2 ,contw 
+75fd 58004642 setarg mem_sp_pubkey_local_x_end 
+75fe e0a10000 istore 2 ,contw 
+75ff 580009de setarg mem_sp_pubkey_remote_x_end 
+7600 e0a10000 istore 2 ,contw 
+7601 20207609 branch sp_calculate_commitment0 
+
+master_sp_calculate_commitment:
+7602 d8a00a7e arg mem_sp_prarm_stack ,contw 
+7603 58000a3e setarg mem_sp_random_remote_end 
+7604 e0a10000 istore 2 ,contw 
+7605 580009de setarg mem_sp_pubkey_remote_x_end 
+7606 e0a10000 istore 2 ,contw 
+7607 58004642 setarg mem_sp_pubkey_local_x_end 
+7608 e0a10000 istore 2 ,contw 
+
+sp_calculate_commitment0:
+7609 204079a0 call function_f1 
+760a 680089af fetch 1 ,mem_master_sp_state 
+760b c002760f beq sp_stat_commit_calc ,master_sp_calculate_commitment0 
+760c 7009b001 jam sp_flag_commit ,mem_sp_flag 
+760d 7009ae05 jam sp_stat_commit_send ,mem_sp_state 
+760e 20600000 rtn 
+
+master_sp_calculate_commitment0:
+760f 7009af14 jam sp_stat_commitment_compare ,mem_master_sp_state 
+7610 2040758a call sp_master_generate_local_key 
+7611 202076d8 branch master_set_mem_master_sp_flag 
+
+sp_local_random_key_generator:
+7612 d8a00a1e arg mem_sp_random_local ,contw 
+7613 18000e08 force 8 ,queue 
+7614 202076a2 branch random_generator 
+
+sp_calculate_commitment_wait_dhkey_calc:
+7615 7009b001 jam sp_flag_commit ,mem_sp_flag 
+7616 20600000 rtn 
+
+sp_confirm_check:
+7617 4773403c bpatchx patch3c_6 ,mem_patch3c 
+7618 d8a00727 arg mem_addr_value ,contw 
+7619 680340a0 fetch 6 ,mem_lap 
+761a e0a30000 istore 6 ,contw 
+761b 68030040 fetch 6 ,mem_plap 
+761c e0a30000 istore 6 ,contw 
+761d 6801c65e fetch 3 ,mem_sp_iocap_remote 
+761e e0a18000 istore 3 ,contw 
+761f 20407a0d call function_f3a 
+7620 da200a4e arg mem_sp_calc_result_high ,rega 
+7621 da400a5e arg mem_sp_check_result ,regb 
+7622 18000e04 force 4 ,queue 
+7623 204076a7 call compare4 
+7624 2420f631 nbranch sp_confirm_check_failed ,true 
+7625 20407628 call sp_confirm_check_success 
+7626 70007d41 jam lmp_dhkey_check ,mem_lmi_opcode2 
+7627 202062f8 branch tid_set_reply 
+
+sp_confirm_check_success:
+7628 680089af fetch 1 ,mem_master_sp_state 
+7629 c004f62e beq sp_stat_confirm_check ,sp_confirm_check_success_master 
+762a 7009ae0a jam sp_stat_confirm_calc ,mem_sp_state 
+762b 7009b001 jam sp_flag_commit ,mem_sp_flag 
+762c 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+762d 20600000 rtn 
+
+sp_confirm_check_success_master:
+762e 70007c03 jam lmp_accepted ,mem_lmo_opcode2 
+762f 7009af15 jam sp_state_end ,mem_master_sp_state 
+7630 202076d8 branch master_set_mem_master_sp_flag 
+
+sp_confirm_check_failed:
+7631 680089af fetch 1 ,mem_master_sp_state 
+7632 c004f637 beq sp_stat_confirm_check ,sp_confirm_check_failed_master 
+7633 7009ae00 jam sp_stat_null ,mem_sp_state 
+7634 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+7635 70007e05 jam authentication_failure_error ,mem_lmo_reason2 
+7636 20600000 rtn 
+
+sp_confirm_check_failed_master:
+7637 70007c04 jam lmp_not_accepted ,mem_lmo_opcode2 
+7638 7009af00 jam sp_stat_null ,mem_master_sp_state 
+7639 20600000 rtn 
+
+sp_confirm_calc:
+763a 680089b3 fetch 1 ,mem_sp_dh_ready 
+763b c000f63e beq sp_flag_commit ,sp_confirm_calc_ready 
+763c 7009af0a jam sp_stat_confirm_calc ,mem_master_sp_state 
+763d 202076d8 branch master_set_mem_master_sp_flag 
+
+sp_confirm_calc_ready:
+763e d8a00727 arg mem_addr_value ,contw 
+763f 68030040 fetch 6 ,mem_plap 
+7640 e0a30000 istore 6 ,contw 
+7641 680340a0 fetch 6 ,mem_lap 
+7642 e0a30000 istore 6 ,contw 
+7643 6801c65b fetch 3 ,mem_sp_iocap_local 
+7644 e0a18000 istore 3 ,contw 
+7645 20407a24 call function_f3b 
+7646 680089af fetch 1 ,mem_master_sp_state 
+7647 c005764b beq sp_stat_confirm_calc ,sp_confirm_calc_master 
+7648 7009ae0b jam sp_stat_confirm_send ,mem_sp_state 
+7649 7009b001 jam sp_flag_commit ,mem_sp_flag 
+764a 20600000 rtn 
+
+sp_confirm_calc_master:
+764b 7009af0b jam sp_stat_confirm_send ,mem_master_sp_state 
+764c 7009b101 jam sp_flag_commit ,mem_master_sp_flag 
+764d 20600000 rtn 
+
+sp_master_key_prarm_push:
+764e d8a00a7e arg mem_sp_prarm_stack ,contw 
+764f 68030040 fetch 6 ,mem_plap 
+7650 e0a30000 istore 6 ,contw 
+7651 680340a0 fetch 6 ,mem_lap 
+7652 e0a30000 istore 6 ,contw 
+7653 58000a2e setarg mem_sp_random_local_end 
+7654 e0a10000 istore 2 ,contw 
+7655 58000a3e setarg mem_sp_random_remote_end 
+7656 e0a10000 istore 2 ,contw 
+7657 20207662 branch sp_link_key_calc 
+
+sp_link_key_prarm_push:
+7658 7009ae0f jam sp_stat_done ,mem_sp_state 
+7659 d8a00a7e arg mem_sp_prarm_stack ,contw 
+765a 680340a0 fetch 6 ,mem_lap 
+765b e0a30000 istore 6 ,contw 
+765c 68030040 fetch 6 ,mem_plap 
+765d e0a30000 istore 6 ,contw 
+765e 58000a3e setarg mem_sp_random_remote_end 
+765f e0a10000 istore 2 ,contw 
+7660 58000a2e setarg mem_sp_random_local_end 
+7661 e0a10000 istore 2 ,contw 
+
+sp_link_key_calc:
+7662 d8a00727 arg mem_addr_value ,contw 
+7663 68030a7e fetch 6 ,mem_sp_prarm_stack 
+7664 e0a30000 istore 6 ,contw 
+7665 68030a84 fetch 6 ,mem_sp_prarm_stack + 6 
+7666 e0a30000 istore 6 ,contw 
+7667 204079d7 call function_f2 
+7668 7041bd01 jam 1 ,mem_link_key_exists 
+7669 d8a041be arg mem_link_key ,contw 
+766a d8c00a4e arg mem_sp_calc_result_high ,contr 
+766b 20407ebf call memcpy16 
+766c 202021c4 branch generate_linkkey_continue 
+
+sp_pubkey_calc:
+766d 4773c03c bpatchx patch3c_7 ,mem_patch3c 
+766e 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+766f c1800000 rtnne sp_key_invalid 
+7670 680089b2 fetch 1 ,mem_sp_calc 
+7671 c1800000 rtnne sp_calc_standby 
+7672 d8a04612 arg mem_sp_private_key ,contw 
+7673 18000e0b force 11 ,queue 
+7674 204076a2 call random_generator 
+7675 180a7e00 random pdata 
+7676 1fe37e00 rshift pdata ,pdata 
+7677 e0a10000 istore 2 ,contw 
+7678 d8a006be arg mem_k ,contw 
+7679 d8c04612 arg mem_sp_private_key ,contr 
+767a 20407ebe call memcpy24 
+767b d8a005e6 arg mem_ax ,contw 
+767c d8c008ce arg mem_gx ,contr 
+767d 20407ebc call memcpy48 
+767e d8a00616 arg mem_az ,contw 
+767f 20407ec5 call bn_zero 
+7680 70061601 jam 1 ,mem_az 
+7681 20407a5d call eckp_calc_init 
+7682 7009b201 jam sp_calc_pubkey ,mem_sp_calc 
+7683 20600000 rtn 
+
+sp_pubkey_generated:
+7684 d8a0462a arg mem_sp_pubkey_local ,contw 
+7685 d8c0062e arg mem_bx ,contr 
+7686 20407ebc call memcpy48 
+7687 7045b101 jam sp_key_valid ,mem_sp_local_key_invalid 
+7688 7009b200 jam sp_calc_standby ,mem_sp_calc 
+7689 20600000 rtn 
+
+sp_dhkey_calc:
+768a 4774403d bpatchx patch3d_0 ,mem_patch3d 
+768b 680089b9 fetch 1 ,mem_sp_dhkey_invalid 
+768c c1800000 rtnne sp_key_invalid 
+768d 680089b2 fetch 1 ,mem_sp_calc 
+768e c1800000 rtnne sp_calc_standby 
+768f d8a006be arg mem_k ,contw 
+7690 d8c04612 arg mem_sp_private_key ,contr 
+7691 20407ebe call memcpy24 
+7692 d8a005e6 arg mem_ax ,contw 
+7693 d8c009c6 arg mem_sp_pubkey_remote ,contr 
+7694 20407ebc call memcpy48 
+7695 d8a00616 arg mem_az ,contw 
+7696 20407ec5 call bn_zero 
+7697 70061601 jam 1 ,mem_az 
+7698 20407a5d call eckp_calc_init 
+7699 7009b202 jam sp_calc_dhkey ,mem_sp_calc 
+769a 20600000 rtn 
+
+sp_dhkey_generated:
+769b 7009b301 jam sp_flag_commit ,mem_sp_dh_ready 
+769c d8a00a06 arg mem_sp_dhkey ,contw 
+769d d8c0062e arg mem_bx ,contr 
+769e 20407ebe call memcpy24 
+769f 7009b901 jam sp_key_valid ,mem_sp_dhkey_invalid 
+76a0 7009b200 jam sp_calc_standby ,mem_sp_calc 
+76a1 20600000 rtn 
+
+random_generator:
+76a2 18e08fff increase -1 ,queue 
+76a3 24610000 nrtn positive 
+76a4 180a7e00 random pdata 
+76a5 e0a10000 istore 2 ,contw 
+76a6 202076a2 branch random_generator 
+
+compare4:
+76a7 18e08fff increase -1 ,queue 
+76a8 242176b3 nbranch compare4_success ,positive 
+76a9 ea220000 ifetch 4 ,rega 
+76aa 1fe20400 copy pdata ,temp 
+76ab ea420000 ifetch 4 ,regb 
+76ac 9842fe00 iflip temp ,pdata 
+76ad 2422f6b1 nbranch compare4_failed ,zero 
+76ae 1a20a204 increase 4 ,rega 
+76af 1a40a404 increase 4 ,regb 
+76b0 202076a7 branch compare4 
+
+compare4_failed:
+76b1 7840fc00 disable true 
+76b2 20600000 rtn 
+
+compare4_success:
+76b3 7820fc00 enable true 
+76b4 20600000 rtn 
+
+simple_pairing_sequence:
+76b5 4774c03d bpatchx patch3d_1 ,mem_patch3d 
+76b6 680089b0 fetch 1 ,mem_sp_flag 
+76b7 207a0000 rtn blank 
+76b8 204062bc call lmo_fifo_check 
+76b9 247a0000 nrtn blank 
+76ba 7009b000 jam sp_flag_standby ,mem_sp_flag 
+76bb 680089ae fetch 1 ,mem_sp_state 
+76bc c001e1fd beq sp_stat_key_send ,sp_send_lmp_encapsulated_header 
+76bd c002e21a beq sp_stat_commit_send ,sp_send_lmp_simple_pairing_comfirm 
+76be c003e225 beq sp_stat_random_send ,sp_send_lmp_simple_pairing_number 
+76bf c005e23a beq sp_stat_confirm_send ,sp_send_lmp_dhkey_check 
+76c0 c0017588 beq sp_stat_key_generate ,sp_generate_local_key 
+76c1 c00275f7 beq sp_stat_commit_calc ,sp_calculate_commitment 
+76c2 c004f617 beq sp_stat_confirm_check ,sp_confirm_check 
+76c3 c005763a beq sp_stat_confirm_calc ,sp_confirm_calc 
+76c4 c0067658 beq sp_stat_link_key_calc ,sp_link_key_prarm_push 
+76c5 20600000 rtn 
+
+master_simple_paring_sequence:
+76c6 4775403d bpatchx patch3d_2 ,mem_patch3d 
+76c7 680089b1 fetch 1 ,mem_master_sp_flag 
+76c8 207a0000 rtn blank 
+76c9 204062bc call lmo_fifo_check 
+76ca 247a0000 nrtn blank 
+76cb 7009b100 jam sp_flag_standby ,mem_master_sp_flag 
+76cc 680089af fetch 1 ,mem_master_sp_state 
+76cd c00961e0 beq sp_master_stat_start_skip ,sp_master_send_io_cap_get 
+76ce c009e1e5 beq sp_master_stat_start_done ,sp_master_send_io_cap_send 
+76cf c001e1e9 beq sp_stat_key_send ,sp_master_send_lmp_encapsulated_header 
+76d0 c0027602 beq sp_stat_commit_calc ,master_sp_calculate_commitment 
+76d1 c00a61ed beq sp_stat_commitment_compare ,sp_master_commitment_compare 
+76d2 c003e1fb beq sp_stat_random_send ,sp_master_send_lmp_simple_pairing_number 
+76d3 c005763a beq sp_stat_confirm_calc ,sp_confirm_calc 
+76d4 c005e239 beq sp_stat_confirm_send ,master_sp_send_lmp_dhkey_check 
+76d5 c004f617 beq sp_stat_confirm_check ,sp_confirm_check 
+76d6 c00ae233 beq sp_state_end ,master_sp_sm_end 
+76d7 20600000 rtn 
+
+master_set_mem_master_sp_flag:
+76d8 7009b101 jam sp_flag_commit ,mem_master_sp_flag 
+76d9 20600000 rtn 
+
+master_clear_mem_master_sp_flag:
+76da 7009b100 jam sp_flag_standby ,mem_master_sp_flag 
+76db 20600000 rtn 
+
+sp_calc_sequence:
+76dc 4775c03d bpatchx patch3d_3 ,mem_patch3d 
+76dd 6800c65a fetch 1 ,mem_ssp_enable 
+76de 207a0000 rtn blank 
+76df 680089b2 fetch 1 ,mem_sp_calc 
+76e0 207a0000 rtn blank 
+76e1 1fe0fe80 increase 0x80 ,pdata 
+76e2 600089b2 store 1 ,mem_sp_calc 
+76e3 c3838000 rtnbit1 7 
+76e4 680085e3 fetch 1 ,mem_ec_loopc 
+76e5 203a76e7 branch sp_calc_sequence_done ,blank 
+76e6 20207a68 branch eckp_calc 
+
+sp_calc_sequence_done:
+76e7 204078d3 call ecunmapz 
+76e8 680089b2 fetch 1 ,mem_sp_calc 
+76e9 c000f684 beq sp_calc_pubkey ,sp_pubkey_generated 
+76ea c001769b beq sp_calc_dhkey ,sp_dhkey_generated 
+76eb 20600000 rtn 
+
+bn_testbit:
+76ec 1fe10e07 and pdata ,7 ,queue 
+76ed 1fe97e00 rshift3 pdata ,pdata 
+76ee 98c08c00 iadd contr ,contr 
+76ef e8c08000 ifetch 1 ,contr 
+76f0 afec0000 qisolate0 pdata 
+76f1 20600000 rtn 
+
+ec_copy:
+76f2 20407ebe call memcpy24 
+76f3 20407ebe call memcpy24 
+76f4 20207ebe branch memcpy24 
+
+bn_eq_zero:
+76f5 e8c40000 ifetch 8 ,contr 
+76f6 247a0000 nrtn blank 
+76f7 e8c40000 ifetch 8 ,contr 
+76f8 247a0000 nrtn blank 
+76f9 e8c40000 ifetch 8 ,contr 
+76fa 20600000 rtn 
+
+bn_eq_0:
+76fb ea220000 ifetch 4 ,rega 
+76fc 98000400 iforce temp 
+76fd ea420000 ifetch 4 ,regb 
+76fe 98467c00 isub temp ,null 
+76ff 24628000 nrtn zero 
+7700 1a20a204 increase 4 ,rega 
+7701 1a40a404 increase 4 ,regb 
+7702 c20076fb loop bn_eq_0 
+7703 20600000 rtn 
+
+bn_bigeq:
+7704 18007206 force 6 ,loopcnt 
+7705 1a20a214 increase 20 ,rega 
+7706 1a40a414 increase 20 ,regb 
+
+bn_bigeq_0:
+7707 ea420000 ifetch 4 ,regb 
+7708 98000400 iforce temp 
+7709 ea220000 ifetch 4 ,rega 
+770a 98467e00 isub temp ,pdata 
+770b 24610000 nrtn positive 
+770c 247a0000 nrtn blank 
+770d 1a20a3fc increase -4 ,rega 
+770e 1a40a5fc increase -4 ,regb 
+770f c2007707 loop bn_bigeq_0 
+7710 20600000 rtn 
+
+bn_add:
+7711 18007206 force 6 ,loopcnt 
+7712 18002600 force 0 ,regc 
+
+bn_add_0:
+7713 ea220000 ifetch 4 ,rega 
+7714 98000400 iforce temp 
+7715 ea420000 ifetch 4 ,regb 
+7716 9840fe00 iadd temp ,pdata 
+7717 9a60fe00 iadd regc ,pdata 
+7718 e0a20000 istore 4 ,contw 
+7719 2feffe20 isolate1 32 ,pdata 
+771a 7920a600 setflag true ,0 ,regc 
+771b 1a20a204 increase 4 ,rega 
+771c 1a40a404 increase 4 ,regb 
+771d c2007713 loop bn_add_0 
+771e 20600000 rtn 
+
+bn_sub:
+771f 18007206 force 6 ,loopcnt 
+7720 18002600 force 0 ,regc 
+
+bn_sub_0:
+7721 ea420000 ifetch 4 ,regb 
+7722 98000400 iforce temp 
+7723 ea220000 ifetch 4 ,rega 
+7724 98467e00 isub temp ,pdata 
+7725 9a667e00 isub regc ,pdata 
+7726 e0a20000 istore 4 ,contw 
+7727 2feffe20 isolate1 32 ,pdata 
+7728 7920a600 setflag true ,0 ,regc 
+7729 1a20a204 increase 4 ,rega 
+772a 1a40a404 increase 4 ,regb 
+772b c2007721 loop bn_sub_0 
+772c 20600000 rtn 
+
+bn_rshift6:
+772d 18007206 force 6 ,loopcnt 
+772e 1a20a214 increase 20 ,rega 
+
+bn_rshift:
+772f 18002600 force 0 ,regc 
+
+bn_rshift_0:
+7730 ea220000 ifetch 4 ,rega 
+7731 2feffe00 isolate1 0 ,pdata 
+7732 7920a601 setflag true ,1 ,regc 
+7733 1fe37e00 rshift pdata ,pdata 
+7734 2a6ffe00 isolate1 0 ,regc 
+7735 7920fe1f setflag true ,31 ,pdata 
+7736 e2220000 istore 4 ,rega 
+7737 1a20a3fc increase -4 ,rega 
+7738 1a632600 rshift regc ,regc 
+7739 c2007730 loop bn_rshift_0 
+773a 20600000 rtn 
+
+bn_lshift:
+773b 18007206 force 6 ,loopcnt 
+773c 18002600 force 0 ,regc 
+
+bn_lshift_0:
+773d ea220000 ifetch 4 ,rega 
+773e 2feffe1f isolate1 31 ,pdata 
+773f 7920a601 setflag true ,1 ,regc 
+7740 1fe3fe00 lshift pdata ,pdata 
+7741 2a6ffe00 isolate1 0 ,regc 
+7742 7920fe00 setflag true ,0 ,pdata 
+7743 e2220000 istore 4 ,rega 
+7744 1a20a204 increase 4 ,rega 
+7745 1a632600 rshift regc ,regc 
+7746 c200773d loop bn_lshift_0 
+7747 20600000 rtn 
+
+bn_lshiftmod:
+7748 2040773b call bn_lshift 
+
+bn_lshiftmod_ismod:
+7749 2a6ffe00 isolate1 0 ,regc 
+774a 2020f751 branch bn_lshiftmod_0 ,true 
+774b da400886 arg mem_p ,regb 
+774c 1a222600 copy rega ,regc 
+774d 1a20a3e8 increase -24 ,rega 
+774e 20407704 call bn_bigeq 
+774f 24610000 nrtn positive 
+7750 1a622200 copy regc ,rega 
+
+bn_lshiftmod_0:
+7751 1a20a3e8 increase -24 ,rega 
+7752 da400886 arg mem_p ,regb 
+7753 1a220a00 copy rega ,contw 
+7754 2020771f branch bn_sub 
+
+bn_addmod:
+7755 20407711 call bn_add 
+7756 18a22200 copy contw ,rega 
+7757 20207749 branch bn_lshiftmod_ismod 
+
+bn_submod:
+7758 2040771f call bn_sub 
+7759 2a6c0000 isolate0 0 ,regc 
+775a 20608000 rtn true 
+775b da400886 arg mem_p ,regb 
+775c 18a0a3e8 add contw ,-24 ,rega 
+775d 1a220a00 copy rega ,contw 
+775e 20207711 branch bn_add 
+
+bn_p192mod:
+775f 18a21600 copy contw ,timeup 
+7760 1a226000 copy rega ,alarm 
+7761 da400716 arg mem_tmp2 ,regb 
+7762 1a420a00 copy regb ,contw 
+7763 1a208c18 add rega ,24 ,contr 
+7764 e8c40000 ifetch 8 ,contr 
+7765 e0a40000 istore 8 ,contw 
+7766 e0a40000 istore 8 ,contw 
+7767 18007e00 force 0 ,pdata 
+7768 e0a40000 istore 8 ,contw 
+7769 19620a00 copy timeup ,contw 
+776a 20407755 call bn_addmod 
+776b da400716 arg mem_tmp2 ,regb 
+776c 1a420a00 copy regb ,contw 
+776d 18007e00 force 0 ,pdata 
+776e e0a40000 istore 8 ,contw 
+776f 1e008c20 add alarm ,32 ,contr 
+7770 e8c40000 ifetch 8 ,contr 
+7771 e0a40000 istore 8 ,contw 
+7772 e0a40000 istore 8 ,contw 
+7773 19622200 copy timeup ,rega 
+7774 1a220a00 copy rega ,contw 
+7775 20407755 call bn_addmod 
+7776 da400716 arg mem_tmp2 ,regb 
+7777 1a420a00 copy regb ,contw 
+7778 1e008c28 add alarm ,40 ,contr 
+7779 e8c40000 ifetch 8 ,contr 
+777a e0a40000 istore 8 ,contw 
+777b e0a40000 istore 8 ,contw 
+777c e0a40000 istore 8 ,contw 
+777d 19622200 copy timeup ,rega 
+777e 1a220a00 copy rega ,contw 
+777f 20207755 branch bn_addmod 
+
+bn_load:
+7780 18007206 force 6 ,loopcnt 
+
+bn_load_0:
+7781 e8c20000 ifetch 4 ,contr 
+7782 98005e00 iforce regext 
+7783 1f00f001 increase 1 ,regext_index 
+7784 c2007781 loop bn_load_0 
+7785 20600000 rtn 
+
+bn_mulmod:
+7786 18a21600 copy contw ,timeup 
+7787 d8a006e6 arg mem_tmp1 ,contw 
+7788 20407ec5 call bn_zero 
+7789 d8a006e6 arg mem_tmp1 ,contw 
+778a 1a220c00 copy rega ,contr 
+778b 18007000 force 0 ,regext_index 
+778c 20407780 call bn_load 
+778d 1a420c00 copy regb ,contr 
+778e 20407780 call bn_load 
+778f 18002400 force 0 ,regb 
+
+bn_mulmod_1:
+7790 18000400 force 0 ,temp 
+7791 18002606 force 6 ,regc 
+
+bn_mulmod_0:
+7792 e8a20000 ifetch 4 ,contw 
+7793 98002200 iforce rega 
+7794 1a427000 copy regb ,regext_index 
+7795 1de27e00 deposit regext 
+7796 1a627000 copy regc ,regext_index 
+7797 9deffe00 imul32 regext ,pdata 
+7798 9a20fe00 iadd rega ,pdata 
+7799 9840fe00 iadd temp ,pdata 
+779a e0a20000 istore 4 ,contw 
+779b 1fef0400 rshift32 pdata ,temp 
+779c 1a60a601 increase 1 ,regc 
+779d 2a61fe0c compare 12 ,regc ,0xff 
+779e 2420f792 nbranch bn_mulmod_0 ,true 
+779f 18427e00 deposit temp 
+77a0 e0a20000 istore 4 ,contw 
+77a1 18a08be8 increase -24 ,contw 
+77a2 1a40a401 increase 1 ,regb 
+77a3 2a41fe06 compare 6 ,regb ,0xff 
+77a4 2420f790 nbranch bn_mulmod_1 ,true 
+77a5 da2006e6 arg mem_tmp1 ,rega 
+77a6 19620a00 copy timeup ,contw 
+77a7 2020775f branch bn_p192mod 
+
+bn_sqrmod:
+77a8 1a222400 copy rega ,regb 
+77a9 20207786 branch bn_mulmod 
+
+bn_rshifteven:
+77aa 1a226000 copy rega ,alarm 
+
+bn_rshifteven_1:
+77ab 1e022200 copy alarm ,rega 
+77ac ea208000 ifetch 1 ,rega 
+77ad 2feffe00 isolate1 0 ,pdata 
+77ae 20608000 rtn true 
+77af 2040772d call bn_rshift6 
+77b0 ea408000 ifetch 1 ,regb 
+77b1 2fec0000 isolate0 0 ,pdata 
+77b2 2020f7ba branch bn_rshifteven_0 ,true 
+77b3 da200886 arg mem_p ,rega 
+77b4 1a420a00 copy regb ,contw 
+77b5 20407711 call bn_add 
+77b6 ea408000 ifetch 1 ,regb 
+77b7 9a60fe00 iadd regc ,pdata 
+77b8 e2408000 istore 1 ,regb 
+77b9 1a40a5e8 increase -24 ,regb 
+
+bn_rshifteven_0:
+77ba 1a40a218 add regb ,24 ,rega 
+77bb 18007207 force 7 ,loopcnt 
+77bc 2040772f call bn_rshift 
+77bd 202077ab branch bn_rshifteven_1 
+
+bn_invmod:
+77be 18a21600 copy contw ,timeup 
+77bf d8a00746 arg mem_tmp0 ,contw 
+77c0 20407ec5 call bn_zero 
+77c1 18007e00 force 0 ,pdata 
+77c2 600206fe store 4 ,mem_tmp5 
+77c3 6002075e store 4 ,mem_t2 
+77c4 70074601 jam 1 ,mem_tmp0 
+77c5 d8a006e6 arg mem_tmp1 ,contw 
+77c6 20407ec5 call bn_zero 
+77c7 d8c00886 arg mem_p ,contr 
+77c8 d8a00716 arg mem_tmp2 ,contw 
+77c9 20407ebe call memcpy24 
+77ca 1a220c00 copy rega ,contr 
+77cb d8a0072e arg mem_tmp3 ,contw 
+77cc 20407ebe call memcpy24 
+
+bn_invmod_2:
+77cd d8c0072e arg mem_tmp3 ,contr 
+77ce 204076f5 call bn_eq_zero 
+77cf 203a77f6 branch bn_invmod_0 ,blank 
+77d0 da20072e arg mem_tmp3 ,rega 
+77d1 da400746 arg mem_tmp0 ,regb 
+77d2 204077aa call bn_rshifteven 
+77d3 da200716 arg mem_tmp2 ,rega 
+77d4 da4006e6 arg mem_tmp1 ,regb 
+77d5 204077aa call bn_rshifteven 
+77d6 da20072e arg mem_tmp3 ,rega 
+77d7 da400716 arg mem_tmp2 ,regb 
+77d8 20407704 call bn_bigeq 
+77d9 202177e8 branch bn_invmod_1 ,positive 
+77da da200716 arg mem_tmp2 ,rega 
+77db da40072e arg mem_tmp3 ,regb 
+77dc 1a220a00 copy rega ,contw 
+77dd 2040771f call bn_sub 
+77de da200746 arg mem_tmp0 ,rega 
+77df da4006e6 arg mem_tmp1 ,regb 
+77e0 1a420a00 copy regb ,contw 
+77e1 20407711 call bn_add 
+77e2 ea208000 ifetch 1 ,rega 
+77e3 9a60a600 iadd regc ,regc 
+77e4 ea408000 ifetch 1 ,regb 
+77e5 9a60fe00 iadd regc ,pdata 
+77e6 e2408000 istore 1 ,regb 
+77e7 202077cd branch bn_invmod_2 
+
+bn_invmod_1:
+77e8 da20072e arg mem_tmp3 ,rega 
+77e9 da400716 arg mem_tmp2 ,regb 
+77ea 1a220a00 copy rega ,contw 
+77eb 2040771f call bn_sub 
+77ec da2006e6 arg mem_tmp1 ,rega 
+77ed da400746 arg mem_tmp0 ,regb 
+77ee 1a420a00 copy regb ,contw 
+77ef 20407711 call bn_add 
+77f0 ea208000 ifetch 1 ,rega 
+77f1 9a60a600 iadd regc ,regc 
+77f2 ea408000 ifetch 1 ,regb 
+77f3 9a60fe00 iadd regc ,pdata 
+77f4 e2408000 istore 1 ,regb 
+77f5 202077cd branch bn_invmod_2 
+
+bn_invmod_0:
+77f6 d8a00746 arg mem_tmp0 ,contw 
+77f7 20407ec5 call bn_zero 
+77f8 680086fe fetch 1 ,mem_tmp5 
+77f9 60008746 store 1 ,mem_tmp0 
+77fa 6000874e store 1 ,mem_tmp0a 
+77fb da200746 arg mem_tmp0 ,rega 
+77fc da4006e6 arg mem_tmp1 ,regb 
+77fd 1a420a00 copy regb ,contw 
+77fe 20407755 call bn_addmod 
+77ff da200886 arg mem_p ,rega 
+7800 da4006e6 arg mem_tmp1 ,regb 
+7801 19620a00 copy timeup ,contw 
+7802 20207758 branch bn_submod 
+
+ecdbl:
+7803 da2006a6 arg mem_cz ,rega 
+7804 d8a0075e arg mem_t2 ,contw 
+7805 204077a8 call bn_sqrmod 
+7806 da20075e arg mem_t2 ,rega 
+7807 d8a00776 arg mem_t3 ,contw 
+7808 204077a8 call bn_sqrmod 
+7809 da20089e arg mem_a ,rega 
+780a da400776 arg mem_t3 ,regb 
+780b d8a00776 arg mem_t3 ,contw 
+780c 20407786 call bn_mulmod 
+780d da200676 arg mem_cx ,rega 
+780e d8a0075e arg mem_t2 ,contw 
+780f 204077a8 call bn_sqrmod 
+7810 d8c0075e arg mem_t2 ,contr 
+7811 d8a0072e arg mem_t1 ,contw 
+7812 20407ebe call memcpy24 
+7813 da20072e arg mem_t1 ,rega 
+7814 20407748 call bn_lshiftmod 
+7815 da20075e arg mem_t2 ,rega 
+7816 da40072e arg mem_t1 ,regb 
+7817 d8a0075e arg mem_t2 ,contw 
+7818 20407755 call bn_addmod 
+7819 da20075e arg mem_t2 ,rega 
+781a da400776 arg mem_t3 ,regb 
+781b d8a0075e arg mem_t2 ,contw 
+781c 20407755 call bn_addmod 
+781d d8c00676 arg mem_cx ,contr 
+781e d8a0072e arg mem_t1 ,contw 
+781f 20407ebe call memcpy24 
+7820 da20068e arg mem_cy ,rega 
+7821 d8a00776 arg mem_t3 ,contw 
+7822 204077a8 call bn_sqrmod 
+7823 da20072e arg mem_t1 ,rega 
+7824 20407748 call bn_lshiftmod 
+7825 da20072e arg mem_t1 ,rega 
+7826 20407748 call bn_lshiftmod 
+7827 da20072e arg mem_t1 ,rega 
+7828 da400776 arg mem_t3 ,regb 
+7829 d8a0072e arg mem_t1 ,contw 
+782a 20407786 call bn_mulmod 
+782b da200776 arg mem_t3 ,rega 
+782c d8a00746 arg mem_t0 ,contw 
+782d 204077a8 call bn_sqrmod 
+782e da200746 arg mem_t0 ,rega 
+782f 20407748 call bn_lshiftmod 
+7830 da200746 arg mem_t0 ,rega 
+7831 20407748 call bn_lshiftmod 
+7832 da200746 arg mem_t0 ,rega 
+7833 20407748 call bn_lshiftmod 
+7834 d8c0068e arg mem_cy ,contr 
+7835 d8a00776 arg mem_t3 ,contw 
+7836 20407ebe call memcpy24 
+7837 da200776 arg mem_t3 ,rega 
+7838 20407748 call bn_lshiftmod 
+7839 da200776 arg mem_t3 ,rega 
+783a da4006a6 arg mem_cz ,regb 
+783b d8a006a6 arg mem_cz ,contw 
+783c 20407786 call bn_mulmod 
+783d da20075e arg mem_t2 ,rega 
+783e d8a00776 arg mem_t3 ,contw 
+783f 204077a8 call bn_sqrmod 
+7840 da200776 arg mem_t3 ,rega 
+7841 da40072e arg mem_t1 ,regb 
+7842 d8a00776 arg mem_t3 ,contw 
+7843 20407758 call bn_submod 
+7844 da200776 arg mem_t3 ,rega 
+7845 da40072e arg mem_t1 ,regb 
+7846 d8a00676 arg mem_cx ,contw 
+7847 20407758 call bn_submod 
+7848 da20072e arg mem_t1 ,rega 
+7849 da400676 arg mem_cx ,regb 
+784a d8a00776 arg mem_t3 ,contw 
+784b 20407758 call bn_submod 
+784c da200776 arg mem_t3 ,rega 
+784d da40075e arg mem_t2 ,regb 
+784e d8a00776 arg mem_t3 ,contw 
+784f 20407786 call bn_mulmod 
+7850 da200776 arg mem_t3 ,rega 
+7851 da400746 arg mem_t0 ,regb 
+7852 d8a0068e arg mem_cy ,contw 
+7853 20207758 branch bn_submod 
+
+ecadd:
+7854 da200616 arg mem_az ,rega 
+7855 d8a0078e arg mem_t7 ,contw 
+7856 204077a8 call bn_sqrmod 
+7857 da200676 arg mem_cx ,rega 
+7858 da40078e arg mem_t7 ,regb 
+7859 d8a00746 arg mem_t0 ,contw 
+785a 20407786 call bn_mulmod 
+785b da200616 arg mem_az ,rega 
+785c da40078e arg mem_t7 ,regb 
+785d d8a0078e arg mem_t7 ,contw 
+785e 20407786 call bn_mulmod 
+785f da20068e arg mem_cy ,rega 
+7860 da40078e arg mem_t7 ,regb 
+7861 d8a0072e arg mem_t1 ,contw 
+7862 20407786 call bn_mulmod 
+7863 da2006a6 arg mem_cz ,rega 
+7864 d8a0078e arg mem_t7 ,contw 
+7865 204077a8 call bn_sqrmod 
+7866 da2005e6 arg mem_ax ,rega 
+7867 da40078e arg mem_t7 ,regb 
+7868 d8a0075e arg mem_t2 ,contw 
+7869 20407786 call bn_mulmod 
+786a da2006a6 arg mem_cz ,rega 
+786b da40078e arg mem_t7 ,regb 
+786c d8a0078e arg mem_t7 ,contw 
+786d 20407786 call bn_mulmod 
+786e da2005fe arg mem_ay ,rega 
+786f da40078e arg mem_t7 ,regb 
+7870 d8a00776 arg mem_t3 ,contw 
+7871 20407786 call bn_mulmod 
+7872 da200746 arg mem_t0 ,rega 
+7873 da40075e arg mem_t2 ,regb 
+7874 d8a0078e arg mem_t7 ,contw 
+7875 20407758 call bn_submod 
+7876 da200746 arg mem_t0 ,rega 
+7877 da40075e arg mem_t2 ,regb 
+7878 d8a00746 arg mem_t0 ,contw 
+7879 20407755 call bn_addmod 
+787a da20072e arg mem_t1 ,rega 
+787b da400776 arg mem_t3 ,regb 
+787c d8a0075e arg mem_t2 ,contw 
+787d 20407758 call bn_submod 
+787e da20072e arg mem_t1 ,rega 
+787f da400776 arg mem_t3 ,regb 
+7880 d8a0072e arg mem_t1 ,contw 
+7881 20407755 call bn_addmod 
+7882 da20072e arg mem_t1 ,rega 
+7883 da40078e arg mem_t7 ,regb 
+7884 d8a0072e arg mem_t1 ,contw 
+7885 20407786 call bn_mulmod 
+7886 da2006a6 arg mem_cz ,rega 
+7887 da400616 arg mem_az ,regb 
+7888 d8a00776 arg mem_t3 ,contw 
+7889 20407786 call bn_mulmod 
+788a da200776 arg mem_t3 ,rega 
+788b da40078e arg mem_t7 ,regb 
+788c d8a006a6 arg mem_cz ,contw 
+788d 20407786 call bn_mulmod 
+788e da20078e arg mem_t7 ,rega 
+788f d8a0078e arg mem_t7 ,contw 
+7890 204077a8 call bn_sqrmod 
+7891 da20078e arg mem_t7 ,rega 
+7892 da400746 arg mem_t0 ,regb 
+7893 d8a00776 arg mem_t3 ,contw 
+7894 20407786 call bn_mulmod 
+7895 da20078e arg mem_t7 ,rega 
+7896 da40072e arg mem_t1 ,regb 
+7897 d8a0072e arg mem_t1 ,contw 
+7898 20407786 call bn_mulmod 
+7899 da20075e arg mem_t2 ,rega 
+789a d8a00676 arg mem_cx ,contw 
+789b 204077a8 call bn_sqrmod 
+789c da200676 arg mem_cx ,rega 
+789d da400776 arg mem_t3 ,regb 
+789e d8a00676 arg mem_cx ,contw 
+789f 20407758 call bn_submod 
+78a0 d8c00676 arg mem_cx ,contr 
+78a1 d8a0078e arg mem_t7 ,contw 
+78a2 20407ebe call memcpy24 
+78a3 da20078e arg mem_t7 ,rega 
+78a4 20407748 call bn_lshiftmod 
+78a5 da200776 arg mem_t3 ,rega 
+78a6 da40078e arg mem_t7 ,regb 
+78a7 d8a00776 arg mem_t3 ,contw 
+78a8 20407758 call bn_submod 
+78a9 da200776 arg mem_t3 ,rega 
+78aa da40075e arg mem_t2 ,regb 
+78ab d8a0075e arg mem_t2 ,contw 
+78ac 20407786 call bn_mulmod 
+78ad da20075e arg mem_t2 ,rega 
+78ae da40072e arg mem_t1 ,regb 
+78af d8a0068e arg mem_cy ,contw 
+78b0 20407758 call bn_submod 
+78b1 da20068e arg mem_cy ,rega 
+78b2 da400886 arg mem_p ,regb 
+78b3 d8a0068e arg mem_cy ,contw 
+78b4 18002600 force 0 ,regc 
+78b5 6800868e fetch 1 ,mem_cy 
+78b6 2feffe00 isolate1 0 ,pdata 
+78b7 2040f711 call bn_add ,true 
+78b8 1a626000 copy regc ,alarm 
+78b9 da20068e arg mem_cy ,rega 
+78ba 2040772d call bn_rshift6 
+78bb 680086a5 fetch 1 ,mem_cy5 
+78bc 2e0ffe00 isolate1 0 ,alarm 
+78bd 7920fe07 setflag true ,7 ,pdata 
+78be 600086a5 store 1 ,mem_cy5 
+78bf 20600000 rtn 
+
+eckp_0:
+78c0 680085e3 fetch 1 ,mem_ec_loopc 
+78c1 1fe0ffff increase -1 ,pdata 
+78c2 24610000 nrtn positive 
+78c3 600085e3 store 1 ,mem_ec_loopc 
+78c4 680085e2 fetch 1 ,mem_ec_infinite 
+78c5 205a7803 call ecdbl ,blank 
+78c6 680085e3 fetch 1 ,mem_ec_loopc 
+78c7 d8c006be arg mem_k ,contr 
+78c8 204076ec call bn_testbit 
+78c9 2020f8c0 branch eckp_0 ,true 
+78ca 680085e2 fetch 1 ,mem_ec_infinite 
+78cb 243a78ce nbranch eckp_1 ,blank 
+78cc 20407854 call ecadd 
+78cd 202078c0 branch eckp_0 
+
+eckp_1:
+78ce 7005e200 jam 0 ,mem_ec_infinite 
+78cf d8c005e6 arg mem_ax ,contr 
+78d0 d8a00676 arg mem_cx ,contw 
+78d1 204076f2 call ec_copy 
+78d2 202078c0 branch eckp_0 
+
+ecunmapz:
+78d3 da2006a6 arg mem_cz ,rega 
+78d4 d8a00776 arg mem_t3 ,contw 
+78d5 204077be call bn_invmod 
+78d6 da200776 arg mem_t3 ,rega 
+78d7 d8a0072e arg mem_t1 ,contw 
+78d8 204077a8 call bn_sqrmod 
+78d9 da200676 arg mem_cx ,rega 
+78da da40072e arg mem_t1 ,regb 
+78db d8a0062e arg mem_bx ,contw 
+78dc 20407786 call bn_mulmod 
+78dd da200776 arg mem_t3 ,rega 
+78de da40072e arg mem_t1 ,regb 
+78df d8a0075e arg mem_t2 ,contw 
+78e0 20407786 call bn_mulmod 
+78e1 da20068e arg mem_cy ,rega 
+78e2 da40075e arg mem_t2 ,regb 
+78e3 d8a00646 arg mem_by ,contw 
+78e4 20207786 branch bn_mulmod 
+
+sha_endian_swap2:
+78e5 e8c20000 ifetch 4 ,contr 
+78e6 18002204 force 4 ,rega 
+78e7 18a08a03 increase 3 ,contw 
+
+sha_endian_loop:
+78e8 e0a08000 istore 1 ,contw 
+78e9 1fecfe00 rshift8 pdata ,pdata 
+78ea 18a08bfe increase -2 ,contw 
+78eb 1a20a3ff increase -1 ,rega 
+78ec 2422f8e8 nbranch sha_endian_loop ,zero 
+78ed 18a08a05 increase 5 ,contw 
+78ee c20078e5 loop sha_endian_swap2 
+78ef 20600000 rtn 
+
+sha_getw:
+78f0 18ebfe00 lshift2 queue ,pdata 
+78f1 99608c00 iadd timeup ,contr 
+78f2 e8c20000 ifetch 4 ,contr 
+78f3 20600000 rtn 
+
+sha_r:
+78f4 18006010 force 16 ,alarm 
+78f5 d96005e6 arg memdat ,timeup 
+
+sha_r_loop:
+78f6 1e008ff9 add alarm ,-7 ,queue 
+78f7 204078f0 call sha_getw 
+78f8 98000400 iforce temp 
+78f9 1e008ff0 add alarm ,-16 ,queue 
+78fa 204078f0 call sha_getw 
+78fb 98408400 iadd temp ,temp 
+78fc 1e008ffe add alarm ,-2 ,queue 
+78fd 204078f0 call sha_getw 
+78fe 1fee7e01 shasx pdata ,1 ,pdata 
+78ff 98408400 iadd temp ,temp 
+7900 1e008ff1 add alarm ,-15 ,queue 
+7901 204078f0 call sha_getw 
+7902 1fee7e00 shasx pdata ,0 ,pdata 
+7903 98408400 iadd temp ,temp 
+7904 1e0bfe00 lshift2 alarm ,pdata 
+7905 99608a00 iadd timeup ,contw 
+7906 e0aa0000 istoret 4 ,contw 
+7907 1e00e001 increase 1 ,alarm 
+7908 2e01fe40 compare 64 ,alarm ,0xff 
+7909 2420f8f6 nbranch sha_r_loop ,true 
+790a 20600000 rtn 
+
+sha_init:
+790b d8c008fe arg memh0 ,contr 
+790c 18007007 force 7 ,regext_index 
+
+sha_init_0:
+790d e8c20000 ifetch 4 ,contr 
+790e 98005e00 iforce regext 
+790f 1f00f1ff increase -1 ,regext_index 
+7910 2021790d branch sha_init_0 ,positive 
+7911 20600000 rtn 
+
+sha:
+7912 4776403d bpatchx patch3d_4 ,mem_patch3d 
+7913 204078f4 call sha_r 
+7914 d8a006e6 arg memahbak ,contw 
+7915 18007000 force 0 ,regext_index 
+
+sha_0:
+7916 1de27e00 deposit regext 
+7917 e0a20000 istore 4 ,contw 
+7918 1f00f001 increase 1 ,regext_index 
+7919 2f01fe08 compare 8 ,regext_index ,0xff 
+791a 2420f916 nbranch sha_0 ,true 
+791b 204074b9 call enable_authrom 
+791c d9608700 arg memk ,timeup 
+791d de0005e6 arg memdat ,alarm 
+791e 18007240 force 64 ,loopcnt 
+
+sha_loop:
+791f ee0a0000 ifetcht 4 ,alarm 
+7920 e9620000 ifetch 4 ,timeup 
+7921 19609604 increase 4 ,timeup 
+7922 1e00e004 increase 4 ,alarm 
+7923 9840fe00 iadd temp ,pdata 
+7924 18007007 force 7 ,regext_index 
+7925 9de08400 iadd regext ,temp 
+7926 18007004 force 4 ,regext_index 
+7927 1dee7e03 shasx regext ,3 ,pdata 
+7928 98408400 iadd temp ,temp 
+7929 18007005 force 5 ,regext_index 
+792a 1de27e00 deposit regext 
+792b 18007006 force 6 ,regext_index 
+792c 9de2fe00 ixor regext ,pdata 
+792d 18007004 force 4 ,regext_index 
+792e 9de17e00 iand regext ,pdata 
+792f 18007006 force 6 ,regext_index 
+7930 9de2fe00 ixor regext ,pdata 
+7931 98408400 iadd temp ,temp 
+7932 18007007 force 7 ,regext_index 
+7933 18425e00 copy temp ,regext 
+7934 18007003 force 3 ,regext_index 
+7935 1de27e00 deposit regext 
+7936 9840de00 iadd temp ,regext 
+7937 18007000 force 0 ,regext_index 
+7938 1de27e00 deposit regext 
+7939 18007001 force 1 ,regext_index 
+793a 9de10400 iand regext ,temp 
+793b 9de1fe00 ior regext ,pdata 
+793c 18007002 force 2 ,regext_index 
+793d 9de17e00 iand regext ,pdata 
+793e 98418400 ior temp ,temp 
+793f 18007000 force 0 ,regext_index 
+7940 1dee7e02 shasx regext ,2 ,pdata 
+7941 9840fe00 iadd temp ,pdata 
+7942 18007007 force 7 ,regext_index 
+7943 9de0de00 iadd regext ,regext 
+7944 980efc00 regexrot 
+7945 c200791f loop sha_loop 
+7946 d8c006e6 arg memahbak ,contr 
+7947 18007000 force 0 ,regext_index 
+
+sha_1:
+7948 e8c20000 ifetch 4 ,contr 
+7949 9de0de00 iadd regext ,regext 
+794a 1f00f001 increase 1 ,regext_index 
+794b 2f01fe08 compare 8 ,regext_index ,0xff 
+794c 2420f948 nbranch sha_1 ,true 
+794d 202074bd branch disable_authrom 
+
+sha_result:
+794e d8a00a3e arg memresult ,contw 
+794f 18007007 force 7 ,regext_index 
+
+sha_regext_save:
+7950 1de27e00 deposit regext 
+7951 e0a20000 istore 4 ,contw 
+7952 1f00f1ff increase -1 ,regext_index 
+7953 20217950 branch sha_regext_save ,positive 
+7954 20600000 rtn 
+
+pad_xor:
+7955 d8a005e6 arg memdat ,contw 
+7956 18c08dfc increase -4 ,contr 
+7957 1f262210 sub loopcnt ,16 ,rega 
+
+pad_xor_0:
+7958 e8c20000 ifetch 4 ,contr 
+7959 9842fe00 ixor temp ,pdata 
+795a e0a20000 istore 4 ,contw 
+795b 18c08df8 increase -8 ,contr 
+795c c2007958 loop pad_xor_0 
+795d 1a227200 copy rega ,loopcnt 
+795e 18427e00 deposit temp 
+
+pad_xor_1:
+795f e0a20000 istore 4 ,contw 
+7960 c200795f loop pad_xor_1 
+7961 20600000 rtn 
+
+g_noninit_number_confirm:
+7962 20407967 call g_noninit0 
+7963 2040794e call sha_result 
+7964 2020798d branch g_common0 
+
+g_noninit:
+7965 20407967 call g_noninit0 
+7966 2020798d branch g_common0 
+
+g_noninit0:
+7967 d8c009de arg mem_sp_pubkey_remote_x_end ,contr 
+7968 d8a005e6 arg memdat ,contw 
+7969 18007206 force 6 ,loopcnt 
+796a 20407a71 call memcpy_dword_swap 
+796b d8c04642 arg mem_sp_pubkey_local_x_end ,contr 
+796c 18007206 force 6 ,loopcnt 
+796d 20407a71 call memcpy_dword_swap 
+796e d8c00a3e arg mem_sp_random_remote_end ,contr 
+796f 20407a70 call memcpy_dword_swap4 
+7970 2040790b call sha_init 
+7971 20407912 call sha 
+7972 d8c00a2e arg mem_sp_random_local_end ,contr 
+7973 d8a005e6 arg memdat ,contw 
+7974 20207984 branch g_common 
+
+g_init:
+7975 d8c04642 arg mem_sp_pubkey_local_x_end ,contr 
+7976 d8a005e6 arg memdat ,contw 
+7977 18007206 force 6 ,loopcnt 
+7978 20407a71 call memcpy_dword_swap 
+7979 d8c009de arg mem_sp_pubkey_remote_x_end ,contr 
+797a 18007206 force 6 ,loopcnt 
+797b 20407a71 call memcpy_dword_swap 
+797c d8c00a2e arg mem_sp_random_local_end ,contr 
+797d 20407a70 call memcpy_dword_swap4 
+797e 2040790b call sha_init 
+797f 20407912 call sha 
+7980 d8c00a3e arg mem_sp_random_remote_end ,contr 
+7981 d8a005e6 arg memdat ,contw 
+7982 20407984 call g_common 
+7983 2020798d branch g_common0 
+
+g_common:
+7984 20407a70 call memcpy_dword_swap4 
+7985 58800000 setarg 0x800000 
+7986 1fed7e00 lshift8 pdata ,pdata 
+7987 e0a20000 istore 4 ,contw 
+7988 18007205 force 5 ,loopcnt 
+7989 20407ec6 call memset0 
+798a 58000280 setarg 640 
+798b e0a20000 istore 4 ,contw 
+798c 20207912 branch sha 
+
+g_common0:
+798d 68020a3e fetch 4 ,memresult 
+798e da2003e8 arg 1000 ,rega 
+798f 9a26fc00 idiv rega 
+7990 20407f86 call wait_div_end 
+7991 18077e00 remainder pdata 
+7992 600209ba store 4 ,mem_gkey 
+7993 1807fe00 quotient pdata 
+7994 da2003e8 arg 1000 ,rega 
+7995 9a26fc00 idiv rega 
+7996 20407f86 call wait_div_end 
+7997 18077e00 remainder pdata 
+7998 da2003e8 arg 1000 ,rega 
+7999 9a2ffe00 imul32 rega ,pdata 
+799a 680a09ba fetcht 4 ,mem_gkey 
+799b 9840fe00 iadd temp ,pdata 
+799c 600209ba store 4 ,mem_gkey 
+799d 20600000 rtn 
+
+function_f1_no_key:
+799e 70466400 jam 0 ,mem_passkey_1bit 
+799f 202079a2 branch function_f1_common 
+
+function_f1:
+79a0 6800c662 fetch 1 ,mem_ssp_mode_flag 
+79a1 c081799e bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
+
+function_f1_common:
+79a2 4776c03d bpatchx patch3d_5 ,mem_patch3d 
+79a3 58363636 setarg 0x363636 
+79a4 1fed0400 lshift8 pdata ,temp 
+79a5 18418436 or_into 0x36 ,temp 
+79a6 68010a7e fetch 2 ,mem_sp_prarm_stack 
+79a7 1fe20c00 copy pdata ,contr 
+79a8 18007204 force 4 ,loopcnt 
+79a9 20407955 call pad_xor 
+79aa 2040790b call sha_init 
+79ab 20407912 call sha 
+79ac 68010a80 fetch 2 ,mem_sp_prarm_stack + 2 
+79ad 1fe20c00 copy pdata ,contr 
+79ae d8a005e6 arg memdat ,contw 
+79af 18007206 force 6 ,loopcnt 
+79b0 20407a71 call memcpy_dword_swap 
+79b1 68010a82 fetch 2 ,mem_sp_prarm_stack + 4 
+79b2 1fe20c00 copy pdata ,contr 
+79b3 18007206 force 6 ,loopcnt 
+79b4 20407a71 call memcpy_dword_swap 
+79b5 58800000 setarg 0x800000 
+79b6 e0a18000 istore 3 ,contw 
+79b7 6800c664 fetch 1 ,mem_passkey_1bit 
+79b8 e0a08000 istore 1 ,contw 
+79b9 18007e00 force 0 ,pdata 
+79ba e0a40000 istore 8 ,contw 
+79bb 58000388 setarg 0x0388 
+79bc e0a20000 istore 4 ,contw 
+79bd 20407912 call sha 
+79be 2040794e call sha_result 
+79bf d8c00a3e arg memresult ,contr 
+79c0 d8a00706 arg memahsave ,contw 
+79c1 20407ebd call memcpy32 
+79c2 585c5c5c setarg 0x5c5c5c 
+79c3 1fed0400 lshift8 pdata ,temp 
+79c4 1841845c or_into 0x5c ,temp 
+79c5 68010a7e fetch 2 ,mem_sp_prarm_stack 
+79c6 1fe20c00 copy pdata ,contr 
+79c7 18007204 force 4 ,loopcnt 
+79c8 20407955 call pad_xor 
+79c9 2040790b call sha_init 
+79ca 20407912 call sha 
+79cb d8c00726 arg memahsave_end ,contr 
+79cc d8a005e6 arg memdat ,contw 
+79cd 18007208 force 8 ,loopcnt 
+79ce 20407a71 call memcpy_dword_swap 
+79cf 58800000 setarg 0x800000 
+79d0 1fed7e00 lshift8 pdata ,pdata 
+79d1 e0a20000 istore 4 ,contw 
+79d2 20407ec5 call bn_zero 
+79d3 58000300 setarg 0x0300 
+79d4 e0a20000 istore 4 ,contw 
+79d5 20407912 call sha 
+79d6 2020794e branch sha_result 
+
+function_f2:
+79d7 58363636 setarg 0x363636 
+79d8 1fed0400 lshift8 pdata ,temp 
+79d9 18418436 or_into 0x36 ,temp 
+79da d8c00a1e arg mem_sp_dhkey_end ,contr 
+79db 18007206 force 6 ,loopcnt 
+79dc 20407955 call pad_xor 
+79dd 2040790b call sha_init 
+79de 20407912 call sha 
+79df 68010a8a fetch 2 ,mem_sp_prarm_stack + 12 
+79e0 1fe20c00 copy pdata ,contr 
+79e1 d8a005e6 arg memdat ,contw 
+79e2 20407a70 call memcpy_dword_swap4 
+79e3 68010a8c fetch 2 ,mem_sp_prarm_stack + 14 
+79e4 1fe20c00 copy pdata ,contr 
+79e5 20407a70 call memcpy_dword_swap4 
+79e6 5862746c setarg 0x62746c 
+79e7 1fed7e00 lshift8 pdata ,pdata 
+79e8 1fe1fe6b or_into 0x6b ,pdata 
+79e9 e0a20000 istore 4 ,contw 
+79ea d8c00733 arg mem_addr_value_end ,contr 
+79eb 18007203 force 3 ,loopcnt 
+79ec 20407a71 call memcpy_dword_swap 
+79ed 58800000 setarg 0x800000 
+79ee 1fed7e00 lshift8 pdata ,pdata 
+79ef e0a20000 istore 4 ,contw 
+79f0 18007e00 force 0 ,pdata 
+79f1 e0a40000 istore 8 ,contw 
+79f2 58000380 setarg 0x0380 
+79f3 e0a20000 istore 4 ,contw 
+79f4 20407912 call sha 
+79f5 2040794e call sha_result 
+79f6 d8c00a3e arg memresult ,contr 
+79f7 d8a00706 arg memahsave ,contw 
+79f8 20407ebd call memcpy32 
+79f9 585c5c5c setarg 0x5c5c5c 
+79fa 1fed0400 lshift8 pdata ,temp 
+79fb 1841845c or_into 0x5c ,temp 
+79fc d8c00a1e arg mem_sp_dhkey_end ,contr 
+79fd 18007206 force 6 ,loopcnt 
+79fe 20407955 call pad_xor 
+79ff 2040790b call sha_init 
+7a00 20407912 call sha 
+7a01 d8c00726 arg memahsave_end ,contr 
+7a02 d8a005e6 arg memdat ,contw 
+7a03 18007208 force 8 ,loopcnt 
+7a04 20407a71 call memcpy_dword_swap 
+7a05 58800000 setarg 0x800000 
+7a06 1fed7e00 lshift8 pdata ,pdata 
+7a07 e0a20000 istore 4 ,contw 
+7a08 20407ec5 call bn_zero 
+7a09 58000300 setarg 0x0300 
+7a0a e0a20000 istore 4 ,contw 
+7a0b 20407912 call sha 
+7a0c 2020794e branch sha_result 
+
+function_f3a:
+7a0d 6800c662 fetch 1 ,mem_ssp_mode_flag 
+7a0e c0817a1e bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
+
+function_f3a_common:
+7a0f 4777403d bpatchx patch3d_6 ,mem_patch3d 
+7a10 58363636 setarg 0x363636 
+7a11 1fed0400 lshift8 pdata ,temp 
+7a12 18418436 or_into 0x36 ,temp 
+7a13 d8c00a1e arg mem_sp_dhkey_end ,contr 
+7a14 18007206 force 6 ,loopcnt 
+7a15 20407955 call pad_xor 
+7a16 2040790b call sha_init 
+7a17 20407912 call sha 
+7a18 d8c00a3e arg mem_sp_random_remote_end ,contr 
+7a19 d8a005e6 arg memdat ,contw 
+7a1a 20407a70 call memcpy_dword_swap4 
+7a1b d8c00a2e arg mem_sp_random_local_end ,contr 
+7a1c 20407a70 call memcpy_dword_swap4 
+7a1d 20207a33 branch function_f3_common 
+
+function_f3a_no_pin:
+7a1e 58000000 setarg 0 
+7a1f 6002468a store 4 ,mem_pin 
+7a20 20207a0f branch function_f3a_common 
+
+function_f3b_no_pin:
+7a21 58000000 setarg 0 
+7a22 6002468a store 4 ,mem_pin 
+7a23 20207a26 branch function_f3b_common 
+
+function_f3b:
+7a24 6800c662 fetch 1 ,mem_ssp_mode_flag 
+7a25 c0817a21 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
+
+function_f3b_common:
+7a26 58363636 setarg 0x363636 
+7a27 1fed0400 lshift8 pdata ,temp 
+7a28 18418436 or_into 0x36 ,temp 
+7a29 d8c00a1e arg mem_sp_dhkey_end ,contr 
+7a2a 18007206 force 6 ,loopcnt 
+7a2b 20407955 call pad_xor 
+7a2c 2040790b call sha_init 
+7a2d 20407912 call sha 
+7a2e d8c00a2e arg mem_sp_random_local_end ,contr 
+7a2f d8a005e6 arg memdat ,contw 
+7a30 20407a70 call memcpy_dword_swap4 
+7a31 d8c00a3e arg mem_sp_random_remote_end ,contr 
+7a32 20407a70 call memcpy_dword_swap4 
+
+function_f3_common:
+7a33 58000000 setarg 0x0 
+7a34 e0a40000 istore 8 ,contw 
+7a35 e0a20000 istore 4 ,contw 
+7a36 6802468a fetch 4 ,mem_pin 
+7a37 e0a20000 istore 4 ,contw 
+7a38 18a20400 copy contw ,temp 
+7a39 70072680 jam 0x80 ,mem_addr_padding 
+7a3a 18420a00 copy temp ,contw 
+7a3b d8c00736 arg mem_addr_iocap_end ,contr 
+7a3c 20407a70 call memcpy_dword_swap4 
+7a3d 20407912 call sha 
+7a3e d8a005e6 arg memdat ,contw 
+7a3f 18007207 force 7 ,loopcnt 
+7a40 20407ec6 call memset0 
+7a41 e0a20000 istore 4 ,contw 
+7a42 580003f8 setarg 0x03F8 
+7a43 e0a20000 istore 4 ,contw 
+7a44 20407912 call sha 
+7a45 2040794e call sha_result 
+7a46 d8c00a3e arg memresult ,contr 
+7a47 d8a00706 arg memahsave ,contw 
+7a48 20407ebd call memcpy32 
+7a49 585c5c5c setarg 0x5c5c5c 
+7a4a 1fed0400 lshift8 pdata ,temp 
+7a4b 1841845c or_into 0x5c ,temp 
+7a4c d8c00a1e arg mem_sp_dhkey_end ,contr 
+7a4d 18007206 force 6 ,loopcnt 
+7a4e 20407955 call pad_xor 
+7a4f 2040790b call sha_init 
+7a50 20407912 call sha 
+7a51 d8c00726 arg memahsave_end ,contr 
+7a52 d8a005e6 arg memdat ,contw 
+7a53 18007208 force 8 ,loopcnt 
+7a54 20407a71 call memcpy_dword_swap 
+7a55 58800000 setarg 0x800000 
+7a56 1fed7e00 lshift8 pdata ,pdata 
+7a57 e0a20000 istore 4 ,contw 
+7a58 20407ec5 call bn_zero 
+7a59 58000300 setarg 0x0300 
+7a5a e0a20000 istore 4 ,contw 
+7a5b 20407912 call sha 
+7a5c 2020794e branch sha_result 
+
+eckp_calc_init:
+7a5d 7005e3c0 jam 192 ,mem_ec_loopc 
+
+eckp_calc_init_1:
+7a5e 680085e3 fetch 1 ,mem_ec_loopc 
+7a5f 207a0000 rtn blank 
+7a60 1fe0ffff increase -1 ,pdata 
+7a61 600085e3 store 1 ,mem_ec_loopc 
+7a62 d8c006be arg mem_k ,contr 
+7a63 204076ec call bn_testbit 
+7a64 2020fa5e branch eckp_calc_init_1 ,true 
+7a65 d8c005e6 arg mem_ax ,contr 
+7a66 d8a00676 arg mem_cx ,contw 
+7a67 202076f2 branch ec_copy 
+
+eckp_calc:
+7a68 20407803 call ecdbl 
+7a69 680085e3 fetch 1 ,mem_ec_loopc 
+7a6a 1fe0ffff increase -1 ,pdata 
+7a6b 600085e3 store 1 ,mem_ec_loopc 
+7a6c d8c006be arg mem_k ,contr 
+7a6d 204076ec call bn_testbit 
+7a6e 20608000 rtn true 
+7a6f 20207854 branch ecadd 
+
+memcpy_dword_swap4:
+7a70 18007204 force 4 ,loopcnt 
+
+memcpy_dword_swap:
+7a71 18c08dfc increase -4 ,contr 
+
+memcpy_dword_swap_loop:
+7a72 e8c20000 ifetch 4 ,contr 
+7a73 e0a20000 istore 4 ,contw 
+7a74 18c08df8 increase -8 ,contr 
+7a75 c2007a72 loop memcpy_dword_swap_loop 
+7a76 20600000 rtn 
+
+sp_initialize_256:
+7a77 4777c03d bpatchx patch3d_7 ,mem_patch3d 
+7a78 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+7a79 203a5af0 branch le_secure_connection_disable ,blank 
+7a7a 20405aec call le_secure_connection_enable 
+7a7b 20407583 call sp_clear_flags 
+7a7c 20207a7d branch sp_pubkey_calc_256 
+
+sp_pubkey_calc_256:
+7a7d 6800c4c3 fetch 1 ,mem_le_sc_local_key_invalid 
+7a7e c1800000 rtnne sp_key_invalid 
+7a7f 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7a80 c1800000 rtnne sp_calc_standby 
+7a81 d8a045b2 arg mem_le_private_key_256 ,contw 
+7a82 18000e0f force 15 ,queue 
+7a83 204076a2 call random_generator 
+7a84 180a7e00 random pdata 
+7a85 1fe37e00 rshift pdata ,pdata 
+7a86 e0a10000 istore 2 ,contw 
+7a87 d8a00766 arg mem_k_256 ,contw 
+7a88 d8c045b2 arg mem_le_private_key_256 ,contr 
+7a89 20407ebd call memcpy32 
+7a8a d8a00646 arg mem_ax_256 ,contw 
+7a8b d8c0095e arg mem_gx_256 ,contr 
+7a8c 20407eb3 call memcpy64 
+7a8d d8a00686 arg mem_az_256 ,contw 
+7a8e 20407ed0 call clear_mem_256 
+7a8f 70068601 jam 1 ,mem_az_256 
+7a90 20407ac7 call eckp_calc_init_256 
+7a91 7044c003 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
+7a92 20600000 rtn 
+
+sp_pubkey_generated_256:
+7a93 d8a045d2 arg mem_le_pubkey_local_x_256 ,contw 
+7a94 d8c006a6 arg mem_bx_256 ,contr 
+7a95 20407eb3 call memcpy64 
+7a96 7044c303 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
+7a97 7044c000 jam sp_calc_standby ,mem_le_sc_calc 
+7a98 20600000 rtn 
+
+sp_dhkey_calc_256:
+7a99 680089b9 fetch 1 ,mem_sp_dhkey_invalid 
+7a9a c1800000 rtnne sp_key_invalid 
+7a9b 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7a9c c1800000 rtnne sp_calc_standby 
+7a9d d8a00766 arg mem_k_256 ,contw 
+7a9e d8c045b2 arg mem_le_private_key_256 ,contr 
+7a9f 20407ebd call memcpy32 
+7aa0 d8a00646 arg mem_ax_256 ,contw 
+7aa1 d8c009be arg mem_le_pubkey_remote_x_256 ,contr 
+7aa2 20407eb3 call memcpy64 
+7aa3 d8a00686 arg mem_az_256 ,contw 
+7aa4 20407ed0 call clear_mem_256 
+7aa5 70068601 jam 1 ,mem_az_256 
+7aa6 20407ac7 call eckp_calc_init_256 
+7aa7 7044c004 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
+7aa8 20600000 rtn 
+
+sp_dhkey_generated_256:
+7aa9 d8a009fe arg mem_le_dhkey_256 ,contw 
+7aaa d8c006a6 arg mem_bx_256 ,contr 
+7aab 20407ebd call memcpy32 
+7aac 7009b903 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
+7aad 7044c000 jam sp_calc_standby ,mem_le_sc_calc 
+7aae 20600000 rtn 
+
+sp_calc_sequence_256:
+7aaf 6800c4be fetch 1 ,mem_le_secure_connect_enable 
+7ab0 207a0000 rtn blank 
+7ab1 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7ab2 207a0000 rtn blank 
+7ab3 1fe0fe80 increase 0x80 ,pdata 
+7ab4 6000c4c0 store 1 ,mem_le_sc_calc 
+7ab5 c3838000 rtnbit1 7 
+7ab6 680105e3 fetch 2 ,mem_ec_loopc 
+7ab7 203a7ab9 branch sp_calc_sequence_done_256 ,blank 
+7ab8 20207abf branch eckp_calc_256 
+
+sp_calc_sequence_done_256:
+7ab9 4778403e bpatchx patch3e_0 ,mem_patch3e 
+7aba 20407ad4 call ecunmapz_256 
+7abb 6800c4c0 fetch 1 ,mem_le_sc_calc 
+7abc c001fa93 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
+7abd c0027aa9 beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
+7abe 20600000 rtn 
+
+eckp_calc_256:
+7abf 20407ae6 call ecdbl_256 
+7ac0 680105e3 fetch 2 ,mem_ec_loopc 
+7ac1 1fe0ffff increase -1 ,pdata 
+7ac2 600105e3 store 2 ,mem_ec_loopc 
+7ac3 d8c00766 arg mem_k_256 ,contr 
+7ac4 204076ec call bn_testbit 
+7ac5 20608000 rtn true 
+7ac6 20207b37 branch ecadd_256 
+
+eckp_calc_init_256:
+7ac7 4778c03e bpatchx patch3e_1 ,mem_patch3e 
+7ac8 58000100 setarg 256 ,pdata 
+7ac9 600105e3 store 2 ,mem_ec_loopc 
+
+eckp_calc_init_256_1:
+7aca 680105e3 fetch 2 ,mem_ec_loopc 
+7acb 207a0000 rtn blank 
+7acc 1fe0ffff increase -1 ,pdata 
+7acd 600105e3 store 2 ,mem_ec_loopc 
+7ace d8c00766 arg mem_k_256 ,contr 
+7acf 204076ec call bn_testbit 
+7ad0 2020faca branch eckp_calc_init_256_1 ,true 
+7ad1 d8c00646 arg mem_ax_256 ,contr 
+7ad2 d8a00706 arg mem_cx_256 ,contw 
+7ad3 20207eb2 branch memcpy96 
+
+ecunmapz_256:
+7ad4 da200746 arg mem_cz_256 ,rega 
+7ad5 d8a00846 arg mem_t3_256 ,contw 
+7ad6 20407ba3 call bn_invmod_256 
+7ad7 da200846 arg mem_t3_256 ,rega 
+7ad8 d8a007e6 arg mem_t1_256 ,contw 
+7ad9 20407c79 call bn_sqrmod_256 
+7ada da200706 arg mem_cx_256 ,rega 
+7adb da4007e6 arg mem_t1_256 ,regb 
+7adc d8a006a6 arg mem_bx_256 ,contw 
+7add 20407be1 call bn_mulmod_256 
+7ade da200846 arg mem_t3_256 ,rega 
+7adf da4007e6 arg mem_t1_256 ,regb 
+7ae0 d8a00826 arg mem_t2_256 ,contw 
+7ae1 20407be1 call bn_mulmod_256 
+7ae2 da200726 arg mem_cy_256 ,rega 
+7ae3 da400826 arg mem_t2_256 ,regb 
+7ae4 d8a006c6 arg mem_by_256 ,contw 
+7ae5 20207be1 branch bn_mulmod_256 
+
+ecdbl_256:
+7ae6 da200746 arg mem_cz_256 ,rega 
+7ae7 d8a00826 arg mem_t2_256 ,contw 
+7ae8 20407c79 call bn_sqrmod_256 
+7ae9 da200826 arg mem_t2_256 ,rega 
+7aea d8a00846 arg mem_t3_256 ,contw 
+7aeb 20407c79 call bn_sqrmod_256 
+7aec da20093e arg mem_a_256 ,rega 
+7aed da400846 arg mem_t3_256 ,regb 
+7aee d8a00846 arg mem_t3_256 ,contw 
+7aef 20407be1 call bn_mulmod_256 
+7af0 da200706 arg mem_cx_256 ,rega 
+7af1 d8a00826 arg mem_t2_256 ,contw 
+7af2 20407c79 call bn_sqrmod_256 
+7af3 d8c00826 arg mem_t2_256 ,contr 
+7af4 d8a007e6 arg mem_t1_256 ,contw 
+7af5 20407ebd call memcpy32 
+7af6 da2007e6 arg mem_t1_256 ,rega 
+7af7 20407c80 call bn_lshiftmod_256 
+7af8 da200826 arg mem_t2_256 ,rega 
+7af9 da4007e6 arg mem_t1_256 ,regb 
+7afa d8a00826 arg mem_t2_256 ,contw 
+7afb 20407c7d call bn_addmod_256 
+7afc da200826 arg mem_t2_256 ,rega 
+7afd da400846 arg mem_t3_256 ,regb 
+7afe d8a00826 arg mem_t2_256 ,contw 
+7aff 20407c7d call bn_addmod_256 
+7b00 d8c00706 arg mem_cx_256 ,contr 
+7b01 d8a007e6 arg mem_t1_256 ,contw 
+7b02 20407ebd call memcpy32 
+7b03 da200726 arg mem_cy_256 ,rega 
+7b04 d8a00846 arg mem_t3_256 ,contw 
+7b05 20407c79 call bn_sqrmod_256 
+7b06 da2007e6 arg mem_t1_256 ,rega 
+7b07 20407c80 call bn_lshiftmod_256 
+7b08 da2007e6 arg mem_t1_256 ,rega 
+7b09 20407c80 call bn_lshiftmod_256 
+7b0a da2007e6 arg mem_t1_256 ,rega 
+7b0b da400846 arg mem_t3_256 ,regb 
+7b0c d8a007e6 arg mem_t1_256 ,contw 
+7b0d 20407be1 call bn_mulmod_256 
+7b0e da200846 arg mem_t3_256 ,rega 
+7b0f d8a00806 arg mem_t0_256 ,contw 
+7b10 20407c79 call bn_sqrmod_256 
+7b11 da200806 arg mem_t0_256 ,rega 
+7b12 20407c80 call bn_lshiftmod_256 
+7b13 da200806 arg mem_t0_256 ,rega 
+7b14 20407c80 call bn_lshiftmod_256 
+7b15 da200806 arg mem_t0_256 ,rega 
+7b16 20407c80 call bn_lshiftmod_256 
+7b17 d8c00726 arg mem_cy_256 ,contr 
+7b18 d8a00846 arg mem_t3_256 ,contw 
+7b19 20407ebd call memcpy32 
+7b1a da200846 arg mem_t3_256 ,rega 
+7b1b 20407c80 call bn_lshiftmod_256 
+7b1c da200846 arg mem_t3_256 ,rega 
+7b1d da400746 arg mem_cz_256 ,regb 
+7b1e d8a00746 arg mem_cz_256 ,contw 
+7b1f 20407be1 call bn_mulmod_256 
+7b20 da200826 arg mem_t2_256 ,rega 
+7b21 d8a00846 arg mem_t3_256 ,contw 
+7b22 20407c79 call bn_sqrmod_256 
+7b23 da200846 arg mem_t3_256 ,rega 
+7b24 da4007e6 arg mem_t1_256 ,regb 
+7b25 d8a00846 arg mem_t3_256 ,contw 
+7b26 20407c96 call bn_submod_256 
+7b27 da200846 arg mem_t3_256 ,rega 
+7b28 da4007e6 arg mem_t1_256 ,regb 
+7b29 d8a00706 arg mem_cx_256 ,contw 
+7b2a 20407c96 call bn_submod_256 
+7b2b da2007e6 arg mem_t1_256 ,rega 
+7b2c da400706 arg mem_cx_256 ,regb 
+7b2d d8a00846 arg mem_t3_256 ,contw 
+7b2e 20407c96 call bn_submod_256 
+7b2f da200846 arg mem_t3_256 ,rega 
+7b30 da400826 arg mem_t2_256 ,regb 
+7b31 d8a00846 arg mem_t3_256 ,contw 
+7b32 20407be1 call bn_mulmod_256 
+7b33 da200846 arg mem_t3_256 ,rega 
+7b34 da400806 arg mem_t0_256 ,regb 
+7b35 d8a00726 arg mem_cy_256 ,contw 
+7b36 20207c96 branch bn_submod_256 
+
+ecadd_256:
+7b37 da200686 arg mem_az_256 ,rega 
+7b38 d8a00866 arg mem_t7_256 ,contw 
+7b39 20407c79 call bn_sqrmod_256 
+7b3a da200706 arg mem_cx_256 ,rega 
+7b3b da400866 arg mem_t7_256 ,regb 
+7b3c d8a00806 arg mem_t0_256 ,contw 
+7b3d 20407be1 call bn_mulmod_256 
+7b3e da200686 arg mem_az_256 ,rega 
+7b3f da400866 arg mem_t7_256 ,regb 
+7b40 d8a00866 arg mem_t7_256 ,contw 
+7b41 20407be1 call bn_mulmod_256 
+7b42 da200726 arg mem_cy_256 ,rega 
+7b43 da400866 arg mem_t7_256 ,regb 
+7b44 d8a007e6 arg mem_t1_256 ,contw 
+7b45 20407be1 call bn_mulmod_256 
+7b46 da200746 arg mem_cz_256 ,rega 
+7b47 d8a00866 arg mem_t7_256 ,contw 
+7b48 20407c79 call bn_sqrmod_256 
+7b49 da200646 arg mem_ax_256 ,rega 
+7b4a da400866 arg mem_t7_256 ,regb 
+7b4b d8a00826 arg mem_t2_256 ,contw 
+7b4c 20407be1 call bn_mulmod_256 
+7b4d da200746 arg mem_cz_256 ,rega 
+7b4e da400866 arg mem_t7_256 ,regb 
+7b4f d8a00866 arg mem_t7_256 ,contw 
+7b50 20407be1 call bn_mulmod_256 
+7b51 da200666 arg mem_ay_256 ,rega 
+7b52 da400866 arg mem_t7_256 ,regb 
+7b53 d8a00846 arg mem_t3_256 ,contw 
+7b54 20407be1 call bn_mulmod_256 
+7b55 da400806 arg mem_t0_256 ,regb 
+7b56 da200826 arg mem_t2_256 ,rega 
+7b57 d8a00866 arg mem_t7_256 ,contw 
+7b58 20407c96 call bn_submod_256 
+7b59 da200806 arg mem_t0_256 ,rega 
+7b5a da400826 arg mem_t2_256 ,regb 
+7b5b d8a00806 arg mem_t0_256 ,contw 
+7b5c 20407c7d call bn_addmod_256 
+7b5d da4007e6 arg mem_t1_256 ,regb 
+7b5e da200846 arg mem_t3_256 ,rega 
+7b5f d8a00826 arg mem_t2_256 ,contw 
+7b60 20407c96 call bn_submod_256 
+7b61 da2007e6 arg mem_t1_256 ,rega 
+7b62 da400846 arg mem_t3_256 ,regb 
+7b63 d8a007e6 arg mem_t1_256 ,contw 
+7b64 20407c7d call bn_addmod_256 
+7b65 da2007e6 arg mem_t1_256 ,rega 
+7b66 da400866 arg mem_t7_256 ,regb 
+7b67 d8a007e6 arg mem_t1_256 ,contw 
+7b68 20407be1 call bn_mulmod_256 
+7b69 da200746 arg mem_cz_256 ,rega 
+7b6a da400686 arg mem_az_256 ,regb 
+7b6b d8a00846 arg mem_t3_256 ,contw 
+7b6c 20407be1 call bn_mulmod_256 
+7b6d da200846 arg mem_t3_256 ,rega 
+7b6e da400866 arg mem_t7_256 ,regb 
+7b6f d8a00746 arg mem_cz_256 ,contw 
+7b70 20407be1 call bn_mulmod_256 
+7b71 da200866 arg mem_t7_256 ,rega 
+7b72 d8a00866 arg mem_t7_256 ,contw 
+7b73 20407c79 call bn_sqrmod_256 
+7b74 da200866 arg mem_t7_256 ,rega 
+7b75 da400806 arg mem_t0_256 ,regb 
+7b76 d8a00846 arg mem_t3_256 ,contw 
+7b77 20407be1 call bn_mulmod_256 
+7b78 da200866 arg mem_t7_256 ,rega 
+7b79 da4007e6 arg mem_t1_256 ,regb 
+7b7a d8a007e6 arg mem_t1_256 ,contw 
+7b7b 20407be1 call bn_mulmod_256 
+7b7c da200826 arg mem_t2_256 ,rega 
+7b7d d8a00706 arg mem_cx_256 ,contw 
+7b7e 20407c79 call bn_sqrmod_256 
+7b7f da200706 arg mem_cx_256 ,rega 
+7b80 da400846 arg mem_t3_256 ,regb 
+7b81 d8a00706 arg mem_cx_256 ,contw 
+7b82 20407c96 call bn_submod_256 
+7b83 d8c00706 arg mem_cx_256 ,contr 
+7b84 d8a00866 arg mem_t7_256 ,contw 
+7b85 20407ebd call memcpy32 
+7b86 da200866 arg mem_t7_256 ,rega 
+7b87 20407c80 call bn_lshiftmod_256 
+7b88 da200846 arg mem_t3_256 ,rega 
+7b89 da400866 arg mem_t7_256 ,regb 
+7b8a d8a00846 arg mem_t3_256 ,contw 
+7b8b 20407c96 call bn_submod_256 
+7b8c da200846 arg mem_t3_256 ,rega 
+7b8d da400826 arg mem_t2_256 ,regb 
+7b8e d8a00826 arg mem_t2_256 ,contw 
+7b8f 20407be1 call bn_mulmod_256 
+7b90 da200826 arg mem_t2_256 ,rega 
+7b91 da4007e6 arg mem_t1_256 ,regb 
+7b92 d8a00726 arg mem_cy_256 ,contw 
+7b93 20407c96 call bn_submod_256 
+7b94 da200726 arg mem_cy_256 ,rega 
+7b95 da40091e arg mem_p_256 ,regb 
+7b96 d8a00726 arg mem_cy_256 ,contw 
+7b97 18002600 force 0 ,regc 
+7b98 68008726 fetch 1 ,mem_cy_256 
+7b99 2feffe00 isolate1 0 ,pdata 
+7b9a 2040fc7b call bn_add_256 ,true 
+7b9b 1a626000 copy regc ,alarm 
+7b9c da200726 arg mem_cy_256 ,rega 
+7b9d 20407cab call bn_rshift_256 
+7b9e 68008745 fetch 1 ,mem_cy5_256 
+7b9f 2e0ffe00 isolate1 0 ,alarm 
+7ba0 7920fe07 setflag true ,7 ,pdata 
+7ba1 60008745 store 1 ,mem_cy5_256 
+7ba2 20600000 rtn 
+
+bn_invmod_256:
+7ba3 18a21600 copy contw ,timeup 
+7ba4 d8a00806 arg mem_tmp0_256 ,contw 
+7ba5 20407ed0 call clear_mem_256 
+7ba6 18007e00 force 0 ,pdata 
+7ba7 60020826 store 4 ,mem_t2_256 
+7ba8 70080601 jam 1 ,mem_tmp0_256 
+7ba9 d8a00786 arg mem_tmp1_256 ,contw 
+7baa 20407ed2 call clear_mem_512 
+7bab d8c0091e arg mem_p_256 ,contr 
+7bac d8a007c6 arg mem_tmp2_256 ,contw 
+7bad 20407ebd call memcpy32 
+7bae 1a220c00 copy rega ,contr 
+7baf d8a007e6 arg mem_tmp3_256 ,contw 
+7bb0 20407ebd call memcpy32 
+
+bn_invmod_256_2:
+7bb1 d8c007e6 arg mem_tmp3_256 ,contr 
+7bb2 20407cb5 call bn_eq_zero_256 
+7bb3 203a7bda branch bn_invmod_256_0 ,blank 
+7bb4 da2007e6 arg mem_tmp3_256 ,rega 
+7bb5 da400806 arg mem_tmp0_256 ,regb 
+7bb6 20407cb8 call bn_rshifteven_256 
+7bb7 da2007c6 arg mem_tmp2_256 ,rega 
+7bb8 da400786 arg mem_tmp1_256 ,regb 
+7bb9 20407cb8 call bn_rshifteven_256 
+7bba da2007e6 arg mem_tmp3_256 ,rega 
+7bbb da4007c6 arg mem_tmp2_256 ,regb 
+7bbc 20407cb1 call bn_bigeq_256 
+7bbd 20217bcc branch bn_invmod_256_1 ,positive 
+7bbe da2007c6 arg mem_tmp2_256 ,rega 
+7bbf da4007e6 arg mem_tmp3_256 ,regb 
+7bc0 1a220a00 copy rega ,contw 
+7bc1 20407ca9 call bn_sub_256 
+7bc2 da200806 arg mem_tmp0_256 ,rega 
+7bc3 da400786 arg mem_tmp1_256 ,regb 
+7bc4 1a420a00 copy regb ,contw 
+7bc5 20407c7b call bn_add_256 
+7bc6 ea208000 ifetch 1 ,rega 
+7bc7 9a60a600 iadd regc ,regc 
+7bc8 ea408000 ifetch 1 ,regb 
+7bc9 9a60fe00 iadd regc ,pdata 
+7bca e2408000 istore 1 ,regb 
+7bcb 20207bb1 branch bn_invmod_256_2 
+
+bn_invmod_256_1:
+7bcc da2007e6 arg mem_tmp3_256 ,rega 
+7bcd da4007c6 arg mem_tmp2_256 ,regb 
+7bce 1a220a00 copy rega ,contw 
+7bcf 20407ca9 call bn_sub_256 
+7bd0 da200786 arg mem_tmp1_256 ,rega 
+7bd1 da400806 arg mem_tmp0_256 ,regb 
+7bd2 1a420a00 copy regb ,contw 
+7bd3 20407c7b call bn_add_256 
+7bd4 ea208000 ifetch 1 ,rega 
+7bd5 9a60a600 iadd regc ,regc 
+7bd6 ea408000 ifetch 1 ,regb 
+7bd7 9a60fe00 iadd regc ,pdata 
+7bd8 e2408000 istore 1 ,regb 
+7bd9 20207bb1 branch bn_invmod_256_2 
+
+bn_invmod_256_0:
+7bda da200786 arg mem_tmp1_256 ,rega 
+7bdb 19620a00 copy timeup ,contw 
+7bdc 20407c0a call bn_p256mod 
+7bdd da20091e arg mem_p_256 ,rega 
+7bde 19622400 copy timeup ,regb 
+7bdf 19620a00 copy timeup ,contw 
+7be0 20207c96 branch bn_submod_256 
+
+bn_mulmod_256:
+7be1 18a21600 copy contw ,timeup 
+7be2 18007000 force 0 ,regext_index 
+7be3 d8a00786 arg mem_tmp1_256 ,contw 
+7be4 20407ed2 call clear_mem_512 
+7be5 d8a00ad2 arg mem_regext ,contw 
+7be6 20407ed2 call clear_mem_512 
+7be7 1a220c00 copy rega ,contr 
+7be8 700ad200 jam 0 ,mem_regext 
+7be9 58000000 setarg 0 
+7bea 20407c73 call bn_load_mem 
+7beb 1a420c00 copy regb ,contr 
+7bec 20407c77 call bn_load_256 
+7bed 18000e00 force 0 ,queue 
+7bee d8a00786 arg mem_tmp1_256 ,contw 
+
+bn_mulmod_256_1:
+7bef d8400ad2 arg mem_regext ,temp 
+7bf0 18e22400 copy queue ,regb 
+7bf1 1a4bfe00 lshift2 regb ,pdata 
+7bf2 9840a400 iadd temp ,regb 
+7bf3 18000400 force 0 ,temp 
+7bf4 18002600 force 0 ,regc 
+
+bn_mulmod_256_0:
+7bf5 e8a20000 ifetch 4 ,contw 
+7bf6 98002200 iforce rega 
+7bf7 ea420000 ifetch 4 ,regb 
+7bf8 1a627000 copy regc ,regext_index 
+7bf9 9deffe00 imul32 regext ,pdata 
+7bfa 9a20fe00 iadd rega ,pdata 
+7bfb 9840fe00 iadd temp ,pdata 
+7bfc e0a20000 istore 4 ,contw 
+7bfd 1fef0400 rshift32 pdata ,temp 
+7bfe 1a60a601 increase 1 ,regc 
+7bff 2a61fe08 compare 8 ,regc ,0xff 
+7c00 2420fbf5 nbranch bn_mulmod_256_0 ,true 
+7c01 18427e00 deposit temp 
+7c02 e0a20000 istore 4 ,contw 
+7c03 18a08be0 increase -32 ,contw 
+7c04 18e08e01 increase 1 ,queue 
+7c05 28e1fe08 compare 8 ,queue ,0xff 
+7c06 2420fbef nbranch bn_mulmod_256_1 ,true 
+7c07 da200786 arg mem_tmp1_256 ,rega 
+7c08 19620a00 copy timeup ,contw 
+7c09 20207c0a branch bn_p256mod 
+
+bn_p256mod:
+7c0a 4779403e bpatchx patch3e_2 ,mem_patch3e 
+7c0b 18a21600 copy contw ,timeup 
+7c0c 1a226000 copy rega ,alarm 
+7c0d da4007c6 arg mem_tmp2_256 ,regb 
+7c0e 1a420a00 copy regb ,contw 
+7c0f 20407ecd call memset0_4 
+7c10 e0a40000 istore 8 ,contw 
+7c11 1a208c2c add rega ,44 ,contr 
+7c12 20407eb9 call memcpy8 
+7c13 20407eb5 call memcpy12 
+7c14 1a422200 copy regb ,rega 
+7c15 20407c80 call bn_lshiftmod_256 
+7c16 da4007c6 arg mem_tmp2_256 ,regb 
+7c17 1e022200 copy alarm ,rega 
+7c18 19620a00 copy timeup ,contw 
+7c19 20407c7d call bn_addmod_256 
+7c1a da4007c6 arg mem_tmp2_256 ,regb 
+7c1b 1a420a00 copy regb ,contw 
+7c1c 20407ecd call memset0_4 
+7c1d e0a40000 istore 8 ,contw 
+7c1e 1e008c30 add alarm ,48 ,contr 
+7c1f 20407ebf call memcpy16 
+7c20 20407ecd call memset0_4 
+7c21 1a422200 copy regb ,rega 
+7c22 20407c80 call bn_lshiftmod_256 
+7c23 da4007c6 arg mem_tmp2_256 ,regb 
+7c24 19622200 copy timeup ,rega 
+7c25 1a220a00 copy rega ,contw 
+7c26 20407c7d call bn_addmod_256 
+7c27 da4007c6 arg mem_tmp2_256 ,regb 
+7c28 1a420a00 copy regb ,contw 
+7c29 1e008c20 add alarm ,32 ,contr 
+7c2a 20407eb5 call memcpy12 
+7c2b 20407ecd call memset0_4 
+7c2c e0a40000 istore 8 ,contw 
+7c2d 1e008c38 add alarm ,56 ,contr 
+7c2e 20407eb9 call memcpy8 
+7c2f 19622200 copy timeup ,rega 
+7c30 1a220a00 copy rega ,contw 
+7c31 20407c7d call bn_addmod_256 
+7c32 da4007c6 arg mem_tmp2_256 ,regb 
+7c33 1a420a00 copy regb ,contw 
+7c34 1e008c24 add alarm ,36 ,contr 
+7c35 20407eb5 call memcpy12 
+7c36 1e008c34 add alarm ,52 ,contr 
+7c37 20407eb5 call memcpy12 
+7c38 1e008c34 add alarm ,52 ,contr 
+7c39 20407eb6 call memcpy4 
+7c3a 1e008c20 add alarm ,32 ,contr 
+7c3b 20407eb6 call memcpy4 
+7c3c 19622200 copy timeup ,rega 
+7c3d 1a220a00 copy rega ,contw 
+7c3e 20407c7d call bn_addmod_256 
+7c3f da4007c6 arg mem_tmp2_256 ,regb 
+7c40 1a420a00 copy regb ,contw 
+7c41 1e008c2c add alarm ,44 ,contr 
+7c42 20407eb5 call memcpy12 
+7c43 20407ecd call memset0_4 
+7c44 e0a40000 istore 8 ,contw 
+7c45 1e008c20 add alarm ,32 ,contr 
+7c46 20407eb6 call memcpy4 
+7c47 1e008c28 add alarm ,40 ,contr 
+7c48 20407eb6 call memcpy4 
+7c49 19622200 copy timeup ,rega 
+7c4a 1a220a00 copy rega ,contw 
+7c4b 20407c96 call bn_submod_256 
+7c4c da4007c6 arg mem_tmp2_256 ,regb 
+7c4d 1a420a00 copy regb ,contw 
+7c4e 1e008c30 add alarm ,48 ,contr 
+7c4f 20407eb9 call memcpy8 
+7c50 20407eb9 call memcpy8 
+7c51 18007e00 force 0 ,pdata 
+7c52 e0a40000 istore 8 ,contw 
+7c53 1e008c24 add alarm ,36 ,contr 
+7c54 20407eb6 call memcpy4 
+7c55 1e008c2c add alarm ,44 ,contr 
+7c56 20407eb6 call memcpy4 
+7c57 19622200 copy timeup ,rega 
+7c58 1a220a00 copy rega ,contw 
+7c59 20407c96 call bn_submod_256 
+7c5a da4007c6 arg mem_tmp2_256 ,regb 
+7c5b 1a420a00 copy regb ,contw 
+7c5c 1e008c34 add alarm ,52 ,contr 
+7c5d 20407eb5 call memcpy12 
+7c5e 1e008c20 add alarm ,32 ,contr 
+7c5f 20407eb5 call memcpy12 
+7c60 20407ecd call memset0_4 
+7c61 1e008c30 add alarm ,48 ,contr 
+7c62 20407eb6 call memcpy4 
+7c63 19622200 copy timeup ,rega 
+7c64 1a220a00 copy rega ,contw 
+7c65 20407c96 call bn_submod_256 
+7c66 da4007c6 arg mem_tmp2_256 ,regb 
+7c67 1a420a00 copy regb ,contw 
+7c68 1e008c38 add alarm ,56 ,contr 
+7c69 20407eb9 call memcpy8 
+7c6a 20407ecd call memset0_4 
+7c6b 1e008c24 add alarm ,36 ,contr 
+7c6c 20407eb5 call memcpy12 
+7c6d 20407ecd call memset0_4 
+7c6e 1e008c34 add alarm ,52 ,contr 
+7c6f 20407eb6 call memcpy4 
+7c70 19622200 copy timeup ,rega 
+7c71 1a220a00 copy rega ,contw 
+7c72 20207c96 branch bn_submod_256 
+
+bn_load_mem:
+7c73 18007220 force 32 ,loopcnt 
+7c74 d8a00ad2 arg mem_regext ,contw 
+7c75 98a08a00 iadd contw ,contw 
+7c76 20207f01 branch memcpy 
+
+bn_load_256:
+7c77 18007208 force 8 ,loopcnt 
+7c78 20207781 branch bn_load_0 
+
+bn_sqrmod_256:
+7c79 1a222400 copy rega ,regb 
+7c7a 20207be1 branch bn_mulmod_256 
+
+bn_add_256:
+7c7b 18007208 force 8 ,loopcnt 
+7c7c 20207712 branch bn_add + 1 
+
+bn_addmod_256:
+7c7d 20407c7b call bn_add_256 
+7c7e 18a22200 copy contw ,rega 
+7c7f 20207c81 branch bn_lshiftmod_ismod_256 
+
+bn_lshiftmod_256:
+7c80 20407cae call bn_lshift_256 
+
+bn_lshiftmod_ismod_256:
+7c81 2a6ffe00 isolate1 0 ,regc 
+7c82 2020fc8a branch bn_lshiftmod_p_256 ,true 
+7c83 da40091e arg mem_p_256 ,regb 
+7c84 1a222600 copy rega ,regc 
+7c85 1a20a3e0 increase -32 ,rega 
+7c86 20407cb1 call bn_bigeq_256 
+7c87 24610000 nrtn positive 
+7c88 1a622200 copy regc ,rega 
+7c89 20207c92 branch sub_p2_256 
+
+bn_lshiftmod_p_256:
+7c8a 20407c92 call sub_p2_256 
+7c8b 1a222600 copy rega ,regc 
+7c8c 1a20a3e0 increase -32 ,rega 
+7c8d da40091e arg mem_p_256 ,regb 
+7c8e 20407cb1 call bn_bigeq_256 
+7c8f 24610000 nrtn positive 
+7c90 1a622200 copy regc ,rega 
+7c91 20207c92 branch sub_p2_256 
+
+sub_p2_256:
+7c92 1a20a3e0 increase -32 ,rega 
+7c93 da40091e arg mem_p_256 ,regb 
+7c94 1a220a00 copy rega ,contw 
+7c95 20207ca9 branch bn_sub_256 
+
+bn_submod_256:
+7c96 20407ca9 call bn_sub_256 
+7c97 2020fca0 branch bn_submod_256_np ,true 
+7c98 18a0a3e0 add contw ,-32 ,rega 
+7c99 da40091e arg mem_p_256 ,regb 
+7c9a 20407cb1 call bn_bigeq_256 
+7c9b 24610000 nrtn positive 
+7c9c da40091e arg mem_p_256 ,regb 
+7c9d 18a0a3e0 add contw ,-32 ,rega 
+7c9e 1a220a00 copy rega ,contw 
+7c9f 20207ca9 branch bn_sub_256 
+
+bn_submod_256_np:
+7ca0 18a0a3e0 add contw ,-32 ,rega 
+7ca1 da40091e arg mem_p_256 ,regb 
+7ca2 1a220a00 copy rega ,contw 
+7ca3 20407c7b call bn_add_256 
+7ca4 20608000 rtn true 
+7ca5 18a0a3e0 add contw ,-32 ,rega 
+7ca6 da40091e arg mem_p_256 ,regb 
+7ca7 1a220a00 copy rega ,contw 
+7ca8 20207c7b branch bn_add_256 
+
+bn_sub_256:
+7ca9 18007208 force 8 ,loopcnt 
+7caa 20207720 branch bn_sub + 1 
+
+bn_rshift_256:
+7cab 18007208 force 8 ,loopcnt 
+7cac 1a20a21c increase 28 ,rega 
+7cad 2020772f branch bn_rshift 
+
+bn_lshift_256:
+7cae 18007208 force 8 ,loopcnt 
+7caf 18002600 force 0 ,regc 
+7cb0 2020773d branch bn_lshift_0 
+
+bn_bigeq_256:
+7cb1 18007208 force 8 ,loopcnt 
+7cb2 1a20a21c increase 28 ,rega 
+7cb3 1a40a41c increase 28 ,regb 
+7cb4 20207707 branch bn_bigeq_0 
+
+bn_eq_zero_256:
+7cb5 e8c40000 ifetch 8 ,contr 
+7cb6 247a0000 nrtn blank 
+7cb7 202076f5 branch bn_eq_zero 
+
+bn_rshifteven_256:
+7cb8 1a226000 copy rega ,alarm 
+
+bn_rshifteven_256_1:
+7cb9 1e022200 copy alarm ,rega 
+7cba ea208000 ifetch 1 ,rega 
+7cbb 2feffe00 isolate1 0 ,pdata 
+7cbc 20608000 rtn true 
+7cbd 20407cab call bn_rshift_256 
+7cbe ea408000 ifetch 1 ,regb 
+7cbf 2fec0000 isolate0 0 ,pdata 
+7cc0 2020fcc8 branch bn_rshifteven_256_0 ,true 
+7cc1 da20091e arg mem_p_256 ,rega 
+7cc2 1a420a00 copy regb ,contw 
+7cc3 20407c7b call bn_add_256 
+7cc4 ea408000 ifetch 1 ,regb 
+7cc5 9a60fe00 iadd regc ,pdata 
+7cc6 e2408000 istore 1 ,regb 
+7cc7 1a40a5e0 increase -32 ,regb 
+
+bn_rshifteven_256_0:
+7cc8 1a40a220 add regb ,32 ,rega 
+7cc9 18007209 force 9 ,loopcnt 
+7cca 2040772f call bn_rshift 
+7ccb 20207cb9 branch bn_rshifteven_256_1 
+
+ui_init:
+7ccc 20402c65 call lpm_disable_exen_output 
+7ccd 20758000 rtn wake 
+7cce 20407cd3 call ui_button_init 
+7ccf 20407d75 call ui_timer_init 
+7cd0 20207d08 branch ui_led_init_global 
+
+ui_dispatch:
+7cd1 20407d29 call ui_led_dispatch 
+7cd2 20207d64 branch ui_timer_check 
+
+ui_button_init:
+7cd3 6800c686 fetch 1 ,mem_ui_button_gpio 
+7cd4 c17f8000 rtneq ui_button_gpio_disable 
+7cd5 98000400 iforce temp 
+7cd6 2040680e call gpio_config_output 
+7cd7 6808c686 fetcht 1 ,mem_ui_button_gpio 
+7cd8 20406825 call gpio_out_inactive 
+7cd9 20000064 nop 100 
+7cda 6808c686 fetcht 1 ,mem_ui_button_gpio 
+7cdb 204067fb call gpio_config_input 
+7cdc 20207cdd branch ui_button_polling 
+
+ui_button_polling:
+7cdd 4779c03e bpatchx patch3e_3 ,mem_patch3e 
+7cde 6800c686 fetch 1 ,mem_ui_button_gpio 
+7cdf c17f8000 rtneq ui_button_gpio_disable 
+7ce0 1fe20400 copy pdata ,temp 
+7ce1 2040681d call gpio_get_bit 
+7ce2 2420fcef nbranch ui_button_up ,true 
+
+ui_button_down:
+7ce3 20407cf9 call ui_button_check_long_press 
+7ce4 68014682 fetch 2 ,mem_ui_state_map 
+7ce5 79207e0c set1 ui_state_btn_down 
+7ce6 60014682 store 2 ,mem_ui_state_map 
+7ce7 6800c679 fetch 1 ,mem_ui_button_last_state 
+7ce8 c1000000 rtneq ui_button_state_down 
+7ce9 70467900 jam ui_button_state_down ,mem_ui_button_last_state 
+7cea 6800c685 fetch 1 ,mem_ui_button_timeout 
+7ceb 6000c678 store 1 ,mem_ui_button_timer 
+7cec 20407d00 call lpm_button_get_wake_lock 
+7ced 700a992c jam bt_evt_button_down ,mem_fifo_temp 
+7cee 20207d86 branch ui_ipc_send_event 
+
+ui_button_up:
+7cef 68014682 fetch 2 ,mem_ui_state_map 
+7cf0 793ffe0c set0 ui_state_btn_down 
+7cf1 60014682 store 2 ,mem_ui_state_map 
+7cf2 6800c679 fetch 1 ,mem_ui_button_last_state 
+7cf3 c1008000 rtneq ui_button_state_up 
+7cf4 70467901 jam ui_button_state_up ,mem_ui_button_last_state 
+7cf5 70467800 jam 0 ,mem_ui_button_timer 
+7cf6 20407d02 call lpm_button_clean_wake_lock 
+7cf7 700a992d jam bt_evt_button_up ,mem_fifo_temp 
+7cf8 20207d86 branch ui_ipc_send_event 
+
+ui_button_check_long_press:
+7cf9 6800c678 fetch 1 ,mem_ui_button_timer 
+7cfa 207a0000 rtn blank 
+7cfb 1fe0ffff increase -1 ,pdata 
+7cfc 6000c678 store 1 ,mem_ui_button_timer 
+7cfd 247a0000 nrtn blank 
+7cfe 700a9910 jam bt_evt_button_long_pressed ,mem_fifo_temp 
+7cff 20207d86 branch ui_ipc_send_event 
+
+lpm_button_get_wake_lock:
+7d00 d8e00007 arg wake_lock_button ,queue 
+7d01 20202c32 branch lpm_get_wake_lock 
+
+lpm_button_clean_wake_lock:
+7d02 d8e00007 arg wake_lock_button ,queue 
+7d03 20202c36 branch lpm_put_wake_lock 
+
+calc_curr_struct_prt:
+7d04 6801421b fetch 2 ,mem_ui_led_struct_ptr 
+7d05 1a2fa40b mul32 rega ,led_offset_length ,regb 
+7d06 9a40a400 iadd regb ,regb 
+7d07 20600000 rtn 
+
+ui_led_init_global:
+7d08 6800c21a fetch 1 ,mem_ui_led_struct_num 
+7d09 207a0000 rtn blank 
+7d0a 1fe27200 copy pdata ,loopcnt 
+7d0b 6801421b fetch 2 ,mem_ui_led_struct_ptr 
+7d0c 1fe22400 copy pdata ,regb 
+
+ui_led_init_loop:
+7d0d 1a40a602 add regb ,led_offset_led_gpio ,regc 
+7d0e ea688000 ifetcht 1 ,regc 
+7d0f 2040680e call gpio_config_output 
+7d10 20407d32 call ui_led_off_static 
+7d11 1a40a40b increase led_offset_length ,regb 
+7d12 c2007d0d loop ui_led_init_loop 
+7d13 20600000 rtn 
+
+ui_led_on_global:
+7d14 20407d04 call calc_curr_struct_prt 
+7d15 58000002 setarg ui_led_state_lighting 
+7d16 e2408000 istore 1 ,regb 
+7d17 20407d5e call ui_led_stop_timer 
+7d18 20207d35 branch ui_led_on_static 
+
+ui_led_blink_stop_global:
+
+ui_led_off_global:
+7d19 20407d04 call calc_curr_struct_prt 
+7d1a 58000003 setarg ui_led_state_darking 
+7d1b e2408000 istore 1 ,regb 
+7d1c 20407d5e call ui_led_stop_timer 
+7d1d 20207d32 branch ui_led_off_static 
+
+ui_led_blink_start_global:
+7d1e 20407d04 call calc_curr_struct_prt 
+7d1f 58000001 setarg ui_led_state_blink_start 
+7d20 e2408000 istore 1 ,regb 
+7d21 580000ff setarg led_infinite_flash_num 
+7d22 e0a08000 istore 1 ,contw 
+7d23 20207d32 branch ui_led_off_static 
+
+ui_led_set_style_global:
+7d24 20407d04 call calc_curr_struct_prt 
+7d25 df20000b arg led_offset_length ,loopcnt 
+7d26 1a620c00 copy regc ,contr 
+7d27 1a420a00 copy regb ,contw 
+7d28 20207ef4 branch memcpy_fast 
+
+ui_led_dispatch:
+7d29 6800c21a fetch 1 ,mem_ui_led_struct_num 
+7d2a 207a0000 rtn blank 
+7d2b da200000 arg 0 ,rega 
+
+ui_led_blink_polling:
+7d2c 20407d38 call ui_led_change_style_by_type 
+7d2d 1a20a201 increase 1 ,rega 
+7d2e 6800c21a fetch 1 ,mem_ui_led_struct_num 
+7d2f 9a267c00 isub rega ,null 
+7d30 20628000 rtn zero 
+7d31 20207d2c branch ui_led_blink_polling 
+
+ui_led_off_static:
+7d32 1a40a602 add regb ,led_offset_led_gpio ,regc 
+7d33 ea688000 ifetcht 1 ,regc 
+7d34 20206825 branch gpio_out_inactive 
+
+ui_led_on_static:
+7d35 1a40a602 add regb ,led_offset_led_gpio ,regc 
+7d36 ea688000 ifetcht 1 ,regc 
+7d37 20206829 branch gpio_out_active 
+
+ui_led_change_style_by_type:
+7d38 1a208e0b add rega ,ui_led_blink ,queue 
+7d39 20407f16 call timer_check 
+7d3a 247a0000 nrtn blank 
+7d3b 20407d04 call calc_curr_struct_prt 
+7d3c ea408000 ifetch 1 ,regb 
+7d3d c0017d35 beq ui_led_state_lighting ,ui_led_on_static 
+7d3e c001fd32 beq ui_led_state_darking ,ui_led_off_static 
+7d3f c0007d32 beq ui_led_state_blink_stop ,ui_led_off_static 
+7d40 c002fd4c beq ui_led_state_blink_darking ,ui_led_blink_state_darking 
+
+ui_led_blink_state_lighting:
+7d41 20407d35 call ui_led_on_static 
+7d42 1a40a607 add regb ,led_offset_cb_ledon ,regc 
+7d43 20407e7c call push_stack 
+7d44 ea610000 ifetch 2 ,regc 
+7d45 20407f9c call callback_func 
+7d46 20407e8c call pop_stack 
+7d47 58000005 setarg ui_led_state_blink_darking 
+7d48 e2408000 istore 1 ,regb 
+7d49 1a40a603 add regb ,led_offset_on_time ,regc 
+7d4a ea610000 ifetch 2 ,regc 
+7d4b 20207d5c branch ui_led_blink_timer_start 
+
+ui_led_blink_state_darking:
+7d4c 20407d32 call ui_led_off_static 
+7d4d 1a40a609 add regb ,led_offset_cb_ledoff ,regc 
+7d4e 20407e7c call push_stack 
+7d4f ea610000 ifetch 2 ,regc 
+7d50 20407f9c call callback_func 
+7d51 20407e8c call pop_stack 
+7d52 1a40a601 add regb ,led_offset_blink_count ,regc 
+7d53 ea608000 ifetch 1 ,regc 
+7d54 c07ffd58 beq led_infinite_flash_num ,ui_led_blink_infinite 
+7d55 1fe0ffff increase -1 ,pdata 
+7d56 e2608000 istore 1 ,regc 
+7d57 203a7d19 branch ui_led_blink_stop_global ,blank 
+
+ui_led_blink_infinite:
+7d58 58000004 setarg ui_led_state_blink_lighting 
+7d59 e2408000 istore 1 ,regb 
+7d5a 1a40a605 add regb ,led_offset_off_time ,regc 
+7d5b ea610000 ifetch 2 ,regc 
+
+ui_led_blink_timer_start:
+7d5c 1a208e0b add rega ,ui_led_blink ,queue 
+7d5d 20207f08 branch timer_init 
+
+ui_led_stop_timer:
+7d5e 58000000 setarg 0 
+7d5f 20207d5c branch ui_led_blink_timer_start 
+
+ui_timer_timeout:
+7d60 58001000 setarg 0x1000 
+7d61 1ff07e00 lshift16 pdata ,pdata 
+7d62 9a40a400 iadd regb ,regb 
+7d63 20600000 rtn 
+
+ui_timer_check:
+7d64 477a403e bpatchx patch3e_4 ,mem_patch3e 
+7d65 da200000 arg 0 ,rega 
+7d66 680a467a fetcht 4 ,mem_ui_timer_last_btclk 
+7d67 1c422400 copy clkn_bt ,regb 
+7d68 1a427e00 copy regb ,pdata 
+7d69 98467c00 isub temp ,null 
+7d6a 24417d60 ncall ui_timer_timeout ,positive 
+
+ui_timer_check_loop:
+7d6b 1a427e00 copy regb ,pdata 
+7d6c 184084a0 increase 160 ,temp 
+7d6d 184084a0 increase 160 ,temp 
+7d6e 98467c00 isub temp ,null 
+7d6f 24217d78 nbranch ui_timer_check_end ,positive 
+7d70 1a20a201 increase 1 ,rega 
+7d71 1a217e0f and rega ,0x0f ,pdata 
+7d72 243a7d6b nbranch ui_timer_check_loop ,blank 
+7d73 da200000 arg 0 ,rega 
+7d74 20407d7f call ui_timer_check_send_evt 
+
+ui_timer_init:
+7d75 1c427e00 copy clkn_bt ,pdata 
+7d76 6002467a store 4 ,mem_ui_timer_last_btclk 
+7d77 20600000 rtn 
+
+ui_timer_check_end:
+7d78 477ac03e bpatchx patch3e_5 ,mem_patch3e 
+7d79 1a227e00 copy rega ,pdata 
+7d7a 207a0000 rtn blank 
+7d7b 18408560 increase -160 ,temp 
+7d7c 18408560 increase -160 ,temp 
+7d7d 793f841c set0 28 ,temp 
+7d7e 600a467a storet 4 ,mem_ui_timer_last_btclk 
+
+ui_timer_check_send_evt:
+7d7f 2020335f branch app_evt_timer 
+
+ui_ipc_get_lock:
+7d80 70466601 jam 1 ,mem_ipc_lock_bt 
+
+ui_ipc_get_lock_wait:
+7d81 6800c667 fetch 1 ,mem_ipc_lock_c51 
+7d82 243a7d81 nbranch ui_ipc_get_lock_wait ,blank 
+7d83 20600000 rtn 
+
+ui_ipc_put_lock:
+7d84 70466600 jam 0 ,mem_ipc_lock_bt 
+7d85 20600000 rtn 
+
+ui_ipc_send_event:
+7d86 477b403e bpatchx patch3e_6 ,mem_patch3e 
+7d87 20407d80 call ui_ipc_get_lock 
+7d88 1a227e00 copy rega ,pdata 
+7d89 60020a91 store 4 ,mem_ipc_rega_temp 
+7d8a da204668 arg mem_ipc_fifo_bt2c51 ,rega 
+7d8b 20407fb8 call fifo_in 
+7d8c 68020a91 fetch 4 ,mem_ipc_rega_temp 
+7d8d 1fe22200 copy pdata ,rega 
+7d8e 20207d84 branch ui_ipc_put_lock 
+
+ui_ipc_send_cmd:
+7d8f 477bc03e bpatchx patch3e_7 ,mem_patch3e 
+7d90 20407d80 call ui_ipc_get_lock 
+7d91 1a227e00 copy rega ,pdata 
+7d92 60020a91 store 4 ,mem_ipc_rega_temp 
+7d93 da204670 arg mem_ipc_fifo_c512bt ,rega 
+7d94 20407fb8 call fifo_in 
+7d95 68020a91 fetch 4 ,mem_ipc_rega_temp 
+7d96 1fe22200 copy pdata ,rega 
+7d97 20207d84 branch ui_ipc_put_lock 
+
+ui_ipc_clean_all_fifo:
+7d98 58000000 setarg 0 
+7d99 60044670 store util_fifo_len ,mem_ipc_fifo_c512bt 
+7d9a 60044668 store util_fifo_len ,mem_ipc_fifo_bt2c51 
+7d9b 20600000 rtn 
+
+check_51cmd:
+7d9c 477c403f bpatchx patch3f_0 ,mem_patch3f 
+7d9d 6800c1ce fetch 1 ,mem_hci_cmd 
+7d9e 247a0000 nrtn blank 
+7d9f da204670 arg mem_ipc_fifo_c512bt ,rega 
+7da0 20407fd0 call fifo_is_empty 
+7da1 207a0000 rtn blank 
+7da2 700a9000 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
+7da3 20407da7 call check_51cmd_once 
+7da4 68008a90 fetch 1 ,mem_ipc_skip_continue_proc 
+7da5 203a7d9c branch check_51cmd ,blank 
+7da6 20600000 rtn 
+
+check_51cmd_once:
+7da7 20407d80 call ui_ipc_get_lock 
+7da8 da204670 arg mem_ipc_fifo_c512bt ,rega 
+7da9 20407fc4 call fifo_out 
+7daa 1fe20400 copy pdata ,temp 
+7dab 20407d84 call ui_ipc_put_lock 
+7dac 477cc03f bpatchx patch3f_1 ,mem_patch3f 
+7dad 18427e00 copy temp ,pdata 
+7dae 207a0000 rtn blank 
+7daf c000fddd beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
+7db0 c0017de2 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
+7db1 c001fde8 beq bt_cmd_reconnect ,check_51cmd_reconnect 
+7db2 c003fded beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
+7db3 c0047dee beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
+7db4 c004fdef beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
+7db5 c005fdf2 beq bt_cmd_start_inquiry ,check_51cmd_inq 
+7db6 c0067df3 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
+7db7 c006fdf4 beq bt_cmd_start_adv ,check_51cmd_adv 
+7db8 c0077dfa beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
+7db9 c007fdff beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
+7dba c0087e05 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
+7dbb c009fe0f beq bt_cmd_led_off ,check_51cmd_led_off 
+7dbc c00a7e11 beq bt_cmd_led_on ,check_51cmd_led_on 
+7dbd c00afe13 beq bt_cmd_led_blink ,check_51cmd_led_start_blink 
+7dbe c00b7e15 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
+7dbf c00bfe18 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
+7dc0 c00c7e1a beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
+7dc1 c00cfe1d beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
+7dc2 c00dfe25 beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
+7dc3 c00f7e2f beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
+7dc4 60008a99 store 1 ,mem_fifo_temp 
+7dc5 477d403f bpatchx patch3f_2 ,mem_patch3f 
+7dc6 204062bc call lmo_fifo_check 
+7dc7 243a7ddb nbranch check_51cmd_restore ,blank 
+
+check_51cmd_once_continue:
+7dc8 68008a99 fetch 1 ,mem_fifo_temp 
+7dc9 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+7dca c0027dea beq bt_cmd_disconnect ,check_51cmd_disconnect 
+7dcb c002cd17 beq bt_cmd_enter_sniff ,cmd_in_sniff 
+7dcc c0034d26 beq bt_cmd_exit_sniff ,cmd_exit_sniff 
+7dcd c0057df0 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
+7dce c008fe0a beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
+7dcf c0097e0e beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
+7dd0 c00efe26 beq bt_cmd_role_switch ,check_51cmd_role_switch 
+7dd1 c00fe7cc beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
+7dd2 c01067d0 beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
+7dd3 c010fe31 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
+7dd4 c012e70b beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
+7dd5 20600000 rtn 
+
+check_51cmd_check_idle:
+7dd6 60008a99 store 1 ,mem_fifo_temp 
+7dd7 20402252 call context_check_idle 
+7dd8 2022fddb branch check_51cmd_restore ,zero 
+7dd9 2040225a call context_search_plap 
+7dda 24628000 nrtn zero 
+
+check_51cmd_restore:
+7ddb 700a9001 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
+7ddc 20207d8f branch ui_ipc_send_cmd 
+
+check_51cmd_start_discovery:
+7ddd 68014682 fetch 2 ,mem_ui_state_map 
+7dde 79207e06 set1 ui_state_bt_discovery 
+7ddf 60014682 store 2 ,mem_ui_state_map 
+7de0 70409303 jam 3 ,mem_scan_mode 
+7de1 20600000 rtn 
+
+check_51cmd_stop_discovery:
+7de2 70468000 jam 0 ,mem_hid_handshake_timer_count 
+7de3 70409300 jam 0 ,mem_scan_mode 
+7de4 68014682 fetch 2 ,mem_ui_state_map 
+7de5 793ffe06 set0 ui_state_bt_discovery 
+7de6 60014682 store 2 ,mem_ui_state_map 
+7de7 20600000 rtn 
+
+check_51cmd_reconnect:
+7de8 7041ce05 jam hci_cmd_create_conn ,mem_hci_cmd 
+7de9 20600000 rtn 
+
+check_51cmd_disconnect:
+7dea 70007c07 jam lmp_detach ,mem_lmo_opcode2 
+7deb 7004ca13 jam other_end_terminated ,mem_disconn_reason_send 
+7dec 20600000 rtn 
+
+check_51cmd_enter_sniff_subrating:
+7ded 20600000 rtn 
+
+check_51cmd_exit_sniff_subrating:
+7dee 20600000 rtn 
+
+check_51cmd_sniff_test:
+7def 20600000 rtn 
+
+check_51cmd_pincode:
+7df0 7004d402 jam pincode_state_pincode_ready ,mem_pincode_state 
+7df1 20204d0a branch cmd_pair 
+
+check_51cmd_inq:
+7df2 20600000 rtn 
+
+check_51cmd_stop_inq:
+7df3 20600000 rtn 
+
+check_51cmd_adv:
+7df4 70436e01 jam on ,mem_le_adv_enable 
+7df5 70448400 jam adv_ind ,mem_le_adv_type 
+7df6 68014682 fetch 2 ,mem_ui_state_map 
+7df7 79207e0b set1 ui_state_ble_adv ,pdata 
+7df8 60014682 store 2 ,mem_ui_state_map 
+7df9 20600000 rtn 
+
+check_51cmd_stop_adv:
+7dfa 68014682 fetch 2 ,mem_ui_state_map 
+7dfb 793ffe0b set0 ui_state_ble_adv ,pdata 
+7dfc 60014682 store 2 ,mem_ui_state_map 
+7dfd 70436e00 jam off ,mem_le_adv_enable 
+7dfe 20600000 rtn 
+
+check_51cmd_direct_adv:
+7dff 70436e01 jam on ,mem_le_adv_enable 
+7e00 70448401 jam adv_direct_ind ,mem_le_adv_type 
+7e01 68014682 fetch 2 ,mem_ui_state_map 
+7e02 79207e0b set1 ui_state_ble_adv ,pdata 
+7e03 60014682 store 2 ,mem_ui_state_map 
+7e04 20600000 rtn 
+
+check_51cmd_stop_direct_adv:
+7e05 68014682 fetch 2 ,mem_ui_state_map 
+7e06 793ffe0b set0 ui_state_ble_adv ,pdata 
+7e07 60014682 store 2 ,mem_ui_state_map 
+7e08 70436e00 jam off ,mem_le_adv_enable 
+7e09 20600000 rtn 
+
+check_51cmd_le_disconnect:
+7e0a 58000014 setarg 20 
+7e0b 6001046d store 2 ,mem_le_superto 
+7e0c 600144ba store 2 ,mem_le_init_superto 
+7e0d 20205c92 branch le_send_terminate_ind_user_terminated 
+
+check_51cmd_ble_update_connect_param:
+7e0e 20205abf branch le_l2cap_tx_update_req 
+
+check_51cmd_led_off:
+7e0f da200000 arg 0 ,rega 
+7e10 20207d19 branch ui_led_off_global 
+
+check_51cmd_led_on:
+7e11 da200000 arg 0 ,rega 
+7e12 20207d14 branch ui_led_on_global 
+
+check_51cmd_led_start_blink:
+7e13 da200000 arg 0 ,rega 
+7e14 20207d1e branch ui_led_blink_start_global 
+
+check_51cmd_le_start_con:
+7e15 70436901 jam on ,mem_le_scan_enable 
+7e16 7041ce1b jam hci_cmd_le_create_conn ,mem_hci_cmd 
+7e17 20600000 rtn 
+
+check_51cmd_start_scan:
+7e18 70436901 jam on ,mem_le_scan_enable 
+7e19 20600000 rtn 
+
+check_51cmd_stop_scan:
+7e1a 70436900 jam off ,mem_le_scan_enable 
+7e1b 7041ce00 jam 0 ,mem_hci_cmd 
+7e1c 20600000 rtn 
+
+check_51cmd_hibernate:
+7e1d 680141eb fetch 2 ,mem_cb_before_hibernate 
+7e1e 20407f9c call callback_func 
+7e1f 6800c686 fetch 1 ,mem_ui_button_gpio 
+7e20 c07ffe23 beq ui_button_gpio_disable ,check_51cmd_hibernate_btn_disabled 
+7e21 1fe20400 copy pdata ,temp 
+7e22 204067fb call gpio_config_input 
+
+check_51cmd_hibernate_btn_disabled:
+7e23 20407d98 call ui_ipc_clean_all_fifo 
+7e24 20202b1f branch lpm_hibernate 
+
+check_51cmd_le_smp_sec_req:
+7e25 20205b02 branch le_send_smp_security_request 
+
+check_51cmd_role_switch:
+7e26 70007c34 jam lmp_slot_offset ,mem_lmo_opcode2 
+7e27 79200003 set1 mark_switch_initiated ,mark 
+7e28 24748000 nrtn master 
+7e29 70455b00 jam switch_flag_init ,mem_switch_flag 
+7e2a 70007c13 jam lmp_switch_req ,mem_lmo_opcode2 
+7e2b 6800816d fetch 1 ,mem_connection_options 
+7e2c 793ffe02 set0 connection_switch ,pdata 
+7e2d 6000816d store 1 ,mem_connection_options 
+7e2e 20600000 rtn 
+
+check_51cmd_bb_reconn_cancel:
+7e2f 18000e03 force page_length_timer ,queue 
+7e30 20207f07 branch timer_stop 
+
+check_51cmd_dhkey_not_accept:
+7e31 204062f8 call tid_set_reply 
+7e32 70007d41 jam lmp_dhkey_check ,mem_lmi_opcode2 
+7e33 20205f9d branch parse_lmp_dhkey_check_reject 
+
+ui_check_paring_button:
+7e34 6800c682 fetch 1 ,mem_ui_state_map 
+7e35 c4060000 rtnbit0 ui_state_btn_down 
+7e36 c4038000 rtnbit0 ui_state_bt_reconnect 
+7e37 20207e2f branch check_51cmd_bb_reconn_cancel 
+
+queue_init:
+7e38 68014218 fetch 2 ,mem_queue_ptr 
+7e39 1fe08a02 add pdata ,queue_offset_curr_num ,contw 
+7e3a 58000000 setarg 0 
+7e3b e0a18000 istore 3 ,contw 
+7e3c 20600000 rtn 
+
+queue_push:
+7e3d 20407fe9 call disable_user 
+7e3e 20407e69 call queue_full 
+7e3f 207a0000 rtn blank 
+7e40 68014218 fetch 2 ,mem_queue_ptr 
+7e41 1fe0a402 add pdata ,queue_offset_curr_num ,regb 
+7e42 ea488000 ifetcht 1 ,regb 
+7e43 18408401 increase 1 ,temp 
+7e44 e2488000 istoret 1 ,regb 
+7e45 efe88000 ifetcht 1 ,pdata 
+7e46 18427200 copy temp ,loopcnt 
+7e47 1fe0a404 add pdata ,queue_offset_write_ptr ,regb 
+7e48 ea408000 ifetch 1 ,regb 
+7e49 984ffe00 imul32 temp ,pdata 
+7e4a 98c08a00 iadd contr ,contw 
+7e4b 1a220c00 copy rega ,contr 
+
+calc_queue_next_ptr:
+7e4c 20407f01 call memcpy 
+7e4d 20407e6d call queue_get_size 
+7e4e 1fe0ffff pincrease -1 
+7e4f ea488000 ifetcht 1 ,regb 
+7e50 18408401 increase 1 ,temp 
+7e51 98410400 iand temp ,temp 
+7e52 e2488000 istoret 1 ,regb 
+7e53 20207fe7 branch enable_user 
+
+queue_pop:
+7e54 20407fe9 call disable_user 
+7e55 20407e65 call queue_empty 
+7e56 207a0000 rtn blank 
+7e57 68014218 fetch 2 ,mem_queue_ptr 
+7e58 1fe0a402 add pdata ,queue_offset_curr_num ,regb 
+7e59 ea488000 ifetcht 1 ,regb 
+7e5a 184085ff increase -1 ,temp 
+7e5b e2488000 istoret 1 ,regb 
+7e5c efe88000 ifetcht 1 ,pdata 
+7e5d 18427200 copy temp ,loopcnt 
+7e5e 1fe0a403 add pdata ,queue_offset_read_ptr ,regb 
+7e5f ea408000 ifetch 1 ,regb 
+7e60 984ffe00 imul32 temp ,pdata 
+7e61 98c08c00 iadd contr ,contr 
+7e62 18c08c01 increase 1 ,contr 
+7e63 1a220a00 copy rega ,contw 
+7e64 20207e4c branch calc_queue_next_ptr 
+
+queue_empty:
+7e65 68014218 fetch 2 ,mem_queue_ptr 
+7e66 1fe08c02 add pdata ,queue_offset_curr_num ,contr 
+7e67 e8c08000 ifetch 1 ,contr 
+7e68 20600000 rtn 
+
+queue_full:
+7e69 20407e6d call queue_get_size 
+7e6a e8c88000 ifetcht 1 ,contr 
+7e6b 98467e00 isub temp ,pdata 
+7e6c 20600000 rtn 
+
+queue_get_size:
+7e6d 68014218 fetch 2 ,mem_queue_ptr 
+7e6e 1fe08c01 add pdata ,queue_offset_length ,contr 
+7e6f e8c08000 ifetch 1 ,contr 
+7e70 20600000 rtn 
+
+right_shift_n:
+7e71 1f267c00 sub loopcnt ,0 ,null 
+7e72 20628000 rtn zero 
+
+right_shift_n_loop:
+7e73 1fe37e00 rshift pdata ,pdata 
+7e74 c2007e73 loop right_shift_n_loop 
+7e75 20600000 rtn 
+
+left_shift_n:
+7e76 18007e01 force 1 ,pdata 
+7e77 1f267c00 sub loopcnt ,0 ,null 
+7e78 20628000 rtn zero 
+
+left_shift_n_loop:
+7e79 1fe3fe00 lshift pdata ,pdata 
+7e7a c2007e79 loop left_shift_n_loop 
+7e7b 20600000 rtn 
+
+push_stack:
+7e7c 18a27e00 deposit contw 
+7e7d 60010abb store 2 ,mem_contw 
+7e7e 600c0aa2 storet 8 ,mem_temp 
+7e7f 19627e00 deposit timeup 
+7e80 60020aaa store 4 ,mem_timeup 
+7e81 20407e85 call push_stack_rega_b_c 
+7e82 18c27e00 deposit contr 
+7e83 60010ab9 store 2 ,mem_contr 
+7e84 20600000 rtn 
+
+push_stack_rega_b_c:
+7e85 1a227e00 deposit rega 
+7e86 60020aae store 4 ,mem_rega 
+7e87 1a427e00 deposit regb 
+7e88 60020ab2 store 4 ,mem_regb 
+7e89 1a627e00 deposit regc 
+7e8a 60018ab6 store 3 ,mem_regc 
+7e8b 20600000 rtn 
+
+pop_stack:
+7e8c 680c0aa2 fetcht 8 ,mem_temp 
+7e8d 68020aaa fetch 4 ,mem_timeup 
+7e8e 98001600 iforce timeup 
+7e8f 20407e95 call pop_stack_rega_b_c 
+7e90 68010abb fetch 2 ,mem_contw 
+7e91 98000a00 iforce contw 
+7e92 68010ab9 fetch 2 ,mem_contr 
+7e93 98000c00 iforce contr 
+7e94 20600000 rtn 
+
+pop_stack_rega_b_c:
+7e95 68020aae fetch 4 ,mem_rega 
+7e96 98002200 iforce rega 
+7e97 68020ab2 fetch 4 ,mem_regb 
+7e98 98002400 iforce regb 
+7e99 68018ab6 fetch 3 ,mem_regc 
+7e9a 98002600 iforce regc 
+7e9b 20600000 rtn 
+
+get_contw:
+7e9c 68010abb fetch 2 ,mem_contw 
+7e9d 1fe20a00 copy pdata ,contw 
+7e9e 20600000 rtn 
+
+get_contr:
+7e9f 68010ab9 fetch 2 ,mem_contr 
+7ea0 1fe20c00 copy pdata ,contr 
+7ea1 20600000 rtn 
+
+store_contw:
+7ea2 18a27e00 copy contw ,pdata 
+7ea3 60010abb store 2 ,mem_contw 
+7ea4 20600000 rtn 
+
+store_contr:
+7ea5 18c27e00 copy contr ,pdata 
+7ea6 60010ab9 store 2 ,mem_contr 
+7ea7 20600000 rtn 
+
+save_cont_pointers:
+7ea8 18a27e00 copy contw ,pdata 
+7ea9 60010a97 store 2 ,mem_hold_contw 
+7eaa 18c27e00 copy contr ,pdata 
+7eab 60010a95 store 2 ,mem_hold_contr 
+7eac 20600000 rtn 
+
+load_cont_pointers:
+7ead 68010a97 fetch 2 ,mem_hold_contw 
+7eae 1fe20a00 copy pdata ,contw 
+7eaf 68010a95 fetch 2 ,mem_hold_contr 
+7eb0 1fe20c00 copy pdata ,contr 
+7eb1 20600000 rtn 
+
+memcpy96:
+7eb2 20407ebd call memcpy32 
+
+memcpy64:
+7eb3 20407ebd call memcpy32 
+7eb4 20207ebd branch memcpy32 
+
+memcpy12:
+7eb5 20407eb9 call memcpy8 
+
+memcpy4:
+7eb6 e8c20000 ifetch 4 ,contr 
+7eb7 e0a20000 istore 4 ,contw 
+7eb8 20600000 rtn 
+
+memcpy8:
+7eb9 e8c40000 ifetch 8 ,contr 
+7eba e0a40000 istore 8 ,contw 
+7ebb 20600000 rtn 
+
+memcpy48:
+7ebc 20407ebf call memcpy16 
+
+memcpy32:
+7ebd 20407eb9 call memcpy8 
+
+memcpy24:
+7ebe 20407eb9 call memcpy8 
+
+memcpy16:
+7ebf 20407eb9 call memcpy8 
+7ec0 20207eb9 branch memcpy8 
+
+delay_10ms:
+7ec1 df20000a arg 10 ,loopcnt 
+
+delay_ms_wait:
+7ec2 20002ee0 nop 12000 
+7ec3 c2007ec2 loop delay_ms_wait 
+7ec4 20600000 rtn 
+
+bn_zero:
+7ec5 18007203 force 3 ,loopcnt 
+
+memset0:
+7ec6 18007e00 force 0 ,pdata 
+
+memset8:
+7ec7 e0a40000 istore 8 ,contw 
+7ec8 c2007ec7 loop memset8 
+7ec9 20600000 rtn 
+
+memset0_8:
+7eca 18007e00 force 0 ,pdata 
+7ecb e0a40000 istore 8 ,contw 
+7ecc 20600000 rtn 
+
+memset0_4:
+7ecd 18007e00 force 0 ,pdata 
+7ece e0a20000 istore 4 ,contw 
+7ecf 20600000 rtn 
+
+clear_mem_256:
+7ed0 18007204 force 4 ,loopcnt 
+7ed1 20207ec6 branch memset0 
+
+clear_mem_512:
+7ed2 18007208 force 8 ,loopcnt 
+7ed3 20207ec6 branch memset0 
+
+clear_mem:
+7ed4 1f227e00 deposit loopcnt 
+7ed5 207a0000 rtn blank 
+7ed6 58000000 setarg 0 
+
+clear_mem_loop:
+7ed7 e0a08000 istore 1 ,contw 
+7ed8 c2007ed7 loop clear_mem_loop 
+7ed9 20600000 rtn 
+
+clear_temp_block:
+7eda df200020 arg 32 ,loopcnt 
+7edb d8a00ac2 arg mem_temp_block0 ,contw 
+7edc 20207ed4 branch clear_mem 
+
+xor_loop:
+7edd ea620000 ifetch 4 ,regc 
+7ede ea2a0000 ifetcht 4 ,rega 
+7edf 9842fe00 ixor temp ,pdata 
+7ee0 e0a20000 istore 4 ,contw 
+7ee1 1a20a204 increase 4 ,rega 
+7ee2 1a60a604 increase 4 ,regc 
+7ee3 c2007edd loop xor_loop 
+7ee4 20600000 rtn 
+
+inverse_data:
+7ee5 477dc03f bpatchx patch3f_3 ,mem_patch3f 
+7ee6 1f227e00 copy loopcnt ,pdata 
+7ee7 1fe67c01 sub pdata ,1 ,null 
+7ee8 20610000 rtn positive 
+7ee9 9a20a400 iadd rega ,regb 
+7eea 1a40a5ff increase -1 ,regb 
+7eeb 1f237200 rshift loopcnt ,loopcnt 
+
+inverse_loop:
+7eec ea288000 ifetcht 1 ,rega 
+7eed ea408000 ifetch 1 ,regb 
+7eee e2208000 istore 1 ,rega 
+7eef e2488000 istoret 1 ,regb 
+7ef0 1a40a5ff increase -1 ,regb 
+7ef1 1a20a201 increase 1 ,rega 
+7ef2 c2007eec loop inverse_loop 
+7ef3 20600000 rtn 
+
+memcpy_fast:
+7ef4 1f227e00 deposit loopcnt 
+7ef5 207a0000 rtn blank 
+
+memcpy_fast_loop:
+7ef6 1f20f3f8 increase -8 ,loopcnt 
+7ef7 20417eb9 call memcpy8 ,positive 
+7ef8 20628000 rtn zero 
+7ef9 20217ef6 branch memcpy_fast_loop ,positive 
+7efa 1f20f208 increase 8 ,loopcnt 
+
+memcpy_fast_loop_four:
+7efb 1f20f3fc increase -4 ,loopcnt 
+7efc 20417eb6 call memcpy4 ,positive 
+7efd 20628000 rtn zero 
+7efe 20217efb branch memcpy_fast_loop_four ,positive 
+7eff 1f20f204 increase 4 ,loopcnt 
+7f00 20207f01 branch memcpy 
+
+memcpy:
+7f01 1f227e00 deposit loopcnt 
+7f02 207a0000 rtn blank 
+
+memcpy_loop:
+7f03 e8c08000 ifetch 1 ,contr 
+7f04 e0a08000 istore 1 ,contw 
+7f05 c2007f03 loop memcpy_loop 
+7f06 20600000 rtn 
+
+timer_stop:
+7f07 58000000 setarg 0 
+
+timer_init:
+7f08 1c430400 rshift clkn_bt ,temp 
+7f09 600a4094 storet 4 ,mem_last_clkn 
+7f0a d8a0419d arg mem_timers ,contw 
+7f0b 98000400 iforce temp 
+7f0c 18e3fe00 lshift queue ,pdata 
+7f0d 98a08a00 iadd contw ,contw 
+7f0e e0a90000 istoret 2 ,contw 
+7f0f 477e403f bpatchx patch3f_4 ,mem_patch3f 
+7f10 20600000 rtn 
+
+timer_check_timeout:
+7f11 d9600800 arg 0x800 ,timeup 
+7f12 19701600 lshift16 timeup ,timeup 
+7f13 9960fe00 iadd timeup ,pdata 
+7f14 20600000 rtn 
+
+timer_reinit:
+7f15 d8e00000 arg 0 ,queue 
+
+timer_check:
+7f16 477ec03f bpatchx patch3f_5 ,mem_patch3f 
+7f17 680a4094 fetcht 4 ,mem_last_clkn 
+7f18 1c437e00 rshift clkn_bt ,pdata 
+7f19 60024094 store 4 ,mem_last_clkn 
+7f1a 98467c00 isub temp ,null 
+7f1b 24417f11 ncall timer_check_timeout ,positive 
+7f1c 98461600 isub temp ,timeup 
+7f1d 19620400 copy timeup ,temp 
+7f1e d8c0419d arg mem_timers ,contr 
+7f1f 18c20a00 copy contr ,contw 
+7f20 df200010 arg 16 ,loopcnt 
+
+timer_loop:
+7f21 e8c10000 ifetch 2 ,contr 
+7f22 98467e00 isub temp ,pdata 
+7f23 20217f25 branch timer_counting ,positive 
+7f24 18007e00 force 0 ,pdata 
+
+timer_counting:
+7f25 e0a10000 istore 2 ,contw 
+7f26 c2007f21 loop timer_loop 
+7f27 d8c0419d arg mem_timers ,contr 
+7f28 18e3fe00 lshift queue ,pdata 
+7f29 98c08c00 iadd contr ,contr 
+7f2a e8c10000 ifetch 2 ,contr 
+7f2b 20600000 rtn 
+
+clk_add:
+7f2c 98408400 iadd temp ,temp 
+7f2d 18427200 copy temp ,loopcnt 
+7f2e 58000ea6 setarg 3750 
+7f2f 9f267e00 isub loopcnt ,pdata 
+7f30 20610000 rtn positive 
+7f31 1fe67e00 sub pdata ,0 ,pdata 
+7f32 18510400 rshift16 temp ,temp 
+7f33 18408401 increase 1 ,temp 
+7f34 18500400 lshift16 temp ,temp 
+7f35 98418400 ior temp ,temp 
+7f36 20600000 rtn 
+
+clk_diff_rt:
+7f37 20407f39 call clk_diff 
+7f38 20207f43 branch clk2rt 
+
+clk_diff:
+7f39 78547c00 disable user 
+7f3a 98467e00 isub temp ,pdata 
+7f3b 20217f3e branch clk_diff_pos ,positive 
+7f3c 78347c00 enable user 
+7f3d 1fe67e00 sub pdata ,0 ,pdata 
+
+clk_diff_pos:
+7f3e c4078000 rtnbit0 15 
+7f3f d85f0ea6 arg -61786 ,temp 
+7f40 9840fe00 iadd temp ,pdata 
+7f41 793ffe40 set0 64 ,pdata 
+7f42 20600000 rtn 
+
+clk2rt:
+7f43 98000c00 iforce contr 
+7f44 1ff17e00 rshift16 pdata ,pdata 
+7f45 d8400ea6 arg 3750 ,temp 
+7f46 984ffe00 imul32 temp ,pdata 
+7f47 98c0fe00 iadd contr ,pdata 
+7f48 20600000 rtn 
+
+clk2lpo:
+7f49 1fed7e00 lshift8 pdata ,pdata 
+7f4a 1ff27e00 lshift4 pdata ,pdata 
+7f4b 6809c16f fetcht 3 ,mem_clks_per_lpo 
+7f4c 9846fc00 idiv temp 
+7f4d 20407f86 call wait_div_end 
+7f4e 18078400 quotient temp 
+7f4f 20600000 rtn 
+
+clk2bt:
+7f50 d8400ea6 arg 3750 ,temp 
+7f51 9846fc00 idiv temp 
+7f52 20407f86 call wait_div_end 
+7f53 1807fe00 quotient pdata 
+7f54 1ff07e00 lshift16 pdata ,pdata 
+7f55 18070400 remainder temp 
+7f56 98418400 ior temp ,temp 
+7f57 20600000 rtn 
+
+string2dec_from_uart:
+7f58 d8400000 arg 0 ,temp 
+
+string2dec_from_uart_done:
+7f59 18422600 copy temp ,regc 
+7f5a e8608000 ifetch 1 ,contru 
+7f5b 20407f64 call uchar2dialog 
+7f5c 1a620400 copy regc ,temp 
+7f5d 20407f95 call swap 
+7f5e da40000a arg 10 ,regb 
+7f5f 9a4ffe00 imul32 regb ,pdata 
+7f60 9840fe00 iadd temp ,pdata 
+7f61 1fe20400 copy pdata ,temp 
+7f62 c2007f59 loop string2dec_from_uart_done 
+7f63 20600000 rtn 
+
+uchar2dialog:
+7f64 d840003a arg 0x3a ,temp 
+7f65 98467c00 isub temp ,null 
+7f66 24217f6d nbranch uchar2dialog_number ,positive 
+7f67 d8400061 arg 0x61 ,temp 
+7f68 98467c00 isub temp ,null 
+7f69 20217f70 branch uchar2dialog_a2f ,positive 
+7f6a d8400037 arg 0x37 ,temp 
+7f6b 98467e00 isub temp ,pdata 
+7f6c 20600000 rtn 
+
+uchar2dialog_number:
+7f6d d8400030 arg 0x30 ,temp 
+7f6e 98467e00 isub temp ,pdata 
+7f6f 20600000 rtn 
+
+uchar2dialog_a2f:
+7f70 d8400057 arg 0x57 ,temp 
+7f71 98467e00 isub temp ,pdata 
+7f72 20600000 rtn 
+
+pn9:
+7f73 18426000 copy temp ,alarm 
+7f74 580001ff setarg 0x1ff 
+7f75 18002400 force 0 ,regb 
+
+pn9_loop:
+7f76 1fe92200 rshift3 pdata ,rega 
+7f77 1a232200 rshift rega ,rega 
+7f78 9a22a200 ixor rega ,rega 
+7f79 2a2ffe00 isolate1 0 ,rega 
+7f7a 7920fe09 setflag true ,9 ,pdata 
+7f7b 18430400 rshift temp ,temp 
+7f7c 2feffe00 isolate1 0 ,pdata 
+7f7d 79208407 setflag true ,7 ,temp 
+7f7e 1fe37e00 rshift pdata ,pdata 
+7f7f 1a40a401 increase 1 ,regb 
+7f80 2a400e00 compare 0 ,regb ,0x7 
+7f81 2420ff76 nbranch pn9_loop ,true 
+7f82 e0a88000 istoret 1 ,contw 
+7f83 c2007f76 loop pn9_loop 
+7f84 1e020400 copy alarm ,temp 
+7f85 20600000 rtn 
+
+wait_div_end:
+7f86 207a8000 rtn modone 
+7f87 20207f86 branch wait_div_end 
+
+compare_loop:
+
+string_compare:
+7f88 ea208000 ifetch 1 ,rega 
+7f89 ea488000 ifetcht 1 ,regb 
+7f8a 98467c00 isub temp ,null 
+7f8b 24628000 nrtn zero 
+7f8c 1a20a201 increase 1 ,rega 
+7f8d 1a40a401 increase 1 ,regb 
+7f8e c2007f88 loop string_compare 
+7f8f 18007c00 force 0 ,null 
+7f90 20600000 rtn 
+
+ceiling:
+7f91 98467c00 isub temp ,null 
+7f92 24610000 nrtn positive 
+7f93 18427e00 deposit temp 
+7f94 20600000 rtn 
+
+swap:
+7f95 9840fe00 iadd temp ,pdata 
+7f96 98460400 isub temp ,temp 
+7f97 98467e00 isub temp ,pdata 
+7f98 20600000 rtn 
+
+clean_mem:
+7f99 df200200 arg 0x200 ,loopcnt 
+7f9a d8a04000 arg 0x4000 ,contw 
+7f9b 20207ec6 branch memset0 
+
+callback_func:
+7f9c 207a0000 rtn blank 
+7f9d 1fe27a00 copy pdata ,pc 
+
+wait_uarttx:
+7f9e 6811010e hfetch 2 ,core_uart_txitems 
+7f9f 243a7f9e nbranch wait_uarttx ,blank 
+7fa0 20600000 rtn 
+
+ice_break:
+7fa1 70820301 jam 0x1 ,core_ice_ctrl 
+7fa2 20600000 rtn 
+
+ice_setbp:
+7fa3 60110205 hstore 2 ,core_ice_break0 
+7fa4 68108203 hfetch 1 ,core_ice_ctrl 
+7fa5 79207e04 set1 4 ,pdata 
+7fa6 60108203 hstore 1 ,core_ice_ctrl 
+7fa7 20600000 rtn 
+
+ice_setbp2:
+7fa8 60110207 hstore 2 ,core_ice_break1 
+7fa9 68108203 hfetch 1 ,core_ice_ctrl 
+7faa 79207e06 set1 6 ,pdata 
+7fab 60108203 hstore 1 ,core_ice_ctrl 
+7fac 20600000 rtn 
+
+ice_set_write_bp:
+7fad 60110205 hstore 2 ,core_ice_break0 
+7fae 70820330 jam 0x30 ,core_ice_ctrl 
+7faf 20600000 rtn 
+
+test_enable_white:
+7fb0 68108043 hfetch 1 ,core_config 
+7fb1 793ffe04 set0 whiteoff_bit ,pdata 
+7fb2 60108043 hstore 1 ,core_config 
+7fb3 20600000 rtn 
+
+check_uart_tx_buff:
+7fb4 6811010e hfetch 2 ,core_uart_txitems 
+7fb5 d8400200 arg uart_air_control_threshold ,temp 
+
+pdata_sub_temp:
+7fb6 98467c00 isub temp ,null 
+7fb7 20600000 rtn 
+
+fifo_in:
+7fb8 477f403f bpatchx patch3f_6 ,mem_patch3f 
+7fb9 ea2c0000 ifetcht util_fifo_len ,rega 
+7fba 18417eff and temp ,0xff ,pdata 
+7fbb 243a7fbe nbranch fifo_in_push ,blank 
+7fbc 184cfe00 rshift8 temp ,pdata 
+7fbd e2240000 istore util_fifo_len ,rega 
+
+fifo_in_push:
+7fbe 1a20a207 increase util_fifo_len + util_fifo_offset ,rega 
+7fbf ea208000 ifetch 1 ,rega 
+7fc0 243a2a8c nbranch assert ,blank 
+7fc1 68008a99 fetch 1 ,mem_fifo_temp 
+7fc2 e2208000 istore 1 ,rega 
+7fc3 20600000 rtn 
+
+fifo_out:
+7fc4 477fc03f bpatchx patch3f_7 ,mem_patch3f 
+7fc5 df200008 arg util_fifo_len ,loopcnt 
+7fc6 ea240000 ifetch util_fifo_len ,rega 
+7fc7 207a0000 rtn blank 
+
+fifo_out_loop:
+7fc8 ea208000 ifetch 1 ,rega 
+7fc9 243a7fcd nbranch fifo_out_end ,blank 
+7fca 1a20a201 increase 1 ,rega 
+7fcb c2007fc8 loop fifo_out_loop 
+7fcc 20202a8c branch assert 
+
+fifo_out_end:
+7fcd d8400000 arg 0 ,temp 
+7fce e2288000 istoret 1 ,rega 
+7fcf 20600000 rtn 
+
+fifo_is_empty:
+7fd0 ea240000 ifetch util_fifo_len ,rega 
+7fd1 20600000 rtn 
+
+fifo_is_full:
+7fd2 ea208000 ifetch 1 ,rega 
+7fd3 20600000 rtn 
+
+fifo_is_near_full:
+7fd4 ea210000 ifetch 2 ,rega 
+7fd5 20600000 rtn 
+
+fifo_content_count:
+7fd6 d8400000 arg 0 ,temp 
+
+fifo_content_count_loop:
+7fd7 68008006 fetch 1 ,contr 
+7fd8 c2007fd7 loop fifo_content_count_loop ,blank 
+7fd9 18408401 increase 1 ,temp 
+7fda c2007fd7 loop fifo_content_count_loop 
+7fdb 18427e00 copy temp ,pdata 
+7fdc 20600000 rtn 
+
+not_greater_than:
+7fdd 98467c00 isub temp ,null 
+7fde 24610000 nrtn positive 
+7fdf 18427e00 copy temp ,pdata 
+7fe0 20600000 rtn 
+
+disable_positive:
+7fe1 18007dff force -1 ,null 
+7fe2 20600000 rtn 
+
+enable_positive:
+
+disable_zero:
+7fe3 18007c01 force 1 ,null 
+7fe4 20600000 rtn 
+
+enable_zero:
+7fe5 18007c00 force 0 ,null 
+7fe6 20600000 rtn 
+
+enable_user:
+7fe7 78347c00 enable user 
+7fe8 20600000 rtn 
+
+disable_user:
+7fe9 78547c00 disable user 
+7fea 20600000 rtn 
+
+enable_user2:
+7feb 78367c00 enable user2 
+7fec 20600000 rtn 
+
+disable_user2:
+7fed 78567c00 disable user2 
+7fee 20600000 rtn 
+
+disable_blank:
+7fef 58000001 setarg 1 
+7ff0 20600000 rtn 
+
+enable_blank:
+7ff1 58000000 setarg 0 
+7ff2 20600000 rtn 
+
+reverse_byte:
+7ff3 1f227e00 copy loopcnt ,pdata 
+7ff4 207a0000 rtn blank 
+7ff5 18c27e00 copy contr ,pdata 
+7ff6 9f20fe00 iadd loopcnt ,pdata 
+7ff7 1fe0ffff increase -1 ,pdata 
+7ff8 1fe20c00 copy pdata ,contr 
+
+reverse_loop:
+7ff9 e8c08000 ifetch 1 ,contr 
+7ffa 18c08dfe increase -2 ,contr 
+7ffb e0a08000 istore 1 ,contw 
+7ffc c2007ff9 loop reverse_loop 
+7ffd 20600000 rtn 
+org 0x10001
+
+z_entrance0:
+10001 c000001f  beq zcode_00 ,z_page_wait_fhs_reply_ok
+10002 c0008004  beq zcode_01 ,z_g24_transmit_by_interrupt
+10003 20600000  rtn
+
+z_g24_transmit_by_interrupt:
+10004 2040026b  call p_g24_timer_check
+10005 24740000  nrtn user
+10006 20400019  call z_g24_interval_calibrate
+10007 68014fc4  fetch 2 ,mem_24g_transmit_by_interrupt_exit_count
+10008 1fe0fe01  increase 1 ,pdata
+10009 60014fc4  store 2 ,mem_24g_transmit_by_interrupt_exit_count
+1000a 68094fc6  fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init
+1000b 98467c00  isub temp ,null
+1000c 2042800e  call z_g24_transmit_by_interrupt_exit ,zero
+1000d 2020009c  branch p_g24_transmit_process
+
+z_g24_transmit_by_interrupt_exit:
+1000e 704fc300  jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+1000f 58000000  setarg 0
+10010 60014fc4  store 2 ,mem_24g_transmit_by_interrupt_exit_count
+10011 58000019  setarg 25
+10012 60014fc6  store 2 ,mem_24g_transmit_by_interrupt_exit_count_init
+
+z_g24_interval_min:
+10013 704ebe00  jam 0 ,mem_24g_pac_index
+10014 6800cea9  fetch 1 ,mem_24g_interval_min
+
+z_g24_current_interval_store:
+10015 6000cea8  store 1 ,mem_24g_interval
+10016 20600000  rtn
+
+z_g24_interval_max:
+10017 6800ceaa  fetch 1 ,mem_24g_interval_max
+10018 20200015  branch z_g24_current_interval_store
+
+z_g24_interval_calibrate:
+10019 6800cebe  fetch 1 ,mem_24g_pac_index
+1001a 1fe0fe01  increase 1 ,pdata
+1001b 6000cebe  store 1 ,mem_24g_pac_index
+1001c c0020017  beq 4 ,z_g24_interval_max
+1001d c0028013  beq 5 ,z_g24_interval_min
+1001e 20600000  rtn
+
+z_page_wait_fhs_reply_ok:
+1001f 6800800e  fetch 1 ,mem_page_rcv_fhs
+10020 1fe0fe01  increase 1 ,pdata
+10021 6000800e  store 1 ,mem_page_rcv_fhs
+10022 20402435  call prepare_newconn
+
+z_master_newconn_loop:
+10023 7920002c  set1 mark_first_packet ,mark
+10024 204022f2  call master_newconn_once
+10025 202c002a  branch z_newconn_poll_responded ,sync
+10026 793f802c  set0 mark_first_packet ,mark
+10027 20402455  call new_conn_timeout
+10028 243a0023  nbranch z_master_newconn_loop ,blank
+10029 202020fc  branch page_restart
+
+z_newconn_poll_responded:
+1002a 793f802c  set0 mark_first_packet ,mark
+1002b 2020215f  branch newconn_poll_responded
+org 0x20001
+
+z_entrance1:
+20001 c0080004  beq zcode_10 ,z_mouse_bb_disconnected
+20002 c0088019  beq zcode_11 ,z_hid_rx_process
+20003 20600000  rtn
+
+z_mouse_bb_disconnected:
+20004 7049e300  jam 0 ,mem_mouse_enter_sniff_count
+20005 7041e30e  jam 0x0e ,mem_sniff_param_interval
+20006 204041e7  call mouse_bb_discon_clear_stack
+20007 68014208  fetch app_disc_rsn_size ,mem_app_disconn_reason
+20008 c283800e  bbit1 app_disc_ble ,z_mouse4_0_event_bb_disconn
+20009 c28033a9  bbit1 app_disc_by_button ,app_disconn_reason_clear
+2000a c2808012  bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing
+2000b c2810015  bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate
+2000c c2818015  bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+2000d 202042b0  branch mouse_start_discovery
+
+z_mouse4_0_event_bb_disconn:
+2000e 204041c1  call mouse_le_clean_connect_flag
+2000f 68014208  fetch app_disc_rsn_size ,mem_app_disconn_reason
+20010 c2850446  bbit1 app_disc_pb_button ,p_mouse_select_device_button_up
+20011 202041f7  branch mouse4_0_event_bb_disconn + 2
+
+z_mouse_event_light_state_pairing:
+20012 c2828015  bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate
+20013 c2818015  bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+20014 202042b0  branch mouse_start_discovery
+
+z_mouse_event_light_state_hibernate:
+20015 68014682  fetch 2 ,mem_ui_state_map
+20016 c28642b0  bbit1 ui_state_btn_down ,mouse_start_discovery
+20017 204033a9  call app_disconn_reason_clear
+20018 202033a7  branch app_bb_hibernate
+
+z_hid_rx_process:
+20019 68010264  fetch 2 ,mem_l2cap_payload_ptr
+2001a 1fe20c00  copy pdata ,contr
+2001b e8c08000  ifetch 1 ,contr
+2001c 6000ccdd  store 1 ,mem_l2cap_rcv
+2001d 1fe1040f  and pdata ,0x0f ,temp
+2001e 1ff1fe00  rshift4 pdata ,pdata
+2001f c0038022  beq hid_type_set_protocol ,z_hid_rx_set_protocol
+20020 c0008029  beq hid_type_control ,z_hid_rx_process_hid_control
+20021 20204d39  branch hid_rx_process + 6
+
+z_hid_rx_set_protocol:
+20022 20404d53  call hid_rx_process_handshake
+20023 704cde00  jam 0 ,mem_mouse_bt_boot_mode
+20024 6800ccdd  fetch 1 ,mem_l2cap_rcv
+20025 2feffe00  isolate1 0 ,pdata
+20026 20608000  rtn true
+20027 704cde01  jam 1 ,mem_mouse_bt_boot_mode
+20028 20600000  rtn
+
+z_hid_rx_process_hid_control:
+20029 18427e00  copy temp ,pdata
+2002a c0028412  beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug
+2002b 20204d41  branch hid_rx_process_hid_control + 2
+org 0x30001
+
+z_entrance2:
+30001 c010001f  beq zcode_20 ,z_send_lmp_escape
+30002 c010802c  beq zcode_21 ,z_send_lmp_accepted
+30003 c0110005  beq zcode_22 ,z_mouse_check_reconn_target
+30004 20600000  rtn
+
+z_mouse_check_reconn_target:
+30005 204002a3  call p_mouse_tx_power_init
+30006 6800c720  fetch 1 ,mem_device_flag
+30007 c00101b5  beq mode_24g_device ,p_mouse_start_24g_mode
+30008 c07f81b5  beq 0xff ,p_mouse_start_24g_mode
+30009 204004f6  call p_mouse_mode_bt_device1_multi_led_on
+3000a 6800c210  fetch 1 ,mem_xrecord_mode
+3000b c019800e  beq rec_3_mode ,z_mouse3_0_check_reconn_target
+3000c c01a0011  beq rec_4_mode ,z_mouse4_0_check_reconn_target
+3000d 202002a0  branch p_mouse_null_enter_hibernate_enable
+
+z_mouse3_0_check_reconn_target:
+3000e 680341d0  fetch 6 ,mem_hci_plap
+3000f 203a33eb  branch app_bt_start_discovery_short ,blank
+30010 20204274  branch mouse3_0_check_reconn_target + 3
+
+z_mouse4_0_check_reconn_target:
+30011 704d4501  jam 1 ,mem_le_send_security_request_flag
+30012 7047a101  jam 1 ,mem_mouse_le_reconnect_flag
+30013 d840000a  arg 10 ,temp
+30014 6800cd3e  fetch 1 ,mem_mouse_fast_conn_flag
+30015 c07f8017  beq 0xff ,z_mouse4_0_check_reconn_target_next
+30016 680946a8  fetcht 2 ,mem_mouse_direct_timeout
+
+z_mouse4_0_check_reconn_target_next:
+30017 600946ae  storet 2 ,mem_mouse_direct_timer
+30018 20403418  call app_lpm_mult_disable
+30019 204002a6  call p_le_check_adv_flag
+3001a 58000004  setarg adv_flag_bredr_not_supported
+3001b e0c08000  istore 1 ,contr
+3001c d8c04390  arg mem_le_scan_data ,contr
+3001d 204005ba  call p_le_adv_data_update
+3001e 20207df4  branch check_51cmd_adv
+
+z_send_lmp_escape:
+3001f 68008048  fetch 1 ,mem_lmp_to_send
+30020 c0420023  beq lmp_ext_features_res ,z_send_lmpext_features_res
+30021 c0418026  beq lmp_ext_features_req ,z_send_lmpext_features_req
+30022 2020603f  branch send_lmp_escape
+
+z_send_lmpext_features_res:
+30023 20400029  call z_check_ssp_enable
+30024 68008048  fetch 1 ,mem_lmp_to_send
+30025 20206099  branch send_lmpext_features_res
+
+z_send_lmpext_features_req:
+30026 20400029  call z_check_ssp_enable
+30027 68008048  fetch 1 ,mem_lmp_to_send
+30028 2020610d  branch send_lmpext_features_req
+
+z_check_ssp_enable:
+30029 6800c65a  fetch 1 ,mem_ssp_enable
+3002a 203a612b  branch ssp_disable ,blank
+3002b 20206124  branch ssp_enable
+
+z_send_lmp_accepted:
+3002c 18007e02  force 2 ,pdata
+3002d 20406298  call msg_send_lmp
+3002e 68008049  fetch 1 ,mem_lmi_opcode
+3002f e0a08000  istore 1 ,contw
+30030 6000ccd7  store 1 ,mem_lmi_opcode_temp
+30031 204062a7  call send_lmp_follow
+30032 6800ccd7  fetch 1 ,mem_lmi_opcode_temp
+30033 c0170035  beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
+30034 20206051  branch send_lmp_accepted + 7
+
+z_send_lmp_accepted_max_slot_req:
+30035 6800ccda  fetch 1 ,mem_bt_rcvd_switch_req_accept
+30036 207a0000  rtn blank
+30037 704cda00  jam 0 ,mem_bt_rcvd_switch_req_accept
+30038 6800ccdc  fetch 1 ,mem_bt_send_lmp_setup_complete
+30039 c1810000  rtnne 2
+3003a 704cdb01  jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+3003b 1c427e00  copy clkn_bt ,pdata
+3003c 600204e9  store 4 ,mem_aurand_send_delay_time
+3003d 20600000  rtn
+org 0x40001
+
+z_entrance3:
+40001 c0180003  beq zcode_30 ,z_process_conn_sm
+40002 20600000  rtn
+
+z_process_conn_sm:
+40003 204062bc  call lmo_fifo_check
+40004 247a0000  nrtn blank
+
+z_process_conn_sm_continue:
+40005 68008055  fetch 1 ,mem_conn_sm
+40006 207a0000  rtn blank
+40007 c0020025  beq conn_sm_send_conn_req ,z_host_create_conn_send_conn_req
+40008 c008000a  beq conn_sm_wait_switch_after_host_connection ,z_host_creat_conn_wait_switch
+40009 20206320  branch process_conn_sm_continue + 2
+
+z_host_creat_conn_wait_switch:
+4000a 6800c55b  fetch 1 ,mem_switch_flag
+4000b c1000000  rtneq switch_flag_init
+4000c c000800e  beq switch_flag_accept ,z_host_create_conn_switch_accept
+4000d 2020635f  branch host_creat_conn_wait_switch + 3
+
+z_host_create_conn_switch_accept:
+4000e 20748000  rtn master
+
+z_host_create_conn_auth_pair:
+4000f 6800816d  fetch 1 ,mem_connection_options
+40010 c2800012  bbit1 connection_auth ,z_host_create_conn_auth_pair_true
+40011 20206399  branch host_create_conn_auth_pair + 1
+
+z_host_create_conn_auth_pair_true:
+40012 6800ccdc  fetch 1 ,mem_bt_send_lmp_setup_complete
+40013 c000e39d  beq 1 ,host_create_conn_auth_pair_true
+40014 6800c1bd  fetch 1 ,mem_link_key_exists
+40015 203a63a9  branch host_create_conn_auth_pair_nokey ,blank
+40016 680084d1  fetch 1 ,mem_lmp_conn_state
+40017 c4018000  rtnbit0 sent_setup_complete
+40018 c4010000  rtnbit0 received_setup_complete
+40019 6800ccdb  fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch
+4001a 207a0000  rtn blank
+4001b 704cdb00  jam 0 ,mem_bt_send_max_slot_req_accept_after_switch
+4001c 680204e9  fetch 4 ,mem_aurand_send_delay_time
+4001d d8400014  arg 20 ,temp
+4001e 98408400  iadd temp ,temp
+4001f 1c427e00  copy clkn_bt ,pdata
+40020 98467c00  isub temp ,null
+40021 24210023  nbranch z_bt_send_max_slot_req_accept_after_switch_wait ,positive
+40022 20206349  branch host_create_conn_auth
+
+z_bt_send_max_slot_req_accept_after_switch_wait:
+40023 704cdb01  jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+40024 20600000  rtn
+
+z_host_create_conn_send_conn_req:
+40025 7049e414  jam 20 ,mem_mouse_send_switch_req_timer
+40026 2020636f  branch host_create_conn_send_conn_req
+org 0x50001
+
+z_entrance4:
+50001 c0200006  beq zcode_40 ,z_le_update_param
+50002 c0208018  beq zcode_41 ,z_le_update_channel_map
+50003 c0210025  beq zcode_42 ,z_le_mouse_bb_event_connect_complete
+50004 c021802b  beq zcode_43 ,z_quit_connection_cont
+50005 20600000  rtn
+
+z_le_update_param:
+50006 2040000e  call z_mouse_le_conn_param_check
+50007 2020557d  branch le_update_param + 8
+
+z_mouse_le_lpm_mult_reinit:
+50008 6800c7c7  fetch 1 ,mem_lpm_mult_init
+50009 6000c172  store 1 ,mem_lpm_mult
+
+z_mouse_le_conn_param_lpm_enable:
+5000a 7047c600  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+5000b 20600000  rtn
+
+z_mouse_le_conn_param_lpm_disable:
+5000c 7047c601  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+5000d 20600000  rtn
+
+z_mouse_le_conn_param_check:
+5000e 6800c3d6  fetch 1 ,mem_le_new_conninterval
+5000f 1fe67c0c  sub pdata ,le_interval_15ms ,null
+50010 2421000c  nbranch z_mouse_le_conn_param_lpm_disable ,positive
+50011 6800c3d8  fetch 1 ,mem_le_new_connslavelatency
+50012 6808c7c7  fetcht 1 ,mem_lpm_mult_init
+50013 98467c00  isub temp ,null
+50014 20210008  branch z_mouse_le_lpm_mult_reinit ,positive
+50015 6800c3d8  fetch 1 ,mem_le_new_connslavelatency
+50016 6000c172  store 1 ,mem_lpm_mult
+50017 2020000a  branch z_mouse_le_conn_param_lpm_enable
+
+z_le_update_channel_map:
+50018 6800843f  fetch 1 ,mem_le_state
+50019 c4030000  rtnbit0 lestate_update_map
+5001a 2040001d  call z_le_channel_map_overflow_check
+5001b 24740000  nrtn user
+5001c 202055a0  branch le_update_channel_map + 3
+
+z_le_channel_map_overflow_check:
+5001d 78347c00  enable user
+5001e 6800845a  fetch 1 ,mem_le_event_count + 1
+5001f 1ff1fe00  rshift4 pdata ,pdata
+50020 c1878000  rtnne 0x0f
+50021 68008460  fetch 1 ,mem_le_instant + 1
+50022 1ff1fe00  rshift4 pdata ,pdata
+50023 c1800000  rtnne 0x00
+50024 20207fe9  branch disable_user
+
+z_le_mouse_bb_event_connect_complete:
+50025 6800c7a1  fetch 1 ,mem_mouse_le_reconnect_flag
+50026 247a0000  nrtn blank
+50027 68008478  fetch 1 ,mem_le_att_handle
+50028 1fe67e1a  sub pdata ,26 ,pdata
+50029 24628000  nrtn zero
+5002a 20203d60  branch mouse_le_write_enable
+
+z_quit_connection_cont:
+5002b 204033af  call app_disconn_reason_collect_bt
+5002c 204026e9  call sniff_exit
+5002d 700a9902  jam bt_evt_bb_disconnected ,mem_fifo_temp
+5002e 20407d86  call ui_ipc_send_event
+5002f 20405cf7  call init_lmp_work
+50030 20404d6b  call l2cap_init_work
+50031 2020246e  branch quit_connection_cont + 8
+org 0x60001
+
+z_entrance5:
+60001 c0280003  beq zcode_50 ,z_mouse_start_discovery
+60002 20600000  rtn
+
+z_mouse_start_discovery:
+60003 704d4500  jam 0 ,mem_le_send_security_request_flag
+60004 204002a3  call p_mouse_tx_power_init
+60005 70472001  jam mode_bt_device1 ,mem_device_flag
+60006 70479e00  jam 0 ,mem_mouse_clear_sensor_data_flag
+60007 68014682  fetch 2 ,mem_ui_state_map
+60008 c2858013  bbit1 ui_state_ble_adv ,z_mouse_start_discovery_norandom
+60009 680246d3  fetch mouse_flag_len ,mem_mouse_flag
+6000a c30c0013  bbit0 mouse_enable_ble_random_addre ,z_mouse_start_discovery_norandom
+6000b 204005b3  call p_mouse_load_random_addr_increase_count
+6000c 680947c4  fetcht 2 ,mem_random_addr_increase_count
+6000d 18408401  increase 1 ,temp
+6000e 600947c4  storet 2 ,mem_random_addr_increase_count
+6000f 600944a1  storet 2 ,mem_le_lap + 1
+60010 204003e2  call p_mouse_store_random_addr_increase_count
+60011 180a7e00  random pdata
+60012 6000c4a0  store 1 ,mem_le_lap
+
+z_mouse_start_discovery_norandom:
+60013 6801cd3f  fetch 3 ,mem_le_lap_high_3b
+60014 6001c4a3  store 3 ,mem_le_lap + 3
+60015 204002ad  call p_mouse_le_fast_conn_disable
+60016 20403418  call app_lpm_mult_disable
+60017 68014687  fetch 2 ,mem_discovery_timeout
+60018 600146ac  store 2 ,mem_mouse_discovery_timer
+60019 70016d06  jam 6 ,mem_connection_options
+6001a 58000000  setarg 0
+6001b 600146b0  store 2 ,mem_mouse_no_data_timer
+6001c 600146ae  store 2 ,mem_mouse_direct_timer
+6001d d8e00007  arg mouse_store_eeprom_flag ,queue
+6001e 204043ce  call mouse_enable_function_flag
+6001f 204043ca  call mouse_bt_discovery_button_down_disable
+60020 6800c092  fetch 1 ,mem_device_option
+60021 2feffe01  isolate1 mode_4_mouse ,pdata
+60022 20408027  call z_check_51cmd_adv ,true
+60023 6800c092  fetch 1 ,mem_device_option
+60024 2feffe00  isolate1 mode_3_mouse ,pdata
+60025 2040fddd  call check_51cmd_start_discovery ,true
+60026 202004fb  branch p_mouse_discovery_multi_led_blink
+
+z_check_51cmd_adv:
+60027 7047a100  jam 0 ,mem_mouse_le_reconnect_flag
+60028 204002a6  call p_le_check_adv_flag
+60029 58000005  setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
+6002a e0c08000  istore 1 ,contr
+6002b d8c04ceb  arg mem_le_adv_swift_pair ,contr
+6002c 204005ba  call p_le_adv_data_update
+6002d 20207df4  branch check_51cmd_adv
+org 0x70001
+
+z_entrance6:
+70001 c0300004  beq zcode_60 ,z_mouse_start_24g_mode
+70002 c0308029  beq zcode_61 ,z_mouse_24g_attempt_fail
+70003 20600000  rtn
+
+z_mouse_start_24g_mode:
+70004 793f8026  set0 mark_24g ,mark
+70005 6800cd24  fetch 1 ,mem_24g_attempt_count
+70006 1fe17e01  and pdata ,0x01 ,pdata
+70007 245a0020  ncall z_g24_fast_conn_all_powerful ,blank
+70008 205a001d  call z_g24_normal_connect ,blank
+70009 6800ce93  fetch 1 ,mem_24g_pairing_sm
+7000a c1ff8000  rtnne state_24g_pairing_success
+7000b 58000000  setarg 0
+7000c 60014eb0  store 2 ,mem_24g_check_dongle_times
+7000d 204001bb  call p_g24_tx_attemp_data_prep
+
+z_g24_tx_attemp_dongle_loop:
+7000e 200007d0  nop 2000
+7000f 6800ceb0  fetch 1 ,mem_24g_check_dongle_times
+70010 c005019a  beq 10 ,p_g24_stop_g24_mode
+70011 20400182  call p_g24_transmit_receive_ack
+70012 242c0024  nbranch z_g24_attemp_txdata_retry ,sync
+70013 24378024  nbranch z_g24_attemp_txdata_retry ,user3
+
+z_g24_tx_attemp_dongle_succ:
+70014 79200026  set1 mark_24g ,mark
+70015 58000000  setarg 0
+70016 60014eb0  store 2 ,mem_24g_check_dongle_times
+70017 6000cd26  store 1 ,mem_mouse_24g_pair_timer
+70018 60014d24  store 2 ,mem_24g_attempt_count
+70019 700a993c  jam bt_evt_24g_attempt_success ,mem_fifo_temp
+7001a 20407d86  call ui_ipc_send_event
+
+z_g24_tx_attemp_dongle_loop_exit:
+7001b 2040017f  call p_g24_txbuf_clear
+7001c 2020032a  branch p_g24_transmit_by_interrupt_enable
+
+z_g24_normal_connect:
+7001d 204002a3  call p_mouse_tx_power_init
+7001e 6802477b  fetch 4 ,mem_mouse_24g_addr
+7001f 20200022  branch z6_g24_ch_syncword_crc8_init
+
+z_g24_fast_conn_all_powerful:
+70020 7041de20  jam tx_power_pair ,mem_tx_power
+70021 68024d1e  fetch 4 ,mem_mouse_24g_addr_init
+
+z6_g24_ch_syncword_crc8_init:
+70022 204001da  call p_g24_update_addr_and_synccrc8
+70023 2020013a  branch p_g24_ch
+
+z_g24_attemp_txdata_retry:
+70024 68014eb0  fetch 2 ,mem_24g_check_dongle_times
+70025 1fe0fe01  increase 1 ,pdata
+70026 60014eb0  store 2 ,mem_24g_check_dongle_times
+70027 2040013a  call p_g24_ch
+70028 2020000e  branch z_g24_tx_attemp_dongle_loop
+
+z_mouse_24g_attempt_fail:
+70029 2040042a  call p_mouse_sensor_powerdown_check
+7002a 68014d24  fetch 2 ,mem_24g_attempt_count
+7002b 243a003b  nbranch z_mouse_24g_attempt_fail_again ,blank
+7002c 704fc300  jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+7002d 204002a3  call p_mouse_tx_power_init
+7002e 204001c4  call p_g24_check_51cmd_stop_24g
+7002f 7041bd00  jam 0 ,mem_link_key_exists
+70030 204000c5  call p_mouse_setgpio_hibernate
+70031 202004c0  branch p_app_enter_hibernate
+
+z_mouse_power_on_check:
+70032 6800ce8b  fetch 1 ,mem_24g_get_ack_fail
+70033 243a019a  nbranch p_g24_stop_g24_mode ,blank
+70034 704e8b01  jam 1 ,mem_24g_get_ack_fail
+70035 6800c241  fetch 1 ,mem_power_on_flag
+70036 c2810038  bbit1 2 ,z_mouse_wakeup_from_hibernate
+70037 202001b8  branch p_g24_auto_pair_start
+
+z_mouse_wakeup_from_hibernate:
+70038 58000320  setarg 800
+70039 60014d24  store 2 ,mem_24g_attempt_count
+7003a 20200004  branch z_mouse_start_24g_mode
+
+z_mouse_24g_attempt_fail_again:
+7003b 1fe0ffff  increase -1 ,pdata
+7003c 60014d24  store 2 ,mem_24g_attempt_count
+7003d 203a0032  branch z_mouse_power_on_check ,blank
+7003e 20200004  branch z_mouse_start_24g_mode
+org 0x80001
+
+z_entrance7:
+80001 c0380004  beq zcode_70 ,z_g24_auto_pair_start
+80002 c0388034  beq zcode_71 ,z_mouse_24g_pairing_button
+80003 20600000  rtn
+
+z_g24_auto_pair_start:
+80004 793f8026  set0 mark_24g ,mark
+80005 20400024  call z_g24_pair_init
+80006 204001bb  call p_g24_tx_attemp_data_prep
+
+z_g24_auto_pair_start_loop:
+80007 200007d0  nop 2000
+80008 6800ceb1  fetch 1 ,mem_24g_check_dongle_times + 1
+80009 c050019a  beq 0xa0 ,p_g24_stop_g24_mode
+8000a 20400182  call p_g24_transmit_receive_ack
+8000b 242c001a  nbranch z_g24_auto_pair_retry ,sync
+8000c 2437801a  nbranch z_g24_auto_pair_retry ,user3
+8000d 204001a9  call p_g24_ackpayload_parse
+8000e 204002a3  call p_mouse_tx_power_init
+8000f 68024eab  fetch 4 ,mem_24g_addr
+80010 680a4e8f  fetcht 4 ,mem_24g_paring_addr
+80011 98467c00  isub temp ,null
+80012 20228030  branch z_g24_start_pairing_sm1 ,zero
+80013 79200026  set1 mark_24g ,mark
+80014 58000000  setarg 0
+80015 60014eb0  store 2 ,mem_24g_check_dongle_times
+80016 700a993c  jam bt_evt_24g_attempt_success ,mem_fifo_temp
+80017 20407d86  call ui_ipc_send_event
+80018 2040017f  call p_g24_txbuf_clear
+80019 2020032a  branch p_g24_transmit_by_interrupt_enable
+
+z_g24_auto_pair_retry:
+8001a 6800ce8b  fetch 1 ,mem_24g_get_ack_fail
+8001b 1fe0fe01  increase 1 ,pdata
+8001c 6000ce8b  store 1 ,mem_24g_get_ack_fail
+8001d 1fe67c03  sub pdata ,3 ,null
+8001e 20210007  branch z_g24_auto_pair_start_loop ,positive
+8001f 704e8b00  jam 0 ,mem_24g_get_ack_fail
+80020 68014eb0  fetch 2 ,mem_24g_check_dongle_times
+80021 1fe0fe01  increase 1 ,pdata
+80022 60014eb0  store 2 ,mem_24g_check_dongle_times
+80023 20200007  branch z_g24_auto_pair_start_loop
+
+z_g24_pair_init:
+80024 58000000  setarg 0
+80025 60014eb0  store 2 ,mem_24g_check_dongle_times
+80026 6000ce8b  store 1 ,mem_24g_get_ack_fail
+80027 60014d24  store 2 ,mem_24g_attempt_count
+80028 704e8402  jam type_kb ,mem_24g_data_type
+80029 7041de04  jam tx_power_f5db ,mem_tx_power
+8002a 704e8200  jam 0 ,mem_24g_pid
+8002b 704e8d4e  jam g24_pair_ch ,mem_24g_ch
+8002c 68024e8f  fetch 4 ,mem_24g_paring_addr
+8002d 202001da  branch p_g24_update_addr_and_synccrc8
+
+z_g24_auto_pair_pair_attemp:
+8002e 20400024  call z_g24_pair_init
+8002f 20200007  branch z_g24_auto_pair_start_loop
+
+z_g24_start_pairing_sm1:
+80030 79200026  set1 mark_24g ,mark
+80031 20400024  call z_g24_pair_init
+
+z_g24_set_pairing_sm_1:
+80032 704e9304  jam state_24g_pairing_0 ,mem_24g_pairing_sm
+80033 20600000  rtn
+
+z_mouse_24g_pairing_button:
+80034 204001c4  call p_g24_check_51cmd_stop_24g
+80035 2040042a  call p_mouse_sensor_powerdown_check
+80036 d8e00003  arg mosue_24g_pairing_flag ,queue
+80037 204043ce  call mouse_enable_function_flag
+80038 58000000  setarg 0
+80039 600146ae  store 2 ,mem_mouse_direct_timer
+8003a 6000c6b4  store 1 ,mem_mouse_send_blank_timer
+8003b 60014d24  store 2 ,mem_24g_attempt_count
+8003c 60014eb0  store 2 ,mem_24g_check_dongle_times
+8003d 204042ca  call mouse_stop_discovery
+8003e 20200030  branch z_g24_start_pairing_sm1
+org 0x90001
+
+z_entrance8:
+
+z_mouse_setting_config:
+90001 680240a0  fetch 4 ,mem_lap
+90002 60024eba  store 4 ,mem_24g_device_addr
+90003 20403e6e  call mouse_gpio_init
+90004 204000d6  call p_mouse_multi_led_gpio_set_float
+90005 6808cd17  fetcht 1 ,mem_flash_ncs_gpio
+90006 2040680e  call gpio_config_output
+90007 20403e1e  call mouse_param_init
+90008 2040001e  call z_mouse_bt_sdp_update
+90009 580047c8  setarg mem_mouse_le_uuid_sup
+9000a 600144bc  store 2 ,mem_ui_le_uuid_table
+9000b 58000000  setarg 0
+9000c 60014154  store 2 ,mem_lpm_interval
+9000d 7046f600  jam mouse_6clk_angle ,mem_config_sensor_angle
+9000e 58001802  setarg 0x1802
+9000f 600140bd  store 2 ,mem_fcomp_mul
+90010 204068a8  call adc_init_data
+90011 20403e54  call mouse_adc_init
+90012 20405810  call le_set_config_fixed_ltk
+90013 20405839  call le_set_justwork
+90014 2040582c  call le_set_fixed_ltk
+90015 20405818  call le_set_config_read_authentication
+90016 2040038e  call p_le_addr_random_config
+90017 20400325  call p_flash_release_deep_power_down
+90018 204002ee  call p_mouse_set_24g_addr_flash
+90019 6801c700  fetch 3 ,mem_flash_base
+9001a 9a40fe00  iadd regb ,pdata
+9001b 20406562  call spid_read_flash
+9001c 204002e0  call p_mouse_load_flash_info_check
+9001d 20600000  rtn
+
+z_mouse_bt_sdp_update:
+9001e 204074b9  call enable_authrom
+9001f d8c08c00  arg 0x8c00 ,contr
+90020 d8a04a51  arg mem_mouse_uuid_list ,contw
+90021 df20010b  arg 267 ,loopcnt
+90022 20407f01  call memcpy
+90023 d8c04d9c  arg mem_keyboard_hid_descriptor ,contr
+90024 df20002d  arg 45 ,loopcnt
+90025 20407f01  call memcpy
+90026 d8c08d3f  arg 0x8d3f ,contr
+90027 df200032  arg 50 ,loopcnt
+90028 20407f01  call memcpy
+90029 d8c04de2  arg mem_sdp_updata_list ,contr
+9002a df20000c  arg 12 ,loopcnt
+9002b 20407f01  call memcpy
+9002c d8c08d71  arg 0x8d71 ,contr
+9002d df200109  arg 265 ,loopcnt
+9002e 20407f01  call memcpy
+9002f 704a6800  jam 0 ,mem_mouse_uuid_list + 23
+90030 704a6066  jam 0x66 ,mem_mouse_uuid_list + 15
+90031 704b1474  jam 0x74 ,mem_mouse_uuid_list + 195
+90032 704b1078  jam 0x78 ,mem_mouse_uuid_list + 191
+90033 704b0e7a  jam 0x7a ,mem_mouse_uuid_list + 189
+90034 5800401f  setarg 0x401f
+90035 60014baf  store 2 ,mem_mouse_uuid_list + 350
+90036 58006d04  setarg 0x6d04
+90037 60014c18  store 2 ,mem_mouse_uuid_list + 455
+90038 580016b0  setarg 0x16b0
+90039 60014c1e  store 2 ,mem_mouse_uuid_list + 461
+9003a 20200660  branch p_mouse_bt_sdp_set
+org 0xa0001
+
+z_entrance9:
+a0001 c0480005  beq zcode_90 ,z_g24_pairing_sm
+a0002 c0488023  beq zcode_91 ,z_g24_paring_mode
+a0003 c0490033  beq zcode_92 ,z_mouse_24g_pairing_complete
+a0004 20600000  rtn
+
+z_g24_pairing_sm:
+a0005 6800ce88  fetch 1 ,mem_24g_ensure
+a0006 c000ffe7  beq ensure_on_24g ,enable_user
+a0007 6800ce93  fetch 1 ,mem_24g_pairing_sm
+a0008 c002000d  beq state_24g_pairing_0 ,z_g24_pairing_sm_0
+a0009 c0008010  beq state_24g_pairing_1 ,z_g24_pairing_sm_1
+a000a c0010013  beq state_24g_pairing_2 ,z_g24_pairing_sm_2
+a000b c0018016  beq state_24g_pairing_3 ,z_g24_pairing_sm_3
+a000c 20202a8c  branch assert
+
+z_g24_pairing_sm_0:
+a000d 704e9301  jam state_24g_pairing_1 ,mem_24g_pairing_sm
+a000e 704d26fa  jam 250 ,mem_mouse_24g_pair_timer
+a000f 20200005  branch z_g24_pairing_sm
+
+z_g24_pairing_sm_1:
+a0010 704e9311  jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
+a0011 70119eaa  jam 0xaa ,mem_24g_common_temp
+a0012 20200018  branch z_g24_pairing_sm_common
+
+z_g24_pairing_sm_2:
+a0013 704e9312  jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
+a0014 70119e55  jam 0x55 ,mem_24g_common_temp
+a0015 20200018  branch z_g24_pairing_sm_common
+
+z_g24_pairing_sm_3:
+a0016 704e9313  jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
+a0017 70119e22  jam 0x22 ,mem_24g_common_temp
+
+z_g24_pairing_sm_common:
+a0018 6800ce84  fetch 1 ,mem_24g_data_type
+a0019 1fe17e07  and_into bits_data ,pdata
+a001a 6000919f  store 1 ,mem_24g_common_temp + 1
+a001b 68024eba  fetch 4 ,mem_24g_device_addr
+a001c 600211a0  store 4 ,mem_24g_common_temp + 2
+
+z_g24_put_pairing_data_in_buff:
+a001d 7011a400  jam 0 ,mem_24g_common_temp + 6
+a001e da20119e  arg mem_24g_common_temp ,rega
+a001f d8400007  arg 7 ,temp
+a0020 204001c8  call p_g24_put_data_in_buff
+a0021 2040014f  call p_g24_txdata_enable_tx
+a0022 20207fe7  branch enable_user
+
+z_g24_paring_mode:
+a0023 6800ce93  fetch 1 ,mem_24g_pairing_sm
+a0024 c17f8000  rtneq state_24g_pairing_success
+a0025 c0088029  beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
+a0026 c009002b  beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
+a0027 c009802d  beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
+a0028 20600000  rtn
+
+z_g24_pairing_sm_1_waiting_ack:
+a0029 704e9302  jam state_24g_pairing_2 ,mem_24g_pairing_sm
+a002a 20200113  branch p_g24_transmit_abandon
+
+z_g24_pairing_sm_2_waiting_ack:
+a002b 704e9303  jam state_24g_pairing_3 ,mem_24g_pairing_sm
+a002c 20200113  branch p_g24_transmit_abandon
+
+z_g24_pairing_sm_3_waiting_ack:
+a002d 704e93ff  jam state_24g_pairing_success ,mem_24g_pairing_sm
+a002e 700a9939  jam bt_evt_24g_pairing_complete ,mem_fifo_temp
+a002f 20407d86  call ui_ipc_send_event
+a0030 68024e63  fetch 4 ,mem_24g_rxpayload + 2
+a0031 204001da  call p_g24_update_addr_and_synccrc8
+a0032 20200113  branch p_g24_transmit_abandon
+
+z_mouse_24g_pairing_complete:
+a0033 2040032a  call p_g24_transmit_by_interrupt_enable
+a0034 70478b01  jam 1 ,mem_mouse_24g_enter_lpm_enable
+a0035 d8e00003  arg mosue_24g_pairing_flag ,queue
+a0036 204043d2  call mouse_disable_function_flag
+a0037 58000000  setarg 0
+a0038 60014d24  store 2 ,mem_24g_attempt_count
+a0039 7046a700  jam 0 ,mem_mouse_move_flag
+a003a 2040405d  call mouse_read_sensor_common
+a003b 204002a3  call p_mouse_tx_power_init
+a003c 68024eab  fetch 4 ,mem_24g_addr
+a003d 6002477b  store 4 ,mem_mouse_24g_addr
+a003e 20404366  call mouse_cheak_select_24gdevice
+a003f 202003dd  branch p_mouse_store_flash_device_info
+org 0xb0001
+
+z_entrancea:
+b0001 c0508006  beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
+b0002 c051001b  beq zcode_a2 ,z_mouse_le_bb_disconnected
+b0003 c0518014  beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
+b0004 c0520025  beq zcode_a4 ,z_mouse_before_hibernate
+b0005 20600000  rtn
+
+z_mouse_le_conn_param_update_rsp_recieved:
+b0006 68014509  fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
+b0007 c1000000  rtneq ble_signaling_connect_parameter_update_accepted
+b0008 68008441  fetch 1 ,mem_le_tsniff
+b0009 1feb7e00  rshift2 pdata ,pdata
+b000a 1fe67c0c  sub pdata ,le_interval_15ms ,null
+b000b 20210012  branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
+b000c 58000009  setarg le_interval_11_25ms
+b000d 60014496  store 2 ,mem_le_interval_min
+b000e 60014498  store 2 ,mem_le_interval_min + 2
+b000f 2040040a  call p_app_updata_le_param
+b0010 7047c601  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+b0011 20600000  rtn
+
+z_mouse_le_conn_param_update_rsp_not_accepted:
+b0012 704d4801  jam 1 ,mem_mouse_le_updata_not_accepted_flag
+b0013 2020061d  branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+
+z_mouse_bb_event_reconn_timeout:
+
+z_mouse_bb_event_reconn_failed:
+b0014 68014682  fetch 2 ,mem_ui_state_map
+b0015 c3860000  rtnbit1 ui_state_btn_down
+b0016 c3830000  rtnbit1 ui_state_bt_discovery
+b0017 c3858000  rtnbit1 ui_state_ble_adv
+b0018 680246d3  fetch mouse_flag_len ,mem_mouse_flag
+b0019 c3828000  rtnbit1 mouse_bt_discovery_button_down_flag
+b001a 202033a7  branch app_bb_hibernate
+
+z_mouse_le_bb_disconnected:
+b001b 704d3d00  jam 0 ,mem_mouse_le_bb_connected_flag
+b001c 58000007  setarg le_interval_8_75ms
+b001d 60014496  store 2 ,mem_le_interval_min
+b001e 60014498  store 2 ,mem_le_interval_min + 2
+b001f 7047c600  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+b0020 70479e00  jam 0 ,mem_mouse_clear_sensor_data_flag
+b0021 2040036f  call p_mouse_data_init
+b0022 20405816  call le_clr_config_more_data
+b0023 204003dd  call p_mouse_store_flash_device_info
+b0024 202041d9  branch mouse_bb_disconnected
+
+z_mouse_before_hibernate:
+b0025 78347c00  enable user
+b0026 68120138  hfetch 4 ,0x8138
+b0027 79347e1a  setflag user ,26 ,pdata
+b0028 6012004c  hstore 4 ,core_lpm_reg
+b0029 20402c21  call lpm_write_ctrl
+b002a 204074bd  call disable_authrom
+b002b 204003dd  call p_mouse_store_flash_device_info
+b002c 20403e9f  call mouse_before_hibernate_wheel_gpio_set
+b002d 204000c5  call p_mouse_setgpio_hibernate
+b002e 6800c720  fetch 1 ,mem_device_flag
+b002f 1fe67c02  sub pdata ,mode_24g_device ,null
+b0030 2042859a  call p_mouse_select_device_button_gpio_set_suspend ,zero
+b0031 2040031d  call p_flash_deep_power_down
+b0032 68108081  hfetch 1 ,core_gpio_sel1
+b0033 1fe17ef7  and pdata ,0xf7 ,pdata
+b0034 60108081  hstore 1 ,core_gpio_sel1
+b0035 6810807f  hfetch 1 ,core_gpio_pd3
+b0036 79207e00  set1 0 ,pdata
+b0037 6010807f  hstore 1 ,core_gpio_pd3
+b0038 20600000  rtn
+org 0xc0001
+
+z_entranceb:
+c0001 c0588007  beq zcode_b1 ,z_mouse_sniff_not_accept
+c0002 c059000d  beq zcode_b2 ,z_mouse_enter_sniff_check
+c0003 c0598012  beq zcode_b3 ,z_mouse_le_ll_start_encryt
+c0004 c05a0019  beq zcode_b4 ,z_mouse_bb_event_disconnected
+c0005 c05a801e  beq zcode_b5 ,z_mouse_irtual_cable_unplug
+c0006 20600000  rtn
+
+z_mouse_sniff_not_accept:
+c0007 6800c9e3  fetch 1 ,mem_mouse_enter_sniff_count
+c0008 c1010000  rtneq 2
+c0009 1fe0fe01  increase 1 ,pdata
+c000a 6000c9e3  store 1 ,mem_mouse_enter_sniff_count
+c000b 7041e312  jam 0x12 ,mem_sniff_param_interval
+c000c 2020340e  branch app_bt_enter_sniff
+
+z_mouse_enter_sniff_check:
+c000d 6800c9e3  fetch 1 ,mem_mouse_enter_sniff_count
+c000e c1810000  rtnne 2
+c000f 7049e300  jam 0 ,mem_mouse_enter_sniff_count
+c0010 7041e30e  jam 0x0e ,mem_sniff_param_interval
+c0011 2020340e  branch app_bt_enter_sniff
+
+z_mouse_le_ll_start_encryt:
+c0012 6800c7a1  fetch 1 ,mem_mouse_le_reconnect_flag
+c0013 c0008015  beq 1 ,z_mouse_le_ll_reconn_start_encryt
+c0014 20200017  branch z_mouse_le_ll_enable_start_enc_flag
+
+z_mouse_le_ll_reconn_start_encryt:
+c0015 2040040a  call p_app_updata_le_param
+c0016 7046c605  jam 5 ,mem_le_start_encrypt_timer
+
+z_mouse_le_ll_enable_start_enc_flag:
+c0017 d8e00001  arg ll_start_enc_flag ,queue
+c0018 202041b9  branch mouse_le_enable_connect_flag
+
+z_mouse_bb_event_disconnected:
+c0019 704cda00  jam 0 ,mem_bt_rcvd_switch_req_accept
+c001a 704cdc00  jam 0 ,mem_bt_send_lmp_setup_complete
+c001b 704ce500  jam 0 ,mem_mouse_bt_send_first_package_flag
+c001c 204003dd  call p_mouse_store_flash_device_info
+c001d 202041d9  branch mouse_bb_disconnected
+
+z_mouse_irtual_cable_unplug:
+c001e 58000001  setarg 0x01
+c001f 60030040  store 6 ,mem_plap
+c0020 70018533  jam rec_3_mode ,mem_record_bt_mode
+c0021 704d3eff  jam 0xff ,mem_mouse_fast_conn_flag
+c0022 204042fb  call mouse_before_store_reconn_info
+c0023 704721ff  jam 0xff ,mem_device1_type
+c0024 202003dd  branch p_mouse_store_flash_device_info
+ branch p_mouse_store_flash_device_info
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/ramcode.rom
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/ramcode.rom	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/ramcode.rom	(working copy)
@@ -0,0 +1,2048 @@
+20200040
+2040036f
+6800c1de
+6000cf3a
+20400713
+6800c685
+6000c6da
+6800cd0b
+6000cd0c
+204043ca
+204003eb
+204007a4
+20400011
+20400024
+2040006c
+7011c780
+2020077a
+58000327
+60014fb4
+58000341
+600141ef
+5800064b
+600141f9
+58000392
+600141f1
+5800028a
+600141ed
+580003ed
+600141f5
+580003c8
+600141f3
+58000427
+600141eb
+58000434
+600141fd
+20600000
+58000019
+60014fc6
+2455802b
+2040042d
+6800c71f
+6000c71e
+20600000
+58000177
+60014fc6
+20600000
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+c284005a
+c0008074
+c001007d
+c0428775
+c0448748
+c0450777
+c00d8663
+c0130665
+c0240681
+c0250683
+c028868c
+c02c867f
+c0538691
+c05686a7
+c065b3e4
+c07486b8
+c0508086
+c058808b
+c0590099
+c0620297
+c0718514
+c0730532
+c07505ad
+c07585b1
+c07605be
+20202a8e
+c01c85c2
+c02185ca
+c02505d0
+c02b85d3
+c02c85d5
+c03185d7
+c0330607
+c0338626
+c0350636
+c03b8641
+c00286ba
+c04006bc
+c04106c6
+c04406d7
+c046064d
+c0468659
+c07d06fb
+20202a8e
+704d4700
+20400452
+24608000
+20407ec1
+20400452
+24608000
+704d4701
+20600000
+d8a009ae
+df20000c
+20407ed4
+20400338
+20406a03
+20405cf6
+2455ac65
+20407ccd
+2020200c
+2055b2e3
+2040756a
+2055ab41
+204076dc
+6800c65a
+203a2012
+6800c5b1
+203a0080
+20202012
+58000a06
+6001c510
+58001d87
+60014513
+20202aa2
+c6130000
+6800cd01
+243a7fef
+6800cd06
+243a7fef
+6800c79e
+203a7fef
+6800c7c6
+c000ffef
+68014248
+243a7fef
+6800c9e1
+243a7fef
+20207ff1
+c6930000
+6800cfc3
+c00080ab
+2040014c
+243400ad
+20400127
+20400103
+6800ce93
+c1ff8000
+2040071c
+58017700
+6001ceb2
+704d3714
+204000bb
+24740000
+20400291
+5800f424
+20202b93
+7011c701
+2020077a
+6800ceaf
+205a00d9
+6800cd06
+247a0000
+6800cd01
+c1008000
+6800cfc3
+c1008000
+204000bb
+24740000
+6801ceb2
+20407f49
+600a415b
+20202b2a
+78347c00
+20402afa
+6801c16f
+203a7fe9
+6800c091
+203a7fe9
+6800cfc3
+c000ffe9
+20400294
+20400291
+20403ebf
+6808cd17
+20406825
+68120070
+681a0078
+98418400
+18440400
+601a007c
+6810807d
+793ffe02
+6010807d
+6810807e
+793ffe06
+6010807e
+6810807f
+793ffe03
+6010807f
+6808cd00
+793f8407
+20206806
+704e8401
+704eaf01
+704fb800
+204000ea
+6000ce1f
+58000000
+6003ce20
+68024eba
+60024e27
+704e830c
+6800ce84
+79207e03
+6000ce84
+2040014f
+2020009f
+704fb901
+704fbb00
+6800ce84
+1fe17e07
+6000ce84
+20600000
+6800ce84
+79207e04
+6000ce84
+6000ce3f
+20600000
+6800ce84
+c4020000
+6800ce84
+793ffe04
+6000ce84
+6000ce3f
+204005f8
+2020013a
+6800cfb8
+c08080ea
+6800cfb6
+1fe0fe01
+6000cfb6
+c0020117
+2040013a
+704ec802
+704e8c00
+d9600d00
+34730200
+20400182
+242c018d
+2437818d
+2040017f
+204001a9
+20400716
+6800ce82
+1fe0fe01
+6000ce82
+204000f3
+6800ce93
+c0ff81b2
+2040011e
+58000000
+60024e88
+6000cfb7
+20600000
+204005f8
+704fb600
+202000ea
+704fbb02
+704fb901
+704fb800
+202000ea
+6800cfba
+c001811b
+6800ce84
+2fec0004
+202080e8
+6800cfba
+c000811a
+c001011b
+20600000
+6800ce93
+c1ff8000
+2040012c
+24560134
+20600000
+78567c00
+6800cfb9
+c1808000
+6800cfbb
+c1800000
+704fba01
+704ec804
+20207feb
+6800cfbb
+203a0147
+1fe0ffff
+6000cfbb
+704fba02
+704ec804
+6808ce8e
+6800ceab
+1fe17e03
+1fefa204
+58004e94
+9a20fe00
+98408c00
+e8c08000
+6000ce8d
+18408401
+18410403
+6008ce8e
+20600000
+704fba03
+6800cfb8
+243a00fb
+704ec802
+2020013a
+6800ce93
+c0ff81b0
+20400152
+204001e8
+704e8801
+20600000
+68014fb4
+20407f9c
+20340158
+6803ce20
+207a0000
+20207fe7
+6800cd87
+243a0174
+704e8401
+2040035a
+2040016e
+e8a88000
+ea408000
+9841fe00
+e0a08000
+1a40a401
+ea420000
+e0a20000
+1a40a404
+d8a04e25
+df200002
+ea408000
+e8a88000
+9840fe00
+e0a08000
+1a40a401
+c2000167
+20600000
+704eaf00
+1a20fe01
+6000ce83
+204000ea
+6000ce1f
+20600000
+704e8402
+da200009
+da404d91
+6800cd9a
+245a017d
+2040016e
+1a420c00
+1a227200
+20207f01
+da404d88
+20600000
+df200004
+d8a04e1f
+20207ec6
+7857fc00
+20400248
+18002a00
+68024eab
+98001200
+68088017
+2040291f
+20402924
+20400203
+20578244
+20600000
+68014e89
+1fe0fe01
+60014e89
+6800ce8a
+c282019a
+6800ce93
+c0ff8196
+2040019f
+20200104
+6800ce89
+c1ff8000
+58000000
+60014e89
+700a993a
+20207d86
+2040073f
+204005f8
+2020013a
+6800ce8c
+1fe67c0b
+2421019c
+1fe0fe01
+6000ce8c
+c00100ee
+c00300f5
+c00400ee
+c00600f5
+20600000
+204001cd
+6800ce81
+207a0000
+98007200
+d8c04dff
+d8a04e61
+20207f01
+7011c790
+2020077a
+20400713
+7011c791
+2020077a
+204004f6
+7011c760
+2020077a
+704d4600
+7011c770
+2020077a
+70119eff
+6800ce84
+6000919f
+68024eba
+600211a0
+d8400006
+da20119e
+204001c8
+202001e8
+793f8026
+204053ce
+d8e00003
+202043d2
+6008ce83
+18427200
+d8a04e1f
+1a220c00
+20207f01
+6800cdfe
+1fe97e00
+6000ce81
+1fe0fe01
+d8c04dfe
+98c08c00
+e8c18000
+6001cec0
+6800cdfe
+1fe37e00
+1fe17e03
+6000cec6
+20600000
+60024eab
+da200000
+df200004
+d8c04eab
+e8c08000
+9a20a200
+c20001de
+1a227e00
+60014f34
+6800cf34
+6808cf35
+9840fe00
+6000cf36
+20600000
+6800ce83
+1fe0fe02
+6000ce85
+6800ce84
+6000ce3f
+6800ce83
+1fe9fe00
+6808ce82
+18410403
+18438400
+9841fe00
+6808cebf
+9840fe00
+e0a08000
+6800ce83
+98007200
+d8c04e1f
+20207f01
+7844fc00
+7843fc00
+58555555
+98001e00
+6800ce8d
+1fed8400
+79200401
+18431c00
+20600000
+204001fa
+7857fc00
+7826fc00
+7830fc00
+78507c00
+78287c00
+68014e86
+98003600
+37c18400
+242c0244
+7846fc00
+7825fc00
+7823fc00
+7824fc00
+20400241
+6000cf37
+6808cf36
+98467c00
+24228244
+20400241
+6000cdfd
+6800cdfd
+6808ce84
+a8400e00
+24208244
+20400241
+e0a08000
+1fe97e00
+1fe1721f
+20228224
+20400241
+e0a08000
+c2000221
+18a22200
+20400241
+6000cfbe
+1a220a00
+09800018
+78287c00
+db600664
+1fef7e00
+1ff17e00
+e0a18000
+7845fc00
+20230244
+7837fc00
+68008017
+1fe0a200
+20402981
+7846fc00
+20402918
+6800cfbe
+1fe22200
+6808cf3e
+58004f45
+98408a00
+1a227e00
+e0a08000
+18408401
+18410407
+6008cf3e
+20600000
+09800008
+19897e00
+20600000
+784dfc00
+7845fc00
+2040264d
+20600000
+204053c4
+68024eab
+98001200
+204001fa
+20402918
+6808ce8d
+20402933
+79202a00
+782efc00
+78307c00
+7850fc00
+19317e00
+1fecfe00
+1ff1fe00
+08008628
+784efc00
+782dfc00
+7823fc00
+7824fc00
+6800cf36
+08008608
+6800ce85
+98007200
+d8c04e3f
+e8c08000
+08008608
+c2000260
+78247c00
+08008618
+78447c00
+37d38200
+20000064
+784efc00
+784dfc00
+20600000
+20407fe9
+680a4ea4
+1c427e00
+98467c00
+24412d18
+1fe22400
+68024ea4
+6808cea8
+98408400
+1a427e00
+98467c00
+24610000
+793ffe1c
+60024ea4
+20207fe7
+d8400000
+df200008
+1a220c00
+e8c08000
+98408400
+c200027d
+18497e00
+1fe20400
+c6930000
+1fe6fc0a
+20407f86
+1807fe00
+1ff27e00
+18070400
+98418400
+20600000
+c6130000
+2040032e
+204000c3
+6800c040
+c3000291
+680080a0
+247a0000
+58000000
+600400a1
+20600000
+6800ccd9
+207a0000
+20200514
+2040296c
+20403416
+204074b9
+203583eb
+6801c4a3
+6001cd3f
+20400001
+7011c722
+2020077a
+70479f01
+7047a028
+20600000
+6800cf3a
+6000c1de
+20600000
+da204370
+ea208000
+207a0000
+98c0a200
+e8c08000
+c1008000
+202002a7
+704d3e5a
+20600000
+704d3eff
+70421034
+68034fc8
+600344a0
+20600000
+204003eb
+204040c0
+204040d9
+c01802bc
+c01882c8
+204040d1
+200003e8
+202002b6
+20400360
+6800c6de
+c02a02c0
+202040e0
+7046e002
+da604d62
+ea610000
+c17f8000
+20406413
+20002ee0
+1a60a602
+202002c2
+20400360
+6800c6de
+c03840e8
+7046e001
+20600000
+6800c77a
+c0ff8514
+6800c6e1
+6000c77a
+20200514
+70808640
+70808700
+68108081
+793ffe00
+793ffe01
+79207e03
+793ffe04
+60108081
+58000000
+600201f5
+6810807f
+793ffe00
+6010807f
+20600000
+20400325
+20404423
+68014778
+d840aa55
+98467c00
+20228312
+60094778
+2040441c
+6800c6e1
+6000c77a
+68024d1e
+6002477b
+60024eab
+204002af
+d8400004
+da204eab
+da40005b
+20600000
+6801c700
+6001c232
+2040652a
+580186a0
+20402a8f
+2040650b
+580001fa
+6011008c
+58000005
+204064f3
+c28002f5
+20600000
+1fe22600
+1a227e00
+1fe0fffc
+1fe22400
+ea420000
+60024d19
+1a627e00
+20406552
+68024d19
+e2420000
+20600000
+5800477f
+d8404720
+98460400
+6801c700
+da204720
+20600000
+20400325
+20400309
+20206562
+2040030f
+204005b3
+2040431a
+6802477b
+60024eab
+68034722
+680b4df7
+98467c00
+242282ad
+204002af
+20600000
+700aa2b9
+204002d2
+204069ac
+2040650b
+da204d19
+68088aa2
+20406556
+202069ac
+700aa2ab
+2020031e
+20404401
+6801469f
+207a0000
+704fc301
+58000000
+60014fc4
+20600000
+d8c01800
+d8a049e5
+20400336
+d8c01900
+20400336
+d8c01a00
+20400336
+d8c01b00
+df20001b
+20207f01
+d8c049e5
+d8a01800
+20400336
+d8a01900
+20400336
+d8a01a00
+20400336
+d8a01b00
+20200336
+20405892
+247a0000
+6800cd3e
+c07f8348
+6800c6c5
+1fe17e03
+c1818000
+6800c79e
+205a038a
+680246d3
+c282c179
+20403f97
+24740000
+20400357
+2040035a
+20400385
+6800cd87
+c0008363
+da20469a
+20407e3d
+20540374
+20600000
+70417200
+704d361e
+20600000
+6800cd35
+c1808000
+58000000
+6000cd35
+6002469b
+2020038c
+da604d6f
+204002c2
+202002cd
+6800cd9a
+203a036d
+68044d89
+60040a9a
+da200008
+d8400015
+20405a64
+68040a9a
+e0a40000
+20600000
+68044d92
+20200366
+7047a207
+7047a304
+580047a2
+60014218
+20207e38
+6800c7c3
+1fe0fe01
+6000c7c3
+20600000
+da20469a
+20407e54
+2034037c
+20600000
+20405652
+6800c7c3
+1fe67c01
+24415650
+6800c7c3
+207a0000
+1fe0ffff
+6000c7c3
+20203f90
+6801469f
+207a0000
+7049e101
+7049e202
+20600000
+70479e01
+20405814
+704cd901
+202002b4
+204068a2
+58001122
+600147c4
+20600000
+20770000
+6800c1e2
+207a0000
+20405271
+247a0000
+6800c79e
+205a038a
+680246d3
+c282bf8a
+c284bf8a
+20403f97
+24740000
+20400357
+2040035a
+20400385
+6800ccde
+c00083a8
+6800cce5
+207a0000
+6800cd87
+c00083b9
+20203f81
+6800c69a
+6000ccdf
+6800c69b
+e0a08000
+6800c69d
+e0a08000
+6801469f
+e0a10000
+da200007
+20404d63
+6801424e
+e0a10000
+580002a1
+e0a10000
+6802ccdf
+e0a28000
+20600000
+6800cd9a
+203a03c6
+68044d89
+60040a9a
+da20000a
+20404d63
+6801424e
+e0a10000
+580001a1
+e0a10000
+68040a9a
+e0a40000
+20600000
+68044d92
+202003bc
+20407e34
+204003cb
+20203ee0
+704df505
+6808c6e7
+6800cdf3
+20400548
+6000cdf3
+6808c6e7
+20400581
+1a227e00
+c28283d5
+20203d62
+6800c6b6
+c1000000
+7046b600
+6800c77a
+1fe0fe01
+1fe17e03
+6000c77a
+20403d7e
+20400325
+204002f2
+20400309
+204002fe
+204002f5
+204002d2
+d8400002
+da2047c4
+da40005f
+6801c700
+9a40fe00
+204002fe
+204002f5
+2040031d
+70421276
+20203d36
+1a627e00
+c00a03fe
+c00a8407
+c014840a
+c019040c
+c020040e
+c0020410
+c0098410
+c00cb3df
+c0108414
+c0008416
+c001041b
+c015841e
+c01c8420
+c01d0423
+c01e0425
+2020417d
+2040038c
+20403410
+704d3d01
+6800c7a1
+243a0404
+704d4414
+204004c2
+2040036f
+202041c3
+2040042a
+7011c7a2
+2020077a
+700a9912
+20207d8f
+7011c7b3
+2020077a
+7011c7a1
+2020077a
+7011c7a3
+2020077a
+7011c7b5
+2020077a
+7011c7b1
+2020077a
+2040038c
+204004c2
+204004e9
+7049e400
+202042ca
+2040042a
+7011c7b4
+2020077a
+7011c7b2
+2020077a
+2040038c
+7011c792
+2020077a
+7011c761
+2020077a
+2040038c
+20203f8d
+2040042a
+7011c7a4
+2020077a
+6800ccd9
+207a0000
+704cd900
+204002b4
+58000006
+20406414
+1fe1fe08
+1fed7e00
+1fe0fe06
+20206413
+20400502
+204004c5
+20400499
+204004b8
+2040049e
+20404234
+20400444
+20400492
+2040047c
+20400479
+20400484
+2040048a
+20400471
+20404231
+20400474
+2020423a
+20400452
+20208463
+6800cd47
+243a045f
+6800c6d9
+c1008000
+7046d901
+704cff01
+6800cd46
+203a045d
+20400456
+7041bd00
+204003dd
+20204378
+6808c6ed
+204067fb
+6808c6ed
+2020681d
+6808c720
+18408401
+6800c6d2
+98467c00
+244143cc
+6008c720
+20600000
+704d46ff
+20600000
+704d4700
+7046d901
+704cff01
+20600000
+68014682
+c2858466
+704cff00
+6800c6d9
+c1000000
+7046d900
+68014208
+c3850000
+6800c720
+c1808000
+6801420a
+79207e0a
+6001420a
+20204386
+da6049e4
+da40637a
+2020336d
+da604ce4
+da400477
+2020336d
+704ce501
+20600000
+da6046c6
+da403d60
+2020336d
+da6046ae
+da40047f
+20203374
+6800cd3e
+c07f84ac
+6800cd09
+247a0000
+20204266
+da604d36
+da400487
+2020336d
+6800c7c7
+6000c172
+20200497
+6800cd3d
+207a0000
+da604d44
+da40048f
+2020336d
+6800cd45
+247a0000
+20205bf5
+da604d37
+da400495
+2020336d
+58124f80
+6001ceb2
+704d3501
+20600000
+da6049e2
+da40049c
+2020336d
+7049e100
+20600000
+20400452
+202084a5
+20400540
+c00384a5
+204043a9
+d8e00009
+202043d2
+20400581
+7047a028
+204004a9
+202043b0
+da6046da
+da4004ac
+2020336d
+680246d3
+c3848000
+704d4600
+68014682
+2feffe0b
+2040c2d4
+68014682
+2feffe07
+2040c392
+d8e00009
+204043ce
+202043b8
+6800cd09
+247a0000
+6800c79f
+207a0000
+da6047a0
+da4004bf
+2020336d
+70479f00
+2040042d
+2020340a
+70479f00
+7047a000
+20600000
+6800ccff
+207a0000
+6800cd02
+c00004cb
+c00084d5
+20600000
+204004de
+6800cd07
+1fe0fe01
+6000cd07
+6808cd03
+98467c00
+204284d3
+20600000
+704d0900
+202004ef
+da604d05
+da4004d8
+2020336d
+6800cd04
+6000cd05
+6800cd01
+c00084ef
+c00004de
+20600000
+704d0101
+6800c720
+c00104e5
+6808cd00
+2040680e
+6808cd00
+20206829
+6808cd00
+2040680e
+6808cd00
+20206825
+6800cd07
+247a0000
+6800cd09
+247a0000
+58000000
+6001cd05
+6800cd06
+243a04f3
+704cff00
+704d0200
+704d0700
+704d0100
+202000d6
+704d0901
+704cff01
+704d0200
+704d0700
+20600000
+704d0900
+704d0402
+704d0601
+704d0502
+704cff01
+704d0201
+20600000
+68014d06
+247a0000
+da6046ce
+da400507
+2020336d
+7046ce0a
+204068eb
+20406908
+1fe0fe1c
+6001470f
+da204709
+ea240000
+60040a9a
+68090a9c
+68010aa0
+98467c00
+242104c0
+20600000
+6800c6e0
+c0030522
+c0010522
+6800c77a
+1fe67c01
+2042851e
+6800c77a
+c0000520
+c001bd8c
+20203d88
+70477a02
+20600000
+6800c77f
+2020052a
+6800c77a
+1fe67c01
+2042851e
+6800c77a
+c000052c
+c001852f
+6800c781
+1fe0ffff
+6000c6b5
+20203dc1
+6800c77f
+1fe0ffff
+2020052a
+6800c782
+1fe0ffff
+2020052a
+78547c00
+58000000
+6003469b
+2040059d
+20404079
+2040053e
+2434053b
+2040079b
+20203fa0
+204007a4
+704d1100
+20600000
+20400540
+2020409a
+6800c69a
+1fe22200
+20400561
+20400567
+2040056d
+20400573
+1a227e00
+20600000
+6000cdf6
+1fe3fe00
+1fe22400
+18422600
+6800cdf5
+1fe67c02
+20410581
+2441058c
+1a620400
+2040681d
+7920a400
+2040055b
+1a417e07
+6808cdf5
+18420e00
+18467c02
+c0038586
+c0000589
+20600000
+6808cdf6
+18410401
+1a417e01
+98467c00
+24228357
+20600000
+704df500
+6808c6e2
+6800cdee
+20400548
+6000cdee
+20600000
+704df501
+6808c6e3
+6800cdef
+20400548
+6000cdef
+20600000
+704df502
+6808c6e4
+6800cdf0
+20400548
+6000cdf0
+20600000
+704d8700
+704df504
+6808c6e6
+6800cdf2
+20400548
+6000cdf2
+1a227e00
+c2820592
+20400595
+1a227e00
+1a2122ef
+6800cd9a
+6000cd9b
+6808c6e6
+79200407
+d8a08078
+20406830
+793f8407
+20200590
+2021058a
+f93fa200
+20600000
+20210587
+f9202200
+20600000
+793f8407
+d8a08078
+20406830
+79200407
+d8a0807c
+2020680a
+704d9a01
+20400598
+2020057c
+704d9a00
+6800cd9b
+207a0000
+704d8701
+20207fe7
+6808c6ed
+793f8407
+20200582
+6800c6e0
+c00405a2
+20403fc0
+78547c00
+20203fe7
+20403fc0
+78547c00
+58000002
+20406414
+c4038000
+58000008
+20406414
+203a3fed
+58000000
+6003469b
+20600000
+204004c2
+280ffe26
+204081c4
+2020426d
+7011c750
+2020077a
+20400325
+d8400002
+da2047c4
+da40005f
+6801c700
+9a40fe00
+20206562
+d8a0437b
+df200013
+20407f01
+202057b8
+204004e9
+704cd901
+2040038c
+202042cb
+6800c50f
+1fe0fe01
+6000c50f
+c0065395
+204055aa
+2040561e
+2040071c
+2020538f
+68008016
+1fe0fe01
+60008016
+c1940000
+70001625
+20600000
+204029bb
+20400237
+202054a3
+7011c740
+2020077a
+7011c741
+2020077a
+68008456
+c28285f7
+20400716
+6800c78e
+243a05e1
+6800843f
+c30205e5
+680082da
+203a05e5
+20205664
+6800c78e
+1fe0ffff
+6000c78e
+20205664
+6800c4c4
+c08285e8
+70478e03
+20405892
+205a0378
+20205622
+6800c6c5
+1fe17e03
+c1818000
+6800c7c3
+207a0000
+6800c3dd
+207a0000
+6800c3dc
+79207e04
+6000c3dc
+20405650
+20600000
+204005eb
+6800cfbc
+1fe67c02
+2441071a
+6800cfbc
+c1000000
+1fe0ffff
+6000cfbc
+20600000
+6800c7a1
+207a0000
+6800c6c5
+1fe17e03
+c1018000
+7046c601
+20600000
+c6078000
+20405890
+247a0000
+680082d9
+1fe17e03
+6000c50c
+e8c08000
+1fe17e1f
+6000c50b
+207a0000
+18c27e00
+6001450d
+6800c50c
+c0018616
+2020568d
+680082db
+c000061a
+c0008621
+20205c65
+20405c7b
+6800cd48
+207a0000
+6800c3d8
+6000c172
+6000c7c7
+20600000
+e8c28000
+6002c3ce
+e8c10000
+6001045f
+20205c8a
+e8c10000
+c002062a
+c003062e
+20205698
+20407ea5
+20400600
+20407e9f
+202058ab
+e8c08000
+c0008632
+c0028634
+20205af6
+704d4501
+20205b09
+7011c782
+2020077a
+68008016
+c093d6f2
+2040063c
+d8e00000
+68014482
+20207f08
+180a7e00
+d84001ff
+98417e00
+1fe0fefa
+20203cbe
+7855fc00
+20370644
+2436d806
+20402bcb
+680140c1
+6001044d
+6800c6c5
+2fe00603
+2420abde
+202057fb
+7011c742
+2020077a
+68108077
+1fe17efd
+60108077
+68188073
+18418402
+60188073
+204063ee
+184104fd
+2000000d
+2040065a
+60188073
+20600000
+204064dd
+68108081
+79207e00
+793ffe01
+793ffe03
+60108081
+20600000
+58004a51
+60014575
+20600000
+7011c700
+2020077a
+204021c9
+24740000
+78547c00
+70001120
+793f800b
+793f802d
+20402a4f
+204022e6
+c5058672
+20402455
+243a066b
+c516867b
+202021ec
+20402a4d
+d8200010
+204022dc
+7920002d
+793f800b
+68008077
+98000800
+70001102
+2020066b
+68020165
+1fe0fe08
+60020165
+202021f8
+c516264d
+2020258f
+7011c743
+2020077a
+68008030
+2feffe00
+20408687
+2020248a
+68008047
+2feffe03
+204085f8
+24408716
+2020071c
+204024f0
+242c28f9
+204029bb
+20400237
+20202518
+c6130000
+20402afa
+6801c16f
+207a0000
+6800c091
+207a0000
+6800c65a
+203a069b
+6800c5b1
+207a0000
+6800c4c0
+247a0000
+20402c3a
+247a0000
+6800c040
+2fe00e03
+2420ab9d
+68014042
+d840ffff
+98467c00
+20628000
+20202b7d
+7855fc00
+68008030
+c4008000
+2436abd0
+20402bcb
+680140c1
+6001003e
+68008047
+c281abde
+c586abde
+20405274
+243a2bde
+205a06b5
+20202bbe
+70008a01
+70008b00
+20600000
+7011c710
+2020077a
+7011c711
+2020077a
+68008552
+600084c9
+c00986c0
+20205db4
+20405dcf
+704cda01
+6800ccdc
+207a0000
+704cdc02
+20600000
+78547c00
+204062c1
+68008048
+207a0000
+c28386cf
+c00186d1
+c01886d3
+c00b86d5
+20206010
+7011c720
+2020077a
+7011c721
+2020077a
+704cdc01
+202061c3
+704ce404
+202061a4
+204062bc
+247a0000
+68008055
+207a0000
+c00206f9
+c00806de
+20206320
+6800c55b
+c1000000
+c00086e2
+2020635f
+20748000
+6800816d
+c28006e6
+20206399
+6800ccdc
+c000e39d
+6800c1bd
+203a63a9
+680084d1
+c4018000
+c4010000
+6800ccdb
+207a0000
+704cdb00
+680204e9
+d8400014
+98408400
+1c427e00
+98467c00
+242106f7
+20206349
+704cdb01
+20600000
+7049e414
+2020636f
+204062bc
+243a7ddb
+68008a99
+c584fdd6
+c00f8703
+c0100706
+c0090710
+20207dca
+70018534
+6803044f
+20200708
+70018533
+68030040
+60030186
+680246d3
+c4038000
+d8e00007
+204043d2
+204042e8
+204042fb
+202003dd
+20405890
+247a0000
+20205abf
+704fbf01
+704fbc00
+20600000
+6800cfbc
+1fe0fe01
+6000cfbc
+20600000
+704fbc03
+20600000
+68014682
+c3858000
+c3838000
+c3830000
+da204f45
+2040027a
+6008cfbd
+58000082
+c5130726
+58000080
+98467c00
+2421073e
+6800cfbc
+1fe67c02
+2421072e
+6800cfbc
+c000073f
+20600000
+6800cfbc
+c1990000
+704fbc00
+6808cfbd
+58000077
+c5130735
+58000075
+98467c00
+24610000
+6800cfbf
+c0000746
+1fe0ffff
+6000cfbf
+c0000746
+7041de00
+20600000
+704fbc00
+6800cfbf
+c0010744
+1fe0fe01
+6000cfbf
+c000873c
+7041de02
+20600000
+7041de04
+20600000
+60088017
+1840a200
+20402981
+58000500
+20402a8f
+70890601
+7089003c
+708901e0
+2000000a
+70890201
+7089023d
+2000000a
+708903b7
+2000000a
+7089027d
+6800c1de
+c0010760
+c0020768
+c0100772
+2040076d
+708955d0
+708956e0
+7089586c
+2020294b
+70894cfb
+70894def
+70894eec
+70894f5e
+708955d0
+708956e0
+7089583c
+20202953
+2040076d
+708955d0
+708956c0
+7089586c
+2020295b
+70894c5b
+70894d96
+70894e2c
+70894f46
+20600000
+708956c2
+708955d0
+20600000
+18002a08
+202028fa
+20402978
+70804205
+20600000
+680891c7
+18518400
+6800cd27
+98467c00
+20228799
+6008cd27
+18408401
+58000100
+984f8400
+6801cd28
+98467e00
+6809cd2b
+9840fe00
+1fe0fffb
+6001cd2e
+20400325
+6801cd2e
+d8400100
+da201f00
+20406562
+68021f00
+680a4d31
+98467c00
+2422878a
+204003eb
+58001f00
+60014199
+70419b40
+204064ca
+58000000
+60024199
+680091c7
+20200001
+6802469b
+207a0000
+204007f0
+58000003
+204007e3
+58000002
+204007e9
+6800cce6
+c00087a7
+df200005
+d8a04ce6
+20207ed4
+68014ce7
+600111be
+6801469b
+600111c0
+204007ba
+680111be
+60014ce7
+680111c0
+6001469b
+68014ce9
+600111be
+6801469d
+600111c0
+204007ba
+680111be
+60014ce9
+680111c0
+6001469d
+20600000
+680111be
+680911c0
+9840fe00
+600191c2
+2feffe10
+202087c7
+680091c3
+c07f87ce
+680091c2
+1fe37e00
+600111be
+600111c0
+20600000
+680091c3
+c00007cb
+680191c2
+202007c3
+7011c400
+680091c2
+202007c3
+680091c2
+204007d9
+600091be
+600091c0
+203a07d7
+580000ff
+600091bf
+600091c1
+20600000
+58000000
+202007d4
+204007df
+1fe37e00
+204007e0
+1fe67e00
+600091c5
+20600000
+1fe67e00
+60008aae
+68008aae
+20600000
+9a267c00
+242107ee
+9a467c00
+242107ee
+704ce600
+20600000
+9a267c00
+24610000
+9a467c00
+24610000
+202007e7
+704ce601
+20600000
+6801469b
+204007f7
+1fe22200
+6801469d
+204007f7
+1fe22400
+20600000
+600111c0
+680091c1
+c07f87fd
+680091c0
+1fe17eff
+20600000
+680111c0
+1fe67e00
+202007fb
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/romcode.rom
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/romcode.rom	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/romcode.rom	(working copy)
@@ -0,0 +1,25191 @@
+20402abc
+44804000
+20800000
+2040640d
+2040296c
+204065a3
+20402a96
+20404d6a
+4480c000
+20406a03
+20405cf6
+20407ccc
+204032d8
+2455e89c
+44814000
+2055b2e3
+2040756a
+2055ab41
+4481c000
+204076dc
+20407aaf
+2040756d
+2040535c
+44824000
+20402038
+204032ed
+2040208f
+204022f8
+2040236a
+20402021
+20402b6a
+20402c72
+20202012
+20402026
+c6848000
+793f8009
+20402223
+202053ce
+4482c000
+2040225e
+2422a02f
+2040220a
+1a208c01
+e8c08000
+c2805360
+c280a166
+202023cf
+2040222b
+1f227c00
+20628000
+2040220a
+68008030
+c281a0d3
+68008031
+c280a166
+202023cf
+6800c1ce
+207a0000
+c000a048
+c001204d
+c001a050
+c002a055
+c00da045
+20402257
+20628000
+2040225a
+20628000
+7041ce00
+20600000
+70049b1b
+7041ce00
+20600000
+7920001c
+793f801e
+70008fff
+70008d1f
+20202043
+793f801c
+18003600
+20202043
+2040225a
+20628000
+18000401
+70016e05
+2020205c
+44834000
+680341d0
+203a2043
+70468101
+70005503
+2020205b
+18000425
+4483c000
+680080f1
+203a2062
+1fe9fe00
+1ff27e00
+1fe0ffff
+6000c0a6
+600080f0
+70008e1f
+793f800c
+2040223b
+2422a083
+20402a6f
+60008077
+6008807c
+680341d0
+60030040
+44844001
+20407f15
+18007e00
+2841fe01
+7d20fe05
+79207e03
+60008030
+700a9903
+20407d86
+18007e00
+7920fe04
+6000804c
+58000000
+79207e01
+60008031
+7834fc00
+20402223
+7854fc00
+18000e03
+680140b9
+20407f08
+20202043
+4484c001
+680341d0
+60030040
+2841fe01
+2020a089
+20202043
+d8a00101
+df200008
+20407ec6
+700a9904
+20407d86
+20202043
+c68e0000
+18000e01
+20407f16
+7d3a001c
+243a2095
+20600000
+44854001
+680940bb
+18000e04
+2040271c
+20740000
+204028a4
+18004800
+20618000
+793f800b
+793f8000
+1c40c201
+280ffe1e
+7920c802
+2c200400
+2420a0be
+4485c001
+68008012
+1fe0fe01
+60008012
+204028d8
+204028d2
+204028f2
+20402a51
+20402a56
+20402a64
+2040264d
+204020b1
+2020209c
+44864001
+6800808d
+1fe0ffff
+6000808d
+20610000
+70008d1f
+6800808f
+1fe0ffff
+6000808f
+20610000
+7940001e
+70008fff
+20600000
+4486c001
+204028d8
+204028cc
+204028f2
+20402a5b
+204029eb
+20402a0d
+202c20c8
+204020b1
+2020209f
+44874001
+204029bb
+20402a6b
+2040251e
+793f8001
+c6858000
+4487c001
+68008013
+1fe0fe01
+60008013
+20600000
+44884002
+7834fc00
+78387c00
+680140b5
+203a20db
+18000e08
+20407f16
+247a0000
+4488c002
+680940b7
+18000e28
+2040271c
+20342114
+18000e03
+20407f16
+243a20f0
+6800804c
+c28220e6
+202020e9
+d8a00101
+df200008
+20407ec6
+44894002
+70003000
+20405cf7
+70468100
+700a9913
+20407d86
+20202114
+4489c002
+18001600
+34730200
+680080f2
+1fe0ffff
+9c42fe00
+2fe00600
+2420a0f0
+18827e00
+60008181
+18004c00
+18004800
+448a4002
+2021a114
+204028dc
+d9600600
+34730200
+448ac002
+680200f2
+98004200
+1fe0fe01
+600200f2
+280ffe0c
+7920c802
+2c200400
+2420a128
+6800800c
+1fe0fe01
+6000800c
+204028d2
+20402a51
+20402a56
+20402a64
+2040264d
+2040211a
+202020fc
+448b4002
+7854fc00
+680140b5
+207a0000
+18000e08
+20207f08
+448bc002
+6800808e
+1fe0ffff
+6000808e
+20610000
+70008e1f
+680080f0
+1fe0ffff
+600080f0
+20610000
+7940000c
+6800c0a6
+600080f0
+20600000
+448c4003
+204028cc
+20402a5b
+204029eb
+20402a0d
+202c2130
+2040211a
+20202101
+2040264d
+6800800d
+1fe0fe01
+6000800d
+18003600
+680200f2
+448cc003
+20402a4f
+204028dc
+1cc0cc01
+1c2143fd
+1c8149fc
+204028d2
+20402a51
+20402a56
+20402a64
+1c427e00
+60020161
+18000800
+18000202
+20402a6b
+20402766
+448d4003
+20402a4d
+1c21c202
+1c8149fc
+204028cc
+20402a5b
+204029eb
+20402a0d
+204c264d
+202c2155
+68008010
+203a20fc
+1fe0ffff
+60008010
+20202136
+448dc003
+6800800e
+1fe0fe01
+6000800e
+20402435
+204022f2
+202c215f
+20402455
+243a215a
+202020fc
+448e4003
+68008030
+793ffe03
+60008030
+20402440
+7854fc00
+20600000
+448ec003
+7834fc00
+78387c00
+204021e1
+20740000
+20402c69
+20402a4f
+1c40c201
+204028e2
+18004803
+20406cc2
+20402489
+204028d2
+20402a51
+20402a56
+20402a64
+20402762
+448f4003
+20405d08
+204022e4
+2436a180
+20402a88
+20402728
+6800800f
+1fe0fe01
+6000800f
+448fc003
+20406caa
+2040218b
+24748000
+204026f3
+243a2188
+7854fc00
+20600000
+20402489
+204022da
+20202177
+2036a18e
+20402a7f
+2021219c
+204021a7
+2434219c
+6800804c
+c4020000
+c3818000
+6800804b
+c3818000
+204021ae
+247a0000
+6800816e
+1fe0ffff
+6000816e
+247a0000
+20206006
+44904004
+2040245d
+7854fc00
+6800804c
+c28221a2
+20600000
+6800804c
+c3818000
+d8a00101
+df200008
+20207ec6
+4490c004
+78347c00
+6800804b
+c4018000
+204021ae
+247a0000
+20207fe9
+68008072
+1fe0ffff
+60008072
+20600000
+44914004
+68008030
+c283a1bb
+680089b5
+203a21bb
+7009b500
+700a9918
+20407d86
+202021bb
+4491c004
+20402254
+68008030
+79207e07
+60008030
+7041bd01
+68008055
+c08b21c3
+20600000
+7009b501
+68008030
+793ffe07
+60008030
+20600000
+44924004
+78547c00
+68010032
+d840ffff
+98467c00
+24628000
+68020034
+203821d3
+9d067e00
+202021d4
+9c467e00
+1fe67c04
+24610000
+18007e00
+60010032
+20207fe7
+1fe20400
+4492c004
+600a0034
+70455b01
+5800ffff
+60010032
+70007301
+20600000
+44934004
+204021c9
+24740000
+78547c00
+70001120
+793f800b
+20402a4f
+204022e6
+c505a1f4
+20402455
+243a21e7
+4493c004
+78547c00
+1c427e00
+600240ca
+78387c00
+7834fc00
+700a992a
+20207d86
+44944005
+20402a4d
+d8200010
+204022dc
+78587c00
+7854fc00
+20402818
+20402435
+4494c005
+2040247c
+2036a202
+20402455
+243a21fc
+202021ec
+68008031
+793ffe01
+60008031
+20402a88
+20402841
+78347c00
+700a992b
+20207d86
+44954005
+79200009
+1a227e00
+6001001e
+18007250
+d8a0043f
+1a208c01
+e8c08000
+1a220c00
+c2807f01
+d8a00030
+20407f01
+78577c00
+68008077
+98000800
+70008a01
+2034a21c
+70008a01
+68008030
+c4008000
+68008073
+6000808a
+68008074
+6000808b
+20600000
+4495c005
+6801001e
+98000a00
+18007250
+d8c0043f
+203b7f01
+d8c00030
+20207f01
+df200001
+68088015
+18408401
+2841fe01
+2420a231
+d8400000
+60088015
+184ffe50
+da204040
+9a20a200
+ea208000
+c280a239
+c3800000
+c3818000
+c200222d
+20600000
+44964005
+da60226a
+20402261
+24628000
+1a227e00
+6001001e
+18007c00
+20600000
+20402725
+2020a24b
+6801001e
+1fe08a17
+68008047
+e0a08000
+da6022aa
+20202261
+68008047
+2feffe03
+2020a250
+18007c01
+20600000
+18007c00
+20600000
+da6022a7
+20202261
+6809001e
+da6022cf
+20202261
+6808c1cf
+da602275
+20202261
+4496c005
+680b41d0
+da60226e
+20202261
+da60227b
+20202261
+da6022c6
+44974005
+da204040
+df200001
+ea208000
+1a627a00
+1a20a250
+c2002264
+18007c01
+20600000
+c2802266
+c281a266
+18007c00
+20600000
+c281a270
+c3002266
+1a208c10
+e8c30000
+98467c00
+20628000
+20202266
+c3002266
+1a208c16
+e8c08000
+98467c00
+20628000
+20202266
+c300a266
+204022b3
+20402297
+98467e00
+1fe0fe01
+20212291
+18c22400
+60048aa2
+6800c4c0
+243a2289
+68048aa2
+1a420c00
+1fe0fe05
+2020228c
+68048aa2
+1a420c00
+1fe0fe14
+24212266
+18424200
+204022bf
+18007c00
+20600000
+98002400
+1a208c02
+e8c10000
+203a228d
+204022bf
+2020227c
+1ff11600
+196c9600
+2022a2a1
+29601e0f
+24608000
+18511600
+196c9600
+24628000
+7920041c
+20600000
+18511600
+196c9600
+29601e0f
+24608000
+79207e1c
+20600000
+c3002266
+18007c00
+20600000
+c3002266
+1a208c01
+e8c08000
+c2802266
+1a208c17
+e8c08000
+c301a266
+18007c00
+20600000
+1a208c01
+e8c88000
+1c427e00
+284ffe01
+1a208c04
+e8ca0000
+20608000
+1a208c08
+e8c30000
+20402854
+1d027e00
+20600000
+1a208c02
+1a208a04
+e8c10000
+98409600
+19627e00
+e0a20000
+20205449
+c300a266
+204022b3
+9b60fe00
+9b60fe00
+98e0fe00
+98467c00
+24212266
+18007c00
+20600000
+c3002266
+18427e00
+9a267c00
+203f2266
+1a208c01
+e8c08000
+c2802266
+ea208000
+793ffe07
+e2208000
+20202266
+4497c005
+20402a4f
+1c40c201
+204028e2
+18004803
+204028d2
+20402a51
+20402a56
+20402a64
+20202762
+44984006
+20402a4d
+1c40c201
+204028e2
+18004803
+204028cc
+2040242a
+204029f1
+20402a5b
+204029eb
+20402a0d
+246c0000
+204029bb
+2020251c
+4498c006
+68008181
+98000800
+18000201
+204022da
+202022e4
+6800c093
+c4000000
+18000e04
+20407f16
+247a0000
+680940ad
+18000e04
+2040271c
+20740000
+20402308
+18000e04
+680140af
+242c7f08
+180a7e00
+9ea17e00
+20207f08
+44994006
+70018100
+78587c00
+78577c00
+204028a4
+1c4143fc
+18004801
+204028d8
+204028cc
+7940001d
+68008006
+1fe0fe01
+60008006
+204028f2
+204029eb
+20402a14
+246c0000
+4499c006
+18003600
+204028f9
+68008007
+1fe0fe01
+60008007
+204028d8
+20402a4d
+1c21c202
+18004801
+204028d2
+204028f2
+20402a51
+20402a5f
+1c427e00
+60020161
+20402a64
+18000202
+18000800
+20402a6b
+20402766
+20402332
+1c2143fd
+1cc0cc01
+20600000
+449a4006
+6800c0d1
+207a0000
+d8a0018e
+6800c515
+1fe27200
+1fe0fe01
+e0a08000
+18a20400
+1fe0fe01
+600141dc
+18420a00
+58000009
+e0a08000
+d8c04516
+20407f01
+da60458d
+df200004
+20402354
+da604577
+df200001
+20402354
+1800020a
+7041db02
+5800018e
+6001016f
+20402a4d
+204028d2
+20402a51
+20402a5f
+20402a64
+20402a6b
+20402766
+20600000
+18a20400
+1a620c00
+e8c08000
+207a0000
+1fe3fe00
+c2002358
+1fe22200
+1fe0fe02
+1fe20e00
+680141dc
+98e0fe00
+600141dc
+18420a00
+1a227e00
+1fe0fe01
+e0a08000
+1a620c00
+e8c08000
+e8c08000
+e0a08000
+1a227200
+20207f01
+6800c093
+c4008000
+18000e05
+20407f16
+247a0000
+680940b1
+18000e28
+2040271c
+20740000
+18000800
+70001008
+793f800b
+2040237a
+18000e05
+680140b3
+20207f08
+449ac006
+78587c00
+204028a4
+68008008
+1fe0fe01
+60008008
+18004c00
+204028e2
+1c40c201
+18004802
+449b4006
+204028cc
+204029eb
+20402a14
+246c0000
+204028f9
+68008009
+1fe0fe01
+60008009
+18003600
+20402a4d
+1c21c202
+18004801
+204028d2
+20402a51
+20402a5f
+20402a64
+2040264d
+18000800
+d9600600
+35330200
+1d01d003
+1c2143fd
+449bc006
+1cc0cc01
+204028cc
+204029eb
+20402a07
+242c23a4
+20402a6b
+2040251e
+c505a3ab
+449c4007
+68008010
+207a0000
+1fe0ffff
+60008010
+20402a4f
+2020239b
+449cc007
+793fd001
+79205000
+6800800a
+1fe0fe01
+6000800a
+20402a4d
+1c21c202
+204028d2
+20402a51
+20402a5f
+20402a64
+2040264d
+2d000603
+2020a3bc
+37cb8200
+202023b8
+68020165
+1fe1fe03
+1fe25000
+449d4007
+68030178
+60030040
+20402435
+2040247c
+2036a3c8
+20402455
+243a23c3
+20600000
+449dc007
+20402440
+2040223b
+24628000
+70003100
+20402841
+20202223
+449e4007
+20402850
+204023f3
+20740000
+449ec007
+20402c69
+20406caa
+20402514
+2436a3e2
+20402a88
+20406cc2
+20402489
+20402757
+20402728
+20405d08
+6800800b
+1fe0fe01
+6000800b
+20402841
+449f4007
+20402bb1
+20402a7f
+202123eb
+204021a7
+243423eb
+204026f3
+243a23d3
+20600000
+449fc007
+70015100
+70017f00
+2040245d
+793f8011
+20407fb0
+68008030
+20600000
+44a04008
+204021c9
+24740000
+18820400
+20402a6f
+60008181
+18420800
+70001120
+44a0c008
+20402a4f
+18000202
+2040274f
+1c427e00
+60020161
+20402762
+20402a4d
+7837fc00
+204024f6
+202c240d
+204028f9
+20402455
+243a23fb
+c6820000
+70007c34
+79200003
+20600000
+78387c00
+20402435
+204028a4
+44a14008
+204022f2
+202c2419
+20402455
+243a2410
+78587c00
+1d027e00
+600240ca
+20600000
+7834fc00
+c582241f
+793f8004
+70007c03
+70007d33
+204062f8
+18827e00
+60008077
+18007e00
+60030038
+68008031
+79207e01
+60008031
+20402a88
+7854fc00
+78347c00
+20600000
+44a1c008
+7856fc00
+793f8005
+793f800a
+793f8010
+793f800f
+68008047
+793ffe05
+79207e04
+60008047
+20600000
+44a24008
+70001120
+70004750
+680140bf
+6001003e
+1c427e00
+600240ca
+20780000
+1d027e00
+600240ca
+20600000
+44a2c008
+20405d04
+20402459
+60008046
+58000000
+6001025d
+58001c80
+60010051
+68008030
+79207e00
+60008030
+70004b00
+70004c00
+7000a000
+20202a88
+44a34008
+18007e00
+600441be
+e0a40000
+204021c5
+20202254
+68008011
+1fe0ffff
+60008011
+20600000
+6800c0cf
+1fe0fe01
+6000c0cf
+20600000
+44a3c008
+6800c1ce
+c001a462
+68008048
+c080a466
+20404d06
+2422a466
+204021a4
+7041ce00
+44a44009
+204033af
+204026e9
+700a9902
+20407d86
+20405cf7
+20404d6b
+2040757d
+68008030
+793ffe00
+60008030
+70468100
+6800804c
+2fe18000
+2020a476
+793f8001
+68008047
+c301a478
+6800804b
+c4030000
+793f8002
+20600000
+44a4c009
+68008174
+207a0000
+1fe20800
+20402514
+24768000
+18000200
+20402757
+18827e00
+60008077
+18007e00
+60008174
+20600000
+44a54009
+68008030
+c3012496
+18000207
+c583a495
+20402725
+2420a496
+20372496
+204024c1
+58000002
+600140c8
+20600000
+24770000
+44a5c009
+20402243
+2422a4a7
+68008047
+c301a4b0
+c502a4b4
+6800817f
+c28324ba
+680140c8
+1fe0ffff
+600140c8
+203a24a5
+6800c0c5
+98000200
+20600000
+44a64009
+20402687
+20402725
+2020a4b0
+2040600a
+203424be
+6800804b
+c28324c0
+c502a4b4
+6800817f
+c28324ba
+18000201
+20748000
+18000200
+20600000
+44a6c009
+68008019
+98000200
+c1808000
+18000200
+20600000
+68008158
+1fe1020f
+79200005
+20600000
+18000213
+202024c1
+204024ca
+44a74009
+68088047
+79200403
+60088047
+18227e00
+6000c0c5
+5800ffff
+600140c8
+20600000
+44a7c009
+6800804c
+2feffe05
+680141dc
+2020a4e0
+18000203
+1fe67c11
+20610000
+18000204
+1fe67c1b
+20610000
+1800020a
+1fe67c79
+20610000
+1800020b
+1fe67cb7
+20610000
+1800020e
+1fe67ce0
+20610000
+1800020f
+20600000
+18000203
+1fe67c11
+20610000
+18000204
+1fe67c36
+20610000
+1800020a
+d840016f
+98467c00
+24610000
+1800020e
+d84002a7
+98467c00
+24610000
+1800020f
+20600000
+68008030
+c300a4f5
+68010032
+203a24f5
+243724f7
+20402a4f
+1d00c201
+78287c00
+6801003e
+1fe37e00
+d8400500
+9840fe00
+20402a24
+204028ea
+18004803
+204028cc
+2040242a
+204029f1
+44a8400a
+6801003e
+1fe37e00
+20402a24
+204029eb
+7826fc00
+6801003e
+d84003bb
+9840b600
+37c18400
+1b420400
+600b009a
+7846fc00
+246c0000
+dd2003bb
+1c225000
+2035ab05
+20600000
+44a8c00a
+204024f0
+242c28f9
+204029bb
+c588a51c
+680100f6
+1fe0fe01
+600100f6
+1c230400
+18419c40
+44a9400a
+7823fc00
+78257c00
+7825fc00
+09800003
+198cfe00
+6000815d
+09800004
+08008007
+19827e00
+60008019
+09800003
+198cfe00
+6000815e
+68008019
+1fe67c03
+20212533
+c003a533
+6800804c
+2feffe05
+7920aa01
+44a9c00a
+09800008
+7845fc00
+78457c00
+20232631
+c588a53c
+680100f8
+1fe0fe01
+600100f8
+44aa400a
+6800815d
+2fe00e00
+7920800a
+2020a54c
+a8800e00
+2020a54b
+c583a64d
+680880b0
+a8400e00
+2420a64d
+68008047
+793ffe05
+79207e04
+60008047
+7836fc00
+44aac00a
+68008019
+1fe20200
+c505255b
+6808815e
+68008047
+793ffe00
+284ffe00
+7920fe00
+284ffe01
+7920fe01
+60008047
+284c0001
+2020a55b
+20402687
+44ab400a
+d8400000
+20402a1c
+18217e0f
+c000a587
+c000264d
+c0012659
+6808815e
+68008047
+a8400800
+2420a569
+c5852568
+c303a569
+7920000f
+44abc00a
+18227e00
+c001a589
+c002258d
+c003a578
+c004258c
+d8400004
+20402a1c
+c0052588
+c005a58b
+d8400008
+20402a1c
+c0072588
+c007a58b
+20600000
+44ac400b
+7826fc00
+7824fc00
+78277c00
+d8a000d1
+1800721e
+09800008
+19897e00
+e0a08000
+c200257e
+c583a64d
+09800010
+7d230008
+2023263d
+20202620
+2020264d
+79200010
+78267c00
+2020258e
+79200010
+79202a02
+7826fc00
+44acc00b
+c500a64d
+2aac0001
+2020a59a
+7843fc00
+7826fc00
+78467c00
+1c409602
+34530400
+242c263d
+79200010
+7823fc00
+44ad400b
+78277c00
+7824fc00
+09800003
+198cfe00
+60008180
+09800005
+c50825a5
+19897200
+1f297200
+202025a8
+09800005
+19837200
+09800003
+44adc00b
+1f227e00
+6001015f
+203a25e8
+9ea67c00
+2021263d
+44ae400b
+793f8000
+68008180
+1fe17e03
+d8a00551
+c001a5ba
+c508a5e4
+68008180
+1fe17e03
+c00125bf
+c000a5d3
+2020263d
+6801015f
+1fe67c70
+2421263d
+c507a620
+202025e4
+44aec00b
+c507a620
+6801015f
+d84002e0
+98467c00
+2021263d
+68008263
+c30025c9
+c300a5ce
+2020264d
+70026101
+6801025d
+c080264d
+d8a01000
+202025e4
+70026102
+6801025f
+c080264d
+d8a01400
+202025e4
+44af400b
+c507a620
+6801015f
+d84002e0
+98467c00
+2021263d
+68008261
+c000a5dd
+c00125e1
+2020264d
+d8a01000
+6801025d
+98a08a00
+202025e4
+d8a01400
+6801025f
+98a08a00
+09800008
+19897e00
+e0a08000
+c20025e4
+44afc00b
+09800010
+20232637
+6800c363
+c000a64d
+c508a60d
+c507a64a
+68008180
+2fe00603
+2020a60d
+6801015f
+203a260d
+44b0400c
+68008261
+c000a5f9
+c0012603
+20202a8c
+6801025d
+6809015f
+9840fe00
+6001025d
+c0002a8c
+68091000
+18408404
+98467c00
+2042a747
+2020260d
+6801025f
+6809015f
+9840fe00
+6001025f
+c0002a8c
+68091400
+18408404
+98467c00
+2042a74b
+2020260d
+44b0c00c
+6808804c
+68008180
+2fe00603
+79208406
+7d208407
+6008804c
+2420a616
+79200001
+c588a620
+284ffe06
+2020a620
+680100fa
+1fe0fe01
+600100fa
+79200005
+793f8407
+793f8001
+6008804c
+44b1400c
+6808815e
+68008047
+79207e05
+284ffe02
+7920fe02
+280ffe0a
+7920fe07
+60008047
+6801015f
+243a264d
+6800804c
+793ffe07
+6000804c
+68008180
+2fe00e01
+2020264d
+44b1c00c
+7856fc00
+6801001a
+1fe0fe01
+6001001a
+2020264d
+6801001c
+1fe0fe01
+6001001c
+2040263e
+c588a63d
+79200005
+2020264d
+44b2400c
+68008180
+2fe00603
+2420a646
+6808804c
+793f8406
+6008804c
+20600000
+6808804c
+793f8407
+6008804c
+20204c0b
+68008047
+79207e05
+60008047
+44b2c00c
+784efc00
+784e7c00
+7846fc00
+78467c00
+7844fc00
+78477c00
+7843fc00
+2030a8f9
+37d38200
+20000064
+202028f9
+44b3400c
+7824fc00
+78267c00
+09800048
+2feffe3a
+79208000
+1c020400
+57e04000
+57e03c00
+782afc00
+380bffff
+380cffff
+20000020
+29a80000
+1d827e00
+60018178
+1da27e00
+6000817b
+18424000
+2020a66e
+2020263d
+44b3c00c
+09800048
+57e03e00
+57e00800
+57e05c00
+57e02400
+18007e00
+09800010
+2023263d
+5ffffffc
+9a417e00
+60020165
+1ba27e00
+60018175
+1b827e00
+60008173
+18827e00
+60008174
+1dc27e00
+6001017c
+1c227e00
+08008220
+28201e02
+7920800b
+2020264d
+44b4400d
+68008047
+c4018000
+793ffe03
+79407e06
+60008047
+6800c0c5
+c009a69c
+c1038000
+6800804b
+c4030000
+793ffe06
+79207e07
+6000804b
+793f8002
+68014246
+247a0000
+6800804b
+793ffe07
+6000804b
+2020525d
+44b4c00d
+680084b7
+1fe37e00
+c008a6b8
+c00926c0
+c00c26e9
+c03fa6a8
+c1818000
+680084b8
+c015a6b0
+c008a6ab
+20600000
+680084b8
+79207e07
+20600000
+20748000
+68008030
+c3820000
+70007c31
+20600000
+20748000
+68008031
+2feffe04
+2020a6b5
+20600000
+793ffe04
+60008031
+20600000
+44b5400d
+6800804c
+79207e02
+6000804c
+70801101
+68008030
+2feffe04
+20600000
+44b5c00d
+6800804c
+793ffe02
+6000804c
+70801100
+20600000
+44b6400d
+1c427e00
+6002420c
+1c40a203
+2034a6cc
+1d00a203
+68090032
+1a227e00
+793ffe1b
+9846fc00
+68010075
+20407f86
+18072600
+9a667e00
+202126d6
+9840fe00
+9a20fe00
+60020034
+70455b00
+68008030
+79207e01
+60008030
+68008073
+6000808a
+58000000
+6001c169
+6001c16c
+6000c159
+700a990b
+20407d86
+680140c1
+6001003e
+24748000
+18808fff
+20600000
+44b6c00d
+68008030
+c4008000
+793ffe01
+60008030
+680140bf
+6001003e
+7855fc00
+700a990c
+20207d86
+44b7400d
+78377c00
+68008030
+c280a700
+c6088000
+68008047
+c3818000
+68008048
+247a0000
+6800804b
+c3830000
+18007e00
+20600000
+c301270f
+6800808a
+c0012706
+68008047
+c281a718
+c5842718
+2434a718
+68008048
+243a2718
+680080ef
+1fe0ffff
+600080ef
+243a26fe
+7000ef10
+20202718
+6800808a
+c080a718
+6800808b
+203a2718
+1fe0ffff
+6000808b
+68008047
+c3818000
+24768000
+6800808a
+1fe0ffff
+6000808a
+20600000
+44b7c00d
+78487c00
+18423600
+20402260
+78547c00
+24628000
+18003600
+78347c00
+20600000
+6800c158
+a881fe00
+20600000
+44b8400e
+793f8001
+70026a00
+68008263
+207a0000
+2feffe00
+d8c01000
+2040cd79
+44b8c00e
+6800826a
+c000a73b
+70026a00
+68008263
+c4008000
+d8c01400
+20404d79
+6800826a
+c000a741
+20600000
+68008263
+793ffe00
+60008263
+58000000
+6001025d
+20600000
+68008263
+793ffe01
+60008263
+58000000
+6001025f
+20600000
+68008263
+79207e00
+60008263
+20600000
+68008263
+79207e01
+60008263
+20600000
+44b9400e
+1d00c201
+204028ea
+18004803
+204028d2
+20402a51
+20402a5f
+20202a64
+44b9c00e
+20402a4d
+1d027e00
+680a40ca
+98467e00
+c1808000
+28203e00
+2420a761
+68008019
+207a0000
+2040274f
+28203e10
+2020a64d
+1c230400
+18419c40
+44ba400e
+7823fc00
+78257c00
+782dfc00
+793f8010
+18827e00
+08008603
+18227e00
+08008604
+68008047
+08008004
+08008603
+78247c00
+08008608
+784dfc00
+78447c00
+78457c00
+793faa02
+d8400000
+20402a1c
+44bac00e
+18217e1f
+c009a7b4
+c000264d
+c000a64d
+c0012797
+c001a7c5
+c00227cb
+c003a78c
+c00427ca
+d8400004
+20402a1c
+c00527c7
+c005a7cd
+d8400008
+20402a1c
+c007a7cd
+202027c7
+44bb400e
+782efc00
+7824fc00
+78277c00
+1800721e
+d8c000b3
+e8c08000
+08008608
+c2002792
+c503a7f7
+2020264d
+44bbc00e
+68008181
+1fe20800
+68008090
+1fe23800
+6801c0aa
+1fe23a00
+680140a4
+1fe25c00
+7824fc00
+782e7c00
+1c022200
+204028e2
+782afc00
+20000020
+1c221600
+68020161
+1fe24200
+53c07e00
+79207e3a
+08008648
+53e07e00
+08008648
+19624200
+1a224000
+78247c00
+08008610
+78447c00
+2020264d
+44bc400f
+78277c00
+7824fc00
+782e7c00
+680084b6
+1fe105f8
+d8c004b6
+18408408
+1840a7b8
+242127c2
+e8c48000
+08008648
+1a620400
+202027bc
+e8c48000
+08418600
+202027f7
+782e7c00
+202027d0
+782e7c00
+79200010
+202027d0
+79202a02
+782efc00
+202027d0
+79202a02
+782efc00
+79200010
+44bcc00f
+6800804c
+c302a7e5
+18267c03
+202127e5
+78477c00
+784e7c00
+782efc00
+7843fc00
+79202a01
+2aaffe02
+2020a7df
+580abeee
+08008614
+202027e3
+585faeba
+08008618
+58000012
+08008606
+7823fc00
+79200010
+78277c00
+7824fc00
+c502a800
+6800c1db
+08008603
+680141dc
+98007200
+c50827ef
+08008605
+202027f0
+0800860d
+1f227e00
+203a27f7
+6801016f
+98000c00
+e8c08000
+08008608
+c20027f4
+78247c00
+08008610
+78447c00
+204024c1
+6800804c
+c302a64d
+18007e00
+08008606
+2020264d
+44bd400f
+c5082808
+68008180
+08008603
+6800815f
+98002600
+08008605
+2020280d
+68008180
+08008603
+6801015f
+98002600
+0800860d
+d8c00551
+1a627c00
+2022a814
+e8c08000
+08008608
+1a60a7ff
+2020280e
+680100fc
+1fe0fe01
+600100fc
+202027f7
+68020165
+1fe0a207
+68010171
+243a281e
+1a20a3fd
+20202826
+1feffe0c
+68190040
+18408401
+98467e00
+24212825
+1a20a3ff
+20202821
+1fe67e00
+37d18200
+2c400600
+2420a826
+98005200
+1a225000
+98005200
+20600000
+44bdc00f
+37d10200
+1b427e00
+98000c00
+1ff17e00
+9c467200
+1f217203
+2422a837
+18007e00
+2020283b
+d8400ea6
+18007e00
+9840fe00
+c2002839
+98c0fe00
+1fe6fc0c
+20407f86
+1807fe00
+60010171
+20600000
+44be400f
+1b427e00
+1b220400
+98467c00
+7d217e2c
+98460400
+58000ea6
+284c000f
+2020a84c
+5fff0ea6
+98408400
+600b0447
+207b0000
+600b0038
+20600000
+78587c00
+68030447
+203b2854
+68030038
+9b20e000
+1e00e00a
+58000ea6
+9e067e00
+2fec000f
+2020a85e
+5800f15a
+9e00e000
+1e023400
+20600000
+18007c00
+2020285c
+44bec00f
+20402918
+1c227e00
+1fe17f80
+2c800e03
+2420a869
+1fe97e00
+9ae0fe00
+2020286a
+1ae27e00
+1fe6fc4f
+782afc00
+20407f86
+18072200
+1a2085d8
+20212872
+1a238400
+20202874
+18438400
+18408401
+44bf400f
+68008031
+c301a885
+680240d2
+9c267c00
+20212885
+204028a4
+6800c0d9
+207a0000
+68008031
+79207e02
+60008031
+6802c0e7
+6002c0da
+e8c28000
+6002c0df
+204028a9
+68008031
+c4010000
+2c2ffe01
+2020a8a1
+18492200
+18410e07
+580040da
+9a20a200
+ea208000
+afec0000
+2020a892
+18427e00
+2020289e
+6800c0e4
+98002400
+1c227e00
+1fe17f80
+1fe97e00
+9ae0fe00
+9a46fc00
+580040f2
+20407f86
+18072200
+9a208c00
+e8c08000
+6000c0e5
+98000400
+20600000
+6800c0e5
+98000400
+20600000
+68008031
+793ffe02
+793ffe03
+60008031
+20600000
+44bfc00f
+d8a040f2
+1800720a
+20407ec6
+d8a040f2
+18002600
+18000e02
+6802c0da
+98000400
+28e1fe02
+2020a8b5
+18430400
+284c0000
+2020a8b9
+1a627e00
+e0a08000
+184b0400
+1a60a602
+2a61fc28
+2420a8c2
+6802c0df
+98000400
+28e1fe02
+2020a8c2
+18430400
+1a667c4e
+202128b5
+18002601
+18e08fff
+2422a8b0
+da2040f2
+18a27e00
+9a267e00
+6000c0e4
+20600000
+44c04010
+20402860
+6800817f
+c302a8d1
+680884cc
+2020291f
+44c0c010
+20402860
+6800817f
+c30228d7
+680884cb
+20202933
+18005a00
+6801c0a7
+98005800
+20600000
+44c14010
+6800c1d3
+1fe25a00
+6801c1d0
+1fe25800
+20600000
+44c1c010
+680140a4
+1fe25c00
+6800c0a3
+1fe25a00
+6801c0a0
+1fe25800
+20600000
+44c24010
+68010044
+1fe25c00
+68008043
+1fe25a00
+68018040
+1fe25800
+20600000
+c51028f5
+c68e8000
+c68f8000
+1d815900
+782afc00
+20000020
+20600000
+44c2c010
+2030a90a
+708955d4
+20000004
+708955d2
+20000004
+708955d1
+20000004
+6800c1de
+c0002908
+c000a915
+c0012908
+c001a915
+c0022915
+c0102915
+708955d0
+708956e0
+18002a00
+7850fc00
+78507c00
+782f7c00
+70890200
+70890100
+70890000
+70890300
+70890470
+70890600
+20600000
+708955d0
+708956c0
+2020290a
+44c34010
+70890200
+70890100
+70890018
+708903a7
+7089047f
+20600000
+44c3c010
+60088017
+1840a204
+70896d07
+20202981
+44c44011
+708901cf
+2000000a
+708900ff
+708903af
+708904ff
+2000000a
+708902a0
+20600000
+6800c1e0
+203a2931
+1840a202
+20600000
+1840a200
+20600000
+44c4c011
+60088017
+2040292d
+20402981
+58000500
+20402a8f
+70890601
+7089003c
+708901e0
+70896d12
+2000000a
+70890201
+7089023d
+2000000a
+708903b7
+2000000a
+7089027f
+6800c1de
+c000294b
+c000a94f
+c0012953
+c001a957
+c002295b
+c010295f
+708956f0
+20402965
+708955d8
+20600000
+708956df
+20402965
+708955df
+20600000
+708956ff
+20402965
+708955df
+20600000
+708956ce
+20402965
+708955d8
+20600000
+708956cb
+20402965
+708955d8
+20600000
+708955d0
+708956c0
+7089574c
+7089586c
+70895950
+20600000
+20000004
+708955d1
+20000004
+708955d2
+20000004
+708955d4
+20600000
+70804206
+680140c3
+c307296d
+98000c00
+d8408900
+e8c08000
+c07fa977
+98418a00
+e8c08000
+e0a08000
+20202971
+44c54011
+20402be5
+204029c9
+580007d0
+9c40fe00
+60020169
+79202a03
+18002a00
+2455a998
+202029ab
+44c5c011
+58000960
+9a208400
+6800c0bd
+70895f04
+984ffe00
+6808c0be
+9846fc00
+20407f86
+1807a200
+18077e00
+1ff07e00
+1ff27e00
+9846fc00
+20407f86
+1807fe00
+1fed7e00
+1fe3fe00
+9a21fe00
+60120960
+70895f44
+70895fc4
+20600000
+44c64011
+70890602
+5803d090
+20402a8f
+7089007f
+20000082
+70895230
+708901d0
+70895270
+708952f0
+18007232
+68108980
+c282a9a6
+c20029a3
+6000c0ce
+70890100
+70890000
+70890600
+20600000
+44c6c011
+6800c0ce
+79207e05
+60108952
+68188950
+18410407
+1fe9fe00
+9841fe00
+60108950
+68108951
+793ffe00
+60108951
+68108952
+793ffe05
+60108952
+20600000
+44c74011
+68110981
+1ff1fe00
+1fe97e00
+1fe67e00
+1fe17eff
+1fe6fc0a
+20407f86
+1807fe00
+1ff27e00
+18070400
+9841fe00
+60008018
+20600000
+70804206
+6810896b
+793ffe04
+793ffe05
+6010896b
+70890500
+70890400
+70890470
+708905ff
+6810896b
+79207e04
+79207e05
+6010896b
+204029e9
+68108968
+79207e07
+60108968
+793ffe07
+60108968
+79207e07
+60108968
+70804205
+20000001
+70804204
+6810896b
+1fe17ecf
+6010896b
+1fe1fe30
+6010896b
+20600000
+58000f0f
+20202c18
+5800080f
+20202c18
+44c7c011
+20402924
+78507c00
+7830fc00
+782b7c00
+20600000
+44c84012
+6800804c
+2feffe02
+7920fe00
+60108011
+d8c00062
+e8c48000
+98006400
+e8c38000
+98006600
+68008054
+1fe0e9ff
+782d7c00
+20600000
+1b427e00
+6003009a
+7846fc00
+242c28f9
+dd2003bb
+1d00d001
+1d0151fc
+20600000
+7826fc00
+37cb8400
+202c29ff
+2d000402
+2420aa08
+202029ff
+44c8c012
+d9600600
+7826fc00
+34730400
+7846fc00
+242c28f9
+20600000
+44c94012
+7826fc00
+37c18400
+7846fc00
+242c28f9
+dd2003bb
+1d0151fc
+20600000
+44c9c012
+98002200
+1c227e00
+98409600
+19627e00
+600240ca
+1a227e00
+20600000
+1fe20400
+44ca4012
+18427e00
+20407f50
+1c307e00
+79207e2c
+20407f39
+793ffe2c
+20402a77
+20407f39
+20740000
+20407f43
+98003600
+37c18200
+20600000
+44cac012
+20382a38
+35330200
+1d020400
+20202a3b
+20372a3a
+34730200
+1c420400
+20342a47
+28400601
+2420aa33
+44cb4012
+68008030
+c4000000
+680240ca
+98467e00
+24610000
+1fe67cff
+20212a33
+20600000
+28400603
+2420aa33
+20202a3e
+44cbc012
+d9600600
+20202a33
+78547c00
+20202a4a
+78347c00
+20202a4a
+44cc4013
+204029f1
+7850fc00
+78307c00
+20600000
+44ccc013
+d9600e43
+34730200
+782b7c00
+20600000
+44cd4013
+d9600d00
+34730200
+20600000
+44cdc013
+d9600e43
+35330200
+782b7c00
+20600000
+44ce4013
+51207e00
+782efc00
+79202a00
+08008648
+784efc00
+20600000
+1ca20400
+18418460
+18421c00
+20600000
+44cec013
+6800c090
+1fe0fe01
+c083aa74
+18007e01
+6000c090
+98000800
+20600000
+1b220400
+20748000
+1b420400
+20600000
+1c427e00
+20748000
+1d027e00
+20600000
+44cf4013
+680a004d
+20402a7b
+98461600
+19627e00
+68090051
+18438400
+98467e00
+20600000
+44cfc013
+20402a7b
+6002004d
+20600000
+44d04014
+20202a8c
+20202a8e
+207a0000
+1fe37e00
+1fe0fffd
+1fe0ffff
+2422aa92
+18007e00
+20600000
+df200010
+d8a00000
+20407ec6
+d8a0043f
+df20000a
+20407ec6
+7009b200
+700a9900
+70048c00
+70017f00
+7004d100
+44d0c014
+70016d00
+70015100
+70015c00
+589e8b33
+6001c0a7
+58000153
+60010083
+7000851e
+70008601
+70008807
+5812e904
+60018080
+70009060
+7040d005
+70001402
+6800c65a
+245a74c1
+6800c4be
+245a7518
+44d14014
+20758000
+58000000
+600141dc
+1c437e00
+60024094
+20600000
+5800ee21
+60110050
+6812011c
+60020abe
+6810813e
+60008abd
+c301e45b
+7835fc00
+c303aacc
+7855fc00
+1ce27e00
+243a2acc
+6810813b
+c2812acc
+d85fffff
+20202b3c
+6811813c
+6011804c
+e8c08000
+1fe1feef
+e0a08000
+20402c23
+6810804f
+79207e04
+6010804f
+20402c23
+2055aadf
+6810804e
+793ffe03
+6010804e
+20402c23
+2435e45b
+c6958000
+70800608
+20600000
+6800c198
+60108086
+6801c18d
+60118080
+68024181
+60120074
+6802417d
+60120070
+68044185
+60140078
+68044190
+98000000
+68140140
+600400a1
+204064ca
+20600000
+18027e00
+60044190
+68140070
+6004417d
+e8c40000
+e0a40000
+68118080
+6001c18d
+68108086
+6000c198
+20202c29
+68108063
+243a2b00
+6801c16f
+247a0000
+708063c0
+70800680
+6810812d
+c4008000
+68118149
+6001c16f
+20600000
+44d1c014
+1b427e00
+20407f37
+680a415f
+18467cff
+20610000
+1fed7e00
+1ff27e00
+9846fc00
+20407f86
+1807fe00
+d84000c8
+20407f91
+60008099
+24342b15
+1fe67e00
+6809c16f
+9840fe00
+6001c16f
+58000000
+6002415f
+20600000
+6800c177
+79207e02
+6000c177
+20202b23
+d85fffff
+6800c176
+793ffe07
+6000c176
+44d24014
+20402c29
+6800c157
+6000c17c
+6800c17a
+79207e07
+6000c17a
+44d2c014
+204029e7
+6802415f
+9840fe00
+6002415f
+20402aef
+6802c178
+6012004c
+1fef2200
+37d98200
+1b227e00
+60034163
+70800502
+37d98200
+37d98200
+1a227e00
+6010804f
+70800502
+37d98200
+37d98200
+601a004c
+70800510
+37df8200
+44d34014
+58000000
+1ce27c00
+2022ab4c
+6810813c
+6818813d
+98467c00
+20212b4a
+18427e00
+9ce67e00
+1fe0fe01
+1fe0fe08
+37d98200
+9e20fe00
+680a415b
+9840fe00
+6809c16f
+984ffe00
+1fecfe00
+1ff1fe00
+1fe0fe6e
+d8400ea6
+9846fc00
+20407f86
+1807fe00
+1ff07e00
+18070400
+9841fe00
+680b4163
+20407f2c
+18423200
+68034048
+20402854
+1b427e00
+60030a9a
+1ce27e00
+e0a08000
+6810811d
+1fe1fef0
+e0a08000
+20600000
+44d3c014
+20402afa
+6801c16f
+207a0000
+6800c091
+207a0000
+6800c65a
+203a2b74
+6800c5b1
+207a0000
+6800c4c0
+247a0000
+20402c3a
+247a0000
+6800c040
+2fe00e03
+2420ab9d
+68014042
+207a0000
+20758000
+44d44015
+680880a0
+68014042
+984ffe00
+18518400
+184b0400
+98467e00
+680a4044
+9840fe00
+6808c156
+98467e00
+1ff06000
+44d4c015
+6801404e
+1fe37e00
+20407f50
+1e027e00
+20407f39
+1b420400
+20407f37
+20740000
+20407f49
+44d54015
+6800c178
+98467c00
+20212b18
+600a415b
+20403328
+204052fb
+680a415b
+20202b2a
+44d5c015
+6800c040
+c3800000
+c3818000
+6800c65a
+203a2ba5
+6800c5b1
+207a0000
+44d64015
+6800c36e
+243a2baa
+6800c093
+207a0000
+68014154
+207a0000
+6808c156
+98467e00
+d8401d4c
+984ffe00
+20202b93
+44d6c015
+7855fc00
+68008030
+c4008000
+2436abd0
+20402bcb
+680140c1
+6001003e
+68008047
+c281abde
+c586abde
+20405274
+243a2bde
+6800c55c
+c280abde
+7000a000
+c586abde
+6800c174
+203a2be2
+1fe0ffff
+6000c174
+20600000
+d8e00001
+202060cd
+d8e00001
+202060d1
+70415900
+6801c169
+1fe0fe01
+6001c169
+20600000
+44d74015
+680940c1
+18430400
+6801003e
+9840fe00
+6001003e
+7000a000
+6801c16c
+1fe0fe01
+6001c16c
+6800c159
+1fe0fe01
+6000c159
+20600000
+7000a000
+6800c173
+6000c174
+20600000
+6808c172
+600880a0
+20600000
+44d7c015
+6800c178
+247a0000
+70804206
+58000f0c
+20402c18
+58030d40
+20402a8f
+37d98200
+1e226000
+204029e7
+70804204
+2000000a
+37d98200
+1e227e00
+9e067e00
+1fe0fe30
+d84000ff
+20407f91
+6000c178
+20007530
+20007530
+20007530
+20600000
+6800c178
+247a0000
+708044ff
+70804206
+204029e7
+580003e8
+9e20e000
+07e00000
+1e227e00
+20002ee0
+20002ee0
+20002ee0
+20002ee0
+20002ee0
+20002ee0
+20002ee0
+20002ee0
+20002ee0
+9e067e00
+1fe0fe30
+d84000ff
+20407f91
+6000c178
+20007530
+20007530
+20007530
+20600000
+d8a00fff
+98a10a00
+6800c175
+1fe17ef0
+1fed7e00
+98a1fe00
+6011004c
+e8c10000
+e0a10000
+58000001
+20202c24
+58000002
+37d98200
+60108005
+37d98200
+37d98200
+20600000
+44d84016
+680200a1
+6012004c
+58000004
+20402c24
+680200a5
+6012004c
+58000008
+20202c24
+68014152
+f9207e00
+60014152
+20600000
+68014152
+f93ffe00
+60014152
+20600000
+44d8c016
+20403326
+68014152
+1fe22200
+6800804c
+2feffe06
+7920a20b
+68008078
+6808807c
+9840fe00
+68088048
+9840fe00
+7d3a220a
+6800c4ff
+7d3a2201
+6801025d
+6809025f
+9840fe00
+7d3a220d
+68044668
+7d3a220f
+68044670
+7d3a220e
+6800c1ce
+7d3a2208
+6800c092
+2fe1fe0a
+2040ac5b
+5ffffff8
+9a212200
+1a227e00
+60014152
+20600000
+68110112
+7d3a2206
+6811010e
+7d3a2205
+20600000
+68120138
+793ffe1b
+6012004c
+20402c21
+20202a8c
+6812013c
+793ffe14
+6012004c
+20202c23
+68014150
+c2802a8c
+20600000
+68014150
+c280aa8c
+20600000
+68014150
+c2812a8c
+20600000
+44d94016
+20402c7a
+1a60a4cd
+ea408000
+c1000000
+c000ad06
+c0012c7f
+20600000
+68094241
+18422600
+20600000
+20402f3d
+2020307d
+20403084
+2040305a
+2040305e
+202030a2
+20403231
+5800004e
+2040322f
+204032ba
+1a60a292
+ea220000
+2020322c
+20402c7a
+1a60a491
+ea488000
+20402c90
+1a608a91
+20202e56
+20402c94
+18408401
+18410403
+20600000
+1a60a4ae
+ea408000
+1fe17e03
+1fefa204
+1a60fe97
+9a20fe00
+98408c00
+e8c08000
+2020322f
+2040326c
+2040666a
+580007e2
+da200aa2
+d8400004
+204066b3
+2040666d
+68020aa2
+20403227
+247a0000
+680240a0
+20203227
+20403241
+58000000
+2040323f
+2040323a
+1fe17e07
+2020323c
+2040323a
+79207e04
+2040323c
+20203235
+2040325d
+c000acb7
+c0012cbc
+20600000
+2040323e
+1a608ad1
+204032d6
+20403242
+20202cac
+2040325a
+20202cb8
+1a60a28c
+ea208000
+1fe0fe01
+1a608a8c
+e0a08000
+c0102dd2
+20403258
+c000acca
+58000001
+2040325b
+20403258
+c080acac
+1a60a2d3
+ea208000
+1fe0fe01
+20402cd5
+c0022cd2
+20402c8a
+20402d04
+20202d8f
+20402cd4
+20202cac
+58000000
+1a608ad3
+202032b4
+2040323e
+2040325a
+20403241
+20202cac
+2040325d
+c001acd8
+2040323a
+2fec0004
+2020aca9
+2040325d
+c000acd7
+c0012cd8
+20600000
+20403253
+c1ff8000
+20402ce9
+24562cf4
+20600000
+78567c00
+1a60a2ce
+ea208000
+c1808000
+1a60a2d0
+ea208000
+c1800000
+58000001
+20402cfd
+20403237
+20207feb
+1a60a2d0
+ea208000
+203a2cff
+1fe0ffff
+2040323f
+58000002
+20402cfd
+20402c8a
+20203237
+1a608ad2
+202032b4
+58000003
+20402cfd
+20403258
+243a2cc8
+20402c8a
+58000002
+20203238
+c6930000
+79200027
+44d9c016
+1a60a28e
+ea208000
+c000ad0f
+2040306a
+24342d16
+20402d1b
+1a608a8e
+204032d6
+20402d2c
+24342d7d
+20402ce4
+20402d8f
+20402e7a
+793f8027
+20600000
+20628000
+79207e1c
+20600000
+1a60a2c2
+ea208000
+1fe0fe01
+1a608ac2
+e0a08000
+c0022d23
+c002ad27
+20600000
+1a60a2ad
+ea208000
+1a608aab
+202032b4
+1a608ac2
+204032d6
+1a60a2ac
+ea208000
+20202d25
+20403253
+c0ffaeb1
+44da4016
+20402d3a
+24342d36
+20402d53
+20402e71
+58000001
+1a608a8b
+202032b4
+1a60a28b
+ea208000
+c000ffe7
+20600000
+1a6084d8
+e8410000
+20407f9c
+24740000
+1a227e00
+60008aae
+1a608ab2
+204032d6
+20402cac
+6000919e
+68008aae
+1fe22200
+1a208401
+d8a0119f
+1a227200
+1a420c00
+20407f01
+da20119e
+c6938000
+1a608a86
+e0a88000
+18427200
+1a608a22
+1a220c00
+20207f01
+1a60a286
+ea208000
+1fe0fe02
+1a608a88
+e0a08000
+2040323a
+20403235
+1a60a286
+ea208000
+1fe9fe00
+1a60a285
+ea288000
+18410403
+18438400
+9841fe00
+1a60a2c3
+ea288000
+9840fe00
+e0a08000
+1a60a286
+ea208000
+98007200
+1a608c22
+20207f01
+2040324f
+2040325a
+20402e6d
+20402cac
+6000919e
+20402d77
+2040323a
+79207e03
+2040323c
+20402d53
+20402d33
+20202d14
+6000919f
+20403224
+600211a0
+d8400006
+da20119e
+20202d4c
+1a60a2b2
+ea208000
+203a2d6b
+1a60a2da
+ea210000
+20207f9c
+20402c7a
+20402afa
+6801c16f
+207a0000
+1a6084dc
+e8410000
+20407f9c
+1a6084b6
+e8440000
+20407f49
+600a415b
+20202b2a
+20402c7a
+1a608a8f
+204032d6
+20402da4
+242c2dae
+2437adae
+20402dd6
+20402e75
+20402c7a
+1a60a285
+ea208000
+1fe0fe01
+20403232
+20403253
+c0ffaed0
+20402cdb
+58000000
+1a608a8c
+e0a10000
+58000000
+20202d34
+7857fc00
+20402df7
+20402c7a
+1a60a2c3
+ea208000
+c000adac
+20402e11
+20202e45
+20402e45
+20202d97
+44dac016
+1a60a28d
+ea208000
+1fe0fe01
+1a608a8d
+e0a08000
+20403253
+c0ffadcc
+1a60a28f
+ea288000
+18408401
+1a608a8f
+e0a88000
+1a60a2cc
+ea208000
+98467e00
+243a2d92
+44db4016
+2040325d
+c001acbe
+1a60a2d1
+ea208000
+1fe0fe01
+1a608ad1
+e0a08000
+c0012cb3
+20402caf
+58000001
+20403238
+20202d8f
+1a60a28d
+ea208000
+c1ff8000
+1a608a8d
+204032d6
+20202dd4
+1a608a8c
+204032d6
+700a993a
+20207d86
+20402dde
+1a60a284
+ea208000
+207a0000
+98007200
+1a608c02
+1a608a64
+20207f01
+2040325f
+1fe97e00
+1a608a84
+e0a08000
+1fe0fe01
+1a608c01
+98c08c00
+e8c18000
+1a608ac4
+e0a18000
+2040325f
+1fe37e00
+1fe17e03
+1a608aca
+e0a08000
+20600000
+7844fc00
+7843fc00
+58555555
+98001e00
+20600000
+20402918
+1a60a290
+ea288000
+20202933
+20402dee
+20402df3
+79202a00
+782efc00
+78307c00
+7850fc00
+204053c4
+2040322a
+98001200
+08008620
+7824fc00
+1a60a288
+ea208000
+98007200
+1a608c42
+e8c08000
+08008608
+c2002e06
+78247c00
+08008618
+78447c00
+37d38200
+44dbc016
+20000064
+784efc00
+20600000
+7857fc00
+18002a00
+1a60a290
+ea288000
+2040291f
+20402924
+20402dee
+7826fc00
+7830fc00
+78507c00
+204053c4
+2040322a
+98001200
+78287c00
+1a60a289
+ea210000
+98003600
+37c18400
+242c2e4d
+7824fc00
+09800008
+19897e00
+1a608a00
+e0a08000
+1a60a2cd
+ea208000
+c0012e33
+44dc4017
+1a60a200
+ea208000
+1a60a287
+ea288000
+a8400e00
+2420ae45
+09800008
+19897e00
+e0a08000
+1fe97e00
+1fe1721f
+2022ae3d
+09800008
+19897e00
+e0a08000
+c2002e39
+09800018
+1fef7e00
+1ff17e00
+e0a18000
+20232e45
+7837fc00
+7846fc00
+20600000
+784efc00
+7846fc00
+7844fc00
+7843fc00
+2030a8f9
+37d38200
+20000064
+202028f9
+20402e4f
+20202e45
+204029bb
+207a0000
+1a60a2ea
+ea288000
+da200d9e
+20402e58
+1a608aea
+e0a88000
+20600000
+da4000ff
+20202e5a
+1a227e00
+98408a00
+68008018
+e0a08000
+18408401
+1a427e00
+98410400
+20600000
+d8400000
+1a220c00
+e8c08000
+98408400
+c2002e64
+184c8400
+20600000
+20402c7a
+20402e9f
+58000001
+20403272
+58000000
+20402e73
+e0a08000
+20600000
+20403270
+1fe0fe01
+1a608afc
+202032b4
+1a60a2fd
+ea208000
+1fe0fe01
+1a608afd
+202032b4
+44dcc017
+20403270
+1fe67c7c
+20610000
+1a60a2fd
+ea288000
+98460400
+20402e6d
+58000102
+9a60a200
+ea208000
+98467c00
+24212e8d
+58000103
+9a60a200
+ea208000
+98467c00
+20212e99
+20600000
+1a60a2fe
+ea208000
+c0012e93
+1fe0fe01
+20403272
+c000ae9f
+5800000a
+204032b0
+58000000
+204032b2
+1a60a2ff
+20202ea5
+1a60a2fe
+ea208000
+c0002ea7
+1fe0ffff
+20403272
+c0002ea7
+58000005
+204032b0
+58000000
+204032b2
+58000100
+9a60a200
+ea208000
+2020326a
+58000002
+204032b0
+58000000
+204032b2
+58000101
+20202ea4
+79200026
+20402c83
+58000001
+20203256
+1a60a28b
+ea208000
+c000ffe7
+20403253
+c000aeb9
+c0012ebd
+c001aec1
+20202a8c
+58000011
+20403256
+70119eaa
+20202ec4
+58000012
+20403256
+70119e55
+20202ec4
+58000013
+20403256
+70119e22
+2040323a
+1fe17e07
+6000919f
+20403224
+600211a0
+7011a400
+da20119e
+d8400007
+20402d4c
+20402d53
+20402d33
+20207fe7
+20403253
+c17f8000
+c008aed6
+c0092ed9
+c009aedc
+20600000
+58000002
+20403256
+20202d9f
+58000003
+20403256
+20202d9f
+580000ff
+20403256
+700a9939
+20407d86
+1a60a266
+ea220000
+2040322c
+20202d9f
+793f8026
+20402f08
+20402f22
+20403263
+200007d0
+20403261
+c07fadd4
+20402da4
+242c2efa
+2437aefa
+20402dd6
+20402c7a
+1a60a292
+ea2a0000
+204030be
+2022aead
+20402c7a
+1a60a266
+ea220000
+c0002ee7
+2040322c
+20202f1c
+20403261
+1fe0fe01
+20403264
+20402f04
+1fe0fe01
+1fe17e01
+20402f06
+c0002f0c
+c000af0e
+20600000
+5800018b
+202032d0
+da20018b
+202032b3
+20403267
+20403224
+2040322c
+20202c8a
+20402f08
+20202ee8
+20402c83
+20202ee8
+793f8026
+20402c8a
+20403253
+c1ff8000
+20402f22
+20403263
+200007d0
+20403261
+c07fadd4
+20402da4
+242c2f27
+2437af27
+79200026
+20403263
+580000ff
+20403256
+700a993c
+20207d86
+79200027
+70119eff
+2040323a
+20402d77
+20202d53
+20403261
+1fe0fe01
+20403264
+20402c8a
+20202f16
+20403267
+580000ff
+20403256
+20202f10
+44dd4017
+20402c7a
+580031b0
+1a608ade
+e0a10000
+20402f3d
+204048ea
+204032b6
+44ddc017
+c0003055
+c000af45
+c007af41
+20202a8c
+2040326c
+df200080
+d8a00d9e
+20207ec6
+20402f4c
+20402f4f
+204048d3
+20202f42
+44de4017
+20402f4c
+20402f4f
+20402fbd
+204048d3
+20403019
+20202f47
+20403291
+20403296
+20203299
+2040328f
+c1800000
+20402f55
+20402f65
+2040316b
+20202f96
+20403294
+c3800000
+79207e00
+20403297
+20403267
+20403299
+700d3800
+2040324f
+20402f61
+1a608a00
+df200042
+20207ed4
+20403231
+2040327d
+2040322c
+20202c8a
+44dec017
+2040324c
+c000af8d
+20403245
+c000ac8a
+58000136
+9a60a200
+ea2a0000
+1c427e00
+98467c00
+24412d18
+1fe22400
+58000136
+9a60a200
+ea220000
+1fe20400
+5800013a
+9a60a200
+18427e00
+ea288000
+98408400
+1a427e00
+98467c00
+24610000
+793ffe1c
+58000136
+9a608a00
+e0a20000
+20402c8a
+20403278
+1fe0fe01
+2040327b
+c1810000
+2040327a
+2020324f
+1c427e00
+da200136
+204032bf
+e0a20000
+2020327a
+da200d9e
+20402f94
+1a608aeb
+e0a88000
+18467c50
+24610000
+20202c8a
+df200100
+20202e62
+20402f99
+20402fa5
+20202fb1
+58000180
+204032d0
+207a0000
+d8e0000b
+20407f16
+247a0000
+204032a7
+58000001
+60008d54
+58000000
+e0a38000
+202031b8
+5800017e
+204032d0
+207a0000
+d8e0000e
+20407f16
+247a0000
+204032aa
+d8a00d64
+df200002
+20407ec6
+700d6400
+202031ed
+5800017f
+204032d0
+207a0000
+d8e0000c
+20407f16
+247a0000
+204032ad
+d8a00d74
+df200002
+20407ec6
+700d7403
+20203207
+2040328f
+c1808000
+20402fc1
+20202fcb
+20403294
+c3808000
+79207e01
+20403297
+2040329c
+20402c83
+58000000
+da200106
+204032bf
+202032c5
+2040316e
+2437af5e
+1a608c00
+58000109
+9a608a00
+df200008
+20407f01
+5800010b
+204032d0
+c0552fd9
+c02aafed
+c0113001
+c07fb212
+20202f5e
+204032bd
+c000afdd
+c0012fe8
+20600000
+58000001
+20402ff7
+58000001
+20403289
+58000080
+da200130
+204032b3
+2040327d
+da200131
+204032bf
+2020322d
+58000001
+20402fff
+58000002
+20403289
+20202fe1
+204032bd
+c000aff1
+c0012ff9
+20600000
+20402fdf
+58000106
+204032d0
+c000aff6
+20600000
+58000002
+da200106
+202032b3
+20402fea
+58000107
+204032d0
+c000affe
+20600000
+58000002
+da200107
+202032b3
+204032bd
+c000b005
+c0013011
+20600000
+58000106
+204032d0
+c0013009
+20600000
+2040328b
+1fe1fe01
+2040328d
+58000000
+58000106
+9a608a00
+e0a10000
+20202f5e
+58000107
+204032d0
+c0803015
+20600000
+2040328b
+1fe1fe02
+2040328d
+2020300c
+68008d50
+207a0000
+700d5000
+68010d4e
+d84002ba
+98467c00
+24628000
+68008cb6
+c1dd0000
+68008cb7
+44df4017
+c050303b
+c050b02c
+c0533041
+c053b043
+c054b049
+c058304d
+700d4200
+20600000
+68008cb8
+c000b031
+c0423034
+c053b039
+2020302a
+2040328b
+60008cf7
+2020303f
+20403291
+20403296
+2040328b
+60008cf7
+2020303f
+700cf7a1
+2020303f
+68008cb8
+c040b03e
+2020302a
+20403090
+700d4201
+20600000
+700cf715
+2020303f
+2040328f
+c0003047
+c000b039
+20600000
+700cf7a0
+2020303f
+700cf700
+700cf800
+700cf901
+2020303f
+2040329c
+68008cb8
+1fe0fe02
+1fe27200
+d8c00cb6
+5800013c
+9a608a00
+20207f01
+44dfc017
+2040307d
+20402c7f
+204048d3
+20203057
+2040328f
+c1800000
+20402f51
+20203098
+2040328f
+c1808000
+20402fc1
+20402fcb
+2040328b
+207a0000
+20403286
+20402f4c
+20403093
+58000000
+1a608aa7
+2020322d
+20407fe9
+1a60a2a7
+ea2a0000
+1c427e00
+98467c00
+24412d18
+1fe22400
+1a60a2a7
+ea220000
+1a60a2ab
+ea288000
+98408400
+1a427e00
+98467c00
+24610000
+793ffe1c
+1a608aa7
+e0a20000
+20207fe7
+58000001
+20403287
+20403283
+580000ff
+1a608aab
+e0a08000
+20203067
+5800015c
+204032d0
+207a0000
+2040306a
+24740000
+20403281
+1fe0fe01
+1fe17e01
+20403284
+c0002f4c
+c000b090
+20600000
+58000001
+20403292
+20203296
+58000001
+204032a5
+58000280
+d8e00008
+20207f08
+204032a2
+207a0000
+d8e00008
+20407f16
+247a0000
+204032a4
+58000007
+20403292
+20403296
+20202f5e
+44e04018
+2040328f
+c1838000
+204030cb
+204030e0
+2040316e
+2437af5e
+204030bc
+2042b172
+20402f4c
+20403294
+79207e00
+20403297
+20402f5e
+20403093
+204030bc
+2022b0c1
+58000164
+204032d3
+204030be
+2022b0c5
+58000160
+204032d3
+204030be
+2022b0c8
+20600000
+5800012b
+204032d3
+2040322a
+98467c00
+20600000
+58000182
+204032d0
+1a608a91
+202032b4
+58000185
+204032d0
+202030c3
+58000188
+204032d0
+202030c3
+20403294
+c3838000
+79207e07
+20403297
+20403283
+2040329c
+58000000
+1a608af5
+e0a18000
+da200183
+204032bf
+e0a38000
+204030bc
+24628000
+1a60a291
+ea208000
+da200182
+204032b3
+1a60a290
+ea208000
+2020314a
+44e0c018
+20403281
+1fe0fe01
+1fe17e03
+20403284
+c000310e
+c000b132
+c00130ea
+c001b132
+20600000
+20402fdf
+58000160
+2040327e
+203a30e0
+2040322c
+58000189
+204032d0
+205a3108
+58000187
+204032d0
+2040322f
+1a60a2f7
+ea288000
+da200f9e
+20402e58
+1a608af7
+e0a88000
+20402f94
+1a608afa
+e0a88000
+18467c50
+24610000
+58000188
+20403275
+20402c90
+da200188
+204032c8
+e0a88000
+da200187
+202032b3
+58000001
+da200189
+204032b3
+d8400000
+20402c94
+20203106
+20402fea
+58000164
+2040327e
+203a30e0
+2040322c
+58000186
+204032d0
+205a312c
+58000184
+204032d0
+2040322f
+1a60a2f6
+ea288000
+da20109e
+20402e58
+1a608af6
+e0a88000
+20402f94
+1a608af9
+e0a88000
+18467c50
+24610000
+58000185
+20403275
+20402c90
+da200185
+204032c8
+e0a88000
+da200184
+202032b3
+58000001
+da200186
+204032b3
+d8400000
+20402c94
+2020312a
+20402fdf
+2040327d
+2040322c
+58000183
+204032d0
+205a314c
+2040314f
+1a60a2f5
+ea288000
+da200e9e
+20402e58
+1a608af5
+e0a88000
+20402f94
+1a608af8
+e0a88000
+18467c50
+24610000
+58000182
+20403275
+20402c90
+da200182
+204032c8
+e0a88000
+da200181
+202032b3
+58000001
+da200183
+204032b3
+58000181
+204032d0
+2020322f
+1a60a200
+ea208000
+2040323c
+20402dde
+2040325f
+2feffe00
+2020b15c
+2040315d
+20402d53
+20402df7
+20202e45
+44e14018
+1a608a86
+204032d6
+5800013b
+204032d0
+207a0000
+58000006
+1a608a86
+e0a08000
+df200006
+5800012f
+9a608c00
+1a608a22
+20207f01
+2040316e
+2437af5e
+20203172
+20402f5e
+20402e11
+24778000
+20203152
+44e1c018
+20403188
+24342f5e
+1a60a284
+ea208000
+203a2f5e
+1fe0fe02
+98007200
+1a608c00
+58000109
+9a608a00
+20407f01
+20403286
+204032b6
+205a3093
+5800010b
+204032d0
+c000b19e
+c00131c6
+c001b1f2
+c07fb212
+20202f5e
+20402c7a
+20407fe9
+1a60a2ca
+ea208000
+1a60a2cb
+ea288000
+98467c00
+2442ffe7
+1a60a2ca
+ea208000
+1a608acb
+e0a08000
+1a60a2c4
+ea218000
+1a60a2c7
+ea298000
+98467c00
+2442ffe7
+1a60a2c4
+ea218000
+1a608ac7
+202032c5
+20402f88
+2040324c
+60008aa2
+20403274
+68008aa2
+284ffe03
+7920fe00
+1a608ab2
+e0a08000
+c000b216
+20403245
+20403274
+284ffe04
+7920fe00
+20403249
+1a60a2de
+ea210000
+20207f9c
+58000001
+60008d54
+2040329e
+e0a38000
+2040329e
+245a31bd
+2040329e
+205a31c2
+700d5220
+68008d38
+79207e02
+60008d38
+20600000
+58000001
+204032a8
+58000140
+d8e0000b
+20207f08
+204032a7
+58000000
+d8e0000b
+20207f08
+20403274
+284ffe03
+2020b21b
+d8a00d64
+204031e0
+68040d64
+245a31e4
+68040d64
+205a31e9
+20402c7a
+68040d64
+da200168
+204032bf
+e0a40000
+58000170
+9a60a200
+ea2c0000
+98467c00
+2442b1ed
+58000168
+9a60a200
+ea240000
+da200170
+204032bf
+e0a40000
+20202f5e
+5800010b
+9a608c00
+df200009
+20207ff3
+58000001
+204032ab
+58000140
+d8e0000e
+20207f08
+204032aa
+58000000
+d8e0000e
+20207f08
+700d5110
+68008d38
+79207e01
+60008d38
+20600000
+d8a00d74
+204031e0
+68010d75
+245a3209
+68010d75
+205a320e
+20402c7a
+68018d74
+da200178
+204032c4
+5800017b
+9a60a200
+ea298000
+98467c00
+2442b207
+58000178
+9a60a200
+ea218000
+da20017b
+204032c4
+20202f5e
+700d5221
+202031b9
+58000001
+204032ae
+58000140
+d8e0000c
+20207f08
+204032ad
+58000000
+d8e0000c
+20207f08
+204032bd
+c000b216
+c001321b
+20600000
+5800010d
+2040327e
+da200160
+204032bf
+2020322d
+5800010d
+2040327e
+da200164
+204032bf
+2020322d
+20402c7a
+1a608acd
+e0a08000
+20600000
+20402c7a
+1a60a2be
+2020327f
+20402c7a
+1a608abe
+2020322d
+1a60a2ae
+2020327f
+1a608aae
+e0a20000
+20600000
+1a608a90
+202032b4
+58000000
+20402c7a
+1a608a85
+202032b4
+1a608a42
+202032b4
+58000004
+1a608acc
+202032b4
+1a60a287
+202032d1
+1a608a87
+202032b4
+58000002
+1a608ad0
+202032b4
+58000001
+20402c7a
+1a608ace
+202032b4
+20402c7a
+1a60a2b4
+202032d1
+58000001
+20402c7a
+1a608ab4
+202032b4
+20402c7a
+1a60a2b2
+202032d1
+58000001
+20402c7a
+1a608ab2
+202032b4
+20402c7a
+1a60a296
+202032d1
+1a608a96
+202032b4
+1a60a2cf
+202032d1
+58000000
+1a608acf
+202032b4
+1a60a2d2
+202032d1
+1a60a201
+202032d1
+1a60a2b5
+202032d1
+58000000
+20402c7a
+1a608ab5
+202032b4
+20402c7a
+1a60a2fb
+ea208000
+6000c1de
+20600000
+20402c7a
+6800c1de
+1a608afb
+202032b4
+1a60a2fc
+202032d1
+1a608afe
+202032b4
+58000109
+9a60a200
+ea288000
+20600000
+58000135
+202032d0
+58000000
+da200135
+202032b3
+5800012b
+204032cd
+ea220000
+20600000
+5800015f
+202032d0
+58000000
+da20015f
+202032b3
+58000000
+da20015c
+202032b3
+da20012f
+202032b3
+58000108
+202032d0
+da200108
+202032b3
+58000105
+202032d0
+58000000
+da200105
+202032b3
+58000104
+202032d0
+58000000
+da200104
+202032b3
+58000000
+da20013b
+202032b3
+58000001
+2020329a
+5800010c
+204032cd
+ea238000
+20600000
+5800015e
+202032d0
+58000000
+da20015e
+202032b3
+58000000
+da200180
+202032b3
+58000000
+da20017e
+202032b3
+58000000
+da20017f
+202032b3
+da200102
+202032b3
+da200103
+204032c7
+e0a08000
+20600000
+5800015d
+202032d0
+da20015d
+202032b3
+5800018a
+204032d0
+2020326a
+5800010c
+202032d0
+1fe20400
+1a227e00
+9a608a00
+18427e00
+20600000
+204032bf
+e0a18000
+20600000
+20402c7a
+1fe22400
+1a227e00
+9a608a00
+1a427e00
+20600000
+20402c7a
+9a60a200
+20600000
+204032cd
+ea208000
+20600000
+204032cd
+ea2a0000
+20600000
+58000000
+202032b4
+44e24018
+6800c092
+203a32d8
+c0022f30
+c007b436
+c004c5de
+c005392a
+c00735bf
+c00844a4
+c2833d00
+20600000
+44e2c018
+70015100
+70017f00
+70018000
+58000000
+600289ae
+6800c092
+203a32e3
+c0053962
+20600000
+20407cd1
+20407d9c
+204032f6
+680141f3
+20207f9c
+680141f1
+20207f9c
+680141ef
+20207f9c
+44e34018
+da204668
+20407fc4
+207a0000
+1fe22600
+204032ff
+20203324
+da600000
+20600000
+c000b311
+c0083357
+c002b335
+c009333c
+c0033353
+c0023394
+c0013399
+c009b394
+c00a334b
+c00ab34f
+c001b32e
+c005b340
+c0063347
+c00b335b
+c00c332a
+c015331a
+c015b318
+20600000
+68014682
+79207e00
+60014682
+6801420a
+793ffe00
+6001420a
+20600000
+70022900
+20600000
+68008229
+1fe0fe01
+60008229
+1fe67c01
+202133df
+70022900
+6801420a
+79207e09
+6001420a
+202033e9
+680141f5
+20207f9c
+680141e9
+20207f9c
+680141ed
+20207f9c
+6801420a
+79207e01
+6001420a
+20203412
+68014682
+79207e07
+60014682
+6801420a
+79207e02
+6001420a
+20600000
+68014682
+79207e01
+60014682
+6801420a
+79207e04
+6001420a
+20600000
+68014682
+79207e03
+60014682
+20600000
+68014682
+79207e05
+60014682
+6801420a
+79207e03
+6001420a
+20600000
+68014682
+793ffe05
+60014682
+20600000
+68014682
+79207e09
+60014682
+20600000
+68014682
+793ffe09
+60014682
+20203418
+68014682
+79207e02
+60014682
+20600000
+6801420a
+79207e00
+6001420a
+20600000
+6801420a
+79207e08
+6001420a
+202033e9
+44e3c018
+6000822a
+6800822a
+207a0000
+1fe0ffff
+6000822a
+20407cdd
+204033d6
+20403387
+2040338d
+2040651b
+680141fd
+20407f9c
+20203361
+ea608000
+207a0000
+1fe0ffff
+e2608000
+247a0000
+1a427e00
+20207f9c
+ea610000
+207a0000
+1fe0ffff
+e2610000
+247a0000
+1a427e00
+20207f9c
+6809423f
+1840a601
+da40337f
+2020336d
+2040342d
+c000b382
+2020340a
+58000002
+e2608000
+1840a408
+ea410000
+20207f9c
+da604205
+da40338a
+2020336d
+20402252
+2022b40e
+20600000
+da60467e
+da403390
+20203374
+204033f0
+20403408
+680141f7
+20207f9c
+204033ac
+68014682
+793ffe07
+60014682
+20600000
+70420500
+68014682
+c283b39e
+2fec0001
+2040b2fd
+44e44019
+68014682
+793ffe00
+793ffe01
+793ffe02
+793ffe03
+793ffe07
+60014682
+20203418
+204033a9
+2020340a
+58000000
+60014208
+20600000
+58000000
+6001420a
+20600000
+6801420a
+60014208
+58000000
+6001420a
+20600000
+6801420a
+79207e07
+60014208
+58000000
+6001420a
+20600000
+6800c682
+2feffe05
+20600000
+5800aa55
+60010aaa
+44e4c019
+d8400002
+da200aaa
+da4000c3
+20206606
+44e54019
+d8400002
+da200a9a
+da4000c3
+204065df
+68010a9a
+d840aa55
+98467c00
+20600000
+6800c55a
+6000c205
+20600000
+d8e00009
+20202c32
+d8e00009
+20202c36
+70420605
+202033d0
+da604206
+da4033d2
+2020336d
+70436301
+20600000
+70436300
+20600000
+700a990a
+20207d8f
+700a991d
+20207d8f
+44e5c019
+6800c207
+6000816d
+70022801
+700a9903
+20207d8f
+700a991e
+20207d8f
+700a9904
+20207d8f
+68014687
+6001467e
+20403404
+700a9901
+20207d8f
+58000000
+6001467e
+700a9902
+20207d8f
+700a990f
+20207d8f
+700a9910
+20207d8f
+700a990e
+20207d8f
+700a990d
+20207d8f
+700a9917
+20207d8f
+700a9918
+20207d8f
+700a9916
+20207d8f
+700a9911
+20207d8f
+700a9915
+20207d8f
+700a9914
+20207d8f
+700a9913
+20207d8f
+700a9919
+20207d8f
+700a9906
+20207d8f
+700a9905
+20207d8f
+700a991f
+20207d8f
+700a9920
+20207d8f
+700a9925
+20207d8f
+7920000d
+20600000
+793f800d
+20600000
+2040342d
+c0013424
+58000001
+e2608000
+1840a203
+1840a406
+ea288000
+1a60a601
+e2688000
+20203385
+58000000
+e2608000
+68014682
+c304b429
+20403402
+6809423f
+1840a202
+1840a404
+20203420
+6809423f
+1840a600
+ea608000
+20600000
+2040342d
+c0803434
+2020340a
+1840a40a
+20203385
+20758000
+70808100
+58003463
+600141eb
+5800696c
+600141ed
+580034f5
+600141f3
+580034f4
+600141ef
+5800347e
+600141f5
+580034b2
+600141fd
+58003465
+600141fb
+58003470
+600141e9
+58003501
+600141f9
+44e64019
+2040359b
+20406948
+204035ad
+20407d08
+20407cd3
+5800350b
+60014766
+580034fc
+6001475d
+580034f8
+6001475f
+5800346c
+60014761
+580035a2
+600146a9
+580035a4
+600146ab
+580035a9
+600146b4
+580035a6
+600146b6
+68014682
+c3860000
+2020340a
+20403586
+2020340a
+20405892
+247a0000
+da200b06
+20407e54
+24740000
+d8c00b06
+20204746
+68014797
+60014791
+70475301
+2020358f
+6800c79d
+c000b479
+68014682
+c304b479
+6800c79e
+c000b3d0
+6800c700
+243a33d0
+202033d2
+6800c79b
+6808c79c
+9841fe00
+c000b3d0
+202033d2
+1a627e00
+c016b431
+c008341a
+c00a34df
+c00ab4e8
+c0203485
+20600000
+68014509
+c000b48c
+680143d8
+203a34a2
+70478a02
+70478f3c
+20600000
+6801449a
+203a34a0
+70478a01
+680947b4
+68014496
+9840fe00
+60014496
+1fe22200
+68014498
+9840fe00
+60014498
+9a20fe00
+1fe30400
+680147c0
+9846fc00
+20407f86
+1807fe00
+6001449a
+70479001
+20600000
+70478a03
+20600000
+70417200
+70479000
+680143d6
+680947be
+98467c00
+79212200
+680147c0
+680943d6
+98467e00
+79212201
+2a200603
+20608000
+680447be
+60044496
+70479001
+20600000
+2040337b
+204034b9
+204034be
+204034d5
+204034ca
+204034c4
+202034d9
+da604799
+da4034bc
+2020336d
+70479a00
+20600000
+da604793
+da4034c1
+20203374
+da6046bf
+da40469e
+20203591
+da60478f
+da4034c7
+2020336d
+6801449a
+6000c172
+20600000
+da604790
+da4034cd
+2020336d
+6800843f
+2fe0c000
+2420b4d3
+70478a01
+20403416
+20205abf
+70479001
+20600000
+da604791
+da4034d8
+20203374
+2020341a
+da60478d
+da4034dc
+20203374
+680147a7
+6001478d
+202035af
+680147a7
+6001478d
+58000000
+60014793
+60014791
+2040355c
+20403586
+70417200
+202033f8
+58000000
+6002478d
+6001c78a
+60014509
+7047a001
+68014797
+60014791
+20407e38
+6800c759
+c1000000
+2040358f
+2020356e
+20203508
+6800c759
+c1810000
+20203508
+da6046cd
+20403582
+da6046c6
+20203584
+70436e00
+da6046db
+20403582
+da6046d4
+202034fb
+68008477
+c0093504
+20600000
+68010478
+c006b536
+c005b571
+20600000
+6800c753
+207a0000
+20206978
+1a227e00
+203a3510
+18e27e00
+c0003513
+20600000
+18e27e00
+c000351b
+20600000
+70479d01
+da6046f7
+20403582
+da6046f0
+20403584
+68014682
+c304b532
+20203521
+70479d00
+2020351d
+6800c79a
+c1808000
+70479905
+20600000
+6800c79a
+1fe0fe01
+6000c79a
+c000b527
+c001352b
+20600000
+2040355c
+70477101
+da60476c
+20203544
+70479a00
+70477102
+da60476c
+20403544
+6800c79e
+c000b551
+20600000
+68014797
+60014791
+2040355c
+2020358f
+44e6c019
+204036fc
+ea208000
+c001b53c
+c003b540
+20600000
+6800c79e
+c0003551
+c000b55c
+20600000
+ea408000
+c000b564
+c0003569
+20600000
+44e74019
+6800c78b
+2feffe00
+24608000
+1a608c06
+e8c10000
+1ff0fe00
+1fe0f205
+1a608c03
+204036f0
+e0c08000
+1a622200
+20207e3d
+6800c759
+207a0000
+70479e01
+da6046e9
+20403582
+da6046e2
+20403584
+70478004
+70478301
+da60477b
+20203544
+6800c79e
+207a0000
+70479e00
+20403586
+70478004
+70478300
+da60477b
+20203544
+70479f01
+70478007
+70478301
+da60477b
+20203544
+70479f00
+70478007
+70478300
+da60477b
+20203544
+6800c79f
+207a0000
+20203551
+ea210000
+6001478b
+2feffe00
+24608000
+6800c7a0
+207a0000
+7047a000
+680447b6
+60044496
+70479002
+204035af
+204035b9
+70478007
+6800c79f
+6000c783
+da60477b
+20203544
+da200001
+20203585
+da200000
+2020358c
+da200000
+20407d19
+da200001
+20407d19
+6800c7a1
+202069d7
+20407d04
+df200007
+20207d26
+da6046b8
+da40469a
+20403596
+20403584
+68014795
+60014793
+202033fa
+ea410000
+60014154
+e8c10000
+60014482
+20600000
+da200000
+204069a6
+680347a1
+60030a9a
+204069ae
+6800c7a1
+202069d7
+70479b01
+20600000
+70479b00
+20600000
+70479c00
+6800c7a1
+202069d7
+70479c01
+680347a1
+60030a9a
+202069ae
+70422d00
+202068a8
+204068eb
+20406908
+600147b0
+da2047aa
+20406930
+6000c7a9
+c00035be
+1fe67c64
+242135bc
+6000c783
+70478005
+da60477b
+20203544
+70478364
+202035b9
+2020341a
+20758000
+68108081
+1fe17ef0
+60108081
+58003631
+600141eb
+58003633
+600141ed
+5800340a
+600141f7
+58003635
+600141f3
+5800364b
+600141f5
+580033d0
+600141e9
+580036f6
+600141f9
+5800367a
+600141fd
+20402c7a
+58003722
+1a608ade
+e0a10000
+580035ed
+6001475b
+580035ef
+6001475f
+44e7c019
+20403628
+20407e38
+70417202
+7049f600
+6800c7cb
+6000c69a
+c00035ee
+6800c7cc
+6000c686
+70436e00
+2040360f
+20407cd3
+20407cdd
+7047f301
+68014682
+c3860000
+2020340a
+2020360f
+7047f302
+70436e01
+2040360f
+da200000
+20407d1e
+58000020
+204046f0
+d8a043b7
+6800c4a0
+1fe104f0
+18518400
+20403609
+e0a88000
+1fe1040f
+20403609
+e0a88000
+204057a6
+6808c3af
+18427200
+d8a04372
+d8c043b0
+20407f01
+6808c3af
+18427200
+d8a04392
+d8c043b0
+20207f01
+18467c09
+2021360d
+18408437
+20600000
+18408430
+20600000
+6800c7c0
+c0ffb621
+6800c7be
+c0ffb624
+6800c7c9
+c0ffb626
+6800c72c
+1fe27200
+5800472d
+1fe22200
+1a220c00
+e8c08000
+18c22200
+c07fb61f
+1fe20400
+2040680e
+c2003619
+20600000
+680447c0
+6004472f
+20203611
+6000c72d
+20203613
+6000c72e
+20203615
+da200000
+204069a6
+204037e4
+20402c7d
+2020362d
+7047cf64
+6800c7c9
+6000c744
+202068a8
+20406835
+2020696c
+2020696c
+20206978
+20403642
+204037ee
+20403639
+20203634
+68014682
+c3848000
+6800c9f6
+c000b63e
+20600000
+6800c7ea
+c1008000
+7047ea01
+20203654
+68014682
+c4048000
+20405892
+247a0000
+da204718
+20407e54
+24740000
+d8c04718
+20204746
+1a627e00
+c016b431
+c008341a
+c00a3651
+c00ab660
+20600000
+58000000
+20403220
+20203656
+680147eb
+600147ed
+7047ce14
+70409100
+204033f8
+20403416
+6800c7bd
+c000b65e
+da200000
+20207d14
+da200000
+20207d19
+58000002
+20403220
+58000000
+6002c79c
+58000004
+204069d7
+58000005
+204069d7
+58000014
+204069d7
+58000015
+204069d7
+58000016
+204069d7
+58000007
+204069d7
+20407e38
+70475e0a
+7047600a
+7047620a
+70417202
+da200000
+20407d1e
+58000020
+204046f0
+202033fa
+2040373b
+2040373e
+20403741
+2040337b
+204036c8
+204036a1
+2040368a
+20403683
+2020368f
+da60479a
+da403686
+2020336d
+20403847
+24608000
+70479b01
+20600000
+da6047ed
+da40368d
+20203374
+7047ea02
+20203662
+da6047f1
+da403692
+2020336d
+6800c7f2
+203a369e
+7047f102
+7047f200
+58000a02
+60014752
+6800c7b9
+c001b69b
+20203762
+58000a02
+60014754
+20203762
+58000000
+60024752
+20203762
+6800c7c8
+207a0000
+68014682
+c304b6c6
+da6047ce
+da4036a8
+2020336d
+6800c7cd
+6000c7ce
+6800c7d1
+247a0000
+204068eb
+20406908
+600147e8
+da2047e2
+20406930
+6808c7cf
+98467c00
+202136b6
+6000c7cf
+1fe20400
+6008c7d0
+6800c7ca
+98467c00
+204136c1
+6008c7db
+df200006
+d8c047d6
+204036f0
+6000c7dc
+da2047d3
+20207e3d
+6800c7d2
+247a0000
+7047d201
+da200001
+20207d1e
+da200001
+20207d19
+da6047a4
+da4036cb
+2020336d
+7047a405
+7047a600
+6800c7a5
+c000b6ee
+c00036ec
+d8c0479c
+18c22200
+df200008
+1a220c00
+e8c08000
+18c22200
+c00036e3
+c000b6e6
+c00136e9
+6800c7a6
+1fe0fe01
+6000c7a6
+c20036d3
+20600000
+6800c7a6
+da4047c0
+9a40a400
+ea488000
+20600000
+204036de
+20406825
+202036d9
+204036de
+20406829
+202036d9
+6800c7a5
+c000b6e3
+202036e6
+7047a501
+202036d0
+7047a500
+202036d0
+da200000
+e8c08000
+9a20a200
+c20036f1
+1a217eff
+20600000
+68008477
+c00936f9
+20600000
+68010478
+c00a3710
+20600000
+44e8401a
+ea228000
+60028b12
+68010b12
+d8406b5a
+98467c00
+24628000
+68010b15
+1ff0fe00
+60010b15
+1fe27200
+1a20a205
+1a220c00
+d8a00b17
+20407f01
+e8c08000
+60008b21
+da200b14
+da400b17
+20600000
+58000000
+6002c752
+6002c757
+204036fc
+1a420c00
+d8a04752
+df20000a
+20407f01
+44e8c01a
+ea208000
+c001374a
+c001b75c
+c0023762
+c002b762
+c00337b1
+c003b849
+c004384c
+20600000
+68014682
+c3848000
+680147eb
+600147ed
+7049f601
+5800010c
+204032cd
+20403710
+68008b14
+c002372e
+c002b72e
+20600000
+6800c752
+245a3735
+6800c754
+245a3737
+6800c756
+245a3739
+20600000
+7049f305
+20600000
+7049f405
+20600000
+7049f505
+20600000
+da6049f3
+da403744
+2020336d
+da6049f4
+da403746
+2020336d
+da6049f5
+da403748
+2020336d
+70475200
+20203762
+70475400
+20203762
+70475600
+20203762
+2040374c
+2020374f
+6800c752
+6000c75f
+20203773
+6800c75e
+20403754
+6800c753
+6000c75d
+20203770
+c0013758
+c001b75a
+6000c75e
+20600000
+70475e05
+20600000
+70475e0a
+20600000
+6800c752
+20403754
+6800c75e
+2040379e
+204037a1
+202069c4
+6800c7f0
+247a0000
+68034752
+6003475d
+6800c75e
+6808c760
+98417e00
+6808c762
+98417e00
+205a3779
+44e9401a
+20403770
+20403773
+20203776
+da404763
+d8c0475d
+2020377b
+da40476b
+d8c0475f
+2020377b
+da404773
+d8c04761
+2020377b
+7047d100
+20600000
+e8c08000
+c0003787
+c000b780
+c0013782
+20600000
+70477b00
+20203783
+70477b01
+e8c08000
+6000c77d
+ea440000
+2020378c
+ea408000
+204069d7
+1a40a401
+ea408000
+202069d7
+6004477e
+7047d101
+6800c77b
+c000379a
+6800c77f
+6000c780
+6800c77e
+204069d7
+6800c77d
+2040379e
+6000c785
+68034780
+60030a9a
+202069ae
+6800c77e
+6000c780
+6800c77f
+20203793
+1feffe05
+1fe0fe32
+20600000
+d8402ee0
+984ffe00
+1fe6fc64
+20407f86
+18078400
+18422200
+58002ee0
+98462400
+20600000
+68108082
+79207e02
+60108082
+5800009e
+60110068
+6011006a
+20600000
+6800c7f0
+247a0000
+68014752
+60014787
+6800c7ea
+c080b7b9
+680144a0
+60014787
+44e9c01a
+204037aa
+204037dc
+5800bb80
+20402a8f
+204037e0
+58001c20
+20402a8f
+df200010
+204037dc
+68014787
+c28037c9
+58001c20
+20402a8f
+204037e0
+202037cc
+58003840
+20402a8f
+204037e0
+58001c20
+20402a8f
+68014787
+1fe37e00
+60014787
+c20037c2
+7047f102
+7047f201
+58000a01
+60014752
+6800c7b9
+c001b7d9
+20203762
+58000a01
+60014754
+20203762
+68108085
+1fe1fe40
+60108085
+20600000
+68108085
+1fe17ebf
+60108085
+20600000
+6800c7bb
+c1000000
+20402c65
+6808c7bc
+6008c786
+204067fb
+20403847
+24608000
+70479a01
+20600000
+6800c7bb
+c1000000
+6800c79b
+247a0000
+68014682
+c284b7f6
+6800c7ea
+c1808000
+44ea401a
+20403847
+24608000
+58008ca0
+20402a8f
+20403847
+24608000
+2040383f
+20403842
+24610000
+20403847
+2020b7fe
+da200000
+df200010
+2040383f
+20403842
+24610000
+20403847
+2420b805
+58002a30
+20402a8f
+20403847
+2020b812
+58000000
+1a232200
+9a21a200
+c2003805
+2020381b
+58008000
+1a232200
+9a21a200
+2040383f
+20403842
+24610000
+20403847
+2020b816
+c2003805
+44eac01a
+1a227e00
+60014789
+60014797
+6800c7ea
+c000b827
+df200007
+d8c04792
+204036f0
+6000c799
+da20478f
+20207e3d
+6800c7ef
+1fe0fe01
+6000c7ef
+1fe6fc02
+20407f86
+18078400
+18077e00
+243a3838
+6800c7bf
+98467c00
+2042b83d
+dfe0479c
+184085ff
+9840a200
+dfe00000
+e2208000
+20600000
+dfe0479c
+9840a200
+dfe00002
+e2208000
+20600000
+7047f001
+20600000
+1c427e00
+6002478b
+20600000
+1c427e00
+680a478b
+98467e00
+1fe67cc8
+20600000
+6808c786
+2020681d
+68044752
+6004479c
+20600000
+6800c7b9
+6000c7af
+6800c7ba
+6000c7b0
+6800c7bb
+6000c7b1
+df20000d
+d8c047aa
+204036f0
+6000c7b7
+da2047a7
+20207e3d
+204065c2
+7046f67a
+2040386d
+20403867
+58003860
+600141fd
+da200000
+202069a6
+680146a1
+207a0000
+1fe0ffff
+600146a1
+c1800000
+7046a000
+20600000
+44eb401a
+6800c6a4
+1fe67c28
+20610000
+7046a400
+20600000
+da2046a4
+da400000
+d8400051
+202065df
+78547c00
+6800c6a3
+1fe27200
+da2046a5
+1a622400
+44ebc01a
+2040387c
+2022ffe7
+1a20a204
+c2003876
+20600000
+44ec401b
+ea218000
+ea498000
+98467c00
+20600000
+44ecc01b
+ea218000
+ea498000
+98467c00
+24628000
+e8c08000
+1fe67c00
+20628000
+1a208c03
+e8c88000
+98467c00
+20600000
+44ed401b
+78547c00
+6800c6a3
+1fe27200
+da2046a5
+1a622400
+20403881
+2022ffe7
+1a20a204
+c2003893
+20600000
+68008004
+1fe0fe01
+60008004
+da6002e5
+ea610000
+d84055aa
+98467c00
+24628000
+18c22600
+ea698000
+58ffffff
+98467c00
+2022b8a8
+2040388d
+203438a8
+20600000
+44edc01b
+1a60a604
+ea608000
+6808c6f6
+98467c00
+20628000
+6000c6f6
+68008003
+1fe0fe01
+60008003
+1a60a601
+ea608000
+6000c6f5
+1fe27200
+207a0000
+e8c08000
+c00038c2
+c000b8cf
+c00138d4
+c001b8d9
+c00238de
+c002b8e3
+c00338e8
+c07fb8ea
+c20038b7
+20600000
+18c22600
+6800c69a
+60008a9a
+d8400000
+60088a9b
+58002710
+60018a9c
+ea608000
+60008a9f
+204069ae
+1a610c01
+c20038b7
+20600000
+1a620c00
+6800c69b
+60008a9a
+d8400001
+202038c6
+1a620c00
+6800c69c
+60008a9a
+d8400002
+202038c6
+1a620c00
+6800c69d
+60008a9a
+d8400003
+202038c6
+1a620c00
+6800c69e
+60008a9a
+d8400004
+202038c6
+1a620c00
+6800c69f
+60008a9a
+d8400005
+202038c6
+e8c08000
+20600000
+18c22600
+6800c6a0
+c080b8ee
+204038f0
+1a610c04
+20600000
+44ee401b
+20403871
+203438fe
+6800c6a4
+1fe20400
+1fe0fe01
+6000c6a4
+20403867
+184b8400
+580046a5
+98408a00
+ea620000
+e0a20000
+20203903
+1a608c03
+e8c08000
+207a0000
+ea620000
+e2220000
+da2046a4
+da400000
+d8400051
+20206606
+6808c69a
+20406825
+20600000
+6808c69a
+20406829
+6808c69a
+20406825
+2040391d
+6800c6a7
+247a0000
+20402c29
+68120138
+793ffe0f
+6012004c
+20402c21
+d85fffff
+20202b2a
+6800c6a7
+203a56f9
+1fe0ffff
+6000c6a7
+202056f9
+1feffe14
+d8c046a8
+98c08c00
+e8c08000
+207a0000
+1fe22200
+1a227200
+d8a04372
+20407f01
+1a227e00
+1fe0fe02
+6000c36f
+20600000
+20758000
+204057a3
+204068a8
+58003982
+600141f3
+5800396e
+600141f1
+58003986
+600141f5
+5800396d
+600141ef
+58003969
+600141e9
+58003ab7
+600141fb
+58003c32
+6001456f
+58003cc2
+600141f9
+58003cd7
+600141fd
+2040397f
+44eec01b
+20403945
+20403964
+20402c6f
+20203c48
+680246aa
+60120054
+680246ae
+6012005a
+68108081
+1fe1fe04
+1fe17efc
+60108081
+70806200
+680146aa
+60110058
+680146ae
+6011005e
+60110060
+68120078
+79207e07
+60120078
+68110050
+793ffe0f
+60110050
+204066ce
+70804300
+70806281
+6800c6bf
+2feffe00
+68188062
+79208404
+60188062
+20600000
+2040397f
+20203945
+6808c69e
+2040680e
+204039e6
+6808c69c
+202067fb
+6808c69c
+2040681d
+2420b3d2
+202033d0
+20600000
+20403970
+20203ce9
+6800c682
+c302397f
+44ef401b
+58003eff
+680a46c5
+98408400
+1c427e00
+98467c00
+24610000
+68014682
+c282b97f
+6800c6bf
+c3830000
+20403cec
+2040340e
+1c427e00
+600246c5
+20600000
+20403ce9
+2040526e
+247a0000
+202039eb
+1a627e00
+c000b9d4
+c00139a3
+c00239d7
+c002b9c4
+c00439aa
+c004b9b1
+c00539c9
+c005b9b6
+c00639c2
+c009b9d7
+c00a39cf
+c00ab9c6
+c010b9ca
+c011b9cb
+c01239ce
+c0183c8a
+c018bc8c
+c0193c9a
+c019bc98
+c01a3c84
+c01abc73
+c01b3c82
+c01bbc8e
+c01c3c90
+c01dbca1
+c01ebc6a
+c020b9d9
+20600000
+2040397f
+6800c665
+245a3c8e
+204039d7
+68014682
+c4020000
+202039b1
+68014682
+79207e04
+60014682
+6800c6a7
+6000c172
+204039e6
+20203c1d
+68014682
+c4020000
+793ffe04
+60014682
+20203c21
+2040397f
+68014042
+1fe37e00
+680941e3
+98467c00
+2422b9bd
+20203416
+6800c6bf
+c3828000
+68110112
+245a3cf0
+2020340c
+20403cee
+20203418
+2040397f
+202039dd
+20405816
+204039d7
+20203c23
+202033dd
+20203cee
+6800c6bf
+c302b40e
+20203cf2
+20203cf2
+204058ba
+204039dd
+6800c6a8
+6000c172
+20203c1f
+70466100
+20403cee
+20203cf2
+20403a52
+202039db
+20405cc9
+20205b02
+6808c69e
+20206829
+204039df
+202039e6
+6800c6a1
+2feffe00
+2040b3f0
+6800c6a1
+2feffe01
+2040b3f8
+20600000
+6808c69e
+20206825
+6800c56b
+c1000000
+20206c28
+6810810c
+c281b9e8
+204066cb
+e8608000
+c080ba01
+68110112
+1fe67c02
+20610000
+e8608000
+60008b03
+e8688000
+18622200
+60088b04
+18408403
+68110112
+98460400
+24610000
+700b0501
+20403a17
+68008b05
+c1000000
+20203a12
+20407ec1
+20403c79
+20203a04
+44efc01b
+68110112
+207a0000
+204066cb
+e8608000
+1fe67c01
+2442ba16
+2422ba04
+e8608000
+c1028000
+c1148000
+186087ff
+20403a16
+20203a04
+204066cb
+18608602
+e8608000
+98608600
+202066c8
+44f0401c
+68008b03
+c0003a3f
+c000ba44
+c0013a49
+c001ba5f
+c0023a6b
+c002ba75
+c004ba9a
+c005bad7
+c0063ad8
+c006baec
+c0073af4
+c007bafa
+c0083b06
+c008bb0e
+c0093b12
+c0133b16
+c0143b1d
+c014bb2d
+c0153b36
+c015bb69
+c0163b6f
+c0183b76
+c018bb7c
+c0193b90
+c019bb98
+c01a3bbb
+c01abbc4
+c01b3bcd
+c01bbbd7
+c01c3bda
+c0203be2
+c0213bec
+c0243bf1
+c024bbfc
+c028bc02
+c030bc06
+c07fbc15
+20203c17
+68008b04
+c0833c17
+e8630000
+600340a0
+20203c1a
+68008b04
+c0833c17
+e8630000
+600344a0
+20203c1a
+68008b04
+c080bc17
+1a220600
+20403c1a
+e8688000
+6008c6a9
+68014682
+c3848000
+c3800000
+6800c6a1
+2feffe00
+2420ba58
+6808c6a9
+18417e03
+6000c093
+6800c6a1
+2feffe01
+24608000
+6808c6a9
+284ffe02
+2020b3fa
+202033f8
+68008b04
+1fe67c43
+24213c17
+6000c515
+df200008
+20407ec6
+68008b04
+1fe27200
+1a220600
+d8a04516
+204066ea
+20203c1a
+68008b04
+1fe67c1d
+24213c17
+6000c3af
+1fe27200
+1a220600
+d8a043b0
+204066ea
+204057a3
+20203c1a
+6800c682
+c3023c17
+204033ba
+2020ba86
+700b0500
+2040397f
+6800c568
+207a0000
+68014573
+c0803a84
+68008b04
+60014573
+1a220600
+18627e00
+60014571
+20403a88
+20206c4d
+700b0500
+20203cd1
+20403a8e
+68014573
+6809469f
+98467e00
+60014573
+20600000
+68014573
+d840006e
+20407fdd
+6809456c
+20407fdd
+6809455e
+20407fdd
+6001469f
+20600000
+700b0501
+700b0305
+20203c1a
+68014682
+c304bc17
+20403ad4
+20343c17
+700b0500
+6800c6bf
+c2823ab4
+6800c6c0
+247a0000
+700b0501
+e8610000
+600146c1
+18627e00
+600146c3
+68008b04
+1fe0fffe
+24213c17
+2022bc17
+6000c6c0
+700b0500
+20405814
+20403ab7
+20403ab7
+20403ab7
+6800c6bf
+c4020000
+700b0501
+20403cf6
+20203c1a
+6800c6c0
+207a0000
+20405892
+247a0000
+20403acf
+44f0c01c
+1840fffd
+6808c6c0
+20407fdd
+1fe22200
+18427e00
+9a267e00
+6000c6c0
+680946c1
+20405a64
+680146c3
+1fe20600
+1a227200
+204066ea
+18627e00
+600146c3
+6800c6c0
+247a0000
+20203cf4
+d8400017
+6800c6bf
+c3808000
+680944a8
+20600000
+6800c6bf
+c2815a42
+20207fe9
+20203c4c
+1a220600
+e8608000
+c0003adf
+c000bae2
+c0013ae8
+c001baea
+20203c17
+2040612b
+70465a00
+20203c1a
+58040003
+6001c65b
+6000c662
+20406124
+70465a01
+20203c1a
+58040002
+20203ae3
+58040001
+20203ae3
+68008b04
+1fe67c10
+24213c17
+6000c689
+1fe27200
+d8a0468a
+204066fd
+20203c1a
+1a220600
+e8608000
+68188062
+7d3a0404
+60188062
+20203c1a
+68008b04
+1fe27200
+1a220600
+20407f58
+596e3600
+9846fc00
+20407f86
+1807fe00
+60014243
+20403c1a
+20407f9e
+202066ce
+da200002
+da40469a
+d8400000
+20203c25
+60010ac2
+da400ac2
+d8400000
+20203c25
+68014682
+c3003c17
+20403c1a
+202033e9
+68014682
+c304bc17
+20403c1a
+20203402
+68008b04
+1fe27200
+1a220600
+68014215
+1fe20a00
+204066ea
+20203c1a
+6800c682
+c3003c17
+e8608000
+6808c661
+793a0400
+79200407
+6008c661
+20403c1a
+6800c661
+c2833b2b
+20600000
+70466100
+700a9921
+20207d8f
+c2805f95
+20203b28
+6800c682
+c4020000
+6800c56b
+c1000000
+e8608000
+6808c569
+98408400
+6008c569
+20600000
+df200040
+d8a0436f
+20407ed4
+58000000
+60008ab2
+1a220600
+18627e00
+60010ab6
+20403b64
+68008ab2
+68088aa2
+18408401
+9840fe00
+60008ab2
+1fe67c1f
+24213b50
+6808c36f
+58004370
+9840fe00
+60010abb
+68088aa2
+18408401
+6800c36f
+9840fe00
+6000c36f
+20203b59
+6808c38f
+58004390
+9840fe00
+60010abb
+68088aa2
+18408401
+6800c38f
+9840fe00
+6000c38f
+68010abb
+1fe20a00
+68010ab6
+1fe20600
+18427200
+204066ea
+68008b04
+68088ab2
+98467c00
+2422bb3c
+20203c1a
+e8608000
+60008aa2
+e8608000
+60008aae
+20600000
+d8400000
+da200002
+680146b4
+60010ac2
+da400ac2
+20203c25
+68008b04
+c080bc17
+e8608000
+6000c6b2
+58000000
+600146b4
+20203c1a
+e8620000
+6002468a
+70468904
+70466300
+20403c1a
+20205f31
+68008b04
+c081bc17
+e8608000
+c0003b82
+c000bb8a
+20203c17
+e8688000
+e8608000
+c0013b88
+7d3a0407
+204067fb
+20203c1a
+20406806
+20203c1a
+e8688000
+20406812
+e8608000
+2feffe00
+2040682c
+20203c1a
+68008b04
+c080bc17
+e8688000
+2040681d
+58000000
+7d20fe00
+da200001
+20203b0a
+1a220600
+e8608000
+1fe20400
+c040bba3
+c0413ba8
+c041bbae
+6000c4c6
+c0003bb3
+c000bbb6
+c0013bb8
+20203c17
+6800c4be
+203a3c17
+6008c4c6
+7044560d
+20203bb4
+6800c4be
+203a3c17
+6008c4c6
+7044560d
+70445401
+20203c1a
+6800c4be
+203a3c17
+6008c4c6
+7044560d
+20203bb9
+70445600
+70445403
+20203c1a
+70445605
+20203bb4
+70445605
+70445400
+20203c1a
+68008b04
+1fe67c1f
+24213c17
+6000c36f
+1fe27200
+1a220600
+d8a04370
+204066ea
+20203c1a
+68008b04
+1fe67c1f
+24213c17
+6000c38f
+1fe27200
+1a220600
+d8a04390
+204066ea
+20203c1a
+68014682
+c304bc17
+68008b04
+c0843c17
+1a220600
+e8640000
+60044496
+700a9912
+20407d8f
+20203c1a
+e8610000
+60014482
+20203c1a
+6800c4c6
+203a3c17
+6800c4c4
+c0803c17
+6800c4c5
+c0803c17
+20407e25
+20203c1a
+68008b04
+c082bc17
+e8608000
+6000c6a2
+e8620000
+600246a3
+6808c6a2
+2040680e
+20403cbc
+20203c1a
+68008b04
+c080bc17
+e8608000
+6000c1de
+20203c1a
+e8608000
+c000bbfa
+6800c4c1
+c001bbf8
+c0033bf8
+c003bbf8
+20203c17
+7044c201
+20203c1a
+20405b53
+20203c1a
+68008b04
+c080bc17
+20403c1a
+e8608000
+203a60cb
+202060c9
+20403c1a
+20407f9e
+70801001
+20202a8e
+68008b04
+c0003c17
+e8608000
+203a3c13
+68008b04
+c082bc17
+e8620000
+d84f4240
+98467c00
+20213c17
+600244c7
+2040580c
+20203c1a
+2040580e
+20203c1a
+70409100
+20203c1a
+d8400001
+da200000
+20203c25
+d8400000
+da200000
+20203c25
+700b0300
+20203c49
+700b0302
+20203c49
+700b0303
+20203c49
+700b0305
+20203c49
+68008b03
+1fe22600
+700b0306
+58000002
+9a20fe00
+20403ca7
+1a627e00
+e1408000
+e1488000
+1a227200
+1a420c00
+204066e4
+202066c5
+2040397f
+700b0307
+680084ff
+207a0000
+20403ca7
+680084ff
+1fe27200
+68010501
+1fe20c00
+204066d1
+202066c5
+700b0308
+6800c6b6
+1fe27200
+1fe0fe02
+20403ca7
+680146b9
+e1410000
+680146b7
+1fe20c00
+204066d1
+202066c5
+700b0309
+58000000
+20403ca7
+202066c5
+700b030a
+58000001
+20403ca7
+20403c5d
+68014682
+d8e00002
+afefffff
+79208403
+d8e00009
+afefffff
+79208405
+6800c682
+d8e00004
+afefffff
+79208404
+e1488000
+202066c5
+d8400000
+6800c093
+d8e00000
+afefffff
+79208400
+d8e00001
+afefffff
+79208401
+6800c36e
+d8e00000
+afefffff
+79208402
+20600000
+700b030d
+6800c217
+1feffe22
+1fe27200
+20403ca7
+68014215
+1fe20c00
+204066d1
+202066c5
+700b030e
+58000004
+20403ca7
+680209ba
+e1420000
+202066c5
+700b030f
+68110112
+d84000ff
+20407fdd
+1fe27200
+20403ca7
+204066cb
+20406703
+202066c5
+700b0310
+20203c49
+700b0311
+58000004
+20403ca7
+680244c7
+e1420000
+202066c5
+da200180
+20203c91
+da200080
+20203c91
+da200101
+20203c91
+da200001
+70466100
+700b0314
+58000002
+20403ca7
+1a227e00
+e1410000
+202066c5
+da600000
+20203c9b
+da600001
+700b0315
+58000001
+20403ca7
+1a627e00
+e1408000
+202066c5
+700b031d
+58000004
+20403ca7
+680209ba
+e1420000
+202066c5
+700b0202
+60008b04
+600c0aa2
+44f1401c
+20403cb1
+680c0aa2
+204066c2
+68018b02
+e1418000
+20600000
+20403cba
+20608000
+20403cb8
+680246a3
+1feb7e00
+207a0000
+20203cbe
+6808c6a2
+20206829
+6808c6a2
+2020681b
+6808c6a2
+20206825
+1fe0ffff
+20000026
+243a3cbe
+20600000
+20403ad4
+20740000
+1a227e00
+600146b7
+1a427e00
+6000c6b6
+68010478
+680946bb
+98467c00
+2022bccf
+680946bd
+98467c00
+24628000
+600146b9
+20203c3d
+6800c6bf
+c3828000
+20403cf0
+2020340c
+70417202
+20600000
+20203cd8
+6800c6b2
+207a0000
+6800c6b3
+207a0000
+1fe0ffff
+6000c6b3
+247a0000
+7046b30a
+204068eb
+20406908
+1fe6fc64
+20407f86
+1807fe00
+18070400
+6000c6b4
+6008c6b5
+20600000
+20407fb4
+202133d9
+202033db
+d8e00006
+20203cfc
+d8e00006
+20203cf8
+d8e00005
+20203cfc
+d8e00005
+20203cf8
+d8e00004
+20203cfc
+d8e00004
+20203cf8
+6800c6bf
+f93ffe00
+6000c6bf
+20600000
+6800c6bf
+f9207e00
+6000c6bf
+20600000
+20403d39
+2040640f
+204040c6
+20403d66
+20406411
+20758000
+20403d16
+20403d19
+680246d3
+c3880000
+20403d4e
+c6130000
+68014682
+c28642b0
+202042a2
+680246d3
+c40d8000
+df200014
+58030d40
+20402a8f
+c2007ec1
+20600000
+680246d3
+c4080000
+202048ea
+5800416d
+600141ef
+58003f77
+600141f1
+58003ebb
+600141ed
+5800417c
+600141f5
+58003de3
+600141f3
+58003eb3
+600141eb
+58003d5b
+600141f9
+20402c7a
+58004401
+1a608ad8
+e0a10000
+58004406
+1a608ada
+e0a10000
+58003ebf
+1a608adc
+e0a10000
+580041f9
+600141fd
+58003d36
+60014201
+20600000
+680246d3
+c30964d7
+202064da
+20758000
+20402c9d
+20403e6e
+20403e1e
+20403e54
+20405810
+20405839
+2040582c
+20405818
+680246d3
+c28a3d46
+c289c414
+20600000
+2040659c
+680246d3
+2feffe19
+2440e5c2
+2040443f
+20403dc9
+204041aa
+202065df
+680246d3
+c30f3d53
+68008abd
+2fec0003
+24608000
+6800c71f
+6000c71e
+6800c6f5
+c3830000
+680246d3
+c4088000
+c28eaee4
+20202f2c
+68008478
+1fe67e1a
+24628000
+700a9912
+20407d8f
+d8e00000
+202041b9
+6800c6b6
+c1008000
+7046b601
+20600000
+6800c6e1
+1fe17e0f
+6000c77a
+20203d80
+6808c6e7
+2040681d
+2420bd62
+6800c6b6
+c1000000
+7046b600
+6800c77a
+1fe0fe01
+1fe17e03
+6000c77a
+20403d7e
+680246d3
+c28a443b
+c289bd79
+20600000
+d840001e
+2040680e
+d840001f
+2040680e
+20204435
+44f1c01c
+2040424a
+6800c6e0
+c002bdaa
+c0023d96
+6800c77a
+c0003d8a
+c000bd88
+c0013d8c
+c001bd8e
+6800c780
+20203dbe
+6800c77f
+20203dbe
+6800c781
+20203dbe
+6800c782
+20203dbe
+6800c6e0
+c1030000
+6800c6b5
+1fe0fe01
+6000c6b5
+20600000
+6800c77a
+c0003d9d
+c000bd9b
+c0013d9f
+c001bda1
+6800c784
+20203da2
+6800c783
+20203da2
+6800c785
+20203da2
+6800c786
+6000c6b5
+1fed7e00
+1fe22200
+1fe0fe0d
+20406413
+1a227e00
+1fe0fe0e
+20206413
+6800c77a
+c0003db1
+c000bdaf
+c0013db3
+c001bdb5
+6800c788
+20203db6
+6800c787
+20203db6
+6800c789
+20203db6
+6800c78a
+6000c6b5
+204040c0
+6800c6b5
+1fe0fe80
+1fed7e00
+1fe0fe05
+1fe22200
+2020415a
+6000c6b5
+20403d90
+6800c6b5
+58000006
+20406414
+1fe104f8
+6800c6b5
+9840fe00
+1fed7e00
+1fe0fe06
+20206413
+204033c4
+2022c316
+2040441c
+204042e4
+202033bd
+68014707
+207a0000
+680246d3
+c4088000
+c3818000
+c6130000
+20404083
+c1838000
+20404482
+d8e00003
+204043ce
+58000000
+600146ae
+6000c6b4
+20403263
+68014682
+c283c392
+c284b402
+c28033e9
+204042ca
+20202ead
+20403dce
+20407e34
+20403d6a
+20403de9
+20403ee0
+20203df7
+680246d3
+c4080000
+204048d3
+202048fd
+68108a04
+c303bdf1
+c283bdf4
+20600000
+6800c6ff
+c4038000
+2020659a
+6800c6ff
+c3838000
+20204381
+20403ded
+68108a04
+6000c6ff
+c4038000
+20403e07
+680246f9
+6808c6fd
+98408400
+1c427e00
+98467c00
+24610000
+600246f9
+20403f97
+24740000
+700d3804
+20203e0f
+680a46f9
+1c427e00
+98467c00
+24413e0c
+20600000
+58000000
+600246f9
+20600000
+68008d38
+c4010000
+20203e12
+68108a04
+c4038000
+700d5220
+58000001
+60008d54
+6803c69a
+e0a38000
+20600000
+68110050
+793ffe0b
+60110050
+20600000
+58008c00
+60014575
+58008e7a
+600144bc
+58002402
+600140bd
+58002580
+6001c0aa
+70417303
+70415608
+7046d901
+58000200
+60014154
+7044a617
+7044a817
+58000a77
+60014212
+38000306
+38044440
+38090000
+380c4408
+6004c577
+38001224
+38044000
+38080000
+e0a28000
+3803ffff
+3806fe23
+380999d9
+380c020d
+60044098
+5800012c
+60014707
+204057a3
+680246d3
+c40f8000
+20403e44
+20203e4c
+6808c6f7
+204067fb
+6808c6f7
+2040681d
+7046f603
+20608000
+7046f602
+20600000
+6808c6f8
+204067fb
+6808c6f8
+2040681d
+70422d00
+20608000
+70422d02
+20600000
+6800c22d
+c0003e59
+c000be62
+c0013e6b
+20203e59
+68094221
+68014227
+98467e00
+1feffe14
+1fe6fc64
+20407f86
+1807fe00
+600146d0
+20600000
+6809421f
+68014225
+98467e00
+1feffee6
+1fe6fd90
+20407f86
+1807fe00
+600146d0
+20600000
+68014223
+600146d0
+20600000
+6808c23a
+2040680e
+204048fb
+6808c6e2
+204067fb
+6808c6e3
+204067fb
+6808c6e4
+204067fb
+6808c6f3
+204067fb
+6808c6dc
+2040680e
+6808c6e8
+204067fb
+6808c6e9
+204067fb
+6808c6ea
+204067fb
+6808c6eb
+204067fb
+6808c6e5
+204067fb
+6808c6e6
+204067fb
+6808c6ef
+2040680e
+6808c6f0
+2040680e
+6808c6f1
+2040680e
+6808c6f2
+2040680e
+6808c6f4
+2040680e
+6808c6ed
+204067fb
+6808c6ec
+204067fb
+6808c6e7
+202067fb
+6808c6e8
+204067dd
+6808c6e9
+204067dd
+6808c6ea
+204067dd
+6808c6eb
+202067dd
+6808c6e8
+20403ea7
+6808c6e9
+20403ea7
+6808c6ea
+20403ea7
+6808c6eb
+20203ea7
+18467cff
+20628000
+18410e7f
+6812011c
+afefffff
+68120078
+f920fe00
+60120078
+6812007c
+fd20fe00
+6012007c
+20600000
+78347c00
+68120138
+79347e1a
+6012004c
+20402c21
+20404482
+20403e9f
+20203ebf
+20403ebf
+680080a0
+247a0000
+202067ed
+20403ee0
+d8400019
+680246d3
+2feffe12
+2040bede
+2040680e
+204063ee
+6808c6e2
+204067dd
+6808c6e3
+204067dd
+6808c6e4
+204067dd
+6808c6e5
+204067dd
+6808c6e6
+204067dd
+6808c6e7
+204067dd
+6808c6ed
+204067dd
+6808c6e8
+204067dd
+6808c6e9
+204067dd
+6808c6ea
+204067dd
+6808c6eb
+204067dd
+6808c6f3
+202067e1
+d840001e
+20600000
+44f2401c
+20403eee
+20403f36
+6800c6b8
+6808c6b7
+6000c6b7
+98467c00
+2422b3d4
+6800c6be
+6808c6bd
+6000c6bd
+98467c00
+2422b3d4
+20600000
+6800c6ea
+c17f8000
+da200000
+6808c6ea
+2040681d
+7920a200
+6808c6eb
+2040681d
+7920a201
+1a227e00
+6000c6b8
+c000befe
+c0013f02
+6800c6b9
+c283bf0e
+20600000
+6800c6b7
+c0003f06
+c001bf08
+20600000
+6800c6b7
+c0003f0a
+c001bf0c
+20600000
+7046b982
+20600000
+7046b981
+20600000
+7046b980
+20600000
+7046b983
+20600000
+6800c6b9
+793ffe07
+6000c6b9
+c0003f16
+c000bf19
+c0013f1c
+c001bf1f
+20600000
+6800c6b8
+c001bf22
+20600000
+6800c6b8
+c0003f22
+20600000
+6800c6b8
+c001bf2c
+20600000
+6800c6b8
+c0003f2c
+20600000
+6800c6bc
+1fe0fe01
+6000c6bc
+1fe67c01
+20610000
+7046bc00
+6800c6ba
+1fe0fe01
+6000c6ba
+20600000
+6800c6bb
+1fe0fe01
+6000c6bb
+1fe67c01
+20610000
+7046bb00
+6800c6ba
+1fe0ffff
+6000c6ba
+20600000
+6800c6e8
+c17f8000
+da200000
+6808c6e8
+2040681d
+7920a200
+6808c6e9
+2040681d
+7920a201
+1a227e00
+6000c6be
+c000bf46
+c0013f4a
+6800c6bf
+c283bf56
+20600000
+6800c6bd
+c0003f4e
+c001bf50
+20600000
+6800c6bd
+c0003f52
+c001bf54
+20600000
+7046bf82
+20600000
+7046bf81
+20600000
+7046bf80
+20600000
+7046bf83
+20600000
+6800c6bf
+793ffe07
+6000c6bf
+c0003f5e
+c000bf61
+c0013f64
+c001bf67
+20600000
+6800c6be
+c001bf6a
+20600000
+6800c6be
+c0003f6a
+20600000
+6800c6be
+c001bf6f
+20600000
+6800c6be
+c0003f6f
+20600000
+7046c200
+6800c6c0
+1fe0fe01
+6000c6c0
+20600000
+7046c100
+6800c6c0
+1fe0ffff
+6000c6c0
+20600000
+58000002
+6000c680
+20600000
+6800c1e2
+207a0000
+20405271
+247a0000
+680246d3
+c281bf8a
+c2803f8a
+c282bf8a
+20403f97
+24740000
+da200009
+20404d63
+6801424e
+e0a10000
+580002a1
+e0a10000
+6803c69a
+e0a38000
+20600000
+58000000
+6003c69a
+20203f81
+680146aa
+600146b0
+20600000
+44f2c01c
+da200007
+6809446f
+20405a64
+6803c69a
+e0a38000
+20600000
+44f3401c
+78547c00
+58000000
+6003469b
+20403fb5
+20404079
+2040407e
+20404099
+24740000
+20403f8d
+d8e00008
+202043ce
+6801469b
+1fe67e00
+6001469b
+20207fe7
+6801469d
+1fe67e00
+6001469d
+20207fe7
+6801469d
+1fe67e00
+6001469d
+6801469b
+1fe67e00
+6001469b
+20404002
+20207fe7
+20404002
+20207fe7
+6800c239
+c1800000
+6800c6e0
+c0003fe2
+c000bfe2
+c0013fe2
+c001bfe2
+c0023fc4
+c002c010
+c0033fe2
+20203fe2
+6800c6a7
+205a405d
+7046a701
+20600000
+20403fc0
+6808c6f3
+2040681d
+24608000
+58000000
+20406414
+c09840d1
+58000002
+20406414
+c4038000
+2040405d
+20403fde
+6000c6a1
+1ff1fe00
+20404169
+6000c69c
+6800c6a1
+1fe17e0f
+20404169
+6000c69e
+6800c6f6
+c0003fa3
+c000bfab
+c0013fa7
+c001bfb3
+20600000
+58000012
+20206414
+c018bfea
+202040d1
+20403fc0
+78547c00
+6808c6f3
+2040681d
+24608000
+58000000
+20406414
+c0983fe0
+58000002
+20406414
+c4038000
+2040405d
+6800c69b
+20404165
+6001469b
+6800c69d
+20404165
+6001469d
+6800c6f6
+c0003ffa
+c000bffc
+c0013ffe
+c001c000
+20600000
+20403fa3
+202040b3
+20403fab
+202040b3
+20403fa7
+202040b3
+20403fb3
+202040b3
+6801469d
+6809469b
+6001469b
+6009469d
+20600000
+2040640f
+20000064
+1a427e00
+20406414
+1fe22400
+20406411
+20000064
+1a427e00
+20600000
+78547c00
+6808c6f3
+2040681d
+24608000
+da400002
+20404007
+c4038000
+da400000
+20404007
+6000c6dd
+c09f4145
+6800c6a7
+205a4039
+7046a701
+20404039
+6800c6a1
+1ff1fe00
+20404169
+6000c69c
+6800c6a1
+1fe17e0f
+20404169
+6000c69e
+6800c6f6
+c0004031
+c000c035
+c0014033
+c001c037
+20600000
+6800c6a4
+c0004051
+c000c045
+20600000
+20403fa3
+2020402d
+20403fa7
+2020402d
+20403fab
+2020402d
+20403fb3
+2020402d
+2040640f
+2040405d
+dfe00005
+20406414
+6000c6a1
+dfe00007
+20406414
+6000c6a2
+dfe00008
+20406414
+6000c6a3
+20206411
+6800c6a2
+c1800000
+6800c6a3
+1fe67c2d
+20610000
+7046a400
+5800ba41
+20406405
+58000032
+20406405
+5800b541
+20206405
+6800c6a2
+c1800000
+6800c6a3
+1fe67c2d
+24610000
+7046a401
+5800ba41
+20406405
+58008032
+20406405
+5800b541
+20206405
+dfe00003
+20406414
+6001469b
+dfe00004
+20406414
+6001469d
+20600000
+d840001b
+204067fb
+d840001b
+2040681d
+20608000
+68108109
+79207e04
+60108109
+20600000
+6808c6c0
+68108109
+9840fe00
+207a0000
+6000c69f
+7046c000
+20207fe7
+6808c6c0
+68108109
+9840fe00
+6000c6c0
+20600000
+6800c6c0
+207a0000
+6000c69f
+7046c000
+20207fe7
+6800c6ba
+207a0000
+6000c6a0
+7046ba00
+20207fe7
+da200000
+6808c6e2
+2040681d
+7920a200
+6808c6e3
+2040681d
+7920a201
+6808c6e4
+2040681d
+7920a202
+20404090
+1a227e00
+20600000
+6800c6e5
+c17f8000
+6808c6e5
+2040681d
+7920a203
+6808c6e6
+2040681d
+7920a204
+20600000
+20404083
+204040a8
+204040a3
+1a227e00
+6808c69a
+6000c69a
+9842fe00
+1fe67c00
+20628000
+20207fe7
+c6930000
+1a227e00
+207a0000
+6000c69a
+20207fe7
+68014682
+c284c0ad
+68014682
+c28040b0
+20600000
+1a227e00
+243a5820
+20205822
+1a227e00
+243a2bc7
+20202bc9
+44f3c01c
+d840001a
+680246d3
+2feffe12
+2040c0be
+2040681d
+20608000
+5800000a
+20406414
+200003e8
+202040b3
+d840001f
+20600000
+680246d3
+c28940c4
+d840001a
+202067fe
+d840001f
+202067fe
+20403d36
+20758000
+204040c0
+6800c6e0
+c002c0d5
+204040d9
+c01840e0
+c018c0ea
+204040d1
+200003e8
+202040cb
+44f4401d
+680246d3
+c28963e0
+202063d1
+204040d9
+c01f414b
+20404145
+202040d5
+58000001
+20406414
+6000c6de
+58000000
+20406414
+6000c6dd
+20600000
+6800c6de
+c068c139
+c06940f8
+c00140ee
+c02a40e6
+20600000
+7046e002
+20600000
+7046e006
+20600000
+6800c6de
+c03840e8
+7046e001
+20600000
+7046e004
+204040f6
+58003426
+20406413
+58000419
+20406413
+58000009
+20206413
+58005a09
+20206413
+7046e003
+204040f6
+58000f0d
+20406413
+5800e31d
+20406413
+5800d27d
+20406413
+20404102
+2020411a
+5800351b
+20406413
+5800b428
+20406413
+58004629
+20406413
+5800962a
+20406413
+58008c2b
+20406413
+58006e2c
+20406413
+5800642d
+20406413
+58005f38
+20406413
+58000f39
+20406413
+5800323a
+20406413
+5800473b
+20406413
+58001042
+20206413
+58002e54
+20406413
+5800f255
+20406413
+5800f461
+20406413
+58007063
+20406413
+58005275
+20406413
+58004176
+20406413
+5800ed77
+20406413
+58002378
+20406413
+58004679
+20406413
+5800e57a
+20406413
+5800487c
+20406413
+5800777e
+20406413
+5800017f
+20406413
+5800000b
+20406413
+5800007f
+20406413
+202040f4
+7046e000
+204040f6
+5800100d
+20406413
+5800ed1d
+20406413
+5800807d
+20406413
+20404102
+58000943
+20406413
+2020411a
+6808c6dc
+20406829
+20407ec1
+6808c6dc
+20406825
+20207ec1
+7046e005
+5800ba41
+20406405
+58000d11
+20406405
+5800041b
+20406405
+5800041c
+20406405
+58000f1d
+20406405
+58000032
+20406405
+5800b541
+20206405
+5800ba41
+20406405
+20000fa0
+5800ff7f
+20406405
+1a227e00
+20406405
+5800007f
+20406405
+5800b541
+20206405
+c4038000
+d840ff00
+9841fe00
+20600000
+c4018000
+d84000f0
+9841fe00
+20600000
+20405892
+247a0000
+6800c6c5
+1fe17e03
+c1818000
+680246d3
+c281c179
+c2804179
+c282c179
+20403f97
+24740000
+20203f90
+58000000
+6003c69a
+20203f90
+1a627e00
+c00a41c3
+c000c2ca
+c00ac1d9
+c00141d9
+c002c1d6
+c008426c
+c009429b
+c00341d5
+c00241cc
+c009c1cc
+c00541ca
+c01733cd
+c018c1b4
+c01941b6
+c01f4191
+c013c38e
+c01cc19c
+c01d4192
+c01e419a
+20600000
+20203410
+70478b01
+6800c71e
+243a4492
+6800c720
+6808c703
+98467c00
+2022b40a
+20600000
+70478b01
+20600000
+70478b01
+d8e00003
+204043d2
+58000000
+60014707
+7046a700
+6800c6e0
+1fe67c05
+2042c039
+2442c05d
+68008004
+c289c1af
+204041aa
+202065d1
+20402c7a
+1a60a2ae
+da40005b
+d8400004
+20600000
+20402c7a
+1a60a4ae
+ea408000
+6000c77b
+20204435
+d8e00002
+202041b9
+7046c602
+d8e00001
+202041b9
+6800c6c5
+f9207e00
+6000c6c5
+20600000
+6800c6c5
+f93ffe00
+6000c6c5
+20600000
+7046c500
+20600000
+6801420a
+793ffe00
+6001420a
+58000000
+600146ae
+20403f8d
+202042ca
+204063cb
+202033dd
+6800c71e
+243a4492
+68014682
+c28642b0
+680246d3
+c28041d7
+c282c2b0
+c281aead
+202033a7
+20203f74
+20600000
+204043c0
+2020659a
+44f4c01d
+204041e7
+680246d3
+c28041d7
+c281aead
+6800c71e
+243a4492
+68014208
+c283c1f5
+c28033a9
+c280c1ef
+c28141f2
+c281c1f2
+202042b0
+58000000
+600446b7
+e0a20000
+7046b400
+7046a700
+7041e200
+70442900
+20600000
+c282c1f2
+c281c1f2
+202042b0
+68014682
+c28642b0
+202033a7
+204041c1
+68014208
+c28033a9
+202033a7
+204043d6
+20404243
+20404246
+20404250
+2040445d
+20404443
+20404333
+204043a5
+204043eb
+20404209
+20404231
+20404234
+20404237
+2040423a
+2040423d
+20204240
+6800c711
+207a0000
+1fe0ffff
+6000c711
+247a0000
+2020420f
+6800c712
+c1000000
+c002c216
+20404225
+70471205
+70471105
+20600000
+2040422c
+70471204
+70471105
+20600000
+58008006
+20406413
+200003e8
+70471100
+70471200
+202040e0
+5800a006
+20406413
+5800a005
+20206413
+70471100
+6800c6e0
+c0024220
+58000106
+20406413
+5800a105
+20206413
+70471100
+58000906
+20206413
+70471105
+70471201
+20600000
+da604680
+da40429b
+2020336d
+da6046ac
+da404264
+20203374
+da6046ae
+da404266
+20203374
+da6046b0
+da40426a
+20203374
+da6046c4
+da404478
+2020336d
+da6046c6
+da40425e
+2020336d
+da604704
+da404249
+2020336d
+da604707
+da404249
+20203374
+20600000
+680246d3
+c40b8000
+7046df0a
+6800c6f4
+6000c715
+20600000
+da6046df
+da404253
+2020336d
+6800c6f4
+6000c715
+58000190
+60014716
+60014718
+da200000
+6808c77a
+18408401
+6008c714
+70471301
+20600000
+6800c6c5
+c3810000
+700a9912
+20407d8f
+d8e00000
+202041b9
+204042ca
+2020340a
+204033f6
+6800c71e
+243a4492
+2020340a
+c5137e1d
+20204386
+44f5401d
+7046b400
+20404386
+204041c1
+202042b0
+680341d0
+203a33eb
+2040427e
+70016d17
+6800c65a
+243a33e1
+70016d04
+202033e1
+680146a8
+600146ae
+2040427e
+20403418
+20207df4
+580000c8
+60014716
+60014718
+20204285
+580003e8
+60014716
+60014718
+6800c720
+c000c28a
+c001428c
+c001c28e
+20600000
+6800c6f0
+2020428f
+6800c6f1
+2020428f
+6800c6f2
+60008aa2
+20404482
+68008aa2
+6000c715
+da200000
+70471301
+20207d1e
+da200000
+20207d19
+da200000
+20207d14
+202041c1
+7041e201
+20403416
+20403412
+58000000
+6001467e
+6000c680
+2020340e
+2040435f
+6800c720
+6808c703
+98467c00
+2022c2ab
+6800c210
+c019c271
+c01a4279
+202042b0
+20403d57
+c6130000
+6800c71e
+243a4492
+20600000
+44f5c01d
+68014682
+c285c2b7
+680246d3
+c30c42b7
+180a7e00
+6000c4a1
+20403418
+68014687
+600146ac
+70016d06
+58000000
+600146b0
+600146ae
+d8e00007
+204043ce
+204043ca
+6800c092
+2feffe01
+2040fdf4
+6800c092
+2feffe00
+2040fddd
+680246d3
+c28e422e
+20204282
+44f6401d
+6800c092
+2feffe01
+2040c2d4
+6800c092
+2feffe00
+2040c2d7
+680246d3
+c28e421a
+20204482
+58000000
+600146ae
+20207dfa
+58000000
+600146ac
+20207de2
+680246d3
+c4038000
+d8e00007
+204043d2
+204042e8
+204042fb
+680246d3
+c289c435
+c28a42e4
+20600000
+d8400058
+da204720
+da400000
+202065d1
+68008185
+c01a42ec
+c019c2ef
+20600000
+6000c6c7
+6803044f
+202042f1
+6000c6c7
+68030040
+600346c8
+6803c6c7
+d8c04721
+df200003
+e8cb8000
+98467c00
+2022c310
+18c08c16
+c20042f5
+20600000
+da204721
+6800c720
+1fe0ffff
+1feffe1d
+9a20a200
+68008185
+e2208000
+c01a4305
+c019c30c
+20600000
+6803044f
+e0a30000
+d8c04419
+20407ebf
+680344a0
+e0a30000
+20600000
+68030040
+e0a30000
+d8c041be
+20207ebf
+18c08dfa
+18c20a00
+680b46c8
+18408403
+e0ab0000
+20600000
+d8400058
+da204720
+da400000
+204065df
+da204721
+6800c720
+6808c703
+98467c00
+20628000
+1fe0ffff
+1feffe1d
+9a20a200
+ea208000
+6000c210
+c019c327
+c01a432c
+20600000
+e8c30000
+600341d0
+d8a041be
+20407ebf
+202067d7
+e8c30000
+600341d0
+d8a04419
+20407ebf
+e8c30000
+600344a0
+20600000
+6800c6f5
+c282c349
+c2834359
+20204337
+20404083
+c003433e
+7046d81e
+6800c6d9
+c1008000
+7046d901
+20600000
+20404343
+6800c6d9
+c1000000
+7046d900
+202043c0
+6800c6d8
+207a0000
+1fe0ffff
+6000c6d8
+247a0000
+20204370
+6800c6ed
+c17f8000
+6808c6ed
+2040681d
+2020c354
+6800c6d9
+c1008000
+7046d901
+680246d3
+c3830000
+20204370
+6800c6d9
+c1000000
+7046d900
+d8e00006
+202043d2
+68008004
+c4030000
+6800c720
+c000c369
+c001436c
+20600000
+68008004
+c4030000
+6808c6ed
+2040681d
+2020c366
+70472001
+20600000
+6800c703
+6000c720
+20600000
+6808c6ed
+2420c370
+20600000
+6808c6ed
+2040681d
+2020c354
+20600000
+6808c720
+18408401
+6800c6d2
+98467c00
+244143cc
+6008c720
+7041bd00
+2040437a
+204043c0
+2020437e
+d8400001
+da204720
+da400000
+20206606
+20404381
+204043c2
+202041d7
+68014682
+c283c392
+c284b402
+c28033e9
+202042ca
+44f6c01d
+58000000
+600146b0
+68014682
+c284b402
+68014682
+c28033e9
+20600000
+58000001
+60030040
+70018533
+202042df
+204043c4
+20207e2f
+6800c6ec
+c17f8000
+6808c6ec
+2040681d
+2020c39f
+6800c685
+6000c6da
+6800c6db
+c1008000
+7046db01
+202043ca
+204043b5
+6800c6db
+c1000000
+7046db00
+20407e2f
+202043c8
+6800c6f5
+c2824394
+20404083
+c003c3af
+6800c685
+6000c6da
+6800c6db
+c1008000
+7046db01
+202043ca
+204043b5
+6800c6db
+c1000000
+7046db00
+20407e2f
+202043c8
+da6046da
+da4043b8
+2020336d
+d8e00006
+204043ce
+20403357
+2020426c
+d8e00001
+202043ce
+d8e00001
+202043d2
+d8e00000
+202043ce
+d8e00000
+202043d2
+d8e00002
+202043ce
+d8e00002
+202043d2
+d8e00005
+202043ce
+d8e00005
+202043d2
+d8400001
+20600000
+680246d3
+f9207e00
+600246d3
+20600000
+680246d3
+f93ffe00
+600246d3
+20600000
+680246d3
+c40d0000
+6800c6ce
+1fe0fe01
+6000c6ce
+1fe67c0a
+20610000
+7046ce00
+204068eb
+20406908
+6001470f
+da204709
+20406930
+6800c231
+c280c4a0
+c30043e9
+202043e7
+d8e00004
+202043ce
+d8e00004
+202043d2
+680246d3
+c4020000
+6800c6ef
+6000c715
+6800c6cf
+1fe0fe01
+6000c6cf
+1fe67c14
+244143f9
+c00143fb
+c00243fe
+c00343fb
+c00443fe
+20600000
+7046cf01
+202043fe
+da200000
+70471302
+20207d14
+da200000
+70471302
+20207d19
+20403f97
+24740000
+da200007
+da40469a
+20600000
+6800c78b
+207a0000
+6808c6e7
+2040681d
+2040c410
+6800c704
+247a0000
+20404083
+247a0000
+20202d83
+6800c6e7
+c17f8000
+7047040a
+20600000
+20404423
+68014778
+d840aa55
+98467c00
+2022c42b
+60094778
+2040441c
+20204435
+680344a0
+60034738
+1fe0ff00
+60034755
+1fe0ff00
+60034772
+20600000
+58004778
+d8404720
+98460400
+6801c700
+9840fe00
+d8400002
+da204778
+20206562
+5800477f
+d8404720
+98460400
+6801c700
+da204720
+20406562
+2040431a
+6802477b
+20402c7a
+2020322c
+5800477f
+d8404720
+98460400
+da204720
+6801c700
+20206514
+d8400001
+da20477a
+da40005a
+202065d1
+d8400001
+da20477a
+da40005a
+202065df
+c6130000
+680246d3
+c40b0000
+6800c705
+1fe0fe01
+1fe17e07
+6000c705
+c1838000
+68014682
+c280444f
+c284c44f
+20600000
+44f7401d
+6800c706
+247a0000
+680246d3
+c4040000
+6800c6a5
+204063fb
+6000c6a6
+1fe67c10
+2021445b
+70470600
+20600000
+7047061e
+20600000
+da604706
+da404460
+2020336d
+6800c6a5
+20406414
+1fe67c10
+24610000
+680246d3
+c4040000
+d8e00008
+204043d2
+70417200
+7046c41e
+20404482
+680246d3
+c28ac471
+6800c720
+c000c489
+c0014476
+20600000
+6800c720
+c000c489
+c001448c
+c001c48f
+20600000
+6800c6f0
+2020428f
+70417220
+20204482
+6800c6f0
+c17f8000
+6000c715
+20204296
+6800c6f1
+c17f8000
+6000c715
+20204296
+20404296
+2040447a
+2040447e
+6800c6f2
+c17f8000
+6000c715
+20204296
+6800c6f0
+6000c715
+20204298
+6800c6f1
+6000c715
+20204298
+6800c6f2
+6000c715
+20204298
+44f7c01d
+6800c71e
+1fe0ffff
+6000c71e
+6808c720
+18408401
+6800c6d2
+98467c00
+244143cc
+6008c720
+7041bd00
+2040437a
+204042fb
+202042a2
+20404482
+58000000
+600400a1
+20202b1f
+20758000
+68108081
+1fe17ef0
+60108081
+20406948
+580044e6
+600141eb
+580044e9
+600141ed
+580044ef
+600141f3
+580044f2
+600141f5
+580033d0
+600141e9
+20402c7a
+580045c2
+1a608ad8
+e0a10000
+580044ea
+1a608ada
+e0a10000
+580044e9
+1a608adc
+e0a10000
+5800450e
+600141fd
+580044da
+6001475b
+580044d6
+6001475f
+58004560
+6001470f
+44f8401e
+204044e2
+20407e38
+70417202
+6800c72b
+6000c69a
+c00044d5
+6800c72c
+6000c686
+204044db
+20407cd3
+20407cdd
+70475701
+68014682
+c3860000
+2020340a
+70475702
+204044db
+da200000
+20407d1e
+20202ee4
+202044db
+44f8c01e
+6800c729
+c0ffc4e0
+6808c706
+2020680e
+6000c706
+202044de
+20402c9d
+68014753
+60014755
+20204515
+20406835
+204044e9
+2020340a
+2020696c
+6800c765
+207a0000
+20202d83
+20600000
+20206978
+20404544
+20404503
+202044ee
+1a627e00
+c016b431
+c008341a
+c01cc4fb
+c01e44ff
+c01d44f9
+20600000
+70476501
+20600000
+70476501
+70476301
+70476401
+20600000
+70476501
+70476301
+70476401
+20600000
+6800c763
+c1000000
+6800c762
+c1008000
+70476201
+da200000
+20207d19
+da200000
+20407d19
+204044db
+2020340a
+2040337b
+20204510
+6800c72d
+207a0000
+da604755
+da40450a
+20203374
+2040451a
+6009471a
+2040451f
+6009471c
+20600000
+6801471a
+6001471e
+20404540
+20404525
+6000c724
+6801471c
+6001471e
+20404542
+20404525
+6000c725
+20600000
+68014720
+1fe22200
+6801471e
+2040452e
+6800c719
+243a4537
+24610000
+6809471e
+20600000
+98467e00
+20214534
+1fe67e00
+70471801
+9a267c00
+20600000
+70471800
+9a267c00
+20600000
+2421453e
+6800c718
+243a453c
+58000001
+20600000
+58000002
+20600000
+58000000
+20600000
+70422e33
+202068eb
+70422e34
+202068eb
+6800c72a
+c1808000
+44f9401e
+70471901
+2040451a
+68014724
+68094722
+98467c00
+20628000
+60014722
+20404550
+20204554
+6800c724
+203a455a
+1fe0ffff
+20204557
+6800c725
+203a455d
+1fe0fe01
+1fe20e00
+da200001
+20204560
+d8e00000
+da200000
+20204560
+d8e00002
+da200000
+20204560
+1a227e00
+6000c761
+6800c763
+c0002ee4
+68014753
+60014755
+6800c761
+203a4580
+44f9c01e
+da200000
+20407d14
+18e27e00
+c00245a3
+c002c5a5
+c00345a7
+2040458b
+c0004574
+c001457a
+c001c574
+20600000
+18e27e00
+c000458f
+c000c591
+c0014593
+c001c595
+20600000
+18e27e00
+c0004597
+c000c59a
+c001459d
+c001c5a0
+20600000
+44fa401e
+da200000
+20407d19
+18e27e00
+c00245bc
+c002c5bc
+2040458b
+c00045a9
+c00145af
+c001c5a9
+20600000
+6800c728
+6808c727
+9841fe00
+20600000
+70473401
+202045be
+70473402
+202045be
+70473601
+202045be
+70473602
+202045be
+70473401
+70473601
+202045be
+70473402
+70473602
+202045be
+70473402
+70473601
+202045be
+70473401
+70473602
+202045be
+70473801
+202045be
+70473802
+202045be
+70474101
+202045c0
+18e27e00
+c00045b5
+c000c5b5
+c00145b7
+c001c5b7
+20600000
+18e27e00
+c00045b9
+c000c5b9
+c00145b9
+c001c5b9
+20600000
+70473400
+202045be
+70473600
+202045be
+70473400
+70473600
+202045be
+70473800
+202045be
+da20472e
+20207e3d
+da20473b
+20207e3d
+6800c764
+c000c5cc
+da204744
+20407e54
+243445d1
+d8c04744
+e8c08000
+1fe22200
+da404745
+20600000
+70476400
+78347c00
+da200001
+da404766
+20600000
+6800c747
+c00245d5
+c002c5d5
+20600000
+6800c74a
+243a45dc
+6800c74c
+243a45dc
+6800c74e
+243a45dc
+20600000
+78347c00
+202045c7
+20758000
+68108081
+1fe17efc
+60108081
+580046b4
+600141eb
+580046b3
+600141ed
+5800340a
+600141f7
+580046b1
+600141f3
+58004612
+600141f5
+5800460c
+600141e9
+5800476a
+600141f9
+58004686
+600141fd
+58004729
+600146e7
+58004806
+600146e2
+58004807
+600146e4
+204057a3
+204047da
+20404788
+2040476d
+20406948
+2040477a
+20407e38
+20407d08
+20404793
+204047c7
+44fac01e
+2040464f
+6800c6dd
+c0004609
+6800c6de
+6000c686
+2020480e
+704686ff
+7046df01
+202046d9
+6800c6df
+c00133d0
+2040527e
+6800c256
+243a33d0
+202033d2
+1a627e00
+c000c626
+c0014629
+c0024631
+c002c633
+c0034635
+c003c638
+c009463c
+c009c644
+c013c645
+c0174648
+c01ec649
+c00a4658
+c00ac65c
+c01fc65f
+c0204665
+c008466b
+c016466c
+c016c677
+20600000
+7046ad00
+7046ac00
+20600000
+2040462b
+20204631
+7041e200
+70468000
+70420500
+7046ac00
+7046ad00
+20207e38
+204033a9
+202046c2
+204046b6
+20203408
+58000002
+6000c680
+20600000
+7046ac00
+58000001
+6000c6ad
+20600000
+6800c1e2
+c1008000
+7041e201
+20403416
+20403414
+204046b6
+20403408
+2020340e
+20204631
+58000005
+6000c6ac
+20600000
+202033cd
+da400000
+6800c217
+1fef8422
+68014215
+1fe22200
+20206606
+da400000
+6800c69a
+c4008000
+6800c217
+207a0000
+1fef8422
+68014215
+1fe22200
+202065df
+204046b6
+58000000
+600146b7
+20203408
+20407e38
+7046b000
+202046d9
+20407e38
+7046b001
+680446c1
+60044496
+20403416
+20205abf
+68014509
+c1000000
+680446c9
+207a0000
+60044496
+20205abf
+2020481f
+6800c6dd
+c1000000
+6800c6df
+c1808000
+20404672
+20203406
+7048df01
+df20000b
+d8a048e0
+d8c048c9
+20207f01
+6800c6dd
+c1000000
+6800c6df
+c000c67c
+2020481b
+6800c8df
+c1808000
+7048df00
+68014682
+c2803408
+c284b408
+df20000b
+d8c048e0
+d8a048c9
+20207f01
+2040468c
+20404693
+2040469e
+204046a6
+204046a9
+202046ac
+da6046db
+da40468f
+20203374
+7046df02
+20403408
+204046f4
+2020480b
+da6048ec
+da404696
+2020336d
+68014682
+c284c80b
+c280480b
+6800c8c9
+c000c80b
+c002480b
+c002c80b
+2020340a
+da6046ac
+da4046a1
+2020336d
+6800827f
+79207e00
+79207e07
+6000827f
+20600000
+da604680
+da40463c
+2020336d
+da6046ad
+da4033e9
+2020336d
+6800c6df
+c1808000
+da6046b7
+da4046c2
+20203374
+2040473a
+20206978
+2020696c
+20406835
+202046b3
+6800c69a
+c280c6be
+c28046ba
+20600000
+680146d7
+600146d9
+600146db
+202033f8
+680146d3
+600146d9
+600146db
+202033f0
+6800c6df
+c1808000
+6800c69a
+c280c6c8
+c28046cc
+20600000
+680146d1
+600146d9
+600146db
+202033eb
+68014682
+c3848000
+680146d5
+600146d9
+600146db
+680146b3
+204046f0
+20403404
+680246bd
+600248cc
+68014682
+c3858000
+202033fa
+6800c6df
+c1808000
+6800c69a
+c280c6df
+c28046e4
+20600000
+204046f8
+203a46c2
+20403406
+204033f0
+202033e1
+680146b7
+680946b5
+600946b7
+247a0000
+680146b1
+204046f0
+20403404
+680246b9
+600248cc
+68014682
+c3858000
+202033fa
+60014154
+1fe0fffc
+60014482
+20600000
+68014682
+c284b402
+c28033e9
+202046b6
+6800c217
+1fe27200
+68014215
+1fe22200
+ea210000
+c0004701
+1a20a222
+c20046fc
+20207ff1
+e8c30000
+600341d0
+18c08c0a
+d8a041be
+20407ebf
+204067d7
+20207fef
+20407fe9
+68014682
+c280470d
+c284c710
+20600000
+6800c253
+c19f8000
+20207fe7
+6800c6b0
+207a0000
+20207fe7
+20407fe9
+68014682
+c3800000
+c3848000
+20207fe7
+6800c69a
+c280c71c
+c280471f
+20600000
+6800c093
+c1818000
+202046d9
+202046d9
+78567c00
+680146d9
+600146db
+20404713
+20344718
+20404708
+24740000
+78367c00
+20600000
+20404720
+24760000
+1a227e00
+203a4730
+20403406
+da6046f1
+20204732
+20403408
+da604719
+dfe00005
+98effe00
+9a60a600
+ea608000
+207a0000
+20404762
+1a60a601
+20204735
+68014682
+c284c73e
+c280474e
+20600000
+20405892
+247a0000
+20404765
+24740000
+1fe0ffff
+1feffe05
+d8404741
+98408c00
+e8c08000
+1fe22200
+e8c90000
+20407ea5
+20405a64
+1a227200
+20407e9f
+20207f01
+20405271
+247a0000
+20404765
+24740000
+1fe0ffff
+1feffe05
+d84047a0
+98408c00
+e8c28000
+6002c79b
+6800c79b
+1fe22200
+20404d63
+6801424e
+e0a10000
+580000a1
+e0a08000
+6802479c
+e0a48000
+20600000
+60008a9a
+da200a9a
+20207e3d
+da200a9a
+20407e54
+24740000
+68008a9a
+20600000
+68010478
+c00c465f
+20600000
+58000002
+6000c8eb
+58200008
+600246c1
+592c0005
+e0a20000
+7044a617
+5800001b
+600144fa
+20405810
+2040582c
+20405839
+20205818
+df200028
+d8a04741
+d8c0949f
+20407ef4
+df200028
+d8a047a0
+d8c094c7
+20207ef4
+df20017e
+d8c0913a
+20207ef4
+df2001e7
+d8c092b8
+20207ef4
+204047ae
+24740000
+6800c69f
+20404790
+6800c6a0
+20404790
+6800c6a1
+20204790
+207a0000
+1fe18480
+202067f9
+204047ae
+24740000
+20404797
+202047b4
+da200000
+6800c69f
+204047a9
+7d3a2200
+6800c6a0
+204047a9
+7d3a2201
+6800c6a1
+204047a9
+7d3a2202
+1a227e00
+6000c6a9
+6800c69e
+9a2ffe00
+6809469c
+9840fe00
+600146aa
+20600000
+207a0000
+1fe18480
+2040681d
+2420fff1
+20207fef
+20407fe9
+6800c6a8
+247a0000
+6800c69b
+207a0000
+20207fe7
+2040666a
+680146aa
+da200ac2
+6808c69e
+204066b3
+2040666d
+68008ac2
+1fe27200
+6000c3af
+20407ef4
+68008ac2
+1fe27200
+6000c515
+20407ef4
+e8c08000
+6000c6e6
+e8c08000
+6000c6dd
+20600000
+6800c69a
+c4008000
+d8400003
+680146a4
+1fe22400
+da2046a6
+204065df
+680946a6
+58001b3a
+98467c00
+24628000
+6800c6a8
+207a0000
+1fe20400
+680146a4
+1fe0a403
+da200ac2
+204065df
+202047e8
+680146a2
+207a0000
+2040666a
+d8400001
+da2046a8
+204066b3
+6800c6a8
+207a0000
+680146a2
+1fe0fe01
+da200ac2
+6808c6a8
+204066b3
+2040666d
+204047ba
+e8c10000
+207a0000
+1fe20a00
+e8c88000
+18427200
+20407f01
+202047e9
+6800c69a
+c4008000
+680146ae
+1fe22400
+d8400004
+da200ac2
+204065df
+68008ac2
+c080c7f9
+58000001
+60008ac2
+18007203
+2040630d
+680146ae
+1fe22400
+d8400004
+da200ac2
+20406606
+68018ac3
+6001c0a0
+6001c4a0
+20600000
+202046d9
+da200000
+da6048d4
+20407d24
+204046f4
+6800c8eb
+6000c8ec
+20600000
+58000000
+20404816
+70467901
+20407cd3
+20407cdd
+68014682
+c3860000
+2020340a
+6809423f
+e0408000
+e8a08000
+6000c685
+20600000
+6801423f
+efe08000
+c1800000
+2020340a
+6809423f
+e8408000
+c000c82a
+58000001
+6809423f
+e0408000
+18408c02
+e8c08000
+e0a08000
+e8c10000
+20207f9c
+58000002
+20404816
+18408c05
+e8c10000
+203a340a
+20207f9c
+60030101
+68008101
+6000810c
+e8c08000
+6000810b
+e8c08000
+6000810a
+e8c08000
+60008109
+e8c08000
+60008108
+e8c08000
+60008107
+68030107
+20600000
+204068a2
+6800c223
+6000c4a0
+6800c225
+e0a08000
+6800c227
+e0a08000
+6801c4a0
+6001c0a0
+20600000
+68014203
+9a40fe00
+1ff0fe00
+600101f7
+18422400
+2040489b
+580000a0
+2040488d
+680081f7
+2040488d
+c5144856
+680081f8
+2040488d
+204048a1
+2040489b
+580000a1
+2040488d
+2040487f
+e2208000
+1a20a201
+1a40a5ff
+2422c85a
+202048a1
+1a50fe00
+600101f7
+18422400
+2040489b
+580000a0
+2040488d
+680081f7
+2040488d
+c514486b
+680081f8
+2040488d
+ea208000
+2040488d
+1a20a201
+1a40a5ff
+2422c86b
+202048a1
+df20000a
+204048be
+204048a6
+204048d2
+204048c7
+203a48a9
+c2004875
+202048a9
+204048a9
+204048af
+204048d2
+204048a6
+204048d2
+202048a9
+df200008
+da600000
+204048be
+204048a6
+204048d2
+1a63a600
+204048c7
+9a60a600
+204048d2
+204048a9
+c2004882
+20404879
+1a627e00
+20600000
+df200008
+1fe22600
+204048a9
+2a6ffe07
+2040c8ac
+2440c8af
+1a63a600
+204048d2
+204048a6
+204048d2
+204048a9
+204048d2
+c2004890
+20204871
+204048ac
+204048a6
+204048d2
+204048af
+204048d2
+202048a9
+204048af
+204048a6
+204048d2
+204048ac
+202048d2
+78347c00
+6800cffe
+202048b2
+78547c00
+6800cffe
+202048b2
+78347c00
+6800cfff
+202048b2
+78547c00
+6800cfff
+202048b2
+1fe10e07
+1fe97e00
+d8408070
+98408400
+e8408000
+f9207e00
+e0408000
+18408404
+e8408000
+f9347e00
+e0408000
+20600000
+6800cfff
+1fe10e07
+1fe97e00
+d8408070
+98408400
+e8408000
+f93ffe00
+e0408000
+20600000
+20000004
+6800cfff
+1fe10e07
+1fe97e00
+d840811c
+98408400
+58000000
+e8488000
+a84fffff
+7920fe00
+20600000
+20600000
+44fb401e
+68108a26
+2feffe07
+2040c8ea
+2040492e
+68108a26
+60008b22
+68108a27
+60008b23
+60108a27
+1fe47e00
+68088d37
+98417e00
+60008d37
+708a26e0
+68008b23
+2fe00201
+2040c941
+68008b22
+2fe00201
+2040c94a
+20404b61
+20204903
+44fbc01e
+20404919
+708a0000
+20002710
+708a10c0
+68110050
+793ffe0a
+60110050
+708a003c
+708a26ff
+708a27ff
+708a0400
+700c6b02
+58000d9d
+d8a00c6e
+98a67200
+20207ed4
+68088c6c
+202067fb
+68008d45
+207a0000
+68088c6c
+2040681d
+2020c8ea
+20600000
+d8e00000
+20407f16
+247a0000
+68008d46
+247a0000
+68008d45
+245a4bb7
+20600000
+d8a00b68
+38011212
+38048000
+38080000
+380d0000
+e0a48000
+38022412
+38048604
+38081000
+380c0008
+e0a48000
+38000001
+e0a08000
+20600000
+700c6b02
+58000000
+60008b67
+60010c65
+1fe0fe01
+60010c67
+1fe0fe01
+60010c69
+58008ffa
+60010b7c
+5800903a
+60010b7e
+d8a00b80
+d8c090fe
+20407eb3
+68008c6d
+245a492b
+2020490b
+60008ba2
+60008bbb
+20600000
+68108a26
+c2834931
+20600000
+20404936
+20407f15
+58000280
+d8e00000
+20207f08
+68008d36
+c081493b
+700d4600
+700d4700
+20600000
+68008d53
+207a0000
+700d5300
+700d3602
+700d4501
+20600000
+708a2701
+20204b37
+68008b22
+c2824955
+20600000
+68108a18
+e0a08000
+c2004946
+20600000
+44fc401f
+708a2611
+68108a20
+60008b24
+1fe27200
+203a4943
+d8a00c6e
+20404946
+68008b24
+1fe67c07
+20610000
+68008c6e
+1fe17e80
+c040495a
+c0004962
+20202a8c
+68008c6e
+1ff1fe00
+1fe37e00
+1fe17e03
+c000496a
+c000c970
+c0014975
+20202a8c
+68008c6e
+1ff1fe00
+1fe37e00
+1fe17e03
+c0004976
+c000c97e
+c0014983
+20202a8c
+68008c6f
+c004498a
+c00349a0
+c00549ea
+c00049fc
+20204984
+68008c6f
+c0014a2f
+c000ca33
+c001ca45
+20204984
+20204984
+68008c6f
+c000ca4f
+c001ca79
+c002caa3
+c004cabc
+c005cad7
+c003c984
+20204984
+68008c6f
+c0054ae8
+c004caf9
+c005cb11
+20204984
+20204984
+68108a11
+79207e00
+60108a11
+20204988
+708a1240
+20600000
+68008c6e
+c0c04984
+68008c72
+c0804984
+68008c73
+c0804984
+68008c74
+c080c984
+68008c75
+c0804984
+68008c70
+c0804984
+68008c71
+c0804984
+68008c6b
+c002499c
+c001c99e
+20204984
+da400001
+20204a14
+da400001
+20204a12
+44fcc01f
+793f8023
+68008c71
+c000c9b6
+c00149cf
+c001c9d2
+c010c9a9
+c01149e0
+20204984
+700d4b00
+68008c72
+c00049ae
+c000c9b2
+20204984
+da200b93
+ea208000
+98002400
+20204b21
+da200bac
+ea208000
+98002400
+20204b21
+68008d48
+245a49c7
+58000b68
+68088b68
+60010d3f
+60088d41
+68008c74
+98467c00
+242149c5
+68008d41
+98002400
+68010d3f
+1fe0fe01
+98002200
+20204b21
+68008c74
+202049c0
+68108a04
+245a49cb
+700d4800
+20600000
+68108a04
+79207e07
+60108a04
+20600000
+58000b80
+68088b80
+202049ba
+68008c70
+1fe67c03
+24214984
+68008c70
+da200be4
+c0004b1e
+79200023
+da200be9
+c000cb1e
+da200c07
+c0014b1e
+da200c47
+c001cb1e
+20600000
+68010c72
+c000c9e5
+68010b7c
+1fe22200
+20204b1e
+700d4501
+700d3601
+68010b7e
+1fe22200
+20204b1e
+68008c6b
+c0824984
+68008c6e
+c0c0c984
+68008c70
+c0804984
+68008c71
+c0804984
+68008c74
+c080c984
+68008c75
+c0804984
+68008c72
+c0804984
+68008c73
+c0804984
+da400001
+20204a12
+68008c6b
+c0014984
+68008c70
+c0804984
+68008c71
+c0804984
+68008c74
+c0814984
+68008c75
+c0804984
+68008c73
+c0804984
+68008c6e
+c0404a0d
+c040ca18
+c0414a1c
+20204984
+68008c72
+c0804984
+da400002
+68008d39
+c000ca16
+da200c65
+20204b21
+da200c67
+20204b21
+da200c69
+20204b21
+68008c6b
+c0824984
+da400002
+20204a12
+68008c6b
+c0824984
+68008c72
+c040ca29
+c0414a2b
+c041ca2d
+1fe17e7f
+c0004a25
+20204984
+68008d3b
+da400002
+c000ca14
+20204a12
+68008d3c
+20204a26
+68008d3d
+20204a26
+68008d3e
+20204a26
+700d4c01
+da200d4d
+da400001
+20204b21
+68010c70
+d84001ba
+98467c00
+2422c984
+793f8023
+68008d42
+243a4a42
+700cf600
+68008c74
+98002400
+da200cf6
+20404b21
+d8a00cf6
+df200008
+20207ec6
+700d4200
+700cf601
+20204a3b
+68008c74
+c080c984
+700d4b01
+da400001
+68008d49
+c0004a4d
+c000ca4e
+20204a12
+20204a14
+20204a12
+68008c6b
+c0824984
+68008c74
+c0804984
+68008c75
+c0804984
+68008c71
+c0804984
+68008c73
+c0804984
+68008c6e
+c0004a5e
+c000ca66
+c0014a67
+20204984
+68008c70
+c080c984
+68108a00
+793ffe07
+60108a00
+700d3900
+700d3a01
+20204988
+20204984
+68008c70
+c0804984
+68008c72
+c040ca72
+c0414a75
+c041ca77
+1fe17e7f
+c0004a70
+20204984
+700d3b00
+20204988
+700d3c00
+700d5301
+20204988
+700d3d00
+20204a73
+700d3e00
+20204a73
+68008c74
+c0804984
+68008c75
+c0804984
+68008c6e
+c0004a82
+c000ca8f
+c0014a90
+20204984
+68008c70
+c080c984
+68108a00
+79207e07
+60108a00
+700d3901
+700d3603
+700d4300
+20404988
+20407f15
+58001388
+d8e0000f
+20207f08
+20204984
+68008c70
+c0804984
+68008c71
+c0804984
+68008c72
+c040ca9d
+c0414a9f
+c041caa1
+1fe17e7f
+c0004a9b
+20204984
+700d3b01
+20204988
+700d3c01
+20204988
+700d3d01
+20204988
+700d3e01
+20204988
+68008c6e
+c0804984
+68008c72
+c0804984
+68008c73
+c0804984
+68008c74
+c0804984
+68008c75
+c0804984
+68008c71
+c0804984
+68008c70
+1fe17e80
+c0804984
+68008c70
+c0804aba
+700c6b02
+68008c70
+60108a04
+20404988
+700d4801
+20600000
+700c6b03
+20204ab5
+68008c6b
+c0014984
+68008c6e
+c0804984
+68008c72
+c0804984
+68008c73
+c0804984
+68008c74
+c0804984
+68008c75
+c0804984
+68008c71
+c0804984
+68008c70
+1fe67c01
+24214984
+68008c6b
+c001cad1
+c0024ad1
+20204984
+68008c70
+c0004ad5
+700c6b04
+20204988
+700c6b03
+20204988
+68008c6b
+c0824984
+68008c6e
+c080c984
+68008c70
+c0804984
+68008c71
+c0804984
+68008c74
+c0804984
+68008c75
+c0804984
+68008c72
+c0804984
+68008c73
+c0804984
+20204988
+700d4c01
+68008c71
+60008d4d
+68008c72
+1fe67c01
+2042caf5
+68008d36
+c0824988
+700d3602
+20404988
+20007530
+20007530
+20600000
+700d4501
+700d3a00
+700d3604
+20600000
+700d5001
+20404b03
+68010c70
+60010d4e
+68008c74
+98007200
+d8c00c76
+d8a00cb6
+20407f01
+20204988
+68010c70
+d8400200
+98467c00
+24628000
+68010c72
+d8400000
+98467c00
+24628000
+68010c74
+d8400001
+98467c00
+24628000
+700d4301
+20600000
+68008c74
+c0804984
+68008c70
+c0004b17
+c000cb1a
+20204984
+700d4a00
+700d4901
+20204988
+700d4401
+700d4a01
+700d4900
+20204988
+ea208000
+98002400
+1a20a201
+44fd401f
+c591cb2c
+1a40fe01
+1fe3fe00
+60108a18
+708a1803
+68008c74
+1fe0fffe
+1fe37e00
+60008c74
+c0004b35
+68010c74
+9a467c00
+20214b30
+1fe22400
+1a227e00
+60010b65
+1a427e00
+60008b67
+20204b37
+d8e00000
+20204b57
+44fdc01f
+68008b67
+207a0000
+1fe27200
+1fe67c40
+20214b3e
+df200040
+68008b67
+9f267e00
+60008b67
+68010b65
+1fe20c00
+e8c08000
+60108a18
+c591cb47
+708a1800
+c2004b43
+18c27e00
+60010b65
+d8e00000
+20404b57
+68008b67
+247a0000
+68008d36
+c1808000
+700d3602
+20600000
+da208a19
+d8e00001
+e8c08000
+e2208000
+c2004b54
+58000000
+f9207e00
+60108a10
+68088d37
+9841fe00
+60008d37
+20600000
+d8e00002
+da208a1a
+20204b54
+44fe401f
+68008d38
+207a0000
+68008d37
+243a4bac
+68008d45
+203a4b86
+68008d36
+c001cbbf
+c0814b86
+68008d3a
+243a4b86
+20404b6f
+20204b7a
+68008d38
+c4008000
+68008d37
+c3808000
+68008d38
+793ffe01
+60008d38
+68008d51
+207a0000
+c0084ba8
+20202a8c
+68008d38
+c4010000
+68008d37
+c3810000
+68008d38
+793ffe02
+60008d38
+68008d52
+207a0000
+c0104b89
+c010cba4
+20202a8c
+d8a00d54
+df200006
+20207ec6
+68008d4c
+68088d4b
+98417e00
+203a4ba0
+68088d4a
+9840fe00
+c000cb91
+20204ba0
+700d5200
+68008d55
+c0014ba1
+c001cba1
+68008d55
+60008d54
+68008d56
+e0a08000
+68008d58
+e0a08000
+68008d5a
+e0a08000
+df200004
+d8c00d54
+20204b5e
+700d5200
+df200008
+d8c00d54
+20204b5e
+700d5200
+df200003
+d8c00d74
+20204b5e
+700d5100
+df200008
+d8c00d64
+20204b52
+68008d36
+c001cbb0
+c0014bb2
+20600000
+700d3700
+20600000
+68108a00
+79207e07
+60108a00
+700d4701
+20600000
+68008d36
+c1018000
+c0014bbb
+20600000
+68008d47
+207a0000
+700d4601
+20204bc2
+d8e0000f
+20407f16
+247a0000
+68108a00
+c4038000
+708a00fc
+20007530
+708a003c
+20600000
+44fec01f
+6800c1ce
+247a0000
+20404bce
+24544be6
+20600000
+44ff401f
+18622200
+d8400004
+e8608000
+c000cbd8
+18408401
+c0014bd8
+18627e00
+60110058
+20600000
+68110112
+98467c00
+24214bd8
+78547c00
+1a220600
+20404bee
+98408400
+68110112
+98467c00
+24214bdf
+1a220600
+e8608000
+c000cc3f
+20202a8c
+44ffc01f
+68110058
+98000600
+20404bee
+98608600
+18627e00
+60110058
+20600000
+e8608000
+18608602
+c0014bf3
+e8608000
+20600000
+e8610000
+20600000
+6811005e
+194095fb
+99409400
+20600000
+d8400004
+20204bfc
+d8400002
+47004020
+1f20f201
+6811005e
+1fe21400
+1f227e00
+e1488000
+1fe0ffff
+99409400
+19427e00
+60010258
+18427e00
+c1010000
+68010258
+6011005e
+20204c0b
+58000000
+60010258
+20600000
+20758000
+58004d28
+600141f3
+580001a0
+60014243
+58001800
+60110054
+58001bff
+60110056
+58001c00
+6011005a
+20404c28
+70806200
+58001c00
+6011005e
+60110060
+58001800
+60110058
+60010244
+68110050
+793ffe0f
+60110050
+204066ce
+70804301
+70806281
+20600000
+58001fff
+6011005c
+68108081
+1fe1fe07
+60108081
+20600000
+4700c020
+6810810c
+98002400
+c301cc37
+68110112
+98002600
+d840044f
+98467c00
+24628000
+68110058
+98000600
+20204bc8
+6818810c
+284ffe06
+2020cc3a
+60108015
+20600000
+47014020
+6800c1ce
+203a4c44
+78347c00
+20600000
+e8610000
+98006000
+98000e00
+e8608000
+98000400
+1e0b7e00
+1fecfe00
+c01fcc4d
+20600000
+4701c020
+18e27e00
+c0004cdc
+c000cc66
+c0014c6b
+c001cc7a
+c0024cb3
+c002ccdc
+c0034cc6
+c003cc5c
+c0084cc9
+c008ccd1
+c0094ca5
+c009cc85
+20204cdc
+20404cdc
+20407f9e
+2040688c
+204033d2
+204033d9
+2020688f
+70424500
+204033d0
+20404c13
+202033db
+20404cf2
+68110000
+e1410000
+18007206
+20204cdd
+e8610000
+60014243
+60110052
+20600000
+e8608000
+1fe20400
+60108024
+e8608000
+98408400
+79207e07
+60108023
+e8608000
+98408400
+1fe27200
+20600000
+c515ccc4
+20404c6f
+e8608000
+60108025
+98408400
+c2004c7c
+184104ff
+e8608000
+98467c00
+2422ccc4
+20204cdc
+c595ccc4
+20404c6f
+60040a9a
+20407422
+df200010
+d8a00ac2
+20404ca0
+600c0aa2
+d8a00ad2
+20407497
+da200ad2
+da400ac2
+d8a00ae2
+20407352
+df200010
+d8c00ae2
+20404c9c
+680c0aa2
+68040a9a
+1fe0fff0
+60040a9a
+243a4c88
+20204c80
+e8c08000
+60108025
+c2004c9c
+20600000
+e8608000
+e0a08000
+98408400
+c2004ca0
+20600000
+c595ccc4
+d8400000
+df200010
+d8a00ac2
+20404ca0
+68108085
+1fe17efd
+60108085
+d8c00ac2
+df200010
+20407478
+20407428
+20407491
+20204c80
+df200020
+d8a04000
+d8400000
+e8608000
+e0a08000
+98408400
+c2004cb6
+184104ff
+e8608000
+98467c00
+2422ccc4
+70802300
+20404cdc
+20404be6
+204064a3
+20407f9e
+20202001
+70802300
+20202000
+e8630000
+600340a0
+20204cdc
+e8608000
+6000825a
+1fe27200
+e8610000
+6001025b
+1fe20a00
+204066fd
+20204cdc
+e8608000
+6000825a
+1fe27200
+e8610000
+6001025b
+d8a01000
+204066fd
+6808825a
+da201000
+6801025b
+20206608
+18007204
+20404cf4
+18007e01
+e1408000
+1e027e00
+e1418000
+18000e0e
+47024020
+20404cf6
+18e27e00
+e1408000
+1f227e00
+e1408000
+18000e05
+1f20f202
+20204bf9
+18000eff
+20404cf4
+58000001
+e1408000
+18007201
+20204ce3
+1800140c
+20204cf7
+18001408
+20204cf7
+18001406
+20204bf5
+7827fc00
+7824fc00
+e9408000
+08008008
+c2004cfa
+78247c00
+08008010
+78447c00
+7844fc00
+7847fc00
+1ff0fe00
+20600000
+7041ce00
+20600000
+680341d0
+680b0040
+98467c00
+20600000
+6800804b
+c2814d0f
+204062ef
+70007c08
+20204d04
+793ffe02
+6000804b
+20406001
+58000000
+7934fe01
+6000807f
+20204d04
+20600000
+70007c17
+d8a004d9
+58000000
+2d0ffe1b
+7920fe01
+e0a08000
+58000000
+e0a10000
+680141e3
+e0a10000
+6800c1e5
+e0a10000
+6800c1e7
+e0a10000
+20204d04
+70007c18
+20204d04
+20406899
+20608000
+d8400007
+2040681d
+2420cd2f
+70424501
+20600000
+6800c245
+c1808000
+20404c62
+20204cec
+4702c020
+68010264
+1fe20c00
+e8c08000
+1fe1040f
+1ff1fe00
+c004cd53
+c003cd53
+c0054d5f
+c002cd4b
+c000cd3f
+20600000
+18427e00
+c002cd43
+c001cd4a
+20600000
+700a9927
+20407d86
+6800c092
+c4030000
+18427e00
+c002c38e
+20600000
+20600000
+20404d5f
+da200001
+20404d63
+6801424c
+e0a10000
+58000000
+e0a08000
+20600000
+da200001
+20404d63
+6801424c
+e0a10000
+58000000
+e0a08000
+700a8e01
+6800c252
+79207e06
+6000c252
+700a9912
+20207d86
+e8c08000
+c000cd62
+20600000
+20600000
+20405240
+1a220400
+60088a8e
+1fe20a00
+1a227e00
+e0a10000
+20600000
+2035cd6f
+58004365
+d8a04246
+98a67200
+20407ed4
+47034020
+58000551
+d8a00511
+98a67200
+20407ed4
+580002c9
+d8a0025d
+98a67200
+20407ed4
+20205318
+4703c020
+18c20400
+18420c00
+e8c10000
+60010266
+e8c10000
+60010268
+18c27e00
+60010264
+6800c681
+c0004d85
+202050ef
+68010266
+203a4dfc
+47044021
+68008268
+c000cd9d
+c0284de0
+c028cdf5
+c0294df3
+c029cdf3
+20204dfc
+4704c021
+2040527e
+6800c256
+c0004d9b
+c000cd9b
+c0014d9b
+c001cd9b
+c040cd9b
+c0604d9b
+c0404d9b
+c0204d9b
+20600000
+58000000
+20600000
+20404d8f
+247a0000
+204052b8
+20404e01
+6809026f
+203a4dfb
+204052c1
+6801026f
+e0a10000
+18007e01
+e0a10000
+20204dfc
+6800c364
+207a0000
+1fe22200
+47054021
+680202d5
+d8400100
+98408400
+1c427e00
+98467c00
+24610000
+70436400
+1a227e00
+c0284db7
+20202a8c
+d9000000
+204052b8
+20404e7a
+204052c3
+20407ea8
+20404ead
+204052c1
+5800000c
+e0a10000
+18007e01
+e0a10000
+20204dfc
+4705c021
+68010275
+1fe0fe04
+1ff1fe00
+1fe97e00
+1fe08401
+d8c04260
+e8c18000
+207a0000
+60018ac2
+68008ac2
+1fe22200
+20404dd3
+1a427e00
+6000c260
+20600000
+d8e00000
+da400000
+18e67c07
+24610000
+aa2fffff
+2020cdda
+20204dde
+18427e00
+203a4dde
+f9202400
+184085ff
+18e08e01
+20204dd5
+20405274
+247a0000
+20404d8f
+247a0000
+204052c5
+20406e11
+20404dc3
+20204dec
+20405274
+247a0000
+204052c5
+20406e11
+204052ce
+68010275
+203a4dfb
+e0a10000
+68014248
+e0a10000
+20204dfc
+20404d33
+20204dfc
+47064021
+70028400
+20406a8a
+68008284
+c1008000
+20204dfc
+20405264
+58000000
+60010266
+60010268
+70026a01
+20600000
+4706c021
+204052c3
+18002400
+68010266
+1fe22600
+68010264
+98000c00
+20404e10
+1a627e00
+1a60a7fc
+1fe0fffc
+243a4e08
+1a427e00
+6001026f
+20600000
+47074021
+e8c08000
+c000ce49
+c0014e51
+c001ced5
+c0024f05
+c002cfa2
+c0034fcb
+c003d01b
+c0045050
+c004d060
+c0054e1f
+c005d061
+20405062
+20600000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+5800000b
+e0a08000
+18e27e00
+e0a08000
+e8c10000
+c0014e2d
+c001ce33
+20600000
+58020008
+e0a30000
+58000280
+e0a20000
+18007e0c
+20204e38
+5803000c
+e0a30000
+58000006
+e0a40000
+18007e10
+9a40a400
+20204e1e
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+e8c10000
+60010aa2
+1a627e00
+9a262600
+204052c3
+5800000b
+e0a08000
+18e27e00
+e0a08000
+68010aa2
+20204e2a
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+98c08c00
+1a627e00
+9a262600
+20204e1e
+20407ea8
+20407ead
+d9000000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+e8c10000
+1fe20400
+e8c10000
+1fe21600
+4707c021
+18427e00
+c000ce64
+c001ce86
+c008ce92
+c009ce9d
+20405062
+20204ed4
+20407ea8
+d8400050
+68014248
+243a4ece
+19627e00
+60014248
+1c427e00
+600202d5
+20404e6e
+20204ea9
+600902d3
+19627e00
+600102c9
+1a227e00
+600102cb
+1a427e00
+600102cd
+1a627e00
+600102cf
+18e27e00
+600102d1
+20600000
+680902d3
+680102c9
+1fe21600
+680102cb
+1fe22200
+680102cd
+1fe22400
+680102cf
+1fe22600
+680102d1
+1fe20e00
+20600000
+20407ea8
+58000051
+d8400051
+6801424a
+243a4ece
+19627e00
+6001424a
+6800c251
+79207e00
+79207e01
+6000c251
+20204eb1
+20407ea8
+d8400052
+6801424c
+243a4ece
+19627e00
+6001424c
+6800c252
+79207e00
+79207e01
+6000c252
+20204eb1
+20407ea8
+1b427e00
+d8400053
+6801424e
+243a4ece
+19627e00
+6001424e
+6800c253
+79207e00
+79207e01
+6000c253
+20204eb1
+58000001
+6001027d
+70436450
+20204eb3
+6800c250
+79207e00
+79207e01
+6000c250
+58000000
+6001027d
+47084022
+20407ead
+58000003
+e0a08000
+18e27e00
+e0a08000
+58000008
+e0a10000
+18427e00
+e0a10000
+19627e00
+e0a10000
+6801027d
+c000cec9
+290c0000
+2020cec4
+58000004
+e0a10000
+18007e00
+e0a10000
+5800000c
+20204ed0
+e0a10000
+18007e02
+e0a10000
+5800000c
+20204ed0
+79201000
+20204eb1
+9a40a400
+1a627e00
+9a262600
+20204ed4
+20204e1e
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+1fe21600
+e8c10000
+1fe20400
+4708c022
+58000050
+98467c00
+2022ceed
+58000051
+98467c00
+2022cef3
+58000052
+98467c00
+2022ceff
+58000053
+98467c00
+2022cef9
+20600000
+19627e00
+60014248
+6800c250
+79207e01
+6000c250
+20204e1e
+19627e00
+6001424a
+6800c251
+79207e01
+6000c251
+20600000
+19627e00
+6001424c
+6800c253
+79207e01
+6000c253
+20600000
+19627e00
+6001424e
+6800c252
+79207e01
+6000c252
+20600000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+1fe20400
+18422200
+47094022
+58000050
+98467c00
+2022cf1c
+58000051
+98467c00
+2022cf3a
+58000052
+98467c00
+2022cf26
+58000053
+98467c00
+2022cf30
+20205062
+18a21600
+6800c250
+79207e04
+79207e03
+6000c250
+19620a00
+d9600050
+68014248
+1fe20400
+20204f43
+18a21600
+6800c252
+79207e04
+79207e03
+6000c252
+19620a00
+d9600052
+6801424c
+1fe20400
+20204f43
+18a21600
+6800c253
+79207e04
+79207e03
+6000c253
+19620a00
+d9600053
+6801424e
+1fe20400
+20204f43
+18a21600
+6800c251
+79207e04
+79207e03
+6000c251
+19620a00
+d9600051
+6801424a
+1fe20400
+4709c022
+58000005
+e0a08000
+18e27e00
+e0a08000
+58000006
+e0a10000
+18427e00
+e0a10000
+18007e00
+e0a10000
+18007e00
+e0a10000
+18007e0a
+9a40a400
+60090282
+18e27e00
+60008281
+18007e50
+a961fe00
+2020cf59
+1fe0fe01
+20600000
+78547c00
+c3810000
+c4000000
+c4008000
+79207e02
+18c20a00
+18a08bff
+e0a08000
+78347c00
+20600000
+6800c250
+20404f5a
+24344f6b
+70028050
+68014248
+60010282
+20204f7f
+6800c251
+20404f5a
+24344f72
+70028051
+6801424a
+60010282
+20204f7f
+6800c252
+20404f5a
+24344f79
+70028052
+6801424c
+60010282
+20204f7f
+6800c253
+20404f5a
+24740000
+70028053
+6801424e
+60010282
+470a4022
+2040523a
+204052b8
+18002400
+204052c3
+18007e04
+e0a08000
+6800c255
+e0a08000
+58000008
+e0a10000
+68010282
+e0a10000
+58000000
+e0a10000
+18007e01
+e0a08000
+18007e02
+e0a08000
+68008280
+c028cf97
+58000030
+e0a10000
+20204f99
+580003e3
+e0a10000
+d840000c
+6009026f
+204052c1
+6801026f
+e0a10000
+18007e01
+e0a10000
+70028000
+20204e1e
+18c08c01
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+1fe22200
+470ac022
+58000050
+9a267c00
+2022cfba
+58000051
+9a267c00
+2022cfbe
+58000052
+9a267c00
+2022cfc2
+58000053
+9a267c00
+2022cfc6
+18c08c02
+e8c10000
+98007c00
+20204e1e
+6800c250
+79207e05
+6000c250
+20204e1e
+6800c251
+79207e05
+6000c251
+20204e1e
+6800c252
+79207e05
+6000c252
+20204e1e
+6800c253
+79207e05
+6000c253
+700a9906
+20207d86
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+1fe22200
+e8c10000
+1fe21600
+1a220400
+20407ea8
+470b4022
+58000050
+98467c00
+2022cff2
+58000051
+98467c00
+2022d002
+58000052
+98467c00
+2022cfe6
+58000053
+98467c00
+2022cfec
+20405062
+20205017
+19620400
+6801424c
+98467c00
+2022cff8
+20405062
+20205017
+19620400
+6801424e
+98467c00
+2022cffa
+20405062
+20205017
+19620400
+68014248
+98467c00
+2022cffe
+20405062
+20205017
+20405079
+2020500a
+2040507f
+6801424c
+203a500a
+2020500a
+20405074
+68008288
+243a500a
+2020500a
+19620400
+6801424a
+98467c00
+2022d008
+20405062
+20205017
+2040506f
+2020500a
+20407ead
+58000007
+e0a08000
+18e27e00
+e0a08000
+58000004
+e0a10000
+1a227e00
+e0a10000
+19627e00
+e0a10000
+18007e08
+20205019
+20407ead
+20205019
+9a40a400
+20204e1e
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+1fe21600
+e8c10000
+1fe20400
+20407ea8
+470bc022
+58000050
+98467c00
+2022d035
+58000051
+98467c00
+2022d03b
+58000052
+98467c00
+2022d041
+58000053
+98467c00
+2022d047
+20405062
+2020504f
+18422200
+19620400
+68014248
+98467c00
+2042d074
+2020504d
+18422200
+19620400
+6801424a
+98467c00
+2042d06f
+2020504d
+18422200
+19620400
+6801424c
+98467c00
+2042d079
+2020504d
+18422200
+19620400
+6801424e
+98467c00
+2042d07f
+2020504d
+20407ead
+20204e1e
+20204e1e
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+98c08c00
+58000009
+e0a08000
+18e27e00
+e0a08000
+18007e00
+e0a10000
+18007e04
+9a40a400
+1a627e00
+9a262600
+20204e1e
+20204e1e
+20204e1e
+18002400
+204052c3
+58000001
+e0a08000
+18e27e00
+e0a08000
+58000002
+e0a10000
+58000000
+e0a10000
+1a40a406
+da600004
+20204e1e
+58000000
+6001027b
+6001424a
+70425100
+20600000
+58000000
+60010275
+60014248
+70425000
+20600000
+58000000
+6001424c
+70425200
+6800c253
+c0005085
+20600000
+58000000
+6001424e
+70425300
+6800c252
+c0005085
+20600000
+700a9907
+20207d86
+6800827f
+793ffe00
+6000827f
+6801424e
+207a0000
+204052b8
+6801424e
+1fe22200
+18002453
+2020509a
+6800827f
+793ffe07
+6000827f
+6801424c
+207a0000
+204052b8
+6801424c
+1fe22200
+18002452
+2040523a
+204052c3
+18007e06
+e0a08000
+6800c255
+e0a08000
+58000004
+e0a10000
+1a227e00
+e0a10000
+1a427e00
+e0a10000
+18000408
+202050de
+470c4023
+2040523a
+204052c3
+58000002
+e0a08000
+6800c255
+e0a08000
+58000004
+e0a10000
+18427e00
+e0a10000
+19627e00
+e0a10000
+d8400008
+202050de
+470cc023
+2040523a
+204052c3
+58000004
+e0a08000
+6800c255
+e0a08000
+58000008
+e0a10000
+18427e00
+e0a10000
+58000000
+e0a10000
+58000001
+e0a08000
+58000002
+e0a08000
+580003e3
+e0a10000
+d840000c
+202050de
+470d4023
+2040523a
+204052c3
+58000006
+e0a08000
+6800c255
+1fe0fe01
+18a22200
+6000c255
+1a220a00
+e0a08000
+58000004
+e0a10000
+18427e00
+e0a10000
+19627e00
+e0a10000
+d8400008
+6009026f
+18427e00
+203a5264
+204052c1
+6801026f
+e0a10000
+18007e01
+e0a10000
+20600000
+68010275
+203a2a8c
+204052ce
+68010275
+e0a10000
+68014248
+e0a10000
+20600000
+68010266
+203a4dfc
+470dc023
+68008268
+c000d0f9
+c0284de8
+c028cdf5
+c0294df3
+c029cdf3
+20204dfc
+470e4023
+204052b8
+18002400
+204052c3
+1fe20a00
+68010266
+1fe22600
+68010264
+98000c00
+20405108
+1a60a7fc
+2422d102
+1a420400
+204050de
+20204dfc
+e8c08000
+c0015113
+c000d116
+c001d120
+c002d15c
+c002518e
+c003d213
+c00351e1
+c0045050
+c0054e3a
+2020522e
+20407ea8
+20407ead
+20204e51
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c08000
+1a20a3ff
+2422d11c
+20600000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+e8c10000
+1fe21600
+e8c10000
+1fe20400
+e8c10000
+1fe67c00
+2022d132
+c001512e
+c002512e
+20205130
+700a9916
+20407d86
+e8c10000
+20205159
+20407ea8
+470ec023
+58000050
+98467c00
+2022d141
+58000051
+98467c00
+2022d147
+58000053
+98467c00
+2022d153
+58000052
+98467c00
+2022d14d
+20205159
+19627e00
+60014248
+6800c250
+79207e01
+6000c250
+20205158
+19627e00
+6001424a
+6800c251
+79207e01
+6000c251
+20205158
+19627e00
+6001424c
+6800c252
+79207e01
+6000c252
+20205158
+19627e00
+6001424e
+6800c253
+79207e01
+6000c253
+20407ead
+1a627e00
+9a262600
+20600000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+1fe21600
+e8c10000
+e8c10000
+243a5188
+20407ea8
+19620400
+470f4023
+58000050
+98467c00
+2022d176
+58000051
+98467c00
+2022d17a
+58000052
+98467c00
+2022d17e
+58000053
+98467c00
+2022d182
+6800c250
+79207e05
+6000c250
+20600000
+6800c251
+79207e05
+6000c251
+20600000
+6800c252
+79207e05
+6000c252
+20600000
+6800c253
+79207e05
+6000c253
+700a9906
+20207d86
+20407ead
+1a20a3fa
+2022d18d
+18c08c01
+1a20a3ff
+20205189
+20600000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+18c08c02
+1fe20400
+58000005
+e0a08000
+18e27e00
+e0a08000
+1a20a202
+1a227e00
+e0a10000
+20407ea8
+470fc023
+58000050
+98467c00
+2022d1ad
+58000051
+98467c00
+2022d1be
+58000052
+98467c00
+2022d1c4
+58000053
+98467c00
+2022d1ca
+202051cf
+6800c250
+79207e04
+79207e03
+6000c250
+c28151bb
+6808827f
+79200406
+6008827f
+18e27e00
+1fe0fe01
+60008281
+6800c250
+79207e02
+6000c250
+68014248
+60010282
+202051cf
+6800c251
+79207e04
+79207e03
+6000c251
+6801424a
+202051cf
+6800c252
+79207e04
+79207e03
+6000c252
+6801424c
+202051cf
+6800c253
+79207e04
+79207e03
+6000c253
+6801424e
+1fe21600
+20407ead
+19627e00
+e0a10000
+18007e00
+e0a10000
+18007e00
+e0a10000
+18007e0a
+9a40a400
+1a20a3fa
+2022d1e0
+e8c08000
+e0a08000
+1a40a401
+1a20a3ff
+202051da
+20600000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+1a627e00
+9a262600
+e8c10000
+1fe22200
+e8c10000
+1fe21600
+20407ea8
+47104024
+58000050
+1a220400
+98467c00
+2022d1fa
+58000052
+1a220400
+98467c00
+2022d1ff
+58000053
+1a220400
+98467c00
+2022d201
+20205203
+58000000
+60010275
+60014248
+6000c250
+20205205
+20405079
+20205205
+2040507f
+20205205
+58000000
+6001027b
+20407ead
+58000007
+e0a08000
+18e27e00
+e0a08000
+58000004
+e0a10000
+1a227e00
+e0a10000
+19627e00
+e0a10000
+18007e08
+9a40a400
+20600000
+e8c08000
+1fe20e00
+e8c10000
+1fe22200
+e8c10000
+1fe21600
+e8c10000
+1fe20400
+20407ea8
+4710c024
+6800c255
+a8e1fe00
+2420d22a
+58000050
+98467c00
+2022d227
+58000051
+98467c00
+2022d22a
+2020522a
+70424800
+70425000
+2020522a
+20407ead
+1a627e00
+9a262600
+20600000
+58000001
+e0a08000
+e8c08000
+e0a08000
+58000002
+e0a10000
+58000000
+e0a10000
+58000006
+9a40a400
+18002604
+20600000
+6800c255
+1fe0fe01
+c080523e
+1fe0fe01
+6000c255
+20600000
+47114024
+da400000
+2040526e
+243a2a8c
+2040527e
+da401800
+d8e00000
+6808c256
+a84fffff
+2020d24f
+204052a0
+19667c00
+2021524f
+20405288
+20205255
+1a40a480
+18e08e01
+58000008
+98e67c00
+20215247
+da400000
+1a427e00
+203a2a8c
+20600000
+4711c024
+20405277
+18c08c01
+e8c10000
+20600000
+47124024
+20405277
+18c20a00
+18c20400
+58000000
+e0a18000
+20600000
+4712c024
+20405274
+203a2a8c
+6801c25d
+6001c260
+6801c25a
+6001c25d
+6801c257
+6001c25a
+20600000
+47134024
+6801c257
+20600000
+4713c024
+6801c25a
+20600000
+47144025
+6801c260
+20600000
+20405274
+203a2a8c
+d8c04257
+e8c18000
+203a527a
+18c08dfd
+20600000
+4714c025
+df200004
+d8c04257
+d8400000
+e8c18000
+1fe17eff
+98418400
+c2005282
+6008c256
+20600000
+47154025
+2040526e
+243a2a8c
+20405274
+203a5295
+6801c25a
+6001c257
+e8c18000
+e0a18000
+e8c18000
+e0a18000
+58000000
+e0a18000
+d8400000
+19627e00
+98e0fe00
+f9200400
+18e08e01
+98e67c00
+2422d298
+1a4d7e00
+9841fe00
+6001c260
+20600000
+4715c025
+2040527e
+18e22600
+d8400000
+d9600000
+18e27e00
+c00452b0
+6800c256
+afefffff
+2020d2b0
+18408480
+18e08e01
+1a227e00
+98467c00
+2022d2b0
+202152a5
+18427e00
+9a267c00
+242152b6
+18e27e00
+1a620400
+98461600
+1a620e00
+20600000
+47164025
+da20007f
+20405240
+6001026b
+1fe0fe04
+6001026d
+58000000
+6001026f
+20600000
+6801026b
+202052e2
+6801026d
+202052e2
+4716c025
+da2000fa
+20405240
+60010271
+1fe0fe04
+60010273
+58000000
+60010275
+20600000
+68010271
+202052e2
+68010273
+202052e2
+47174025
+20407e7c
+70028401
+2040526e
+247a0000
+da20007f
+20405240
+60010277
+1fe0fe04
+60010279
+58000000
+6001027b
+70028400
+20207e8c
+68010277
+202052e2
+203a2a8c
+1fe20a00
+20600000
+4717c025
+da400000
+da204257
+1a20a3fe
+1a20a202
+58004263
+9a267c00
+2022d2f5
+ea208000
+1a20a201
+203a52e9
+ea290000
+e8410000
+9a40a400
+1a40a404
+202052e9
+1a427e00
+20600000
+d8e0000c
+20202c32
+d8e0000c
+20202c36
+47184026
+2040527e
+6800c256
+207a0000
+204052e5
+d8400100
+98467c00
+202152f7
+204052f9
+d8a04263
+da204257
+58004263
+9a267c00
+20628000
+ea208000
+1a20a201
+243a530f
+e0a10000
+1a20a202
+20205306
+ea210000
+1a20a202
+1fe20c00
+e8c10000
+e0a10000
+1fe27200
+1f20f202
+20407f01
+20205306
+4718c026
+2040527e
+6800c256
+207a0000
+da204258
+1a20a3fd
+d8c04263
+1a20a203
+58004264
+9a267c00
+20628000
+e8c10000
+203a531f
+1fe0fe04
+1fe27200
+18c22400
+ea210000
+1fe20a00
+1a420c00
+18c08dfe
+20407f01
+2020531f
+47194026
+7855fc00
+70045501
+70043f03
+70045601
+5fffffff
+60010459
+18007e00
+60008457
+60008462
+6001c169
+6001c16c
+6002c403
+79207e27
+6002c408
+7043dc01
+7043dd00
+202056ed
+4719c026
+7834fc00
+70044003
+70047801
+70445a01
+5800ffff
+6001445c
+18007e00
+6002c408
+79207e27
+6002c403
+2020532e
+471a4026
+7854fc00
+58000017
+600144a8
+70044001
+70436e00
+7000a000
+7044c400
+7044c500
+6801046d
+600144ba
+68010441
+1feffe05
+1ff1fe00
+6001046d
+2020532e
+204053c4
+204055e8
+204056f0
+202053ce
+471ac026
+204053c4
+204032f4
+68008440
+c001d366
+2020537a
+471b4026
+7834fc00
+204056e4
+20215377
+20402c6c
+20405413
+2040561e
+7856fc00
+204054bf
+24768000
+471bc026
+68008005
+1fe0fe01
+60008005
+204055aa
+7854fc00
+20600000
+204053a9
+7854fc00
+20600000
+471c4027
+70450f00
+20407aaf
+20405c18
+78577c00
+204056e4
+202153a9
+20402c6c
+20405413
+20405489
+242c539b
+204053b7
+2036d388
+20205395
+471cc027
+6800c50f
+1fe0fe01
+6000c50f
+c0065395
+204055aa
+2040561e
+204054c7
+2040567e
+680141fb
+20407f9c
+204053a0
+203453a4
+471d4027
+20405be4
+20405bdb
+20407d9c
+68008462
+c281d3a9
+471dc027
+204057f4
+2040559d
+20405575
+20202841
+78547c00
+c5157fe7
+c514ffe7
+20600000
+471e4027
+78377c00
+204054c1
+2036d388
+20205395
+471ec027
+204053af
+204033b4
+20407a77
+700a9915
+20207d86
+58000000
+6004c4ff
+70045500
+70044000
+70043f00
+7044c500
+7044c400
+20600000
+471f4027
+68008005
+1fe0fe01
+60008005
+6800843f
+c3818000
+79207e03
+6000843f
+680144ba
+6001046d
+58000000
+600244e5
+20600000
+471fc027
+70890f36
+70890b5f
+783b7c00
+70891407
+20402c6c
+6800c1e0
+207a0000
+70890ab8
+20600000
+47204028
+70890f2e
+70890bff
+785b7c00
+70891403
+db600000
+20600000
+7844fc00
+7843fc00
+68018467
+98001e00
+68008016
+1fed8400
+79200401
+18431c00
+20600000
+204053e6
+2040291f
+58000500
+20402a8f
+20202924
+2036a939
+204053e6
+20202933
+4720c028
+20402918
+6800848c
+243a53f9
+68008016
+1fe67c24
+202153f3
+18000400
+c1128000
+18000418
+c1130000
+1800044e
+20600000
+1fe67c0a
+202153f6
+1fe0fe01
+1fe3fe00
+1fe08402
+20600000
+68008016
+1fe38400
+20600000
+d84001f4
+207a0000
+d84000fa
+c1008000
+d8400096
+c1010000
+d8400064
+c1018000
+d840004b
+c1020000
+d8400032
+c1028000
+d8400028
+c1030000
+d8400014
+20600000
+588e89be
+1fed7e00
+1fe1fed6
+98001200
+58555555
+60018467
+20600000
+47214028
+78287c00
+68020463
+98001200
+20405466
+58000200
+2034d41c
+6801044d
+1fe37e00
+d8400500
+9840fe00
+20402a24
+1b427e00
+60030491
+20600000
+4721c028
+68008016
+c012d428
+c013542e
+c013d434
+20205434
+6808c48d
+284ffe01
+2020d43f
+284ffe02
+2020d444
+2020543a
+6808c48d
+284ffe02
+2020d444
+284ffe00
+2020d43a
+2020543f
+6808c48d
+284ffe00
+2020d43a
+284ffe01
+2020d43f
+20205444
+70001625
+68008ac2
+79207e00
+60008ac2
+20600000
+70001626
+68008ac2
+79207e01
+60008ac2
+20600000
+70001627
+68008ac2
+79207e02
+60008ac2
+20600000
+47224028
+1a208c01
+e8c08000
+c4000000
+1a208a1a
+e8a10000
+1fe0fe01
+e0a10000
+1a208c19
+e8c08000
+1a208a18
+e8a88000
+9840fe00
+1fe67c24
+20215459
+1fe0ffdb
+e0a08000
+20600000
+4722c028
+6802846f
+18000400
+18007225
+c3005461
+18408401
+1fe37e00
+c200545f
+1840ffff
+60008461
+20600000
+47234028
+68008457
+98000e00
+680a846f
+a84fffff
+2020d47c
+4723c028
+68008461
+98e67e00
+20215472
+1fe60fff
+2020546c
+18e27200
+18000e00
+a84fffff
+2020d477
+1f20f201
+1f227e00
+203a547c
+18e08e01
+1f20f3ff
+20205474
+18e27e00
+60008016
+20600000
+2034d482
+37c18200
+20600000
+d9600ea0
+34730200
+20600000
+78487c00
+6801436c
+1fe21600
+2020548e
+47244029
+78287c00
+6801044d
+680a44e5
+98409600
+204053de
+4724c029
+204053d5
+7856fc00
+7826fc00
+7830fc00
+78507c00
+19623600
+37c18400
+2037549a
+1b420400
+600b009a
+242c264d
+203754a1
+dd2001e0
+1c225000
+6800843f
+c301d4a1
+2055ab05
+47254029
+204029bb
+7823fc00
+7824fc00
+09800008
+19897e00
+600082d9
+09800008
+19897e00
+e0a08000
+1fe1723f
+2022d4b1
+09800008
+19897e00
+e0a08000
+c20054ad
+4725c029
+09800018
+78287c00
+db600664
+1fef7e00
+1ff17e00
+e0a18000
+2023264d
+7836fc00
+68008017
+1fe0a200
+20402981
+7846fc00
+20202918
+47264029
+204054c9
+68088017
+2040291f
+20402924
+78287c00
+d960157c
+2020548f
+204054c9
+2020264d
+4726c029
+204053d5
+204053e3
+202054cd
+79202a00
+782efc00
+78307c00
+7850fc00
+2040547f
+19317e00
+1fecfe00
+1ff1fe00
+08008628
+7823fc00
+7824fc00
+47274029
+6800c3dc
+08008608
+e8c08000
+1fe1723f
+08008608
+2022d4e2
+e8c08000
+08008608
+c20054df
+78247c00
+08008618
+78447c00
+37d38200
+20000064
+784efc00
+20600000
+4727c029
+6800c484
+c000d4f9
+6800c485
+1ff27e00
+1febfe00
+6000c3dc
+6808c36f
+1840fe06
+6000c3dd
+680344a0
+600343de
+18427200
+d8c04370
+20407ef4
+20205504
+6800c486
+1ff27e00
+1febfe00
+1fe0fe01
+6000c3dc
+5800000c
+6000c3dd
+680344a0
+600343de
+680341d0
+e0a30000
+4728402a
+68008000
+1fe0fe01
+60008000
+db600708
+7856fc00
+202054bf
+4728c02a
+6800c49e
+c1808000
+68008000
+1fe0fe01
+60008000
+d8400c03
+6800c49f
+7d3a0406
+1a227e00
+7d3a0407
+600943dc
+680344a0
+e0a30000
+6803044f
+e0a30000
+202054bf
+4729402a
+d8400004
+6800c485
+7d3a0406
+6008c3dc
+6808c38f
+1840fe06
+6000c3dd
+680344a0
+600343de
+d8c04390
+18427200
+20407ef4
+204054c7
+20205706
+4729c02a
+18007fff
+38080001
+6002846f
+2040545b
+18007204
+d8a00463
+2040630d
+6801449c
+6001046d
+180a7e00
+1fe17e0f
+1fe67c04
+20215535
+60008458
+600086e6
+472a402a
+68094367
+60090441
+18422600
+1c40fe07
+9a66fc00
+20407f86
+18072200
+9a267e00
+9a60fe00
+68094365
+9840fe00
+60020443
+9c462200
+1a20a3fa
+da402205
+6800c495
+7d3a2406
+6800c48e
+7d3a2407
+1a427e00
+600143dc
+680344a0
+e0a30000
+6803044f
+e0a30000
+68020463
+e0a20000
+180a7e00
+e0a10000
+180a7e00
+e0a08000
+18007e02
+e0a08000
+1a2b7e00
+e0a10000
+1a6b7e00
+e0a10000
+472ac02a
+58000000
+e0a10000
+6801449c
+e0a10000
+6802846f
+e0a28000
+68008458
+d84000a0
+9841fe00
+e0a08000
+204054c7
+580043dc
+1fe08c12
+e8c18000
+60018467
+20600000
+472b402a
+7854fc00
+2020540c
+6800843f
+c4028000
+68010459
+6809045f
+98467e00
+24610000
+60010a9a
+472bc02a
+6800843f
+793ffe05
+793ffe03
+6000843f
+68020443
+68090441
+60090aa2
+98462200
+472c402b
+6800c3d3
+6000846a
+e8c90000
+e8c10000
+1febfe00
+60010441
+184b8400
+9840fe00
+e8ca0000
+600a046b
+9a20fe00
+1fe22800
+68010441
+68090aa2
+98467e00
+68090a9a
+984ffe00
+9a80fe00
+60020443
+20405713
+6801046d
+600144ba
+20600000
+472cc02b
+6800843f
+c4030000
+68010459
+6809045f
+98467e00
+24610000
+6800843f
+793ffe06
+6000843f
+6802c3ce
+6002846f
+2020545b
+472d402b
+204056ed
+204055c0
+680082d9
+2feffe04
+7920802a
+1fe37e00
+9842fe00
+2feffe02
+7920800f
+c6078000
+680082da
+203a55bc
+6800843f
+c30255bc
+2040748d
+204073fb
+247a0000
+68088456
+79400402
+60088456
+20600000
+472dc02b
+68088456
+284c0005
+20608000
+680082d9
+1fe3fe00
+9842fe00
+c4018000
+793f8405
+79400403
+60088456
+28400603
+24608000
+6800c3de
+c002d5d2
+6800c4c5
+c00155d6
+20600000
+6800843f
+79207e04
+6000843f
+20600000
+472e402b
+7044c500
+dfe00000
+6002440d
+6002c403
+79207e27
+6002c408
+6800843f
+793ffe04
+6000843f
+20600000
+472ec02b
+20405422
+20405485
+68008001
+1fe0fe01
+60008001
+20600000
+472f402b
+6800c369
+c1808000
+d8e00002
+20407f16
+247a0000
+6801436a
+6809436c
+98467e00
+d8e00002
+20407f08
+7854fc00
+20405572
+204055e1
+24768000
+472fc02b
+680302db
+6003044f
+68008002
+1fe0fe01
+60008002
+20405608
+20748000
+2040550b
+24768000
+4730402c
+68008004
+1fe0fe01
+60008004
+680482e1
+60048101
+20600000
+4730c02c
+6800849b
+c18d8000
+6803044f
+680b448f
+98467c00
+24628000
+2040223b
+24628000
+2040552b
+20405340
+4731402c
+7041ce00
+70047600
+70436900
+70049b00
+20202223
+da200001
+680082d9
+c3830000
+da200000
+20600000
+4731c02c
+68008456
+c3828000
+20405642
+20405873
+203a5664
+e8c08000
+e8c88000
+18422200
+9a267e00
+d840001b
+20407fdd
+1fe20400
+e8c08000
+1fe20200
+1a227e00
+98c08c00
+d8a043de
+18427200
+20407f01
+20405654
+20405666
+20405873
+e8c08000
+1fe22200
+18c22600
+e8c88000
+18422400
+9a467e00
+d840001b
+20407fdd
+9a40fe00
+e2608000
+9a267c00
+24628000
+20205896
+20405649
+c6148000
+6800c4e9
+c3015652
+20405876
+203a5652
+20205650
+20405873
+203a5652
+e8c08000
+e8c88000
+98467e00
+1fe67c1b
+20215652
+79200029
+20600000
+793f8029
+20600000
+1a227e00
+207a0000
+d8200001
+20600000
+4732402c
+18408401
+2040576a
+18c08dfe
+e8c10000
+d8402902
+98467c00
+24628000
+18c08c01
+18c22200
+e8c08000
+20600000
+18000400
+18000201
+4732c02c
+6008c3dd
+68088456
+79200405
+18417efc
+9821fe00
+60008456
+1fe17e1f
+280ffe29
+7920fe04
+6000c3dc
+6800c3dc
+28200601
+2420d676
+6800c3dd
+207a0000
+6800843f
+c4020000
+2040748d
+202073e3
+d8e00000
+20202c32
+d8e00000
+20202c36
+4733402c
+c6078000
+20405890
+247a0000
+680082d9
+1fe17e03
+6000c50c
+e8c08000
+1fe17e1f
+6000c50b
+207a0000
+18c27e00
+6001450d
+6800c50c
+c001dc64
+2040569a
+2434567a
+2040567c
+6801450d
+1fe20c00
+e8c10000
+600144fc
+4733c02c
+e8c10000
+c00258ab
+c0035af4
+c002dab6
+20600000
+6800c50c
+c00156a9
+c000d6c1
+20600000
+20407fe7
+d8400004
+9fe67c00
+20628000
+d8400005
+9fe67c00
+20628000
+d8400006
+9fe67c00
+20628000
+20207fe9
+6801450d
+1fe20c00
+e8c10000
+600144fc
+e8c10000
+2040569e
+24740000
+6808c50b
+6008c4fe
+680144fc
+1fe0fe04
+98467c00
+2022ffe7
+6800c50b
+1fe27200
+d8a00311
+6801450d
+1fe20c00
+20407f01
+20207fe9
+20407fe7
+6800c4fe
+247a0000
+20207fe9
+204056bd
+24740000
+6800c4fe
+d8a00311
+98a0a200
+6808c50b
+9840fe00
+6000c4fe
+6800c50b
+1fe27200
+1a220a00
+6801450d
+1fe20c00
+20407ef4
+58000311
+6001450d
+680144fc
+1fe0fe04
+6808c4fe
+98467c00
+2022ffe7
+20207fe9
+20407ea5
+d8a0445e
+680144fc
+1fe0fffb
+e0a08000
+1fe27200
+20407e9f
+20207ef4
+20407ea5
+d8a04471
+202056d9
+680141f9
+20207f9c
+680a045b
+20402a7b
+98461600
+19627e00
+6809046d
+18520400
+18438400
+98467e00
+20600000
+20402a7b
+6002045b
+20600000
+70001624
+700ac200
+4734402d
+6800c36e
+207a0000
+d8e00000
+20407f16
+247a0000
+4734c02d
+7854fc00
+78287c00
+20405572
+20405422
+204054e9
+2436d706
+68008003
+1fe0fe01
+60008003
+680082d9
+1fe17e0f
+c001d51c
+c002d728
+4735402d
+180a7e00
+d84001ff
+98417e00
+1fe0fefa
+20403cbe
+68008ac2
+6808c48d
+98467c00
+2422d6f2
+d8e00000
+68014482
+20207f08
+4735c02d
+68008476
+204053fc
+68010441
+984ffe00
+d8400177
+984ffe00
+d84186a0
+9846fc00
+6800846a
+d8404e20
+984ffe00
+9840fe00
+600244e5
+4736402d
+680140c1
+20407f86
+18078400
+9840fe00
+6001044d
+20600000
+4736c02d
+680302e1
+680b44a0
+98467c00
+24628000
+20405619
+1a227e00
+6000c48e
+680382ee
+60038101
+e8c40000
+e0a40000
+680302db
+6003044f
+18c08c06
+e8c40000
+60040463
+e8c90000
+4737402d
+184b8400
+e8c10000
+1febfe00
+60010441
+60020443
+98467e00
+1fe0d1fe
+e8c48000
+6004846b
+4737c02d
+e8c08000
+1ff18400
+18430400
+60088476
+1fe17e1f
+60008458
+20405713
+2040545b
+2040534c
+2040223b
+24628000
+4738402e
+20402841
+20405ad3
+700a9914
+20407d86
+20202223
+4738c02e
+6801445a
+98002400
+6801445c
+98002600
+680144bc
+98000c00
+78347c00
+20600000
+e8c10000
+207a0000
+9a467c00
+24610000
+9a667c00
+20628000
+20215768
+18007c01
+20600000
+18007e00
+20600000
+2040576d
+2022d779
+20600000
+4739402e
+680144bc
+98000c00
+e8c10000
+207a0000
+98467c00
+20628000
+e8c08000
+98c08c00
+e8c08000
+98c08c00
+20205770
+e8c08000
+98c08c00
+20600000
+4739c02e
+680144bc
+98000c00
+e8c10000
+207a0000
+e8c08000
+98c08c00
+18c08dfe
+e8c10000
+98467c00
+20628000
+e8c08000
+98c08c00
+2020577f
+6801049c
+2020578e
+473a402e
+680144bc
+98000c00
+18422200
+e8c10000
+203a5799
+9a267c00
+2022d79a
+e8c08000
+98c08c00
+e8c08000
+98c08c00
+20205790
+20207fef
+e8c08000
+600084a2
+1fe27200
+d8a004a3
+20407ef4
+e8c08000
+600084b3
+20407ea5
+20207ff1
+473ac02e
+204057a6
+202057b8
+d8402a00
+2040577c
+207a0000
+e8c08000
+18c20a00
+6808c3af
+18427200
+98467c00
+242157b5
+98460400
+d8c043b0
+20407f01
+18427200
+2442d7f0
+20600000
+1fe27200
+d8c043b0
+20207ef4
+da60438f
+da204370
+204057c5
+58000000
+79347e00
+60008a9a
+da6043af
+da204390
+204057c5
+20740000
+68008a9a
+203a2a8c
+20600000
+473b402e
+20407fe7
+20407eda
+da400000
+d8a00ac3
+204057df
+6800c3af
+1fe08401
+9a40a200
+1a20a202
+1a267c1f
+242157dd
+e0a88000
+d8400009
+e0a88000
+98007200
+20407ef4
+1a222400
+1a427e00
+60008ac2
+d8c00ac2
+5fffffe0
+9a608a00
+20207ebd
+20407fe9
+202057d7
+ea208000
+207a0000
+1fe0fe01
+e8c88000
+18467c09
+2022d7ee
+9a40a400
+1a220c00
+98007200
+20407ef4
+18c22200
+1a227e00
+9a667c00
+20610000
+202057df
+9a20a200
+202057ea
+58000020
+e0a08000
+c20057f0
+20600000
+473bc02e
+7855fc00
+203757f8
+2436d806
+20402bcb
+680140c1
+6001044d
+2436abde
+c507abde
+6800c50b
+243a2bde
+6800c3dd
+243a2bde
+6800c4e9
+c282abde
+6800843f
+c282abde
+20202bc0
+680940c1
+18430400
+6801044d
+9840fe00
+6001044d
+20202bd6
+d8e00000
+20205824
+d8e00000
+20205828
+d8e00001
+20205824
+d8e00001
+20205828
+d8e00002
+20205824
+d8e00002
+20205828
+d8e00003
+20205824
+d8e00003
+20205828
+d8e00004
+20205824
+d8e00004
+20205828
+d8e00005
+20205824
+d8e00005
+20205828
+6800c4e9
+f9207e00
+6000c4e9
+20600000
+6800c4e9
+f93ffe00
+6000c4e9
+20600000
+58112233
+6001c4ea
+58445566
+e0a18000
+58778899
+e0a18000
+58001122
+e0a18000
+58334455
+e0a18000
+58000066
+e0a08000
+20600000
+59000302
+60024453
+58010010
+6001c457
+7044c601
+20600000
+da200000
+d8200001
+20205850
+d8200003
+20405850
+1a427e00
+e0a08000
+20600000
+18000202
+1a20a204
+20405850
+1a20a3fc
+1a227e00
+e0a10000
+1a427e00
+e0a10000
+20600000
+1a267cf0
+24212a8c
+6800c4ff
+d8400001
+df200004
+98417c00
+2022d85a
+18438400
+c2005855
+20202a8c
+9842fe00
+6000c4ff
+1f267e04
+1ff27e00
+1ff27e00
+d8401800
+98408400
+df200000
+d8c04500
+e8c10000
+203a5869
+1f227e00
+1f20f201
+c0825863
+20202a8c
+18c08dfe
+e0c90000
+18420a00
+1a227e00
+e0a08000
+58000000
+e0a08000
+18227e00
+e0a08000
+20600000
+68014500
+1fe20c00
+20600000
+68014502
+1fe20c00
+20600000
+2040587c
+1fe20c00
+20600000
+68014506
+247a0000
+68014504
+247a0000
+68014502
+247a0000
+68014500
+20600000
+20405873
+18c08c03
+20600000
+20405873
+18c08c07
+20600000
+20405879
+18c08c07
+20600000
+20405879
+18c08c03
+20600000
+68014506
+20600000
+68014504
+20600000
+68014500
+20600000
+68014500
+d8401800
+98467e00
+1ff1fe00
+1ff18e00
+6800c4ff
+f93ffe00
+6000c4ff
+df200000
+1f23fe00
+d8404502
+98408400
+e8410000
+184085fe
+e0410000
+1f227e00
+1f20f201
+c081d89f
+58000000
+e0410000
+20600000
+e8c18000
+60018477
+c00158c1
+c001d8c9
+c00258cc
+c00358f2
+c004593f
+c00559bc
+c00659e4
+c00859fa
+c0095a2f
+c00b5a48
+c00c5a5b
+c0295a60
+20600000
+18002203
+20405a82
+58000002
+e0a08000
+680144a6
+e0a10000
+20600000
+204058c9
+18002203
+20405a82
+58000003
+e0a08000
+680144a6
+e0a10000
+20600000
+1fecfe00
+600144a8
+20600000
+20405ab1
+20407fe7
+202058cf
+d9600003
+20405756
+2040575f
+203a58f0
+242158ed
+18c08dfe
+20407ea5
+20407e9c
+243458e1
+20407e85
+20407fe9
+18002214
+20405a82
+20407e95
+58000005
+e0a08000
+58000001
+e0a08000
+20407e9f
+e8c10000
+e0a10000
+e8c08000
+1fe27200
+20407f01
+20407ea2
+196097ff
+2022d8f0
+e8c08000
+98c08c00
+202058d1
+e8c08000
+98c08c00
+202058ea
+20345a76
+20205aa5
+20405ab1
+e8c10000
+60014472
+20407ea5
+d8a0445e
+680144fc
+1fe0fff9
+204056db
+20205905
+78547c00
+6809445a
+6801445c
+98467c00
+24215902
+18427e00
+c1800000
+78347c00
+70047a01
+20205a77
+204058fb
+20740000
+68094472
+58002800
+98467c00
+2022d90c
+20205a76
+7004b400
+6809445a
+60090aa2
+2040578c
+243a5a76
+68090aa2
+2040578c
+243a5925
+18c22200
+680084b3
+1fe27200
+6808c45e
+98467c00
+2422d921
+da40445f
+20407f88
+2022d928
+680104a3
+68094472
+98467c00
+2022d930
+68010aa2
+1fe0fe01
+60010aa2
+20205911
+680084b4
+c000d930
+20205a76
+680104a3
+68094472
+98467c00
+2422d921
+7004b401
+68090aa2
+6009049e
+20205921
+680084b4
+c0005921
+7004b402
+68090aa2
+184085ff
+600904a0
+da200005
+20405a82
+58000007
+e0a08000
+6801049e
+e0a10000
+680104a0
+e0a10000
+20600000
+20405ab1
+204056df
+20205942
+6809445a
+60090aa2
+20405756
+2040576d
+18c08dfe
+18c27e00
+6001049c
+68094472
+58002a00
+98467c00
+2022d9a8
+58002803
+98467c00
+2422d990
+d9600002
+20405a88
+2421596d
+68090aa2
+2040578a
+c000d96d
+20405a94
+2422d96b
+2434596f
+78547c00
+da200014
+20405a82
+58000009
+e0a08000
+18a26000
+18a08a01
+2040597d
+20405a84
+2040578a
+20405984
+680084a2
+1fe0fe05
+e6008000
+680084a2
+c008596d
+196097ff
+2022d96d
+20405a84
+20205951
+20345a76
+20205aa5
+20405a97
+20405a84
+2040578a
+680084a2
+c008596d
+20407e9c
+68010aa2
+1fe0ffff
+e0a10000
+20405aa1
+20405984
+196097ff
+2022d96d
+2020596b
+68010aa2
+e0a10000
+680084b3
+1fe27200
+20407e9f
+20407ef4
+20207ea2
+20407e9c
+68010aa2
+e0a10000
+20407ea2
+680084a2
+1fe27200
+20407e9c
+20407e9f
+9f260c00
+18c08dff
+20407ef4
+20207ea2
+6809445a
+60090aa2
+20405a88
+24215a76
+2040578a
+c000da76
+20405a94
+2422d9a6
+da200014
+20405a82
+58000009
+e0a08000
+680084b3
+1fe27200
+1fe0fe02
+e0a08000
+68010aa2
+e0a10000
+20407e9f
+20407ef4
+20407ea2
+20205aa5
+20405a84
+20205992
+d8402a00
+2040577c
+207a0000
+18c08dfb
+e8c10000
+60010aa2
+da200014
+20405a82
+58000009
+e0a08000
+6800c3af
+1fe27200
+1fe0fe02
+e0a08000
+68010aa2
+e0a10000
+d8c043b0
+20407ef4
+20407ea2
+20205aa5
+68090478
+6800c4e9
+c281d9dd
+2040576a
+203a5a76
+18c08dfe
+e8c10000
+d8402a00
+98467c00
+2022d9d3
+e8c08000
+1fe67c16
+202159ca
+18007e16
+1fe22600
+20407ea5
+1a60a201
+20405a82
+5800000b
+e0a08000
+1a627200
+20407e9f
+20207f01
+20407ea5
+6800c3af
+1fe0a201
+20405a82
+5800000b
+e0a08000
+6800c3af
+1fe27200
+d8c043b0
+20207f01
+680144fa
+98467c00
+2422d9bf
+20405a42
+243459bf
+70047a05
+20205a77
+e8c10000
+6001445e
+da200014
+20405a82
+5800000d
+e0a08000
+6801445e
+98002200
+68090478
+2040576a
+203a5a76
+e8c08000
+9a267200
+24215a76
+1f267c16
+202159f5
+18007216
+1a227e00
+98c08c00
+20407ef4
+20407ea2
+20205aa5
+20405ab1
+204056d7
+202059fd
+d9600002
+6809445a
+60090aa2
+20405756
+2040576d
+18c08dfe
+18c27e00
+6001049c
+20405a88
+24215a25
+68090aa2
+2040578a
+c000da28
+20405a8c
+2422da23
+19627e00
+c0005a28
+24345a19
+78547c00
+da200014
+20405a82
+58000011
+e0a08000
+680084b3
+1fe0fe04
+e0a08000
+20407ea2
+20205a1f
+680084b3
+c0085a28
+68010aa2
+1fe0ffff
+600104a0
+20405a9c
+68010aa2
+6001049e
+20405a97
+196097ff
+20405a84
+20205a05
+68010aa2
+600104a0
+20205a2c
+68010aa2
+1fe0ffff
+600104a0
+20205a2c
+20345a76
+20405a9c
+20205aa5
+18c22200
+680144fc
+1fe0a5fd
+204056e2
+6800c4e9
+c3025a3d
+68090478
+680144fa
+98467c00
+2422da3d
+20405a42
+24345a3d
+70047a05
+20205a77
+18002201
+20405a82
+58000013
+e0a08000
+20600000
+20407fe9
+6800c4c6
+c1000000
+6800c040
+c3820000
+20207fe7
+18c0a202
+680144fc
+1fe0a5fb
+204056e2
+20205a4d
+680144fc
+1fe22200
+20405a82
+58000017
+e0a08000
+68010478
+e0a10000
+680144fc
+1fe0f3fb
+6801450d
+1fe08c07
+e8c10000
+e0a10000
+20207ef4
+18002201
+20405a82
+58000019
+e0a08000
+20600000
+18c22200
+680144fc
+1fe0a5fd
+202056e2
+18422600
+1a20a203
+20405a82
+1a20a3fd
+5800001b
+e0a08000
+1a620400
+e0a90000
+20600000
+18422600
+1a20a203
+20405a82
+1a20a3fd
+5800001d
+e0a08000
+1a620400
+e0a90000
+20600000
+70047a0a
+18002205
+20405a82
+58000001
+e0a08000
+68008477
+e0a08000
+68010478
+e0a10000
+6800847a
+e0a08000
+20600000
+18002404
+20205847
+68090aa2
+18408401
+60090aa2
+20600000
+68090aa2
+6801445c
+98467c00
+20600000
+6808c45e
+da20445f
+680084a2
+1fe27200
+98467c00
+24628000
+da4004a3
+20207f88
+6808c471
+da204472
+20205a8e
+680084b3
+60008101
+1fe27200
+20407e9f
+20207ef4
+20407e9c
+6801049e
+e0a10000
+680104a0
+e0a10000
+68008101
+1fe27200
+20407ef4
+20207ea2
+20407e9c
+2040588a
+18a27e00
+98c62200
+2040588d
+1a227e00
+e0c10000
+1a20a204
+20405879
+1a227e00
+e0c08000
+20600000
+1fecfe00
+6001445a
+e8c10000
+6001445c
+20600000
+e8c08000
+e8c88000
+e8c90000
+c009dabb
+20600000
+e8c10000
+60014509
+700a9940
+20207d86
+da20000c
+da600012
+20405ac7
+58000008
+e0a10000
+68044496
+e0a40000
+20600000
+20405acf
+da400005
+20405847
+1a627e00
+e0a08000
+6800c508
+e0a08000
+20600000
+6800c508
+1fe0fe01
+6000c508
+c1800000
+70450801
+20600000
+6800c4c6
+c0005ae4
+c000dae7
+c0015ae9
+c040dadd
+c0415adf
+c041dae2
+20600000
+7044560d
+20205ae5
+7044560d
+70445401
+20600000
+7044560d
+20205aea
+70445600
+70445403
+20600000
+70445605
+20205ae5
+70445605
+70445400
+20600000
+6800c456
+79207e03
+6000c456
+20600000
+6800c456
+793ffe03
+6000c456
+20600000
+e8c08000
+c000db09
+c001db30
+c0025b4d
+c002db5a
+c0035b80
+c003dbc4
+c0045baf
+c004dbc0
+c0055bc4
+c005dbc4
+c0065bc5
+c006dbca
+20600000
+18002202
+20405c62
+5800000b
+e0a08000
+6800c456
+e0a08000
+20600000
+6000c44c
+e8c30000
+e0a30000
+6800c4c6
+c0005b5f
+20405b2b
+20405b26
+7044c403
+6800c44d
+c0005b18
+c000db18
+c001db18
+6800c4c6
+c0015b1b
+c1418000
+dfe00000
+600244c7
+20600000
+6800c4e9
+c2805b24
+da2044c7
+1a220a00
+df200003
+2040630d
+680144c9
+1fe17e07
+600144c9
+700a9934
+20207d86
+6800c44f
+c3818000
+6800c4c6
+c4038000
+20203402
+18002207
+20405c62
+6803c453
+e0a38000
+20600000
+18c22200
+6800c4c6
+c041db37
+1a220c00
+d8a0442a
+20407ebf
+20205b3d
+1a220c00
+d8a0442a
+20407ebf
+7044bf02
+7044c108
+20600000
+6800c4c6
+c283db45
+2040739c
+18002211
+20405c62
+58000003
+e0a08000
+20207497
+d8a0443a
+2040630c
+204071c5
+18002211
+20405c62
+58000003
+e0a08000
+20207201
+18c22200
+6800c4c6
+c283db61
+1a220c00
+20407394
+2022db75
+70047b04
+18002202
+20405c62
+58000005
+e0a08000
+6800847b
+e0a08000
+18000e0a
+20407f07
+7044c400
+700a9930
+20207d86
+70047b05
+20205b54
+d8a0042f
+1a220c00
+20407ebf
+6800c4c6
+c041db6c
+2040714f
+20405b7a
+6800c4c6
+c1c10000
+700a993b
+20207d86
+204071ba
+d8a00af2
+20407201
+da200af2
+da40442a
+df200010
+20407f88
+2422db53
+20205b7a
+20407390
+700a9931
+20407d86
+70442901
+7044c405
+18002211
+20405c62
+58000004
+e0a08000
+d8c0443a
+20207ebf
+d8a0041f
+20207ebf
+18002211
+20405c62
+58000006
+e0a08000
+6800c4e9
+c280db8a
+d8c04419
+20207ebf
+d8c044ea
+20207ebf
+d8a044cb
+1800720a
+2040630d
+1800220b
+20405c62
+58000007
+e0a08000
+680144cb
+e0a10000
+680444cd
+e0a40000
+20600000
+18002211
+20405c62
+58000008
+e0a08000
+58000000
+e0a40000
+e0a40000
+20600000
+18002208
+20405c62
+58000009
+e0a08000
+6800c495
+e0a08000
+680344a0
+e0a30000
+20600000
+70047b08
+20205b54
+6800c458
+6808c458
+98417e00
+20600000
+d8a044d5
+20407ebf
+20405bab
+2fec0001
+2020dba9
+6800c092
+c1850000
+20405bb9
+24740000
+20203410
+20407fe9
+6800c48e
+c1000000
+68008454
+2fe180c0
+20608000
+20207fe7
+20405bab
+2fec0001
+2020dba9
+20600000
+20600000
+d8a009be
+20407eb3
+7044bf02
+7044c101
+20600000
+d8a00a6e
+20407ebf
+7044c106
+7044bf02
+20600000
+18002241
+20405c62
+5800000c
+e0a08000
+d8c045d2
+20207eb3
+20407166
+18002211
+20405c62
+5800000d
+e0a08000
+20207201
+6800c4c4
+c17f8000
+d8400003
+98467c00
+24610000
+d8e0000a
+20407f16
+247a0000
+20205ba9
+473c402f
+6800c4c4
+c0005bef
+c000dbf5
+c0015bef
+c001dbf7
+c002dbfb
+c003dc07
+c0045c09
+c004dc10
+20600000
+6800c4c5
+c1820000
+7044c5ff
+7044c4ff
+700a993f
+20207d86
+7044c402
+20205b02
+7044c404
+58017700
+d8e0000a
+20207f08
+6800c4c5
+c0025bfe
+20600000
+7044c407
+700a9929
+20407d86
+20405b82
+6800c092
+c1850000
+20405bb9
+20740000
+20203410
+7044c408
+20205b8c
+6800c452
+6808c459
+98417e00
+2fec0001
+2020dc12
+7044c409
+20205b98
+20405ba0
+20205c12
+18000e0a
+20407f07
+7044c5ff
+7044c4ff
+700a993e
+20207d86
+473cc02f
+6800c4c6
+c4038000
+6800c4bf
+c1810000
+7044bf00
+6800c4c1
+c000dc58
+c0015c5f
+c001dc52
+c0035c39
+c003dc30
+c0045c26
+20600000
+6800c663
+1fe20e00
+1fe0fe01
+6000c663
+680244c7
+afefffff
+58000080
+7920fe00
+6000c664
+20205c55
+6800c4c2
+7044c200
+c000dc35
+7044bf02
+20600000
+700a9931
+20407d86
+7044c405
+20205bd5
+680089b9
+c001dc3d
+7044bf02
+20600000
+2040718d
+6800c4c6
+c041dc41
+20405b18
+2040717a
+da200af2
+da400a6e
+df200010
+20407f88
+2022dc49
+70047b0b
+20205b54
+20407595
+2422dc47
+70442901
+6800c4c6
+c040dc35
+c041dc35
+7044bf02
+7044c107
+20600000
+6800c4c6
+c041dc56
+70466400
+20205b3d
+70466300
+20205b1b
+7044bf02
+6800c4c3
+c001dc5c
+20600000
+7044c102
+7009b900
+20207a99
+7044bf02
+7044c103
+20205bcf
+18002406
+20205847
+680082db
+c0005c7b
+c000dc83
+c0015c8e
+c001dcaa
+c0025ce1
+c002dce6
+c0035cea
+c003dcf5
+c0045c99
+c004dcf5
+c0055cef
+c005dcf5
+c0065c9f
+c006dcf5
+c0095ca6
+c009dcf5
+da200002
+da400007
+20405842
+680082db
+e0a08000
+20600000
+e8c48000
+6004c3d3
+e8c10000
+6001045f
+6800843f
+79207e05
+6000843f
+20600000
+e8c28000
+6002c3ce
+e8c10000
+6001045f
+68090459
+98467c00
+24215c8e
+6800843f
+79207e06
+6000843f
+20600000
+58000014
+6001046d
+600144ba
+20600000
+da600013
+da200002
+da400002
+20405842
+1a627e00
+e0a08000
+20600000
+da200009
+da400009
+20405842
+58000001
+e0a40000
+20600000
+20748000
+da200006
+da40000c
+20405842
+6802c510
+e0a28000
+20600000
+da400013
+20205ca8
+da200001
+20205842
+e8c40000
+600444cd
+e8c10000
+600144cb
+e8c40000
+600444aa
+e8c20000
+60024411
+20405ccf
+473d402f
+6800c4c4
+c002dcbc
+6800c4e9
+c280dcbf
+6800c217
+245a67be
+6800c429
+c0005cc4
+7044c501
+20405cdd
+202073a2
+70442901
+d8c044ea
+d8a04419
+20407ebf
+20205cbc
+473dc02f
+7044c500
+7044c400
+700a9941
+20207d86
+da200002
+da40000d
+20405842
+58000006
+e0a08000
+20600000
+d8a044b2
+18007208
+2040630d
+d8a04415
+18007204
+2040630d
+da20000d
+da400004
+20405842
+680444b2
+e0a40000
+68024415
+e0a20000
+20600000
+da400005
+20205ca8
+da400006
+20205ca8
+e8c40000
+600444b2
+e8c20000
+60024415
+202073a2
+6800843f
+79207e04
+6000843f
+20600000
+20748000
+700a9932
+20407d86
+7044c504
+20205cdf
+7044c502
+20405cf3
+700a9933
+20207d86
+da40000b
+20205ca8
+20600000
+20758000
+473e402f
+58000000
+60008048
+60008055
+60008078
+6000807c
+6000c158
+600084d7
+6000816d
+600089b5
+70455b00
+70022900
+7004d800
+7009b500
+7009b400
+7004d100
+20600000
+473ec02f
+2054e2ff
+2454e303
+204062bc
+247a0000
+6800804c
+c4030000
+793ffe06
+793f8001
+6000804c
+68008551
+6808804c
+2feffe00
+79208401
+6008804c
+18410402
+6008807f
+6808804c
+1fe37e00
+6000807d
+473f402f
+6800807d
+c03fdd66
+c001ddb1
+c0025dc2
+c01e5d59
+c002dd55
+c007dfa8
+c0085e24
+c011de42
+c01cdfc1
+c01c5fbc
+c018de27
+c01bdeb0
+c013deac
+c019dea9
+c012deae
+c0135e3e
+c003de36
+c016de2d
+c0175e2e
+c000dea5
+c0015e90
+c0145fb3
+c004de86
+c005de5f
+c0045e43
+c0065e6a
+c00fde3a
+c0105e3c
+c010deca
+c0115eca
+c01adecb
+c01b5ecc
+c0125eca
+c01a5ecd
+c00bded6
+c008def2
+c0095ef6
+c009def8
+c006df0a
+c0075f0a
+c017deaa
+c0185f0a
+c0055f0a
+c00c5f0b
+c0195f0a
+c01edf10
+c01f5f51
+c01fdf4b
+c0205f78
+c020df8a
+c0035fa7
+c01d5d57
+70007e19
+70007c04
+20600000
+70007c06
+20600000
+70007c3b
+20600000
+68020552
+1fe3fe00
+600240d2
+68008556
+6000c0d9
+68028557
+6002c0e7
+6802855c
+e0a28000
+68008031
+79207e03
+60008031
+20600000
+473fc02f
+68008552
+79207e07
+6000807d
+c040dd88
+c0415d8d
+c04adeb1
+c04b5eca
+c045debf
+c041dda5
+c0425da7
+c0485d7a
+c04bdd9e
+c04c5da3
+c04cdd7d
+c04d5d80
+c1420000
+70007c82
+70007e19
+20600000
+70007c82
+70007e2e
+20600000
+20405d82
+70007c9a
+20600000
+20405d82
+20205d86
+d8a0465e
+68018553
+e0a18000
+20600000
+2020f6d8
+20600000
+68008554
+79207e07
+600084c9
+c045dd92
+20600000
+68008554
+79207e07
+600084c9
+c045dd96
+20600000
+6800c15a
+6808804c
+7d3a0405
+6008804c
+68008030
+c4028000
+793ffe05
+60008030
+680084d7
+247a0000
+70007c31
+20600000
+2434dda1
+70007c12
+202062eb
+70007c97
+20600000
+204062eb
+20205ffe
+70007c84
+20600000
+68088555
+18410401
+600884d0
+6800c1ce
+c0a8ddad
+7041ce00
+68008055
+c18a8000
+70005504
+2020631b
+47404030
+68008552
+600084c9
+c019ddd8
+c0045de7
+c007ddee
+c0085df4
+c008ddf5
+c0095dfd
+c00c5e13
+c00bde16
+c009ddcf
+c01edf1e
+c01f5f6a
+c0205f20
+c020df3d
+20600000
+4740c030
+68008552
+600084c9
+c000de0a
+c019dde2
+c005ddfe
+c0045e01
+c009ddd2
+c0205e0b
+c020de0e
+c00c5e11
+c00bde22
+20600000
+700a9920
+20407d86
+202021dc
+700a9919
+20407d86
+70455b02
+58000050
+d8e00006
+20207f08
+680084d1
+79207e00
+600084d1
+700a9901
+20407d86
+70007c8b
+68008055
+c082dd07
+70005506
+20600000
+7004ca0b
+70007c07
+70005500
+2020dd07
+20600000
+6800c1bd
+247a0000
+2040244f
+20405ffc
+20748000
+79200021
+20600000
+24748000
+70007c10
+6800804c
+c4010000
+70007c12
+20600000
+20205ffe
+20406059
+68008030
+c3820000
+70007c31
+68008055
+c1850000
+7000550b
+20600000
+20600000
+70007c07
+7004ca13
+20600000
+68008553
+c0035e07
+c18c0000
+7004ca18
+70007c07
+20600000
+7004ca06
+70007c07
+20600000
+20600000
+7009ae00
+70007c07
+20205d07
+7009ae00
+70007c07
+20205d07
+700a9924
+20207d86
+700a9923
+20407d86
+202026e9
+700a9922
+20407d86
+58000000
+60010075
+680141e3
+1fe3fe00
+60010032
+6800c1e5
+60008073
+6800c1e7
+60008074
+202026c6
+700a9921
+20207d86
+68088552
+60088054
+20205e38
+680084d1
+79207e02
+600084d1
+c3818000
+70007c31
+20205d07
+20600000
+6800c0d0
+68088552
+98467c00
+20215e38
+70007c04
+70007e1f
+70007d2e
+20600000
+20406157
+20205e38
+70007c03
+20600000
+70007c21
+20600000
+70007c22
+20600000
+68008055
+c1098000
+70005502
+20600000
+20600000
+20405ff9
+7004d401
+700a990a
+20407d86
+204062f3
+2420e001
+2434de4e
+70007c04
+70007d08
+70007e23
+20600000
+6800804b
+79207e02
+6000804b
+20600000
+6808804c
+7d3a0401
+6008804c
+20600000
+6800807f
+1fe37e00
+1fe17e01
+20600000
+6800c217
+207a0000
+680089b5
+205a67b2
+20600000
+20405e5a
+20405e56
+600084d5
+20405ff9
+70007c0c
+6800c1bd
+247a0000
+68008030
+c3830000
+70007e06
+20205d53
+da200040
+20407288
+68020552
+680a0592
+98467c00
+2022de73
+70007c07
+7004ca05
+20600000
+20405e77
+6800c65a
+203a5f3e
+20600000
+20407386
+204021b2
+6800804b
+2feffe01
+793ffe01
+6000804b
+68008055
+c00cde81
+c00c5e81
+20600000
+680089b5
+c1800000
+6800804c
+c3810000
+202063b1
+da200552
+da400582
+d8a00562
+20407352
+da200040
+20406311
+70007c0b
+68008030
+c3035ffc
+20600000
+6801015f
+1fe0f3fd
+68088552
+58000101
+98408a00
+d8c00554
+20407f01
+68088053
+68008553
+98467e00
+1fe67c0e
+20215ea0
+1840fe0e
+60008053
+70007c01
+20600000
+6800804c
+79207e03
+6000804c
+c2826006
+20600000
+68008552
+6000807d
+70007c02
+20600000
+20205e38
+70007c30
+20600000
+70007c28
+20600000
+70007c26
+20600000
+20600000
+68010032
+98000400
+68008553
+60008095
+984f8400
+68010554
+1fe3fe00
+60010096
+68020556
+1fe3fe00
+60020091
+18427e00
+60010098
+20600000
+6808c15a
+68008553
+9842fc00
+2422dd77
+2feffe00
+6800804c
+7920fe05
+6000804c
+70007c81
+70007d8b
+20600000
+20600000
+20205e38
+20205e38
+68010552
+60010171
+20600000
+68010555
+6808c172
+984ffe00
+d8400640
+98467c00
+20600000
+68010557
+203a5ef0
+20405ed0
+20215ef0
+6800c092
+1fe67c0a
+2042bcd5
+68008030
+c280def0
+68010553
+1fe3fe00
+60010075
+68010555
+1fe3fe00
+60010032
+68010557
+60008073
+98000400
+68010559
+60008074
+98467c00
+24215eed
+60008073
+70007c03
+70007d17
+20600000
+70007e24
+20205d53
+20405e38
+20405ff9
+2040728b
+202026b8
+20405e38
+202026c0
+68020552
+1fe3fe00
+2034df04
+6808c1bd
+243a5f01
+70007c04
+70007d13
+70007e24
+20600000
+70007c34
+70005500
+202021d9
+204021d9
+79200022
+6800816d
+793ffe02
+6000816d
+20205e38
+20600000
+70007c03
+70007d18
+700a992e
+20407d86
+202026e9
+68008552
+c080df1c
+68008553
+c080df1c
+68008554
+c0985f1c
+204062fc
+2020df19
+7009ae01
+70007c03
+70007d3d
+20205d07
+70007e24
+20205d53
+70007c3e
+20600000
+6800c662
+c000df27
+c0015f2b
+204062fc
+20608000
+7009ae08
+20600000
+20407962
+700a9935
+20407d86
+20205f23
+204062fc
+20608000
+6800c663
+c009df3b
+1fe0fe01
+6000c663
+7009b001
+7009ae04
+6800c663
+1fe20e00
+6803468a
+afefffff
+58000080
+7920fe00
+6000c664
+20600000
+7009ae08
+20600000
+20405f43
+6800c665
+207a0000
+70466500
+700a9938
+20207d86
+204062fc
+2440f965
+2040f975
+204062fc
+20608000
+7009ae0c
+7009b001
+20600000
+d8a00a6e
+d8c00552
+20407ebf
+6800c662
+c1010000
+202076d8
+680089af
+c003df55
+680089ae
+c080df68
+680089b7
+1fe60a20
+24215f68
+d8a009c6
+98a08a00
+68040552
+e0a40000
+6804055a
+e0a40000
+680089b7
+1fe0fe10
+600089b7
+c0985e38
+204062fc
+2020de38
+7009b801
+7009ae02
+7009b001
+20205e38
+70007e24
+20205d53
+680089b6
+c0185f6e
+70007c3e
+20205d07
+204062fc
+2020df77
+6800c662
+c0015f75
+7009b001
+7009ae04
+20205d07
+700a9936
+20207d86
+20205d07
+680089af
+c003df7c
+680089ae
+c0835f88
+d8a00a2e
+68040552
+e0a40000
+6804055a
+e0a40000
+204062fc
+2020df86
+7009ae07
+7009b001
+20205e38
+7009af04
+202076d8
+70007e24
+20205d53
+680089af
+c005df8e
+680089ae
+c0845f9d
+d8a00a5e
+d8c00552
+20407ebf
+204062fc
+2020df9a
+6800c662
+c000df9f
+70466100
+7009ae09
+7009b001
+70007d41
+20205d07
+7009af09
+7009b101
+20205d07
+70007e24
+20205d53
+6800c661
+c283dfa4
+79207e06
+6000c661
+20600000
+c2805f95
+70466100
+20205f9d
+20205d07
+6800816d
+793ffe01
+6000816d
+20405e38
+24748000
+68008552
+6808804b
+793a0404
+7d3a0405
+6008804b
+20600000
+680c0552
+68008055
+c1818000
+6800816d
+c3025fba
+70005514
+20600000
+70005504
+20600000
+6800817f
+6000815b
+70007c03
+70007d38
+20600000
+70007c03
+70007d39
+18007209
+d8c00552
+d8a00152
+e8c08000
+1fe2fe55
+e0a08000
+c2005fc6
+68008152
+68088151
+793f8407
+793f8404
+c07fdfda
+c0005ff3
+c002dfe7
+c003dfe6
+c0035fe7
+c0045fe6
+c000dfdf
+c0015fdf
+c001dfdf
+c004dfdf
+c0025fdf
+20600000
+68008151
+79207e03
+79207e02
+60008151
+20600000
+79200404
+70018005
+68010159
+98007200
+6001015f
+d8a00551
+20407f73
+79200407
+79200402
+18007e00
+6000800b
+600100fa
+600100fc
+600100f8
+600100f6
+68008153
+2fe1fe00
+79208406
+60088151
+20600000
+793f8011
+70015100
+6800817f
+793ffe06
+6000817f
+20600000
+d8c00552
+d8a00562
+20207ebf
+70007c09
+20600000
+24748000
+70007c11
+20600000
+da2040a0
+20407255
+70007c03
+70007d08
+20600000
+7000720a
+70007c07
+7004ca16
+20600000
+47414030
+78547c00
+204062c1
+68008048
+207a0000
+c283e03f
+c000e16f
+c00160e4
+c001e04a
+c0026060
+c013e1db
+c0146108
+c01860f4
+c012e1d6
+c0136103
+c018e1c3
+c01be16a
+c019e15c
+c0046259
+c004e24f
+c005e264
+c006626d
+c007e162
+c0086292
+c008e288
+c003e152
+c015617e
+c005617f
+c00fe1bc
+c00360f9
+c010e15f
+c016e1b2
+c01761b7
+c011615f
+c01a6180
+c009e195
+c00be1a4
+c009628f
+c017e1aa
+c00c61af
+c01ee1ff
+c01f620b
+c01fe21d
+c0206227
+c020e23c
+c011e24b
+c01de246
+c002e24c
+c014e24d
+c01c624e
+c01ce175
+20202a8c
+20600000
+c040e06d
+c0426099
+c0416076
+c041e10d
+c045e118
+c04be14e
+c04ce0d5
+c04d60a4
+c04ae0da
+c04b60db
+20202a8c
+18007e02
+20406298
+68008049
+e0a08000
+204062a7
+4741c030
+68008049
+c0046080
+c007e084
+c008608f
+c00be05f
+c019e092
+c020e098
+c008e059
+20600000
+68008055
+207a0000
+7000551b
+5800000c
+d8e00007
+20207f08
+202026c6
+18007e03
+20406298
+68008049
+c005e068
+e0a08000
+6800804a
+e0a08000
+202062a7
+e0a08000
+6800804a
+e0a08000
+d84004d5
+202062e2
+18000e04
+204062a0
+5800007f
+e0a08000
+68008049
+793ffe07
+e0a08000
+68008049
+202062a7
+18000e05
+204062a0
+5800007f
+e0a08000
+68008049
+793ffe07
+e0a08000
+6800804a
+e0a08000
+202062a7
+2040244f
+204062f3
+20608000
+20205ffc
+6800804b
+c282e08b
+c4020000
+70007c12
+793ffe04
+204062eb
+2020608d
+70007c10
+793ffe05
+6000804b
+20600000
+204062fc
+2020dffe
+20600000
+70007c8b
+680084d1
+79207e00
+600084d1
+700a9901
+20207d86
+20600000
+18000e0c
+204062a0
+58000001
+e0a08000
+680104ce
+e0a10000
+58000000
+e0a18000
+58000000
+e0a20000
+202062b0
+18000e05
+204062a0
+6801c65b
+e0a18000
+204062b0
+70466501
+6800c65b
+c000e0b5
+c00160af
+c001e0bb
+20600000
+6800c65e
+c00060c7
+c000e0c7
+c00160c7
+c001e0c1
+20600000
+6800c65e
+c00060c1
+c000e0c5
+c00160c7
+c001e0c1
+20600000
+6800c65e
+c00060c1
+c000e0c1
+c00160c1
+c001e0c1
+20600000
+70466203
+6800c55c
+c28033e9
+20600000
+70466201
+20600000
+70466202
+20600000
+d8e00000
+202060cd
+d8e00000
+202060d1
+6800c55c
+f9207e00
+6000c55c
+20600000
+6800c55c
+f93ffe00
+6000c55c
+20600000
+18000e05
+204062a0
+6801c65b
+e0a18000
+202062b2
+20600000
+18000e09
+204062a0
+68008095
+e0a08000
+68010096
+e0a10000
+68020091
+e0a20000
+202062b0
+18007e11
+20406298
+68008049
+1fe20400
+c00060ec
+c00760ec
+c00e60ec
+20600000
+e0a08000
+6800c515
+e0a08000
+df20000e
+58004516
+98408c00
+20407f01
+202062b0
+18007e03
+20406298
+58000114
+e0a10000
+202062b0
+18007e03
+20406298
+68020165
+9c467e00
+2034e0ff
+1fe67e00
+1feb7e00
+793ffe0f
+e0a10000
+202062b0
+18007e06
+20406298
+6802c510
+e0a28000
+202062b0
+18007e09
+20406298
+68044098
+e0a40000
+202062b0
+18000e0c
+204062a0
+58000001
+e0a08000
+680104ce
+e0a10000
+58000000
+e0a18000
+58000000
+e0a20000
+202062b2
+18000e03
+204062a0
+6800c15a
+e0a08000
+78547c00
+204062b2
+24740000
+24748000
+6800c0d8
+c4000000
+20406132
+2020613c
+47424030
+6800c09e
+79207e03
+6000c09e
+58000101
+600104ce
+20600000
+4742c030
+6800c09e
+793ffe03
+6000c09e
+58000000
+600104ce
+20600000
+7040d803
+58000000
+60024142
+d8a040da
+20406140
+d8a040e7
+20406140
+d8a04146
+20406140
+20206147
+d8a040e7
+20406140
+20406147
+2020614a
+58ffffff
+e0a18000
+e0a18000
+e0a18000
+5800007f
+e0a08000
+20600000
+58000000
+600140d6
+20600000
+6800c0d8
+79207e02
+6000c0d8
+20600000
+18000e02
+204062a0
+2434e2b0
+202062b2
+18007e02
+20406298
+680084ca
+e0a08000
+204062b2
+6800804b
+79207e03
+6000804b
+70007232
+20600000
+18007e01
+20406298
+202062b2
+18007e01
+20406298
+202062b0
+18007e02
+20406298
+6800804c
+2fec0002
+7920fe00
+1fe17e01
+e0a08000
+202062b2
+18007e03
+20406298
+68010051
+e0a10000
+202062b2
+700072fa
+18007e02
+20406298
+68008053
+e0a08000
+202062b2
+18007e0a
+20406298
+d8c00152
+18007209
+e8c08000
+1fe2fe55
+e0a08000
+c2006179
+202062b2
+202062b2
+202062b2
+20748000
+2040282d
+18007e09
+20406298
+68010171
+e0a10000
+6801c0a0
+e0a18000
+6800c0a3
+e0a08000
+680140a4
+e0a10000
+c581e191
+793f8003
+204062b2
+70007c13
+20600000
+204062b0
+70007c03
+70007d13
+20600000
+d8400200
+2034e199
+1d027e00
+2020619a
+1c427e00
+1c227e00
+9840fe00
+1fe17ffc
+60020034
+18007e05
+20406298
+68020034
+1fe37e00
+e0a20000
+202062b2
+18007e0a
+20406298
+d8c004d9
+e8c48000
+e0a48000
+202062b2
+18007e03
+20406298
+58000114
+e0a10000
+202062b2
+18007e01
+20406298
+202062b2
+18007e02
+20406298
+6800c0d0
+e0a08000
+202062b2
+18007e02
+20406298
+58000005
+e0a08000
+202062b2
+18007e02
+20406298
+58000000
+e0a08000
+202062b2
+70007c2e
+20600000
+6800c092
+1fe67c0a
+2042e1c1
+68008030
+79207e04
+60008030
+1c427e00
+600204e9
+680084d1
+c281e1d4
+79207e03
+600084d1
+700a9905
+20407d86
+18007e01
+20406298
+202062b2
+70004800
+20600000
+18007e06
+20406298
+6802c510
+e0a28000
+202062b2
+18007e09
+20406298
+68044098
+e0a40000
+202062b2
+7009b101
+6800c5b1
+c1808000
+7009af13
+20600000
+204062ef
+70007c99
+7009af03
+20600000
+204062ef
+70007c3d
+7009af07
+20600000
+da200a4e
+da400a6e
+df200010
+20407f88
+2022e1f7
+7009af00
+204076da
+70007e24
+70007d40
+20205d53
+7009af0a
+204076d8
+70007d40
+20205e38
+70007c40
+20600000
+70007c3d
+20600000
+7009b600
+18007e04
+20406298
+18007e01
+e0a08000
+18007e01
+e0a08000
+18007e30
+e0a08000
+204062fc
+2020e2b2
+202062b0
+18007e11
+20406298
+680089b6
+d8c0462a
+98c08c00
+e8c40000
+e0a40000
+e8c40000
+e0a40000
+680089b6
+1fe0fe10
+600089b6
+204062fc
+2020e2b2
+202062b0
+7009ae06
+70007c3f
+20600000
+18007e11
+20406298
+d8c00a4e
+e8c40000
+e0a40000
+e8c40000
+e0a40000
+202062b0
+70007c40
+20600000
+204062fc
+2040f612
+18007e11
+20406298
+d8c00a1e
+e8c40000
+e0a40000
+e8c40000
+e0a40000
+204062fc
+2420e2b0
+2020e2b2
+7009af0f
+204062ef
+70007c0b
+20406307
+2020f64e
+20207658
+204062eb
+70007c41
+20600000
+18007e11
+20406298
+d8c00a4e
+e8c40000
+e0a40000
+e8c40000
+e0a40000
+204062fc
+2420e2b0
+2020e2b2
+18007e03
+20406298
+5800fffe
+e0a10000
+202062b0
+202062b2
+202062b2
+202062b2
+202062b2
+2040630b
+da2040a0
+20406311
+18007e11
+20406298
+da200582
+da400562
+20407352
+2434e2a7
+202062ad
+2040630b
+da200040
+20407255
+18007e11
+20406298
+d8c00562
+20407ebf
+68008055
+c00ce2b2
+c00c62b2
+202062ad
+680089b5
+203a626a
+204062fc
+2040e2ef
+2440e2eb
+2020626b
+204062ef
+2040630b
+2020625c
+da2040a0
+20407288
+18007e05
+20406298
+68020592
+e0a20000
+d84004d5
+204062e2
+20407386
+204062fc
+2020e27c
+7004d801
+680089b5
+207a0000
+70007c0b
+6800c1bd
+207a0000
+204062fc
+2420e284
+680084d7
+207a0000
+70007c0f
+20600000
+c6908000
+793f8021
+70007c0f
+20600000
+2040630b
+2040728b
+18007e11
+20406298
+d8c00562
+20407ebf
+202062ad
+18007e01
+20406298
+202062ad
+18007e02
+20406298
+18007e10
+e0a08000
+60008054
+202062ad
+1fe9fe00
+1fe1fe07
+600084b6
+df200011
+d8a004b8
+20407ed4
+d8a004b8
+20600000
+1fe1227f
+7000487f
+18e27e00
+20406298
+1a227e00
+e0a08000
+20600000
+68008048
+1fe3fe00
+6808804c
+284ffe01
+7920fe00
+202062b7
+6808804c
+18410401
+202062b3
+18000400
+202062b3
+18000401
+68008048
+1fe3fe00
+7934fe00
+9842fe00
+600084b7
+70004800
+204062c7
+78347c00
+20600000
+6800807c
+207a0000
+204062c1
+6800807c
+20600000
+47434030
+68008048
+203a62c7
+68008078
+247a0000
+202062d1
+68008078
+203a62d7
+68018078
+60018048
+6808807b
+6800804c
+793ffe01
+9841fe00
+6000804c
+70007800
+6800807c
+207a0000
+6802007c
+60020078
+70007c00
+20600000
+6800807c
+207a0000
+6801807c
+60018048
+6808807f
+6800804c
+793ffe01
+9841fe00
+6000804c
+70007c00
+20600000
+4743c030
+6800804c
+1fe22600
+e8408000
+20405e52
+204062a7
+1a627e00
+6000804c
+20600000
+6808804c
+793f8400
+6008804c
+20600000
+6808804c
+79200400
+6008804c
+20600000
+7d34fe01
+6808804c
+9842fe00
+2feffe01
+20600000
+6800804c
+7934fe01
+6000804c
+20600000
+680089b4
+2fe0fe01
+20600000
+680089b4
+79207e07
+600089b4
+20600000
+680089b4
+793ffe07
+600089b4
+20600000
+680089b4
+2feffe07
+600089b4
+20600000
+d8a00562
+18007210
+180a7e00
+e0a08000
+c200630d
+20600000
+20407259
+da2041be
+da400592
+ea240000
+68088030
+7d3a0406
+60088030
+1a220a00
+20407352
+202021c4
+47444031
+204062bc
+247a0000
+68008055
+207a0000
+c002636f
+c002e374
+c0016366
+c001e37c
+c0076369
+c0036398
+c003e3b0
+c004e3b1
+c00563ba
+c005e3be
+c0066386
+c006e389
+c007e38f
+c0096359
+c009e37c
+c008635c
+c00a6356
+c00ae37c
+c00b6350
+c00c6355
+c00be349
+c00ce34f
+c00d633a
+c00de344
+70005500
+20600000
+680084d1
+c4010000
+c4018000
+70005500
+20406340
+20206cef
+6800816d
+c4008000
+7000550a
+20600000
+d8e00007
+20407f16
+247a0000
+7000551a
+20600000
+6800816d
+793ffe00
+6000816d
+70005519
+70007c0b
+20600000
+20600000
+680084d4
+c1810000
+204063c0
+70005518
+20600000
+20600000
+70005515
+70007c83
+20600000
+70005513
+70007c25
+20600000
+6800c55b
+c1000000
+c000e364
+d8e00006
+20407f16
+247a0000
+70455b00
+2020637d
+20748000
+20206398
+70005503
+70007c27
+20600000
+70007c13
+79200003
+70005505
+580001ff
+600104d2
+20600000
+70005505
+7004d2ff
+793f8022
+70007c33
+20205d04
+c6110000
+680104d2
+1fe67e01
+2022e37a
+600104d2
+20600000
+7000550e
+20600000
+20600000
+680084d1
+c4018000
+c4010000
+6800816d
+793ffe02
+6000816d
+70007c13
+70005510
+20600000
+7000550d
+70007c31
+20600000
+680084d1
+c4010000
+70005500
+20600000
+70005506
+20600000
+680084d2
+1fe0ffff
+203a6394
+600084d2
+20600000
+70007c07
+7004ca16
+70005500
+20600000
+6800816d
+c281637d
+c280639d
+7000551a
+20600000
+6800c1bd
+203a63a9
+680084d1
+c4018000
+c4010000
+680204e9
+d8400064
+98408400
+1c427e00
+98467c00
+24610000
+20206349
+70005516
+70468904
+58003030
+6001468a
+e0a10000
+7004d402
+20206350
+20600000
+6800816d
+c280e3b5
+7000551a
+20600000
+6800816d
+793ffe01
+6000816d
+70007c0f
+20600000
+680084d8
+207a0000
+70005500
+202063b5
+7000550c
+20600000
+6800804b
+c28163c5
+204062ef
+70007c08
+20204d04
+6800804b
+793ffe02
+6000804b
+20406001
+204062f8
+20204d04
+58000004
+6000c689
+58003030
+e0a10000
+e0a10000
+20600000
+47464031
+68108073
+d8400006
+9841fe00
+60108073
+68108077
+9841fe00
+60108077
+204063ee
+68108077
+793ffe01
+793ffe02
+60108077
+2000001e
+202063f2
+68108073
+d84000c0
+9841fe00
+60108073
+68108077
+9841fe00
+60108077
+204063ee
+68108077
+793ffe06
+793ffe07
+60108077
+2000001e
+202063f6
+68108081
+1fe17efc
+60108081
+20600000
+68108081
+1fe1fe01
+60108081
+20600000
+68108081
+1fe1fe03
+793ffe04
+60108081
+20600000
+1fe22400
+2040640f
+20000064
+1a427e00
+20406414
+1fe22400
+20406411
+20000064
+1a427e00
+20600000
+1fe22400
+2040640f
+20000064
+1a427e00
+20406413
+20406411
+20000064
+20600000
+6808c214
+2020680e
+6808c214
+20206829
+6808c214
+20206825
+202064ec
+202064f3
+24346419
+68108085
+1fe1fe02
+60108085
+18427c00
+2022e41c
+1a627a00
+2fcc0000
+202064b9
+18000404
+da2001fe
+68108085
+1fe17efd
+60108085
+20406419
+da2055aa
+680101fe
+e8c90000
+9a267c00
+20600000
+d8400002
+da200204
+20406419
+68010204
+600101f7
+20546430
+20600000
+d8400010
+da200206
+68108085
+1fe17efd
+60108085
+20406419
+d8c00206
+df200010
+20407478
+20407428
+20407491
+20207422
+7856fc00
+2040641e
+24628000
+7836fc00
+70802380
+70802200
+70802400
+da208025
+20406415
+70802300
+d8400006
+2040641f
+24628000
+e8c10000
+98002200
+20406419
+20206446
+20407f99
+58001000
+600101f7
+da6065e5
+df200002
+2040641e
+24628000
+680101f7
+1ff0fe00
+9840fe00
+1ff0fe00
+600101f7
+c2006452
+20206446
+20407f99
+78547c00
+2040666a
+58000000
+da2001f3
+d8400002
+204066b3
+680101f3
+c303e46e
+70805025
+580007f0
+da200206
+d8400010
+204066b3
+70800608
+7920002b
+d8c00206
+20407484
+78347c00
+7041da00
+204064b0
+680101f3
+1ff0fe00
+d84007ff
+98417e00
+2022e47b
+2040666f
+da6066b8
+20546430
+2040643c
+680081f2
+c300646f
+2040666d
+7041da00
+204064b0
+204065c2
+680081f3
+c283648e
+204064aa
+2436e486
+680081f2
+c300647d
+2020649b
+204065bf
+680081f3
+c283648e
+204064aa
+2436e48e
+680081f2
+c300647d
+2020649b
+7041da00
+204064b0
+680081f3
+c282e49b
+58000000
+600181f6
+20406502
+da606578
+20406429
+2040643c
+2436e49b
+680081f2
+c300648f
+c515e49d
+204064a3
+680081f3
+c30264a3
+70805021
+20404c0e
+20404c2e
+202064a1
+58000000
+60040206
+6004020e
+18007004
+20407492
+70805021
+20600000
+58000000
+600101f7
+da6065e5
+204065a3
+20406429
+2020643c
+6800c1da
+1fe0fe01
+1fe67c03
+242164b6
+6000c1da
+20600000
+204064a3
+20407fa1
+20600000
+680081f2
+1fe3fe00
+7920fe00
+2a2c000f
+20608000
+600081f2
+20600000
+68108085
+c4008000
+202064c6
+6810812c
+afefffff
+20608000
+68108108
+c300e4c3
+20407422
+202064c3
+68014199
+207a0000
+70802380
+70802200
+70802400
+6809419b
+184bf200
+98000c00
+e8c08000
+60108025
+c20064d2
+70802300
+20600000
+4746c031
+204064dd
+202063f2
+204064dd
+204063ee
+202063f6
+6800c212
+60108086
+6800c213
+60108087
+580001f5
+6011008a
+580001fa
+6011008c
+202063ee
+68108086
+79207e07
+60108086
+793ffe07
+60108086
+20600000
+79207e07
+600101f5
+47474031
+70808802
+70808e00
+70800602
+202064fc
+18000401
+600081f5
+4747c031
+70808801
+6019008e
+70800602
+204064fc
+680081fa
+20600000
+680140d6
+1fe0fe01
+600140d6
+6810812c
+c301e4fc
+20600000
+70808640
+70808700
+68108081
+793ffe00
+79207e01
+60108081
+58000000
+600201f5
+20600000
+58000000
+6011008e
+58000001
+60110088
+580001f5
+6011008a
+7001f506
+70800602
+202064fc
+78547c00
+1fe22400
+6800c239
+c1800000
+78347c00
+1a427e00
+20206522
+6800c239
+c000e522
+c0016528
+c001e530
+c0026537
+c002e53d
+20600000
+6001c232
+1a227e00
+60014235
+60094237
+70423902
+20206502
+20406502
+70423903
+2040650b
+da2001f5
+6801c232
+70808804
+d8400020
+20206556
+20406502
+2040650b
+58000005
+204064f3
+c3800000
+70423904
+20600000
+20406502
+70423905
+2040650b
+2040654a
+20406552
+20206545
+20406502
+2040650b
+58000005
+204064f3
+c3800000
+70423900
+68014201
+20207f9c
+68020aa2
+68094235
+184085fc
+e0420000
+20600000
+68094235
+18422200
+184085fc
+e8420000
+60020aa2
+68094237
+6801c232
+20600000
+18408404
+60190088
+d8400002
+1a20a3fc
+e2288000
+1ff10400
+e0a88000
+1fec8400
+e0a88000
+e0a08000
+1a227e00
+6011008a
+58000000
+6011008e
+70800602
+202064fc
+6019008e
+1ff10400
+600881f6
+1fec8400
+600881f7
+600081f8
+58000004
+60110088
+7001f503
+580001f5
+6011008a
+1a227e00
+6011008c
+68108086
+2a2c000f
+7920fe06
+60108086
+70800602
+6810812c
+c283e574
+d8e00003
+202064fc
+6019008e
+58000004
+60110088
+7001f503
+580001f5
+6011008a
+1a227e00
+6011008c
+68108086
+2a2c000f
+7920fe06
+60108086
+70800602
+6810812c
+c283e585
+d8e00003
+204064c0
+204064fc
+2feffe02
+204064b9
+680081f6
+1ff02400
+680081f7
+1fed7e00
+9a41a400
+680081f8
+9a41fe00
+9840fe00
+600081f8
+1fecfe00
+600081f7
+1fecfe00
+600081f6
+20600000
+70801001
+20600000
+7080910c
+7080920d
+7080930d
+7080940d
+7080950d
+7080960c
+202065a9
+70809105
+70809207
+70809307
+70809407
+70809507
+70809605
+6810807b
+1fe1fec0
+6010807b
+68108081
+1fe1fe10
+60108081
+20600000
+6810812c
+c302e5b0
+20600000
+60110098
+1a227e00
+6011009a
+1a427e00
+6011009c
+18427e00
+6011009e
+d8400001
+7d3a0401
+60108090
+70800604
+202065b0
+79200028
+70421108
+20600000
+793f8028
+70421120
+20600000
+6800c203
+9a40fe00
+600081f7
+202065cc
+680101f7
+1ff0fe00
+600081f7
+58000003
+60110098
+7001f6a0
+7001f8a1
+202065eb
+60090aa2
+204065d6
+68090aa2
+20406606
+202065dd
+6800c23a
+c17f8000
+c30365db
+580249f0
+20402a8f
+6808c23a
+20206829
+6808c23a
+20206825
+47484032
+c51465c5
+68014203
+9a40fe00
+1ff0fe00
+600101f7
+4748c032
+c51465c9
+58000004
+60110098
+7001f6a0
+7001f9a1
+580001f6
+6011009a
+6019009e
+1a227e00
+6011009c
+58000002
+2a2c000f
+7920fe00
+60108090
+70800604
+d8e00005
+204064c0
+204065b0
+2feffe04
+204064b9
+c5146601
+680101f7
+1ff0fe00
+9840fe00
+1ff0fe00
+600101f7
+20600000
+680081f7
+9840fe00
+1ff0fe00
+600101f7
+20600000
+68014203
+9a40fe00
+60010a9a
+47494032
+60090aa2
+1a227e00
+60010ab9
+2040661d
+68090ab2
+68010ab9
+1fe22200
+68010a9a
+2040663d
+68010ab2
+68090ab9
+98408400
+60090ab9
+68090a9a
+98408400
+60090a9a
+68010aa2
+243a660d
+20600000
+4749c032
+6800c211
+1fe0ffff
+68090a9a
+9841fe00
+1fe0fe01
+60018ab6
+68010aa2
+9840fe00
+68098ab6
+98467e00
+2421662f
+60010aa2
+68018ab6
+68090a9a
+98467e00
+60010ab2
+20600000
+68010aa2
+60010ab2
+58000000
+60010aa2
+20600000
+18408402
+60190098
+1a20a3fe
+ea298000
+18422400
+d84000a0
+e2288000
+e0a08000
+2020664a
+1fe22400
+474a4032
+c5146634
+1a427e00
+18408403
+60190098
+1a20a3fd
+ea298000
+18422400
+d84000a0
+e2288000
+1ff0fe00
+e0a10000
+1a227e00
+6011009a
+58000000
+6011009e
+70809001
+70800604
+204065b0
+1a427e00
+e2218000
+474ac032
+7001f900
+58000001
+60110098
+7001f6a0
+580001f6
+6011009a
+58000000
+6011009e
+6011009c
+58000003
+60108090
+70800604
+204065b0
+6810812c
+c4030000
+200005dc
+680081f9
+1fe0fe01
+600081f9
+1fe67c28
+24610000
+20206655
+70897370
+20000bb8
+20600000
+70897330
+20600000
+1fe9fe00
+60110045
+70804b00
+20600000
+2040666f
+204066a0
+ea288000
+1a20a201
+18000e00
+a84c0000
+2020e697
+68108046
+79207e06
+79207e07
+60108046
+70804702
+70804782
+793ffe07
+60108046
+7080478a
+2000000b
+708047ca
+20000021
+7080474a
+2000002c
+708047ca
+20000016
+7080478a
+20000021
+70804782
+20000001
+70804792
+2000000a
+708047b2
+68108007
+70804792
+20000001
+70804782
+afec0000
+2020e678
+68110045
+1fe0fe01
+60110045
+18e08e01
+28e01e08
+2420e678
+c2006675
+70804783
+20600000
+70804782
+2000000c
+70804780
+70804782
+20000096
+20600000
+204066a0
+708047a2
+1a227e00
+60110048
+7920040b
+2fec000f
+7920840f
+6019004a
+70800601
+20600000
+6810812c
+c300e6b0
+20600000
+2040666f
+204066a6
+204066b0
+70804783
+20600000
+68110124
+60110045
+204066a6
+d8e00001
+204064c0
+204066b0
+2feffe00
+204064b9
+70804783
+20600000
+6811005e
+98001400
+20600000
+19427e00
+6011005e
+20600000
+18627e00
+60110058
+20600000
+68110058
+1fe20600
+20600000
+68014243
+60110052
+20600000
+1f227e00
+207a0000
+1f20f3f8
+204166de
+20628000
+202166d3
+1f20f208
+1f20f3fc
+204166e1
+20628000
+202166d8
+1f20f204
+202066e4
+e8c40000
+e1440000
+20600000
+e8c20000
+e1420000
+20600000
+1f227e00
+207a0000
+e8c08000
+e1408000
+c20066e6
+20600000
+1f227e00
+207a0000
+1f20f3f8
+204166f7
+20628000
+202166ec
+1f20f208
+1f20f3fc
+204166fa
+20628000
+202166f1
+1f20f204
+202066fd
+e8640000
+e0a40000
+20600000
+e8620000
+e0a20000
+20600000
+1f227e00
+207a0000
+e8608000
+e0a08000
+c20066ff
+20600000
+1f227e00
+207a0000
+e8608000
+e1408000
+c2006705
+20600000
+700a993d
+20207d86
+474b4032
+6800c217
+207a0000
+204067a3
+2042e7a9
+2040673e
+6800c217
+1fe22600
+68094215
+6009018c
+1a627e00
+203a6709
+1a60a7ff
+18422200
+ea208000
+68088184
+98467c00
+2042e725
+20216721
+ea208000
+1fe0fe01
+e2208000
+6809018c
+18408422
+6009018c
+20206715
+58000000
+e2208000
+68008185
+e0a08000
+c099e733
+da4041be
+e8c30000
+e0a40000
+58000000
+e0a40000
+1a420c00
+20407ebf
+18007c01
+20600000
+c01b6737
+c01be73b
+da404419
+2020672b
+d8c044d5
+20407ebf
+d8c04419
+20206730
+d8c044cd
+20407ebf
+20206739
+20407fe9
+6800c217
+207a0000
+68014682
+c2806754
+474bc032
+6800c48e
+c000674d
+68008454
+2fe180c0
+2020e74d
+2fe18040
+2020e752
+2fe18000
+2020e750
+70018535
+6803044f
+20206757
+70018537
+20206757
+70018536
+20206757
+474c4033
+70018533
+68030040
+60030186
+68014215
+efe88000
+1fe0fe01
+6001018c
+60088184
+6800c217
+1fe22600
+6801018c
+1fe22200
+2040676f
+20740000
+6809018c
+18408422
+6009018c
+184085ff
+e8408000
+60008184
+1a60a7ff
+2422e75f
+6800c217
+1fe0ffff
+60008184
+20600000
+68008185
+c099e776
+da400185
+df200007
+20407f88
+2022ffe7
+20600000
+c01b6779
+c01be794
+20206771
+ea288000
+98467c00
+24628000
+d8a00ac2
+df200010
+20407ed4
+68018452
+60018ac2
+2040678b
+68010adf
+1ff0fe00
+1fed0400
+e8c08000
+9840fe00
+6809844f
+98467c00
+2022ffe7
+20600000
+d8c00ac2
+20407486
+ea208000
+20407487
+18006c38
+18006c00
+2040741d
+d8a00ad2
+20207497
+ea288000
+98467c00
+24628000
+18c22200
+18c0a608
+da4044cd
+df200008
+20407f88
+2022ffe7
+1a622200
+da4044d5
+df200008
+20407f88
+2022ffe7
+20600000
+68014215
+efe88000
+1fe0fe22
+efe08000
+98467c00
+20600000
+6800c217
+1fe27200
+68094215
+58000000
+e0408000
+18408422
+1fe0fe01
+c20067ad
+20600000
+474cc033
+2040673e
+68008030
+79347e06
+60008030
+243467bc
+1a208c0a
+d8a041be
+20407ebf
+202067d7
+7041bd00
+20600000
+6804c4cb
+203a67ca
+2040673e
+243467ca
+6801018c
+1fe08c01
+d8a044d5
+20407ebf
+d8a04419
+20407ebf
+70442901
+20600000
+70442900
+20600000
+6803044f
+60030186
+70018534
+202067d3
+68030040
+60030186
+70018533
+6800c092
+c005670b
+c28342da
+20600000
+680441be
+680c41c6
+9841fe00
+207a0000
+7041bd01
+20600000
+474d4033
+79200407
+2040681d
+7d208407
+474dc033
+18467cff
+20628000
+284c0007
+18410e1f
+680200a1
+f920fe00
+600200a1
+680200a5
+fd20fe00
+600200a5
+20600000
+474e4033
+18467cff
+20628000
+284c0007
+18410e1f
+680200a1
+f93ffe00
+600200a1
+680200a5
+f93ffe00
+600200a5
+20600000
+204067ed
+202067fe
+18467cff
+20628000
+2455e7e1
+d8a0807c
+20406830
+79400407
+d8a08078
+20406830
+793f8407
+d8a08070
+20206830
+d8a0807c
+20406830
+793f8407
+d8a08078
+20406830
+793f8407
+d8a08070
+20206830
+18467cff
+20628000
+79400407
+2040682f
+79200407
+d8a08070
+20206830
+18410e07
+18497e00
+1fe17e03
+98a08a00
+e8a08000
+20600000
+d8a08074
+2020681e
+d8a0811c
+20406815
+284ffe07
+2020e823
+afec0000
+20600000
+afefffff
+20600000
+18467cff
+20628000
+2fcffe07
+2020682c
+18467cff
+20628000
+2fcc0007
+58000000
+7d20fe07
+98428400
+d8a08074
+20406815
+284ffe07
+f920fe00
+e0a08000
+20600000
+da3fffff
+68108081
+2fe00602
+2040e878
+2fe00601
+2040e87a
+2fe00603
+2040e87a
+2feffe02
+2040e874
+2feffe03
+2040e876
+2feffe04
+2040e87c
+2feffe06
+7d20a204
+2feffe07
+7d20a205
+68108082
+2feffe00
+7d20a21b
+2feffe01
+7d20a21c
+2feffe02
+7d20a203
+2feffe03
+7d20a208
+2feffe04
+7d20a214
+2feffe05
+7d20a215
+2feffe06
+7d20a216
+2feffe07
+7d20a217
+68108080
+2feffe00
+7d20a205
+2feffe01
+7d20a206
+2feffe02
+7d20a207
+2feffe03
+7d20a212
+2feffe04
+7d20a213
+2feffe05
+7d20a214
+2feffe06
+7d20a215
+2feffe07
+7d20a216
+68108062
+2feffe04
+2040e87e
+474ec033
+68120078
+681a007c
+9841fe00
+1fe47e00
+9a217e00
+60120070
+20600000
+d8e00006
+20206884
+d8e00009
+20206882
+d8e00017
+20206882
+d8e00019
+20206884
+d8e0001e
+20206884
+d8e00002
+20206884
+df200001
+20206885
+df200004
+20206885
+df200002
+f93fa200
+18e08e01
+c2006885
+20600000
+20406895
+d8400006
+2020680e
+20406889
+d8400006
+20206825
+20406895
+68108078
+79207e07
+60108078
+d8400007
+202067fb
+68108081
+1fe17efb
+60108081
+20600000
+68108081
+2feffe02
+20600000
+2040666a
+580007e0
+da204150
+d8400002
+204066b3
+2020666d
+2040666a
+580007e2
+da20421d
+d840000e
+204066b3
+2020666d
+474f4033
+204068a2
+6800c22d
+c00068af
+c000e8c3
+c00168d7
+20600000
+68094229
+5800aa55
+98467c00
+2022e8b8
+58004dfa
+60014227
+58004894
+60014221
+202068c0
+68014227
+243a68bc
+58004dfa
+60014227
+68014221
+243a68c0
+58004894
+60014221
+58000064
+6001422b
+20600000
+68094229
+5800aa55
+98467c00
+2022e8cc
+58005932
+60014225
+58004323
+6001421f
+202068d4
+68014225
+243a68d0
+58005932
+60014225
+6801421f
+243a68d4
+58004323
+6001421f
+58000190
+6001422b
+20600000
+68094229
+5800aa55
+98467c00
+2022e8e0
+58006946
+60014223
+58005377
+6001421d
+202068e8
+68014223
+243a68e4
+58006946
+60014223
+6801421d
+243a68e8
+58005377
+6001421d
+58000032
+6001422b
+20600000
+6800c22d
+c00068f0
+c000e8f2
+c00168f4
+20600000
+708971bf
+202068f8
+708971af
+202068f8
+7089718f
+6800c22e
+60108973
+202068f8
+474fc033
+68108053
+79207e07
+60108053
+68108973
+1fe1fe30
+60108973
+7089067c
+708972aa
+20001388
+68190150
+68108053
+793ffe07
+60108053
+6009422f
+20600000
+47504034
+6800c22d
+c000690e
+c000e912
+c0016916
+20600000
+68014227
+68094221
+da6000c8
+2020691a
+68014225
+6809421f
+da600064
+2020691a
+68014223
+6809421d
+da600032
+2020691a
+98462200
+6801422f
+98467e00
+24216927
+6809422b
+984fa400
+1a627e00
+9a2ffe00
+9a40fe00
+9a26fc00
+20407f86
+1807fe00
+20600000
+18427e00
+6809422f
+98467e00
+6809422b
+984fa400
+1a627e00
+9a2ffe00
+9a467e00
+20206923
+ea240000
+60040a9a
+68010a9a
+68090a9c
+98462200
+68010aa0
+98462400
+68090a9e
+98467c00
+24416940
+1a4ffe64
+9a26fc00
+20407f86
+1807fe00
+205a6944
+20600000
+6800c231
+79207e00
+6000c231
+20600000
+6808c231
+79200401
+6008c231
+20600000
+6801423d
+efe08000
+207a0000
+1fe27200
+6801423d
+1fe0fe03
+1fe22200
+ea288000
+204067fb
+1a20a201
+c200694f
+20600000
+6801423d
+1fe0fe03
+1fe22200
+18002400
+700b1200
+ea288000
+2040681d
+4750c034
+68010b12
+1a420e00
+f920fe00
+60010b12
+1a20a201
+1a40a401
+6801423d
+efe08000
+9a42fc00
+2422e959
+68010b12
+68090b14
+9842fc00
+20628000
+78347c00
+20600000
+6801423d
+efe08000
+207a0000
+1fe27200
+6801423d
+1fe0fe03
+1fe22200
+ea288000
+204067dd
+1a20a201
+c2006973
+20600000
+d8e00009
+20407f16
+247a0000
+58000020
+d8e00009
+20407f08
+78547c00
+2040696c
+47514034
+6801423d
+efe08000
+207a0000
+20406954
+24347d02
+20407d00
+78547c00
+68010b12
+60010b19
+700b1b00
+18000e00
+68010b14
+1fe30400
+60090b14
+1fe17e01
+68090b19
+18412201
+18430400
+60090b19
+9a22fc00
+2442e9a1
+6801423d
+efe08000
+68088b1b
+18408401
+60088b1b
+18420e00
+98e2fc00
+2422e98c
+68010b12
+60010b14
+20600000
+4751c034
+6801423d
+1fe0fe01
+efe10000
+20207f9c
+68108042
+9a21fe00
+60108042
+68110050
+793ffe0d
+60110050
+20000064
+20600000
+68098a9c
+58b71b00
+9846fc00
+20407f86
+18078400
+68008a9f
+984ffe00
+1fe6fc64
+20407f86
+1807a200
+18427e00
+9a262400
+68008a9b
+204069be
+68008a9a
+202069d5
+c00069c4
+c000e9c6
+c00169c8
+c001e9ca
+c00269cc
+c002e9ce
+d8a080a0
+202069d0
+d8a080a4
+202069d0
+d8a080a8
+202069d0
+d8a08064
+202069d0
+d8a08068
+202069d0
+d8a0806c
+202069d0
+1a227e00
+e0a10000
+1a427e00
+e0a10000
+20600000
+78347c00
+202069d8
+78547c00
+c00269e3
+c002e9e5
+c00de9e7
+c00e69e9
+c001e9eb
+c00469ed
+c00a69ef
+c00ae9f1
+c00b69f3
+c00be9f5
+20600000
+d8e00006
+202069ff
+d8e00007
+202069ff
+d8e00008
+202069ff
+d8e00009
+202069ff
+d8e0000a
+202069ff
+d8e0000b
+202069ff
+d8e0000c
+20206a01
+d8e0000d
+20206a01
+d8e0000e
+20206a01
+d8e0000f
+20206a01
+68110081
+f9347e00
+60110081
+1a220e00
+68108085
+f9347e00
+60108085
+20600000
+18e0a3fc
+202069f7
+18e0a3f6
+202069f7
+20758000
+70456700
+7004ed03
+7004ee03
+7004f211
+7004f313
+58000000
+600184ef
+6000c254
+70468100
+47524034
+58000000
+6000c254
+6000c564
+6000c55d
+6800c56b
+c000ea16
+70456950
+20600000
+70456900
+20600000
+18418402
+20600000
+18427e00
+1fedfe00
+6000c562
+18007e3f
+1fedfe00
+6000c561
+18007e01
+1fedfe00
+6000c560
+20406a50
+18427e00
+20600000
+1fedfe00
+6000c562
+18007e73
+1fedfe00
+6000c561
+18007e01
+1fedfe00
+6000c560
+20206a50
+6800c563
+203a6a33
+58000070
+20600000
+580000aa
+20600000
+1fedfe00
+6000c562
+18007eef
+20406a44
+680904f7
+18420a00
+e0a08000
+18a20400
+600904f7
+18007eff
+20406a44
+680904f7
+18420a00
+e0a08000
+20600000
+1fedfe00
+6000c561
+68014561
+1fed7e00
+600184f4
+da200107
+da40000f
+20406a5d
+1fe2fed7
+1fe47e00
+1fedfe00
+20600000
+6801c560
+600184f4
+da200107
+da40000f
+20406a5d
+1fed7e00
+da400007
+20406a5d
+1fe2fe2b
+1fe47e00
+1fedfe00
+1fe20400
+20600000
+da600000
+1a427200
+20407e71
+1fe20400
+18427e00
+1a63a600
+c3046a66
+9a228400
+1a60a601
+18438400
+680184f4
+1a40a5ff
+2a41feff
+2020ea70
+1a427200
+20407e71
+2feffe00
+79208400
+20206a61
+18437e00
+20600000
+6808c55d
+184b8400
+79200400
+6800c563
+245a6a18
+6008850d
+20600000
+18438400
+6800c563
+793a0400
+20600000
+680884fc
+7004fed7
+20406bb6
+6800c251
+79207e06
+79207e07
+6000c251
+70456300
+20206b97
+6800c251
+79207e07
+6000c251
+20206b97
+4752c034
+6800c681
+c0006a8e
+20206b4c
+68010264
+1fe20c00
+20406ab8
+680084fc
+c0006a94
+20206b18
+47534034
+680084fd
+c01fea7d
+c039ea86
+c077ea9b
+c029eb44
+20600000
+68010501
+1fe20c00
+20406ac3
+68008503
+c020eaa5
+c0206aad
+c038eae6
+c0386af2
+c024eafd
+20206b97
+20406aaf
+20206aa7
+6800c254
+79207e00
+79207e01
+6000c254
+20406be0
+20206b97
+20406aaf
+20206b97
+20406acb
+20206ad7
+20406acb
+e8c08000
+1fe97e00
+6000c56a
+e8c08000
+60008508
+20600000
+e8c08000
+600084fb
+1fe97e00
+600084fc
+e8c08000
+600084fd
+20406ace
+600904ff
+18c27e00
+60010501
+20600000
+e8c08000
+1fe37e00
+60008503
+20406ace
+60090504
+18c27e00
+60010506
+20600000
+68010506
+1fe20c00
+20600000
+e8c08000
+1fe20400
+18430400
+c3800000
+e8c08000
+1fe9fe00
+1ff27e00
+98408400
+20600000
+e8c08000
+6000c55d
+e8c08000
+60008509
+e8c08000
+6000850a
+e8c08000
+6000850b
+e8c10000
+6001455e
+e8c08000
+6000850c
+e8c08000
+6000c568
+20600000
+20406ab1
+20206ae8
+6800c254
+79207e05
+79207e06
+6000c254
+6808c55d
+184b8400
+18418403
+20406c11
+70456703
+20206b97
+700a9908
+20407d86
+20406ab1
+6800c56a
+1fe67c01
+2022eaf9
+20202a8c
+6800c254
+79207e07
+6000c254
+20206b97
+20406acb
+e8c08000
+60008ac2
+204052d2
+204052e0
+5800000e
+e0a10000
+6801424a
+e0a10000
+6800c563
+1fe3fe00
+79207e00
+e0a08000
+4753c034
+580015ef
+e0a10000
+58001191
+e0a10000
+68008ac2
+e0a08000
+58000007
+e0a28000
+58000001
+e0a10000
+20406a2f
+e0a08000
+20600000
+20206b19
+47544035
+680084fd
+c039eb21
+c01feb25
+c077eb3f
+c07feb37
+c029eb46
+20600000
+6800c254
+79207e03
+6000c254
+20206b97
+6800c254
+79207e03
+79207e02
+6000c254
+680084fb
+20406a26
+600084fe
+20406bb6
+680084fb
+1feb7e00
+6000c55d
+1febfe00
+793ffe01
+79207e00
+d8404565
+600904f7
+20406a35
+20206b97
+68010501
+1fe20c00
+1fe0fe01
+60010501
+e8c08000
+6808c568
+9840fe00
+6000c568
+20406c42
+20406a72
+20406c28
+20406c4b
+20206b97
+700a9909
+20407d86
+20406a0d
+680084fb
+20406a26
+600084fe
+20406bb6
+20206b97
+68010264
+1fe20c00
+20406ab8
+680084fc
+c0006b52
+20206b86
+4754c035
+680084fd
+c01fea7d
+c039ea86
+c077eb58
+20206b97
+68010501
+1fe20c00
+20406ac3
+68008503
+c020eb61
+c0206b61
+c038eb6c
+c0386b7c
+20206b97
+20406aaf
+6800c55d
+1fe37e00
+6808c564
+98467c00
+2022eb68
+20202a8c
+6800c254
+79207e01
+6000c254
+20206b97
+20406ab1
+6800c56a
+6808c564
+98467c00
+2022eb73
+20202a8c
+20206b97
+6800c254
+79207e05
+79207e06
+6000c254
+6808c55d
+184b8400
+18418403
+20406c11
+20206b97
+20406ab1
+6800c56a
+6808c564
+98467c00
+2022eb82
+20202a8c
+6800c254
+79207e07
+6000c254
+20206b97
+680084fc
+6808c564
+98467c00
+2022eb8c
+20202a8c
+20206b97
+680084fd
+c039eb91
+c077eb3f
+c07feb37
+c029eb96
+6800c254
+79207e03
+6000c254
+20206b97
+20206b95
+20206b46
+20600000
+6800c567
+207a0000
+c001eb9c
+20202a8c
+70456700
+204052d2
+d8400001
+6808c55d
+184b8400
+18418403
+da2000aa
+20406bfc
+204052e0
+18a20c00
+e8c10000
+203a2a8c
+20600000
+204052e0
+58000004
+e0a10000
+6801424a
+e0a10000
+680084fb
+e0a08000
+47554035
+5800013f
+e0a10000
+680084fe
+e0a08000
+20600000
+204052d2
+204052e0
+58000004
+e0a10000
+6801424a
+e0a10000
+680084fb
+e0a08000
+4755c035
+58000173
+e0a10000
+680084fe
+e0a08000
+20600000
+204052e0
+5800000e
+e0a10000
+6801424a
+e0a10000
+6800c563
+1fe3fe00
+79207e00
+e0a08000
+47564035
+580015ef
+e0a10000
+58001183
+e0a10000
+18427e00
+e0a08000
+580000f0
+e0a18000
+5800007f
+e0a10000
+58000000
+e0a08000
+58000001
+e0a08000
+20406a2f
+e0a08000
+70456910
+20600000
+204052d2
+204052e0
+5800000e
+e0a10000
+6801424a
+e0a10000
+6800c563
+1fe3fe00
+79207e00
+e0a08000
+4756c035
+580015ef
+e0a10000
+58001181
+e0a10000
+6800c55d
+e0a08000
+580000e0
+e0a18000
+6801456c
+e0a10000
+58000000
+e0a08000
+6800c56e
+e0a08000
+20406a2f
+e0a08000
+20600000
+204052e0
+58000008
+e0a10000
+6801424a
+e0a10000
+6800c563
+1fe3fe00
+79207e00
+e0a08000
+47574035
+580009ef
+e0a10000
+580005e3
+e0a10000
+18427e00
+e0a08000
+5800008d
+e0a08000
+20406a2f
+e0a08000
+20600000
+204052d2
+204052e0
+58000008
+e0a10000
+6801424a
+e0a10000
+18421600
+6800c563
+1fe3fe00
+79207e00
+e0a08000
+4757c035
+580009ef
+e0a10000
+580005e1
+e0a10000
+19627e00
+e0a08000
+5800008d
+e0a08000
+20406a2f
+e0a08000
+20600000
+47584036
+6800c569
+207a0000
+68110112
+247a0000
+1a227e00
+60008a9b
+60088a9a
+2040526e
+247a0000
+204052d2
+204052e0
+58000005
+e0a10000
+6801424a
+e0a10000
+6800850d
+e0a08000
+580001ff
+e0a10000
+6800c569
+e0a08000
+6800c566
+e0a08000
+70456900
+20600000
+4758c036
+6800c56b
+c1008000
+680104ff
+207a0000
+6800c569
+1fe0fe01
+6000c569
+20600000
+6801456f
+20207f9c
+47594036
+6800c568
+207a0000
+1fe0ffff
+6000c568
+6801455e
+6809469f
+98467c00
+20216c57
+6001469f
+6800c569
+203a6c5f
+70051001
+6800c566
+6000850f
+580000ff
+6000850e
+20206c64
+70051000
+6800c565
+6000850f
+580000ef
+6000850e
+4759c036
+6801469f
+1fe67c7f
+20216c6b
+68008510
+1fe0fe01
+60008510
+20406a72
+6801469f
+1fe0fe08
+68088510
+9840a200
+20405240
+60010277
+1fe0fe04
+60010279
+1fe20a00
+6800850d
+e0a08000
+6800850e
+e0a08000
+20406c95
+20406ca6
+475a4036
+68014571
+1fe20600
+6801469f
+1fe27200
+204066ea
+18a20400
+18627e00
+60014571
+18420a00
+6800850f
+e0a08000
+68010277
+1fe20a00
+6801469f
+68088510
+9840fe00
+1fe0fe04
+e0a10000
+6801424a
+e0a10000
+70456900
+68014573
+c0003a97
+700b0500
+20600000
+475ac036
+6801469f
+1fe67c7f
+24216c9d
+1fe3fe00
+79207e00
+e0a08000
+20600000
+6801469f
+1fe97e00
+1ff18400
+1fe17e7f
+1fe3fe00
+793ffe00
+e0a08000
+e0a88000
+20600000
+6800c569
+207a0000
+e0a08000
+20600000
+475b4036
+20407d9c
+204032f6
+2040631b
+475bc036
+204076dc
+204076b5
+204076c6
+2040526e
+247a0000
+20404da9
+2040526e
+247a0000
+475c4037
+20406cf5
+20404f64
+20406b98
+20406cbe
+475cc037
+202032f2
+6800827f
+c2805087
+c283d091
+20600000
+475d4037
+20405274
+207a0000
+6800804b
+c3830000
+20405258
+6001016f
+1fe20c00
+e8c10000
+1fe0fe04
+600141dc
+7041db06
+475dc037
+68014246
+203a6cdd
+6800804b
+c4038000
+793ffe07
+6000804b
+7041db05
+68094246
+6801016f
+9840fe00
+6001016f
+680141dc
+98467e00
+600141dc
+475e4037
+680141dc
+203a2a8c
+d8400104
+98467e00
+24216ce9
+475ec037
+600941dc
+68014246
+9840fe00
+60014246
+20206ceb
+58000000
+60014246
+6800804b
+79207e06
+6000804b
+20600000
+6800c684
+c2806cf3
+70028701
+20600000
+7002870f
+20600000
+6800c681
+243a6cfb
+68008286
+207a0000
+70028600
+20600000
+475f4037
+68008287
+207a0000
+c000ed1b
+c0016d74
+c001ed21
+c0026d78
+c01ded2b
+c01e6d7b
+c006ed30
+c0076d80
+c007ed33
+c0086d86
+c008ed39
+c0096d8a
+c009ed3f
+c00a6d8e
+c00aed45
+c00b6d92
+c00bed4b
+c00c6d97
+c00ced51
+c00d6d9b
+c00ded57
+c00e6d9f
+c00eed5d
+c00f6da4
+c00fed63
+c0106da8
+c010ed6e
+c0116dac
+20600000
+20406db7
+70028702
+6800c250
+79207e00
+6000c250
+20600000
+70028704
+6800c250
+c3810000
+70028703
+20406dbe
+70028704
+6800c250
+79207e02
+6000c250
+20600000
+20405274
+247a0000
+20406dcd
+7002873c
+20600000
+20406dc3
+7002870e
+20600000
+20406ddd
+70028710
+6800c252
+79207e00
+6000c252
+20600000
+20406de4
+70028712
+6800c252
+79207e02
+6000c252
+20600000
+20406de9
+70028714
+6800c253
+79207e00
+6000c253
+20600000
+20406df0
+70028716
+6800c253
+79207e02
+6000c253
+20600000
+20406dd1
+70028718
+6800c251
+79207e00
+6000c251
+20600000
+20406dd8
+7002871a
+6800c251
+79207e02
+6000c251
+20600000
+20406df5
+7002871c
+6800c251
+79207e06
+6000c251
+20600000
+20406dfc
+6800c254
+79207e00
+6000c254
+7002871e
+20600000
+20406e02
+6800c254
+79207e02
+6000c254
+70028720
+6800c564
+1fe9fe00
+1fe1fe03
+d8404565
+600904f7
+20206a35
+20406e0c
+6800c254
+79207e04
+6000c254
+70028722
+20600000
+6800c250
+c4008000
+70028703
+20206cfb
+6800c250
+c19f8000
+7002873b
+68008285
+c18b8000
+70028500
+7002870d
+20206cfb
+6800c250
+247a0000
+6800c684
+c2806daf
+c2836db1
+20206db5
+6800c252
+c4008000
+70028711
+20206cfb
+6800c252
+c19f8000
+70028713
+20206cfb
+6800c253
+c4008000
+70028715
+20206cfb
+6800c253
+c19f8000
+6800c684
+c2836db1
+20206db5
+6800c251
+c4008000
+70028719
+20206cfb
+6800c251
+c19f8000
+7002871b
+20206cfb
+6800c251
+c1ff8000
+6800c684
+c2836db3
+20206db5
+6800c254
+c4008000
+7002871f
+20206cfb
+6800c254
+c4018000
+70028721
+20206cfb
+6800c254
+c1ff8000
+20206db5
+7002870f
+20206cfb
+70028717
+20206cfb
+7002871d
+20206cfb
+70028700
+20600000
+475fc037
+204052b8
+58000001
+1fe20400
+58000050
+1fe21600
+202050a8
+47604038
+204052b8
+68014248
+1fe20400
+202050b7
+4760c038
+204052b8
+68014248
+1fe20400
+d9600050
+204050cc
+6800c250
+793ffe05
+6000c250
+20600000
+47614038
+204052c5
+20407138
+202050e7
+4761c038
+204052b8
+58000003
+1fe20400
+58000051
+1fe21600
+202050a8
+47624038
+204052b8
+6801424a
+1fe20400
+202050b7
+4762c038
+204052b8
+58000011
+1fe20400
+58000052
+1fe21600
+202050a8
+47634038
+204052b8
+6801424c
+1fe20400
+202050b7
+4763c038
+204052b8
+58000013
+1fe20400
+58000053
+1fe21600
+202050a8
+47644039
+204052b8
+6801424e
+1fe20400
+202050b7
+4764c039
+204052d2
+7004fb03
+7004fe1c
+20406ba9
+70456301
+20600000
+47654039
+204052d2
+6808c564
+20406a79
+6008c55d
+20206bc4
+4765c039
+204052d2
+6808c55d
+20406a73
+20406a1a
+600084fe
+6808c55d
+20406a73
+600884fb
+20206ba9
+47664039
+204052d2
+6808c55d
+20406a73
+20206bfc
+4766c039
+68010264
+98000c00
+e8c08000
+1fe22400
+6000851b
+e8c10000
+6001051c
+e8c08000
+1fed1600
+e8c08000
+99609600
+47674039
+18c20400
+df200004
+d8a0052a
+20407ec6
+18420c00
+1a427e00
+c000efba
+c0016e2c
+c001efba
+c0026e54
+c002efba
+c0036f02
+c003efba
+20206fc1
+4767c039
+20406fd0
+2841fe01
+2020f040
+2841feff
+2020efc4
+e8c10000
+60010522
+196097fe
+196097ff
+2422efbe
+d9600511
+e9610000
+207a0000
+20407082
+204052d0
+18007e03
+e0a08000
+6801051c
+e0a10000
+18ebfe00
+1fe0fe05
+1fe0a605
+1ff0fe00
+e0a10000
+18e27e00
+1ff0fe00
+e0a10000
+e0a10000
+d8c0052a
+18e27200
+2022ee4f
+e8c20000
+e0a20000
+c2006e4c
+18007e00
+e0a08000
+1a627e00
+60010275
+20600000
+4768403a
+e8c20000
+60020524
+196097fc
+20406f2e
+60010520
+196097fe
+20407028
+2022efc4
+2a21fe05
+2020ee62
+d8a0052a
+18000e00
+20206e71
+e8c08000
+c0856fc4
+e8c10000
+243a6e6f
+e8c08000
+c0ffee6d
+e8c08000
+c0ffee6b
+20206eb8
+18c08dfb
+20206e5f
+18c08dfc
+20206e5f
+18c08dfd
+20206e5f
+e8c08000
+c004ee86
+c0056e74
+e8c10000
+e0a10000
+18e08e01
+1ff0a400
+e8c10000
+1ff0fe00
+1a40a401
+9a467c00
+24216e83
+1fe22600
+1a50fe00
+e0a10000
+18e08e01
+1a627e00
+20206e7a
+196097fb
+1a20a3fb
+20206e8b
+e8c10000
+e0a10000
+18e08e01
+196097fd
+1a20a3fd
+24216fc4
+2422ee71
+196097ff
+2422efc4
+204052d0
+18a08a0a
+da20052a
+18e27e00
+203a6ea5
+ea210000
+203a6ea5
+98002400
+68020524
+98000400
+204070e7
+18c27e00
+203a6ea2
+18c08dfd
+e8c18000
+e0a18000
+2040705b
+98007200
+20407f01
+1a20a202
+18e08fff
+20206e92
+da200005
+20406f84
+68010275
+c005f043
+20206f9a
+e8c08000
+c0006eae
+c000eeb0
+c0016eb3
+196097ff
+20206eb6
+e8c08000
+196097fe
+20206eb6
+e8c10000
+1ff0fe00
+196097fd
+60010519
+20600000
+196097fb
+20406eaa
+2422efbe
+680a0524
+204070b1
+2422efbb
+18c22200
+204052d0
+1a220c00
+18a08a03
+18c21600
+20407062
+1fe22200
+68010519
+1fe22400
+1a227e00
+9a462400
+68010520
+9a467c00
+24216ee7
+78547c00
+68010519
+203a6eda
+99608c00
+1a40a403
+1a427200
+1f227e00
+1fe0fe03
+1ff0fe00
+e0a10000
+1f227e00
+1ff0fe00
+e0a10000
+20206ef5
+1a20f206
+20346ede
+1f30fe00
+20206ee1
+1f227e00
+1fe0fe02
+1ff0fe00
+e0a10000
+1f20f3fd
+1f30fe00
+e0a10000
+19620c00
+20206ef5
+78347c00
+68010520
+1fe22200
+1a227200
+68010519
+203a6eda
+99608c00
+1a227e00
+1fe0fe05
+1ff0fe00
+e0a10000
+1a227e00
+1ff0fe00
+e0a10000
+20407f01
+24346efe
+18007e02
+e0a08000
+18c27e00
+99667e00
+1ff0fe00
+e0a10000
+20206f00
+18007e00
+e0a08000
+da200005
+20206fb0
+4768c03a
+20406fd0
+2841feff
+2020efc4
+20406f2e
+60010520
+196097fe
+20407028
+d8a0052a
+18000e00
+e8c08000
+c0056f36
+e8c10000
+e0a10000
+18e08e01
+196097fd
+1a20a3fd
+24216fc4
+2422ef0c
+196097ff
+2422efc4
+204052d0
+18a08a0d
+68010511
+98002600
+da20052a
+ea210000
+203a6f29
+98002400
+204070c6
+203a6f27
+18c08dfd
+e8c18000
+e0a18000
+2040705b
+98007200
+20407f01
+1a20a202
+20206f1c
+20406f83
+68010275
+c0077046
+20406f9a
+20206f9a
+e8c10000
+1ff0fe00
+1fe0fffd
+d84000c8
+98467c00
+24610000
+580000c8
+20600000
+18c08c04
+196097fb
+1a20a3fb
+2422efc4
+20406eaa
+2422efbe
+d9600511
+20407082
+18e27e00
+203a7046
+6000854e
+1a427e00
+6001054c
+d8e00000
+da200000
+204052d0
+18a08a0a
+20406f6c
+24342a8c
+18c21600
+1fe22600
+9a20a200
+68010519
+1fe22400
+203a6f75
+1a227e00
+9a462400
+2022ef67
+24216f67
+68010520
+9a467c00
+2022ef5e
+24216f5e
+1a427200
+20406f61
+6800854e
+18e08e01
+98e67c00
+2022ef83
+20206fa0
+1fe27200
+20406f61
+20206fa0
+18a08bfd
+1f220400
+1a627e00
+9a467e00
+99608c00
+20207f01
+6800854e
+18e08e01
+98e67c00
+20628000
+20206f47
+20407fe9
+d8c0052a
+18ebfe00
+98c08c00
+e8ca0000
+204070b1
+24628000
+2040705b
+20207fe7
+68010520
+9a267c00
+24216f8f
+1a227200
+1f220400
+19620c00
+20407f01
+6801054c
+9a267c00
+2022ef81
+20406fa0
+20206f94
+20406f83
+20206f94
+da200007
+18007e00
+e0a08000
+20406fb0
+68090275
+184085fb
+1850fe00
+e0a10000
+184085fd
+1850fe00
+e0a10000
+20600000
+1fe27200
+1f220400
+19620c00
+20407f01
+20406fa0
+58000036
+e0a08000
+6801054c
+1ff0fe00
+e0a10000
+20600000
+58000036
+e0a08000
+184085fd
+1850fe00
+e0a10000
+20600000
+da200007
+58000002
+e0a08000
+68010519
+98408400
+1850fe00
+e0a10000
+20406fb0
+68090275
+184085fb
+1850fe00
+e0a10000
+184085fb
+1850fe00
+e0a10000
+20600000
+68010273
+98a67e00
+1fe67e00
+60010275
+204052d0
+1a227e00
+e0a08000
+6801051c
+e0a10000
+20600000
+20600000
+58000200
+6001054a
+20206fc6
+58000400
+6001054a
+20206fc6
+58000600
+6001054a
+20206fc6
+58000300
+6001054a
+204052d0
+e0a08000
+6801051c
+e0a10000
+58000200
+e0a10000
+6801054a
+e0a10000
+70027507
+20600000
+da400000
+18000400
+d8a00511
+20407028
+2022f026
+1a40a401
+e8c08000
+1a20a3ff
+196097ff
+2fe1f018
+2420f026
+2fe00e04
+2420eff3
+18000401
+e8c08000
+1a20a3ff
+196097ff
+c0806fe7
+e8c08000
+1a20a3ff
+196097ff
+c0006ff8
+20206fea
+18c08c01
+1a20a3ff
+196097ff
+18c08c02
+1a20a3fe
+196097fe
+2841fe00
+2020f020
+18c08c0c
+1a20a3f4
+196097f4
+20207020
+2fe00e02
+2420eff6
+20206fde
+2fe00e01
+2420f026
+1a20a3fe
+196097fe
+e8c10000
+1a467c04
+2022effe
+e0a10000
+2841fe00
+2020f020
+18c20400
+e8c08000
+c0807019
+e8c08000
+c0807019
+e8c08000
+c0887019
+e8c08000
+c0807019
+e8c08000
+c0c07019
+e8c08000
+c0807019
+e8c08000
+c0807019
+e8c08000
+c0c07019
+e8c08000
+c0aff019
+e8c08000
+c0cdf019
+e8c08000
+c09a7019
+e8c08000
+c07df01e
+18420c00
+18c08c0c
+18000e00
+18000400
+2020701e
+196097f4
+1a20a3f4
+18000400
+2a21fe00
+2420efd5
+18007e00
+e0a10000
+20600000
+d84000ff
+20600000
+476a403a
+e8c08000
+196097ff
+2fe1f030
+2420f03e
+2fe00e07
+2020f037
+2fe00e06
+2020f039
+2fe00e05
+2420f03e
+e8c08000
+1fe22200
+196097ff
+2020703c
+18c08c02
+196097fe
+e8c10000
+1ff0a200
+196097fe
+18007e01
+20600000
+18007e00
+20600000
+58000003
+6000851b
+20207048
+58000005
+6000851b
+20207048
+58000007
+6000851b
+204052d0
+6800851b
+1fe22400
+e0a08000
+6801051c
+e0a10000
+58000500
+e0a10000
+2a41fe05
+2020f057
+2a41fe07
+2020f057
+58000000
+e0a28000
+20207059
+58350200
+e0a28000
+7002750a
+20600000
+20407ea2
+20407ea5
+20407062
+20407e9c
+20407e9f
+18427e00
+20600000
+e8c08000
+1fe17207
+1fe97e00
+c080706c
+18007e01
+18000401
+20600000
+20407e76
+1fe08401
+20600000
+1f227e00
+1fe67c04
+20217069
+c002f073
+c0037076
+c003f07a
+20600000
+e8c08000
+1fe08402
+20600000
+e8c10000
+1ff0fe00
+1fe08403
+20600000
+e8c10000
+1ff0fe00
+e8c90000
+18508400
+18500400
+9840fe00
+1fe08405
+20600000
+476ac03a
+18000e00
+da400000
+d8a0052a
+e9610000
+207a0000
+2040708d
+18e27e00
+c1038000
+19609602
+20207086
+98002600
+68014575
+98000c00
+18e27e00
+c1038000
+78547c00
+e8c08000
+207a0000
+98007200
+e8c10000
+9a667c00
+2422f09a
+78347c00
+c2007096
+e8ca0000
+18c22200
+243470ad
+d8c0052a
+df200007
+e8c20000
+203a70a6
+98467c00
+2022f0ad
+c20070a0
+20600000
+e0aa0000
+18e08e01
+1a220c00
+2040705b
+9a40a400
+98c08c00
+20207090
+1a220c00
+20407062
+98c08c00
+20207090
+476b403a
+68014575
+98000c00
+e8c08000
+203a7fe3
+1fe3fe00
+98c08c00
+e8c20000
+98467c00
+20628000
+18a27e00
+60010abb
+600c0aa2
+20407062
+98c08c00
+18c27e00
+68090abb
+18420a00
+680c0aa2
+1fe20c00
+202070b4
+476bc03a
+68014575
+98000c00
+e8c08000
+203a70e4
+98007200
+e8c10000
+9a667c00
+2022f0d4
+c20070cc
+18c08c04
+20407062
+98c08c00
+202070c9
+1f20f3ff
+1f23fe00
+98c08c00
+18c08c04
+20407062
+98c09600
+18c08c01
+e8c10000
+9a467c00
+2022ffef
+2040705b
+98c08c00
+19627e00
+98c67c00
+2022f0e4
+202070da
+18000c00
+18007e00
+20600000
+476c403b
+68014575
+98000c00
+e8c08000
+203a7100
+1fe3fe00
+98c08c00
+e8c20000
+98467c00
+2022f0f4
+20407062
+98c08c00
+202070ea
+20407062
+98c09600
+18c08c01
+e8c10000
+9a467c00
+20628000
+2040705b
+98c08c00
+19627e00
+98c67c00
+2022f100
+202070f6
+18000c00
+20600000
+da400400
+204070f4
+da400300
+2040710d
+24740000
+1a267c03
+20217fe9
+e8c08000
+c0847fe9
+e8c08000
+20600000
+476cc03b
+20407062
+1fe22200
+e8c08000
+1fe17207
+1fe97e00
+1fe67c03
+2022f129
+1f227e00
+c002f120
+c0037123
+c003f126
+18c08dff
+20407062
+98c08c00
+1a227e00
+98462200
+2022ffe9
+20207110
+1a20a3fe
+18c08c01
+20207110
+1a20a3fd
+18c08c02
+20207110
+1a20a3fb
+18c08c04
+20207110
+1a20a3ff
+1f227e00
+c000f132
+c0017130
+c002712f
+20207fe9
+1a20a3f4
+e8c10000
+1a20a3fe
+e8c10000
+9a467c00
+2022ffe7
+1a20a3fe
+2022ffe9
+20207110
+204052d0
+1fe20a00
+58000006
+e0a08000
+5800006e
+e0a10000
+58000f00
+e0a10000
+581a0535
+e0a18000
+58000111
+1ff07e00
+e0a20000
+58002600
+e0a10000
+58000335
+e0a10000
+58000009
+e0a10000
+58000004
+e0a10000
+70027514
+20600000
+476d403b
+7005e550
+d8a005e6
+d8c0443a
+20407ebf
+d8c045d2
+20407ebd
+d8c009be
+20407ebd
+2040720a
+d8c0042f
+20407205
+204071d0
+d8a00af2
+20407201
+580f4240
+1fe22200
+68020af2
+9a26fc00
+20407f86
+18077e00
+600209ba
+20600000
+7005e541
+d8a005e6
+204071b5
+204071b0
+6801c454
+e0a18000
+20407176
+d8c0042f
+20407ebf
+d8c0443a
+20407ebf
+2040720a
+d8c00b12
+d8a00ac2
+20407ebf
+202071d0
+680244c7
+e0a20000
+20407ecd
+20207eca
+476dc03b
+7005e541
+d8a005e6
+204071b0
+204071b5
+6801c44d
+e0a18000
+20407176
+d8c0443a
+20407ebf
+d8c0042f
+20407ebf
+2040720a
+d8c00b12
+d8a00ac2
+20407ebf
+204071d0
+d8a00af2
+20207201
+7005e520
+d8c009fe
+d8a005e6
+20407ebd
+2040720a
+d8c0099e
+20407205
+204071d0
+d8a00ac2
+20407497
+d8400001
+2040719f
+d8a04419
+20407201
+d8400000
+2040719f
+d8a00b12
+20207497
+476e403b
+7005e535
+58000100
+600105e6
+204071b0
+204071b5
+d8c0443a
+20407ebf
+d8c0042f
+20407ebf
+58006c65
+e0a10000
+58006274
+e0a10000
+e0a88000
+2040720a
+202071d0
+680344a0
+e0a30000
+6800c495
+e0a08000
+20600000
+6803044f
+e0a30000
+6800c48e
+e0a08000
+20600000
+7005e541
+6800c664
+600085e6
+d8c045d2
+20407ebd
+d8c009be
+20407ebd
+2040720a
+d8c0042f
+20407205
+202071d0
+7005e541
+6800c664
+600085e6
+d8c009be
+20407ebd
+d8c045d2
+20407ebd
+2040720a
+d8c0443a
+20407205
+202071d0
+476ec03b
+2040721f
+680085e5
+1fe20400
+1fe0fe0f
+1ff1fe00
+1fe22400
+203a71e2
+18417e0f
+243a71e5
+da600ad2
+dfe005e6
+1fe0fff0
+9840a200
+d8a00b02
+df200004
+20407edd
+202071f0
+da400001
+da200000
+202071e6
+1841220f
+dfe005e6
+9840fe00
+9a260c00
+d8a00af2
+20407245
+da600ae2
+da200af2
+d8a00b02
+df200004
+20407edd
+20407491
+20407428
+d8c005e6
+1a40a5ff
+1a427e00
+203a71f9
+20407486
+20407422
+202071f3
+d8a00af2
+20407497
+d8c00b02
+20407486
+20407428
+d8c00af2
+20407486
+20207422
+18a22200
+20407497
+df200010
+20207ee5
+d8a00ac2
+20407ebf
+df200010
+da200ac2
+20207ee5
+680085e5
+1fe27200
+da2005e6
+20207ee5
+ea208000
+1fe3fe00
+2a6ffe00
+7920fe00
+2feffe08
+7920a600
+e2208000
+1a20a3ff
+c200720e
+20600000
+da200ad2
+1a20a20f
+18007210
+18002600
+2020720e
+da200ae2
+20207219
+d8c00ac2
+20407484
+18007008
+20407492
+20407491
+2040741f
+d8a00ad2
+20407497
+476f403b
+68008ad2
+2feffe07
+2420f230
+20407218
+da600ad2
+d8a00ad2
+2040723a
+20207231
+20407218
+d8c00ad2
+d8a00ae2
+20407ebf
+68008ae2
+2feffe07
+2420f21d
+2040721d
+da600ae2
+d8a00ae2
+df200003
+d8400000
+20407241
+1a60a604
+c200723b
+d8408700
+18500400
+ea620000
+9842fe00
+e0a20000
+20600000
+476fc03b
+df200010
+dfe00000
+9a267c00
+2022f250
+20217253
+e8c88000
+e0a88000
+1fe0fe01
+c2007248
+20600000
+d8400080
+e0a88000
+2020724d
+d8400000
+20207251
+20407268
+d8c00592
+d8a00582
+20207ebf
+78547c00
+2040735f
+d8c00562
+d8a005a2
+1800720f
+20407f01
+e8c08000
+1fe2fe06
+e0a08000
+580005b2
+600105d6
+580005a2
+600105d4
+79200012
+202072a8
+6808c689
+18002410
+1840a606
+1a667c10
+2021726e
+18002610
+d8a005a2
+d8c0468a
+18427200
+78547c00
+e8c08000
+e0a08000
+1a40a5ff
+2022f27c
+c2007272
+2034726f
+78347c00
+18007206
+1a220c00
+20207272
+d8c00562
+d8a005b2
+20407ebf
+680085c1
+9a62fe00
+600085c1
+580005b2
+600105d6
+580005a2
+600105d4
+79200012
+202072a8
+78547c00
+2040735f
+20207292
+da200056
+78347c00
+2040735f
+20407292
+d8c00592
+d8a00062
+20207ebf
+58000562
+600105d6
+580041be
+600105d4
+793f8012
+204072a8
+da200592
+da400562
+d8a005a2
+20407352
+da2005a2
+da4005b2
+1a420a00
+78347c00
+20407350
+2040736a
+580005b2
+600105d6
+580005a2
+600105d4
+79200012
+202072a8
+7005d800
+680105d4
+98000c00
+d8a005c2
+20407ebf
+680105d6
+98000c00
+d8a00592
+20407ebf
+204072cf
+78547c00
+c58972b9
+680085d8
+c08272b9
+680105d6
+98002400
+20407301
+20407300
+20407313
+680085d8
+1fe0fe01
+600085d8
+204072cf
+78347c00
+20407300
+20407322
+20407331
+20407322
+20407331
+20407322
+20407331
+20407322
+680085d8
+1fe0fe01
+600085d8
+c08872b1
+204072cf
+78547c00
+20207300
+680085d8
+d8c005c2
+203a72f6
+98002400
+18007211
+18c20a00
+e8c08000
+1fe98400
+1feb7e00
+1fe97e00
+9841fe00
+e0a08000
+c20072d5
+580005c2
+9a408c00
+18007210
+d8a00572
+e8c08000
+e0a08000
+28c1ffd3
+2420f2e5
+18c08def
+c20072e0
+18002200
+1a40a7ff
+1a6ba600
+1a6ba600
+204074b9
+58008400
+9a60a600
+d8a00572
+18007210
+ea688000
+e8a08000
+9840fe00
+e0a08000
+1a60a601
+c20072ef
+202074bd
+18007210
+18000400
+e8c08000
+98428400
+c20072f8
+18427e00
+e0c08000
+d8c005c2
+d8a00572
+20207ebf
+da400572
+18007210
+da200592
+1a220a00
+ea288000
+ea408000
+9842e000
+1f212603
+2434730a
+1a62a603
+1a662601
+2021730d
+9840e000
+1e027e00
+e0a08000
+1a20a201
+1a40a401
+c2007304
+20600000
+204074b9
+18007210
+da200592
+ea208000
+d8c08500
+1f212603
+1a667c01
+2021731c
+d8c08600
+98c08c00
+e8c08000
+e2208000
+1a20a201
+c2007316
+202074bd
+18007208
+d8c00592
+18c20a00
+e8c08000
+98002200
+e8c08000
+98002400
+1a23fe00
+9a40fe00
+e0a08000
+1a227e00
+9a40fe00
+e0a08000
+c2007325
+20600000
+588ae42c
+98000400
+18007207
+20407340
+580d751b
+98000400
+18007205
+20407340
+680085a1
+98002200
+68008595
+600085a1
+1a227e00
+60008595
+20600000
+1841240f
+18417e0f
+d8a00592
+98a08a00
+e8a08000
+98002600
+1a227e00
+e0a08000
+1a622200
+18518400
+c2007341
+58000592
+9a408a00
+1a227e00
+e0a08000
+20600000
+78347c00
+20207353
+78547c00
+18007210
+ea288000
+ea408000
+20347359
+9842fe00
+2020735a
+9840fe00
+e0a08000
+1a20a201
+1a40a401
+c2007354
+20600000
+d8a005b2
+ea230000
+e0a30000
+20347365
+ea230000
+20207366
+e8c30000
+e0a30000
+ea220000
+e0a20000
+20600000
+d8c041be
+d8a005a2
+d8400000
+588395a7
+2040738b
+58b3c1df
+2040738b
+5800e5e9
+2040738c
+18422800
+78547c00
+20407379
+1a820400
+78347c00
+20207379
+18007208
+e8c08000
+2f200201
+20347380
+2020f381
+9840fe00
+20207382
+2020f37e
+9842fe00
+e0a08000
+184c8400
+c200737a
+20600000
+68030596
+60030056
+e8c30000
+e0a30000
+20600000
+184d0400
+18500400
+98418400
+20600000
+2020738f
+4770403c
+2040742b
+d8a04419
+20207497
+d8a0443a
+2034f397
+d8a0042f
+18c22200
+20407ebf
+20407440
+d8c0442a
+202074b0
+da20042f
+2034f39f
+da20443a
+1a220a00
+2040630c
+20207440
+d8c044aa
+20407486
+d8c04419
+20407487
+18006c38
+18006c00
+2040741d
+d8a0047c
+20207497
+18007e49
+202073ae
+18007e01
+18007000
+184d5e00
+9de1de00
+1f00f001
+184cde00
+1df15e00
+68014411
+1ff07e00
+9de1de00
+1f00f001
+e8c20000
+98005e00
+1f00f001
+e8c10000
+1a30de00
+1df05e00
+9de1de00
+1f00f001
+20600000
+1a608c01
+e8c08000
+98002200
+204073ab
+2040741f
+18007000
+ea608000
+1fe17e03
+1ff05e00
+79205e08
+2040748f
+20407422
+1a227200
+1a608c02
+2040746e
+20407478
+20407422
+1f227e00
+203a73d5
+202073d0
+1800700c
+1de27e00
+60020417
+20600000
+1a20a201
+204073ad
+1a620c00
+20407482
+20407425
+2040749e
+1a60a610
+1a40a5f0
+202173d9
+20600000
+4770c03c
+da6043dc
+680ac403
+204073c1
+18007008
+98005e00
+18002200
+204073ad
+20407425
+da6043de
+6800c3dd
+1fe0a5ff
+9a608a00
+1800700c
+1de27e00
+e0a20000
+204073d9
+6800c3dd
+1fe0fe04
+6000c3dd
+680ac403
+18408401
+600ac403
+20600000
+4771403c
+680082da
+1fe67c14
+202173ff
+da6002db
+1fe0a5ff
+1fe0fffc
+600082da
+9a608c00
+e8c20000
+18007008
+98005e00
+18002200
+680ac408
+204073ad
+20407425
+1800700c
+1de27e00
+6002041b
+204073d9
+da6002d9
+204073c1
+680a041b
+98467e00
+247a0000
+6802440d
+98467e00
+207a0000
+600a440d
+6802c408
+1fe0fe01
+6002c408
+18007e00
+20600000
+243bf41d
+20600000
+18006c30
+18006c00
+2020741d
+18006c32
+18006c02
+2020741d
+18006c34
+18006c04
+2020741d
+18006c01
+18006c00
+20600000
+18007000
+6802042f
+98005e00
+1f00f001
+e8c20000
+98005e00
+1f00f001
+6802443a
+98005e00
+1f00f001
+e8c20000
+98005e00
+1f00f001
+20407492
+1f00f1fc
+680244c7
+1fe25e00
+1f00f004
+18006c38
+18006c08
+2020741d
+4771c03c
+680344a0
+680b044f
+2034f446
+6803044f
+680b44a0
+18007008
+18425e00
+1f00f001
+184f5e00
+1ff07e00
+9de1de00
+1f00f001
+1fef5e00
+1f00f001
+18005e00
+18007e00
+6800c48e
+6808c485
+2434f456
+6800c495
+6808c48e
+6000c44a
+6008c44b
+18007000
+da40444a
+18007204
+ea220000
+ea4a0000
+9842de00
+1f00f001
+1a20a204
+1a40a404
+c200745b
+20407492
+1f00f1fc
+680244c7
+1fe25e00
+1f00f004
+18006c38
+18006c0c
+2040741d
+20407491
+18006c3a
+18006c08
+2020741d
+2f200600
+20608000
+18c27e00
+9f208a00
+18007e00
+e0a08000
+1f20f201
+2f200600
+20608000
+20207473
+18007000
+1f227e00
+203a747d
+e8c20000
+1f20f3fc
+98005e00
+1f00f001
+2f001e04
+20608000
+20207479
+18007008
+20207487
+18007004
+20207487
+18007000
+18007204
+e8c20000
+98005e00
+1f00f001
+c2007488
+20600000
+d8c0047c
+20207484
+18007204
+20207494
+18007000
+18007204
+18005e00
+1f00f001
+c2007493
+20600000
+1800700c
+18007204
+1de27e00
+e0a20000
+1f00f001
+c2007499
+20600000
+1800700c
+1a620a00
+1a40f201
+1f267c0f
+202174a4
+18007210
+1de27e00
+1f267c03
+202174ac
+e0a20000
+1f20f3fc
+20628000
+1f00f001
+202074a4
+e0a08000
+1fecfe00
+c20074ac
+20600000
+1800700c
+18007204
+e8c20000
+9de67c00
+24628000
+1f00f001
+c20074b2
+18007c00
+20600000
+68108050
+793ffe00
+60108050
+20600000
+68108050
+79207e00
+60108050
+20600000
+d8a00886
+3803ffff
+3807ffff
+380bffff
+380ffbff
+e0a48000
+3803ffff
+3807ffff
+380bffff
+380fffff
+e0a48000
+3803ffff
+3807ffff
+380bcfff
+380fffff
+e0a48000
+3803ffff
+3807ffff
+380bffef
+380fffff
+e0a48000
+3803ffff
+3807ffff
+380bffff
+380fffff
+e0a48000
+3803ffff
+38066c7f
+3808146b
+380f7bb3
+e0a48000
+3801feb8
+38050c12
+380ab722
+380e9fa6
+e0a48000
+3800e70f
+38056720
+3808519e
+380d9084
+e0a48000
+38031012
+380760bf
+380bf0af
+380c03d3
+e0a48000
+3803a188
+38043ad0
+380bcbf2
+380e43d9
+e0a48000
+3802b030
+38076a03
+38091188
+380de520
+e0a48000
+3803a11e
+3804fe5d
+3808dd57
+380dac93
+e0a48000
+380011ed
+380618c4
+38088da7
+380e57ff
+e0a48000
+3803192b
+38074641
+3809be0c
+380f66ad
+e0a48000
+38001f83
+38055a23
+380bf9b0
+380c3949
+e0a48000
+38013a51
+380553fd
+380b372a
+380cf1bb
+e0a48000
+3803ae85
+3805eed9
+38089e66
+380c01a8
+e0a40000
+20600000
+d8a0091e
+3803ffff
+3807ffff
+380bffff
+380fffff
+e0a48000
+3803ffff
+3804003f
+38080000
+380c0000
+e0a48000
+38000000
+38040000
+38081000
+380c0000
+e0a48000
+3803ff00
+3807ffff
+380bffcf
+380fffff
+e0a48000
+3803ffff
+3807ffff
+380bffff
+380c03ff
+e0a48000
+38000000
+38040000
+38080000
+380c0000
+e0a48000
+38010000
+38040000
+380bf000
+380fffff
+e0a48000
+380296ff
+38062630
+380b945d
+380fd284
+e0a48000
+380333a0
+38044b7a
+380837d8
+380fc9dc
+e0a48000
+3803a440
+3805b958
+380b8bce
+380d091f
+e0a48000
+3802e12c
+3805f47c
+380b56b1
+380efd47
+e0a48000
+38006837
+3806ed90
+3809ecec
+380dacc5
+e0a48000
+38023357
+38058af3
+3808f9e1
+380d29f0
+e0a48000
+3802e7eb
+3807e6e3
+380be1a7
+380d0b8b
+e0a48000
+38024fe3
+380420ef
+3809b5a6
+380cdc2f
+e0a48000
+38013860
+3806bd69
+3808391a
+380db222
+e0a48000
+20600000
+6800c65a
+243a757d
+20207a77
+4772403c
+6800c65a
+207a0000
+6800c5b1
+c1808000
+6800c4be
+207a0000
+6800c4c3
+c1018000
+68014682
+c280757b
+6800c4c0
+c0007a77
+20600000
+7044c000
+20600000
+4772c03c
+6800c65a
+203a612b
+20406124
+20407583
+2020766d
+58000000
+600409ae
+600209b6
+6003c65e
+20600000
+7009b001
+2020758d
+6800c5b1
+c000f68a
+20202a8c
+6800c5b1
+c000f590
+2020766d
+2040768a
+680089af
+247a0000
+7009ae03
+20600000
+204075b0
+da2009de
+d8a00866
+20407c79
+da2009be
+d8a00826
+20407c79
+da200826
+da4009be
+d8a00826
+20407be1
+da20093e
+da4009be
+d8a00846
+20407be1
+da200846
+da400826
+d8a00826
+20407c7d
+da200806
+da400826
+d8a00806
+20407c7d
+df200020
+da200866
+da400806
+20207f88
+da20097e
+d8a00806
+20407c79
+da20095e
+d8a00826
+20407c79
+da200826
+da40095e
+d8a00826
+20407be1
+da20093e
+da40095e
+d8a00846
+20407be1
+da200846
+da400826
+d8a00826
+20407c7d
+da200806
+da400826
+d8a00806
+20207c96
+204075e1
+da2009e6
+d8a00866
+204077a8
+da2009c6
+d8a00826
+204077a8
+da200826
+da4009c6
+d8a00826
+20407786
+da20089e
+da4009c6
+d8a00846
+20407786
+da200846
+da400826
+d8a00826
+20407755
+da200806
+da400826
+d8a00806
+20407755
+df200018
+da200866
+da400806
+20207f88
+da2008e6
+d8a00806
+204077a8
+da2008ce
+d8a00826
+204077a8
+da200826
+da4008ce
+d8a00826
+20407786
+da20089e
+da4008ce
+d8a00846
+20407786
+da200846
+da400826
+d8a00826
+20407755
+da200806
+da400826
+d8a00806
+20207758
+680089b2
+c0807615
+20407612
+d8a00a7e
+58000a2e
+e0a10000
+58004642
+e0a10000
+580009de
+e0a10000
+20207609
+d8a00a7e
+58000a3e
+e0a10000
+580009de
+e0a10000
+58004642
+e0a10000
+204079a0
+680089af
+c002760f
+7009b001
+7009ae05
+20600000
+7009af14
+2040758a
+202076d8
+d8a00a1e
+18000e08
+202076a2
+7009b001
+20600000
+4773403c
+d8a00727
+680340a0
+e0a30000
+68030040
+e0a30000
+6801c65e
+e0a18000
+20407a0d
+da200a4e
+da400a5e
+18000e04
+204076a7
+2420f631
+20407628
+70007d41
+202062f8
+680089af
+c004f62e
+7009ae0a
+7009b001
+70007c03
+20600000
+70007c03
+7009af15
+202076d8
+680089af
+c004f637
+7009ae00
+70007c04
+70007e05
+20600000
+70007c04
+7009af00
+20600000
+680089b3
+c000f63e
+7009af0a
+202076d8
+d8a00727
+68030040
+e0a30000
+680340a0
+e0a30000
+6801c65b
+e0a18000
+20407a24
+680089af
+c005764b
+7009ae0b
+7009b001
+20600000
+7009af0b
+7009b101
+20600000
+d8a00a7e
+68030040
+e0a30000
+680340a0
+e0a30000
+58000a2e
+e0a10000
+58000a3e
+e0a10000
+20207662
+7009ae0f
+d8a00a7e
+680340a0
+e0a30000
+68030040
+e0a30000
+58000a3e
+e0a10000
+58000a2e
+e0a10000
+d8a00727
+68030a7e
+e0a30000
+68030a84
+e0a30000
+204079d7
+7041bd01
+d8a041be
+d8c00a4e
+20407ebf
+202021c4
+4773c03c
+6800c5b1
+c1800000
+680089b2
+c1800000
+d8a04612
+18000e0b
+204076a2
+180a7e00
+1fe37e00
+e0a10000
+d8a006be
+d8c04612
+20407ebe
+d8a005e6
+d8c008ce
+20407ebc
+d8a00616
+20407ec5
+70061601
+20407a5d
+7009b201
+20600000
+d8a0462a
+d8c0062e
+20407ebc
+7045b101
+7009b200
+20600000
+4774403d
+680089b9
+c1800000
+680089b2
+c1800000
+d8a006be
+d8c04612
+20407ebe
+d8a005e6
+d8c009c6
+20407ebc
+d8a00616
+20407ec5
+70061601
+20407a5d
+7009b202
+20600000
+7009b301
+d8a00a06
+d8c0062e
+20407ebe
+7009b901
+7009b200
+20600000
+18e08fff
+24610000
+180a7e00
+e0a10000
+202076a2
+18e08fff
+242176b3
+ea220000
+1fe20400
+ea420000
+9842fe00
+2422f6b1
+1a20a204
+1a40a404
+202076a7
+7840fc00
+20600000
+7820fc00
+20600000
+4774c03d
+680089b0
+207a0000
+204062bc
+247a0000
+7009b000
+680089ae
+c001e1fd
+c002e21a
+c003e225
+c005e23a
+c0017588
+c00275f7
+c004f617
+c005763a
+c0067658
+20600000
+4775403d
+680089b1
+207a0000
+204062bc
+247a0000
+7009b100
+680089af
+c00961e0
+c009e1e5
+c001e1e9
+c0027602
+c00a61ed
+c003e1fb
+c005763a
+c005e239
+c004f617
+c00ae233
+20600000
+7009b101
+20600000
+7009b100
+20600000
+4775c03d
+6800c65a
+207a0000
+680089b2
+207a0000
+1fe0fe80
+600089b2
+c3838000
+680085e3
+203a76e7
+20207a68
+204078d3
+680089b2
+c000f684
+c001769b
+20600000
+1fe10e07
+1fe97e00
+98c08c00
+e8c08000
+afec0000
+20600000
+20407ebe
+20407ebe
+20207ebe
+e8c40000
+247a0000
+e8c40000
+247a0000
+e8c40000
+20600000
+ea220000
+98000400
+ea420000
+98467c00
+24628000
+1a20a204
+1a40a404
+c20076fb
+20600000
+18007206
+1a20a214
+1a40a414
+ea420000
+98000400
+ea220000
+98467e00
+24610000
+247a0000
+1a20a3fc
+1a40a5fc
+c2007707
+20600000
+18007206
+18002600
+ea220000
+98000400
+ea420000
+9840fe00
+9a60fe00
+e0a20000
+2feffe20
+7920a600
+1a20a204
+1a40a404
+c2007713
+20600000
+18007206
+18002600
+ea420000
+98000400
+ea220000
+98467e00
+9a667e00
+e0a20000
+2feffe20
+7920a600
+1a20a204
+1a40a404
+c2007721
+20600000
+18007206
+1a20a214
+18002600
+ea220000
+2feffe00
+7920a601
+1fe37e00
+2a6ffe00
+7920fe1f
+e2220000
+1a20a3fc
+1a632600
+c2007730
+20600000
+18007206
+18002600
+ea220000
+2feffe1f
+7920a601
+1fe3fe00
+2a6ffe00
+7920fe00
+e2220000
+1a20a204
+1a632600
+c200773d
+20600000
+2040773b
+2a6ffe00
+2020f751
+da400886
+1a222600
+1a20a3e8
+20407704
+24610000
+1a622200
+1a20a3e8
+da400886
+1a220a00
+2020771f
+20407711
+18a22200
+20207749
+2040771f
+2a6c0000
+20608000
+da400886
+18a0a3e8
+1a220a00
+20207711
+18a21600
+1a226000
+da400716
+1a420a00
+1a208c18
+e8c40000
+e0a40000
+e0a40000
+18007e00
+e0a40000
+19620a00
+20407755
+da400716
+1a420a00
+18007e00
+e0a40000
+1e008c20
+e8c40000
+e0a40000
+e0a40000
+19622200
+1a220a00
+20407755
+da400716
+1a420a00
+1e008c28
+e8c40000
+e0a40000
+e0a40000
+e0a40000
+19622200
+1a220a00
+20207755
+18007206
+e8c20000
+98005e00
+1f00f001
+c2007781
+20600000
+18a21600
+d8a006e6
+20407ec5
+d8a006e6
+1a220c00
+18007000
+20407780
+1a420c00
+20407780
+18002400
+18000400
+18002606
+e8a20000
+98002200
+1a427000
+1de27e00
+1a627000
+9deffe00
+9a20fe00
+9840fe00
+e0a20000
+1fef0400
+1a60a601
+2a61fe0c
+2420f792
+18427e00
+e0a20000
+18a08be8
+1a40a401
+2a41fe06
+2420f790
+da2006e6
+19620a00
+2020775f
+1a222400
+20207786
+1a226000
+1e022200
+ea208000
+2feffe00
+20608000
+2040772d
+ea408000
+2fec0000
+2020f7ba
+da200886
+1a420a00
+20407711
+ea408000
+9a60fe00
+e2408000
+1a40a5e8
+1a40a218
+18007207
+2040772f
+202077ab
+18a21600
+d8a00746
+20407ec5
+18007e00
+600206fe
+6002075e
+70074601
+d8a006e6
+20407ec5
+d8c00886
+d8a00716
+20407ebe
+1a220c00
+d8a0072e
+20407ebe
+d8c0072e
+204076f5
+203a77f6
+da20072e
+da400746
+204077aa
+da200716
+da4006e6
+204077aa
+da20072e
+da400716
+20407704
+202177e8
+da200716
+da40072e
+1a220a00
+2040771f
+da200746
+da4006e6
+1a420a00
+20407711
+ea208000
+9a60a600
+ea408000
+9a60fe00
+e2408000
+202077cd
+da20072e
+da400716
+1a220a00
+2040771f
+da2006e6
+da400746
+1a420a00
+20407711
+ea208000
+9a60a600
+ea408000
+9a60fe00
+e2408000
+202077cd
+d8a00746
+20407ec5
+680086fe
+60008746
+6000874e
+da200746
+da4006e6
+1a420a00
+20407755
+da200886
+da4006e6
+19620a00
+20207758
+da2006a6
+d8a0075e
+204077a8
+da20075e
+d8a00776
+204077a8
+da20089e
+da400776
+d8a00776
+20407786
+da200676
+d8a0075e
+204077a8
+d8c0075e
+d8a0072e
+20407ebe
+da20072e
+20407748
+da20075e
+da40072e
+d8a0075e
+20407755
+da20075e
+da400776
+d8a0075e
+20407755
+d8c00676
+d8a0072e
+20407ebe
+da20068e
+d8a00776
+204077a8
+da20072e
+20407748
+da20072e
+20407748
+da20072e
+da400776
+d8a0072e
+20407786
+da200776
+d8a00746
+204077a8
+da200746
+20407748
+da200746
+20407748
+da200746
+20407748
+d8c0068e
+d8a00776
+20407ebe
+da200776
+20407748
+da200776
+da4006a6
+d8a006a6
+20407786
+da20075e
+d8a00776
+204077a8
+da200776
+da40072e
+d8a00776
+20407758
+da200776
+da40072e
+d8a00676
+20407758
+da20072e
+da400676
+d8a00776
+20407758
+da200776
+da40075e
+d8a00776
+20407786
+da200776
+da400746
+d8a0068e
+20207758
+da200616
+d8a0078e
+204077a8
+da200676
+da40078e
+d8a00746
+20407786
+da200616
+da40078e
+d8a0078e
+20407786
+da20068e
+da40078e
+d8a0072e
+20407786
+da2006a6
+d8a0078e
+204077a8
+da2005e6
+da40078e
+d8a0075e
+20407786
+da2006a6
+da40078e
+d8a0078e
+20407786
+da2005fe
+da40078e
+d8a00776
+20407786
+da200746
+da40075e
+d8a0078e
+20407758
+da200746
+da40075e
+d8a00746
+20407755
+da20072e
+da400776
+d8a0075e
+20407758
+da20072e
+da400776
+d8a0072e
+20407755
+da20072e
+da40078e
+d8a0072e
+20407786
+da2006a6
+da400616
+d8a00776
+20407786
+da200776
+da40078e
+d8a006a6
+20407786
+da20078e
+d8a0078e
+204077a8
+da20078e
+da400746
+d8a00776
+20407786
+da20078e
+da40072e
+d8a0072e
+20407786
+da20075e
+d8a00676
+204077a8
+da200676
+da400776
+d8a00676
+20407758
+d8c00676
+d8a0078e
+20407ebe
+da20078e
+20407748
+da200776
+da40078e
+d8a00776
+20407758
+da200776
+da40075e
+d8a0075e
+20407786
+da20075e
+da40072e
+d8a0068e
+20407758
+da20068e
+da400886
+d8a0068e
+18002600
+6800868e
+2feffe00
+2040f711
+1a626000
+da20068e
+2040772d
+680086a5
+2e0ffe00
+7920fe07
+600086a5
+20600000
+680085e3
+1fe0ffff
+24610000
+600085e3
+680085e2
+205a7803
+680085e3
+d8c006be
+204076ec
+2020f8c0
+680085e2
+243a78ce
+20407854
+202078c0
+7005e200
+d8c005e6
+d8a00676
+204076f2
+202078c0
+da2006a6
+d8a00776
+204077be
+da200776
+d8a0072e
+204077a8
+da200676
+da40072e
+d8a0062e
+20407786
+da200776
+da40072e
+d8a0075e
+20407786
+da20068e
+da40075e
+d8a00646
+20207786
+e8c20000
+18002204
+18a08a03
+e0a08000
+1fecfe00
+18a08bfe
+1a20a3ff
+2422f8e8
+18a08a05
+c20078e5
+20600000
+18ebfe00
+99608c00
+e8c20000
+20600000
+18006010
+d96005e6
+1e008ff9
+204078f0
+98000400
+1e008ff0
+204078f0
+98408400
+1e008ffe
+204078f0
+1fee7e01
+98408400
+1e008ff1
+204078f0
+1fee7e00
+98408400
+1e0bfe00
+99608a00
+e0aa0000
+1e00e001
+2e01fe40
+2420f8f6
+20600000
+d8c008fe
+18007007
+e8c20000
+98005e00
+1f00f1ff
+2021790d
+20600000
+4776403d
+204078f4
+d8a006e6
+18007000
+1de27e00
+e0a20000
+1f00f001
+2f01fe08
+2420f916
+204074b9
+d9608700
+de0005e6
+18007240
+ee0a0000
+e9620000
+19609604
+1e00e004
+9840fe00
+18007007
+9de08400
+18007004
+1dee7e03
+98408400
+18007005
+1de27e00
+18007006
+9de2fe00
+18007004
+9de17e00
+18007006
+9de2fe00
+98408400
+18007007
+18425e00
+18007003
+1de27e00
+9840de00
+18007000
+1de27e00
+18007001
+9de10400
+9de1fe00
+18007002
+9de17e00
+98418400
+18007000
+1dee7e02
+9840fe00
+18007007
+9de0de00
+980efc00
+c200791f
+d8c006e6
+18007000
+e8c20000
+9de0de00
+1f00f001
+2f01fe08
+2420f948
+202074bd
+d8a00a3e
+18007007
+1de27e00
+e0a20000
+1f00f1ff
+20217950
+20600000
+d8a005e6
+18c08dfc
+1f262210
+e8c20000
+9842fe00
+e0a20000
+18c08df8
+c2007958
+1a227200
+18427e00
+e0a20000
+c200795f
+20600000
+20407967
+2040794e
+2020798d
+20407967
+2020798d
+d8c009de
+d8a005e6
+18007206
+20407a71
+d8c04642
+18007206
+20407a71
+d8c00a3e
+20407a70
+2040790b
+20407912
+d8c00a2e
+d8a005e6
+20207984
+d8c04642
+d8a005e6
+18007206
+20407a71
+d8c009de
+18007206
+20407a71
+d8c00a2e
+20407a70
+2040790b
+20407912
+d8c00a3e
+d8a005e6
+20407984
+2020798d
+20407a70
+58800000
+1fed7e00
+e0a20000
+18007205
+20407ec6
+58000280
+e0a20000
+20207912
+68020a3e
+da2003e8
+9a26fc00
+20407f86
+18077e00
+600209ba
+1807fe00
+da2003e8
+9a26fc00
+20407f86
+18077e00
+da2003e8
+9a2ffe00
+680a09ba
+9840fe00
+600209ba
+20600000
+70466400
+202079a2
+6800c662
+c081799e
+4776c03d
+58363636
+1fed0400
+18418436
+68010a7e
+1fe20c00
+18007204
+20407955
+2040790b
+20407912
+68010a80
+1fe20c00
+d8a005e6
+18007206
+20407a71
+68010a82
+1fe20c00
+18007206
+20407a71
+58800000
+e0a18000
+6800c664
+e0a08000
+18007e00
+e0a40000
+58000388
+e0a20000
+20407912
+2040794e
+d8c00a3e
+d8a00706
+20407ebd
+585c5c5c
+1fed0400
+1841845c
+68010a7e
+1fe20c00
+18007204
+20407955
+2040790b
+20407912
+d8c00726
+d8a005e6
+18007208
+20407a71
+58800000
+1fed7e00
+e0a20000
+20407ec5
+58000300
+e0a20000
+20407912
+2020794e
+58363636
+1fed0400
+18418436
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+68010a8a
+1fe20c00
+d8a005e6
+20407a70
+68010a8c
+1fe20c00
+20407a70
+5862746c
+1fed7e00
+1fe1fe6b
+e0a20000
+d8c00733
+18007203
+20407a71
+58800000
+1fed7e00
+e0a20000
+18007e00
+e0a40000
+58000380
+e0a20000
+20407912
+2040794e
+d8c00a3e
+d8a00706
+20407ebd
+585c5c5c
+1fed0400
+1841845c
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00726
+d8a005e6
+18007208
+20407a71
+58800000
+1fed7e00
+e0a20000
+20407ec5
+58000300
+e0a20000
+20407912
+2020794e
+6800c662
+c0817a1e
+4777403d
+58363636
+1fed0400
+18418436
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00a3e
+d8a005e6
+20407a70
+d8c00a2e
+20407a70
+20207a33
+58000000
+6002468a
+20207a0f
+58000000
+6002468a
+20207a26
+6800c662
+c0817a21
+58363636
+1fed0400
+18418436
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00a2e
+d8a005e6
+20407a70
+d8c00a3e
+20407a70
+58000000
+e0a40000
+e0a20000
+6802468a
+e0a20000
+18a20400
+70072680
+18420a00
+d8c00736
+20407a70
+20407912
+d8a005e6
+18007207
+20407ec6
+e0a20000
+580003f8
+e0a20000
+20407912
+2040794e
+d8c00a3e
+d8a00706
+20407ebd
+585c5c5c
+1fed0400
+1841845c
+d8c00a1e
+18007206
+20407955
+2040790b
+20407912
+d8c00726
+d8a005e6
+18007208
+20407a71
+58800000
+1fed7e00
+e0a20000
+20407ec5
+58000300
+e0a20000
+20407912
+2020794e
+7005e3c0
+680085e3
+207a0000
+1fe0ffff
+600085e3
+d8c006be
+204076ec
+2020fa5e
+d8c005e6
+d8a00676
+202076f2
+20407803
+680085e3
+1fe0ffff
+600085e3
+d8c006be
+204076ec
+20608000
+20207854
+18007204
+18c08dfc
+e8c20000
+e0a20000
+18c08df8
+c2007a72
+20600000
+4777c03d
+6800c4be
+203a5af0
+20405aec
+20407583
+20207a7d
+6800c4c3
+c1800000
+6800c4c0
+c1800000
+d8a045b2
+18000e0f
+204076a2
+180a7e00
+1fe37e00
+e0a10000
+d8a00766
+d8c045b2
+20407ebd
+d8a00646
+d8c0095e
+20407eb3
+d8a00686
+20407ed0
+70068601
+20407ac7
+7044c003
+20600000
+d8a045d2
+d8c006a6
+20407eb3
+7044c303
+7044c000
+20600000
+680089b9
+c1800000
+6800c4c0
+c1800000
+d8a00766
+d8c045b2
+20407ebd
+d8a00646
+d8c009be
+20407eb3
+d8a00686
+20407ed0
+70068601
+20407ac7
+7044c004
+20600000
+d8a009fe
+d8c006a6
+20407ebd
+7009b903
+7044c000
+20600000
+6800c4be
+207a0000
+6800c4c0
+207a0000
+1fe0fe80
+6000c4c0
+c3838000
+680105e3
+203a7ab9
+20207abf
+4778403e
+20407ad4
+6800c4c0
+c001fa93
+c0027aa9
+20600000
+20407ae6
+680105e3
+1fe0ffff
+600105e3
+d8c00766
+204076ec
+20608000
+20207b37
+4778c03e
+58000100
+600105e3
+680105e3
+207a0000
+1fe0ffff
+600105e3
+d8c00766
+204076ec
+2020faca
+d8c00646
+d8a00706
+20207eb2
+da200746
+d8a00846
+20407ba3
+da200846
+d8a007e6
+20407c79
+da200706
+da4007e6
+d8a006a6
+20407be1
+da200846
+da4007e6
+d8a00826
+20407be1
+da200726
+da400826
+d8a006c6
+20207be1
+da200746
+d8a00826
+20407c79
+da200826
+d8a00846
+20407c79
+da20093e
+da400846
+d8a00846
+20407be1
+da200706
+d8a00826
+20407c79
+d8c00826
+d8a007e6
+20407ebd
+da2007e6
+20407c80
+da200826
+da4007e6
+d8a00826
+20407c7d
+da200826
+da400846
+d8a00826
+20407c7d
+d8c00706
+d8a007e6
+20407ebd
+da200726
+d8a00846
+20407c79
+da2007e6
+20407c80
+da2007e6
+20407c80
+da2007e6
+da400846
+d8a007e6
+20407be1
+da200846
+d8a00806
+20407c79
+da200806
+20407c80
+da200806
+20407c80
+da200806
+20407c80
+d8c00726
+d8a00846
+20407ebd
+da200846
+20407c80
+da200846
+da400746
+d8a00746
+20407be1
+da200826
+d8a00846
+20407c79
+da200846
+da4007e6
+d8a00846
+20407c96
+da200846
+da4007e6
+d8a00706
+20407c96
+da2007e6
+da400706
+d8a00846
+20407c96
+da200846
+da400826
+d8a00846
+20407be1
+da200846
+da400806
+d8a00726
+20207c96
+da200686
+d8a00866
+20407c79
+da200706
+da400866
+d8a00806
+20407be1
+da200686
+da400866
+d8a00866
+20407be1
+da200726
+da400866
+d8a007e6
+20407be1
+da200746
+d8a00866
+20407c79
+da200646
+da400866
+d8a00826
+20407be1
+da200746
+da400866
+d8a00866
+20407be1
+da200666
+da400866
+d8a00846
+20407be1
+da400806
+da200826
+d8a00866
+20407c96
+da200806
+da400826
+d8a00806
+20407c7d
+da4007e6
+da200846
+d8a00826
+20407c96
+da2007e6
+da400846
+d8a007e6
+20407c7d
+da2007e6
+da400866
+d8a007e6
+20407be1
+da200746
+da400686
+d8a00846
+20407be1
+da200846
+da400866
+d8a00746
+20407be1
+da200866
+d8a00866
+20407c79
+da200866
+da400806
+d8a00846
+20407be1
+da200866
+da4007e6
+d8a007e6
+20407be1
+da200826
+d8a00706
+20407c79
+da200706
+da400846
+d8a00706
+20407c96
+d8c00706
+d8a00866
+20407ebd
+da200866
+20407c80
+da200846
+da400866
+d8a00846
+20407c96
+da200846
+da400826
+d8a00826
+20407be1
+da200826
+da4007e6
+d8a00726
+20407c96
+da200726
+da40091e
+d8a00726
+18002600
+68008726
+2feffe00
+2040fc7b
+1a626000
+da200726
+20407cab
+68008745
+2e0ffe00
+7920fe07
+60008745
+20600000
+18a21600
+d8a00806
+20407ed0
+18007e00
+60020826
+70080601
+d8a00786
+20407ed2
+d8c0091e
+d8a007c6
+20407ebd
+1a220c00
+d8a007e6
+20407ebd
+d8c007e6
+20407cb5
+203a7bda
+da2007e6
+da400806
+20407cb8
+da2007c6
+da400786
+20407cb8
+da2007e6
+da4007c6
+20407cb1
+20217bcc
+da2007c6
+da4007e6
+1a220a00
+20407ca9
+da200806
+da400786
+1a420a00
+20407c7b
+ea208000
+9a60a600
+ea408000
+9a60fe00
+e2408000
+20207bb1
+da2007e6
+da4007c6
+1a220a00
+20407ca9
+da200786
+da400806
+1a420a00
+20407c7b
+ea208000
+9a60a600
+ea408000
+9a60fe00
+e2408000
+20207bb1
+da200786
+19620a00
+20407c0a
+da20091e
+19622400
+19620a00
+20207c96
+18a21600
+18007000
+d8a00786
+20407ed2
+d8a00ad2
+20407ed2
+1a220c00
+700ad200
+58000000
+20407c73
+1a420c00
+20407c77
+18000e00
+d8a00786
+d8400ad2
+18e22400
+1a4bfe00
+9840a400
+18000400
+18002600
+e8a20000
+98002200
+ea420000
+1a627000
+9deffe00
+9a20fe00
+9840fe00
+e0a20000
+1fef0400
+1a60a601
+2a61fe08
+2420fbf5
+18427e00
+e0a20000
+18a08be0
+18e08e01
+28e1fe08
+2420fbef
+da200786
+19620a00
+20207c0a
+4779403e
+18a21600
+1a226000
+da4007c6
+1a420a00
+20407ecd
+e0a40000
+1a208c2c
+20407eb9
+20407eb5
+1a422200
+20407c80
+da4007c6
+1e022200
+19620a00
+20407c7d
+da4007c6
+1a420a00
+20407ecd
+e0a40000
+1e008c30
+20407ebf
+20407ecd
+1a422200
+20407c80
+da4007c6
+19622200
+1a220a00
+20407c7d
+da4007c6
+1a420a00
+1e008c20
+20407eb5
+20407ecd
+e0a40000
+1e008c38
+20407eb9
+19622200
+1a220a00
+20407c7d
+da4007c6
+1a420a00
+1e008c24
+20407eb5
+1e008c34
+20407eb5
+1e008c34
+20407eb6
+1e008c20
+20407eb6
+19622200
+1a220a00
+20407c7d
+da4007c6
+1a420a00
+1e008c2c
+20407eb5
+20407ecd
+e0a40000
+1e008c20
+20407eb6
+1e008c28
+20407eb6
+19622200
+1a220a00
+20407c96
+da4007c6
+1a420a00
+1e008c30
+20407eb9
+20407eb9
+18007e00
+e0a40000
+1e008c24
+20407eb6
+1e008c2c
+20407eb6
+19622200
+1a220a00
+20407c96
+da4007c6
+1a420a00
+1e008c34
+20407eb5
+1e008c20
+20407eb5
+20407ecd
+1e008c30
+20407eb6
+19622200
+1a220a00
+20407c96
+da4007c6
+1a420a00
+1e008c38
+20407eb9
+20407ecd
+1e008c24
+20407eb5
+20407ecd
+1e008c34
+20407eb6
+19622200
+1a220a00
+20207c96
+18007220
+d8a00ad2
+98a08a00
+20207f01
+18007208
+20207781
+1a222400
+20207be1
+18007208
+20207712
+20407c7b
+18a22200
+20207c81
+20407cae
+2a6ffe00
+2020fc8a
+da40091e
+1a222600
+1a20a3e0
+20407cb1
+24610000
+1a622200
+20207c92
+20407c92
+1a222600
+1a20a3e0
+da40091e
+20407cb1
+24610000
+1a622200
+20207c92
+1a20a3e0
+da40091e
+1a220a00
+20207ca9
+20407ca9
+2020fca0
+18a0a3e0
+da40091e
+20407cb1
+24610000
+da40091e
+18a0a3e0
+1a220a00
+20207ca9
+18a0a3e0
+da40091e
+1a220a00
+20407c7b
+20608000
+18a0a3e0
+da40091e
+1a220a00
+20207c7b
+18007208
+20207720
+18007208
+1a20a21c
+2020772f
+18007208
+18002600
+2020773d
+18007208
+1a20a21c
+1a40a41c
+20207707
+e8c40000
+247a0000
+202076f5
+1a226000
+1e022200
+ea208000
+2feffe00
+20608000
+20407cab
+ea408000
+2fec0000
+2020fcc8
+da20091e
+1a420a00
+20407c7b
+ea408000
+9a60fe00
+e2408000
+1a40a5e0
+1a40a220
+18007209
+2040772f
+20207cb9
+20402c65
+20758000
+20407cd3
+20407d75
+20207d08
+20407d29
+20207d64
+6800c686
+c17f8000
+98000400
+2040680e
+6808c686
+20406825
+20000064
+6808c686
+204067fb
+20207cdd
+4779c03e
+6800c686
+c17f8000
+1fe20400
+2040681d
+2420fcef
+20407cf9
+68014682
+79207e0c
+60014682
+6800c679
+c1000000
+70467900
+6800c685
+6000c678
+20407d00
+700a992c
+20207d86
+68014682
+793ffe0c
+60014682
+6800c679
+c1008000
+70467901
+70467800
+20407d02
+700a992d
+20207d86
+6800c678
+207a0000
+1fe0ffff
+6000c678
+247a0000
+700a9910
+20207d86
+d8e00007
+20202c32
+d8e00007
+20202c36
+6801421b
+1a2fa40b
+9a40a400
+20600000
+6800c21a
+207a0000
+1fe27200
+6801421b
+1fe22400
+1a40a602
+ea688000
+2040680e
+20407d32
+1a40a40b
+c2007d0d
+20600000
+20407d04
+58000002
+e2408000
+20407d5e
+20207d35
+20407d04
+58000003
+e2408000
+20407d5e
+20207d32
+20407d04
+58000001
+e2408000
+580000ff
+e0a08000
+20207d32
+20407d04
+df20000b
+1a620c00
+1a420a00
+20207ef4
+6800c21a
+207a0000
+da200000
+20407d38
+1a20a201
+6800c21a
+9a267c00
+20628000
+20207d2c
+1a40a602
+ea688000
+20206825
+1a40a602
+ea688000
+20206829
+1a208e0b
+20407f16
+247a0000
+20407d04
+ea408000
+c0017d35
+c001fd32
+c0007d32
+c002fd4c
+20407d35
+1a40a607
+20407e7c
+ea610000
+20407f9c
+20407e8c
+58000005
+e2408000
+1a40a603
+ea610000
+20207d5c
+20407d32
+1a40a609
+20407e7c
+ea610000
+20407f9c
+20407e8c
+1a40a601
+ea608000
+c07ffd58
+1fe0ffff
+e2608000
+203a7d19
+58000004
+e2408000
+1a40a605
+ea610000
+1a208e0b
+20207f08
+58000000
+20207d5c
+58001000
+1ff07e00
+9a40a400
+20600000
+477a403e
+da200000
+680a467a
+1c422400
+1a427e00
+98467c00
+24417d60
+1a427e00
+184084a0
+184084a0
+98467c00
+24217d78
+1a20a201
+1a217e0f
+243a7d6b
+da200000
+20407d7f
+1c427e00
+6002467a
+20600000
+477ac03e
+1a227e00
+207a0000
+18408560
+18408560
+793f841c
+600a467a
+2020335f
+70466601
+6800c667
+243a7d81
+20600000
+70466600
+20600000
+477b403e
+20407d80
+1a227e00
+60020a91
+da204668
+20407fb8
+68020a91
+1fe22200
+20207d84
+477bc03e
+20407d80
+1a227e00
+60020a91
+da204670
+20407fb8
+68020a91
+1fe22200
+20207d84
+58000000
+60044670
+60044668
+20600000
+477c403f
+6800c1ce
+247a0000
+da204670
+20407fd0
+207a0000
+700a9000
+20407da7
+68008a90
+203a7d9c
+20600000
+20407d80
+da204670
+20407fc4
+1fe20400
+20407d84
+477cc03f
+18427e00
+207a0000
+c000fddd
+c0017de2
+c001fde8
+c003fded
+c0047dee
+c004fdef
+c005fdf2
+c0067df3
+c006fdf4
+c0077dfa
+c007fdff
+c0087e05
+c009fe0f
+c00a7e11
+c00afe13
+c00b7e15
+c00bfe18
+c00c7e1a
+c00cfe1d
+c00dfe25
+c00f7e2f
+60008a99
+477d403f
+204062bc
+243a7ddb
+68008a99
+c584fdd6
+c0027dea
+c002cd17
+c0034d26
+c0057df0
+c008fe0a
+c0097e0e
+c00efe26
+c00fe7cc
+c01067d0
+c010fe31
+c012e70b
+20600000
+60008a99
+20402252
+2022fddb
+2040225a
+24628000
+700a9001
+20207d8f
+68014682
+79207e06
+60014682
+70409303
+20600000
+70468000
+70409300
+68014682
+793ffe06
+60014682
+20600000
+7041ce05
+20600000
+70007c07
+7004ca13
+20600000
+20600000
+20600000
+20600000
+7004d402
+20204d0a
+20600000
+20600000
+70436e01
+70448400
+68014682
+79207e0b
+60014682
+20600000
+68014682
+793ffe0b
+60014682
+70436e00
+20600000
+70436e01
+70448401
+68014682
+79207e0b
+60014682
+20600000
+68014682
+793ffe0b
+60014682
+70436e00
+20600000
+58000014
+6001046d
+600144ba
+20205c92
+20205abf
+da200000
+20207d19
+da200000
+20207d14
+da200000
+20207d1e
+70436901
+7041ce1b
+20600000
+70436901
+20600000
+70436900
+7041ce00
+20600000
+680141eb
+20407f9c
+6800c686
+c07ffe23
+1fe20400
+204067fb
+20407d98
+20202b1f
+20205b02
+70007c34
+79200003
+24748000
+70455b00
+70007c13
+6800816d
+793ffe02
+6000816d
+20600000
+18000e03
+20207f07
+204062f8
+70007d41
+20205f9d
+6800c682
+c4060000
+c4038000
+20207e2f
+68014218
+1fe08a02
+58000000
+e0a18000
+20600000
+20407fe9
+20407e69
+207a0000
+68014218
+1fe0a402
+ea488000
+18408401
+e2488000
+efe88000
+18427200
+1fe0a404
+ea408000
+984ffe00
+98c08a00
+1a220c00
+20407f01
+20407e6d
+1fe0ffff
+ea488000
+18408401
+98410400
+e2488000
+20207fe7
+20407fe9
+20407e65
+207a0000
+68014218
+1fe0a402
+ea488000
+184085ff
+e2488000
+efe88000
+18427200
+1fe0a403
+ea408000
+984ffe00
+98c08c00
+18c08c01
+1a220a00
+20207e4c
+68014218
+1fe08c02
+e8c08000
+20600000
+20407e6d
+e8c88000
+98467e00
+20600000
+68014218
+1fe08c01
+e8c08000
+20600000
+1f267c00
+20628000
+1fe37e00
+c2007e73
+20600000
+18007e01
+1f267c00
+20628000
+1fe3fe00
+c2007e79
+20600000
+18a27e00
+60010abb
+600c0aa2
+19627e00
+60020aaa
+20407e85
+18c27e00
+60010ab9
+20600000
+1a227e00
+60020aae
+1a427e00
+60020ab2
+1a627e00
+60018ab6
+20600000
+680c0aa2
+68020aaa
+98001600
+20407e95
+68010abb
+98000a00
+68010ab9
+98000c00
+20600000
+68020aae
+98002200
+68020ab2
+98002400
+68018ab6
+98002600
+20600000
+68010abb
+1fe20a00
+20600000
+68010ab9
+1fe20c00
+20600000
+18a27e00
+60010abb
+20600000
+18c27e00
+60010ab9
+20600000
+18a27e00
+60010a97
+18c27e00
+60010a95
+20600000
+68010a97
+1fe20a00
+68010a95
+1fe20c00
+20600000
+20407ebd
+20407ebd
+20207ebd
+20407eb9
+e8c20000
+e0a20000
+20600000
+e8c40000
+e0a40000
+20600000
+20407ebf
+20407eb9
+20407eb9
+20407eb9
+20207eb9
+df20000a
+20002ee0
+c2007ec2
+20600000
+18007203
+18007e00
+e0a40000
+c2007ec7
+20600000
+18007e00
+e0a40000
+20600000
+18007e00
+e0a20000
+20600000
+18007204
+20207ec6
+18007208
+20207ec6
+1f227e00
+207a0000
+58000000
+e0a08000
+c2007ed7
+20600000
+df200020
+d8a00ac2
+20207ed4
+ea620000
+ea2a0000
+9842fe00
+e0a20000
+1a20a204
+1a60a604
+c2007edd
+20600000
+477dc03f
+1f227e00
+1fe67c01
+20610000
+9a20a400
+1a40a5ff
+1f237200
+ea288000
+ea408000
+e2208000
+e2488000
+1a40a5ff
+1a20a201
+c2007eec
+20600000
+1f227e00
+207a0000
+1f20f3f8
+20417eb9
+20628000
+20217ef6
+1f20f208
+1f20f3fc
+20417eb6
+20628000
+20217efb
+1f20f204
+20207f01
+1f227e00
+207a0000
+e8c08000
+e0a08000
+c2007f03
+20600000
+58000000
+1c430400
+600a4094
+d8a0419d
+98000400
+18e3fe00
+98a08a00
+e0a90000
+477e403f
+20600000
+d9600800
+19701600
+9960fe00
+20600000
+d8e00000
+477ec03f
+680a4094
+1c437e00
+60024094
+98467c00
+24417f11
+98461600
+19620400
+d8c0419d
+18c20a00
+df200010
+e8c10000
+98467e00
+20217f25
+18007e00
+e0a10000
+c2007f21
+d8c0419d
+18e3fe00
+98c08c00
+e8c10000
+20600000
+98408400
+18427200
+58000ea6
+9f267e00
+20610000
+1fe67e00
+18510400
+18408401
+18500400
+98418400
+20600000
+20407f39
+20207f43
+78547c00
+98467e00
+20217f3e
+78347c00
+1fe67e00
+c4078000
+d85f0ea6
+9840fe00
+793ffe40
+20600000
+98000c00
+1ff17e00
+d8400ea6
+984ffe00
+98c0fe00
+20600000
+1fed7e00
+1ff27e00
+6809c16f
+9846fc00
+20407f86
+18078400
+20600000
+d8400ea6
+9846fc00
+20407f86
+1807fe00
+1ff07e00
+18070400
+98418400
+20600000
+d8400000
+18422600
+e8608000
+20407f64
+1a620400
+20407f95
+da40000a
+9a4ffe00
+9840fe00
+1fe20400
+c2007f59
+20600000
+d840003a
+98467c00
+24217f6d
+d8400061
+98467c00
+20217f70
+d8400037
+98467e00
+20600000
+d8400030
+98467e00
+20600000
+d8400057
+98467e00
+20600000
+18426000
+580001ff
+18002400
+1fe92200
+1a232200
+9a22a200
+2a2ffe00
+7920fe09
+18430400
+2feffe00
+79208407
+1fe37e00
+1a40a401
+2a400e00
+2420ff76
+e0a88000
+c2007f76
+1e020400
+20600000
+207a8000
+20207f86
+ea208000
+ea488000
+98467c00
+24628000
+1a20a201
+1a40a401
+c2007f88
+18007c00
+20600000
+98467c00
+24610000
+18427e00
+20600000
+9840fe00
+98460400
+98467e00
+20600000
+df200200
+d8a04000
+20207ec6
+207a0000
+1fe27a00
+6811010e
+243a7f9e
+20600000
+70820301
+20600000
+60110205
+68108203
+79207e04
+60108203
+20600000
+60110207
+68108203
+79207e06
+60108203
+20600000
+60110205
+70820330
+20600000
+68108043
+793ffe04
+60108043
+20600000
+6811010e
+d8400200
+98467c00
+20600000
+477f403f
+ea2c0000
+18417eff
+243a7fbe
+184cfe00
+e2240000
+1a20a207
+ea208000
+243a2a8c
+68008a99
+e2208000
+20600000
+477fc03f
+df200008
+ea240000
+207a0000
+ea208000
+243a7fcd
+1a20a201
+c2007fc8
+20202a8c
+d8400000
+e2288000
+20600000
+ea240000
+20600000
+ea208000
+20600000
+ea210000
+20600000
+d8400000
+68008006
+c2007fd7
+18408401
+c2007fd7
+18427e00
+20600000
+98467c00
+24610000
+18427e00
+20600000
+18007dff
+20600000
+18007c01
+20600000
+18007c00
+20600000
+78347c00
+20600000
+78547c00
+20600000
+78367c00
+20600000
+78567c00
+20600000
+58000001
+20600000
+58000000
+20600000
+1f227e00
+207a0000
+18c27e00
+9f20fe00
+1fe0ffff
+1fe20c00
+e8c08000
+18c08dfe
+e0a08000
+c2007ff9
+20600000
+c000001f
+c0008004
+20600000
+2040026b
+24740000
+20400019
+68014fc4
+1fe0fe01
+60014fc4
+68094fc6
+98467c00
+2042800e
+2020009c
+704fc300
+58000000
+60014fc4
+58000019
+60014fc6
+704ebe00
+6800cea9
+6000cea8
+20600000
+6800ceaa
+20200015
+6800cebe
+1fe0fe01
+6000cebe
+c0020017
+c0028013
+20600000
+6800800e
+1fe0fe01
+6000800e
+20402435
+7920002c
+204022f2
+202c002a
+793f802c
+20402455
+243a0023
+202020fc
+793f802c
+2020215f
+c0080004
+c0088019
+20600000
+7049e300
+7041e30e
+204041e7
+68014208
+c283800e
+c28033a9
+c2808012
+c2810015
+c2818015
+202042b0
+204041c1
+68014208
+c2850446
+202041f7
+c2828015
+c2818015
+202042b0
+68014682
+c28642b0
+204033a9
+202033a7
+68010264
+1fe20c00
+e8c08000
+6000ccdd
+1fe1040f
+1ff1fe00
+c0038022
+c0008029
+20204d39
+20404d53
+704cde00
+6800ccdd
+2feffe00
+20608000
+704cde01
+20600000
+18427e00
+c0028412
+20204d41
+c010001f
+c010802c
+c0110005
+20600000
+204002a3
+6800c720
+c00101b5
+c07f81b5
+204004f6
+6800c210
+c019800e
+c01a0011
+202002a0
+680341d0
+203a33eb
+20204274
+704d4501
+7047a101
+d840000a
+6800cd3e
+c07f8017
+680946a8
+600946ae
+20403418
+204002a6
+58000004
+e0c08000
+d8c04390
+204005ba
+20207df4
+68008048
+c0420023
+c0418026
+2020603f
+20400029
+68008048
+20206099
+20400029
+68008048
+2020610d
+6800c65a
+203a612b
+20206124
+18007e02
+20406298
+68008049
+e0a08000
+6000ccd7
+204062a7
+6800ccd7
+c0170035
+20206051
+6800ccda
+207a0000
+704cda00
+6800ccdc
+c1810000
+704cdb01
+1c427e00
+600204e9
+20600000
+c0180003
+20600000
+204062bc
+247a0000
+68008055
+207a0000
+c0020025
+c008000a
+20206320
+6800c55b
+c1000000
+c000800e
+2020635f
+20748000
+6800816d
+c2800012
+20206399
+6800ccdc
+c000e39d
+6800c1bd
+203a63a9
+680084d1
+c4018000
+c4010000
+6800ccdb
+207a0000
+704cdb00
+680204e9
+d8400014
+98408400
+1c427e00
+98467c00
+24210023
+20206349
+704cdb01
+20600000
+7049e414
+2020636f
+c0200006
+c0208018
+c0210025
+c021802b
+20600000
+2040000e
+2020557d
+6800c7c7
+6000c172
+7047c600
+20600000
+7047c601
+20600000
+6800c3d6
+1fe67c0c
+2421000c
+6800c3d8
+6808c7c7
+98467c00
+20210008
+6800c3d8
+6000c172
+2020000a
+6800843f
+c4030000
+2040001d
+24740000
+202055a0
+78347c00
+6800845a
+1ff1fe00
+c1878000
+68008460
+1ff1fe00
+c1800000
+20207fe9
+6800c7a1
+247a0000
+68008478
+1fe67e1a
+24628000
+20203d60
+204033af
+204026e9
+700a9902
+20407d86
+20405cf7
+20404d6b
+2020246e
+c0280003
+20600000
+704d4500
+204002a3
+70472001
+70479e00
+68014682
+c2858013
+680246d3
+c30c0013
+204005b3
+680947c4
+18408401
+600947c4
+600944a1
+204003e2
+180a7e00
+6000c4a0
+6801cd3f
+6001c4a3
+204002ad
+20403418
+68014687
+600146ac
+70016d06
+58000000
+600146b0
+600146ae
+d8e00007
+204043ce
+204043ca
+6800c092
+2feffe01
+20408027
+6800c092
+2feffe00
+2040fddd
+202004fb
+7047a100
+204002a6
+58000005
+e0c08000
+d8c04ceb
+204005ba
+20207df4
+c0300004
+c0308029
+20600000
+793f8026
+6800cd24
+1fe17e01
+245a0020
+205a001d
+6800ce93
+c1ff8000
+58000000
+60014eb0
+204001bb
+200007d0
+6800ceb0
+c005019a
+20400182
+242c0024
+24378024
+79200026
+58000000
+60014eb0
+6000cd26
+60014d24
+700a993c
+20407d86
+2040017f
+2020032a
+204002a3
+6802477b
+20200022
+7041de20
+68024d1e
+204001da
+2020013a
+68014eb0
+1fe0fe01
+60014eb0
+2040013a
+2020000e
+2040042a
+68014d24
+243a003b
+704fc300
+204002a3
+204001c4
+7041bd00
+204000c5
+202004c0
+6800ce8b
+243a019a
+704e8b01
+6800c241
+c2810038
+202001b8
+58000320
+60014d24
+20200004
+1fe0ffff
+60014d24
+203a0032
+20200004
+c0380004
+c0388034
+20600000
+793f8026
+20400024
+204001bb
+200007d0
+6800ceb1
+c050019a
+20400182
+242c001a
+2437801a
+204001a9
+204002a3
+68024eab
+680a4e8f
+98467c00
+20228030
+79200026
+58000000
+60014eb0
+700a993c
+20407d86
+2040017f
+2020032a
+6800ce8b
+1fe0fe01
+6000ce8b
+1fe67c03
+20210007
+704e8b00
+68014eb0
+1fe0fe01
+60014eb0
+20200007
+58000000
+60014eb0
+6000ce8b
+60014d24
+704e8402
+7041de04
+704e8200
+704e8d4e
+68024e8f
+202001da
+20400024
+20200007
+79200026
+20400024
+704e9304
+20600000
+204001c4
+2040042a
+d8e00003
+204043ce
+58000000
+600146ae
+6000c6b4
+60014d24
+60014eb0
+204042ca
+20200030
+680240a0
+60024eba
+20403e6e
+204000d6
+6808cd17
+2040680e
+20403e1e
+2040001e
+580047c8
+600144bc
+58000000
+60014154
+7046f600
+58001802
+600140bd
+204068a8
+20403e54
+20405810
+20405839
+2040582c
+20405818
+2040038e
+20400325
+204002ee
+6801c700
+9a40fe00
+20406562
+204002e0
+20600000
+204074b9
+d8c08c00
+d8a04a51
+df20010b
+20407f01
+d8c04d9c
+df20002d
+20407f01
+d8c08d3f
+df200032
+20407f01
+d8c04de2
+df20000c
+20407f01
+d8c08d71
+df200109
+20407f01
+704a6800
+704a6066
+704b1474
+704b1078
+704b0e7a
+5800401f
+60014baf
+58006d04
+60014c18
+580016b0
+60014c1e
+20200660
+c0480005
+c0488023
+c0490033
+20600000
+6800ce88
+c000ffe7
+6800ce93
+c002000d
+c0008010
+c0010013
+c0018016
+20202a8c
+704e9301
+704d26fa
+20200005
+704e9311
+70119eaa
+20200018
+704e9312
+70119e55
+20200018
+704e9313
+70119e22
+6800ce84
+1fe17e07
+6000919f
+68024eba
+600211a0
+7011a400
+da20119e
+d8400007
+204001c8
+2040014f
+20207fe7
+6800ce93
+c17f8000
+c0088029
+c009002b
+c009802d
+20600000
+704e9302
+20200113
+704e9303
+20200113
+704e93ff
+700a9939
+20407d86
+68024e63
+204001da
+20200113
+2040032a
+70478b01
+d8e00003
+204043d2
+58000000
+60014d24
+7046a700
+2040405d
+204002a3
+68024eab
+6002477b
+20404366
+202003dd
+c0508006
+c051001b
+c0518014
+c0520025
+20600000
+68014509
+c1000000
+68008441
+1feb7e00
+1fe67c0c
+20210012
+58000009
+60014496
+60014498
+2040040a
+7047c601
+20600000
+704d4801
+2020061d
+68014682
+c3860000
+c3830000
+c3858000
+680246d3
+c3828000
+202033a7
+704d3d00
+58000007
+60014496
+60014498
+7047c600
+70479e00
+2040036f
+20405816
+204003dd
+202041d9
+78347c00
+68120138
+79347e1a
+6012004c
+20402c21
+204074bd
+204003dd
+20403e9f
+204000c5
+6800c720
+1fe67c02
+2042859a
+2040031d
+68108081
+1fe17ef7
+60108081
+6810807f
+79207e00
+6010807f
+20600000
+c0588007
+c059000d
+c0598012
+c05a0019
+c05a801e
+20600000
+6800c9e3
+c1010000
+1fe0fe01
+6000c9e3
+7041e312
+2020340e
+6800c9e3
+c1810000
+7049e300
+7041e30e
+2020340e
+6800c7a1
+c0008015
+20200017
+2040040a
+7046c605
+d8e00001
+202041b9
+704cda00
+704cdc00
+704ce500
+204003dd
+202041d9
+58000001
+60030040
+70018533
+704d3eff
+204042fb
+704721ff
+202003dd
+0000aba3
Index: XZR_3MODE_2h_PB_WIN_D_NEW/output/sched.rom
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/sched.rom	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/output/sched.rom	(working copy)
@@ -0,0 +1,1237 @@
+
+mem_lpm_config:8f 1c ce	#-1khz
+mem_lpm_xtalcnt:00 0a 0b ef 07
+mem_lpm_hibernate_switch:00
+mem_gpio_wakeup_low:00 00 00 00 00 00 00 00
+#mem_fcomp_mul:02
+#mem_fcomp_div:24
+mem_iscan_window:12 00
+mem_iscan_interval:00 02
+mem_pscan_window:12 00
+mem_pscan_interval:00 02
+mem_inq_window:20 00
+mem_page_window:20 00
+mem_page_to:00 40
+mem_rx_window_init:80 04
+mem_rx_window_sniff:00 08
+
+mem_seqi:00
+
+
+
+mem_tx_power:00#0dbm
+mem_rf_init_data_new:
+# tx power
+4b ba
+55 d0
+56 e0
+57 88
+58 6c
+59 10
+#xtal 16M
+68 e6
+ff
+mem_rf_init_ptr:mem_rf_init_data_new
+
+
+
+mem_patch00:06
+mem_patch03:08
+mem_patch04:40
+mem_patch09:05
+mem_patch0a:02
+mem_patch0b:02
+mem_patch10:20
+mem_patch11:06
+mem_patch14:82
+mem_patch15:20
+mem_patch16:06
+mem_patch18:10
+mem_patch19:08
+mem_patch1c:48
+mem_patch1d:1e
+mem_patch20:20
+mem_patch27:02
+mem_patch28:08
+mem_patch29:04
+mem_patch2a:80
+mem_patch2b:02
+mem_patch2c:c8
+mem_patch2d:04
+mem_patch2e:80
+mem_patch30:05
+mem_patch31:31
+mem_patch3f:04
+
+
+#debug
+#mem_patch2f:40
+#mem_patch37:40
+#mem_patch3e:c0
+
+
+mem_device_option:43
+mem_lpm_mode:01
+mem_lpm_mult:20
+mem_lpm_mult_init:20
+#mem_lpm_interval:00 00
+
+mem_mouse_function_enable:
+#bit0 MOUSE_ENABLE_USB
+#bit1 MOUSE_ENABLE_24G
+#bit2 MOUSE_ENABLE_SPI2
+#bit3 MOUSE_ENABLE_FLASH
+#bit4 MOUSE_ENABLE_EEPROM
+#bit5 MOUSE_ENABLE_STATUE_UP_THREE_LED
+#bit6 MOUSE_ENABLE_STATUE_UP
+#bit7 MOUSE_ENABLE_DPI_LED_BLINK
+0a
+#bit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+#bit1 MOUSE_ENABLE_2K_EEPROM
+#bit2 MOUSE_ENABLE_ADC
+#bit3 MOUSE_ENABLE_INIT_DELAY
+#bit4 MOUSE_ENABLE_DISCOVERY_SENSOR_LED
+#bit5 MOUSE_ENABLE_AUTO_24G_PARING
+#bit6 MOUSE_ENABLE_WAKEUP_FROM_POWER
+#bit7 MOUSE_ENABLE_GPIO_CONTROL_ADC_SENSOR
+45
+
+mem_app_connection_options:06
+mem_lap:20 51 17 01 20 20
+mem_local_name_length:
+'BT3.0 Mouse
+mem_sniff_param_interval:
+0e 00 
+01 00 ##mem_sniff_param_attempt:01 00
+02##mem_sniff_param_timeout:00 00
+
+
+mem_unsniff2sniff_timer:0a
+mem_ssp_mode_flag:03
+mem_ssp_enable:01
+##mem_all_uuid_16bits:
+##06
+##03#Type: Complete list of 16-bit UUIDs
+##0011 0100 1002 1124  1200  0001
+mem_all_uuid_128bits:00
+mem_ptt:00
+
+
+mem_sp_iocap_local:03 00 04
+mem_ui_profile_supported:01
+mem_eir_enable:01
+
+mem_le_adv_data_len:1f
+mem_le_adv_data:
+#flag 
+02 01 05
+
+#uuid
+03 03 12 18
+
+#appearance
+03 19 c2 03
+
+mem_le_adv_swift_pair:
+#microsoft swift pair
+06 ff 06 00 03 00 80
+#name
+'\09BT5.0 Mouse
+
+mem_le_scan_data_len:1f
+mem_le_scan_data:
+#name
+'\09BT5.0 Mouse
+
+
+#max 20bytes, att list data rom limits
+mem_le_name_len:
+'BT5.0 Mouse
+
+
+mem_le_interval_min:
+07 00 #min interval
+07 00 #max interval
+20 00 #latency
+2c 01 #timeout
+
+
+mem_le_adv_interval:00 00
+mem_le_adv_type:00 
+mem_le_adv_own_addr_type:00
+mem_le_adv_channel_map:07 
+
+mem_le_lap:8e b1 3a 0e 8e ed
+
+mem_le_transmit_window:50
+
+mem_le_notify_handle:19 00
+mem_le_pairing_handle:29 00
+
+
+mem_discovery_timeout:b0 04#2min
+mem_mouse_direct_timeout:96 00#15s
+mem_mouse_no_data_timeout:70 17#10min
+
+mem_flash_ncs_gpio:0a
+mem_spi_ncs_gpio:ff
+mem_ui_button_gpio:ff
+mem_ui_button_timeout:1e
+mem_bt_ui_button_timeout:01
+
+mem_device_number:02 #max device number
+mem_24g_device_number:02 #devie 2 :24g mode
+mem_adc_config_flag:00 #0 vinlpm 1 hvin 2 gpio
+mem_adc_channel:32 #gpio5
+mem_mouse_vdd_full_vol:72 01#3.7V
+29 01#mem_mouse_vdd_empty_vol:5a 00# 3.0V
+4a 01#mem_mouse_vdd_low_vol:64 00  #3.3v
+mem_adc_read_timer:0a
+
+mem_config_sensor_type:00
+02 #mem_config_sensor_motion:02
+06 #mem_lbutton_gpio:04
+14 #mem_rbutton_gpio:1b
+08 #mem_mbutton_gpio:17
+06 #mem_bk_button_gpio:ff
+08 #mem_fw_button_gpio:ff
+14 #mem_dpi_button_gpio:06
+1b #mem_whee_a_data_gpio:02
+1c #mem_whee_b_data_gpio:03
+ff #mem_whee_ta_data_gpio:ff
+ff #mem_whee_tb_data_gpio:ff
+1d #mem_config_bt_button_gpio:ff
+1d #mem_config_select_device_button_gpio:ff
+ff #mem_config_paraing_led_gpio:ff
+ff #mem_config_low_voltage_alarm_gpio:08
+ff #mem_config_device1_led_gpio:08
+ff #mem_config_device2_led_gpio:ff
+ff #mem_config_device3_led_gpio:ff
+ff #mem_sensor_data_gpio:18
+ff #mem_dpi_led_gpio:08
+30 #mem_config_function_enable:04
+00 #mem_config_sensor_angle:00
+ff #mem_select_sensor_angle_gpio:ff
+ff #mem_select_adc_gpio:ff
+
+mem_eeprom_wp_gpio:ff
+mem_sensor_reset_gpio:ff
+mem_sensor_squal_reg:07# 07:3205         	06:3610
+mem_usb_offline_check_gpio:ff
+#mem_wire_usb_interval:19 #128
+
+#mem_config_function_enable:
+#bit0 ENABLE_BT_DISCOVERY_BY_GPIO_LED
+#bit1 ENABLE_MODE_LED
+#bit2 ENABLE_LOW_VOLTAGE_LED
+#bit3 ENABLE_DEVICE_LED
+#bit4 ENABLE_BT_BUTTON
+#bit5 ENABLE_SELECT_DEVICE_BY_GPIO_BUTTON
+#bit6 ENABLE_SELECT_DEVICE_BY_SWITCH
+#bit7 ENABLE_SENSOR_MOTION_PIN
+#30
+
+mem_mouse_dpi_seting:
+01##mem_320x_dpi_1
+02##mem_320x_dpi_2
+03##mem_320x_dpi_3
+04##mem_320x_dpi_4
+
+#15##mem_3212_dpi_1#800
+#1a##mem_3212_dpi_2#1000
+#2a##mem_3212_dpi_3#1600
+#3f##mem_3212_dpi_4#2400
+
+#04##mem_3610_dpi_1
+#05##mem_3610_dpi_2
+#07##mem_3610_dpi_3
+#08##mem_3610_dpi_4
+
+mem_mouse_3065xy_dpi_seting:
+00
+01
+02
+03
+
+#mem_sensor_8650_init:
+#09 5a
+#ff 27
+#ab 40
+#be d1
+#a0 41
+#a1 41
+#a5 84
+#a7 ff
+#b5 d0
+#b6 00
+#ff 00
+#09 00
+#ff
+
+mem_sensor_ka8_init:
+09 5a
+5b 9a
+0d 12
+0e c5
+53 48
+09 00
+ff
+
+mem_sensor_8009_init:
+09 5a
+06 02
+09 69
+0d 48
+0e 9f
+0f ba
+09 00
+ff
+
+mem_sensor_poweron_init:
+06 80
+09 5a
+0b f3
+09 00
+ff
+
+mem_ui_led_struct_ptr:mem_mouse_led_type
+mem_ui_led_struct_num:01
+
+
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_mouse_le_uuid_sup:
+
+#Primary service GAP ------
+01 00 02 00 28 02 00 18 
+
+#Device name
+02 00 02 03 28 01 0a
+03 00 02 00 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#Appearance
+04 00 02 03 28 01 02
+05 00 02 01 2a 02 c2 03 #3c2=hid mouse
+
+#Peripheral Preferred Connection Parameters
+06 00 02 03 28 01 02
+07 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary service GATT ------
+08 00 02 00 28 02 01 18
+#Service changed
+09 00 02 03 28 01 20
+0a 00 02 05 2a 00
+#Client Characteristic Configuration
+0b 00 02 02 29 02 00 00
+#Primary service device information ------
+0c 00 02 00 28 02 0a 18
+#Manufacturer Name
+0d 00 02 03 28 01 02
+0e 00 02 29 2a 06 59 69 43 68 69 70
+#PNP id
+0f 00 02 03 28 01 02
+10 00 02 50 2a 07 02 35 12 22 aa 01 00
+
+#Primary service battery ------
+#11 00 02 00 28 02 0f 18
+#Battery level
+#12 00 02 03 28 01 02
+#13 00 02 19 2a 01 33
+#Client Characteristic
+#14 00 02 02 29 02 00 00
+
+#Primary service hid ------
+11 00 02 00 28 02 12 18
+
+#Protocol mode
+12 00 02 03 28 01 06
+13 00 02 4e 2a 01 01
+
+#Hid report
+14 00 02 03 28 01 12 
+15 00 02 4d 2a 08 00 00 00 00 00 00 00 00
+16 00 02 02 29 02 00 00
+17 00 02 08 29 02 02 01
+
+18 00 02 03 28 01 1a
+19 00 02 4d 2a 07 00 00 00 00 00 00 00
+1a 00 02 02 29 02 00 00
+1b 00 02 08 29 02 01 01 # report id=1, type=1 input
+
+1c 00 02 03 28 01 12 
+1d 00 02 4d 2a 02 00 00
+1e 00 02 02 29 02 00 00
+1f 00 02 08 29 02 03 01
+
+20 00 02 03 28 01 0e
+21 00 02 4d 2a 02 00 00
+22 00 02 08 29 02 02 02
+
+#Report map
+23 00 02 03 28 01 0a
+24 00 02 4b 2a a0 # length 160 bytes
+
+05 01 # Usage Page(Generic Desktop)
+09 02 # Usage(Mouse)
+a1 01 # Collection(Application)
+85 01 # Report ID(1)
+09 01 # Usage(Pointer)
+a1 00 # Collection(Physical)
+05 09 # Usage Page(Buttons)
+19 01 # Usage Minimum(1)
+29 08 # Usage Maximum(8)
+15 00 # Logical Minimum(0).
+25 01 # Logical Maximum(1)
+75 01 # Report Size(1)
+95 08 # Report Count(8)
+81 02 # Input(Data Variable Absolute)
+
+05 01 # Usage Page(Generic Desktop)
+09 30 # Usage(X)
+09 31 # Usage(Y)
+16 01 f8 # Logical Minimum(-2047)
+26 ff 07 # Logical Maximum(2047)
+75 10 # Report Size(16)
+95 02 # Report Count(2)
+81 06 # Input(Data Variable Relative)
+
+09 38 # Usage(Wheel)
+15 81 # Logical Minimum(-127)
+25 7f # Logical Maximum(127)
+75 08 # Report Size(8)
+95 01 # Report Count(1)
+81 06 # Input(Data Variable Relative)
+05 0c # Usage Page(Consumer)
+0a 38 02 # Usage(AC Pan)
+95 01 # Report Count(1)
+81 06 # Input(Data Variable Relative)
+c0 # End Collection
+c0 # End Collection
+
+#66
+05 01
+09 06
+a1 01
+85 02
+75 01
+95 08
+05 07
+19 e0
+29 e7
+15 00
+25 01
+81 02
+95 01 
+75 08
+81 03 
+95 05
+75 01
+05 08
+19 01
+29 05  
+91 02 
+95 01  
+75 03  
+91 03
+95 06
+75 08
+15 00
+26 ff 00
+05 07
+19 00
+29 ff
+81 00
+c0
+
+#25
+05 0c
+09 01
+a1 01
+85 03
+19 00
+2a ff 03
+15 00
+26 ff 03
+95 01
+75 10
+81 00
+c0
+
+#Boot mouse input report
+25 00 02 03 28 01 1a
+26 00 02 33 2a 08 00 00 00 00 00 00 00 00
+
+#Client Characteristic
+27 00 02 02 29 02 01 00
+
+#Hid information
+28 00 02 03 28 01 02
+29 00 02 4a 2a 04 01 01 00 03
+
+#Hid control point
+2a 00 02 03 28 01 04
+2b 00 02 4c 2a 00
+
+#End of Attribute list
+00 00
+  
+#24g init
+mem_24g_mode:01#tx
+mem_24g_data_type:01        #mouse 1,kb 2
+mem_24g_max_retry:06#max tx retry
+mem_24g_no_ack:00#with ack
+mem_24g_rx_window:c0 12     #400us
+mem_24g_interval:19
+mem_24g_interval_min:19
+mem_24g_interval_max:1c
+mem_24g_ch_map1:00 13 2c 42
+mem_24g_ch_map2:06 15 36 48
+mem_24g_ch_map3:0f 1a 3a 4c
+mem_24g_ch_map4:11 23 31 4d
+mem_24g_pairing_sm:ff
+mem_24g_paring_addr:20 15 10 05
+mem_24g_allpowerful_addr:0f 0f 0f 0f 0f 0f
+mem_24g_common_temp:00 00 00 00 00 00 00 00 00 00
+mem_24g_enter_hibernate:80 4f 12
+
+
+mem_customer_key_press:
+##00 08 00 07 00 00 00 00 00#WIN+D
+00 05 00 04 00 00 00 00 00#CTRL+ALT+A
+##00 00 00 46 00 00 00 00 00#PrtSC
+mem_customer_key_release:
+00 00 00 00 00 00 00 00 00
+
+
+mem_device_flag:
+02
+34
+ff ff ff ff ff ff
+#mem_device2_type:
+#34
+#11 22 33 44 55 66
+#mem_device3_type:
+#34
+#11 22 33 44 55 66
+
+mem_mouse_fast_conn_addr:ff ff ff ff ff ff
+
+mem_flash_base:00 50 00
+#mem_eeprom_base:90 1f
+#mem_eeprom_block_size:80
+mem_reconn_times_init:00
+mem_bt_discovey_button_statue:01#default: button up
+mem_empty_count:03
+
+mem_mouse_24g_addr_init:0f 0f 0f 0f
+mem_24g_attempt_count:40		#bit0 = 0,first search dongle
+
+
+mem_mouse_multi_led_gpio:05
+mem_mouse_multi_led_on_timer_init:14
+mem_mouse_multi_led_blink_timer_init:03
+
+#zcode
+mem_zcode_current_number:ff
+mem_xip_flash_offset:00 00 00
+mem_zcode_head:20 20 00 40
+
+mem_mouse_le_fast_conn_enable_timer:0a
+
+#mem_mouse_button_select_device_timer_init:1e
+#mem_mouse_dpi_button_state:01
+
+mem_mouse_long_button_select_device:ff
+
+#yichip sdp
+#04 0011 0100 1002 1124
+#00 01 00 00
+#36 01 6d
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#11
+#24
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#11
+#35
+#03
+#19
+#00
+#11
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#06
+#35
+#09
+#09
+#65
+#6e
+#09
+#00
+#6a
+#09
+#01
+#00
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#11
+#24
+#09
+#01
+#00
+#09
+#00
+#0d
+#35
+#0f
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#13
+#35
+#03
+#19
+#00
+#11
+#09
+#01
+#00
+#25
+#16
+#59
+#69
+#43
+#68
+#69
+#70
+#20
+#42
+#6c
+#75
+#65
+#74
+#6f
+#6f
+#74
+#68
+#20
+#4d
+#6f
+#75
+#73
+#65
+#09
+#01
+#01
+#25
+#05
+#4d
+#6f
+#75
+#73
+#65
+#09
+#01
+#02
+#25
+#06
+#59
+#69
+#43
+#68
+#69
+#70
+#09
+#02
+#00
+#09
+#01
+#00
+#09
+#02
+#01
+#09
+#01
+#11
+#09
+#02
+#02
+#08
+#80
+#09
+#02
+#03
+#08
+#21
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#28
+#01
+#09
+#02
+#06
+#35
+#81
+#35
+#7f
+#08
+#22
+#25
+#7b
+#05
+#01
+#09
+#02
+#a1
+#01
+#85
+#02
+#09
+#01
+#a1
+#00
+#05
+#09
+#19
+#01
+#29
+#08
+#15
+#00
+#25
+#01
+#75
+#01
+#95
+#08
+#81
+#02
+#05
+#01
+#09
+#30
+#09
+#31
+#16
+#01
+#f8
+#26
+#ff
+#07
+#75
+#10
+#95
+#02
+#81
+#06
+#09
+#38
+#15
+#81
+#25
+#7f
+#75
+#08
+#95
+#01
+#81
+#06
+#05
+#0c
+#0a
+#38
+#02
+#75
+#08
+#95
+#01
+#81
+#06
+#c0
+#c0
+#05
+#0c
+#09
+#01
+#a1
+#01
+#85
+#03
+#75
+#10
+#95
+#02
+#15
+#01
+#26
+#8c
+#02
+#19
+#01
+#2a
+#8c
+#02
+#81
+#60
+#c0
+#06
+#00
+#ff
+#09
+#01
+#a1
+#01
+#85
+#10
+#75
+#08
+#95
+#06
+#15
+#00
+#26
+#ff
+#00
+#09
+#01
+#81
+#00
+#09
+#01
+#91
+#00
+#c0
+#09
+#02
+#07
+#35
+#08
+#35
+#06
+#09
+#04
+#09
+#09
+#01
+#00
+#09
+#02
+#08
+#28
+#00
+#09
+#02
+#09
+#28
+#01
+#09
+#02
+#0a
+#28
+#01
+#09
+#02
+#0b
+#09
+#01
+#00
+#09
+#02
+#0c
+#09
+#1f
+#40
+#09
+#02
+#0d
+#28
+#00
+#09
+#02
+#0e
+#28
+#01
+#09
+#02
+#0f
+#09
+#00
+#12
+#09
+#02
+#10
+#09
+#00
+#00
+#
+#04 1002 1200 0100 0001
+#00 01 00 01
+#36 00 5a
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#01
+#09
+#00
+#01
+#35
+#03
+#19
+#12
+#00
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#00
+#01
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#12
+#00
+#09
+#01
+#00
+#09
+#02
+#00
+#09
+#01
+#03
+#09
+#02
+#01
+#09
+#04
+#6d
+#09
+#02
+#02
+#09
+#b0
+#16
+#09
+#02
+#03
+#09
+#01
+#29
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#09
+#00
+#02
+#00
+#00
+#
+#01 0001
+#00 01 00 01
+#36 00 5a
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#01
+#09
+#00
+#01
+#35
+#03
+#19
+#12
+#00
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#00
+#01
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#12
+#00
+#09
+#01
+#00
+#09
+#02
+#00
+#09
+#01
+#00
+#09
+#02
+#01
+#09
+#05
+#ac
+#09
+#02
+#02
+#09
+#02
+#39
+#09
+#02
+#03
+#09
+#00
+#44
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#09
+#00
+#02
+#
+#03 1101 0003 0100
+#00 01 00 02
+#36 00 2f
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#02
+#09
+#00
+#01
+#35
+#03
+#19
+#11
+#01
+#09
+#00
+#04
+#35
+#0c
+#35
+#03
+#19
+#01
+#00
+#35
+#05
+#19
+#00
+#03
+#08
+#01
+#09
+#01
+#00
+#25
+#09
+#53
+#50
+#50
+#20
+#73
+
+mem_sdp_updata_list:
+09020f 090012
+090210 090000
+
+mem_keyboard_hid_descriptor:
+# hid descriptor 48byte
+0501 # Usage Page(Generic Desktop)
+0906 # Usage(Keyboard)
+a101 # Collection(Application)
+8501 # Report ID(1)
+7501 # Report Size(1)
+9508 # Report Count(8)
+0507 # Usage Page(Keyboard/Keypad)
+19e0 # Usage Minimum(224)
+29e7 # Usage Maximum(231)
+1500 # Logical Minimum(0)
+2501 # Logical Maximum(1)
+8102 # Input(Data Variable Absolute) ; Modifier byte
+9501 # Report Count(1)
+7508 # Report Size(8)
+8103 # Input(Constant Variable Absolute) ; 
+#9505 # Report Count(5)
+#7501 # Report Size(1)
+#0508 # Usage Page(LEDs)
+#1901 # Usage Minimum(1)
+#2905 # Usage Maximum(5)
+#9102 # Output(Data Variable Absolute) ; LED report
+#9501 # Report Count(1)
+#7503 # Report Size(3)
+#9103 # Output(Constant Variable Absolute) ; 
+9506 # Report Count(6)
+#7508 # Report Size(8)
+1500 # Logical Minimum(0)
+25ff # Logical Maximum(255)
+0507 # Usage Page(Keyboard/Keypad)
+1900 # Usage Minimum(0)
+29ff # Usage Maximum(255)
+8100 # Input(Data Array) ; Key arrarys 6 bytes
+c0 # End Collection
+
+#logi sdp
+#04 1000 0100 0001 1002
+#00 00 00 00
+#36 00 92 
+#09 00 00 0a 00 00 00 00 09 00 01 35 03 19 10 00 09 00 04 35 0d 35 06 
+#19 01 00 09 00 01 35 03 19 00 01 09 00 05 35 03 19 10 02 09 00 06 35 
+#09 09 65 6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 01 00 09 01 00 
+#09 01 00 25 2c 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 
+#57 69 72 65 6c 65 73 73 20 4d 6f 75 73 65 20 53 44 50 20 53 65 72 76 65 
+#72 09 01 01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 73 65 09 02 00 35 03 09 01 00
+
+#04 1124 0100 0011 1002
+#00 01 00 00
+#36 01 ee 
+#09 00 00 0a 00 01 00 00 09 00 01 35 03 19 11 24 09 00 04 35 
+#0d 35 06 19 01 00 09 00 11 35 03 19 00 11 09 00 05 35 03 19 10 02 
+#09 00 06 35 09 09 65 6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 11 24 
+#09 01 01 09 00 0d 35 0f 35 0d 35 06 19 01 00 09 00 13 35 03 19 00 11 09 01 
+#00 25 21 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 57 69 72 65 6c 
+#65 73 73 20 4d 6f 75 73 65 09 01 01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 
+#73 65 09 01 02 25 08 4c 6f 67 69 74 65 63 68 09 02 01 09 01 11 09 02 02 08 80 09 02 
+#03 08 21 09 02 04 28 01 09 02 05 28 01 09 02 06 35 fc 35 fa 08 22 25 f6 05 01 09 02 a1 01 
+#85 02 09 01 a1 00 05 09 19 01 29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30 09 31 16 01 
+#f8 26 ff 07 75 0c 95 02 81 06 09 38 15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75 08 95 01 81 
+#06 c0 c0 05 0c 09 01 a1 01 85 03 05 06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06 00 ff 09 01 
+#a1 01 85 10 75 08 95 06 15 00 26 ff 00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1 01 85 11 75 
+#08 95 13 15 00 26 ff 00 09 02 81 00 09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95 08 05 07 
+#19 e0 29 e7 15 00 25 01 81 02 95 01 75 08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95 01 
+#75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07 19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 
+#15 00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95 01 75 06 81 03 c0 09 02 07 35 08 35 
+#06 09 04 09 09 01 00 09 02 09 28 01 09 02 0a 28 01 09 02 0c 09 1f 40 09 02 0d 28 00 09 
+#02 0e 28 01 09 02 0f 09 00 12 09 02 10 09 00 00
+
+#04 1200 0100 0001 1002
+#00 01 00 01
+#36 00 ad 
+#09 00 00 0a 00 01 00 01 09 00 01 35 03 19 12 00 09 00 04 35 0d 35 06 19 01 
+#00 09 00 01 35 03 19 00 01 09 00 05 35 03 19 10 02 09 00 06 35 09 09 65 
+#6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 12 00 09 01 00 09 01 00 
+#25 2c 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 57 69 72 
+#65 6c 65 73 73 20 4d 6f 75 73 65 20 50 6e 50 20 53 65 72 76 65 72 09 01 
+#01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 73 65 09 02 00 09 01 03 09 
+#02 01 09 04 6d 09 02 02 09 b0 16 09 02 03 09 12 03 09 02 04 28 01 09 02 05 09 00 02 00
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/24g.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/24g.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/24g.prog	(working copy)
@@ -0,0 +1,2648 @@
+ifdef COMPILE_24G
+
+g24_dispatch:
+	bpatch patch16_2,mem_patch16
+	call g24_head_ptr2regc
+	add regc,offset_24g_mode,regb
+	ifetch 1,regb
+	//fetch 1,mem_24g_mode
+	rtneq disable_24g
+	beq tx_24g,g24_transmit_process
+	beq rx_24g,g24_receive_process
+	rtn
+
+g24_head_ptr2regc:
+	fetcht 2,mem_24g_head_ptr
+	copy temp,regc
+	rtn
+
+g24_receive_process_init:
+	call g24_receive_init
+	branch g24_mode_switch_init
+
+g24_receive_process:
+	call g24_mode_switch
+	call g24_dongle_work_mode_auto
+	call g24_dongle_bind_mode_auto
+	branch g24_dongle_search_mode_auto
+	
+
+g24_pair_init:
+	//jam 0,mem_24g_pid
+	//jam G24_PAIR_CH,mem_24g_ch
+	call g24_set0_mem_pid
+	setarg G24_PAIR_CH
+	call g24_store_mem_ch
+	call g24_store_mem_pair_txpower
+	//fetch 4,mem_24g_paring_addr
+	//store 4,mem_24g_addr
+	add regc,offset_24g_paring_addr,rega
+	ifetch 4,rega
+	branch g24_store_mem_addr
+		
+g24_ch:
+	call g24_head_ptr2regc
+	add regc,offset_24g_current_ch_number,regb
+	ifetcht 1,regb
+	//fetcht 1,mem_24g_current_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	add regc,offset_24g_current_ch_number,contw
+	//storet 1,mem_24g_current_ch_number
+	branch g24_contw_istoret_1byte
+
+g24_ch_temp_incre_size4:
+	call g24_ch_calc
+	increase 1,temp
+	and_into 3,temp
+	rtn
+
+g24_ch_calc:
+	add regc,offset_24g_addr,regb
+	ifetch 1,regb
+	//fetch 1,mem_24g_addr
+	and_into 0x03,pdata
+	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+	add regc,offset_24g_ch_map1,pdata
+	//setarg mem_24g_ch_map1
+	iadd rega,pdata
+	iadd temp,contr
+	ifetch 1,contr
+	//store 1,mem_24g_ch
+	branch g24_store_mem_ch
+
+g24_set_device_addr:
+	call g24_store_mem_tx_power_temp
+	call otp_enable_chgpump
+	setarg 0x7e2
+	arg mem_temp,rega
+	arg 4,temp
+	call otpd_read_data
+	call otp_disable_chgpump
+	fetch 4,mem_temp	//adc data from otp
+	call g24_store_mem_device_addr
+	//store 4,mem_24g_device_addr	
+	nrtn blank
+	fetch 4,mem_lap
+	//store 4,mem_24g_device_addr
+	branch g24_store_mem_device_addr
+
+g24_transmit_rf_sta_init:
+	call g24_set1_mem_rf_last_sta
+	//jam 1,mem_24g_rf_last_sta
+	setarg 0
+	call g24_store_mem_sync_cnt
+	//jam 0,mem_24g_sync_cnt
+g24_transmit_rf_ctrl_clear:	
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	//store 1,mem_24g_data_type
+	branch g24_store_mem_data_type
+	
+g24_hop_ch_enable:
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	set1 bit_hop,pdata
+	call g24_store_mem_data_type
+	//store 1,mem_24g_data_type
+	//store 1,mem_24g_txpayload
+	branch g24_store_mem_txpayload
+	
+g24_transmit_hop_pac_fail:
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 1,g24_transmit_hop_pac_fail_wo_hop
+	beq 2,g24_transmit_hop_pac_fail_hop_stage2
+	rtn
+	
+g24_transmit_hop_pac_fail_wo_hop:
+	call g24_set2_mem_sync_cnt
+	//jam 2,mem_24g_sync_cnt
+g24_transmit_hop_pac_fail_stage1:
+	add regc,offset_24g_hop_pac_retry,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_hop_pac_retry
+	call g24_store_mem_rf_last_sta
+	//jam 0,mem_24g_rf_last_sta
+	branch g24_transmit_rf_ctrl_clear
+
+g24_transmit_hop_pac_fail_hop_stage2:
+	call g24_set0_mem_rf_hop_ch
+	//jam 0,mem_24g_rf_hop_ch
+	branch g24_transmit_hop_pac_fail_stage1
+
+g24_transmit_pac_fail_hop_stage3:
+	add regc,offset_24g_txfail_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_txfail_cnt
+	increase 1,pdata
+	add regc,offset_24g_txfail_cnt,contw
+	istore 1,contw
+	//store 1,mem_24g_txfail_cnt
+	beq 0x20,g24_tx_attempt_fail
+	call g24_fetch_mem_rf_hop_ch
+	//fetch 1,mem_24g_rf_hop_ch
+	beq 1,g24_rf_hop_fastly
+	setarg 1
+	call g24_store_mem_rf_hop_ch
+	//jam 1,mem_24g_rf_hop_ch
+g24_rf_hop_attemp_again:
+	call g24_fetch_mem_rf_hop_ch
+	//fetch 1,mem_24g_rf_hop_ch
+	bne 1,g24_transmit_rf_ctrl_clear
+g24_rf_hop_fastly:
+	add regc,offset_24g_hop_fastly_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_hop_fastly_cnt
+	increase 1,pdata
+	call g24_store_mem_hop_fastly_cnt
+	//store 1,mem_24g_hop_fastly_cnt
+	beq 4,g24_rf_hop_fastly_exit
+	call g24_ch
+	call g24_set2_mem_max_retry
+	//jam 2,mem_24g_max_retry
+	branch g24_transmit_packet
+
+g24_rf_hop_fastly_exit:
+	call g24_set0_mem_hop_fastly_cnt
+	//jam 0,mem_24g_hop_fastly_cnt
+	branch g24_transmit_rf_ctrl_clear
+
+g24_set0_mem_hop_fastly_cnt:
+	setarg 0
+g24_store_mem_hop_fastly_cnt:
+	add regc,offset_24g_hop_fastly_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_transmit_hop_pac_succ_wo_hop:
+	call g24_set2_mem_sync_cnt
+	//jam 2,mem_24g_sync_cnt
+g24_transmit_hop_pac_succ:
+	call g24_set0_mem_rf_hop_ch
+	//jam 0,mem_24g_rf_hop_ch
+	call g24_set1_mem_rf_last_sta
+	//jam 1,mem_24g_rf_last_sta
+	branch g24_transmit_rf_ctrl_clear
+
+g24_transmit_succ_rf_config:
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 3,g24_transmit_hop_pac_succ
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	isolate0 bit_hop,pdata
+	branch g24_transmit_rf_sta_init,true
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 1,g24_transmit_hop_pac_succ_wo_hop
+	beq 2,g24_transmit_hop_pac_succ
+	rtn
+
+g24_rf_sta_check:
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call g24_rf_laststa_synccnt_check
+	ncall g24_rf_sync_cnt_check,user2
+	rtn
+
+g24_rf_laststa_synccnt_check:
+	disable user2
+	add regc,offset_24g_rf_last_sta,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rf_last_sta
+	rtnne 1
+	add regc,offset_24g_sync_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_sync_cnt
+	rtnne 0
+	setarg 1
+	call g24_store_mem_rf_work_stage
+	//jam 1,mem_24g_rf_work_stage
+	call g24_set4_mem_max_retry
+	//jam 4,mem_24g_max_retry
+	branch enable_user2
+
+g24_rf_sync_cnt_check:
+	add regc,offset_24g_sync_cnt,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_sync_cnt
+	branch g24_rf_hop_attemp,blank
+	increase -1,pdata
+	call g24_store_mem_sync_cnt
+	//store 1,mem_24g_sync_cnt
+	setarg 2
+	call g24_store_mem_rf_work_stage
+	//jam 2,mem_24g_rf_work_stage
+	call g24_ch
+	//jam 4,mem_24g_max_retry
+	branch g24_set4_mem_max_retry
+
+g24_store_mem_rf_work_stage:
+	add regc,offset_24g_rf_work_stage,contw
+	branch g24_contw_istore_1byte
+
+
+g24_rf_hop_attemp:
+	setarg 3
+	call g24_store_mem_rf_work_stage
+	//jam 3,mem_24g_rf_work_stage
+	call g24_fetch_mem_rf_hop_ch
+	//fetch 1,mem_24g_rf_hop_ch
+	nbranch g24_rf_hop_attemp_again,blank
+	call g24_ch
+	//jam 2,mem_24g_max_retry
+g24_set2_mem_max_retry:	
+	setarg 2
+	branch g24_store_mem_max_retry
+
+g24_transmit_process:
+	rtnmark0 mark_24g
+	set1 mark_24g_conext,mark
+	bpatch patch16_3,mem_patch16
+	add regc,offset_24g_tx_without_int,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_tx_without_int
+	beq 1,g24_transmit_without_int
+	call g24_timer_check
+	nbranch g24_transmit_exit,user
+	call g24_interval_calibrate
+g24_transmit_without_int:
+	add regc,offset_24g_tx_without_int,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_tx_without_int
+	call g24_txdata_prep
+	nbranch g24_enter_lpm,user
+	call g24_rf_sta_check
+g24_transmit_start:
+	call g24_transmit_packet
+	call g24_power_ctrl
+g24_transmit_exit:
+	set0 mark_24g_conext,mark
+	rtn
+
+g24_timer_timeout:
+	rtn zero
+	set1 28,pdata
+	rtn
+
+g24_interval_calibrate:
+	add regc,offset_24g_pac_index,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_pac_index
+	increase 1,pdata
+	add regc,offset_24g_pac_index,contw
+	istore 1,contw
+	//store 1,mem_24g_pac_index
+	beq 4,g24_interval_max
+	beq 5,g24_interval_min
+	rtn
+g24_interval_max:
+	add regc,offset_24g_interval_max,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_interval_max
+g24_interval_update:	
+	//store 1,mem_24g_interval
+	add regc,offset_24g_interval,contw
+	branch g24_contw_istore_1byte
+
+g24_interval_min:
+	add regc,offset_24g_pac_index,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_pac_index
+	add regc,offset_24g_interval_min,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_interval_min
+	branch g24_interval_update
+
+g24_txdata_prep:
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,g24_pairing_sm
+	bpatch patch16_4,mem_patch16
+	call g24_package_data
+	nbranch g24_txdata_last_pac,user
+	call g24_transmit_prep
+	call g24_power_ctrl_pac_incrs
+g24_txdata_enable_tx:
+	//jam ENSURE_ON_24G,mem_24g_ensure
+	setarg ENSURE_ON_24G
+g24_store_mem_ensure:	
+	add regc,offset_24g_ensure,contw
+	branch g24_contw_istore_1byte
+
+g24_txdata_last_pac:
+	add regc,offset_24g_ensure,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_ensure
+	beq ENSURE_ON_24G,enable_user
+	rtn
+
+g24_package_data:
+	//rega:length,regb:contr
+	add regc,offset_24g_cb_data,temp
+	ifetch 2,temp
+	//fetch 2,mem_24g_cb_data
+	call callback_func
+	nrtn user
+	copy rega,pdata
+	store 1,mem_rega
+	add regc,offset_24g_abort_pac,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_abort_pac
+	call g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_common_temp
+	fetch 1,mem_rega
+	copy pdata,rega
+	add rega,1,temp
+	arg mem_24g_common_temp+1,contw
+	copy rega,loopcnt
+	copy regb,contr
+	call memcpy
+	arg mem_24g_common_temp,rega
+g24_put_data_in_buff:
+	rtnmark0 mark_24g_conext
+	add regc,offset_24g_datalen,contw
+	istoret 1,contw
+	//storet 1,mem_24g_datalen
+	copy temp,loopcnt
+	add regc,offset_24g_txbuf,contw
+	//arg mem_24g_txbuf,contw
+	copy rega,contr
+	branch memcpy
+
+g24_transmit_prep:
+// total length
+	add regc,offset_24g_datalen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_datalen
+	increase 2,pdata
+	add regc,offset_24g_txlen,contw
+	istore 1,contw
+	//store 1,mem_24g_txlen
+// data type
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	call g24_store_mem_txpayload
+	//store 1,mem_24g_txpayload
+//prepare 5bit payload length, 2bit PID, 1bit NO_ACK
+	add regc,offset_24g_datalen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_datalen
+	lshift3 pdata,pdata
+	add regc,offset_24g_pid,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_pid
+	and temp,0x03,temp
+	lshift temp,temp
+	ior temp,pdata
+	add regc,offset_24g_no_ack,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_no_ack
+	iadd temp,pdata
+	istore 1,contw
+//prepare payload data
+	add regc,offset_24g_datalen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_datalen
+	iforce loopcnt
+	add regc,offset_24g_txbuf,contr
+	//arg mem_24g_txbuf,contr
+	branch memcpy
+
+g24_send_abort_packet:
+	call g24_set1_mem_abort_pac
+	//jam 1,mem_24g_abort_pac
+	call g24_set0_mem_rf_hop_ch
+	//jam 0,mem_24g_rf_hop_ch
+	call g24_power_ctrl_reinit
+	call g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_common_temp
+	call g24_put_data_in_buff_pre
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	set1 bit_abort,pdata
+	call g24_store_mem_data_type
+	//store 1,mem_24g_data_type
+	call g24_transmit_prep
+	call g24_txdata_enable_tx
+	branch g24_transmit_start
+
+g24_put_data_in_buff_pre:
+	store 1,mem_24g_common_temp+1
+	call g24_fetch_mem_device_addr
+	//fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	branch g24_put_data_in_buff
+
+g24_enter_lpm:
+	add regc,offset_24g_abort_pac,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_abort_pac
+	branch g24_send_abort_packet,blank
+g24_enter_lpm_prepare:
+ 	// some thing need to do and do not enter 24g long sleep
+	add regc,offset_24g_cb_lpm_prepare,rega
+	ifetch 2,rega
+	//fetch 2,mem_24g_cb_lpm_prepare
+	branch callback_func
+
+g24_lpm_long_sleep:
+	call g24_head_ptr2regc
+	//fetch 8,mem_24g_enter_hibernate
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	add regc,offset_24g_cb_lpm_before,temp
+	ifetch 2,temp
+	//fetch 2,mem_24g_cb_lpm_before
+	call callback_func
+	add regc,offset_24g_enter_hibernate,temp
+	ifetch 8,temp
+	call clk2lpo
+	storet 4,mem_sleep_counter
+  	branch lpm_sleep
+
+g24_transmit_packet:
+	call g24_head_ptr2regc
+	add regc,offset_24g_retry,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_retry
+g24_transmit_loop:
+	call g24_transmit_receive_ack
+	nbranch g24_retransmit,sync
+	nbranch g24_retransmit,user3
+	call g24_ackpayload_parse
+	call g24_power_ctrl_ack_incrs
+g24_transmit_next_packet:
+	call g24_head_ptr2regc
+	add regc,offset_24g_pid,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_pid
+	increase 1,pdata
+	call g24_store_mem_pid
+	//store 1,mem_24g_pid
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,g24_paring_mode
+	call g24_transmit_succ_rf_config
+g24_transmit_abandon:
+	setarg 0
+	add regc,offset_24g_txfail_cnt,contw
+	istore 2,contw	//include mem_24g_get_ack_fail
+	//store 1,mem_24g_txfail_cnt
+	//store 1,mem_24g_get_ack_fail
+	//jam ENSURE_OFF_24G,mem_24g_ensure
+	setarg ENSURE_OFF_24G
+	branch g24_store_mem_ensure
+
+	
+g24_transmit_receive_ack:
+	disable user3
+	call g24_transmit
+	call g24_head_ptr2regc
+	add regc,offset_24g_no_ack,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_no_ack
+	beq no_ack_24g,g24_transmit_no_ack	//tx no ack
+	call g24_receive_packet
+	branch g24_end_of_packet
+g24_transmit_no_ack:
+	call g24_end_of_packet
+	branch g24_transmit_next_packet
+
+
+g24_retransmit:
+	bpatch patch16_5,mem_patch16
+	add regc,offset_24g_get_ack_fail,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_get_ack_fail
+	increase 1,pdata
+	add regc,offset_24g_get_ack_fail,contw
+	istore 1,contw
+	//store 1,mem_24g_get_ack_fail
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,g24_tx_paring_retry
+	add regc,offset_24g_retry,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_retry
+	increase 1,temp
+	add regc,offset_24g_retry,contw
+	istoret 1,contw
+	//storet 1,mem_24g_retry
+	add regc,offset_24g_max_retry,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_max_retry
+	isub temp,pdata
+	nbranch g24_transmit_loop,blank
+	bpatch patch16_6,mem_patch16
+	call g24_fetch_mem_rf_work_stage
+	//fetch 1,mem_24g_rf_work_stage
+	beq 3,g24_transmit_pac_fail_hop_stage3
+	add regc,offset_24g_hop_pac_retry,rega
+	ifetch 1,rega	
+	//fetch 1,mem_24g_hop_pac_retry
+	increase 1,pdata
+	add regc,offset_24g_hop_pac_retry,contw
+	istore 1,contw
+	//store 1,mem_24g_hop_pac_retry
+	beq 2,g24_transmit_hop_pac_fail
+	call g24_hop_ch_enable
+	setarg 1
+	call g24_store_mem_max_retry
+	//jam 1,mem_24g_max_retry
+	branch g24_transmit_packet
+
+g24_tx_paring_retry:
+	add regc,offset_24g_get_ack_fail,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_get_ack_fail
+	rtnne 0xff
+	add regc,offset_24g_get_ack_fail,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_get_ack_fail
+	branch g24_stop_24g_mode
+
+g24_tx_attempt_fail:
+	add regc,offset_24g_txfail_cnt,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_txfail_cnt
+g24_stop_24g_mode:
+	jam BT_EVT_24G_ATTEMPT_FAIL,mem_fifo_temp
+	branch ui_ipc_send_event
+
+g24_ackpayload_parse:
+	call g24_read_len_pid_crc
+	add regc,offset_24g_rxdata_length,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxdata_length	//ack payload length 
+	rtn blank
+	iforce loopcnt
+	add regc,offset_24g_rxbuf_add2,contr
+	//arg mem_24g_rxbuf+2,contr
+	add regc,offset_24g_rxpayload,contw	
+	//arg mem_24g_rxpayload,contw	//ack payload buffer 
+	branch memcpy
+
+
+g24_read_len_pid_crc:
+//read control
+	call g24_fetch_mem_rxbuf_add1
+	//fetch 1,mem_24g_rxbuf+1
+	rshift3 pdata,pdata
+	add regc,offset_24g_rxdata_length,contw
+	istore 1,contw
+	//store 1,mem_24g_rxdata_length
+//get crc
+	increase 1,pdata
+	add regc,offset_24g_rxbuf_add1,contr
+	//arg mem_24g_rxbuf+1,contr
+	iadd contr,contr
+	ifetch 3,contr
+	add regc,offset_24g_sta_crc,contw
+	istore 3,contw
+	//store 3,mem_24g_sta_crc
+//read pid
+	call g24_fetch_mem_rxbuf_add1
+	//fetch 1,mem_24g_rxbuf+1
+	rshift pdata,pdata
+	and pdata,0x03,pdata
+	add regc,offset_24g_sta_pid,contw
+	istore 1,contw
+	//store 1,mem_24g_sta_pid
+	rtn
+
+g24_prep:
+	disable enable_crc
+	disable enable_white
+	setarg 0x555555
+	iforce crc24_init
+	rtn
+
+g24_set_freq_tx:
+	call set_sync_on
+	add regc,offset_24g_ch,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_ch
+	branch set_freq_tx
+
+g24_transmit:
+	call g24_prep
+	call g24_set_freq_tx
+	set1 TXGFSK,radio_ctrl
+	enable encode_fec0
+	enable is_tx
+	disable is_rx
+	call le_enable
+	call g24_fetch_mem_addr
+	//fetch 4,mem_24g_addr
+	iforce access
+	inject mod,32
+	enable enable_crc
+	add regc,offset_24g_txlen,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_txlen
+	iforce loopcnt
+	add regc,offset_24g_txpayload,contr
+	//arg mem_24g_txpayload,contr
+g24tr_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop g24tr_loop
+	enable enable_parity
+	inject mod,24	//crc
+	disable enable_parity
+	until null,tx_clear
+	bpatch patch16_7,mem_patch16
+	nop 100
+	disable encode_fec0
+	rtn
+
+g24_receive_packet:
+	disable user3
+	force 0,radio_ctrl
+	add regc,offset_24g_ch,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_ch
+	call set_freq_rx
+	call rf_rx_enable
+g24_receive_rxon:
+	call g24_prep
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	call le_enable
+	call g24_fetch_mem_addr
+	//fetch 4,mem_24g_addr
+	iforce access
+	enable swfine
+	add regc,offset_24g_rx_window,rega
+	ifetch 2,rega
+	//fetch 2,mem_24g_rx_window
+	iforce stop_watch
+	correlate null,timeout
+	nbranch g24_sync_timeout,sync
+	enable enable_crc
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	add regc,offset_24g_rxbuf,contw
+	istore 1,contw	
+	//store 1,mem_24g_rxbuf	//device id
+	add regc,offset_24g_mode,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_mode
+	beq rx_24g,g24_receive_skip
+	bpatch patch17_0,mem_patch17
+	add regc,offset_24g_rxbuf,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxbuf
+	add regc,offset_24g_data_type,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_data_type
+	icompare bits_data,temp
+	nbranch g24_end_of_packet,true
+g24_receive_skip:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	rshift3 pdata,pdata
+	and pdata,0x1f,loopcnt	//max payload: 32bytes
+	branch g24rx_nopayload,zero
+g24rx_loop:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop g24rx_loop
+g24rx_nopayload:
+	parse demod,bucket,24
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	branch g24_end_of_packet,crc_failed
+	enable user3
+	disable decode_fec0
+	rtn
+//	branch rssi_signal
+
+g24_end_of_packet:
+	disable encode_fec0
+	disable decode_fec0
+	disable enable_crc
+	disable enable_white
+	branch shutdown_radio,is_rx
+	until null,tx_clear
+	nop 100          /* flush out the last bit */
+	branch shutdown_radio
+
+g24_sync_timeout:
+	call rssi_noise
+	branch g24_end_of_packet
+
+rssi_noise:
+	call save_rssi
+	rtn blank
+	add regc,offset_rssi_noise_index,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_rssi_noise_index
+	arg mem_rssi_noise_buffer,rega
+	//arg mem_rssi_noise_buf,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_index,contw
+	//storet 1,mem_rssi_noise_index
+g24_contw_istoret_1byte:	
+	istoret 1,contw
+	rtn
+
+rssi_noise_store:
+	arg RSSI_BUF_LEN_NOISE,regb
+	branch rssi_store
+	
+/*	
+rssi_signal:
+	call save_rssi
+	rtn blank
+	add regc,offset_rssi_signal_index,rega
+	ifetcht 1,rega	
+	//fetcht 1,mem_rssi_signal_index
+	add regc,offset_rssi_signal_buf,rega
+	//arg mem_rssi_signal_buf,rega
+	arg RSSI_BUF_LEN_SIGNAL,regb
+	call rssi_store
+	add regc,offset_rssi_signal_index,contw
+	istoret 1,contw	
+	//storet 1,mem_rssi_signal_index
+	rtn
+*/	
+rssi_store:	
+	copy rega,pdata
+	iadd temp,contw
+	fetch 1,mem_rssi
+	istore 1,contw
+	increase 1,temp
+	copy regb,pdata
+	iand_into temp
+	rtn
+	
+rssi_average:
+	arg 0,temp
+	copy rega,contr
+rssi_average_loop:	
+	ifetch 1,contr
+	iadd temp,temp
+	loop rssi_average_loop
+	rshift8 temp,temp
+	rtn
+
+g24_power_ctrl_init:
+	call g24_head_ptr2regc
+	call g24_power_ctrl_incrs_level1
+	setarg 1
+	call g24_store_mem_power_ctrl_level
+	//jam 1,mem_power_ctrl_level
+g24_power_ctrl_reinit:
+	setarg 0
+	call g24_store_mem_power_ctrl_pac
+	//jam 0,mem_power_ctrl_packet_cnt
+	istore 1,contw
+	//jam 0,mem_power_ctrl_ack_cnt
+	rtn
+
+g24_power_ctrl_pac_incrs:
+	call g24_fetch_mem_power_ctrl_pac
+	//fetch 1,mem_power_ctrl_packet_cnt
+	increase 1,pdata
+g24_store_mem_power_ctrl_pac:	
+	//store 1,mem_power_ctrl_packet_cnt
+	add regc,offset_power_ctrl_packet_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_power_ctrl_ack_incrs:
+	//fetch 1,mem_power_ctrl_ack_cnt
+	//store 1,mem_power_ctrl_ack_cnt
+	add regc,offset_power_ctrl_ack_cnt,rega
+	ifetch 1,rega
+	increase 1,pdata
+	add regc,offset_power_ctrl_ack_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_power_ctrl:
+	bpatch patch17_1,mem_patch17
+	call g24_fetch_mem_power_ctrl_pac
+	//fetch 1,mem_power_ctrl_packet_cnt
+	sub pdata,POWER_CTRL_MAX_PACKET_CNT,null
+	rtn positive
+	add regc,offset_power_ctrl_ack_cnt,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_power_ctrl_ack_cnt
+	isub temp,temp	//loss packet cnt
+	call g24_power_ctrl_reinit
+	setarg offset_power_ctrl_threshold_up
+	iadd regc,rega
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_threshold_up
+	isub temp,null
+	nbranch g24_power_ctrl_incrs,positive
+	setarg offset_power_ctrl_threshold_down
+	iadd regc,rega
+	ifetch 1,rega	
+	//fetch 1,mem_power_ctrl_threshold_down
+	isub temp,null
+	branch g24_power_ctrl_decrs,positive
+	rtn
+
+g24_power_ctrl_incrs:	
+	add regc,offset_power_ctrl_level,rega
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_level
+	beq 2,g24_power_ctrl_incrs_level2
+	increase 1,pdata
+	call g24_store_mem_power_ctrl_level
+	//store 1,mem_power_ctrl_level
+	beq 1,g24_power_ctrl_incrs_level1
+g24_power_ctrl_incrs_level2:
+	setarg POWER_CTRL_LOSSPAC_THRESH_UP2
+	call g24_store_mem_power_ctrl_threshold_up
+	//jam POWER_CTRL_LOSSPAC_THRESH_UP2,mem_power_ctrl_threshold_up
+	setarg POWER_CTRL_LOSSPAC_THRESH_DOWN2
+	call g24_store_mem_power_ctrl_threshold_down
+	//jam POWER_CTRL_LOSSPAC_THRESH_DOWN2,mem_power_ctrl_threshold_down
+//	jam POWER_CTRL_RSSI_THRESH_DOWN2,mem_rssi_ctrl_threshold_down
+	add regc,offset_power_ctrl_txpwr_level2,rega
+	//fetch 1,mem_power_ctrl_txpwr_level2
+	branch g24_ifetch_rega_store_mem_txpower
+
+g24_power_ctrl_decrs:
+	add regc,offset_power_ctrl_level,rega
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_level
+	beq 0,g24_power_ctrl_decrs_level0
+	increase -1,pdata
+	call g24_store_mem_power_ctrl_level
+	//store 1,mem_power_ctrl_level
+	beq 0,g24_power_ctrl_decrs_level0
+g24_power_ctrl_decrs_level1:
+//	call rssi_check_distance
+//	nrtn user
+g24_power_ctrl_incrs_level1:
+	setarg POWER_CTRL_LOSSPAC_THRESH_UP1
+	call g24_store_mem_power_ctrl_threshold_up
+	//jam POWER_CTRL_LOSSPAC_THRESH_UP1,mem_power_ctrl_threshold_up
+	setarg POWER_CTRL_LOSSPAC_THRESH_DOWN1
+	call g24_store_mem_power_ctrl_threshold_down
+	//jam POWER_CTRL_LOSSPAC_THRESH_DOWN1,mem_power_ctrl_threshold_down
+//	jam POWER_CTRL_RSSI_THRESH_DOWN1,mem_rssi_ctrl_threshold_down
+	setarg offset_power_ctrl_txpwr_level1
+g24_iadd_offset_mem_txpower:	
+	iadd regc,rega
+g24_ifetch_rega_store_mem_txpower:	
+	ifetch 1,rega
+	//fetch 1,mem_power_ctrl_txpwr_level1
+	branch g24_store_mem_txpower
+	
+g24_power_ctrl_decrs_level0:
+//	call rssi_check_distance
+//	nrtn user
+	setarg POWER_CTRL_LOSSPAC_THRESH_UP0
+	call g24_store_mem_power_ctrl_threshold_up
+	//jam POWER_CTRL_LOSSPAC_THRESH_UP0,mem_power_ctrl_threshold_up
+	setarg POWER_CTRL_LOSSPAC_THRESH_DOWN0
+	call g24_store_mem_power_ctrl_threshold_down
+	//jam POWER_CTRL_LOSSPAC_THRESH_DOWN0,mem_power_ctrl_threshold_down
+//	jam POWER_CTRL_RSSI_THRESH_DOWN0,mem_rssi_ctrl_threshold_down
+	setarg offset_power_ctrl_txpwr_level0
+	//fetch 1,mem_power_ctrl_txpwr_level0
+	branch g24_iadd_offset_mem_txpower
+
+/*
+rssi_check_distance:
+	disable user
+	arg mem_rssi_signal_buf,rega
+	arg RSSI_BUF_LEN_SIGNAL+1,loopcnt
+	call rssi_average
+	storet 1,mem_rssi_signal_avg
+	fetch 1,mem_rssi_ctrl_threshold_down
+	isub temp,null
+	branch enable_user,positive
+	rtn
+*/
+g24_start_pairing_sm1:
+	set1 mark_24g,mark
+	call g24_pair_init
+g24_set_pairing_sm_1:
+	//jam STATE_24G_PAIRING_1,mem_24g_pairing_sm
+	setarg STATE_24G_PAIRING_1
+	branch g24_store_mem_pairing_sm
+
+g24_pairing_sm:
+	add regc,offset_24g_ensure,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_ensure
+	beq ENSURE_ON_24G,enable_user
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	beq STATE_24G_PAIRING_1,g24_pairing_sm_1
+	beq STATE_24G_PAIRING_2,g24_pairing_sm_2
+	beq STATE_24G_PAIRING_3,g24_pairing_sm_3
+	branch assert
+
+g24_pairing_sm_1:
+	setarg STATE_24G_PAIRING_1_WAITING_ACK
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_1_WAITING_ACK,mem_24g_pairing_sm
+	jam 0xaa,mem_24g_common_temp
+	branch g24_pairing_sm_common
+g24_pairing_sm_2:
+	setarg STATE_24G_PAIRING_2_WAITING_ACK
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_2_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x55,mem_24g_common_temp
+	branch g24_pairing_sm_common
+g24_pairing_sm_3:
+	setarg STATE_24G_PAIRING_3_WAITING_ACK
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_3_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x22,mem_24g_common_temp
+g24_pairing_sm_common:
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	store 1,mem_24g_common_temp+1
+	call g24_fetch_mem_device_addr
+	//fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+g24_put_pairing_data_in_buff:
+	jam 0,mem_24g_common_temp+6
+	arg mem_24g_common_temp,rega
+	arg 7,temp
+	call g24_put_data_in_buff	
+	call g24_transmit_prep
+	call g24_txdata_enable_tx
+	branch enable_user
+
+g24_paring_mode:
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	rtneq STATE_24G_PAIRING_SUCCESS
+	beq STATE_24G_PAIRING_1_WAITING_ACK,g24_pairing_sm_1_waiting_ack
+	beq STATE_24G_PAIRING_2_WAITING_ACK,g24_pairing_sm_2_waiting_ack
+	beq STATE_24G_PAIRING_3_WAITING_ACK,g24_pairing_sm_3_waiting_ack
+	rtn
+
+g24_pairing_sm_1_waiting_ack:
+	setarg STATE_24G_PAIRING_2
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_2,mem_24g_pairing_sm
+	branch g24_transmit_abandon
+g24_pairing_sm_2_waiting_ack:
+	setarg STATE_24G_PAIRING_3
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_3,mem_24g_pairing_sm
+	branch g24_transmit_abandon
+g24_pairing_sm_3_waiting_ack:
+	setarg STATE_24G_PAIRING_SUCCESS
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_SUCCESS,mem_24g_pairing_sm
+	jam BT_EVT_24G_PAIRING_COMPLETE,mem_fifo_temp
+	call ui_ipc_send_event
+	add regc,offset_24g_rxpayload_add2,rega
+	ifetch 4,rega
+	//fetch 4,mem_24g_rxpayload+2
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	branch g24_transmit_abandon
+
+g24_auto_pair_start:
+	set0 mark_24g,mark
+	call g24_auto_pair_set_device_info
+	call g24_tx_attemp_data_prep
+g24_auto_pair_restart:	
+	call g24_set0_mem_check_dongle_times
+g24_auto_pair_start_loop:
+	nop 2000
+	call g24_fetch_mem_check_dongle_times
+	beq 0xff,g24_stop_24g_mode
+	call g24_transmit_receive_ack
+	nbranch g24_auto_pair_retry,sync
+	nbranch g24_auto_pair_retry,user3
+	call g24_ackpayload_parse
+	call g24_head_ptr2regc
+	add regc,offset_24g_paring_addr,rega
+	ifetcht 4,rega
+	call g24_fetch_mem_addr_isub_temp
+	branch g24_start_pairing_sm1,zero
+	call g24_head_ptr2regc
+	add regc,offset_24g_rxpayload_add2,rega
+	ifetch 4,rega
+	beq 0,g24_auto_pair_restart
+	call g24_store_mem_addr
+	branch g24_tx_attemp_dongle_succ
+
+g24_auto_pair_retry:
+	call g24_fetch_mem_check_dongle_times
+	increase 1,pdata
+	call g24_store_mem_check_dongle_times
+
+	call g24_fetch_mem_auto_paring_switch
+	increase 1,pdata
+	and_into 1,pdata
+	call g24_store_mem_auto_paring_switch
+	beq 0,g24_auto_pair_device_attemp
+	beq 1,g24_auto_pair_pair_attemp
+	rtn
+
+g24_fetch_mem_auto_paring_switch:
+	setarg offset_24g_auto_pair_switch
+	branch g24_set_rega_ifetch_1byte
+g24_store_mem_auto_paring_switch:
+	arg offset_24g_auto_pair_switch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_auto_pair_set_device_info:
+	call g24_store_mem_tx_power
+	call g24_fetch_mem_device_addr
+	call g24_store_mem_addr
+	branch g24_ch
+
+g24_auto_pair_device_attemp:
+	call g24_auto_pair_set_device_info
+	branch g24_auto_pair_start_loop
+
+g24_auto_pair_pair_attemp:
+	call g24_pair_init
+	branch g24_auto_pair_start_loop
+
+
+g24_start_24g_mode:
+	set0 mark_24g,mark
+	call g24_ch
+	call g24_fetch_mem_pairing_sm
+	//fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call g24_tx_attemp_data_prep
+	call g24_set0_mem_check_dongle_times
+	//jam 0,mem_24g_check_dongle_times
+g24_tx_attemp_dongle_loop:
+	nop 2000
+	call g24_fetch_mem_check_dongle_times
+	//fetch 1,mem_24g_check_dongle_times
+	beq 0xff,g24_stop_24g_mode
+	call g24_transmit_receive_ack
+	nbranch g24_attemp_txdata_retry,sync
+	nbranch g24_attemp_txdata_retry,user3
+g24_tx_attemp_dongle_succ:	
+	set1 mark_24g,mark
+	call g24_set0_mem_check_dongle_times
+	setarg STATE_24G_PAIRING_SUCCESS
+	call g24_store_mem_pairing_sm
+	//jam 0,mem_24g_check_dongle_times
+g24_app_tx_attempt_success:
+	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
+	branch ui_ipc_send_event
+
+g24_tx_attemp_data_prep:
+	set1 mark_24g_conext,mark
+	jam 0xff,mem_24g_common_temp
+	call g24_fetch_mem_data_type
+	//fetch 1,mem_24g_data_type
+	call g24_put_data_in_buff_pre
+	branch g24_transmit_prep
+	
+g24_attemp_txdata_retry:
+	call g24_fetch_mem_check_dongle_times
+	//fetch 1,mem_24g_check_dongle_times
+	increase 1,pdata
+	call g24_store_mem_check_dongle_times
+	//store 1,mem_24g_check_dongle_times
+	call g24_ch
+	branch g24_tx_attemp_dongle_loop
+
+g24_check_51cmd_start_24g:
+	call g24_store_mem_tx_power
+	//fetch 1,mem_tx_power_temp
+	//store 1,mem_tx_power
+	setarg STATE_24G_PAIRING_SUCCESS
+	call g24_store_mem_pairing_sm
+	//jam STATE_24G_PAIRING_SUCCESS,mem_24g_pairing_sm
+	branch g24_start_24g_mode
+/*	
+g24_check_51cmd_stop_24g:
+	call g24_store_mem_tx_power
+	set0 mark_24g,mark
+	branch le_disable
+*/
+
+
+dongle_init:
+	bpatch patch17_2,mem_patch17
+	call g24_head_ptr2regc
+	setarg dongle_rxdata_type1
+	add regc,offset_24g_cb_rxdata_type1,contw
+	istore 2,contw
+	//store 2,mem_24g_cb_rxdata_type1
+	call g24_receive_init
+	call usb_init
+	call g24_fetch_mem_pair_mode
+	//fetch 1,mem_24g_pair_mode
+	bpatch patch17_3,mem_patch17
+	beq 0x00,dongle_auto_bind
+	beq 0x01,dongle_pc_bind
+	beq 0x0f,dongle_all_powerful
+	branch assert
+
+g24_receive_init:
+	call g24_store_mem_tx_power_temp
+	arg 0x80,loopcnt
+	arg mem_rssi_noise_buffer,contw
+	branch memset0
+
+dongle_all_powerful:
+	call dongle_check_mode
+dongle_all_powerful_loop:
+	call g24_dongle_work_mode
+	call usb_isr
+	branch dongle_all_powerful_loop
+
+dongle_pc_bind:
+	bpatch patch17_4,mem_patch17
+	call dongle_check_mode
+dongle_pc_bind_loop:	
+	call g24_dongle_work_mode
+	call g24_dongle_bind_mode
+	call usb_isr
+	call dongle_usb_dispatch
+	branch dongle_pc_bind_loop
+
+dongle_check_mode:
+	//jam DONGLE_WORK,mem_dongle_work_mode
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	//jam 0,mem_24g_ackpayload_enable
+	call g24_set_work_mem_dongle_work_mode
+	call g24_set0_mem_dongle_mode_init
+	branch g24_set0_mem_ackpayload_enable
+	
+g24_dongle_work_mode:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_WORK
+g24_dongle_work_mode_start:
+	call g24_dongle_work_init
+	call g24_ch_process
+	call g24_receive_packet_start
+	branch g24_blank_data_process
+
+g24_dongle_work_init:
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	rtnbit1 DONGLE_WORK
+	set1 DONGLE_WORK,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_store_mem_tx_power
+	//fetch 1,mem_tx_power_temp
+	//store 1,mem_tx_power
+	call g24_set0_mem_ackpayload_enable
+	//jam 0,mem_24g_ackpayload_enable
+	jam 0,mem_usb_tx_enable
+	call g24_set1_mem_abort_pac
+	//jam 1,mem_24g_abort_pac
+	call g24_dongle_init
+g24_rx_interrupt_clear:
+	add regc,offset_24g_rxbuf,contw
+	//arg mem_24g_rxbuf,contw
+	arg 66,loopcnt
+	branch clear_mem
+
+g24_dongle_init:
+	call g24_set0_mem_pid
+	//jam 0,mem_24g_pid
+	call g24_fetch_mem_rx_addr
+	//fetch 4,mem_24g_rx_addr
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	branch g24_ch
+
+g24_ch_process:
+	bpatch patch17_5,mem_patch17
+	call g24_fetch_mem_abort_pac
+	//fetch 1,mem_24g_abort_pac
+	beq 1,g24_noise_rssi
+	call g24_fetch_mem_hop_pac
+	//fetch 1,mem_24g_hop_pac
+	beq 1,g24_ch	
+	setarg offset_24g_hop_btclk
+	iadd regc,rega
+	ifetcht 4,rega
+	//fetcht 4,mem_24g_hop_btclk
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall g24_timer_timeout,positive
+	copy pdata,regb
+	setarg offset_24g_hop_btclk
+	iadd regc,rega
+	ifetch 4,rega
+	copy pdata,temp
+	//fetch 4,mem_24g_hop_btclk
+	setarg offset_24g_hop_interval
+	iadd regc,rega
+	copy temp,pdata
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_hop_interval
+	iadd temp,temp
+	copy regb,pdata
+	isub temp,null
+	nrtn positive
+	set0 28,pdata
+	setarg offset_24g_hop_btclk
+	iadd regc,contw
+	istore 4,contw
+	//store 4,mem_24g_hop_btclk
+g24_ch_update:
+	call g24_ch
+	call g24_fetch_mem_rf_laststa
+	//fetch 1,mem_24g_rf_laststa
+	increase 1,pdata
+	call g24_store_mem_rf_laststa
+	//store 1,mem_24g_rf_laststa
+	rtnne 2
+	call g24_set0_mem_rf_laststa
+	//jam 0,mem_24g_rf_laststa
+	//jam 1,mem_24g_abort_pac
+	//rtn
+	branch g24_set1_mem_abort_pac
+	
+g24_ch_timer_reinit:
+	copy clkn_bt,pdata
+	arg offset_24g_hop_btclk,rega
+	call g24_set_contw_with_temp
+	istore 4,contw
+	//store 4,mem_24g_hop_btclk
+	//jam 0,mem_24g_rf_laststa
+	//rtn
+	branch g24_set0_mem_rf_laststa
+
+g24_noise_rssi:
+	arg mem_rssi_noise_buffer,rega
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive	
+	branch g24_ch
+
+g24_noise_rssi_average:
+	arg RSSI_BUF_LEN_NOISE+1,loopcnt
+	branch rssi_average
+
+g24_blank_data_process:
+	call g24_ms_blank_data
+	call g24_kb_blank_data
+	branch g24_kb_mul_blank_data
+
+g24_ms_blank_data:
+	setarg offset_24g_ms_blank_data_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_blank_data_enable
+	rtn blank
+	arg TIMER_MS_BLANK,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_ms_blank_data_enable
+	//jam 0,mem_24g_ms_blank_data_enable
+g24_ms_blank_data_2usb:
+	setarg MS_REPORT_ID
+	store 1,mem_usb_mouse_data
+	setarg 0
+	istore 7,contw
+	branch g24_data_type1_usbtx_enable
+
+g24_kb_blank_data:
+	setarg offset_24g_kb_blank_data_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_blank_data_enable
+	rtn blank
+	arg TIMER_KB_BLANK,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_kb_blank_data_enable
+	//jam 0,mem_24g_kb_blank_data_enable
+g24_kb_blank_data_2usb:	
+	arg mem_usb_kb_data,contw
+	arg 2,loopcnt
+	call memset0
+	jam KB_NORMAL_REPORT_ID,mem_usb_kb_data
+	branch g24_kb_data_into_ep1_fifo
+
+g24_kb_mul_blank_data:
+	setarg offset_24g_kb_mul_blank_data_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_mul_blank_data_enable
+	rtn blank
+	arg TIMER_KB_MUL_BLANK,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_kb_mul_blank_data_enable
+	//jam 0,mem_24g_kb_mul_blank_data_enable
+g24_kb_mul_blank_data_2usb:
+	arg mem_usb_kb_multikey,contw
+	arg 2,loopcnt
+	call memset0
+	jam KB_MULTIKEY_REPORT_ID,mem_usb_kb_multikey
+	branch g24_kb_mul_data_into_ep2_fifo
+
+g24_dongle_bind_mode:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_BIND
+	call g24_dongle_bind_init
+	branch g24_dongle_bind_data_process
+
+g24_dongle_bind_init:
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	rtnbit1 DONGLE_BIND
+	set1 DONGLE_BIND,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_set1_mem_ackpayload_enable
+	//jam 1,mem_24g_ackpayload_enable
+	call g24_pair_init
+	setarg 0
+	arg offset_dongle_ms_bind_step,rega
+	call g24_set_contw_with_temp
+	//store 3,mem_dongle_ms_bind_step
+	branch g24_contw_istore_3byte
+
+g24_dongle_bind_data_process:
+	call g24_receive_transmit_ack
+	nbranch g24_rx_interrupt_clear,user3	
+	add regc,offset_24g_rxbuf,contr
+	setarg offset_24g_rxdata_temp
+	iadd regc,contw
+	arg 8,loopcnt
+	call memcpy
+	setarg offset_24g_rxdata_temp_add2
+	call g24_set_rega_ifetch_1byte
+	beq DATATYPE_BIND,g24_dongle_bind_first_step	//bind step 1
+	beq DATATYPE_CONFIG,g24_dongle_bind_second_step
+	beq DATATYPE_OK,g24_dongle_bind_third_step
+	beq 0xff,g24_data_attemp
+	branch g24_rx_interrupt_clear
+
+g24_dongle_bind_first_step:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	beq BIND_MOUSE,g24_dongle_bind_first_step_mouse
+	beq BIND_KEYBOARD,g24_dongle_bind_first_step_keyboard
+	rtn
+g24_dongle_bind_first_step_mouse:
+	setarg 1
+	call g24_store_mem_ms_bind_step
+	//jam 1,mem_dongle_ms_bind_step
+g24_dongle_bind_ms_payload_cfg:
+	setarg DATATYPE_MOUSE
+	call g24_store_mem_bind_payload
+	//jam DATATYPE_MOUSE,mem_24g_bind_payload
+g24_dongle_bind_payload_cfg:	
+	setarg 0x80
+	arg offset_24g_bind_payload_add1,rega
+	call g24_set_contw_with_regb_store_1byte
+	//jam 0x80,mem_24g_bind_payload+1
+	call g24_fetch_mem_rx_addr
+	//fetch 4,mem_24g_rx_addr
+	arg offset_24g_bind_payload_add2,rega
+	call g24_set_contw_with_temp
+	//store 4,mem_24g_bind_payload+2
+	branch g24_contw_istore_4byte
+
+g24_dongle_bind_first_step_keyboard:
+	setarg 1
+	call g24_store_mem_kb_bind_step
+	//jam 1,mem_dongle_kb_bind_step
+g24_dongle_bind_kb_payload_cfg:
+	setarg DATATYPE_KEYBOARD
+	call g24_store_mem_bind_payload
+	//jam DATATYPE_KEYBOARD,mem_24g_bind_payload
+	branch g24_dongle_bind_payload_cfg
+		
+g24_dongle_bind_second_step:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	beq BIND_MOUSE,g24_dongle_bind_second_step_mouse
+	beq BIND_KEYBOARD,g24_dongle_bind_second_step_keyboard
+	rtn
+g24_dongle_bind_second_step_mouse:
+	call g24_dongle_bind_ms_payload_cfg
+	setarg offset_dongle_ms_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_ms_bind_step
+	beq 1,g24_dongle_ms_bind_step_set2
+	rtn
+g24_dongle_ms_bind_step_set2:
+	setarg 2
+	//jam 2,mem_dongle_ms_bind_step
+g24_store_mem_ms_bind_step:
+	arg offset_dongle_ms_bind_step,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_dongle_bind_second_step_keyboard:
+	call g24_dongle_bind_kb_payload_cfg
+	setarg offset_dongle_kb_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_kb_bind_step
+	beq 1,g24_dongle_kb_bind_step_set2
+	rtn
+g24_dongle_kb_bind_step_set2:
+	setarg 2
+	//jam 2,mem_dongle_kb_bind_step
+g24_store_mem_kb_bind_step:
+	arg offset_dongle_kb_bind_step,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_dongle_bind_third_step:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	beq BIND_MOUSE,g24_dongle_bind_third_step_mouse
+	beq BIND_KEYBOARD,g24_dongle_bind_third_step_keyboard
+	rtn
+g24_dongle_bind_third_step_mouse:
+	setarg offset_dongle_ms_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_ms_bind_step
+	beq 2,g24_dongle_ms_bind_step_success
+	rtn
+g24_dongle_ms_bind_step_success:
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	or_into 0x01,pdata
+	call g24_store_mem_bind_device_status
+	//store 1,mem_dongle_bind_device_status
+g24_dongle_bind_exit:	
+	setarg 0
+	setarg offset_dongle_ms_bind_step
+	iadd regc,contw
+	istore 2,contw
+	branch g24_rx_interrupt_clear
+
+g24_dongle_bind_third_step_keyboard:
+	setarg offset_dongle_kb_bind_step
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_dongle_kb_bind_step
+	bne 0,g24_dongle_kb_bind_step_success
+	rtn
+g24_dongle_kb_bind_step_success:
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	or_into 0x02,pdata
+	call g24_store_mem_bind_device_status
+	//store 1,mem_dongle_bind_device_status
+	branch g24_dongle_bind_exit
+
+	
+dongle_usb_dispatch:
+	fetch 1,mem_usb0_get_set_report
+	rtn blank
+	jam 0,mem_usb0_get_set_report
+	fetch 2,mem_usb_setup_bValue_temp
+	arg PC_SET_REPORT,temp
+	isub temp,null
+	nrtn zero
+	//get usb host command
+	fetch 1,mem_usb0_set_report_data
+	rtnne PC_REPORT_ID
+	fetch 1,mem_usb0_set_report_data+1
+	bpatch patch17_6,mem_patch17
+	beq COMMAND_MODE,dongle_dispose_cmd_mode
+	beq COMMAND_BIND,dongle_dispose_cmd_bind
+	beq COMMAND_CURRENT_PROJECT,dongle_dispose_cmd_current_project
+	beq COMMAND_CURRENT_MODE,dongle_dispose_cmd_current_mode
+	beq COMMAND_CURRENT_FW_VERSION,dongle_dispose_cmd_current_fw_version
+	beq COMMAND_USER_DEFINED,dongle_dispose_cmd_user_defined
+usb0_data_ready_report_set0:
+	jam 0,mem_usb0_data_ready_report
+	rtn
+dongle_dispose_cmd_bind:
+	fetch 1,mem_usb0_set_report_data+2
+	beq COM_BIND_GET,dongle_dispose_cmd_get_bind
+	beq COM_BIND_EXIT,dongle_dispose_cmd_exit_bind
+	beq COM_READ_MODE,dongle_dispose_cmd_read_mode
+	branch usb0_data_ready_report_set0
+dongle_dispose_cmd_get_bind:
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	store 1,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+dongle_dispose_cmd_exit_bind:
+	call g24_set_work_mem_dongle_work_mode
+	//jam DONGLE_WORK,mem_dongle_work_mode
+	call g24_set0_mem_dongle_mode_init
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	store 1,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_read_mode:
+dongle_dispose_in_bind_mode:
+	jam COMMAND_BIND,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_mode:
+	fetch 1,mem_usb0_set_report_data+2
+	beq COM_MODE_BIND,dongle_enter_bind_mode
+//	beq COM_MODE_TEST,dongle_enter_test_mode
+	branch usb0_data_ready_report_set0
+dongle_enter_bind_mode:
+	//jam DONGLE_BIND,mem_dongle_work_mode
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	call g24_bind_mode_enable
+usb0_data_ready_report_set1:
+	jam 1,mem_usb0_data_ready_report
+	rtn
+//dongle_enter_test_mode:
+//	jam DONGLE_TEST,mem_dongle_work_mode
+//	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_current_project:
+	jam PRODUCT_ID,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_current_mode:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	beq DONGLE_WORK,dongle_dispose_in_work_mode
+	beq DONGLE_BIND,dongle_dispose_in_bind_mode
+//	beq DONGLE_TEST,dongle_dispose_in_test_mode
+	rtn
+dongle_dispose_in_work_mode:
+	jam COMMAND_MODE,mem_usb0_get_report_data+1
+	branch usb0_data_ready_report_set1
+//dongle_dispose_in_test_mode:
+//	jam COMMAND_TEST,mem_usb0_get_report_data+1
+//	branch usb0_data_ready_report_set1
+	
+dongle_dispose_cmd_current_fw_version:
+	jam FW_VERSION0,mem_usb0_get_report_data+1
+	jam FW_VERSION1,mem_usb0_get_report_data+2
+	jam FW_VERSION2,mem_usb0_get_report_data+3
+	branch usb0_data_ready_report_set1
+
+dongle_dispose_cmd_user_defined:
+	//report_id|cmd|data_len|data
+	call g24_set1_mem_ackpayload_enable
+	fetch 1,mem_usb0_set_report_data+2	//data_len:max 30bytes
+	increase 2,pdata
+	copy pdata,loopcnt
+	arg mem_usb0_set_report_data,contr
+	setarg offset_24g_ackpayload
+	iadd regc,contw
+	branch memcpy
+
+
+dongle_auto_bind:
+	bpatch patch17_7,mem_patch17
+	call g24_mode_switch_init
+dongle_auto_bind_loop:
+	call g24_receive_process
+	call usb_isr
+	branch dongle_auto_bind_loop
+
+g24_dongle_work_mode_auto:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_WORK
+	call g24_dongle_work_mode_start
+	branch g24_rx_nodata_process
+
+g24_dongle_bind_mode_auto:
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_BIND
+	call g24_dongle_bind_init
+	call g24_dongle_bind_data_process
+	call g24_fetch_mem_bind_device_status
+	//fetch 1,mem_dongle_bind_device_status
+	rtn blank
+	call g24_set0_mem_mode_switch
+	//jam 0,mem_24g_mode_switch
+	call dongle_check_mode
+	call g24_enable_nodata_timer
+g24_timer_init:
+	setarg 0
+	add regc,offset_24g_tx_btclk,contw
+	//store 4,mem_24g_tx_btclk
+	branch g24_contw_istore_4byte
+
+g24_timer_check:
+	call disable_user
+	add regc,offset_24g_tx_btclk,rega
+	ifetcht 4,rega	
+	//fetcht 4,mem_24g_tx_btclk
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall g24_timer_timeout,positive
+	copy pdata,regb
+	add regc,offset_24g_tx_btclk,rega
+	ifetch 4,rega
+	//fetch 4,mem_24g_tx_btclk
+	add regc,offset_24g_interval,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_24g_interval
+	iadd temp,temp
+	copy regb,pdata
+	isub temp,null
+	nrtn positive
+	set0 28,pdata
+	add regc,offset_24g_tx_btclk,contw
+	istore 4,contw
+	//store 4,mem_24g_tx_btclk
+	branch enable_user
+
+g24_mode_switch_init:
+	setarg 1
+	call g24_store_mem_mode_switch
+	//jam 1,mem_24g_mode_switch
+	call g24_set0_mem_time_slice
+	//jam 0,mem_24g_time_slice
+	setarg 0xff
+	add regc,offset_24g_interval,contw
+	istore 1,contw
+	//jam 0xff,mem_24g_interval
+	branch g24_timer_init
+
+g24_mode_switch:
+	setarg offset_24g_mode_switch
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_mode_switch
+	rtn blank
+	call g24_timer_check
+	nrtn user
+	call g24_fetch_mem_time_slice
+	//fetch 1,mem_24g_time_slice
+	increase 1,pdata
+	and_into 1,pdata
+	call g24_store_mem_time_slice
+	//store 1,mem_24g_time_slice
+	beq 0,dongle_check_mode
+	beq 1,g24_bind_mode_enable
+	rtn
+
+g24_bind_mode_enable:
+	//jam DONGLE_BIND,mem_dongle_work_mode
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	//rtn
+	setarg DONGLE_BIND
+	call g24_store_mem_dongle_work_mode
+	branch g24_set0_mem_dongle_mode_init
+
+g24_enable_nodata_timer:
+	setarg 1
+	call g24_store_mem_nodata_timer_enable
+	//jam 1,mem_24g_nodata_timer_enable
+g24_enable_nodata_timer_init:
+	setarg TIMER_NODATA_DELAY
+	arg TIMER_NODATA,queue
+	branch timer_init
+
+g24_rx_nodata_process:
+	call g24_fetch_mem_nodata_timer_enable
+	//fetch 1,mem_24g_nodata_timer_enable
+	rtn blank
+	arg TIMER_NODATA,queue
+	call timer_check
+	nrtn blank
+	call g24_set0_mem_nodata_timer_enable
+	//jam 0,mem_24g_nodata_timer_enable
+	//no data for more than 100ms,then go to search
+	setarg DONGLE_SEARCH
+	call g24_store_mem_dongle_work_mode	
+	//jam DONGLE_SEARCH,mem_dongle_work_mode
+	call g24_set0_mem_dongle_mode_init
+	//jam CLEAR_INIT,mem_dongle_mode_init
+	branch g24_rx_interrupt_clear
+
+g24_dongle_search_mode_auto:
+	bpatch patch18_0,mem_patch18
+	call g24_fetch_mem_dongle_work_mode
+	//fetch 1,mem_dongle_work_mode
+	rtnne DONGLE_SEARCH
+	call g24_dongle_search_mode_init
+	call g24_rx_auto_addr_ch_search
+	call g24_receive_transmit_ack
+	nbranch g24_rx_interrupt_clear,user3
+	//dongle addr,then parse rxdata
+	call g24_dongle_search_addr_check
+	call g24_receive_packet_parse,zero
+	//receive data,then go to paired
+	//jam DONGLE_WORK,mem_dongle_work_mode
+	//jam 0,mem_24g_ackpayload_enable
+	call dongle_check_mode
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	set1 DONGLE_WORK,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_rx_interrupt_clear
+	call g24_enable_nodata_timer
+	call g24_dongle_search_addr_check
+	branch g24_dg_ch_num_reinit,zero
+	setarg offset_24g_kb_addr
+	call g24_set_rega_ifetcht_4byte
+	//fetcht 4,mem_24g_kb_addr
+	call g24_fetch_mem_addr_isub_temp
+	branch g24_kb_ch_num_reinit,zero		
+	setarg offset_24g_mouse_addr
+	call g24_set_rega_ifetcht_4byte
+	//fetcht 4,mem_24g_mouse_addr
+	call g24_fetch_mem_addr_isub_temp
+	branch g24_ms_ch_num_reinit,zero
+	rtn
+
+g24_dongle_search_addr_check:
+	setarg offset_24g_rx_addr
+	call g24_set_rega_ifetcht_4byte
+	//fetcht 4,mem_24g_rx_addr
+g24_fetch_mem_addr_isub_temp:
+	call g24_fetch_mem_addr
+	//fetch 4,mem_24g_addr
+	isub temp,null
+	rtn
+
+g24_dg_ch_num_reinit:
+	setarg offset_24g_dg_ch_number
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_dg_ch_number
+g24_current_ch_num_reinit:
+	//store 1,mem_24g_current_ch_number
+	add regc,offset_24g_current_ch_number,contw
+	branch g24_contw_istore_1byte
+
+g24_kb_ch_num_reinit:
+	setarg offset_24g_kb_ch_number
+	call g24_set_rega_ifetch_1byte	
+	//fetch 1,mem_24g_kb_ch_number
+	branch g24_current_ch_num_reinit
+g24_ms_ch_num_reinit:
+	setarg offset_24g_ms_ch_number
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_ch_number
+	branch g24_current_ch_num_reinit
+
+g24_dongle_search_mode_init:
+	call g24_fetch_mem_dongle_mode_init
+	//fetch 1,mem_dongle_mode_init
+	rtnbit1 DONGLE_SEARCH
+	set1 DONGLE_SEARCH,pdata
+	call g24_store_mem_dongle_mode_init
+	//store 1,mem_dongle_mode_init
+	call g24_set0_mem_time_slice
+	//jam 0,mem_24g_time_slice
+	call g24_set1_mem_ackpayload_enable
+	//jam 1,mem_24g_ackpayload_enable
+	setarg 0
+	add regc,offset_rssi_noise_dg_index,contw
+	istore 3,contw
+	//store 3,mem_rssi_noise_dg_index
+	arg offset_24g_dg_config_ch_once,rega
+	call g24_set_contw_with_temp
+	istore 7,contw
+	//store 7,mem_24g_dg_config_ch_once
+
+	call g24_dongle_search_addr_check
+	nrtn zero
+	add regc,offset_24g_current_ch_number,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_current_ch_number
+	arg offset_24g_dg_ch_number,rega
+	call g24_set_contw_with_regb_store_1byte
+	//store 1,mem_24g_dg_ch_number
+	add regc,offset_24g_ch,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_ch
+	//store 1,mem_24g_dg_last_ch
+	branch g24_store_mem_dg_last_ch
+
+g24_rx_auto_addr_ch_search:
+	bpatch patch18_1,mem_patch18
+	call g24_fetch_mem_time_slice
+	//fetch 1,mem_24g_time_slice
+	increase 1,pdata
+	and_into 3,pdata
+	call g24_store_mem_time_slice
+	//store 1,mem_24g_time_slice
+	//pairing address and channel come first
+	beq 0,g24_rx_auto_bind_config_kb
+	beq 1,g24_rx_auto_bind_config_dongle
+	beq 2,g24_rx_auto_bind_config_mouse
+	beq 3,g24_rx_auto_bind_config_dongle
+	rtn
+
+g24_rx_auto_bind_config_mouse:
+	call g24_dongle_bind_ms_payload_cfg
+	setarg offset_24g_mouse_addr
+	call g24_set_rega_ifetch_4byte
+	//fetch 4,mem_24g_mouse_addr
+	branch g24_rx_auto_addr_ch_search,blank
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	setarg offset_24g_ms_config_ch_once
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_config_ch_once
+	call g24_ms_config_ch_once,blank
+	setarg offset_24g_ms_last_ch
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ms_last_ch
+	call g24_store_mem_ch
+	//store 1,mem_24g_ch
+	add regc,offset_rssi_noise_ms_index,rega
+	ifetcht 1,rega
+	//fetcht 1,mem_rssi_noise_ms_index
+	arg mem_rssi_noise_ms_buffer,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_ms_index,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_ms_index
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_ms_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_ms_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive
+	setarg offset_24g_ms_ch_number	
+	call g24_set_rega_ifetcht_1byte
+	//fetcht 1,mem_24g_ms_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	arg offset_24g_ms_ch_number,rega
+	call g24_set_contw_with_regb2
+	istoret 1,contw
+	//storet 1,mem_24g_ms_ch_number
+g24_store_mem_ms_last_ch:
+	//store 1,mem_24g_ms_last_ch
+	arg offset_24g_ms_last_ch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_ms_config_ch_once:
+	setarg 1
+	arg offset_24g_ms_config_ch_once,rega
+	call g24_set_contw_with_regb_store_1byte
+	//jam 1,mem_24g_ms_config_ch_once
+	arg 0,temp
+	call g24_ch_calc
+	//store 1,mem_24g_ms_last_ch
+	//rtn
+	branch g24_store_mem_ms_last_ch
+	
+g24_rx_auto_bind_config_kb:
+	call g24_dongle_bind_kb_payload_cfg
+	setarg offset_24g_kb_addr
+	call g24_set_rega_ifetch_4byte
+	//fetch 4,mem_24g_kb_addr
+	branch g24_rx_auto_addr_ch_search,blank
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	setarg offset_24g_kb_config_ch_once
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_config_ch_once
+	call g24_kb_config_ch_once,blank
+	setarg offset_24g_kb_last_ch
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_kb_last_ch
+	call g24_store_mem_ch
+	//store 1,mem_24g_ch
+	add regc,offset_rssi_noise_kb_index,rega
+	ifetcht 1,rega	
+	//fetcht 1,mem_rssi_noise_kb_index
+	arg mem_rssi_noise_kb_buffer,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_kb_index,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_kb_index
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_kb_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_kb_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive
+	setarg offset_24g_kb_ch_number	
+	call g24_set_rega_ifetcht_1byte	
+	//fetcht 1,mem_24g_kb_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	arg offset_24g_kb_ch_number,rega
+	call g24_set_contw_with_regb2	
+	istoret 1,contw
+	//storet 1,mem_24g_kb_ch_number
+g24_store_mem_kb_last_ch:
+	//store 1,mem_24g_kb_last_ch
+	arg offset_24g_kb_last_ch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_kb_config_ch_once:
+	setarg 1
+	arg offset_24g_kb_config_ch_once,rega
+	call g24_set_contw_with_regb_store_1byte
+	//jam 1,mem_24g_kb_config_ch_once
+	arg 0,temp
+	call g24_ch_calc
+	//store 1,mem_24g_kb_last_ch
+	//rtn
+	branch g24_store_mem_kb_last_ch
+
+g24_rx_auto_bind_config_dongle:
+	call g24_dongle_bind_ms_payload_cfg
+	call g24_fetch_mem_rx_addr
+	//fetch 4,mem_24g_rx_addr
+	call g24_store_mem_addr
+	//store 4,mem_24g_addr
+	setarg offset_24g_dg_config_ch_once
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_dg_config_ch_once
+	call g24_dg_config_ch_once,blank
+	call g24_dg_store_config_ch
+	add regc,offset_rssi_noise_dg_index,rega
+	ifetcht 1,rega	
+	//fetcht 1,mem_rssi_noise_dg_index
+	arg mem_rssi_noise_dg_buffer,rega
+	call rssi_noise_store
+	add regc,offset_rssi_noise_dg_index,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_dg_index
+	call g24_noise_rssi_average
+	add regc,offset_rssi_noise_dg_avg,contw
+	istoret 1,contw
+	//storet 1,mem_rssi_noise_dg_avg
+	sub temp,RSSI_THRESH_NOISE,null
+	nrtn positive
+	setarg offset_24g_dg_ch_number	
+	call g24_set_rega_ifetcht_1byte	
+	//fetcht 1,mem_24g_dg_ch_number
+	call g24_ch_temp_incre_size4 //map size =4
+	arg offset_24g_dg_ch_number,rega
+	call g24_set_contw_with_regb2
+	istoret 1,contw
+	//storet 1,mem_24g_dg_ch_number
+g24_store_mem_dg_last_ch:
+	//store 1,mem_24g_dg_last_ch
+	//rtn
+	arg offset_24g_dg_last_ch,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+
+g24_dg_config_ch_once:
+	//jam 1,mem_24g_dg_config_ch_once
+	//fetch 1,mem_24g_dg_last_ch
+	//store 1,mem_24g_ch
+	//rtn
+	setarg 1
+	arg offset_24g_dg_config_ch_once,rega
+	call g24_set_contw_with_regb_store_1byte
+g24_dg_store_config_ch:
+	setarg offset_24g_dg_last_ch
+	call g24_set_rega_ifetch_1byte
+	branch g24_store_mem_ch
+
+
+g24_transmit_ack:
+//data type
+	add regc,offset_24g_rxbuf,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxbuf
+	call g24_store_mem_data_type
+	//store 1,mem_24g_data_type
+//read len pid crc
+	call g24_read_len_pid_crc
+//read ack
+	call g24_fetch_mem_rxbuf_add1
+	//fetch 1,mem_24g_rxbuf+1
+	isolate1 bit_ack_24g,pdata
+	branch g24tx_no_ack,true
+g24tx_with_ack:
+	call g24_ackpayload_prep
+	call g24_transmit_prep
+	call g24_transmit
+g24tx_no_ack:
+	branch g24_end_of_packet
+
+g24_ackpayload_prep:
+	bpatch patch18_2,mem_patch18
+	add regc,offset_24g_datalen,contw
+	call g24_mem_set0
+	//jam 0,mem_24g_datalen
+	setarg offset_24g_ackpayload_enable
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_ackpayload_enable
+	rtn blank
+	setarg 0x06
+	add regc,offset_24g_datalen,contw
+	istore 1,contw
+	//jam 0x06,mem_24g_datalen
+	arg 0x06,loopcnt
+	setarg offset_24g_bind_payload
+	iadd regc,contr
+	//arg mem_24g_bind_payload,contr
+	add regc,offset_24g_txbuf,contw
+	//arg mem_24g_txbuf,contw
+	branch memcpy
+
+
+g24_receive_packet_start:
+	call g24_receive_transmit_ack
+	nbranch g24_rx_interrupt_clear,user3
+	branch g24_receive_packet_parse
+
+g24_receive_transmit_ack:
+	call g24_rx_interrupt_clear
+	call g24_receive_packet
+	nrtn user3
+	branch g24_transmit_ack
+
+g24_receive_packet_parse:
+	bpatch patch18_3,mem_patch18
+	call g24_receive_packet_parse_pid_crc
+	nbranch g24_rx_interrupt_clear,user
+	add regc,offset_24g_rxdata_length,rega
+	ifetch 1,rega
+	//fetch 1,mem_24g_rxdata_length
+	branch g24_rx_interrupt_clear,blank
+	increase 2,pdata
+	iforce loopcnt
+	add regc,offset_24g_rxbuf,contr
+	//arg mem_24g_rxbuf,contr
+	setarg offset_24g_rxdata_temp
+	iadd regc,contw
+	//arg mem_24g_rxdata_temp,contw
+	call memcpy
+	call g24_set0_mem_mode_switch
+	//jam 0,mem_24g_mode_switch
+	call g24_fetch_mem_pair_mode
+	//fetch 1,mem_24g_pair_mode
+	call g24_enable_nodata_timer,blank
+	setarg offset_24g_rxdata_temp_add2
+	call g24_set_rega_ifetch_1byte
+	//fetch 1,mem_24g_rxdata_temp+2
+	beq 0x01,g24_data_type1
+	beq 0x02,g24_data_type2
+	beq 0x03,g24_data_type3
+	beq 0xff,g24_data_attemp
+	branch g24_rx_interrupt_clear
+
+g24_receive_packet_parse_pid_crc:
+	call g24_head_ptr2regc
+	call disable_user
+	add regc,offset_24g_sta_pid,rega
+	ifetch 1,rega		
+	//fetch 1,mem_24g_sta_pid
+	add regc,offset_24g_last_pid,rega
+	ifetcht 1,rega		
+	//fetcht 1,mem_24g_last_pid
+	isub temp,null
+	ncall enable_user,zero
+	add regc,offset_24g_sta_pid,rega
+	ifetch 1,rega	
+	//fetch 1,mem_24g_sta_pid
+	add regc,offset_24g_last_pid,contw
+	istore 1,contw	
+	//store 1,mem_24g_last_pid
+	add regc,offset_24g_sta_crc,rega
+	ifetch 3,rega	
+	//fetch 3,mem_24g_sta_crc
+	add regc,offset_24g_last_crc,rega
+	ifetcht 3,rega	
+	//fetcht 3,mem_24g_last_crc
+	isub temp,null
+	ncall enable_user,zero
+	add regc,offset_24g_sta_crc,rega
+	ifetch 3,rega
+	//fetch 3,mem_24g_sta_crc
+	add regc,offset_24g_last_crc,contw
+	//store 3,mem_24g_last_crc
+	branch g24_contw_istore_3byte
+
+g24_data_type1:
+	call g24_ch_timer_reinit
+	call g24_fetch_mem_abort_pac
+	store 1,mem_temp
+	//fetch 1,mem_24g_abort_pac
+	call g24_fetcht_mem_rxdata_temp
+	fetch 1,mem_temp
+	//fetcht 1,mem_24g_rxdata_temp
+	isolate1 bit_abort,temp
+	setflag true,0,pdata
+	add regc,offset_24g_abort_pac,contw
+	istore 1,contw
+	//store 1,mem_24g_abort_pac
+	beq 1,g24_data_attemp_mouse
+	call g24_fetch_mem_hop_pac
+	//fetch 1,mem_24g_hop_pac
+	call g24_fetcht_mem_rxdata_temp
+	//fetcht 1,mem_24g_rxdata_temp
+	isolate1 bit_hop,temp
+	setflag true,0,pdata
+	call g24_store_mem_hop_pac
+	//store 1,mem_24g_hop_pac
+	add regc,offset_24g_cb_rxdata_type1,rega
+	ifetch 2,rega
+	//fetch 2,mem_24g_cb_rxdata_type1
+	branch callback_func
+
+dongle_rxdata_type1:
+	setarg MS_REPORT_ID
+	store 1,mem_usb_mouse_data	//report id
+	call g24_fetch_mem_rxdata_temp_add3_7byte
+	//fetch 7,mem_24g_rxdata_temp+3	//key
+	istore 7,contw
+	call g24_fetch_mem_rxdata_temp_add3_7byte
+	//fetch 7,mem_24g_rxdata_temp+3	//key
+	ncall g24_ms_enable_blank_data_forcibly,blank//get kb data
+	call g24_fetch_mem_rxdata_temp_add3_7byte
+	//fetch 7,mem_24g_rxdata_temp+3	//key
+	call g24_ms_disable_blank_data_forcibly,blank
+g24_data_type1_usbtx_enable:
+	jam USB_EP2_MS,mem_usb_ep2_data
+g24_data_type1_usbtx_enable_ep2:	
+	fetch 1,mem_usb_tx_enable
+	set1 2,pdata
+	store 1,mem_usb_tx_enable
+	rtn
+	
+g24_ms_enable_blank_data_forcibly:
+	setarg 1
+	call g24_store_mem_ms_blank_data_enable	
+	//jam 1,mem_24g_ms_blank_data_enable
+g24_ms_enable_blank_data_timer:
+	setarg TIMER_MS_BLANK_DELAY
+	arg TIMER_MS_BLANK,queue
+	branch timer_init
+g24_ms_disable_blank_data_forcibly:
+	call g24_set0_mem_ms_blank_data_enable
+	//jam 0,mem_24g_ms_blank_data_enable
+g24_ms_disable_blank_data_timer:	
+	setarg 0
+	arg TIMER_MS_BLANK,queue
+	branch timer_init
+	
+g24_data_type2:
+	call g24_fetcht_mem_rxdata_temp
+	//fetcht 1,mem_24g_rxdata_temp
+	isolate1 bit_abort,temp
+	branch g24_data_attemp_kbd,true
+	arg mem_usb_kb_data,contw
+	call g24_data_type2_reverse_data
+	fetch 8,mem_usb_kb_data
+	ncall g24_kb_enable_blank_data_forcibly,blank//get kb data
+	fetch 8,mem_usb_kb_data
+	call g24_kb_disable_blank_data_forcibly,blank
+	call g24_head_ptr2regc
+	fetch 8,mem_usb_kb_data
+	arg offset_24g_kb_data_sta_data,rega
+	call g24_set_contw_with_temp
+	istore 8,contw
+	//store 8,mem_24g_kb_data_sta_data
+	setarg offset_24g_kb_data_last_data
+	iadd regc,rega
+	ifetcht 8,rega
+	//fetcht 8,mem_24g_kb_data_last_data
+	isub temp,null
+	ncall g24_kb_data_dispose,zero
+	setarg offset_24g_kb_data_sta_data
+	iadd regc,rega
+	ifetch 8,rega
+	//fetch 8,mem_24g_kb_data_sta_data
+	arg offset_24g_kb_data_last_data,rega
+	call g24_set_contw_with_temp
+	istore 8,contw
+	//store 8,mem_24g_kb_data_last_data
+	branch g24_rx_interrupt_clear
+
+g24_data_type2_reverse_data:
+	setarg offset_24g_rxdata_temp_add2
+	iadd regc,contr
+	//arg mem_24g_rxdata_temp+2,contr
+	arg 9,loopcnt
+	branch reverse_byte
+
+g24_kb_enable_blank_data_forcibly:
+	setarg 1
+	call g24_store_mem_kb_blank_data_enable
+	//jam 1,mem_24g_kb_blank_data_enable
+g24_kb_enable_blank_data_timer:	
+	setarg TIMER_KB_BLANK_DELAY
+	arg TIMER_KB_BLANK,queue
+	branch timer_init
+
+g24_kb_disable_blank_data_forcibly:
+	call g24_set0_mem_kb_blank_data_enable
+	//jam 0,mem_24g_kb_blank_data_enable
+g24_kb_disable_blank_data_timer:	
+	setarg 0
+	arg TIMER_KB_BLANK,queue
+	branch timer_init
+
+g24_kb_data_dispose:
+g24_kb_data_into_ep1_fifo:
+	jam USB_EP1_KB,mem_usb_ep1_data
+	fetch 1,mem_usb_tx_enable
+	set1 1,pdata
+	store 1,mem_usb_tx_enable
+	rtn
+
+g24_data_type3:
+	arg mem_usb_kb_multikey,contw
+	call g24_data_type2_reverse_data
+	fetch 2,mem_usb_kb_multikey+1
+	ncall g24_kb_mul_enable_blank_data_forcibly,blank//get multikey data
+	fetch 2,mem_usb_kb_multikey+1
+	call g24_kb_mul_disable_blank_data_forcibly,blank
+	call g24_head_ptr2regc
+	fetch 3,mem_usb_kb_multikey
+	arg offset_24g_kb_multikey_sta_data,rega
+	call g24_set_contw_with_temp_store_3byte
+	//store 3,mem_24g_kb_multikey_sta_data
+	setarg offset_24g_kb_multikey_last_data
+	iadd regc,rega
+	ifetcht 3,rega
+	//fetcht 3,mem_24g_kb_multikey_last_data
+	isub temp,null
+	ncall g24_kb_mul_data_into_ep2_fifo,zero
+	setarg offset_24g_kb_multikey_sta_data
+	iadd regc,rega
+	ifetch 3,rega
+	//fetch 3,mem_24g_kb_multikey_sta_data
+	arg offset_24g_kb_multikey_last_data,rega
+	call g24_set_contw_with_temp_store_3byte
+	//store 3,mem_24g_kb_multikey_last_data
+	branch g24_rx_interrupt_clear
+
+g24_kb_mul_data_into_ep2_fifo:
+	jam USB_EP2_MULTIKEY,mem_usb_ep2_data
+	branch g24_data_type1_usbtx_enable_ep2
+
+g24_kb_mul_enable_blank_data_forcibly:
+	setarg 1
+	call g24_store_mem_kb_mul_blank_data_enable
+	//jam 1,mem_24g_kb_mul_blank_data_enable
+g24_kb_mul_enable_blank_data_timer:	
+	setarg TIMER_KB_MUL_BLANK_DELAY
+	arg TIMER_KB_MUL_BLANK,queue
+	branch timer_init
+
+g24_kb_mul_disable_blank_data_forcibly:
+	call g24_set0_mem_kb_mul_blank_data_enable
+	//jam 0,mem_24g_kb_mul_blank_data_enable
+g24_kb_mul_disable_blank_data_timer:	
+	setarg 0
+	arg TIMER_KB_MUL_BLANK,queue
+	branch timer_init
+	
+g24_data_attemp:
+	call g24_fetch_mem_rxdata_temp_add3_1byte
+	//fetch 1,mem_24g_rxdata_temp+3
+	beq DATATYPE_MOUSE,g24_data_attemp_mouse
+	beq DATATYPE_KEYBOARD,g24_data_attemp_kbd
+	rtn
+g24_data_attemp_mouse:
+	setarg offset_24g_rxdata_temp_add4
+	call g24_set_rega_ifetch_4byte
+	arg offset_24g_mouse_addr,rega
+	call g24_set_contw_with_temp
+	//fetch 4,mem_24g_rxdata_temp+4
+	//store 4,mem_24g_mouse_addr
+	branch g24_contw_istore_4byte
+
+g24_data_attemp_kbd:
+	setarg offset_24g_rxdata_temp_add4
+	call g24_set_rega_ifetch_4byte
+	arg offset_24g_kb_addr,rega
+	call g24_set_contw_with_temp
+	//fetch 4,mem_24g_rxdata_temp+4
+	//store 4,mem_24g_kb_addr
+	branch g24_contw_istore_4byte
+
+g24_store_mem_24g_mode:
+	call g24_head_ptr2regc
+	add regc,offset_24g_mode,contw
+	istore 1,contw
+	rtn
+
+g24_fetch_mem_device_addr:
+	call g24_head_ptr2regc
+	add regc,offset_24g_device_addr,rega
+	branch g24_rega_ifetch_4byte
+g24_store_mem_device_addr:
+	call g24_head_ptr2regc
+	add regc,offset_24g_device_addr,contw
+	branch g24_contw_istore_4byte
+
+g24_fetch_mem_addr:
+	add regc,offset_24g_addr,rega
+	branch g24_rega_ifetch_4byte
+g24_store_mem_addr:
+	add regc,offset_24g_addr,contw
+g24_contw_istore_4byte:	
+	istore 4,contw
+	rtn
+
+g24_store_mem_ch:
+	add regc,offset_24g_ch,contw
+	branch g24_contw_istore_1byte
+
+g24_set0_mem_pid:
+	setarg 0
+g24_store_mem_pid:
+	call g24_head_ptr2regc
+	add regc,offset_24g_pid,contw
+	branch g24_contw_istore_1byte
+
+g24_store_mem_txpayload:
+	add regc,offset_24g_txpayload,contw
+	branch g24_contw_istore_1byte
+
+g24_set4_mem_max_retry:
+	setarg 4
+g24_store_mem_max_retry:
+	add regc,offset_24g_max_retry,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_data_type:
+	add regc,offset_24g_data_type,rega
+	branch g24_rega_ifetch_1byte
+g24_store_mem_data_type:
+	add regc,offset_24g_data_type,contw
+	branch g24_contw_istore_1byte
+
+g24_set2_mem_sync_cnt:
+	setarg 2
+g24_store_mem_sync_cnt:
+	add regc,offset_24g_sync_cnt,contw
+	branch g24_contw_istore_1byte
+
+g24_set1_mem_rf_last_sta:
+	setarg 1
+g24_store_mem_rf_last_sta:
+	call g24_head_ptr2regc
+	add regc,offset_24g_rf_last_sta,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_hop_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_hop_pac,rega
+	branch g24_rega_ifetch_1byte
+g24_set1_mem_hop_pac:
+	setarg 1
+g24_store_mem_hop_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_hop_pac,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_abort_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_abort_pac,rega
+	branch g24_rega_ifetch_1byte
+g24_set1_mem_abort_pac:
+	setarg 1
+g24_store_mem_abort_pac:
+	call g24_head_ptr2regc
+	add regc,offset_24g_abort_pac,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_pairing_sm:
+	call g24_head_ptr2regc
+	add regc,offset_24g_pairing_sm,rega
+	branch g24_rega_ifetch_1byte
+g24_store_mem_pairing_sm:
+	add regc,offset_24g_pairing_sm,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_rf_hop_ch:
+	add regc,offset_24g_rf_hop_ch,rega
+	branch g24_rega_ifetch_1byte
+g24_set0_mem_rf_hop_ch:
+	setarg 0
+g24_store_mem_rf_hop_ch:
+	add regc,offset_24g_rf_hop_ch,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_rf_work_stage:
+	add regc,offset_24g_rf_work_stage,rega
+	branch g24_rega_ifetch_1byte
+	
+g24_fetch_mem_rxbuf_add1:
+	add regc,offset_24g_rxbuf_add1,rega
+	branch g24_rega_ifetch_1byte
+
+g24_fetch_mem_check_dongle_times:
+	add regc,offset_24g_check_dongle_times,rega
+	branch g24_rega_ifetch_1byte
+g24_set0_mem_check_dongle_times:
+	setarg 0
+g24_store_mem_check_dongle_times:
+	call g24_head_ptr2regc
+	add regc,offset_24g_check_dongle_times,contw
+	branch g24_contw_istore_1byte
+
+g24_store_mem_tx_power:
+	call g24_head_ptr2regc
+	add regc,offset_tx_power_temp,rega
+	ifetch 1,rega
+g24_store_mem_txpower:
+	store 1,mem_tx_power
+	rtn
+
+g24_store_mem_tx_power_temp:
+	call g24_head_ptr2regc
+	fetch 1,mem_tx_power
+	//store 1,mem_tx_power_temp
+	add regc,offset_tx_power_temp,contw
+	branch g24_contw_istore_1byte
+
+g24_fetch_mem_power_ctrl_pac:	
+	add regc,offset_power_ctrl_packet_cnt,rega
+	branch g24_rega_ifetch_1byte
+
+g24_store_mem_power_ctrl_level:
+	add regc,offset_power_ctrl_level,contw
+	branch g24_contw_istore_1byte
+
+g24_fetcht_mem_rxdata_temp:
+	setarg offset_24g_rxdata_temp
+g24_set_rega_ifetcht_1byte:	
+	iadd regc,rega
+	ifetcht 1,rega
+	rtn
+
+g24_fetch_mem_rf_laststa:
+	setarg offset_24g_rf_laststa
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_rf_laststa:
+	setarg 0
+g24_store_mem_rf_laststa:
+	arg offset_24g_rf_laststa,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_fetch_mem_rx_addr:
+	setarg offset_24g_rx_addr
+g24_set_rega_ifetch_4byte:	
+	call g24_set_rega
+g24_rega_ifetch_4byte:
+	ifetch 4,rega
+	rtn
+
+g24_fetch_mem_time_slice:
+	setarg offset_24g_time_slice
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_time_slice:
+	setarg 0
+g24_store_mem_time_slice:
+	arg offset_24g_time_slice,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_set0_mem_mode_switch:
+	setarg 0
+g24_store_mem_mode_switch:
+	arg offset_24g_mode_switch,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_bind_payload:
+	arg offset_24g_bind_payload,rega
+	branch g24_set_contw_with_regb_store_1byte	
+	
+g24_fetch_mem_bind_device_status:
+	setarg offset_dongle_bind_device_status
+	branch g24_set_rega_ifetch_1byte
+g24_store_mem_bind_device_status:
+	arg offset_dongle_bind_device_status,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_fetch_mem_dongle_work_mode:
+	setarg offset_dongle_work_mode
+	branch g24_set_rega_ifetch_1byte
+g24_set_work_mem_dongle_work_mode:
+	setarg DONGLE_WORK
+g24_store_mem_dongle_work_mode:
+	arg offset_dongle_work_mode,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_fetch_mem_dongle_mode_init:
+	setarg offset_dongle_mode_init
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_dongle_mode_init:
+	setarg CLEAR_INIT
+g24_store_mem_dongle_mode_init:
+	arg offset_dongle_mode_init,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_set0_mem_ackpayload_enable:
+	setarg 0
+g24_store_mem_ackpayload_enable:
+	arg offset_24g_ackpayload_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+g24_set1_mem_ackpayload_enable:
+	setarg 1
+	branch g24_store_mem_ackpayload_enable
+
+g24_fetch_mem_rxdata_temp_add3_7byte:
+	setarg offset_24g_rxdata_temp_add3
+	call g24_set_rega
+	ifetch 7,rega
+	rtn
+
+g24_fetch_mem_nodata_timer_enable:
+	setarg offset_24g_nodata_timer_enable
+	branch g24_set_rega_ifetch_1byte
+g24_set0_mem_nodata_timer_enable:
+	setarg 0
+g24_store_mem_nodata_timer_enable:
+	arg offset_24g_nodata_timer_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_set0_mem_ms_blank_data_enable:
+	setarg 0
+g24_store_mem_ms_blank_data_enable:
+	arg offset_24g_ms_blank_data_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+
+g24_set0_mem_kb_blank_data_enable:
+	setarg 0
+g24_store_mem_kb_blank_data_enable:
+	arg offset_24g_kb_blank_data_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_set0_mem_kb_mul_blank_data_enable:
+	setarg 0
+g24_store_mem_kb_mul_blank_data_enable:
+	arg offset_24g_kb_mul_blank_data_enable,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_power_ctrl_threshold_up:
+	arg offset_power_ctrl_threshold_up,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_power_ctrl_threshold_down:
+	arg offset_power_ctrl_threshold_down,rega
+g24_set_contw_with_regb_store_1byte:
+	call g24_set_contw_with_regb
+g24_contw_istore_1byte:
+	istore 1,contw
+	rtn
+
+g24_fetch_mem_pair_mode:
+	setarg offset_24g_pair_mode
+	branch g24_set_rega_ifetch_1byte
+
+g24_store_mem_pair_mode:
+	arg offset_24g_pair_mode,rega
+	branch g24_set_contw_with_regb_store_1byte
+	
+g24_store_mem_pair_txpower:
+	setarg offset_24g_pair_txpower
+	call g24_set_rega_ifetch_1byte
+	branch g24_store_mem_txpower
+
+g24_fetch_mem_rxdata_temp_add3_1byte:
+	setarg offset_24g_rxdata_temp_add3
+	branch g24_set_rega_ifetch_1byte
+
+g24_set_contw_with_temp:
+	copy pdata,temp
+	copy rega,pdata
+	iadd regc,contw
+	copy temp,pdata
+	rtn
+	
+g24_set_contw_with_temp_store_3byte:
+	call g24_set_contw_with_temp
+g24_contw_istore_3byte:	
+	istore 3,contw
+	rtn
+
+g24_set_contw_with_regb:
+	call g24_head_ptr2regc
+g24_set_contw_with_regb2:
+	copy pdata,regb
+	copy rega,pdata
+	iadd regc,contw
+	copy regb,pdata
+	rtn
+
+g24_set_rega:
+	call g24_head_ptr2regc
+	iadd regc,rega
+	rtn
+
+g24_set_rega_ifetch_1byte:
+	call g24_set_rega
+g24_rega_ifetch_1byte:
+	ifetch 1,rega
+	rtn
+
+g24_set_rega_ifetcht_4byte:
+	call g24_set_rega
+	ifetcht 4,rega
+	rtn
+
+g24_mem_set0:
+	setarg 0
+	branch g24_contw_istore_1byte
+
+endif
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app.prog	(working copy)
@@ -0,0 +1,576 @@
+app_init:
+	bpatch patch18_4,mem_patch18
+	fetch 1,mem_device_option
+	branch app_init,blank				/* wait ram to be initialized */
+//	beq dvc_op_ukey,le_ukey_init
+	beq dvc_op_dongle,dongle_init
+	beq dvc_op_AntiLost,antilost_init
+	beq dvc_op_shutter,shutter_init
+	beq dvc_op_module,module_init
+	beq dvc_op_car,car_init
+	beq dvc_op_remote_car,remote_car_init
+	bbit1 dvc_op_mouse,mouse_init
+	rtn
+	
+app_lpm_init:
+	bpatch patch18_5,mem_patch18
+	jam 0,mem_tester_emulate
+	jam 0,mem_debug_config
+	jam 0, mem_lch_code
+	setarg 0
+	store 5,mem_sp_state_start
+	fetch 1,mem_device_option
+	branch app_lpm_init,blank				/* wait ram to be initialized */
+	beq dvc_op_module,module_lpm_init
+app_lpm_init0:
+	rtn
+
+	
+app_process_idle:
+	call ui_dispatch
+	call check_51cmd
+	call app_process_bb_event
+	fetch 2,mem_cb_idle_process
+	branch callback_func
+	
+app_process_bt:
+	fetch 2,mem_cb_bt_process
+	branch callback_func
+	
+app_process_ble:
+	fetch 2,mem_cb_le_process
+	branch callback_func
+
+app_process_bb_event:
+	bpatch patch18_6,mem_patch18
+	//return if c51 need to process bb event
+	arg mem_ipc_fifo_bt2c51,rega
+	call fifo_out
+	rtn blank
+	//reaching here mains c51 cannot get bb event.
+	copy pdata,regc
+	call app_event_normal_process
+	branch app_process_bb_event_priority
+	
+app_discard_event:
+	arg 0,regc
+	rtn
+
+//************************************************//
+//*APP BB EVENT NORMAL PROCESS**//
+//************************************************//
+app_event_normal_process:
+	beq BT_EVT_BB_CONNECTED,app_evt_bt_conn
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_evt_button_long_pressed
+	beq BT_EVT_SETUP_COMPLETE,app_evt_setup_complete
+	beq BT_EVT_HID_HANDSHAKE,app_evt_hid_handshake
+	beq BT_EVT_HID_CONNECTED,app_bb_event_hid_connected
+	beq BT_EVT_RECONN_FAILED,app_bb_event_reconn_failed
+	beq BT_EVT_BB_DISCONNECTED,app_bb_event_bb_disconn
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,app_bb_event_reconn_failed	
+	beq BT_EVT_LE_CONNECTED,app_le_event_bb_connected
+	beq BT_EVT_LE_DISCONNECTED,app_le_event_bb_disconn
+	beq BT_EVT_RECONN_STARTED,app_event_reconn_start
+	beq BT_EVT_ENTER_SNIFF,app_event_enter_sniff
+	beq BT_EVT_EXIT_SNIFF,app_event_exit_sniff
+	
+	beq BT_EVT_ML2CAP_CONN_REFUSED,app_event_ml2cap_conn_refused
+	beq BT_EVT_LINKKEY_GENERATE,app_event_linkkey_generate
+	beq BT_EVT_SWITCH_FAIL_MASTER,app_event_switch_fail_master
+	beq BT_EVT_SWITCH_SUCCESS_MASTER,app_event_switch_success
+	rtn
+
+
+app_evt_bt_conn:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_CONNECTED,pdata
+	store 2,mem_ui_state_map
+	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
+	rtn
+
+app_event_switch_success:
+	jam 0,mem_switch_fail_master_count
+	rtn	
+
+app_event_switch_fail_master:
+	fetch 1,mem_switch_fail_master_count
+	increase 1,pdata
+	store 1,mem_switch_fail_master_count
+	sub pdata,1,null
+	branch app_bt_role_switch,positive
+	jam 0,mem_switch_fail_master_count
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_SWITCH_FAIL,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch app_bt_disconnect
+	
+app_process_bb_event_priority:
+	fetch 2,mem_cb_bb_event_process
+	branch callback_func
+
+app_check_wake_lock:
+	fetch 2,mem_cb_check_wakelock
+	branch callback_func
+	
+app_will_enter_lpm:
+	fetch 2,mem_cb_before_lpm
+	branch callback_func
+
+app_event_linkkey_generate:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_PAIRING ,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch app_bt_store_reconn_info
+	
+app_event_reconn_start:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_RECONNECT,pdata
+	store 2,mem_ui_state_map
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_RECONN,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+app_evt_setup_complete:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_SETUP_COMPLETE,pdata
+	store 2,mem_ui_state_map
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_SETUP_DONE,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+app_evt_hid_handshake:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_HID_HANDSHAKE,pdata
+	store 2,mem_ui_state_map
+	rtn
+	
+app_event_enter_sniff:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_SNIFF,pdata
+	store 2,mem_ui_state_map
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_AFTER_SNIFF,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+	
+app_event_exit_sniff:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_SNIFF,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+app_le_event_bb_connected:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BLE_CONNECTED,pdata
+	store 2,mem_ui_state_map
+	rtn
+	
+app_le_event_bb_disconn:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BLE_CONNECTED,pdata
+	store 2,mem_ui_state_map
+	branch app_lpm_mult_disable
+	
+app_bb_event_hid_connected:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_HID_CONN,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+app_evt_button_long_pressed:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_BY_BUTTON,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+	
+app_event_ml2cap_conn_refused:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_L2CAP_REFUSED,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch  app_bt_disconnect
+
+
+app_evt_timer:
+	bpatch patch18_7,mem_patch18
+	store 1,mem_app_evt_timer_count
+app_evt_100ms_loop:
+	fetch 1,mem_app_evt_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_app_evt_timer_count
+	call ui_button_polling
+	call app_lpm_wake_auto_lock_timer
+	call app_unsniff_delay_timer
+	call app_discovery_timer
+	call flash_write_spi_sm_timer
+	fetch 2,mem_cb_event_timer
+	call callback_func
+	branch app_evt_100ms_loop
+
+
+//regc:timer addr
+//regb:timer up call back fuction
+timer_single_step:
+	ifetch 1,regc
+	rtn blank
+	pincrease -1
+	istore 1,regc
+	nrtn blank
+	copy regb,pdata
+	branch callback_func
+
+//regc:timer addr
+//regb:timer up call back fuction
+timer_single_step_2B:
+	ifetch 2,regc
+	rtn blank
+	pincrease -1
+	istore 2,regc
+	nrtn blank
+	copy regb,pdata
+	branch callback_func
+	
+app_power_timer:
+	fetcht 2,mem_power_param_ptr
+	add temp,power_timer_offset,regc
+	arg app_power_timer_timeout,regb
+	branch timer_single_step
+	
+app_power_timer_timeout:
+	call app_got_power_state_common
+	beq POWER_STARTING,app_enter_power_stanby_state
+app_enter_power_off_state:
+	branch app_enter_hibernate
+app_enter_power_stanby_state:
+	setarg POWER_STANDBY
+	istore 1,regc
+	add temp,power_standby_cb_offset,regb
+app_power_cb_common:
+	ifetch 2,regb
+	branch callback_func
+
+app_unsniff_delay_timer:
+	arg mem_unsniff2sniff_timer_count,regc
+	arg app_unsniff_delay_timeout,regb
+	branch timer_single_step
+	
+app_unsniff_delay_timeout:
+	call context_check_idle
+	branch app_bt_enter_sniff,zero
+	rtn
+
+
+app_discovery_timer:
+	arg mem_discovery_timeout_timer_count,regc
+	arg app_discovery_timeout,regb
+	branch timer_single_step_2B
+	
+app_discovery_timeout:
+	call app_bt_stop_discovery
+	call app_led_off
+	fetch 2,mem_cb_discovry_timeout
+	branch callback_func
+
+	
+app_bb_event_reconn_failed:
+	call app_disconn_reason_flag_clear
+app_clear_reconnect_flag:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_RECONNECT,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+app_bb_event_bb_disconn:
+	jam 0,mem_unsniff2sniff_timer_count
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_RECONNECT,app_bb_event_bb_reconn_disconn
+	isolate0 UI_STATE_BT_SETUP_COMPLETE,pdata
+ 	call app_discard_event,true
+app_bb_event_bb_reconn_disconn:
+	bpatch patch19_0,mem_patch19
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_CONNECTED,pdata
+	set0 UI_STATE_BT_SETUP_COMPLETE,pdata
+	set0 UI_STATE_BT_HID_CONN,pdata
+	set0 UI_STATE_BT_HID_HANDSHAKE,pdata
+	set0 UI_STATE_BT_RECONNECT,pdata
+	store 2,mem_ui_state_map
+	branch app_lpm_mult_disable
+	
+app_bb_hibernate:
+	call app_disconn_reason_clear
+	branch app_enter_hibernate
+
+	
+app_disconn_reason_clear:
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	rtn
+app_disconn_reason_flag_clear:
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+app_disconn_reason_collect_bt:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+	
+app_disconn_reason_collect_ble:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_BLE,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	setarg 0
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	rtn
+
+	
+//************************************************//
+//********APP SHARED FUNCSIONS*******//
+//************************************************//
+
+
+app_check_sniff:
+	fetch 1,mem_ui_state_map
+	isolate1 UI_STATE_BT_SNIFF,pdata
+	rtn
+
+//*****************************************//
+//*****************API********************//
+//*****************************************//
+//app_clearflag_store:
+//	setarg 0
+//	branch app_flag_store
+app_initflag_store:
+	setarg EEPROM_INIT_FLAG
+app_flag_store:
+	store 2,mem_timeup
+	bpatch patch19_1,mem_patch19
+	arg 2,temp
+	arg mem_timeup,rega
+	arg eeprom_module_init_flag,regb
+	branch iicd_write_eep_data
+
+//initflag is in eeprom to sure is eeprom nead to init
+app_initflag_check:
+	bpatch patch19_2,mem_patch19
+	arg 2,temp
+	arg mem_pdatatemp,rega
+	arg eeprom_module_init_flag,regb
+	call iicd_read_eep_data
+	fetch 2,mem_pdatatemp
+	arg EEPROM_INIT_FLAG,temp
+	isub  temp,null
+	rtn
+
+
+app_start_auto_sniff:
+	fetch 1,mem_unsniff2sniff_timer
+	store 1,mem_unsniff2sniff_timer_count
+	rtn	
+	
+app_get_lpm_wake_lock:
+	arg wake_lock_app,queue
+	branch lpm_get_wake_lock
+
+app_put_lpm_wake_lock:
+	arg wake_lock_app,queue
+	branch lpm_put_wake_lock
+	
+app_lpm_wake_auto_lock:
+	jam  LPM_WAKE_UP_DELAY_TIMER,mem_wake_up_delay_timer
+	branch app_get_lpm_wake_lock
+	
+app_lpm_wake_auto_lock_timer:
+	arg mem_wake_up_delay_timer,regc
+	arg app_put_lpm_wake_lock,regb
+	branch timer_single_step
+
+app_l2cap_flow_control_enable:
+	jam L2CAP_FLOW_CTRL_ENABLE,mem_l2cap_flow_ctrl_flag
+	rtn
+
+app_l2cap_flow_control_disable:
+	jam L2CAP_FLOW_CTRL_DISABLE,mem_l2cap_flow_ctrl_flag
+	rtn
+	
+app_bt_set_pincode:
+	jam BT_CMD_SET_PIN_CODE,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_bt_role_switch:
+	jam BT_CMD_ROLE_SWITCH,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_bt_start_reconnect:
+	bpatch patch19_3,mem_patch19
+	fetch 1,mem_app_connection_options
+	store 1,mem_connection_options
+	jam APP_FLAG_RECONNECT,mem_reconnect_flag
+	jam BT_CMD_RECONNECT,mem_fifo_temp
+	branch ui_ipc_send_cmd	
+	
+app_bt_reconnect_cancel:
+	jam BT_CMD_BB_RECONN_CANCEL,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_bt_disconnect:
+	jam BT_CMD_DISCONNECT,mem_fifo_temp
+	branch ui_ipc_send_cmd	
+
+app_bt_start_discovery_short:
+	fetch 2,mem_discovery_timeout
+	store 2,mem_discovery_timeout_timer_count
+app_bt_start_discovery_led_blink:
+	call app_led_start_blink
+app_bt_start_discovery:
+	jam BT_CMD_START_DISCOVERY,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_bt_stop_discovery:
+	setarg 0
+	store 2,mem_discovery_timeout_timer_count
+	jam BT_CMD_STOP_DISCOVERY,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_direct_adv:
+	jam BT_CMD_START_DIRECT_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_ble_stop_direct_adv:
+	jam BT_CMD_STOP_DIRECT_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_stop_adv:
+	jam BT_CMD_STOP_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_adv:	
+	jam BT_CMD_START_ADV,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_scan:
+	jam BT_CMD_LE_START_SCAN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_stop_scan:
+	jam BT_CMD_LE_STOP_SCAN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_start_conn:
+	jam BT_CMD_LE_START_CONN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_ble_disconnect:
+	jam BT_CMD_LE_DISCONNECT,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_led_start_blink:	
+	jam BT_CMD_LED_BLINK,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_led_on:
+	jam BT_CMD_LED_ON,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_led_stop_blink:
+app_led_off:
+	jam BT_CMD_LED_OFF,mem_fifo_temp
+	branch ui_ipc_send_cmd
+	
+app_enter_hibernate:
+	jam BT_CMD_ENTER_HIBERNATE,mem_fifo_temp 
+	branch ui_ipc_send_cmd
+	
+app_bt_sniff_exit:
+	jam BT_CMD_EXIT_SNIFF,mem_fifo_temp
+	branch  ui_ipc_send_cmd
+	
+app_bt_enter_sniff:
+	jam BT_CMD_ENTER_SNIFF,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_ble_store_reconn_info:
+	jam BT_CMD_STORE_RECONN_INFO_LE,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_bt_store_reconn_info:
+	jam BT_CMD_STORE_RECONN_INFO_BT,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_store_reconn_info:
+	jam BT_CMD_STORE_RECONN_INFO,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+app_lpm_mult_enable:
+	set1 mark_lpm_mult_enable,mark
+	rtn
+
+app_lpm_mult_disable:
+	set0 mark_lpm_mult_enable,mark
+	rtn
+
+
+/*
+
+mem_power_param struct
+{
+	usigned char     mem_power_state
+	usigned char     mem_power_timer
+	usigned char	 mem_power_off_timeout
+	usigned char	 mem_power_starting_timeout
+	usigned long	 mem_power_off_cb
+	usigned long	 mem_power_starting_cb
+	usigned long	 mem_power_standby_cb
+	usigned long 	 mem_ui_butten_up_cb
+}
+    	functions:power state switching by mem_app_power_timer timeout or by button_long_pressed event
+    	(power off -> power starting->power standby->power off) and power timer initialization 
+ input parameters:mem_power_param_ptr should be point to the variable(mem_power_param) address where the input parameters stored in with its format
+output parameters:switched power state will be stored in variable mem_power_state*/
+app_button_long_pressed:
+	call app_got_power_state_common
+	beq POWER_STANDBY,app_power_shutting_down
+app_power_starting:
+	setarg POWER_STARTING
+	istore 1,regc
+	add temp,power_starting_timeout_offset,rega
+	add temp,power_starting_cb_offset,regb
+app_power_common:
+	ifetcht 1,rega
+	increase 1,regc
+	istoret 1,regc
+	branch app_power_cb_common
+	
+app_power_shutting_down:
+	setarg POWER_OFF
+	istore 1,regc
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,app_power_off_end
+	call app_ble_disconnect
+app_power_off_end:
+	fetcht 2,mem_power_param_ptr
+	add temp,power_off_timeout_offset,rega
+	add temp,power_off_cb_offset,regb
+	branch app_power_common
+	
+app_got_power_state_common:
+	fetcht 2,mem_power_param_ptr
+	add temp,power_state_offset,regc
+	ifetch 1,regc
+	rtn
+
+app_event_button_up:
+	call app_got_power_state_common
+	bne POWER_OFF,app_power_release
+	branch app_enter_hibernate
+app_power_release:
+	add temp,ui_butten_up_cb_offset,regb
+	branch app_power_cb_common
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_antiLost.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_antiLost.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_antiLost.prog	(working copy)
@@ -0,0 +1,565 @@
+ifdef COMPILE_AntiLost
+antilost_init:
+	rtn wake	
+	jam 0x00,core_gpio_sel1//1: GPIO[26:25] is two wire SPI, 2: GPIO[26:23] is SPI, 3: GPIO[26:23] is PCM
+	setarg antilost_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg keyscan_process_lpm_before
+	store 2,mem_cb_before_lpm
+	setarg antilost_idle_process	//
+	store 2,mem_cb_idle_process
+	setarg antilost_le_conn_process	//
+	store 2,mem_cb_le_process
+	setarg antilost_bb_event_process 
+	store 2,mem_cb_bb_event_process
+	setarg antilost_le_bb_event_timer
+	store 2,mem_cb_event_timer
+	setarg antilost_le_notification
+	store 2,mem_cb_ble_transmit
+	setarg antilost_lpm_lock_process
+	store 2,mem_cb_check_wakelock
+	setarg antilost_le_receive_data_process
+	store 2,mem_cb_att_write
+	bpatch patch19_4,mem_patch19
+	call antilost_buzzer_pwm_init
+	call keyscan_key_init
+	call antilost_adc_init
+	call ui_led_init_global
+	call ui_button_init
+	setarg antilost_key_up_down
+	store 2,mem_cb_antl_key
+	setarg antilost_power_off_cb
+	store 2,mem_antl_power_off_cb
+	setarg antilost_power_starting_cb
+	store 2,mem_antl_power_starting_cb
+	setarg antilost_power_standby_cb
+	store 2,mem_antl_power_standby_cb
+	setarg antilost_led_on_cb
+	store 2,mem_antl_led_cb_on
+	setarg antilost_led_off_cb
+	store 2,mem_antl_led_cb_off
+	setarg antilost_buzzer_on
+	store 2,mem_antl_buzzer_cb_on
+	setarg antilost_buzzer_off
+	store 2,mem_antl_buzzer_cb_off
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	branch app_enter_hibernate
+
+antilost_le_before_hibernate:
+	call antilost_led_buzzer_stop_blink
+	branch  app_enter_hibernate
+
+antilost_le_notification:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	arg mem_temp_block5,rega
+	call queue_pop
+	nrtn user
+	arg mem_temp_block5,contr
+	branch le_send_notify_from_list
+
+antilost_power_standby_cb:
+	fetch 2,mem_antl_le_sleep_timeout
+	store 2,mem_antl_le_sleep_timer
+	jam 1,mem_antl_key_scan_enable
+	branch antilost_fast_adv_start
+	
+antilost_lpm_lock_process:
+	fetch 1,mem_antl_key_state
+	beq 1,antilost_lpm_ctrl_for_led_buzzer
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,antilost_lpm_ctrl_for_led_buzzer
+	fetch 1,mem_antl_lost_mode
+	beq 1,app_get_lpm_wake_lock
+	fetch 1, mem_antl_queue_curr_num
+	nbranch app_get_lpm_wake_lock,blank 
+	branch app_put_lpm_wake_lock
+	
+antilost_lpm_ctrl_for_led_buzzer:
+	fetch 1,mem_antl_led_state
+	fetcht 1,mem_antl_buzzer_state
+	ior temp,pdata
+	beq 1,app_get_lpm_wake_lock
+	branch app_put_lpm_wake_lock
+
+antilost_bb_event_process:
+	copy regc,pdata
+	beq BT_EVT_BUTTON_UP,app_event_button_up
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_button_long_pressed
+	beq BT_EVT_LE_CONNECTED,antilost_le_process_conn
+	beq BT_EVT_LE_DISCONNECTED,antilost_le_process_discon
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,antilost_le_conn_param_update_rsp_recieved
+	rtn
+antilost_le_conn_param_update_rsp_recieved:
+	fetch 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	beq BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_REJECTED,antilost_le_conn_param_rejected
+antilost_le_conn_param_accepted:
+	fetch 2,mem_le_new_connslavelatency
+	branch antilost_master_nonsupport_latency,blank
+antilost_le_conn_param_updata_procedure_sucsess:
+	jam CONN_PARAM_UPDATA_PROCEDURE_COMPLETE,mem_antl_conn_updata_procedure_state
+	jam 60,mem_antl_conn_update_timer
+	rtn
+
+antilost_le_conn_param_rejected:
+	fetch 2,mem_le_latency
+	branch antilost_conn_param_updata_procedure_faild,blank
+antilost_conn_param_retransimiting:
+	jam CONN_PARAM_UPDATA_PROCEDURE_STARTING,mem_antl_conn_updata_procedure_state
+	fetcht 2,mem_interval_increment
+	fetch 2,mem_le_interval_min
+	iadd temp,pdata
+	store 2,mem_le_interval_min
+	copy pdata,rega
+	fetch 2,mem_le_interval_max
+	iadd temp,pdata
+	store 2,mem_le_interval_max
+	iadd rega,pdata
+	rshift pdata,temp
+	fetch 2,mem_antl_le_unnormal_interval_max
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	store 2,mem_le_latency
+	jam 1,mem_antl_send_updata_le_param_timer
+	rtn
+antilost_conn_param_updata_procedure_faild:
+	jam CONN_PARAM_UPDATA_PROCEDURE_FAILD,mem_antl_conn_updata_procedure_state
+	rtn
+
+antilost_master_nonsupport_latency:
+	jam 0,mem_lpm_mult
+	jam 0,mem_antl_send_updata_le_param_timer
+	fetch 2,mem_le_new_conninterval	//interval from master
+	fetcht 2,mem_antl_le_unnormal_interval_min
+	isub temp,null
+	setflag positive,0,rega 
+	fetch 2,mem_antl_le_unnormal_interval_max //local intervalmax
+	fetcht 2,mem_le_new_conninterval//interval form master
+	isub temp,pdata
+	setflag positive,1,rega
+	compare	0x03,rega,0x03
+	rtn true //return if the new conn_interval in range through conn_interval_min to conn_interval_max already
+	fetch 8,mem_antl_le_unnormal_interval_min
+	store 8,mem_le_interval_min
+	jam 1,mem_antl_send_updata_le_param_timer
+	rtn                               
+
+
+antilost_le_bb_event_timer:
+	//call ui_button_check_long_press
+	call app_power_timer
+	call antilost_double_click_timer
+	call antilost_le_fast_adv_timer
+	call antilost_le_sleep_timer
+	call antilost_app_updata_le_param_timer
+	call antilost_conn_update_timer
+	branch antilost_adc_check_timer
+
+
+antilost_double_click_timer:
+	arg mem_double_click_timer,regc
+	arg antilost_double_click_timeout,regb
+	branch timer_single_step
+antilost_double_click_timeout:
+	jam 0,mem_butten_click_cnt
+	rtn
+antilost_le_fast_adv_timer:
+	arg mem_antl_fast_adv_timer,regc
+	arg antilost_le_fast_adv_timeout,regb
+	branch timer_single_step_2B
+antilost_le_fast_adv_timeout:
+	arg mem_antl_slow_adv_led_style,regc
+	arg mem_antl_slow_adv_lpm_interval,regb
+	branch antilost_adv_start_common
+	
+
+antilost_conn_update_timer:
+	arg mem_antl_conn_update_timer,regc
+	arg antilost_conn_update_timer_time_out,regb
+	branch timer_single_step
+	
+antilost_conn_update_timer_time_out:
+	fetch 2,mem_le_latency
+	store 1,mem_lpm_mult
+	rtn
+antilost_app_updata_le_param_timer:
+	arg mem_antl_send_updata_le_param_timer,regc
+	arg antilost_app_updata_le_param_timeout,regb
+	branch timer_single_step
+antilost_app_updata_le_param_timeout:
+	fetch 1,mem_le_state
+	compare 0,pdata,0x60
+	nbranch antilost_wait_for_updata_param_instant_expire,true
+	jam CONN_PARAM_UPDATA_PROCEDURE_STARTING,mem_antl_conn_updata_procedure_state
+	call  app_lpm_mult_enable
+	branch le_l2cap_tx_update_req	
+antilost_wait_for_updata_param_instant_expire:
+	jam 1,mem_antl_send_updata_le_param_timer
+	rtn
+	
+antilost_le_sleep_timer:
+	arg mem_antl_le_sleep_timer,regc
+	arg antilost_le_sleep_timer_timeout,regb
+	branch timer_single_step_2B
+
+
+antilost_le_sleep_timer_timeout:
+	branch app_button_long_pressed
+
+antilost_adc_check_timer:
+	//fetch 1,mem_antl_power_timer
+	//rtneq SHUTTER_POWER_OFF
+	arg mem_adc_timer,regc
+	arg antilost_adc_check_timer_timeout,regb
+	branch timer_single_step_2B
+antilost_adc_check_timer_timeout:
+	fetch 2,mem_adc_timeout
+	store 2,mem_adc_timer
+	branch antilost_battery_process
+
+
+antilost_le_process_conn:
+	fetch 2,mem_adc_timeout
+	store 2,mem_adc_timer
+	setarg 0
+	store 2,mem_antl_fast_adv_timer
+	store 2,mem_antl_le_sleep_timer
+	call antilost_alert_off
+	call antilost_led_buzzer_stop_blink
+	jam 0,mem_lpm_mult
+	branch app_ble_stop_adv
+	                                                      
+
+antilost_le_process_discon:
+	//setarg 0
+	//store 1,mem_hci_curr_len
+	setarg 0
+	store 4,mem_adc_timer
+	store 3,mem_antl_conn_updata_procedure_state
+	store 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	
+	jam 1,mem_alarm_config_notfy_cnt
+	fetch 2,mem_antl_le_sleep_timeout
+	store 2,mem_antl_le_sleep_timer
+	call queue_init
+	fetch 1,mem_antl_power_state
+	rtneq POWER_OFF
+	call antilost_fast_adv_start
+	branch antilost_on_off_alarm_after_disconn
+
+
+antilost_le_conn_process:
+//bpatch
+	branch antilost_key_process
+
+antilost_idle_process:
+
+	fetch 1,mem_antl_power_state
+	rtnne POWER_STANDBY
+	branch antilost_key_process
+
+
+//////////////////////////////////////////////////////////////////////////////////////////
+/////SOFT WTICH////////
+antilost_power_starting_cb:
+	arg mem_antl_power_starting_buzzer_style,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_power_starting_led_style,regc
+antilost_power_common:
+	branch antilost_led_configuration
+
+antilost_power_off_cb:
+	jam OFF,mem_le_adv_enable
+	arg mem_antl_power_off_buzzer_style,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_power_off_led_style,regc
+	branch antilost_power_common
+	
+antilost_le_receive_data_process:
+	fetch 1,mem_le_att_opcode
+	beq ATTOP_WRITE_REQUEST,antilost_le_parse_att_write_request
+	rtn
+antilost_le_parse_att_write_request:
+	fetch 2,mem_le_att_handle
+//	beq  ATT_WRITE_REQUEST_HANDLE,antilost_key_data_send
+	beq NEW_SPEC_WRITE_HANDLE,antilost_cmd_parse_for_application
+	beq NEW_SPEC_NOTIFICATION_ENABLE_HANDLE,antilost_notify_alarm_config_first_time
+	rtn
+/////////////////////////////////////////////////////////
+
+
+/////////key scan
+antilost_key_process:
+	fetch 1,mem_antl_key_scan_enable
+	rtn blank
+	branch keyscan_key_process
+
+	//queue = key index
+	//rega =1 press, =0 release
+antilost_key_up_down:
+	copy rega,pdata
+	branch antilost_key_is_up,blank
+antilost_key_is_down:
+	copy queue,pdata
+	beq 0,antilost_key0_down
+	rtn
+antilost_key_is_up:
+	copy queue,pdata
+	beq 0,antilost_key0_up
+	rtn
+
+antilost_key0_down:
+	jam 1,mem_antl_key_state
+	arg mem_antl_key_buzzer_style,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_key_led_style,regc
+	call antilost_led_configuration
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,antilost_butten_down_while_disconn
+	branch antilost_butten_down_after_conn
+	
+antilost_key0_up:
+	jam 0,mem_antl_key_state
+	branch antilost_double_click_timer_init
+
+//////////////process for double-click
+
+antilost_double_click_timer_init:
+	fetch 1,mem_butten_click_cnt
+	rtnne 1
+	jam 5,mem_double_click_timer
+	rtn
+
+antilost_butten_down_after_conn:
+	fetch 1,mem_butten_click_cnt
+	pincrease 1
+	store 1,mem_butten_click_cnt
+	beq 1,antilost_click_once
+	beq 2,antilost_click_twice
+	rtn
+antilost_click_once:
+	call antilost_alert_off
+	jam OPCODE1_BUTTEN_CLICK_ONCE,mem_antl_key0_press+5//5 represent opcode offset
+	arg mem_antl_key0_press,regc
+	branch antilost_prepare_data_and_send
+antilost_click_twice:
+	jam 0,mem_butten_click_cnt
+	jam OPCODE2_BUTTEN_DOUBLE_CLICK,mem_antl_key0_press+5
+	arg mem_antl_key0_press,regc
+	call antilost_prepare_data_and_send
+	fetch 1,mem_antl_lost_mode
+	beq 1,antilost_alert_on
+	rtn   //rtn should be retaind
+	
+antilost_butten_down_while_disconn:
+	fetch 2,mem_antl_le_sleep_timeout
+	store 2,mem_antl_le_sleep_timer
+	call antilost_alert_off
+	branch antilost_fast_adv_start
+	
+///////////////////////NEW App Spcecific///////
+antilost_cmd_parse_for_application:
+	bpatch patch19_5,mem_patch19
+	call le_app_receive_data
+	ifetch 1,rega
+	beq OPCODE3_ANTL_START_ALRAM,antilost_on_of_alram
+	beq OPCODE7_ANTL_CONFIG_ALRAM,antilost_configuration_for_alram
+	rtn
+
+antilost_on_of_alram:
+	fetch 1,mem_antl_lost_mode
+	beq ANTI_LE_ALARM_OFF,antilost_alert_on
+	beq ANTI_LE_ALARM_ON,antilost_alert_off
+	rtn
+
+antilost_configuration_for_alram:
+	ifetch 1,regb
+	beq 1,antilost_set_start_alarm_after_disconn
+	beq 0,antilost_set_no_alarm_after_disconn
+	rtn
+/////////////////check////////////////////////
+
+/*input: 1)package data addr in regc
+output:no
+function:calculate check_out value and send data*/
+//mem_temp_block5
+antilost_prepare_data_and_send:
+	bpatch patch19_6,mem_patch19
+	fetch 1,mem_client_characteristic_configuration_descriptor
+	isolate1 NOTIFICATION_ENABLE_BIT,pdata
+	nrtn true
+	add regc,6,contr
+	ifetch 2,contr
+	byteswap pdata,pdata
+	add pdata,5,loopcnt
+	add regc,3,contr
+	call calc_check_sum_start
+	istore 1,contr
+	copy regc,rega
+	branch queue_push
+
+/////////////////NEW APP SPECIFIC check end////////////////////
+
+
+/////////alarm//////////////////////////////
+antilost_alert_on:
+	fetch 1,mem_antl_power_state
+	rtn blank
+	jam 1,mem_antl_lost_mode
+	arg mem_antl_alert_buzzer_stlye,regc
+	call antilost_buzzer_configuration
+	arg mem_antl_alert_led_stlye,regc
+	call antilost_led_configuration
+	jam OPCODE4_CURRENT_ALARM_STATE,mem_antl_key0_release+5//5 represent opcode offset
+	jam 1,mem_antl_key0_release+8 //8 represent data offset,digit 1 represent alarm is on at present
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_alert_off:
+	fetch 1,mem_antl_lost_mode
+	rtn blank
+	jam 0,mem_antl_lost_mode
+	call antilost_led_buzzer_stop_blink
+	jam OPCODE4_CURRENT_ALARM_STATE,mem_antl_key0_release+5//5 represent opcode offset
+	jam 0,mem_antl_key0_release+8 //8 represent data offset,digit 0 represent alarm is off at present
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+
+antilost_set_start_alarm_after_disconn:
+	jam 1,mem_alarm_config
+	jam OPCODE7_ANTL_CONFIG_ALRAM,mem_antl_key0_release+5
+	jam 1,mem_antl_key0_release+8
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_set_no_alarm_after_disconn:
+	jam 0,mem_alarm_config
+	jam OPCODE7_ANTL_CONFIG_ALRAM,mem_antl_key0_release+5
+	jam 0,mem_antl_key0_release+8
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_on_off_alarm_after_disconn:
+	fetch 1,mem_alarm_config
+	rtn blank
+	branch antilost_alert_on
+	
+antilost_notify_alarm_config_first_time:
+	ifetch 2,rega
+	store 2,mem_client_characteristic_configuration_descriptor
+	isolate1 NOTIFICATION_ENABLE_BIT,pdata
+	nrtn true
+	fetch 1,mem_alarm_config_notfy_cnt
+	rtn blank
+	jam 0,mem_alarm_config_notfy_cnt
+	fetch 8,mem_antl_le_interval_min
+	store 8,mem_le_interval_min
+	jam 2,mem_antl_send_updata_le_param_timer
+	call antilost_battery_process
+	call antilost_battery_calculate_end //send twice to combat the failure of reception first time
+	jam OPCODE7_ANTL_CONFIG_ALRAM,mem_antl_key0_release+5
+	fetch 1,mem_alarm_config
+	store 1,mem_antl_key0_release+8
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+
+//////////////alarm end//////////////////////////
+//sytle address in regc
+antilost_buzzer_configuration:
+	arg 1,rega
+	branch antilost_configuration_common
+antilost_led_configuration:
+	arg 0,rega
+antilost_configuration_common:
+	branch antilost_led_buzzer_style_configuration
+	
+antilost_led_buzzer_stop_blink:
+	arg 0,rega
+	call ui_led_blink_stop_global
+	arg 1,rega
+	call ui_led_blink_stop_global
+	fetch 1,mem_buzzer_pwm_conf
+	branch pwm_disable
+	
+antilost_led_buzzer_style_configuration:
+	call calc_curr_struct_prt
+	arg 7,loopcnt
+	branch ui_led_set_style_global+2
+
+
+
+antilost_fast_adv_start:
+	arg mem_antl_fast_adv_led_style,regc
+	arg mem_antl_lpm_interval,regb
+antilost_adv_start_common:
+	call antilost_adv_interval_lpm_interval_set
+	call antilost_led_configuration
+	fetch 2,mem_antl_fast_adv_timeout
+	store 2,mem_antl_fast_adv_timer
+	branch app_ble_start_adv
+	
+antilost_adv_interval_lpm_interval_set:
+	ifetch 2,regb
+	store 2,mem_lpm_interval
+	ifetch 2,contr
+	store 2,mem_le_adv_interval
+	rtn
+///////////////beep////////////
+antilost_buzzer_pwm_init:
+	arg 0,rega //sys clk 12mhz
+	call pwm_init
+	fetch 6,mem_buzzer_pwm_conf
+	store 6,mem_pdatatemp
+	call pwm_out_set
+	fetch 1,mem_buzzer_pwm_conf
+	branch pwm_disable
+	
+antilost_led_on_cb:
+	jam 1,mem_antl_led_state
+	rtn	
+antilost_led_off_cb:
+	jam 0,mem_antl_led_state
+	rtn
+
+
+
+antilost_buzzer_off:
+	jam 0,mem_antl_buzzer_state
+	fetch 1,mem_buzzer_pwm_conf
+	branch pwm_disable
+	
+antilost_buzzer_on:
+	jam 1,mem_antl_buzzer_state
+	fetch 6,mem_buzzer_pwm_conf
+	store 6,mem_pdatatemp
+	branch pwm_out_set
+
+////////////////beep end///////////////////////////
+/////////////adc start////////////////////////
+antilost_adc_init:
+	jam 0,mem_adc_config_flag
+	branch adc_init_data
+
+antilost_battery_process:
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	store 2,mem_battery_current_voltage
+	arg mem_battery_calculate_set,rega
+	call adc_bat_percent_lowpower_out
+	store 1,mem_voltage_remain_percent //for debug
+	beq 0,antilost_low_battery
+	sub pdata,0x64,null
+	nbranch antilost_full_battery,positive
+	store 1,mem_antl_key0_release+8
+antilost_battery_calculate_end:
+	jam OPCODE5_BATTER_INFORMATION,mem_antl_key0_release+5
+	arg mem_antl_key0_release,regc
+	branch antilost_prepare_data_and_send
+antilost_full_battery:
+	jam 100,mem_antl_key0_release+8
+	branch antilost_battery_calculate_end
+
+antilost_low_battery:
+	branch app_button_long_pressed
+endif
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_car.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_car.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_car.prog	(working copy)
@@ -0,0 +1,888 @@
+ifdef COMPILE_CAR
+
+car_init:
+	rtn wake	
+	hfetch 1,core_gpio_sel1
+	and_into 0xf0,pdata
+	hstore 1,core_gpio_sel1
+	setarg car_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+	
+	setarg car_le_process_lpm_before
+	store 2,mem_cb_before_lpm	
+	
+	setarg app_enter_hibernate
+	store 2,mem_cb_discovry_timeout
+	
+	setarg car_scale_process_idle	
+	store 2,mem_cb_idle_process	
+	
+	setarg car_scale_process_bb_event 
+	store 2,mem_cb_bb_event_process	
+	
+	setarg app_get_lpm_wake_lock
+	store 2,mem_cb_check_wakelock
+	
+	setarg car_le_receive_data
+	store 2,mem_cb_att_write
+	
+	setarg car_le_bb_event_timer
+	store 2,mem_cb_event_timer
+	
+	call g24_head_ptr2regc
+	setarg car_24g_receive_data
+	add regc,offset_24g_cb_rxdata_type1,contw
+	istore 2,contw
+
+	setarg car_power_off_signal
+	store 2,mem_remote_car_power_off_cb
+	
+	setarg car_soft_switch_power_on_signal
+	store 2,mem_remote_car_power_standby_cb
+	
+	bpatch patch19_7,mem_patch19
+	call car_init_environment
+	call queue_init
+	jam 2,mem_lpm_mult
+	jam POWER_ON,mem_car_24g_received_pac
+	fetch 1,mem_car_config_soft_switch_enable
+	store 1,mem_car_hard_soft_switch
+	beq HARD_SWITCH, car_hard_switch_power_on_signal
+	fetch 1,mem_car_config_soft_switch_gpio
+	store 1,mem_ui_button_gpio
+	jam OFF,mem_le_adv_enable
+car_soft_switch_power_on_init:
+	call car_ui_led_init
+	call ui_button_init
+	call ui_button_polling
+	jam POWER_STARTING,mem_car_power_state
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+ 	branch app_enter_hibernate
+
+car_power_off_signal:	
+	branch car_ui_led_init
+	
+car_hard_switch_power_on_signal:
+	jam POWER_STANDBY,mem_car_power_state
+car_soft_switch_power_on_signal:
+	jam ON,mem_le_adv_enable
+	call car_ui_led_init
+	arg 0,rega
+	call ui_led_blink_start_global
+	
+	setarg FAST_ADV_INTERVAL_VALUE_CAR
+	call shutter_ble_adv_interval_set
+car_le_modified_name_adv:
+	arg mem_le_name+7,contw
+	fetch 1,mem_le_lap
+car_name_loop:
+	and pdata,0xF0,temp
+	rshift4 temp,temp
+	call car_hex_to_ascii
+	istoret 1, contw
+	and pdata,0x0F,temp
+	call car_hex_to_ascii
+	istoret 1, contw
+	call le_modified_name_att_list
+	fetcht 1,mem_le_name_len
+	copy temp,loopcnt
+	arg mem_le_adv_data+2,contw
+	arg mem_le_name,contr
+	call memcpy
+car_le_modified_name_scan:
+	fetcht 1,mem_le_name_len
+	copy temp,loopcnt
+	arg mem_le_scan_data+2,contw
+	arg mem_le_name,contr
+	branch memcpy
+car_hex_to_ascii:
+	sub temp,9,null
+	branch car_hex_num,positive
+	add temp,55,temp
+	rtn
+car_hex_num:	
+	add temp,48,temp
+	rtn
+
+car_ui_led_init:
+	fetch 1,mem_car_config_blood_led1_gpio
+	bne INVALID_PIN_NUM,car_blood_led_gpio_set
+car_ui_led_init_1:
+	fetch 1,mem_car_config_pairing_led_gpio
+	bne INVALID_PIN_NUM,car_pairing_led_gpio_set
+car_ui_led_init_2:
+	fetch 1,mem_car_config_low_voltage_led_gpio
+	bne INVALID_PIN_NUM,car_low_voltage_led_gpio_set
+car_ui_led_init_3:
+	fetch 1, mem_car_led_num
+	copy pdata,loopcnt
+	setarg mem_car_led_map
+	copy pdata,rega
+car_in_lp1:
+	copy rega,contr
+	ifetch 1,contr
+	copy contr,rega
+	beq INVALID_PIN_NUM,car_in_lp1_end
+	copy pdata,temp
+	call gpio_config_output
+car_in_lp1_end:
+	loop car_in_lp1
+car_ui_led_init_end:
+	rtn
+car_blood_led_gpio_set:
+	fetch 8,mem_car_config_blood_led1_gpio
+	store 8,mem_car_led_map+2
+	branch car_ui_led_init_1
+car_pairing_led_gpio_set:
+	store 1,mem_car_led_map
+	branch car_ui_led_init_2
+car_low_voltage_led_gpio_set:
+	store 1,mem_car_led_map+1
+	branch car_ui_led_init_3
+
+
+car_init_environment:
+	arg 0,rega
+	call pwm_init
+	call car_ir_rx_init
+	call g24_receive_process_init
+	branch car_init_adc_hvin
+
+car_init_adc_hvin:
+	jam 100,mem_car_notify_vdd_value_last
+	fetch 1,mem_car_config_low_voltage_led_gpio
+	store 1,mem_car_style2_struct_led_gpio
+	branch adc_init_data
+	
+car_le_before_hibernate:
+	call gpio_set_before_lpm_common
+	branch keyscan_process_lpm_before
+
+car_le_process_lpm_before:
+	branch keyscan_process_lpm_before
+
+car_key_scan_process:
+//	fetch 1,mem_enable_key_scan
+//	rtn blank
+	branch keyscan_key_process
+
+car_scale_process_idle:
+	call car_le_send_packet
+	call car_ir_receive_process
+	call car_g24_status_process
+	branch car_key_scan_process
+
+car_g24_status_process:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	fetch 1,mem_car_24g_received_pac
+	beq WORK_PAIRED,car_g24_connected_event
+	rtn
+car_g24_connected_event:
+	fetch 1,mem_car_24g_status
+	rtneq WORK_PAIRED
+	jam WORK_PAIRED,mem_car_24g_status
+	branch car_g24_connected
+
+car_le_send_packet:
+	fetch 2,mem_ui_state_map
+	rtnbit0 UI_STATE_BLE_CONNECTED
+	call le_fifo_check_nearly_full
+	nrtn blank
+	arg mem_car_pop_queue_buff,rega
+	call queue_pop
+	nrtn user
+	arg mem_car_pop_queue_buff,contr
+	branch le_send_notify_from_list
+ 
+car_scale_process_bb_event:
+	copy regc,pdata
+	beq BT_EVT_BUTTON_UP,app_event_button_up
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_button_long_pressed
+	beq BT_EVT_LE_CONNECTED,car_scale_event_le_conn
+	beq BT_EVT_LE_DISCONNECTED,car_scale_event_le_discon
+	rtn
+
+car_scale_event_le_conn:
+	setarg disable_24g
+	call g24_store_mem_24g_mode
+	branch car_scale_process_conn
+car_g24_connected:
+	fetch 2,mem_car_24g_no_data_timeout_count
+	store 2,mem_car_24g_no_data_timeout_timer
+car_scale_process_conn:
+	jam 0x14,mem_car_notify_vdd_timer
+	jam 0,mem_lpm_mode
+	call app_ble_stop_adv
+	call app_lpm_mult_enable
+	fetch 1,mem_car_config_pairing_led_conn_status
+	beq 0x01,car_pairing_led_conn_status_setting
+car_scale_process_conn_next:
+	arg 0,rega
+	branch ui_led_on_global
+car_pairing_led_conn_status_setting:
+	arg 0,rega
+	branch ui_led_blink_stop_global
+
+car_scale_event_le_discon:
+	setarg rx_24g
+	call g24_store_mem_24g_mode
+car_g24_disconnect:
+	setarg 0
+	store 5,mem_car_led_control
+	setarg 4
+	call pwm_disable
+	setarg 5
+	call pwm_disable
+	setarg 20
+	call pwm_disable
+	setarg 21
+	call pwm_disable
+	setarg 22
+	call pwm_disable
+	setarg 7
+	call pwm_disable
+	call queue_init
+	jam 10,mem_motor1_speed
+	jam 10,mem_motor2_speed
+	jam 10,mem_motor3_speed
+//	jam 1,mem_lpm_mode
+	jam 2,mem_lpm_mult
+	arg 0,rega
+	call ui_led_blink_start_global
+
+	setarg FAST_ADV_INTERVAL_VALUE_CAR
+	call shutter_ble_adv_interval_set
+	branch app_ble_start_adv
+
+car_le_bb_event_timer:
+//	call car_ui_power_timeout_timer
+	call car_moto1_blank_data_timer
+	call car_moto2_blank_data_timer
+	call car_moto3_blank_data_timer
+	call app_power_timer
+	call car_led_control_timer
+	call car_notify_vdd_timer
+	call car_24g_no_data_timeout_timer
+	call car_ir_breakdown_timer
+	branch car_attack_shake_timer
+
+car_ir_breakdown_timer:
+	arg mem_car_ir_breakdown_check_timer,regc
+	arg car_ir_breakdown_timeout,regb
+	branch timer_single_step
+car_ir_breakdown_timeout:
+	call car_ir_gpio_get_status
+	nrtn true
+	jam 1,mem_car_ir_breakdown_flag
+	rtn
+	
+car_24g_no_data_timeout_timer:
+	arg mem_car_24g_no_data_timeout_timer,regc
+	arg car_24g_no_data_timer_timeout,regb
+	branch timer_single_step_2B
+car_24g_no_data_timer_timeout:
+	jam WORK_SEARCH,mem_car_24g_status
+	branch car_g24_disconnect
+
+car_attack_shake_timer:
+	arg mem_car_attack_shake_timer,regc
+	arg car_attack_shake,regb
+	branch timer_single_step
+car_attack_shake:
+	fetch 1, mem_car_attack_shake_flag
+	branch car_attack_shake_stop,blank
+	jam 2,mem_car_attack_shake_timer
+	jam 0, mem_car_attack_shake_flag
+	setarg 0x0a02
+	store 2,mem_le_receive_payload
+	fetch 1,mem_car_config_device_select
+	beq DEVICE_BATTLE_TANK,car_attack_shake_front_battle_tank
+car_attack_shake_front_battle_car:
+	branch car_motor_control
+car_attack_shake_front_battle_tank:
+	setarg 0x0a02
+	store 2,mem_le_receive_payload+2
+	branch car_motor_control
+car_attack_shake_stop:
+	setarg 0
+	store 4,mem_le_receive_payload
+	branch car_motor_control
+
+car_notify_vdd_timer:
+	fetch 1,mem_car_config_bat_notify_enable
+	rtn blank
+ 	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,car_low_bat_led_off
+	arg mem_car_notify_vdd_timer,regc
+	arg car_notify_vdd,regb
+	branch timer_single_step
+car_notify_vdd:
+	fetch 1,mem_car_notify_vdd_count
+	store 1,mem_car_notify_vdd_timer
+ 	fetch 1,mem_car_working_flag
+ 	nrtn blank
+car_read_hvin:
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	store 2,mem_vdd_now_vol
+	arg mem_vdd_calculate_set,rega
+	call adc_bat_percent_lowpower_out
+	fetcht 1,mem_car_notify_vdd_value_last
+	isub temp,null
+	branch car_notify_vdd_next2,positive
+	store 1,mem_car_notify_vdd_value_last
+	copy pdata,temp
+car_notify_vdd_next2:
+	storet 1,mem_car_notify_vdd_percent
+	fetch 1,mem_car_config_low_voltage_percent
+	isub temp,null
+	call car_enter_low_bat,positive
+	storet 1,mem_notify_bat_payload 
+	arg 6,loopcnt
+	arg mem_notify_bat_head,contr
+	call calc_check_sum_start
+	store 1,mem_notify_bat_check_sum
+	arg mem_notify_bat_packet,rega
+	branch queue_push
+car_enter_low_bat:
+	fetch 1,mem_low_bat_flag
+	nrtn blank
+	jam 1,mem_low_bat_flag
+	arg 1,rega
+	branch ui_led_blink_start_global
+car_low_bat_led_off:
+	arg 1,rega
+	branch ui_led_blink_stop_global
+
+car_led_control_timer:
+	arg mem_car_led_control_timer,regc
+	arg car_led_control,regb
+	branch timer_single_step
+car_led_control:
+	jam 5,mem_car_led_control_timer
+	jam 0,mem_car_led_no
+	fetch 1,mem_car_led_blink_status
+	beq LED_ON,car_led_control_blink_off
+	beq LED_OFF,car_led_control_blink_on
+car_led_control_set:
+	arg mem_car_led_control,contr
+	copy contr,rega
+	arg 8,loopcnt
+car_led_control_timer_next:
+	copy rega,contr
+	ifetch 1,contr
+	copy contr,rega
+	beq LED_OFF,car_led_control_off
+	beq LED_ON,car_led_control_on
+	beq LED_BLINK,car_led_control_blink
+car_led_control_timer_next_2:
+	fetch 1,mem_car_led_no
+	increase 1,pdata
+	store 1,mem_car_led_no
+	loop car_led_control_timer_next
+	rtn
+car_led_switch:
+	fetch 1,mem_car_led_no
+	arg mem_car_config_blood_led_gpio,regb
+	iadd regb,regb
+	ifetcht 1,regb
+	rtn
+car_led_control_off:
+	call car_led_switch
+	call gpio_out_inactive
+	branch car_led_control_timer_next_2
+car_led_control_on:
+	call car_led_switch
+	call gpio_out_active
+	branch car_led_control_timer_next_2
+car_led_control_blink:
+	fetch 1,mem_car_led_blink_status
+	beq LED_ON,car_led_control_off
+	branch car_led_control_on
+car_led_control_blink_on:
+	jam LED_ON,mem_car_led_blink_status
+	branch car_led_control_set
+car_led_control_blink_off:
+	jam LED_OFF,mem_car_led_blink_status
+	branch car_led_control_set
+	
+////////////////////////check sum////////////////////////
+//loopcnt = sum number,contr = ptr
+calc_check_sum_start:
+	arg 0,rega
+calc_check_sum_loop:
+	ifetch 1,contr
+	iadd rega,rega
+	loop calc_check_sum_loop
+calc_check_sum_and:
+	and rega,0xff,pdata
+	rtn
+
+car_le_receive_data:	
+	fetch 1,mem_le_att_opcode
+	beq ATTOP_WRITE_REQUEST,car_le_parse_att_write_request
+	rtn
+car_le_parse_att_write_request:
+	fetch 2,mem_le_att_handle
+	beq ATT_CAR_CONTROL_HANDLE,car_control_le_receive
+	rtn
+
+/*
+*	typedef struct
+*	{
+*		2byte	packet_head				(mem_app_receive_temp)
+*		1byte	packet_cmd				(mem_app_receive_temp+2)
+*		2byte	packet_payload_length	(mem_app_receive_temp+3)
+*		10byte	packet_payload			(mem_app_receive_temp+5)
+*		1byte	packet_check_sum		(mem_app_receive_temp+15)
+*	}
+*/
+le_app_receive_data:
+	bpatch patch1a_0,mem_patch1a
+	ifetch 5,rega
+	store 5,mem_app_receive_temp
+	fetch 2,mem_app_receive_temp
+	arg LE_RECEIVE_PACKET_HEAD,temp
+	isub temp,null
+	nrtn zero
+	fetch 2,mem_app_receive_temp+3
+	byteswap pdata,pdata
+	store 2,mem_app_receive_temp+3
+	copy pdata,loopcnt
+	increase 5,rega
+	copy rega,contr
+	arg mem_app_receive_temp+5,contw
+	call memcpy
+	ifetch 1,contr
+	store 1,mem_app_receive_temp+15
+	arg mem_app_receive_temp+2,rega
+	arg mem_app_receive_temp+5,regb
+	rtn
+
+car_control_le_receive:
+	setarg 0
+	store 5,mem_le_receive_payload
+	store 5,mem_le_receive_payload+5
+	call le_app_receive_data
+	copy regb,contr
+	arg mem_le_receive_payload,contw
+	arg 10,loopcnt
+	call memcpy
+car_receive_cmd_select:
+	bpatch patch1a_1,mem_patch1a
+	ifetch 1,rega
+	beq CAR_CMD_OLD_CAR_CONTROL,car_drive_old
+	beq CAR_CMD_OLD_SPEED_CONTROL,car_speed_set_old
+	beq CAR_CMD_L_R_MOTOR_CONTROL,car_motor_control
+	beq CAR_CMD_F_B_MOTOR_CONTROL,car_motor_control
+	beq CAR_CMD_IR_CONTROL,car_ir_data_rx_from_app
+	beq CAR_CMD_LED_CONTROL,car_led_control_receive
+	beq CAR_CMD_DEVICE_INFO,car_info_request
+	rtn
+
+car_24g_receive_data:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	
+	fetch 2,mem_car_24g_no_data_timeout_count
+	store 2,mem_car_24g_no_data_timeout_timer
+	
+	jam WORK_PAIRED,mem_car_24g_received_pac
+	
+	setarg offset_24g_rxdata_temp_add3
+	call g24_set_rega
+	call car_control_le_receive
+
+	fetch 1,mem_app_receive_temp+2	//cmd
+	beq CAR_CMD_L_R_MOTOR_CONTROL,car_24g_receive_data_next
+	beq CAR_CMD_F_B_MOTOR_CONTROL,car_24g_receive_data_next
+	rtn
+car_24g_receive_data_next:
+	fetch 1,mem_le_receive_payload	//moto1
+	ncall car_moto1_enable_blank_data_timer,blank
+	fetch 1,mem_le_receive_payload+2	//moto2
+	ncall car_moto2_enable_blank_data_timer,blank
+	fetch 1,mem_le_receive_payload+4	//moto3
+	ncall car_moto3_enable_blank_data_timer,blank
+	rtn
+
+car_moto1_enable_blank_data_timer:
+	jam 5,mem_car_moto1_blank_timer
+	rtn
+car_moto2_enable_blank_data_timer:
+	jam 5,mem_car_moto2_blank_timer
+	rtn
+car_moto3_enable_blank_data_timer:
+	jam 5,mem_car_moto3_blank_timer
+	rtn
+
+car_moto1_blank_data_timer:
+	arg mem_car_moto1_blank_timer,regc
+	arg car_moto1_blank_data,regb
+	branch timer_single_step
+car_moto2_blank_data_timer:	
+	arg mem_car_moto2_blank_timer,regc
+	arg car_moto2_blank_data,regb
+	branch timer_single_step
+car_moto3_blank_data_timer:		
+	arg mem_car_moto3_blank_timer,regc
+	arg car_moto3_blank_data,regb
+	branch timer_single_step
+
+car_moto1_blank_data:
+	jam 0,mem_le_receive_payload
+	branch car_motor_control
+car_moto2_blank_data:
+	jam 0,mem_le_receive_payload+2
+	branch car_motor_control
+car_moto3_blank_data:
+	jam 0,mem_le_receive_payload+4
+	branch car_motor_control
+	
+	
+///////////////////////Motor//////////////////////////////////////////
+
+car_drive_old:	
+	call car_left_right_control_old
+	branch car_front_back_control_old
+car_left_right_control_old:
+	fetch 1,mem_le_receive_payload
+	store 1,mem_motor2_status
+	branch car_motor2_control
+car_front_back_control_old:
+	fetch 1,mem_motor1_speed
+	call car_reset_old_speed
+	fetch 1,mem_le_receive_payload+1
+	store 1,mem_motor1_status
+	branch car_motor1_control
+car_reset_old_speed:
+	beq SPEED_LEVEL_2,car_reset_old_speed2
+	beq SPEED_LEVEL_3,car_reset_old_speed3
+	store 1,mem_motor1_speed
+	rtn
+car_reset_old_speed2:
+	jam SPEED_LEVEL_5,mem_motor1_speed
+	rtn
+car_reset_old_speed3:
+	jam SPEED_LEVEL_10,mem_motor1_speed
+	rtn
+car_speed_set_old:
+	fetch 1,mem_le_receive_payload
+	call car_reset_old_speed
+	fetch 1,mem_motor1_speed
+	call car_motor_speed_duty_setting
+	call car_motor_speed_duty_transform
+	branch pwm_pwm0_duty_set
+
+car_motor_control:
+	fetch 1,mem_car_24g_go_die_flag
+	nrtn blank
+	fetch 6,mem_le_receive_payload
+	store 6,mem_motor1_status
+	fetch 1,mem_motor1_speed
+	fetcht 1,mem_motor2_speed
+	iand temp,pdata
+	fetcht 1,mem_motor3_speed
+	iand temp,pdata
+	call car_motor_working_flag,blank
+	bpatch patch1a_2,mem_patch1a
+	call car_motor1_control
+	call car_motor2_control
+	branch car_motor3_control
+car_motor1_control:
+	arg mem_motor1_pwm_set,regb
+	arg mem_motor1_status,contr
+	branch car_motor_status_select
+car_motor2_control:
+	arg mem_motor2_pwm_set,regb
+	arg mem_motor2_status,contr
+	branch car_motor_status_select
+car_motor3_control:
+	arg mem_motor3_pwm_set,regb
+	arg mem_motor3_status,contr
+	branch car_motor_status_select
+car_motor_working_flag:
+	jam 0,mem_car_working_flag
+	rtn
+
+car_motor_status_select:
+	ifetch 1,contr
+	beq MOTOR_STOP,car_motor_stop
+	beq GO_FRONT,car_motor_positive
+	beq GO_BACK,car_motor_negative
+	rtn
+car_motor_positive:
+	jam 0,mem_motor_select_p_n
+	branch car_motor_negative+1
+car_motor_negative:
+	jam 1,mem_motor_select_p_n
+	ifetch 1,contr
+	store 1,mem_car_motor_speed
+	ifetch 8,regb
+	branch car_motor_work
+
+car_motor_stop:
+	ifetch 1,regb
+	call pwm_disable
+	increase 1,regb
+	ifetch 1,regb
+	branch pwm_disable
+car_motor_work:
+	store 8,mem_motor_pwm_pin1_set
+	jam 1,mem_car_working_flag
+	fetch 1,mem_motor_select_p_n
+	beq 0,car_motor_select_positive
+car_motor_select_negative:
+	fetch 1,mem_motor_pwm_pin2_set
+	store 1,mem_motor_pwm_pin_set
+	fetch 1,mem_motor_pwm_pin1_set
+car_motor_work_next:
+	call pwm_disable
+	fetch 1,mem_car_motor_speed
+	call car_motor_speed_duty_setting
+	store 1,mem_motor_pwm_dute_set
+	fetch 6,mem_motor_pwm_pin_set
+	store 6,mem_pdatatemp
+	branch pwm_out_set
+car_motor_select_positive:
+	fetch 1,mem_motor_pwm_pin1_set
+	store 1,mem_motor_pwm_pin_set
+	fetch 1,mem_motor_pwm_pin2_set
+	branch car_motor_work_next
+
+car_motor_speed_duty_setting:
+	mul32 pdata,5,pdata
+	add pdata,50,pdata
+	rtn
+car_motor_speed_duty_transform:
+	arg 12000,temp
+	imul32 temp,pdata
+	div pdata,100
+	call wait_div_end
+	quotient temp
+	copy temp,rega
+	setarg 12000
+	isub temp,regb
+	rtn
+
+/////////////////////IR PROCESS/////////////////////
+car_ir_init:
+	hfetch 1,core_gpio_sel2		// select GPIO3 as pwm4
+	set1 2,pdata
+	hstore 1,core_gpio_sel2
+	setarg 158
+	hstore 2,core_pwm_pcnt4
+	hstore 2,core_pwm_ncnt4
+	rtn
+
+car_ir_data_rx_from_app:
+	fetch 1,mem_car_24g_go_die_flag
+	nrtn blank
+	fetch 2,mem_le_receive_payload
+	store 2,mem_ir_data
+	fetch 1,mem_car_24g_status
+	bne WORK_PAIRED,car_ir_data_tx
+	fetch 2,mem_le_lap
+	store 2,mem_ir_data
+car_ir_data_tx:
+	bpatch patch1a_3,mem_patch1a
+	call car_ir_init
+	call car_ir_enable
+	setarg 48000
+	call sleep
+	call car_ir_disable
+	setarg 7200
+	call sleep
+	arg 16,loopcnt
+car_ir_send_loop:
+	call car_ir_enable
+	fetch 2,mem_ir_data
+	bbit1 0,car_ir_is_bit1
+	setarg 7200
+	call sleep
+	call car_ir_disable
+	branch car_ir_wait_finish
+	
+car_ir_is_bit1:
+	setarg 14400
+	call sleep
+	call car_ir_disable
+car_ir_wait_finish:
+	setarg 7200
+	call sleep
+	fetch 2,mem_ir_data
+	rshift pdata,pdata	
+	store 2,mem_ir_data
+	loop car_ir_send_loop
+
+	jam 2,mem_car_attack_shake_timer
+	jam 1, mem_car_attack_shake_flag
+	setarg 0x0a01
+	store 2,mem_le_receive_payload
+	fetch 1,mem_car_config_device_select
+	beq DEVICE_BATTLE_TANK,car_attack_shake_back_battle_tank
+car_attack_shake_back_battle_car:
+	branch car_motor_control
+car_attack_shake_back_battle_tank:
+	setarg 0x0a01
+	store 2,mem_le_receive_payload+2
+	branch car_motor_control
+	
+car_ir_enable:
+	hfetch 1,core_gpio_key2			// PWM4_enable
+	or_into 0x40,pdata
+	hstore 1,core_gpio_key2	
+	rtn
+car_ir_disable:
+	hfetch 1,core_gpio_key2			// PWM4_disable
+	and_into 0xbf,pdata
+	hstore 1,core_gpio_key2
+	rtn
+	
+car_ir_rx_init:
+	fetch 1,mem_car_config_ir_enable
+	rtneq 0x00
+	call lpm_disable_exen_output
+	fetcht 1,mem_car_config_ir_rx_gpio
+	storet 1,mem_ir_rx_gpio
+	call gpio_config_input
+	call car_ir_gpio_get_status
+	nrtn true
+	jam 1,mem_car_ir_breakdown_check_timer
+	rtn
+
+car_ir_receive_process:
+	fetch 1,mem_car_config_ir_enable
+	rtneq FLAG_IR_DISABLE	
+	fetch 1,mem_car_ir_breakdown_flag
+	nrtn blank
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,car_ir_receive_process_next
+	fetch 1,mem_car_24g_status
+	rtnne WORK_PAIRED
+car_ir_receive_process_next:
+	bpatch patch1a_4,mem_patch1a
+	call car_ir_gpio_get_status
+	nrtn true
+	setarg 36000
+	call sleep
+	call car_ir_gpio_get_status
+	nrtn true
+	call car_ir_clk_get
+car_ir_packet_head_wait_end:
+	call car_ir_clk_check
+	nrtn positive
+	call car_ir_gpio_get_status
+	branch car_ir_packet_head_wait_end,true
+	arg 0,rega
+	arg 16,loopcnt
+	call car_ir_clk_get
+car_ir_receive_process_loop:
+	call car_ir_clk_check
+	nrtn positive
+	call car_ir_gpio_get_status
+	nbranch car_ir_receive_process_loop,true
+	setarg 10800
+	call sleep
+	call car_ir_gpio_get_status
+	branch car_ir_get_bit1,true
+car_ir_get_bit0:
+	setarg 0
+ 	rshift rega,rega
+	ior rega,rega
+	loop car_ir_receive_process_loop
+	branch car_ir_receive_process_end
+car_ir_get_bit1:
+	setarg 0x8000
+	rshift rega,rega
+	ior rega,rega
+	call car_ir_clk_get
+car_ir_get_bit1_wait_low_end:
+	call car_ir_clk_check
+	nrtn positive
+	call car_ir_gpio_get_status
+	branch car_ir_get_bit1_wait_low_end,true
+	loop car_ir_receive_process_loop
+car_ir_receive_process_end:
+	bpatch patch1a_5,mem_patch1a
+	copy rega,pdata
+	store 2,mem_ir_rx_buf
+	store 2,mem_ir_notify_data+8
+	fetch 1,mem_car_24g_status
+	beq WORK_PAIRED,car_ir_24g_receive_attack
+car_ir_data_notify:
+	arg 0x07,loopcnt
+	arg mem_ir_notify_data_head,contr
+	call calc_check_sum_start
+	store 1,mem_ir_notify_data_check_sum
+	arg mem_ir_notify_data,rega
+	branch queue_push
+
+car_ir_24g_receive_attack:
+	fetch 1,mem_car_24g_ir_receive_attack_count
+	increase 1,pdata
+	store 1,mem_car_24g_ir_receive_attack_count
+	div pdata,2
+	call wait_div_end
+	quotient temp
+	remainder pdata
+	nbranch car_ir_24g_receive_attack_blink,blank
+car_ir_24g_receive_attack_off:
+	fetch 1,mem_car_config_led_num
+	isub temp,null
+	call car_ir_24g_go_die,zero
+	arg mem_car_led_control,pdata
+	increase -1,temp
+	iadd temp,rega
+	arg 0,pdata
+	istore 1,rega
+	rtn
+car_ir_24g_receive_attack_blink:
+	arg mem_car_led_control,pdata
+	iadd temp,rega
+	arg 2,pdata
+	istore 1,rega
+	rtn
+car_ir_24g_go_die:
+	jam 1,mem_car_24g_go_die_flag
+	rtn
+car_ir_clk_get:
+	copy clkn_bt,pdata
+	store 4,mem_ir_receive_clkn
+	rtn
+car_ir_clk_check:
+	copy clkn_bt,pdata
+	fetcht 4,mem_ir_receive_clkn
+	isub temp,pdata
+	sub pdata,200,null
+	rtn
+
+car_ir_gpio_get_status:
+	fetcht 1,mem_ir_rx_gpio
+	branch gpio_get_bit
+
+car_led_control_receive:
+	fetch 8,mem_le_receive_payload
+	store 8,mem_car_led_control
+	rtn
+
+car_info_request:
+	fetch 1,mem_car_config_device_select
+	store 1,mem_car_info_request_payload
+	fetch 1,mem_car_config_motor_layout
+	store 1,mem_car_info_request_payload+1
+	fetch 1,mem_car_config_ir_enable
+	store 1,mem_car_info_request_payload+2
+	arg 13,loopcnt
+	arg mem_car_info_request_head,contr
+	call calc_check_sum_start
+	store 1,mem_car_info_request_checksum
+	arg mem_car_info_request,rega
+	branch queue_push
+    
+endif
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_light.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_light.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_light.prog	(working copy)
@@ -0,0 +1,227 @@
+
+light_init:
+	call clear_eeprom_size_2k
+	jam 0x7a,mem_curr_packet_num
+	call light_load_controler_list
+	call light_init_crr_cmd_count
+	setarg light_pairing_timer
+	store 2,mem_cb_event_timer
+	arg 0,rega
+	branch pwm_init
+
+light_pairing_timer:
+	fetch 2,mem_light_pairing_timer
+	rtn blank
+	increase -1,pdata
+	store 2,mem_light_pairing_timer
+	rtnne 0
+	jam 0,mem_light_pairing_enable
+	rtn
+
+light_init_crr_cmd_count:
+	bpatch patch1a_6,mem_patch1a
+	fetch 1,mem_light_next_record
+	sub pdata,40,null
+	rtn positive
+	jam 0,mem_light_next_record
+	rtn
+
+light_load_controler_list:
+	arg mem_light_next_record,rega
+	arg 0,regb
+	arg 81,temp
+	branch iicd_read_eep_data
+
+//output user:group record find
+light_find_controler_pairing:
+	disable user
+	fetch 1,mem_light_cnum
+	copy pdata,loopcnt
+	
+	arg mem_light_clist,rega
+	copy regc,regb
+light_find_controler_pairing_loop:
+	bpatch patch1a_7,mem_patch1a
+	call light_compare_addr_record
+	branch enable_user,zero
+light_find_single_pairing_diff:
+	increase 4,rega
+	loop light_find_controler_pairing_loop
+	rtn
+
+//rega: regb:
+light_compare_addr_record:
+	bpatch patch1b_0,mem_patch1b
+	ifetch 3,rega
+	ifetcht 3,regb
+	isub temp,null
+	rtn
+//rega: regb:
+light_compare_single_record:
+	bpatch patch1b_1,mem_patch1b
+	ifetch 3,rega
+	ifetcht 3,regb
+	isub temp,null
+	nrtn zero
+	ifetch 1,contr
+	sub pdata,0,null //0 zero
+	rtn zero
+	add rega,3,contr
+	ifetcht 1,contr
+	isub temp,null
+	rtn
+
+//output:find single controler
+light_find_controler_cmd:
+	bpatch patch1b_2,mem_patch1b
+	disable user
+	fetch 1,mem_light_cnum
+	copy pdata,loopcnt
+	
+	arg mem_light_clist,rega
+	copy regc,regb
+light_find_controler_cmd_loop:
+	call light_compare_single_record
+	branch enable_user,zero
+	increase 4,rega
+	loop light_find_controler_cmd_loop
+	rtn
+
+//regc
+light_recv_adv:
+	fetch 1,mem_le_scanrsp_rcv
+	increase 1,pdata
+	store 1,mem_le_scanrsp_rcv
+	arg mem_le_rxbuf+12,regc
+
+light_anylize_command:
+	ifetch 2,regc
+	arg 0x55aa,temp
+	isub temp,null
+	nrtn zero
+	copy contr,regc
+	ifetcht 3,regc
+	setarg 0xffffff
+	isub temp,null
+	branch light_parse_cmd,zero
+	call light_find_controler_cmd
+	branch light_parse_cmd,user
+	rtn
+
+light_parse_cmd:
+	bpatch patch1b_3,mem_patch1b
+	increase 4,regc
+	ifetch 1,regc
+	fetcht 1,mem_curr_packet_num
+	isub temp,null
+	rtn zero
+	store 1,mem_curr_packet_num
+	fetch 1,mem_le_req_rcv
+	increase 1,pdata
+	store 1,mem_le_req_rcv
+	
+	increase 1,regc
+	ifetch 1,regc
+	store 1,mem_light_crr_cmd_count
+	copy pdata,loopcnt
+	rtn blank
+light_parse_cmd_loop:
+	ifetch 1,contr
+	beq LIGHT_CMD_PWM0,light_parse_cmd_pwm0
+	beq LIGHT_CMD_PWM1,light_parse_cmd_pwm1
+	beq LIGHT_CMD_PWM2,light_parse_cmd_pwm2
+	beq LIGHT_CMD_PWM3,light_parse_cmd_pwm3
+	beq LIGHT_CMD_PWM4,light_parse_cmd_pwm4
+	beq LIGHT_CMD_PWM5,light_parse_cmd_pwm5
+	beq LIGHT_CMD_AUTO_MODE,light_parse_auto_mode
+	beq LIGHT_CMD_PAIRING,light_parse_pairing
+	loop light_parse_cmd_loop
+	rtn
+
+light_parse_cmd_pwm0:
+	copy contr,regc
+	fetch 1,mem_light_pwm0
+	store 1,mem_pdatatemp
+	arg 0,temp
+light_parse_cmd_pwm_common:
+	storet 1,mem_pdatatemp+1
+	setarg 10000
+	store 3,mem_pdatatemp+2
+	ifetch 1,regc
+	store 1,mem_pdatatemp+5
+	call  pwm_out_set
+	and regc,1,contr
+	loop light_parse_cmd_loop
+	rtn
+light_parse_cmd_pwm1:
+	copy regc,contr
+	fetch 1,mem_light_pwm1
+	store 1,mem_pdatatemp
+	arg 1,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm2:
+	copy regc,contr
+	fetch 1,mem_light_pwm2
+	store 1,mem_pdatatemp
+	arg 2,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm3:
+	copy regc,contr
+	fetch 1,mem_light_pwm3
+	store 1,mem_pdatatemp
+	arg 3,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm4:
+	copy regc,contr
+	fetch 1,mem_light_pwm4
+	store 1,mem_pdatatemp
+	arg 4,temp
+	branch light_parse_cmd_pwm_common
+light_parse_cmd_pwm5:
+	copy regc,contr
+	fetch 1,mem_light_pwm5
+	store 1,mem_pdatatemp
+	arg 5,temp
+	branch light_parse_cmd_pwm_common
+
+light_parse_auto_mode:
+	ifetch 1,contr
+	rtn
+
+light_parse_pairing:
+	copy contr,regc
+	fetch 1,mem_light_pairing_enable
+	bne 1,light_parse_pairing_abandon
+	call update_controler_list
+light_parse_pairing_abandon:
+	and regc,4,contr
+	rtn
+update_controler_list:
+	bpatch patch1b_4,mem_patch1b
+	call light_find_controler_pairing
+	branch update_conrtoler_list_found,user
+	fetch 1,mem_light_next_record
+	copy pdata,temp
+	increase 1,pdata
+	store 1,mem_light_next_record
+	call light_init_crr_cmd_count
+	lshift2 temp,temp
+	setarg mem_light_clist
+	iadd temp,contw
+	ifetch 4,regc
+	istore 4,contw
+	branch update_conrtoler_store_list
+update_conrtoler_list_found:
+	add regc,3,contr
+	ifetch 1,contr
+	rtn blank
+	ifetch 4,regc
+	istore 4,rega
+update_conrtoler_store_list:
+	arg mem_light_next_record,rega
+	arg 0,regb
+	arg 81,temp
+	branch iicd_write_eep_data
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_lightC.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_lightC.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_lightC.prog	(working copy)
@@ -0,0 +1,55 @@
+lightc_init:
+	//key scan init
+
+	//gpio init
+	fetcht 1,mem_lightc_led_gpio
+	call gpio_out_inactive
+	rtn
+
+
+lightc_dispatch:
+	//key scan 
+	
+	fetcht 1,mem_lightc_led_gpio
+	call gpio_out_active
+
+
+	fetcht 1,mem_lightc_led_gpio
+	call gpio_out_inactive
+
+	//
+	call lightc_start_adv
+
+	fetch 1,mem_adv_time
+	nrtn blank
+	//sleep 
+	call lpm_write_gpio_wakeup
+	hfetch 4,core_lpm_ctrl
+	set0 15,pdata						/* lowest lpo */
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	arg param_hibernate_clks,temp
+	branch lpm_sleep
+
+lightc_adv:
+	fetch 1,mem_adv_time
+	branch le_adv_loop_tx,blank
+	increase -1,pdata
+	store 1,mem_adv_time
+	branch le_adv_loop_tx
+
+lightc_start_adv:
+	mul32 pdata,20,pdata
+	arg mem_cmd0_string,contr
+	iadd contr,contr
+	ifetch 1,contr
+	rtn blank
+	copy pdata,rega
+	copy rega,loopcnt
+	arg mem_le_adv_data+2,contw
+	call memcpy
+	copy rega,pdata
+	increase 2,pdata
+	store 1,mem_le_adv_data_len
+	rtn
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_module.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_module.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_module.prog	(working copy)
@@ -0,0 +1,1506 @@
+
+ifdef COMPILE_MODULE
+
+
+
+
+module_init:
+	
+	rtn wake
+	call le_modified_name
+	call adc_init_data
+	setarg module_process_idle
+	store 2,mem_cb_idle_process
+	setarg module_bt_conn_process
+	store 2,mem_cb_bt_process
+	setarg module_process_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg module_le_conn_process
+	store 2,mem_cb_le_process
+	setarg module_lpm_lock
+	store 2,mem_cb_check_wakelock
+	setarg module_hci_cmd_transmit_le_notify
+	store 2,mem_cb_ble_transmit
+	setarg module_hci_event_receive_spp_data
+	store 2,mem_cb_receive_spp_data
+	setarg module_le_receive_data
+	store 2,mem_cb_att_write
+	setarg module_bb_event_timer
+	store 2,mem_cb_event_timer
+
+	call module_spp_clear_last_transmite_clock
+	bpatch patch1b_5,mem_patch1b
+	call module_lpm_uart_init
+	call module_gpio_init
+	call check_module_disabled
+	branch module_hci_event_enter_standby_mode
+
+
+module_lpm_uart_init:
+	fetch 4,mem_module_uart_rx_buffer
+	hstore 4,core_uart_rsaddr
+
+	fetch 4,mem_module_uart_tx_buffer
+	hstore 4,core_uart_tsaddr
+
+	hfetch 1,core_gpio_sel1
+	or_into 0x04,pdata
+	and_into 0xfc,pdata
+	hstore 1,core_gpio_sel1
+	jam 0x00,core_uart_ctrl
+
+	fetch 2,mem_module_uart_rx_buffer
+	hstore 2,core_uart_rrptr
+	fetch 2,mem_module_uart_tx_buffer
+	hstore 2,core_uart_twptr
+	hstore 2,core_uart_trptrp
+
+	hfetch 4,core_gpio_pu0
+	set1 7,pdata
+	hstore 4,core_gpio_pu0
+	
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_UART,pdata
+	hstore 2,core_clkoff
+	call uart_set_baud_by_mem
+	jam uartclk_crystal,core_uart_clksel
+	jam uart_ctrl_h4,core_uart_ctrl
+
+	fetch 1,mem_module_flag
+	isolate1 MODULE_FLAG_UART_FLOW_CONTROL,pdata
+	hfetcht 1,core_uart_ctrl
+	setflag true,4,temp
+	hstoret 1,core_uart_ctrl
+	rtn
+	
+
+
+module_lpm_init:
+	call module_spp_clear_last_transmite_clock
+	branch module_lpm_uart_init
+//	branch module_gpio_init
+	
+module_gpio_init:
+	//module state pin
+//	call ui_led_init	
+//	call app_led_start_blink
+	//module conn state pin
+	fetcht 1,mem_module_connect_state_gpio
+	call gpio_config_output
+	call module_set_conn_pin_low
+	
+	fetcht 1,mem_module_wake_up_gpio
+	branch gpio_config_input
+
+module_lpm_lock:
+	fetcht 1,mem_module_wake_up_gpio
+	call gpio_get_bit
+	nbranch app_put_lpm_wake_lock,true
+	branch app_get_lpm_wake_lock
+
+	
+module_le_conn_process:
+	rtn
+
+module_bt_conn_process:
+	call module_spp_enter_sniff
+	branch module_control_air_flow
+
+module_spp_enter_sniff:
+	fetch 1,mem_ui_state_map
+	bbit0 UI_STATE_BT_SPP_CONN,module_spp_clear_last_transmite_clock
+	bpatch patch1b_6,mem_patch1b
+	setarg 0x3eff
+	fetcht 4,mem_last_transmite_clock
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_SNIFF,module_spp_clear_last_transmite_clock
+	fetch 1,mem_module_flag
+	rtnbit1 MOUDLE_TASK_SNIFF
+	call module_set_sniff_task_flag
+	call app_bt_enter_sniff
+module_spp_clear_last_transmite_clock:
+	copy clkn_bt,pdata
+	store 4,mem_last_transmite_clock
+	rtn
+	
+
+module_process_idle:
+	call module_control_air_flow
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	branch module_process
+
+	
+module_process_bb_event:
+	copy regc,pdata
+	beq BT_EVT_BB_CONNECTED,module_process_bb_conn
+	beq BT_EVT_BB_DISCONNECTED,module_process_bb_event_disconned
+	beq BT_EVT_RECONN_FAILED,module_process_reconn_fail
+	beq BT_EVT_SETUP_COMPLETE,module_process_setup_complete
+	beq BT_EVT_SPP_CONNECTED,module_process_spp_connected
+	beq BT_EVT_SPP_DISCONNECTED,module_process_spp_disconnected
+	beq BT_EVT_PINCODE_REQ,module_process_evt_pincode_req
+	beq BT_EVT_ENTER_SNIFF,module_process_enter_sniff
+	beq BT_EVT_EXIT_SNIFF,module_process_exit_sniff
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,module_process_page_time_out
+	beq BT_EVT_LE_CONNECTED,module_process_le_conn
+	beq BT_EVT_LE_DISCONNECTED,module_process_bb_even_le_disconn
+	beq BT_EVT_SNIFF_NOT_ACCEPT,module_process_sniff_not_accept
+	beq BT_EVT_UNSNIFF_ACCEPT,module_process_unsniff_accept
+	beq BT_EVT_UNSNIFF_NOT_ACCEPT,module_process_unsniff_not_accept
+	beq BT_EVT_LE_PAIRING_FAIL,module_hci_event_le_pairing_fail
+	beq BT_EVT_LE_PAIRING_SUCCESS,module_hci_event_le_pairing_success
+	beq BT_EVT_LE_START_ENC,module_hci_event_start_enc
+	beq BT_EVT_LE_PAUSE_ENC,module_hci_event_pause_enc
+	beq BT_EVT_LE_TK_GENERATE,module_hci_event_le_tk
+	beq BT_EVT_BT_GKEY_GENERATE,module_hci_event_gkey_generate
+	beq BT_EVT_BT_GET_PASSKEY,module_hci_event_passkey_entry_mode
+	beq BT_EVT_BT_PAIRING_FAIL,module_hci_event_bt_pairing_fail	
+	beq BT_EVT_BT_PAIRING_SUCCESS,module_hci_event_bt_pairing_success
+ifdef SECURE_CONNECTION	
+	beq BT_EVT_LE_GKEY_GENERATE,module_hci_event_le_gkey
+endif
+	beq BT_EVT_STORE_NVRAM,module_hci_event_store_device
+	beq BT_EVT_LE_LTK_LOST,module_process_ble_ltk_lost
+	rtn
+
+	
+module_process_bb_event_disconned:
+	call module_spp_clear_last_transmite_clock
+	fetch 1,mem_flag_pairing_state
+	ncall module_hci_event_bt_pairing_fail,blank
+	call module_disconn_start
+	fetch 2,mem_ui_state_map
+	rtnbit0 UI_STATE_BT_SPP_CONN
+	branch  module_spp_disconnected
+
+module_process_spp_connected:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_SPP_CONN,pdata
+	store 2,mem_ui_state_map
+	fetch 1,mem_module_spp_lpm_mult
+	store 1,mem_lpm_mult
+	call module_set_conn_pin_low
+	branch module_hci_event_spp_connect
+
+module_process_spp_disconnected:
+//	branch module_spp_disconnected
+module_spp_disconnected:
+	fetch 2,mem_ui_state_map
+	rtnbit0 UI_STATE_BT_SPP_CONN
+	set0 UI_STATE_BT_SPP_CONN ,pdata
+	store 2,mem_ui_state_map
+	branch module_hci_event_spp_disconnect
+
+
+module_process_enter_sniff:
+
+module_sniff_param_check:
+	call module_spp_clear_last_transmite_clock
+	//fetch 1,mem_context
+	//rtnbit0 state_insniff
+	fetch 2,mem_context+coffset_tsniff
+	rshift pdata,pdata
+	fetcht 2,mem_sniff_param_interval
+	isub temp,null
+	nbranch module_sniff_param_check_unsniff,zero
+	branch app_lpm_mult_enable
+module_sniff_param_check_unsniff:
+	fetch 1,mem_module_flag
+	rtnbit1 MOUDLE_TASK_UNSNIFF
+	hfetch 2,core_uart_rxitems    //*
+	ncall module_set_unsniff_task_flag,blank    //*仰
+	branch app_bt_sniff_exit
+
+module_process_exit_sniff:
+	call module_clear_sniff_task_flag
+	branch app_lpm_mult_disable
+ 	
+module_process_setup_complete:
+	call module_spp_clear_last_transmite_clock
+	branch module_conn_start
+	
+module_process_bb_even_le_disconn:
+	call le_clr_config_more_data
+	call module_disconn_start
+	branch module_hci_event_le_disconnect
+
+module_process_evt_pincode_req:
+	branch  app_bt_set_pincode
+	
+
+module_process_sniff_not_accept:
+	branch module_clear_sniff_task_flag
+
+
+module_process_unsniff_accept:
+	fetch 1,mem_module_flag
+	bbit0 MOUDLE_TASK_UNSNIFF,app_bt_enter_sniff
+	branch module_clear_unsniff_task_flag
+
+	
+module_process_unsniff_not_accept:
+	branch module_clear_unsniff_task_flag
+
+	
+module_process_le_conn:
+	call le_send_att_exchange_mtu_requset
+	call module_conn_start
+	fetch 1,mem_module_le_lpm_mult
+	store 1,mem_lpm_mult
+	branch module_hci_event_le_connect
+
+
+module_process_bb_conn:
+	jam 0,mem_flag_mode_ssp_pin
+	call module_clear_sniff_task_flag
+	branch module_clear_unsniff_task_flag
+
+module_process_page_time_out:
+module_process_reconn_fail:
+module_disconn_start:
+	call module_start_adv_discovery_by_command
+	branch module_set_conn_pin_high
+
+
+module_process_ble_ltk_lost:
+	call le_send_reject_ind
+	branch le_send_smp_security_request
+
+
+module_set_conn_pin_high:
+	fetcht 1,mem_module_connect_state_gpio
+	branch gpio_out_active
+
+module_conn_start:
+	call module_stop_adv_discovery
+	branch module_set_conn_pin_low
+	
+module_stop_adv_discovery:
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BT_BIT,pdata
+	call app_bt_stop_discovery,true
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BLE_BIT,pdata
+	call app_ble_stop_adv,true
+	rtn
+module_set_conn_pin_low:
+	fetcht 1,mem_module_connect_state_gpio
+	branch gpio_out_inactive
+
+module_process_with_credit:
+	fetch 1,mem_credit_flag
+	rtneq CREDIT_DISABLE
+	branch rfcomm_send_uih_without_payload
+
+module_process:
+	hfetch 1,core_uart_status
+	bbit1 uart_status_rx_fifo_empty,module_process_with_credit  //rx no data
+	call uartd_prepare_rx
+	ifetch 1,contru
+	bne 0x01,module_hci_in_excp
+	hfetch 2,core_uart_rxitems
+	sub pdata,2,null
+	rtn positive
+	ifetch 1,contru
+	store 1,mem_module_uart_opcode
+	ifetcht 1,contru
+	copy contru,rega
+	storet 1,mem_module_uart_len
+	add temp,3,temp
+	hfetch 2,core_uart_rxitems
+	isub temp,temp
+	nrtn positive
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	call module_hci_cmd_control
+	fetch 1,mem_module_temp_nl_discard_packet
+	rtneq HCI_NOT_DISCARD_PACKET
+	branch module_hci_dicard_packet //discard this packet
+
+module_hci_in_excp:
+	call delay_10ms
+	call module_hci_event_invalid_packet
+	branch module_hci_release_except
+
+
+module_hci_release_except:
+	bpatch patch1b_7,mem_patch1b
+	hfetch 2,core_uart_rxitems
+	rtn blank
+	call uartd_prepare_rx
+	ifetch 1,contru
+	sub pdata,0x01,null
+	ncall module_hci_dicard_bytes,zero
+	nbranch module_hci_release_except,zero
+	ifetch 1,contru
+	rtneq HCI_CMD_SPP_DATA_REQ
+	rtneq HCI_CMD_SET_CREDIT_GIVEN
+	increase -1,contru
+	call module_hci_dicard_bytes
+	branch module_hci_release_except
+
+module_hci_dicard_packet:
+	call uartd_prepare_rx
+	increase 2,contru
+	ifetch 1,contru
+	iadd contru,contru
+module_hci_dicard_bytes:
+	branch uartd_rxdone
+	
+/*********************HCI CONTROL*********************/
+module_hci_cmd_control:
+	bpatch patch1c_0,mem_patch1c
+	fetch 1,mem_module_uart_opcode
+	beq HCI_CMD_SET_BT_ADDR_REQ,module_hci_cmd_set_bt_addr
+	beq HCI_CMD_SET_LE_ADDR_REQ,module_hci_cmd_set_le_addr
+	beq HCI_CMD_SET_VISIBILITY_REQ,module_hci_cmd_set_visibility	
+	beq HCI_CMD_SET_BT_NAME_REQ,module_hci_cmd_set_bt_name
+	beq HCI_CMD_SET_LE_NAME_REQ,module_hci_cmd_set_le_name
+	beq HCI_CMD_SPP_DATA_REQ,module_hci_cmd_receive_spp_data
+	beq HCI_CMD_LE_DATA_REQ,module_hci_cmd_receive_le_data
+	beq HCI_CMD_STATUS_IRQ,module_hci_cmd_inquire_status
+	beq HCI_CMD_SET_PAIRING_REQ,module_hci_cmd_set_pairing_mode
+	beq HCI_CMD_SET_PINCODE_REQ,module_hci_cmd_set_pincode	
+	beq HCI_CMD_SET_UARTCONTROL_REQ,module_hci_cmd_set_uart_control_mode
+	beq HCI_CMD_SET_UART_BAUD_REQ,module_hci_cmd_set_uart_baud
+	beq HCI_CMD_VERSION_REQ,module_hci_cmd_version_request
+	beq HCI_CMD_BT_DISCONNECT,module_hci_cmd_bt_disconnect
+	beq HCI_CMD_BLE_DISCONNECT,module_hci_cmd_ble_disconnect
+	beq HCI_CMD_SET_NVRAM_REQ,module_hci_cmd_set_nvram
+	beq HCI_CMD_CONFIRM_GKEY,module_hci_cmd_confirm_gkey
+	beq HCI_CMD_SET_CREDIT_GIVEN,module_hci_cmd_set_credit_given
+	beq HCI_CMD_AUTO_ADV_SCAN,module_hci_cmd_auto_adv
+	beq HCI_CMD_POWER_REQ,module_hci_cmd_power_request
+	beq HCI_CMD_POWER_SET,module_hci_cmd_power_set
+	beq HCI_CMD_PASSKEY_ENTRY,module_hci_cmd_passkey_entry
+	beq HCI_CMD_SET_GPIO,module_hci_cmd_set_gpio
+	beq HCI_CMD_READ_GPIO,module_hci_cmd_read_gpio
+	beq HCI_CMD_LE_SET_PAIRING,module_hci_cmd_le_set_pairing_mode
+	beq HCI_CMD_LE_SET_ADV_DATA,module_hci_cmd_le_set_adv_data
+	beq HCI_CMD_LE_SET_SCAN_DATA,module_hci_cmd_le_set_scan_data
+	beq HCI_CMD_LE_SEND_CONN_UPDATE_REQ,module_hci_cmd_le_send_conn_update_req
+	beq HCI_CMD_LE_SET_ADV_PARM,module_hci_cmd_set_le_adv_parameter
+	beq HCI_CMD_LE_START_PAIRING,module_hci_cmd_le_start_pairing
+	beq HCI_CMD_SET_WAKE_GPIO,module_hci_cmd_set_wake_gpio
+	beq HCI_CMD_SET_TX_POWER,module_hci_cmd_set_tx_power
+	beq HCI_CMD_LE_CONFIRM_GKEY,module_hci_cmd_le_confirm_gkey
+	beq HCI_CMD_REJECT_JUSTWORK,module_hci_cmd_set_reject_justwork_flag
+	beq HCI_CMD_RESET_CHIP_REQ,module_hci_cmd_reset_chip
+	beq HCI_CMD_LE_SET_FIXED_PASSKEY,module_hci_cmd_le_set_fixed_passkey
+	beq HCI_TEST_CMD_CLOSE_LPM,module_hci_test_cmde_close_lpm
+	branch  module_hci_event_receive_invalid_cmd
+
+/*********************HCI COMMAND*********************/
+
+//command opcode 0x00
+module_hci_cmd_set_bt_addr:
+	fetch 1,mem_module_uart_len
+	bne 6,module_hci_event_receive_invalid_cmd
+	ifetch 6,contru
+	store 6,mem_lap
+	branch module_hci_event_receive_valid_cmd
+
+//command opcode 0x01
+module_hci_cmd_set_le_addr:
+	fetch 1,mem_module_uart_len
+	bne 6,module_hci_event_receive_invalid_cmd
+	ifetch 6,contru
+	store 6,mem_le_lap
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x02
+module_hci_cmd_set_visibility:
+	fetch 1,mem_module_uart_len
+	bne 1,module_hci_event_receive_invalid_cmd
+	copy rega,contru
+	call module_hci_event_receive_valid_cmd
+	ifetcht 1,contru
+	storet 1,mem_module_bluetooth_stauts_by_command
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	rtnbit1 UI_STATE_BT_CONNECTED
+module_start_adv_discovery_by_command:
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BT_BIT,pdata
+	nbranch moudle_start_adv_by_command,true
+	fetcht 1,mem_module_bluetooth_stauts_by_command
+	and temp,0x03,pdata
+	store 1,mem_scan_mode
+moudle_start_adv_by_command:
+	fetch 1,mem_module_state
+	isolate1 MOUDLE_STATE_BLE_BIT,pdata
+	nrtn true
+	fetcht 1,mem_module_bluetooth_stauts_by_command
+	isolate1 2,temp
+	branch app_ble_start_adv,true
+	branch app_ble_stop_adv
+
+
+//command opcode 0x03
+module_hci_cmd_set_bt_name:
+	fetch 1,mem_module_uart_len
+	sub pdata,67,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_local_name_length
+	arg 8,loopcnt
+	call memset0
+	fetch 1,mem_module_uart_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_local_name,contw
+	call uart_copy_rx_bytes_fast
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x04
+module_hci_cmd_set_le_name:
+	fetch 1,mem_module_uart_len
+	sub pdata,29,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_le_name_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_le_name,contw
+	call uart_copy_rx_bytes_fast
+	call le_modified_name
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x05
+module_hci_cmd_receive_spp_data:
+	fetch 1,mem_ui_state_map
+	bbit0 UI_STATE_BT_SPP_CONN,module_hci_event_receive_invalid_cmd
+	call app_check_sniff
+	branch module_hci_cmd_spp_exit_sniff,true
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+//	call p_nl_clear_last_transmite_clock
+	call module_spp_clear_last_transmite_clock
+	fetch 1,mem_remote_credits
+	rtn blank
+	fetch 2,mem_nl_rx_len_all
+	bne 0,module_hci_cmd_pass_init_ng_rx_len_all
+	fetch 1,mem_module_uart_len
+	store 2,mem_nl_rx_len_all
+
+	copy rega,contru
+//	ifetch 2,contru
+//	store 2,mem_nl_rx_handle
+	copy contru,pdata
+	store 2,mem_nl_rx_data_src
+module_hci_cmd_pass_init_ng_rx_len_all:
+	call module_hci_cmd_get_current_packet_len_and_remain_len
+	branch spp_tx_rfcomm_packet
+	
+module_hci_cmd_spp_exit_sniff:
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	branch module_exit_sniff
+
+module_hci_cmd_get_current_packet_len_and_remain_len:
+	call module_hci_cmd_get_current_patcket_len
+	fetch 2,mem_nl_rx_len_all
+	fetcht 2,mem_current_packet_length
+	isub temp,pdata
+	store 2,mem_nl_rx_len_all
+	rtn
+
+module_hci_cmd_get_current_patcket_len:
+	fetch 2,mem_nl_rx_len_all
+	arg DM_REFCOM_BUFF_LEN,temp
+	call not_greater_than
+	fetcht 2,mem_rfcomm_max_frame_size
+	call not_greater_than
+	fetcht 2,mem_pn_max_frame_size
+	call not_greater_than
+	store 2,mem_current_packet_length
+	rtn
+
+module_hci_command_tx_spp_tx_complete:
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	jam HCI_CMD_SPP_DATA_REQ,mem_module_uart_opcode
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x09
+module_hci_cmd_receive_le_data:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,module_hci_event_receive_invalid_cmd
+	call module_check_ble_encrypt_state
+	branch module_hci_event_receive_invalid_cmd,user
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet 
+	fetch 1,mem_module_flag
+	bbit1 MODULE_FLAG_BLE_DATA_FINISH,module_hci_cmd_receive_le_data_finish
+	fetch 1,mem_module_hci_notify_len
+	nrtn blank
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet 
+	ifetch 2,contru		//handle
+	store 2,mem_module_hci_notify_handle
+	copy contru,pdata
+	store 2,mem_module_hci_nofiy_addr
+	fetch 1,mem_module_uart_len
+	pincrease -2
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	branch module_hci_event_receive_invalid_cmd,zero
+	store 1,mem_module_hci_notify_len
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	call le_set_config_more_data
+	call module_hci_cmd_transmit_le_notify
+	call module_hci_cmd_transmit_le_notify
+	call module_hci_cmd_transmit_le_notify
+	fetch 1,mem_module_flag
+	rtnbit0 MODULE_FLAG_BLE_DATA_FINISH
+module_hci_cmd_receive_le_data_finish:
+	jam HCI_DISCARD_PACKET,mem_module_temp_nl_discard_packet 
+	call module_clear_le_tx_data_flag
+	branch module_hci_event_receive_valid_cmd
+
+module_hci_cmd_transmit_le_notify:
+	fetch 1,mem_module_hci_notify_len
+	rtn blank
+	call le_fifo_check_nearly_full
+	nrtn blank				//no fifo
+	call module_get_le_remote_mtu
+	bpatch patch1c_1,mem_patch1c
+	add temp,-3,pdata		//sub handle and opcode
+	fetcht 1,mem_module_hci_notify_len
+	call not_greater_than
+	copy pdata,rega
+	copy temp,pdata
+	isub rega,pdata
+	store 1,mem_module_hci_notify_len
+	fetcht 2,mem_module_hci_notify_handle
+	call le_att_malloc_tx_notify
+	fetch 2,mem_module_hci_nofiy_addr
+	copy pdata,contru
+	copy rega,loopcnt
+	call uart_copy_rx_bytes_fast
+	copy contru,pdata
+	store 2,mem_module_hci_nofiy_addr
+	fetch 1,mem_module_hci_notify_len
+	nrtn blank
+	branch module_set_le_tx_data_flag
+
+
+//output: temp is master mtu
+module_get_le_remote_mtu:
+	arg 0x17,temp
+	fetch 1,mem_module_flag
+	rtnbit1 MODULE_FLAG_BLE_SEND_MTU23
+	fetcht 2,mem_le_remote_mtu
+	rtn
+
+module_check_ble_encrypt_state:
+	fetch 1,mem_module_flag
+	bbit1 MODULE_FLAG_BLE_DATA_ENCRYPT,le_check_encrypt_state
+	branch disable_user
+	
+
+//command opcode 0x0b
+module_hci_cmd_inquire_status:
+	branch module_hci_event_status_res
+
+
+//command opcode 0x0c
+module_hci_cmd_set_pairing_mode:
+	copy rega,contru
+	ifetch 1,contru
+	beq PAIRING_PINCODE,module_hci_pairing_pincode_mode
+	beq PAIRING_JUSTWORK,module_hci_pairing_just_work_mode
+	beq PAIRING_PASSKEY,module_hci_pairing_passkey
+	beq PAIRING_CONFIRM,module_hci_pairing_numeric_comparison
+	branch module_hci_event_receive_invalid_cmd
+module_hci_pairing_pincode_mode:
+	call ssp_disable
+	jam 0,mem_ssp_enable
+	branch module_hci_event_receive_valid_cmd
+module_hci_pairing_just_work_mode:
+	setarg SSP_MODE_JUST_WORK_IO_CAP_DATA
+module_hci_sspairing_mode:	
+	store 3,mem_sp_iocap_local
+	store 1,mem_ssp_mode_flag
+	call ssp_enable
+	jam 1,mem_ssp_enable
+	branch module_hci_event_receive_valid_cmd
+module_hci_pairing_passkey:
+	setarg SSP_MODE_PASSKEY_IO_CAP_DATA
+	branch module_hci_sspairing_mode
+
+module_hci_pairing_numeric_comparison:
+	setarg SSP_MODE_SSP_PIN_IO_CAP_DATA
+	branch module_hci_sspairing_mode
+
+//command opcode 0x0d
+module_hci_cmd_set_pincode:
+	fetch 1,mem_module_uart_len
+	sub pdata,16,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_pin_length
+	copy pdata,loopcnt
+	arg mem_pin,contw
+	call uart_copy_rx_bytes
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x0e
+module_hci_cmd_set_uart_control_mode:
+	copy rega,contru
+	ifetch 1,contru
+	hfetcht 1,core_uart_ctrl
+	nsetflag blank,4,temp
+	hstoret 1,core_uart_ctrl
+ 	branch module_hci_event_receive_valid_cmd
+
+ 	
+//command opcode 0x0f
+module_hci_cmd_set_uart_baud:
+	fetch 1,mem_module_uart_len
+	copy pdata,loopcnt
+	copy rega,contru
+	call string2dec_from_uart
+	setarg uart_clk_24
+	idiv temp
+	call wait_div_end
+	quotient pdata
+module_hci_cmd_set_uart_baud_ok:
+	store uart_baud_len,mem_baud
+	call module_hci_event_receive_valid_cmd
+	call wait_uarttx
+	branch uart_set_baud_by_mem
+
+
+//command opcode 0x10
+module_hci_cmd_version_request:
+	arg 2,rega
+	arg mem_soft_version_num,regb
+	arg 0,temp
+	branch module_hci_event_set_cmd
+module_hci_event_set_cmd_send_response:
+	store 2,mem_event_cmd_response_content
+	arg mem_event_cmd_response_content,regb
+	arg 0,temp
+	branch module_hci_event_set_cmd
+
+
+//command opcode 0x11
+module_hci_cmd_bt_disconnect:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BT_CONNECTED,module_hci_event_receive_invalid_cmd
+module_hci_cmd_bt_disconnect_doing:
+	call module_hci_event_receive_valid_cmd
+	branch app_bt_disconnect
+
+	
+//command opcode 0x12
+module_hci_cmd_ble_disconnect:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,module_hci_event_receive_invalid_cmd
+module_hci_cmd_ble_disconnect_doing:
+	call module_hci_event_receive_valid_cmd
+	branch app_ble_disconnect
+
+
+
+
+//command opcode 0x26
+module_hci_cmd_set_nvram:
+	fetch 1,mem_module_uart_len
+	copy pdata,loopcnt
+	copy rega,contru
+	fetch 2,mem_nv_data_ptr
+	icopy contw
+	call uart_copy_rx_bytes_fast
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x28
+module_hci_cmd_confirm_gkey:
+	fetch 1,mem_ui_state_map
+	bbit0 UI_STATE_BT_CONNECTED,module_hci_event_receive_invalid_cmd	
+	ifetch 1,contru
+	fetcht 1,mem_flag_mode_ssp_pin
+	setflag blank,FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT,temp
+	set1 FLAG_MODE_SSP_PIN_REVICEVE_COMPARISON_BIT ,temp
+	storet 1,mem_flag_mode_ssp_pin
+
+	call module_hci_event_receive_valid_cmd
+
+	fetch 1,mem_flag_mode_ssp_pin
+	bbit1 FLAG_MODE_SSP_PIN_RECIEVE_DHKEY_BIT,module_hci_cmd_spp_number_comparison_result_is1
+	rtn
+
+dhkey_not_accept:
+	jam 0,mem_flag_mode_ssp_pin
+	jam BT_CMD_DHKEY_NOT_ACCEPT,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+
+module_hci_cmd_spp_number_comparison_result_is1:
+	bbit1 FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT,number_comparison_successed
+	branch dhkey_not_accept	
+
+
+//command opcode 0x29
+module_hci_cmd_set_credit_given:
+	fetch 1,mem_ui_state_map
+	rtnbit0 UI_STATE_BT_SPP_CONN
+	fetch 1,mem_credit_flag
+	rtneq CREDIT_DISABLE
+	ifetch 1,contru
+	fetcht 1,mem_credit_given
+	iadd temp,temp
+	storet 1,mem_credit_given
+	rtn
+
+	
+//command opcode 0x2a
+module_hci_cmd_auto_adv:
+	arg 0x40,loopcnt
+	arg mem_le_adv_data_len,contw
+	call clear_mem
+	setarg 0
+	store 1,mem_regb
+	copy rega,contru
+module_hci_cmd_auto_adv_loop:
+	copy contru,pdata
+	store 2,mem_regc
+	call module_hci_cmd_auto_adv_adv_analys
+
+	fetch 1,mem_regb
+	fetcht 1,mem_temp
+	increase 1,temp
+	iadd temp,pdata
+	store 1,mem_regb
+
+	sub pdata,31,null
+	nbranch module_hci_cmd_auto_adv_store_scan,positive
+module_hci_cmd_auto_adv_store_adv:
+	fetcht 1,mem_le_adv_data_len
+	setarg mem_le_adv_data
+	iadd temp,pdata
+	store 2,mem_contw
+	fetcht 1,mem_temp
+	increase 1,temp
+	fetch 1,mem_le_adv_data_len
+	iadd temp,pdata
+	store 1,mem_le_adv_data_len
+	branch module_hci_cmd_auto_adv_store_common
+module_hci_cmd_auto_adv_store_scan:
+	fetcht 1,mem_le_scan_data_len
+	setarg mem_le_scan_data
+	iadd temp,pdata
+	store 2,mem_contw
+	fetcht 1,mem_temp
+	increase 1,temp
+	fetch 1,mem_le_scan_data_len
+	iadd temp,pdata
+	store 1,mem_le_scan_data_len
+module_hci_cmd_auto_adv_store_common:
+	fetch 2,mem_contw
+	copy pdata,contw
+	fetch 2,mem_regc
+	copy pdata,contru
+
+	copy temp,loopcnt
+	call uart_copy_rx_bytes_fast
+
+	fetch 1,mem_module_uart_len
+	fetcht 1,mem_regb
+	isub temp,null
+	nbranch  module_hci_cmd_auto_adv_loop,zero
+	branch module_hci_event_receive_valid_cmd
+
+//block of adv len in mem_temp
+module_hci_cmd_auto_adv_adv_analys:
+	ifetch 1,contru
+	store 1,mem_temp
+	ifetch 1,contru
+	store 1,mem_rega
+	rtn
+
+
+//command opcode 0x2b
+module_hci_cmd_power_request:
+	arg 0,temp
+	arg 2,rega
+	fetch 2,mem_module_vdd_quotient
+	store 2,mem_event_cmd_response_content
+	arg mem_event_cmd_response_content,regb
+	branch module_hci_event_set_cmd
+
+
+//command opcode 0x2c
+module_hci_cmd_power_set:
+	fetch 1,mem_module_uart_len
+	bne 1,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	store 1,mem_module_read_vdd_flag
+	setarg 0x00
+	store 2,mem_module_vdd_quotient
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x30
+module_hci_cmd_passkey_entry:
+	ifetch 4,contru
+	store 4,mem_pin
+	jam 4,mem_pin_length
+	jam 0,mem_authentication_passkey_times
+	call module_hci_event_receive_valid_cmd
+	branch authentication_passkey
+
+
+//command opcode 0x31
+module_hci_cmd_set_gpio:
+	fetch 1,mem_module_uart_len
+	bne 3,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	beq HCI_CMD_CONFIG_GPIO_INPUT,module_set_gpio_input
+	beq HCI_CMD_CONFIG_GPIO_OUTPUT,module_set_gpio_output
+	branch module_hci_event_receive_invalid_cmd
+
+module_set_gpio_input:
+	ifetcht 1,contru
+	ifetch 1,contru
+	beq GPIO_INPUT_HIGH_IMPEDANCE,module_set_gpio_high_impedance
+	nsetflag blank,7,temp
+	call gpio_config_input
+	branch module_hci_event_receive_valid_cmd
+
+module_set_gpio_high_impedance:
+	call gpio_set_high_impedance
+	branch module_hci_event_receive_valid_cmd
+	
+module_set_gpio_output:
+	ifetcht 1,contru
+	call gpio_config_output0
+	ifetch 1,contru	
+	isolate1 0,pdata
+	call gpio_out_flag
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x32
+module_hci_cmd_read_gpio:
+	fetch 1,mem_module_uart_len
+	bne 1,module_hci_event_receive_invalid_cmd
+	ifetcht 1,contru
+	call gpio_get_bit
+	setarg 0x0
+	nsetflag true,0,pdata
+	arg 1,rega
+	branch module_hci_event_set_cmd_send_response
+
+
+//command opcode 0x33
+module_hci_cmd_le_set_pairing_mode:
+	copy rega,contru
+	ifetch 1,contru
+	copy pdata,temp
+ifdef SECURE_CONNECTION
+	beq LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK,module_le_set_pairing_mode_secure_justwork
+	beq LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC,module_le_set_pairing_mode_secure_numeric
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,module_le_set_pairing_mode_secure_passkey
+endif
+	store 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_NONE, module_le_set_no_pairing
+	beq LE_PAIRING_MODE_LAGACY_JUSTWORK,module_le_set_pairing_mode_lagacy_just_work
+	beq LE_PAIRING_MODE_LAGACY_PASSKEY,module_le_set_pairing_mode_lagacy_passkey
+	branch module_hci_event_receive_invalid_cmd
+		
+ifdef SECURE_CONNECTION	
+module_le_set_pairing_mode_secure_justwork:
+	fetch 1,mem_le_secure_connect_enable
+	branch module_hci_event_receive_invalid_cmd,blank
+	storet 1,mem_le_pairing_mode
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch module_le_set_noinputnooutput
+module_le_set_pairing_mode_secure_numeric:
+	fetch 1,mem_le_secure_connect_enable
+	branch module_hci_event_receive_invalid_cmd,blank
+	storet 1,mem_le_pairing_mode
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	jam FLAG_IOCAP_DISPLAYYESNO,mem_le_pres_iocap
+	branch module_hci_event_receive_valid_cmd	
+module_le_set_pairing_mode_secure_passkey:	
+	fetch 1,mem_le_secure_connect_enable
+	branch module_hci_event_receive_invalid_cmd,blank
+	storet 1,mem_le_pairing_mode
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch module_le_set_displayonly
+endif
+module_le_set_no_pairing:
+	jam FLAG_LE_NO_BONDING_NO_MITM,mem_le_pres_auth
+module_le_set_noinputnooutput:	
+	jam FLAG_IOCAP_NOINPUTNOOUTPUT,mem_le_pres_iocap
+	branch module_hci_event_receive_valid_cmd	
+module_le_set_pairing_mode_lagacy_just_work:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+	branch module_le_set_noinputnooutput
+module_le_set_pairing_mode_lagacy_passkey:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+module_le_set_displayonly:	
+	jam FLAG_IOCAP_DISPLAYONLY,mem_le_pres_iocap
+	branch module_hci_event_receive_valid_cmd	
+
+	
+//command opcode 0x34
+module_hci_cmd_le_set_adv_data:
+	fetch 1,mem_module_uart_len
+	sub pdata,31,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_le_adv_data_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_le_adv_data,contw
+	call uart_copy_rx_bytes_fast
+	branch module_hci_event_receive_valid_cmd
+	
+
+//command opcode 0x35
+module_hci_cmd_le_set_scan_data:
+	fetch 1,mem_module_uart_len
+	sub pdata,31,null
+	nbranch module_hci_event_receive_invalid_cmd,positive
+	store 1,mem_le_scan_data_len
+	copy pdata,loopcnt
+	copy rega,contru
+	arg mem_le_scan_data,contw
+	call uart_copy_rx_bytes_fast	
+	branch module_hci_event_receive_valid_cmd	
+
+	
+//command opcode 0x36
+module_hci_cmd_le_send_conn_update_req:
+	fetch 2,mem_ui_state_map
+	bbit0 UI_STATE_BLE_CONNECTED,module_hci_event_receive_invalid_cmd
+	fetch 1,mem_module_uart_len
+	bne 0x08,module_hci_event_receive_invalid_cmd
+	copy rega,contru
+	ifetch 8,contru
+	store 8,mem_le_interval_min
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	call  ui_ipc_send_cmd
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x37
+module_hci_cmd_set_le_adv_parameter:
+	ifetch 2,contru
+	store 2,mem_le_adv_interval
+	branch module_hci_event_receive_valid_cmd
+	
+	
+//command opcode 0x38
+module_hci_cmd_le_start_pairing:
+	fetch 1,mem_le_pairing_mode
+	branch module_hci_event_receive_invalid_cmd,blank
+	fetch 1,mem_le_pairing_state
+	bne FLAG_LE_PAIRING_NULL,module_hci_event_receive_invalid_cmd
+	fetch 1,mem_le_enc_state
+	bne FLAG_LE_ENC_NULL,module_hci_event_receive_invalid_cmd
+	call check_51cmd_le_smp_sec_req
+	branch module_hci_event_receive_valid_cmd	
+
+
+//command opcode 0x40
+module_hci_cmd_set_wake_gpio:
+	fetch 1,mem_module_uart_len
+	bne 5,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	store 1,mem_module_mcu_wake_pin
+	ifetch 4,contru
+	store 4, mem_module_mcu_wake_delay_us
+	fetcht 1,mem_module_mcu_wake_pin
+	call gpio_config_output
+	call module_set_mcu_wake_pin_low
+	branch module_hci_event_receive_valid_cmd
+	
+
+//command opcode 0x42
+module_hci_cmd_set_tx_power:
+	fetch 1,mem_module_uart_len
+	bne 0x01,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	store 1,mem_tx_power
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x48
+module_hci_cmd_le_confirm_gkey:
+	ifetch 1,contru
+	beq 0x01,module_hci_cmd_le_confirm_gkey_fail
+	fetch 1,mem_le_secure_connect_state
+	beq LE_SC_STAT_SEND_PUBLIC_KEY,module_hci_cmd_le_confirm_gkey_ok
+	beq LE_SC_STAT_RECEIVE_DHKEY,module_hci_cmd_le_confirm_gkey_ok
+	beq LE_SC_STAT_WAIT_CONFIRM_GKEY,module_hci_cmd_le_confirm_gkey_ok
+	branch module_hci_event_receive_invalid_cmd		
+module_hci_cmd_le_confirm_gkey_ok:
+	jam FLAG_LE_SC_CONFRIM_GKEY_OK,mem_le_sc_confirm_gkey_flag
+	branch module_hci_event_receive_valid_cmd	
+	
+module_hci_cmd_le_confirm_gkey_fail:
+	call le_send_pairing_confirm_value_failed
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0x49
+module_hci_cmd_set_reject_justwork_flag:
+	fetch 1,mem_module_uart_len
+	bne 0x01,module_hci_event_receive_invalid_cmd
+	call module_hci_event_receive_valid_cmd
+	ifetch 1,contru
+	branch classic_bt_clr_reject_justwork_flag,blank
+	branch classic_bt_set_reject_justwork_flag
+
+
+//command opcode 0x51
+module_hci_cmd_reset_chip:
+	call module_hci_event_receive_valid_cmd
+	call wait_uarttx
+	jam 0x01,core_reset // rest YC1021
+	branch loop
+
+
+//command opcode 0x61
+module_hci_cmd_le_set_fixed_passkey:
+	fetch 1,mem_module_uart_len
+	beq 0,module_hci_event_receive_invalid_cmd
+	ifetch 1,contru
+	branch module_hci_cmd_le_set_random_passkey,blank
+	fetch 1,mem_module_uart_len
+	bne 5,module_hci_event_receive_invalid_cmd
+	ifetch 4,contru
+	arg 1000000,temp
+	isub temp,null
+	branch module_hci_event_receive_invalid_cmd,positive
+	store 4,mem_le_tk
+	call le_set_config_fixed_tk
+	branch module_hci_event_receive_valid_cmd
+
+module_hci_cmd_le_set_random_passkey:
+	call le_clr_config_fixed_tk
+	branch module_hci_event_receive_valid_cmd
+
+
+//command opcode 0xff
+module_hci_test_cmde_close_lpm:
+	jam 0,mem_lpm_mode
+	branch module_hci_event_receive_valid_cmd
+	
+
+/*********************HCI EVENT*********************/
+
+module_hci_event_receive_invalid_cmd:
+	arg 1,temp
+	arg 0,rega
+	branch module_hci_event_set_cmd
+
+
+module_hci_event_receive_valid_cmd:
+	arg 0,temp
+	arg 0,rega
+	branch module_hci_event_set_cmd
+
+
+//event opcode 0x00
+module_hci_event_spp_connect:
+	jam  HCI_EVENT_SPP_CONN_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x02
+module_hci_event_le_connect:
+	jam  HCI_EVENT_LE_CONN_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x03
+module_hci_event_spp_disconnect:
+	jam  HCI_EVENT_SPP_DIS_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x05
+module_hci_event_le_disconnect:
+	jam  HCI_EVENT_LE_DIS_REP,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x06
+//input:
+//	temp: success 0; fail 1
+//	rega:Response Content length
+//	regb:Response Content address
+module_hci_event_set_cmd:
+	fetch 1,mem_module_uart_opcode
+	copy pdata,regc
+	jam  HCI_EVENT_CMD_RES,mem_module_uart_opcode
+	setarg 2
+	iadd rega,pdata
+	call module_hci_prepare_tx
+	copy regc,pdata
+	istore 1,contwu
+	istoret 1,contwu
+	copy rega,loopcnt
+	copy regb,contr
+	call uart_copy_tx_bytes
+	branch uartd_send
+
+
+//event opcode 0x07
+module_hci_event_receive_spp_data:
+//	call p_nl_clear_last_transmite_clock
+	call module_spp_clear_last_transmite_clock
+	jam HCI_EVENT_SPP_DATA_REP,mem_module_uart_opcode
+	fetch 1,mem_current_length
+	rtn blank
+	call module_hci_prepare_tx
+	fetch 1,mem_current_length
+	copy pdata,loopcnt
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call uart_copy_tx_bytes_fast
+	branch uartd_send
+
+
+//event opcode 0x08
+module_hci_event_receive_le_data:
+	jam HCI_EVENT_LE_DATA_REP,mem_module_uart_opcode
+	fetch 1,mem_module_le_rx_data_len
+	icopy loopcnt
+	increase 2,pdata
+	call module_hci_prepare_tx
+	fetch 2,mem_module_le_rx_data_handle // Attribute handle
+	istore 2,contwu
+	fetch 2,mem_module_le_rx_data_address
+	icopy contr
+	call uart_copy_tx_bytes_fast
+	branch uartd_send
+
+
+//event opcode 0x09
+module_hci_event_enter_standby_mode:
+	jam HCI_EVENT_STANDBY_REP,mem_module_uart_opcode
+module_hci_event_enter_standby_mode_len0:
+	setarg 0
+	call module_hci_prepare_tx
+	branch uartd_send
+
+
+//event opcode 0x0a
+module_hci_event_status_res:
+	jam HCI_EVENT_STATUS_RES,mem_module_uart_opcode
+	setarg 1
+	call module_hci_prepare_tx
+	
+	call module_hci_read_bt_status
+	
+	fetch 2,mem_ui_state_map	
+	arg UI_STATE_BT_HID_CONN,queue
+	qisolate1 pdata
+	setflag true,3,temp
+
+	arg UI_STATE_BLE_CONNECTED,queue
+	qisolate1 pdata
+	setflag true,5,temp	
+	
+	fetch 1,mem_ui_state_map
+	arg UI_STATE_BT_SPP_CONN,queue
+	qisolate1 pdata
+	setflag true,4,temp	
+	
+	istoret 1,contwu
+	branch uartd_send
+
+//	temp: bit0 3.0 inquiry;bit1 3.0 scan;bit2 ble adv;
+
+module_hci_read_bt_status:
+	arg 0,temp
+	fetch 1,mem_scan_mode
+	arg inq_scan_mode,queue
+	qisolate1 pdata
+	setflag true,0,temp
+	arg page_scan_mode,queue
+	qisolate1 pdata
+	setflag true,1,temp	
+
+	fetch 1,mem_le_adv_enable
+	arg 0,queue
+	qisolate1 pdata
+	setflag true,2,temp	
+	rtn
+
+
+//event opcode 0x0d
+module_hci_event_store_device:
+	jam HCI_EVENT_NVRAM_REP,mem_module_uart_opcode
+	fetch 1,mem_nv_data_number
+	mul32 pdata,34,pdata
+	icopy loopcnt
+	call module_hci_prepare_tx
+	fetch 2,mem_nv_data_ptr
+	icopy contr
+	call uart_copy_tx_bytes_fast
+	branch uartd_send
+
+
+//event opcode 0x0e
+module_hci_event_gkey_generate:
+	jam HCI_EVENT_GKEY,mem_module_uart_opcode
+	setarg 4
+	call module_hci_prepare_tx
+	fetch 4,mem_gkey
+	istore 4,contwu
+	branch uartd_send
+
+
+//event opcode 0x0f
+module_hci_event_invalid_packet:
+	jam HCI_EVENT_INVALID_PACKET,mem_module_uart_opcode
+	hfetch 2,core_uart_rxitems
+	arg 0xff,temp
+	call not_greater_than
+	copy pdata,loopcnt
+	call module_hci_prepare_tx
+	call uartd_prepare_rx
+	call uart_copy_rx2tx
+	branch uartd_send
+
+
+//event opcode 0x10
+module_hci_event_passkey_entry_mode:
+	jam  HCI_EVENT_GET_PASSKEY,mem_module_uart_opcode
+	branch module_hci_event_enter_standby_mode_len0
+
+
+//event opcode 0x11
+module_hci_event_le_tk:
+	jam HCI_EVENT_LE_TK,mem_module_uart_opcode
+	setarg 4
+	call module_hci_prepare_tx
+	fetch 4,mem_le_tk
+	istore 4,contwu
+	branch uartd_send
+
+
+//event opcode 0x14
+module_hci_event_le_pairing_fail:
+	arg FLAG_BLE_PAIRING_FAIL,rega
+	branch module_hci_event_pairing_completed
+
+module_hci_event_le_pairing_success:
+	arg FLAG_BLE_PAIRING_SUCCESS,rega
+	branch module_hci_event_pairing_completed
+
+module_hci_event_bt_pairing_fail:
+	arg FLAG_BT_PAIRING_FAIL,rega
+	branch module_hci_event_pairing_completed
+
+module_hci_event_bt_pairing_success:
+	arg FLAG_BT_PAIRING_SUCCESS,rega
+
+module_hci_event_pairing_completed:
+	jam 0,mem_flag_mode_ssp_pin
+	jam HCI_EVENT_LE_PAIRING_STATE,mem_module_uart_opcode
+	setarg 2
+	call module_hci_prepare_tx
+	copy rega,pdata
+	istore 2,contwu
+	branch uartd_send
+
+
+//event opcode 0x15
+module_hci_event_pause_enc:
+	arg FLAG_EVENT_PAUSE_ENC,regc
+	branch module_hci_event_enc
+
+module_hci_event_start_enc:
+	arg FLAG_EVENT_START_ENC,regc
+
+module_hci_event_enc:
+	jam HCI_EVENT_LE_ENCRYPTION_STATE,mem_module_uart_opcode
+	setarg 1
+	call module_hci_prepare_tx
+	copy regc,pdata
+	istore 1,contwu
+	branch uartd_send
+
+
+//event opcode 0x1d
+module_hci_event_le_gkey:
+	jam HCI_EVENT_LE_GKEY,mem_module_uart_opcode
+	setarg 4
+	call module_hci_prepare_tx
+	fetch 4,mem_gkey
+	istore 4,contwu
+	branch uartd_send
+
+
+//****************************************************************//
+	//module_hci_prepare_tx
+	//function:write hci packet header
+	//input: pdata-----packet length  (1byte)
+	//input: mem_uart_opcode------opcode (1byte)
+	//output:contwu --- pointer to packet payload
+	//use reg: contwu,pdata
+//****************************************************************//	
+module_hci_prepare_tx:
+	jam 0x02,mem_module_uart_cmd
+	store 1,mem_module_uart_len
+	storet 8,mem_temp
+	bpatch patch1c_2,mem_patch1c
+	call module_set_mcu_wake_pin_high_delay
+	fetcht 8,mem_temp
+	call uartd_prepare_tx
+	fetch 3,mem_module_uart_cmd
+	istore 3,contwu
+	rtn
+
+
+module_set_mcu_wake_pin_high_delay:
+	call module_check_mcu_wake_pin_high
+	rtn true
+module_set_mcu_wake_pin_h_delay:
+	call module_set_mcu_wake_pin_high
+	fetch 4,mem_module_mcu_wake_delay_us
+	rshift2 pdata,pdata
+	rtn blank
+	branch delay
+
+module_set_mcu_wake_pin_high:
+	//call ice_break
+	fetcht 1,mem_module_mcu_wake_pin
+	branch gpio_out_active
+
+module_check_mcu_wake_pin_high:
+	fetcht 1,mem_module_mcu_wake_pin
+	branch gpio_check_active
+
+module_set_mcu_wake_pin_low:
+	fetcht 1,mem_module_mcu_wake_pin
+	branch gpio_out_inactive
+
+
+delay:
+	increase -1,pdata
+	nop 38
+	nbranch delay,blank
+	rtn
+
+/*********************hci command end*********************/
+
+/*********************hci ble receive data start*********************/
+
+//rega is le rx data address
+//regb is le rx data length
+//mem_le_att_handle is write handle
+module_le_receive_data:
+	call module_check_ble_encrypt_state
+	rtn user
+	copy rega,pdata
+	store 2,mem_module_le_rx_data_address
+	copy regb,pdata
+	store 1,mem_module_le_rx_data_len
+	fetch 2,mem_le_att_handle
+	fetcht 2,mem_module_data_write_handle
+	isub temp,null
+	branch module_le_receive_data_ok,zero
+	fetcht 2,mem_module_data_write_handle2
+	isub temp,null
+	nrtn zero
+module_le_receive_data_ok:	
+	store 2,mem_module_le_rx_data_handle
+	branch module_hci_event_receive_le_data
+
+
+/*********************hci ble receive data end*********************/
+
+module_exit_sniff:
+	fetch 1,mem_module_flag
+	rtnbit1 MOUDLE_TASK_UNSNIFF
+	call module_set_unsniff_task_flag	
+	branch app_bt_sniff_exit
+
+
+module_set_lpm_mult_2:
+	jam 2,mem_lpm_mult
+	rtn
+
+
+
+module_bb_event_timer:
+	branch module_read_vdd_timer
+
+module_read_vdd_timer:
+	fetch 1,mem_module_read_vdd_flag
+	rtn blank
+	fetch 1,mem_module_read_vdd_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_module_read_vdd_count
+	nrtn blank
+	jam FLAG_MODULE_READ_VDD_COUNT,mem_module_read_vdd_count
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	div pdata,0x64
+	call wait_div_end
+	quotient pdata
+	remainder temp
+	store 1,mem_module_vdd_quotient
+	storet 1,mem_module_vdd_remainder
+	rtn	
+	
+
+module_control_air_flow:
+	call check_uart_tx_buff
+	branch app_l2cap_flow_control_enable,positive
+	branch app_l2cap_flow_control_disable
+
+
+/**************module state *******************/
+module_set_sniff_task_flag:
+	arg MOUDLE_TASK_SNIFF,queue
+	branch module_set_state
+
+module_clear_sniff_task_flag:
+	arg MOUDLE_TASK_SNIFF,queue
+	branch module_clr_state
+
+module_set_unsniff_task_flag:
+	arg MOUDLE_TASK_UNSNIFF,queue
+	branch module_set_state
+
+module_clear_unsniff_task_flag:
+	arg MOUDLE_TASK_UNSNIFF,queue
+	branch module_clr_state
+
+module_set_le_tx_data_flag:
+	arg MODULE_FLAG_BLE_DATA_FINISH,queue
+	branch module_set_state
+	
+module_clear_le_tx_data_flag:
+	arg MODULE_FLAG_BLE_DATA_FINISH,queue
+	branch module_clr_state
+
+module_clr_state:
+	fetch 1,mem_module_flag
+	qset0 pdata
+	store 1,mem_module_flag
+	rtn
+
+module_set_state:
+	fetch 1,mem_module_flag
+	qset1 pdata
+	store 1,mem_module_flag
+	rtn
+	
+/**************module state end*******************/
+
+
+else
+
+endif
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_mouse.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_mouse.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_mouse.prog	(working copy)
@@ -0,0 +1,2662 @@
+
+
+//define FPGA_DEBUG
+
+
+ifdef COMPILE_MOUSE
+mouse_init:
+	call mouse_setting_config
+	call spi_ncs_enable
+	call mouse_init_sunt
+	call mouse_dpi_config
+	call spi_ncs_disable
+	rtn wake
+	call mouse_cheak_enable_usb
+	call mouse_cb_fuction
+//	fetch 1,mem_wakup_from_power_flag
+//	isolate0 gpio_latch,pdata
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_ENABLE_USB
+	call mouse_wakeup_from_power//,true	// enter 
+ifdef FPGA_DEBUG
+	arg MOUSE_FPGA_DEBUG_GPIO,temp
+	call gpio_config_output
+	arg MOUSE_FPGA_RF_WORK_DEBUG_GPIO,temp
+	call gpio_config_output
+	arg MOUSE_FPGA_DEBUG_GPIO,temp
+	call gpio_out_active
+endif
+	rtnmark1 mark_24g
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	branch mouse_check_reconn_target
+
+
+mouse_delay_4s:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_INIT_DELAY
+	arg 20,loopcnt
+mouse_delay_20ms:
+	setarg 200000
+	call sleep
+	loop delay_10ms
+	rtn
+
+	
+mouse_cheak_enable_usb:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_USB
+	branch usb_init
+	
+
+mouse_cb_fuction:
+	setarg mouse_le
+	store 2,mem_cb_le_process
+	setarg mouse_send_process
+	store 2,mem_cb_bt_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 le_mouse_bb_event_connect_complete
+	store 2,mem_cb_att_write
+
+	call g24_head_ptr2regc
+	setarg mouse_g24_package_data
+	add regc,offset_24g_cb_data,contw
+	istore 2,contw
+	setarg mouse_g24_enter_lpm
+	add regc,offset_24g_cb_lpm_prepare,contw
+	istore 2,contw
+	setarg mouse_lpm_before_common
+	add regc,offset_24g_cb_lpm_before,contw
+	istore 2,contw
+	
+	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
+	rtn
+mouse_spi_write_flash_cb:
+mouse_spi_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_SPI2,spid_init
+	branch spid_init2
+
+mouse_setting_config:
+	rtn wake
+	call g24_set_device_addr
+	call mouse_gpio_init
+	call mouse_param_init
+	call mouse_adc_init
+	call le_set_config_fixed_ltk
+	call le_set_justwork
+	call le_set_fixed_ltk
+	call le_set_config_read_authentication
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_init_iic
+	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_cheak
+	rtn
+
+mouse_init_iic:
+	call iic_init_390k
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_2K_EEPROM,pdata
+	ncall clear_eeprom_size_2k,true
+	call mouse_load_eeprom_dpi
+	call mouse_init_environment
+	call mouse_set_24g_addr_eeprom
+	branch iicd_read_eep_data
+
+mouse_wakeup_from_power:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_WAKEUP_FROM_POWER,mouse_wakeup_no_from_power
+	fetch 1,mem_wakup_from_power_flag
+	isolate0 gpio_latch,pdata
+	nrtn true
+mouse_wakeup_no_from_power:
+	fetch 1,mem_reconn_times_init
+	store 1,mem_reconn_times
+	fetch 1,mem_config_function_enable
+	rtnbit1 ENABLE_SELECT_DEVICE_BY_SWITCH
+mouse_start_24g_mode:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_24G
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,g24_auto_pair_start
+	branch g24_check_51cmd_start_24g
+le_mouse_bb_event_connect_complete:
+	fetch 1,mem_le_att_handle
+	sub pdata,26,pdata
+	nrtn zero
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	call ui_ipc_send_cmd
+mouse_le_write_enable:	
+	arg WRITE_REQ_ENABLE_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+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
+	rtn
+mouse_dpi_config:
+	fetch 1,mem_config_sensor_motion
+	and pdata,0x0f,pdata
+	store 1,mem_mouse_dpi
+	branch mouse_seting_dpi+2
+
+
+mouse_dpi_cheak:
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_get_bit
+	nbranch mouse_dpi_up,true
+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 1,mem_mouse_dpi
+	increase 1,pdata
+	and pdata,0x03,pdata
+	store 1,mem_mouse_dpi
+	call mouse_seting_dpi
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eerpom_dpi
+	bbit1 MOUSE_ENABLE_FLASH,mouse_before_store_flash_cpi
+	rtn
+mouse_before_store_flash_cpi:
+	arg MOUSE_SPI2_CLK_GPIO,temp
+	call gpio_config_output				//hold high
+	arg MOUSE_SPI2_SDIO_GPIO,temp
+	call gpio_config_output 			//hold high 
+	branch mouse_store_flash_device_info
+
+mouse_seting_dpi:
+	bpatch patch1c_3,mem_patch1c
+	call mosue_dpi_led_blink_init
+	fetch 1,mem_config_sensor_type
+	beq P3610,mouse_seting_3610_dpi
+	beq P3212,mouse_seting_3212_dpi
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_cpi1
+	beq MOUSE_DPI_LEVEL2,mouse_set_cpi2
+	beq MOUSE_DPI_LEVEL3,mouse_set_cpi3
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi4
+mouse_set_cpi2:
+	fetch 1,mem_320x_dpi_2
+	branch mouse_p3205_dpi
+mouse_set_cpi1:
+	fetch 1,mem_320x_dpi_1
+	branch mouse_p3205_dpi
+mouse_set_cpi3:
+	fetch 1,mem_320x_dpi_3
+	branch mouse_p3205_dpi
+mouse_set_cpi4:
+	fetch 1,mem_320x_dpi_4
+	branch mouse_p3205_dpi
+moue_seting_cpi_count:
+	fetch 1,mem_config_sensor_type
+	rtneq P3065_XY
+	fetch 1 ,mem_mouse_cpi_count
+	increase 1,pdata
+	store 1,mem_mouse_cpi_count
+	rtn
+
+mouse_seting_3212_dpi:
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_p3212_cpi1
+	beq MOUSE_DPI_LEVEL2,mouse_set_p3212_cpi2
+	beq MOUSE_DPI_LEVEL3,mouse_set_p3212_cpi3
+	beq MOUSE_DPI_LEVEL4,mouse_set_p3212_cpi4
+mouse_set_p3212_cpi2:
+	fetch 1,mem_3212_dpi_2
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi1:
+	fetch 1,mem_3212_dpi_1
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi3:
+	fetch 1,mem_3212_dpi_3
+	branch mouse_p3212_dpi
+mouse_set_p3212_cpi4:
+	fetch 1,mem_3212_dpi_4
+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_3610_dpi:
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_p3610_cpi1
+	beq MOUSE_DPI_LEVEL2,mouse_set_p3610_cpi2
+	beq MOUSE_DPI_LEVEL3,mouse_set_p3610_cpi3
+	beq MOUSE_DPI_LEVEL4,mouse_set_p3610_cpi4
+mouse_set_p3610_cpi2:
+	fetch 1,mem_3610_dpi_2
+	branch mouse_p3610_dpi
+mouse_set_p3610_cpi1:
+	fetch 1,mem_3610_dpi_1
+	branch mouse_p3610_dpi
+mouse_set_p3610_cpi3:
+	fetch 1,mem_3610_dpi_3
+	branch mouse_p3610_dpi
+mouse_set_p3610_cpi4:
+	fetch 1,mem_3610_dpi_4
+mouse_p3610_dpi:
+	store 1,mem_mouse_cpi_count
+	call mouse_spi_sdio_gpio_pollup
+	fetch 1,mem_mouse_cpi_count
+mouse_reset_p3610_dpi:
+	add pdata,0x80,pdata
+	lshift8 pdata,pdata
+	add pdata,MOUSE_P3610_DPI_ADDRESS,pdata
+	copy pdata,rega
+	branch mouse_set_sensor_reg
+	
+mouse_p3205_dpi:
+	store 1,mem_mouse_cpi_count
+	call moue_seting_cpi_count
+	fetch 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_init_environment:
+	call app_initflag_check
+	branch mouse_eeprom_load_recon_info,zero
+	call mouse_ble_init_address
+	call mouse_store_eeprom_device_info
+	branch app_initflag_store
+
+
+mouse_24g_pairing_button:
+	fetch 2,mem_24g_pairing_timer_count
+	rtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_24G
+	rtnbit1 MOSUE_24G_PAIRING_FLAG
+	rtnmark1 mark_24g
+	call mouse_check_key_gpio
+	rtnne MOUSE_LMR_BUTTON
+	call mouse_devce_led_off
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_enable_function_flag
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	store 1,mem_mouse_send_blank_timer
+	call g24_set0_mem_check_dongle_times
+	
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_RECONNECT,mouse_cancel_reconnect
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	call mouse_stop_discovery
+	branch g24_start_pairing_sm1
+	
+ifdef FPGA_DEBUG
+mouse_fpga_rf_working_normal:
+	fetch 1,mem_le_req_rcv
+	and pdata,0xfe,pdata
+	call mouse_fpga_working_fail,blank
+	fetch 1,mem_le_req_rcv
+	and pdata,0xfe,pdata
+	ncall mouse_fpga_working_normal,blank
+//	fetch 1,mem_inquiryscan_rcvcnt
+//	and pdata,0xfe,pdata
+//	call mouse_fpga_working_fail,blank
+//	fetch 1,mem_inquiryscan_rcvcnt
+//	and pdata,0xfe,pdata
+//	ncall mouse_fpga_working_normal,blank
+	rtn
+
+mouse_fpga_working_fail:
+	arg MOUSE_FPGA_RF_WORK_DEBUG_GPIO,temp
+	branch gpio_out_inactive
+
+mouse_fpga_working_normal:
+	arg MOUSE_FPGA_RF_WORK_DEBUG_GPIO,temp
+	branch gpio_out_active
+
+
+
+endif
+
+mouse_idle:
+ifdef FPGA_DEBUG
+	call mouse_fpga_rf_working_normal
+endif
+	call mouse_24g_pairing_button
+	call ui_check_paring_button
+	call mouse_dpi_cheak
+	call mouse_usb_isr
+	call mouse_wheel_check
+	branch mouse_usb_mode
+mouse_usb_isr:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_USB
+	call usb_isr	
+	branch usb_offline_state
+
+mouse_cheak_usb:
+	hfetch 1,core_usb_addr
+	bbit0 7,mouse_usb_no_exsit
+	bbit1 7,mouse_usb_exsit
+	rtn
+mouse_usb_no_exsit:
+	fetch 1,mem_usb_addr
+	rtnbit0 7
+	branch soft_reset_chip
+mouse_usb_exsit:
+	fetch 1,mem_usb_addr
+	rtnbit1 7
+	branch mouse_stop_bluetooth_mode
+	
+mouse_usb_mode:
+	call mouse_cheak_usb
+	hfetch 1,core_usb_addr
+	store 1,mem_usb_addr
+	rtnbit0 7
+	call mouse_clkn_check 
+	fetch 4,mem_btclk_sensor
+	fetcht 1,mem_wire_usb_interval
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	store 4,mem_btclk_sensor
+	call mouse_motion
+	nrtn user
+	jam 4,mem_usb_tx_enable
+	branch mouse_wired_to_usb
+
+mouse_clkn_check:
+	fetcht 4,mem_btclk_sensor
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall mouse_clkn_timeout,positive
+	rtn
+mouse_clkn_timeout:
+	setarg 0
+	store 4,mem_btclk_sensor
+	rtn
+
+
+	
+mouse_wired_to_usb:
+	fetch 1,mem_usb_tx_enable
+	rtnbit0 2
+	branch mouse_data_push
+mouse_data_push:
+	hfetch 1,core_usb_addr
+	rtnbit0 7
+	jam USB_EP2_MS,mem_usb_ep2_data
+	setarg MS_REPORT_ID
+	store 1,mem_usb_mouse_data	
+	fetch 7,mem_mouse_key
+	istore 7,contw
+	rtn
+
+
+mouse_enable_clock_qdecoder:
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_QDECODER,pdata
+	hstore 2,core_clkoff
+	rtn
+
+mouse_param_init:
+	setarg 0x8c00				//bt sdp start address
+	store 2,mem_ui_uuid_table
+	setarg 0x8e7a				//ble attlist start address
+	store 2,mem_ui_le_uuid_table
+	setarg 0x2402
+	store 2,mem_fcomp_mul
+	setarg 0x2580
+	store 3,mem_class
+	jam 3,mem_lpm_mult_timeout
+	jam 8,mem_lpm_overhead
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue
+	setarg 0x0200
+	store 2,mem_lpm_interval
+	jam 0x17,mem_le_local_mtu
+	jam 0x17,mem_le_remote_mtu
+//===========init spi param==============================
+	setarg 0x0a77
+	store 2,mem_spi_init_clk
+//===========default bt reconnect address===================	
+//	jam 1,mem_device_flag
+//	setarg 0x332211
+//	store 3,mem_device1_addr
+//	store 3,mem_device2_addr
+//	store 3,mem_device3_addr
+//	setarg 0x665544
+//	store 3,mem_device1_addr+3
+//	store 3,mem_device2_addr+3
+//	store 3,mem_device3_addr+3
+//	setarg 0x34
+//	store 1,mem_device1_type
+//	store 1,mem_device2_type
+//	store 1,mem_device3_type
+//===========all 16bit uuid==================================
+	setsect 0,0x306
+	setsect 1,0x4440
+	setsect 2,0x10000
+	setsect 3,0x4408
+	store 9,mem_all_uuid_16bits
+	setsect 0,0x1224
+	setsect 1,0x4000
+	setsect 2,0x0
+	istore 5,contw
+//===========features=====================================
+	setsect 0,0x3ffff
+	setsect 1,0x2fe23
+	setsect 2,0x199d9
+	setsect 3,0x20d
+	store 8,mem_features
+//======================================================	
+	setarg 0x012c  				//24g ban pairing timer init
+	store 2,mem_24g_pairing_timer_count
+	call le_modified_name
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
+	rtnbit0 MOUSE_ENABLE_GPIO_CONTROL_ADC_SENSOR
+	call mouse_sensor_set_angle
+	branch mouse_select_adc
+
+mouse_sensor_set_angle:
+	fetcht 1,mem_select_sensor_angle_gpio
+	call gpio_config_input
+	fetcht 1,mem_select_sensor_angle_gpio
+	call gpio_get_bit
+	jam MOUSE_3CLK_ANGLE,mem_config_sensor_angle
+	rtn true
+	jam MOUSE_12CLK_ANGLE,mem_config_sensor_angle
+	rtn
+
+mouse_select_adc:
+	fetcht 1,mem_select_adc_gpio
+	call gpio_config_input
+	fetcht 1,mem_select_adc_gpio
+	call gpio_get_bit
+	jam ADC_CONFIG_VINLPM,mem_adc_config_flag
+	rtn true
+	jam ADC_CONFIG_GPIO,mem_adc_config_flag
+	rtn
+	
+	
+mouse_adc_init:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,mouse_adc_init_data_vinlpm
+	beq ADC_CONFIG_HVIN,mouse_adc_init_data_hvin
+	beq ADC_CONFIG_GPIO,mouse_adc_init_data_io
+	branch mouse_adc_init_data_vinlpm
+	
+mouse_adc_init_data_vinlpm:
+	fetcht 2,mem_2v_adc_vinlpm_data
+	fetch 2,mem_3v_adc_vinlpm_data
+	isub temp,pdata
+	mul32 pdata,20,pdata 
+	div pdata,100
+	call wait_div_end
+	quotient pdata
+	store 2,mem_adc_reference_voltage //vinlpm :2v2 low alter
+	rtn
+mouse_adc_init_data_hvin:
+	fetcht 2,mem_1v_adc_hvin_data
+	fetch 2,mem_5v_adc_hvin_data
+	isub temp,pdata
+	mul32 pdata,230,pdata 
+	div pdata,400
+	call wait_div_end
+	quotient pdata
+	store 2,mem_adc_reference_voltage //hvin :3v3 low alter
+	rtn
+mouse_adc_init_data_io:
+	fetch 2,mem_1v_adc_io_data
+	store 2,mem_adc_reference_voltage  //vio :1v low alter
+	rtn
+mouse_gpio_init:
+	fetcht 1,mem_eeprom_wp_gpio
+	call gpio_config_output
+	call usb_offline_check_init
+	fetcht 1,mem_lbutton_gpio
+	call gpio_config_input
+	fetcht 1,mem_rbutton_gpio
+	call gpio_config_input
+	fetcht 1,mem_mbutton_gpio
+	call gpio_config_input
+	fetcht 1,mem_sensor_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_sensor_reset_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_whee_b_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_whee_ta_data_gpio
+	call gpio_config_input
+	fetcht 1,mem_whee_tb_data_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_bk_button_gpio
+	call gpio_config_input
+	fetcht 1,mem_fw_button_gpio
+	call gpio_config_input
+
+	fetcht 1,mem_config_low_voltage_alarm_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_config_device1_led_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_config_device2_led_gpio
+	call gpio_config_output
+	
+	fetcht 1,mem_config_device3_led_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_dpi_led_gpio
+	call gpio_config_output
+
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_config_input
+	
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_config_input	
+
+	fetcht 1,mem_dpi_button_gpio
+	branch gpio_config_input
+
+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_gpio_set_pupd_by_input:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	and temp,0x7f,queue
+	hfetch 4,core_gpio_in
+	qisolate1 pdata
+	hfetch 4,core_gpio_pu0
+	qsetflag true,pdata
+	hstore 4,core_gpio_pu0
+	hfetch 4,core_gpio_pd0
+	nqsetflag true,pdata
+	hstore 4,core_gpio_pd0
+	rtn
+	
+mouse_before_hibernate:
+	enable user
+	hfetch 4,0x8138
+	setflag user,26,pdata
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	call mouse_devce_led_off
+	call mouse_before_hibernate_wheel_gpio_set
+//	call gpio_set_before_lpm_common
+	branch mouse_lpm_before_common
+
+
+	
+mouse_process_lpm_before:
+	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:
+	call mouse_wheel_check
+	arg MOUSE_SPI1_CLK_GPIO,temp					// set sclk high
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_SPI2,pdata
+	call mouse_spi_clk_gpio,true
+	call gpio_config_output
+	call twspi_disable
+
+
+
+	fetcht 1,mem_lbutton_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_rbutton_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_mbutton_gpio
+	call gpio_set_wake_by_current_state
+
+	fetcht 1,mem_bk_button_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_fw_button_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_set_wake_by_current_state
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_set_wake_by_current_state
+	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_data_gpio
+	branch gpio_set_wake
+	
+
+	
+mouse_spi_clk_gpio:
+	arg MOUSE_SPI2_CLK_GPIO,temp
+	rtn
+
+mouse_wheel_check:
+	bpatch patch1c_4,mem_patch1c
+	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_count1
+	increase 1,pdata
+	store 1,mem_mouse_tz_data_count1
+	sub pdata,1,null
+	rtn positive
+	jam 0,mem_mouse_tz_data_count1
+	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_count
+	increase 1,pdata
+	store 1,mem_mouse_tz_data_count
+	sub pdata,1,null
+	rtn positive
+	jam 0,mem_mouse_tz_data_count
+	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:
+	jam 0,mem_mouse_z_data_count1
+	fetch 1,mem_mouse_z_data
+	increase 1,pdata
+	store 1,mem_mouse_z_data
+	rtn
+mouse_wheel_back:
+	jam 0,mem_mouse_z_data_count
+	fetch 1,mem_mouse_z_data
+	increase -1,pdata
+	store 1,mem_mouse_z_data
+	rtn
+	
+	
+mouse_hid_connected:
+	setarg HID_HANDSHAKE_TIMEOUT
+	store 1,mem_hid_handshake_timer_count
+	rtn
+	
+mouse_send_process:
+	fetch 1,mem_app_handshake_flag
+	rtn blank
+	call l2cap_malloc_is_fifo_nearly_full
+	nrtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOSUE_24G_PAIRING_FLAG,mouse_send_empty_data
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_send_empty_data
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_send_empty_data
+	call mouse_motion
+	nrtn user
+mouse_send_data:
+	arg 9,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0x02a1
+	istore 2,contw
+	fetch 7,mem_mouse_key
+	istore 7,contw
+	rtn
+
+	
+mouse_send_empty_data:
+	setarg 0
+	store 7,mem_mouse_key
+	branch mouse_send_data
+
+
+mouse_no_data_timer_init:
+	fetch 2,mem_mouse_no_data_timeout
+	store 2,mem_mouse_no_data_timer
+	rtn
+
+	
+mouse_fill_data_le:
+	bpatch patch1c_5,mem_patch1c
+	arg 7,rega //len
+	fetcht 2,mem_le_notify_handle
+	call le_att_malloc_tx_notify
+	fetch 7,mem_mouse_key
+	istore 7,contw
+	rtn
+
+mouse_motion:
+	bpatch patch1c_6,mem_patch1c
+	disable user
+	setarg 0
+	store 6,mem_mouse_x
+	call mouse_cheak_sensor_data
+	call mouse_zwheel
+	call mouse_t_zwheel
+	call mouse_key
+	nrtn user
+	call mouse_no_data_timer_init
+	arg MOUSE_STATUE_UP_FLAG,queue
+	branch mouse_enable_function_flag
+	
+motion_6clk_direction_dispose:
+	fetch 2,mem_mouse_x
+	sub pdata,0,pdata
+	store 2,mem_mouse_x
+	branch enable_user
+motion_12clk_direction_dispose:
+	fetch 2,mem_mouse_y
+	sub pdata,0,pdata
+	store 2,mem_mouse_y
+	branch enable_user
+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
+motion_3clk_direction_dispose:
+	call mouse_sensor_data_swap_places
+	branch enable_user
+mouse_cheak_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 P3610,mouse_p3610_sensor_motion
+	beq P3065_xy,mouse_p32xx_sensor_motion
+	branch mouse_p32xx_sensor_motion
+	
+mouse_clear_sensor_data:
+	fetch 1,mem_mouse_move_flag
+	call mouse_read_sensor_common,blank
+	jam 1,mem_mouse_move_flag
+	rtn
+
+
+mouse_p3212_sensor_motion:
+	call mouse_clear_sensor_data
+	fetcht 1,mem_sensor_data_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
+	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 extsign_bit3
+	store 1,mem_mouse_x+1
+	fetch 1,mem_mouse_xy_h
+	and pdata,0x0f,pdata
+	call extsign_bit3
+	store 1,mem_mouse_y+1
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_6CLK_ANGLE,motion_6clk_direction_dispose
+	beq MOUSE_9CLK_ANGLE,motion_9clk_direction_dispose
+	beq MOUSE_12CLK_ANGLE,motion_12clk_direction_dispose
+	beq MOUSE_3CLK_ANGLE,motion_3clk_direction_dispose
+	rtn
+
+mouse_read_3212sensor_xy_high:
+	setarg 0x12
+	branch twspi_read
+	
+mouse_p3065_judge:
+	beq P3065_ID1,mouse_p32xx_sensor_motion_1
+	branch mouse_twspi_reset
+	
+mouse_p32xx_sensor_motion:
+	call mouse_clear_sensor_data
+	disable user
+	fetcht 1,mem_sensor_data_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 extsign
+	store 2,mem_mouse_x
+	fetch 1,mem_mouse_y
+	call extsign
+	store 2,mem_mouse_y
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_6CLK_ANGLE,motion32xx_6clk_direction_selection
+	beq MOUSE_9CLK_ANGLE,motion32xx_9clk_direction_selection
+	beq MOUSE_12CLK_ANGLE,motion32xx_12clk_direction_selection
+	beq MOUSE_3CLK_ANGLE,motion32xx_3clk_direction_selection
+	rtn
+	
+motion32xx_6clk_direction_selection:
+	call motion_6clk_direction_dispose
+	branch mouse_sensor_sdio_low
+motion32xx_9clk_direction_selection:
+	call motion_9clk_direction_dispose
+	branch mouse_sensor_sdio_low
+motion32xx_12clk_direction_selection:
+	call motion_12clk_direction_dispose
+	branch mouse_sensor_sdio_low
+motion32xx_3clk_direction_selection:
+	call motion_3clk_direction_dispose
+	branch mouse_sensor_sdio_low
+	
+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
+//input regb  output:pdata
+mouse_p3610sensor_read:
+	call spi_ncs_enable
+	nop 100
+	copy regb,pdata
+	call twspi_read
+	copy pdata,regb
+	call spi_ncs_disable
+	nop 100
+	copy regb,pdata
+	rtn	
+mouse_p3610_sensor_motion:
+	disable user
+	fetcht 1,mem_sensor_data_gpio
+	call gpio_get_bit
+	nrtn true
+	arg PAN_REG_MOTION_STAUS,regb
+	call mouse_p3610sensor_read
+	rtnbit0 7
+	arg PAN_REG_PID_L,regb
+	call mouse_p3610sensor_read
+	store 1,mem_sensor_id1
+	bne P3610_ID1,mouse_init_3610sensor_reset
+	fetch 1,mem_mouse_move_flag
+	call mouse_read_sensor3610_data,blank
+	jam 1,mem_mouse_move_flag
+	call mouse_read_sensor3610_data
+	fetch 1,mem_mouse_xy_h
+	rshift4 pdata,pdata
+	call extsign_bit3
+	store 1,mem_mouse_x+1
+	fetch 1,mem_mouse_xy_h
+	and pdata,0x0f,pdata
+	call extsign_bit3
+	store 1,mem_mouse_y+1
+	fetch 1,mem_config_sensor_angle
+	beq 0,motion3610_6clk_direction_selection
+	beq 1,motion3610_9clk_direction_selection
+	beq 2,motion3610_12clk_direction_selection
+	beq 3,motion3610_3clk_direction_selection
+	rtn
+
+mouse_3610_smart_select:
+	fetch 1,mem_sensor_smart_flag
+	beq P3610_SMART_ENABLE,mouse_3610_smart_disable
+	beq P3610_SMART_DISABLE,mouse_3610_smart_enable
+	rtn
+
+
+motion3610_6clk_direction_selection:
+	call motion_6clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+motion3610_12clk_direction_selection:
+	call motion_12clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+motion3610_9clk_direction_selection:
+	call motion_9clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+motion3610_3clk_direction_selection:
+	call motion_3clk_direction_dispose
+	branch mouse_3610_smart_select
+	
+mouse_read_sensor3610_data:
+	call spi_ncs_enable
+	call mouse_read_sensor_common
+	arg 5,pdata
+	call twspi_read
+	store 1,mem_mouse_xy_h
+	arg 7,pdata
+	call twspi_read
+	store 1,mem_sensor_shutter_hi
+	arg 8,pdata
+	call twspi_read
+	store 1,mem_sensor_shutter_lo
+	branch spi_ncs_disable
+
+
+mouse_3610_smart_enable:
+	fetch 1,mem_sensor_shutter_hi
+	rtnne 0
+	fetch 1,mem_sensor_shutter_lo
+	sub pdata,45,null
+	rtn positive
+	jam P3610_SMART_ENABLE,mem_sensor_smart_flag
+	setarg 0xba41
+	call sensor_write
+	setarg 0x0032
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+mouse_3610_smart_disable:
+	fetch 1,mem_sensor_shutter_hi
+	rtnne 0
+	fetch 1,mem_sensor_shutter_lo
+	sub pdata,45,null
+	nrtn positive
+	jam P3610_SMART_DISABLE,mem_sensor_smart_flag
+	setarg 0xba41
+	call sensor_write
+	setarg 0x8032
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+
+
+
+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
+
+mouse_set_qdecoder_x:
+	arg MOUSE_DEFAULT_XA_GPIO,temp
+	call gpio_config_input
+	arg MOUSE_DEFAULT_XA_GPIO,temp
+	call gpio_get_bit
+	rtn true
+	hfetch 1,core_qdec_cntx
+	set1 4,pdata
+	hstore 1,core_qdec_cntx
+	rtn
+
+mouse_hardware_zwheel:
+	fetcht 1,mem_mouse_z_data
+	hfetch 1,core_qdec_cntx
+	iadd temp,pdata
+	rtn blank
+	store 1,mem_mouse_z
+	jam 0,mem_mouse_z_data
+	branch enable_user
+mouse_hardware_zwheel_beforelpm:
+	fetcht 1,mem_mouse_z_data
+	hfetch 1,core_qdec_cntx
+	iadd temp,pdata
+	store 1,mem_mouse_z_data
+	rtn
+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_check_key_gpio:
+	arg 0,rega
+	fetcht 1,mem_lbutton_gpio
+	call gpio_get_bit
+	setflag true,0,rega
+	fetcht 1,mem_rbutton_gpio
+	call gpio_get_bit
+	setflag true,1,rega
+	fetcht 1,mem_mbutton_gpio
+	call gpio_get_bit
+	setflag true,2,rega
+	call mouse_check_s_key_gpio
+mouse_check_key_gpio_output:
+	copy rega,pdata
+	rtn
+mouse_check_s_key_gpio:
+	fetch 1,mem_bk_button_gpio
+	rtneq GPIO_DISABLE
+	fetcht 1,mem_bk_button_gpio
+	call gpio_get_bit
+	setflag true,3,rega
+	fetcht 1,mem_fw_button_gpio
+	call gpio_get_bit
+	setflag true,4,rega
+	rtn
+
+mouse_key:
+	call mouse_check_key_gpio
+	call mouse_set_mult
+	call mouse_24g_key
+	copy rega,pdata
+	fetcht 1,mem_mouse_key
+	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
+
+//short mult: no key 
+mouse_set_mult:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,mouse_set_ble_mult
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,mouse_set_bt_mult
+	rtn
+mouse_set_ble_mult:
+	copy rega,pdata
+	nbranch le_set_config_short_mult,blank
+	branch le_clr_config_short_mult
+mouse_set_bt_mult:
+	copy rega,pdata
+	nbranch classic_bt_set_mult_short_flag,blank
+	branch classic_bt_clr_mult_short_flag
+	
+	/* sdio high will cost extra 9mA */
+mouse_sensor_sdio_low:
+	bpatch patch1c_7,mem_patch1c
+	arg MOUSE_SPI1_SDIO_GPIO,temp
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_SPI2,pdata
+	call mouse_sensor_sdio_low2,true
+	call gpio_get_bit
+	rtn true
+	setarg 0x0a
+	call twspi_read
+	nop 1000
+	branch mouse_sensor_sdio_low
+mouse_sensor_sdio_low2:
+	arg MOUSE_SPI2_SDIO_GPIO,temp
+	rtn
+
+mouse_spi_sdio_gpio_pollup:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_SPI2,mouse_spi2_sdio_gpio_pollup
+mouse_spi1_sdio_gpio_pollup:
+	arg MOUSE_SPI1_SDIO_GPIO,temp
+	branch gpio_config_input_without_wake
+mouse_spi2_sdio_gpio_pollup:
+	arg MOUSE_SPI2_SDIO_GPIO,temp
+	branch gpio_config_input_without_wake
+
+	
+mouse_init_sunt:
+	call mouse_spi_init
+	rtn wake
+	call mouse_spi_sdio_gpio_pollup
+	fetch 1,mem_config_sensor_type
+	beq P3610,mouse_init_3610sensor
+mouse_init_sensor:
+	call mouse_read_sensor_id
+	beq P32XX_ID1,mouse_init_p32xx_id2_judge
+	beq P3065_ID1,mouse_p3065_init_param
+	call mouse_twspi_reset
+	nop 1000
+	branch mouse_init_sensor
+mouse_twspi_reset:
+	bpatch patch1d_0,mem_patch1d
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_SPI2,twspi_reset2
+	branch twspi_reset
+
+mouse_init_3610sensor:
+	call mouse_read_sensor_id
+	beq P3610_ID1,mouse_init_p3610
+	call mouse_init_3610sensor_reset
+	branch mouse_init_3610sensor
+	
+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 P3205_TJ3T_ID2,mouse_3205_3t_init_param
+	beq P3204_TJ3L_ID2,mouse_3204_3l_init_param
+	beq P3212_ID2,mouse_3212_init_param
+	beq PKA8_ID2,mouse_ka8_init_param
+	rtn
+mouse_ka8_init_param:
+	jam KA8,mem_config_sensor_type
+	rtn
+mouse_p3065xy_init_param:
+	jam P3065_XY,mem_config_sensor_type
+	rtn
+mouse_p3065_init_param:
+	fetch 1,mem_sensor_id2
+	beq P3065_XY_ID2,mouse_p3065xy_init_param
+	jam P3065,mem_config_sensor_type
+	rtn
+mouse_3212_init_param:
+	jam P3212,mem_config_sensor_type
+	call mouse_sensor_disable_wp
+	setarg 0x3426
+	call twspi_write
+	setarg 0x0419
+	call twspi_write
+mouse_sensor_enable_wp:
+	setarg 0x0009
+	branch twspi_write
+mouse_sensor_disable_wp:
+	setarg 0x5a09
+	branch twspi_write
+
+mouse_3204_3l_init_param:
+	jam P3204,mem_config_sensor_type
+	call mouse_sensor_disable_wp
+	setarg 0x0f0d//
+	call twspi_write
+	setarg 0xe31d//
+	call twspi_write
+	setarg 0xd27d
+	call twspi_write
+	call mouse_32xx_init_param
+	branch mouse_32xx_init_param_1
+	
+mouse_32xx_init_param:
+	setarg 0x351b
+	call twspi_write
+	setarg 0xb428
+	call twspi_write
+	setarg 0x4629
+	call twspi_write
+	setarg 0x962a
+	call twspi_write
+	setarg 0x8c2b
+	call twspi_write
+	setarg 0x6e2c
+	call twspi_write
+	setarg 0x642d
+	call twspi_write
+	setarg 0x5f38
+	call twspi_write
+	setarg 0x0f39
+	call twspi_write
+	setarg 0x323a
+	call twspi_write
+	setarg 0x473b
+	call twspi_write
+	setarg 0x1042
+	branch twspi_write
+mouse_32xx_init_param_1:	
+	setarg 0x2e54
+	call twspi_write
+	setarg 0xf255
+	call twspi_write
+	setarg 0xf461
+	call twspi_write
+	setarg 0x7063
+	call twspi_write
+	setarg 0x5275
+	call twspi_write
+	setarg 0x4176
+	call twspi_write
+	setarg 0xed77
+	call twspi_write
+	setarg 0x2378
+	call twspi_write
+	setarg 0x4679
+	call twspi_write
+	setarg 0xe57a
+	call twspi_write
+	setarg 0x487c
+	call twspi_write
+	setarg 0x777e
+	call twspi_write
+	setarg 0x017f
+	call twspi_write
+	setarg 0x000b
+	call twspi_write
+	setarg 0x007f
+	call twspi_write
+	branch mouse_sensor_enable_wp
+	
+
+mouse_3205_3t_init_param:
+	jam P3205,mem_config_sensor_type
+	call mouse_sensor_disable_wp
+	setarg 0x100d//
+	call twspi_write
+	setarg 0xed1d//
+	call twspi_write
+	setarg 0x807d
+	call twspi_write
+	call mouse_32xx_init_param
+	setarg 0x0943
+	call twspi_write
+	branch mouse_32xx_init_param_1
+	
+	
+mouse_init_3610sensor_reset:
+	fetcht 1,mem_sensor_reset_gpio
+	call gpio_out_active
+	call delay_10ms
+	fetcht 1,mem_sensor_reset_gpio
+	call gpio_out_inactive
+	branch delay_10ms
+
+mouse_init_p3610:
+	jam P3610,mem_config_sensor_type
+	setarg 0xba41
+	call sensor_write
+	setarg 0x0d11
+	call sensor_write
+	setarg 0x041b
+	call sensor_write
+	setarg 0x041c
+	call sensor_write
+	setarg 0x0f1d
+	call sensor_write
+	setarg 0x0032
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+	
+	
+//input-rega
+mouse_set_sensor_reg:
+	setarg 0xba41
+	call sensor_write
+	nop 4000
+	setarg 0xff7f
+	call sensor_write
+	copy rega,pdata
+	call sensor_write
+	setarg 0x007f
+	call sensor_write
+	setarg 0xb541
+	branch sensor_write
+
+extsign:
+	rtnbit0 7
+	arg 0xff00,temp
+	ior temp,pdata
+	rtn
+
+extsign_bit3:
+	rtnbit0 3
+	arg 0xf0,temp
+	ior temp,pdata
+	rtn
+
+
+mouse_le:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOSUE_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
+	call mouse_motion
+	nrtn user
+	branch mouse_fill_data_le
+
+mouse_le_send_empty_packet:
+	setarg 0
+	store 7,mem_mouse_key
+	branch mouse_fill_data_le
+
+mouse_priority_bb_event:	
+	copy regc,pdata
+	beq BT_EVT_LE_CONNECTED,mouse_le_bb_event_connected
+	beq BT_EVT_BB_CONNECTED,mouse_stop_discovery
+	beq BT_EVT_LE_DISCONNECTED,mouse_bb_disconnected
+	beq BT_EVT_BB_DISCONNECTED,mouse_bb_disconnected
+	beq BT_EVT_SETUP_COMPLETE,mouse_bt_event_setup_complete
+	beq BT_EVT_BUTTON_LONG_PRESSED,mouse_bb_event_discovery_btn
+	beq BT_EVT_HID_HANDSHAKE,mouse_bt_hid_handshake
+	beq BT_EVT_HID_CONNECTED,mouse_bt_hid_connected
+	beq BT_EVT_RECONN_FAILED,mouse_bb_event_reconn_failed
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,mouse_bb_event_reconn_timeout
+	beq BT_EVT_PINCODE_REQ,mouse_bb_event_pincode
+	beq BT_EVT_REMOTE_UNSNIFF,app_start_auto_sniff
+	beq BT_EVT_LE_PAIRING_SUCCESS,mouse_le_pairing_success
+	beq BT_EVT_LE_START_ENC,mouse_le_ll_start_encryt
+	beq BT_EVT_LE_PAIRING_COMPLETE,mouse_le_pairing_complete
+	beq BT_EVT_VIRTUAL_CABLE_UNPLUG,mouse_irtual_cable_unplug
+	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
+	rtn
+
+
+mouse_le_pairing_complete:
+	branch app_ble_store_reconn_info
+
+mouse_24g_attempt_fail:
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	branch app_enter_hibernate,zero
+	rtn
+mouse_24g_attempt_success:
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	rtn
+mouse_24g_pairing_complete:
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_disable_function_flag
+	setarg 0
+	store 2,mem_24g_pairing_timer_count
+	jam 0,mem_mouse_move_flag
+	
+	fetch 1,mem_config_sensor_type
+	sub pdata,P3610,null
+	call mouse_read_sensor3610_data,zero
+	ncall mouse_read_sensor_common,zero
+
+	fetch 1,MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_FLASH,mouse_store_flash_24g_address
+	call mouse_set_24g_addr_eeprom	//store rx dongle addr to eeprom
+	branch iicd_write_protect_eep_data
+
+mouse_set_24g_addr_eeprom:
+	call g24_head_ptr2regc
+	add regc,offset_24g_addr,rega
+	arg MOUSE_G24_ADDR_EEPROM_OFFECT,regb
+	arg 4,temp
+	rtn
+
+mouse_store_flash_24g_address:
+	call g24_head_ptr2regc
+	add regc,offset_24g_addr,regb
+	ifetch 1,regb
+	store 1,mem_mouse_24g_addr
+	branch mouse_store_flash_device_info
+	
+
+mouse_le_pairing_success:
+	arg LL_PAIRING_SUCCESS_FLAG,queue
+	branch mouse_le_enable_connect_flag
+mouse_le_ll_start_encryt:
+	jam 2,mem_le_start_encrypt_timer
+	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_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_bb_event_connected:
+	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
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	call mouse_no_data_timer_init
+	branch mouse_stop_discovery
+
+mouse_bb_event_pincode:
+	call pincode_reinit
+	branch app_bt_set_pincode
+mouse_bb_event_reconn_timeout:
+ifdef FPGA_DEBUG
+	arg MOUSE_FPGA_DEBUG_GPIO,temp
+	call gpio_config_output
+	arg MOUSE_FPGA_DEBUG_GPIO,temp
+	call gpio_out_inactive
+endif
+mouse_bb_event_reconn_failed:
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_soft_reset
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_start_discovery
+	bbit1 MOSUE_24G_PAIRING_FLAG,g24_start_pairing_sm1
+	branch app_bb_hibernate
+
+	
+mouse_bt_hid_connected:
+	branch mouse_hid_connected
+
+mouse_bt_event_setup_complete:
+	rtn
+
+mouse_soft_reset:
+	call mouse_select_device_enable
+	branch soft_reset_chip
+
+mouse_bb_disconnected:
+	bpatch patch1d_1,mem_patch1d
+	call mouse_bb_discon_clear_stack
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_soft_reset
+	bbit1 MOSUE_24G_PAIRING_FLAG,g24_start_pairing_sm1
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	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
+	bbit1 APP_DISC_AFTER_PAIRING,mouse_event_light_state_pairing
+	bbit1 APP_DISC_AFTER_RECONN,mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,mouse_event_light_state_hibernate
+	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_send_blank_timer
+	jam 0,mem_mouse_move_flag
+	jam APP_HANDSHAKE_NULL,mem_app_handshake_flag
+	jam 0,mem_ltk_exists
+	rtn
+
+mouse_event_light_state_pairing:
+	bbit1 APP_DISC_AFTER_HANDSHAKE,mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,mouse_event_light_state_hibernate
+	branch mouse_start_discovery
+mouse_event_light_state_hibernate:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	branch app_bb_hibernate
+
+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 app_bb_hibernate
+
+mouse_bb_event_timer:
+	call mouse_adc_read
+	call mouse_24g_delay_timer
+	call mouse_ban_24g_pairing_timer
+	call mouse_dpi_led_blink_delay_timer
+	call mouse_statue_up_timer
+	//poll
+	call mouse_statue_cheak_timer
+	call mouse_select_device
+	call mouse_bt_discovery_cheak
+	call mouse_low_voltage_led_timer
+	call mouse_sensor_led_contrl_timer
+	call mouse_check_hid_handshake_timer
+	call mouse_check_discovery_timeout_timer
+	call mouse_check_direct_timeout_timer
+	call mouse_check_no_data_timeout_timer
+	call mouse_check_mouse_state_timer
+	branch mouse_le_enable_att_list_timer
+
+
+
+mouse_sensor_led_contrl_timer:
+	fetch 1,mem_mouse_sensor_timer_count
+	rtn blank
+	increase -1,pdata
+	store 1,mem_mouse_sensor_timer_count
+	nrtn blank
+	branch mouse_sensor_led_contrl
+mouse_sensor_led_contrl:
+	fetch 1,mem_sensor_led_style
+	rtneq UI_LED_STATE_BLINK_STOP
+	beq UI_LED_STATE_BLINK_DARKING,mouse_sensor_led_blink_state_darking
+mouse_sensor_led_blink_state_lighting:
+	call mouse_sensor_led_on
+	jam UI_LED_STATE_BLINK_DARKING,mem_sensor_led_style
+	jam LED_SENSOR_BLINK_CNT,mem_mouse_sensor_timer_count
+	rtn
+mouse_sensor_led_blink_state_darking:
+	call mouse_sensor_led_off
+	jam UI_LED_STATE_BLINK_LIGHTING,mem_sensor_led_style
+	jam LED_SENSOR_BLINK_CNT,mem_mouse_sensor_timer_count
+	rtn
+	
+mouse_sensor_led_blink_stop:
+mouse_sensor_reset:
+	setarg 0x8006
+	call twspi_write
+    nop 1000
+	jam 0x00,mem_mouse_sensor_timer_count
+	jam UI_LED_STATE_BLINK_STOP,mem_sensor_led_style
+	branch mouse_init_p32xx_id2_judge
+	
+mouse_p3212sensor_led_on:
+	setarg 0xa006
+	call twspi_write
+	setarg 0xa005
+	branch twspi_write
+mouse_sensor_led_on_global:
+	jam 0,mem_mouse_sensor_timer_count
+mouse_sensor_led_on:
+	fetch 1,mem_config_sensor_type
+	beq P3212,mouse_p3212sensor_led_on
+	setarg 0x0106
+	call twspi_write
+	setarg 0xa105
+	branch twspi_write
+	
+mouse_sensor_led_off_global:
+	jam 0,mem_mouse_sensor_timer_count	
+mouse_sensor_led_off:
+	setarg 0x0906
+	branch twspi_write
+mouse_sensor_start_blink:
+	jam LED_SENSOR_BLINK_CNT,mem_mouse_sensor_timer_count
+	jam UI_LED_STATE_BLINK_START,mem_sensor_led_style
+	rtn
+	
+mouse_check_hid_handshake_timer:
+	arg mem_hid_handshake_timer_count,regc
+	arg mouse_bt_hid_handshake,regb
+	branch timer_single_step
+
+mouse_check_discovery_timeout_timer:	
+	arg mem_mouse_discovery_timer,regc
+	arg mouse_check_discovery_timeout,regb
+	branch timer_single_step_2B
+
+mouse_check_direct_timeout_timer:	
+	arg mem_mouse_direct_timer,regc
+	arg mouse_check_direct_timeout,regb
+	branch timer_single_step_2B
+	
+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_mouse_state_timer:
+	arg mem_mouse_statue_led_timer,regc
+	arg mouse_statue_led_off,regb
+	branch timer_single_step
+
+
+
+mouse_le_enable_att_list_timer:
+	arg mem_le_start_encrypt_timer,regc
+	arg mouse_le_enable_att_list,regb
+	branch timer_single_step
+
+mouse_24g_delay_timer:
+	arg mem_24g_enter_lpm_timer,regc
+	arg mouse_24g_delay,regb
+	branch timer_single_step
+
+mouse_ban_24g_pairing_timer:
+	arg mem_24g_pairing_timer_count,regc
+	arg mouse_ban_24g_pairing,regb
+	branch timer_single_step_2B
+mouse_ban_24g_pairing:
+mouse_24g_delay:
+	rtn
+
+
+mosue_dpi_led_blink_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_DPI_LED_BLINK
+	jam 10,mem_mouse_dpi_led_delay_count  //delay 1s led blink
+	fetch 1,mem_dpi_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	rtn
+
+
+mouse_dpi_led_blink_delay_timer:
+	arg mem_mouse_dpi_led_delay_count,regc
+	arg mouse_dpi_led_setting,regb
+	branch timer_single_step	
+mouse_dpi_led_setting:
+	fetch 1,mem_dpi_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	setarg LED_DPI_BLINK
+	store 2,mem_mouse_on_time
+	store 2,mem_mouse_off_time
+	arg 0,rega
+	fetcht 1,mem_mouse_dpi
+	increase 1,temp
+	storet 1,mem_mouse_blink_count
+	jam UI_LED_STATE_BLINK_START,mem_mouse_led_type
+	rtn
+	
+mouse_le_enable_att_list:	
+	fetch 1,mem_le_connect_status_flag
+	rtnbit1 LL_PAIRING_SUCCESS_FLAG
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	call ui_ipc_send_cmd
+	arg WRITE_REQ_ENABLE_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+
+mouse_check_discovery_timeout:
+	call mouse_stop_discovery
+	branch app_enter_hibernate
+
+mouse_check_direct_timeout:
+	call app_ble_stop_direct_adv
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	branch app_enter_hibernate
+
+mouse_check_no_data_timeout:
+	bmark1 mark_24g,check_51cmd_hibernate
+	branch mouse_disconnect
+
+	
+
+mouse_bb_event_discovery_btn:
+	bpatch patch1d_2,mem_patch1d
+	jam 0,mem_mouse_send_blank_timer
+	call mouse_disconnect
+	call mouse_le_clean_connect_flag
+	branch mouse_start_discovery
+
+
+
+mouse3_0_check_reconn_target:
+	fetch 6,mem_hci_plap
+	branch app_bt_start_discovery_short,blank
+	call mouse_reconn_setting_led_gpio
+	jam 0x17,mem_connection_options  //ssp
+	fetch 1,mem_ssp_enable
+	nbranch app_bt_start_reconnect,blank
+	jam 0x04,mem_connection_options  //no ssp
+	branch app_bt_start_reconnect
+	
+mouse4_0_check_reconn_target:
+	fetch 2,mem_mouse_direct_timeout
+	store 2,mem_mouse_direct_timer
+	call mouse_reconn_setting_led_gpio
+	call app_lpm_mult_disable
+	branch check_51cmd_adv
+
+mouse_reconn_setting_led_gpio:
+	setarg LED_RECONNECT_BLINK
+	store 2,mem_mouse_on_time
+	store 2,mem_mouse_off_time
+	branch mouse_setting_led_gpio_comman
+	
+mouse_discover_setting_led_gpio:
+	setarg LED_DISCOVERY_BLINK
+	store 2,mem_mouse_on_time
+	store 2,mem_mouse_off_time	
+mouse_setting_led_gpio_comman:
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_device_led1
+	beq MODE_BT_DEVICE2,mouse_device_led2
+	beq MODE_BT_DEVICE3,mouse_device_led3
+	rtn
+mouse_device_led1:
+	fetch 1,mem_config_device1_led_gpio
+	branch mouse_led_blink
+mouse_device_led2:
+	fetch 1,mem_config_device2_led_gpio
+	branch mouse_led_blink
+mouse_device_led3:
+	fetch 1,mem_config_device3_led_gpio
+mouse_led_blink:
+	store 1,mem_temp
+	call mouse_devce_led_off
+	fetch 1,mem_temp
+	store 1,mem_mouse_struct_led_gpio
+	arg 0,rega
+	jam UI_LED_STATE_BLINK_START,mem_mouse_led_type
+	branch ui_led_blink_start_global
+
+mouse_led_off:
+	arg 0,rega
+	branch ui_led_off_global
+mouse_led_on:
+	arg 0,rega
+	branch ui_led_on_global
+
+mouse4_0_bb_event_discovery_btn:
+	branch mouse_le_clean_connect_flag
+	
+mouse_bt_hid_handshake:
+	jam APP_HANDSHAKE_DONE,mem_app_handshake_flag
+	call app_lpm_mult_enable
+	call app_bt_store_reconn_info
+	setarg 0
+	store 2,mem_discovery_timeout_timer_count
+	store 1,mem_hid_handshake_timer_count
+	branch app_bt_enter_sniff
+
+mouse_check_reconn_target:
+	call mouse_cheak_select_device_by_switch
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	branch mouse_connect_24g_mode,zero
+	fetch 1,mem_xrecord_mode
+	beq REC_3_MODE,mouse3_0_check_reconn_target
+	beq REC_4_MODE,mouse4_0_check_reconn_target
+	branch mouse_start_discovery
+mouse_connect_24g_mode:
+	call mouse_start_24g_mode
+	rtnmark1 mark_24g
+	fetch 1,mem_reconn_times
+	nbranch mouse_polling_device,blank
+	rtn
+	
+mouse_start_discovery:
+	bpatch patch1d_3,mem_patch1d
+	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
+	random pdata					//random ble addr
+	store 1,mem_le_lap+1
+mouse_start_discovery_norandom:
+	call app_lpm_mult_disable
+	fetch 2,mem_discovery_timeout
+	store 2,mem_mouse_discovery_timer
+	jam 6,mem_connection_options
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	store 2,mem_mouse_direct_timer
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_enable_function_flag
+	call mouse_bt_discovery_button_down_disable
+	fetch 1,mem_device_option
+	isolate1 MODE_4_MOUSE,pdata
+	call check_51cmd_adv,true
+	fetch 1,mem_device_option
+	isolate1 MODE_3_MOUSE,pdata
+	call check_51cmd_start_discovery,true
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_start_blink
+	branch mouse_discover_setting_led_gpio
+
+mouse_stop_discovery:
+	bpatch patch1d_4,mem_patch1d
+	fetch 1,mem_device_option
+	isolate1 MODE_4_MOUSE,pdata
+	call mouse_stop_le_adv,true
+	fetch 1,mem_device_option
+	isolate1 MODE_3_MOUSE,pdata
+	call mouse_stop_bt3_discovery,true
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_led_blink_stop
+	branch mouse_devce_led_off
+mouse_stop_le_adv:
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	branch check_51cmd_stop_adv
+mouse_stop_bt3_discovery:
+	setarg 0
+	store 2,mem_mouse_discovery_timer
+	branch check_51cmd_stop_discovery
+
+	
+
+
+
+mouse_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 mouse_check_device_addr
+mouse_unplug_clean_bdaddr:
+	call mouse_before_store_reconn_info
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_FLASH,mouse_store_flash_device_info
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eeprom_device_info	
+	rtn
+mouse_store_eeprom_device_info:
+	arg 88,temp
+	arg mem_device_flag,rega
+	arg MOUSE_INFO_EEPROM_OFFECT,regb
+	branch iicd_write_protect_eep_data
+
+mouse_check_device_addr:
+	fetch 1,mem_record_bt_mode
+	beq REC_4_MODE,mouse_check_le_device_addr
+	beq REC_3_MODE,mouse_check_bt_device_addr
+	rtn
+mouse_check_le_device_addr:
+	store 1,mem_device_addr_temp
+	fetch 6,mem_le_plap
+	branch mouse_check_bt_device_addr_common
+mouse_check_bt_device_addr:
+	store 1,mem_device_addr_temp
+	fetch 6,mem_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
+	beq REC_3_MODE,mouse_store_bt_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_store_bt_device:
+	fetch 6,mem_plap
+	istore 6,contw
+	arg mem_link_key,contr
+	branch memcpy16
+
+mouse_clean_addr:
+	increase -6,contr
+	copy contr,contw
+	fetcht 6,mem_device_addr_temp+1
+	increase 3,temp
+	istoret 6,contw
+	rtn
+
+
+
+mouse_eeprom_load_recon_info:
+	arg 88,temp
+	arg mem_device_flag,rega
+	arg MOUSE_INFO_EEPROM_OFFECT,regb
+	call iicd_read_eep_data
+mouse_select_reconn_device:
+	arg mem_device1_type,rega
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	rtn zero
+	increase -1,pdata
+	mul32 pdata,29,pdata
+	iadd rega,rega
+	ifetch 1,rega
+	store 1,mem_xrecord_mode
+	beq REC_3_MODE,mouse_load_bt_device
+	beq REC_4_MODE,mouse_load_le_device
+	rtn
+
+mouse_load_bt_device:
+	ifetch 6,contr
+mouse_load_bt_device_end:
+	store 6,mem_hci_plap
+	arg mem_link_key,contw
+	call memcpy16
+	branch check_link_key_load
+
+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_select_device:
+	fetch 1,mem_config_function_enable
+	bbit1 ENABLE_SELECT_DEVICE_BY_GPIO_BUTTON,mouse_select_device_by_button
+	bbit1 ENABLE_SELECT_DEVICE_BY_SWITCH,mouse_select_device_by_switch
+	branch mouse_select_device_by_combination_key
+
+mouse_select_device_by_combination_key:
+	call mouse_check_key_gpio
+	beq MOUSE_RM_BUTTON,mouse_select_device_commbination_key_down
+mouse_select_device_commbination_key_up:
+	jam 30,mem_combination_select_device_count	//combination key timer init 
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue	
+	rtn
+	
+mouse_select_device_commbination_key_down:
+	call mouse_combination_select_device_timer
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_select_device_button_statue
+	branch mouse_select_device_enable
+
+mouse_combination_select_device_timer:
+	fetch 1,mem_combination_select_device_count
+	rtn blank
+	pincrease -1
+	store 1,mem_combination_select_device_count
+	nrtn blank
+	branch mouse_ready_reconnection_by_button
+	
+mouse_select_device_by_button:
+	fetch 1,mem_config_select_device_button_gpio
+	rtneq GPIO_DISABLE
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	branch mouse_select_device_button_down,true
+mouse_select_device_button_up:
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue	
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_LONG_BT_BUTTON_FLAG
+	branch mouse_ready_reconnection_by_button
+
+mouse_select_device_button_down:
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_select_device_button_statue
+	arg MOUSE_LONG_BT_BUTTON_FLAG,queue
+	branch mouse_disable_function_flag
+
+
+
+mouse_select_device_by_switch:
+	fetch 1,MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 ENABLE_SELECT_DEVICE_BY_SWITCH
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_select1_device
+	beq MODE_24G_DEVICE,mouse_select2_device
+	rtn
+mouse_cheak_select_device_by_switch:
+	fetch 1,MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 ENABLE_SELECT_DEVICE_BY_SWITCH
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	branch mouse_cheak_select_24gdevice,true
+mouse_select_btdevice:
+	jam MODE_BT_DEVICE1,mem_device_flag
+	rtn
+mouse_cheak_select_24gdevice:
+	fetch 1,mem_24g_device_number
+	store 1,mem_device_flag
+	rtn
+mouse_select1_device:
+	fetcht 1,mem_config_select_device_button_gpio
+	nbranch mouse_ready_reconnection_by_button,true
+	rtn
+mouse_select2_device:
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	branch mouse_select_device_button_down,true
+	rtn
+
+
+	
+
+mouse_ready_reconnection_by_button:
+	fetcht 1,mem_device_flag
+	increase 1,temp
+	fetch 1,mem_device_number
+	isub temp,null
+	ncall mouse_select_device_count_clean,positive
+	storet 1,mem_device_flag
+	jam 0,mem_link_key_exists
+	call mouse_store_device_number2eeprom
+mouse_ready_reconnection_by_button_next:
+	call mouse_select_device_enable
+//	call p_select_reconn_device
+	branch mouse_set_reconnection
+
+mouse_store_device_number2eeprom:
+	arg 1,temp
+	arg mem_device_flag,rega
+	arg 0,regb
+	branch iicd_write_eep_data
+
+mouse_set_reconnection:
+	call mouse_stop_bluetooth_mode
+	call mouse_select_device_disable
+	branch mouse_soft_reset
+mouse_stop_bluetooth_mode:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_RECONNECT,mouse_cancel_reconnect
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	branch mouse_stop_discovery
+
+mouse_disconnect:
+	bpatch patch1d_5,mem_patch1d
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	rtn
+
+mouse_irtual_cable_unplug:
+	setarg 0x01
+	store 6,mem_plap
+	jam REC_3_MODE,mem_record_bt_mode
+	branch mouse_unplug_clean_bdaddr
+
+	
+mouse_cancel_reconnect:
+	call mouse_bt_cannel_reconn_enable
+	branch check_51cmd_bb_reconn_cancel
+
+mouse_bt_discovery_by_button:
+	fetch 1,mem_config_bt_button_gpio
+	rtneq GPIO_DISABLE
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_get_bit
+	branch mouse_bt_discovery_button_down,true
+mouse_bt_discovery_button_up:
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_combination_ui_button_count	//combination key timer init 	
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_bt_discovey_button_statue	
+	branch mouse_bt_discovery_button_down_disable
+mouse_bt_discovery_button_down:
+	call mouse_bt_discovry_timer
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_bt_discovey_button_statue
+	call check_51cmd_bb_reconn_cancel
+	branch mouse_bt_discovery_button_down_enable
+
+	
+mouse_bt_discovery_cheak:
+	fetch 1,mem_config_function_enable
+	bbit1 ENABLE_BT_BUTTON,mouse_bt_discovery_by_button
+mouse_bt_discovery_commbination_key:
+	call mouse_check_key_gpio
+	beq MOUSE_LMR_BUTTON,mouse_bt_discovery_commbination_key_down
+mouse_bt_discovery_commbination_key_up:
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_combination_ui_button_count	//combination key timer init 
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+	jam DPI_BUTTON_STATE_UP,mem_bt_discovey_button_statue	
+	branch mouse_bt_discovery_button_down_disable
+	
+	
+mouse_bt_discovery_commbination_key_down:
+	call mouse_bt_discovry_timer
+	fetch 1,mem_bt_discovey_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_bt_discovey_button_statue
+	call check_51cmd_bb_reconn_cancel
+	branch mouse_bt_discovery_button_down_enable
+
+mouse_bt_discovry_timer:
+	arg mem_combination_ui_button_count,regc
+	arg mouse_long_button_bt_discovry,regb
+	branch timer_single_step
+	
+mouse_long_button_bt_discovry:
+	arg MOUSE_LONG_BT_BUTTON_FLAG,queue
+	call mouse_enable_function_flag
+	call app_evt_button_long_pressed
+	branch mouse_bb_event_discovery_btn
+
+
+mouse_cpi_enable:
+	arg MOUSE_CPI_FLAG,queue
+	branch mouse_enable_function_flag
+mouse_cpi_disable:
+	arg MOUSE_CPI_FLAG,queue
+	branch mouse_disable_function_flag
+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_select_device_count_clean:
+	arg 1,temp
+	rtn
+
+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_adc_read:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_ADC
+	fetch 1,mem_adc_read_timer
+	increase 1,pdata
+	store 1,mem_adc_read_timer
+	sub pdata,10,null              //1s read adc
+	rtn positive
+	jam 0,mem_adc_read_timer
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+	call adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,mouse_power_down
+	bbit0 0,mouse_adc_no_low_voltage
+	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
+	branch mouse_disable_function_flag
+
+mouse_low_voltage_led_timer:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+	fetch 1,mem_config_low_voltage_alarm_gpio
+	store 1,mem_mouse_struct_led_gpio
+	fetch 1,mem_adc_low_volatage_led_timer_count
+	pincrease 1
+	store 1,mem_adc_low_volatage_led_timer_count
+	sub pdata,20,null
+	ncall mouse_adc_low_volatage_led_timer_count_clean,positive
+	beq 2,mouse_low_voltage_led_on
+	beq 4,mouse_low_voltage_led_off
+	beq 6,mouse_low_voltage_led_on
+	beq 8,mouse_low_voltage_led_off
+	rtn
+mouse_adc_low_volatage_led_timer_count_clean:
+	jam 1,mem_adc_low_volatage_led_timer_count
+	branch mouse_low_voltage_led_off
+mouse_low_voltage_led_on:
+	arg 0,rega
+	jam UI_LED_STATE_LIGHTING,mem_mouse_led_type
+	branch ui_led_on_global
+mouse_low_voltage_led_off:
+	arg 0,rega
+	jam UI_LED_STATE_LIGHTING,mem_mouse_led_type
+	branch ui_led_off_global
+
+mouse_g24_package_data:
+	call mouse_motion
+	nrtn user
+	arg 7,rega	//length
+	arg mem_mouse_key,regb //tx buff
+	rtn
+	
+mouse_g24_enter_lpm:
+	fetch 1,mem_mouse_24g_enter_lpm_enable
+	rtn blank
+	//do not enter lpm when condition is unallowed
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_get_bit
+	call mouse_24g_dpi_delay_init,true
+	fetch 1,mem_24g_enter_lpm_timer
+	nrtn blank
+	call mouse_check_key_gpio
+	nrtn blank
+	branch g24_lpm_long_sleep
+
+mouse_24g_dpi_delay_init:
+	fetch 1,mem_dpi_button_gpio
+	rtneq UI_BUTTON_GPIO_DISABLE
+	jam 10,mem_24g_enter_lpm_timer
+	rtn
+
+	
+mouse_load_flash_info_cheak:
+	call mouse_load_flash_flag
+	fetch 2,mem_store_flag
+	arg EEPROM_INIT_FLAG,temp
+	isub temp,null
+	branch mouse_load_flash_device_info,zero
+	storet 2,mem_store_flag
+	call mouse_ble_init_address
+	branch mouse_store_flash_device_info
+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
+	
+	
+mouse_load_flash_flag:
+	setarg mem_store_flag
+	arg mem_mouse_information_start,temp
+	isub temp,temp
+	fetch 3,mem_flash_base
+	iadd temp,pdata
+	arg 2,temp
+	arg mem_store_flag,rega
+	branch spid_read_flash
+
+	
+mouse_load_flash_device_info:
+	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
+	call spid_read_flash
+	call mouse_select_reconn_device
+	fetch 4,mem_mouse_24g_addr
+	call g24_head_ptr2regc
+	branch g24_store_mem_addr
+
+mouse_store_flash_device_info:	
+	setarg mem_mouse_information_end
+	arg mem_mouse_information_start,temp
+	isub temp,temp
+	arg mem_mouse_information_start,rega
+	fetch 3,mem_flash_base
+	branch flash_write
+
+mouse_store_eerpom_dpi:
+	arg 1,temp
+	arg mem_mouse_dpi,rega
+	arg MOUSE_DPI_EEPROM_OFFECT,regb
+	branch iicd_write_protect_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
+
+mouse_statue_cheak_timer:
+	rtnmark1 mark_24g
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_STATUE_UP
+	fetch 1,mem_mouse_1step_up_count
+	pincrease 1
+	and pdata,0x07,pdata
+	store 1,mem_mouse_1step_up_count
+	rtnne 0x07         //800ms read sensor
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,mouse_check_statue_up
+	bbit1 UI_STATE_BLE_CONNECTED,mouse_check_statue_up
+	rtn
+
+
+
+//mosue 
+mouse_check_statue_up:
+	bpatch patch1d_6,mem_patch1d
+	fetch 1,mem_mouse_2step_up_count
+	nrtn blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_STATUE_UP_FLAG
+	fetch 1,mem_sensor_squal_reg
+	call sensor_read
+	store 1,mem_sensor_iqc
+	sub pdata,0x10,null
+	branch mouse_statue_up_timer_init,positive
+	jam 0,mem_mouse_2step_up_count
+	rtn
+
+mouse_statue_up_timer_init:
+	jam 30,mem_mouse_2step_up_count
+	rtn
+mouse_statue_up_timer:
+	arg mem_mouse_2step_up_count,regc
+	arg mouse_statue_up,regb
+	branch timer_single_step
+
+mouse_statue_up:
+	fetch 1,mem_sensor_squal_reg
+	call twspi_read
+	sub pdata,0x10,null
+	nrtn positive
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_STATUE_UP_FLAG
+	arg MOUSE_STATUE_UP_FLAG,queue
+	call mouse_disable_function_flag
+	jam 0,mem_lpm_mult
+	jam 30,mem_mouse_statue_led_timer         // led on3s
+	call mouse_devce_led_off
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_STATUE_UP_THREE_LED,mouse_three_device_statue_up
+mouse_two_device_statue_up:
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_device1_led_on  		//device_1
+	beq MODE_BT_DEVICE2,mouse_device_blink_led_init		//device_2
+	rtn
+mouse_three_device_statue_up:
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,mouse_device1_led_on  		//device_1
+	beq MODE_BT_DEVICE2,mouse_device2_led_on		//device_2
+	beq MODE_BT_DEVICE3,mouse_device3_led_on		//device_3
+	rtn
+	
+mouse_device_blink_led_init:
+	fetch 1,mem_config_device1_led_gpio
+	branch mouse_led_blink
+
+
+
+mouse_statue_led_off:
+	jam 0x20,mem_lpm_mult
+	branch mouse_devce_led_off
+
+
+
+mouse_devce1_led_off:
+	fetch 1,mem_config_device1_led_gpio
+	rtneq GPIO_DISABLE
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_off
+
+mouse_devce2_led_off:
+	fetch 1,mem_config_device2_led_gpio
+	rtneq GPIO_DISABLE
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_off
+	
+mouse_devce_led_off:
+	call mouse_led_off
+	call mouse_devce1_led_off
+	call mouse_devce2_led_off
+mouse_devce3_led_off:
+	fetch 1,mem_config_device3_led_gpio
+	rtneq GPIO_DISABLE
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_off
+
+mouse_device1_led_on:
+	fetch 1,mem_config_device1_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_on
+mouse_device2_led_on:
+	fetch 1,mem_config_device2_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_on
+mouse_device3_led_on:
+	fetch 1,mem_config_device3_led_gpio
+	store 1,mem_mouse_struct_led_gpio
+	branch mouse_led_on
+
+
+
+mouse_polling_device:
+	bpatch patch1d_7,mem_patch1d
+	fetch 1,mem_reconn_times
+	increase -1,pdata
+	store 1,mem_reconn_times
+	fetcht 1,mem_device_flag
+	increase 1,temp
+	fetch 1,mem_device_number
+	isub temp,null
+	ncall mouse_select_device_count_clean,positive
+	storet 1,mem_device_flag
+	jam 0,mem_link_key_exists
+	call mouse_store_device_number2eeprom
+	call mouse_before_store_reconn_info
+	branch mouse_check_reconn_target
+	
+mouse_power_down:
+	call mouse_devce_led_off
+	setarg 0
+	store 8,mem_gpio_wakeup_low
+	branch lpm_hibernate
+
+
+
+
+
+
+endif
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_remote_car.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_remote_car.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_remote_car.prog	(working copy)
@@ -0,0 +1,480 @@
+ifdef COMPILE_REMOTE_CAR
+
+remote_car_init:
+	rtn wake	
+	hfetch 1,core_gpio_sel1
+	and_into 0xf0,pdata
+	hstore 1,core_gpio_sel1
+	call keyscan_key_init
+	setarg remote_car_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+	
+	setarg remote_car_process_lpm_before
+	store 2,mem_cb_before_lpm	
+	
+	setarg remote_car_scale_process_idle	
+	store 2,mem_cb_idle_process	
+	
+	setarg remote_car_scale_process_bb_event 
+	store 2,mem_cb_bb_event_process	
+	
+	setarg app_get_lpm_wake_lock
+	store 2,mem_cb_check_wakelock	
+
+	call g24_head_ptr2regc
+	setarg remote_car_g24_package_data
+	add regc,offset_24g_cb_data,contw
+	istore 2,contw
+	
+	setarg remote_car_g24_enter_lpm
+	add regc,offset_24g_cb_lpm_prepare,contw
+	istore 2,contw
+	
+	setarg remote_car_process_lpm_before
+	add regc,offset_24g_cb_lpm_before,contw
+	istore 2,contw
+
+	setarg remote_car_event_timer
+	store 2,mem_cb_event_timer
+	
+	setarg remote_car_power_off_signal
+	store 2,mem_remote_car_power_off_cb
+	
+	setarg remote_car_soft_switch_power_on_signal
+	store 2,mem_remote_car_power_standby_cb
+	
+	setarg remote_car_send_key_data
+	store 2,mem_cb_remote_car_keyscan
+	
+	bpatch patch1e_0,mem_patch1e
+	call remote_car_init_environment
+	call queue_init
+	jam 2,mem_lpm_mult
+	fetch 1,mem_remote_car_config_soft_switch_enable
+	store 1,mem_remote_car_hard_soft_switch
+	beq HARD_SWITCH, remote_car_hard_switch_power_on_signal
+	fetch 1,mem_remote_car_config_soft_switch_gpio
+	store 1,mem_ui_button_gpio
+remote_car_soft_switch_power_on_init:
+	call remote_car_ui_led_init
+	call ui_button_init
+	call ui_button_polling
+	jam POWER_STARTING,mem_remote_car_power_state
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	branch app_enter_hibernate
+
+
+
+remote_car_hard_switch_power_on_signal:
+	jam POWER_STANDBY,mem_remote_car_power_state
+remote_car_soft_switch_power_on_signal:
+	call remote_car_ui_led_init
+//	fetch 1,mem_remote_car_led_map
+	arg 0,rega
+	call ui_led_blink_start_global
+remote_car_connect_24g_mode:
+	branch g24_auto_pair_start
+
+remote_car_power_off_signal:	
+	branch remote_car_ui_led_init
+	
+remote_car_ui_led_init:
+	bpatch patch1e_1,mem_patch1e
+	fetch 1,mem_remote_car_config_connect_led_gpio
+	bne INVALID_PIN_NUM,remote_car_pairing_led_gpio_set
+remote_car_ui_led_init_1:
+	fetcht 1, mem_remote_car_led_map
+	branch gpio_config_output
+remote_car_pairing_led_gpio_set:
+	store 1,mem_remote_car_led_map
+	branch remote_car_ui_led_init_1
+
+
+remote_car_init_environment:
+	call g24_set_device_addr
+	fetch 2,mem_remote_car_no_data_timeout
+	store 2,mem_remote_car_no_data_timer
+	branch remote_car_get_adc_default_data
+
+remote_car_le_before_hibernate:
+//	call keyscan_scan_key
+//	fetch 2, mem_key_value_temp
+//	branch remote_car_in_enter_hibernate,blank
+//	branch app_enter_hibernate
+remote_car_in_enter_hibernate:	
+	call gpio_set_before_lpm_common
+	call remote_car_process_lpm_before
+	branch app_enter_hibernate
+
+remote_car_process_lpm_before:
+	branch keyscan_process_lpm_before
+
+remote_car_g24_enter_lpm:
+	fetch 1,mem_remote_car_24g_enter_lpm_enable
+	rtn blank
+	//do not enter lpm when condition is unallowed
+	branch g24_lpm_long_sleep
+
+remote_car_process_auto_pair_exit:
+	rtn
+
+remote_car_key_scan_process:
+	branch keyscan_key_process
+
+remote_car_scale_process_idle:
+	call remote_car_rocker_process
+	call remote_car_24g_status_process
+	branch remote_car_key_scan_process
+
+remote_car_scale_process_bb_event:
+	copy regc,pdata
+	beq BT_EVT_BUTTON_UP,app_event_button_up
+	beq BT_EVT_BUTTON_LONG_PRESSED,app_button_long_pressed
+	beq BT_EVT_24G_PAIRING_COMPLETE,remote_car_24g_pairing_complete
+	beq BT_EVT_24G_ATTEMPT_SUCCESS,remote_car_24g_attempt_success
+	beq BT_EVT_24G_ATTEMPT_FAIL,remote_car_24g_attempt_fail
+	rtn
+
+remote_car_24g_attempt_fail:
+	jam 1,mem_remote_car_24g_enter_lpm_enable
+	rtn
+
+remote_car_24g_pairing_complete:
+	jam 1,mem_remote_car_24g_enter_lpm_enable
+	jam WORK_PAIRED,mem_remote_car_24g_auto_work_step
+	jam WORK_PAIRED,mem_remote_car_24g_pair_success_flag
+	rtn
+
+remote_car_24g_attempt_success:
+	jam 1,mem_remote_car_24g_enter_lpm_enable
+	jam WORK_PAIRED,mem_remote_car_24g_auto_work_step
+	jam WORK_PAIRED,mem_remote_car_24g_pair_success_flag
+	rtn
+
+remote_car_24g_status_process:
+	fetch 1,mem_remote_car_24g_auto_work_step
+	rtneq POWER_ON
+	fetch 1,mem_remote_car_24g_status
+	rtneq WORK_PAIRED
+	jam WORK_PAIRED,mem_remote_car_24g_status
+remote_car_scale_process_paired:
+	arg 0,rega
+	branch ui_led_off_global
+remote_car_scale_process_shutdown:
+	arg 0,rega
+	call ui_led_off_global
+	call remote_car_ui_led_init
+	branch app_enter_hibernate
+	
+remote_car_event_timer:
+	call app_power_timer
+	branch remote_car_no_data_timer
+
+remote_car_no_data_timer:
+	fetch 1,mem_remote_car_config_timeout_shutdown_enable
+	rtn blank
+	arg mem_remote_car_no_data_timer,regc
+	arg remote_car_scale_process_shutdown,regb
+	branch timer_single_step_2B
+	
+////////////////////////////////////rocker/////////////////////////////
+remote_car_get_adc_default_data:
+	call remote_car_rocker_get_x
+	storet 2,mem_current_vdd_value_default_mid_x
+	call remote_car_rocker_get_y
+	storet 2,mem_current_vdd_value_default_mid_y
+	rtn
+remote_car_rocker_data_get:
+remote_car_rocker_get_x:
+	fetch 2,mem_current_vdd_value_default_mid_x
+	store 2,mem_current_vdd_value_default_mid_temp
+	call remote_car_get_adc_from_gpio6
+	call remote_car_rocker_get_value
+	store 1,mem_rocker_status
+remote_car_rocker_get_y:
+	fetch 2,mem_current_vdd_value_default_mid_y
+	store 2,mem_current_vdd_value_default_mid_temp
+	call remote_car_get_adc_from_gpio7
+	call remote_car_rocker_get_value
+	store 1,mem_rocker_status+1
+	rtn
+remote_car_rocker_get_value:
+	fetch 2,mem_current_vdd_default_range
+	copy pdata,rega
+	fetch 2,mem_current_vdd_value_default_mid_temp
+	call remote_car_rocker_mid_value_adjust
+	fetch 1,mem_rocker_work_status
+	nbranch remote_car_rocker_translate_key,blank
+	nrtn positive
+	fetcht 2,mem_current_vdd_value_default_mid_temp
+	rtn	
+remote_car_rocker_mid_value_adjust:
+	isub temp,pdata
+	branch remote_car_rocker_mid_adjust_positive,positive
+	sub pdata,0,pdata		//negative adjust
+	jam 1,mem_rocker_negative_flag
+	isub rega,null
+	rtn
+remote_car_rocker_mid_adjust_positive:
+	jam 0,mem_rocker_negative_flag
+	isub rega,null
+	rtn
+remote_car_rocker_translate_key:
+	nbranch remote_car_rocker_middle_key,positive
+	fetch 1,mem_rocker_negative_flag
+	nbranch remote_car_rocker_negative_key,blank
+remote_car_rocker_positive_key:	
+	setarg ROCKER_POSITIVE_KEY
+	rtn
+remote_car_rocker_negative_key:
+	setarg ROCKER_NEGATIVE_KEY
+	rtn
+remote_car_rocker_middle_key:
+	setarg ROCKER_MIDDLE_KEY
+	rtn
+remote_car_get_adc_from_gpio6:
+	jam 0x33,mem_adc_channel
+	branch adc_set_mode
+remote_car_get_adc_from_gpio7:
+	jam 0x34,mem_adc_channel
+	branch adc_set_mode
+
+
+remote_car_rocker_process:
+	fetch 1,mem_remote_car_config_check_way
+	rtnne CAR_REMOTE_CHECK_ROCKER	
+remote_car_read_rocker_check_start:
+	bpatch patch1e_2,mem_patch1e
+	jam 1,mem_rocker_work_status
+	call remote_car_rocker_data_get
+	fetch 2,mem_rocker_status
+	fetcht 2,mem_rocker_last_status
+	isub temp,null
+	rtn zero
+	store 2,mem_rocker_last_status
+	call remote_car_rocker_x_to_key
+	branch remote_car_rocker_y_to_key
+	
+remote_car_rocker_x_to_key:
+	fetch 1,mem_rocker_x_status
+	branch rocker_to_queue_set_0,blank
+	increase -1,pdata
+	branch remote_car_rocker_to_key
+remote_car_rocker_y_to_key:
+	fetch 1,mem_rocker_y_status
+	branch rocker_to_queue_set_2,blank
+	increase 1,pdata
+remote_car_rocker_to_key:
+	copy pdata,queue
+	arg 1,rega
+	branch remote_car_send_key_data
+	
+rocker_to_queue_set_0:
+	arg 0,queue
+	arg 0,rega
+	branch remote_car_send_key_data
+rocker_to_queue_set_2:
+	arg 2,queue
+	arg 0,rega
+	branch remote_car_send_key_data
+	
+remote_car_send_key_data:
+	copy rega,pdata
+	store 1,mem_remote_key_status
+	fetch 1,mem_remote_car_24g_auto_work_step
+	beq POWER_ON,g24_auto_pair_start
+	fetch 2,mem_remote_car_no_data_timeout
+	store 2,mem_remote_car_no_data_timer
+	fetch 1,mem_remote_key_status
+	branch remote_car_key_is_release,blank
+remote_car_key_is_press:
+	bpatch patch1e_3,mem_patch1e
+	arg 0,rega
+	call ui_led_on_global
+remote_car_attack_key_press:
+	copy queue,pdata
+	beq 4,remote_car_send_attack_key4_press
+	beq 5,remote_car_send_attack_key5_press
+	beq 6,remote_car_send_fire_key6_press
+//	fetch 1,mem_remote_car_config_check_way
+//	rtneq CAR_REMOTE_CHECK_ROCKER
+remote_car_motor_key_press:
+	call remote_car_device_layout_select
+	beq CONTROL_F_B_TEN,remote_car_single_motor_key_is_press
+	beq CONTROL_L_R_TEN,remote_car_double_motor_key_press
+	beq CONTROL_L_R_LR,remote_car_single_motor_key_is_press
+	rtn
+	
+remote_car_single_motor_key_is_press:
+	copy queue,pdata
+	beq 0,remote_car_send_motor1_key0_press
+	beq 1,remote_car_send_motor1_key1_press
+	beq 2,remote_car_send_motor2_key2_press
+	beq 3,remote_car_send_motor2_key3_press
+	rtn
+	
+remote_car_double_motor_key_press:
+	copy queue,pdata
+	beq 0,remote_car_send_double_motor_key0_press
+	beq 1,remote_car_send_double_motor_key1_press
+	beq 2,remote_car_send_double_motor_key2_press
+	beq 3,remote_car_send_double_motor_key3_press
+	rtn
+
+remote_car_key_is_release:
+	bpatch patch1e_4,mem_patch1e
+	arg 0,rega
+	call ui_led_off_global
+remote_car_attack_key_release:
+	copy queue,pdata
+	beq 4,remote_car_send_attack_key4_rel
+	beq 5,remote_car_send_attack_key5_rel
+//	fetch 1,mem_remote_car_config_check_way
+//	rtneq CAR_REMOTE_CHECK_ROCKER
+remote_car_motor_key_release:
+	call remote_car_device_layout_select
+	beq CONTROL_F_B_TEN,remote_car_single_motor_key_rel
+	beq CONTROL_L_R_TEN,remote_car_double_motor_key_rel
+	beq CONTROL_L_R_LR,remote_car_single_motor_key_rel
+	rtn
+
+remote_car_device_layout_select:
+	fetch 1,mem_remote_car_config_layout
+	fetcht 1,mem_remote_car_config_key_map
+	ior temp,pdata
+	rtn
+
+//cross key,control front-back motor layout
+remote_car_send_motor1_key0_press:	//front
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor1_payload
+	branch remote_car_send_key
+remote_car_send_motor1_key1_press:	//back
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor1_payload
+	branch remote_car_send_key
+remote_car_send_motor2_key2_press:	//left
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_motor2_key3_press:	//right
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+
+//cross key,control left-right motor layout
+remote_car_send_double_motor_key0_press:	//front
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_double_motor_key1_press:	//back
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_double_motor_key2_press:	//left
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+remote_car_send_double_motor_key3_press:	//right
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor1_payload
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+	
+//attack motor control
+remote_car_send_attack_key4_press:	//attack left
+	jam MOTOR_POSITIVE,mem_remote_car_24g_motor3_payload
+	branch remote_car_send_key
+remote_car_send_attack_key5_press:	//attack right
+	jam MOTOR_NEGATIVE,mem_remote_car_24g_motor3_payload
+	branch remote_car_send_key
+
+remote_car_send_fire_key6_press:
+	jam 0x01,mem_remote_car_24g_fire_send_payload
+	branch remote_car_send_attack
+
+remote_car_single_motor_key_rel:
+	copy queue,pdata
+	beq 0,remote_car_send_motor1_key0_rel
+	beq 1,remote_car_send_motor1_key1_rel
+	beq 2,remote_car_send_motor2_key2_rel
+	beq 3,remote_car_send_motor2_key3_rel
+	rtn
+
+remote_car_double_motor_key_rel:
+	copy queue,pdata
+	beq 0,remote_car_send_double_motor_key0_rel
+	beq 1,remote_car_send_double_motor_key1_rel
+	beq 2,remote_car_send_double_motor_key2_rel
+	beq 3,remote_car_send_double_motor_key3_rel
+	rtn
+
+remote_car_send_motor1_key0_rel:
+remote_car_send_motor1_key1_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor1_payload
+	branch remote_car_send_key
+remote_car_send_motor2_key2_rel:
+remote_car_send_motor2_key3_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+	
+remote_car_send_double_motor_key0_rel:
+remote_car_send_double_motor_key1_rel:
+remote_car_send_double_motor_key2_rel:
+remote_car_send_double_motor_key3_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor1_payload
+	jam MOTOR_STOP,mem_remote_car_24g_motor2_payload
+	branch remote_car_send_key
+	
+remote_car_send_attack_key4_rel:
+remote_car_send_attack_key5_rel:
+	jam MOTOR_STOP,mem_remote_car_24g_motor3_payload
+	branch remote_car_send_key
+
+remote_car_send_key:
+	arg mem_remote_car_24g_motor_packet,rega
+	branch queue_push
+remote_car_send_attack:
+	arg mem_remote_car_24g_fire_packet,rega
+	branch queue_push
+
+remote_car_g24_package_data:
+	fetch 1,mem_remote_car_24g_pair_success_flag
+	beq WORK_PAIRED,remote_car_g24_send_empty
+	arg mem_remote_car_24g_tx_temp,rega
+	call queue_pop
+	nbranch remote_car_moto_data,user
+remote_car_g24_package_data_continue:
+	arg mem_remote_car_24g_tx_temp,contr
+	ifetch 1,contr
+	copy pdata,rega
+	arg mem_remote_car_24g_tx_temp+1,regb
+	//rega: length
+	//regb: tx buffer
+	rtn
+	
+remote_car_g24_send_empty:
+	jam 0,mem_remote_car_24g_pair_success_flag
+	enable user
+	arg 1,rega
+	arg mem_remote_car_empty_packet,regb
+	rtn
+	
+remote_car_moto_data:
+	fetch 1,mem_remote_car_24g_tx_temp+3	//cmd
+	beq CAR_CMD_L_R_MOTOR_CONTROL,remote_car_moto_data_next
+	beq CAR_CMD_F_B_MOTOR_CONTROL,remote_car_moto_data_next
+	rtn
+remote_car_moto_data_next:
+	fetch 1,mem_remote_car_24g_tx_temp+6	//data moto1
+	nbranch remote_car_moto_data_enable_user,blank
+	fetch 1,mem_remote_car_24g_tx_temp+8	//data moto2
+	nbranch remote_car_moto_data_enable_user,blank
+	fetch 1,mem_remote_car_24g_tx_temp+10	//data moto3
+	nbranch remote_car_moto_data_enable_user,blank
+	rtn
+remote_car_moto_data_enable_user:
+	enable user
+	branch remote_car_g24_package_data_continue
+
+endif
+
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_shutter.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_shutter.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_shutter.prog	(working copy)
@@ -0,0 +1,1170 @@
+
+ifdef COMPILE_SHUTTER
+
+shutter_init:
+	rtn wake	
+	hfetch 1,core_gpio_sel1
+	and_into 0xfc,pdata
+	hstore 1,core_gpio_sel1
+	setarg shutter_le_before_hibernate
+	store 2,mem_cb_before_hibernate
+
+	setarg shutter_process_lpm_before
+	store 2,mem_cb_before_lpm
+	
+	setarg app_enter_hibernate
+	store 2,mem_cb_discovry_timeout
+	
+	setarg shutter_process_idle
+	store 2,mem_cb_idle_process
+		
+	setarg shutter_process_bb_event 
+	store 2,mem_cb_bb_event_process
+
+	setarg shutter_le_scale_lpm_lock
+	store 2,mem_cb_check_wakelock
+	
+	setarg ble_shutter_receive_data
+	store 2,mem_cb_att_write
+
+	setarg shutter_le_bb_event_timer
+	store 2,mem_cb_event_timer
+
+	setarg shutter_key_change
+	store 2,mem_cb_shutter_keycan
+
+	setarg shutter_soft_swtich_power_on
+	store 2,mem_shutter_soft_switch_poweron_callback_function
+	setarg shutter_soft_swtich_power_off
+	store 2,mem_shutter_soft_switch_poweroff_callback_function
+
+	call le_modified_name
+	call shutter_load_bluetooth_config_by_user_config
+	call shutter_init_bluetooth_config
+	call shutter_init_param	
+	call keyscan_key_init
+	call shutter_load_buffer_config_form_DataRom
+	call queue_init
+	call ui_led_init_global
+	call shutter_load_bluetooth_config
+	call shutter_load_bluetooth_config_by_eeprom
+	
+	bpatch patch1e_5,mem_patch1e
+	call classic_shutter_load_reconn_info
+	fetch 1, mem_shutter_hard_soft_switch_case
+	beq HARD_SWITCH, shutter_hart_swtich_power_on
+	fetch 1,mem_shutter_soft_switch_button_gpio
+	store 1,mem_ui_button_gpio
+	branch ui_soft_swtich_init
+
+/**************hard swtich function**************/
+shutter_hart_swtich_power_on:
+	jam UI_BUTTON_GPIO_DISABLE,mem_ui_button_gpio
+	jam SS_STATE_POWER_ON,mem_shutter_soft_switch_power_state
+	branch shutter_start_reconnect
+/****************************/
+
+/**************lpm lock callback function**************/
+shutter_le_scale_lpm_lock:
+	fetch 1,mem_shutter_soft_switch_power_state
+	beq SS_STATE_POWER_OFF,app_get_lpm_wake_lock
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	nbranch app_get_lpm_wake_lock,blank
+	branch app_put_lpm_wake_lock
+/****************************/
+
+/**************c512bt event callback function*************/
+shutter_process_bb_event:
+	copy regc,pdata
+/**************classic shutter event*****************/
+	beq BT_EVT_BB_CONNECTED,classic_shutter_process_baseband_connect
+	beq BT_EVT_BB_DISCONNECTED,classic_shutter_process_baseband_disconnect
+	beq BT_EVT_RECONN_FAILED,classic_shutter_process_reconnect_failed
+	beq BT_EVT_SETUP_COMPLETE,classic_shutter_process_setup_complete
+	beq BT_EVT_HID_CONNECTED,classic_shutter_process_hid_connect
+	beq BT_EVT_HID_DISCONNECTED,classic_shutter_process_hid_disconnect
+	beq BT_EVT_HID_HANDSHAKE,classic_shutter_process_hid_handshake
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,classic_shutter_process_reconnect_page_timeout
+	beq BT_EVT_VIRTUAL_CABLE_UNPLUG,classic_shutter_process_virtual_cable_unplug
+	beq BT_EVT_REMOTE_UNSNIFF,classic_shutter_process_remote_unsniff
+	beq BT_EVT_STORE_NVRAM,classic_shutter_process_store_reconnect_information
+/**************ble shutter event*****************/
+	beq BT_EVT_LE_CONNECTED,ble_shutter_process_baseband_connect
+	beq BT_EVT_LE_DISCONNECTED,ble_shutter_process_baseband_disconnect
+	beq BT_EVT_LE_RECONNECT_COMPLETE,ble_shutter_process_reconnect_complete
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,ble_shutter_process_parse_connect_parameter_update_response
+/***************soft swtich event****************/
+	beq BT_EVT_BUTTON_LONG_PRESSED,shutter_process_soft_swtich_button_long_press
+	beq BT_EVT_BUTTON_DOWN,shutter_process_soft_swtich_button_down
+	beq BT_EVT_BUTTON_UP,shutter_process_soft_swtich_button_up
+	rtn
+/****************************/
+
+
+/******************classic shutter event**********************/
+classic_shutter_process_baseband_connect:
+	jam 0,mem_classic_shutter_hid_disconn_count
+	jam 0,mem_classic_shutter_cable_unplug_conut	
+	rtn
+
+
+classic_shutter_process_baseband_disconnect:
+	call classic_shutter_disconnect_clear_flag
+	branch classic_shutter_process_reconnect_failed
+
+classic_shutter_disconnect_clear_flag:
+	jam APP_HANDSHAKE_NULL,mem_app_handshake_flag
+	jam 0,mem_hid_handshake_timer_count
+	jam 0,mem_unsniff2sniff_timer_count
+	jam 0,mem_classic_shutter_cable_unplug_conut
+	jam 0,mem_classic_shutter_hid_disconn_count
+	branch queue_init
+
+
+classic_shutter_process_reconnect_failed:
+	call app_disconn_reason_clear
+	branch shutter_start_bluetooth_discovery
+
+
+classic_shutter_process_setup_complete:
+	call shutter_stop_bluetooth_discovery
+	branch app_led_stop_blink
+
+
+classic_shutter_process_hid_connect:
+	setarg HID_HANDSHAKE_TIMEOUT
+	store 1,mem_hid_handshake_timer_count
+	rtn	
+
+
+classic_shutter_process_hid_disconnect:
+	jam 0,mem_classic_shutter_cable_unplug_conut	
+	setarg FLAG_SHUTTER_HID_DISCONN_TIMEOUT
+	store 1,mem_classic_shutter_hid_disconn_count
+	rtn
+
+
+classic_shutter_process_hid_handshake:
+	fetch 1,mem_app_handshake_flag
+	rtneq APP_HANDSHAKE_DONE
+	jam APP_HANDSHAKE_DONE,mem_app_handshake_flag
+	call app_lpm_mult_enable
+	call app_store_reconn_info
+	call shutter_stop_bluetooth_discovery
+	call app_led_off
+	branch app_bt_enter_sniff
+
+
+classic_shutter_process_reconnect_page_timeout:
+	branch classic_shutter_process_reconnect_failed
+
+
+classic_shutter_process_virtual_cable_unplug:
+	setarg FLAG_SHUTTER_CABLE_UNPLUG_TIMEOUT
+	store 1,mem_classic_shutter_cable_unplug_conut
+	rtn
+
+
+classic_shutter_process_remote_unsniff:
+	branch app_start_auto_sniff
+
+
+/***************classic shutter store reconn info***********************/
+classic_shutter_process_store_reconnect_information:
+	arg NVRAM_EEPROM_OFFSET,regb
+	fetch 1,mem_nv_data_number
+	mul32 pdata,34,temp
+	fetch 2,mem_nv_data_ptr
+	copy pdata,rega
+	branch iicd_write_eep_data
+
+classic_shutter_load_reconn_info:
+	arg NVRAM_EEPROM_OFFSET,regb
+	fetch 1,mem_shutter_bluetooth_type
+	rtnbit0 CLASSIC_SHUTTER
+	fetch 1,mem_nv_data_number
+	rtn blank
+	mul32 pdata,34,temp
+	fetch 2,mem_nv_data_ptr
+	copy pdata,rega
+	branch iicd_read_eep_data
+/**************************************/
+
+/******************ble shutter event**********************/
+ble_shutter_process_baseband_connect:
+	call shutter_stop_bluetooth_discovery
+	setarg 0
+	store 2,mem_ble_shutter_reconn_timer
+	branch app_led_off
+
+
+ble_shutter_process_baseband_disconnect:
+	call queue_init
+	jam 0,mem_ble_shutter_enable_notify
+	branch shutter_start_reconnect
+
+
+ble_shutter_process_reconnect_complete:
+	call queue_init
+	jam 1,mem_ble_shutter_enable_notify
+	fetch 8,mem_ble_shutter_interval_min
+	store 8,mem_le_interval_min
+	call app_lpm_mult_enable
+	branch le_l2cap_tx_update_req
+
+
+ble_shutter_process_parse_connect_parameter_update_response:
+	fetch 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	rtneq BLE_SIGNALING_CONNECT_PARAMETER_UPDATE_ACCEPTED
+	fetch 8,mem_ble_shutter_interval_min_new
+	rtn blank
+	store 8,mem_le_interval_min
+	branch le_l2cap_tx_update_req
+/**************************************/
+
+/******************soft swtich event**********************/
+shutter_process_soft_swtich_button_long_press:
+	branch ui_soft_switch_botton_long_press
+
+shutter_process_soft_swtich_button_down:
+	fetch 1,mem_shutter_hard_soft_switch_case
+	rtneq HARD_SWITCH
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	call shutter_store_currenct_led_state
+	branch app_led_on
+	
+shutter_store_currenct_led_state:
+	jam 1,mem_shutter_soft_swtich_botton_down
+	arg 11,loopcnt
+	arg mem_shutter_soft_swtich_led_struct_temp,contw
+	arg mem_shutter_led_struct_app_led,contr
+	branch memcpy
+	
+shutter_process_soft_swtich_button_up:
+	fetch 1,mem_shutter_hard_soft_switch_case
+	rtneq HARD_SWITCH
+	fetch 1,mem_shutter_soft_switch_power_state
+	beq SS_STATE_POWER_ON,shutter_load_currenct_led_state
+	branch ui_soft_switch_botton_up
+
+shutter_load_currenct_led_state:
+	fetch 1,mem_shutter_soft_swtich_botton_down
+	rtnne 1
+	jam 0,mem_shutter_soft_swtich_botton_down
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,app_led_off
+	bbit1 UI_STATE_BLE_CONNECTED,app_led_off
+	arg 11,loopcnt
+	arg mem_shutter_soft_swtich_led_struct_temp,contr
+	arg mem_shutter_led_struct_app_led,contw
+	branch memcpy
+	
+/**************************************/
+
+
+shutter_le_bb_event_timer:
+/**************shutter check sleep timer**********************/
+	call shutter_check_sleep_timer
+/************************************/
+/**************soft reset power off timer**********************/
+	call shutter_check_power_off_timer
+/************************************/
+/**************classic shutter timer**********************/
+	call classic_shutter_check_unplug_timer
+	call classic_shutter_hid_handshake_timer
+	call classic_shutter_hid_disconn_timer
+/************************************/
+/**************ble shutter timer**********************/
+	branch ble_shutter_reconn_timer
+/************************************/
+
+/**************shutter check sleep timer**********************/
+shutter_check_sleep_timer:
+	arg mem_shutter_sleep_timer,regc
+	arg shutter_sleep_timeout,regb
+	branch timer_single_step_2B
+shutter_sleep_timeout:
+	jam SS_STATE_POWER_OFF,mem_shutter_soft_switch_power_state
+	call app_led_off
+	call shutter_disconnect_current_connection
+	branch shutter_wait_power_off
+
+/**************soft reset power off timer**********************/
+shutter_check_power_off_timer:
+	arg mem_shutter_power_off_timer,regc
+	arg shutter_check_power_off_timeout,regb
+	branch timer_single_step
+
+shutter_check_power_off_timeout:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,shutter_wait_power_off
+	bbit1 UI_STATE_BT_CONNECTED,shutter_wait_power_off
+	fetch 1,mem_shutter_led_struct_app_led_type
+	beq UI_LED_STATE_BLINK_START,shutter_wait_power_off
+	beq UI_LED_STATE_BLINK_LIGHTING,shutter_wait_power_off
+	beq UI_LED_STATE_BLINK_DARKING,shutter_wait_power_off
+	branch app_enter_hibernate
+/************************************/
+
+/**************classic shutter timer**********************/
+classic_shutter_check_unplug_timer:
+	arg mem_classic_shutter_cable_unplug_conut,regc
+	arg classic_shutter_unplug_timeout,regb
+	branch timer_single_step
+	
+classic_shutter_unplug_timeout:
+	fetch 1,mem_CONTROL_tasks
+	set1  L2CAP_DISCONNECT_INTERRUPT, pdata
+	set1  L2CAP_DISCONNECT_CONTROL, pdata
+	store 1,mem_CONTROL_tasks	
+	rtn
+
+classic_shutter_hid_handshake_timer:
+	arg mem_hid_handshake_timer_count,regc
+	arg classic_shutter_process_hid_handshake,regb
+	branch timer_single_step
+
+classic_shutter_hid_disconn_timer:
+	arg mem_classic_shutter_hid_disconn_count,regc
+	arg app_bt_disconnect,regb
+	branch timer_single_step
+
+/************************************/
+
+/**************ble shutter timer**********************/
+ble_shutter_reconn_timer:
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	arg mem_ble_shutter_reconn_timer,regc
+	arg shutter_start_bluetooth_discovery,regb
+	branch timer_single_step_2B
+/************************************/
+
+shutter_process_idle:
+	call shutter_send_data_to_master
+	branch keyscan_key_process
+
+
+shutter_process_lpm_before:
+	branch keyscan_process_lpm_before
+
+shutter_le_before_hibernate:
+	call gpio_set_before_lpm_common
+	branch shutter_process_lpm_before
+
+//////////////////////////////////////////////////////////////////////////////////////////
+
+
+/****************shutter bluetooth control**********************/
+shutter_stop_bluetooth_discovery:
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_stop_bluetooth_discovery
+	bbit1 BLE_SHUTTER,ble_shutter_stop_bluetooth_discovery
+	rtn
+
+ble_shutter_stop_bluetooth_discovery:
+	fetch 2,mem_ble_shutter_connect_timeout
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	branch app_ble_stop_adv
+	
+classic_shutter_stop_bluetooth_discovery:
+	fetch 2,mem_classic_shutter_connect_timeout
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	branch app_bt_stop_discovery
+
+shutter_start_bluetooth_discovery:
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_start_discovery
+	bbit1 BLE_SHUTTER,ble_shutter_start_discovery
+	rtn
+	
+classic_shutter_start_discovery:
+	fetch 2,mem_classic_shutter_discovery_timeout,
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	branch app_bt_start_discovery_short
+
+ble_shutter_start_discovery:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	fetch 2,mem_ble_shutter_discovery_timeout
+	store 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+	fetch 2,mem_ble_shutter_discovery_adv_interval
+	call shutter_ble_adv_interval_set
+	call app_led_start_blink
+	fetch 4,mem_ble_shutter_discovery_blink_on_time
+	store 4,mem_shutter_led_struct_app_led_on_time
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_ADV
+	branch app_ble_start_adv
+
+
+shutter_start_reconnect:
+	fetch 1,mem_shutter_soft_switch_power_state
+	rtnne SS_STATE_POWER_ON
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_start_reconnect
+	bbit1 BLE_SHUTTER,ble_shutter_start_reconnect
+	rtn
+
+classic_shutter_start_reconnect:
+	call app_check_reconn_target
+	branch shutter_start_bluetooth_discovery,blank
+	call app_led_on	
+	call app_bt_stop_discovery
+	branch app_bt_start_reconnect	
+
+ble_shutter_start_reconnect:
+	fetch 2,mem_ble_shutter_reconn_timer
+	fetcht 2,mem_ble_shutter_reconn_timeout
+	storet 2,mem_ble_shutter_reconn_timer
+	nrtn blank
+	fetch 2,mem_ble_shutter_reconn_dav_interval
+	call shutter_ble_adv_interval_set
+	call app_led_start_blink
+	fetch 4,mem_ble_shutter_reconn_blink_on_time
+	store 4,mem_shutter_led_struct_app_led_on_time
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_ADV
+	branch app_ble_start_adv
+
+//pdata:adv interval value
+shutter_ble_adv_interval_set:
+	store 2,mem_lpm_interval
+	increase -4,pdata
+	store 2,mem_le_adv_interval
+	rtn
+
+
+shutter_disconnect_current_connection:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,app_ble_disconnect
+	bbit1 UI_STATE_BT_CONNECTED,app_bt_disconnect
+	branch shutter_stop_bluetooth_discovery
+/**************************************/
+
+/******************classic shutter load reconnect*********************/
+app_check_reconn_target:
+	fetch 1,mem_nv_data_number
+	copy pdata,loopcnt
+	fetch 2,mem_nv_data_ptr
+	copy pdata,rega
+app_check_reconn_target_loop:
+	ifetch 2,rega
+	beq 0,found_reconn_device
+	increase NV_DATA_LEN,rega
+	loop app_check_reconn_target_loop
+	branch enable_blank
+
+found_reconn_device:
+	ifetch 6,contr
+	store 6,mem_hci_plap
+	increase 10,contr
+	arg mem_link_key,contw
+	call  memcpy16
+	call check_link_key_load
+	branch disable_blank
+	
+/**************************************/
+
+/////////////////////////////////////////////////////////////////////////
+//output:if user is enable,mean,can send data
+shutter_check_data_enable:
+	call disable_user
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,shutter_check_bt_data_enable
+	bbit1 UI_STATE_BLE_CONNECTED,shutter_check_ble_data_enable
+	rtn
+
+shutter_check_bt_data_enable:
+	fetch 1,mem_hid_interrupt_state
+	rtnne 0x3f	
+	branch enable_user
+
+shutter_check_ble_data_enable:
+	fetch 1,mem_ble_shutter_enable_notify
+	rtn blank
+	branch enable_user
+/////////////////////////////////////////////////////////////////////////
+
+/////////////////////////////////////////////////////////////////////////
+//output:if user is enable,mean,bluetooth disconnect
+shutter_check_bluetooth_conn:
+	call disable_user
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BT_CONNECTED
+	rtnbit1 UI_STATE_BLE_CONNECTED
+	branch enable_user
+/////////////////////////////////////////////////////////////////////////
+
+/////////////////////////////////////////////////////////////////////////
+shutter_change_bluetooth_status_bt_disconn:
+	fetch 1,mem_shutter_bluetooth_type
+	bbit1 CLASSIC_SHUTTER,classic_shutter_change_bluetooth_status_bt_disconn
+	bbit1 BLE_SHUTTER,ble_shutter_change_bluetooth_status_bt_disconn
+	rtn
+	
+classic_shutter_change_bluetooth_status_bt_disconn:
+	fetch 1,mem_scan_mode
+	rtnne 0x03
+	branch shutter_start_reconnect
+	
+ble_shutter_change_bluetooth_status_bt_disconn:
+	branch shutter_start_reconnect
+
+/////////////////////////////////////////////////////////////////////////
+shutter_check_send_data:
+	disable user2
+	fetch 2,mem_shutter_sleep_timeout
+	store 2,mem_shutter_sleep_timer
+
+	call shutter_check_bluetooth_conn
+	branch shutter_change_bluetooth_status_bt_disconn,user
+	
+	call shutter_check_data_enable
+	nrtn user
+	enable user2
+	rtn
+
+//queue = key index
+//rega =1 press, =0 release
+shutter_key_change:
+	call shutter_check_send_data
+	nrtn user2
+	deposit rega
+	branch shutter_key_release,blank
+shutter_key_press:
+	call app_led_on
+	arg mem_key0_press,regc
+	branch push_queue_press_or_release
+
+shutter_key_release:
+	call app_led_off
+	arg mem_key0_release,regc
+
+push_queue_press_or_release:
+	arg MAX_QUEUE_NUM,pdata
+	imul32 queue,pdata
+	iadd regc,regc
+	
+//input:regc the address that want push to queue buffer
+push_buffer_in_queue:
+	ifetch 1,regc
+	rtn blank
+	call queue_push_one_byte
+	increase 1,regc
+	branch push_buffer_in_queue
+
+
+shutter_send_data_to_master:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_CONNECTED,pop_queue_to_ble_data
+	bbit1 UI_STATE_BT_CONNECTED,pop_queue_to_classic_data
+	rtn
+
+pop_queue_to_ble_data:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	call queue_pop_one_byte
+	nrtn user
+	pincrease -1
+	mul32 pdata,SHUTTER_BLE_DATA_BUFFER,pdata
+	arg mem_ble_data_buffer1,temp
+	iadd temp,contr
+le_send_notify_from_list:
+	ifetch 1,contr	//length 
+	copy pdata,rega
+	ifetcht 2,contr	//handle
+	call store_contr
+	call le_att_malloc_tx_notify
+	copy rega,loopcnt
+	call get_contr
+	branch memcpy
+
+
+pop_queue_to_classic_data:
+	call l2cap_malloc_is_fifo_nearly_full
+	nrtn blank
+	call queue_pop_one_byte
+	nrtn user
+	pincrease -1
+	mul32 pdata,SHUTTER_CLASSIC_DATA_BUFFER,pdata
+	arg mem_classic_data_buffer1,temp
+	iadd temp,contr
+	ifetch 5,contr
+	store 5,mem_classic_data_buffer
+classic_send_hid_data:
+	fetch 1,mem_classic_data_buffer
+	copy pdata,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0xa1
+	istore 1,contw
+	fetch 4,mem_classic_data_buffer + 1
+	istore 9,contw
+	rtn
+
+///////////queue function////////////
+//input:pdata is data that want push
+queue_push_one_byte:
+	store 1,mem_pdatatemp
+	arg mem_pdatatemp,rega
+	branch queue_push
+
+queue_pop_one_byte:
+	arg mem_pdatatemp,rega
+	call queue_pop
+	nrtn user
+	fetch 1,mem_pdatatemp
+	rtn
+
+///////////queue function ending////////////
+ble_shutter_receive_data:
+	fetch 2,mem_le_att_handle
+	beq GATT_KEYBOARD_WRITE_HANDLE,ble_shutter_process_reconnect_complete
+	rtn
+
+shutter_init_param:
+	setarg 0x02
+	store 1,mem_shutter_power_off_timeout
+/////////////ble connect interval//////////////
+	setarg 0x00200008
+	store 4,mem_ble_shutter_interval_min		//set min interval is 10ms,set max interval is 40ms
+	setarg 0x012c0005
+	istore 4,contw
+///////////////////////////////////////
+//////////////////MTU/////////////
+	jam 0x17,mem_le_local_mtu
+///////////////////////////////////////
+////////////////justwork/////////
+	setarg 0x1b
+ 	store 2,mem_le_pairing_handle
+ 	call le_set_config_fixed_ltk
+	call le_set_fixed_ltk
+	call le_set_justwork
+	branch le_set_config_read_authentication
+///////////////////////////////////////
+
+shutter_load_buffer_config_form_DataRom:
+///////load data Rom/////////
+	arg BLE_KEY_VALUE_LIST_SIZE,loopcnt
+	arg mem_ble_data_buffer1,contw
+	arg BLE_SHUTTER_KEY_VALUE_LIST,contr
+	call memcpy_fast
+	arg BT_KEY_VALUE_LIST_SIZE,loopcnt
+	arg mem_classic_data_buffer1,contw
+	arg CLASSIC_SHUTTER_KEY_VALUE_LIST,contr
+	branch memcpy_fast	
+
+
+shutter_load_ble_gatt_form_DataRom:
+	arg BLE_GATT_LIST_SIZE,loopcnt
+	arg BLE_SHUTTER_GATT_LIST,contr
+	branch memcpy_fast
+
+
+shutter_load_bt_sdp_form_DataRom:
+	arg BT_SDP_LIST_SIZE,loopcnt
+	arg CLASSIC_SHUTTER_SDP_LIST,contr
+	branch memcpy_fast
+	
+
+///////////////////////////////gpio config////////////////////////////////////
+shutter_init_bluetooth_config:
+	call shutter_check_load_config_flag
+	nrtn user
+	fetch 1,mem_shutter_config_select_gpio1
+	call shutter_init_bluetooth_config_gpio_input
+	fetch 1,mem_shutter_config_select_gpio2
+	call shutter_init_bluetooth_config_gpio_input
+	fetch 1,mem_shutter_config_select_gpio3
+	branch shutter_init_bluetooth_config_gpio_input
+	
+shutter_init_bluetooth_config_gpio_input:
+	rtn blank
+	or pdata,0x80,temp
+	branch gpio_config_input_nowake
+	
+
+shutter_load_bluetooth_config:
+	call shutter_check_load_config_flag
+	nrtn user
+	call shutter_load_bluetooth_config_label
+	branch shutter_load_bluetooth_config_by_otp
+
+shutter_load_bluetooth_config_label:
+	arg 0,rega
+	fetch 1,mem_shutter_config_select_gpio1
+	call shutter_load_bluetooth_config_read_gpio_input
+	nsetflag blank,0,rega
+	fetch 1,mem_shutter_config_select_gpio2
+	call shutter_load_bluetooth_config_read_gpio_input
+	nsetflag blank,1,rega
+	fetch 1,mem_shutter_config_select_gpio3
+	call shutter_load_bluetooth_config_read_gpio_input
+	nsetflag blank,2,rega
+	copy rega,pdata
+	store 1,mem_shutter_config_label
+	fetch 1,mem_shutter_config_size
+	imul32 rega,pdata
+	fetcht 2,mem_shutter_config_otp_base_address		//base address
+	iadd temp,pdata
+	store 2,mem_shutter_config_otp_addr
+	rtn
+
+shutter_load_bluetooth_config_read_gpio_input:
+	rtn blank
+	or pdata,0x80,temp
+	call gpio_get_bit
+	nbranch enable_blank,true
+	branch disable_blank
+	
+
+shutter_check_load_config_flag:
+	call disable_user
+	fetch 1,mem_shutter_config_user_size
+	nrtn blank
+	fetch 1,mem_shutter_config_enable
+	rtn blank
+	branch enable_user
+
+
+shutter_load_bluetooth_config_by_otp:
+	call otp_enable_chgpump
+	fetch 2,mem_shutter_config_otp_addr
+	arg mem_shutter_config_data_temp,rega
+	fetcht 1,mem_shutter_config_size
+	call otpd_read_data
+	call otp_disable_chgpump
+shutter_load_bluetooth_config_store_name:
+	fetch 1,mem_shutter_config_data_temp
+	copy pdata,loopcnt
+	store 1,mem_le_name_len
+	call memcpy_fast
+	fetch 1,mem_shutter_config_data_temp
+	copy pdata,loopcnt
+	store 1,mem_local_name_length
+	call memcpy_fast
+	ifetch 1,contr
+	store 1,mem_shutter_key_num
+	ifetch 1,contr
+	store 1,mem_shutter_hard_soft_switch_case
+	rtn
+
+
+shutter_load_bluetooth_config_by_eeprom:
+	fetch 1,mem_shutter_bluetooth_type
+	rtnbit0 CLASSIC_SHUTTER
+	arg 3,temp
+	fetch 2,mem_shutter_config_eeprom_offset_addr
+	copy pdata,regb
+	arg mem_shutter_config_eeprom_start_flag,rega
+	call iicd_read_eep_data
+	fetcht 2,mem_shutter_config_eeprom_start_flag
+	setarg SHUTTER_EEPROM_CONFIG_CRC
+	isub temp,null
+	nrtn zero
+	fetch 1,mem_shutter_config_user_size
+	rtn blank
+	copy pdata,temp
+	fetch 2,mem_shutter_config_eeprom_offset_addr
+	add pdata,3,regb
+	arg mem_shutter_config_data_temp,rega
+	call iicd_read_eep_data
+	branch shutter_store_config
+
+shutter_load_bluetooth_config_by_user_config:
+	fetch 2,mem_shutter_config_user_otp_address
+	rtn blank
+	call otp_enable_chgpump
+	arg 1,temp
+	arg mem_shutter_config_user_size,rega
+	call otpd_read_data
+	
+	fetch 1,mem_shutter_config_user_size
+	rtn blank
+	
+	fetch 2,mem_shutter_config_user_otp_address
+	pincrease 1
+	arg mem_shutter_config_data_temp,rega
+	fetcht 1,mem_shutter_config_user_size
+	call otpd_read_data
+	call otp_disable_chgpump
+shutter_store_config:
+	call shutter_load_bluetooth_config_store_name
+shutter_load_bluetooth_config_custom:
+	ifetch 2,contr
+	rtn blank
+	copy pdata,contw
+	ifetcht 1,contr
+	copy temp,loopcnt
+	call memcpy
+	branch shutter_load_bluetooth_config_custom
+///////////////////////////////////////////////////////////////////
+
+//////////////////////////random mac address//////////////////////////////
+shutter_random_mac_addr:
+	fetch 1,mem_shutter_bluetooth_type
+	rtnbit0 CLASSIC_SHUTTER
+	fetch 2,mem_classic_shutter_random_mac_offset_addr
+	copy pdata,regb
+	arg 4,temp
+	arg mem_shutter_random_mac_data_temp,rega
+	call iicd_read_eep_data
+	fetch 1,mem_shutter_random_mac_data_temp
+	bne 1,shutter_write_random_mac_addr_to_eeprom
+shutter_write_random_mac_addr_to_eeprom:
+	setarg 1
+	store 1,mem_shutter_random_mac_data_temp
+	force 3,loopcnt
+	call generate_random_loop
+	fetch 2,mem_classic_shutter_random_mac_offset_addr
+	copy pdata,regb
+	arg 4,temp
+	arg mem_shutter_random_mac_data_temp,rega
+	call iicd_write_eep_data
+shutter_write_random_mac_addr:
+	fetch 3,mem_shutter_random_mac_data_temp + 1
+	store 3,mem_lap
+	store 3,mem_le_lap
+	rtn
+	
+/////////////////////////////////////////////////////////////////
+shutter_soft_swtich_power_on:
+	branch shutter_start_reconnect
+
+
+shutter_soft_swtich_power_off:
+	arg 0,rega
+	arg mem_shutter_power_off_led_style,regc
+	call ui_led_set_style_global
+	call shutter_disconnect_current_connection
+shutter_wait_power_off:
+	fetch 1,mem_shutter_power_off_timeout
+	store 1,mem_shutter_power_off_timer
+	rtn
+	
+
+/*************soft swtich ui config*********************/
+ui_soft_swtich_init:
+	setarg SS_STATE_POWER_UP
+	call ui_soft_swtich_init_power_on_time
+	jam UI_BUTTON_STATE_UP,mem_ui_button_last_state
+	call ui_button_init
+	call ui_button_polling
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	branch app_enter_hibernate
+
+ui_soft_swtich_init_power_on_time:
+	fetcht 2,mem_power_param_ptr
+	istore 1,temp		//init power state 
+	ifetch 1,contw		//power on time
+	store 1,mem_ui_button_timeout
+	rtn
+
+
+ui_soft_switch_botton_up:
+	fetch 2,mem_power_param_ptr
+	ifetch 1,pdata
+	rtnne SS_STATE_POWER_UP
+	branch app_enter_hibernate
+
+
+ui_soft_switch_botton_long_press:
+	fetcht 2,mem_power_param_ptr
+	ifetch 1,temp
+	beq SS_STATE_POWER_ON,ui_soft_switch_power_off
+ui_soft_switch_power_on:
+	setarg SS_STATE_POWER_ON
+	fetcht 2,mem_power_param_ptr
+	istore 1,temp		//init power state 
+	add temp,SS_POWER_OFF_TIME,contr
+	ifetch 1,contr
+	istore 1,mem_ui_button_timeout
+	ifetch 2,contr
+	branch callback_func
+
+ui_soft_switch_power_off:
+	setarg SS_STATE_POWER_OFF
+	call ui_soft_swtich_init_power_on_time
+	add temp,SS_POWER_OFF_CB,contr
+	ifetch 2,contr
+	branch app_enter_hibernate,blank		//no call back function , just enter hibernate
+	branch callback_func
+	
+/*************soft swtich ui config ending*********************/
+
+
+/*************unkown function*********************/
+shutter_byteswap:
+	store 6,mem_tmp_buffer
+	fetch 1,mem_tmp_buffer
+	store 1,mem_tmp_buffer+11
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+10
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+9
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+8
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+7
+	ifetch 1,contr
+	store 1,mem_tmp_buffer+6
+	fetch 6,mem_tmp_buffer+6
+	rtn
+
+shutter_random_addr_by_otp:
+	call load_adc_init
+	fetch 1,mem_1v_adc_io_data
+	store 1,mem_le_lap
+	fetch 1,mem_5v_adc_hvin_data
+	istore 1,contw
+	fetch 1,mem_3v_adc_vinlpm_data
+	istore 1,contw
+	fetch 3,mem_le_lap
+	store 3,mem_lap
+	rtn
+
+
+
+//iic read function
+//function name:sim_iic_read_eep_data
+//input:
+//temp:the length that simulation iic want to read eeprom data
+//rega:the memmory point that simulation iic read data store
+//regb:the eeprom address offset
+//mark_eeprom_size:select 02 or other
+//output:nc
+sim_iic_read_eep_data:
+	fetch 2,mem_eeprom_base
+	iadd regb,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	copy temp,regb
+	
+	call sim_iic_start
+	setarg 0xa0
+	call sim_iic_send_byte
+	fetch 1,mem_addr_mi
+	call sim_iic_send_byte
+	bmark1 mark_eeprom_size,sim_iic_read_eep_data_2k
+	fetch 1,mem_addr_mi + 1
+	call sim_iic_send_byte
+sim_iic_read_eep_data_2k:
+	call sim_iic_stop
+
+	call sim_iic_start
+	setarg 0xa1
+	call sim_iic_send_byte
+
+sim_iic_read_eep_data_loop:
+	call sim_iic_read_byte
+	istore 1,rega
+	increase 1,rega
+	increase -1,regb
+	nbranch sim_iic_read_eep_data_loop,zero
+	branch sim_iic_stop
+
+
+//iic write data function
+//function name:sim_iic_write_eep_data
+//input:
+//temp:the length that simulation iic want to write eeprom data
+//rega:the memmory point that simulation iic write data read
+//regb:the eeprom address
+//mark_eeprom_size:select 02 or other
+//output:nc
+sim_iic_write_eep_data:
+	byteswap regb,pdata
+	store 2,mem_addr_mi
+	copy temp,regb
+
+	call sim_iic_start
+	setarg 0xa0
+	call sim_iic_send_byte
+
+	fetch 1,mem_addr_mi
+	call sim_iic_send_byte
+	bmark1 mark_eeprom_size,sim_iic_write_eep_data_loop
+	fetch 1,mem_addr_mi + 1
+	call sim_iic_send_byte
+sim_iic_write_eep_data_loop:
+	ifetch 1,rega
+	call sim_iic_send_byte
+	increase 1,rega
+	increase -1,regb
+	nbranch sim_iic_write_eep_data_loop,zero
+	branch sim_iic_stop
+//	bmark1 mark_eeprom_size
+
+//use reg:pdata,contr,contw,loopcnt
+sim_iic_wait_ack:
+	arg 10,loopcnt
+	call sim_iic_release_sda
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+sim_iic_wait_ack_loop:
+	call sim_iic_read_sda_level
+	branch sim_iic_scl_output_low,blank	//scl = 0
+	loop sim_iic_wait_ack_loop
+	branch sim_iic_scl_output_low		//scl = 0	
+
+
+//use reg:pdata,contr,contw,rega,queue
+sim_iic_ack_slave:
+	call sim_iic_scl_output_low		//scl = 0	
+	call sim_iic_sda_output_low		//sda = 0
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	branch sim_iic_scl_output_low	//scl = 0	
+
+
+//output:pdata receive byte data
+//use reg:pdata,contr,contw,loopcnt,regc,rega
+sim_iic_read_byte:
+	arg 8,loopcnt
+	arg 0,regc
+	call sim_iic_release_sda
+sim_iic_read_byte_loop:
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	lshift regc,regc	
+	call sim_iic_read_sda_level
+	iadd regc,regc
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_low		//scl = 0	
+	loop sim_iic_read_byte_loop
+	call sim_iic_ack_slave
+	copy regc,pdata
+	rtn
+
+//input:pdata send byte data
+//use reg:pdata,contr,contw,loopcnt,regc,rega
+sim_iic_send_byte:
+	arg 8,loopcnt
+	copy pdata,regc
+	call sim_iic_scl_output_low		//scl = 0	
+sim_iic_send_byte_loop:
+	isolate1 7,regc
+	call sim_iic_sda_output_high,true	//sda = 1
+	ncall sim_iic_sda_output_low,true	//sda = 0
+	lshift regc,regc
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_scl_output_low		//scl = 0	
+	call sim_iic_delay				//delay 2.5us
+	loop sim_iic_send_byte_loop
+	branch sim_iic_wait_ack
+
+
+//use reg:pdata,contr,contw,rega
+sim_iic_start:
+	call sim_iic_sda_output_high	//sda = 1
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_sda_output_low		//sda = 0
+	call sim_iic_delay				//delay 2.5us
+	branch sim_iic_scl_output_low		//scl = 0
+
+
+//use reg:pdata,contr,contw,rega
+sim_iic_stop:
+	call sim_iic_sda_output_low		//sda = 0
+	call sim_iic_scl_output_high	//scl = 1
+	call sim_iic_delay				//delay 2.5us
+	call sim_iic_sda_output_high	//sda = 1
+	branch sim_iic_delay				//delay 2.5us
+
+
+//scl = 1
+sim_iic_scl_output_high:
+	enable user
+	fetch 1,SIM_IIC_SCL_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//scl = 0
+sim_iic_scl_output_low:
+	disable user
+	fetch 1,SIM_IIC_SCL_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//sda = 1
+sim_iic_sda_output_high:
+	enable user
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//sda = 0
+sim_iic_sda_output_low:
+	disable user
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	branch sim_iic_config_gpio
+
+//input:pdata the gpio number
+//input:user flag, if enable user,config gpio output high level; if disable user, config gpio output low level
+//use reg:pdata,contr,contw,queue,rega
+sim_iic_config_gpio:
+	and pdata,0x07,queue
+	rshift3 pdata,pdata
+	arg core_gpio_oe0,temp
+	iadd temp,temp
+	ifetch 1,temp
+	qset1 pdata
+	istore 1,temp
+	increase 4,temp
+	ifetch 1,temp
+	qsetflag user,pdata
+	istore 1,temp
+	rtn
+
+
+sim_iic_release_sda:
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	and pdata,0x07,queue
+	rshift3 pdata,pdata
+	arg core_gpio_oe0,temp
+	iadd temp,temp
+	ifetch 1,temp
+	qset0 pdata
+	istore 1,temp
+	rtn	
+
+//get sda level
+//output:if sda high level ,pdata is 1;if sda low level ,pdata is 0
+//use reg:pdata,contr,contw,queue,rega,temp
+sim_iic_read_sda_level:
+	nop 4
+	fetch 1,SIM_IIC_SDA_GPIO_NUM
+	and pdata,0x07,queue
+	rshift3 pdata,pdata
+	arg core_gpio_in,temp
+	iadd temp,temp
+	setarg 0
+	ifetcht 1,temp
+	qisolate1 temp
+	setflag true,0,pdata
+	rtn	
+
+//delay 2.5us
+sim_iic_delay:
+//	nop 1
+	rtn
+
+/**********************************/
+
+
+else
+        branch assert
+	
+endif
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/app_usb.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_usb.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/app_usb.prog	(working copy)
@@ -0,0 +1,997 @@
+
+usb_isr:
+	bpatch patch1e_6,mem_patch1e
+	hfetch 1,core_usb_status
+	isolate1 7,pdata
+	call usb_init,true
+	call usb_nak_state_judge
+	hfetch 1,core_usb_status
+	store 1,mem_usb_status
+	hfetch 1,core_usb_fifo_empty
+	store 1,mem_usb_fifo_empty
+	hstore 1,core_usb_fifo_empty
+	pinvert
+	fetcht 1,mem_usb_tx_wait
+	iand temp,pdata
+	store 1,mem_usb_tx_wait
+	jam 0xe0,core_usb_status
+	fetch 1,mem_usb_fifo_empty
+	compare 0x1,pdata,0x1
+	call usb0_fifo_empty,true
+	fetch 1,mem_usb_status	
+	compare 0x1,pdata,0x1  
+	call usb_status1,true
+	call usb_tx
+	branch usb_nak_state
+
+usb_init:
+	bpatch patch1e_7,mem_patch1e
+	call usb_init_param
+	jam 0x00,core_usb_config
+ifndef SIM
+	nop 10000
+endif
+	jam 0xc0,core_usb_trig
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_USB,pdata
+	hstore 2,core_clkoff
+	jam 0x3c,core_usb_config
+	jam 0xff,core_usb_status
+	jam 0xff,core_usb_fifo_empty
+	jam 0,core_usb_addr
+	jam DEV_DEFAULT,mem_usb0_state
+	setarg mem_usb_clear_mem_end
+	arg mem_usb_clear_mem_start,contw
+	isub contw,loopcnt
+	branch clear_mem
+
+usb_offline_check_init:
+	fetcht 1,mem_usb_offline_check_gpio
+	branch gpio_config_input
+usb_offline_state:
+	fetch 1,mem_usb_device_enumeration_endflag
+	rtn blank
+	fetcht 1,mem_usb_offline_check_gpio
+	call gpio_get_bit
+	branch usb_init,true
+	rtn
+
+
+usb_nak_state:
+	arg TIMER_NAK,queue
+	call timer_check
+	nrtn blank
+	fetch 1 ,mem_usb_wakestate_onetime_flag
+	nrtn blank
+	fetch 1,mem_usb_device_enumeration_endflag
+	ncall usb_mac_wakeup_judge,blank
+	rtn
+
+usb_mem_devicedesc_init:
+	arg mem_devicedesc,contw
+	setsect 0,0x11212
+	setsect 1,0x8000
+	setsect 2,0x0
+	setsect 3,0x10000
+	istore 9,contw
+	setsect 0,0x22412
+	setsect 1,0x8604
+	setsect 2,0x1000
+	setsect 3,0x8
+	istore 9,contw
+	setsect 0,0x1
+	istore 1,contw
+	rtn
+	
+usb_init_param:
+	jam 2,mem_usb0_state
+	setarg 0x0
+	store 1,mem_remain
+	store 2,mem_usb_zero_packet
+	pincrease 1
+	store 2,mem_usb_ones_packet
+	pincrease 1
+	store 2,mem_usb_two_packet
+	setarg HID_KBDATA_ADDR
+	store 2,mem_hidreportdesc_kb
+	setarg HID_MSDATA_ADDR
+	store 2,mem_hidreportdesc_m
+	arg mem_confdesc,contw
+	arg HID_CONFDATA_ADDR,contr
+	call memcpy64
+	fetch 1,mem_usb_tx_interval
+	ncall usb_tx_interval_config,blank
+	branch usb_mem_devicedesc_init
+	
+usb_tx_interval_config:
+	store 1,mem_confdesc+34
+	store 1,mem_confdesc+59
+	rtn
+usb_nak_state_judge:
+	hfetch 1,core_usb_status
+	bbit1 USB_STATUS_NAK,usb_nak_state_timer_init
+	rtn
+	
+usb_nak_state_timer_init:
+	call usb0_attached_state_judge
+	call timer_reinit
+	setarg TIMER_NAK_DELAY
+	arg TIMER_NAK,queue
+	branch timer_init
+	
+usb0_attached_state_judge:
+	fetch 1,mem_usb_state
+	bne USB_CONNECTED,usb_clear_halt_dispose
+	jam 0,mem_usb_wakestate_onetime_flag
+	jam 0,mem_usb_mac_wakeup_trig
+	rtn
+usb_clear_halt_dispose:
+	fetch 1,mem_usb_clear_halt
+	rtn blank
+	jam 0,mem_usb_clear_halt
+	jam USB_CONNECTED,mem_usb_state
+	jam 1,mem_usb_device_enumeration_endflag
+	rtn
+    	
+usb0_fifo_empty:
+	jam 0x1,core_usb_fifo_empty
+	branch usb0_tx
+
+usb_rx_no_data:
+	fetch 1,mem_usb_status
+	bbit1 USB_STATUS_SETUP,usb_class_type
+	rtn
+
+usb_rx_read:
+	hfetch 1,core_usb_ep
+	istore 1,contw
+	loop usb_rx_read
+	rtn
+
+usb_status1:
+	bpatch patch1f_0,mem_patch1f
+	jam 0x11,core_usb_status
+	hfetch 1,core_usb_ep_len
+	store 1,mem_usb_read_len
+	copy pdata,loopcnt
+	branch usb_rx_no_data,blank
+	arg mem_usb_setup,contw
+	call usb_rx_read
+	fetch 1,mem_usb_read_len
+	sub pdata,7,null
+	rtn positive
+usb_class_type:
+	fetch 1,mem_usb_setup_bmRequestType
+	and_into 0x80,pdata
+	beq IN_DEVICE,usb_in_device
+	beq OUT_DEVICE,usb_out_device
+	branch assert
+
+usb_in_device:
+	fetch 1,mem_usb_setup_bmRequestType
+	rshift4 pdata,pdata
+	rshift pdata,pdata
+	and_into 0x03,pdata
+	beq STANDARD_REQ,usb_in_standard_req
+	beq CLASS_REQ,usb_in_class_req
+	beq MANUFACTURER_REQ,usb_in_manufacturer_req
+	branch assert
+
+usb_out_device:
+	fetch 1,mem_usb_setup_bmRequestType
+	rshift4 pdata,pdata
+	rshift pdata,pdata
+	and_into 0x03,pdata
+	beq STANDARD_REQ,usb_out_standard_req
+	beq CLASS_REQ,usb_out_class_req	
+	beq MANUFACTURER_REQ,usb_out_manufacturer_req
+	branch assert
+
+usb_in_standard_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq GET_CONFIGURATION,usb0_request_get_configuration
+	beq GET_DESCRIPTOR,usb0_request_get_descriptor
+	beq GET_INTERFACE,usb0_request_get_interface
+	beq GET_STATUS,usb0_request_get_status
+	branch usb0_force_stall
+
+usb_in_class_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq GET_IDLE,usb_get_idle
+	beq GET_REPORT,usb_get_report
+	beq GET_PROTOCOL,usb_get_protocol_req
+	branch usb0_force_stall
+
+usb_in_manufacturer_req:
+	branch usb0_force_stall
+
+usb_out_standard_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq CLEAR_FEATURE,usb0_request_clear_feature
+	beq SET_FEATURE,usb0_request_set_feature
+	beq SET_ADDRESS,usb0_request_set_address
+	beq SET_CONFIGURATION,usb0_request_set_configuration
+	beq SET_INTERFACE,usb0_request_set_interface
+	beq SET_DESCRIPTOR,usb0_force_stall
+	branch usb0_force_stall
+
+usb_out_class_req:
+	fetch 1,mem_usb_setup_bRequest
+	beq SET_IDLE,usb_set_idle
+	beq SET_REPORT,usb_set_report
+	beq SET_PROTOCOL,usb_set_protocol_req
+	branch usb0_force_stall
+
+usb_out_manufacturer_req:
+	branch usb0_force_stall
+
+usb0_force_stall:
+	hfetch 1,core_usb_stall
+	set1 0,pdata
+	hstore 1,core_usb_stall
+	branch usb0_reply_zerolen
+	
+usb0_reply_zerolen:
+	jam 0x40,core_usb_clear
+	rtn
+
+usb0_request_get_configuration:
+	fetch 1,mem_usb_setup_bmRequestType
+	bne IN_DEVICE,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 1,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb0_state
+	beq DEV_CONFIGURED,usb0_request_get_cfg_dev_cfg
+	beq DEV_ADDRESS,usb0_request_get_cfg_dev_addr
+	branch usb0_force_stall
+//Return current config : 1
+usb0_request_get_cfg_dev_cfg:
+	arg 1,regb
+	branch usb_send_ones_packet
+//Config do not work, return default config : 0
+usb0_request_get_cfg_dev_addr:
+	arg 1,regb
+	branch usb_send_zero_packet
+
+usb0_request_get_descriptor:
+	bpatch patch1f_1,mem_patch1f
+	set0 mark_isstr,mark
+	fetch 1,mem_usb_setup_bValueH
+	beq DSC_DEVICE,dsc_device_info
+	beq DSC_CONFIG,dsc_config_info	
+	beq DSC_STRING,dsc_string_info
+	beq DSC_HID,dsc_hid_info
+	beq DSC_HID_REPORT,dsc_hid_report_info
+	branch usb0_force_stall
+
+dsc_hid_info:
+	jam 0,mem_usb_get_protocol_flag
+	fetch 1,mem_usb_setup_wIndex
+	beq 0,dsc_hid_info_interface0
+	beq 1,dsc_hid_info_interface1
+	branch usb0_force_stall
+//class_descriptor hid_descriptor--keyboard 
+dsc_hid_info_interface0:	
+	arg mem_confdesc+19,rega
+	ifetch 1,rega
+	iforce regb
+	branch usb0_respond
+//class_descriptor hid_descriptor--mouse 
+dsc_hid_info_interface1:	
+	arg mem_confdesc+44,rega
+	ifetch 1,rega
+	iforce regb
+	branch usb0_respond
+
+dsc_device_info:
+//input : pdata : data poniter 
+//input : temp: data len
+//sets the data pointer and len to correct descriptor
+	fetch 1,mem_usb_set_high_addr_flag
+	ncall usb_set_high_addr,blank
+	setarg mem_devicedesc
+	fetcht 1,mem_devicedesc
+dsc_info_set_data_len:
+	store 2,mem_dsc_info_data_pointer
+	storet 1,mem_dsc_info_len
+	fetch 1,mem_usb_setup_bLength
+	isub temp,null
+	nbranch dsc_info_set_current_data_len,positive
+dsc_info_set_initial_data_len:
+	fetch 1,mem_dsc_info_len
+dsc_info_set_data_size_completed:	
+	iforce regb
+	fetch 2,mem_dsc_info_data_pointer
+	add pdata,1,pdata
+	iforce rega
+	branch usb0_respond
+dsc_info_set_current_data_len:
+	fetch 1,mem_usb_setup_bLength
+	branch dsc_info_set_data_size_completed
+
+usb_set_high_addr:
+	hfetch 1,core_usb_addr
+	ncall usb0_set_addr,blank
+	jam 0,mem_usb_set_high_addr_flag
+	rtn
+usb0_set_addr:
+	hfetch 1,core_usb_addr
+   	set1 7,pdata
+	hstore 1,core_usb_addr
+	rtn
+
+dsc_config_info:
+	setarg mem_confdesc
+	fetcht 1,mem_confdesc
+	branch dsc_info_set_data_len
+
+dsc_string_info:
+	fetch 1,mem_usb_setup_bValue
+	sub pdata,3,null
+	nbranch usb0_force_stall,positive
+	fetch 1,mem_usb_setup_bValue
+	arg mem_string0,rega
+	beq 0,usb0_respond_length	
+	set1 mark_isstr,mark
+	arg mem_string1,rega
+	beq 1,usb0_respond_length
+	arg mem_string2,rega
+	beq 2,usb0_respond_length
+	arg mem_string3,rega
+	beq 3,usb0_respond_length
+	rtn
+
+dsc_hid_report_info:
+	fetch 2,mem_usb_setup_wIndex
+	beq 1,dsc_hid_report_info0
+	fetch 2,mem_hidreportdesc_kb
+	copy pdata,rega
+//	arg mem_hidreportdesc_kb,rega
+	branch usb0_respond_length
+dsc_hid_report_info0:
+	jam 1,mem_usb_device_enumeration_endflag
+	jam USB_GOT_REPORT_REQ,mem_usb_state
+	fetch 2,mem_hidreportdesc_m
+	copy pdata,rega
+//	arg mem_hidreportdesc_m,rega
+	branch usb0_respond_length
+
+
+usb0_request_get_interface:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall		
+	fetch 1,mem_usb_setup_bmRequestType
+	bne IN_INTERFACE,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 1,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	arg 1,regb
+	branch usb_send_zero_packet
+
+
+usb0_request_get_status:
+	fetch 1,mem_usb0_state
+	beq DEV_DEFAULT,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 2,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	beq IN_DEVICE,usb0_get_status_in_device
+	beq IN_INTERFACE,usb0_get_status_in_interface
+	beq IN_ENDPOINT,usb0_get_status_in_endpoint
+	branch usb0_force_stall
+
+usb0_get_status_in_device:
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	arg 2,regb
+	fetch 1,mem_usb_remote_wakeup
+	beq 0x01,usb_send_two_packet
+//regb:length
+usb_send_zero_packet:
+	arg mem_usb_zero_packet,rega
+	branch usb0_respond
+usb_send_ones_packet:
+	arg mem_usb_ones_packet,rega
+	branch usb0_respond
+usb_send_two_packet:
+	arg mem_usb_two_packet,rega
+	branch usb0_respond
+
+usb0_get_status_in_interface:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall
+	arg 2,regb
+	branch usb_send_zero_packet
+
+usb0_get_status_in_endpoint:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	beq IN_EP1,usb0_get_status_in_ep_in_ep1
+	beq IN_EP2,usb0_get_status_in_ep_in_ep2
+	beq IN_EP3,usb0_get_status_in_ep_in_ep3
+	and_into 0x7f,pdata
+	beq 0x00,usb0_get_status_in_ep_in_ep0
+	branch usb0_force_stall
+	
+usb0_get_status_in_ep_in_ep0:
+	fetch 1,mem_usb_ep0_stall_status
+usb0_get_status_in_ep_in_ack:
+	arg 2,regb
+	beq 1,usb_send_ones_packet
+	branch usb_send_zero_packet
+usb0_get_status_in_ep_in_ep1:
+	fetch 1,mem_usb_ep1_stall_status
+	branch usb0_get_status_in_ep_in_ack
+usb0_get_status_in_ep_in_ep2:
+	fetch 1,mem_usb_ep2_stall_status
+	branch usb0_get_status_in_ep_in_ack
+usb0_get_status_in_ep_in_ep3:
+	fetch 1,mem_usb_ep3_stall_status
+	branch usb0_get_status_in_ep_in_ack
+
+usb_get_idle:
+	jam 1,mem_usb_idle_flag
+	arg mem_usb_idle_rate,rega
+	arg 1,regb
+	branch usb0_respond
+
+usb_get_report:
+	fetch 2,mem_usb_setup_bValue
+	arg PC_GET_REPORT,temp
+	isub temp,null
+	nbranch usb0_force_stall,zero
+	set0 mark_isstr,mark
+usb_get_report_dispose:	
+	fetch 1,mem_usb0_data_ready_report
+	nbranch usb_get_report_data_success,blank
+	jam PC_GET_NONDATA,mem_usb0_get_report_data
+usb_get_report_send_data:
+	fetch 1,mem_usb_setup_bLength
+	iforce regb
+	arg mem_usb0_get_report_data,rega
+	call usb0_respond
+usb_get_report_data_release:	
+	arg mem_usb0_get_report_data,contw
+	arg 8,loopcnt
+	branch memset0
+usb_get_report_data_success:
+	jam 0,mem_usb0_data_ready_report
+	jam PC_GET_DATA,mem_usb0_get_report_data
+	branch usb_get_report_send_data
+
+usb_get_protocol_req:
+	fetch 1,mem_usb_setup_bLength
+	bne 1,usb0_force_stall
+	jam 1,mem_usb_get_protocol_flag
+	arg 1,regb //length
+	fetch 1,mem_usb_set_protocol_value
+	beq 0,usb_get_report_protocol
+	beq 1,usb_get_boot_protocol
+	branch usb_send_zero_packet
+usb_get_report_protocol:
+	branch usb_send_ones_packet
+usb_get_boot_protocol:
+	branch usb_send_zero_packet
+
+
+
+//in device
+usb0_request_clear_feature:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	beq OUT_DEVICE,usb0_request_clear_feature_out_device
+	beq OUT_INTERFACE,usb0_request_clear_feature_out_interface
+	beq OUT_ENDPOINT,usb0_request_clear_feature_out_endpoint
+	branch usb0_force_stall
+
+usb0_request_clear_feature_out_device:
+	fetch 1,mem_usb_setup_bValue
+	bne DEVICE_REMOTE_WAKEUP,usb0_force_stall
+	hfetch 1,core_usb_config
+	set0 7,pdata
+	hstore 1,core_usb_config
+	jam 0,mem_usb_remote_wakeup
+	jam 1,mem_usb_clear_remote_wakeup
+	branch usb0_reply_zerolen
+
+usb0_request_clear_feature_out_interface:
+	branch usb0_force_stall
+
+usb0_request_clear_feature_out_endpoint:
+	fetch 1,mem_usb_setup_bValue
+	bne ENDPOINT_HALT,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	beq IN_EP1,usb0_force_stall_ep1_in_off
+	beq IN_EP2,usb0_force_stall_ep2_in_off
+	beq IN_EP3,usb0_force_stall_ep3_in_off
+	and_into 0x7f,pdata
+	beq 0x00,usb0_force_stall_ep0_in_off
+	branch usb0_force_stall
+
+usb0_force_stall_ep0_in_off:
+	jam 0,mem_usb_ep0_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep1_in_off:
+	jam 0,mem_usb_ep1_stall_status
+usb0_force_stall_ep1_in_off_reply:	
+	jam 1,mem_usb_clear_halt
+	branch usb0_reply_zerolen
+usb0_force_stall_ep2_in_off:
+	jam 0,mem_usb_ep2_stall_status
+	branch usb0_force_stall_ep1_in_off_reply
+usb0_force_stall_ep3_in_off:
+	jam 0,mem_usb_ep3_stall_status
+	branch usb0_force_stall_ep1_in_off_reply
+
+
+usb0_request_set_feature:
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	beq OUT_DEVICE,usb0_request_set_feature_out_device
+	beq OUT_INTERFACE,usb0_request_set_feature_out_interface
+	beq OUT_ENDPOINT,usb0_request_set_feature_out_endpoint
+	branch usb0_force_stall
+
+usb0_request_set_feature_out_device:
+	fetch 1,mem_usb_setup_bValue
+	bne DEVICE_REMOTE_WAKEUP,usb0_force_stall
+	hfetch 1,core_usb_config
+	set1 7,pdata
+	hstore 1,core_usb_config
+	jam 1,mem_usb_remote_wakeup
+	jam USB_SLEEP,mem_usb_state
+	jam 0,mem_usb_tx_win_enable
+	call usb0_reply_zerolen
+usb_wakeup_timer_reinit:
+	call timer_reinit
+	setarg TIMER_WAKEUP_DELAY
+	arg TIMER_WAKEUP,queue
+	branch timer_init
+	
+usb0_request_set_feature_out_interface:
+	branch usb0_force_stall
+
+usb0_request_set_feature_out_endpoint:
+	fetch 1,mem_usb_setup_bValue
+	bne ENDPOINT_HALT,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	beq IN_EP1,usb0_force_stall_ep1_in_on
+	beq IN_EP2,usb0_force_stall_ep2_in_on
+	beq IN_EP3,usb0_force_stall_ep3_in_on
+	and_into 0x7f,pdata
+	beq 0x00,usb0_force_stall_ep0_in_on
+	branch usb0_force_stall
+
+usb0_force_stall_ep0_in_on:
+	jam 1,mem_usb_ep0_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep1_in_on:
+	jam 1,mem_usb_ep1_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep2_in_on:
+	jam 1,mem_usb_ep2_stall_status
+	branch usb0_reply_zerolen
+usb0_force_stall_ep3_in_on:
+	jam 1,mem_usb_ep3_stall_status
+	branch usb0_reply_zerolen
+
+
+usb0_request_set_address:
+	fetch 1,mem_usb_setup_bmRequestType
+	bne OUT_DEVICE,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	and_into 0x80,pdata
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb_usb0_state_set_dev_addr
+usb_usb0_state_set_dev_default:	
+	jam DEV_DEFAULT,mem_usb0_state
+usb0_request_set_wait_address:
+	fetch 1,mem_usb_setup_bValue
+	hstore 1,core_usb_addr
+	call usb0_reply_zerolen
+	jam 1,mem_usb_set_high_addr_flag
+	rtn
+usb_usb0_state_set_dev_addr:
+	jam DEV_ADDRESS,mem_usb0_state
+	branch usb0_request_set_wait_address
+
+
+usb0_request_set_configuration:
+	fetch 1,mem_usb0_state
+	beq DEV_DEFAULT,usb0_force_stall
+	fetch 1,mem_usb_setup_bmRequestType
+	bne OUT_DEVICE,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue+1
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	sub pdata,USB_MAX_NUM_CFG,null
+	nbranch usb0_force_stall,positive
+	fetch 1,mem_usb0_state
+	beq DEV_ADDRESS,usb0_request_set_cfg_addr_state
+	beq DEV_CONFIGURED,usb0_request_set_cfg_cfg_state
+	branch usb0_force_stall
+ // This software only supports config = 0,1
+usb0_request_set_cfg_addr_state:
+usb0_request_set_cfg_cfg_state:
+	fetch 1,mem_usb_setup_bValue	//1:Configured state   0:Address state
+	beq 0,usb0_request_set_cfg_stay_addr_state
+	jam DEV_CONFIGURED,mem_usb0_state
+	branch usb0_reply_zerolen
+usb0_request_set_cfg_stay_addr_state:
+	jam DEV_ADDRESS,mem_usb0_state
+	branch usb0_reply_zerolen
+
+
+usb0_request_set_interface:
+	fetch 1,mem_usb0_state
+	bne DEV_CONFIGURED,usb0_force_stall		
+	fetch 1,mem_usb_setup_bmRequestType
+	bne OUT_INTERFACE,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValueH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bLengthH
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_wIndex+1
+	bne 0,usb0_force_stall
+	branch usb0_reply_zerolen
+
+
+usb_set_idle:
+	jam 1,mem_usb_idle_flag
+	fetch 1,mem_usb_setup_bValueH
+	store 1,mem_usb_idle_rate
+	fetch 1,mem_usb_setup_wIndex
+	sub pdata,1,null
+	call usb_clear_remote_wakeup_set0,zero
+	fetch 1,mem_usb_state
+	bne USB_RESUME,usb0_reply_zerolen
+	jam USB_CONNECTED,mem_usb_state
+	call usb0_reply_zerolen
+	nop 30000
+	nop 30000
+	rtn
+usb_clear_remote_wakeup_set0:
+	jam 1,mem_usb_device_enumeration_endflag
+	jam 0,mem_usb_clear_remote_wakeup
+	jam USB_RESUME,mem_usb_state
+	rtn
+
+
+usb_set_report:
+	jam 1,mem_usb0_get_set_report
+	call usb_set_report_resume_judge
+	fetch 2,mem_usb_setup_bValue
+	store 2,mem_usb_setup_bValue_temp
+	fetch 1,mem_usb_setup_bLength	//max 0x40
+	iforce loopcnt
+	arg mem_usb0_setup,contr
+	arg mem_usb0_set_report_data,contw
+	call memcpy
+	branch usb0_reply_zerolen
+	
+usb_set_report_resume_judge:
+	fetch 2,mem_usb_setup_bValue
+	arg PC_SET_REPORT_bValue,temp
+	isub temp,null
+	nrtn zero
+	fetch 2,mem_usb_setup_wIndex
+	arg PC_SET_REPORT_wIndex,temp
+	isub temp,null
+	nrtn zero
+	fetch 2,mem_usb_setup_bLength
+	arg PC_SET_REPORT_bLength,temp
+	isub temp,null
+	nrtn zero
+	jam 1,mem_usb_tx_win_enable
+	rtn
+
+
+usb_set_protocol_req:
+	fetch 1,mem_usb_setup_bLength
+	bne 0,usb0_force_stall
+	fetch 1,mem_usb_setup_bValue
+	beq BOOT_PROTOCOL,usb_set_boot_protocol
+	beq REPORT_PROTOCOL,usb_set_report_protocol
+	branch usb0_force_stall
+usb_set_boot_protocol:
+	jam 0,mem_usb_set_protocol_status
+	jam 1,mem_usb_set_protocol_value
+	branch usb0_reply_zerolen
+usb_set_report_protocol:
+	jam 1,mem_usb_tx_mac_enable
+	jam 1,mem_usb_set_protocol_status
+	jam 0,mem_usb_set_protocol_value
+	branch usb0_reply_zerolen
+
+
+usb0_respond_length:
+	ifetch 1,rega
+	iforce regb
+	increase 1,rega
+//rega=*buff,reb=size	
+usb0_respond:
+	bpatch patch1f_2,mem_patch1f
+	bmark0 mark_isstr,usb0_respond0
+	add regb,1,pdata
+	lshift pdata,pdata
+	hstore 1,core_usb_dfifo0 
+	jam 3,core_usb_dfifo0
+	fetch 1,mem_usb_setup_bLength
+	increase -2,pdata
+	rshift pdata,pdata
+	store 1,mem_usb_setup_bLength
+	beq 0,usb_no_respond_data
+usb0_respond0:
+	fetch 2,mem_usb_setup_bLength
+	isub regb,null
+	branch usb0_respond1,positive
+	copy pdata,regb	
+usb0_respond1:
+	deposit rega
+	store 2,mem_bufptr
+	deposit regb
+	store 1,mem_remain
+	branch usb0_tx
+
+usb_no_respond_data:
+	arg 0,queue
+	branch usb_trig
+
+//mem_bufptr=*buff,mem_remain=size,loopcnt=i,rega=len
+usb0_tx:
+	bpatch patch1f_3,mem_patch1f
+	fetch 1,mem_remain
+	rtn blank
+	copy pdata,loopcnt
+	sub pdata,EP0_PACKET_SIZE,null
+	branch usb0_tx_info,positive
+	arg EP0_PACKET_SIZE,loopcnt	
+usb0_tx_info:
+	fetch 1,mem_remain
+	isub loopcnt,pdata
+	store 1,mem_remain//mem_remain -= len
+	fetch 2,mem_bufptr
+	copy pdata,contr	
+usb0_tx0:
+	ifetch 1,contr
+	hstore 1,core_usb_dfifo0
+	bmark0 mark_isstr,usb0_tx1
+	jam 0,core_usb_dfifo0
+usb0_tx1:
+	loop usb0_tx0
+	copy contr,pdata
+	store 2,mem_bufptr//mem_bufptr += len
+	arg 0,queue
+	call usb_trig
+	fetch 1,mem_remain
+	nrtn blank
+	fetch 1,mem_usb_state
+	rtnne USB_GOT_REPORT_REQ
+	jam USB_CONNECTED,mem_usb_state
+	rtn
+
+
+usb_tx_ep1:
+	arg core_usb_dfifo1,rega
+	arg 1,queue
+usb_tx_loop:
+	ifetch 1,contr
+	istore 1,rega
+	loop usb_tx_loop
+usb_trig:
+	setarg 0
+	qset1 pdata
+	hstore 1,core_usb_trig
+	fetcht 1,mem_usb_tx_wait
+	ior temp,pdata
+	store 1,mem_usb_tx_wait
+	rtn
+
+usb_tx_ep2:
+	arg 2,queue
+	arg core_usb_dfifo2,rega
+	branch usb_tx_loop
+
+usb_tx:
+	bpatch patch1f_4,mem_patch1f
+	fetch 1,mem_usb_tx_enable
+	rtn blank
+	fetch 1,mem_usb_tx_wait
+	nbranch usb_inwake_state_tx_dispose,blank
+	fetch 1,mem_usb_device_enumeration_endflag
+	branch usb_tx_fifo_release,blank
+	fetch 1,mem_usb_state
+	beq USB_SLEEP,usb_windows_wakeup
+	bne USB_CONNECTED,usb_tx_fifo_release
+	fetch 1,mem_usb_clear_remote_wakeup
+	nbranch usb_tx_fifo_release,blank
+	call usb_tx_data_ep1
+	branch usb_tx_data_ep2
+
+usb_tx_data_ep1:
+	fetch 1,mem_usb_tx_enable
+	rtnbit0 1
+	fetch 1,mem_usb_tx_wait
+	rtnbit1 1
+	fetch 1,mem_usb_tx_enable
+	set0 1,pdata
+	store 1,mem_usb_tx_enable
+	fetch 1,mem_usb_ep1_data
+	rtn blank
+	beq USB_EP1_KB,usb_tx_kb_normal_data
+	branch assert
+
+usb_tx_data_ep2:
+	fetch 1,mem_usb_tx_enable
+	rtnbit0 2
+	fetch 1,mem_usb_tx_wait
+	rtnbit1 2
+	fetch 1,mem_usb_tx_enable
+	set0 2,pdata
+	store 1,mem_usb_tx_enable
+	fetch 1,mem_usb_ep2_data
+	rtn blank
+	beq USB_EP2_MS,usb_tx_ms_data
+	beq USB_EP2_MULTIKEY,usb_tx_kb_multikey_data
+	branch assert
+
+usb_tx_fifo_release:
+	//clear mem_usb_mouse_data/mem_usb_kb_data/mem_usb_kb_multikey
+	arg mem_usb_mouse_data,contw
+	arg 6,loopcnt
+	branch memset0
+	
+usb_tx_ms_data:
+	fetch 1,mem_usb_idle_flag
+	fetcht 1,mem_usb_get_protocol_flag
+	iand temp,pdata
+	branch usb_tx_ms_data_normal_mode,blank
+	fetcht 1,mem_usb_set_protocol_status
+	iadd temp,pdata
+	beq MAC_BOOT_MODE,usb_tx_ms_data_mac_boot_mode
+	branch usb_tx_ms_data_normal_mode
+
+usb_tx_ms_data_mac_boot_mode:
+	jam 0,mem_usb_ep2_data
+usb_tx_ms_data_mac_boot_regroup:
+	fetch 1,mem_usb_mouse_data+1	//key
+	beq R_KEY,usb_tx_mac_boot_ms_regroup_r_or_lrkey
+	beq LR_KEY,usb_tx_mac_boot_ms_regroup_r_or_lrkey
+	fetch 1,mem_usb_mouse_data+1	//key
+	store 1,mem_usb_mouse_data
+	fetch 1,mem_usb_mouse_data+2	//x low
+	istore 1,contw
+	fetch 1,mem_usb_mouse_data+4	//y low
+	istore 1,contw
+	fetch 1,mem_usb_mouse_data+6	//wheel
+	istore 1,contw
+	arg 4,loopcnt
+	arg mem_usb_mouse_data,contr
+	branch usb_tx_ep2
+	
+usb_tx_ms_data_normal_mode:
+	jam 0,mem_usb_ep2_data
+usb_tx_mac_boot_ms_regroup_r_or_lrkey:	
+	arg 8,loopcnt		
+	arg mem_usb_mouse_data,contr
+	branch usb_tx_ep2
+
+usb_tx_kb_multikey_data:
+	jam 0,mem_usb_ep2_data
+	arg 3,loopcnt
+	arg mem_usb_kb_multikey,contr
+	branch usb_tx_ep2
+
+usb_tx_kb_normal_data:
+	jam 0,mem_usb_ep1_data
+	arg 8,loopcnt
+	arg mem_usb_kb_data,contr
+	branch usb_tx_ep1
+
+usb_inwake_state_tx_dispose:
+	fetch 1,mem_usb_state
+	beq USB_SLEEP,usb_clear_tx_wait
+	beq USB_CONNECTED, usb_mac_wakeup_trig
+	rtn
+usb_clear_tx_wait:
+	jam 0,mem_usb_tx_wait
+	rtn	
+usb_mac_wakeup_trig:
+	hfetch 1,core_usb_config
+	set1 7,pdata
+	hstore 1,core_usb_config
+	jam 1,mem_usb_mac_wakeup_trig
+	rtn
+
+usb_mac_wakeup_judge:
+	fetch 1,mem_usb_state
+	rtneq USB_SLEEP
+	beq USB_CONNECTED,usb_mac_wakeup
+	rtn
+usb_mac_wakeup:
+	fetch 1,mem_usb_mac_wakeup_trig
+	rtn blank
+	jam 1,mem_usb_wakestate_onetime_flag
+	branch usb_wakeup
+
+usb_windows_wakeup:
+	arg TIMER_WAKEUP,queue
+	call timer_check
+	nrtn blank
+usb_wakeup:
+	hfetch 1,core_usb_config
+	rtnbit0 7	//endpoint wakeup enable
+	jam 0xfc,core_usb_config
+	nop 30000
+	jam 0x3c,core_usb_config
+	rtn
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/bt.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/bt.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/bt.prog	(working copy)
@@ -0,0 +1,4175 @@
+define REVD
+//define FPGA
+define ROMCODE
+define PATCH
+define ADC
+//define RAM_VERSION
+//define CLK24M
+//define DEBUG_MALLOC
+//define DEBUG_H4LOG_ENABLE
+//define DEBUG_LIGHT_STATE
+//define E2_LOG
+//define LMP_DBG
+//define ACL_DEBUG
+//define DCDC
+define NVRAM
+define RELEASE
+define SECURE_CONNECTION
+define DEBUG_RF_INIT
+//define SPI_SIMULATE
+//define ROM_RESPIN_OPTIONAL
+
+define SIMPLE_PAIRING
+define COMPILE_RFCOMM
+define COMPILE_SHUTTER
+define COMPILE_AntiLost
+//define COMPILE_IR
+define COMPILE_KEYBOARD
+define COMPILE_MOUSE
+define COMPILE_MODULE
+//define COMPILE_AT
+//define COMPILE_PRCP
+//define COMPILE_USB
+//define COMPILE_DONGLE
+define COMPILE_LE
+define COMPILE_24G
+define COMPILE_CAR
+define COMPILE_REMOTE_CAR
+
+
+INCLUDE "bt_format"
+
+org 0x0000		// start from patch ram address start
+ifdef SIM
+include sim.prog
+else
+include patch.prog
+endif
+
+/******************************************/
+/***********   ROM Start   ***************/
+/******************************************/
+
+org 0x2000		// start from rom address start
+start:
+	call lpmstate
+
+soft_reset:
+	bpatch patch00_0,mem_patch00
+	clear_stack
+	call spi_ncs_gpio_init  // 0xff disable spi ncs gpio init
+	call initialize_radio
+	call iicd_init_12m
+	call init_param
+	call l2cap_init
+	bpatch patch00_1,mem_patch00
+	call rfcomm_init
+	call init_lmp
+	call ui_init
+	call app_init
+	ncall load_chip_option,wake
+	bpatch patch00_2,mem_patch00
+	call app_lpm_init,wake
+ifdef SIMPLE_PAIRING
+	call publickey_init
+else
+	call ssp_disable
+ifdef SECURE_CONNECTION
+	call publickey_init
+
+endif
+endif
+	call lpm_recover_clk,wake
+main_loop:	
+	bpatch patch00_3,mem_patch00
+ifdef SIMPLE_PAIRING
+	call sp_calc_sequence
+endif
+ifdef SECURE_CONNECTION
+	call sp_calc_sequence_256
+endif
+ifdef SIMPLE_PAIRING
+ifdef SECURE_CONNECTION
+	call sp_calc_sequence_256_check
+endif
+endif
+	call le_dispatch
+	bpatch patch00_4,mem_patch00
+	call idle_dispatch
+	call app_process_idle
+	call inquiry_dispatch
+	call inquiry_scan_dispatch
+	call page_scan_dispatch
+	call connection_dispatch
+	call lpm_dispatch
+	call g24_dispatch
+	branch main_loop
+
+connection_dispatch:
+	call connection_incontext
+	rtnmark0 mark_context
+	set0 mark_context,mark
+	call context_save
+	branch le_disable
+	
+connection_incontext:
+	bpatch patch00_5,mem_patch00
+	call context_search_insniff
+	nbranch connection_nosniff,zero
+	call context_load
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	bbit1 mode_le,le_conn_dispatch
+	bbit1 mode_master, master_dispatch
+	branch slave_dispatch
+connection_nosniff:
+	call context_get_next
+	copy loopcnt,null
+	rtn zero
+	call context_load
+	fetch 1,mem_state
+	bbit1 state_inpage,master_page
+	fetch 1,mem_mode
+	bbit1 mode_master, master_dispatch
+	branch slave_dispatch
+
+
+
+/**************************************/
+/**************idle dispatch*********/
+/**************************************/
+	
+idle_dispatch:
+	fetch 1,mem_hci_cmd
+	rtn blank
+	beq hci_cmd_inquiry,idle_inquiry
+	beq hci_cmd_inquiry_cancel,idle_inquiry_cancel
+	beq hci_cmd_remote_name_req,idle_remote_name_req
+	beq hci_cmd_create_conn,idle_create_conn
+	beq hci_cmd_le_create_conn,idle_le_create_conn
+	call context_search_conn_handle
+	rtn zero
+	call context_search_plap
+	rtn zero
+idle_exit:
+	jam 0,mem_hci_cmd
+	rtn
+
+idle_le_create_conn:
+	jam hci_cmd_le_create_conn,mem_cmd_le_create_conn
+	jam 0,mem_hci_cmd
+	rtn
+	
+idle_inquiry:
+	set1 mark_inquiry_on,mark
+	set0 mark_inquiry_trainb,mark
+	jam param_ninquiry,mem_ninqy_index
+	jam 31,mem_nfreq_index_inq
+	branch idle_exit
+
+idle_inquiry_cancel:
+	set0 mark_inquiry_on,mark
+	force 0,stop_watch
+	branch idle_exit
+
+idle_remote_name_req:
+	call context_search_plap
+	rtn zero
+	force LMP_NAME_REQ,temp
+	jam 5,mem_nameres_cnt
+	branch idle_start_page
+
+idle_create_conn:
+	bpatch patch00_6,mem_patch00
+idle_create_conn_device:
+	fetch 6,mem_hci_plap
+	branch idle_exit,blank
+	jam RECONNECT_HID,memui_reconnect_mode
+	//jam HS_INIT_CALL,mem_hs_mode //init as master
+	jam CONN_SM_WAIT_FEATURES_RES,mem_conn_sm
+	branch idle_create_conn_cont
+	
+idle_create_conn_cont:
+	force LMP_VERSION_REQ,temp
+idle_start_page:
+	bpatch patch00_7,mem_patch00
+	fetch 1,mem_page_mode
+	branch idle_page_mode_r0,blank
+	lshift3 pdata,pdata
+	lshift4 pdata,pdata
+	increase -1,pdata
+idle_page_mode_r0:
+	store 1,mem_npage
+	store 1,mem_npage_index
+	jam 31,mem_nfreq_index_page
+	set0 mark_page_trainb,mark
+	call context_new
+	nbranch idle_page_fail,zero
+	call get_free_amaddr
+	store 1,mem_amaddr
+	storet 1,mem_lmo_opcode2
+	fetch 6,mem_hci_plap
+	store 6,mem_plap
+	bpatch patch01_0,mem_patch01
+	call timer_reinit
+	force 0,pdata
+	compare LMP_NAME_REQ,temp,0xff
+	nsetflag true,state_init_seq,pdata
+	set1 state_inpage,pdata
+	store 1,mem_state
+	jam BT_EVT_RECONN_STARTED,mem_fifo_temp
+	call ui_ipc_send_event
+	force 0,pdata
+	setflag true,smap_name_req,pdata
+	store 1,mem_state_map
+	setarg 0
+	set1 mode_master,pdata
+	store 1,mem_mode
+	enable master
+	call context_save
+	disable master
+	force page_length_timer,queue
+	fetch 2,mem_page_to
+	call timer_init
+	branch idle_exit
+idle_page_fail:
+	bpatch patch01_1,mem_patch01
+	fetch 6,mem_hci_plap
+	store 6,mem_plap
+	compare LMP_NAME_REQ,temp,0xff
+	branch idle_name_fail,true
+	branch idle_exit
+idle_name_fail:
+	arg mem_tmp_buffer,contw
+	arg 8,loopcnt
+	call memset0
+	jam BT_EVT_RECONN_FAILED,mem_fifo_temp
+	call ui_ipc_send_event
+	branch idle_exit
+	
+
+/******************************************/
+/**************  Inquiry  *****************/
+/******************************************/
+
+inquiry_dispatch:
+	rtnmark0 mark_inquiry_on
+	force inquiry_length_timer,queue
+	call timer_check
+	nsetflag blank,mark_inquiry_on,mark
+	nbranch inquiry_start,blank
+	rtn
+	
+
+
+inquiry_start:
+	bpatch patch01_2,mem_patch01
+	fetcht 2,mem_inq_window
+	force 4,queue
+	call sniff_check_window
+	rtn user
+	call afh_clear
+	force 0,freq_mode
+inquiry_restart:
+	rtn timeout
+	set0 mark_fhs_already_good,mark
+	set0 mark_fhs_eir,mark
+inquiry_rx_restart:
+	add clkn_bt,1,bt_clk
+	isolate1 mark_inquiry_trainb,mark
+	setflag true,2,freq_mode
+	compare 0x00,bt_clk,0x02      /* see if this is even slot */
+	nbranch inquiry_receive,true
+
+inquiry_transmit:
+	bpatch patch01_3,mem_patch01
+	fetch 1,mem_inquiry_transmit
+	increase 1,pdata
+	store 1,mem_inquiry_transmit
+	call fetch_giac
+	call tx_radio_freq
+	call fetch_diac
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_native
+	call send_access_word
+	call end_of_packet
+	call inquiry_check_train
+	branch inquiry_restart
+
+inquiry_check_train:
+	bpatch patch01_4,mem_patch01
+	fetch 1,mem_nfreq_index_inq
+	increase -1,pdata
+	store 1,mem_nfreq_index_inq
+	rtn positive  /* if it's time to incremnt N */
+	jam 31,mem_nfreq_index_inq
+	fetch 1,mem_ninqy_index
+	increase -1,pdata
+	store 1,mem_ninqy_index
+	rtn positive      /* if it's time to change train */
+	setflip mark_inquiry_trainb,mark
+	jam param_ninquiry,mem_ninqy_index
+	rtn
+
+inquiry_receive:
+	bpatch patch01_5,mem_patch01
+	call fetch_giac
+	call rx_radio_freq
+	call fetch_diac
+	call start_rx_native
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_clkn_rt
+	branch inquiry_sync,sync   /* try look for id packet again if not found */
+	call inquiry_check_train
+	branch inquiry_rx_restart
+inquiry_sync:
+	bpatch patch01_6,mem_patch01
+	call save_rssi
+	call scan_mode_whiten
+	call receive_packet_whitened
+	set0 mark_rxbuf_inuse,mark
+	rtnmark0 mark_fhs_already_good
+inquiry_receive_rtn:
+	bpatch patch01_7,mem_patch01
+inquiry_receive_eir_rtn:
+	fetch 1,mem_inquiry_rcv
+	increase 1,pdata
+	store 1,mem_inquiry_rcv
+	rtn
+		
+/******************************************/
+/**************  Master Dispatch  *************/
+/******************************************/
+
+
+
+master_page:
+	bpatch patch02_0,mem_patch02
+	enable master
+	enable clknt
+	fetch 2,mem_page_interval
+	branch master_page_no_interval,blank
+	force page_interval_timer,queue
+	call timer_check               
+	nrtn blank
+master_page_no_interval:
+	bpatch patch02_1,mem_patch02
+	fetcht 2,mem_page_window
+	force 40,queue
+	call sniff_check_window
+	branch page_exit,user
+	force page_length_timer,queue
+	call timer_check
+	nbranch page_start,blank
+	fetch 1,mem_state_map
+	bbit1 smap_name_req,master_npage_timeout
+	branch master_page_timeout
+master_npage_timeout:
+	arg mem_tmp_buffer,contw
+	arg 8,loopcnt
+	call memset0
+master_page_timeout:
+	bpatch patch02_2,mem_patch02
+	jam 0,mem_state
+	call init_lmp_work
+	jam 0,memui_reconnect_mode
+	jam BT_EVT_RECONN_PAGE_TIMEOUT,mem_fifo_temp
+	call ui_ipc_send_event	
+	branch page_exit
+
+page_start:
+	bpatch patch02_3,mem_patch02
+	force 0,timeup
+	until clkn_rt,meet
+	fetch 1,mem_page_clk
+	increase -1,pdata
+	ixor clkn_bt,pdata
+	compare 0,pdata,3
+	nbranch page_start,true
+	deposit am_addr
+	store 1,mem_fhs_am_addr
+	force 0,N_tx_slot
+	force 0,freq_mode
+
+page_restart:
+	bpatch patch02_4,mem_patch02
+	branch page_exit,timeout
+	call fetch_page_bt_adr
+	arg param_rf_setup, timeup
+	until clkn_rt,meet         /* wait for the start_receiver time against native real clk  */
+page_rx_restart:
+	bpatch patch02_5,mem_patch02
+	fetch 4,mem_page_clk    /* deposit clk_estimate */
+	iforce bt_clk
+	increase 1,pdata
+	store 4,mem_page_clk
+	isolate1 mark_page_trainb,mark
+	setflag true,2,freq_mode
+	compare 0x00,bt_clk,0x02      /* see if this is even slot */
+	nbranch page_receive,true
+	fetch 1, mem_page_transmit
+	increase 1,pdata
+	store 1, mem_page_transmit
+	call tx_radio_freq
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_native
+	call send_access_word
+	call end_of_packet
+	call page_check_train
+	branch page_restart	
+page_exit:
+	bpatch patch02_6,mem_patch02
+	disable master
+	fetch 2,mem_page_interval      
+	rtn blank
+	force page_interval_timer,queue
+	branch timer_init              
+
+page_check_train:
+	bpatch patch02_7,mem_patch02
+	fetch 1,mem_nfreq_index_page
+	increase -1,pdata
+	store 1,mem_nfreq_index_page
+	rtn positive
+	jam 31,mem_nfreq_index_page
+	fetch 1,mem_npage_index
+	increase -1,pdata                 /* increment N */
+	store 1,mem_npage_index
+	rtn positive      			/* if it's time to change train */
+	setflip mark_page_trainb,mark             /* change train */
+	fetch 1,mem_npage
+	store 1,mem_npage_index
+	rtn
+	
+page_receive:
+	bpatch patch03_0,mem_patch03
+	call rx_radio_freq
+	call start_rx_native
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_clkn_rt	/* try id look for id packet again */
+	branch page_sync,sync         /* restart if didn't receive anything */
+	call page_check_train
+	branch page_rx_restart
+page_sync:
+	call end_of_packet
+	fetch 1, mem_page_rcv
+	increase 1,pdata
+	store 1, mem_page_rcv
+	force 0,stop_watch
+	fetch 4,mem_page_clk
+page_send_fhs:
+	bpatch patch03_1,mem_patch03
+	call rf_setup_time_master_slot
+	call fetch_page_bt_adr
+	increase 1,N_tx_slot
+page_send_fhs_continue:
+	and_into 0x1fd,bt_clk
+	and_into 0x1fc,freq_mode               /* master response = x00, even_train settin must remain the same */
+	call tx_radio_freq
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_native
+	call send_access_word
+	deposit clkn_bt
+	store 4,mem_clkn_bt
+	force 0,am_addr
+	force type_fhs,type
+	call scan_mode_whiten
+	call transmit_packet_whitened
+page_wait_fhs_reply:
+	bpatch patch03_2,mem_patch03
+	call rf_setup_time_slave_slot
+	or_into 0x02,bt_clk
+	and_into 0x1fc,freq_mode               /* master response sequence = x00, even train setting must be preserved */
+	call rx_radio_freq
+	call start_rx_native
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_clkn_rt	/* look for that reply */
+	call end_of_packet,sync              /* id reply is enough */
+	branch page_wait_fhs_reply_ok,sync           /* no reply then send fhs again */
+	fetch 1,mem_fhs_wait_counter
+	branch page_restart,blank
+	increase -1,pdata
+	store 1,mem_fhs_wait_counter
+	branch page_send_fhs
+	
+page_wait_fhs_reply_ok:
+	bpatch patch03_3,mem_patch03
+	fetch 1, mem_page_rcv_fhs
+	increase 1,pdata
+	store 1, mem_page_rcv_fhs
+	call prepare_newconn
+master_newconn_loop:
+	call master_newconn_once
+	branch newconn_poll_responded,sync
+	call new_conn_timeout
+	nbranch master_newconn_loop,blank
+	branch page_restart
+
+newconn_poll_responded:
+	bpatch patch03_4,mem_patch03
+	fetch 1,mem_state
+	set0 state_inpage,pdata
+	store 1,mem_state
+	call newconn_init
+	disable master
+	rtn
+	
+
+master_dispatch:
+	bpatch patch03_5,mem_patch03
+	enable master
+	enable clknt
+	call role_switch_master
+	rtn user
+	call check_bt_disabled
+	call rf_setup_time_master_slot
+	add clkn_bt,1,bt_clk
+	call fetch_self_bt_adr
+	force 0x03,freq_mode
+	call scheduler_tx_l2cap_pkt
+	call prepare_tx
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_native
+	call send_access_word
+	call transmit_packet
+master_loop:
+	bpatch patch03_6,mem_patch03
+	call parse_lmp
+	call master_conn_recv_packet
+	nbranch master_notmatch,match
+	call supervision_flush
+	call parse_l2cap
+	fetch 1,mem_master_rcvcnt
+	increase 1,pdata
+	store 1,mem_master_rcvcnt
+master_notmatch:
+	bpatch patch03_7,mem_patch03
+	call scheduler_process
+	call check_master_disconnect
+	nrtn master					/* disconnected */
+	call check_attempt
+	nbranch master_attempt,blank
+master_exit:
+	disable master
+	rtn
+
+master_attempt:
+	call prepare_tx
+	call master_conn_send_packet
+	branch master_loop
+
+
+check_master_disconnect:
+	branch check_master_match,match
+	call supervision_update
+	branch master_disconnect,positive
+check_master_match:
+	call check_disconnect_timeout
+	nbranch master_disconnect,user
+	fetch 1,mem_state_map
+	rtnbit0 smap_name_req
+	rtnbit1 smap_name_res
+	fetch 1,mem_op
+	rtnbit1 op_disconn
+	call conn_timer_expired
+	nrtn blank
+	fetch 1,mem_nameres_cnt
+	increase -1,pdata
+	store 1,mem_nameres_cnt
+	nrtn blank
+	branch lmp_disconnect
+
+master_disconnect:
+	bpatch patch04_0,mem_patch04
+	call quit_connection
+	disable master
+	fetch 1,mem_state_map
+	bbit1 smap_name_req,master_name_disconnect
+	rtn
+	
+master_name_disconnect:
+	fetch 1,mem_state_map
+	rtnbit1 smap_name_res
+master_name_error:
+	arg mem_tmp_buffer,contw
+	arg 8,loopcnt
+	branch memset0
+	
+check_disconnect_timeout:
+	bpatch patch04_1,mem_patch04
+	enable user
+	fetch 1,mem_op
+	rtnbit0 op_disconn
+	call conn_timer_expired
+	nrtn blank
+	branch disable_user
+
+conn_timer_expired:
+	fetch 1,mem_conn_timer
+	increase -1,pdata
+	store 1,mem_conn_timer
+	rtn
+
+linkkey_ready:
+	bpatch patch04_2,mem_patch04
+	fetch 1,mem_state
+	bbit1 state_linkkey,linkkey_set
+	fetch 1,mem_pairing_auth
+	branch linkkey_set,blank
+	jam DEFALT_PAIRING_AUTH,mem_pairing_auth
+	jam BT_EVT_LINKKEY_GENERATE,mem_fifo_temp
+	call ui_ipc_send_event
+	branch linkkey_set
+linkkey_set:
+	bpatch patch04_3,mem_patch04
+	call context_traverse_linkkey
+	fetch 1,mem_state
+	set1 state_linkkey,pdata
+	store 1,mem_state
+	jam 1,mem_link_key_exists
+	fetch 1,mem_conn_sm
+	bne CONN_SM_PAIRING,linkkey_set_continue
+linkkey_set_continue:
+	rtn
+
+generate_linkkey_continue:
+	jam PAIRING_AUTH,mem_pairing_auth
+clear_linkstate:
+	fetch 1,mem_state
+	set0 state_linkkey,pdata
+	store 1,mem_state
+	rtn
+	
+
+	/* rtn user if switch */
+role_switch_check:
+	bpatch patch04_4,mem_patch04
+	disable user
+	fetch 2,mem_tsniff
+	arg 0xffff,temp
+	isub temp,null
+	nrtn zero
+	fetch 4,mem_sniff_anchor
+	branch role_switch_clkn,clknt
+	isub clke_bt,pdata
+	branch role_switch_clke
+role_switch_clkn:
+	isub clkn_bt,pdata
+role_switch_clke:
+	sub pdata,4,null
+	nrtn positive
+	force 0,pdata
+	store 2,mem_tsniff
+	branch enable_user
+
+
+	/* pdata: switch instant, set tsniff=0 for special sniff */	
+role_switch_prepare:
+	copy pdata,temp
+	bpatch patch04_5,mem_patch04
+	storet 4,mem_sniff_anchor
+role_switch_prepare0:
+	jam SWITCH_FLAG_ACCEPT,mem_switch_flag
+	setarg 0xffff
+	store 2,mem_tsniff
+	jam 1,mem_sniff_attempt
+	rtn
+
+
+role_switch_master:
+	bpatch patch04_6,mem_patch04
+	call role_switch_check
+	nrtn user
+	disable user
+	jam param_newconnto,mem_newconnto_counter
+	set0 mark_fhs_already_good,mark
+roles_waitfhs_loop:
+	call rf_setup_time_master_slot
+	call master_recv_packet
+	bmark1 mark_fhs_already_good,roles_replyto_fhs
+	call new_conn_timeout
+	nbranch roles_waitfhs_loop,blank
+role_switch_fail_master:
+	bpatch patch04_7,mem_patch04
+	disable user
+	deposit clkn_bt
+	store 4,mem_next_btclk
+	enable clknt
+	enable master
+	jam BT_EVT_SWITCH_FAIL_MASTER,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+roles_replyto_fhs:
+	bpatch patch05_0,mem_patch05
+	call rf_setup_time_slave_slot
+	arg type_id,type
+	call master_send_packet
+	disable clknt
+	disable master
+	call apply_switch_clke
+	call prepare_newconn
+roles_newconns_loop:
+	bpatch patch05_1,mem_patch05
+	call slave_newconn_once
+	branch roles_newconns_responded,match
+	call new_conn_timeout
+	nbranch roles_newconns_loop,blank
+	branch role_switch_fail_master
+roles_newconns_responded:
+	fetch 1,mem_mode
+	set0 mode_master,pdata
+	store 1,mem_mode
+	call supervision_flush
+	call calc_clke_offset
+	enable user
+	jam BT_EVT_SWITCH_SUCCESS_MASTER,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+
+
+context_load:
+	bpatch patch05_2,mem_patch05
+	set1 mark_context,mark
+	deposit rega
+	store 2,mem_context_ptr
+	force context_size,loopcnt
+	arg mem_le_state,contw
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	copy rega,contr
+	bbit1 mode_le,memcpy
+	arg mem_state,contw
+	call memcpy
+	disable attempt
+	fetch 1,mem_amaddr
+	iforce am_addr
+	jam 1,mem_current_sniff_attempt
+	branch context_load_master,master
+	jam 1,mem_current_sniff_attempt
+context_load_master:
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	fetch 1,mem_sniff_attempt
+	store 1,mem_current_sniff_attempt
+	fetch 1,mem_sniff_timeout
+	store 1,mem_current_sniff_timeout
+	rtn
+	
+context_save:
+	bpatch patch05_3,mem_patch05
+	fetch 2,mem_context_ptr
+	iforce contw
+	force context_size,loopcnt
+	arg mem_le_state,contr
+	branch memcpy,le
+	arg mem_state,contr
+	branch memcpy
+
+	
+
+context_get_next:
+	arg context_num,loopcnt
+	fetcht 1,mem_current_context
+context_get_next_loop:
+	increase 1,temp
+	compare context_num,temp,0xff
+	nbranch context_get_next_cont,true
+	arg 0,temp
+context_get_next_cont:
+	storet 1,mem_current_context
+	mul32 temp,context_size,pdata
+	arg mem_context,rega
+	iadd rega,rega
+	ifetch 1,rega
+	bbit1 state_insniff,context_get_next_sniff
+	rtnbit1 state_inconn
+	rtnbit1 state_inpage
+context_get_next_sniff:
+	loop context_get_next_loop
+	rtn
+	
+context_new:
+	bpatch patch05_4,mem_patch05
+	arg context_search_empty,regc
+	call context_search
+	nrtn zero					// all occupied
+	deposit rega
+	store 2,mem_context_ptr
+	force 0,null
+	rtn
+	
+	//return zero if anyone's wack is 1.
+	//return nzero if all wack is 0
+context_check_all_wack:
+	call check_esco_amaddr
+	branch context_check_esco_wack,true
+	fetch 2,mem_context_ptr
+	add pdata,coffset_arq,contw
+	fetch 1,mem_arq
+	istore 1,contw
+	arg context_check_a_wack,regc
+	branch context_search
+
+context_check_esco_wack:
+	fetch 1,mem_arq
+	isolate1 wack,pdata
+	branch context_esco_wack,true
+	force 1,null
+	rtn
+context_esco_wack:
+	force 0,null
+	rtn
+	
+	//rtn nzero if idle(no conn)
+context_check_idle:
+	arg context_check_inconn,regc
+	branch context_search
+	
+context_traverse_linkkey:
+	fetcht 2,mem_context_ptr
+	arg context_traverse_clearkey,regc
+	branch context_search
+	
+	
+	/* return zero if conn handle is found */
+context_search_conn_handle:
+	fetcht 1,mem_hci_conn_handle
+context_search_conn_handle2:
+	arg context_search_handle,regc
+	branch context_search
+	/* return zero if plap is found */
+context_search_plap:
+	bpatch patch05_5,mem_patch05
+	fetcht 6,mem_hci_plap
+context_search_plap2:
+	arg context_search_lap,regc
+	branch context_search
+	/* return zero if sniff anchor is meet and rega pointers to context */
+context_search_insniff:
+	arg context_search_sniff,regc
+	branch context_search
+	/* return zero if sniff window is in content with current transaction */
+context_search_sniff_window:
+	arg context_search_window,regc
+context_search:
+	bpatch patch05_6,mem_patch05
+	arg mem_context,rega
+	arg context_num,loopcnt
+context_search_loop:
+	ifetch 1,rega
+	copy regc,pc
+context_search_next:
+	increase context_size,rega
+	loop context_search_loop
+	force 1,null
+	rtn
+
+context_search_empty:
+	bbit1 state_inconn,context_search_next
+	bbit1 state_inpage,context_search_next
+	force 0,null
+	rtn
+	
+context_search_lap:
+	bbit1 state_inpage,context_search_lap_cont
+	bbit0 state_inconn,context_search_next
+context_search_lap_cont:
+	add rega,coffset_plap,contr
+	ifetch 6,contr
+	isub temp,null
+	rtn zero
+	branch context_search_next
+
+context_search_handle:
+	bbit0 state_inconn,context_search_next
+	add rega,coffset_conn_handle,contr
+	ifetch 1,contr
+	isub temp,null
+	rtn zero
+	branch context_search_next
+
+context_search_sniff:
+	bbit0 state_insniff,context_search_next
+context_search_sniff_loop:
+	call context_get_anchor
+	call sign_pdata_temp
+	isub temp,pdata
+	increase 1,pdata
+	branch context_search_sniff_miss,positive
+	copy contr,regb
+	store 9,mem_temp
+	fetch 1,mem_le_sc_calc
+	nbranch context_search_sniff_sc,blank
+	fetch 9,mem_temp
+	copy regb,contr
+	increase 5,pdata  
+	branch context_search_meet1
+context_search_sniff_sc:
+	fetch 9,mem_temp
+	copy regb,contr	
+	increase 20,pdata  
+context_search_meet1:
+	nbranch context_search_next,positive
+context_search_meet:
+	copy temp,bt_clk
+	call context_next_anchor
+	force 0,null
+	rtn
+	
+	
+context_search_sniff_miss:
+	iforce regb
+	add rega,coffset_tsniff,contr
+	ifetch 2,contr
+	branch context_search_meet,blank
+	call context_next_anchor
+	branch context_search_sniff_loop
+
+sign_pdata_temp:
+	rshift16 pdata,timeup    
+	rshift8 timeup,timeup    
+	branch sign_pdata_temp_p0,zero    
+	compare 0xf,timeup,0xf    
+	nrtn true    
+	rshift16 temp,timeup    
+	rshift8 timeup,timeup    
+	nrtn zero    
+	set1 28,temp    
+	rtn
+sign_pdata_temp_p0:    
+	rshift16 temp,timeup    
+	rshift8 timeup,timeup    
+	compare 0xf,timeup,0xf    
+	nrtn true    
+	set1 28,pdata    
+	rtn
+
+context_check_inconn:
+	bbit0 state_inconn,context_search_next
+	force 0,null 				// found
+	rtn
+	
+context_check_a_wack:
+	bbit0 state_inconn,context_search_next
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	bbit1 mode_le,context_search_next
+	add rega,coffset_arq,contr
+	ifetch 1,contr
+	bbit0 wack,context_search_next
+	force 0,null 				// found
+	rtn
+
+context_get_anchor:
+	add rega,coffset_mode,contr
+	ifetcht 1,contr
+	deposit clkn_bt
+	isolate1 mode_master,temp
+	add rega,coffset_sniff_anchor,contr
+	ifetcht 4,contr
+	rtn true
+	add rega,coffset_clk_offset,contr
+	ifetch 6,contr
+	call calc_clke2
+	deposit clke_bt
+	rtn
+
+context_next_anchor:
+	add rega,coffset_tsniff,contr
+	add rega,coffset_sniff_anchor,contw
+	ifetch 2,contr
+	iadd temp,timeup			/* wrap to 28 bits */
+	deposit timeup
+	istore 4,contw
+	branch le_context_nexthop
+	
+
+context_search_window:
+	bbit0 state_insniff,context_search_next
+	call context_get_anchor
+	iadd stop_watch,pdata
+	iadd stop_watch,pdata
+	iadd queue,pdata
+	isub temp,null
+	nbranch context_search_next,positive
+	force 0,null
+	rtn
+
+context_traverse_clearkey:
+	bbit0 state_inconn,context_search_next
+	deposit temp
+	isub rega,null
+	branch context_search_next,null
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	bbit1 mode_le,context_search_next
+	ifetch 1,rega
+	set0 state_linkkey,pdata
+	istore 1,rega
+	branch context_search_next
+
+	
+master_conn_send_packet:
+	bpatch patch05_7,mem_patch05
+	call rf_setup_time_master_slot
+master_send_packet:
+	add clkn_bt,1,bt_clk          /* master start to use native clock */
+	call fetch_self_bt_adr
+	force 0x03,freq_mode          /* we are in connection!! */
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_native
+	call send_access_word
+	branch transmit_packet
+
+master_conn_recv_packet:
+	bpatch patch06_0,mem_patch06
+	call rf_setup_time_slave_slot
+master_recv_packet:
+	add clkn_bt,1,bt_clk          /* master start to use native clock */
+	call fetch_self_bt_adr
+	force 0x03,freq_mode          /* we are in connection!! */
+	call rx_radio_freq
+	call init_rx_packet_flags
+	call prep_crypt
+	call start_rx_native	/* start listening at start_rx time */
+	call start_receiver
+master_rx_conn_finish_packet:
+	call wait_access_clkn_rt	/* master use native clock */
+	nrtn sync
+	call save_rssi
+	branch receive_packet
+	
+	
+
+master_newconn_once:
+	bpatch patch06_1,mem_patch06
+	fetch 1,mem_fhs_am_addr
+	iforce am_addr			//review
+	force type_poll,type
+	call master_conn_send_packet
+	branch master_conn_recv_packet
+
+
+
+
+
+
+/******************************************/
+/************* Inquiry Scan ***************/
+/******************************************/
+
+inquiry_scan_dispatch:
+	fetch 1,mem_scan_mode
+	rtnbit0 inq_scan_mode
+	force iscan_interval_timer,queue
+	call timer_check
+	nrtn blank
+	fetcht 2,mem_iscan_window
+	force 4,queue
+	call sniff_check_window
+	rtn user
+	call inquiry_scan_start
+	force iscan_interval_timer,queue
+	fetch 2,mem_iscan_interval
+	nbranch timer_init,sync
+	random pdata				/* inquiry scan backoff */
+	iand mask3ff,pdata
+	branch timer_init
+	
+
+inquiry_scan_start:
+	bpatch patch06_2,mem_patch06
+	jam 0,mem_fhs_am_addr
+	disable clknt
+	disable attempt
+	call afh_clear
+	and clkn_bt,0x1fc,bt_clk      /* freeze the clock, set bit[1] 0, this is version 1.1 */
+	force 0x01,freq_mode     /* slave in inquiry scan, kind of same as inquriy_response, this is version 1.1 */
+	call fetch_giac
+	call rx_radio_freq
+	setflip mark_inquiry_state,mark
+	fetch 1,mem_inquiryscan_waitcnt
+	increase 1,pdata
+	store 1,mem_inquiryscan_waitcnt
+	call fetch_diac
+	call start_receiver	/* get ready for that id packet */
+	call wait_access_forever	/* until there is timeout, or matched (true) */
+	nrtn sync
+	bpatch patch06_3,mem_patch06
+	force 0,stop_watch
+	call shutdown_radio	/* must have heard */
+	fetch 1,mem_inquiryscan_rcvcnt
+	increase 1,pdata
+	store 1,mem_inquiryscan_rcvcnt
+	call fetch_giac
+	call rf_setup_time_slave_slot
+	or_into 0x002,bt_clk               /* put clk(1) to 1 */
+	force 0x01,freq_mode               /* slave in inquriy and page, response only */
+	call tx_radio_freq
+	call fetch_diac
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_external
+	deposit clkn_bt
+	store 4,mem_clkn_bt
+	call send_access_word
+	force type_fhs,type
+	force 0,am_addr                       /* put 0 into am_addr field for fhs */
+	call scan_mode_whiten
+	call transmit_packet_whitened
+	call send_eir
+	and_into 0x1fd,bt_clk                 /* put clk(1) back to 0 */
+	increase 1,N_tx_slot
+	rtn
+
+send_eir:
+	bpatch patch06_4,mem_patch06
+	fetch 1,mem_eir_enable
+	rtn blank
+	arg mem_eir,contw
+	fetch 1,mem_local_name_length
+	copy pdata,loopcnt
+	increase 1,pdata
+	istore 1,contw	
+	copy contw,temp
+	increase 1,pdata
+	store 2,mem_tx_len	
+	copy temp,contw
+	setarg 0x09  //type:name
+	istore 1,contw		
+	arg  mem_local_name,contr
+	call memcpy       //name
+
+	arg mem_all_uuid_128bits,regc
+	arg 4,loopcnt
+	call get_all_uuid
+	arg mem_all_uuid_16bits,regc
+	arg 1,loopcnt
+	call get_all_uuid
+
+	force type_dm3,type		/* DM3 */
+	jam 2,mem_tx_lch
+	setarg mem_eir
+	store 2,mem_txptr
+	call rf_setup_time_slave_slot
+	call tx_radio_freq
+	call start_transmitter	/* get ready for that id packet */
+	call start_tx_external
+	call send_access_word
+	call scan_mode_whiten
+	call transmit_packet_whitened
+	rtn
+
+
+get_all_uuid:
+	copy contw,temp
+	copy regc,contr
+	ifetch 1,contr
+	rtn blank
+lshift_loop:
+	lshift pdata,pdata
+	loop lshift_loop
+	copy pdata,rega
+	increase 2,pdata
+	copy pdata,queue
+	fetch 2,mem_tx_len
+	iadd queue,pdata
+	store 2,mem_tx_len
+	copy temp,contw
+	copy rega,pdata
+	increase 1,pdata
+	istore 1,contw
+	copy regc,contr
+	ifetch 1,contr
+	ifetch 1,contr	//fetch type
+	istore 1,contw
+	copy rega,loopcnt
+	branch memcpy  //copy uuid
+	
+/******************************************/
+/******** Slave dispatch ***********/
+/******************************************/
+
+page_scan_dispatch:	
+	fetch 1,mem_scan_mode
+	rtnbit0 page_scan_mode
+	force pscan_interval_timer,queue
+	call timer_check
+	nrtn blank
+	fetcht 2,mem_pscan_window
+	force 40,queue
+	call sniff_check_window
+	rtn user
+	force 0,am_addr
+	jam param_pagerespto,mem_fhs_wait_counter
+	set0 mark_fhs_already_good,mark
+	call page_scan_start
+	force pscan_interval_timer,queue
+	fetch 2,mem_pscan_interval
+	branch timer_init
+	
+
+page_scan_start:
+	bpatch patch06_5,mem_patch06
+	disable clknt
+	call afh_clear
+	fetch 1,mem_pagescan_waitcnt
+	increase 1,pdata
+	store 1,mem_pagescan_waitcnt
+	force 0,N_tx_slot
+	call fetch_self_bt_adr
+	add clkn_bt,1,bt_clk      /* freeze the clock on native clock until scan window is up */
+	force 0x02, freq_mode     /* slave in inquiry and page, not response */
+	bpatch patch06_6,mem_patch06
+	call rx_radio_freq
+	call start_receiver	/* wait for that id packet from master */
+	call wait_access_forever
+	nrtn sync                          /* pscan window timeout occured, back to dispatch */
+	call shutdown_radio	/* got the id packet */
+	fetch 1,mem_pagescan_rcvcnt
+	increase 1,pdata
+	store 1,mem_pagescan_rcvcnt
+	force 0,stop_watch
+	call rf_setup_time_slave_slot
+	or_into 0x002,bt_clk               /* put clk(1) to 1 */
+	force 0x01,freq_mode               /* slave in inquriy and page, response only */
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_external
+	call send_access_word
+	call end_of_packet
+	force 0,am_addr
+	arg param_rf_setup, timeup
+	until clke_rt,meet
+	or_into 0x03,clke_bt
+	and_into 0x1fd,bt_clk
+page_scan_wait_fhs_restart:
+	bpatch patch06_7,mem_patch06
+	increase 1,N_tx_slot
+	call rx_radio_freq
+	call start_receiver
+	call wait_access_mhalfbnd
+	nbranch page_scan_wait_fhs_again,sync	/* go back if didn't find access code */
+	call scan_mode_whiten
+	call receive_packet_whitened
+	bmark1 mark_fhs_already_good,page_scan_reply_to_fhs
+page_scan_wait_fhs_again:
+	bpatch patch07_0,mem_patch07
+	fetch 1,mem_fhs_wait_counter
+	rtn blank
+	increase -1,pdata
+	store 1,mem_fhs_wait_counter
+	call rf_setup_time_master_slot	/* set up expiration time */
+	branch page_scan_wait_fhs_restart
+
+
+page_scan_reply_to_fhs:
+	bpatch patch07_1,mem_patch07
+	set0 1,clke_bt
+	set1 0,clke_bt
+	fetch 1,mem_pagescan_rcvfhscnt
+	increase 1,pdata
+	store 1,mem_pagescan_rcvfhscnt
+	call rf_setup_time_slave_slot
+	or_into 0x02,bt_clk
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_external
+	call send_access_word
+	call end_of_packet
+slave_apply_clke_bt:
+	compare 0x03,clke_bt,0x03
+	branch slave_apply_clke_bt_now,true
+	until null,mhalfbnd
+	branch slave_apply_clke_bt
+slave_apply_clke_bt_now:
+	fetch 4,mem_clke_bt
+	or_into 0x03,pdata
+	icopy clke_bt
+
+start_slave_connection:
+	bpatch patch07_2,mem_patch07
+	fetch 6,extm_lap
+	store 6,mem_plap
+	call prepare_newconn
+slave_newconn_loop:
+	call slave_newconn_once
+	branch sconn_successful,match     /* we were talked to */
+	call new_conn_timeout
+	nbranch slave_newconn_loop,blank
+	rtn
+
+	
+sconn_successful:
+	bpatch patch07_3,mem_patch07
+	call newconn_init
+	call context_new
+	nrtn zero
+	jam 0,mem_mode
+	call calc_clke_offset
+	branch context_save
+
+
+
+
+slave_dispatch:
+	bpatch patch07_4,mem_patch07
+	call calc_clke
+	call role_switch_slave
+	rtn user
+slave_loop:
+	bpatch patch07_5,mem_patch07
+	call check_bt_disabled
+	call scheduler_process
+	call slave_conn_recv_packet	/* go listen for a packet */
+	nbranch slave_notmatch,match
+	call supervision_flush
+	call scheduler_tx_l2cap_pkt
+	call prepare_tx
+	call slave_conn_send_packet
+	call parse_l2cap
+	call parse_lmp
+	fetch 1,mem_slave_rcvcnt
+	increase 1,pdata
+	store 1,mem_slave_rcvcnt
+	call calc_clke_offset
+slave_notmatch:
+	bpatch patch07_6,mem_patch07
+	call lpm_set_mult
+	call supervision_update
+	branch slave_disconnect,positive
+	call check_disconnect_timeout
+	nbranch slave_disconnect,user
+	call check_attempt
+	nbranch slave_loop,blank
+	rtn
+
+slave_disconnect:
+	bpatch patch07_7,mem_patch07
+	jam 0,mem_tester_emulate
+	jam 0,mem_debug_config
+	call quit_connection
+	set0 mark_testmode,mark
+	call test_enable_white
+	fetch 1,mem_state
+	rtn
+
+
+role_switch_slave:
+	bpatch patch08_0,mem_patch08
+	call role_switch_check
+	nrtn user
+	copy am_addr,temp
+	call get_free_amaddr
+	store 1,mem_fhs_am_addr
+	copy temp,am_addr
+	jam param_newconnto,mem_newconnto_counter
+roles_sendfhs_loop:
+	bpatch patch08_1,mem_patch08
+	call rf_setup_time_master_slot
+	force type_fhs,type
+	call slave_send_access
+	deposit clkn_bt
+	store 4,mem_clkn_bt
+	call transmit_packet
+	call rf_setup_time_slave_slot
+	enable user3
+	call slave_receive_access
+	branch roles_got_fhs_reply,sync
+	call shutdown_radio
+	call new_conn_timeout
+	nbranch roles_sendfhs_loop,blank
+	rtnmark0 mark_accept_switch
+	jam LMP_SLOT_OFFSET,mem_lmo_opcode2
+	set1 mark_switch_initiated,mark
+	rtn
+roles_got_fhs_reply:
+	enable clknt
+	call prepare_newconn
+	call afh_clear
+roles_newconn_loop:
+	bpatch patch08_2,mem_patch08
+	call master_newconn_once
+	branch roles_newconn_responded,sync
+	call new_conn_timeout
+	nbranch roles_newconn_loop,blank
+	disable clknt
+	deposit clke_bt
+	store 4,mem_next_btclk
+	rtn
+roles_newconn_responded:
+	enable master
+	bmark0 mark_accept_switch,roles_newconn_nolmp
+	set0 mark_accept_switch,mark
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_HOST_CONNECTION_REQ,mem_lmi_opcode2
+	call tid_set_reply
+roles_newconn_nolmp:
+	deposit am_addr
+	store 1,mem_amaddr
+	force 0,pdata
+	store 6,mem_clk_offset
+	fetch 1,mem_mode
+	set1 mode_master,pdata
+	store 1,mem_mode
+	call supervision_flush
+	disable master
+	enable user
+	rtn
+
+	
+
+init_rx_packet_flags:
+	bpatch patch08_3,mem_patch08
+	disable match
+	set0 mark_loopback,mark
+	set0 mark_am_addr_broadcast,mark          /* initialize slave flags */
+	set0 mark_longpacket,mark
+	set0 mark_old_packet,mark
+	fetch 1,mem_arq    /* mem_arq + am_addr */
+	set0 arqnx,pdata
+	set1 flowx,pdata
+	store 1,mem_arq
+	rtn
+
+prepare_newconn:
+	bpatch patch08_4,mem_patch08
+	jam param_newconnto,mem_newconnto_counter
+	jam param_newconn_arq,mem_arq
+	fetch 2,mem_rx_window_init
+	store 2,mem_rx_window
+	deposit clkn_bt
+	store 4,mem_next_btclk
+	rtn clknt
+	deposit clke_bt
+	store 4,mem_next_btclk
+	rtn
+
+newconn_init:
+	bpatch patch08_5,mem_patch08
+	call init_lmp_reinit
+	call new_conn_handle
+	store 1,mem_conn_handle
+	setarg 0
+	store 2,mem_l2cap_rxbuff1_len
+	setarg param_supervision_to
+	store 2,mem_supervision_to
+	fetch 1,mem_state
+	set1 state_inconn,pdata
+	store 1,mem_state
+	jam 0,mem_op
+	jam 0,mem_state_map
+	jam 0,mem_lpm_current_mult
+	branch supervision_flush
+	
+
+clear_linkkey:
+	bpatch patch08_6,mem_patch08
+	force 0,pdata
+	store 8,mem_link_key
+	istore 8,contw
+	call clear_linkstate
+	branch context_traverse_linkkey
+	
+new_conn_timeout:
+	fetch 1,mem_newconnto_counter
+	increase -1,pdata
+	store 1,mem_newconnto_counter
+	rtn
+
+new_conn_handle:
+	fetch 1,mem_handle_num
+	increase 1,pdata
+	store 1,mem_handle_num
+	rtn
+
+
+quit_connection:
+	bpatch patch08_7,mem_patch08
+	fetch 1,mem_hci_cmd
+	beq hci_cmd_remote_name_req,quit_connection_name
+	fetch 1,mem_lmp_to_send
+	bne LMP_NAME_REQ,quit_connection_cont
+quit_connection_name:
+	call cmd_check_plap
+	nbranch quit_connection_cont,zero
+	call master_name_error
+	jam 0,mem_hci_cmd
+quit_connection_cont:
+	bpatch patch09_0,mem_patch09
+	call app_disconn_reason_collect_bt
+	call sniff_exit
+	jam BT_EVT_BB_DISCONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	call init_lmp_work
+	call l2cap_init_work
+ifdef SIMPLE_PAIRING
+	call sp_initialize
+endif
+	fetch 1,mem_state
+	set0 state_inconn
+	store 1,mem_state
+	jam 0,memui_reconnect_mode
+
+	fetch 1,mem_state_map
+	compare 0x0,pdata,0xc0
+	branch quit_connection_not_clear_mark,true
+	set0 mark_rxbuf_inuse,mark
+quit_connection_not_clear_mark:
+	fetch 1,mem_arq
+	bbit0 wack,quit_connection_not_clear_tx
+quit_connection_not_clear_tx:
+	fetch 1,mem_op
+	rtnbit0 op_txl2cap
+	set0 mark_tx_l2cap,mark
+	rtn
+
+slave_newconn_once:
+	bpatch patch09_1,mem_patch09
+	fetch 1,extm_newconn_am_addr
+	rtn blank     
+	icopy am_addr
+	call slave_conn_recv_packet
+	nrtn match
+	force type_null,type
+	call slave_conn_send_packet
+	deposit am_addr
+	store 1,mem_amaddr                 /* now the new am_addr is official */
+	force 0,pdata
+	store 1,extm_newconn_am_addr
+	rtn
+
+
+/******************************************/
+/********  Time consuming task  ***********/
+/******************************************/
+prepare_tx:
+	bpatch patch09_2,mem_patch09
+	fetch 1,mem_state
+	bbit0 state_insco,prepare_tx_not_sco
+	force type_hv3,type
+	bmark0 mark_esco,prepare_tx_not_esco
+	call check_esco_amaddr
+	nbranch prepare_tx_not_sco,true
+	branch prepare_tx_not_sco,attempt	
+	call set_wait_ack					/* send esco only at the first attempt */
+	setarg 2		/* esco only has 1 retry */
+	store 2,mem_retransmission_cnt
+	rtn
+prepare_tx_not_esco:
+	nrtn attempt						/* send sco only at the first attempt */
+prepare_tx_not_sco:
+	bpatch patch09_3,mem_patch09
+	call context_check_all_wack			 //abandon mark_retransmit, use context_check_all_wack instead.
+	nbranch prepare_tx_no_retransmit,zero
+	fetch 1,mem_arq
+	bbit0 wack,prepare_tx_pollnull		/* other wack, tx buffer in use, but not me */
+prepare_tx_retransmit:
+	bmark1 mark_loopback,prepare_tx_loopback
+	fetch 1,mem_debug_config
+	bbit1 debug_tx_pattern,prepare_tx_txpat
+	fetch 2,mem_retransmission_cnt
+	increase -1,pdata
+	store 2,mem_retransmission_cnt
+	branch prepare_tx_nomore_retransmit,blank
+	fetch 1,mem_last_type
+	iforce type
+	rtn
+
+prepare_tx_nomore_retransmit:
+	bpatch patch09_4,mem_patch09
+	call clear_got_tx
+prepare_tx_no_retransmit:
+	call check_esco_amaddr
+	branch prepare_tx_pollnull,true
+	call send_lmp
+	branch prepare_tx_sendlmp,user
+	fetch 1,mem_op
+	bbit1 op_txl2cap,prepare_tx_sendl2cap
+	bmark1 mark_loopback,prepare_tx_loopback
+	fetch 1,mem_debug_config
+	bbit1 debug_tx_pattern,prepare_tx_txpat
+prepare_tx_pollnull:
+	force type_poll,type				/* POLL for master */
+	rtn master
+	force type_null,type				/* default is NULL */
+	rtn
+prepare_tx_loopback:
+	bpatch patch09_5,mem_patch09
+	fetch 1,mem_rx_type
+	iforce type
+	rtnne 1
+	force type_null,type
+	rtn
+prepare_tx_txpat:
+	fetch 1,test_mode_packet_type
+	and pdata,0xf,type
+	set1 mark_loopback,mark
+	rtn
+prepare_tx_sendlmp:
+	force type_lmp,type
+	branch set_wait_ack
+prepare_tx_sendl2cap:
+	call tx_l2cap_type
+
+set_wait_ack:
+	bpatch patch09_6,mem_patch09
+	fetcht 1,mem_arq
+	set1 wack,temp
+	storet 1,mem_arq
+	deposit type
+	store 1,mem_last_type
+	setarg 0xffff
+	store 2,mem_retransmission_cnt
+	rtn
+
+tx_l2cap_type:
+	bpatch patch09_7,mem_patch09
+	fetch 1,mem_state_map
+	isolate1 smap_edr,pdata
+	fetch 2,mem_tx_len
+	branch tx_l2cap_type_edr,true
+	force type_dm1,type		/* DM1 */
+	sub pdata,17,null			
+	rtn positive
+	force type_dh1,type		/* DH1 */
+	sub pdata,27,null				
+	rtn positive
+	force type_dm3,type		/* DM3 */
+	sub pdata,121,null
+	rtn positive
+	force type_dh3,type		/* DH3 */
+	sub pdata,183,null
+	rtn positive	
+	force type_dm5,type		/* DM5 */
+	sub pdata,224,null
+	rtn positive
+	force type_dh5,type		/* DH5 */
+	rtn
+tx_l2cap_type_edr:
+	force type_dm1,type
+	sub pdata,17,null
+	rtn positive
+	force type_dh1,type		/*2-DH1*/
+	sub pdata,54,null
+	rtn positive
+	force type_dm3,type		/*2-DH3*/
+	arg 367,temp
+	isub temp,null
+	nrtn positive
+	force type_dm5,type		/*2-DH5*/
+	arg 679,temp
+	isub temp,null
+	nrtn positive
+	force type_dh5,type		/*3-DH5*/
+	rtn
+
+
+/******************************************/
+/***********  Receive Packet  *************/
+/******************************************/
+
+
+
+slave_receive_master_slot:
+	fetch 1,mem_state
+	bbit0 state_insniff,slave_receive_notsniff
+	fetch 2,mem_tsniff
+	branch slave_receive_notsniff,blank		/* role switch */
+	nbranch slave_receive_sniff,attempt
+slave_receive_notsniff:
+	call rf_setup_time_master_slot
+slave_receive_access:
+	add clke_bt,1,bt_clk
+slave_receive_sniff:
+	enable swfine
+	fetch 2,mem_rx_window
+	rshift pdata,pdata
+	arg param_pll_setup,temp
+	iadd temp,pdata
+	call ahead_window
+	call fetch_extm_bt_adr
+	force 0x03,freq_mode          /* connection hop */
+	call rx_radio_freq
+	call init_rx_packet_flags
+	call prep_crypt
+	bpatch patch0a_0,mem_patch0a
+	fetch 2,mem_rx_window
+	rshift pdata,pdata
+	call ahead_window
+	call start_receiver
+	enable decode_fec0
+	fetch 2,mem_rx_window
+	arg param_clke_cal,temp
+	iadd temp,stop_watch
+	correlate null,timeout
+	copy clke,temp
+	storet 6,mem_sync_clke
+	disable decode_fec0
+	nrtn sync
+	arg param_clke_cal,clke_rt
+	copy bt_clk,clke_bt
+	branch lpm_adjust_clk,wake
+	rtn
+	
+
+slave_conn_recv_packet:
+	bpatch patch0a_1,mem_patch0a
+	call slave_receive_master_slot
+	nbranch shutdown_radio,sync
+	call save_rssi
+	bmark0 mark_testmode,receive_packet
+	fetch 2,mem_tst_pktcnt_sync
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_sync
+receive_packet:
+	rshift bt_clk,temp
+	or temp,0x40,white_init
+receive_packet_whitened:
+	bpatch patch0a_2,mem_patch0a
+	enable enable_white
+	enable enable_hec
+	enable decode_fec1
+	parse demod,bucket,3  /* get am_addr */
+	rshift8 pwindow,pdata
+	store 1,mem_temp_am_addr
+	parse demod,bucket,4  /* get type */
+	inject bucket,7       /* align up to pwindow */
+	copy pwindow,pdata
+	store 1,mem_rx_type
+	parse demod,bucket,3  /* get arq */
+	rshift8 pwindow,pdata
+	store 1,mem_temp_arq
+	fetch 1,mem_rx_type
+	sub pdata,3,null
+	branch receive_packet_noedr,positive
+	beq 7,receive_packet_noedr		/* esco packet */
+	fetch 1,mem_state_map
+	isolate1 smap_edr,pdata
+	setflag true,PSK,radio_ctrl
+receive_packet_noedr:
+	bpatch patch0a_3,mem_patch0a
+	parse demod,bucket,8   /* cycle thru hec */
+	disable decode_fec1
+	disable enable_hec   /* at this moment, 1 seqn + 8 hec is in shift */
+	branch error_header,crc_failed  /* if hec error, nothing is valid */
+	bmark0 mark_testmode,receive_packet_amchk
+	fetch 2,mem_tst_pktcnt_hec
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_hec
+receive_packet_amchk:	
+	bpatch patch0a_4,mem_patch0a
+	fetch 1,mem_temp_am_addr
+	compare 0,pdata,0x07           /* check for broadcast */
+	setflag true,mark_am_addr_broadcast,mark   /* received a broadcast message, can fire ar_addr if during unpark_req */
+	branch am_addr_ok,true
+	icompare 0x07,am_addr
+	branch am_addr_match,true
+	bmark0 mark_esco,end_of_packet
+	fetcht 1,mem_saved_amaddr
+	icompare 0x7,temp
+	nbranch end_of_packet,true
+	fetch 1,mem_arq    /* mem_arq + am_addr */
+	set0 arqnx,pdata
+	set1 flowx,pdata
+	store 1,mem_arq
+am_addr_match:
+	enable match
+am_addr_ok:
+	bpatch patch0a_5,mem_patch0a
+	fetch 1,mem_rx_type
+	icopy type
+	bmark1 mark_am_addr_broadcast,arqn_bypass        /* arqn doesn't make sense */
+	fetcht 1,mem_temp_arq
+	fetch 1,mem_arq
+	set0 flow,pdata
+	isolate1 flow,temp
+	setflag true,flow,pdata
+	isolate1 arqn,temp
+	setflag true,arqn,pdata
+	store 1,mem_arq
+	isolate0 arqn,temp
+	branch arqn_bypass,true
+	call clear_got_tx
+arqn_bypass:
+	bpatch patch0a_6,mem_patch0a
+	arg 0,temp
+	call reserve_slot
+	and type,0xf,pdata
+	beq type_poll,process_poll
+	beq type_null,end_of_packet	/* null */
+	beq type_fhs,process_fhs
+	fetcht 1,mem_temp_arq
+	fetch 1,mem_arq
+	icompare 0x04,temp    /* bit 2 is seqn */
+	nbranch rx_type_dispatch,true   /* different then it's new */
+	bmark0 mark_am_addr_broadcast,failed_seqn         /* seqn failed, and not broadcast */
+	bbit0 bcast1,rx_type_dispatch           /* first broadcast never fail seqn */
+failed_seqn:
+	set1 mark_old_packet,mark
+rx_type_dispatch:
+	bpatch patch0a_7,mem_patch0a
+	deposit type
+	beq type_dm1, process_dm1
+	beq type_dh1, process_dh1
+	beq type_hv3, process_hev
+	beq type_3dh1, process_3dh1
+	arg 4,temp
+	call reserve_slot
+	beq type_dm3, process_dm3
+	beq type_dh3, process_dh3
+	arg 8,temp
+	call reserve_slot
+	beq type_dm5, process_dm5
+	beq type_dh5, process_dh5
+	rtn
+
+
+process_hev:
+	bpatch patch0b_0,mem_patch0b
+	enable decode_fec0
+	enable enable_crc
+	enable encrypt
+	arg mem_sco_ibuf,contw
+	force 30,loopcnt
+process_hev_loop:	
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop process_hev_loop
+	bmark0 mark_esco,end_of_packet
+	parse demod,bucket,16  /* cycle through the crc */
+	nsetflag crc_failed,mark_esco_rxok,mark
+	branch error_payload,crc_failed
+	branch ack_payload
+
+
+process_poll:
+	branch end_of_packet
+
+process_dm3:
+process_dm5:
+	set1 mark_longpacket,mark
+process_dm1:
+	enable decode_fec2
+	branch process_dmh
+	
+process_dh3:
+process_dh5:
+	set1 mark_longpacket,mark
+process_3dh1:
+	set1 PSK3M,radio_ctrl
+process_dh1:
+	enable decode_fec0
+process_dmh:
+	bpatch patch0b_1,mem_patch0b
+	bmark1 mark_rxbuf_inuse,end_of_packet			/* buffer in use, nack */
+	isolate0 PSK,radio_ctrl
+	branch process_dmh_noedr,true
+	disable enable_white
+	enable decode_fec0
+	disable decode_fec2
+	add clkn_bt,2,timeup
+	correlate clkn_bt,meet
+	nbranch error_payload,sync
+	set1 mark_longpacket,mark
+	enable enable_white
+process_dmh_noedr:
+	bpatch patch0b_2,mem_patch0b
+	enable encrypt
+	enable enable_crc
+	parse demod,bucket,3  /* parse in lch+l2cap flow */
+	rshift8 pwindow,pdata
+	store 1,mem_lch_code		/* for loopback */
+	parse demod,bucket,5  /* parse in 5 bit packetlength */
+	bmark1 mark_longpacket,process_dmh_long
+	rshift3 pwindow,loopcnt
+	rshift3 loopcnt,loopcnt
+	branch process_dmh_common
+process_dmh_long:
+	parse demod,bucket,5		/* multi slot packet length of dh3 dh5 dm3 dm5 */
+	rshift pwindow,loopcnt
+	parse demod,bucket,3  /* undefined+bit 9 of length */
+process_dmh_common:	
+	bpatch patch0b_3,mem_patch0b
+	deposit loopcnt
+	store 2,mem_len
+	branch process_dmh_data_end,blank
+	isub mask3ff,null
+	branch error_payload,positive	/* packet too large, discard */
+	bpatch patch0b_4,mem_patch0b
+	set0 mark_fhs_eir,mark
+	fetch 1,mem_lch_code
+	and_into 0x03,pdata
+	arg mem_rxbuf,contw //lmp_data or test packet
+	beq LLID_LMP,process_lmp
+	bmark1 mark_testmode,process_dmh_data
+	//non-HCI mode
+	fetch 1,mem_lch_code
+	and_into 0x03,pdata
+	beq LLID_L2CAP_START,process_dmh_data_l2cap_start_pkt
+	beq LLID_L2CAP_CONT,process_dmh_data_l2cap_continue_pkt
+	branch error_payload
+
+process_lmp:
+	fetch 2,mem_len
+	sub pdata,0x70,null		//lmp buffer size
+	nbranch error_payload,positive
+	bmark1 mark_old_packet,ack_payload
+	branch process_dmh_data
+
+	
+process_dmh_data_l2cap_start_pkt:
+	bpatch patch0b_5,mem_patch0b
+	bmark1 mark_old_packet,ack_payload
+	fetch 2,mem_len
+	arg 0x2e0,temp //l2cap buffer size
+	isub temp,null
+	branch error_payload,positive
+	fetch 1,mem_l2cap_rxbuff_inuse
+	bbit0 L2CAP_INUSE_BUFF1,process_dmh_data_into_buff1
+	bbit0 L2CAP_INUSE_BUFF2,process_dmh_data_into_buff2
+	branch end_of_packet
+process_dmh_data_into_buff1:
+	jam 1,mem_l2cap_rxbuff_new //new data in buff 1
+	fetch 2,mem_l2cap_rxbuff1_len
+	bne 0,end_of_packet			//baseband head error
+	arg mem_l2cap_rxbuff1,contw
+	branch process_dmh_data
+process_dmh_data_into_buff2:
+	jam 2,mem_l2cap_rxbuff_new //new data in buff 2
+	fetch 2,mem_l2cap_rxbuff2_len
+	bne 0,end_of_packet
+	arg mem_l2cap_rxbuff2,contw
+	branch process_dmh_data
+	
+process_dmh_data_l2cap_continue_pkt:
+	bpatch patch0b_6,mem_patch0b
+	bmark1 mark_old_packet,ack_payload
+	fetch 2,mem_len
+	arg 0x2e0,temp //l2cap buffer size
+	isub temp,null
+	branch error_payload,positive
+	fetch 1,mem_l2cap_rxbuff_new
+	beq 1,process_dmh_data_l2cap_continue_pkt1
+	beq 2,process_dmh_data_l2cap_continue_pkt2
+	branch end_of_packet
+process_dmh_data_l2cap_continue_pkt1:
+	arg mem_l2cap_rxbuff1,contw
+	fetch 2,mem_l2cap_rxbuff1_len
+	iadd contw,contw
+	branch process_dmh_data
+process_dmh_data_l2cap_continue_pkt2:
+	arg mem_l2cap_rxbuff2,contw
+	fetch 2,mem_l2cap_rxbuff2_len
+	iadd contw,contw
+process_dmh_data:	
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop process_dmh_data
+process_dmh_data_end:	
+	bpatch patch0b_7,mem_patch0b
+	parse demod,bucket,16  /* cycle through the crc */
+	branch error_payload_crc,crc_failed
+	fetch 1,mem_l2cap_flow_ctrl_flag
+	beq L2CAP_FLOW_CTRL_ENABLE,end_of_packet
+	bmark1 mark_testmode,process_dmh_cont
+	bmark1 mark_old_packet,redundant_payload
+	fetch 1,mem_lch_code
+	compare 3,pdata,3
+	branch process_dmh_cont,true
+	fetch 2,mem_len
+	branch process_dmh_cont,blank
+	bpatch patch0c_0,mem_patch0c
+	fetch 1,mem_l2cap_rxbuff_new
+	beq 1,process_l2cap_pass_crc_buff1
+	beq 2,process_l2cap_pass_crc_buff2
+	branch assert
+process_l2cap_pass_crc_buff1:
+	fetch 2,mem_l2cap_rxbuff1_len
+	fetcht 2,mem_len
+	iadd temp,pdata
+	store 2,mem_l2cap_rxbuff1_len
+	beq 0,assert
+	fetcht 2,mem_l2cap_rxbuff1// l2cap payload length
+	increase 4,temp
+	isub temp,null
+	call l2cap_buff1_inuse,zero //l2cap pkts not ended
+	branch process_dmh_cont
+process_l2cap_pass_crc_buff2:
+	fetch 2,mem_l2cap_rxbuff2_len
+	fetcht 2,mem_len
+	iadd temp,pdata
+	store 2,mem_l2cap_rxbuff2_len
+	beq 0,assert
+	fetcht 2,mem_l2cap_rxbuff2// l2cap payload length 
+	add temp,4,temp
+	isub temp,null
+	call l2cap_buff2_inuse,zero //l2cap pkts not ended
+	branch process_dmh_cont
+process_dmh_cont:
+	bpatch patch0c_1,mem_patch0c
+	fetcht 1,mem_state_map
+	fetch 1,mem_lch_code
+	compare 3,pdata,0x03
+	setflag true,smap_rxlmp,temp
+	nsetflag true,smap_rxl2cap,temp
+	storet 1,mem_state_map
+	nbranch process_dmh_cont_rxbuf_not_use,true
+	set1 mark_rxbuf_inuse,mark
+process_dmh_cont_rxbuf_not_use:
+	bmark0 mark_testmode,ack_payload
+	isolate1 smap_rxlmp,temp
+	branch ack_payload,true
+	fetch 2,mem_tst_pktcnt_crc
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_crc
+	set1 mark_loopback,mark
+	set0 smap_rxl2cap,temp
+	set0 mark_rxbuf_inuse,mark
+	storet 1,mem_state_map
+ack_payload:
+	bpatch patch0c_2,mem_patch0c
+	fetcht 1,mem_temp_arq
+	fetch 1,mem_arq
+	set1 arqnx,pdata
+	isolate1 seqn,temp            /* if accept, seqn always copies from the header */
+	setflag true,seqn,pdata
+	isolate1 mark_am_addr_broadcast,mark
+	setflag true,bcast1,pdata
+	store 1,mem_arq
+	fetch 2,mem_len
+	nbranch end_of_packet,blank
+	fetch 1,mem_state_map
+	set0 smap_rxl2cap,pdata//better to do this in l2cap_flow_ctrl_stop
+	store 1,mem_state_map
+	fetch 1,mem_lch_code
+	compare 0x01,pdata,0x07
+	//call l2cap_flow_ctrl_stop,true
+	branch end_of_packet
+	
+error_header:
+	bpatch patch0c_3,mem_patch0c
+	disable match
+	fetch 2,mem_rx_hec_err
+	increase 1,pdata
+	store 2,mem_rx_hec_err
+	branch end_of_packet
+error_payload_crc:
+	fetch 2,mem_rx_crc_err
+	increase 1,pdata
+	store 2,mem_rx_crc_err
+	call discard_pkt
+	bmark0 mark_testmode,error_payload
+	set1 mark_loopback,mark
+error_payload:
+	branch end_of_packet
+	
+discard_pkt:
+	bpatch patch0c_4,mem_patch0c
+	fetch 1,mem_lch_code
+	compare 3,pdata,0x03
+	nbranch discard_pkt_l2cap,true
+discard_pkt_lmp:	
+	fetcht 1,mem_state_map
+	set0 smap_rxlmp,temp
+	storet 1,mem_state_map
+	rtn
+discard_pkt_l2cap:
+//	isolate1 mark_testmode,mark
+//	setflag true,mark_loopback,mark
+	fetcht 1,mem_state_map
+	set0 smap_rxl2cap,temp
+	storet 1,mem_state_map
+	branch  h4_send_acl_trigger_clear
+
+redundant_payload:
+	fetch 1,mem_arq
+	set1 arqnx,pdata
+	store 1,mem_arq
+end_of_packet:
+	bpatch patch0c_5,mem_patch0c
+	disable encode_fec0
+	disable encode_fec2
+	disable decode_fec0
+	disable decode_fec2
+	disable enable_crc
+	disable encrypt
+	disable enable_white
+	branch shutdown_radio,is_rx
+	until null,tx_clear
+	nop 100          /* flush out the last bit */
+	branch shutdown_radio
+	
+process_fhs:
+	bpatch patch0c_6,mem_patch0c
+	enable enable_crc
+	enable decode_fec2
+	parse demod,bucket,72
+	isolate1 58,pdata
+	setflag true,mark_fhs_eir,mark
+	copy bt_adr,temp             /* save current address to aside */
+	ialigned bt_adr            /* send it to access gen */
+	ialigned fhs0			/* get fhs_misc */
+	pulse recalc                /* calc the lap just received from the other guy */
+	setsect 2,0xfffff             /* preset ms of shift reg as big mask */
+	setsect 3,0x0ffff             /* preset ms of shift reg as big mask */
+	nop 32                       /* 30 cycles after recalc */
+	iverify fhs_parity             /* check fhs_parity against ls 34 bits at shift reg, with msb 36 bits as mask */
+	deposit lap
+	store 3,extm_lap
+	deposit uap
+	store 1,extm_uap
+	copy temp,bt_adr             /* put the address back */
+	branch fhs_parity_ok,true     /* fhs parity failed */
+	branch error_payload
+fhs_parity_ok:
+	bpatch patch0c_7,mem_patch0c
+	parse demod,bucket,72
+	ialigned fhs1                   /* give host the information on class and fhs_misc */
+	ialigned am_addr                /* store the am_addr the master assigned us */
+	ialigned nap
+	ialigned regb                   /* store external clock in regb according to clock format */
+	force 0,pdata
+	parse demod,bucket,16  /* cycle through the crc */
+	branch error_payload,crc_failed
+	setarg 0x0ffffffc
+	iand regb,pdata
+	store 4,mem_clke_bt
+	deposit fhs_class
+	store 3,extm_class
+	deposit fhs_misc
+	store 1,extm_fhs_misc
+	deposit am_addr
+	store 1,extm_newconn_am_addr
+	deposit nap
+	store 2,extm_nap
+	deposit bt_clk
+	inject rxf,32
+	compare type_fhs,type,0x0f         /* see if this was fhs packet */
+	setflag true,mark_fhs_already_good,mark
+	branch end_of_packet
+
+clear_got_tx:
+	bpatch patch0d_0,mem_patch0d
+	fetch 1,mem_arq
+	rtnbit0 wack
+	set0 wack,pdata
+	setflip seqnx,pdata
+	store 1,mem_arq
+	fetch 1,mem_last_type
+	beq type_lmp,clear_got_txlmp
+	rtneq type_hv3
+	fetch 1,mem_op
+	rtnbit0 op_txl2cap,pdata
+	set0 op_txl2cap,pdata
+	set1 op_pkt_comp,pdata
+	store 1,mem_op
+	set0 mark_tx_l2cap,mark
+	fetch 2,mem_l2cap_tx_multi_offset
+	nrtn blank
+	fetch 1,mem_op
+	set0 op_pkt_comp,pdata
+	store 1,mem_op
+	branch l2cap_malloc_free
+
+clear_got_txlmp:
+	bpatch patch0d_1,mem_patch0d
+	fetch 1,mem_lmo_header_opcode
+	rshift pdata,pdata
+	beq LMP_START_ENCRYPTION_REQ,start_encryption
+	beq LMP_STOP_ENCRYPTION_REQ,stop_encryption
+	beq LMP_UNSNIFF_REQ, sniff_exit
+	beq LMP_ESCAPE,clear_lmp_escape
+	rtnne LMP_ACCEPTED
+	fetch 1,mem_lmo_payload
+	beq LMP_SCO_LINK_REQ,sco_link_req_by_slave
+	beq LMP_START_ENCRYPTION_REQ,clear_send_setup_complete
+	rtn
+
+clear_lmp_escape:
+	fetch 1,mem_lmo_payload
+	set1 7,pdata
+	rtn
+clear_send_setup_complete:
+	rtn master
+	fetch 1,mem_state
+	rtnbit1 state_conn_comp
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	rtn
+	
+// nokia BH-105  CALLING when reconnection
+sco_link_req_by_slave:
+	rtn master
+	fetch 1,mem_mode
+	isolate1 send_sco_when_slave,pdata
+	branch clean_mem_mode,true
+	//jam LMP_REMOVE_SCO_LINK_REQ,mem_lmo_opcode2
+	rtn
+clean_mem_mode:
+	set0 send_sco_when_slave,pdata
+	store 1,mem_mode
+	rtn
+	
+start_encryption:
+	bpatch patch0d_2,mem_patch0d
+	fetch 1,mem_state_map
+	set1 smap_encryption,pdata
+	store 1,mem_state_map
+	jam 1,core_encrypt
+	fetch 1,mem_state
+	isolate1 state_conn_comp,pdata
+	rtn
+
+stop_encryption:
+	bpatch patch0d_3,mem_patch0d
+	fetch 1,mem_state_map
+	set0 smap_encryption,pdata
+	store 1,mem_state_map
+	jam 0,core_encrypt
+	rtn
+
+
+sniff_init:
+	bpatch patch0d_4,mem_patch0d
+	copy clkn_bt,pdata
+	store 4,mem_lpm_delay_after_sniff
+	add clkn_bt,3,rega
+	branch sniff_init_master,master
+	add clke_bt,3,rega
+sniff_init_master:
+	fetcht 2,mem_tsniff
+	deposit rega
+	set0 27,pdata
+	idiv temp
+	fetch 2,mem_dsniff
+	call wait_div_end
+	remainder regc
+	isub regc,pdata
+	branch sniff_init_nowrap,positive
+	iadd temp,pdata
+sniff_init_nowrap:
+	iadd rega,pdata
+	store 4,mem_sniff_anchor
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	fetch 1,mem_state
+	set1 state_insniff,pdata
+	store 1,mem_state
+	fetch 1,mem_sniff_attempt
+	store 1,mem_current_sniff_attempt
+	setarg 0
+	store 3,mem_sniff_rcv
+	store 3,mem_sniff_lost
+	store 1,mem_sniff_unint_lost
+	jam BT_EVT_ENTER_SNIFF,mem_fifo_temp
+	call ui_ipc_send_event
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_rx_window
+	nrtn master
+	add am_addr,-1,queue
+	rtn
+
+sniff_exit:
+	bpatch patch0d_5,mem_patch0d
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	set0 state_insniff,pdata
+	store 1,mem_state
+	fetch 2,mem_rx_window_init
+	store 2,mem_rx_window
+	disable wake
+	jam BT_EVT_EXIT_SNIFF,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+check_attempt:
+	bpatch patch0d_6,mem_patch0d
+	enable attempt
+	fetch 1,mem_state
+	bbit1 state_insniff,check_attempt_sniff
+	rtnmark1 mark_testmode						/* pdata won't be blank now, try attempt */
+	fetch 1,mem_arq
+	rtnbit1 wack
+	fetch 1,mem_lmp_to_send
+	nrtn blank
+	fetch 1,mem_op
+	rtnbit1 op_txl2cap
+check_attempt_nomore:
+	force 0,pdata
+	rtn
+
+check_attempt_sniff:
+	bbit0 state_insco,check_attempt_not_sco
+	fetch 1,mem_current_sniff_attempt
+	beq 2,check_attempt_sniff_restore_sco
+	fetch 1,mem_arq
+	bbit1 wack,check_attempt_notimeout
+	bmark0 mark_esco_rxok,check_attempt_notimeout
+check_attempt_sniff_restore_sco:
+	nbranch check_attempt_notimeout,master
+	fetch 1,mem_lmp_to_send
+	nbranch check_attempt_notimeout,blank
+check_attempt_sco_master:
+	fetch 1,mem_sco_poll
+	increase -1,pdata
+	store 1,mem_sco_poll
+	nbranch check_attempt_nomore,blank
+	jam param_sco_poll,mem_sco_poll
+	branch check_attempt_notimeout
+
+
+
+
+
+	
+check_attempt_not_sco:
+	fetch 1,mem_current_sniff_attempt
+	bne 1,check_attempt_notimeout
+	fetch 1,mem_current_sniff_timeout
+	branch check_attempt_notimeout,blank
+	increase -1,pdata
+	store 1,mem_current_sniff_timeout
+	fetch 1,mem_arq
+	rtnbit1 wack						// waiting for next ack
+	nrtn match						// waiting for next poll
+check_attempt_notimeout:
+	fetch 1,mem_current_sniff_attempt
+	increase -1,pdata
+	store 1,mem_current_sniff_attempt
+	rtn
+
+
+
+
+
+
+
+
+
+	/* enable user if sniff window vialation, queue is extra overhead */
+sniff_check_window:
+	bpatch patch0d_7,mem_patch0d
+	disable swfine
+	copy temp,stop_watch
+	call context_search_sniff_window
+	disable user
+	nrtn zero
+	force 0,stop_watch
+	enable user
+	rtn
+
+	//return true if it is esco context
+check_esco_amaddr:
+	fetch 1,mem_esco_addr
+	icompare 0xff,am_addr
+	rtn
+	
+
+parse_l2cap:	
+	bpatch patch0e_0,mem_patch0e
+	set0 mark_rxbuf_inuse,mark 
+parse_l2cap_cont:
+	jam L2CAP_RX_CLEAR,mem_l2cap_rx_done
+	fetch 1,mem_l2cap_rxbuff_inuse
+	rtn blank
+	isolate1 L2CAP_INUSE_BUFF1,pdata
+	arg mem_l2cap_rxbuff1,contr
+	call process_rx_l2cap_pkt,true
+	bpatch patch0e_1,mem_patch0e
+	fetch 1,mem_l2cap_rx_done
+	beq L2CAP_RX_DONE,parse_l2cap_release_buff1
+	
+	jam L2CAP_RX_CLEAR,mem_l2cap_rx_done
+	fetch 1,mem_l2cap_rxbuff_inuse
+	rtnbit0 L2CAP_INUSE_BUFF2
+	arg mem_l2cap_rxbuff2,contr	
+	call process_rx_l2cap_pkt
+	fetch 1,mem_l2cap_rx_done
+	beq L2CAP_RX_DONE,parse_l2cap_release_buff2
+	rtn
+		
+parse_l2cap_release_buff1:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set0 L2CAP_INUSE_BUFF1,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	setarg 0
+	store 2,mem_l2cap_rxbuff1_len
+	rtn
+parse_l2cap_release_buff2:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set0 L2CAP_INUSE_BUFF2,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	setarg 0
+	store 2,mem_l2cap_rxbuff2_len
+	rtn
+
+l2cap_buff1_inuse:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set1 L2CAP_INUSE_BUFF1,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	rtn
+
+l2cap_buff2_inuse:
+	fetch 1,mem_l2cap_rxbuff_inuse
+	set1 L2CAP_INUSE_BUFF2,pdata
+	store 1,mem_l2cap_rxbuff_inuse
+	rtn
+
+/******************************************/
+/**********  Transmit Packet  *************/
+/******************************************/
+
+slave_send_access:
+	bpatch patch0e_2,mem_patch0e
+	add clke_bt,1,bt_clk          /* slave start to use native clock */
+	call fetch_extm_bt_adr
+	force 0x03,freq_mode          /* connection frequency */
+	call tx_radio_freq
+	call start_transmitter
+	call start_tx_external
+	branch send_access_word
+	
+
+slave_conn_send_packet:
+	bpatch patch0e_3,mem_patch0e
+	call rf_setup_time_slave_slot
+	deposit clke_bt
+	fetcht 4,mem_next_btclk
+	isub temp,pdata
+	rtnne 1					/* missed slave slot */
+	compare type_null,type,0x1f
+	nbranch slave_conn_send_access,true
+	fetch 1,mem_rx_type
+	rtn blank					/* null packet, do nothing */
+slave_conn_send_access:
+	call slave_send_access
+transmit_packet:
+	compare type_id,type,0x1f        /* is this id only ? */
+	branch end_of_packet,true
+	rshift bt_clk,temp
+	or temp,0x40,white_init
+transmit_packet_whitened:
+	bpatch patch0e_4,mem_patch0e
+	enable enable_white
+	enable enable_hec
+	enable encode_fec1
+	set0 mark_longpacket,mark
+	deposit am_addr
+	inject mod,3             /* am_addr, temp is disabled */
+	deposit type
+	inject mod,4
+	fetch 1,mem_arq   /* aka mem_arq */
+	inject bucket,4  /* align up to flowx, arqnx, seqnx */
+	inject mod,3
+	enable enable_parity
+	inject mod,8   /* transmit parity */
+	disable encode_fec1
+	disable enable_parity
+	disable enable_hec
+	set0 PSK3M,radio_ctrl
+	arg 0,temp
+	call reserve_slot
+	bpatch patch0e_5,mem_patch0e
+	and type,0x1f,pdata
+	beq type_lmp, transmit_lmp
+	beq type_null, end_of_packet
+	beq type_poll, end_of_packet
+	beq type_fhs, transmit_fhs  /* master mode fhs need got_tx and ack */
+	beq type_dm1, transmit_dm1
+	beq type_dh1, transmit_dh1
+	beq type_hv3, transmit_hev
+	beq type_3dh1, transmit_3dh1
+	arg 4,temp
+	call reserve_slot
+	beq type_dm3, transmit_dm3
+	beq type_dh3, transmit_dh3
+	arg 8,temp
+	call reserve_slot
+	beq type_dh5, transmit_dh5
+	branch transmit_dm5	/* must be 14, dm5 */
+
+
+transmit_hev:
+	bpatch patch0e_6,mem_patch0e
+	enable encode_fec0
+	enable enable_crc
+	enable encrypt
+	force 30,loopcnt
+	arg mem_sco_obuf,contr
+transmit_ev_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop transmit_ev_loop
+	bmark1 mark_esco,transmit_end
+	branch end_of_packet
+	
+transmit_fhs:
+	bpatch patch0e_7,mem_patch0e
+	fetch 1,mem_fhs_am_addr            /* this is the am_addr to assign to slave */
+	icopy am_addr
+	fetch 1,mem_fhs_misc
+	icopy fhs_misc    /* [7:6]SR [5:4]SP [3:1]PS [0]undef  */
+	fetch 3,mem_class   /* store away class */
+	icopy fhs_class
+	fetch 2,mem_nap
+	icopy nap
+	enable enable_crc
+	enable encode_fec2
+	copy bt_adr,rega
+	call fetch_self_bt_adr
+	pulse recalc
+	nop 32                    /* 30 cycles after recalc for sync word generation */
+	copy bt_clk,timeup
+	fetch 4,mem_clkn_bt
+	icopy bt_clk
+	preload fhs0
+	set1 58,pdata		/* eir */
+	inject mod,72
+	preload fhs1
+	inject mod,72
+	copy timeup,bt_clk
+	copy rega,bt_adr
+	enable enable_parity
+	inject mod,16   /* generate CRC */
+	disable enable_parity
+	branch end_of_packet
+
+transmit_lmp:    /* expect the payload ready as in bb spec */
+	bpatch patch0f_0,mem_patch0f
+	enable encrypt
+	enable enable_crc
+	enable encode_fec2
+	fetch 1,mem_lmo_header_length   /* this is the payload header */
+	and pdata,0x1f8,temp       /* temp is number of bits, check payload header format */
+	arg mem_lmo_header_length,contr
+	increase 8,temp   /* temp is in bits */
+transmit_lmp_loop:
+	add temp,-72,regc   /* regc is remainder */
+	nbranch transmit_lmp_finish,positive
+	ifetch 9,contr
+	inject mod,72
+	copy regc,temp
+	branch transmit_lmp_loop
+transmit_lmp_finish:
+	ifetch 9,contr
+	iinject mod,temp
+	branch transmit_end
+
+transmit_dm1:
+	enable encode_fec2
+	branch transmit_dmh
+transmit_dm3:
+transmit_dm5:
+	enable encode_fec2
+	set1 mark_longpacket,mark
+	branch transmit_dmh
+
+transmit_3dh1:
+	set1 PSK3M,radio_ctrl
+transmit_dh1:
+	enable encode_fec0
+	branch transmit_dmh
+	
+transmit_dh3:
+transmit_dh5:
+	set1 PSK3M,radio_ctrl
+	enable encode_fec0
+	set1 mark_longpacket,mark
+
+transmit_dmh:
+	bpatch patch0f_1,mem_patch0f
+	fetch 1,mem_state_map
+	bbit0 smap_edr,transmit_noedr
+	sub type,3,null
+	branch transmit_noedr,positive
+	disable encrypt
+	disable encode_fec2
+	enable encode_fec0
+	disable enable_white
+	set1 PSK,radio_ctrl
+	isolate1 PSK3M,radio_ctrl
+	branch transmit_edr3m,true
+	setarg 0xabeee
+	inject mod,20
+	branch transmit_edr_sync_end
+transmit_edr3m:
+	setarg 0x5faeba
+	inject mod,24
+	setarg 0x12
+	inject mod,6
+transmit_edr_sync_end:	
+	enable enable_white
+	set1 mark_longpacket,mark
+transmit_noedr:
+	enable encrypt
+	enable enable_crc
+	bmark1 mark_loopback,transmit_loopback
+	fetch 1,mem_tx_lch
+	inject mod,3
+	fetch 2,mem_tx_len
+	iforce loopcnt
+	bmark1 mark_longpacket,transmit_long
+	inject mod,5
+	branch transmit_stuff
+transmit_long:	
+	inject mod,13
+transmit_stuff:
+	deposit loopcnt
+	branch transmit_end,blank
+	fetch 2,mem_txptr
+	iforce contr
+transmit_stuff_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop transmit_stuff_loop
+//	branch transmit_end
+
+transmit_end:
+	enable enable_parity
+	inject mod,16
+	disable enable_parity
+	call set_wait_ack
+	fetch 1,mem_state_map
+	bbit0 smap_edr,end_of_packet
+	force 0,pdata
+	inject mod,6				/* edr trailer */
+	branch end_of_packet
+
+
+transmit_loopback:
+	bpatch patch0f_2,mem_patch0f
+	bmark1 mark_longpacket,transmit_loopback_long
+transmit_loopback_short:
+	fetch 1,mem_lch_code
+	inject mod,3						/* LLID and FLOW */
+	fetch 1,mem_len	/* take packet length */
+	iforce regc
+	inject mod,5
+	branch transmit_loopback_cont
+transmit_loopback_long:
+	fetch 1,mem_lch_code
+	inject mod,3						/* LLID and FLOW */
+	fetch 2,mem_len	/* take packet length */
+	iforce regc
+	inject mod,13
+transmit_loopback_cont:
+	arg mem_rxbuf,contr
+transmit_loopback_loop:	
+	copy regc,null
+	branch transmit_loopback_end,zero
+	ifetch 1,contr
+	inject mod,8
+	increase -1,regc
+	branch transmit_loopback_loop
+transmit_loopback_end:
+	fetch 2,mem_tst_pktcnt_dmh
+	increase 1,pdata
+	store 2,mem_tst_pktcnt_dmh
+	branch transmit_end
+	
+
+apply_switch_clke:
+	fetch 4,mem_clke_bt
+	add pdata,7,rega
+	fetch 2,mem_slot_offset
+	nbranch apply_switch_nozero,blank
+	increase -3,rega
+	branch apply_switch_wait_loop
+apply_switch_nozero:
+	mul32 pdata,12,pdata
+	hfetcht 2,core_halfslot
+	increase 1,temp
+apply_switch_loop:
+	isub temp,pdata
+	nbranch apply_switch_bt,positive
+	increase -1,rega
+	branch apply_switch_loop
+apply_switch_bt:
+	sub pdata,0,pdata
+apply_switch_wait_loop:
+	until null,oneslot
+	compare 0,clkn_bt,3
+	nbranch apply_switch_wait_loop,true
+	iforce clke_rt
+	copy rega,clke_bt
+	iforce clke_rt
+	rtn
+	
+
+calc_slot_offset:
+	bpatch patch0f_3,mem_patch0f
+	until null,halfslot
+	deposit clke
+	iforce contr
+	rshift16,pdata,pdata
+	isub clkn_bt,loopcnt
+	and_into 3,loopcnt			/* bt portion */
+	nbranch calc_bt_portion,zero
+	force 0,pdata
+	branch calc_skip_bt
+calc_bt_portion:
+	arg 3750,temp
+	force 0,pdata
+calc_slot_offset_loop:
+	iadd temp,pdata
+	loop calc_slot_offset_loop
+calc_skip_bt:
+	iadd contr,pdata			/* add rt portion */
+	div pdata,12
+	call wait_div_end
+	quotient pdata
+	store 2,mem_slot_offset
+	rtn
+
+calc_clke_offset:
+	bpatch patch0f_4,mem_patch0f
+	deposit clke
+	copy clkn,temp
+	isub temp,null
+	nsetflag positive,44,pdata
+	isub temp,temp
+	setarg 3750
+	isolate0 15,temp
+	branch calc_clke_pos,true
+	setarg -61786
+	iadd temp,temp
+calc_clke_pos:
+	storet 6,mem_le_clk_offset
+	rtn le
+	storet 6,mem_clk_offset
+	rtn
+
+calc_clke:
+	disable clknt
+	fetch 6,mem_le_clk_offset
+	branch calc_clke2,le
+	fetch 6,mem_clk_offset
+calc_clke2:
+	iadd clkn,alarm
+	increase 10,alarm
+	setarg 3750
+	isub alarm,pdata
+	isolate0 15,pdata
+	branch calc_clke_pos_adj,true
+	setarg 0xf15a
+	iadd alarm,alarm
+calc_clke_pos2:
+	copy alarm,clke
+	rtn
+calc_clke_pos_adj:		/* add 2 clock */
+	force 0,null
+	branch calc_clke_pos2
+	
+/******************************************/
+/********* RF related functions ***********/
+/******************************************/
+
+
+calc_radio_freq:
+	bpatch patch0f_5,mem_patch0f
+	call set_sync_on
+	copy bt_clk,pdata
+	and_into 0x180,pdata
+	compare 3,freq_mode,0x07
+	nbranch freq_not_connection,true    /* don't do the hack if not in connection */
+	rshift3 pdata,pdata
+	iadd freq_index,pdata
+	branch do_hop_mod_now
+freq_not_connection:	
+	copy freq_index,pdata
+do_hop_mod_now:
+	div pdata,79
+	pulse recalc         /* now is good time to recalc id */
+	call wait_div_end
+	remainder rega
+	add rega,-40,temp
+	branch odd_half,positive
+	lshift rega,temp
+	branch freq_result
+odd_half:
+	lshift temp,temp
+	increase 1,temp
+freq_result:	
+	bpatch patch0f_6,mem_patch0f
+	fetch 1,mem_mode
+	bbit0 afh_change,afh_process_con
+afh_process_0:	
+	fetch 4, mem_afh_instant   
+	isub bt_clk, null
+	branch afh_process_con,positive
+	call afh_clear
+	fetch 1,mem_afh_new_mod
+	rtn blank
+	fetch 1,mem_mode
+	set1 afh_enable,pdata
+	store 1,mem_mode
+	fetch 5,mem_afh_map_new
+	store 5,mem_afh_map_lo
+	ifetch 5,contr
+	store 5,mem_afh_map_hi
+	call afh_process_freq_map
+afh_process_con:
+	fetch 1,mem_mode
+	rtnbit0 afh_enable
+	isolate1 1,bt_clk
+	branch afh_same_channel,true	/* at odd slot, use the same as last even */
+	rshift3 temp,rega
+	and temp,7,queue
+	setarg mem_afh_map_lo  
+	iadd rega, rega
+	ifetch 1, rega
+	qisolate0 pdata
+	branch afh_process_1,true		/* not in map, do afh */
+	deposit temp
+	branch afh_process_end
+afh_process_1:
+	fetch 1, mem_afh_used
+	iforce regb                     
+	deposit bt_clk
+	and_into 0x180, pdata
+	rshift3 pdata,pdata
+	iadd freq_index,pdata
+	idiv regb
+	setarg mem_afh_map     
+	call wait_div_end
+	remainder rega
+	iadd rega,contr
+	ifetch 1,contr
+afh_process_end:	
+	store 1,mem_afh_index
+	iforce temp  
+  	rtn
+
+afh_same_channel:
+	fetch 1, mem_afh_index           /* last afh index  */
+	iforce temp
+	rtn
+
+afh_clear:
+	fetch 1,mem_mode
+	set0 afh_enable,pdata
+	set0 afh_change,pdata
+	store 1,mem_mode
+	rtn
+/*
+fixed_frequency:
+	fetcht 1,mem_fixed_freq
+	rtn
+*/
+afh_process_freq_map:
+	bpatch patch0f_7,mem_patch0f
+	arg mem_afh_map,contw
+	force 10,loopcnt
+	call memset0
+	arg mem_afh_map,contw
+	force 0,regC
+	force 2,queue
+process_freq_3:	
+	fetch 5,mem_afh_map_lo
+	iforce temp
+	compare 2,queue,0xff
+	branch process_freq_1,true
+	rshift temp,temp
+process_freq_1:	
+	isolate0 0,temp
+	branch process_freq_0,true
+	deposit regC
+	istore 1,contw
+process_freq_0:
+	rshift2 temp,temp
+	increase 2,regC
+	compare 40,regC,0xfe
+	nbranch process_freq_2,true
+	fetch 5,mem_afh_map_hi
+	iforce temp
+	compare 2,queue,0xff
+	branch process_freq_2,true
+	rshift temp,temp
+process_freq_2:	
+	sub regC,78,null
+	branch process_freq_1,positive
+	force 1,regC
+	increase -1,queue
+	nbranch process_freq_3,zero
+	arg mem_afh_map,rega
+	deposit contw
+	isub rega,pdata
+	store 1,mem_afh_used
+	rtn
+
+rx_radio_freq:
+	bpatch patch10_0,mem_patch10
+	call calc_radio_freq
+	fetch 1,mem_debug_config
+	bbit0 debug_rx_fixed_freq,rx_radio_freq_now
+	fetcht 1,mem_rx_fixed_freq
+rx_radio_freq_now:
+	branch set_freq_rx
+	
+
+tx_radio_freq:
+	bpatch patch10_1,mem_patch10
+	call calc_radio_freq
+	fetch 1,mem_debug_config
+	bbit0 debug_tx_fixed_freq,tx_radio_freq_now
+	fetcht 1,mem_tx_fixed_freq
+tx_radio_freq_now:
+	branch set_freq_tx
+	
+
+fetch_giac:
+	force 0,uap
+	fetch 3,mem_glap
+	iforce lap
+	rtn
+
+fetch_page_bt_adr:
+	bpatch patch10_2,mem_patch10
+	fetch 1,mem_hci_puap
+	icopy uap
+	fetch 3,mem_hci_plap
+	icopy lap
+	rtn
+
+fetch_self_bt_adr:
+	bpatch patch10_3,mem_patch10
+	fetch 2,mem_nap
+	icopy nap
+	fetch 1,mem_uap
+	icopy uap
+	fetch 3,mem_lap
+	icopy lap                 /* copy self_adr,bt_adr */      /* use own address */
+	rtn
+
+fetch_extm_bt_adr:
+	bpatch patch10_4,mem_patch10
+	fetch 2,mem_pnap
+	icopy nap
+	fetch 1,mem_puap
+	icopy uap
+	fetch 3,mem_plap
+	icopy lap         
+	rtn
+
+
+fetch_diac:
+	bmark1 mark_all_diac,fetch_diac_do
+	rtnmark0 mark_inquiry_state
+	rtnmark0 mark_periodical_diac
+fetch_diac_do:
+	and_into -256,lap
+	pulse recalc
+	nop 32
+	rtn
+
+
+shutdown_radio:
+	bpatch patch10_5,mem_patch10
+	branch shutdown_radio0,is_rx
+	jam 0xd4, rf_tx_pa_ib
+	nop 4
+	jam 0xd2, rf_tx_pa_ib
+	nop 4
+	jam 0xd1, rf_tx_pa_ib
+	nop 4	
+	fetch 1,mem_tx_power
+	beq TX_POWER_0DB,shutdown_radio_0db
+	beq TX_POWER_3DB,shutdown_radio_3db
+	beq TX_POWER_5DB,shutdown_radio_5db
+	beq TX_POWER_f3DB,shutdown_radio_f3db
+	beq TX_POWER_f5DB,shutdown_radio_f5db
+	beq TX_POWER_PAIR,shutdown_radio_pair
+shutdown_radio_5db:	
+shutdown_radio_0db:
+	jam 0xd0, rf_tx_pa_ib
+	jam 0xe0, rf_tx_pa_gc
+shutdown_radio0:
+	force 0,radio_ctrl
+	disable is_rx
+	disable is_tx
+	pulse packet_end
+	jam 0x0,rfen_mdm
+	jam 0x0,rfen_tx
+	jam 0x0,rfen_rx
+	jam 0,rfen_sn
+	jam 0x70,rfen_msc
+	jam 0x0,rfen_adc
+	rtn
+	
+shutdown_radio_pair:
+shutdown_radio_f5db:
+shutdown_radio_f3db:
+shutdown_radio_3db:
+	jam 0xd0,rf_tx_pa_ib
+	jam 0xc0,rf_tx_pa_gc
+	branch shutdown_radio0
+
+set_sync_on:
+	bpatch patch10_6,mem_patch10
+	jam 0x0,rfen_mdm					/* if called from tx or rx */
+	jam 0x0,rfen_tx
+	jam 0x18,rfen_rx
+	jam 0xa7,rfen_sn
+	jam 0x7f,rfen_msc
+	rtn
+
+set_freq_rx:
+	bpatch patch10_7,mem_patch10
+		/* IF is +2MHz */
+	storet 1,mem_last_freq
+	add temp,rx_freq_offset,rega			/* index to frequency */
+	jam 0x07,rf_balun_ctrim                                         /*Max added, for best sensitivity*/
+	branch rf_write_freq
+rf_rx_enable:
+	bpatch patch11_0,mem_patch11
+	jam 0xcf,rfen_tx
+	nop 10					/* wait adc clk48 ready */
+	jam 0xff,rfen_rx
+	jam 0xaf,rfen_sn
+	jam 0xff,rfen_msc
+	nop 10
+	jam 0xa0,rfen_mdm
+	rtn
+	
+set_freq_tx_offset:
+	fetch 1,mem_250k_freq_enable	//default: 0
+	branch set_freq_tx_2M_offset,blank
+set_freq_tx_0M_offset:
+	add temp,2,rega			//250k
+	rtn
+set_freq_tx_2M_offset:
+	add temp,0,rega			// bt 2M Medium Frequency
+	rtn
+
+set_freq_tx:
+	bpatch patch11_1,mem_patch11
+	storet 1,mem_last_freq
+	call set_freq_tx_offset
+	call rf_write_freq
+	setarg param_pll_setup
+	call sleep
+txon:	
+	jam 0x1,rfen_adc
+	jam 0x3c,rfen_rx
+	jam 0xe0,rfen_tx
+	jam 0x12,rf_balun_ctrim
+	nop 10
+	jam 0x01,rfen_mdm
+	jam 0x3d,rfen_mdm
+	nop 10
+	jam 0xb7,rfen_sn
+	nop 10
+	jam 0x7f, rfen_mdm
+txon_power_select:	
+	fetch 1,mem_tx_power
+	beq TX_POWER_0DB,set_tx_power_0db
+	beq TX_POWER_3DB,set_tx_power_3db	
+	beq TX_POWER_5DB,set_tx_power_5db
+	beq TX_POWER_f3DB,set_tx_power_f3db	
+	beq TX_POWER_f5DB,set_tx_power_f5db
+	beq TX_POWER_PAIR,set_tx_power_pair
+set_tx_power_0db:	
+	jam 0xf0,rf_tx_pa_gc
+	call txon_common
+	jam 0xd8,rf_tx_pa_ib
+	rtn
+
+set_tx_power_3db:
+	jam 0xdf,rf_tx_pa_gc
+	call txon_common
+	jam 0xdf,rf_tx_pa_ib
+	rtn
+
+set_tx_power_5db:
+	jam 0xff,rf_tx_pa_gc
+	call txon_common
+	jam 0xdf,rf_tx_pa_ib
+	rtn
+set_tx_power_f3db:
+	jam 0xce,rf_tx_pa_gc
+	call txon_common
+	jam 0xd8,rf_tx_pa_ib
+	rtn
+
+set_tx_power_f5db:
+	jam 0xcb,rf_tx_pa_gc
+	call txon_common
+	jam 0xd8,rf_tx_pa_ib
+	rtn
+
+set_tx_power_pair:
+	jam 0xd0,rf_tx_pa_ib
+	jam 0xc0,rf_tx_pa_gc
+	jam 0x4c,0x8957
+	jam 0x6c,0x8958
+	jam 0x50,0x8959
+	rtn
+
+txon_common:
+	nop 4
+	jam 0xd1,rf_tx_pa_ib
+	nop 4
+	jam 0xd2,rf_tx_pa_ib
+	nop 4
+	jam 0xd4,rf_tx_pa_ib
+	rtn
+
+
+initialize_radio:
+	jam clksel_rc,core_clksel
+initialize_radio_wait:
+	fetch 2,mem_rf_init_ptr
+	bbit0 14,initialize_radio_wait
+	iforce contr
+	arg 0x8900,temp
+initialize_radio_loop:
+	ifetch 1,contr
+	beq 0xff,initialize_radio_cont
+	ior temp,contw
+	ifetch 1,contr
+	istore 1,contw
+	branch initialize_radio_loop
+initialize_radio_cont:
+	bpatch patch11_2,mem_patch11
+	call lpm_cal_xtal_startup
+	call switchto_dpllclk
+//	ncall check_dpll,wake
+	setarg param_dpll_start_delay
+	iadd clkn_bt,pdata
+	store 4,mem_dpll_clkn
+	set1 RESET,radio_ctrl
+	force 0,radio_ctrl
+	ncall do_rccal,wake
+	branch set_rccal
+
+	/* rega is frequency, 00=2400Mhz */
+rf_write_freq:
+	bpatch patch11_3,mem_patch11
+	setarg 2400
+	iadd rega,temp
+	fetch 1,mem_fcomp_mul
+	jam 0x04,rf_pll_rstn
+	imul32 temp,pdata
+	fetcht 1,mem_fcomp_div
+	idiv temp
+	call wait_div_end
+	quotient rega			/* rega is FLOOR(FVCO/fcomp) */
+	remainder pdata		
+	lshift16 pdata,pdata
+	lshift4 pdata,pdata		/* pdata is frac * 2^20 */
+	idiv temp
+	call wait_div_end
+	quotient pdata		/* pdata is frac *2^20/fcomp */
+	lshift8 pdata,pdata
+	lshift pdata,pdata
+	ior rega,pdata
+	hstore 4,rf_pll_intg
+	jam 0x44,rf_pll_rstn
+	jam 0xc4,rf_pll_rstn
+	rtn
+
+	
+do_rccal:
+	bpatch patch11_4,mem_patch11
+	jam 0x02,rfen_adc
+	setarg 250000
+	call sleep					/* wait clkpll&xtal stable */
+	jam 0x7f,rfen_rx
+	nop 130
+	jam 0x30,rf_rccal_ctrl
+	jam 0xd0,rfen_tx
+	jam 0x70,rf_rccal_ctrl
+	jam 0xf0,rf_rccal_ctrl
+	force 50,loopcnt
+do_rccal_loop:
+	hfetch 1,rf_rccal_result
+	bbit1 5,do_rccal_end
+	loop do_rccal_loop
+do_rccal_end:
+	store 1,mem_rf_rccal
+	jam 0,rfen_tx
+	jam 0,rfen_rx
+	jam 0x00,rfen_adc
+	rtn
+
+set_rccal:
+	bpatch patch11_5,mem_patch11
+	fetch 1,mem_rf_rccal
+	set1 5,pdata
+	hstore 1,rf_rccal_ctrl
+	hfetcht 1,rf_bpf_ctrim
+	and_into 7,temp
+	lshift3 pdata,pdata
+	ior temp,pdata
+	hstore 1,rf_bpf_ctrim
+	hfetch 1,rf_bpf_ib
+	set0 bpf_rccal,pdata
+	hstore 1,rf_bpf_ib
+	hfetch 1,rf_adc_rccal
+	set0 adc_rccal,pdata
+	hstore 1,rf_adc_rccal
+	rtn
+
+save_rssi:
+	bpatch patch11_6,mem_patch11
+	hfetch 2,rf_afc_d2a
+	rshift4 pdata,pdata
+	rshift3 pdata,pdata
+	sub pdata,0,pdata
+bcd:
+	and_into 0xff,pdata
+	div pdata,10
+	call wait_div_end
+	quotient pdata
+	lshift4 pdata,pdata
+	remainder temp
+	ior temp,pdata
+	store 1,mem_rssi			/* bcd value */
+	rtn
+
+	
+switchto_dpllclk:
+	jam clksel_rc,core_clksel
+	hfetch 1,rf_clkpll_frac+2
+	set0 4,pdata
+	set0 5,pdata
+	hstore 1,rf_clkpll_frac+2
+	jam 0x00,rfen_ck
+	jam 0x00,rfen_msc
+	jam 0x70,rfen_msc
+	jam 0xff,rfen_ck
+	hfetch 1,rf_clkpll_frac+2
+	set1 4,pdata
+	set1 5,pdata
+	hstore 1,rf_clkpll_frac+2
+	call init_lpm_ctrl
+	hfetch 1,rf_clkpll_int
+	set1 7,pdata
+	hstore 1,rf_clkpll_int
+	set0 7,pdata
+	hstore 1,rf_clkpll_int
+	set1 7,pdata
+	hstore 1,rf_clkpll_int
+	jam clksel_dpll,core_clksel
+	nop 1
+	jam clksel_xtal,core_clksel
+	hfetch 1,rf_clkpll_frac+2
+	and_into 0xcf,pdata
+	hstore 1,rf_clkpll_frac+2
+	or_into 0x30,pdata
+	hstore 1,rf_clkpll_frac+2
+	rtn
+
+	
+xtal_fast_wake:
+	setarg 0xf0f
+	branch lpm_write_config
+
+init_lpm_ctrl:
+	setarg 0x80f
+	branch lpm_write_config
+
+
+
+start_receiver:
+	bpatch patch11_7,mem_patch11
+	call rf_rx_enable
+	disable is_tx
+	enable is_rx
+	pulse init_encrypt
+	rtn
+
+prep_crypt:
+	bpatch patch12_0,mem_patch12
+	fetch 1,mem_state_map
+	isolate1 smap_encryption,pdata
+	setflag true,0,pdata
+	hstore 1,core_encrypt
+	arg mem_kc,contr
+	ifetch 9,contr
+	iforce kc_ls
+	ifetch 7,contr
+	iforce kc_ms
+	fetch 1,mem_key_size
+	add pdata,-1,g1l
+	pulse kc_p_activate               /* immediately start calculating primary Key */
+	rtn
+	
+wait_access_end:
+	deposit clke
+	store 6,mem_sync_clke
+	disable decode_fec0
+	nbranch shutdown_radio,sync
+	arg param_clke_cal,clke_rt
+	increase 1,clke_bt
+	and_into 0x1fc,clke_bt
+	rtn
+
+
+
+wait_access_mhalfbnd:
+	enable decode_fec0
+wait_access_mhalfbnd_correlate:
+	correlate null,mhalfbnd    /* keep correlating until sync is found, or clke half */
+	branch wait_access_end,sync
+	compare 0x02,clke_bt,0x02
+	nbranch wait_access_mhalfbnd_correlate,true
+	branch wait_access_end
+
+wait_access_clkn_rt:
+	bpatch patch12_1,mem_patch12
+	arg param_conn_access,timeup	/* found sync must occur within this time */
+	enable decode_fec0
+	correlate clkn_rt,meet    /* keep correlating until sync is found, or until clkn_rt timeup */
+	disable decode_fec0
+	nbranch shutdown_radio,sync
+	rtn
+
+wait_access_forever:
+	bpatch patch12_2,mem_patch12
+	enable decode_fec0
+	correlate null,timeout    /* keep correlating until sync is found, or timeout */
+	disable decode_fec0
+	nbranch shutdown_radio,sync
+	arg param_clke_cal,clke_rt
+	and_into 0x1fc,clke_bt
+	rtn
+
+	/* reserve slots for mult-slot packet */
+reserve_slot:
+	bpatch patch12_3,mem_patch12
+	iforce rega
+	deposit bt_clk
+	iadd temp,timeup
+	copy timeup,pdata
+	store 4,mem_next_btclk
+	deposit rega
+	rtn
+
+	/* pdata = clks ahead of bt_clk */
+ahead_window:
+	copy pdata,temp
+	bpatch patch12_4,mem_patch12
+	copy temp,pdata
+	call clk2bt
+	lshift16 bt_clk,pdata
+	set1 44,pdata
+	call clk_diff
+	set0 44,pdata
+	call get_clk
+	call clk_diff
+	rtn user
+	call clk2rt
+	iforce stop_watch
+	until null,timeout
+	rtn
+
+
+setup_clk:
+	bpatch patch12_5,mem_patch12
+	branch setup_clkn,clknt
+	until clke_rt,meet
+skip_setup_clke:
+	copy clke_bt,temp
+	branch setup_clknbt
+setup_clkn:
+	branch skip_setup_clkn,attempt
+	until clkn_rt,meet
+skip_setup_clkn:
+	copy clkn_bt,temp
+setup_clknbt:
+	branch setup_clk11,user
+	compare 1,temp,3
+	nbranch setup_clk,true
+setup_complete:
+	bpatch patch12_6,mem_patch12
+	fetch 1,mem_state
+	rtnbit0 state_inconn
+	fetch 4,mem_next_btclk
+	isub temp,pdata
+	nrtn positive
+	sub pdata,0xff,null
+	branch setup_clk,positive
+	rtn
+setup_clk11:
+	compare 3,temp,3
+	nbranch setup_clk,true
+	branch setup_complete
+
+rf_setup_time:
+	bpatch patch12_7,mem_patch12
+	arg param_rf_setup,timeup
+	branch setup_clk
+	
+rf_setup_time_slave_slot:
+	disable user
+	branch rf_setup_time
+
+rf_setup_time_master_slot:
+	enable user
+	branch rf_setup_time
+	
+start_transmitter:
+	bpatch patch13_0,mem_patch13
+	call prep_crypt
+	disable is_rx
+	enable is_tx
+	rtn
+
+
+
+start_tx_native:
+	bpatch patch13_1,mem_patch13
+	arg param_tx_setup,timeup
+	until clkn_rt,meet         /* wait until start_tx time */
+	pulse init_encrypt
+	rtn
+
+start_rx_native:
+	bpatch patch13_2,mem_patch13
+	arg param_rx_setup,timeup
+	until clkn_rt,meet
+	rtn
+
+
+start_tx_external:
+	bpatch patch13_3,mem_patch13
+	arg param_tx_setup,timeup
+	until clke_rt,meet         /* wait until start_tx time */
+	pulse init_encrypt
+	rtn
+
+send_access_word:
+	bpatch patch13_4,mem_patch13
+	preload access          /* load in access word ready to be sent */
+	enable encode_fec0
+	set1 TXGFSK,radio_ctrl
+	inject mod,72
+	disable encode_fec0
+	rtn
+
+
+scan_mode_whiten:
+	copy xin,temp
+	or_into 0x60,temp                /* extend xin with 5->1, 6->1 */
+	copy temp,white_init
+	rtn
+
+
+
+	/* return blank if free amaddr is found */
+get_free_amaddr:
+	bpatch patch13_5,mem_patch13
+	fetch 1,mem_current_amaddr
+	increase 1,pdata
+	bne param_esco_addr,get_free_amaddr_cont
+	force 1,pdata
+get_free_amaddr_cont:
+	store 1,mem_current_amaddr
+	iforce am_addr
+	rtn
+
+get_clk:
+	copy clkn,temp
+	rtn master
+	copy clke,temp
+	rtn
+
+get_clkbt:
+	deposit clkn_bt
+	rtn master
+	deposit clke_bt
+	rtn
+
+
+supervision_update:
+	bpatch patch13_6,mem_patch13
+	fetcht 4,mem_supervision_timer
+	call get_clkbt
+	isub temp,timeup					/* and to 28 bits */
+	deposit timeup
+	fetcht 2,mem_supervision_to
+	lshift temp,temp
+	isub temp,pdata
+	rtn
+	
+supervision_flush:
+	bpatch patch13_7,mem_patch13
+	call get_clkbt
+	store 4,mem_supervision_timer
+	rtn
+
+assert:
+	bpatch patch14_0,mem_patch14
+	branch assert
+	
+loop:
+	branch loop
+
+sleep:	
+	rtn blank
+	/* sleep pdata clocks, only even clocks are accurate */
+	rshift pdata,pdata
+	increase -3,pdata
+sleep_loop:	
+	increase -1,pdata
+	nbranch sleep_loop,zero
+	force 0,pdata
+	rtn
+
+
+
+init_param:
+	/* clear specified sched ram */
+	arg 0x10,loopcnt
+	arg 0,contw
+	call memset0
+	arg mem_le_state,contw
+	arg 10,loopcnt
+	call memset0
+	jam 0,mem_sp_calc
+	jam 0,mem_fifo_temp
+	jam 0,mem_le_testtype
+	jam 0,mem_debug_config
+	jam 0,mem_lmp_conn_state
+	bpatch patch14_1,mem_patch14
+	jam 0,mem_connection_options
+	jam 0,mem_tester_emulate
+	jam 0,mem_tester_cnt
+	setarg param_glap
+	store 3,mem_glap
+	setarg param_acl_pktlen
+	store 2,mem_acl_pktlen
+	jam param_sco_pktlen,mem_sco_pktlen
+	jam param_acl_pktcnt,mem_acl_pktcnt
+	jam param_sco_pktcnt,mem_sco_pktcnt
+	setarg param_hci_version
+	store 3,mem_hci_version
+//	setarg param_lmp_version
+//	store 3,mem_lmp_version
+//	setarg param_lmp_subversion
+//	store 2,mem_lmp_subversion
+	jam 0x60,mem_fhs_misc		/* R1 for 1.28s ps interval,P2 */
+	jam param_max_slot,mem_max_slot
+	jam 0x02,mem_fw_ver		/* set firmware version */
+ifdef SIMPLE_PAIRING
+	fetch 1,mem_ssp_enable
+	ncall init_memp,blank
+endif
+ifdef SECURE_CONNECTION
+	fetch 1,mem_le_secure_connect_enable
+	ncall init_memp_256,blank
+endif
+	bpatch patch14_2,mem_patch14
+	rtn wake
+	setarg 0
+	store 2,mem_tx_len
+	rshift clkn_bt,pdata
+	store 4,mem_last_clkn
+	rtn
+
+
+
+
+/*****************************************LPO************************************************/
+
+lpmstate:
+	setarg 0xee21
+	hstore 2,core_clkoff			// disable unused peripherals
+	hfetch 4,core_gpio_in
+	store 4,mem_saved_gpio_in
+	hfetch 1,core_lpm_ldocnt
+	store 1,mem_wakup_from_power_flag
+	bbit0 gpio_latch,loadcode		// power up boot
+	enable wake
+	bbit0 cold_wake,lpmwake		
+	disable wake
+	deposit auxcnt
+	nbranch lpmwake,blank		// sleep interrupted, wakeup
+	hfetch 1,core_lpm_ctrl + 3
+	bbit1 reload_code,lpmwake
+	arg param_hibernate_clks,temp
+	branch lpm_enter_sleep
+lpmwake:
+	hfetch 3,core_lpm_xtalcnt
+	hstore 3,core_lpm_reg
+	ifetch 1,contr
+	or_into isogate_mask,pdata		// open all isolation gate&power switch
+	istore 1,contw
+	call lpm_write_ctrl2
+	hfetch 1,core_lpm_isogate
+	set1 enable_retmem,pdata
+	hstore 1,core_lpm_isogate
+	call lpm_write_ctrl2
+	call lpm_load_context,wake
+	hfetch 1,core_lpm_reg+2
+	set0 gpio_latch,pdata			// enable gpio fuction
+	hstore 1,core_lpm_reg+2
+	call lpm_write_ctrl2
+	nbranch loadcode,wake		// wakeup from hibernate
+	rtnmark0 mark_otp_encrypt
+	jam lock_otp,core_misc_ctrl	// disable further read/write of key
+	rtn 
+
+lpm_load_context:
+	fetch 1,mem_saved_spidctrl
+	hstore 1,core_spid_ctrl
+	fetch 3,mem_saved_gsel
+	hstore 3,core_gpio_sel
+	fetch 4,mem_saved_gpio+4
+	hstore 4,core_gpio_out0
+	fetch 4,mem_saved_gpio
+	hstore 4,core_gpio_oe0
+	fetch 8,mem_saved_gpio+8
+	hstore 8,core_gpio_pu0	
+	fetch 8,mem_saved_mark
+	iforce mark
+	hfetch 8,core_gpio_wakeup_low
+	store 8,mem_gpio_wakeup_low
+	call load_ucode
+	rtn
+
+lpm_save_context:
+	deposit mark
+	store 8,mem_saved_mark
+	hfetch 8,core_gpio_oe0
+	store 8,mem_saved_gpio
+	ifetch 8,contr
+	istore 8,contw
+	hfetch 3,core_gpio_sel
+	store 3,mem_saved_gsel
+	hfetch 1,core_spid_ctrl
+	store 1,mem_saved_spidctrl
+	branch lpm_write_gpio_wakeup
+
+lpo_calibration:
+	hfetch 1,core_bist_ctrl
+	nbranch lpo_cal_inited,blank
+	fetch 3,mem_clks_per_lpo
+	nrtn blank
+	jam 0xc0,core_bist_ctrl
+	jam ccnt_start,core_misc_ctrl
+lpo_cal_inited:
+	hfetch 1,core_perf_status
+	rtnbit0 1
+	hfetch 3,core_clk_counter
+	store 3,mem_clks_per_lpo
+	rtn
+
+
+	/* temp is synced clke */
+lpm_adjust_clk:
+	bpatch patch14_3,mem_patch14
+	deposit clke
+	call clk_diff_rt
+	fetcht 4,mem_sleep_counter_all
+	sub temp,0xff,null
+	rtn positive				// interval too small
+	lshift8 pdata,pdata
+	lshift4 pdata,pdata
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	arg param_lpm_adjmax,temp
+	call ceiling
+	store 1,mem_lpm_adjust
+	nbranch lpm_adjust_positive,user
+	sub pdata,0,pdata
+lpm_adjust_positive:
+	fetcht 3,mem_clks_per_lpo
+	iadd temp,pdata
+	store 3,mem_clks_per_lpo
+lpm_clear_counter:
+	setarg 0
+	store 4,mem_sleep_counter_all
+	rtn
+
+
+	/* temp is lpo counter for doze */
+lpm_doze:
+	fetch 1,mem_lpm_config+2
+	set1 reload_code,pdata
+	store 1,mem_lpm_config+2
+	branch lpm_hibernate_normal
+	
+
+	/* no retention memory at all */
+lpm_hibernate:
+	arg param_hibernate_clks,temp
+	fetch 1,mem_lpm_config+1
+	set0 7,pdata					/* lowest lpo */
+	store 1,mem_lpm_config+1
+lpm_hibernate_normal:
+	bpatch patch14_4,mem_patch14
+	call lpm_write_gpio_wakeup
+	fetch 1,mem_lpm_hibernate_switch
+	store 1,mem_lpm_xtalcnt + 4
+	fetch 1,mem_lpm_xtalcnt + 2
+	set1 cold_wake,pdata
+	store 1,mem_lpm_xtalcnt + 2
+
+	/* temp is lpo clocks to sleep */
+lpm_sleep:
+	bpatch patch14_5,mem_patch14
+	call xtal_fast_wake
+	fetch 4,mem_sleep_counter_all
+	iadd temp,pdata
+	store 4,mem_sleep_counter_all
+	call lpm_save_context
+	fetch 5,mem_lpm_xtalcnt
+	hstore 4,core_lpm_reg
+	rshift32 pdata,rega
+	until null,lpo_edge
+	deposit clkn
+	store 6,mem_sleep_clkn
+	jam lpmreg_sel_ctrl2,core_lpm_wr
+	until null,lpo_edge
+	until null,lpo_edge
+	deposit rega
+	hstore 1,core_lpm_isogate
+	jam lpmreg_sel_ctrl2,core_lpm_wr
+lpm_enter_sleep:
+	until null,lpo_edge
+	until null,lpo_edge
+	hstoret 4,core_lpm_reg
+	jam lpmreg_sel_counter,core_lpm_wr
+	until null,never
+
+
+
+
+lpm_recover_clk:
+	bpatch patch14_6,mem_patch14
+	setarg 0
+	copy auxcnt,null
+	branch lpm_recover_timeout,zero
+	hfetch 1,core_lpm_xtalcnt
+	hfetcht 1,core_lpm_buckcnt
+	isub temp,null
+	branch lpm_recover_xtal,positive
+	deposit temp
+lpm_recover_xtal:
+	isub auxcnt,pdata
+	increase 1,pdata
+lpm_recover_timeout:
+	increase 8,pdata
+	until null,lpo_edge
+	iadd lpo_time,pdata
+	fetcht 4,mem_sleep_counter
+	iadd temp,pdata
+	fetcht 3,mem_clks_per_lpo
+	imul32 temp,pdata
+	rshift8 pdata,pdata
+	rshift4 pdata,pdata
+	increase param_lpm_fix,pdata
+	arg 3750,temp
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	lshift16 pdata,pdata
+	remainder temp
+	ior temp,pdata
+	fetcht 6,mem_sleep_clkn
+	call clk_add
+	copy temp,clkn
+	fetch 6,mem_context + coffset_clk_offset
+	call calc_clke2
+	deposit clke
+	store 6,mem_pdatatemp
+	deposit auxcnt
+	istore 1,contw
+	hfetch 1,core_gpio_in1
+	or_into 0xf0,pdata
+	istore 1,contw
+	rtn
+	
+lpm_dispatch:
+	bpatch patch14_7,mem_patch14
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	fetch 1,mem_lpm_mode
+	rtn blank
+	fetch 1,mem_ssp_enable
+	branch lpm_dispatch_next,blank
+	fetch 1,mem_sp_local_key_invalid	// simple pairing is not ready
+	rtn blank
+lpm_dispatch_next:
+	fetch 1,mem_le_sc_calc
+	nrtn blank	
+	call lpm_check_wake_lock
+	nrtn blank
+	fetch 1,mem_context
+	compare 3,pdata,0x7							/* sco won't sleep */
+	nbranch lpm_dispatch_unconn,true
+	fetch 2,mem_context + coffset_tsniff
+	rtn blank										/* role switch */
+	rtn wake
+	bpatch patch15_0,mem_patch15
+lpm_dispatch_next2:
+	fetcht 1,mem_lpm_current_mult
+	fetch 2,mem_context + coffset_tsniff
+	imul32 temp,pdata
+	rshift4 temp,temp
+	rshift2 temp,temp
+	isub temp,pdata
+	fetcht 4,mem_context + coffset_sniff_anchor
+	iadd temp,pdata
+	fetcht 1,mem_lpm_overhead
+	isub temp,pdata
+	lshift16 pdata,alarm
+	bpatch patch15_1,mem_patch15
+	fetch 2,mem_context + coffset_rx_window
+	rshift pdata,pdata
+	call clk2bt
+	deposit alarm
+	call clk_diff
+	copy clke,temp
+	call clk_diff_rt
+	rtn user
+lpm_dispatch_sleep:
+	call clk2lpo
+lpm_dispatch_lpo:
+	bpatch patch15_2,mem_patch15
+	fetch 1,mem_lpm_xtalcnt
+	isub temp,null
+	branch lpm_clear_counter,positive
+	storet 4,mem_sleep_counter
+	call app_will_enter_lpm
+	call l2cap_lpm_save_txbuf
+	fetcht 4,mem_sleep_counter
+	branch lpm_sleep
+	
+lpm_dispatch_unconn:
+	bpatch patch15_3,mem_patch15
+	fetch 1,mem_context
+	rtnbit1 state_inconn					// wont sleep in connection
+	rtnbit1 state_inpage					// wont sleep when paging
+	fetch 1,mem_ssp_enable
+	branch lpm_unconn_nossp,blank
+	fetch 1,mem_sp_local_key_invalid	// simple pairing is not ready
+	rtn blank
+lpm_unconn_nossp:
+	bpatch patch15_4,mem_patch15
+	fetch 1,mem_le_adv_enable
+	nbranch lpm_unconn_cont,blank
+	fetch 1,mem_scan_mode
+	rtn blank
+lpm_unconn_cont:
+	fetch 2,mem_lpm_interval
+	rtn blank
+lpm_sleep_btclk:
+	fetcht 1,mem_lpm_overhead
+	isub temp,pdata
+	arg 7500,temp				/* 1.25ms */
+	imul32 temp,pdata
+	branch lpm_dispatch_sleep
+
+lpm_set_mult:
+	bpatch patch15_5,mem_patch15
+	disable wake
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	nbranch lpm_not_match,match
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_rx_window
+	fetch 1,mem_arq
+	bbit1 wack,lpm_mult_short
+	bmark0 mark_lpm_mult_enable,lpm_mult_short
+	call l2cap_malloc_is_fifo_empty
+	nbranch lpm_mult_short,blank
+	fetch 1,mem_classic_bt_flag
+	bbit1 SHORT_MULT_FLAG,lpm_mult_short
+lpm_mult_wait_timeout:
+	jam 0,mem_lpm_current_mult
+	bmark0 mark_lpm_mult_enable,lpm_mult_short
+	fetch 1,mem_lpm_mult_cnt
+	branch lpm_mult_long,blank
+	increase -1,pdata
+	store 1,mem_lpm_mult_cnt
+	rtn
+
+
+classic_bt_set_mult_short_flag:
+	arg SHORT_MULT_FLAG,queue
+	branch classic_bluetooth_set_flag
+	
+classic_bt_clr_mult_short_flag:
+	arg SHORT_MULT_FLAG,queue
+	branch classic_bluetooth_clr_flag
+
+
+
+lpm_match:
+	jam 0,mem_sniff_unint_lost
+	fetch 3,mem_sniff_rcv
+	increase 1,pdata
+	store 3,mem_sniff_rcv
+	rtn
+
+lpm_not_match:
+	bpatch patch15_6,mem_patch15
+	fetcht 2,mem_rx_window_sniff
+	rshift temp,temp
+	fetch 2,mem_rx_window
+	iadd temp,pdata
+	store 2,mem_rx_window
+lpm_lost:
+	jam 0,mem_lpm_current_mult
+	fetch 3,mem_sniff_lost
+	increase 1,pdata
+	store 3,mem_sniff_lost
+	fetch 1,mem_sniff_unint_lost
+	increase 1,pdata
+	store 1,mem_sniff_unint_lost
+	rtn
+
+lpm_mult_short:
+	jam 0,mem_lpm_current_mult
+	fetch 1,mem_lpm_mult_timeout
+	store 1,mem_lpm_mult_cnt
+	rtn
+
+lpm_mult_long:
+	fetcht 1,mem_lpm_mult
+	storet 1,mem_lpm_current_mult
+	rtn
+
+lpm_cal_xtal_startup:
+	bpatch patch15_7,mem_patch15
+	fetch 1,mem_lpm_xtalcnt
+	nrtn blank
+	jam clksel_rc,core_clksel
+	setarg 0xf0c
+	call lpm_write_config
+	setarg 200000
+	call sleep
+	until null,lpo_edge
+	copy lpo_time,alarm
+	call xtal_fast_wake
+	jam clksel_xtal,core_clksel
+	nop 10
+	until null,lpo_edge
+	deposit lpo_time
+	isub alarm,pdata
+	increase 0x30,pdata
+	arg 0xff,temp
+	call ceiling
+	store 1,mem_lpm_xtalcnt
+	nop 30000
+	nop 30000
+	nop 30000	
+	rtn
+
+lpm_cal_xtal_startup_by_snooze:
+	fetch 1,mem_lpm_xtalcnt
+	nrtn blank
+	jam 0xff,core_xtal_stable_time
+	jam clksel_rc,core_clksel
+	call xtal_fast_wake
+	setarg 1000
+	iadd lpo_time,alarm
+	snooze
+	deposit lpo_time
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	nop 12000	//delay about 1ms
+	isub alarm,pdata
+	add pdata,0x30,pdata
+	arg 0xff,temp
+	call ceiling
+	store 1,mem_lpm_xtalcnt
+	nop 30000
+	nop 30000
+	nop 30000	//delay 90000 nop
+	rtn
+
+
+
+	/* pdata is lpm_reg[11:0] */
+lpm_write_config:
+	arg 0xfff,contw
+	iand contw,contw
+	fetch 1,mem_lpm_config
+	and_into 0xf0,pdata
+	lshift8 pdata,pdata
+	ior contw,pdata
+	hstore 2,core_lpm_reg
+	ifetch 2,contr
+	istore 2,contw
+
+lpm_write_ctrl:
+	setarg lpmreg_sel_ctrl
+	branch lpm_write
+
+lpm_write_ctrl2:
+	setarg lpmreg_sel_ctrl2
+lpm_write:
+	until null,lpo_edge
+	hstore 1,core_lpm_wr
+	until null,lpo_edge
+	until null,lpo_edge
+	rtn
+
+
+lpm_write_gpio_wakeup:
+	bpatch patch16_0,mem_patch16
+	fetch 4,mem_gpio_wakeup_low
+	hstore 4,core_lpm_reg
+	setarg lpmreg_sel_gpiolow
+	call lpm_write
+	fetch 4,mem_gpio_wakeup_high
+	hstore 4,core_lpm_reg
+	setarg lpmreg_sel_gpiohigh
+	branch lpm_write
+
+lpm_get_wake_lock:
+	fetch 2,mem_lpm_wake_lock
+	qset1 pdata
+	store 2,mem_lpm_wake_lock
+	rtn
+
+lpm_put_wake_lock:
+	fetch 2,mem_lpm_wake_lock
+	qset0 pdata
+	store 2,mem_lpm_wake_lock
+	rtn
+
+
+
+lpm_check_wake_lock:
+	bpatch patch16_1,mem_patch16
+	call app_check_wake_lock
+	fetch 2,mem_lpm_wake_lock
+	copy pdata,rega
+	fetch 1,mem_state_map
+	isolate1 smap_rxlmp,pdata
+	setflag true,wake_lock_lmp_rx,rega
+	fetch 1,mem_lmo_opcode1
+	fetcht 1,mem_lmo_opcode2
+	iadd temp,pdata
+	fetcht 1,mem_lmp_to_send
+	iadd temp,pdata
+	nsetflag blank,wake_lock_lmp_tx,rega
+	fetch 1,mem_le_tx_buff_used
+	nsetflag blank,wake_lock_ble_tx,rega
+	fetch 2,mem_l2cap_rxbuff1_len
+	fetcht 2,mem_l2cap_rxbuff2_len
+	iadd temp,pdata
+	nsetflag blank,wake_lock_l2cap_rx,rega
+	fetch UTIL_FIFO_LEN,mem_ipc_fifo_bt2c51
+	nsetflag blank,wake_lock_ipc_bt2c51,rega
+	fetch UTIL_FIFO_LEN,mem_ipc_fifo_c512bt
+	nsetflag blank,wake_lock_ipc_c512bt,rega
+	fetch 1,mem_hci_cmd
+	nsetflag blank,wake_lock_cmd,rega
+	fetch 1,mem_device_option
+	compare dvc_op_module,pdata,0xff
+	call lpm_uart_wake_lock,true
+	setarg -8
+	iand rega,rega
+	copy rega,pdata
+	store 2,mem_lpm_wake_lock
+	rtn
+
+lpm_uart_wake_lock:
+	hfetch 2,core_uart_rxitems
+	nsetflag blank,wake_lock_uart_rx ,rega
+	hfetch 2,core_uart_txitems
+	nsetflag blank,wake_lock_uart_tx ,rega
+	rtn
+
+lpm_shut_down:
+	hfetch 4,core_lpm_ctrl
+	set0 27,pdata
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	branch assert
+	
+lpm_disable_exen_output:
+	hfetch 4,core_lpm_xtalcnt
+	set0 20,pdata
+	hstore 4,core_lpm_reg
+	branch lpm_write_ctrl2
+
+check_bt_disabled:
+	fetch 2,mem_chip_functions
+	bbit1 bt_disabled,assert
+	rtn
+check_ble_disabled:
+	fetch 2,mem_chip_functions
+	bbit1 ble_disabled,assert
+	rtn
+check_module_disabled:
+	fetch 2,mem_chip_functions
+	bbit1 module_disable,assert
+	rtn
+
+
+
+
+
+
+
+//p_check_attempt_sniff:
+//	bbit0 state_insco,p_check_attempt_not_sco
+//	fetch 1,mem_current_sniff_attempt
+//	beq 2,p_check_attempt_sniff_restore_sco
+//	fetch 1,mem_arq
+//	bbit1 wack,p_check_attempt_notimeout
+//	bmark0 mark_esco_rxok,p_check_attempt_notimeout
+//p_check_attempt_sniff_restore_sco:
+//	nbranch p_check_attempt_notimeout,master
+//	fetch 1,mem_lmp_to_send
+//	nbranch p_check_attempt_notimeout,blank
+//p_check_attempt_sco_master:
+//	fetch 1,mem_sco_poll
+//	increase -1,pdata
+//	store 1,mem_sco_poll
+//	nbranch check_attempt_nomore,blank
+//	jam param_sco_poll,mem_sco_poll
+//	branch check_attempt_notimeout
+//p_check_attempt_not_sco:
+//	compare type_null,type,0x1f
+//	branch check_timeout,true
+//	compare type_poll,type,0x1f
+//	branch check_timeout,true
+//	branch check_anchor_end
+//p_check_attempt_notimeout:
+//check_atttemp_decrease:
+//	fetch 1,mem_current_sniff_attempt
+//	increase -1,pdata
+//	store 1,mem_current_sniff_attempt
+//	rtn
+//check_timeout:
+//	fetch 1,mem_sniff_timeout_temp
+//	increase 1,pdata
+//	store 1,mem_sniff_timeout_temp
+//check_anchor_end:
+//	fetch 1,mem_current_sniff_attempt
+//	branch check_anchor_end_attempt0,blank
+//	call check_atttemp_decrease
+//	nrtn blank
+//check_anchor_end_attempt0:  
+//	fetch 1,mem_sniff_timeout_temp
+//	fetcht 1,mem_current_sniff_timeout
+//	isub temp,null
+//	branch p_blank,positive
+//	arg 1,pdata
+//	rtn
+//p_blank:
+//	arg 0,pdata
+//	rtn
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/hci_h4.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/hci_h4.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/hci_h4.prog	(working copy)
@@ -0,0 +1,138 @@
+
+ifdef DEBUG_H4LOG_ENABLE
+hci_log:
+	copy regc,pdata
+	rtneq 0x11
+	fetch 1,mem_hci_log
+	increase 1,pdata
+	sub pdata,hci_log_cnt,null
+	branch hci_log_calc_ptr,positive
+	setarg 0
+hci_log_calc_ptr:
+	store 1,mem_hci_log
+	arg hci_log_size,temp
+	imul32 temp,pdata
+	arg mem_hci_log+hci_log_size,contw
+	iadd contw,contw
+hci_log_write_content:
+	fetch 1,mem_hci_log
+	istore 1,contw//counter
+	copy regb,pdata
+	istore 1,contw
+	fetch 2,mem_le_event_count
+	istore 1,contw
+	copy clke_bt,pdata
+	istore 3,contw
+	fetch 1,mem_last_freq
+	istore 1,contw
+	fetch 1,mem_le_rxbuf
+	istore 1,contw
+	rtn
+else
+
+endif
+
+hci_rx_h4:
+	bpatch patch1f_5,mem_patch1f
+	fetch 1,mem_hci_cmd
+	nrtn blank
+hci_rx_h4_1:
+	call hci_h4_parse_packet
+	ncall h4_rx_discard_packet,user
+	rtn
+	
+hci_h4_parse_packet:
+	bpatch patch1f_6,mem_patch1f
+	copy contru,rega
+	arg 4,temp
+	ifetch 1,contru //type
+	beq HCI_H4_TYPE_CMD,hci_h4_parse_packet_wait_len
+	increase 1,temp //acl packet has 2 bytes for length
+	beq HCI_H4_TYPE_ACL,hci_h4_parse_packet_wait_len
+	copy contru,pdata
+	hstore 2,core_uart_rrptr
+	rtn
+hci_h4_parse_packet_wait_len:
+	hfetch 2,core_uart_rxitems
+	isub temp,null
+	nbranch hci_h4_parse_packet_wait_len,positive // while(rxitems >= 4 or 5);
+	//Make sure length has been recieved.
+	disable user
+	copy rega,contru
+	call h4_get_rx_payload_len
+	iadd temp,temp
+hci_h4_parse_packet_wait:
+	hfetch 2,core_uart_rxitems
+	isub temp,null
+	nbranch hci_h4_parse_packet_wait,positive//wait for rcv a complete packet
+	copy rega,contru
+	ifetch 1,contru //HCI packet type
+	beq  HCI_H4_TYPE_CMD,process_hci_cmd
+	branch assert
+	
+h4_rx_discard_packet:
+	bpatch patch1f_7,mem_patch1f
+	hfetch 2,core_uart_rrptr
+	iforce contru
+	call h4_get_rx_payload_len
+	iadd contru,contru
+	deposit contru
+	hstore 2,core_uart_rrptr
+	rtn
+
+
+//contru = pointer to packet start
+//return len via pdata
+h4_get_rx_payload_len:
+	ifetch 1,contru
+	increase 2,contru
+	beq HCI_H4_TYPE_ACL,h4_get_rx_payload_len_acl
+	ifetch 1,contru
+	rtn
+h4_get_rx_payload_len_acl:
+	ifetch 2,contru
+	rtn
+
+h4_get_tx_ptr:
+	hfetch 2,core_uart_twptr
+	increase -5,contwu
+	iadd contwu,contwu
+	rtn
+
+h4_send_packet_event:
+	arg HCI_H4_TYPE_EVENT,temp //type
+	branch h4_send_packet
+h4_send_packet_acl: //upgoing ACL
+	arg HCI_H4_TYPE_ACL,temp //type
+h4_send_packet:
+	bpatchx patch20_0,mem_patch20
+	increase 1,loopcnt
+	hfetch 2,core_uart_twptr
+	copy pdata,contwu
+	copy loopcnt,pdata //length
+	istoret 1,contwu //packet type in temp
+	increase -1,pdata
+	iadd contwu,contwu
+	copy contwu,pdata
+	store 2,mem_hci_acl_tx_trigger_wptr
+	copy temp,pdata
+ifdef ACL_DEBUG
+	beq HCI_H4_TYPE_EVENT,h4_send_packet0
+	hfetch 1,core_uart_txitems
+	ncall ice_break,blank
+	
+h4_send_packet0:	
+	copy temp,pdata
+endif
+	rtneq HCI_H4_TYPE_ACL //not send acl packet immediately
+	fetch 2,mem_hci_acl_tx_trigger_wptr
+	hstore 2,core_uart_twptr
+	branch h4_send_acl_trigger_clear
+	
+	
+h4_send_acl_trigger_clear:
+	setarg 0
+	store 2,mem_hci_acl_tx_trigger_wptr
+	rtn
+
+	
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/hci_main.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/hci_main.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/hci_main.prog	(working copy)
@@ -0,0 +1,400 @@
+/*********************************/
+/**********   HCI  *****************/
+/*********************************/
+
+hci_init:
+	rtn wake
+	setarg hci_idle_dispatch
+	store 2,mem_cb_idle_process
+
+	setarg uart_baud_115200
+	store uart_baud_len,mem_baud
+hci_lpm_init:
+	setarg mem_h5rx_buf
+	hstore 2,core_uart_rsaddr
+	setarg mem_h5rx_buf_end
+	hstore 2,core_uart_readdr
+	setarg mem_h5tx_buf
+	hstore 2,core_uart_tsaddr
+	call hci_sel_init
+hci_reinit:
+	jam 0x0,core_uart_ctrl
+ 	setarg mem_h5tx_buf
+	hstore 2,core_uart_twptr
+	hstore 2,core_uart_trptrp
+	setarg mem_h5rx_buf
+	hstore 2,core_uart_rrptr
+	store 2,mem_h5rx_rptr
+hci_init_common:
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_UART,pdata
+	hstore 2,core_clkoff
+	call uart_set_baud_by_mem
+	jam uartclk_dpll,core_uart_clksel
+	jam uart_ctrl_h4,core_uart_ctrl
+	rtn
+
+hci_sel_init:
+	setarg mem_h5tx_buf_end
+	hstore 2,core_uart_teaddr
+	hfetch 1,core_gpio_sel1
+	or_into 0x07,pdata
+	hstore 1,core_gpio_sel1
+	rtn
+	
+	
+hci_rx_packet:
+	bpatchx patch20_1,mem_patch20
+	hfetch 1,core_uart_status
+	iforce regb
+	bbit0 uart_status_rx_fifo_empty,hci_rx_packet_cont
+	hfetch 2,core_uart_rxitems
+	iforce regc
+	arg 0x44f,temp
+	isub temp,null
+	nrtn zero
+hci_rx_packet_cont:
+	hfetch 2,core_uart_rrptr
+	iforce contru
+	branch hci_rx_h4
+	
+uart_send_byte:
+	hfetcht 1,core_uart_status
+	isolate1 6,temp
+	branch uart_send_byte,true
+	hstore 1,core_uart_txd
+	rtn
+	
+process_hci_cmd:
+	bpatchx patch20_2,mem_patch20
+	fetch 1,mem_hci_cmd
+	branch process_hci_cmd_cont,blank
+	enable user					/* last command still there */
+	rtn
+process_hci_cmd_cont:
+	ifetch 2,contru
+	iforce alarm				/* alarm is used for sending */
+	iforce queue				/* queue is OCF */
+	ifetch 1,contru		/* skip hci length */
+	iforce temp			/* temp has the length */
+	rshift2 alarm,pdata
+	rshift8 pdata,pdata
+	beq HCI_OGF_VENDOR_SPECIFIC,phci_grp_vendor_specific
+	rtn
+
+
+phci_grp_vendor_specific:
+	bpatchx patch20_3,mem_patch20
+	deposit queue
+	beq HCI_VENDOR_CMD_RESET,hci_normal_reply
+	beq HCI_VENDOR_CMD_CHIPID,phci_grp_vendor_chipid
+	beq HCI_VENDOR_CMD_BAUD,phci_grp_vendor_baud
+	beq HCI_VENDOR_CMD_PATCH,phci_grp_vendor_patch
+	beq HCI_VENDOR_CMD_PATCH_DONE,phci_grp_vendor_done
+	beq HCI_VENDOR_CMD_ECHO,hci_normal_reply
+	beq HCI_VENDOR_CMD_BDADDR,phci_grp_vendor_bdaddr
+	beq HCI_VENDOR_CMD_ENTER_LPM,phci_grp_vendor_enter_lpm
+	
+	beq HCI_VENDOR_CMD_MEM,phci_grp_vendor_mem
+	beq HCI_VENDOR_CMD_EEP,phci_grp_vendor_eep
+	beq HCI_VENDOR_CMD_PATCH_SEC_INIT,phci_grp_vendor_patch_sec_init
+	beq HCI_VENDOR_CMD_PATCH_SEC,phci_grp_vendor_patch_sec
+	branch hci_normal_reply
+
+phci_grp_vendor_enter_lpm:
+	call hci_normal_reply
+	call wait_uarttx
+	call gpio_pu_uart_tx
+hci_enter_lpm:
+	call app_put_lpm_wake_lock
+	call app_l2cap_flow_control_enable
+	branch gpio_rx_config_input_with_pu
+
+hci_exit_lpm:
+	jam HCI_RX_READY,mem_hci_lt_rx_state
+	call app_get_lpm_wake_lock
+	call hci_lpm_init
+	branch app_l2cap_flow_control_disable
+	
+phci_grp_vendor_chipid:
+	call hci_get_cmd_complete_ptr
+	hfetch 2,core_chipid
+	istore 2,contwu
+	force 6,loopcnt
+	branch hci_command_complete
+	
+phci_grp_vendor_baud:
+	ifetch 2,contru
+	store 2,mem_baud
+	hstore 2,core_uart_baud
+	rtn
+
+
+phci_grp_vendor_patch_common:
+	//jam 0x80,core_ucode_ctrl
+	ifetch 1,contru
+	copy pdata,temp //check sum via temp
+	hstore 1,core_ucode_low
+	ifetch 1,contru
+	iadd temp,temp
+	set1 7,pdata
+	hstore 1,core_ucode_ctrl
+	ifetch 1,contru
+	iadd temp,temp
+	copy pdata,loopcnt
+	rtn
+	
+phci_grp_vendor_patch:
+	bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad
+	call phci_grp_vendor_patch_common
+phci_grp_vendor_patch_loop:
+	ifetch 1,contru
+	hstore 1,core_ucode_data
+	iadd temp,temp
+	loop phci_grp_vendor_patch_loop
+phci_grp_vendor_patch_check_sum:	
+	and temp,0xff,temp
+	ifetch 1,contru
+	isub temp,null
+	nbranch phci_grp_vendor_patch_bad,zero
+	branch hci_normal_reply
+
+	
+phci_grp_vendor_patch_sec:
+	bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad
+	call phci_grp_vendor_patch_common
+	store 8,mem_pdatatemp
+phci_grp_vendor_patch_sec_loop:
+	call do_aes_cbc	
+	arg 16,loopcnt
+	arg mem_temp_block0,contw
+	call load_uart_sum_loop
+	storet 8,mem_temp
+	arg mem_temp_block2,contw
+	call store_aes_result
+	arg mem_temp_block2,rega
+	arg mem_temp_block0,regb
+	arg mem_temp_block3,contw
+	call xor16	
+	arg 16,loopcnt
+	arg mem_temp_block3,contr
+	call load_ucode_only_loop
+	fetcht 8,mem_temp
+	fetch 8,mem_pdatatemp
+	increase -16,pdata
+	store 8,mem_pdatatemp
+	nbranch phci_grp_vendor_patch_sec_loop,blank
+	branch phci_grp_vendor_patch_check_sum	
+	
+load_ucode_only_loop:
+	ifetch 1,contr
+	hstore 1,core_ucode_data
+	loop load_ucode_only_loop
+	rtn
+
+load_uart_sum_loop:
+	ifetch 1,contru
+	istore 1,contw
+	iadd temp,temp
+	loop load_uart_sum_loop
+	rtn
+
+phci_grp_vendor_patch_sec_init:
+	bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad
+	arg 0,temp
+	arg 16,loopcnt
+	arg mem_temp_block0,contw
+	call load_uart_sum_loop
+	hfetch 1,core_gpio_key2
+	and_into 0xfd,pdata   // disable aes for iv
+	hstore 1,core_gpio_key2
+	arg mem_temp_block0,contr
+	arg 16,loopcnt
+	call aes_load_data
+	call aes_init
+	call aes_clear_data
+	branch phci_grp_vendor_patch_check_sum
+
+
+phci_grp_vendor_done:
+	arg 0x20,loopcnt    //patch switch length
+	arg mem_patch00,contw
+	arg 0,temp //checksum
+phci_grp_vendor_done_loop:
+	ifetch 1,contru
+	istore 1,contw
+	iadd temp,temp
+	loop phci_grp_vendor_done_loop
+	and temp,0xff,temp
+	ifetch 1,contru
+	isub temp,null
+	nbranch phci_grp_vendor_patch_bad,zero
+	jam 0,core_ucode_ctrl
+	call hci_normal_reply
+	call h4_rx_discard_packet
+	call clear_key_buf
+	call wait_uarttx
+	branch soft_reset
+
+phci_grp_vendor_patch_bad:
+	jam 0,core_ucode_ctrl
+	branch start
+	
+phci_grp_vendor_bdaddr:
+	ifetch 6,contru
+	store 6,mem_lap
+	branch hci_normal_reply
+
+
+phci_grp_vendor_mem:
+	ifetch 1,contru
+	store 1,mem_hci_curr_len
+	copy pdata,loopcnt
+	ifetch 2,contru
+	store 2,mem_hci_curr_target
+	copy pdata,contw
+	call uart_copy_rx_bytes
+	branch hci_normal_reply
+
+
+phci_grp_vendor_eep:
+	ifetch 1,contru
+	store 1,mem_hci_curr_len
+	copy pdata,loopcnt
+	ifetch 2,contru
+	store 2,mem_hci_curr_target
+	arg mem_l2cap_rxbuff1,contw
+	call uart_copy_rx_bytes
+	fetcht 1,mem_hci_curr_len
+	arg mem_l2cap_rxbuff1,rega
+	fetch 2,mem_hci_curr_target
+	branch iicd_write_ota_data
+	
+	
+
+	
+hci_normal_reply:
+	force 4,loopcnt
+hci_command_complete:	/* loopcnt is hci length */
+	call hci_get_payload_ptr
+	force 0x1,pdata
+	istore 1,contwu
+	deposit alarm
+	istore 3,contwu
+	force HCI_EVENT_COMMAND_COMPLETE,queue
+hci_send_event:		/* queue:event code, loopcnt: length */
+	bpatchx patch20_4,mem_patch20
+	call hci_get_packet_ptr
+	deposit queue
+	istore 1,contwu
+	deposit loopcnt
+	istore 1,contwu
+hci_send_event_raw:
+	force 5,queue
+	increase 2,loopcnt
+hci_send_packet:
+	branch h4_send_packet_event
+
+hci_send_commu_ready_event:
+	force HCI_EVENT_VENDOR_SPECIFIC,queue
+	call hci_get_payload_ptr
+	setarg HCI_VENDOR_EVENT_COMMU_READY
+	istore 1,contwu
+	force 1,loopcnt
+	branch hci_send_event
+
+hci_get_cmd_complete_ptr:
+	force 12,contwu
+	branch hci_get_tx_ptr
+
+hci_get_payload_ptr:
+	force 8,contwu
+	branch hci_get_tx_ptr
+
+hci_get_packet_ptr:
+	force 6,contwu
+hci_get_tx_ptr:
+	branch h4_get_tx_ptr
+
+	
+
+calc_tx_crc16:
+	pulse crc16
+	enable enable_crc
+crcloop:
+	ifetch 1,contwu
+	inject bucket,8
+	loop crcloop
+	enable enable_parity
+	inject bucket,16
+	disable enable_parity
+	disable enable_crc
+	disable crc16
+	byteswap pdata,pdata
+	rtn
+
+
+
+cmd_exit:
+	jam 0,mem_hci_cmd
+	rtn
+cmd_check_plap:
+	fetch 6,mem_hci_plap
+	fetcht 6,mem_plap
+	isub temp,null
+	rtn
+
+	
+	
+//enable ssp master sm
+cmd_pair:
+	fetch 1,mem_op
+	bbit1 op_inrand_req,cmd_pair_passive
+	call tid_initiate
+	jam LMP_IN_RAND,mem_lmo_opcode2
+	branch cmd_exit
+cmd_pair_passive:
+	set0 op_inrand_req,pdata
+	store 1,mem_op
+	call lmp_accept_inrand
+	setarg 0
+	setflag master,smap_lmptid,pdata		
+	store 1,mem_lmo_tid2
+	branch cmd_exit
+	rtn
+cmd_in_sniff:
+	jam LMP_SNIFF_REQ,mem_lmo_opcode2
+	arg mem_sniff_payload,contw
+	setarg 0
+	isolate1 27,clke_bt
+	setflag true,1,pdata		/* use init 2 if bit27 of clke is 1 */
+	istore 1,contw	
+	setarg 0	/* dsniff */
+	istore 2,contw
+	fetch 2,mem_sniff_param_interval	/* tsniff */
+	istore 2,contw
+	fetch 1,mem_sniff_param_attempt	/* attempt */
+	istore 2,contw
+	fetch 1,mem_sniff_param_timeout	/* timeout */
+	istore 2,contw
+	branch cmd_exit
+	
+cmd_exit_sniff:
+	jam LMP_UNSNIFF_REQ,mem_lmo_opcode2
+	branch cmd_exit
+
+hci_idle_dispatch:
+	call gpio_check_uart_state
+	rtn true
+	arg UART_WAKEUP_RX,temp
+	call gpio_get_bit
+	nbranch uart_wake_up,true
+	jam HCI_RX_WAKE,mem_hci_lt_rx_state
+	rtn
+uart_wake_up:
+	fetch 1,mem_hci_lt_rx_state
+	rtnne HCI_RX_WAKE
+	call hci_exit_lpm
+	branch hci_send_commu_ready_event
+	
+	
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/hid.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/hid.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/hid.prog	(working copy)
@@ -0,0 +1,84 @@
+/**
+* the following API is to send the HID data
+* 
+*/
+
+/**
+* the following API is to process the hid  rx data
+* 
+*/
+//handle the hid data
+
+hid_rx_process:
+	bpatchx patch20_5,mem_patch20
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	ifetch 1,contr
+	and pdata,0x0f,temp
+	rshift4 pdata,pdata //hidtype
+	beq hid_type_set_idle,hid_rx_process_handshake
+	beq hid_type_set_protocol,hid_rx_process_handshake
+	beq hid_type_data,hid_rx_process_data
+	beq HID_TYPE_SET_REPORT,hid_rx_process_set_report
+	beq HID_TYPE_CONTROL,hid_rx_process_hid_control
+	rtn
+
+hid_rx_process_hid_control:
+	copy temp,pdata
+	beq HID_CONTROL_P_VIRTUALCABLEUNPLUG,hid_rx_process_virtual_cable_unplug
+	beq HID_CONTROL_P_SUSPEND,hid_rx_process_suspend
+	rtn
+	
+hid_rx_process_virtual_cable_unplug:
+	jam BT_EVT_VIRTUAL_CABLE_UNPLUG,mem_fifo_temp
+	call ui_ipc_send_event
+	fetch 1,mem_device_option
+	rtnbit0 dvc_op_mouse
+	copy temp,pdata
+	beq HID_CONTROL_P_VIRTUALCABLEUNPLUG,mouse_irtual_cable_unplug
+	rtn
+hid_rx_process_suspend:
+	rtn
+
+hid_rx_process_set_report:
+	call hid_rx_process_data
+	arg 0x01,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_ctrl_remote_cid
+	istore 2,contw
+	setarg 0x00
+	istore 1,contw
+	rtn
+
+hid_rx_process_handshake:
+	arg 1,regA//payload length
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_ctrl_remote_cid
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	jam 1,mem_ui_data_txbuff_length
+	fetch 1,mem_hid_control_state
+	set1 l2cap_channel_hid_handshake_done
+	store 1,mem_hid_control_state
+	jam BT_EVT_HID_HANDSHAKE,mem_fifo_temp
+	branch ui_ipc_send_event
+
+hid_rx_process_data:
+	ifetch 1,contr
+	beq HID_REPORT_ID_KB,hid_rx_process_data_hid_kb
+	rtn
+
+hid_rx_process_data_hid_kb:
+	rtn
+
+	
+hid_malloc_tx_buff:
+	call l2cap_malloc
+	copy rega,temp
+	storet 1,mem_ui_data_txbuff_length
+	copy pdata,contw
+	copy rega,pdata
+	istore 2,contw //hid payload length
+	rtn
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/kscan_peipherals.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/kscan_peipherals.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/kscan_peipherals.prog	(working copy)
@@ -0,0 +1,152 @@
+
+
+
+ifdef COMPILE_KEYSCAN
+/****************************************key scan***************************************/
+/******the key_scan use explain******
+
+* First:call kscan_init
+* Second:call kscan_main
+* Finally: the key scanning reault is mem_kscan_value.
+
+******
+***************************************************************************************
+*/
+kscan_init:  
+	fetch 2,mem_kscan_ptr
+	copy pdata,regc
+	call kscan_row_num_select
+	branch kscan_col_num_select
+
+kscan_col_init:
+	setarg 0
+	add regc,KEYSCAN_OFFECT_SHIFT_COUNT,rega
+	istore 1,rega
+	add regc,KEYSCAN_OFFECT_COL_NUM,rega
+	ifetch 1,rega
+	branch kscan_value_init,blank
+	copy pdata,loopcnt
+	add regc,KEYSCAN_OFFECT_COL_CONF_PIN,regb
+kscan_col_loop: 
+	ifetcht 1, regb
+	call gpio_config_output
+	ifetcht 1, regb
+	call gpio_out_active
+	call kscan_value_init             
+	ifetcht 1,regb
+	call gpio_config_input
+	increase 1,regb
+	loop kscan_col_loop
+	rtn  
+kscan_row_num_select:          
+	add regc,KEYSCAN_OFFECT_ROW_NUM,contw
+	ifetch 1,contw 
+	rtn blank
+	copy pdata,loopcnt
+	add regc,KEYSCAN_OFFECT_ROW_CONF_PIN,rega
+	branch kscan_ioselect_input   
+kscan_col_num_select:           
+	add regc,KEYSCAN_OFFECT_COL_NUM,contw
+	ifetch 1,contw 
+	rtn blank
+	copy pdata,loopcnt
+	add regc,KEYSCAN_OFFECT_COL_CONF_PIN,rega
+	branch kscan_ioselect_input
+kscan_ioselect_input: 
+	ifetcht 1,rega
+	call gpio_config_input 
+	increase 1,rega
+	loop kscan_ioselect_input
+	rtn
+kscan_value_init:
+	setarg 0
+	add regc,KEYSCAN_OFFECT_ROW_COUNT,rega
+	istore 1,rega
+	add regc,KEYSCAN_OFFECT_ROW_CONF_PIN,rega
+kscan_save_vaule:
+	ifetcht 1,rega       
+	call gpio_get_bit   
+	add regc,KEYSCAN_OFFECT_VALUE_TEMP,temp
+	ifetch 2,temp
+ 	add regc,KEYSCAN_OFFECT_SHIFT_COUNT,contr
+	ifetcht 1,contr
+	copy temp,queue
+	qsetflag true,pdata
+
+	add regc,KEYSCAN_OFFECT_VALUE_TEMP,temp
+ 	istore 2,temp
+	increase 1,rega
+    
+	add regc,KEYSCAN_OFFECT_SHIFT_COUNT,contw
+	ifetch 1,contw 
+	increase 1,pdata
+	istore 1,contw
+    
+	add regc,KEYSCAN_OFFECT_ROW_COUNT,contw
+	ifetcht 1,contw 
+	increase 1,temp
+	istoret 1,contw
+	add regc,KEYSCAN_OFFECT_ROW_NUM,contw
+	ifetch 1,contw 
+	ixor temp,null  
+	nbranch kscan_save_vaule,zero
+	rtn       
+	
+	
+kscan_lpm_berfore:
+	fetch 2,mem_kscan_ptr
+	copy pdata,regc
+ 	add regc,KEYSCAN_OFFECT_ROW_NUM,contw
+ 	ifetch 1,contw 
+	copy pdata,loopcnt
+	add regc,KEYSCAN_OFFECT_COL_CONF_PIN,rega
+kscan_select_wake:    
+	ifetcht 1,rega
+	call gpio_set_wake   
+	increase 1,rega
+	loop kscan_select_wake
+	rtn
+
+kscan_clkn_bt_timer_check:
+	ifetcht 4,rega
+	copy clkn_bt,pdata
+	isub temp,null
+	rtn positive
+	setarg 0
+	istore 4,rega
+	rtn
+
+kscan_process:
+	fetch 2,mem_kscan_ptr
+	copy pdata,regc
+	add regc,KEYSCAN_OFFECT_BTCLK,rega
+	call kscan_clkn_bt_timer_check
+	ifetch 4,rega
+	add regc,KEYSCAN_OFFECT_BTCLK_INTERVAL,regb
+	ifetcht 1,regb
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	istore 4,rega
+	call kscan_col_init  
+	add regc,KEYSCAN_OFFECT_VALUE_TEMP,rega
+	ifetch 2,rega
+	add regc,KEYSCAN_OFFECT_LASVALUE,rega
+	ifetcht 2,rega
+	istore 2,rega
+	iand temp,pdata
+	add regc,KEYSCAN_OFFECT_VALUE,rega    
+	istore 2,rega 
+	rtn  
+
+endif
+	
+	
+
+
+
+	
+    
+	
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/l2cap.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/l2cap.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/l2cap.prog	(working copy)
@@ -0,0 +1,1929 @@
+/************************************/
+/*initialize L2CAP related variables*/
+/************************************/
+l2cap_init:
+	branch l2cap_init_wake,wake
+l2cap_init_work:
+	setarg mem_l2cap_xmem_end
+	arg mem_l2cap_xmem_start,contw
+	isub contw,loopcnt
+	call clear_mem
+l2cap_init_wake:	
+	bpatchx patch20_6,mem_patch20
+	setarg mem_sdp_mem_end
+	arg mem_sdp_mem_start,contw
+	isub contw,loopcnt
+	call clear_mem
+	setarg mem_l2cap_mem_end
+	arg mem_l2cap_mem_start,contw
+	isub contw,loopcnt
+	call clear_mem
+	branch l2cap_lpm_load_txbuf
+	
+process_rx_l2cap_pkt:
+	bpatchx patch20_7,mem_patch20
+	copy contr,temp
+	//call l2cap_malloc_is_fifo_full
+	//nrtn blank
+	copy temp,contr
+	ifetch 2,contr
+	store 2,mem_l2cap_rx_pkt_length
+	ifetch 2,contr
+	store 2,mem_l2cap_rx_cid
+	deposit contr
+	store 2,mem_l2cap_payload_ptr
+	fetch 1,memui_reconnect_mode
+	beq NO_RECONNECTION,l2cap_rx_multiplexing
+	branch ml2cap_rx_multiplexing
+
+l2cap_rx_multiplexing:
+	fetch 2, mem_l2cap_rx_pkt_length
+	branch l2cap_rx_reset_state,blank
+	bpatchx patch21_0,mem_patch21
+	fetch 1,mem_l2cap_rx_cid
+	beq L2CAP_signal_channel,l2cap_call_proc_signal
+l2cap_rx_multiplexing0:
+	beq L2CAP_SDP_channel,l2cap_call_proc_sdp
+	beq L2CAP_RFCOMM_channel,l2cap_call_proc_rfcomm
+	beq L2CAP_HID_Control_channel,l2cap_call_proc_hid
+	beq L2CAP_HID_Interrupt_channel,l2cap_call_proc_hid
+	branch l2cap_rx_reset_state
+
+l2cap_check_map:
+//	call l2cap_malloc_is_fifo_full
+//	nrtn blank
+	bpatchx patch21_1,mem_patch21
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	beq 0,set_pdata_0
+	beq 1,set_pdata_0
+	beq 2,set_pdata_0
+	beq 3,set_pdata_0
+	beq 0x81,set_pdata_0
+	beq 0xc0,set_pdata_0
+	beq 0x80,set_pdata_0
+	beq 0x40,set_pdata_0
+	rtn
+
+set_pdata_0:
+	setarg 0
+	rtn
+
+
+l2cap_call_proc_signal:
+	call l2cap_check_map
+	nrtn blank
+l2cap_call_proc_signal0:
+	call l2cap_malloc_signal_channel
+	call l2cap_process_signal_pkt
+	fetcht 2,mem_l2cap_signal_tx_length
+	branch l2cap_call_proc_no_reply,blank
+	call l2cap_get_signal_tx_buff
+	fetch 2,mem_l2cap_signal_tx_length
+	istore 2,contw
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	branch l2cap_rx_reset_state
+	
+l2cap_call_proc_sigal_pending:
+	fetch 1,mem_l2cap_pending_item
+	rtn blank
+	copy pdata,rega
+	bpatchx patch21_2,mem_patch21
+	fetch 4,mem_l2cap_sdpres_delay_time
+	arg 0x100,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	jam 0,mem_l2cap_pending_item
+	copy rega,pdata
+	beq L2CAP_SDP_channel,l2cap_sdp_conn_succ
+	branch assert
+l2cap_sdp_conn_succ:
+	arg 0,debug
+	call l2cap_malloc_signal_channel
+	call restore_l2cap_req_param
+	call l2cap_get_signal_tx_payload
+	call save_cont_pointers
+	call send_connection_sdp_res
+	call l2cap_get_signal_tx_buff
+	//fetch 2,mem_l2cap_signal_tx_length
+	setarg 0x000c
+	istore 2,contw
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	branch l2cap_rx_reset_state
+
+
+
+l2cap_reset_sdp_map:
+	bpatchx patch21_3,mem_patch21
+	fetch 2,mem_sdp_tx_pkt_length
+	increase 4,pdata
+	rshift4 pdata,pdata
+	rshift3 pdata,pdata
+	add pdata,1,temp ///temp: how many128
+	arg mem_tx_fifo3,contr
+	ifetch 3,contr
+	rtn blank
+	store 3,mem_tx_fifo_map_temp
+	fetch 1,mem_tx_fifo_map_temp
+	copy pdata,rega
+	call check_l2cap_map
+	copy regb,pdata
+	store 1,mem_tx_fifo3
+	rtn
+
+check_l2cap_map:
+	arg 0,queue
+	arg 0,regb
+
+check_l2cap_map_loop:
+	sub queue,7,null
+	nrtn positive
+	qisolate1 rega
+	branch check_l2cap_map_used,true
+	branch check_l2cap_map_used2
+
+check_l2cap_map_used:
+	copy temp,pdata
+	branch check_l2cap_map_used2,blank
+	qset1 regb
+	increase -1,temp
+
+check_l2cap_map_used2:
+	increase 1,queue
+	branch check_l2cap_map_loop
+
+l2cap_call_proc_sdp:
+	call l2cap_malloc_is_fifo_empty
+	nrtn blank// not process this packet until fifo empty
+	call l2cap_check_map
+	nrtn blank
+	call l2cap_malloc_sdp_channel
+	call sdp_process
+	call l2cap_reset_sdp_map
+	branch l2cap_call_proc_sdp_common
+
+	
+ml2cap_call_proc_sdp:
+	call l2cap_malloc_is_fifo_empty
+	nrtn blank// not process this packet until fifo empty
+	call l2cap_malloc_sdp_channel
+	call sdp_process
+l2cap_call_proc_sdp_common:
+	call l2cap_get_sdp_tx_buff
+	fetch 2,mem_sdp_tx_pkt_length
+	branch l2cap_call_proc_no_reply,blank
+	istore 2,contw
+	fetch 2,mem_sdp_remote_cid
+	istore 2,contw
+	branch l2cap_rx_reset_state
+
+l2cap_call_proc_hid:
+	call hid_rx_process
+	branch l2cap_rx_reset_state
+
+l2cap_call_proc_rfcomm:
+	bpatchx patch21_4,mem_patch21
+	jam RFCOMM_MALLOC_SUCCEED,mem_rfcomm_malloc_fail_flag
+	call rfcomm_rx_process
+	fetch 1,mem_rfcomm_malloc_fail_flag
+	rtneq RFCOMM_MALLOC_FAIL
+	branch l2cap_rx_reset_state
+l2cap_call_proc_no_reply:
+	call l2cap_malloc_discard
+	//fall through
+l2cap_rx_reset_state:
+	setarg 0
+	store 2,mem_l2cap_rx_pkt_length
+	store 2,mem_l2cap_rx_cid
+	jam L2CAP_RX_DONE,mem_l2cap_rx_done
+	rtn
+/* To process one L2CAP signalling pkt consisting of 1 or more signalling commands.	*/
+l2cap_process_signal_pkt:
+	bpatchx patch21_5,mem_patch21
+	call l2cap_get_signal_tx_payload
+	force 0,regB
+	fetch 2,mem_l2cap_rx_pkt_length
+	copy pdata,regC
+	fetch 2,mem_l2cap_payload_ptr
+	iforce contr
+l2cap_process_signal_pkt_loop:
+	call l2cap_process_one_signal
+	deposit regC
+	increase -4,regC
+	increase -4,pdata
+	nbranch l2cap_process_signal_pkt_loop,blank
+	copy regB,pdata
+	store 2,mem_l2cap_signal_tx_length
+	rtn
+
+l2cap_process_one_signal:
+	bpatchx patch21_6,mem_patch21
+	ifetch 1,contr
+	beq signal_cmd_reject,l2cap_proc_signal_cmd_reject
+	beq signal_connect_req,l2cap_proc_signal_connect_req
+	beq signal_connect_rsp,l2cap_proc_signal_connect_rsp
+	beq signal_config_req,l2cap_proc_signal_config_req
+	beq signal_config_rsp,l2cap_proc_signal_config_rsp
+	beq signal_disconnect_req,l2cap_proc_signal_disconnect_req
+	beq signal_disconnect_rsp,l2cap_proc_signal_disconnect_rsp
+	beq signal_echo_req,l2cap_proc_signal_echo_req
+	beq signal_echo_rsp,l2cap_proc_signal_echo_rsp
+	beq signal_info_req,l2cap_proc_signal_info_req
+	beq signal_info_rsp,l2cap_proc_signal_info_rsp
+	call l2cap_reject_command
+l2cap_process_one_signal_rtn:
+	rtn
+
+l2cap_proc_signal_info_req:
+	ifetch 1,contr //IDs
+	copy pdata,queue
+	ifetch 2,contr //length
+	copy pdata,rega
+	copy regc,pdata
+	isub rega,regc
+	setarg signal_info_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1, contw
+	ifetch 2,contr 
+l2cap_proc_signal_info_req_reply:
+	beq L2CAP_SIG_EXT_FEATRUE,l2cap_proc_signal_info_req_ext
+	beq L2CAP_SIG_FIX_FEATRUE,l2cap_proc_signal_info_req_fix
+	rtn
+l2cap_proc_signal_info_req_ext:
+	setarg 0x020008
+	istore 6, contw
+	setarg 0x0280
+	istore 4, contw
+	force 12,pdata
+	branch l2cap_proc_signal_info_req_common
+l2cap_proc_signal_info_req_fix:
+	setarg 0x3000c
+	istore 6, contw
+	setarg 0x0006
+	istore 8, contw
+	force 16,pdata
+l2cap_proc_signal_info_req_common:
+	iadd regb,regb
+	branch l2cap_process_one_signal_rtn
+	
+ml2cap_proc_signal_info_req:
+	ifetch 1,contr //IDs
+	copy pdata,queue
+	ifetch 2,contr //length
+	copy pdata,rega
+	ifetch 2,contr
+	store 2,mem_temp
+	copy regc,pdata
+	isub rega,regc 
+	call l2cap_get_signal_tx_payload
+	setarg signal_info_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw 
+	fetch 2,mem_temp
+	branch l2cap_proc_signal_info_req_reply
+
+
+/*  Respond to the command reject signal sent from the remote BD.   */
+l2cap_proc_signal_cmd_reject:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	iadd contr,contr
+	copy regC,pdata
+	isub regA,regC
+l2cap_proc_signal_cmd_reject_rtn:
+	branch l2cap_process_one_signal_rtn
+/* Respond to an L2CAP connection request from remote BD. (generate a connection_rsp)	*/
+l2cap_proc_signal_connect_req:
+	call save_cont_pointers
+	//fetch 6,mem_inquiry_bd_addr
+  	//store 6,mem_master_paged_bd_addr
+  	call load_cont_pointers
+	arg 0,debug
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,temp //PSM
+	ifetch 2,contr
+	copy pdata,timeup
+	bpatchx patch21_7,mem_patch21
+	copy temp,pdata
+	beq PSM_SDP,l2cap_proc_signal_connect_req_sdp
+	beq PSM_RFCOMM,l2cap_proc_signal_connect_req_rfcomm
+	beq PSM_HID_control,l2cap_proc_signal_connect_req_hid_ctrl
+	beq PSM_HID_interrupt,l2cap_proc_signal_connect_req_hid_int
+	call l2cap_reject_command
+	branch l2cap_proc_signal_connect_req_rtn
+
+l2cap_proc_signal_connect_req_sdp:
+	call save_cont_pointers
+	arg L2CAP_SDP_channel,temp
+	fetch 2,mem_sdp_remote_cid
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_sdp_remote_cid
+	copy clkn_bt,pdata
+	store 4,mem_l2cap_sdpres_delay_time
+	call store_l2cap_req_param
+	branch  send_connection_pending
+
+store_l2cap_req_param:
+	storet 2,mem_psm
+	deposit timeup
+	store 2,mem_scid
+	deposit rega
+	store 2,mem_cmd_length
+	deposit regb
+	store 2,mem_tt2
+	deposit regc
+	store 2,mem_tt3
+	deposit queue
+	store 2,mem_id
+	rtn
+
+restore_l2cap_req_param:
+	fetcht 2,mem_psm
+	fetch 2,mem_scid
+	copy pdata,timeup
+	fetch 2,mem_cmd_length
+	copy pdata,rega
+	fetch 2,mem_tt2
+	copy pdata,regb
+	fetch 2,mem_tt3
+	copy pdata,regc
+	fetch 2,mem_id
+	copy pdata,queue
+	rtn
+
+l2cap_proc_signal_connect_req_rfcomm:
+	call save_cont_pointers
+	setarg L2CAP_RFCOMM_channel
+	arg L2CAP_RFCOMM_channel,temp
+	fetch 2,mem_RFCOMM_remote_CID
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_RFCOMM_remote_CID
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_rfcomm_state
+	branch send_connection_res
+l2cap_proc_signal_connect_req_hid_ctrl:
+	call save_cont_pointers
+	arg L2CAP_HID_Control_channel,temp
+	fetch 2,mem_hid_ctrl_remote_cid
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_hid_ctrl_remote_cid
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_control_state
+	branch send_connection_res
+l2cap_proc_signal_connect_req_hid_int:
+	call save_cont_pointers
+	deposit clke
+	arg L2CAP_HID_Interrupt_channel,temp
+	fetch 2,mem_hid_int_remote_cid
+	nbranch already_connected,blank
+	copy timeup,pdata
+	store 2,mem_hid_int_remote_cid
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_interrupt_state
+	branch send_connection_res
+
+send_connection_pending:
+	setarg L2CAP_connect_pending
+	store 2,memL2CAP_T1
+	jam L2CAP_SDP_channel,mem_l2cap_pending_item
+	branch send_connection_res0
+send_connection_sdp_res:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_sdp_state
+send_connection_res:
+	setarg L2CAP_connect_successful
+	store 2,memL2CAP_T1
+send_connection_res0:
+	bpatchx patch22_0,mem_patch22
+	call load_cont_pointers
+	setarg signal_connect_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0008
+	istore 2,contw
+	copy temp,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	fetch 2,memL2CAP_T1
+	beq L2CAP_connect_pending,connect_pending
+	isolate0 0,debug
+	branch connect_suc,true
+	setarg L2CAP_connect_refused_no_resources
+connect_suc:
+	istore 2,contw
+	force 0x0000,pdata
+	istore 2,contw
+	setarg 12
+	branch connect_req_update_byte_counts
+connect_pending:
+	istore 2,contw
+	force 0x0002,pdata
+	istore 2,contw
+	setarg 12
+	branch connect_req_update_byte_counts
+	
+already_connected:
+	set1 0,debug
+	branch send_connection_res
+connect_req_update_byte_counts:
+	iadd regB,regB
+	copy regC,pdata
+	isub regA,regC
+	branch l2cap_proc_signal_connect_req_rtn
+l2cap_proc_signal_connect_req_rtn:
+	branch l2cap_process_one_signal_rtn
+
+l2cap_proc_signal_connect_rsp:
+	ifetch 1,contr //identifier
+	copy pdata,queue
+	ifetch 2,contr //length
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr //remote cid
+	copy pdata,timeup
+	ifetch 2,contr //local cid
+	copy pdata,temp
+	bpatchx patch22_1,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_connect_rsp_hid_int,zero
+	rtn
+
+l2cap_proc_signal_connect_rsp_sdp:
+	copy timeup,pdata
+	store 2,mem_sdp_remote_cid
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_sdp_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_connect_rsp_rfcomm:
+	copy timeup,pdata
+	store 2,mem_rfcomm_remote_CID
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_rfcomm_state
+	rtn
+l2cap_proc_signal_connect_rsp_hid_int:
+	copy timeup,pdata
+	store 2,mem_hid_ctrl_remote_cid
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_interrupt_state
+	rtn
+l2cap_proc_signal_connect_rsp_hid_ctrl:
+	copy timeup,pdata
+	store 2,mem_hid_int_remote_cid
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	store 1,mem_hid_control_state
+	rtn
+
+l2cap_proc_signal_config_req:
+	ifetch 1,contr//identifier
+	copy pdata,queue
+	ifetch 2,contr//length
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr//dest cid
+	copy pdata,temp
+	copy temp,regA
+	bpatchx patch22_2,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_config_req_hid_int,zero
+	branch l2cap_reject_command
+	//branch L2CAP_proc_signal_config_req_rtn
+l2cap_proc_signal_config_req_sdp:
+	copy contw, timeup
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_sdp_state
+	copy timeup,contw
+	arg L2CAP_SDP_channel,timeup
+	fetch 2,mem_sdp_remote_cid
+	copy pdata,temp
+	branch l2cap_send_config_rsp
+l2cap_proc_signal_config_req_hid_ctrl:
+	copy contw, timeup
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_control_state
+	copy timeup,contw
+	arg L2CAP_HID_Control_channel,timeup
+	fetch 2,mem_hid_ctrl_remote_cid
+	copy pdata,temp
+	branch l2cap_send_config_rsp
+l2cap_proc_signal_config_req_hid_int:
+	copy contw, timeup
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_interrupt_state
+	copy timeup,contw
+	arg L2CAP_HID_Interrupt_channel,timeup
+	fetch 2,mem_hid_int_remote_cid
+	copy pdata,temp
+	branch l2cap_send_config_rsp
+l2cap_proc_signal_config_req_rfcomm:
+	copy contw, timeup
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	//set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_rfcomm_state
+//	jam UPPERSM_RP_SDP_CONN,mem_upper_sm_remote_page
+	copy timeup,contw
+	arg L2CAP_RFCOMM_channel,timeup
+	fetch 2,mem_RFCOMM_remote_CID
+	copy pdata,temp
+l2cap_send_config_rsp:
+	bpatchx patch22_3,mem_patch22
+	setarg  signal_config_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0006
+	istore 2,contw
+	copy temp,pdata
+	istore 2,contw
+	force 0x00,pdata
+	istore 2,contw
+	force L2CAP_config_success,pdata
+	istore 2,contw
+	force 10,pdata
+	iadd regB,regB
+	//copy temp,pdata
+	storet 2,mem_config_req_dest_CID
+	copy queue,pdata
+	store 1,mem_config_identifier
+	force L2CAP_SDP_channel,pdata
+	icompare 0xff,timeup
+	branch l2cap_send_config_rsp_is_sdp,true
+	increase 1,pdata
+l2cap_send_config_rsp_is_sdp:
+	//store 1,mem_send_config_req
+	rtn
+l2cap_check_channel_state:
+	disable user
+	rtnbit1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	copy contr,contw
+	increase -1,contw
+	istore 1,contw
+	enable user
+	rtn
+l2cap_send_config_req:
+l2cap_send_config_req_sdp:
+	fetch 1,mem_sdp_state
+	call l2cap_check_channel_state
+	nbranch l2cap_send_config_req_rfcomm,user
+	jam L2CAP_SDP_channel,mem_send_config_req
+	fetch 2,mem_sdp_remote_cid
+	store 2,mem_config_req_dest_CID
+	branch l2cap_generate_config_req
+l2cap_send_config_req_rfcomm:
+	fetch 1,mem_rfcomm_state
+	call l2cap_check_channel_state
+	nbranch l2cap_send_config_req_hid_ctrl,user
+	jam L2CAP_RFCOMM_channel,mem_send_config_req
+	fetch 2,mem_RFCOMM_remote_CID
+	store 2,mem_config_req_dest_CID
+	branch l2cap_generate_config_req
+l2cap_send_config_req_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	call l2cap_check_channel_state
+	nbranch l2cap_send_config_req_hid_int,user
+	jam L2CAP_HID_Control_channel,mem_send_config_req
+	fetch 2,mem_hid_ctrl_remote_cid
+	store 2,mem_config_req_dest_CID
+	branch l2cap_generate_config_req
+l2cap_send_config_req_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	call l2cap_check_channel_state
+	nrtn user//End of sending config req
+	jam L2CAP_HID_Interrupt_channel,mem_send_config_req
+	fetch 2,mem_hid_int_remote_cid
+	store 2,mem_config_req_dest_CID
+	//branch L2CAP_generate_config_req
+
+l2cap_generate_config_req:
+	bpatchx patch22_4,mem_patch22
+	call l2cap_get_req_id
+	call l2cap_malloc_signal_channel
+	force 0,regB
+	call l2cap_get_signal_tx_payload
+	force signal_config_req,pdata
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0008
+	istore 2,contw
+	fetch 2,mem_config_req_dest_CID
+	istore 2,contw
+	setarg 0x0000
+	istore 2,contw
+	force 1,pdata
+	istore 1,contw
+	force 2,pdata
+	istore 1,contw
+	fetch 1,mem_send_config_req
+	beq L2CAP_RFCOMM_channel,l2cap_generate_config_req_rfcomm
+	setarg L2CAP_config_MTU_SDP
+	istore 2,contw
+	branch l2cap_generate_config_req_done
+l2cap_generate_config_req_rfcomm:
+	setarg L2CAP_config_MTU_RFCOMM
+	istore 2,contw
+l2cap_generate_config_req_done:
+	arg 0x0c,temp
+	storet 2,mem_l2cap_signal_tx_length
+	call l2cap_get_signal_tx_buff
+	fetch 2,mem_l2cap_signal_tx_length
+	istore 2,contw
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	jam 0,mem_send_config_req
+l2cap_proc_signal_config_req_rtn:
+	branch l2cap_process_one_signal_rtn
+
+l2cap_proc_signal_config_rsp:
+	increase 1,contr
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr //source cid
+	copy pdata,regA
+	bpatchx patch22_5,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub rega,null
+	branch l2cap_proc_signal_config_rsp_hid_int,zero
+	increase 2,contr
+	ifetch 2,contr
+	iforce null
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_sdp:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_sdp_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_rfcomm:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_rfcomm_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_hid_control_state
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_config_rsp_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES,pdata
+	store 1,mem_hid_interrupt_state
+	jam BT_EVT_HID_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+
+
+l2cap_proc_signal_disconnect_req:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,timeup
+	copy regA,temp
+	call save_cont_pointers
+	bpatchx patch22_6,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_req_hid_int,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_proc_signal_disconnect_req_hid_ctrl:
+	copy timeup,temp
+	fetch 2,mem_hid_ctrl_remote_cid
+	isub temp,null
+	branch l2cap_disconnect_hid_control_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_proc_signal_disconnect_req_hid_int:
+	copy timeup,temp
+	fetch 2,mem_hid_int_remote_cid
+	isub temp,null
+	branch l2cap_disconnect_hid_interrupt_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+
+l2cap_proc_signal_disconnect_req_sdp:
+	copy timeup,temp
+	fetch 2,mem_sdp_remote_cid
+	isub temp,null
+	branch l2cap_disconnect_sdp_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_disconnect_hid_control_now:
+	call l2cap_reset_hid_ctrl_state
+	branch l2cap_send_disconnect_rsp_pkt
+l2cap_disconnect_hid_interrupt_now:
+	call l2cap_reset_hid_int_state
+	fetch 2, mem_hid_ctrl_remote_cid
+	branch l2cap_send_disconnect_rsp_pkt, blank
+	//set the flag,hid channel close
+	//should we set here?
+	//call HID_mem_lock
+	//fetch 1, mem_hid_cb1
+	//set1 HID_CB_APP_HID_DISCONNECTED,pdata
+	//store 1, mem_hid_cb1
+	//call HID_mem_unlock
+	branch l2cap_send_disconnect_rsp_pkt
+
+l2cap_disconnect_sdp_now:
+	call l2cap_reset_sdp_channel_state
+	fetch 1,mem_upper_sm_ss
+	nbranch l2cap_send_disconnect_rsp_pkt,blank
+	//jam LMP_ENCRYPTION_MODE_REQ,mem_lmo_opcode2
+	//jam UPPERSM_RP_SDP_CONN,mem_upper_sm_remote_page
+	branch l2cap_send_disconnect_rsp_pkt
+l2cap_proc_signal_disconnect_req_rfcomm:
+	copy timeup,temp
+	fetch 2, mem_RFCOMM_remote_CID
+	isub temp,null
+	branch l2cap_disconnect_rfcomm_now,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_req_err_rtn
+l2cap_disconnect_rfcomm_now:
+	call l2cap_reset_rfcomm_channel_state
+	branch l2cap_send_disconnect_rsp_pkt
+l2cap_send_disconnect_rsp_pkt:
+	call load_cont_pointers
+	setarg signal_disconnect_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy regA,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	force 8,pdata
+	branch l2cap_proc_signal_disconnect_req_rtn
+l2cap_proc_signal_disconnect_req_err_rtn:
+	call load_cont_pointers
+	branch l2cap_proc_signal_disconnect_req_rtn
+l2cap_proc_signal_disconnect_req_rtn:
+	iadd regB,regB
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_disconnect_rsp:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr
+	copy pdata,timeup
+	ifetch 2,contr
+	copy pdata,temp
+	call save_cont_pointers
+	bpatchx patch22_7,mem_patch22
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch l2cap_proc_signal_disconnect_rsp_hid_int,zero
+	call l2cap_reject_command
+	branch l2cap_proc_signal_disconnect_rsp_err_rtn
+l2cap_proc_signal_disconnect_rsp_sdp:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_sdp_remote_cid
+	isub temp,null
+	call l2cap_reset_sdp_channel_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_rfcomm:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_rfcomm_remote_CID
+	isub temp,null
+	call l2cap_reset_rfcomm_channel_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_hid_ctrl_remote_cid
+	isub temp,null
+	call  l2cap_reset_hid_ctrl_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_hid_int:
+	copy temp,regA
+	copy timeup,temp
+	fetch 2,mem_hid_int_remote_cid
+	isub temp,null
+	call l2cap_reset_hid_int_state,zero
+	branch l2cap_proc_signal_disconnect_rsp_rtn
+l2cap_proc_signal_disconnect_rsp_rtn:
+	call load_cont_pointers
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_disconnect_rsp_err_rtn:
+	branch l2cap_process_one_signal_rtn
+
+/* received an echo request from remote BD.  Will echo the 1st 1 byte back,		*/
+l2cap_proc_signal_echo_req:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	iadd contr,contr
+	setarg 9
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	force 0x0000,pdata
+	istore 2,contw
+	force 4,pdata
+	iadd regB,regB
+	copy regC,pdata
+	isub regA,regC
+	branch l2cap_process_one_signal_rtn
+l2cap_proc_signal_echo_rsp:
+	branch l2cap_process_one_signal_rtn
+
+l2cap_proc_signal_info_rsp:
+	branch l2cap_process_one_signal_rtn
+l2cap_reject_command:
+	force 0,regB
+	call l2cap_get_signal_tx_payload
+	setarg signal_cmd_reject
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 2
+	istore 2,contw
+	setarg cmd_not_understood
+	istore 2,contw
+	increase 6,regB
+	arg 4,regC
+	branch l2cap_process_one_signal_rtn
+
+
+
+l2cap_reset_rfcomm_channel_state:
+	setarg 0
+	store 2,mem_RFCOMM_Tx_pkt_length
+	store 2,mem_RFCOMM_remote_CID
+	jam 0,mem_rfcomm_state
+	rtn
+l2cap_reset_sdp_channel_state:
+	setarg 0
+	store 2,mem_sdp_tx_pkt_length
+	store 2,mem_sdp_remote_cid
+	jam 0,mem_sdp_state
+	rtn
+l2cap_reset_hid_ctrl_state:
+	setarg 0
+	store 2,mem_hid_ctrl_remote_cid
+	jam 0,mem_hid_control_state
+	fetch 1,mem_hid_interrupt_state
+	beq 0,l2cap_reset_hid_disconnected
+	rtn
+
+l2cap_reset_hid_int_state:
+	setarg 0
+	store 2,mem_hid_int_remote_cid
+	jam 0,mem_hid_interrupt_state
+	fetch 1,mem_hid_control_state
+	beq 0,l2cap_reset_hid_disconnected
+	rtn
+	
+l2cap_reset_hid_disconnected:
+	jam BT_EVT_HID_DISCONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event	
+
+l2cap_disconnect_interrupt_req:
+	fetch 1,mem_CONTROL_tasks
+	set0  L2CAP_DISCONNECT_INTERRUPT, pdata
+	store 1,mem_CONTROL_tasks
+	fetch 2, mem_hid_int_remote_cid
+	rtn blank
+	call l2cap_malloc_signal_channel
+	fetch 2, mem_hid_int_remote_cid
+	copy pdata,regA
+	force L2CAP_HID_Interrupt_channel,regB
+	branch l2cap_generate_disconnect_req
+l2cap_disconnect_control_req:
+	fetch 1,mem_CONTROL_tasks
+	set0  L2CAP_DISCONNECT_CONTROL, pdata
+	store 1,mem_CONTROL_tasks
+	fetch 2, mem_hid_ctrl_remote_cid
+	rtn blank
+	call l2cap_malloc_signal_channel
+	fetch 2, mem_hid_ctrl_remote_cid
+	copy pdata,regA
+	force L2CAP_HID_Control_channel,regB
+l2cap_generate_disconnect_req:
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	force signal_disconnect_req,pdata
+	istore 1,contw
+	fetch  1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy regA,pdata
+	istore 2,contw
+	copy regB,pdata
+	istore 2,contw
+	force 0x08,temp //signal tx length in temp
+	branch ml2cap_send_signal
+
+ml2cap_send_signal_connect_req:
+	bpatchx patch23_0,mem_patch23
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	setarg signal_connect_req
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy temp,pdata	 //PSM
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	arg 8,temp
+	branch ml2cap_send_signal
+ml2cap_send_signal_config_req:
+	bpatchx patch23_1,mem_patch23
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	setarg signal_config_req
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	istore 1,contw
+	setarg 0x0008
+	istore 2,contw
+	/****modigy for nokia*****/
+	copy temp,pdata
+	/*setarg 0x0040*/
+	istore 2,contw
+	setarg 0x0000
+	istore 2,contw
+	setarg 0x01
+	istore 1,contw
+	setarg 0x02
+	istore 1,contw
+	setarg L2CAP_config_MTU_RFCOMM
+	istore 2,contw
+	arg 0xc,temp
+	branch ml2cap_send_signal
+ml2cap_send_signal_disconn_req:
+	bpatchx patch23_2,mem_patch23
+	call l2cap_get_req_id
+	call l2cap_get_signal_tx_payload
+	setarg signal_disconnect_req
+	istore 1,contw
+	fetch 1,mem_ML2CAP_comm_id
+	increase 1,pdata
+	copy contw,regA
+	store 1,mem_ML2CAP_comm_id
+	copy regA,contw
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy temp,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	arg 0x8,temp
+	//branch ml2cap_send_signal
+	//Fall through
+ml2cap_send_signal:
+	storet 2,mem_l2cap_signal_tx_length
+	copy temp,pdata
+	branch l2cap_malloc_discard,blank
+	call l2cap_get_signal_tx_buff
+	fetch 2,mem_l2cap_signal_tx_length
+	istore 2,contw //make sure that length is still in temp!
+	force L2CAP_signal_channel,pdata
+	istore 2,contw
+	rtn
+
+msdp_send_req_done:
+	fetch 2,mem_sdp_tx_pkt_length
+	branch assert,blank
+	call l2cap_get_sdp_tx_buff
+	fetch 2,mem_sdp_tx_pkt_length
+	istore 2,contw
+	fetch 2,mem_sdp_remote_cid
+	istore 2,contw
+	rtn
+ml2cap_rx_multiplexing:
+	fetch 2, mem_l2cap_rx_pkt_length
+	branch l2cap_rx_reset_state,blank
+	bpatchx patch23_3,mem_patch23
+	fetch 1,mem_l2cap_rx_cid
+	beq L2CAP_signal_channel,ml2cap_call_proc_signal
+	beq L2CAP_SDP_channel,ml2cap_call_proc_sdp
+	beq L2CAP_RFCOMM_channel,l2cap_call_proc_rfcomm
+	beq L2CAP_HID_Control_channel,l2cap_call_proc_hid
+	beq L2CAP_HID_Interrupt_channel,l2cap_call_proc_hid
+	branch l2cap_rx_reset_state
+
+ml2cap_call_proc_signal:
+	bpatchx patch23_4,mem_patch23
+	call l2cap_malloc_signal_channel
+	force 0,regB
+	call l2cap_get_signal_tx_payload
+	copy pdata,contw
+	fetch 2,mem_l2cap_rx_pkt_length
+	copy pdata,regC
+	fetch 2,mem_l2cap_payload_ptr
+	iforce contr
+ml2cap_proc_one_comm_loop:
+	call ml2cap_proc_one_comm
+	increase -4,regC
+	nbranch ml2cap_proc_one_comm_loop,zero
+	copy regB,temp
+	call ml2cap_send_signal
+	branch l2cap_rx_reset_state
+	
+ml2cap_proc_one_comm:
+	ifetch 1,contr
+	beq signal_connect_req,ml2cap_proc_signal_connect_req
+	beq signal_cmd_reject,ml2cap_proc_signal_cmd_reject
+	beq signal_connect_rsp,ml2cap_proc_signal_connect_rsp
+	beq signal_config_rsp,ml2cap_proc_signal_config_rsp
+	beq signal_config_req,ml2cap_proc_signal_config_req
+	beq signal_disconnect_rsp,ml2cap_proc_signal_disconn_rsp
+	beq signal_disconnect_req,ml2cap_proc_signal_disconn_req
+	beq signal_echo_req,l2cap_proc_signal_echo_req
+	beq signal_info_req,ml2cap_proc_signal_info_req
+	branch ml2cap_proc_send_reject
+
+ml2cap_proc_signal_connect_req:
+	call save_cont_pointers
+	//jam NO_RECONNECTION,memui_reconnect_mode
+	call load_cont_pointers
+	branch l2cap_proc_signal_connect_req
+ml2cap_proc_signal_cmd_reject:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+mvptr:
+	ifetch 1,contr
+	increase -1,regA
+	nbranch mvptr,zero
+	rtn
+ml2cap_proc_signal_connect_rsp:
+	ifetch 1,contr //id
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA	//length
+	ifetch 2,contr
+	copy pdata,timeup	//destination	cid
+	ifetch 2,contr
+	copy pdata,temp	//source	cid
+	ifetch 2,contr 		// result
+	sub pdata,0,null
+	branch ml2cap_proc_signal_connect_rsp_sucessful,zero
+	beq L2CAP_connect_refused_PSM_unsupported,ml2cap_proc_signal_connect_refused_result
+	beq L2CAP_connect_refused_no_resources,ml2cap_proc_signal_connect_refused_result
+	branch ml2cap_proc_signal_connect_rsp_mnosucc
+ml2cap_proc_signal_connect_refused_result:
+	jam BT_EVT_ML2CAP_CONN_REFUSED,mem_fifo_temp
+	call ui_ipc_send_event
+ml2cap_proc_signal_connect_rsp_mnosucc:
+	ifetch 2,contr //reason
+	branch mnosucc
+ml2cap_proc_signal_connect_rsp_sucessful:
+	call save_cont_pointers
+	//fetch 1,mem_ML2CAP_comm_id
+	//icompare 0xff,queue
+	//nbranch mnosucc1,true
+	bpatchx patch23_5,mem_patch23
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_rfcomm,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_hid_int,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch ml2cap_proc_signal_connect_rsp_hid_ctrl,zero
+	branch mnosucc
+ml2cap_proc_signal_connect_rsp_sdp:
+	copy timeup,pdata
+	store 2,mem_sdp_remote_cid
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_sdp_state
+	branch mnosucc1
+ml2cap_proc_signal_connect_rsp_rfcomm:
+	copy timeup,pdata
+	store 2,mem_RFCOMM_remote_CID
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_rfcomm_state
+	branch mnosucc1
+ml2cap_proc_signal_connect_rsp_hid_ctrl:
+	copy timeup,pdata
+	store 2,mem_hid_ctrl_remote_cid
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_hid_control_state
+	branch mnosucc1
+ml2cap_proc_signal_connect_rsp_hid_int:
+	copy timeup,pdata
+	store 2,mem_hid_int_remote_cid
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_RES
+	store 1,mem_hid_interrupt_state
+	//branch mnosucc1
+
+mnosucc1:
+	call load_cont_pointers
+mnosucc:
+	copy regC,pdata
+	isub regA,regC
+	rtn
+
+ml2cap_proc_signal_config_rsp:
+	ifetch 1,contr		//	Ident
+	copy pdata,queue
+	ifetch 2,contr		//	SigLen
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr		//	DestnCID
+	copy pdata,timeup
+	ifetch 2,contr
+	ifetch 2,contr		//	Get the result value, check success
+	nbranch mcrsdone1,blank
+	call save_cont_pointers
+	//fetch 1,mem_ML2CAP_comm_id
+	//icompare 0xff,queue
+	//nbranch mcfrsdone,true
+	copy timeup,temp
+	bpatchx patch23_6,mem_patch23
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_rsp_hid_int,zero
+ml2cap_proc_signal_config_rsp_sdp:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_sdp_state
+	rtn
+ml2cap_proc_signal_config_rsp_rfcomm:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_rfcomm_state
+	rtn
+ml2cap_proc_signal_config_rsp_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_hid_control_state
+	rtn
+ml2cap_proc_signal_config_rsp_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_RES
+	store 1,mem_hid_interrupt_state
+	jam BT_EVT_HID_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+mcfrsdone:
+	call load_cont_pointers
+mcrsdone1:
+	increase -6,regA
+mloop2:
+	branch mcrsdone,zero
+	increase 1,contr
+	increase -1,regA
+	branch mloop2
+mcrsdone:
+	rtn
+ml2cap_proc_signal_config_req:
+	ifetch 1,contr		//	Ident
+	copy pdata,queue
+	ifetch 2,contr		//	SigLen
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+	ifetch 2,contr		//	DestnCID
+	increase 2,contr
+	copy pdata,temp
+	setarg  signal_config_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	increase 2,regA
+	copy regA,pdata
+	istore 2,contw
+	call save_cont_pointers
+	bpatchx patch23_7,mem_patch23
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_rfcomm,zero
+	setarg L2CAP_HID_Control_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	isub temp,null
+	branch ml2cap_proc_signal_config_req_hid_int,zero
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_sdp:
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_sdp_state
+	bbit1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,ml2cap_proc_signal_config_req_sdp_nsndreq
+	fetcht 1,mem_CONTROL_tasks
+	set1 L2CAP_init_Config_Req,temp
+	storet 1,mem_CONTROL_tasks
+	copy queue,pdata
+	increase 1,pdata
+	store 1,mem_config_identifier
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_sdp_state
+ml2cap_proc_signal_config_req_sdp_nsndreq:
+	fetch 2,mem_sdp_remote_cid
+	store 2,mem_config_req_dest_CID
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_rfcomm:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_rfcomm_state
+	fetch 2,mem_RFCOMM_remote_CID
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_hid_ctrl:
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_hid_control_state
+	fetch 2,mem_hid_ctrl_remote_cid
+	branch mcfgrq_done
+ml2cap_proc_signal_config_req_hid_int:
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_RCV_CFG_REQ,pdata
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_RES,pdata
+	store 1,mem_hid_interrupt_state
+	fetch 2,mem_hid_int_remote_cid
+	//branch mcfgrq_done
+
+mcfgrq_done:
+	copy pdata,timeup
+	call load_cont_pointers
+/*******for Nokia**************/
+	copy timeup,pdata
+	/*setarg 0x0040*/
+	istore 2,contw
+	force 0x0000,pdata
+	istore 2,contw
+	force 0x0000,pdata
+	istore 2,contw
+	force 10,pdata
+	iadd regB,regB
+	increase -6,regA
+mloop1:
+	branch mcrqdone,zero
+	ifetch 1,contr
+	istore 1,contw
+	increase 1,regB
+	increase -1,regA
+	branch mloop1
+mcrqdone:
+	rtn
+ml2cap_proc_signal_disconn_req:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	copy regC,pdata
+	isub regA,regC
+
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,timeup
+	call save_cont_pointers
+	bpatchx patch24_0,mem_patch24
+	setarg L2CAP_SDP_channel
+	copy regA,temp
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_sdp,zero
+	setarg L2CAP_HID_Control_channel
+	copy regA,temp
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_hid_ctrl,zero
+	setarg L2CAP_HID_Interrupt_channel
+	copy regA,temp
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_hid_int,zero
+	branch mclsrfc
+ml2cap_proc_signal_disconn_sdp:
+	setarg 0x0000
+	store 2,mem_sdp_tx_pkt_length
+	store 2,mem_sdp_remote_cid
+	store 1,mem_sdp_state
+	branch mclssdp
+ml2cap_proc_signal_disconn_hid_ctrl:
+	call l2cap_reset_hid_ctrl_state
+	branch mclssdp
+ml2cap_proc_signal_disconn_hid_int:
+	call l2cap_reset_hid_int_state
+	//call HID_mem_lock
+	//fetch 1, mem_hid_cb1
+	//set1 HID_CB_APP_HID_DISCONNECTED,pdata
+	//store 1, mem_hid_cb1
+	//call HID_mem_unlock
+	branch mclssdp
+mclsrfc:
+	setarg 0x0000
+	store 2,mem_RFCOMM_Tx_pkt_length
+mclssdp:
+	call load_cont_pointers
+	setarg signal_disconnect_rsp
+	istore 1,contw
+	copy queue,pdata
+	istore 1,contw
+	setarg 0x0004
+	istore 2,contw
+	copy regA,pdata
+	istore 2,contw
+	copy timeup,pdata
+	istore 2,contw
+	force 8,pdata
+	iadd regB,regB
+	rtn
+
+ml2cap_proc_signal_disconn_rsp:
+	ifetch 1,contr
+	copy pdata,queue
+	ifetch 2,contr
+	copy pdata,regA
+	ifetch 2,contr
+	copy pdata,timeup
+	ifetch 2,contr
+	copy pdata,temp
+	call save_cont_pointers
+	bpatchx patch24_1,mem_patch24
+	fetch 1,mem_ML2CAP_comm_id
+	icompare 0xff,queue
+	nbranch mdisdone,true
+	setarg L2CAP_SDP_channel
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_rsp_sdp,zero
+	setarg L2CAP_RFCOMM_channel
+	isub temp,null
+	branch ml2cap_proc_signal_disconn_rsp_rfcomm,zero
+	branch mdisdone
+ml2cap_proc_signal_disconn_rsp_sdp:
+	jam 0,mem_sdp_remote_cid
+	jam 0,mem_sdp_state
+	branch mdisdone
+ml2cap_proc_signal_disconn_rsp_rfcomm:
+	//
+	//
+mdisdone:
+	call load_cont_pointers
+	copy regC,pdata
+	isub regA,regC
+	rtn
+
+ml2cap_proc_send_reject:
+	setarg signal_cmd_reject
+	istore 1,contw
+	ifetch 1,contr
+	istore 1,contw
+	setarg 0x0002
+	istore 2,contw
+	setarg 0x0000
+	istore 2,contw
+	setarg 0x0006
+	iadd regB,regB
+	force 4,regC
+	rtn
+	
+//l2cap command id, 0 is not allowed
+l2cap_get_req_id:
+	fetch 1,mem_ML2CAP_comm_id
+	increase 1,pdata
+	bne 0,l2cap_get_req_id_ok
+	increase 1,pdata
+l2cap_get_req_id_ok:
+	store 1,mem_ML2CAP_comm_id
+	rtn
+
+
+/*********************************************************/
+//char* malloc(short len)
+//input: regA -> len
+//rtn: regB -> pbuff;return from pdata
+//val: queue -> i
+//val: timeup -> buff_cnt
+/*********************************************************/
+l2cap_malloc:
+	bpatchx patch24_2,mem_patch24
+	arg 0,regb
+	call l2cap_malloc_is_fifo_full
+	nbranch assert,blank//assert when fifo full
+	call l2cap_malloc_get_full_map
+ifdef DEBUG_MALLOC
+	call l2cap_malloc_log_get_ptr
+	copy regA,pdata
+	istore 2,contw
+	sub pdata,1024,null
+	branch assert,positive
+	branch assert,blank
+endif
+	arg mem_tx_buff0,regB//pbuff = buff0;
+	arg 0,queue // i = 0;
+l2cap_malloc_loop:
+	fetcht 1,mem_used_map
+	qisolate1 temp
+	branch l2cap_malloc_next,true//if(1 == (used_map & (1 << i)))goto next;
+	call l2cap_malloc_enough
+	sub timeup,0,null// (0 - timeup)
+	branch l2cap_malloc_next,positive//if(buff_cnt <= 0)goto next;
+	call l2cap_malloc_into_fifo
+	branch l2cap_malloc_rtn//return (pbuff);
+l2cap_malloc_next:
+	increase 128,regB//pbuff += BUFF_SIZE;//point to next buff
+	increase 1,queue
+	setarg 8//BUFF_MAX_COUNT
+	isub queue,null //BUFF_MAX_COUNT - i
+	branch l2cap_malloc_loop,positive//while(i < buff_max_count)
+	arg 0,regB//return NULL
+l2cap_malloc_rtn:
+ifdef DEBUG_MALLOC
+	call l2cap_malloc_log_get_ptr
+	copy regB,pdata
+	istore 2,contw
+endif
+	copy regB,pdata
+	branch assert,blank
+	rtn//return pointer via pdata
+	
+/*********************************************************/
+//void* l2cap_malloc_fifo_out(void)
+//output:len -> temp
+//output:ptr ->pdata
+//only get ptr,not free
+/*********************************************************/
+l2cap_malloc_fifo_out:
+	bpatchx patch24_3,mem_patch24
+	call l2cap_malloc_fifo_get_first_ptr
+	increase 1,contr
+	ifetch 2,contr //ptr ->pdata
+	rtn 
+
+/*********************************************************/
+//void free_first_buff_in_fifo(void)
+//only free the first one
+/*********************************************************/
+l2cap_malloc_free:
+	bpatchx patch24_4,mem_patch24
+	call l2cap_malloc_fifo_get_first_ptr
+	copy contr,contw
+	copy contr,temp
+	setarg 0
+	istore 3,contw
+ifdef DEBUG_MALLOC
+	call l2cap_malloc_log_get_ptr
+	setarg 0xaa
+	istore 1,contw
+	istoret 1,contw
+endif
+	rtn
+/*********************************************************/
+//void l2cap_malloc_discard(void)
+//discard the latest malloc
+/*********************************************************/
+l2cap_malloc_discard:
+	bpatchx patch24_5,mem_patch24
+	call l2cap_malloc_is_fifo_empty
+	branch assert,blank
+	fetch 3,mem_tx_fifo2
+	store 3,mem_tx_fifo3
+	fetch 3,mem_tx_fifo1
+	store 3,mem_tx_fifo2
+	fetch 3,mem_tx_fifo0
+	store 3,mem_tx_fifo1
+	rtn
+/*********************************************************/
+//bool fifo_is_full(void)
+//blank == 1: not full
+//blank == 0: full
+/*********************************************************/
+l2cap_malloc_is_fifo_full:
+	bpatchx patch24_6,mem_patch24
+	fetch 3,mem_tx_fifo0
+	rtn
+/*********************************************************/
+//bool fifo_nearly_full(void)
+//blank == 1: nearly full
+//blank == 0: not nearly full
+/*********************************************************/
+l2cap_malloc_is_fifo_nearly_full:
+	bpatchx patch24_7,mem_patch24
+	fetch 3,mem_tx_fifo1
+	rtn
+/*********************************************************/
+//bool fifo_is_empty(void)
+//blank == 1: empty
+//blank == 0: not empty
+/*********************************************************/
+l2cap_malloc_is_fifo_empty:
+	bpatchx patch25_0,mem_patch25
+	fetch 3,mem_tx_fifo3
+	rtn
+/*********************************************************/
+//char* l2cap_malloc_fifo_get_first_ptr(void)
+//output:contr  -->ptr
+/*********************************************************/	
+l2cap_malloc_fifo_get_first_ptr:
+	call l2cap_malloc_is_fifo_empty
+	branch assert,blank // fifo is empty
+	arg mem_tx_fifo0,contr
+ifdef DEBUG_MALLOC
+	arg 5,loopcnt
+l2cap_malloc_free_loop:
+	increase -1,loopcnt
+	copy loopcnt,pdata
+	branch assert,blank
+else
+l2cap_malloc_free_loop:
+endif
+	ifetch 3,contr
+	branch l2cap_malloc_free_loop,blank
+	increase -3,contr
+	rtn
+
+/*********************************************************/
+//char* l2cap_malloc_get_full_map(void)
+//output:mem_used_map  -->full_map
+//add all maps into one
+/*********************************************************/	
+l2cap_malloc_get_full_map:
+	bpatchx patch25_1,mem_patch25
+	arg 4,loopcnt
+	arg mem_tx_fifo0_map,contr
+	arg 0,temp
+l2cap_malloc_get_full_map_loop:	
+	ifetch 3,contr
+	and pdata,0xff,pdata
+	ior temp,temp
+	loop l2cap_malloc_get_full_map_loop
+	storet 1,mem_used_map
+	rtn
+/*********************************************************/
+//void buff_into_fifo(char buff_index, char buff_cnt, short len)
+//input: regA -> len
+//input: regC -> buff_index
+//input: timeup -> buff_cnt
+//val:temp ->   (fifo->map)
+/*********************************************************/
+l2cap_malloc_into_fifo:
+	bpatchx patch25_2,mem_patch25
+	call l2cap_malloc_is_fifo_full
+	nbranch assert,blank //fifo full
+	call l2cap_malloc_is_fifo_empty
+	branch l2cap_malloc_into_fifo_no_push,blank//fifo empty, no need to push
+	fetch 3,mem_tx_fifo1
+	store 3,mem_tx_fifo0
+	ifetch 3,contr//mem_tx_fifo2
+	istore 3,contw//mem_tx_fifo1
+	ifetch 3,contr//mem_tx_fifo3
+	istore 3,contw//mem_tx_fifo2
+	setarg 0
+	istore 3,contw//mem_tx_fifo3
+l2cap_malloc_into_fifo_no_push:
+	arg 0,temp
+	copy timeup,pdata
+	iadd queue,pdata
+l2cap_malloc_into_fifo_loop:
+	qset1 temp//fifo->map |= 1 << i;
+	increase 1,queue
+	isub queue,null
+	nbranch l2cap_malloc_into_fifo_loop,zero
+	//map in temp
+	lshift8 regB,pdata
+	ior temp,pdata
+	store 3,mem_tx_fifo3
+	rtn
+
+/*********************************************************/
+//char is_size_enough(char buff_index, short len)
+//input: regA -> len
+//input: queue -> buff_index
+//rtn: timeup -> buff_cnt
+//val: max_size_fom_buff_index -> temp
+//val: i -> loopcnt
+/*********************************************************/
+l2cap_malloc_enough:
+	bpatchx patch25_3,mem_patch25
+	call l2cap_malloc_get_full_map
+	copy queue,regC//restore buff_index to regC
+	arg 0,temp
+	arg 0,timeup//default return val
+	//increase 1,queue
+l2cap_malloc_enough_loop:
+	copy queue,pdata
+	beq 8,l2cap_malloc_enough_end
+	fetch 1,mem_used_map
+	qisolate1 pdata
+	branch l2cap_malloc_enough_end,true
+	increase 128,temp
+	increase 1,queue
+	copy regA,pdata
+	isub temp,null
+	branch l2cap_malloc_enough_end,zero//(max_size_fom_buff_index ==  len)
+	branch l2cap_malloc_enough_loop,positive//(max_size_fom_buff_index <  len)
+l2cap_malloc_enough_end:
+	copy temp,pdata
+	isub regA,null
+	nbranch l2cap_malloc_enough_rtn,positive// max_size_fom_buff_index - len > 0
+	copy queue,pdata//i
+	copy regC,temp//buff_index
+	isub temp,timeup//return (i - buff_index)
+l2cap_malloc_enough_rtn:
+	copy regC,queue//restore buff_index to queue
+	rtn
+	
+ifdef DEBUG_MALLOC
+l2cap_malloc_log_get_ptr:
+	fetch 2,mem_tx_malloc_log
+	increase 2,pdata
+	store 2,mem_tx_malloc_log
+	sub pdata,62,null
+	nbranch l2cap_malloc_log_clean,positive
+	increase -2,pdata
+	iadd contw,contw
+	rtn
+l2cap_malloc_log_clean:
+	jam 0x00,mem_tx_malloc_log
+	branch l2cap_malloc_log_get_ptr	
+endif
+
+l2cap_malloc_signal_channel:
+	bpatchx patch25_4,mem_patch25
+	arg L2CAP_SIGNAL_MALLOC_SIZE,regA
+	call l2cap_malloc
+	store 2,mem_l2cap_signal_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_l2cap_signal_tx_payload_ptr
+	setarg 0
+	store 2,mem_l2cap_signal_tx_length
+	rtn
+
+l2cap_get_signal_tx_buff:
+	fetch 2,mem_l2cap_signal_tx_buff_ptr
+	branch l2cap_util_pdata_to_contw
+
+l2cap_get_signal_tx_payload:
+	fetch 2,mem_l2cap_signal_tx_payload_ptr
+	branch l2cap_util_pdata_to_contw
+
+
+l2cap_malloc_sdp_channel:
+	bpatchx patch25_5,mem_patch25
+	arg SDP_MALLOC_SIZE,regA
+	call l2cap_malloc
+	store 2,mem_sdp_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_sdp_tx_payload_ptr
+	setarg 0
+	store 2,mem_sdp_tx_pkt_length
+	rtn
+
+l2cap_get_sdp_tx_buff:
+	fetch 2,mem_sdp_tx_buff_ptr
+	branch l2cap_util_pdata_to_contw
+
+l2cap_get_sdp_tx_payload:
+	fetch 2,mem_sdp_tx_payload_ptr
+	branch l2cap_util_pdata_to_contw
+
+
+l2cap_malloc_rfcomm_channel:
+	bpatchx patch25_6,mem_patch25
+	call push_stack
+	jam RFCOMM_MALLOC_FAIL,mem_rfcomm_malloc_fail_flag
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	arg RFCOMM_MALLOC_SIZE,regA
+	call l2cap_malloc
+	store 2,mem_rfcomm_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_rfcomm_tx_payload_ptr
+	setarg 0
+	store 2,mem_rfcomm_tx_pkt_length
+	jam RFCOMM_MALLOC_SUCCEED,mem_rfcomm_malloc_fail_flag
+	branch pop_stack
+
+l2cap_get_rfcomm_tx_buff:
+	fetch 2,mem_rfcomm_tx_buff_ptr
+	branch l2cap_util_pdata_to_contw
+	
+l2cap_util_pdata_to_contw:
+	branch assert,blank
+	copy pdata,contw
+	rtn
+	
+
+l2cap_lpm_save_calc_len:
+	bpatchx patch25_7,mem_patch25
+	arg 0,regb
+	arg mem_tx_fifo0_map,rega
+	increase -2,rega
+l2cap_lpm_save_calc_len_loop:
+	increase 2,rega
+	setarg mem_tx_fifo_end
+	isub rega,null
+	branch l2cap_lpm_save_calc_len_end,zero //end of 2lcap tx fifo
+	ifetch 1,rega
+	increase 1,rega
+	branch l2cap_lpm_save_calc_len_loop,blank
+	ifetcht 2,rega
+	ifetch 2,temp
+	iadd regb,regb
+	increase 4,regb //l2cap header len
+	branch l2cap_lpm_save_calc_len_loop
+l2cap_lpm_save_calc_len_end:
+	copy regb,pdata
+	rtn
+
+
+l2cap_lpm_get_wake_lock:
+	arg wake_lock_l2cap_tx,queue
+	branch lpm_get_wake_lock
+
+l2cap_lpm_put_wake_lock:
+	arg wake_lock_l2cap_tx,queue
+	branch lpm_put_wake_lock
+	
+l2cap_lpm_save_txbuf:
+	bpatchx patch26_0,mem_patch26
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	rtn blank
+	call l2cap_lpm_save_calc_len
+	arg l2cap_lpm_txbuf_len,temp
+	isub temp,null
+	branch l2cap_lpm_get_wake_lock,positive //no enougth space to save l2cap tx data
+	call l2cap_lpm_put_wake_lock
+	arg mem_l2cap_lpm_txbuf,contw
+	arg mem_tx_fifo0,rega
+l2cap_lpm_save_txbuf_loop:
+	setarg mem_tx_fifo_end
+	isub rega,null
+	rtn zero //end of 2lcap tx fifo
+	ifetch 1,rega  //mem_tx_fifoX_map
+	increase 1,rega
+	nbranch l2cap_lpm_save_txbuf_nempty,blank
+	istore 2,contw // length = 0
+	increase 2,rega
+	branch l2cap_lpm_save_txbuf_loop
+l2cap_lpm_save_txbuf_nempty:
+	ifetch 2,rega //ptr
+	increase 2,rega
+	copy pdata,contr
+	ifetch 2,contr  //l2cap len
+	istore 2,contw
+	copy pdata,loopcnt
+	increase 2,loopcnt //add CID len
+	call memcpy
+	branch l2cap_lpm_save_txbuf_loop
+	
+l2cap_lpm_load_txbuf:
+	bpatchx patch26_1,mem_patch26
+	call l2cap_malloc_get_full_map
+	fetch 1,mem_used_map
+	rtn blank
+	arg mem_tx_fifo0_ptr,rega
+	increase -3,rega //mem_tx_fifo0_ptr -3
+	arg mem_l2cap_lpm_txbuf,contr
+l2cap_lpm_load_txbuf_loop:
+	increase 3,rega //mem_tx_fifoX_ptr
+	setarg mem_tx_fifo_end+1
+	isub rega,null
+	rtn zero //end of 2lcap tx fifo
+	ifetch 2,contr
+	branch l2cap_lpm_load_txbuf_loop,blank
+	increase 4,pdata //l2cap header len
+	copy pdata,loopcnt
+	copy contr,regb
+	ifetch 2,rega //ptr
+	copy pdata,contw
+	copy regb,contr
+	increase -2,contr
+	call memcpy
+	branch l2cap_lpm_load_txbuf_loop
+	
+
+
+	
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/le.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le.prog	(working copy)
@@ -0,0 +1,1839 @@
+ifdef COMPILE_LE
+//******************************************//
+//*************LE INIT ****************//
+//******************************************//
+
+
+le_init_conn:
+	bpatchx patch26_2,mem_patch26
+	disable wake
+	jam 1,mem_le_conn_handle
+	jam 3,mem_le_state
+	jam 1,mem_le_arq
+	setarg -1
+	store 2,mem_le_event_count
+	force 0,pdata
+	store 1,mem_le_ch
+	store 1,mem_le_op
+	store 3,mem_sniff_rcv
+	store 3,mem_sniff_lost
+	store 5,mem_le_pcnt_tx
+	set1 39,pdata
+	store 5,mem_le_pcnt_rx
+	jam 1,mem_le_txheader
+	jam 0,mem_le_txlen
+	branch le_supervision_flush
+
+le_init_master:
+	bpatchx patch26_3,mem_patch26
+	enable master
+	jam lemode_master,mem_le_mode
+	jam 1,mem_le_att_handle
+	jam 1,mem_le_search_handle_start
+	setarg 0xffff
+	store 2,mem_le_search_handle_end
+	force 0,pdata
+	store 5,mem_le_pcnt_rx
+	set1 39,pdata
+	store 5,mem_le_pcnt_tx	
+	branch le_init_conn
+
+
+le_init_slave:
+	bpatchx patch26_4,mem_patch26
+	disable master
+ 	setarg 0x17
+ 	store 2,mem_le_remote_mtu
+	jam lemode_slave,mem_le_mode
+	jam 0,mem_le_adv_enable
+	jam 0,mem_lpm_current_mult
+	jam FLAG_LE_PAIRING_NULL,mem_le_pairing_state
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	fetch 2,mem_le_superto
+	store 2,mem_le_init_superto
+	fetch 2,mem_le_tsniff
+	mul32 pdata,5,pdata
+	rshift4 pdata,pdata
+	store 2,mem_le_superto			// vol.6 part B 4.5.2 only 6*conninterval before establish
+	branch le_init_conn
+	
+
+//******************************************//
+//*************LE main process*********//
+//******************************************//
+le_dispatch:
+	call le_enable
+	call le_scan
+	call le_adv
+	branch le_disable
+
+le_conn_dispatch:
+	bpatchx patch26_5,mem_patch26
+	call le_enable
+	call app_process_ble
+	fetch 1,mem_le_mode
+	beq lemode_master,le_master_dispatch
+	branch le_slave_dispatch
+	
+//******************************************//
+//***********LE master process*********//
+//******************************************//
+	
+le_master_dispatch:
+	bpatchx patch26_6,mem_patch26
+	enable master
+	call le_supervision_update
+	branch le_master_disconn,positive
+	call check_ble_disabled
+	call le_setup
+	call le_prepare_tx
+	disable match
+	call le_transmit_receive_sifs
+	nrtn match
+	bpatchx patch26_7,mem_patch26
+	fetch 1,mem_le_conn_rcv
+	increase 1,pdata
+	store 1,mem_le_conn_rcv
+	call le_acknowledge
+	disable master
+	rtn
+	
+le_master_disconn:
+	call le_disconnect
+	disable master
+	rtn
+	
+//******************************************//
+//***********LE slave process***********//
+//******************************************//
+le_slave_dispatch:
+	bpatchx patch27_0,mem_patch27
+	jam 0,mem_le_md_count
+ifdef SECURE_CONNECTION
+	call sp_calc_sequence_256
+	call le_secure_connect_sm
+endif
+	disable attempt
+	call le_supervision_update
+	branch le_slave_disconn,positive
+	call check_ble_disabled
+	call le_setup
+	call le_receive_slave
+	nbranch le_slave_unsync,sync	// vol.6 part B 4.5.1 respond even crc error
+	call le_got_first_packet
+	branch le_slave_match,match
+	branch le_slave_cont
+	
+
+le_slave_match:
+	bpatchx patch27_1,mem_patch27
+	fetch 1,mem_le_md_count
+	pincrease 1
+	store 1,mem_le_md_count
+	beq LE_MD_MAX_COUNT,le_slave_cont
+	call le_acknowledge
+	call le_prepare_tx
+	call le_transmit_norx
+	call le_parse
+	fetch 2,mem_cb_ble_transmit
+	call callback_func
+	call le_check_md
+	branch le_slave_more_data,user
+le_slave_cont:
+	bpatchx patch27_2,mem_patch27
+	call le_pairing_sm
+ 	call le_check_paring_time
+	call check_51cmd
+	fetch 1,mem_le_op
+	bbit1 op_disconn,le_slave_disconn
+le_slave_unsync:
+	bpatchx patch27_3,mem_patch27
+	call le_lpm_set_mult
+	call le_update_channel_map
+	call le_update_param
+	branch calc_clke_offset
+
+
+le_check_md:
+	disable user
+	bmark1 mark_ble_rx_md,enable_user
+	bmark1 mark_ble_tx_md,enable_user
+	rtn
+
+
+le_slave_more_data:
+	bpatchx patch27_4,mem_patch27
+	enable attempt
+	call le_transmit_receive_sifs_notx
+	branch le_slave_match,match
+	branch le_slave_cont
+
+le_slave_disconn:
+
+	//fall through
+le_disconnect:
+	bpatchx patch27_5,mem_patch27
+	call le_clear_connection_info
+	call app_disconn_reason_collect_ble
+ifdef SECURE_CONNECTION
+	call sp_initialize_256
+endif
+	jam BT_EVT_LE_DISCONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_clear_connection_info:
+	setarg 0
+	store 9,mem_le_tx_buff_used
+	jam 0,mem_le_conn_handle
+	jam lemode_idle,mem_le_mode
+	jam 0,mem_le_state
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	jam FLAG_LE_PAIRING_NULL,mem_le_pairing_state
+	rtn
+	
+le_got_first_packet:
+	bpatchx patch27_6,mem_patch27
+	fetch 1,mem_le_conn_rcv
+	increase 1,pdata
+	store 1,mem_le_conn_rcv
+	fetch 1,mem_le_state
+	rtnbit1 lestate_got_first_packet
+	set1 lestate_got_first_packet
+	store 1,mem_le_state
+	fetch 2,mem_le_init_superto
+	store 2,mem_le_superto
+	setarg 0
+	store 4,mem_le_transmit_window
+	rtn
+
+
+le_enable:
+	bpatchx patch27_7,mem_patch27
+	jam 0x36,rf_adc_goff        /*For BLE, tune AGC_gain_offset, Max added*/
+	jam 0x5f,rf_agc_nsat        //for BLE
+	enable le
+	jam 7,rfen_ulp			/* enable ulp */
+	call check_ble_disabled
+	fetch 1,mem_250k_freq_enable	//default: 0
+	rtn blank
+	jam 0xb8,rf_iq_gain
+	rtn
+	
+le_disable:
+	bpatchx patch28_0,mem_patch28
+	jam 0x2e,rf_adc_goff        /*For BR/EDR, tune AGC_gain_offset, Max added*/
+	jam 0xff,rf_agc_nsat         //for EDR&BR
+	disable le
+	jam 3,rfen_ulp
+	arg 0,stop_watch
+	rtn
+	
+le_prep:
+	disable enable_crc
+	disable enable_white
+	fetch 3,mem_le_crcinit
+	iforce crc24_init
+	fetch 1,mem_le_ch_mapped
+	reverse pdata,temp
+	set1 1,temp
+	rshift temp,white_init
+	rtn
+	
+
+lerx_setfreq:
+	call le_setfreq
+	call set_freq_rx
+	setarg param_pll_setup
+	call sleep
+	branch rf_rx_enable
+
+letx_setfreq:
+	branch txon,match
+letx_setfreq0:
+	call le_setfreq
+	branch set_freq_tx
+le_setfreq:
+	bpatchx patch28_1,mem_patch28
+	call set_sync_on
+	fetch 1, mem_le_testtype
+	nbranch le_ctf_test,blank
+	fetch 1,mem_le_ch_mapped
+	sub pdata,36,null
+	branch le_ctf_normal,positive
+	force 0,temp
+	rtneq 37
+	force 24,temp
+	rtneq 38
+	force 78,temp
+	rtn
+	
+le_ctf_normal:
+	sub pdata,10,null
+	branch le_ctf_low,positive
+	increase 1,pdata
+	
+le_ctf_low:	
+	lshift pdata,pdata
+	add pdata,2,temp
+	rtn
+	
+le_ctf_test:
+	fetch 1,mem_le_ch_mapped
+	lshift pdata,temp
+	rtn
+
+le_sca_map:
+	arg 500,temp
+	rtn blank
+	arg 250,temp
+	rtneq 1
+	arg 150,temp
+	rtneq 2
+	arg 100,temp
+	rtneq 3
+	arg 75,temp
+	rtneq 4
+	arg 50,temp
+	rtneq 5
+	arg 40,temp
+	rtneq 6
+	arg 20,temp
+	rtn
+
+
+	
+le_adv_access:
+	setarg 0x8e89be
+	lshift8 pdata,pdata
+	or_into 0xd6,pdata
+	iforce access
+	setarg 0x555555
+	store 3,mem_le_crcinit
+	rtn
+
+le_setup:
+	bpatchx patch28_2,mem_patch28
+	enable swfine
+	fetch 4,mem_le_access
+	iforce access
+	call le_map_channel
+	setarg 0x200
+	branch le_setup_master,master
+	fetch 2,mem_le_receive_window
+	rshift pdata,pdata
+le_setup_master:
+	arg param_pll_setup,temp
+	iadd temp,pdata
+	call ahead_window
+	deposit clke
+	store 6,mem_le_rxon_ts
+	rtn
+
+le_next_adv_channel:
+	bpatchx patch28_3,mem_patch28
+	fetch 1,mem_le_ch_mapped
+	beq 37,le_next_adv_channel_curr_channel_37
+	beq 38,le_next_adv_channel_curr_channel_38
+	beq 39,le_next_adv_channel_curr_channel_39
+	branch le_next_adv_channel_curr_channel_39
+
+le_next_adv_channel_curr_channel_37:
+	fetcht 1,mem_le_adv_channel_map
+	isolate1 BIT_ADV_CHANNEL_MAP_38,temp		//check 38 channel enable
+	branch set_le_next_adv_channel_38,true
+	isolate1 BIT_ADV_CHANNEL_MAP_39,temp		//check 39 channel enable
+	branch set_le_next_adv_channel_39,true
+	branch set_le_next_adv_channel_37
+
+
+le_next_adv_channel_curr_channel_38:
+	fetcht 1,mem_le_adv_channel_map
+	isolate1 BIT_ADV_CHANNEL_MAP_39,temp		//check 39 channel enable
+	branch set_le_next_adv_channel_39,true
+	isolate1 BIT_ADV_CHANNEL_MAP_37,temp		//check 37 channel enable
+	branch set_le_next_adv_channel_37,true
+	branch set_le_next_adv_channel_38
+
+
+le_next_adv_channel_curr_channel_39:
+	fetcht 1,mem_le_adv_channel_map
+	isolate1 BIT_ADV_CHANNEL_MAP_37,temp		//check 37 channel enable
+	branch set_le_next_adv_channel_37,true
+	isolate1 BIT_ADV_CHANNEL_MAP_38,temp		//check 38 channel enable
+	branch set_le_next_adv_channel_38,true
+	branch set_le_next_adv_channel_39
+
+
+
+set_le_next_adv_channel_37:
+	jam 37,mem_le_ch_mapped
+	fetch 1,mem_le_adv_channel_map_temp
+	set1 BIT_ADV_CHANNEL_MAP_37,pdata
+	store 1,mem_le_adv_channel_map_temp
+	rtn
+
+set_le_next_adv_channel_38:
+	jam 38,mem_le_ch_mapped
+	fetch 1,mem_le_adv_channel_map_temp
+	set1 BIT_ADV_CHANNEL_MAP_38,pdata
+	store 1,mem_le_adv_channel_map_temp
+	rtn
+
+set_le_next_adv_channel_39:
+	jam 39,mem_le_ch_mapped
+	fetch 1,mem_le_adv_channel_map_temp
+	set1 BIT_ADV_CHANNEL_MAP_39,pdata
+	store 1,mem_le_adv_channel_map_temp
+	rtn
+
+
+
+le_context_nexthop:
+	bpatchx patch28_4,mem_patch28
+	add rega,coffset_mode,contr
+	ifetch 1,contr
+	rtnbit0 mode_le
+	add rega,coffset_le_event_cnt,contw
+	ifetch 2,contw
+	increase 1,pdata
+	istore 2,contw
+	add rega,coffset_le_hop,contr
+	ifetch 1,contr
+	add rega,coffset_le_ch,contw
+	ifetcht 1,contw
+	iadd temp,pdata
+	sub pdata,36,null
+	branch le_nexthop_nowrap,positive
+	increase -37,pdata
+le_nexthop_nowrap:
+	istore 1,contw
+	rtn
+
+
+le_calc_channel_map:
+	bpatchx patch28_5,mem_patch28
+	fetch 5,mem_le_channel_map
+	force 0,temp
+	force 37,loopcnt
+le_count_channels_loop:
+	bbit0 0,le_count_channels_notused
+	increase 1,temp
+le_count_channels_notused:
+	rshift pdata,pdata
+	loop le_count_channels_loop
+	add temp,-1,pdata
+	store 1,mem_le_channels
+	rtn
+
+le_map_channel:
+	bpatchx patch28_6,mem_patch28
+	fetch 1,mem_le_ch
+	iforce queue
+	fetcht 5,mem_le_channel_map
+	qisolate1 temp
+	branch le_map_channel_end,true
+le_map_channel_next:
+	bpatchx patch28_7,mem_patch28
+	fetch 1,mem_le_channels
+	isub queue,pdata
+	branch le_map_channel_cont,positive
+	sub pdata,-1,queue
+	branch le_map_channel_next
+le_map_channel_cont:
+	copy queue,loopcnt
+	force 0,queue
+le_map_channel_loop:
+	qisolate1 temp
+	branch le_map_channel_skip,true
+	increase 1,loopcnt
+le_map_channel_skip:
+	deposit loopcnt
+	branch le_map_channel_end,blank
+	increase 1,queue
+	increase -1,loopcnt
+	branch le_map_channel_loop
+le_map_channel_end:
+	deposit queue
+	store 1,mem_le_ch_mapped
+	rtn
+
+
+le_wait_tx:
+	branch le_wait_master,master
+	until null,timeout
+	rtn
+	
+le_wait_master:
+	arg 0xea0,timeup
+	until clkn_rt,meet
+	rtn
+
+le_receive_adv:
+	disable swfine
+	fetch 2,mem_le_scan_window
+	copy pdata,timeup
+	branch le_receive_packet
+
+
+le_receive_slave:
+	bpatchx patch29_0,mem_patch29
+	enable swfine
+	fetch 2,mem_le_receive_window
+	fetcht 4,mem_le_transmit_window
+	iadd temp,timeup
+le_receive_packet:
+	call lerx_setfreq
+le_receive_rxon:
+	bpatchx patch29_1,mem_patch29
+	call le_prep
+	disable match
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	copy timeup,stop_watch
+	correlate null,timeout
+	branch le_receive_on_attempt,attempt
+	copy clke,temp
+	storet 6,mem_sync_clke
+le_receive_on_attempt:
+	nbranch end_of_packet,sync
+	branch le_receive_skip,attempt
+	arg param_clke_cal_le,clke_rt
+	copy bt_clk,clke_bt
+	fetch 1,mem_le_state
+	bbit0 lestate_got_first_packet,le_receive_skip
+	call lpm_adjust_clk,wake
+le_receive_skip:
+	bpatchx patch29_2,mem_patch29
+	call save_rssi
+	enable enable_white
+	enable enable_crc
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	store 1,mem_le_rxbuf
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	and pdata,0x3f,loopcnt
+	branch lerx_nopayload,zero
+	
+lerx_loop:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	istore 1,contw
+	loop lerx_loop
+	
+lerx_nopayload:
+	bpatchx patch29_3,mem_patch29
+	parse demod,bucket,24	
+	enable swfine
+	arg param_sifs,stop_watch		// start SIFS timer after last bit of crc
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	branch end_of_packet,crc_failed
+	enable match
+	fetch 1,mem_last_freq
+	add pdata,0,rega				// ble 2M Medium Frequency
+	call rf_write_freq				/* set frequency to tx mode freq */
+	disable decode_fec0
+	branch set_sync_on
+
+le_transmit_receive_sifs:
+	bpatchx patch29_4,mem_patch29
+	call le_transmit
+le_transmit_receive_sifs_notx:
+	fetcht 1,mem_last_freq
+	call set_freq_rx
+	call rf_rx_enable
+	enable swfine
+	arg 5500,timeup 
+	branch le_receive_rxon
+
+le_transmit_norx:
+	call le_transmit
+	branch end_of_packet
+	
+le_transmit:
+	bpatchx patch29_5,mem_patch29
+	call le_prep
+	call letx_setfreq
+	branch le_transmit0
+	
+le_transmit0:
+	set1 TXGFSK,radio_ctrl
+	enable encode_fec0
+	enable is_tx
+	disable is_rx
+	call le_wait_tx
+	rshift16 access,pdata
+	rshift8 pdata,pdata
+	rshift4 pdata,pdata
+	inject mod,40
+	enable enable_white
+	enable enable_crc
+	bpatchx patch29_6,mem_patch29
+	fetch 1,mem_le_txheader
+	inject mod,8
+	ifetch 1,contr
+	and pdata,0x3f,loopcnt
+	inject mod,8
+	branch letr_nopayload,zero
+letr_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop letr_loop
+	
+letr_nopayload:
+	enable enable_parity
+	inject mod,24
+	disable enable_parity
+	until null,tx_clear
+	nop 100          /* flush out the last bit */
+	disable encode_fec0
+	rtn
+	
+le_send_adv_ind:
+	bpatchx patch29_7,mem_patch29
+	fetch 1,mem_le_adv_type
+	beq ADV_DIRECT_IND,le_send_adv_direct_ind
+	fetch 1,mem_le_adv_own_addr_type
+	lshift4 pdata,pdata
+	lshift2 pdata,pdata
+	store 1,mem_le_txheader
+	fetcht 1,mem_le_adv_data_len
+	add temp,6,pdata
+	store 1,mem_le_txlen
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload
+	copy temp,loopcnt
+	arg mem_le_adv_data,contr
+	call memcpy_fast
+	branch le_send_adv_transmit
+le_send_adv_direct_ind:
+	fetch 1,mem_le_adv_direct_addr_type
+	lshift4 pdata,pdata
+	lshift2 pdata,pdata
+	increase 1,pdata
+	store 1,mem_le_txheader
+	setarg 12
+	store 1,mem_le_txlen
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload
+	fetch 6,mem_hci_plap
+	istore 6,contw
+le_send_adv_transmit:
+	bpatchx patch2a_0,mem_patch2a
+	fetch 1,mem_le_adv_transmit
+	increase 1,pdata
+	store 1,mem_le_adv_transmit
+	arg 1800,stop_watch
+	disable match
+	branch le_transmit_receive_sifs
+	
+le_send_scan_request:
+	bpatchx patch2a_1,mem_patch2a
+	fetch 1,mem_le_scan_type
+	rtnne LE_SCAN_TYPE_ACTIVE
+	fetch 1,mem_le_adv_transmit
+	increase 1,pdata
+	store 1,mem_le_adv_transmit
+	arg 0x0c03,temp// length + SCAN_REQ PDU
+	fetch 1,mem_le_scan_own_addr_type
+	nsetflag blank,LE_SENDER_ADDR_BIT,temp
+	copy regA,pdata
+	nsetflag blank,LE_RECEIVER_ADDR_BIT,temp	
+	storet 2,mem_le_txheader
+	fetch 6,mem_le_lap
+	istore 6,contw
+	fetch 6,mem_le_plap
+	istore 6,contw
+	branch le_transmit_receive_sifs
+
+
+le_send_scan_response:
+	bpatchx patch2a_2,mem_patch2a
+	arg SCAN_RSP,temp
+	fetch 1,mem_le_adv_own_addr_type
+	nsetflag blank,LE_SENDER_ADDR_BIT,temp
+	storet 1,mem_le_txheader
+	fetcht 1,mem_le_scan_data_len
+	add temp,6,pdata
+	store 1,mem_le_txlen
+	fetch 6,mem_le_lap
+	store 6,mem_le_txpayload
+	arg mem_le_scan_data,contr
+	copy temp,loopcnt
+	call memcpy_fast
+	call le_transmit_norx
+	branch le_adv_not_match
+
+le_connect_request:
+	bpatchx patch2a_3,mem_patch2a
+	force -1,pdata
+	setsect 2,1
+	store 5,mem_le_channel_map
+	call le_calc_channel_map	
+	force 4,loopcnt
+	arg mem_le_access,contw
+	call generate_random_loop	
+	fetch 2,mem_le_timeout
+	store 2,mem_le_superto
+le_con_req_hop_retry:
+	random pdata
+	and_into 0xf,pdata
+	sub pdata,4,null
+	branch le_con_req_hop_retry,positive
+	store 1,mem_le_hop
+	store 1,mem_tmp1
+	bpatchx patch2a_4,mem_patch2a
+	fetcht 2,mem_le_conn_interval
+	storet 2,mem_le_tsniff	
+	copy temp,regc			// tsniff in regc
+	add clkn_bt,7,pdata			// leave space for offset
+	idiv regc
+	call wait_div_end
+	remainder rega
+	isub rega,pdata
+	iadd regc,pdata
+	fetcht 2,mem_le_dsniff
+	iadd temp,pdata
+	store 4,mem_le_anchor
+	isub clkn_bt,rega
+	increase -6,rega			// window offset
+	arg 0x2205,regb			// length & CONN_REQ PDU
+	fetch 1,mem_le_conn_own_addr_type
+	nsetflag blank,LE_SENDER_ADDR_BIT,regb
+	fetch 1,mem_le_conn_peer_addr_type
+	nsetflag blank,LE_RECEIVER_ADDR_BIT,regb
+	copy regb,pdata
+	store 2,mem_le_txheader
+	fetch 6,mem_le_lap
+	istore 6,contw//own addr
+	fetch 6,mem_le_plap
+	istore 6,contw// peer addr
+	fetch 4,mem_le_access
+	istore 4,contw
+	random pdata
+	istore 2,contw				/* crc init */
+	random pdata
+	istore 1,contw
+	force 2,pdata				/* window size */	
+	istore 1,contw
+	rshift2 rega,pdata
+	istore 2,contw				/* window offset */
+	rshift2 regc,pdata			
+	istore 2,contw				/* conn Interval */
+	bpatchx patch2a_5,mem_patch2a
+	setarg 0					/* slave latency */
+	istore 2,contw
+	fetch 2,mem_le_timeout
+	istore 2,contw
+	fetch 5,mem_le_channel_map
+	istore 5,contw				/* channel map */
+	fetch 1,mem_le_hop
+	arg param_le_sca,temp
+	ior temp,pdata
+	istore 1,contw
+	call le_transmit_norx
+	setarg mem_le_txheader
+	add pdata,18,contr
+	ifetch 3,contr
+	store 3,mem_le_crcinit
+	rtn
+		
+le_init_adv:
+	bpatchx patch2a_6,mem_patch2a
+	disable master
+	branch le_adv_access
+	
+
+
+le_update_param:
+	fetch 1,mem_le_state
+	rtnbit0 lestate_update_param
+	fetch 2,mem_le_event_count
+	fetcht 2,mem_le_instant
+	isub temp,pdata
+	nrtn positive
+	store 2,mem_pdatatemp
+	bpatchx patch2a_7,mem_patch2a
+	fetch 1,mem_le_state
+	set0 lestate_update_param,pdata
+	set0 lestate_got_first_packet,pdata
+	store 1,mem_le_state
+	fetch 4,mem_le_anchor
+	fetcht 2,mem_le_tsniff
+	storet 2,mem_temp
+	isub temp,rega
+	bpatchx patch2b_0,mem_patch2b
+	fetch 1,mem_le_new_param
+	store 1,mem_le_window_size
+	ifetcht 2,contr
+	ifetch 2,contr
+	lshift2 pdata,pdata
+	store 2,mem_le_tsniff
+	lshift2 temp,temp
+	iadd temp,pdata
+	ifetcht 4,contr
+	storet 4,mem_le_slave_latency	// and superTO
+	iadd rega,pdata
+	copy pdata,regab
+	fetch 2,mem_le_tsniff
+	fetcht 2,mem_temp	//last sniff
+	isub temp,pdata		//last sniff - new sniff
+	fetcht 2,mem_pdatatemp
+	imul32 temp,pdata
+	iadd regab,pdata
+	store 4,mem_le_anchor
+	call le_receive_window_size
+	fetch 2,mem_le_superto
+	store 2,mem_le_init_superto
+	rtn
+
+
+le_update_channel_map:
+	bpatchx patch2b_1,mem_patch2b
+	fetch 1,mem_le_state
+	rtnbit0 lestate_update_map
+	fetch 2,mem_le_event_count
+	fetcht 2,mem_le_instant
+	isub temp,pdata
+	nrtn positive
+	fetch 1,mem_le_state
+	set0 lestate_update_map,pdata
+	store 1,mem_le_state
+ 	fetch 5,mem_le_new_map
+	store 5,mem_le_channel_map
+	branch le_calc_channel_map	
+	
+	
+le_acknowledge:
+	bpatchx patch2b_2,mem_patch2b
+	call le_supervision_flush
+	call le_check_wak
+	fetch 1,mem_le_rxbuf
+	isolate1 md,pdata
+	setflag true,mark_ble_rx_md,mark
+	rshift pdata,pdata
+	ixor temp,pdata
+	isolate1 nesn,pdata
+	setflag true,mark_old_packet,mark	/* retransmit */
+	rtnmark1 mark_old_packet
+	fetch 1,mem_le_rxbuf+1			
+	branch le_ack_unenc,blank		/* empty packet, no decryption */
+	fetch 1,mem_le_state
+	bbit0 lestate_encryption,le_ack_unenc
+	call load_sk
+	call le_decrypt
+	nrtn blank
+le_ack_unenc:
+	fetcht 1,mem_le_arq
+	setflip nesn,temp
+	storet 1,mem_le_arq
+	rtn
+
+	
+le_check_wak:
+	bpatchx patch2b_3,mem_patch2b
+	fetcht 1,mem_le_arq
+	isolate0 wak,temp
+	rtn true
+	fetch 1,mem_le_rxbuf
+	lshift pdata,pdata
+	ixor temp,pdata
+	rtnbit0 sn			/* received NESN is same as SN, NAK */
+	set0 wak,temp
+	setflip sn,temp
+	storet 1,mem_le_arq
+	compare 3,temp,3
+	nrtn true
+	fetch 1,mem_le_txpayload
+	beq LL_START_ENC_REQ,le_set_enc
+	fetch 1,mem_le_enc_state
+	beq FLAG_LE_ENC_PAUSE,le_clear_enc
+	rtn
+	
+
+le_set_enc:
+	fetch 1,mem_le_state
+	set1 lestate_encryption,pdata
+	store 1,mem_le_state
+	rtn	
+	
+le_clear_enc:
+	bpatchx patch2b_4,mem_patch2b
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	arg 0,pdata
+	store 4,mem_le_last_mic
+	store 5,mem_le_pcnt_tx
+	set1 39,pdata
+	store 5,mem_le_pcnt_rx
+	fetch 1,mem_le_state
+	set0 lestate_encryption,pdata
+	store 1,mem_le_state
+	rtn
+
+
+le_wait_adv:
+	bpatchx patch2b_5,mem_patch2b
+	call le_next_adv_channel
+	call le_receive_adv
+	fetch 1,mem_le_adv_waitcnt
+	increase 1,pdata
+	store 1,mem_le_adv_waitcnt
+	rtn
+
+
+le_scan:
+	bpatchx patch2b_6,mem_patch2b
+	fetch 1,mem_le_scan_enable
+	rtnne LE_SCAN_ENABLE
+	arg le_scan_interval_timer,queue
+	call timer_check
+	nrtn blank
+	fetch 2,mem_le_scan_interval
+	fetcht 2,mem_le_scan_window
+	isub temp,pdata
+	arg le_scan_interval_timer,queue
+	call timer_init
+	disable master
+	call le_init_adv
+	call le_wait_adv
+	nrtn match
+	bpatchx patch2b_7,mem_patch2b
+	fetch 6,mem_le_rxbuf+2
+	store 6,mem_le_plap
+//	call le_scan_dongle
+
+	fetch 1,mem_le_adv_rcv
+	increase 1,pdata
+	store 1,mem_le_adv_rcv
+	call le_create_conn
+	rtn master
+	call le_send_scan_request
+	nrtn match
+	bpatchx patch2c_0,mem_patch2c
+	fetch 1,mem_le_scanrsp_rcv
+	increase 1,pdata
+	store 1,mem_le_scanrsp_rcv
+	fetch 9,mem_le_rxbuf+8
+	store 9,mem_tmp_buffer
+	rtn
+	
+le_create_conn:
+	bpatchx patch2c_1,mem_patch2c
+	fetch 1,mem_cmd_le_create_conn
+	rtnne hci_cmd_le_create_conn
+	fetch 6,mem_le_plap
+	fetcht 6,mem_le_conn_peer_addr
+	isub temp,null
+	nrtn zero
+	call context_new
+	nrtn zero
+	call le_connect_request
+	call le_init_master
+	bpatchx patch2c_2,mem_patch2c
+	jam 0,mem_hci_cmd
+	jam 0,mem_le_peer_sca
+	jam 0,mem_le_scan_enable
+	jam 0,mem_cmd_le_create_conn
+	branch context_save
+	
+le_scan_check_sender_addr_type:
+	arg 1,rega// sender_addr_type
+	fetch 1,mem_le_rxbuf
+	rtnbit1 LE_SENDER_ADDR_BIT
+	arg 0,rega
+	rtn
+
+
+
+le_prepare_tx:
+	bpatchx patch2c_3,mem_patch2c
+	fetch 1,mem_le_arq
+	rtnbit1 wak
+	call le_check_tx_md
+	call le_fifo_get_first_tx_ptr	//no packet to send
+	branch le_send_empty,blank
+	ifetch 1,contr
+	ifetcht 1,contr
+	copy temp,rega
+	isub rega,pdata
+	arg LE_MAX_PAKET_LEN,temp
+	call not_greater_than
+	copy pdata,temp
+	ifetch 1,contr
+	copy pdata,type
+	copy rega,pdata
+	iadd contr,contr
+	arg mem_le_txpayload,contw
+	copy temp,loopcnt
+	call memcpy
+	call le_update_tx_type
+	call le_send_packet
+	
+	call le_fifo_get_first_tx_ptr
+	ifetch 1,contr
+	copy pdata,rega
+	copy contr,regc
+	ifetcht 1,contr
+	copy temp,regb
+	isub regb,pdata
+	arg LE_MAX_PAKET_LEN,temp
+	call not_greater_than
+	iadd regb,pdata
+	istore 1,regc
+	isub rega,null
+	nrtn zero
+	branch le_fifo_release_first_node
+
+	
+le_check_tx_md:
+	call le_check_continue
+	rtnmark1 mark_ble_tx_md
+	fetch 1,mem_le_configuration
+	bbit0 BIT_BLE_TRANSMIT_PACKET_BY_MD,le_clear_md
+	call le_fifo_get_second_tx_ptr	//no packet to send
+	branch le_clear_md,blank
+	branch le_set_md
+
+	
+le_check_continue:
+	call le_fifo_get_first_tx_ptr	//no packet to send
+	branch le_clear_md,blank
+	ifetch 1,contr				//pdata:length
+	ifetcht 1,contr				//temp:offest
+	isub temp,pdata			//pdata:length - offset
+	sub pdata,LE_MAX_PAKET_LEN,null	
+	branch le_clear_md,positive				//27 > length -offset
+le_set_md:
+	set1 mark_ble_tx_md,mark
+	rtn
+
+le_clear_md:
+	set0 mark_ble_tx_md,mark
+	rtn
+
+le_update_tx_type:
+	copy rega,pdata
+	rtn blank
+	arg LLID_CONTINUE,type
+	rtn
+
+
+le_att_check_notification_enable: // temp ->handle,output-> pdata,output :contr->rega
+	bpatchx patch2c_4,mem_patch2c
+	increase 1,temp
+	call le_att_get_handle_ptr
+	increase -2,contr
+	ifetch 2,contr
+	arg CLIENT_CHARACTERTIC_CONFIGURATION,temp
+	isub temp,null
+	nrtn zero
+	increase 1,contr
+	copy contr,rega
+	ifetch 1,contr
+	rtn
+	
+
+le_send_empty:
+	force 0,temp
+	force 1,type
+	
+le_send_packet:
+	bpatchx patch2c_5,mem_patch2c
+	storet 1,mem_le_txlen
+	fetcht 1,mem_le_arq
+	set1 wak,temp
+	and temp,0xfc,pdata
+	ior type,pdata
+	store 1,mem_le_arq
+	and_into 0x1f,pdata
+	isolate1 mark_ble_tx_md,mark
+	setflag true,md,pdata
+	store 1,mem_le_txheader
+
+	fetch 1,mem_le_txheader
+	compare 1,type,3
+	nbranch le_send_no_txlen,true
+	fetch 1,mem_le_txlen
+	rtn blank
+le_send_no_txlen:	
+	fetch 1,mem_le_state
+	rtnbit0 lestate_encryption
+	call load_sk
+	branch le_encrypt
+
+
+get_lpm_wake_ble_rx_lock:
+	arg wake_lock_ble_rx,queue
+	branch lpm_get_wake_lock
+
+put_lpm_wake_ble_rx_lock:
+	arg wake_lock_ble_rx,queue
+	branch lpm_put_wake_lock
+
+
+le_parse:
+	bpatchx patch2c_6,mem_patch2c
+	rtnmark1 mark_old_packet
+	call le_fifo_check_full
+	nrtn blank
+	fetch 1,mem_le_rxbuf
+	and pdata,0x3,pdata
+	store 1,mem_le_packet_llid
+	ifetch 1,contr
+	and pdata,0x1f,pdata
+	store 1,mem_le_packet_size
+	rtn blank							//empty rtn
+	copy contr,pdata
+	store 2,mem_le_payload_ptr
+	fetch 1,mem_le_packet_llid
+	beq LLID_LE_LL,le_parse_ll
+le_parse_l2cap:
+	call le_check_l2cap_complete
+	nbranch get_lpm_wake_ble_rx_lock,user
+	call put_lpm_wake_ble_rx_lock
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	ifetch 2,contr	//l2cap len
+	store 2,mem_le_l2cap_size
+	bpatchx patch2c_7,mem_patch2c
+	ifetch 2,contr
+	beq LE_L2CAP_CID_ATT,le_parse_att
+	beq LE_L2CAP_CID_SMP,le_parse_smp
+	beq LE_L2CAP_CID_SIGNAL,le_parse_signaling
+	rtn
+
+
+le_check_l2cap_complete:
+	fetch 1,mem_le_packet_llid
+	beq LLID_START,le_check_l2cap_llid_start
+	beq LLID_CONTINUE,le_check_l2cap_llid_continue
+	rtn
+
+//input: pdata is CID number
+//output: 	if CID is legal ,enable user
+//		if ICD is illegal,disable user 
+le_check_l2cap_CID_legal:
+	call enable_user
+	arg LE_L2CAP_CID_ATT,temp
+	isub pdata,null
+	rtn zero
+	arg LE_L2CAP_CID_SIGNAL,temp
+	isub pdata,null
+	rtn zero
+	arg LE_L2CAP_CID_SMP,temp
+	isub pdata,null
+	rtn zero
+	branch disable_user
+
+	
+le_check_l2cap_llid_start:
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	ifetch 2,contr
+	store 2,mem_le_l2cap_size
+	ifetch 2,contr			//CID
+	call le_check_l2cap_CID_legal
+	nrtn user
+	fetcht 1,mem_le_packet_size
+	storet 1,mem_le_packet_len_recved
+	fetch 2,mem_le_l2cap_size
+	increase 4,pdata
+	isub temp,null
+	branch enable_user,zero
+	fetch 1,mem_le_packet_size
+	copy pdata,loopcnt
+	arg mem_le_l2capbuf,contw
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	call memcpy
+	branch disable_user
+
+//no input
+//output: 	if CID is legal ,enable user
+//		if ICD is illegal,disable user 
+le_check_l2cap_continue_legal:
+	call enable_user
+	fetch 1,mem_le_packet_len_recved
+	nrtn blank
+	branch disable_user
+
+le_check_l2cap_llid_continue:
+	call le_check_l2cap_continue_legal
+	nrtn user
+	fetch 1,mem_le_packet_len_recved
+	arg mem_le_l2capbuf,contw
+	iadd contw,rega
+	fetcht 1,mem_le_packet_size
+	iadd temp,pdata
+	store 1,mem_le_packet_len_recved
+	fetch 1,mem_le_packet_size
+	copy pdata,loopcnt
+	copy rega,contw
+	fetch 2,mem_le_payload_ptr
+	copy pdata,contr
+	call memcpy_fast
+	setarg mem_le_l2capbuf
+	store 2,mem_le_payload_ptr		//update ptr->mem_le_l2capbuff
+	fetch 2,mem_le_l2cap_size
+	increase 4,pdata
+	fetcht 1,mem_le_packet_len_recved
+	isub temp,null
+	branch enable_user,zero
+	branch disable_user
+
+
+
+
+	
+le_get_search_att_type:
+	call store_contr
+	arg mem_le_search_att_type_length,contw
+le_get_search_common:	
+	fetch 2,mem_le_l2cap_size
+	increase -5,pdata
+le_get_search_common2:		
+	istore 1,contw
+	copy pdata,loopcnt
+	call get_contr
+	branch memcpy_fast	
+	
+le_get_search_att_uuid:
+	call store_contr
+	arg mem_le_search_uuid_length,contw
+	branch le_get_search_common
+
+
+	/* rega pointers to data, regb is length */
+le_writeatt_cb:
+	fetch 2,mem_cb_att_write
+	branch callback_func
+	
+le_supervision_update:
+	fetcht 4,mem_le_supervision_timer
+	call get_clkbt
+	isub temp,timeup					/* and to 28 bits */
+	deposit timeup
+	fetcht 2,mem_le_superto
+	lshift4 temp,temp
+	lshift temp,temp
+	isub temp,pdata
+	rtn
+	
+le_supervision_flush:
+	call get_clkbt
+	store 4,mem_le_supervision_timer
+	rtn
+
+
+le_adv:
+	jam 36,mem_le_ch_mapped
+	jam 0,mem_le_adv_channel_map_temp
+le_adv_loop:
+	bpatchx patch2d_0,mem_patch2d
+	fetch 1,mem_le_adv_enable
+	rtn blank
+	arg le_adv_interval_timer,queue
+	call timer_check
+	nrtn blank
+	bpatchx patch2d_1,mem_patch2d
+le_adv_loop_tx:
+	disable master
+	enable swfine
+	call le_init_adv
+	call le_next_adv_channel
+	call le_send_adv_ind
+	nbranch le_adv_not_match,match
+	fetch 1,mem_le_req_rcv
+	increase 1,pdata
+	store 1,mem_le_req_rcv
+	fetch 1,mem_le_rxbuf
+	and pdata,0x0f,pdata
+	beq SCAN_REQ,le_send_scan_response
+	beq CONNECT_REQ,le_parse_connect_req
+le_adv_not_match:
+	bpatchx patch2d_2,mem_patch2d
+	random pdata 
+	arg 0x1ff,temp
+	iand temp,pdata
+	add pdata,250,pdata
+	call delay
+	fetch 1,mem_le_adv_channel_map_temp
+	fetcht 1,mem_le_adv_channel_map
+	isub temp,null
+	nbranch le_adv_loop,zero
+	arg le_adv_interval_timer,queue
+	fetch 2,mem_le_adv_interval
+	branch timer_init
+	
+
+le_receive_window_size:
+	bpatchx patch2d_3,mem_patch2d
+	fetch 1,mem_le_peer_sca
+	call le_sca_map
+	fetch 2,mem_le_tsniff
+	imul32 temp,pdata
+	arg 375,temp
+	imul32 temp,pdata
+	arg 100000,temp
+	idiv temp
+	fetch 1,mem_le_window_size
+	arg 20000,temp
+	imul32 temp,pdata
+	iadd temp,pdata
+	store 4,mem_le_transmit_window
+	bpatchx patch2d_4,mem_patch2d
+	fetch 2,mem_rx_window_sniff
+	call wait_div_end
+	quotient temp
+	iadd temp,pdata
+	store 2,mem_le_receive_window
+	rtn
+
+le_parse_connect_req:
+	bpatchx patch2d_5,mem_patch2d
+	fetch 6,mem_le_rxbuf+8
+	fetcht 6,mem_le_lap
+	isub temp,null
+	nrtn zero
+	call le_scan_check_sender_addr_type
+	copy rega,pdata
+	store 1,mem_le_conn_peer_addr_type
+	fetch 7,mem_le_rxbuf+21
+	store 7,mem_tmp_buffer
+	ifetch 8,contr
+	istore 8,contw
+	fetch 6,mem_le_rxbuf+2
+	store 6,mem_le_plap
+	increase 6,contr
+	ifetch 8,contr
+	store 8,mem_le_access 	// and crcinit & window size
+	ifetcht 2,contr				// transmit offset
+	bpatchx patch2d_6,mem_patch2d
+	lshift2 temp,temp			
+	ifetch 2,contr				// connInterval
+	lshift2 pdata,pdata
+	store 2,mem_le_tsniff
+	store 4,mem_le_anchor
+	isub temp,pdata
+	add pdata,-2,clke_bt
+	ifetch 9,contr
+	store 9,mem_le_slave_latency// and super to & channel map
+	bpatchx patch2d_7,mem_patch2d
+	ifetch 1,contr
+	rshift4 pdata,temp
+	rshift temp,temp
+	storet 1,mem_le_peer_sca
+	and_into 0x1f,pdata
+	store 1,mem_le_hop
+	call le_receive_window_size
+	call le_calc_channel_map
+	call le_init_slave
+	call context_new
+	nrtn zero
+	bpatchx patch2e_0,mem_patch2e
+	call calc_clke_offset
+	call le_l2cap_reset_signaling_identifier
+	jam BT_EVT_LE_CONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	branch context_save
+	
+
+le_init_attlist_search:
+	bpatchx patch2e_1,mem_patch2e
+	fetch 2,mem_le_search_handle_start
+	iforce regb
+	fetch 2,mem_le_search_handle_end
+	iforce regc
+	fetch 2,mem_ui_le_uuid_table
+	iforce contr
+	enable user
+	rtn
+
+	/* return handle in pdata, blank:end of list, positive:in range */
+le_att_handle_inrange:
+	ifetch 2,contr
+	rtn blank
+	isub regb,null			/* less than start ? */
+	nrtn positive
+	isub regc,null			/* greater than end ? */
+	rtn zero
+	branch le_att_handle_blank,positive
+	force 1,null
+	rtn
+le_att_handle_blank:
+	force 0,pdata
+	rtn
+
+
+	/* handle in temp, return pointer in contr to length, blank not found */
+le_att_get_handle_ptr:
+	call le_att_get_handle_ptr2
+	branch le_att_get_handle_ptr_found,zero
+	rtn
+	
+le_att_get_handle_ptr2:
+	bpatchx patch2e_2,mem_patch2e
+	fetch 2,mem_ui_le_uuid_table
+	iforce contr
+le_att_get_handle_loop1:
+	ifetch 2,contr
+	rtn blank
+	isub temp,null
+	rtn zero
+	ifetch 1,contr
+	iadd contr,contr	
+	ifetch 1,contr			// length  
+	iadd contr,contr
+	branch le_att_get_handle_loop1
+le_att_get_handle_ptr_found:
+	ifetch 1,contr
+	iadd contr,contr	
+	rtn	
+
+
+
+le_att_get_short_uuid_ptr:
+	bpatchx patch2e_3,mem_patch2e
+	fetch 2,mem_ui_le_uuid_table
+	iforce contr
+le_att_get_short_uuid_loop:
+	ifetch 2,contr
+	rtn blank
+	ifetch 1,contr
+	iadd contr,contr
+	increase -2,contr
+	ifetch 2,contr
+	isub temp,null
+	rtn zero
+	ifetch 1,contr			 
+	iadd contr,contr
+	branch le_att_get_short_uuid_loop	
+
+
+
+le_att_get_handle_info_from_ptr:
+	fetch 2, mem_le_cur_attlist_start_ptr
+	branch le_att_get_handle_info_fast
+
+le_att_get_handle_info:
+	bpatchx patch2e_4,mem_patch2e
+	fetch 2,mem_ui_le_uuid_table
+le_att_get_handle_info_fast:
+	iforce contr
+	copy temp,rega
+le_att_get_handle_loop:
+	ifetch 2,contr
+	branch le_att_unfind_handle,blank
+	isub rega,null
+	branch le_att_finded_handle, zero
+	ifetch 1,contr			// length  
+	iadd contr,contr	
+	ifetch 1,contr			//length 
+	iadd contr,contr
+	branch le_att_get_handle_loop
+le_att_unfind_handle:
+	branch disable_blank
+
+le_att_finded_handle:
+	ifetch 1,contr
+	store 1,mem_le_cur_uuid_length
+	copy pdata,loopcnt
+	arg mem_le_cur_uuid,contw
+	call memcpy_fast
+	ifetch 1,contr
+	store 1,mem_le_curr_att_len
+	call store_contr
+	branch enable_blank
+
+	
+le_modified_name:
+	bpatchx patch2e_5,mem_patch2e
+	call le_modified_name_att_list
+	branch le_modified_name_adv
+
+le_modified_name_att_list:
+	arg UUID_CHRCTR_DEVICE_NAME,temp
+	call le_att_get_short_uuid_ptr
+	rtn blank
+	ifetch 1,contr						// attribute length
+	copy contr,contw
+	fetcht 1,mem_le_name_len
+	copy temp,loopcnt
+	isub temp,null
+	nbranch le_name_length_longer_than_att,positive
+	isub temp,temp
+	arg mem_le_name,contr
+	call memcpy
+	copy temp,loopcnt
+	ncall memcpy_empty,zero
+	rtn
+le_name_length_longer_than_att:
+	copy pdata,loopcnt
+	arg mem_le_name,contr
+	branch memcpy_fast
+
+
+le_modified_name_adv:
+	arg mem_le_adv_data_len+32,regc
+	arg mem_le_adv_data,rega
+	call le_modified_name_adv_and_scan
+	setarg 0
+	setflag user,0,pdata
+	store 1,mem_pdatatemp
+	arg mem_le_scan_data_len+32,regc
+	arg mem_le_scan_data,rega
+	call le_modified_name_adv_and_scan
+	rtn user
+	fetch 1,mem_pdatatemp
+	branch assert,blank
+	rtn
+
+
+le_modified_name_adv_and_scan:
+	bpatchx patch2e_6,mem_patch2e
+	call enable_user
+	call clear_temp_block
+	arg 0,regb	//current length
+	arg mem_le_data_temp,contw
+	call le_modified_name_adv_loop
+	fetch 1,mem_le_name_len
+	add pdata,1,temp
+	iadd regb,rega	
+	increase 2,rega
+	sub rega,0x1f,null
+	nbranch le_modified_name_adv_and_scan_name_overflow,positive
+	istoret 1,contw		//store ble name length
+	arg GAP_ADTYPE_LOCAL_NAME_COMPLETE,temp
+	istoret 1,contw		//store ble name type
+	iforce loopcnt
+	call memcpy_fast
+	copy rega,regb
+le_modified_name_adv_and_scan_store_data:
+	deposit regb
+	store 1,mem_le_data_len_temp
+	arg mem_le_data_len_temp,contr
+	setarg -32
+	iadd regc,contw
+	branch memcpy32
+
+le_modified_name_adv_and_scan_name_overflow:
+	call disable_user
+	branch le_modified_name_adv_and_scan_store_data
+	
+le_modified_name_adv_loop:
+	ifetch 1,rega		//pdata:length
+	rtn blank			//length is zero,ending find
+	pincrease 1		//length += 1
+	ifetcht 1,contr		//pdata:type
+	sub temp,GAP_ADTYPE_LOCAL_NAME_COMPLETE,null
+	branch le_modified_name_adv_found_name,zero
+	iadd regb,regb	
+	copy rega,contr
+	iforce loopcnt
+	call memcpy_fast
+	copy contr,rega
+le_modified_name_adv_loop2:
+	deposit rega
+	isub regc,null
+	rtn positive
+	branch le_modified_name_adv_loop
+
+le_modified_name_adv_found_name:
+	iadd rega,rega
+	branch le_modified_name_adv_loop2
+
+
+memcpy_empty:
+	setarg SPACE
+	istore 1,contw
+	loop memcpy_empty
+	rtn
+
+	
+le_lpm_set_mult:
+	bpatchx patch2e_7,mem_patch2e
+	disable wake
+	branch le_lpm_set_mult_attempt,attempt
+	nbranch le_lpm_lost,match
+le_lpm_set_mult_attempt:
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_le_receive_window
+
+	nbranch lpm_mult_short,match
+	bmark1 mark_old_packet,lpm_mult_short
+
+	fetch 1,mem_le_packet_size
+	nbranch lpm_mult_short,blank		// rx not empty, short interval
+	fetch 1,mem_le_txlen
+	nbranch lpm_mult_short,blank		// tx not empty, short interval
+	
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_SHORT_MULT,lpm_mult_short	//check flag,if flag is 1,always short mult
+	
+	fetch 1,mem_le_state
+	bbit1 lestate_update_param,lpm_mult_short
+	branch lpm_mult_wait_timeout
+	
+le_lpm_lost:
+	fetcht 2,mem_rx_window_sniff
+	rshift temp,temp
+	fetch 2,mem_le_receive_window
+	iadd temp,pdata
+	store 2,mem_le_receive_window
+	branch lpm_lost
+
+///////////////////////////////BLE CONFIG//////////////////////////////////////////
+le_set_config_fixed_tk:
+	arg BIT_BLE_PASSKEY_FIXED_KEY,queue
+	branch le_set_config
+
+le_clr_config_fixed_tk:
+	arg BIT_BLE_PASSKEY_FIXED_KEY,queue
+	branch le_clr_config
+
+le_set_config_fixed_ltk:
+	arg BIT_BLE_PAIRING_FIXED_LTK,queue
+	branch le_set_config
+
+le_clr_config_fixed_ltk:
+	arg BIT_BLE_PAIRING_FIXED_LTK,queue
+	branch le_clr_config
+
+le_set_config_more_data:
+	arg BIT_BLE_TRANSMIT_PACKET_BY_MD,queue
+	branch le_set_config
+
+le_clr_config_more_data:
+	arg BIT_BLE_TRANSMIT_PACKET_BY_MD,queue
+	branch le_clr_config
+
+le_set_config_read_authentication:
+	arg BIT_BLE_READ_AUTH,queue
+	branch le_set_config
+
+le_clr_config_read_authentication:
+	arg BIT_BLE_READ_AUTH,queue
+	branch le_clr_config
+
+le_set_config_write_authentication:
+	arg BIT_BLE_WRITE_AUTH,queue
+	branch le_set_config
+
+le_clr_config_write_authentication:
+	arg BIT_BLE_WRITE_AUTH,queue
+	branch le_clr_config
+
+le_set_config_short_mult:
+	arg BIT_BLE_SHORT_MULT,queue
+	branch le_set_config
+
+le_clr_config_short_mult:
+	arg BIT_BLE_SHORT_MULT,queue
+	branch le_clr_config
+
+
+le_set_config:
+	fetch 1,mem_le_configuration
+	qset1 pdata
+	store 1,mem_le_configuration
+	rtn
+
+le_clr_config:
+	fetch 1,mem_le_configuration
+	qset0 pdata
+	store 1,mem_le_configuration
+	rtn
+
+le_set_fixed_ltk:
+	setarg 0x112233
+	store 3,mem_le_fixed_ltk
+	setarg 0x445566
+	istore 3,contw
+	setarg 0x778899
+	istore 3,contw
+	setarg 0x001122
+	istore 3,contw
+	setarg 0x334455
+	istore 3,contw
+	setarg 0x66
+	istore 1,contw
+	rtn
+
+
+le_set_justwork:
+	setarg 0x01000302
+	store 4,mem_le_pres
+	setarg 0x010010
+	store 3,mem_le_pres_max_keysize
+	jam 1,mem_le_pairing_mode
+	rtn
+
+/////////////////////////////////////////////////////////////////////////
+
+le_fifo_malloc_tx_empty:
+	arg 0,rega
+	arg LLID_EMPTY,type
+	branch le_fifo_malloc_tx
+
+
+//rega:len regb:ll opcode
+le_fifo_malloc_tx_ll:
+	arg LLID_LE_LL,type
+	call le_fifo_malloc_tx
+	copy regb,pdata
+	istore 1,contw
+	rtn
+	
+
+//rega:len regb:cid
+le_fifo_malloc_tx_l2cap:
+	force LLID_L2CAP_START,type
+	increase 4,rega
+	call le_fifo_malloc_tx
+	increase -4,rega
+	copy rega,pdata
+	istore 2,contw
+	copy regb,pdata
+	istore 2,contw
+	rtn
+
+
+//rega:len type:llid
+le_fifo_malloc_tx:
+	sub rega,240,null			//check max len
+	nbranch assert,positive
+	fetch 1,mem_le_tx_buff_used
+	arg 1,temp
+	arg LE_TX_BUFF_COUNT,loopcnt
+le_fifo_malloc_tx_loop:
+	iand temp,null
+	branch le_fifo_malloc_tx_got_empty,zero
+	lshift temp,temp
+	loop le_fifo_malloc_tx_loop
+	branch assert				//no empty buff
+le_fifo_malloc_tx_got_empty:
+	ixor temp,pdata
+	store 1,mem_le_tx_buff_used
+	sub loopcnt,LE_TX_BUFF_COUNT,pdata
+	lshift4 pdata,pdata
+	lshift4 pdata,pdata
+	arg mem_le_tx_buffer0,temp
+	iadd temp,temp
+le_fifo_tx_find_empty_ptr:
+	arg 0,loopcnt
+	arg mem_le_tx_ptr0,contr
+le_fifo_tx_find_empty_ptr_loop:
+	ifetch 2,contr
+	branch le_fifo_tx_found_empty_ptr,blank
+	copy loopcnt,pdata
+	increase 1,loopcnt
+	bne LE_TX_BUFF_COUNT,le_fifo_tx_find_empty_ptr_loop
+	branch assert
+
+	
+le_fifo_tx_found_empty_ptr:
+	increase -2,contr
+	istoret 2,contr
+	copy temp,contw
+	copy rega,pdata
+	istore 1,contw				//lengh
+	setarg 0
+	istore 1,contw				//offset
+	copy type,pdata
+	istore 1,contw				//LLID
+	rtn
+
+
+
+le_fifo_get_first_tx_ptr:
+	fetch 2,mem_le_tx_ptr0
+	copy pdata,contr
+	rtn
+
+le_fifo_get_second_tx_ptr:
+	fetch 2,mem_le_tx_ptr1
+	copy pdata,contr
+	rtn
+
+le_fifo_get_last_tx_ptr:
+	call le_fifo_get_last_tx_ptr0
+	copy pdata,contr
+	rtn
+le_fifo_get_last_tx_ptr0:
+	fetch 2,mem_le_tx_ptr3
+	nrtn blank
+	fetch 2,mem_le_tx_ptr2
+	nrtn blank
+	fetch 2,mem_le_tx_ptr1
+	nrtn blank
+	fetch 2,mem_le_tx_ptr0
+	rtn
+
+le_fifo_get_first_l2cap_ptr:
+	call le_fifo_get_first_tx_ptr
+	increase 3,contr
+	rtn
+
+le_fifo_get_first_att_ptr:
+	call le_fifo_get_first_tx_ptr
+	increase 7,contr
+	rtn
+
+le_fifo_get_last_att_ptr:
+	call le_fifo_get_last_tx_ptr
+	increase 7,contr
+	rtn
+
+le_fifo_get_last_l2cap_ptr:
+	call le_fifo_get_last_tx_ptr
+	increase 3,contr
+	rtn
+
+	
+
+le_fifo_check_full:
+	fetch 2,mem_le_tx_ptr3
+	rtn
+
+
+le_fifo_check_nearly_full:
+	fetch 2,mem_le_tx_ptr2
+	rtn
+
+	
+le_fifo_check_empty:
+	fetch 2,mem_le_tx_ptr0
+	rtn
+
+
+le_fifo_release_first_node:
+	fetch 2,mem_le_tx_ptr0
+	arg mem_le_tx_buffer0,temp
+	isub temp,pdata
+	rshift4 pdata,pdata
+	rshift4 pdata,queue
+	fetch 1,mem_le_tx_buff_used
+	qset0 pdata
+	store 1,mem_le_tx_buff_used
+	arg 0,loopcnt
+le_fifo_release_first_node_loop:
+	lshift loopcnt,pdata
+	arg mem_le_tx_ptr1,temp
+	iadd temp,temp
+	ifetch 2,temp
+	increase -2,temp
+	istore 2,temp
+	copy loopcnt,pdata
+	increase 1,loopcnt
+	bne LE_TX_BUFF_UPDATE_LOOPCNT,le_fifo_release_first_node_loop
+	setarg 0
+	istore 2,temp
+	rtn
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_att.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_att.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_att.prog	(working copy)
@@ -0,0 +1,713 @@
+
+
+le_parse_att:
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+	beq ATTOP_EXCHANGE_MTU_REQUEST,le_parse_att_exchange_mtu_request
+	beq ATTOP_EXCHANGE_MTU_RESPONSE,le_parse_att_exchange_mtu_response
+	beq ATTOP_FIND_INFORMATION_REQUEST,le_parse_att_find_information_request
+	beq ATTOP_FIND_BY_TYPE_VALUE_REQUEST,le_parse_att_find_by_type_value_request
+	beq ATTOP_READ_BY_TYPE_REQUEST,le_parse_att_read_by_type_request
+	beq ATTOP_READ_REQUEST,le_parse_att_read_request
+	beq ATTOP_READ_BLOB_REQUEST,le_parse_att_read_blob_request
+	beq ATTOP_READ_BY_GROUP_TYPE_REQUEST,le_parse_att_read_by_group_type_request
+	beq ATTOP_WRITE_REQUEST,le_parse_att_write_request
+	beq ATTOP_PREPARE_WRITE_REQUEST,le_parse_att_prepare_write_request
+	beq ATTOP_EXECUTE_WRITE_REQUEST,le_parse_att_execute_write_request
+	beq ATTOP_WRITE_COMMAND,le_parse_att_write_command
+	rtn
+
+
+le_send_att_exchange_mtu_requset:
+	force 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_EXCHANGE_MTU_REQUEST
+	istore 1,contw
+	fetch 2,mem_le_local_mtu
+	istore 2,contw
+	rtn
+
+
+le_parse_att_exchange_mtu_request:
+	call le_parse_att_exchange_mtu_response
+le_send_att_exchange_mtu_response:
+	force 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_EXCHANGE_MTU_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_local_mtu
+	istore 2,contw
+	rtn
+
+le_parse_att_exchange_mtu_response:
+	rshift8 pdata,pdata
+	store 2,mem_le_remote_mtu
+	rtn
+
+le_parse_att_find_information_request:
+	call le_get_search_handle_start_end_common
+	call enable_user
+	branch le_send_att_find_information_response
+	
+le_send_att_find_information_response:
+	arg 3,timeup
+	call le_init_attlist_search
+le_send_att_find_information_res_loop:
+	call le_att_handle_inrange
+	branch le_send_att_find_information_res_end,blank
+	nbranch le_send_att_find_information_res_next,positive
+	increase -2,contr
+	call store_contr
+	call get_contw
+	nbranch le_send_att_find_information_res_store_info,user
+	call push_stack_rega_b_c
+	call disable_user
+	force 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	call pop_stack_rega_b_c
+	setarg ATTOP_FIND_INFORMATION_RESPONSE
+	istore 1,contw
+	setarg UUID_SIZE_16BIT
+	istore 1,contw
+le_send_att_find_information_res_store_info:
+	call get_contr
+	ifetch 2,contr
+	istore 2,contw
+	ifetch 1,contr
+	copy pdata,loopcnt
+	call memcpy
+	call store_contw
+	increase -1,timeup
+	branch le_send_att_find_information_res_end,zero
+le_send_att_find_information_res_cont:
+	ifetch 1,contr
+	iadd contr,contr
+	branch le_send_att_find_information_res_loop
+le_send_att_find_information_res_next:
+	ifetch 1,contr
+	iadd contr,contr
+	branch le_send_att_find_information_res_cont
+le_send_att_find_information_res_end:
+	branch le_send_att_error_response_notfound,user
+	branch le_send_auto_len_by_mem
+
+
+le_parse_att_find_by_type_value_request:
+	call le_get_search_handle_start_end_common
+	ifetch 2,contr
+	store 2,mem_le_search_uuid
+	call store_contr
+	arg mem_le_search_att_type_length,contw
+	fetch 2,mem_le_l2cap_size
+	increase -7,pdata
+	call le_get_search_common2
+	branch le_send_att_find_by_type_value_response
+
+
+le_start_end_handle_check_1:
+	disable user
+	fetcht 2,mem_le_search_handle_start
+	fetch 2,mem_le_search_handle_end
+	isub temp,null
+	nbranch le_start_end_handle_check_1_fail,positive
+	deposit temp
+	rtnne 0
+le_start_end_handle_check_1_fail:
+	enable user
+	jam ATT_ERR_INVALID_HANDLE,mem_le_err_code
+	branch le_send_att_error_response
+
+
+le_send_att_find_by_type_value_response:
+	call le_start_end_handle_check_1
+	rtn user
+	fetcht 2,mem_le_search_uuid
+	setarg UUID_GATT_PRIMARY_SERVICE
+	isub temp,null
+	branch le_send_att_find_by_type_value_res_primary,zero
+	branch le_send_att_error_response_notfound
+	
+
+le_send_att_find_by_type_value_res_primary:
+	jam LE_FIND_BY_TYPE_VAL_RES_NOT_FOUND,mem_le_search_res
+	fetcht 2,mem_le_search_handle_start
+	storet 2,mem_temp
+	call le_att_get_handle_info
+	nbranch le_send_att_error_response_notfound,blank
+le_send_att_find_primary_search_loop:
+	fetcht 2,mem_temp
+	call le_att_get_handle_info
+	nbranch le_send_att_error_response_notfound2,blank	
+	copy contr,rega
+	fetch 1,mem_le_curr_att_len
+	copy pdata,loopcnt
+	fetcht 1,mem_le_search_att_type_length
+	isub temp,null
+	nbranch le_send_att_find_primary_search_loop1,zero
+	arg mem_le_search_att_type,regb
+	call string_compare
+
+	branch le_send_att_find_primary_search_end_start_handle_found,zero
+
+	fetch 2,mem_le_cur_uuid
+	fetcht 2,mem_le_search_uuid
+	isub temp,null
+	branch le_send_att_find_primary_search_end_ending_handle_found,zero
+le_send_att_find_primary_search_loop1:
+	fetch 2,mem_temp
+	increase 1,pdata
+	store 2,mem_temp
+	branch le_send_att_find_primary_search_loop
+
+le_send_att_error_response_notfound2:
+	fetch 1,mem_le_search_res
+	beq LE_FIND_BY_TYPE_VAL_RES_FOUND_STARTING_HANDLE,le_send_att_find_primary_search_end_ending_handle_found
+	branch le_send_att_error_response_notfound
+
+	
+le_send_att_find_primary_search_end_start_handle_found:
+	fetch 2,mem_le_cur_uuid
+	fetcht 2,mem_le_search_uuid
+	isub temp,null
+	nbranch  le_send_att_find_primary_search_loop1,zero
+	jam LE_FIND_BY_TYPE_VAL_RES_FOUND_STARTING_HANDLE,mem_le_search_res
+//	copy rega,temp
+	fetcht 2,mem_temp
+	storet 2,mem_le_cur_handle_start
+	branch le_send_att_find_primary_search_loop1
+
+le_send_att_find_primary_search_end_ending_handle_found:
+	fetch 1,mem_le_search_res
+	beq LE_FIND_BY_TYPE_VAL_RES_NOT_FOUND,le_send_att_find_primary_search_loop1
+	jam LE_FIND_BY_TYPE_VAL_RES_FOUND_ENDING_HANDLE,mem_le_search_res
+	fetcht 2,mem_temp
+	increase -1,temp
+	storet 2,mem_le_cur_handle_end
+	
+le_send_att_find_primary_search_end:
+	arg 5,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_FIND_BY_TYPE_VALUE_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_cur_handle_start
+	istore 2,contw
+	fetch 2,mem_le_cur_handle_end
+	istore 2,contw
+	rtn
+
+
+
+le_parse_att_read_by_type_request:
+	call le_get_search_handle_start_end_common
+	call le_get_search_att_uuid
+	branch le_send_att_read_by_type_response
+	
+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_uuid
+	setarg UUID_CHRCTR_DEVICE_NAME
+	isub temp,null
+	branch le_send_att_read_by_type_res_device_name,zero
+	setarg UUID_GATT_CHARACTERISTIC
+	isub temp,null
+	nbranch le_send_att_read_by_type_res_not_characteristic,zero
+	arg 2,timeup
+le_send_att_read_by_type_response_loop:
+	call le_att_check_handle_end
+	nbranch le_send_att_read_by_type_response_end,positive
+	fetcht 2,mem_temp
+	call le_att_get_handle_info_from_ptr
+	beq 1,le_send_att_read_by_type_response_end
+	call le_att_same_uuid
+	nbranch le_send_att_read_by_type_response_next_handle,zero
+	nbranch le_send_att_read_by_type_res_found_next,user
+	disable user
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_TYPE_RESPONSE
+	istore 1,contw
+	copy contw,alarm
+	increase 1,contw
+	
+	call le_send_att_read_by_type_write_properties
+	call le_att_next_handle
+	call le_att_get_handle_info_from_ptr
+	call le_send_att_read_by_type_write_uuid
+	fetch 1,mem_le_cur_uuid_length
+	increase 5,pdata
+	istore 1,alarm
+	fetch 1,mem_le_cur_uuid_length
+	beq 16,le_send_att_read_by_type_response_end
+	increase -1,timeup
+	branch le_send_att_read_by_type_response_end,zero
+le_send_att_read_by_type_response_next_handle:
+	call le_att_next_handle
+	branch le_send_att_read_by_type_response_loop
+le_send_att_read_by_type_response_end:
+	branch le_send_att_error_response_notfound,user
+	branch le_send_auto_len_by_mem
+
+le_send_att_read_by_type_res_found_next:
+	call le_store_att_record
+	call le_att_next_handle
+	call le_att_get_handle_info_from_ptr
+	fetch 1,mem_le_cur_uuid_length
+	beq 16,le_send_att_read_by_type_response_end
+	
+	call get_contw
+	fetch 2,mem_temp
+	increase -1,pdata
+	istore 2,contw
+	call le_write_att_record_common
+	call le_send_att_read_by_type_write_uuid
+	increase -1,timeup
+	branch le_send_att_read_by_type_response_end,zero
+	branch le_send_att_read_by_type_response_next_handle
+
+	
+le_send_att_read_by_type_write_properties:
+	fetch 2,mem_temp
+	istore 2,contw
+	
+	fetch 1,mem_le_curr_att_len
+	copy pdata,loopcnt
+	call get_contr
+	call memcpy_fast
+	branch store_contw
+le_send_att_read_by_type_write_uuid:
+	call get_contw
+	fetch 2,mem_temp
+	istore 2,contw
+	call store_contw
+	fetch 1,mem_le_cur_uuid_length
+	copy pdata,loopcnt
+	call get_contw	
+	call get_contr
+	isub loopcnt,contr
+	increase -1,contr
+	call memcpy_fast
+	branch store_contw
+
+
+
+le_send_att_read_by_type_res_not_characteristic:
+	fetcht 2,mem_le_search_handle_start
+	storet 2,mem_temp
+le_send_att_read_by_type_res_not_char_loop:
+	call le_att_check_handle_end
+	nbranch le_send_att_error_response_notfound,positive
+	call le_att_get_handle_info_from_ptr
+	beq 1,le_send_att_error_response_notfound
+	call le_att_same_uuid
+	nbranch le_send_att_read_by_type_res_not_char_next,zero
+
+le_send_att_read_by_type_res_not_char_common:
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_TYPE_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_curr_att_len
+	copy pdata,loopcnt
+	increase 2,pdata
+	istore 1,contw
+	fetch 2,mem_temp
+	istore 2,contw
+	call get_contr
+	call memcpy_fast
+	call store_contw
+	branch le_send_auto_len_by_mem
+	
+le_send_att_read_by_type_res_not_char_next:
+ 	call le_att_next_handle
+	branch le_send_att_read_by_type_res_not_char_loop
+
+
+le_send_att_read_by_type_res_device_name:
+	arg UUID_CHRCTR_DEVICE_NAME,temp
+	call le_att_get_short_uuid_ptr
+	rtn blank
+	increase -5,contr // point to handle
+	ifetch 2,contr		
+	store 2,mem_temp
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_TYPE_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_name_len
+	copy pdata,loopcnt
+	increase 2,pdata
+	istore 1,contw
+	fetch 2,mem_temp
+	istore 2,contw
+	arg mem_le_name,contr
+	call memcpy_fast
+	call store_contw
+	branch le_send_auto_len_by_mem
+
+
+
+le_parse_att_read_request:
+	fetcht 2,mem_le_att_handle
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_READ_AUTH,le_send_att_read_response_check_auth
+
+le_send_att_read_response:
+	call le_att_get_handle_ptr
+	branch le_send_att_error_response_notfound,blank
+	increase -2,contr
+	ifetch 2,contr
+	arg UUID_CHRCTR_DEVICE_NAME,temp
+	isub temp,null
+	branch le_send_device_name,zero
+	ifetch 1,contr
+	sub pdata,22,null
+	branch le_send_att_read_response_less,positive
+	force 22,pdata
+le_send_att_read_response_less:
+	copy pdata,regc
+	call store_contr
+	add regc,1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_RESPONSE
+	istore 1,contw
+	copy regc,loopcnt
+	call get_contr
+	branch memcpy
+
+le_send_device_name:
+	call store_contr
+	fetch 1,mem_le_name_len
+	add pdata,1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_name_len
+	copy pdata,loopcnt
+	arg mem_le_name,contr
+	branch memcpy
+	
+	
+le_send_att_read_response_check_auth:
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch le_send_att_read_response,zero
+//le_send_att_read_response_error_insufficient_auth:
+	call le_check_encrypt_state
+	nbranch le_send_att_read_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
+
+
+le_parse_att_read_blob_request:
+	ifetch 2,contr
+	store 2,mem_le_att_offset
+le_send_att_read_blob_response:
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BLOB_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_att_offset
+	iforce rega
+	fetcht 2,mem_le_att_handle
+	call le_att_get_handle_ptr 
+	branch le_send_att_error_response_notfound,blank
+	ifetch 1,contr
+	isub rega,loopcnt
+	nbranch le_send_att_error_response_notfound,positive
+	sub loopcnt,22,null
+	branch le_send_att_read_blob_response_less,positive
+	force 22,loopcnt
+le_send_att_read_blob_response_less:
+	deposit rega
+	iadd contr,contr
+	call memcpy_fast
+	call store_contw
+	branch le_send_auto_len_by_mem
+
+
+le_parse_att_read_by_group_type_request:
+	call le_get_search_handle_start_end_common
+ 	call le_get_search_att_type
+	branch le_send_att_read_by_group_type_response
+	
+//mem_le_search_att_type
+//mem_le_search_handle_start
+//mem_le_search_handle_end
+le_send_att_read_by_group_type_response:
+	arg 2,timeup
+	fetcht 2,mem_le_search_handle_start
+//	arg 23,pdata
+//	isub temp,null
+//	call ice_break,zero
+	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
+le_send_att_read_by_group_type_response_loop:
+	call le_att_check_handle_end
+	nbranch le_send_att_read_by_group_type_end0,positive
+	fetcht 2,mem_temp
+	call le_att_get_handle_info_from_ptr
+	beq 1,le_send_att_read_by_group_type_end1
+
+	call le_att_same_type
+	nbranch le_send_att_read_by_group_type_next_handle,zero
+	copy timeup,pdata
+	beq 0,le_send_att_read_by_group_type_end1
+	nbranch le_send_att_read_by_group_type_store_write_record,user		//un first
+	disable user
+	//first att uuid
+	arg 20,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_READ_BY_GROUP_TYPE_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_curr_att_len
+	increase 4,pdata
+	istore 1,contw
+	call store_contw
+	branch le_send_att_read_by_group_type_store_record
+le_send_att_read_by_group_type_store_write_record:
+	fetch 1,mem_le_curr_att_len
+	beq 16,le_send_att_read_by_group_type_end1
+	fetch 2,mem_temp
+	increase -1,pdata
+	store 2,mem_le_cur_handle_end
+	call le_write_att_record
+le_send_att_read_by_group_type_store_record:
+	fetch 2,mem_temp
+	store 2,mem_le_cur_handle_start
+	call le_store_att_record
+	increase -1,timeup
+//	branch le_send_att_read_by_group_type_last_find,zero		
+le_send_att_read_by_group_type_next_handle:
+	call le_att_next_handle
+	branch le_send_att_read_by_group_type_response_loop
+
+le_send_att_read_by_group_type_end0:	//> att handle end
+	fetch 2,mem_temp
+	store 2,mem_le_cur_handle_end
+	branch le_send_att_read_by_group_type_end_common
+le_send_att_read_by_group_type_end1:	//>att max list handle or diff len 
+	fetch 2,mem_temp
+	increase -1,pdata
+	store 2,mem_le_cur_handle_end
+	branch le_send_att_read_by_group_type_end_common
+le_send_att_read_by_group_type_end_common:
+	branch le_send_att_error_response_notfound,user
+	call le_write_att_record
+	branch le_send_auto_len_by_mem
+
+
+
+
+le_parse_att_write_request:
+	copy contr,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-3,regb
+	call le_writeatt_cb
+le_send_att_write_response_check_auth:
+	fetch 1,mem_le_configuration
+	bbit0 BIT_BLE_WRITE_AUTH,le_send_att_write_response
+	
+	fetcht 2,mem_le_att_handle
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch le_send_att_write_response,zero
+	call le_check_encrypt_state
+	nbranch le_send_att_write_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
+
+le_send_att_write_response:
+	force 1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_WRITE_RESPONSE
+	istore 1,contw
+	rtn
+
+le_check_encrypt_state:
+	call disable_user
+	fetch 1,mem_le_pairing_mode
+	rtneq LE_PAIRING_MODE_NONE
+	fetch 1,mem_context
+	rtnbit1 lestate_encryption
+	branch enable_user
+
+
+le_parse_att_prepare_write_request:
+	add contr,2,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-5,regb
+	call le_writeatt_cb
+	branch le_send_att_prepare_write_response
+
+
+le_send_att_prepare_write_response:
+	fetch 2,mem_le_l2cap_size
+	copy pdata,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_PREPARE_WRITE_RESPONSE
+	istore 1,contw
+	fetch 2,mem_le_att_handle
+	istore 2,contw
+	fetch 2,mem_le_l2cap_size
+	add pdata,-5,loopcnt	
+	fetch 2,mem_le_payload_ptr
+	add pdata,7,contr
+	ifetch 2,contr		//offset
+	istore 2,contw
+	branch memcpy_fast
+
+
+
+le_parse_att_execute_write_request:
+
+le_send_att_execute_write_response:
+	force 1,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_EXECUTE_WRITE_RESPONSE
+	istore 1,contw
+	rtn
+
+
+
+le_parse_att_write_command:
+	copy contr,rega
+	fetch 2,mem_le_l2cap_size
+	add pdata,-3,regb
+	branch le_writeatt_cb
+
+
+
+//rga:len temp:handle;rgea,regb,regc already used
+le_att_malloc_tx_notify:
+	copy temp,regc
+	increase 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	increase -3,rega
+	setarg ATTOP_HANDLE_VALUE_NOTIFICATION
+	istore 1,contw
+	copy regc,temp
+	istoret 2,contw
+	rtn
+
+//rga:len temp:handle;rgea,regb,regc already used
+le_att_malloc_tx_indication:
+	copy temp,regc
+	increase 3,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	increase -3,rega
+	setarg ATTOP_HANDLE_VALUE_INDICATION
+	istore 1,contw
+	copy regc,temp
+	istoret 2,contw
+	rtn
+
+
+///////////////////////////ATT common function////////////////////////////////////
+
+le_send_att_error_response_notfound:	
+	jam ATT_ERR_ATTRIBUTE_NOT_FOUND,mem_le_err_code
+le_send_att_error_response:	
+	force 5,rega
+	call le_fifo_malloc_tx_l2cap_gatt
+	setarg ATTOP_ERROR_RESPONSE
+	istore 1,contw
+	fetch 1,mem_le_att_opcode
+	istore 1,contw
+	fetch 2,mem_le_att_handle
+	istore 2,contw
+	fetch 1,mem_le_err_code
+	istore 1,contw
+	rtn
+
+
+le_fifo_malloc_tx_l2cap_gatt:
+	force LE_L2CAP_CID_ATT,regb
+	branch le_fifo_malloc_tx_l2cap
+
+
+le_att_next_handle:
+	fetcht 2,mem_temp
+	increase 1,temp
+	storet 2,mem_temp
+	rtn
+
+le_att_check_handle_end:
+	fetcht 2,mem_temp
+	fetch 2,mem_le_search_handle_end
+	isub temp,null
+	rtn
+
+
+le_att_same_type:
+	fetcht 1,mem_le_search_att_type_length
+	arg mem_le_search_att_type,rega
+le_att_check_same_common:
+	fetch 1,mem_le_cur_uuid_length
+	copy pdata,loopcnt
+	isub temp,null
+	nrtn zero
+	arg mem_le_cur_uuid ,regb
+	branch string_compare
+
+le_att_same_uuid:
+	fetcht 1,mem_le_search_uuid_length
+	arg mem_le_search_uuid,rega
+	branch le_att_check_same_common
+
+
+le_store_att_record:
+	fetch 1,mem_le_curr_att_len
+	store 1, mem_tmp_buffer
+	copy pdata,loopcnt
+	call get_contr
+	branch memcpy_fast
+
+
+le_write_att_record:
+	call get_contw
+	fetch 2,mem_le_cur_handle_start
+	istore 2,contw
+	fetch 2,mem_le_cur_handle_end
+	istore 2,contw
+le_write_att_record_common:
+	fetch 1,mem_tmp_buffer
+	copy pdata,loopcnt
+	call memcpy_fast
+	branch store_contw
+
+
+
+le_send_auto_len_by_mem:
+	call get_contw
+	call le_fifo_get_last_att_ptr
+	copy contw,pdata
+	isub contr,rega
+	call le_fifo_get_last_l2cap_ptr
+	copy rega,pdata
+	istore 2,contr
+	increase 4,rega
+	call le_fifo_get_last_tx_ptr
+	copy rega,pdata
+	istore 1,contr
+	rtn
+
+
+le_get_search_handle_start_end_common:
+	rshift8 pdata,pdata
+	store 2,mem_le_search_handle_start
+	ifetch 2,contr
+	store 2,mem_le_search_handle_end
+	rtn
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_signalling.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_signalling.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_signalling.prog	(working copy)
@@ -0,0 +1,54 @@
+
+
+le_parse_signaling:
+	ifetch 1,contr
+	ifetcht 1,contr //id
+	ifetcht 2,contr //length
+	beq L2CAP_CONNECTION_PARAMETER_UPDATE_RESPONSE,le_l2cap_parse_conn_parameter_update_rsp
+	rtn
+le_l2cap_parse_conn_parameter_update_rsp:
+	ifetch 2,contr	//result
+	store 2,mem_le_l2cap_signaling_conn_param_update_rsp_result
+	jam BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+//mem_le_interval_min:the ptr that connection parameter,
+//include 	ConnIntervalMin,ConnIntervalMax,
+//		ConnSlaveLatency,ConnSupervisionTimeout
+le_l2cap_tx_update_req:
+	arg 0x0c,rega
+	arg L2CAP_CONNECTION_PARAMETER_UPDATE_REQUEST,regc
+	call le_fifo_malloc_tx_l2cap_signaling
+	setarg 0x08
+	istore 2,contw
+	fetch 8,mem_le_interval_min
+	istore 8,contw
+	rtn
+
+
+//rega:len regc:signaling opcode
+le_fifo_malloc_tx_l2cap_signaling:
+	call le_l2cap_update_signaling_identifier
+	arg LE_L2CAP_CID_SIGNAL,regb
+	call le_fifo_malloc_tx_l2cap
+	copy regc,pdata
+	istore 1,contw
+	fetch 1,mem_le_signaling_identifier
+	istore 1,contw
+	rtn
+
+
+le_l2cap_update_signaling_identifier:
+	fetch 1,mem_le_signaling_identifier
+	//beq 0xff,le_l2cap_signaling_identifier_set_1
+	pincrease 1
+	store 1,mem_le_signaling_identifier
+	rtnne 0
+	
+le_l2cap_reset_signaling_identifier:
+	jam 1,mem_le_signaling_identifier
+	rtn
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_smp.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_smp.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_l2cap_smp.prog	(working copy)
@@ -0,0 +1,594 @@
+
+le_pairing_mode_init:
+	fetch  1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_NONE, le_set_no_pairing
+	beq LE_PAIRING_MODE_LAGACY_JUSTWORK,le_set_pairing_mode_lagacy_just_work
+	beq LE_PAIRING_MODE_LAGACY_PASSKEY,le_set_pairing_mode_lagacy_passkey
+ifdef SECURE_CONNECTION
+	beq LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK,le_set_pairing_mode_secure_justwork
+	beq LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC,le_set_pairing_mode_secure_numeric
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_set_pairing_mode_secure_passkey
+endif
+	rtn
+
+ifdef SECURE_CONNECTION	
+le_set_pairing_mode_secure_justwork:
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch le_set_noinputnooutput
+le_set_pairing_mode_secure_numeric:
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	jam FLAG_IOCAP_DISPLAYYESNO,mem_le_pres_iocap
+	rtn
+le_set_pairing_mode_secure_passkey:	
+	jam FLAG_LE_BONDING_MITM_SECURE,mem_le_pres_auth
+	branch le_set_displayonly
+endif
+le_set_no_pairing:
+	jam FLAG_LE_NO_BONDING_NO_MITM,mem_le_pres_auth
+le_set_noinputnooutput:	
+	jam FLAG_IOCAP_NOINPUTNOOUTPUT,mem_le_pres_iocap
+	rtn
+le_set_pairing_mode_lagacy_just_work:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+	branch le_set_noinputnooutput
+le_set_pairing_mode_lagacy_passkey:
+	jam FLAG_LE_BONDING_MITM,mem_le_pres_auth
+le_set_displayonly:	
+	jam FLAG_IOCAP_DISPLAYONLY,mem_le_pres_iocap
+	rtn
+
+	
+le_secure_connection_enable:
+	fetch 1,mem_le_pres_auth
+	set1 LE_AUTH_SECURE_CONNECTION_PAIRING_BIT,pdata
+	store 1,mem_le_pres_auth
+	rtn
+le_secure_connection_disable:
+	fetch 1,mem_le_pres_auth
+	set0 LE_AUTH_SECURE_CONNECTION_PAIRING_BIT,pdata
+	store 1,mem_le_pres_auth
+	rtn
+
+le_parse_smp:
+	ifetch 1,contr
+	beq SMP_PAIRING_REQUEST,le_parse_smp_pairing_request
+//	beq SMP_PAIRING_RESPONSE,le_parse_smp_pairing_response
+	beq SMP_PAIRING_CONFIRM,le_parse_smp_pairing_confirm
+	beq SMP_PAIRING_RANDOM,le_parse_smp_pairing_random
+	beq SMP_PAIRING_FAILED,le_parse_smp_pairing_failed
+	beq SMP_ENCRYPTION_INFORMATION,le_parse_smp_encryption_information
+	beq SMP_MASTER_IDENTIFICATION,le_parse_smp_master_identification
+	beq SMP_IDENTITY_INFORMATION,le_parse_smp_identity_information
+	beq SMP_IDENTITY_ADDRESS_INFORMATION,le_parse_smp_identity_address_information
+	beq SMP_SIGNING_INFORMATION,le_parse_smp_signing_information
+	beq SMP_SECURITY_REQUEST,le_parse_smp_security_request
+ifdef SECURE_CONNECTION
+	beq SMP_PAIRING_PUBLIC_KEY,le_parse_smp_public_key
+	beq SMP_PAIRING_DHKEY_CHECK,le_parse_smp_dhkey_check
+endif
+	rtn
+
+
+
+le_send_smp_security_request:
+	force 2,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_SECURITY_REQUEST
+	istore 1,contw
+	fetch 1,mem_le_pres_auth
+	istore 1,contw
+	rtn
+		
+le_parse_smp_pairing_request:
+	store 1,mem_le_preq
+	ifetch 6,contr
+	istore 6,contw
+	fetch 1,mem_le_pairing_mode
+	beq  LE_PAIRING_MODE_NONE,le_smp_pairing_fail_reason_not_support_pairing
+	call le_send_smp_pairing_response
+	call le_check_master_support_secure_connect
+	jam FLAG_LE_PAIRING_RCV_PAIRING_REQ,mem_le_pairing_state
+	fetch 1,mem_le_preq_iocap
+	beq  FLAG_IOCAP_DISPlAYONLY,le_set_tk_0
+	beq  FLAG_IOCAP_DISPLAYYESNO,le_set_tk_0
+	beq  FLAG_IOCAP_NOINPUTNOOUTPUT,le_set_tk_0
+	fetch 1,mem_le_pairing_mode	
+	beq LE_PAIRING_MODE_LAGACY_PASSKEY,le_parse_smp_pairing_req_passkey
+	rtneq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY
+le_set_tk_0:
+	arg 0,pdata
+	store 4,mem_le_tk
+	rtn
+
+le_parse_smp_pairing_req_passkey:
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_PASSKEY_FIXED_KEY,le_parse_smp_pairing_req_fixed_passkey
+le_genernate_tk:
+	arg mem_le_tk,rega
+	copy rega,contw
+	arg 3,loopcnt
+	call generate_random_loop
+	fetch 2,mem_le_tk + 2
+	and_into 0x7,pdata
+	store 2,mem_le_tk + 2
+le_parse_smp_pairing_req_fixed_passkey:
+	jam BT_EVT_LE_TK_GENERATE,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_check_master_support_secure_connect:
+	fetch 1,mem_le_preq_auth
+	rtnbit1  LE_AUTH_SECURE_CONNECTION_PAIRING_BIT
+	fetch 1,mem_le_pairing_mode
+	rtnbit0 LE_PAIRING_MODE_SECURE_CONNECT_BIT
+	branch app_ble_disconnect	
+
+le_send_smp_pairing_response:
+	force 7,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	fetch 7,mem_le_pres
+	istore 7,contw
+	rtn
+		
+
+le_parse_smp_pairing_confirm:
+ifdef SECURE_CONNECTION
+	copy contr,rega
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_parse_smp_pairing_confirm_secure_passkey
+	copy rega,contr
+endif
+	arg mem_le_rconfirm,contw
+	call memcpy16
+	branch le_send_smp_pairing_confirm
+ifdef SECURE_CONNECTION
+le_parse_smp_pairing_confirm_secure_passkey:
+	copy rega,contr
+	arg mem_le_rconfirm,contw
+	call memcpy16
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_PASSKEY_WAIT_CONFIRM,mem_le_secure_connect_state	
+	rtn
+endif	
+
+
+le_send_smp_pairing_confirm:
+ifdef SECURE_CONNECTION
+	fetch 1,mem_le_pairing_mode
+	bbit1 LE_PAIRING_MODE_SECURE_CONNECT_BIT,le_send_smp_pairing_confirm_sc
+endif
+	call generate_confirm
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_CONFIRM
+	istore 1,contw
+	branch  store_aes_result
+
+	
+ifdef SECURE_CONNECTION
+le_send_smp_pairing_confirm_sc:
+	arg mem_le_srand,contw	
+	call generate_random
+	call function_f4_cb
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_CONFIRM
+	istore 1,contw
+	branch  load_inverse_result
+
+endif
+
+	
+le_parse_smp_pairing_random:	
+ifdef SECURE_CONNECTION
+	copy contr,rega
+	fetch 1,mem_le_pairing_mode
+	bbit1 LE_PAIRING_MODE_SECURE_CONNECT_BIT,le_parse_smp_pairing_random_sc
+	copy rega,contr
+endif
+	call authenticate_rconfirm
+	branch le_parse_smp_pairing_random_success,zero
+le_send_pairing_confirm_value_failed:
+	jam PAIRING_FAILED_CONFIRM_VALUE_FAILED,mem_le_ll_pairing_fail_reason
+le_send_pairing_failed:
+	force 2,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_FAILED
+	istore 1,contw
+	fetch 1,mem_le_ll_pairing_fail_reason
+	istore 1,contw	
+le_parse_smp_pairing_failed:
+	force smp_pairing_timer,queue
+	call timer_stop
+	jam FLAG_LE_PAIRING_NULL,mem_le_pairing_state
+	jam BT_EVT_LE_PAIRING_FAIL,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_smp_pairing_fail_reason_not_support_pairing:
+	jam PAIRING_FAILED_PAIRING_NOT_SUPPORTED,mem_le_ll_pairing_fail_reason
+	branch le_send_pairing_failed
+	
+	
+ifdef SECURE_CONNECTION	
+le_parse_smp_pairing_random_sc:
+	arg mem_le_mrand,contw
+	copy rega,contr
+	call memcpy16	
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_parse_smp_pairing_random_sc_passkey
+	call function_g2
+//	jam LE_SC_STAT_RECEIVE_RANDOM,mem_le_secure_connect_state
+//	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	call le_send_smp_pairing_random
+	fetch 1,mem_le_pairing_mode
+	rtnne LE_PAIRING_MODE_SECURE_CONNECT_NUMERIC
+	jam BT_EVT_LE_GKEY_GENERATE,mem_fifo_temp
+	branch ui_ipc_send_event	
+	
+le_parse_smp_pairing_random_sc_passkey:
+	call function_f4_ca
+	arg mem_AES_CMAC_temp,contw
+	call load_inverse_result	
+	arg mem_AES_CMAC_temp,rega
+	arg mem_le_rconfirm ,regb
+	arg 16,loopcnt
+	call string_compare
+	nbranch le_send_pairing_confirm_value_failed,zero
+	branch le_send_smp_pairing_random
+endif
+	
+le_parse_smp_pairing_random_success:
+	call generate_stk
+	jam BT_EVT_LE_PAIRING_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event
+	jam 1,mem_ltk_exists
+	jam FLAG_LE_PAIRING_AFTER_AUTH,mem_le_pairing_state
+	
+le_send_smp_pairing_random:
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_RANDOM
+	istore 1,contw
+	arg mem_le_srand,contr
+	branch memcpy16
+	
+le_parse_smp_encryption_information:
+	arg mem_le_peer_ltk,contw
+	branch memcpy16
+
+le_send_smp_encryption_information:
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_ENCRYPTION_INFORMATION
+	istore 1,contw
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_PAIRING_FIXED_LTK,le_send_fixed_ltk
+	arg mem_le_ltk,contr
+	branch memcpy16
+
+le_send_fixed_ltk:
+	arg mem_le_fixed_ltk,contr
+	branch memcpy16
+
+
+le_send_smp_master_identification:
+	arg mem_le_ediv,contw
+	force 10,loopcnt
+	call generate_random_loop
+	force 11,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_MASTER_IDENTIFICATION
+	istore 1,contw
+	fetch 2,mem_le_ediv
+	istore 2,contw
+	fetch 8,mem_le_rand
+	istore 8,contw
+	rtn
+
+le_send_smp_identity_information:
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_IDENTITY_INFORMATION
+	istore 1,contw
+	setarg 0
+	istore 8,contw
+	istore 8,contw
+	rtn
+	
+
+le_send_smp_identity_address_information:
+	force 8,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_IDENTITY_ADDRESS_INFORMATION
+	istore 1,contw
+	fetch 1,mem_le_conn_own_addr_type
+	istore 1,contw
+	fetch 6,mem_le_lap	
+	istore 6,contw
+	rtn	
+
+
+le_send_pairing_fail_unspecified_reason:
+	jam PAIRING_FAILED_UNSPECIFIED_REASON,mem_le_ll_pairing_fail_reason
+	branch le_send_pairing_failed
+
+le_check_init_key_distribution:
+	fetch 1,mem_le_pres_init_key_distribution
+	fetcht 1,mem_le_pres_init_key_distribution
+	iand temp,pdata
+	rtn	
+
+le_parse_smp_identity_information:
+	arg mem_le_irk,contw
+	call memcpy16
+	call le_check_init_key_distribution
+	isolate0 LE_INITATOR_IRK_BIT,pdata
+	branch le_send_pairing_fail_unspecified_reason,true
+	fetch 1,mem_device_option
+	rtnne dvc_op_module
+	call le_check_master_addr_type
+	nrtn user
+	branch app_ble_store_reconn_info
+
+//output:user is enable ,random addr type
+le_check_master_addr_type:
+	call disable_user
+	fetch 1,mem_le_conn_peer_addr_type
+	rtneq MASTER_PUBLIC_ADDR
+	fetch 1,mem_le_plap+5
+	compare 0xc0,pdata,0xc0
+	rtn true
+	branch enable_user
+
+le_parse_smp_identity_address_information:
+	call le_check_init_key_distribution
+	isolate0 LE_INITATOR_IRK_BIT,pdata
+	branch le_send_pairing_fail_unspecified_reason,true
+	rtn
+
+le_parse_smp_master_identification:
+le_parse_smp_signing_information:	
+le_parse_smp_security_request:
+	rtn
+	
+ifdef SECURE_CONNECTION
+le_parse_smp_public_key:
+	arg mem_le_pubkey_remote_x_256,contw	
+	call memcpy64
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_RECEIVE_PUBLIC_KEY,mem_le_secure_connect_state
+	rtn
+
+le_parse_smp_dhkey_check:
+	arg mem_sp_confirm_remote,contw
+	call memcpy16	
+	jam LE_SC_STAT_RECEIVE_DHKEY,mem_le_secure_connect_state
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn	
+
+le_send_smp_pairing_public_key:
+	force 65,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_PUBLIC_KEY
+	istore 1,contw	
+	arg mem_le_pubkey_local_x_256,contr
+	branch memcpy64
+	
+le_send_smp_pairing_dhkey_check:
+	call function_f6_eb	
+	force 17,rega
+	call le_fifo_malloc_tx_l2cap_smp
+	setarg SMP_PAIRING_DHKEY_CHECK
+	istore 1,contw
+	branch load_inverse_result
+	
+endif
+
+le_check_paring_time:
+	fetch 1,mem_le_pairing_state
+	rtneq FLAG_LE_PAIRING_END
+	arg FLAG_LE_PAIRING_RCV_PAIRING_REQ,temp
+	isub temp,null
+	nrtn positive
+	arg smp_pairing_timer,queue
+	call timer_check
+	nrtn blank
+	branch le_send_pairing_fail_unspecified_reason
+
+le_pairing_sm:
+	bpatchx patch2f_0,mem_patch2f
+	fetch 1,mem_le_pairing_state
+	beq FLAG_LE_PAIRING_NULL,le_pairing_sm_null
+	beq FLAG_LE_PAIRING_START,le_pairing_sm_start
+	beq FLAG_LE_PAIRING_SEND_RECURITY_REQ,le_pairing_sm_send_sec_req
+	beq FLAG_LE_PAIRING_RCV_PAIRING_REQ,le_pairing_sm_rcv_pairing_req
+	beq FLAG_LE_PAIRING_AFTER_AUTH,le_pairing_sm_after_auth
+	beq FLAG_LE_PARING_SEND_ENC_INFORMATION,le_pairng_sm_send_enc_information
+	beq FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION,le_pairng_sm_send_master_indentification
+	beq FLAG_LE_PARING_SEND_INDENTITY_INFORMATION,le_pairng_sm_send_indentity_information
+	rtn
+
+le_pairing_sm_null:
+le_pairing_sm_send_sec_req:
+	fetch 1,mem_le_enc_state
+	rtnne FLAG_LE_SEND_START_ENC_RSP
+	jam FLAG_LE_ENC_END,mem_le_enc_state
+	jam FLAG_LE_PAIRING_END,mem_le_pairing_state
+	jam BT_EVT_LE_RECONNECT_COMPLETE ,mem_fifo_temp
+	branch ui_ipc_send_event	
+	
+	
+le_pairing_sm_start:
+	jam FLAG_LE_PAIRING_SEND_RECURITY_REQ,mem_le_pairing_state
+	branch le_send_smp_security_request
+
+le_pairing_sm_rcv_pairing_req:
+	jam FLAG_LE_PAIRING_AUTH,mem_le_pairing_state
+	setarg TIMER_SMP_PAIRING_TIMEOUT
+	arg smp_pairing_timer,queue
+	branch timer_init
+	
+le_pairing_sm_after_auth:
+	fetch 1,mem_le_enc_state
+	beq FLAG_LE_SEND_START_ENC_RSP,le_pairing_sm_after_auth_start_enc
+	rtn
+	
+le_pairing_sm_after_auth_start_enc:
+	jam FLAG_LE_PARING_SEND_ENC_INFORMATION,mem_le_pairing_state
+	jam BT_EVT_LE_ENC_INFO,mem_fifo_temp
+	call ui_ipc_send_event
+	call le_send_smp_encryption_information
+	fetch 1,mem_device_option
+	rtnne dvc_op_module
+	call le_check_master_addr_type
+	rtn user
+	branch app_ble_store_reconn_info
+
+
+le_pairng_sm_send_enc_information:	
+	jam FLAG_LE_PARING_SEND_MASTER_IDENTIFICATION,mem_le_pairing_state
+	branch le_send_smp_master_identification
+
+le_pairng_sm_send_master_indentification:	
+	fetch 1,mem_le_preq_resp_key_distribution
+	fetcht 1,mem_le_pres_resp_key_distribution
+	iand temp,pdata
+	isolate0 LE_INITATOR_IRK_BIT,pdata
+	branch le_parse_start_enc_rsp_after_auth_end,true
+	jam FLAG_LE_PARING_SEND_INDENTITY_INFORMATION,mem_le_pairing_state
+	branch le_send_smp_identity_information
+
+le_pairng_sm_send_indentity_information:		
+	call le_send_smp_identity_address_information
+	branch le_parse_start_enc_rsp_after_auth_end
+
+
+le_parse_start_enc_rsp_after_auth_end:
+	force smp_pairing_timer,queue
+	call timer_stop
+	jam FLAG_LE_ENC_END,mem_le_enc_state
+	jam FLAG_LE_PAIRING_END,mem_le_pairing_state
+	jam BT_EVT_LE_PAIRING_COMPLETE ,mem_fifo_temp
+	branch ui_ipc_send_event	
+	
+
+ifdef SECURE_CONNECTION
+
+le_secure_connect_sm:
+	bpatchx patch2f_1,mem_patch2f
+	fetch 1,mem_le_pairing_mode
+	rtnbit0 LE_PAIRING_MODE_SECURE_CONNECT_BIT
+	fetch 1,mem_le_secure_connect_flag
+	rtnne LE_SP_FLAG_COMMIT_256
+	jam SP_FLAG_STANDBY,mem_le_secure_connect_flag
+	fetch    1,mem_le_secure_connect_state
+	beq  LE_SC_STAT_RECEIVE_PUBLIC_KEY,le_sc_sm_receive_public_key
+	beq LE_SC_STAT_WAIT_SEND_PUBLIC_KEY,le_sc_sm_wait_send_public_key
+	beq LE_SC_STAT_SEND_PUBLIC_KEY,le_sc_sm_send_public_key
+	beq LE_SC_STAT_RECEIVE_DHKEY,le_sc_sm_receive_dhkey
+	beq LE_SC_STAT_WAIT_CONFIRM_GKEY,le_sc_sm_wait_confirm_gkey
+	beq  LE_SC_STAT_PASSKEY_WAIT_CONFIRM,le_sc_sm_passkey_wait_confirm
+	rtn	
+
+
+le_sc_sm_passkey_wait_confirm:
+	fetch 1,mem_authentication_passkey_times
+	copy pdata,queue
+	increase 1,pdata
+	store 1,mem_authentication_passkey_times
+	fetch 4,mem_le_tk
+	qisolate1 pdata
+	setarg 0x80
+	setflag true,0,pdata
+	store 1,mem_passkey_1bit
+	branch le_sc_sm_ready_send_pairing_confirm
+	
+le_sc_sm_wait_confirm_gkey:
+	fetch 1,mem_le_sc_confirm_gkey_flag
+	jam FLAG_LE_SC_CONFRIM_NULL,mem_le_sc_confirm_gkey_flag
+	beq FLAG_LE_SC_CONFRIM_GKEY_OK,le_sc_confirm_gkey_ok
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn
+	
+le_sc_confirm_gkey_ok:
+	jam BT_EVT_LE_PAIRING_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event	
+	jam FLAG_LE_PAIRING_AFTER_AUTH,mem_le_pairing_state
+	branch le_send_smp_pairing_dhkey_check
+
+le_sc_sm_receive_dhkey:
+	fetch 1,mem_sp_dhkey_invalid
+	beq SP_KEY_VALID_256,le_dhkey_ready
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn
+
+le_dhkey_ready:
+	call function_f5
+//	arg mem_le_r,contw
+//	force 2,loopcnt
+//	call memset0
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY ,le_dhkey_ready_common
+	call le_set_tk_0 
+le_dhkey_ready_common:
+	call function_f6_ea
+	arg mem_AES_CMAC_temp,rega
+	arg mem_sp_confirm_remote ,regb
+	arg 16,loopcnt
+	call string_compare
+	branch le_dhkey_check_ok,zero
+le_dhkey_check_fail:	
+	jam PAIRING_FAILED_DHKEY_CHECK_FAILED,mem_le_ll_pairing_fail_reason
+	branch le_send_pairing_failed
+
+	
+le_dhkey_check_ok:
+	call sp_calc_check_publickey_256
+	nbranch le_dhkey_check_fail,zero
+	jam 1,mem_ltk_exists
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_JUSTWORK,le_sc_confirm_gkey_ok
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY ,le_sc_confirm_gkey_ok	
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_WAIT_CONFIRM_GKEY,mem_le_secure_connect_state	
+	rtn	
+
+le_sc_sm_send_public_key:
+	fetch 1,mem_le_pairing_mode
+	beq LE_PAIRING_MODE_SECURE_CONNECT_PASSKEY,le_sc_sm_send_public_key_passkey
+	jam 0,mem_passkey_1bit
+le_sc_sm_ready_send_pairing_confirm:
+	branch le_send_smp_pairing_confirm
+
+le_sc_sm_send_public_key_passkey:
+//	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+//	jam LE_SC_STAT_PASSKEY_WAIT_CONFIRM,mem_le_secure_connect_state	
+//	branch p_ng_event_le_get_passkey
+	jam 0,mem_authentication_passkey_times
+	branch le_parse_smp_pairing_req_passkey
+
+	
+le_sc_sm_receive_public_key:
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	fetch 1,mem_le_sc_local_key_invalid
+	beq SP_KEY_VALID_256,le_public_key_ready
+//	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	rtn
+	
+le_public_key_ready:
+	jam LE_SC_STAT_WAIT_SEND_PUBLIC_KEY,mem_le_secure_connect_state	
+	jam SP_KEY_INVALID,mem_sp_dhkey_invalid
+	branch sp_dhkey_calc_256	
+
+le_sc_sm_wait_send_public_key:
+	jam LE_SP_FLAG_COMMIT_256,mem_le_secure_connect_flag
+	jam LE_SC_STAT_SEND_PUBLIC_KEY,mem_le_secure_connect_state
+	branch le_send_smp_pairing_public_key
+
+endif
+
+
+le_fifo_malloc_tx_l2cap_smp:
+	force LE_L2CAP_CID_SMP,regb
+	branch le_fifo_malloc_tx_l2cap
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/le_ll.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_ll.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/le_ll.prog	(working copy)
@@ -0,0 +1,212 @@
+
+le_parse_ll:
+	fetch 1,mem_le_rxbuf+2
+	beq LL_CONNECTION_UPDATE_REQ,le_parse_connection_update_req
+	beq LL_CHANNEL_MAP_REQ,le_parse_channel_map_req
+	beq LL_TERMINATE_IND,le_parse_terminate_ind
+	beq LL_ENC_REQ,le_parse_enc_req
+	beq LL_ENC_RSP,le_parse_enc_rsp
+	beq LL_START_ENC_REQ,le_parse_start_enc_req
+	beq LL_START_ENC_RSP,le_parse_start_enc_rsp
+	beq LL_UNKNOWN_RSP,le_parse_unknown_rsp
+	beq LL_FEATURE_REQ,le_parse_feature_req
+	beq LL_FEATURE_RSP,le_parse_feature_rsp
+	beq LL_PAUSE_ENC_REQ,le_parse_pause_enc_req
+	beq LL_PAUSE_ENC_RSP,le_parse_pause_enc_rsp
+	beq LL_VERSION_IND,le_parse_version_ind
+	beq LL_REJECT_IND,le_parse_reject_ind
+	beq LL_PING_REQ,le_parse_ping_req
+	beq LL_PING_RSP,le_parse_ping_rsp
+	arg 2,rega
+	arg LL_UNKNOWN_RSP,regb
+	call le_fifo_malloc_tx_ll
+	fetch 1,mem_le_rxbuf+2
+	istore 1,contw
+	rtn	
+
+
+le_parse_connection_update_req:
+	ifetch 9,contr
+	store 9,mem_le_new_param
+	ifetch 2,contr
+	store 2,mem_le_instant
+	fetch 1,mem_le_state
+	set1 lestate_update_param,pdata
+	store 1,mem_le_state
+	rtn
+
+le_parse_channel_map_req:
+	ifetch 5,contr
+	store 5,mem_le_new_map
+	ifetch 2,contr
+	store 2,mem_le_instant
+	fetcht 2,mem_le_event_count
+	isub temp,null
+	nbranch le_parse_terminate_ind,positive
+	fetch 1,mem_le_state
+	set1 lestate_update_map,pdata
+	store 1,mem_le_state
+	rtn
+
+
+le_parse_terminate_ind:
+	setarg 20 // 200ms
+	store 2,mem_le_superto
+	store 2,mem_le_init_superto
+	rtn
+
+le_send_terminate_ind_user_terminated:
+	arg ERROR_REMOTE_USER_TERMINATED_CONNECTION,regc
+
+//regc:The ErrorCode field shall be set to inform the remote device why the connection is about to be terminated.
+le_send_terminate_ind:
+	arg 2,rega
+	arg LL_TERMINATE_IND,regb
+	call le_fifo_malloc_tx_ll
+	copy regc,pdata
+	istore 1,contw
+	rtn
+
+le_parse_feature_req:
+
+le_send_feature_rsp:
+	arg 9,rega
+	arg LL_FEATURE_RSP,regb
+	call le_fifo_malloc_tx_ll
+	setarg param_le_features
+	istore 8,contw
+	rtn
+
+
+le_parse_version_ind:
+	rtn master
+le_send_version_ind:
+	arg 6,rega
+	arg LL_VERSION_IND,regb
+	call le_fifo_malloc_tx_ll
+	fetch 5,mem_lmp_version
+	istore 5,contw
+	rtn
+
+
+le_parse_ping_req:
+	arg LL_PING_RSP,regb
+	branch le_send_ll_one_lenth
+
+//regb:ll opcode
+le_send_ll_one_lenth:
+	arg 1,rega
+	branch le_fifo_malloc_tx_ll
+
+	
+le_parse_enc_req:
+	ifetch 8,contr
+	store 8,mem_le_rand
+	ifetch 2,contr
+	store 2,mem_le_ediv
+	ifetch 8,contr
+	store 8,mem_le_skdm
+	ifetch 4,contr
+	store 4,mem_le_ivm
+	call le_send_enc_rsp
+	bpatchx patch2f_2,mem_patch2f
+	fetch 1,mem_le_pairing_state
+	beq FLAG_LE_PAIRING_AFTER_AUTH,le_parse_enc_req_after_auth
+	fetch 1,mem_le_configuration
+	bbit1  BIT_BLE_PAIRING_FIXED_LTK,le_parse_enc_req_fixed_ltk
+	fetch 1,mem_nv_data_number
+	ncall load_device_list_mode_4,blank
+	fetch 1,mem_ltk_exists
+	beq 0,le_ltk_lost
+le_parse_enc_req_after_auth:
+	jam FLAG_LE_RCV_ENC_START,mem_le_enc_state
+	call  le_send_start_enc_req
+	branch generate_sk
+
+le_parse_enc_req_fixed_ltk:
+	jam 1,mem_ltk_exists
+	arg mem_le_fixed_ltk,contr
+	arg mem_le_ltk,contw
+	call memcpy16
+	branch le_parse_enc_req_after_auth
+
+
+le_ltk_lost:
+	bpatchx patch2f_3,mem_patch2f
+	jam FLAG_LE_ENC_NULL,mem_le_enc_state
+	jam FLAG_LE_ENC_NULL,mem_le_pairing_state
+	jam BT_EVT_LE_LTK_LOST,mem_fifo_temp
+	branch ui_ipc_send_event
+
+le_send_reject_ind:
+	arg 2,rega
+	arg LL_REJECT_IND,regb
+	call le_fifo_malloc_tx_ll
+	setarg LE_ERR_PIN_OR_KEY_MISSING
+	istore 1,contw
+	rtn		
+	
+le_send_enc_rsp:
+	arg mem_le_skds,contw
+	force 8,loopcnt
+	call generate_random_loop
+	arg mem_le_ivs,contw
+	force 4,loopcnt
+	call generate_random_loop
+	arg 13,rega
+	arg LL_ENC_RSP,regb
+	call le_fifo_malloc_tx_ll
+	fetch 8,mem_le_skds
+	istore 8,contw
+	fetch 4,mem_le_ivs
+	istore 4,contw
+	rtn
+
+le_send_start_enc_req:
+	arg LL_START_ENC_REQ,regb
+	branch le_send_ll_one_lenth
+
+le_send_start_enc_rsp:
+	arg LL_START_ENC_RSP,regb
+	branch le_send_ll_one_lenth
+	
+	
+le_parse_enc_rsp:
+	ifetch 8,contr
+	store 8,mem_le_skds
+	ifetch 4,contr
+	store 4,mem_le_ivs
+	branch generate_sk
+	
+le_parse_start_enc_req:
+	fetch 1,mem_le_state
+	set1 lestate_encryption,pdata
+	store 1,mem_le_state
+	rtn
+	
+le_parse_start_enc_rsp:
+	rtn master
+	jam BT_EVT_LE_START_ENC,mem_fifo_temp
+	call ui_ipc_send_event	
+	jam FLAG_LE_SEND_START_ENC_RSP,mem_le_enc_state
+	branch le_send_start_enc_rsp
+	
+le_parse_pause_enc_req:
+	jam FLAG_LE_ENC_PAUSE,mem_le_enc_state
+	call le_send_pause_enc_rsp	
+	jam BT_EVT_LE_PAUSE_ENC,mem_fifo_temp
+	branch ui_ipc_send_event	
+
+le_send_pause_enc_rsp:
+	arg LL_PAUSE_ENC_RSP,regb
+	branch le_send_ll_one_lenth	
+			
+
+le_parse_feature_rsp:
+le_parse_unknown_rsp:
+le_parse_pause_enc_rsp:
+le_parse_reject_ind:
+le_parse_ping_rsp:
+	rtn
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/lmp.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/lmp.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/lmp.prog	(working copy)
@@ -0,0 +1,2521 @@
+	
+/******************************************/
+/*************   LMP Parse   **************/
+/******************************************/
+init_lmp:
+	rtn wake
+init_lmp_work:
+	bpatchx patch2f_4,mem_patch2f
+	setarg 0
+	store 1,mem_lmp_to_send
+	store 1,mem_conn_sm
+	store 1,mem_lmo_opcode1
+	store 1,mem_lmo_opcode2
+	store 1,mem_esco_addr
+	store 1,mem_auth_enable
+	store 1,mem_connection_options
+	store 1,mem_pairing_auth
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	jam 0,mem_switch_fail_master_count
+	jam NULL_ENCRYP,mem_wait_encryption
+init_lmp_reinit:	
+	jam 0,mem_pairing_auth
+	jam 0,mem_sp_localsm
+	jam 0,mem_lmp_conn_state
+	//fall through
+parse_rx_done:
+	rtn
+
+parse_lmp:
+	bpatchx patch2f_5,mem_patch2f
+	call setlocalsm_master,master	//use this flag in hci
+	ncall setlocalsm_slave,master
+	call lmo_fifo_check
+	nrtn blank
+	fetch 1,mem_state_map
+	rtnbit0 smap_rxlmp
+	set0 smap_rxlmp,pdata
+	set0 mark_rxbuf_inuse,mark
+	store 1,mem_state_map
+	fetch 1,mem_rxbuf
+	fetcht 1,mem_state_map
+	isolate1 smap_lmptidinit,pdata
+	setflag true,smap_lmptid,temp
+	storet 1,mem_state_map
+	and_into 0x2,temp //smap_lmptid only
+	storet 1,mem_lmo_tid2
+	fetcht 1,mem_state_map
+	rshift pdata,pdata			/* align lmp_opcode */
+  	store 1,mem_lmi_opcode2
+	bpatchx patch2f_6,mem_patch2f
+  	fetch 1,mem_lmi_opcode2
+  	beq LMP_ESCAPE,parse_lmp_escape//multi
+  	beq LMP_ACCEPTED,parse_lmp_accepted//multi
+	beq LMP_NOT_ACCEPTED,parse_lmp_not_accepted//multi
+  	beq LMP_SET_AFH, parse_lmp_set_afh
+  	beq LMP_CLKOFFSET_REQ, parse_lmp_clkoffset_req
+ 	beq LMP_ENCRYPTION_MODE_REQ, parse_lmp_encryption_mode_req
+ 	beq LMP_ENCRYPTION_KEY_SIZE_REQ,parse_lmp_crypt_key
+	beq LMP_AUTO_RATE,parse_lmp_auto_rate
+	beq LMP_TEST_CONTROL,parse_lmp_test_control//multi
+	beq LMP_TEST_ACTIVATE,parse_lmp_test_activate
+	beq LMP_SETUP_COMPLETE,parse_lmp_setup_complete
+	beq LMP_SUPERVISION_TIMEOUT,parse_lmp_supervision_timeout
+	beq LMP_FEATURES_REQ,parse_lmp_features_req
+	beq LMP_HOST_CONNECTION_REQ,parse_lmp_conn_req
+	beq LMP_VERSION_REQ,parse_lmp_version_req
+	beq LMP_VERSION_RES,parse_lmp_version_res
+	beq LMP_DETACH,parse_lmp_detach
+	beq LMP_MAX_SLOT,parse_lmp_max_slot
+	beq LMP_MAX_SLOT_REQ,parse_lmp_max_slot_req
+	beq LMP_NAME_REQ,parse_lmp_name_req
+	beq LMP_NAME_RES,parse_lmp_name_res
+	beq LMP_FEATURES_RES,parse_lmp_features_res
+	beq LMP_COMB_KEY,parse_lmp_comb_key
+	beq LMP_AU_RAND, parse_lmp_au_rand
+	beq LMP_IN_RAND,parse_lmp_in_rand
+	beq LMP_SRES,parse_lmp_sres
+	beq LMP_INCR_POWER_REQ,parse_lmp_incr_power
+	beq LMP_DECR_POWER_REQ,parse_lmp_decr_power
+	beq LMP_MAX_POWER, parse_lmp_max_power
+	beq LMP_MIN_POWER, parse_lmp_min_power
+	beq LMP_PAGE_MODE_REQ, parse_lmp_page_mode_req
+	beq LMP_PAGE_SCAN_MODE_REQ, parse_lmp_page_scan_mode_req
+	beq LMP_PREFERRED_RATE, parse_lmp_preferred_rate
+	beq LMP_SLOT_OFFSET, parse_lmp_slot_offset
+	beq LMP_SNIFF_REQ, parse_lmp_sniff_req
+	beq LMP_START_ENCRYPTION_REQ, parse_lmp_start_encryption_req
+	beq LMP_STOP_ENCRYPTION_REQ, parse_lmp_stop_encryption_req
+	beq LMP_SWITCH_REQ, parse_lmp_switch_req
+	beq LMP_TEMP_RAND, parse_lmp_temp_rand
+	beq LMP_TEMP_KEY, parse_lmp_temp_key
+	beq LMP_TIMING_ACCURACY_REQ, parse_lmp_timing_accuracy_req
+	beq LMP_TIMING_ACCURACY_RES, parse_lmp_timing_accuracy_res
+	beq LMP_UNIT_KEY, parse_lmp_unit_key
+	beq LMP_UNSNIFF_REQ, parse_lmp_unsniff_req
+	beq LMP_USE_SEMI_PERMANENT_KEY, parse_lmp_use_semi_permanend_key
+	beq  LMP_ENCAPSULATED_HEADER,parse_lmp_encapsulated_header
+	beq  LMP_ENCAPSULATED_PAYLOAD,parse_lmp_encapsulated_payload
+	beq	LMP_SIMPLE_PAIRING_CONFIRM,parse_simple_pairing_confirm
+	beq  LMP_SIMPLE_PAIRING_NUMBER,parse_lmp_simple_pairing_number
+	beq  LMP_DHKEY_CHECK,parse_dhkey_check
+	beq LMP_CLKOFFSET_RES, parse_lmp_clkoffset_res
+	beq LMP_ENC_KEY_SIZE_MASK_REQ,parse_enc_key_size_mask_req
+/* lmp is not recognized, check to see if we respond to all messages */ 
+/* rejecting the unrecognized message with PDU not recognized */
+reject_unknown_packet:
+	jam UNKNOWN_LMP_PDU,mem_lmo_reason2
+reject_lmp_packet:
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	rtn
+
+parse_lmp_clkoffset_req:
+	jam LMP_CLKOFFSET_RES,mem_lmo_opcode2
+	rtn	
+
+parse_enc_key_size_mask_req:
+	jam LMP_ENC_KEY_SIZE_MASK_RES,mem_lmo_opcode2
+	rtn
+	
+parse_lmp_set_afh:
+	fetch 4,mem_rxbuf+1
+	lshift pdata,pdata
+	store 4,mem_afh_instant
+	fetch 1,mem_rxbuf+5
+	store 1,mem_afh_new_mod
+	fetch 5,mem_rxbuf+6
+	store 5,mem_afh_map_new
+	fetch 5,mem_rxbuf+11
+	istore 5,contw
+	fetch 1,mem_mode
+	set1 afh_change,pdata
+	store 1,mem_mode
+	rtn
+parse_lmp_escape:
+	bpatchx patch2f_7,mem_patch2f
+	fetch 1,mem_rxbuf+1
+	set1 7,pdata
+	store 1,mem_lmi_opcode2
+	beq LMP_EXT_ACCEPTED,parse_lmpext_accepted
+	beq LMP_NOT_ACCEPTED_EXT,parse_lmpext_not_accepted
+	beq LMP_SNIFF_SUBRATING_REQ, parse_lmp_sniff_subrating_req
+	beq LMP_SNIFF_SUBRATING_RES, parse_lmp_sniff_subrating_res
+	beq LMP_PACKET_TYPE_TABLE_REQ,parse_lmpext_packet_type_table_req
+	beq LMP_EXT_FEATURES_REQ,parse_lmpext_features_req
+	beq LMP_EXT_FEATURES_RES,parse_lmpext_features_res
+	beq LMP_EXT_CHN_CLASSIFICATION_REQ,parse_lmpext_chn_classification_req
+	beq LMP_PAUSE_ENCRYPTION_REQ,parse_lmpext_pause_encrypt
+	beq LMP_RESUME_ENCRYPTION_REQ,parse_lmpext_resume_encrypt
+	beq LMP_IO_CAP_REQ,parse_lmpext_iocap_req
+	beq LMP_IO_CAP_RES,parse_lmpext_iocap_res
+	rtneq LMP_EXT_FEATURES_RES
+
+
+reject_unknown_ext_packet:
+	jam LMP_NOT_ACCEPTED_EXT,mem_lmo_opcode2
+	jam UNKNOWN_LMP_PDU,mem_lmo_reason2
+	
+	rtn
+parse_lmpext_chn_classification_req:
+	jam LMP_NOT_ACCEPTED_EXT,mem_lmo_opcode2
+	jam NOT_SUPPORT_CHN_CLASSIFICATION,mem_lmo_reason2
+	rtn
+	
+parse_lmpext_iocap_req:
+	call iocap_lmpext_load
+	jam LMP_IO_CAP_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmpext_iocap_res:
+	call iocap_lmpext_load
+	branch iocap_lmpext_common
+	
+iocap_lmpext_load:
+	arg      mem_sp_iocap_remote,contw
+	fetch 3, mem_rxbuf+2
+	istore    3,contw
+	rtn
+	
+iocap_lmpext_common:
+ifdef SIMPLE_PAIRING
+	branch master_set_mem_master_sp_flag,true//is un very ok to use master flag,but we have to add many codes if wo don't
+endif
+	rtn
+parse_lmpext_accepted:
+	fetch 1,mem_rxbuf+3
+	set1 7,pdata
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_PACKET_TYPE_TABLE_REQ,parse_lmpext_accepted_ptt
+	rtn
+
+	
+parse_lmpext_not_accepted:
+	fetch 1,mem_rxbuf+3
+	set1 7,pdata
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_PACKET_TYPE_TABLE_REQ,parse_lmpext_not_accepted_ptt
+	rtn
+
+parse_lmpext_accepted_ptt:
+	fetch 1,mem_ptt
+	fetcht 1,mem_state_map
+	nsetflag blank,smap_edr,temp
+	storet 1,mem_state_map
+parse_lmpext_not_accepted_ptt:
+	fetch 1,mem_state
+	rtnbit0 state_init_seq
+	set0 state_init_seq,pdata
+	store 1,mem_state
+	fetch 1,mem_auth_enable
+	nrtn blank
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	rtn
+
+parse_lmpext_pause_encrypt:
+	nbranch parse_lmpext_pause_encrypt_slave, master
+	jam LMP_STOP_ENCRYPTION_REQ,mem_lmo_opcode2
+	branch tid_reply
+
+parse_lmpext_pause_encrypt_slave:	
+	jam LMP_PAUSE_ENCRYPTION_REQ, mem_lmo_opcode2
+	rtn
+
+parse_lmpext_resume_encrypt:
+//trans file to pc may cause pause/resume encrypt
+//if ms is conn_sm_wait_end the controllor won't send ack after recieved start_encypt_accept
+	call tid_reply
+	branch lmp_start_encryption
+
+parse_lmpext_features_req:
+	jam LMP_EXT_FEATURES_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmpext_features_res:
+	fetcht 1,mem_rxbuf+4
+	and temp,0x1,temp
+	storet 1,mem_remote_sppcap
+	fetch 1,mem_hci_cmd
+	bne hci_cmd_wait_remote_ext_feature,parse_lmpext_features_res_not_hci
+	jam 0,mem_hci_cmd
+parse_lmpext_features_res_not_hci:
+	fetch 1,mem_conn_sm
+	rtnne CONN_SM_WAIT_FEATURES_EXT
+	jam CONN_SM_SEND_CONN_REQ,mem_conn_sm
+	branch process_conn_sm
+
+parse_lmp_accepted:
+	bpatchx patch30_0,mem_patch30
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_HOST_CONNECTION_REQ,parse_lmp_accepted_hostconn//ok
+	beq LMP_IN_RAND,parse_lmp_accepted_inrand//ok
+	beq LMP_ENCRYPTION_MODE_REQ,parse_lmp_accepted_enc_mode//ok
+	beq LMP_ENCRYPTION_KEY_SIZE_REQ,parse_lmp_accepted_enc_keysize//ok
+	beq LMP_START_ENCRYPTION_REQ,parse_lmp_accepted_start_enc//ok
+	beq LMP_STOP_ENCRYPTION_REQ,parse_lmp_accepted_stop_enc//ok
+	beq LMP_UNSNIFF_REQ,parse_lmp_accepted_unsniff_req//ok
+	beq LMP_SNIFF_REQ,parse_lmp_accepted_sniff_req//ok
+	beq LMP_SWITCH_REQ,parse_lmp_accepted_switch
+	// simple pairing 
+	beq LMP_ENCAPSULATED_HEADER,parse_lmp_accepted_encapsulated_header//ok
+	beq LMP_ENCAPSULATED_PAYLOAD,parse_lmp_accepted_encapsulated_payload//ok
+	beq LMP_SIMPLE_PAIRING_NUMBER,parse_lmp_accepted_simple_pairing_number//ok
+	beq LMP_DHKEY_CHECK,parse_lmp_accepted_dhkey_check//ok
+	rtn
+	
+parse_lmp_not_accepted:
+	bpatchx patch30_1,mem_patch30
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_NAME_REQ,parse_lmp_not_accepted_name_req//ok
+	beq LMP_HOST_CONNECTION_REQ,parse_lmp_not_accepted_hostconn//ok
+	beq LMP_AU_RAND,parse_lmp_not_accepted_aurand//ok
+	beq LMP_IN_RAND,parse_lmp_not_accepted_inrand//ok
+	beq LMP_SWITCH_REQ,parse_lmp_not_accepted_switch//ok
+	/* simple pairing support */
+	beq  LMP_SIMPLE_PAIRING_NUMBER,parse_lmp_not_accepted_simple_pairing_number//ok
+	beq  LMP_DHKEY_CHECK,parse_lmp_not_accepted_dhkey_check//ok
+	beq LMP_UNSNIFF_REQ,parse_lmp_not_accepted_unsniff_req
+	beq LMP_SNIFF_REQ,parse_lmp_not_acdcept_sniff_req
+	rtn
+
+parse_lmp_accepted_switch:
+	jam BT_EVT_SWITCH_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	branch role_switch_prepare0
+parse_lmp_not_accepted_switch:
+	jam BT_EVT_SWITCH_NOT_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	jam SWITCH_FLAG_NOT_ACCEPT,mem_switch_flag
+	setarg TIMER_SWITCH_WAITE
+	arg switch_wait_timer,queue
+	branch timer_init
+
+
+parse_lmp_accepted_hostconn:
+	//fetch 1,mem_state
+	//rtnbit0 state_init_seq
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_CONN_REQ,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_BB_CONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmo_opcode2
+	//nbranch parse_lmp_accepted_hostconn_ctn,master
+parse_lmp_accepted_hostconn_ctn:
+	/* checking to see if we requested host connection */
+	fetch 1,mem_conn_sm
+	bne CONN_SM_WAIT_CONN_ACCEPT, parse_rx_done
+	//branch parse_lmp_accepted_hostconn_master,master
+	/* continuing on with host connection state machine */
+	jam CONN_SM_AUTH_PAIR,mem_conn_sm
+	rtn
+	//branch host_create_conn_auth_pair
+
+	/* we need to move fast and send au_rand...jumping to next part of state machine for conn */
+//parse_lmp_accepted_hostconn_master:
+	//jam CONN_SM_AUTH_PAIR ,mem_conn_sm
+//	rtn
+
+parse_lmp_not_accepted_hostconn:
+	jam ACL_CONNECTION_ALREADY_EXISTS,mem_disconn_reason_send
+	jam LMP_DETACH,mem_lmo_opcode2
+	/* clearing connection state machine */
+	jam CONN_SM_STANDBY,mem_conn_sm
+	/* sending error message to host */
+	branch parse_rx_done,true
+	rtn
+
+parse_lmp_accepted_inrand:
+	fetch 1,mem_link_key_exists
+	nrtn blank
+	call clear_linkkey
+	call  lmp_generate_key
+	rtn master
+	set1 mark_slave_in_rand_accepted,mark
+	rtn
+
+parse_lmp_accepted_enc_mode:
+	nrtn master
+	jam LMP_ENCRYPTION_KEY_SIZE_REQ,mem_lmo_opcode2
+	fetch 1,mem_state_map
+	rtnbit0 smap_encryption
+	jam LMP_STOP_ENCRYPTION_REQ,mem_lmo_opcode2
+	rtn
+
+parse_lmp_accepted_enc_keysize:
+	branch lmp_start_encryption
+	
+parse_lmp_accepted_start_enc:
+	call send_create_conn_start_l2cap_timer_sm
+	fetch 1,mem_state
+	rtnbit1 state_conn_comp
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	fetch 1,mem_conn_sm
+	rtnne CONN_SM_ENCRYPT_WAIT
+	jam CONN_SM_ENCRYPT_WAIT_CLEAR,mem_conn_sm
+	rtn
+	
+parse_lmp_accepted_stop_enc:
+	/* again this won't work with multipoint. keep track of anyone else encrypting */
+	//jam HOST_STOP_ENCRYPTION,message_queue_B0
+	//jam 1,message_queue_B1
+	//jam HOST_RETURN_SUCCESS,message_queue_B2
+	//fetch 1,mem_lmp_state2
+	//set1 MESSAGE_QUEUE,pdata
+	//store 1,mem_lmp_state2
+	rtn
+
+parse_lmp_not_accepted_aurand:	
+parse_lmp_not_accepted_aurand_send_detach:	
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam OTHER_END_TERMINATED,mem_disconn_reason_send
+	rtn
+/*in pair remote cancel the pair*/
+parse_lmp_not_accepted_inrand:
+	fetch 1,mem_rxbuf+2
+	beq KEY_MISSING,parse_lmp_inrand_key_missing
+	rtnne PAIRING_NOT_ALLOWED
+	jam PAIRING_NOT_ALLOWED,mem_disconn_reason_send
+	jam LMP_DETACH,mem_lmo_opcode2
+	rtn	
+parse_lmp_inrand_key_missing:
+	jam KEY_MISSING,mem_disconn_reason_send
+	jam LMP_DETACH,mem_lmo_opcode2
+	rtn
+	
+parse_lmp_not_accepted_name_req:
+	rtn
+	
+parse_lmp_not_accepted_simple_pairing_number:
+	jam      SP_STAT_NULL,mem_sp_state
+	jam LMP_DETACH,mem_lmo_opcode2
+	branch   parse_rx_done
+	
+parse_lmp_not_accepted_dhkey_check:
+ifdef LMP_DBG
+	call ice_break
+endif
+	jam      SP_STAT_NULL,mem_sp_state
+	jam LMP_DETACH,mem_lmo_opcode2
+	branch   parse_rx_done
+parse_lmp_not_accepted_unsniff_req:
+	jam BT_EVT_UNSNIFF_NOT_ACCEPT,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+parse_lmp_accepted_unsniff_req:
+	jam BT_EVT_UNSNIFF_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	branch sniff_exit
+	
+parse_lmp_accepted_sniff_req:
+	jam BT_EVT_SNIFF_ACCEPT,mem_fifo_temp
+	call ui_ipc_send_event
+	setarg 0
+	store 2,mem_dsniff
+	fetch 2,mem_sniff_param_interval
+	lshift pdata,pdata
+	store 2,mem_tsniff
+	fetch 1,mem_sniff_param_attempt
+	store 1,mem_sniff_attempt
+	fetch 1,mem_sniff_param_timeout
+	store 1,mem_sniff_timeout
+	branch sniff_init
+	
+parse_lmp_not_acdcept_sniff_req:
+	jam BT_EVT_SNIFF_NOT_ACCEPT,mem_fifo_temp
+	branch ui_ipc_send_event
+	
+parse_lmp_crypt_key:
+	fetcht 1,mem_rxbuf+1
+	storet 1,mem_key_size
+	branch accept_lmp_msg
+	
+parse_lmp_setup_complete:
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_SETUP_COMPLETE,pdata
+	store 1,mem_lmp_conn_state
+	rtnbit1 SENT_SETUP_COMPLETE
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	branch parse_rx_done
+	
+parse_lmp_max_slot:
+	//jam LMP_MAX_SLOT,mem_lmi_opcode2
+	//branch accept_lmp_msg
+	rtn
+	
+parse_lmp_max_slot_req:
+	fetch 1,mem_max_slot
+	fetcht 1,mem_rxbuf+1
+	isub temp,null
+	//jam LMP_MAX_SLOT_REQ,mem_lmi_opcode2
+	branch accept_lmp_msg,positive
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam UNSPECIFIED_ERROR,mem_lmo_reason2
+	jam LMP_MAX_SLOT_REQ,mem_lmi_opcode2
+	rtn
+	
+parse_lmp_detach:
+	call prepare_disconnect
+	branch accept_lmp_msg
+	
+accept_lmp_msg:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	rtn
+
+parse_lmp_incr_power:
+	jam LMP_MAX_POWER,mem_lmo_opcode2
+	rtn
+
+parse_lmp_decr_power:
+	jam LMP_MIN_POWER,mem_lmo_opcode2
+	rtn
+	
+parse_lmp_version_res:
+	fetch 1,mem_conn_sm
+	rtneq CONN_SM_WAIT_VERSION
+	/* continuing on with host connection state machine */
+	jam CONN_SM_SEND_FEATURES ,mem_conn_sm
+	/* we need to move fast and send au_rand...jumping to next part of state machine for conn */
+	rtn
+
+
+parse_lmp_auto_rate:
+	rtn	
+
+parse_lmp_in_rand:
+	call lmp_copy_rand
+	jam pincode_state_wait_pincode,mem_pincode_state
+	jam BT_EVT_PINCODE_REQ,mem_fifo_temp
+	call ui_ipc_send_event
+
+	call tid_check
+	nbranch lmp_accept_inrand,true
+	//fetch 1,mem_auth_enable
+	nbranch parse_lmp_inrand_res,master // ignore this because of not ssp temporary
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam LMP_IN_RAND,mem_lmi_opcode2
+	jam TRANSACTION_COLLISION,mem_lmo_reason2
+	rtn
+parse_lmp_inrand_res:
+	fetch 1,mem_op
+	set1 op_inrand_req,pdata
+	store 1,mem_op
+	rtn
+
+//store current tid
+pop_tid_follow:
+	fetcht 1,mem_state_map
+	nsetflag blank,smap_lmptid,temp
+	storet 1,mem_state_map
+	rtn
+	
+//restore current tid
+push_tid_follow:
+	fetch 1,mem_lmo_tid2
+	rshift pdata,pdata
+	and_into 1,pdata
+	rtn
+
+parse_lmp_au_rand_moudle:
+	fetch 1,mem_nv_data_number
+	rtn blank
+	fetch 1,mem_pairing_auth
+	call load_device_list,blank
+	rtn	
+
+parse_lmp_au_rand:
+	call parse_lmp_au_rand_moudle
+	call push_tid_follow
+	store 1,mem_sres_tid
+	call lmp_copy_rand
+	jam LMP_SRES,mem_lmo_opcode2
+	fetch 1,mem_link_key_exists
+	nrtn blank
+	fetch 1,mem_state
+	rtnbit1 state_combkey		/* we have comb key, but not verified */
+	jam KEY_MISSING,mem_lmo_reason2
+	branch reject_lmp_packet
+
+parse_lmp_sres:	
+	arg mem_plap,rega
+	call function_e1
+	fetch 4,mem_rxbuf+1
+	fetcht 4,mem_input_store
+	isub temp,null
+	branch authentication_ok,zero
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam AUTHENTICATION_FAILURE_ERROR,mem_disconn_reason_send	
+	rtn
+authentication_ok:
+	call authentication_ok_common
+	fetch 1,mem_ssp_enable
+	branch  pairing_success,blank
+	rtn
+
+	
+authentication_ok_common:
+	call copy_aco
+	call linkkey_ready///save link key
+	fetch 1,mem_op
+	isolate1 op_auth_req,pdata
+	set0 op_auth_req,pdata
+	store 1,mem_op
+	fetch 1,mem_conn_sm
+	beq CONN_SM_AUTH_WAIT,authentication_ok_conn_sm
+	beq CONN_SM_PAIRING_WAIT,authentication_ok_conn_sm
+	rtn
+authentication_ok_conn_sm:
+	fetch 1,mem_pairing_auth
+	rtnne DEFALT_PAIRING_AUTH
+	fetch 1,mem_state_map
+	rtnbit1 smap_encryption
+	branch host_create_conn_encrypt
+
+parse_lmp_comb_key:
+	arg mem_rxbuf+1,rega
+	arg mem_kinit,regb
+	arg mem_random_number,contw
+	call xor16
+	arg mem_plap,rega
+	call generate_linkkey
+	jam LMP_AU_RAND,mem_lmo_opcode2
+	fetch 1,mem_state
+	bbit0 state_combkey,lmp_generate_key
+	rtn
+	
+parse_lmp_name_res:
+	fetch 2,mem_len
+	add pdata,-3,loopcnt	//for remote name length error
+	fetcht 1,mem_rxbuf+1
+	setarg mem_tmp_buffer
+	iadd temp,contw
+	arg mem_rxbuf+3,contr
+	call memcpy
+	fetcht 1,mem_name_offset
+	fetch 1,mem_rxbuf+2
+	isub temp,pdata
+	sub pdata,14,null
+	branch parse_lmp_name_res_end,positive
+	add temp,14,pdata
+	store 1,mem_name_offset
+	jam LMP_NAME_REQ,mem_lmo_opcode2
+	rtn
+parse_lmp_name_res_end:
+	fetch 1,mem_state_map
+	set1 smap_name_res,pdata
+	store 1,mem_state_map
+	bbit1 smap_name_req,lmp_disconnect
+	rtn
+parse_lmp_name_req:
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_opcode2 //offset 
+	jam LMP_NAME_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_conn_req:
+	branch accept_lmp_msg
+
+parse_lmp_timing_accuracy_req:
+	jam LMP_TIMING_ACCURACY_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_features_req:
+	jam LMP_FEATURES_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_version_req:
+	jam LMP_VERSION_RES,mem_lmo_opcode2
+	rtn
+
+parse_lmp_supervision_timeout:
+//	fetch 2,mem_rxbuf+1
+//	store 2,mem_supervision_to
+	rtn
+	
+
+
+parse_lmp_sniff_subrating_req:
+	fetch 2,mem_tsniff
+	iforce temp
+	fetch 1,mem_rxbuf+2
+	store 1,mem_subsniff_rate
+	imul32 temp,temp
+	fetch 2,mem_rxbuf+3
+	lshift pdata,pdata
+	store 2,mem_subsniff_tcmax
+	fetch 4,mem_rxbuf+5
+	lshift pdata,pdata
+ 	store 4,mem_subsniff_instant
+	//product pdata
+	deposit temp
+	store 2,mem_subsniff_tsniff
+	rtn
+parse_lmpext_packet_type_table_req:
+	fetcht 1,mem_ptt
+	fetch 1,mem_rxbuf+2
+	ixor temp,null
+	nbranch reject_unknown_ext_packet,zero
+	isolate1 0,pdata
+	fetch 1,mem_state_map
+	setflag true,smap_edr,pdata
+	store 1,mem_state_map
+	jam LMP_EXT_ACCEPTED,mem_lmo_opcode2
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmi_opcode2
+	rtn
+
+	
+parse_lmp_sniff_subrating_res:
+parse_lmp_preferred_rate:
+parse_lmp_max_power:
+parse_lmp_min_power:
+	rtn
+parse_lmp_page_mode_req:
+	//jam LMP_PAGE_MODE_REQ,mem_lmi_opcode2
+	branch accept_lmp_msg
+parse_lmp_page_scan_mode_req:
+	//this can influence connection. need accepted
+	//jam LMP_PAGE_SCAN_MODE_REQ,mem_lmi_opcode2
+	branch accept_lmp_msg
+
+
+	
+parse_lmp_slot_offset:
+	fetch 2,mem_rxbuf+1
+	store 2,mem_slot_offset
+	rtn
+
+parse_lmp_sniff_req_check_sniff_para:
+	fetch 2,mem_rxbuf+4 /* tsniff */
+	fetcht 1,mem_lpm_mult
+	imul32 temp,pdata
+	arg 0x640,temp
+	isub temp,null
+//	branch lmp_reject_sniff,positive
+	rtn
+	
+parse_lmp_sniff_req:
+	fetch 2,mem_rxbuf+6
+	branch lmp_reject_sniff,blank
+	call parse_lmp_sniff_req_check_sniff_para
+	branch lmp_reject_sniff,positive
+	fetch 1,mem_device_option
+	sub pdata,dvc_op_module,null
+	call module_set_lpm_mult_2,zero
+	fetch 1,mem_state
+	bbit1 state_insniff,lmp_reject_sniff
+	fetch 2,mem_rxbuf+2 /* dsniff */
+	lshift pdata,pdata
+	store 2,mem_dsniff	
+	fetch 2,mem_rxbuf+4 /* tsniff */
+	lshift pdata,pdata
+	store 2,mem_tsniff
+	fetch 2,mem_rxbuf+6 /* sniff attempt */
+	store 1,mem_sniff_attempt
+	iforce temp
+	fetch 2,mem_rxbuf+8 /* sniff timeout */
+	store 1,mem_sniff_timeout
+	isub temp,null
+	nbranch set_big_value_to_attempt,positive
+	store 1,mem_sniff_attempt
+set_big_value_to_attempt:	
+	//call sniff_init
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_SNIFF_REQ,mem_lmi_opcode2
+	rtn
+
+lmp_reject_sniff:
+	jam PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch reject_lmp_packet
+
+parse_lmp_start_encryption_req:
+	call accept_lmp_msg
+	call lmp_copy_rand
+	call function_e3
+	branch start_encryption
+	
+parse_lmp_stop_encryption_req:
+	call accept_lmp_msg
+	branch stop_encryption
+	
+
+parse_lmp_switch_req:
+	fetch 4,mem_rxbuf+1
+	lshift pdata,pdata
+	//branch parse_lmp_switch_req_not_accept
+	branch parse_lmp_switch_accept,master
+	fetcht 1,mem_link_key_exists
+	nbranch parse_lmp_switch_req_clear_mark,blank
+parse_lmp_switch_req_not_accept:
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam LMP_SWITCH_REQ,mem_lmi_opcode2
+	jam PDU_NOT_ALLOWED,mem_lmo_reason2
+	rtn
+parse_lmp_switch_req_clear_mark:
+	jam LMP_SLOT_OFFSET,mem_lmo_opcode2
+	jam 0,mem_conn_sm
+	branch role_switch_prepare
+
+parse_lmp_switch_accept:
+	call role_switch_prepare
+	set1 mark_reconn_recieve_switch,mark
+	fetch 1,mem_connection_options
+	set0 CONNECTION_SWITCH,pdata
+	store 1,mem_connection_options
+	branch accept_lmp_msg
+
+	
+
+parse_lmp_temp_rand:
+parse_lmp_temp_key:
+parse_lmp_timing_accuracy_res:	
+parse_lmp_unit_key:	
+parse_lmp_use_semi_permanend_key:
+	rtn
+
+	
+parse_lmp_unsniff_req:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_UNSNIFF_REQ,mem_lmi_opcode2
+	jam BT_EVT_REMOTE_UNSNIFF,mem_fifo_temp
+	call ui_ipc_send_event
+	branch sniff_exit
+	
+parse_lmp_encapsulated_header:
+	fetch 1,mem_rxbuf+1
+	bne ENCAPSULATED_MAJOR_TYPE_P192,parse_lmp_encapsulated_header_reject
+	fetch 1,mem_rxbuf+2
+	bne ENCAPSULATED_MINOR_TYPE_P192,parse_lmp_encapsulated_header_reject
+	fetch 1,mem_rxbuf+3
+	bne ENCAPSULATED_LEN_P192,parse_lmp_encapsulated_header_reject
+	call check_localsm
+	branch parse_lmp_encapsulated_header_master,true
+	jam SP_STAT_KEY_RECV,mem_sp_state
+parse_lmp_encapsulated_header_master:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_ENCAPSULATED_HEADER,mem_lmi_opcode2
+	branch parse_rx_done
+	
+parse_lmp_encapsulated_header_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch   reject_lmp_packet
+	
+parse_lmp_accepted_encapsulated_header:
+	//jam LMP_ENCAPSULATED_PAYLOAD,mem_lmi_opcode2
+	//branch   accept_lmp_msg  	
+	jam LMP_ENCAPSULATED_PAYLOAD,mem_lmo_opcode2
+      //   branch   accept_lmp_msg  	
+         rtn
+parse_lmp_accepted_simple_pairing_number:
+	fetch 1,mem_ssp_mode_flag
+	beq SSP_MODE_SSP_PIN_FLAG,parse_lmp_accepted_simple_pairing_number_ssp_pin
+	beq SSP_MODE_PASSKEY_ENTRY_FLAG,parse_lmp_accepted_simple_pairing_number_passkey
+parse_lmp_accepted_simple_pairing_number_common:
+	call check_localsm
+	rtn true
+	jam SP_STAT_CONFIRM_RECV,mem_sp_state
+	rtn
+
+parse_lmp_accepted_simple_pairing_number_ssp_pin:
+	call g_noninit_number_confirm
+	jam BT_EVT_BT_GKEY_GENERATE,mem_fifo_temp
+	call ui_ipc_send_event
+	branch parse_lmp_accepted_simple_pairing_number_common
+
+
+parse_lmp_accepted_simple_pairing_number_passkey:
+	call check_localsm
+	rtn true
+	fetch 1,mem_authentication_passkey_times
+	beq 19,authentication_passkey_end
+	increase 1,pdata
+	store 1,mem_authentication_passkey_times
+//	branch p_authentication_passkey
+
+authentication_passkey:
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	jam      SP_STAT_COMMIT_CALC,mem_sp_state 
+	fetch 1,mem_authentication_passkey_times
+	copy pdata,queue
+	fetch 6,mem_pin
+	qisolate1 pdata
+	setarg 0x80
+	setflag true,0,pdata
+	store 1,mem_passkey_1bit
+	rtn
+
+authentication_passkey_end:	
+	jam SP_STAT_CONFIRM_RECV,mem_sp_state
+	rtn
+
+parse_lmp_accepted_dhkey_check:
+	call parse_lmp_accepted_dhkey_check_common
+pairing_success:
+	fetch 1,mem_flag_pairing_state
+	rtn blank
+	jam FLAG_PAIRING_STATE_NOT_PAIRING,mem_flag_pairing_state
+	jam BT_EVT_BT_PAIRING_SUCCESS,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+parse_lmp_accepted_dhkey_check_common:
+	//here must be change***  shyd
+	call check_localsm
+ifdef SIMPLE_PAIRING
+	ncall g_noninit,true	//when be master  call g_init
+	call g_init,true
+endif
+	call check_localsm
+	rtn true
+	jam SP_STAT_LINK_KEY_CALC,mem_sp_state
+	jam SP_FLAG_COMMIT,mem_sp_flag
+	rtn
+
+parse_simple_pairing_confirm:
+	arg mem_sp_confirm_remote,contw
+	arg mem_rxbuf+1,contr
+	call memcpy16
+	fetch 1,mem_ssp_mode_flag
+	rtneq  SSP_MODE_PASSKEY_ENTRY_FLAG
+ifdef SIMPLE_PAIRING
+	branch master_set_mem_master_sp_flag
+endif
+	
+parse_lmp_encapsulated_payload:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_RANDOM_SEND,parse_encapsulated_payload_master
+	fetch    1,mem_sp_state
+	bne SP_STAT_KEY_RECV,parse_lmp_encapsulated_payload_reject
+parse_encapsulated_payload_master:
+	fetch    1,mem_sp_remote_key_recv_count
+	sub      pdata,0x20,contw
+	nbranch  parse_lmp_encapsulated_payload_reject,positive
+	arg      mem_sp_pubkey_remote,contw
+	iadd     contw,contw
+	fetch 8,mem_rxbuf+1
+	istore   8,contw
+	fetch 8,mem_rxbuf+9
+	istore   8,contw
+	fetch    1,mem_sp_remote_key_recv_count
+	increase 16,pdata
+	store    1,mem_sp_remote_key_recv_count
+	bne ENCAPSULATED_LEN_P192,accept_lmp_msg
+parse_lmp_encapsulated_payload_completed:
+	call check_localsm
+	branch accept_lmp_msg,true
+	jam      SP_KEY_VALID,mem_sp_remote_key_invalid
+	jam      SP_STAT_KEY_GENERATE,mem_sp_state
+	jam      SP_FLAG_COMMIT,mem_sp_flag  
+	branch   accept_lmp_msg
+parse_lmp_encapsulated_payload_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch   reject_lmp_packet	
+parse_lmp_accepted_encapsulated_payload: 
+	fetch 1,mem_sp_local_key_send_count
+	beq	ENCAPSULATED_LEN_P192,parse_lmp_encapsulated_payload_all_accepted
+	jam LMP_ENCAPSULATED_PAYLOAD,mem_lmo_opcode2
+	branch   parse_rx_done 
+	
+parse_lmp_encapsulated_payload_all_accepted:   
+	call check_localsm
+	branch parse_lmp_encapsulated_payload_all_accepted_master,true
+	fetch 1,mem_ssp_mode_flag
+	beq SSP_MODE_PASSKEY_ENTRY_FLAG,parse_lmp_encapsulated_payload_all_accepted_get_passkey
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	jam      SP_STAT_COMMIT_CALC,mem_sp_state 
+	branch   parse_rx_done
+
+parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+	jam BT_EVT_BT_GET_PASSKEY,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+parse_lmp_encapsulated_payload_all_accepted_master:
+	//call sp_master_generate_local_key
+	branch   parse_rx_done   
+
+parse_lmp_simple_pairing_number:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_RANDOM_SEND,parse_lmp_simple_pairing_number_master
+	fetch    1,mem_sp_state
+	bne SP_STAT_RANDOM_RECV,parse_lmp_simple_pairing_number_reject
+parse_lmp_simple_pairing_number_master:
+	arg      mem_sp_random_remote,contw
+	fetch 8,mem_rxbuf+1
+	istore   8,contw
+	fetch 8,mem_rxbuf+9
+	istore   8,contw
+	call check_localsm
+	branch parse_lmp_simple_pairing_number_master0,true
+	jam      SP_STAT_RANDOM_SEND,mem_sp_state
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	branch accept_lmp_msg  
+parse_lmp_simple_pairing_number_master0:
+	jam SP_STAT_COMMIT_CALC,mem_master_sp_state
+ifdef SIMPLE_PAIRING
+	branch master_set_mem_master_sp_flag
+endif
+	//jam LMP_SIMPLE_PAIRING_NUMBER,mem_lmi_opcode2
+	//branch accept_lmp_msg  
+parse_lmp_simple_pairing_number_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch reject_lmp_packet
+	
+parse_dhkey_check:
+	fetch    1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_SEND,parse_dhkey_check_master
+	fetch    1,mem_sp_state
+	bne SP_STAT_CONFIRM_RECV,parse_lmp_dhkey_check_reject
+parse_dhkey_check_master:
+	arg      mem_sp_check_result,contw
+	arg mem_rxbuf+1,contr
+	call memcpy16
+	call check_localsm
+	branch parse_dhkey_check_master0,true
+	fetch 1,mem_ssp_mode_flag
+	beq SSP_MODE_SSP_PIN_FLAG,number_comparison_mode
+number_comparison_successed:
+	jam 0,mem_flag_mode_ssp_pin
+	jam SP_STAT_CONFIRM_CHECK,mem_sp_state
+	jam SP_FLAG_COMMIT,mem_sp_flag
+	jam LMP_DHKey_Check,mem_lmi_opcode2
+	branch   parse_rx_done
+	
+parse_dhkey_check_master0:
+	jam      SP_STAT_CONFIRM_CHECK,mem_master_sp_state
+	jam      SP_FLAG_COMMIT,mem_master_sp_flag
+	branch   parse_rx_done
+parse_lmp_dhkey_check_reject:
+	jam      PDU_NOT_ALLOWED,mem_lmo_reason2
+	branch reject_lmp_packet
+
+number_comparison_mode:
+	fetch 1,mem_flag_mode_ssp_pin
+	bbit1 FLAG_MODE_SSP_PIN_REVICEVE_COMPARISON_BIT ,comparison_result
+	set1 FLAG_MODE_SSP_PIN_RECIEVE_DHKEY_BIT,pdata
+	store 1,mem_flag_mode_ssp_pin
+	rtn
+	
+comparison_result:
+	bbit1 FLAG_MODE_SSP_PIN_COMPARISON_RESULT_BIT,number_comparison_successed
+	jam 0,mem_flag_mode_ssp_pin
+	branch parse_lmp_dhkey_check_reject
+
+	
+parse_lmp_clkoffset_res:
+	branch parse_rx_done
+		
+parse_lmp_encryption_mode_req:
+	fetch 1,mem_connection_options
+	set0 CONNECTION_ENCRYPT
+	store 1,mem_connection_options
+	call accept_lmp_msg
+	nrtn master					/* do sth only if we're master */
+	fetch 1,mem_rxbuf+1
+	fetcht 1,mem_op
+	setflag blank,op_stop_enc,temp
+	nsetflag blank,op_start_enc,temp
+	storet 1,mem_op
+	rtn 
+	
+parse_lmp_features_res:
+	fetcht 8,mem_rxbuf+1		/*fix bcp(baoshijie) err*/
+parse_lmp_features_res_not_hci:	
+	fetch 1,mem_conn_sm
+	rtnne CONN_SM_WAIT_FEATURES_RES
+
+	fetch 1,mem_connection_options
+	bbit0 CONNECTION_FEATURE_EXT,parse_lmp_send_conn
+
+	jam CONN_SM_SEND_FEATURES_EXT,mem_conn_sm
+	rtn
+parse_lmp_send_conn:
+	jam CONN_SM_SEND_CONN_REQ,mem_conn_sm
+	rtn
+parse_lmp_test_activate:
+	fetch 1,mem_debug_config
+	store 1,mem_test_mode_old_debug_config
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_TEST_ACTIVATE,mem_lmi_opcode2
+	rtn
+parse_lmp_test_control:
+	/* the 9 test control parameters are XORed with 0x55 */
+	/* doing the XOR here and storing in mem_temp_payload */
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_TEST_CONTROL,mem_lmi_opcode2
+	force 9,loopcnt
+	arg mem_rxbuf+1,contr
+	arg mem_temp_payload,contw
+parse_lmp_test_xor:
+	ifetch 1,contr
+	xor_into 0x55,pdata
+	istore 1,contw
+	loop parse_lmp_test_xor
+	fetch 1,test_mode_scenario
+	fetcht 1,mem_tester_emulate
+	set0 tester_no_whitening,temp
+	set0 tester_pattern_test,temp
+	beq EXIT_TEST_MODE,	 parse_lmp_test_control_exit
+	beq PAUSE_TEST_MODE,	 parse_lmp_test_control_pause
+	beq CLOSED_LOOP_BACK_ACL,	 parse_lmp_test_control_loopback
+	beq ACL_WITHOUT_WHITENING,	 parse_lmp_test_control_loopback_nowhite
+	beq CLOSED_LOOP_BACK_SCO,	 parse_lmp_test_control_loopback
+	beq SCO_WITHOUT_WHITENING,	 parse_lmp_test_control_loopback_nowhite
+	beq ZERO_PATTERN,	 parse_lmp_test_control_pattern
+	beq ONE_PATTERN,	 parse_lmp_test_control_pattern
+	beq ALT_PATTERN,	 parse_lmp_test_control_pattern
+	beq ALT2_PATTERN,	 parse_lmp_test_control_pattern
+	beq PSEUDORANDOM,	 parse_lmp_test_control_pattern
+	rtn
+parse_lmp_test_control_exit:
+	/* restoring old parameters */
+	fetch 1,mem_tester_emulate
+	set1 tester_exit,pdata
+	set1 tester_change,pdata
+	store 1,mem_tester_emulate
+	rtn
+parse_lmp_test_control_pattern:
+	set1 tester_pattern_test,temp
+	jam 5,mem_lch_code
+	fetch 2,test_mode_data_length
+	iforce loopcnt
+	store 2,mem_len
+	arg mem_rxbuf,contw
+	call pn9
+parse_lmp_test_control_loopback_nowhite:
+	set1 tester_no_whitening,temp
+parse_lmp_test_control_loopback:
+	set1 tester_change,temp
+	force 0,pdata
+	store 1,mem_slave_rcvcnt
+	store 2,mem_tst_pktcnt_crc
+	store 2,mem_tst_pktcnt_dmh
+	store 2,mem_tst_pktcnt_hec
+	store 2,mem_tst_pktcnt_sync
+	fetch 1,test_mode_hopping_mode
+	compare FIXED_FREQ,pdata,0xff
+	setflag true,tester_fixed_freq,temp
+	storet 1,mem_tester_emulate
+	rtn
+
+parse_lmp_test_control_pause:
+	set0 mark_testmode,mark
+	jam 0,mem_tester_emulate
+	fetch 1,mem_debug_config
+	set0 debug_tx_pattern,pdata
+	store 1,mem_debug_config
+	rtn
+
+
+	
+	
+
+lmp_copy_rand:	
+	arg mem_rxbuf+1,contr
+	arg mem_random_number,contw
+	branch memcpy16
+
+lmp_generate_key:
+	jam LMP_COMB_KEY,mem_lmo_opcode2
+	rtn
+
+lmp_start_encryption:
+	nrtn master
+	jam LMP_START_ENCRYPTION_REQ,mem_lmo_opcode2
+	rtn
+	
+lmp_accept_inrand:
+	arg mem_lap,rega
+	call generate_kinit
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_IN_RAND,mem_lmi_opcode2
+	rtn
+
+lmp_disconnect:
+	jam 10,mem_conn_timer
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam LOCAL_HOST,mem_disconn_reason_send	
+	rtn
+
+/*********************************/
+/*********lmp send*************/
+/********************************/
+	/* enable user if a lmp packet is to send */
+send_lmp:
+	bpatchx patch30_2,mem_patch30
+	disable user
+	call lmo_fifo_process
+	fetch 1,mem_lmp_to_send
+	rtn blank
+/* lmp message to be processed. this will either be because host??? */
+/* wants to send a lmp message or because one resulted from the LMP */
+/* processing section */
+/********* outgoing lmp lookup table *************/
+	bbit1 7,send_lmp_escape
+send_lmp0:
+	beq LMP_NAME_REQ,	 send_lmp_name_req
+	beq LMP_NAME_RES,	 send_lmp_name_res
+	beq LMP_ACCEPTED,	 send_lmp_accepted
+	beq LMP_NOT_ACCEPTED,	 send_lmp_not_accepted
+	beq LMP_FEATURES_REQ,	 send_lmp_features_req
+	beq LMP_FEATURES_RES,	 send_lmp_features_res
+	beq LMP_TIMING_ACCURACY_RES,	 send_lmp_timing_accuracy_res
+	beq LMP_VERSION_REQ,	 send_lmp_version_req
+	beq LMP_VERSION_RES,	 send_lmp_version_res
+	beq LMP_SETUP_COMPLETE,	 send_lmp_setup_complete
+	beq LMP_SUPERVISION_TIMEOUT,	 send_lmp_superto
+	beq LMP_HOST_CONNECTION_REQ,send_lmp_no_payload
+	beq LMP_IN_RAND,send_lmp_inrand
+	beq LMP_COMB_KEY,send_lmp_comb_key
+	beq LMP_AU_RAND,send_lmp_aurand
+	beq LMP_SRES,send_lmp_sres
+	beq LMP_ENCRYPTION_MODE_REQ,send_lmp_encryption_mode_req
+	beq LMP_ENCRYPTION_KEY_SIZE_REQ,send_lmp_encryption_key_size_req
+	beq LMP_START_ENCRYPTION_REQ,send_lmp_start_encryption
+	beq LMP_DETACH,send_lmp_detach
+	beq LMP_QUALITY_OF_SERVICE_REQ, send_lmp_quality_of_service_req
+	beq LMP_UNIT_KEY,send_lmp_unit_key
+	//Optional (O)
+	beq LMP_INCR_POWER_REQ,send_lmp_inc_power	
+	beq LMP_CLKOFFSET_RES, send_lmp_clkoffset_res	
+	beq LMP_MAX_POWER,send_lmp_nopayload_reply
+	beq LMP_MAX_SLOT, send_lmp_max_slot
+	beq LMP_MAX_SLOT_REQ, send_lmp_max_slot_req
+	beq LMP_MIN_POWER,send_lmp_nopayload_reply
+	beq LMP_SLOT_OFFSET, send_lmp_slot_offset
+	beq LMP_SWITCH_REQ, send_lmp_switch_req
+	beq LMP_SNIFF_REQ, send_lmp_sniff_req
+	beq LMP_STOP_ENCRYPTION_REQ, send_lmp_stop_encryption_req	
+	beq LMP_TIMING_ACCURACY_REQ, send_lmp_timing_accuracy_req
+	beq LMP_UNSNIFF_REQ, send_lmp_unsniff_req
+	beq LMP_ENCAPSULATED_HEADER,send_lmp_encapsulated_header
+	beq LMP_ENCAPSULATED_PAYLOAD,send_lmp_encapsulated_payload
+	beq LMP_SIMPLE_PAIRING_CONFIRM,send_lmp_simple_pairing_comfirm
+	beq LMP_SIMPLE_PAIRING_NUMBER,send_lmp_simple_pairing_number
+	beq LMP_DHKEY_CHECK,send_lmp_dhkey_check
+	beq LMP_AUTO_RATE,send_lmp_auto_rate
+	beq LMP_ENC_KEY_SIZE_MASK_RES,send_lmp_enc_key_size_mask_res
+	//master only must(M)
+	beq LMP_CLKOFFSET_REQ, send_lmp_clkoffset_req
+	beq LMP_QUALITY_OF_SERVICE, send_lmp_quality_of_service
+	beq LMP_TEST_ACTIVATE, send_lmp_test_activate
+	beq LMP_TEST_CONTROL, send_lmp_test_control
+send_lmp_error:
+	branch assert
+	rtn
+send_lmp_escape:
+	beq LMP_EXT_ACCEPTED,send_lmpext_accepted
+	beq LMP_EXT_FEATURES_RES,send_lmpext_features_res
+	beq LMP_NOT_ACCEPTED_EXT,send_lmpext_not_accepted
+	beq LMP_EXT_FEATURES_REQ,send_lmpext_features_req
+	beq LMP_PACKET_TYPE_TABLE_REQ,send_lmpext_packet_type_table_req
+	beq LMP_PAUSE_ENCRYPTION_REQ,send_lmpext_pause_encryption_req
+	beq LMP_IO_CAP_REQ,send_lmp_io_cap_req
+         beq LMP_IO_CAP_RES,send_lmpext_io_cap_res
+         beq LMP_SNIFF_SUBRATING_REQ,send_lmpext_sniff_subrating_req
+         beq LMP_SNIFF_SUBRATING_RES,send_lmpext_sniff_subrating_res
+	branch assert
+
+
+/******** LMP follow messages **********/
+/****** TID follow received packet  *******/
+
+send_lmp_accepted:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode
+	istore 1,contw
+	call send_lmp_follow
+	bpatchx patch30_3,mem_patch30
+	fetch 1,mem_lmi_opcode
+	beq LMP_IN_RAND,send_lmp_accepted_inrand
+	beq LMP_ENCRYPTION_MODE_REQ,send_lmp_accepted_enc_mode
+	beq LMP_ENCRYPTION_KEY_SIZE_REQ,send_lmp_accepted_enc_key
+	beq LMP_SNIFF_REQ,send_lmp_accept_sniff_req
+	beq LMP_HOST_CONNECTION_REQ,send_lmp_accepted_connection
+	beq LMP_DHKEY_CHECK,send_lmp_accept_dhkey_check
+	beq LMP_START_ENCRYPTION_REQ,send_create_conn_start_l2cap_timer_sm  
+	rtn	
+	
+send_create_conn_start_l2cap_timer_sm:
+	fetch 1,mem_conn_sm
+	rtn blank
+	jam CONN_SM_WAIT_DONE,mem_conn_sm
+	setarg TIMER_ENPT_WAITE
+	arg enpt_delay_timer,queue
+	branch timer_init
+	
+send_lmp_accept_sniff_req:
+	branch sniff_init
+send_lmp_not_accepted:
+	force 3,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode
+	beq LMP_AU_RAND,send_not_accept_aurand
+	istore 1,contw
+	fetch 1,mem_lmo_reason
+	istore 1,contw
+	branch send_lmp_follow
+
+send_not_accept_aurand:
+	istore 1,contw
+	fetch 1,mem_lmo_reason
+	istore 1,contw
+	arg mem_sres_tid,temp
+	branch special_tid_store
+
+send_lmpext_accepted:	
+	force 4,queue
+	call send_lmpext
+	setarg LMP_ESCAPE
+	istore 1,contw
+	fetch 1,mem_lmi_opcode
+	set0 7,pdata
+	istore 1,contw
+	fetch 1,mem_lmi_opcode
+	branch send_lmp_follow
+
+send_lmpext_not_accepted:
+	force 5,queue
+	call send_lmpext
+	setarg LMP_ESCAPE
+	istore 1,contw
+	fetch 1,mem_lmi_opcode
+	set0 7,pdata
+	istore 1,contw
+	fetch 1,mem_lmo_reason
+	istore 1,contw
+	branch send_lmp_follow
+	
+
+send_lmp_accepted_inrand:
+	call clear_linkkey
+	call tid_check	
+	rtn true
+	branch lmp_generate_key
+
+send_lmp_accepted_enc_mode:
+	fetch 1,mem_op
+	bbit1 op_start_enc,send_lmp_accepted_enc_start
+	rtnbit0 op_stop_enc
+	jam LMP_STOP_ENCRYPTION_REQ,mem_lmo_opcode2
+	set0 op_stop_enc,pdata
+	call tid_reply
+	branch send_lmp_accepted_enc_exit
+send_lmp_accepted_enc_start:
+	jam LMP_ENCRYPTION_KEY_SIZE_REQ,mem_lmo_opcode2
+	set0 op_start_enc,pdata
+send_lmp_accepted_enc_exit:
+	store 1,mem_op
+	rtn
+
+send_lmp_accepted_enc_key:
+	call check_localsm
+	branch lmp_start_encryption,true
+	rtn
+
+send_lmp_accepted_connection:
+	jam LMP_PACKET_TYPE_TABLE_REQ,mem_lmo_opcode2
+	//jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	fetch 1,mem_lmp_conn_state
+	set1 RECEIVED_CONN_REQ,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_BB_CONNECTED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+
+send_lmp_accept_dhkey_check:
+	rtn
+/******** LMP reply messages **********/
+/****** TID always set to remote  *******/
+
+send_lmpext_features_res:
+	force 12,queue
+	call send_lmpext
+	setarg 0x01
+	istore 1,contw
+	fetch 2,mem_lmpext_ssp_enable
+	istore 2,contw
+	setarg 0
+	istore 3,contw
+	setarg 0x00
+	istore 4,contw
+	branch send_lmp_reply
+send_lmpext_io_cap_res:     
+	force 5,queue
+         call send_lmpext
+       	fetch 3,mem_sp_iocap_local
+         istore 3,contw
+	call send_lmp_reply
+	jam FLAG_PAIRING_STATE_PAIRING,mem_flag_pairing_state
+	fetch 1,mem_sp_iocap_local
+	beq DISPLAY_YESNO,responder_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_no_input_no_output
+	rtn
+
+responder_iocap_keyboard_only:
+	fetch 1,mem_sp_iocap_remote
+	beq DISPLAY_ONLY,responder_iocap_keyboard_only_initiator_iocap_display_only
+	beq DISPLAY_YESNO,responder_iocap_keyboard_only_initiator_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_keyboard_only_initiator_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output
+	rtn
+
+
+responder_iocap_display_yesno:
+	fetch 1,mem_sp_iocap_remote
+	beq DISPLAY_ONLY,responder_iocap_display_yesno_initiator_iocap_display_only
+	beq DISPLAY_YESNO,responder_iocap_display_yesno_initiator_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_display_yesno_initiator_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_display_yesno_initiator_iocap_no_input_no_output
+	rtn
+
+	
+responder_iocap_no_input_no_output:
+	fetch 1,mem_sp_iocap_remote
+	beq DISPLAY_ONLY,responder_iocap_no_input_no_output_initiator_iocap_display_only
+	beq DISPLAY_YESNO,responder_iocap_no_input_no_output_initiator_iocap_display_yesno
+	beq KEYBOARD_ONLY,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only
+	beq NO_INPUT_NO_OUTPUT,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output
+	rtn
+
+responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+responder_iocap_display_yesno_initiator_iocap_display_only:
+responder_iocap_no_input_no_output_initiator_iocap_display_only:
+responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+set_ssp_mode_justwork: 
+	jam SSP_MODE_JUST_WORK_FLAG,mem_ssp_mode_flag
+	fetch 1,mem_classic_bt_flag
+	bbit1 FLAG_SSP_REJECT_JUSTWORK,app_bt_disconnect
+	rtn
+
+responder_iocap_display_yesno_initiator_iocap_display_yesno:
+set_ssp_mode_numeric_comparison: 
+	jam SSP_MODE_SSP_PIN_FLAG,mem_ssp_mode_flag
+	rtn
+
+responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+responder_iocap_keyboard_only_initiator_iocap_keyboard_only:	
+responder_iocap_keyboard_only_initiator_iocap_display_only:	
+responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+set_ssp_mode_passkey: 
+	jam SSP_MODE_PASSKEY_ENTRY_FLAG,mem_ssp_mode_flag
+	rtn
+
+
+classic_bt_set_reject_justwork_flag:
+	arg FLAG_SSP_REJECT_JUSTWORK,queue
+	branch classic_bluetooth_set_flag
+
+classic_bt_clr_reject_justwork_flag:
+	arg FLAG_SSP_REJECT_JUSTWORK,queue
+	branch classic_bluetooth_clr_flag
+
+classic_bluetooth_set_flag:
+	fetch 1,mem_classic_bt_flag
+	qset1 pdata
+	store 1,mem_classic_bt_flag
+	rtn
+
+classic_bluetooth_clr_flag:
+	fetch 1,mem_classic_bt_flag
+	qset0 pdata
+	store 1,mem_classic_bt_flag
+	rtn
+
+         
+send_lmp_io_cap_req:
+	force 5,queue
+	call send_lmpext
+	fetch 3,mem_sp_iocap_local
+	istore 3,contw
+	branch send_lmp_request
+	
+
+send_lmpext_sniff_subrating_req: 
+
+	rtn
+send_lmpext_sniff_subrating_res: 
+         force 9,queue
+         call send_lmpext
+         fetch 1,mem_subsniff_rate
+         istore 1,contw
+         fetch 2,mem_subsniff_tcmax
+         istore 2,contw
+         fetch 4,mem_subsniff_instant
+         istore 4,contw
+	branch send_lmp_reply
+
+send_lmp_name_res:
+	force 17,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode  /* loading name offset */
+	copy pdata,temp
+	beq 0x00,send_lmp_name_res_offset_ok
+	beq 0x0e,send_lmp_name_res_offset_ok
+	beq 0x1c,send_lmp_name_res_offset_ok
+	rtn
+send_lmp_name_res_offset_ok:
+	istore 1,contw	/* writing name offset */
+	fetch 1,mem_local_name_length
+	istore 1,contw	/* writing name length */
+	arg 14,loopcnt
+	setarg mem_local_name
+	iadd temp,contr	/* setting read location */
+	call memcpy
+	branch send_lmp_reply
+
+
+send_lmp_timing_accuracy_res:
+	force 3,pdata
+	call msg_send_lmp
+	setarg 0x0114
+	istore 2,contw
+	branch send_lmp_reply
+
+send_lmp_clkoffset_res:
+	// dopod s505 must wait for this res
+	force 3,pdata
+	call msg_send_lmp
+	fetch 4,mem_clke_bt
+	isub clkn_bt,pdata
+	branch send_lmp_clkoffset_res_master,master
+	sub pdata,0,pdata		/* our role is slave */
+send_lmp_clkoffset_res_master:	
+	// bit 16-2 of clkslave-clkmaster
+	rshift2 pdata,pdata
+	set0 15,pdata
+	istore 2,contw
+	branch send_lmp_reply
+
+send_lmp_version_res:
+	force 6,pdata
+	call msg_send_lmp
+	fetch 5,mem_lmp_version
+	istore 5,contw
+	branch send_lmp_reply
+
+send_lmp_features_res:
+	force 9,pdata
+	call msg_send_lmp
+	fetch 8,mem_features
+	istore 8,contw
+	branch send_lmp_reply  
+
+
+/******** LMP request messages **********/
+/****** TID always set to local initiated *******/
+	
+
+send_lmpext_features_req:
+	force 12,queue
+	call send_lmpext
+	setarg 0x01
+	istore 1,contw
+	fetch 2,mem_lmpext_ssp_enable
+	istore 2,contw
+	setarg 0
+	istore 3,contw
+	setarg 0x00
+	istore 4,contw
+	branch send_lmp_request
+
+send_lmpext_packet_type_table_req:
+	force 3,queue
+	call send_lmpext
+	fetch 1,mem_ptt
+	istore 1,contw
+	disable user
+	call send_lmp_request
+	nrtn user
+	nrtn master
+	fetch 1,mem_afh_cfg
+	rtnbit0 AFH_CFG_ON
+	call afh_init
+	branch afh_open_all_channels
+	
+//default:featrue is enable,extfeature is disable
+ssp_enable:
+	bpatchx patch30_4,mem_patch30
+	fetch 1,mem_features+6
+	set1 param_featrue_ssp,pdata
+	store 1,mem_features+6
+	setarg param_lmpext_ssp_enable
+	store 2,mem_lmpext_ssp_enable
+	rtn
+
+ssp_disable:
+	bpatchx patch30_5,mem_patch30
+	fetch 1,mem_features+6
+	set0 param_featrue_ssp,pdata
+	store 1,mem_features+6
+	setarg 0
+	store 2,mem_lmpext_ssp_enable
+	rtn
+	
+afh_init:
+	jam 0x3,mem_afh_cfg
+	setarg 0
+	store 4,mem_afh_timer
+	arg mem_afh_map_lo,contw
+	call afh_reset_map
+	arg mem_afh_map_new,contw
+	call afh_reset_map
+	arg mem_afh_classify_channel_map,contw
+	call afh_reset_map
+	branch afh_clear_error_counter
+afh_open_all_channels:
+	arg mem_afh_map_new,contw
+	call afh_reset_map
+	call afh_clear_error_counter
+	branch afh_set_send_flag
+
+
+afh_reset_map:
+	setarg 0xffffff
+	istore 3,contw
+	istore 3,contw
+	istore 3,contw
+	setarg 0x7f
+	istore 1,contw
+	rtn
+afh_clear_error_counter:
+	setarg 0
+	store 2,mem_afh_error_total
+	rtn
+afh_set_send_flag:
+	fetch 1,mem_afh_cfg
+	set1 send_lmp_set_afh,pdata
+	store 1,mem_afh_cfg
+	rtn
+
+
+send_lmpext_pause_encryption_req:
+	force 2,queue
+	call send_lmpext
+	nbranch send_lmp_reply,master
+	// assume slave will not send pause req firstly???
+	branch send_lmp_request
+
+
+	
+send_lmp_detach:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_disconn_reason_send
+	istore 1,contw
+	call send_lmp_request
+prepare_disconnect:
+	fetch 1,mem_op
+	set1 op_disconn,pdata
+	store 1,mem_op
+	jam 50,mem_conn_timer
+	rtn
+	
+
+send_lmp_no_payload:
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_request
+send_lmp_nopayload_reply:
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_reply
+	
+	
+send_lmp_encryption_mode_req:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_state_map
+	isolate0 smap_encryption,pdata
+	setflag true,0,pdata
+	and_into 1,pdata
+	istore 1,contw
+	branch send_lmp_request
+
+
+send_lmp_superto:
+	force 3,pdata
+	call msg_send_lmp
+	fetch 2,mem_supervision_to
+	istore 2,contw
+	branch send_lmp_request
+
+send_lmp_name_req:
+	jam 250,mem_conn_timer
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_name_offset
+	istore 1,contw
+	branch send_lmp_request
+
+send_lmp_test_control:
+	force 10,pdata
+	call msg_send_lmp
+	arg mem_temp_payload,contr
+	force 9,loopcnt
+send_lmp_test_control_loop:	
+	ifetch 1,contr
+	xor_into 0x55,pdata
+	istore 1,contw
+	loop send_lmp_test_control_loop
+	branch send_lmp_request  
+
+send_lmp_quality_of_service_req:
+	branch send_lmp_request
+send_lmp_unit_key:
+	branch send_lmp_request
+
+send_lmp_slot_offset:
+	rtn master
+	call calc_slot_offset
+	force 9,pdata
+	call msg_send_lmp
+	fetch 2,mem_slot_offset
+	istore 2,contw
+	fetch 3,mem_lap
+	istore 3,contw
+	fetch 1,mem_uap
+	istore 1,contw
+	fetch 2,mem_nap
+	istore 2,contw
+	bmark0 mark_switch_initiated,send_lmp_slot_offset_reply
+	set0 mark_switch_initiated,mark
+	call send_lmp_request
+	jam LMP_SWITCH_REQ,mem_lmo_opcode2
+	rtn
+send_lmp_slot_offset_reply:
+	call send_lmp_reply
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam LMP_SWITCH_REQ,mem_lmi_opcode2
+	rtn
+	
+send_lmp_switch_req:
+	arg 0x200,temp
+	branch switch_on_native,master
+	deposit clke_bt
+	branch switch_slack
+switch_on_native:
+	deposit clkn_bt
+switch_slack:
+	deposit bt_clk
+	iadd temp,pdata
+	and_into 0x1fc,pdata
+	store 4,mem_sniff_anchor
+	force 5,pdata
+	call msg_send_lmp
+	fetch 4,mem_sniff_anchor		/* reused as switch instant */
+	rshift pdata,pdata
+	istore 4,contw
+	branch send_lmp_request
+	
+send_lmp_sniff_req:
+	force 10,pdata
+	call msg_send_lmp
+	arg mem_sniff_payload,contr
+	ifetch 9,contr
+	istore 9,contw
+	branch send_lmp_request
+
+	
+send_lmp_timing_accuracy_req:
+/* default to TID_NORM_SEND */
+	force 3,pdata
+	call msg_send_lmp
+	setarg 0x0114
+	istore 2,contw
+	branch send_lmp_request
+	
+send_lmp_unsniff_req:
+//--------------------need to completa
+	force 1,pdata
+	call msg_send_lmp
+	//fetch 1,mem_unsniff_pending
+	//nbranch send_msg_done,blank
+	//jam 1,mem_unsniff_pending
+	//fetch 2,mem_sniff_attempt
+	//fetch 2,mem_nsniff_attempt
+	//lshift3 pdata,pdata
+	//lshift pdata,pdata
+	//store 1,mem_unsniff_cnt
+	branch send_lmp_request
+
+	
+send_lmp_max_slot:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_max_slot
+	istore 1,contw
+	branch send_lmp_request
+	
+	
+send_lmp_max_slot_req:
+	force 2,pdata
+	call msg_send_lmp
+	setarg 0x05		/*5 slot*/
+	istore 1,contw
+	branch send_lmp_request
+
+
+send_lmp_inc_power:
+	force 2,pdata
+	call msg_send_lmp
+	setarg 0x00		/*5 slot*/
+	istore 1,contw
+	branch send_lmp_request
+
+
+send_lmp_setup_complete_by_module:
+	jam LMP_MAX_SLOT_REQ,mem_lmo_opcode2
+	rtn
+send_lmp_setup_complete:
+	fetch 1,mem_device_option
+	sub pdata,dvc_op_module,null
+	call send_lmp_setup_complete_by_module,zero
+	fetch 1,mem_state
+	set1 state_conn_comp,pdata
+	store 1,mem_state
+	copy clkn_bt,pdata
+	store 4,mem_aurand_send_delay_time
+	fetch 1,mem_lmp_conn_state
+	bbit1 SENT_SETUP_COMPLETE,send_lmp_setup_complete_has_sent
+	set1 SENT_SETUP_COMPLETE,pdata
+	store 1,mem_lmp_conn_state
+	jam BT_EVT_SETUP_COMPLETE,mem_fifo_temp
+	call ui_ipc_send_event
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_request
+send_lmp_setup_complete_has_sent:
+	jam 0,mem_lmp_to_send
+	rtn
+	
+send_lmp_version_req:
+	force 6,pdata
+	call msg_send_lmp
+	fetch 5,mem_lmp_version
+	istore 5,contw
+	branch send_lmp_request
+
+send_lmp_features_req:
+	force 9,pdata
+	call msg_send_lmp
+	fetch 8,mem_features
+	istore 8,contw
+	branch send_lmp_request  
+
+sp_master_send_io_cap_get:
+	jam SP_FLAG_COMMIT,mem_master_sp_flag
+	fetch 1,mem_sp_local_key_invalid
+	rtnne SP_KEY_VALID
+	jam SP_MASTER_STAT_START_DONE,mem_master_sp_state
+	rtn
+
+sp_master_send_io_cap_send:
+	call tid_initiate
+	jam LMP_IO_CAP_REQ,mem_lmo_opcode2
+	jam SP_STAT_KEY_SEND,mem_master_sp_state
+	rtn
+	
+	
+sp_master_send_LMP_ENCAPSULATED_HEADER:
+	call tid_initiate
+	jam      LMP_ENCAPSULATED_HEADER,mem_lmo_opcode2
+	jam SP_STAT_RANDOM_SEND,mem_master_sp_state
+	rtn
+	
+sp_master_commitment_compare:
+	arg mem_sp_calc_result_high,rega
+	arg mem_sp_confirm_remote,regb
+	arg 16,loopcnt
+	call string_compare
+	branch sp_master_commitment_compare_success,zero
+	jam SP_STAT_NULL,mem_master_sp_state
+ifdef SIMPLE_PAIRING
+	call master_clear_mem_master_sp_flag
+endif
+	jam   PDU_NOT_ALLOWED,mem_lmo_reason2
+	jam 	LMP_SIMPLE_PAIRING_NUMBER,mem_lmi_opcode2 
+ifdef LMP_DBG
+	call ice_break
+endif
+	branch reject_lmp_packet
+sp_master_commitment_compare_success:
+	jam 	SP_STAT_CONFIRM_CALC,mem_master_sp_state
+ifdef SIMPLE_PAIRING
+	call master_set_mem_master_sp_flag
+endif
+	jam LMP_SIMPLE_PAIRING_NUMBER,mem_lmi_opcode2
+	branch accept_lmp_msg  
+	
+
+	
+sp_master_send_lmp_simple_pairing_number:
+	jam LMP_SIMPLE_PAIRING_NUMBER,mem_lmo_opcode2
+	rtn
+	
+
+
+sp_send_lmp_encapsulated_header:
+	// calculate the private & public key here
+	//jam      LMP_ENCAPSULATED_HEADER,mem_lmp_to_send
+	jam      LMP_ENCAPSULATED_HEADER,mem_lmo_opcode2
+	//jam      TID_PAIRING,mem_lmp_tid
+	rtn
+	//fetch 1,mem_tid_table
+	//set1 TID_PAIRING,pdata
+	//store 1,mem_tid_table
+     
+    
+send_lmp_encapsulated_header: 
+	jam 0,mem_sp_local_key_send_count
+	force 4,pdata
+	call msg_send_lmp
+	force ENCAPSULATED_MAJOR_TYPE_P192,pdata
+	istore 1,contw
+	force ENCAPSULATED_MINOR_TYPE_P192,pdata
+	istore 1,contw  
+	force ENCAPSULATED_LEN_P192,pdata
+	istore 1,contw 
+	call check_localsm
+	branch send_lmp_request,true
+	branch send_lmp_reply
+
+send_lmp_encapsulated_payload:
+	//jam      TID_PAIRING,mem_lmp_tid
+	 force 17,pdata
+	call msg_send_lmp
+	fetch 1,mem_sp_local_key_send_count
+	arg mem_sp_pubkey_local,contr
+	iadd contr,contr    
+	ifetch   8,contr
+	istore   8,contw
+	ifetch   8,contr
+	istore   8,contw
+	fetch    1,mem_sp_local_key_send_count
+	increase 16,pdata
+	store    1,mem_sp_local_key_send_count
+	call check_localsm
+	branch send_lmp_request,true
+	branch send_lmp_reply
+	//branch send_lmp_request
+	
+sp_send_lmp_simple_pairing_comfirm:
+        jam      SP_STAT_RANDOM_RECV,mem_sp_state
+        jam      LMP_SIMPLE_PAIRING_CONFIRM,mem_lmo_opcode2
+        rtn
+send_lmp_simple_pairing_comfirm:
+        //jam      SP_STAT_RANDOM_RECV,mem_sp_state
+        //jam      TID_PAIRING,mem_lmp_tid
+        force    17,pdata
+        call msg_send_lmp   
+        arg      mem_sp_calc_result_high,contr
+        ifetch   8,contr
+        istore   8,contw
+        ifetch   8,contr
+        istore   8,contw 
+        branch send_lmp_reply
+
+sp_send_lmp_simple_pairing_number:
+	jam      LMP_SIMPLE_PAIRING_NUMBER,mem_lmo_opcode2
+	rtn
+
+send_lmp_simple_pairing_number:
+	//jam      TID_PAIRING,mem_lmp_tid
+	call check_localsm
+ifdef SIMPLE_PAIRING
+	call sp_local_random_key_generator,true
+endif
+	force    17,pdata
+	call msg_send_lmp
+	arg      mem_sp_random_local,contr
+	ifetch   8,contr
+	istore   8,contw
+	ifetch   8,contr
+	istore   8,contw
+	call check_localsm
+	nbranch send_lmp_reply,true
+	branch send_lmp_request,true
+
+master_sp_sm_end:
+	//jam DEFAULT_STATEMACHINE,mem_sp_localsm
+	jam SP_STAT_DONE,mem_master_sp_state
+sp_aurand_send:
+	call tid_initiate
+	jam LMP_AU_RAND,mem_lmo_opcode2
+	call check_localsm_master
+ifdef SIMPLE_PAIRING
+	branch sp_master_key_prarm_push,true
+	branch sp_link_key_prarm_push
+endif
+master_sp_send_lmp_dhkey_check:
+	call tid_reply
+sp_send_lmp_dhkey_check: 
+	jam      LMP_DHKEY_CHECK,mem_lmo_opcode2
+	rtn
+send_lmp_dhkey_check: 
+	//jam      TID_PAIRING,mem_lmp_tid
+	force    17,pdata
+	call     msg_send_lmp
+	arg      mem_sp_calc_result_high,contr
+	ifetch   8,contr
+	istore   8,contw
+	ifetch   8,contr
+	istore   8,contw 
+	call check_localsm
+	nbranch send_lmp_reply,true
+	branch send_lmp_request,true
+
+send_lmp_enc_key_size_mask_res:
+	force 3,pdata
+	call msg_send_lmp   
+	setarg 0xfffe //enc key size mask
+	istore 2,contw
+	branch send_lmp_reply
+
+send_lmp_auto_rate:
+	branch send_lmp_request
+send_lmp_clkoffset_req:
+	branch send_lmp_request
+send_lmp_quality_of_service:
+	branch send_lmp_request
+send_lmp_test_activate:
+	branch send_lmp_request
+
+/******** LMP request/reply messages **********/
+/****** TID transaction specific *******/
+
+send_lmp_comb_key:
+	call generate_random_number
+	arg mem_lap,rega
+	call generate_linkkey
+	force 17,pdata
+	call msg_send_lmp
+	arg mem_kinit,rega
+	arg mem_random_number,regb
+	call xor16
+	nbranch send_lmp_follow,master
+	branch send_lmp_tid
+
+send_lmp_inrand:
+	call generate_random_number
+	arg mem_plap,rega
+	call generate_kinit
+send_lmp_rand:	/* used by in_rand,au_rand,start_encrypt */
+	force 17,pdata
+	call msg_send_lmp
+	arg mem_random_number,contr
+	call memcpy16
+	fetch 1,mem_conn_sm 
+	beq CONN_SM_AUTH_WAIT,send_lmp_request
+	beq CONN_SM_PAIRING_WAIT,send_lmp_request
+	branch send_lmp_tid
+
+send_lmp_aurand:
+	fetch 1,mem_pairing_auth
+	branch send_lmp_aurand_notpairing,blank
+	call check_localsm
+	call tid_initiate,true
+	ncall tid_reply,true
+	branch send_lmp_aurand_common
+send_lmp_aurand_notpairing:
+	call tid_initiate
+send_lmp_aurand_common:
+	call generate_random_number
+	branch send_lmp_rand
+
+send_lmp_sres:
+	arg mem_lap,rega
+	call function_e1
+	force 5,pdata
+	call msg_send_lmp
+	fetch 4,mem_input_store
+	istore 4,contw
+	arg mem_sres_tid,temp
+	call special_tid_store
+	call copy_aco
+	call check_localsm
+	branch send_lmp_sres_master,true
+	jam DONE_ENCRYP,mem_wait_encryption
+	fetch 1,mem_pairing_auth
+	rtn blank
+	jam LMP_AU_RAND,mem_lmo_opcode2
+send_lmp_sres_master:
+	fetch 1,mem_link_key_exists
+	rtn blank
+send_lmp_sres_startenc:
+	call check_localsm
+	nbranch send_lmp_sres_startenc_slave,true
+	fetch 1,mem_auth_enable
+	rtn blank
+	jam LMP_ENCRYPTION_MODE_REQ, mem_lmo_opcode2
+	rtn
+send_lmp_sres_startenc_slave:
+	rtnmark0 mark_slave_in_rand_accepted
+	set0 mark_slave_in_rand_accepted,mark
+	jam LMP_ENCRYPTION_MODE_REQ, mem_lmo_opcode2
+	rtn
+	
+
+	
+send_lmp_start_encryption:
+	call generate_random_number
+	call function_e3
+	force 17,pdata
+	call msg_send_lmp
+	arg mem_random_number,contr
+	call memcpy16
+	branch send_lmp_tid
+
+send_lmp_stop_encryption_req:
+	force 1,pdata
+	call msg_send_lmp
+	branch send_lmp_tid
+
+send_lmp_encryption_key_size_req:
+	force 2,pdata
+	call msg_send_lmp
+	force 16,pdata
+	istore 1,contw
+	store 1,mem_key_size
+	branch send_lmp_tid
+
+msg_send_lmp:
+/* FLOW is set high and LMP is indicated */
+	lshift3 pdata,pdata
+	or_into 0x07,pdata
+	store 1,mem_lmo_header_length
+	arg 17,loopcnt
+	arg mem_lmo_payload,contw
+	call clear_mem
+	arg mem_lmo_payload,contw
+	rtn
+
+send_lmpext:
+	and pdata,0x7f,rega
+	jam LMP_ESCAPE,mem_lmp_to_send
+	deposit queue
+	call msg_send_lmp
+	deposit rega
+	istore 1,contw
+	rtn
+
+send_lmp_follow:
+	fetch 1,mem_lmp_to_send
+	lshift pdata,pdata
+	fetcht 1,mem_state_map
+	isolate1 smap_lmptid,temp
+	setflag true,0,pdata
+	branch send_lmp_exit
+
+
+send_lmp_tid:
+	fetcht 1,mem_state_map
+	and_into 1,temp
+	branch send_lmp_end
+
+send_lmp_reply:
+	force 0,temp
+	branch send_lmp_end
+	
+send_lmp_request:
+	force 1,temp
+send_lmp_end:
+	fetch 1,mem_lmp_to_send
+	lshift pdata,pdata
+	setflag master,0,pdata
+	ixor temp,pdata
+send_lmp_exit:
+	store 1,mem_lmo_header_opcode
+	jam 0,mem_lmp_to_send
+	call lmo_fifo_process_lmo0empty
+	enable user
+	rtn
+
+//blank : not full 
+lmo_fifo_check:
+	fetch 1,mem_lmo_opcode2
+	rtn blank
+	call lmo_fifo_process
+	fetch 1,mem_lmo_opcode2
+	rtn
+
+lmo_fifo_process:
+	bpatchx patch30_6,mem_patch30
+	fetch 1,mem_lmp_to_send
+	branch lmo_fifo_process_lmo0empty,blank
+	fetch 1,mem_lmo_opcode1
+	nrtn blank
+	branch lmo_fifo_process_lmo2to1
+lmo_fifo_process_lmo0empty:
+	fetch 1,mem_lmo_opcode1
+	branch lmo_fifo_process_lmo1_empty,blank
+	fetch 3,mem_lmo_opcode1
+	store 3,mem_lmp_to_send//1=>0
+	fetcht 1,mem_lmo_tid1
+	fetch 1,mem_state_map
+	set0 smap_lmptid,pdata
+	ior temp,pdata
+	store 1,mem_state_map
+	jam 0,mem_lmo_opcode1
+lmo_fifo_process_lmo2to1:
+	fetch 1,mem_lmo_opcode2
+	rtn blank
+	fetch 4,mem_lmo_opcode2
+	store 4,mem_lmo_opcode1//2=>1
+	jam 0,mem_lmo_opcode2
+	rtn
+lmo_fifo_process_lmo1_empty:
+	fetch 1,mem_lmo_opcode2
+	rtn blank
+	fetch 3,mem_lmo_opcode2
+	store 3,mem_lmp_to_send//2=>0	
+	fetcht 1,mem_lmo_tid2
+	fetch 1,mem_state_map
+	set0 smap_lmptid,pdata
+	ior temp,pdata
+	store 1,mem_state_map
+	jam 0,mem_lmo_opcode2
+	rtn
+	
+//input:temp
+special_tid_store:
+	bpatchx patch30_7,mem_patch30
+	fetch 1,mem_state_map
+	copy pdata,regc
+	ifetch 1,temp
+	call pop_tid_follow
+	call send_lmp_follow
+	copy regc,pdata
+	store 1,mem_state_map
+	rtn
+	
+tid_reply:
+	fetcht 1,mem_state_map
+	set0 smap_lmptidinit,temp
+	storet 1,mem_state_map
+	rtn
+	
+tid_initiate:
+	fetcht 1,mem_state_map
+	set1 smap_lmptidinit,temp
+	storet 1,mem_state_map
+	rtn
+	
+	/* true if transaction from remote */
+tid_check:
+	nsetflag master,smap_lmptid,pdata //it is ok
+	fetcht 1,mem_state_map
+	ixor temp,pdata
+	isolate1 smap_lmptid,pdata
+	rtn	
+
+	/* set to remote */
+tid_set_reply:
+	fetch 1,mem_state_map
+	setflag master,smap_lmptid,pdata //it is ok
+	store 1,mem_state_map
+	rtn
+
+	/*rtn true when we lead lmp*/
+check_localsm:
+	fetch 1,mem_sp_localsm
+	compare 	LOCAL_STATEMACHINE,pdata,0x7f
+	rtn
+setlocalsm_master:
+	fetch 1,mem_sp_localsm
+	set1 7,pdata
+	store 1,mem_sp_localsm
+	rtn
+setlocalsm_slave:
+	fetch 1,mem_sp_localsm
+	set0 7,pdata
+	store 1,mem_sp_localsm
+	rtn
+check_localsm_master:
+	fetch 1,mem_sp_localsm
+	isolate1 7,pdata
+	store 1,mem_sp_localsm
+	rtn
+	
+generate_random_number:
+	/* generating a 16 byte random number,storing in ape_random_number */
+	arg mem_random_number,contw
+generate_random:
+	force 16,loopcnt
+generate_random_another:
+generate_random_loop:
+	random pdata
+	istore 1,contw
+	loop generate_random_another
+	rtn
+
+generate_linkkey:
+	call function_e21
+	arg mem_link_key,rega
+	arg mem_input_store,regb
+	ifetch 8,rega					/* check if already got comb key */
+	fetcht 1,mem_state
+	nsetflag blank,state_combkey,temp
+	storet 1,mem_state
+	copy rega,contw
+	call  xor16
+	branch generate_linkkey_continue
+
+/*********************************/
+/*********lmp send*************/
+/********************************/
+
+process_conn_sm:
+	//nrtn master
+	bpatchx patch31_0,mem_patch31
+
+	call lmo_fifo_check
+	nrtn blank
+process_conn_sm_continue:
+	fetch 1,mem_conn_sm
+	rtn blank
+	/* state machine begins in standby */
+	//beq CONN_SM_STANDBY, host_create_conn_begin
+	//beq CONN_SM_WAIT_PAGE, host_create_conn_wait_page
+	beq CONN_SM_SEND_CONN_REQ, host_create_conn_send_conn_req
+	beq CONN_SM_WAIT_CONN_ACCEPT, host_create_conn_wait_accept
+	beq CONN_SM_SEND_FEATURES, host_create_conn_send_features
+	beq CONN_SM_WAIT_FEATURES_RES, host_create_conn_waiting
+	beq CONN_SM_SEND_SWITCH,host_create_conn_send_switch
+	beq CONN_SM_AUTH_PAIR, host_create_conn_auth_pair
+	beq CONN_SM_AUTH_PAIR_WAIT, host_create_conn_auth_pair_wait
+	beq CONN_SM_ENCRYPT, host_create_conn_encrypt
+	beq CONN_SM_ENCRYPT_WAIT, host_create_conn_encrypt_wait
+	beq CONN_SM_ENCRYPT_WAIT_CLEAR, host_create_conn_encrypt_wait_clear
+	beq CONN_SM_SEND_SETUP_COMPLETE, host_create_conn_send_setup_complete
+	beq CONN_SM_WAIT_SETUP_COMPLETE, host_create_conn_wait_setup_complete
+	beq CONN_SM_DETACH_DELAY,host_create_conn_master_detach
+	beq CONN_SM_SEND_VERSION, host_create_conn_send_version
+	beq CONN_SM_WAIT_VERSION, host_create_conn_waiting
+	beq CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION, host_creat_conn_wait_switch
+	beq CONN_SM_SEND_FEATURES_EXT,host_creat_conn_send_feat_ext
+	beq CONN_SM_WAIT_FEATURES_EXT,host_create_conn_waiting
+	beq CONN_SM_PAIRING,host_create_conn_pairing
+	beq CONN_SM_PAIRING_WAIT,host_create_conn_pairing_wait
+	beq CONN_SM_AUTH,host_create_conn_auth
+	beq CONN_SM_AUTH_WAIT,host_create_conn_auth_wait
+	beq CONN_SM_DONE,host_create_conn_done
+	beq CONN_SM_WAIT_DONE,host_create_conn_done_wait
+	jam CONN_SM_STANDBY,mem_conn_sm
+	/* sending error message to host */
+	rtn
+host_create_conn_done:
+	fetch 1,mem_lmp_conn_state		
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	rtnbit0 SENT_SETUP_COMPLETE
+	jam CONN_SM_STANDBY,mem_conn_sm
+	call host_conn_judge_encrypt
+	branch scheduler_start_upper_sm
+	
+host_conn_judge_encrypt:
+	fetch 1,mem_connection_options
+	rtnbit0 CONNECTION_ENCRYPT
+	jam CONN_SM_ENCRYPT_WAIT,mem_conn_sm
+	rtn
+
+host_create_conn_done_wait:
+	arg enpt_delay_timer,queue
+	call timer_check
+	nrtn blank
+	jam CONN_SM_DONE,mem_conn_sm
+	rtn
+	
+host_create_conn_auth:
+	fetch 1,mem_connection_options
+	set0 CONNECTION_AUTH,pdata
+	store 1,mem_connection_options
+	jam CONN_SM_AUTH_WAIT,mem_conn_sm
+	jam LMP_AU_RAND,mem_lmo_opcode2
+	rtn 
+host_create_conn_auth_wait:
+	rtn
+host_create_conn_pairing:
+	fetch 1,mem_pincode_state
+	rtnne pincode_state_pincode_ready //wait for pincode
+	call host_auth
+	jam CONN_SM_PAIRING_WAIT,mem_conn_sm
+	rtn
+
+host_create_conn_pairing_wait:
+	rtn
+host_creat_conn_send_feat_ext:
+	jam CONN_SM_WAIT_FEATURES_EXT,mem_conn_sm
+	jam LMP_EXT_FEATURES_REQ,mem_lmo_opcode2
+	rtn
+host_create_conn_send_version:
+	jam CONN_SM_WAIT_VERSION,mem_conn_sm
+	jam LMP_VERSION_REQ,mem_lmo_opcode2
+	rtn 
+	
+host_creat_conn_wait_switch:
+	fetch 1,mem_switch_flag
+	rtneq SWITCH_FLAG_INIT
+	beq SWITCH_FLAG_ACCEPT,host_create_conn_switch_accept
+	arg switch_wait_timer,queue
+	call timer_check
+	nrtn blank
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	branch host_create_conn_switch
+host_create_conn_switch_accept:
+	rtn master
+	branch host_create_conn_auth_pair
+
+host_create_conn_send_features:
+	jam CONN_SM_WAIT_FEATURES_RES,mem_conn_sm
+	jam LMP_FEATURES_REQ,mem_lmo_opcode2
+	rtn 
+host_create_conn_send_switch:
+	jam LMP_SWITCH_REQ,mem_lmo_opcode2
+	set1 mark_switch_initiated,mark
+	jam CONN_SM_WAIT_CONN_ACCEPT,mem_conn_sm
+	setarg 0x1ff
+	store 2, mem_soft_timer
+	rtn
+host_create_conn_send_conn_req:
+	jam CONN_SM_WAIT_CONN_ACCEPT,mem_conn_sm
+	jam 0xff,mem_soft_timer
+	set0 mark_reconn_recieve_switch,mark
+	jam LMP_HOST_CONNECTION_REQ,mem_lmo_opcode2
+	branch init_lmp_reinit
+host_create_conn_wait_accept:
+	rtnmark1 mark_reconn_recieve_switch
+	fetch 2,mem_soft_timer
+	sub pdata,1,pdata
+	branch host_create_conn_resend,zero
+	store 2, mem_soft_timer
+	rtn
+host_create_conn_resend:
+	jam CONN_SM_SEND_SWITCH,mem_conn_sm
+	rtn
+host_create_conn_waiting:
+	/* we will exit waiting for connection request accepted, features res, or other commands to finish */
+	rtn 
+
+host_create_conn_switch:
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 1,mem_connection_options
+	set0 CONNECTION_SWITCH,pdata
+	store 1,mem_connection_options
+	jam LMP_SWITCH_REQ,mem_lmo_opcode2
+	jam CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION,mem_conn_sm
+	rtn 
+
+host_create_conn_send_setup_complete:
+	jam CONN_SM_WAIT_SETUP_COMPLETE,mem_conn_sm	
+	jam LMP_SETUP_COMPLETE,mem_lmo_opcode2
+	rtn 
+
+host_create_conn_wait_setup_complete:
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	jam CONN_SM_STANDBY,mem_conn_sm	
+
+	rtn
+host_create_conn_wait_setup_complete_rtn:	
+	jam CONN_SM_AUTH_PAIR ,mem_conn_sm
+	rtn
+
+host_create_conn_master_detach:
+	fetch 1, mem_soft_timer
+	increase -1,pdata
+	branch host_create_conn_send_detach,blank//detach
+	store 1, mem_soft_timer
+	rtn 
+host_create_conn_send_detach:
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam LOCAL_HOST,mem_disconn_reason_send
+	jam 0,mem_conn_sm
+	rtn
+host_create_conn_auth_pair:
+	/* checking whether or not to do m/s switch */
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_SWITCH,host_create_conn_switch
+	bbit1 CONNECTION_AUTH,host_create_conn_auth_pair_true
+host_create_conn_sm_done:
+	jam CONN_SM_DONE,mem_conn_sm
+	rtn
+host_create_conn_auth_pair_true:
+	fetch 1,mem_link_key_exists
+	branch host_create_conn_auth_pair_nokey,blank
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 4,mem_aurand_send_delay_time
+	arg 100,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nrtn positive
+	branch host_create_conn_auth
+
+
+
+host_create_conn_auth_pair_nokey:
+	jam CONN_SM_PAIRING,mem_conn_sm
+	jam 4,mem_pin_length
+	setarg 0x3030
+	store 2,mem_pin
+	istore 2,contw
+	jam pincode_state_pincode_ready,mem_pincode_state
+	branch host_create_conn_pairing
+
+host_create_conn_auth_pair_wait:
+	rtn
+host_create_conn_encrypt:
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_ENCRYPT,host_create_conn_encrypt_start
+	jam CONN_SM_DONE,mem_conn_sm
+	rtn 
+
+host_create_conn_encrypt_start:
+	fetch 1,mem_connection_options
+	set0 CONNECTION_ENCRYPT,pdata
+	store 1,mem_connection_options
+	jam LMP_ENCRYPTION_MODE_REQ,mem_lmo_opcode2  
+	rtn
+
+host_create_conn_encrypt_wait:
+	fetch 1, mem_wait_encryption
+	rtn blank
+	jam CONN_SM_STANDBY,mem_conn_sm
+	branch host_create_conn_encrypt_start 
+
+host_create_conn_encrypt_wait_clear:
+	jam CONN_SM_SEND_SETUP_COMPLETE,mem_conn_sm
+	rtn 
+
+host_auth:
+	fetch 1,mem_op
+	bbit1 op_inrand_req,remote_auth
+	call tid_initiate
+	jam LMP_IN_RAND,mem_lmo_opcode2
+	branch cmd_exit
+remote_auth:
+	fetch 1,mem_op
+	set0 op_inrand_req,pdata
+	store 1,mem_op
+	call lmp_accept_inrand
+	call tid_set_reply
+	branch cmd_exit
+
+pincode_reinit:
+	setarg 4
+	store 1,mem_pin_length
+	setarg 0x3030
+	istore 2,contw
+	istore 2,contw
+	rtn
+	
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/patch.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/patch.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/patch.prog	(working copy)
@@ -0,0 +1,3803 @@
+//define DONGLE
+define MOUSE
+define G24
+define BLE
+define CLASSIC_BT
+define MOUSE_SMOOTHER
+define ADC_ENABLE
+//define P24G_LOG
+//define RF_DEBUG
+define BLE_FAST_CONN_ENABLE
+
+
+//define DEBUGLOG
+//define DEBUGLOG_CALLBACK
+//define DEBUGLOG_EVENT
+//define DEBUGLOG_CMD
+//define DEBUGLOG_MISC
+//define DEBUGLOG_STATUS
+//define DEBUGLOG_PARSE_LMP
+//define DEBUGLOG_SEND_LMP
+//define DEBUGLOG_CONN_SM
+//define DEBUGLOG_UPPER_SM
+
+
+p_start:
+	branch p_patch_array
+
+// zcode start
+p_zcode:
+
+//only for power on once
+p_wake_from_power:
+ifdef BLE
+	call p_mouse_data_init
+endif
+	fetch 1,mem_tx_power
+	store 1,mem_tx_power_temp
+	call power_ctrl_pac_succ_cnt_init
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_combination_ui_button_count	//combination key timer init
+	fetch 1,mem_bt_ui_button_timeout
+	store 1,mem_bt_ui_button_count	//bt key timer init
+	call mouse_bt_discovery_button_down_disable
+	call p_mouse_spi_init
+ifdef MOUSE_SMOOTHER	
+	call p_drawing_optima_init
+endif
+	call p_mouse_cb_fuction
+	call p_mouse_wakeup_from_power
+	call p_mouse_select_device_button_wakeup_check	//hibernate wakeup need 190ms
+p_mouse_setting_config:
+	jam ZCODE_80,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+
+p_mouse_cb_fuction:
+ifdef G24
+	setarg p_mouse_g24_package_data
+	store 2,mem_cb_24g_data
+endif	
+ifdef BLE
+	setarg p_mouse_le
+	store 2,mem_cb_le_process
+	setarg p_le_mouse_bb_event_connect_complete
+	store 2,mem_cb_att_write
+endif
+ifdef CLASSIC_BT
+	setarg p_mouse_bt
+	store 2,mem_cb_bt_process
+endif	
+	setarg p_mouse_before_lpm
+	store 2,mem_cb_before_lpm
+	setarg p_mouse_priority_bb_event
+	store 2,mem_cb_bb_event_process
+	setarg p_mouse_idle
+	store 2,mem_cb_idle_process
+	setarg p_mouse_before_hibernate
+	store 2,mem_cb_before_hibernate
+	setarg p_mouse_bb_event_timer
+	store 2,mem_cb_event_timer
+	rtn	
+
+p_mouse_wakeup_from_power:
+	setarg 25
+	store 2,mem_24g_transmit_by_interrupt_exit_count_init
+	ncall p_mouse_24g_transmit_by_interrupt_exit_count_max,wake
+	call p_mouse_sensor_powerdown
+p_mouse_wakeup_no_from_power:
+	fetch 1,mem_reconn_times_init
+	store 1,mem_reconn_times
+	rtn
+p_mouse_24g_transmit_by_interrupt_exit_count_max:
+	setarg 375
+	store 2,mem_24g_transmit_by_interrupt_exit_count_init
+	rtn
+
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+	nop 1
+//	nop 1
+//	nop 1
+//	nop 1
+	
+ifndef MOUSE_SMOOTHER	
+	nop 1
+endif
+	
+	
+p_patch_array:
+	bbit1 8,pf_patch_ext
+	//patch00_0 and patch11_2 are unuseful because of otp
+	beq patch00_1,p_soft_reset_1
+	beq patch00_2,p_soft_reset_2
+	beq patch10_5,p_shutdown_radio
+	beq patch11_1,p_set_freq_tx
+	beq patch11_2,p_initialize_radio_cont
+ifdef CLASSIC_BT
+	beq patch03_3,p_page_wait_fhs_reply_ok
+	beq patch04_6,p_role_switch_master
+	beq patch09_0,p_quit_connection_cont
+	beq patch09_2,p_prepare_tx
+	beq patch0a_1,p_slave_conn_recv_packet
+ 	beq patch0b_1,p_process_dmh
+	beq patch14_7,p_lpm_dispatch
+	beq patch15_5,p_lpm_set_mult
+	beq patch19_3,app_bt_start_reconnect+3
+	beq patch1d_1,p_mouse_bb_disconnected
+endif	
+	beq patch14_1,p_init_param
+	beq patch16_1,p_lpm_check_wake_lock
+	beq patch16_2,p_g24_dispatch
+	beq patch18_4,p_device_init
+	beq patch1c_3,p_mouse_seting_dpi
+	beq patch1c_6,p_mouse_motion
+	beq patch1d_2,p_mouse_bb_event_discovery_btn
+	beq patch1d_3,p_mouse_start_discovery
+	beq patch1d_4,p_mouse_stop_discovery
+	branch loop
+pf_patch_ext:
+ifdef BLE
+	beq patch27_1,p_le_slave_match
+	beq patch28_3,p_le_next_adv_channel
+	beq patch29_2,p_le_receive_skip
+	beq patch2a_7,p_le_update_param
+	beq patch2b_1,p_le_update_channel_map
+	beq patch2c_3,p_le_prepare_tx
+	beq patch2c_6,p_le_parse
+	beq patch2c_7,p_le_parse_l2cap
+	beq patch2d_2,p_le_adv_not_match
+	beq patch2e_7,p_le_lpm_setmult
+endif	
+ifdef CLASSIC_BT
+	beq patch20_5,p_hid_rx_process
+	beq patch30_0,p_parse_lmp_accepted
+	beq patch30_2,p_send_lmp
+	beq patch31_0,p_process_conn_sm
+endif
+	beq patch31_4,p_twspi_reset
+	beq patch31_5,p_spid_init
+	beq patch3f_2,p_check_51cmd_once_continue
+ifdef DEBUGLOG
+	beq patch2f_6,p_parse_lmp_opcode
+	beq patch37_6,p_process_upper_sm_reconn
+	beq patch3e_6,p_ui_ipc_send_event
+	beq patch3e_7,p_ui_ipc_send_cmd
+endif
+	branch loop
+	
+
+ifdef MOUSE
+
+p_mouse_select_device_button_wakeup_check:
+	jam 0,mem_mouse_select_device_button_wakeup_flag
+	call p_mouse_pb_button_check
+	nrtn true
+	call delay_10ms
+	call p_mouse_pb_button_check
+	nrtn true
+	jam 1,mem_mouse_select_device_button_wakeup_flag
+	rtn
+
+
+//p_mouse_switch_Hwakeup_byPB:
+//	fetch 1,mem_mouse_select_device_button_wakeup_flag
+//	rtn blank
+//	call p_mouse_switch_device_flag
+//	branch p_mouse_store_flash_device_info	
+
+p_soft_reset_1:
+	arg mem_sp_state,contw
+	arg 12,loopcnt
+	call clear_mem
+ifdef BLE
+	call p_mouse_le_txbuff_load
+endif
+	call rfcomm_init
+	call init_lmp
+	ncall lpm_disable_exen_output,wake
+	call ui_init+1
+	branch soft_reset+11
+	
+p_soft_reset_2:
+	call app_lpm_init,wake
+ifdef SIMPLE_PAIRING
+	call publickey_init
+else
+	call ssp_disable
+ifdef SECURE_CONNECTION
+	call publickey_init
+
+endif
+endif
+	call lpm_recover_clk,wake
+p_sp_cal_loop:
+	call sp_calc_sequence
+	fetch 1,mem_ssp_enable
+	branch main_loop,blank
+	fetch 1,mem_sp_local_key_invalid // simple pairing is not ready
+	branch p_sp_cal_loop,blank
+	branch main_loop
+
+p_init_param:
+	setarg param_le_version
+	store 3,mem_lmp_version
+	setarg param_le_subversion
+	store 2,mem_lmp_version+3
+	branch init_param+12
+
+p_lpm_check_wake_lock:
+	rtnmark1 mark_24g
+	fetch 1,mem_mouse_multi_led_state
+	nbranch disable_blank,blank
+	fetch 1,mem_mouse_multi_led_blink_count
+	nbranch disable_blank,blank
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	branch disable_blank,blank
+	fetch 1,mem_mouse_le_conn_param_reject
+	beq LE_LPM_DISABLE,disable_blank
+ifdef CLASSIC_BT	
+	fetch 2,mem_sdp_remote_cid
+	nbranch disable_blank,blank
+endif
+	fetch 1,mem_mouse_wheel_trigger
+	nbranch disable_blank,blank
+	branch enable_blank
+
+
+ifdef G24
+p_g24_dispatch:
+	rtnmark0 mark_24g
+	fetch 1,mem_24g_transmit_by_interrupt
+	beq G24_TX_TIMER_INT_ENABLE,p_g24_transmit_by_interrupt
+p_g24_transmit_process:
+	call p_g24_txdata_prep
+	nbranch p_g24_nodata_transmit,user
+	call p_g24_rf_sta_check
+p_g24_transmit_start:
+	call p_g24_transmit_packet
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call power_ctrl_start
+	setarg G24_LONG_SLEEP_STEP1
+	store 3,mem_24g_enter_hibernate
+	jam 20,mem_24g_long_sleep_param_update_timer
+//	fetch 1,mem_mouse_multi_led_state
+//	beq ON,p_g24_transmit_by_interrupt_enable
+p_g24_short_sleep:	
+	call p_g24_lpm_wait
+	nrtn user
+	call p_clear_wake
+	setarg 62500
+	branch lpm_dispatch_sleep
+
+p_g24_transmit_by_interrupt:
+	jam ZCODE_01,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_g24_nodata_transmit:
+	fetch 1,mem_24g_abort_pac
+	call p_g24_send_abort_packet,blank
+	fetch 1,mem_mouse_multi_led_blink_count
+	nrtn blank
+	fetch 1,mem_mouse_multi_led_state
+	rtneq ON
+	fetch 1,mem_24g_transmit_by_interrupt
+	rtneq G24_TX_TIMER_INT_ENABLE
+p_g24_long_sleep:
+	call p_g24_lpm_wait
+	nrtn user
+	fetch 3,mem_24g_enter_hibernate
+	call clk2lpo
+	storet 4,mem_sleep_counter
+  	branch lpm_sleep
+
+p_g24_lpm_wait:
+	enable user
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	branch disable_user,blank
+	fetch 1,mem_lpm_mode
+	branch disable_user,blank
+	fetch 1,mem_24g_transmit_by_interrupt
+	beq G24_TX_TIMER_INT_ENABLE,disable_user
+p_mouse_setgpio_lpm:
+	call p_mouse_set_sdio_high
+	call p_clear_wake
+p_mouse_setgpio_hibernate:	
+	call mouse_lpm_before_common
+
+	fetcht 1,mem_flash_ncs_gpio
+	call gpio_out_inactive
+	
+	hfetch 4,core_gpio_oe0
+	hfetcht 4,core_gpio_pu0
+	ior temp,temp
+	invert temp,temp
+	hstoret 4,core_gpio_pd0
+	hfetch 1,core_gpio_pd1
+	set0 2,pdata
+	hstore 1,core_gpio_pd1
+	hfetch 1,core_gpio_pd2	//flash hold pin gpio22
+	set0 6,pdata
+	hstore 1,core_gpio_pd2	
+	
+	hfetch 1,core_gpio_pd3//hold pin gpio27  //no led sm light
+	set0 3,pdata
+	hstore 1,core_gpio_pd3
+	
+p_mouse_multi_led_gpio_set_float:
+	fetcht 1,mem_mouse_multi_led_gpio
+	set0 gpio_active_bit,temp
+	branch gpio_set_high_impedance
+p_g24_send_abort_packet:
+	jam TYPE_MS,mem_24g_data_type
+	jam 1,mem_24g_abort_pac
+	jam 0,mem_24g_rf_hop_ch
+	call p_g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_txbuf
+	setarg 0
+	store 7,mem_24g_txbuf+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_txbuf+8
+	jam 12,mem_24g_datalen
+	fetch 1,mem_24g_data_type
+	set1 bit_abort,pdata
+	store 1,mem_24g_data_type
+	call p_g24_txdata_enable_tx
+	branch p_g24_transmit_start
+
+
+p_g24_transmit_rf_sta_init:
+	jam 1,mem_24g_rf_last_sta
+	jam 0,mem_24g_sync_cnt
+p_g24_transmit_rf_ctrl_clear:	
+	fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	store 1,mem_24g_data_type
+	rtn
+	
+p_g24_hop_ch_enable:
+	fetch 1,mem_24g_data_type
+	set1 bit_hop,pdata
+	store 1,mem_24g_data_type
+	//update txpayload
+	store 1,mem_24g_txpayload
+	rtn
+
+p_g24_hop_enable_packet:
+	fetch 1,mem_24g_data_type
+	rtnbit0 bit_hop
+p_g24_hop_ch_disable:
+	fetch 1,mem_24g_data_type
+	set0 bit_hop,pdata
+	store 1,mem_24g_data_type
+	store 1,mem_24g_txpayload
+	call power_ctrl_pac_succ_decrs
+	branch p_g24_ch
+
+p_g24_rf_hop_attemp_again:
+	fetch 1,mem_24g_rf_hop_ch
+	bne 1,p_g24_transmit_rf_ctrl_clear
+p_g24_rf_hop_fastly:
+	fetch 1,mem_24g_hop_fastly_cnt
+	increase 1,pdata
+	store 1,mem_24g_hop_fastly_cnt
+	beq 4,p_g24_rf_hop_fastly_exit
+	call p_g24_ch
+	jam 2,mem_24g_max_retry
+p_g24_transmit_packet:
+	jam 0,mem_24g_retry
+p_g24_transmit_loop:
+	arg param_rx_setup,timeup
+	until clkn_rt,meet
+	call p_g24_transmit_receive_ack
+//	fetch 1,mem_24g_no_ack	//tx noack
+//	rtneq no_ack_24g
+	nbranch p_g24_retransmit,sync
+	nbranch p_g24_retransmit,user3
+	call p_g24_txbuf_clear
+	call p_g24_ackpayload_parse
+	call power_ctrl_pac_succ_incrs
+p_g24_transmit_next_packet:
+	fetch 1,mem_24g_pid
+	increase 1,pdata
+	store 1,mem_24g_pid
+	call p_g24_hop_enable_packet
+	fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,p_g24_paring_mode_start
+	call p_g24_transmit_succ_rf_config
+p_g24_transmit_abandon:
+	setarg 0
+	store 4,mem_24g_ensure
+	store 1,mem_24g_hop_pac_retry
+	rtn
+p_g24_rf_hop_fastly_exit:
+	call power_ctrl_pac_succ_decrs
+	jam 0,mem_24g_hop_fastly_cnt
+	branch p_g24_transmit_rf_ctrl_clear
+
+p_g24_transmit_hop_pac_succ_wo_hop:
+	jam 2,mem_24g_sync_cnt
+p_g24_transmit_hop_pac_succ:
+	jam 1,mem_24g_rf_last_sta
+	jam 0,mem_24g_rf_hop_ch
+	branch p_g24_transmit_rf_ctrl_clear
+
+p_g24_transmit_succ_rf_config:
+	fetch 1,mem_24g_rf_work_stage
+	beq 3,p_g24_transmit_hop_pac_succ
+	fetch 1,mem_24g_data_type
+	isolate0 bit_hop,pdata
+	branch p_g24_transmit_rf_sta_init,true
+	fetch 1,mem_24g_rf_work_stage
+	beq 1,p_g24_transmit_hop_pac_succ_wo_hop
+	beq 2,p_g24_transmit_hop_pac_succ
+	rtn
+
+p_g24_rf_sta_check:
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call p_g24_rf_laststa_synccnt_check
+	ncall p_g24_rf_sync_cnt_check,user2
+	rtn
+
+p_g24_rf_laststa_synccnt_check:
+	disable user2
+	fetch 1,mem_24g_rf_last_sta
+	rtnne 1
+	fetch 1,mem_24g_sync_cnt
+	rtnne 0
+	jam 1,mem_24g_rf_work_stage
+	jam 4,mem_24g_max_retry
+	branch enable_user2
+
+p_g24_rf_sync_cnt_check:
+	fetch 1,mem_24g_sync_cnt
+	branch p_g24_rf_hop_attemp,blank
+	increase -1,pdata
+	store 1,mem_24g_sync_cnt
+	jam 2,mem_24g_rf_work_stage
+	jam 4,mem_24g_max_retry
+p_g24_ch:
+	fetcht 1,mem_24g_current_ch_number
+	fetch 1,mem_24g_addr	
+	and_into 0x03,pdata
+	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+	setarg mem_24g_ch_map1
+	iadd rega,pdata
+	iadd temp,contr
+	ifetch 1,contr
+	store 1,mem_24g_ch
+	increase 1,temp
+	and_into 3,temp //map size =4
+	storet 1,mem_24g_current_ch_number
+	rtn
+
+p_g24_rf_hop_attemp:
+	jam 3,mem_24g_rf_work_stage
+	fetch 1,mem_24g_rf_hop_ch
+	nbranch p_g24_rf_hop_attemp_again,blank
+	jam 2,mem_24g_max_retry
+	branch p_g24_ch
+
+p_g24_txdata_prep:
+	fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,p_g24_pairing_sm	
+p_g24_txdata_prep_packeage_data:
+	call p_g24_package_data
+p_g24_txdata_enable_tx:	
+	call p_g24_transmit_prep
+	jam ENSURE_ON_24G,mem_24g_ensure
+	rtn
+
+p_g24_package_data:
+	fetch 2,mem_cb_24g_data
+	call callback_func
+	branch p_g24_accumulate_mouse_data,user
+	fetch 7,mem_24g_txbuf+1	//mouse data
+	rtn blank
+	branch enable_user	// retransmit
+p_g24_accumulate_mouse_data:
+	fetch 1,mem_customer_key
+	nbranch p_g24_accumulate_customer_data,blank
+	jam TYPE_MS,mem_24g_data_type
+	call p_mouse_data_xy_release
+	call p_g24_accumulate_data_head
+	ifetcht 1,contw
+	ifetch 1,regb
+	ior temp,pdata
+	istore 1,contw	//key
+	increase 1,regb
+	ifetch 4,regb
+	istore 4,contw	//x,y
+	increase 4,regb
+	arg mem_24g_txbuf+6,contw
+	arg 2,loopcnt
+p_g24_accumulation_loop:
+	ifetch 1,regb
+	ifetcht 1,contw	//wheel,twheel
+	iadd temp,pdata
+	istore 1,contw
+	increase 1,regb
+	loop p_g24_accumulation_loop
+	rtn
+
+	
+p_g24_accumulate_data_head:
+	jam 0,mem_24g_abort_pac
+	add rega,1,pdata
+	store 1,mem_24g_datalen
+	call p_g24_transmit_rf_ctrl_clear
+	store 1,mem_24g_txbuf
+	rtn
+	
+p_g24_accumulate_customer_data:
+	jam TYPE_KB,mem_24g_data_type
+	arg 9,rega
+	arg mem_customer_key_release,regb
+	fetch 1,mem_customer_data_trigger
+	ncall p_mouse_customer_key_press,blank
+	call p_g24_accumulate_data_head
+	copy regb,contr
+	copy rega,loopcnt
+	branch memcpy
+p_mouse_customer_key_press:
+	arg mem_customer_key_press,regb
+	rtn
+
+p_g24_txbuf_clear:
+	arg 4,loopcnt
+	arg mem_24g_txbuf,contw
+	branch memset0
+
+p_g24_transmit_receive_ack:
+	disable user3
+	call p_g24_transmit
+	
+ifdef RF_DEBUG
+	call test_gpio_low
+endif
+
+//	fetch 1,mem_24g_no_ack
+//	beq no_ack_24g,p_g24_transmit_no_ack	//tx no ack
+	force 0,radio_ctrl
+	fetch 4,mem_24g_addr
+	iforce access
+	fetcht 1,mem_last_freq
+	call set_freq_rx
+	call rf_rx_enable
+	call p_g24_receive_rxon
+	call p_g24_end_of_packet,user3
+	rtn
+//p_g24_transmit_no_ack:
+//	call p_g24_end_of_packet
+//	branch p_g24_transmit_next_packet
+
+p_g24_retransmit:
+	fetch 2,mem_24g_txfail_cnt
+	increase 1,pdata
+	store 2,mem_24g_txfail_cnt	
+	fetch 1,mem_24g_txfail_cnt+1
+	bbit1 4,p_g24_stop_g24_mode
+
+	fetch 1,mem_24g_pairing_sm
+	bne STATE_24G_PAIRING_SUCCESS,p_g24_tx_paring_retry
+	call p_g24_tx_hop_ch_process
+	branch p_g24_transmit_loop
+
+p_g24_tx_paring_retry:
+	fetch 1,mem_24g_txfail_cnt
+	rtnne 0xff
+p_g24_tx_attempt_fail:
+	setarg 0
+	store 2,mem_24g_txfail_cnt
+p_g24_stop_g24_mode:
+	jam BT_EVT_24G_ATTEMPT_FAIL,mem_fifo_temp
+	branch ui_ipc_send_event
+
+p_g24_tx_fast_hop:
+	call power_ctrl_txpower_incrs
+	call power_ctrl_pac_succ_decrs
+	branch p_g24_ch
+
+p_g24_tx_hop_ch_process:
+	fetch 1,mem_24g_retry
+	sub pdata,11,null
+	nbranch  p_g24_tx_fast_hop,positive		// >= 6+6 hop fast    fail packet count >= 2
+	increase 1,pdata
+	store 1,mem_24g_retry
+	beq 2,p_g24_hop_ch_enable
+	beq 6,p_g24_hop_ch_disable
+	beq 8,p_g24_hop_ch_enable
+	beq 12,p_g24_hop_ch_disable
+	rtn
+
+p_g24_ackpayload_parse:
+	call p_g24_read_len_pid_crc
+	fetch 1,mem_24g_rxdata_length	//ack payload length 
+	rtn blank
+	iforce loopcnt
+	arg mem_24g_rxbuf+2,contr
+	arg mem_24g_rxpayload,contw	//ack payload buffer 
+	branch memcpy
+
+p_g24_pairing_sm:
+	jam ZCODE_90,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_g24_paring_mode_start:
+	call power_ctrl_pac_succ_cnt_init
+p_g24_paring_mode:
+	jam ZCODE_91,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_start_24g_mode:
+	call p_mouse_mode_24g_device_multi_led_on
+	jam ZCODE_60,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_g24_auto_pair_start:
+	jam 0,mem_mouse_long_button_select_device
+	jam ZCODE_70,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+
+p_g24_tx_attemp_data_prep:
+	jam 0xff,mem_24g_common_temp
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	call p_g24_put_data_in_buff
+	branch p_g24_transmit_prep
+
+
+p_g24_check_51cmd_stop_24g:
+	set0 mark_24g,mark
+	call le_disable
+p_mouse_disable_g24_pairing_flag:
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	branch mouse_disable_function_flag
+
+p_g24_put_data_in_buff:
+	storet 1,mem_24g_datalen
+	copy temp,loopcnt
+	arg mem_24g_txbuf,contw
+	copy rega,contr
+	branch memcpy
+
+p_g24_read_len_pid_crc:
+//read control
+	fetch 1,mem_24g_rxbuf+1
+	rshift3 pdata,pdata
+	store 1,mem_24g_rxdata_length
+//get crc
+	increase 1,pdata
+	arg mem_24g_rxbuf+1,contr
+	iadd contr,contr
+	ifetch 3,contr
+	store 3,mem_24g_sta_crc
+//read pid
+	fetch 1,mem_24g_rxbuf+1
+	rshift pdata,pdata
+	and pdata,0x03,pdata
+	store 1,mem_24g_sta_pid
+	rtn
+
+p_g24_update_addr_and_synccrc8:	
+	store 4,mem_24g_addr
+//output: 1BYTE crc8
+p_g24_syncword_crc8:
+	arg 0,rega
+	arg 4,loopcnt
+	arg mem_24g_addr,contr
+p_g24_syncword_crc8_loop:
+	ifetch 1,contr
+	iadd rega,rega
+	loop p_g24_syncword_crc8_loop
+	copy rega,pdata
+	store 2,mem_24g_syncword
+	fetch 1,mem_24g_syncword
+	fetcht 1,mem_24g_syncword+1
+	iadd temp,pdata
+	store 1,mem_24g_syncword_crc8
+	rtn
+
+p_g24_transmit_prep:
+ifdef P24G_LOG
+	fetch 1,mem_24g_paccnt
+	increase 1,pdata
+	store 1,mem_24g_paccnt
+endif
+
+// total length
+	fetch 1,mem_24g_datalen
+	increase 2,pdata
+	store 1,mem_24g_txlen
+// data type
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_txpayload
+//prepare 5bit payload length, 2bit PID, 1bit NO_ACK
+	fetch 1,mem_24g_datalen
+	lshift3 pdata,pdata
+	fetcht 1,mem_24g_pid
+	and temp,0x03,temp
+	lshift temp,temp
+	ior temp,pdata
+	fetcht 1,mem_24g_no_ack
+	iadd temp,pdata
+	istore 1,contw
+//prepare payload data
+	fetch 1,mem_24g_datalen
+	iforce loopcnt
+	arg mem_24g_txbuf,contr
+	branch memcpy
+
+//p_g24_ch:
+//	fetcht 1,mem_24g_current_ch_number
+//	fetch 1,mem_24g_addr	
+//	and_into 0x03,pdata
+//	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+//	setarg mem_24g_ch_map1
+//	iadd rega,pdata
+//	iadd temp,contr
+//	ifetch 1,contr
+//	store 1,mem_24g_ch
+//	increase 1,temp
+//	and_into 3,temp //map size =4
+//	storet 1,mem_24g_current_ch_number
+//	rtn
+
+//p_g24_ch_map_size:
+//	call p_g24_ch_calc
+//	increase 1,temp
+//	and_into 3,temp //map size =4
+//	rtn
+	
+//p_g24_ch_calc:
+//	fetch 1,mem_24g_addr	
+//	and_into 0x03,pdata
+//	mul32 pdata,4,rega			//24addr low bit0 bit1 ,00-map1,01-map2,10-map3,11-map4
+//	setarg mem_24g_ch_map1
+//	iadd rega,pdata
+//	iadd temp,contr
+//	ifetch 1,contr
+//	store 1,mem_24g_ch
+//	rtn
+	
+p_g24_prep:
+	disable enable_crc
+	disable enable_white
+	setarg 0x555555
+	iforce crc24_init
+	fetch 1,mem_24g_ch
+	reverse pdata,temp
+	set1 1,temp
+	rshift temp,white_init
+	rtn
+
+//p_g24_receive_packet:
+//	call le_enable
+//	fetch 4,mem_24g_addr
+//	iforce access
+//	call set_sync_on
+//	fetcht 1,mem_24g_ch
+//	call set_freq_rx
+//	setarg param_pll_setup
+//	call sleep
+//	call rf_rx_enable
+p_g24_receive_rxon:
+
+ifdef RF_DEBUG
+	call test_h_l_h
+endif
+
+	call p_g24_prep
+	disable user3
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	enable swfine
+	fetch 2,mem_24g_rx_window
+	iforce stop_watch
+	correlate null,timeout
+	nbranch p_g24_end_of_packet,sync
+
+ifdef RF_DEBUG
+	call test_gpio_low
+	call test_gpio_high
+endif
+
+	disable decode_fec0
+	enable decode_fec1
+	enable enable_white
+	enable enable_crc
+	call p_g24_receive_byte
+	store 1,mem_24g_get_syncword_crc8
+	fetcht 1,mem_24g_syncword_crc8
+	isub temp,null
+	nbranch p_g24_end_of_packet,zero
+	call p_g24_receive_byte
+	store 1,mem_24g_rxbuf	//device id
+//	fetch 1,mem_24g_mode
+//	sub pdata,rx_24g,null
+//	branch p_g24_receive_skip,zero
+	fetch 1,mem_24g_rxbuf
+	fetcht 1,mem_24g_data_type
+	icompare bits_data,temp
+	nbranch p_g24_end_of_packet,true
+p_g24_receive_skip:
+	call p_g24_receive_byte
+	istore 1,contw
+	rshift3 pdata,pdata
+	and pdata,0x1f,loopcnt	//max payload: 32bytes
+	branch p_g24rx_nopayload,zero
+p_g24rx_loop:
+	call p_g24_receive_byte
+	istore 1,contw
+	loop p_g24rx_loop
+p_g24rx_nopayload:
+ifdef MOUSE
+	//receive rssi hex
+	copy contw,rega
+	call p_g24_receive_byte
+	store 1,mem_rssi_hex_received
+	copy rega,contw
+endif
+	parse demod,bucket,24
+	enable swfine
+	arg param_sifs,stop_watch	
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	disable decode_fec1
+//ifdef DONGLE
+//	call save_rssi
+//endif	
+	branch p_g24_end_of_packet,crc_failed
+
+ifdef RF_DEBUG
+	call test_gpio_low
+	call test_gpio_high
+endif
+
+	enable user3
+	fetch 1,mem_last_freq
+	add pdata,0,rega
+	call rf_write_freq
+	disable decode_fec0
+	call set_sync_on
+//ifdef DONGLE
+//	rtn
+//endif
+//ifdef MOUSE
+	fetch 1,mem_rssi_hex_received
+//	branch p_rssi_signal
+
+p_rssi_signal:
+	copy pdata,rega
+	fetcht 1,mem_rssi_signal_index
+	setarg mem_rssi_signal_buf
+	iadd temp,contw
+	copy rega,pdata
+	istore 1,contw
+	increase 1,temp
+	and_into RSSI_BUF_LEN_SIGNAL,temp
+	storet 1,mem_rssi_signal_index
+	rtn
+//endif
+//	rtn
+
+p_g24_receive_byte:
+	parse demod,bucket,8
+	rshift3 pwindow,pdata
+	rtn
+	
+p_g24_end_of_packet:
+	disable encode_fec1
+	disable decode_fec1
+	call end_of_packet
+ifdef RF_DEBUG
+	call test_gpio_low
+endif
+	rtn
+
+//p_g24_sync_timeout:
+//ifdef DONGLE
+//	call p_rssi_noise
+//endif
+//	branch p_g24_end_of_packet
+
+//p_g24_set_freq_tx:
+//	call set_sync_on
+//	fetcht 1,mem_24g_ch
+//	branch set_freq_tx
+
+p_g24_transmit:
+	call le_enable
+	fetch 4,mem_24g_addr
+	iforce access
+	call p_g24_prep
+//	call p_g24_set_freq_tx
+
+	call set_sync_on
+	fetcht 1,mem_24g_ch
+	call set_freq_tx
+
+	set1 TXGFSK,radio_ctrl
+	enable encode_fec0
+	enable is_tx
+	disable is_rx
+
+ifdef RF_DEBUG
+	call test_gpio_high
+endif
+	
+	rshift16 access,pdata
+	rshift8 pdata,pdata
+	rshift4 pdata,pdata
+	inject mod,40
+	disable encode_fec0
+	enable encode_fec1
+	enable enable_white
+	enable enable_crc
+	fetch 1,mem_24g_syncword_crc8
+	inject mod,8
+	fetch 1,mem_24g_txlen
+	iforce loopcnt
+	arg mem_24g_txpayload,contr
+p_g24tr_loop:
+	ifetch 1,contr
+	inject mod,8
+	loop p_g24tr_loop
+//ifdef DONGLE
+//	fetch 1,mem_rssi_hex
+//	inject mod,8
+//endif
+
+ifdef P24G_LOG	
+	fetch 1,mem_tx_power
+	inject mod,8
+	fetch 1,mem_rssi_avg_received
+	inject mod,8
+	fetch 1,mem_24g_paccnt
+	inject mod,8
+endif
+
+	enable enable_parity
+	inject mod,24	//crc
+	disable enable_parity
+	until null,tx_clear
+	nop 100
+	disable encode_fec0
+	disable encode_fec1
+	rtn
+
+p_g24_timer_check:
+	call disable_user
+	fetcht 4,mem_24g_tx_btclk
+	copy clkn_bt,pdata
+	isub temp,null
+	ncall g24_timer_timeout,positive
+	copy pdata,regb
+	fetch 4,mem_24g_tx_btclk
+	fetcht 1,mem_24g_interval
+	iadd temp,temp
+	copy regb,pdata
+	isub temp,null
+	nrtn positive
+	set0 28,pdata
+	store 4,mem_24g_tx_btclk
+	branch enable_user
+
+//p_rssi_noise:
+//	call save_rssi
+//	rtn blank
+//	fetcht 1,mem_rssi_noise_index
+//	arg mem_rssi_noise_buffer,rega
+//	call p_rssi_store
+//	storet 1,mem_rssi_noise_index
+//	rtn
+	
+//p_rssi_store:
+//	copy rega,pdata
+//	iadd temp,contw
+//	fetch 1,mem_rssi
+//	istore 1,contw
+//	increase 1,temp
+//ifdef DONGLE
+//	and_into RSSI_BUF_LEN_NOISE,temp
+//endif
+//ifdef MOUSE
+//	and_into RSSI_BUF_LEN_SIGNAL,temp
+//endif
+//	rtn
+p_rssi_average:
+	arg 0,temp
+//ifdef DONGLE
+//	arg RSSI_BUF_LEN_NOISE+1,loopcnt
+//endif
+ifdef MOUSE
+	arg RSSI_BUF_LEN_SIGNAL+1,loopcnt
+endif
+	copy rega,contr
+//ifdef DONGLE
+//	branch rssi_average_loop
+//endif
+//ifdef MOUSE
+p_rssi_average_loop:
+	ifetch 1,contr
+	iadd temp,temp
+	loop p_rssi_average_loop
+	rshift3 temp,pdata
+	copy pdata,temp
+	rtnmark0 mark_24g
+	//2BCD
+	div pdata,10
+	call wait_div_end
+	quotient pdata
+	lshift4 pdata,pdata
+	remainder temp
+	ior temp,temp
+	rtn
+//endif
+//	rtn
+
+endif
+
+p_mouse_before_lpm:
+	rtnmark1 mark_24g
+	call p_mouse_le_txbuff_save
+	call p_mouse_setgpio_lpm
+	fetch 1,mem_context
+	bbit0 state_inconn,p_clear_wake
+	fetch 1,mem_lpm_current_mult
+	nrtn blank
+p_clear_wake:
+	setarg 0
+	store 8,mem_gpio_wakeup_low
+	rtn
+
+p_mouse_set_sdio_high:
+	fetch 1,mem_mouse_init_sensor_reset_flag
+	rtn blank
+	branch p_mouse_seting_sensor_type// make sdio high to make 100uA less	
+
+p_device_init:
+	call initialize_radio
+ifdef DEBUGLOG
+	call debuglog_init
+ifdef DEBUGLOG_STATUS
+	setarg DEBUGLOG_DTYPE_STATUS
+	store 2,mem_debuglog_datatype
+	setarg STATUS_LPM_WAKE
+	store 2,mem_debuglog_dataval
+	call debuglog_push	
+endif
+endif
+	call app_lpm_mult_enable
+	call enable_authrom
+	branch p_mouse_spi_init,wake
+p_device_wake_from_power:
+ifdef DEBUGLOG
+ifdef DEBUGLOG_STATUS
+	setarg DEBUGLOG_DTYPE_STATUS
+	store 2,mem_debuglog_datatype
+	setarg STATUS_CODE_WAKE
+	store 2,mem_debuglog_dataval
+	call debuglog_push
+endif
+endif
+ifdef RF_DEBUG
+	call test_gpio_init
+endif
+ifdef BLE_FAST_CONN_ENABLE
+	fetch 3,mem_le_lap+3
+	store 3,mem_le_lap_high_3B
+endif
+	call p_wake_from_power
+
+//	call p_mouse_switch_Hwakeup_byPB
+//ifdef G24
+//	call p_mouse_check_key_gpio
+//	beq MOUSE_LM_BUTTON,p_mouse_24g_pairing_button
+//endif
+p_mouse_check_reconn_target:
+	jam ZCODE_22,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_null_enter_hibernate_enable:	//ble never connected
+	jam 1,mem_mouse_null_enter_hibernate_flag
+	jam 40,mem_mouse_null_enter_hibernate_timer	//lmr 3s
+	rtn
+	
+
+
+p_mouse_tx_power_init:
+	fetch 1,mem_tx_power_temp
+	store 1,mem_tx_power
+	rtn
+
+//p_mouse_check_select_device_by_switch:
+//	fetch 1,mem_config_function_enable
+//	branch mouse_cheak_select_device_by_switch+1
+
+ifdef G24
+//p_mouse_24g_pairing_button:
+//	jam ZCODE_71,mem_zcode_temp_param0
+//	branch p_zcode_entrance
+endif
+ifdef BLE
+
+p_le_check_adv_flag:
+	arg mem_le_adv_data,rega
+p_le_check_adv_flag_loop:
+	ifetch 1,rega	//length
+	rtn blank
+	iadd contr,rega
+	ifetch 1,contr	//type
+	rtneq 0x01
+	branch p_le_check_adv_flag_loop
+
+ifdef BLE_FAST_CONN_ENABLE
+p_mouse_le_fast_conn_disable:
+	jam 0x5a,mem_mouse_fast_conn_flag
+	rtn
+	
+p_mouse_fast_conn_init:
+	jam 0xff,mem_mouse_fast_conn_flag
+	jam 0x34,mem_xrecord_mode
+	fetch 6,mem_24g_allpowerful_addr
+	store 6,mem_le_lap
+	rtn	
+endif
+	
+endif
+	
+p_mouse_init_sunt:
+	call p_mouse_spi_init
+	call mouse_spi_sdio_gpio_pollup
+p_mouse_init_sensor:
+	call mouse_read_sensor_id
+	beq P32XX_ID1,p_mouse_init_p32xx_id2_judge
+	beq P3065_ID1,p_mouse_p3065_init_param
+	call mouse_twspi_reset
+	nop 1000
+	branch p_mouse_init_sensor
+
+p_mouse_init_p32xx_id2_judge:
+	call p_mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+//	beq P_MX8650,p_mouse_mx8650_init_param
+	beq PKA8_ID2,p_mouse_ka8_init_param
+//	beq P8009_ID2,p_mouse_8009_init_param
+	branch mouse_init_p32xx_id2_judge
+
+//p_mouse_mx8650_init_param:
+//	jam MX8650,mem_config_sensor_type
+//	setarg 0x8006
+//	call twspi_write
+//	call delay_10ms
+//	arg mem_sensor_8650_init,regc
+//	call p_sensor_wr_seq
+//	branch p_mouse_dpi_config
+
+p_mouse_ka8_init_param:
+	jam KA8,mem_config_sensor_type	
+	arg mem_sensor_ka8_init,regc
+p_sensor_wr_seq:
+	ifetch 2,regc
+	rtneq 0xff
+	call twspi_write
+	nop 12000
+	increase 2,regc
+	branch p_sensor_wr_seq
+
+//p_mouse_8009_init_param:
+//	setarg 0x16
+//	call twspi_read
+//	sub pdata,0xbd,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x19
+//	call twspi_read
+//	sub pdata,0x55,null 
+//	nbranch p_mouse_init_sensor,zero
+//	setarg 0x1b
+//	call twspi_read
+//	sub pdata,0x1d,null 
+//	nbranch p_mouse_init_sensor,zero
+//	jam P8009,mem_config_sensor_type
+//	arg mem_sensor_8009_init,regc
+//	branch p_sensor_wr_seq
+
+p_mouse_p3065_init_param:
+	call p_mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+	beq P3065_XY_ID2,mouse_p3065xy_init_param
+	jam P3065,mem_config_sensor_type
+	rtn
+
+p_mouse_dpi_config:
+	fetch 1,mem_mouse_dpi
+	bne 0xff,p_mouse_seting_dpi
+p_mouse_dpi_config_default:
+	fetch 1,mem_config_sensor_motion
+	store 1,mem_mouse_dpi
+	branch p_mouse_seting_dpi
+	
+//ncs gpio output high
+//p_flash_ncs_disable:
+//	fetcht 1,mem_flash_ncs_gpio
+//	branch gpio_out_inactive
+
+p_spid_init_flash:
+	jam 0x40,core_spid_ctrl
+	jam 0x0,core_spid_delay
+	hfetch 1,core_gpio_sel1
+	set0 0,pdata
+	set0 1,pdata
+	set1 3,pdata
+	set0 4,pdata
+	hstore 1,core_gpio_sel1
+	setarg 0
+	store 4,mem_spid_tbuf
+	hfetch 1,core_gpio_pd3	//gpio24 can not be set pulldown
+	set0 0,pdata
+	hstore 1,core_gpio_pd3
+	rtn
+
+p_mouse_load_flash_info_check:
+	call p_flash_release_deep_power_down
+	call mouse_load_flash_flag
+	fetch 2,mem_store_flag
+	arg EEPROM_INIT_FLAG,temp
+	isub temp,null
+	branch p_mouse_load_flash_device_info,zero
+	storet 2,mem_store_flag
+	call mouse_ble_init_address
+	fetch 1,mem_config_sensor_motion
+	store 1,mem_mouse_dpi
+	fetch 4,mem_mouse_24g_addr_init
+	store 4,mem_mouse_24g_addr
+	store 4,mem_24g_addr
+ifdef BLE_FAST_CONN_ENABLE	
+	call p_mouse_fast_conn_init
+endif	
+
+p_mouse_set_24g_addr_flash:
+	arg 4,temp
+	arg mem_24g_addr,rega
+	arg MOUSE_G24_ADDR_EEPROM_OFFECT,regb
+	rtn
+	
+p_flash_erase_sector:
+	fetch 3,mem_flash_base
+	store 3,mem_spi_write_addr
+	call flash_erase_sector+2
+p_wait_flash_done:
+	setarg 100000	
+	call sleep
+	call spid_unlock_flash
+	setarg mem_spid_rbuf
+	hstore 2,core_spid_rxaddr
+	setarg FLASH_READ_SATUS
+	call spid_read_reg
+	bbit1 FLASH_STATUS_WIP,p_wait_flash_done
+	rtn
+
+p_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
+
+p_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
+
+p_mouse_read_flash:
+	call p_flash_release_deep_power_down
+	call p_mouse_information_flash_parameters
+	branch spid_read_flash
+
+p_mouse_load_flash_device_info:	
+	call p_mouse_read_flash
+	call p_mouse_load_random_addr_increase_count
+	call mouse_select_reconn_device
+	fetch 4,mem_mouse_24g_addr
+	store 4,mem_24g_addr
+ifdef BLE_FAST_CONN_ENABLE
+	fetch 6,mem_device1_addr
+	fetcht 6,mem_mouse_fast_conn_addr
+	isub temp,null
+	nbranch p_mouse_le_fast_conn_disable,zero
+	call p_mouse_fast_conn_init
+endif
+	rtn
+
+p_flash_deep_power_down:
+	jam FLASH_COMMAND_DEEP_POWER_DOWN,mem_temp
+p_spid_write_flash_cmd:
+	call p_spid_init_flash
+	call delay_nop100
+	call spid_unlock_flash
+	arg mem_write_flash_head_temp,rega
+	fetcht 1,mem_temp
+	call spid_write_flash_common
+	branch delay_nop100
+
+p_flash_release_deep_power_down:
+	jam FLASH_COMMAND_RELEASE_DEEP_POWER_DOWN,mem_temp
+	branch p_spid_write_flash_cmd
+	
+//p_g24_factory_check:
+//	arg 2,loopcnt
+//	arg mem_24g_addr,contr
+//p_pdata_0xff_check:
+//	call enable_user
+//	setarg 0xffff
+//p_pdata_0xff_check_loop:
+//	ifetcht 2,contr
+//	isub temp,null
+//	ncall disable_user,zero
+//	loop p_pdata_0xff_check_loop
+//	rtn
+
+ifdef G24
+p_mouse_g24_package_data:
+	call mouse_g24_package_data
+	fetch 2,mem_mouse_z
+	rtn blank
+p_g24_transmit_by_interrupt_enable:
+	jam G24_TX_TIMER_INT_ENABLE,mem_24g_transmit_by_interrupt
+	setarg 0
+	store 2,mem_24g_transmit_by_interrupt_exit_count
+	rtn
+endif	
+	
+ifdef BLE
+p_mouse_le_txbuff_save:
+	arg mem_le_tx_buffer0,contr
+	arg mem_le_tx_buffer0_omemalloc,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer1,contr
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer2,contr
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer3,contr
+p_mouse_le_txbuff_copy:	
+	arg 27,loopcnt
+	branch memcpy
+
+p_mouse_le_txbuff_load:
+	arg mem_le_tx_buffer0_omemalloc,contr
+	arg mem_le_tx_buffer0,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer1,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer2,contw
+	call p_mouse_le_txbuff_copy
+	arg mem_le_tx_buffer3,contw
+	branch p_mouse_le_txbuff_copy
+
+p_mouse_le:
+	call le_fifo_check_nearly_full
+	nrtn blank
+ifdef BLE_FAST_CONN_ENABLE
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,p_mouse_le_next
+endif
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+p_mouse_le_next:
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	call p_mouse_clear_sensor_data,blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_le_send_empty_packet
+	call mouse_motion
+	nrtn user
+	call p_mouse_le_current_mult_update
+	call p_mouse_data_xy_release
+	call p_mouse_wheel_trigger
+	fetch 1,mem_customer_key
+	beq 1,p_mouse_le_send_customer_packet
+p_mouse_data_push:
+	arg mem_mouse_key,rega
+	call queue_push
+	call p_mouse_queue_increase,user
+	
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	setarg MISC_LOST_MOUSEDATA
+	store 2,mem_debuglog_dataval
+	nbranch debuglog_push,user
+
+	setarg MISC_PUSH_MOUSEDATA
+	store 2,mem_debuglog_dataval
+	call debuglog_push
+endif
+endif
+	rtn
+
+p_mouse_le_current_mult_update:
+	jam 0,mem_lpm_mult
+	jam 30,mem_mouse_le_current_mult_timer
+	rtn	
+
+p_mouse_data_xy_release:
+	fetch 1,mem_mouse_long_mult_flag
+	rtnne 1
+	setarg 0
+	store 1,mem_mouse_long_mult_flag
+	store 4,mem_mouse_x
+	branch p_mouse_init_sensor_reset
+	
+p_mouse_sensor_poweron:
+	arg mem_sensor_poweron_init,regc
+	call p_sensor_wr_seq
+	branch p_mouse_dpi_config
+
+p_mouse_le_send_customer_packet:
+	fetch 1,mem_customer_data_trigger
+	branch p_mouse_le_release_customer_data,blank
+	fetch 8,mem_customer_key_press+1
+p_mouse_fill_customer_data_le:
+	store 8,mem_pdatatemp
+	arg 8,rega //len
+	arg 0x15,temp
+	call le_att_malloc_tx_notify
+	fetch 8,mem_pdatatemp
+	istore 8,contw
+	rtn
+
+p_mouse_le_release_customer_data:
+	fetch 8,mem_customer_key_release+1
+	branch p_mouse_fill_customer_data_le	
+
+	
+
+p_mouse_data_init:
+	jam 7,mem_mouse_data_queue	//data length
+	jam 4,mem_mouse_data_queue+1	//fifo depth
+	setarg mem_mouse_data_queue
+	store 2,mem_queue_ptr
+	branch queue_init
+
+p_mouse_queue_increase:
+	fetch 1,mem_mouse_data_queue_num
+	increase 1,pdata
+	store 1, mem_mouse_data_queue_num
+	rtn
+	
+p_mouse_data_pull:
+	arg mem_mouse_key,rega
+	call queue_pop
+	branch p_mouse_fill_data_le,user
+	rtn
+
+p_mouse_fill_data_le:
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	setarg MISC_PULL_MOUSEDATA
+	store 2,mem_debuglog_dataval
+	call debuglog_push
+
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_mouse_x
+	store 1,mem_debuglog_dataval
+	fetch 1,mem_mouse_y
+	store 1,mem_debuglog_dataval+1
+	call debuglog_push	
+endif
+endif
+	call le_clear_md
+	fetch 1,mem_mouse_data_queue_num
+	sub pdata,1,null
+	ncall le_set_md,positive
+	fetch 1,mem_mouse_data_queue_num
+	rtn blank
+	increase -1,pdata
+	store 1, mem_mouse_data_queue_num
+	branch mouse_fill_data_le
+	
+endif
+
+p_mouse_wheel_trigger:
+	fetch 2,mem_mouse_z
+	rtn blank
+	jam 1,mem_mouse_wheel_trigger
+	jam 2,mem_mouse_wheel_trigger_timer
+	rtn
+
+p_mouse_clear_sensor_data:
+	jam 1,mem_mouse_clear_sensor_data_flag
+	call le_set_config_more_data
+p_mouse_init_sensor_reset:
+	jam 1,mem_mouse_init_sensor_reset_flag
+	branch p_mouse_init_sunt
+
+ifdef BLE	
+p_le_addr_random_config:
+	call load_adc_init
+//	fetch 2,mem_0_5_adc_io_data	//adc data from otp
+//	nbranch z_le_otp_adc_empty,blank
+	setarg 0x1122
+p_le_otp_adc_empty:
+	store 2,mem_random_addr_increase_count
+	rtn
+endif
+	
+ifdef CLASSIC_BT
+p_mouse_bt:
+	rtn attempt
+	fetch 1,mem_app_handshake_flag
+	rtn blank
+	call l2cap_malloc_is_fifo_nearly_full
+	nrtn blank
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	call p_mouse_clear_sensor_data,blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_send_empty_data
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,mouse_send_empty_data
+	call mouse_motion
+	nrtn user
+	call p_mouse_le_current_mult_update
+	call p_mouse_data_xy_release
+	call p_mouse_wheel_trigger
+	fetch 1,mem_mouse_bt_boot_mode
+	beq 1,p_mouse_send_data_boot_mode	//boot
+	fetch 1,mem_mouse_bt_send_first_package_flag
+	rtn blank
+	fetch 1,mem_customer_key
+	beq 1,p_mouse_bt_send_customer_packet
+	branch mouse_send_data	//report
+
+p_mouse_send_data_boot_mode:
+	fetch 1,mem_mouse_key
+	store 1,mem_mouse_bt_boot_data
+	fetch 1,mem_mouse_x
+	istore 1,contw
+	fetch 1,mem_mouse_y
+	istore 1,contw
+	fetch 2,mem_mouse_z
+	istore 2,contw
+
+	arg 7,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0x02a1
+	istore 2,contw
+	fetch 5,mem_mouse_bt_boot_data
+	istore 5,contw
+	rtn
+	
+p_mouse_bt_send_customer_packet:
+	fetch 1,mem_customer_data_trigger
+	branch p_mouse_bt_release_customer_data,blank
+	fetch 8,mem_customer_key_press+1
+p_mouse_bt_send_customer_data:
+	store 8,mem_pdatatemp
+	arg 10,rega
+	call hid_malloc_tx_buff
+	fetch 2,mem_hid_int_remote_cid
+	istore 2,contw
+	setarg 0x01a1
+	istore 2,contw
+	fetch 8,mem_pdatatemp
+	istore 8,contw
+	rtn
+	
+p_mouse_bt_release_customer_data:
+	fetch 8,mem_customer_key_release+1
+	branch p_mouse_bt_send_customer_data	
+	
+endif
+
+p_mouse_idle:
+	call ui_check_paring_button
+	call p_mouse_dpi_check
+	branch mouse_wheel_check
+
+p_mouse_dpi_check:
+	jam 0x05,mem_mouse_key_temp
+	fetcht 1,mem_dpi_button_gpio
+	fetch 1,mem_mouse_dpikey_press_status
+	call p_mouse_check_key
+	store 1,mem_mouse_dpikey_press_status
+	fetcht 1,mem_dpi_button_gpio
+	call p_gpio_set_input_pu
+	copy rega,pdata
+	bbit1 5,p_mouse_dpi_down
+	branch mouse_dpi_up
+
+
+p_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 1,mem_mouse_dpi
+	increase 1,pdata
+	and pdata,0x03,pdata
+	store 1,mem_mouse_dpi
+	call mouse_seting_dpi
+//	branch p_mouse_store_flash_device_info	
+p_mouse_store_flash_device_info:
+	call p_flash_release_deep_power_down
+	call p_flash_erase_sector
+	call p_mouse_information_flash_parameters
+	call p_spid_write_flash
+	call p_wait_flash_done
+p_mouse_store_random_addr_increase_count:
+	call p_spid_init_flash
+	arg 2,temp
+	arg mem_random_addr_increase_count,rega
+	arg MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET,regb
+	fetch 3,mem_flash_base
+	iadd regb,pdata
+	call p_spid_write_flash
+	call p_wait_flash_done
+	call p_flash_deep_power_down
+p_mouse_spi_init:
+	jam 0x76,mem_spi_init_clk
+	branch mouse_spi_init
+endif	
+
+p_mouse_priority_bb_event:
+	copy regc,pdata
+ifdef BLE	
+	beq BT_EVT_LE_CONNECTED,p_mouse_le_bb_event_connected
+	beq BT_EVT_LE_DISCONNECTED,p_mouse_le_bb_disconnected
+	beq BT_EVT_LE_ENC_INFO,p_mouse_le_enc_info
+	beq BT_EVT_LE_START_ENC,p_mouse_le_ll_start_encryt
+	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,p_mouse_le_conn_param_update_rsp_recieved
+endif
+ifdef CLASSIC_BT
+	beq BT_EVT_RECONN_FAILED,p_mouse_bb_event_reconn_failed
+	beq BT_EVT_RECONN_PAGE_TIMEOUT,p_mouse_bb_event_reconn_timeout
+	beq BT_EVT_SWITCH_NOT_ACCEPT,app_bt_role_switch
+	beq BT_EVT_SNIFF_NOT_ACCEPT,p_mouse_sniff_not_accept
+	beq BT_EVT_BB_CONNECTED,p_mouse_bb_event_connected
+	beq BT_EVT_BB_DISCONNECTED,p_mouse_bb_event_disconnected
+	beq BT_EVT_SWITCH_SUCCESS_MASTER,p_mouse_enter_sniff_check
+endif
+ifdef G24
+	beq BT_EVT_24G_PAIRING_COMPLETE,p_mouse_24g_pairing_complete
+	beq BT_EVT_24G_ATTEMPT_FAIL,p_mouse_24g_attempt_fail
+	beq BT_EVT_24G_ATTEMPT_SUCCESS,p_mouse_24g_attempt_success
+endif
+	branch mouse_priority_bb_event+1
+
+ifdef BLE
+p_mouse_le_bb_event_connected:
+	call p_mouse_init_sensor_reset
+	call app_ble_store_reconn_info
+	jam 1,mem_mouse_le_bb_connected_flag
+	fetch 1,mem_mouse_le_reconnect_flag
+	nbranch p_mouse_le_bb_event_connected_next,blank
+	jam 0x14,mem_mouse_send_secutiry_request_timer
+p_mouse_le_bb_event_connected_next:
+	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_data_init
+	branch mouse_le_bb_event_connected
+
+p_mouse_le_bb_disconnected:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	jam ZCODE_A2,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_le_enc_info:
+p_app_updata_le_param:
+	jam BT_CMD_LE_UPDATE_CONN,mem_fifo_temp
+	branch ui_ipc_send_cmd
+
+p_mouse_le_ll_start_encryt:
+	jam ZCODE_B3,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_le_conn_param_update_rsp_recieved:
+	jam ZCODE_A1,mem_zcode_temp_param0
+	branch p_zcode_entrance
+endif
+
+
+ifdef CLASSIC_BT
+p_mouse_bb_event_reconn_timeout:
+p_mouse_bb_event_reconn_failed:
+	jam ZCODE_A3,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_irtual_cable_unplug:
+	jam ZCODE_B5,mem_zcode_temp_param0
+	branch p_zcode_entrance
+	
+p_mouse_sniff_not_accept:
+	jam ZCODE_B1,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_bb_event_connected:
+	call p_mouse_init_sensor_reset
+	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_discovey_led_blink_off
+	jam 0,mem_mouse_send_switch_req_timer
+	branch mouse_stop_discovery
+
+p_mouse_bb_event_disconnected:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	jam ZCODE_B4,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_enter_sniff_check:
+	jam ZCODE_B2,mem_zcode_temp_param0
+	branch p_zcode_entrance
+endif
+
+ifdef G24
+p_mouse_24g_pairing_complete:
+	call p_mouse_init_sensor_reset
+	jam ZCODE_92,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_fail:
+	jam ZCODE_61,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_success:
+//	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_init_sensor_reset
+	branch mouse_no_data_timer_init
+endif
+
+p_mouse_before_hibernate:
+	call p_mouse_sensor_powerdown_check
+	jam ZCODE_A4,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_sensor_powerdown_check:
+	fetch 1,mem_mouse_init_sensor_reset_flag
+	rtn blank
+	jam 0,mem_mouse_init_sensor_reset_flag
+p_mouse_sensor_powerdown:
+	call p_mouse_init_sunt
+	setarg 0x06
+	call twspi_read
+	or pdata,0x08,pdata
+	lshift8 pdata,pdata
+	add pdata,0x06,pdata
+	branch twspi_write	//make sdio high
+
+p_mouse_bb_event_timer:
+ifdef ADC_ENABLE
+	call p_mouse_adc_read
+//	call p_mouse_low_voltage_led_timer
+endif
+	call p_mouse_multi_led_blink_timer
+	call p_mouse_wheel_trigger_timer
+	call p_mouse_null_enter_hibernate_timer	
+	call p_mouse_bt_discovery_check
+	call mouse_check_discovery_timeout_timer
+	call p_mouse_select_device	
+ifdef G24
+	call p_mouse_g24_long_sleep_param_update_timer
+	//call p_mouse_g24_stop_pair_mode_timeout_timer
+endif	
+ifdef BLE	
+	call p_mouse_check_direct_timeout_timer
+	call p_mouse_le_enable_att_list_timer
+	call p_mouse_le_current_mult_update_timer
+	call p_le_send_smp_security_request_timer
+endif
+ifdef CLASSIC_BT
+	call p_mouse_send_switch_req_timer
+	call mouse_check_hid_handshake_timer
+	call p_mouse_bt_check_sniff_req_timeout_timer
+endif
+	branch mouse_check_no_data_timeout_timer
+
+p_mouse_select_device:
+p_mouse_select_device_by_button:
+	call p_mouse_pb_button_check
+	branch p_mouse_select_device_button_down,true
+p_mouse_select_device_button_up:
+	fetch 1,mem_mouse_select_device_button_wakeup_flag	
+	nbranch p_mouse_select_button_wakeup_firstUp,blank
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_UP
+
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue
+	jam ON,mem_mouse_multi_led_blink_enable
+	
+	fetch 1,mem_mouse_long_button_select_device
+	branch p_mouse_long_button_state_clear,blank
+p_mouse_ready_reconnection_by_button:
+	call p_mouse_switch_device_flag
+	jam 0,mem_link_key_exists
+	call p_mouse_store_flash_device_info
+	branch mouse_ready_reconnection_by_button_next
+
+p_mouse_pb_button_check:
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_config_input
+	fetcht 1,mem_config_select_device_button_gpio
+	branch gpio_get_bit
+
+p_mouse_switch_device_flag:
+	fetcht 1,mem_device_flag
+	increase 1,temp
+	fetch 1,mem_device_number
+	isub temp,null
+	ncall mouse_select_device_count_clean,positive
+	storet 1,mem_device_flag
+	rtn	
+
+p_mouse_long_button_state_clear:
+	jam 0xff,mem_mouse_long_button_select_device
+	rtn
+
+p_mouse_select_button_wakeup_firstUp:
+	jam 0,mem_mouse_select_device_button_wakeup_flag	//when waked from hibernate by PB key ,first key up does not change mode 
+	jam DPI_BUTTON_STATE_UP,mem_select_device_button_statue
+	jam ON,mem_mouse_multi_led_blink_enable
+	rtn	
+
+p_mouse_select_device_button_down:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_ADV,p_mouse_select_device_button_down_next
+	jam OFF,mem_mouse_multi_led_blink_enable
+p_mouse_select_device_button_down_next:
+	fetch 1,mem_select_device_button_statue
+	rtneq DPI_BUTTON_STATE_DOWN
+	jam DPI_BUTTON_STATE_DOWN,mem_select_device_button_statue
+
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	rtnbit1 APP_DISC_PB_BUTTON
+
+	fetch 1,mem_device_flag
+	rtnne MODE_BT_DEVICE1
+p_mouse_pb_button_2ble_disconnect:
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	set1 APP_DISC_PB_BUTTON,pdata
+	store APP_DISC_RSN_SIZE,mem_app_disconn_reason_flag
+	branch mouse_disconnect
+
+	
+ifdef CLASSIC_BT
+p_mouse_send_switch_req_timer:
+	arg mem_mouse_send_switch_req_timer,regc
+	arg host_create_conn_resend,regb
+	branch timer_single_step
+
+p_mouse_bt_check_sniff_req_timeout_timer:
+	arg mem_mouse_bt_send_first_package_timer,regc
+	arg p_mouse_bt_send_first_package,regb
+	branch timer_single_step
+p_mouse_bt_send_first_package:
+	jam 1,mem_mouse_bt_send_first_package_flag
+	rtn
+endif
+
+
+ifdef BLE
+p_mouse_le_enable_att_list_timer:
+	arg mem_le_start_encrypt_timer,regc
+	arg mouse_le_write_enable,regb
+	branch timer_single_step
+
+
+p_mouse_check_direct_timeout_timer:
+	arg mem_mouse_direct_timer,regc
+	arg p_mouse_check_direct_timeout,regb
+	branch timer_single_step_2B
+
+p_mouse_check_direct_timeout:
+ifdef BLE_FAST_CONN_ENABLE	
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,p_mouse_long_button_bt_discovery
+endif	
+	fetch 1,mem_mouse_multi_led_on_poweron2s_flag
+	nrtn blank
+	branch mouse_check_direct_timeout
+
+p_mouse_le_current_mult_update_timer:
+	arg mem_mouse_le_current_mult_timer,regc
+	arg p_mouse_le_current_mult_reinit,regb
+	branch timer_single_step
+p_mouse_le_current_mult_reinit:
+	fetch 1,mem_lpm_mult_init
+	store 1,mem_lpm_mult
+	branch p_mouse_long_mult_flag_enable
+
+p_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 p_le_pairing_sm_start_check,regb
+	branch timer_single_step
+p_le_pairing_sm_start_check:
+	fetch 1,mem_le_send_security_request_flag
+	nrtn blank
+	branch le_pairing_sm_start
+
+endif
+
+
+ifdef G24
+p_mouse_g24_long_sleep_param_update_timer:
+	arg mem_24g_long_sleep_param_update_timer,regc
+	arg p_mouse_g24_long_sleep_normal_param,regb
+	branch timer_single_step
+p_mouse_g24_long_sleep_normal_param:
+	setarg G24_LONG_SLEEP_STEP3
+	store 3,mem_24g_enter_hibernate
+p_mouse_long_mult_flag_enable:	
+	jam 1,mem_mouse_long_mult_flag
+	rtn	
+
+
+endif
+
+p_mouse_wheel_trigger_timer:
+	arg mem_mouse_wheel_trigger_timer,regc
+	arg p_mouse_wheel_trigger_disable,regb
+	branch timer_single_step
+p_mouse_wheel_trigger_disable:
+	jam 0,mem_mouse_wheel_trigger
+	rtn
+
+p_mouse_bt_discovery_check:
+p_mouse_bt_discovery_commbination_key:
+	call p_mouse_pb_button_check
+	branch p_mouse_bt_discovery_commbination_key_down,true
+//	call p_gpio_set_input_pu
+	call p_mouse_check_key_gpio
+	beq MOUSE_LMR_BUTTON,p_mouse_bt_discovery_commbination_key_down
+p_mouse_bt_discovery_commbination_key_up:
+	call mouse_bt_discovery_commbination_key_up
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	branch mouse_disable_function_flag
+	
+p_mouse_bt_discovery_commbination_key_down:
+	call p_gpio_set_input_pu
+	jam 40,mem_mouse_null_enter_hibernate_timer
+	call p_mouse_bt_discovery_timer
+	branch mouse_bt_discovery_commbination_key_down+1
+
+p_mouse_bt_discovery_timer:
+	arg mem_combination_ui_button_count,regc
+	arg p_mouse_long_button_bt_discovery,regb
+	branch timer_single_step
+p_mouse_long_button_bt_discovery:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
+	jam 0,mem_mouse_long_button_select_device
+	fetch 2,mem_ui_state_map
+	isolate1 UI_STATE_BLE_ADV,pdata
+	call mouse_stop_le_adv,true		//reconnect adv
+	fetch 2,mem_ui_state_map
+	isolate1 UI_STATE_BT_RECONNECT,pdata
+	call mouse_cancel_reconnect,true
+	arg MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,queue
+	call mouse_enable_function_flag
+	branch mouse_long_button_bt_discovry
+
+p_mouse_null_enter_hibernate_timer:
+	fetch 1,mem_mouse_multi_led_on_poweron2s_flag
+	nrtn blank
+	fetch 1,mem_mouse_null_enter_hibernate_flag
+	rtn blank
+	arg mem_mouse_null_enter_hibernate_timer,regc
+	arg p_mouse_null_enter_hibernate,regb
+	branch timer_single_step
+
+p_mouse_null_enter_hibernate:
+	jam 0,mem_mouse_null_enter_hibernate_flag
+p_app_enter_hibernate:
+	call p_mouse_sensor_powerdown
+	branch app_enter_hibernate
+	
+p_mouse_null_enter_hibernate_disable:	//ble never connected
+	jam 0,mem_mouse_null_enter_hibernate_flag
+	jam 0,mem_mouse_null_enter_hibernate_timer	//lmr 3s
+	rtn	
+
+p_mouse_multi_led_blink_timer:
+	fetch 1,mem_mouse_multi_led_blink_enable
+	rtn blank
+	fetch 1,mem_mouse_multi_led_type
+	beq MULTI_LED_ON,p_mouse_multi_led_type_on
+	beq MULTI_LED_BLINK,p_mouse_multi_led_type_blink
+	rtn
+
+p_mouse_multi_led_type_on:
+	call p_mouse_multi_led_on
+	fetch 1,mem_mouse_multi_led_on_timer
+	increase 1,pdata
+	store 1,mem_mouse_multi_led_on_timer
+	fetcht 1,mem_mouse_multi_led_on_timer_init
+	isub temp,null
+	call p_mouse_multi_led_off_poweron2s,zero
+	rtn
+p_mouse_multi_led_off_poweron2s:
+	jam 0,mem_mouse_multi_led_on_poweron2s_flag
+	branch p_mouse_multi_led_off
+	
+p_mouse_multi_led_type_blink:
+	arg mem_mouse_multi_led_blink_timer,regc
+	arg p_mouse_multi_led_type_blink_timeout,regb
+	branch timer_single_step
+p_mouse_multi_led_type_blink_timeout:
+	fetch 1,mem_mouse_multi_led_blink_timer_init
+	store 1,mem_mouse_multi_led_blink_timer
+//	fetch 1,mem_mouse_multi_led_blink_count_limited
+//	branch p_mouse_multi_led_blink_count_no_limited,blank
+//	fetch 1,mem_mouse_multi_led_blink_count
+//	branch p_mouse_multi_led_blink_off,blank
+//	increase -1,pdata
+//	store 1,mem_mouse_multi_led_blink_count
+p_mouse_multi_led_blink_count_no_limited:
+	fetch 1,mem_mouse_multi_led_state
+	beq ON,p_mouse_multi_led_off
+	beq OFF,p_mouse_multi_led_on
+	rtn
+
+p_mouse_multi_led_on:
+	jam ON,mem_mouse_multi_led_state
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_mouse_multi_down_led_on
+p_mouse_multi_up_led_on:
+	fetcht 1,mem_mouse_multi_led_gpio 
+	call gpio_config_output 
+	fetcht 1,mem_mouse_multi_led_gpio
+	branch gpio_out_active
+p_mouse_multi_down_led_on:
+	fetcht 1,mem_mouse_multi_led_gpio
+	call gpio_config_output 
+	fetcht 1,mem_mouse_multi_led_gpio 
+	branch gpio_out_inactive
+
+
+p_mouse_discovey_led_blink_off:
+	fetch 1,mem_mouse_multi_led_on_timer
+	nrtn blank
+	fetch 1,mem_mouse_multi_led_on_poweron2s_flag
+	nrtn blank
+p_mouse_multi_led_blink_off:
+	setarg 0
+	store 3,mem_mouse_multi_led_blink_timer
+p_mouse_multi_led_off:
+	fetch 1,mem_mouse_multi_led_blink_count
+	nbranch p_mouse_multi_led_off_wait_blink_over,blank
+	jam 0,mem_mouse_multi_led_blink_enable
+	jam 0,mem_mouse_multi_led_type
+p_mouse_multi_led_off_wait_blink_over:
+	jam 0,mem_mouse_multi_led_on_timer
+	jam OFF,mem_mouse_multi_led_state
+	branch p_mouse_multi_led_gpio_set_float
+	
+p_mouse_mode_bt_device1_multi_led_on:
+p_mouse_mode_24g_device_multi_led_on:
+	jam 1,mem_mouse_multi_led_on_poweron2s_flag
+	jam ON,mem_mouse_multi_led_blink_enable
+	jam MULTI_LED_ON,mem_mouse_multi_led_type
+	jam 0,mem_mouse_multi_led_on_timer
+	rtn
+
+p_mouse_discovery_multi_led_blink:
+	jam 0,mem_mouse_multi_led_on_poweron2s_flag
+	jam 2,mem_mouse_multi_led_blink_timer_init	//200ms
+//	jam 0,mem_mouse_multi_led_blink_count_limited
+	jam 1,mem_mouse_multi_led_blink_count//0 will clear mem_mouse_multi_led_blink_enable/mem_mouse_multi_led_type
+p_mouse_multi_led_blink_enable:
+	jam 2,mem_mouse_multi_led_blink_timer
+	jam ON,mem_mouse_multi_led_blink_enable
+	jam MULTI_LED_BLINK,mem_mouse_multi_led_type
+	rtn
+	
+	
+ifdef ADC_ENABLE
+p_mouse_adc_read:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_ENABLE_ADC
+	fetch 2,mem_mouse_multi_led_blink_count
+	nrtn blank
+	arg mem_adc_read_timer,regc
+	arg p_mouse_adc_read_timeout,regb
+	branch timer_single_step
+p_mouse_adc_read_timeout:
+	jam 10,mem_adc_read_timer
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	add pdata,0x1c,pdata
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+p_adc_bat_percent_lowpower_out:
+	ifetch 8,rega
+	store 8,mem_pdatatemp
+	fetcht 2,mem_pdatatemp+2	//shutdown voltage 0.9v
+	fetch 2,mem_pdatatemp+6		//now voltage
+	isub temp,null
+	nbranch p_app_enter_hibernate,positive
+	rtn
+//	fetcht 2,mem_pdatatemp+4	//low voltage 1.0v
+//	isub temp,null
+//	nbranch adc_set_low_power_flag,positive
+//p_adc_clear_low_power_flag:
+//	fetch 1,mem_adc_power_flag
+//	set0 0,pdata
+//	store 1,mem_adc_power_flag
+//	rtn
+
+//p_mouse_low_voltage_led_timer:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_LOW_VOLTAGE_FLAG
+//	fetch 2,mem_ui_state_map
+//	rtnbit1 UI_STATE_BLE_ADV
+//	rtnbit1 UI_STATE_BT_DISCOVERY
+//	fetch 2,mem_mouse_multi_led_blink_count
+//	nrtn blank
+
+//	fetch 1,mem_adc_low_volatage_led_timer_count
+//	pincrease 1
+//	store 1,mem_adc_low_volatage_led_timer_count
+//	beq 5,p_mouse_multi_led_on
+//	sub pdata,10,null
+//	nbranch p_mouse_adc_low_volatage_led_timer_count_clean,positive
+//	rtn
+//p_mouse_adc_low_volatage_led_timer_count_clean:
+//	jam 1,mem_adc_low_volatage_led_timer_count
+//	branch p_mouse_multi_led_off
+
+//p_low_power_no_data_off_led_time:
+//	fetch 1,mem_low_power_check_count
+//	increase 1,pdata
+//	store 1,mem_low_power_check_count
+//	sub pdata,LOW_VOLTAGE_LED_COUNT,null
+//	rtn positive
+//p_low_power_no_data_off_led_time_nolimited:
+//	jam 0,mem_low_power_led_blink_flag
+//	jam 0x96,mem_low_power_no_data_off_led_time
+//	rtn
+//p_low_power_nodata_off_led_time_check:
+//	arg mem_low_power_no_data_off_led_time,regc
+//	arg p_mouse_check_low_power_nodata_timeout,regb
+//	branch timer_single_step
+//p_mouse_check_low_power_nodata_timeout:
+//	setarg G24_LONG_SLEEP_STEP3
+//	store 3,mem_24g_enter_hibernate
+//	jam 1,mem_low_power_led_blink_flag
+//	branch p_mouse_adc_low_volatage_led_off
+endif
+
+p_mouse_seting_dpi:
+p_mouse_seting_sensor_type:
+	fetch 1,mem_config_sensor_type
+//	beq P3212,p_mouse_seting_3212_dpi
+	beq P3065_XY,p_mouse_seting_3065XY_dpi
+//	beq MX8650,p_mouse_seting_3065XY_dpi
+	beq KA8,p_mouse_seting_3065XY_dpi
+//	beq P8009,p_mouse_seting_3205_dpi
+p_mouse_seting_3205_dpi:
+	fetch 1,mem_mouse_dpi
+	sub pdata,MOUSE_DPI_LEVEL2,null
+	call p_mouse_3205_dpi_recount,zero
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,p_mouse_3205_set_cpi1
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi3	//1600
+	branch mouse_set_cpi2					//1200
+p_mouse_3205_dpi_recount:
+	jam MOUSE_DPI_LEVEL3,mem_mouse_dpi
+	rtn
+p_mouse_3205_set_cpi1:		//800
+	fetch 1,mem_320x_dpi_1
+	branch p_mouse_dpi_store
+
+p_mouse_seting_3065XY_dpi:
+	fetch 1,mem_mouse_dpi
+	sub pdata,MOUSE_DPI_LEVEL2,null
+	call p_mouse_3205_dpi_recount,zero
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,p_mouse_3065xy_set_cpi1
+	beq MOUSE_DPI_LEVEL4,p_mouse_3065xy_set_cpi4
+p_mouse_3065xy_set_cpi3:
+	fetch 1,mem_320x_dpi_3
+	increase -1,pdata
+p_mouse_dpi_store:
+	store 1,mem_mouse_cpi_count
+	branch mouse_p3205_dpi+3
+p_mouse_3065xy_set_cpi1:
+	fetch 1,mem_320x_dpi_1
+	increase -1,pdata
+	branch p_mouse_dpi_store
+p_mouse_3065xy_set_cpi4:
+	fetch 1,mem_320x_dpi_4
+	increase -1,pdata
+	branch p_mouse_dpi_store
+
+//p_mouse_seting_3212_dpi:
+//	fetch 1,mem_mouse_dpi
+//	sub pdata,MOUSE_DPI_LEVEL2,null
+//	call p_mouse_3205_dpi_recount,zero
+//	fetch 1,mem_mouse_dpi
+//	beq MOUSE_DPI_LEVEL1,mouse_set_p3212_cpi1
+//	beq MOUSE_DPI_LEVEL4,mouse_set_p3212_cpi4
+//	branch mouse_set_p3212_cpi3
+
+//p_mouse_seting_ka8_dpi:
+//	fetch 1,mem_mouse_dpi
+//	call p_mouse_3205_dpi_recount,blank
+//	fetch 1,mem_mouse_dpi
+//	beq MOUSE_DPI_LEVEL2,mouse_set_cpi2			//800
+//	beq MOUSE_DPI_LEVEL4,p_mouse_ka8_set_cpi3		//1600
+//	branch mouse_set_cpi4							//1200
+//p_mouse_ka8_set_cpi3:	
+//	setarg 5
+//	branch mouse_p3205_dpi
+
+
+p_mouse_motion:
+	disable user
+	setarg 0
+	store 6,mem_mouse_x
+	call p_mouse_cheak_sensor_data
+	call mouse_zwheel
+//	call mouse_t_zwheel
+	call p_mouse_key
+ifdef MOUSE_SMOOTHER
+	nbranch p_mouse_motion_nodata,user
+	call p_drawing_optima
+else
+	nbranch p_mouse_motion_nodata,user
+endif
+	branch mouse_motion+9
+
+p_mouse_motion_nodata:	
+ifdef MOUSE_SMOOTHER
+	call p_drawing_optima_init
+endif	
+	jam 0,mem_low_power_check_count
+	rtn
+
+p_mouse_key:
+	call p_mouse_check_key_gpio
+	branch mouse_key+1
+p_mouse_check_key_gpio:
+	fetch 1,mem_mouse_key
+	copy pdata,rega
+	call p_mouse_check_lkey_gpio
+	call p_mouse_check_rkey_gpio
+	call p_mouse_check_mkey_gpio
+//	call p_mouse_check_bkkey_gpio
+	call p_mouse_check_fwkey_gpio
+	copy rega,pdata
+	rtn
+
+
+/* temp is gpio number, pdata  is key status param */
+p_mouse_check_key:
+	store 1,mem_mouse_key_status
+	lshift pdata,pdata
+	copy pdata,regb
+	copy temp,regc
+	fetch 1,mem_mouse_key_temp
+	sub pdata,0x02,null
+	call p_gpio_set_input_pu,positive		// lmr key
+	ncall p_gpio_set_input_pd,positive		// b4 b5 dpi key
+	copy regc,temp
+	call gpio_get_bit
+	setflag true,0,regb		//true = 1,input low level
+	call p_mouse_check_press
+	and regb,0x07,pdata
+	fetcht 1,mem_mouse_key_temp
+	copy temp,queue
+	sub temp,0x02,null
+	beq 0x07,p_mouse_key_press		//  about 17~22ms three times
+	beq 0x00,p_mouse_key_release
+	rtn
+
+p_mouse_check_press:
+	fetcht 1,mem_mouse_key_status
+	and_into 0x01,temp
+	and regb,0x01,pdata
+	isub temp,null
+	nbranch p_mouse_le_current_mult_update,zero
+	rtn
+	
+p_mouse_check_lkey_gpio:
+	jam 0x00,mem_mouse_key_temp
+	fetcht 1,mem_lbutton_gpio
+	fetch 1,mem_mouse_lkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_lkey_press_status
+	rtn
+
+p_mouse_check_rkey_gpio:
+	jam 0x01,mem_mouse_key_temp
+	fetcht 1,mem_rbutton_gpio
+	fetch 1,mem_mouse_rkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_rkey_press_status
+	rtn
+	
+p_mouse_check_mkey_gpio:
+	jam 0x02,mem_mouse_key_temp
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_mouse_mkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_mkey_press_status
+	rtn
+/*
+p_mouse_check_bkkey_gpio:
+	jam 0x03,mem_mouse_key_temp
+	fetcht 1,mem_bk_button_gpio
+	fetch 1,mem_mouse_bkkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_bkkey_press_status
+	fetcht 1,mem_bk_button_gpio
+	branch p_gpio_set_input_pu
+*/
+
+p_mouse_check_fwkey_gpio:
+	jam 0,mem_customer_key
+	jam 0x04,mem_mouse_key_temp
+	fetcht 1,mem_fw_button_gpio
+	fetch 1,mem_mouse_fwkey_press_status
+	call p_mouse_check_key
+//	copy regb,pdata
+	store 1,mem_mouse_fwkey_press_status
+	copy rega,pdata
+	bbit1 4,p_customer_key_press
+	call p_customer_key_release
+
+p_mouse_check_fwkey_gpio_exit:	
+	copy rega,pdata
+	and_into 0xef,rega
+	fetch 1,mem_customer_data_trigger
+	store 1,mem_customer_data_trigger_last
+	fetcht 1,mem_fw_button_gpio
+p_gpio_set_input_pu:
+	set1 gpio_active_bit,temp	
+p_gpio_set_input_pu1:
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	branch p_gpio_set_input_pd4
+
+p_mouse_key_press:
+	branch p_qset1_rega,positive
+p_qset0_rega:	
+	qset0 rega
+	rtn		
+
+p_mouse_key_release:
+	branch p_qset0_rega,positive
+p_qset1_rega:	
+	qset1 rega
+	rtn
+
+
+p_gpio_set_input_pd:
+	set0 gpio_active_bit,temp
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set1 gpio_active_bit,temp
+p_gpio_set_input_pd4:	
+	arg core_gpio_pd0,contw
+	branch gpio_set_high_impedance+4
+	
+p_customer_key_press:
+	jam 1,mem_customer_data_trigger
+	call p_customer_key_need_send
+	branch p_mouse_check_fwkey_gpio_exit
+
+p_customer_key_release:
+	jam 0,mem_customer_data_trigger
+	fetch 1,mem_customer_data_trigger_last
+	rtn blank
+p_customer_key_need_send:	
+	jam 1,mem_customer_key
+	branch enable_user	
+	
+
+p_mouse_select_device_button_gpio_set_suspend:
+	fetcht 1,mem_config_select_device_button_gpio
+p_mouse_set_gpio_suspend:
+	set0 gpio_active_bit,temp
+	branch p_gpio_set_input_pu1
+
+p_mouse_cheak_sensor_data:
+	fetch 1,mem_config_sensor_type
+//	beq P3212,p_mouse_p3212_sensor_motion
+	beq P8009,p_mouse_p8009_sensor_motion
+p_mouse_p32xx_sensor_motion:	
+	call mouse_clear_sensor_data
+	disable user
+	branch mouse_p32xx_sensor_motion_2
+//p_mouse_p3212_sensor_motion:
+//	call mouse_clear_sensor_data
+//	branch mouse_p3212_sensor_motion_1
+	
+p_mouse_p8009_sensor_motion:
+	call mouse_clear_sensor_data
+	disable user
+//	fetcht 1,mem_sensor_data_gpio
+//	call gpio_get_bit
+//	nrtn true 
+p_mouse_p32xx_sensor_motion_1:
+	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
+
+p_mouse_bb_event_discovery_btn:
+	call p_mouse_null_enter_hibernate_disable
+ifdef G24	
+	isolate1 mark_24g,mark
+	call p_g24_check_51cmd_stop_24g,true
+endif
+	branch mouse_bb_event_discovery_btn+1
+
+ifdef BLE
+//p_le_addr_random_config:
+//	jam ZCODE_81,mem_zcode_temp_param0
+//	branch p_zcode_entrance	
+
+p_mouse_start_discovery:
+	jam ZCODE_50,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_load_random_addr_increase_count:
+	call p_flash_release_deep_power_down
+	arg 2,temp
+	arg mem_random_addr_increase_count,rega
+	arg MOUSE_RANDOM_ADDR_COUNT_EEPROM_OFFSET,regb
+	fetch 3,mem_flash_base
+	iadd regb,pdata
+	branch spid_read_flash
+
+p_le_adv_data_update:
+	arg mem_le_adv_data+11,contw
+	arg 19,loopcnt
+	call memcpy
+	branch le_modified_name_adv
+
+p_mouse_stop_discovery:
+//	setarg 0
+//	store 2,mem_mouse_discovery_timer
+//	call p_mouse_sensor_poweron		//clear sensor data,confirm the motion pin high
+//	fetch 1,mem_device_option
+//	isolate1 MODE_4_MOUSE,pdata
+//	call mouse_stop_le_adv,true
+//	fetch 1,mem_device_option
+//	isolate1 MODE_3_MOUSE,pdata
+//	call mouse_stop_bt3_discovery,true
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_led_blink_stop
+//	branch p_mouse_discovey_led_blink_off
+
+	call p_mouse_discovey_led_blink_off
+	jam 1,mem_mouse_init_sensor_reset_flag
+	call p_mouse_init_sensor_reset		//clear sensor data,confirm the motion pin high
+	branch mouse_stop_discovery+1
+
+
+ifdef BLE
+p_le_slave_match:
+	fetch 1,mem_le_md_count
+	pincrease 1
+	store 1,mem_le_md_count
+	beq LE_MD_MAX_COUNT,le_slave_cont
+	call le_acknowledge
+	call le_prepare_tx
+	call power_ctrl_start
+	branch le_slave_match+7
+
+p_le_next_adv_channel:
+	fetch 1,mem_le_ch_mapped
+	increase 1,pdata
+	store 1,mem_le_ch_mapped
+	rtnne 40
+	jam 37,mem_le_ch_mapped
+	rtn
+
+p_le_receive_skip:
+	call save_rssi
+	call p_rssi_signal
+	branch le_receive_skip+2
+
+p_le_update_param:
+	jam ZCODE_40,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_le_update_channel_map:
+	jam ZCODE_41,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_le_prepare_tx:
+	fetch 1,mem_le_arq
+	bbit1 wak,p_le_prepare_tx_wak
+	call power_ctrl_pac_succ_incrs	
+	fetch 1,mem_empty_count
+	nbranch p_le_send_empyt,blank
+	fetch 1,mem_le_state 
+	bbit0 lestate_encryption,p_le_tx_4
+	fetch 1,mem_le_rxbuf+1  
+	branch p_le_tx_4,blank  
+	branch le_send_empty      // send empty data when got non empty packet
+p_le_send_empyt:
+	fetch 1,mem_empty_count
+	increase -1,pdata
+	store 1,mem_empty_count
+	branch le_send_empty
+p_le_tx_4:	
+	fetch 1,mem_le_pairing_state
+	bne FLAG_LE_PAIRING_AFTER_AUTH,p_in_le_tx_4
+	jam 3,mem_empty_count
+p_in_le_tx_4:
+	call le_fifo_check_nearly_full
+	call p_mouse_data_pull,blank
+	branch le_prepare_tx+4
+
+p_le_check_tx_retransmit_setmd:
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+	fetch 1,mem_mouse_data_queue_num
+	rtn blank
+	fetch 1,mem_le_txlen
+	rtn blank
+	fetch 1,mem_le_txheader
+	set1 md,pdata
+	store 1,mem_le_txheader
+	call le_set_md
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	setarg MISC_LE_RETRANSMIT_MD
+	store 2,mem_debuglog_dataval
+	call debuglog_push	
+endif
+endif
+	rtn
+
+p_le_prepare_tx_wak:
+	call p_le_check_tx_retransmit_setmd
+p_le_power_ctrl_pac_succ_decrs:
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	setarg MISC_LE_RETRANSMIT
+	store 2,mem_debuglog_dataval
+	call debuglog_push	
+endif
+endif
+power_ctrl_pac_succ_decrs:
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	sub pdata,2,null
+	ncall power_ctrl_pac_succ_cnt_reinit,positive
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	rtneq 0
+	increase -1,pdata
+	store 1,mem_power_ctrl_pac_succ_cnt
+	rtn
+
+p_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 1,mem_le_start_encrypt_timer
+	rtn
+
+p_le_parse:
+	rtnmark1 mark_old_packet
+	call le_fifo_check_full
+	nrtn blank
+	fetch 1,mem_le_rxbuf
+	and pdata,0x3,pdata
+	store 1,mem_le_packet_llid
+	ifetch 1,contr
+	and pdata,0x1f,pdata
+	store 1,mem_le_packet_size
+	rtn blank							//empty rtn
+	copy contr,pdata
+	store 2,mem_le_payload_ptr
+	fetch 1,mem_le_packet_llid
+	beq LLID_LE_LL,p_le_parse_ll
+	branch le_parse_l2cap
+p_le_parse_ll:
+	fetch 1,mem_le_rxbuf+2
+	beq LL_CONNECTION_UPDATE_REQ,p_le_parse_connection_update_req
+	beq LL_CHANNEL_MAP_REQ,p_le_parse_channel_map_req
+	branch le_parse_ll+1
+p_le_parse_connection_update_req:
+	call le_parse_connection_update_req
+	fetch 1,mem_mouse_le_updata_not_accepted_flag
+	rtn blank
+//ipad not accepted updata, need reinit mem_lpm_mult.   mem_lpm_mult = LL_CONNECTION_UPDATE_REQ latency = 04	
+p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:	
+	fetch 1,mem_le_new_connslavelatency
+	store 1,mem_lpm_mult
+	store 1,mem_lpm_mult_init
+	rtn		
+
+p_le_parse_channel_map_req:
+	ifetch 5,contr
+	store 5,mem_le_new_map
+	ifetch 2,contr
+	store 2,mem_le_instant
+	branch le_parse_channel_map_req+7	
+	
+p_le_parse_l2cap:
+	ifetch 2,contr
+	beq LE_L2CAP_CID_ATT,p_le_parse_att
+	beq LE_L2CAP_CID_SMP,p_le_parse_smp
+	branch le_parse_l2cap+11
+p_le_parse_att:
+	call store_contr
+	call p_mouse_le_reconn_write_enable_timer_reinit
+	call get_contr
+	branch le_parse_att
+	
+	
+p_le_parse_smp:
+	ifetch 1,contr
+	beq SMP_PAIRING_REQUEST,p_le_parse_smp_pairing_request
+	beq SMP_PAIRING_FAILED,p_le_parse_smp_pairing_failed
+	branch le_parse_smp+2
+
+p_le_parse_smp_pairing_request:
+	jam 1,mem_le_send_security_request_flag
+	branch le_parse_smp_pairing_request
+	
+p_le_parse_smp_pairing_failed:
+	jam ZCODE_82,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_le_adv_not_match:
+	fetch 1,mem_le_ch_mapped
+	bne 39,le_adv_loop
+	call p_le_adv_random_delay
+	arg le_adv_interval_timer,queue
+	fetch 2,mem_le_adv_interval
+	branch timer_init
+p_le_adv_random_delay:
+	random pdata
+	arg 0x1ff,temp
+	iand temp,pdata
+	add pdata,250,pdata
+	branch delay
+
+p_le_lpm_setmult:
+	disable wake
+	branch p_le_lpm_set_mult_attempt,attempt
+	nbranch le_lpm_lost,match
+p_le_lpm_set_mult_attempt:
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_le_receive_window
+	fetch 1,mem_le_connect_status_flag
+	compare 3,pdata,3
+	nbranch lpm_mult_short,true
+	branch le_lpm_set_mult_attempt+3
+
+p_le_mouse_bb_event_connect_complete:
+	jam ZCODE_42,mem_zcode_temp_param0
+	branch p_zcode_entrance
+	
+	
+endif
+
+p_twspi_reset:
+	hfetch 1,core_gpio_out3
+	and_into 0xfd,pdata
+	hstore 1,core_gpio_out3
+	hfetcht 1,core_gpio_oe3
+	or_into 0x2,temp
+	hstoret 1,core_gpio_oe3
+	call twspi_disable
+	and_into 0xfd,temp
+	nop 13
+	call p_twspi_enable
+	hstoret 1,core_gpio_oe3
+	rtn
+
+p_spid_init:
+	call spid_init_common
+p_twspi_enable:
+	hfetch 1,core_gpio_sel1
+	set1 0,pdata
+	set0 1,pdata
+	set0 3,pdata
+	hstore 1,core_gpio_sel1  //enable spi
+	rtn
+
+
+ifdef CLASSIC_BT
+
+p_mouse_bt_sdp_set:
+	setarg mem_mouse_uuid_list				//bt sdp start address
+	store 2,mem_ui_uuid_table
+	rtn
+
+p_page_wait_fhs_reply_ok:
+	jam ZCODE_00,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_role_switch_master:
+	call role_switch_check
+	nrtn user
+p_wait_role_switch_anchor:
+	disable user
+	jam param_newconnto,mem_newconnto_counter
+	set0 mark_fhs_already_good,mark
+	set0 mark_role_switch_receive_fhs,mark
+p_roles_waitfhs_loop:
+	call rf_setup_time_master_slot
+	call master_recv_packet
+	bmark1 mark_fhs_already_good,p_roles_replyto_fhs
+	call new_conn_timeout
+	nbranch p_roles_waitfhs_loop,blank
+	bmark1 mark_role_switch_receive_fhs,p_roles_replyto_fhs1
+	branch role_switch_fail_master
+	
+p_roles_replyto_fhs:
+	call rf_setup_time_slave_slot
+	arg type_id,type
+	call master_send_packet
+	set1 mark_role_switch_receive_fhs,mark
+	set0 mark_fhs_already_good,mark
+	fetch 1,mem_amaddr
+	iforce am_addr	//use current LT_ADDR
+	jam 2,mem_newconnto_counter
+	branch p_roles_waitfhs_loop
+
+p_roles_replyto_fhs1:
+	fetch 4,mem_clke_bt		//wait for 2 fhs,need 2.5ms
+	pincrease 8
+	store 4,mem_clke_bt
+	branch roles_replyto_fhs+4
+
+p_process_dmh:
+	bmark1 mark_first_packet,end_of_packet
+	branch process_dmh+1
+
+p_quit_connection_cont:
+	jam ZCODE_43,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_prepare_tx:
+	fetch 1,mem_state
+	isolate1 state_inconn,pdata
+	call p_bt_power_ctrl,true
+	branch prepare_tx+1
+p_bt_power_ctrl:
+	fetch 1,mem_arq
+	isolate1 wack,pdata
+	call power_ctrl_pac_succ_decrs,true
+	ncall power_ctrl_pac_succ_incrs,true
+	branch power_ctrl_start
+
+p_slave_conn_recv_packet:
+	call slave_receive_master_slot
+	nbranch shutdown_radio,sync
+	call save_rssi
+	call p_rssi_signal
+	branch slave_conn_recv_packet+4
+
+p_lpm_dispatch:
+	rtnmark1 mark_24g
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	rtn blank
+	fetch 1,mem_lpm_mode
+	rtn blank
+	fetch 1,mem_ssp_enable
+	branch p_lpm_dispatch_next,blank
+	fetch 1,mem_sp_local_key_invalid	// simple pairing is not ready
+	rtn blank
+p_lpm_dispatch_next:
+	fetch 1,mem_le_sc_calc
+	nrtn blank
+	call lpm_check_wake_lock
+	nrtn blank
+	fetch 1,mem_context
+	compare 3,pdata,0x7							//sco won't sleep 
+	nbranch lpm_dispatch_unconn,true
+	fetch 2,mem_context + coffset_tsniff	//role switch 
+	arg 0xffff,temp
+	isub temp,null
+	rtn zero
+	branch lpm_dispatch_next+9
+
+p_lpm_set_mult:
+	disable wake
+	fetch 1,mem_state
+	rtnbit0 state_insniff
+	nbranch lpm_not_match,match
+	call lpm_match
+	fetch 2,mem_rx_window_sniff
+	store 2,mem_rx_window
+	fetch 1,mem_arq
+	bbit1 wack,lpm_mult_short
+	bmark0 mark_lpm_mult_enable,lpm_mult_short
+	call l2cap_malloc_is_fifo_empty
+	nbranch lpm_mult_short,blank
+	call p_lpm_set_attemp_timeout,blank	//fixed bt3.0 connected high current
+	branch lpm_set_mult+13	
+p_lpm_set_attemp_timeout:
+	jam 1,mem_current_sniff_attempt
+	jam 0,mem_current_sniff_timeout
+	rtn	
+
+p_mouse_bb_disconnected:
+	jam ZCODE_10,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_hid_rx_process:
+	jam ZCODE_11,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_parse_lmp_accepted:
+	fetch 1,mem_rxbuf+1
+	store 1,mem_lmi_accepted_opcode
+	beq LMP_SWITCH_REQ,p_parse_lmp_accepted_switch
+	branch parse_lmp_accepted+3
+p_parse_lmp_accepted_switch:
+	call parse_lmp_accepted_switch
+	jam 1,mem_bt_rcvd_switch_req_accept
+	fetch 1,mem_bt_send_lmp_setup_complete
+	rtn blank
+	jam 2,mem_bt_send_lmp_setup_complete
+	rtn
+
+p_send_lmp:
+	disable user
+	call lmo_fifo_process
+
+ifdef DEBUGLOG
+ifdef DEBUGLOG_SEND_LMP
+	setarg DEBUGLOG_DTYPE_SEND_LMP
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_lmi_opcode
+	store 1,mem_debuglog_dataval+1
+	fetch 1,mem_lmp_to_send
+	store 1,mem_debuglog_dataval
+	fetch 1,mem_lmp_to_send
+	store 2,mem_debuglog_dataval
+	ncall debuglog_push,blank
+endif
+endif
+	
+	fetch 1,mem_lmp_to_send
+	rtn blank
+	bbit1 7,p_send_lmp_escape
+	beq LMP_ACCEPTED,p_send_lmp_accepted
+	beq LMP_SETUP_COMPLETE,p_send_lmp_setup_complete
+	beq LMP_SNIFF_REQ, p_send_lmp_sniff_req
+	branch send_lmp0
+
+p_send_lmp_escape:
+	jam ZCODE_20,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_send_lmp_accepted:
+	jam ZCODE_21,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_send_lmp_setup_complete:
+	jam 1,mem_bt_send_lmp_setup_complete
+	branch send_lmp_setup_complete
+
+p_send_lmp_sniff_req:
+	jam 4,mem_mouse_bt_send_first_package_timer
+	branch send_lmp_sniff_req
+	
+p_process_conn_sm:
+	call lmo_fifo_check
+	nrtn blank
+p_process_conn_sm_continue:
+	fetch 1,mem_conn_sm
+	rtn blank
+ifdef DEBUGLOG
+ifdef DEBUGLOG_CONN_SM
+	call pdata_push
+	setarg DEBUGLOG_DTYPE_CONN_SM
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_conn_sm
+	store 2,mem_debuglog_dataval
+	call pdata_pull
+	call debuglog_push	
+endif
+endif
+	beq CONN_SM_SEND_CONN_REQ, p_host_create_conn_send_conn_req
+	beq CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION,p_host_creat_conn_wait_switch
+	branch process_conn_sm_continue+2
+
+p_host_creat_conn_wait_switch:
+	fetch 1,mem_switch_flag
+	rtneq SWITCH_FLAG_INIT
+	beq SWITCH_FLAG_ACCEPT,p_host_create_conn_switch_accept
+	branch host_creat_conn_wait_switch+3
+p_host_create_conn_switch_accept:
+	rtn master
+p_host_create_conn_auth_pair:
+	/* checking whether or not to do m/s switch */
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_AUTH,p_host_create_conn_auth_pair_true
+	branch host_create_conn_auth_pair+1
+p_host_create_conn_auth_pair_true:
+	fetch 1,mem_bt_send_lmp_setup_complete
+	beq 1,host_create_conn_auth_pair_true
+	//sumsung a5100 patch
+	fetch 1,mem_link_key_exists
+	branch host_create_conn_auth_pair_nokey,blank
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn blank
+	jam 0,mem_bt_send_max_slot_req_accept_after_switch	
+	fetch 4,mem_aurand_send_delay_time
+	arg 20,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nbranch p_bt_send_max_slot_req_accept_after_switch_wait,positive
+	branch host_create_conn_auth
+
+p_bt_send_max_slot_req_accept_after_switch_wait:
+	jam 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn
+
+p_host_create_conn_send_conn_req:
+	jam 20,mem_mouse_send_switch_req_timer
+	branch host_create_conn_send_conn_req
+
+	
+ifdef DEBUGLOG
+p_parse_lmp_opcode:
+ifdef DEBUGLOG
+ifdef DEBUGLOG_PARSE_LMP
+	setarg DEBUGLOG_DTYPE_PARSE_LMP
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_rxbuf+1
+	store 1,mem_debuglog_dataval+1 
+	fetch 1,mem_lmi_opcode2
+	store 2,mem_debuglog_dataval
+	call debuglog_push 
+endif
+endif
+	branch parse_lmp+21
+
+p_process_upper_sm_reconn:
+	fetch 1,mem_upper_sm_reconn
+	rtn blank
+ifdef DEBUGLOG
+ifdef DEBUGLOG_UPPER_SM
+	call pdata_push
+	setarg DEBUGLOG_DTYPE_UPPER_SM
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_upper_sm_reconn
+	store 2,mem_debuglog_dataval
+	call pdata_pull
+	call debuglog_push	
+endif
+endif
+	branch process_upper_sm_reconn+3
+
+endif	
+
+endif
+	
+ifdef DEBUGLOG
+p_ui_ipc_send_event:
+ifdef DEBUGLOG
+ifdef DEBUGLOG_EVENT
+	call pdata_push
+	setarg DEBUGLOG_DTYPE_EVENT
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_fifo_temp
+	store 2,mem_debuglog_dataval
+	call pdata_pull
+	call debuglog_push	
+endif
+endif
+	branch ui_ipc_send_event+1
+
+p_ui_ipc_send_cmd:
+ifdef DEBUGLOG
+ifdef DEBUGLOG_CMD
+	call pdata_push
+	setarg DEBUGLOG_DTYPE_CMD
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_fifo_temp
+	store 2,mem_debuglog_dataval
+	call pdata_pull
+	call debuglog_push
+endif
+endif
+	branch ui_ipc_send_cmd+1
+endif
+
+p_check_51cmd_once_continue:
+	call lmo_fifo_check
+	nbranch check_51cmd_restore,blank  //process this cmd next time while lmo fifo is full
+	fetch 1,mem_fifo_temp
+	bmark0 mark_context,check_51cmd_check_idle
+	beq BT_CMD_STORE_RECONN_INFO_LE,p_flash_store_le_reconn_info
+	beq BT_CMD_STORE_RECONN_INFO_BT,p_flash_store_bd_reconn_info
+	beq BT_CMD_LE_UPDATE_CONN,p_check_51cmd_ble_update_connect_param
+	branch check_51cmd_once_continue+2
+
+p_flash_store_le_reconn_info:
+	jam REC_4_MODE,mem_record_bt_mode
+	fetch 6,mem_le_plap
+	branch p_flash_store_reconn_info
+p_flash_store_bd_reconn_info:
+	jam REC_3_MODE,mem_record_bt_mode
+	fetch 6,mem_plap	
+p_flash_store_reconn_info:
+	store 6,mem_temp_lap
+p_mouse_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 mouse_check_device_addr
+p_mouse_unplug_clean_bdaddr:
+	call mouse_before_store_reconn_info
+	branch p_mouse_store_flash_device_info
+
+p_check_51cmd_ble_update_connect_param:
+	call le_fifo_check_full
+	nrtn blank
+	branch le_l2cap_tx_update_req
+
+power_ctrl_pac_succ_cnt_init:
+	jam 1,mem_power_ctrl_level
+	jam 0,mem_power_ctrl_pac_succ_cnt
+	rtn
+power_ctrl_pac_succ_incrs:
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	increase 1,pdata
+	store 1,mem_power_ctrl_pac_succ_cnt
+	rtn
+
+power_ctrl_pac_succ_cnt_reinit:
+	jam 3,mem_power_ctrl_pac_succ_cnt
+	rtn
+
+power_ctrl_start:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_ADV
+	rtnbit1 UI_STATE_BT_RECONNECT
+	rtnbit1 UI_STATE_BT_DISCOVERY
+	
+	arg mem_rssi_signal_buf,rega
+	call p_rssi_average
+	storet 1,mem_rssi_avg_received
+
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	store 1,mem_debuglog_dataval
+	fetch 1,mem_rssi_avg_received
+	store 1,mem_debuglog_dataval+1
+	call debuglog_push	
+endif
+endif
+	setarg RSSI_DIS_MAX_24G
+	bmark1 mark_24g,power_ctrl_start_next
+	setarg RSSI_DIS_MAX_BLE
+power_ctrl_start_next:	
+	isub temp,null
+	nbranch power_ctrl_txpower_incrs_force,positive
+
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	sub pdata,2,null
+	nbranch power_ctrl_txpower_decrs_check,positive
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	beq 0,power_ctrl_txpower_incrs
+	rtn
+
+power_ctrl_txpower_decrs_check:
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	rtnne 50
+	jam 0,mem_power_ctrl_pac_succ_cnt
+power_ctrl_txpower_decrs:
+	fetcht 1,mem_rssi_avg_received
+	setarg RSSI_DIS_MIN_24G
+	bmark1 mark_24g,power_ctrl_txpower_decrs_next
+	setarg RSSI_DIS_MIN_BLE	
+power_ctrl_txpower_decrs_next:	
+	isub temp,null
+	nrtn positive
+	fetch 1,mem_power_ctrl_level
+	beq 0,power_ctrl_decrs_level0
+	increase -1,pdata
+	store 1,mem_power_ctrl_level
+	beq 0,power_ctrl_decrs_level0
+power_ctrl_decrs_level1:
+power_ctrl_incrs_level1:	//0dBm
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	setarg MISC_TXPOWER_1
+	store 2,mem_debuglog_dataval
+	call debuglog_push
+endif
+endif
+	jam TX_POWER_0DB,mem_tx_power
+	rtn
+
+power_ctrl_txpower_incrs_force:
+	jam 0,mem_power_ctrl_pac_succ_cnt
+power_ctrl_txpower_incrs:
+	fetch 1,mem_power_ctrl_level
+	beq 2,power_ctrl_incrs_level2
+	increase 1,pdata
+	store 1,mem_power_ctrl_level
+	beq 1,power_ctrl_incrs_level1
+power_ctrl_incrs_level2:	//+6dBm
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	setarg MISC_TXPOWER_2
+	store 2,mem_debuglog_dataval
+	call debuglog_push
+endif
+endif
+	jam TX_POWER_5DB,mem_tx_power
+	rtn
+	
+power_ctrl_decrs_level0: //-5dBm
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	setarg MISC_TXPOWER_0
+	store 2,mem_debuglog_dataval
+	call debuglog_push
+endif
+endif
+	jam TX_POWER_f5DB,mem_tx_power
+	rtn
+
+endif
+
+p_set_freq_tx:
+	storet 1,mem_last_freq
+	add temp,0,rega			/* index to frequency */
+	call rf_write_freq
+	setarg param_pll_setup	//128us
+	call sleep
+p_rf_tx_enable:
+	jam 0x1,rfen_adc
+	jam 0x3c,rfen_rx
+	jam 0xe0,rfen_tx
+	nop 10 /* wait LDOs to turn ON*/
+	jam 0x01, rfen_mdm
+	jam 0x3d, rfen_mdm
+	nop 10 /* wait tx blocks to turn ON*/
+	jam 0xb7,rfen_sn
+	nop 10 /* wait tx lo buffer to turn ON*/
+	jam 0x7d, rfen_mdm
+	fetch 1,mem_tx_power
+//	beq TX_POWER_0DB,p_set_tx_power_0db
+//	beq TX_POWER_3DB,p_set_tx_power_3db	
+	beq TX_POWER_5DB,p_set_tx_power_5db
+//	beq TX_POWER_f3DB,p_set_tx_power_f3db	
+	beq TX_POWER_f5DB,p_set_tx_power_f5db
+	beq TX_POWER_PAIR,p_set_tx_power_pair
+//	branch p_set_tx_power_0db
+p_set_tx_power_0db:
+	call p_rx_low_sens
+//	jam 0xba,0x894b
+	jam 0xd0,0x8955
+	jam 0xe0,0x8956
+//	jam 0x88,0x8957
+	jam 0x6c,0x8958
+//	jam 0x10,0x8959
+	branch set_tx_power_0db	
+
+//p_set_tx_power_3db:
+//	call p_rx_high_sens
+//	jam 0xba,0x894b
+//	jam 0xd0,0x8955
+//	jam 0xe0,0x8956
+//	jam 0x88,0x8957
+//	jam 0x3c,0x8958
+//	jam 0x10,0x8959
+//	branch set_tx_power_3db
+	
+p_set_tx_power_5db:
+p_rx_high_sens:
+	jam 0xfb,0x894c 
+	jam 0xef,0x894d
+	jam 0xec,0x894e 
+	jam 0x5e,0x894f
+	
+//	jam 0xba,0x894b
+	jam 0xd0,0x8955
+	jam 0xe0,0x8956
+//	jam 0x88,0x8957
+	jam 0x3c,0x8958
+//	jam 0x10,0x8959
+	branch set_tx_power_5db
+
+//p_set_tx_power_f3db:
+//	call p_rx_low_sens
+//	jam 0xba,0x894b
+//	jam 0xd0,0x8955
+//	jam 0xc0,0x8956
+//	jam 0x88,0x8957
+//	jam 0x6c,0x8958
+//	jam 0x10,0x8959
+//	branch set_tx_power_f3db
+	
+p_set_tx_power_f5db:
+	call p_rx_low_sens
+//	jam 0xba,0x894b
+	jam 0xd0,0x8955
+	jam 0xc0,0x8956
+//	jam 0x88,0x8957
+	jam 0x6c,0x8958
+//	jam 0x10,0x8959
+	branch set_tx_power_f5db
+
+p_rx_low_sens:
+	jam 0x5b,0x894c
+	jam 0x96,0x894d
+	jam 0x2c,0x894e 
+	jam 0x46,0x894f
+	rtn
+		
+p_set_tx_power_pair:	//50-100cm distance
+//	jam 0xba,0x894b
+ 	jam 0xc2,0x8956
+ 	jam 0xd0,0x8955
+	rtn	
+
+p_shutdown_radio:
+	force 8,radio_ctrl
+	branch shutdown_radio+1
+
+p_initialize_radio_cont:
+	call initialize_radio_cont+1
+	jam clksel_dpll,core_clksel
+	rtn
+
+
+// input : mem_zcode_temp_param0 ---- zocde number(0~1f)
+p_zcode_entrance:
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_zcode_temp_param0
+	store 1,mem_debuglog_dataval
+	fetch 1,mem_zcode_current_number
+	istore 1,contw
+	call debuglog_push	
+endif
+endif
+	fetcht 1,mem_zcode_temp_param0 // zcode number @ high 4bit
+	rshift4 temp,temp
+	fetch 1,mem_zcode_current_number
+	isub temp,null
+	branch p_zcode_run,zero // if this zcode is already loaded, do not load again
+	storet 1,mem_zcode_current_number
+	increase 1,temp
+	setarg ZCODE_BUFF_SIZE
+	imul32 temp,temp
+	fetch 3,mem_xip_flash_offset
+	isub temp,pdata
+
+	fetcht 3,mem_flash_start_addr
+	iadd temp,pdata
+	increase -5,pdata
+	store 3,mem_flash_address
+	
+	call p_flash_release_deep_power_down
+p_zcode_read_loop:
+	fetch 3,mem_flash_address
+	arg ZCODE_BUFF_SIZE,temp
+	arg mem_zcode_buff,rega
+	call spid_read_flash
+	fetch 4,mem_zcode_buff
+	fetcht 4,mem_zcode_head	//p_start
+	isub temp,null
+	nbranch p_zcode_read_loop,zero	//sometimes we will lost p_start,read flash again
+	call p_mouse_spi_init
+
+	setarg mem_zcode_buff
+	store 2,mem_patch_ptr
+	jam ZCODE_CODE_SIZE,mem_patch_len
+	call load_ucode
+	setarg 0
+	store 4,mem_patch_ptr
+p_zcode_run:
+	fetch 1,mem_zcode_temp_param0
+	branch p_zcode
+
+
+
+ifdef DEBUGLOG 
+pdata_push:
+	store 8,mem_debuglog_pdata
+	rtn
+
+pdata_pull:
+	fetch 8,mem_debuglog_pdata
+	rtn
+	
+debuglog_init:
+	call pdata_push
+	call debuglog_uart_init
+	call debuglog_mem_init
+	branch pdata_pull
+ 
+debuglog_uart_init:
+	/*step1:SET IO TX:GPIO6	RX:GPIO7*/
+	hfetch 1,core_gpio_sel1
+	set1 2,pdata
+	hstore 1,core_gpio_sel1 //Open UARTGPIO MUX
+	hfetch 4,core_gpio_pu0	 //RX pull up
+	set1 7,pdata
+	hstore 4,core_gpio_pu0
+	
+	/*step2:sel UARTclk bit0	=0:crystal	 =1:48M*/
+	hfetch 1,core_uart_clksel
+	set1 0,pdata
+	hstore 1,core_uart_clksel
+
+	/*step3:Enable uart clk
+	core_clkoff(0x8050)bit15 = 0,Enable uart clk*/
+	hfetch 2,core_clkoff
+	set0 0x0f,pdata
+	hstore 2,core_clkoff
+
+	/*step3:Set Ring Buffer*/
+	setarg mem_module_rx_buf		//RX buf Start Addr
+	hstore 2,core_uart_rsaddr
+
+	setarg mem_module_rx_buf_end	//RX buf End Addr
+	hstore 2,core_uart_readdr
+
+	setarg mem_module_tx_buf		//TX BUF Start Addr
+	hstore 2,core_uart_tsaddr
+
+	setarg 0x1eff	//TX buf End Addr
+	hstore 2,core_uart_teaddr
+	
+	setarg mem_module_rx_buf		//RX buf RPTR
+	hstore 2,core_uart_rrptr
+
+	setarg mem_module_tx_buf		//TX buf WPTR
+	hstore 2,core_uart_twptr
+
+	hstore 2,core_uart_trptrp		//TX buf RPTR
+
+	/*step4:SET baud*/
+	//hstore 2,mem_baud
+	setarg 0x34
+	hstore 2,core_uart_baud
+
+	/*step5:SET DataLen,parity bit,flow control and enable UART
+	RW	0	Enable UART
+	RW	1	1: odd parity; 0: even parity
+	RW	2	UART Data length 1: 9 bits; 0: 8 bits
+	RW	3	1: HCI uart SLIP protocol
+	RW	4	1: enable RTS/CTS flow control
+	RW	5	1: enable 7816 smart card protocol
+	RW	6	1: enable half duplex single line UART
+	RW	7	1: Use baud settings 0:auto detect baud rate*/
+	jam 0x00,core_uart_ctrl
+	jam 0x81,core_uart_ctrl
+	rtn 
+
+debuglog_mem_init:
+	jam DEBUGLOG_HEAD,mem_debuglog_temp
+	jam DEBUGLOG_TYPE,mem_debuglog_type
+	jam DEBUGLOG_LEN ,mem_debuglog_datalen
+	jam DEBUGLOG_TAIL,mem_debuglog_tail
+	rtn	
+
+debuglog_push:
+	call pdata_push
+	hfetch 1,core_uart_status
+	rtnbit1 uart_status_tx_fifo_full
+	call uartd_prepare_tx
+	fetch 8,mem_debuglog_temp
+	istore 8,contwu
+	call uartd_send
+	branch pdata_pull 
+endif
+
+ifdef RF_DEBUG
+test_gpio_init:
+	arg TEST_GPIO,temp
+	call gpio_config_output
+test_gpio_low:
+	arg TEST_GPIO,temp
+	call gpio_out_active
+	nop 10
+	rtn
+test_gpio_high:
+	arg TEST_GPIO,temp
+	call gpio_out_inactive
+	nop 10
+	rtn
+
+test_h_l:
+	call test_gpio_high
+	branch test_gpio_low
+test_h_l_h:
+	call test_gpio_high
+	call test_gpio_low	
+	branch test_gpio_high
+endif
+
+ifdef MOUSE_SMOOTHER
+//notice: need to call p_mouse_drawing_optima_init when waked from mult
+p_drawing_optima:
+	fetch 4,mem_mouse_x
+	rtn blank
+	call p_data_abs_check
+	setarg 0x03	//asm_flag enable condition
+	call p_pdata_greater_than_check
+	setarg 0x02	//asm_flag disable condition
+	call p_data_less_than_check
+	fetch 1,mem_mouse_asm_flag
+	beq 1,p_drawing_optima_modify
+p_drawing_optima_init:
+	arg 5,loopcnt
+	arg mem_mouse_asm_flag,contw
+	branch clear_mem
+
+p_drawing_optima_modify:
+ifdef XY_OFFSET
+	fetch 2,mem_mouse_x_pre
+	store 2,mem_data_value
+	call pre_xy_data_judge
+	store 2,mem_mouse_x_pre
+
+	fetch 2,mem_mouse_x
+	store 2,mem_data_value
+	call current_xy_data_judge
+	store 2,mem_mouse_x
+
+	fetch 2,mem_mouse_y_pre
+	store 2,mem_data_value
+	call pre_xy_data_judge
+	store 2,mem_mouse_y_pre
+	
+	fetch 2,mem_mouse_y
+	store 2,mem_data_value
+	call current_xy_data_judge
+	store 2,mem_mouse_y	
+endif
+
+	fetch 2,mem_mouse_x_pre
+	store 2,mem_data_pre
+	fetch 2,mem_mouse_x
+	store 2,mem_data_current
+	call p_drawing_optima_data
+	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 p_drawing_optima_data
+	fetch 2,mem_data_pre
+	store 2,mem_mouse_y_pre
+	fetch 2,mem_data_current
+	store 2,mem_mouse_y
+	rtn	
+
+
+ifdef XY_OFFSET
+pre_xy_data_judge:	
+	fetch 1,mem_data_value+1
+	branch pre_xy_pdata_offset,blank
+	branch pre_xy_ndata_offset
+
+pre_xy_pdata_offset:
+	fetch 1,mem_data_value
+	call pre_xy_get_0_4_times
+	store 1,mem_data_value
+xy_data_offset_new:
+	fetch 2,mem_data_value
+	rtn
+pre_xy_ndata_offset:
+	fetch 1,mem_data_value
+	call p_pdata_invert
+	call pre_xy_get_0_4_times
+	call disable_blank,blank
+	call p_pdata_get_new_value
+	branch xy_data_offset_new
+	
+current_xy_data_judge:
+	fetch 1,mem_data_value+1
+	branch current_xy_pdata_offset,blank
+	branch current_xy_ndata_offset
+current_xy_pdata_offset:
+	fetch 1,mem_data_value
+	call current_xy_get_0_6_times
+	store 1,mem_data_value
+	branch xy_data_offset_new
+current_xy_ndata_offset:	
+	fetch 1,mem_data_value
+	call p_pdata_invert
+	call current_xy_get_0_6_times
+	call disable_blank,blank
+	call p_pdata_get_new_value
+	branch xy_data_offset_new
+
+pre_xy_get_0_4_times:
+	mul32 pdata,4,pdata
+	div pdata,5
+	call wait_div_end
+	quotient pdata
+	rtn
+current_xy_get_0_6_times:	//0.6 times
+	mul32 pdata,12,pdata
+	div pdata,10
+	call wait_div_end
+	quotient pdata
+	rtn
+endif
+
+/**********
+input:data_pre,data_current
+output:data_pre,data_current after optima
+***********/
+p_drawing_optima_data:
+	fetch 2,mem_data_pre
+	fetcht 2,mem_data_current
+	iadd temp,pdata
+	store 3,mem_data_sum
+	isolate1 16,pdata
+	branch p_data_sum_overflow,true
+	fetch 1,mem_data_sum+1
+	beq 0xff,p_data_sum_n
+	fetch 1,mem_data_sum
+p_data_store_pre:
+	rshift pdata,pdata
+	store 2,mem_data_pre
+	store 2,mem_data_current
+	rtn
+p_data_sum_overflow:
+	fetch 1,mem_data_sum+1	//sum positive
+	beq 0,p_data_sum_overflow_p
+	fetch 3,mem_data_sum	//全负相加
+	branch p_data_store_pre
+p_data_sum_overflow_p:
+	jam 0,mem_data_sum+2
+	fetch 1,mem_data_sum
+	branch p_data_store_pre
+
+p_data_sum_n:
+	fetch 1,mem_data_sum	//sum negetive
+	call p_pdata_get_half
+	store 1,mem_data_pre
+	store 1,mem_data_current
+	branch p_data_zero,blank
+	setarg 0xff
+p_data_set_direction:	
+	store 1,mem_data_pre+1
+	store 1,mem_data_current+1
+	rtn
+p_data_zero:
+	setarg 0
+	branch p_data_set_direction
+
+p_pdata_get_half:
+	call p_pdata_invert
+	rshift pdata,pdata
+p_pdata_get_new_value:	
+	call p_rega_in_out
+	sub pdata,0,pdata
+	store 1,mem_data_value
+	rtn
+
+p_pdata_invert:
+	sub pdata,0,pdata
+p_rega_in_out:	
+	store 1,mem_rega
+	fetch 1,mem_rega
+	rtn
+
+//rega mouse_x, regb mouse_y, pdata refer
+p_pdata_greater_than_check:
+	isub rega,null
+	nbranch p_enable_asm,positive
+	isub regb,null
+	nbranch p_enable_asm,positive
+p_disable_asm:
+	jam 0,mem_mouse_asm_flag
+	rtn
+p_data_less_than_check:
+	isub rega,null
+	nrtn positive
+	isub regb,null
+	nrtn positive
+	branch p_disable_asm
+p_enable_asm:
+	jam 1,mem_mouse_asm_flag
+	rtn
+
+p_data_abs_check:
+	fetch 2,mem_mouse_x
+	call p_data_abs
+	copy pdata,rega
+	fetch 2,mem_mouse_y
+	call p_data_abs
+	copy pdata,regb
+	rtn
+
+/***********
+input: data_current
+output:pdata,abs
+************/
+p_data_abs:
+	store 2,mem_data_current
+	fetch 1,mem_data_current+1
+	beq 0xff,p_data_reversal
+	fetch 1,mem_data_current
+p_data_abs_store:
+	and_into 0xff,pdata
+	//output:pdata
+	rtn
+p_data_reversal:
+	fetch 2,mem_data_current
+	sub pdata,0,pdata
+	branch p_data_abs_store
+endif
+
+ifdef TESTDATA
+//1 mem_m_key
+//2 mem_m_x
+//2 mem_m_y
+//1 mem_m_z
+//1 mem_m_tz
+//1 mem_24g_test
+p_g24_test_data:
+	fetch 1,mem_24g_test
+	increase 1,pdata
+	store 1,mem_24g_test
+	sub pdata,50,null
+	branch p_ms_x_right,positive
+	sub pdata,100,null
+	branch p_ms_y_up,positive
+	sub pdata,150,null
+	branch p_ms_x_left,positive
+	sub pdata,200,null
+	branch p_ms_y_down,positive
+	rtn
+p_ms_x_right:
+	setarg 0x05
+	store 2,mem_m_x
+	setarg 0
+	store 2,mem_m_y
+	store 1,mem_m_z
+	store 1,mem_m_key
+	store 1,mem_m_tz
+p_data:	
+	enable user
+	fetch 7,mem_m_key
+	store 7,mem_mouse_key
+	rtn
+p_ms_y_up:
+	setarg 0x05
+	store 2,mem_m_y
+	setarg 0
+	store 2,mem_m_x
+	store 1,mem_m_z
+	store 1,mem_m_key
+	store 1,mem_m_tz
+	branch p_data
+p_ms_x_left:
+	setarg 0xfffb
+	store 2,mem_m_x
+	setarg 0
+	store 2,mem_m_y
+	store 1,mem_m_z
+	store 1,mem_m_key
+	store 1,mem_m_tz
+	branch p_data
+p_ms_y_down:
+	fetch 1,mem_24g_test
+	beq 200,p_mem_usb_data_square_cnt_set0
+	setarg 0xfffb
+	store 2,mem_m_y
+	setarg 0
+	store 2,mem_m_x
+	store 1,mem_m_z
+	store 1,mem_m_key
+	store 1,mem_m_tz
+	branch p_data
+p_mem_usb_data_square_cnt_set0:
+	jam 0,mem_24g_test
+	branch p_ms_y_down+2
+endif
+
+ifdef MEMLOG
+p_hci_log:
+	fetch 1,0x4d00
+	increase 1,pdata
+	sub pdata,50,null
+	branch p_hci_log_calc_ptr,positive
+	setarg 0
+p_hci_log_calc_ptr:
+	store 1,0x4d00
+	arg 8,temp
+	imul32 temp,pdata
+	arg 0x4d08,contw
+	iadd contw,contw
+p_hci_log_write_content:
+	fetch 1,0x4d00
+	istore 1,contw//counter
+	fetch 4,mem_le_supervision_timer
+	istore 4,contw
+	fetch 2,mem_le_superto
+	istore 2,contw	
+	rtn
+endif
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/peripherals.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/peripherals.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/peripherals.prog	(working copy)
@@ -0,0 +1,2441 @@
+
+/* ===================== two wire SPI gpio ======================= */
+
+twspi_reset:
+	bpatchx patch31_4,mem_patch31
+	hfetch 1,core_gpio_oe3
+	arg 0x06,temp
+	ior temp,pdata
+	hstore 1,core_gpio_oe3
+	hfetch 1,core_gpio_out3
+	ior temp,pdata
+	hstore 1,core_gpio_out3
+	call twspi_disable
+	hfetch 1,core_gpio_out3
+	set0 1,pdata
+	set0 2,pdata
+	hstore 1,core_gpio_out3	
+	nop 30  
+	branch twspi_enable
+
+twspi_reset2:
+	hfetch 1,core_gpio_oe3
+	arg 0xc0,temp
+	ior temp,pdata
+	hstore 1,core_gpio_oe3
+	hfetch 1,core_gpio_out3
+	ior temp,pdata
+	hstore 1,core_gpio_out3
+	call twspi_disable
+	hfetch 1,core_gpio_out3
+	set0 6,pdata
+	set0 7,pdata
+	hstore 1,core_gpio_out3	
+	nop 30  
+	branch twspi_enable2
+
+twspi_disable:
+	hfetch 1,core_gpio_sel1
+	and pdata,0xfc,pdata
+	hstore 1,core_gpio_sel1  //disable spi
+	rtn
+twspi_enable:
+	hfetch 1,core_gpio_sel1
+	or pdata,0x01,pdata
+	hstore 1,core_gpio_sel1  //enable spi
+	rtn
+twspi_enable2:
+	hfetch 1,core_gpio_sel1
+	or pdata,0x03,pdata
+	set0 4,pdata
+	hstore 1,core_gpio_sel1  //enable spi2
+	rtn
+
+// input read reg number: pdata 
+//output reg data: pdata
+sensor_read:
+	copy pdata,regb
+	call spi_ncs_enable
+	nop 100
+	copy regb,pdata
+	call twspi_read
+	copy pdata,regb
+	call spi_ncs_disable
+	nop 100
+	copy regb,pdata
+	rtn
+// input write reg number: pdata 
+sensor_write:
+	copy pdata,regb
+	call spi_ncs_enable
+	nop 100
+	copy regb,pdata
+	call twspi_write
+	call spi_ncs_disable
+	nop 100
+	rtn
+//spi gpio init .
+//0xff :disable spi ncs gpio init
+spi_ncs_gpio_init:
+	fetcht 1,mem_spi_ncs_gpio
+	branch gpio_config_output
+
+//nsc gpio ouput low
+spi_ncs_enable:
+	fetcht 1,mem_spi_ncs_gpio
+	branch gpio_out_active
+
+//ncs gpio output high
+spi_ncs_disable:
+	fetcht 1,mem_spi_ncs_gpio
+	branch gpio_out_inactive
+
+
+twspi_write:
+	branch spid_write_reg
+	
+twspi_read:
+	branch spid_read_reg
+
+
+
+/* ===================== code loading ======================= */
+
+
+read_function_aes:
+	nbranch read_function,user
+	hfetch 1,core_gpio_key2
+	or_into 0x2,pdata   	// enable aes 
+	hstore 1,core_gpio_key2
+read_function:
+	copy temp,null
+	branch read_fuction_zero,zero
+	copy regc,pc
+read_fuction_zero:
+	isolate0 0,null
+	branch set_ucode_status
+	
+/* return temp = block length */
+get_block_header:
+	force 4,temp
+get_block_header0:
+	arg mem_ucode_buf,rega
+	hfetch 1,core_gpio_key2
+	and_into 0xfd,pdata   	// disable aes for header
+	hstore 1,core_gpio_key2
+	call read_function
+	arg 0x55aa,rega
+	fetch 2,mem_ucode_buf
+	ifetcht 2,contr
+	isub rega,null
+	rtn	
+
+read_first_block:
+	arg 2,temp
+	arg mem_ucode_ptr,rega
+	call read_function
+	fetch 2,mem_ucode_ptr
+	store 2,mem_addr_mi
+	call get_iv,user
+	rtn
+	
+get_iv:
+	arg 16,temp
+	arg mem_ucode_keybuf,rega
+	hfetch 1,core_gpio_key2
+	and_into 0xfd,pdata   // disable aes for iv
+	hstore 1,core_gpio_key2
+	call read_function
+	arg mem_ucode_keybuf,contr
+	arg 16,loopcnt
+	call aes_load_data
+	call aes_init
+	call aes_clear_data
+	branch do_aes_cbc					/* generate first IV */
+
+load_storage:
+	disable match
+	call get_block_header
+	nrtn zero
+	enable match
+	jam 0x80, core_ucode_ctrl
+	jam 0,core_ucode_hi
+	jam 0,core_ucode_low
+	arg core_ucode_data,rega
+	call read_function_aes
+	jam 0x0, core_ucode_ctrl
+load_storage_loop:
+	arg 6,temp
+	call get_block_header0
+	nrtn zero
+	ifetch 2,contr
+	iforce rega
+	call read_function
+	branch load_storage_loop
+
+	
+	/* only load memory data from eeprom */
+reload_eeprom:
+	call clean_mem
+	setarg 0x1000
+	store 2,mem_addr_mi
+	arg iicd_read_eep,regc
+	arg 2,loopcnt
+reload_eeprom_loop:
+	call get_block_header
+	nrtn zero
+	fetch 2,mem_addr_mi
+	byteswap pdata,pdata
+	iadd temp,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	loop reload_eeprom_loop
+	branch load_storage_loop
+	
+loadcode:
+	call clean_mem
+	disable user
+	call otp_enable_chgpump
+	setarg otp_ucode_flag
+	arg mem_otp_ucode_flag,rega
+	arg 2,temp
+	call otpd_read_data
+	fetch 2,mem_otp_ucode_flag
+	bbit0 otp_uflag_aes, loadcode_otp
+	jam 0x25,core_clkoff			// disable debug uart
+	setarg otp_ucode_aeskey
+	arg mem_ucode_keybuf,rega
+	arg 16,temp
+	call otpd_read_data
+	jam lock_otp,core_misc_ctrl	// disable further read/write of key
+	set1 mark_otp_encrypt,mark	
+	arg mem_ucode_keybuf,contr
+	call load_key
+	enable user					// set user for aes
+loadcode_otp:
+	jam 0,mem_loadcode_times
+loadcode_otp_2:
+	call loadcode_check_times
+	fetch 2,mem_otp_ucode_flag
+	byteswap pdata,pdata
+	arg 0x7ff,temp
+	iand temp,pdata
+	branch loadcode_iic, zero
+	call otp_set_addr
+	arg otpd_read_code,regc
+	call get_iv,user
+	call load_storage
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_otp_2			// crc error, try again
+	
+loadcode_iic:
+	call otp_disable_chgpump
+	jam 0,mem_loadcode_times
+loadcode_iic_2:	
+	call loadcode_check_times
+	call clear_eeprom_size_2k
+	fetch 1,mem_otp_ucode_flag
+	bbit1 otp_uflag_skip_eep,loadcode_spi
+	call loadcode_iic_by_eeprom
+	nbranch loadcode_iic_eeprom_2k,match
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_iic_2			// crc error, try again
+	branch loadcode_hci
+loadcode_iic_eeprom_2k:
+	call set_eeprom_size_2k
+	fetch 1,mem_otp_ucode_flag
+	bbit1 otp_uflag_skip_eep,loadcode_spi
+	call loadcode_iic_by_eeprom
+	nbranch loadcode_spi,match
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_iic_2			// crc error, try again
+	branch loadcode_hci
+	
+loadcode_spi:
+	jam 0,mem_loadcode_times
+loadcode_spi_2:
+	call loadcode_check_times
+	fetch 1,mem_otp_ucode_flag
+	bbit1 otp_uflag_skip_flash, loadcode_hci
+	setarg 0x0
+	store 3,mem_addr_hi
+	call spid_init_flash
+	arg spid_load_flash,regc
+	call read_first_block
+	call load_storage
+	nbranch loadcode_hci,match
+	fetch 1,mem_ucode_status
+	bbit0 0,loadcode_spi_2			// crc error, try again
+
+loadcode_hci:
+	bmark1 mark_otp_encrypt,loadcode_hci_enc
+	call clear_key_buf
+loadcode_hci_enc:
+	fetch 1,mem_otp_ucode_flag
+	bbit0 otp_uflag_hci,clear_key_buf
+	jam 0x21,core_clkoff			// enable debug uart
+	call hci_init
+loadcode_hci_loop:
+	call hci_rx_packet
+	branch loadcode_hci_loop
+
+clear_key_buf:
+	setarg 0
+	store 8,mem_ucode_keybuf
+	store 8,mem_ucode_keybuf+8
+	force regidx_key,regext_index
+	call aes_clear
+	jam 0x21,core_clkoff		// enable debug uart
+	rtn
+	
+
+loadcode_iic_by_eeprom:
+	setarg 0x0
+	store 2,mem_addr_mi
+	arg iicd_read_eep,regc
+	call iicd_init_12m
+	call read_first_block
+	branch load_storage
+
+
+loadcode_check_times:
+	fetch 1,mem_loadcode_times
+	increase 1,pdata
+	sub pdata,3,null
+	nbranch loadcode_error,positive
+	store 1,mem_loadcode_times
+	rtn
+
+loadcode_error:
+	call clear_key_buf
+	call ice_break
+	rtn
+
+
+/* true flag is set into status */
+set_ucode_status:
+	fetch 1,mem_ucode_status
+	lshift pdata,pdata
+	setflag true,0,pdata
+	isolate0 15,rega
+	rtn true
+	store 1,mem_ucode_status
+	rtn
+
+	/* queue is bit position of hw done status */
+decrypt_code:
+	hfetch 1,core_gpio_key2
+	rtnbit0 1
+	branch decrypt_code_skip	/* skip to key generation at first for speed */
+decrypt_code_loop:
+	hfetch 1,core_dma_status
+	qisolate1 pdata
+	rtn true
+decrypt_code_skip:
+	hfetch 1,core_misc_status
+	bbit0 1,decrypt_code_loop
+	call do_aes_cbc
+	branch decrypt_code_loop
+
+
+
+load_ucode:
+	fetch 2,mem_patch_ptr
+	rtn blank
+	jam 0x80, core_ucode_ctrl
+	jam 0,core_ucode_hi
+	jam 0,core_ucode_low
+	fetcht 2,mem_patch_len
+	lshift2 temp,loopcnt
+	iforce contr
+load_ucode_loop:
+	ifetch 1,contr
+	hstore 1,core_ucode_data
+	loop load_ucode_loop
+	jam 0x0, core_ucode_ctrl
+	rtn
+
+
+/* ===================== SPI dma ======================= */
+
+spid_init:
+	bpatchx patch31_5,mem_patch31
+	call spid_init_common
+	branch twspi_enable
+
+spid_init2:
+	call spid_init_common
+	call twspi_disable
+	branch twspi_enable2
+	
+spid_init_common:
+	fetch 1,mem_spi_init_clk
+	hstore 1,core_spid_ctrl	// A7530 should at least 34, or write fail
+	fetch 1,mem_spi_init_delay_time
+	hstore 1,core_spid_delay	// 4us delay
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	setarg mem_spid_rbuf
+	hstore 2,core_spid_rxaddr
+	branch twspi_disable
+	
+spid_reset:
+	hfetch 1,core_spid_ctrl
+	set1 7,pdata
+	hstore 1,core_spid_ctrl
+	set0 7,pdata
+	hstore 1,core_spid_ctrl
+	rtn
+
+
+/* pdata 6:0 is reg address, 15:8 is data to write */
+spid_write_reg:
+	set1 7,pdata
+	store 2,mem_spid_tbuf
+	bpatchx patch31_6,mem_patch31
+	jam 2,core_spid_txlen
+	jam 0,core_spid_rxlen
+	jam spid_start,core_misc_ctrl
+	branch wait_spid_done
+
+/* pdata 6:0 is reg address */
+spid_read_reg:
+	force 1,temp
+/* pdata 6:0 is burst reg address, temp is bytes to read */
+spid_read_regs:
+//	nop 100
+	store 1,mem_spid_tbuf
+	bpatchx patch31_7,mem_patch31
+	jam 1,core_spid_txlen
+	hstoret 2,core_spid_rxlen
+	jam spid_start,core_misc_ctrl
+	call wait_spid_done
+	fetch 1,mem_spid_rbuf
+	rtn
+
+wait_spid_done:
+	fetch 2,mem_afh_error_total
+	increase 1,pdata
+	store 2,mem_afh_error_total
+	hfetch 1,core_dma_status
+	bbit0 spid_done,wait_spid_done
+	rtn
+
+spid_init_flash:
+	jam 0x40,core_spid_ctrl
+	jam 0x0,core_spid_delay
+	hfetch 1,core_gpio_sel1
+	set0 0,pdata
+	set1 1,pdata
+	hstore 1,core_gpio_sel1
+	setarg 0
+	store 4,mem_spid_tbuf
+	rtn
+
+
+spid_unlock_flash:
+	setarg 0
+	hstore 2,core_spid_rxlen
+	setarg 1
+	hstore 2,core_spid_txlen
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	jam 6,mem_spid_tbuf
+	jam spid_start,core_misc_ctrl
+	branch wait_spid_done
+
+
+/**
+ ******************************************************************************
+ ** \brief  write flash
+ **
+ ** \param [in]  rega: 2byte write ptr    
+ **			pdata:3byte flash address  
+ ** 			temp:2byte write data length
+ **
+ ** \retval user  0: flash buys 1:write flash setting complate
+ **
+ ******************************************************************************/
+
+flash_write:
+	disable user
+	copy pdata,regb
+	fetch 1,mem_spi_write_flash_sm
+	rtnne FLASH_SM_NO_BUYS
+	enable user
+	copy regb,pdata
+	branch flash_write_start
+
+
+flash_write_spi_sm_timer:
+	fetch 1,mem_spi_write_flash_sm 	
+	beq FLASH_SM_START,flash_write_start
+	beq FLASH_SM_ERASE_SECTOR,flash_erase_sector
+	beq FLASH_SM_WAIT_ERASE_SECTOR,flash_wait_erase_sector
+	beq FLASH_SM_WRITE_DATA,flash_write_data
+	beq FLASH_SM_WAIT_WRITE_DATA,flash_wait_write_data
+	rtn
+
+flash_write_start:
+	store 3,mem_spi_write_addr
+	copy rega,pdata
+	store 2,mem_spi_write_ptr
+	storet 2,mem_spi_write_len
+	jam FLASH_SM_ERASE_SECTOR,mem_spi_write_flash_sm
+	branch spid_init_flash
+flash_erase_sector:
+	call spid_init_flash
+	jam FLASH_SM_WAIT_ERASE_SECTOR,mem_spi_write_flash_sm
+	call spid_unlock_flash
+	arg mem_spid_tbuf,rega
+	fetch 3,mem_spi_write_addr
+	jam 4,core_spid_txlen
+	arg FLASH_COMMAND_SECTOR_ERASE,temp
+	branch spid_write_flash_common
+	
+flash_wait_erase_sector:
+	call spid_init_flash
+	call spid_unlock_flash
+	setarg FLASH_READ_SATUS
+	call spid_read_reg
+	rtnbit1 FLASH_STATUS_WIP
+	jam FLASH_SM_WRITE_DATA,mem_spi_write_flash_sm
+	rtn
+flash_write_data:
+	call spid_init_flash
+	jam FLASH_SM_WAIT_WRITE_DATA,mem_spi_write_flash_sm
+	call spid_unlock_flash
+	call flash_data_preserve
+	call spid_write_flash
+	branch flash_data_recover
+flash_wait_write_data:
+	call spid_init_flash
+	call spid_unlock_flash
+	setarg FLASH_READ_SATUS
+	call spid_read_reg
+	rtnbit1 FLASH_STATUS_WIP
+	jam FLASH_SM_NO_BUYS,mem_spi_write_flash_sm
+	fetch 2,mem_cb_spi_flash_write_complate
+	branch callback_func
+flash_data_recover:
+	fetch 4,mem_temp
+	fetcht 2,mem_spi_write_ptr
+	increase -4,temp
+	istore 4,temp
+	rtn
+flash_data_preserve:
+	fetcht 2,mem_spi_write_ptr
+	copy temp,rega
+	increase -4,temp
+	ifetch 4,temp
+	store 4,mem_temp
+	fetcht 2,mem_spi_write_len
+	fetch 3,mem_spi_write_addr
+	rtn
+
+
+/* pdata is flash address, rega pointers to txdata(4 ahead bytes should be left), temp is length */
+spid_write_flash:
+	increase 4,temp
+	hstoret 2,core_spid_txlen
+	arg FLASH_COMMAND_WRITE_DATA,temp
+	increase -4,rega
+spid_write_flash_common:
+
+	istoret 1,rega
+	rshift16 pdata,temp
+	istoret 1,contw
+	rshift8 pdata,temp
+	istoret 1,contw
+	istore 1,contw
+	deposit rega
+	hstore 2,core_spid_txaddr
+	setarg 0
+	hstore 2,core_spid_rxlen
+	jam spid_start,core_misc_ctrl
+	branch wait_spid_done
+
+
+/* temp is length, rega pointers to buf   */
+spid_read_flash:
+	hstoret 2,core_spid_rxlen
+	rshift16 pdata,temp
+	storet 1,mem_addr_hi
+	rshift8 pdata,temp
+	storet 1,mem_addr_mi
+	store 1,mem_addr_lo
+	setarg 4
+	hstore 2,core_spid_txlen
+	jam FLASH_COMMAND_READ_DATA,mem_spid_tbuf
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	deposit rega
+	hstore 2,core_spid_rxaddr
+	hfetch 1,core_spid_ctrl
+	isolate0 15,rega
+	setflag true,6,pdata
+	hstore 1,core_spid_ctrl
+	jam spid_start,core_misc_ctrl
+spi_read_flash_wait:
+	hfetch 1,core_dma_status
+	bbit1 7,spi_read_flash_wait			// waiting for spid write
+	arg spid_done,queue
+	branch wait_spid_done
+
+
+/* temp is length, rega pointers to buf  */
+spid_load_flash:
+	hstoret 2,core_spid_rxlen
+	setarg 4
+	hstore 2,core_spid_txlen
+	jam 3,mem_spid_tbuf
+	setarg mem_spid_tbuf
+	hstore 2,core_spid_txaddr
+	deposit rega
+	hstore 2,core_spid_rxaddr
+	hfetch 1,core_spid_ctrl
+	isolate0 15,rega
+	setflag true,6,pdata
+	hstore 1,core_spid_ctrl
+	jam spid_start,core_misc_ctrl
+spi_load_flash_wait:
+	hfetch 1,core_dma_status
+	bbit1 7,spi_load_flash_wait			// waiting for spid write
+	arg spid_done,queue
+	call decrypt_code
+	call wait_spid_done
+	isolate1 spid_crcok,pdata
+	call set_ucode_status
+	fetch 1,mem_addr_hi
+	lshift16 pdata,regb
+	fetch 1,mem_addr_mi
+	lshift8 pdata,pdata
+	ior regb,regb
+	fetch 1,mem_addr_lo
+	ior regb,pdata
+	iadd temp,pdata
+	store 1,mem_addr_lo
+	rshift8 pdata,pdata
+	store 1,mem_addr_mi
+	rshift8 pdata,pdata
+	store 1,mem_addr_hi
+	rtn
+
+/*****************************************************************************
+*soft reset chip
+*****************************************************************************/
+soft_reset_chip:
+	jam 1,core_reset
+	rtn
+
+
+
+/* ===================== I2C dma ======================= */
+
+iic_init_390k:	//390khz
+	jam 12,core_iicd_scl_low
+	jam 13,core_iicd_scl_high
+	jam 13,core_iicd_start_setup
+	jam 13,core_iicd_start_hold
+	jam 13,core_iicd_stop_setup
+	jam 12,core_iicd_data_setup
+  	branch iicd_init_gpio	
+
+
+iicd_init_12m:
+	jam 5,core_iicd_scl_low
+ 	jam 7,core_iicd_scl_high
+	jam 7,core_iicd_start_setup
+	jam 7,core_iicd_start_hold
+	jam 7,core_iicd_stop_setup
+	jam 5,core_iicd_data_setup
+iicd_init_gpio:	
+	hfetch 1,core_gpio_pu3
+	or_into 0xc0,pdata
+	hstore 1,core_gpio_pu3
+	hfetch 1,core_gpio_sel1
+	or_into 0x10,pdata
+	hstore 1,core_gpio_sel1
+	rtn
+
+
+
+wait_iicd_done:
+	hfetch 1,core_dma_status
+	bbit0 iicd_done,wait_iicd_done
+	rtn
+
+/*
+pdata is tx length
+rega is points to tx buffer
+regb is points to rx buffer
+temp is rx length
+*/
+iicd_read_data:
+	hstore 2,core_iicd_txlen
+	deposit rega
+	hstore 2,core_iicd_txaddr	
+	deposit regb
+	hstore 2,core_iicd_rxaddr
+	deposit temp	
+	hstore 2,core_iicd_rxlen
+	arg 1,temp
+	nsetflag blank,1,temp
+	hstore 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	branch wait_iicd_done
+
+
+set_eeprom_size_2k:
+	set1 mark_eeprom_size,mark
+	jam 0x08,mem_eeprom_block_size
+	rtn
+
+clear_eeprom_size_2k:
+	set0 mark_eeprom_size,mark
+	jam 0x20,mem_eeprom_block_size
+	rtn
+
+
+iicd_read_eep_data_size_2k:
+ 	fetch 1,mem_eeprom_base
+	iadd regb,pdata
+	store 1,mem_addr_mi
+	branch iicd_read_eep_size_2k
+
+iicd_read_eep_size_2k_lcadcode:
+	fetch 2,mem_addr_mi
+	byteswap pdata,pdata
+	store 1,mem_addr_mi
+	
+//length:temp 
+//mem ptr:rega
+//eeprom addr:pdata
+iicd_read_eep_size_2k:
+ 	setarg 3
+	hstore 2,core_iicd_txlen
+	jam 0xa0,mem_iicd_tbuf
+	jam 0xa1,mem_iicd_tbuf+2
+	branch iicd_read_eep_common
+
+
+//length:temp 
+//mem ptr:rega
+//eeprom addr:regb
+iicd_write_protect_eep_data:
+	storet 2,mem_temp
+	call iicd_eeprom_write_enable
+	fetcht 2,mem_temp
+	call iicd_write_eep_data
+	branch iicd_eeprom_write_disable
+	
+iicd_eeprom_write_enable:
+	fetch 1,mem_eeprom_wp_gpio
+	rtneq GPIO_DISABLE
+	bbit0 6,iicd_wp_gpio_output_low
+	setarg 150000
+	call sleep
+iicd_wp_gpio_output_low:
+	fetcht 1,mem_eeprom_wp_gpio
+	branch gpio_out_active
+	
+iicd_eeprom_write_disable:
+	fetcht 1,mem_eeprom_wp_gpio
+	branch gpio_out_inactive
+	
+//length:temp 
+//mem ptr:rega
+//eeprom addr offset:regb
+iicd_read_eep_data:
+	bpatchx patch32_0,mem_patch32
+	bmark1 mark_eeprom_size,iicd_read_eep_data_size_2k
+	fetch 2,mem_eeprom_base
+	iadd regb,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+
+/* rega pointers to buf, temp is length  */
+iicd_read_eep:
+	bpatchx patch32_1,mem_patch32
+	bmark1 mark_eeprom_size,iicd_read_eep_size_2k_lcadcode
+	setarg 4
+	hstore 2,core_iicd_txlen
+	jam 0xa0,mem_iicd_tbuf
+	jam 0xa1,mem_iicd_tbuf+3
+iicd_read_eep_common:	
+	setarg mem_iicd_tbuf
+	hstore 2,core_iicd_txaddr
+	hstoret 2,core_iicd_rxlen
+	deposit rega
+	hstore 2,core_iicd_rxaddr
+	setarg 2
+	isolate0 15,rega
+	setflag true,0,pdata
+	hstore 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	arg iicd_done,queue
+	call decrypt_code
+	call wait_iicd_done
+	isolate1 iicd_crcok,pdata
+	call set_ucode_status
+	bmark1 mark_eeprom_size,iicd_read_eep_load_code_size_2k
+	fetch 2,mem_addr_mi
+	byteswap pdata,pdata
+	iadd temp,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	rtn
+
+iicd_read_eep_load_code_size_2k:
+	fetch 1,mem_addr_mi
+	iadd temp,pdata
+	byteswap pdata,pdata
+	store 2,mem_addr_mi
+	rtn
+	
+
+//length:temp 
+//mem ptr:rega
+//eeprom addr offset:regb
+iicd_write_eep_data:
+	fetch 2,mem_eeprom_base
+	iadd regb,pdata
+
+//cuur ptr:pdata length:temp buf:rega
+iicd_write_ota_data:
+	store 2,mem_pdatatemp //curr ptr
+	bpatchx patch32_2,mem_patch32
+	storet 2,mem_temp	//len
+	copy rega,pdata
+	store 2,mem_contr
+iicd_write_eep_loop:
+	call iicd_eep_transparency
+
+	fetcht 2,mem_regb
+	fetch 2,mem_contr
+	copy pdata,rega
+	fetch 2,mem_pdatatemp
+	
+	call iicd_write_eep
+	
+	fetch 2,mem_regb
+	fetcht 2,mem_contr
+	iadd temp,temp
+	storet 2,mem_contr
+	fetcht 2,mem_pdatatemp
+	iadd temp,temp
+	storet 2,mem_pdatatemp
+	fetch 2,mem_temp
+	nbranch iicd_write_eep_loop,blank
+	rtn
+	
+//in:
+//1.size 2.len 3.src 4.des
+//mem_regc page's area
+//mem_pdatatemp curr ptr
+//mem_temp all len      
+//mem_regb curr len
+iicd_eep_transparency:
+	bpatchx patch32_3,mem_patch32
+	fetch 1,mem_eeprom_block_size
+	increase -1,pdata
+	fetcht 2,mem_pdatatemp
+	ior temp,pdata
+	increase 1,pdata
+	store 3,mem_regc
+
+	fetch 2,mem_temp
+	iadd temp,pdata
+
+	fetcht 3,mem_regc
+	isub temp,pdata
+	nbranch iicd_eep_deal_short_packet,positive
+	store 2,mem_temp
+	fetch 3,mem_regc
+	fetcht 2,mem_pdatatemp
+	isub temp,pdata
+	store 2,mem_regb
+	rtn
+iicd_eep_deal_short_packet:
+	fetch 2,mem_temp
+	store 2,mem_regb
+	setarg 0
+	store 2,mem_temp
+	rtn
+
+iicd_write_eep_size_2k:
+	increase 2,temp
+	hstoret 2,core_iicd_txlen
+	increase -2,rega
+	ifetcht 3,rega
+	copy temp,regb
+	arg 0xa0,temp
+	istoret 1,rega
+//	byteswap pdata,pdata
+	istore 1,contw
+	branch iicd_write_eep_common
+
+	/* pdata is eeprom address, rega pointers to txdata(3 ahead bytes should be left), temp is length */
+iicd_write_eep:
+	copy pdata,regb
+	bpatchx patch32_4,mem_patch32
+	bmark1 mark_eeprom_size,iicd_write_eep_size_2k
+	copy regb,pdata
+	increase 3,temp
+	hstoret 2,core_iicd_txlen
+	increase -3,rega
+	ifetcht 3,rega
+	copy temp,regb
+	arg 0xa0,temp
+	istoret 1,rega
+	byteswap pdata,pdata
+	istore 2,contw
+iicd_write_eep_common:	
+	deposit rega
+	hstore 2,core_iicd_txaddr
+	setarg 0
+	hstore 2,core_iicd_rxlen
+	jam 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	call wait_iicd_done
+	copy regb,pdata
+	istore 3,rega
+	
+iic_check_eeprom_standby:
+	bpatchx patch32_5,mem_patch32
+	jam 0,mem_iicd_tbuf+3
+iic_check_eeprom_standby_wait:
+	setarg 1
+	hstore 2,core_iicd_txlen
+	jam 0xa0,mem_iicd_tbuf
+	setarg mem_iicd_tbuf
+	hstore 2,core_iicd_txaddr
+	setarg 0
+	hstore 2,core_iicd_rxlen
+	hstore 2,core_iicd_rxaddr
+	setarg 3
+	hstore 1,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	call wait_iicd_done
+	hfetch 1,core_dma_status
+	rtnbit0 iicd_ack
+	nop 1500
+	fetch 1,mem_iicd_tbuf+3
+	increase 1,pdata
+	store 1,mem_iicd_tbuf+3
+	sub pdata,40,null
+	nrtn positive//polling timeout 6ms
+	branch iic_check_eeprom_standby_wait
+
+/* ===================== OTP ======================= */
+
+otp_enable_chgpump:
+	jam 0x70,rfen_chgpump
+	nop param_chgpump_delay
+	rtn
+
+otp_disable_chgpump:
+	jam 0x30,rfen_chgpump
+	rtn
+	
+otp_set_addr:
+	lshift3 pdata,pdata
+	hstore 2,core_otp_addr
+	jam 0,core_otpd_ctrl
+	rtn	
+
+/* pdata = otp address, rega pointers data, loopcnt is count */
+otp_write:
+	call otp_set_addr
+	call otp_ce
+otp_program:
+	ifetcht 1,rega
+	increase 1,rega
+	force 0,queue
+otp_program_bit:
+	qisolate0 temp
+	branch otp_skip_0,true
+	hfetch 1,core_otp_din
+	set1 6,pdata				/* din */
+	set1 7,pdata				/* dle */
+	hstore 1,core_otp_din
+	jam 0x02,core_otp_ctrl	/* web */
+	jam 0x82,core_otp_ctrl
+	set0 7,pdata				/* dle */
+	hstore 1,core_otp_din
+	jam 0x8a,core_otp_ctrl	/* pgmen */
+	nop 11
+	jam 0xca,core_otp_ctrl	/* vppen */
+	nop 33
+	jam 0x4a,core_otp_ctrl	/* web 2nd */
+	nop 44
+	jam 0xca,core_otp_ctrl	/* release web */
+	nop 22
+	jam 0x8a,core_otp_ctrl	/* release vppen */
+	nop 33
+	jam 0x82,core_otp_ctrl	/* release pgmen */
+	nop 1
+	jam 0x92,core_otp_ctrl	/* pgmvfy */
+	nop 10
+	jam 0xb2,core_otp_ctrl	/* readen */
+	hfetch 1,core_otp_rdata
+	jam 0x92,core_otp_ctrl	/* release readen */
+	nop 1
+	jam 0x82,core_otp_ctrl	/* release pgmvfy */
+	qisolate0 pdata
+	branch otp_program_bit,true	/* program error */
+otp_skip_0:
+	hfetch 2,core_otp_addr
+	increase 1,pdata
+	hstore 2,core_otp_addr
+	increase 1,queue
+	compare 8,queue,0xf
+	nbranch otp_program_bit,true
+	loop otp_program
+	jam 0x83,core_otp_ctrl
+	rtn
+
+otp_ce:
+	jam 0x82,core_otp_ctrl	/* ceb */
+	nop 12
+	jam 0x80,core_otp_ctrl	/* rstn */
+	jam 0x82,core_otp_ctrl	/* release rstn */
+	nop 150					/* waiting for vdd25 stable */
+	rtn
+
+	/* rega points to data, temp is count */
+otpd_read_init:
+	call otp_ce
+	jam 0xa2,core_otp_ctrl	/* readen */
+	deposit rega
+	hstore 2,core_otpd_addr
+	set1 11,temp
+	isolate0 15,pdata
+	setflag true,15,temp
+	hstoret 2,core_otpd_len
+	jam otpd_start,core_misc_ctrl
+	rtn
+
+otpd_wait_end:
+	hfetch 1,core_dma_status
+	bbit0 otpd_done,otpd_wait_end
+	rtn
+	
+	/* pdata=otp address, rega points to data, temp is count */
+otpd_read_data:
+	call otp_set_addr
+	call otpd_read_init
+	call otpd_wait_end
+	jam 0x83,core_otp_ctrl	/* release ceb */
+	rtn
+
+
+
+/* rega pointers to buf, temp is length */
+otpd_read_code:	
+	hfetch 2,core_current_otp_addr
+	hstore 2,core_otp_addr
+	call otpd_read_init
+	arg otpd_done,queue
+	call decrypt_code
+	call otpd_wait_end
+	isolate1 otpd_crcok,pdata	
+	call set_ucode_status
+	jam 0x83,core_otp_ctrl	/* release ceb */
+	rtn
+
+/* ===================== uart dma ======================= */
+uartd_prepare_tx:
+	hfetch 2,core_uart_twptr
+	iforce contwu
+	rtn
+
+uartd_send:
+	deposit contwu
+	hstore 2,core_uart_twptr
+	rtn
+
+uartd_rxdone:
+	deposit contru
+	hstore 2,core_uart_rrptr
+	rtn
+
+uartd_prepare_rx:
+	hfetch 2,core_uart_rrptr
+	copy pdata,contru
+	rtn
+
+uart_set_baud_by_mem:
+	fetch uart_baud_len,mem_baud
+	hstore uart_baud_len,core_uart_baud
+	rtn
+
+uart_copy_tx_bytes_fast:
+	deposit loopcnt
+	rtn blank
+uart_copy_tx_bytes_fast_loop:
+	increase -8,loopcnt
+	call uart_tx_8_bytes,positive
+	rtn zero
+	branch uart_copy_tx_bytes_fast_loop,positive
+	increase 8,loopcnt
+uart_copy_tx_bytes_fast_loop_four:
+	increase -4,loopcnt
+	call uart_tx_4_bytes,positive
+	rtn zero
+	branch uart_copy_tx_bytes_fast_loop_four,positive
+	increase 4,loopcnt
+	branch uart_copy_tx_bytes
+
+uart_tx_8_bytes:
+	ifetch 8,contr
+	istore 8,contwu
+	rtn
+
+uart_tx_4_bytes:
+	ifetch 4,contr
+	istore 4,contwu
+	rtn
+
+uart_copy_tx_bytes:
+	deposit loopcnt
+	rtn blank
+uart_copy_tx_bytes_loop:
+	ifetch 1,contr
+	istore 1,contwu
+	loop uart_copy_tx_bytes_loop
+	rtn
+
+uart_copy_rx_bytes_fast:
+	deposit loopcnt
+	rtn blank
+uart_copy_rx_bytes_fast_loop:
+	increase -8,loopcnt
+	call uart_rx_8_bytes,positive
+	rtn zero
+	branch uart_copy_rx_bytes_fast_loop,positive
+	increase 8,loopcnt
+uart_copy_rx_bytes_fast_loop_four:
+	increase -4,loopcnt
+	call uart_rx_4_bytes,positive
+	rtn zero
+	branch uart_copy_rx_bytes_fast_loop_four,positive
+	increase 4,loopcnt
+	branch uart_copy_rx_bytes
+
+uart_rx_8_bytes:
+	ifetch 8,contru
+	istore 8,contw
+	rtn
+
+uart_rx_4_bytes:
+	ifetch 4,contru
+	istore 4,contw
+	rtn
+
+
+uart_copy_rx_bytes:
+	deposit loopcnt
+	rtn blank
+uart_copy_rx_bytes_loop:
+	ifetch 1,contru
+	istore 1,contw
+	loop uart_copy_rx_bytes_loop
+	rtn
+
+
+uart_copy_rx2tx:
+	deposit loopcnt
+	rtn blank
+uart_copy_rx2tx_loop:
+	ifetch 1,contru
+	istore 1,contwu
+	loop uart_copy_rx2tx_loop
+	rtn
+
+
+/* ===================== eeprom data ======================= */
+
+app_store_nvram_event:
+	jam BT_EVT_STORE_NVRAM,mem_fifo_temp
+	branch ui_ipc_send_event
+
+check_51cmd_store_reconn_info:
+check_51cmd_update_device_record:
+	bpatchx patch32_6,mem_patch32
+	fetch 1,mem_nv_data_number
+	rtn blank		// not nv data
+	call check_nvram
+	call init_device_list,zero
+	call nvram_find_addr_from_bd_list
+write_device_record:
+	fetch 1,mem_nv_data_number
+	icopy regc
+	fetcht 2,mem_nv_data_ptr
+	storet 2,mem_list_item_ptr
+write_device_loop_find:
+	copy regc,pdata
+	branch app_store_nvram_event,blank  //EEPROM
+	increase -1,regc
+	copy temp,rega
+	ifetch 1,rega
+	fetcht 1,mem_select_list_item
+	isub temp,null
+	call set_index_finded_device,zero
+	branch write_device_loop_find0,positive
+	ifetch 1,rega
+	increase 1,pdata
+	istore 1,rega
+write_device_loop_find0:
+	fetcht 2,mem_list_item_ptr
+	increase NV_DATA_LEN,temp
+	storet 2,mem_list_item_ptr
+	branch write_device_loop_find
+
+set_index_finded_device:
+	setarg 0
+	istore 1,rega
+	fetch 1,mem_temp_reconn_record
+	istore 1,contw	
+	bne REC_3_MODE,set_index_finded_device_ble_mode
+	arg mem_link_key,regb
+set_index_find_device_MASTER_ADDR:
+	ifetch 6,contr
+	istore 8,contw
+	setarg 0
+	istore 8,contw
+	copy regb,contr
+store_rec_data_common:
+	call memcpy16
+	force 1,null
+	rtn
+
+set_index_finded_device_ble_mode:
+	beq REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS,set_index_finded_device_IRK
+	beq REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS,set_index_finded_device_EDIV
+	arg mem_le_ltk,regb
+	branch set_index_find_device_MASTER_ADDR
+
+set_index_finded_device_IRK:
+	arg mem_le_irk,contr
+	call memcpy16
+store_ble_rec_data_common:
+	arg mem_le_ltk,contr
+	branch store_rec_data_common
+
+set_index_finded_device_EDIV:
+	arg mem_le_rand,contr
+	call memcpy16
+	branch store_ble_rec_data_common
+
+
+nvram_find_addr_from_bd_list:
+	call disable_user
+	fetch 1,mem_nv_data_number
+	rtn blank		// not nv data
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,find_addr_from_bd_list_SPP_mode
+find_addr_from_bd_list_ble_mode:
+	bpatchx patch32_7,mem_patch32
+	fetch 1,mem_le_conn_peer_addr_type
+	beq MASTER_PUBLIC_ADDR,find_addr_from_bd_list_static_addr
+	fetch 1,mem_le_plap+5
+	compare 0xc0,pdata,0xc0
+	branch find_addr_from_bd_list_static_addr,true
+	compare 0x40,pdata,0xc0
+	branch find_addr_from_bd_list_random_addr,true
+	compare 0x00,pdata,0xc0
+	branch find_addr_from_bd_list_random_non_resolvable_private_address,true
+find_addr_from_bd_list_static_addr:
+	jam REC_4_MODE_STATIC_ADDRESS,mem_temp_reconn_record
+	fetch 6,mem_le_plap
+	branch find_addr_from_bd_list_common
+	
+find_addr_from_bd_list_random_non_resolvable_private_address:	
+	jam REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS,mem_temp_reconn_record
+	branch find_addr_from_bd_list_common
+
+//input :pdata EDIV and rands
+find_addr_from_bd_list_random_addr:
+	jam REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS,mem_temp_reconn_record
+	branch find_addr_from_bd_list_common
+	
+//input :pdata EDIV and rands
+find_addr_from_bd_list_SPP_mode:
+	bpatchx patch33_0,mem_patch33
+	jam REC_3_MODE,mem_temp_reconn_record
+	fetch 6,mem_plap
+find_addr_from_bd_list_common:
+	store 6,mem_temp_reconn_record+1
+	fetch 2,mem_nv_data_ptr
+	ifetcht 1,pdata
+	pincrease 1
+	store 2,mem_list_item_ptr
+	storet 1,mem_select_list_item
+	fetch 1,mem_nv_data_number
+	icopy regc
+nvram_find_addr_from_list:
+	fetch 2,mem_list_item_ptr
+	copy pdata,rega
+	call nvram_find_addr_from_list_compare
+	rtn user
+	fetcht 2,mem_list_item_ptr
+	increase NV_DATA_LEN,temp
+	storet 2,mem_list_item_ptr
+	increase -1,temp
+	ifetch 1,temp
+	store 1,mem_select_list_item
+	increase -1,regc
+	nbranch nvram_find_addr_from_list,zero
+	fetch 1,mem_nv_data_number
+	pincrease DECREASED_ONE
+	store 1,mem_select_list_item
+	rtn
+nvram_find_addr_from_list_compare:
+	fetch 1,mem_temp_reconn_record
+	bne REC_3_MODE,find_addr_from_list_compare_ble_mode
+find_master_addr_from_list_compare:
+	arg mem_temp_reconn_record,regb
+	arg 7,loopcnt
+	call string_compare
+	branch enable_user,zero
+	rtn
+
+find_addr_from_list_compare_ble_mode:
+	beq REC_4_MODE_RANDOM_RESOLVABLE_PRIVATE_ADDRESS,find_irk_form_list_compare
+	beq REC_4_MODE_RANDOM_NON_RESOLVABLE_PRIVATE_ADDRESS,find_ediv_form_list_compare
+	branch find_master_addr_from_list_compare
+
+find_irk_form_list_compare:
+	ifetcht 1,rega
+	isub temp,null
+	nrtn zero
+	arg mem_le_prand,contw
+	arg 16,loopcnt
+	call clear_mem
+	fetch 3,mem_le_plap+3
+	store 3,mem_le_prand
+	call genernate_master_MacAddress
+	fetch 2,mem_le_aes_128+13
+	byteswap pdata,pdata
+	lshift8 pdata,temp
+	ifetch 1,contr
+	iadd temp,pdata
+	fetcht 3,mem_le_plap
+	isub temp,null
+	branch enable_user,zero
+	rtn
+
+
+genernate_master_MacAddress:
+	arg mem_le_prand ,contr
+	call load_data128
+//	arg mem_le_irk,contr
+	ifetch 1,rega
+	call load_regext
+	force 0x38,aes_ctrl
+	force 0x0,aes_ctrl
+	call wait_aes
+	arg mem_le_aes_128,contw
+	branch store_aes_result
+
+find_ediv_form_list_compare:
+	ifetcht 1,rega
+	isub temp,null
+	nrtn zero
+	copy contr,rega
+	add contr,8,regc
+	arg mem_le_rand,regb
+	arg 8,loopcnt
+	call string_compare
+	branch enable_user,zero
+	copy regc,rega
+	arg mem_le_irk,regb
+	arg 8,loopcnt
+	call string_compare
+	branch enable_user,zero
+	rtn
+
+check_nvram:
+	fetch 2,mem_nv_data_ptr
+	ifetcht 1,pdata
+	pincrease NV_DATA_LEN
+	ifetch 1,pdata
+	isub temp,null
+	rtn
+
+init_device_list:
+	fetch 1,mem_nv_data_number
+	icopy loopcnt
+	fetcht 2,mem_nv_data_ptr
+	setarg 0
+init_device_list_loop:
+	istore 1,temp
+	increase NV_DATA_LEN,temp
+	pincrease 1
+	loop init_device_list_loop
+	rtn
+
+load_device_list:
+	bpatchx patch33_1,mem_patch33
+	call nvram_find_addr_from_bd_list
+	fetch 1,mem_state
+	setflag user,state_combkey,pdata	/* we have link key */
+	store 1,mem_state
+	nbranch clear_key_exists,user
+	add rega,10,contr
+//	copy rega,contr
+	arg mem_link_key,contw
+	call  memcpy16
+	branch check_link_key_load
+clear_key_exists:
+	jam 0,mem_link_key_exists
+	rtn
+
+load_device_list_mode_4:
+	fetch 9,mem_le_ediv
+	branch clear_ltk_exists,blank
+	call nvram_find_addr_from_bd_list
+	nbranch clear_ltk_exists,user
+	fetch 2,mem_list_item_ptr
+	add pdata,1,contr
+	arg mem_le_irk,contw
+	call  memcpy16
+	arg mem_le_ltk,contw
+	call  memcpy16
+	jam 1,mem_ltk_exists
+	rtn
+
+clear_ltk_exists:
+	jam 0,mem_ltk_exists
+	rtn
+
+
+eeprom_store_le_reconn_info:
+	fetch 6,mem_le_plap
+	store 6,mem_temp_lap
+	jam REC_4_MODE,mem_record_bt_mode
+	branch eeprom_store_reconn_info
+eeprom_store_bd_reconn_info:
+	fetch 6,mem_plap
+	store 6,mem_temp_lap
+	jam REC_3_MODE,mem_record_bt_mode
+eeprom_store_reconn_info:
+	fetch 1,mem_device_option
+	beq dvc_op_module,check_51cmd_update_device_record
+	bbit1 dvc_op_mouse,mouse_store_remote_bdaddr
+	rtn
+	
+
+check_link_key_load:
+	fetch 8,mem_link_key
+	fetcht 8,mem_link_key+8
+	ior temp,pdata
+	rtn blank
+	jam 1,mem_link_key_exists
+	rtn
+	
+
+/* =============== GPIO CONTROL ================= */
+
+
+	//temp [4:0]=GPIO number, 0-31, 
+gpio_set_wake_by_current_state:
+	bpatchx patch33_2,mem_patch33
+	set1 7,temp
+	call gpio_get_bit
+	nsetflag true,7,temp
+	//branch gpio_set_wake
+	//fall through
+	
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active
+gpio_set_wake:
+	bpatchx patch33_3,mem_patch33
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate0 7,temp
+	and temp,0x1f,queue
+	fetch 4,mem_gpio_wakeup_low
+	qsetflag true,pdata
+	store 4,mem_gpio_wakeup_low
+	fetch 4,mem_gpio_wakeup_high
+	nqsetflag true,pdata
+	store 4,mem_gpio_wakeup_high
+	rtn
+	
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active
+gpio_clr_wake:
+	bpatchx patch33_4,mem_patch33
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate0 7,temp
+	and temp,0x1f,queue
+	fetch 4,mem_gpio_wakeup_low
+	qset0 pdata
+	store 4,mem_gpio_wakeup_low
+	fetch 4,mem_gpio_wakeup_high
+	qset0 pdata
+	store 4,mem_gpio_wakeup_high
+	rtn
+
+
+gpio_config_input_nowake:
+	call gpio_clr_wake
+	branch gpio_config_input_without_wake
+
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active
+gpio_config_input:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	ncall gpio_set_wake,wake
+
+gpio_config_input_without_wake:
+	arg core_gpio_pd0,contw
+	call gpio_set_bit
+	setflip gpio_active_bit,temp
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+
+
+gpio_set_high_impedance:
+	arg core_gpio_pd0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_pu0,contw
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+
+
+	//temp [4:0]=GPIO number, 0-31, [7]=0, low active. set gpio to inactive state
+gpio_config_output:	
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	setflip gpio_active_bit,temp
+	call gpio_out
+gpio_config_output0:
+	set1 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+	
+gpio_common:
+	and temp,0x07,queue
+	rshift3 temp,pdata
+	and_into 3,pdata
+	iadd contw,contw
+	ifetch 1,contw
+	rtn
+
+gpio_check_active:
+	arg core_gpio_out0,contw
+	branch get_bit_common
+
+	
+	/* temp is gpio number, return true if gpio active */
+gpio_get_bit:
+	arg core_gpio_in,contw
+get_bit_common:
+	call gpio_common
+	isolate1 gpio_active_bit,temp
+	branch gpio_get_bit_reverse,true
+	qisolate0 pdata
+	rtn
+gpio_get_bit_reverse:
+	qisolate1 pdata
+	rtn
+
+gpio_out_inactive:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate1 7,null
+	branch gpio_out_flag
+
+gpio_out_active:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	isolate0 7,null
+
+	/* temp is gpio number,  [7]=1,set out equa true flag if gpio active */
+gpio_out_flag:
+	setarg 0
+	nsetflag true,gpio_active_bit,pdata
+	ixor temp,temp
+	
+	/* temp is gpio number,0-31, [7]=out bit value */
+gpio_out:
+	arg core_gpio_out0,contw
+
+	//temp [4:0]=GPIO number, 0-31, [7]=bit value; contw is gpio reg base
+gpio_set_bit:
+	call gpio_common
+	isolate1 gpio_active_bit,temp
+	qsetflag true,pdata
+	istore 1,contw
+	rtn
+
+gpio_set_before_lpm_common:
+	arg -1,rega
+	hfetch 1,core_gpio_sel1
+	compare 0x02,pdata,0x03
+	call neglact4_from_23_pin,true	//spi
+
+	compare 0x01,pdata,0x03
+	call neglact2_form_25_pin,true	//two spi gpio25 26
+
+	compare 0x03,pdata,0x03
+	call neglact2_form_25_pin,true	//two spi gpio30 31
+	 	 
+	isolate1 2,pdata
+	call neglect2_from_6_pin,true	//uart
+	 
+	isolate1 3,pdata
+	call neglect4_from_9_pin,true	//spi
+
+	isolate1 4,pdata
+	call neglact2_form_30_pin,true	//IIC GPIO30 31
+
+	isolate1 6,pdata
+	nsetflag true,04,rega			//pwm0 gpio4
+
+	isolate1 7,pdata
+	nsetflag true,05,rega			//pwm1 gpio5
+
+	hfetch 1,core_gpio_sel2
+	isolate1 0,pdata
+	nsetflag true,27,rega			//pwm2 gpio27
+	isolate1 1,pdata
+	nsetflag true,28,rega			//pwm3 gpio28
+	isolate1 2,pdata
+	nsetflag true,03,rega			//pwm4 gpio03
+	isolate1 3,pdata
+	nsetflag true,08,rega			//pwm5 gpio08
+	isolate1 4,pdata
+	nsetflag true,20,rega			//pwm0 gpio20
+	isolate1 5,pdata
+	nsetflag true,21,rega			//pwm1 gpio21
+	isolate1 6,pdata
+	nsetflag true,22,rega			//pwm2 gpio22
+	isolate1 7,pdata
+	nsetflag true,23,rega			//pwm3 gpio23
+		
+	hfetch 1,core_gpio_sel
+	isolate1 0,pdata
+	nsetflag true,05,rega			//ADC GPIO05
+	isolate1 1,pdata
+	nsetflag true,06,rega			//ADC GPIO06
+	isolate1 2,pdata
+	nsetflag true,07,rega			//ADC GPIO07
+	isolate1 3,pdata
+	nsetflag true,18,rega			//ADC GPIO18
+	isolate1 4,pdata
+	nsetflag true,19,rega			//ADC GPIO19
+	isolate1 5,pdata
+	nsetflag true,20,rega			//ADC GPIO20
+	isolate1 6,pdata
+	nsetflag true,21,rega			//ADC GPIO21
+	isolate1 7,pdata
+	nsetflag true,22,rega			//ADC GPIO22
+	
+	hfetch 1,core_uart_ctrl
+	isolate1 4,pdata
+	call neglact2_form_2_pin,true
+	bpatchx patch33_5,mem_patch33
+
+	hfetch 4,core_gpio_pu0
+	hfetcht 4,core_gpio_pd0
+	ior temp,pdata
+	invert pdata,pdata
+	iand rega,pdata
+	//set0 4,pdata //revc
+	hstore 4,core_gpio_oe0
+	rtn
+	
+	
+neglect2_from_6_pin: //uart
+	 arg 6,queue
+	 branch neglect_2_pin
+neglect4_from_9_pin:
+	 arg 9,queue
+	 branch neglact_4_pin
+neglact4_from_23_pin:
+	 arg 23,queue
+	 branch neglact_4_pin
+neglact2_form_25_pin:
+	 arg 25,queue
+	 branch neglect_2_pin
+neglact2_form_30_pin:
+	 arg 30,queue
+	 branch neglect_2_pin
+neglact2_form_2_pin:
+	 arg 2,queue
+	 branch neglect_2_pin
+neglact_1_pin:
+	arg 1,loopcnt
+	branch neglect_pin_loop
+neglact_4_pin:
+	 arg 4,loopcnt
+	 branch neglect_pin_loop
+neglect_2_pin:
+	 arg 2,loopcnt
+neglect_pin_loop:
+	 qset0 rega
+	 increase 1,queue
+	 loop neglect_pin_loop
+	 rtn
+
+
+
+
+
+
+/* ===================== sniff GPIO CONTROL ======================= */
+gpio_cfg_uart_tx_output:
+	call gpio_uart2gpio
+	arg UART_WAKEUP_TX,temp
+	branch gpio_config_output
+
+gpio_pu_uart_tx:
+	call gpio_cfg_uart_tx_output
+	arg UART_WAKEUP_TX,temp
+	branch gpio_out_inactive
+
+
+
+gpio_rx_config_input_with_pu:
+	call gpio_uart2gpio
+	hfetch 1, core_gpio_pu0
+	set1 UART_WAKEUP_RX,pdata
+	hstore 1,core_gpio_pu0
+	arg UART_WAKEUP_RX,temp
+	branch gpio_config_input
+	
+gpio_uart2gpio:
+	hfetch 1,core_gpio_sel1
+	and_into 0xfb,pdata
+	hstore 1,core_gpio_sel1
+	rtn
+
+gpio_check_uart_state:
+	hfetch 1,core_gpio_sel1
+	isolate1 2,pdata
+	rtn
+
+load_chip_option:
+	call otp_enable_chgpump
+	setarg OTP_CHIP_FUNCTIONS
+	arg mem_chip_functions,rega
+	arg 0x02,temp
+	call otpd_read_data
+	branch otp_disable_chgpump
+
+
+load_adc_init:
+	call otp_enable_chgpump
+	setarg otp_adc_io_0_5V_addr
+	arg mem_0_5_adc_io_data,rega
+	arg 14,temp
+	call otpd_read_data
+	branch otp_disable_chgpump
+
+
+//mem_adc_config_flag 0:vinlpm 1:Hvin 2: GPIO
+adc_init_data:
+	bpatchx patch33_6,mem_patch33
+
+	call load_adc_init
+	
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,adc_init_data_vinlpm
+	beq ADC_CONFIG_HVIN,adc_init_data_hvin
+	beq ADC_CONFIG_GPIO,adc_init_data_io
+	rtn	
+
+adc_init_data_vinlpm:
+	fetcht 2,mem_otp_adc_flag
+	setarg OTP_ADC_FLAG
+	isub temp,null
+	branch adc_check_data_vinlpm,zero
+	setarg 0x4dfa
+	store 2,mem_3v_adc_vinlpm_data	
+	setarg 0x4894
+	store 2,mem_2v_adc_vinlpm_data
+	branch set_vdd_reference_voltage_1v
+
+adc_check_data_vinlpm:
+	fetch 2,mem_3v_adc_vinlpm_data
+	nbranch adc_check_2v_vinlpm,blank
+	setarg 0x4dfa
+	store 2,mem_3v_adc_vinlpm_data
+adc_check_2v_vinlpm:	
+	fetch 2,mem_2v_adc_vinlpm_data
+	nbranch set_vdd_reference_voltage_1v,blank
+	setarg 0x4894
+	store 2,mem_2v_adc_vinlpm_data
+set_vdd_reference_voltage_1v:
+	setarg 100
+	store 2,mem_reference_voltage //set reference voltage = 1V
+	rtn		
+
+adc_init_data_hvin:
+	fetcht 2,mem_otp_adc_flag
+	setarg OTP_ADC_FLAG
+	isub temp,null
+	branch adc_check_data_hvin,zero
+	setarg 0x5932
+	store 2,mem_5v_adc_hvin_data	
+	setarg 0x4323
+	store 2,mem_1v_adc_hvin_data
+	branch set_vdd_reference_voltage_4v
+
+adc_check_data_hvin:
+	fetch 2,mem_5v_adc_hvin_data
+	nbranch adc_check_1v_hvin,blank
+	setarg 0x5932
+	store 2,mem_5v_adc_hvin_data
+adc_check_1v_hvin:	
+	fetch 2,mem_1v_adc_hvin_data
+	nbranch set_vdd_reference_voltage_4v,blank
+	setarg 0x4323
+	store 2,mem_1v_adc_hvin_data
+set_vdd_reference_voltage_4v:
+	setarg 400
+	store 2,mem_reference_voltage //set reference voltage = 4V
+	rtn 	
+
+adc_init_data_io:
+	fetcht 2,mem_otp_adc_flag
+	setarg OTP_ADC_FLAG
+	isub temp,null
+	branch adc_check_data_io,zero
+	setarg 0x6946
+	store 2,mem_1v_adc_io_data	
+	setarg 0x5377
+	store 2,mem_0_5_adc_io_data
+	branch set_vdd_reference_voltage_0_5v
+
+adc_check_data_io:
+	fetch 2,mem_1v_adc_io_data
+	nbranch adc_check_0_5v_io,blank
+	setarg 0x6946
+	store 2,mem_1v_adc_io_data
+adc_check_0_5v_io:
+	fetch 2,mem_0_5_adc_io_data
+	nbranch set_vdd_reference_voltage_0_5v,blank
+	setarg 0x5377
+	store 2,mem_0_5_adc_io_data
+set_vdd_reference_voltage_0_5v:
+	setarg 50
+	store 2,mem_reference_voltage //set reference voltage = 0.5V
+	rtn	
+
+
+adc_set_mode:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,adc_check_vinlpm
+	beq ADC_CONFIG_HVIN,adc_check_hvin
+	beq ADC_CONFIG_GPIO,adc_check_gpio
+	rtn
+adc_check_vinlpm:
+	jam 0xbf,rf_adc_mode	//read VINLPM voltage directly	
+	branch read_adc
+adc_check_hvin:
+	jam 0xaf,rf_adc_mode	//read HVIN voltage directly
+	branch read_adc
+adc_check_gpio:
+	jam 0x8f,rf_adc_mode
+	fetch 1,mem_adc_channel
+	hstore 1,rf_adc_ch
+	branch read_adc
+read_adc:
+	bpatchx patch33_7,mem_patch33
+	hfetch 1,core_uart_baud + 1
+	set1 7,pdata
+	hstore 1,core_uart_baud + 1 
+	hfetch 1,rf_adc_ch
+	or_into 0x30,pdata
+	hstore 1,rf_adc_ch
+	jam 0x7c,rfen_adc
+	jam 0xaa,rf_adc_gc
+	nop 5000
+	hfetcht 2,core_adc_sum
+	hfetch 1,core_uart_baud + 1
+	set0 7,pdata
+	hstore 1,core_uart_baud + 1
+	storet 2,mem_adc_current_value
+	rtn
+
+vdd_calculate_by_mode:
+	bpatchx patch34_0,mem_patch34
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_VINLPM,vdd_calculate_vinlpm
+	beq ADC_CONFIG_HVIN,vdd_calculate_hvin
+	beq ADC_CONFIG_GPIO,vdd_calculate_io
+	rtn
+
+vdd_calculate_vinlpm:
+	fetch 2,mem_3v_adc_vinlpm_data
+	fetcht 2,mem_2v_adc_vinlpm_data
+	arg 200,regc
+	branch vdd_calculate
+
+vdd_calculate_hvin:
+	fetch 2,mem_5v_adc_hvin_data
+	fetcht 2,mem_1v_adc_hvin_data
+	arg 100,regc
+	branch vdd_calculate
+
+vdd_calculate_io:
+	fetch 2,mem_1v_adc_io_data
+	fetcht 2,mem_0_5_adc_io_data
+	arg 50,regc
+	branch vdd_calculate
+	
+vdd_calculate:
+	isub temp,rega
+	fetch 2,mem_adc_current_value
+	isub temp,pdata
+	nbranch vdd_calculate1,positive
+	fetcht 2,mem_reference_voltage
+	imul32 temp,regb
+	copy regc,pdata
+	imul32 rega,pdata
+	iadd regb,pdata
+vdd_calculate2:
+	idiv rega
+	call wait_div_end
+	quotient pdata	
+	rtn
+
+vdd_calculate1:
+	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
+	isub regb,pdata
+	branch vdd_calculate2
+
+/*	typedef struct
+*	{
+*		uint16 full_vol
+*		uint16 empty_vol
+*		uint16 low_vol
+*		uint16 now_vol
+*	}bat_calculate;
+*/
+//out:	pdata->bat percent
+adc_bat_percent_lowpower_out:
+	ifetch 8,rega
+	store 8,mem_pdatatemp
+	fetch 2,mem_pdatatemp
+	fetcht 2,mem_pdatatemp+2
+	isub temp,rega
+	fetch 2,mem_pdatatemp+6
+	isub temp,regb
+	fetcht 2,mem_pdatatemp+4
+	isub temp,null
+	ncall adc_set_low_power_flag,positive
+	mul32 regb,100,pdata
+	idiv rega
+	call wait_div_end
+	quotient pdata
+	call adc_set_no_power_flag,blank
+	rtn
+adc_set_low_power_flag:
+	fetch 1,mem_adc_power_flag
+	set1 0,pdata
+	store 1,mem_adc_power_flag
+	rtn
+adc_set_no_power_flag:
+	fetcht 1,mem_adc_power_flag
+	set1 1,temp
+	storet 1,mem_adc_power_flag
+	rtn
+
+ifdef SPI_SIMULATE
+/******************************simulate spi slave start**********************************/
+
+/*
+// Define SPI struct, gpio config
+mem_spi_simulate_struct:
+02	#cs
+03	#sclk
+04	#mosi
+05	#miso
+08	#motion
+*/
+
+/*
+Brief: spi_simulate_init_slave
+Input: None
+Output: None
+Return: None
+Brief: cs_gpio,sclk_gpio,mosi_gpio : input
+	miso_gpio : output
+*/
+spi_simulate_init_slave:
+	call spi_simulate_variable_release_slave
+	branch spi_simulate_gpio_config_slave
+
+spi_simulate_variable_release_slave:
+	arg mem_spi_simulate_read_byte_slave,contw
+	arg 53,loopcnt
+	call buffer_release
+	arg mem_spi_simulate_write_byte_slave,contw
+	arg 54,loopcnt
+	branch buffer_release
+
+buffer_release:
+	setarg 0
+buffer_release_loop:
+	istore 1,contw
+	loop buffer_release_loop
+	rtn
+	
+spi_simulate_gpio_config_slave:
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_config_input
+	fetcht 1,mem_spi_simulate_sclk_gpio
+	call gpio_config_input
+	fetcht 1,mem_spi_simulate_mosi_gpio
+	call gpio_config_input
+	fetcht 1,mem_spi_simulate_miso_gpio
+	call gpio_config_output
+	fetcht 1,mem_spi_simulate_motion_gpio
+	call gpio_config_output
+	branch spi_simulate_motion_disable
+
+spi_simulate_motion_enable:
+	fetcht 1,mem_spi_simulate_motion_gpio
+	branch gpio_out_inactive
+spi_simulate_motion_disable:
+	fetcht 1,mem_spi_simulate_motion_gpio
+	branch gpio_out_active
+	
+/*
+Brief: spi_simulate_read_byte_slave
+Input: rega: read length
+Output: mem_spi_simulate_read_byte_slave: read buffer
+Return: None
+Brief: when the cs_gpio is low level,slave reads data from master at the rising edge of the sclk gpio
+*/
+spi_simulate_read_byte_slave:
+	copy rega,pdata
+	store 1,mem_spi_simulate_read_length_slave
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	nrtn true
+spi_simulate_read_byte_slave1:	
+	jam 0,mem_spi_simulate_read_byte_slave_temp
+	arg 8,loopcnt
+spi_simulate_read_byte_slave_loop:
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	nbranch spi_simulate_read_byte_slave_end,true
+	
+	fetcht 1, mem_spi_simulate_sclk_gpio
+	call gpio_get_bit
+	branch spi_simulate_read_byte_slave_loop,true	
+	fetch 1,mem_spi_simulate_read_byte_slave_temp
+	lshift pdata,pdata
+	store 1,mem_spi_simulate_read_byte_slave_temp
+	fetcht 1, mem_spi_simulate_mosi_gpio
+	call gpio_get_bit
+	ncall spi_simulate_read_byte_or_one,true
+spi_simulate_read_byte_slave_loop1:	
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	nbranch spi_simulate_read_byte_slave_end,true
+
+	fetcht 1, mem_spi_simulate_sclk_gpio
+	call gpio_get_bit
+	nbranch spi_simulate_read_byte_slave_loop1,true
+	loop spi_simulate_read_byte_slave_loop
+	
+	fetcht 1,mem_spi_simulate_read_length_slave_temp
+	setarg mem_spi_simulate_read_byte_slave
+	iadd temp,contw
+	copy contw,regb
+	increase 1,temp
+	storet 1,mem_spi_simulate_read_length_slave_temp
+	fetch 1,mem_spi_simulate_read_byte_slave_temp
+	copy regb,contw
+	istore 1,contw
+
+	fetch 1,mem_spi_simulate_read_length_slave
+	increase -1,pdata
+	store 1,mem_spi_simulate_read_length_slave
+	nbranch spi_simulate_read_byte_slave1,blank
+	
+spi_simulate_read_byte_slave_loop2:	
+	fetcht 1, mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	nbranch spi_simulate_read_byte_slave_loop2,true
+spi_simulate_read_byte_slave_end:	
+	jam 0,mem_spi_simulate_read_length_slave
+	jam 0,mem_spi_simulate_read_length_slave_temp
+	jam 0,mem_spi_simulate_read_byte_slave_temp
+	rtn
+
+spi_simulate_read_byte_or_one:
+	fetch 1,mem_spi_simulate_read_byte_slave_temp
+	or_into 1,pdata
+	store 1,mem_spi_simulate_read_byte_slave_temp
+	rtn
+
+
+/*
+Brief: spi_simulate_write_byte_slave
+Input: rega: write length;  write buffer:mem_spi_simulate_write_byte_slave;
+Output: None
+Return: None
+Brief: when the cs_gpio is low level,slave writes data to master at the falling edge of the sclk gpio
+*/
+spi_simulate_write_byte_slave:
+	copy rega,pdata
+	store 1,mem_spi_simulate_write_length_slave
+	jam 0,mem_spi_simulate_write_length_slave_temp
+	jam 0,mem_spi_simulate_write_byte_slave_temp
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	nrtn true
+spi_simulate_write_byte_slave1:
+	fetcht 1,mem_spi_simulate_write_length_slave_temp
+	setarg mem_spi_simulate_write_byte_slave
+	iadd temp,contr
+	copy contr,regb
+	increase 1,temp
+	storet 1,mem_spi_simulate_write_length_slave_temp
+	copy regb,contr
+	ifetch 1,contr
+	store 1,mem_spi_simulate_write_byte_slave_temp
+	
+	arg 8,loopcnt
+spi_simulate_write_byte_slave_loop:
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	nbranch spi_simulate_write_byte_slave_end,true
+	fetcht 1, mem_spi_simulate_sclk_gpio
+	call gpio_get_bit
+	branch spi_simulate_write_byte_slave_loop,true
+spi_simulate_write_byte_slave_loop1:
+	fetch 1,mem_spi_simulate_write_byte_slave_temp
+	store 1,mem_spi_simulate_write_byte_slave_temp_temp
+	and_into 0x80,pdata
+	beq 0x80,spi_simulate_set_miso_gpio_high
+	call spi_simulate_set_miso_gpio_low
+spi_simulate_write_byte_slave_loop2:
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	nbranch spi_simulate_write_byte_slave_end,true
+	fetcht 1, mem_spi_simulate_sclk_gpio
+	call gpio_get_bit
+	nbranch spi_simulate_write_byte_slave_loop2,true	
+	fetch 1,mem_spi_simulate_write_byte_slave_temp_temp
+	lshift pdata,pdata
+	store 1,mem_spi_simulate_write_byte_slave_temp
+	loop spi_simulate_write_byte_slave_loop
+
+	fetch 1,mem_spi_simulate_write_length_slave
+	increase -1,pdata
+	store 1,mem_spi_simulate_write_length_slave
+	nbranch spi_simulate_write_byte_slave1,blank
+	
+spi_simulate_write_byte_slave_loop3:
+	fetcht 1,mem_spi_simulate_cs_gpio
+	call gpio_get_bit
+	branch spi_simulate_write_byte_slave_loop3,true
+spi_simulate_write_byte_slave_end:	
+	jam 0,mem_spi_simulate_write_length_slave_temp
+	jam 0,mem_spi_simulate_write_byte_slave_temp
+	jam 0,mem_spi_simulate_write_byte_slave_temp_temp
+	rtn
+	
+spi_simulate_set_miso_gpio_high:
+	fetcht 1,mem_spi_simulate_miso_gpio
+	call gpio_out_inactive
+	branch spi_simulate_write_byte_slave_loop2
+spi_simulate_set_miso_gpio_low:
+	fetcht 1,mem_spi_simulate_miso_gpio
+	branch gpio_out_active	
+
+/******************************simulate spi slave end**********************************/
+
+endif  //SPI_SIMULATE
+
+
+/****************************************key scan***************************************/
+keyscan_key_init:
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_key_init_next:
+	rtn blank
+	copy pdata,loopcnt
+//	copy contr,rega
+	fetch 2,mem_keyscan_ptr
+	increase 3,pdata	//mem_key_conf0_pin
+	copy pdata,rega
+keyscan_key_init_lp1:
+	ifetcht 1, rega
+	call gpio_config_input
+	increase KEY_CONF_STRUCT_LEN,rega
+	loop keyscan_key_init_lp1
+keyscan_key_init_end:
+	rtn
+	
+keyscan_scan_key:
+	fetch 2,mem_keyscan_ptr
+	increase 3,pdata	//mem_key_conf0_pin
+	copy pdata,rega
+//	arg mem_key_conf0_pin,rega
+	force 0,regb
+	jam 0,mem_key_value_temp
+keyscan_scan_key_lp1:
+	ifetcht 1, rega
+	call gpio_get_bit
+	bpatchx patch34_1,mem_patch34
+	fetch 2, mem_key_value_temp
+	copy regb,queue
+	qsetflag true,pdata
+	store 2, mem_key_value_temp
+	increase KEY_CONF_STRUCT_LEN,rega
+	increase 1,regb
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_scan_key_lp1_next:
+	ixor regb,null
+	nbranch keyscan_scan_key_lp1,zero
+	fetch 2,mem_key_value_temp
+	fetcht 2,mem_key_value
+	ixor temp,null
+	rtn zero
+	enable user
+	rtn
+
+keyscan_process_lpm_before:
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_process_lpm_before_next:
+	rtn blank
+	copy pdata,loopcnt
+	fetch 2,mem_keyscan_ptr 
+	increase 3,pdata	//mem_key_conf0_pin
+	copy pdata,rega
+keyscan_process_lpm_before_lp1:
+	ifetcht 1, rega
+	call gpio_set_wake_by_current_state
+	increase KEY_CONF_STRUCT_LEN,rega
+	loop keyscan_process_lpm_before_lp1
+keyscan_process_lpm_before_end:
+	rtn
+
+keyscan_key_process:
+	arg key_scan_timer,queue
+	call timer_check
+	nrtn blank
+	setarg 0x20
+	arg key_scan_timer,queue
+	call timer_init
+	disable user
+	call keyscan_process_lpm_before
+	bpatchx patch34_2,mem_patch34
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_key_process_next:
+	rtn blank
+	call keyscan_scan_key
+	nbranch lpm_button_clean_wake_lock,user
+	call lpm_button_get_wake_lock
+	disable user
+	fetch 2, mem_key_value_temp
+	store 2,mem_key_value_temp4
+	jam 0,mem_key_value_temp6
+	force 0,queue
+keyscan_key_lp1:
+	fetch 2, mem_key_value
+	rshift pdata,temp
+	storet 2,mem_key_value
+	and pdata,0x01,pdata
+	fetcht 2, mem_key_value_temp4
+	and temp,0x01,rega
+	rshift temp,temp
+	storet 2,mem_key_value_temp4
+	ixor rega,null
+	ncall keyscan_send_key_data,zero
+	fetch 2,mem_key_num_ptr
+	ifetch 1,pdata
+keyscan_key_lp1_next:
+	fetcht 1, mem_key_value_temp6
+	increase 1,temp
+	storet 1, mem_key_value_temp6
+	copy temp,queue
+	ixor queue,null
+	nbranch keyscan_key_lp1,zero
+	fetch 2,mem_key_value_temp
+	store 2, mem_key_value
+	rtn
+keyscan_send_key_data:
+	bpatchx patch34_3,mem_patch34
+	fetch 2,mem_keyscan_ptr
+	increase 1,pdata
+	ifetch 2,pdata
+	branch callback_func
+
+
+/*************************************pwm*************************************/
+
+//rega:clk select(0:system clk; 1:system clk undivied; 2:lpo)
+/*rega:clk select
+			0x00:select system clock 12M;
+			0x40:select undivied system clock 24M/48M;
+			0x80:select lpo clock:33K
+*/
+pwm_init:
+	hfetch 1,core_clksel
+	ior rega,pdata
+	hstore 1,core_clksel
+	hfetch 2,core_clkoff
+	set0 CLOCK_OFF_PWM,pdata
+	hstore 2,core_clkoff
+delay_nop100:
+	nop 100
+	rtn
+
+/*	typedef struct
+*	{
+*		uint8 gpio_num
+*		uint8 pwm_channel
+*		uint24 frequency
+*		uint8 duty_cycle   //0-100
+*	}PWM_Style;
+	addr: mem_pdatatemp
+*/
+pwm_out_set:
+	fetcht 3,mem_pdatatemp+2
+	setarg PWM_12MHZ
+	idiv temp
+	call wait_div_end
+	quotient temp
+	fetch 1,mem_pdatatemp+5
+	imul32 temp,pdata
+	div pdata,100
+	call wait_div_end
+	quotient rega
+	copy temp,pdata
+	isub rega,regb	
+	fetch 1,mem_pdatatemp+1
+	call pwm_duty_cycle_set
+	fetch 1,mem_pdatatemp
+	branch pwm_enable
+
+//rega:pcnt ;regb:ncnt ;pdata:pwm channel select
+pwm_duty_cycle_set:
+	beq 0,pwm_pwm0_duty_set
+	beq 1,pwm_pwm1_duty_set
+	beq 2,pwm_pwm2_duty_set
+	beq 3,pwm_pwm3_duty_set
+	beq 4,pwm_pwm4_duty_set
+	beq 5,pwm_pwm5_duty_set
+pwm_pwm0_duty_set:
+	arg core_pwm_pcnt0,contw
+	branch pwm_set_pncnt
+pwm_pwm1_duty_set:
+	arg core_pwm_pcnt1,contw
+	branch pwm_set_pncnt
+pwm_pwm2_duty_set:
+	arg core_pwm_pcnt2,contw
+	branch pwm_set_pncnt
+pwm_pwm3_duty_set:
+	arg core_pwm_pcnt3,contw
+	branch pwm_set_pncnt
+pwm_pwm4_duty_set:
+	arg core_pwm_pcnt4,contw
+	branch pwm_set_pncnt
+pwm_pwm5_duty_set:
+	arg core_pwm_pcnt5,contw
+	branch pwm_set_pncnt
+pwm_set_pncnt:
+	copy rega,pdata
+	istore 2,contw
+	copy regb,pdata
+	istore 2,contw
+	rtn
+
+
+//pdata:gpio select
+pwm_enable:
+	enable user
+	branch pwm_gpio_set
+pwm_disable:
+	disable user
+pwm_gpio_set:
+	beq 4,pwm_gpio4_set
+	beq 5,pwm_gpio5_set
+	beq 27,pwm_gpio27_set
+	beq 28,pwm_gpio28_set
+	beq 3,pwm_gpio3_set
+	beq 8,pwm_gpio8_set
+	beq 20,pwm_gpio20_set
+	beq 21,pwm_gpio21_set
+	beq 22,pwm_gpio22_set
+	beq 23,pwm_gpio23_set
+	rtn
+
+
+pwm_gpio4_set:	//pwm 0
+	arg 6,queue
+	branch pwm_one_set_select
+pwm_gpio5_set:	//pwm 1
+  	arg 7,queue
+	branch pwm_one_set_select
+pwm_gpio27_set:	//pwm 2
+  	arg 8,queue
+	branch pwm_one_set_select
+pwm_gpio28_set:	//pwm 3
+	arg 9,queue
+	branch pwm_one_set_select
+pwm_gpio3_set:	//pwm 4
+ 	arg 10,queue
+	branch pwm_one_set_select
+pwm_gpio8_set:	//pwm 5
+  	arg 11,queue
+	branch pwm_one_set_select
+pwm_gpio20_set:	//pwm 0
+  	arg 12,queue
+	branch pwm_tw0_set_select
+pwm_gpio21_set:	//pwm 1
+  	arg 13,queue
+	branch pwm_tw0_set_select
+pwm_gpio22_set:	//pwm 2
+   	arg 14,queue
+	branch pwm_tw0_set_select
+pwm_gpio23_set:	//pwm 3
+    	arg 15,queue
+	branch pwm_tw0_set_select
+
+pwm_set_select:
+	hfetch 2,core_gpio_sel1
+	qsetflag user,pdata
+	hstore 2,core_gpio_sel1
+	copy rega,queue
+	hfetch 1,core_gpio_key2
+   	qsetflag user,pdata
+   	hstore 1,core_gpio_key2
+	rtn
+
+pwm_one_set_select:
+	add queue,-4,rega
+	branch pwm_set_select
+
+pwm_tw0_set_select:
+	add queue,-10,rega
+	branch pwm_set_select
+
+
+	
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/rfcomm.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/rfcomm.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/rfcomm.prog	(working copy)
@@ -0,0 +1,960 @@
+
+ifdef COMPILE_RFCOMM
+rfcomm_init:
+	rtn wake
+	jam 0,mem_rfcomm_send_more_pkt
+	jam BITS9600,memRemoteRPNBitRate        
+	jam DATABITS8,memRemotePRNDataBits      
+	jam 0x11,memRemotePRNXon
+	jam 0x13,memRemotePRNXoff
+	setarg 0
+	store 3,memRemotePRNStopBit
+	store 1,mem_spp_state                  
+	jam 0,memui_reconnect_mode
+	//branch rfcomm_init_spp
+rfcomm_init_spp:
+	bpatchx patch34_4,mem_patch34
+	setarg 0
+	store 1,mem_spp_state
+	store 1,mem_remote_spp_channel
+	store 1,mem_pn_dlci
+	fetch 1,mem_credit_flag
+	beq CREDIT_ENABLE,rfcomm_init_spp_with_credit
+	jam 0x50,mem_credit_given
+	rtn
+
+rfcomm_init_spp_with_credit:
+	jam 0x00,mem_credit_given
+	rtn
+
+set_CR_bit:
+	or_into 0x02,temp
+	rtn
+
+
+/*below added by koufan*/
+
+/*rfcomm_send */
+
+
+
+	/*rfcomm_calculate_FCS_sabm*/
+	/*input: address in temp*/
+	/*output: FCS in pdata  */
+rfcomm_calculate_FCS_sabm:
+	copy temp,pdata
+	reverse pdata,pdata //address
+	store 1,memFCStemp3
+	force INI_TX_SABM,pdata
+	reverse pdata,pdata
+	store 1,memFCStemp2
+	force 0x01,pdata                        
+	reverse pdata,pdata
+	store 1,memFCStemp1
+	call caculate_fcs
+	copy temp,pdata                        
+	rtn
+rfcomm_calculate_FCS_ua:
+	reverse pdata,pdata //address
+	store 1,memFCStemp3
+	force   RSP_TX_UA, pdata
+	reverse pdata, pdata
+	store   1, memFCStemp2
+	force   0x01, pdata
+	reverse pdata, pdata
+	store   1, memFCStemp1
+	branch caculate_fcs
+	/* FCS return from temp                */
+rfcomm_calculate_FCS_dlci0:
+	fetch 1,mem_rfcomm_initiator
+	branch rfcomm_calculate_FCS_dlci0_res,blank
+	setarg 0x70 //FCS of initiator
+	rtn
+rfcomm_calculate_FCS_dlci0_res:
+	setarg 0xaa//FCS of responder
+	rtn
+	
+rfcomm_save_FCS_uih:
+	reverse pdata, pdata //address 
+	store 1,memFCStemp3                     /* contw distroided                    */
+	force RSP_RX_UIH,pdata 
+	call caculate_UIHdata_fcs
+	fetcht 2,mem_contw_temp
+	copy temp,contw
+	istore 1,contw                      /* save FCS for later use              */
+	copy contw,temp
+	storet 2,mem_contw_temp
+	force RSP_RX_UIH_WDATA,pdata             /* P/F =1 + RSP_RX_UIH                 */
+	call caculate_UIHdata_fcs
+	fetcht 2,mem_contw_temp
+	copy temp,contw
+	istore 1,contw             /* save FCS for later use              */
+	rtn	
+/**********************************************************************/
+/* This subroutine caculates the FCS for UIH data                     */
+/* Input:                                                             */
+/*        the address byte at memFCStemp3(bit reversed), control byte */
+/*        at pdata (not bit reversed)                                 */
+/* Output:                                                            */
+/*        pdata: the FCS                                              */
+/**********************************************************************/  
+caculate_UIHdata_fcs:
+	reverse pdata,pdata
+	store   1,memFCStemp2
+	fetch   2, memFCStemp2                     
+	lshift8 pdata,pdata
+	store 3,mem_mod2div_temp
+	arg     0x107,regA
+	arg 0xf,regB
+	call mod2div
+	xor_into     0xd7, pdata
+	invert  pdata,pdata
+	reverse pdata,pdata
+	rtn
+	
+/**********************************************************************/
+/* This subroutine caculates the FCS                                  */
+/* Input:                                                             */
+/*        the address byte at memFCStemp3, control byte at memFCStemp2*/  
+/*        lenght at memFCStemp1 (all above data are bit reversed)     */
+/* Output:                                                            */
+/*        temp: the FCS                                               */
+/**********************************************************************/     
+caculate_fcs:
+	fetch 3, memFCStemp1                    /* load 3 bytes start at memFCStemp1   */
+	store 3,mem_mod2div_temp
+	arg 0x107,regA
+	arg 0xf,regB  //24bit(memFCStemp1+..+memFCStemp3) - 9bit(regA) = 15bit
+	call mod2div
+	lshift8 pdata,pdata 
+	arg 0x7, regB  //16bit(lshift8 pdata,pdata ) - 9bit(regA) = 7bit
+	call mod2div
+	xor_into     0x2b, pdata		//0x3d
+	invert  pdata, pdata                        
+	reverse pdata, pdata                      /* FCS at pdata                        */
+	copy    pdata, temp
+	rtn
+
+mod2div:
+	arg 0,regC
+	copy regB,loopcnt
+	call right_shift_n // right shift pdata (regB)bit
+	icopy temp
+mod2div_loop:
+	//jam 1,0x1fff
+//mod2div_loop1:
+	//fetch 1,0x1fff
+	//nbranch mod2div_loop1,blank
+	copy temp,pdata
+	lshift regC,regC//quotient
+	bbit0 8, mod2div_not_enough_reduction//the high bit of 0x107
+	ixor regA,temp// temp----remainer
+	increase 1,regC// quotient
+mod2div_not_enough_reduction: //Minuend smaller than Subtrahend
+	lshift temp,temp
+	fetch 3,mem_mod2div_temp
+	increase -1,regB
+	compare 0xff,regB,0xff
+	branch mod2div_end,true
+	copy regB,loopcnt
+	call right_shift_n // right shift pdata (regB)bit
+	isolate1 0,pdata
+	setflag true,0,temp //move a new bit from Dividend(queue) into Minuend(pdata)
+	branch mod2div_loop
+mod2div_end:
+	//output:remainer in pdata
+	rshift  temp,pdata
+	rtn
+
+get_rfcomm_snd_adss:
+	fetcht 1,mem_pn_dlci
+dlci_to_address_cmd:
+	//input DLCI from temp
+	lshift2 temp,temp
+	set1 RFCOMM_ADDRESS_EXT_LEN,temp
+	fetch 1,mem_rfcomm_initiator
+	ncall set_CR_bit,blank
+	storet 1,mem_rfcomm_send_adss
+	rtn
+
+channel_to_dlci:
+	//input channel from temp
+	lshift temp,temp
+	fetch 1,mem_rfcomm_initiator
+	setflag blank,0,temp //direction in dlci
+	//output dlci to temp
+	rtn
+rfcomm_rx_process_DLCI0_sabm:
+	fetcht 1,mem_current_channel //address
+	jam 0xd7,mem_current_fcs //FCS
+	call rfcomm_send_ua
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_SABM,pdata
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_UA,pdata
+	store 1,mem_rfcomm_state
+	jam 0,mem_rfcomm_initiator
+	branch rfcomm_rx_process_end
+rfcomm_rx_process_DLCI0_ua:
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_UA,pdata
+	store 1,mem_rfcomm_state
+	branch rfcomm_rx_process_end
+
+	
+rfcomm_rx_process:
+	bpatchx patch34_5,mem_patch34
+	fetch 1,memui_reconnect_mode
+	beq NO_RECONNECTION,rfcomm_rx_process_remote_page
+	branch rfcomm_rx_process_reconn
+
+rfcomm_rx_process_remote_page:
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_head_struct
+	fetch 1,mem_current_channel
+	beq 0,parse_dlci0_rp
+	branch parse_uih_rp
+parse_dlci0_rp:
+	bpatchx patch34_6,mem_patch34
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_SABM,rfcomm_rx_process_DLCI0_sabm
+	beq RFCOMM_FRAME_TYPE_UA,rfcomm_rx_process_DLCI0_ua
+	beq RFCOMM_FRAME_TYPE_UIH,parse_DLCI0_rp_uih
+	beq RFCOMM_FRAME_TYPE_DISCONN,parse_uih_rp_spp_disconn_send_event
+	rtn
+
+
+parse_DLCI0_rp_uih:
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_uih_head_struct
+	fetch 1,mem_uih_cmd_type
+	beq UIH_PARAM_NEG_CMD,parse_DLCI0_rp_uih_pn_cmd
+	beq UIH_PARAM_NEG_RES,parse_DLCI0_rp_uih_pn_res
+	beq UIH_MODEM_STATUS_CMD,parse_DLCI0_rp_uih_ms_cmd
+	beq UIH_MODEM_STATUS_RES,parse_DLCI0_rp_uih_ms_res
+	beq UIH_PARAM_CMD_REMOVE_PORT,parse_DLCI0_rp_uih_cmd_port	
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_rp_uih_pn_cmd:
+	call parse_DLCI0_rp_uih_pn_res_common
+
+	branch parse_DLCI0_rp_uih_pn_cmd_spp
+
+parse_DLCI0_rp_uih_pn_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_PN_CMD,pdata
+	set1 RFCOMM_CHANNEL_STATE_PN_RES,pdata
+	store 1,mem_spp_state
+	call rfcomm_send_param_neg_res
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_rp_uih_pn_res:
+	call parse_DLCI0_rp_uih_pn_res_common
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_rp_uih_pn_res_common:
+	call get_param_payload_ptr
+	branch  get_rfcomm_prarmer_negotiation
+
+get_rfcomm_param_modem_status:
+	call get_param_payload_ptr
+	ifetch 1,contr
+	rshift3 pdata,pdata
+	store 1,mem_ms_channel
+	ifetch 1,contr
+	store 1,mem_ms_param
+	rtn
+
+
+get_rfcomm_head_struct:
+	ifetch 1,contr
+	store 1,mem_current_adss
+	rshift3 pdata,pdata
+	store 1,mem_current_channel
+	ifetch 1,contr
+	store 1,mem_current_frame_type
+get_rfcomm_current_length:
+	call get_rfcomm_length_common
+	storet 2,mem_current_length
+	copy contr,pdata
+	store 2,mem_rfcomm_uih_payload_ptr
+	rtn
+
+get_rfcomm_uih_head_struct:
+	ifetch 1,contr
+	rshift pdata,pdata
+	store 1,mem_uih_cmd_type
+	call get_rfcomm_length_common
+	storet 2,mem_uih_length
+	copy contr,pdata
+	store 2,mem_param_payload_ptr
+	rtn
+
+
+get_param_payload_ptr:
+	fetch 2,mem_param_payload_ptr
+	copy pdata,contr
+	rtn
+
+get_rfcomm_length_common:
+	ifetch 1,contr
+	copy pdata,temp
+	rshift temp,temp
+	rtnbit1 0
+	ifetch 1,contr
+	lshift3 pdata,pdata
+	lshift4 pdata,pdata
+	iadd temp,temp
+	rtn
+
+get_rfcomm_prarmer_negotiation:
+	ifetch 1,contr
+	store 1,mem_pn_dlci
+	ifetch 1,contr
+	store 1,mem_pn_credit_flow_type_info
+	ifetch 1,contr
+	store 1,mem_pn_priority
+	ifetch 1,contr
+	store 1,mem_pn_acknowledg_timer
+	ifetch 2,contr
+	store 2,mem_pn_max_frame_size
+	ifetch 1,contr
+	store 1,mem_pn_max_retrans
+	ifetch 1,contr
+	store 1,mem_remote_credits
+	rtn
+
+
+parse_DLCI0_rp_uih_ms_cmd:
+	call get_rfcomm_param_modem_status
+
+	branch parse_DLCI0_rp_uih_ms_cmd_spp
+
+parse_DLCI0_rp_uih_ms_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_CMD,pdata
+	set1 RFCOMM_CHANNEL_STATE_SND_MS_RES,pdata
+	store 1,mem_spp_state
+	fetcht 1,mem_pn_dlci
+	lshift2 temp,temp
+	or_into 3,temp
+	call rfcomm_send_modem_status_res
+	jam MORE_PKT_MSC_CMD_SPP,mem_rfcomm_send_more_pkt
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_rp_uih_ms_res:
+	jam BT_EVT_SPP_CONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	call get_rfcomm_param_modem_status
+	fetch 1,mem_ms_channel
+	sub pdata,1,null
+	branch parse_DLCI0_rp_uih_MS_RES_spp,zero
+	branch assert
+parse_DLCI0_rp_uih_ms_res_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_RES,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_rp_uih_cmd_port:
+	call get_param_payload_ptr
+	ifetch 1,contr
+	store 1,mem_rpn_dlci
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x000e
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	//setarg 5
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch34_7,mem_patch34
+	setarg 0x15ef
+	istore 2,contw
+	setarg 0x1191
+	istore 2,contw
+	//fetch 1,mem_pn_dlci
+	//setarg 0x0b
+	fetch 1,mem_rpn_dlci
+	istore 1,contw //DLCI
+	setarg 0x000007
+	istore 5,contw
+//	setarg 0 //max frame size
+//	istore 2,contw 
+	setarg 0x01 //max retrans
+	istore 2,contw
+//	setarg 0x00
+//	istore 1,contw // init credits
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+
+
+
+parse_uih_rp:
+	branch parse_uih_rp_spp
+
+parse_uih_rp_spp:
+	bpatchx patch35_0,mem_patch35
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_UA,parse_uih_rp_spp_ua
+	beq RFCOMM_FRAME_TYPE_SABM,parse_uih_rp_spp_sabm
+	beq RFCOMM_FRAME_TYPE_UIH,parse_uih_spp_uih
+	beq RFCOMM_FRAME_TYPE_UIH_CREDITS,parse_uih_spp_uih_credits
+	beq RFCOMM_FRAME_TYPE_DISCONN,parse_uih_rp_spp_disconn
+	rtn
+parse_uih_rp_spp_ua:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_UA,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+parse_uih_rp_spp_sabm:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_UA,pdata
+	set1 RFCOMM_CHANNEL_STATE_SABM,pdata
+	store 1,mem_spp_state
+	fetch 1,mem_current_adss
+	call rfcomm_calculate_FCS_ua
+	store 1,mem_current_fcs
+	call rfcomm_send_ua
+	fetch 1,mem_current_adss
+	rshift2 pdata,pdata
+	store 1,mem_pn_dlci
+	lshift2 pdata,pdata
+	set0 RFCOMM_ADDRESS_CR,pdata
+	set1 RFCOMM_ADDRESS_EXT_LEN,pdata 
+	arg mem_HIUfcs_spp,temp // mem_HIUfcs_HF_WCredits in regB++
+	storet 2,mem_contw_temp
+	call rfcomm_save_FCS_uih
+	branch rfcomm_rx_process_end
+	
+parse_uih_spp_uih_credits:
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	increase 1,pdata
+	store 2,mem_rfcomm_uih_payload_ptr
+	ifetch 1,contr //remote credits
+	fetcht 1,mem_remote_credits
+	iadd temp,pdata
+	store 1,mem_remote_credits
+parse_uih_spp_uih:
+	call rfcomm_increase_credit_given
+parse_uih_spp_uih_cont:
+	call get_rfcomm_snd_adss
+	call rfcomm_send_uih_without_payload
+	call spp_process_rx_data
+	branch rfcomm_rx_process_end
+
+parse_uih_rp_spp_disconn_send_event:
+	jam BT_EVT_SPP_DISCONNECTED,mem_fifo_temp
+	call ui_ipc_send_event	
+parse_uih_rp_spp_disconn:
+	call rfcomm_init_spp
+	fetch 1,mem_current_adss
+	call rfcomm_calculate_FCS_ua
+	store 1,mem_current_fcs
+	call rfcomm_send_ua
+	branch rfcomm_rx_process_end
+	
+///////////////////////////////////////////
+///////////////////////////////////////////
+///////////////////////////////////////////
+rfcomm_rx_process_reconn:
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_head_struct
+	fetch 1,mem_current_channel
+	beq 0,parse_DLCI0_reconn
+	branch parse_uih_reconn
+		
+parse_DLCI0_reconn:
+	bpatchx patch35_1,mem_patch35
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_SABM,rfcomm_rx_process_DLCI0_sabm
+	beq RFCOMM_FRAME_TYPE_UA,rfcomm_rx_process_DLCI0_ua
+	beq RFCOMM_FRAME_TYPE_UIH,parse_DLCI0_reconn_uih
+	branch rfcomm_rx_process_end
+parse_DLCI0_reconn_uih:
+	fetch 2,mem_rfcomm_uih_payload_ptr
+	copy pdata,contr
+	call get_rfcomm_uih_head_struct
+	fetch 1,mem_uih_cmd_type
+	beq UIH_PARAM_NEG_CMD,parse_DLCI0_reconn_uih_pn_cmd
+	beq UIH_PARAM_NEG_RES,parse_DLCI0_reconn_uih_pn_cmd
+	beq UIH_MODEM_STATUS_CMD,parse_DLCI0_reconn_uih_ms_cmd
+	beq UIH_MODEM_STATUS_RES,parse_DLCI0_reconn_uih_ms_res
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_reconn_uih_pn_cmd:
+	call parse_DLCI0_rp_uih_pn_res_common
+	fetch 1,mem_pn_dlci
+	rshift pdata,pdata
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_DLCI0_reconn_uih_pn_cmd_spp,zero
+	branch assert
+parse_DLCI0_reconn_uih_pn_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_PN_RES,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+
+parse_DLCI0_reconn_uih_ms_cmd:
+	call get_rfcomm_param_modem_status
+	fetch 1,mem_ms_channel
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_DLCI0_reconn_uih_ms_cmd_spp,zero
+	branch assert
+	branch rfcomm_rx_process_end
+parse_DLCI0_reconn_uih_ms_cmd_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_CMD,pdata
+	set1 RFCOMM_CHANNEL_STATE_SND_MS_RES,pdata
+	store 1,mem_spp_state
+	fetcht 1,mem_pn_dlci
+	lshift2 temp,temp
+	or_into 3,temp
+	call rfcomm_send_modem_status_res
+	branch rfcomm_rx_process_end
+	
+parse_DLCI0_reconn_uih_ms_res:
+	call get_rfcomm_param_modem_status
+	fetch 1,mem_ms_channel
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_DLCI0_reconn_uih_ms_res_spp,zero
+	branch assert
+parse_DLCI0_reconn_uih_ms_res_spp:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_RCV_MS_RES,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+
+parse_uih_reconn:
+	fetch 1,mem_current_channel
+	fetcht 1,mem_remote_spp_channel
+	isub temp,null
+	branch parse_uih_reconn_spp,zero
+	branch assert
+	branch rfcomm_rx_process_end
+
+parse_uih_reconn_spp:
+	fetch 1,mem_current_frame_type
+	beq RFCOMM_FRAME_TYPE_UA,parse_uih_reconn_spp_ua
+	beq RFCOMM_FRAME_TYPE_UIH,parse_uih_spp_uih
+	beq RFCOMM_FRAME_TYPE_UIH_CREDITS,parse_uih_spp_uih_credits
+	beq RFCOMM_FRAME_TYPE_DISCONN,parse_uih_reconn_spp_disconn
+parse_uih_reconn_spp_ua:
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_UA,pdata
+	store 1,mem_spp_state
+	branch rfcomm_rx_process_end
+parse_uih_reconn_spp_sabm:
+	branch parse_uih_reconn_spp_sabm//loop
+parse_uih_reconn_spp_disconn:
+	branch parse_uih_rp_spp_disconn
+rfcomm_rx_process_end:
+	rtn
+	
+rfcomm_send_more_pkt:
+	fetch 1,mem_rfcomm_send_more_pkt
+	rtn blank
+	beq MORE_PKT_MSC_CMD_SPP,rfcomm_send_more_pkt_msc_cmd_spp
+	branch assert
+	
+rfcomm_send_more_pkt_msc_cmd_spp:
+	jam 0,mem_rfcomm_send_more_pkt
+	call l2cap_malloc_rfcomm_channel
+	arg SPP_SLAVE_CHANNEL,temp
+	fetcht 1,mem_pn_dlci
+	lshift2 temp,temp
+rfcomm_send_more_pkt_msc_cmd_spp0:
+	or_into 0x03,temp
+	arg 0xaa,regA
+	call rfcomm_send_modem_status_cmd
+	call l2cap_get_rfcomm_tx_buff
+	copy contw,contr
+	ifetch 2, contr
+	branch assert,blank
+	rtn
+
+rfcomm_send_sabm:
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0004
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_current_adss
+	istore 1,contw //address
+	bpatchx patch35_2,mem_patch35
+	setarg 0x013f
+	istore 2,contw
+	fetch 1,mem_current_fcs
+	istore 1,contw
+	rtn
+rfcomm_send_ua:
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0004
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_current_adss
+	istore 1,contw //address
+	bpatchx patch35_3,mem_patch35
+	setarg 0x0173
+	istore 2,contw
+	fetch 1,mem_current_fcs
+	istore 1,contw
+	rtn
+rfcomm_send_param_neg_cmd:
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x000e
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_4,mem_patch35
+	setarg 0x15ef
+	istore 2,contw
+	setarg 0x1183
+	istore 2,contw
+	copy temp,pdata //DLCI in temp
+	istore 1,contw
+	setarg 0x0000f0
+	istore 3,contw
+	setarg RFCOMM_MAX_FRAME_SIZE
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	setarg 0x01		//change here later
+	istore 1,contw
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	jam 0x10,mem_credit_given
+	rtn
+rfcomm_send_param_neg_res:
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x000e
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_5,mem_patch35
+	setarg 0x15ef
+	istore 2,contw
+	setarg 0x1181
+	istore 2,contw
+	fetch 1,mem_pn_dlci
+	istore 1,contw //DLCI
+	setarg 0x0000e0
+	istore 3,contw
+	fetch 2,mem_rfcomm_max_frame_size
+	istore 2,contw 
+	setarg 0x00 //max retrans
+	istore 1,contw
+	fetch 1,mem_rfcomm_credit_init_data
+	istore 1,contw // init credits
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+rfcomm_send_modem_status_cmd:
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0008
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_6,mem_patch35
+	setarg 0x09ef
+	istore 2,contw
+	setarg 0x05e3
+	istore 2,contw
+	copy temp,pdata //DLCI adress
+	istore 1,contw
+	setarg 0x8d
+	istore 1,contw
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+
+rfcomm_send_modem_status_res:
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x0008
+	istore 2,contw //l2cap len
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw//cid
+	copy temp,timeup
+	fetch 1,mem_rfcomm_initiator
+	lshift pdata,pdata
+	set1 0,pdata //ext len
+	istore 1,contw //DLCI0 address
+	bpatchx patch35_7,mem_patch35
+	setarg 0x09ef
+	istore 2,contw
+	setarg 0x05e1
+	istore 2,contw
+	copy timeup,pdata //DLCI address in temp
+	istore 1,contw
+	setarg 0x8d
+	istore 1,contw
+	call rfcomm_calculate_FCS_dlci0
+	istore 1,contw
+	rtn
+
+rfcomm_send_uih_without_payload:
+	bpatchx patch36_0,mem_patch36
+	fetch 1,mem_credit_given
+	rtn blank
+	hfetch 2,core_uart_rxitems
+	nrtn blank
+	copy rega,pdata
+	store 1,mem_pdatatemp+1
+	storet 1,mem_pdatatemp
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	call l2cap_malloc_rfcomm_channel
+	call l2cap_get_rfcomm_tx_buff
+	setarg 0x05
+	istore 2,contw
+	fetch 2,mem_RFCOMM_remote_CID
+	istore 2,contw
+	fetch 1,mem_rfcomm_send_adss
+	istore 1,contw
+	setarg 0x01ff
+	istore 2,contw
+	fetch 1,mem_credit_given
+	istore 1,contw
+	fetch 1,mem_HIUfcs_SPP_WCredits
+	istore 1,contw
+	jam 0,mem_credit_given
+	rtn
+	
+rfcomm_increase_credit_given:
+	bpatchx patch36_1,mem_patch36
+	fetch 1,mem_credit_flag
+	rtneq CREDIT_ENABLE
+	fetch 2,mem_current_length
+	rtn blank
+	fetch 1,mem_credit_given
+	increase 1,pdata
+	store 1,mem_credit_given
+	rtn
+
+spp_process_rx_data:
+	fetch 2,mem_cb_receive_spp_data
+	branch callback_func
+
+spp_tx_rfcomm_packet:
+	bpatchx patch36_2,mem_patch36
+	//credit
+	fetch 1,mem_remote_credits
+	rtn blank
+	increase -1,pdata
+	store 1,mem_remote_credits
+	fetch 2,mem_pn_max_frame_size
+	fetcht 2,mem_current_packet_length
+	isub temp,null
+	branch ssp_tx_rfcomm_from_uart,positive
+	store 2,mem_current_packet_length
+ssp_tx_rfcomm_from_uart:
+	fetch 1,mem_credit_given
+	branch ssp_tx_rfcomm_from_uart_without_credit,blank
+	jam 1,mem_rfcomm_send_offset
+	fetch 1,mem_HIUfcs_SPP_WCredits
+	store 1,mem_rfcomm_send_fcs
+	setarg RSP_RX_UIH_WDATA
+	store 1,mem_rfcomm_send_frame_type
+	branch ssp_tx_rfcomm_from_uart_common
+ssp_tx_rfcomm_from_uart_without_credit:
+	jam 0,mem_rfcomm_send_offset
+	fetch 1,mem_HIUfcs_SPP
+	store 1,mem_rfcomm_send_fcs
+	setarg RSP_TX_UIH
+	store 1,mem_rfcomm_send_frame_type
+ssp_tx_rfcomm_from_uart_common:
+	bpatchx patch36_3,mem_patch36
+	fetch 2,mem_current_packet_length
+	sub pdata,127,null
+	branch ssp_tx_rfcomm_from_uart_common0,positive
+	fetch 1,mem_rfcomm_send_offset
+	increase 1,pdata
+	store 1,mem_rfcomm_send_offset
+ssp_tx_rfcomm_from_uart_common0:
+	call get_rfcomm_snd_adss
+	fetch 2,mem_current_packet_length
+	increase 8,pdata	//fcs + rfcommhead + l2caphead == 8
+	fetcht 1,mem_rfcomm_send_offset
+	iadd temp,rega
+	//rfcomm payload
+	call l2cap_malloc
+	store 2,mem_rfcomm_tx_buff_ptr
+	increase 4,pdata
+	store 2,mem_rfcomm_tx_payload_ptr
+	copy pdata,contw
+	fetch 1,mem_rfcomm_send_adss
+	istore 1,contw
+	fetch 1,mem_rfcomm_send_frame_type
+	istore 1,contw
+	call ssp_tx_write_length
+	call ssp_tx_write_given_credit
+	bpatchx patch36_4,mem_patch36
+	fetch 2,mem_nl_rx_data_src		//src
+	copy pdata,contru
+	fetch 2,mem_current_packet_length
+	copy pdata,loopcnt
+	call uart_copy_rx_bytes_fast
+	copy contw,temp
+	copy contru,pdata
+	store 2,mem_nl_rx_data_src
+	copy temp,contw	
+	fetch 1,mem_rfcomm_send_fcs
+	istore 1,contw
+	fetch 2,mem_rfcomm_tx_buff_ptr
+	copy pdata,contw
+	fetch 2,mem_current_packet_length
+	fetcht 1,mem_rfcomm_send_offset
+	iadd temp,pdata
+	increase 4,pdata
+	istore 2,contw
+	fetch 2,mem_rfcomm_remote_cid
+	istore 2,contw
+	jam 0,mem_credit_given	//whatever mem_credit_given is set to 0
+	fetch 2,mem_nl_rx_len_all
+	beq 0,module_hci_command_tx_spp_tx_complete
+	jam HCI_NOT_DISCARD_PACKET,mem_module_temp_nl_discard_packet
+	rtn
+
+ssp_tx_write_length:
+	bpatchx patch36_5,mem_patch36
+	fetch 2,mem_current_packet_length
+	sub pdata,0x7f,null
+	nbranch ssp_tx_write_long_packet,positive
+	lshift pdata,pdata
+	set1 0,pdata
+	istore 1,contw
+	rtn
+ssp_tx_write_long_packet:
+	fetch 2,mem_current_packet_length
+	rshift3 pdata,pdata
+	rshift4 pdata,temp
+	and_into 0x7f,pdata
+	lshift pdata,pdata
+	set0 0,pdata
+	istore 1,contw
+	istoret 1,contw
+	rtn
+ssp_tx_write_given_credit:
+	fetch 1,mem_credit_given
+	rtn blank
+	istore 1,contw
+	rtn
+
+	
+
+
+else
+
+rfcomm_init:
+	rtn
+rfcomm_init_spp:
+set_CR_bit:
+rfcomm_calculate_FCS_sabm:
+rfcomm_calculate_FCS_ua:
+rfcomm_calculate_FCS_dlci0:
+rfcomm_calculate_FCS_dlci0_res:
+rfcomm_save_FCS_uih:
+caculate_UIHdata_fcs:
+caculate_fcs:
+mod2div:
+mod2div_loop:
+mod2div_not_enough_reduction:
+mod2div_end:
+get_rfcomm_snd_adss:
+dlci_to_address_cmd:
+dlci_to_address_res:
+channel_to_dlci:
+rfcomm_rx_process_DLCI0_sabm:
+rfcomm_rx_process_DLCI0_ua:
+rfcomm_rx_process:
+rfcomm_rx_process_remote_page:
+parse_dlci0_rp:
+parse_DLCI0_rp_uih:
+parse_DLCI0_rp_uih_pn_cmd:
+parse_DLCI0_rp_uih_pn_cmd_spp:
+parse_DLCI0_rp_uih_pn_res:
+parse_DLCI0_rp_uih_pn_res_common:
+get_rfcomm_param_modem_status:
+get_rfcomm_head_struct:
+get_rfcomm_current_length:
+get_rfcomm_uih_head_struct:
+get_param_payload_ptr:
+get_rfcomm_param_length_common:
+get_rfcomm_length_common:
+get_rfcomm_prarmer_negotiation:
+parse_DLCI0_rp_uih_ms_cmd:
+parse_DLCI0_rp_uih_ms_cmd_spp:
+parse_DLCI0_rp_uih_ms_res:
+parse_DLCI0_rp_uih_ms_res_spp:
+parse_uih_rp:
+parse_uih_rp_spp:
+parse_uih_rp_spp_ua:
+parse_uih_rp_spp_sabm:
+parse_uih_spp_uih_credits:
+parse_uih_spp_uih:
+parse_uih_spp_uih_cont:
+parse_uih_rp_spp_disconn:
+rfcomm_rx_process_reconn:
+	branch assert 
+parse_DLCI0_reconn:
+parse_DLCI0_reconn_uih:
+parse_DLCI0_reconn_uih_pn_cmd:
+parse_DLCI0_reconn_uih_pn_cmd_spp:
+parse_DLCI0_reconn_uih_ms_cmd:
+parse_DLCI0_reconn_uih_ms_cmd_spp:
+parse_DLCI0_reconn_uih_ms_res:
+parse_DLCI0_reconn_uih_ms_res_noext:
+parse_DLCI0_reconn_uih_ms_res_spp:
+parse_uih_reconn:
+parse_uih_reconn_spp:
+parse_uih_reconn_spp_ua:
+parse_uih_reconn_spp_sabm:
+parse_uih_reconn_spp_disconn:
+rfcomm_rx_process_end:
+rfcomm_send_more_pkt:
+rfcomm_send_more_pkt_msc_cmd_spp:
+rfcomm_send_sabm:
+rfcomm_send_ua:
+rfcomm_send_param_neg_cmd:
+rfcomm_send_param_neg_res:
+rfcomm_send_modem_status_cmd:
+rfcomm_send_modem_status_res:
+rfcomm_send_uih_without_payload:
+rfcomm_increase_credit_given:
+spp_process_rx_data:
+spp_tx_rfcomm_packet:
+ssp_tx_rfcomm_from_uart:
+ssp_tx_rfcomm_from_uart_without_credit:
+ssp_tx_rfcomm_from_uart_common:
+ssp_tx_rfcomm_from_uart_common0:
+ssp_tx_write_length:
+ssp_tx_write_long_packet:
+ssp_tx_write_given_credit:
+	branch assert
+endif
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/scheduler.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/scheduler.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/scheduler.prog	(working copy)
@@ -0,0 +1,461 @@
+scheduler_process:
+	bpatchx patch36_6,mem_patch36
+	call check_51cmd
+	call app_process_bb_event
+	call process_conn_sm
+/* check the connection state sequence byte */
+	bpatchx patch36_7,mem_patch36
+ifdef SIMPLE_PAIRING
+	call sp_calc_sequence
+	call simple_pairing_sequence
+	call master_simple_paring_sequence
+endif
+//return if it is hci mode. 'cause the following is host part.
+//notify BB to tx a l2cap packet
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	//for conn to MTK 
+	call l2cap_call_proc_sigal_pending
+	call l2cap_malloc_is_fifo_full
+	nrtn blank
+	bpatchx patch37_0,mem_patch37
+//to generat a new l2cap packet
+	call process_upper_sm
+	call l2cap_send_config_req
+ifdef COMPILE_RFCOMM
+	call rfcomm_send_more_pkt//use this function to send msc_cmd after msc_rep sent
+endif
+scheduler_process0:
+	call scheduler_tx_disconnect_hid //may not used
+	bpatchx patch37_1,mem_patch37
+//	call l2cap_malloc_is_fifo_full
+//	nrtn blank
+	branch app_process_bt
+	
+scheduler_tx_disconnect_hid:
+	fetch 1,mem_CONTROL_tasks		
+	bbit1 L2CAP_DISCONNECT_INTERRUPT,L2CAP_disconnect_interrupt_req
+	bbit1 L2CAP_DISCONNECT_CONTROL,L2CAP_disconnect_control_req
+	rtn
+	
+scheduler_tx_l2cap_pkt:
+	bpatchx patch37_2,mem_patch37
+	call l2cap_malloc_is_fifo_empty
+	rtn blank //empty
+	fetch 1,mem_op
+	rtnbit1 op_txl2cap
+	call l2cap_malloc_fifo_out
+	store 2,mem_txptr
+	copy pdata,contr
+	ifetch 2,contr
+	increase 4,pdata
+	store 2,mem_tx_len
+	jam 6,mem_tx_lch//start pkt
+	bpatchx patch37_3,mem_patch37
+	fetch 2,mem_l2cap_tx_multi_offset
+	branch scheduler_tx_l2cap_start_pkt,blank
+	fetch 1,mem_op
+	rtnbit0 op_pkt_comp
+	set0 op_pkt_comp,pdata
+	store 1,mem_op
+	jam 5,mem_tx_lch//continue pkt
+	fetcht 2,mem_l2cap_tx_multi_offset
+	fetch 2,mem_txptr
+	iadd temp,pdata
+	store 2,mem_txptr
+	fetch 2,mem_tx_len
+	isub temp,pdata
+	store 2,mem_tx_len
+scheduler_tx_l2cap_start_pkt:
+	bpatchx patch37_4,mem_patch37
+	fetch 2,mem_tx_len
+	branch assert,blank
+	arg l2cap_max_pkt_len,temp //max len of dh3 pkt
+	isub temp,pdata
+	nbranch scheduler_Tx_l2cap_last_pkt,positive
+	bpatchx patch37_5,mem_patch37
+	storet 2,mem_tx_len //l2cap_max_pkt_len
+	fetch 2,mem_l2cap_tx_multi_offset
+	iadd temp,pdata
+	store 2,mem_l2cap_tx_multi_offset
+	branch scheduler_Tx_l2cap_pkt_end
+scheduler_Tx_l2cap_last_pkt:
+	setarg 0
+	store 2,mem_l2cap_tx_multi_offset
+scheduler_Tx_l2cap_pkt_end:
+	fetch 1,mem_op
+	set1 op_txl2cap,pdata
+	store 1,mem_op
+	rtn
+
+scheduler_start_upper_sm:
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_HID,scheduler_start_upper_sm_hid
+	jam UPPERSM_RECONN_SDP_CONN,mem_upper_sm_reconn
+	rtn
+scheduler_start_upper_sm_hid:
+	jam UPPERSM_RECONN_HID_CTRL_CONN,mem_upper_sm_reconn
+	rtn
+	
+process_upper_sm:
+	fetch 1,memui_reconnect_mode
+	nbranch process_upper_sm_reconn,blank
+process_upper_sm_remote_page:
+	fetch 1,mem_upper_sm_remote_page
+	//beq UPPERSM_RP_IDLE,process_upper_sm_rp_idle
+	rtn blank
+	//nothing to do when remote page to create a connection.
+	jam 0,mem_upper_sm_remote_page
+process_upper_sm_rp_wait:
+	rtn
+
+
+process_upper_sm_reconn:
+	bpatchx patch37_6,mem_patch37
+	fetch 1,mem_upper_sm_reconn
+	rtn blank
+	beq UPPERSM_RECONN_SDP_CONN,process_upper_sm_reconn_sdp_conn
+	beq UPPERSM_RECONN_SDP_CONN_WAIT,process_upper_sm_reconn_sdp_conn_wait
+	beq UPPERSM_RECONN_SDP_CFG,process_upper_sm_reconn_sdp_cfg
+	beq UPPERSM_RECONN_SDP_CFG_WAIT,process_upper_sm_reconn_sdp_cfg_wait
+	beq UPPERSM_RECONN_SS_SPP,process_upper_sm_reconn_ss_spp
+	beq UPPERSM_RECONN_SS_SPP_WAIT,process_upper_sm_reconn_ss_spp_wait
+	beq UPPERSM_RECONN_SDP_DISCONN,process_upper_sm_reconn_sdp_disconn
+	beq UPPERSM_RECONN_SDP_DISCONN_WAIT,process_upper_sm_reconn_sdp_disconn_wait
+	beq UPPERSM_RECONN_HID_CTRL_CONN,process_upper_sm_reconn_hid_ctrl_conn
+	beq UPPERSM_RECONN_HID_CTRL_CONN_WAIT,process_upper_sm_reconn_hid_ctrl_conn_wait
+	beq UPPERSM_RECONN_HID_CTRL_CFG,process_upper_sm_reconn_hid_ctrl_cfg
+	beq UPPERSM_RECONN_HID_CTRL_CFG_WAIT,process_upper_sm_reconn_hid_ctrl_cfg_wait
+	beq UPPERSM_RECONN_HID_INT_CONN,process_upper_sm_reconn_hid_int_conn
+	beq UPPERSM_RECONN_HID_INT_CONN_WAIT,process_upper_sm_reconn_hid_int_conn_wait
+	beq UPPERSM_RECONN_HID_INT_CFG,process_upper_sm_reconn_hid_int_cfg
+	beq UPPERSM_RECONN_HID_INT_CFG_WAIT,process_upper_sm_reconn_hid_int_cfg_wait
+	beq UPPERSM_RECONN_RFCOMM_CONN,process_upper_sm_reconn_rfcomm_conn
+	beq UPPERSM_RECONN_RFCOMM_CONN_WAIT,process_upper_sm_reconn_rfcomm_conn_wait
+	beq UPPERSM_RECONN_RFCOMM_CFG,process_upper_sm_reconn_rfcomm_cfg
+	beq UPPERSM_RECONN_RFCOMM_CFG_WAIT,process_upper_sm_reconn_rfcomm_cfg_wait
+	beq UPPERSM_RECONN_RFCOMM_SABM,process_upper_sm_reconn_rfcomm_sabm
+	beq UPPERSM_RECONN_RFCOMM_SABM_WAIT,process_upper_sm_reconn_rfcomm_sabm_wait
+	beq UPPERSM_RECONN_SPP_CMD_PN,process_upper_sm_reconn_spp_cmd_pn
+	beq UPPERSM_RECONN_SPP_CMD_PN_WAIT,process_upper_sm_reconn_spp_cmd_pn_wait
+	beq UPPERSM_RECONN_SPP_SABM,process_upper_sm_reconn_spp_sabm
+	beq UPPERSM_RECONN_SPP_SABM_WAIT,process_upper_sm_reconn_spp_sabm_wait
+	beq UPPERSM_RECONN_SPP_CMD_MS,process_upper_sm_reconn_spp_cmd_ms
+	beq UPPERSM_RECONN_SPP_CMD_MS_WAIT,process_upper_sm_reconn_spp_cmd_ms_wait
+process_upper_sm_reconn_wait:
+	rtn
+process_upper_sm_reconn_sdp_conn:
+	call upper_sm_send_sdp_conn //return n-user if sending failed
+	jam UPPERSM_RECONN_SDP_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_sdp_state
+	rtn
+process_upper_sm_reconn_sdp_cfg:
+	jam UPPERSM_RECONN_SDP_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_sdp_state
+	rtnbit1 L2CAP_CHANNEL_STATE_SND_CFG_REQ
+	jam UPPERSM_RECONN_SDP_CFG,mem_upper_sm_reconn
+	call upper_sm_send_sdp_cfg //return n-user if sending failed
+	jam UPPERSM_RECONN_SDP_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_sdp_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_sdp_state
+	rtn
+process_upper_sm_reconn_ss_spp:
+	call l2cap_malloc_is_fifo_empty
+	nrtn blank
+	call upper_sm_send_ss_spp
+	jam UPPERSM_RECONN_SS_SPP_WAIT,mem_upper_sm_reconn
+	rtn
+process_upper_sm_reconn_sdp_disconn:
+	call upper_sm_send_sdp_disconn
+	jam UPPERSM_RECONN_SDP_DISCONN_WAIT,mem_upper_sm_reconn
+	rtn
+process_upper_sm_reconn_hid_ctrl_conn:
+	call upper_sm_send_hid_ctrl_conn
+	jam UPPERSM_RECONN_HID_CTRL_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_hid_control_state
+	rtn
+process_upper_sm_reconn_hid_ctrl_cfg:    
+	call upper_sm_send_hid_ctrl_cfg
+	jam UPPERSM_RECONN_HID_CTRL_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_control_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_control_state
+	rtn
+process_upper_sm_reconn_hid_int_conn:
+	call upper_sm_send_hid_int_conn
+	jam UPPERSM_RECONN_HID_INT_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_hid_interrupt_state
+	rtn
+process_upper_sm_reconn_hid_int_cfg:    
+	call upper_sm_send_hid_int_cfg
+	jam UPPERSM_RECONN_HID_INT_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_hid_interrupt_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_hid_interrupt_state
+	rtn
+process_upper_sm_reconn_rfcomm_conn:
+	call upper_sm_send_rfcomm_conn
+	jam UPPERSM_RECONN_RFCOMM_CONN_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_CONN_REQ,pdata
+	store 1,mem_rfcomm_state
+	rtn
+process_upper_sm_reconn_rfcomm_cfg: 
+	call upper_sm_send_rfcomm_cfg
+	jam UPPERSM_RECONN_RFCOMM_CFG_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_STATE_SND_CFG_REQ,pdata
+	store 1,mem_rfcomm_state
+	rtn
+process_upper_sm_reconn_rfcomm_sabm:
+	call upper_sm_send_rfcomm_sabm
+	jam UPPERSM_RECONN_RFCOMM_SABM_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_rfcomm_state
+	set1 L2CAP_CHANNEL_RFCOMM_ONLY_SABM,pdata
+	store 1,mem_rfcomm_state
+	rtn
+process_upper_sm_reconn_spp_cmd_pn: 
+	call upper_sm_send_spp_cmd_pn
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_PN_CMD
+	store 1,mem_spp_state
+	jam UPPERSM_RECONN_SPP_CMD_PN_WAIT,mem_upper_sm_reconn
+	rtn
+process_upper_sm_reconn_spp_sabm:   
+	call upper_sm_send_spp_sabm
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_SABM
+	store 1,mem_spp_state
+	jam UPPERSM_RECONN_SPP_SABM_WAIT,mem_upper_sm_reconn
+	fetch 1,mem_remote_spp_channel //address in pdata
+	lshift3 pdata,pdata
+	or_into 3,pdata
+	arg mem_HIUfcs_SPP,temp // mem_HIUfcs_spp_WCredits in regB++
+	storet 2,mem_contw_temp
+	branch rfcomm_save_FCS_uih
+process_upper_sm_reconn_spp_cmd_ms: 
+	call upper_sm_send_spp_cmd_ms
+	fetch 1,mem_spp_state
+	set1 RFCOMM_CHANNEL_STATE_SND_MS_CMD
+	store 1,mem_spp_state
+	jam UPPERSM_RECONN_SPP_CMD_MS_WAIT,mem_upper_sm_reconn
+	rtn
+
+process_upper_sm_reconn_sdp_conn_wait:
+	fetch 1,mem_sdp_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_SDP_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_sdp_cfg_wait:
+	fetch 1,mem_sdp_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	jam UPPERSM_RECONN_SS_SPP ,mem_upper_sm_reconn
+process_upper_sm_reconn_ss_spp_wait:
+	fetch 1,mem_message_to_uppersm
+	rtnne RECIEVE_SS_REASULT_HF
+	jam 0,mem_message_to_uppersm
+	jam UPPERSM_RECONN_SDP_DISCONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_sdp_disconn_wait:
+	fetch 1,mem_sdp_state
+	nrtn blank
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_HID,process_upper_sm_reconn_setup_hid
+	bbit1 support_SPP,process_upper_sm_reconn_setup_rfcomm
+	branch process_upper_sm_reconn_termination
+process_upper_sm_reconn_hid_ctrl_conn_wait:
+	fetch 1,mem_hid_control_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_HID_CTRL_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_hid_ctrl_cfg_wait:
+	fetch 1,mem_hid_control_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	jam UPPERSM_RECONN_HID_INT_CONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_hid_int_conn_wait:  
+	fetch 1,mem_hid_interrupt_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_HID_INT_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_hid_int_cfg_wait:  
+	fetch 1,mem_hid_interrupt_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_SPP,process_upper_sm_reconn_setup_rfcomm
+	branch process_upper_sm_reconn_termination
+process_upper_sm_reconn_rfcomm_conn_wait: 
+	fetch 1,mem_rfcomm_state
+	rtnbit0 L2CAP_CHANNEL_STATE_CONN_RES
+	jam UPPERSM_RECONN_RFCOMM_CFG,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_rfcomm_cfg_wait:
+	fetch 1,mem_rfcomm_state
+	rtnne L2CAP_CHANNEL_SETUP_COMPLETE
+	jam UPPERSM_RECONN_RFCOMM_SABM,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_rfcomm_sabm_wait:  
+	fetch 1,mem_rfcomm_state
+	rtnne L2CAP_CHANNEL_RFCOMM_DLCI0_OPENED
+	fetch 1,mem_UI_profile_supported
+	bbit1 support_SPP,process_upper_sm_reconn_setup_spp
+	branch process_upper_sm_reconn_termination
+process_upper_sm_reconn_spp_cmd_pn_wait:
+	fetch 1,mem_spp_state
+	rtnbit0 RFCOMM_CHANNEL_STATE_PN_RES
+	jam UPPERSM_RECONN_SPP_SABM,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_spp_sabm_wait:
+	fetch 1,mem_spp_state
+	rtnbit0 RFCOMM_CHANNEL_STATE_UA
+	jam UPPERSM_RECONN_SPP_CMD_MS ,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_spp_cmd_ms_wait: 
+	fetch 1,mem_spp_state
+	rtnne RFCOMM_CHANNEL_SETUP_COMPLETE
+	branch process_upper_sm_reconn_termination
+
+process_upper_sm_reconn_setup_hid:
+	jam UPPERSM_RECONN_HID_CTRL_CONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+
+process_upper_sm_reconn_setup_rfcomm:
+	jam UPPERSM_RECONN_RFCOMM_CONN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+process_upper_sm_reconn_setup_spp:
+	jam UPPERSM_RECONN_SPP_CMD_PN,mem_upper_sm_reconn
+	branch process_upper_sm_reconn
+
+
+
+process_upper_sm_reconn_termination:
+	jam 0,mem_upper_sm_reconn
+	rtn
+upper_sm_send_sdp_conn:
+	bpatchx patch37_7,mem_patch37
+	call l2cap_malloc_signal_channel
+	setarg PSM_SDP
+	copy pdata,temp
+	setarg L2CAP_SDP_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+	
+upper_sm_send_sdp_cfg:
+	bpatchx patch38_0,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_SDP_remote_CID
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+	
+upper_sm_send_sdp_disconn:
+	bpatchx patch38_1,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_SDP_remote_CID
+	copy pdata,temp
+	arg L2CAP_SDP_channel,timeup
+	call ML2CAP_send_signal_disconn_req
+	fetch 1,mem_sdp_state
+	set0 L2CAP_CHANNEL_STATE_RCV_CFG_RES ,pdata
+	store 1,mem_sdp_state
+	rtn
+//service search
+upper_sm_send_ss_spp:
+	bpatchx patch38_2,mem_patch38
+	call l2cap_malloc_sdp_channel
+	call sdp_send_spp_request
+	branch MSDP_send_req_done
+
+upper_sm_send_rfcomm_conn:
+	bpatchx patch38_3,mem_patch38
+	call l2cap_malloc_signal_channel
+	setarg PSM_RFCOMM
+	copy pdata,temp
+	setarg L2CAP_RFCOMM_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+
+upper_sm_send_rfcomm_cfg:
+	bpatchx patch38_4,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_rfcomm_remote_cid
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+
+upper_sm_send_hid_ctrl_conn:
+	bpatchx patch38_5,mem_patch38
+	call l2cap_malloc_signal_channel
+	setarg PSM_HID_control
+	copy pdata,temp
+	setarg L2CAP_HID_Control_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+
+upper_sm_send_hid_ctrl_cfg:
+	bpatchx patch38_6,mem_patch38
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_hid_ctrl_remote_cid
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+
+upper_sm_send_hid_int_conn:
+	bpatchx patch38_7,mem_patch38
+	call l2cap_malloc_signal_channel
+	setarg PSM_HID_interrupt
+	copy pdata,temp
+	setarg L2CAP_HID_interrupt_channel
+	copy pdata,timeup
+	branch ML2CAP_send_signal_connect_req
+	
+upper_sm_send_hid_int_cfg:
+	bpatchx patch39_0,mem_patch39
+	call l2cap_malloc_signal_channel
+	fetch 2,mem_hid_int_remote_cid
+	copy pdata,temp
+	branch ML2CAP_send_signal_config_req
+
+upper_sm_send_rfcomm_sabm:
+	bpatchx patch39_1,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	//force 3,temp //address
+	jam 3,mem_current_adss
+	jam 0x1c,mem_current_fcs
+	call rfcomm_send_sabm
+	jam 1,mem_rfcomm_initiator
+	rtn
+
+upper_sm_send_spp_cmd_pn:
+	bpatchx patch39_2,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	fetcht 1,mem_remote_spp_channel
+	call channel_to_dlci
+	storet 1,mem_pn_dlci
+	branch rfcomm_send_param_neg_cmd
+
+upper_sm_send_spp_sabm:
+	bpatchx patch39_3,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	fetcht 1,mem_pn_dlci
+	call dlci_to_address_cmd
+	call rfcomm_calculate_FCS_sabm //sabm fcs use once only,not need to save
+	store 1,mem_current_fcs
+	fetcht 1,mem_pn_dlci
+	call dlci_to_address_cmd
+	storet 1,mem_current_adss
+	branch rfcomm_send_sabm
+
+upper_sm_send_spp_cmd_ms:
+	bpatchx patch39_4,mem_patch39
+	call l2cap_malloc_rfcomm_channel
+	fetcht 1,mem_pn_dlci
+	call dlci_to_address_cmd //address in temp
+	branch rfcomm_send_modem_status_cmd
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/sdp.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/sdp.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/sdp.prog	(working copy)
@@ -0,0 +1,1206 @@
+/**********************************************************************/
+/* Subroutine: sdp_process                                         */
+/* Process Service Discovery Request                                  */
+/* Called from L2CAP, check PDUID, branch to different req processings*/
+/*                                                                    */  
+/* Input:       mem_L2CAP_Rx_payload                                  */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length	      */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process:
+	bpatchx patch39_5,mem_patch39
+	fetch 2,mem_l2cap_payload_ptr
+	iforce contr
+//	ifetchr regb,1,contr				/* PDUID */
+//	storer regb,1,mem_sdp_pduid
+	ifetch 1,contr
+	copy pdata,regb
+	store 1,mem_sdp_pduid
+	ifetch 2,contr
+	store 2,mem_sdp_transactionid			/* save transaction id */
+	ifetch 1,contr				/* higher byte of parameter length */
+	lshift8 pdata,timeup				
+	ifetch 1,contr				/* lower byte of parameter length */
+	iadd timeup,timeup				/* parameter length stored in "timeup" */
+	bpatchx patch39_6,mem_patch39
+	copy contr,temp
+	arg 4,loopcnt
+	arg mem_sdp_handle_list,contw
+	call memset0
+	copy temp,contr 
+	deposit regb						/* PDUID  */
+	beq SDP_ERROR_RES,sdp_process_error_res
+	beq SDP_SEARCH_REQ,sdp_process_ss_req
+	beq SDP_SEARCH_RES,sdp_process_ss_res
+	beq SDP_ATTRIBUTE_REQ,sdp_process_sa_req
+	beq SDP_ATTRIBUTE_RES,sdp_process_sa_res
+	beq SDP_SEARCHATTRIB_REQ,sdp_process_ssa_req
+	beq SDP_SEARCHATTRIB_RES,sdp_process_ssa_res
+	branch sdp_insufficient_resource
+
+/**********************************************************************/
+/* ss_req			                              */
+/* Processing Service Search Request                                  */
+/* Call: ask_serviceclassid, empty_response                     */
+/*                                                                    */  
+/* Input:       mem_L2CAP_Rx_payload pointer in contr                 */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length	      */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_ss_req:
+	bpatchx patch39_7,mem_patch39
+	call ask_serviceclassid
+	compare 1,temp,0xff
+	branch ss_empty_rsp,true
+	compare 0xff,temp,0xff
+	branch sdp_invalid_request_syntax,true
+
+	ifetch 2,contr				/* max aservice record count */
+	store 2,mem_sdp_record_maxcnt
+	increase -2,timeup
+
+	increase -1,timeup				/* continuation state 1 byte (0) */
+	nbranch sdp_invalid_pdu_size,zero		/* invalid pdu size */
+	arg mem_sdp_uuid_search_ptr,timeup
+	ifetch 2,timeup
+	rtn blank
+	call search_all_uuid
+	call l2cap_get_sdp_tx_payload			/* put the pointer to Tx buffer  */
+	force 3,pdata						/* PDUID 3, Service Search Response */
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid			/* write transaction id */
+	istore 2,contw
+	lshift2 queue,pdata
+	add pdata,5,pdata
+	add pdata,5,regc
+	byteswap pdata,pdata
+	istore 2,contw							/* write parLength */
+	deposit queue
+	byteswap pdata,pdata
+	istore 2,contw							/* write TotSrvRecCount */
+	istore 2,contw							/* write CurSrvRecCount */
+	arg mem_sdp_handle_list,contr
+	copy queue,loopcnt
+	branch ss_req_blank,zero
+ss_req_loop:	
+	ifetch 4,contr
+	istore 4,contw
+	loop ss_req_loop
+ss_req_blank:	
+	force 0,pdata
+	istore 1,contw							/* continuation state */
+	deposit regc
+	store 2,mem_sdp_tx_pkt_length
+//	branch assert,blank
+	rtn
+
+/**********************************************************************/
+/* sa_req			                              */
+/* Processing Service Attribute Request                               */
+/* Call: ask_attributeid, empty_response (if 3 stored attr.     */
+/* not asked) or answer_attributelist                              */  
+/* Input:       mem_L2CAP_Rx_payload pointer in contr                 */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length	      */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_sa_req:
+	bpatchx patch3a_0,mem_patch3a
+	ifetch 4,contr				/* service record handle */
+	store 4,mem_sdp_record_handle	 
+	increase -4,timeup
+	call sdp_store_maxbyte
+	store 2,mem_sdp_attribute_maxbyte
+	increase -2,timeup
+	call dataelementtype6		/* result: data size stored in rega */
+	branch sdp_invalid_request_syntax,zero
+	compare 5,rega,0xff  // length
+	//branch sa_req_all,true
+	branch sa_judge_wholerange,true
+sa_isnot_wholerange:
+	arg mem_sdp_attrib_list,contw
+	force 0,queue
+	branch sa_req_loop
+sa_judge_wholerange:
+	ifetch 1,contr
+	bne SDP_ATTRIBUTE_RANGE,sdp_invalid_request_syntax
+	ifetch 2,contr
+	nbranch sa_judge_wholerange_false1,blank
+	ifetch 1,contr
+	bne 0xff,sa_judge_wholerange_false2
+	ifetch 1,contr
+	bne 0xff,sa_judge_wholerange_false3		//also exist potential bug because mem_sdp_attrib_list length is only 7f
+	branch sa_req_all
+sa_judge_wholerange_false3:
+	increase -5,contr
+	branch sa_isnot_wholerange
+sa_judge_wholerange_false2:
+	increase -4,contr
+	branch sa_isnot_wholerange
+sa_judge_wholerange_false1:
+	increase -3,contr
+	branch sa_isnot_wholerange
+sa_req_loop:	
+	ifetch 1,contr
+	beq SDP_ATTRIBUTE_ID, sa_req_one_id
+	beq SDP_ATTRIBUTE_RANGE, sa_req_range
+sa_req_range:
+	ifetch 2, contr
+	istore 2, contw
+	increase 1,queue
+	byteswap pdata,regb
+	ifetch 2, contr
+	byteswap pdata,pdata
+sa_req_range_id_increase:	
+	increase 1, regb
+	isub regb, null
+	nbranch sa_req_range_id_finish,positive
+	copy pdata, regc
+	byteswap regb,pdata
+	istore 2, contw
+	increase 1,queue
+	copy regc, pdata
+	branch sa_req_range_id_increase
+sa_req_range_id_finish:
+	increase -5,timeup
+	increase -5,rega
+	branch sa_req_check_next_id
+sa_req_one_id:
+	ifetch 2,contr
+	istore 2,contw //save the attribute id in mem_sdp_attrib_list
+	increase 1,queue
+	increase -3,timeup
+	increase -3,rega
+sa_req_check_next_id:	
+	nbranch sdp_invalid_request_syntax,positive
+	nbranch sa_req_loop,zero //another attribute 
+	increase -1,timeup
+	nbranch sdp_invalid_request_syntax,zero
+	
+	call l2cap_get_sdp_tx_payload
+	increase 10,contw
+	arg mem_sdp_attrib_list,rega
+sa_req_handle_attributelist_next:
+	copy queue,pdata
+	branch sa_req_handle_attributelist_end,blank
+	ifetch 2,rega
+	branch sa_req_handle_attributelist_end,blank
+	iforce regb /* regb is the attribute ID */
+	fetch 4,mem_sdp_record_handle	
+	iforce temp
+	call search_handle_attrib
+	copy contr,pdata
+	branch sa_req_handle_attributelist_notfound,blank
+	increase -3,contr
+	ifetch 3,contr
+	istore 3,contw
+	call sdp_data_len
+	iforce loopcnt	
+	call memcpy
+sa_req_handle_attributelist_notfound:
+	increase 2,rega
+	increase -1, queue
+	branch sa_req_handle_attributelist_next
+
+sa_req_handle_attributelist_end:	
+	arg SDP_ATTRIBUTE_RES,rega
+	call ssa_req_range_lastfreg_common
+	fetch 2,mem_sdp_tx_pkt_length	
+	beq 11,sa_empty_rsp
+	branch  ssa_req_range_attrbutes_length_no_continue
+
+
+sdp_store_continue_common:
+	ifetch 1, contr
+	beq 0, sdp_store_continue_0byte
+	beq 1,sdp_store_continue_1byte
+	beq 2, sdp_store_continue_2byte
+sdp_store_continue_0byte:	
+	increase -1,timeup				/* continuation state byte (0) */
+	branch sdp_store_continue_end
+sdp_store_continue_1byte:
+	ifetch 1, contr
+	increase -2,timeup				/* continuation state byte (1) */
+	branch sdp_store_continue_end
+sdp_store_continue_2byte:
+	ifetch 2, contr
+	byteswap pdata,pdata
+	increase -3,timeup				/* continuation state byte (2) */
+sdp_store_continue_end:
+	store 2, mem_sdp_continue_byte	
+	rtn
+	
+sa_req_all:	
+	increase -5,timeup
+	call sdp_store_continue_common
+	nbranch sdp_invalid_pdu_size,zero
+	fetcht 4,mem_sdp_record_handle		
+	call search_handle
+	nbranch sdp_invalid_service_record_handle,zero
+	copy contr,rega
+	call l2cap_get_sdp_tx_payload
+	copy rega,contr
+	increase 3,contw//arg mem_SDP_Tx_payload+3,contw
+	copy contr,timeup //sdp start pointer
+	call sdp_get_data
+	copy pdata, rega //sdp total length
+//	fetchr regb,2,mem_sdp_continue_byte
+	fetch 2,mem_sdp_continue_byte
+	copy pdata,regb
+	copy rega,pdata
+	isub regb,regb //total_length - continue_byte in regb
+	fetch 2, mem_sdp_attribute_maxbyte
+	isub regb, null
+	nbranch sa_req_all_fragment_sdp, positive
+	// the last fragment
+	disable user
+	fetch 2, mem_sdp_continue_byte
+	branch sa_req_all_fisrt_fragment,blank
+	iadd timeup, contr //set the read pointer
+	increase 3,regb //include the total length field, 3 bytes
+	copy regb, loopcnt
+	copy loopcnt, pdata
+	increase 3, pdata
+	byteswap pdata,pdata
+	istore 2, contw
+	copy loopcnt, pdata
+	byteswap pdata,pdata
+	istore 2, contw
+	branch sa_req_all_answer_attributelist_full_loop
+sa_req_all_fisrt_fragment:
+	add rega,6,loopcnt
+	branch sa_req_all_parlength_continue_byte, user
+	byteswap loopcnt,pdata
+	branch sa_req_all_parlength_continue_byte_end
+sa_req_all_parlength_continue_byte:
+	copy loopcnt, pdata
+	increase 2, pdata
+	byteswap pdata,pdata
+sa_req_all_parlength_continue_byte_end:
+	istore 2,contw				/* ParLength */
+	increase -3,loopcnt
+	byteswap loopcnt,pdata			
+	istore 2,contw				/* AttrListByteCount */
+	copy timeup,contr
+	branch sa_req_all_answer_attributelist_full_loop
+sa_req_all_fragment_sdp:
+	enable user
+//	fetchr rega,2,mem_sdp_attribute_maxbyte
+	fetch 2,mem_sdp_attribute_maxbyte
+	copy pdata,rega
+	copy rega,loopcnt
+	fetch 2, mem_sdp_continue_byte
+	branch sa_req_all_fisrt_fragment,blank
+	iadd timeup, contr
+	copy rega,pdata
+	increase 5,pdata
+	byteswap pdata,pdata	
+	istore 2, contw
+	copy rega,pdata
+	byteswap pdata,pdata
+	istore 2, contw
+sa_req_all_answer_attributelist_full_loop:
+	call memcpy
+	nbranch sa_req_all_last_frag_continue, user
+	force 2,pdata
+	istore 1,contw
+	copy contr, pdata
+	isub timeup, pdata
+	byteswap pdata,pdata
+	istore 2, contw   // continuation length
+	branch sa_req_all_frag_end
+sa_req_all_last_frag_continue:
+	force 0,pdata
+	istore 1,contw
+sa_req_all_frag_end:	
+	arg SDP_ATTRIBUTE_RES,rega
+	branch ssa_req_range_common	
+	
+/**********************************************************************/
+/* ssa_req                          		      */
+/* Processing Service Search Attribute Request                        */
+/* Call: ask_serviceclassid, ask_attributeid, empty_response */
+/*       or answer_attributelist                                   */  
+/* Input:       contr                                                 */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length             */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_ssa_req:
+	bpatchx patch3a_1,mem_patch3a
+	call ask_serviceclassid
+	compare 0xff,temp,0xff
+	branch sdp_invalid_request_syntax,true
+	call sdp_store_maxbyte
+	store 2,mem_sdp_attribute_maxbyte
+	increase -2,timeup
+	call dataelementtype6
+	arg mem_sdp_attrib_list,contw
+	force 0,queue
+ssa_req_loop:	
+	ifetch 1,contr 
+	beq SDP_ATTRIBUTE_RANGE,ssa_req_range
+	ifetch 2,contr 
+	istore 2,contw //save the attribute id in mem_sdp_attrib_list
+	increase 1,queue
+	increase -3,timeup
+	increase -3,rega
+	nbranch sdp_invalid_request_syntax,positive
+	nbranch ssa_req_loop,zero
+	increase -1,timeup
+	nbranch sdp_invalid_request_syntax,zero
+	call l2cap_get_sdp_tx_payload
+	increase 13,contw//arg mem_SDP_Tx_payload+13,contw
+	fetch 2,mem_sdp_uuid_search_ptr
+	iforce regc
+	arg mem_sdp_attrib_list,rega
+ssa_req_attributelist_next:	
+	ifetch 2,rega
+	branch ssa_req_attributelist_end,blank
+	iforce regb						/* regb is the attribute ID */
+	call search_attrib
+	branch ssa_req_attributelist_notfound,blank
+	increase -3,contr
+	ifetch 3,contr
+	istore 3,contw
+	call sdp_data_len
+	iforce loopcnt	
+  	call memcpy
+ssa_req_attributelist_notfound:
+	increase 2,rega
+	branch ssa_req_attributelist_next
+
+ssa_req_attributelist_end:
+	call ssa_req_range_lastfreg
+	fetch 2,mem_sdp_tx_pkt_length	
+	beq 14,ssa_empty_rsp
+	call ssa_req_range_attrbutes_length_no_continue
+	branch ssa_req_range_attrbutes_length_no_continue
+
+
+sdp_store_maxbyte:	
+	ifetch 2,contr				 
+	byteswap pdata,pdata
+	increase -3,pdata	
+	arg 200,temp
+	isub temp,null
+	nrtn positive
+	setarg 200
+	rtn
+	
+
+ssa_req_range:
+	increase 4,contr
+	increase -5,timeup
+	increase -5,rega
+	nbranch sdp_invalid_request_syntax,zero
+	call 	sdp_store_continue_common
+	nbranch sdp_invalid_pdu_size,zero
+	arg mem_sdp_uuid_search_ptr,timeup
+	call search_all_uuid  
+	deposit queue
+	branch ssa_empty_rsp,blank
+	store 1,mem_handle_humber
+//	storer regb,2,mem_sdp_all_length
+	copy regb,pdata
+	store 2,mem_sdp_all_length
+	arg 0,queue
+	arg 0,rega
+	call l2cap_get_sdp_tx_payload
+	increase 10,contw 
+ssa_req_range_find_handle:
+	call ssa_req_range_get_length	
+	nbranch assert,user
+	copy contr,timeup
+	copy pdata,regc
+	iadd rega,rega
+//	copy pdata,rega 
+//	fetch 2,mem_sdp_all_length
+	fetch 2,mem_sdp_continue_byte
+	copy pdata,regb
+	branch ssa_req_range_first_freg,blank
+ssa_req_range_later_freg_with_continue:
+	copy rega,pdata
+	isub regb,regb //total_length - continue_byte in rega
+	branch ssa_req_range_next_handle,zero
+	nbranch ssa_req_range_next_handle,positive
+	fetch 2, mem_sdp_attribute_maxbyte
+	isub regb, null
+	branch ssa_req_range_maxbyte_with_continue,zero
+	nbranch ssa_req_range_maxbyte_with_continue, positive  
+	
+ // data length < =maxbyte 
+ssa_req_range_send_not_maxbyte:
+ 	copy regb,loopcnt
+	call ssa_req_range_maxbyte_with_continue_cpy
+ 	fetch 1,mem_handle_humber
+	increase 1,queue
+	isub queue,null
+	branch ssa_req_range_lastfreg,zero
+	branch ssa_req_range_freg_with_continue
+	
+ssa_req_range_maxbyte_with_continue:
+ 	copy pdata,loopcnt
+ 	call ssa_req_range_maxbyte_with_continue_cpy
+ 	branch ssa_req_range_freg_with_continue
+ 	
+ssa_req_range_maxbyte_with_continue_cpy:
+	increase -3,contw   
+	copy loopcnt,temp
+ 	copy regc,pdata
+	isub regb,pdata
+	iadd timeup,contr
+ 	branch memcpy
+
+ssa_req_range_next_handle:
+	fetch 1,mem_handle_humber
+	increase 1,queue
+	isub queue,null
+	rtn zero //
+	branch ssa_req_range_find_handle
+
+ssa_req_range_get_length:	
+	call disable_user
+	arg mem_sdp_handle_list,contr
+	lshift2 queue,pdata
+	iadd contr,contr
+	ifetcht 4, contr
+	call search_handle
+	nrtn zero
+	call sdp_data_len
+	branch enable_user
+
+ssa_req_range_first_freg:
+	fetch 2, mem_sdp_attribute_maxbyte
+	isub rega, null
+	nbranch ssa_req_range_firstfreg_maxbyte_with_continue,positive
+	copy rega,loopcnt
+	copy loopcnt,temp
+	copy timeup,contr
+	call memcpy
+	fetch 2,mem_sdp_all_length
+	isub rega,null
+	branch ssa_req_range_freg_no_continue,zero
+ssa_req_range_firstfreg_not_maxbyte_with_continue:
+	call ssa_req_range_freg_with_continue
+	branch ssa_req_range_attrbutes_length
+	
+ssa_req_range_freg_no_continue:
+	call ssa_req_range_lastfreg
+	branch ssa_req_range_attrbutes_length
+	
+ssa_req_range_lastfreg:
+	arg SDP_SEARCHATTRIB_RES,rega  //PUD ID
+ssa_req_range_lastfreg_common:
+	force 0,pdata
+	istore 1,contw
+	call ssa_req_range_common
+	fetcht 2,mem_sdp_tx_pkt_length
+	increase -5,temp
+	byteswap temp,pdata
+	istore 2, contw
+	increase -3,temp
+	byteswap temp,pdata
+	istore 2, contw  //attribute length
+	rtn
+
+ssa_req_range_firstfreg_maxbyte_with_continue:
+	copy pdata,loopcnt
+	copy loopcnt,temp
+	copy timeup,contr
+	call memcpy
+	call ssa_req_range_freg_with_continue
+ssa_req_range_attrbutes_length:	
+	setarg 0x36
+	istore 1,contw
+	fetch 2,mem_sdp_all_length
+	byteswap pdata,pdata
+	istore 2, contw 
+	rtn	
+
+ssa_req_range_attrbutes_length_no_continue:	
+	setarg 0x36
+	istore 1,contw
+	increase -3,temp
+	byteswap temp,pdata
+	istore 2, contw 
+	rtn	
+
+ssa_req_range_freg_with_continue:
+	arg SDP_SEARCHATTRIB_RES,rega  //PUD ID
+	setarg 2
+	istore 1,contw	
+	fetch 2,mem_sdp_continue_byte
+	iadd temp,temp
+	byteswap temp,pdata
+	istore 2,contw
+	call ssa_req_range_common
+	fetcht 2,mem_sdp_tx_pkt_length
+	increase -5,temp
+	byteswap temp,pdata
+	istore 2, contw
+	increase -5,temp
+	byteswap temp,pdata
+	istore 2, contw 
+	rtn	
+
+ssa_req_range_common:
+	fetch 2,mem_sdp_tx_payload_ptr
+	isub contw,pdata
+	sub pdata,0,pdata
+	store 2,mem_sdp_tx_pkt_length
+	call l2cap_get_sdp_tx_payload 
+	copy rega,pdata  //PUD ID
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid
+	istore 2,contw
+	rtn
+
+
+
+
+/**********************************************************************/
+/* ssa_res			                      */
+/* Processing Service Search Attribute Response                       */
+/* Call: dataelementtype6, attribute_reading                    */
+/* Input:       contr                                                 */
+/* Output:      mem_sdp_record_handle,mem_sdp_search_failed           */
+/*                                                                    */
+/**********************************************************************/     
+sdp_process_ssa_res:
+sdp_process_ss_res:
+sdp_process_sa_res:
+sdp_process_error_res:
+	rtn
+/*
+sdp_process_ss_res:
+	bpatchx patch3a_2,mem_patch3a
+	ifetch 2,contr
+	ifetch 2,contr
+	byteswap pdata,pdata
+	bne 1,assert
+	ifetch 4,contr
+	store 4,mem_sdp_record_handle
+	fetchr regc,2,mem_sdp_l2capch_ptr
+	add regc,offset_lc_state,regc
+	ifetch 1,regc
+	set1 L2CAP_CHANNEL_STATE_RECV_SEARCH_RES,pdata
+	istore 1,regc
+	rtn
+	
+sdp_process_sa_res:
+	bpatchx patch3a_3,mem_patch3a
+	fetchr regc,2,mem_sdp_l2capch_ptr
+	add regc,offset_lc_state,regc
+	ifetch 1,regc
+	set1 L2CAP_CHANNEL_STATE_RECV_ATTRIB_RES,pdata
+	istore 1,regc
+	copy temp,contr
+	ifetch 2,contr
+	call search_rfcomm_cn
+	store 1,mem_profile_channel	
+	rtn
+*/
+
+				    
+
+sdp_invalid_service_record_handle:		
+	setarg 0x0200
+	store 2,mem_sdp_error_code
+	branch sdp_error_response
+sdp_invalid_pdu_size:				
+	setarg 0x0400
+	store 2,mem_sdp_error_code
+	branch sdp_error_response
+sdp_insufficient_resource:			
+	setarg 0x0600
+	store 2,mem_sdp_error_code
+	branch sdp_error_response
+sdp_invalid_request_syntax:			
+	setarg 0x0300
+	store 2,mem_sdp_error_code
+sdp_error_response:	
+	call l2cap_get_sdp_tx_payload
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid			
+	istore 2,contw
+	setarg 0x0200					
+	istore 2,contw
+	fetch 2,mem_sdp_error_code			
+	istore 2,contw
+	jam  7,mem_sdp_tx_pkt_length
+	rtn
+
+
+//store uuid in mem_sdp_uuid_search_ptr,
+//return temp 0xff if wrong 
+ask_serviceclassid:  
+	arg 0,regb
+	force 0,temp					/* use "temp" to mark syntax error or to mark 128 bit uuid */
+	arg mem_sdp_uuid_search_ptr,contw
+	call dataelementtype6
+	branch asksrv_error,zero
+classidloop:
+	increase 1,regb
+	ifetch 1,contr
+	increase -1,rega
+	increase -1,timeup
+	compare 0x18,pdata,0xf8			/* 5 MSB: b00011: uuid */
+	nbranch asksrv_error,true
+	compare 0x04,pdata,0x07			/* 3 LSB: b100 128 bits uuid */
+	nbranch cmp032,true
+	force 1,temp					/* mark it as 128 bit uuid */
+skip2bytes:
+	ifetch 1,contr
+	increase -1,rega	
+	increase -1,timeup
+	bne 0x00, frstbwrong
+	ifetch 1,contr
+	increase -1,rega	
+	increase -1,timeup
+	beq 0x00, cmpuuid
+	branch scndbwrong
+frstbwrong:  
+	increase 1,contr
+	increase -1,rega	
+	increase -1,timeup
+scndbwrong:  
+	increase 2,contr				/* skip 2 bytes, first 2 bytes already wrong */
+	increase -2,rega	
+	increase -2,timeup
+	compare 0x00,temp,0xff                        /* 128 bits or 32 bits ? */
+	branch loopornot,true
+	increase 12,contr				/* skip 12 bytes, first 2 bytes already wrong */
+	increase -12,rega	
+	increase -12,timeup
+	branch loopornot
+cmp032:
+	compare 0x02,pdata,0x07			/* 3 LSB: b010 32 bits uuid */
+	nbranch cmp016,true
+	branch skip2bytes			
+cmp016:
+	compare 0x01,pdata,0x07			/* 3 LSB: b001 16 bit uuid */
+	nbranch asksrv_error,true
+cmpuuid:
+	increase -2,rega
+	increase -2,timeup
+	ifetch 2,contr				/* higher order byte */
+	sub regb,4,null
+	branch uuidsize,zero //max store uuids =3 
+	istore 2,contw
+uuidsize:
+	compare 0x00,temp,0xff			/* is this 128 bits uuid */
+	branch loopornot,true
+	copy contr,temp
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x10, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x80, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x00, wrong12b
+	ifetch 1,contr
+	bne 0x80, wrong12b
+	ifetch 1,contr
+	bne 0x5f, wrong12b
+	ifetch 1,contr
+	bne 0x9b, wrong12b
+	ifetch 1,contr
+	bne 0x34, wrong12b
+	ifetch 1,contr
+	beq 0xfb, chck12dn
+wrong12b:
+	copy temp,contr  
+wrong12b1:
+	increase 12,contr				/* skip 12 bytes */
+	force 0x00,queue
+	force 0x00,temp
+	branch chck12dn
+
+chck12dn:
+	increase -12,timeup
+	increase -12,rega
+loopornot:
+	force 0x00,temp
+	compare 0x00,rega,0xff
+	nbranch classidloop,true
+	force 0,pdata
+	istore 2,contw			/* end list with null */
+	rtn
+asksrv_error:
+	arg 0xff,temp
+	rtn
+
+/**********************************************************************/
+/* Subroutine: dataelementtype6                                    */
+/* Parse Data Element Sequence, obtain the data size                  */
+/* Input:  SDP Rx Buf Pointer in contr, parameter count in timeup     */
+/* Output: data length in rega, data pointer in contr             */
+/*         and  parameter count in timeup, return with zero flag set: */
+/*         syntax error                                               */
+/**********************************************************************/     
+dataelementtype6:
+	bpatchx patch3a_4,mem_patch3a
+	ifetch 1,contr
+	increase -1,timeup
+	compare 0x30,pdata,0xf8			/* 5 MSB: b00110: type 6 */
+	nbranch dsize_error,true
+	compare 0x07,pdata,0x07			/* 3 LSB: b111: 32 bits */
+	branch dsize32,true
+	compare 0x06,pdata,0x07			/* 3 LSB: b110: 16 bits */
+	branch dsize16,true
+	compare 0x05,pdata,0x07			/* 3 LSB: b101: 8 bits */
+	nbranch dsize_error,true
+//	ifetchr rega,1,contr				/* data length in reg A */
+	ifetch 1,contr
+	copy pdata,rega
+	increase -1,timeup
+	branch dsize
+dsize32:
+	increase 2,contr				 
+	increase -2,timeup
+dsize16:
+	ifetch 2,contr
+	byteswap pdata,rega
+	increase -2,timeup
+dsize:
+	force 0x01,pdata
+	rtn
+dsize_error:
+	force 0x00,pdata
+	rtn
+
+/**********************************************************************/
+/* Subroutine: sa_empty_rsp                                      */
+/* Send empty response                                                */
+/*                                                                    */
+/* Input:       mem_sdp_pduid, mem_sdp_transactionid                  */
+/* Output:      mem_SDP_Tx_payload, mem_SDP_Tx_pkt_length             */
+/*                                                                    */
+/**********************************************************************/     
+ss_empty_rsp:
+	setarg SDP_SEARCH_RES
+	store 1, mem_sdp_pduid
+	branch empty_response
+sa_empty_rsp:
+	setarg SDP_ATTRIBUTE_RES
+	store 1, mem_sdp_pduid
+	branch empty_response
+ssa_empty_rsp:
+	setarg SDP_SEARCHATTRIB_RES
+	store 1, mem_sdp_pduid
+empty_response:
+	call l2cap_get_sdp_tx_payload			/* empty attribute list */
+//	fetchr regb,1,mem_sdp_pduid				/* PDUID */
+//	istorer regb,1,contw
+	fetch 1,mem_sdp_pduid
+	copy pdata,regb
+	istore 1,contw 
+	fetch 2,mem_sdp_transactionid			/* copy back transaction id */
+	istore 2,contw
+	setarg 0x0500
+	istore 2, contw
+	compare SDP_ATTRIBUTE_RES,regb,0xff			 
+	branch fullsearch,true
+	compare SDP_SEARCHATTRIB_RES,regb,0xff			 
+	branch fullsearch,true
+	setarg 0x000000
+	istore 5,contw
+	branch outempty
+
+fullsearch:					/* pduid must be 5 or 7 */
+	setarg 0x350200
+	istore 5,contw
+outempty:
+	jam 10,mem_sdp_tx_pkt_length
+	rtn
+
+//return length in pdata(whole element ,include header and data ), contr not change
+sdp_data_len:
+	call store_contw
+	call store_contr
+	call sdp_get_data
+	call get_contw
+	call get_contr
+	copy temp,pdata
+	rtn
+
+//return data length in pdata, contr is data pionter,return length in temp(whole element ,include header and data )
+sdp_get_data:
+	ifetch 1,contr
+	and pdata,0x7,loopcnt
+	rshift3 pdata,pdata
+	bne 0,sdp_get_data_type_not0
+sdp_get_data_type0:	
+	force 1,pdata
+	force 1,temp
+	rtn
+	
+sdp_get_data_type_not0_sizeindex01234:
+	call left_shift_n
+	add pdata,1,temp  //add header length
+	rtn
+sdp_get_data_type_not0:
+	deposit loopcnt
+	sub pdata,4,null
+	branch sdp_get_data_type_not0_sizeindex01234,positive
+	beq 5,sdp_get_data_type_not0_sizeindex5
+	beq 6,sdp_get_data_type_not0_sizeindex6
+	beq 7,sdp_get_data_type_not0_sizeindex7
+	rtn
+	
+sdp_get_data_type_not0_sizeindex5:
+	ifetch 1,contr
+	add pdata,2,temp  //add header length
+	rtn
+sdp_get_data_type_not0_sizeindex6:
+	ifetch 2,contr
+	byteswap pdata,pdata
+	add pdata,3,temp  //add header length
+	rtn
+sdp_get_data_type_not0_sizeindex7:
+	ifetch 2,contr	
+	byteswap pdata,pdata
+	ifetcht 2,contr	
+	byteswap temp,temp
+	lshift16 temp,temp
+	iadd temp,pdata
+	add pdata,5,temp  //add header length
+	rtn
+
+/* find with uuids
+input uuids pionter in timeup
+return handles in mem_sdp_handle_list; handles number in queue if found 
+return regb all length*/
+search_all_uuid:
+	bpatchx patch3a_5,mem_patch3a
+	force 0,queue
+	arg 0,regb
+	arg mem_sdp_handle_list,contw
+search_all_uuid_llop:
+	ifetch 2,timeup
+ 	rtn blank
+	call search_uuid
+	copy queue,pdata
+	rtneq SDP_MAX_HANDLE_NUMBER 
+	increase 2,timeup
+ 	branch search_all_uuid_llop
+	
+search_uuid:
+//	arg 0,regb
+	iforce regc
+//	force 0,queue
+	fetch 2, mem_ui_uuid_table
+	iforce contr
+search_uuid_next:
+	copy queue,pdata
+	rtneq SDP_MAX_HANDLE_NUMBER   
+	disable user
+	ifetch 1,contr
+	rtn blank
+	iforce loopcnt
+search_uuid_loop:	
+	ifetch 2,contr
+	isub regc,null
+	nbranch search_uuid_not_found,zero
+	enable user					// uuid match
+search_uuid_not_found:
+	loop search_uuid_loop
+	ifetcht 4,contr					// get handle 
+	copy contr,rega
+	nbranch search_uuid_nomatch,user
+	arg mem_sdp_handle_list,contr
+	arg SDP_MAX_HANDLE_NUMBER,loopcnt 
+search_uuid_check_same_handle:
+	ifetch 4,contr
+	branch search_uuid_store_handle,blank
+	isub temp,null
+	branch search_uuid_nomatch,zero
+	loop search_uuid_check_same_handle
+	rtn 
+search_uuid_store_handle:
+	istoret 4,contw
+	increase 1,queue
+	copy rega,contr
+	call sdp_data_len
+	iadd regb,regb
+	iadd contr,contr		 
+	branch search_uuid_next
+search_uuid_nomatch:	
+	copy rega,contr
+	call sdp_get_data
+	iadd contr,contr			// next paragraph 
+	branch search_uuid_next
+
+/* temp is handle,
+return zero  if found
+return data pointer in contr 
+*/
+search_handle:
+	bpatchx patch3a_6,mem_patch3a
+	fetch 2,mem_ui_uuid_table
+	iforce contr
+search_handle_loop:	
+	ifetch 1,contr
+	branch disable_zero,blank
+	lshift pdata,pdata
+	iadd contr,contr
+	ifetch 4,contr
+	isub temp,null
+	rtn zero
+	deposit contw
+	store 2,mem_contw
+	storet 8,mem_temp
+	call sdp_get_data
+	iadd contr,contr
+	copy contr,pdata
+	fetcht 2,mem_contw
+	copy temp,contw
+	fetcht 8,mem_temp
+	copy pdata,contr
+	branch search_handle_loop
+
+/**
+* input regb and regc.regb is the attribute ID and regc is UUID.
+* set contr if find attribute or 0 if not
+*/
+search_attrib:
+	bpatchx patch3a_7,mem_patch3a
+	fetch 2,mem_ui_uuid_table
+	iforce contr
+search_attrib_next:
+	ifetch 1,contr
+	branch search_attrib_end, blank
+	iforce loopcnt
+search_attrib_loop:	
+	ifetch 2,contr
+	isub regc,null						/* regc is UUID, compare it */
+	branch search_attrib_found_uuid,zero
+	loop search_attrib_loop
+	increase 4,contr
+	call sdp_get_data
+	iadd contr,contr			/* next paragraph */
+	branch search_attrib_next	
+search_attrib_found_uuid:
+	increase -1,loopcnt
+	lshift loopcnt,pdata
+	iadd contr,contr
+	increase 4,contr
+	call sdp_get_data
+	iadd contr,timeup					/* attribute list end */
+search_attrib_loop_attribs:	
+	increase 1,contr
+	ifetch 2,contr
+	isub regb,null
+	//force 0x1,pdata,zero
+//	setflag zero, 0,pdata
+//	copy timeup, timeup
+	branch disable_blank,zero			/* attribute found */
+	call sdp_data_len
+	iadd contr,contr
+	deposit timeup
+	isub contr,null
+	branch search_attrib_end, zero /*attribute end, not found the attribute, return contr = 0*/
+	branch search_attrib_loop_attribs	
+search_attrib_end:
+	force 0,contr
+	force 0,pdata
+	rtn
+	
+
+//search the attribute according the record handle
+//record handle in temp, attribute in regb
+//set the contr to zero if not found
+search_handle_attrib:	
+	bpatchx patch3b_0,mem_patch3b
+	fetch 2,mem_ui_uuid_table
+	iforce contr
+search_handle_attrib_next:
+	ifetch 1,contr
+	branch search_handle_attrib_end, blank
+	lshift pdata,pdata
+	iadd contr, contr
+	ifetch 4,contr
+	isub temp,null						/* regc is UUID, compare it */
+	branch search_handl_attrib_found_handle,zero
+	call sdp_get_data
+	iadd contr,contr			/* next paragraph */
+	branch search_handle_attrib_next	
+search_handl_attrib_found_handle:
+	call sdp_get_data
+	iadd contr,timeup					/* attribute list end */
+search_handle_attrib_loop_attribs:	
+	increase 1,contr
+	ifetch 2,contr
+	isub regb,null
+	rtn zero							/* attribute found */
+	call sdp_data_len
+	iadd contr,contr
+	deposit timeup
+	isub contr,null
+	branch search_handle_attrib_end, zero /*attribute end, not found the attribute, return contr = 0*/
+	branch search_handle_attrib_loop_attribs
+search_handle_attrib_end:
+	force 0,contr
+	rtn	
+
+
+//enable user if find rfcomm channel number, pdata is channel number
+search_rfcomm_cn:
+	arg 0x0400,regb  // attribute protocol edscriptor list
+	call search_handl_attrib_found_handle
+	arg 0x0300,regb  // uuid rfcomm
+	call search_uuid_in_data
+	nrtn user
+	sub rega,3,null
+	branch disable_user,positive
+	ifetch 1,contr
+	bne 0x08,disable_user
+	ifetch 1,contr
+	rtn
+	
+ //input timeup is lenth
+ //input contr is data ptr
+ //return contr is end of uuid; enable user if found uuid
+search_uuid_in_data:
+	bpatchx patch3b_1,mem_patch3b
+	call sdp_get_data
+	copy pdata,rega
+search_uuid_in_data_loop:	
+	ifetch 1,contr
+	and pdata,0x7,loopcnt
+	rshift3 pdata,pdata
+	sub pdata,3,null
+	branch search_uuid_in_data_found_uuid,zero
+	copy loopcnt,pdata
+	beq 5,search_uuid_in_data_found_element_index5
+	beq 6,search_uuid_in_data_found_element_index6
+	beq 7,search_uuid_in_data_found_element_index7
+	increase -1,contr
+	call sdp_get_data
+	iadd contr,contr
+	copy rega,pdata
+	isub temp,rega
+	branch disable_user,zero
+	branch search_uuid_in_data_loop
+	
+search_uuid_in_data_found_element_index5:
+	increase -2,rega
+	increase 1,contr
+	branch search_uuid_in_data_loop
+search_uuid_in_data_found_element_index6:
+	increase -3,rega
+	increase 2,contr
+	branch search_uuid_in_data_loop
+search_uuid_in_data_found_element_index7:
+	increase -5,rega
+	increase 4,contr
+	branch search_uuid_in_data_loop		
+	
+search_uuid_in_data_found_uuid:
+	increase -1,rega
+	copy loopcnt,pdata
+	beq 1,search_uuid_in_data_type_uuid_16
+	beq 2,search_uuid_in_data_type_uuid_32
+	beq 4,search_uuid_in_data_type_uuid_128
+	branch disable_user 
+search_uuid_in_data_type_uuid_128:
+	increase -12,rega
+search_uuid_in_data_type_uuid_32:
+	ifetch 2,contr
+	increase -2,rega
+search_uuid_in_data_type_uuid_16:
+	ifetch 2,contr
+	isub regb,null
+	branch enable_user,zero
+	increase -2,rega
+	branch disable_user,zero
+	branch search_uuid_in_data_loop
+
+/*
+//rega:l2cap len ,mem_search_uuid:uuid to search
+sdp_send_search_req:
+	call l2cap_malloc_sdp_req
+	setarg SDP_SEARCH_REQ
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid_local
+	byteswap pdata,pdata
+	istore 2,contw
+	increase -5,rega
+	byteswap rega,rega
+	//istorer rega,2,contw
+	copy rega,pdata
+	istore 2,contw
+	setarg 0x0335
+	istore 2,contw
+	setarg 0x19
+	istore 1,contw
+	fetch 2,mem_search_uuid
+	istore 2,contw
+	setarg 0x0008
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	rtn
+
+//rega:l2cap len
+sdp_send_attribute_req:
+	call l2cap_malloc_sdp_req
+	setarg SDP_ATTRIBUTE_REQ
+	istore 1,contw
+	fetch 2,mem_sdp_transactionid_local
+	byteswap pdata,pdata
+	istore 2,contw
+	increase -5,rega
+	byteswap rega,rega
+//	istorer rega,2,contw
+	copy rega,pdata
+	istore 2,contw
+	fetch 4,mem_sdp_record_handle
+	istore 4,contw
+	setarg 0x2c01
+	istore 2,contw
+	setarg 0x0535
+	istore 2,contw
+	setarg 0x0a
+	istore 1,contw
+	setarg 0
+	istore 2,contw
+	setarg -1
+	istore 2,contw
+	setarg 0
+	istore 1,contw
+	rtn
+*/	
+	
+
+sdp_send_spp_request:
+	call l2cap_get_sdp_tx_payload
+	copy pdata,contw
+	setarg 6//Search Attr Req
+	istore 1,contw
+	setarg sdp_tid_spp					
+	istore 2,contw
+	setarg 0x0f00 //length15
+	istore 2,contw
+	setarg 0x1a0535
+	istore 3,contw
+	setarg 0x0111
+	lshift16 pdata,pdata //UUID
+	istore 4,contw
+	setarg 0x2600 //max return len
+	istore 2,contw
+	setarg 0x0335
+	istore 2,contw
+	setarg 0x0009
+	istore 2,contw
+	setarg 0x0004
+	istore 2,contw
+	jam 0x14,mem_sdp_tx_pkt_length
+	rtn
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/security.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/security.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/security.prog	(working copy)
@@ -0,0 +1,1642 @@
+
+ifdef SECURE_CONNECTION
+	
+function_g2:
+	bpatchx patch3b_2,mem_patch3b
+	jam 80,mem_AES_CMAC_data_length
+	arg memdat,contw
+	arg mem_le_srand,contr
+	call memcpy16
+	arg mem_le_pubkey_local_x_256,contr
+	call memcpy32
+	arg mem_le_pubkey_remote_x_256,contr
+	call memcpy32
+	call inverse_memdat	
+	arg mem_le_mrand,contr
+	call store_inverse_k	
+	call function_AES_CMAC	
+
+	arg mem_AES_CMAC_temp,contw
+	call load_inverse_result
+	setarg 1000000
+	copy pdata,rega
+	fetch 4,mem_AES_CMAC_temp
+	idiv rega
+	call wait_div_end
+	remainder pdata
+	store 4,mem_gkey
+//call ice_break
+	rtn
+
+function_f6_eb:
+	jam 65,mem_AES_CMAC_data_length
+	arg memdat,contw
+	call store_addr_common_a
+	call store_addr_common_b
+	fetch 3,mem_le_pres+1
+	istore 3,contw
+//	arg mem_le_r,contr
+//	call memcpy16	
+	call get_r
+	
+	arg mem_le_mrand,contr
+	call memcpy16
+	arg mem_le_srand,contr
+	call memcpy16
+	call inverse_memdat
+	arg mem_le_mackey ,contr
+	arg mem_AES_CMAC_k,contw
+	call memcpy16
+//	call p_store_inverse_k	
+	branch function_AES_CMAC
+//	arg mem_AES_CMAC_temp,contw
+//	branch p_load_inverse_result
+
+get_r:
+	fetch 4,mem_le_tk
+	istore 4,contw
+	call memset0_4
+	branch memset0_8
+
+function_f6_ea:
+	bpatchx patch3b_3,mem_patch3b
+	jam 65,mem_AES_CMAC_data_length
+	arg memdat,contw
+	call store_addr_common_b
+	call store_addr_common_a
+	fetch 3,mem_le_preq+1
+	istore 3,contw
+//	arg mem_le_r,contr
+//	call memcpy16	
+	call get_r
+	arg mem_le_srand,contr
+	call memcpy16
+	arg mem_le_mrand,contr
+	call memcpy16
+	call inverse_memdat
+	arg mem_le_mackey ,contr
+	arg mem_AES_CMAC_k,contw
+	call memcpy16
+//	call p_store_inverse_k	
+	call function_AES_CMAC
+	arg mem_AES_CMAC_temp,contw
+	branch load_inverse_result
+
+function_f5:
+	jam 32,mem_AES_CMAC_data_length
+	arg mem_le_dhkey_256 ,contr
+	arg memdat,contw
+	call memcpy32
+	call inverse_memdat
+	arg mem_le_slat,contr
+	call store_inverse_k	
+	call function_AES_CMAC
+	arg mem_AES_CMAC_k,contw
+	call store_aes_result
+	arg 1,temp
+	call function_f5_common
+	arg mem_le_ltk,contw
+	call load_inverse_result
+	arg 0,temp
+	call function_f5_common
+	arg mem_le_mackey,contw
+//	branch p_load_inverse_result
+	branch store_aes_result
+
+
+function_f5_common:
+	bpatchx patch3b_4,mem_patch3b
+	jam 53,mem_AES_CMAC_data_length
+	setarg 0x100
+	store 2,memdat
+	call store_addr_common_b
+	call store_addr_common_a
+	arg mem_le_srand,contr
+	call memcpy16
+	arg mem_le_mrand,contr
+	call memcpy16
+//	fetch 4,mem_le_keyid 0x62746c65
+	setarg 0x6c65
+	istore 2,contw
+	setarg 0x6274
+	istore 2,contw
+	istoret 1,contw   //counter
+	call inverse_memdat	
+	branch function_AES_CMAC
+
+store_addr_common_b:
+	fetch 6,mem_le_lap
+	istore 6,contw
+	fetch 1,mem_le_conn_own_addr_type
+	istore 1,contw
+	rtn
+
+store_addr_common_a:
+	fetch 6,mem_le_plap
+	istore 6,contw
+//	setarg 0x2dcfc1
+//	istore 3,contw
+//	setarg 0xa71370
+//	istore 3,contw
+	fetch 1,mem_le_conn_peer_addr_type
+	istore 1,contw
+	rtn
+
+function_f4_ca:
+	jam 65,mem_AES_CMAC_data_length
+	fetch 1,mem_passkey_1bit
+	store 1,memdat
+	arg mem_le_pubkey_local_x_256,contr
+	call memcpy32
+	arg mem_le_pubkey_remote_x_256,contr
+	call memcpy32
+	call inverse_memdat
+	arg mem_le_mrand,contr
+	call store_inverse_k	
+	branch function_AES_CMAC
+	
+
+function_f4_cb:
+	jam 65,mem_AES_CMAC_data_length
+	fetch 1,mem_passkey_1bit
+	store 1,memdat
+	arg mem_le_pubkey_remote_x_256,contr
+	call memcpy32
+	arg mem_le_pubkey_local_x_256,contr
+	call memcpy32
+	call inverse_memdat
+	arg mem_le_srand,contr
+	call store_inverse_k	
+	branch function_AES_CMAC
+
+function_AES_CMAC:
+	bpatchx patch3b_5,mem_patch3b
+	call function_AES_CMAC_Generate_Subkey
+//call ice_break
+//	jam 65,mem_AES_CMAC_data_length
+//call ice_break
+	fetch 1,mem_AES_CMAC_data_length
+	copy pdata,temp
+function_ceil16:
+	increase 15,pdata
+	rshift4 pdata,pdata
+	copy pdata,regb
+	branch function_AES_CMAC_set_flag_0_balnk,blank
+	and temp,0x0f,pdata
+	nbranch function_AES_CMAC_set_flag_0,blank
+//	flag =1;
+	arg mem_AES_CMAC_k1,regc
+	arg memdat,pdata
+	increase -16,pdata
+//	iadd temp,pdata
+//	isub rega,rega
+	iadd temp,rega	
+	arg mem_AES_CMAC_M_last,contw
+	arg 4,loopcnt	
+	call xor_loop
+//call ice_break
+//	arg mem_f4_k1,contr
+//	call load_key
+	branch function_AES_CMAC_aes
+
+function_AES_CMAC_set_flag_0_balnk:
+	arg 1,regb
+	arg 0,rega
+//	arg mem_f4_test_data,pdata
+	branch function_AES_CMAC_set_flag_0_common
+//call ice_break
+
+function_AES_CMAC_set_flag_0:
+//	flag = 0;
+	and temp,0x0f,rega
+function_AES_CMAC_set_flag_0_common:
+	arg memdat,pdata
+	iadd temp,pdata
+	isub rega,contr
+//call ice_break
+	arg mem_AES_CMAC_temp,contw
+	call function_AES_CMAC_padding
+//call ice_break
+	arg mem_AES_CMAC_k2,regc
+	arg mem_AES_CMAC_temp,rega
+	arg mem_AES_CMAC_M_last,contw
+	arg 4,loopcnt	
+	call xor_loop	
+//call ice_break
+
+//	arg mem_f4_k2,contr
+//	call load_key
+
+//	branch p_function_f4_aes
+function_AES_CMAC_aes:
+//	arg mem_f4_k,contr
+//	call load_key
+//	arg mem_AES_CMAC_xor,contr
+//	call load_data128
+	call aes_clear_data
+	call aes_init	
+//	arg mem_f4_k,contr
+//	call load_key
+	arg memdat,contr
+function_AES_CMAC_aes_loop:
+//generate_mic_loop:
+	increase -1,regb
+	deposit regb
+	branch function_AES_CMAC_aes_loop_end,blank
+	call load_data128
+	call do_aes_cbc
+	branch function_AES_CMAC_aes_loop
+//generate_mic_end:
+function_AES_CMAC_aes_loop_end:	
+	arg mem_AES_CMAC_temp,contw
+	call store_aes_result
+	arg mem_AES_CMAC_M_last,contr
+	call load_data128
+	call aes_init	
+	arg mem_AES_CMAC_temp,contr
+	call load_data128	
+	branch do_aes_cbc
+
+
+
+load_inverse_result:
+//	arg mem_AES_CMAC_temp,contw
+	copy contw,rega
+	call store_aes_result
+//	arg mem_AES_CMAC_temp,rega
+	arg 16,loopcnt
+	branch inverse_data
+	
+store_inverse_k:
+	arg mem_AES_CMAC_k,contw
+	call memcpy16
+inverse_k:	
+	arg 16,loopcnt
+	arg mem_AES_CMAC_k,rega	
+	branch inverse_data
+	
+inverse_memdat:
+	fetch 1,mem_AES_CMAC_data_length
+	copy pdata,loopcnt
+	arg memdat,rega
+	branch inverse_data
+
+bn_lshift_0_inverse:
+	ifetch 1,regA
+	lshift pdata,pdata
+	isolate1 0,regC
+	setflag true,0,pdata	
+	isolate1 8,pdata
+	setflag true,0,regC	
+	istore 1,rega
+         increase -1,rega
+	loop bn_lshift_0_inverse
+	rtn	
+
+function_AES_CMAC_k1_inverse:
+	arg mem_AES_CMAC_k1,regA
+function_AES_CMAC_inverse_common:
+	increase 15,rega
+	force 16,loopcnt
+	force 0,regC
+	branch  bn_lshift_0_inverse	
+
+function_AES_CMAC_k2_inverse:
+	arg mem_AES_CMAC_k2,regA
+	branch function_AES_CMAC_inverse_common
+	
+
+function_AES_CMAC_Generate_Subkey:
+	arg mem_AES_CMAC_k,contr
+	call load_key
+//	arg mem_AES_CMAC_xor,contr
+//	call aes_load_xor
+	force regidx_xor,regext_index
+	call aes_clear
+	call aes_clear_data
+	call do_aes_ocb
+	
+//	force 0x38,aes_ctrl
+//	force 0x0,aes_ctrl
+//	call wait_aes
+	arg mem_AES_CMAC_k1,contw
+	call store_aes_result
+function_AES_CMAC_k1:
+	bpatchx patch3b_6,mem_patch3b
+	fetch 1,mem_AES_CMAC_k1
+	isolate1 7,pdata
+	nbranch function_AES_CMAC_k1_0,true	
+	call function_AES_CMAC_k1_inverse
+	
+//p_function_f4_k1_xor:
+	arg mem_AES_CMAC_k1,regc
+//	arg mem_AES_CMAC_rb,rega
+	arg mem_AES_CMAC_k1,contw
+//	arg 3,loopcnt
+//	call xor_loop
+	call function_AES_CMAC_xor_rb
+	branch function_AES_CMAC_k2
+function_AES_CMAC_k1_0:	
+	call function_AES_CMAC_k1_inverse
+function_AES_CMAC_k2:
+//call ice_break
+	arg mem_AES_CMAC_k1,contr
+	arg mem_AES_CMAC_k2,contw
+	call memcpy16
+	fetch 1,mem_AES_CMAC_k2
+	isolate1 7,pdata
+	nbranch function_AES_CMAC_k2_inverse,true		
+	call function_AES_CMAC_k2_inverse
+//p_function_f4_k2_xor:
+	arg mem_AES_CMAC_k2,regc
+//	arg mem_AES_CMAC_rb,rega
+	arg mem_AES_CMAC_k2,contw
+//	arg 3,loopcnt
+//	branch xor_loop	
+
+
+//rb:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 87 
+function_AES_CMAC_xor_rb:
+	arg 3,loopcnt
+function_AES_CMAC_xor_rb_loop:	
+	arg 0,temp
+	call function_AES_CMAC_xor_loop_common	
+	increase 4,regc
+	loop  function_AES_CMAC_xor_rb_loop
+	arg 0x8700,temp
+	lshift16 temp,temp
+function_AES_CMAC_xor_loop_common:	
+	ifetch   4,regc
+	ixor  temp,pdata
+	istore   4,contw	
+	rtn
+		
+
+
+
+//input rega :length <16	contr,contw
+function_AES_CMAC_padding:
+	bpatchx patch3b_7,mem_patch3b
+	arg 16,loopcnt
+	arg 0,pdata
+function_AES_CMAC_padding_loop:
+	isub rega,null
+	branch function_AES_CMAC_padding_beq_length,zero
+	branch function_AES_CMAC_padding_big_length,positive
+	ifetcht 1,contr
+	istoret 1,contw
+function_AES_CMAC_padding_loop2:	
+	increase 1,pdata
+	loop function_AES_CMAC_padding_loop
+	rtn
+function_AES_CMAC_padding_beq_length:	
+	arg 0x80,temp
+function_AES_CMAC_padding_common:
+	istoret 1,contw
+	branch  function_AES_CMAC_padding_loop2
+
+function_AES_CMAC_padding_big_length:
+	arg 0,temp
+	branch function_AES_CMAC_padding_common
+
+endif
+	
+generate_kinit:
+	call function_e22
+	arg mem_input_store,contr
+	arg mem_kinit,contw		/* Kinit is ready */
+	branch memcpy16
+
+
+function_e21:	/* rega pointers to bdaddr */
+	disable user
+	call function_expand
+	arg mem_random_number,contr
+	arg mem_x,contw
+	force 15,loopcnt
+	call memcpy			
+	ifetch 1,contr
+	xor_into 6,pdata
+	istore 1,contw
+	setarg mem_y
+	store 2,memp_ar_input
+	setarg mem_x
+	store 2,memp_ar_key
+	set1 mark_ar2,mark
+	branch function_ar
+
+
+	
+function_e22:		/* rega pointers to bdaddr */
+	fetcht 1,mem_pin_length
+	force 16,regb			/* total 16 bytes */
+	add temp,6,regc		/* regc is l' */
+	sub regc,16,null		
+	branch function_e22_pin_init,positive 
+	force 16,regc
+function_e22_pin_init:			/* generate x from pin and bdaddr */
+	arg mem_x,contw
+function_e22_genx_pin:
+	arg mem_pin,contr
+	copy temp,loopcnt
+	disable user
+function_e22_genx_loop:
+	ifetch 1,contr
+	istore 1,contw
+	increase -1,regb
+	branch function_e22_genx_end,zero
+	loop function_e22_genx_loop
+	branch function_e22_genx_pin,user
+	enable user
+	force 6,loopcnt
+	copy rega,contr
+	branch function_e22_genx_loop
+function_e22_genx_end:
+	arg mem_random_number,contr
+	arg mem_y,contw
+	call memcpy16
+	fetch 1,mem_y15
+	ixor regc,pdata
+	store 1,mem_y15	/* inpy[15] = rand_num[15]^l'; */
+	setarg mem_y
+	store 2,memp_ar_input
+	setarg mem_x
+	store 2,memp_ar_key
+	set1 mark_ar2,mark
+	branch function_ar
+
+
+
+
+function_e1:	/* rega pointers to bdaddr */
+	disable user
+	call function_expand
+	branch function_hash
+
+function_e3:
+	arg mem_aco,rega
+	enable user
+	call function_expand
+	call function_hash
+	arg mem_input_store,contr
+	arg mem_kc,contw
+	branch memcpy16
+
+	/* costs 41769 clocks */
+function_hash:
+	setarg mem_random_number
+	store 2,memp_ar_input
+	setarg mem_link_key
+	store 2,memp_ar_key
+	set0 mark_ar2,mark
+	call function_ar
+	arg mem_input_store,rega
+	arg mem_random_number,regb
+	arg mem_x,contw
+	call xor16
+	arg mem_x,rega
+	arg mem_y,regb
+	copy regb,contw
+	enable user
+	call add16
+	call key_offset
+	setarg mem_y
+	store 2,memp_ar_input
+	setarg mem_x
+	store 2,memp_ar_key
+	set1 mark_ar2,mark
+	branch function_ar
+	
+
+	/* totally costs 20700 clocks */
+function_ar:
+	jam 0,mem_ar_hround
+	fetch 2,memp_ar_key
+	iforce contr
+	arg mem_key_store,contw
+	call memcpy16
+	fetch 2,memp_ar_input
+	iforce contr
+	arg mem_input_store,contw
+	call memcpy16
+	
+function_ar_loop:
+	call key_scheduling
+	disable user
+	bmark0 mark_ar2,function_ar_original
+	fetch 1,mem_ar_hround
+	bne 4,function_ar_original
+	fetch 2,memp_ar_input
+	iforce regb
+	call xor_mod32_ar2
+function_ar_original:
+	call xor_mod32
+	call el_boxes
+	fetch 1,mem_ar_hround
+	increase 1,pdata
+	store 1,mem_ar_hround
+
+	call key_scheduling
+	enable user
+	call xor_mod32
+	call pht
+	call permute
+	call pht
+	call permute
+	call pht
+	call permute
+	call pht
+	fetch 1,mem_ar_hround
+	increase 1,pdata
+	store 1,mem_ar_hround
+	bne 16,function_ar_loop
+	call key_scheduling
+	disable user
+	branch xor_mod32
+	
+/* input round number and temp key in mem_key_store, and output the next temp key in mem_key_store */
+/* round key is generated and store in mem_round_key */
+key_scheduling:
+	fetch 1,mem_ar_hround
+	arg mem_key_store,contr
+	branch key_sched_zero,blank
+	iforce regb      			/* regb is half round */
+	force 17,loopcnt
+	copy contr,contw
+key_rotateloop:
+	ifetch 1,contr
+	lshift3 pdata,temp
+	rshift2 pdata,pdata
+	rshift3 pdata,pdata
+	ior temp,pdata
+	istore 1,contw
+	loop key_rotateloop
+	setarg mem_key_store
+	iadd regb,contr
+	force 16,loopcnt    
+	arg mem_round_key,contw
+key_select_octet_loop:
+	ifetch 1,contr
+	istore 1,contw
+	compare mem_key_store_end,contr,0xff
+	nbranch key_select_octet_nwrap,true
+	increase -17,contr
+key_select_octet_nwrap:
+	loop key_select_octet_loop
+	force 0,rega         /* rega is index of octet within row */
+	add regb,-1,regc    /* this is the row index, half_round#1 is 0 */
+	lshift2 regc,regc
+	lshift2 regc,regc
+	call enable_authrom
+	setarg mem_b_box
+	iadd regc,regc       /* regc hold the starting address of the row */
+	arg mem_round_key,contw
+	force 16,loopcnt
+bias_round_key_loop:
+	ifetcht 1,regc
+	ifetch 1,contw
+	iadd temp,pdata
+	istore 1,contw
+	increase 1,regc
+	loop bias_round_key_loop
+	branch disable_authrom
+
+key_sched_zero:    /* round 0, key1 */
+	force 16,loopcnt
+	force 0,temp
+create_byte_16_loop:
+	ifetch 1,contr
+	ixor temp,temp
+	loop create_byte_16_loop
+	deposit temp
+	istore 1,contr    	/* store the byte #16 */
+	arg mem_key_store,contr
+	arg mem_round_key,contw
+	branch memcpy16
+
+xor_mod32:     /* xor on 0,3, add on 1,2. if user is set, invert. x in rega and y in regb, out in contw */
+	arg mem_round_key,regb
+xor_mod32_ar2:
+	force 16,loopcnt
+	arg mem_input_store,rega
+	copy rega,contw
+xor_mod32_loop:	
+	ifetcht 1,rega
+	ifetch 1,regb
+	ixor temp,alarm
+	and loopcnt,3,regc
+	nbranch xor_mod32_invert,user
+	xor_into 3,regc
+xor_mod32_invert:
+	sub regc,1,regc
+	branch xor_even,positive
+	iadd temp,alarm
+xor_even:
+	deposit alarm
+	istore 1,contw
+	increase 1,rega
+	increase 1,regb
+	loop xor_mod32_loop
+	rtn
+
+el_boxes:
+	call enable_authrom
+	force 16,loopcnt
+	arg mem_input_store,rega
+el_box_loop:	
+	ifetch 1,rega
+	arg mem_e_box,contr
+	and loopcnt,3,regc
+	sub regc,1,null
+	branch e_boxes,positive
+	arg mem_l_box,contr
+e_boxes:
+	iadd contr,contr
+	ifetch 1,contr
+	istore 1,rega
+	increase 1,rega
+	loop el_box_loop
+	branch disable_authrom
+
+pht:				
+	force 8,loopcnt
+	arg mem_input_store,contr
+	copy contr,contw
+pht_loop:
+	ifetch 1,contr
+	iforce rega
+	ifetch 1,contr
+	iforce regb
+	lshift rega,pdata
+	iadd regb,pdata
+	istore 1,contw
+	deposit rega
+	iadd regb,pdata
+	istore 1,contw
+	loop pht_loop
+	rtn
+
+/* 8 11 12 15 2 1 6 5 10 9 14 13 0 7 4 3 */
+permute:			
+	setarg 0x8ae42c
+	iforce temp
+	force 7,loopcnt
+	call permute_exchange
+	setarg 0xd751b
+	iforce temp
+	force 5,loopcnt
+	call permute_exchange
+	fetch 1,mem_input_store+15
+	iforce rega
+	fetch 1,mem_input_store+3
+	store 1,mem_input_store+15
+	deposit rega
+	store 1,mem_input_store+3
+	rtn
+
+permute_exchange:
+	and temp,0xf,regb
+permute_loop:
+	and temp,0xf,pdata
+	arg mem_input_store,contw
+	iadd contw,contw
+	ifetch 1,contw
+	iforce regc
+	deposit rega
+	istore 1,contw
+	copy regc,rega
+	rshift4 temp,temp
+	loop permute_loop	
+	setarg mem_input_store
+	iadd regb,contw
+	deposit rega
+	istore 1,contw
+	rtn
+
+add16:
+	enable user
+	branch xor_add16
+
+xor16:
+	disable user
+xor_add16:	/* if user is set, do add, else do xor */
+	force 16,loopcnt	/* rega and regb pointers to src, contw is result */
+xoradd_loop:
+	ifetcht 1,rega
+	ifetch 1,regb
+	branch xoradd_add,user
+	ixor temp,pdata
+	branch xoradd_store
+xoradd_add:	
+	iadd temp,pdata
+xoradd_store:	
+	istore 1,contw
+	increase 1,rega
+	increase 1,regb
+	loop xoradd_loop
+	rtn
+
+	
+function_expand:		/* rega pointers to bdaddr, or aco and user is set */
+	arg mem_y,contw
+	ifetch 6,rega
+	istore 6,contw
+	branch expand_12,user
+	ifetch 6,rega
+	branch expand_cont
+expand_12:
+	ifetch 6,contr
+expand_cont:
+	istore 6,contw
+	ifetch 4,rega
+	istore 4,contw
+	rtn
+
+key_offset:
+	arg mem_link_key,contr
+	arg mem_x,contw
+	arg 0,temp
+	setarg 0x8395a7
+	call concatenate_temp24
+	setarg 0xb3c1df
+	call concatenate_temp24
+	setarg 0xe5e9
+	call concatenate_temp16
+	copy temp,regab
+	disable user
+	call key_addxor
+	copy regab,temp
+	enable user
+	branch key_addxor
+
+key_addxor:
+	force 8,loopcnt
+key_addxor_loop:	
+	ifetch 1,contr
+	compare 1,loopcnt,1
+	branch key_high,user
+	branch key_xor,true
+key_add:	
+	iadd temp,pdata
+	branch key_store
+key_high:
+	branch key_add,true
+key_xor:
+	ixor temp,pdata
+key_store:
+	istore 1,contw
+	rshift8 temp,temp
+	loop key_addxor_loop
+	rtn
+
+copy_aco:
+	fetch 6,mem_input_store+4
+	store 6,mem_aco
+	ifetch 6,contr
+	istore 6,contw
+	rtn
+	
+concatenate_temp24:
+	lshift8 temp,temp
+concatenate_temp16:
+	lshift16 temp,temp
+	ior temp,temp
+	rtn
+
+ifdef TESTING
+test_security:
+	fetch 1,0xff
+	branch test_security,blank
+
+	/* inrand */
+	setarg 0x1BC683
+	store 3,0x0
+	setarg 0x122980
+	istore 3,contw
+	setarg 0xD0DB17
+	istore 3,contw
+	setarg 0x2B1D78
+	istore 3,contw
+	setarg 0x2743A6
+	istore 3,contw
+	setarg 0xD8
+	istore 1,contw
+
+	/* comb A */
+	setarg 0xA6D0C9
+	store 3,0x10
+	setarg 0xA9E86C
+	istore 3,contw
+	setarg 0x9E89D5
+	istore 3,contw
+	setarg 0xC61838
+	istore 3,contw
+	setarg 0x6F0318
+	istore 3,contw
+	setarg 0x9F
+	istore 1,contw
+
+	/* comb B */
+	setarg 0x7F6833
+	store 3,0x20
+	setarg 0xE62E1B
+	istore 3,contw
+	setarg 0x9F67FC
+	istore 3,contw
+	setarg 0x8D3712
+	istore 3,contw
+	setarg 0x0B846C
+	istore 3,contw
+	setarg 0x4A
+	istore 1,contw
+
+	/* auth rand A */
+	setarg 0xFBB686
+	store 3,0x30
+	setarg 0x19FE7F
+	istore 3,contw
+	setarg 0x16A439
+	istore 3,contw
+	setarg 0xF4F6A4
+	istore 3,contw
+	setarg 0x10D61D
+	istore 3,contw
+	setarg 0xDE
+	istore 1,contw
+
+	/* auth rand B */
+	setarg 0x735B0C
+	store 3,0x40
+	setarg 0xA7F06B
+	istore 3,contw
+	setarg 0x04625E
+	istore 3,contw
+	setarg 0x3463B0
+	istore 3,contw
+	setarg 0xB8F17A
+	istore 3,contw
+	setarg 0x7C
+	istore 1,contw
+
+	/* address A */
+	setarg 0xf91330
+	store 3,0xb0
+	setarg 0x664c7d
+	istore 3,contw
+
+	/* address B */
+	setarg 0xdc7100
+	store 3,0xb8
+	setarg 0x2ea003
+	istore 3,contw
+
+	/* sres A */
+	setarg 0x2EEE19
+	store 3,0x50
+	setarg 0x7E
+	istore 1,contw
+
+	/* sres B */
+	setarg 0x4231A4
+	store 3,0x58
+	setarg 0xD1
+	istore 1,contw
+
+	/* linkA */
+	setarg 0xa6a026
+	store 3,0x60
+	setarg 0x2569d2
+	istore 3,contw
+	setarg 0xab4a9d
+	istore 3,contw
+	setarg 0x5e87c0
+	istore 3,contw
+	setarg 0x792aa9
+	istore 3,contw
+	setarg 0x4b
+	istore 1,contw
+
+	/* linkB */
+	setarg 0xa1f07d
+	store 3,0x70
+	setarg 0xec97a6
+	istore 3,contw
+	setarg 0xae31eb
+	istore 3,contw
+	setarg 0x6fe3c4
+	istore 3,contw
+	setarg 0xa1ae1a
+	istore 3,contw
+	setarg 0x3a
+	istore 1,contw
+
+	/* linkkey */
+	setarg 0x07505b
+	store 3,0x80
+	setarg 0xc9fe74
+	istore 3,contw
+	setarg 0x057b76
+	istore 3,contw
+	setarg 0x316404
+	istore 3,contw
+	setarg 0xd884b3
+	istore 3,contw
+	setarg 0x71
+	istore 1,contw
+
+	/* K */
+	setarg 0x0c333f
+	store 3,0x90
+	setarg 0x41de70
+	istore 3,contw
+	setarg 0x9b05a2
+	istore 3,contw
+	setarg 0xb954a2
+	istore 3,contw
+	setarg 0xb37516
+	istore 3,contw
+	setarg 0x36
+	istore 1,contw
+
+	/* kinit */
+	setarg 0x5ff91a
+	store 3,0xa0
+	setarg 0x39b5a4
+	istore 3,contw
+	setarg 0x258f2d
+	istore 3,contw
+	setarg 0x5d4a85
+	istore 3,contw
+	setarg 0x656ad3
+	istore 3,contw
+	setarg 0xab
+	istore 1,contw
+
+	arg 0,contr
+	arg mem_random_number,contw
+	call memcpy16
+	setarg 0x3131
+	store 2,mem_pin
+	istore 2,contw
+	jam 4,mem_pin_length
+	arg 0xb8,rega
+	call function_e22
+	arg mem_input_store,contr
+	arg mem_kinit,contw
+	call memcpy16
+	arg 0x10,rega
+	arg mem_kinit,regb
+	arg mem_random_number,contw
+	call xor16
+	arg 0xb0,rega
+	call function_e21
+	arg 0x60,regb
+	call compare16
+error_lka:
+	nbranch error_lka,zero
+	arg mem_input_store,contr
+	arg mem_link_key,contw	
+	call memcpy16
+	arg 0x20,rega
+	arg mem_kinit,regb
+	arg mem_random_number,contw
+	call xor16
+	arg 0xb8,rega
+	call function_e21
+	arg 0x70,regb
+	call compare16
+error_lkb:
+	nbranch error_lkb,zero
+	arg mem_input_store,rega
+	arg mem_link_key,regb
+	arg mem_link_key,contw
+	call xor16
+	arg 0x30,contr
+	arg mem_random_number,contw
+	call memcpy16
+	arg 0xb8,rega
+	call function_e1
+	arg 0x50,regb
+	force 4,loopcnt
+	call compare_key
+error_sresa:
+	nbranch error_sresa,zero
+	arg 0x40,contr
+	arg mem_random_number,contw
+	call memcpy16
+	arg 0xb0,rega
+	call function_e1
+	arg 0x58,regb
+	force 4,loopcnt
+	call compare_key
+error_sresb:
+	nbranch error_sresb,zero
+	branch loop1
+	
+	arg 0,contr
+	arg mem_random_number,contw
+	call memcpy16
+	force 12,loopcnt
+	call memcpy
+	arg 0x1c,contr
+	arg mem_link_key,contw
+	call memcpy16
+	arg 0x10,rega
+	call function_e3
+	branch loop1
+
+compare16:
+	force 16,loopcnt
+compare_key:
+	arg mem_input_store,rega
+	branch compare_loop
+
+compare_loop:
+	ifetch 1,rega
+	ifetcht 1,regb
+	isub temp,null
+	nrtn zero
+	increase 1,rega
+	increase 1,regb
+	loop compare_loop
+	force 0,pdata
+	rtn
+
+endif
+
+
+loop1:	
+	branch loop1
+
+/* ==================== LE security ================= */
+
+generate_stk:
+	bpatchx patch3c_0,mem_patch3c
+	call function_s1
+	arg mem_le_ltk,contw
+	branch store_aes_result
+
+	/* contr = rand pointer */
+authenticate_rconfirm:
+	arg mem_le_srand,contw
+	branch authenticate_mconfirm,master
+	arg mem_le_mrand,contw
+authenticate_mconfirm:
+	copy contr,rega
+	call memcpy16
+	call function_c1
+	arg mem_le_rconfirm,contr
+	branch compare_res
+
+generate_confirm:
+	arg mem_le_mrand,rega
+	branch generate_mrand,master
+	arg mem_le_srand,rega
+generate_mrand:
+	copy rega,contw
+	call generate_random
+	branch function_c1
+
+generate_sk:
+	arg mem_le_skdm,contr
+	call load_data128
+	arg mem_le_ltk,contr
+	call load_regext
+	force 0x38,aes_ctrl
+	force 0x0,aes_ctrl
+	call wait_aes
+	arg mem_le_sk,contw
+	branch store_aes_result
+
+	/* temp=packet counter, rega = length or block counter*/
+first_block_counter:
+	force 0x49,pdata
+	branch first_block
+first_block_data:
+	force 1,pdata
+first_block:
+	force regidx_data,regext_index			/* B0 */
+	lshift8 temp,regext
+	ior regext,regext
+	increase 1,regext_index
+	rshift8 temp,regext
+	rshift16 regext,regext
+	fetch 2,mem_le_ivm
+	lshift16,pdata,pdata
+	ior regext,regext				/* octet3&octet4 of counter and low 16 bit of IV */
+	increase 1,regext_index
+	ifetch 4,contr					/* IV2-IV5 */
+	iforce regext
+	increase 1,regext_index
+	ifetch 2,contr					/* IV6-IV7 */
+	byteswap rega,regext
+	lshift16 regext,regext
+	ior regext,regext
+	increase 1,regext_index
+	rtn
+
+
+	/* temp=packet counter, regc pointers to data */	
+generate_mic:
+	add regc,1,contr
+	ifetch 1,contr
+	iforce rega
+	call first_block_counter
+	call do_aes_ocb
+
+	force regidx_data,regext_index			/* B1 */
+	ifetch 1,regc
+	and_into 0x3,pdata
+	lshift16 pdata,regext
+	set1 8,regext
+	call clear_hidata
+	call do_aes_cbc
+
+	copy rega,loopcnt
+	add regc,2,contr
+	call padding_data
+generate_mic_loop:
+	call aes_load_data
+	call do_aes_cbc
+	deposit loopcnt
+	branch generate_mic_end,blank
+	branch generate_mic_loop
+generate_mic_end:
+	force regidx_result,regext_index
+	deposit regext
+	store 4,mem_le_mic
+	rtn
+
+aes_crypt_data:
+	increase 1,rega
+	call first_block_data
+	copy regc,contr
+	call aes_load_xor
+	call do_aes_ctr
+	call store_enc_data
+	increase 16,regc
+	increase -16,regb
+	branch aes_crypt_data,positive
+	rtn
+	
+le_encrypt:
+	bpatchx patch3c_1,mem_patch3c
+	arg mem_le_txheader,regc
+	fetcht 5,mem_le_pcnt_tx
+	call generate_mic
+	force regidx_xor,regext_index
+	iforce regext
+	force 0,rega					/* rega is block counter */
+	call first_block_data
+	call do_aes_ctr
+	arg mem_le_txpayload,regc
+	fetch 1,mem_le_txlen
+	add pdata,-1,regb
+	iadd regc,contw
+	force regidx_result,regext_index
+	deposit regext
+	istore 4,contw	
+	call aes_crypt_data
+	fetch 1,mem_le_txlen
+	increase 4,pdata
+	store 1,mem_le_txlen
+	fetcht 5,mem_le_pcnt_tx
+	increase 1,temp
+	storet 5,mem_le_pcnt_tx
+	rtn
+
+le_decrypt:
+	bpatchx patch3c_2,mem_patch3c
+	fetch 1,mem_le_rxbuf+1
+	sub pdata,20,null
+	branch le_dec_cont,positive
+le_dec_cont:
+	arg mem_le_rxbuf+2,regc
+	add pdata,-1,regb
+	increase -4,pdata				/* mic will be discarded */
+	store 1,mem_le_rxbuf+1
+	iadd regc,contr
+	ifetch 4,contr
+	force regidx_xor,regext_index
+	iforce regext
+	force 0,rega					/* rega is block counter */
+	fetcht 5,mem_le_pcnt_rx
+	call first_block_data
+	call do_aes_ctr
+	force regidx_result,regext_index
+	deposit regext
+	store 4,mem_le_peer_mic
+	call aes_crypt_data
+	arg mem_le_rxbuf,regc
+	call generate_mic
+	fetcht 4,mem_le_peer_mic
+	isub temp,pdata				/* MIC ok? */
+	nrtn blank
+	fetch 4,mem_le_last_mic			/* reduntdant packet? */
+	isub temp,pdata
+	rtn blank
+	storet 4,mem_le_last_mic
+	fetch 5,mem_le_pcnt_rx
+	increase 1,pdata
+	store 5,mem_le_pcnt_rx
+	force 0,pdata
+	rtn
+
+wait_aes:
+	nbranch wait_aes,aes_ready
+	rtn
+
+do_aes_ocb:
+	force 0x30,aes_ctrl
+	force 0x0,aes_ctrl
+	branch wait_aes
+
+do_aes_cbc:
+	force 0x32,aes_ctrl
+	force 0x2,aes_ctrl
+	branch wait_aes
+
+do_aes_ctr:
+	force 0x34,aes_ctrl
+	force 0x4,aes_ctrl
+	branch wait_aes
+
+	
+aes_init:
+	force 1,aes_ctrl
+	force 0,aes_ctrl
+	rtn
+function_s1:
+	force regidx_data,regext_index
+	fetch 4,mem_le_mrand
+	iforce regext
+	increase 1,regext_index
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	fetch 4,mem_le_srand
+	iforce regext
+	increase 1,regext_index
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	call aes_clear
+	increase -4,regext_index
+	fetch 4,mem_le_tk
+	copy pdata,regext
+	increase 4,regext_index
+	force 0x38,aes_ctrl
+	force 0x8,aes_ctrl
+	branch wait_aes
+
+	/* rega pointers to random number */
+function_c1:
+	bpatchx patch3c_3,mem_patch3c
+	fetch 6,mem_le_lap
+	fetcht 6,mem_le_plap
+	branch function_c1_master,master
+	fetch 6,mem_le_plap
+	fetcht 6,mem_le_lap
+function_c1_master:
+	force regidx_xor,regext_index
+	copy temp,regext
+	increase 1,regext_index
+	rshift32 temp,regext
+	lshift16 pdata,pdata
+	ior regext,regext
+	increase 1,regext_index
+	rshift32 pdata,regext
+	increase 1,regext_index
+	force 0,regext					/* p2 = ia || ra */
+	force 0,pdata
+	fetch 1,mem_le_conn_peer_addr_type
+	fetcht 1,mem_le_adv_own_addr_type
+	nbranch function_c1_irat,master
+	//conn as master
+	fetch 1,mem_le_conn_own_addr_type
+	fetcht 1,mem_le_conn_peer_addr_type
+function_c1_irat:
+	store 1,mem_le_iat
+	storet 1,mem_le_rat
+	force regidx_data,regext_index
+	arg mem_le_iat,regb
+	force 4,loopcnt
+function_c1_loop1:
+	ifetch 4,rega		
+	ifetcht 4,regb
+	ixor temp,regext
+	increase 1,regext_index
+	increase 4,rega
+	increase 4,regb
+	loop function_c1_loop1		/* p1 ^ r */
+	call aes_clear				/* k = 0 */
+	increase -4,regext_index
+	fetch 4,mem_le_tk
+	copy pdata,regext
+	increase 4,regext_index
+	force 0x38,aes_ctrl
+	force 0xc,aes_ctrl
+	call wait_aes
+
+	call aes_clear_data
+	force 0x3a,aes_ctrl
+	force 0x8,aes_ctrl
+	branch wait_aes
+
+padding_data:
+	compare 0,loopcnt,3
+	rtn true
+	deposit contr
+	iadd loopcnt,contw
+	force 0,pdata
+padding_loop:
+	istore 1,contw
+	increase 1,loopcnt
+	compare 0,loopcnt,3
+	rtn true
+	branch padding_loop
+
+aes_load_data:
+	force regidx_data,regext_index
+load_data_loop:
+	deposit loopcnt
+	branch load_data_padding,blank
+	ifetch 4,contr
+	increase -4,loopcnt
+load_data_padding:
+	iforce regext
+	increase 1,regext_index
+	compare regidx_key,regext_index,0xf
+	rtn true
+	branch load_data_loop
+
+aes_load_xor:
+	force regidx_xor,regext_index
+	branch load_regext
+load_key:
+	force regidx_key,regext_index
+	branch load_regext
+load_data128:
+	force regidx_data,regext_index
+load_regext:
+	force 4,loopcnt
+load_regext_loop:
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	loop load_regext_loop
+	rtn
+
+load_sk:
+	arg mem_le_sk,contr
+	branch load_key
+
+clear_hidata:
+	force 4,loopcnt
+	branch clear_data_rest
+
+aes_clear_data:
+	force regidx_data,regext_index
+aes_clear:
+	force 4,loopcnt
+clear_loop:
+	force 0,regext
+clear_data_rest:
+	increase 1,regext_index
+	loop clear_loop
+	rtn
+
+store_aes_result:
+	force regidx_result,regext_index
+	force 4,loopcnt
+send_aes_result_loop:
+	deposit regext
+	istore 4,contw
+	increase 1,regext_index
+	loop send_aes_result_loop
+	rtn
+
+store_enc_data:
+	force regidx_result,regext_index
+	copy regc,contw
+	add regb,1,loopcnt
+	sub loopcnt,15,null
+	branch store_enc_loop,positive
+	force 16,loopcnt
+store_enc_loop:
+	deposit regext
+	sub loopcnt,3,null
+	branch store_enc_byte,positive
+	istore 4,contw
+	increase -4,loopcnt
+	rtn zero
+	increase 1,regext_index
+	branch store_enc_loop
+store_enc_byte:
+	istore 1,contw
+	rshift8 pdata,pdata
+	loop store_enc_byte
+	rtn
+	
+	/* contr pointers to value to be compared */
+compare_res:
+	force regidx_result,regext_index
+	force 4,loopcnt
+compare_res_loop:
+	ifetch 4,contr
+	isub regext,null
+	nrtn zero
+	increase 1,regext_index
+	loop compare_res_loop
+	force 0,null
+	rtn
+
+enable_authrom:
+	hfetch 1,core_clkoff
+	set0 CLOCK_OFF_AUTH_ROM,pdata
+	hstore 1,core_clkoff
+	rtn
+
+disable_authrom:
+	hfetch 1,core_clkoff
+	set1 CLOCK_OFF_AUTH_ROM,pdata
+	hstore 1,core_clkoff
+	rtn
+
+init_memp:
+	arg mem_p,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffff
+	setsect 3,0x3fbff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffff
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3cfff
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffef
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x3ffff
+	setsect 2,0x3ffff
+	setsect 3,0x3ffff
+	istore 9,contw
+	setsect 0,0x3ffff
+	setsect 1,0x26c7f
+	setsect 2,0x146b
+	setsect 3,0x37bb3
+	istore 9,contw
+	setsect 0,0x1feb8
+	setsect 1,0x10c12
+	setsect 2,0x2b722
+	setsect 3,0x29fa6
+	istore 9,contw
+	setsect 0,0xe70f
+	setsect 1,0x16720
+	setsect 2,0x519e
+	setsect 3,0x19084
+	istore 9,contw
+	setsect 0,0x31012
+	setsect 1,0x360bf
+	setsect 2,0x3f0af
+	setsect 3,0x3d3
+	istore 9,contw
+	setsect 0,0x3a188
+	setsect 1,0x3ad0
+	setsect 2,0x3cbf2
+	setsect 3,0x243d9
+	istore 9,contw
+	setsect 0,0x2b030
+	setsect 1,0x36a03
+	setsect 2,0x11188
+	setsect 3,0x1e520
+	istore 9,contw
+	setsect 0,0x3a11e
+	setsect 1,0xfe5d
+	setsect 2,0xdd57
+	setsect 3,0x1ac93
+	istore 9,contw
+	setsect 0,0x11ed
+	setsect 1,0x218c4
+	setsect 2,0x8da7
+	setsect 3,0x257ff
+	istore 9,contw
+	setsect 0,0x3192b
+	setsect 1,0x34641
+	setsect 2,0x1be0c
+	setsect 3,0x366ad
+	istore 9,contw
+	setsect 0,0x1f83
+	setsect 1,0x15a23
+	setsect 2,0x3f9b0
+	setsect 3,0x3949
+	istore 9,contw
+	setsect 0,0x13a51
+	setsect 1,0x153fd
+	setsect 2,0x3372a
+	setsect 3,0xf1bb
+	istore 9,contw
+	setsect 0,0x3ae85
+	setsect 1,0x1eed9
+	setsect 2,0x9e66
+	setsect 3,0x1a8
+	istore 8,contw
+	rtn
+	
+ifdef SECURE_CONNECTION
+
+
+init_memp_256:
+ 	arg mem_p_256,contw
+        setsect 0,0x3ffff
+        setsect 1,0x3ffff
+        setsect 2,0x3ffff
+        setsect 3,0x3ffff
+        istore 9,contw
+        setsect 0,0x3ffff
+        setsect 1,0x3f
+        setsect 2,0x0
+        setsect 3,0x0
+        istore 9,contw
+        setsect 0,0x0
+        setsect 1,0x0
+        setsect 2,0x1000
+        setsect 3,0x0
+        istore 9,contw
+        setsect 0,0x3ff00
+        setsect 1,0x3ffff
+        setsect 2,0x3ffcf
+        setsect 3,0x3ffff
+        istore 9,contw
+        setsect 0,0x3ffff
+        setsect 1,0x3ffff
+        setsect 2,0x3ffff
+        setsect 3,0x3ff
+        istore 9,contw
+        setsect 0,0x0
+        setsect 1,0x0
+        setsect 2,0x0
+        setsect 3,0x0
+        istore 9,contw
+        setsect 0,0x10000
+        setsect 1,0x0
+        setsect 2,0x3f000
+        setsect 3,0x3ffff
+        istore 9,contw
+        setsect 0,0x296ff
+        setsect 1,0x22630
+        setsect 2,0x3945d
+        setsect 3,0x3d284
+        istore 9,contw
+        setsect 0,0x333a0
+        setsect 1,0x4b7a
+        setsect 2,0x37d8
+        setsect 3,0x3c9dc
+        istore 9,contw
+        setsect 0,0x3a440
+        setsect 1,0x1b958
+        setsect 2,0x38bce
+        setsect 3,0x1091f
+        istore 9,contw
+        setsect 0,0x2e12c
+        setsect 1,0x1f47c
+        setsect 2,0x356b1
+        setsect 3,0x2fd47
+        istore 9,contw
+        setsect 0,0x6837
+        setsect 1,0x2ed90
+        setsect 2,0x1ecec
+        setsect 3,0x1acc5
+        istore 9,contw
+        setsect 0,0x23357
+        setsect 1,0x18af3
+        setsect 2,0xf9e1
+        setsect 3,0x129f0
+        istore 9,contw
+        setsect 0,0x2e7eb
+        setsect 1,0x3e6e3
+        setsect 2,0x3e1a7
+        setsect 3,0x10b8b
+        istore 9,contw
+        setsect 0,0x24fe3
+        setsect 1,0x20ef
+        setsect 2,0x1b5a6
+        setsect 3,0xdc2f
+        istore 9,contw
+        setsect 0,0x13860
+        setsect 1,0x2bd69
+        setsect 2,0x391a
+        setsect 3,0x1b222
+        istore 9,contw
+        rtn
+endif
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/sim.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/sim.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/sim.prog	(working copy)
@@ -0,0 +1,518 @@
+simstart:
+	force 8,radio_ctrl
+	force 0,radio_ctrl
+	jam 0xe0,0x8907			// set if_phase=7 for simulation environment
+	jam 0xe0,0x890a
+	jam 0x25,0x8912
+	jam 0xff,rfen_ck
+	jam 5,core_clksel
+//	call init_24m
+//	branch sim_usb
+//	branch sim_iic
+//	branch sim_clk
+//	call sim_uart
+//	branch sim_lpm
+//	branch sim_c1
+//	branch loop
+//	call sim_spi
+//	call sim_eep
+//	branch test_tx
+//	branch sim_le
+//	branch sim_250k
+	branch sim_main
+
+
+
+
+sim_lpm:
+	hfetch 1,0xffd
+	beq 1,sim_assert
+	branch sim_lpm_do
+	setarg 0
+	set1 31,pdata
+	store 8,mem_gpio_wakeup_low
+	branch lpm_hibernate
+sim_lpm_sleep:
+	jam 1,mem_context
+	branch sim_lpm_wait,wake
+	jam 0x70,core_bist_ctrl
+	jam ccnt_start,core_misc_ctrl
+sim_lpm_wait:
+	call lpo_calibration
+	fetch 3,mem_clks_per_lpo
+	branch sim_lpm_wait,blank
+	call lpm_recover_clk,wake
+	jam 0x1b,mem_lpm_ldocnt
+	arg sim_assert,loopcnt
+	hfetch 1,core_gpio_wakeup_low+2
+	bbit0 2,sim_lpm_loop
+	until null,lpo_edge
+	jam 0x20,core_misc_ctrl
+	until null,lpo_edge
+sim_lpm_loop:
+	hfetch 1,core_misc_status
+	bbit1 6,sim_lpm_loop
+	hfetch 1,core_gpio_in+3
+	compare 0x20,pdata,0x20
+	setarg 0
+	setflag true,29,pdata
+	setflag true,30,pdata
+	store 4,mem_gpio_wakeup_low
+	setarg 0
+	nsetflag true,29,pdata
+	nsetflag true,30,pdata
+	store 4,mem_gpio_wakeup_high
+sim_lpm_do:
+	arg 30,temp
+	branch lpm_sleep
+
+sim_assert:
+	branch sim_assert
+
+
+sim_main:
+	call init_param
+	jam 0,core_clkoff
+	hfetch 1,0x17fd
+	beq 1,sim_slave
+
+	arg 3,temp
+	call set_freq_tx
+	nop 500
+	enable encode_fec0
+	disable is_rx
+	enable is_tx
+	set1 TXGFSK,radio_ctrl
+	call sim_access
+	preload access
+	inject mod,72
+	setarg 0x123456
+	inject mod,72
+	set1 PSK,radio_ctrl
+	setarg 0xabeee
+	inject mod,20
+	setarg 0x22aa33
+	inject mod,72
+	branch s_loop
+
+
+	jam dvc_op_hci,mem_device_option
+	fetch 6,mem_lap
+	store 6,mem_hci_plap
+	setarg 0xbdbdbd
+	store 3,mem_lap
+	istore 3,contw
+	jam hci_cmd_create_conn,mem_hci_cmd
+	force 0xf,pdata
+	add pdata,-2,clkn_bt
+	store 4,mem_page_clk
+	rshift clkn_bt,pdata
+	store 4,mem_last_clkn
+	jam 0,mem_scan_mode
+sim_loop:
+	call idle_dispatch
+	fetch 1,mem_context
+	bbit0 state_inconn,sim_skip
+	set1 mark_tx_l2cap,mark
+	fetch 1,mem_context + coffset_op		
+	set1 op_txl2cap,pdata
+	store 1,mem_context + coffset_op
+	jam 0,mem_context + coffset_lmp_to_send
+	jam 0,mem_lmo_opcode2
+	setarg 700
+	store 2,mem_tx_len
+	setarg mem_tmp_buffer
+	store 2,mem_txptr
+	jam 6,mem_tx_lch
+	jam 1,mem_hci_conn_handle
+sim_skip:
+	call connection_dispatch
+	branch sim_loop		
+
+sim_slave:
+
+	arg 3,temp
+	call set_freq_rx
+	call rf_rx_enable
+	call sim_access
+	enable is_rx
+	enable decode_fec0
+	correlate null,never
+	set1 PSK,radio_ctrl
+	correlate null,never
+	parse demod,bucket,72
+	branch s_loop
+
+
+	jam 2,mem_scan_mode
+	call page_scan_dispatch
+	branch sim_slave
+
+sim_access:
+	setarg 0x1234567
+	iforce lap
+	pulse recalc
+	nop 32
+	rtn
+
+sim_iic:
+	call iicd_init_12m
+	setarg 3
+	hstore 2,core_iicd_txlen
+	setarg 0x1f051e
+	store 3,mem_iicd_addr
+	setarg mem_iicd_addr
+	hstore 2,core_iicd_txaddr
+	setarg 1
+	hstore 2,core_iicd_rxlen
+	jam 3,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	call wait_iicd_done
+	nop 300
+	setarg 0xd321d2
+	store 3,mem_iicd_addr
+	jam iicd_start,core_misc_ctrl
+	call wait_iicd_done
+s_loop:
+	branch s_loop
+
+sim_usb:
+	call usb_init
+sim_usb_loop:
+	call usb_isr
+	branch sim_usb_loop
+
+init_24m:
+	jam 0x4b,core_halfslot
+	jam 0x1d,core_halfslot + 1
+	jam 1,core_clksel
+	rtn
+
+
+p_transmit_sw:
+	reverse uap,regc				// hec init
+	enable encode_fec0
+	set0 mark_longpacket,mark
+	copy am_addr,temp
+	arg 3,loopcnt
+	call p_head
+	copy type,temp
+	arg 4,loopcnt
+	call p_head
+	fetch 1,mem_arq
+	lshift4 pdata,temp
+	arg 3,loopcnt
+	call p_head
+	copy regc,temp
+	arg 8,loopcnt
+	call p_head
+	reverse uap,regc
+	lshift8 regc,regc				// crc init
+	and type,0x1f,pdata
+	beq type_fhs, p_transmit_fhs
+
+
+
+p_transmit_fhs:
+	call fetch_self_bt_adr
+	pulse recalc
+	enable user
+	call p_fec2_init
+	fetch 1,mem_fhs_am_addr            /* this is the am_addr to assign to slave */
+	icopy am_addr
+	fetch 1,mem_fhs_misc
+	icopy fhs_misc    /* [7:6]SR [5:4]SP [3:1]PS [0]undef  */
+	fetch 3,mem_class   /* store away class */
+	icopy fhs_class
+	copy bt_adr,rega
+	nop 12                    /* 30 cycles after recalc for sync word generation */
+	copy bt_clk,timeup
+	fetch 4,mem_clkn_bt
+	icopy bt_clk
+	preload fhs0
+	iforce temp
+	arg 32,loopcnt
+	call p_fec2
+	preload fhs0
+	set1 58,pdata		/* eir */
+	rshift32 pdata,temp
+	arg 40,loopcnt
+	call p_fec2
+	preload fhs1
+	iforce temp
+	arg 32,loopcnt
+	call p_fec2
+	preload fhs1
+	rshift32 pdata,temp
+	arg 40,loopcnt
+	call p_fec2
+	copy timeup,bt_clk
+	copy rega,bt_adr
+	copy regc,temp
+	arg 16,loopcnt
+	disable user
+	call p_fec2
+	branch end_of_packet
+	
+// hec or crc is in regc
+p_hec:
+	deposit temp
+	ixor regc,pdata
+	rshift regc,regc
+	rtnbit0 0
+	xor_into 0xe5,regc
+	rtn
+
+// hec or crc is in regc
+p_crc:
+	deposit temp
+	ixor regc,pdata
+	rshift regc,regc
+	rtnbit0 0
+	setarg 0x8408
+	ixor regc,regc
+	rtn
+
+
+// white is in debug
+p_white:
+	isolate1 6,debug
+	lshift debug,debug
+	nrtn true
+	xor_into 0x11,debug
+	xor_into 1,temp
+	rtn
+
+// data in temp, length in loopcnt
+p_head:
+	call p_hec
+	call p_white
+	isolate0 0,temp
+	setarg 0
+	branch p_fec1_0,true
+	setarg 7
+p_fec1_0:
+	inject mod,3
+	rshift temp,temp
+	loop p_head
+	rtn
+
+p_fec0:
+	call p_white
+	deposit temp
+	inject mod,1
+	loop p_fec0
+	rtn
+
+p_fec2:
+	call p_crc,user
+	call p_white
+	deposit temp
+	ixor alarm,pdata
+	rshift alarm,alarm
+	bbit0 0,p_fec2_zero
+	xor_into 0x15,alarm
+p_fec2_zero:
+	deposit temp
+	inject mod,1
+	rshift temp,temp
+	increase -1,queue
+	nbranch p_fec2_nf,zero
+	deposit alarm
+	inject mod,5
+	call p_fec2_init
+p_fec2_nf:
+	loop p_fec2	
+	rtn
+
+p_fec2_init:
+	arg 10,queue
+	arg 0,alarm
+	rtn
+
+
+ifdef NULL
+sim_250k:
+	call init_250k
+	hfetch 1,1
+	bbit1 7,sim_250k_rx
+	call tx_radio_freq
+	call start_transmitter	/* get ready for that id packet */
+	nop 600
+	enable encode_fec0
+	set1 TXGFSK,radio_ctrl
+	force 0,pdata
+	inject mod,9
+	setarg 0xaa
+	inject mod,8
+	preload access
+	inject mod,32
+	setarg 0x1da861
+	inject mod,24
+	setarg 0x94445b
+	inject mod,24
+	setarg 0x1275f
+	inject mod,24
+	branch loop
+sim_250k_rx:
+	call rx_radio_freq
+	call start_receiver	/* wait for that id packet from master */
+	enable decode_fec0
+	correlate null,never
+	parse demod,bucket,72
+	branch loop
+
+	
+
+
+
+sim_uart:
+	setarg mem_le_test_uart_rxbuf
+	hstore 2,core_uart_tsaddr
+	hstore 2,core_uart_twptr
+	hstore 2,core_uart_trptrp
+	increase 0x80,pdata
+	hstore 2,core_uart_teaddr
+	hstore 2,core_uart_rsaddr
+	hstore 2,core_uart_rrptr
+	increase 0x80,pdata
+	hstore 2,core_uart_readdr
+	increase 1,pdata
+	jam 0x84,core_gpio_sel1
+	jam 0x80,core_gpio_pu2
+	jam 0xe5,core_uart_ctrl
+	setarg 0x30
+	hstore 2,core_uart_baud
+	hfetch 1,1
+	bbit1 7,sim_uart_wait
+	setarg 0x1357d9a
+	store 4,mem_le_test_uart_rxbuf
+	setarg 0x55aa69
+	istore 3,contw
+	setarg 0xfedcb3
+	istore 3,contw
+	deposit contw
+	hstore 2,core_uart_twptr
+sim_uart_wait:
+	nop 20000
+	rtn
+
+sim_spi:
+	call spid_init_flash
+	call spid_unlock_flash
+	call spid_init
+	setarg 0x35
+	call spid_read_reg
+	nop 200
+	force 4,temp
+	setarg 0x42
+	branch spid_read_regs
+
+sim_eep:
+	call iicd_init_12m
+	setarg 3
+	hstore 2,core_iicd_txlen
+	setarg 0x1f051e
+	store 3,mem_iicd_addr
+	setarg mem_iicd_addr
+	hstore 2,core_iicd_txaddr
+	setarg 1
+	hstore 2,core_iicd_rxlen
+	jam 3,core_iicd_ctrl
+	jam iicd_start,core_misc_ctrl
+	call wait_iicd_done
+	nop 200
+	setarg 0x18f7a3b
+	store 4,mem_iicd_addr
+	arg mem_iicd_addr,rega
+	arg 4,temp
+	setarg 0x1235
+	call iicd_write_eep
+	nop 300
+	arg mem_ucode_keybuf,rega
+	arg 1,temp
+	setarg 0x3512
+	store 2,mem_addr_mi
+	call iicd_read_eep
+	arg 1,temp
+	setarg 0x3512
+	store 2,mem_addr_mi
+	call iicd_read_eep
+	nop 200
+	setarg 0xa1
+	arg 3,temp
+	arg mem_ucode_keybuf,rega
+	branch iicd_read_data
+
+sim_otp:
+	setarg 0x123456
+	store 3,0x800
+	setarg 0x10
+	arg 0x800,rega
+	arg 0x10,loopcnt
+	branch otp_write
+
+sim_clk:
+	add lpo_time,12,alarm
+	snooze
+clock_loop:
+	nop 100
+	jam 1,core_config
+	setflag user,0,pdata
+	random pdata
+	and_into 0x1f,pdata
+	hstore 1,core_clksel
+	nop 70
+	jam 2,core_kick
+	nop 200
+	branch clock_loop
+	jam 2,core_clksel
+	setarg 1500
+	call sleep
+	jam 0x42,core_clksel
+	add lpo_time,200,alarm
+	snooze
+	branch 0x4000
+
+sim_c1:
+	setarg 0xb4b5b6
+	store 3,mem_le_lap
+	setarg 0xb1b2b3
+	istore 3,contw
+	setarg 0xa4a5a6
+	store 3,mem_le_plap
+	setarg 0xa1a2a3
+	istore 3,contw
+	setarg 0x101
+	store 4,mem_le_preq
+	setarg 0x70710
+	istore 3,contw
+	setarg 0x302
+	store 4,mem_le_pres
+	setarg 0x50008
+	istore 3,contw
+
+	arg regidx_key,regext_index
+	arg 4,loopcnt
+sim_clear_key_loop:
+	arg 0,regext
+	increase 1,regext_index
+	loop sim_clear_key_loop
+
+	setarg 0x702EE0
+	store 3,mem_le_rconfirm
+	setarg 0x274EC6
+	istore 3,contw
+	setarg 0x0E6388
+	istore 3,contw
+	setarg 0x56AD6F
+	istore 3,contw
+	setarg 0x83D521
+	istore 3,contw
+	setarg 0x57	
+	istore 1,contw
+	arg mem_le_rconfirm,rega
+	call aes_init
+	call function_c1
+	branch loop
+endif
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/simple_pairing.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/simple_pairing.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/simple_pairing.prog	(working copy)
@@ -0,0 +1,2362 @@
+
+publickey_init:
+	fetch 1,mem_ssp_enable
+	nbranch sp_initialize,blank
+	branch sp_initialize_256
+
+sp_calc_sequence_256_check:
+	bpatchx patch3c_4,mem_patch3c
+	fetch 1,mem_ssp_enable
+	rtn blank
+	fetch 1,mem_sp_local_key_invalid
+	rtnne SP_KEY_VALID
+	fetch 1,mem_le_secure_connect_enable
+	rtn blank
+	fetch 1,mem_le_sc_local_key_invalid
+	rtneq SP_KEY_VALID_256
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BT_CONNECTED,stop_publickey_calc_256
+	fetch 1,mem_le_sc_calc
+	beq SP_CALC_STANDBY,sp_initialize_256
+	rtn
+stop_publickey_calc_256:
+	jam SP_CALC_STANDBY,mem_le_sc_calc	
+	rtn
+	
+ifdef SIMPLE_PAIRING
+
+sp_initialize:
+	bpatchx patch3c_5,mem_patch3c
+	fetch 1,mem_ssp_enable 
+	branch ssp_disable, blank
+	call ssp_enable
+	call sp_clear_flags
+	branch sp_pubkey_calc 
+	
+sp_clear_flags:
+	setarg 0
+	store 8,mem_sp_state_start
+	store 4,mem_sp_flag_start
+	store 7,mem_sp_iocap_remote
+	rtn
+
+sp_generate_local_key:
+	jam SP_FLAG_COMMIT,mem_sp_flag  
+	branch sp_generate_local_key0
+sp_master_generate_local_key:
+	fetch 1,mem_sp_local_key_invalid
+	beq SP_KEY_VALID,sp_dhkey_calc
+	branch assert
+sp_generate_local_key0:
+	fetch 1,mem_sp_local_key_invalid
+	beq SP_KEY_VALID,sp_start_send_pubkey
+	branch sp_pubkey_calc
+    
+sp_start_send_pubkey:
+	call sp_dhkey_calc
+	fetch 1,mem_master_sp_state
+	nrtn blank
+	jam SP_STAT_KEY_SEND,mem_sp_state
+	rtn
+
+
+sp_calc_check_publickey_256:
+	call sp_calc_b256
+	arg mem_le_pubkey_remote_y_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256   
+	arg mem_le_pubkey_remote_x_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256   
+  	arg mem_t2_256,regA
+	arg mem_le_pubkey_remote_x_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256	
+  	arg mem_a_256,regA
+	arg mem_le_pubkey_remote_x_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	call bn_addmod_256	 
+	arg 32,loopcnt
+  	arg mem_t7_256,regA
+	arg mem_t0_256,regB
+	branch  string_compare
+	
+sp_calc_b256:
+	arg mem_gy_256,regA
+	arg mem_t0_256,contw
+	call bn_sqrmod_256   
+	arg mem_gx_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256    
+  	arg mem_t2_256,regA
+	arg mem_gx_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256	
+  	arg mem_a_256,regA
+	arg mem_gx_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	 
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	branch  bn_submod_256	
+	
+sp_calc_check_publickey:
+	call sp_calc_b
+	arg mem_sp_pubkey_remote_y,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod 
+	arg mem_sp_pubkey_remote_x,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod
+  	arg mem_t2_256,regA
+	arg mem_sp_pubkey_remote_x,regB
+	arg mem_t2_256,contw
+	call bn_mulmod	
+  	arg mem_a,regA
+	arg mem_sp_pubkey_remote_x,regB
+	arg mem_t3_256,contw
+	call bn_mulmod	
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	call bn_addmod	 
+ 	arg 24,loopcnt
+ 	arg mem_t7_256,regA
+	arg mem_t0_256,regB
+	branch  string_compare
+	
+sp_calc_b:
+	arg mem_gy,regA
+	arg mem_t0_256,contw
+	call bn_sqrmod   
+	arg mem_gx,regA
+	arg mem_t2_256,contw
+  	call bn_sqrmod
+  	arg mem_t2_256,regA
+	arg mem_gx,regB
+	arg mem_t2_256,contw
+	call bn_mulmod	
+	arg mem_a,regA
+	arg mem_gx,regB
+	arg mem_t3_256,contw
+	call bn_mulmod	 
+  	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod	 
+  	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	branch  bn_submod	
+
+   
+sp_calculate_commitment:
+	fetch 1,mem_sp_calc
+	bne SP_CALC_STANDBY,sp_calculate_commitment_wait_dhkey_calc
+	call sp_local_random_key_generator
+	arg mem_sp_prarm_stack,contw
+	setarg mem_sp_random_local_end
+	istore 2,contw
+	setarg mem_sp_pubkey_local_x_end
+	istore 2,contw
+	setarg mem_sp_pubkey_remote_x_end
+	istore 2,contw
+	branch sp_calculate_commitment0
+master_sp_calculate_commitment:
+	arg mem_sp_prarm_stack,contw
+	setarg mem_sp_random_remote_end
+	istore 2,contw
+	setarg mem_sp_pubkey_remote_x_end
+	istore 2,contw
+	setarg mem_sp_pubkey_local_x_end
+	istore 2,contw
+sp_calculate_commitment0:
+	call function_f1
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_COMMIT_CALC,master_sp_calculate_commitment0
+	jam SP_FLAG_COMMIT,mem_sp_flag
+	jam SP_STAT_COMMIT_SEND,mem_sp_state
+	rtn
+master_sp_calculate_commitment0:
+	jam SP_STAT_COMMITMENT_COMPARE,mem_master_sp_state
+	call sp_master_generate_local_key
+	branch master_set_mem_master_sp_flag 
+
+sp_local_random_key_generator:
+	arg mem_sp_random_local,contw
+	force 8,queue
+	branch random_generator
+  
+sp_calculate_commitment_wait_dhkey_calc:
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	rtn
+    
+sp_confirm_check:
+    /* calculate Ea here */
+	bpatchx patch3c_6,mem_patch3c
+	arg      mem_addr_value,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	fetch    3,mem_sp_iocap_remote
+	istore   3,contw 
+
+	call     function_f3a
+
+	arg      mem_sp_calc_result_high,regA
+	arg      mem_sp_check_result,regB    
+	force    4,queue 
+	call     compare4
+	nbranch  sp_confirm_check_failed,true  
+
+	call sp_confirm_check_success
+	jam LMP_DHKey_Check,mem_lmi_opcode2
+	branch tid_set_reply
+    
+sp_confirm_check_success:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_CHECK,sp_confirm_check_success_master
+	jam SP_STAT_CONFIRM_CALC,mem_sp_state
+	jam SP_FLAG_COMMIT,mem_sp_flag  
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	rtn
+sp_confirm_check_success_master:
+	jam LMP_ACCEPTED,mem_lmo_opcode2
+	jam SP_STATE_END,mem_master_sp_state
+	branch master_set_mem_master_sp_flag
+	//accept opcode?
+	
+sp_confirm_check_failed:
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_CHECK,sp_confirm_check_failed_master
+	jam SP_STAT_NULL,mem_sp_state
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	//accept opcode?
+	jam      AUTHENTICATION_FAILURE_ERROR,mem_lmo_reason2 
+	rtn
+sp_confirm_check_failed_master:
+	jam LMP_NOT_ACCEPTED,mem_lmo_opcode2
+	jam SP_STAT_NULL,mem_master_sp_state
+	rtn
+    
+sp_confirm_calc:
+	fetch 1,mem_sp_dh_ready
+	beq SP_FLAG_COMMIT, sp_confirm_calc_ready
+	jam 	SP_STAT_CONFIRM_CALC,mem_master_sp_state
+	branch master_set_mem_master_sp_flag
+sp_confirm_calc_ready:
+	arg      mem_addr_value,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	fetch    3,mem_sp_iocap_local
+	istore   3,contw 
+
+	call     function_f3b
+	fetch 1,mem_master_sp_state
+	beq SP_STAT_CONFIRM_CALC,sp_confirm_calc_master
+	jam      SP_STAT_CONFIRM_SEND,mem_sp_state
+	jam      SP_FLAG_COMMIT,mem_sp_flag
+	rtn
+sp_confirm_calc_master:
+	jam      SP_STAT_CONFIRM_SEND,mem_master_sp_state
+	jam      SP_FLAG_COMMIT,mem_master_sp_flag
+	rtn   
+
+sp_master_key_prarm_push:
+	arg mem_sp_prarm_stack,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	setarg mem_sp_random_local_end
+	istore 2,contw
+	setarg mem_sp_random_remote_end
+	istore 2,contw
+	branch sp_link_key_calc
+sp_link_key_prarm_push:
+	jam      SP_STAT_DONE,mem_sp_state    
+	arg mem_sp_prarm_stack,contw
+	fetch    6,mem_lap
+	istore   6,contw
+	fetch    6,mem_plap
+	istore   6,contw
+	setarg mem_sp_random_remote_end
+	istore 2,contw
+	setarg mem_sp_random_local_end
+	istore 2,contw
+sp_link_key_calc:
+    /*calculate Link key here */
+	arg      mem_addr_value,contw
+	fetch    6,mem_sp_prarm_stack
+	istore   6,contw
+	fetch    6,mem_sp_prarm_stack+6
+	istore   6,contw
+	
+	call     function_f2    
+
+	/*handle linkkey  */
+	jam 1,mem_link_key_exists
+	arg mem_link_key,contw
+	arg mem_sp_calc_result_high,contr
+	call memcpy16
+	branch  generate_linkkey_continue
+
+    
+sp_pubkey_calc:
+	bpatchx patch3c_7,mem_patch3c
+	fetch    1,mem_sp_local_key_invalid
+	rtnne SP_KEY_INVALID
+	fetch    1,mem_sp_calc
+	rtnne  SP_CALC_STANDBY
+	arg      mem_sp_private_key,contw 
+	force    11,queue
+	call     random_generator
+	random   pdata
+	rshift   pdata,pdata
+	istore   2,contw 
+/* we don't need fixed private key,generate random key instead */ 
+	arg      mem_k,contw
+	arg      mem_sp_private_key,contr	
+	call     memcpy24 //mem_sp_private_key=>mem_k 24BYTES
+
+	arg      mem_ax,contw
+	arg      mem_gx,contr
+	call     memcpy48 //mem_gx=>mem_ax 48bytes
+
+	arg      mem_az,contw
+	call     bn_zero
+	jam      1,mem_az //0=>mem_az 24bytes
+
+	call     eckp_calc_init
+	jam SP_CALC_PUBKEY,mem_sp_calc
+	rtn    
+	
+sp_pubkey_generated:
+	arg      mem_sp_pubkey_local,contw
+	arg      mem_bx,contr
+	call     memcpy48   
+	jam      SP_KEY_VALID,mem_sp_local_key_invalid
+	jam      SP_CALC_STANDBY,mem_sp_calc
+	rtn
+
+sp_dhkey_calc:
+	bpatchx patch3d_0,mem_patch3d
+	fetch    1,mem_sp_dhkey_invalid
+	rtnne  SP_KEY_INVALID
+	fetch    1,mem_sp_calc
+	rtnne  SP_CALC_STANDBY
+
+	arg      mem_k,contw
+	arg      mem_sp_private_key,contr	
+	call     memcpy24
+
+	arg      mem_ax,contw
+	arg      mem_sp_pubkey_remote,contr
+	call     memcpy48
+
+	arg      mem_az,contw
+	call     bn_zero
+	jam      1,mem_az
+
+	call     eckp_calc_init
+	jam      SP_CALC_DHKEY,mem_sp_calc
+	rtn 	
+	
+sp_dhkey_generated:
+	jam SP_FLAG_COMMIT,mem_sp_dh_ready
+	arg mem_sp_dhkey,contw
+	arg mem_bx,contr
+	call memcpy24
+	jam SP_KEY_VALID,mem_sp_dhkey_invalid
+	jam SP_CALC_STANDBY,mem_sp_calc
+	rtn
+
+random_generator:
+	increase -1,queue
+	nrtn     positive
+	random   pdata
+	istore   2,contw  
+	branch   random_generator
+compare4:
+	increase -1,queue
+	nbranch  compare4_success,positive
+	ifetch   4,regA
+	copy     pdata,temp
+	ifetch   4,regB
+	iflip    temp,pdata
+	nbranch  compare4_failed,zero
+	increase 4,regA
+	increase 4,regB
+	branch   compare4
+compare4_failed:
+	disable  true
+	rtn
+compare4_success:
+	enable   true
+	rtn
+
+/*************************************************/
+/** Message state machine routines ***************/
+/*************************************************/
+// simple pairing support 
+
+simple_pairing_sequence:
+	bpatchx patch3d_1,mem_patch3d
+         fetch 1,mem_sp_flag
+         rtn blank
+	call lmo_fifo_check
+	nrtn blank
+	jam      SP_FLAG_STANDBY,mem_sp_flag
+	fetch    1,mem_sp_state
+	beq  SP_STAT_KEY_SEND,sp_send_LMP_ENCAPSULATED_HEADER
+	beq  SP_STAT_COMMIT_SEND,sp_send_LMP_SIMPLE_PAIRING_COMFIRM
+	beq  SP_STAT_RANDOM_SEND,sp_send_LMP_SIMPLE_PAIRING_NUMBER
+	beq  SP_STAT_CONFIRM_SEND,sp_send_LMP_DHKEY_CHECK
+	beq  SP_STAT_KEY_GENERATE,sp_generate_local_key
+	beq  SP_STAT_COMMIT_CALC,sp_calculate_commitment
+	beq  SP_STAT_CONFIRM_CHECK,sp_confirm_check
+	beq  SP_STAT_CONFIRM_CALC,sp_confirm_calc
+	beq  SP_STAT_LINK_KEY_CALC,sp_link_key_prarm_push
+	//beq  SP_STAT_FEATURE_EXT_SEND,send_LMP_FEATURES_REQ_EXT
+	rtn  
+
+master_simple_paring_sequence:
+	bpatchx patch3d_2,mem_patch3d
+	fetch 1,mem_master_sp_flag
+	rtn blank
+	call lmo_fifo_check
+	nrtn blank
+	jam SP_FLAG_STANDBY,mem_master_sp_flag
+	fetch 1,mem_master_sp_state
+	beq SP_MASTER_STAT_START_SKIP,sp_master_send_io_cap_get
+	beq SP_MASTER_STAT_START_DONE,sp_master_send_io_cap_send
+	beq SP_STAT_KEY_SEND,sp_master_send_LMP_ENCAPSULATED_HEADER
+	beq SP_STAT_COMMIT_CALC,master_sp_calculate_commitment
+	beq SP_STAT_COMMITMENT_COMPARE,sp_master_commitment_compare
+	beq SP_STAT_RANDOM_SEND,sp_master_send_LMP_SIMPLE_PAIRING_NUMBER
+	beq SP_STAT_CONFIRM_CALC,sp_confirm_calc
+	beq SP_STAT_CONFIRM_SEND,master_sp_send_lmp_dhkey_check
+	beq SP_STAT_CONFIRM_CHECK,sp_confirm_check
+	beq SP_STATE_END,master_sp_sm_end
+	rtn
+
+master_set_mem_master_sp_flag:
+	jam SP_FLAG_COMMIT,mem_master_sp_flag
+	rtn
+	
+master_clear_mem_master_sp_flag:
+	jam SP_FLAG_STANDBY,mem_master_sp_flag
+	rtn
+sp_calc_sequence:
+	bpatchx patch3d_3,mem_patch3d
+	fetch 1,mem_ssp_enable
+	rtn blank
+	fetch 1,mem_sp_calc
+	rtn blank
+	increase 0x80,pdata
+	store    1,mem_sp_calc
+	rtnbit1 7
+	fetch    1,mem_ec_loopc
+	branch   sp_calc_sequence_done,blank
+	branch   eckp_calc
+
+sp_calc_sequence_done:    
+	call ecunmapz
+	fetch 1,mem_sp_calc
+	beq  SP_CALC_PUBKEY,sp_pubkey_generated
+	beq  SP_CALC_DHKEY,sp_dhkey_generated
+	rtn
+
+
+bn_testbit:
+	and pdata,7,queue
+	rshift3 pdata,pdata
+	iadd contr,contr
+	ifetch 1,contr
+	qisolate0 pdata
+	rtn
+
+
+ec_copy:
+	call memcpy24
+	call memcpy24
+	branch memcpy24
+	
+	
+bn_eq_zero:
+	ifetch 8,contr
+	nrtn blank
+	ifetch 8,contr
+	nrtn blank
+	ifetch 8,contr
+	rtn
+	
+	
+	/* return zero if eq */
+
+bn_eq_0:	
+	ifetch 4,regA
+	iforce temp
+	ifetch 4,regB
+	isub temp,null
+	nrtn zero
+	increase 4,regA
+	increase 4,regB
+	loop bn_eq_0
+	rtn
+
+	/* return positive if A >= B */
+bn_bigeq:
+	force 6,loopcnt
+	increase 20,regA
+	increase 20,regB
+bn_bigeq_0:	
+	ifetch 4,regB
+	iforce temp
+	ifetch 4,regA
+	isub temp,pdata
+	nrtn positive
+	nrtn blank
+	increase -4,regA
+	increase -4,regB
+	loop bn_bigeq_0
+	rtn
+
+bn_add:
+	force 6,loopcnt
+	force 0,regC
+bn_add_0:	
+	ifetch 4,regA
+	iforce temp
+	ifetch 4,regB
+	iadd temp,pdata
+	iadd regC,pdata
+	istore 4,contw
+	isolate1 32,pdata
+	setflag true,0,regC
+	increase 4,regA
+	increase 4,regB
+	loop bn_add_0
+	rtn
+
+bn_sub:
+	force 6,loopcnt
+	force 0,regC
+bn_sub_0:	
+	ifetch 4,regB
+	iforce temp
+	ifetch 4,regA
+	isub temp,pdata
+	isub regC,pdata
+	istore 4,contw
+	isolate1 32,pdata
+	setflag true,0,regC
+	increase 4,regA
+	increase 4,regB
+	loop bn_sub_0
+	rtn
+
+bn_rshift6:
+	force 6,loopcnt
+	increase 20,regA
+bn_rshift:
+	force 0,regC
+bn_rshift_0:	
+	ifetch 4,regA
+	isolate1 0,pdata
+	setflag true,1,regC
+	rshift pdata,pdata
+	isolate1 0,regC
+	setflag true,31,pdata
+	istore 4,regA
+	increase -4,regA
+	rshift regC,regC
+	loop bn_rshift_0
+	rtn
+
+bn_lshift:
+	force 6,loopcnt
+	force 0,regC
+bn_lshift_0:	
+	ifetch 4,regA
+	isolate1 31,pdata
+	setflag true,1,regC
+	lshift pdata,pdata
+	isolate1 0,regC
+	setflag true,0,pdata
+	istore 4,regA
+	increase 4,regA
+	rshift regC,regC
+	loop bn_lshift_0
+	rtn
+	
+bn_lshiftmod:
+	call bn_lshift
+bn_lshiftmod_ismod:	
+	isolate1 0,regC
+	branch bn_lshiftmod_0,true
+	arg mem_p,regB
+	copy regA,regC
+	increase -24,regA
+	call bn_bigeq
+	nrtn positive
+	copy regC,regA
+bn_lshiftmod_0:
+	increase -24,regA
+	arg mem_p,regB
+	copy regA,contw
+	branch bn_sub
+	
+
+bn_addmod:
+	call bn_add
+	copy contw,regA
+	branch bn_lshiftmod_ismod
+	
+bn_submod:
+	call bn_sub
+	isolate0 0,regC
+	rtn true
+	arg mem_p,regB
+	add contw,-24,regA
+	copy regA,contw
+	branch bn_add
+	
+
+bn_p192mod:
+	copy contw,timeup				/* save result ptr */
+	copy regA,alarm				/* temp save regA */
+	arg mem_tmp2,regB
+	copy regB,contw
+	add regA,24,contr
+	ifetch 8,contr
+	istore 8,contw
+	istore 8,contw
+	force 0,pdata
+	istore 8,contw
+	copy timeup,contw
+	call bn_addmod
+	arg mem_tmp2,regB
+	copy regB,contw
+	force 0,pdata
+	istore 8,contw
+	add alarm,32,contr
+	ifetch 8,contr
+	istore 8,contw
+	istore 8,contw
+	copy timeup,regA
+	copy regA,contw
+	call bn_addmod
+	arg mem_tmp2,regB
+	copy regB,contw
+	add alarm,40,contr
+	ifetch 8,contr
+	istore 8,contw
+	istore 8,contw
+	istore 8,contw
+	copy timeup,regA
+	copy regA,contw
+	branch bn_addmod
+		
+
+bn_load:
+	force 6,loopcnt
+bn_load_0:	
+	ifetch 4,contr
+	iforce regext
+	increase 1,regext_index
+	loop bn_load_0
+	rtn
+
+
+	/* cost 1562 clks */	
+bn_mulmod:
+	copy contw,timeup					/* save result ptr */
+	arg mem_tmp1,contw
+	call bn_zero
+	arg mem_tmp1,contw
+	copy regA,contr
+	force 0,regext_index
+	call bn_load
+	copy regB,contr
+	call bn_load
+	force 0,regB
+bn_mulmod_1:	
+	force 0,temp
+	force 6,regC
+bn_mulmod_0:
+	ifetch 4,contw					/* d[i+j] */
+	iforce regA
+	copy regB,regext_index
+	deposit regext
+	copy regC,regext_index
+	imul32 regext,pdata
+	iadd regA,pdata					/* uv = a[i]*b[j] + d[i+j] */
+	iadd temp,pdata					/* uv += u */
+	istore 4,contw					/* ->d[i+j] */
+	rshift32 pdata,temp				/* temp = u = uv >> 32 */
+	increase 1,regC
+	compare 12,regC,0xff
+	nbranch bn_mulmod_0,true
+	deposit temp
+	istore 4,contw					/* d[i + 12] = u */
+	increase -24,contw
+	increase 1,regB
+	compare 6,regB,0xff
+	nbranch bn_mulmod_1,true
+	arg mem_tmp1,regA
+	copy timeup,contw
+	branch bn_p192mod
+
+	
+bn_sqrmod:
+	copy regA,regB
+	branch bn_mulmod
+
+bn_rshifteven:
+	copy regA,alarm
+bn_rshifteven_1:
+	copy alarm,regA
+	ifetch 1,regA
+	isolate1 0,pdata
+	rtn true
+	call bn_rshift6
+	ifetch 1,regB
+	isolate0 0,pdata
+	branch bn_rshifteven_0,true
+	arg mem_p,regA
+	copy regB,contw
+	call bn_add
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB						/* [6] */
+	increase -24,regB
+bn_rshifteven_0:
+	add regB,24,regA
+	force 7,loopcnt
+	call bn_rshift
+	branch bn_rshifteven_1
+
+	/* cost 141910 clks */
+bn_invmod:
+	copy contw,timeup					/* save result ptr */
+	arg mem_tmp0,contw				/* x */
+	call bn_zero
+	force 0,pdata
+	store 4,mem_tmp5
+	store 4,mem_t2
+	jam 1,mem_tmp0
+	arg mem_tmp1,contw				/* y */
+	call bn_zero
+	arg mem_p,contr
+	arg mem_tmp2,contw				/* a */
+	call memcpy24
+	copy regA,contr
+	arg mem_tmp3,contw				/* b */
+	call memcpy24
+bn_invmod_2:	
+	arg mem_tmp3,contr
+	call bn_eq_zero
+	branch bn_invmod_0,blank
+	arg mem_tmp3,regA
+	arg mem_tmp0,regB
+	call bn_rshifteven
+
+	arg mem_tmp2,regA
+	arg mem_tmp1,regB
+	call bn_rshifteven
+	arg mem_tmp3,regA
+	arg mem_tmp2,regB
+	call bn_bigeq
+	branch bn_invmod_1,positive
+	arg mem_tmp2,regA
+	arg mem_tmp3,regB
+	copy regA,contw
+	call bn_sub
+	arg mem_tmp0,regA
+	arg mem_tmp1,regB
+	copy regB,contw
+	call bn_add
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_2
+bn_invmod_1:
+	arg mem_tmp3,regA
+	arg mem_tmp2,regB
+	copy regA,contw
+	call bn_sub
+	arg mem_tmp1,regA
+	arg mem_tmp0,regB
+	copy regB,contw
+	call bn_add
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_2
+bn_invmod_0:
+	arg mem_tmp0,contw
+	call bn_zero
+	fetch 1,mem_tmp5
+	store 1,mem_tmp0
+	store 1,mem_tmp0a
+	arg mem_tmp0,regA
+	arg mem_tmp1,regB
+	copy regB,contw
+	call bn_addmod
+	arg mem_p,regA
+	arg mem_tmp1,regB
+	copy timeup,contw
+	branch bn_submod
+	
+
+
+	/* cost 64742 clks */
+ecdbl:
+	arg mem_cz,regA
+	arg mem_t2,contw
+	call bn_sqrmod
+	arg mem_t2,regA
+	arg mem_t3,contw
+	call bn_sqrmod
+	arg mem_a,regA
+	arg mem_t3,regB
+	arg mem_t3,contw
+	call bn_mulmod		/* t3=a*z4	*/
+	arg mem_cx,regA
+	arg mem_t2,contw
+	call bn_sqrmod
+	arg mem_t2,contr
+	arg mem_t1,contw
+	call memcpy24
+	arg mem_t1,regA
+	call bn_lshiftmod
+	arg mem_t2,regA
+	arg mem_t1,regB
+	arg mem_t2,contw
+	call bn_addmod
+	arg mem_t2,regA
+	arg mem_t3,regB
+	arg mem_t2,contw
+	call bn_addmod		/* t2=3*x2 + z*z4		D  */
+	arg mem_cx,contr
+	arg mem_t1,contw
+	call memcpy24
+	arg mem_cy,regA
+	arg mem_t3,contw
+	call bn_sqrmod
+	arg mem_t1,regA
+	call bn_lshiftmod
+	arg mem_t1,regA
+	call bn_lshiftmod
+	arg mem_t1,regA		
+	arg mem_t3,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* t1=4x*y2	B	*/
+	arg mem_t3,regA
+	arg mem_t0,contw
+	call bn_sqrmod
+	arg mem_t0,regA
+	call bn_lshiftmod
+	arg mem_t0,regA
+	call bn_lshiftmod		
+	arg mem_t0,regA		
+	call bn_lshiftmod		/* t0=8*y4		C */
+	arg mem_cy,contr
+	arg mem_t3,contw
+	call memcpy24
+	arg mem_t3,regA
+	call bn_lshiftmod
+	arg mem_t3,regA
+	arg mem_cz,regB
+	arg mem_cz,contw
+	call bn_mulmod		
+	arg mem_t2,regA
+	arg mem_t3,contw
+	call bn_sqrmod
+	arg mem_t3,regA
+	arg mem_t1,regB
+	arg mem_t3,contw
+	call bn_submod
+	arg mem_t3,regA
+	arg mem_t1,regB
+	arg mem_cx,contw
+	call bn_submod
+	arg mem_t1,regA
+	arg mem_cx,regB
+	arg mem_t3,contw
+	call bn_submod
+	arg mem_t3,regA
+	arg mem_t2,regB
+	arg mem_t3,contw
+	call bn_mulmod		
+	arg mem_t3,regA
+	arg mem_t0,regB
+	arg mem_cy,contw
+	branch bn_submod
+	
+
+	/* cost 104904	clks */
+ecadd:
+	arg mem_az,regA
+	arg mem_t7,contw
+	call bn_sqrmod
+	arg mem_cx,regA
+	arg mem_t7,regB
+	arg mem_t0,contw
+	call bn_mulmod		/* n1=t0=xa*zb2  */
+	arg mem_az,regA
+	arg mem_t7,regB
+	arg mem_t7,contw
+	call bn_mulmod	
+	arg mem_cy,regA
+	arg mem_t7,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* n2=t1=ya*zb3 */
+	arg mem_cz,regA
+	arg mem_t7,contw
+	call bn_sqrmod
+	arg mem_ax,regA
+	arg mem_t7,regB
+	arg mem_t2,contw
+	call bn_mulmod		/* n3=t2=xb*za2 */
+	arg mem_cz,regA
+	arg mem_t7,regB
+	arg mem_t7,contw
+	call bn_mulmod	
+	arg mem_ay,regA
+	arg mem_t7,regB
+	arg mem_t3,contw
+	call bn_mulmod		/* n4=t3=yb*za3 */
+	arg mem_t0,regA
+	arg mem_t2,regB
+	arg mem_t7,contw
+	call bn_submod		/* n5=t7=n1-n3=t0-t2 */
+	arg mem_t0,regA
+	arg mem_t2,regB
+	arg mem_t0,contw
+	call bn_addmod		/* n7=t0=n1+n3=t0+t2 */
+	arg mem_t1,regA
+	arg mem_t3,regB
+	arg mem_t2,contw
+	call bn_submod		/* n6=t2=n2-n4=t1-t3 */
+	arg mem_t1,regA
+	arg mem_t3,regB
+	arg mem_t1,contw
+	call bn_addmod		/* n8=t1=n2+n4=t1+t3 */
+	arg mem_t1,regA
+	arg mem_t7,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* t1=n8*n5 */
+	arg mem_cz,regA
+	arg mem_az,regB
+	arg mem_t3,contw
+	call bn_mulmod	
+	arg mem_t3,regA
+	arg mem_t7,regB
+	arg mem_cz,contw
+	call bn_mulmod		/* z=za*zb*n5 */
+	arg mem_t7,regA
+	arg mem_t7,contw
+	call bn_sqrmod		/* t7=n5^2 */
+	arg mem_t7,regA
+	arg mem_t0,regB
+	arg mem_t3,contw
+	call bn_mulmod		/* t3=n5^2*n7 */
+	arg mem_t7,regA
+	arg mem_t1,regB
+	arg mem_t1,contw
+	call bn_mulmod		/* t1=n8*n5^3 */
+	arg mem_t2,regA
+	arg mem_cx,contw
+	call bn_sqrmod		
+	arg mem_cx,regA
+	arg mem_t3,regB
+	arg mem_cx,contw
+	call bn_submod		/* x=n6^2-n5^2*n7 */
+	arg mem_cx,contr
+	arg mem_t7,contw
+	call memcpy24
+	arg mem_t7,regA
+	call bn_lshiftmod		/* t7=2*x */
+	arg mem_t3,regA
+	arg mem_t7,regB
+	arg mem_t3,contw
+	call bn_submod		/* t3=n9 */
+	arg mem_t3,regA
+	arg mem_t2,regB
+	arg mem_t2,contw
+	call bn_mulmod		/* t2=n9*n6 */
+	arg mem_t2,regA
+	arg mem_t1,regB
+	arg mem_cy,contw
+	call bn_submod	
+	arg mem_cy,regA
+	arg mem_p,regB
+	arg mem_cy,contw
+	force 0,regC
+	fetch 1,mem_cy
+	isolate1 0,pdata
+	call bn_add,true
+	copy regC,alarm
+	arg mem_cy,regA
+	call bn_rshift6
+	fetch 1,mem_cy5
+	isolate1 0,alarm
+	setflag true,7,pdata
+	store 1,mem_cy5
+	rtn
+
+	/* cost 22276983 clks */
+
+eckp_0:	
+	fetch 1,mem_ec_loopc
+	increase -1,pdata
+	nrtn positive
+	store 1,mem_ec_loopc
+	fetch 1,mem_ec_infinite
+	call ecdbl,blank
+	fetch 1,mem_ec_loopc
+	arg mem_k,contr
+	call bn_testbit
+	branch eckp_0,true
+	fetch 1,mem_ec_infinite
+	nbranch eckp_1,blank
+	call ecadd
+	branch eckp_0
+eckp_1:
+	jam 0,mem_ec_infinite
+	arg mem_ax,contr
+	arg mem_cx,contw
+	call ec_copy
+	branch eckp_0
+
+	/* cost 162522 clks */
+ecunmapz:
+	arg mem_cz,regA
+	arg mem_t3,contw
+	call bn_invmod			/* t3 = 1/z */
+	arg mem_t3,regA
+	arg mem_t1,contw		
+	call bn_sqrmod			/* t1 = 1/z2 */
+	arg mem_cx,regA
+	arg mem_t1,regB
+	arg mem_bx,contw
+	call bn_mulmod
+	arg mem_t3,regA
+	arg mem_t1,regB
+	arg mem_t2,contw			
+	call bn_mulmod			/* t2 = 1/z3 */
+	arg mem_cy,regA
+	arg mem_t2,regB
+	arg mem_by,contw
+	branch bn_mulmod		
+	
+	
+
+sha_endian_swap2:	
+	ifetch 4,contr
+	force 4,regA
+	increase 3,contw
+sha_endian_loop:	
+	istore 1,contw
+	rshift8 pdata,pdata
+	increase -2,contw
+	increase -1,regA
+	nbranch sha_endian_loop,zero
+	increase 5,contw
+	loop sha_endian_swap2
+	rtn	
+
+
+sha_getw:
+	lshift2 queue,pdata
+	iadd timeup,contr
+	ifetch 4,contr
+	rtn
+	
+sha_r:
+	force 16,alarm
+	arg memdat,timeup
+sha_r_loop:	
+	add alarm,-7,queue
+	call sha_getw
+	iforce temp						/* W[t - 7] */
+	add alarm,-16,queue
+	call sha_getw
+	iadd temp,temp					/* W[t-7] + W[t-16] */
+	add alarm,-2,queue
+	call sha_getw
+	shasx pdata,1,pdata
+	iadd temp,temp					/* S1(W[t -  2]) + W[t-7] + W[t-16] */
+	add alarm,-15,queue
+	call sha_getw
+	shasx pdata,0,pdata
+	iadd temp,temp					/* S0(W[t - 15]) + S1(W[t -  2]) + W[t-7] + W[t-16] */
+	lshift2 alarm,pdata
+	iadd timeup,contw
+	istoret 4,contw
+	increase 1,alarm
+	compare 64,alarm,0xff
+	nbranch sha_r_loop,true
+	rtn
+	
+
+sha_init:
+	arg memh0,contr
+	force 7,regext_index
+sha_init_0:	
+	ifetch 4,contr
+	iforce regext
+	increase -1,regext_index
+	branch sha_init_0,positive
+	rtn
+
+sha:
+	bpatchx patch3d_4,mem_patch3d
+	call sha_r		/* preprocessing data into R() */
+	arg memahbak,contw
+	force 0,regext_index
+sha_0:	
+	deposit regext
+	istore 4,contw
+	increase 1,regext_index
+	compare 8,regext_index,0xff
+	nbranch sha_0,true
+	call enable_authrom
+	arg memk,timeup
+	arg memdat,alarm
+	force 64,loopcnt
+sha_loop:	
+	ifetcht 4,alarm
+	ifetch 4,timeup
+	increase 4,timeup
+	increase 4,alarm
+	iadd temp,pdata			/* x+K */
+	force 7,regext_index
+	iadd regext,temp			/* x+K+h */
+	force 4,regext_index
+	shasx regext,3,pdata
+	iadd temp,temp			/* temp = s3(e)+x+K+h */
+	force 5,regext_index
+	deposit regext
+	force 6,regext_index
+	ixor regext,pdata
+	force 4,regext_index
+	iand regext,pdata			/* (e & (f ^ g)) */
+	force 6,regext_index
+	ixor regext,pdata			/* F1(e, f, g) = g ^ (e & (f ^ g)) */
+	iadd temp,temp			/* temp1 = h + S3(e) + F1(e,f,g) + K + x */
+	force 7,regext_index
+	copy temp,regext			/* save to H */
+	force 3,regext_index
+	deposit regext
+	iadd temp,regext			/* save to D */
+	force 0,regext_index
+	deposit regext
+	force 1,regext_index
+	iand regext,temp			/* a & b */
+	ior regext,pdata			/* a | b */			
+	force 2,regext_index
+	iand regext,pdata			/* (c & (a | b)) */
+	ior temp,temp				/* F0:(a & b) | (c & (a | b)) */
+	force 0,regext_index
+	shasx regext,2,pdata
+	iadd temp,pdata			/* temp2 = S2(a) + F0(a,b,c) */
+	force 7,regext_index
+	iadd regext,regext			/* h = temp1 + temp2 */
+	regexrot					/* rotate move h,a-g => a-h */
+	loop sha_loop
+	arg memahbak,contr
+	force 0,regext_index
+sha_1:	
+	ifetch 4,contr
+	iadd regext,regext
+	increase 1,regext_index
+	compare 8,regext_index,0xff
+	nbranch sha_1,true
+	branch disable_authrom
+
+	
+sha_result:
+	arg   memresult,contw
+	force 7,regext_index
+sha_regext_save:
+	deposit regext
+	istore  4,contw 
+	increase -1,regext_index
+	branch   sha_regext_save,positive
+	rtn	
+
+pad_xor:
+//	arg memx_end,contr
+	arg      memdat,contw
+	increase -4,contr
+	sub      loopcnt,16,regA
+pad_xor_0:	    
+	ifetch   4,contr
+	ixor     temp,pdata
+	istore   4,contw	
+	increase -8,contr	
+	loop  pad_xor_0
+	copy     regA,loopcnt
+	deposit  temp
+pad_xor_1:	
+	istore 4,contw
+	loop pad_xor_1
+	rtn
+
+g_noninit_number_confirm:
+	call g_noninit0
+	call sha_result
+	branch g_common0
+
+g_noninit:
+	call g_noninit0
+	branch g_common0
+	
+g_noninit0:
+ 	arg      mem_sp_pubkey_remote_x_end,contr
+	arg      memdat,contw
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_pubkey_local_x_end,contr
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_random_remote_end,contr
+	call     memcpy_dword_swap4
+	call     sha_init
+	call     sha	
+ 	arg      mem_sp_random_local_end,contr
+	arg      memdat,contw
+	branch g_common
+	
+g_init:
+ 	arg      mem_sp_pubkey_local_x_end,contr
+	arg      memdat,contw
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_pubkey_remote_x_end,contr
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	arg      mem_sp_random_local_end,contr
+	call     memcpy_dword_swap4
+	call     sha_init
+	call     sha	
+ 	arg      mem_sp_random_remote_end,contr
+	arg      memdat,contw
+	call g_common
+	branch g_common0
+	
+g_common:	
+	call     memcpy_dword_swap4
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	force    5,loopcnt
+	call memset0
+	setarg 640
+	istore 4,contw
+	branch sha
+g_common0:
+	fetch 4,memresult
+//	store 4,mem_gkey
+	arg 1000,rega
+	idiv rega
+	call wait_div_end
+	remainder pdata
+	store 4,mem_gkey
+	quotient pdata
+	arg 1000,rega
+	idiv rega
+	call wait_div_end
+	remainder pdata
+	arg 1000,rega
+	imul32 rega,pdata
+	fetcht 4,mem_gkey
+	iadd temp,pdata
+	store 4,mem_gkey
+	rtn
+
+function_f1_no_key:
+	jam 0,mem_passkey_1bit
+	branch function_f1_common
+	
+function_f1:
+	fetch 1,mem_ssp_mode_flag
+	bne  SSP_MODE_PASSKEY_ENTRY_FLAG,function_f1_no_key
+function_f1_common:
+	bpatchx patch3d_5,mem_patch3d
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	fetch 2,mem_sp_prarm_stack
+	copy pdata,contr
+	force    4,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	fetch 2,mem_sp_prarm_stack+2
+	copy pdata,contr
+	arg      memdat,contw
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	fetch 2,mem_sp_prarm_stack+4
+	copy pdata,contr
+	force    6,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	istore   3,contw
+	
+	fetch 1,mem_passkey_1bit
+	
+	istore   1,contw
+	force    0,pdata
+	istore   8,contw
+	setarg   0x0388
+	istore   4,contw
+	call     sha
+	call     sha_result
+	arg      memresult,contr
+	arg      memahsave,contw 
+	call     memcpy32
+    
+	setarg   0x5c5c5c
+	lshift8  pdata,temp
+	or_into       0x5c,temp
+	fetch 2,mem_sp_prarm_stack
+	copy pdata,contr
+	force    4,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      memahsave_end,contr
+	arg      memdat,contw
+	force    8,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	call		bn_zero
+	setarg   0x0300
+	istore   4,contw
+	call     sha
+	branch     sha_result
+	
+	
+function_f2:
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	arg      mem_sp_dhkey_end,contr
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	fetch 2,mem_sp_prarm_stack+12
+	copy pdata,contr
+	arg      memdat,contw
+	call     memcpy_dword_swap4
+	fetch 2,mem_sp_prarm_stack+14
+	copy pdata,contr
+	call     memcpy_dword_swap4
+
+	setarg   0x62746c
+	lshift8  pdata,pdata
+	or_into       0x6b,pdata       
+	istore   4,contw
+	arg      mem_addr_value_end,contr
+	force    3,loopcnt
+	call     memcpy_dword_swap
+	
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	force    0,pdata
+	istore   8,contw
+	setarg   0x0380
+	istore   4,contw
+	call     sha
+
+	call     sha_result
+	arg      memresult,contr
+	arg      memahsave,contw 
+	call     memcpy32
+    
+	setarg   0x5c5c5c
+	lshift8  pdata,temp
+	or_into       0x5c,temp
+	arg      mem_sp_dhkey_end,contr 
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      memahsave_end,contr
+	arg      memdat,contw
+	force    8,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	call bn_zero
+	setarg   0x0300
+	istore   4,contw
+	call     sha
+	branch     sha_result
+	
+
+function_f3a:
+	fetch 1,mem_ssp_mode_flag
+	bne  SSP_MODE_PASSKEY_ENTRY_FLAG,function_f3a_no_pin
+function_f3a_common:
+	bpatchx patch3d_6,mem_patch3d
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	arg      mem_sp_dhkey_end,contr
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      mem_sp_random_remote_end,contr
+	arg      memdat,contw
+	call     memcpy_dword_swap4
+	arg      mem_sp_random_local_end,contr
+	call     memcpy_dword_swap4
+	branch function_f3_common
+
+function_f3a_no_pin:
+	setarg 0
+	store 4,mem_pin
+	branch function_f3a_common
+
+function_f3b_no_pin:
+	setarg 0
+	store 4,mem_pin
+	branch function_f3b_common
+
+
+function_f3b:
+	fetch 1,mem_ssp_mode_flag
+	bne  SSP_MODE_PASSKEY_ENTRY_FLAG,function_f3b_no_pin
+function_f3b_common:
+	setarg   0x363636
+	lshift8  pdata,temp
+	or_into       0x36,temp
+	arg      mem_sp_dhkey_end,contr
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+
+	arg      mem_sp_random_local_end,contr
+	arg      memdat,contw
+	call     memcpy_dword_swap4
+	arg      mem_sp_random_remote_end,contr
+	call     memcpy_dword_swap4
+function_f3_common:    
+	setarg   0x0    
+	istore   8,contw
+	istore   4,contw
+	fetch 4,mem_pin
+	istore   4,contw
+	
+	copy     contw,temp
+	jam      0x80,mem_addr_padding
+	copy     temp,contw
+	arg      mem_addr_iocap_end,contr
+	call     memcpy_dword_swap4
+
+	call     sha
+    
+	arg      memdat,contw
+	force 7,loopcnt
+	call memset0
+	istore   4,contw
+	setarg   0x03F8
+	istore   4,contw
+	call     sha
+	call     sha_result
+	
+	arg      memresult,contr
+	arg      memahsave,contw 
+	call     memcpy32
+    
+	setarg   0x5c5c5c
+	lshift8  pdata,temp
+	or_into       0x5c,temp
+	arg      mem_sp_dhkey_end,contr 
+	force    6,loopcnt
+	call     pad_xor
+	call     sha_init
+	call     sha
+	arg      memahsave_end,contr
+	arg      memdat,contw
+	force    8,loopcnt
+	call     memcpy_dword_swap
+	setarg   0x800000
+	lshift8  pdata,pdata 
+	istore   4,contw
+	call bn_zero
+	setarg   0x0300
+	istore   4,contw
+	call     sha	
+	branch     sha_result
+		
+/*
+eckp:
+	jam 192,mem_ec_loopc
+	jam 1,mem_ec_infinite
+*/
+eckp_calc_init:
+	jam      192,mem_ec_loopc
+eckp_calc_init_1:    
+	fetch    1,mem_ec_loopc
+	rtn      blank
+	increase -1,pdata
+	store    1,mem_ec_loopc 	
+	arg      mem_k,contr
+	call     bn_testbit
+	branch eckp_calc_init_1,true
+	arg      mem_ax,contr
+	arg      mem_cx,contw
+	branch     ec_copy	
+	
+eckp_calc:
+	call     ecdbl  
+	fetch    1,mem_ec_loopc
+	increase -1,pdata
+	store    1,mem_ec_loopc
+	arg      mem_k,contr
+	call     bn_testbit
+	rtn	true
+	branch     ecadd                
+	             
+memcpy_dword_swap4:
+	force 4,loopcnt
+memcpy_dword_swap:
+	increase -4,contr
+memcpy_dword_swap_loop:
+	ifetch   4,contr
+	istore   4,contw
+	increase -8,contr
+	loop   memcpy_dword_swap_loop 
+    	rtn
+
+else
+sp_initialize:
+	rtn
+
+endif
+	
+
+ifdef SECURE_CONNECTION
+
+sp_initialize_256:	
+	bpatchx patch3d_7,mem_patch3d
+	fetch 1,mem_le_secure_connect_enable
+	branch  le_secure_connection_disable,blank
+	call le_secure_connection_enable
+	call sp_clear_flags
+//	jam SP_KEY_INVALID_256,mem_le_sc_local_key_invalid
+	branch sp_pubkey_calc_256
+    	
+
+
+
+sp_pubkey_calc_256:
+	fetch    1,mem_le_sc_local_key_invalid
+	rtnne SP_KEY_INVALID
+	fetch    1,mem_le_sc_calc
+	rtnne  SP_CALC_STANDBY
+	
+	arg      mem_le_private_key_256,contw 
+	force    15,queue
+	call     random_generator
+	random   pdata
+	rshift   pdata,pdata
+	istore   2,contw 
+
+	arg      mem_k_256,contw
+	arg      mem_le_private_key_256,contr	
+	call     memcpy32 //mem_sp_private_key=>mem_k 
+
+	arg      mem_ax_256,contw
+	arg      mem_gx_256,contr
+	call     memcpy64 //mem_gx=>mem_ax 
+	
+	arg      mem_az_256,contw
+	call      clear_mem_256
+	jam      1,mem_az_256 //0=>mem_az 
+
+	call     eckp_calc_init_256
+	jam SP_CALC_PUBKEY_256,mem_le_sc_calc
+	rtn    
+
+sp_pubkey_generated_256:
+	arg      mem_le_pubkey_local_x_256,contw
+	arg      mem_bx_256,contr
+	call     memcpy64   
+	jam      SP_KEY_VALID_256,mem_le_sc_local_key_invalid
+	jam      SP_CALC_STANDBY,mem_le_sc_calc
+	rtn
+	
+
+
+sp_dhkey_calc_256:
+	fetch    1,mem_sp_dhkey_invalid
+	rtnne  SP_KEY_INVALID
+	fetch    1,mem_le_sc_calc
+	rtnne  SP_CALC_STANDBY
+
+	arg      mem_k_256,contw
+	arg      mem_le_private_key_256,contr	
+	call     memcpy32
+
+	arg      mem_ax_256,contw
+	arg      mem_le_pubkey_remote_x_256,contr
+	call     memcpy64
+
+	arg      mem_az_256,contw
+	call     clear_mem_256
+	jam      1,mem_az_256 //0=>mem_az 
+
+	call     eckp_calc_init_256
+	jam     SP_CALC_DHKEY_256,mem_le_sc_calc
+	rtn 
+
+
+sp_dhkey_generated_256:
+//	jam SP_FLAG_COMMIT,mem_sp_dh_ready
+	arg mem_le_dhkey_256,contw
+	arg mem_bx_256,contr
+	call memcpy32
+	jam SP_KEY_VALID_256,mem_sp_dhkey_invalid
+	jam SP_CALC_STANDBY,mem_le_sc_calc
+	rtn
+
+
+
+sp_calc_sequence_256:
+	fetch 1,mem_le_secure_connect_enable
+	rtn blank
+	fetch 1,mem_le_sc_calc
+	rtn blank
+	increase 0x80,pdata
+	store    1,mem_le_sc_calc
+	rtnbit1 7
+	fetch    2,mem_ec_loopc
+	branch   sp_calc_sequence_done_256,blank
+	branch   eckp_calc_256
+
+sp_calc_sequence_done_256:    
+	bpatchx patch3e_0,mem_patch3e
+	call ecunmapz_256
+	fetch 1,mem_le_sc_calc
+	beq  SP_CALC_PUBKEY_256,sp_pubkey_generated_256
+	beq  SP_CALC_DHKEY_256,sp_dhkey_generated_256
+	rtn
+
+
+eckp_calc_256:
+	call     ecdbl_256  
+	fetch    2,mem_ec_loopc
+	increase -1,pdata
+	store    2,mem_ec_loopc
+	arg      mem_k_256,contr
+	call     bn_testbit
+	rtn	true
+	branch     ecadd_256   
+
+eckp_calc_init_256:
+	bpatchx patch3e_1,mem_patch3e
+	setarg 256,pdata
+	store 2,mem_ec_loopc
+eckp_calc_init_256_1:    
+	fetch    2,mem_ec_loopc
+	rtn      blank
+	increase -1,pdata
+	store    2,mem_ec_loopc
+	arg      mem_k_256,contr
+	call     bn_testbit
+	branch eckp_calc_init_256_1,true
+	arg      mem_ax_256,contr
+	arg      mem_cx_256,contw
+	branch     memcpy96	
+
+
+ecunmapz_256:
+	arg mem_cz_256,regA
+	arg mem_t3_256,contw
+	call bn_invmod_256			/* t3 = 1/z */
+	arg mem_t3_256,regA
+	arg mem_t1_256,contw		
+	call bn_sqrmod_256			/* t1 = 1/z2 */
+	arg mem_cx_256,regA
+	arg mem_t1_256,regB
+	arg mem_bx_256,contw
+	call bn_mulmod_256
+	arg mem_t3_256,regA
+	arg mem_t1_256,regB
+	arg mem_t2_256,contw			
+	call bn_mulmod_256			/* t2 = 1/z3 */
+	arg mem_cy_256,regA
+	arg mem_t2_256,regB
+	arg mem_by_256,contw
+	branch bn_mulmod_256	
+	
+ecdbl_256:
+	arg mem_cz_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256
+	arg mem_t2_256,regA
+	arg mem_t3_256,contw
+	call bn_sqrmod_256
+//call ice_break
+	arg mem_a_256,regA
+	arg mem_t3_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256		/* t3=a*z4	*/
+	arg mem_cx_256,regA
+	arg mem_t2_256,contw
+	call bn_sqrmod_256
+//call ice_break
+	arg mem_t2_256,contr
+	arg mem_t1_256,contw
+	call memcpy32
+	arg mem_t1_256,regA
+	call bn_lshiftmod_256
+	arg mem_t2_256,regA
+	arg mem_t1_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256
+//call ice_break
+	arg mem_t2_256,regA
+	arg mem_t3_256,regB
+	arg mem_t2_256,contw
+	call bn_addmod_256		/* t2=3*x2 + z*z4		D  */
+//call ice_break
+	arg mem_cx_256,contr
+	arg mem_t1_256,contw
+	call memcpy32
+	arg mem_cy_256,regA
+	arg mem_t3_256,contw
+	call bn_sqrmod_256
+	arg mem_t1_256,regA
+	call bn_lshiftmod_256
+	arg mem_t1_256,regA
+	call bn_lshiftmod_256
+	arg mem_t1_256,regA		
+	arg mem_t3_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		//S = 4X1Y1^2/* t1=4x*y2	B	*/
+	arg mem_t3_256,regA
+	arg mem_t0_256,contw
+	call bn_sqrmod_256
+	arg mem_t0_256,regA
+	call bn_lshiftmod_256
+	arg mem_t0_256,regA
+	call bn_lshiftmod_256		
+	arg mem_t0_256,regA		
+	call bn_lshiftmod_256	//T = 8Y1^4	/* t0=8*y4		C */
+	arg mem_cy_256,contr
+	arg mem_t3_256,contw
+	call memcpy32
+	arg mem_t3_256,regA
+	call bn_lshiftmod_256
+	arg mem_t3_256,regA
+	arg mem_cz_256,regB
+	arg mem_cz_256,contw
+	call bn_mulmod_256		//z = 2Y1Z1
+
+
+	arg mem_t2_256,regA
+	arg mem_t3_256,contw
+	call bn_sqrmod_256   // M ^2
+//call ice_break
+	arg mem_t3_256,regA
+	arg mem_t1_256,regB
+	arg mem_t3_256,contw
+	call bn_submod_256  // t2^2 - 4*cx *cy^2 
+	arg mem_t3_256,regA
+	arg mem_t1_256,regB
+	arg mem_cx_256,contw
+	call bn_submod_256   //X2
+	arg mem_t1_256,regA
+	arg mem_cx_256,regB
+	arg mem_t3_256,contw
+	call bn_submod_256   //S-X2
+	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	//M(S-X2)	
+	arg mem_t3_256,regA
+	arg mem_t0_256,regB
+	arg mem_cy_256,contw
+	branch bn_submod_256  //M(S-X2)-T Y2	
+
+ecadd_256:
+
+	arg mem_az_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256
+	arg mem_cx_256,regA
+	arg mem_t7_256,regB
+	arg mem_t0_256,contw
+	call bn_mulmod_256		/* n1=t0=xa*zb2 U1 = X1Z0^2*/
+
+
+	arg mem_az_256,regA
+	arg mem_t7_256,regB
+	arg mem_t7_256,contw
+	call bn_mulmod_256	
+	arg mem_cy_256,regA
+	arg mem_t7_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		/* n2=t1=ya*zb3   S1 = Y1Z0^3*/
+
+
+	arg mem_cz_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256
+	arg mem_ax_256,regA
+	arg mem_t7_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256		/* n3=t2=xb*za2  U0 = X0Z1^2*/
+
+	arg mem_cz_256,regA
+	arg mem_t7_256,regB
+	arg mem_t7_256,contw
+	call bn_mulmod_256	
+	arg mem_ay_256,regA
+	arg mem_t7_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256		/* n4=t3=yb*za3 S0 = Y0Z1^3*/
+
+
+//	arg mem_t0_256,regA
+//	arg mem_t2_256,regB
+	arg mem_t0_256,regb
+	arg mem_t2_256,rega
+	arg mem_t7_256,contw
+	call bn_submod_256		/* n5=t7=n1-n3=t0-t2   W=U1-U0*/
+	arg mem_t0_256,regA
+	arg mem_t2_256,regB
+	arg mem_t0_256,contw
+	call bn_addmod_256		/* n7=t0=n1+n3=t0+t2    T=U1+U0 */
+//	arg mem_t1_256,regA
+//	arg mem_t3_256,regB
+	arg mem_t1_256,regb
+	arg mem_t3_256,rega
+	arg mem_t2_256,contw
+	call bn_submod_256		/* n6=t2=n2-n4=t1-t3  S1-S0 */
+	arg mem_t1_256,regA
+	arg mem_t3_256,regB
+	arg mem_t1_256,contw
+	call bn_addmod_256		/* n8=t1=n2+n4=t1+t3 M=S1+S0*/
+	arg mem_t1_256,regA
+	arg mem_t7_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		/* t1=n8*n5     MW */
+	arg mem_cz_256,regA
+	arg mem_az_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256	      //Z0Z1
+	arg mem_t3_256,regA
+	arg mem_t7_256,regB
+	arg mem_cz_256,contw
+	call bn_mulmod_256		/* z=za*zb*n5   Z0Z1W */
+
+	arg mem_t7_256,regA
+	arg mem_t7_256,contw
+	call bn_sqrmod_256		/* t7=n5^2 */
+	arg mem_t7_256,regA
+	arg mem_t0_256,regB
+	arg mem_t3_256,contw
+	call bn_mulmod_256		/* t3=n5^2*n7 */
+	arg mem_t7_256,regA
+	arg mem_t1_256,regB
+	arg mem_t1_256,contw
+	call bn_mulmod_256		/* t1=n8*n5^3 */
+	arg mem_t2_256,regA
+	arg mem_cx_256,contw
+	call bn_sqrmod_256		
+	arg mem_cx_256,regA
+	arg mem_t3_256,regB
+	arg mem_cx_256,contw
+	call bn_submod_256		/* x=n6^2-n5^2*n7 */
+	arg mem_cx_256,contr
+	arg mem_t7_256,contw
+	call memcpy32
+	arg mem_t7_256,regA
+	call bn_lshiftmod_256		/* t7=2*x */
+	arg mem_t3_256,regA
+	arg mem_t7_256,regB
+	arg mem_t3_256,contw
+	call bn_submod_256		/* t3=n9 */
+	arg mem_t3_256,regA
+	arg mem_t2_256,regB
+	arg mem_t2_256,contw
+	call bn_mulmod_256		/* t2=n9*n6 */
+	arg mem_t2_256,regA
+	arg mem_t1_256,regB
+	arg mem_cy_256,contw
+	call bn_submod_256	
+	arg mem_cy_256,regA
+	arg mem_p_256,regB
+	arg mem_cy_256,contw
+	force 0,regC
+	fetch 1,mem_cy_256
+	isolate1 0,pdata
+	call bn_add_256,true
+	copy regC,alarm
+	arg mem_cy_256,regA
+	call bn_rshift_256
+	fetch 1,mem_cy5_256
+	isolate1 0,alarm
+	setflag true,7,pdata
+	store 1,mem_cy5_256
+	rtn	
+
+bn_invmod_256:
+	copy contw,timeup					 
+	arg mem_tmp0_256,contw			 
+	call clear_mem_256
+	force 0,pdata
+//	store 4,mem_tmp52
+	store 4,mem_t2_256
+	jam 1,mem_tmp0_256      //y1
+	arg mem_tmp1_256,contw	//y2			 
+	call clear_mem_512      
+	arg mem_p_256,contr
+	arg mem_tmp2_256,contw		//j		 
+	call memcpy32
+	copy regA,contr
+	arg mem_tmp3_256,contw		//i		 
+	call memcpy32
+	
+//	arg mem_tmp22,regA
+//	arg mem_tmp32,regB
+//	call p_bn_bigeq_256
+//	branch assert,positive
+bn_invmod_256_2:	
+	arg mem_tmp3_256,contr
+	call bn_eq_zero_256
+	branch bn_invmod_256_0,blank
+//call ice_break    	
+//fetch 1,0x4ffe
+//increase 1,pdata
+//store 1,0x4ffe
+	arg mem_tmp3_256,regA
+	arg mem_tmp0_256,regB
+	call bn_rshifteven_256
+	arg mem_tmp2_256,regA
+	arg mem_tmp1_256,regB
+	call bn_rshifteven_256
+	
+	arg mem_tmp3_256,regA
+	arg mem_tmp2_256,regB
+	call bn_bigeq_256
+	branch bn_invmod_256_1,positive
+	arg mem_tmp2_256,regA
+	arg mem_tmp3_256,regB
+	copy regA,contw
+	call bn_sub_256
+	arg mem_tmp0_256,regA
+	arg mem_tmp1_256,regB
+	copy regB,contw
+	call bn_add_256
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_256_2
+bn_invmod_256_1:
+	arg mem_tmp3_256,regA
+	arg mem_tmp2_256,regB
+	copy regA,contw
+	call bn_sub_256
+	arg mem_tmp1_256,regA
+	arg mem_tmp0_256,regB
+	copy regB,contw
+	call bn_add_256
+	ifetch 1,regA
+	iadd regC,regC
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB
+	branch bn_invmod_256_2
+bn_invmod_256_0:
+//call ice_break
+	arg mem_tmp1_256,regA
+	copy timeup,contw
+	call  bn_p256mod
+//call ice_break
+	arg mem_p_256,regA
+	copy timeup,regB
+	copy timeup,contw
+	branch bn_submod_256
+
+
+bn_mulmod_256:
+	copy contw,timeup					/* save result ptr */
+	
+	force 0,regext_index
+	
+	arg mem_tmp1_256,contw
+	call clear_mem_512
+	arg mem_regext,contw
+	call clear_mem_512
+//	jam 0,mem_regext_index
+
+//	arg mem_tmp12,contw
+	copy regA,contr
+//	force 0,regext_index
+	jam 0,mem_regext
+	setarg 0
+	call bn_load_mem
+	copy regB,contr
+	call bn_load_256
+//	force 0,regB
+//	jam 0,mem_regb
+	force 0,queue
+	arg mem_tmp1_256,contw	
+bn_mulmod_256_1:	
+//	copy regb,pdata
+//	store 1,
+	arg mem_regext,temp
+	copy queue,regb
+	lshift2 regb,pdata
+//	lshift4 pdata,pdata
+	iadd temp,regb	
+	force 0,temp
+	force 0,regC
+bn_mulmod_256_0:
+//	copy contw,pdata
+//	store 2,mem_contw
+//call ice_break
+//	copy pdata,contw
+	ifetch 4,contw					/* d[i+j] */
+	iforce regA
+//	copy regB,regext_index
+//	deposit regext
+	ifetch 4,regb
+	copy regC,regext_index
+	imul32 regext,pdata
+	iadd regA,pdata					/* uv = a[i]*b[j] + d[i+j] */
+	iadd temp,pdata					/* uv += u */
+	istore 4,contw					/* ->d[i+j] */
+	rshift32 pdata,temp				/* temp = u = uv >> 32 */
+	increase 1,regC
+	compare 8,regC,0xff
+	nbranch bn_mulmod_256_0,true
+//call ice_break
+	deposit temp
+	istore 4,contw					/* d[i + 12] = u */
+	increase -32,contw
+//	fetch 1,mem_regb
+//	copy pdata,regb
+	increase 1,queue
+	compare 8,queue,0xff
+	nbranch bn_mulmod_256_1,true
+	arg mem_tmp1_256,regA
+	copy timeup,contw
+	branch bn_p256mod
+
+bn_p256mod:
+	bpatchx patch3e_2,mem_patch3e
+	copy contw,timeup				/* save result ptr */
+	copy regA,alarm				/* temp save regA */
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	call memset0_4	
+	istore 8,contw
+	add regA,44,contr
+	call memcpy8
+	call memcpy12
+	copy regb,rega
+	call  bn_lshiftmod_256 //2S1
+	arg mem_tmp2_256,regB
+	copy alarm,rega   
+	copy timeup,contw
+	call bn_addmod_256 //T+2S1
+//call ice_break	
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	call memset0_4	
+	istore 8,contw
+	add alarm,48,contr
+	call memcpy16
+	call memset0_4	
+	copy regb,rega
+	call  bn_lshiftmod_256 //2S2
+//call ice_break	
+//	arg 0,regB
+
+	arg mem_tmp2_256,regB
+	copy timeup,rega   
+	copy regA,contw	
+	call bn_addmod_256  //+2S2
+//call ice_break	
+//	arg 0,regB
+		
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,32,contr
+	call memcpy12
+	call memset0_4	
+	istore 8,contw
+	add alarm,56,contr
+	call memcpy8
+	copy timeup,regA
+	copy regA,contw
+	call bn_addmod_256 //+S3
+//call ice_break	
+//	arg 0,regB
+
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,36,contr
+	call memcpy12
+	add alarm,52,contr	
+	call memcpy12
+	add alarm,52,contr
+	call memcpy4
+	add alarm,32,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_addmod_256 //+S4	
+//call ice_break	
+//	arg 1,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,44,contr
+	call memcpy12
+	call memset0_4	
+	istore 8,contw
+	add alarm,32,contr
+	call memcpy4
+	add alarm,40,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_submod_256 //-D1	
+//call ice_break	
+//	arg 2,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,48,contr
+	call memcpy8
+	call memcpy8
+	force 0,pdata
+	istore 8,contw
+	add alarm,36,contr
+	call memcpy4
+	add alarm,44,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_submod_256 //-D2	
+//call ice_break	
+//	arg 3,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,52,contr
+	call memcpy12
+	add alarm,32,contr
+	call memcpy12
+	call memset0_4	
+	add alarm,48,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	call bn_submod_256 //-D3
+//call ice_break	
+//	arg 4,regB
+	arg mem_tmp2_256,regB
+	copy regB,contw
+	add alarm,56,contr
+	call memcpy8
+	call memset0_4	
+	add alarm,36,contr
+	call memcpy12
+	call memset0_4	
+	add alarm,52,contr
+	call memcpy4
+	copy timeup,regA
+	copy regA,contw
+	branch  bn_submod_256 //-D4	
+
+
+bn_load_mem:
+	force 32,loopcnt
+	arg mem_regext,contw
+	iadd contw,contw
+	branch memcpy
+
+bn_load_256:
+	force 8,loopcnt
+	branch bn_load_0
+
+bn_sqrmod_256:
+	copy regA,regB
+	branch bn_mulmod_256
+
+bn_add_256:
+	force 8,loopcnt
+ 	branch bn_add+1
+
+bn_addmod_256:
+	call bn_add_256
+	copy contw,regA
+	branch bn_lshiftmod_ismod_256
+
+bn_lshiftmod_256:
+	call bn_lshift_256
+bn_lshiftmod_ismod_256:	
+	isolate1 0,regC
+	branch bn_lshiftmod_p_256,true
+	arg mem_p_256,regB
+	copy regA,regC
+	increase -32,regA
+	call bn_bigeq_256
+	nrtn positive
+	copy regC,regA
+	branch sub_p2_256
+	
+bn_lshiftmod_p_256:
+	call sub_p2_256
+//	nrtn true
+	copy regA,regC
+	increase -32,regA
+	arg mem_p_256,regB
+	call bn_bigeq_256
+	nrtn positive
+	copy regC,regA
+	branch sub_p2_256
+		
+	
+sub_p2_256:
+	increase -32,regA
+	arg mem_p_256,regB
+	copy regA,contw
+	branch bn_sub_256
+	
+
+
+	
+bn_submod_256:
+	call bn_sub_256
+//	isolate1 0,regC
+	branch  bn_submod_256_np,true
+//	copy regA,regC
+//	increase -32,regA
+	add contw,-32,regA
+	arg mem_p_256,regB
+	call bn_bigeq_256
+	nrtn positive
+	arg mem_p_256,regB
+	add contw,-32,regA
+//	copy regC,regA
+	copy rega,contw
+	branch  bn_sub_256
+bn_submod_256_np:	
+	add contw,-32,regA
+	arg mem_p_256,regB
+	copy regA,contw
+	call bn_add_256
+//	isolate1 0,regC
+	rtn true
+	add contw,-32,regA
+	arg mem_p_256,regB
+	copy regA,contw
+	branch bn_add_256	
+
+
+ 
+bn_sub_256:
+	force 8,loopcnt
+	branch bn_sub+1
+
+bn_rshift_256:
+	force 8,loopcnt
+	increase 28,regA
+	branch bn_rshift
+
+bn_lshift_256:
+	force 8,loopcnt
+	force 0,regC
+	branch bn_lshift_0
+
+bn_bigeq_256:
+	force 8,loopcnt
+	increase 28,regA
+	increase 28,regB
+	branch bn_bigeq_0
+
+
+bn_eq_zero_256:
+	ifetch 8,contr
+	nrtn blank
+	branch bn_eq_zero
+
+
+
+	
+bn_rshifteven_256:
+	copy regA,alarm
+bn_rshifteven_256_1:
+	copy alarm,regA
+	ifetch 1,regA
+	isolate1 0,pdata
+	rtn true
+	call bn_rshift_256
+	ifetch 1,regB
+	isolate0 0,pdata
+	branch bn_rshifteven_256_0,true
+	arg mem_p_256,regA
+	copy regB,contw
+	call bn_add_256
+	ifetch 1,regB
+	iadd regC,pdata
+	istore 1,regB						 
+	increase -32,regB
+bn_rshifteven_256_0:
+	add regB,32,regA
+	force 9,loopcnt
+	call bn_rshift
+	branch bn_rshifteven_256_1		
+
+else
+sp_initialize_256:
+	rtn
+
+endif
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/ui.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/ui.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/ui.prog	(working copy)
@@ -0,0 +1,701 @@
+ui_init:
+	call lpm_disable_exen_output
+	rtn wake
+	call ui_button_init
+	call ui_timer_init
+	branch ui_led_init_global
+
+ui_dispatch:
+	call ui_led_dispatch
+	
+	branch ui_timer_check
+	
+ui_button_init:
+	fetch 1,mem_ui_button_gpio
+	rtneq UI_BUTTON_GPIO_DISABLE
+	iforce temp
+	call gpio_config_output
+	fetcht 1,mem_ui_button_gpio
+	call gpio_out_inactive
+	nop 100
+	fetcht 1,mem_ui_button_gpio
+	call gpio_config_input
+	branch ui_button_polling
+
+
+	
+ui_button_polling:
+	bpatchx patch3e_3,mem_patch3e
+	fetch 1,mem_ui_button_gpio
+	rtneq UI_BUTTON_GPIO_DISABLE
+	copy pdata,temp
+	call gpio_get_bit
+	nbranch ui_button_up,true
+	//fall through
+ui_button_down:
+	call ui_button_check_long_press
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BTN_DOWN
+	store 2,mem_ui_state_map
+	fetch 1,mem_ui_button_last_state
+	rtneq UI_BUTTON_STATE_DOWN
+	jam UI_BUTTON_STATE_DOWN,mem_ui_button_last_state
+	//Down Edge
+	fetch 1,mem_ui_button_timeout
+	store 1,mem_ui_button_timer //start long press timer
+	call lpm_button_get_wake_lock
+	jam BT_EVT_BUTTON_DOWN,mem_fifo_temp
+	branch ui_ipc_send_event
+ui_button_up:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BTN_DOWN
+	store 2,mem_ui_state_map
+	fetch 1,mem_ui_button_last_state
+	rtneq UI_BUTTON_STATE_UP
+	jam UI_BUTTON_STATE_UP,mem_ui_button_last_state
+	//Up Edge
+	jam 0,mem_ui_button_timer//stop long press timer
+	call lpm_button_clean_wake_lock
+	jam BT_EVT_BUTTON_UP,mem_fifo_temp
+	branch ui_ipc_send_event
+
+ui_button_check_long_press:
+	fetch 1,mem_ui_button_timer
+	rtn blank
+	increase -1,pdata
+	store 1,mem_ui_button_timer
+	nrtn blank
+	//Long Press
+	jam BT_EVT_BUTTON_LONG_PRESSED,mem_fifo_temp
+	branch ui_ipc_send_event
+
+lpm_button_get_wake_lock:
+	arg wake_lock_button,queue
+	branch lpm_get_wake_lock
+	
+lpm_button_clean_wake_lock:
+	arg wake_lock_button,queue
+	branch lpm_put_wake_lock
+
+
+
+/***********************ui led function****************************/
+/******************
+led function
+
+ui_led_init_global
+ui_led_on_global
+
+ui_led_off_global
+//input:rega :struct number
+ui_led_blink_start_global
+
+//input:rega :struct number
+//contr: the point that want to set led style address
+ui_led_set_style_global
+
+******************/
+//input:rega :struct number
+//output:regb :current strutct starting pointer
+calc_curr_struct_prt:
+	fetch 2,mem_ui_led_struct_ptr
+	mul32 rega,LED_OFFSET_LENGTH,regb
+	iadd regb,regb
+	rtn
+
+
+ui_led_init_global:
+	fetch 1,mem_ui_led_struct_num
+	rtn blank
+	copy pdata,loopcnt
+	fetch 2,mem_ui_led_struct_ptr
+	copy pdata,regb
+ui_led_init_loop:
+	add regb,LED_OFFSET_LED_GPIO,regc
+	ifetcht 1,regc
+	call gpio_config_output
+	call ui_led_off_static
+	increase LED_OFFSET_LENGTH,regb
+	loop ui_led_init_loop
+	rtn
+
+	
+//input:rega :struct number
+ui_led_on_global:
+	call calc_curr_struct_prt
+	setarg UI_LED_STATE_LIGHTING
+	istore 1,regb
+	call ui_led_stop_timer
+	branch ui_led_on_static
+
+	
+//input:rega :struct number
+ui_led_blink_stop_global:
+ui_led_off_global:
+	call calc_curr_struct_prt
+	setarg UI_LED_STATE_DARKING
+	istore 1,regb
+	call ui_led_stop_timer
+	branch ui_led_off_static
+
+
+//input:rega :struct number
+ui_led_blink_start_global:
+	call calc_curr_struct_prt
+	setarg UI_LED_STATE_BLINK_START
+	istore 1,regb
+	setarg LED_INFINITE_FLASH_NUM
+	istore 1,contw
+	branch ui_led_off_static
+
+
+//input:rega :struct number
+//REGC: the point that want to set led style address
+ui_led_set_style_global:
+	call calc_curr_struct_prt
+	arg LED_OFFSET_LENGTH,loopcnt
+	copy regc,contr
+	copy regb,contw
+	branch memcpy_fast
+
+
+
+ui_led_dispatch:
+	fetch 1,mem_ui_led_struct_num
+	rtn blank
+	arg 0,rega
+ui_led_blink_polling:
+	call ui_led_change_style_by_type
+	increase 1,rega
+	fetch 1,mem_ui_led_struct_num
+	isub rega,null
+	rtn zero
+	branch ui_led_blink_polling
+
+
+ui_led_off_static:
+	add regb,LED_OFFSET_LED_GPIO,regc
+	ifetcht 1,regc
+	branch gpio_out_inactive
+
+
+ui_led_on_static:
+	add regb,LED_OFFSET_LED_GPIO,regc
+	ifetcht 1,regc
+	branch gpio_out_active
+
+
+//input:rega :struct number
+ui_led_change_style_by_type:
+	add rega,ui_led_blink,queue
+	call timer_check
+	nrtn blank			//timer out
+	
+	call calc_curr_struct_prt
+
+	ifetch 1,regb			//led type
+
+	beq UI_LED_STATE_LIGHTING,ui_led_on_static
+	beq UI_LED_STATE_DARKING,ui_led_off_static
+	beq UI_LED_STATE_BLINK_STOP,ui_led_off_static
+	beq UI_LED_STATE_BLINK_DARKING,ui_led_blink_state_darking
+ui_led_blink_state_lighting:
+	call ui_led_on_static
+	add regb,LED_OFFSET_CB_LEDON,regc
+	call push_stack
+	ifetch 2,regc
+	call callback_func
+	call pop_stack
+	setarg UI_LED_STATE_BLINK_DARKING
+	istore 1,regb
+	add regb,LED_OFFSET_ON_TIME,regc
+	ifetch 2,regc
+	branch ui_led_blink_timer_start
+	
+
+ui_led_blink_state_darking:
+	call ui_led_off_static
+	add regb,LED_OFFSET_CB_LEDOFF,regc
+	call push_stack
+	ifetch 2,regc
+	call callback_func
+	call pop_stack
+	
+	add regb,LED_OFFSET_BLINK_COUNT,regc
+	ifetch 1,regc
+	beq LED_INFINITE_FLASH_NUM,ui_led_blink_infinite
+	increase -1,pdata
+	istore 1,regc
+	branch ui_led_blink_stop_global,blank		//End of flicker
+ui_led_blink_infinite:
+	setarg UI_LED_STATE_BLINK_LIGHTING
+	istore 1,regb
+	add regb,LED_OFFSET_OFF_TIME,regc
+	ifetch 2,regc
+ui_led_blink_timer_start:
+	add rega,ui_led_blink,queue
+	branch timer_init
+
+ui_led_stop_timer:
+	setarg 0
+	branch ui_led_blink_timer_start
+
+/***********************ui led function ending****************************/
+
+
+
+ui_timer_timeout:
+	setarg 0x1000
+	lshift16 pdata,pdata
+	iadd regb,regb
+	rtn
+	
+ui_timer_check:
+	bpatchx patch3e_4,mem_patch3e
+	arg 0,rega
+	fetcht 4,mem_ui_timer_last_btclk
+	copy clkn_bt,regb
+	copy regb,pdata
+	isub temp,null
+	ncall ui_timer_timeout,positive
+	//call ice_break
+ui_timer_check_loop:
+	copy regb,pdata
+	increase 160,temp    //320btclk = 100ms
+	increase 160,temp
+	isub temp,null
+	nbranch ui_timer_check_end,positive
+	increase 1,rega   //increase 1 every 100ms count
+	and rega,0x0f,pdata
+	nbranch ui_timer_check_loop,blank
+	arg 0,rega  //reset timer if it's longer than 1.5s between 2 checks
+	call ui_timer_check_send_evt
+ui_timer_init:
+	copy clkn_bt,pdata
+	store 4,mem_ui_timer_last_btclk
+	rtn
+ui_timer_check_end:
+	bpatchx patch3e_5,mem_patch3e
+	copy rega,pdata
+	rtn blank
+	increase -160,temp    //320btclk = 100ms
+	increase -160,temp
+	set0 28,temp
+	storet 4,mem_ui_timer_last_btclk
+ui_timer_check_send_evt:
+	branch app_evt_timer
+
+	
+
+//**********************************************************//
+//************UI Inter-Processor Communication*******//
+//**********************************************************//
+ui_ipc_get_lock:
+	jam 1,mem_ipc_lock_bt
+ui_ipc_get_lock_wait:
+	fetch 1,mem_ipc_lock_c51
+	nbranch ui_ipc_get_lock_wait,blank
+	rtn
+	
+ui_ipc_put_lock:
+	jam 0,mem_ipc_lock_bt
+	rtn
+	
+
+	
+ui_ipc_send_event:
+	bpatchx patch3e_6,mem_patch3e
+	call ui_ipc_get_lock
+	copy rega,pdata
+	store 4,mem_ipc_rega_temp
+	arg mem_ipc_fifo_bt2c51,rega
+	call fifo_in
+	fetch 4,mem_ipc_rega_temp
+	copy pdata,rega
+	branch ui_ipc_put_lock
+
+ui_ipc_send_cmd:
+	bpatchx patch3e_7,mem_patch3e
+	call ui_ipc_get_lock
+	copy rega,pdata
+	store 4,mem_ipc_rega_temp	
+	arg mem_ipc_fifo_c512bt,rega
+	call fifo_in
+	fetch 4,mem_ipc_rega_temp
+	copy pdata,rega	
+	branch ui_ipc_put_lock
+
+ui_ipc_clean_all_fifo:
+	setarg 0
+	store UTIL_FIFO_LEN,mem_ipc_fifo_c512bt
+	store UTIL_FIFO_LEN,mem_ipc_fifo_bt2c51
+	rtn
+	
+check_51cmd:
+	bpatchx patch3f_0,mem_patch3f
+	fetch 1,mem_hci_cmd
+	nrtn blank
+	arg mem_ipc_fifo_c512bt,rega
+	call fifo_is_empty
+	rtn blank
+	jam IPC_CONTINUE_PROCESS,mem_ipc_skip_continue_proc
+	call check_51cmd_once
+	fetch 1,mem_ipc_skip_continue_proc
+	branch check_51cmd,blank
+	rtn
+
+check_51cmd_once:
+	call ui_ipc_get_lock
+	arg mem_ipc_fifo_c512bt,rega
+	call fifo_out
+	copy pdata,temp
+	call ui_ipc_put_lock
+	bpatchx patch3f_1,mem_patch3f
+	copy temp,pdata
+	rtn blank
+ 	beq BT_CMD_START_DISCOVERY,check_51cmd_start_discovery
+  	beq BT_CMD_STOP_DISCOVERY,check_51cmd_stop_discovery
+  	beq BT_CMD_RECONNECT,check_51cmd_reconnect
+  	beq BT_CMD_ENTER_SNIFF_SUBRATING,check_51cmd_enter_sniff_subrating
+  	beq BT_CMD_EXIT_SNIFF_SUBRATING,check_51cmd_exit_sniff_subrating
+  	beq BT_CMD_SNIFF_TEST,check_51cmd_sniff_test
+	beq BT_CMD_START_INQUIRY,check_51cmd_inq
+	beq BT_CMD_STOP_INQUIRY,check_51cmd_stop_inq
+	beq BT_CMD_START_ADV,check_51cmd_adv
+	beq BT_CMD_STOP_ADV,check_51cmd_stop_adv
+	beq BT_CMD_START_DIRECT_ADV,check_51cmd_direct_adv
+	beq BT_CMD_STOP_DIRECT_ADV,check_51cmd_stop_direct_adv
+	beq BT_CMD_LED_OFF,check_51cmd_led_off
+	beq BT_CMD_LED_ON,check_51cmd_led_on
+	beq BT_CMD_LED_BLINK,check_51cmd_led_start_blink
+	beq BT_CMD_LE_START_CONN,check_51cmd_le_start_con
+	beq BT_CMD_LE_START_SCAN,check_51cmd_start_scan
+	beq BT_CMD_LE_STOP_SCAN,check_51cmd_stop_scan
+	beq BT_CMD_ENTER_HIBERNATE,check_51cmd_hibernate
+	beq BT_CMD_LE_SMP_SECURITY_REQUEST,check_51cmd_le_smp_sec_req
+	beq BT_CMD_BB_RECONN_CANCEL,check_51cmd_bb_reconn_cancel
+	//context related, process in context
+	store 1,mem_fifo_temp
+	bpatchx patch3f_2,mem_patch3f
+	call lmo_fifo_check
+	nbranch check_51cmd_restore,blank  //process this cmd next time while lmo fifo is full
+check_51cmd_once_continue:
+	fetch 1,mem_fifo_temp
+	bmark0 mark_context,check_51cmd_check_idle
+	beq BT_CMD_DISCONNECT,check_51cmd_disconnect
+  	beq BT_CMD_ENTER_SNIFF,cmd_in_sniff
+  	beq BT_CMD_EXIT_SNIFF,cmd_exit_sniff
+  	beq BT_CMD_SET_PIN_CODE,check_51cmd_pincode
+	beq BT_CMD_LE_DISCONNECT,check_51cmd_le_disconnect
+	beq BT_CMD_LE_UPDATE_CONN,check_51cmd_ble_update_connect_param
+	beq BT_CMD_ROLE_SWITCH,check_51cmd_role_switch
+	beq BT_CMD_STORE_RECONN_INFO_LE,eeprom_store_le_reconn_info
+	beq BT_CMD_STORE_RECONN_INFO_BT,eeprom_store_bd_reconn_info
+	beq BT_CMD_DHKEY_NOT_ACCEPT,check_51cmd_dhkey_not_accept
+	beq BT_CMD_STORE_RECONN_INFO,check_51cmd_store_reconn_info
+	rtn
+
+check_51cmd_check_idle:
+	store 1,mem_fifo_temp
+  	call context_check_idle
+	branch check_51cmd_restore,zero
+	call context_search_plap
+	nrtn zero
+check_51cmd_restore:
+	jam IPC_SKIP_CONTINUE_PROCESS,mem_ipc_skip_continue_proc
+	branch ui_ipc_send_cmd
+  
+ /******************** 51COMMAND*********************/
+
+//command opcode 0x01	
+check_51cmd_start_discovery:
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BT_DISCOVERY
+	store 2,mem_ui_state_map
+	jam 3,mem_scan_mode
+	rtn
+
+
+//command opcode 0x02	
+check_51cmd_stop_discovery:
+	jam 0,mem_hid_handshake_timer_count
+	jam 0,mem_scan_mode
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BT_DISCOVERY
+	store 2,mem_ui_state_map
+	rtn	
+
+
+//command opcode 0x03	
+check_51cmd_reconnect:	
+	jam hci_cmd_create_conn,mem_hci_cmd
+	rtn	
+
+
+//command opcode 0x04
+check_51cmd_disconnect:
+	jam LMP_DETACH,mem_lmo_opcode2
+	jam OTHER_END_TERMINATED,mem_disconn_reason_send
+	rtn
+
+	
+//command opcode 0x07
+check_51cmd_enter_sniff_subrating:
+	rtn
+
+
+//command opcode 0x08
+check_51cmd_exit_sniff_subrating:
+	rtn	
+
+
+//command opcode 0x09
+check_51cmd_sniff_test:
+	rtn	
+
+
+//command opcode 0x10
+check_51cmd_pincode:
+	jam pincode_state_pincode_ready,mem_pincode_state
+	branch cmd_pair
+
+
+//command opcode 0x11
+check_51cmd_inq:
+	rtn
+
+
+//command opcode 0x12
+check_51cmd_stop_inq:
+	rtn
+
+
+//command opcode 0x13
+check_51cmd_adv:
+	jam ON,mem_le_adv_enable
+	jam ADV_IND,mem_le_adv_type
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+
+//command opcode 0x14
+check_51cmd_stop_adv:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	jam OFF,mem_le_adv_enable
+	rtn
+
+
+//command opcode 0x15
+check_51cmd_direct_adv:
+	jam ON,mem_le_adv_enable
+	jam ADV_DIRECT_IND,mem_le_adv_type
+	fetch 2,mem_ui_state_map
+	set1 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	rtn
+
+
+//command opcode 0x16
+check_51cmd_stop_direct_adv:
+	fetch 2,mem_ui_state_map
+	set0 UI_STATE_BLE_ADV,pdata
+	store 2,mem_ui_state_map
+	jam OFF,mem_le_adv_enable
+	rtn
+
+
+//command opcode 0x17
+check_51cmd_le_disconnect:
+	setarg 20 // 100ms
+	store 2,mem_le_superto
+	store 2,mem_le_init_superto
+	branch le_send_terminate_ind_user_terminated
+
+
+//command opcode 0x18
+check_51cmd_ble_update_connect_param:
+	branch le_l2cap_tx_update_req
+
+
+//command opcode 19
+check_51cmd_led_off:
+	arg 0,rega
+	branch ui_led_off_global
+
+
+//command opcode 20
+check_51cmd_led_on:
+	arg 0,rega
+	branch ui_led_on_global
+
+
+//command opcode 21
+check_51cmd_led_start_blink:
+	arg 0,rega
+	branch ui_led_blink_start_global
+
+
+//command opcode 0x22
+check_51cmd_le_start_con:
+	jam ON,mem_le_scan_enable
+	jam hci_cmd_le_create_conn,mem_hci_cmd
+//	fetch 6,mem_app_peer_addr
+//	store 6,mem_le_conn_peer_addr
+	rtn
+
+
+//command opcode 0x23
+check_51cmd_start_scan:
+	jam ON,mem_le_scan_enable
+	rtn
+
+
+//command opcode 0x24
+check_51cmd_stop_scan:
+	jam OFF,mem_le_scan_enable
+	jam 0,mem_hci_cmd
+	rtn
+
+
+//command opcode 0x25
+check_51cmd_hibernate:
+	fetch 2,mem_cb_before_hibernate
+	call callback_func
+	fetch 1,mem_ui_button_gpio
+	beq UI_BUTTON_GPIO_DISABLE,check_51cmd_hibernate_btn_disabled
+	copy pdata,temp
+	call gpio_config_input
+check_51cmd_hibernate_btn_disabled:
+	call ui_ipc_clean_all_fifo
+	branch lpm_hibernate	
+
+
+//command opcode 0x27
+check_51cmd_le_smp_sec_req:
+	branch le_send_smp_security_request
+
+
+//command opcode 0x29
+check_51cmd_role_switch:
+  	jam LMP_SLOT_OFFSET,mem_lmo_opcode2
+	set1 mark_switch_initiated,mark
+	nrtn master
+	jam SWITCH_FLAG_INIT,mem_switch_flag
+	jam LMP_SWITCH_REQ ,mem_lmo_opcode2
+	fetch 1,mem_connection_options
+	set0 CONNECTION_SWITCH,pdata
+	store 1,mem_connection_options
+	rtn
+
+
+//command opcode 0x30
+check_51cmd_bb_reconn_cancel:
+	force page_length_timer,queue
+	branch timer_stop
+
+
+//command opcode 0x33
+check_51cmd_dhkey_not_accept:
+	call tid_set_reply
+	jam LMP_DHKey_Check,mem_lmi_opcode2
+	branch parse_lmp_dhkey_check_reject	
+
+
+ui_check_paring_button:
+	fetch 1,mem_ui_state_map
+	rtnbit0 UI_STATE_BTN_DOWN
+	rtnbit0 UI_STATE_BT_RECONNECT
+	branch check_51cmd_bb_reconn_cancel
+
+
+
+///////////queue function////////////
+queue_init:
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,contw
+	setarg 0
+	istore 3,contw
+	rtn
+	
+//input:rega:the address of the data to which you want to input queue
+//output:if user is disable,mean queue no have space
+queue_push:
+	call disable_user
+	call queue_full
+	rtn blank
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,regb
+	ifetcht 1,regb
+	increase 1,temp
+	istoret 1,regb	//number add 
+	
+	ifetcht 1,pdata	//temp:each length
+	copy temp,loopcnt
+	add pdata,QUEUE_OFFSET_WRITE_PTR,regb
+	ifetch 1,regb
+	imul32 temp,pdata	//offset
+	iadd contr,contw
+	copy rega,contr
+calc_queue_next_ptr:
+	call memcpy
+	call queue_get_size
+	pincrease -1
+	ifetcht 1,regb
+	increase 1,temp
+	iand temp,temp
+	istoret 1,regb
+	branch enable_user
+
+
+//input:rega:the address of the data to which you want to output queue
+//output:if user is disable,mean queue no have data
+queue_pop:
+	call disable_user
+	call queue_empty
+	rtn blank
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,regb
+	ifetcht 1,regb
+	increase -1,temp
+	istoret 1,regb
+	ifetcht 1,pdata		//each size
+	copy temp,loopcnt
+	add pdata,QUEUE_OFFSET_READ_PTR,regb
+	ifetch 1,regb
+	imul32 temp,pdata	//offset
+	iadd contr,contr
+	increase 1,contr
+	copy rega,contw
+	branch calc_queue_next_ptr
+
+
+//output:if blank is 1,mean queue is empty
+queue_empty:
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_CURR_NUM,contr
+	ifetch 1,contr
+	rtn
+
+//output:if blank is 1,mean queue is full
+queue_full:
+	call queue_get_size
+	ifetcht 1,contr
+	isub temp,pdata
+	rtn
+
+//output:pdata is queue size
+queue_get_size:
+	fetch 2,mem_queue_ptr
+	add pdata,QUEUE_OFFSET_LENGTH,contr
+	ifetch 1,contr
+	rtn
+
+///////////queue function end////////////
+
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/utility.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/utility.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/utility.prog	(working copy)
@@ -0,0 +1,614 @@
+
+right_shift_n: //rshiftN pdata,pdata
+	sub loopcnt,0,null
+	rtn zero
+right_shift_n_loop: 
+	rshift pdata,pdata
+	loop right_shift_n_loop
+	rtn
+
+/* lshift. 0:1 byte; 1:2byte; 2:4byte; 3:8byte; 4:16byte*/
+left_shift_n:
+	force 1,pdata
+	sub loopcnt,0,null
+	rtn zero
+left_shift_n_loop:
+	lshift pdata,pdata
+	loop left_shift_n_loop
+	rtn
+push_stack:
+	deposit contw
+	store 2, mem_contw
+	storet 8,mem_temp
+	deposit timeup
+	store 4,mem_timeup
+	call push_stack_rega_b_c
+	deposit contr
+	store 2, mem_contr
+	rtn
+
+push_stack_rega_b_c:
+	deposit rega
+	store 4, mem_rega
+	deposit regb
+	store 4, mem_regb
+	deposit regc
+	store 3, mem_regc
+	rtn
+
+pop_stack:
+	fetcht 8,mem_temp
+	fetch 4,mem_timeup
+	iforce timeup
+	call pop_stack_rega_b_c
+	fetch 2, mem_contw
+	iforce contw
+	fetch 2, mem_contr
+	iforce contr
+	rtn
+
+pop_stack_rega_b_c:
+	fetch 4, mem_rega
+	iforce rega
+	fetch 4, mem_regb
+	iforce regb
+	fetch 3,mem_regc
+	iforce regc
+	rtn
+
+get_contw:
+	fetch 2,mem_contw
+	copy pdata,contw
+	rtn
+get_contr:
+	fetch 2,mem_contr
+	copy pdata,contr
+	rtn
+store_contw:
+	copy contw,pdata
+	store 2,mem_contw
+	rtn
+store_contr:
+	copy contr,pdata
+	store 2,mem_contr
+	rtn	
+	
+
+//
+save_cont_pointers:
+	copy contw,pdata
+	store 2,mem_hold_contw
+	copy contr,pdata
+	store 2,mem_hold_contr
+	rtn
+load_cont_pointers:
+	fetch 2,mem_hold_contw
+	copy pdata,contw
+	fetch 2,mem_hold_contr
+	copy pdata,contr
+	rtn
+
+memcpy96:
+	call memcpy32
+memcpy64:
+	call memcpy32
+	branch memcpy32
+memcpy12:
+	call memcpy8
+memcpy4:
+	ifetch 4,contr
+	istore 4,contw
+	rtn	
+memcpy8:
+	ifetch 8,contr
+	istore 8,contw
+	rtn	
+
+memcpy48:
+	call memcpy16
+memcpy32:
+	call memcpy8
+memcpy24:
+	call memcpy8
+memcpy16:
+	call memcpy8
+	branch memcpy8
+
+
+
+delay_10ms:
+	arg 10,loopcnt
+delay_ms_wait:
+	nop 12000
+	loop delay_ms_wait
+	rtn
+
+bn_zero:
+	force 3,loopcnt
+memset0:
+	force 0,pdata
+memset8:
+	istore   8,contw
+	loop   memset8
+	rtn
+
+memset0_8:
+	force 0,pdata
+	istore 8,contw
+	rtn
+memset0_4:
+	force 0,pdata
+	istore 4,contw
+	rtn	
+	
+clear_mem_256:
+	force 4,loopcnt
+	branch memset0 
+clear_mem_512:
+	force 8,loopcnt
+	branch memset0 
+
+clear_mem:
+	deposit loopcnt
+	rtn blank
+	setarg 0
+clear_mem_loop:
+	istore 1,contw
+	loop clear_mem_loop
+	rtn
+	
+
+clear_temp_block:
+	arg 32,loopcnt
+	arg mem_temp_block0,contw
+	branch clear_mem
+	
+xor_loop:
+	ifetch   4,regc
+	ifetcht 4,rega
+	ixor     temp,pdata
+	istore   4,contw	
+	increase 4,rega
+	increase 4,regc
+	loop  xor_loop
+	rtn
+	
+// 11 22 -> 22 11; 11 22 33 -> 33 22 11 
+// rega:data addr ;loopnct:length
+inverse_data:
+	bpatchx patch3f_3,mem_patch3f
+	copy loopcnt,pdata
+	sub pdata,1,null
+	rtn positive
+	iadd rega,regb	
+	increase -1,regb
+	rshift loopcnt,loopcnt
+inverse_loop:
+	ifetcht 1,rega
+	ifetch 1,regb
+	istore 1,rega
+	istoret 1,regb
+	increase -1,regb
+	increase 1,rega
+	loop inverse_loop
+	rtn
+
+
+memcpy_fast:
+	deposit loopcnt
+	rtn blank
+memcpy_fast_loop:
+	increase -8,loopcnt
+	call memcpy8,positive
+	rtn zero
+	branch memcpy_fast_loop,positive
+	increase 8,loopcnt
+memcpy_fast_loop_four:
+	increase -4,loopcnt
+	call memcpy4,positive
+	rtn zero
+	branch memcpy_fast_loop_four,positive
+	increase 4,loopcnt
+	branch memcpy
+ 
+memcpy:
+	deposit loopcnt
+	rtn blank
+memcpy_loop:
+	ifetch 1,contr
+	istore 1,contw
+	loop memcpy_loop
+	rtn
+
+timer_stop:
+	setarg 0
+timer_init:
+	rshift clkn_bt,temp
+	storet 4,mem_last_clkn
+	arg mem_timers,contw
+	iforce temp
+	lshift queue,pdata
+	iadd contw,contw
+	istoret 2,contw
+	bpatchx patch3f_4,mem_patch3f
+	rtn
+
+timer_check_timeout:
+	arg 0x800,timeup
+	lshift16 timeup,timeup
+	iadd timeup,pdata
+	rtn
+
+
+timer_reinit:
+	arg 0,queue
+timer_check:
+	bpatchx patch3f_5,mem_patch3f
+	fetcht 4,mem_last_clkn
+	rshift clkn_bt,pdata
+	store 4,mem_last_clkn	
+	isub temp,null
+	ncall timer_check_timeout,positive	
+	isub temp,timeup
+	copy timeup,temp
+	arg mem_timers,contr
+	copy contr,contw
+	arg 16,loopcnt
+timer_loop:
+	ifetch 2,contr
+	isub temp,pdata
+	branch timer_counting,positive
+	force 0,pdata
+timer_counting:
+	istore 2,contw
+	loop timer_loop	
+	arg mem_timers,contr
+	lshift queue,pdata
+	iadd contr,contr
+	ifetch 2,contr
+	rtn
+
+
+
+	/* pdata 28+16 bit add temp 26+16 bit, result in temp */
+clk_add:
+	iadd temp,temp
+	copy temp, loopcnt
+	setarg 3750
+	isub loopcnt,pdata
+	rtn positive
+	sub pdata,0,pdata
+	rshift16 temp,temp
+	increase 1,temp
+	lshift16 temp,temp
+	ior temp,temp
+	rtn
+
+clk_diff_rt:
+	call clk_diff
+	branch clk2rt
+
+/* pdata -temp -> pdata, all are 28+16 bits, set user if negative */
+clk_diff:
+	disable user
+	isub temp,pdata
+	branch clk_diff_pos,positive
+	enable user
+	sub pdata,0,pdata
+clk_diff_pos:
+	rtnbit0 15
+	arg -61786,temp
+	iadd temp,pdata
+	set0 64,pdata
+	rtn
+
+clk2rt:
+	iforce contr
+	rshift16 pdata,pdata
+	arg 3750,temp
+	imul32 temp,pdata
+	iadd contr,pdata
+	rtn
+
+	/* pdata = clks in, temp = lpo out */
+clk2lpo:
+	lshift8 pdata,pdata
+	lshift4 pdata,pdata
+	fetcht 3,mem_clks_per_lpo
+	idiv temp
+	call wait_div_end
+	quotient temp
+	rtn
+
+	/* rt clk -> bt+rt clk */
+clk2bt:
+	arg 3750,temp
+	idiv temp
+	call wait_div_end
+	quotient pdata
+	lshift16 pdata,pdata
+	remainder temp
+	ior temp,temp
+	rtn
+
+
+
+//input:contru 
+//output:temp
+//used register: temp regc
+string2dec_from_uart:
+	arg 0,temp
+string2dec_from_uart_done:
+         copy temp,regc
+	ifetch 1,contru
+	call uchar2dialog	
+	copy regc,temp
+	call swap
+	arg 10,regb
+	imul32 regb,pdata
+	iadd temp,pdata
+	copy pdata,temp
+	loop string2dec_from_uart_done
+	rtn
+	
+
+
+uchar2dialog:
+	arg 0x3a,temp
+	isub temp,null
+	nbranch uchar2dialog_number,positive
+	arg 0x61,temp
+	isub temp,null
+	branch uchar2dialog_a2f,positive
+	arg 0x37,temp
+	isub temp,pdata
+	rtn
+uchar2dialog_number:
+	arg 0x30,temp
+	isub temp,pdata
+	rtn
+uchar2dialog_a2f:
+	arg 0x57,temp
+	isub temp,pdata
+	rtn
+
+pn9:
+	copy temp,alarm
+	setarg 0x1ff
+	force 0,regb
+pn9_loop:	
+	rshift3 pdata,rega
+	rshift rega,rega
+	ixor rega,rega
+	isolate1 0,rega
+	setflag true,9,pdata
+	rshift temp,temp
+	isolate1 0,pdata
+	setflag true,7,temp
+	rshift pdata,pdata
+	increase 1,regb
+	compare 0,regb,0x7
+	nbranch pn9_loop,true
+	istoret 1,contw
+	loop pn9_loop
+	copy alarm,temp
+	rtn
+
+
+wait_div_end:	
+	rtn modone
+	branch wait_div_end
+
+
+
+//input:
+//	count:loopcnt str1:rega str2:regb
+//output:
+//	same:set falg true ,diff set falg false
+// using:
+//	reg:temp null flag:zero
+compare_loop:
+string_compare:
+	ifetch 1,rega
+	ifetcht 1,regb
+	isub temp,null
+	nrtn zero
+	increase 1,rega
+	increase 1,regb
+	loop string_compare
+	force 0,null
+	rtn
+
+	/* pdata = temp if pdata > temp */
+ceiling:
+	isub temp,null
+	nrtn positive
+	deposit temp
+	rtn
+	
+swap:
+	iadd temp,pdata
+	isub temp,temp
+	isub temp,pdata
+	rtn
+
+clean_mem:
+	arg 0x200,loopcnt
+	arg 0x4000,contw
+	branch memset0				// clear xram at boot
+
+	//cb function ptr in pdata
+callback_func:
+	rtn blank
+	copy pdata,pc	//rtn through cb functon.
+	//branch assert
+
+wait_uarttx:
+	hfetch 2,core_uart_txitems
+	nbranch wait_uarttx,blank
+	rtn
+
+ice_break:
+	jam 0x1,core_ice_ctrl
+	rtn
+
+ice_setbp:
+	hstore 2,core_ice_break0
+	hfetch 1,core_ice_ctrl
+	set1 4,pdata
+	hstore 1,core_ice_ctrl
+	rtn
+ice_setbp2:
+	hstore 2,core_ice_break1
+	hfetch 1,core_ice_ctrl
+	set1 6,pdata
+	hstore 1,core_ice_ctrl
+	rtn
+	
+ice_set_write_bp:
+	hstore 2,core_ice_break0
+	jam 0x30,core_ice_ctrl
+	rtn
+	
+
+
+test_enable_white:
+	hfetch 1,core_config
+	set0 whiteoff_bit,pdata
+	hstore 1,core_config			/* whitening on */
+	rtn
+
+check_uart_tx_buff:
+	hfetch 2,core_uart_txitems
+	arg UART_AIR_CONTROL_THRESHOLD,temp
+pdata_sub_temp:
+	isub temp,null
+	rtn
+
+	//fuction fifo_in
+	//rega pointer to fifo memory , *(rega+len) is the end of fifo
+	//mem_fifo_temp data into fifo
+	//assert if fifo was full
+fifo_in:
+	bpatchx patch3f_6,mem_patch3f
+	ifetcht UTIL_FIFO_LEN,rega
+	and temp,0xff,pdata
+	nbranch fifo_in_push,blank
+	rshift8 temp,pdata
+	istore UTIL_FIFO_LEN,rega
+fifo_in_push:
+	increase UTIL_FIFO_LEN+UTIL_FIFO_OFFSET,rega
+	ifetch 1,rega
+	nbranch assert,blank //fifo full
+	fetch 1,mem_fifo_temp
+	istore 1,rega
+	rtn
+	
+	//fuction fifo_out
+	//rega pointer to fifo memory
+	//pdata  data from fifo, blank mains fifo empty
+fifo_out:
+	bpatchx patch3f_7,mem_patch3f
+	arg UTIL_FIFO_LEN,loopcnt
+	ifetch UTIL_FIFO_LEN,rega
+	rtn blank
+fifo_out_loop:
+	ifetch 1,rega
+	nbranch fifo_out_end,blank
+	increase 1,rega
+	loop fifo_out_loop
+	branch assert
+fifo_out_end:
+	arg 0,temp
+	istoret 1,rega
+	rtn
+
+	//fuction fifo_is_empty
+	//rega pointer to fifo memory
+	//blank--- fifo is empty
+fifo_is_empty:
+	ifetch UTIL_FIFO_LEN,rega
+	rtn
+
+	//fuction fifo_is_full
+	//rega pointer to fifo memory
+	//blank--- fifo is NOT full
+fifo_is_full:
+	ifetch 1,rega
+	rtn
+	//rega pointer to fifo memory
+	//blank--- fifo is NOT near full
+fifo_is_near_full:
+	ifetch 2,rega
+	rtn
+
+	//rega pointer to fifo memory
+	//count output via pdata
+fifo_content_count:
+	arg 0,temp
+fifo_content_count_loop:
+	fetch 1,contr
+	loop fifo_content_count_loop,blank
+	increase 1,temp
+	loop fifo_content_count_loop
+	copy temp,pdata
+	rtn
+	
+not_greater_than:
+	isub temp,null
+	nrtn positive
+	copy temp,pdata
+	rtn
+
+
+disable_positive:
+	force -1,null
+	rtn
+enable_positive:
+disable_zero:
+	force 1,null
+	rtn
+enable_zero:
+	force 0,null
+	rtn
+
+enable_user:
+	enable user
+	rtn
+	
+disable_user:
+	disable user
+	rtn
+	
+enable_user2:
+	enable user2
+	rtn
+	
+disable_user2:
+	disable user2
+	rtn
+
+disable_blank:
+	setarg 1
+	rtn
+
+enable_blank:
+	setarg 0
+	rtn
+
+
+reverse_byte:
+	copy loopcnt,pdata
+	rtn blank
+	copy contr,pdata
+	iadd loopcnt,pdata
+	increase -1,pdata
+	copy pdata,contr	
+reverse_loop:
+	ifetch 1,contr
+	increase -2,contr
+	istore 1,contw
+	loop reverse_loop
+	rtn
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/program/z.prog
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/z.prog	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/program/z.prog	(working copy)
@@ -0,0 +1,963 @@
+
+org 0x10001
+z_entrance0:
+	beq ZCODE_00,z_page_wait_fhs_reply_ok
+	beq ZCODE_01,z_g24_transmit_by_interrupt
+	rtn
+
+z_g24_transmit_by_interrupt:
+	call p_g24_timer_check
+	nrtn user
+	call z_g24_interval_calibrate
+	fetch 2,mem_24g_transmit_by_interrupt_exit_count
+	increase 1,pdata
+	store 2,mem_24g_transmit_by_interrupt_exit_count
+	fetcht 2,mem_24g_transmit_by_interrupt_exit_count_init
+	isub temp,null
+	call z_g24_transmit_by_interrupt_exit,zero
+	branch p_g24_transmit_process
+
+z_g24_transmit_by_interrupt_exit:
+	jam G24_TX_TIMER_INT_DISABLE,mem_24g_transmit_by_interrupt
+	setarg 0
+	store 2,mem_24g_transmit_by_interrupt_exit_count
+	setarg 25
+	store 2,mem_24g_transmit_by_interrupt_exit_count_init
+z_g24_interval_min:
+	jam 0,mem_24g_pac_index
+	fetch 1,mem_24g_interval_min
+z_g24_current_interval_store:
+	store 1,mem_24g_interval
+	rtn
+z_g24_interval_max:
+	fetch 1,mem_24g_interval_max
+	branch z_g24_current_interval_store
+z_g24_interval_calibrate:
+	fetch 1,mem_24g_pac_index
+	increase 1,pdata
+	store 1,mem_24g_pac_index
+	beq 4,z_g24_interval_max
+	beq 5,z_g24_interval_min
+	rtn
+
+z_page_wait_fhs_reply_ok:
+ 	fetch 1, mem_page_rcv_fhs
+	increase 1,pdata
+	store 1, mem_page_rcv_fhs
+	call prepare_newconn
+z_master_newconn_loop:
+ 	set1 mark_first_packet,mark
+	call master_newconn_once
+	branch z_newconn_poll_responded,sync
+	set0 mark_first_packet,mark
+	call new_conn_timeout
+	nbranch z_master_newconn_loop,blank
+	branch page_restart
+z_newconn_poll_responded:
+	set0 mark_first_packet,mark
+	branch newconn_poll_responded
+
+
+org 0x20001
+
+z_entrance1:
+	beq ZCODE_10,z_mouse_bb_disconnected
+	beq ZCODE_11,z_hid_rx_process
+	rtn
+
+z_mouse_bb_disconnected:
+	jam 0,mem_mouse_enter_sniff_count
+	jam 0x0e,mem_sniff_param_interval	//115Hz
+	call mouse_bb_discon_clear_stack
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BLE,z_mouse4_0_event_bb_disconn
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	bbit1 APP_DISC_AFTER_PAIRING,z_mouse_event_light_state_pairing
+	bbit1 APP_DISC_AFTER_RECONN,z_mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,z_mouse_event_light_state_hibernate
+	branch mouse_start_discovery
+
+z_mouse4_0_event_bb_disconn:
+	call mouse_le_clean_connect_flag
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_PB_BUTTON,p_mouse_select_device_button_up
+	branch mouse4_0_event_bb_disconn+2
+	
+z_mouse_event_light_state_pairing:
+	bbit1 APP_DISC_AFTER_HANDSHAKE,z_mouse_event_light_state_hibernate
+	bbit1 APP_DISC_AFTER_SNIFF,z_mouse_event_light_state_hibernate
+	branch mouse_start_discovery
+z_mouse_event_light_state_hibernate:
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BTN_DOWN,mouse_start_discovery
+	call app_disconn_reason_clear
+//	call p_mouse_check_key_gpio
+//	beq MOUSE_LM_BUTTON,p_mouse_null_enter_hibernate_enable
+
+//	fetcht 1,mem_config_select_device_button_gpio
+//	call p_gpio_set_input_pd
+//	fetcht 1,mem_config_select_device_button_gpio
+//	call gpio_get_bit
+//	branch  p_mouse_null_enter_hibernate_enable,true
+	
+	branch app_bb_hibernate
+
+
+z_hid_rx_process:
+	fetch 2,mem_l2cap_payload_ptr
+	copy pdata,contr
+	ifetch 1,contr
+	store 1,mem_l2cap_rcv
+	and pdata,0x0f,temp
+	rshift4 pdata,pdata //hidtype
+	beq hid_type_set_protocol,z_hid_rx_set_protocol
+	beq HID_TYPE_CONTROL,z_hid_rx_process_hid_control
+	branch hid_rx_process+6
+z_hid_rx_set_protocol:
+	call hid_rx_process_handshake
+	jam 0,mem_mouse_bt_boot_mode
+	fetch 1,mem_l2cap_rcv
+	isolate1 0,pdata
+	rtn true
+	jam 1,mem_mouse_bt_boot_mode	//boot mode
+	rtn
+
+z_hid_rx_process_hid_control:
+	copy temp,pdata
+	beq HID_CONTROL_P_VIRTUALCABLEUNPLUG,p_mouse_irtual_cable_unplug
+	branch hid_rx_process_hid_control+2
+
+org 0x30001
+
+z_entrance2:
+	beq ZCODE_20,z_send_lmp_escape
+	beq ZCODE_21,z_send_lmp_accepted
+	beq ZCODE_22,z_mouse_check_reconn_target
+	rtn
+
+
+z_mouse_check_reconn_target:	
+	call p_mouse_tx_power_init
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_mouse_start_24g_mode
+	beq 0xff,p_mouse_start_24g_mode
+	call p_mouse_mode_bt_device1_multi_led_on
+	fetch 1,mem_xrecord_mode
+ifdef CLASSIC_BT
+	beq REC_3_MODE,z_mouse3_0_check_reconn_target
+endif
+ifdef BLE
+	beq REC_4_MODE,z_mouse4_0_check_reconn_target
+endif	
+	branch p_mouse_null_enter_hibernate_enable
+
+z_mouse3_0_check_reconn_target:
+	fetch 6,mem_hci_plap
+	branch app_bt_start_discovery_short,blank
+	branch mouse3_0_check_reconn_target+3
+
+	
+z_mouse4_0_check_reconn_target:
+	jam 1,mem_le_send_security_request_flag
+	jam 1,mem_mouse_le_reconnect_flag
+ifdef BLE_FAST_CONN_ENABLE	
+	arg 10,temp
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,z_mouse4_0_check_reconn_target_next
+endif	
+	fetcht 2,mem_mouse_direct_timeout
+z_mouse4_0_check_reconn_target_next:
+	storet 2,mem_mouse_direct_timer
+	call app_lpm_mult_disable
+	call p_le_check_adv_flag
+	setarg ADV_FLAG_BREDR_NOT_SUPPORTED
+	istore 1,contr
+
+	arg mem_le_scan_data,contr
+	call p_le_adv_data_update
+
+	branch check_51cmd_adv
+z_send_lmp_escape:
+	fetch 1,mem_lmp_to_send
+	beq LMP_EXT_FEATURES_RES,z_send_lmpext_features_res
+	beq LMP_EXT_FEATURES_REQ,z_send_lmpext_features_req	
+	branch send_lmp_escape
+z_send_lmpext_features_res:
+	call z_check_ssp_enable
+	fetch 1,mem_lmp_to_send
+	branch send_lmpext_features_res
+z_send_lmpext_features_req:
+	call z_check_ssp_enable
+	fetch 1,mem_lmp_to_send
+	branch send_lmpext_features_req
+z_check_ssp_enable:
+	fetch 1,mem_ssp_enable 
+	branch ssp_disable,blank
+	branch ssp_enable
+
+z_send_lmp_accepted:
+	force 2,pdata
+	call msg_send_lmp
+	fetch 1,mem_lmi_opcode
+	istore 1,contw
+	store 1,mem_lmi_opcode_temp
+	call send_lmp_follow
+ifdef DEBUGLOG
+ifdef DEBUGLOG_MISC
+	setarg DEBUGLOG_DTYPE_MISC
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_lmi_opcode_temp
+	store 1,mem_debuglog_dataval
+	call debuglog_push	
+endif
+endif
+	fetch 1,mem_lmi_opcode_temp
+	beq LMP_MAX_SLOT_REQ,z_send_lmp_accepted_max_slot_req	//sumsung a5100 patch
+	branch send_lmp_accepted+7
+
+z_send_lmp_accepted_max_slot_req:
+	fetch 1,mem_bt_rcvd_switch_req_accept
+	rtn blank
+	jam 0,mem_bt_rcvd_switch_req_accept
+	fetch 1,mem_bt_send_lmp_setup_complete
+	rtnne 2
+	jam 1,mem_bt_send_max_slot_req_accept_after_switch
+	copy clkn_bt,pdata
+	store 4,mem_aurand_send_delay_time
+	rtn
+
+
+org 0x40001
+
+z_entrance3:
+	beq ZCODE_30,z_process_conn_sm
+	rtn
+
+z_process_conn_sm:
+	call lmo_fifo_check
+	nrtn blank
+z_process_conn_sm_continue:
+	fetch 1,mem_conn_sm
+	rtn blank
+ifdef DEBUGLOG
+ifdef DEBUGLOG_CONN_SM
+	call pdata_push
+	setarg DEBUGLOG_DTYPE_CONN_SM
+	store 2,mem_debuglog_datatype
+	fetch 1,mem_conn_sm
+	store 2,mem_debuglog_dataval
+	call pdata_pull
+	call debuglog_push	
+endif
+endif
+	beq CONN_SM_SEND_CONN_REQ, z_host_create_conn_send_conn_req
+	beq CONN_SM_WAIT_SWITCH_AFTER_HOST_CONNECTION,z_host_creat_conn_wait_switch
+	branch process_conn_sm_continue+2
+
+
+z_host_creat_conn_wait_switch:
+	fetch 1,mem_switch_flag
+	rtneq SWITCH_FLAG_INIT
+	beq SWITCH_FLAG_ACCEPT,z_host_create_conn_switch_accept
+	branch host_creat_conn_wait_switch+3
+z_host_create_conn_switch_accept:
+	rtn master
+z_host_create_conn_auth_pair:
+	/* checking whether or not to do m/s switch */
+	fetch 1,mem_connection_options
+	bbit1 CONNECTION_AUTH,z_host_create_conn_auth_pair_true
+	branch host_create_conn_auth_pair+1
+z_host_create_conn_auth_pair_true:
+	fetch 1,mem_bt_send_lmp_setup_complete
+	beq 1,host_create_conn_auth_pair_true
+	//sumsung a5100 patch
+	fetch 1,mem_link_key_exists
+	branch host_create_conn_auth_pair_nokey,blank
+	fetch 1,mem_lmp_conn_state
+	rtnbit0 SENT_SETUP_COMPLETE
+	rtnbit0 RECEIVED_SETUP_COMPLETE
+	fetch 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn blank
+	jam 0,mem_bt_send_max_slot_req_accept_after_switch	
+	fetch 4,mem_aurand_send_delay_time
+	arg 20,temp
+	iadd temp,temp
+	copy clkn_bt,pdata
+	isub temp,null
+	nbranch z_bt_send_max_slot_req_accept_after_switch_wait,positive
+	branch host_create_conn_auth
+
+z_bt_send_max_slot_req_accept_after_switch_wait:
+	jam 1,mem_bt_send_max_slot_req_accept_after_switch
+	rtn
+
+z_host_create_conn_send_conn_req:
+	jam 20,mem_mouse_send_switch_req_timer
+	branch host_create_conn_send_conn_req
+
+
+org 0x50001
+
+z_entrance4:
+	beq ZCODE_40,z_le_update_param
+	beq ZCODE_41,z_le_update_channel_map
+	beq ZCODE_42,z_le_mouse_bb_event_connect_complete
+	beq ZCODE_43,z_quit_connection_cont
+	rtn
+
+z_le_update_param:
+	call z_mouse_le_conn_param_check
+	branch le_update_param+8
+z_mouse_le_lpm_mult_reinit:
+	fetch 1,mem_lpm_mult_init
+	store 1,mem_lpm_mult
+z_mouse_le_conn_param_lpm_enable:
+	jam LE_LPM_ENABLE,mem_mouse_le_conn_param_reject
+	rtn
+z_mouse_le_conn_param_lpm_disable:
+	jam LE_LPM_DISABLE,mem_mouse_le_conn_param_reject
+	rtn
+z_mouse_le_conn_param_check:
+	fetch 1,mem_le_new_conninterval
+	sub pdata,LE_INTERVAL_15MS,null
+	nbranch z_mouse_le_conn_param_lpm_disable,positive
+	fetch 1,mem_le_new_connslavelatency
+	fetcht 1,mem_lpm_mult_init
+	isub temp,null
+	branch z_mouse_le_lpm_mult_reinit,positive
+	fetch 1,mem_le_new_connslavelatency
+	store 1,mem_lpm_mult
+	branch z_mouse_le_conn_param_lpm_enable
+
+z_le_update_channel_map:
+	fetch 1,mem_le_state
+	rtnbit0 lestate_update_map
+	call z_le_channel_map_overflow_check
+	nrtn user
+	branch le_update_channel_map+3
+z_le_channel_map_overflow_check:
+	enable user
+	fetch 1,mem_le_event_count+1
+	rshift4 pdata,pdata
+	rtnne 0x0f
+	fetch 1,mem_le_instant+1
+	rshift4 pdata,pdata
+	rtnne 0x00
+	branch disable_user
+
+z_le_mouse_bb_event_connect_complete:
+	fetch 1,mem_mouse_le_reconnect_flag
+	nrtn blank
+	fetch 1,mem_le_att_handle
+	sub pdata,26,pdata
+	nrtn zero
+	branch mouse_le_write_enable
+
+z_quit_connection_cont:
+	call app_disconn_reason_collect_bt
+	call sniff_exit
+	jam BT_EVT_BB_DISCONNECTED,mem_fifo_temp
+	call ui_ipc_send_event
+	call init_lmp_work
+	call l2cap_init_work
+	branch quit_connection_cont+8
+
+
+org 0x60001
+
+z_entrance5:
+	beq ZCODE_50,z_mouse_start_discovery
+	rtn
+
+z_mouse_start_discovery:
+	jam 0,mem_le_send_security_request_flag
+	call p_mouse_tx_power_init
+	jam MODE_BT_DEVICE1,mem_device_flag
+	jam 0,mem_mouse_clear_sensor_data_flag
+	fetch 2,mem_ui_state_map
+	bbit1 UI_STATE_BLE_ADV,z_mouse_start_discovery_norandom
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE,z_mouse_start_discovery_norandom
+ifdef BLE
+	call p_mouse_load_random_addr_increase_count
+	fetcht 2,mem_random_addr_increase_count
+	increase 1,temp
+	storet 2,mem_random_addr_increase_count
+	storet 2,mem_le_lap+1
+	call p_mouse_store_random_addr_increase_count
+	random pdata
+	store 1,mem_le_lap
+endif
+z_mouse_start_discovery_norandom:
+ifdef BLE_FAST_CONN_ENABLE
+	fetch 3,mem_le_lap_high_3B
+	store 3,mem_le_lap+3
+	call p_mouse_le_fast_conn_disable
+endif
+	call app_lpm_mult_disable
+	fetch 2,mem_discovery_timeout
+	store 2,mem_mouse_discovery_timer
+	jam 6,mem_connection_options
+	setarg 0
+	store 2,mem_mouse_no_data_timer
+	store 2,mem_mouse_direct_timer
+	arg MOUSE_STORE_EEPROM_FLAG,queue
+	call mouse_enable_function_flag
+	call mouse_bt_discovery_button_down_disable
+	fetch 1,mem_device_option
+	isolate1 MODE_4_MOUSE,pdata
+	call z_check_51cmd_adv,true
+	fetch 1,mem_device_option
+	isolate1 MODE_3_MOUSE,pdata
+	call check_51cmd_start_discovery,true
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	bbit1 MOUSE_ENABLE_DISCOVERY_SENSOR_LED,mouse_sensor_start_blink
+	branch p_mouse_discovery_multi_led_blink
+
+z_check_51cmd_adv:
+	jam 0,mem_mouse_le_reconnect_flag
+	call p_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 p_le_adv_data_update
+	branch check_51cmd_adv
+
+org 0x70001
+
+z_entrance6:
+	beq ZCODE_60,z_mouse_start_24g_mode
+	beq ZCODE_61,z_mouse_24g_attempt_fail
+	rtn
+	
+z_mouse_start_24g_mode:
+
+	set0 mark_24g,mark
+	fetch 1,mem_24g_attempt_count
+	and pdata,0x01,pdata
+	ncall z_g24_fast_conn_all_powerful,blank
+	call z_g24_normal_connect,blank
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	setarg 0
+	store 2,mem_24g_check_dongle_times	
+	call p_g24_tx_attemp_data_prep
+z_g24_tx_attemp_dongle_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 1,mem_24g_check_dongle_times
+	beq 10,p_g24_stop_g24_mode		  
+	call p_g24_transmit_receive_ack
+	nbranch z_g24_attemp_txdata_retry,sync
+	nbranch z_g24_attemp_txdata_retry,user3
+z_g24_tx_attemp_dongle_succ:
+	set1 mark_24g,mark
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+	store 1,mem_mouse_24g_pair_timer
+	store 2,mem_24g_attempt_count
+	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event
+z_g24_tx_attemp_dongle_loop_exit:	
+	call p_g24_txbuf_clear
+	branch p_g24_transmit_by_interrupt_enable
+
+/*
+z_g24_tx_attemp_data_prep:
+	jam 0xff,mem_24g_common_temp
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	call p_g24_put_data_in_buff
+	branch p_g24_transmit_prep
+*/ 
+
+z_g24_normal_connect:
+	call p_mouse_tx_power_init
+	fetch 4,mem_mouse_24g_addr
+	branch z6_g24_ch_syncword_crc8_init
+
+z_g24_fast_conn_all_powerful:
+	jam TX_POWER_PAIR,mem_tx_power
+	fetch 4,mem_mouse_24g_addr_init
+z6_g24_ch_syncword_crc8_init:	
+	call p_g24_update_addr_and_synccrc8
+	branch p_g24_ch
+
+	
+z_g24_attemp_txdata_retry:
+	fetch 2,mem_24g_check_dongle_times
+	increase 1,pdata
+	store 2,mem_24g_check_dongle_times
+	call p_g24_ch
+	branch z_g24_tx_attemp_dongle_loop
+
+
+z_mouse_24g_attempt_fail:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	fetch 2,mem_24g_attempt_count
+	nbranch z_mouse_24g_attempt_fail_again,blank
+	jam G24_TX_TIMER_INT_DISABLE,mem_24g_transmit_by_interrupt
+	call p_mouse_tx_power_init
+	call p_g24_check_51cmd_stop_24g
+	jam 0,mem_link_key_exists
+	call p_mouse_setgpio_hibernate
+	branch p_app_enter_hibernate
+
+z_mouse_power_on_check:
+	fetch 1,mem_24g_get_ack_fail
+	nbranch p_g24_stop_g24_mode,blank
+	jam 1,mem_24g_get_ack_fail
+	fetch 1,mem_power_on_flag
+	bbit1 2,z_mouse_wakeup_from_hibernate
+	branch p_g24_auto_pair_start
+
+z_mouse_wakeup_from_hibernate:
+	setarg 800				// 800 * 10 * 1.25ms = 10,000ms
+	store 2,mem_24g_attempt_count
+	branch z_mouse_start_24g_mode
+
+
+z_mouse_24g_attempt_fail_again:
+	increase -1,pdata
+	store 2,mem_24g_attempt_count
+	branch z_mouse_power_on_check,blank
+	branch z_mouse_start_24g_mode
+
+
+org 0x80001
+
+z_entrance7:
+	beq ZCODE_70,z_g24_auto_pair_start
+	beq ZCODE_71,z_mouse_24g_pairing_button
+	rtn
+
+z_g24_auto_pair_start:
+	set0 mark_24g,mark
+	call z_g24_pair_init
+	call p_g24_tx_attemp_data_prep
+z_g24_auto_pair_start_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 1,mem_24g_check_dongle_times+1
+	beq 0xa0,p_g24_stop_g24_mode			// 3min
+	call p_g24_transmit_receive_ack
+	nbranch z_g24_auto_pair_retry,sync
+	nbranch z_g24_auto_pair_retry,user3
+	call p_g24_ackpayload_parse
+	call p_mouse_tx_power_init
+	fetch 4,mem_24g_addr
+	fetcht 4,mem_24g_paring_addr
+	isub temp,null
+	branch z_g24_start_pairing_sm1,zero
+	set1 mark_24g,mark
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+	jam BT_EVT_24G_ATTEMPT_SUCCESS,mem_fifo_temp
+	call ui_ipc_send_event
+	call p_g24_txbuf_clear
+	branch p_g24_transmit_by_interrupt_enable
+
+/*
+z7_g24_tx_attemp_data_prep:
+	jam 0xff,mem_24g_common_temp
+	fetch 1,mem_24g_data_type
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+	arg 6,temp
+	arg mem_24g_common_temp,rega
+	call p_g24_put_data_in_buff
+	branch p_g24_transmit_prep
+*/
+
+z_g24_auto_pair_retry:
+	fetch 1,mem_24g_get_ack_fail
+	increase 1,pdata
+	store 1,mem_24g_get_ack_fail
+	sub pdata,3,null
+	branch z_g24_auto_pair_start_loop,positive
+	jam 0,mem_24g_get_ack_fail
+	fetch 2,mem_24g_check_dongle_times
+	increase 1,pdata
+	store 2,mem_24g_check_dongle_times
+	branch z_g24_auto_pair_start_loop
+/*	
+	fetch 1,mem_24g_auto_paring_switch
+	increase 1,pdata
+	and_into 1,pdata
+	store 1,mem_24g_auto_paring_switch
+	beq 0,z_g24_auto_pair_device_attemp
+	beq 1,z_g24_auto_pair_pair_attemp
+	rtn
+*/
+	
+z_g24_pair_init:
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+	store 1,mem_24g_get_ack_fail
+	store 2,mem_24g_attempt_count
+	jam TYPE_KB,mem_24g_data_type
+	jam TX_POWER_f5DB,mem_tx_power
+	jam 0,mem_24g_pid
+	jam G24_PAIR_CH,mem_24g_ch
+	fetch 4,mem_24g_paring_addr
+	branch p_g24_update_addr_and_synccrc8
+
+z_g24_auto_pair_pair_attemp:
+	call z_g24_pair_init
+	branch z_g24_auto_pair_start_loop
+
+z_g24_start_pairing_sm1:
+	set1 mark_24g,mark
+	call z_g24_pair_init
+z_g24_set_pairing_sm_1:
+	jam STATE_24G_PAIRING_0,mem_24g_pairing_sm
+	rtn
+
+z_mouse_24g_pairing_button:
+//	rtnmark1 mark_24g
+	call p_g24_check_51cmd_stop_24g
+	call p_mouse_sensor_powerdown_check
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_enable_function_flag
+	setarg 0
+	store 2,mem_mouse_direct_timer
+	store 1,mem_mouse_send_blank_timer
+	store 2,mem_24g_attempt_count
+	store 2,mem_24g_check_dongle_times
+	call mouse_stop_discovery
+	branch z_g24_start_pairing_sm1
+
+org 0x90001
+
+z_entrance8:
+//	beq ZCODE_80,z_mouse_setting_config
+//	beq ZCODE_81,z_le_addr_random_config
+//	beq ZCODE_82,z_le_parse_smp_pairing_failed
+//	rtn
+//z_le_parse_smp_pairing_failed:
+//	call le_parse_smp_pairing_failed
+//	fetch 1,mem_le_state	//disable update conn param
+//	set0 lestate_update_param,pdata
+//	store 1,mem_le_state
+//	branch le_parse_terminate_ind
+
+z_mouse_setting_config:
+ifdef G24
+	fetch 4,mem_lap
+	store 4,mem_24g_device_addr
+endif
+	call mouse_gpio_init
+	call p_mouse_multi_led_gpio_set_float
+	fetcht 1,mem_flash_ncs_gpio
+	call gpio_config_output
+	
+	call mouse_param_init
+ifdef CLASSIC_BT
+	call z_mouse_bt_sdp_update
+endif	
+	setarg mem_mouse_le_uuid_sup
+	store 2,mem_ui_le_uuid_table
+
+	setarg 0
+	store 2,mem_lpm_interval
+
+	//call p_mouse_set_gpio_control_sensor
+	jam MOUSE_6CLK_ANGLE,mem_config_sensor_angle
+	
+	setarg 0x1802		//16M XTAL
+	store 2,mem_fcomp_mul
+ifdef ADC_ENABLE
+	call adc_init_data	
+	call mouse_adc_init
+endif
+ifdef BLE	
+	call le_set_config_fixed_ltk
+	call le_set_justwork
+	call le_set_fixed_ltk
+	call le_set_config_read_authentication
+	call p_le_addr_random_config
+endif
+	call p_flash_release_deep_power_down
+	call p_mouse_set_24g_addr_flash
+	fetch 3,mem_flash_base
+	iadd regb,pdata
+	call spid_read_flash
+
+	call p_mouse_load_flash_info_check	
+	rtn
+
+
+ifdef CLASSIC_BT
+z_mouse_bt_sdp_update:
+	call enable_authrom
+	arg 0x8c00,contr
+	arg mem_mouse_uuid_list,contw
+	arg 267,loopcnt
+	call memcpy
+	
+	arg mem_keyboard_hid_descriptor,contr
+	arg 45,loopcnt
+	call memcpy
+	
+	arg 0x8d3f,contr
+	arg 50,loopcnt
+	call memcpy
+
+/*
+	//Attribute: HID SSR Host Max Latency
+	setarg 0x0f0209
+	istore 3,contw
+	setarg 0x120009
+	istore 3,contw
+	//Attribute: HID SSR Host Min Timeout
+	setarg 0x100209
+	istore 3,contw
+	setarg 0x000009
+	istore 3,contw
+*/
+	arg mem_sdp_updata_list,contr
+	arg 12,loopcnt
+	call memcpy
+	
+	arg 0x8d71,contr
+	arg 265,loopcnt
+	call memcpy
+	jam 0,mem_mouse_uuid_list+23	//Service Record Handle: 0x 00 01 00 00
+	jam 0x66,mem_mouse_uuid_list+15	//total length    +48-52
+	jam 0x74,mem_mouse_uuid_list+195
+	jam 0x78,mem_mouse_uuid_list+191
+	jam 0x7a,mem_mouse_uuid_list+189
+	setarg 0x401f
+	store 2,mem_mouse_uuid_list+350	//timeout
+	setarg 0x6d04
+	store 2,mem_mouse_uuid_list+455	//VID
+	setarg 0x16b0
+	store 2,mem_mouse_uuid_list+461	//PID
+	branch p_mouse_bt_sdp_set
+
+	
+endif	
+	
+	
+
+
+org 0xa0001
+
+z_entrance9:
+	beq ZCODE_90,z_g24_pairing_sm
+	beq ZCODE_91,z_g24_paring_mode
+	beq ZCODE_92,z_mouse_24g_pairing_complete
+	rtn
+
+z_g24_pairing_sm:
+	fetch 1,mem_24g_ensure
+	beq ENSURE_ON_24G,enable_user
+	fetch 1,mem_24g_pairing_sm
+	beq STATE_24G_PAIRING_0,z_g24_pairing_sm_0
+	beq STATE_24G_PAIRING_1,z_g24_pairing_sm_1
+	beq STATE_24G_PAIRING_2,z_g24_pairing_sm_2
+	beq STATE_24G_PAIRING_3,z_g24_pairing_sm_3
+	branch assert
+
+z_g24_pairing_sm_0:
+	jam STATE_24G_PAIRING_1,mem_24g_pairing_sm
+	jam 250,mem_mouse_24g_pair_timer
+	branch z_g24_pairing_sm
+z_g24_pairing_sm_1:
+	jam STATE_24G_PAIRING_1_WAITING_ACK,mem_24g_pairing_sm
+	jam 0xaa,mem_24g_common_temp
+	branch z_g24_pairing_sm_common
+z_g24_pairing_sm_2:
+	jam STATE_24G_PAIRING_2_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x55,mem_24g_common_temp
+	branch z_g24_pairing_sm_common
+z_g24_pairing_sm_3:
+	jam STATE_24G_PAIRING_3_WAITING_ACK,mem_24g_pairing_sm
+	jam 0x22,mem_24g_common_temp
+z_g24_pairing_sm_common:
+	fetch 1,mem_24g_data_type
+	and_into bits_data,pdata
+	store 1,mem_24g_common_temp+1
+	fetch 4,mem_24g_device_addr
+	store 4,mem_24g_common_temp+2
+z_g24_put_pairing_data_in_buff:
+	jam 0,mem_24g_common_temp+6
+	arg mem_24g_common_temp,rega
+	arg 7,temp
+	call p_g24_put_data_in_buff
+	call p_g24_txdata_enable_tx
+	branch enable_user
+
+z_g24_paring_mode:
+	fetch 1,mem_24g_pairing_sm
+	rtneq STATE_24G_PAIRING_SUCCESS
+	beq STATE_24G_PAIRING_1_WAITING_ACK,z_g24_pairing_sm_1_waiting_ack
+	beq STATE_24G_PAIRING_2_WAITING_ACK,z_g24_pairing_sm_2_waiting_ack
+	beq STATE_24G_PAIRING_3_WAITING_ACK,z_g24_pairing_sm_3_waiting_ack
+	rtn
+
+z_g24_pairing_sm_1_waiting_ack:
+	jam STATE_24G_PAIRING_2,mem_24g_pairing_sm
+	branch p_g24_transmit_abandon
+z_g24_pairing_sm_2_waiting_ack:
+	jam STATE_24G_PAIRING_3,mem_24g_pairing_sm
+	branch p_g24_transmit_abandon
+z_g24_pairing_sm_3_waiting_ack:
+	jam STATE_24G_PAIRING_SUCCESS,mem_24g_pairing_sm
+	jam BT_EVT_24G_PAIRING_COMPLETE,mem_fifo_temp
+	call ui_ipc_send_event	
+	fetch 4,mem_24g_rxpayload+2
+	call p_g24_update_addr_and_synccrc8
+	branch p_g24_transmit_abandon
+
+
+z_mouse_24g_pairing_complete:
+	call p_g24_transmit_by_interrupt_enable
+	jam 1,mem_mouse_24g_enter_lpm_enable
+	arg MOSUE_24G_PAIRING_FLAG,queue
+	call mouse_disable_function_flag
+	setarg 0
+	store 2,mem_24g_attempt_count
+	jam 0,mem_mouse_move_flag
+	call mouse_read_sensor_common
+//	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_tx_power_init
+	
+	fetch 4,mem_24g_addr
+	store 4,mem_mouse_24g_addr
+
+	call mouse_cheak_select_24gdevice
+	branch p_mouse_store_flash_device_info
+
+
+org 0xb0001
+
+z_entranceA:
+	beq ZCODE_A1,z_mouse_le_conn_param_update_rsp_recieved
+	beq ZCODE_A2,z_mouse_le_bb_disconnected
+	beq ZCODE_A3,z_mouse_bb_event_reconn_timeout
+	beq ZCODE_A4,z_mouse_before_hibernate
+	rtn
+
+z_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
+	branch z_mouse_le_conn_param_update_rsp_not_accepted,positive
+	setarg LE_INTERVAL_11_25MS
+	store 2,mem_le_interval_min
+	store 2,mem_le_interval_min+2
+	call p_app_updata_le_param
+	jam LE_LPM_DISABLE,mem_mouse_le_conn_param_reject
+	rtn
+//ipad not accepted updata, need reinit mem_lpm_mult.   mem_lpm_mult = CONNECT_IND latency = 0
+z_mouse_le_conn_param_update_rsp_not_accepted:
+	jam 1,mem_mouse_le_updata_not_accepted_flag
+	branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+
+z_mouse_bb_event_reconn_timeout:
+z_mouse_bb_event_reconn_failed:
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BTN_DOWN
+	rtnbit1 UI_STATE_BT_DISCOVERY
+	rtnbit1 UI_STATE_BLE_ADV
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
+	branch app_bb_hibernate
+
+z_mouse_le_bb_disconnected:
+	jam 0,mem_mouse_le_bb_connected_flag
+	setarg LE_INTERVAL_8_75MS
+	store 2,mem_le_interval_min
+	store 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 p_mouse_data_init
+	call le_clr_config_more_data
+	call p_mouse_store_flash_device_info
+	branch mouse_bb_disconnected
+
+
+z_mouse_before_hibernate:
+	enable user
+	hfetch 4,0x8138
+	setflag user,26,pdata
+	hstore 4,core_lpm_reg
+	call lpm_write_ctrl
+	call disable_authrom
+//	call p_mouse_devce_led_off
+	call p_mouse_store_flash_device_info
+	call mouse_before_hibernate_wheel_gpio_set
+	call p_mouse_setgpio_hibernate
+	fetch 1,mem_device_flag
+	sub pdata,MODE_24G_DEVICE,null
+	call p_mouse_select_device_button_gpio_set_suspend,zero
+	call p_flash_deep_power_down
+	hfetch 1,core_gpio_sel1
+	and pdata,0xf7,pdata
+	hstore 1,core_gpio_sel1  //disable flash spi	
+	hfetch 1,core_gpio_pd3	//gpio24 can not be set pulldown
+	set1 0,pdata
+	hstore 1,core_gpio_pd3
+	rtn
+
+	
+org 0xc0001
+
+z_entranceB:
+//	beq ZCODE_B0,z_mouse_le_bb_event_connected
+	beq ZCODE_B1,z_mouse_sniff_not_accept
+	beq ZCODE_B2,z_mouse_enter_sniff_check
+	beq ZCODE_B3,z_mouse_le_ll_start_encryt
+	beq ZCODE_B4,z_mouse_bb_event_disconnected
+	beq ZCODE_B5,z_mouse_irtual_cable_unplug
+	rtn
+	
+z_mouse_sniff_not_accept:
+	fetch 1,mem_mouse_enter_sniff_count
+	rtneq 2
+	increase 1,pdata
+	store 1,mem_mouse_enter_sniff_count
+	jam 0x12,mem_sniff_param_interval	//89Hz
+	branch app_bt_enter_sniff
+
+z_mouse_enter_sniff_check:
+	fetch 1,mem_mouse_enter_sniff_count
+	rtnne 2
+	jam 0,mem_mouse_enter_sniff_count
+	jam 0x0e,mem_sniff_param_interval	//89Hz
+	branch app_bt_enter_sniff
+
+z_mouse_le_ll_start_encryt:
+	fetch 1,mem_mouse_le_reconnect_flag
+	beq 1,z_mouse_le_ll_reconn_start_encryt
+	branch z_mouse_le_ll_enable_start_enc_flag
+z_mouse_le_ll_reconn_start_encryt:
+	call p_app_updata_le_param
+	jam 5,mem_le_start_encrypt_timer
+z_mouse_le_ll_enable_start_enc_flag:
+	arg LL_START_ENC_FLAG,queue
+	branch mouse_le_enable_connect_flag
+
+z_mouse_bb_event_disconnected:
+	jam 0,mem_bt_rcvd_switch_req_accept
+	jam 0,mem_bt_send_lmp_setup_complete
+	jam 0,mem_mouse_bt_send_first_package_flag
+	call p_mouse_store_flash_device_info
+	branch mouse_bb_disconnected
+
+z_mouse_irtual_cable_unplug:
+	setarg 0x01
+	store 6,mem_plap
+	jam REC_3_MODE,mem_record_bt_mode
+	jam 0xff,mem_mouse_fast_conn_flag
+	call mouse_before_store_reconn_info
+	jam 0xff,mem_device1_type
+	branch p_mouse_store_flash_device_info
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/109x.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/109x.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/109x.dat	(working copy)
@@ -0,0 +1,37 @@
+
+mem_lpm_config:8f 1c ce	#-1khz
+mem_lpm_xtalcnt:00 0a 0b ef 07
+mem_lpm_hibernate_switch:00
+mem_gpio_wakeup_low:00 00 00 00 00 00 00 00
+#mem_fcomp_mul:02
+#mem_fcomp_div:24
+mem_iscan_window:12 00
+mem_iscan_interval:00 02
+mem_pscan_window:12 00
+mem_pscan_interval:00 02
+mem_inq_window:20 00
+mem_page_window:20 00
+mem_page_to:00 40
+mem_rx_window_init:80 04
+mem_rx_window_sniff:00 08
+
+mem_seqi:00
+
+
+
+mem_tx_power:00#0dbm
+mem_rf_init_data_new:
+# tx power
+4b ba
+55 d0
+56 e0
+57 88
+58 6c
+59 10
+#xtal 16M
+68 e6
+ff
+mem_rf_init_ptr:mem_rf_init_data_new
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/AntiLost.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/AntiLost.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/AntiLost.dat	(working copy)
@@ -0,0 +1,174 @@
+mem_antl_queue_width:0a 08
+mem_queue_ptr:mem_antl_queue_width
+mem_antl_lpm_interval:14 00
+mem_antl_adv_interval:10 00
+mem_antl_slow_adv_lpm_interval:a0 00
+mem_antl_slow_adv_adv_interval:3b 06
+
+
+#mem_le_notify_handle:0a 00
+mem_device_option:0f
+mem_le_adv_channel_map:07 
+#mem_ssp_enable:01
+
+mem_ui_button_gpio:08
+mem_ui_button_timeout:1e
+mem_ui_button_last_state:01
+
+mem_antl_fast_adv_timeout:64 00
+mem_antl_le_sleep_timeout:b0 04
+
+mem_power_param_ptr:mem_antl_power_param
+mem_antl_power_off_timeout:0f 0c
+mem_ui_led_struct_num:02
+mem_ui_led_struct_ptr:mem_antl_led_style
+mem_antl_led_gpio:1b
+mem_antl_buzzer_gpio:83
+
+
+mem_antl_fast_adv_led_style:01 ff 1b 32 00 f0 00
+mem_antl_slow_adv_led_style:01 ff 1b 32 00 4e 0c
+mem_antl_power_starting_led_style:01 03 1b 96 00 96 00
+mem_antl_power_starting_buzzer_style:01 03 83 96 00 96 00
+mem_antl_power_off_led_style:01 01 1b 80 0c 00 00
+mem_antl_power_off_buzzer_style:01 01 83 80 0c 00 00
+mem_antl_alert_led_stlye:01 ff 1b 32 00 0e 06
+mem_antl_alert_buzzer_stlye:01 ff 83 32 00 0e 06
+mem_antl_key_led_style:01 01             1b 32 00 32 00
+mem_antl_key_buzzer_style:01 01              83 32 00 32 00
+
+
+
+#mem_le_pres:02 03 00 01 10 02 01
+mem_le_pres_auth:01
+mem_le_pres:02 03 00 05 10 02 03
+mem_le_transmit_window:50
+mem_rx_window_sniff_inc:00 40
+mem_le_local_mtu:17
+
+
+mem_le_lap:0a 89 73 70 b4 c1
+mem_le_name_len:
+#with 5 spaces
+'TrackerPA     
+
+mem_le_adv_data_len:1e
+mem_le_adv_data:
+#appearance
+03 19 c1 03
+#flags
+02 01 05
+#tx power level
+02 0a 00
+#complete uuid
+03 03 f0 ff
+#complete local name
+#with 5 spaces
+'\09TrackerPA     
+mem_le_scan_data_len:10
+mem_le_scan_data:
+#with 5 spaces
+'\09TrackerPA     
+
+#mem_adv_lap_ptr:mem_le_adv_data+2
+
+
+mem_keyscan_ptr:mem_antl_key_num
+mem_lpm_mode:01
+mem_lpm_overhead:06
+mem_lpm_mult_timeout:02
+
+mem_interval_increment:04 00
+mem_antl_le_interval_min:
+18 00 #min interval
+20 00 #max interval
+10 00 #latency
+58 02 #timeout
+mem_antl_le_unnormal_interval_min:
+10 01 #min interval
+90 01 #max interval
+00 00 #latency
+58 02 #timeout
+
+mem_antl_led_num:01
+mem_antl_led_gpio_map:
+1b
+ff
+ff
+ff
+
+
+mem_antl_key_num:01
+mem_antl_key_conf0:
+#0
+08
+#1
+ff
+#2
+ff
+#3
+ff
+mem_antl_key0_press:
+06
+0a 00
+5a 6b #header
+00    #opcode(from 01 to fe) #6th byte
+00 00 #data length
+00    #sum
+#key0release for doubleclick
+mem_antl_key0_release:
+07 #0th byte
+0a 00
+5a 6b #header
+00    #opcode(from 01 to fe)for doubleclick #5th byte
+00 01 #data length 0x0001 (not 0x0100,byteswaped after loading)
+00   #8th byte
+00	 #sum
+mem_adc_config_flag:00
+mem_adc_timeout:b0 04
+mem_battery_calculate_set:
+2c 01
+fa 00
+00 00
+00 00
+
+#mem_empty_count:03
+mem_alarm_config:01
+mem_alarm_config_notfy_cnt:01
+
+#beep
+mem_buzzer_pwm_conf:
+03	#pwm gpio
+04	#pwm channel
+a0	#three  byte frequency
+0f
+00
+32 #duty cycle (by percent %)
+
+mem_ui_le_uuid_table:mem_AntiLost_le_att_list
+#attribute list: handle 2bytes  uuid 2bytes  length 1bytes  attribute Nbytes
+mem_AntiLost_le_att_list:
+#Primary service GAP ------
+01 00  02 00 28 02 00 18
+#Device name
+02 00 02 03 28 01 0a
+03 00 02 00 2a 04 31 32 33 34
+#Appearance
+04 00 02 03 28 01 02
+05 00 02 01 2a 02 c8 00 #3c2=hid mouse
+#Peripheral Preferred Connection Parameters
+06 00 02 03 28 01 02
+07 00 02 04 2a 08 08 00 20 00 10 00 58 02 # interval 6ms, latency 100, timeout 600
+#Primary service yichip transmit ------
+08 00 02 00 28 02 f0 ff
+
+09 00 02 03 28 01 12
+0a 00 02 f1 ff 08 00 00 00 00 00 00 00 00
+0b 00 02 02 29 02 00 00
+
+0c 00 02 03 28 01 08
+0d 00 02 f2 ff 08 00 00 00 00 00 00 00 00
+#End of Attribute list
+00 00
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/DM_module.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/DM_module.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/DM_module.dat	(working copy)
@@ -0,0 +1,435 @@
+
+mem_device_option:0a
+mem_ui_profile_supported:40
+mem_app_connection_options:13
+
+mem_features:
+ff
+ff
+8f
+f8      #fe--EDR  F8--BR
+9b      #AFHclose 83
+9d
+59
+83
+
+##############ADC CONFIG##############
+mem_module_read_vdd_count:01
+mem_module_read_vdd_flag:01
+#####################################
+
+##############NVRAM CONFIG##############
+mem_nv_data_ptr:mem_module_nv_data
+mem_nv_data_number:05
+#####################################
+
+##############SPP CONFIG##############
+mem_credit_flag:00
+mem_rfcomm_max_frame_size:7f 00
+mem_rfcomm_credit_init_data:07
+#####################################
+
+##############SSP CONFIG##############
+mem_sp_iocap_local:03 00 04
+mem_ssp_enable:01
+mem_pin_length:04  30 30 30 30 30
+#####################################
+
+##############UART CONFIG##############
+mem_baud:D0 00
+mem_module_uart_rx_buffer:00 1c
+mem_module_uart_rx_buffer_end:ff 1f
+mem_module_uart_tx_buffer:00 4c
+mem_module_uart_tx_buffer_end:ef 4f
+#####################################
+
+
+
+##############BLUETOOTH CONFIG##############
+###commom###
+mem_soft_version_num:00 01
+mem_module_state:03
+mem_module_bluetooth_stauts_by_command:07
+mem_class:24 04 04
+
+mem_module_flag:00
+#bit0 MODULE_FLAG_UART_FLOW_CONTROL
+#bit1 MODULE_FLAG_BLE_SEND_MTU23
+#bit2 MODULE_FLAG_BLE_DATA_ENCRYPT
+
+mem_ui_button_gpio:ff
+mem_lpm_mode:01
+mem_lpm_interval:00 01
+mem_lpm_overhead:08
+mem_lpm_mult_timeout:02
+
+mem_module_wake_up_gpio:1b
+
+###3.0###
+mem_scan_mode:00
+mem_module_spp_lpm_mult:28
+mem_lap:77 1a 21 31 10 3a
+mem_local_name_length:
+'YichipFPGA
+
+###3.0 sinff param###
+mem_sniff_param_interval:20 00
+mem_sniff_param_attempt:01
+mem_sniff_param_timeout:00
+
+
+###ble###
+mem_le_pairing_handle:2a 00
+mem_le_configuration:08
+
+mem_le_secure_connect_enable:00
+mem_le_adv_channel_map:07
+mem_le_pairing_mode:01
+
+mem_module_data_write_handle:2d 00
+mem_module_data_write_handle2:2f 00
+
+
+mem_le_adv_enable:00
+mem_le_adv_interval:f0 00
+mem_module_le_lpm_mult:05
+mem_le_lap:2a 31 00 33 02 3a
+mem_le_name_len:
+'Yichip 1021s Mou
+
+mem_le_adv_data_len:03
+mem_le_adv_data:
+02 01 0e
+
+mem_le_scan_data_len:0e
+
+mem_le_scan_data:# 1 byte length + 1 byte type + N bytes data
+'\09Yichip 1021s Mou
+
+mem_le_pres:02 03 00 05 10 02 03
+
+mem_le_interval_min:
+08 00 #min interval
+10 00 #max interval
+00 00 #latency
+2c 01 #timeout
+
+
+mem_le_local_mtu:b5
+mem_le_remote_mtu:17
+
+
+#####################################
+
+
+mem_eir_enable:01
+mem_all_uuid_16bits: 
+05
+03#Type: Complete list of 16-bit UUIDs
+0012 0001 0100 0111 0300 
+
+mem_all_uuid_128bits:
+00
+
+
+mem_ui_uuid_table:mem_module_uuid_list
+
+mem_module_uuid_list:
+03
+12
+00
+01
+00
+00
+01
+00
+01
+00
+01
+36
+00
+52
+09
+00
+00
+0a
+00
+01
+00
+01
+09
+00
+01
+35
+03
+19
+12
+00
+09
+00
+04
+35
+0d
+35
+06
+19
+01
+00
+09
+00
+01
+35
+03
+19
+00
+01
+09
+00
+09
+35
+08
+35
+06
+19
+12
+00
+09
+01
+00
+09
+02
+00
+09
+01
+03
+09
+02
+01
+09
+05
+ac
+09
+02
+02
+09
+02
+39
+09
+02
+03
+09
+06
+44
+09
+02
+04
+28
+01
+09
+02
+05
+09
+00
+02
+03
+11
+01
+00
+03
+01
+00
+00
+01
+00
+03
+36
+00
+46
+09
+00
+00
+0a
+00
+01
+00
+03
+09
+00
+01
+35
+03
+19
+11
+01
+09
+00
+02
+0a
+00
+00
+00
+00
+09
+00
+04
+35
+0c
+35
+03
+19
+01
+00
+35
+05
+19
+00
+03
+08
+01
+09
+00
+06
+35
+09
+09
+65
+6e
+09
+00
+6a
+09
+01
+00
+09
+01
+00
+25
+0a
+53
+50
+50
+20
+73
+6c
+61
+76
+65
+00
+00
+00
+01
+00
+
+
+mem_ui_le_uuid_table:mem_module_le_att_list
+
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_module_le_att_list:
+#Primary service GAP ------
+01 00 02 00 28 02 00 18
+
+
+#Appearance
+02 00 02 03 28 01 02
+03 00 02 01 2a 02 c8 00 #3c2=hid mouse
+
+#Device name
+04 00 02 03 28 01 0a
+05 00 02 00 2a 14 41 73 74 20 4c 45 20 4d 6f 75 73 65 20 20 20 20 20 20 20 20
+
+
+#Peripheral Preferred Connection Parameters
+06 00 02 03 28 01 02
+07 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+
+#privcy flag
+08 00 02 03 28 01 02
+09 00 02 02 2a 01 01
+
+#reconnecting addr 
+0a 00 02 03 28 01 08
+0b 00 02 03 2a 06 00 00 00 00 00 00
+
+#Primary service GATT ------
+0c 00 02 00 28 02 01 18
+
+#Service changed
+0d 00 02 03 28 01 20
+0e 00 02 05 2a 00
+#Client Characteristic Configuration
+0f 00 02 02 29 02 00 00
+
+#Primary service TX power ------
+10 00 02 00 28 02 04 18
+#Characteristic Tx power level
+11 00 02 03 28 01 16
+12 00 02 07 2a 01 00
+13 00 02 02 29 02 00 00
+
+#Primary service Battery ------
+14 00 02 00 28 02 0f 18
+#Characteristic Battery level
+15 00 02 03 28 01 12
+16 00 02 19 2a 01 38
+
+#Primary service device infomation
+17 00 02 00 28 02 0a 18
+#Characteristic system id
+18 00 02 03 28 01 02
+19 00 02 23 2a 03 00 00 00
+
+#Characteristic manufactor name
+1a 00 02 03 28 01 02
+1b 00 02 29 2a 08 46 6c 61 67 74 72 69 70
+
+#Characteristic module number
+1c 00 02 03 28 01 02
+1d 00 02 24 2a 06 79 69 63 68 69 70
+
+#Characteristic serial number
+1e 00 02 03 28 01 02
+1f 00 02 25 2a 04 63 6f 6d 33
+
+#Characteristic firmware version
+20 00 02 03 28 01 02
+21 00 02 26 2a 03 31 2e 30
+
+#Characteristic software version
+22 00 02 03 28 01 02
+23 00 02 28 2a 03 31 2e 30
+
+#Characteristic hardware version
+24 00 02 03 28 01 02
+25 00 02 2a 2a 03 31 2e 30
+
+#Characteristic regulatory version
+26 00 02 03 28 01 02
+27 00 02 25 2a 04 63 6f 6d 33
+
+#Primary service yichip transmit ------
+28 00 02 00 28 10 55 e4 05 d2 af 9f a9 8f e5 4a 7d fe 43 53 53 49
+#Characteristic tx--notify read
+29 00 02 03 28 01 12
+2a 00 10 16 96 24 47 C6 23 61 BA D9 4B 4D 1E 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+#Client Characteristic Configuration
+2b 00 02 02 29 02 00 00
+
+#Characteristic rx--write
+2c 00 02 03 28 01 08
+2d 00 10 b3 9b 72 34 be ec d4 a8 f4 43 41 88 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#Characteristic rx-- write without Response
+2e 00 02 03 28 01 04
+2f 00 10 fe 69 ca 9a 56 19 f6 ab 02 4d aa 6d 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#Characteristic rx tx --read write notify
+30 00 02 03 28 01 1a
+31 0010 18 03 A6 28 5E D8 EC 91 1C 48 A3 AC 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+#Client Characteristic Configuration
+32 00 02 02 29 02 00 00
+
+#End of Attribute list
+00 00
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/car.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/car.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/car.dat	(working copy)
@@ -0,0 +1,176 @@
+mem_device_option:0e
+mem_le_adv_channel_map:07 
+mem_le_adv_enable:00
+
+
+mem_spi_ncs_gpio:ff
+
+mem_le_pres_auth:01
+mem_le_local_mtu:17
+mem_le_adv_interval:60 01 
+
+
+
+mem_le_lap:56 78 01 98 07 2b
+mem_le_name_len:
+'YC-CAR-aa
+
+mem_le_adv_data_len:1f
+mem_le_adv_data:
+17 09 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 02 01 05 03 02 ff f0
+
+mem_le_scan_data_len:1f
+mem_le_scan_data:
+1e 09 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
+
+
+mem_car_le_att_list:
+
+#Primary service: GATT
+01 00 02 00 28 02 01 18
+#Characteristic: Service changed
+02 00 02 03 28 01 20
+03 00 02 05 2a 01 00
+#Client Characteristic Configuration
+04 00 02 02 29 02 00 00
+
+#Primary Service: GAP
+05 00 02 00 28 02 00 18 
+#Characteristic: Device Name
+06 00 02 03 28 01 02
+07 00 02 00 2a 11 55 43 48 4f 4e 20 30 31 20 20 20 20 20 20 20 20 20
+#Characteristic: Appearance
+08 00 02 03 28 01 02 
+09 00 02 01 2a 02 c8 00 
+#Characteristic: Peripheral Preferred Connection Parameters
+0a 00 02 03 28 01 02
+0b 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary Service: Device Information
+0c 00 02 00 28 02 0a 18 
+#Characteristic: pnp id
+0d 00 02 03 28 01 02
+0e 00 02 50 2a 07 02 8a 24 66 82 01 00
+
+#Primary Service:Car
+0f 00 02 00 28 02 f0 ff
+#Characteristic: Notify/Read UUID
+10 00 02 03 28 01 12
+11 00 02 f1 ff 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+12 00 02 02 29 02 00 00
+#Characteristic: Write UUID
+13 00 02 03 28 01 08
+14 00 02 f2 ff 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#End of Attribute list
+00 00
+
+
+
+mem_ui_le_uuid_table:mem_car_le_att_list
+
+mem_lpm_mode:00
+mem_lpm_overhead:06
+mem_lpm_mult_timeout:02
+mem_car_hard_soft_switch:00
+
+mem_power_param_ptr:mem_car_soft_power
+mem_car_power_off_timeout:0c 0c
+
+mem_ui_button_gpio:ff
+mem_ui_button_timeout:14
+mem_ui_button_last_state:01
+
+
+mem_ui_led_struct_ptr:mem_car_style1_led_type
+mem_ui_led_struct_num:02
+
+#style:01
+mem_car_style1_blink_count:ff
+mem_car_style1_struct_led_gpio:02
+mem_car_style1_on_time:96 02
+mem_car_style1_off_time:3a 07
+
+#style:02
+mem_car_style2_blink_count:ff
+mem_car_style2_struct_led_gpio:ff
+mem_car_style2_on_time:40 01
+mem_car_style2_off_time:40 01
+
+
+mem_car_led_num:0a
+mem_car_led_map:
+02
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+
+mem_car_queue_each_size:14 06
+
+mem_queue_ptr:mem_car_queue_each_size
+
+mem_car_config_pairing_led_conn_status:00
+mem_car_config_soft_switch_enable:00
+mem_car_config_pairing_led_gpio:ff
+mem_car_config_low_voltage_led_gpio:07
+mem_car_config_soft_switch_gpio:ff
+mem_car_config_low_voltage_percent:14
+mem_car_config_bat_notify_enable:01
+mem_car_config_device_select:03
+mem_car_config_ir_enable:01
+mem_car_config_motor_layout:03
+mem_car_config_ir_rx_gpio:06
+mem_car_config_led_num:08
+mem_car_config_blood_led_gpio:08 09 0a 0b 0c 0d 0e 0f
+
+
+mem_motor1_speed:0a
+mem_motor2_speed:0a
+mem_motor3_speed:0a
+mem_motor1_pwm_set:04 14 00 00 e8 03 00 00
+mem_motor2_pwm_set:05 15 00 01 e8 03 00 00
+mem_motor3_pwm_set:16 1b 00 02 e8 03 00 00
+
+mem_car_notify_vdd_count:14
+mem_notify_bat_packet:07 11 00 5a 6b 01 00 01 00 00
+
+mem_vdd_calculate_set:e0 01 90 01 9a 01 00 00	#full_vol;	empty_vol;	low_vol;	now_vol
+
+mem_ir_notify_data:08 11 00 5a 6b 06 00 02 00 00 00
+
+mem_adc_config_flag:01
+
+mem_car_info_request:0e 11 00 5a 6b 08 00 08 00 00 00 00 00 00 00 00 00
+
+mem_car_led_control_timer:05
+
+mem_car_24g_no_data_timeout_count:b8 0b
+
+#mem_car_led_control:01 01 01 01 01 01 01 01
+
+
+mem_tx_power:02
+mem_250k_freq_enable:00
+mem_24g_head_ptr:mem_24g_car_head_ptr
+mem_24g_car_head_ptr+394:4#offset_24g_pair_txpower
+mem_24g_car_head_ptr+146:20 15 10 05#offset_24g_paring_addr
+mem_24g_car_head_ptr+151:00 13 2c 42#offset_24g_ch_map1
+mem_24g_car_head_ptr+155:06 15 36 48#offset_24g_ch_map2
+mem_24g_car_head_ptr+159:0f 1a 3a 4c#offset_24g_ch_map3
+mem_24g_car_head_ptr+163:11 23 31 4d#offset_24g_ch_map4
+mem_24g_car_head_ptr+195:00#offset_24g_no_ack
+mem_24g_car_head_ptr+205:02#offset_24g_mode
+mem_24g_car_head_ptr+137:30 75#offset_24g_rx_window
+mem_24g_car_head_ptr+349:00#offset_24g_pair_mode auto pair
+mem_24g_car_head_ptr+314:38#offset_24g_hop_interval
+mem_24g_car_head_ptr+315:00#offset_24g_ackpayload_enable
+mem_24g_car_head_ptr+299:16 16 17 02#offset_24g_rx_addr
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/fpga.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/fpga.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/fpga.dat	(working copy)
@@ -0,0 +1,36 @@
+
+
+
+4010:c0
+4011:0f
+4022:80
+4023:02
+
+mem_fcomp_mul:02
+mem_fcomp_div:24
+mem_iscan_window:12 00
+mem_iscan_interval:00 10
+mem_pscan_window:12 00
+mem_pscan_interval:00 08
+
+mem_inq_window:20 00
+mem_page_window:20 00
+mem_page_to:00 20
+mem_rx_window_init:80 04
+mem_rx_window_sniff:00 08
+
+
+mem_lpm_xtalcnt:00 0a 1b ef 07
+
+mem_lmp_version:08 0e 05 03 00
+
+mem_eeprom_base:30 ff
+mem_eeprom_block_size:80
+
+mem_context_number:01
+
+mem_rf_init_data:
+ff
+mem_rf_init_ptr:mem_rf_init_data
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/gatt.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/gatt.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/gatt.dat	(working copy)
@@ -0,0 +1,86 @@
+
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_le_att_list:
+
+#Primary service GAP ------
+01 00 00 28 02 00 18
+
+#Device name
+02 00 03 28 01 0a
+03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
+
+#Appearance
+04 00 03 28 01 02
+05 00 01 2a 02 c2 03 #3c2=hid mouse
+
+#Peripheral Preferred Connection Parameters
+06 00 03 28 01 02
+07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary service GATT ------
+08 00 00 28 02 01 18
+
+#Service changed
+09 00 03 28 01 20
+0a 00 05 2a 00
+
+#Client Characteristic Configuration
+0b 00 02 29 02 00 00
+
+#Primary service TX power ------
+0c 00 00 28 02 04 18
+#Characteristic Tx power level
+0d 00 03 28 01 06
+0e 00 07 2a 01 00
+
+
+#Primary service Battery ------
+0f 00 00 28 02 0f 18
+#Characteristic Battery level
+10 00 03 28 01 12
+11 00 19 2a 01 38
+
+#Primary service yichip transmit ------
+12 00 00 28 02 f0 18
+#Characteristic tx--notify
+13 00 03 28 01 12
+14 00 f1 2a 14	# for Android device, ATT MTU is just 23 bytes, so payload is 20 bytes max
+'Test read initial va
+#Client Characteristic Configuration
+15 00 02 29 02 00 00
+#Characteristic rx--write
+16 00 03 28 01 0c
+17 00 f0 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#End of Attribute list
+00 00
+
+mem_le_adv_enable:01
+mem_le_adv_data_len:03
+
+mem_le_adv_data:02 01 05
+#flags NOTE: should be included here, or Android will not do connectgatt()
+
+
+mem_le_scan_data_len:17
+
+mem_le_scan_data:	# 1 byte length + 1 byte type + N bytes data
+
+#complete local name
+0e 09 
+#'Ast LE2Serial
+'YiChip BLE2IR
+
+#16bit uuid
+03 03 00 f0
+
+#Apperance
+03 19 40 02
+
+
+mem_le_adv_interval:00 08 
+mem_le_adv_direct_addr_type:01
+mem_le_adv_channel_map:07 
+
+mem_lap:77 11 00 33 00 00
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/hci.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/hci.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/hci.dat	(working copy)
@@ -0,0 +1,8 @@
+#device parameters
+mem_lap:88 11 00 33 00 00
+mem_local_name_length:09
+mem_local_name:'Bluetooth
+mem_device_option:01
+mem_ssp_enable:01
+mem_lpm_mode:01
+mem_3v_adc_data:00 00
\ No newline at end of file
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/hci_boot.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/hci_boot.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/hci_boot.dat	(working copy)
@@ -0,0 +1,11 @@
+
+mem_patch00:01
+mem_lpm_config:8f 10 ca
+mem_le_att_list+485:
+68 e4
+69 00
+6a 00
+6b 30
+ff
+mem_rf_init_ptr:mem_le_att_list+485
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/le_prcp.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/le_prcp.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/le_prcp.dat	(working copy)
@@ -0,0 +1,80 @@
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_le_att_list:
+
+#Primary service GAP ------
+01 00 00 28 02 00 18
+
+#Device name
+02 00 03 28 01 0a
+03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
+
+#Appearance
+04 00 03 28 01 02
+05 00 01 2a 02 c2 03 #3c2=hid mouse
+
+#Peripheral Preferred Connection Parameters
+06 00 03 28 01 02
+07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary service GATT ------
+08 00 00 28 02 01 18
+
+#Service changed
+09 00 03 28 01 20
+0a 00 05 2a 00
+
+#Client Characteristic Configuration
+0b 00 02 29 02 00 00
+
+#Primary service TX power ------
+0c 00 00 28 02 04 18
+#Characteristic Tx power level
+0d 00 03 28 01 06
+0e 00 07 2a 01 00
+
+
+#Primary service Battery ------
+0f 00 00 28 02 0f 18
+#Characteristic Battery level
+10 00 03 28 01 12
+11 00 19 2a 01 38
+
+#Primary service yichip PRCP ------
+12 00 00 28 02 f1 18
+#Characteristic device tx
+13 00 03 28 01 12
+14 00 f3 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+#Client Characteristic Configuration
+15 00 02 29 02 00 00
+#Characteristic device rx
+16 00 03 28 01 0e
+17 00 f2 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+#End of Attribute list
+00 00
+
+mem_le_adv_data_len:1b
+mem_le_adv_data:0c 09
+'Yichip Temp
+ 03 19 40 02 02 01 05 02 0a 00 03 03 f1 18
+mem_le_scan_data_len:00
+#mem_le_adv_param:00 08 00 08 00 01 00 00 00 00 00 00 00 07 00
+mem_le_adv_enable:01
+
+
+mem_le_adv_interval:20 00 
+mem_le_adv_type:00 
+mem_le_adv_own_addr_type:01 
+mem_le_adv_direct_addr_type:01
+mem_le_adv_direct_addr:00 00 00 00 00 00 
+mem_le_adv_channel_map:07 
+
+mem_le_notify_handle:14
+
+mem_lpm_mode:00
+#mem_lpm_ctrl:0f 0f 10 06
+mem_lpm_xtalcnt:0c 10 ca 1f
+mem_device_option:0d
+mem_fcomp_div:24
+mem_fcomp_mul:02
+mem_le_lap:45 67 78 89 90 56
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/le_transmit_uuid.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/le_transmit_uuid.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/le_transmit_uuid.dat	(working copy)
@@ -0,0 +1,62 @@
+mem_device_option: 01
+
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_le_att_list:
+
+#Primary service GAP ------
+01 00 00 28 02 00 18
+
+#Device name
+02 00 03 28 01 0a
+03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
+
+#Appearance
+04 00 03 28 01 02
+05 00 01 2a 02 c2 03 #3c2=hid mouse
+
+#Peripheral Preferred Connection Parameters
+06 00 03 28 01 02
+07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary service GATT ------
+08 00 00 28 02 01 18
+
+#Service changed
+09 00 03 28 01 20
+0a 00 05 2a 00
+
+#Client Characteristic Configuration
+0b 00 02 29 02 00 00
+
+#Primary service TX power ------
+0c 00 00 28 02 04 18
+#Characteristic Tx power level
+0d 00 03 28 01 06
+0e 00 07 2a 01 00
+
+
+#Primary service Battery ------
+0f 00 00 28 02 0f 18
+#Characteristic Battery level
+10 00 03 28 01 12
+11 00 19 2a 01 38
+
+#Primary service yichip transmit ------
+12 00 00 28 02 f0 18
+#Characteristic tx--notify
+13 00 03 28 01 12
+14 00 f1 2a 17 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+#Client Characteristic Configuration
+15 00 02 29 02 00 00
+#Characteristic rx--write
+16 00 03 28 01 0c
+17 00 f0 2a 17 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#End of Attribute list
+00 00
+
+mem_le_adv_data_len:1b
+mem_le_adv_data:0c 09 52 74 72 69 76 72 5f 52 36 32 31 03 19 40 02 02 01 05 02 0a 00 03 03 00 f0
+mem_le_scan_data_len:00
+mem_le_adv_param:00 08 00 08 00 01 00 00 00 00 00 00 00 07 00
+mem_le_adv_enable:01
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/light.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/light.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/light.dat	(working copy)
@@ -0,0 +1,18 @@
+mem_patch3a:02
+mem_patch1f:20
+
+mem_light_pwm0:04
+mem_light_pwm1:05
+mem_light_pwm2:1b
+mem_light_pwm3:1c
+mem_light_pwm4:03
+mem_light_pwm5:08
+mem_ui_button_gpio:ff
+
+mem_light_cnum:14
+mem_light_pairing_timer:00 02
+mem_light_pairing_enable:01
+mem_le_scan_enable:01
+mem_le_scan_interval:50 00
+mem_le_scan_window:40 00
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/mouse.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/mouse.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/mouse.dat	(working copy)
@@ -0,0 +1,1200 @@
+mem_patch00:06
+mem_patch03:08
+mem_patch04:40
+mem_patch09:05
+mem_patch0a:02
+mem_patch0b:02
+mem_patch10:20
+mem_patch11:06
+mem_patch14:82
+mem_patch15:20
+mem_patch16:06
+mem_patch18:10
+mem_patch19:08
+mem_patch1c:48
+mem_patch1d:1e
+mem_patch20:20
+mem_patch27:02
+mem_patch28:08
+mem_patch29:04
+mem_patch2a:80
+mem_patch2b:02
+mem_patch2c:c8
+mem_patch2d:04
+mem_patch2e:80
+mem_patch30:05
+mem_patch31:31
+mem_patch3f:04
+
+
+#debug
+#mem_patch2f:40
+#mem_patch37:40
+#mem_patch3e:c0
+
+
+mem_device_option:43
+mem_lpm_mode:01
+mem_lpm_mult:20
+mem_lpm_mult_init:20
+#mem_lpm_interval:00 00
+
+mem_mouse_function_enable:
+#bit0 MOUSE_ENABLE_USB
+#bit1 MOUSE_ENABLE_24G
+#bit2 MOUSE_ENABLE_SPI2
+#bit3 MOUSE_ENABLE_FLASH
+#bit4 MOUSE_ENABLE_EEPROM
+#bit5 MOUSE_ENABLE_STATUE_UP_THREE_LED
+#bit6 MOUSE_ENABLE_STATUE_UP
+#bit7 MOUSE_ENABLE_DPI_LED_BLINK
+0a
+#bit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+#bit1 MOUSE_ENABLE_2K_EEPROM
+#bit2 MOUSE_ENABLE_ADC
+#bit3 MOUSE_ENABLE_INIT_DELAY
+#bit4 MOUSE_ENABLE_DISCOVERY_SENSOR_LED
+#bit5 MOUSE_ENABLE_AUTO_24G_PARING
+#bit6 MOUSE_ENABLE_WAKEUP_FROM_POWER
+#bit7 MOUSE_ENABLE_GPIO_CONTROL_ADC_SENSOR
+45
+
+mem_app_connection_options:06
+mem_lap:20 51 17 01 20 20
+mem_local_name_length:
+'BT3.0 Mouse
+mem_sniff_param_interval:
+0e 00 
+01 00 ##mem_sniff_param_attempt:01 00
+02##mem_sniff_param_timeout:00 00
+
+
+mem_unsniff2sniff_timer:0a
+mem_ssp_mode_flag:03
+mem_ssp_enable:01
+##mem_all_uuid_16bits:
+##06
+##03#Type: Complete list of 16-bit UUIDs
+##0011 0100 1002 1124  1200  0001
+mem_all_uuid_128bits:00
+mem_ptt:00
+
+
+mem_sp_iocap_local:03 00 04
+mem_ui_profile_supported:01
+mem_eir_enable:01
+
+mem_le_adv_data_len:1f
+mem_le_adv_data:
+#flag 
+02 01 05
+
+#uuid
+03 03 12 18
+
+#appearance
+03 19 c2 03
+
+mem_le_adv_swift_pair:
+#microsoft swift pair
+06 ff 06 00 03 00 80
+#name
+'\09BT5.0 Mouse
+
+mem_le_scan_data_len:1f
+mem_le_scan_data:
+#name
+'\09BT5.0 Mouse
+
+
+#max 20bytes, att list data rom limits
+mem_le_name_len:
+'BT5.0 Mouse
+
+
+mem_le_interval_min:
+07 00 #min interval
+07 00 #max interval
+20 00 #latency
+2c 01 #timeout
+
+
+mem_le_adv_interval:00 00
+mem_le_adv_type:00 
+mem_le_adv_own_addr_type:00
+mem_le_adv_channel_map:07 
+
+mem_le_lap:8e b1 3a 0e 8e ed
+
+mem_le_transmit_window:50
+
+mem_le_notify_handle:19 00
+mem_le_pairing_handle:29 00
+
+
+mem_discovery_timeout:b0 04#2min
+mem_mouse_direct_timeout:96 00#15s
+mem_mouse_no_data_timeout:70 17#10min
+
+mem_flash_ncs_gpio:0a
+mem_spi_ncs_gpio:ff
+mem_ui_button_gpio:ff
+mem_ui_button_timeout:1e
+mem_bt_ui_button_timeout:01
+
+mem_device_number:02 #max device number
+mem_24g_device_number:02 #devie 2 :24g mode
+mem_adc_config_flag:00 #0 vinlpm 1 hvin 2 gpio
+mem_adc_channel:32 #gpio5
+mem_mouse_vdd_full_vol:72 01#3.7V
+29 01#mem_mouse_vdd_empty_vol:5a 00# 3.0V
+4a 01#mem_mouse_vdd_low_vol:64 00  #3.3v
+mem_adc_read_timer:0a
+
+mem_config_sensor_type:00
+02 #mem_config_sensor_motion:02
+06 #mem_lbutton_gpio:04
+14 #mem_rbutton_gpio:1b
+08 #mem_mbutton_gpio:17
+06 #mem_bk_button_gpio:ff
+08 #mem_fw_button_gpio:ff
+14 #mem_dpi_button_gpio:06
+1b #mem_whee_a_data_gpio:02
+1c #mem_whee_b_data_gpio:03
+ff #mem_whee_ta_data_gpio:ff
+ff #mem_whee_tb_data_gpio:ff
+1d #mem_config_bt_button_gpio:ff
+1d #mem_config_select_device_button_gpio:ff
+ff #mem_config_paraing_led_gpio:ff
+ff #mem_config_low_voltage_alarm_gpio:08
+ff #mem_config_device1_led_gpio:08
+ff #mem_config_device2_led_gpio:ff
+ff #mem_config_device3_led_gpio:ff
+ff #mem_sensor_data_gpio:18
+ff #mem_dpi_led_gpio:08
+30 #mem_config_function_enable:04
+00 #mem_config_sensor_angle:00
+ff #mem_select_sensor_angle_gpio:ff
+ff #mem_select_adc_gpio:ff
+
+mem_eeprom_wp_gpio:ff
+mem_sensor_reset_gpio:ff
+mem_sensor_squal_reg:07# 07:3205         	06:3610
+mem_usb_offline_check_gpio:ff
+#mem_wire_usb_interval:19 #128
+
+#mem_config_function_enable:
+#bit0 ENABLE_BT_DISCOVERY_BY_GPIO_LED
+#bit1 ENABLE_MODE_LED
+#bit2 ENABLE_LOW_VOLTAGE_LED
+#bit3 ENABLE_DEVICE_LED
+#bit4 ENABLE_BT_BUTTON
+#bit5 ENABLE_SELECT_DEVICE_BY_GPIO_BUTTON
+#bit6 ENABLE_SELECT_DEVICE_BY_SWITCH
+#bit7 ENABLE_SENSOR_MOTION_PIN
+#30
+
+mem_mouse_dpi_seting:
+01##mem_320x_dpi_1
+02##mem_320x_dpi_2
+03##mem_320x_dpi_3
+04##mem_320x_dpi_4
+
+#15##mem_3212_dpi_1#800
+#1a##mem_3212_dpi_2#1000
+#2a##mem_3212_dpi_3#1600
+#3f##mem_3212_dpi_4#2400
+
+#04##mem_3610_dpi_1
+#05##mem_3610_dpi_2
+#07##mem_3610_dpi_3
+#08##mem_3610_dpi_4
+
+mem_mouse_3065xy_dpi_seting:
+00
+01
+02
+03
+
+#mem_sensor_8650_init:
+#09 5a
+#ff 27
+#ab 40
+#be d1
+#a0 41
+#a1 41
+#a5 84
+#a7 ff
+#b5 d0
+#b6 00
+#ff 00
+#09 00
+#ff
+
+mem_sensor_ka8_init:
+09 5a
+5b 9a
+0d 12
+0e c5
+53 48
+09 00
+ff
+
+mem_sensor_8009_init:
+09 5a
+06 02
+09 69
+0d 48
+0e 9f
+0f ba
+09 00
+ff
+
+mem_sensor_poweron_init:
+06 80
+09 5a
+0b f3
+09 00
+ff
+
+mem_ui_led_struct_ptr:mem_mouse_led_type
+mem_ui_led_struct_num:01
+
+
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_mouse_le_uuid_sup:
+
+#Primary service GAP ------
+01 00 02 00 28 02 00 18 
+
+#Device name
+02 00 02 03 28 01 0a
+03 00 02 00 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#Appearance
+04 00 02 03 28 01 02
+05 00 02 01 2a 02 c2 03 #3c2=hid mouse
+
+#Peripheral Preferred Connection Parameters
+06 00 02 03 28 01 02
+07 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary service GATT ------
+08 00 02 00 28 02 01 18
+#Service changed
+09 00 02 03 28 01 20
+0a 00 02 05 2a 00
+#Client Characteristic Configuration
+0b 00 02 02 29 02 00 00
+#Primary service device information ------
+0c 00 02 00 28 02 0a 18
+#Manufacturer Name
+0d 00 02 03 28 01 02
+0e 00 02 29 2a 06 59 69 43 68 69 70
+#PNP id
+0f 00 02 03 28 01 02
+10 00 02 50 2a 07 02 35 12 22 aa 01 00
+
+#Primary service battery ------
+#11 00 02 00 28 02 0f 18
+#Battery level
+#12 00 02 03 28 01 02
+#13 00 02 19 2a 01 33
+#Client Characteristic
+#14 00 02 02 29 02 00 00
+
+#Primary service hid ------
+11 00 02 00 28 02 12 18
+
+#Protocol mode
+12 00 02 03 28 01 06
+13 00 02 4e 2a 01 01
+
+#Hid report
+14 00 02 03 28 01 12 
+15 00 02 4d 2a 08 00 00 00 00 00 00 00 00
+16 00 02 02 29 02 00 00
+17 00 02 08 29 02 02 01
+
+18 00 02 03 28 01 1a
+19 00 02 4d 2a 07 00 00 00 00 00 00 00
+1a 00 02 02 29 02 00 00
+1b 00 02 08 29 02 01 01 # report id=1, type=1 input
+
+1c 00 02 03 28 01 12 
+1d 00 02 4d 2a 02 00 00
+1e 00 02 02 29 02 00 00
+1f 00 02 08 29 02 03 01
+
+20 00 02 03 28 01 0e
+21 00 02 4d 2a 02 00 00
+22 00 02 08 29 02 02 02
+
+#Report map
+23 00 02 03 28 01 0a
+24 00 02 4b 2a a0 # length 160 bytes
+
+05 01 # Usage Page(Generic Desktop)
+09 02 # Usage(Mouse)
+a1 01 # Collection(Application)
+85 01 # Report ID(1)
+09 01 # Usage(Pointer)
+a1 00 # Collection(Physical)
+05 09 # Usage Page(Buttons)
+19 01 # Usage Minimum(1)
+29 08 # Usage Maximum(8)
+15 00 # Logical Minimum(0).
+25 01 # Logical Maximum(1)
+75 01 # Report Size(1)
+95 08 # Report Count(8)
+81 02 # Input(Data Variable Absolute)
+
+05 01 # Usage Page(Generic Desktop)
+09 30 # Usage(X)
+09 31 # Usage(Y)
+16 01 f8 # Logical Minimum(-2047)
+26 ff 07 # Logical Maximum(2047)
+75 10 # Report Size(16)
+95 02 # Report Count(2)
+81 06 # Input(Data Variable Relative)
+
+09 38 # Usage(Wheel)
+15 81 # Logical Minimum(-127)
+25 7f # Logical Maximum(127)
+75 08 # Report Size(8)
+95 01 # Report Count(1)
+81 06 # Input(Data Variable Relative)
+05 0c # Usage Page(Consumer)
+0a 38 02 # Usage(AC Pan)
+95 01 # Report Count(1)
+81 06 # Input(Data Variable Relative)
+c0 # End Collection
+c0 # End Collection
+
+#66
+05 01
+09 06
+a1 01
+85 02
+75 01
+95 08
+05 07
+19 e0
+29 e7
+15 00
+25 01
+81 02
+95 01 
+75 08
+81 03 
+95 05
+75 01
+05 08
+19 01
+29 05  
+91 02 
+95 01  
+75 03  
+91 03
+95 06
+75 08
+15 00
+26 ff 00
+05 07
+19 00
+29 ff
+81 00
+c0
+
+#25
+05 0c
+09 01
+a1 01
+85 03
+19 00
+2a ff 03
+15 00
+26 ff 03
+95 01
+75 10
+81 00
+c0
+
+#Boot mouse input report
+25 00 02 03 28 01 1a
+26 00 02 33 2a 08 00 00 00 00 00 00 00 00
+
+#Client Characteristic
+27 00 02 02 29 02 01 00
+
+#Hid information
+28 00 02 03 28 01 02
+29 00 02 4a 2a 04 01 01 00 03
+
+#Hid control point
+2a 00 02 03 28 01 04
+2b 00 02 4c 2a 00
+
+#End of Attribute list
+00 00
+  
+#24g init
+mem_24g_mode:01#tx
+mem_24g_data_type:01        #mouse 1,kb 2
+mem_24g_max_retry:06#max tx retry
+mem_24g_no_ack:00#with ack
+mem_24g_rx_window:c0 12     #400us
+mem_24g_interval:19
+mem_24g_interval_min:19
+mem_24g_interval_max:1c
+mem_24g_ch_map1:00 13 2c 42
+mem_24g_ch_map2:06 15 36 48
+mem_24g_ch_map3:0f 1a 3a 4c
+mem_24g_ch_map4:11 23 31 4d
+mem_24g_pairing_sm:ff
+mem_24g_paring_addr:20 15 10 05
+mem_24g_allpowerful_addr:0f 0f 0f 0f 0f 0f
+mem_24g_common_temp:00 00 00 00 00 00 00 00 00 00
+mem_24g_enter_hibernate:80 4f 12
+
+
+mem_customer_key_press:
+##00 08 00 07 00 00 00 00 00#WIN+D
+00 05 00 04 00 00 00 00 00#CTRL+ALT+A
+##00 00 00 46 00 00 00 00 00#PrtSC
+mem_customer_key_release:
+00 00 00 00 00 00 00 00 00
+
+
+mem_device_flag:
+02
+34
+ff ff ff ff ff ff
+#mem_device2_type:
+#34
+#11 22 33 44 55 66
+#mem_device3_type:
+#34
+#11 22 33 44 55 66
+
+mem_mouse_fast_conn_addr:ff ff ff ff ff ff
+
+mem_flash_base:00 50 00
+#mem_eeprom_base:90 1f
+#mem_eeprom_block_size:80
+mem_reconn_times_init:00
+mem_bt_discovey_button_statue:01#default: button up
+mem_empty_count:03
+
+mem_mouse_24g_addr_init:0f 0f 0f 0f
+mem_24g_attempt_count:40		#bit0 = 0,first search dongle
+
+
+mem_mouse_multi_led_gpio:05
+mem_mouse_multi_led_on_timer_init:14
+mem_mouse_multi_led_blink_timer_init:03
+
+#zcode
+mem_zcode_current_number:ff
+mem_xip_flash_offset:00 00 00
+mem_zcode_head:20 20 00 40
+
+mem_mouse_le_fast_conn_enable_timer:0a
+
+#mem_mouse_button_select_device_timer_init:1e
+#mem_mouse_dpi_button_state:01
+
+mem_mouse_long_button_select_device:ff
+
+#yichip sdp
+#04 0011 0100 1002 1124
+#00 01 00 00
+#36 01 6d
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#11
+#24
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#11
+#35
+#03
+#19
+#00
+#11
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#06
+#35
+#09
+#09
+#65
+#6e
+#09
+#00
+#6a
+#09
+#01
+#00
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#11
+#24
+#09
+#01
+#00
+#09
+#00
+#0d
+#35
+#0f
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#13
+#35
+#03
+#19
+#00
+#11
+#09
+#01
+#00
+#25
+#16
+#59
+#69
+#43
+#68
+#69
+#70
+#20
+#42
+#6c
+#75
+#65
+#74
+#6f
+#6f
+#74
+#68
+#20
+#4d
+#6f
+#75
+#73
+#65
+#09
+#01
+#01
+#25
+#05
+#4d
+#6f
+#75
+#73
+#65
+#09
+#01
+#02
+#25
+#06
+#59
+#69
+#43
+#68
+#69
+#70
+#09
+#02
+#00
+#09
+#01
+#00
+#09
+#02
+#01
+#09
+#01
+#11
+#09
+#02
+#02
+#08
+#80
+#09
+#02
+#03
+#08
+#21
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#28
+#01
+#09
+#02
+#06
+#35
+#81
+#35
+#7f
+#08
+#22
+#25
+#7b
+#05
+#01
+#09
+#02
+#a1
+#01
+#85
+#02
+#09
+#01
+#a1
+#00
+#05
+#09
+#19
+#01
+#29
+#08
+#15
+#00
+#25
+#01
+#75
+#01
+#95
+#08
+#81
+#02
+#05
+#01
+#09
+#30
+#09
+#31
+#16
+#01
+#f8
+#26
+#ff
+#07
+#75
+#10
+#95
+#02
+#81
+#06
+#09
+#38
+#15
+#81
+#25
+#7f
+#75
+#08
+#95
+#01
+#81
+#06
+#05
+#0c
+#0a
+#38
+#02
+#75
+#08
+#95
+#01
+#81
+#06
+#c0
+#c0
+#05
+#0c
+#09
+#01
+#a1
+#01
+#85
+#03
+#75
+#10
+#95
+#02
+#15
+#01
+#26
+#8c
+#02
+#19
+#01
+#2a
+#8c
+#02
+#81
+#60
+#c0
+#06
+#00
+#ff
+#09
+#01
+#a1
+#01
+#85
+#10
+#75
+#08
+#95
+#06
+#15
+#00
+#26
+#ff
+#00
+#09
+#01
+#81
+#00
+#09
+#01
+#91
+#00
+#c0
+#09
+#02
+#07
+#35
+#08
+#35
+#06
+#09
+#04
+#09
+#09
+#01
+#00
+#09
+#02
+#08
+#28
+#00
+#09
+#02
+#09
+#28
+#01
+#09
+#02
+#0a
+#28
+#01
+#09
+#02
+#0b
+#09
+#01
+#00
+#09
+#02
+#0c
+#09
+#1f
+#40
+#09
+#02
+#0d
+#28
+#00
+#09
+#02
+#0e
+#28
+#01
+#09
+#02
+#0f
+#09
+#00
+#12
+#09
+#02
+#10
+#09
+#00
+#00
+#
+#04 1002 1200 0100 0001
+#00 01 00 01
+#36 00 5a
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#01
+#09
+#00
+#01
+#35
+#03
+#19
+#12
+#00
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#00
+#01
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#12
+#00
+#09
+#01
+#00
+#09
+#02
+#00
+#09
+#01
+#03
+#09
+#02
+#01
+#09
+#04
+#6d
+#09
+#02
+#02
+#09
+#b0
+#16
+#09
+#02
+#03
+#09
+#01
+#29
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#09
+#00
+#02
+#00
+#00
+#
+#01 0001
+#00 01 00 01
+#36 00 5a
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#01
+#09
+#00
+#01
+#35
+#03
+#19
+#12
+#00
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#00
+#01
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#12
+#00
+#09
+#01
+#00
+#09
+#02
+#00
+#09
+#01
+#00
+#09
+#02
+#01
+#09
+#05
+#ac
+#09
+#02
+#02
+#09
+#02
+#39
+#09
+#02
+#03
+#09
+#00
+#44
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#09
+#00
+#02
+#
+#03 1101 0003 0100
+#00 01 00 02
+#36 00 2f
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#02
+#09
+#00
+#01
+#35
+#03
+#19
+#11
+#01
+#09
+#00
+#04
+#35
+#0c
+#35
+#03
+#19
+#01
+#00
+#35
+#05
+#19
+#00
+#03
+#08
+#01
+#09
+#01
+#00
+#25
+#09
+#53
+#50
+#50
+#20
+#73
+
+mem_sdp_updata_list:
+09020f 090012
+090210 090000
+
+mem_keyboard_hid_descriptor:
+# hid descriptor 48byte
+0501 # Usage Page(Generic Desktop)
+0906 # Usage(Keyboard)
+a101 # Collection(Application)
+8501 # Report ID(1)
+7501 # Report Size(1)
+9508 # Report Count(8)
+0507 # Usage Page(Keyboard/Keypad)
+19e0 # Usage Minimum(224)
+29e7 # Usage Maximum(231)
+1500 # Logical Minimum(0)
+2501 # Logical Maximum(1)
+8102 # Input(Data Variable Absolute) ; Modifier byte
+9501 # Report Count(1)
+7508 # Report Size(8)
+8103 # Input(Constant Variable Absolute) ; 
+#9505 # Report Count(5)
+#7501 # Report Size(1)
+#0508 # Usage Page(LEDs)
+#1901 # Usage Minimum(1)
+#2905 # Usage Maximum(5)
+#9102 # Output(Data Variable Absolute) ; LED report
+#9501 # Report Count(1)
+#7503 # Report Size(3)
+#9103 # Output(Constant Variable Absolute) ; 
+9506 # Report Count(6)
+#7508 # Report Size(8)
+1500 # Logical Minimum(0)
+25ff # Logical Maximum(255)
+0507 # Usage Page(Keyboard/Keypad)
+1900 # Usage Minimum(0)
+29ff # Usage Maximum(255)
+8100 # Input(Data Array) ; Key arrarys 6 bytes
+c0 # End Collection
+
+#logi sdp
+#04 1000 0100 0001 1002
+#00 00 00 00
+#36 00 92 
+#09 00 00 0a 00 00 00 00 09 00 01 35 03 19 10 00 09 00 04 35 0d 35 06 
+#19 01 00 09 00 01 35 03 19 00 01 09 00 05 35 03 19 10 02 09 00 06 35 
+#09 09 65 6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 01 00 09 01 00 
+#09 01 00 25 2c 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 
+#57 69 72 65 6c 65 73 73 20 4d 6f 75 73 65 20 53 44 50 20 53 65 72 76 65 
+#72 09 01 01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 73 65 09 02 00 35 03 09 01 00
+
+#04 1124 0100 0011 1002
+#00 01 00 00
+#36 01 ee 
+#09 00 00 0a 00 01 00 00 09 00 01 35 03 19 11 24 09 00 04 35 
+#0d 35 06 19 01 00 09 00 11 35 03 19 00 11 09 00 05 35 03 19 10 02 
+#09 00 06 35 09 09 65 6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 11 24 
+#09 01 01 09 00 0d 35 0f 35 0d 35 06 19 01 00 09 00 13 35 03 19 00 11 09 01 
+#00 25 21 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 57 69 72 65 6c 
+#65 73 73 20 4d 6f 75 73 65 09 01 01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 
+#73 65 09 01 02 25 08 4c 6f 67 69 74 65 63 68 09 02 01 09 01 11 09 02 02 08 80 09 02 
+#03 08 21 09 02 04 28 01 09 02 05 28 01 09 02 06 35 fc 35 fa 08 22 25 f6 05 01 09 02 a1 01 
+#85 02 09 01 a1 00 05 09 19 01 29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30 09 31 16 01 
+#f8 26 ff 07 75 0c 95 02 81 06 09 38 15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75 08 95 01 81 
+#06 c0 c0 05 0c 09 01 a1 01 85 03 05 06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06 00 ff 09 01 
+#a1 01 85 10 75 08 95 06 15 00 26 ff 00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1 01 85 11 75 
+#08 95 13 15 00 26 ff 00 09 02 81 00 09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95 08 05 07 
+#19 e0 29 e7 15 00 25 01 81 02 95 01 75 08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95 01 
+#75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07 19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 
+#15 00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95 01 75 06 81 03 c0 09 02 07 35 08 35 
+#06 09 04 09 09 01 00 09 02 09 28 01 09 02 0a 28 01 09 02 0c 09 1f 40 09 02 0d 28 00 09 
+#02 0e 28 01 09 02 0f 09 00 12 09 02 10 09 00 00
+
+#04 1200 0100 0001 1002
+#00 01 00 01
+#36 00 ad 
+#09 00 00 0a 00 01 00 01 09 00 01 35 03 19 12 00 09 00 04 35 0d 35 06 19 01 
+#00 09 00 01 35 03 19 00 01 09 00 05 35 03 19 10 02 09 00 06 35 09 09 65 
+#6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 12 00 09 01 00 09 01 00 
+#25 2c 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 57 69 72 
+#65 6c 65 73 73 20 4d 6f 75 73 65 20 50 6e 50 20 53 65 72 76 65 72 09 01 
+#01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 73 65 09 02 00 09 01 03 09 
+#02 01 09 04 6d 09 02 02 09 b0 16 09 02 03 09 12 03 09 02 04 28 01 09 02 05 09 00 02 00
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/mouse.dat.bak
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/mouse.dat.bak	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/mouse.dat.bak	(working copy)
@@ -0,0 +1,1198 @@
+mem_patch00:06
+mem_patch03:08
+mem_patch04:40
+mem_patch09:05
+mem_patch0a:02
+mem_patch0b:02
+mem_patch10:20
+mem_patch11:06
+mem_patch14:82
+mem_patch15:20
+mem_patch16:06
+mem_patch18:10
+mem_patch19:08
+mem_patch1c:48
+mem_patch1d:1e
+mem_patch20:20
+mem_patch27:02
+mem_patch28:08
+mem_patch29:04
+mem_patch2a:80
+mem_patch2b:02
+mem_patch2c:c8
+mem_patch2d:04
+mem_patch2e:80
+mem_patch30:05
+mem_patch31:31
+mem_patch3f:04
+
+
+#debug
+#mem_patch2f:40
+#mem_patch37:40
+#mem_patch3e:c0
+
+
+mem_device_option:43
+mem_lpm_mode:01
+mem_lpm_mult:20
+mem_lpm_mult_init:20
+#mem_lpm_interval:00 00
+
+mem_mouse_function_enable:
+#bit0 MOUSE_ENABLE_USB
+#bit1 MOUSE_ENABLE_24G
+#bit2 MOUSE_ENABLE_SPI2
+#bit3 MOUSE_ENABLE_FLASH
+#bit4 MOUSE_ENABLE_EEPROM
+#bit5 MOUSE_ENABLE_STATUE_UP_THREE_LED
+#bit6 MOUSE_ENABLE_STATUE_UP
+#bit7 MOUSE_ENABLE_DPI_LED_BLINK
+0a
+#bit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE
+#bit1 MOUSE_ENABLE_2K_EEPROM
+#bit2 MOUSE_ENABLE_ADC
+#bit3 MOUSE_ENABLE_INIT_DELAY
+#bit4 MOUSE_ENABLE_DISCOVERY_SENSOR_LED
+#bit5 MOUSE_ENABLE_AUTO_24G_PARING
+#bit6 MOUSE_ENABLE_WAKEUP_FROM_POWER
+#bit7 MOUSE_ENABLE_GPIO_CONTROL_ADC_SENSOR
+45
+
+mem_app_connection_options:06
+mem_lap:20 51 17 01 20 20
+mem_local_name_length:
+'BT3.0 Mouse
+mem_sniff_param_interval:
+0e 00 
+01 00 ##mem_sniff_param_attempt:01 00
+02##mem_sniff_param_timeout:00 00
+
+
+mem_unsniff2sniff_timer:0a
+mem_ssp_mode_flag:03
+mem_ssp_enable:01
+##mem_all_uuid_16bits:
+##06
+##03#Type: Complete list of 16-bit UUIDs
+##0011 0100 1002 1124  1200  0001
+mem_all_uuid_128bits:00
+mem_ptt:00
+
+
+mem_sp_iocap_local:03 00 04
+mem_ui_profile_supported:01
+mem_eir_enable:01
+
+mem_le_adv_data_len:1f
+mem_le_adv_data:
+#flag 
+02 01 05
+
+#uuid
+03 03 12 18
+
+#appearance
+03 19 c2 03
+
+mem_le_adv_swift_pair:
+#microsoft swift pair
+06 ff 06 00 03 00 80
+#name
+'\09BT5.0 Mouse
+
+mem_le_scan_data_len:1f
+mem_le_scan_data:
+#name
+'\09BT5.0 Mouse
+
+
+#max 20bytes, att list data rom limits
+mem_le_name_len:
+'BT5.0 Mouse
+
+
+mem_le_interval_min:
+07 00 #min interval
+07 00 #max interval
+20 00 #latency
+2c 01 #timeout
+
+
+mem_le_adv_interval:00 00
+mem_le_adv_type:00 
+mem_le_adv_own_addr_type:00
+mem_le_adv_channel_map:07 
+
+mem_le_lap:8e b1 3a 0e 8e ed
+
+mem_le_transmit_window:50
+
+mem_le_notify_handle:15 00
+mem_le_pairing_handle:29 00
+
+
+mem_discovery_timeout:b0 04#2min
+mem_mouse_direct_timeout:96 00#15s
+mem_mouse_no_data_timeout:70 17#10min
+
+mem_flash_ncs_gpio:0a
+mem_spi_ncs_gpio:ff
+mem_ui_button_gpio:ff
+mem_ui_button_timeout:1e
+mem_bt_ui_button_timeout:01
+
+mem_device_number:02 #max device number
+mem_24g_device_number:02 #devie 2 :24g mode
+mem_adc_config_flag:00 #0 vinlpm 1 hvin 2 gpio
+mem_adc_channel:32 #gpio5
+mem_mouse_vdd_full_vol:72 01#3.7V
+29 01#mem_mouse_vdd_empty_vol:5a 00# 3.0V
+3a 01#mem_mouse_vdd_low_vol:64 00  #3.3v
+mem_adc_read_timer:0a
+
+mem_config_sensor_type:00
+02 #mem_config_sensor_motion:02
+06 #mem_lbutton_gpio:04
+14 #mem_rbutton_gpio:1b
+08 #mem_mbutton_gpio:17
+06 #mem_bk_button_gpio:ff
+14 #mem_fw_button_gpio:ff
+08 #mem_dpi_button_gpio:06
+1b #mem_whee_a_data_gpio:02
+1c #mem_whee_b_data_gpio:03
+ff #mem_whee_ta_data_gpio:ff
+ff #mem_whee_tb_data_gpio:ff
+05 #mem_config_bt_button_gpio:ff
+05 #mem_config_select_device_button_gpio:ff
+ff #mem_config_paraing_led_gpio:ff
+ff #mem_config_low_voltage_alarm_gpio:08
+ff #mem_config_device1_led_gpio:08
+ff #mem_config_device2_led_gpio:ff
+ff #mem_config_device3_led_gpio:ff
+ff #mem_sensor_data_gpio:18
+ff #mem_dpi_led_gpio:08
+40 #mem_config_function_enable:04
+00 #mem_config_sensor_angle:00
+ff #mem_select_sensor_angle_gpio:ff
+ff #mem_select_adc_gpio:ff
+
+mem_eeprom_wp_gpio:ff
+mem_sensor_reset_gpio:ff
+mem_sensor_squal_reg:07# 07:3205         	06:3610
+mem_usb_offline_check_gpio:ff
+#mem_wire_usb_interval:19 #128
+
+#mem_config_function_enable:
+#bit0 ENABLE_BT_DISCOVERY_BY_GPIO_LED
+#bit1 ENABLE_MODE_LED
+#bit2 ENABLE_LOW_VOLTAGE_LED
+#bit3 ENABLE_DEVICE_LED
+#bit4 ENABLE_BT_BUTTON
+#bit5 ENABLE_SELECT_DEVICE_BY_GPIO_BUTTON
+#bit6 ENABLE_SELECT_DEVICE_BY_SWITCH
+#bit7 ENABLE_SENSOR_MOTION_PIN
+#40
+
+mem_mouse_dpi_seting:
+01##mem_320x_dpi_1
+02##mem_320x_dpi_2
+03##mem_320x_dpi_3
+04##mem_320x_dpi_4
+
+#15##mem_3212_dpi_1#800
+#1a##mem_3212_dpi_2#1000
+#2a##mem_3212_dpi_3#1600
+#3f##mem_3212_dpi_4#2400
+
+#04##mem_3610_dpi_1
+#05##mem_3610_dpi_2
+#07##mem_3610_dpi_3
+#08##mem_3610_dpi_4
+
+mem_mouse_3065xy_dpi_seting:
+00
+01
+02
+03
+
+#mem_sensor_8650_init:
+#09 5a
+#ff 27
+#ab 40
+#be d1
+#a0 41
+#a1 41
+#a5 84
+#a7 ff
+#b5 d0
+#b6 00
+#ff 00
+#09 00
+#ff
+
+mem_sensor_ka8_init:
+09 5a
+5b 9a
+0d 12
+0e c5
+53 48
+09 00
+ff
+
+mem_sensor_8009_init:
+09 5a
+06 02
+09 69
+0d 48
+0e 9f
+0f ba
+09 00
+ff
+
+mem_sensor_poweron_init:
+06 80
+09 5a
+0b f3
+09 00
+ff
+
+mem_ui_led_struct_ptr:mem_mouse_led_type
+mem_ui_led_struct_num:01
+
+
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_mouse_le_uuid_sup:
+
+#Primary service GAP ------
+01 00 02 00 28 02 00 18 
+
+#Device name
+02 00 02 03 28 01 0a
+03 00 02 00 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+#Appearance
+04 00 02 03 28 01 02
+05 00 02 01 2a 02 c2 03 #3c2=hid mouse
+
+#Peripheral Preferred Connection Parameters
+06 00 02 03 28 01 02
+07 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary service GATT ------
+08 00 02 00 28 02 01 18
+#Service changed
+09 00 02 03 28 01 20
+0a 00 02 05 2a 00
+#Client Characteristic Configuration
+0b 00 02 02 29 02 00 00
+#Primary service device information ------
+0c 00 02 00 28 02 0a 18
+#Manufacturer Name
+0d 00 02 03 28 01 02
+0e 00 02 29 2a 06 59 69 43 68 69 70
+#PNP id
+0f 00 02 03 28 01 02
+10 00 02 50 2a 07 02 35 12 22 aa 01 00
+
+#Primary service battery ------
+#11 00 02 00 28 02 0f 18
+#Battery level
+#12 00 02 03 28 01 02
+#13 00 02 19 2a 01 33
+#Client Characteristic
+#14 00 02 02 29 02 00 00
+
+#Primary service hid ------
+11 00 02 00 28 02 12 18
+
+#Protocol mode
+12 00 02 03 28 01 06
+13 00 02 4e 2a 01 01
+
+#Hid report
+14 00 02 03 28 01 1a
+15 00 02 4d 2a 07 00 00 00 00 00 00 00
+16 00 02 02 29 02 00 00
+17 00 02 08 29 02 01 01 # report id=1, type=1 input
+
+18 00 02 03 28 01 12 
+19 00 02 4d 2a 08 00 00 00 00 00 00 00 00
+1a 00 02 02 29 02 00 00
+1b 00 02 08 29 02 02 01
+
+1c 00 02 03 28 01 12 
+1d 00 02 4d 2a 02 00 00
+1e 00 02 02 29 02 00 00
+1f 00 02 08 29 02 03 01
+
+20 00 02 03 28 01 0e
+21 00 02 4d 2a 02 00 00
+22 00 02 08 29 02 02 02
+
+#Report map
+23 00 02 03 28 01 0a
+24 00 02 4b 2a a0 # length 160 bytes
+
+05 01 # Usage Page(Generic Desktop)
+09 02 # Usage(Mouse)
+a1 01 # Collection(Application)
+85 01 # Report ID(1)
+09 01 # Usage(Pointer)
+a1 00 # Collection(Physical)
+05 09 # Usage Page(Buttons)
+19 01 # Usage Minimum(1)
+29 08 # Usage Maximum(8)
+15 00 # Logical Minimum(0).
+25 01 # Logical Maximum(1)
+75 01 # Report Size(1)
+95 08 # Report Count(8)
+81 02 # Input(Data Variable Absolute)
+
+05 01 # Usage Page(Generic Desktop)
+09 30 # Usage(X)
+09 31 # Usage(Y)
+16 01 f8 # Logical Minimum(-2047)
+26 ff 07 # Logical Maximum(2047)
+75 10 # Report Size(16)
+95 02 # Report Count(2)
+81 06 # Input(Data Variable Relative)
+
+09 38 # Usage(Wheel)
+15 81 # Logical Minimum(-127)
+25 7f # Logical Maximum(127)
+75 08 # Report Size(8)
+95 01 # Report Count(1)
+81 06 # Input(Data Variable Relative)
+05 0c # Usage Page(Consumer)
+0a 38 02 # Usage(AC Pan)
+95 01 # Report Count(1)
+81 06 # Input(Data Variable Relative)
+c0 # End Collection
+c0 # End Collection
+
+#66
+05 01
+09 06
+a1 01
+85 02
+75 01
+95 08
+05 07
+19 e0
+29 e7
+15 00
+25 01
+81 02
+95 01 
+75 08
+81 03 
+95 05
+75 01
+05 08
+19 01
+29 05  
+91 02 
+95 01  
+75 03  
+91 03
+95 06
+75 08
+15 00
+26 ff 00
+05 07
+19 00
+29 ff
+81 00
+c0
+
+#25
+05 0c
+09 01
+a1 01
+85 03
+19 00
+2a ff 03
+15 00
+26 ff 03
+95 01
+75 10
+81 00
+c0
+
+#Boot mouse input report
+25 00 02 03 28 01 1a
+26 00 02 33 2a 08 00 00 00 00 00 00 00 00
+
+#Client Characteristic
+27 00 02 02 29 02 01 00
+
+#Hid information
+28 00 02 03 28 01 02
+29 00 02 4a 2a 04 01 01 00 03
+
+#Hid control point
+2a 00 02 03 28 01 04
+2b 00 02 4c 2a 00
+
+#End of Attribute list
+00 00
+  
+#24g init
+mem_24g_mode:01#tx
+mem_24g_data_type:01        #mouse 1,kb 2
+mem_24g_max_retry:04#max tx retry
+mem_24g_no_ack:00#with ack
+mem_24g_rx_window:c0 12     #400us
+mem_24g_interval:19
+mem_24g_interval_min:19
+mem_24g_interval_max:1c
+mem_24g_ch_map1:00 13 2c 42
+mem_24g_ch_map2:06 15 36 48
+mem_24g_ch_map3:0f 1a 3a 4c
+mem_24g_ch_map4:11 23 31 4d
+mem_24g_pairing_sm:ff
+mem_24g_paring_addr:20 15 10 05
+mem_24g_allpowerful_addr:0f 0f 0f 0f 0f 0f
+mem_24g_common_temp:00 00 00 00 00 00 00 00 00 00
+mem_24g_enter_hibernate:80 4f 12
+
+
+mem_customer_key_press:
+##00 08 00 07 00 00 00 00 00#WIN+D
+00 05 00 04 00 00 00 00 00#CTRL+ALT+A
+##00 00 00 46 00 00 00 00 00#PrtSC
+mem_customer_key_release:
+00 00 00 00 00 00 00 00 00
+
+
+mem_device_flag:
+ff
+ff
+ff ff ff ff ff ff
+#mem_device2_type:
+#34
+#11 22 33 44 55 66
+#mem_device3_type:
+#34
+#11 22 33 44 55 66
+
+
+mem_flash_base:00 50 00
+#mem_eeprom_base:90 1f
+#mem_eeprom_block_size:80
+mem_reconn_times_init:00
+mem_bt_discovey_button_statue:01#default: button up
+mem_empty_count:03
+
+mem_mouse_24g_addr_init:ff ff ff ff ff ff
+
+
+mem_mouse_multi_led_gpio:1d
+mem_mouse_multi_led_on_timer_init:14
+mem_mouse_multi_led_blink_timer_init:03
+
+#zcode
+mem_zcode_current_number:ff
+mem_xip_flash_offset:00 00 00
+mem_zcode_head:20 20 00 40
+
+mem_mouse_le_fast_conn_enable_timer:0a
+
+#mem_mouse_button_select_device_timer_init:1e
+#mem_mouse_dpi_button_state:01
+
+#mem_mouse_long_button_select_device:ff
+
+#yichip sdp
+#04 0011 0100 1002 1124
+#00 01 00 00
+#36 01 6d
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#11
+#24
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#11
+#35
+#03
+#19
+#00
+#11
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#06
+#35
+#09
+#09
+#65
+#6e
+#09
+#00
+#6a
+#09
+#01
+#00
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#11
+#24
+#09
+#01
+#00
+#09
+#00
+#0d
+#35
+#0f
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#13
+#35
+#03
+#19
+#00
+#11
+#09
+#01
+#00
+#25
+#16
+#59
+#69
+#43
+#68
+#69
+#70
+#20
+#42
+#6c
+#75
+#65
+#74
+#6f
+#6f
+#74
+#68
+#20
+#4d
+#6f
+#75
+#73
+#65
+#09
+#01
+#01
+#25
+#05
+#4d
+#6f
+#75
+#73
+#65
+#09
+#01
+#02
+#25
+#06
+#59
+#69
+#43
+#68
+#69
+#70
+#09
+#02
+#00
+#09
+#01
+#00
+#09
+#02
+#01
+#09
+#01
+#11
+#09
+#02
+#02
+#08
+#80
+#09
+#02
+#03
+#08
+#21
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#28
+#01
+#09
+#02
+#06
+#35
+#81
+#35
+#7f
+#08
+#22
+#25
+#7b
+#05
+#01
+#09
+#02
+#a1
+#01
+#85
+#02
+#09
+#01
+#a1
+#00
+#05
+#09
+#19
+#01
+#29
+#08
+#15
+#00
+#25
+#01
+#75
+#01
+#95
+#08
+#81
+#02
+#05
+#01
+#09
+#30
+#09
+#31
+#16
+#01
+#f8
+#26
+#ff
+#07
+#75
+#10
+#95
+#02
+#81
+#06
+#09
+#38
+#15
+#81
+#25
+#7f
+#75
+#08
+#95
+#01
+#81
+#06
+#05
+#0c
+#0a
+#38
+#02
+#75
+#08
+#95
+#01
+#81
+#06
+#c0
+#c0
+#05
+#0c
+#09
+#01
+#a1
+#01
+#85
+#03
+#75
+#10
+#95
+#02
+#15
+#01
+#26
+#8c
+#02
+#19
+#01
+#2a
+#8c
+#02
+#81
+#60
+#c0
+#06
+#00
+#ff
+#09
+#01
+#a1
+#01
+#85
+#10
+#75
+#08
+#95
+#06
+#15
+#00
+#26
+#ff
+#00
+#09
+#01
+#81
+#00
+#09
+#01
+#91
+#00
+#c0
+#09
+#02
+#07
+#35
+#08
+#35
+#06
+#09
+#04
+#09
+#09
+#01
+#00
+#09
+#02
+#08
+#28
+#00
+#09
+#02
+#09
+#28
+#01
+#09
+#02
+#0a
+#28
+#01
+#09
+#02
+#0b
+#09
+#01
+#00
+#09
+#02
+#0c
+#09
+#1f
+#40
+#09
+#02
+#0d
+#28
+#00
+#09
+#02
+#0e
+#28
+#01
+#09
+#02
+#0f
+#09
+#00
+#12
+#09
+#02
+#10
+#09
+#00
+#00
+#
+#04 1002 1200 0100 0001
+#00 01 00 01
+#36 00 5a
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#01
+#09
+#00
+#01
+#35
+#03
+#19
+#12
+#00
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#00
+#01
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#12
+#00
+#09
+#01
+#00
+#09
+#02
+#00
+#09
+#01
+#03
+#09
+#02
+#01
+#09
+#04
+#6d
+#09
+#02
+#02
+#09
+#b0
+#16
+#09
+#02
+#03
+#09
+#01
+#29
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#09
+#00
+#02
+#00
+#00
+#
+#01 0001
+#00 01 00 01
+#36 00 5a
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#01
+#09
+#00
+#01
+#35
+#03
+#19
+#12
+#00
+#09
+#00
+#04
+#35
+#0d
+#35
+#06
+#19
+#01
+#00
+#09
+#00
+#01
+#35
+#03
+#19
+#00
+#01
+#09
+#00
+#05
+#35
+#03
+#19
+#10
+#02
+#09
+#00
+#09
+#35
+#08
+#35
+#06
+#19
+#12
+#00
+#09
+#01
+#00
+#09
+#02
+#00
+#09
+#01
+#00
+#09
+#02
+#01
+#09
+#05
+#ac
+#09
+#02
+#02
+#09
+#02
+#39
+#09
+#02
+#03
+#09
+#00
+#44
+#09
+#02
+#04
+#28
+#01
+#09
+#02
+#05
+#09
+#00
+#02
+#
+#03 1101 0003 0100
+#00 01 00 02
+#36 00 2f
+#09
+#00
+#00
+#0a
+#00
+#01
+#00
+#02
+#09
+#00
+#01
+#35
+#03
+#19
+#11
+#01
+#09
+#00
+#04
+#35
+#0c
+#35
+#03
+#19
+#01
+#00
+#35
+#05
+#19
+#00
+#03
+#08
+#01
+#09
+#01
+#00
+#25
+#09
+#53
+#50
+#50
+#20
+#73
+
+mem_sdp_updata_list:
+09020f 090012
+090210 090000
+
+mem_keyboard_hid_descriptor:
+# hid descriptor 48byte
+0501 # Usage Page(Generic Desktop)
+0906 # Usage(Keyboard)
+a101 # Collection(Application)
+8501 # Report ID(1)
+7501 # Report Size(1)
+9508 # Report Count(8)
+0507 # Usage Page(Keyboard/Keypad)
+19e0 # Usage Minimum(224)
+29e7 # Usage Maximum(231)
+1500 # Logical Minimum(0)
+2501 # Logical Maximum(1)
+8102 # Input(Data Variable Absolute) ; Modifier byte
+9501 # Report Count(1)
+7508 # Report Size(8)
+8103 # Input(Constant Variable Absolute) ; 
+#9505 # Report Count(5)
+#7501 # Report Size(1)
+#0508 # Usage Page(LEDs)
+#1901 # Usage Minimum(1)
+#2905 # Usage Maximum(5)
+#9102 # Output(Data Variable Absolute) ; LED report
+#9501 # Report Count(1)
+#7503 # Report Size(3)
+#9103 # Output(Constant Variable Absolute) ; 
+9506 # Report Count(6)
+#7508 # Report Size(8)
+1500 # Logical Minimum(0)
+25ff # Logical Maximum(255)
+0507 # Usage Page(Keyboard/Keypad)
+1900 # Usage Minimum(0)
+29ff # Usage Maximum(255)
+8100 # Input(Data Array) ; Key arrarys 6 bytes
+c0 # End Collection
+
+#logi sdp
+#04 1000 0100 0001 1002
+#00 00 00 00
+#36 00 92 
+#09 00 00 0a 00 00 00 00 09 00 01 35 03 19 10 00 09 00 04 35 0d 35 06 
+#19 01 00 09 00 01 35 03 19 00 01 09 00 05 35 03 19 10 02 09 00 06 35 
+#09 09 65 6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 01 00 09 01 00 
+#09 01 00 25 2c 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 
+#57 69 72 65 6c 65 73 73 20 4d 6f 75 73 65 20 53 44 50 20 53 65 72 76 65 
+#72 09 01 01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 73 65 09 02 00 35 03 09 01 00
+
+#04 1124 0100 0011 1002
+#00 01 00 00
+#36 01 ee 
+#09 00 00 0a 00 01 00 00 09 00 01 35 03 19 11 24 09 00 04 35 
+#0d 35 06 19 01 00 09 00 11 35 03 19 00 11 09 00 05 35 03 19 10 02 
+#09 00 06 35 09 09 65 6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 11 24 
+#09 01 01 09 00 0d 35 0f 35 0d 35 06 19 01 00 09 00 13 35 03 19 00 11 09 01 
+#00 25 21 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 57 69 72 65 6c 
+#65 73 73 20 4d 6f 75 73 65 09 01 01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 
+#73 65 09 01 02 25 08 4c 6f 67 69 74 65 63 68 09 02 01 09 01 11 09 02 02 08 80 09 02 
+#03 08 21 09 02 04 28 01 09 02 05 28 01 09 02 06 35 fc 35 fa 08 22 25 f6 05 01 09 02 a1 01 
+#85 02 09 01 a1 00 05 09 19 01 29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30 09 31 16 01 
+#f8 26 ff 07 75 0c 95 02 81 06 09 38 15 81 25 7f 75 08 95 01 81 06 05 0c 0a 38 02 75 08 95 01 81 
+#06 c0 c0 05 0c 09 01 a1 01 85 03 05 06 09 20 15 00 26 64 00 75 08 95 01 81 02 c0 06 00 ff 09 01 
+#a1 01 85 10 75 08 95 06 15 00 26 ff 00 09 01 81 00 09 01 91 00 c0 06 00 ff 09 02 a1 01 85 11 75 
+#08 95 13 15 00 26 ff 00 09 02 81 00 09 02 91 00 c0 05 01 09 06 a1 01 85 04 75 01 95 08 05 07 
+#19 e0 29 e7 15 00 25 01 81 02 95 01 75 08 81 03 95 05 75 01 05 08 19 01 29 05 91 02 95 01 
+#75 03 91 03 95 06 75 08 15 00 26 ff 00 05 07 19 00 29 ff 81 00 c0 05 0c 09 01 a1 01 85 05 
+#15 00 25 01 75 01 95 02 0a 25 02 0a 24 02 81 02 95 01 75 06 81 03 c0 09 02 07 35 08 35 
+#06 09 04 09 09 01 00 09 02 09 28 01 09 02 0a 28 01 09 02 0c 09 1f 40 09 02 0d 28 00 09 
+#02 0e 28 01 09 02 0f 09 00 12 09 02 10 09 00 00
+
+#04 1200 0100 0001 1002
+#00 01 00 01
+#36 00 ad 
+#09 00 00 0a 00 01 00 01 09 00 01 35 03 19 12 00 09 00 04 35 0d 35 06 19 01 
+#00 09 00 01 35 03 19 00 01 09 00 05 35 03 19 10 02 09 00 06 35 09 09 65 
+#6e 09 00 6a 09 01 00 09 00 09 35 08 35 06 19 12 00 09 01 00 09 01 00 
+#25 2c 4c 6f 67 69 74 65 63 68 20 42 6c 75 65 74 6f 6f 74 68 20 57 69 72 
+#65 6c 65 73 73 20 4d 6f 75 73 65 20 50 6e 50 20 53 65 72 76 65 72 09 01 
+#01 25 0f 42 6c 75 65 74 6f 6f 74 68 20 4d 6f 75 73 65 09 02 00 09 01 03 09 
+#02 01 09 04 6d 09 02 02 09 b0 16 09 02 03 09 12 03 09 02 04 28 01 09 02 05 09 00 02 00
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/remote_car.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/remote_car.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/remote_car.dat	(working copy)
@@ -0,0 +1,106 @@
+mem_device_option:10
+
+
+mem_spi_ncs_gpio:ff
+mem_ui_button_gpio:ff
+mem_ui_button_timeout:14
+mem_ui_button_last_state:01
+
+mem_remote_car_queue_each_size:0f 06
+
+mem_queue_ptr:mem_remote_car_queue_each_size
+
+mem_lpm_mode:00
+mem_lpm_overhead:06
+mem_lpm_mult_timeout:02
+mem_remote_car_hard_soft_switch:00
+
+mem_ui_led_struct_ptr:mem_remote_style_led_type
+mem_ui_led_struct_num:01
+
+mem_remote_style_blink_count:ff
+mem_remote_style_struct_led_gpio:1b
+mem_remote_style_on_time:96 02
+mem_remote_style_off_time:3a 07
+
+mem_remote_car_led_num:01
+mem_remote_car_led_map:
+1b
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ 
+mem_power_param_ptr:mem_remote_car_soft_power
+mem_remote_car_power_off_timeout:0c 0c
+
+mem_keyscan_ptr:mem_remote_car_keyscan
+mem_remote_car_key_num:07
+mem_remote_car_key_conf0:
+#0
+03
+#1
+04
+#2
+05
+#3
+06
+#4
+02
+#5
+07
+#6
+17
+
+
+mem_remote_car_config_soft_switch_enable:00
+mem_remote_car_config_connect_led_gpio:ff
+mem_remote_car_config_soft_switch_gpio:19
+mem_remote_car_config_key_map:00				#00:TEN shape	01:L+R shape
+mem_remote_car_config_layout:00					#00:F_B_MOTOR	02:L_R_MOTOR
+mem_remote_car_config_check_way:00				#00:key  01:rocker
+mem_remote_car_config_timeout_shutdown_enable:00	#00:don't shutdown        	;01:timeout to shutdown
+
+mem_current_vdd_value_default_mid_x:55 4e
+mem_current_vdd_value_default_mid_y:55 4e
+mem_current_vdd_default_range:00 07
+
+mem_adc_config_flag:02
+
+mem_remote_car_24g_motor_packet:       0c        5a 6b 04 00 06 00 0a 00 0a 00 0a 00  
+mem_remote_car_24g_fire_packet:08 5a 6b 06 00 02 00 00 00
+
+mem_remote_car_no_data_timeout:b8 0b
+
+mem_lap:01 02 03 04 05 06
+
+mem_tx_power:01#0dbm
+mem_250k_freq_enable:00
+mem_24g_common_temp:00 00 00 00 00 00 00 00 00 00
+mem_24g_head_ptr:mem_24g_RC_head_ptr
+mem_24g_RC_head_ptr+394:4#offset_24g_pair_txpower
+mem_24g_RC_head_ptr+146:20 15 10 05#offset_24g_paring_addr
+mem_24g_RC_head_ptr+151:00 13 2c 42#offset_24g_ch_map1
+mem_24g_RC_head_ptr+155:06 15 36 48#offset_24g_ch_map2
+mem_24g_RC_head_ptr+159:0f 1a 3a 4c#offset_24g_ch_map3
+mem_24g_RC_head_ptr+163:11 23 31 4d#offset_24g_ch_map4
+mem_24g_RC_head_ptr+195:00#offset_24g_no_ack
+mem_24g_RC_head_ptr+205:01#offset_24g_mode
+mem_24g_RC_head_ptr+135:01#offset_24g_data_type 1ms 2kb
+mem_24g_RC_head_ptr+137:c0 12#offset_24g_rx_window
+mem_24g_RC_head_ptr+204:04#offset_24g_max_retry
+mem_24g_RC_head_ptr+171:19#offset_24g_interval
+mem_24g_RC_head_ptr+172:19#offset_24g_interval_min
+mem_24g_RC_head_ptr+173:1c#offset_24g_interval_max
+mem_24g_RC_head_ptr+150:ff#offset_24g_pairing_sm
+mem_24g_RC_head_ptr+182:00 48 60 00 00 00 00 00#offset_24g_enter_hibernate
+mem_24g_RC_head_ptr+257:10#offset_power_ctrl_txpwr_level0-5dbm
+mem_24g_RC_head_ptr+256:01#offset_power_ctrl_txpwr_level1 0dbm
+mem_24g_RC_head_ptr+255:02#offset_power_ctrl_txpwr_level2 3dbm
+
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/rtrivr_uuid.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/rtrivr_uuid.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/rtrivr_uuid.dat	(working copy)
@@ -0,0 +1,75 @@
+#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
+mem_le_att_list:
+
+#Primary service GAP ------
+01 00 00 28 02 00 18
+
+#Device name
+02 00 03 28 01 0a
+03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
+
+#Appearance
+04 00 03 28 01 02
+05 00 01 2a 02 c2 03 #3c2=hid mouse
+
+#Peripheral Preferred Connection Parameters
+06 00 03 28 01 02
+07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
+
+#Primary service GATT ------
+08 00 00 28 02 01 18
+
+#Service changed
+09 00 03 28 01 20
+0a 00 05 2a 00
+
+#Client Characteristic Configuration
+0b 00 02 29 02 00 00
+
+#Primary service TX power ------
+0c 00 00 28 02 04 18
+#Characteristic Tx power level
+0d 00 03 28 01 06
+0e 00 07 2a 01 00
+
+#Primary service Immediate alert ------
+0f 00 00 28 02 02 18
+#Characteristic Alert level
+10 00 03 28 01 04
+11 00 06 2a 01 00
+
+#Primary service UUID:f003 ------
+12 00 00 28 02 03 f0
+#Characteristic UUID:f803
+13 00 03 28 01 04
+14 00 03 f8 01 00
+
+
+#Primary service Link loss alert ------
+15 00 00 28 02 03 f0
+#Characteristic Alert level
+16 00 03 28 01 0a
+17 00 06 2a 01 00
+
+#Primary service UUID:f002 ------
+18 00 00 28 02 02 f0
+#Characteristic UUID:f802
+19 00 03 28 01 12
+1a 00 02 f8 01 28
+1b 00 02 29 02 00 00
+
+#Primary service Battery ------
+1c 00 00 28 02 0f 18
+#Characteristic Battery level
+1d 00 03 28 01 12
+1e 00 19 2a 01 38
+
+
+#End of Attribute list
+00 00
+
+mem_le_adv_data_len:1b
+mem_le_adv_data:0c 09 52 74 72 69 76 72 5f 52 36 32 31 03 19 40 02 02 01 05 02 0a 00 03 03 00 f0
+mem_le_scan_data_len:00
+mem_le_adv_param:00 08 00 08 00 01 00 00 00 00 00 00 00 07 00
+mem_le_adv_enable:01
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/shutter.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/shutter.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/shutter.dat	(working copy)
@@ -0,0 +1,229 @@
+
+
+mem_shutter_bluetooth_type:
+01
+
+
+mem_le_lap:72 31 20 98 07 2a
+mem_le_name_len:
+'Shutter 1021s
+
+mem_lap:21 00 24 00 20 00
+mem_local_name_length:#0b
+#mem_local_name:
+'ZRP Shutter
+
+mem_classic_shutter_random_mac_offset_addr:
+30 00
+
+mem_shutter_config_eeprom_offset_addr:
+00 00
+
+mem_shutter_config_enable:
+00
+
+mem_shutter_config_otp_base_address:
+fb 05
+
+mem_shutter_config_size:20
+
+mem_shutter_config_user_otp_address:
+00 00
+#da 05
+
+mem_key0_press:
+01 00
+mem_key0_release:
+06 00
+
+mem_key1_press:
+01 00
+mem_key1_release:
+06 00
+
+mem_key2_press:
+07 00
+mem_key2_release:
+08 00
+
+mem_ui_button_gpio:ff
+mem_shutter_hard_soft_switch_case:00
+mem_shutter_soft_switch_button_gpio:
+08
+mem_power_param_ptr:
+mem_shutter_soft_switch_power_state
+mem_shutter_soft_switch_power_state:
+00 #mem_shutter_soft_switch_power_state
+14 #mem_shutter_soft_switch_poweron_time
+20 #mem_shutter_soft_switch_poweroff_time
+
+
+mem_lpm_mode:01
+mem_lpm_interval:00 01
+mem_lpm_overhead:08
+mem_lpm_mult:05
+mem_lpm_mult_timeout:02
+
+mem_shutter_config_select_gpio1:09 0a 0b
+
+mem_sniff_param_interval:30 00
+01
+00
+mem_unsniff2sniff_timer:0a
+
+mem_ble_shutter_reconn_blink_on_time:
+96 00
+96 00
+
+mem_ble_shutter_discovery_blink_on_time:
+96 02
+96 02
+
+
+mem_ble_shutter_interval_min_new:
+10 00
+20 00
+02 00
+2c 01
+
+mem_ui_led_struct_num:01
+mem_ui_led_struct_ptr:mem_shutter_led_struct_app_led
+
+mem_shutter_led_struct_app_led:
+00		#type:stop blink
+00		#blink count:no blink
+1b		#led gpio number:GPIO01
+a0 01	#led blink light time
+a0 01	#led blink dark time
+00 00	#call back function when light time
+00 00	#call back function when dark time
+
+#mem_shutter_power_off_led_style
+01		#type:start blink
+07		#blink count:no blink
+1b		#led gpio number:GPIO01
+a0 03	#led blink light time
+a0 03	#led blink dark time
+00 00	#call back function when light time
+00 00	#call back function when dark time
+
+
+mem_ble_shutter_reconn_dav_interval:10 00	#100ms
+mem_ble_shutter_discovery_adv_interval:40 01
+mem_le_adv_interval:40 01 
+mem_ble_shutter_reconn_timeout:50 00		#8s
+
+mem_device_option:09
+mem_le_adv_channel_map:07 
+mem_le_adv_enable:00
+
+mem_classic_shutter_discovery_timeout:
+00 FF	#mem_classic_shutter_discovery_timeout
+00 FF	#mem_classic_shutter_connect_timeout
+00 FF	#mem_ble_shutter_discovery_timeout
+00 FF	#mem_ble_shutter_connect_timeout
+	
+
+
+mem_queue_ptr: mem_queue_each_size
+
+mem_queue_each_size:
+01
+20
+
+
+mem_le_adv_data_len:1f
+mem_le_adv_data:
+02 01 05
+03 02 12 18
+03 19 c1 03
+mem_le_scan_data_len:1f
+mem_le_scan_data:
+0d 09 56 30 2d 53 68 75 74 74 65 72 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+
+
+
+mem_keyscan_ptr:mem_shutter_keyscan
+mem_shutter_key_num:02
+mem_shutter_key_conf0:
+#0
+18
+#1
+05
+#2
+0d
+
+##############NVRAM CONFIG##############
+
+mem_app_connection_options:17
+
+mem_nv_data_ptr:mem_shutter_nv_data
+mem_nv_data_number:05
+
+mem_class: 4025
+
+mem_sp_iocap_local:03 00 04
+mem_ssp_mode_flag:03
+mem_ssp_enable:01
+mem_ui_profile_supported:01
+
+
+mem_ptt:00
+mem_features:
+ff
+ff
+8f
+f8	#openACL3M fe
+9b	#AFHclose 83
+9d
+59
+83
+
+
+#####################################
+
+
+##########BT shutter ################
+
+
+
+
+
+
+
+
+################classic kb val list#######################
+
+################classic kb val list end#######################
+
+################ble kb val list#######################
+
+
+################ble kb val list end#######################
+
+
+##############BLE ATT LIST####################
+
+mem_ui_le_uuid_table:3a 91 #0x913A BLE_SHUTTER_GATT_LIST
+
+
+##############BLE ATT LIST END####################
+
+
+##############BT SDP LIST####################
+
+mem_eir_enable:01
+
+mem_all_uuid_16bits: 
+06
+03#Type: Complete list of 16-bit UUIDs
+1100  0001 0210 2411 0012 0100
+
+mem_all_uuid_128bits:
+00
+
+mem_ui_uuid_table:b8 92 #0x92B8 CLASSIC_SHUTTER_SDP_LIST
+
+##############BT SDP LIST END####################
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/sim.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/sim.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/sim.dat	(working copy)
@@ -0,0 +1,16 @@
+mem_page_window:20 00
+mem_page_to:00 20
+mem_pscan_window:00 02
+mem_iscan_window:00 02
+mem_pscan_interval:00 08
+mem_lap:01 02 03
+mem_lpm_xtalcnt:03 0a 1b af 07
+#mem_lpm_hibernate_switch:08
+mem_fcomp_mul:02
+mem_fcomp_div:24
+
+
+mem_patch00:01
+
+4580:ff
+mem_rf_init_ptr:80 45		
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/spp.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/spp.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/spp.dat	(working copy)
@@ -0,0 +1,206 @@
+#device option
+mem_device_option:04
+
+#spp uuid
+mem_uuid_list:
+04
+10
+02
+12
+00
+01
+00
+00
+01
+00
+01
+00
+01
+36
+00
+5a
+09
+00
+00
+0a
+00
+01
+00
+01
+09
+00
+01
+35
+03
+19
+12
+00
+09
+00
+04
+35
+0d
+35
+06
+19
+01
+00
+09
+00
+01
+35
+03
+19
+00
+01
+09
+00
+05
+35
+03
+19
+10
+02
+09
+00
+09
+35
+08
+35
+06
+19
+12
+00
+09
+01
+00
+09
+02
+00
+09
+01
+03
+09
+02
+01
+09
+05
+ac
+09
+02
+02
+09
+02
+39
+09
+02
+03
+09
+06
+44
+09
+02
+04
+28
+01
+09
+02
+05
+09
+00
+02
+03
+11
+01
+00
+03
+01
+00
+00
+01
+00
+03
+36
+00
+4e
+09
+00
+00
+0a
+00
+01
+00
+03
+09
+00
+01
+35
+03
+19
+11
+01
+09
+00
+02
+0a
+00
+00
+00
+00
+09
+00
+04
+35
+0c
+35
+03
+19
+01
+00
+35
+05
+19
+00
+03
+08
+01
+09
+00
+05
+35
+03
+19
+10
+02
+09
+00
+06
+35
+09
+09
+65
+6e
+09
+00
+6a
+09
+01
+00
+09
+01
+00
+25
+0a
+53
+50
+50
+20
+73
+6c
+61
+76
+65
+00
+00
+00
+01
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/ssp.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/ssp.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/ssp.dat	(working copy)
@@ -0,0 +1,261 @@
+#memk, for reva-c only
+4b00:
+98    
+2f    
+8a    
+42    
+91    
+44    
+37    
+71    
+CF    
+FB   
+C0   
+B5    
+A5    
+DB   
+B5    
+E9    
+5B    
+C2    
+56   
+39    
+F1    
+11    
+F1    
+59    
+A4    
+82    
+3F    
+92    
+D5    
+5E    
+1C    
+AB    
+98    
+AA    
+07    
+D8    
+01   
+5B    
+83   
+12    
+BE    
+85   
+31    
+24    
+C3    
+7D    
+0C    
+55    
+74   
+5D    
+BE    
+72    
+FE    
+B1    
+DE    
+80    
+A7    
+06    
+DC    
+9B    
+74    
+F1    
+9B    
+C1    
+C1    
+69    
+9B    
+E4    
+86    
+47    
+BE    
+EF    
+C6    
+9D    
+C1    
+0F    
+CC    
+A1    
+0C    
+24    
+6F    
+2C    
+E9    
+2D    
+AA    
+84    
+74    
+4A    
+DC    
+A9    
+B0    
+5C    
+DA    
+88    
+F9    
+76    
+52    
+51    
+3E    
+98    
+6D    
+C6    
+31    
+A8    
+C8    
+27   
+03    
+B0    
+C7    
+7F    
+59    
+BF    
+F3    
+0B    
+E0    
+C6    
+47    
+91    
+A7    
+D5    
+51   
+63    
+CA    
+06    
+67    
+29    
+29    
+14    
+85    
+0A    
+B7    
+27    
+38    
+21    
+1B    
+2E    
+FC    
+6D   
+2C    
+4D    
+13    
+0D    
+38    
+53    
+54    
+73    
+0A    
+65    
+BB   
+0A   
+6A    
+76    
+2E   
+C9   
+C2   
+81    
+85   
+2C   
+72    
+92    
+A1    
+E8    
+BF    
+A2    
+4B    
+66    
+1A    
+A8    
+70    
+8B    
+4B    
+C2    
+A3    
+51    
+6C    
+C7    
+19    
+E8    
+92    
+D1    
+24    
+06   
+99   
+D6   
+85   
+35   
+0E    
+F4  
+70    
+A0    
+6A    
+10    
+16    
+C1    
+A4    
+19    
+08   
+6C    
+37    
+1E    
+4C    
+77    
+48    
+27    
+B5    
+BC    
+B0    
+34    
+B3    
+0C    
+1C    
+39    
+4A    
+AA    
+D8   
+4E    
+4F    
+CA   
+9C   
+5B    
+F3   
+6F    
+2E   
+68    
+EE    
+82   
+8F   
+74    
+6F   
+63    
+A5    
+78    
+14    
+78    
+C8    
+84   
+08    
+02   
+C7    
+8C   
+FA   
+FF    
+BE    
+90   
+EB    
+6C    
+50   
+A4   
+F7    
+A3    
+F9    
+BE    
+F2    
+78    
+71    
+C6    
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/test.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/test.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/test.dat	(working copy)
@@ -0,0 +1,40 @@
+mem_patch06:0c
+mem_patch0e:80
+mem_patch10:20
+
+mem_iscan_window:20 00
+mem_iscan_interval:00 03
+mem_pscan_window:12 00
+mem_pscan_interval:00 08
+
+
+
+mem_lap:77 11 00 33 00 00
+mem_le_lap:88 11 00 33 00 00
+mem_device_option:07
+mem_local_name_length:
+'REVB
+
+mem_seqi:7f
+
+mem_lpm_mult:20
+mem_lpm_mult_timeout:03
+mem_lpm_overhead:05
+mem_scan_mode:03
+mem_le_adv_enable:00
+mem_le_scan_enable:00
+
+mem_class:cc 25 00
+mem_features:
+ff
+ff
+8f
+f8	#fe--EDR  F8--BR
+9b	#AFHclose 83
+9d
+59
+83
+
+
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/sched/usb.dat
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/usb.dat	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/sched/usb.dat	(working copy)
@@ -0,0 +1,51 @@
+mem_patch10:20 
+mem_patch11:40
+mem_patch18:10
+mem_patch1f:01
+
+
+#usb initial
+mem_devicedesc+9: 12 24#VID
+mem_devicedesc+11: 12 18#PID
+mem_string0:04 04 03 09 04
+mem_string1:
+'YICHIP
+
+#string length less than 32
+mem_string2:
+'Wireless Mouse
+mem_string3:
+'b120300001
+
+mem_usb_tx_interval:00
+#usb initial end
+
+
+#24g rx init
+mem_tx_power:02
+mem_24g_mode:02#rx
+mem_24g_pair_mode:00
+mem_24g_no_ack:00#no ack
+mem_24g_rx_window:30 75#rx
+mem_24g_hop_interval:2a
+mem_24g_ackpayload_enable:00#ack payload enable
+mem_24g_ch_map1:00 13 2c 42
+mem_24g_ch_map2:06 15 36 48
+mem_24g_ch_map3:0f 1a 3a 4c
+mem_24g_ch_map4:11 23 31 4d
+mem_24g_paring_addr:20 15 10 05
+mem_24g_rx_addr:36 20 04 07
+#24g rx init end
+
+mem_rf_init_data_new:
+# tx power
+4b ba
+55 d0
+56 e0
+57 88
+58 3c
+59 10
+ff
+mem_rf_init_ptr:mem_rf_init_data_new
+
+
Index: XZR_3MODE_2h_PB_WIN_D_NEW/util/crc16.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: XZR_3MODE_2h_PB_WIN_D_NEW/util/crc16.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: XZR_3MODE_2h_PB_WIN_D_NEW/util/crc16.pl
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/crc16.pl	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/crc16.pl	(working copy)
@@ -0,0 +1,27 @@
+$debug = 0;
+$crc = 0xffff;
+$i = 0;
+$offset = 0xffff;
+$source_file = $ARGV[0];
+$offset = $ARGV[1];
+
+open(EEP,"$source_file") or die $!;
+
+while (<EEP>) {    
+	$c = hex();
+
+  if($i >= $offset){
+  	if($debug){printf "%02x\t", $c;}
+  	$crc  = ($crc >> 8) | ($crc << 8);
+		$crc ^= $c & 0xff;
+		$crc ^= ($crc & 0xff) >> 4;
+		$crc ^= $crc << 12;
+		$crc ^= ($crc & 0xff) << 5;
+		$crc &= 0xffff;
+  }
+  $i ++;
+  if($debug){printf "%02x\t", $crc;}
+  printf "%02x\n", $c;
+}
+
+printf "%02x\n%02x\n", (($crc >> 8) & 0xff),($crc & 0xff);
Index: XZR_3MODE_2h_PB_WIN_D_NEW/util/eeprom2fulleeprom.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: XZR_3MODE_2h_PB_WIN_D_NEW/util/eeprom2fulleeprom.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: XZR_3MODE_2h_PB_WIN_D_NEW/util/eeprom2fulleeprom.pl
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/eeprom2fulleeprom.pl	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/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: XZR_3MODE_2h_PB_WIN_D_NEW/util/flash_dat2eeprom_dat.pl
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/flash_dat2eeprom_dat.pl	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/flash_dat2eeprom_dat.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=3;
+	print file_out "00\n02\n";
+	while($j<$length){
+			print file_out "$lines[$j]";
+			$j++;
+	}
+#	print "----- reverse end -----";
+	close(file);
+	close(file_out);
+}
Index: XZR_3MODE_2h_PB_WIN_D_NEW/util/genotp.pl
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/genotp.pl	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/genotp.pl	(working copy)
@@ -0,0 +1,38 @@
+#!/usr/bin/perl
+
+open(FILE,"program.lis") or die $!;
+$page_size = 64;
+$j = $page_size;
+while(<FILE>){
+	if(/^([0-9a-f]+)\s+([0-9a-f]+)/ && hex($1) >= 0x10000) {
+		#print $1,"\n",$j,"\n";
+		if(hex(substr($1,length($1)-4,4)) == 1){
+
+			#print "aaa\n";
+			for(;$j < $page_size;$j++) {
+					print "00\n00\n00\n00\n";
+					#print $j,"\n";
+			}
+			$j = 0;
+		}
+		if($j == 0){
+			print "20\n20\n00\n40\n";
+			$j ++;
+		}
+		for($i = 0;$i < 4;$i++) {
+			print substr($2, $i*2, 2),"\n"; 
+
+		}
+		$j ++;
+		if($j == $page_size){
+			$j = 0;
+		}elsif($j > $page_size){
+			print "Overflow at 0x",$1," !\n";
+			close(FILE);
+			die;
+		}
+
+	}
+}
+#print "codecnt = ",$codecnt,"\n";
+close(FILE);
\ No newline at end of file
Index: XZR_3MODE_2h_PB_WIN_D_NEW/util/memalloc.pl
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/memalloc.pl	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/memalloc.pl	(working copy)
@@ -0,0 +1,74 @@
+#!/usr/bin/perl
+$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;$i < @f;$i++) { $cmalloc[$i] = (); }
+for($i = 0;$i < @f;$i++) { 
+	$_ = $f[$i];
+	$start = 1 if(/^\s*memalloc\s*\(\s*$/);
+	$start = 2 if(/^\s*xmemalloc\s*\(\s*$/);
+	$start = 3 if(/^\s*omemalloc\s*\(\s*$/);
+	$start = 10 + $1 if(/^\s*cmemalloc\s+([0-9])\s*\(\s*$/);
+	if($start) {
+		if(/^\s*([0-9]+)\s+([a-zA-Z0-9_]+)\s*(.*)$/) {
+			if($start == 1) {
+				$str = sprintf "0x%04x %s%s\n", $addr, $2, $3;
+				$addr += $1;
+				$bstr .= $str;
+				$sstr .= $str;
+			} elsif($start == 2) {
+				$str = sprintf "0x%04x %s%s\n", $xaddr, $2, $3;
+				$xaddr += $1;
+				$xstr .= $str;
+			} else {
+				push @ostr, $_;
+			}
+		}
+		if(/^\s*\)\s*$/) {
+			if(@ostr > 0) {
+				if($start == 3) {
+					push @omalloc,[@ostr];
+				} elsif($start > 9) {
+					$j = $start - 10;
+					push @{$cmalloc[$j]},@ostr;
+				} 
+			}
+			$start = 0;
+			@ostr = ();
+		}
+	} else {
+		$sstr .= $_;
+	}
+}
+for($i = 0;$i <= $#cmalloc;$i++) {
+	push @omalloc,$cmalloc[$i];
+#	for($j = 0;$j <= $#{$cmalloc[$i]};$j++) {		print $cmalloc[$i][$j];	}
+}
+
+$xend = $xaddr;
+for($i = 0;$i <= $#omalloc;$i++) {
+	for($j = 0, $oaddr = $xaddr;$j <= $#{$omalloc[$i]};$j++) {
+		if($omalloc[$i][$j] =~ /^\s*([0-9]+)\s+([a-zA-Z0-9_]+)\s*(.*)$/) {
+			$str = sprintf "0x%04x %s%s\n", $oaddr, $2, $3;
+			$oaddr += $1;
+			$xstr .= $str;
+		}
+	}
+}
+$xend = $oaddr if($oaddr > $xend);
+print file $xstr, $sstr;
+print file1 $bstr, $xstr;
+close file;
+close file1;
+printf "\nLast allocated address is %04x\n", $addr;
+printf "\nLast allocated xmem address is %04x\n", $xend;
\ No newline at end of file
Index: XZR_3MODE_2h_PB_WIN_D_NEW/util/mergepatch.pl
===================================================================
--- /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/mergepatch.pl	(nonexistent)
+++ /branch/mouse_project/XZR/XZR_1059/XZR_3MODE_2h_PB_WIN_D_NEW/util/mergepatch.pl	(working copy)
@@ -0,0 +1,44 @@
+#!/usr/bin/perl
+$defs = "";
+$fmt = 0;
+
+
+sub parseif {
+	my($fname) = @_;
+	open file, $fname;
+	@f = <file>;
+	close file;
+	open file, ">$fname";
+	@valid = (1);
+	for($i = 0;$i < @f;$i++) { 
+		$_ = $f[$i];
+		$defs .= $1 . " " if(/^define\s+(\w+)\s*/);
+		if(/^ifdef\s+(\w+)\s*/) {
+			push @valid, ($defs =~ /(^|\s)$1(\s|$)/ ? 1 : 0) & $valid[$#valid];
+		} elsif(/^ifndef\s+(\w+)\s*/) {
+			push @valid, ($defs =~ /(^|\s)$1(\s|$)/ ? 0 : 1) & $valid[$#valid];
+		} elsif(/^else/) {
+			printf "%s\nelse without if at line %d\n", $f[$i - 3], $i if($#valid == 0);
+			$valid[$#valid] = (1 - $valid[$#valid]) & $valid[$#valid - 1];
+		} elsif(/^endif/) {
+			printf "%s\nendif without if at line %d\n", $_, $i if($#valid == 0);
+			pop @valid;
+		} elsif($valid[$#valid]) {
+			if(/^include\s+(.+)\s*/) {
+				open file2, "program/$1";
+				@f2 = <file2>;
+				close file2;
+				splice(@f, $i + 1, 0, @f2);
+			} else {
+				print file $_;
+			}
+		}
+	}
+	close file;
+}
+
+parseif("output/bt_program23.meta");
+$fmt = 1;
+parseif("output/bt_format.meta");
+
+
